0231_1032_3012

Counting sequence:
1, 1, 2, 6, 21, 72, 237, 761, 2415, 7626, 24034, 75689, 238298, 750179, 2361533, 7433917, 23401274, 73664906, 231889749, 729965584, 2297858029, 7233425149, 22770092131, 71677951146, 225634953382, 710276052265, 2235877300106, 7038315997059, 22155908140233, 69744561869913, 219548839056066, 691117578754814, 2175568359721029, 6848469541675800, 21558290666294989, 67863322399873649, 213626887142285495, 672475872035816090, 2116886149116281594, 6663743867499963673, 20976792894686826074, 66032826125363694947, 207864669684894265317, 654336993258172802581, 2059786790103372109402, 6484000850323864295266, 20410980024243513655525, 64251704336105833845792, 202257878122016658711949, 636687379503992646966037, 2004227587986026445574187, 6309106091554144500110682, 19860428981762491310686302, 62518625240373558187987449, 196802320107760903320001674, 619513833691685430026730755, 1950166999683832568334905553, 6138928817768034886579431729, 19324728105712327271339741122, 60832292969229036993955574966, 191493916377547201048382508341, 602803514708214020483003049704, 1897564602669443515780820248877, 5973341782930679202722654354857, 18803476838422600284031159722623, 59191446607567807043737496074922, 186328697697934106525579159486802, 586543927807455605255135309445193, 1846381064743587908487541255395418, 5812221173249918924710338252733027, 18296285426576367578633864554191181, 57594859251299301448891984713961197, 181302801898718021984376683446004410, 570722915267550551169464644196325370, 1796578114625347440173620511161249589, 5655446514597456129170464795502026800, 17802774629781332747330462292720683949, 56041337089958310041984075295537905133, 176412470985086698055115379099491595635, 555328647300253194841839752804073351242, 1748118513335710995243996949213356523350, 5502900582427171094505583917540697635465, 17322575437001804587132184575326794323210, 54529718514061416060255983497898440909955, 171654048327667421574132964183154078305817, 540349613205487242702896090814247784816777, 1700966026353008122149441454205427345259778, 5354469314123238182063210508562120104894766, 16855328790639415604507413762446446168616677, 53058873246540955993989464978304851705042360, 167023975928368815344498829134442188419214349, 525774612764491809000534335365300644730347169, 1655085396519401745962630319036180865368788167, 5210041723712500372193417099183263715703325690, 16400685318056288059886311774989812911437285610, 51627701497607052868927626121445641364007953721, 162518791759971847668244986259996390437423283930, 511592747865122520126083378450638450569106560355, 1610442317678181590368526181144010272328164343541, 5069509818877330648764099575484122128042760977221, 15958305070339900344076903136955096145755657438810

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

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

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

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

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

Explicit closed form in Maple syntax:
1/248*(9*((I*3^(2/3)+3^(1/6))*31^(1/2)-31/3*I*3^(1/6)-31/9*3^(2/3))*2^(1/3)*(9+31^(1/2)*3^(1/2))^(2/3)-248+6*(I*3^(1/3)-1/3*3^(5/6))*2^(2/3)*31^(1/2)*(9+31^(1/2)*3^(1/2))^(1/3))*(1/12*(108+12*31^(1/2)*3^(1/2))^(1/3)-1/12*I*(36+4*31^(1/2)*3^(1/2))^(1/3)*3^(5/6)+1+1/24*((-I*31^(1/2)+3)*18^(1/3)+9*I*2^(1/3)*3^(1/6)-31^(1/2)*3^(1/6)*2^(1/3))*(9+31^(1/2)*3^(1/2))^(2/3))^(-n)+1/248*(-9*((I*3^(2/3)-3^(1/6))*31^(1/2)-31/3*I*3^(1/6)+31/9*3^(2/3))*2^(1/3)*(9+31^(1/2)*3^(1/2))^(2/3)-248-6*2^(2/3)*(I*3^(1/3)+1/3*3^(5/6))*31^(1/2)*(9+31^(1/2)*3^(1/2))^(1/3))*(1/12*(108+12*31^(1/2)*3^(1/2))^(1/3)+1/12*I*(36+4*31^(1/2)*3^(1/2))^(1/3)*3^(5/6)+1+1/24*((I*31^(1/2)+3)*18^(1/3)-9*I*2^(1/3)*3^(1/6)-31^(1/2)*3^(1/6)*2^(1/3))*(9+31^(1/2)*3^(1/2))^(2/3))^(-n)+1/248*(-18*(3^(1/6)*31^(1/2)-31/9*3^(2/3))*2^(1/3)*(9+31^(1/2)*3^(1/2))^(2/3)+4*2^(2/3)*3^(5/6)*(9+31^(1/2)*3^(1/2))^(1/3)*31^(1/2)-248)*(-1/6*(108+12*31^(1/2)*3^(1/2))^(1/3)+1+1/12*(31^(1/2)*3^(1/6)*2^(1/3)-3*18^(1/3))*(9+31^(1/2)*3^(1/2))^(2/3))^(-n)-2*n+4

