#VRML V2.0 utf8
WorldInfo
{
	title "Dekany"
	info
	[
		"Author: Robert Walker- e-mail: vrml@rcwalker.freeserve.co.uk"
	]
}
Background {skyColor 0 0 1}

#substitution table used - this will be filled in after the search and replace,
#idea is, for future ref, if one wants to remake it from template again
#substitutions used to make file names shown in square brackets
#ratio0 i1*i5 [i1si5]
#ratio1 i1*i4 [i1si4]
#ratio2 i1*i2 [i1si2]
#ratio3 i2*i4 [i2si4]
#ratio4 i2*i5 [i2si5]
#ratio5 i4*i5 [i4si5]
#ratio6 i1*i3 [i1si3]
#ratio7 i3*i5 [i3si5]
#ratio8 i3*i4 [i3si4]
#ratio9 i2*i3 [i2si3]
#ratio10 i1*i40 [i1si6]
#xvalue xx

#Method for making VRML from template - replace all formulae including xx, then xx itself
#to get any perspective view through 3D face to centre, with the central tetrahedron 3D faces 
#shown in red, and the other four in blue. (set it to 0.5 for non perspective view)

#midi files to make:
#i3si5_i4si5.mid
#i2si5_i3si5.mid
#i1si5_i3si5.mid
#i1si4_i3si4.mid
#i2si4_i3si4.mid
#i3si4_i4si5.mid
#i1si3_i1si5.mid
#i1si3_i1si4.mid
#i1si2_i1si3.mid
#i2si3_i2si5.mid
#i2si3_i2si4.mid
#i1si2_i2si3.mid
#i2si3_i3si4.mid
#i2si3_i3si5.mid
#i3si4_i3si5.mid
#i1si3_i3si4.mid
#i1si3_i2si3.mid
#i1si3_i3si5.mid
#i1si4_i1si5.mid
#i2si4_i2si5.mid
#i1si2_i1si5.mid
#i2si4_i4si5.mid
#i1si2_i1si4.mid
#i2si5_i4si5.mid
#i1si5_i4si5.mid
#i1si2_i2si4.mid
#i1si4_i2si4.mid
#i1si5_i2si5.mid
#i1si4_i4si5.mid
#i1si2_i2si5.mid
#i1si3_i2si3_i3si5.mid
#i2si3_i3si4_i3si5.mid
#i1si3_i2si3_i3si4.mid
#i1si3_i3si4_i3si5.mid
#i1si2_i1si3_i1si5.mid
#i1si2_i1si3_i1si4.mid
#i1si3_i1si4_i1si5.mid
#i1si5_i2si5_i3si5.mid
#i2si5_i3si5_i4si5.mid
#i1si5_i3si5_i4si5.mid
#i1si4_i3si4_i4si5.mid
#i1si4_i2si4_i3si4.mid
#i2si4_i3si4_i4si5.mid
#i1si2_i2si3_i2si5.mid
#i2si3_i2si4_i2si5.mid
#i1si2_i2si3_i2si4.mid
#i2si3_i2si5_i3si5.mid
#i1si3_i1si4_i3si4.mid
#i1si2_i1si3_i2si3.mid
#i2si3_i2si4_i3si4.mid
#i3si4_i3si5_i4si5.mid
#i1si3_i1si5_i3si5.mid
#i1si2_i2si4_i2si5.mid
#i1si2_i1si4_i1si5.mid
#i2si4_i2si5_i4si5.mid
#i1si5_i2si5_i4si5.mid
#i1si2_i1si4_i2si4.mid
#i1si4_i1si5_i4si5.mid
#i1si4_i2si4_i4si5.mid
#i1si2_i1si5_i2si5.mid
#i1si5.mid
#i1si4.mid
#i1si2.mid
#i2si4.mid
#i2si5.mid
#i4si5.mid
#i1si3.mid
#i3si5.mid
#i3si4.mid
#i2si3.mid
#i1si2_i1si3_i1si4_i1si5.mid
#i1si5_i2si5_i3si5_i4si5.mid
#i1si4_i2si4_i3si4_i4si5.mid
#i1si2_i2si3_i2si4_i2si5.mid
#i1si3_i2si3_i3si4_i3si5.mid
#i1si2_i1si3_i1si4_i1si5_i1si6.mid
#i1si5_i2si5_i3si5_i4si5_i5si6.mid
#i1si4_i2si4_i3si4_i4si5_i4si6.mid
#i1si2_i2si3_i2si4_i2si5_i2si6.mid
#i1si3_i2si3_i3si4_i3si5_i3si6.mid

Viewpoint
{
	description "i1*i5"
	position 5 0 0
	orientation 0 1 0 1.5708
	fieldOfView 0.785398
}
Viewpoint
{
	position 0 0 5
	description "i1*i2"
	fieldOfView 0.785398
}

Viewpoint
{
	description "i2*i4"
	position -5 0 0
	orientation 0 1 0 -1.5708
	fieldOfView 0.785398
}

Viewpoint
{
	description "i4*i5"
	position 0 0 -5
	orientation 0 1 0 -3.14159
	fieldOfView 0.785398
}



