STM benchmark ported
authoradash <adash>
Tue, 7 Apr 2009 02:21:56 +0000 (02:21 +0000)
committeradash <adash>
Tue, 7 Apr 2009 02:21:56 +0000 (02:21 +0000)
problems compiling with flattenLoopNode error

Robust/src/Benchmarks/SingleTM/LeeRouting/Frontier.java [new file with mode: 0644]
Robust/src/Benchmarks/SingleTM/LeeRouting/Grid.java [new file with mode: 0644]
Robust/src/Benchmarks/SingleTM/LeeRouting/GridCell.java [new file with mode: 0644]
Robust/src/Benchmarks/SingleTM/LeeRouting/LeeRouter.java [new file with mode: 0644]
Robust/src/Benchmarks/SingleTM/LeeRouting/LeeThread.java [new file with mode: 0644]
Robust/src/Benchmarks/SingleTM/LeeRouting/WorkQueue.java [new file with mode: 0644]
Robust/src/Benchmarks/SingleTM/LeeRouting/mainboard.txt [new file with mode: 0755]
Robust/src/Benchmarks/SingleTM/LeeRouting/makefile [new file with mode: 0644]
Robust/src/Benchmarks/SingleTM/LeeRouting/memboard.txt [new file with mode: 0644]
Robust/src/Benchmarks/SingleTM/LeeRouting/sparselong.txt [new file with mode: 0644]
Robust/src/Benchmarks/SingleTM/LeeRouting/sparseshort.txt [new file with mode: 0644]

diff --git a/Robust/src/Benchmarks/SingleTM/LeeRouting/Frontier.java b/Robust/src/Benchmarks/SingleTM/LeeRouting/Frontier.java
new file mode 100644 (file)
index 0000000..7b9c41f
--- /dev/null
@@ -0,0 +1,46 @@
+/*
+ * BSD License
+ *
+ * Copyright (c) 2007, The University of Manchester (UK)
+ *
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ *     - Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     - Redistributions in binary form must reproduce the above
+ *       copyright notice, this list of conditions and the following
+ *       disclaimer in the documentation and/or other materials provided
+ *       with the distribution.
+ *     - Neither the name of the University of Manchester nor the names
+ *       of its contributors may be used to endorse or promote products
+ *       derived from this software without specific prior written
+ *       permission.
+
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+public class Frontier {
+
+       public int x, y, z, dw;
+
+       Frontier(int xx, int yy, int zz, int ddw) {
+               x = xx;
+               y = yy;
+               z = zz;
+               dw = ddw;
+       }
+}
diff --git a/Robust/src/Benchmarks/SingleTM/LeeRouting/Grid.java b/Robust/src/Benchmarks/SingleTM/LeeRouting/Grid.java
new file mode 100644 (file)
index 0000000..43ea7bc
--- /dev/null
@@ -0,0 +1,298 @@
+/*
+ * BSD License
+ *
+ * Copyright (c) 2007, The University of Manchester (UK)
+ *
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ *     - Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     - Redistributions in binary form must reproduce the above
+ *       copyright notice, this list of conditions and the following
+ *       disclaimer in the documentation and/or other materials provided
+ *       with the distribution.
+ *     - Neither the name of the University of Manchester nor the names
+ *       of its contributors may be used to endorse or promote products
+ *       derived from this software without specific prior written
+ *       permission.
+
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+public class Grid {
+  // Simple grid attributes and container
+  int width, height, depth;
+
+  GridCell[][][] grid;
+
+  // Variables used in debugging only
+  GridCell[][][] debugGrid;
+
+  int debugCount;
+
+  int divisor;
+
+  boolean releasable;
+
+  LeeRouter lr;
+
+  /** Creates a new instance of Grid */
+  public Grid(int gridWidth, int gridHeight, int gridDepth, boolean rel, LeeRouter lr) {
+    this.lr = lr;
+
+    debugCount = 0;
+    divisor = 100000;
+    // Set up PCB grid
+    releasable = false;
+    width = gridWidth;
+    height = gridHeight;
+    depth = gridDepth;
+
+    grid = new GridCell[width][height][depth];
+    instantiateGrid(grid);
+    resetGrid(grid);
+
+    if (lr.DEBUG) {
+      debugGrid = new GridCell[width][height][depth];
+      instantiateGrid(debugGrid);
+      resetGrid(debugGrid);
+    } else {
+      debugGrid = new GridCell[width][height][depth];
+      //FIXME compiler error:Type of rside (null) not compatible with type of lside (GridCell)debugGrid = null
+      //debugGrid = null;
+    }
+  }
+
+  boolean isValidTrackID(int i) {
+    return !(i == lr.EMPTY || i == lr.OCC);
+  }
+
+  public void occupy(int loX, int loY, int upX, int upY) {
+    int x = 0;
+    int y = 0;
+    for (x = loX; x <= upX; x++) {
+      for (y = loY; y <= upY; y++) {
+        for (int z = 0; z < depth; z++) {
+          grid[x][y][z].setRouteID(lr.OCC);
+          if (lr.DEBUG)
+            debugGrid[x][y][z].setRouteID(lr.OCC);
+        }
+      }
+    }
+  }
+
+  public void addweights() {
+    for (int i = 0; i < lr.MAX_WEIGHT; i++)
+      for (int z = 0; z < depth; z++)
+        for (int x = 1; x < width - 1; x++)
+          for (int y = 1; y < height - 1; y++)
+            if (grid[x][y][z].getRouteID() == lr.OCC) {
+              if (grid[x][y + 1][z].getRouteID() == lr.EMPTY)
+                grid[x][y + 1][z]
+                  .setRouteID(lr.MAX_WEIGHT);
+              if (grid[x + 1][y][z].getRouteID() == lr.EMPTY)
+                grid[x + 1][y][z]
+                  .setRouteID(lr.MAX_WEIGHT);
+              if (grid[x][y - 1][z].getRouteID() == lr.EMPTY)
+                grid[x][y - 1][z]
+                  .setRouteID(lr.MAX_WEIGHT);
+              if (grid[x - 1][y][z].getRouteID() == lr.EMPTY)
+                grid[x - 1][y][z]
+                  .setRouteID(lr.MAX_WEIGHT);
+            } else if (grid[x][y][z].getRouteID() != lr.EMPTY) {
+              if (grid[x][y + 1][z].getRouteID() == lr.EMPTY)
+                grid[x][y + 1][z].setRouteID(grid[x][y][z]
+                    .getRouteID() - 1);
+              if (grid[x + 1][y][z].getRouteID() == lr.EMPTY)
+                grid[x + 1][y][z].setRouteID(grid[x][y][z]
+                    .getRouteID() - 1);
+              if (grid[x][y - 1][z].getRouteID() == lr.EMPTY)
+                grid[x][y - 1][z].setRouteID(grid[x][y][z]
+                    .getRouteID() - 1);
+              if (grid[x - 1][y][z].getRouteID() == lr.EMPTY)
+                grid[x - 1][y][z].setRouteID(grid[x][y][z]
+                    .getRouteID() - 1);
+            }
+  }
+
+  public void printLayout(boolean toFile) {
+    for (int k = 0; k < depth; k++) {
+      for (int j = 0; j < height; j++) {
+        for (int i = 0; i < width; i++) {
+          if (!isValidTrackID(grid[i][j][k].getRouteID())) {
+            System.out.print(".");
+          } else {
+            if (lr.DEBUG)
+              System.out.print(debugGrid[i][j][k].getRouteID());
+            else {
+              System.out.print("X");
+            }
+          }
+        }
+        System.out.println("");
+      }
+      System.out.println("");
+    }
+  }
+
+  public boolean findTrack(int x1, int y1, int x2, int y2, int nn) {
+
+    int x = x1;
+    int y = y1;
+    int z = 0;
+    boolean found = false;
+    LinkedList trackSoFar = new LinkedList();
+
+    trackSoFar.addFirst(new Triplet(x, y, z));
+
+    // Start search
+    while (true) {
+      x = ((Triplet)(trackSoFar.getFirst())).val1;
+      y = ((Triplet)(trackSoFar.getFirst())).val2;
+      z = ((Triplet)(trackSoFar.getFirst())).val3;
+      // See if there is a surrounding cell with same id, but hasn't been
+      // visited yet
+      if (isNeighbouringCellNN(x, y, z, nn, trackSoFar))
+        continue;
+      else if (isNeighbouringCellNN(x, y, z, lr.OCC, trackSoFar))
+        continue;
+
+      // No node with same id found, check if we are at dest and exit
+      if (x == x2 && y == y2) {
+        found = true;
+      }
+      break;
+    }
+    return found;
+  }
+
+  private boolean isNeighbouringCellNN(int x, int y, int z, int nn,
+      LinkedList trackSoFar) {
+    boolean retval = false;
+    if (x + 1 < width && debugGrid[x + 1][y][z].getRouteID() == nn
+        && !trackSoFar.contains(new Triplet(x + 1, y, z))) {
+      trackSoFar.addFirst(new Triplet(x + 1, y, z));
+      x = x + 1;
+      retval = true;
+    } else if (y + 1 < height && debugGrid[x][y + 1][z].getRouteID() == nn
+        && !trackSoFar.contains(new Triplet(x, y + 1, z))) {
+      trackSoFar.addFirst(new Triplet(x, y + 1, z));
+      y = y + 1;
+      retval = true;
+    } else if (z + 1 < depth && debugGrid[x][y][z + 1].getRouteID() == nn
+        && !trackSoFar.contains(new Triplet(x, y, z + 1))) {
+      trackSoFar.addFirst(new Triplet(x, y, z + 1));
+      z = z + 1;
+      retval = true;
+    } else if (x - 1 >= 0 && debugGrid[x - 1][y][z].getRouteID() == nn
+        && !trackSoFar.contains(new Triplet(x - 1, y, z))) {
+      trackSoFar.addFirst(new Triplet(x - 1, y, z));
+      x = x - 1;
+      retval = true;
+    } else if (y - 1 >= 0 && debugGrid[x][y - 1][z].getRouteID() == nn
+        && !trackSoFar.contains(new Triplet(x, y - 1, z))) {
+      trackSoFar.addFirst(new Triplet(x, y - 1, z));
+      y = y - 1;
+      retval = true;
+    } else if (z - 1 >= 0 && debugGrid[x][y][z - 1].getRouteID() == nn
+        && !trackSoFar.contains(new Triplet(x, y, z - 1))) {
+      trackSoFar.addFirst(new Triplet(x, y, z - 1));
+      z = z - 1;
+      retval = true;
+    }
+
+    return retval;
+
+  }
+
+  
+
+  public int getPoint(int x, int y, int z) {
+    GridCell retCell = grid[x][y][z];
+    int ret = retCell.getRouteID();
+    return ret;
+  }
+
+  public int getDebugPoint(int x, int y, int z) {
+    GridCell retCell = debugGrid[x][y][z];
+    int ret = retCell.getRouteID();
+    return ret;
+  }
+
+  public void setPoint(int x, int y, int z, int val) {
+    grid[x][y][z].setRouteID(val);
+  }
+
+  public void setDebugPoint(int x, int y, int z, int val) {
+    debugGrid[x][y][z].setRouteID(val);
+  }
+
+  public int getWidth() {
+    return width;
+  }
+
+  public int getHeight() {
+    return height;
+  }
+
+  public int getDepth() {
+    return depth;
+  }
+
+  public void resetGrid(GridCell[][][] g) {
+    for (int i = 0; i < width; i++)
+      for (int j = 0; j < height; j++)
+        for (int k = 0; k < depth; k++)
+          g[i][j][k].setRouteID(lr.EMPTY);
+  }
+
+  public void instantiateGrid(GridCell[][][] g) {
+    for (int i = 0; i < width; i++)
+      for (int j = 0; j < height; j++)
+        for (int k = 0; k < depth; k++) {
+          g[i][j][k] = new GridCell();
+          if (lr.DEBUG) {
+            if (debugCount++ == divisor) {
+              System.out.println(debugCount);
+              debugCount = 0;
+            }
+          }
+        }
+  }
+
+}
+
+public class Triplet {
+  int val1;
+
+  int val2;
+
+  int val3;
+
+  Triplet(int v1, int v2, int v3) {
+    val1 = v1;
+    val2 = v2;
+    val3 = v3;
+  }
+
+  //@Override
+    public boolean equals(Object o) {
+      Triplet t = (Triplet) o;
+      return (t.val1 == val1) && (t.val2 == val2) && (t.val3 == val3);
+
+    }
+}
diff --git a/Robust/src/Benchmarks/SingleTM/LeeRouting/GridCell.java b/Robust/src/Benchmarks/SingleTM/LeeRouting/GridCell.java
new file mode 100644 (file)
index 0000000..d76f9c9
--- /dev/null
@@ -0,0 +1,52 @@
+/*
+ * BSD License
+ *
+ * Copyright (c) 2007, The University of Manchester (UK)
+ *
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ *     - Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     - Redistributions in binary form must reproduce the above
+ *       copyright notice, this list of conditions and the following
+ *       disclaimer in the documentation and/or other materials provided
+ *       with the distribution.
+ *     - Neither the name of the University of Manchester nor the names
+ *       of its contributors may be used to endorse or promote products
+ *       derived from this software without specific prior written
+ *       permission.
+
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+
+public class GridCell {
+       
+       private int value;
+
+    public GridCell() {
+      value = -1;
+    }
+       
+       public int getRouteID() {
+               return value;
+       }
+       
+       public void setRouteID(int v) {
+               value = v;
+       }
+}
diff --git a/Robust/src/Benchmarks/SingleTM/LeeRouting/LeeRouter.java b/Robust/src/Benchmarks/SingleTM/LeeRouting/LeeRouter.java
new file mode 100644 (file)
index 0000000..4754a63
--- /dev/null
@@ -0,0 +1,691 @@
+/*
+ * BSD License
+ *
+ * Copyright (c) 2007, The University of Manchester (UK)
+ *
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ *     - Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     - Redistributions in binary form must reproduce the above
+ *       copyright notice, this list of conditions and the following
+ *       disclaimer in the documentation and/or other materials provided
+ *       with the distribution.
+ *     - Neither the name of the University of Manchester nor the names
+ *       of its contributors may be used to endorse or promote products
+ *       derived from this software without specific prior written
+ *       permission.
+
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/********************************************************************
+ *  Ported for our STM implementation
+ *  This version copyright(c) University of California, Irvine 2009
+ *  Author:  Alokika Dash, adash @ uci.edu
+ *  Date:    04/05/2009
+ ********************************************************************/
+
+
+//Simple Lee's Routing Algorithm
+public class LeeRouter {
+  int cyan;
+  long MAX_SAMPLE_THRESHOLD;
+  int magenta;
+  int yellow;
+  int green;
+  int red;
+  int blue;
+  int GRID_SIZE;
+  int EMPTY;
+  int TEMP_EMPTY;
+  int OCC;
+  int VIA;
+  int BVIA;
+  int TRACK;
+  int GOAL;
+  int MAX_WEIGHT;
+  Grid grid;
+  //Object gridLock;
+  int netNo;
+  // note these very useful arrays
+  int dx[][];
+  // to help look NSEW.
+  int dy[][];
+  int failures;
+  int num_vias;
+  int forced_vias;
+  FileInputStream inputFile;
+  String input_line;
+  int linepos;
+  WorkQueue work;
+  WorkQueue debugQueue;
+  boolean TEST;
+  boolean DEBUG;
+  boolean XML_REPORT;
+
+  //Constructor initializing
+  public LeeRouter() {
+    cyan = 0x00FFFF;
+    MAX_SAMPLE_THRESHOLD = 60000;
+    magenta = 0xFF00FF;
+    yellow = 0xFFFF00;
+    green = 0x00FF00;
+    red = 0xFF0000;
+    blue = 0x0000FF;
+    EMPTY  = 0;
+    TEMP_EMPTY = 10000;
+    OCC = 5120;
+    VIA = 6000;
+    BVIA = 6001;
+    TRACK = 8192;
+    GOAL = 1024;
+    MAX_WEIGHT = 1;
+    netNo = 0;
+    // note these very useful arrays
+    dx[0][0] = -1;
+    dx[0][1] = 1;
+    dx[0][2] = 0;
+    dx[0][3] = 0;
+    dx[1][0] = 0;
+    dx[1][1] = 0;
+    dx[1][2] = -1;
+    dx[1][3] = 1;
+    // to help look NSEW.
+    dy[0][0] = 0;
+    dy[0][1] = 0;
+    dy[0][2] = -1;
+    dy[0][3] = 1;
+    dy[1][0] = -1;
+    dy[1][1] = 1;
+    dy[1][2] = 0;
+    dy[1][3] = 0;
+
+    failures = 0;
+    num_vias = 0;
+    forced_vias = 0;
+    linepos = 0;
+    TEST = true;
+    DEBUG = false;
+    XML_REPORT = true;
+  }
+
+
+  public LeeRouter(String file, boolean test, boolean debug, boolean rel) {
+    TEST = test;
+    DEBUG = debug;
+    if (TEST) GRID_SIZE = 10;
+    else GRID_SIZE = 600;
+    if(DEBUG) System.out.println("Creating grid...");
+    grid = new Grid(GRID_SIZE, GRID_SIZE, 2, rel, this); //the Lee 3D Grid;
+    if(DEBUG) System.out.println("Done creating grid");
+    work = new WorkQueue(); // empty
+    if(DEBUG) System.out.println("Parsing data...");
+    if (!TEST) parseDataFile(file);
+    else fakeTestData(); //WARNING: Needs grid at least 10x10x2
+    if(DEBUG) System.out.println("Done parsing data");
+    if(DEBUG) System.out.println("Adding weights...");
+    grid.addweights();
+    if(DEBUG) System.out.println("Done adding weights");
+    work.sort();
+    if(DEBUG)
+      debugQueue = new WorkQueue();
+    else
+      debugQueue = null;
+  }
+
+  public LeeRouter(String file) {
+    LeeRouter(file, false, false, false);
+  }
+
+  public LeeRouter(String file, boolean rel) {
+    LeeRouter(file, false, false, rel);
+  }
+
+  public void fakeTestData() {
+    netNo++;
+    grid.occupy(7, 3, 7, 3);
+    grid.occupy(7, 7, 7, 7);
+    work.next = work.enQueue(7, 3, 7, 7, netNo);
+
+    netNo++;
+    grid.occupy(3, 6, 3, 6);
+    grid.occupy(8, 6, 8, 6);
+    work.next = work.enQueue(3, 6, 8, 6, netNo);
+
+    netNo++;
+    grid.occupy(5, 3, 5, 3);
+    grid.occupy(8, 5, 8, 5);
+    work.next = work.enQueue(5, 3, 8, 5, netNo);
+
+    netNo++;
+    grid.occupy(8, 3, 8, 3);
+    grid.occupy(2, 6, 2, 6);
+    work.next = work.enQueue(8, 3, 2, 6, netNo);
+
+    netNo++;
+    grid.occupy(4, 3, 4, 3);
+    grid.occupy(6, 7, 6, 7);
+    work.next = work.enQueue(4, 3, 6, 7, netNo);
+
+    netNo++;
+    grid.occupy(3, 8, 3, 8);
+    grid.occupy(8, 3, 8, 3);
+    work.next = work.enQueue(3, 8, 8, 3, netNo);
+  }
+
+  public void parseDataFile(String fileName) {
+    // Read very simple HDL file
+    inputFile = new FileInputStream(fileName);
+    int i = 0;
+    while (true) {
+      nextLine();
+      char c = readChar();
+      if (c == 'E')
+        break; // end of file
+      if (c == 'C') // chip bounding box
+      {
+        int x0 = readInt();
+        int y0 = readInt();
+        int x1 = readInt();
+        int y1 = readInt();
+        grid.occupy(x0, y0, x1, y1);
+      }
+      if (c == 'P') // pad
+      {
+        int x0 = readInt();
+        int y0 = readInt();
+        grid.occupy(x0, y0, x0, y0);
+      }
+      if (c == 'J') // join connection pts
+      {
+        i++;
+        int x0 = readInt();
+        int y0 = readInt();
+        int x1 = readInt();
+        int y1 = readInt();
+        netNo++;
+        work.next = work.enQueue(x0, y0, x1, y1, netNo);
+      }
+    }
+
+  }
+
+  //FIXME
+  public WorkQueue getNextTrack() {
+    //synchronized(queueLock) {
+      if(work.next != null) {
+        return work.deQueue();
+      }
+    //}
+    return null;
+  }
+
+  //FIXME
+  public boolean layNextTrack(WorkQueue q, int [][][]tempg) {
+    // start transaction
+    boolean done = false;
+    //synchronized(gridLock) {
+      done = connect(q.x1, q.y1, q.x2, q.y2, q.nn, tempg, grid);
+      if(DEBUG && done) {
+        debugQueue.next = debugQueue.enQueue(q);
+      }
+    //}
+    return done;
+    // end transaction
+  }
+
+  public void nextLine() {
+    input_line = inputFile.readLine();
+    linepos = 0;
+  }
+
+  public char readChar() {
+    while ((input_line.charAt(linepos) == ' ')
+        && (input_line.charAt(linepos) == '\t'))
+      linepos++;
+    char c = input_line.charAt(linepos);
+    if (linepos < input_line.length() - 1)
+      linepos++;
+    return c;
+  }
+
+  public int readInt() {
+    while ((input_line.charAt(linepos) == ' ')
+        || (input_line.charAt(linepos) == '\t'))
+      linepos++;
+    int fpos = linepos;
+    while ((linepos < input_line.length())
+        && (input_line.charAt(linepos) != ' ')
+        && (input_line.charAt(linepos) != '\t'))
+      linepos++;
+    int n = Integer.parseInt(input_line.substring(fpos, linepos));
+    return n;
+  }
+
+  public boolean ok(int x, int y) {
+    // checks that point is actually within the bounds
+    // of grid array
+    return (x > 0 && x < GRID_SIZE - 1 && y > 0 && y < GRID_SIZE - 1);
+  }
+
+  public boolean expandFromTo(int x, int y, int xGoal, int yGoal,
+      int num, int tempg[][][], Grid grid) {
+    // this method should use Lee's expansion algorithm from
+    // coordinate (x,y) to (xGoal, yGoal) for the num iterations
+    // it should return true if the goal is found and false if it is not
+    // reached within the number of iterations allowed.
+
+    // g[xGoal][yGoal][0] = EMPTY; // set goal as empty
+    // g[xGoal][yGoal][1] = EMPTY; // set goal as empty
+    Vector front = new Vector();
+    Vector tmp_front = new Vector();
+    tempg[x][y][0] = 1; // set grid (x,y) as 1
+    tempg[x][y][1] = 1; // set grid (x,y) as 1
+    boolean trace1 = false;
+    front.addElement(new Frontier(x, y, 0, 0));
+    front.addElement(new Frontier(x, y, 1, 0)); // we can start from either
+    // side
+    if(DEBUG) System.out.println("Expanding " + x + " " + y + " " + xGoal + " "
+        + yGoal);
+    int extra_iterations = 50;
+    boolean reached0 = false;
+    boolean reached1 = false;
+    while (!front.isEmpty()) {
+      while (!front.isEmpty()) {
+        int weight, prev_val;
+        Frontier f = (Frontier) front.elementAt(0);
+        front.removeElementAt(0);
+        if (f.dw > 0) {
+          tmp_front.addElement(new Frontier(f.x, f.y, f.z, f.dw - 1));
+        } else {
+          if (trace1)
+            if(DEBUG)
+              System.out.println("X " + f.x + " Y " + f.y + " Z "
+                  + f.z + " DW " + f.dw + " processing - val "
+                  + tempg[f.x][f.y][f.z]);
+          //                                   int dir_weight = 1;
+          weight = grid.getPoint(f.x,f.y + 1,f.z) + 1;
+          prev_val = tempg[f.x][f.y + 1][f.z];
+          boolean reached = (f.x == xGoal) && (f.y + 1 == yGoal);
+          if ((prev_val > tempg[f.x][f.y][f.z] + weight)
+              && (weight < OCC) || reached) {
+            if (ok(f.x, f.y + 1)) {
+              tempg[f.x][f.y + 1][f.z] = tempg[f.x][f.y][f.z]
+                + weight; // looking north
+              if (!reached)
+                tmp_front.addElement(new Frontier(f.x, f.y + 1,
+                      f.z, 0));
+            }
+          }
+          weight = grid.getPoint(f.x + 1,f.y,f.z) + 1;
+          prev_val = tempg[f.x + 1][f.y][f.z];
+          reached = (f.x + 1 == xGoal) && (f.y == yGoal);
+          if ((prev_val > tempg[f.x][f.y][f.z] + weight)
+              && (weight < OCC) || reached) {
+            if (ok(f.x + 1, f.y)) {
+              tempg[f.x + 1][f.y][f.z] = tempg[f.x][f.y][f.z]
+                + weight; // looking east
+              if (!reached)
+                tmp_front.addElement(new Frontier(f.x + 1, f.y,
+                      f.z, 0));
+            }
+          }
+          weight = grid.getPoint(f.x,f.y - 1,f.z) + 1;
+          prev_val = tempg[f.x][f.y - 1][f.z];
+          reached = (f.x == xGoal) && (f.y - 1 == yGoal);
+          if ((prev_val > tempg[f.x][f.y][f.z] + weight)
+              && (weight < OCC) || reached) {
+            if (ok(f.x, f.y - 1)) {
+              tempg[f.x][f.y - 1][f.z] = tempg[f.x][f.y][f.z]
+                + weight; // looking south
+              if (!reached)
+                tmp_front.addElement(new Frontier(f.x, f.y - 1,
+                      f.z, 0));
+            }
+          }
+          weight = grid.getPoint(f.x - 1,f.y,f.z) + 1;
+          prev_val = tempg[f.x - 1][f.y][f.z];
+          reached = (f.x - 1 == xGoal) && (f.y == yGoal);
+          if ((prev_val > tempg[f.x][f.y][f.z] + weight)
+              && (weight < OCC) || reached) {
+            if (ok(f.x - 1, f.y)) {
+              tempg[f.x - 1][f.y][f.z] = tempg[f.x][f.y][f.z]
+                + weight; // looking west
+              if (!reached)
+                tmp_front.addElement(new Frontier(f.x - 1, f.y,
+                      f.z, 0));
+            }
+          }
+          if (f.z == 0) {
+            weight = grid.getPoint(f.x,f.y,1) + 1;
+            if ((tempg[f.x][f.y][1] > tempg[f.x][f.y][0])
+                && (weight < OCC)) {
+              tempg[f.x][f.y][1] = tempg[f.x][f.y][0];
+              tmp_front.addElement(new Frontier(f.x, f.y, 1, 0));
+            }
+          } else {
+            weight = grid.getPoint(f.x,f.y,0) + 1;
+            if ((tempg[f.x][f.y][0] > tempg[f.x][f.y][1])
+                && (weight < OCC)) {
+              tempg[f.x][f.y][0] = tempg[f.x][f.y][1];
+              tmp_front.addElement(new Frontier(f.x, f.y, 0, 0));
+            }
+          }
+          // must check if found goal, if so return TRUE
+          reached0 = tempg[xGoal][yGoal][0] != TEMP_EMPTY;
+          reached1 = tempg[xGoal][yGoal][1] != TEMP_EMPTY;
+          if ((reached0 && !reached1) || (!reached0 && reached1))
+            extra_iterations = 100;
+          if ((extra_iterations == 0) && (reached0 || reached1)
+              || (reached0 && reached1)) {
+            return true; // if (xGoal, yGoal) can be found in
+            // time
+          } else
+            extra_iterations--;
+        }
+      }
+      Vector tf;
+      tf = front;
+      front = tmp_front;
+      tmp_front = tf;
+    }
+    //          view.pad(x,y,red);
+    //          view.pad(xGoal,yGoal,red);
+    return false;
+  }
+
+  public boolean pathFromOtherSide(int[][][] g, int X, int Y, int Z) {
+    boolean ok;
+    int Zo;
+    Zo = 1 - Z; // other side
+    int sqval = g[X][Y][Zo];
+    if ((sqval == VIA) || (sqval == BVIA))
+      return false;
+    ok = (g[X][Y][Zo] <= g[X][Y][Z]);
+    if (ok)
+      ok = (g[X - 1][Y][Zo] < sqval) || (g[X + 1][Y][Zo] < sqval)
+        || (g[X][Y - 1][Zo] < sqval) || (g[X][Y + 1][Zo] < sqval);
+    return ok;
+  }
+
+  public int tlength(int x1, int y1, int x2, int y2) {
+    int sq = (x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1);
+    return (int) Math.sqrt((double) sq);
+  }
+
+  public static int deviation(int x1, int y1, int x2, int y2) {
+    int xdiff = x2 - x1;
+    int ydiff = y2 - y1;
+    if (xdiff < 0)
+      xdiff = -xdiff;
+    if (ydiff < 0)
+      ydiff = -ydiff;
+    if (xdiff < ydiff)
+      return xdiff;
+    else
+      return ydiff;
+  }
+
+  public void backtrackFrom(int xGoal, int yGoal, int xStart,
+      int yStart, int trackNo, int[][][] tempg, Grid grid) {
+    // this method should backtrack from the goal position (xGoal, yGoal)
+    // back to the starting position (xStart, yStart) filling in the
+    // grid array g with the specified track number trackNo ( + TRACK).
+
+    // ***
+    // CurrentPos = Goal
+    // Loop
+    // Find dir to start back from current position
+    // Loop
+    // Keep going in current dir and Fill in track (update currentPos)
+    // Until box number increases in this current dir
+    // Until back at starting point
+    // ***
+    //         int count = 100;
+    if(DEBUG)System.out.println("Track " + trackNo + " backtrack " + "Length "
+        + tlength(xStart, yStart, xGoal, yGoal));
+    //         boolean trace = false;
+    int zGoal;
+    int distsofar = 0;
+    if (Math.abs(xGoal - xStart) > Math.abs(yGoal - yStart))
+      zGoal = 0;
+    else
+      zGoal = 1;
+    if (tempg[xGoal][yGoal][zGoal] == TEMP_EMPTY) {
+      if(DEBUG) System.out.println("Preferred Layer not reached " + zGoal);
+      zGoal = 1 - zGoal;
+    }
+    int tempY = yGoal;
+    int tempX = xGoal;
+    int tempZ = zGoal;
+    int lastdir = -10;
+    while ((tempX != xStart) || (tempY != yStart)) { // PDL: until back
+
+      // at starting point
+      boolean advanced = false;
+      int mind = 0;
+      int dir = 0;
+      int min_square = 100000;
+      int d;
+      for (d = 0; d < 4; d++) { // PDL: Find dir to start back from
+        // current position
+        if ((tempg[tempX + dx[tempZ][d]][tempY + dy[tempZ][d]][tempZ] < tempg[tempX][tempY][tempZ])
+            && (tempg[tempX + dx[tempZ][d]][tempY + dy[tempZ][d]][tempZ] != TEMP_EMPTY)) {
+          if (tempg[tempX + dx[tempZ][d]][tempY + dy[tempZ][d]][tempZ] < min_square) {
+            min_square = tempg[tempX + dx[tempZ][d]][tempY
+              + dy[tempZ][d]][tempZ];
+            mind = d;
+            dir = dx[tempZ][d] * 2 + dy[tempZ][d]; // hashed dir
+            if (lastdir < -2)
+              lastdir = dir;
+            advanced = true;
+          }
+        }
+      }
+      if (advanced)
+        distsofar++;
+      if(DEBUG)
+        System.out.println("Backtracking "+tempX+" "+tempY+" "+tempZ+
+            " "+tempg[tempX][tempY][tempZ]+" "+advanced+" "+mind);
+      if (pathFromOtherSide(tempg, tempX, tempY, tempZ)
+          && ((mind > 1)
+            && // not preferred dir for this layer
+            (distsofar > 15)
+            && (tlength(tempX, tempY, xStart, yStart) > 15) ||
+            // (deviation(tempX,tempY,xStart,yStart) > 3) ||
+            (!advanced && ((grid.getPoint(tempX,tempY,tempZ) != VIA)
+                           && (grid.getPoint(tempX,tempY,tempZ) != BVIA))))) {
+        int tZ = 1 - tempZ; // 0 if 1, 1 if 0
+        int viat;
+        if (advanced)
+          viat = VIA;
+        else
+          viat = BVIA; // BVIA is nowhere else to go
+        // mark via
+        tempg[tempX][tempY][tempZ] = viat;
+        grid.setPoint(tempX,tempY,tempZ,viat);
+        if(DEBUG)grid.setDebugPoint(tempX,tempY,tempZ,trackNo);
+        tempZ = tZ;
+        // and the other side
+        tempg[tempX][tempY][tempZ] = viat;
+        grid.setPoint(tempX,tempY,tempZ,viat);
+        if(DEBUG)grid.setDebugPoint(tempX,tempY,tempZ,trackNo);
+        num_vias++;
+        if (!advanced)
+          forced_vias++;
+        if (advanced)
+          if(DEBUG)
+            System.out.println("Via " + distsofar + " "
+                + tlength(tempX, tempY, xStart, yStart) + " "
+                + deviation(tempX, tempY, xStart, yStart));
+        distsofar = 0;
+      } else {
+        if (grid.getPoint(tempX,tempY,tempZ) < OCC) {
+          // PDL: fill in track unless connection point
+          grid.setPoint(tempX,tempY,tempZ,TRACK);
+          if(DEBUG)grid.setDebugPoint(tempX,tempY,tempZ,trackNo);
+        } else if (grid.getPoint(tempX,tempY,tempZ) == OCC) {
+          if(DEBUG)grid.setDebugPoint(tempX,tempY,tempZ,OCC);
+          if(DEBUG)grid.setDebugPoint(tempX,tempY,1-tempZ,OCC);
+        }
+        tempX = tempX + dx[tempZ][mind]; // PDL: updating current
+        // position on x axis
+        tempY = tempY + dy[tempZ][mind]; // PDL: updating current
+        // position on y axis
+      }
+      lastdir = dir;
+    }
+    if(DEBUG) System.out.println("Track " + trackNo + " completed");
+  }
+
+  public boolean connect(int xs, int ys, int xg, int yg, int netNo, int[][][] tempg,
+      Grid grid) {
+    // calls expandFrom and backtrackFrom to create connection
+    // This is the only real change needed to make the program
+    // transactional.
+    // Instead of using the grid 'in place' to do the expansion, we take a
+    // copy
+    // but the backtrack writes to the original grid.
+    // This is not a correctness issue. The transactions would still
+    // complete eventually without it.
+    // However the expansion writes are only temporary and do not logically
+    // conflict.
+    // There is a question as to whether a copy is really necessary as a
+    // transaction will anyway create
+    // its own copy. if we were then to distinguish between writes not to be
+    // committed (expansion) and
+    // those to be committed (backtrack), we would not need an explicit
+    // copy.
+    // Taking the copy is not really a computational(time) overhead because
+    // it avoids the grid 'reset' phase
+    // needed if we do the expansion in place.
+    for (int x = 0; x < GRID_SIZE; x++) {
+      for (int y = 0; y < GRID_SIZE; y++) {
+        for (int z = 0; z < 2; z++)
+          tempg[x][y][z] = TEMP_EMPTY;
+      }
+    }
+    // call the expansion method to return found/not found boolean
+    boolean found = expandFromTo(xs, ys, xg, yg, GRID_SIZE * 5, tempg, grid);
+    if (found) {
+      if(DEBUG) System.out.println("Target (" + xg + ", " + yg + ")... FOUND!");
+      backtrackFrom(xg, yg, xs, ys, netNo, tempg, grid); // call the
+      // backtrack method
+    } // print outcome of expansion method
+    else {
+      if(DEBUG) System.out.println("Failed to route " + xs + " " + ys + " to " + xg
+          + "  " + yg);
+      failures++;
+    }
+    return found;
+  }
+
+  
+  public LeeThread createThread() {
+    return createThread(0);
+  }
+
+  public LeeThread createThread(int which) {
+    LeeThread leeThread = new LeeThread(this);
+    return leeThread;
+  }
+
+  public void report() {
+    //Open GUI view of PCB
+    //view.display();
+    //Print the PCB in ASCII, output to file
+    //grid.printLayout(true);
+    System.out.println("Total Tracks " + netNo + " Failures " + failures
+        + " Vias " + num_vias + " Forced Vias " + forced_vias);
+  }
+
+  public void sanityCheck() {
+    int found = 0, missing = 0;
+    // Check debugGrid that the routes in debugQueue have been laid
+    if(DEBUG) {
+      System.out.println("DEBUG: Starting sanity check");
+      while(debugQueue.next!=null) {
+        WorkQueue n = debugQueue.deQueue();
+        if(!grid.findTrack(n.x1, n.y1, n.x2, n.y2, n.nn)) {
+          System.out.println("ERROR: Missing track " +n.nn);
+          missing++;
+        } else {
+          found++;
+        }
+      }
+      System.out.println("DEBUG: found "+found+" missing "+missing);
+    }
+
+  }
+
+  public static void main(String [] args) {
+    if(args.length!=2) {
+      System.out.println("Params: [numthreads] [input-file]");
+      System.exit(-1);
+    }
+    int numThreads = Integer.parseInt(args[0]);
+    String filename = args[1];
+    //LeeRouter lr = new LeeRouter(filename, false, false, false);
+    //TODO remove after debugging
+    LeeRouter lr = new LeeRouter(filename, false, true, false);
+
+    int numMillis = 600000;
+
+    //Set up the benchmark
+    long startTime = 0;
+    long currentTime = 0;
+    long lastSample = 0;
+    long maxSampleThreshold = lr.MAX_SAMPLE_THRESHOLD;
+    boolean waitingForSample = false;
+    long watchdogInterval = 1000;
+    boolean exitByTimeout = false;
+    int sampleInterval = 10000;
+
+    System.out.println("Threads: " + numThreads);
+
+    LeeThread[] thread = new LeeThread[numThreads];
+
+    for (int i = 0; i < numThreads; i++)
+      thread[i] = lr.createThread();
+    //startTime = System.currentTimeMillis();
+    //lastSample = startTime;
+    for (int i = 0; i < numThreads; i++)
+      thread[i].start();
+    //currentTime = System.currentTimeMillis();
+
+    //LeeThread.stop = true; // notify threads to stop
+    for (int i = 0; i < numThreads; i++) {
+      thread[i].join();
+    }
+    //long elapsedTime = startTime - currentTime;
+    System.out.println("Numthreads: " + numThreads);
+    //System.out.println("Throughput:  " + throughput);
+    //System.out.println("ElapsedTime: " + elapsedTime);
+    lr.sanityCheck();
+  }
+
+  public static void report( long startTime,
+      boolean timeout, boolean xmlreport) {
+
+    long stopTime = System.currentTimeMillis();
+    double elapsed = (double) (stopTime - startTime) / 1000.0;
+
+    System.out.println("Elapsed time: " + elapsed + " seconds.");
+    System.out.println("----------------------------------------");
+  }
+}
diff --git a/Robust/src/Benchmarks/SingleTM/LeeRouting/LeeThread.java b/Robust/src/Benchmarks/SingleTM/LeeRouting/LeeThread.java
new file mode 100644 (file)
index 0000000..59f488b
--- /dev/null
@@ -0,0 +1,170 @@
+/*
+ * BSD License
+ *
+ * Copyright (c) 2007, The University of Manchester (UK)
+ *
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ *     - Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     - Redistributions in binary form must reproduce the above
+ *       copyright notice, this list of conditions and the following
+ *       disclaimer in the documentation and/or other materials provided
+ *       with the distribution.
+ *     - Neither the name of the University of Manchester nor the names
+ *       of its contributors may be used to endorse or promote products
+ *       derived from this software without specific prior written
+ *       permission.
+
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/********************************************************************
+ *  Ported for our STM implementation
+ *  This version copyright(c) University of California, Irvine 2009
+ *  @author:  Alokika Dash, adash@uci.edu
+ *  @date:    04/05/2009
+ ********************************************************************/
+public class LeeThread extends Thread {
+  public boolean stop;
+  boolean finished;
+  public boolean sampleNow;
+  public boolean doneSample;
+  public long totalLaidTracks;
+  public long myLaidTracks;
+  LeeRouter lt;
+  WorkQueue t;
+  boolean done;
+  int[][][] tempg;
+
+  public LeeThread() {
+    stop = false;
+    finished = false;
+    sampleNow = false;
+    doneSample = true;
+    totalLaidTracks=0;
+    myLaidTracks=0;
+    done = true;
+  }
+
+  /*
+  protected static ThreadLocal<ThreadState> _threadState = new ThreadLocal<ThreadState>() {
+    protected synchronized ThreadState initialValue() {
+      return new ThreadState();
+    }
+  };
+  static ThreadLocal<Thread> _thread = new ThreadLocal<Thread>() {
+    protected synchronized Thread initialValue() {
+      return null;
+    }
+  };
+  */
+
+
+  LeeThread(LeeRouter lt) {
+    this.lt = lt;
+    tempg = new int[lt.GRID_SIZE][lt.GRID_SIZE][2]; // Lee 2D Grid copy
+  }
+
+  public void run() {
+    while (!finished && !stop) {
+      if(sampleNow) {
+        //collectMyStatistics();
+        doneSample = true;
+        sampleNow = false;
+      }
+      atomic {
+        if(done) {
+          t = lt.getNextTrack();
+          done = false;
+        }
+      }
+      if(t==null) {
+        finished = true;
+        System.out.println("Finished");
+        //collectMyStatistics();
+        //collectStatistics(_threadState.get());
+        break;
+      } else {
+        atomic {
+          //System.out.println("Laying track "+t.nn);
+          lt.layNextTrack(t, tempg);
+          done = true;
+        }
+        //updateStatistics();
+      }
+    }
+  }
+
+
+  /*
+  protected static void collectStatistics(ThreadState threadState) {
+    // collect statistics
+    //synchronized (lock){
+    totalLaidTracks+=threadState.myLaidTracks;
+    threadState.reset();  // set up for next iteration
+    //}
+  }
+
+  public void updateStatistics(){
+    _threadState.get().myLaidTracks++;
+  }
+
+  public void collectMyStatistics() {
+    myLaidTracks=_threadState.get().myLaidTracks-myLaidTracks;
+  }
+  */
+
+  public void resetMyStatistics() {
+    myLaidTracks=0;
+  }
+
+}
+
+/**
+ * Class that holds thread's actual state
+ */
+public class ThreadState {
+  private long myLaidTracks;        // number of laid tracks
+
+  /**
+   * Creates new ThreadState
+   */
+  public ThreadState() {
+    myLaidTracks = 0; 
+  }
+
+  /**
+   * Resets any metering information (commits/aborts, etc).
+   */
+  public void reset() {
+    myLaidTracks = 0;            // total number of transactions
+  }
+
+  /**
+   * used for debugging
+   * @return string representation of thread state
+   */
+  public String toString() {
+    return
+      "Thread" + hashCode() + "["+
+      "total: " +  myLaidTracks + "," +
+      "]";
+  }
+
+}
+
diff --git a/Robust/src/Benchmarks/SingleTM/LeeRouting/WorkQueue.java b/Robust/src/Benchmarks/SingleTM/LeeRouting/WorkQueue.java
new file mode 100644 (file)
index 0000000..616a336
--- /dev/null
@@ -0,0 +1,114 @@
+/*
+ * BSD License
+ *
+ * Copyright (c) 2007, The University of Manchester (UK)
+ *
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ *     - Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     - Redistributions in binary form must reproduce the above
+ *       copyright notice, this list of conditions and the following
+ *       disclaimer in the documentation and/or other materials provided
+ *       with the distribution.
+ *     - Neither the name of the University of Manchester nor the names
+ *       of its contributors may be used to endorse or promote products
+ *       derived from this software without specific prior written
+ *       permission.
+
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+public class WorkQueue {
+
+       public int x1, y1, x2, y2, nn;
+
+       public WorkQueue next;
+
+       WorkQueue() {
+               next = null;
+       }
+
+       WorkQueue(int xx1, int yy1, int xx2, int yy2, int n) {
+               x1 = xx1;
+               y1 = yy1;
+               x2 = xx2;
+               y2 = yy2;
+               nn = n;
+       }
+
+       public WorkQueue enQueue(int x1, int y1, int x2, int y2, int n) {
+               WorkQueue q = new WorkQueue(x1, y1, x2, y2, n);
+               q.next = this.next;
+               return q;
+       }
+
+       public WorkQueue deQueue() {
+               WorkQueue q = this.next;
+               this.next = this.next.next;
+               return q;
+       }
+
+       public boolean less(int xx1, int yy1, int xx2, int yy2) {
+               return (x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1) > (xx2 - xx1)
+                               * (xx2 - xx1) + (yy2 - yy1) * (yy2 - yy1);
+       }
+
+       public boolean pass() {
+               boolean done = true;
+               WorkQueue ent = this;
+               WorkQueue a = ent.next;
+               while (a.next != null) {
+                       WorkQueue b = a.next;
+                       if (a.less(b.x1, b.y1, b.x2, b.y2)) {
+                               ent.next = b;
+                               a.next = b.next;
+                               b.next = a;
+                               done = false;
+                       }
+                       ent = a;
+                       a = b;
+                       b = b.next;
+                       // System.out.print("#");
+               }
+               return done;
+       }
+
+       public void sort() {
+               while (!pass())
+                       ;
+       }
+
+       public WorkQueue enQueue(WorkQueue q) {
+               WorkQueue n = new WorkQueue(q.x1, q.y1, q.x2, q.y2, q.nn);
+               n.next = this.next;
+               return n;
+       }
+
+       public int length() {
+               WorkQueue curr = this.next;
+               int retval = 0;
+               
+               while(curr!=null) {
+                       retval++;
+                       curr = curr.next;
+               }
+               
+               return retval;
+       }
+
+}
diff --git a/Robust/src/Benchmarks/SingleTM/LeeRouting/mainboard.txt b/Robust/src/Benchmarks/SingleTM/LeeRouting/mainboard.txt
new file mode 100755 (executable)
index 0000000..69b2644
--- /dev/null
@@ -0,0 +1,4653 @@
+P 306 476
+P 306 480
+P 306 484
+P 306 488
+P 306 492
+P 306 496
+P 306 500
+P 306 504
+P 306 508
+P 306 512
+P 306 516
+P 306 520
+P 306 524
+P 306 528
+P 306 532
+P 306 536
+P 306 540
+P 306 544
+P 306 548
+P 306 552
+P 282 552
+P 282 548
+P 282 544
+P 282 540
+P 282 536
+P 282 532
+P 282 528
+P 282 524
+P 282 520
+P 282 516
+P 282 512
+P 282 508
+P 282 504
+P 282 500
+P 282 496
+P 282 492
+P 282 488
+P 282 484
+P 282 480
+P 282 476
+P 366 526
+P 366 530
+P 366 534
+P 366 538
+P 366 542
+P 366 546
+P 366 550
+P 366 554
+P 366 558
+P 366 562
+P 366 566
+P 366 570
+P 354 570
+P 354 566
+P 354 562
+P 354 558
+P 354 554
+P 354 550
+P 354 546
+P 354 542
+P 354 538
+P 354 534
+P 354 530
+P 354 526
+P 394 526
+P 394 530
+P 394 534
+P 394 538
+P 394 542
+P 394 546
+P 394 550
+P 394 554
+P 394 558
+P 394 562
+P 394 566
+P 394 570
+P 382 570
+P 382 566
+P 382 562
+P 382 558
+P 382 554
+P 382 550
+P 382 546
+P 382 542
+P 382 538
+P 382 534
+P 382 530
+P 382 526
+P 422 526
+P 422 530
+P 422 534
+P 422 538
+P 422 542
+P 422 546
+P 422 550
+P 422 554
+P 422 558
+P 422 562
+P 422 566
+P 422 570
+P 410 570
+P 410 566
+P 410 562
+P 410 558
+P 410 554
+P 410 550
+P 410 546
+P 410 542
+P 410 538
+P 410 534
+P 410 530
+P 410 526
+P 450 526
+P 450 530
+P 450 534
+P 450 538
+P 450 542
+P 450 546
+P 450 550
+P 450 554
+P 450 558
+P 450 562
+P 450 566
+P 450 570
+P 438 570
+P 438 566
+P 438 562
+P 438 558
+P 438 554
+P 438 550
+P 438 546
+P 438 542
+P 438 538
+P 438 534
+P 438 530
+P 438 526
+P 478 526
+P 478 530
+P 478 534
+P 478 538
+P 478 542
+P 478 546
+P 478 550
+P 478 554
+P 478 558
+P 478 562
+P 478 566
+P 478 570
+P 466 570
+P 466 566
+P 466 562
+P 466 558
+P 466 554
+P 466 550
+P 466 546
+P 466 542
+P 466 538
+P 466 534
+P 466 530
+P 466 526
+P 506 526
+P 506 530
+P 506 534
+P 506 538
+P 506 542
+P 506 546
+P 506 550
+P 506 554
+P 506 558
+P 506 562
+P 506 566
+P 506 570
+P 494 570
+P 494 566
+P 494 562
+P 494 558
+P 494 554
+P 494 550
+P 494 546
+P 494 542
+P 494 538
+P 494 534
+P 494 530
+P 494 526
+P 534 526
+P 534 530
+P 534 534
+P 534 538
+P 534 542
+P 534 546
+P 534 550
+P 534 554
+P 534 558
+P 534 562
+P 534 566
+P 534 570
+P 522 570
+P 522 566
+P 522 562
+P 522 558
+P 522 554
+P 522 550
+P 522 546
+P 522 542
+P 522 538
+P 522 534
+P 522 530
+P 522 526
+P 562 526
+P 562 530
+P 562 534
+P 562 538
+P 562 542
+P 562 546
+P 562 550
+P 562 554
+P 562 558
+P 562 562
+P 562 566
+P 562 570
+P 550 570
+P 550 566
+P 550 562
+P 550 558
+P 550 554
+P 550 550
+P 550 546
+P 550 542
+P 550 538
+P 550 534
+P 550 530
+P 550 526
+P 366 444
+P 366 448
+P 366 452
+P 366 456
+P 366 460
+P 366 464
+P 366 468
+P 366 472
+P 366 476
+P 366 480
+P 366 484
+P 366 488
+P 354 488
+P 354 484
+P 354 480
+P 354 476
+P 354 472
+P 354 468
+P 354 464
+P 354 460
+P 354 456
+P 354 452
+P 354 448
+P 354 444
+P 394 444
+P 394 448
+P 394 452
+P 394 456
+P 394 460
+P 394 464
+P 394 468
+P 394 472
+P 394 476
+P 394 480
+P 394 484
+P 394 488
+P 382 488
+P 382 484
+P 382 480
+P 382 476
+P 382 472
+P 382 468
+P 382 464
+P 382 460
+P 382 456
+P 382 452
+P 382 448
+P 382 444
+P 422 444
+P 422 448
+P 422 452
+P 422 456
+P 422 460
+P 422 464
+P 422 468
+P 422 472
+P 422 476
+P 422 480
+P 422 484
+P 422 488
+P 410 488
+P 410 484
+P 410 480
+P 410 476
+P 410 472
+P 410 468
+P 410 464
+P 410 460
+P 410 456
+P 410 452
+P 410 448
+P 410 444
+P 450 444
+P 450 448
+P 450 452
+P 450 456
+P 450 460
+P 450 464
+P 450 468
+P 450 472
+P 450 476
+P 450 480
+P 450 484
+P 450 488
+P 438 488
+P 438 484
+P 438 480
+P 438 476
+P 438 472
+P 438 468
+P 438 464
+P 438 460
+P 438 456
+P 438 452
+P 438 448
+P 438 444
+P 478 444
+P 478 448
+P 478 452
+P 478 456
+P 478 460
+P 478 464
+P 478 468
+P 478 472
+P 478 476
+P 478 480
+P 478 484
+P 478 488
+P 466 488
+P 466 484
+P 466 480
+P 466 476
+P 466 472
+P 466 468
+P 466 464
+P 466 460
+P 466 456
+P 466 452
+P 466 448
+P 466 444
+P 506 444
+P 506 448
+P 506 452
+P 506 456
+P 506 460
+P 506 464
+P 506 468
+P 506 472
+P 506 476
+P 506 480
+P 506 484
+P 506 488
+P 494 488
+P 494 484
+P 494 480
+P 494 476
+P 494 472
+P 494 468
+P 494 464
+P 494 460
+P 494 456
+P 494 452
+P 494 448
+P 494 444
+P 534 444
+P 534 448
+P 534 452
+P 534 456
+P 534 460
+P 534 464
+P 534 468
+P 534 472
+P 534 476
+P 534 480
+P 534 484
+P 534 488
+P 522 488
+P 522 484
+P 522 480
+P 522 476
+P 522 472
+P 522 468
+P 522 464
+P 522 460
+P 522 456
+P 522 452
+P 522 448
+P 522 444
+P 562 444
+P 562 448
+P 562 452
+P 562 456
+P 562 460
+P 562 464
+P 562 468
+P 562 472
+P 562 476
+P 562 480
+P 562 484
+P 562 488
+P 550 488
+P 550 484
+P 550 480
+P 550 476
+P 550 472
+P 550 468
+P 550 464
+P 550 460
+P 550 456
+P 550 452
+P 550 448
+P 550 444
+P 378 242
+P 378 246
+P 378 250
+P 378 254
+P 378 258
+P 378 262
+P 378 266
+P 378 270
+P 378 274
+P 378 278
+P 378 282
+P 378 286
+P 378 290
+P 378 294
+P 354 294
+P 354 290
+P 354 286
+P 354 282
+P 354 278
+P 354 274
+P 354 270
+P 354 266
+P 354 262
+P 354 258
+P 354 254
+P 354 250
+P 354 246
+P 354 242
+P 406 226
+P 406 230
+P 406 234
+P 406 238
+P 406 242
+P 406 246
+P 406 250
+P 406 254
+P 406 258
+P 406 262
+P 394 262
+P 394 258
+P 394 254
+P 394 250
+P 394 246
+P 394 242
+P 394 238
+P 394 234
+P 394 230
+P 394 226
+P 406 286
+P 406 290
+P 406 294
+P 406 298
+P 406 302
+P 406 306
+P 406 310
+P 406 314
+P 406 318
+P 406 322
+P 394 322
+P 394 318
+P 394 314
+P 394 310
+P 394 306
+P 394 302
+P 394 298
+P 394 294
+P 394 290
+P 394 286
+P 280 40
+P 280 44
+P 280 48
+P 280 52
+P 280 56
+P 280 60
+P 280 64
+P 280 68
+P 280 72
+P 280 76
+P 268 76
+P 268 72
+P 268 68
+P 268 64
+P 268 60
+P 268 56
+P 268 52
+P 268 48
+P 268 44
+P 268 40
+P 336 534
+P 336 538
+P 336 542
+P 336 546
+P 336 550
+P 336 554
+P 336 558
+P 336 562
+P 336 566
+P 336 570
+P 324 570
+P 324 566
+P 324 562
+P 324 558
+P 324 554
+P 324 550
+P 324 546
+P 324 542
+P 324 538
+P 324 534
+P 336 466
+P 336 470
+P 336 474
+P 336 478
+P 336 482
+P 336 486
+P 336 490
+P 336 494
+P 336 498
+P 336 502
+P 324 502
+P 324 498
+P 324 494
+P 324 490
+P 324 486
+P 324 482
+P 324 478
+P 324 474
+P 324 470
+P 324 466
+P 434 226
+P 434 230
+P 434 234
+P 434 238
+P 434 242
+P 434 246
+P 434 250
+P 434 254
+P 434 258
+P 434 262
+P 422 262
+P 422 258
+P 422 254
+P 422 250
+P 422 246
+P 422 242
+P 422 238
+P 422 234
+P 422 230
+P 422 226
+P 436 286
+P 436 290
+P 436 294
+P 436 298
+P 436 302
+P 436 306
+P 436 310
+P 436 314
+P 436 318
+P 436 322
+P 424 322
+P 424 318
+P 424 314
+P 424 310
+P 424 306
+P 424 302
+P 424 298
+P 424 294
+P 424 290
+P 424 286
+P 130 432
+P 134 432
+P 138 432
+P 142 432
+P 146 432
+P 150 432
+P 154 432
+P 158 432
+P 162 432
+P 166 432
+P 166 444
+P 162 444
+P 158 444
+P 154 444
+P 150 444
+P 146 444
+P 142 444
+P 138 444
+P 134 444
+P 130 444
+P 214 540
+P 214 544
+P 214 548
+P 214 552
+P 214 556
+P 214 560
+P 214 564
+P 214 568
+P 214 572
+P 214 576
+P 202 576
+P 202 572
+P 202 568
+P 202 564
+P 202 560
+P 202 556
+P 202 552
+P 202 548
+P 202 544
+P 202 540
+P 182 540
+P 182 544
+P 182 548
+P 182 552
+P 182 556
+P 182 560
+P 182 564
+P 182 568
+P 182 572
+P 182 576
+P 170 576
+P 170 572
+P 170 568
+P 170 564
+P 170 560
+P 170 556
+P 170 552
+P 170 548
+P 170 544
+P 170 540
+P 214 468
+P 214 472
+P 214 476
+P 214 480
+P 214 484
+P 214 488
+P 214 492
+P 214 496
+P 214 500
+P 214 504
+P 214 508
+P 214 512
+P 202 512
+P 202 508
+P 202 504
+P 202 500
+P 202 496
+P 202 492
+P 202 488
+P 202 484
+P 202 480
+P 202 476
+P 202 472
+P 202 468
+P 248 468
+P 248 472
+P 248 476
+P 248 480
+P 248 484
+P 248 488
+P 248 492
+P 248 496
+P 248 500
+P 248 504
+P 236 504
+P 236 500
+P 236 496
+P 236 492
+P 236 488
+P 236 484
+P 236 480
+P 236 476
+P 236 472
+P 236 468
+P 186 468
+P 186 472
+P 186 476
+P 186 480
+P 186 484
+P 186 488
+P 186 492
+P 186 496
+P 186 500
+P 186 504
+P 186 508
+P 186 512
+P 174 512
+P 174 508
+P 174 504
+P 174 500
+P 174 496
+P 174 492
+P 174 488
+P 174 484
+P 174 480
+P 174 476
+P 174 472
+P 174 468
+P 110 540
+P 110 544
+P 110 548
+P 110 552
+P 110 556
+P 110 560
+P 110 564
+P 98 564
+P 98 560
+P 98 556
+P 98 552
+P 98 548
+P 98 544
+P 98 540
+P 46 540
+P 46 544
+P 46 548
+P 46 552
+P 46 556
+P 46 560
+P 46 564
+P 34 564
+P 34 560
+P 34 556
+P 34 552
+P 34 548
+P 34 544
+P 34 540
+P 306 460
+P 286 460
+P 248 540
+P 248 544
+P 248 548
+P 248 552
+P 248 556
+P 248 560
+P 248 564
+P 248 568
+P 248 572
+P 248 576
+P 236 576
+P 236 572
+P 236 568
+P 236 564
+P 236 560
+P 236 556
+P 236 552
+P 236 548
+P 236 544
+P 236 540
+P 336 450
+P 332 450
+P 328 450
+P 324 450
+P 320 450
+P 316 450
+P 312 450
+P 308 450
+P 448 422
+P 444 422
+P 440 422
+P 436 422
+P 432 422
+P 428 422
+P 424 422
+P 420 422
+P 420 410
+P 424 410
+P 428 410
+P 432 410
+P 436 410
+P 440 410
+P 444 410
+P 448 410
+P 254 40
+P 254 44
+P 254 48
+P 254 52
+P 254 56
+P 254 60
+P 254 64
+P 254 68
+P 254 72
+P 254 76
+P 242 76
+P 242 72
+P 242 68
+P 242 64
+P 242 60
+P 242 56
+P 242 52
+P 242 48
+P 242 44
+P 242 40
+P 172 244
+P 172 248
+P 172 252
+P 172 256
+P 172 260
+P 172 264
+P 172 268
+P 172 272
+P 172 276
+P 172 280
+P 172 284
+P 172 288
+P 160 288
+P 160 284
+P 160 280
+P 160 276
+P 160 272
+P 160 268
+P 160 264
+P 160 260
+P 160 256
+P 160 252
+P 160 248
+P 160 244
+P 172 192
+P 172 196
+P 172 200
+P 172 204
+P 172 208
+P 172 212
+P 172 216
+P 172 220
+P 172 224
+P 172 228
+P 172 232
+P 172 236
+P 160 236
+P 160 232
+P 160 228
+P 160 224
+P 160 220
+P 160 216
+P 160 212
+P 160 208
+P 160 204
+P 160 200
+P 160 196
+P 160 192
+P 172 140
+P 172 144
+P 172 148
+P 172 152
+P 172 156
+P 172 160
+P 172 164
+P 172 168
+P 172 172
+P 172 176
+P 172 180
+P 172 184
+P 160 184
+P 160 180
+P 160 176
+P 160 172
+P 160 168
+P 160 164
+P 160 160
+P 160 156
+P 160 152
+P 160 148
+P 160 144
+P 160 140
+P 172 88
+P 172 92
+P 172 96
+P 172 100
+P 172 104
+P 172 108
+P 172 112
+P 172 116
+P 172 120
+P 172 124
+P 172 128
+P 172 132
+P 160 132
+P 160 128
+P 160 124
+P 160 120
+P 160 116
+P 160 112
+P 160 108
+P 160 104
+P 160 100
+P 160 96
+P 160 92
+P 160 88
+P 172 36
+P 172 40
+P 172 44
+P 172 48
+P 172 52
+P 172 56
+P 172 60
+P 172 64
+P 172 68
+P 172 72
+P 172 76
+P 172 80
+P 160 80
+P 160 76
+P 160 72
+P 160 68
+P 160 64
+P 160 60
+P 160 56
+P 160 52
+P 160 48
+P 160 44
+P 160 40
+P 160 36
+P 110 256
+P 110 260
+P 110 264
+P 110 268
+P 110 272
+P 110 276
+P 110 280
+P 110 284
+P 110 288
+P 110 292
+P 98 292
+P 98 288
+P 98 284
+P 98 280
+P 98 276
+P 98 272
+P 98 268
+P 98 264
+P 98 260
+P 98 256
+P 128 204
+P 128 208
+P 128 212
+P 128 216
+P 128 220
+P 128 224
+P 128 228
+P 128 232
+P 128 236
+P 128 240
+P 116 240
+P 116 236
+P 116 232
+P 116 228
+P 116 224
+P 116 220
+P 116 216
+P 116 212
+P 116 208
+P 116 204
+P 138 152
+P 138 156
+P 138 160
+P 138 164
+P 138 168
+P 138 172
+P 138 176
+P 138 180
+P 138 184
+P 138 188
+P 126 188
+P 126 184
+P 126 180
+P 126 176
+P 126 172
+P 126 168
+P 126 164
+P 126 160
+P 126 156
+P 126 152
+P 148 100
+P 148 104
+P 148 108
+P 148 112
+P 148 116
+P 148 120
+P 148 124
+P 148 128
+P 148 132
+P 148 136
+P 136 136
+P 136 132
+P 136 128
+P 136 124
+P 136 120
+P 136 116
+P 136 112
+P 136 108
+P 136 104
+P 136 100
+P 148 48
+P 148 52
+P 148 56
+P 148 60
+P 148 64
+P 148 68
+P 148 72
+P 148 76
+P 148 80
+P 148 84
+P 136 84
+P 136 80
+P 136 76
+P 136 72
+P 136 68
+P 136 64
+P 136 60
+P 136 56
+P 136 52
+P 136 48
+P 68 86
+P 68 90
+P 68 94
+P 68 98
+P 68 102
+P 68 106
+P 68 110
+P 68 114
+P 68 118
+P 68 122
+P 68 126
+P 68 130
+P 56 130
+P 56 126
+P 56 122
+P 56 118
+P 56 114
+P 56 110
+P 56 106
+P 56 102
+P 56 98
+P 56 94
+P 56 90
+P 56 86
+P 84 196
+P 84 200
+P 84 204
+P 84 208
+P 84 212
+P 84 216
+P 84 220
+P 84 224
+P 84 228
+P 84 232
+P 84 236
+P 84 240
+P 72 240
+P 72 236
+P 72 232
+P 72 228
+P 72 224
+P 72 220
+P 72 216
+P 72 212
+P 72 208
+P 72 204
+P 72 200
+P 72 196
+P 72 140
+P 72 144
+P 72 148
+P 72 152
+P 72 156
+P 72 160
+P 72 164
+P 72 168
+P 72 172
+P 72 176
+P 72 180
+P 72 184
+P 60 184
+P 60 180
+P 60 176
+P 60 172
+P 60 168
+P 60 164
+P 60 160
+P 60 156
+P 60 152
+P 60 148
+P 60 144
+P 60 140
+P 84 252
+P 84 256
+P 84 260
+P 84 264
+P 84 268
+P 84 272
+P 84 276
+P 84 280
+P 84 284
+P 84 288
+P 84 292
+P 84 296
+P 72 296
+P 72 292
+P 72 288
+P 72 284
+P 72 280
+P 72 276
+P 72 272
+P 72 268
+P 72 264
+P 72 260
+P 72 256
+P 72 252
+P 28 86
+P 28 90
+P 28 94
+P 28 98
+P 28 102
+P 28 106
+P 28 110
+P 28 114
+P 28 118
+P 28 122
+P 28 126
+P 28 130
+P 16 130
+P 16 126
+P 16 122
+P 16 118
+P 16 114
+P 16 110
+P 16 106
+P 16 102
+P 16 98
+P 16 94
+P 16 90
+P 16 86
+P 40 152
+P 40 156
+P 40 160
+P 40 164
+P 40 168
+P 40 172
+P 40 176
+P 40 180
+P 40 184
+P 40 188
+P 40 192
+P 40 196
+P 28 196
+P 28 192
+P 28 188
+P 28 184
+P 28 180
+P 28 176
+P 28 172
+P 28 168
+P 28 164
+P 28 160
+P 28 156
+P 28 152
+P 52 214
+P 52 218
+P 52 222
+P 52 226
+P 52 230
+P 52 234
+P 52 238
+P 52 242
+P 52 246
+P 52 250
+P 52 254
+P 52 258
+P 40 258
+P 40 254
+P 40 250
+P 40 246
+P 40 242
+P 40 238
+P 40 234
+P 40 230
+P 40 226
+P 40 222
+P 40 218
+P 40 214
+P 46 466
+P 46 470
+P 46 474
+P 46 478
+P 46 482
+P 46 486
+P 46 490
+P 46 494
+P 46 498
+P 46 502
+P 46 506
+P 46 510
+P 34 510
+P 34 506
+P 34 502
+P 34 498
+P 34 494
+P 34 490
+P 34 486
+P 34 482
+P 34 478
+P 34 474
+P 34 470
+P 34 466
+P 24 466
+P 24 470
+P 24 474
+P 24 478
+P 24 482
+P 24 486
+P 24 490
+P 24 494
+P 24 498
+P 24 502
+P 24 506
+P 24 510
+P 12 510
+P 12 506
+P 12 502
+P 12 498
+P 12 494
+P 12 490
+P 12 486
+P 12 482
+P 12 478
+P 12 474
+P 12 470
+P 12 466
+P 106 304
+P 106 308
+P 106 312
+P 106 316
+P 106 320
+P 106 324
+P 106 328
+P 106 332
+P 106 336
+P 106 340
+P 94 340
+P 94 336
+P 94 332
+P 94 328
+P 94 324
+P 94 320
+P 94 316
+P 94 312
+P 94 308
+P 94 304
+P 68 466
+P 68 470
+P 68 474
+P 68 478
+P 68 482
+P 68 486
+P 68 490
+P 68 494
+P 68 498
+P 68 502
+P 68 506
+P 68 510
+P 56 510
+P 56 506
+P 56 502
+P 56 498
+P 56 494
+P 56 490
+P 56 486
+P 56 482
+P 56 478
+P 56 474
+P 56 470
+P 56 466
+P 108 466
+P 108 470
+P 108 474
+P 108 478
+P 108 482
+P 108 486
+P 108 490
+P 108 494
+P 96 494
+P 96 490
+P 96 486
+P 96 482
+P 96 478
+P 96 474
+P 96 470
+P 96 466
+P 18 432
+P 22 432
+P 26 432
+P 30 432
+P 34 432
+P 38 432
+P 42 432
+P 46 432
+P 50 432
+P 54 432
+P 54 444
+P 50 444
+P 46 444
+P 42 444
+P 38 444
+P 34 444
+P 30 444
+P 26 444
+P 22 444
+P 18 444
+P 74 432
+P 78 432
+P 82 432
+P 86 432
+P 90 432
+P 94 432
+P 98 432
+P 102 432
+P 106 432
+P 110 432
+P 110 444
+P 106 444
+P 102 444
+P 98 444
+P 94 444
+P 90 444
+P 86 444
+P 82 444
+P 78 444
+P 74 444
+P 144 8
+P 140 8
+P 136 8
+P 132 8
+P 128 8
+P 124 8
+P 120 8
+P 116 8
+P 112 8
+P 108 8
+P 104 8
+P 100 8
+P 96 8
+P 92 8
+P 88 8
+P 84 8
+P 80 8
+P 76 8
+P 72 8
+P 68 8
+P 64 8
+P 60 8
+P 56 8
+P 52 8
+P 48 8
+P 44 8
+P 40 8
+P 36 8
+P 32 8
+P 28 8
+P 24 8
+P 20 8
+P 144 12
+P 140 12
+P 136 12
+P 132 12
+P 128 12
+P 124 12
+P 120 12
+P 116 12
+P 112 12
+P 108 12
+P 104 12
+P 100 12
+P 96 12
+P 92 12
+P 88 12
+P 84 12
+P 80 12
+P 76 12
+P 72 12
+P 68 12
+P 64 12
+P 60 12
+P 56 12
+P 52 12
+P 48 12
+P 44 12
+P 40 12
+P 36 12
+P 32 12
+P 28 12
+P 24 12
+P 20 12
+P 144 16
+P 140 16
+P 136 16
+P 132 16
+P 128 16
+P 124 16
+P 120 16
+P 116 16
+P 112 16
+P 108 16
+P 104 16
+P 100 16
+P 96 16
+P 92 16
+P 88 16
+P 84 16
+P 80 16
+P 76 16
+P 72 16
+P 68 16
+P 64 16
+P 60 16
+P 56 16
+P 52 16
+P 48 16
+P 44 16
+P 40 16
+P 36 16
+P 32 16
+P 28 16
+P 24 16
+P 20 16
+P 76 406
+P 80 406
+P 84 406
+P 88 406
+P 92 406
+P 96 406
+P 100 406
+P 104 406
+P 104 418
+P 100 418
+P 96 418
+P 92 418
+P 88 418
+P 84 418
+P 80 418
+P 76 418
+P 28 318
+P 28 322
+P 28 326
+P 28 330
+P 28 334
+P 28 338
+P 28 342
+P 28 346
+P 16 346
+P 16 342
+P 16 338
+P 16 334
+P 16 330
+P 16 326
+P 16 322
+P 16 318
+P 26 540
+P 26 544
+P 26 548
+P 26 552
+P 26 556
+P 26 560
+P 26 564
+P 14 564
+P 14 560
+P 14 556
+P 14 552
+P 14 548
+P 14 544
+P 14 540
+P 20 406
+P 24 406
+P 28 406
+P 32 406
+P 36 406
+P 40 406
+P 44 406
+P 44 418
+P 40 418
+P 36 418
+P 32 418
+P 28 418
+P 24 418
+P 20 418
+P 28 362
+P 28 366
+P 28 370
+P 28 374
+P 28 378
+P 28 382
+P 28 386
+P 28 390
+P 16 390
+P 16 386
+P 16 382
+P 16 378
+P 16 374
+P 16 370
+P 16 366
+P 16 362
+P 106 364
+P 106 368
+P 106 372
+P 106 376
+P 106 380
+P 106 384
+P 106 388
+P 94 388
+P 94 384
+P 94 380
+P 94 376
+P 94 372
+P 94 368
+P 94 364
+P 80 364
+P 80 368
+P 80 372
+P 80 376
+P 80 380
+P 80 384
+P 80 388
+P 68 388
+P 68 384
+P 68 380
+P 68 376
+P 68 372
+P 68 368
+P 68 364
+P 56 310
+P 56 314
+P 56 318
+P 56 322
+P 56 326
+P 56 330
+P 56 334
+P 44 334
+P 44 330
+P 44 326
+P 44 322
+P 44 318
+P 44 314
+P 44 310
+P 70 540
+P 70 544
+P 70 548
+P 70 552
+P 70 556
+P 70 560
+P 70 564
+P 58 564
+P 58 560
+P 58 556
+P 58 552
+P 58 548
+P 58 544
+P 58 540
+P 28 214
+P 28 218
+P 28 222
+P 28 226
+P 28 230
+P 28 234
+P 28 238
+P 28 242
+P 28 246
+P 28 250
+P 16 250
+P 16 246
+P 16 242
+P 16 238
+P 16 234
+P 16 230
+P 16 226
+P 16 222
+P 16 218
+P 16 214
+P 16 284
+P 16 304
+P 62 392
+P 42 392
+P 172 300
+P 172 304
+P 172 308
+P 172 312
+P 172 316
+P 172 320
+P 172 324
+P 172 328
+P 160 328
+P 160 324
+P 160 320
+P 160 316
+P 160 312
+P 160 308
+P 160 304
+P 160 300
+P 464 36
+P 464 40
+P 464 44
+P 464 48
+P 464 52
+P 464 56
+P 464 60
+P 464 64
+P 464 68
+P 464 72
+P 452 72
+P 452 68
+P 452 64
+P 452 60
+P 452 56
+P 452 52
+P 452 48
+P 452 44
+P 452 40
+P 452 36
+P 496 36
+P 496 40
+P 496 44
+P 496 48
+P 496 52
+P 496 56
+P 496 60
+P 496 64
+P 496 68
+P 496 72
+P 484 72
+P 484 68
+P 484 64
+P 484 60
+P 484 56
+P 484 52
+P 484 48
+P 484 44
+P 484 40
+P 484 36
+P 464 90
+P 464 94
+P 464 98
+P 464 102
+P 464 106
+P 464 110
+P 464 114
+P 464 118
+P 464 122
+P 464 126
+P 452 126
+P 452 122
+P 452 118
+P 452 114
+P 452 110
+P 452 106
+P 452 102
+P 452 98
+P 452 94
+P 452 90
+P 496 90
+P 496 94
+P 496 98
+P 496 102
+P 496 106
+P 496 110
+P 496 114
+P 496 118
+P 496 122
+P 496 126
+P 484 126
+P 484 122
+P 484 118
+P 484 114
+P 484 110
+P 484 106
+P 484 102
+P 484 98
+P 484 94
+P 484 90
+P 464 146
+P 464 150
+P 464 154
+P 464 158
+P 464 162
+P 464 166
+P 464 170
+P 464 174
+P 464 178
+P 464 182
+P 452 182
+P 452 178
+P 452 174
+P 452 170
+P 452 166
+P 452 162
+P 452 158
+P 452 154
+P 452 150
+P 452 146
+P 496 146
+P 496 150
+P 496 154
+P 496 158
+P 496 162
+P 496 166
+P 496 170
+P 496 174
+P 496 178
+P 496 182
+P 484 182
+P 484 178
+P 484 174
+P 484 170
+P 484 166
+P 484 162
+P 484 158
+P 484 154
+P 484 150
+P 484 146
+P 496 194
+P 496 198
+P 496 202
+P 496 206
+P 496 210
+P 496 214
+P 496 218
+P 484 218
+P 484 214
+P 484 210
+P 484 206
+P 484 202
+P 484 198
+P 484 194
+P 462 192
+P 462 196
+P 462 200
+P 462 204
+P 462 208
+P 462 212
+P 462 216
+P 462 220
+P 450 220
+P 450 216
+P 450 212
+P 450 208
+P 450 204
+P 450 200
+P 450 196
+P 450 192
+P 472 212
+P 472 192
+P 568 38
+P 568 42
+P 568 46
+P 568 50
+P 568 54
+P 568 58
+P 568 62
+P 568 66
+P 568 70
+P 568 74
+P 556 74
+P 556 70
+P 556 66
+P 556 62
+P 556 58
+P 556 54
+P 556 50
+P 556 46
+P 556 42
+P 556 38
+P 556 90
+P 556 94
+P 556 98
+P 556 102
+P 556 106
+P 556 110
+P 556 114
+P 556 118
+P 556 122
+P 556 126
+P 544 126
+P 544 122
+P 544 118
+P 544 114
+P 544 110
+P 544 106
+P 544 102
+P 544 98
+P 544 94
+P 544 90
+P 544 140
+P 544 144
+P 544 148
+P 544 152
+P 544 156
+P 544 160
+P 544 164
+P 544 168
+P 544 172
+P 544 176
+P 532 176
+P 532 172
+P 532 168
+P 532 164
+P 532 160
+P 532 156
+P 532 152
+P 532 148
+P 532 144
+P 532 140
+P 540 182
+P 540 186
+P 540 190
+P 540 194
+P 540 198
+P 540 202
+P 540 206
+P 540 210
+P 540 214
+P 540 218
+P 528 218
+P 528 214
+P 528 210
+P 528 206
+P 528 202
+P 528 198
+P 528 194
+P 528 190
+P 528 186
+P 528 182
+P 564 8
+P 560 8
+P 556 8
+P 552 8
+P 548 8
+P 544 8
+P 540 8
+P 536 8
+P 532 8
+P 528 8
+P 524 8
+P 520 8
+P 516 8
+P 512 8
+P 508 8
+P 504 8
+P 500 8
+P 496 8
+P 492 8
+P 488 8
+P 484 8
+P 480 8
+P 476 8
+P 472 8
+P 468 8
+P 464 8
+P 460 8
+P 456 8
+P 452 8
+P 448 8
+P 444 8
+P 440 8
+P 564 12
+P 560 12
+P 556 12
+P 552 12
+P 548 12
+P 544 12
+P 540 12
+P 536 12
+P 532 12
+P 528 12
+P 524 12
+P 520 12
+P 516 12
+P 512 12
+P 508 12
+P 504 12
+P 500 12
+P 496 12
+P 492 12
+P 488 12
+P 484 12
+P 480 12
+P 476 12
+P 472 12
+P 468 12
+P 464 12
+P 460 12
+P 456 12
+P 452 12
+P 448 12
+P 444 12
+P 440 12
+P 564 16
+P 560 16
+P 556 16
+P 552 16
+P 548 16
+P 544 16
+P 540 16
+P 536 16
+P 532 16
+P 528 16
+P 524 16
+P 520 16
+P 516 16
+P 512 16
+P 508 16
+P 504 16
+P 500 16
+P 496 16
+P 492 16
+P 488 16
+P 484 16
+P 480 16
+P 476 16
+P 472 16
+P 468 16
+P 464 16
+P 460 16
+P 456 16
+P 452 16
+P 448 16
+P 444 16
+P 440 16
+P 482 272
+P 482 276
+P 482 280
+P 482 284
+P 482 288
+P 482 292
+P 482 296
+P 482 300
+P 482 304
+P 482 308
+P 482 312
+P 482 316
+P 470 316
+P 470 312
+P 470 308
+P 470 304
+P 470 300
+P 470 296
+P 470 292
+P 470 288
+P 470 284
+P 470 280
+P 470 276
+P 470 272
+P 514 276
+P 514 280
+P 514 284
+P 514 288
+P 514 292
+P 514 296
+P 514 300
+P 514 304
+P 502 304
+P 502 300
+P 502 296
+P 502 292
+P 502 288
+P 502 284
+P 502 280
+P 502 276
+P 516 216
+P 516 220
+P 516 224
+P 516 228
+P 516 232
+P 516 236
+P 516 240
+P 516 244
+P 516 248
+P 516 252
+P 504 252
+P 504 248
+P 504 244
+P 504 240
+P 504 236
+P 504 232
+P 504 228
+P 504 224
+P 504 220
+P 504 216
+P 196 32
+P 196 36
+P 196 40
+P 196 44
+P 196 48
+P 196 52
+P 196 56
+P 196 60
+P 196 64
+P 196 68
+P 196 72
+P 196 76
+P 184 76
+P 184 72
+P 184 68
+P 184 64
+P 184 60
+P 184 56
+P 184 52
+P 184 48
+P 184 44
+P 184 40
+P 184 36
+P 184 32
+P 196 84
+P 196 88
+P 196 92
+P 196 96
+P 196 100
+P 196 104
+P 196 108
+P 196 112
+P 196 116
+P 196 120
+P 196 124
+P 196 128
+P 184 128
+P 184 124
+P 184 120
+P 184 116
+P 184 112
+P 184 108
+P 184 104
+P 184 100
+P 184 96
+P 184 92
+P 184 88
+P 184 84
+P 196 136
+P 196 140
+P 196 144
+P 196 148
+P 196 152
+P 196 156
+P 196 160
+P 196 164
+P 196 168
+P 196 172
+P 196 176
+P 196 180
+P 184 180
+P 184 176
+P 184 172
+P 184 168
+P 184 164
+P 184 160
+P 184 156
+P 184 152
+P 184 148
+P 184 144
+P 184 140
+P 184 136
+P 196 188
+P 196 192
+P 196 196
+P 196 200
+P 196 204
+P 196 208
+P 196 212
+P 196 216
+P 196 220
+P 196 224
+P 196 228
+P 196 232
+P 184 232
+P 184 228
+P 184 224
+P 184 220
+P 184 216
+P 184 212
+P 184 208
+P 184 204
+P 184 200
+P 184 196
+P 184 192
+P 184 188
+P 228 316
+P 228 320
+P 228 324
+P 228 328
+P 228 332
+P 228 336
+P 228 340
+P 228 344
+P 228 348
+P 228 352
+P 216 352
+P 216 348
+P 216 344
+P 216 340
+P 216 336
+P 216 332
+P 216 328
+P 216 324
+P 216 320
+P 216 316
+P 210 328
+P 210 348
+P 420 54
+P 420 58
+P 420 62
+P 420 66
+P 420 70
+P 420 74
+P 420 78
+P 420 82
+P 408 82
+P 408 78
+P 408 74
+P 408 70
+P 408 66
+P 408 62
+P 408 58
+P 408 54
+P 420 94
+P 420 98
+P 420 102
+P 420 106
+P 420 110
+P 420 114
+P 420 118
+P 420 122
+P 408 122
+P 408 118
+P 408 114
+P 408 110
+P 408 106
+P 408 102
+P 408 98
+P 408 94
+P 420 134
+P 420 138
+P 420 142
+P 420 146
+P 420 150
+P 420 154
+P 420 158
+P 420 162
+P 408 162
+P 408 158
+P 408 154
+P 408 150
+P 408 146
+P 408 142
+P 408 138
+P 408 134
+P 392 54
+P 392 58
+P 392 62
+P 392 66
+P 392 70
+P 392 74
+P 392 78
+P 392 82
+P 380 82
+P 380 78
+P 380 74
+P 380 70
+P 380 66
+P 380 62
+P 380 58
+P 380 54
+P 392 94
+P 392 98
+P 392 102
+P 392 106
+P 392 110
+P 392 114
+P 392 118
+P 392 122
+P 380 122
+P 380 118
+P 380 114
+P 380 110
+P 380 106
+P 380 102
+P 380 98
+P 380 94
+P 392 134
+P 392 138
+P 392 142
+P 392 146
+P 392 150
+P 392 154
+P 392 158
+P 392 162
+P 380 162
+P 380 158
+P 380 154
+P 380 150
+P 380 146
+P 380 142
+P 380 138
+P 380 134
+P 368 54
+P 368 58
+P 368 62
+P 368 66
+P 368 70
+P 368 74
+P 368 78
+P 368 82
+P 356 82
+P 356 78
+P 356 74
+P 356 70
+P 356 66
+P 356 62
+P 356 58
+P 356 54
+P 368 94
+P 368 98
+P 368 102
+P 368 106
+P 368 110
+P 368 114
+P 368 118
+P 368 122
+P 356 122
+P 356 118
+P 356 114
+P 356 110
+P 356 106
+P 356 102
+P 356 98
+P 356 94
+P 368 134
+P 368 138
+P 368 142
+P 368 146
+P 368 150
+P 368 154
+P 368 158
+P 368 162
+P 356 162
+P 356 158
+P 356 154
+P 356 150
+P 356 146
+P 356 142
+P 356 138
+P 356 134
+P 396 170
+P 400 170
+P 404 170
+P 408 170
+P 412 170
+P 416 170
+P 420 170
+P 424 170
+P 424 182
+P 420 182
+P 416 182
+P 412 182
+P 408 182
+P 404 182
+P 400 182
+P 396 182
+P 200 318
+P 200 322
+P 200 326
+P 200 330
+P 200 334
+P 200 338
+P 200 342
+P 200 346
+P 200 350
+P 200 354
+P 188 354
+P 188 350
+P 188 346
+P 188 342
+P 188 338
+P 188 334
+P 188 330
+P 188 326
+P 188 322
+P 188 318
+P 140 366
+P 140 370
+P 140 374
+P 140 378
+P 140 382
+P 140 386
+P 140 390
+P 140 394
+P 128 394
+P 128 390
+P 128 386
+P 128 382
+P 128 378
+P 128 374
+P 128 370
+P 128 366
+P 196 246
+P 196 250
+P 196 254
+P 196 258
+P 196 262
+P 196 266
+P 196 270
+P 196 274
+P 196 278
+P 196 282
+P 196 286
+P 196 290
+P 184 290
+P 184 286
+P 184 282
+P 184 278
+P 184 274
+P 184 270
+P 184 266
+P 184 262
+P 184 258
+P 184 254
+P 184 250
+P 184 246
+P 398 348
+P 398 352
+P 398 356
+P 398 360
+P 398 364
+P 398 368
+P 398 372
+P 398 376
+P 398 380
+P 398 384
+P 386 384
+P 386 380
+P 386 376
+P 386 372
+P 386 368
+P 386 364
+P 386 360
+P 386 356
+P 386 352
+P 386 348
+P 366 348
+P 366 352
+P 366 356
+P 366 360
+P 366 364
+P 366 368
+P 366 372
+P 366 376
+P 366 380
+P 366 384
+P 366 388
+P 366 392
+P 342 392
+P 342 388
+P 342 384
+P 342 380
+P 342 376
+P 342 372
+P 342 368
+P 342 364
+P 342 360
+P 342 356
+P 342 352
+P 342 348
+P 492 344
+P 488 344
+P 484 344
+P 480 344
+P 476 344
+P 472 344
+P 468 344
+P 464 344
+P 460 344
+P 456 344
+P 456 332
+P 460 332
+P 464 332
+P 468 332
+P 472 332
+P 476 332
+P 480 332
+P 484 332
+P 488 332
+P 492 332
+P 558 342
+P 554 342
+P 550 342
+P 546 342
+P 542 342
+P 538 342
+P 534 342
+P 530 342
+P 526 342
+P 522 342
+P 522 330
+P 526 330
+P 530 330
+P 534 330
+P 538 330
+P 542 330
+P 546 330
+P 550 330
+P 554 330
+P 558 330
+P 492 372
+P 488 372
+P 484 372
+P 480 372
+P 476 372
+P 472 372
+P 468 372
+P 464 372
+P 460 372
+P 456 372
+P 452 372
+P 448 372
+P 448 360
+P 452 360
+P 456 360
+P 460 360
+P 464 360
+P 468 360
+P 472 360
+P 476 360
+P 480 360
+P 484 360
+P 488 360
+P 492 360
+P 558 372
+P 554 372
+P 550 372
+P 546 372
+P 542 372
+P 538 372
+P 534 372
+P 530 372
+P 526 372
+P 522 372
+P 518 372
+P 514 372
+P 514 360
+P 518 360
+P 522 360
+P 526 360
+P 530 360
+P 534 360
+P 538 360
+P 542 360
+P 546 360
+P 550 360
+P 554 360
+P 558 360
+P 314 340
+P 314 344
+P 314 348
+P 314 352
+P 314 356
+P 314 360
+P 314 364
+P 314 368
+P 302 368
+P 302 364
+P 302 360
+P 302 356
+P 302 352
+P 302 348
+P 302 344
+P 302 340
+P 314 392
+P 314 396
+P 314 400
+P 314 404
+P 314 408
+P 314 412
+P 314 416
+P 314 420
+P 302 420
+P 302 416
+P 302 412
+P 302 408
+P 302 404
+P 302 400
+P 302 396
+P 302 392
+P 282 340
+P 282 344
+P 282 348
+P 282 352
+P 282 356
+P 282 360
+P 282 364
+P 282 368
+P 270 368
+P 270 364
+P 270 360
+P 270 356
+P 270 352
+P 270 348
+P 270 344
+P 270 340
+P 280 392
+P 280 396
+P 280 400
+P 280 404
+P 280 408
+P 280 412
+P 280 416
+P 280 420
+P 268 420
+P 268 416
+P 268 412
+P 268 408
+P 268 404
+P 268 400
+P 268 396
+P 268 392
+P 492 400
+P 488 400
+P 484 400
+P 480 400
+P 476 400
+P 472 400
+P 468 400
+P 464 400
+P 464 388
+P 468 388
+P 472 388
+P 476 388
+P 480 388
+P 484 388
+P 488 388
+P 492 388
+P 558 400
+P 554 400
+P 550 400
+P 546 400
+P 542 400
+P 538 400
+P 534 400
+P 530 400
+P 530 388
+P 534 388
+P 538 388
+P 542 388
+P 546 388
+P 550 388
+P 554 388
+P 558 388
+P 548 276
+P 548 280
+P 548 284
+P 548 288
+P 548 292
+P 548 296
+P 548 300
+P 548 304
+P 548 308
+P 548 312
+P 548 316
+P 548 320
+P 536 320
+P 536 316
+P 536 312
+P 536 308
+P 536 304
+P 536 300
+P 536 296
+P 536 292
+P 536 288
+P 536 284
+P 536 280
+P 536 276
+P 224 32
+P 224 36
+P 224 40
+P 224 44
+P 224 48
+P 224 52
+P 224 56
+P 224 60
+P 224 64
+P 224 68
+P 224 72
+P 224 76
+P 212 76
+P 212 72
+P 212 68
+P 212 64
+P 212 60
+P 212 56
+P 212 52
+P 212 48
+P 212 44
+P 212 40
+P 212 36
+P 212 32
+P 224 84
+P 224 88
+P 224 92
+P 224 96
+P 224 100
+P 224 104
+P 224 108
+P 224 112
+P 224 116
+P 224 120
+P 224 124
+P 224 128
+P 212 128
+P 212 124
+P 212 120
+P 212 116
+P 212 112
+P 212 108
+P 212 104
+P 212 100
+P 212 96
+P 212 92
+P 212 88
+P 212 84
+P 224 136
+P 224 140
+P 224 144
+P 224 148
+P 224 152
+P 224 156
+P 224 160
+P 224 164
+P 224 168
+P 224 172
+P 224 176
+P 224 180
+P 212 180
+P 212 176
+P 212 172
+P 212 168
+P 212 164
+P 212 160
+P 212 156
+P 212 152
+P 212 148
+P 212 144
+P 212 140
+P 212 136
+P 224 188
+P 224 192
+P 224 196
+P 224 200
+P 224 204
+P 224 208
+P 224 212
+P 224 216
+P 224 220
+P 224 224
+P 224 228
+P 224 232
+P 212 232
+P 212 228
+P 212 224
+P 212 220
+P 212 216
+P 212 212
+P 212 208
+P 212 204
+P 212 200
+P 212 196
+P 212 192
+P 212 188
+P 224 240
+P 224 244
+P 224 248
+P 224 252
+P 224 256
+P 224 260
+P 224 264
+P 224 268
+P 224 272
+P 224 276
+P 224 280
+P 224 284
+P 212 284
+P 212 280
+P 212 276
+P 212 272
+P 212 268
+P 212 264
+P 212 260
+P 212 256
+P 212 252
+P 212 248
+P 212 244
+P 212 240
+P 280 102
+P 280 106
+P 280 110
+P 280 114
+P 280 118
+P 280 122
+P 280 126
+P 280 130
+P 280 134
+P 280 138
+P 280 142
+P 280 146
+P 268 146
+P 268 142
+P 268 138
+P 268 134
+P 268 130
+P 268 126
+P 268 122
+P 268 118
+P 268 114
+P 268 110
+P 268 106
+P 268 102
+P 326 112
+P 326 116
+P 326 120
+P 326 124
+P 326 128
+P 326 132
+P 326 136
+P 326 140
+P 326 144
+P 326 148
+P 314 148
+P 314 144
+P 314 140
+P 314 136
+P 314 132
+P 314 128
+P 314 124
+P 314 120
+P 314 116
+P 314 112
+P 290 224
+P 290 228
+P 290 232
+P 290 236
+P 290 240
+P 290 244
+P 290 248
+P 290 252
+P 290 256
+P 290 260
+P 278 260
+P 278 256
+P 278 252
+P 278 248
+P 278 244
+P 278 240
+P 278 236
+P 278 232
+P 278 228
+P 278 224
+P 308 40
+P 308 44
+P 308 48
+P 308 52
+P 308 56
+P 308 60
+P 308 64
+P 308 68
+P 308 72
+P 308 76
+P 308 80
+P 308 84
+P 296 84
+P 296 80
+P 296 76
+P 296 72
+P 296 68
+P 296 64
+P 296 60
+P 296 56
+P 296 52
+P 296 48
+P 296 44
+P 296 40
+P 336 42
+P 336 46
+P 336 50
+P 336 54
+P 336 58
+P 336 62
+P 336 66
+P 336 70
+P 336 74
+P 336 78
+P 336 82
+P 336 86
+P 324 86
+P 324 82
+P 324 78
+P 324 74
+P 324 70
+P 324 66
+P 324 62
+P 324 58
+P 324 54
+P 324 50
+P 324 46
+P 324 42
+P 280 170
+P 280 174
+P 280 178
+P 280 182
+P 280 186
+P 280 190
+P 280 194
+P 268 194
+P 268 190
+P 268 186
+P 268 182
+P 268 178
+P 268 174
+P 268 170
+P 354 8
+P 350 8
+P 346 8
+P 342 8
+P 338 8
+P 334 8
+P 330 8
+P 326 8
+P 322 8
+P 318 8
+P 314 8
+P 310 8
+P 306 8
+P 302 8
+P 298 8
+P 294 8
+P 290 8
+P 286 8
+P 282 8
+P 278 8
+P 274 8
+P 270 8
+P 266 8
+P 262 8
+P 258 8
+P 254 8
+P 250 8
+P 246 8
+P 242 8
+P 238 8
+P 234 8
+P 230 8
+P 354 12
+P 350 12
+P 346 12
+P 342 12
+P 338 12
+P 334 12
+P 330 12
+P 326 12
+P 322 12
+P 318 12
+P 314 12
+P 310 12
+P 306 12
+P 302 12
+P 298 12
+P 294 12
+P 290 12
+P 286 12
+P 282 12
+P 278 12
+P 274 12
+P 270 12
+P 266 12
+P 262 12
+P 258 12
+P 254 12
+P 250 12
+P 246 12
+P 242 12
+P 238 12
+P 234 12
+P 230 12
+P 354 16
+P 350 16
+P 346 16
+P 342 16
+P 338 16
+P 334 16
+P 330 16
+P 326 16
+P 322 16
+P 318 16
+P 314 16
+P 310 16
+P 306 16
+P 302 16
+P 298 16
+P 294 16
+P 290 16
+P 286 16
+P 282 16
+P 278 16
+P 274 16
+P 270 16
+P 266 16
+P 262 16
+P 258 16
+P 254 16
+P 250 16
+P 246 16
+P 242 16
+P 238 16
+P 234 16
+P 230 16
+P 270 272
+P 270 276
+P 270 280
+P 270 284
+P 270 288
+P 270 292
+P 270 296
+P 270 300
+P 270 304
+P 270 308
+P 270 312
+P 270 316
+P 258 316
+P 258 312
+P 258 308
+P 258 304
+P 258 300
+P 258 296
+P 258 292
+P 258 288
+P 258 284
+P 258 280
+P 258 276
+P 258 272
+P 290 272
+P 290 276
+P 290 280
+P 290 284
+P 290 288
+P 290 292
+P 290 296
+P 290 300
+P 278 300
+P 278 296
+P 278 292
+P 278 288
+P 278 284
+P 278 280
+P 278 276
+P 278 272
+P 310 272
+P 310 276
+P 310 280
+P 310 284
+P 310 288
+P 310 292
+P 310 296
+P 310 300
+P 298 300
+P 298 296
+P 298 292
+P 298 288
+P 298 284
+P 298 280
+P 298 276
+P 298 272
+P 334 224
+P 334 228
+P 334 232
+P 334 236
+P 334 240
+P 334 244
+P 334 248
+P 334 252
+P 322 252
+P 322 248
+P 322 244
+P 322 240
+P 322 236
+P 322 232
+P 322 228
+P 322 224
+P 322 290
+P 322 266
+P 334 266
+P 334 290
+P 316 216
+P 316 236
+P 310 224
+P 310 228
+P 310 232
+P 310 236
+P 310 240
+P 310 244
+P 310 248
+P 310 252
+P 310 256
+P 310 260
+P 298 260
+P 298 256
+P 298 252
+P 298 248
+P 298 244
+P 298 240
+P 298 236
+P 298 232
+P 298 228
+P 298 224
+P 12 156
+P 324 184
+P 512 416
+P 292 564
+P 572 588
+P 520 588
+P 456 588
+P 396 588
+P 332 588
+P 268 588
+P 204 588
+P 140 588
+P 76 588
+P 12 588
+P 220 380
+P 220 384
+P 220 388
+P 220 392
+P 220 396
+P 220 400
+P 220 404
+P 220 408
+P 220 412
+P 220 416
+P 220 420
+P 220 424
+P 208 424
+P 208 420
+P 208 416
+P 208 412
+P 208 408
+P 208 404
+P 208 400
+P 208 396
+P 208 392
+P 208 388
+P 208 384
+P 208 380
+P 144 468
+P 144 472
+P 144 476
+P 144 480
+P 144 484
+P 144 488
+P 144 492
+P 144 496
+P 144 500
+P 144 504
+P 144 508
+P 144 512
+P 132 512
+P 132 508
+P 132 504
+P 132 500
+P 132 496
+P 132 492
+P 132 488
+P 132 484
+P 132 480
+P 132 476
+P 132 472
+P 132 468
+P 144 524
+P 144 528
+P 144 532
+P 144 536
+P 144 540
+P 144 544
+P 144 548
+P 144 552
+P 144 556
+P 144 560
+P 144 564
+P 144 568
+P 132 568
+P 132 564
+P 132 560
+P 132 556
+P 132 552
+P 132 548
+P 132 544
+P 132 540
+P 132 536
+P 132 532
+P 132 528
+P 132 524
+P 568 220
+P 568 224
+P 568 228
+P 568 232
+P 568 236
+P 568 240
+P 568 244
+P 568 248
+P 568 252
+P 568 256
+P 568 260
+P 568 264
+P 556 264
+P 556 260
+P 556 256
+P 556 252
+P 556 248
+P 556 244
+P 556 240
+P 556 236
+P 556 232
+P 556 228
+P 556 224
+P 556 220
+J 366 356 464 344
+J 464 344 530 342
+J 530 342 466 456
+J 172 100 184 100
+J 184 100 196 96
+J 196 96 224 96
+J 224 96 368 146
+J 368 146 452 114
+J 452 114 464 114
+J 464 114 556 94
+J 94 312 302 400
+J 354 274 394 290
+J 394 290 424 302
+J 214 540 332 450
+J 332 450 382 472
+J 184 36 184 88
+J 184 88 184 140
+J 184 140 184 192
+J 184 192 550 456
+J 172 48 184 48
+J 184 48 196 44
+J 196 44 224 44
+J 224 44 368 66
+J 368 66 452 60
+J 452 60 464 60
+J 464 60 568 42
+J 70 540 94 308
+J 94 308 88 12
+J 128 224 160 224
+J 450 212 484 94
+J 224 36 224 88
+J 224 88 224 140
+J 224 140 224 192
+J 224 192 224 244
+J 224 244 438 452
+J 514 280 536 316
+J 528 202 536 284
+J 472 332 538 330
+J 538 330 538 400
+J 538 400 472 400
+J 138 172 160 172
+J 172 180 184 180
+J 184 180 196 176
+J 196 176 224 176
+J 224 176 356 142
+J 356 142 484 158
+J 484 158 496 158
+J 496 158 532 152
+J 478 558 478 460
+J 80 364 98 260
+J 98 260 116 208
+J 116 208 126 156
+J 126 156 136 104
+J 136 104 136 52
+J 302 356 342 352
+J 354 250 406 318
+J 406 318 424 314
+J 28 176 72 288
+J 280 416 314 412
+J 380 154 408 162
+J 354 566 366 476
+J 378 266 406 258
+J 406 258 422 254
+J 186 496 308 60
+J 308 60 336 62
+J 336 62 346 8
+J 132 12 136 76
+J 380 74 408 82
+J 148 80 160 80
+J 216 340 522 468
+J 138 160 160 160
+J 76 8 98 264
+J 468 12 550 472
+J 550 566 562 476
+J 70 548 70 552
+J 172 116 184 116
+J 184 116 196 112
+J 196 112 224 112
+J 224 112 368 62
+J 368 62 484 114
+J 484 114 496 114
+J 496 114 544 126
+J 410 570 422 480
+J 70 560 96 486
+J 492 344 522 372
+J 392 158 400 170
+J 28 192 44 8
+J 84 12 116 232
+J 116 232 106 332
+J 394 238 408 170
+J 182 556 214 556
+J 214 556 248 556
+J 248 556 282 484
+J 282 484 354 460
+J 550 554 562 464
+J 468 372 476 344
+J 282 532 336 486
+J 336 486 366 526
+J 366 526 394 526
+J 394 526 422 526
+J 422 526 450 526
+J 450 526 478 526
+J 478 526 506 526
+J 506 526 534 526
+J 534 526 562 526
+J 40 230 60 8
+J 100 12 126 180
+J 28 122 32 12
+J 282 540 324 494
+J 324 494 354 530
+J 354 530 382 530
+J 382 530 410 530
+J 410 530 438 530
+J 438 530 466 530
+J 466 530 494 530
+J 494 530 522 530
+J 522 530 550 530
+J 460 360 468 388
+J 172 272 184 270
+J 184 270 196 270
+J 196 270 224 268
+J 224 268 482 280
+J 482 280 502 288
+J 502 288 516 248
+J 516 248 546 330
+J 546 330 468 360
+J 468 360 496 12
+J 16 122 60 172
+J 170 568 202 500
+J 202 500 248 488
+J 522 554 534 464
+J 310 236 322 236
+J 322 236 540 210
+J 282 496 324 562
+J 324 562 366 550
+J 366 550 394 550
+J 394 550 422 550
+J 422 550 450 550
+J 450 550 478 550
+J 478 550 506 550
+J 506 550 534 550
+J 534 550 562 550
+J 382 558 394 468
+J 520 8 544 156
+J 394 254 488 332
+J 270 280 278 276
+J 270 288 278 296
+J 278 296 298 276
+J 544 98 548 8
+J 270 284 462 196
+J 462 196 496 198
+J 496 198 484 68
+J 34 506 68 478
+J 200 326 224 280
+J 160 324 174 504
+J 40 246 72 212
+J 556 46 564 8
+J 356 98 380 98
+J 380 98 420 102
+J 314 404 366 376
+J 104 8 126 168
+J 392 150 404 170
+J 212 56 242 56
+J 242 56 280 48
+J 280 48 280 114
+J 280 114 212 108
+J 212 108 212 160
+J 212 160 212 212
+J 212 212 212 264
+J 212 264 236 484
+J 236 484 214 552
+J 214 552 346 12
+J 56 474 70 556
+J 70 556 94 372
+J 110 268 160 268
+J 534 566 534 452
+J 16 106 56 114
+J 28 334 56 314
+J 120 8 136 116
+J 528 12 532 172
+J 14 556 26 552
+J 26 552 24 418
+J 24 418 36 418
+J 36 418 20 406
+J 20 406 42 392
+J 42 392 28 374
+J 28 374 16 378
+J 16 378 16 370
+J 16 342 28 330
+J 28 330 16 304
+J 16 304 106 364
+J 106 364 106 376
+J 106 376 94 380
+J 224 196 324 74
+J 506 566 506 452
+J 280 392 466 468
+J 466 468 550 372
+J 90 444 106 316
+J 544 122 544 12
+J 172 60 184 60
+J 184 60 196 56
+J 196 56 224 56
+J 224 56 356 66
+J 356 66 452 48
+J 452 48 464 48
+J 464 48 568 66
+J 354 254 394 318
+J 394 318 436 306
+J 502 300 548 308
+J 236 560 536 288
+J 406 254 484 388
+J 484 388 550 388
+J 138 184 160 184
+J 172 212 184 212
+J 184 212 196 208
+J 196 208 224 208
+J 224 208 516 236
+J 516 236 540 202
+J 540 202 540 198
+J 540 198 548 292
+J 466 562 478 472
+J 368 54 368 94
+J 368 94 368 134
+J 368 134 408 142
+J 408 142 420 150
+J 420 150 420 110
+J 420 110 408 102
+J 408 102 420 70
+J 420 70 408 62
+J 408 62 470 304
+J 110 544 438 480
+J 46 548 202 576
+J 202 576 296 44
+J 30 444 82 432
+J 82 432 150 444
+J 394 562 394 456
+J 16 374 46 552
+J 378 254 406 230
+J 406 230 434 242
+J 40 250 72 268
+J 308 48 336 50
+J 336 50 334 8
+J 542 372 542 400
+J 460 12 484 214
+J 484 214 470 312
+J 392 114 392 142
+J 124 8 136 108
+J 380 122 408 118
+J 366 562 366 456
+J 136 56 140 8
+J 72 12 98 276
+J 236 544 248 540
+J 248 540 320 450
+J 320 450 382 480
+J 14 548 56 502
+J 148 60 160 60
+J 148 120 160 120
+J 172 128 184 128
+J 184 128 196 124
+J 196 124 224 124
+J 224 124 356 62
+J 356 62 484 102
+J 484 102 496 102
+J 496 102 544 102
+J 450 558 450 460
+J 212 36 324 46
+J 30 432 98 432
+J 98 432 108 482
+J 108 482 150 432
+J 268 174 278 244
+J 56 478 406 294
+J 542 360 558 342
+J 80 384 86 444
+J 86 444 172 300
+J 172 300 160 252
+J 160 252 160 200
+J 160 200 160 148
+J 160 148 160 96
+J 160 96 160 44
+J 80 376 84 406
+J 356 138 380 138
+J 380 138 420 142
+J 170 564 202 560
+J 202 560 236 564
+J 236 564 306 488
+J 306 488 354 472
+J 464 360 542 342
+J 186 480 214 496
+J 52 250 56 12
+J 92 8 116 212
+J 464 64 496 64
+J 496 64 464 118
+J 464 118 470 292
+J 182 568 202 512
+J 202 512 248 500
+J 522 566 534 476
+J 200 346 436 410
+J 436 410 448 422
+J 448 422 438 472
+J 40 176 40 8
+J 306 476 336 550
+J 336 550 366 542
+J 366 542 394 542
+J 394 542 422 542
+J 422 542 450 542
+J 450 542 478 542
+J 478 542 506 542
+J 506 542 534 542
+J 534 542 562 542
+J 382 570 394 480
+J 516 12 528 198
+J 432 410 452 182
+J 452 182 484 182
+J 484 182 528 186
+J 528 186 484 126
+J 484 126 452 126
+J 452 126 452 72
+J 452 72 484 72
+J 270 364 302 360
+J 16 390 406 250
+J 452 178 462 212
+J 462 212 496 210
+J 282 356 342 384
+J 342 384 398 360
+J 438 464 440 422
+J 52 218 72 224
+J 556 70 560 12
+J 134 444 324 470
+J 324 470 324 538
+J 324 538 424 290
+J 424 290 422 230
+J 422 230 268 110
+J 302 408 366 364
+J 130 432 336 466
+J 336 466 336 534
+J 336 534 436 286
+J 436 286 434 226
+J 434 226 268 114
+J 202 564 236 496
+J 236 496 212 276
+J 212 276 212 224
+J 212 224 212 172
+J 212 172 212 120
+J 212 120 212 68
+J 212 68 280 60
+J 280 60 280 126
+J 280 126 334 12
+J 462 192 484 210
+J 110 280 160 280
+J 14 560 28 90
+J 356 78 380 66
+J 380 66 420 58
+J 14 564 68 502
+J 68 502 28 102
+J 116 12 136 128
+J 488 12 550 464
+J 494 554 506 464
+J 268 404 466 480
+J 466 480 522 360
+J 94 336 140 370
+J 536 8 556 106
+J 172 72 184 72
+J 184 72 196 68
+J 196 68 224 68
+J 224 68 356 110
+J 356 110 484 52
+J 484 52 496 52
+J 496 52 556 58
+J 94 320 314 408
+J 254 44 354 266
+J 354 266 406 302
+J 406 302 424 306
+J 128 390 200 330
+J 128 216 160 216
+J 160 216 172 320
+J 392 134 420 154
+J 450 208 484 40
+J 172 228 184 254
+J 184 254 196 254
+J 196 254 224 224
+J 224 224 302 364
+J 302 364 268 416
+J 268 416 386 372
+J 386 372 444 12
+J 528 218 536 300
+J 464 332 530 330
+J 530 330 550 400
+J 550 400 484 400
+J 212 44 212 96
+J 212 96 212 148
+J 212 148 212 200
+J 212 200 212 252
+J 212 252 424 410
+J 296 60 354 538
+J 354 538 382 538
+J 382 538 410 538
+J 410 538 438 538
+J 438 538 466 538
+J 466 538 494 538
+J 494 538 522 538
+J 522 538 550 538
+J 172 172 184 172
+J 184 172 196 168
+J 196 168 224 168
+J 224 168 368 154
+J 368 154 484 166
+J 484 166 496 166
+J 496 166 532 168
+J 478 566 478 452
+J 314 364 342 360
+J 52 222 72 280
+J 14 544 26 540
+J 26 540 24 478
+J 24 478 46 478
+J 46 478 68 474
+J 68 474 108 486
+J 108 486 100 418
+J 100 418 80 418
+J 80 418 94 368
+J 94 368 106 320
+J 106 320 84 256
+J 84 256 84 252
+J 84 252 84 200
+J 84 200 84 196
+J 84 196 72 144
+J 72 144 72 140
+J 72 140 68 90
+J 68 90 68 86
+J 68 86 140 390
+J 538 360 542 388
+J 392 94 420 114
+J 354 558 366 468
+J 228 332 280 400
+J 186 472 308 68
+J 308 68 336 70
+J 336 70 354 8
+J 136 68 136 12
+J 64 8 98 288
+J 268 190 290 240
+J 148 72 160 72
+J 354 290 410 476
+J 148 132 160 132
+J 438 562 450 472
+J 80 8 116 236
+J 116 236 106 328
+J 172 160 184 160
+J 184 160 196 156
+J 196 156 224 156
+J 224 156 356 114
+J 356 114 452 162
+J 452 162 464 162
+J 464 162 544 160
+J 212 192 324 70
+J 42 432 78 444
+J 78 444 96 482
+J 550 558 562 468
+J 268 130 326 140
+J 410 562 422 472
+J 172 108 184 108
+J 184 108 196 104
+J 196 104 224 104
+J 224 104 356 150
+J 356 150 452 106
+J 452 106 464 106
+J 464 106 556 110
+J 452 64 484 64
+J 484 64 484 118
+J 484 118 452 118
+J 452 118 452 174
+J 452 174 484 174
+J 484 174 522 472
+J 484 344 546 372
+J 282 552 382 452
+J 196 246 428 422
+J 174 508 202 488
+J 28 168 48 8
+J 306 508 410 460
+J 282 508 306 532
+J 306 532 286 460
+J 210 348 216 348
+J 216 348 216 352
+J 216 352 228 348
+J 228 348 228 320
+J 228 320 228 316
+J 228 316 216 320
+J 216 320 342 372
+J 298 300 298 296
+J 298 296 310 296
+J 310 296 322 252
+J 322 252 316 236
+J 16 322 28 326
+J 28 326 80 368
+J 80 368 50 444
+J 182 548 214 544
+J 214 544 248 548
+J 248 548 282 500
+J 282 500 354 452
+J 450 204 450 200
+J 450 200 462 200
+J 462 200 462 208
+J 462 208 472 192
+J 472 192 452 40
+J 562 562 562 456
+J 464 44 496 44
+J 496 44 496 98
+J 496 98 464 98
+J 464 98 464 154
+J 464 154 496 154
+J 496 154 548 284
+J 548 284 522 476
+J 422 558 422 460
+J 16 114 36 12
+J 306 552 324 550
+J 324 550 354 534
+J 354 534 382 534
+J 382 534 410 534
+J 410 534 438 534
+J 438 534 466 534
+J 466 534 494 534
+J 494 534 522 534
+J 522 534 550 534
+J 476 372 476 400
+J 16 98 60 164
+J 128 382 184 278
+J 184 278 196 278
+J 196 278 172 264
+J 172 264 224 260
+J 224 260 482 288
+J 482 288 514 296
+J 514 296 484 332
+J 484 332 460 372
+J 460 372 504 240
+J 504 240 504 12
+J 170 560 214 500
+J 214 500 248 480
+J 484 12 550 476
+J 394 558 394 460
+J 524 8 544 172
+J 268 182 280 178
+J 280 178 280 102
+J 280 102 296 48
+J 28 184 56 94
+J 552 8 568 54
+J 94 388 394 310
+J 172 316 186 488
+J 40 222 72 204
+J 368 118 380 110
+J 380 110 420 94
+J 184 40 184 92
+J 184 92 184 144
+J 184 144 184 196
+J 184 196 228 340
+J 228 340 522 460
+J 108 8 126 160
+J 212 48 242 72
+J 242 72 212 100
+J 212 100 212 152
+J 212 152 212 204
+J 212 204 212 256
+J 212 256 280 106
+J 280 106 280 40
+J 280 40 354 12
+J 354 12 214 548
+J 214 548 236 476
+J 110 260 160 260
+J 494 566 506 476
+J 40 156 56 106
+J 532 156 532 12
+J 224 92 324 58
+J 366 352 468 344
+J 468 344 534 342
+J 534 342 466 460
+J 432 422 480 12
+J 172 280 188 350
+J 172 104 184 104
+J 184 104 196 100
+J 196 100 224 100
+J 224 100 368 150
+J 368 150 452 110
+J 452 110 464 110
+J 464 110 556 102
+J 280 186 290 228
+J 216 328 522 464
+J 172 52 184 52
+J 184 52 196 48
+J 196 48 224 48
+J 224 48 368 70
+J 368 70 452 56
+J 452 56 464 56
+J 464 56 568 50
+J 128 228 160 228
+J 450 220 452 150
+J 514 292 548 316
+J 472 388 538 388
+J 236 552 536 304
+J 138 176 160 176
+J 466 554 478 464
+J 184 44 184 96
+J 184 96 184 148
+J 184 148 184 200
+J 184 200 188 354
+J 188 354 428 410
+J 172 204 184 204
+J 184 204 196 200
+J 196 200 224 200
+J 224 200 516 220
+J 516 220 540 214
+J 540 214 540 186
+J 540 186 548 300
+J 28 188 60 148
+J 268 420 302 416
+J 354 570 366 480
+J 378 262 394 258
+J 394 258 434 246
+J 40 226 72 260
+J 174 500 308 56
+J 308 56 336 58
+J 336 58 342 8
+J 128 8 136 80
+J 456 12 470 308
+J 380 62 420 78
+J 268 138 326 124
+J 148 104 160 104
+J 16 230 20 8
+J 46 540 336 538
+J 336 538 336 470
+J 336 470 326 128
+J 46 544 282 520
+J 138 164 160 164
+J 76 12 98 268
+J 148 52 160 52
+J 550 570 562 480
+J 392 118 392 138
+J 148 112 160 112
+J 172 120 184 120
+J 184 120 196 116
+J 196 116 224 116
+J 224 116 368 74
+J 368 74 484 110
+J 484 110 496 110
+J 496 110 544 118
+J 450 566 450 452
+J 518 360 550 342
+J 82 444 106 368
+J 40 188 44 12
+J 170 556 202 556
+J 202 556 236 556
+J 236 556 282 476
+J 282 476 354 464
+J 456 372 480 344
+J 142 444 268 52
+J 268 52 268 48
+J 166 444 424 298
+J 422 238 424 322
+J 324 478 422 262
+J 28 98 28 12
+J 40 242 60 12
+J 96 8 126 184
+J 28 110 28 8
+J 140 366 522 452
+J 472 360 476 388
+J 172 276 184 266
+J 184 266 196 266
+J 196 266 224 272
+J 224 272 482 276
+J 482 276 480 360
+J 480 360 550 330
+J 550 330 492 8
+J 28 118 60 176
+J 182 560 202 504
+J 202 504 248 492
+J 522 558 534 468
+J 282 488 336 554
+J 336 554 366 546
+J 366 546 394 546
+J 394 546 422 546
+J 422 546 450 546
+J 450 546 478 546
+J 478 546 506 546
+J 506 546 534 546
+J 534 546 562 546
+J 382 562 394 472
+J 520 12 544 148
+J 392 110 392 146
+J 282 344 314 344
+J 282 536 382 460
+J 544 106 548 12
+J 128 394 200 318
+J 200 318 224 240
+J 224 240 224 188
+J 224 188 196 188
+J 196 188 196 136
+J 196 136 224 136
+J 224 136 224 84
+J 224 84 196 84
+J 196 84 196 32
+J 196 32 224 32
+J 224 32 298 240
+J 298 240 310 240
+J 310 240 394 262
+J 394 262 394 322
+J 394 322 464 388
+J 464 388 530 388
+J 530 388 502 304
+J 502 304 482 272
+J 482 272 548 276
+J 548 276 496 146
+J 496 146 464 146
+J 464 146 464 90
+J 464 90 496 90
+J 496 90 496 36
+J 496 36 464 36
+J 464 36 270 368
+J 270 368 282 512
+J 282 512 354 488
+J 354 488 382 488
+J 382 488 410 488
+J 410 488 438 488
+J 438 488 466 488
+J 466 488 494 488
+J 494 488 522 488
+J 522 488 550 488
+J 160 316 174 492
+J 52 242 72 216
+J 368 138 380 158
+J 380 158 408 138
+J 556 54 564 12
+J 314 416 366 372
+J 28 218 40 418
+J 104 12 126 172
+J 202 552 236 488
+J 236 488 212 268
+J 212 268 212 164
+J 212 164 212 112
+J 212 112 212 60
+J 212 60 242 48
+J 242 48 280 52
+J 280 52 280 118
+J 280 118 342 12
+J 28 378 28 226
+J 110 272 160 272
+J 534 562 534 456
+J 216 336 356 162
+J 356 162 356 122
+J 356 122 356 82
+J 368 58 380 78
+J 380 78 408 58
+J 16 118 56 118
+J 120 12 136 120
+J 224 248 324 82
+J 506 562 506 456
+J 268 396 466 472
+J 466 472 538 372
+J 540 8 556 122
+J 16 346 80 372
+J 172 64 184 64
+J 184 64 196 60
+J 196 60 224 60
+J 224 60 368 106
+J 368 106 484 60
+J 484 60 496 60
+J 496 60 556 74
+J 254 60 354 258
+J 354 258 394 306
+J 394 306 424 310
+J 502 292 548 304
+J 278 252 298 244
+J 392 74 392 102
+J 128 208 160 208
+J 160 208 172 308
+J 466 566 478 476
+J 172 220 184 262
+J 184 262 196 262
+J 196 262 224 216
+J 224 216 314 348
+J 314 348 280 404
+J 280 404 386 356
+J 386 356 448 12
+J 408 66 420 66
+J 420 66 420 106
+J 420 106 408 106
+J 408 106 408 146
+J 408 146 420 146
+J 420 146 470 300
+J 268 142 326 120
+J 16 222 24 8
+J 438 566 450 476
+J 56 318 110 256
+J 110 256 128 204
+J 128 204 138 152
+J 138 152 148 100
+J 148 100 148 48
+J 26 444 86 432
+J 86 432 142 432
+J 378 250 406 242
+J 406 242 422 246
+J 52 246 72 272
+J 308 44 336 46
+J 336 46 330 8
+J 530 372 534 400
+J 124 12 136 112
+J 380 114 408 122
+J 366 558 366 460
+J 136 60 140 12
+J 68 8 98 280
+J 184 290 228 336
+J 148 64 160 64
+J 14 552 26 548
+J 26 548 24 466
+J 24 466 46 466
+J 46 466 68 466
+J 68 466 74 432
+J 74 432 88 418
+J 88 418 76 406
+J 76 406 106 372
+J 106 372 106 304
+J 106 304 72 292
+J 72 292 28 318
+J 28 318 16 330
+J 16 330 28 362
+J 28 362 28 406
+J 28 406 32 418
+J 32 418 18 432
+J 18 432 96 494
+J 96 494 160 328
+J 160 328 216 324
+J 216 324 228 324
+J 228 324 228 344
+J 228 344 216 344
+J 216 344 270 276
+J 270 276 290 276
+J 290 276 310 276
+J 310 276 310 256
+J 310 256 298 248
+J 298 248 172 244
+J 172 244 160 248
+J 160 248 160 196
+J 160 196 172 192
+J 172 192 160 144
+J 160 144 172 140
+J 172 140 160 92
+J 160 92 172 88
+J 172 88 160 40
+J 160 40 172 36
+J 172 36 56 126
+J 56 126 60 180
+J 60 180 72 236
+J 354 282 410 468
+J 148 124 160 124
+J 172 152 184 152
+J 184 152 196 148
+J 196 148 224 148
+J 224 148 368 102
+J 368 102 452 170
+J 452 170 464 170
+J 464 170 544 144
+J 438 554 450 464
+J 212 88 324 54
+J 34 432 102 432
+J 102 432 108 490
+J 298 256 310 248
+J 310 248 472 12
+J 464 174 496 174
+J 496 174 496 118
+J 496 118 470 284
+J 258 276 406 298
+J 68 126 72 240
+J 492 400 494 468
+J 182 572 214 572
+J 214 572 248 572
+J 248 572 306 540
+J 306 540 354 476
+J 26 544 56 498
+J 476 360 546 342
+J 34 470 68 470
+J 238 12 308 80
+J 308 80 336 82
+J 186 492 214 492
+J 52 238 52 8
+J 92 12 116 216
+J 306 520 410 452
+J 464 68 496 68
+J 496 68 464 122
+J 464 122 470 288
+J 96 478 438 476
+J 522 570 534 480
+J 314 340 314 392
+J 314 392 492 372
+J 492 372 494 460
+J 40 164 40 12
+J 306 484 324 554
+J 324 554 366 538
+J 366 538 394 538
+J 394 538 422 538
+J 422 538 450 538
+J 450 538 478 538
+J 478 538 506 538
+J 506 538 534 538
+J 534 538 562 538
+J 422 566 422 452
+J 512 8 528 206
+J 268 126 354 542
+J 354 542 382 542
+J 382 542 410 542
+J 410 542 438 542
+J 438 542 466 542
+J 466 542 494 542
+J 494 542 522 542
+J 522 542 550 542
+J 140 378 184 286
+J 184 286 196 286
+J 196 286 172 256
+J 172 256 224 252
+J 224 252 482 296
+J 482 296 514 284
+J 514 284 504 224
+J 504 224 476 332
+J 476 332 484 372
+J 484 372 512 12
+J 40 172 60 156
+J 170 552 214 508
+J 214 508 248 472
+J 270 344 302 348
+J 470 276 476 12
+J 270 356 342 380
+J 342 380 398 368
+J 34 552 268 134
+J 268 134 326 136
+J 394 250 554 330
+J 34 556 314 140
+J 28 160 72 228
+J 556 8 568 70
+J 290 232 298 228
+J 298 228 310 224
+J 310 224 326 144
+J 212 72 212 124
+J 212 124 212 176
+J 212 176 212 228
+J 212 228 212 280
+J 212 280 280 174
+J 280 174 280 64
+J 280 64 330 12
+J 330 12 214 568
+J 214 568 236 500
+J 110 284 160 284
+J 160 284 160 320
+J 356 58 380 58
+J 380 58 420 62
+J 112 8 136 132
+J 56 130 68 494
+J 128 232 160 232
+J 494 558 506 468
+J 494 452 534 360
+J 536 12 556 98
+J 46 556 188 322
+J 188 322 160 256
+J 160 256 160 204
+J 160 204 160 152
+J 160 152 160 100
+J 160 100 160 48
+J 160 48 420 410
+J 46 560 80 406
+J 268 56 296 80
+J 366 360 460 344
+J 460 344 526 342
+J 526 342 466 452
+J 172 76 184 76
+J 184 76 196 72
+J 196 72 224 72
+J 224 72 356 106
+J 356 106 484 48
+J 484 48 496 48
+J 496 48 556 50
+J 94 316 302 412
+J 354 270 394 302
+J 394 302 436 298
+J 70 544 94 332
+J 324 546 324 502
+J 324 570 550 484
+J 522 484 562 484
+J 494 484 534 484
+J 466 484 506 484
+J 438 484 478 484
+J 128 370 200 334
+J 410 484 450 484
+J 382 484 422 484
+J 354 484 394 484
+J 268 76 280 134
+J 280 134 366 484
+J 452 94 496 194
+J 24 470 46 470
+J 46 470 68 486
+J 68 486 38 444
+J 38 444 72 200
+J 72 200 56 90
+J 172 232 184 250
+J 184 250 196 250
+J 196 250 224 228
+J 224 228 302 352
+J 302 352 268 408
+J 268 408 386 380
+J 386 380 448 8
+J 528 210 536 292
+J 468 332 534 330
+J 534 330 546 400
+J 546 400 480 400
+J 92 406 108 478
+J 108 478 406 314
+J 12 506 46 486
+J 172 176 184 176
+J 184 176 196 172
+J 196 172 224 172
+J 224 172 356 154
+J 356 154 484 162
+J 484 162 496 162
+J 496 162 532 160
+J 478 562 478 456
+J 302 368 342 356
+J 354 246 406 306
+J 406 306 436 310
+J 28 164 72 284
+J 550 360 554 388
+J 280 408 314 400
+J 16 366 28 370
+J 28 370 94 444
+J 380 162 408 158
+J 354 562 366 472
+J 254 68 406 246
+J 406 246 434 250
+J 434 250 378 270
+J 186 484 308 64
+J 308 64 336 66
+J 336 66 350 8
+J 268 60 296 76
+J 270 272 290 272
+J 290 272 310 272
+J 132 8 136 72
+J 328 450 366 444
+J 366 444 382 476
+J 60 184 68 498
+J 334 228 334 266
+J 64 12 98 292
+J 380 82 408 78
+J 268 64 326 116
+J 326 116 354 448
+J 354 448 382 448
+J 382 448 410 448
+J 410 448 438 448
+J 438 448 466 448
+J 466 448 494 448
+J 494 448 522 448
+J 522 448 550 448
+J 148 76 160 76
+J 366 384 406 234
+J 22 432 106 444
+J 106 444 154 432
+J 154 432 94 328
+J 354 294 410 480
+J 138 156 160 156
+J 172 164 184 164
+J 184 164 196 160
+J 196 160 224 160
+J 224 160 356 102
+J 356 102 452 158
+J 452 158 464 158
+J 464 158 544 168
+J 80 12 116 240
+J 116 240 106 324
+J 212 244 324 78
+J 550 562 562 472
+J 172 112 184 112
+J 184 112 196 108
+J 196 108 224 108
+J 224 108 356 146
+J 356 146 452 102
+J 452 102 464 102
+J 464 102 556 118
+J 410 566 422 476
+J 306 528 378 290
+J 378 290 354 278
+J 16 386 110 548
+J 488 344 534 372
+J 282 544 382 456
+J 174 496 214 484
+J 104 418 108 474
+J 108 474 394 314
+J 28 180 48 12
+J 306 504 410 464
+J 84 8 116 228
+J 116 228 106 336
+J 170 548 202 544
+J 202 544 236 548
+J 236 548 282 492
+J 282 492 354 456
+J 378 274 378 282
+J 378 282 382 464
+J 562 558 562 460
+J 472 344 480 372
+J 464 40 496 40
+J 496 40 496 94
+J 496 94 464 94
+J 464 94 464 150
+J 464 150 496 150
+J 496 150 548 280
+J 548 280 522 480
+J 16 126 32 8
+J 282 548 336 490
+J 336 490 366 530
+J 366 530 394 530
+J 394 530 422 530
+J 422 530 450 530
+J 450 530 478 530
+J 478 530 506 530
+J 506 530 534 530
+J 534 530 562 530
+J 410 554 422 464
+J 100 8 126 176
+J 464 372 468 400
+J 16 110 60 168
+J 128 378 184 274
+J 184 274 196 274
+J 196 274 172 268
+J 172 268 224 264
+J 224 264 456 360
+J 456 360 502 296
+J 502 296 482 284
+J 482 284 504 248
+J 504 248 542 330
+J 542 330 500 12
+J 182 552 202 496
+J 202 496 248 484
+J 534 558 534 460
+J 12 470 46 482
+J 282 504 336 558
+J 336 558 366 554
+J 366 554 394 554
+J 394 554 422 554
+J 422 554 450 554
+J 450 554 478 554
+J 478 554 506 554
+J 506 554 534 554
+J 534 554 562 554
+J 382 554 394 464
+J 524 12 544 164
+J 196 36 196 88
+J 196 88 196 140
+J 196 140 196 192
+J 196 192 550 460
+J 40 180 56 98
+J 452 68 462 204
+J 462 204 496 202
+J 552 12 568 46
+J 200 322 224 276
+J 172 324 186 500
+J 28 86 40 152
+J 40 152 52 214
+J 52 214 36 406
+J 40 234 72 208
+J 356 118 380 106
+J 380 106 420 98
+J 108 12 126 164
+J 202 548 236 480
+J 236 480 212 260
+J 212 260 212 208
+J 212 208 212 156
+J 212 156 212 104
+J 212 104 242 64
+J 242 64 212 52
+J 212 52 280 44
+J 280 44 280 110
+J 280 110 350 12
+J 110 264 160 264
+J 494 570 506 480
+J 110 540 270 292
+J 270 292 290 236
+J 290 236 326 132
+J 326 132 464 12
+J 314 144 394 444
+J 162 444 324 498
+J 324 498 366 448
+J 366 448 394 448
+J 394 448 422 448
+J 422 448 450 448
+J 450 448 478 448
+J 478 448 506 448
+J 506 448 534 448
+J 534 448 562 448
+J 562 448 424 318
+J 424 318 422 258
+J 422 258 278 248
+J 278 248 268 68
+J 268 68 324 566
+J 16 94 56 110
+J 548 288 550 480
+J 528 8 532 164
+J 224 144 324 66
+J 280 72 296 72
+J 452 12 550 468
+J 366 348 460 332
+J 460 332 526 330
+J 526 330 466 464
+J 366 380 394 294
+J 172 284 188 346
+J 544 114 544 8
+J 170 544 182 540
+J 182 540 324 450
+J 324 450 382 468
+J 172 56 184 56
+J 184 56 196 52
+J 196 52 224 52
+J 224 52 356 70
+J 356 70 452 52
+J 452 52 464 52
+J 464 52 568 58
+J 484 150 496 206
+J 514 300 548 312
+J 310 244 310 252
+J 310 252 322 232
+J 480 388 546 388
+J 248 544 536 296
+J 398 348 456 332
+J 456 332 522 330
+J 522 330 424 422
+J 138 180 160 180
+J 172 208 184 208
+J 184 208 196 204
+J 196 204 224 204
+J 224 204 516 228
+J 516 228 540 206
+J 540 206 540 194
+J 540 194 548 296
+J 466 558 478 468
+J 186 468 236 472
+J 236 472 296 68
+J 40 184 60 152
+J 268 412 302 404
+J 394 566 394 452
+J 34 444 78 432
+J 78 432 146 432
+J 378 258 394 246
+J 394 246 422 250
+J 40 238 72 264
+J 174 488 308 52
+J 308 52 336 54
+J 336 54 338 8
+J 554 372 554 400
+J 392 78 392 98
+J 128 12 136 84
+J 392 54 420 74
+J 366 566 366 452
+J 254 12 308 72
+J 308 72 336 74
+J 148 108 160 108
+J 24 406 28 418
+J 28 418 102 444
+J 282 340 494 476
+J 138 168 160 168
+J 72 8 98 272
+J 148 56 160 56
+J 392 154 406 310
+J 148 116 160 116
+J 450 562 450 456
+J 172 124 184 124
+J 184 124 196 120
+J 196 120 224 120
+J 224 120 356 74
+J 356 74 484 106
+J 484 106 496 106
+J 496 106 544 110
+J 26 432 94 432
+J 94 432 108 470
+J 108 470 158 444
+J 482 300 514 276
+J 514 276 522 456
+J 280 138 444 8
+J 530 360 554 342
+J 68 384 172 248
+J 172 248 172 196
+J 172 196 172 144
+J 172 144 172 92
+J 172 92 172 40
+J 172 40 438 456
+J 68 380 92 418
+J 182 564 214 560
+J 214 560 248 564
+J 248 564 306 480
+J 306 480 354 468
+J 392 70 392 106
+J 356 158 380 146
+J 380 146 420 138
+J 452 360 538 342
+J 28 338 32 406
+J 40 254 56 8
+J 96 12 126 188
+J 26 556 28 94
+J 484 360 488 388
+J 26 560 68 506
+J 68 506 28 106
+J 170 576 202 508
+J 202 508 248 496
+J 522 562 534 472
+J 24 474 46 474
+J 46 474 68 482
+J 68 482 42 444
+J 42 444 106 308
+J 106 308 72 256
+J 72 256 60 144
+J 200 342 440 410
+J 440 410 438 468
+J 382 566 394 476
+J 282 480 324 558
+J 324 558 354 546
+J 354 546 382 546
+J 382 546 410 546
+J 410 546 438 546
+J 438 546 466 546
+J 466 546 494 546
+J 494 546 522 546
+J 522 546 550 546
+J 516 8 528 190
+J 282 364 314 356
+J 450 196 496 214
+J 496 214 484 122
+J 282 352 342 388
+J 342 388 398 352
+J 438 460 444 422
+J 216 332 408 150
+J 408 150 408 110
+J 408 110 408 70
+J 52 230 72 220
+J 368 158 380 150
+J 380 150 420 134
+J 556 62 560 8
+J 302 420 366 368
+J 34 560 202 480
+J 202 480 248 468
+J 248 468 296 64
+J 34 564 202 484
+J 212 64 212 116
+J 212 116 212 168
+J 212 168 212 220
+J 212 220 212 272
+J 212 272 280 122
+J 280 122 280 56
+J 280 56 338 12
+J 338 12 214 564
+J 214 564 236 492
+J 110 276 160 276
+J 368 78 380 70
+J 380 70 420 54
+J 28 114 56 122
+J 116 8 136 124
+J 72 180 72 296
+J 506 558 506 460
+J 254 40 296 52
+J 268 400 466 476
+J 466 476 526 372
+J 16 338 16 326
+J 16 326 56 310
+J 56 310 46 444
+J 540 12 556 114
+J 436 422 504 220
+J 504 220 516 216
+J 172 68 184 68
+J 184 68 196 64
+J 196 64 224 64
+J 224 64 368 110
+J 368 110 484 56
+J 484 56 496 56
+J 496 56 556 66
+J 94 324 314 396
+J 254 52 354 262
+J 354 262 406 290
+J 406 290 436 302
+J 380 142 420 158
+J 128 212 160 212
+J 160 212 172 312
+J 466 570 478 480
+J 396 170 470 296
+J 172 224 184 258
+J 184 258 196 258
+J 196 258 224 220
+J 224 220 314 360
+J 314 360 280 412
+J 280 412 386 364
+J 386 364 452 8
+J 438 570 450 480
+J 172 168 184 168
+J 184 168 196 164
+J 196 164 224 164
+J 224 164 368 142
+J 368 142 484 170
+J 484 170 496 170
+J 496 170 532 176
+J 22 444 90 432
+J 90 432 146 444
+J 314 352 342 368
+J 378 246 394 242
+J 394 242 434 238
+J 52 234 72 276
+J 308 40 336 42
+J 336 42 326 8
+J 526 360 534 388
+J 380 102 420 118
+J 354 554 366 464
+J 136 64 136 8
+J 68 12 98 284
+J 68 490 268 122
+J 148 68 160 68
+J 290 224 314 148
+J 314 148 528 214
+J 354 286 410 472
+J 148 128 160 128
+J 172 156 184 156
+J 184 156 196 152
+J 196 152 224 152
+J 224 152 368 114
+J 368 114 452 166
+J 452 166 464 166
+J 464 166 544 152
+J 438 558 450 468
+J 212 140 324 62
+J 38 432 106 432
+J 106 432 154 444
+J 154 444 96 490
+J 410 558 422 468
+J 464 178 496 178
+J 496 178 496 122
+J 496 122 470 280
+J 278 256 298 260
+J 298 260 298 252
+J 298 252 280 170
+J 494 472 558 400
+J 170 572 202 572
+J 202 572 236 572
+J 236 572 306 548
+J 306 548 354 480
+J 186 504 214 488
+J 52 226 52 12
+J 306 516 410 456
+J 88 8 116 220
+J 562 566 562 452
+J 494 464 558 372
+J 406 238 462 216
+J 394 298 492 12
+J 16 102 36 8
+J 306 544 336 546
+J 336 546 366 534
+J 366 534 394 534
+J 394 534 422 534
+J 422 534 450 534
+J 450 534 478 534
+J 478 534 506 534
+J 506 534 534 534
+J 534 534 562 534
+J 422 562 422 456
+J 488 372 488 400
+J 140 382 184 282
+J 184 282 196 282
+J 196 282 172 260
+J 172 260 224 256
+J 224 256 482 292
+J 482 292 514 288
+J 514 288 480 332
+J 480 332 472 372
+J 472 372 504 232
+J 504 232 508 12
+J 40 160 60 160
+J 182 544 214 504
+J 214 504 248 476
+J 270 352 342 376
+J 342 376 398 376
+J 94 376 106 312
+J 106 312 98 444
+J 28 172 72 232
+J 556 12 568 62
+J 172 304 186 476
+J 202 568 236 504
+J 236 504 212 284
+J 212 284 212 232
+J 212 232 212 180
+J 212 180 212 128
+J 212 128 212 76
+J 212 76 280 68
+J 280 68 326 12
+J 326 12 268 178
+J 110 288 160 288
+J 160 288 160 312
+J 368 98 380 118
+J 380 118 408 98
+J 112 12 136 136
+J 246 12 308 76
+J 308 76 336 78
+J 128 236 160 236
+J 494 562 506 472
+J 40 168 56 102
+J 106 380 172 252
+J 172 252 172 200
+J 172 200 172 148
+J 172 148 172 96
+J 172 96 172 44
+J 494 456 546 360
+J 96 418 106 384
+J 532 148 532 8
+J 228 328 494 480
+J 224 40 324 50
+E
diff --git a/Robust/src/Benchmarks/SingleTM/LeeRouting/makefile b/Robust/src/Benchmarks/SingleTM/LeeRouting/makefile
new file mode 100644 (file)
index 0000000..ed703e1
--- /dev/null
@@ -0,0 +1,14 @@
+MAINCLASS=LeeRouter
+SRC=${MAINCLASS}.java \
+       Frontier.java \
+       Grid.java \
+       GridCell.java \
+       LeeThread.java \
+       WorkQueue.java 
+FLAGS=-singleTM -thread -optimize -mainclass ${MAINCLASS}
+default:
+       ../../../buildscript ${FLAGS} -o ${MAINCLASS} ${SRC}
+
+clean:
+       rm -rf tmpbuilddirectory
+       rm *.bin
diff --git a/Robust/src/Benchmarks/SingleTM/LeeRouting/memboard.txt b/Robust/src/Benchmarks/SingleTM/LeeRouting/memboard.txt
new file mode 100644 (file)
index 0000000..9491017
--- /dev/null
@@ -0,0 +1,7514 @@
+P 220 222
+P 224 222
+P 228 222
+P 232 222
+P 236 222
+P 240 222
+P 244 222
+P 248 222
+P 248 234
+P 244 234
+P 240 234
+P 236 234
+P 232 234
+P 228 234
+P 224 234
+P 220 234
+P 220 240
+P 224 240
+P 228 240
+P 232 240
+P 236 240
+P 240 240
+P 244 240
+P 248 240
+P 248 252
+P 244 252
+P 240 252
+P 236 252
+P 232 252
+P 228 252
+P 224 252
+P 220 252
+P 220 258
+P 224 258
+P 228 258
+P 232 258
+P 236 258
+P 240 258
+P 244 258
+P 248 258
+P 248 270
+P 244 270
+P 240 270
+P 236 270
+P 232 270
+P 228 270
+P 224 270
+P 220 270
+P 220 276
+P 224 276
+P 228 276
+P 232 276
+P 236 276
+P 240 276
+P 244 276
+P 248 276
+P 248 288
+P 244 288
+P 240 288
+P 236 288
+P 232 288
+P 228 288
+P 224 288
+P 220 288
+P 220 294
+P 224 294
+P 228 294
+P 232 294
+P 236 294
+P 240 294
+P 244 294
+P 248 294
+P 248 306
+P 244 306
+P 240 306
+P 236 306
+P 232 306
+P 228 306
+P 224 306
+P 220 306
+P 220 312
+P 224 312
+P 228 312
+P 232 312
+P 236 312
+P 240 312
+P 244 312
+P 248 312
+P 248 324
+P 244 324
+P 240 324
+P 236 324
+P 232 324
+P 228 324
+P 224 324
+P 220 324
+P 220 330
+P 224 330
+P 228 330
+P 232 330
+P 236 330
+P 240 330
+P 244 330
+P 248 330
+P 248 342
+P 244 342
+P 240 342
+P 236 342
+P 232 342
+P 228 342
+P 224 342
+P 220 342
+P 220 348
+P 224 348
+P 228 348
+P 232 348
+P 236 348
+P 240 348
+P 244 348
+P 248 348
+P 248 360
+P 244 360
+P 240 360
+P 236 360
+P 232 360
+P 228 360
+P 224 360
+P 220 360
+P 220 366
+P 224 366
+P 228 366
+P 232 366
+P 236 366
+P 240 366
+P 244 366
+P 248 366
+P 248 378
+P 244 378
+P 240 378
+P 236 378
+P 232 378
+P 228 378
+P 224 378
+P 220 378
+P 220 384
+P 224 384
+P 228 384
+P 232 384
+P 236 384
+P 240 384
+P 244 384
+P 248 384
+P 248 396
+P 244 396
+P 240 396
+P 236 396
+P 232 396
+P 228 396
+P 224 396
+P 220 396
+P 220 402
+P 224 402
+P 228 402
+P 232 402
+P 236 402
+P 240 402
+P 244 402
+P 248 402
+P 248 414
+P 244 414
+P 240 414
+P 236 414
+P 232 414
+P 228 414
+P 224 414
+P 220 414
+P 220 420
+P 224 420
+P 228 420
+P 232 420
+P 236 420
+P 240 420
+P 244 420
+P 248 420
+P 248 432
+P 244 432
+P 240 432
+P 236 432
+P 232 432
+P 228 432
+P 224 432
+P 220 432
+P 220 438
+P 224 438
+P 228 438
+P 232 438
+P 236 438
+P 240 438
+P 244 438
+P 248 438
+P 248 450
+P 244 450
+P 240 450
+P 236 450
+P 232 450
+P 228 450
+P 224 450
+P 220 450
+P 220 456
+P 224 456
+P 228 456
+P 232 456
+P 236 456
+P 240 456
+P 244 456
+P 248 456
+P 248 468
+P 244 468
+P 240 468
+P 236 468
+P 232 468
+P 228 468
+P 224 468
+P 220 468
+P 220 474
+P 224 474
+P 228 474
+P 232 474
+P 236 474
+P 240 474
+P 244 474
+P 248 474
+P 248 486
+P 244 486
+P 240 486
+P 236 486
+P 232 486
+P 228 486
+P 224 486
+P 220 486
+P 220 492
+P 224 492
+P 228 492
+P 232 492
+P 236 492
+P 240 492
+P 244 492
+P 248 492
+P 248 504
+P 244 504
+P 240 504
+P 236 504
+P 232 504
+P 228 504
+P 224 504
+P 220 504
+P 220 510
+P 224 510
+P 228 510
+P 232 510
+P 236 510
+P 240 510
+P 244 510
+P 248 510
+P 248 522
+P 244 522
+P 240 522
+P 236 522
+P 232 522
+P 228 522
+P 224 522
+P 220 522
+P 220 528
+P 224 528
+P 228 528
+P 232 528
+P 236 528
+P 240 528
+P 244 528
+P 248 528
+P 248 540
+P 244 540
+P 240 540
+P 236 540
+P 232 540
+P 228 540
+P 224 540
+P 220 540
+P 220 546
+P 224 546
+P 228 546
+P 232 546
+P 236 546
+P 240 546
+P 244 546
+P 248 546
+P 248 558
+P 244 558
+P 240 558
+P 236 558
+P 232 558
+P 228 558
+P 224 558
+P 220 558
+P 220 564
+P 224 564
+P 228 564
+P 232 564
+P 236 564
+P 240 564
+P 244 564
+P 248 564
+P 248 576
+P 244 576
+P 240 576
+P 236 576
+P 232 576
+P 228 576
+P 224 576
+P 220 576
+P 260 222
+P 264 222
+P 268 222
+P 272 222
+P 276 222
+P 280 222
+P 284 222
+P 288 222
+P 288 234
+P 284 234
+P 280 234
+P 276 234
+P 272 234
+P 268 234
+P 264 234
+P 260 234
+P 260 240
+P 264 240
+P 268 240
+P 272 240
+P 276 240
+P 280 240
+P 284 240
+P 288 240
+P 288 252
+P 284 252
+P 280 252
+P 276 252
+P 272 252
+P 268 252
+P 264 252
+P 260 252
+P 260 258
+P 264 258
+P 268 258
+P 272 258
+P 276 258
+P 280 258
+P 284 258
+P 288 258
+P 288 270
+P 284 270
+P 280 270
+P 276 270
+P 272 270
+P 268 270
+P 264 270
+P 260 270
+P 260 276
+P 264 276
+P 268 276
+P 272 276
+P 276 276
+P 280 276
+P 284 276
+P 288 276
+P 288 288
+P 284 288
+P 280 288
+P 276 288
+P 272 288
+P 268 288
+P 264 288
+P 260 288
+P 260 294
+P 264 294
+P 268 294
+P 272 294
+P 276 294
+P 280 294
+P 284 294
+P 288 294
+P 288 306
+P 284 306
+P 280 306
+P 276 306
+P 272 306
+P 268 306
+P 264 306
+P 260 306
+P 260 312
+P 264 312
+P 268 312
+P 272 312
+P 276 312
+P 280 312
+P 284 312
+P 288 312
+P 288 324
+P 284 324
+P 280 324
+P 276 324
+P 272 324
+P 268 324
+P 264 324
+P 260 324
+P 260 330
+P 264 330
+P 268 330
+P 272 330
+P 276 330
+P 280 330
+P 284 330
+P 288 330
+P 288 342
+P 284 342
+P 280 342
+P 276 342
+P 272 342
+P 268 342
+P 264 342
+P 260 342
+P 260 348
+P 264 348
+P 268 348
+P 272 348
+P 276 348
+P 280 348
+P 284 348
+P 288 348
+P 288 360
+P 284 360
+P 280 360
+P 276 360
+P 272 360
+P 268 360
+P 264 360
+P 260 360
+P 260 366
+P 264 366
+P 268 366
+P 272 366
+P 276 366
+P 280 366
+P 284 366
+P 288 366
+P 288 378
+P 284 378
+P 280 378
+P 276 378
+P 272 378
+P 268 378
+P 264 378
+P 260 378
+P 260 384
+P 264 384
+P 268 384
+P 272 384
+P 276 384
+P 280 384
+P 284 384
+P 288 384
+P 288 396
+P 284 396
+P 280 396
+P 276 396
+P 272 396
+P 268 396
+P 264 396
+P 260 396
+P 260 402
+P 264 402
+P 268 402
+P 272 402
+P 276 402
+P 280 402
+P 284 402
+P 288 402
+P 288 414
+P 284 414
+P 280 414
+P 276 414
+P 272 414
+P 268 414
+P 264 414
+P 260 414
+P 260 420
+P 264 420
+P 268 420
+P 272 420
+P 276 420
+P 280 420
+P 284 420
+P 288 420
+P 288 432
+P 284 432
+P 280 432
+P 276 432
+P 272 432
+P 268 432
+P 264 432
+P 260 432
+P 260 438
+P 264 438
+P 268 438
+P 272 438
+P 276 438
+P 280 438
+P 284 438
+P 288 438
+P 288 450
+P 284 450
+P 280 450
+P 276 450
+P 272 450
+P 268 450
+P 264 450
+P 260 450
+P 260 456
+P 264 456
+P 268 456
+P 272 456
+P 276 456
+P 280 456
+P 284 456
+P 288 456
+P 288 468
+P 284 468
+P 280 468
+P 276 468
+P 272 468
+P 268 468
+P 264 468
+P 260 468
+P 260 474
+P 264 474
+P 268 474
+P 272 474
+P 276 474
+P 280 474
+P 284 474
+P 288 474
+P 288 486
+P 284 486
+P 280 486
+P 276 486
+P 272 486
+P 268 486
+P 264 486
+P 260 486
+P 260 492
+P 264 492
+P 268 492
+P 272 492
+P 276 492
+P 280 492
+P 284 492
+P 288 492
+P 288 504
+P 284 504
+P 280 504
+P 276 504
+P 272 504
+P 268 504
+P 264 504
+P 260 504
+P 260 510
+P 264 510
+P 268 510
+P 272 510
+P 276 510
+P 280 510
+P 284 510
+P 288 510
+P 288 522
+P 284 522
+P 280 522
+P 276 522
+P 272 522
+P 268 522
+P 264 522
+P 260 522
+P 260 528
+P 264 528
+P 268 528
+P 272 528
+P 276 528
+P 280 528
+P 284 528
+P 288 528
+P 288 540
+P 284 540
+P 280 540
+P 276 540
+P 272 540
+P 268 540
+P 264 540
+P 260 540
+P 260 546
+P 264 546
+P 268 546
+P 272 546
+P 276 546
+P 280 546
+P 284 546
+P 288 546
+P 288 558
+P 284 558
+P 280 558
+P 276 558
+P 272 558
+P 268 558
+P 264 558
+P 260 558
+P 260 564
+P 264 564
+P 268 564
+P 272 564
+P 276 564
+P 280 564
+P 284 564
+P 288 564
+P 288 576
+P 284 576
+P 280 576
+P 276 576
+P 272 576
+P 268 576
+P 264 576
+P 260 576
+P 300 222
+P 304 222
+P 308 222
+P 312 222
+P 316 222
+P 320 222
+P 324 222
+P 328 222
+P 328 234
+P 324 234
+P 320 234
+P 316 234
+P 312 234
+P 308 234
+P 304 234
+P 300 234
+P 300 240
+P 304 240
+P 308 240
+P 312 240
+P 316 240
+P 320 240
+P 324 240
+P 328 240
+P 328 252
+P 324 252
+P 320 252
+P 316 252
+P 312 252
+P 308 252
+P 304 252
+P 300 252
+P 300 258
+P 304 258
+P 308 258
+P 312 258
+P 316 258
+P 320 258
+P 324 258
+P 328 258
+P 328 270
+P 324 270
+P 320 270
+P 316 270
+P 312 270
+P 308 270
+P 304 270
+P 300 270
+P 300 276
+P 304 276
+P 308 276
+P 312 276
+P 316 276
+P 320 276
+P 324 276
+P 328 276
+P 328 288
+P 324 288
+P 320 288
+P 316 288
+P 312 288
+P 308 288
+P 304 288
+P 300 288
+P 300 294
+P 304 294
+P 308 294
+P 312 294
+P 316 294
+P 320 294
+P 324 294
+P 328 294
+P 328 306
+P 324 306
+P 320 306
+P 316 306
+P 312 306
+P 308 306
+P 304 306
+P 300 306
+P 300 312
+P 304 312
+P 308 312
+P 312 312
+P 316 312
+P 320 312
+P 324 312
+P 328 312
+P 328 324
+P 324 324
+P 320 324
+P 316 324
+P 312 324
+P 308 324
+P 304 324
+P 300 324
+P 300 330
+P 304 330
+P 308 330
+P 312 330
+P 316 330
+P 320 330
+P 324 330
+P 328 330
+P 328 342
+P 324 342
+P 320 342
+P 316 342
+P 312 342
+P 308 342
+P 304 342
+P 300 342
+P 300 348
+P 304 348
+P 308 348
+P 312 348
+P 316 348
+P 320 348
+P 324 348
+P 328 348
+P 328 360
+P 324 360
+P 320 360
+P 316 360
+P 312 360
+P 308 360
+P 304 360
+P 300 360
+P 300 366
+P 304 366
+P 308 366
+P 312 366
+P 316 366
+P 320 366
+P 324 366
+P 328 366
+P 328 378
+P 324 378
+P 320 378
+P 316 378
+P 312 378
+P 308 378
+P 304 378
+P 300 378
+P 300 384
+P 304 384
+P 308 384
+P 312 384
+P 316 384
+P 320 384
+P 324 384
+P 328 384
+P 328 396
+P 324 396
+P 320 396
+P 316 396
+P 312 396
+P 308 396
+P 304 396
+P 300 396
+P 300 402
+P 304 402
+P 308 402
+P 312 402
+P 316 402
+P 320 402
+P 324 402
+P 328 402
+P 328 414
+P 324 414
+P 320 414
+P 316 414
+P 312 414
+P 308 414
+P 304 414
+P 300 414
+P 300 420
+P 304 420
+P 308 420
+P 312 420
+P 316 420
+P 320 420
+P 324 420
+P 328 420
+P 328 432
+P 324 432
+P 320 432
+P 316 432
+P 312 432
+P 308 432
+P 304 432
+P 300 432
+P 300 438
+P 304 438
+P 308 438
+P 312 438
+P 316 438
+P 320 438
+P 324 438
+P 328 438
+P 328 450
+P 324 450
+P 320 450
+P 316 450
+P 312 450
+P 308 450
+P 304 450
+P 300 450
+P 300 456
+P 304 456
+P 308 456
+P 312 456
+P 316 456
+P 320 456
+P 324 456
+P 328 456
+P 328 468
+P 324 468
+P 320 468
+P 316 468
+P 312 468
+P 308 468
+P 304 468
+P 300 468
+P 300 474
+P 304 474
+P 308 474
+P 312 474
+P 316 474
+P 320 474
+P 324 474
+P 328 474
+P 328 486
+P 324 486
+P 320 486
+P 316 486
+P 312 486
+P 308 486
+P 304 486
+P 300 486
+P 300 492
+P 304 492
+P 308 492
+P 312 492
+P 316 492
+P 320 492
+P 324 492
+P 328 492
+P 328 504
+P 324 504
+P 320 504
+P 316 504
+P 312 504
+P 308 504
+P 304 504
+P 300 504
+P 300 510
+P 304 510
+P 308 510
+P 312 510
+P 316 510
+P 320 510
+P 324 510
+P 328 510
+P 328 522
+P 324 522
+P 320 522
+P 316 522
+P 312 522
+P 308 522
+P 304 522
+P 300 522
+P 300 528
+P 304 528
+P 308 528
+P 312 528
+P 316 528
+P 320 528
+P 324 528
+P 328 528
+P 328 540
+P 324 540
+P 320 540
+P 316 540
+P 312 540
+P 308 540
+P 304 540
+P 300 540
+P 300 546
+P 304 546
+P 308 546
+P 312 546
+P 316 546
+P 320 546
+P 324 546
+P 328 546
+P 328 558
+P 324 558
+P 320 558
+P 316 558
+P 312 558
+P 308 558
+P 304 558
+P 300 558
+P 300 564
+P 304 564
+P 308 564
+P 312 564
+P 316 564
+P 320 564
+P 324 564
+P 328 564
+P 328 576
+P 324 576
+P 320 576
+P 316 576
+P 312 576
+P 308 576
+P 304 576
+P 300 576
+P 340 222
+P 344 222
+P 348 222
+P 352 222
+P 356 222
+P 360 222
+P 364 222
+P 368 222
+P 368 234
+P 364 234
+P 360 234
+P 356 234
+P 352 234
+P 348 234
+P 344 234
+P 340 234
+P 340 240
+P 344 240
+P 348 240
+P 352 240
+P 356 240
+P 360 240
+P 364 240
+P 368 240
+P 368 252
+P 364 252
+P 360 252
+P 356 252
+P 352 252
+P 348 252
+P 344 252
+P 340 252
+P 340 258
+P 344 258
+P 348 258
+P 352 258
+P 356 258
+P 360 258
+P 364 258
+P 368 258
+P 368 270
+P 364 270
+P 360 270
+P 356 270
+P 352 270
+P 348 270
+P 344 270
+P 340 270
+P 340 276
+P 344 276
+P 348 276
+P 352 276
+P 356 276
+P 360 276
+P 364 276
+P 368 276
+P 368 288
+P 364 288
+P 360 288
+P 356 288
+P 352 288
+P 348 288
+P 344 288
+P 340 288
+P 340 294
+P 344 294
+P 348 294
+P 352 294
+P 356 294
+P 360 294
+P 364 294
+P 368 294
+P 368 306
+P 364 306
+P 360 306
+P 356 306
+P 352 306
+P 348 306
+P 344 306
+P 340 306
+P 340 312
+P 344 312
+P 348 312
+P 352 312
+P 356 312
+P 360 312
+P 364 312
+P 368 312
+P 368 324
+P 364 324
+P 360 324
+P 356 324
+P 352 324
+P 348 324
+P 344 324
+P 340 324
+P 340 330
+P 344 330
+P 348 330
+P 352 330
+P 356 330
+P 360 330
+P 364 330
+P 368 330
+P 368 342
+P 364 342
+P 360 342
+P 356 342
+P 352 342
+P 348 342
+P 344 342
+P 340 342
+P 340 348
+P 344 348
+P 348 348
+P 352 348
+P 356 348
+P 360 348
+P 364 348
+P 368 348
+P 368 360
+P 364 360
+P 360 360
+P 356 360
+P 352 360
+P 348 360
+P 344 360
+P 340 360
+P 340 366
+P 344 366
+P 348 366
+P 352 366
+P 356 366
+P 360 366
+P 364 366
+P 368 366
+P 368 378
+P 364 378
+P 360 378
+P 356 378
+P 352 378
+P 348 378
+P 344 378
+P 340 378
+P 340 384
+P 344 384
+P 348 384
+P 352 384
+P 356 384
+P 360 384
+P 364 384
+P 368 384
+P 368 396
+P 364 396
+P 360 396
+P 356 396
+P 352 396
+P 348 396
+P 344 396
+P 340 396
+P 340 402
+P 344 402
+P 348 402
+P 352 402
+P 356 402
+P 360 402
+P 364 402
+P 368 402
+P 368 414
+P 364 414
+P 360 414
+P 356 414
+P 352 414
+P 348 414
+P 344 414
+P 340 414
+P 340 420
+P 344 420
+P 348 420
+P 352 420
+P 356 420
+P 360 420
+P 364 420
+P 368 420
+P 368 432
+P 364 432
+P 360 432
+P 356 432
+P 352 432
+P 348 432
+P 344 432
+P 340 432
+P 340 438
+P 344 438
+P 348 438
+P 352 438
+P 356 438
+P 360 438
+P 364 438
+P 368 438
+P 368 450
+P 364 450
+P 360 450
+P 356 450
+P 352 450
+P 348 450
+P 344 450
+P 340 450
+P 340 456
+P 344 456
+P 348 456
+P 352 456
+P 356 456
+P 360 456
+P 364 456
+P 368 456
+P 368 468
+P 364 468
+P 360 468
+P 356 468
+P 352 468
+P 348 468
+P 344 468
+P 340 468
+P 340 474
+P 344 474
+P 348 474
+P 352 474
+P 356 474
+P 360 474
+P 364 474
+P 368 474
+P 368 486
+P 364 486
+P 360 486
+P 356 486
+P 352 486
+P 348 486
+P 344 486
+P 340 486
+P 340 492
+P 344 492
+P 348 492
+P 352 492
+P 356 492
+P 360 492
+P 364 492
+P 368 492
+P 368 504
+P 364 504
+P 360 504
+P 356 504
+P 352 504
+P 348 504
+P 344 504
+P 340 504
+P 340 510
+P 344 510
+P 348 510
+P 352 510
+P 356 510
+P 360 510
+P 364 510
+P 368 510
+P 368 522
+P 364 522
+P 360 522
+P 356 522
+P 352 522
+P 348 522
+P 344 522
+P 340 522
+P 340 528
+P 344 528
+P 348 528
+P 352 528
+P 356 528
+P 360 528
+P 364 528
+P 368 528
+P 368 540
+P 364 540
+P 360 540
+P 356 540
+P 352 540
+P 348 540
+P 344 540
+P 340 540
+P 340 546
+P 344 546
+P 348 546
+P 352 546
+P 356 546
+P 360 546
+P 364 546
+P 368 546
+P 368 558
+P 364 558
+P 360 558
+P 356 558
+P 352 558
+P 348 558
+P 344 558
+P 340 558
+P 340 564
+P 344 564
+P 348 564
+P 352 564
+P 356 564
+P 360 564
+P 364 564
+P 368 564
+P 368 576
+P 364 576
+P 360 576
+P 356 576
+P 352 576
+P 348 576
+P 344 576
+P 340 576
+P 380 222
+P 384 222
+P 388 222
+P 392 222
+P 396 222
+P 400 222
+P 404 222
+P 408 222
+P 408 234
+P 404 234
+P 400 234
+P 396 234
+P 392 234
+P 388 234
+P 384 234
+P 380 234
+P 380 240
+P 384 240
+P 388 240
+P 392 240
+P 396 240
+P 400 240
+P 404 240
+P 408 240
+P 408 252
+P 404 252
+P 400 252
+P 396 252
+P 392 252
+P 388 252
+P 384 252
+P 380 252
+P 380 258
+P 384 258
+P 388 258
+P 392 258
+P 396 258
+P 400 258
+P 404 258
+P 408 258
+P 408 270
+P 404 270
+P 400 270
+P 396 270
+P 392 270
+P 388 270
+P 384 270
+P 380 270
+P 380 276
+P 384 276
+P 388 276
+P 392 276
+P 396 276
+P 400 276
+P 404 276
+P 408 276
+P 408 288
+P 404 288
+P 400 288
+P 396 288
+P 392 288
+P 388 288
+P 384 288
+P 380 288
+P 380 294
+P 384 294
+P 388 294
+P 392 294
+P 396 294
+P 400 294
+P 404 294
+P 408 294
+P 408 306
+P 404 306
+P 400 306
+P 396 306
+P 392 306
+P 388 306
+P 384 306
+P 380 306
+P 380 312
+P 384 312
+P 388 312
+P 392 312
+P 396 312
+P 400 312
+P 404 312
+P 408 312
+P 408 324
+P 404 324
+P 400 324
+P 396 324
+P 392 324
+P 388 324
+P 384 324
+P 380 324
+P 380 330
+P 384 330
+P 388 330
+P 392 330
+P 396 330
+P 400 330
+P 404 330
+P 408 330
+P 408 342
+P 404 342
+P 400 342
+P 396 342
+P 392 342
+P 388 342
+P 384 342
+P 380 342
+P 380 348
+P 384 348
+P 388 348
+P 392 348
+P 396 348
+P 400 348
+P 404 348
+P 408 348
+P 408 360
+P 404 360
+P 400 360
+P 396 360
+P 392 360
+P 388 360
+P 384 360
+P 380 360
+P 380 366
+P 384 366
+P 388 366
+P 392 366
+P 396 366
+P 400 366
+P 404 366
+P 408 366
+P 408 378
+P 404 378
+P 400 378
+P 396 378
+P 392 378
+P 388 378
+P 384 378
+P 380 378
+P 380 384
+P 384 384
+P 388 384
+P 392 384
+P 396 384
+P 400 384
+P 404 384
+P 408 384
+P 408 396
+P 404 396
+P 400 396
+P 396 396
+P 392 396
+P 388 396
+P 384 396
+P 380 396
+P 380 402
+P 384 402
+P 388 402
+P 392 402
+P 396 402
+P 400 402
+P 404 402
+P 408 402
+P 408 414
+P 404 414
+P 400 414
+P 396 414
+P 392 414
+P 388 414
+P 384 414
+P 380 414
+P 380 420
+P 384 420
+P 388 420
+P 392 420
+P 396 420
+P 400 420
+P 404 420
+P 408 420
+P 408 432
+P 404 432
+P 400 432
+P 396 432
+P 392 432
+P 388 432
+P 384 432
+P 380 432
+P 380 438
+P 384 438
+P 388 438
+P 392 438
+P 396 438
+P 400 438
+P 404 438
+P 408 438
+P 408 450
+P 404 450
+P 400 450
+P 396 450
+P 392 450
+P 388 450
+P 384 450
+P 380 450
+P 380 456
+P 384 456
+P 388 456
+P 392 456
+P 396 456
+P 400 456
+P 404 456
+P 408 456
+P 408 468
+P 404 468
+P 400 468
+P 396 468
+P 392 468
+P 388 468
+P 384 468
+P 380 468
+P 380 474
+P 384 474
+P 388 474
+P 392 474
+P 396 474
+P 400 474
+P 404 474
+P 408 474
+P 408 486
+P 404 486
+P 400 486
+P 396 486
+P 392 486
+P 388 486
+P 384 486
+P 380 486
+P 380 492
+P 384 492
+P 388 492
+P 392 492
+P 396 492
+P 400 492
+P 404 492
+P 408 492
+P 408 504
+P 404 504
+P 400 504
+P 396 504
+P 392 504
+P 388 504
+P 384 504
+P 380 504
+P 380 510
+P 384 510
+P 388 510
+P 392 510
+P 396 510
+P 400 510
+P 404 510
+P 408 510
+P 408 522
+P 404 522
+P 400 522
+P 396 522
+P 392 522
+P 388 522
+P 384 522
+P 380 522
+P 380 528
+P 384 528
+P 388 528
+P 392 528
+P 396 528
+P 400 528
+P 404 528
+P 408 528
+P 408 540
+P 404 540
+P 400 540
+P 396 540
+P 392 540
+P 388 540
+P 384 540
+P 380 540
+P 380 546
+P 384 546
+P 388 546
+P 392 546
+P 396 546
+P 400 546
+P 404 546
+P 408 546
+P 408 558
+P 404 558
+P 400 558
+P 396 558
+P 392 558
+P 388 558
+P 384 558
+P 380 558
+P 380 564
+P 384 564
+P 388 564
+P 392 564
+P 396 564
+P 400 564
+P 404 564
+P 408 564
+P 408 576
+P 404 576
+P 400 576
+P 396 576
+P 392 576
+P 388 576
+P 384 576
+P 380 576
+P 420 222
+P 424 222
+P 428 222
+P 432 222
+P 436 222
+P 440 222
+P 444 222
+P 448 222
+P 448 234
+P 444 234
+P 440 234
+P 436 234
+P 432 234
+P 428 234
+P 424 234
+P 420 234
+P 420 240
+P 424 240
+P 428 240
+P 432 240
+P 436 240
+P 440 240
+P 444 240
+P 448 240
+P 448 252
+P 444 252
+P 440 252
+P 436 252
+P 432 252
+P 428 252
+P 424 252
+P 420 252
+P 420 258
+P 424 258
+P 428 258
+P 432 258
+P 436 258
+P 440 258
+P 444 258
+P 448 258
+P 448 270
+P 444 270
+P 440 270
+P 436 270
+P 432 270
+P 428 270
+P 424 270
+P 420 270
+P 420 276
+P 424 276
+P 428 276
+P 432 276
+P 436 276
+P 440 276
+P 444 276
+P 448 276
+P 448 288
+P 444 288
+P 440 288
+P 436 288
+P 432 288
+P 428 288
+P 424 288
+P 420 288
+P 420 294
+P 424 294
+P 428 294
+P 432 294
+P 436 294
+P 440 294
+P 444 294
+P 448 294
+P 448 306
+P 444 306
+P 440 306
+P 436 306
+P 432 306
+P 428 306
+P 424 306
+P 420 306
+P 420 312
+P 424 312
+P 428 312
+P 432 312
+P 436 312
+P 440 312
+P 444 312
+P 448 312
+P 448 324
+P 444 324
+P 440 324
+P 436 324
+P 432 324
+P 428 324
+P 424 324
+P 420 324
+P 420 330
+P 424 330
+P 428 330
+P 432 330
+P 436 330
+P 440 330
+P 444 330
+P 448 330
+P 448 342
+P 444 342
+P 440 342
+P 436 342
+P 432 342
+P 428 342
+P 424 342
+P 420 342
+P 420 348
+P 424 348
+P 428 348
+P 432 348
+P 436 348
+P 440 348
+P 444 348
+P 448 348
+P 448 360
+P 444 360
+P 440 360
+P 436 360
+P 432 360
+P 428 360
+P 424 360
+P 420 360
+P 420 366
+P 424 366
+P 428 366
+P 432 366
+P 436 366
+P 440 366
+P 444 366
+P 448 366
+P 448 378
+P 444 378
+P 440 378
+P 436 378
+P 432 378
+P 428 378
+P 424 378
+P 420 378
+P 420 384
+P 424 384
+P 428 384
+P 432 384
+P 436 384
+P 440 384
+P 444 384
+P 448 384
+P 448 396
+P 444 396
+P 440 396
+P 436 396
+P 432 396
+P 428 396
+P 424 396
+P 420 396
+P 420 402
+P 424 402
+P 428 402
+P 432 402
+P 436 402
+P 440 402
+P 444 402
+P 448 402
+P 448 414
+P 444 414
+P 440 414
+P 436 414
+P 432 414
+P 428 414
+P 424 414
+P 420 414
+P 420 420
+P 424 420
+P 428 420
+P 432 420
+P 436 420
+P 440 420
+P 444 420
+P 448 420
+P 448 432
+P 444 432
+P 440 432
+P 436 432
+P 432 432
+P 428 432
+P 424 432
+P 420 432
+P 420 438
+P 424 438
+P 428 438
+P 432 438
+P 436 438
+P 440 438
+P 444 438
+P 448 438
+P 448 450
+P 444 450
+P 440 450
+P 436 450
+P 432 450
+P 428 450
+P 424 450
+P 420 450
+P 420 456
+P 424 456
+P 428 456
+P 432 456
+P 436 456
+P 440 456
+P 444 456
+P 448 456
+P 448 468
+P 444 468
+P 440 468
+P 436 468
+P 432 468
+P 428 468
+P 424 468
+P 420 468
+P 420 474
+P 424 474
+P 428 474
+P 432 474
+P 436 474
+P 440 474
+P 444 474
+P 448 474
+P 448 486
+P 444 486
+P 440 486
+P 436 486
+P 432 486
+P 428 486
+P 424 486
+P 420 486
+P 420 492
+P 424 492
+P 428 492
+P 432 492
+P 436 492
+P 440 492
+P 444 492
+P 448 492
+P 448 504
+P 444 504
+P 440 504
+P 436 504
+P 432 504
+P 428 504
+P 424 504
+P 420 504
+P 420 510
+P 424 510
+P 428 510
+P 432 510
+P 436 510
+P 440 510
+P 444 510
+P 448 510
+P 448 522
+P 444 522
+P 440 522
+P 436 522
+P 432 522
+P 428 522
+P 424 522
+P 420 522
+P 420 528
+P 424 528
+P 428 528
+P 432 528
+P 436 528
+P 440 528
+P 444 528
+P 448 528
+P 448 540
+P 444 540
+P 440 540
+P 436 540
+P 432 540
+P 428 540
+P 424 540
+P 420 540
+P 420 546
+P 424 546
+P 428 546
+P 432 546
+P 436 546
+P 440 546
+P 444 546
+P 448 546
+P 448 558
+P 444 558
+P 440 558
+P 436 558
+P 432 558
+P 428 558
+P 424 558
+P 420 558
+P 420 564
+P 424 564
+P 428 564
+P 432 564
+P 436 564
+P 440 564
+P 444 564
+P 448 564
+P 448 576
+P 444 576
+P 440 576
+P 436 576
+P 432 576
+P 428 576
+P 424 576
+P 420 576
+P 460 222
+P 464 222
+P 468 222
+P 472 222
+P 476 222
+P 480 222
+P 484 222
+P 488 222
+P 488 234
+P 484 234
+P 480 234
+P 476 234
+P 472 234
+P 468 234
+P 464 234
+P 460 234
+P 460 240
+P 464 240
+P 468 240
+P 472 240
+P 476 240
+P 480 240
+P 484 240
+P 488 240
+P 488 252
+P 484 252
+P 480 252
+P 476 252
+P 472 252
+P 468 252
+P 464 252
+P 460 252
+P 460 258
+P 464 258
+P 468 258
+P 472 258
+P 476 258
+P 480 258
+P 484 258
+P 488 258
+P 488 270
+P 484 270
+P 480 270
+P 476 270
+P 472 270
+P 468 270
+P 464 270
+P 460 270
+P 460 276
+P 464 276
+P 468 276
+P 472 276
+P 476 276
+P 480 276
+P 484 276
+P 488 276
+P 488 288
+P 484 288
+P 480 288
+P 476 288
+P 472 288
+P 468 288
+P 464 288
+P 460 288
+P 460 294
+P 464 294
+P 468 294
+P 472 294
+P 476 294
+P 480 294
+P 484 294
+P 488 294
+P 488 306
+P 484 306
+P 480 306
+P 476 306
+P 472 306
+P 468 306
+P 464 306
+P 460 306
+P 460 312
+P 464 312
+P 468 312
+P 472 312
+P 476 312
+P 480 312
+P 484 312
+P 488 312
+P 488 324
+P 484 324
+P 480 324
+P 476 324
+P 472 324
+P 468 324
+P 464 324
+P 460 324
+P 460 330
+P 464 330
+P 468 330
+P 472 330
+P 476 330
+P 480 330
+P 484 330
+P 488 330
+P 488 342
+P 484 342
+P 480 342
+P 476 342
+P 472 342
+P 468 342
+P 464 342
+P 460 342
+P 460 348
+P 464 348
+P 468 348
+P 472 348
+P 476 348
+P 480 348
+P 484 348
+P 488 348
+P 488 360
+P 484 360
+P 480 360
+P 476 360
+P 472 360
+P 468 360
+P 464 360
+P 460 360
+P 460 366
+P 464 366
+P 468 366
+P 472 366
+P 476 366
+P 480 366
+P 484 366
+P 488 366
+P 488 378
+P 484 378
+P 480 378
+P 476 378
+P 472 378
+P 468 378
+P 464 378
+P 460 378
+P 460 384
+P 464 384
+P 468 384
+P 472 384
+P 476 384
+P 480 384
+P 484 384
+P 488 384
+P 488 396
+P 484 396
+P 480 396
+P 476 396
+P 472 396
+P 468 396
+P 464 396
+P 460 396
+P 460 402
+P 464 402
+P 468 402
+P 472 402
+P 476 402
+P 480 402
+P 484 402
+P 488 402
+P 488 414
+P 484 414
+P 480 414
+P 476 414
+P 472 414
+P 468 414
+P 464 414
+P 460 414
+P 460 420
+P 464 420
+P 468 420
+P 472 420
+P 476 420
+P 480 420
+P 484 420
+P 488 420
+P 488 432
+P 484 432
+P 480 432
+P 476 432
+P 472 432
+P 468 432
+P 464 432
+P 460 432
+P 460 438
+P 464 438
+P 468 438
+P 472 438
+P 476 438
+P 480 438
+P 484 438
+P 488 438
+P 488 450
+P 484 450
+P 480 450
+P 476 450
+P 472 450
+P 468 450
+P 464 450
+P 460 450
+P 460 456
+P 464 456
+P 468 456
+P 472 456
+P 476 456
+P 480 456
+P 484 456
+P 488 456
+P 488 468
+P 484 468
+P 480 468
+P 476 468
+P 472 468
+P 468 468
+P 464 468
+P 460 468
+P 460 474
+P 464 474
+P 468 474
+P 472 474
+P 476 474
+P 480 474
+P 484 474
+P 488 474
+P 488 486
+P 484 486
+P 480 486
+P 476 486
+P 472 486
+P 468 486
+P 464 486
+P 460 486
+P 460 492
+P 464 492
+P 468 492
+P 472 492
+P 476 492
+P 480 492
+P 484 492
+P 488 492
+P 488 504
+P 484 504
+P 480 504
+P 476 504
+P 472 504
+P 468 504
+P 464 504
+P 460 504
+P 460 510
+P 464 510
+P 468 510
+P 472 510
+P 476 510
+P 480 510
+P 484 510
+P 488 510
+P 488 522
+P 484 522
+P 480 522
+P 476 522
+P 472 522
+P 468 522
+P 464 522
+P 460 522
+P 460 528
+P 464 528
+P 468 528
+P 472 528
+P 476 528
+P 480 528
+P 484 528
+P 488 528
+P 488 540
+P 484 540
+P 480 540
+P 476 540
+P 472 540
+P 468 540
+P 464 540
+P 460 540
+P 460 546
+P 464 546
+P 468 546
+P 472 546
+P 476 546
+P 480 546
+P 484 546
+P 488 546
+P 488 558
+P 484 558
+P 480 558
+P 476 558
+P 472 558
+P 468 558
+P 464 558
+P 460 558
+P 460 564
+P 464 564
+P 468 564
+P 472 564
+P 476 564
+P 480 564
+P 484 564
+P 488 564
+P 488 576
+P 484 576
+P 480 576
+P 476 576
+P 472 576
+P 468 576
+P 464 576
+P 460 576
+P 500 222
+P 504 222
+P 508 222
+P 512 222
+P 516 222
+P 520 222
+P 524 222
+P 528 222
+P 528 234
+P 524 234
+P 520 234
+P 516 234
+P 512 234
+P 508 234
+P 504 234
+P 500 234
+P 500 240
+P 504 240
+P 508 240
+P 512 240
+P 516 240
+P 520 240
+P 524 240
+P 528 240
+P 528 252
+P 524 252
+P 520 252
+P 516 252
+P 512 252
+P 508 252
+P 504 252
+P 500 252
+P 500 258
+P 504 258
+P 508 258
+P 512 258
+P 516 258
+P 520 258
+P 524 258
+P 528 258
+P 528 270
+P 524 270
+P 520 270
+P 516 270
+P 512 270
+P 508 270
+P 504 270
+P 500 270
+P 500 276
+P 504 276
+P 508 276
+P 512 276
+P 516 276
+P 520 276
+P 524 276
+P 528 276
+P 528 288
+P 524 288
+P 520 288
+P 516 288
+P 512 288
+P 508 288
+P 504 288
+P 500 288
+P 500 294
+P 504 294
+P 508 294
+P 512 294
+P 516 294
+P 520 294
+P 524 294
+P 528 294
+P 528 306
+P 524 306
+P 520 306
+P 516 306
+P 512 306
+P 508 306
+P 504 306
+P 500 306
+P 500 312
+P 504 312
+P 508 312
+P 512 312
+P 516 312
+P 520 312
+P 524 312
+P 528 312
+P 528 324
+P 524 324
+P 520 324
+P 516 324
+P 512 324
+P 508 324
+P 504 324
+P 500 324
+P 500 330
+P 504 330
+P 508 330
+P 512 330
+P 516 330
+P 520 330
+P 524 330
+P 528 330
+P 528 342
+P 524 342
+P 520 342
+P 516 342
+P 512 342
+P 508 342
+P 504 342
+P 500 342
+P 500 348
+P 504 348
+P 508 348
+P 512 348
+P 516 348
+P 520 348
+P 524 348
+P 528 348
+P 528 360
+P 524 360
+P 520 360
+P 516 360
+P 512 360
+P 508 360
+P 504 360
+P 500 360
+P 500 366
+P 504 366
+P 508 366
+P 512 366
+P 516 366
+P 520 366
+P 524 366
+P 528 366
+P 528 378
+P 524 378
+P 520 378
+P 516 378
+P 512 378
+P 508 378
+P 504 378
+P 500 378
+P 500 384
+P 504 384
+P 508 384
+P 512 384
+P 516 384
+P 520 384
+P 524 384
+P 528 384
+P 528 396
+P 524 396
+P 520 396
+P 516 396
+P 512 396
+P 508 396
+P 504 396
+P 500 396
+P 500 402
+P 504 402
+P 508 402
+P 512 402
+P 516 402
+P 520 402
+P 524 402
+P 528 402
+P 528 414
+P 524 414
+P 520 414
+P 516 414
+P 512 414
+P 508 414
+P 504 414
+P 500 414
+P 500 420
+P 504 420
+P 508 420
+P 512 420
+P 516 420
+P 520 420
+P 524 420
+P 528 420
+P 528 432
+P 524 432
+P 520 432
+P 516 432
+P 512 432
+P 508 432
+P 504 432
+P 500 432
+P 500 438
+P 504 438
+P 508 438
+P 512 438
+P 516 438
+P 520 438
+P 524 438
+P 528 438
+P 528 450
+P 524 450
+P 520 450
+P 516 450
+P 512 450
+P 508 450
+P 504 450
+P 500 450
+P 500 456
+P 504 456
+P 508 456
+P 512 456
+P 516 456
+P 520 456
+P 524 456
+P 528 456
+P 528 468
+P 524 468
+P 520 468
+P 516 468
+P 512 468
+P 508 468
+P 504 468
+P 500 468
+P 500 474
+P 504 474
+P 508 474
+P 512 474
+P 516 474
+P 520 474
+P 524 474
+P 528 474
+P 528 486
+P 524 486
+P 520 486
+P 516 486
+P 512 486
+P 508 486
+P 504 486
+P 500 486
+P 500 492
+P 504 492
+P 508 492
+P 512 492
+P 516 492
+P 520 492
+P 524 492
+P 528 492
+P 528 504
+P 524 504
+P 520 504
+P 516 504
+P 512 504
+P 508 504
+P 504 504
+P 500 504
+P 500 510
+P 504 510
+P 508 510
+P 512 510
+P 516 510
+P 520 510
+P 524 510
+P 528 510
+P 528 522
+P 524 522
+P 520 522
+P 516 522
+P 512 522
+P 508 522
+P 504 522
+P 500 522
+P 500 528
+P 504 528
+P 508 528
+P 512 528
+P 516 528
+P 520 528
+P 524 528
+P 528 528
+P 528 540
+P 524 540
+P 520 540
+P 516 540
+P 512 540
+P 508 540
+P 504 540
+P 500 540
+P 500 546
+P 504 546
+P 508 546
+P 512 546
+P 516 546
+P 520 546
+P 524 546
+P 528 546
+P 528 558
+P 524 558
+P 520 558
+P 516 558
+P 512 558
+P 508 558
+P 504 558
+P 500 558
+P 500 564
+P 504 564
+P 508 564
+P 512 564
+P 516 564
+P 520 564
+P 524 564
+P 528 564
+P 528 576
+P 524 576
+P 520 576
+P 516 576
+P 512 576
+P 508 576
+P 504 576
+P 500 576
+P 220 202
+P 224 202
+P 228 202
+P 232 202
+P 236 202
+P 240 202
+P 244 202
+P 248 202
+P 248 214
+P 244 214
+P 240 214
+P 236 214
+P 232 214
+P 228 214
+P 224 214
+P 220 214
+P 260 202
+P 264 202
+P 268 202
+P 272 202
+P 276 202
+P 280 202
+P 284 202
+P 288 202
+P 288 214
+P 284 214
+P 280 214
+P 276 214
+P 272 214
+P 268 214
+P 264 214
+P 260 214
+P 300 202
+P 304 202
+P 308 202
+P 312 202
+P 316 202
+P 320 202
+P 324 202
+P 328 202
+P 328 214
+P 324 214
+P 320 214
+P 316 214
+P 312 214
+P 308 214
+P 304 214
+P 300 214
+P 340 202
+P 344 202
+P 348 202
+P 352 202
+P 356 202
+P 360 202
+P 364 202
+P 368 202
+P 368 214
+P 364 214
+P 360 214
+P 356 214
+P 352 214
+P 348 214
+P 344 214
+P 340 214
+P 380 202
+P 384 202
+P 388 202
+P 392 202
+P 396 202
+P 400 202
+P 404 202
+P 408 202
+P 408 214
+P 404 214
+P 400 214
+P 396 214
+P 392 214
+P 388 214
+P 384 214
+P 380 214
+P 420 202
+P 424 202
+P 428 202
+P 432 202
+P 436 202
+P 440 202
+P 444 202
+P 448 202
+P 448 214
+P 444 214
+P 440 214
+P 436 214
+P 432 214
+P 428 214
+P 424 214
+P 420 214
+P 460 202
+P 464 202
+P 468 202
+P 472 202
+P 476 202
+P 480 202
+P 484 202
+P 488 202
+P 488 214
+P 484 214
+P 480 214
+P 476 214
+P 472 214
+P 468 214
+P 464 214
+P 460 214
+P 500 202
+P 504 202
+P 508 202
+P 512 202
+P 516 202
+P 520 202
+P 524 202
+P 528 202
+P 528 214
+P 524 214
+P 520 214
+P 516 214
+P 512 214
+P 508 214
+P 504 214
+P 500 214
+P 242 122
+P 242 126
+P 242 130
+P 242 134
+P 242 138
+P 242 142
+P 242 146
+P 242 150
+P 242 154
+P 242 158
+P 242 162
+P 242 166
+P 230 166
+P 230 162
+P 230 158
+P 230 154
+P 230 150
+P 230 146
+P 230 142
+P 230 138
+P 230 134
+P 230 130
+P 230 126
+P 230 122
+P 274 122
+P 274 126
+P 274 130
+P 274 134
+P 274 138
+P 274 142
+P 274 146
+P 274 150
+P 274 154
+P 274 158
+P 274 162
+P 274 166
+P 262 166
+P 262 162
+P 262 158
+P 262 154
+P 262 150
+P 262 146
+P 262 142
+P 262 138
+P 262 134
+P 262 130
+P 262 126
+P 262 122
+P 320 122
+P 320 126
+P 320 130
+P 320 134
+P 320 138
+P 320 142
+P 320 146
+P 320 150
+P 320 154
+P 320 158
+P 320 162
+P 320 166
+P 308 166
+P 308 162
+P 308 158
+P 308 154
+P 308 150
+P 308 146
+P 308 142
+P 308 138
+P 308 134
+P 308 130
+P 308 126
+P 308 122
+P 352 122
+P 352 126
+P 352 130
+P 352 134
+P 352 138
+P 352 142
+P 352 146
+P 352 150
+P 352 154
+P 352 158
+P 352 162
+P 352 166
+P 340 166
+P 340 162
+P 340 158
+P 340 154
+P 340 150
+P 340 146
+P 340 142
+P 340 138
+P 340 134
+P 340 130
+P 340 126
+P 340 122
+P 396 122
+P 396 126
+P 396 130
+P 396 134
+P 396 138
+P 396 142
+P 396 146
+P 396 150
+P 396 154
+P 396 158
+P 396 162
+P 396 166
+P 384 166
+P 384 162
+P 384 158
+P 384 154
+P 384 150
+P 384 146
+P 384 142
+P 384 138
+P 384 134
+P 384 130
+P 384 126
+P 384 122
+P 432 122
+P 432 126
+P 432 130
+P 432 134
+P 432 138
+P 432 142
+P 432 146
+P 432 150
+P 432 154
+P 432 158
+P 432 162
+P 432 166
+P 420 166
+P 420 162
+P 420 158
+P 420 154
+P 420 150
+P 420 146
+P 420 142
+P 420 138
+P 420 134
+P 420 130
+P 420 126
+P 420 122
+P 480 122
+P 480 126
+P 480 130
+P 480 134
+P 480 138
+P 480 142
+P 480 146
+P 480 150
+P 480 154
+P 480 158
+P 480 162
+P 480 166
+P 468 166
+P 468 162
+P 468 158
+P 468 154
+P 468 150
+P 468 146
+P 468 142
+P 468 138
+P 468 134
+P 468 130
+P 468 126
+P 468 122
+P 510 122
+P 510 126
+P 510 130
+P 510 134
+P 510 138
+P 510 142
+P 510 146
+P 510 150
+P 510 154
+P 510 158
+P 510 162
+P 510 166
+P 498 166
+P 498 162
+P 498 158
+P 498 154
+P 498 150
+P 498 146
+P 498 142
+P 498 138
+P 498 134
+P 498 130
+P 498 126
+P 498 122
+P 234 180
+P 238 180
+P 242 180
+P 246 180
+P 250 180
+P 254 180
+P 258 180
+P 262 180
+P 266 180
+P 266 192
+P 262 192
+P 258 192
+P 254 192
+P 250 192
+P 246 192
+P 242 192
+P 238 192
+P 234 192
+P 318 180
+P 322 180
+P 326 180
+P 330 180
+P 334 180
+P 338 180
+P 342 180
+P 346 180
+P 350 180
+P 350 192
+P 346 192
+P 342 192
+P 338 192
+P 334 192
+P 330 192
+P 326 192
+P 322 192
+P 318 192
+P 392 180
+P 396 180
+P 400 180
+P 404 180
+P 408 180
+P 412 180
+P 416 180
+P 420 180
+P 424 180
+P 424 192
+P 420 192
+P 416 192
+P 412 192
+P 408 192
+P 404 192
+P 400 192
+P 396 192
+P 392 192
+P 474 180
+P 478 180
+P 482 180
+P 486 180
+P 490 180
+P 494 180
+P 498 180
+P 502 180
+P 506 180
+P 506 192
+P 502 192
+P 498 192
+P 494 192
+P 490 192
+P 486 192
+P 482 192
+P 478 192
+P 474 192
+P 210 20
+P 210 24
+P 210 28
+P 210 32
+P 210 36
+P 210 40
+P 210 44
+P 210 48
+P 210 52
+P 210 56
+P 198 56
+P 198 52
+P 198 48
+P 198 44
+P 198 40
+P 198 36
+P 198 32
+P 198 28
+P 198 24
+P 198 20
+P 204 252
+P 204 256
+P 204 260
+P 204 264
+P 204 268
+P 204 272
+P 204 276
+P 204 280
+P 204 284
+P 204 288
+P 192 288
+P 192 284
+P 192 280
+P 192 276
+P 192 272
+P 192 268
+P 192 264
+P 192 260
+P 192 256
+P 192 252
+P 184 20
+P 184 24
+P 184 28
+P 184 32
+P 184 36
+P 184 40
+P 184 44
+P 184 48
+P 184 52
+P 184 56
+P 172 56
+P 172 52
+P 172 48
+P 172 44
+P 172 40
+P 172 36
+P 172 32
+P 172 28
+P 172 24
+P 172 20
+P 204 348
+P 204 352
+P 204 356
+P 204 360
+P 204 364
+P 204 368
+P 204 372
+P 204 376
+P 204 380
+P 204 384
+P 192 384
+P 192 380
+P 192 376
+P 192 372
+P 192 368
+P 192 364
+P 192 360
+P 192 356
+P 192 352
+P 192 348
+P 296 130
+P 296 134
+P 296 138
+P 296 142
+P 296 146
+P 296 150
+P 296 154
+P 296 158
+P 296 162
+P 296 166
+P 284 166
+P 284 162
+P 284 158
+P 284 154
+P 284 150
+P 284 146
+P 284 142
+P 284 138
+P 284 134
+P 284 130
+P 456 130
+P 456 134
+P 456 138
+P 456 142
+P 456 146
+P 456 150
+P 456 154
+P 456 158
+P 456 162
+P 456 166
+P 444 166
+P 444 162
+P 444 158
+P 444 154
+P 444 150
+P 444 146
+P 444 142
+P 444 138
+P 444 134
+P 444 130
+P 568 380
+P 568 384
+P 568 388
+P 568 392
+P 568 396
+P 568 400
+P 568 404
+P 568 408
+P 568 412
+P 568 416
+P 556 416
+P 556 412
+P 556 408
+P 556 404
+P 556 400
+P 556 396
+P 556 392
+P 556 388
+P 556 384
+P 556 380
+P 568 492
+P 568 496
+P 568 500
+P 568 504
+P 568 508
+P 568 512
+P 568 516
+P 568 520
+P 568 524
+P 568 528
+P 556 528
+P 556 524
+P 556 520
+P 556 516
+P 556 512
+P 556 508
+P 556 504
+P 556 500
+P 556 496
+P 556 492
+P 568 308
+P 568 312
+P 568 316
+P 568 320
+P 568 324
+P 568 328
+P 568 332
+P 568 336
+P 568 340
+P 568 344
+P 556 344
+P 556 340
+P 556 336
+P 556 332
+P 556 328
+P 556 324
+P 556 320
+P 556 316
+P 556 312
+P 556 308
+P 548 496
+P 548 500
+P 548 504
+P 548 508
+P 548 512
+P 548 516
+P 548 520
+P 548 524
+P 536 524
+P 536 520
+P 536 516
+P 536 512
+P 536 508
+P 536 504
+P 536 500
+P 536 496
+P 548 310
+P 548 314
+P 548 318
+P 548 322
+P 548 326
+P 548 330
+P 548 334
+P 548 338
+P 536 338
+P 536 334
+P 536 330
+P 536 326
+P 536 322
+P 536 318
+P 536 314
+P 536 310
+P 276 180
+P 280 180
+P 284 180
+P 288 180
+P 292 180
+P 296 180
+P 300 180
+P 304 180
+P 304 192
+P 300 192
+P 296 192
+P 292 192
+P 288 192
+P 284 192
+P 280 192
+P 276 192
+P 436 180
+P 440 180
+P 444 180
+P 448 180
+P 452 180
+P 456 180
+P 460 180
+P 464 180
+P 464 192
+P 460 192
+P 456 192
+P 452 192
+P 448 192
+P 444 192
+P 440 192
+P 436 192
+P 548 384
+P 548 388
+P 548 392
+P 548 396
+P 548 400
+P 548 404
+P 548 408
+P 548 412
+P 536 412
+P 536 408
+P 536 404
+P 536 400
+P 536 396
+P 536 392
+P 536 388
+P 536 384
+P 564 8
+P 560 8
+P 556 8
+P 552 8
+P 548 8
+P 544 8
+P 540 8
+P 536 8
+P 532 8
+P 528 8
+P 524 8
+P 520 8
+P 516 8
+P 512 8
+P 508 8
+P 504 8
+P 500 8
+P 496 8
+P 492 8
+P 488 8
+P 484 8
+P 480 8
+P 476 8
+P 472 8
+P 468 8
+P 464 8
+P 460 8
+P 456 8
+P 452 8
+P 448 8
+P 444 8
+P 440 8
+P 564 12
+P 560 12
+P 556 12
+P 552 12
+P 548 12
+P 544 12
+P 540 12
+P 536 12
+P 532 12
+P 528 12
+P 524 12
+P 520 12
+P 516 12
+P 512 12
+P 508 12
+P 504 12
+P 500 12
+P 496 12
+P 492 12
+P 488 12
+P 484 12
+P 480 12
+P 476 12
+P 472 12
+P 468 12
+P 464 12
+P 460 12
+P 456 12
+P 452 12
+P 448 12
+P 444 12
+P 440 12
+P 564 16
+P 560 16
+P 556 16
+P 552 16
+P 548 16
+P 544 16
+P 540 16
+P 536 16
+P 532 16
+P 528 16
+P 524 16
+P 520 16
+P 516 16
+P 512 16
+P 508 16
+P 504 16
+P 500 16
+P 496 16
+P 492 16
+P 488 16
+P 484 16
+P 480 16
+P 476 16
+P 472 16
+P 468 16
+P 464 16
+P 460 16
+P 456 16
+P 452 16
+P 448 16
+P 444 16
+P 440 16
+P 566 40
+P 566 44
+P 566 48
+P 566 52
+P 566 56
+P 566 60
+P 566 64
+P 566 68
+P 566 72
+P 566 76
+P 554 76
+P 554 72
+P 554 68
+P 554 64
+P 554 60
+P 554 56
+P 554 52
+P 554 48
+P 554 44
+P 554 40
+P 540 40
+P 540 44
+P 540 48
+P 540 52
+P 540 56
+P 540 60
+P 540 64
+P 540 68
+P 540 72
+P 540 76
+P 528 76
+P 528 72
+P 528 68
+P 528 64
+P 528 60
+P 528 56
+P 528 52
+P 528 48
+P 528 44
+P 528 40
+P 514 40
+P 514 44
+P 514 48
+P 514 52
+P 514 56
+P 514 60
+P 514 64
+P 514 68
+P 514 72
+P 514 76
+P 502 76
+P 502 72
+P 502 68
+P 502 64
+P 502 60
+P 502 56
+P 502 52
+P 502 48
+P 502 44
+P 502 40
+P 490 40
+P 490 44
+P 490 48
+P 490 52
+P 490 56
+P 490 60
+P 490 64
+P 490 68
+P 490 72
+P 490 76
+P 478 76
+P 478 72
+P 478 68
+P 478 64
+P 478 60
+P 478 56
+P 478 52
+P 478 48
+P 478 44
+P 478 40
+P 476 90
+P 480 90
+P 484 90
+P 488 90
+P 492 90
+P 496 90
+P 500 90
+P 504 90
+P 508 90
+P 512 90
+P 512 102
+P 508 102
+P 504 102
+P 500 102
+P 496 102
+P 492 102
+P 488 102
+P 484 102
+P 480 102
+P 476 102
+P 532 90
+P 536 90
+P 540 90
+P 544 90
+P 548 90
+P 552 90
+P 556 90
+P 560 90
+P 564 90
+P 568 90
+P 568 102
+P 564 102
+P 560 102
+P 556 102
+P 552 102
+P 548 102
+P 544 102
+P 540 102
+P 536 102
+P 532 102
+P 302 64
+P 302 68
+P 302 72
+P 302 76
+P 302 80
+P 302 84
+P 302 88
+P 302 92
+P 302 96
+P 302 100
+P 302 104
+P 302 108
+P 290 108
+P 290 104
+P 290 100
+P 290 96
+P 290 92
+P 290 88
+P 290 84
+P 290 80
+P 290 76
+P 290 72
+P 290 68
+P 290 64
+P 456 72
+P 456 76
+P 456 80
+P 456 84
+P 456 88
+P 456 92
+P 456 96
+P 456 100
+P 456 104
+P 456 108
+P 456 112
+P 456 116
+P 444 116
+P 444 112
+P 444 108
+P 444 104
+P 444 100
+P 444 96
+P 444 92
+P 444 88
+P 444 84
+P 444 80
+P 444 76
+P 444 72
+P 384 8
+P 388 8
+P 392 8
+P 396 8
+P 400 8
+P 404 8
+P 408 8
+P 412 8
+P 416 8
+P 420 8
+P 420 20
+P 416 20
+P 412 20
+P 408 20
+P 404 20
+P 400 20
+P 396 20
+P 392 20
+P 388 20
+P 384 20
+P 524 180
+P 528 180
+P 532 180
+P 536 180
+P 540 180
+P 544 180
+P 548 180
+P 552 180
+P 556 180
+P 560 180
+P 560 192
+P 556 192
+P 552 192
+P 548 192
+P 544 192
+P 540 192
+P 536 192
+P 532 192
+P 528 192
+P 524 192
+P 564 130
+P 564 134
+P 564 138
+P 564 142
+P 564 146
+P 564 150
+P 564 154
+P 564 158
+P 564 162
+P 564 166
+P 552 166
+P 552 162
+P 552 158
+P 552 154
+P 552 150
+P 552 146
+P 552 142
+P 552 138
+P 552 134
+P 552 130
+P 544 130
+P 544 134
+P 544 138
+P 544 142
+P 544 146
+P 544 150
+P 544 154
+P 544 158
+P 544 162
+P 544 166
+P 532 166
+P 532 162
+P 532 158
+P 532 154
+P 532 150
+P 532 146
+P 532 142
+P 532 138
+P 532 134
+P 532 130
+P 412 64
+P 412 68
+P 412 72
+P 412 76
+P 412 80
+P 412 84
+P 412 88
+P 400 88
+P 400 84
+P 400 80
+P 400 76
+P 400 72
+P 400 68
+P 400 64
+P 432 64
+P 432 68
+P 432 72
+P 432 76
+P 432 80
+P 432 84
+P 432 88
+P 420 88
+P 420 84
+P 420 80
+P 420 76
+P 420 72
+P 420 68
+P 420 64
+P 354 8
+P 350 8
+P 346 8
+P 342 8
+P 338 8
+P 334 8
+P 330 8
+P 326 8
+P 322 8
+P 318 8
+P 314 8
+P 310 8
+P 306 8
+P 302 8
+P 298 8
+P 294 8
+P 290 8
+P 286 8
+P 282 8
+P 278 8
+P 274 8
+P 270 8
+P 266 8
+P 262 8
+P 258 8
+P 254 8
+P 250 8
+P 246 8
+P 242 8
+P 238 8
+P 234 8
+P 230 8
+P 354 12
+P 350 12
+P 346 12
+P 342 12
+P 338 12
+P 334 12
+P 330 12
+P 326 12
+P 322 12
+P 318 12
+P 314 12
+P 310 12
+P 306 12
+P 302 12
+P 298 12
+P 294 12
+P 290 12
+P 286 12
+P 282 12
+P 278 12
+P 274 12
+P 270 12
+P 266 12
+P 262 12
+P 258 12
+P 254 12
+P 250 12
+P 246 12
+P 242 12
+P 238 12
+P 234 12
+P 230 12
+P 354 16
+P 350 16
+P 346 16
+P 342 16
+P 338 16
+P 334 16
+P 330 16
+P 326 16
+P 322 16
+P 318 16
+P 314 16
+P 310 16
+P 306 16
+P 302 16
+P 298 16
+P 294 16
+P 290 16
+P 286 16
+P 282 16
+P 278 16
+P 274 16
+P 270 16
+P 266 16
+P 262 16
+P 258 16
+P 254 16
+P 250 16
+P 246 16
+P 242 16
+P 238 16
+P 234 16
+P 230 16
+P 352 64
+P 352 68
+P 352 72
+P 352 76
+P 352 80
+P 352 84
+P 352 88
+P 352 92
+P 352 96
+P 352 100
+P 340 100
+P 340 96
+P 340 92
+P 340 88
+P 340 84
+P 340 80
+P 340 76
+P 340 72
+P 340 68
+P 340 64
+P 328 64
+P 328 68
+P 328 72
+P 328 76
+P 328 80
+P 328 84
+P 328 88
+P 328 92
+P 328 96
+P 328 100
+P 316 100
+P 316 96
+P 316 92
+P 316 88
+P 316 84
+P 316 80
+P 316 76
+P 316 72
+P 316 68
+P 316 64
+P 376 64
+P 376 68
+P 376 72
+P 376 76
+P 376 80
+P 376 84
+P 376 88
+P 376 92
+P 376 96
+P 376 100
+P 364 100
+P 364 96
+P 364 92
+P 364 88
+P 364 84
+P 364 80
+P 364 76
+P 364 72
+P 364 68
+P 364 64
+P 244 94
+P 248 94
+P 252 94
+P 256 94
+P 256 106
+P 252 106
+P 248 106
+P 244 106
+P 234 80
+P 238 80
+P 242 80
+P 246 80
+P 250 80
+P 254 80
+P 258 80
+P 262 80
+P 232 56
+P 236 56
+P 240 56
+P 244 56
+P 248 56
+P 252 56
+P 256 56
+P 260 56
+P 264 56
+P 268 56
+P 268 68
+P 264 68
+P 260 68
+P 256 68
+P 252 68
+P 248 68
+P 244 68
+P 240 68
+P 236 68
+P 232 68
+P 24 504
+P 28 504
+P 32 504
+P 36 504
+P 40 504
+P 44 504
+P 48 504
+P 52 504
+P 56 504
+P 60 504
+P 64 504
+P 68 504
+P 68 516
+P 64 516
+P 60 516
+P 56 516
+P 52 516
+P 48 516
+P 44 516
+P 40 516
+P 36 516
+P 32 516
+P 28 516
+P 24 516
+P 32 522
+P 36 522
+P 40 522
+P 44 522
+P 48 522
+P 52 522
+P 56 522
+P 60 522
+P 64 522
+P 68 522
+P 68 534
+P 64 534
+P 60 534
+P 56 534
+P 52 534
+P 48 534
+P 44 534
+P 40 534
+P 36 534
+P 32 534
+P 32 542
+P 36 542
+P 40 542
+P 44 542
+P 48 542
+P 52 542
+P 56 542
+P 60 542
+P 64 542
+P 68 542
+P 68 554
+P 64 554
+P 60 554
+P 56 554
+P 52 554
+P 48 554
+P 44 554
+P 40 554
+P 36 554
+P 32 554
+P 84 524
+P 88 524
+P 92 524
+P 96 524
+P 100 524
+P 104 524
+P 108 524
+P 112 524
+P 112 536
+P 108 536
+P 104 536
+P 100 536
+P 96 536
+P 92 536
+P 88 536
+P 84 536
+P 84 542
+P 88 542
+P 92 542
+P 96 542
+P 100 542
+P 104 542
+P 108 542
+P 112 542
+P 112 554
+P 108 554
+P 104 554
+P 100 554
+P 96 554
+P 92 554
+P 88 554
+P 84 554
+P 84 504
+P 88 504
+P 92 504
+P 96 504
+P 100 504
+P 104 504
+P 108 504
+P 112 504
+P 116 504
+P 120 504
+P 124 504
+P 128 504
+P 128 516
+P 124 516
+P 120 516
+P 116 516
+P 112 516
+P 108 516
+P 104 516
+P 100 516
+P 96 516
+P 92 516
+P 88 516
+P 84 516
+P 144 146
+P 172 446
+P 172 466
+P 144 38
+P 156 38
+P 172 420
+P 172 432
+P 16 426
+P 20 426
+P 24 426
+P 28 426
+P 32 426
+P 36 426
+P 40 426
+P 44 426
+P 48 426
+P 52 426
+P 56 426
+P 60 426
+P 64 426
+P 68 426
+P 68 450
+P 64 450
+P 60 450
+P 56 450
+P 52 450
+P 48 450
+P 44 450
+P 40 450
+P 36 450
+P 32 450
+P 28 450
+P 24 450
+P 20 450
+P 16 450
+P 16 466
+P 20 466
+P 24 466
+P 28 466
+P 32 466
+P 36 466
+P 40 466
+P 44 466
+P 48 466
+P 52 466
+P 56 466
+P 60 466
+P 64 466
+P 68 466
+P 68 490
+P 64 490
+P 60 490
+P 56 490
+P 52 490
+P 48 490
+P 44 490
+P 40 490
+P 36 490
+P 32 490
+P 28 490
+P 24 490
+P 20 490
+P 16 490
+P 16 342
+P 20 342
+P 24 342
+P 28 342
+P 32 342
+P 36 342
+P 40 342
+P 44 342
+P 48 342
+P 52 342
+P 56 342
+P 60 342
+P 64 342
+P 68 342
+P 68 366
+P 64 366
+P 60 366
+P 56 366
+P 52 366
+P 48 366
+P 44 366
+P 40 366
+P 36 366
+P 32 366
+P 28 366
+P 24 366
+P 20 366
+P 16 366
+P 16 382
+P 20 382
+P 24 382
+P 28 382
+P 32 382
+P 36 382
+P 40 382
+P 44 382
+P 48 382
+P 52 382
+P 56 382
+P 60 382
+P 64 382
+P 68 382
+P 68 406
+P 64 406
+P 60 406
+P 56 406
+P 52 406
+P 48 406
+P 44 406
+P 40 406
+P 36 406
+P 32 406
+P 28 406
+P 24 406
+P 20 406
+P 16 406
+P 16 258
+P 20 258
+P 24 258
+P 28 258
+P 32 258
+P 36 258
+P 40 258
+P 44 258
+P 48 258
+P 52 258
+P 56 258
+P 60 258
+P 64 258
+P 68 258
+P 68 282
+P 64 282
+P 60 282
+P 56 282
+P 52 282
+P 48 282
+P 44 282
+P 40 282
+P 36 282
+P 32 282
+P 28 282
+P 24 282
+P 20 282
+P 16 282
+P 16 298
+P 20 298
+P 24 298
+P 28 298
+P 32 298
+P 36 298
+P 40 298
+P 44 298
+P 48 298
+P 52 298
+P 56 298
+P 60 298
+P 64 298
+P 68 298
+P 68 322
+P 64 322
+P 60 322
+P 56 322
+P 52 322
+P 48 322
+P 44 322
+P 40 322
+P 36 322
+P 32 322
+P 28 322
+P 24 322
+P 20 322
+P 16 322
+P 16 178
+P 20 178
+P 24 178
+P 28 178
+P 32 178
+P 36 178
+P 40 178
+P 44 178
+P 48 178
+P 52 178
+P 56 178
+P 60 178
+P 64 178
+P 68 178
+P 68 202
+P 64 202
+P 60 202
+P 56 202
+P 52 202
+P 48 202
+P 44 202
+P 40 202
+P 36 202
+P 32 202
+P 28 202
+P 24 202
+P 20 202
+P 16 202
+P 16 218
+P 20 218
+P 24 218
+P 28 218
+P 32 218
+P 36 218
+P 40 218
+P 44 218
+P 48 218
+P 52 218
+P 56 218
+P 60 218
+P 64 218
+P 68 218
+P 68 242
+P 64 242
+P 60 242
+P 56 242
+P 52 242
+P 48 242
+P 44 242
+P 40 242
+P 36 242
+P 32 242
+P 28 242
+P 24 242
+P 20 242
+P 16 242
+P 16 94
+P 20 94
+P 24 94
+P 28 94
+P 32 94
+P 36 94
+P 40 94
+P 44 94
+P 48 94
+P 52 94
+P 56 94
+P 60 94
+P 64 94
+P 68 94
+P 68 118
+P 64 118
+P 60 118
+P 56 118
+P 52 118
+P 48 118
+P 44 118
+P 40 118
+P 36 118
+P 32 118
+P 28 118
+P 24 118
+P 20 118
+P 16 118
+P 16 134
+P 20 134
+P 24 134
+P 28 134
+P 32 134
+P 36 134
+P 40 134
+P 44 134
+P 48 134
+P 52 134
+P 56 134
+P 60 134
+P 64 134
+P 68 134
+P 68 158
+P 64 158
+P 60 158
+P 56 158
+P 52 158
+P 48 158
+P 44 158
+P 40 158
+P 36 158
+P 32 158
+P 28 158
+P 24 158
+P 20 158
+P 16 158
+P 132 446
+P 132 450
+P 132 454
+P 132 458
+P 132 462
+P 132 466
+P 132 470
+P 132 474
+P 132 478
+P 132 482
+P 120 482
+P 120 478
+P 120 474
+P 120 470
+P 120 466
+P 120 462
+P 120 458
+P 120 454
+P 120 450
+P 120 446
+P 116 362
+P 116 366
+P 116 370
+P 116 374
+P 116 378
+P 116 382
+P 116 386
+P 116 390
+P 116 394
+P 116 398
+P 104 398
+P 104 394
+P 104 390
+P 104 386
+P 104 382
+P 104 378
+P 104 374
+P 104 370
+P 104 366
+P 104 362
+P 112 278
+P 112 282
+P 112 286
+P 112 290
+P 112 294
+P 112 298
+P 112 302
+P 112 306
+P 112 310
+P 112 314
+P 100 314
+P 100 310
+P 100 306
+P 100 302
+P 100 298
+P 100 294
+P 100 290
+P 100 286
+P 100 282
+P 100 278
+P 100 198
+P 100 202
+P 100 206
+P 100 210
+P 100 214
+P 100 218
+P 100 222
+P 100 226
+P 100 230
+P 100 234
+P 88 234
+P 88 230
+P 88 226
+P 88 222
+P 88 218
+P 88 214
+P 88 210
+P 88 206
+P 88 202
+P 88 198
+P 92 114
+P 92 118
+P 92 122
+P 92 126
+P 92 130
+P 92 134
+P 92 138
+P 92 142
+P 92 146
+P 92 150
+P 80 150
+P 80 146
+P 80 142
+P 80 138
+P 80 134
+P 80 130
+P 80 126
+P 80 122
+P 80 118
+P 80 114
+P 144 8
+P 140 8
+P 136 8
+P 132 8
+P 128 8
+P 124 8
+P 120 8
+P 116 8
+P 112 8
+P 108 8
+P 104 8
+P 100 8
+P 96 8
+P 92 8
+P 88 8
+P 84 8
+P 80 8
+P 76 8
+P 72 8
+P 68 8
+P 64 8
+P 60 8
+P 56 8
+P 52 8
+P 48 8
+P 44 8
+P 40 8
+P 36 8
+P 32 8
+P 28 8
+P 24 8
+P 20 8
+P 144 12
+P 140 12
+P 136 12
+P 132 12
+P 128 12
+P 124 12
+P 120 12
+P 116 12
+P 112 12
+P 108 12
+P 104 12
+P 100 12
+P 96 12
+P 92 12
+P 88 12
+P 84 12
+P 80 12
+P 76 12
+P 72 12
+P 68 12
+P 64 12
+P 60 12
+P 56 12
+P 52 12
+P 48 12
+P 44 12
+P 40 12
+P 36 12
+P 32 12
+P 28 12
+P 24 12
+P 20 12
+P 144 16
+P 140 16
+P 136 16
+P 132 16
+P 128 16
+P 124 16
+P 120 16
+P 116 16
+P 112 16
+P 108 16
+P 104 16
+P 100 16
+P 96 16
+P 92 16
+P 88 16
+P 84 16
+P 80 16
+P 76 16
+P 72 16
+P 68 16
+P 64 16
+P 60 16
+P 56 16
+P 52 16
+P 48 16
+P 44 16
+P 40 16
+P 36 16
+P 32 16
+P 28 16
+P 24 16
+P 20 16
+P 28 64
+P 28 60
+P 28 56
+P 156 60
+P 156 64
+P 156 68
+P 156 72
+P 156 76
+P 156 80
+P 156 84
+P 144 84
+P 144 80
+P 144 76
+P 144 72
+P 144 68
+P 144 64
+P 144 60
+P 156 96
+P 156 100
+P 156 104
+P 156 108
+P 156 112
+P 156 116
+P 156 120
+P 156 124
+P 144 124
+P 144 120
+P 144 116
+P 144 112
+P 144 108
+P 144 104
+P 144 100
+P 144 96
+J 384 150 396 180
+J 396 180 420 150
+J 220 222 220 240
+J 220 240 220 258
+J 220 258 220 276
+J 220 276 220 294
+J 220 294 220 312
+J 220 312 220 330
+J 220 330 220 348
+J 220 348 220 366
+J 220 366 220 384
+J 220 384 220 402
+J 220 402 220 420
+J 220 420 220 438
+J 220 438 220 456
+J 220 456 220 474
+J 220 474 220 492
+J 220 492 220 510
+J 220 510 220 528
+J 220 528 220 546
+J 220 546 220 564
+J 220 564 260 564
+J 260 564 260 546
+J 260 546 260 528
+J 260 528 260 510
+J 260 510 260 492
+J 260 492 260 474
+J 260 474 260 456
+J 260 456 260 438
+J 260 438 260 420
+J 260 420 260 402
+J 260 402 260 384
+J 260 384 260 366
+J 260 366 260 348
+J 260 348 260 330
+J 260 330 260 312
+J 260 312 260 294
+J 260 294 260 276
+J 260 276 260 258
+J 260 258 260 240
+J 260 240 260 222
+J 260 222 260 202
+J 260 202 234 192
+J 234 192 220 202
+J 220 202 460 202
+J 460 202 500 202
+J 444 100 456 154
+J 274 126 352 126
+J 352 126 432 126
+J 432 126 510 126
+J 510 126 528 72
+J 224 360 224 378
+J 224 378 264 378
+J 264 378 264 360
+J 264 360 304 360
+J 304 360 304 378
+J 304 378 344 378
+J 344 378 344 360
+J 344 360 384 360
+J 384 360 384 378
+J 384 378 424 378
+J 424 378 424 360
+J 424 360 464 360
+J 464 360 464 378
+J 464 378 504 378
+J 504 378 504 360
+J 504 360 536 330
+J 536 330 304 234
+J 338 12 376 84
+J 302 88 400 8
+J 400 8 456 96
+J 384 134 420 134
+J 420 134 408 180
+J 240 234 240 252
+J 240 252 240 270
+J 240 270 240 288
+J 240 288 240 306
+J 240 306 240 324
+J 240 324 240 342
+J 240 342 240 360
+J 240 360 240 378
+J 240 378 240 396
+J 240 396 240 414
+J 240 414 240 432
+J 240 432 240 450
+J 240 450 240 468
+J 240 468 240 486
+J 240 486 240 504
+J 240 504 240 522
+J 240 522 240 540
+J 240 540 240 558
+J 240 558 240 576
+J 240 576 280 576
+J 280 576 280 558
+J 280 558 280 540
+J 280 540 280 522
+J 280 522 280 504
+J 280 504 280 486
+J 280 486 280 468
+J 280 468 280 450
+J 280 450 280 432
+J 280 432 280 414
+J 280 414 280 396
+J 280 396 280 378
+J 280 378 280 360
+J 280 360 280 342
+J 280 342 280 324
+J 280 324 280 306
+J 280 306 280 288
+J 280 288 280 270
+J 280 270 280 252
+J 280 252 280 234
+J 280 234 280 214
+J 280 214 254 192
+J 254 192 240 214
+J 240 214 480 214
+J 480 214 520 214
+J 444 154 444 84
+J 104 8 112 290
+J 404 8 456 100
+J 354 12 392 8
+J 392 8 376 68
+J 192 376 228 214
+J 228 214 268 214
+J 268 214 308 214
+J 308 214 348 214
+J 348 214 388 214
+J 388 214 428 214
+J 428 214 468 214
+J 468 214 508 214
+J 460 222 460 240
+J 460 240 460 258
+J 460 258 460 276
+J 460 276 460 294
+J 460 294 460 312
+J 460 312 460 330
+J 460 330 460 348
+J 460 348 460 366
+J 460 366 460 384
+J 460 384 460 402
+J 460 402 460 420
+J 460 420 460 438
+J 460 438 460 456
+J 460 456 460 474
+J 460 474 460 492
+J 460 492 460 510
+J 460 510 460 528
+J 460 528 460 546
+J 460 546 460 564
+J 460 564 500 564
+J 500 564 500 546
+J 500 546 500 528
+J 500 528 500 510
+J 500 510 500 492
+J 500 492 500 474
+J 500 474 500 456
+J 500 456 500 438
+J 500 438 500 420
+J 500 420 500 402
+J 500 402 500 384
+J 500 384 500 366
+J 500 366 500 348
+J 500 348 500 330
+J 500 330 500 312
+J 500 312 500 294
+J 500 294 500 276
+J 500 276 500 258
+J 500 258 500 240
+J 500 240 500 222
+J 500 222 474 192
+J 192 372 228 396
+J 228 396 268 396
+J 268 396 308 396
+J 308 396 348 396
+J 348 396 388 396
+J 388 396 428 396
+J 428 396 468 396
+J 468 396 508 396
+J 508 396 508 576
+J 508 576 468 576
+J 468 576 428 576
+J 428 576 388 576
+J 388 576 348 576
+J 348 576 308 576
+J 308 576 268 576
+J 268 576 228 576
+J 236 222 236 240
+J 236 240 236 258
+J 236 258 236 276
+J 236 276 236 294
+J 236 294 236 312
+J 236 312 236 330
+J 236 330 236 348
+J 236 348 236 366
+J 236 366 236 384
+J 236 384 236 402
+J 236 402 236 420
+J 236 420 236 438
+J 236 438 236 456
+J 236 456 236 474
+J 236 474 236 492
+J 236 492 236 510
+J 236 510 236 528
+J 236 528 236 546
+J 236 546 236 564
+J 236 564 276 564
+J 276 564 276 546
+J 276 546 276 528
+J 276 528 276 510
+J 276 510 276 492
+J 276 492 276 474
+J 276 474 276 456
+J 276 456 276 438
+J 276 438 276 420
+J 276 420 276 402
+J 276 402 276 384
+J 276 384 276 366
+J 276 366 276 348
+J 276 348 276 330
+J 276 330 276 312
+J 276 312 276 294
+J 276 294 276 276
+J 276 276 276 258
+J 276 258 276 240
+J 276 240 276 222
+J 276 222 276 202
+J 276 202 242 192
+J 242 192 236 202
+J 236 202 476 202
+J 476 202 516 202
+J 340 96 476 90
+J 476 90 532 90
+J 532 90 540 72
+J 172 40 224 384
+J 224 384 264 384
+J 264 384 304 384
+J 304 384 344 384
+J 344 384 384 384
+J 384 384 424 384
+J 424 384 464 384
+J 464 384 504 384
+J 504 384 504 564
+J 504 564 464 564
+J 464 564 424 564
+J 424 564 384 564
+J 384 564 344 564
+J 344 564 304 564
+J 304 564 264 564
+J 264 564 224 564
+J 112 8 116 390
+J 478 64 512 8
+J 236 68 512 102
+J 512 102 568 102
+J 224 576 264 576
+J 264 576 304 576
+J 304 576 344 576
+J 344 576 384 576
+J 384 576 424 576
+J 424 576 464 576
+J 464 576 504 576
+J 504 576 536 508
+J 60 178 60 218
+J 60 218 88 218
+J 480 234 480 252
+J 480 252 480 270
+J 480 270 480 288
+J 480 288 480 306
+J 480 306 480 324
+J 480 324 480 342
+J 480 342 480 360
+J 480 360 480 378
+J 480 378 480 396
+J 480 396 480 414
+J 480 414 480 432
+J 480 432 480 450
+J 480 450 480 468
+J 480 468 480 486
+J 480 486 480 504
+J 480 504 480 522
+J 480 522 480 540
+J 480 540 480 558
+J 480 558 480 576
+J 480 576 520 576
+J 520 576 520 558
+J 520 558 520 540
+J 520 540 520 522
+J 520 522 520 504
+J 520 504 520 486
+J 520 486 520 468
+J 520 468 520 450
+J 520 450 520 432
+J 520 432 520 414
+J 520 414 520 396
+J 520 396 520 378
+J 520 378 520 360
+J 520 360 520 342
+J 520 342 520 324
+J 520 324 520 306
+J 520 306 520 288
+J 520 288 520 270
+J 520 270 520 252
+J 520 252 520 234
+J 520 234 494 192
+J 116 374 120 8
+J 16 426 16 466
+J 16 466 16 382
+J 16 382 16 342
+J 16 342 16 298
+J 16 298 16 258
+J 16 258 16 218
+J 16 218 16 178
+J 16 178 16 134
+J 16 134 16 94
+J 16 94 36 12
+J 302 80 364 100
+J 364 100 456 88
+J 456 88 564 102
+J 564 102 564 158
+J 564 158 544 158
+J 544 158 552 180
+J 502 52 520 8
+J 302 76 364 96
+J 364 96 456 84
+J 456 84 560 102
+J 68 282 68 322
+J 68 322 100 314
+J 476 222 476 240
+J 476 240 476 258
+J 476 258 476 276
+J 476 276 476 294
+J 476 294 476 312
+J 476 312 476 330
+J 476 330 476 348
+J 476 348 476 366
+J 476 366 476 384
+J 476 384 476 402
+J 476 402 476 420
+J 476 420 476 438
+J 476 438 476 456
+J 476 456 476 474
+J 476 474 476 492
+J 476 492 476 510
+J 476 510 476 528
+J 476 528 476 546
+J 476 546 476 564
+J 476 564 516 564
+J 516 564 516 546
+J 516 546 516 528
+J 516 528 516 510
+J 516 510 516 492
+J 516 492 516 474
+J 516 474 516 456
+J 516 456 516 438
+J 516 438 516 420
+J 516 420 516 402
+J 516 402 516 384
+J 516 384 516 366
+J 516 366 516 348
+J 516 348 516 330
+J 516 330 516 312
+J 516 312 516 294
+J 516 294 516 276
+J 516 276 516 258
+J 516 258 516 240
+J 516 240 516 222
+J 516 222 482 192
+J 204 284 210 48
+J 210 48 500 12
+J 352 80 488 102
+J 488 102 544 102
+J 544 102 540 44
+J 308 158 318 180
+J 318 180 340 158
+J 274 154 352 154
+J 352 154 364 80
+J 364 80 432 154
+J 432 154 510 154
+J 510 154 504 102
+J 184 52 224 366
+J 224 366 264 366
+J 264 366 304 366
+J 304 366 344 366
+J 344 366 384 366
+J 384 366 424 366
+J 424 366 464 366
+J 464 366 504 366
+J 504 366 504 546
+J 504 546 464 546
+J 464 546 424 546
+J 424 546 384 546
+J 384 546 344 546
+J 344 546 304 546
+J 304 546 264 546
+J 264 546 224 546
+J 242 142 320 142
+J 320 142 396 142
+J 396 142 480 142
+J 480 142 554 72
+J 184 48 448 8
+J 448 8 204 380
+J 308 142 340 142
+J 340 142 338 180
+J 56 342 56 382
+J 56 382 104 374
+J 552 154 568 500
+J 568 500 568 504
+J 568 504 568 516
+J 548 404 568 400
+J 242 126 320 126
+J 320 126 396 126
+J 396 126 480 126
+J 480 126 566 44
+J 308 126 340 126
+J 340 126 326 180
+J 64 426 64 466
+J 64 466 120 474
+J 64 12 92 146
+J 240 56 246 12
+J 392 234 392 252
+J 392 252 392 270
+J 392 270 392 288
+J 392 288 392 306
+J 392 306 392 324
+J 392 324 392 342
+J 392 342 392 360
+J 392 360 392 378
+J 392 378 392 396
+J 392 396 392 414
+J 392 414 392 432
+J 392 432 392 450
+J 392 450 392 468
+J 392 468 392 486
+J 392 486 392 504
+J 392 504 392 522
+J 392 522 392 540
+J 392 540 392 558
+J 392 558 392 576
+J 392 576 432 576
+J 432 576 432 558
+J 432 558 432 540
+J 432 540 432 522
+J 432 522 432 504
+J 432 504 432 486
+J 432 486 432 468
+J 432 468 432 450
+J 432 450 432 432
+J 432 432 432 414
+J 432 414 432 396
+J 432 396 432 378
+J 432 378 432 360
+J 432 360 432 342
+J 432 342 432 324
+J 432 324 432 306
+J 432 306 432 288
+J 432 288 432 270
+J 432 270 432 252
+J 432 252 432 234
+J 432 234 432 214
+J 432 214 392 214
+J 392 214 396 192
+J 444 134 448 180
+J 302 96 456 104
+J 456 104 478 72
+J 56 426 56 466
+J 56 466 120 458
+J 72 12 92 130
+J 210 40 224 258
+J 224 258 264 258
+J 264 258 304 258
+J 304 258 344 258
+J 344 258 384 258
+J 384 258 424 258
+J 424 258 464 258
+J 464 258 504 258
+J 504 258 504 438
+J 504 438 464 438
+J 464 438 424 438
+J 424 438 384 438
+J 384 438 344 438
+J 344 438 304 438
+J 304 438 264 438
+J 264 438 224 438
+J 400 222 400 240
+J 400 240 400 258
+J 400 258 400 276
+J 400 276 400 294
+J 400 294 400 312
+J 400 312 400 330
+J 400 330 400 348
+J 400 348 400 366
+J 400 366 400 384
+J 400 384 400 402
+J 400 402 400 420
+J 400 420 400 438
+J 400 438 400 456
+J 400 456 400 474
+J 400 474 400 492
+J 400 492 400 510
+J 400 510 400 528
+J 400 528 400 546
+J 400 546 400 564
+J 400 564 440 564
+J 440 564 440 546
+J 440 546 440 528
+J 440 528 440 510
+J 440 510 440 492
+J 440 492 440 474
+J 440 474 440 456
+J 440 456 440 438
+J 440 438 440 420
+J 440 420 440 402
+J 440 402 440 384
+J 440 384 440 366
+J 440 366 440 348
+J 440 348 440 330
+J 440 330 440 312
+J 440 312 440 294
+J 440 294 440 276
+J 440 276 440 258
+J 440 258 440 240
+J 440 240 440 222
+J 440 222 440 202
+J 440 202 408 192
+J 408 192 400 202
+J 28 60 156 60
+J 156 60 156 96
+J 80 12 100 230
+J 116 370 124 12
+J 290 96 296 142
+J 514 68 528 12
+J 290 108 328 96
+J 328 96 444 116
+J 444 116 504 90
+J 504 90 490 60
+J 490 60 560 90
+J 560 90 564 138
+J 564 138 544 138
+J 544 138 532 180
+J 132 470 132 12
+J 284 142 290 80
+J 528 48 536 12
+J 468 222 468 240
+J 468 240 468 258
+J 468 258 468 276
+J 468 276 468 294
+J 468 294 468 312
+J 468 312 468 330
+J 468 330 468 348
+J 468 348 468 366
+J 468 366 468 384
+J 468 384 468 402
+J 468 402 468 420
+J 468 420 468 438
+J 468 438 468 456
+J 468 456 468 474
+J 468 474 468 492
+J 468 492 468 510
+J 468 510 468 528
+J 468 528 468 546
+J 468 546 468 564
+J 468 564 536 388
+J 536 388 468 202
+J 204 372 228 360
+J 228 360 268 360
+J 268 360 308 360
+J 308 360 348 360
+J 348 360 388 360
+J 388 360 428 360
+J 428 360 468 360
+J 468 360 508 360
+J 508 360 508 540
+J 508 540 468 540
+J 468 540 428 540
+J 428 540 388 540
+J 388 540 348 540
+J 348 540 308 540
+J 308 540 268 540
+J 268 540 228 540
+J 228 540 308 234
+J 52 282 52 322
+J 52 322 100 286
+J 548 318 568 328
+J 132 454 140 12
+J 540 68 544 12
+J 328 68 492 90
+J 492 90 502 56
+J 502 56 548 90
+J 256 56 298 8
+J 60 366 60 406
+J 60 406 104 386
+J 32 426 32 466
+J 32 466 32 382
+J 32 382 32 342
+J 32 342 32 298
+J 32 298 32 258
+J 32 258 32 218
+J 32 218 32 178
+J 32 178 32 134
+J 32 134 32 94
+J 32 94 44 8
+J 300 222 300 240
+J 300 240 300 258
+J 300 258 300 276
+J 300 276 300 294
+J 300 294 300 312
+J 300 312 300 330
+J 300 330 300 348
+J 300 348 300 366
+J 300 366 300 384
+J 300 384 300 402
+J 300 402 300 420
+J 300 420 300 438
+J 300 438 300 456
+J 300 456 300 474
+J 300 474 300 492
+J 300 492 300 510
+J 300 510 300 528
+J 300 528 300 546
+J 300 546 300 564
+J 300 564 340 564
+J 340 564 340 546
+J 340 546 340 528
+J 340 528 340 510
+J 340 510 340 492
+J 340 492 340 474
+J 340 474 340 456
+J 340 456 340 438
+J 340 438 340 420
+J 340 420 340 402
+J 340 402 340 384
+J 340 384 340 366
+J 340 366 340 348
+J 340 348 340 330
+J 340 330 340 312
+J 340 312 340 294
+J 340 294 340 276
+J 340 276 340 258
+J 340 258 340 240
+J 340 240 340 222
+J 340 222 340 202
+J 340 202 318 192
+J 318 192 300 202
+J 552 134 556 332
+J 224 234 224 252
+J 224 252 264 252
+J 264 252 264 234
+J 264 234 304 252
+J 304 252 344 252
+J 344 252 344 234
+J 344 234 384 234
+J 384 234 384 252
+J 384 252 424 252
+J 424 252 424 234
+J 424 234 464 234
+J 464 234 464 252
+J 464 252 504 252
+J 504 252 504 234
+J 504 234 536 310
+J 314 8 328 88
+J 32 450 32 490
+J 32 490 32 406
+J 32 406 32 366
+J 32 366 32 322
+J 32 322 32 282
+J 32 282 32 242
+J 32 242 32 202
+J 32 202 32 158
+J 32 158 32 118
+J 32 118 52 8
+J 320 234 320 252
+J 320 252 320 270
+J 320 270 320 288
+J 320 288 320 306
+J 320 306 320 324
+J 320 324 320 342
+J 320 342 320 360
+J 320 360 320 378
+J 320 378 320 396
+J 320 396 320 414
+J 320 414 320 432
+J 320 432 320 450
+J 320 450 320 468
+J 320 468 320 486
+J 320 486 320 504
+J 320 504 320 522
+J 320 522 320 540
+J 320 540 320 558
+J 320 558 320 576
+J 320 576 360 576
+J 360 576 360 558
+J 360 558 360 540
+J 360 540 360 522
+J 360 522 360 504
+J 360 504 360 486
+J 360 486 360 468
+J 360 468 360 450
+J 360 450 360 432
+J 360 432 360 414
+J 360 414 360 396
+J 360 396 360 378
+J 360 378 360 360
+J 360 360 360 342
+J 360 342 360 324
+J 360 324 360 306
+J 360 306 360 288
+J 360 288 360 270
+J 360 270 360 252
+J 360 252 360 234
+J 360 234 360 214
+J 360 214 338 192
+J 338 192 320 214
+J 204 264 228 252
+J 228 252 268 252
+J 268 252 308 252
+J 308 252 348 252
+J 348 252 388 252
+J 388 252 428 252
+J 428 252 468 252
+J 468 252 508 252
+J 508 252 508 432
+J 508 432 468 432
+J 468 432 428 432
+J 428 432 388 432
+J 388 432 348 432
+J 348 432 308 432
+J 308 432 268 432
+J 268 432 228 432
+J 52 426 52 466
+J 52 466 52 382
+J 52 382 52 342
+J 52 342 52 298
+J 52 298 52 258
+J 52 258 52 218
+J 52 218 52 178
+J 52 178 52 134
+J 52 134 52 94
+J 52 94 60 8
+J 316 222 316 240
+J 316 240 316 258
+J 316 258 316 276
+J 316 276 316 294
+J 316 294 316 312
+J 316 312 316 330
+J 316 330 316 348
+J 316 348 316 366
+J 316 366 316 384
+J 316 384 316 402
+J 316 402 316 420
+J 316 420 316 438
+J 316 438 316 456
+J 316 456 316 474
+J 316 474 316 492
+J 316 492 316 510
+J 316 510 316 528
+J 316 528 316 546
+J 316 546 316 564
+J 316 564 356 564
+J 356 564 356 546
+J 356 546 356 528
+J 356 528 356 510
+J 356 510 356 492
+J 356 492 356 474
+J 356 474 356 456
+J 356 456 356 438
+J 356 438 356 420
+J 356 420 356 402
+J 356 402 356 384
+J 356 384 356 366
+J 356 366 356 348
+J 356 348 356 330
+J 356 330 356 312
+J 356 312 356 294
+J 356 294 356 276
+J 356 276 356 258
+J 356 258 356 240
+J 356 240 356 222
+J 356 222 356 202
+J 356 202 326 192
+J 326 192 316 202
+J 552 12 554 48
+J 230 154 262 154
+J 262 154 266 180
+J 478 56 544 142
+J 544 142 548 180
+J 464 12 544 154
+J 544 154 564 150
+J 224 396 264 396
+J 264 396 304 396
+J 304 396 344 396
+J 344 396 384 396
+J 384 396 424 396
+J 424 396 464 396
+J 464 396 504 396
+J 504 396 536 322
+J 84 8 100 218
+J 456 146 460 180
+J 352 202 448 192
+J 560 12 566 68
+J 230 138 262 138
+J 262 138 246 180
+J 548 314 568 324
+J 92 8 100 202
+J 468 154 498 154
+J 498 154 506 180
+J 64 94 64 134
+J 64 134 80 142
+J 224 486 264 486
+J 264 486 304 486
+J 304 486 344 486
+J 344 486 384 486
+J 384 486 424 486
+J 424 486 464 486
+J 464 486 504 486
+J 504 486 536 504
+J 224 324 224 342
+J 224 342 264 342
+J 264 342 264 324
+J 264 324 304 324
+J 304 324 304 342
+J 304 342 344 342
+J 344 342 344 324
+J 344 324 384 324
+J 384 324 384 342
+J 384 342 424 342
+J 424 342 424 324
+J 424 324 464 324
+J 464 324 464 342
+J 464 342 504 342
+J 504 342 504 324
+J 504 324 536 326
+J 100 8 112 298
+J 468 138 498 138
+J 498 138 486 180
+J 56 94 56 134
+J 56 134 80 126
+J 322 8 328 72
+J 172 48 492 8
+J 492 8 192 380
+J 548 408 568 396
+J 338 8 340 92
+J 352 72 354 8
+J 250 80 256 106
+J 340 84 480 90
+J 480 90 514 72
+J 514 72 536 90
+J 456 134 464 180
+J 284 134 288 180
+J 274 138 352 138
+J 352 138 432 138
+J 432 138 510 138
+J 510 138 528 44
+J 326 12 376 96
+J 384 146 420 146
+J 420 146 420 180
+J 532 158 556 320
+J 248 234 248 252
+J 248 252 248 270
+J 248 270 248 288
+J 248 288 248 306
+J 248 306 248 324
+J 248 324 248 342
+J 248 342 248 360
+J 248 360 248 378
+J 248 378 248 396
+J 248 396 248 414
+J 248 414 248 432
+J 248 432 248 450
+J 248 450 248 468
+J 248 468 248 486
+J 248 486 248 504
+J 248 504 248 522
+J 248 522 248 540
+J 248 540 248 558
+J 248 558 248 576
+J 248 576 288 576
+J 288 576 288 558
+J 288 558 288 540
+J 288 540 288 522
+J 288 522 288 504
+J 288 504 288 486
+J 288 486 288 468
+J 288 468 288 450
+J 288 450 288 432
+J 288 432 288 414
+J 288 414 288 396
+J 288 396 288 378
+J 288 378 288 360
+J 288 360 288 342
+J 288 342 288 324
+J 288 324 288 306
+J 288 306 288 288
+J 288 288 288 270
+J 288 270 288 252
+J 288 252 288 234
+J 288 234 288 214
+J 288 214 266 192
+J 266 192 248 214
+J 248 214 488 214
+J 488 214 528 214
+J 444 96 456 158
+J 342 12 376 80
+J 302 84 388 8
+J 388 8 456 92
+J 384 130 420 130
+J 420 130 416 180
+J 460 192 472 202
+J 428 222 428 240
+J 428 240 428 258
+J 428 258 428 276
+J 428 276 428 294
+J 428 294 428 312
+J 428 312 428 330
+J 428 330 428 348
+J 428 348 428 366
+J 428 366 428 384
+J 428 384 428 402
+J 428 402 428 420
+J 428 420 428 438
+J 428 438 428 456
+J 428 456 428 474
+J 428 474 428 492
+J 428 492 428 510
+J 428 510 428 528
+J 428 528 428 546
+J 428 546 428 564
+J 428 564 536 392
+J 536 392 428 202
+J 236 234 236 252
+J 236 252 236 270
+J 236 270 236 288
+J 236 288 236 306
+J 236 306 236 324
+J 236 324 236 342
+J 236 342 236 360
+J 236 360 236 378
+J 236 378 236 396
+J 236 396 236 414
+J 236 414 236 432
+J 236 432 236 450
+J 236 450 236 468
+J 236 468 236 486
+J 236 486 236 504
+J 236 504 236 522
+J 236 522 236 540
+J 236 540 236 558
+J 236 558 236 576
+J 236 576 276 576
+J 276 576 276 558
+J 276 558 276 540
+J 276 540 276 522
+J 276 522 276 504
+J 276 504 276 486
+J 276 486 276 468
+J 276 468 276 450
+J 276 450 276 432
+J 276 432 276 414
+J 276 414 276 396
+J 276 396 276 378
+J 276 378 276 360
+J 276 360 276 342
+J 276 342 276 324
+J 276 324 276 306
+J 276 306 276 288
+J 276 288 276 270
+J 276 270 276 252
+J 276 252 276 234
+J 276 234 276 214
+J 276 214 246 192
+J 246 192 236 214
+J 236 214 476 214
+J 476 214 516 214
+J 444 158 444 80
+J 108 12 112 286
+J 488 234 488 252
+J 488 252 488 270
+J 488 270 488 288
+J 488 288 488 306
+J 488 306 488 324
+J 488 324 488 342
+J 488 342 488 360
+J 488 360 488 378
+J 488 378 488 396
+J 488 396 488 414
+J 488 414 488 432
+J 488 432 488 450
+J 488 450 488 468
+J 488 468 488 486
+J 488 486 488 504
+J 488 504 488 522
+J 488 522 488 540
+J 488 540 488 558
+J 488 558 488 576
+J 488 576 528 576
+J 528 576 528 558
+J 528 558 528 540
+J 528 540 528 522
+J 528 522 528 504
+J 528 504 528 486
+J 528 486 528 468
+J 528 468 528 450
+J 528 450 528 432
+J 528 432 528 414
+J 528 414 528 396
+J 528 396 528 378
+J 528 378 528 360
+J 528 360 528 342
+J 528 342 528 324
+J 528 324 528 306
+J 528 306 528 288
+J 528 288 528 270
+J 528 270 528 252
+J 528 252 528 234
+J 528 234 506 192
+J 28 12 28 56
+J 352 96 480 102
+J 480 102 536 102
+J 536 102 540 60
+J 28 8 28 64
+J 116 386 116 12
+J 478 68 516 12
+J 284 192 312 222
+J 312 222 312 240
+J 312 240 312 258
+J 312 258 312 276
+J 312 276 312 294
+J 312 294 312 312
+J 312 312 312 330
+J 312 330 312 348
+J 312 348 312 366
+J 312 366 312 384
+J 312 384 312 402
+J 312 402 312 420
+J 312 420 312 438
+J 312 438 312 456
+J 312 456 312 474
+J 312 474 312 492
+J 312 492 312 510
+J 312 510 312 528
+J 312 528 312 546
+J 312 546 312 564
+J 56 202 88 214
+J 88 214 56 242
+J 476 234 476 252
+J 476 252 476 270
+J 476 270 476 288
+J 476 288 476 306
+J 476 306 476 324
+J 476 324 476 342
+J 476 342 476 360
+J 476 360 476 378
+J 476 378 476 396
+J 476 396 476 414
+J 476 414 476 432
+J 476 432 476 450
+J 476 450 476 468
+J 476 468 476 486
+J 476 486 476 504
+J 476 504 476 522
+J 476 522 476 540
+J 476 540 476 558
+J 476 558 476 576
+J 476 576 516 576
+J 516 576 516 558
+J 516 558 516 540
+J 516 540 516 522
+J 516 522 516 504
+J 516 504 516 486
+J 516 486 516 468
+J 516 468 516 450
+J 516 450 516 432
+J 516 432 516 414
+J 516 414 516 396
+J 516 396 516 378
+J 516 378 516 360
+J 516 360 516 342
+J 516 342 516 324
+J 516 324 516 306
+J 516 306 516 288
+J 516 288 516 270
+J 516 270 516 252
+J 516 252 516 234
+J 516 234 486 192
+J 20 426 20 466
+J 20 466 20 382
+J 20 382 20 342
+J 20 342 20 298
+J 20 298 20 258
+J 20 258 20 218
+J 20 218 20 178
+J 20 178 20 134
+J 20 134 20 94
+J 20 94 36 8
+J 502 64 524 12
+J 302 72 364 92
+J 364 92 456 80
+J 456 80 556 102
+J 64 282 64 322
+J 64 322 100 310
+J 204 272 210 44
+J 210 44 504 12
+J 92 114 156 68
+J 156 68 100 198
+J 100 198 112 278
+J 112 278 116 362
+J 116 362 132 446
+J 468 12 564 134
+J 564 134 544 162
+J 352 68 492 102
+J 492 102 548 102
+J 548 102 554 44
+J 436 180 444 162
+J 308 154 340 154
+J 340 154 350 180
+J 242 158 320 158
+J 320 158 396 158
+J 396 158 480 158
+J 480 158 500 102
+J 500 102 364 76
+J 184 40 304 222
+J 304 222 304 348
+J 304 348 264 348
+J 264 348 224 348
+J 224 348 344 348
+J 344 348 384 348
+J 384 348 424 348
+J 424 348 464 348
+J 464 348 504 348
+J 504 348 504 528
+J 504 528 464 528
+J 464 528 424 528
+J 424 528 384 528
+J 384 528 344 528
+J 344 528 304 528
+J 304 528 264 528
+J 264 528 224 528
+J 248 68 364 68
+J 242 138 320 138
+J 320 138 396 138
+J 396 138 480 138
+J 480 138 566 72
+J 184 44 444 12
+J 444 12 204 368
+J 308 138 340 138
+J 340 138 330 180
+J 52 366 52 406
+J 52 406 104 370
+J 552 158 568 316
+J 568 316 568 320
+J 568 320 568 332
+J 240 68 420 20
+J 464 192 512 202
+J 296 146 300 180
+J 60 450 60 490
+J 60 490 120 470
+J 64 8 92 142
+J 404 234 404 252
+J 404 252 404 270
+J 404 270 404 288
+J 404 288 404 306
+J 404 306 404 324
+J 404 324 404 342
+J 404 342 404 360
+J 404 360 404 378
+J 404 378 404 396
+J 404 396 404 414
+J 404 414 404 432
+J 404 432 404 450
+J 404 450 404 468
+J 404 468 404 486
+J 404 486 404 504
+J 404 504 404 522
+J 404 522 404 540
+J 404 540 404 558
+J 404 558 404 576
+J 404 576 444 576
+J 444 576 444 558
+J 444 558 444 540
+J 444 540 444 522
+J 444 522 444 504
+J 444 504 444 486
+J 444 486 444 468
+J 444 468 444 450
+J 444 450 444 432
+J 444 432 444 414
+J 444 414 444 396
+J 444 396 444 378
+J 444 378 444 360
+J 444 360 444 342
+J 444 342 444 324
+J 444 324 444 306
+J 444 306 444 288
+J 444 288 444 270
+J 444 270 444 252
+J 444 252 444 234
+J 444 234 444 214
+J 444 214 420 192
+J 420 192 404 214
+J 490 72 544 150
+J 544 150 564 142
+J 52 450 52 490
+J 52 490 120 454
+J 72 8 92 126
+J 210 36 224 240
+J 224 240 264 240
+J 264 240 304 240
+J 304 240 344 240
+J 344 240 384 240
+J 384 240 424 240
+J 424 240 464 240
+J 464 240 504 240
+J 504 240 504 420
+J 504 420 464 420
+J 464 420 424 420
+J 424 420 384 420
+J 384 420 344 420
+J 344 420 304 420
+J 304 420 264 420
+J 264 420 224 420
+J 284 146 284 180
+J 204 252 204 348
+J 204 348 556 192
+J 404 222 404 240
+J 404 240 404 258
+J 404 258 404 276
+J 404 276 404 294
+J 404 294 404 312
+J 404 312 404 330
+J 404 330 404 348
+J 404 348 404 366
+J 404 366 404 384
+J 404 384 404 402
+J 404 402 404 420
+J 404 420 404 438
+J 404 438 404 456
+J 404 456 404 474
+J 404 474 404 492
+J 404 492 404 510
+J 404 510 404 528
+J 404 528 404 546
+J 404 546 404 564
+J 404 564 444 564
+J 444 564 444 546
+J 444 546 444 528
+J 444 528 444 510
+J 444 510 444 492
+J 444 492 444 474
+J 444 474 444 456
+J 444 456 444 438
+J 444 438 444 420
+J 444 420 444 402
+J 444 402 444 384
+J 444 384 444 366
+J 444 366 444 348
+J 444 348 444 330
+J 444 330 444 312
+J 444 312 444 294
+J 444 294 444 276
+J 444 276 444 258
+J 444 258 444 240
+J 444 240 444 222
+J 444 222 444 202
+J 444 202 416 192
+J 416 192 404 202
+J 172 56 198 56
+J 198 56 432 84
+J 548 412 568 384
+J 80 8 100 226
+J 116 366 124 8
+J 290 92 296 154
+J 514 64 528 8
+J 60 258 60 298
+J 60 298 100 298
+J 296 192 432 222
+J 432 222 432 240
+J 432 240 432 258
+J 432 258 432 276
+J 432 276 432 294
+J 432 294 432 312
+J 432 312 432 330
+J 432 330 432 348
+J 432 348 432 366
+J 432 366 432 384
+J 432 384 432 402
+J 432 402 432 420
+J 432 420 432 438
+J 432 438 432 456
+J 432 456 432 474
+J 432 474 432 492
+J 432 492 432 510
+J 432 510 432 528
+J 432 528 432 546
+J 432 546 432 564
+J 132 466 132 8
+J 548 310 568 312
+J 284 154 290 76
+J 528 52 536 8
+J 412 64 432 64
+J 432 64 472 12
+J 228 342 268 342
+J 268 342 308 342
+J 308 342 348 342
+J 348 342 388 342
+J 388 342 428 342
+J 428 342 468 342
+J 468 342 508 342
+J 508 342 508 522
+J 508 522 468 522
+J 468 522 428 522
+J 428 522 388 522
+J 388 522 348 522
+J 348 522 308 522
+J 308 522 268 522
+J 268 522 228 522
+J 68 366 68 406
+J 68 406 104 398
+J 132 450 140 8
+J 540 64 544 8
+J 272 222 272 240
+J 272 240 272 258
+J 272 258 272 276
+J 272 276 272 294
+J 272 294 272 312
+J 272 312 272 330
+J 272 330 272 348
+J 272 348 272 366
+J 272 366 272 384
+J 272 384 272 402
+J 272 402 272 420
+J 272 420 272 438
+J 272 438 272 456
+J 272 456 272 474
+J 272 474 272 492
+J 272 492 272 510
+J 272 510 272 528
+J 272 528 272 546
+J 272 546 272 564
+J 272 564 280 192
+J 252 56 302 8
+J 60 342 60 382
+J 60 382 104 382
+J 232 202 436 192
+J 36 426 36 466
+J 36 466 36 382
+J 36 382 36 342
+J 36 342 36 298
+J 36 298 36 258
+J 36 258 36 218
+J 36 218 36 178
+J 36 178 36 134
+J 36 134 36 94
+J 36 94 48 12
+J 328 234 328 252
+J 328 252 328 270
+J 328 270 328 288
+J 328 288 328 306
+J 328 306 328 324
+J 328 324 328 342
+J 328 342 328 360
+J 328 360 328 378
+J 328 378 328 396
+J 328 396 328 414
+J 328 414 328 432
+J 328 432 328 450
+J 328 450 328 468
+J 328 468 328 486
+J 328 486 328 504
+J 328 504 328 522
+J 328 522 328 540
+J 328 540 328 558
+J 328 558 328 576
+J 328 576 368 576
+J 368 576 368 558
+J 368 558 368 540
+J 368 540 368 522
+J 368 522 368 504
+J 368 504 368 486
+J 368 486 368 468
+J 368 468 368 450
+J 368 450 368 432
+J 368 432 368 414
+J 368 414 368 396
+J 368 396 368 378
+J 368 378 368 360
+J 368 360 368 342
+J 368 342 368 324
+J 368 324 368 306
+J 368 306 368 288
+J 368 288 368 270
+J 368 270 368 252
+J 368 252 368 234
+J 368 234 368 214
+J 368 214 350 192
+J 350 192 328 214
+J 548 334 556 324
+J 284 166 412 72
+J 412 72 432 80
+J 432 80 444 166
+J 444 166 544 130
+J 544 130 564 130
+J 192 280 228 306
+J 228 306 268 306
+J 268 306 308 306
+J 308 306 348 306
+J 348 306 388 306
+J 388 306 428 306
+J 428 306 468 306
+J 468 306 508 306
+J 508 306 508 486
+J 508 486 468 486
+J 468 486 428 486
+J 428 486 388 486
+J 388 486 348 486
+J 348 486 308 486
+J 308 486 268 486
+J 268 486 228 486
+J 44 426 44 466
+J 44 466 44 382
+J 44 382 44 342
+J 44 342 44 298
+J 44 298 44 258
+J 44 258 44 218
+J 44 218 44 178
+J 44 178 44 134
+J 44 134 44 94
+J 44 94 56 12
+J 316 234 316 252
+J 316 252 316 270
+J 316 270 316 288
+J 316 288 316 306
+J 316 306 316 324
+J 316 324 316 342
+J 316 342 316 360
+J 316 360 316 378
+J 316 378 316 396
+J 316 396 316 414
+J 316 414 316 432
+J 316 432 316 450
+J 316 450 316 468
+J 316 468 316 486
+J 316 486 316 504
+J 316 504 316 522
+J 316 522 316 540
+J 316 540 316 558
+J 316 558 316 576
+J 316 576 356 576
+J 356 576 356 558
+J 356 558 356 540
+J 356 540 356 522
+J 356 522 356 504
+J 356 504 356 486
+J 356 486 356 468
+J 356 468 356 450
+J 356 450 356 432
+J 356 432 356 414
+J 356 414 356 396
+J 356 396 356 378
+J 356 378 356 360
+J 356 360 356 342
+J 356 342 356 324
+J 356 324 356 306
+J 356 306 356 288
+J 356 288 356 270
+J 356 270 356 252
+J 356 252 356 234
+J 356 234 356 214
+J 356 214 330 192
+J 330 192 316 214
+J 536 180 552 142
+J 388 222 388 240
+J 388 240 388 258
+J 388 258 388 276
+J 388 276 388 294
+J 388 294 388 312
+J 388 312 388 330
+J 388 330 388 348
+J 388 348 388 366
+J 388 366 388 384
+J 388 384 388 402
+J 388 402 388 420
+J 388 420 388 438
+J 388 438 388 456
+J 388 456 388 474
+J 388 474 388 492
+J 388 492 388 510
+J 388 510 388 528
+J 388 528 388 546
+J 388 546 388 564
+J 388 564 536 396
+J 536 396 388 202
+J 204 260 228 234
+J 228 234 268 234
+J 268 234 348 234
+J 348 234 388 234
+J 388 234 428 234
+J 428 234 468 234
+J 468 234 508 234
+J 508 234 508 414
+J 508 414 468 414
+J 468 414 428 414
+J 428 414 388 414
+J 388 414 348 414
+J 348 414 308 414
+J 308 414 268 414
+J 268 414 228 414
+J 232 56 238 12
+J 552 8 554 52
+J 230 150 238 180
+J 238 180 262 150
+J 532 138 556 520
+J 556 520 568 520
+J 560 8 566 64
+J 230 134 262 134
+J 262 134 250 180
+J 20 450 20 490
+J 20 490 20 406
+J 20 406 20 366
+J 20 366 20 322
+J 20 322 20 282
+J 20 282 20 242
+J 20 242 20 202
+J 20 202 20 158
+J 20 158 20 118
+J 20 118 20 8
+J 296 150 296 180
+J 96 12 112 310
+J 468 150 498 150
+J 498 150 478 180
+J 60 118 80 138
+J 80 138 60 158
+J 290 104 444 112
+J 444 112 532 162
+J 272 202 440 192
+J 468 134 498 134
+J 498 134 490 180
+J 452 180 456 162
+J 264 68 490 40
+J 490 40 514 40
+J 514 40 540 40
+J 540 40 566 40
+J 52 118 80 122
+J 80 122 52 158
+J 326 8 340 72
+J 548 192 564 154
+J 342 8 352 92
+J 478 76 502 76
+J 502 76 528 76
+J 528 76 554 76
+J 554 76 540 192
+J 246 80 260 68
+J 260 68 252 106
+J 224 214 264 214
+J 264 214 304 214
+J 304 214 344 214
+J 344 214 384 214
+J 384 214 424 214
+J 424 214 464 214
+J 464 214 504 214
+J 504 214 536 334
+J 274 150 352 150
+J 352 150 432 150
+J 432 150 510 150
+J 510 150 514 60
+J 384 158 392 180
+J 392 180 420 158
+J 444 108 456 138
+J 274 134 352 134
+J 352 134 432 134
+J 432 134 510 134
+J 510 134 528 56
+J 330 12 376 92
+J 384 142 420 142
+J 420 142 412 180
+J 232 234 232 252
+J 232 252 232 270
+J 232 270 232 288
+J 232 288 232 306
+J 232 306 232 324
+J 232 324 232 342
+J 232 342 232 360
+J 232 360 232 378
+J 232 378 232 396
+J 232 396 232 414
+J 232 414 232 432
+J 232 432 232 450
+J 232 450 232 468
+J 232 468 232 486
+J 232 486 232 504
+J 232 504 232 522
+J 232 522 232 540
+J 232 540 232 558
+J 232 558 232 576
+J 232 576 272 576
+J 272 576 272 558
+J 272 558 272 540
+J 272 540 272 522
+J 272 522 272 504
+J 272 504 272 486
+J 272 486 272 468
+J 272 468 272 450
+J 272 450 272 432
+J 272 432 272 414
+J 272 414 272 396
+J 272 396 272 378
+J 272 378 272 360
+J 272 360 272 342
+J 272 342 272 324
+J 272 324 272 306
+J 272 306 272 288
+J 272 288 272 270
+J 272 270 272 252
+J 272 252 272 234
+J 272 234 272 214
+J 272 214 232 214
+J 232 214 238 192
+J 238 192 472 214
+J 472 214 512 214
+J 444 138 444 92
+J 346 12 408 8
+J 408 8 376 76
+J 384 126 420 126
+J 420 126 400 180
+J 240 222 240 240
+J 240 240 240 258
+J 240 258 240 276
+J 240 276 240 294
+J 240 294 240 312
+J 240 312 240 330
+J 240 330 240 348
+J 240 348 240 366
+J 240 366 240 384
+J 240 384 240 402
+J 240 402 240 420
+J 240 420 240 438
+J 240 438 240 456
+J 240 456 240 474
+J 240 474 240 492
+J 240 492 240 510
+J 240 510 240 528
+J 240 528 240 546
+J 240 546 240 564
+J 240 564 280 564
+J 280 564 280 546
+J 280 546 280 528
+J 280 528 280 510
+J 280 510 280 492
+J 280 492 280 474
+J 280 474 280 456
+J 280 456 280 438
+J 280 438 280 420
+J 280 420 280 402
+J 280 402 280 384
+J 280 384 280 366
+J 280 366 280 348
+J 280 348 280 330
+J 280 330 280 312
+J 280 312 280 294
+J 280 294 280 276
+J 280 276 280 258
+J 280 258 280 240
+J 280 240 280 222
+J 280 222 280 202
+J 280 202 250 192
+J 250 192 240 202
+J 240 202 480 202
+J 480 202 520 202
+J 224 450 224 468
+J 224 468 264 468
+J 264 468 264 450
+J 264 450 304 450
+J 304 450 304 468
+J 304 468 344 468
+J 344 468 344 450
+J 344 450 384 450
+J 384 450 384 468
+J 384 468 424 468
+J 424 468 424 450
+J 424 450 464 450
+J 464 450 464 468
+J 464 468 504 468
+J 504 468 504 450
+J 504 450 536 500
+J 108 8 112 282
+J 64 178 64 218
+J 64 218 88 226
+J 472 234 472 252
+J 472 252 472 270
+J 472 270 472 288
+J 472 288 472 306
+J 472 306 472 324
+J 472 324 472 342
+J 472 342 472 360
+J 472 360 472 378
+J 472 378 472 396
+J 472 396 472 414
+J 472 414 472 432
+J 472 432 472 450
+J 472 450 472 468
+J 472 468 472 486
+J 472 486 472 504
+J 472 504 472 522
+J 472 522 472 540
+J 472 540 472 558
+J 472 558 472 576
+J 472 576 512 576
+J 512 576 512 558
+J 512 558 512 540
+J 512 540 512 522
+J 512 522 512 504
+J 512 504 512 486
+J 512 486 512 468
+J 512 468 512 450
+J 512 450 512 432
+J 512 432 512 414
+J 512 414 512 396
+J 512 396 512 378
+J 512 378 512 360
+J 512 360 512 342
+J 512 342 512 324
+J 512 324 512 306
+J 512 306 512 288
+J 512 288 512 270
+J 512 270 512 252
+J 512 252 512 234
+J 512 234 478 192
+J 548 508 556 512
+J 32 12 156 100
+J 116 382 116 8
+J 490 68 516 8
+J 476 12 490 64
+J 56 178 56 218
+J 56 218 88 210
+J 480 222 480 240
+J 480 240 480 258
+J 480 258 480 276
+J 480 276 480 294
+J 480 294 480 312
+J 480 312 480 330
+J 480 330 480 348
+J 480 348 480 366
+J 480 366 480 384
+J 480 384 480 402
+J 480 402 480 420
+J 480 420 480 438
+J 480 438 480 456
+J 480 456 480 474
+J 480 474 480 492
+J 480 492 480 510
+J 480 510 480 528
+J 480 528 480 546
+J 480 546 480 564
+J 480 564 520 564
+J 520 564 520 546
+J 520 546 520 528
+J 520 528 520 510
+J 520 510 520 492
+J 520 492 520 474
+J 520 474 520 456
+J 520 456 520 438
+J 520 438 520 420
+J 520 420 520 402
+J 520 402 520 384
+J 520 384 520 366
+J 520 366 520 348
+J 520 348 520 330
+J 520 330 520 312
+J 520 312 520 294
+J 520 294 520 276
+J 520 276 520 258
+J 520 258 520 240
+J 520 240 520 222
+J 520 222 490 192
+J 392 202 452 192
+J 548 330 556 340
+J 24 426 24 466
+J 24 466 24 382
+J 24 382 24 342
+J 24 342 24 298
+J 24 298 24 258
+J 24 258 24 218
+J 24 218 24 178
+J 24 178 24 134
+J 24 134 24 94
+J 24 94 40 12
+J 502 68 524 8
+J 302 68 364 88
+J 364 88 456 76
+J 456 76 552 102
+J 64 258 64 298
+J 64 298 100 306
+J 348 222 348 240
+J 348 240 348 258
+J 348 258 348 276
+J 348 276 348 294
+J 348 294 348 312
+J 348 312 348 330
+J 348 330 348 348
+J 348 348 348 366
+J 348 366 348 384
+J 348 384 348 402
+J 348 402 348 420
+J 348 420 348 438
+J 348 438 348 456
+J 348 456 348 474
+J 348 474 348 492
+J 348 492 348 510
+J 348 510 348 528
+J 348 528 348 546
+J 348 546 348 564
+J 348 564 536 400
+J 536 400 348 202
+J 204 268 210 32
+J 210 32 508 12
+J 548 504 568 512
+J 242 150 320 150
+J 320 150 396 150
+J 396 150 480 150
+J 480 150 554 56
+J 308 150 340 150
+J 340 150 322 180
+J 242 154 320 154
+J 320 154 396 154
+J 396 154 480 154
+J 480 154 496 102
+J 496 102 364 72
+J 184 36 224 330
+J 224 330 204 360
+J 204 360 264 330
+J 264 330 304 330
+J 304 330 344 330
+J 344 330 384 330
+J 384 330 424 330
+J 424 330 464 330
+J 464 330 504 330
+J 504 330 504 510
+J 504 510 464 510
+J 464 510 424 510
+J 424 510 384 510
+J 384 510 344 510
+J 344 510 304 510
+J 304 510 264 510
+J 264 510 224 510
+J 242 134 320 134
+J 320 134 396 134
+J 396 134 480 134
+J 480 134 566 60
+J 184 32 452 8
+J 452 8 204 364
+J 308 134 340 134
+J 340 134 334 180
+J 230 12 244 56
+J 224 540 224 558
+J 224 558 264 558
+J 264 558 264 540
+J 264 540 304 540
+J 304 540 304 558
+J 304 558 344 558
+J 344 558 344 540
+J 344 540 384 540
+J 384 540 384 558
+J 384 558 424 558
+J 424 558 424 540
+J 424 540 464 540
+J 464 540 464 558
+J 464 558 504 558
+J 504 558 504 540
+J 504 540 536 516
+J 68 450 68 490
+J 68 490 120 482
+J 380 222 380 240
+J 380 240 380 258
+J 380 258 380 276
+J 380 276 380 294
+J 380 294 380 312
+J 380 312 380 330
+J 380 330 380 348
+J 380 348 380 366
+J 380 366 380 384
+J 380 384 380 402
+J 380 402 380 420
+J 380 420 380 438
+J 380 438 380 456
+J 380 456 380 474
+J 380 474 380 492
+J 380 492 380 510
+J 380 510 380 528
+J 380 528 380 546
+J 380 546 380 564
+J 380 564 420 564
+J 420 564 420 546
+J 420 546 420 528
+J 420 528 420 510
+J 420 510 420 492
+J 420 492 420 474
+J 420 474 420 456
+J 420 456 420 438
+J 420 438 420 420
+J 420 420 420 402
+J 420 402 420 384
+J 420 384 420 366
+J 420 366 420 348
+J 420 348 420 330
+J 420 330 420 312
+J 420 312 420 294
+J 420 294 420 276
+J 420 276 420 258
+J 420 258 420 240
+J 420 240 420 222
+J 420 222 420 202
+J 420 202 392 192
+J 392 192 380 202
+J 60 426 60 466
+J 60 466 120 466
+J 68 12 92 138
+J 198 52 224 294
+J 224 294 264 294
+J 264 294 304 294
+J 304 294 344 294
+J 344 294 384 294
+J 384 294 424 294
+J 424 294 464 294
+J 464 294 504 294
+J 504 294 504 474
+J 504 474 464 474
+J 464 474 424 474
+J 424 474 384 474
+J 384 474 344 474
+J 344 474 304 474
+J 304 474 264 474
+J 264 474 224 474
+J 400 234 400 252
+J 400 252 400 270
+J 400 270 400 288
+J 400 288 400 306
+J 400 306 400 324
+J 400 324 400 342
+J 400 342 400 360
+J 400 360 400 378
+J 400 378 400 396
+J 400 396 400 414
+J 400 414 400 432
+J 400 432 400 450
+J 400 450 400 468
+J 400 468 400 486
+J 400 486 400 504
+J 400 504 400 522
+J 400 522 400 540
+J 400 540 400 558
+J 400 558 400 576
+J 400 576 440 576
+J 440 576 440 558
+J 440 558 440 540
+J 440 540 440 522
+J 440 522 440 504
+J 440 504 440 486
+J 440 486 440 468
+J 440 468 440 450
+J 440 450 440 432
+J 440 432 440 414
+J 440 414 440 396
+J 440 396 440 378
+J 440 378 440 360
+J 440 360 440 342
+J 440 342 440 324
+J 440 324 440 306
+J 440 306 440 288
+J 440 288 440 270
+J 440 270 440 252
+J 440 252 440 234
+J 440 234 440 214
+J 440 214 412 192
+J 412 192 400 214
+J 76 12 92 122
+J 210 24 224 222
+J 224 222 264 222
+J 264 222 344 222
+J 344 222 384 222
+J 384 222 424 222
+J 424 222 464 222
+J 464 222 504 222
+J 504 222 504 402
+J 504 402 464 402
+J 464 402 424 402
+J 424 402 384 402
+J 384 402 344 402
+J 344 402 304 402
+J 304 402 264 402
+J 264 402 224 402
+J 396 222 396 240
+J 396 240 396 258
+J 396 258 396 276
+J 396 276 396 294
+J 396 294 396 312
+J 396 312 396 330
+J 396 330 396 348
+J 396 348 396 366
+J 396 366 396 384
+J 396 384 396 402
+J 396 402 396 420
+J 396 420 396 438
+J 396 438 396 456
+J 396 456 396 474
+J 396 474 396 492
+J 396 492 396 510
+J 396 510 396 528
+J 396 528 396 546
+J 396 546 396 564
+J 396 564 436 564
+J 436 564 436 546
+J 436 546 436 528
+J 436 528 436 510
+J 436 510 436 492
+J 436 492 436 474
+J 436 474 436 456
+J 436 456 436 438
+J 436 438 436 420
+J 436 420 436 402
+J 436 402 436 384
+J 436 384 436 366
+J 436 366 436 348
+J 436 348 436 330
+J 436 330 436 312
+J 436 312 436 294
+J 436 294 436 276
+J 436 276 436 258
+J 436 258 436 240
+J 436 240 436 222
+J 436 222 436 202
+J 436 202 400 192
+J 400 192 396 202
+J 128 12 132 478
+J 290 88 296 158
+J 172 44 488 12
+J 514 52 532 12
+J 56 282 56 322
+J 56 322 100 294
+J 132 462 136 12
+J 284 158 290 72
+J 528 64 540 12
+J 228 324 268 324
+J 268 324 308 324
+J 308 324 348 324
+J 348 324 388 324
+J 388 324 428 324
+J 428 324 468 324
+J 468 324 508 324
+J 508 324 508 504
+J 508 504 468 504
+J 468 504 428 504
+J 428 504 388 504
+J 388 504 348 504
+J 348 504 308 504
+J 308 504 268 504
+J 268 504 228 504
+J 64 366 64 406
+J 64 406 104 394
+J 490 56 544 134
+J 88 12 100 214
+J 432 72 524 180
+J 524 180 564 146
+J 248 56 306 8
+J 56 366 56 406
+J 56 406 104 378
+J 28 450 28 490
+J 28 490 28 406
+J 28 406 28 366
+J 28 366 28 322
+J 28 322 28 282
+J 28 282 28 242
+J 28 242 28 202
+J 28 202 28 158
+J 28 158 28 118
+J 28 118 48 8
+J 312 234 312 252
+J 312 252 312 270
+J 312 270 312 288
+J 312 288 312 306
+J 312 306 312 324
+J 312 324 312 342
+J 312 342 312 360
+J 312 360 312 378
+J 312 378 312 396
+J 312 396 312 414
+J 312 414 312 432
+J 312 432 312 450
+J 312 450 312 468
+J 312 468 312 486
+J 312 486 312 504
+J 312 504 312 522
+J 312 522 312 540
+J 312 540 312 558
+J 312 558 312 576
+J 312 576 352 576
+J 352 576 352 558
+J 352 558 352 540
+J 352 540 352 522
+J 352 522 352 504
+J 352 504 352 486
+J 352 486 352 468
+J 352 468 352 450
+J 352 450 352 432
+J 352 432 352 414
+J 352 414 352 396
+J 352 396 352 378
+J 352 378 352 360
+J 352 360 352 342
+J 352 342 352 324
+J 352 324 352 306
+J 352 306 352 288
+J 352 288 352 270
+J 352 270 352 252
+J 352 252 352 234
+J 352 234 352 214
+J 352 214 322 192
+J 322 192 312 214
+J 548 392 556 400
+J 24 8 40 118
+J 40 118 40 158
+J 40 158 40 202
+J 40 202 40 242
+J 40 242 40 282
+J 40 282 40 322
+J 40 322 40 366
+J 40 366 40 406
+J 40 406 40 450
+J 40 450 40 490
+J 40 490 156 64
+J 204 280 228 288
+J 228 288 268 288
+J 268 288 308 288
+J 308 288 348 288
+J 348 288 388 288
+J 388 288 428 288
+J 428 288 468 288
+J 468 288 508 288
+J 508 288 508 468
+J 508 468 468 468
+J 468 468 428 468
+J 428 468 388 468
+J 388 468 348 468
+J 348 468 308 468
+J 308 468 268 468
+J 268 468 228 468
+J 44 450 44 490
+J 44 490 44 406
+J 44 406 44 366
+J 44 366 44 322
+J 44 322 44 282
+J 44 282 44 242
+J 44 242 44 202
+J 44 202 44 158
+J 44 158 44 118
+J 44 118 56 8
+J 320 222 320 240
+J 320 240 320 258
+J 320 258 320 276
+J 320 276 320 294
+J 320 294 320 312
+J 320 312 320 330
+J 320 330 320 348
+J 320 348 320 366
+J 320 366 320 384
+J 320 384 320 402
+J 320 402 320 420
+J 320 420 320 438
+J 320 438 320 456
+J 320 456 320 474
+J 320 474 320 492
+J 320 492 320 510
+J 320 510 320 528
+J 320 528 320 546
+J 320 546 320 564
+J 320 564 360 564
+J 360 564 360 546
+J 360 546 360 528
+J 360 528 360 510
+J 360 510 360 492
+J 360 492 360 474
+J 360 474 360 456
+J 360 456 360 438
+J 360 438 360 420
+J 360 420 360 402
+J 360 402 360 384
+J 360 384 360 366
+J 360 366 360 348
+J 360 348 360 330
+J 360 330 360 312
+J 360 312 360 294
+J 360 294 360 276
+J 360 276 360 258
+J 360 258 360 240
+J 360 240 360 222
+J 360 222 360 202
+J 360 202 334 192
+J 334 192 320 202
+J 540 180 552 146
+J 540 52 548 12
+J 452 12 478 52
+J 548 384 556 384
+J 440 180 444 150
+J 554 64 556 12
+J 230 146 262 146
+J 262 146 262 180
+J 548 322 556 328
+J 532 134 556 336
+J 556 336 568 336
+J 192 368 492 12
+J 88 8 100 210
+J 192 288 192 384
+J 192 384 544 192
+J 564 12 566 52
+J 230 130 262 130
+J 262 130 258 180
+J 68 118 80 150
+J 80 150 68 158
+J 96 8 112 306
+J 308 222 308 240
+J 308 240 308 258
+J 308 258 308 276
+J 308 276 308 294
+J 308 294 308 312
+J 308 312 308 330
+J 308 330 308 348
+J 308 348 308 366
+J 308 366 308 384
+J 308 384 308 402
+J 308 402 308 420
+J 308 420 308 438
+J 308 438 308 456
+J 308 456 308 474
+J 308 474 308 492
+J 308 492 308 510
+J 308 510 308 528
+J 308 528 308 546
+J 308 546 308 564
+J 308 564 536 404
+J 536 404 308 202
+J 468 146 498 146
+J 498 146 502 180
+J 60 94 60 134
+J 60 134 80 134
+J 468 130 498 130
+J 498 130 498 180
+J 224 414 224 432
+J 224 432 264 432
+J 264 432 264 414
+J 264 414 304 414
+J 304 414 304 432
+J 304 432 344 432
+J 344 432 344 414
+J 344 414 384 414
+J 384 414 384 432
+J 384 432 424 432
+J 424 432 424 414
+J 424 414 464 414
+J 464 414 464 432
+J 464 432 504 432
+J 504 432 504 414
+J 504 414 536 496
+J 68 202 88 234
+J 88 234 68 242
+J 330 8 340 76
+J 346 8 352 88
+J 444 146 444 180
+J 548 326 568 340
+J 340 68 488 90
+J 488 90 502 72
+J 502 72 502 60
+J 502 60 544 90
+J 242 80 248 106
+J 248 106 268 68
+J 274 146 352 146
+J 352 146 432 146
+J 432 146 510 146
+J 510 146 514 56
+J 384 154 420 154
+J 420 154 424 180
+J 444 104 456 142
+J 548 500 568 508
+J 274 130 352 130
+J 352 130 432 130
+J 432 130 510 130
+J 510 130 528 60
+J 280 180 284 150
+J 334 12 376 88
+J 384 138 420 138
+J 420 138 404 180
+J 224 504 224 522
+J 224 522 264 522
+J 264 522 264 504
+J 264 504 304 504
+J 304 504 304 522
+J 304 522 344 522
+J 344 522 344 504
+J 344 504 384 504
+J 384 504 384 522
+J 384 522 424 522
+J 424 522 424 504
+J 424 504 464 504
+J 464 504 464 522
+J 464 522 504 522
+J 504 522 504 504
+J 504 504 536 512
+J 244 234 244 252
+J 244 252 244 270
+J 244 270 244 288
+J 244 288 244 306
+J 244 306 244 324
+J 244 324 244 342
+J 244 342 244 360
+J 244 360 244 378
+J 244 378 244 396
+J 244 396 244 414
+J 244 414 244 432
+J 244 432 244 450
+J 244 450 244 468
+J 244 468 244 486
+J 244 486 244 504
+J 244 504 244 522
+J 244 522 244 540
+J 244 540 244 558
+J 244 558 244 576
+J 244 576 284 576
+J 284 576 284 558
+J 284 558 284 540
+J 284 540 284 522
+J 284 522 284 504
+J 284 504 284 486
+J 284 486 284 468
+J 284 468 284 450
+J 284 450 284 432
+J 284 432 284 414
+J 284 414 284 396
+J 284 396 284 378
+J 284 378 284 360
+J 284 360 284 342
+J 284 342 284 324
+J 284 324 284 306
+J 284 306 284 288
+J 284 288 284 270
+J 284 270 284 252
+J 284 252 284 234
+J 284 234 284 214
+J 284 214 262 192
+J 262 192 244 214
+J 244 214 484 214
+J 484 214 524 214
+J 444 142 444 88
+J 104 12 112 294
+J 460 12 490 48
+J 350 12 396 8
+J 396 8 376 72
+J 224 306 264 306
+J 264 306 304 306
+J 304 306 344 306
+J 344 306 384 306
+J 384 306 424 306
+J 424 306 464 306
+J 464 306 504 306
+J 504 306 536 318
+J 244 222 244 240
+J 244 240 244 258
+J 244 258 244 276
+J 244 276 244 294
+J 244 294 244 312
+J 244 312 244 330
+J 244 330 244 348
+J 244 348 244 366
+J 244 366 244 384
+J 244 384 244 402
+J 244 402 244 420
+J 244 420 244 438
+J 244 438 244 456
+J 244 456 244 474
+J 244 474 244 492
+J 244 492 244 510
+J 244 510 244 528
+J 244 528 244 546
+J 244 546 244 564
+J 244 564 284 564
+J 284 564 284 546
+J 284 546 284 528
+J 284 528 284 510
+J 284 510 284 492
+J 284 492 284 474
+J 284 474 284 456
+J 284 456 284 438
+J 284 438 284 420
+J 284 420 284 402
+J 284 402 284 384
+J 284 384 284 366
+J 284 366 284 348
+J 284 348 284 330
+J 284 330 284 312
+J 284 312 284 294
+J 284 294 284 276
+J 284 276 284 258
+J 284 258 284 240
+J 284 240 284 222
+J 284 222 284 202
+J 284 202 258 192
+J 258 192 244 202
+J 244 202 484 202
+J 484 202 524 202
+J 112 12 116 394
+J 292 192 392 222
+J 392 222 392 240
+J 392 240 392 258
+J 392 258 392 276
+J 392 276 392 294
+J 392 294 392 312
+J 392 312 392 330
+J 392 330 392 348
+J 392 348 392 366
+J 392 366 392 384
+J 392 384 392 402
+J 392 402 392 420
+J 392 420 392 438
+J 392 438 392 456
+J 392 456 392 474
+J 392 474 392 492
+J 392 492 392 510
+J 392 510 392 528
+J 392 528 392 546
+J 392 546 392 564
+J 60 202 88 222
+J 88 222 60 242
+J 484 234 484 252
+J 484 252 484 270
+J 484 270 484 288
+J 484 288 484 306
+J 484 306 484 324
+J 484 324 484 342
+J 484 342 484 360
+J 484 360 484 378
+J 484 378 484 396
+J 484 396 484 414
+J 484 414 484 432
+J 484 432 484 450
+J 484 450 484 468
+J 484 468 484 486
+J 484 486 484 504
+J 484 504 484 522
+J 484 522 484 540
+J 484 540 484 558
+J 484 558 484 576
+J 484 576 524 576
+J 524 576 524 558
+J 524 558 524 540
+J 524 540 524 522
+J 524 522 524 504
+J 524 504 524 486
+J 524 486 524 468
+J 524 468 524 450
+J 524 450 524 432
+J 524 432 524 414
+J 524 414 524 396
+J 524 396 524 378
+J 524 378 524 360
+J 524 360 524 342
+J 524 342 524 324
+J 524 324 524 306
+J 524 306 524 288
+J 524 288 524 270
+J 524 270 524 252
+J 524 252 524 234
+J 524 234 502 192
+J 116 378 120 12
+J 24 450 24 490
+J 24 490 24 406
+J 24 406 24 366
+J 24 366 24 322
+J 24 322 24 282
+J 24 282 24 242
+J 24 242 24 202
+J 24 202 24 158
+J 24 158 24 118
+J 24 118 32 8
+J 502 48 520 12
+J 548 396 556 412
+J 52 202 88 206
+J 88 206 52 242
+J 252 68 328 64
+J 328 64 352 64
+J 192 284 198 48
+J 198 48 496 12
+J 484 222 484 240
+J 484 240 484 258
+J 484 258 484 276
+J 484 276 484 294
+J 484 294 484 312
+J 484 312 484 330
+J 484 330 484 348
+J 484 348 484 366
+J 484 366 484 384
+J 484 384 484 402
+J 484 402 484 420
+J 484 420 484 438
+J 484 438 484 456
+J 484 456 484 474
+J 484 474 484 492
+J 484 492 484 510
+J 484 510 484 528
+J 484 528 484 546
+J 484 546 484 564
+J 484 564 524 564
+J 524 564 524 546
+J 524 546 524 528
+J 524 528 524 510
+J 524 510 524 492
+J 524 492 524 474
+J 524 474 524 456
+J 524 456 524 438
+J 524 438 524 420
+J 524 420 524 402
+J 524 402 524 384
+J 524 384 524 366
+J 524 366 524 348
+J 524 348 524 330
+J 524 330 524 312
+J 524 312 524 294
+J 524 294 524 276
+J 524 276 524 258
+J 524 258 524 240
+J 524 240 524 222
+J 524 222 498 192
+J 232 222 232 240
+J 232 240 232 258
+J 232 258 232 276
+J 232 276 232 294
+J 232 294 232 312
+J 232 312 232 330
+J 232 330 232 348
+J 232 348 232 366
+J 232 366 232 384
+J 232 384 232 402
+J 232 402 232 420
+J 232 420 232 438
+J 232 438 232 456
+J 232 456 232 474
+J 232 474 232 492
+J 232 492 232 510
+J 232 510 232 528
+J 232 528 232 546
+J 232 546 232 564
+J 232 564 276 192
+J 36 450 36 490
+J 36 490 36 406
+J 36 406 36 366
+J 36 366 36 322
+J 36 322 36 282
+J 36 282 36 242
+J 36 242 36 202
+J 36 202 36 158
+J 36 158 36 118
+J 36 118 40 8
+J 352 84 484 102
+J 484 102 540 102
+J 540 102 540 56
+J 274 158 352 158
+J 352 158 364 84
+J 364 84 432 158
+J 432 158 510 158
+J 510 158 508 102
+J 274 122 352 122
+J 352 122 432 122
+J 432 122 510 122
+J 510 122 536 192
+J 60 282 60 322
+J 60 322 100 302
+J 204 256 210 28
+J 210 28 512 12
+J 242 122 320 122
+J 320 122 396 122
+J 396 122 480 122
+J 480 122 532 192
+J 548 516 556 524
+J 48 450 48 366
+J 48 366 48 282
+J 48 282 48 202
+J 48 202 48 118
+J 48 118 156 108
+J 548 388 556 396
+J 48 490 48 406
+J 48 406 48 322
+J 48 322 48 242
+J 48 242 48 158
+J 48 158 156 112
+J 242 146 320 146
+J 320 146 396 146
+J 396 146 480 146
+J 480 146 554 60
+J 308 146 340 146
+J 340 146 346 180
+J 456 150 456 180
+J 312 202 444 192
+J 184 24 224 312
+J 224 312 264 312
+J 264 312 304 312
+J 304 312 344 312
+J 344 312 384 312
+J 384 312 424 312
+J 424 312 464 312
+J 464 312 504 312
+J 504 312 504 492
+J 504 492 464 492
+J 464 492 424 492
+J 424 492 384 492
+J 384 492 344 492
+J 344 492 304 492
+J 304 492 264 492
+J 264 492 224 492
+J 224 492 204 356
+J 456 12 490 52
+J 242 130 320 130
+J 320 130 396 130
+J 396 130 480 130
+J 480 130 566 56
+J 308 130 340 130
+J 340 130 342 180
+J 184 28 448 12
+J 448 12 204 352
+J 64 450 64 490
+J 64 490 120 478
+J 432 76 484 12
+J 236 56 254 12
+J 408 234 408 252
+J 408 252 408 270
+J 408 270 408 288
+J 408 288 408 306
+J 408 306 408 324
+J 408 324 408 342
+J 408 342 408 360
+J 408 360 408 378
+J 408 378 408 396
+J 408 396 408 414
+J 408 414 408 432
+J 408 432 408 450
+J 408 450 408 468
+J 408 468 408 486
+J 408 486 408 504
+J 408 504 408 522
+J 408 522 408 540
+J 408 540 408 558
+J 408 558 408 576
+J 408 576 448 576
+J 448 576 448 558
+J 448 558 448 540
+J 448 540 448 522
+J 448 522 448 504
+J 448 504 448 486
+J 448 486 448 468
+J 448 468 448 450
+J 448 450 448 432
+J 448 432 448 414
+J 448 414 448 396
+J 448 396 448 378
+J 448 378 448 360
+J 448 360 448 342
+J 448 342 448 324
+J 448 324 448 306
+J 448 306 448 288
+J 448 288 448 270
+J 448 270 448 252
+J 448 252 448 234
+J 448 234 448 214
+J 448 214 424 192
+J 424 192 408 214
+J 268 222 268 240
+J 268 240 268 258
+J 268 258 268 276
+J 268 276 268 294
+J 268 294 268 312
+J 268 312 268 330
+J 268 330 268 348
+J 268 348 268 366
+J 268 366 268 384
+J 268 384 268 402
+J 268 402 268 420
+J 268 420 268 438
+J 268 438 268 456
+J 268 456 268 474
+J 268 474 268 492
+J 268 492 268 510
+J 268 510 268 528
+J 268 528 268 546
+J 268 546 268 564
+J 268 564 536 408
+J 536 408 268 202
+J 532 154 556 388
+J 556 388 556 392
+J 556 392 568 392
+J 568 392 568 388
+J 568 388 568 404
+J 568 404 568 408
+J 568 408 556 408
+J 556 408 556 404
+J 302 100 456 108
+J 456 108 478 60
+J 56 450 56 490
+J 56 490 120 462
+J 68 8 92 134
+J 292 180 296 162
+J 210 52 224 276
+J 224 276 264 276
+J 264 276 304 276
+J 304 276 344 276
+J 344 276 384 276
+J 384 276 424 276
+J 424 276 464 276
+J 464 276 504 276
+J 504 276 504 456
+J 504 456 464 456
+J 464 456 424 456
+J 424 456 384 456
+J 384 456 344 456
+J 344 456 304 456
+J 304 456 264 456
+J 264 456 224 456
+J 396 234 396 252
+J 396 252 396 270
+J 396 270 396 288
+J 396 288 396 306
+J 396 306 396 324
+J 396 324 396 342
+J 396 342 396 360
+J 396 360 396 378
+J 396 378 396 396
+J 396 396 396 414
+J 396 414 396 432
+J 396 432 396 450
+J 396 450 396 468
+J 396 468 396 486
+J 396 486 396 504
+J 396 504 396 522
+J 396 522 396 540
+J 396 540 396 558
+J 396 558 396 576
+J 396 576 436 576
+J 436 576 436 558
+J 436 558 436 540
+J 436 540 436 522
+J 436 522 436 504
+J 436 504 436 486
+J 436 486 436 468
+J 436 468 436 450
+J 436 450 436 432
+J 436 432 436 414
+J 436 414 436 396
+J 436 396 436 378
+J 436 378 436 360
+J 436 360 436 342
+J 436 342 436 324
+J 436 324 436 306
+J 436 306 436 288
+J 436 288 436 270
+J 436 270 436 252
+J 436 252 436 234
+J 436 234 436 214
+J 436 214 404 192
+J 404 192 396 214
+J 76 8 92 118
+J 290 100 296 138
+J 276 180 284 162
+J 304 192 512 222
+J 512 222 512 240
+J 512 240 512 258
+J 512 258 512 276
+J 512 276 512 294
+J 512 294 512 312
+J 512 312 512 330
+J 512 330 512 348
+J 512 348 512 366
+J 512 366 512 384
+J 512 384 512 402
+J 512 402 512 420
+J 512 420 512 438
+J 512 438 512 456
+J 512 456 512 474
+J 512 474 512 492
+J 512 492 512 510
+J 512 510 512 528
+J 512 528 512 546
+J 512 546 512 564
+J 128 8 132 474
+J 284 138 290 84
+J 514 48 532 8
+J 204 376 228 378
+J 228 378 268 378
+J 268 378 308 378
+J 308 378 348 378
+J 348 378 388 378
+J 388 378 428 378
+J 428 378 468 378
+J 468 378 508 378
+J 508 378 508 558
+J 508 558 468 558
+J 468 558 428 558
+J 428 558 388 558
+J 388 558 348 558
+J 348 558 308 558
+J 308 558 268 558
+J 268 558 228 558
+J 56 258 56 298
+J 56 298 100 290
+J 132 458 136 8
+J 288 192 352 222
+J 352 222 352 240
+J 352 240 352 258
+J 352 258 352 276
+J 352 276 352 294
+J 352 294 352 312
+J 352 312 352 330
+J 352 330 352 348
+J 352 348 352 366
+J 352 366 352 384
+J 352 384 352 402
+J 352 402 352 420
+J 352 420 352 438
+J 352 438 352 456
+J 352 456 352 474
+J 352 474 352 492
+J 352 492 352 510
+J 352 510 352 528
+J 352 528 352 546
+J 352 546 352 564
+J 528 68 540 8
+J 328 80 496 90
+J 496 90 502 44
+J 502 44 552 90
+J 260 56 294 8
+J 64 342 64 382
+J 64 382 104 390
+J 28 426 28 466
+J 28 466 28 382
+J 28 382 28 342
+J 28 342 28 298
+J 28 298 28 258
+J 28 258 28 218
+J 28 218 28 178
+J 28 178 28 134
+J 28 134 28 94
+J 28 94 44 12
+J 552 162 556 516
+J 310 8 328 92
+J 40 426 40 466
+J 40 466 40 382
+J 40 382 40 342
+J 40 342 40 298
+J 40 298 40 258
+J 40 258 40 218
+J 40 218 40 178
+J 40 178 40 134
+J 40 134 40 94
+J 40 94 52 12
+J 324 234 324 252
+J 324 252 324 270
+J 324 270 324 288
+J 324 288 324 306
+J 324 306 324 324
+J 324 324 324 342
+J 324 342 324 360
+J 324 360 324 378
+J 324 378 324 396
+J 324 396 324 414
+J 324 414 324 432
+J 324 432 324 450
+J 324 450 324 468
+J 324 468 324 486
+J 324 486 324 504
+J 324 504 324 522
+J 324 522 324 540
+J 324 540 324 558
+J 324 558 324 576
+J 324 576 364 576
+J 364 576 364 558
+J 364 558 364 540
+J 364 540 364 522
+J 364 522 364 504
+J 364 504 364 486
+J 364 486 364 468
+J 364 468 364 450
+J 364 450 364 432
+J 364 432 364 414
+J 364 414 364 396
+J 364 396 364 378
+J 364 378 364 360
+J 364 360 364 342
+J 364 342 364 324
+J 364 324 364 306
+J 364 306 364 288
+J 364 288 364 270
+J 364 270 364 252
+J 364 252 364 234
+J 364 234 364 214
+J 364 214 346 192
+J 346 192 324 214
+J 432 202 456 192
+J 480 12 528 180
+J 302 64 328 84
+J 328 84 456 72
+J 456 72 490 44
+J 490 44 500 90
+J 500 90 556 90
+J 556 90 544 146
+J 544 146 564 162
+J 564 162 556 180
+J 204 276 228 270
+J 228 270 268 270
+J 268 270 308 270
+J 308 270 348 270
+J 348 270 388 270
+J 388 270 428 270
+J 428 270 468 270
+J 468 270 508 270
+J 508 270 508 450
+J 508 450 468 450
+J 468 450 428 450
+J 428 450 388 450
+J 388 450 348 450
+J 348 450 308 450
+J 308 450 268 450
+J 268 450 228 450
+J 48 426 48 466
+J 48 466 48 382
+J 48 382 48 342
+J 48 342 48 298
+J 48 298 48 258
+J 48 258 48 218
+J 48 218 48 178
+J 48 178 48 134
+J 48 134 48 94
+J 48 94 60 12
+J 324 222 324 240
+J 324 240 324 258
+J 324 258 324 276
+J 324 276 324 294
+J 324 294 324 312
+J 324 312 324 330
+J 324 330 324 348
+J 324 348 324 366
+J 324 366 324 384
+J 324 384 324 402
+J 324 402 324 420
+J 324 420 324 438
+J 324 438 324 456
+J 324 456 324 474
+J 324 474 324 492
+J 324 492 324 510
+J 324 510 324 528
+J 324 528 324 546
+J 324 546 324 564
+J 324 564 364 564
+J 364 564 364 546
+J 364 546 364 528
+J 364 528 364 510
+J 364 510 364 492
+J 364 492 364 474
+J 364 474 364 456
+J 364 456 364 438
+J 364 438 364 420
+J 364 420 364 402
+J 364 402 364 384
+J 364 384 364 366
+J 364 366 364 348
+J 364 348 364 330
+J 364 330 364 312
+J 364 312 364 294
+J 364 294 364 276
+J 364 276 364 258
+J 364 258 364 240
+J 364 240 364 222
+J 364 222 364 202
+J 364 202 342 192
+J 342 192 324 202
+J 544 180 552 150
+J 540 48 548 8
+J 230 158 234 180
+J 234 180 262 158
+J 84 12 100 222
+J 296 134 304 180
+J 554 68 556 8
+J 230 142 262 142
+J 262 142 254 180
+J 172 52 224 202
+J 224 202 264 202
+J 264 202 304 202
+J 304 202 344 202
+J 344 202 384 202
+J 384 202 424 202
+J 424 202 464 202
+J 464 202 504 202
+J 548 400 568 412
+J 92 12 100 206
+J 468 158 474 180
+J 474 180 498 158
+J 564 8 566 48
+J 230 126 262 126
+J 262 126 242 180
+J 64 118 80 146
+J 80 146 64 158
+J 548 496 568 496
+J 100 12 112 302
+J 468 142 498 142
+J 498 142 494 180
+J 56 118 80 130
+J 80 130 56 158
+J 318 8 328 76
+J 224 270 224 288
+J 224 288 264 288
+J 264 288 264 270
+J 264 270 304 270
+J 304 270 304 288
+J 304 288 344 288
+J 344 288 344 270
+J 344 270 384 270
+J 384 270 384 288
+J 384 288 424 288
+J 424 288 424 270
+J 424 270 464 270
+J 464 270 464 288
+J 464 288 504 288
+J 504 288 504 270
+J 504 270 536 314
+J 468 126 498 126
+J 498 126 482 180
+J 64 202 88 230
+J 88 230 64 242
+J 334 8 340 88
+J 300 192 472 222
+J 472 222 472 240
+J 472 240 472 258
+J 472 258 472 276
+J 472 276 472 294
+J 472 294 472 312
+J 472 312 472 330
+J 472 330 472 348
+J 472 348 472 366
+J 472 366 472 384
+J 472 384 472 402
+J 472 402 472 420
+J 472 420 472 438
+J 472 438 472 456
+J 472 456 472 474
+J 472 474 472 492
+J 472 492 472 510
+J 472 510 472 528
+J 472 528 472 546
+J 472 546 472 564
+J 350 8 352 76
+J 228 222 228 240
+J 228 240 228 258
+J 228 258 228 276
+J 228 276 228 294
+J 228 294 228 312
+J 228 312 228 330
+J 228 330 228 348
+J 228 348 228 366
+J 228 366 228 384
+J 228 384 228 402
+J 228 402 228 420
+J 228 420 228 438
+J 228 438 228 456
+J 228 456 228 474
+J 228 474 228 492
+J 228 492 228 510
+J 228 510 228 528
+J 228 528 228 546
+J 228 546 228 564
+J 228 564 536 412
+J 536 412 228 202
+J 508 222 508 240
+J 508 240 508 258
+J 508 258 508 276
+J 508 276 508 294
+J 508 294 508 312
+J 508 312 508 330
+J 508 330 508 348
+J 508 348 508 366
+J 508 366 508 384
+J 508 384 508 402
+J 508 402 508 420
+J 508 420 508 438
+J 508 438 508 456
+J 508 456 508 474
+J 508 474 508 492
+J 508 492 508 510
+J 508 510 508 528
+J 508 528 508 546
+J 508 546 508 564
+J 508 564 536 384
+J 536 384 508 202
+J 340 80 484 90
+J 484 90 540 90
+J 244 68 376 64
+J 238 80 244 106
+J 244 106 264 56
+J 548 512 568 524
+J 274 142 352 142
+J 352 142 432 142
+J 432 142 510 142
+J 510 142 514 44
+E
diff --git a/Robust/src/Benchmarks/SingleTM/LeeRouting/sparselong.txt b/Robust/src/Benchmarks/SingleTM/LeeRouting/sparselong.txt
new file mode 100644 (file)
index 0000000..3b07e92
--- /dev/null
@@ -0,0 +1,88 @@
+P 10 10 
+P 10 590 
+J 10 10 10 590
+P 30 10 
+P 30 590 
+J 30 10 30 590
+P 50 10 
+P 50 590 
+J 50 10 50 590
+P 70 10 
+P 70 590 
+J 70 10 70 590
+P 90 10 
+P 90 590 
+J 90 10 90 590
+P 110 10 
+P 110 590 
+J 110 10 110 590
+P 130 10 
+P 130 590 
+J 130 10 130 590
+P 150 10 
+P 150 590 
+J 150 10 150 590
+P 170 10 
+P 170 590 
+J 170 10 170 590
+P 190 10 
+P 190 590 
+J 190 10 190 590
+P 210 10 
+P 210 590 
+J 210 10 210 590
+P 230 10 
+P 230 590 
+J 230 10 230 590
+P 250 10 
+P 250 590 
+J 250 10 250 590
+P 270 10 
+P 270 590 
+J 270 10 270 590
+P 290 10 
+P 290 590 
+J 290 10 290 590
+P 310 10 
+P 310 590 
+J 310 10 310 590
+P 330 10 
+P 330 590 
+J 330 10 330 590
+P 350 10 
+P 350 590 
+J 350 10 350 590
+P 370 10 
+P 370 590 
+J 370 10 370 590
+P 390 10 
+P 390 590 
+J 390 10 390 590
+P 410 10 
+P 410 590 
+J 410 10 410 590
+P 430 10 
+P 430 590 
+J 430 10 430 590
+P 450 10 
+P 450 590 
+J 450 10 450 590
+P 470 10 
+P 470 590 
+J 470 10 470 590
+P 490 10 
+P 490 590 
+J 490 10 490 590
+P 510 10 
+P 510 590 
+J 510 10 510 590
+P 530 10 
+P 530 590 
+J 530 10 530 590
+P 550 10 
+P 550 590 
+J 550 10 550 590
+P 570 10 
+P 570 590 
+J 570 10 570 590
+E
diff --git a/Robust/src/Benchmarks/SingleTM/LeeRouting/sparseshort.txt b/Robust/src/Benchmarks/SingleTM/LeeRouting/sparseshort.txt
new file mode 100644 (file)
index 0000000..bb2f0cf
--- /dev/null
@@ -0,0 +1,842 @@
+J 10 10 10 20
+J 10 30 10 40
+J 10 50 10 60
+J 10 70 10 80
+J 10 90 10 100
+J 10 110 10 120
+J 10 130 10 140
+J 10 150 10 160
+J 10 170 10 180
+J 10 190 10 200
+J 10 210 10 220
+J 10 230 10 240
+J 10 250 10 260
+J 10 270 10 280
+J 10 290 10 300
+J 10 310 10 320
+J 10 330 10 340
+J 10 350 10 360
+J 10 370 10 380
+J 10 390 10 400
+J 10 410 10 420
+J 10 430 10 440
+J 10 450 10 460
+J 10 470 10 480
+J 10 490 10 500
+J 10 510 10 520
+J 10 530 10 540
+J 10 550 10 560
+J 10 570 10 580
+J 30 10 30 20
+J 30 30 30 40
+J 30 50 30 60
+J 30 70 30 80
+J 30 90 30 100
+J 30 110 30 120
+J 30 130 30 140
+J 30 150 30 160
+J 30 170 30 180
+J 30 190 30 200
+J 30 210 30 220
+J 30 230 30 240
+J 30 250 30 260
+J 30 270 30 280
+J 30 290 30 300
+J 30 310 30 320
+J 30 330 30 340
+J 30 350 30 360
+J 30 370 30 380
+J 30 390 30 400
+J 30 410 30 420
+J 30 430 30 440
+J 30 450 30 460
+J 30 470 30 480
+J 30 490 30 500
+J 30 510 30 520
+J 30 530 30 540
+J 30 550 30 560
+J 30 570 30 580
+J 50 10 50 20
+J 50 30 50 40
+J 50 50 50 60
+J 50 70 50 80
+J 50 90 50 100
+J 50 110 50 120
+J 50 130 50 140
+J 50 150 50 160
+J 50 170 50 180
+J 50 190 50 200
+J 50 210 50 220
+J 50 230 50 240
+J 50 250 50 260
+J 50 270 50 280
+J 50 290 50 300
+J 50 310 50 320
+J 50 330 50 340
+J 50 350 50 360
+J 50 370 50 380
+J 50 390 50 400
+J 50 410 50 420
+J 50 430 50 440
+J 50 450 50 460
+J 50 470 50 480
+J 50 490 50 500
+J 50 510 50 520
+J 50 530 50 540
+J 50 550 50 560
+J 50 570 50 580
+J 70 10 70 20
+J 70 30 70 40
+J 70 50 70 60
+J 70 70 70 80
+J 70 90 70 100
+J 70 110 70 120
+J 70 130 70 140
+J 70 150 70 160
+J 70 170 70 180
+J 70 190 70 200
+J 70 210 70 220
+J 70 230 70 240
+J 70 250 70 260
+J 70 270 70 280
+J 70 290 70 300
+J 70 310 70 320
+J 70 330 70 340
+J 70 350 70 360
+J 70 370 70 380
+J 70 390 70 400
+J 70 410 70 420
+J 70 430 70 440
+J 70 450 70 460
+J 70 470 70 480
+J 70 490 70 500
+J 70 510 70 520
+J 70 530 70 540
+J 70 550 70 560
+J 70 570 70 580
+J 90 10 90 20
+J 90 30 90 40
+J 90 50 90 60
+J 90 70 90 80
+J 90 90 90 100
+J 90 110 90 120
+J 90 130 90 140
+J 90 150 90 160
+J 90 170 90 180
+J 90 190 90 200
+J 90 210 90 220
+J 90 230 90 240
+J 90 250 90 260
+J 90 270 90 280
+J 90 290 90 300
+J 90 310 90 320
+J 90 330 90 340
+J 90 350 90 360
+J 90 370 90 380
+J 90 390 90 400
+J 90 410 90 420
+J 90 430 90 440
+J 90 450 90 460
+J 90 470 90 480
+J 90 490 90 500
+J 90 510 90 520
+J 90 530 90 540
+J 90 550 90 560
+J 90 570 90 580
+J 110 10 110 20
+J 110 30 110 40
+J 110 50 110 60
+J 110 70 110 80
+J 110 90 110 100
+J 110 110 110 120
+J 110 130 110 140
+J 110 150 110 160
+J 110 170 110 180
+J 110 190 110 200
+J 110 210 110 220
+J 110 230 110 240
+J 110 250 110 260
+J 110 270 110 280
+J 110 290 110 300
+J 110 310 110 320
+J 110 330 110 340
+J 110 350 110 360
+J 110 370 110 380
+J 110 390 110 400
+J 110 410 110 420
+J 110 430 110 440
+J 110 450 110 460
+J 110 470 110 480
+J 110 490 110 500
+J 110 510 110 520
+J 110 530 110 540
+J 110 550 110 560
+J 110 570 110 580
+J 130 10 130 20
+J 130 30 130 40
+J 130 50 130 60
+J 130 70 130 80
+J 130 90 130 100
+J 130 110 130 120
+J 130 130 130 140
+J 130 150 130 160
+J 130 170 130 180
+J 130 190 130 200
+J 130 210 130 220
+J 130 230 130 240
+J 130 250 130 260
+J 130 270 130 280
+J 130 290 130 300
+J 130 310 130 320
+J 130 330 130 340
+J 130 350 130 360
+J 130 370 130 380
+J 130 390 130 400
+J 130 410 130 420
+J 130 430 130 440
+J 130 450 130 460
+J 130 470 130 480
+J 130 490 130 500
+J 130 510 130 520
+J 130 530 130 540
+J 130 550 130 560
+J 130 570 130 580
+J 150 10 150 20
+J 150 30 150 40
+J 150 50 150 60
+J 150 70 150 80
+J 150 90 150 100
+J 150 110 150 120
+J 150 130 150 140
+J 150 150 150 160
+J 150 170 150 180
+J 150 190 150 200
+J 150 210 150 220
+J 150 230 150 240
+J 150 250 150 260
+J 150 270 150 280
+J 150 290 150 300
+J 150 310 150 320
+J 150 330 150 340
+J 150 350 150 360
+J 150 370 150 380
+J 150 390 150 400
+J 150 410 150 420
+J 150 430 150 440
+J 150 450 150 460
+J 150 470 150 480
+J 150 490 150 500
+J 150 510 150 520
+J 150 530 150 540
+J 150 550 150 560
+J 150 570 150 580
+J 170 10 170 20
+J 170 30 170 40
+J 170 50 170 60
+J 170 70 170 80
+J 170 90 170 100
+J 170 110 170 120
+J 170 130 170 140
+J 170 150 170 160
+J 170 170 170 180
+J 170 190 170 200
+J 170 210 170 220
+J 170 230 170 240
+J 170 250 170 260
+J 170 270 170 280
+J 170 290 170 300
+J 170 310 170 320
+J 170 330 170 340
+J 170 350 170 360
+J 170 370 170 380
+J 170 390 170 400
+J 170 410 170 420
+J 170 430 170 440
+J 170 450 170 460
+J 170 470 170 480
+J 170 490 170 500
+J 170 510 170 520
+J 170 530 170 540
+J 170 550 170 560
+J 170 570 170 580
+J 190 10 190 20
+J 190 30 190 40
+J 190 50 190 60
+J 190 70 190 80
+J 190 90 190 100
+J 190 110 190 120
+J 190 130 190 140
+J 190 150 190 160
+J 190 170 190 180
+J 190 190 190 200
+J 190 210 190 220
+J 190 230 190 240
+J 190 250 190 260
+J 190 270 190 280
+J 190 290 190 300
+J 190 310 190 320
+J 190 330 190 340
+J 190 350 190 360
+J 190 370 190 380
+J 190 390 190 400
+J 190 410 190 420
+J 190 430 190 440
+J 190 450 190 460
+J 190 470 190 480
+J 190 490 190 500
+J 190 510 190 520
+J 190 530 190 540
+J 190 550 190 560
+J 190 570 190 580
+J 210 10 210 20
+J 210 30 210 40
+J 210 50 210 60
+J 210 70 210 80
+J 210 90 210 100
+J 210 110 210 120
+J 210 130 210 140
+J 210 150 210 160
+J 210 170 210 180
+J 210 190 210 200
+J 210 210 210 220
+J 210 230 210 240
+J 210 250 210 260
+J 210 270 210 280
+J 210 290 210 300
+J 210 310 210 320
+J 210 330 210 340
+J 210 350 210 360
+J 210 370 210 380
+J 210 390 210 400
+J 210 410 210 420
+J 210 430 210 440
+J 210 450 210 460
+J 210 470 210 480
+J 210 490 210 500
+J 210 510 210 520
+J 210 530 210 540
+J 210 550 210 560
+J 210 570 210 580
+J 230 10 230 20
+J 230 30 230 40
+J 230 50 230 60
+J 230 70 230 80
+J 230 90 230 100
+J 230 110 230 120
+J 230 130 230 140
+J 230 150 230 160
+J 230 170 230 180
+J 230 190 230 200
+J 230 210 230 220
+J 230 230 230 240
+J 230 250 230 260
+J 230 270 230 280
+J 230 290 230 300
+J 230 310 230 320
+J 230 330 230 340
+J 230 350 230 360
+J 230 370 230 380
+J 230 390 230 400
+J 230 410 230 420
+J 230 430 230 440
+J 230 450 230 460
+J 230 470 230 480
+J 230 490 230 500
+J 230 510 230 520
+J 230 530 230 540
+J 230 550 230 560
+J 230 570 230 580
+J 250 10 250 20
+J 250 30 250 40
+J 250 50 250 60
+J 250 70 250 80
+J 250 90 250 100
+J 250 110 250 120
+J 250 130 250 140
+J 250 150 250 160
+J 250 170 250 180
+J 250 190 250 200
+J 250 210 250 220
+J 250 230 250 240
+J 250 250 250 260
+J 250 270 250 280
+J 250 290 250 300
+J 250 310 250 320
+J 250 330 250 340
+J 250 350 250 360
+J 250 370 250 380
+J 250 390 250 400
+J 250 410 250 420
+J 250 430 250 440
+J 250 450 250 460
+J 250 470 250 480
+J 250 490 250 500
+J 250 510 250 520
+J 250 530 250 540
+J 250 550 250 560
+J 250 570 250 580
+J 270 10 270 20
+J 270 30 270 40
+J 270 50 270 60
+J 270 70 270 80
+J 270 90 270 100
+J 270 110 270 120
+J 270 130 270 140
+J 270 150 270 160
+J 270 170 270 180
+J 270 190 270 200
+J 270 210 270 220
+J 270 230 270 240
+J 270 250 270 260
+J 270 270 270 280
+J 270 290 270 300
+J 270 310 270 320
+J 270 330 270 340
+J 270 350 270 360
+J 270 370 270 380
+J 270 390 270 400
+J 270 410 270 420
+J 270 430 270 440
+J 270 450 270 460
+J 270 470 270 480
+J 270 490 270 500
+J 270 510 270 520
+J 270 530 270 540
+J 270 550 270 560
+J 270 570 270 580
+J 290 10 290 20
+J 290 30 290 40
+J 290 50 290 60
+J 290 70 290 80
+J 290 90 290 100
+J 290 110 290 120
+J 290 130 290 140
+J 290 150 290 160
+J 290 170 290 180
+J 290 190 290 200
+J 290 210 290 220
+J 290 230 290 240
+J 290 250 290 260
+J 290 270 290 280
+J 290 290 290 300
+J 290 310 290 320
+J 290 330 290 340
+J 290 350 290 360
+J 290 370 290 380
+J 290 390 290 400
+J 290 410 290 420
+J 290 430 290 440
+J 290 450 290 460
+J 290 470 290 480
+J 290 490 290 500
+J 290 510 290 520
+J 290 530 290 540
+J 290 550 290 560
+J 290 570 290 580
+J 310 10 310 20
+J 310 30 310 40
+J 310 50 310 60
+J 310 70 310 80
+J 310 90 310 100
+J 310 110 310 120
+J 310 130 310 140
+J 310 150 310 160
+J 310 170 310 180
+J 310 190 310 200
+J 310 210 310 220
+J 310 230 310 240
+J 310 250 310 260
+J 310 270 310 280
+J 310 290 310 300
+J 310 310 310 320
+J 310 330 310 340
+J 310 350 310 360
+J 310 370 310 380
+J 310 390 310 400
+J 310 410 310 420
+J 310 430 310 440
+J 310 450 310 460
+J 310 470 310 480
+J 310 490 310 500
+J 310 510 310 520
+J 310 530 310 540
+J 310 550 310 560
+J 310 570 310 580
+J 330 10 330 20
+J 330 30 330 40
+J 330 50 330 60
+J 330 70 330 80
+J 330 90 330 100
+J 330 110 330 120
+J 330 130 330 140
+J 330 150 330 160
+J 330 170 330 180
+J 330 190 330 200
+J 330 210 330 220
+J 330 230 330 240
+J 330 250 330 260
+J 330 270 330 280
+J 330 290 330 300
+J 330 310 330 320
+J 330 330 330 340
+J 330 350 330 360
+J 330 370 330 380
+J 330 390 330 400
+J 330 410 330 420
+J 330 430 330 440
+J 330 450 330 460
+J 330 470 330 480
+J 330 490 330 500
+J 330 510 330 520
+J 330 530 330 540
+J 330 550 330 560
+J 330 570 330 580
+J 350 10 350 20
+J 350 30 350 40
+J 350 50 350 60
+J 350 70 350 80
+J 350 90 350 100
+J 350 110 350 120
+J 350 130 350 140
+J 350 150 350 160
+J 350 170 350 180
+J 350 190 350 200
+J 350 210 350 220
+J 350 230 350 240
+J 350 250 350 260
+J 350 270 350 280
+J 350 290 350 300
+J 350 310 350 320
+J 350 330 350 340
+J 350 350 350 360
+J 350 370 350 380
+J 350 390 350 400
+J 350 410 350 420
+J 350 430 350 440
+J 350 450 350 460
+J 350 470 350 480
+J 350 490 350 500
+J 350 510 350 520
+J 350 530 350 540
+J 350 550 350 560
+J 350 570 350 580
+J 370 10 370 20
+J 370 30 370 40
+J 370 50 370 60
+J 370 70 370 80
+J 370 90 370 100
+J 370 110 370 120
+J 370 130 370 140
+J 370 150 370 160
+J 370 170 370 180
+J 370 190 370 200
+J 370 210 370 220
+J 370 230 370 240
+J 370 250 370 260
+J 370 270 370 280
+J 370 290 370 300
+J 370 310 370 320
+J 370 330 370 340
+J 370 350 370 360
+J 370 370 370 380
+J 370 390 370 400
+J 370 410 370 420
+J 370 430 370 440
+J 370 450 370 460
+J 370 470 370 480
+J 370 490 370 500
+J 370 510 370 520
+J 370 530 370 540
+J 370 550 370 560
+J 370 570 370 580
+J 390 10 390 20
+J 390 30 390 40
+J 390 50 390 60
+J 390 70 390 80
+J 390 90 390 100
+J 390 110 390 120
+J 390 130 390 140
+J 390 150 390 160
+J 390 170 390 180
+J 390 190 390 200
+J 390 210 390 220
+J 390 230 390 240
+J 390 250 390 260
+J 390 270 390 280
+J 390 290 390 300
+J 390 310 390 320
+J 390 330 390 340
+J 390 350 390 360
+J 390 370 390 380
+J 390 390 390 400
+J 390 410 390 420
+J 390 430 390 440
+J 390 450 390 460
+J 390 470 390 480
+J 390 490 390 500
+J 390 510 390 520
+J 390 530 390 540
+J 390 550 390 560
+J 390 570 390 580
+J 410 10 410 20
+J 410 30 410 40
+J 410 50 410 60
+J 410 70 410 80
+J 410 90 410 100
+J 410 110 410 120
+J 410 130 410 140
+J 410 150 410 160
+J 410 170 410 180
+J 410 190 410 200
+J 410 210 410 220
+J 410 230 410 240
+J 410 250 410 260
+J 410 270 410 280
+J 410 290 410 300
+J 410 310 410 320
+J 410 330 410 340
+J 410 350 410 360
+J 410 370 410 380
+J 410 390 410 400
+J 410 410 410 420
+J 410 430 410 440
+J 410 450 410 460
+J 410 470 410 480
+J 410 490 410 500
+J 410 510 410 520
+J 410 530 410 540
+J 410 550 410 560
+J 410 570 410 580
+J 430 10 430 20
+J 430 30 430 40
+J 430 50 430 60
+J 430 70 430 80
+J 430 90 430 100
+J 430 110 430 120
+J 430 130 430 140
+J 430 150 430 160
+J 430 170 430 180
+J 430 190 430 200
+J 430 210 430 220
+J 430 230 430 240
+J 430 250 430 260
+J 430 270 430 280
+J 430 290 430 300
+J 430 310 430 320
+J 430 330 430 340
+J 430 350 430 360
+J 430 370 430 380
+J 430 390 430 400
+J 430 410 430 420
+J 430 430 430 440
+J 430 450 430 460
+J 430 470 430 480
+J 430 490 430 500
+J 430 510 430 520
+J 430 530 430 540
+J 430 550 430 560
+J 430 570 430 580
+J 450 10 450 20
+J 450 30 450 40
+J 450 50 450 60
+J 450 70 450 80
+J 450 90 450 100
+J 450 110 450 120
+J 450 130 450 140
+J 450 150 450 160
+J 450 170 450 180
+J 450 190 450 200
+J 450 210 450 220
+J 450 230 450 240
+J 450 250 450 260
+J 450 270 450 280
+J 450 290 450 300
+J 450 310 450 320
+J 450 330 450 340
+J 450 350 450 360
+J 450 370 450 380
+J 450 390 450 400
+J 450 410 450 420
+J 450 430 450 440
+J 450 450 450 460
+J 450 470 450 480
+J 450 490 450 500
+J 450 510 450 520
+J 450 530 450 540
+J 450 550 450 560
+J 450 570 450 580
+J 470 10 470 20
+J 470 30 470 40
+J 470 50 470 60
+J 470 70 470 80
+J 470 90 470 100
+J 470 110 470 120
+J 470 130 470 140
+J 470 150 470 160
+J 470 170 470 180
+J 470 190 470 200
+J 470 210 470 220
+J 470 230 470 240
+J 470 250 470 260
+J 470 270 470 280
+J 470 290 470 300
+J 470 310 470 320
+J 470 330 470 340
+J 470 350 470 360
+J 470 370 470 380
+J 470 390 470 400
+J 470 410 470 420
+J 470 430 470 440
+J 470 450 470 460
+J 470 470 470 480
+J 470 490 470 500
+J 470 510 470 520
+J 470 530 470 540
+J 470 550 470 560
+J 470 570 470 580
+J 490 10 490 20
+J 490 30 490 40
+J 490 50 490 60
+J 490 70 490 80
+J 490 90 490 100
+J 490 110 490 120
+J 490 130 490 140
+J 490 150 490 160
+J 490 170 490 180
+J 490 190 490 200
+J 490 210 490 220
+J 490 230 490 240
+J 490 250 490 260
+J 490 270 490 280
+J 490 290 490 300
+J 490 310 490 320
+J 490 330 490 340
+J 490 350 490 360
+J 490 370 490 380
+J 490 390 490 400
+J 490 410 490 420
+J 490 430 490 440
+J 490 450 490 460
+J 490 470 490 480
+J 490 490 490 500
+J 490 510 490 520
+J 490 530 490 540
+J 490 550 490 560
+J 490 570 490 580
+J 510 10 510 20
+J 510 30 510 40
+J 510 50 510 60
+J 510 70 510 80
+J 510 90 510 100
+J 510 110 510 120
+J 510 130 510 140
+J 510 150 510 160
+J 510 170 510 180
+J 510 190 510 200
+J 510 210 510 220
+J 510 230 510 240
+J 510 250 510 260
+J 510 270 510 280
+J 510 290 510 300
+J 510 310 510 320
+J 510 330 510 340
+J 510 350 510 360
+J 510 370 510 380
+J 510 390 510 400
+J 510 410 510 420
+J 510 430 510 440
+J 510 450 510 460
+J 510 470 510 480
+J 510 490 510 500
+J 510 510 510 520
+J 510 530 510 540
+J 510 550 510 560
+J 510 570 510 580
+J 530 10 530 20
+J 530 30 530 40
+J 530 50 530 60
+J 530 70 530 80
+J 530 90 530 100
+J 530 110 530 120
+J 530 130 530 140
+J 530 150 530 160
+J 530 170 530 180
+J 530 190 530 200
+J 530 210 530 220
+J 530 230 530 240
+J 530 250 530 260
+J 530 270 530 280
+J 530 290 530 300
+J 530 310 530 320
+J 530 330 530 340
+J 530 350 530 360
+J 530 370 530 380
+J 530 390 530 400
+J 530 410 530 420
+J 530 430 530 440
+J 530 450 530 460
+J 530 470 530 480
+J 530 490 530 500
+J 530 510 530 520
+J 530 530 530 540
+J 530 550 530 560
+J 530 570 530 580
+J 550 10 550 20
+J 550 30 550 40
+J 550 50 550 60
+J 550 70 550 80
+J 550 90 550 100
+J 550 110 550 120
+J 550 130 550 140
+J 550 150 550 160
+J 550 170 550 180
+J 550 190 550 200
+J 550 210 550 220
+J 550 230 550 240
+J 550 250 550 260
+J 550 270 550 280
+J 550 290 550 300
+J 550 310 550 320
+J 550 330 550 340
+J 550 350 550 360
+J 550 370 550 380
+J 550 390 550 400
+J 550 410 550 420
+J 550 430 550 440
+J 550 450 550 460
+J 550 470 550 480
+J 550 490 550 500
+J 550 510 550 520
+J 550 530 550 540
+J 550 550 550 560
+J 550 570 550 580
+J 570 10 570 20
+J 570 30 570 40
+J 570 50 570 60
+J 570 70 570 80
+J 570 90 570 100
+J 570 110 570 120
+J 570 130 570 140
+J 570 150 570 160
+J 570 170 570 180
+J 570 190 570 200
+J 570 210 570 220
+J 570 230 570 240
+J 570 250 570 260
+J 570 270 570 280
+J 570 290 570 300
+J 570 310 570 320
+J 570 330 570 340
+J 570 350 570 360
+J 570 370 570 380
+J 570 390 570 400
+J 570 410 570 420
+J 570 430 570 440
+J 570 450 570 460
+J 570 470 570 480
+J 570 490 570 500
+J 570 510 570 520
+J 570 530 570 540
+J 570 550 570 560
+J 570 570 570 580
+E