Explicit closed form in latex syntax:
\frac{\left(9 \left(\left(\mathrm{I} \,3^{\frac{2}{3}}+3^{\frac{1}{6}}\right) \sqrt{31}-\frac{31 \,\mathrm{I} \,3^{\frac{1}{6}}}{3}-\frac{31 \,3^{\frac{2}{3}}}{9}\right) 2^{\frac{1}{3}} \left(9+\sqrt{31}\, \sqrt{3}\right)^{\frac{2}{3}}-248+6 \left(\mathrm{I} \,3^{\frac{1}{3}}-\frac{3^{\frac{5}{6}}}{3}\right) 2^{\frac{2}{3}} \sqrt{31}\, \left(9+\sqrt{31}\, \sqrt{3}\right)^{\frac{1}{3}}\right) \left(\frac{\left(108+12 \sqrt{31}\, \sqrt{3}\right)^{\frac{1}{3}}}{12}-\frac{\mathrm{I} \left(36+4 \sqrt{31}\, \sqrt{3}\right)^{\frac{1}{3}} 3^{\frac{5}{6}}}{12}+1+\frac{\left(\left(-\mathrm{I} \sqrt{31}+3\right) 18^{\frac{1}{3}}+9 \,\mathrm{I} \,2^{\frac{1}{3}} 3^{\frac{1}{6}}-\sqrt{31}\, 3^{\frac{1}{6}} 2^{\frac{1}{3}}\right) \left(9+\sqrt{31}\, \sqrt{3}\right)^{\frac{2}{3}}}{24}\right)^{-n}}{248}+\frac{\left(-9 \left(\left(\mathrm{I} \,3^{\frac{2}{3}}-3^{\frac{1}{6}}\right) \sqrt{31}-\frac{31 \,\mathrm{I} \,3^{\frac{1}{6}}}{3}+\frac{31 \,3^{\frac{2}{3}}}{9}\right) 2^{\frac{1}{3}} \left(9+\sqrt{31}\, \sqrt{3}\right)^{\frac{2}{3}}-248-6 \,2^{\frac{2}{3}} \left(\mathrm{I} \,3^{\frac{1}{3}}+\frac{3^{\frac{5}{6}}}{3}\right) \sqrt{31}\, \left(9+\sqrt{31}\, \sqrt{3}\right)^{\frac{1}{3}}\right) \left(\frac{\left(108+12 \sqrt{31}\, \sqrt{3}\right)^{\frac{1}{3}}}{12}+\frac{\mathrm{I} \left(36+4 \sqrt{31}\, \sqrt{3}\right)^{\frac{1}{3}} 3^{\frac{5}{6}}}{12}+1+\frac{\left(\left(\mathrm{I} \sqrt{31}+3\right) 18^{\frac{1}{3}}-9 \,\mathrm{I} \,2^{\frac{1}{3}} 3^{\frac{1}{6}}-\sqrt{31}\, 3^{\frac{1}{6}} 2^{\frac{1}{3}}\right) \left(9+\sqrt{31}\, \sqrt{3}\right)^{\frac{2}{3}}}{24}\right)^{-n}}{248}+\frac{\left(-18 \left(3^{\frac{1}{6}} \sqrt{31}-\frac{31 \,3^{\frac{2}{3}}}{9}\right) 2^{\frac{1}{3}} \left(9+\sqrt{31}\, \sqrt{3}\right)^{\frac{2}{3}}+4 \,2^{\frac{2}{3}} 3^{\frac{5}{6}} \left(9+\sqrt{31}\, \sqrt{3}\right)^{\frac{1}{3}} \sqrt{31}-248\right) \left(-\frac{\left(108+12 \sqrt{31}\, \sqrt{3}\right)^{\frac{1}{3}}}{6}+1+\frac{\left(\sqrt{31}\, 3^{\frac{1}{6}} 2^{\frac{1}{3}}-3 \,18^{\frac{1}{3}}\right) \left(9+\sqrt{31}\, \sqrt{3}\right)^{\frac{2}{3}}}{12}\right)^{-n}}{248}-2 n +4

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

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) = 21
a \! \left(n +3\right) = a \! \left(n \right)-3 a \! \left(n +1\right)+4 a \! \left(n +2\right)+2 n, \quad n \geq 5

