1324_domino

Counting sequence:
1, 2, 6, 22, 91, 408, 1938, 9614, 49335, 260130, 1402440, 7702632, 42975796, 243035536, 1390594458, 8038677054, 46892282815, 275750636070, 1633292229030, 9737153323590, 58392041019795, 352044769046880, 2132866978427640, 12980019040145352, 79319075627675556, 486556845464525528, 2995168113638767536, 18498288730876090608, 114595331036190018936, 711933341625150895008, 4434751440540002450154, 27693937317498057258654, 173348486483847584921487, 1087465660550845097954670, 6836227790974561437377010, 43059882787060427150720130, 271730523482555011335333873, 1717792959637970141588404344, 10877543393150564092779737634, 68989369614552945343637342302, 438219050882112985870384873951, 2787576725857490265796565887650, 17756601589161191912534864839200, 113256526240979437554482677232800, 723288752030602796021018970488400, 4624679487932117809012911962299200, 29604033827354938343220811442875800, 189713710571723977907881905267947400, 1217042197819211094639351495309832260, 7815438132297391688697431326316954280, 50237099331354481153561457375362229640, 323223601358337322138952018207519251080, 2081486151426509764532410115175421220740, 13415950774165193878487460692306634857280, 86543242300913118426574999813402742037840, 558721882409388325342690299214520450575920, 3609912971878949007592689421986470587341720, 23341279963326815877863552029689139243142160, 151031811527408808621470042545047371573272800, 977951953438483835584056055189737031513538400, 6336682385950144475178987917006356666427809200, 41085841603379603416208142608551691604800500032, 266562594871139272459439000039291942062936708746, 1730511013930884471834175547661163609564217023326, 11241116131783514294659125755643526694882618630703, 73062839649942495894744388454198381675929918735614, 475147225174462636701115467398218233774838360404810, 3091699002777533303802910323092881132048718154039930, 20127818430723828070852554410721331480948206728433645, 131105262634166355093812143443643650305630872475047560, 854399855499931438819406293782206842288968558792807030, 5570751632246364501664744956578082684985655652818665770, 36338937770966149905647052525631933190282877318290099685, 237154248916023383679538213932379139827054160431579147206, 1548404806795033120629177352171950521868378714954458203368, 10114115533256784970017577861105857610503127684567559810184, 66093109818441050170077645898814580687990041581411088734788, 432080441547889551881849217129684871442794850567373757878864, 2825846850029004073981999714859943746487901227885206204240778, 18488592192701841469547286379188327603833080014327846711481934, 121011335537493281256950864455374267826285301428508380507300167, 792339281317781856904766996401125271703760714063114018261380502, 5189856182250004857416425056837823956745676464996804138432327206, 34005931998209655913979882246770635567607852228877423566303014150, 222897715429309354176272459500405404207019155439832822645630793075, 1461519483109938312733238753782207729079948602222192651734237705600, 9586239155125640842154834189580571604828935604575563620238659132640, 62897485738248658147926204976884295086873227648912948658937825765920, 412815993453365727453195362087576718870921212008554352976585413243920, 2710284493962726187561996239780606594940421226651754636766559007793760, 17799402229060982959512639596107276668411290935402186189000053241490880, 116929813248452054577094803275212144460748977505017849114311596490526400, 768372158295337829795519605843467948260135034851923241173342712425999200, 5050586584350641641462947584608526162832700463003284930285597712086684800, 33207276256334241656385800332964370480954663090027815479132367417852669400, 218395356792299601274461241087312226201943324802814738808675523400901352200, 1436712311833801380126577442349108137989393253667496331205266531886149319300, 9453880829968674886795066886449799711876675066203377642870157160594630915400, 62224588497954624958412957828502249560884768852830070535835838436918832025080, 409659766834989876832016504243771792550166593344529698897890119433008849645240, 2697688505131429280192984951374046905708145730817475998929006638416355436862620

Implicit equation for the generating function in Maple syntax:
x^4*F(x)^3+2*x^2*(3*x+1)*F(x)^2+(12*x^2-10*x+1)*F(x)+8*x-1 = 0

Implicit equation for the generating function in latex syntax:
x^{4} F \! \left(x \right)^{3}+2 x^{2} \left(3 x +1\right) F \! \left(x \right)^{2}+\left(12 x^{2}-10 x +1\right) F \! \left(x \right)+8 x -1 = 0

Recurrence in maple format:
a(0) = 1
a(n+1) = 3/2*(3*n+5)*(3*n+4)/(n+3)/(2*n+5)*a(n), n >= 1

Recurrence in latex format:
a \! \left(0\right) = 1
a \! \left(n +1\right) = \frac{3 \left(3 n +5\right) \left(3 n +4\right) a \! \left(n \right)}{2 \left(n +3\right) \left(2 n +5\right)}, \quad n \geq 1

