scripting the geometry

General discussion about TexGen.

Moderators: Martin, Developers

louisepb
Project Leader
Posts: 998
Joined: Tue Dec 08, 2009 2:27 pm
Location: Nottingham

Re: scripting the geometry

Post by louisepb »

Hi Yanie,

You don't need to do this. The SaveVoxelMesh function creates the periodic boundary conditions and calls CreatePeriodicBoundaries itself.

Louise
dyeyanie
Regular
Posts: 154
Joined: Thu Oct 06, 2011 10:39 am

Re: scripting the geometry

Post by dyeyanie »

Hi Louise,

It means that, I just need to comment only the geometry and voxel mesh section in order to get the ABAQUS inp files? I'm afraid I had missed some section in my coding.

Yanie
louisepb
Project Leader
Posts: 998
Joined: Tue Dec 08, 2009 2:27 pm
Location: Nottingham

Re: scripting the geometry

Post by louisepb »

Hi Yanie,

You need to create your geometry, create a CVoxelMesh() class and then call the SaveVoxelMesh member of that class with the required parameters as shown in the API documentation.

Louise
dyeyanie
Regular
Posts: 154
Joined: Thu Oct 06, 2011 10:39 am

Re: scripting the geometry

Post by dyeyanie »

Hi Louise,

It sounds I arranged them correctly but I still couldn't run my code in Texgen due to the functions that I created. Could you help me to debug them? I'm a beginner in Python. Here is the code;

Code: Select all

def patternVec(patternChoice): # 1 = warp (blue) , 0 = weft (red)
    pattern []
	patternType = patternChoice
    if patternType == 1:
        print =[ 
		[1,1,0,0],
		[1,1,0,0],
		[0,0,1,1],
		[0,0,1,1]]
		
	else patternType == 2:
		print =[
		[1,0,0,1,1,1,0,1], 
		[1,1,1,0,0,0,1,1],
		[0,1,1,0,0,1,1,1],
		[0,0,1,1,1,1,0,0],
		[0,1,1,1,1,1,0,0],
		[0,1,1,0,0,1,1,0],
		[1,1,0,1,0,0,1,1],
		[1,0,0,1,1,0,0,1]]
		return pattern

#Parameter of geometry
T = 0.36 # thickness of matrix 
sp = 1  # spacing between the adjacent yarns 
yarnHeightX=0.18 # yarn height parallel in X 
yarnHeightY=0.09 # yarn height parallel in Y 
yarnWidthX=0.8 #width of yarn in X (Variable #4)
yarnWidthY=0.8 #width of yarn in Y 

#Inputs for Voxel Mesh
nXvoxel = 338 
nYvoxel = 338
nZvoxel = 5

#Pattern Generation
pattern = patternVec(1)
m=patternVec[0].size()
n=patternVec[0].size()
weave = CTextileWeave2D(m, n, sp, T, 0, False) #Geometry generation class of 2Dweave
weave.SetGapSize(0) # Gap size between upper and lower yarns

for x in range(m):
	for y in range(n):
		if pattern[m-1-y][x] == 1:
			weave.SwapPosition(x, y)

# Create a new textile to contain the combination pattern
CombiTextile = CTextile()

# Get the yarns from the first textile and add to the combination pattern textile
Yarns = weave.GetYarns()
print Yarns.size()
for Yarn in Yarns:
    CombiTextile.AddYarn(Yarn)

# Create 2nd pattern: 
patternVec(2) # PLEASE CHOOSE FROM NO. 2 - 65 ONLY
m=patternVec[0].size()
n=patternVec[0].size()
weave1 = CTextileWeave2D(m, n, sp, T, 0, False) #Geometry generation class of 2Dweave
weave1.SetGapSize(0) # Gap size between upper and lower yarns

for x in range(m):
	for y in range(n):
		if pattern[m-1-y][x] == 1:
			weave1.SwapPosition(x, y)

# The yarns will be offset by the end yarns of the first textile
Offset = XYZ(m,0,0)

# Get the yarns from the second textile
Yarns1 = weave1.GetYarns()
# For each yarn in the second textile..
for Yarn1 in Yarns1:
    # Get the nodes in the yarn
    Nodes = Yarn1.GetMasterNodes()
    i = 0
    # Offset each node
    for Node in Nodes:
        Node.SetPosition( Node.GetPosition() - Offset )
        Yarn1.ReplaceNode( i, Node )
        i += 1
    # and add to the combined textile
    CombiTextile.AddYarn(Yarn1)
	
for x in range(m): 
Yarn = CYarn ()
# Set the interpolation function
    Yarn.AssignInterpolation(CInterpolationBezier())

    # Assign a constant cross-section all along the yarn of lenticular shape
    Yarn.AssignSection(CYarnSectionConstant(CSectionLenticular(yarnWidthX, yarnHeightX)))
		
    # Set the resolution of the surface mesh created
    Yarn.SetResolution(20)
    	
    # Add the yarn to our textile
    Textile.AddYarn(Yarn)

#for Yarn in Yarns in weft direction: 
for y in range(n): 
Yarn = CYarn ()
# Set the interpolation function
    Yarn.AssignInterpolation(CInterpolationBezier())

    # Assign a constant cross-section all along the yarn of lenticular shape
    Yarn.AssignSection(CYarnSectionConstant(CSectionLenticular(yarnWidthY, yarnHeightY)))
		
    # Set the resolution of the surface mesh created
    Yarn.SetResolution(20)
   	
    # Add the yarn to our textile
    Textile.AddYarn(Yarn)	


# Offset the domain to include the second textile
Min -= Offset
NewDomain = CDomainPlanes( Min, Max )
CombiTextile.AssignDomain( NewDomain )

# Add the textile with the name "Combi1"
AddTextile("Combi1", CombiTextile)

#Saving the file
SaveToXML(r"C:\Users\Public\Public_Documents\YANIE\ABAQUSTexGen\MembraneAlgorithm\MembraneProject\TexGen\FibreVolumeFractionLamina\optislang\TextileGeneration\Combi1.tg3", "Combi1", OUTPUT_STANDARD)

#Meshing domain - ABAQUS Voxel Mesh
myMesh = CVoxelMesh()
#SaveVoxelMesh  (CTextile  &Textile, string OutputFilename, int XVoxNum, int YVoxNum, int ZVoxNum, bool bOutputMatrix, bool bOutputYarns, int iBoundariesTied, int iElementType=0)
myMesh.SaveVoxelMesh(Textile, "Combi1.inp", nXvoxel, nYvoxel, nZvoxel,1,1, 0, 0)
Yanie
louisepb
Project Leader
Posts: 998
Joined: Tue Dec 08, 2009 2:27 pm
Location: Nottingham

Re: scripting the geometry

Post by louisepb »

Hi Yanie,

I've just had a quick look at this. You seem to be inconsistent in your use of Textile and CombiTextile. Textile doesn't seem to have been defined anywhere but you add yarns to it and then use it in the call to SaveVoxelMesh.

I would suggest that you learn to use the Python debugger and then you will be able to step through your script and see where the problems lie. (You would need to add a line to import the TexGen core package to the beginning to make it a stand alone script ).

Louise
dyeyanie
Regular
Posts: 154
Joined: Thu Oct 06, 2011 10:39 am

Re: scripting the geometry

Post by dyeyanie »

hi Louise,

Finally, I managed to display the geometry via python code. However, there are some error in this generation. First, I got this message which saying I don't have enough master nodes to project.
Below is the message error that I received;
Building yarn slave nodes
Unable to build slave nodes, not enough master nodes specified
Adding yarn surface to renderer
Building yarn slave nodes
Unable to build slave nodes, not enough master nodes specified
Adding yarn surface to mesh
Building yarn slave nodes
Unable to build slave nodes, not enough master nodes specified
Adding domain of "Combi1" to renderer
Adding domain surface to renderer
Adding domain of "Combi1" to renderer

Secondly, I would like to generate a pattern with 24 x 24 via a combination of 2 patterns (24x 12 size) at one end so I could get 24 x 24 size. But what I get is an overlapping geometry as attached with 2 patterns generating 24 x 24 size. In addition to that, the shape of the yarn also remain unchanged even I did commented to what shape that I desired.

Hope you may help me to fix this matter. Attached herewith is the code that I mentioned to.

Code: Select all

import sys
from TexGen.Abaqus import *

def patternVec(s): # 1 = warp (blue) , 0 = weft (red)
	if s == 1:
		return[[0,0,0,0,0,1,0,0,0,0,0,0],
			[0,0,1,0,0,0,0,0,0,0,1,0],
			[0,0,0,0,0,0,0,1,0,0,0,0],
			[0,0,0,0,1,0,0,0,0,0,0,0],
			[0,1,0,0,0,0,0,0,0,1,0,0],
			[0,0,0,0,0,0,1,0,0,0,0,0],
			[0,0,0,1,0,0,0,0,0,0,0,1],
			[1,0,0,0,0,0,0,0,1,0,0,0],
			[0,0,0,0,0,1,0,0,0,0,0,0],
			[0,0,1,0,0,0,0,0,0,0,1,0],
			[0,0,0,0,0,0,0,1,0,0,0,0],
			[0,0,0,0,1,0,0,0,0,0,0,0],
			[0,0,0,0,0,1,0,0,0,0,0,0],
			[0,0,1,0,0,0,0,0,0,0,1,0],
			[0,0,0,0,0,0,0,1,0,0,0,0],
			[0,0,0,0,1,0,0,0,0,0,0,0],
			[0,1,0,0,0,0,0,0,0,1,0,0],
			[0,0,0,0,0,0,1,0,0,0,0,0],
			[0,0,0,1,0,0,0,0,0,0,0,1],
			[1,0,0,0,0,0,0,0,1,0,0,0],
			[0,0,0,0,0,1,0,0,0,0,0,0],
			[0,0,1,0,0,0,0,0,0,0,1,0],
			[0,0,0,0,0,0,0,1,0,0,0,0],
			[0,0,0,0,1,0,0,0,0,0,0,0]]
	else:
		return [
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[1,0,1,0,1,0,1,0,1,0,1,0]]
			

#Parameter of geometry
T = 0.36 # thickness of matrix 
sp = 1  # spacing between the adjacent yarns 
yarnHeightX=0.18 # yarn height parallel in X 
yarnHeightY=0.09 # yarn height parallel in Y 
yarnWidthX=0.8 #width of yarn in X (Variable #4)
yarnWidthY=0.8 #width of yarn in Y 

#Inputs for Voxel Mesh
nXvoxel = 338 
nYvoxel = 338
nZvoxel = 5

#Pattern Generation
patternList=patternVec(1) # DON'T CHANGE THIS FOR COUPLING - IT MUST BE MAINTAIN WITH 1
m=len(patternList)
n=len(patternList[0])
weave = CTextileWeave2D(m, n, sp, T, 0, False) #Geometry generation class of 2Dweave
weave.SetGapSize(0) # Gap size between upper and lower yarns

for x in range(m):
	for y in range(n):
		if patternList[m-1-x][y] == 1:
			weave.SwapPosition(x, y)

# Create a new textile to contain the combination pattern
CombiTextile = CTextile()

# Get the yarns from the first textile and add to the combination pattern textile
Yarns = weave.GetYarns()
print Yarns.size()
for Yarn in Yarns:
    CombiTextile.AddYarn(Yarn)

# Assign the domain and get its limits
weave.AssignDefaultDomain()
Domain = weave.GetDefaultDomain()
Min = XYZ()
Max = XYZ()
Domain.GetBoxLimits( Min, Max )

# Create 2nd pattern: 
patternList=patternVec(2) # PLEASE CHOOSE HERE
m=len(patternList)
n=len(patternList[0])
weave1 = CTextileWeave2D(m, n, sp, T, 0, False) #Geometry generation class of 2Dweave
weave1.SetGapSize(0) # Gap size between upper and lower yarns

for x in range(m):
	for y in range(n):
		if patternList[m-1-x][y] == 1:
			weave1.SwapPosition(x, y)

# The yarns will be offset by the end yarns of the first textile
Offset = XYZ(0,n,0)

# Get the yarns from the second textile
Yarns1 = weave1.GetYarns()
print Yarns1.size()
# For each yarn in the second textile..
for Yarn1 in Yarns1:
    # Get the nodes in the yarn
    Nodes = Yarn1.GetMasterNodes()
    i = 0
    # Offset each node
    for Node in Nodes:
        Node.SetPosition( Node.GetPosition() - Offset )
        Yarn1.ReplaceNode( i, Node )
        i += 1
    # and add to the combined textile
    CombiTextile.AddYarn(Yarn1)
	
for x in range(m): 
    Yarn = CYarn ()
    # Set the interpolation function
    Yarn.AssignInterpolation(CInterpolationBezier())

    # Assign a constant cross-section all along the yarn of lenticular shape
    Yarn.AssignSection(CYarnSectionConstant(CSectionLenticular(yarnWidthX, yarnHeightX)))
		
    # Set the resolution of the surface mesh created
    Yarn.SetResolution(20)
    	
    # Add the yarn to our textile
    CombiTextile.AddYarn(Yarn)

#for Yarn in Yarns in weft direction: 
for y in range(n): 
    Yarn = CYarn ()
    # Set the interpolation function
    Yarn.AssignInterpolation(CInterpolationBezier())

    # Assign a constant cross-section all along the yarn of lenticular shape
    Yarn.AssignSection(CYarnSectionConstant(CSectionLenticular(yarnWidthY, yarnHeightY)))
		
    # Set the resolution of the surface mesh created
    Yarn.SetResolution(20)
   	
    # Add the yarn to our textile
    CombiTextile.AddYarn(Yarn)


# Offset the domain to include the second textile
print "type(Offset)=" ,type(Offset)
Min -= Offset
NewDomain = CDomainPlanes( Min, Max )
CombiTextile.AssignDomain( NewDomain )

# Add the textile with the name "Combi1"
AddTextile("Combi1", CombiTextile)

#Saving the file
#SaveToXML(r"C:\Users\Public\Public_Documents\YANIE\ABAQUSTexGen\MembraneAlgorithm\MembraneProject\TexGen\TextileGeneration\Combi1.tg3", "Combi1", OUTPUT_STANDARD)

