Rectangle Algebra

import qualreas as qr
import os
import numpy as np

path = os.path.join(os.getenv('PYPROJ'), 'qualreas')

Load the 2D Point Algebra

The 2-dimensional point algebra is based on the eight compass directions, N, S, E, W, NW, NE, SW, SE, and EQ (equals), and it is derived in the second half of the Jupyter notebook, “derive_point_algebras.ipynb”.

ptalg2d = qr.Algebra(os.path.join(path, "Algebras/2D_Point_Algebra.json"))
ptalg2d.summary()
  Algebra Name: 2D_Point_Algebra
   Description: Autogenerated 2-dimensional point algebra
 Equality Rels: EQ
     Relations:
            NAME (SYMBOL)         CONVERSE (ABBREV)  REFLEXIVE  SYMMETRIC TRANSITIVE   DOMAIN        RANGE
              South (  S)               North (  N)    False      False       True       2DPt          2DPt
             Equals ( EQ)              Equals ( EQ)     True       True       True       2DPt          2DPt
              North (  N)               South (  S)    False      False       True       2DPt          2DPt
          Southwest ( SW)           Northeast ( NE)    False      False       True       2DPt          2DPt
               West (  W)                East (  E)    False      False       True       2DPt          2DPt
          Northwest ( NW)           Southeast ( SE)    False      False       True       2DPt          2DPt
          Southeast ( SE)           Northwest ( NW)    False      False       True       2DPt          2DPt
               East (  E)                West (  W)    False      False       True       2DPt          2DPt
          Northeast ( NE)           Southwest ( SW)    False      False       True       2DPt          2DPt

Domain & Range Abbreviations:
   Pt = Point
 PInt = Proper Interval
qr.print_point_algebra_composition_table(ptalg2d)
2D_Point_Algebra
Elements: S, EQ, N, SW, W, NW, SE, E, NE
==============================
 rel1 ; rel2 = composition
==============================
   S      S      S
   S     EQ      S
   S      N      S|EQ|N
   S     SW      SW
   S      W      SW
   S     NW      SW|W|NW
   S     SE      SE
   S      E      SE
   S     NE      SE|E|NE
------------------------------
  EQ      S      S
  EQ     EQ      EQ
  EQ      N      N
  EQ     SW      SW
  EQ      W      W
  EQ     NW      NW
  EQ     SE      SE
  EQ      E      E
  EQ     NE      NE
------------------------------
   N      S      S|EQ|N
   N     EQ      N
   N      N      N
   N     SW      SW|W|NW
   N      W      NW
   N     NW      NW
   N     SE      SE|E|NE
   N      E      NE
   N     NE      NE
------------------------------
  SW      S      SW
  SW     EQ      SW
  SW      N      SW|W|NW
  SW     SW      SW
  SW      W      SW
  SW     NW      SW|W|NW
  SW     SE      S|SW|SE
  SW      E      S|SW|SE
  SW     NE      S|EQ|N|SW|W|NW|SE|E|NE
------------------------------
   W      S      SW
   W     EQ      W
   W      N      NW
   W     SW      SW
   W      W      W
   W     NW      NW
   W     SE      S|SW|SE
   W      E      EQ|W|E
   W     NE      N|NW|NE
------------------------------
  NW      S      SW|W|NW
  NW     EQ      NW
  NW      N      NW
  NW     SW      SW|W|NW
  NW      W      NW
  NW     NW      NW
  NW     SE      S|EQ|N|SW|W|NW|SE|E|NE
  NW      E      N|NW|NE
  NW     NE      N|NW|NE
------------------------------
  SE      S      SE
  SE     EQ      SE
  SE      N      SE|E|NE
  SE     SW      S|SW|SE
  SE      W      S|SW|SE
  SE     NW      S|EQ|N|SW|W|NW|SE|E|NE
  SE     SE      SE
  SE      E      SE
  SE     NE      SE|E|NE
------------------------------
   E      S      SE
   E     EQ      E
   E      N      NE
   E     SW      S|SW|SE
   E      W      EQ|W|E
   E     NW      N|NW|NE
   E     SE      SE
   E      E      E
   E     NE      NE
------------------------------
  NE      S      SE|E|NE
  NE     EQ      NE
  NE      N      NE
  NE     SW      S|EQ|N|SW|W|NW|SE|E|NE
  NE      W      N|NW|NE
  NE     NW      N|NW|NE
  NE     SE      SE|E|NE
  NE      E      NE
  NE     NE      NE
------------------------------

Derive Rectangle Relations

Define a Four Point Network (Class) for 2D Points

class Four2DPointNet(qr.Network):
    """Create four 2D Points that represent the coordinates of the upper-right (UR)
    and lower-left (LL) of two rectangles. For example, (LL1, UR1) and (LL2, UR2),
    where LL1 SW UR1, LL2 SW UR2, and SW is the 2DPoint relation southwest,
    represents two proper rectangles. Return the network and the four spatial entities."""
    def __init__(self, algebra, name, southwest="SW", lowerleft="LL", upperright="UR"):
        self.algebra = algebra
        self.SW = algebra.relset(southwest)
        # LL and UR coordinates of rectangle 1
        LL1 = lowerleft + "1"
        UR1 = upperright + "1"
        self.LL1 = qr.SpatialEntity(["2DPoint"], name=LL1)
        self.UR1 = qr.SpatialEntity(["2DPoint"], name=UR1)
        # LL and UR coordinates of rectangle 2
        LL2 = lowerleft + "2"
        UR2 = upperright + "2"
        self.LL2 = qr.SpatialEntity(["2DPoint"], name=LL2)
        self.UR2 = qr.SpatialEntity(["2DPoint"], name=UR2)
        self.name_list = [LL1, UR1, LL2, UR2]
        super().__init__(algebra, name)
        self.add_constraint(self.LL1, self.UR1, self.SW, verbose=False)
        self.add_constraint(self.LL2, self.UR2, self.SW, verbose=False)

    def get_points(self):
        return [self.LL1, self.UR1, self.LL2, self.UR2]
four_pt_net = Four2DPointNet(ptalg2d, "FourPtNet")

four_pt_net
<__main__.Four2DPointNet at 0x7fa4e81dff10>

The following few cells are just checks to make sure the the four point network looks OK.

four_pt_net.get_points()
[SpatialEntity(['2DPoint'] 'LL1'),
 SpatialEntity(['2DPoint'] 'UR1'),
 SpatialEntity(['2DPoint'] 'LL2'),
 SpatialEntity(['2DPoint'] 'UR2')]
four_pt_net.summary()
FourPtNet: 4 nodes, 8 edges
  Algebra: 2D_Point_Algebra
  LL1:['2DPoint']
    => LL1: EQ
    => UR1: SW
  UR1:['2DPoint']
    => UR1: EQ
  LL2:['2DPoint']
    => LL2: EQ
    => UR2: SW
  UR2:['2DPoint']
    => UR2: EQ
four_pt_net.propagate()
True
four_pt_net.summary()
FourPtNet: 4 nodes, 16 edges
  Algebra: 2D_Point_Algebra
  LL1:['2DPoint']
    => LL1: EQ
    => UR1: SW
    => LL2: S|EQ|N|SW|W|NW|SE|E|NE
    => UR2: S|EQ|N|SW|W|NW|SE|E|NE
  UR1:['2DPoint']
    => UR1: EQ
    => LL2: S|EQ|N|SW|W|NW|SE|E|NE
    => UR2: S|EQ|N|SW|W|NW|SE|E|NE
  LL2:['2DPoint']
    => LL2: EQ
    => UR2: SW
  UR2:['2DPoint']
    => UR2: EQ

Derive the Consistent Networks for Proper Rectangles

def generate_consistent_2D_networks(point_algebra, lessthan=["SW"], startname="LL", endname="UR",
                                    verbose=False):
    """For a given point algebra and southwest relation, derive all possible consistent networks
    of 4 points, where the points represent the lower-left and upper-right of 2 rectangles."""
    consistent_nets = dict()
    for elem13 in point_algebra.elements:
        for elem23 in point_algebra.elements:
            for elem14 in point_algebra.elements:
                for elem24 in point_algebra.elements:
                    four_pt_net_name = elem13 + ',' + elem14 + ',' + elem23 + ',' + elem24
                    ptnet = Four2DPointNet(point_algebra, four_pt_net_name, lessthan, startname, endname)
                    pt1, pt2, pt3, pt4 = ptnet.get_points()
                    rs13 = point_algebra.relset(elem13)
                    rs14 = point_algebra.relset(elem14)
                    rs23 = point_algebra.relset(elem23)
                    rs24 = point_algebra.relset(elem24)
                    ptnet.add_constraint(pt1, pt3, rs13)
                    ptnet.add_constraint(pt1, pt4, rs14)
                    ptnet.add_constraint(pt2, pt3, rs23)
                    ptnet.add_constraint(pt2, pt4, rs24)
                    if ptnet.propagate():
                        elem_key = ",".join([str(rs13), str(rs14), str(rs23), str(rs24)])
                        consistent_nets[elem_key] = ptnet
                        if verbose:
                            print(np.array(ptnet.to_list()))
    print(f"\n{len(consistent_nets)} consistent networks")
    return consistent_nets

When we run the code below (with lessthan=[“SW”]) then we will get 169 (i.e., 13x13) consistent 4 point networks, and we do!

In that case, each network corresponds to a unique configuration of two proper rectangles.

By proper rectangle we mean that the rectangles cannot degenerate into segments or points.

If we set lessthan=[“W”, “SW”], then line segments (0 height) can be considered to be rectangles, and we will get 234 configurations. If we use “S”, instead of “W”, then 0-width line segments can be considered to be rectangles, and we will again get 234 configurations.

If lessthan=[“EQ”, “W”, “SW”], then points can be considered to be (degenerate) rectangles, and we will get 261 configurations.

lessthan=[“EQ”, “W”, “S”, “SW”] yields 324 configurations of two (possibly degenerate) rectangles.

