graphid.core.state module

class graphid.core.state._Common[source]

Bases: object

class graphid.core.state._ConstHelper(name, parents, dct)[source]

Bases: type

Adds code and nice constants to an integer version of a class

cls = META_DECISION code_cls = META_DECISION_CODE

class graphid.core.state.EVIDENCE_DECISION[source]

Bases: _Common

TODO: change to EVIDENCE_DECISION / VISUAL_DECISION Enumerated types of review codes and texts

Notes

Unreviewed: Not comparared yet. nomatch: Visually comparable and the different match: Visually comparable and the same notcomp: Not comparable means it is actually impossible to determine. unknown: means that it was reviewed, but we just can’t figure it out.

UNREVIEWED = None
NEGATIVE = 0
POSITIVE = 1
INCOMPARABLE = 2
UNKNOWN = 3
INT_TO_CODE = {0: 'NEGTV', 1: 'POSTV', 2: 'INCMP', 3: 'UNKWN', None: 'UNREV'}
INT_TO_NICE = {0: 'Negative', 1: 'Positive', 2: 'Incomparable', 3: 'Unknown', None: 'Unreviewed'}
CODE_TO_NICE = {'INCMP': 'Incomparable', 'NEGTV': 'Negative', 'POSTV': 'Positive', 'UNKWN': 'Unknown', 'UNREV': 'Unreviewed'}
CODE_TO_INT = {'INCMP': 2, 'NEGTV': 0, 'POSTV': 1, 'UNKWN': 3, 'UNREV': None}
NICE_TO_CODE = {'Incomparable': 'INCMP', 'Negative': 'NEGTV', 'Positive': 'POSTV', 'Unknown': 'UNKWN', 'Unreviewed': 'UNREV'}
NICE_TO_INT = {'Incomparable': 2, 'Negative': 0, 'Positive': 1, 'Unknown': 3, 'Unreviewed': None}
MATCH_CODE = {'INCMP': 2, 'NEGTV': 0, 'POSTV': 1, 'UNKWN': 3, 'UNREV': None}
class CODE

Bases: object

INCOMPARABLE = 'INCMP'
NEGATIVE = 'NEGTV'
POSITIVE = 'POSTV'
UNKNOWN = 'UNKWN'
UNREVIEWED = 'UNREV'
class NICE

Bases: object

INCOMPARABLE = 'Incomparable'
NEGATIVE = 'Negative'
POSITIVE = 'Positive'
UNKNOWN = 'Unknown'
UNREVIEWED = 'Unreviewed'
class graphid.core.state.META_DECISION[source]

Bases: _Common

Enumerated types of review codes and texts

Notes

unreviewed: we dont have a meta decision same: we know this is the same animal through non-visual means diff: we know this is the different animal through non-visual means

Example

>>> assert hasattr(META_DECISION, 'CODE')
>>> assert hasattr(META_DECISION, 'NICE')
>>> code1 = META_DECISION.INT_TO_CODE[META_DECISION.NULL]
>>> code2 = META_DECISION.CODE.NULL
>>> assert code1 == code2
>>> nice1 = META_DECISION.INT_TO_NICE[META_DECISION.NULL]
>>> nice2 = META_DECISION.NICE.NULL
>>> assert nice1 == nice2
NULL = None
DIFF = 0
SAME = 1
INT_TO_CODE = {0: 'diff', 1: 'same', None: 'null'}
INT_TO_NICE = {0: 'Different', 1: 'Same', None: 'NULL'}
CODE_TO_NICE = {'diff': 'Different', 'null': 'NULL', 'same': 'Same'}
CODE_TO_INT = {'diff': 0, 'null': None, 'same': 1}
NICE_TO_CODE = {'Different': 'diff', 'NULL': 'null', 'Same': 'same'}
NICE_TO_INT = {'Different': 0, 'NULL': None, 'Same': 1}
class CODE