Specification 1
Strategy pack name: point_placements_tracked_fusion_expand_verified
Tree: https://permpal.com/tree/24345/
System of equations in Maple syntax:
F[0,x] = F[1,x]+F[6,x]
F[1,x] = F[2,x]+F[3,x]
F[2,x] = 1
F[3,x] = F[4,x]
F[4,x] = F[1,x]^2*F[5,x]
F[5,x] = x
F[6,x] = F[7,x]
F[7,x] = F[5,x]*F[8,x]
F[8,x] = F[30,x]+F[9,x]
F[9,x] = F[10,x,1]
F[10,x,k[0]] = F[11,x,k[0]]+F[16,x,k[0]]
F[11,x,k[0]] = F[1,x]*F[12,x,k[0]]
F[12,x,k[0]] = F[13,x,k[0]]+F[2,x]
F[13,x,k[0]] = F[14,x,k[0]]
F[14,x,k[0]] = F[12,x,k[0]]*F[15,x,k[0]]
F[15,x,k[0]] = k[0]*x
F[16,x,k[0]] = F[17,x,k[0]]
F[17,x,k[0]] = F[12,x,k[0]]*F[18,x,k[0]]*F[5,x]
F[18,x,k[0]] = F[19,x,k[0]]+F[20,x,k[0]]
F[19,x,k[0]] = (F[10,x,k[0]]*k[0]-F[10,x,1])/(-1+k[0])
F[20,x,k[0]] = F[21,x,k[0]]
F[21,x,k[0]] = F[1,x]*F[22,x,k[0]]*F[5,x]
F[22,x,k[0]] = (F[23,x,k[0]]*k[0]-F[23,x,1])/(-1+k[0])
F[23,x,k[0]] = F[18,x,k[0]]+F[24,x,k[0]]
F[24,x,k[0]] = F[25,x,k[0]]
F[25,x,k[0]] = F[26,x,k[0]]*F[5,x]
F[26,x,k[0]] = F[27,x,k[0]]+F[28,x,k[0]]
F[27,x,k[0]] = F[1,x]*F[23,x,k[0]]
F[28,x,k[0]] = F[29,x,k[0]]
F[29,x,k[0]] = F[18,x,k[0]]*F[23,x,k[0]]*F[5,x]
F[30,x] = F[31,x]
F[31,x] = F[1,x]*F[32,x]*F[5,x]
F[32,x] = F[23,x,1]
System of equations in latex syntax:
F_{0}\! \left(x \right) = F_{1}\! \left(x \right)+F_{6}\! \left(x \right)
F_{1}\! \left(x \right) = F_{2}\! \left(x \right)+F_{3}\! \left(x \right)
F_{2}\! \left(x \right) = 1
F_{3}\! \left(x \right) = F_{4}\! \left(x \right)
F_{4}\! \left(x \right) = F_{1} \left(x \right)^{2} F_{5}\! \left(x \right)
F_{5}\! \left(x \right) = x
F_{6}\! \left(x \right) = F_{7}\! \left(x \right)
F_{7}\! \left(x \right) = F_{5}\! \left(x \right) F_{8}\! \left(x \right)
F_{8}\! \left(x \right) = F_{30}\! \left(x \right)+F_{9}\! \left(x \right)
F_{9}\! \left(x \right) = F_{10}\! \left(x , 1\right)
F_{10}\! \left(x , y\right) = F_{11}\! \left(x , y\right)+F_{16}\! \left(x , y\right)
F_{11}\! \left(x , y\right) = F_{1}\! \left(x \right) F_{12}\! \left(x , y\right)
F_{12}\! \left(x , y\right) = F_{13}\! \left(x , y\right)+F_{2}\! \left(x \right)
F_{13}\! \left(x , y\right) = F_{14}\! \left(x , y\right)
F_{14}\! \left(x , y\right) = F_{12}\! \left(x , y\right) F_{15}\! \left(x , y\right)
F_{15}\! \left(x , y\right) = y x
F_{16}\! \left(x , y\right) = F_{17}\! \left(x , y\right)
F_{17}\! \left(x , y\right) = F_{12}\! \left(x , y\right) F_{18}\! \left(x , y\right) F_{5}\! \left(x \right)
F_{18}\! \left(x , y\right) = F_{19}\! \left(x , y\right)+F_{20}\! \left(x , y\right)
F_{19}\! \left(x , y\right) = -\frac{-y F_{10}\! \left(x , y\right)+F_{10}\! \left(x , 1\right)}{-1+y}
F_{20}\! \left(x , y\right) = F_{21}\! \left(x , y\right)
F_{21}\! \left(x , y\right) = F_{1}\! \left(x \right) F_{22}\! \left(x , y\right) F_{5}\! \left(x \right)
F_{22}\! \left(x , y\right) = -\frac{-y F_{23}\! \left(x , y\right)+F_{23}\! \left(x , 1\right)}{-1+y}
F_{23}\! \left(x , y\right) = F_{18}\! \left(x , y\right)+F_{24}\! \left(x , y\right)
F_{24}\! \left(x , y\right) = F_{25}\! \left(x , y\right)
F_{25}\! \left(x , y\right) = F_{26}\! \left(x , y\right) F_{5}\! \left(x \right)
F_{26}\! \left(x , y\right) = F_{27}\! \left(x , y\right)+F_{28}\! \left(x , y\right)
F_{27}\! \left(x , y\right) = F_{1}\! \left(x \right) F_{23}\! \left(x , y\right)
F_{28}\! \left(x , y\right) = F_{29}\! \left(x , y\right)
F_{29}\! \left(x , y\right) = F_{18}\! \left(x , y\right) F_{23}\! \left(x , y\right) F_{5}\! \left(x \right)
F_{30}\! \left(x \right) = F_{31}\! \left(x \right)
F_{31}\! \left(x \right) = F_{1}\! \left(x \right) F_{32}\! \left(x \right) F_{5}\! \left(x \right)
F_{32}\! \left(x \right) = F_{23}\! \left(x , 1\right)
System of equations in sympy syntax:
Eq(F_0(x), F_1(x) + F_6(x))
Eq(F_1(x), F_2(x) + F_3(x))
Eq(F_2(x), 1)
Eq(F_3(x), F_4(x))
Eq(F_4(x), F_1(x)**2*F_5(x))
Eq(F_5(x), x)
Eq(F_6(x), F_7(x))
Eq(F_7(x), F_5(x)*F_8(x))
Eq(F_8(x), F_30(x) + F_9(x))
Eq(F_9(x), F_10(x, 1))
Eq(F_10(x, k_0), F_11(x, k_0) + F_16(x, k_0))
Eq(F_11(x, k_0), F_1(x)*F_12(x, k_0))
Eq(F_12(x, k_0), F_13(x, k_0) + F_2(x))
Eq(F_13(x, k_0), F_14(x, k_0))
Eq(F_14(x, k_0), F_12(x, k_0)*F_15(x, k_0))
Eq(F_15(x, k_0), k_0*x)
Eq(F_16(x, k_0), F_17(x, k_0))
Eq(F_17(x, k_0), F_12(x, k_0)*F_18(x, k_0)*F_5(x))
Eq(F_18(x, k_0), F_19(x, k_0) + F_20(x, k_0))
Eq(F_19(x, k_0), (-k_0*F_10(x, k_0) + F_10(x, 1))/(1 - k_0))
Eq(F_20(x, k_0), F_21(x, k_0))
Eq(F_21(x, k_0), F_1(x)*F_22(x, k_0)*F_5(x))
Eq(F_22(x, k_0), (-k_0*F_23(x, k_0) + F_23(x, 1))/(1 - k_0))
Eq(F_23(x, k_0), F_18(x, k_0) + F_24(x, k_0))
Eq(F_24(x, k_0), F_25(x, k_0))
Eq(F_25(x, k_0), F_26(x, k_0)*F_5(x))
Eq(F_26(x, k_0), F_27(x, k_0) + F_28(x, k_0))
Eq(F_27(x, k_0), F_1(x)*F_23(x, k_0))
Eq(F_28(x, k_0), F_29(x, k_0))
Eq(F_29(x, k_0), F_18(x, k_0)*F_23(x, k_0)*F_5(x))
Eq(F_30(x), F_31(x))
Eq(F_31(x), F_1(x)*F_32(x)*F_5(x))
Eq(F_32(x), F_23(x, 1))
Pack JSON: {'expansion_strats': [[{'ignore_parent': False, 'maxreqlen': 1, 'one_cell_only': False}, {'dirs': [0, 1, 2, 3], 'ignore_parent': False, 'partial': False, 'point_only': False}]], 'inferral_strats': [{'ignore_parent': True, 'inferrable': True, 'possibly_empty': False, 'workable': True}, {}], 'initial_strats': [{}, {}, {'ignore_parent': True, 'interleaving': None, 'tracked': False, 'unions': False, 'workable': True}, {'tracked': True}], 'iterative': False, 'name': 'point_placements_tracked_fusion_expand_verified', 'symmetries': [], 'ver_strats': [{}, {'ignore_parent': False}, {'ignore_parent': False, 'symmetry': False}, {'ignore_parent': False, 'symmetry': False}]}
Specification JSON: {'root': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [0, 1], [0, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[0, 0], [0, 1], [0, 0], [0, 1]]}], 'requirements': []}, 'rules': [{'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [0, 1], [0, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[0, 0], [0, 1], [0, 0], [0, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 1]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [0, 1], [0, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[0, 0], [0, 1], [0, 0], [0, 1]]}], 'requirements': []}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_insertion', 'gps': [{'patt': [0], 'pos': [[0, 1]]}], 'ignore_parent': False, 'strategy_class': 'RequirementInsertionStrategy'}}, {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 1], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [1, 1], [1, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[0, 0], [0, 1], [1, 0], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[0, 0], [1, 1], [1, 0], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [1, 0], [1, 1]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0], 'pos': [[2, 2]]}, {'patt': [0, 1], 'pos': [[1, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 1], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [2, 1], [2, 1]]}, {'patt': [1, 0, 2], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[0, 0], [0, 1], [2, 0], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[0, 0], [2, 1], [2, 0], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 1], [2, 0], [2, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[1, 2]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.factor', 'ignore_parent': True, 'partition': [[[0, 0], [0, 1], [2, 0], [2, 1]], [[1, 2]]], 'strategy_class': 'FactorStrategy', 'workable': True}}, {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [1, 1], [1, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [1, 0], [1, 1]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 1], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [1, 1], [1, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[0, 0], [0, 1], [1, 0], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[0, 0], [1, 1], [1, 0], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [1, 0], [1, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 1], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [1, 1], [1, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[0, 0], [0, 1], [1, 0], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[0, 0], [1, 1], [1, 0], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [1, 0], [1, 1]]}], 'requirements': []}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_insertion', 'gps': [{'patt': [0], 'pos': [[0, 0]]}], 'ignore_parent': False, 'strategy_class': 'RequirementInsertionStrategy'}}, {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 2]]}, {'patt': [1, 0], 'pos': [[0, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 2], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 1], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 1], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 2], [2, 2], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [2, 1], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [2, 2], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [2, 1], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [2, 2], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 2], [2, 0], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [2, 2], [2, 0], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 2], [2, 0], [2, 2]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[0, 3]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[1, 3]]}, {'patt': [0], 'pos': [[1, 4]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[2, 1]]}, {'patt': [0], 'pos': [[2, 3]]}, {'patt': [0], 'pos': [[2, 4]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 2]]}, {'patt': [0], 'pos': [[3, 3]]}, {'patt': [0], 'pos': [[4, 1]]}, {'patt': [0], 'pos': [[4, 2]]}, {'patt': [0, 1], 'pos': [[2, 2], [2, 2]]}, {'patt': [1, 0], 'pos': [[0, 4], [0, 4]]}, {'patt': [1, 0], 'pos': [[0, 4], [3, 4]]}, {'patt': [1, 0], 'pos': [[2, 2], [2, 2]]}, {'patt': [1, 0], 'pos': [[3, 4], [3, 4]]}, {'patt': [1, 0], 'pos': [[4, 3], [4, 3]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 4], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [4, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [4, 3], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 3], [4, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 4], [4, 4], [4, 4]]}, {'patt': [1, 0, 2], 'pos': [[3, 4], [4, 3], [4, 4]]}, {'patt': [1, 0, 2], 'pos': [[3, 4], [4, 4], [4, 4]]}, {'patt': [1, 0, 2], 'pos': [[4, 4], [4, 3], [4, 4]]}, {'patt': [1, 0, 2], 'pos': [[4, 4], [4, 4], [4, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [3, 4], [4, 0], [4, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [4, 4], [4, 0], [4, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[4, 0], [4, 4], [4, 0], [4, 4]]}], 'requirements': [[{'patt': [0], 'pos': [[2, 2]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.factor', 'ignore_parent': True, 'partition': [[[0, 4], [3, 0], [3, 4], [4, 0], [4, 3], [4, 4]], [[1, 1]], [[2, 2]]], 'strategy_class': 'FactorStrategy', 'workable': True}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 2]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 2]]}, {'patt': [1, 0], 'pos': [[0, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 2], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 1], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 1], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 2], [2, 2], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [2, 1], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [2, 2], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [2, 1], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [2, 2], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 2], [2, 0], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [2, 2], [2, 0], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 2], [2, 0], [2, 2]]}], 'requirements': []}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 2]]}, {'patt': [1, 0], 'pos': [[0, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 2], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 1], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 1], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 2], [2, 2], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [2, 1], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [2, 2], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [2, 1], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [2, 2], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 2], [2, 0], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [2, 2], [2, 0], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 2], [2, 0], [2, 2]]}], 'requirements': []}, 'rule_class': 'Rule', 'strategy': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 2]]}]}], 'class_module': 'tilings.strategies.assumption_insertion', 'strategy_class': 'AddAssumptionsStrategy', 'workable': False}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 1], [1, 1]]}, {'patt': [1, 0], 'pos': [[1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 1], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [2, 1], [2, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [2, 1], [2, 1]]}, {'patt': [1, 0, 2], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [2, 0], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [2, 1], [2, 0], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 1], [2, 0], [2, 1]]}], 'requirements': []}, {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 2]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 2]]}, {'patt': [1, 0], 'pos': [[0, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 2], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 1], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 1], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 2], [2, 2], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [2, 1], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [2, 2], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [2, 1], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [2, 2], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 2], [2, 0], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [2, 2], [2, 0], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 2], [2, 0], [2, 2]]}], 'requirements': [[{'patt': [0], 'pos': [[2, 1]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 2]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 2]]}, {'patt': [1, 0], 'pos': [[0, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 2], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 1], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 1], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 2], [2, 2], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [2, 1], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [2, 2], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [2, 1], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [2, 2], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 2], [2, 0], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [2, 2], [2, 0], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 2], [2, 0], [2, 2]]}], 'requirements': []}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_insertion', 'gps': [{'patt': [0], 'pos': [[2, 1]]}], 'ignore_parent': False, 'strategy_class': 'RequirementInsertionStrategy'}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 3]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 2]]}, {'patt': [0, 1], 'pos': [[1, 3], [3, 3]]}, {'patt': [0, 1], 'pos': [[2, 3], [3, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[1, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[2, 2], [2, 2]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 3], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [3, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [3, 3], [3, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 3], [2, 2], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [2, 2], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[3, 3], [3, 3], [3, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [1, 3], [2, 1], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [2, 3], [2, 1], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 1], [2, 3], [2, 1], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [3, 3], [3, 0], [3, 3]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 4]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[0, 3]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[1, 3]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[2, 3]]}, {'patt': [0], 'pos': [[3, 0]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 2]]}, {'patt': [0], 'pos': [[3, 4]]}, {'patt': [0], 'pos': [[4, 1]]}, {'patt': [0], 'pos': [[4, 2]]}, {'patt': [0], 'pos': [[4, 3]]}, {'patt': [0, 1], 'pos': [[1, 4], [4, 4]]}, {'patt': [0, 1], 'pos': [[2, 4], [4, 4]]}, {'patt': [0, 1], 'pos': [[3, 3], [3, 3]]}, {'patt': [1, 0], 'pos': [[0, 4], [0, 4]]}, {'patt': [1, 0], 'pos': [[0, 4], [1, 4]]}, {'patt': [1, 0], 'pos': [[1, 4], [1, 4]]}, {'patt': [1, 0], 'pos': [[2, 2], [2, 2]]}, {'patt': [1, 0], 'pos': [[3, 3], [3, 3]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 4], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 0], [4, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 4], [2, 4], [2, 4]]}, {'patt': [1, 0, 2], 'pos': [[0, 4], [4, 4], [4, 4]]}, {'patt': [1, 0, 2], 'pos': [[1, 4], [2, 2], [2, 4]]}, {'patt': [1, 0, 2], 'pos': [[1, 4], [2, 4], [2, 4]]}, {'patt': [1, 0, 2], 'pos': [[2, 4], [2, 2], [2, 4]]}, {'patt': [1, 0, 2], 'pos': [[2, 4], [2, 4], [2, 4]]}, {'patt': [1, 0, 2], 'pos': [[4, 4], [4, 4], [4, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [1, 4], [2, 1], [2, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [2, 4], [2, 1], [2, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 1], [2, 4], [2, 1], [2, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[4, 0], [4, 4], [4, 0], [4, 4]]}], 'requirements': [[{'patt': [0], 'pos': [[3, 3]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.factor', 'ignore_parent': True, 'partition': [[[0, 4], [1, 1], [1, 4], [2, 1], [2, 2], [2, 4], [4, 0], [4, 4]], [[3, 3]]], 'strategy_class': 'FactorStrategy', 'workable': True}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 3]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 2]]}, {'patt': [0], 'pos': [[3, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[1, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[2, 2], [2, 2]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 3], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [3, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 3], [2, 2], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [2, 2], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [2, 3], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [1, 3], [2, 1], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [2, 3], [2, 1], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 1], [2, 3], [2, 1], [2, 3]]}], 'requirements': []}, {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 3]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 2]]}, {'patt': [0, 1], 'pos': [[1, 3], [3, 3]]}, {'patt': [0, 1], 'pos': [[2, 3], [3, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[1, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[2, 2], [2, 2]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 3], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [3, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [3, 3], [3, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 3], [2, 2], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [2, 2], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[3, 3], [3, 3], [3, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [1, 3], [2, 1], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [2, 3], [2, 1], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 1], [2, 3], [2, 1], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [3, 3], [3, 0], [3, 3]]}], 'requirements': [[{'patt': [0], 'pos': [[3, 3]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 3]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 2]]}, {'patt': [0, 1], 'pos': [[1, 3], [3, 3]]}, {'patt': [0, 1], 'pos': [[2, 3], [3, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[1, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[2, 2], [2, 2]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 3], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [3, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [3, 3], [3, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 3], [2, 2], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [2, 2], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[3, 3], [3, 3], [3, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [1, 3], [2, 1], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [2, 3], [2, 1], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 1], [2, 3], [2, 1], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [3, 3], [3, 0], [3, 3]]}], 'requirements': []}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_insertion', 'gps': [{'patt': [0], 'pos': [[3, 3]]}], 'ignore_parent': False, 'strategy_class': 'RequirementInsertionStrategy'}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 1], [1, 1]]}, {'patt': [1, 0], 'pos': [[1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 1], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [2, 1], [2, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [2, 1], [2, 1]]}, {'patt': [1, 0, 2], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [2, 0], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [2, 1], [2, 0], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 1], [2, 0], [2, 1]]}], 'requirements': []}, {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 2]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 2]]}, {'patt': [1, 0], 'pos': [[0, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 2], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 1], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 1], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 2], [2, 2], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [2, 1], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [2, 2], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [2, 1], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [2, 2], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 2], [2, 0], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [2, 2], [2, 0], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 2], [2, 0], [2, 2]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 3]]}, {'patt': [0], 'pos': [[1, 5]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[0, 4]]}, {'patt': [0], 'pos': [[0, 5]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[1, 3]]}, {'patt': [0], 'pos': [[1, 4]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[2, 2]]}, {'patt': [0], 'pos': [[2, 3]]}, {'patt': [0], 'pos': [[2, 4]]}, {'patt': [0], 'pos': [[3, 0]]}, {'patt': [0], 'pos': [[3, 3]]}, {'patt': [0], 'pos': [[3, 4]]}, {'patt': [0], 'pos': [[4, 1]]}, {'patt': [0], 'pos': [[4, 2]]}, {'patt': [0], 'pos': [[4, 4]]}, {'patt': [0], 'pos': [[4, 5]]}, {'patt': [0], 'pos': [[5, 0]]}, {'patt': [0], 'pos': [[5, 1]]}, {'patt': [0], 'pos': [[5, 2]]}, {'patt': [0], 'pos': [[5, 3]]}, {'patt': [0], 'pos': [[5, 5]]}, {'patt': [0], 'pos': [[6, 1]]}, {'patt': [0], 'pos': [[6, 2]]}, {'patt': [0], 'pos': [[6, 4]]}, {'patt': [0], 'pos': [[6, 5]]}, {'patt': [0, 1], 'pos': [[5, 4], [5, 4]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [4, 3]]}, {'patt': [1, 0], 'pos': [[1, 5], [1, 5]]}, {'patt': [1, 0], 'pos': [[1, 5], [2, 5]]}, {'patt': [1, 0], 'pos': [[2, 5], [2, 5]]}, {'patt': [1, 0], 'pos': [[3, 2], [3, 2]]}, {'patt': [1, 0], 'pos': [[4, 3], [4, 3]]}, {'patt': [1, 0], 'pos': [[5, 4], [5, 4]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 1], [3, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 5], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [3, 1], [3, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [3, 2], [3, 1]]}, {'patt': [0, 2, 1], 'pos': [[3, 1], [3, 1], [3, 1]]}, {'patt': [0, 2, 1], 'pos': [[3, 1], [3, 2], [3, 1]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 0], [6, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 3], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [6, 0], [6, 0]]}, {'patt': [0, 2, 1], 'pos': [[6, 0], [6, 0], [6, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [6, 3], [6, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 5], [3, 5], [3, 5]]}, {'patt': [1, 0, 2], 'pos': [[2, 5], [3, 2], [3, 5]]}, {'patt': [1, 0, 2], 'pos': [[2, 5], [3, 5], [3, 5]]}, {'patt': [1, 0, 2], 'pos': [[3, 5], [3, 2], [3, 5]]}, {'patt': [1, 0, 2], 'pos': [[3, 5], [3, 5], [3, 5]]}, {'patt': [1, 0, 2], 'pos': [[4, 3], [6, 3], [6, 3]]}, {'patt': [1, 0, 2], 'pos': [[6, 3], [6, 3], [6, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 1], [2, 5], [3, 1], [3, 5]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 1], [3, 5], [3, 1], [3, 5]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 1], [3, 5], [3, 1], [3, 5]]}, {'patt': [0, 2, 1, 3], 'pos': [[4, 0], [4, 3], [6, 0], [6, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[4, 0], [6, 3], [6, 0], [6, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[6, 0], [6, 3], [6, 0], [6, 3]]}], 'requirements': [[{'patt': [0], 'pos': [[5, 4]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.factor', 'ignore_parent': True, 'partition': [[[0, 3], [4, 0], [4, 3], [6, 0], [6, 3]], [[1, 5], [2, 1], [2, 5], [3, 1], [3, 2], [3, 5]], [[5, 4]]], 'strategy_class': 'FactorStrategy', 'workable': True}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 1], [1, 1]]}, {'patt': [1, 0], 'pos': [[1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [2, 1], [2, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [2, 1], [2, 1]]}, {'patt': [1, 0, 2], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 1], [2, 0], [2, 1]]}], 'requirements': []}, {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 1], [1, 1]]}, {'patt': [1, 0], 'pos': [[1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 1], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [2, 1], [2, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [2, 1], [2, 1]]}, {'patt': [1, 0, 2], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [2, 0], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [2, 1], [2, 0], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 1], [2, 0], [2, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[1, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 1], [1, 1]]}, {'patt': [1, 0], 'pos': [[1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 1], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [2, 1], [2, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [2, 1], [2, 1]]}, {'patt': [1, 0, 2], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [2, 0], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [2, 1], [2, 0], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 1], [2, 0], [2, 1]]}], 'requirements': []}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_insertion', 'gps': [{'patt': [0], 'pos': [[1, 0]]}], 'ignore_parent': False, 'strategy_class': 'RequirementInsertionStrategy'}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 2]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 2]]}, {'patt': [1, 0], 'pos': [[0, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 2], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 1], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 1], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 2], [2, 2], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [2, 1], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [2, 2], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [2, 1], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [2, 2], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 2], [2, 0], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [2, 2], [2, 0], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 2], [2, 0], [2, 2]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}], 'requirements': []}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 3]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 2]]}, {'patt': [0], 'pos': [[3, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[1, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[2, 2], [2, 2]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 3], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [3, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 3], [2, 2], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [2, 2], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [2, 3], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [1, 3], [2, 1], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [2, 3], [2, 1], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 1], [2, 3], [2, 1], [2, 3]]}], 'requirements': []}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.factor', 'ignore_parent': True, 'partition': [[[0, 3], [1, 1], [1, 3], [2, 1], [2, 2], [2, 3]], [[3, 0]]], 'strategy_class': 'FactorStrategy', 'workable': True}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 2]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0], 'pos': [[2, 1]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 2]]}, {'patt': [1, 0], 'pos': [[0, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[0, 2], [2, 2]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[1, 2], [2, 2]]}, {'patt': [1, 0], 'pos': [[2, 2], [2, 2]]}, {'patt': [1, 0], 'pos': [[3, 1], [3, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 2], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [3, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [3, 1], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 1], [3, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 2], [3, 2], [3, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [3, 2], [3, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [3, 1], [3, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [3, 2], [3, 2]]}, {'patt': [1, 0, 2], 'pos': [[3, 2], [3, 1], [3, 2]]}, {'patt': [1, 0, 2], 'pos': [[3, 2], [3, 2], [3, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 2], [3, 0], [3, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [3, 2], [3, 0], [3, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [3, 2], [3, 0], [3, 2]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 4]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[0, 3]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[1, 3]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[2, 2]]}, {'patt': [0], 'pos': [[2, 3]]}, {'patt': [0], 'pos': [[2, 4]]}, {'patt': [0], 'pos': [[3, 0]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 3]]}, {'patt': [0], 'pos': [[3, 4]]}, {'patt': [0], 'pos': [[4, 1]]}, {'patt': [0], 'pos': [[4, 2]]}, {'patt': [0], 'pos': [[4, 3]]}, {'patt': [0], 'pos': [[5, 1]]}, {'patt': [0], 'pos': [[5, 2]]}, {'patt': [0, 1], 'pos': [[3, 2], [3, 2]]}, {'patt': [1, 0], 'pos': [[0, 4], [0, 4]]}, {'patt': [1, 0], 'pos': [[0, 4], [1, 4]]}, {'patt': [1, 0], 'pos': [[0, 4], [4, 4]]}, {'patt': [1, 0], 'pos': [[1, 4], [1, 4]]}, {'patt': [1, 0], 'pos': [[1, 4], [4, 4]]}, {'patt': [1, 0], 'pos': [[3, 2], [3, 2]]}, {'patt': [1, 0], 'pos': [[4, 4], [4, 4]]}, {'patt': [1, 0], 'pos': [[5, 3], [5, 3]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 0], [5, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 4], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [5, 0], [5, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [5, 3], [5, 0]]}, {'patt': [0, 2, 1], 'pos': [[5, 0], [5, 0], [5, 0]]}, {'patt': [0, 2, 1], 'pos': [[5, 0], [5, 3], [5, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 4], [5, 4], [5, 4]]}, {'patt': [1, 0, 2], 'pos': [[1, 4], [5, 4], [5, 4]]}, {'patt': [1, 0, 2], 'pos': [[4, 4], [5, 3], [5, 4]]}, {'patt': [1, 0, 2], 'pos': [[4, 4], [5, 4], [5, 4]]}, {'patt': [1, 0, 2], 'pos': [[5, 4], [5, 3], [5, 4]]}, {'patt': [1, 0, 2], 'pos': [[5, 4], [5, 4], [5, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[4, 0], [4, 4], [5, 0], [5, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[4, 0], [5, 4], [5, 0], [5, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[5, 0], [5, 4], [5, 0], [5, 4]]}], 'requirements': [[{'patt': [0], 'pos': [[3, 2]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.factor', 'ignore_parent': True, 'partition': [[[0, 4], [1, 4], [4, 0], [4, 4], [5, 0], [5, 3], [5, 4]], [[2, 1]], [[3, 2]]], 'strategy_class': 'FactorStrategy', 'workable': True}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 2]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 2]]}, {'patt': [1, 0], 'pos': [[0, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 2], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 1], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 1], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 2], [2, 2], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [2, 1], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [2, 2], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [2, 1], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [2, 2], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 2], [2, 0], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [2, 2], [2, 0], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 2], [2, 0], [2, 2]]}], 'requirements': []}], 'class_module': 'tilings.strategies.fusion.fusion', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 2]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0], 'pos': [[2, 1]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 2]]}, {'patt': [1, 0], 'pos': [[0, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[0, 2], [2, 2]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[1, 2], [2, 2]]}, {'patt': [1, 0], 'pos': [[2, 2], [2, 2]]}, {'patt': [1, 0], 'pos': [[3, 1], [3, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 2], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [3, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [3, 1], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 1], [3, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 2], [3, 2], [3, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [3, 2], [3, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [3, 1], [3, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [3, 2], [3, 2]]}, {'patt': [1, 0, 2], 'pos': [[3, 2], [3, 1], [3, 2]]}, {'patt': [1, 0, 2], 'pos': [[3, 2], [3, 2], [3, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 2], [3, 0], [3, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [3, 2], [3, 0], [3, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [3, 2], [3, 0], [3, 2]]}], 'requirements': []}, 'rule_class': 'FusionRule', 'strategy': {'class_module': 'tilings.strategies.fusion.fusion', 'col_idx': 0, 'row_idx': None, 'strategy_class': 'FusionStrategy', 'tracked': True}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [1, 1], [1, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [1, 0], [1, 1]]}], 'requirements': []}], 'class_module': 'tilings.strategies.fusion.fusion', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 1], [1, 1]]}, {'patt': [1, 0], 'pos': [[1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [2, 1], [2, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [2, 1], [2, 1]]}, {'patt': [1, 0, 2], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 1], [2, 0], [2, 1]]}], 'requirements': []}, 'rule_class': 'FusionRule', 'strategy': {'class_module': 'tilings.strategies.fusion.fusion', 'col_idx': 0, 'row_idx': None, 'strategy_class': 'FusionStrategy', 'tracked': True}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}], 'requirements': []}, {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [1, 1], [1, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [1, 0], [1, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[1, 1]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [1, 1], [1, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [1, 0], [1, 1]]}], 'requirements': []}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_insertion', 'gps': [{'patt': [0], 'pos': [[1, 1]]}], 'ignore_parent': False, 'strategy_class': 'RequirementInsertionStrategy'}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [1, 1], [1, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [1, 0], [1, 1]]}], 'requirements': []}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [1, 1], [1, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [1, 0], [1, 1]]}], 'requirements': []}, 'rule_class': 'Rule', 'strategy': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}]}], 'class_module': 'tilings.strategies.assumption_insertion', 'strategy_class': 'AddAssumptionsStrategy', 'workable': False}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 1], [1, 1]]}, {'patt': [1, 0], 'pos': [[1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 1], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [2, 1], [2, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [2, 1], [2, 1]]}, {'patt': [1, 0, 2], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [2, 0], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [2, 1], [2, 0], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 1], [2, 0], [2, 1]]}], 'requirements': []}, {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 0]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 3]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[0, 3]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[2, 2]]}, {'patt': [0], 'pos': [[2, 3]]}, {'patt': [0], 'pos': [[3, 0]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 3]]}, {'patt': [0], 'pos': [[4, 2]]}, {'patt': [0], 'pos': [[4, 3]]}, {'patt': [0, 1], 'pos': [[3, 2], [3, 2]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 1], [2, 1]]}, {'patt': [1, 0], 'pos': [[1, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[2, 1], [2, 1]]}, {'patt': [1, 0], 'pos': [[3, 2], [3, 2]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 1], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [4, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 0], [4, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [4, 1], [4, 1]]}, {'patt': [1, 0, 2], 'pos': [[2, 1], [4, 1], [4, 1]]}, {'patt': [1, 0, 2], 'pos': [[4, 1], [4, 1], [4, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 1], [4, 0], [4, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [4, 1], [4, 0], [4, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[4, 0], [4, 1], [4, 0], [4, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[3, 2]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.factor', 'ignore_parent': True, 'partition': [[[0, 1], [2, 0], [2, 1], [4, 0], [4, 1]], [[1, 3]], [[3, 2]]], 'strategy_class': 'FactorStrategy', 'workable': True}}, {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0, 1], 'pos': [[0, 0], [0, 2]]}, {'patt': [0, 1], 'pos': [[1, 1], [1, 1]]}, {'patt': [1, 0], 'pos': [[1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 2], [0, 2], [0, 2]]}], 'requirements': [[{'patt': [0], 'pos': [[1, 1]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}], 'requirements': []}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_placement', 'direction': 0, 'gps': [{'patt': [0], 'pos': [[0, 0]]}], 'ignore_parent': False, 'include_empty': True, 'indices': [0], 'own_col': True, 'own_row': True, 'strategy_class': 'RequirementPlacementStrategy'}}, {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[2, 2]]}, {'patt': [0, 1], 'pos': [[2, 1], [2, 1]]}, {'patt': [1, 0], 'pos': [[2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[0, 2], [0, 2], [0, 2]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[2, 1]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.factor', 'ignore_parent': True, 'partition': [[[0, 2]], [[1, 0]], [[2, 1]]], 'strategy_class': 'FactorStrategy', 'workable': True}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 0]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}], 'requirements': []}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}], 'requirements': []}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.factor', 'ignore_parent': True, 'partition': [[[0, 1]], [[1, 0]]], 'strategy_class': 'FactorStrategy', 'workable': True}}, {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}], 'requirements': []}, {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 0]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 0]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': []}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_insertion', 'gps': [{'patt': [0], 'pos': [[0, 0]]}], 'ignore_parent': True, 'strategy_class': 'RequirementInsertionStrategy'}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 0]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 0]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': []}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[1, 1]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[1, 1], [1, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.factor', 'ignore_parent': True, 'partition': [[[0, 0]], [[1, 1]]], 'strategy_class': 'FactorStrategy', 'workable': True}}, {'class_module': 'comb_spec_searcher.strategies.rule', 'rule_class': 'EquivalencePathRule', 'rules': [{'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0], 'pos': [[2, 2]]}, {'patt': [0, 1], 'pos': [[1, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 1], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [2, 1], [2, 1]]}, {'patt': [1, 0, 2], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[0, 0], [0, 1], [2, 0], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[0, 0], [2, 1], [2, 0], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 1], [2, 0], [2, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[1, 2]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [0, 1], [0, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[0, 0], [0, 1], [0, 0], [0, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 1]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_placement', 'direction': 1, 'gps': [{'patt': [0], 'pos': [[0, 1]]}], 'ignore_parent': False, 'include_empty': False, 'indices': [0], 'own_col': True, 'own_row': True, 'strategy_class': 'RequirementPlacementStrategy'}}]}, {'class_module': 'comb_spec_searcher.strategies.rule', 'rule_class': 'EquivalencePathRule', 'rules': [{'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[1, 3]]}, {'patt': [0], 'pos': [[2, 1]]}, {'patt': [0], 'pos': [[2, 2]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0, 1], 'pos': [[0, 0], [0, 3]]}, {'patt': [0, 1], 'pos': [[0, 0], [2, 0]]}, {'patt': [0, 1], 'pos': [[0, 0], [3, 0]]}, {'patt': [0, 1], 'pos': [[1, 1], [1, 1]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [2, 3]]}, {'patt': [1, 0], 'pos': [[1, 1], [1, 1]]}, {'patt': [1, 0], 'pos': [[2, 3], [2, 3]]}, {'patt': [1, 0], 'pos': [[3, 2], [3, 2]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 3], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [3, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [3, 2], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 2], [3, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [3, 3], [3, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [3, 2], [3, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [3, 3], [3, 3]]}, {'patt': [1, 0, 2], 'pos': [[3, 3], [3, 2], [3, 3]]}, {'patt': [1, 0, 2], 'pos': [[3, 3], [3, 3], [3, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 3], [3, 0], [3, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [3, 3], [3, 0], [3, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [3, 3], [3, 0], [3, 3]]}], 'requirements': [[{'patt': [0], 'pos': [[1, 1]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 1], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [1, 1], [1, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[0, 0], [0, 1], [1, 0], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[0, 0], [1, 1], [1, 0], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [1, 0], [1, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_placement', 'direction': 1, 'gps': [{'patt': [0], 'pos': [[0, 0]]}], 'ignore_parent': False, 'include_empty': False, 'indices': [0], 'own_col': True, 'own_row': True, 'strategy_class': 'RequirementPlacementStrategy'}}, {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[0, 3]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[1, 3]]}, {'patt': [0], 'pos': [[1, 4]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[2, 1]]}, {'patt': [0], 'pos': [[2, 3]]}, {'patt': [0], 'pos': [[2, 4]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 2]]}, {'patt': [0], 'pos': [[3, 3]]}, {'patt': [0], 'pos': [[4, 1]]}, {'patt': [0], 'pos': [[4, 2]]}, {'patt': [0, 1], 'pos': [[2, 2], [2, 2]]}, {'patt': [1, 0], 'pos': [[0, 4], [0, 4]]}, {'patt': [1, 0], 'pos': [[0, 4], [3, 4]]}, {'patt': [1, 0], 'pos': [[2, 2], [2, 2]]}, {'patt': [1, 0], 'pos': [[3, 4], [3, 4]]}, {'patt': [1, 0], 'pos': [[4, 3], [4, 3]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 4], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [4, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [4, 3], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 3], [4, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 4], [4, 4], [4, 4]]}, {'patt': [1, 0, 2], 'pos': [[3, 4], [4, 3], [4, 4]]}, {'patt': [1, 0, 2], 'pos': [[3, 4], [4, 4], [4, 4]]}, {'patt': [1, 0, 2], 'pos': [[4, 4], [4, 3], [4, 4]]}, {'patt': [1, 0, 2], 'pos': [[4, 4], [4, 4], [4, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [3, 4], [4, 0], [4, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [4, 4], [4, 0], [4, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[4, 0], [4, 4], [4, 0], [4, 4]]}], 'requirements': [[{'patt': [0], 'pos': [[2, 2]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[1, 3]]}, {'patt': [0], 'pos': [[2, 1]]}, {'patt': [0], 'pos': [[2, 2]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0, 1], 'pos': [[0, 0], [0, 3]]}, {'patt': [0, 1], 'pos': [[0, 0], [2, 0]]}, {'patt': [0, 1], 'pos': [[0, 0], [3, 0]]}, {'patt': [0, 1], 'pos': [[1, 1], [1, 1]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [2, 3]]}, {'patt': [1, 0], 'pos': [[1, 1], [1, 1]]}, {'patt': [1, 0], 'pos': [[2, 3], [2, 3]]}, {'patt': [1, 0], 'pos': [[3, 2], [3, 2]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 3], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [3, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [3, 2], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 2], [3, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [3, 3], [3, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [3, 2], [3, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [3, 3], [3, 3]]}, {'patt': [1, 0, 2], 'pos': [[3, 3], [3, 2], [3, 3]]}, {'patt': [1, 0, 2], 'pos': [[3, 3], [3, 3], [3, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 3], [3, 0], [3, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [3, 3], [3, 0], [3, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [3, 3], [3, 0], [3, 3]]}], 'requirements': [[{'patt': [0], 'pos': [[1, 1]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.row_and_col_separation', 'ignore_parent': True, 'inferrable': True, 'possibly_empty': False, 'strategy_class': 'RowColumnSeparationStrategy', 'workable': True}}]}, {'class_module': 'comb_spec_searcher.strategies.rule', 'rule_class': 'EquivalencePathRule', 'rules': [{'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 3]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[2, 2]]}, {'patt': [0], 'pos': [[3, 0]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 3]]}, {'patt': [0], 'pos': [[4, 1]]}, {'patt': [0], 'pos': [[4, 2]]}, {'patt': [0, 1], 'pos': [[1, 0], [4, 0]]}, {'patt': [0, 1], 'pos': [[1, 3], [4, 3]]}, {'patt': [0, 1], 'pos': [[2, 0], [4, 0]]}, {'patt': [0, 1], 'pos': [[2, 3], [4, 3]]}, {'patt': [0, 1], 'pos': [[3, 2], [3, 2]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[1, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[2, 1], [2, 1]]}, {'patt': [1, 0], 'pos': [[3, 2], [3, 2]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 3], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 1], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 1], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 0], [4, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [4, 3], [4, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 3], [2, 1], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [2, 1], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[4, 3], [4, 3], [4, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 3], [2, 0], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [2, 3], [2, 0], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 3], [2, 0], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[4, 0], [4, 3], [4, 0], [4, 3]]}], 'requirements': [[{'patt': [0], 'pos': [[3, 2]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 2]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 2]]}, {'patt': [1, 0], 'pos': [[0, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 2], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 1], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 1], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 2], [2, 2], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [2, 1], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [2, 2], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [2, 1], [2, 2]]}, {'patt': [1, 0, 2], 'pos': [[2, 2], [2, 2], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 2], [2, 0], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [2, 2], [2, 0], [2, 2]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 2], [2, 0], [2, 2]]}], 'requirements': [[{'patt': [0], 'pos': [[2, 1]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_placement', 'direction': 1, 'gps': [{'patt': [0], 'pos': [[2, 1]]}], 'ignore_parent': False, 'include_empty': False, 'indices': [0], 'own_col': True, 'own_row': True, 'strategy_class': 'RequirementPlacementStrategy'}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 4]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[0, 3]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[1, 3]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[2, 3]]}, {'patt': [0], 'pos': [[3, 0]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 2]]}, {'patt': [0], 'pos': [[3, 4]]}, {'patt': [0], 'pos': [[4, 1]]}, {'patt': [0], 'pos': [[4, 2]]}, {'patt': [0], 'pos': [[4, 3]]}, {'patt': [0, 1], 'pos': [[1, 4], [4, 4]]}, {'patt': [0, 1], 'pos': [[2, 4], [4, 4]]}, {'patt': [0, 1], 'pos': [[3, 3], [3, 3]]}, {'patt': [1, 0], 'pos': [[0, 4], [0, 4]]}, {'patt': [1, 0], 'pos': [[0, 4], [1, 4]]}, {'patt': [1, 0], 'pos': [[1, 4], [1, 4]]}, {'patt': [1, 0], 'pos': [[2, 2], [2, 2]]}, {'patt': [1, 0], 'pos': [[3, 3], [3, 3]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 4], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 0], [4, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 4], [2, 4], [2, 4]]}, {'patt': [1, 0, 2], 'pos': [[0, 4], [4, 4], [4, 4]]}, {'patt': [1, 0, 2], 'pos': [[1, 4], [2, 2], [2, 4]]}, {'patt': [1, 0, 2], 'pos': [[1, 4], [2, 4], [2, 4]]}, {'patt': [1, 0, 2], 'pos': [[2, 4], [2, 2], [2, 4]]}, {'patt': [1, 0, 2], 'pos': [[2, 4], [2, 4], [2, 4]]}, {'patt': [1, 0, 2], 'pos': [[4, 4], [4, 4], [4, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [1, 4], [2, 1], [2, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [2, 4], [2, 1], [2, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 1], [2, 4], [2, 1], [2, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[4, 0], [4, 4], [4, 0], [4, 4]]}], 'requirements': [[{'patt': [0], 'pos': [[3, 3]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 3]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[2, 2]]}, {'patt': [0], 'pos': [[3, 0]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 3]]}, {'patt': [0], 'pos': [[4, 1]]}, {'patt': [0], 'pos': [[4, 2]]}, {'patt': [0, 1], 'pos': [[1, 0], [4, 0]]}, {'patt': [0, 1], 'pos': [[1, 3], [4, 3]]}, {'patt': [0, 1], 'pos': [[2, 0], [4, 0]]}, {'patt': [0, 1], 'pos': [[2, 3], [4, 3]]}, {'patt': [0, 1], 'pos': [[3, 2], [3, 2]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[1, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[2, 1], [2, 1]]}, {'patt': [1, 0], 'pos': [[3, 2], [3, 2]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 3], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 1], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 1], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 0], [4, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [4, 3], [4, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 3], [2, 1], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [2, 1], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[4, 3], [4, 3], [4, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 3], [2, 0], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [2, 3], [2, 0], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 3], [2, 0], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[4, 0], [4, 3], [4, 0], [4, 3]]}], 'requirements': [[{'patt': [0], 'pos': [[3, 2]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.row_and_col_separation', 'ignore_parent': True, 'inferrable': True, 'possibly_empty': False, 'strategy_class': 'RowColumnSeparationStrategy', 'workable': True}}]}, {'class_module': 'comb_spec_searcher.strategies.rule', 'rule_class': 'EquivalencePathRule', 'rules': [{'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 3]]}, {'patt': [0], 'pos': [[0, 5]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[0, 4]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[1, 3]]}, {'patt': [0], 'pos': [[1, 4]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[2, 3]]}, {'patt': [0], 'pos': [[2, 4]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 2]]}, {'patt': [0], 'pos': [[3, 4]]}, {'patt': [0], 'pos': [[3, 5]]}, {'patt': [0], 'pos': [[4, 0]]}, {'patt': [0], 'pos': [[4, 1]]}, {'patt': [0], 'pos': [[4, 2]]}, {'patt': [0], 'pos': [[4, 3]]}, {'patt': [0], 'pos': [[4, 5]]}, {'patt': [0], 'pos': [[5, 1]]}, {'patt': [0], 'pos': [[5, 2]]}, {'patt': [0], 'pos': [[5, 4]]}, {'patt': [0], 'pos': [[5, 5]]}, {'patt': [0, 1], 'pos': [[4, 4], [4, 4]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [3, 3]]}, {'patt': [1, 0], 'pos': [[0, 5], [0, 3]]}, {'patt': [1, 0], 'pos': [[0, 5], [0, 5]]}, {'patt': [1, 0], 'pos': [[0, 5], [1, 5]]}, {'patt': [1, 0], 'pos': [[1, 5], [1, 5]]}, {'patt': [1, 0], 'pos': [[2, 2], [2, 2]]}, {'patt': [1, 0], 'pos': [[3, 3], [3, 3]]}, {'patt': [1, 0], 'pos': [[4, 4], [4, 4]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 5], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [5, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 3], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [5, 0], [5, 0]]}, {'patt': [0, 2, 1], 'pos': [[5, 0], [5, 0], [5, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [5, 3], [5, 3]]}, {'patt': [1, 0, 2], 'pos': [[0, 5], [2, 5], [2, 5]]}, {'patt': [1, 0, 2], 'pos': [[1, 5], [2, 2], [2, 5]]}, {'patt': [1, 0, 2], 'pos': [[1, 5], [2, 5], [2, 5]]}, {'patt': [1, 0, 2], 'pos': [[2, 5], [2, 2], [2, 5]]}, {'patt': [1, 0, 2], 'pos': [[2, 5], [2, 5], [2, 5]]}, {'patt': [1, 0, 2], 'pos': [[3, 3], [5, 3], [5, 3]]}, {'patt': [1, 0, 2], 'pos': [[5, 3], [5, 3], [5, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [1, 5], [2, 1], [2, 5]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [2, 5], [2, 1], [2, 5]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 1], [2, 5], [2, 1], [2, 5]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [3, 3], [5, 0], [5, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [5, 3], [5, 0], [5, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[5, 0], [5, 3], [5, 0], [5, 3]]}], 'requirements': [[{'patt': [0], 'pos': [[4, 4]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 3]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 2]]}, {'patt': [0, 1], 'pos': [[1, 3], [3, 3]]}, {'patt': [0, 1], 'pos': [[2, 3], [3, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[1, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[2, 2], [2, 2]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 3], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [3, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [3, 3], [3, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 3], [2, 2], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [2, 2], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[2, 3], [2, 3], [2, 3]]}, {'patt': [1, 0, 2], 'pos': [[3, 3], [3, 3], [3, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [1, 3], [2, 1], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [2, 3], [2, 1], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 1], [2, 3], [2, 1], [2, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [3, 3], [3, 0], [3, 3]]}], 'requirements': [[{'patt': [0], 'pos': [[3, 3]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_placement', 'direction': 1, 'gps': [{'patt': [0], 'pos': [[3, 3]]}], 'ignore_parent': False, 'include_empty': False, 'indices': [0], 'own_col': True, 'own_row': True, 'strategy_class': 'RequirementPlacementStrategy'}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 3]]}, {'patt': [0], 'pos': [[1, 5]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[0, 4]]}, {'patt': [0], 'pos': [[0, 5]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[1, 3]]}, {'patt': [0], 'pos': [[1, 4]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[2, 2]]}, {'patt': [0], 'pos': [[2, 3]]}, {'patt': [0], 'pos': [[2, 4]]}, {'patt': [0], 'pos': [[3, 0]]}, {'patt': [0], 'pos': [[3, 3]]}, {'patt': [0], 'pos': [[3, 4]]}, {'patt': [0], 'pos': [[4, 1]]}, {'patt': [0], 'pos': [[4, 2]]}, {'patt': [0], 'pos': [[4, 4]]}, {'patt': [0], 'pos': [[4, 5]]}, {'patt': [0], 'pos': [[5, 0]]}, {'patt': [0], 'pos': [[5, 1]]}, {'patt': [0], 'pos': [[5, 2]]}, {'patt': [0], 'pos': [[5, 3]]}, {'patt': [0], 'pos': [[5, 5]]}, {'patt': [0], 'pos': [[6, 1]]}, {'patt': [0], 'pos': [[6, 2]]}, {'patt': [0], 'pos': [[6, 4]]}, {'patt': [0], 'pos': [[6, 5]]}, {'patt': [0, 1], 'pos': [[5, 4], [5, 4]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [4, 3]]}, {'patt': [1, 0], 'pos': [[1, 5], [1, 5]]}, {'patt': [1, 0], 'pos': [[1, 5], [2, 5]]}, {'patt': [1, 0], 'pos': [[2, 5], [2, 5]]}, {'patt': [1, 0], 'pos': [[3, 2], [3, 2]]}, {'patt': [1, 0], 'pos': [[4, 3], [4, 3]]}, {'patt': [1, 0], 'pos': [[5, 4], [5, 4]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 1], [3, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 5], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [3, 1], [3, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [3, 2], [3, 1]]}, {'patt': [0, 2, 1], 'pos': [[3, 1], [3, 1], [3, 1]]}, {'patt': [0, 2, 1], 'pos': [[3, 1], [3, 2], [3, 1]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 0], [6, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 3], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [6, 0], [6, 0]]}, {'patt': [0, 2, 1], 'pos': [[6, 0], [6, 0], [6, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [6, 3], [6, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 5], [3, 5], [3, 5]]}, {'patt': [1, 0, 2], 'pos': [[2, 5], [3, 2], [3, 5]]}, {'patt': [1, 0, 2], 'pos': [[2, 5], [3, 5], [3, 5]]}, {'patt': [1, 0, 2], 'pos': [[3, 5], [3, 2], [3, 5]]}, {'patt': [1, 0, 2], 'pos': [[3, 5], [3, 5], [3, 5]]}, {'patt': [1, 0, 2], 'pos': [[4, 3], [6, 3], [6, 3]]}, {'patt': [1, 0, 2], 'pos': [[6, 3], [6, 3], [6, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 1], [2, 5], [3, 1], [3, 5]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 1], [3, 5], [3, 1], [3, 5]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 1], [3, 5], [3, 1], [3, 5]]}, {'patt': [0, 2, 1, 3], 'pos': [[4, 0], [4, 3], [6, 0], [6, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[4, 0], [6, 3], [6, 0], [6, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[6, 0], [6, 3], [6, 0], [6, 3]]}], 'requirements': [[{'patt': [0], 'pos': [[5, 4]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 3]]}, {'patt': [0], 'pos': [[0, 5]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[0, 4]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[1, 3]]}, {'patt': [0], 'pos': [[1, 4]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[2, 3]]}, {'patt': [0], 'pos': [[2, 4]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 2]]}, {'patt': [0], 'pos': [[3, 4]]}, {'patt': [0], 'pos': [[3, 5]]}, {'patt': [0], 'pos': [[4, 0]]}, {'patt': [0], 'pos': [[4, 1]]}, {'patt': [0], 'pos': [[4, 2]]}, {'patt': [0], 'pos': [[4, 3]]}, {'patt': [0], 'pos': [[4, 5]]}, {'patt': [0], 'pos': [[5, 1]]}, {'patt': [0], 'pos': [[5, 2]]}, {'patt': [0], 'pos': [[5, 4]]}, {'patt': [0], 'pos': [[5, 5]]}, {'patt': [0, 1], 'pos': [[4, 4], [4, 4]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [3, 3]]}, {'patt': [1, 0], 'pos': [[0, 5], [0, 3]]}, {'patt': [1, 0], 'pos': [[0, 5], [0, 5]]}, {'patt': [1, 0], 'pos': [[0, 5], [1, 5]]}, {'patt': [1, 0], 'pos': [[1, 5], [1, 5]]}, {'patt': [1, 0], 'pos': [[2, 2], [2, 2]]}, {'patt': [1, 0], 'pos': [[3, 3], [3, 3]]}, {'patt': [1, 0], 'pos': [[4, 4], [4, 4]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [1, 5], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 2], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [5, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 3], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [5, 0], [5, 0]]}, {'patt': [0, 2, 1], 'pos': [[5, 0], [5, 0], [5, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [5, 3], [5, 3]]}, {'patt': [1, 0, 2], 'pos': [[0, 5], [2, 5], [2, 5]]}, {'patt': [1, 0, 2], 'pos': [[1, 5], [2, 2], [2, 5]]}, {'patt': [1, 0, 2], 'pos': [[1, 5], [2, 5], [2, 5]]}, {'patt': [1, 0, 2], 'pos': [[2, 5], [2, 2], [2, 5]]}, {'patt': [1, 0, 2], 'pos': [[2, 5], [2, 5], [2, 5]]}, {'patt': [1, 0, 2], 'pos': [[3, 3], [5, 3], [5, 3]]}, {'patt': [1, 0, 2], 'pos': [[5, 3], [5, 3], [5, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [1, 5], [2, 1], [2, 5]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 1], [2, 5], [2, 1], [2, 5]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 1], [2, 5], [2, 1], [2, 5]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [3, 3], [5, 0], [5, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [5, 3], [5, 0], [5, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[5, 0], [5, 3], [5, 0], [5, 3]]}], 'requirements': [[{'patt': [0], 'pos': [[4, 4]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.row_and_col_separation', 'ignore_parent': True, 'inferrable': True, 'possibly_empty': False, 'strategy_class': 'RowColumnSeparationStrategy', 'workable': True}}]}, {'class_module': 'comb_spec_searcher.strategies.rule', 'rule_class': 'EquivalencePathRule', 'rules': [{'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 3]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[2, 2]]}, {'patt': [0], 'pos': [[2, 3]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 2]]}, {'patt': [0], 'pos': [[4, 1]]}, {'patt': [0, 1], 'pos': [[1, 0], [1, 3]]}, {'patt': [0, 1], 'pos': [[1, 0], [3, 0]]}, {'patt': [0, 1], 'pos': [[1, 0], [4, 0]]}, {'patt': [0, 1], 'pos': [[2, 1], [2, 1]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [3, 3]]}, {'patt': [1, 0], 'pos': [[1, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[1, 3], [3, 3]]}, {'patt': [1, 0], 'pos': [[2, 1], [2, 1]]}, {'patt': [1, 0], 'pos': [[3, 3], [3, 3]]}, {'patt': [1, 0], 'pos': [[4, 2], [4, 2]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 3], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [4, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [4, 2], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 2], [4, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [4, 3], [4, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 3], [4, 3], [4, 3]]}, {'patt': [1, 0, 2], 'pos': [[3, 3], [4, 2], [4, 3]]}, {'patt': [1, 0, 2], 'pos': [[3, 3], [4, 3], [4, 3]]}, {'patt': [1, 0, 2], 'pos': [[4, 3], [4, 2], [4, 3]]}, {'patt': [1, 0, 2], 'pos': [[4, 3], [4, 3], [4, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [3, 3], [4, 0], [4, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [4, 3], [4, 0], [4, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[4, 0], [4, 3], [4, 0], [4, 3]]}], 'requirements': [[{'patt': [0], 'pos': [[2, 1]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 1], [1, 1]]}, {'patt': [1, 0], 'pos': [[1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 1], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [2, 1], [2, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [2, 1], [2, 1]]}, {'patt': [1, 0, 2], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [2, 0], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [2, 1], [2, 0], [2, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 1], [2, 0], [2, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[1, 0]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_placement', 'direction': 1, 'gps': [{'patt': [0], 'pos': [[1, 0]]}], 'ignore_parent': False, 'include_empty': False, 'indices': [0], 'own_col': True, 'own_row': True, 'strategy_class': 'RequirementPlacementStrategy'}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 4]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[0, 3]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[1, 3]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[2, 2]]}, {'patt': [0], 'pos': [[2, 3]]}, {'patt': [0], 'pos': [[2, 4]]}, {'patt': [0], 'pos': [[3, 0]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 3]]}, {'patt': [0], 'pos': [[3, 4]]}, {'patt': [0], 'pos': [[4, 1]]}, {'patt': [0], 'pos': [[4, 2]]}, {'patt': [0], 'pos': [[4, 3]]}, {'patt': [0], 'pos': [[5, 1]]}, {'patt': [0], 'pos': [[5, 2]]}, {'patt': [0, 1], 'pos': [[3, 2], [3, 2]]}, {'patt': [1, 0], 'pos': [[0, 4], [0, 4]]}, {'patt': [1, 0], 'pos': [[0, 4], [1, 4]]}, {'patt': [1, 0], 'pos': [[0, 4], [4, 4]]}, {'patt': [1, 0], 'pos': [[1, 4], [1, 4]]}, {'patt': [1, 0], 'pos': [[1, 4], [4, 4]]}, {'patt': [1, 0], 'pos': [[3, 2], [3, 2]]}, {'patt': [1, 0], 'pos': [[4, 4], [4, 4]]}, {'patt': [1, 0], 'pos': [[5, 3], [5, 3]]}, {'patt': [0, 2, 1], 'pos': [[2, 1], [2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 0], [5, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 4], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [5, 0], [5, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [5, 3], [5, 0]]}, {'patt': [0, 2, 1], 'pos': [[5, 0], [5, 0], [5, 0]]}, {'patt': [0, 2, 1], 'pos': [[5, 0], [5, 3], [5, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 4], [5, 4], [5, 4]]}, {'patt': [1, 0, 2], 'pos': [[1, 4], [5, 4], [5, 4]]}, {'patt': [1, 0, 2], 'pos': [[4, 4], [5, 3], [5, 4]]}, {'patt': [1, 0, 2], 'pos': [[4, 4], [5, 4], [5, 4]]}, {'patt': [1, 0, 2], 'pos': [[5, 4], [5, 3], [5, 4]]}, {'patt': [1, 0, 2], 'pos': [[5, 4], [5, 4], [5, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[4, 0], [4, 4], [5, 0], [5, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[4, 0], [5, 4], [5, 0], [5, 4]]}, {'patt': [0, 2, 1, 3], 'pos': [[5, 0], [5, 4], [5, 0], [5, 4]]}], 'requirements': [[{'patt': [0], 'pos': [[3, 2]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 3]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[2, 2]]}, {'patt': [0], 'pos': [[2, 3]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 2]]}, {'patt': [0], 'pos': [[4, 1]]}, {'patt': [0, 1], 'pos': [[1, 0], [1, 3]]}, {'patt': [0, 1], 'pos': [[1, 0], [3, 0]]}, {'patt': [0, 1], 'pos': [[1, 0], [4, 0]]}, {'patt': [0, 1], 'pos': [[2, 1], [2, 1]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[0, 3], [3, 3]]}, {'patt': [1, 0], 'pos': [[1, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[1, 3], [3, 3]]}, {'patt': [1, 0], 'pos': [[2, 1], [2, 1]]}, {'patt': [1, 0], 'pos': [[3, 3], [3, 3]]}, {'patt': [1, 0], 'pos': [[4, 2], [4, 2]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 3], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [4, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [4, 2], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 2], [4, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 3], [4, 3], [4, 3]]}, {'patt': [1, 0, 2], 'pos': [[1, 3], [4, 3], [4, 3]]}, {'patt': [1, 0, 2], 'pos': [[3, 3], [4, 2], [4, 3]]}, {'patt': [1, 0, 2], 'pos': [[3, 3], [4, 3], [4, 3]]}, {'patt': [1, 0, 2], 'pos': [[4, 3], [4, 2], [4, 3]]}, {'patt': [1, 0, 2], 'pos': [[4, 3], [4, 3], [4, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [3, 3], [4, 0], [4, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [4, 3], [4, 0], [4, 3]]}, {'patt': [0, 2, 1, 3], 'pos': [[4, 0], [4, 3], [4, 0], [4, 3]]}], 'requirements': [[{'patt': [0], 'pos': [[2, 1]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.row_and_col_separation', 'ignore_parent': True, 'inferrable': True, 'possibly_empty': False, 'strategy_class': 'RowColumnSeparationStrategy', 'workable': True}}]}, {'class_module': 'comb_spec_searcher.strategies.rule', 'rule_class': 'EquivalencePathRule', 'rules': [{'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 3]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[1, 3]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[2, 1]]}, {'patt': [0], 'pos': [[2, 3]]}, {'patt': [0], 'pos': [[3, 2]]}, {'patt': [0], 'pos': [[3, 3]]}, {'patt': [0, 1], 'pos': [[2, 2], [2, 2]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 1], [1, 1]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 3]]}, {'patt': [1, 0], 'pos': [[1, 1], [1, 1]]}, {'patt': [1, 0], 'pos': [[2, 2], [2, 2]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 1], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [3, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [3, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [3, 1], [3, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [3, 1], [3, 1]]}, {'patt': [1, 0, 2], 'pos': [[3, 1], [3, 1], [3, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [3, 0], [3, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [3, 1], [3, 0], [3, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [3, 1], [3, 0], [3, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[2, 2]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [1, 1], [1, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [1, 1], [1, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [1, 0], [1, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[1, 1]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_placement', 'direction': 1, 'gps': [{'patt': [0], 'pos': [[1, 1]]}], 'ignore_parent': False, 'include_empty': False, 'indices': [0], 'own_col': True, 'own_row': True, 'strategy_class': 'RequirementPlacementStrategy'}}, {'children': [{'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 3]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[0, 3]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[2, 2]]}, {'patt': [0], 'pos': [[2, 3]]}, {'patt': [0], 'pos': [[3, 0]]}, {'patt': [0], 'pos': [[3, 1]]}, {'patt': [0], 'pos': [[3, 3]]}, {'patt': [0], 'pos': [[4, 2]]}, {'patt': [0], 'pos': [[4, 3]]}, {'patt': [0, 1], 'pos': [[3, 2], [3, 2]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 1], [2, 1]]}, {'patt': [1, 0], 'pos': [[1, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[2, 1], [2, 1]]}, {'patt': [1, 0], 'pos': [[3, 2], [3, 2]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [2, 1], [2, 0]]}, {'patt': [0, 2, 1], 'pos': [[2, 0], [4, 0], [4, 0]]}, {'patt': [0, 2, 1], 'pos': [[4, 0], [4, 0], [4, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [4, 1], [4, 1]]}, {'patt': [1, 0, 2], 'pos': [[2, 1], [4, 1], [4, 1]]}, {'patt': [1, 0, 2], 'pos': [[4, 1], [4, 1], [4, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [2, 1], [4, 0], [4, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[2, 0], [4, 1], [4, 0], [4, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[4, 0], [4, 1], [4, 0], [4, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[3, 2]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 3]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[1, 3]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[2, 1]]}, {'patt': [0], 'pos': [[2, 3]]}, {'patt': [0], 'pos': [[3, 2]]}, {'patt': [0], 'pos': [[3, 3]]}, {'patt': [0, 1], 'pos': [[2, 2], [2, 2]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 1], [1, 1]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 3], [0, 3]]}, {'patt': [1, 0], 'pos': [[1, 1], [1, 1]]}, {'patt': [1, 0], 'pos': [[2, 2], [2, 2]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 1], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [3, 0], [3, 0]]}, {'patt': [0, 2, 1], 'pos': [[3, 0], [3, 0], [3, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [3, 1], [3, 1]]}, {'patt': [1, 0, 2], 'pos': [[1, 1], [3, 1], [3, 1]]}, {'patt': [1, 0, 2], 'pos': [[3, 1], [3, 1], [3, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [1, 1], [3, 0], [3, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[1, 0], [3, 1], [3, 0], [3, 1]]}, {'patt': [0, 2, 1, 3], 'pos': [[3, 0], [3, 1], [3, 0], [3, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[2, 2]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.row_and_col_separation', 'ignore_parent': True, 'inferrable': True, 'possibly_empty': False, 'strategy_class': 'RowColumnSeparationStrategy', 'workable': True}}]}, {'class_module': 'comb_spec_searcher.strategies.rule', 'rule_class': 'EquivalencePathRule', 'rules': [{'class_module': 'comb_spec_searcher.strategies.rule', 'original_rule': {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0], 'pos': [[2, 0]]}, {'patt': [0], 'pos': [[2, 2]]}, {'patt': [0, 1], 'pos': [[2, 1], [2, 1]]}, {'patt': [1, 0], 'pos': [[2, 1], [2, 1]]}, {'patt': [0, 2, 1], 'pos': [[0, 2], [0, 2], [0, 2]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[2, 1]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0], 'pos': [[1, 2]]}, {'patt': [0, 1], 'pos': [[0, 0], [0, 2]]}, {'patt': [0, 1], 'pos': [[1, 1], [1, 1]]}, {'patt': [1, 0], 'pos': [[1, 1], [1, 1]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 2], [0, 2], [0, 2]]}], 'requirements': [[{'patt': [0], 'pos': [[1, 1]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.row_and_col_separation', 'ignore_parent': True, 'inferrable': True, 'possibly_empty': False, 'strategy_class': 'RowColumnSeparationStrategy', 'workable': True}}, 'rule_class': 'EquivalenceRule'}]}, {'class_module': 'comb_spec_searcher.strategies.rule', 'rule_class': 'EquivalencePathRule', 'rules': [{'class_module': 'comb_spec_searcher.strategies.rule', 'original_rule': {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [], 'pos': []}], 'requirements': []}, {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[1, 1]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[1, 1], [1, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 0]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_placement', 'direction': 2, 'gps': [{'patt': [0], 'pos': [[0, 0]]}], 'ignore_parent': False, 'include_empty': True, 'indices': [0], 'own_col': True, 'own_row': True, 'strategy_class': 'RequirementPlacementStrategy'}}, 'rule_class': 'EquivalenceRule'}]}, {'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, 'rule_class': 'VerificationRule', 'strategy': {'class_module': 'tilings.strategies.verification', 'strategy_class': 'BasicVerificationStrategy'}}, {'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}], 'requirements': []}, 'rule_class': 'VerificationRule', 'strategy': {'class_module': 'tilings.strategies.verification', 'strategy_class': 'BasicVerificationStrategy'}}, {'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [{'assumption': 'TrackingAssumption', 'class_module': 'tilings.assumptions', 'gps': [{'patt': [0], 'pos': [[0, 0]]}]}], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, 'rule_class': 'VerificationRule', 'strategy': {'class_module': 'tilings.strategies.verification', 'strategy_class': 'BasicVerificationStrategy'}}]}