result_proper = generate_consistent_2D_networks(ptalg2d, lessthan=["SW"], verbose=True)
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'SE' 'S']
 ['N' 'NW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'SE' 'SW']
 ['N' 'NW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'SE' 'SE']
 ['N' 'NW' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'E' 'S']
 ['N' 'W' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'E' 'SW']
 ['N' 'W' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'E' 'SE']
 ['N' 'W' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'NE' 'S']
 ['N' 'SW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']
 ['N' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'NE' 'N']
 ['N' 'SW' 'EQ' 'SW']
 ['NE' 'S' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'NE' 'SW']
 ['N' 'SW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'NE' 'W']
 ['N' 'SW' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'NE' 'NW']
 ['N' 'SW' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'NE' 'SE']
 ['N' 'SW' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'NE' 'E']
 ['N' 'SW' 'EQ' 'SW']
 ['NE' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'NE' 'NE']
 ['N' 'SW' 'EQ' 'SW']
 ['NE' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'S']
 ['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']
 ['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'N']
 ['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'S' 'NE' 'EQ']]
[['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'SW']
 ['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'W']
 ['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'NW']
 ['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'SE']
 ['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'E']
 ['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'NE']
 ['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'SW']
 ['NE' 'EQ' 'NE' 'S']
 ['S' 'SW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']
 ['S' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'SW']
 ['NE' 'EQ' 'NE' 'N']
 ['S' 'SW' 'EQ' 'SW']
 ['NE' 'S' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'SW']
 ['NE' 'EQ' 'NE' 'SW']
 ['S' 'SW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'SW']
 ['NE' 'EQ' 'NE' 'W']
 ['S' 'SW' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'SW']
 ['NE' 'EQ' 'NE' 'NW']
 ['S' 'SW' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'SW']
 ['NE' 'EQ' 'NE' 'SE']
 ['S' 'SW' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'SW']
 ['NE' 'EQ' 'NE' 'E']
 ['S' 'SW' 'EQ' 'SW']
 ['NE' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'SW']
 ['NE' 'EQ' 'NE' 'NE']
 ['S' 'SW' 'EQ' 'SW']
 ['NE' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'W']
 ['NE' 'EQ' 'NE' 'N']
 ['S' 'SW' 'EQ' 'SW']
 ['E' 'S' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'W']
 ['NE' 'EQ' 'NE' 'NW']
 ['S' 'SW' 'EQ' 'SW']
 ['E' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'W']
 ['NE' 'EQ' 'NE' 'NE']
 ['S' 'SW' 'EQ' 'SW']
 ['E' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'NW']
 ['NE' 'EQ' 'NE' 'N']
 ['S' 'SW' 'EQ' 'SW']
 ['SE' 'S' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'NW']
 ['NE' 'EQ' 'NE' 'NW']
 ['S' 'SW' 'EQ' 'SW']
 ['SE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'NW']
 ['NE' 'EQ' 'NE' 'NE']
 ['S' 'SW' 'EQ' 'SW']
 ['SE' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'S' 'SW']
 ['NE' 'N' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'EQ' 'SW']
 ['NE' 'EQ' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'N' 'SW']
 ['NE' 'S' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'N' 'W']
 ['NE' 'S' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'N' 'NW']
 ['NE' 'S' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'SW' 'SW']
 ['NE' 'NE' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'W' 'SW']
 ['NE' 'E' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NW' 'SW']
 ['NE' 'SE' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NW' 'W']
 ['NE' 'SE' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NW' 'NW']
 ['NE' 'SE' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'SE' 'S']
 ['NE' 'NW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'SE' 'SW']
 ['NE' 'NW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'SE' 'SE']
 ['NE' 'NW' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'E' 'S']
 ['NE' 'W' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'E' 'SW']
 ['NE' 'W' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'E' 'SE']
 ['NE' 'W' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NE' 'S']
 ['NE' 'SW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']
 ['NE' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NE' 'N']
 ['NE' 'SW' 'EQ' 'SW']
 ['NE' 'S' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NE' 'SW']
 ['NE' 'SW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NE' 'W']
 ['NE' 'SW' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NE' 'NW']
 ['NE' 'SW' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NE' 'SE']
 ['NE' 'SW' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NE' 'E']
 ['NE' 'SW' 'EQ' 'SW']
 ['NE' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NE' 'NE']
 ['NE' 'SW' 'EQ' 'SW']
 ['NE' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'N' 'SW']
 ['E' 'S' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'N' 'W']
 ['E' 'S' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'N' 'NW']
 ['E' 'S' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NW' 'SW']
 ['E' 'SE' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NW' 'W']
 ['E' 'SE' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NW' 'NW']
 ['E' 'SE' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NE' 'S']
 ['E' 'SW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']
 ['E' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NE' 'N']
 ['E' 'SW' 'EQ' 'SW']
 ['NE' 'S' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NE' 'SW']
 ['E' 'SW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NE' 'W']
 ['E' 'SW' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NE' 'NW']
 ['E' 'SW' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NE' 'SE']
 ['E' 'SW' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NE' 'E']
 ['E' 'SW' 'EQ' 'SW']
 ['NE' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NE' 'NE']
 ['E' 'SW' 'EQ' 'SW']
 ['NE' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'N' 'SW']
 ['SE' 'S' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'N' 'W']
 ['SE' 'S' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'N' 'NW']
 ['SE' 'S' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'W']
 ['NE' 'EQ' 'N' 'NW']
 ['SE' 'S' 'EQ' 'SW']
 ['E' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'NW']
 ['NE' 'EQ' 'N' 'NW']
 ['SE' 'S' 'EQ' 'SW']
 ['SE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'NW' 'SW']
 ['SE' 'SE' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'NW' 'W']
 ['SE' 'SE' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'NW' 'NW']
 ['SE' 'SE' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'W']
 ['NE' 'EQ' 'NW' 'NW']
 ['SE' 'SE' 'EQ' 'SW']
 ['E' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'NW']
 ['NE' 'EQ' 'NW' 'NW']
 ['SE' 'SE' 'EQ' 'SW']
 ['SE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'NE' 'S']
 ['SE' 'SW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']
 ['SE' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'NE' 'N']
 ['SE' 'SW' 'EQ' 'SW']
 ['NE' 'S' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'NE' 'SW']
 ['SE' 'SW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'NE' 'W']
 ['SE' 'SW' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'NE' 'NW']
 ['SE' 'SW' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'NE' 'SE']
 ['SE' 'SW' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'NE' 'E']
 ['SE' 'SW' 'EQ' 'SW']
 ['NE' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'NE' 'NE']
 ['SE' 'SW' 'EQ' 'SW']
 ['NE' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'W']
 ['NE' 'EQ' 'NE' 'N']
 ['SE' 'SW' 'EQ' 'SW']
 ['E' 'S' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'W']
 ['NE' 'EQ' 'NE' 'NW']
 ['SE' 'SW' 'EQ' 'SW']
 ['E' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'W']
 ['NE' 'EQ' 'NE' 'NE']
 ['SE' 'SW' 'EQ' 'SW']
 ['E' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'NW']
 ['NE' 'EQ' 'NE' 'N']
 ['SE' 'SW' 'EQ' 'SW']
 ['SE' 'S' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'NW']
 ['NE' 'EQ' 'NE' 'NW']
 ['SE' 'SW' 'EQ' 'SW']
 ['SE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'NW']
 ['NE' 'EQ' 'NE' 'NE']
 ['SE' 'SW' 'EQ' 'SW']
 ['SE' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'S']
 ['NE' 'EQ' 'SE' 'SE']
 ['NW' 'NW' 'EQ' 'SW']
 ['N' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'SE' 'S']
 ['NW' 'NW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'SE' 'SW']
 ['NW' 'NW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'SE' 'SE']
 ['NW' 'NW' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SE']
 ['NE' 'EQ' 'SE' 'SE']
 ['NW' 'NW' 'EQ' 'SW']
 ['NW' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'S']
 ['NE' 'EQ' 'E' 'SE']
 ['NW' 'W' 'EQ' 'SW']
 ['N' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'E' 'S']
 ['NW' 'W' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'E' 'SW']
 ['NW' 'W' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'E' 'SE']
 ['NW' 'W' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SE']
 ['NE' 'EQ' 'E' 'SE']
 ['NW' 'W' 'EQ' 'SW']
 ['NW' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'S']
 ['NE' 'EQ' 'NE' 'SE']
 ['NW' 'SW' 'EQ' 'SW']
 ['N' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'S']
 ['NE' 'EQ' 'NE' 'E']
 ['NW' 'SW' 'EQ' 'SW']
 ['N' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'S']
 ['NE' 'EQ' 'NE' 'NE']
 ['NW' 'SW' 'EQ' 'SW']
 ['N' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'NE' 'S']
 ['NW' 'SW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']
 ['NW' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'NE' 'N']
 ['NW' 'SW' 'EQ' 'SW']
 ['NE' 'S' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'NE' 'SW']
 ['NW' 'SW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'NE' 'W']
 ['NW' 'SW' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'NE' 'NW']
 ['NW' 'SW' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'NE' 'SE']
 ['NW' 'SW' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'NE' 'E']
 ['NW' 'SW' 'EQ' 'SW']
 ['NE' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'NE' 'NE']
 ['NW' 'SW' 'EQ' 'SW']
 ['NE' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SE']
 ['NE' 'EQ' 'NE' 'SE']
 ['NW' 'SW' 'EQ' 'SW']
 ['NW' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SE']
 ['NE' 'EQ' 'NE' 'E']
 ['NW' 'SW' 'EQ' 'SW']
 ['NW' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SE']
 ['NE' 'EQ' 'NE' 'NE']
 ['NW' 'SW' 'EQ' 'SW']
 ['NW' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'S']
 ['NE' 'EQ' 'NE' 'SE']
 ['W' 'SW' 'EQ' 'SW']
 ['N' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'S']
 ['NE' 'EQ' 'NE' 'E']
 ['W' 'SW' 'EQ' 'SW']
 ['N' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'S']
 ['NE' 'EQ' 'NE' 'NE']
 ['W' 'SW' 'EQ' 'SW']
 ['N' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'SW']
 ['NE' 'EQ' 'NE' 'S']
 ['W' 'SW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']
 ['W' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'SW']
 ['NE' 'EQ' 'NE' 'N']
 ['W' 'SW' 'EQ' 'SW']
 ['NE' 'S' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'SW']
 ['NE' 'EQ' 'NE' 'SW']
 ['W' 'SW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'SW']
 ['NE' 'EQ' 'NE' 'W']
 ['W' 'SW' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'SW']
 ['NE' 'EQ' 'NE' 'NW']
 ['W' 'SW' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'SW']
 ['NE' 'EQ' 'NE' 'SE']
 ['W' 'SW' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'SW']
 ['NE' 'EQ' 'NE' 'E']
 ['W' 'SW' 'EQ' 'SW']
 ['NE' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'SW']
 ['NE' 'EQ' 'NE' 'NE']
 ['W' 'SW' 'EQ' 'SW']
 ['NE' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'SE']
 ['NE' 'EQ' 'NE' 'SE']
 ['W' 'SW' 'EQ' 'SW']
 ['NW' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'SE']
 ['NE' 'EQ' 'NE' 'E']
 ['W' 'SW' 'EQ' 'SW']
 ['NW' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'SE']
 ['NE' 'EQ' 'NE' 'NE']
 ['W' 'SW' 'EQ' 'SW']
 ['NW' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'S']
 ['NE' 'EQ' 'NE' 'SE']
 ['SW' 'SW' 'EQ' 'SW']
 ['N' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'S']
 ['NE' 'EQ' 'NE' 'E']
 ['SW' 'SW' 'EQ' 'SW']
 ['N' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'S']
 ['NE' 'EQ' 'NE' 'NE']
 ['SW' 'SW' 'EQ' 'SW']
 ['N' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'EQ']
 ['NE' 'EQ' 'NE' 'NE']
 ['SW' 'SW' 'EQ' 'SW']
 ['EQ' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'N']
 ['NE' 'EQ' 'NE' 'NE']
 ['SW' 'SW' 'EQ' 'SW']
 ['S' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'SW']
 ['NE' 'EQ' 'NE' 'S']
 ['SW' 'SW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']
 ['SW' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'SW']
 ['NE' 'EQ' 'NE' 'N']
 ['SW' 'SW' 'EQ' 'SW']
 ['NE' 'S' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'SW']
 ['NE' 'EQ' 'NE' 'SW']
 ['SW' 'SW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'SW']
 ['NE' 'EQ' 'NE' 'W']
 ['SW' 'SW' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'SW']
 ['NE' 'EQ' 'NE' 'NW']
 ['SW' 'SW' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'SW']
 ['NE' 'EQ' 'NE' 'SE']
 ['SW' 'SW' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'SW']
 ['NE' 'EQ' 'NE' 'E']
 ['SW' 'SW' 'EQ' 'SW']
 ['NE' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'SW']
 ['NE' 'EQ' 'NE' 'NE']
 ['SW' 'SW' 'EQ' 'SW']
 ['NE' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'W']
 ['NE' 'EQ' 'NE' 'N']
 ['SW' 'SW' 'EQ' 'SW']
 ['E' 'S' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'W']
 ['NE' 'EQ' 'NE' 'NW']
 ['SW' 'SW' 'EQ' 'SW']
 ['E' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'W']
 ['NE' 'EQ' 'NE' 'NE']
 ['SW' 'SW' 'EQ' 'SW']
 ['E' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'NW']
 ['NE' 'EQ' 'NE' 'N']
 ['SW' 'SW' 'EQ' 'SW']
 ['SE' 'S' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'NW']
 ['NE' 'EQ' 'NE' 'NW']
 ['SW' 'SW' 'EQ' 'SW']
 ['SE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'NW']
 ['NE' 'EQ' 'NE' 'NE']
 ['SW' 'SW' 'EQ' 'SW']
 ['SE' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'SE']
 ['NE' 'EQ' 'NE' 'SE']
 ['SW' 'SW' 'EQ' 'SW']
 ['NW' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'SE']
 ['NE' 'EQ' 'NE' 'E']
 ['SW' 'SW' 'EQ' 'SW']
 ['NW' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'SE']
 ['NE' 'EQ' 'NE' 'NE']
 ['SW' 'SW' 'EQ' 'SW']
 ['NW' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'E']
 ['NE' 'EQ' 'NE' 'NE']
 ['SW' 'SW' 'EQ' 'SW']
 ['W' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'NE']
 ['NE' 'EQ' 'NE' 'NE']
 ['SW' 'SW' 'EQ' 'SW']
 ['SW' 'SW' 'NE' 'EQ']]

169 consistent networks
len(result_proper)
169
result_all = generate_consistent_2D_networks(ptalg2d, lessthan=["EQ", "W", "S", "SW"], verbose=True)
[['EQ' 'S|EQ' 'S' 'S']
 ['EQ|N' 'EQ' 'S' 'S']
 ['N' 'N' 'EQ' 'S|EQ']
 ['N' 'N' 'EQ|N' 'EQ']]
[['EQ' 'S|EQ' 'S' 'SW']
 ['EQ|N' 'EQ' 'S' 'SW']
 ['N' 'N' 'EQ' 'SW|W']
 ['NE' 'NE' 'E|NE' 'EQ']]
[['EQ' 'S' 'S' 'S']
 ['N' 'EQ' 'EQ' 'S']
 ['N' 'EQ' 'EQ' 'S']
 ['N' 'N' 'N' 'EQ']]
[['EQ' 'S' 'S' 'S']
 ['N' 'EQ' 'EQ' 'EQ']
 ['N' 'EQ' 'EQ' 'EQ']
 ['N' 'EQ' 'EQ' 'EQ']]
[['EQ' 'S' 'S' 'SW']
 ['N' 'EQ' 'EQ' 'SW']
 ['N' 'EQ' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'S' 'S' 'SW']
 ['N' 'EQ' 'EQ' 'W']
 ['N' 'EQ' 'EQ' 'W']
 ['NE' 'E' 'E' 'EQ']]
[['EQ' 'S' 'S' 'S']
 ['N' 'EQ' 'N' 'S']
 ['N' 'S' 'EQ' 'S']
 ['N' 'N' 'N' 'EQ']]
[['EQ' 'S' 'S' 'S']
 ['N' 'EQ' 'N' 'EQ']
 ['N' 'S' 'EQ' 'S']
 ['N' 'EQ' 'N' 'EQ']]
[['EQ' 'S' 'S' 'S']
 ['N' 'EQ' 'N' 'N']
 ['N' 'S' 'EQ' 'S|EQ']
 ['N' 'S' 'EQ|N' 'EQ']]
[['EQ' 'S' 'S' 'SW']
 ['N' 'EQ' 'N' 'SW']
 ['N' 'S' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'S' 'S' 'SW']
 ['N' 'EQ' 'N' 'W']
 ['N' 'S' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'S' 'S' 'SW']
 ['N' 'EQ' 'N' 'NW']
 ['N' 'S' 'EQ' 'SW|W']
 ['NE' 'SE' 'E|NE' 'EQ']]
[['EQ' 'SW|W' 'S' 'S']
 ['E|NE' 'EQ' 'SE' 'SE']
 ['N' 'NW' 'EQ' 'S|EQ']
 ['N' 'NW' 'EQ|N' 'EQ']]
[['EQ' 'SW|W' 'S' 'SW']
 ['E|NE' 'EQ' 'SE' 'S']
 ['N' 'NW' 'EQ' 'SW|W']
 ['NE' 'N' 'E|NE' 'EQ']]
[['EQ' 'SW|W' 'S' 'SW']
 ['E|NE' 'EQ' 'SE' 'SW']
 ['N' 'NW' 'EQ' 'SW|W']
 ['NE' 'NE' 'E|NE' 'EQ']]
[['EQ' 'SW|W' 'S' 'SW']
 ['E|NE' 'EQ' 'SE' 'SE']
 ['N' 'NW' 'EQ' 'SW|W']
 ['NE' 'NW' 'E|NE' 'EQ']]
[['EQ' 'SW' 'S' 'S']
 ['NE' 'EQ' 'E' 'SE']
 ['N' 'W' 'EQ' 'S']
 ['N' 'NW' 'N' 'EQ']]
[['EQ' 'SW' 'S' 'S']
 ['NE' 'EQ' 'E' 'E']
 ['N' 'W' 'EQ' 'EQ']
 ['N' 'W' 'EQ' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'E' 'S']
 ['N' 'W' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'E' 'EQ']
 ['N' 'W' 'EQ' 'W']
 ['NE' 'EQ' 'E' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'E' 'SW']
 ['N' 'W' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'E' 'W']
 ['N' 'W' 'EQ' 'W']
 ['NE' 'E' 'E' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'E' 'SE']
 ['N' 'W' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'E' 'E']
 ['N' 'W' 'EQ' 'W']
 ['NE' 'W' 'E' 'EQ']]
[['EQ' 'SW' 'S' 'S']
 ['NE' 'EQ' 'NE' 'SE']
 ['N' 'SW' 'EQ' 'S']
 ['N' 'NW' 'N' 'EQ']]
[['EQ' 'SW' 'S' 'S']
 ['NE' 'EQ' 'NE' 'E']
 ['N' 'SW' 'EQ' 'S']
 ['N' 'W' 'N' 'EQ']]
[['EQ' 'SW' 'S' 'S']
 ['NE' 'EQ' 'NE' 'NE']
 ['N' 'SW' 'EQ' 'S|EQ']
 ['N' 'SW' 'EQ|N' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'NE' 'S']
 ['N' 'SW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']
 ['N' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'NE' 'N']
 ['N' 'SW' 'EQ' 'SW|W']
 ['NE' 'S' 'E|NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'NE' 'SW']
 ['N' 'SW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'NE' 'W']
 ['N' 'SW' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'NE' 'NW']
 ['N' 'SW' 'EQ' 'SW|W']
 ['NE' 'SE' 'E|NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'NE' 'SE']
 ['N' 'SW' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'NE' 'E']
 ['N' 'SW' 'EQ' 'SW']
 ['NE' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'S' 'SW']
 ['NE' 'EQ' 'NE' 'NE']
 ['N' 'SW' 'EQ' 'SW|W']
 ['NE' 'SW' 'E|NE' 'EQ']]
[['EQ' 'EQ' 'EQ' 'S']
 ['EQ' 'EQ' 'EQ' 'S']
 ['EQ' 'EQ' 'EQ' 'S']
 ['N' 'N' 'N' 'EQ']]
[['EQ' 'EQ' 'EQ' 'EQ']
 ['EQ' 'EQ' 'EQ' 'EQ']
 ['EQ' 'EQ' 'EQ' 'EQ']
 ['EQ' 'EQ' 'EQ' 'EQ']]
[['EQ' 'EQ' 'EQ' 'SW']
 ['EQ' 'EQ' 'EQ' 'SW']
 ['EQ' 'EQ' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'EQ' 'EQ' 'W']
 ['EQ' 'EQ' 'EQ' 'W']
 ['EQ' 'EQ' 'EQ' 'W']
 ['E' 'E' 'E' 'EQ']]
[['EQ' 'S' 'EQ' 'S']
 ['N' 'EQ' 'N' 'S']
 ['EQ' 'S' 'EQ' 'S']
 ['N' 'N' 'N' 'EQ']]
[['EQ' 'S' 'EQ' 'S']
 ['N' 'EQ' 'N' 'EQ']
 ['EQ' 'S' 'EQ' 'S']
 ['N' 'EQ' 'N' 'EQ']]
[['EQ' 'S' 'EQ' 'S']
 ['N' 'EQ' 'N' 'N']
 ['EQ' 'S' 'EQ' 'S']
 ['N' 'S' 'N' 'EQ']]
[['EQ' 'S' 'EQ' 'EQ']
 ['N' 'EQ' 'N' 'N']
 ['EQ' 'S' 'EQ' 'EQ']
 ['EQ' 'S' 'EQ' 'EQ']]
[['EQ' 'S' 'EQ' 'SW']
 ['N' 'EQ' 'N' 'SW']
 ['EQ' 'S' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'S' 'EQ' 'SW']
 ['N' 'EQ' 'N' 'W']
 ['EQ' 'S' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'S' 'EQ' 'SW']
 ['N' 'EQ' 'N' 'NW']
 ['EQ' 'S' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'S' 'EQ' 'W']
 ['N' 'EQ' 'N' 'NW']
 ['EQ' 'S' 'EQ' 'W']
 ['E' 'SE' 'E' 'EQ']]
[['EQ' 'W' 'EQ' 'S']
 ['E' 'EQ' 'E' 'SE']
 ['EQ' 'W' 'EQ' 'S']
 ['N' 'NW' 'N' 'EQ']]
[['EQ' 'W' 'EQ' 'EQ']
 ['E' 'EQ' 'E' 'E']
 ['EQ' 'W' 'EQ' 'EQ']
 ['EQ' 'W' 'EQ' 'EQ']]
[['EQ' 'W' 'EQ' 'SW']
 ['E' 'EQ' 'E' 'S']
 ['EQ' 'W' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'W' 'EQ' 'SW']
 ['E' 'EQ' 'E' 'SW']
 ['EQ' 'W' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'W' 'EQ' 'SW']
 ['E' 'EQ' 'E' 'SE']
 ['EQ' 'W' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'W' 'EQ' 'W']
 ['E' 'EQ' 'E' 'EQ']
 ['EQ' 'W' 'EQ' 'W']
 ['E' 'EQ' 'E' 'EQ']]
[['EQ' 'W' 'EQ' 'W']
 ['E' 'EQ' 'E' 'W']
 ['EQ' 'W' 'EQ' 'W']
 ['E' 'E' 'E' 'EQ']]
[['EQ' 'W' 'EQ' 'W']
 ['E' 'EQ' 'E' 'E']
 ['EQ' 'W' 'EQ' 'W']
 ['E' 'W' 'E' 'EQ']]
[['EQ' 'SW' 'EQ' 'S']
 ['NE' 'EQ' 'NE' 'SE']
 ['EQ' 'SW' 'EQ' 'S']
 ['N' 'NW' 'N' 'EQ']]
[['EQ' 'SW' 'EQ' 'S']
 ['NE' 'EQ' 'NE' 'E']
 ['EQ' 'SW' 'EQ' 'S']
 ['N' 'W' 'N' 'EQ']]
[['EQ' 'SW' 'EQ' 'S']
 ['NE' 'EQ' 'NE' 'NE']
 ['EQ' 'SW' 'EQ' 'S']
 ['N' 'SW' 'N' 'EQ']]
[['EQ' 'SW' 'EQ' 'EQ']
 ['NE' 'EQ' 'NE' 'NE']
 ['EQ' 'SW' 'EQ' 'EQ']
 ['EQ' 'SW' 'EQ' 'EQ']]
[['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'S']
 ['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']
 ['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'N']
 ['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'S' 'NE' 'EQ']]
[['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'SW']
 ['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'W']
 ['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'NW']
 ['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'SE']
 ['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'E']
 ['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'NE']
 ['EQ' 'SW' 'EQ' 'SW']
 ['NE' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'EQ' 'W']
 ['NE' 'EQ' 'NE' 'N']
 ['EQ' 'SW' 'EQ' 'W']
 ['E' 'S' 'E' 'EQ']]
[['EQ' 'SW' 'EQ' 'W']
 ['NE' 'EQ' 'NE' 'NW']
 ['EQ' 'SW' 'EQ' 'W']
 ['E' 'SE' 'E' 'EQ']]
[['EQ' 'SW' 'EQ' 'W']
 ['NE' 'EQ' 'NE' 'NE']
 ['EQ' 'SW' 'EQ' 'W']
 ['E' 'SW' 'E' 'EQ']]
[['EQ' 'S|EQ' 'N' 'S']
 ['EQ|N' 'EQ' 'N' 'S']
 ['S' 'S' 'EQ' 'S']
 ['N' 'N' 'N' 'EQ']]
[['EQ' 'S' 'N' 'S']
 ['N' 'EQ' 'N' 'EQ']
 ['S' 'S' 'EQ' 'S']
 ['N' 'EQ' 'N' 'EQ']]
[['EQ' 'S' 'N' 'S']
 ['N' 'EQ' 'N' 'N']
 ['S' 'S' 'EQ' 'S']
 ['N' 'S' 'N' 'EQ']]
[['EQ' 'EQ' 'N' 'EQ']
 ['EQ' 'EQ' 'N' 'EQ']
 ['S' 'S' 'EQ' 'S']
 ['EQ' 'EQ' 'N' 'EQ']]
[['EQ' 'S' 'N' 'EQ']
 ['N' 'EQ' 'N' 'N']
 ['S' 'S' 'EQ' 'S']
 ['EQ' 'S' 'N' 'EQ']]
[['EQ' 'S|EQ' 'N' 'N']
 ['EQ|N' 'EQ' 'N' 'N']
 ['S' 'S' 'EQ' 'S|EQ']
 ['S' 'S' 'EQ|N' 'EQ']]
[['EQ' 'S|EQ' 'N' 'SW']
 ['EQ|N' 'EQ' 'N' 'SW']
 ['S' 'S' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'S' 'N' 'SW']
 ['N' 'EQ' 'N' 'W']
 ['S' 'S' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'S' 'N' 'SW']
 ['N' 'EQ' 'N' 'NW']
 ['S' 'S' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'EQ' 'N' 'W']
 ['EQ' 'EQ' 'N' 'W']
 ['S' 'S' 'EQ' 'SW']
 ['E' 'E' 'NE' 'EQ']]
[['EQ' 'S' 'N' 'W']
 ['N' 'EQ' 'N' 'NW']
 ['S' 'S' 'EQ' 'SW']
 ['E' 'SE' 'NE' 'EQ']]
[['EQ' 'S|EQ' 'N' 'NW']
 ['EQ|N' 'EQ' 'N' 'NW']
 ['S' 'S' 'EQ' 'SW|W']
 ['SE' 'SE' 'E|NE' 'EQ']]
[['EQ' 'SW|W' 'N' 'S']
 ['E|NE' 'EQ' 'NE' 'SE']
 ['S' 'SW' 'EQ' 'S']
 ['N' 'NW' 'N' 'EQ']]
[['EQ' 'SW' 'N' 'S']
 ['NE' 'EQ' 'NE' 'E']
 ['S' 'SW' 'EQ' 'S']
 ['N' 'W' 'N' 'EQ']]
[['EQ' 'SW' 'N' 'S']
 ['NE' 'EQ' 'NE' 'NE']
 ['S' 'SW' 'EQ' 'S']
 ['N' 'SW' 'N' 'EQ']]
[['EQ' 'W' 'N' 'EQ']
 ['E' 'EQ' 'NE' 'E']
 ['S' 'SW' 'EQ' 'S']
 ['EQ' 'W' 'N' 'EQ']]
[['EQ' 'SW' 'N' 'EQ']
 ['NE' 'EQ' 'NE' 'NE']
 ['S' 'SW' 'EQ' 'S']
 ['EQ' 'SW' 'N' 'EQ']]
[['EQ' 'SW|W' 'N' 'N']
 ['E|NE' 'EQ' 'NE' 'NE']
 ['S' 'SW' 'EQ' 'S|EQ']
 ['S' 'SW' 'EQ|N' 'EQ']]
[['EQ' 'SW|W' 'N' 'SW']
 ['E|NE' 'EQ' 'NE' 'S']
 ['S' 'SW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']
 ['S' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'SW']
 ['NE' 'EQ' 'NE' 'N']
 ['S' 'SW' 'EQ' 'SW']
 ['NE' 'S' 'NE' 'EQ']]
[['EQ' 'SW|W' 'N' 'SW']
 ['E|NE' 'EQ' 'NE' 'SW']
 ['S' 'SW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'SW']
 ['NE' 'EQ' 'NE' 'W']
 ['S' 'SW' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'SW']
 ['NE' 'EQ' 'NE' 'NW']
 ['S' 'SW' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW|W' 'N' 'SW']
 ['E|NE' 'EQ' 'NE' 'SE']
 ['S' 'SW' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'SW']
 ['NE' 'EQ' 'NE' 'E']
 ['S' 'SW' 'EQ' 'SW']
 ['NE' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'SW']
 ['NE' 'EQ' 'NE' 'NE']
 ['S' 'SW' 'EQ' 'SW']
 ['NE' 'SW' 'NE' 'EQ']]
[['EQ' 'W' 'N' 'W']
 ['E' 'EQ' 'NE' 'EQ']
 ['S' 'SW' 'EQ' 'SW']
 ['E' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'W']
 ['NE' 'EQ' 'NE' 'N']
 ['S' 'SW' 'EQ' 'SW']
 ['E' 'S' 'NE' 'EQ']]
[['EQ' 'W' 'N' 'W']
 ['E' 'EQ' 'NE' 'W']
 ['S' 'SW' 'EQ' 'SW']
 ['E' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'W']
 ['NE' 'EQ' 'NE' 'NW']
 ['S' 'SW' 'EQ' 'SW']
 ['E' 'SE' 'NE' 'EQ']]
[['EQ' 'W' 'N' 'W']
 ['E' 'EQ' 'NE' 'E']
 ['S' 'SW' 'EQ' 'SW']
 ['E' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'N' 'W']
 ['NE' 'EQ' 'NE' 'NE']
 ['S' 'SW' 'EQ' 'SW']
 ['E' 'SW' 'NE' 'EQ']]
[['EQ' 'SW|W' 'N' 'NW']
 ['E|NE' 'EQ' 'NE' 'N']
 ['S' 'SW' 'EQ' 'SW|W']
 ['SE' 'S' 'E|NE' 'EQ']]
[['EQ' 'SW|W' 'N' 'NW']
 ['E|NE' 'EQ' 'NE' 'NW']
 ['S' 'SW' 'EQ' 'SW|W']
 ['SE' 'SE' 'E|NE' 'EQ']]
[['EQ' 'SW|W' 'N' 'NW']
 ['E|NE' 'EQ' 'NE' 'NE']
 ['S' 'SW' 'EQ' 'SW|W']
 ['SE' 'SW' 'E|NE' 'EQ']]
[['EQ' 'SW|W' 'SW' 'SW']
 ['E|NE' 'EQ' 'S' 'S']
 ['NE' 'N' 'EQ' 'S|EQ']
 ['NE' 'N' 'EQ|N' 'EQ']]
[['EQ' 'SW|W' 'SW' 'SW']
 ['E|NE' 'EQ' 'S' 'SW']
 ['NE' 'N' 'EQ' 'SW|W']
 ['NE' 'NE' 'E|NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'EQ' 'S']
 ['NE' 'EQ' 'EQ' 'S']
 ['NE' 'N' 'N' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'EQ' 'EQ']
 ['NE' 'EQ' 'EQ' 'EQ']
 ['NE' 'EQ' 'EQ' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'EQ' 'SW']
 ['NE' 'EQ' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'EQ' 'W']
 ['NE' 'EQ' 'EQ' 'W']
 ['NE' 'E' 'E' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'N' 'S']
 ['NE' 'S' 'EQ' 'S']
 ['NE' 'N' 'N' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'N' 'EQ']
 ['NE' 'S' 'EQ' 'S']
 ['NE' 'EQ' 'N' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'N' 'N']
 ['NE' 'S' 'EQ' 'S|EQ']
 ['NE' 'S' 'EQ|N' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'N' 'SW']
 ['NE' 'S' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'N' 'W']
 ['NE' 'S' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'N' 'NW']
 ['NE' 'S' 'EQ' 'SW|W']
 ['NE' 'SE' 'E|NE' 'EQ']]
[['EQ' 'S|EQ|SW|W' 'SW' 'SW']
 ['EQ|N|E|NE' 'EQ' 'SW' 'SW']
 ['NE' 'NE' 'EQ' 'S|EQ|SW|W']
 ['NE' 'NE' 'EQ|N|E|NE' 'EQ']]
[['EQ' 'S|SW' 'SW' 'SW']
 ['N|NE' 'EQ' 'W' 'SW']
 ['NE' 'E' 'EQ' 'S|SW']
 ['NE' 'NE' 'N|NE' 'EQ']]
[['EQ' 'S|SW' 'SW' 'SW']
 ['N|NE' 'EQ' 'W' 'W']
 ['NE' 'E' 'EQ' 'EQ|W']
 ['NE' 'E' 'EQ|E' 'EQ']]
[['EQ' 'S|SW' 'SW' 'SW']
 ['N|NE' 'EQ' 'NW' 'SW']
 ['NE' 'SE' 'EQ' 'S|SW']
 ['NE' 'NE' 'N|NE' 'EQ']]
[['EQ' 'S|SW' 'SW' 'SW']
 ['N|NE' 'EQ' 'NW' 'W']
 ['NE' 'SE' 'EQ' 'S|SW']
 ['NE' 'E' 'N|NE' 'EQ']]
[['EQ' 'S|SW' 'SW' 'SW']
 ['N|NE' 'EQ' 'NW' 'NW']
 ['NE' 'SE' 'EQ' 'S|EQ|SW|W']
 ['NE' 'SE' 'EQ|N|E|NE' 'EQ']]
[['EQ' 'SW|W' 'SW' 'SW']
 ['E|NE' 'EQ' 'SE' 'S']
 ['NE' 'NW' 'EQ' 'SW|W']
 ['NE' 'N' 'E|NE' 'EQ']]
[['EQ' 'SW|W' 'SW' 'SW']
 ['E|NE' 'EQ' 'SE' 'SW']
 ['NE' 'NW' 'EQ' 'SW|W']
 ['NE' 'NE' 'E|NE' 'EQ']]
[['EQ' 'SW|W' 'SW' 'SW']
 ['E|NE' 'EQ' 'SE' 'SE']
 ['NE' 'NW' 'EQ' 'S|EQ|SW|W']
 ['NE' 'NW' 'EQ|N|E|NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'E' 'S']
 ['NE' 'W' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'E' 'EQ']
 ['NE' 'W' 'EQ' 'W']
 ['NE' 'EQ' 'E' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'E' 'SW']
 ['NE' 'W' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'E' 'W']
 ['NE' 'W' 'EQ' 'W']
 ['NE' 'E' 'E' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'E' 'SE']
 ['NE' 'W' 'EQ' 'S|SW']
 ['NE' 'NW' 'N|NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'E' 'E']
 ['NE' 'W' 'EQ' 'EQ|W']
 ['NE' 'W' 'EQ|E' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NE' 'S']
 ['NE' 'SW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']
 ['NE' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NE' 'N']
 ['NE' 'SW' 'EQ' 'SW|W']
 ['NE' 'S' 'E|NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NE' 'SW']
 ['NE' 'SW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NE' 'W']
 ['NE' 'SW' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NE' 'NW']
 ['NE' 'SW' 'EQ' 'SW|W']
 ['NE' 'SE' 'E|NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NE' 'SE']
 ['NE' 'SW' 'EQ' 'S|SW']
 ['NE' 'NW' 'N|NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NE' 'E']
 ['NE' 'SW' 'EQ' 'S|SW']
 ['NE' 'W' 'N|NE' 'EQ']]
[['EQ' 'SW' 'SW' 'SW']
 ['NE' 'EQ' 'NE' 'NE']
 ['NE' 'SW' 'EQ' 'S|EQ|SW|W']
 ['NE' 'SW' 'EQ|N|E|NE' 'EQ']]
[['EQ' 'W' 'W' 'SW']
 ['E' 'EQ' 'EQ' 'S']
 ['E' 'EQ' 'EQ' 'S']
 ['NE' 'N' 'N' 'EQ']]
[['EQ' 'W' 'W' 'SW']
 ['E' 'EQ' 'EQ' 'SW']
 ['E' 'EQ' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'W' 'W' 'W']
 ['E' 'EQ' 'EQ' 'EQ']
 ['E' 'EQ' 'EQ' 'EQ']
 ['E' 'EQ' 'EQ' 'EQ']]
[['EQ' 'W' 'W' 'W']
 ['E' 'EQ' 'EQ' 'W']
 ['E' 'EQ' 'EQ' 'W']
 ['E' 'E' 'E' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'N' 'S']
 ['E' 'S' 'EQ' 'S']
 ['NE' 'N' 'N' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'N' 'EQ']
 ['E' 'S' 'EQ' 'S']
 ['NE' 'EQ' 'N' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'N' 'N']
 ['E' 'S' 'EQ' 'S']
 ['NE' 'S' 'N' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'N' 'SW']
 ['E' 'S' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'N' 'W']
 ['E' 'S' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'N' 'NW']
 ['E' 'S' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'W']
 ['NE' 'EQ' 'N' 'N']
 ['E' 'S' 'EQ' 'EQ']
 ['E' 'S' 'EQ' 'EQ']]
[['EQ' 'SW' 'W' 'W']
 ['NE' 'EQ' 'N' 'NW']
 ['E' 'S' 'EQ' 'W']
 ['E' 'SE' 'E' 'EQ']]
[['EQ' 'EQ|W' 'W' 'SW']
 ['EQ|E' 'EQ' 'W' 'SW']
 ['E' 'E' 'EQ' 'S|SW']
 ['NE' 'NE' 'N|NE' 'EQ']]
[['EQ' 'EQ|W' 'W' 'W']
 ['EQ|E' 'EQ' 'W' 'W']
 ['E' 'E' 'EQ' 'EQ|W']
 ['E' 'E' 'EQ|E' 'EQ']]
[['EQ' 'S|SW' 'W' 'SW']
 ['N|NE' 'EQ' 'NW' 'SW']
 ['E' 'SE' 'EQ' 'S|SW']
 ['NE' 'NE' 'N|NE' 'EQ']]
[['EQ' 'S|SW' 'W' 'SW']
 ['N|NE' 'EQ' 'NW' 'W']
 ['E' 'SE' 'EQ' 'S|SW']
 ['NE' 'E' 'N|NE' 'EQ']]
[['EQ' 'S|SW' 'W' 'SW']
 ['N|NE' 'EQ' 'NW' 'NW']
 ['E' 'SE' 'EQ' 'S|SW']
 ['NE' 'SE' 'N|NE' 'EQ']]
[['EQ' 'S|SW' 'W' 'W']
 ['N|NE' 'EQ' 'NW' 'NW']
 ['E' 'SE' 'EQ' 'EQ|W']
 ['E' 'SE' 'EQ|E' 'EQ']]
[['EQ' 'W' 'W' 'SW']
 ['E' 'EQ' 'E' 'S']
 ['E' 'W' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'W' 'W' 'SW']
 ['E' 'EQ' 'E' 'SW']
 ['E' 'W' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'W' 'W' 'SW']
 ['E' 'EQ' 'E' 'SE']
 ['E' 'W' 'EQ' 'S|SW']
 ['NE' 'NW' 'N|NE' 'EQ']]
[['EQ' 'W' 'W' 'W']
 ['E' 'EQ' 'E' 'EQ']
 ['E' 'W' 'EQ' 'W']
 ['E' 'EQ' 'E' 'EQ']]
[['EQ' 'W' 'W' 'W']
 ['E' 'EQ' 'E' 'W']
 ['E' 'W' 'EQ' 'W']
 ['E' 'E' 'E' 'EQ']]
[['EQ' 'W' 'W' 'W']
 ['E' 'EQ' 'E' 'E']
 ['E' 'W' 'EQ' 'EQ|W']
 ['E' 'W' 'EQ|E' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NE' 'S']
 ['E' 'SW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']
 ['E' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NE' 'N']
 ['E' 'SW' 'EQ' 'SW']
 ['NE' 'S' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NE' 'SW']
 ['E' 'SW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NE' 'W']
 ['E' 'SW' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NE' 'NW']
 ['E' 'SW' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NE' 'SE']
 ['E' 'SW' 'EQ' 'S|SW']
 ['NE' 'NW' 'N|NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NE' 'E']
 ['E' 'SW' 'EQ' 'S|SW']
 ['NE' 'W' 'N|NE' 'EQ']]
[['EQ' 'SW' 'W' 'SW']
 ['NE' 'EQ' 'NE' 'NE']
 ['E' 'SW' 'EQ' 'S|SW']
 ['NE' 'SW' 'N|NE' 'EQ']]
[['EQ' 'SW' 'W' 'W']
 ['NE' 'EQ' 'NE' 'N']
 ['E' 'SW' 'EQ' 'W']
 ['E' 'S' 'E' 'EQ']]
[['EQ' 'SW' 'W' 'W']
 ['NE' 'EQ' 'NE' 'NW']
 ['E' 'SW' 'EQ' 'W']
 ['E' 'SE' 'E' 'EQ']]
[['EQ' 'SW' 'W' 'W']
 ['NE' 'EQ' 'NE' 'NE']
 ['E' 'SW' 'EQ' 'EQ|W']
 ['E' 'SW' 'EQ|E' 'EQ']]
[['EQ' 'SW|W' 'NW' 'SW']
 ['E|NE' 'EQ' 'N' 'S']
 ['SE' 'S' 'EQ' 'S']
 ['NE' 'N' 'N' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'N' 'EQ']
 ['SE' 'S' 'EQ' 'S']
 ['NE' 'EQ' 'N' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'N' 'N']
 ['SE' 'S' 'EQ' 'S']
 ['NE' 'S' 'N' 'EQ']]
[['EQ' 'SW|W' 'NW' 'SW']
 ['E|NE' 'EQ' 'N' 'SW']
 ['SE' 'S' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'N' 'W']
 ['SE' 'S' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'N' 'NW']
 ['SE' 'S' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'W' 'NW' 'W']
 ['E' 'EQ' 'N' 'EQ']
 ['SE' 'S' 'EQ' 'S']
 ['E' 'EQ' 'N' 'EQ']]
[['EQ' 'SW' 'NW' 'W']
 ['NE' 'EQ' 'N' 'N']
 ['SE' 'S' 'EQ' 'S']
 ['E' 'S' 'N' 'EQ']]
[['EQ' 'W' 'NW' 'W']
 ['E' 'EQ' 'N' 'W']
 ['SE' 'S' 'EQ' 'SW']
 ['E' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'W']
 ['NE' 'EQ' 'N' 'NW']
 ['SE' 'S' 'EQ' 'SW']
 ['E' 'SE' 'NE' 'EQ']]
[['EQ' 'SW|W' 'NW' 'NW']
 ['E|NE' 'EQ' 'N' 'N']
 ['SE' 'S' 'EQ' 'S|EQ']
 ['SE' 'S' 'EQ|N' 'EQ']]
[['EQ' 'SW|W' 'NW' 'NW']
 ['E|NE' 'EQ' 'N' 'NW']
 ['SE' 'S' 'EQ' 'SW|W']
 ['SE' 'SE' 'E|NE' 'EQ']]
[['EQ' 'S|EQ|SW|W' 'NW' 'SW']
 ['EQ|N|E|NE' 'EQ' 'NW' 'SW']
 ['SE' 'SE' 'EQ' 'S|SW']
 ['NE' 'NE' 'N|NE' 'EQ']]
[['EQ' 'S|SW' 'NW' 'SW']
 ['N|NE' 'EQ' 'NW' 'W']
 ['SE' 'SE' 'EQ' 'S|SW']
 ['NE' 'E' 'N|NE' 'EQ']]
[['EQ' 'S|SW' 'NW' 'SW']
 ['N|NE' 'EQ' 'NW' 'NW']
 ['SE' 'SE' 'EQ' 'S|SW']
 ['NE' 'SE' 'N|NE' 'EQ']]
[['EQ' 'EQ|W' 'NW' 'W']
 ['EQ|E' 'EQ' 'NW' 'W']
 ['SE' 'SE' 'EQ' 'S|SW']
 ['E' 'E' 'N|NE' 'EQ']]
[['EQ' 'S|SW' 'NW' 'W']
 ['N|NE' 'EQ' 'NW' 'NW']
 ['SE' 'SE' 'EQ' 'S|SW']
 ['E' 'SE' 'N|NE' 'EQ']]
[['EQ' 'S|EQ|SW|W' 'NW' 'NW']
 ['EQ|N|E|NE' 'EQ' 'NW' 'NW']
 ['SE' 'SE' 'EQ' 'S|EQ|SW|W']
 ['SE' 'SE' 'EQ|N|E|NE' 'EQ']]
[['EQ' 'SW|W' 'NW' 'SW']
 ['E|NE' 'EQ' 'NE' 'S']
 ['SE' 'SW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']
 ['SE' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'NE' 'N']
 ['SE' 'SW' 'EQ' 'SW']
 ['NE' 'S' 'NE' 'EQ']]
[['EQ' 'SW|W' 'NW' 'SW']
 ['E|NE' 'EQ' 'NE' 'SW']
 ['SE' 'SW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'NE' 'W']
 ['SE' 'SW' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'NE' 'NW']
 ['SE' 'SW' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW|W' 'NW' 'SW']
 ['E|NE' 'EQ' 'NE' 'SE']
 ['SE' 'SW' 'EQ' 'S|SW']
 ['NE' 'NW' 'N|NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'NE' 'E']
 ['SE' 'SW' 'EQ' 'S|SW']
 ['NE' 'W' 'N|NE' 'EQ']]
[['EQ' 'SW' 'NW' 'SW']
 ['NE' 'EQ' 'NE' 'NE']
 ['SE' 'SW' 'EQ' 'S|SW']
 ['NE' 'SW' 'N|NE' 'EQ']]
[['EQ' 'W' 'NW' 'W']
 ['E' 'EQ' 'NE' 'EQ']
 ['SE' 'SW' 'EQ' 'SW']
 ['E' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'W']
 ['NE' 'EQ' 'NE' 'N']
 ['SE' 'SW' 'EQ' 'SW']
 ['E' 'S' 'NE' 'EQ']]
[['EQ' 'W' 'NW' 'W']
 ['E' 'EQ' 'NE' 'W']
 ['SE' 'SW' 'EQ' 'SW']
 ['E' 'E' 'NE' 'EQ']]
[['EQ' 'SW' 'NW' 'W']
 ['NE' 'EQ' 'NE' 'NW']
 ['SE' 'SW' 'EQ' 'SW']
 ['E' 'SE' 'NE' 'EQ']]
[['EQ' 'W' 'NW' 'W']
 ['E' 'EQ' 'NE' 'E']
 ['SE' 'SW' 'EQ' 'S|SW']
 ['E' 'W' 'N|NE' 'EQ']]
[['EQ' 'SW' 'NW' 'W']
 ['NE' 'EQ' 'NE' 'NE']
 ['SE' 'SW' 'EQ' 'S|SW']
 ['E' 'SW' 'N|NE' 'EQ']]
[['EQ' 'SW|W' 'NW' 'NW']
 ['E|NE' 'EQ' 'NE' 'N']
 ['SE' 'SW' 'EQ' 'SW|W']
 ['SE' 'S' 'E|NE' 'EQ']]
[['EQ' 'SW|W' 'NW' 'NW']
 ['E|NE' 'EQ' 'NE' 'NW']
 ['SE' 'SW' 'EQ' 'SW|W']
 ['SE' 'SE' 'E|NE' 'EQ']]
[['EQ' 'SW|W' 'NW' 'NW']
 ['E|NE' 'EQ' 'NE' 'NE']
 ['SE' 'SW' 'EQ' 'S|EQ|SW|W']
 ['SE' 'SW' 'EQ|N|E|NE' 'EQ']]
[['EQ' 'S|EQ' 'SE' 'S']
 ['EQ|N' 'EQ' 'SE' 'S']
 ['NW' 'NW' 'EQ' 'SW|W']
 ['N' 'N' 'E|NE' 'EQ']]
[['EQ' 'SW|W' 'SE' 'S']
 ['E|NE' 'EQ' 'SE' 'SE']
 ['NW' 'NW' 'EQ' 'SW|W']
 ['N' 'NW' 'E|NE' 'EQ']]
[['EQ' 'SW|W' 'SE' 'SW']
 ['E|NE' 'EQ' 'SE' 'S']
 ['NW' 'NW' 'EQ' 'SW|W']
 ['NE' 'N' 'E|NE' 'EQ']]
[['EQ' 'S|EQ|SW|W' 'SE' 'SW']
 ['EQ|N|E|NE' 'EQ' 'SE' 'SW']
 ['NW' 'NW' 'EQ' 'SW|W']
 ['NE' 'NE' 'E|NE' 'EQ']]
[['EQ' 'SW|W' 'SE' 'SW']
 ['E|NE' 'EQ' 'SE' 'SE']
 ['NW' 'NW' 'EQ' 'SW|W']
 ['NE' 'NW' 'E|NE' 'EQ']]
[['EQ' 'S|EQ|SW|W' 'SE' 'SE']
 ['EQ|N|E|NE' 'EQ' 'SE' 'SE']
 ['NW' 'NW' 'EQ' 'S|EQ|SW|W']
 ['NW' 'NW' 'EQ|N|E|NE' 'EQ']]
[['EQ' 'S' 'SE' 'S']
 ['N' 'EQ' 'E' 'S']
 ['NW' 'W' 'EQ' 'SW']
 ['N' 'N' 'NE' 'EQ']]
[['EQ' 'S' 'SE' 'S']
 ['N' 'EQ' 'E' 'EQ']
 ['NW' 'W' 'EQ' 'W']
 ['N' 'EQ' 'E' 'EQ']]
[['EQ' 'SW' 'SE' 'S']
 ['NE' 'EQ' 'E' 'SE']
 ['NW' 'W' 'EQ' 'SW']
 ['N' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'S']
 ['NE' 'EQ' 'E' 'E']
 ['NW' 'W' 'EQ' 'W']
 ['N' 'W' 'E' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'E' 'S']
 ['NW' 'W' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'E' 'EQ']
 ['NW' 'W' 'EQ' 'W']
 ['NE' 'EQ' 'E' 'EQ']]
[['EQ' 'S|SW' 'SE' 'SW']
 ['N|NE' 'EQ' 'E' 'SW']
 ['NW' 'W' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'S|SW' 'SE' 'SW']
 ['N|NE' 'EQ' 'E' 'W']
 ['NW' 'W' 'EQ' 'W']
 ['NE' 'E' 'E' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'E' 'SE']
 ['NW' 'W' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'E' 'E']
 ['NW' 'W' 'EQ' 'W']
 ['NE' 'W' 'E' 'EQ']]
[['EQ' 'S|SW' 'SE' 'SE']
 ['N|NE' 'EQ' 'E' 'SE']
 ['NW' 'W' 'EQ' 'S|SW']
 ['NW' 'NW' 'N|NE' 'EQ']]
[['EQ' 'S|SW' 'SE' 'SE']
 ['N|NE' 'EQ' 'E' 'E']
 ['NW' 'W' 'EQ' 'EQ|W']
 ['NW' 'W' 'EQ|E' 'EQ']]
[['EQ' 'S' 'SE' 'S']
 ['N' 'EQ' 'NE' 'S']
 ['NW' 'SW' 'EQ' 'SW']
 ['N' 'N' 'NE' 'EQ']]
[['EQ' 'S' 'SE' 'S']
 ['N' 'EQ' 'NE' 'EQ']
 ['NW' 'SW' 'EQ' 'SW']
 ['N' 'EQ' 'NE' 'EQ']]
[['EQ' 'S' 'SE' 'S']
 ['N' 'EQ' 'NE' 'N']
 ['NW' 'SW' 'EQ' 'SW|W']
 ['N' 'S' 'E|NE' 'EQ']]
[['EQ' 'SW' 'SE' 'S']
 ['NE' 'EQ' 'NE' 'SE']
 ['NW' 'SW' 'EQ' 'SW']
 ['N' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'S']
 ['NE' 'EQ' 'NE' 'E']
 ['NW' 'SW' 'EQ' 'SW']
 ['N' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'S']
 ['NE' 'EQ' 'NE' 'NE']
 ['NW' 'SW' 'EQ' 'SW|W']
 ['N' 'SW' 'E|NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'NE' 'S']
 ['NW' 'SW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']
 ['NW' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'NE' 'N']
 ['NW' 'SW' 'EQ' 'SW|W']
 ['NE' 'S' 'E|NE' 'EQ']]
[['EQ' 'S|SW' 'SE' 'SW']
 ['N|NE' 'EQ' 'NE' 'SW']
 ['NW' 'SW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'S|SW' 'SE' 'SW']
 ['N|NE' 'EQ' 'NE' 'W']
 ['NW' 'SW' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'S|SW' 'SE' 'SW']
 ['N|NE' 'EQ' 'NE' 'NW']
 ['NW' 'SW' 'EQ' 'SW|W']
 ['NE' 'SE' 'E|NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'NE' 'SE']
 ['NW' 'SW' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'NE' 'E']
 ['NW' 'SW' 'EQ' 'SW']
 ['NE' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'SE' 'SW']
 ['NE' 'EQ' 'NE' 'NE']
 ['NW' 'SW' 'EQ' 'SW|W']
 ['NE' 'SW' 'E|NE' 'EQ']]
[['EQ' 'S|SW' 'SE' 'SE']
 ['N|NE' 'EQ' 'NE' 'SE']
 ['NW' 'SW' 'EQ' 'S|SW']
 ['NW' 'NW' 'N|NE' 'EQ']]
[['EQ' 'S|SW' 'SE' 'SE']
 ['N|NE' 'EQ' 'NE' 'E']
 ['NW' 'SW' 'EQ' 'S|SW']
 ['NW' 'W' 'N|NE' 'EQ']]
[['EQ' 'S|SW' 'SE' 'SE']
 ['N|NE' 'EQ' 'NE' 'NE']
 ['NW' 'SW' 'EQ' 'S|EQ|SW|W']
 ['NW' 'SW' 'EQ|N|E|NE' 'EQ']]
[['EQ' 'EQ' 'E' 'S']
 ['EQ' 'EQ' 'E' 'S']
 ['W' 'W' 'EQ' 'SW']
 ['N' 'N' 'NE' 'EQ']]
[['EQ' 'W' 'E' 'S']
 ['E' 'EQ' 'E' 'SE']
 ['W' 'W' 'EQ' 'SW']
 ['N' 'NW' 'NE' 'EQ']]
[['EQ' 'EQ' 'E' 'EQ']
 ['EQ' 'EQ' 'E' 'EQ']
 ['W' 'W' 'EQ' 'W']
 ['EQ' 'EQ' 'E' 'EQ']]
[['EQ' 'W' 'E' 'EQ']
 ['E' 'EQ' 'E' 'E']
 ['W' 'W' 'EQ' 'W']
 ['EQ' 'W' 'E' 'EQ']]
[['EQ' 'W' 'E' 'SW']
 ['E' 'EQ' 'E' 'S']
 ['W' 'W' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'EQ|W' 'E' 'SW']
 ['EQ|E' 'EQ' 'E' 'SW']
 ['W' 'W' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'W' 'E' 'SW']
 ['E' 'EQ' 'E' 'SE']
 ['W' 'W' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'W' 'E' 'W']
 ['E' 'EQ' 'E' 'EQ']
 ['W' 'W' 'EQ' 'W']
 ['E' 'EQ' 'E' 'EQ']]
[['EQ' 'EQ|W' 'E' 'W']
 ['EQ|E' 'EQ' 'E' 'W']
 ['W' 'W' 'EQ' 'W']
 ['E' 'E' 'E' 'EQ']]
[['EQ' 'W' 'E' 'W']
 ['E' 'EQ' 'E' 'E']
 ['W' 'W' 'EQ' 'W']
 ['E' 'W' 'E' 'EQ']]
[['EQ' 'EQ|W' 'E' 'SE']
 ['EQ|E' 'EQ' 'E' 'SE']
 ['W' 'W' 'EQ' 'S|SW']
 ['NW' 'NW' 'N|NE' 'EQ']]
[['EQ' 'EQ|W' 'E' 'E']
 ['EQ|E' 'EQ' 'E' 'E']
 ['W' 'W' 'EQ' 'EQ|W']
 ['W' 'W' 'EQ|E' 'EQ']]
[['EQ' 'S' 'E' 'S']
 ['N' 'EQ' 'NE' 'S']
 ['W' 'SW' 'EQ' 'SW']
 ['N' 'N' 'NE' 'EQ']]
[['EQ' 'S' 'E' 'S']
 ['N' 'EQ' 'NE' 'EQ']
 ['W' 'SW' 'EQ' 'SW']
 ['N' 'EQ' 'NE' 'EQ']]
[['EQ' 'S' 'E' 'S']
 ['N' 'EQ' 'NE' 'N']
 ['W' 'SW' 'EQ' 'SW']
 ['N' 'S' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'S']
 ['NE' 'EQ' 'NE' 'SE']
 ['W' 'SW' 'EQ' 'SW']
 ['N' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'S']
 ['NE' 'EQ' 'NE' 'E']
 ['W' 'SW' 'EQ' 'SW']
 ['N' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'S']
 ['NE' 'EQ' 'NE' 'NE']
 ['W' 'SW' 'EQ' 'SW']
 ['N' 'SW' 'NE' 'EQ']]
[['EQ' 'S' 'E' 'EQ']
 ['N' 'EQ' 'NE' 'N']
 ['W' 'SW' 'EQ' 'W']
 ['EQ' 'S' 'E' 'EQ']]
[['EQ' 'SW' 'E' 'EQ']
 ['NE' 'EQ' 'NE' 'NE']
 ['W' 'SW' 'EQ' 'W']
 ['EQ' 'SW' 'E' 'EQ']]
[['EQ' 'SW' 'E' 'SW']
 ['NE' 'EQ' 'NE' 'S']
 ['W' 'SW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']
 ['W' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'SW']
 ['NE' 'EQ' 'NE' 'N']
 ['W' 'SW' 'EQ' 'SW']
 ['NE' 'S' 'NE' 'EQ']]
[['EQ' 'S|SW' 'E' 'SW']
 ['N|NE' 'EQ' 'NE' 'SW']
 ['W' 'SW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'S|SW' 'E' 'SW']
 ['N|NE' 'EQ' 'NE' 'W']
 ['W' 'SW' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'S|SW' 'E' 'SW']
 ['N|NE' 'EQ' 'NE' 'NW']
 ['W' 'SW' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'SW']
 ['NE' 'EQ' 'NE' 'SE']
 ['W' 'SW' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'SW']
 ['NE' 'EQ' 'NE' 'E']
 ['W' 'SW' 'EQ' 'SW']
 ['NE' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'SW']
 ['NE' 'EQ' 'NE' 'NE']
 ['W' 'SW' 'EQ' 'SW']
 ['NE' 'SW' 'NE' 'EQ']]
[['EQ' 'SW' 'E' 'W']
 ['NE' 'EQ' 'NE' 'N']
 ['W' 'SW' 'EQ' 'W']
 ['E' 'S' 'E' 'EQ']]
[['EQ' 'S|SW' 'E' 'W']
 ['N|NE' 'EQ' 'NE' 'NW']
 ['W' 'SW' 'EQ' 'W']
 ['E' 'SE' 'E' 'EQ']]
[['EQ' 'SW' 'E' 'W']
 ['NE' 'EQ' 'NE' 'NE']
 ['W' 'SW' 'EQ' 'W']
 ['E' 'SW' 'E' 'EQ']]
[['EQ' 'S|SW' 'E' 'SE']
 ['N|NE' 'EQ' 'NE' 'SE']
 ['W' 'SW' 'EQ' 'S|SW']
 ['NW' 'NW' 'N|NE' 'EQ']]
[['EQ' 'S|SW' 'E' 'SE']
 ['N|NE' 'EQ' 'NE' 'E']
 ['W' 'SW' 'EQ' 'S|SW']
 ['NW' 'W' 'N|NE' 'EQ']]
[['EQ' 'S|SW' 'E' 'SE']
 ['N|NE' 'EQ' 'NE' 'NE']
 ['W' 'SW' 'EQ' 'S|SW']
 ['NW' 'SW' 'N|NE' 'EQ']]
[['EQ' 'S|SW' 'E' 'E']
 ['N|NE' 'EQ' 'NE' 'NE']
 ['W' 'SW' 'EQ' 'EQ|W']
 ['W' 'SW' 'EQ|E' 'EQ']]
[['EQ' 'S|EQ' 'NE' 'S']
 ['EQ|N' 'EQ' 'NE' 'S']
 ['SW' 'SW' 'EQ' 'SW']
 ['N' 'N' 'NE' 'EQ']]
[['EQ' 'S' 'NE' 'S']
 ['N' 'EQ' 'NE' 'EQ']
 ['SW' 'SW' 'EQ' 'SW']
 ['N' 'EQ' 'NE' 'EQ']]
[['EQ' 'S' 'NE' 'S']
 ['N' 'EQ' 'NE' 'N']
 ['SW' 'SW' 'EQ' 'SW']
 ['N' 'S' 'NE' 'EQ']]
[['EQ' 'SW|W' 'NE' 'S']
 ['E|NE' 'EQ' 'NE' 'SE']
 ['SW' 'SW' 'EQ' 'SW']
 ['N' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'S']
 ['NE' 'EQ' 'NE' 'E']
 ['SW' 'SW' 'EQ' 'SW']
 ['N' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'S']
 ['NE' 'EQ' 'NE' 'NE']
 ['SW' 'SW' 'EQ' 'SW']
 ['N' 'SW' 'NE' 'EQ']]
[['EQ' 'EQ' 'NE' 'EQ']
 ['EQ' 'EQ' 'NE' 'EQ']
 ['SW' 'SW' 'EQ' 'SW']
 ['EQ' 'EQ' 'NE' 'EQ']]
[['EQ' 'S' 'NE' 'EQ']
 ['N' 'EQ' 'NE' 'N']
 ['SW' 'SW' 'EQ' 'SW']
 ['EQ' 'S' 'NE' 'EQ']]
[['EQ' 'W' 'NE' 'EQ']
 ['E' 'EQ' 'NE' 'E']
 ['SW' 'SW' 'EQ' 'SW']
 ['EQ' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'EQ']
 ['NE' 'EQ' 'NE' 'NE']
 ['SW' 'SW' 'EQ' 'SW']
 ['EQ' 'SW' 'NE' 'EQ']]
[['EQ' 'S|EQ' 'NE' 'N']
 ['EQ|N' 'EQ' 'NE' 'N']
 ['SW' 'SW' 'EQ' 'SW|W']
 ['S' 'S' 'E|NE' 'EQ']]
[['EQ' 'SW|W' 'NE' 'N']
 ['E|NE' 'EQ' 'NE' 'NE']
 ['SW' 'SW' 'EQ' 'SW|W']
 ['S' 'SW' 'E|NE' 'EQ']]
[['EQ' 'SW|W' 'NE' 'SW']
 ['E|NE' 'EQ' 'NE' 'S']
 ['SW' 'SW' 'EQ' 'SW']
 ['NE' 'N' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']
 ['SW' 'SW' 'EQ' 'SW']
 ['NE' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'SW']
 ['NE' 'EQ' 'NE' 'N']
 ['SW' 'SW' 'EQ' 'SW']
 ['NE' 'S' 'NE' 'EQ']]
[['EQ' 'S|EQ|SW|W' 'NE' 'SW']
 ['EQ|N|E|NE' 'EQ' 'NE' 'SW']
 ['SW' 'SW' 'EQ' 'SW']
 ['NE' 'NE' 'NE' 'EQ']]
[['EQ' 'S|SW' 'NE' 'SW']
 ['N|NE' 'EQ' 'NE' 'W']
 ['SW' 'SW' 'EQ' 'SW']
 ['NE' 'E' 'NE' 'EQ']]
[['EQ' 'S|SW' 'NE' 'SW']
 ['N|NE' 'EQ' 'NE' 'NW']
 ['SW' 'SW' 'EQ' 'SW']
 ['NE' 'SE' 'NE' 'EQ']]
[['EQ' 'SW|W' 'NE' 'SW']
 ['E|NE' 'EQ' 'NE' 'SE']
 ['SW' 'SW' 'EQ' 'SW']
 ['NE' 'NW' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'SW']
 ['NE' 'EQ' 'NE' 'E']
 ['SW' 'SW' 'EQ' 'SW']
 ['NE' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'SW']
 ['NE' 'EQ' 'NE' 'NE']
 ['SW' 'SW' 'EQ' 'SW']
 ['NE' 'SW' 'NE' 'EQ']]
[['EQ' 'W' 'NE' 'W']
 ['E' 'EQ' 'NE' 'EQ']
 ['SW' 'SW' 'EQ' 'SW']
 ['E' 'EQ' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'W']
 ['NE' 'EQ' 'NE' 'N']
 ['SW' 'SW' 'EQ' 'SW']
 ['E' 'S' 'NE' 'EQ']]
[['EQ' 'EQ|W' 'NE' 'W']
 ['EQ|E' 'EQ' 'NE' 'W']
 ['SW' 'SW' 'EQ' 'SW']
 ['E' 'E' 'NE' 'EQ']]
[['EQ' 'S|SW' 'NE' 'W']
 ['N|NE' 'EQ' 'NE' 'NW']
 ['SW' 'SW' 'EQ' 'SW']
 ['E' 'SE' 'NE' 'EQ']]
[['EQ' 'W' 'NE' 'W']
 ['E' 'EQ' 'NE' 'E']
 ['SW' 'SW' 'EQ' 'SW']
 ['E' 'W' 'NE' 'EQ']]
[['EQ' 'SW' 'NE' 'W']
 ['NE' 'EQ' 'NE' 'NE']
 ['SW' 'SW' 'EQ' 'SW']
 ['E' 'SW' 'NE' 'EQ']]
[['EQ' 'SW|W' 'NE' 'NW']
 ['E|NE' 'EQ' 'NE' 'N']
 ['SW' 'SW' 'EQ' 'SW|W']
 ['SE' 'S' 'E|NE' 'EQ']]
[['EQ' 'S|EQ|SW|W' 'NE' 'NW']
 ['EQ|N|E|NE' 'EQ' 'NE' 'NW']
 ['SW' 'SW' 'EQ' 'SW|W']
 ['SE' 'SE' 'E|NE' 'EQ']]
[['EQ' 'SW|W' 'NE' 'NW']
 ['E|NE' 'EQ' 'NE' 'NE']
 ['SW' 'SW' 'EQ' 'SW|W']
 ['SE' 'SW' 'E|NE' 'EQ']]
[['EQ' 'S|EQ|SW|W' 'NE' 'SE']
 ['EQ|N|E|NE' 'EQ' 'NE' 'SE']
 ['SW' 'SW' 'EQ' 'S|SW']
 ['NW' 'NW' 'N|NE' 'EQ']]
[['EQ' 'S|SW' 'NE' 'SE']
 ['N|NE' 'EQ' 'NE' 'E']
 ['SW' 'SW' 'EQ' 'S|SW']
 ['NW' 'W' 'N|NE' 'EQ']]
[['EQ' 'S|SW' 'NE' 'SE']
 ['N|NE' 'EQ' 'NE' 'NE']
 ['SW' 'SW' 'EQ' 'S|SW']
 ['NW' 'SW' 'N|NE' 'EQ']]
[['EQ' 'EQ|W' 'NE' 'E']
 ['EQ|E' 'EQ' 'NE' 'E']
 ['SW' 'SW' 'EQ' 'S|SW']
 ['W' 'W' 'N|NE' 'EQ']]
[['EQ' 'S|SW' 'NE' 'E']
 ['N|NE' 'EQ' 'NE' 'NE']
 ['SW' 'SW' 'EQ' 'S|SW']
 ['W' 'SW' 'N|NE' 'EQ']]
[['EQ' 'S|EQ|SW|W' 'NE' 'NE']
 ['EQ|N|E|NE' 'EQ' 'NE' 'NE']
 ['SW' 'SW' 'EQ' 'S|EQ|SW|W']
 ['SW' 'SW' 'EQ|N|E|NE' 'EQ']]

324 consistent networks
len(result_all)
324

Assigning Names to the Rectangle Relations

WORK-IN-PROGRESS (watch this space…)

def relative_position(pt_rel):
    vert_pos = None
    horiz_pos = None

    if pt_rel in ["NW",  "N", "NE"]:
        vert_pos = "above"
    elif pt_rel in ["SW",  "S", "SE"]:
        vert_pos = "below"
    else:
        vert_pos = "vert_eq"

    if pt_rel in ["E", "NE", "SE"]:
        horiz_pos = "right"
    elif pt_rel in ["W", "NW", "SW"]:
        horiz_pos = "left"
    else:
        horiz_pos = "horiz_eq"

    return horiz_pos, vert_pos
for rel in ptalg2d.elements:
    print(rel, relative_position(rel))
S ('horiz_eq', 'below')
EQ ('horiz_eq', 'vert_eq')
N ('horiz_eq', 'above')
SW ('left', 'below')
W ('left', 'vert_eq')
NW ('left', 'above')
SE ('right', 'below')
E ('right', 'vert_eq')
NE ('right', 'above')

…MORE TO COME…