Bases: object

DIFF = 'diff'
NULL = 'null'
SAME = 'same'
class NICE

Bases: object

DIFF = 'Different'
NULL = 'NULL'
SAME = 'Same'
class graphid.core.state.CONFIDENCE[source]

Bases: _Common

UNKNOWN = None
GUESSING = 1
NOT_SURE = 2
PRETTY_SURE = 3
ABSOLUTELY_SURE = 4
INT_TO_CODE = {1: 'guessing', 2: 'not_sure', 3: 'pretty_sure', 4: 'absolutely_sure', None: 'unspecified'}
INT_TO_NICE = {1: 'Guessing', 2: 'Unsure', 3: 'Sure', 4: 'Doubtless', None: 'Unspecified'}
CODE_TO_NICE = {'absolutely_sure': 'Doubtless', 'guessing': 'Guessing', 'not_sure': 'Unsure', 'pretty_sure': 'Sure', 'unspecified': 'Unspecified'}
CODE_TO_INT = {'absolutely_sure': 4, 'guessing': 1, 'not_sure': 2, 'pretty_sure': 3, 'unspecified': None}
NICE_TO_CODE = {'Doubtless': 'absolutely_sure', 'Guessing': 'guessing', 'Sure': 'pretty_sure', 'Unspecified': 'unspecified', 'Unsure': 'not_sure'}
NICE_TO_INT = {'Doubtless': 4, 'Guessing': 1, 'Sure': 3, 'Unspecified': None, 'Unsure': 2}
class CODE

Bases: object

ABSOLUTELY_SURE = 'absolutely_sure'
GUESSING = 'guessing'
NOT_SURE = 'not_sure'
PRETTY_SURE = 'pretty_sure'
UNKNOWN = 'unspecified'
class NICE

Bases: object

ABSOLUTELY_SURE = 'Doubtless'
GUESSING = 'Guessing'
NOT_SURE = 'Unsure'
PRETTY_SURE = 'Sure'
UNKNOWN = 'Unspecified'
class graphid.core.state.QUAL[source]

Bases: _Common

EXCELLENT = 5
GOOD = 4
OK = 3
POOR = 2
JUNK = 1
UNKNOWN = None
INT_TO_CODE = {1: 'junk', 2: 'poor', 3: 'ok', 4: 'good', 5: 'excellent', None: 'unspecified'}
INT_TO_NICE = {1: 'Junk', 2: 'Poor', 3: 'OK', 4: 'Good', 5: 'Excellent', None: 'Unspecified'}
CODE_TO_NICE = {'excellent': 'Excellent', 'good': 'Good', 'junk': 'Junk', 'ok': 'OK', 'poor': 'Poor', 'unspecified': 'Unspecified'}
CODE_TO_INT = {'excellent': 5, 'good': 4, 'junk': 1, 'ok': 3, 'poor': 2, 'unspecified': None}
NICE_TO_CODE = {'Excellent': 'excellent', 'Good': 'good', 'Junk': 'junk', 'OK': 'ok', 'Poor': 'poor', 'Unspecified': 'unspecified'}
NICE_TO_INT = {'Excellent': 5, 'Good': 4, 'Junk': 1, 'OK': 3, 'Poor': 2, 'Unspecified': None}
class CODE

Bases: object

EXCELLENT = 'excellent'
GOOD = 'good'
JUNK = 'junk'
OK = 'ok'
POOR = 'poor'
UNKNOWN = 'unspecified'
class NICE

Bases: object

EXCELLENT = 'Excellent'
GOOD = 'Good'
JUNK = 'Junk'
OK = 'OK'
POOR = 'Poor'
UNKNOWN = 'Unspecified'
class graphid.core.state.VIEW[source]

Bases: _Common

categorical viewpoint using the faces of a Rhombicuboctahedron

References

https://en.wikipedia.org/wiki/Rhombicuboctahedron