#Meshing domain - ABAQUS Voxel Mesh
#myMesh = CVoxelMesh()
#SaveVoxelMesh  (CTextile  &Textile, string OutputFilename, int XVoxNum, int YVoxNum, int ZVoxNum, bool bOutputMatrix, bool bOutputYarns, int iBoundariesTied, int iElementType=0)
#myMesh.SaveVoxelMesh(CombiTextile, "Combi1.inp", nXvoxel, nYvoxel, nZvoxel,1,1, 0, 0)




Cheers,
Yanie
Attachments
geo.png
geo.png (139.46 KiB) Viewed 12202 times
dyeyanie
Regular
Posts: 154
Joined: Thu Oct 06, 2011 10:39 am

Re: scripting the geometry

Post by dyeyanie »

Hi Louise,

Do you have any idea how could I modify the offset so that I won't get the overlapped geometry?

Thanks

Yanie
louisepb
Project Leader
Posts: 998
Joined: Tue Dec 08, 2009 2:27 pm
Location: Nottingham

Re: scripting the geometry

Post by louisepb »

Hi Yanie,

You need to work out what the offset should be. Maybe you could see exactly where each textile is positioned individually and then work out how much you need to offset the second one by.

Louise
dyeyanie
Regular
Posts: 154
Joined: Thu Oct 06, 2011 10:39 am

Re: scripting the geometry

Post by dyeyanie »

Hi louise,

Ok, I managed to get the size that I want by modifying the offset. However, the geometry is still not statisfy me. I still get the overlapped geometry instead of combining them side by side. This is the big issue to me.

Yanie
Attachments
geo2.png
geo2.png (113.08 KiB) Viewed 12198 times
louisepb
Project Leader
Posts: 998
Joined: Tue Dec 08, 2009 2:27 pm
Location: Nottingham

Re: scripting the geometry

Post by louisepb »

Hi Yanie,

As I have said before I think you need to step through your code in a debugger to work out exactly what is going on. I can't see what the sections starting for x in range(m): and for y in range(n): are supposed to be doing. They seem to be creating random yarns which you then add to your textile.

Louise
dyeyanie
Regular
Posts: 154
Joined: Thu Oct 06, 2011 10:39 am

Re: scripting the geometry

Post by dyeyanie »

Hi Louise,

For section of x in range (m) and y in range (n), they will construct the pattern vector as I defined in subroutines at initial lines. So from there, they will go line by line and get their position either in warp or weft. I'd tried this with one pattern and it works. The problem is when I tried to combine them with the 2nd pattern.

Yanie
louisepb
Project Leader
Posts: 998
Joined: Tue Dec 08, 2009 2:27 pm
Location: Nottingham

Re: scripting the geometry

Post by louisepb »

Hi Yanie,

Sorry, I didn't make myself clear. This is the section I don't understand:

for x in range(m):
Yarn = CYarn ()
# Set the interpolation function
Yarn.AssignInterpolation(CInterpolationBezier())

# Assign a constant cross-section all along the yarn of lenticular shape
Yarn.AssignSection(CYarnSectionConstant(CSectionLenticular(yarnWidthX, yarnHeightX)))

# Set the resolution of the surface mesh created
Yarn.SetResolution(20)

# Add the yarn to our textile
CombiTextile.AddYarn(Yarn)

#for Yarn in Yarns in weft direction:
for y in range(n):
Yarn = CYarn ()
# Set the interpolation function
Yarn.AssignInterpolation(CInterpolationBezier())

# Assign a constant cross-section all along the yarn of lenticular shape
Yarn.AssignSection(CYarnSectionConstant(CSectionLenticular(yarnWidthY, yarnHeightY)))

# Set the resolution of the surface mesh created
Yarn.SetResolution(20)

# Add the yarn to our textile
CombiTextile.AddYarn(Yarn)

Should this not get the existing yarns and assign interpolation etc rather than creating new ones and adding them to the textile?

Louise
dyeyanie
Regular
Posts: 154
Joined: Thu Oct 06, 2011 10:39 am

Re: scripting the geometry

Post by dyeyanie »

HI Louise,

Thanks for your clarification. Now I know which part that you mentioned before.

Yeah, my intention is to get the existing yarn with some specification which includes the interpolation lines and etc. Is there any way to define them so? Do I need to define them like this??

weave1.SetXYarnWidths(0, 1.0)
weave1.SetXYarnHeights(0, 0.15)
weave1.SetXYarnSpacings(0, 1)

I don't understand the value that you put in the bracket.

Yanie
louisepb
Project Leader
Posts: 998
Joined: Tue Dec 08, 2009 2:27 pm
Location: Nottingham

Re: scripting the geometry

Post by louisepb »

Hi Yanie,

You need to call Textile.GetYarn(index) rather than creating a new yarn.

The parameters to pass to functions (ie the values in the brackets) are all specified in the api documentation here: http://texgen.sourceforge.net/api/

Louise
dyeyanie
Regular
Posts: 154
Joined: Thu Oct 06, 2011 10:39 am

Re: scripting the geometry

Post by dyeyanie »

Hi Louise,

I had tried another approach and it looks closer to what I want. However, I still can't understand to which line that create the overlapped jobs.

Perhaps you could show me some ways to it. Here is the latest code that I've generated.

Code: Select all

import sys
from TexGen.Abaqus import *

