0213_0231_0321_3012

Counting sequence:
1, 1, 2, 6, 20, 64, 198, 598, 1774, 5190, 15016, 43052, 122502, 346346, 973850, 2725254, 7594748, 21087448, 58360134, 161042110, 443221126, 1216936902, 3334081552, 9116468036, 24882311430, 67800272594, 184460936498, 501140020998, 1359689148644, 3684560007280, 9973158598086, 26965786379302, 72837644591902, 196556608960326, 529947122928760, 1427620120181084, 3842804378040198, 10336131074861498, 27781711888884554, 74622035657890950, 200307365240744396, 537355939466111752, 1440705121206943302, 3860537548901005966, 10339297231685585590, 27676745139977995974, 74050721463525626848, 198035378082608312948, 529375506005050372614, 1414491460762786558370, 3777979745553289502306, 10086690062876778794502, 26919936434746157219252, 71819414929389327031456, 191539349425835616041670, 510655460877331263425014, 1360996474721385609061198, 3626185460303294125910598, 9658544955722675020298824, 25718553058450797127718540, 68463440124853736689426566, 182201641380196407727537802, 484764780302769450527547002, 1289432714325127841171207046, 3428930110776627800900025500, 9116207847519780847954619704, 24230847372223776874327132998, 64390945860959710882690927198, 171074671045638776965374792934, 454416498189098722480656736710, 1206792435426100276686636128176, 3204230212889388663742150495652, 8506088805738182496818471191302, 22576338607013322617386331727986, 59909643620870159945081074109330, 158950439669614117196405472300294, 421648501024454696990040537775748, 1118317692899180529832883144279248, 2965565640522896055340204709834694, 7862839787723504568623351426290630, 20844074336959799285005115077461886, 55248284507038441257382169890303302, 146416362421490986765636657337648152, 387968651185558357904023414271033276, 1027877553182220141261425159176427910, 2722860046074086389960731172212787034, 7211902736131955946547214110624566698, 19099252577884547879379769310194276998, 50573868093118070062762222518395722604, 133899986572696042992718426189771901800, 354470983143052818595657511186819557446, 938270002539484311151235944833606483502, 2483265252006383050248731380566859457302, 6571547396389591747410019531162630868166, 17388515638361189980035830158555150522240, 46005393979380444649045918447109513843924, 121704710980640745548092764744959353070598, 321928478544437130281856446971719738405698, 851462898717496058576357950159867479198914, 2251787000220631946997237454292934357310470, 5954496275717317073786533191084422950038356

Generating function in Maple syntax:
-(x^5-x^4+x^3-7*x^2+5*x-1)/(x^2-3*x+1)^2

Generating function in latex syntax:
-\frac{x^{5}-x^{4}+x^{3}-7 x^{2}+5 x -1}{\left(x^{2}-3 x +1\right)^{2}}

Generating function in sympy syntax:
(-x**5 + x**4 - x**3 + 7*x**2 - 5*x + 1)/(x**2 - 3*x + 1)**2

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

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

Explicit closed form in Maple syntax:
piecewise(Or(n = 0,n = 1),1,1/25*((-10*n+33)*5^(1/2)-20*n+75)*(3/2+1/2*5^(1/2))^(-n)+2/5*((n-33/10)*5^(1/2)-2*n+15/2)*(3/2-1/2*5^(1/2))^(-n))