UNKNOWN = None
R = 1
FR = 2
F = 3
FL = 4
L = 5
BL = 6
B = 7
BR = 8
U = 9
UF = 10
UB = 11
UL = 12
UR = 13
UFL = 14
UFR = 15
UBL = 16
UBR = 17
D = 18
DF = 19
DB = 20
DL = 21
DR = 22
DFL = 23
DFR = 24
DBL = 25
DBR = 26
INT_TO_CODE = {1: 'right', 10: 'upfront', 11: 'upback', 12: 'upleft', 13: 'upright', 14: 'upfrontleft', 15: 'upfrontright', 16: 'upbackleft', 17: 'upbackright', 18: 'down', 19: 'downfront', 2: 'frontright', 20: 'downback', 21: 'downleft', 22: 'downright', 23: 'downfrontleft', 24: 'downfrontright', 25: 'downbackleft', 26: 'downbackright', 3: 'front', 4: 'frontleft', 5: 'left', 6: 'backleft', 7: 'back', 8: 'backright', 9: 'up', None: 'unknown'}
INT_TO_NICE = {1: 'Right', 10: 'Up-Front', 11: 'Up-Back', 12: 'Up-Left', 13: 'Up-Right', 14: 'Up-Front-Left', 15: 'Up-Front-Right', 16: 'Up-Back-Left', 17: 'Up-Back-Right', 18: 'Down', 19: 'Down-Front', 2: 'Front-Right', 20: 'Down-Back', 21: 'Down-Left', 22: 'Down-Right', 23: 'Down-Front-Left', 24: 'Down-Front-Right', 25: 'Down-Back-Left', 26: 'Down-Back-Right', 3: 'Front', 4: 'Front-Left', 5: 'Left', 6: 'Back-Left', 7: 'Back', 8: 'Back-Right', 9: 'Up', None: 'Unknown'}
CODE_TO_NICE = {'back': 'Back', 'backleft': 'Back-Left', 'backright': 'Back-Right', 'down': 'Down', 'downback': 'Down-Back', 'downbackleft': 'Down-Back-Left', 'downbackright': 'Down-Back-Right', 'downfront': 'Down-Front', 'downfrontleft': 'Down-Front-Left', 'downfrontright': 'Down-Front-Right', 'downleft': 'Down-Left', 'downright': 'Down-Right', 'front': 'Front', 'frontleft': 'Front-Left', 'frontright': 'Front-Right', 'left': 'Left', 'right': 'Right', 'unknown': 'Unknown', 'up': 'Up', 'upback': 'Up-Back', 'upbackleft': 'Up-Back-Left', 'upbackright': 'Up-Back-Right', 'upfront': 'Up-Front', 'upfrontleft': 'Up-Front-Left', 'upfrontright': 'Up-Front-Right', 'upleft': 'Up-Left', 'upright': 'Up-Right'}
CODE_TO_INT = {'back': 7, 'backleft': 6, 'backright': 8, 'down': 18, 'downback': 20, 'downbackleft': 25, 'downbackright': 26, 'downfront': 19, 'downfrontleft': 23, 'downfrontright': 24, 'downleft': 21, 'downright': 22, 'front': 3, 'frontleft': 4, 'frontright': 2, 'left': 5, 'right': 1, 'unknown': None, 'up': 9, 'upback': 11, 'upbackleft': 16, 'upbackright': 17, 'upfront': 10, 'upfrontleft': 14, 'upfrontright': 15, 'upleft': 12, 'upright': 13}
NICE_TO_CODE = {'Back': 'back', 'Back-Left': 'backleft', 'Back-Right': 'backright', 'Down': 'down', 'Down-Back': 'downback', 'Down-Back-Left': 'downbackleft', 'Down-Back-Right': 'downbackright', 'Down-Front': 'downfront', 'Down-Front-Left': 'downfrontleft', 'Down-Front-Right': 'downfrontright', 'Down-Left': 'downleft', 'Down-Right': 'downright', 'Front': 'front', 'Front-Left': 'frontleft', 'Front-Right': 'frontright', 'Left': 'left', 'Right': 'right', 'Unknown': 'unknown', 'Up': 'up', 'Up-Back': 'upback', 'Up-Back-Left': 'upbackleft', 'Up-Back-Right': 'upbackright', 'Up-Front': 'upfront', 'Up-Front-Left': 'upfrontleft', 'Up-Front-Right': 'upfrontright', 'Up-Left': 'upleft', 'Up-Right': 'upright'}
NICE_TO_INT = {'Back': 7, 'Back-Left': 6, 'Back-Right': 8, 'Down': 18, 'Down-Back': 20, 'Down-Back-Left': 25, 'Down-Back-Right': 26, 'Down-Front': 19, 'Down-Front-Left': 23, 'Down-Front-Right': 24, 'Down-Left': 21, 'Down-Right': 22, 'Front': 3, 'Front-Left': 4, 'Front-Right': 2, 'Left': 5, 'Right': 1, 'Unknown': None, 'Up': 9, 'Up-Back': 11, 'Up-Back-Left': 16, 'Up-Back-Right': 17, 'Up-Front': 10, 'Up-Front-Left': 14, 'Up-Front-Right': 15, 'Up-Left': 12, 'Up-Right': 13}
DIST = {(1, 1): 0, (1, 10): 2, (1, 11): 2, (1, 12): 3, (1, 13): 1, (1, 14): 3, (1, 15): 1, (1, 16): 3, (1, 17): 1, (1, 18): 2, (1, 19): 2, (1, 2): 1, (1, 20): 2, (1, 21): 3, (1, 22): 1, (1, 23): 3, (1, 24): 1, (1, 25): 3, (1, 26): 1, (1, 3): 2, (1, 4): 3, (1, 5): 4, (1, 6): 3, (1, 7): 2, (1, 8): 1, (1, 9): 2, (1, None): None, (10, 1): 2, (10, 10): 0, (10, 11): 2, (10, 12): 2, (10, 13): 2, (10, 14): 1, (10, 15): 1, (10, 16): 2, (10, 17): 2, (10, 18): 3, (10, 19): 2, (10, 2): 2, (10, 20): 4, (10, 21): 3, (10, 22): 3, (10, 23): 2, (10, 24): 2, (10, 25): 3, (10, 26): 3, (10, 3): 1, (10, 4): 2, (10, 5): 2, (10, 6): 3, (10, 7): 3, (10, 8): 3, (10, 9): 1, (10, None): None, (11, 1): 2, (11, 10): 2, (11, 11): 0, (11, 12): 2, (11, 13): 2, (11, 14): 2, (11, 15): 2, (11, 16): 1, (11, 17): 1, (11, 18): 3, (11, 19): 4, (11, 2): 3, (11, 20): 2, (11, 21): 3, (11, 22): 3, (11, 23): 3, (11, 24): 3, (11, 25): 2, (11, 26): 2, (11, 3): 3, (11, 4): 3, (11, 5): 2, (11, 6): 2, (11, 7): 1, (11, 8): 2, (11, 9): 1, (11, None): None, (12, 1): 3, (12, 10): 2, (12, 11): 2, (12, 12): 0, (12, 13): 2, (12, 14): 1, (12, 15): 2, (12, 16): 1, (12, 17): 2, (12, 18): 3, (12, 19): 3, (12, 2): 3, (12, 20): 3, (12, 21): 2, (12, 22): 4, (12, 23): 2, (12, 24): 3, (12, 25): 2, (12, 26): 3, (12, 3): 2, (12, 4): 2, (12, 5): 1, (12, 6): 2, (12, 7): 2, (12, 8): 3, (12, 9): 1, (12, None): None, (13, 1): 1, (13, 10): 2, (13, 11): 2, (13, 12): 2, (13, 13): 0, (13, 14): 2, (13, 15): 1, (13, 16): 2, (13, 17): 1, (13, 18): 3, (13, 19): 3, (13, 2): 2, (13, 20): 3, (13, 21): 4, (13, 22): 2, (13, 23): 3, (13, 24): 2, (13, 25): 3, (13, 26): 2, (13, 3): 2, (13, 4): 3, (13, 5): 3, (13, 6): 3, (13, 7): 2, (13, 8): 2, (13, 9): 1, (13, None): None, (14, 1): 3, (14, 10): 1, (14, 11): 2, (14, 12): 1, (14, 13): 2, (14, 14): 0, (14, 15): 2, (14, 16): 2, (14, 17): 2, (14, 18): 3, (14, 19): 2, (14, 2): 2, (14, 20): 3, (14, 21): 2, (14, 22): 3, (14, 23): 2, (14, 24): 2, (14, 25): 2, (14, 26): 4, (14, 3): 1, (14, 4): 1, (14, 5): 1, (14, 6): 2, (14, 7): 3, (14, 8): 3, (14, 9): 1, (14, None): None, (15, 1): 1, (15, 10): 1, (15, 11): 2, (15, 12): 2, (15, 13): 1, (15, 14): 2, (15, 15): 0, (15, 16): 2, (15, 17): 2, (15, 18): 3, (15, 19): 2, (15, 2): 1, (15, 20): 3, (15, 21): 3, (15, 22): 2, (15, 23): 2, (15, 24): 2, (15, 25): 4, (15, 26): 2, (15, 3): 1, (15, 4): 2, (15, 5): 3, (15, 6): 3, (15, 7): 3, (15, 8): 2, (15, 9): 1, (15, None): None, (16, 1): 3, (16, 10): 2, (16, 11): 1, (16, 12): 1, (16, 13): 2, (16, 14): 2, (16, 15): 2, (16, 16): 0, (16, 17): 2, (16, 18): 3, (16, 19): 3, (16, 2): 3, (16, 20): 2, (16, 21): 2, (16, 22): 3, (16, 23): 2, (16, 24): 4, (16, 25): 2, (16, 26): 2, (16, 3): 3, (16, 4): 2, (16, 5): 1, (16, 6): 1, (16, 7): 1, (16, 8): 2, (16, 9): 1, (16, None): None, (17, 1): 1, (17, 10): 2, (17, 11): 1, (17, 12): 2, (17, 13): 1, (17, 14): 2, (17, 15): 2, (17, 16): 2, (17, 17): 0, (17, 18): 3, (17, 19): 3, (17, 2): 2, (17, 20): 2, (17, 21): 3, (17, 22): 2, (17, 23): 4, (17, 24): 2, (17, 25): 2, (17, 26): 2, (17, 3): 3, (17, 4): 3, (17, 5): 3, (17, 6): 2, (17, 7): 1, (17, 8): 1, (17, 9): 1, (17, None): None, (18, 1): 2, (18, 10): 3, (18, 11): 3, (18, 12): 3, (18, 13): 3, (18, 14): 3, (18, 15): 3, (18, 16): 3, (18, 17): 3, (18, 18): 0, (18, 19): 1, (18, 2): 2, (18, 20): 1, (18, 21): 1, (18, 22): 1, (18, 23): 1, (18, 24): 1, (18, 25): 1, (18, 26): 1, (18, 3): 2, (18, 4): 2, (18, 5): 2, (18, 6): 2, (18, 7): 2, (18, 8): 2, (18, 9): 4, (18, None): None, (19, 1): 2, (19, 10): 2, (19, 11): 4, (19, 12): 3, (19, 13): 3, (19, 14): 2, (19, 15): 2, (19, 16): 3, (19, 17): 3, (19, 18): 1, (19, 19): 0, (19, 2): 2, (19, 20): 2, (19, 21): 2, (19, 22): 2, (19, 23): 1, (19, 24): 1, (19, 25): 2, (19, 26): 2, (19, 3): 1, (19, 4): 2, (19, 5): 2, (19, 6): 3, (19, 7): 3, (19, 8): 3, (19, 9): 3, (19, None): None, (2, 1): 1, (2, 10): 2, (2, 11): 3, (2, 12): 3, (2, 13): 2, (2, 14): 2, (2, 15): 1, (2, 16): 3, (2, 17): 2, (2, 18): 2, (2, 19): 2, (2, 2): 0, (2, 20): 3, (2, 21): 3, (2, 22): 2, (2, 23): 2, (2, 24): 1, (2, 25): 3, (2, 26): 2, (2, 3): 1, (2, 4): 2, (2, 5): 3, (2, 6): 4, (2, 7): 3, (2, 8): 2, (2, 9): 2, (2, None): None, (20, 1): 2, (20, 10): 4, (20, 11): 2, (20, 12): 3, (20, 13): 3, (20, 14): 3, (20, 15): 3, (20, 16): 2, (20, 17): 2, (20, 18): 1, (20, 19): 2, (20, 2): 3, (20, 20): 0, (20, 21): 2, (20, 22): 2, (20, 23): 2, (20, 24): 2, (20, 25): 1, (20, 26): 1, (20, 3): 3, (20, 4): 3, (20, 5): 2, (20, 6): 2, (20, 7): 1, (20, 8): 2, (20, 9): 3, (20, None): None, (21, 1): 3, (21, 10): 3, (21, 11): 3, (21, 12): 2, (21, 13): 4, (21, 14): 2, (21, 15): 3, (21, 16): 2, (21, 17): 3, (21, 18): 1, (21, 19): 2, (21, 2): 3, (21, 20): 2, (21, 21): 0, (21, 22): 2, (21, 23): 1, (21, 24): 2, (21, 25): 1, (21, 26): 2, (21, 3): 2, (21, 4): 2, (21, 5): 1, (21, 6): 2, (21, 7): 2, (21, 8): 3, (21, 9): 3, (21, None): None, (22, 1): 1, (22, 10): 3, (22, 11): 3, (22, 12): 4, (22, 13): 2, (22, 14): 3, (22, 15): 2, (22, 16): 3, (22, 17): 2, (22, 18): 1, (22, 19): 2, (22, 2): 2, (22, 20): 2, (22, 21): 2, (22, 22): 0, (22, 23): 2, (22, 24): 1, (22, 25): 2, (22, 26): 1, (22, 3): 2, (22, 4): 3, (22, 5): 3, (22, 6): 3, (22, 7): 2, (22, 8): 2, (22, 9): 3, (22, None): None, (23, 1): 3, (23, 10): 2, (23, 11): 3, (23, 12): 2, (23, 13): 3, (23, 14): 2, (23, 15): 2, (23, 16): 2, (23, 17): 4, (23, 18): 1, (23, 19): 1, (23, 2): 2, (23, 20): 2, (23, 21): 1, (23, 22): 2, (23, 23): 0, (23, 24): 2, (23, 25): 2, (23, 26): 2, (23, 3): 1, (23, 4): 1, (23, 5): 1, (23, 6): 2, (23, 7): 3, (23, 8): 3, (23, 9): 3, (23, None): None, (24, 1): 1, (24, 10): 2, (24, 11): 3, (24, 12): 3, (24, 13): 2, (24, 14): 2, (24, 15): 2, (24, 16): 4, (24, 17): 2, (24, 18): 1, (24, 19): 1, (24, 2): 1, (24, 20): 2, (24, 21): 2, (24, 22): 1, (24, 23): 2, (24, 24): 0, (24, 25): 2, (24, 26): 2, (24, 3): 1, (24, 4): 2, (24, 5): 3, (24, 6): 3, (24, 7): 3, (24, 8): 2, (24, 9): 3, (24, None): None, (25, 1): 3, (25, 10): 3, (25, 11): 2, (25, 12): 2, (25, 13): 3, (25, 14): 2, (25, 15): 4, (25, 16): 2, (25, 17): 2, (25, 18): 1, (25, 19): 2, (25, 2): 3, (25, 20): 1, (25, 21): 1, (25, 22): 2, (25, 23): 2, (25, 24): 2, (25, 25): 0, (25, 26): 2, (25, 3): 3, (25, 4): 2, (25, 5): 1, (25, 6): 1, (25, 7): 1, (25, 8): 2, (25, 9): 3, (25, None): None, (26, 1): 1, (26, 10): 3, (26, 11): 2, (26, 12): 3, (26, 13): 2, (26, 14): 4, (26, 15): 2, (26, 16): 2, (26, 17): 2, (26, 18): 1, (26, 19): 2, (26, 2): 2, (26, 20): 1, (26, 21): 2, (26, 22): 1, (26, 23): 2, (26, 24): 2, (26, 25): 2, (26, 26): 0, (26, 3): 3, (26, 4): 3, (26, 5): 3, (26, 6): 2, (26, 7): 1, (26, 8): 1, (26, 9): 3, (26, None): None, (3, 1): 2, (3, 10): 1, (3, 11): 3, (3, 12): 2, (3, 13): 2, (3, 14): 1, (3, 15): 1, (3, 16): 3, (3, 17): 3, (3, 18): 2, (3, 19): 1, (3, 2): 1, (3, 20): 3, (3, 21): 2, (3, 22): 2, (3, 23): 1, (3, 24): 1, (3, 25): 3, (3, 26): 3, (3, 3): 0, (3, 4): 1, (3, 5): 2, (3, 6): 3, (3, 7): 4, (3, 8): 3, (3, 9): 2, (3, None): None, (4, 1): 3, (4, 10): 2, (4, 11): 3, (4, 12): 2, (4, 13): 3, (4, 14): 1, (4, 15): 2, (4, 16): 2, (4, 17): 3, (4, 18): 2, (4, 19): 2, (4, 2): 2, (4, 20): 3, (4, 21): 2, (4, 22): 3, (4, 23): 1, (4, 24): 2, (4, 25): 2, (4, 26): 3, (4, 3): 1, (4, 4): 0, (4, 5): 1, (4, 6): 2, (4, 7): 3, (4, 8): 4, (4, 9): 2, (4, None): None, (5, 1): 4, (5, 10): 2, (5, 11): 2, (5, 12): 1, (5, 13): 3, (5, 14): 1, (5, 15): 3, (5, 16): 1, (5, 17): 3, (5, 18): 2, (5, 19): 2, (5, 2): 3, (5, 20): 2, (5, 21): 1, (5, 22): 3, (5, 23): 1, (5, 24): 3, (5, 25): 1, (5, 26): 3, (5, 3): 2, (5, 4): 1, (5, 5): 0, (5, 6): 1, (5, 7): 2, (5, 8): 3, (5, 9): 2, (5, None): None, (6, 1): 3, (6, 10): 3, (6, 11): 2, (6, 12): 2, (6, 13): 3, (6, 14): 2, (6, 15): 3, (6, 16): 1, (6, 17): 2, (6, 18): 2, (6, 19): 3, (6, 2): 4, (6, 20): 2, (6, 21): 2, (6, 22): 3, (6, 23): 2, (6, 24): 3, (6, 25): 1, (6, 26): 2, (6, 3): 3, (6, 4): 2, (6, 5): 1, (6, 6): 0, (6, 7): 1, (6, 8): 2, (6, 9): 2, (6, None): None, (7, 1): 2, (7, 10): 3, (7, 11): 1, (7, 12): 2, (7, 13): 2, (7, 14): 3, (7, 15): 3, (7, 16): 1, (7, 17): 1, (7, 18): 2, (7, 19): 3, (7, 2): 3, (7, 20): 1, (7, 21): 2, (7, 22): 2, (7, 23): 3, (7, 24): 3, (7, 25): 1, (7, 26): 1, (7, 3): 4, (7, 4): 3, (7, 5): 2, (7, 6): 1, (7, 7): 0, (7, 8): 1, (7, 9): 2, (7, None): None, (8, 1): 1, (8, 10): 3, (8, 11): 2, (8, 12): 3, (8, 13): 2, (8, 14): 3, (8, 15): 2, (8, 16): 2, (8, 17): 1, (8, 18): 2, (8, 19): 3, (8, 2): 2, (8, 20): 2, (8, 21): 3, (8, 22): 2, (8, 23): 3, (8, 24): 2, (8, 25): 2, (8, 26): 1, (8, 3): 3, (8, 4): 4, (8, 5): 3, (8, 6): 2, (8, 7): 1, (8, 8): 0, (8, 9): 2, (8, None): None, (9, 1): 2, (9, 10): 1, (9, 11): 1, (9, 12): 1, (9, 13): 1, (9, 14): 1, (9, 15): 1, (9, 16): 1, (9, 17): 1, (9, 18): 4, (9, 19): 3, (9, 2): 2, (9, 20): 3, (9, 21): 3, (9, 22): 3, (9, 23): 3, (9, 24): 3, (9, 25): 3, (9, 26): 3, (9, 3): 2, (9, 4): 2, (9, 5): 2, (9, 6): 2, (9, 7): 2, (9, 8): 2, (9, 9): 0, (9, None): None, (None, 1): None, (None, 10): None, (None, 11): None, (None, 12): None, (None, 13): None, (None, 14): None, (None, 15): None, (None, 16): None, (None, 17): None, (None, 18): None, (None, 19): None, (None, 2): None, (None, 20): None, (None, 21): None, (None, 22): None, (None, 23): None, (None, 24): None, (None, 25): None, (None, 26): None, (None, 3): None, (None, 4): None, (None, 5): None, (None, 6): None, (None, 7): None, (None, 8): None, (None, 9): None, (None, None): None}
class CODE