DirectionalLight
{
	direction -0.5 -1 0
	intensity 0.75
}
DirectionalLight
{
	direction 0.5 1 0
	intensity 0.75
}
Group
{ 
	children
	[
		Transform 
		{
			translation 0 1.6 0
			scale 0.3 0.3 0.3
			children
			[
    			Billboard
				{
					children
					[
    					Shape
    					{
    						appearance Appearance { material Material {diffuseColor 1 1 1 } } # white text 
    						geometry Text
    						{
    							string "Dekany i1, i2, i3, i4, i5 (+ pentads with i6)"
    							fontStyle FontStyle{justify ["MIDDLE","MIDDLE"]}
    						}
    					}
					]
				}
			]
		}
		Transform 
		{
			rotation 0 1 0.6 0.5
			children  
			[
				#8 triads
				Viewpoint
				{
					description "i1*i2 i1*i4 i1*i5"
					position 2.88675 2.88675 2.88675
					orientation -0.590284 0.769274 0.244504 0.987861
					fieldOfView 0.785398
				}

				Viewpoint
				{
					description "i1*i5 i1*i4 i4*i5"
					position 2.88675 2.88675 -2.88675
					orientation -0.124491 0.945607 0.300549 2.39496
					fieldOfView 0.785398
				}

				Viewpoint
				{
					description "i5*i1 i5*i2 i5*i4"
					position 2.88675 -2.88675 -2.88675
					orientation 0.124491 0.945607 -0.300549 2.39496
					fieldOfView 0.785398
				}

				Viewpoint
				{
					description "i2*i4 i2*i5 i4*i5"
					position -2.88675 -2.88675 -2.88675
					orientation -0.124491 0.945607 -0.300549 -2.39496
					fieldOfView 0.785398
				}

				Viewpoint
				{
					description "i4*i1 i4*i2 i4*i5"
					position -2.88675 2.88675 -2.88675
					orientation 0.124491 0.945607 0.300549 -2.39496
					fieldOfView 0.785398
				}

				Viewpoint
				{
					description "i1*i2 i1*i4 i2*i4"
					position -2.88675 2.88675 2.88675
					orientation 0.590284 0.769274 0.244504 -0.987861
					fieldOfView 0.785398
				}

				Viewpoint
				{
					description "i2*i1 i2*i4 i2*i5"
					position -2.88675 -2.88675 2.88675
					orientation -0.590284 0.769274 -0.244504 -0.987861
					fieldOfView 0.785398
				}

				Viewpoint
				{
					description "i1*i2 i1*i5 i2*i5"
					position 2.88675 -2.88675 2.88675
					orientation 0.590284 0.769274 -0.244504 0.987861
					fieldOfView 0.785398
				}
				#12 diads
				Viewpoint
				{
					description "i1*i4 i1*i5"
					position 3.53553 3.53553 0
					orientation -0.357407 0.862856 0.357407 1.71777
					fieldOfView 0.785398
				}

				Viewpoint
				{
					description "i5*i1 i5*i2"
					position 3.53553 -3.53553 0
					orientation 0.357407 0.862856 -0.357407 1.71777
					fieldOfView 0.785398
				}

				Viewpoint
				{
					description "i2*i4 i2*i5"
					position -3.53553 -3.53553 0
					orientation -0.357407 0.862856 -0.357407 -1.71777
					fieldOfView 0.785398
				}

				Viewpoint
				{
					description "i4*i1 i4*i2"
					position -3.53553 3.53553 0
					orientation 0.357407 0.862856 0.357407 -1.71777
					fieldOfView 0.785398
				}

				Viewpoint
				{
					description "i2*i1 i2*i4"
					position -3.53553 0 3.53553
					orientation 0 1 0 -0.785398
					fieldOfView 0.785398
				}

				Viewpoint
				{
					description "i1*i2 i1*i5"
					position 3.53553 0 3.53553
					orientation 0 1 0 0.785398
					fieldOfView 0.785398
				}

				Viewpoint
				{
					description "i5*i1 i5*i4"
					position 3.53553 0 -3.53553
					orientation 0 1 0 2.35619
					fieldOfView 0.785398
				}


				Viewpoint
				{
					description "i4*i2 i4*i5"
					position -3.53553 0 -3.53553
					orientation 0 1 0 -2.35619
					fieldOfView 0.785398
				}


				Viewpoint
				{
					description "i5*i2 i5*i4"
					position 0 -3.53553 -3.53553
					orientation 0 0.92388 -0.382683 -3.14159
					fieldOfView 0.785398
				}

				Viewpoint
				{
					description "i4*i1 i4*i5"
					position 0 3.53553 -3.53553
					orientation 0 0.92388 0.382683 -3.14159
					fieldOfView 0.785398
				}

				Viewpoint
				{
					description "i1*i2 i1*i4"
					position 0 3.53553 3.53553
					orientation 1 0 0 -0.785398
					fieldOfView 0.785398
				}

				Viewpoint
				{
					description "i2*i1 i2*i5"
					position 0 -3.53553 3.53553
					orientation 1 0 0 0.785398
					fieldOfView 0.785398
				}
     			Transform 
    			{
    				translation -0.5 -0.5 0.5
					scale 0.2 0.2 0.2
    				children
    				[
    					Billboard
						{
    						children
    						[
    							DEF Touch_i2si3 TouchSensor{}
    							Shape
    							{
        							appearance Appearance { material Material {diffuseColor 0 0 0 } } 
        							geometry Text
        							{
        								string "i2*i3"
        								fontStyle FontStyle{justify ["MIDDLE","MIDDLE"]}
        							}
    							}
    							Shape
    							{
        							appearance Appearance { material Material {diffuseColor 1 1 0 transparency  1} } 
        							geometry Sphere{radius 0.5}
    							}
    						]
    					}
    				]
    			}
     			Transform 
    			{
    				translation -0.5 0.5 -0.5
					scale 0.2 0.2 0.2
    				children
    				[
    					Billboard
						{
    						children
    						[
    							DEF Touch_i3si4 TouchSensor{}
    							Shape
    							{
        							appearance Appearance { material Material {diffuseColor 0 0 0 } } 
        							geometry Text
        							{
        								string "i3*i4"
        								fontStyle FontStyle{justify ["MIDDLE","MIDDLE"]}
        							}
    							}
    							Shape
    							{
        							appearance Appearance { material Material {diffuseColor 1 1 0 transparency  1} } 
        							geometry Sphere{radius 0.5}
    							}
    						]
    					}
    				]
    			}

     			Transform 
    			{
    				translation 0.5 -0.5 -0.5
					scale 0.2 0.2 0.2
    				children
    				[
    					Billboard
						{
    						children
    						[
    							DEF Touch_i3si5 TouchSensor{}
    							Shape
    							{
        							appearance Appearance { material Material {diffuseColor 0 0 0 } }        							geometry Text
        							{
        								string "i3*i5"
        								fontStyle FontStyle{justify ["MIDDLE","MIDDLE"]}
        							}
    							}
    							Shape
    							{
        							appearance Appearance { material Material {diffuseColor 1 1 0 transparency  1} } 
        							geometry Sphere{radius 0.5}
    							}
    						]
    					}
    				]
    			}
     			Transform 
    			{
    				translation 0.5 0.5 0.5
					scale 0.2 0.2 0.2
    				children
    				[
    					Billboard
						{
    						children
    						[
    							DEF Touch_i1si3 TouchSensor{}
    							Shape
    							{
        							appearance Appearance { material Material {diffuseColor 0 0 0 } }        							geometry Text
        							{
        								string "i1*i3"
        								fontStyle FontStyle{justify ["MIDDLE","MIDDLE"]}
        							}
    							}
    							Shape
    							{
        							appearance Appearance { material Material {diffuseColor 1 1 0 transparency  1} } 
        							geometry Sphere{radius 0.5}
    							}
    						]
    					}
    				]
    			}
     			Transform 
    			{
    				translation 1.1 0 0
					scale 0.2 0.2 0.2
    				children
    				[
    					Billboard
						{
    						children
    						[
    							DEF Touch_i1si5 TouchSensor{}
    							Shape
    							{
        							appearance Appearance { material Material {diffuseColor 1 1 1 } } # white text 
        							geometry Text
        							{
        								string "i1*i5"
        								fontStyle FontStyle{justify ["MIDDLE","MIDDLE"]}
        							}
    							}
    							Shape
    							{
        							appearance Appearance { material Material {diffuseColor 1 1 0 transparency  1} } 
        							geometry Sphere{radius 0.5}
    							}
    						]
    					}
    				]
    			}
    			Transform 
    			{
    				translation -1.1 0 0
					scale 0.2 0.2 0.2
    				children
    				[
    					Billboard
						{
    						children
    						[
								DEF Touch_i2si4 TouchSensor{}
    							Shape
    							{
    								appearance Appearance { material Material {diffuseColor 1 1 1 } } # white text 
    								geometry Text
    								{
        								string "i2*i4"
        								fontStyle FontStyle{justify ["MIDDLE","MIDDLE"]}
    								}
    							}
    							Shape
    							{
    								appearance Appearance { material Material {diffuseColor 1 1 0 transparency  1} } 
    								geometry Sphere{radius 0.5}
    							}
							]
						}
    				]
    			}
    			Transform 
    			{
    				translation 0 1.1 0
					scale 0.2 0.2 0.2
    				children
    				[
    					Billboard
						{
    						children
    						[
								DEF Touch_i1si4 TouchSensor{}
    							Shape
    							{
    								appearance Appearance { material Material {diffuseColor 1 1 1 } } # white text 
    								geometry Text
    								{
        								string "i1*i4"
        								fontStyle FontStyle{justify ["MIDDLE","MIDDLE"]}
    								}
    							}
    							Shape
    							{
    								appearance Appearance { material Material {diffuseColor 1 1 0 transparency  1} } 
    								geometry Sphere{radius 0.5}
    							}
							]
						}
					]

    			}
    			Transform 
    			{
    				translation 0 -1.1 0
					scale 0.2 0.2 0.2
    				children
    				[
    					Billboard
						{
    						children
    						[
								DEF Touch_i2si5 TouchSensor{}
    							Shape
    							{
    								appearance Appearance { material Material {diffuseColor 1 1 1 } } # white text 
    								geometry Text
    								{
        								string "i2*i5"
        								fontStyle FontStyle{justify ["MIDDLE","MIDDLE"]}
    								}
    							}
    							Shape
    							{
    								appearance Appearance { material Material {diffuseColor 1 1 0 transparency  1} } 
    								geometry Sphere{radius 0.5}
    							}
							]
						}
    				]
    			}
    			Transform 
    			{
    				translation 0 0 1.1
					scale 0.2 0.2 0.2
    				children
    				[
    					Billboard
						{
    						children
    						[
								DEF Touch_i1si2 TouchSensor{}
    							Shape
    							{
    								appearance Appearance { material Material {diffuseColor 1 1 1 } } # white text 
    								geometry Text
    								{
        								string "i1*i2"
        								fontStyle FontStyle{justify ["MIDDLE","MIDDLE"]}
    								}
    							}
    							Shape
    							{
    								appearance Appearance { material Material {diffuseColor 1 1 0 transparency  1} } 
    								geometry Sphere{radius 0.5}
    							}
							]
						}
    				]
    			}
    			Transform 
    			{
    				translation 0 0 -1.1
					scale 0.2 0.2 0.2
    				children
    				[
    					Billboard
						{
    						children
    						[
								DEF Touch_i4si5 TouchSensor{}
    							Shape
    							{
    								appearance Appearance { material Material {diffuseColor 1 1 1 } } # white text 
    								geometry Text
    								{
        								string "i4*i5"
        								fontStyle FontStyle{justify ["MIDDLE","MIDDLE"]}
    								}
    							}
    							Shape
    							{
    								appearance Appearance { material Material {diffuseColor 1 1 0 transparency  1} } 
    								geometry Sphere{radius 0.5}
    							}
							]
						}
    				]
   				}
				#diads
    			Transform 
    			{
    				translation xx/2 -xx/2 -(1+xx)/2
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i3si5_i4si5 TouchSensor{}
    					DEF DiadSphere Shape 
    					{
        					appearance Appearance { material Material {diffuseColor 0 1 1 transparency  0} } 
        					geometry Sphere{radius 0.3}
    					}
					]
     			}
    			Transform 
    			{
    				translation xx/2 -(1+xx)/2 -xx/2
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i2si5_i3si5 TouchSensor{}
    					USE DiadSphere
					]
     			}
    			Transform 
    			{
    				translation (1+xx)/2 -xx/2 -xx/2
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i1si5_i3si5 TouchSensor{}
    					USE DiadSphere
					]
     			}
    			Transform 
    			{
    				translation -xx/2 (1+xx)/2 -xx/2
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i1si4_i3si4 TouchSensor{}
    					USE DiadSphere
					]
     			}
    			Transform 
    			{
    				translation -(1+xx)/2 xx/2 -xx/2
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i2si4_i3si4 TouchSensor{}
    					USE DiadSphere
					]
     			}
    			Transform 
    			{
    				translation -xx/2 xx/2 -(1+xx)/2
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i3si4_i4si5 TouchSensor{}
    					USE DiadSphere
					]
     			}
    			Transform 
    			{
    				translation (1+xx)/2 xx/2 xx/2
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i1si3_i1si5 TouchSensor{}
    					USE DiadSphere
					]
     			}
     			Transform 
    			{
    				translation xx/2 (1+xx)/2 xx/2
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i1si3_i1si4 TouchSensor{}
    					USE DiadSphere
					]
     			}
     			Transform 
    			{
    				translation xx/2 xx/2 (1+xx)/2
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i1si2_i1si3 TouchSensor{}
    					USE DiadSphere
					]
     			}
    			Transform 
    			{
    				translation -xx/2 -(1+xx)/2 xx/2
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i2si3_i2si5 TouchSensor{}
    					USE DiadSphere
					]
     			}
    			Transform 
    			{
    				translation -(1+xx)/2 -xx/2 xx/2
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i2si3_i2si4 TouchSensor{}
    					USE DiadSphere
					]
     			}
    			Transform 
    			{
    				translation -xx/2 -xx/2 (1+xx)/2
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i1si2_i2si3 TouchSensor{}
    					USE DiadSphere
					]
     			}
     			Transform 
    			{
    				translation -xx 0 0
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i2si3_i3si4 TouchSensor{}
    					USE DiadSphere
					]
     			}
    			Transform 
    			{
    				translation 0 -xx 0
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i2si3_i3si5 TouchSensor{}
    					USE DiadSphere
					]
     			}
    			Transform 
    			{
    				translation 0 0 -xx
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i3si4_i3si5 TouchSensor{}
    					USE DiadSphere
					]
     			}
    			Transform 
    			{
    				translation 0 xx 0
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i1si3_i3si4 TouchSensor{}
    					USE DiadSphere
					]
     			}
    			Transform 
    			{
    				translation 0 0 xx
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i1si3_i2si3 TouchSensor{}
    					USE DiadSphere
					]
     			}
    			Transform 
    			{
    				translation xx 0 0
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i1si3_i3si5 TouchSensor{}
    					USE DiadSphere
					]
     			}
    			Transform 
    			{
    				translation 0.5 0.5 0
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i1si4_i1si5 TouchSensor{}
    					USE DiadSphere
					]
     			}
   				Transform 
    			{
    				translation -0.5 -0.5 0
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i2si4_i2si5 TouchSensor{}
    					USE DiadSphere
    				]
    			}
    			Transform 
    			{
    				translation 0.5 0 0.5
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i1si2_i1si5 TouchSensor{}
    					USE DiadSphere
    				]
    			}
    			Transform 
    			{
    				translation -0.5 0 -0.5
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i2si4_i4si5 TouchSensor{}
    					USE DiadSphere
    				]
    			}
    			Transform 
    			{
    				translation 0 0.5 0.5
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i1si2_i1si4 TouchSensor{}
    					USE DiadSphere
    				]
    			}
    			Transform 
    			{
    				translation 0 -0.5 -0.5
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i2si5_i4si5 TouchSensor{}
    					USE DiadSphere
    				]
    			}
    			Transform 
    			{
    				translation 0.5 0 -0.5
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i1si5_i4si5 TouchSensor{}
    					USE DiadSphere
    				]
    			}
     			Transform 
    			{
    				translation -0.5 0 0.5
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i1si2_i2si4 TouchSensor{}
    					USE DiadSphere
    				]
    			}
     			Transform 
    			{
    				translation -0.5 0.5 0
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i1si4_i2si4 TouchSensor{}
    					USE DiadSphere
    				]
    			}
     			Transform 
    			{
    				translation 0.5 -0.5 0
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i1si5_i2si5 TouchSensor{}
    					USE DiadSphere
    				]
    			}
     			Transform 
    			{
    				translation 0 0.5 -0.5
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i1si4_i4si5 TouchSensor{}
    					USE DiadSphere
    				]
    			}
     			Transform 
    			{
    				translation 0 -0.5 0.5
					scale 0.14 0.14 0.14
    				children
    				[
    					DEF Touch_i1si2_i2si5 TouchSensor{}
    					USE DiadSphere
    				]
    			}
				#triads
     			Transform 
    			{
    				translation xx/3 -xx/3 xx/3
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si3_i2si3_i3si5 TouchSensor{}
    					DEF TriadSphere1 Shape
    					{
        					appearance Appearance { material Material {diffuseColor 0 0 0.6 transparency  0} } 
        					geometry Sphere{radius 0.3}
    					}
    				]
    			}
     			Transform 
    			{
    				translation -xx/3 -xx/3 -xx/3
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i2si3_i3si4_i3si5 TouchSensor{}
						USE TriadSphere1
    				]
    			}
     			Transform 
    			{
    				translation -xx/3 xx/3 xx/3
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si3_i2si3_i3si4 TouchSensor{}
						USE TriadSphere1
    				]
    			}
     			Transform 
    			{
    				translation xx/3 xx/3 -xx/3
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si3_i3si4_i3si5 TouchSensor{}
						USE TriadSphere1
    				]
    			}
     			Transform 
    			{
    				translation (1+xx)/3 xx/3 (1+xx)/3
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si2_i1si3_i1si5 TouchSensor{}
    					DEF TriadSphere2 Shape
    					{
        					appearance Appearance { material Material {diffuseColor 1 1 0 transparency  0} } 
        					geometry Sphere{radius 0.3}
    					}
    				]
    			}
     			Transform 
    			{
    				translation xx/3 (1+xx)/3 (1+xx)/3
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si2_i1si3_i1si4 TouchSensor{}
						USE TriadSphere2
    				]
    			}
     			Transform 
    			{
    				translation (1+xx)/3 (1+xx)/3 xx/3
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si3_i1si4_i1si5 TouchSensor{}
						USE TriadSphere2
    				]
    			}
     			Transform 
    			{
    				translation (1+xx)/3 -(1+xx)/3 -xx/3
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si5_i2si5_i3si5 TouchSensor{}
						USE TriadSphere2
    				]
    			}
     			Transform 
    			{
    				translation xx/3 -(1+xx)/3 -(1+xx)/3
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i2si5_i3si5_i4si5 TouchSensor{}
						USE TriadSphere2
    				]
    			}
     			Transform 
    			{
    				translation (1+xx)/3 -xx/3 -(1+xx)/3
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si5_i3si5_i4si5 TouchSensor{}
						USE TriadSphere2
    				]
    			}
     			Transform 
    			{
    				translation -xx/3 (1+xx)/3 -(1+xx)/3
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si4_i3si4_i4si5 TouchSensor{}
						USE TriadSphere2
    				]
    			}
     			Transform 
    			{
    				translation -(1+xx)/3 (1+xx)/3 -xx/3
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si4_i2si4_i3si4 TouchSensor{}
						USE TriadSphere2
    				]
    			}
     			Transform 
    			{
    				translation -(1+xx)/3 xx/3 -(1+xx)/3
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i2si4_i3si4_i4si5 TouchSensor{}
						USE TriadSphere2
    				]
    			}
     			Transform 
    			{
    				translation -xx/3 -(1+xx)/3 (1+xx)/3
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si2_i2si3_i2si5 TouchSensor{}
						USE TriadSphere2
    				]
    			}
     			Transform 
    			{
    				translation -(1+xx)/3 -(1+xx)/3 xx/3
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i2si3_i2si4_i2si5 TouchSensor{}
						USE TriadSphere2
    				]
    			}
     			Transform 
    			{
    				translation -(1+xx)/3 -xx/3 (1+xx)/3
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si2_i2si3_i2si4 TouchSensor{}
						USE TriadSphere2
    				]
    			}
     			Transform 
    			{
    				translation 0 -(1+2*xx)/3 0
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i2si3_i2si5_i3si5 TouchSensor{}
    					DEF TriadSphere3 Shape
    					{
        					appearance Appearance { material Material {diffuseColor 1 0 1 transparency  0} } 
        					geometry Sphere{radius 0.3}
    					}
    				]
    			}
     			Transform 
    			{
    				translation 0 (1+2*xx)/3 0
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si3_i1si4_i3si4 TouchSensor{}
						USE TriadSphere3
    				]
    			}
     			Transform 
    			{
    				translation 0 0 (1+2*xx)/3
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si2_i1si3_i2si3 TouchSensor{}
						USE TriadSphere3
    				]
    			}
     			Transform 
    			{
    				translation -(1+2*xx)/3 0 0
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i2si3_i2si4_i3si4 TouchSensor{}
						USE TriadSphere3
    				]
    			}
     			Transform 
    			{
    				translation 0 0 -(1+2*xx)/3
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i3si4_i3si5_i4si5 TouchSensor{}
						USE TriadSphere3
    				]
    			}
     			Transform 
    			{
    				translation (1+2*xx)/3 0 0
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si3_i1si5_i3si5 TouchSensor{}
						USE TriadSphere3
    				]
    			}
     			Transform 
    			{
    				translation 0.33333 0.33333 0.33333
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si2_i1si4_i1si5 TouchSensor{}
    					DEF TriadSphere3 Shape
    					{
        					appearance Appearance { material Material {diffuseColor 1 0 0 transparency  0} } 
        					geometry Sphere{radius 0.3}
    					}
    				]
    			}
     			Transform 
    			{
    				translation -0.33333 -0.33333 -0.33333
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i2si4_i2si5_i4si5 TouchSensor{}
						USE	TriadSphere3
    				]
    			}
     			Transform 
    			{
    				translation 0.33333 -0.33333 -0.33333
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si5_i2si5_i4si5 TouchSensor{}
						USE	TriadSphere3
    				]
    			}
     			Transform 
    			{
    				translation -0.33333 0.33333 0.33333
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si2_i1si4_i2si4 TouchSensor{}
						USE	TriadSphere3
    				]
    			}
     			Transform 
    			{
    				translation  0.33333 0.33333 -0.33333
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si4_i1si5_i4si5 TouchSensor{}
						USE	TriadSphere3
    				]
    			}
     			Transform 
    			{
    				translation  -0.33333 -0.33333 0.33333
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si2_i2si4_i2si5 TouchSensor{}
						USE	TriadSphere3
    				]
    			}
     			Transform 
    			{
    				translation  -0.33333 0.33333 -0.33333
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si4_i2si4_i4si5 TouchSensor{}
						USE	TriadSphere3
    				]
    			}
     			Transform 
    			{
    				translation  0.33333 -0.33333 0.33333
					scale 0.2 0.2 0.2
    				children
    				[
    					DEF Touch_i1si2_i1si5_i2si5 TouchSensor{}
						USE	TriadSphere3
    				]
    			}
     			Transform 
    			{
    				children
    				[
    					DEF Touch_i1si2_i1si3_i1si4_i1si5 TouchSensor{}
    					Shape
    					{
    						appearance DEF Face1Colour Appearance { material Material {diffuseColor 0 0 0.5 transparency  0} }
    						geometry  DEF OuterTetrahedron_adj_6 IndexedFaceSet
    						{
    							solid FALSE
    							coord DEF OctahedronVertices Coordinate
    							{
    								point
    								[
										1 0 0, #0
										0 1 0, #1
										0 0 1, #2
										-1 0 0, #3
										0 -1 0, #4
										0 0 -1, #5
										xx xx xx	#6
										xx -xx -xx #7
										-xx xx -xx #8
										-xx -xx xx #9
    								]
    					}
    							coordIndex
    							[
    								0,1,2,-1,#tetrahedron adj 6
    								1,2,6,-1,
									0,2,6,-1,
									0,1,6,-1,
    							]
    						}
						}
					]
				}
     			Transform 
    			{
    				translation 0.65 0.65 0.65
					scale 0.2 0.2 0.2
   					children
    				[
    					DEF Touch_i1si2_i1si3_i1si4_i1si5_i1si6 TouchSensor{}
    					DEF PentadSphere Shape
    					{
        					appearance Appearance { material Material {diffuseColor 1 1 1 transparency 0} } 
        					geometry Sphere{radius 0.5}
    					}
    				]
    			}
     			Transform 
    			{
    				children
    				[
    					DEF Touch_i1si5_i2si5_i3si5_i4si5 TouchSensor{}
    					Shape
    					{
    						appearance  USE Face1Colour
    						geometry  DEF OuterTetrahedron_adj_7 IndexedFaceSet
    						{
    							solid FALSE
    							coord USE OctahedronVertices
    							coordIndex
    							[
    								0,4,5,-1,#tetrahedron adj 7
    								4,5,7,-1,
									0,4,7,-1,
									0,5,7,-1,
    							]
    						}
						}
					]
				}
     			Transform 
    			{
    				translation 0.65 -0.65 -0.65
					scale 0.2 0.2 0.2
   					children
    				[
    					DEF Touch_i1si5_i2si5_i3si5_i4si5_i5si6 TouchSensor{}
    					USE PentadSphere
    				]
    			}
     			Transform 
    			{
    				children
    				[
    					DEF Touch_i1si4_i2si4_i3si4_i4si5 TouchSensor{}
    					Shape
    					{
    						appearance  USE Face1Colour
    						geometry  DEF OuterTetrahedron_adj_8 IndexedFaceSet
    						{
    							solid FALSE
    							coord USE OctahedronVertices
    							coordIndex
    							[
    								1,3,5,-1,#tetrahedron adj 8
									1,5,8,-1,
									1,3,8,-1,
									3,5,8,-1,
    							]
    						}
						}
					]
				}
     			Transform 
    			{
    				translation -0.65 0.65 -0.65
					scale 0.2 0.2 0.2
   					children
    				[
    					DEF Touch_i1si4_i2si4_i3si4_i4si5_i4si6 TouchSensor{}
    					USE PentadSphere
    				]
    			}
     			Transform 
    			{
    				children
    				[
    					DEF Touch_i1si2_i2si3_i2si4_i2si5 TouchSensor{}
    					Shape
    					{
    						appearance  USE Face1Colour
    						geometry  DEF OuterTetrahedron_adj_9 IndexedFaceSet
    						{
    							solid FALSE
    							coord USE OctahedronVertices
    							coordIndex
    							[
    								2,3,4,-1,#tetrahedron adj 9
     								2,4,9,-1,
									2,3,9,-1,
									3,4,9,-1,
    							]
    						}
						}
					]
				}
     			Transform 
    			{
    				translation -0.65 -0.65 0.65
					scale 0.2 0.2 0.2
   					children
    				[
    					DEF Touch_i1si2_i2si3_i2si4_i2si5_i2si6 TouchSensor{}
    					USE PentadSphere
    				]
    			}
     			Transform 
    			{
    				children
    				[
    					DEF Touch_i1si3_i2si3_i3si4_i3si5 TouchSensor{}
    					Shape
    					{
    						appearance Appearance { material Material {diffuseColor 1 0 0 transparency  0} }
    						geometry  DEF CentreTetrahedron IndexedFaceSet
    						{
    							solid FALSE
    							coord USE OctahedronVertices
    							coordIndex
    							[
    								6,7,8,-1,#central tetrahedron
    								7,8,9,-1,
    								6,8,9,-1,
    								6,7,9,-1,
    							]
    						}
						}
					]
				}
     			Transform 
    			{
    				translation 0 0 0
					scale 0.4 0.4 0.4
   					children
    				[
    					DEF Touch_i1si3_i2si3_i3si4_i3si5_i3si6 TouchSensor{}
    					USE PentadSphere
    				]
    			}
     			Shape
    			{
    				appearance Appearance { material Material {emissiveColor 1 1 0} } 
    				geometry DEF ThisPolysLines IndexedLineSet
    				{
    					coord USE OctahedronVertices
    					coordIndex
    					[
							6,7,-1,	#6,7,0,
							7,0,-1,
							0,6,-1,
							7,8,-1,	#7,8,5,
							8,5,-1,
							5,7,-1,
							8,9,-1,	#8,9,3,
							9,3,-1,
							3,8,-1,
							9,6,-1,	#9,6,2,
							6,2,-1,
							2,9,-1,
							6,8,-1,	#6,8,1,
							8,1,-1,
							1,6,-1,
							7,9,-1,	#7,9,4,
							9,4,-1,
							4,7,-1,
							2,1,-1,	
							2,3,-1,
							2,4,-1,
							2,0,-1,
							1,3,-1,
							3,4,-1,
							4,0,-1,
							0,1,-1,
							5,0,-1,
							5,1,-1,
							5,3,-1,
							5,4,-1,
    					]
    				}
    			}
			]
		}
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si5 AudioClip {url "i1si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si4 AudioClip {url "i1si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2 AudioClip {url "i1si2.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si4 AudioClip {url "i2si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si5 AudioClip {url "i2si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i4si5 AudioClip {url "i4si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si3 AudioClip {url "i1si3.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i3si5 AudioClip {url "i3si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i3si4 AudioClip {url "i3si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si3 AudioClip {url "i2si3.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i3si5_i4si5 AudioClip {url "i3si5_i4si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si5_i3si5 AudioClip {url "i2si5_i3si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si5_i3si5 AudioClip {url "i1si5_i3si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si4_i3si4 AudioClip {url "i1si4_i3si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si4_i3si4 AudioClip {url "i2si4_i3si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i3si4_i4si5 AudioClip {url "i3si4_i4si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si3_i1si5 AudioClip {url "i1si3_i1si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si3_i1si4 AudioClip {url "i1si3_i1si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i1si3 AudioClip {url "i1si2_i1si3.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si3_i2si5 AudioClip {url "i2si3_i2si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si3_i2si4 AudioClip {url "i2si3_i2si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i2si3 AudioClip {url "i1si2_i2si3.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si3_i3si4 AudioClip {url "i2si3_i3si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si3_i3si5 AudioClip {url "i2si3_i3si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i3si4_i3si5 AudioClip {url "i3si4_i3si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si3_i3si4 AudioClip {url "i1si3_i3si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si3_i2si3 AudioClip {url "i1si3_i2si3.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si3_i3si5 AudioClip {url "i1si3_i3si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si4_i1si5 AudioClip {url "i1si4_i1si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si4_i2si5 AudioClip {url "i2si4_i2si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i1si5 AudioClip {url "i1si2_i1si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si4_i4si5 AudioClip {url "i2si4_i4si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i1si4 AudioClip {url "i1si2_i1si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si5_i4si5 AudioClip {url "i2si5_i4si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si5_i4si5 AudioClip {url "i1si5_i4si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i2si4 AudioClip {url "i1si2_i2si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si4_i2si4 AudioClip {url "i1si4_i2si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si5_i2si5 AudioClip {url "i1si5_i2si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si4_i4si5 AudioClip {url "i1si4_i4si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i2si5 AudioClip {url "i1si2_i2si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si3_i2si3_i3si5 AudioClip {url "i1si3_i2si3_i3si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si3_i3si4_i3si5 AudioClip {url "i2si3_i3si4_i3si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si3_i2si3_i3si4 AudioClip {url "i1si3_i2si3_i3si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si3_i3si4_i3si5 AudioClip {url "i1si3_i3si4_i3si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i1si3_i1si5 AudioClip {url "i1si2_i1si3_i1si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i1si3_i1si4 AudioClip {url "i1si2_i1si3_i1si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si3_i1si4_i1si5 AudioClip {url "i1si3_i1si4_i1si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si5_i2si5_i3si5 AudioClip {url "i1si5_i2si5_i3si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si5_i3si5_i4si5 AudioClip {url "i2si5_i3si5_i4si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si5_i3si5_i4si5 AudioClip {url "i1si5_i3si5_i4si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si4_i3si4_i4si5 AudioClip {url "i1si4_i3si4_i4si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si4_i2si4_i3si4 AudioClip {url "i1si4_i2si4_i3si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si4_i3si4_i4si5 AudioClip {url "i2si4_i3si4_i4si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i2si3_i2si5 AudioClip {url "i1si2_i2si3_i2si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si3_i2si4_i2si5 AudioClip {url "i2si3_i2si4_i2si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i2si3_i2si4 AudioClip {url "i1si2_i2si3_i2si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si3_i2si5_i3si5 AudioClip {url "i2si3_i2si5_i3si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si3_i1si4_i3si4 AudioClip {url "i1si3_i1si4_i3si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i1si3_i2si3 AudioClip {url "i1si2_i1si3_i2si3.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si3_i2si4_i3si4 AudioClip {url "i2si3_i2si4_i3si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i3si4_i3si5_i4si5 AudioClip {url "i3si4_i3si5_i4si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si3_i1si5_i3si5 AudioClip {url "i1si3_i1si5_i3si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i2si4_i2si5 AudioClip {url "i1si2_i2si4_i2si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i1si4_i1si5 AudioClip {url "i1si2_i1si4_i1si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i2si4_i2si5_i4si5 AudioClip {url "i2si4_i2si5_i4si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si5_i2si5_i4si5 AudioClip {url "i1si5_i2si5_i4si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i1si4_i2si4 AudioClip {url "i1si2_i1si4_i2si4.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si4_i1si5_i4si5 AudioClip {url "i1si4_i1si5_i4si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si4_i2si4_i4si5 AudioClip {url "i1si4_i2si4_i4si5.mid" description "MIDI clip"} }
		Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i1si5_i2si5 AudioClip {url "i1si2_i1si5_i2si5.mid" description "MIDI clip"} }
    	Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i1si3_i1si4_i1si5 AudioClip {url "i1si2_i1si3_i1si4_i1si5.mid" description "MIDI clip"} }
    	Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si5_i2si5_i3si5_i4si5 AudioClip {url "i1si5_i2si5_i3si5_i4si5.mid" description "MIDI clip"} }
    	Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si4_i2si4_i3si4_i4si5 AudioClip {url "i1si4_i2si4_i3si4_i4si5.mid" description "MIDI clip"} }
    	Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i2si3_i2si4_i2si5 AudioClip {url "i1si2_i2si3_i2si4_i2si5.mid" description "MIDI clip"} }
     	Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si3_i2si3_i3si4_i3si5 AudioClip {url "i1si3_i2si3_i3si4_i3si5.mid" description "MIDI clip"} }
    	Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i1si3_i1si4_i1si5_i1si6 AudioClip {url "i1si2_i1si3_i1si4_i1si5_i1si6.mid" description "MIDI clip"} }
    	Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si5_i2si5_i3si5_i4si5_i5si6 AudioClip {url "i1si5_i2si5_i3si5_i4si5_i5si6.mid" description "MIDI clip"} }
    	Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si4_i2si4_i3si4_i4si5_i4si6 AudioClip {url "i1si4_i2si4_i3si4_i4si5_i4si6.mid" description "MIDI clip"} }
    	Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si2_i2si3_i2si4_i2si5_i2si6 AudioClip {url "i1si2_i2si3_i2si4_i2si5_i2si6.mid" description "MIDI clip"} }
     	Sound {maxBack 1000  maxFront 1000 source DEF Audio_i1si3_i2si3_i3si4_i3si5_i3si6 AudioClip {url "i1si3_i2si3_i3si4_i3si5_i3si6.mid" description "MIDI clip"} }
	]  
	ROUTE Touch_i1si5.touchTime TO Audio_i1si5.startTime
	ROUTE Touch_i1si4.touchTime TO Audio_i1si4.startTime
	ROUTE Touch_i1si2.touchTime TO Audio_i1si2.startTime
	ROUTE Touch_i2si4.touchTime TO Audio_i2si4.startTime
	ROUTE Touch_i2si5.touchTime TO Audio_i2si5.startTime

	ROUTE Touch_i4si5.touchTime TO Audio_i4si5.startTime
	ROUTE Touch_i1si3.touchTime TO Audio_i1si3.startTime
	ROUTE Touch_i3si5.touchTime TO Audio_i3si5.startTime
	ROUTE Touch_i3si4.touchTime TO Audio_i3si4.startTime
	ROUTE Touch_i2si3.touchTime TO Audio_i2si3.startTime

	ROUTE Touch_i3si5_i4si5.touchTime TO Audio_i3si5_i4si5.startTime
	ROUTE Touch_i2si5_i3si5.touchTime TO Audio_i2si5_i3si5.startTime
	ROUTE Touch_i1si5_i3si5.touchTime TO Audio_i1si5_i3si5.startTime
	ROUTE Touch_i1si4_i3si4.touchTime TO Audio_i1si4_i3si4.startTime
	ROUTE Touch_i2si4_i3si4.touchTime TO Audio_i2si4_i3si4.startTime

	ROUTE Touch_i3si4_i4si5.touchTime TO Audio_i3si4_i4si5.startTime
	ROUTE Touch_i1si3_i1si5.touchTime TO Audio_i1si3_i1si5.startTime
	ROUTE Touch_i1si3_i1si4.touchTime TO Audio_i1si3_i1si4.startTime
	ROUTE Touch_i1si2_i1si3.touchTime TO Audio_i1si2_i1si3.startTime
	ROUTE Touch_i2si3_i2si5.touchTime TO Audio_i2si3_i2si5.startTime


	ROUTE Touch_i2si3_i2si4.touchTime TO Audio_i2si3_i2si4.startTime
	ROUTE Touch_i1si2_i2si3.touchTime TO Audio_i1si2_i2si3.startTime
	ROUTE Touch_i2si3_i3si4.touchTime TO Audio_i2si3_i3si4.startTime
	ROUTE Touch_i2si3_i3si5.touchTime TO Audio_i2si3_i3si5.startTime
	ROUTE Touch_i3si4_i3si5.touchTime TO Audio_i3si4_i3si5.startTime

	ROUTE Touch_i1si3_i3si4.touchTime TO Audio_i1si3_i3si4.startTime
	ROUTE Touch_i1si3_i2si3.touchTime TO Audio_i1si3_i2si3.startTime
	ROUTE Touch_i1si3_i3si5.touchTime TO Audio_i1si3_i3si5.startTime
	ROUTE Touch_i1si4_i1si5.touchTime TO Audio_i1si4_i1si5.startTime
	ROUTE Touch_i2si4_i2si5.touchTime TO Audio_i2si4_i2si5.startTime


	ROUTE Touch_i1si2_i1si5.touchTime TO Audio_i1si2_i1si5.startTime
	ROUTE Touch_i2si4_i4si5.touchTime TO Audio_i2si4_i4si5.startTime
	ROUTE Touch_i1si2_i1si4.touchTime TO Audio_i1si2_i1si4.startTime
	ROUTE Touch_i2si5_i4si5.touchTime TO Audio_i2si5_i4si5.startTime
	ROUTE Touch_i1si5_i4si5.touchTime TO Audio_i1si5_i4si5.startTime

	ROUTE Touch_i1si2_i2si4.touchTime TO Audio_i1si2_i2si4.startTime
	ROUTE Touch_i1si4_i2si4.touchTime TO Audio_i1si4_i2si4.startTime
	ROUTE Touch_i1si5_i2si5.touchTime TO Audio_i1si5_i2si5.startTime
	ROUTE Touch_i1si4_i4si5.touchTime TO Audio_i1si4_i4si5.startTime
	ROUTE Touch_i1si2_i2si5.touchTime TO Audio_i1si2_i2si5.startTime


	ROUTE Touch_i1si3_i2si3_i3si5.touchTime TO Audio_i1si3_i2si3_i3si5.startTime
	ROUTE Touch_i2si3_i3si4_i3si5.touchTime TO Audio_i2si3_i3si4_i3si5.startTime
	ROUTE Touch_i1si3_i2si3_i3si4.touchTime TO Audio_i1si3_i2si3_i3si4.startTime
	ROUTE Touch_i1si3_i3si4_i3si5.touchTime TO Audio_i1si3_i3si4_i3si5.startTime
	ROUTE Touch_i1si2_i1si3_i1si5.touchTime TO Audio_i1si2_i1si3_i1si5.startTime

	ROUTE Touch_i1si2_i1si3_i1si4.touchTime TO Audio_i1si2_i1si3_i1si4.startTime
	ROUTE Touch_i1si3_i1si4_i1si5.touchTime TO Audio_i1si3_i1si4_i1si5.startTime
	ROUTE Touch_i1si5_i2si5_i3si5.touchTime TO Audio_i1si5_i2si5_i3si5.startTime
	ROUTE Touch_i2si5_i3si5_i4si5.touchTime TO Audio_i2si5_i3si5_i4si5.startTime
	ROUTE Touch_i1si5_i3si5_i4si5.touchTime TO Audio_i1si5_i3si5_i4si5.startTime


	ROUTE Touch_i1si4_i3si4_i4si5.touchTime TO Audio_i1si4_i3si4_i4si5.startTime
	ROUTE Touch_i1si4_i2si4_i3si4.touchTime TO Audio_i1si4_i2si4_i3si4.startTime
	ROUTE Touch_i2si4_i3si4_i4si5.touchTime TO Audio_i2si4_i3si4_i4si5.startTime
	ROUTE Touch_i1si2_i2si3_i2si5.touchTime TO Audio_i1si2_i2si3_i2si5.startTime
	ROUTE Touch_i2si3_i2si4_i2si5.touchTime TO Audio_i2si3_i2si4_i2si5.startTime

	ROUTE Touch_i1si2_i2si3_i2si4.touchTime TO Audio_i1si2_i2si3_i2si4.startTime
	ROUTE Touch_i2si3_i2si5_i3si5.touchTime TO Audio_i2si3_i2si5_i3si5.startTime
	ROUTE Touch_i1si3_i1si4_i3si4.touchTime TO Audio_i1si3_i1si4_i3si4.startTime
	ROUTE Touch_i1si2_i1si3_i2si3.touchTime TO Audio_i1si2_i1si3_i2si3.startTime
	ROUTE Touch_i2si3_i2si4_i3si4.touchTime TO Audio_i2si3_i2si4_i3si4.startTime




	ROUTE Touch_i3si4_i3si5_i4si5.touchTime TO Audio_i3si4_i3si5_i4si5.startTime
	ROUTE Touch_i1si3_i1si5_i3si5.touchTime TO Audio_i1si3_i1si5_i3si5.startTime
	ROUTE Touch_i1si2_i2si4_i2si5.touchTime TO Audio_i1si2_i2si4_i2si5.startTime
	ROUTE Touch_i1si2_i1si4_i1si5.touchTime TO Audio_i1si2_i1si4_i1si5.startTime
	ROUTE Touch_i2si4_i2si5_i4si5.touchTime TO Audio_i2si4_i2si5_i4si5.startTime

	ROUTE Touch_i1si5_i2si5_i4si5.touchTime TO Audio_i1si5_i2si5_i4si5.startTime
	ROUTE Touch_i1si2_i1si4_i2si4.touchTime TO Audio_i1si2_i1si4_i2si4.startTime
	ROUTE Touch_i1si4_i1si5_i4si5.touchTime TO Audio_i1si4_i1si5_i4si5.startTime
	ROUTE Touch_i1si4_i2si4_i4si5.touchTime TO Audio_i1si4_i2si4_i4si5.startTime
	ROUTE Touch_i1si2_i1si5_i2si5.touchTime TO Audio_i1si2_i1si5_i2si5.startTime

	ROUTE Touch_i1si2_i1si3_i1si4_i1si5.touchTime TO Audio_i1si2_i1si3_i1si4_i1si5.startTime
	ROUTE Touch_i1si5_i2si5_i3si5_i4si5.touchTime TO Audio_i1si5_i2si5_i3si5_i4si5.startTime
	ROUTE Touch_i1si4_i2si4_i3si4_i4si5.touchTime TO Audio_i1si4_i2si4_i3si4_i4si5.startTime
	ROUTE Touch_i1si2_i2si3_i2si4_i2si5.touchTime TO Audio_i1si2_i2si3_i2si4_i2si5.startTime
	ROUTE Touch_i1si3_i2si3_i3si4_i3si5.touchTime TO Audio_i1si3_i2si3_i3si4_i3si5.startTime
	ROUTE Touch_i1si2_i1si3_i1si4_i1si5_i1si6.touchTime TO Audio_i1si2_i1si3_i1si4_i1si5_i1si6.startTime
	ROUTE Touch_i1si5_i2si5_i3si5_i4si5_i5si6.touchTime TO Audio_i1si5_i2si5_i3si5_i4si5_i5si6.startTime
	ROUTE Touch_i1si4_i2si4_i3si4_i4si5_i4si6.touchTime TO Audio_i1si4_i2si4_i3si4_i4si5_i4si6.startTime
	ROUTE Touch_i1si2_i2si3_i2si4_i2si5_i2si6.touchTime TO Audio_i1si2_i2si3_i2si4_i2si5_i2si6.startTime
	ROUTE Touch_i1si3_i2si3_i3si4_i3si5_i3si6.touchTime TO Audio_i1si3_i2si3_i3si4_i3si5_i3si6.startTime
}

    