def patternVec(s): # 1 = warp (blue) , 0 = weft (red)
	if s == 1:
		return [
			[0,0,0,0,0,1,0,0,0,0,0,0],
			[0,0,1,0,0,0,0,0,0,0,1,0],
			[0,0,0,0,0,0,0,1,0,0,0,0],
			[0,0,0,0,1,0,0,0,0,0,0,0],
			[0,1,0,0,0,0,0,0,0,1,0,0],
			[0,0,0,0,0,0,1,0,0,0,0,0],
			[0,0,0,1,0,0,0,0,0,0,0,1],
			[1,0,0,0,0,0,0,0,1,0,0,0],
			[0,0,0,0,0,1,0,0,0,0,0,0],
			[0,0,1,0,0,0,0,0,0,0,1,0],
			[0,0,0,0,0,0,0,1,0,0,0,0],
			[0,0,0,0,1,0,0,0,0,0,0,0],
			[0,0,0,0,0,1,0,0,0,0,0,0],
			[0,0,1,0,0,0,0,0,0,0,1,0],
			[0,0,0,0,0,0,0,1,0,0,0,0],
			[0,0,0,0,1,0,0,0,0,0,0,0],
			[0,1,0,0,0,0,0,0,0,1,0,0],
			[0,0,0,0,0,0,1,0,0,0,0,0],
			[0,0,0,1,0,0,0,0,0,0,0,1],
			[1,0,0,0,0,0,0,0,1,0,0,0],
			[0,0,0,0,0,1,0,0,0,0,0,0],
			[0,0,1,0,0,0,0,0,0,0,1,0],
			[0,0,0,0,0,0,0,1,0,0,0,0],
			[0,0,0,0,1,0,0,0,0,0,0,0]]
	elif s == 2:
		return [
			[1,0,0,1,1,1,0,1,1,0,0,1], 
			[1,1,1,0,0,0,1,1,1,1,1,0],
			[0,1,1,0,0,1,1,1,0,1,1,0],
			[0,0,1,1,1,1,0,0,0,0,1,1],
			[0,1,1,1,1,1,0,0,0,1,1,1],
			[0,1,1,0,0,1,1,0,0,1,1,0],
			[1,1,0,1,0,0,1,1,1,1,0,1],
			[1,0,0,1,1,0,0,1,1,0,0,1],
			[1,0,0,1,1,1,0,1,1,0,0,1], 
			[1,1,1,0,0,0,1,1,1,1,1,0],
			[0,1,1,0,0,1,1,1,0,1,1,0],
			[0,0,1,1,1,1,0,0,0,0,1,1],
			[1,0,0,1,1,1,0,1,1,0,0,1], 
			[1,1,1,0,0,0,1,1,1,1,1,0],
			[0,1,1,0,0,1,1,1,0,1,1,0],
			[0,0,1,1,1,1,0,0,0,0,1,1],
			[0,1,1,1,1,1,0,0,0,1,1,1],
			[0,1,1,0,0,1,1,0,0,1,1,0],
			[1,1,0,1,0,0,1,1,1,1,0,1],
			[1,0,0,1,1,0,0,1,1,0,0,1],
			[1,0,0,1,1,1,0,1,1,0,0,1], 
			[1,1,1,0,0,0,1,1,1,1,1,0],
			[0,1,1,0,0,1,1,1,0,1,1,0],
			[0,0,1,1,1,1,0,0,0,0,1,1]]
	elif s == 3:
		return [
			[0,0,1,1,0,0,1,1,0,0,1,1], 
			[0,1,1,0,1,0,0,1,0,1,1,0],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[1,1,0,1,0,1,1,0,1,1,0,1],
			[0,0,1,1,0,0,1,1,0,0,1,1], 
			[0,1,1,0,1,0,0,1,0,1,1,0],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[1,1,0,1,0,1,1,0,1,1,0,1],
			[0,0,1,1,0,0,1,1,0,0,1,1], 
			[0,1,1,0,1,0,0,1,0,1,1,0],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[1,1,0,1,0,1,1,0,1,1,0,1],
			[0,0,1,1,0,0,1,1,0,0,1,1], 
			[0,1,1,0,1,0,0,1,0,1,1,0],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[1,1,0,1,0,1,1,0,1,1,0,1],
			[0,0,1,1,0,0,1,1,0,0,1,1], 
			[0,1,1,0,1,0,0,1,0,1,1,0],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[1,1,0,1,0,1,1,0,1,1,0,1],
			[0,0,1,1,0,0,1,1,0,0,1,1], 
			[0,1,1,0,1,0,0,1,0,1,1,0],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[1,1,0,1,0,1,1,0,1,1,0,1]]
	elif s == 4:
		return [
			[0,1,1,1,1,1,1,1,0,1,1,1],
			[1,1,1,1,0,0,0,0,1,0,1,0],
			[0,1,1,1,0,0,0,1,1,1,0,1], 
			[1,0,1,1,0,0,1,1,1,0,1,0],
			[1,1,0,1,0,1,1,1,0,1,1,1],
			[1,1,1,0,1,1,1,0,1,1,1,1], 
			[0,0,0,1,0,1,0,1,1,1,1,1],
			[0,0,1,1,1,0,1,1,1,1,0,0],
			[0,1,1,1,0,1,0,1,1,1,0,0],
			[1,1,1,0,1,1,1,0,1,1,0,0],
			[1,1,0,1,1,1,1,1,0,1,0,1],
			[1,0,1,1,1,1,1,1,1,0,1,1],
			[0,1,1,1,1,0,0,0,0,1,0,1],
			[1,0,1,1,1,0,0,0,1,1,1,0],
			[1,1,0,1,1,0,0,1,1,1,1,1],
			[1,1,1,0,1,0,1,1,1,1,1,1],
			[1,1,1,1,0,1,1,1,1,0,0,0],
			[0,0,0,0,1,0,1,1,1,0,0,0],
			[0,0,0,1,1,1,0,1,1,0,0,1],
			[0,0,1,1,1,1,1,0,1,0,1,1],
			[0,1,1,1,1,1,1,1,0,1,1,1],
			[1,1,1,1,0,0,0,0,1,0,1,0],
			[0,1,1,1,0,0,0,1,1,1,0,1], 
			[1,0,1,1,0,0,1,1,1,0,1,0]]
	elif s == 5:
		return [
			[1,1,1,0,1,1,1,0,1,1,1,0],
			[1,1,0,1,1,0,1,1,0,1,1,1],
			[1,0,1,0,1,1,1,0,1,0,1,1],
			[0,1,1,1,0,1,0,1,1,1,0,1],
			[1,1,1,1,1,0,1,1,1,0,1,0],
			[1,1,0,1,1,1,1,1,0,1,1,1],
			[1,1,1,0,1,1,1,0,1,1,1,0],
			[0,1,1,1,0,1,0,1,1,1,0,1],
			[1,0,1,1,1,0,1,1,1,0,1,1],
			[0,1,0,1,1,1,1,1,0,1,0,1],
			[1,1,1,0,1,1,1,0,1,1,1,0],
			[1,1,0,1,0,1,0,1,0,1,1,1],
			[1,1,1,0,1,1,1,0,1,1,1,0],
			[1,1,0,1,1,0,1,1,0,1,1,1],
			[1,0,1,0,1,1,1,0,1,0,1,1],
			[0,1,1,1,0,1,0,1,1,1,0,1],
			[1,1,1,1,1,0,1,1,1,0,1,0],
			[1,1,0,1,1,1,1,1,0,1,1,1],
			[1,1,1,0,1,1,1,0,1,1,1,0],
			[0,1,1,1,0,1,0,1,1,1,0,1],
			[1,0,1,1,1,0,1,1,1,0,1,1],
			[0,1,0,1,1,1,1,1,0,1,0,1],
			[1,1,1,0,1,1,1,0,1,1,1,0],
			[1,1,0,1,0,1,0,1,0,1,1,1]]
	elif s == 6:
		return [
			[0,1,0,1,0,1,1,0,1,1,0,1],
			[1,0,1,0,1,1,1,0,1,1,1,0],
			[0,1,1,1,0,0,0,1,0,0,0,1],
			[1,0,1,0,1,1,1,0,1,1,1,0],
			[0,1,0,1,0,1,1,0,1,1,0,1],
			[1,1,0,1,1,0,1,0,1,0,1,1],
			[1,1,0,1,1,1,0,1,0,1,1,1],
			[0,0,1,0,0,0,1,1,1,0,0,0],
			[1,1,0,1,1,1,0,1,0,1,1,1],
			[1,1,0,1,1,0,1,0,1,0,1,1],
			[0,1,0,1,0,1,1,0,1,1,0,1],
			[1,0,1,0,1,1,1,0,1,1,1,0],
			[0,1,0,1,0,1,1,0,1,1,0,1],
			[1,0,1,0,1,1,1,0,1,1,1,0],
			[0,1,1,1,0,0,0,1,0,0,0,1],
			[1,0,1,0,1,1,1,0,1,1,1,0],
			[0,1,0,1,0,1,1,0,1,1,0,1],
			[1,1,0,1,1,0,1,0,1,0,1,1],
			[1,1,0,1,1,1,0,1,0,1,1,1],
			[0,0,1,0,0,0,1,1,1,0,0,0],
			[1,1,0,1,1,1,0,1,0,1,1,1],
			[1,1,0,1,1,0,1,0,1,0,1,1],
			[0,1,0,1,0,1,1,0,1,1,0,1],
			[1,0,1,0,1,1,1,0,1,1,1,0]]
	elif s == 7:
		return [
			[1,0,1,1,1,1,1,0,1,1,1,1],
			[1,0,1,0,0,0,1,0,1,0,0,0],
			[1,0,1,1,1,1,1,0,1,1,1,1],
			[1,1,1,1,0,1,1,1,1,1,0,1],
			[0,0,0,1,0,1,0,0,0,1,0,1],
			[1,1,1,1,0,1,1,1,1,1,0,1],
			[1,0,1,1,1,1,1,0,1,1,1,1],
			[1,0,1,0,0,0,1,0,1,0,0,0],
			[1,0,1,1,1,1,1,0,1,1,1,1],
			[1,1,1,1,0,1,1,1,1,1,0,1],
			[0,0,0,1,0,1,0,0,0,1,0,1],
			[1,1,1,1,0,1,1,1,1,1,0,1],
			[1,0,1,1,1,1,1,0,1,1,1,1],
			[1,0,1,0,0,0,1,0,1,0,0,0],
			[1,0,1,1,1,1,1,0,1,1,1,1],
			[1,1,1,1,0,1,1,1,1,1,0,1],
			[0,0,0,1,0,1,0,0,0,1,0,1],
			[1,1,1,1,0,1,1,1,1,1,0,1],
			[1,0,1,1,1,1,1,0,1,1,1,1],
			[1,0,1,0,0,0,1,0,1,0,0,0],
			[1,0,1,1,1,1,1,0,1,1,1,1],
			[1,1,1,1,0,1,1,1,1,1,0,1],
			[0,0,0,1,0,1,0,0,0,1,0,1],
			[1,1,1,1,0,1,1,1,1,1,0,1]]
	elif s == 8:
		return [
			[0,0,0,0,0,0,0,0,0,0,0,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[0,0,0,0,0,0,0,0,0,0,0,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[0,0,0,0,0,0,0,0,0,0,0,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[0,0,0,0,0,0,0,0,0,0,0,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[0,0,0,0,0,0,0,0,0,0,0,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[0,0,0,0,0,0,0,0,0,0,0,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[0,0,0,0,0,0,0,0,0,0,0,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[0,0,0,0,0,0,0,0,0,0,0,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[0,1,1,0,1,1,0,1,1,0,1,1]]
	elif s == 9:
		return [
			[1,0,0,1,1,1,0,1,1,1,0,0],
			[0,0,1,1,1,0,1,0,1,1,1,0],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[1,1,1,0,1,1,1,1,1,0,1,1],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[1,0,1,1,1,0,0,0,1,1,1,0],
			[0,1,1,1,0,0,1,0,0,1,1,1],
			[1,0,1,1,1,0,0,0,1,1,1,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[1,1,1,0,1,1,1,1,1,0,1,1],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[0,0,1,1,1,0,1,0,1,1,1,0],
			[1,0,0,1,1,1,0,1,1,1,0,0],
			[0,0,1,1,1,0,1,0,1,1,1,0],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[1,1,1,0,1,1,1,1,1,0,1,1],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[1,0,1,1,1,0,0,0,1,1,1,0],
			[0,1,1,1,0,0,1,0,0,1,1,1],
			[1,0,1,1,1,0,0,0,1,1,1,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[1,1,1,0,1,1,1,1,1,0,1,1],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[0,0,1,1,1,0,1,0,1,1,1,0]]
	elif s == 10:
		return [
			[1,1,1,0,1,1,1,1,0,1,0,1],
			[0,1,1,1,0,1,1,1,1,0,1,0],
			[1,0,1,1,1,0,0,0,0,1,0,1],
			[0,1,1,1,0,1,1,1,1,0,1,0],
			[1,1,1,0,1,1,1,1,0,1,0,1],
			[1,1,0,1,1,1,1,0,1,1,0,1],
			[1,0,1,1,1,1,0,1,1,1,0,1],
			[0,1,1,1,1,0,1,1,1,1,0,1],
			[0,1,1,1,0,1,1,1,1,0,1,0],
			[0,1,1,0,1,1,1,1,0,1,1,1],
			[0,1,0,1,1,1,1,0,1,1,1,1],
			[1,0,1,1,1,1,0,1,1,1,0,1],
			[0,1,0,0,0,0,1,1,1,0,1,0],
			[1,0,1,1,1,1,0,1,1,1,0,1],
			[0,1,0,1,1,1,1,0,1,1,1,1],
			[0,1,1,0,1,1,1,1,0,1,1,1],
			[0,1,1,1,0,1,1,1,1,0,1,0],
			[0,1,1,1,1,0,1,1,1,1,0,1],
			[1,0,1,1,1,1,0,1,1,1,0,1],
			[1,1,0,1,1,1,1,0,1,1,0,1],
			[1,1,1,0,1,1,1,1,0,1,0,1],
			[0,1,1,1,0,1,1,1,1,0,1,0],
			[1,0,1,1,1,0,0,0,0,1,0,1],
			[0,1,1,1,0,1,1,1,1,0,1,0]]
	elif s == 11:
		return [
			[1,1,1,0,0,0,1,0,0,0,1,1],
			[1,0,1,0,1,0,0,0,1,0,1,0],
			[1,1,1,0,0,0,1,0,0,0,1,1],
			[0,0,0,1,0,0,1,0,0,1,0,0],
			[0,1,0,0,0,1,1,1,0,0,0,1],
			[0,0,0,0,1,1,1,1,1,0,0,0],
			[1,0,1,1,1,1,1,1,1,1,1,0],
			[0,0,0,0,1,1,1,1,1,0,0,0],
			[0,1,0,0,0,1,1,1,0,0,0,1],
			[0,0,0,1,0,0,1,0,0,1,0,0],
			[1,1,1,0,0,0,1,0,0,0,1,1],
			[1,0,1,0,1,0,0,0,1,0,1,0],
			[1,1,1,0,0,0,1,0,0,0,1,1],
			[0,0,0,1,0,0,1,0,0,1,0,0],
			[0,1,0,0,0,1,1,1,0,0,0,1],
			[0,0,0,0,1,1,1,1,1,0,0,0],
			[1,0,1,1,1,1,1,1,1,1,1,0],
			[0,0,0,0,1,1,1,1,1,0,0,0],
			[0,1,0,0,0,1,1,1,0,0,0,1],
			[0,0,0,1,0,0,1,0,0,1,0,0],
			[1,1,1,0,0,0,1,0,0,0,1,1],
			[1,0,1,0,1,0,0,0,1,0,1,0],
			[1,1,1,0,0,0,1,0,0,0,1,1],
			[0,0,0,1,0,0,1,0,0,1,0,0]]
	elif s == 12:
		return [
			[1,0,0,0,0,0,0,1,0,0,1,1],
			[0,0,0,1,1,1,0,0,0,1,1,0],
			[0,0,0,0,1,1,1,0,1,1,0,1],
			[0,1,0,0,0,1,1,1,1,0,1,1],
			[0,1,1,0,0,0,1,1,0,1,1,0],
			[0,1,1,1,0,1,1,0,1,1,0,0],
			[0,0,1,1,1,1,0,1,1,1,1,0],
			[1,0,0,1,1,0,1,1,0,1,1,1],
			[0,0,1,1,0,1,1,0,0,0,1,1],
			[0,1,1,0,1,1,1,1,0,0,0,1],
			[1,1,0,1,1,0,1,1,1,0,0,0],
			[1,0,1,1,0,0,0,1,1,1,0,0],
			[0,1,1,0,0,1,0,0,0,0,0,0],
			[1,0,1,1,0,0,0,1,1,1,0,0],
			[1,1,0,1,1,0,1,1,1,0,0,0],
			[0,1,1,0,1,1,1,1,0,0,0,1],
			[0,0,1,1,0,1,1,0,0,0,1,1],
			[1,0,0,1,1,0,1,1,0,1,1,1],
			[0,0,1,1,1,1,0,1,1,1,1,0],
			[0,1,1,1,0,1,1,0,1,1,0,0],
			[0,1,1,0,0,0,1,1,0,1,1,0],
			[0,1,0,0,0,1,1,1,1,0,1,1],
			[0,0,0,0,1,1,1,0,1,1,0,1],
			[0,0,0,1,1,1,0,0,0,1,1,0]]
	elif s == 13:
		return [
			[1,0,1,1,1,0,1,0,1,1,1,0],
			[0,1,0,1,1,0,0,0,1,1,0,1],
			[1,1,1,0,1,1,1,1,1,0,1,1],
			[1,1,1,1,0,1,1,1,0,1,1,1],
			[0,0,0,1,1,0,1,0,1,1,0,0],
			[0,1,0,1,1,1,0,1,1,1,0,1],
			[0,0,0,1,1,0,1,0,1,1,0,0],
			[1,1,1,1,0,1,1,1,0,1,1,1],
			[1,1,1,0,1,1,1,1,1,0,1,1],
			[0,1,0,1,1,0,0,0,1,1,0,1],
			[1,0,1,1,1,0,1,0,1,1,1,0],
			[0,1,0,1,1,0,0,0,1,1,0,1],
			[1,1,1,0,1,1,1,1,1,0,1,1],
			[1,1,1,1,0,1,1,1,0,1,1,1],
			[0,0,0,1,1,0,1,0,1,1,0,0],
			[0,1,0,1,1,1,0,1,1,1,0,1],
			[0,0,0,1,1,0,1,0,1,1,0,0],
			[1,1,1,1,0,1,1,1,0,1,1,1],
			[1,1,1,0,1,1,1,1,1,0,1,1],
			[0,1,0,1,1,0,0,0,1,1,0,1],
			[1,0,1,1,1,0,1,0,1,1,1,0],
			[0,1,0,1,1,0,0,0,1,1,0,1],
			[1,1,1,0,1,1,1,1,1,0,1,1],
			[1,1,1,1,0,1,1,1,0,1,1,1]]
	elif s == 14:
		return [
			[1,0,0,0,0,0,1,1,1,0,1,1],
			[0,1,1,1,1,1,0,0,0,1,0,1],
			[0,1,1,0,1,1,0,0,1,1,1,0],
			[0,1,0,1,0,1,0,1,1,0,1,1],
			[0,1,1,0,1,1,0,0,1,1,1,0],
			[0,1,1,1,1,1,0,0,0,1,0,1],
			[1,0,0,0,0,0,1,1,1,0,1,1],
			[1,0,0,1,0,0,1,1,0,1,0,1],
			[1,0,1,1,1,0,1,0,1,1,0,0],
			[0,1,1,0,1,1,0,1,1,1,0,0],
			[1,0,1,1,1,0,1,0,0,0,1,1],
			[1,1,0,1,0,1,1,1,0,0,1,1],
			[0,1,1,0,1,1,0,1,1,0,1,0],
			[1,1,0,1,0,1,1,1,0,0,1,1],
			[1,0,1,1,1,0,1,0,0,0,1,1],
			[0,1,1,0,1,1,0,1,1,1,0,0],
			[1,0,1,1,1,0,1,0,1,1,0,0],
			[1,0,0,1,0,0,1,1,0,1,0,1],
			[1,0,0,0,0,0,1,1,1,0,1,1],
			[0,1,1,1,1,1,0,0,0,1,0,1],
			[0,1,1,0,1,1,0,0,1,1,1,0],
			[0,1,0,1,0,1,0,1,1,0,1,1],
			[0,1,1,0,1,1,0,0,1,1,1,0],
			[0,1,1,1,1,1,0,0,0,1,0,1]]
	elif s == 15:
		return [
			[0,1,0,1,1,1,0,1,0,1,1,1],
			[0,1,1,0,1,1,1,0,1,1,1,0],
			[0,1,1,1,0,1,1,0,1,1,0,1],
			[1,0,1,1,1,0,1,0,1,0,1,1],
			[0,1,0,1,1,1,0,1,0,1,1,1],
			[1,0,1,0,0,0,1,0,1,0,0,0],
			[0,1,0,1,1,1,0,1,0,1,1,1],
			[1,0,1,1,1,0,1,0,1,0,1,1],
			[0,1,1,1,0,1,1,0,1,1,0,1],
			[0,1,1,0,1,1,1,0,1,1,1,0],
			[0,1,0,1,1,1,0,1,0,1,1,1],
			[1,0,1,1,1,0,1,0,1,0,1,1],
			[0,1,0,0,0,1,0,1,0,1,0,0],
			[1,0,1,1,1,0,1,0,1,0,1,1],
			[0,1,0,1,1,1,0,1,0,1,1,1],
			[0,1,1,0,1,1,1,0,1,1,1,0],
			[0,1,1,1,0,1,1,0,1,1,0,1],
			[1,0,1,1,1,0,1,0,1,0,1,1],
			[0,1,0,1,1,1,0,1,0,1,1,1],
			[1,0,1,0,0,0,1,0,1,0,0,0],
			[0,1,0,1,1,1,0,1,0,1,1,1],
			[1,0,1,1,1,0,1,0,1,0,1,1],
			[0,1,1,1,0,1,1,0,1,1,0,1],
			[0,1,1,0,1,1,1,0,1,1,1,0]]
	elif s == 16:
		return [
			[1,1,0,1,1,0,1,1,1,0,1,1],
			[1,1,1,0,1,1,0,0,0,1,1,0],
			[0,0,1,1,0,1,1,1,1,1,0,1],
			[1,1,0,1,1,0,1,1,1,0,1,1],
			[0,1,1,0,1,1,0,1,0,1,1,0],
			[1,0,1,0,1,1,1,0,1,1,1,0],
			[0,1,1,0,1,1,0,1,0,1,1,0],
			[1,1,0,1,1,0,1,1,1,0,1,1],
			[0,0,1,1,0,1,1,1,1,1,0,1],
			[1,1,1,0,1,1,0,0,0,1,1,0],
			[1,1,0,1,1,0,1,1,1,0,1,1],
			[1,0,1,1,0,1,1,0,1,1,0,1],
			[0,1,1,1,0,1,0,1,0,1,0,1],
			[1,0,1,1,0,1,1,0,1,1,0,1],
			[1,1,0,1,1,0,1,1,1,0,1,1],
			[1,1,1,0,1,1,0,0,0,1,1,0],
			[0,0,1,1,0,1,1,1,1,1,0,1],
			[1,1,0,1,1,0,1,1,1,0,1,1],
			[0,1,1,0,1,1,0,1,0,1,1,0],
			[1,0,1,0,1,1,1,0,1,1,1,0],
			[0,1,1,0,1,1,0,1,0,1,1,0],
			[1,1,0,1,1,0,1,1,1,0,1,1],
			[0,0,1,1,0,1,1,1,1,1,0,1],
			[1,1,1,0,1,1,0,0,0,1,1,0]]
	elif s == 17:
		return [
			[1,0,0,1,0,1,1,1,0,1,1,1],
			[0,0,1,1,0,0,1,1,1,1,1,0],
			[0,1,1,1,0,0,0,1,1,1,0,1],
			[1,1,1,1,0,0,0,0,1,0,1,1],
			[0,0,0,0,1,1,1,1,0,1,1,1],
			[1,0,0,0,1,1,1,0,1,0,1,1],
			[1,1,0,0,1,1,0,1,1,0,0,1],
			[1,1,1,0,1,0,1,1,1,0,0,0],
			[0,1,1,1,0,1,1,1,1,0,0,0],
			[1,1,1,0,1,0,0,0,0,1,1,1],
			[1,1,0,1,1,1,0,0,0,1,1,1],
			[1,0,1,1,1,1,1,0,0,1,1,0],
			[1,0,0,1,0,1,1,1,0,1,1,1],
			[0,0,1,1,0,0,1,1,1,1,1,0],
			[0,1,1,1,0,0,0,1,1,1,0,1],
			[1,1,1,1,0,0,0,0,1,0,1,1],
			[0,0,0,0,1,1,1,1,0,1,1,1],
			[1,0,0,0,1,1,1,0,1,0,1,1],
			[1,1,0,0,1,1,0,1,1,0,0,1],
			[1,1,1,0,1,0,1,1,1,0,0,0],
			[0,1,1,1,0,1,1,1,1,0,0,0],
			[1,1,1,0,1,0,0,0,0,1,1,1],
			[1,1,0,1,1,1,0,0,0,1,1,1],
			[1,0,1,1,1,1,1,0,0,1,1,0]]
	elif s == 18:
		return [
			[1,0,1,1,0,1,1,0,1,0,1,1],
			[0,0,1,1,1,0,1,0,0,0,1,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[0,1,1,0,0,0,1,0,1,0,1,0],
			[1,0,1,0,1,0,1,1,0,1,1,0],
			[0,1,1,0,0,0,1,0,1,0,1,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[0,0,1,1,1,0,1,0,0,0,1,0],
			[1,0,1,1,0,1,1,0,1,0,1,1],
			[0,0,1,0,1,1,1,0,0,0,1,1],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[1,0,1,0,0,0,1,1,0,1,1,0],
			[0,1,1,0,1,0,1,0,1,0,1,0],
			[1,0,1,0,0,0,1,1,0,1,1,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[0,0,1,0,1,1,1,0,0,0,1,1],
			[1,0,1,1,0,1,1,0,1,0,1,1],
			[0,0,1,1,1,0,1,0,0,0,1,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[0,1,1,0,0,0,1,0,1,0,1,0],
			[1,0,1,0,1,0,1,1,0,1,1,0],
			[0,1,1,0,0,0,1,0,1,0,1,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[0,0,1,1,1,0,1,0,0,0,1,0]]
	elif s == 19:
		return [
			[0,0,0,1,1,1,0,1,1,1,1,1],
			[1,0,0,0,1,1,1,0,1,1,1,0],
			[0,1,0,0,0,1,1,1,0,1,0,1],
			[1,0,1,0,0,0,1,1,1,0,1,1],
			[0,1,0,0,0,1,1,1,0,1,0,1],
			[1,0,0,0,1,1,1,0,1,1,1,0],
			[0,0,0,1,1,1,0,1,1,1,1,1],
			[0,0,1,1,1,0,1,1,1,0,1,1],
			[0,1,1,1,0,1,1,1,0,0,0,1],
			[1,1,1,0,1,1,1,0,0,0,0,0],
			[1,1,0,1,1,1,0,0,0,1,0,0],
			[1,0,1,1,1,0,0,0,1,0,1,0],
			[0,1,1,1,0,0,0,1,0,1,0,1],
			[1,0,1,1,1,0,0,0,1,0,1,0],
			[1,1,0,1,1,1,0,0,0,1,0,0],
			[1,1,1,0,1,1,1,0,0,0,0,0],
			[0,1,1,1,0,1,1,1,0,0,0,1],
			[0,0,1,1,1,0,1,1,1,0,1,1],
			[0,0,0,1,1,1,0,1,1,1,1,1],
			[1,0,0,0,1,1,1,0,1,1,1,0],
			[0,1,0,0,0,1,1,1,0,1,0,1],
			[1,0,1,0,0,0,1,1,1,0,1,1],
			[0,1,0,0,0,1,1,1,0,1,0,1],
			[1,0,0,0,1,1,1,0,1,1,1,0]]
	elif s == 20:
		return [
			[1,1,0,1,1,1,0,0,0,1,1,1],
			[0,0,1,0,1,1,0,1,0,1,1,0],
			[1,0,1,1,0,1,0,0,0,1,0,1],
			[0,0,1,1,1,0,1,1,1,0,1,1],
			[1,1,0,0,0,1,0,1,0,1,0,0],
			[0,1,0,1,0,1,1,0,1,1,0,1],
			[1,1,0,0,0,1,0,1,0,1,0,0],
			[0,0,1,1,1,0,1,1,1,0,1,1],
			[1,0,1,1,0,1,0,0,0,1,0,1],
			[0,0,1,0,1,1,0,1,0,1,1,0],
			[1,1,0,1,1,1,0,0,0,1,1,1],
			[1,0,1,0,0,0,1,1,1,0,0,0],
			[0,1,1,0,1,0,1,0,1,0,1,0],
			[1,0,1,0,0,0,1,1,1,0,0,0],
			[1,1,0,1,1,1,0,0,0,1,1,1],
			[0,0,1,0,1,1,0,1,0,1,1,0],
			[1,0,1,1,0,1,0,0,0,1,0,1],
			[0,0,1,1,1,0,1,1,1,0,1,1],
			[1,1,0,0,0,1,0,1,0,1,0,0],
			[0,1,0,1,0,1,1,0,1,1,0,1],
			[1,1,0,0,0,1,0,1,0,1,0,0],
			[0,0,1,1,1,0,1,1,1,0,1,1],
			[1,0,1,1,0,1,0,0,0,1,0,1],
			[0,0,1,0,1,1,0,1,0,1,1,0]]
	elif s == 21:
		return [
			[1,1,0,1,1,1,0,1,0,1,1,1],
			[0,1,1,0,1,1,0,0,0,1,1,0],
			[0,0,1,1,0,1,1,0,1,1,0,1],
			[1,0,1,1,1,0,1,1,1,0,1,1],
			[0,1,0,0,1,1,0,1,0,1,1,0],
			[1,0,1,0,0,1,1,0,1,1,0,0],
			[0,1,0,0,1,1,0,1,0,1,1,0],
			[1,0,1,1,1,0,1,1,1,0,1,1],
			[0,0,1,1,0,1,1,0,1,1,0,1],
			[0,1,1,0,1,1,0,0,0,1,1,0],
			[1,1,0,1,1,1,0,1,0,1,1,1],
			[1,0,1,1,0,0,1,0,1,0,0,1],
			[0,1,1,0,0,1,0,1,0,1,0,0],
			[1,0,1,1,0,0,1,0,1,0,0,1],
			[1,1,0,1,1,1,0,1,0,1,1,1],
			[0,1,1,0,1,1,0,0,0,1,1,0],
			[0,0,1,1,0,1,1,0,1,1,0,1],
			[1,0,1,1,1,0,1,1,1,0,1,1],
			[0,1,0,0,1,1,0,1,0,1,1,0],
			[1,0,1,0,0,1,1,0,1,1,0,0],
			[0,1,0,0,1,1,0,1,0,1,1,0],
			[1,0,1,1,1,0,1,1,1,0,1,1],
			[0,0,1,1,0,1,1,0,1,1,0,1],
			[0,1,1,0,1,1,0,0,0,1,1,0]]
	elif s == 22:
		return [
			[1,1,1,0,0,0,1,0,0,1,0,0],
			[0,0,0,1,1,1,0,1,0,0,0,1],
			[1,0,0,1,1,0,0,0,1,0,1,0],
			[0,1,0,1,0,0,1,0,0,1,0,0],
			[1,0,0,1,1,0,0,0,1,0,1,0],
			[0,0,0,1,1,1,0,1,0,0,0,1],
			[1,1,1,0,0,0,1,0,0,1,0,0],
			[0,1,1,0,0,1,0,1,0,0,0,1],
			[0,0,1,0,1,0,0,1,1,0,1,1],
			[1,0,0,1,0,0,0,1,1,1,1,1],
			[0,0,1,0,1,1,1,0,0,0,0,0],
			[0,1,0,0,0,1,1,0,0,1,0,0],
			[1,0,0,1,0,0,1,0,1,0,1,0],
			[0,1,0,0,0,1,1,0,0,1,0,0],
			[0,0,1,0,1,1,1,0,0,0,0,0],
			[1,0,0,1,0,0,0,1,1,1,1,1],
			[0,0,1,0,1,0,0,1,1,0,1,1],
			[0,1,1,0,0,1,0,1,0,0,0,1],
			[1,1,1,0,0,0,1,0,0,1,0,0],
			[0,0,0,1,1,1,0,1,0,0,0,1],
			[1,0,0,1,1,0,0,0,1,0,1,0],
			[0,1,0,1,0,0,1,0,0,1,0,0],
			[1,0,0,1,1,0,0,0,1,0,1,0],
			[0,0,0,1,1,1,0,1,0,0,0,1]]
	elif s == 23:
		return [
			[1,1,0,1,1,1,0,1,0,1,1,1],
			[0,1,1,0,1,1,0,0,0,1,1,0],
			[0,0,1,1,0,1,1,0,1,1,0,1],
			[1,0,1,1,1,0,1,1,1,0,1,1],
			[1,1,0,0,1,1,0,1,0,1,1,0],
			[0,1,1,0,0,1,1,0,1,1,0,0],
			[1,1,0,0,1,1,0,1,0,1,1,0],
			[1,0,1,1,1,0,1,1,1,0,1,1],
			[0,0,1,1,0,1,1,0,1,1,0,1],
			[0,1,1,0,1,1,0,0,0,1,1,0],
			[1,1,0,1,1,1,0,1,0,1,1,1],
			[1,0,1,1,0,0,1,1,1,0,0,1],
			[0,1,1,0,0,1,1,0,1,1,0,0],
			[1,0,1,1,0,0,1,1,1,0,0,1],
			[1,1,0,1,1,1,0,1,0,1,1,1],
			[0,1,1,0,1,1,0,0,0,1,1,0],
			[0,0,1,1,0,1,1,0,1,1,0,1],
			[1,0,1,1,1,0,1,1,1,0,1,1],
			[1,1,0,0,1,1,0,1,0,1,1,0],
			[0,1,1,0,0,1,1,0,1,1,0,0],
			[1,1,0,0,1,1,0,1,0,1,1,0],
			[1,0,1,1,1,0,1,1,1,0,1,1],
			[0,0,1,1,0,1,1,0,1,1,0,1],
			[0,1,1,0,1,1,0,0,0,1,1,0]]
	elif s == 24:
		return [
			[0,0,1,1,0,0,1,0,0,0,1,1],
			[0,1,1,1,0,0,0,0,0,1,1,0],
			[1,1,1,1,0,0,0,0,1,1,0,1],
			[1,1,1,1,0,0,0,1,1,0,1,1],
			[0,0,0,0,1,1,1,1,0,1,1,0],
			[0,0,0,0,1,1,1,0,1,1,0,0],
			[1,0,0,0,1,1,0,1,1,0,0,0],
			[0,0,0,1,1,0,1,1,1,0,0,0],
			[0,0,1,1,0,1,1,1,1,0,0,0],
			[0,1,1,0,1,1,0,0,0,1,1,1],
			[1,1,0,1,1,0,0,0,0,1,1,1],
			[1,0,1,1,0,0,0,0,0,1,1,1],
			[0,1,1,0,0,0,1,0,0,1,1,0],
			[1,0,1,1,0,0,0,0,0,1,1,1],
			[1,1,0,1,1,0,0,0,0,1,1,1],
			[0,1,1,0,1,1,0,0,0,1,1,1],
			[0,0,1,1,0,1,1,1,1,0,0,0],
			[0,0,0,1,1,0,1,1,1,0,0,0],
			[1,0,0,0,1,1,0,1,1,0,0,0],
			[0,0,0,0,1,1,1,0,1,1,0,0],
			[0,0,0,0,1,1,1,1,0,1,1,0],
			[1,1,1,1,0,0,0,1,1,0,1,1],
			[1,1,1,1,0,0,0,0,1,1,0,1],
			[0,1,1,1,0,0,0,0,0,1,1,0]]
	elif s == 25:
		return [
			[0,0,0,0,0,0,0,0,0,0,0,0],
			[0,0,0,0,0,0,0,0,0,0,0,0],
			[0,1,1,1,1,1,1,1,1,1,0,0],
			[0,1,0,0,0,0,0,0,0,1,0,0],
			[0,1,0,1,1,1,1,1,0,1,0,0],
			[0,1,0,1,0,0,0,1,0,1,0,0],
			[0,1,0,1,0,1,0,1,0,1,0,0],
			[0,1,0,1,0,0,0,1,0,1,0,0],
			[0,1,0,1,1,1,1,1,0,1,0,0],
			[0,1,0,0,0,0,0,0,0,1,0,0],
			[0,1,1,1,1,1,1,1,1,1,0,0],
			[0,0,0,0,0,0,0,0,0,0,0,0],
			[0,0,0,0,0,0,0,0,0,0,0,0],
			[0,1,1,1,1,1,1,1,1,1,0,0],
			[0,1,0,0,0,0,0,0,0,1,0,0],
			[0,1,0,1,1,1,1,1,0,1,0,0],
			[0,1,0,1,0,0,0,1,0,1,0,0],
			[0,1,0,1,0,1,0,1,0,1,0,0],
			[0,1,0,1,0,0,0,1,0,1,0,0],
			[0,1,0,1,1,1,1,1,0,1,0,0],
			[0,1,0,0,0,0,0,0,0,1,0,0],
			[0,1,1,1,1,1,1,1,1,1,0,0],
			[0,0,0,0,0,0,0,0,0,0,0,0],
			[0,0,0,0,0,0,0,0,0,0,0,0]]
	elif s == 26:
		return [
			[1,1,0,0,0,1,0,0,0,1,1,1],
			[1,1,1,0,0,0,0,0,1,1,1,0],
			[0,1,1,1,0,0,0,1,1,1,0,1],
			[0,0,1,1,1,0,1,1,1,0,1,1],
			[0,0,0,1,1,1,1,1,0,1,1,1],
			[1,0,0,0,1,1,1,0,1,1,1,0],
			[0,0,0,1,1,1,0,1,1,1,0,0],
			[0,0,1,1,1,0,1,1,1,0,0,0],
			[0,1,1,1,0,1,1,1,1,1,0,0],
			[1,1,1,0,1,1,1,0,1,1,1,0],
			[1,1,0,1,1,1,0,0,0,1,1,1],
			[1,0,1,1,1,0,0,0,0,0,1,1],
			[0,1,1,1,0,0,0,1,0,0,0,1],
			[1,0,1,1,1,0,0,0,0,0,1,1],
			[1,1,0,1,1,1,0,0,0,1,1,1],
			[1,1,1,0,1,1,1,0,1,1,1,0],
			[0,1,1,1,0,1,1,1,1,1,0,0],
			[0,0,1,1,1,0,1,1,1,0,0,0],
			[0,0,0,1,1,1,0,1,1,1,0,0],
			[1,0,0,0,1,1,1,0,1,1,1,0],
			[0,0,0,1,1,1,1,1,0,1,1,1],
			[0,0,1,1,1,0,1,1,1,0,1,1],
			[0,1,1,1,0,0,0,1,1,1,0,1],
			[1,1,1,0,0,0,0,0,1,1,1,0]]
	elif s == 27:
		return [
			[1,0,0,0,1,1,1,1,1,0,0,0],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[0,1,1,0,1,0,0,0,1,0,1,1],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,0,1,0,1,1,0,1,1,0,1,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[1,1,1,0,0,0,1,0,0,0,1,1],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[0,0,1,0,1,1,0,1,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,1,1,0,1,0,0,0,1,0,1,1],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[1,0,0,0,1,1,1,1,1,0,0,0],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[0,1,1,0,1,0,0,0,1,0,1,1],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,0,1,0,1,1,0,1,1,0,1,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[1,1,1,0,0,0,1,0,0,0,1,1],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[0,0,1,0,1,1,0,1,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,1,1,0,1,0,0,0,1,0,1,1],
			[0,1,1,1,0,1,1,1,0,1,1,1]]
	elif s == 28:
		return [
			[1,0,0,0,0,1,0,1,0,0,0,0],
			[0,1,1,1,1,0,1,0,1,1,1,1],
			[0,1,1,1,0,1,0,1,0,1,1,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[0,1,0,1,1,1,0,1,1,1,0,1],
			[1,0,1,1,1,1,0,1,1,1,1,0],
			[0,1,0,0,0,0,1,0,0,0,0,1],
			[1,0,1,1,1,1,0,1,1,1,1,0],
			[0,1,0,1,1,1,0,1,1,1,0,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[0,1,1,1,0,1,0,1,0,1,1,1],
			[0,1,1,1,1,0,1,0,1,1,1,1],
			[1,0,0,0,0,1,0,1,0,0,0,0],
			[0,1,1,1,1,0,1,0,1,1,1,1],
			[0,1,1,1,0,1,0,1,0,1,1,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[0,1,0,1,1,1,0,1,1,1,0,1],
			[1,0,1,1,1,1,0,1,1,1,1,0],
			[0,1,0,0,0,0,1,0,0,0,0,1],
			[1,0,1,1,1,1,0,1,1,1,1,0],
			[0,1,0,1,1,1,0,1,1,1,0,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[0,1,1,1,0,1,0,1,0,1,1,1],
			[0,1,1,1,1,0,1,0,1,1,1,1]]
	elif s == 29:
		return [
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[1,1,1,0,1,0,1,1,1,1,1,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[1,0,1,1,1,1,1,0,1,0,1,1],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[1,0,1,1,1,1,1,0,1,0,1,1],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[1,1,1,0,1,0,1,1,1,1,1,0],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[1,1,1,0,1,0,1,1,1,1,1,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[1,0,1,1,1,1,1,0,1,0,1,1],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[1,0,1,1,1,1,1,0,1,0,1,1],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[1,1,1,0,1,0,1,1,1,1,1,0],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[1,1,1,0,1,0,1,1,1,1,1,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[1,0,1,1,1,1,1,0,1,0,1,1],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[1,0,1,1,1,1,1,0,1,0,1,1],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[1,1,1,0,1,0,1,1,1,1,1,0]]
	elif s == 30:
		return [
			[1,0,1,1,1,0,0,0,1,1,0,0],
			[0,1,1,1,0,0,0,1,1,1,0,0],
			[1,0,0,0,1,1,1,0,0,0,1,1],
			[0,1,0,0,0,1,1,1,0,0,1,1],
			[0,0,1,0,0,0,1,1,1,0,1,0],
			[0,0,0,1,0,0,0,1,1,1,0,0],
			[1,0,0,0,1,0,0,0,1,1,0,0],
			[1,1,0,0,0,1,0,0,0,1,0,1],
			[1,1,1,0,0,0,1,0,0,0,1,1],
			[0,1,1,1,0,0,0,1,0,0,1,1],
			[0,0,1,1,1,0,0,0,1,0,1,0],
			[0,0,0,1,1,1,0,0,0,1,0,1],
			[1,1,1,0,0,0,1,1,1,0,1,0],
			[1,1,0,0,0,1,1,1,0,1,0,1],
			[1,0,0,0,1,1,1,0,1,1,0,0],
			[0,0,0,1,1,1,0,1,1,1,0,0],
			[0,0,1,1,1,0,1,1,1,0,1,0],
			[0,1,1,1,0,1,1,1,0,0,1,1],
			[1,1,1,0,1,1,1,0,0,0,1,1],
			[1,1,0,1,1,1,0,0,0,1,0,1],
			[1,0,1,1,1,0,0,0,1,1,0,0],
			[0,1,1,1,0,0,0,1,1,1,0,0],
			[1,0,0,0,1,1,1,0,0,0,1,1],
			[0,1,0,0,0,1,1,1,0,0,1,1]]
	elif s == 31:
		return [
			[0,1,1,0,0,1,0,0,0,0,1,1],
			[0,0,0,1,0,0,0,1,0,0,1,1],
			[1,1,0,0,0,1,0,0,0,1,1,0],
			[1,1,1,0,0,0,0,0,1,1,0,1],
			[1,1,1,1,1,0,1,1,1,0,1,1],
			[1,1,1,1,0,1,1,0,0,0,0,0],
			[1,1,1,0,1,1,0,0,0,1,0,0],
			[1,1,0,1,1,0,0,1,0,0,0,1],
			[1,0,1,1,1,0,0,0,0,1,0,0],
			[0,1,1,1,0,0,1,0,1,1,1,0],
			[1,1,0,1,1,0,0,0,0,1,1,1],
			[1,1,1,1,1,0,0,1,0,0,1,1],
			[1,0,1,1,1,1,0,0,0,0,1,1],
			[0,0,0,0,1,1,1,0,1,0,0,1],
			[0,1,1,0,0,1,0,0,0,0,1,1],
			[0,0,0,1,0,0,0,1,0,0,1,1],
			[1,1,0,0,0,1,0,0,0,1,1,0],
			[1,1,1,0,0,0,0,0,1,1,0,1],
			[1,1,1,1,1,0,1,1,1,0,1,1],
			[1,1,1,1,0,1,1,0,0,0,0,0],
			[1,1,1,0,1,1,0,0,0,1,0,0],
			[1,1,0,1,1,0,0,1,0,0,0,1],
			[1,0,1,1,1,0,0,0,0,1,0,0],
			[0,1,1,1,0,0,1,0,1,1,1,0]]
	elif s == 32:
		return [
			[0,0,1,0,1,1,0,1,1,1,1,1],
			[1,1,1,1,1,1,1,0,1,1,1,0],
			[0,1,1,0,0,1,1,1,0,1,0,1],
			[1,0,1,0,1,0,1,1,1,0,1,1],
			[0,1,1,0,0,1,1,1,0,1,0,1],
			[1,1,1,1,1,1,1,0,1,1,1,0],
			[0,0,1,0,1,1,0,1,1,1,1,1],
			[1,0,1,1,1,0,1,1,1,0,1,1],
			[0,1,1,1,0,1,1,1,0,1,0,1],
			[1,1,1,0,1,1,0,1,0,0,0,1],
			[1,1,0,1,1,1,1,1,1,1,1,1],
			[1,0,1,1,1,0,0,1,1,0,1,1],
			[0,1,1,1,0,1,0,1,0,1,0,1],
			[1,0,1,1,1,0,0,1,1,0,1,1],
			[1,1,0,1,1,1,1,1,1,1,1,1],
			[1,1,1,0,1,1,0,1,0,0,0,1],
			[0,1,1,1,0,1,1,1,0,1,0,1],
			[1,0,1,1,1,0,1,1,1,0,1,1],
			[0,0,1,0,1,1,0,1,1,1,1,1],
			[1,1,1,1,1,1,1,0,1,1,1,0],
			[0,1,1,0,0,1,1,1,0,1,0,1],
			[1,0,1,0,1,0,1,1,1,0,1,1],
			[0,1,1,0,0,1,1,1,0,1,0,1],
			[1,1,1,1,1,1,1,0,1,1,1,0]]
	elif s == 33:
		return [
			[1,1,0,1,0,1,0,0,0,1,0,0],
			[1,1,1,0,1,0,0,0,1,0,0,0],
			[0,1,1,1,0,0,0,1,0,0,0,1],
			[1,0,1,1,0,0,1,0,0,0,1,0],
			[1,1,0,1,0,1,0,0,0,1,0,0],
			[1,1,1,0,1,0,0,0,1,0,0,0],
			[0,0,0,1,0,1,1,1,0,1,1,1],
			[0,0,1,0,1,0,1,1,1,0,1,1],
			[0,1,0,0,1,1,0,1,1,1,0,1],
			[1,0,0,0,1,1,1,0,1,1,1,0],
			[0,0,0,1,0,1,1,1,0,1,1,1],
			[0,0,1,0,1,0,1,1,1,0,1,1],
			[0,1,0,0,1,1,0,1,1,1,0,1],
			[1,0,0,0,1,1,1,0,1,1,1,0],
			[0,0,0,1,0,1,1,1,0,1,1,1],
			[0,0,1,0,1,0,1,1,1,0,1,1],
			[0,1,0,0,1,1,0,1,1,1,0,1],
			[1,0,0,0,1,1,1,0,1,1,1,0],
			[0,1,1,1,0,0,0,1,0,0,0,1],
			[1,0,1,1,0,0,1,0,0,0,1,0],
			[1,1,0,1,0,1,0,0,0,1,0,0],
			[1,1,1,0,1,0,0,0,1,0,0,0],
			[0,1,1,1,0,0,0,1,0,0,0,1],
			[1,0,1,1,0,0,1,0,0,0,1,0]]
	elif s == 34:
		return [
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[0,0,1,1,0,0,1,1,0,0,1,1]]
	elif s == 35:
		return [
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1]]
	elif s == 36:
		return [
			[1,1,0,1,1,1,1,1,0,1,1,1],
			[1,0,1,1,1,0,1,1,1,0,1,0],
			[0,1,1,1,0,1,0,1,1,1,0,1],
			[1,0,1,1,1,0,1,1,1,0,1,0],
			[1,1,0,1,1,1,1,1,0,1,1,1],
			[1,1,1,0,1,1,1,0,1,1,1,1],
			[0,1,1,1,0,1,0,1,1,1,0,1],
			[1,0,1,1,1,0,1,1,1,0,1,0],
			[0,1,1,1,0,1,0,1,1,1,0,1],
			[1,1,1,0,1,1,1,0,1,1,1,1],
			[1,1,0,1,1,1,1,1,0,1,1,1],
			[1,0,1,1,1,0,1,1,1,0,1,0],
			[0,1,1,1,0,1,0,1,1,1,0,1],
			[1,0,1,1,1,0,1,1,1,0,1,0],
			[1,1,0,1,1,1,1,1,0,1,1,1],
			[1,1,1,0,1,1,1,0,1,1,1,1],
			[0,1,1,1,0,1,0,1,1,1,0,1],
			[1,0,1,1,1,0,1,1,1,0,1,0],
			[0,1,1,1,0,1,0,1,1,1,0,1],
			[1,1,1,0,1,1,1,0,1,1,1,1],
			[1,1,0,1,1,1,1,1,0,1,1,1],
			[1,0,1,1,1,0,1,1,1,0,1,0],
			[0,1,1,1,0,1,0,1,1,1,0,1],
			[1,0,1,1,1,0,1,1,1,0,1,0]]
	elif s == 37:
		return [
			[0,1,0,0,0,1,1,1,0,1,1,1],
			[1,1,0,0,0,0,1,1,1,1,1,0],
			[0,0,1,0,0,0,0,1,1,1,0,1],
			[0,0,0,1,0,0,0,0,1,0,1,1],
			[0,0,0,0,1,1,1,1,0,1,1,1],
			[1,0,0,0,1,1,1,0,1,0,1,1],
			[1,1,0,0,1,1,0,1,1,0,0,1],
			[1,1,1,0,1,0,1,1,1,0,0,0],
			[0,1,1,1,0,1,1,1,1,0,0,0],
			[1,1,1,0,1,0,0,0,0,1,0,0],
			[1,1,0,1,1,1,0,0,0,0,1,0],
			[1,0,1,1,1,1,1,0,0,0,0,1],
			[0,1,1,1,0,1,1,1,0,0,0,1],
			[1,0,1,1,1,1,1,0,0,0,0,1],
			[1,1,0,1,1,1,0,0,0,0,1,0],
			[1,1,1,0,1,0,0,0,0,1,0,0],
			[0,1,1,1,0,1,1,1,1,0,0,0],
			[1,1,1,0,1,0,1,1,1,0,0,0],
			[1,1,0,0,1,1,0,1,1,0,0,1],
			[1,0,0,0,1,1,1,0,1,0,1,1],
			[0,0,0,0,1,1,1,1,0,1,1,1],
			[0,0,0,1,0,0,0,0,1,0,1,1],
			[0,0,1,0,0,0,0,1,1,1,0,1],
			[1,1,0,0,0,0,1,1,1,1,1,0]]
	elif s == 38:
		return [
			[0,0,0,1,0,1,1,1,0,0,0,1],
			[0,0,0,1,1,0,1,1,0,0,0,1],
			[0,0,0,1,1,1,0,1,0,0,0,1],
			[1,1,1,0,1,1,1,0,1,1,1,0],
			[0,1,1,1,0,0,0,1,0,1,1,1],
			[1,0,1,1,0,0,0,1,1,0,1,1],
			[1,1,0,1,0,0,0,1,1,1,0,1],
			[1,1,1,0,1,1,1,0,1,1,1,0],
			[0,0,0,1,0,1,1,1,0,0,0,1],
			[0,0,0,1,1,0,1,1,0,0,0,1],
			[0,0,0,1,1,1,0,1,0,0,0,1],
			[1,1,1,0,1,1,1,0,1,1,1,0],
			[0,1,1,1,0,0,0,1,0,1,1,1],
			[1,0,1,1,0,0,0,1,1,0,1,1],
			[1,1,0,1,0,0,0,1,1,1,0,1],
			[1,1,1,0,1,1,1,0,1,1,1,0],
			[0,0,0,1,0,1,1,1,0,0,0,1],
			[0,0,0,1,1,0,1,1,0,0,0,1],
			[0,0,0,1,1,1,0,1,0,0,0,1],
			[1,1,1,0,1,1,1,0,1,1,1,0],
			[0,1,1,1,0,0,0,1,0,1,1,1],
			[1,0,1,1,0,0,0,1,1,0,1,1],
			[1,1,0,1,0,0,0,1,1,1,0,1],
			[1,1,1,0,1,1,1,0,1,1,1,0]]
	elif s == 39:
		return [
			[1,0,1,1,1,1,1,0,1,0,0,1],
			[0,0,1,1,1,1,0,1,0,0,0,1],
			[0,0,1,1,1,0,1,0,0,0,0,1],
			[0,0,1,1,0,1,0,0,0,0,0,1],
			[0,0,1,0,1,0,1,1,1,1,1,0],
			[1,1,0,1,0,0,1,1,1,1,0,1],
			[1,0,1,0,0,0,1,1,1,0,1,0],
			[0,1,0,0,0,0,1,1,0,1,0,0],
			[1,0,0,0,0,0,1,0,1,0,0,0],
			[0,1,1,1,1,1,0,1,0,0,0,0],
			[0,1,1,1,1,0,1,0,0,0,0,0],
			[0,1,1,1,0,1,0,1,1,1,1,1],
			[0,1,1,0,1,0,0,1,1,1,1,0],
			[0,1,0,1,0,0,0,1,1,1,0,1],
			[1,0,1,0,0,0,0,1,1,0,1,0],
			[0,1,0,0,0,0,0,1,0,1,0,0],
			[1,0,1,1,1,1,1,0,1,0,0,0],
			[0,0,1,1,1,1,0,1,0,0,0,0],
			[0,0,1,1,1,0,1,0,0,0,0,0],
			[0,0,1,1,0,1,0,1,1,1,1,1],
			[0,0,1,0,1,0,0,1,1,1,1,0],
			[1,1,0,1,0,0,0,1,1,1,0,0],
			[1,0,1,0,0,0,0,1,1,0,0,0],
			[0,1,0,0,0,0,0,1,0,0,0,0]]
	elif s == 40:
		return [
			[1,1,1,0,0,1,1,0,0,1,1,1],
			[1,1,0,0,1,1,0,0,1,1,0,1],
			[1,0,0,1,1,0,0,1,1,0,0,0],
			[0,0,1,1,0,0,1,1,0,0,1,0],
			[0,1,1,0,0,1,1,0,0,1,1,1],
			[1,1,0,0,1,1,0,0,1,1,0,1],
			[1,0,0,1,1,0,0,1,1,0,0,0],
			[0,0,1,1,0,0,1,1,0,0,1,0],
			[0,1,1,0,0,1,1,0,0,1,1,1],
			[1,1,0,0,1,1,0,0,1,1,0,1],
			[1,0,0,1,1,0,0,1,1,0,0,0],
			[0,0,1,1,0,0,1,1,0,0,1,0],
			[0,1,1,0,0,1,1,0,0,1,1,1],
			[1,1,0,0,1,1,0,0,1,1,0,1],
			[1,0,0,1,1,0,0,1,1,0,0,0],
			[0,0,1,1,0,0,1,1,0,0,1,0],
			[0,1,1,0,0,1,1,0,0,1,1,1],
			[1,1,0,0,1,1,0,0,1,1,0,1],
			[1,0,0,1,1,0,0,1,1,0,0,0],
			[0,0,1,1,0,0,1,1,0,0,1,0],
			[0,1,1,0,0,1,1,0,0,1,1,1],
			[1,1,0,0,1,1,0,0,1,1,0,1],
			[1,0,0,1,1,0,0,1,1,0,0,0],
			[0,0,1,1,0,0,1,1,0,0,0,0]]
	elif s == 41:
		return [
			[0,0,0,1,1,1,0,1,1,1,0,1],
			[0,0,1,1,1,0,0,0,1,1,1,0],
			[0,0,0,1,0,0,0,1,1,1,0,1],
			[1,0,0,0,0,0,1,1,1,0,1,1],
			[1,1,0,0,0,1,1,1,0,1,1,1],
			[1,1,1,0,1,1,1,0,1,1,1,0],
			[0,1,1,1,1,1,0,1,1,1,0,0],
			[0,0,1,1,1,0,1,1,1,1,1,0],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[1,1,1,0,1,1,1,0,0,0,1,1],
			[1,1,0,1,1,1,0,0,0,0,0,1],
			[1,0,1,1,1,0,0,0,1,1,0,0],
			[0,1,1,1,0,0,0,1,1,1,0,0],
			[1,0,1,1,1,0,1,1,1,0,0,0],
			[1,1,0,1,1,1,1,1,0,0,0,1],
			[1,1,1,0,1,1,1,0,0,0,1,1],
			[0,1,1,1,0,1,1,1,0,0,0,1],
			[0,0,1,1,1,0,1,1,1,0,0,0],
			[0,0,0,1,1,1,0,1,1,1,0,0],
			[1,0,0,0,1,1,1,0,1,1,1,0],
			[1,1,0,0,0,1,1,1,0,1,1,1],
			[1,0,0,0,1,1,1,1,1,0,1,1],
			[0,0,0,1,1,1,0,1,1,1,0,1],
			[0,0,1,1,1,0,0,0,1,1,1,0]]
	elif s == 42:
		return [
			[1,0,0,1,1,1,0,0,1,0,0,1],
			[0,0,0,0,1,1,1,0,0,0,0,0],
			[0,0,1,0,0,1,1,1,0,0,1,0],
			[1,0,0,0,0,0,1,1,1,0,0,0],
			[1,1,0,0,1,0,0,1,1,1,0,0],
			[1,1,1,0,0,0,0,0,1,1,1,0],
			[0,1,1,1,0,0,1,0,0,1,1,1],
			[0,0,1,1,1,0,0,0,0,0,1,1],
			[1,0,0,1,1,1,0,0,1,0,0,1],
			[0,0,0,0,1,1,1,0,0,0,0,0],
			[0,0,1,0,0,1,1,1,0,0,1,0],
			[1,0,0,0,0,0,1,1,1,0,0,0],
			[1,1,0,0,1,0,0,1,1,1,0,0],
			[1,1,1,0,0,0,0,0,1,1,1,0],
			[0,1,1,1,0,0,1,0,0,1,1,1],
			[0,0,1,1,1,0,0,0,0,0,1,1],
			[1,0,0,1,1,1,0,0,1,0,0,1],
			[0,0,0,0,1,1,1,0,0,0,0,0],
			[0,0,1,0,0,1,1,1,0,0,0,0],
			[1,0,0,0,0,0,1,1,1,0,0,0],
			[1,1,0,0,1,0,0,1,1,1,0,0],
			[1,1,1,0,0,0,0,0,1,1,1,0],
			[0,1,1,1,0,0,1,0,0,1,1,1],
			[0,0,1,1,1,0,0,0,0,0,1,1]]
	elif s == 43:
		return [
			[0,0,0,1,0,1,0,1,1,1,0,0],
			[0,0,0,0,1,0,1,1,1,1,0,0],
			[1,1,1,1,0,1,0,0,0,0,1,1],
			[1,1,1,0,1,0,1,0,0,0,1,1],
			[1,1,0,1,1,0,0,1,0,0,1,1],
			[1,0,1,1,1,0,0,0,1,0,1,0],
			[0,1,1,1,1,0,0,0,0,1,0,1],
			[1,0,0,0,0,1,1,1,1,0,1,0],
			[0,1,0,0,0,1,1,1,0,1,0,1],
			[0,0,1,0,0,1,1,0,1,1,0,0],
			[0,0,0,1,0,1,0,1,1,1,0,0],
			[0,0,0,0,1,0,1,1,1,1,0,0],
			[1,1,1,1,0,1,0,0,0,0,1,1],
			[1,1,1,0,1,0,1,0,0,0,1,1],
			[1,1,0,1,1,0,0,1,0,0,1,1],
			[1,0,1,1,1,0,0,0,1,0,1,0],
			[0,1,1,1,1,0,0,0,0,1,0,1],
			[1,0,0,0,0,1,1,1,1,0,1,0],
			[0,1,0,0,0,1,1,1,0,1,0,1],
			[0,0,1,0,0,1,1,0,1,1,0,0],
			[0,0,0,1,0,1,0,1,1,1,0,0],
			[0,0,0,0,1,0,1,1,1,1,0,0],
			[1,1,1,1,0,1,0,0,0,0,1,1],
			[1,1,1,0,1,0,1,0,0,0,1,1]]
	elif s == 44:
		return [
			[1,0,0,0,1,0,0,0,1,1,1,0],
			[0,1,0,0,0,1,0,0,1,1,0,1],
			[0,0,1,0,0,0,1,0,1,0,1,1],
			[0,0,0,1,0,0,0,1,0,1,1,1],
			[1,1,1,0,1,1,1,0,1,0,0,0],
			[1,1,0,1,1,1,0,1,0,1,0,0],
			[1,0,1,1,1,0,1,1,0,0,1,0],
			[0,1,1,1,0,1,1,1,0,0,0,1],
			[1,1,1,0,1,1,1,0,1,0,0,0],
			[1,1,0,1,1,1,0,1,0,1,0,0],
			[1,0,1,1,1,0,1,1,0,0,1,0],
			[0,1,1,1,0,1,1,1,0,0,0,1],
			[1,0,0,0,1,0,0,0,1,1,1,0],
			[0,1,0,0,0,1,0,0,1,1,0,1],
			[0,0,1,0,0,0,1,0,1,0,1,1],
			[0,0,0,1,0,0,0,1,0,1,1,1],
			[1,0,0,0,1,0,0,0,1,1,1,0],
			[0,1,0,0,0,1,0,0,1,1,0,1],
			[0,0,1,0,0,0,1,0,1,0,1,1],
			[0,0,0,1,0,0,0,1,0,1,1,1],
			[1,1,1,0,1,1,1,0,1,0,0,0],
			[1,1,0,1,1,1,0,1,0,1,0,0],
			[1,0,1,1,1,0,1,1,0,0,1,0],
			[0,1,1,1,0,1,1,1,0,0,0,1]]
	elif s == 45:
		return [
			[0,0,0,1,0,0,0,1,0,0,0,1],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[0,1,0,0,0,1,0,0,0,1,0,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[0,0,0,1,0,0,0,1,0,0,0,1],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[0,1,0,0,0,1,0,0,0,1,0,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[0,0,0,1,0,0,0,1,0,0,0,1],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[0,1,0,0,0,1,0,0,0,1,0,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[0,0,0,1,0,0,0,1,0,0,0,1],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[0,1,0,0,0,1,0,0,0,1,0,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[0,0,0,1,0,0,0,1,0,0,0,1],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[0,1,0,0,0,1,0,0,0,1,0,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[0,0,0,1,0,0,0,1,0,0,0,1],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[0,1,0,0,0,1,0,0,0,1,0,0],
			[1,1,0,1,1,1,0,1,1,1,0,1]]
	elif s == 46:
		return [
			[1,0,0,0,1,0,0,0,1,0,0,0],
			[0,1,0,0,0,1,0,0,0,1,0,0],
			[0,0,1,0,0,0,1,0,0,0,1,0],
			[0,0,0,1,0,0,0,1,0,0,0,1],
			[1,0,0,0,1,0,0,0,1,0,0,0],
			[0,1,0,0,0,1,0,0,0,1,0,0],
			[0,0,1,0,0,0,1,0,0,0,1,0],
			[0,0,0,1,0,0,0,1,0,0,0,1],
			[1,0,0,0,1,0,0,0,1,0,0,0],
			[0,1,0,0,0,1,0,0,0,1,0,0],
			[0,0,1,0,0,0,1,0,0,0,1,0],
			[0,0,0,1,0,0,0,1,0,0,0,1],
			[1,1,1,0,1,1,1,0,1,1,1,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[1,0,1,1,1,0,1,1,1,0,1,1],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[1,1,1,0,1,1,1,0,1,1,1,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[1,0,1,1,1,0,1,1,1,0,1,1],
			[0,1,1,1,0,1,1,1,0,1,1,1],
			[1,1,1,0,1,1,1,0,1,1,1,0],
			[1,1,0,1,1,1,0,1,1,1,0,1],
			[1,0,1,1,1,0,1,1,1,0,1,1],
			[0,1,1,1,0,1,1,1,0,1,1,1]]
	elif s == 47:
		return [
			[0,0,1,1,0,1,1,0,0,0,1,1],
			[0,0,1,1,1,0,1,1,1,1,1,0],
			[0,0,1,1,1,1,0,1,1,1,0,1],
			[1,1,0,0,0,1,1,0,1,0,1,1],
			[0,1,0,0,0,1,1,1,0,1,1,1],
			[1,1,0,0,0,1,1,0,1,0,1,1],
			[0,0,1,1,1,1,0,1,1,1,0,1],
			[0,0,1,1,1,0,1,1,1,1,1,0],
			[0,0,1,1,0,1,1,0,0,0,1,1],
			[1,1,1,0,1,1,1,0,0,0,1,1],
			[1,1,0,1,1,1,1,0,0,0,1,1],
			[1,0,1,1,0,0,0,1,1,1,0,0],
			[0,1,1,1,0,0,0,1,0,1,0,0],
			[1,0,1,1,0,0,0,1,1,1,0,0],
			[1,1,0,1,1,1,1,0,0,0,1,1],
			[1,1,1,0,1,1,1,0,0,0,1,1],
			[0,0,1,1,0,1,1,0,0,0,1,1],
			[0,0,1,1,1,0,1,1,1,1,1,0],
			[0,0,1,1,1,1,0,1,1,1,0,1],
			[1,1,0,0,0,1,1,0,1,0,1,1],
			[0,1,0,0,0,1,1,1,0,1,1,1],
			[1,1,0,0,0,1,1,0,1,0,1,1],
			[0,0,1,1,1,1,0,1,1,1,0,1],
			[0,0,1,1,1,0,1,1,1,1,1,0]]
	elif s == 48:
		return [
			[0,1,0,0,0,0,0,0,0,1,1,1],
			[1,0,0,1,0,0,0,0,1,1,1,0],
			[0,0,1,0,1,1,0,1,1,1,0,1],
			[0,1,1,0,0,1,1,1,1,0,1,1],
			[0,0,1,0,0,0,1,1,0,1,1,1],
			[0,0,0,1,0,0,1,0,1,1,1,0],
			[0,0,0,1,1,1,0,1,1,1,0,0],
			[0,0,1,1,1,0,1,0,0,1,0,0],
			[0,1,1,1,0,1,1,0,0,0,1,0],
			[1,1,1,0,1,1,1,1,0,0,1,1],
			[1,1,0,1,1,1,0,0,1,0,1,0],
			[1,0,1,1,1,0,0,0,0,1,0,0],
			[0,1,1,1,0,0,0,0,0,0,0,1],
			[1,0,1,1,1,0,0,0,0,1,0,0],
			[1,1,0,1,1,1,0,0,1,0,1,0],
			[1,1,1,0,1,1,1,1,0,0,1,1],
			[0,1,1,1,0,1,1,0,0,0,1,0],
			[0,0,1,1,1,0,1,0,0,1,0,0],
			[0,0,0,1,1,1,0,1,1,1,0,0],
			[0,0,0,1,0,0,1,0,1,1,1,0],
			[0,0,1,0,0,0,1,1,0,1,1,1],
			[0,1,1,0,0,1,1,1,1,0,1,1],
			[0,0,1,0,1,0,0,1,1,1,0,1],
			[1,0,0,1,0,0,0,0,1,1,1,0]]
	elif s == 49:
		return [
			[0,0,1,1,1,1,0,1,1,1,1,1],
			[1,1,0,1,1,1,1,0,1,1,1,0],
			[0,1,1,0,0,0,1,1,0,1,0,1],
			[1,0,1,0,0,0,1,1,1,0,1,1],
			[0,1,1,0,0,0,1,1,0,1,0,1],
			[1,1,0,1,1,1,1,0,1,1,1,0],
			[0,0,1,1,1,1,0,1,1,1,1,1],
			[0,0,1,1,1,0,1,1,0,0,0,1],
			[0,0,1,1,0,1,1,1,0,0,0,1],
			[1,1,1,0,1,1,1,1,0,0,0,1],
			[1,1,0,1,1,1,1,0,1,1,1,0],
			[1,0,1,1,0,0,0,1,1,0,1,1],
			[0,1,1,1,0,0,0,1,0,1,0,1],
			[1,0,1,1,0,0,0,1,1,0,1,1],
			[1,1,0,1,1,1,1,0,1,1,1,0],
			[1,1,1,0,1,1,1,1,0,0,0,1],
			[0,0,1,1,0,1,1,1,0,0,0,1],
			[0,0,1,1,1,0,1,1,0,0,0,1],
			[0,0,1,1,1,1,0,1,1,1,1,1],
			[1,1,0,1,1,1,1,0,1,1,1,0],
			[0,1,1,0,0,0,1,1,0,1,0,1],
			[1,0,1,0,0,0,1,1,1,0,1,1],
			[0,1,1,0,0,0,1,1,0,1,0,1],
			[1,1,0,1,1,1,1,0,1,1,1,0]]
	elif s == 50:
		return [
			[1,1,0,1,1,1,0,0,0,1,1,0],
			[1,1,1,0,1,1,0,0,0,1,1,1],
			[1,1,1,1,0,1,0,0,0,1,1,1],
			[0,0,0,1,1,0,1,1,1,0,0,0],
			[0,0,0,1,1,1,0,1,1,0,0,0],
			[0,0,0,1,1,1,1,0,1,0,0,0],
			[1,1,1,0,0,0,1,1,0,1,1,1],
			[0,1,1,0,0,0,1,1,1,0,1,1],
			[1,0,1,0,0,0,1,1,1,1,0,1],
			[1,1,0,1,1,1,0,0,0,1,1,0],
			[1,1,1,0,1,1,0,0,0,1,1,1],
			[1,1,1,1,0,1,0,0,0,1,1,1],
			[0,0,0,1,1,0,1,1,1,0,0,0],
			[0,0,0,1,1,1,0,1,1,0,0,0],
			[0,0,0,1,1,1,1,0,1,0,0,0],
			[1,1,1,0,0,0,1,1,0,1,1,1],
			[0,1,1,0,0,0,1,1,1,0,1,1],
			[1,0,1,0,0,0,1,1,1,1,0,1],
			[1,1,0,1,1,1,0,0,0,1,1,0],
			[1,1,1,0,1,1,0,0,0,1,1,1],
			[1,1,1,1,0,1,0,0,0,1,1,1],
			[0,0,0,1,1,0,1,1,1,0,0,0],
			[0,0,0,1,1,1,0,1,1,0,0,0],
			[0,0,0,1,1,1,1,0,1,0,0,0]]
	elif s == 51:
		return [
			[1,1,0,1,1,1,0,1,0,0,0,1],
			[1,1,1,0,1,1,1,0,0,0,1,0],
			[0,1,1,1,0,1,1,0,0,1,0,0],
			[1,0,1,1,1,0,1,0,1,0,0,0],
			[0,1,0,1,1,1,0,1,0,0,0,1],
			[1,0,1,0,0,0,1,0,1,1,1,0],
			[0,1,0,0,0,1,0,1,0,1,1,1],
			[1,0,0,0,1,0,0,1,1,0,1,1],
			[0,0,0,1,0,0,0,1,1,1,0,1],
			[0,0,1,0,0,0,1,0,1,1,1,0],
			[0,1,0,0,0,1,0,1,0,1,1,1],
			[1,0,0,0,1,0,1,0,1,0,1,1],
			[0,1,1,1,0,1,0,1,0,1,0,0],
			[1,0,1,1,1,0,1,0,1,0,0,0],
			[1,1,0,1,1,1,0,1,0,0,0,1],
			[1,1,1,0,1,1,1,0,0,0,1,0],
			[0,1,1,1,0,1,1,0,0,1,0,0],
			[1,0,1,1,1,0,1,0,1,0,0,0],
			[0,1,0,1,1,1,0,1,0,0,0,1],
			[1,0,1,0,0,0,1,0,1,1,1,0],
			[0,1,0,0,0,1,0,1,0,1,1,1],
			[1,0,0,0,1,0,0,1,1,0,1,1],
			[0,0,0,1,0,0,0,1,1,1,0,1],
			[0,0,1,0,0,0,1,0,1,1,1,0]]
	elif s == 52:
		return [
			[0,0,1,1,0,0,1,1,0,0,0,1],
			[1,0,0,1,1,0,0,1,1,0,1,1],
			[0,0,1,1,0,0,1,1,0,0,0,1],
			[0,1,1,0,0,1,1,0,0,1,0,0],
			[1,1,0,0,1,1,0,0,1,1,1,0],
			[1,0,0,1,1,0,0,1,1,0,1,1],
			[0,0,1,1,0,0,1,1,0,0,0,1],
			[0,1,1,0,0,1,1,0,0,1,0,0],
			[1,1,0,0,1,1,0,0,1,1,1,0],
			[1,0,0,1,1,0,0,1,1,0,1,1],
			[0,0,1,1,0,0,1,1,0,0,0,1],
			[0,1,1,0,0,1,1,0,0,1,0,0],
			[0,0,1,1,0,0,1,1,0,0,0,1],
			[1,0,0,1,1,0,0,1,1,0,1,1],
			[1,1,0,0,1,1,0,0,1,1,1,0],
			[0,1,1,0,0,1,1,0,0,1,0,0],
			[0,0,1,1,0,0,1,1,0,0,0,1],
			[1,0,0,1,1,0,0,1,1,0,1,1],
			[1,1,0,0,1,1,0,0,1,1,1,0],
			[0,1,1,0,0,1,1,0,0,1,0,0],
			[0,0,1,1,0,0,1,1,0,0,0,1],
			[1,0,0,1,1,0,0,1,1,0,1,1],
			[0,0,1,1,0,0,1,1,0,0,0,1],
			[0,1,1,0,0,1,1,0,0,1,0,0]]
	elif s == 53:
		return [
			[1,0,0,0,1,0,1,1,1,0,0,0],
			[1,1,0,0,0,1,0,1,1,1,0,0],
			[1,1,1,0,0,0,1,0,1,1,1,0],
			[0,1,1,1,0,0,0,1,0,1,1,1],
			[1,0,1,1,1,0,0,0,1,0,1,1],
			[0,1,0,1,1,1,0,0,0,1,0,1],
			[0,0,1,0,1,1,1,0,0,0,1,0],
			[0,0,0,1,0,1,1,1,0,0,0,1],
			[1,0,0,0,1,0,1,1,1,0,0,0],
			[1,1,0,0,0,1,0,1,1,1,0,0],
			[1,1,1,0,0,0,1,0,1,1,1,0],
			[0,1,1,1,0,0,0,1,0,1,1,1],
			[1,0,1,1,1,0,0,0,1,0,1,1],
			[0,1,0,1,1,1,0,0,0,1,0,1],
			[0,0,1,0,1,1,1,0,0,0,1,0],
			[0,0,0,1,0,1,1,1,0,0,0,1],
			[1,0,0,0,1,0,1,1,1,0,0,0],
			[1,1,0,0,0,1,0,1,1,1,0,0],
			[1,1,1,0,0,0,1,0,1,1,1,0],
			[0,1,1,1,0,0,0,1,0,1,1,1],
			[1,0,1,1,1,0,0,0,1,0,1,1],
			[0,1,0,1,1,1,0,0,0,1,0,1],
			[0,0,1,0,1,1,1,0,0,0,1,0],
			[0,0,0,1,0,1,1,1,0,0,0,1]]
	elif s == 54:
		return [
			[0,0,0,1,1,1,0,0,0,1,1,1],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,0,0,1,1,1,0,0,0,1,1,1],
			[1,1,1,0,0,0,1,1,1,0,0,0],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[1,1,1,0,0,0,1,1,1,0,0,0],
			[0,0,0,1,1,1,0,0,0,1,1,1],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,0,0,1,1,1,0,0,0,1,1,1],
			[1,1,1,0,0,0,1,1,1,0,0,0],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[1,1,1,0,0,0,1,1,1,0,0,0],
			[0,0,0,1,1,1,0,0,0,1,1,1],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,0,0,1,1,1,0,0,0,1,1,1],
			[1,1,1,0,0,0,1,1,1,0,0,0],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[1,1,1,0,0,0,1,1,1,0,0,0],
			[0,0,0,1,1,1,0,0,0,1,1,1],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,0,0,1,1,1,0,0,0,1,1,1],
			[1,1,1,0,0,0,1,1,1,0,0,0],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[1,1,1,0,0,0,1,1,1,0,0,0]]
	elif s == 55:
		return [
			[0,1,0,0,1,0,0,1,0,0,1,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[1,0,0,1,0,0,1,0,0,1,0,0],
			[0,1,0,0,1,0,0,1,0,0,1,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[1,0,0,1,0,0,1,0,0,1,0,0],
			[0,1,0,0,1,0,0,1,0,0,1,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[1,0,0,1,0,0,1,0,0,1,0,0],
			[0,1,0,0,1,0,0,1,0,0,1,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[1,0,0,1,0,0,1,0,0,1,0,0],
			[0,1,0,0,1,0,0,1,0,0,1,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[1,0,0,1,0,0,1,0,0,1,0,0],
			[0,1,0,0,1,0,0,1,0,0,1,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[1,0,0,1,0,0,1,0,0,1,0,0],
			[0,1,0,0,1,0,0,1,0,0,1,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[1,0,0,1,0,0,1,0,0,1,0,0],
			[0,1,0,0,1,0,0,1,0,0,1,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[1,0,0,1,0,0,1,0,0,1,0,0]]
	elif s == 56:
		return [
			[1,1,0,1,1,0,1,1,0,1,1,0],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[1,0,1,1,0,1,1,0,1,1,0,1],
			[1,1,0,1,1,0,1,1,0,1,1,0],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[1,0,1,1,0,1,1,0,1,1,0,1],
			[1,1,0,1,1,0,1,1,0,1,1,0],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[1,0,1,1,0,1,1,0,1,1,0,1],
			[1,1,0,1,1,0,1,1,0,1,1,0],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[1,0,1,1,0,1,1,0,1,1,0,1],
			[1,1,0,1,1,0,1,1,0,1,1,0],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[1,0,1,1,0,1,1,0,1,1,0,1],
			[1,1,0,1,1,0,1,1,0,1,1,0],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[1,0,1,1,0,1,1,0,1,1,0,1],
			[1,1,0,1,1,0,1,1,0,1,1,0],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[1,0,1,1,0,1,1,0,1,1,0,1],
			[1,1,0,1,1,0,1,1,0,1,1,0],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[1,0,1,1,0,1,1,0,1,1,0,1]]
	elif s == 57:
		return [
			[1,0,0,1,1,0,0,1,1,0,0,1],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[0,1,1,0,0,1,1,0,0,1,1,0],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[1,0,0,1,1,0,0,1,1,0,0,1],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[0,1,1,0,0,1,1,0,0,1,1,0],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[1,0,0,1,1,0,0,1,1,0,0,1],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[0,1,1,0,0,1,1,0,0,1,1,0],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[1,0,0,1,1,0,0,1,1,0,0,1],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[0,1,1,0,0,1,1,0,0,1,1,0],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[1,0,0,1,1,0,0,1,1,0,0,1],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[0,1,1,0,0,1,1,0,0,1,1,0],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[1,0,0,1,1,0,0,1,1,0,0,1],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[0,1,1,0,0,1,1,0,0,1,1,0],
			[0,0,1,1,0,0,1,1,0,0,1,1]]
	elif s == 58:
		return [
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[0,1,0,0,1,0,0,1,0,0,1,0],
			[1,0,0,1,0,0,1,0,0,1,0,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[0,1,0,0,1,0,0,1,0,0,1,0],
			[1,0,0,1,0,0,1,0,0,1,0,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[0,1,0,0,1,0,0,1,0,0,1,0],
			[1,0,0,1,0,0,1,0,0,1,0,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[0,1,0,0,1,0,0,1,0,0,1,0],
			[1,0,0,1,0,0,1,0,0,1,0,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[0,1,0,0,1,0,0,1,0,0,1,0],
			[1,0,0,1,0,0,1,0,0,1,0,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[0,1,0,0,1,0,0,1,0,0,1,0],
			[1,0,0,1,0,0,1,0,0,1,0,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[0,1,0,0,1,0,0,1,0,0,1,0],
			[1,0,0,1,0,0,1,0,0,1,0,0],
			[0,0,1,0,0,1,0,0,1,0,0,1],
			[0,1,0,0,1,0,0,1,0,0,1,0],
			[1,0,0,1,0,0,1,0,0,1,0,0]]
	elif s == 59:
		return [
			[1,0,1,1,0,1,1,0,1,1,0,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[1,1,0,1,1,0,1,1,0,1,1,0],
			[1,0,1,1,0,1,1,0,1,1,0,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[1,1,0,1,1,0,1,1,0,1,1,0],
			[1,0,1,1,0,1,1,0,1,1,0,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[1,1,0,1,1,0,1,1,0,1,1,0],
			[1,0,1,1,0,1,1,0,1,1,0,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[1,1,0,1,1,0,1,1,0,1,1,0],
			[1,0,1,1,0,1,1,0,1,1,0,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[1,1,0,1,1,0,1,1,0,1,1,0],
			[1,0,1,1,0,1,1,0,1,1,0,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[1,1,0,1,1,0,1,1,0,1,1,0],
			[1,0,1,1,0,1,1,0,1,1,0,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[1,1,0,1,1,0,1,1,0,1,1,0],
			[1,0,1,1,0,1,1,0,1,1,0,1],
			[0,1,1,0,1,1,0,1,1,0,1,1],
			[1,1,0,1,1,0,1,1,0,1,1,0]]
	elif s == 60:
		return [
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[0,1,1,0,0,1,1,0,0,1,1,0],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[1,0,0,1,1,0,0,1,1,0,0,1],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[0,1,1,0,0,1,1,0,0,1,1,0],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[1,0,0,1,1,0,0,1,1,0,0,1],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[0,1,1,0,0,1,1,0,0,1,1,0],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[1,0,0,1,1,0,0,1,1,0,0,1],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[0,1,1,0,0,1,1,0,0,1,1,0],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[1,0,0,1,1,0,0,1,1,0,0,1],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[0,1,1,0,0,1,1,0,0,1,1,0],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[1,0,0,1,1,0,0,1,1,0,0,1],
			[0,0,1,1,0,0,1,1,0,0,1,1],
			[0,1,1,0,0,1,1,0,0,1,1,0],
			[1,1,0,0,1,1,0,0,1,1,0,0],
			[1,0,0,1,1,0,0,1,1,0,0,1]]
	elif s == 61:
		return [
			[0,0,1,0,0,0,0,1,0,0,0,0],
			[1,0,0,0,0,1,0,0,0,0,1,0],
			[0,0,0,1,0,0,0,0,1,0,0,0],
			[0,1,0,0,0,0,1,0,0,0,0,1],
			[0,0,0,0,1,0,0,0,0,1,0,0],
			[0,0,1,0,0,0,0,1,0,0,0,0],
			[1,0,0,0,0,1,0,0,0,0,1,0],
			[0,0,0,1,0,0,0,0,1,0,0,0],
			[0,1,0,0,0,0,1,0,0,0,0,1],
			[0,0,0,0,1,0,0,0,0,1,0,0],
			[0,0,1,0,0,0,0,1,0,0,0,0],
			[1,0,0,0,0,1,0,0,0,0,1,0],
			[0,0,1,0,0,0,0,1,0,0,0,0],
			[1,0,0,0,0,1,0,0,0,0,1,0],
			[0,0,0,1,0,0,0,0,1,0,0,0],
			[0,1,0,0,0,0,1,0,0,0,0,1],
			[0,0,0,0,1,0,0,0,0,1,0,0],
			[0,0,1,0,0,0,0,1,0,0,0,0],
			[1,0,0,0,0,1,0,0,0,0,1,0],
			[0,0,0,1,0,0,0,0,1,0,0,0],
			[0,1,0,0,0,0,1,0,0,0,0,1],
			[0,0,0,0,1,0,0,0,0,1,0,0],
			[0,0,1,0,0,0,0,1,0,0,0,0],
			[1,0,0,0,0,1,0,0,0,0,1,0]]
	elif s == 62:
		return [
			[1,1,1,0,0,0,1,1,1,1,1,1],
			[1,1,0,1,0,0,1,1,1,1,1,1],
			[1,0,1,0,1,0,1,1,1,1,1,1],
			[0,1,0,1,0,1,1,1,1,1,1,1],
			[0,0,1,0,1,1,1,1,1,1,1,1],
			[0,0,0,1,1,1,1,1,1,1,1,1],
			[0,0,0,0,0,0,0,0,0,1,1,1],
			[0,0,0,0,0,0,0,0,1,0,1,1],
			[0,0,0,0,0,0,0,1,0,1,0,1],
			[0,0,0,0,0,0,1,0,1,0,1,0],
			[0,0,0,0,0,0,1,1,0,1,0,0],
			[0,0,0,0,0,0,1,1,1,0,0,0],
			[1,1,1,0,0,0,1,1,1,1,1,1],
			[1,1,0,1,0,0,1,1,1,1,1,1],
			[1,0,1,0,1,0,1,1,1,1,1,1],
			[0,1,0,1,0,1,1,1,1,1,1,1],
			[0,0,1,0,1,1,1,1,1,1,1,1],
			[0,0,0,1,1,1,1,1,1,1,1,1],
			[0,0,0,0,0,0,0,0,0,1,1,1],
			[0,0,0,0,0,0,0,0,1,0,1,1],
			[0,0,0,0,0,0,0,1,0,1,0,1],
			[0,0,0,0,0,0,1,0,1,0,1,0],
			[0,0,0,0,0,0,1,1,0,1,0,0],
			[0,0,0,0,0,0,1,1,1,0,0,0]]
	elif s == 63:
		return [
			[0,1,0,0,0,0,1,0,0,0,0,1],
			[1,0,0,0,0,1,0,0,0,0,1,0],
			[0,0,0,0,1,0,0,0,0,1,0,0],
			[0,0,0,1,0,0,0,0,1,0,0,0],
			[0,0,1,0,0,0,0,1,0,0,0,0],
			[0,1,0,0,0,0,1,0,0,0,0,1],
			[1,0,0,0,0,1,0,0,0,0,1,0],
			[0,0,0,0,1,0,0,0,0,1,0,0],
			[0,0,0,1,0,0,0,0,1,0,0,0],
			[0,0,1,0,0,0,0,1,0,0,0,0],
			[0,1,0,0,0,0,1,0,0,0,0,1],
			[1,0,0,0,0,1,0,0,0,0,1,0],
			[0,0,0,0,1,0,0,0,0,1,0,0],
			[0,0,0,1,0,0,0,0,1,0,0,0],
			[0,0,1,0,0,0,0,1,0,0,0,0],
			[0,1,0,0,0,0,1,0,0,0,0,1],
			[1,0,0,0,0,1,0,0,0,0,1,0],
			[0,0,0,0,1,0,0,0,0,1,0,0],
			[0,0,0,1,0,0,0,0,1,0,0,0],
			[0,0,1,0,0,0,0,1,0,0,0,0],
			[0,1,0,0,0,0,1,0,0,0,0,1],
			[1,0,0,0,0,1,0,0,0,0,1,0],
			[0,0,0,0,1,0,0,0,0,1,0,0],
			[0,0,0,1,0,0,0,0,1,0,0,0]]
	elif s == 64:
		return [
			[0,0,1,0,0,0,1,1,0,0,1,0],
			[0,1,0,0,0,1,1,0,0,1,0,0],
			[1,0,0,0,1,1,0,0,1,0,0,0],
			[0,0,0,1,1,0,0,1,0,0,0,1],
			[0,0,1,1,0,0,1,0,0,0,1,1],
			[0,1,1,0,0,1,0,0,0,1,1,0],
			[1,1,0,0,1,0,0,0,1,1,0,0],
			[1,0,0,1,0,0,0,1,1,0,0,1],
			[0,0,1,0,0,0,1,1,0,0,1,0],
			[0,1,0,0,0,1,1,0,0,1,0,0],
			[1,0,0,0,1,1,0,0,1,0,0,0],
			[0,0,0,1,1,0,0,1,0,0,0,1],
			[0,0,1,1,0,0,1,0,0,0,1,1],
			[0,1,1,0,0,1,0,0,0,1,1,0],
			[1,1,0,0,1,0,0,0,1,1,0,0],
			[1,0,0,1,0,0,0,1,1,0,0,1],
			[0,0,1,0,0,0,1,1,0,0,1,0],
			[0,1,0,0,0,1,1,0,0,1,0,0],
			[1,0,0,0,1,1,0,0,1,0,0,0],
			[0,0,0,1,1,0,0,1,0,0,0,1],
			[0,0,1,1,0,0,1,0,0,0,1,1],
			[0,1,1,0,0,1,0,0,0,1,1,0],
			[1,1,0,0,1,0,0,0,1,1,0,0],
			[1,0,0,1,0,0,0,1,1,0,0,1]]
	else:
		return [
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[0,1,0,1,0,1,0,1,0,1,0,1],
			[1,0,1,0,1,0,1,0,1,0,1,0],
			[1,0,1,0,1,0,1,0,1,0,1,0]]
			

#Parameter of geometry
T = 0.36 # thickness of matrix 
sp = 1  # spacing between the adjacent yarns 
yarnHeightX=0.18 # yarn height parallel in X 
yarnHeightY=0.09 # yarn height parallel in Y 
yarnWidthX=0.8 #width of yarn in X (Variable #4)
yarnWidthY=0.8 #width of yarn in Y 

#Inputs for Voxel Mesh
nXvoxel = 338 
nYvoxel = 338
nZvoxel = 5

#Pattern Generation for 1st Pattern:
patternList=patternVec(1) # DON'T CHANGE THIS FOR COUPLING - IT MUST BE MAINTAIN WITH 1
m=len(patternList)
n=len(patternList[0])
weave = CTextileWeave2D(m, n, sp, T, 0, False) #Geometry generation class of 2Dweave
weave.SetGapSize(0) # Gap size between upper and lower yarns
# Create 2nd textile:
patternList=patternVec(2) # PLEASE CHOOSE FROM NO. 2 - 65 ONLY
p=len(patternList)
q=len(patternList[0])
weave1 = CTextileWeave2D(p, q, sp, T, 0, False) #Geometry generation class of 2Dweave
weave1.SetGapSize(0) # Gap size between upper and lower yarns

# Create a new textile to contain the combination pattern
CombiTextile = CTextile()
for x in range(m):
	for y in range(n):
		if patternList[m-1-x][y] == 1:
			weave.SwapPosition(x, y)

# Adjust the yarn widths and heights
Yarns = weave.GetYarns()
for Yarn in Yarns:

    # Set the interpolation function
    Yarn.AssignInterpolation(CInterpolationBezier())

    # Assign a constant cross-section all along the yarn of elliptical shape
    Yarn.AssignSection(CYarnSectionConstant(CSectionLenticular(yarnWidthX, yarnHeightX)))

    # Set the resolution of the surface mesh created
    Yarn.SetResolution(20)

    # Add the yarn to our textile
    CombiTextile.AddYarn(Yarn)

# Get the yarns from the second textile
Yarns1 = weave1.GetYarns()
for Yarn1 in Yarns1:

    # Set the interpolation function
    Yarn1.AssignInterpolation(CInterpolationBezier())

    # Assign a constant cross-section all along the yarn of elliptical shape
    Yarn1.AssignSection(CYarnSectionConstant(CSectionLenticular(yarnWidthX, yarnHeightX)))

    # Set the resolution of the surface mesh created
    Yarn1.SetResolution(20)

    # Add the yarn to our textile
    CombiTextile.AddYarn(Yarn1)

# The yarns will be offset by the end yarns of the first textile
Offset = XYZ(0,0,0)

# For each yarn in the second textile..
for Yarn1 in Yarns1:
    # Get the nodes in the yarn
    Nodes = Yarn1.GetMasterNodes()
    i = n
    # Offset each node
    for Node in Nodes:
        Node.SetPosition( Node.GetPosition() - Offset )
        Yarn1.ReplaceNode( i, Node )
        i += 1
    # and add to the combined textile
    CombiTextile.AddYarn(Yarn1)
	
# Create a domain and assign it to the textile
CombiTextile.AssignDomain(CDomainPlanes(XYZ(-0.5, -0.5, -0.016), XYZ(23.5, 23.5, 0.376)))

# Add the textile with the name "Combi1"
AddTextile("Combi1", CombiTextile)


Sorry for posting too many queries to your forum.

Yanie
Post Reply