Explicit closed form in latex syntax:
\left\{\begin{array}{cc}1 & n =0\text{ or } n =1 \\ \frac{\left(\left(-10 n +33\right) \sqrt{5}-20 n +75\right) \left(\frac{3}{2}+\frac{\sqrt{5}}{2}\right)^{-n}}{25}+\\\frac{2 \left(\left(n -\frac{33}{10}\right) \sqrt{5}-2 n +\frac{15}{2}\right) \left(\frac{3}{2}-\frac{\sqrt{5}}{2}\right)^{-n}}{5} & \mathit{\text{otherwise}} \end{array}\right.

Recurrence in maple format:
a(0) = 1
a(1) = 1
a(2) = 2
a(3) = 6
a(4) = 20
a(5) = 64
a(n+4) = -a(n)+6*a(n+1)-11*a(n+2)+6*a(n+3), n >= 6

Recurrence in latex format:
a \! \left(0\right) = 1
a \! \left(1\right) = 1
a \! \left(2\right) = 2
a \! \left(3\right) = 6
a \! \left(4\right) = 20
a \! \left(5\right) = 64
a \! \left(n +4\right) = -a \! \left(n \right)+6 a \! \left(n +1\right)-11 a \! \left(n +2\right)+6 a \! \left(n +3\right), \quad n \geq 6

Specification 1
Strategy pack name: point_placements
Tree: http://permpal.com/tree/15694/
System of equations in Maple syntax:
F[0,x] = F[1,x]+F[2,x]
F[1,x] = 1
F[2,x] = F[3,x]
F[3,x] = F[4,x]*F[5,x]
F[4,x] = x
F[5,x] = F[13,x]+F[6,x]
F[6,x] = F[1,x]+F[7,x]
F[7,x] = F[8,x]
F[8,x] = F[4,x]*F[9,x]
F[9,x] = F[10,x]+F[6,x]
F[10,x] = F[11,x]
F[11,x] = F[12,x]*F[4,x]
F[12,x] = F[1,x]+F[4,x]
F[13,x] = F[14,x]+F[53,x]
F[14,x] = F[15,x]
F[15,x] = F[16,x]*F[4,x]
F[16,x] = F[17,x]+F[20,x]
F[17,x] = F[1,x]+F[18,x]
F[18,x] = F[19,x]
F[19,x] = F[12,x]*F[4,x]
F[20,x] = F[14,x]+F[21,x]
F[21,x] = F[22,x]+F[23,x]+F[51,x]
F[22,x] = 0
F[23,x] = F[24,x]*F[4,x]
F[24,x] = F[25,x]+F[29,x]
F[25,x] = F[18,x]+F[26,x]
F[26,x] = F[27,x]
F[27,x] = F[28,x]*F[4,x]
F[28,x] = F[4,x]
F[29,x] = F[21,x]+F[30,x]
F[30,x] = 2*F[22,x]+F[31,x]+F[35,x]
F[31,x] = F[32,x]*F[4,x]
F[32,x] = F[33,x]+F[34,x]
F[33,x] = F[26,x]
F[34,x] = F[30,x]
F[35,x] = F[36,x]*F[4,x]
F[36,x] = F[37,x]
F[37,x] = F[22,x]+F[38,x]+F[50,x]
F[38,x] = F[39,x]*F[4,x]
F[39,x] = F[40,x]+F[43,x]
F[40,x] = F[4,x]+F[41,x]
F[41,x] = F[42,x]
F[42,x] = x^2
F[43,x] = F[37,x]+F[44,x]
F[44,x] = 2*F[22,x]+F[45,x]+F[49,x]
F[45,x] = F[4,x]*F[46,x]
F[46,x] = F[47,x]+F[48,x]
F[47,x] = F[41,x]
F[48,x] = F[44,x]
F[49,x] = F[37,x]*F[4,x]
F[50,x] = F[14,x]*F[4,x]
F[51,x] = F[4,x]*F[52,x]
F[52,x] = F[14,x]+F[37,x]
F[53,x] = F[22,x]+F[54,x]+F[78,x]
F[54,x] = F[4,x]*F[55,x]
F[55,x] = F[56,x]+F[65,x]
F[56,x] = F[57,x]+F[7,x]
F[57,x] = F[22,x]+F[58,x]+F[60,x]
F[58,x] = F[4,x]*F[59,x]
F[59,x] = F[7,x]
F[60,x] = F[4,x]*F[61,x]
F[61,x] = F[62,x]+F[63,x]
F[62,x] = F[4,x]
F[63,x] = F[64,x]
F[64,x] = x^2
F[65,x] = F[53,x]+F[66,x]
F[66,x] = F[22,x]+F[67,x]+F[71,x]+F[73,x]
F[67,x] = F[4,x]*F[68,x]
F[68,x] = F[69,x]+F[70,x]
F[69,x] = F[57,x]
F[70,x] = F[66,x]
F[71,x] = F[4,x]*F[72,x]
F[72,x] = F[53,x]
F[73,x] = F[4,x]*F[74,x]
F[74,x] = F[75,x]+F[76,x]
F[75,x] = F[37,x]
F[76,x] = F[77,x]
F[77,x] = F[37,x]*F[4,x]
F[78,x] = F[4,x]*F[79,x]
F[79,x] = F[13,x]+F[80,x]
F[80,x] = F[81,x]
F[81,x] = F[22,x]+F[38,x]+F[82,x]
F[82,x] = F[4,x]*F[52,x]
System of equations in latex syntax:
F_{0}\! \left(x \right) = F_{1}\! \left(x \right)+F_{2}\! \left(x \right)
F_{1}\! \left(x \right) = 1
F_{2}\! \left(x \right) = F_{3}\! \left(x \right)
F_{3}\! \left(x \right) = F_{4}\! \left(x \right) F_{5}\! \left(x \right)
F_{4}\! \left(x \right) = x
F_{5}\! \left(x \right) = F_{13}\! \left(x \right)+F_{6}\! \left(x \right)
F_{6}\! \left(x \right) = F_{1}\! \left(x \right)+F_{7}\! \left(x \right)
F_{7}\! \left(x \right) = F_{8}\! \left(x \right)
F_{8}\! \left(x \right) = F_{4}\! \left(x \right) F_{9}\! \left(x \right)
F_{9}\! \left(x \right) = F_{10}\! \left(x \right)+F_{6}\! \left(x \right)
F_{10}\! \left(x \right) = F_{11}\! \left(x \right)
F_{11}\! \left(x \right) = F_{12}\! \left(x \right) F_{4}\! \left(x \right)
F_{12}\! \left(x \right) = F_{1}\! \left(x \right)+F_{4}\! \left(x \right)
F_{13}\! \left(x \right) = F_{14}\! \left(x \right)+F_{53}\! \left(x \right)
F_{14}\! \left(x \right) = F_{15}\! \left(x \right)
F_{15}\! \left(x \right) = F_{16}\! \left(x \right) F_{4}\! \left(x \right)
F_{16}\! \left(x \right) = F_{17}\! \left(x \right)+F_{20}\! \left(x \right)
F_{17}\! \left(x \right) = F_{1}\! \left(x \right)+F_{18}\! \left(x \right)
F_{18}\! \left(x \right) = F_{19}\! \left(x \right)
F_{19}\! \left(x \right) = F_{12}\! \left(x \right) F_{4}\! \left(x \right)
F_{20}\! \left(x \right) = F_{14}\! \left(x \right)+F_{21}\! \left(x \right)
F_{21}\! \left(x \right) = F_{22}\! \left(x \right)+F_{23}\! \left(x \right)+F_{51}\! \left(x \right)
F_{22}\! \left(x \right) = 0
F_{23}\! \left(x \right) = F_{24}\! \left(x \right) F_{4}\! \left(x \right)
F_{24}\! \left(x \right) = F_{25}\! \left(x \right)+F_{29}\! \left(x \right)
F_{25}\! \left(x \right) = F_{18}\! \left(x \right)+F_{26}\! \left(x \right)
F_{26}\! \left(x \right) = F_{27}\! \left(x \right)
F_{27}\! \left(x \right) = F_{28}\! \left(x \right) F_{4}\! \left(x \right)
F_{28}\! \left(x \right) = F_{4}\! \left(x \right)
F_{29}\! \left(x \right) = F_{21}\! \left(x \right)+F_{30}\! \left(x \right)
F_{30}\! \left(x \right) = 2 F_{22}\! \left(x \right)+F_{31}\! \left(x \right)+F_{35}\! \left(x \right)
F_{31}\! \left(x \right) = F_{32}\! \left(x \right) F_{4}\! \left(x \right)
F_{32}\! \left(x \right) = F_{33}\! \left(x \right)+F_{34}\! \left(x \right)
F_{33}\! \left(x \right) = F_{26}\! \left(x \right)
F_{34}\! \left(x \right) = F_{30}\! \left(x \right)
F_{35}\! \left(x \right) = F_{36}\! \left(x \right) F_{4}\! \left(x \right)
F_{36}\! \left(x \right) = F_{37}\! \left(x \right)
F_{37}\! \left(x \right) = F_{22}\! \left(x \right)+F_{38}\! \left(x \right)+F_{50}\! \left(x \right)
F_{38}\! \left(x \right) = F_{39}\! \left(x \right) F_{4}\! \left(x \right)
F_{39}\! \left(x \right) = F_{40}\! \left(x \right)+F_{43}\! \left(x \right)
F_{40}\! \left(x \right) = F_{4}\! \left(x \right)+F_{41}\! \left(x \right)
F_{41}\! \left(x \right) = F_{42}\! \left(x \right)
F_{42}\! \left(x \right) = x^{2}
F_{43}\! \left(x \right) = F_{37}\! \left(x \right)+F_{44}\! \left(x \right)
F_{44}\! \left(x \right) = 2 F_{22}\! \left(x \right)+F_{45}\! \left(x \right)+F_{49}\! \left(x \right)
F_{45}\! \left(x \right) = F_{4}\! \left(x \right) F_{46}\! \left(x \right)
F_{46}\! \left(x \right) = F_{47}\! \left(x \right)+F_{48}\! \left(x \right)
F_{47}\! \left(x \right) = F_{41}\! \left(x \right)
F_{48}\! \left(x \right) = F_{44}\! \left(x \right)
F_{49}\! \left(x \right) = F_{37}\! \left(x \right) F_{4}\! \left(x \right)
F_{50}\! \left(x \right) = F_{14}\! \left(x \right) F_{4}\! \left(x \right)
F_{51}\! \left(x \right) = F_{4}\! \left(x \right) F_{52}\! \left(x \right)
F_{52}\! \left(x \right) = F_{14}\! \left(x \right)+F_{37}\! \left(x \right)
F_{53}\! \left(x \right) = F_{22}\! \left(x \right)+F_{54}\! \left(x \right)+F_{78}\! \left(x \right)
F_{54}\! \left(x \right) = F_{4}\! \left(x \right) F_{55}\! \left(x \right)
F_{55}\! \left(x \right) = F_{56}\! \left(x \right)+F_{65}\! \left(x \right)
F_{56}\! \left(x \right) = F_{57}\! \left(x \right)+F_{7}\! \left(x \right)
F_{57}\! \left(x \right) = F_{22}\! \left(x \right)+F_{58}\! \left(x \right)+F_{60}\! \left(x \right)
F_{58}\! \left(x \right) = F_{4}\! \left(x \right) F_{59}\! \left(x \right)
F_{59}\! \left(x \right) = F_{7}\! \left(x \right)
F_{60}\! \left(x \right) = F_{4}\! \left(x \right) F_{61}\! \left(x \right)
F_{61}\! \left(x \right) = F_{62}\! \left(x \right)+F_{63}\! \left(x \right)
F_{62}\! \left(x \right) = F_{4}\! \left(x \right)
F_{63}\! \left(x \right) = F_{64}\! \left(x \right)
F_{64}\! \left(x \right) = x^{2}
F_{65}\! \left(x \right) = F_{53}\! \left(x \right)+F_{66}\! \left(x \right)
F_{66}\! \left(x \right) = F_{22}\! \left(x \right)+F_{67}\! \left(x \right)+F_{71}\! \left(x \right)+F_{73}\! \left(x \right)
F_{67}\! \left(x \right) = F_{4}\! \left(x \right) F_{68}\! \left(x \right)
F_{68}\! \left(x \right) = F_{69}\! \left(x \right)+F_{70}\! \left(x \right)
F_{69}\! \left(x \right) = F_{57}\! \left(x \right)
F_{70}\! \left(x \right) = F_{66}\! \left(x \right)
F_{71}\! \left(x \right) = F_{4}\! \left(x \right) F_{72}\! \left(x \right)
F_{72}\! \left(x \right) = F_{53}\! \left(x \right)
F_{73}\! \left(x \right) = F_{4}\! \left(x \right) F_{74}\! \left(x \right)
F_{74}\! \left(x \right) = F_{75}\! \left(x \right)+F_{76}\! \left(x \right)
F_{75}\! \left(x \right) = F_{37}\! \left(x \right)
F_{76}\! \left(x \right) = F_{77}\! \left(x \right)
F_{77}\! \left(x \right) = F_{37}\! \left(x \right) F_{4}\! \left(x \right)
F_{78}\! \left(x \right) = F_{4}\! \left(x \right) F_{79}\! \left(x \right)
F_{79}\! \left(x \right) = F_{13}\! \left(x \right)+F_{80}\! \left(x \right)
F_{80}\! \left(x \right) = F_{81}\! \left(x \right)
F_{81}\! \left(x \right) = F_{22}\! \left(x \right)+F_{38}\! \left(x \right)+F_{82}\! \left(x \right)
F_{82}\! \left(x \right) = F_{4}\! \left(x \right) F_{52}\! \left(x \right)
System of equations in sympy syntax:
Eq(F_0(x), F_1(x) + F_2(x))
Eq(F_1(x), 1)
Eq(F_2(x), F_3(x))
Eq(F_3(x), F_4(x)*F_5(x))
Eq(F_4(x), x)
Eq(F_5(x), F_13(x) + F_6(x))
Eq(F_6(x), F_1(x) + F_7(x))
Eq(F_7(x), F_8(x))
Eq(F_8(x), F_4(x)*F_9(x))
Eq(F_9(x), F_10(x) + F_6(x))
Eq(F_10(x), F_11(x))
Eq(F_11(x), F_12(x)*F_4(x))
Eq(F_12(x), F_1(x) + F_4(x))
Eq(F_13(x), F_14(x) + F_53(x))
Eq(F_14(x), F_15(x))
Eq(F_15(x), F_16(x)*F_4(x))
Eq(F_16(x), F_17(x) + F_20(x))
Eq(F_17(x), F_1(x) + F_18(x))
Eq(F_18(x), F_19(x))
Eq(F_19(x), F_12(x)*F_4(x))
Eq(F_20(x), F_14(x) + F_21(x))
Eq(F_21(x), F_22(x) + F_23(x) + F_51(x))
Eq(F_22(x), 0)
Eq(F_23(x), F_24(x)*F_4(x))
Eq(F_24(x), F_25(x) + F_29(x))
Eq(F_25(x), F_18(x) + F_26(x))
Eq(F_26(x), F_27(x))
Eq(F_27(x), F_28(x)*F_4(x))
Eq(F_28(x), F_4(x))
Eq(F_29(x), F_21(x) + F_30(x))
Eq(F_30(x), 2*F_22(x) + F_31(x) + F_35(x))
Eq(F_31(x), F_32(x)*F_4(x))
Eq(F_32(x), F_33(x) + F_34(x))
Eq(F_33(x), F_26(x))
Eq(F_34(x), F_30(x))
Eq(F_35(x), F_36(x)*F_4(x))
Eq(F_36(x), F_37(x))
Eq(F_37(x), F_22(x) + F_38(x) + F_50(x))
Eq(F_38(x), F_39(x)*F_4(x))
Eq(F_39(x), F_40(x) + F_43(x))
Eq(F_40(x), F_4(x) + F_41(x))
Eq(F_41(x), F_42(x))
Eq(F_42(x), x**2)
Eq(F_43(x), F_37(x) + F_44(x))
Eq(F_44(x), 2*F_22(x) + F_45(x) + F_49(x))
Eq(F_45(x), F_4(x)*F_46(x))
Eq(F_46(x), F_47(x) + F_48(x))
Eq(F_47(x), F_41(x))
Eq(F_48(x), F_44(x))
Eq(F_49(x), F_37(x)*F_4(x))
Eq(F_50(x), F_14(x)*F_4(x))
Eq(F_51(x), F_4(x)*F_52(x))
Eq(F_52(x), F_14(x) + F_37(x))
Eq(F_53(x), F_22(x) + F_54(x) + F_78(x))
Eq(F_54(x), F_4(x)*F_55(x))
Eq(F_55(x), F_56(x) + F_65(x))
Eq(F_56(x), F_57(x) + F_7(x))
Eq(F_57(x), F_22(x) + F_58(x) + F_60(x))
Eq(F_58(x), F_4(x)*F_59(x))
Eq(F_59(x), F_7(x))
Eq(F_60(x), F_4(x)*F_61(x))
Eq(F_61(x), F_62(x) + F_63(x))
Eq(F_62(x), F_4(x))
Eq(F_63(x), F_64(x))
Eq(F_64(x), x**2)
Eq(F_65(x), F_53(x) + F_66(x))
Eq(F_66(x), F_22(x) + F_67(x) + F_71(x) + F_73(x))
Eq(F_67(x), F_4(x)*F_68(x))
Eq(F_68(x), F_69(x) + F_70(x))
Eq(F_69(x), F_57(x))
Eq(F_70(x), F_66(x))
Eq(F_71(x), F_4(x)*F_72(x))
Eq(F_72(x), F_53(x))
Eq(F_73(x), F_4(x)*F_74(x))
Eq(F_74(x), F_75(x) + F_76(x))
Eq(F_75(x), F_37(x))
Eq(F_76(x), F_77(x))
Eq(F_77(x), F_37(x)*F_4(x))
Eq(F_78(x), F_4(x)*F_79(x))
Eq(F_79(x), F_13(x) + F_80(x))
Eq(F_80(x), F_81(x))
Eq(F_81(x), F_22(x) + F_38(x) + F_82(x))
Eq(F_82(x), F_4(x)*F_52(x))
Pack JSON:
{"expansion_strats": [[{"class_module": "tilings.strategies.requirement_insertion", "extra_basis": [], "ignore_parent": false, "maxreqlen": 1, "one_cell_only": false, "strategy_class": "CellInsertionFactory"}, {"class_module": "tilings.strategies.requirement_placement", "dirs": [0, 1, 2, 3], "ignore_parent": false, "partial": false, "point_only": false, "strategy_class": "PatternPlacementFactory"}]], "inferral_strats": [{"class_module": "tilings.strategies.row_and_col_separation", "ignore_parent": true, "inferrable": true, "possibly_empty": false, "strategy_class": "RowColumnSeparationStrategy", "workable": true}, {"class_module": "tilings.strategies.obstruction_inferral", "strategy_class": "ObstructionTransitivityFactory"}], "initial_strats": [{"class_module": "tilings.strategies.factor", "ignore_parent": true, "interleaving": null, "strategy_class": "FactorFactory", "tracked": false, "unions": false, "workable": true}], "iterative": false, "name": "point_placements", "symmetries": [], "ver_strats": [{"class_module": "tilings.strategies.verification", "strategy_class": "BasicVerificationStrategy"}, {"class_module": "tilings.strategies.verification", "ignore_parent": false, "strategy_class": "InsertionEncodingVerificationStrategy"}, {"basis": [], "class_module": "tilings.strategies.verification", "ignore_parent": false, "strategy_class": "OneByOneVerificationStrategy", "symmetry": false}, {"basis": [], "class_module": "tilings.strategies.verification", "ignore_parent": false, "strategy_class": "LocallyFactorableVerificationStrategy", "symmetry": false}]}
Specification JSON:
{"root": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}], "requirements": []}, "rules": [{"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, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 0], [0, 0], [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, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 0], [0, 0], [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": [], "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": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 1]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 0], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 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": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 2], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 0], [1, 0], [1, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 2], [1, 0], [1, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 2], [1, 0], [1, 0], [1, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 2], [1, 0], [1, 2], [1, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 2], [1, 2], [1, 2], [1, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 1]], [[1, 0], [1, 2]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [1, 0, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}], "requirements": []}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 1]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 0], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 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": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 1]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 0], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "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": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}], "requirements": []}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [1, 0, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 0], [0, 0], [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": [1, 0, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 0], [0, 0], [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": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 1]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 0], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 1]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 0], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 1]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 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": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 2], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 2], [1, 2], [1, 2], [1, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 1]], [[1, 0], [1, 2]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [1, 0, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}], "requirements": []}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 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": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "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": [], "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": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}], "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, 2]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 1]], [[1, 0], [1, 2]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}], "requirements": []}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [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, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [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": [], "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, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [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, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [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": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 1]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [], "pos": []}], "requirements": []}, {"assumptions": [], "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, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [1, 0, 2], "pos": [[1, 2], [1, 2], [1, 3]]}, {"patt": [1, 0, 2], "pos": [[1, 3], [1, 2], [1, 3]]}, {"patt": [1, 0, 2], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 3], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 3], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 0], [1, 0], [1, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 2], [1, 0], [1, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 3], [1, 0], [1, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 2], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 0], [1, 0], [1, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 0], [1, 2], [1, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 0], [1, 3], [1, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 2], [1, 3], [1, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 3], [1, 3], [1, 3]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [1, 0, 2], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 0], [1, 0], [1, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 3], [1, 0], [1, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 1], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 0], [1, 0], [1, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 0], [1, 3], [1, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 3], [1, 3], [1, 3]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 1]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 0], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 2, "gps": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}], "ignore_parent": false, "include_empty": true, "indices": [0, 0], "own_col": true, "own_row": true, "strategy_class": "RequirementPlacementStrategy"}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 0], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 1], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 1], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}]]}], "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, 2]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [1, 0, 2], "pos": [[1, 2], [1, 2], [1, 3]]}, {"patt": [1, 0, 2], "pos": [[1, 3], [1, 2], [1, 3]]}, {"patt": [1, 0, 2], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 3], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 3], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 0], [1, 0], [1, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 2], [1, 0], [1, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 3], [1, 0], [1, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 2], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 0], [1, 0], [1, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 0], [1, 2], [1, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 0], [1, 3], [1, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 2], [1, 3], [1, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 3], [1, 3], [1, 3]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 1]], [[1, 0], [1, 2], [1, 3]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 0], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "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, 3]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [1, 0, 2], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 0], [1, 0], [1, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 3], [1, 0], [1, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 1], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 0], [1, 0], [1, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 0], [1, 3], [1, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 3], [1, 3], [1, 3]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 2]], [[1, 0], [1, 1], [1, 3]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 1], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 0], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 1], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 1], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 2]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 0], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 1], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 1], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 0]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 1]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 0], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 0], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 0], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 1]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [1, 0, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 1], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 1], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 0]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 1]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 0], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 0], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 1], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 1], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 0], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 1], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 1], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 1]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, {"children": [{"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]]}]]}, {"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": []}], "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, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"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}}, {"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, 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, 1], "pos": [[0, 0], [0, 0]]}, {"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": [], "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": [], "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": []}], "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": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}]]}, "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": [], "pos": []}], "requirements": []}, {"assumptions": [], "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, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 1], [1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 2, "gps": [{"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 0]]}], "ignore_parent": false, "include_empty": true, "indices": [0, 0], "own_col": true, "own_row": true, "strategy_class": "RequirementPlacementStrategy"}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}]]}], "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, 2]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 1]], [[1, 0], [1, 2], [1, 3]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [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, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 1], [1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 2]], [[1, 0], [1, 1]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 2]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 0]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 1]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 0]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 1]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [], "pos": []}], "requirements": []}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 0]]}, {"patt": [1, 0, 2], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 2], [1, 2], [1, 2], [1, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 2]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [1, 0, 2], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 3], [1, 3], [1, 3]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}]]}], "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, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 1], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 2, "gps": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}], "ignore_parent": false, "include_empty": true, "indices": [0, 0], "own_col": true, "own_row": true, "strategy_class": "RequirementPlacementStrategy"}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [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], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 0]]}, {"patt": [1, 0, 2], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 2], [1, 2], [1, 2], [1, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 1]], [[1, 0], [1, 2]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "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, 3]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [1, 0, 2], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 3], [1, 3], [1, 3]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 2]], [[1, 0], [1, 1], [1, 3]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 1]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [], "pos": []}], "requirements": []}, {"assumptions": [], "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": [[0, 4]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 3]]}, {"patt": [1, 0, 2], "pos": [[1, 2], [1, 2], [1, 4]]}, {"patt": [1, 0, 2], "pos": [[1, 3], [1, 2], [1, 4]]}, {"patt": [1, 0, 2], "pos": [[1, 3], [1, 3], [1, 4]]}, {"patt": [1, 0, 2], "pos": [[1, 4], [1, 2], [1, 4]]}, {"patt": [1, 0, 2], "pos": [[1, 4], [1, 3], [1, 4]]}, {"patt": [1, 0, 2], "pos": [[1, 4], [1, 4], [1, 4]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 4], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 4], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 4], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 4], [1, 4], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 4], [1, 4], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 4], [1, 4], [1, 4]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 3], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 3], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 4], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 4], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 4], [1, 4]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 0], [1, 0], [1, 4]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 2], [1, 0], [1, 4]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 3], [1, 0], [1, 4]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 4], [1, 0], [1, 4]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 2], [1, 4], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 4], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 4], [1, 4], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 3], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 4], [1, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 0], [1, 0], [1, 4]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 0], [1, 2], [1, 4]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 0], [1, 3], [1, 4]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 0], [1, 4], [1, 4]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 2], [1, 4], [1, 4]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 3], [1, 4], [1, 4]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 4], [1, 4], [1, 4]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}], [{"patt": [0], "pos": [[1, 4]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 1]]}, {"patt": [1, 0, 2], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 0], [1, 0], [1, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 3], [1, 0], [1, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 1], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 0], [1, 0], [1, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 0], [1, 3], [1, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 3], [1, 3], [1, 3]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"patt": [0], "pos": [[1, 3]]}]]}, {"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, 4]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 4]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 4]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 2]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 2], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [1, 0, 2], "pos": [[1, 4], [1, 4], [1, 4]]}, {"patt": [1, 2, 0], "pos": [[1, 4], [1, 4], [1, 4]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 4], [1, 4]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 0], [1, 0], [1, 4]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 4], [1, 0], [1, 4]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 4], [1, 4], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 1], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 4], [1, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 0], [1, 0], [1, 4]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 0], [1, 4], [1, 4]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 4], [1, 4], [1, 4]]}], "requirements": [[{"patt": [0], "pos": [[0, 3]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"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, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 0], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 1], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 1], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 2, "gps": [{"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 2]]}], "ignore_parent": false, "include_empty": true, "indices": [0, 0, 0], "own_col": true, "own_row": true, "strategy_class": "RequirementPlacementStrategy"}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 1], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 1], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 2], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 3], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 3], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 3], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 3], [0, 0], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 0], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 1], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 2], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 1], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 2], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}], "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, 2]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[0, 4]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 3]]}, {"patt": [1, 0, 2], "pos": [[1, 2], [1, 2], [1, 4]]}, {"patt": [1, 0, 2], "pos": [[1, 3], [1, 2], [1, 4]]}, {"patt": [1, 0, 2], "pos": [[1, 3], [1, 3], [1, 4]]}, {"patt": [1, 0, 2], "pos": [[1, 4], [1, 2], [1, 4]]}, {"patt": [1, 0, 2], "pos": [[1, 4], [1, 3], [1, 4]]}, {"patt": [1, 0, 2], "pos": [[1, 4], [1, 4], [1, 4]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 4], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 4], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 4], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 4], [1, 4], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 4], [1, 4], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 4], [1, 4], [1, 4]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 3], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 3], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 4], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 4], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 4], [1, 4]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 0], [1, 0], [1, 4]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 2], [1, 0], [1, 4]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 3], [1, 0], [1, 4]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 4], [1, 0], [1, 4]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 2], [1, 4], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 4], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 4], [1, 4], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 3], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 4], [1, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 0], [1, 0], [1, 4]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 0], [1, 2], [1, 4]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 0], [1, 3], [1, 4]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 0], [1, 4], [1, 4]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 2], [1, 4], [1, 4]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 3], [1, 4], [1, 4]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 4], [1, 4], [1, 4]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}], [{"patt": [0], "pos": [[1, 4]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 1]], [[1, 0], [1, 2], [1, 3], [1, 4]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 0], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 2]]}]]}], "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, 3]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 1]]}, {"patt": [1, 0, 2], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 0], [1, 0], [1, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 3], [1, 0], [1, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 1], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 0], [1, 0], [1, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 0], [1, 3], [1, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 3], [1, 3], [1, 3], [1, 3]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"patt": [0], "pos": [[1, 3]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 2]], [[1, 0], [1, 1], [1, 3]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 3], [0, 0], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 0], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[0, 4]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 4]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 4]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 2]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 2], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [1, 0, 2], "pos": [[1, 4], [1, 4], [1, 4]]}, {"patt": [1, 2, 0], "pos": [[1, 4], [1, 4], [1, 4]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 4], [1, 4]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 0], [1, 0], [1, 4]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 4], [1, 0], [1, 4]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 4], [1, 4], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 1], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 4], [1, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 0], [1, 0], [1, 4]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 0], [1, 4], [1, 4]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 4], [1, 4], [1, 4], [1, 4]]}], "requirements": [[{"patt": [0], "pos": [[0, 3]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"patt": [0], "pos": [[1, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 3]], [[1, 0], [1, 1], [1, 2], [1, 4]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 0], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 0], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 2], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 1], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 1], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 1], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 2], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 3], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 3], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 3], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 3], [0, 0], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 0], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 1], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 2], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 1], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 2], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 1], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 1], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 2], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 3], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 3], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 3], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 3], [0, 0], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 0], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 1], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 2], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 1], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 2], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 0]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 0], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 3], [0, 0], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 0], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 3], [0, 0], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 0], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 2]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [], "pos": []}], "requirements": []}, {"assumptions": [], "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, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 2], [1, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 2], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"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, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 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, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 2, "gps": [{"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 0]]}], "ignore_parent": false, "include_empty": true, "indices": [0, 0], "own_col": true, "own_row": true, "strategy_class": "RequirementPlacementStrategy"}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}]]}], "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, 2]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 2], [1, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 2], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 1]], [[1, 0], [1, 2], [1, 3]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [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, 2]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"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, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 1]], [[1, 0], [1, 2]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 2]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 0]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 0]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 1]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [], "pos": []}], "requirements": []}, {"assumptions": [], "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, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 2], [1, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 2], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 0]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 2, "gps": [{"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 0]]}], "ignore_parent": false, "include_empty": true, "indices": [0, 0], "own_col": true, "own_row": true, "strategy_class": "RequirementPlacementStrategy"}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [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": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 0]]}]]}, "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, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 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": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 1]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 2]], [[1, 0], [1, 1]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [], "pos": []}], "requirements": []}, {"assumptions": [], "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": [[0, 4]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 4]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 4]]}, {"patt": [0, 1], "pos": [[1, 4], [1, 4]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 4]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 3], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 3], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 4], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 4], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 4], [1, 4]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 3], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 4], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}], [{"patt": [0], "pos": [[1, 4]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [], "pos": []}], "requirements": []}, {"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": [[1, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 2]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 1], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 3]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"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, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 2, "gps": [{"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[0, 0]]}], "ignore_parent": false, "include_empty": true, "indices": [0, 0, 0], "own_col": true, "own_row": true, "strategy_class": "RequirementPlacementStrategy"}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}], "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, 2]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[0, 4]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 4]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 4]]}, {"patt": [0, 1], "pos": [[1, 4], [1, 4]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 4]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 3], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 3], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 4], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 4], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 4], [1, 4]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 3], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 4], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}], [{"patt": [0], "pos": [[1, 4]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 1]], [[1, 0], [1, 2], [1, 3], [1, 4]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 2]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 1], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 3]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"patt": [0], "pos": [[1, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 3]], [[1, 0], [1, 1], [1, 2]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 0]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"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, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"patt": [0], "pos": [[1, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 1]], [[1, 0], [1, 2]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [], "pos": []}], "requirements": []}, {"assumptions": [], "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": [[0, 4]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 4]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 4]]}, {"patt": [0, 1], "pos": [[1, 4], [1, 4]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 4]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 4]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 3], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 3], [1, 3]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 3], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}], [{"patt": [0], "pos": [[1, 4]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [], "pos": []}], "requirements": []}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 1], [1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"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, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 2, "gps": [{"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[0, 0]]}], "ignore_parent": false, "include_empty": true, "indices": [0, 0, 0], "own_col": true, "own_row": true, "strategy_class": "RequirementPlacementStrategy"}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 2], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}], "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, 2]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[0, 4]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 4]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 4]]}, {"patt": [0, 1], "pos": [[1, 4], [1, 4]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 4]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 4]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 3], [1, 3]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 3], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 3], [1, 3]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 3], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}], [{"patt": [0], "pos": [[1, 4]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 1]], [[1, 0], [1, 2], [1, 3], [1, 4]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 1], [1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"patt": [0], "pos": [[1, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 2]], [[1, 0], [1, 1]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 2], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 2], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 0]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, {"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": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 2], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 0], [1, 0], [1, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[1, 0], [1, 2], [1, 0], [1, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 2], [1, 0], [1, 0], [1, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 2], [1, 0], [1, 2], [1, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 2], [1, 2], [1, 2], [1, 2]]}], "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, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 0], [0, 0], [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", "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": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 2], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[1, 2], [1, 2], [1, 2], [1, 2]]}], "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": [1, 0, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 0], [0, 0], [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", "rule_class": "EquivalencePathRule", "rules": [{"class_module": "comb_spec_searcher.strategies.rule", "original_rule": {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 1]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, "rule_class": "EquivalenceRule"}, {"class_module": "comb_spec_searcher.strategies.rule", "original_rule": {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [], "pos": []}], "requirements": []}, {"assumptions": [], "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": [0, 1], "pos": [[1, 1], [1, 1]]}, {"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": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [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", "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": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}], "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, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [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", "rule_class": "EquivalencePathRule", "rules": [{"class_module": "comb_spec_searcher.strategies.rule", "original_rule": {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 0], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 0], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 2]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, "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": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}], "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, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [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", "rule_class": "EquivalencePathRule", "rules": [{"class_module": "comb_spec_searcher.strategies.rule", "original_rule": {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [1, 0, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 0]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, "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": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 1]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, "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": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}], "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": [0, 1], "pos": [[0, 0], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 2]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, "rule_class": "EquivalenceRule"}, {"class_module": "comb_spec_searcher.strategies.rule", "original_rule": {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [], "pos": []}], "requirements": []}, {"assumptions": [], "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": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[1, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [], "pos": []}], "requirements": []}], "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]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 2, "gps": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}], "ignore_parent": false, "include_empty": true, "indices": [0, 0], "own_col": true, "own_row": true, "strategy_class": "RequirementPlacementStrategy"}}, "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": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 1]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 0], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 0], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 0], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 1]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, "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": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 1], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 0], [0, 1], [0, 1]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 0], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 0], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 2], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 1], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}], "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": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 0], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 0], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 2], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 1], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 0]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, "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": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 1], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 0], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 1], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 1], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 1], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 1], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 2], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 3], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 3], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 3], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 3], [0, 0], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 0], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 1], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 2], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 1], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 2], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 1], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 1], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 2], [0, 3]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 3], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 3], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 3], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 1], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 3], [0, 0], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 0], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 1], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 2], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 1], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 2], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 1]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, "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": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 0], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 2]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 2], [0, 0], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 0], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 0], [0, 2], [0, 2]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 2]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, "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": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 3], [0, 0], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 0], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 3]]}, {"patt": [0, 2, 1, 3], "pos": [[0, 0], [0, 3], [0, 0], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 0], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 0], [0, 3], [0, 3]]}, {"patt": [3, 0, 1, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 3]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, "rule_class": "EquivalenceRule"}, {"class_module": "comb_spec_searcher.strategies.rule", "original_rule": {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [], "pos": []}], "requirements": []}, {"assumptions": [], "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": [[0, 4]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 4]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 4]]}, {"patt": [0, 1], "pos": [[1, 4], [1, 4]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 4]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 4]]}, {"patt": [2, 1, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 3], [1, 2], [1, 2]]}, {"patt": [2, 1, 0], "pos": [[1, 4], [1, 2], [1, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 3], [1, 2], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 4], [1, 2], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}], [{"patt": [0], "pos": [[1, 4]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"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, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[1, 0], [1, 2], [1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"patt": [0], "pos": [[1, 2]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [], "pos": []}], "requirements": []}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 2, "gps": [{"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[0, 0]]}], "ignore_parent": false, "include_empty": true, "indices": [0, 0, 0], "own_col": true, "own_row": true, "strategy_class": "RequirementPlacementStrategy"}}, "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": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [], "pos": []}], "requirements": []}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 1]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}]]}], "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": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 2, "gps": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}], "ignore_parent": false, "include_empty": true, "indices": [0, 0], "own_col": true, "own_row": true, "strategy_class": "RequirementPlacementStrategy"}}, "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": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 1]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, "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": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 2]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, "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": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}], "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": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 0]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, "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": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 3], [0, 3]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 3], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 1]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, "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": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [], "pos": []}], "requirements": []}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 0]]}]]}], "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": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 2, "gps": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}], "ignore_parent": false, "include_empty": true, "indices": [0, 0], "own_col": true, "own_row": true, "strategy_class": "RequirementPlacementStrategy"}}, "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": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}], "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": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 0], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 0]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 0]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, "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": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 2], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 3]]}, {"patt": [2, 1, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 1], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 1]]}, {"patt": [2, 1, 0], "pos": [[0, 3], [0, 2], [0, 2]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 2], [0, 2], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 0], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 1], [0, 0]]}, {"patt": [0, 3, 2, 1], "pos": [[0, 0], [0, 3], [0, 2], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 1]]}], "ignore_parent": true, "strategy_class": "RequirementInsertionStrategy"}}, "rule_class": "EquivalenceRule"}]}, {"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": [], "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, 1]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[1, 1]]}]]}, "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]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 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": [], "pos": []}], "requirements": []}, "rule_class": "VerificationRule", "strategy": {"class_module": "comb_spec_searcher.strategies.strategy", "strategy_class": "EmptyStrategy"}}]}