Bases: object

B = 'back'
BL = 'backleft'
BR = 'backright'
D = 'down'
DB = 'downback'
DBL = 'downbackleft'
DBR = 'downbackright'
DF = 'downfront'
DFL = 'downfrontleft'
DFR = 'downfrontright'
DL = 'downleft'
DR = 'downright'
F = 'front'
FL = 'frontleft'
FR = 'frontright'
L = 'left'
R = 'right'
U = 'up'
UB = 'upback'
UBL = 'upbackleft'
UBR = 'upbackright'
UF = 'upfront'
UFL = 'upfrontleft'
UFR = 'upfrontright'
UL = 'upleft'
UNKNOWN = 'unknown'
UR = 'upright'
class NICE

Bases: object

B = 'Back'
BL = 'Back-Left'
BR = 'Back-Right'
D = 'Down'
DB = 'Down-Back'
DBL = 'Down-Back-Left'
DBR = 'Down-Back-Right'
DF = 'Down-Front'
DFL = 'Down-Front-Left'
DFR = 'Down-Front-Right'
DL = 'Down-Left'
DR = 'Down-Right'
F = 'Front'
FL = 'Front-Left'
FR = 'Front-Right'
L = 'Left'
R = 'Right'
U = 'Up'
UB = 'Up-Back'
UBL = 'Up-Back-Left'
UBR = 'Up-Back-Right'
UF = 'Up-Front'
UFL = 'Up-Front-Left'
UFR = 'Up-Front-Right'
UL = 'Up-Left'
UNKNOWN = 'Unknown'
UR = 'Up-Right'
d = None
f1 = None
f2 = None