Specification 1
Strategy pack name: point_placements
Tree: http://permpal.com/tree/14762/
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[41,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[23,x]
F[11,x] = F[12,x]
F[12,x] = F[13,x]*F[4,x]
F[13,x] = F[14,x]+F[17,x]
F[14,x] = F[1,x]+F[15,x]
F[15,x] = F[16,x]
F[16,x] = F[14,x]*F[4,x]
F[17,x] = F[11,x]+F[18,x]
F[18,x] = F[19,x]
F[19,x] = F[20,x]*F[4,x]
F[20,x] = F[21,x]+F[22,x]
F[21,x] = F[4,x]
F[22,x] = F[19,x]
F[23,x] = F[24,x]
F[24,x] = F[25,x]*F[4,x]
F[25,x] = F[26,x]+F[32,x]
F[26,x] = F[27,x]+F[30,x]
F[27,x] = F[28,x]
F[28,x] = F[29,x]*F[4,x]
F[29,x] = F[1,x]+F[27,x]
F[30,x] = F[31,x]
F[31,x] = F[26,x]*F[4,x]
F[32,x] = F[33,x]+F[34,x]
F[33,x] = F[24,x]
F[34,x] = F[35,x]
F[35,x] = F[36,x]*F[4,x]
F[36,x] = F[37,x]+F[40,x]
F[37,x] = F[38,x]
F[38,x] = F[39,x]
F[39,x] = F[27,x]*F[4,x]
F[40,x] = F[35,x]
F[41,x] = F[42,x]+F[59,x]
F[42,x] = F[43,x]
F[43,x] = F[4,x]*F[44,x]
F[44,x] = F[14,x]+F[45,x]
F[45,x] = F[42,x]+F[46,x]
F[46,x] = F[47,x]+F[48,x]+F[58,x]
F[47,x] = 0
F[48,x] = F[4,x]*F[49,x]
F[49,x] = F[50,x]+F[53,x]
F[50,x] = F[4,x]+F[51,x]
F[51,x] = F[52,x]
F[52,x] = F[15,x]*F[4,x]
F[53,x] = F[54,x]+F[56,x]
F[54,x] = F[47,x]+F[48,x]+F[55,x]
F[55,x] = F[4,x]*F[42,x]
F[56,x] = F[57,x]
F[57,x] = F[4,x]*F[46,x]
F[58,x] = F[4,x]*F[45,x]
F[59,x] = F[47,x]+F[60,x]+F[86,x]
F[60,x] = F[4,x]*F[61,x]
F[61,x] = F[62,x]+F[66,x]
F[62,x] = F[27,x]+F[63,x]
F[63,x] = F[31,x]+F[47,x]+F[64,x]
F[64,x] = F[4,x]*F[65,x]
F[65,x] = F[15,x]+F[30,x]
F[66,x] = F[67,x]+F[70,x]
F[67,x] = F[47,x]+F[60,x]+F[68,x]
F[68,x] = F[4,x]*F[69,x]
F[69,x] = F[42,x]+F[67,x]
F[70,x] = F[47,x]+F[71,x]+F[82,x]+F[84,x]
F[71,x] = F[4,x]*F[72,x]
F[72,x] = F[73,x]+F[76,x]
F[73,x] = F[38,x]+F[74,x]
F[74,x] = F[75,x]
F[75,x] = F[30,x]*F[4,x]
F[76,x] = F[77,x]+F[79,x]
F[77,x] = 2*F[47,x]+F[71,x]+F[78,x]
F[78,x] = F[4,x]*F[67,x]
F[79,x] = F[80,x]
F[80,x] = F[4,x]*F[81,x]
F[81,x] = 2*F[47,x]+F[71,x]+F[82,x]
F[82,x] = F[4,x]*F[83,x]
F[83,x] = F[67,x]+F[81,x]
F[84,x] = F[4,x]*F[85,x]
F[85,x] = F[46,x]+F[81,x]
F[86,x] = F[4,x]*F[87,x]
F[87,x] = F[41,x]+F[88,x]
F[88,x] = F[89,x]+F[98,x]
F[89,x] = F[47,x]+F[48,x]+F[90,x]
F[90,x] = F[4,x]*F[91,x]
F[91,x] = F[45,x]+F[92,x]
F[92,x] = F[89,x]+F[93,x]
F[93,x] = F[94,x]
F[94,x] = F[4,x]*F[95,x]
F[95,x] = F[96,x]+F[97,x]
F[96,x] = F[54,x]
F[97,x] = F[94,x]
F[98,x] = 2*F[47,x]+F[71,x]+F[99,x]
F[99,x] = F[100,x]*F[4,x]
F[100,x] = F[101,x]+F[83,x]
F[101,x] = F[102,x]+F[103,x]
F[102,x] = 2*F[47,x]+F[71,x]+F[99,x]
F[103,x] = F[104,x]
F[104,x] = F[105,x]*F[4,x]
F[105,x] = F[106,x]+F[107,x]
F[106,x] = F[77,x]
F[107,x] = F[104,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_{41}\! \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_{23}\! \left(x \right)
F_{11}\! \left(x \right) = F_{12}\! \left(x \right)
F_{12}\! \left(x \right) = F_{13}\! \left(x \right) F_{4}\! \left(x \right)
F_{13}\! \left(x \right) = F_{14}\! \left(x \right)+F_{17}\! \left(x \right)
F_{14}\! \left(x \right) = F_{1}\! \left(x \right)+F_{15}\! \left(x \right)
F_{15}\! \left(x \right) = F_{16}\! \left(x \right)
F_{16}\! \left(x \right) = F_{14}\! \left(x \right) F_{4}\! \left(x \right)
F_{17}\! \left(x \right) = F_{11}\! \left(x \right)+F_{18}\! \left(x \right)
F_{18}\! \left(x \right) = F_{19}\! \left(x \right)
F_{19}\! \left(x \right) = F_{20}\! \left(x \right) F_{4}\! \left(x \right)
F_{20}\! \left(x \right) = F_{21}\! \left(x \right)+F_{22}\! \left(x \right)
F_{21}\! \left(x \right) = F_{4}\! \left(x \right)
F_{22}\! \left(x \right) = F_{19}\! \left(x \right)
F_{23}\! \left(x \right) = F_{24}\! \left(x \right)
F_{24}\! \left(x \right) = F_{25}\! \left(x \right) F_{4}\! \left(x \right)
F_{25}\! \left(x \right) = F_{26}\! \left(x \right)+F_{32}\! \left(x \right)
F_{26}\! \left(x \right) = F_{27}\! \left(x \right)+F_{30}\! \left(x \right)
F_{27}\! \left(x \right) = F_{28}\! \left(x \right)
F_{28}\! \left(x \right) = F_{29}\! \left(x \right) F_{4}\! \left(x \right)
F_{29}\! \left(x \right) = F_{1}\! \left(x \right)+F_{27}\! \left(x \right)
F_{30}\! \left(x \right) = F_{31}\! \left(x \right)
F_{31}\! \left(x \right) = F_{26}\! \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_{24}\! \left(x \right)
F_{34}\! \left(x \right) = F_{35}\! \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_{40}\! \left(x \right)
F_{37}\! \left(x \right) = F_{38}\! \left(x \right)
F_{38}\! \left(x \right) = F_{39}\! \left(x \right)
F_{39}\! \left(x \right) = F_{27}\! \left(x \right) F_{4}\! \left(x \right)
F_{40}\! \left(x \right) = F_{35}\! \left(x \right)
F_{41}\! \left(x \right) = F_{42}\! \left(x \right)+F_{59}\! \left(x \right)
F_{42}\! \left(x \right) = F_{43}\! \left(x \right)
F_{43}\! \left(x \right) = F_{4}\! \left(x \right) F_{44}\! \left(x \right)
F_{44}\! \left(x \right) = F_{14}\! \left(x \right)+F_{45}\! \left(x \right)
F_{45}\! \left(x \right) = F_{42}\! \left(x \right)+F_{46}\! \left(x \right)
F_{46}\! \left(x \right) = F_{47}\! \left(x \right)+F_{48}\! \left(x \right)+F_{58}\! \left(x \right)
F_{47}\! \left(x \right) = 0
F_{48}\! \left(x \right) = F_{4}\! \left(x \right) F_{49}\! \left(x \right)
F_{49}\! \left(x \right) = F_{50}\! \left(x \right)+F_{53}\! \left(x \right)
F_{50}\! \left(x \right) = F_{4}\! \left(x \right)+F_{51}\! \left(x \right)
F_{51}\! \left(x \right) = F_{52}\! \left(x \right)
F_{52}\! \left(x \right) = F_{15}\! \left(x \right) F_{4}\! \left(x \right)
F_{53}\! \left(x \right) = F_{54}\! \left(x \right)+F_{56}\! \left(x \right)
F_{54}\! \left(x \right) = F_{47}\! \left(x \right)+F_{48}\! \left(x \right)+F_{55}\! \left(x \right)
F_{55}\! \left(x \right) = F_{4}\! \left(x \right) F_{42}\! \left(x \right)
F_{56}\! \left(x \right) = F_{57}\! \left(x \right)
F_{57}\! \left(x \right) = F_{4}\! \left(x \right) F_{46}\! \left(x \right)
F_{58}\! \left(x \right) = F_{4}\! \left(x \right) F_{45}\! \left(x \right)
F_{59}\! \left(x \right) = F_{47}\! \left(x \right)+F_{60}\! \left(x \right)+F_{86}\! \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_{66}\! \left(x \right)
F_{62}\! \left(x \right) = F_{27}\! \left(x \right)+F_{63}\! \left(x \right)
F_{63}\! \left(x \right) = F_{31}\! \left(x \right)+F_{47}\! \left(x \right)+F_{64}\! \left(x \right)
F_{64}\! \left(x \right) = F_{4}\! \left(x \right) F_{65}\! \left(x \right)
F_{65}\! \left(x \right) = F_{15}\! \left(x \right)+F_{30}\! \left(x \right)
F_{66}\! \left(x \right) = F_{67}\! \left(x \right)+F_{70}\! \left(x \right)
F_{67}\! \left(x \right) = F_{47}\! \left(x \right)+F_{60}\! \left(x \right)+F_{68}\! \left(x \right)
F_{68}\! \left(x \right) = F_{4}\! \left(x \right) F_{69}\! \left(x \right)
F_{69}\! \left(x \right) = F_{42}\! \left(x \right)+F_{67}\! \left(x \right)
F_{70}\! \left(x \right) = F_{47}\! \left(x \right)+F_{71}\! \left(x \right)+F_{82}\! \left(x \right)+F_{84}\! \left(x \right)
F_{71}\! \left(x \right) = F_{4}\! \left(x \right) F_{72}\! \left(x \right)
F_{72}\! \left(x \right) = F_{73}\! \left(x \right)+F_{76}\! \left(x \right)
F_{73}\! \left(x \right) = F_{38}\! \left(x \right)+F_{74}\! \left(x \right)
F_{74}\! \left(x \right) = F_{75}\! \left(x \right)
F_{75}\! \left(x \right) = F_{30}\! \left(x \right) F_{4}\! \left(x \right)
F_{76}\! \left(x \right) = F_{77}\! \left(x \right)+F_{79}\! \left(x \right)
F_{77}\! \left(x \right) = 2 F_{47}\! \left(x \right)+F_{71}\! \left(x \right)+F_{78}\! \left(x \right)
F_{78}\! \left(x \right) = F_{4}\! \left(x \right) F_{67}\! \left(x \right)
F_{79}\! \left(x \right) = F_{80}\! \left(x \right)
F_{80}\! \left(x \right) = F_{4}\! \left(x \right) F_{81}\! \left(x \right)
F_{81}\! \left(x \right) = 2 F_{47}\! \left(x \right)+F_{71}\! \left(x \right)+F_{82}\! \left(x \right)
F_{82}\! \left(x \right) = F_{4}\! \left(x \right) F_{83}\! \left(x \right)
F_{83}\! \left(x \right) = F_{67}\! \left(x \right)+F_{81}\! \left(x \right)
F_{84}\! \left(x \right) = F_{4}\! \left(x \right) F_{85}\! \left(x \right)
F_{85}\! \left(x \right) = F_{46}\! \left(x \right)+F_{81}\! \left(x \right)
F_{86}\! \left(x \right) = F_{4}\! \left(x \right) F_{87}\! \left(x \right)
F_{87}\! \left(x \right) = F_{41}\! \left(x \right)+F_{88}\! \left(x \right)
F_{88}\! \left(x \right) = F_{89}\! \left(x \right)+F_{98}\! \left(x \right)
F_{89}\! \left(x \right) = F_{47}\! \left(x \right)+F_{48}\! \left(x \right)+F_{90}\! \left(x \right)
F_{90}\! \left(x \right) = F_{4}\! \left(x \right) F_{91}\! \left(x \right)
F_{91}\! \left(x \right) = F_{45}\! \left(x \right)+F_{92}\! \left(x \right)
F_{92}\! \left(x \right) = F_{89}\! \left(x \right)+F_{93}\! \left(x \right)
F_{93}\! \left(x \right) = F_{94}\! \left(x \right)
F_{94}\! \left(x \right) = F_{4}\! \left(x \right) F_{95}\! \left(x \right)
F_{95}\! \left(x \right) = F_{96}\! \left(x \right)+F_{97}\! \left(x \right)
F_{96}\! \left(x \right) = F_{54}\! \left(x \right)
F_{97}\! \left(x \right) = F_{94}\! \left(x \right)
F_{98}\! \left(x \right) = 2 F_{47}\! \left(x \right)+F_{71}\! \left(x \right)+F_{99}\! \left(x \right)
F_{99}\! \left(x \right) = F_{100}\! \left(x \right) F_{4}\! \left(x \right)
F_{100}\! \left(x \right) = F_{101}\! \left(x \right)+F_{83}\! \left(x \right)
F_{101}\! \left(x \right) = F_{102}\! \left(x \right)+F_{103}\! \left(x \right)
F_{102}\! \left(x \right) = 2 F_{47}\! \left(x \right)+F_{71}\! \left(x \right)+F_{99}\! \left(x \right)
F_{103}\! \left(x \right) = F_{104}\! \left(x \right)
F_{104}\! \left(x \right) = F_{105}\! \left(x \right) F_{4}\! \left(x \right)
F_{105}\! \left(x \right) = F_{106}\! \left(x \right)+F_{107}\! \left(x \right)
F_{106}\! \left(x \right) = F_{77}\! \left(x \right)
F_{107}\! \left(x \right) = F_{104}\! \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_41(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) + F_23(x))
Eq(F_11(x), F_12(x))
Eq(F_12(x), F_13(x)*F_4(x))
Eq(F_13(x), F_14(x) + F_17(x))
Eq(F_14(x), F_1(x) + F_15(x))
Eq(F_15(x), F_16(x))
Eq(F_16(x), F_14(x)*F_4(x))
Eq(F_17(x), F_11(x) + F_18(x))
Eq(F_18(x), F_19(x))
Eq(F_19(x), F_20(x)*F_4(x))
Eq(F_20(x), F_21(x) + F_22(x))
Eq(F_21(x), F_4(x))
Eq(F_22(x), F_19(x))
Eq(F_23(x), F_24(x))
Eq(F_24(x), F_25(x)*F_4(x))
Eq(F_25(x), F_26(x) + F_32(x))
Eq(F_26(x), F_27(x) + F_30(x))
Eq(F_27(x), F_28(x))
Eq(F_28(x), F_29(x)*F_4(x))
Eq(F_29(x), F_1(x) + F_27(x))
Eq(F_30(x), F_31(x))
Eq(F_31(x), F_26(x)*F_4(x))
Eq(F_32(x), F_33(x) + F_34(x))
Eq(F_33(x), F_24(x))
Eq(F_34(x), F_35(x))
Eq(F_35(x), F_36(x)*F_4(x))
Eq(F_36(x), F_37(x) + F_40(x))
Eq(F_37(x), F_38(x))
Eq(F_38(x), F_39(x))
Eq(F_39(x), F_27(x)*F_4(x))
Eq(F_40(x), F_35(x))
Eq(F_41(x), F_42(x) + F_59(x))
Eq(F_42(x), F_43(x))
Eq(F_43(x), F_4(x)*F_44(x))
Eq(F_44(x), F_14(x) + F_45(x))
Eq(F_45(x), F_42(x) + F_46(x))
Eq(F_46(x), F_47(x) + F_48(x) + F_58(x))
Eq(F_47(x), 0)
Eq(F_48(x), F_4(x)*F_49(x))
Eq(F_49(x), F_50(x) + F_53(x))
Eq(F_50(x), F_4(x) + F_51(x))
Eq(F_51(x), F_52(x))
Eq(F_52(x), F_15(x)*F_4(x))
Eq(F_53(x), F_54(x) + F_56(x))
Eq(F_54(x), F_47(x) + F_48(x) + F_55(x))
Eq(F_55(x), F_4(x)*F_42(x))
Eq(F_56(x), F_57(x))
Eq(F_57(x), F_4(x)*F_46(x))
Eq(F_58(x), F_4(x)*F_45(x))
Eq(F_59(x), F_47(x) + F_60(x) + F_86(x))
Eq(F_60(x), F_4(x)*F_61(x))
Eq(F_61(x), F_62(x) + F_66(x))
Eq(F_62(x), F_27(x) + F_63(x))
Eq(F_63(x), F_31(x) + F_47(x) + F_64(x))
Eq(F_64(x), F_4(x)*F_65(x))
Eq(F_65(x), F_15(x) + F_30(x))
Eq(F_66(x), F_67(x) + F_70(x))
Eq(F_67(x), F_47(x) + F_60(x) + F_68(x))
Eq(F_68(x), F_4(x)*F_69(x))
Eq(F_69(x), F_42(x) + F_67(x))
Eq(F_70(x), F_47(x) + F_71(x) + F_82(x) + F_84(x))
Eq(F_71(x), F_4(x)*F_72(x))
Eq(F_72(x), F_73(x) + F_76(x))
Eq(F_73(x), F_38(x) + F_74(x))
Eq(F_74(x), F_75(x))
Eq(F_75(x), F_30(x)*F_4(x))
Eq(F_76(x), F_77(x) + F_79(x))
Eq(F_77(x), 2*F_47(x) + F_71(x) + F_78(x))
Eq(F_78(x), F_4(x)*F_67(x))
Eq(F_79(x), F_80(x))
Eq(F_80(x), F_4(x)*F_81(x))
Eq(F_81(x), 2*F_47(x) + F_71(x) + F_82(x))
Eq(F_82(x), F_4(x)*F_83(x))
Eq(F_83(x), F_67(x) + F_81(x))
Eq(F_84(x), F_4(x)*F_85(x))
Eq(F_85(x), F_46(x) + F_81(x))
Eq(F_86(x), F_4(x)*F_87(x))
Eq(F_87(x), F_41(x) + F_88(x))
Eq(F_88(x), F_89(x) + F_98(x))
Eq(F_89(x), F_47(x) + F_48(x) + F_90(x))
Eq(F_90(x), F_4(x)*F_91(x))
Eq(F_91(x), F_45(x) + F_92(x))
Eq(F_92(x), F_89(x) + F_93(x))
Eq(F_93(x), F_94(x))
Eq(F_94(x), F_4(x)*F_95(x))
Eq(F_95(x), F_96(x) + F_97(x))
Eq(F_96(x), F_54(x))
Eq(F_97(x), F_94(x))
Eq(F_98(x), 2*F_47(x) + F_71(x) + F_99(x))
Eq(F_99(x), F_100(x)*F_4(x))
Eq(F_100(x), F_101(x) + F_83(x))
Eq(F_101(x), F_102(x) + F_103(x))
Eq(F_102(x), 2*F_47(x) + F_71(x) + F_99(x))
Eq(F_103(x), F_104(x))
Eq(F_104(x), F_105(x)*F_4(x))
Eq(F_105(x), F_106(x) + F_107(x))
Eq(F_106(x), F_77(x))
Eq(F_107(x), F_104(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, 3, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "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, 3, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "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, 3, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"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": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 2], [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": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 2], [1, 2], [1, 2], [1, 2]]}, {"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, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"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, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "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": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "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, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 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, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"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": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [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": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 2], [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, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [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": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [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": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [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, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 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": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [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": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [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"}}, {"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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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]]}], "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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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]]}], "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]]}], "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": [1, 0, 3, 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, 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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 3], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 3], [1, 2]]}, {"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": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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": [[0, 3]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"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": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 3]]}, {"patt": [0, 2, 1], "pos": [[1, 1], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 3], [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, 1], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 1], [1, 1], [1, 1], [1, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 3], [1, 3], [1, 3], [1, 3]]}, {"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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 3], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 3], [1, 2]]}, {"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": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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": [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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"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": [1, 0], "pos": [[0, 2], [0, 2]]}, {"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": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 3]]}, {"patt": [0, 2, 1], "pos": [[1, 1], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 3], [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, 1], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 1], [1, 1], [1, 1], [1, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 3], [1, 3], [1, 3], [1, 3]]}, {"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], "pos": [[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]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"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": [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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"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": [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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"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], "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, 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]]}], "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], "pos": [[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]]}], "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": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 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": [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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"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": [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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"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"}}, {"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, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [[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, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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], [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]]}], "requirements": []}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 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, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 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": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 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, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 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_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, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [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": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 2]]}, {"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, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [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, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[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": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [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": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [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": [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, 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": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[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": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [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": [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]]}], "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]]}], "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": [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": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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], "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": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [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": [1, 0], "pos": [[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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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], "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]]}], "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]]}], "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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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": [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": [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": [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": [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": [], "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": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 0]]}, {"patt": [1, 0], "pos": [[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, 2]]}, {"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, 2], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 2]]}], "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": [1, 0], "pos": [[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]]}], "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": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[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": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 0]]}, {"patt": [1, 0], "pos": [[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": [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, 2]]}, {"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, 2], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 2]]}], "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]]}], "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, 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": [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"}}, {"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": [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, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 3], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 3], [1, 2]]}, {"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": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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, 2]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"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, 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": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [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, 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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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], "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": [1, 0], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"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": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [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, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 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": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [[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": [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, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 4], [1, 2]]}, {"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, 4], [1, 4], [1, 2]]}, {"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": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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": [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": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 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, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 1], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}], "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, 3]]}, {"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, 3], [1, 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, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 1], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 3], [0, 1]]}, {"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, 3], [0, 3], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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, 3], [1, 3]]}, {"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, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 4], [1, 2]]}, {"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, 4], [1, 4], [1, 2]]}, {"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": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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], "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": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 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, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 1], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}], "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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [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, 3]]}, {"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, 3], [1, 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, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 1], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [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], [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": [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": [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, 2], [0, 2], [0, 0]]}], "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": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 3], [0, 1]]}, {"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, 3], [0, 3], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 3], [0, 1]]}, {"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, 3], [0, 3], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [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"}}, {"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]]}], "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], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[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, 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, 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": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[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, 2], [0, 2], [0, 0]]}], "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"}}, {"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, 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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 3], [0, 1]]}, {"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, 3], [0, 3], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 3], [0, 1]]}, {"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, 3], [0, 3], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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"}}, {"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": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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": [[0, 3]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"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, 0], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 3]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 3]]}, {"patt": [0, 2, 1], "pos": [[1, 1], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 1], [1, 1], [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, 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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 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, 2], [0, 2]]}, {"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, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 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], "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, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"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, 0], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 3]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 3]]}, {"patt": [0, 2, 1], "pos": [[1, 1], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 1], [1, 1], [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], [1, 3]]], "strategy_class": "FactorStrategy", "workable": true}}, {"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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"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, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 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, 2], [0, 2]]}, {"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, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 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, 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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 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, 2], [0, 2]]}, {"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, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [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, 2], [0, 2]]}, {"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, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 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_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": [[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": [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, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 4], [1, 2]]}, {"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, 4], [1, 4], [1, 2]]}, {"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": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[0, 4]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 1]]}, {"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, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 3]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 3]]}, {"patt": [0, 2, 1], "pos": [[1, 1], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 1], [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": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 1], [1, 1], [1, 1], [1, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"patt": [0], "pos": [[1, 4]]}]]}, {"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": [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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"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]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 2, "gps": [{"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[0, 1]]}, {"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, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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, 1]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[0, 4]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 1]]}, {"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, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 3]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 3]]}, {"patt": [0, 2, 1], "pos": [[1, 1], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 1], [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": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 1], [1, 1], [1, 1], [1, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"patt": [0], "pos": [[1, 4]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 2]], [[1, 0], [1, 1], [1, 3], [1, 4]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"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, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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"}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"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, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "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, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "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, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 3]]}]]}, "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": [[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": [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, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 4], [1, 2]]}, {"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, 4], [1, 4], [1, 2]]}, {"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": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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": [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": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 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, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 1], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}], "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": [], "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, 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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [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, 2], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 2]]}, {"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": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [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": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[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": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [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, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [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, 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, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [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, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 2]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 2]]}, {"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, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [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": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"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": [1, 0], "pos": [[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": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [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, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [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, 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": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}], "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": [], "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": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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": [[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, 3, 2], "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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 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], "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": [1, 0, 3, 2], "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, 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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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], "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": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [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": [1, 0], "pos": [[0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [1, 0], "pos": [[0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[1, 1]]}]]}, "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, 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, 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], "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": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 2]]}], "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, 3], [1, 3]]}, {"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, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 4], [1, 2]]}, {"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, 4], [1, 4], [1, 2]]}, {"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": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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": [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": [1, 0], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"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": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [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, 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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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], "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": [1, 0], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"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": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [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": [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, 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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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], "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": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 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, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 1], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"patt": [0], "pos": [[1, 1]]}], [{"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, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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, 1]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[0, 4]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"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, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 1]]}, {"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, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 4]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 4]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 4]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 3]]}, {"patt": [0, 2, 1], "pos": [[1, 1], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 1], [1, 1], [1, 1], [1, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"patt": [0], "pos": [[1, 4]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 2]], [[1, 0], [1, 1], [1, 3], [1, 4]]], "strategy_class": "FactorStrategy", "workable": true}}, {"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, 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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 2]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"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, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"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, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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"}}, {"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": [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, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 4], [1, 2]]}, {"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, 4], [1, 4], [1, 2]]}, {"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": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[0, 4]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 1]]}, {"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, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 3]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 3]]}, {"patt": [0, 2, 1], "pos": [[1, 1], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 1], [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": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 1], [1, 1], [1, 1], [1, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"patt": [0], "pos": [[1, 4]]}]]}, {"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": [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, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "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, 2]]}, {"patt": [0], "pos": [[0, 1]]}, {"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, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 4]]}, {"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": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 3], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 4], [0, 4], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 4], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 3]]}], [{"patt": [0], "pos": [[0, 4]]}]]}], "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": [[0, 4]]}, {"patt": [0], "pos": [[0, 5]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"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, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 4]]}, {"patt": [1, 0], "pos": [[1, 5], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 5], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 5], [1, 4]]}, {"patt": [1, 0], "pos": [[1, 5], [1, 5]]}, {"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, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 4]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 4]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 4]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 3]]}, {"patt": [0, 2, 1], "pos": [[1, 1], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 1], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 4], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 5], [1, 5], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 5], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 1], [1, 1], [1, 1], [1, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"patt": [0], "pos": [[1, 4]]}], [{"patt": [0], "pos": [[1, 5]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 2]], [[1, 0], [1, 1], [1, 3], [1, 4], [1, 5]]], "strategy_class": "FactorStrategy", "workable": true}}, {"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, 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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"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, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 4]]}, {"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": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 3], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 4], [0, 4], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 4], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 3]]}], [{"patt": [0], "pos": [[0, 4]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"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, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 4]]}, {"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": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 3], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 4], [0, 4], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 4], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 3]]}], [{"patt": [0], "pos": [[0, 4]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 1]]}], "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": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 2], [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": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 2], [1, 2], [1, 2], [1, 2]]}, {"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, 3, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "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": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 2], [1, 2]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 2], [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, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "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, 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": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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": [1, 0, 3, 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, 2], [1, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 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": [[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": [1, 0], "pos": [[1, 2], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 2]]}, {"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, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}]]}, {"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": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [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]]}]]}, "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"}}, "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]]}], "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]]}], "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, 1]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [1, 0], "pos": [[0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 2, "gps": [{"patt": [0], "pos": [[0, 0]]}], "ignore_parent": false, "include_empty": true, "indices": [0], "own_col": true, "own_row": true, "strategy_class": "RequirementPlacementStrategy"}}, "rule_class": "EquivalenceRule"}]}, {"class_module": "comb_spec_searcher.strategies.rule", "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, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 0]]}, {"patt": [1, 0], "pos": [[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": [], "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, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[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": [], "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, 2], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 2]]}, {"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": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}]]}, {"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, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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"}}, "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, 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, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[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, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"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": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [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"}}, "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": [[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, 2], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 2]]}, {"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": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}]]}, {"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, 0]]}, {"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": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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"}}, "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": [[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": [1, 0], "pos": [[1, 2], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 2]]}, {"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, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}]]}, {"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": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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"}}, "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": [[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": [1, 0], "pos": [[1, 2], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 2]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 2]]}, {"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, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [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": [], "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, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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, 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"}}, "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]]}], "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], "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": [1, 0], "pos": [[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], "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": [1, 0], "pos": [[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": [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": [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": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [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, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [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", "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, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 2]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 2]]}, {"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, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [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": [], "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, 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": [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": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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, 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"}}, "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]]}], "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]]}], "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": [], "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": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 4], [1, 2]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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": [[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": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [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": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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"}}, "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, 1]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"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]]}], "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": [], "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, 2]]}, {"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, 2], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 2]]}], "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, 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": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[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, 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, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 2]]}], "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": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[0, 4]]}, {"patt": [0], "pos": [[0, 5]]}, {"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": [1, 0], "pos": [[1, 5], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 5], [1, 4]]}, {"patt": [1, 0], "pos": [[1, 5], [1, 5]]}, {"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": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 4], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 5], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 5], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 5], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 4], [1, 5], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 5], [1, 5], [1, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 2], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 4], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 5], [1, 5], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 5], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}], [{"patt": [0], "pos": [[1, 4]]}], [{"patt": [0], "pos": [[1, 5]]}]]}, {"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, 3]]}, {"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, 3], [1, 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, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 1], [1, 3], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"patt": [0], "pos": [[1, 1]]}], [{"patt": [0], "pos": [[1, 3]]}]]}, {"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": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 3], [0, 1]]}, {"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, 3], [0, 3], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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]]}]]}, "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, 3]]}, {"patt": [0], "pos": [[0, 0]]}], "ignore_parent": false, "include_empty": true, "indices": [0, 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": [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": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 4], [1, 2]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[0, 4]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"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, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 1]]}, {"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, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 4]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 4]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 4]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 3]]}, {"patt": [0, 2, 1], "pos": [[1, 1], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 1], [1, 1], [1, 1], [1, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"patt": [0], "pos": [[1, 4]]}]]}, {"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, 2], [0, 2]]}, {"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, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "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, 2]]}, {"patt": [0], "pos": [[0, 1]]}, {"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": [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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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"}}, "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, 2], [0, 2]]}, {"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, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "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, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "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, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 3]]}, {"patt": [0, 1], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 3]]}]]}, "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, 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": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 4], [1, 2]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [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": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[0, 4]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"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, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 1]]}, {"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, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 4]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 4]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 4]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 3]]}, {"patt": [0, 2, 1], "pos": [[1, 1], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 1], [1, 1], [1, 1], [1, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"patt": [0], "pos": [[1, 4]]}]]}, {"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, 2], [0, 2]]}, {"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, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "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, 2]]}, {"patt": [0], "pos": [[0, 1]]}, {"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": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[0, 4]]}, {"patt": [0], "pos": [[0, 5]]}, {"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": [1, 0], "pos": [[1, 5], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 5], [1, 4]]}, {"patt": [1, 0], "pos": [[1, 5], [1, 5]]}, {"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": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 4], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 5], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 5], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 5], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 4], [1, 5], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 5], [1, 5], [1, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 2], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 4], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 5], [1, 5], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 5], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}], [{"patt": [0], "pos": [[1, 4]]}], [{"patt": [0], "pos": [[1, 5]]}]]}, {"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": [[0, 4]]}, {"patt": [0], "pos": [[0, 5]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"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, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 4]]}, {"patt": [1, 0], "pos": [[1, 5], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 5], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 5], [1, 4]]}, {"patt": [1, 0], "pos": [[1, 5], [1, 5]]}, {"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, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 4]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 4]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 4]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 3]]}, {"patt": [0, 2, 1], "pos": [[1, 1], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 1], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 4], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 5], [1, 5], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 5], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 1], [1, 1], [1, 1], [1, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"patt": [0], "pos": [[1, 4]]}], [{"patt": [0], "pos": [[1, 5]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [], "pos": []}], "requirements": []}, {"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, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"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, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 2, "gps": [{"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[0, 0]]}], "ignore_parent": false, "include_empty": true, "indices": [0, 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": [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, 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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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, 2], [0, 2]]}, {"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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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, 2], [0, 2]]}, {"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": [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, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [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": [0, 1], "pos": [[0, 2], [0, 2]]}, {"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": [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, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"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, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 4]]}, {"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": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 3], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 4], [0, 4], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 4], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}], [{"patt": [0], "pos": [[0, 4]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"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, 2], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 3], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 2]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 3]]}, {"patt": [1, 0], "pos": [[0, 4], [0, 4]]}, {"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": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 1], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 2], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 3], [0, 4], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 4], [0, 4], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 4], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 3]]}], [{"patt": [0], "pos": [[0, 4]]}]]}, "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, 0]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[0, 4]]}, {"patt": [0], "pos": [[0, 5]]}, {"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": [1, 0], "pos": [[1, 5], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 5], [1, 4]]}, {"patt": [1, 0], "pos": [[1, 5], [1, 5]]}, {"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": [0, 2, 1], "pos": [[1, 0], [1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 4], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 5], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 2], [1, 5], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 3], [1, 5], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 4], [1, 5], [1, 2]]}, {"patt": [1, 2, 0], "pos": [[1, 5], [1, 5], [1, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 2], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 4], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 5], [1, 5], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 2], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 5], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[1, 3]]}], [{"patt": [0], "pos": [[1, 4]]}], [{"patt": [0], "pos": [[1, 5]]}]]}, {"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": [[0, 4]]}, {"patt": [0], "pos": [[0, 5]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"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, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 4], [1, 4]]}, {"patt": [1, 0], "pos": [[1, 5], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 5], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 5], [1, 4]]}, {"patt": [1, 0], "pos": [[1, 5], [1, 5]]}, {"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, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 0], [1, 4]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 0], [1, 1], [1, 4]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[1, 1], [1, 1], [1, 4]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 1], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 3], [1, 3]]}, {"patt": [0, 2, 1], "pos": [[1, 1], [1, 3], [1, 3]]}, {"patt": [1, 2, 0], "pos": [[1, 1], [1, 1], [1, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 0], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 1], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 3], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 4], [1, 5], [1, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[1, 0], [1, 5], [1, 5], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 0], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 1], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 3], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 4], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 0], [1, 0], [1, 5], [1, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[1, 1], [1, 1], [1, 1], [1, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}], [{"patt": [0], "pos": [[1, 4]]}], [{"patt": [0], "pos": [[1, 5]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [], "pos": []}], "requirements": []}, {"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, 2], [0, 2]]}, {"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": [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, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"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": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 2], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 0], [0, 0], [0, 3], [0, 0]]}, {"patt": [1, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[0, 1]]}], [{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[0, 3]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 2, "gps": [{"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[0, 0]]}], "ignore_parent": false, "include_empty": true, "indices": [0, 0, 0, 0], "own_col": true, "own_row": true, "strategy_class": "RequirementPlacementStrategy"}}, "rule_class": "EquivalenceRule"}]}, {"class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "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": [], "pos": []}], "requirements": []}, "rule_class": "VerificationRule", "strategy": {"class_module": "comb_spec_searcher.strategies.strategy", "strategy_class": "EmptyStrategy"}}]}