diff --git a/tools/generate-2d-drawings.py b/tools/generate-2d-drawings.py
index e6cd381..3840ece 100644
--- a/tools/generate-2d-drawings.py
+++ b/tools/generate-2d-drawings.py
@@ -11,248 +11,270 @@ verbose = False
 
 project_folder = os.getcwd()
 
+def apply_styles(page):
+	modified = False
+	
+	dim_font_size = 3.0
+	
+	for view in page.Views:
+		if view.TypeId == 'TechDraw::DrawViewDimension':
+			if view.ViewObject.Fontsize != dim_font_size:
+				view.ViewObject.Fontsize = dim_font_size
+				modified = True
+				
+	return modified
+
 async def generate_2d_drawing(file_name):
 	doc = App.open(project_folder + '/' + file_name)
 	
+	modified = False
+	
 	page_name = doc.Name + '_Drawing'
 	
-	if doc.getObject(page_name) is not None:
+	page = doc.getObject(page_name)
+	if page is not None:
 		print('2D drawing already exists - skipped')
-		return
 	
-	template_file_name = project_folder + '/lib/A4_Landscape_VSPT.svg'
-
-	root_objects = []
-	main_object = None
-
-	for obj in doc.Objects:
-		if len(obj.Parents) == 0:
-			root_objects.append(obj)
-			if obj.Label == doc.Name:
-				main_object = obj
-
-	if main_object is None and len(root_objects) == 1:
-		main_object = root_objects[0]
-
-	if main_object is None:
-		raise Exception("Can't find main object in file " + doc.FileName + " (found " + str(len(root_objects)) + " root object(s), none named like the document " + doc.Name + ")")
-
-	code_obj = doc.getObjectsByLabel('Code_Tube_Draft')
-	if len(code_obj) == 1:
-		code_obj = code_obj[0]
 	else:
-		code_obj = None
-
-	sources = [main_object]
-
-	bound_box = main_object.Shape.BoundBox
-	proj_size = [0, 0, 0] # size of the original part front view after projection at scale 1:1
-	if bound_box.XLength > bound_box.YLength:
-		if bound_box.XLength > bound_box.ZLength:
-			main_axis = 0
-			proj_size[0] = bound_box.XLength
-			proj_size[1] = bound_box.ZLength
-			proj_size[2] = bound_box.YLength
+		modified = True
+		template_file_name = project_folder + '/lib/A4_Landscape_VSPT.svg'
+	
+		root_objects = []
+		main_object = None
+	
+		for obj in doc.Objects:
+			if len(obj.Parents) == 0:
+				root_objects.append(obj)
+				if obj.Label == doc.Name:
+					main_object = obj
+	
+		if main_object is None and len(root_objects) == 1:
+			main_object = root_objects[0]
+	
+		if main_object is None:
+			raise Exception("Can't find main object in file " + doc.FileName + " (found " + str(len(root_objects)) + " root object(s), none named like the document " + doc.Name + ")")
+	
+		code_obj = doc.getObjectsByLabel('Code_Tube_Draft')
+		if len(code_obj) == 1:
+			code_obj = code_obj[0]
 		else:
-			main_axis = 2
-			proj_size[0] = bound_box.ZLength
-			proj_size[1] = bound_box.XLength
-			proj_size[2] = bound_box.YLength
-	else:
-		if bound_box.YLength > bound_box.ZLength:
-			main_axis = 1
-			proj_size[0] = bound_box.YLength
-			proj_size[1] = bound_box.ZLength
-			proj_size[2] = bound_box.XLength
+			code_obj = None
+	
+		sources = [main_object]
+	
+		bound_box = main_object.Shape.BoundBox
+		proj_size = [0, 0, 0] # size of the original part front view after projection at scale 1:1
+		if bound_box.XLength > bound_box.YLength:
+			if bound_box.XLength > bound_box.ZLength:
+				main_axis = 0
+				proj_size[0] = bound_box.XLength
+				proj_size[1] = bound_box.ZLength
+				proj_size[2] = bound_box.YLength
+			else:
+				main_axis = 2
+				proj_size[0] = bound_box.ZLength
+				proj_size[1] = bound_box.XLength
+				proj_size[2] = bound_box.YLength
 		else:
-			main_axis = 2
-			proj_size[0] = bound_box.ZLength
-			proj_size[1] = bound_box.XLength
-			proj_size[2] = bound_box.YLength
-
-	if verbose: print("Adding drawing page...");
-			
-	page = doc.addObject('TechDraw::DrawPage', page_name)
-	template = doc.addObject('TechDraw::DrawSVGTemplate', 'Template')
-
-	template.Template = template_file_name
-	page.Template = template
-	
-	if verbose: print("Computing best scale...");
-	scale_denominators = [4.0, 5.0, 6.0, 8.0, 10.0]
-	scale_numerator = 1.0
-	scale_denominator = scale_denominators[0]
-	proj_total_size = [proj_size[0] + proj_size[2], proj_size[1] + proj_size[2]] # projected size of all views (without spacing) at scale 1:1
-	spacingX = 20.0
-	spacingY = 50.0
-	maxSizeX = 280.0
-	maxSizeY = 160.0
-	for denom in scale_denominators:
-		scale_denominator = denom
-		if proj_total_size[0]*scale_numerator/denom + spacingX <= maxSizeX and proj_total_size[1]*scale_numerator/denom + spacingY <= maxSizeY:
-			break
-
-	if verbose: print("Adding projection group...");
-	
-	projGroup = doc.addObject('TechDraw::DrawProjGroup', doc.Name + '_ProjGroup')
-	page.addView(projGroup)
-	projGroup.ScaleType = 'Custom'
-	projGroup.Scale = scale_numerator/scale_denominator
-	projGroup.spacingX = 20.0
-	projGroup.spacingY = 50.0
-	projGroup.Source = sources
-	projGroup.addProjection('Front')
-	if main_axis == 0:
-			projGroup.Anchor.Direction = App.Vector(0,1,0)
-			projGroup.Anchor.XDirection = App.Vector(-1,0,0)
-			projGroup.Anchor.RotationVector = App.Vector(-1,0,0)
-	elif main_axis == 1:
-			projGroup.Anchor.Direction = App.Vector(1,0,0)
-			projGroup.Anchor.XDirection = App.Vector(0,1,0)
-			projGroup.Anchor.RotationVector = App.Vector(0,1,0)
-	elif main_axis == 2:
-			projGroup.Anchor.Direction = App.Vector(0,1,0)
-			projGroup.Anchor.XDirection = App.Vector(0,0,1)
-			projGroup.Anchor.RotationVector = App.Vector(0,0,1)
-	projGroup.addProjection('Top')
-	projGroup.addProjection('Left')
-	projGroup.X = 130.0
-	projGroup.Y = 150.0
-
-	texts = page.Template.EditableTexts
-	texts['SCALE'] = str(int(scale_numerator+0.5))+':'+str(int(scale_denominator+0.5))
-	try:
-		texts['PM'] = main_object.Assembly_handbook_Material
-	except:
-		pass
-	texts['PN'] = doc.Name
-	texts['TITLELINE-1'] = doc.Name
-	page.Template.EditableTexts = texts
-
-	async def addDimensions():
-		for view in projGroup.Views:
-			if verbose: print("View: " + view.Label + "...")
-
-			edges = []
-			visibleEdges = view.getVisibleEdges()
-			edgeIdx = 0
-			lowestEdgeName = ''
-			lowestEdgePos = 1000000
-			while True:
-				try:
-					edge = view.getEdgeByIndex(edgeIdx)
-				except:
-					break
-				edges.append(edge)
-
-				if edge.BoundBox.YLength < 0.01 and edge.BoundBox.Center.y < lowestEdgePos:
-					lowestEdgePos = edge.BoundBox.Center.y
-					lowestEdgeName = 'Edge' + str(edgeIdx)
-
-				edgeIdx = edgeIdx + 1
-			
-			vertices = []
-			vertIdx = 0
-			while True:
-				try:
-					vert = view.getVertexByIndex(vertIdx)
-				except:
-					break
-				vertices.append(vert)
-				vertIdx = vertIdx + 1
-
-			def getFeatureName(edge):
-				if edge.Curve.TypeId == 'Part::GeomCircle':
-					vertIdx = 0
-					c = edge.BoundBox.Center
-					closestDist = 100000000
-					closestVert = None
-					for vert in vertices:
-						dx = vert.X - c.x
-						dy = vert.Y - c.y
-						dist = math.sqrt(dx*dx + dy*dy)
-						if dist < closestDist:
-							closestDist = dist
-							closestVert = vert
-						vertIdx = vertIdx + 1
-					if closestVert is not None:
-						return 'Vertex' + str(vertices.index(closestVert))
+			if bound_box.YLength > bound_box.ZLength:
+				main_axis = 1
+				proj_size[0] = bound_box.YLength
+				proj_size[1] = bound_box.ZLength
+				proj_size[2] = bound_box.XLength
+			else:
+				main_axis = 2
+				proj_size[0] = bound_box.ZLength
+				proj_size[1] = bound_box.XLength
+				proj_size[2] = bound_box.YLength
+	
+		if verbose: print("Adding drawing page...");
+				
+		page = doc.addObject('TechDraw::DrawPage', page_name)
+		template = doc.addObject('TechDraw::DrawSVGTemplate', 'Template')
+	
+		template.Template = template_file_name
+		page.Template = template
+		
+		if verbose: print("Computing best scale...");
+		scale_denominators = [4.0, 5.0, 6.0, 8.0, 10.0]
+		scale_numerator = 1.0
+		scale_denominator = scale_denominators[0]
+		proj_total_size = [proj_size[0] + proj_size[2], proj_size[1] + proj_size[2]] # projected size of all views (without spacing) at scale 1:1
+		spacingX = 20.0
+		spacingY = 50.0
+		maxSizeX = 280.0
+		maxSizeY = 160.0
+		for denom in scale_denominators:
+			scale_denominator = denom
+			if proj_total_size[0]*scale_numerator/denom + spacingX <= maxSizeX and proj_total_size[1]*scale_numerator/denom + spacingY <= maxSizeY:
+				break
+	
+		if verbose: print("Adding projection group...");
+		
+		projGroup = doc.addObject('TechDraw::DrawProjGroup', doc.Name + '_ProjGroup')
+		page.addView(projGroup)
+		projGroup.ScaleType = 'Custom'
+		projGroup.Scale = scale_numerator/scale_denominator
+		projGroup.spacingX = 20.0
+		projGroup.spacingY = 50.0
+		projGroup.Source = sources
+		projGroup.addProjection('Front')
+		if main_axis == 0:
+				projGroup.Anchor.Direction = App.Vector(0,1,0)
+				projGroup.Anchor.XDirection = App.Vector(-1,0,0)
+				projGroup.Anchor.RotationVector = App.Vector(-1,0,0)
+		elif main_axis == 1:
+				projGroup.Anchor.Direction = App.Vector(1,0,0)
+				projGroup.Anchor.XDirection = App.Vector(0,1,0)
+				projGroup.Anchor.RotationVector = App.Vector(0,1,0)
+		elif main_axis == 2:
+				projGroup.Anchor.Direction = App.Vector(0,1,0)
+				projGroup.Anchor.XDirection = App.Vector(0,0,1)
+				projGroup.Anchor.RotationVector = App.Vector(0,0,1)
+		projGroup.addProjection('Top')
+		projGroup.addProjection('Left')
+		projGroup.X = 130.0
+		projGroup.Y = 150.0
+	
+		texts = page.Template.EditableTexts
+		texts['SCALE'] = str(int(scale_numerator+0.5))+':'+str(int(scale_denominator+0.5))
+		try:
+			texts['PM'] = main_object.Assembly_handbook_Material
+		except:
+			pass
+		texts['PN'] = doc.Name
+		texts['TITLELINE-1'] = doc.Name
+		page.Template.EditableTexts = texts
+	
+		async def addDimensions():
+			for view in projGroup.Views:
+				if verbose: print("View: " + view.Label + "...")
+	
+				edges = []
+				visibleEdges = view.getVisibleEdges()
+				edgeIdx = 0
+				lowestEdgeName = ''
+				lowestEdgePos = 1000000
+				while True:
+					try:
+						edge = view.getEdgeByIndex(edgeIdx)
+					except:
+						break
+					edges.append(edge)
+	
+					if edge.BoundBox.YLength < 0.01 and edge.BoundBox.Center.y < lowestEdgePos:
+						lowestEdgePos = edge.BoundBox.Center.y
+						lowestEdgeName = 'Edge' + str(edgeIdx)
+	
+					edgeIdx = edgeIdx + 1
+				
+				vertices = []
+				vertIdx = 0
+				while True:
+					try:
+						vert = view.getVertexByIndex(vertIdx)
+					except:
+						break
+					vertices.append(vert)
+					vertIdx = vertIdx + 1
+	
+				def getFeatureName(edge):
+					if edge.Curve.TypeId == 'Part::GeomCircle':
+						vertIdx = 0
+						c = edge.BoundBox.Center
+						closestDist = 100000000
+						closestVert = None
+						for vert in vertices:
+							dx = vert.X - c.x
+							dy = vert.Y - c.y
+							dist = math.sqrt(dx*dx + dy*dy)
+							if dist < closestDist:
+								closestDist = dist
+								closestVert = vert
+							vertIdx = vertIdx + 1
+						if closestVert is not None:
+							return 'Vertex' + str(vertices.index(closestVert))
+						else:
+							return ''
 					else:
-						return ''
-				else:
-					return 'Edge'+str(edges.index(edge))
-
-			if verbose: print("Listing features...")
-			features = []
-			for edge in edges:
-				if (edge.Curve.TypeId == 'Part::GeomLine' and edge.BoundBox.XLength <= 0.01) or (edge.Curve.TypeId == 'Part::GeomCircle' and abs(edge.Curve.Radius * 2.0 - edge.BoundBox.XLength) < 0.001 and abs(edge.Curve.Radius * 2.0 - edge.BoundBox.YLength) < 0.001):
-					featureName = getFeatureName(edge)
-					if featureName == '':
-						continue
-					
-					pos = edge.BoundBox.Center.x
-					duplicate = False
-					for otherFeature in features:
-						if abs(otherFeature[0] - pos) < 0.1:
-							duplicate = True
-							break
-					if not duplicate:
-						features.append((pos, edge, featureName))
-			features.sort(key=lambda e: e[0])
-
-			def addDimension(edgeA, edgeB, posY):
-				dim = doc.addObject('TechDraw::DrawViewDimension','Dimension')
-				dim.Type = 'DistanceX'
-				dim.FormatSpec = '%.1f'
-				dim.References2D = [(view, (getFeatureName(edgeA), getFeatureName(edgeB)))]
-				visibleEdgeA = visibleEdges[edges.index(edgeA)]
-				visibleEdgeB = visibleEdges[edges.index(edgeB)]
-				dim.X = (visibleEdgeA.BoundBox.Center.x + visibleEdgeB.BoundBox.Center.x) * 0.5
-				dim.Y = posY
-				page.addView(dim)
-
-				if edgeB.Curve.TypeId == 'Part::GeomCircle': 
-					if abs(edgeB.BoundBox.XLength - 6.5) > 0.01:
-						dim = doc.addObject('TechDraw::DrawViewDimension','Dimension')
-						dim.Type = 'Diameter'
-						dim.FormatSpec = '%.1f'
-						dim.References2D = [(view, ('Edge'+str(edges.index(edgeB)),))]
-						dim.X = visibleEdgeB.BoundBox.Center.x + 6.0
-						dim.Y = -6.0
-						page.addView(dim)
-
-					if abs(edgeB.BoundBox.Center.y) > 0.01 and lowestEdgeName != '':
-						dim = doc.addObject('TechDraw::DrawViewDimension','Dimension')
-						dim.Type = 'DistanceY'
-						dim.FormatSpec = '%.1f'
-						dim.References2D = [(view, (getFeatureName(edgeB),lowestEdgeName))]
-						dim.X = visibleEdgeB.BoundBox.Center.x + 2.0
-						dim.Y = -6.0
-						page.addView(dim)
-
-			if verbose: print("Adding dimensions...")
+						return 'Edge'+str(edges.index(edge))
+	
+				if verbose: print("Listing features...")
+				features = []
+				for edge in edges:
+					if (edge.Curve.TypeId == 'Part::GeomLine' and edge.BoundBox.XLength <= 0.01) or (edge.Curve.TypeId == 'Part::GeomCircle' and abs(edge.Curve.Radius * 2.0 - edge.BoundBox.XLength) < 0.001 and abs(edge.Curve.Radius * 2.0 - edge.BoundBox.YLength) < 0.001):
+						featureName = getFeatureName(edge)
+						if featureName == '':
+							continue
 						
-			if len(features) >= 2:
-				if projGroup.Views.index(view) != 0:
-					addDimension(features[0][1], features[len(features)-1][1], -25.0)
-
-				if len(features) > 2:
-					for featureIdx in range(0, len(features) - 1):
-						if featureIdx == 0 or features[featureIdx][1].Curve.TypeId != 'Part::GeomLine':
-							addDimension(features[featureIdx][1], features[featureIdx + 1][1], 15.0)
-
-		if verbose: print("Adding secondary objects...")
-		if code_obj is not None:
-			projGroup.Source = projGroup.Source + [code_obj]
-
-	page.recompute(True)
-	await vspt_coroutine.get_main_loop().wait(1)
-	await addDimensions()
-	
-	if verbose: print("Saving...")
-	page.recompute(True)
-	page.ViewObject.Visibility = False # don't save the document with the page open or it will automatically reopen on load
-	doc.save()
+						pos = edge.BoundBox.Center.x
+						duplicate = False
+						for otherFeature in features:
+							if abs(otherFeature[0] - pos) < 0.1:
+								duplicate = True
+								break
+						if not duplicate:
+							features.append((pos, edge, featureName))
+				features.sort(key=lambda e: e[0])
+	
+				def addDimension(edgeA, edgeB, posY):
+					dim = doc.addObject('TechDraw::DrawViewDimension','Dimension')
+					dim.Type = 'DistanceX'
+					dim.FormatSpec = '%.1f'
+					dim.References2D = [(view, (getFeatureName(edgeA), getFeatureName(edgeB)))]
+					visibleEdgeA = visibleEdges[edges.index(edgeA)]
+					visibleEdgeB = visibleEdges[edges.index(edgeB)]
+					dim.X = (visibleEdgeA.BoundBox.Center.x + visibleEdgeB.BoundBox.Center.x) * 0.5
+					dim.Y = posY
+					page.addView(dim)
+	
+					if edgeB.Curve.TypeId == 'Part::GeomCircle': 
+						if abs(edgeB.BoundBox.XLength - 6.5) > 0.01:
+							dim = doc.addObject('TechDraw::DrawViewDimension','Dimension')
+							dim.Type = 'Diameter'
+							dim.FormatSpec = '%.1f'
+							dim.References2D = [(view, ('Edge'+str(edges.index(edgeB)),))]
+							dim.X = visibleEdgeB.BoundBox.Center.x + 6.0
+							dim.Y = -6.0
+							page.addView(dim)
+	
+						if abs(edgeB.BoundBox.Center.y) > 0.01 and lowestEdgeName != '':
+							dim = doc.addObject('TechDraw::DrawViewDimension','Dimension')
+							dim.Type = 'DistanceY'
+							dim.FormatSpec = '%.1f'
+							dim.References2D = [(view, (getFeatureName(edgeB),lowestEdgeName))]
+							dim.X = visibleEdgeB.BoundBox.Center.x + 2.0
+							dim.Y = -6.0
+							page.addView(dim)
+	
+				if verbose: print("Adding dimensions...")
+							
+				if len(features) >= 2:
+					if projGroup.Views.index(view) != 0:
+						addDimension(features[0][1], features[len(features)-1][1], -25.0)
+	
+					if len(features) > 2:
+						for featureIdx in range(0, len(features) - 1):
+							if featureIdx == 0 or features[featureIdx][1].Curve.TypeId != 'Part::GeomLine':
+								addDimension(features[featureIdx][1], features[featureIdx + 1][1], 15.0)
+	
+			if verbose: print("Adding secondary objects...")
+			if code_obj is not None:
+				projGroup.Source = projGroup.Source + [code_obj]
+	
+		page.recompute(True)
+		await vspt_coroutine.get_main_loop().wait(1)
+		await addDimensions()
+		
+	if apply_styles(page):
+		modified = True
+	
+	if modified:
+		if verbose: print("Saving...")
+		page.recompute(True)
+		page.ViewObject.Visibility = False # don't save the document with the page open or it will automatically reopen on load
+		await vspt_coroutine.get_main_loop().wait(1)
+		doc.save()
 	
 	if verbose: print("Closing...")
 	vspt_freecad.close_all_docs()
diff --git a/tubes/E16.FCStd b/tubes/E16.FCStd
index df4cbfc..f40f184 100644
Binary files a/tubes/E16.FCStd and b/tubes/E16.FCStd differ
diff --git a/tubes/E20.FCStd b/tubes/E20.FCStd
index d6e3a80..7e2a791 100644
Binary files a/tubes/E20.FCStd and b/tubes/E20.FCStd differ
diff --git a/tubes/E21.FCStd b/tubes/E21.FCStd
index 24795d8..ffab880 100644
Binary files a/tubes/E21.FCStd and b/tubes/E21.FCStd differ
diff --git a/tubes/E36.FCStd b/tubes/E36.FCStd
index 9d7b759..b028fe1 100644
Binary files a/tubes/E36.FCStd and b/tubes/E36.FCStd differ
diff --git a/tubes/L00.FCStd b/tubes/L00.FCStd
index 77d4a53..1f7ff4c 100644
Binary files a/tubes/L00.FCStd and b/tubes/L00.FCStd differ
diff --git a/tubes/L01.FCStd b/tubes/L01.FCStd
index 31931b4..1a80caa 100644
Binary files a/tubes/L01.FCStd and b/tubes/L01.FCStd differ
diff --git a/tubes/L02.FCStd b/tubes/L02.FCStd
index 0c9c7f9..bee7847 100644
Binary files a/tubes/L02.FCStd and b/tubes/L02.FCStd differ
diff --git a/tubes/L03.FCStd b/tubes/L03.FCStd
index b826566..00eb667 100644
Binary files a/tubes/L03.FCStd and b/tubes/L03.FCStd differ
diff --git a/tubes/L04.FCStd b/tubes/L04.FCStd
index 1739d95..1200c04 100644
Binary files a/tubes/L04.FCStd and b/tubes/L04.FCStd differ
diff --git a/tubes/L05.FCStd b/tubes/L05.FCStd
index 29e6c4f..714e5a1 100644
Binary files a/tubes/L05.FCStd and b/tubes/L05.FCStd differ
diff --git a/tubes/L06.FCStd b/tubes/L06.FCStd
index 04d9e8f..b156f43 100644
Binary files a/tubes/L06.FCStd and b/tubes/L06.FCStd differ
diff --git a/tubes/L07.FCStd b/tubes/L07.FCStd
index c821ac1..2edaded 100644
Binary files a/tubes/L07.FCStd and b/tubes/L07.FCStd differ
diff --git a/tubes/L08.FCStd b/tubes/L08.FCStd
index 7f9b0df..6170e8c 100644
Binary files a/tubes/L08.FCStd and b/tubes/L08.FCStd differ
diff --git a/tubes/L09.FCStd b/tubes/L09.FCStd
index a25650c..f6be6bd 100644
Binary files a/tubes/L09.FCStd and b/tubes/L09.FCStd differ
diff --git a/tubes/L10.FCStd b/tubes/L10.FCStd
index b4aff7d..e92b85d 100644
Binary files a/tubes/L10.FCStd and b/tubes/L10.FCStd differ
diff --git a/tubes/L11.FCStd b/tubes/L11.FCStd
index a1fc0c9..2bcb69d 100644
Binary files a/tubes/L11.FCStd and b/tubes/L11.FCStd differ
diff --git a/tubes/L12.FCStd b/tubes/L12.FCStd
index 0dda898..e50e90b 100644
Binary files a/tubes/L12.FCStd and b/tubes/L12.FCStd differ
diff --git a/tubes/M00.FCStd b/tubes/M00.FCStd
index d4a0983..7b0397d 100644
Binary files a/tubes/M00.FCStd and b/tubes/M00.FCStd differ
diff --git a/tubes/M01.FCStd b/tubes/M01.FCStd
index 3b06384..2c0839f 100644
Binary files a/tubes/M01.FCStd and b/tubes/M01.FCStd differ
diff --git a/tubes/M02.FCStd b/tubes/M02.FCStd
index 9efa11c..a223422 100644
Binary files a/tubes/M02.FCStd and b/tubes/M02.FCStd differ
diff --git a/tubes/M03.FCStd b/tubes/M03.FCStd
index fd715fb..6e31f60 100644
Binary files a/tubes/M03.FCStd and b/tubes/M03.FCStd differ
diff --git a/tubes/M05.FCStd b/tubes/M05.FCStd
index 1c0a200..51dbc56 100644
Binary files a/tubes/M05.FCStd and b/tubes/M05.FCStd differ
diff --git a/tubes/M06.FCStd b/tubes/M06.FCStd
index bd41412..fde37e3 100644
Binary files a/tubes/M06.FCStd and b/tubes/M06.FCStd differ
diff --git a/tubes/M07.FCStd b/tubes/M07.FCStd
index 9019539..df8a035 100644
Binary files a/tubes/M07.FCStd and b/tubes/M07.FCStd differ
diff --git a/tubes/R00.FCStd b/tubes/R00.FCStd
index 116f577..7402f32 100644
Binary files a/tubes/R00.FCStd and b/tubes/R00.FCStd differ
diff --git a/tubes/R01.FCStd b/tubes/R01.FCStd
index 8bfdb22..ededba9 100644
Binary files a/tubes/R01.FCStd and b/tubes/R01.FCStd differ
diff --git a/tubes/R02.FCStd b/tubes/R02.FCStd
index 4bc2e6d..9cd3cd5 100644
Binary files a/tubes/R02.FCStd and b/tubes/R02.FCStd differ
diff --git a/tubes/R03.FCStd b/tubes/R03.FCStd
index fd49201..2389d49 100644
Binary files a/tubes/R03.FCStd and b/tubes/R03.FCStd differ
diff --git a/tubes/R04.FCStd b/tubes/R04.FCStd
index 6802105..208ae50 100644
Binary files a/tubes/R04.FCStd and b/tubes/R04.FCStd differ
diff --git a/tubes/T00.FCStd b/tubes/T00.FCStd
index 7d30cf1..85d375c 100644
Binary files a/tubes/T00.FCStd and b/tubes/T00.FCStd differ
diff --git a/tubes/T01.FCStd b/tubes/T01.FCStd
index bb5422e..e221bda 100644
Binary files a/tubes/T01.FCStd and b/tubes/T01.FCStd differ
diff --git a/tubes/T02.FCStd b/tubes/T02.FCStd
index 7cd3546..c18737b 100644
Binary files a/tubes/T02.FCStd and b/tubes/T02.FCStd differ
diff --git a/tubes/T03.FCStd b/tubes/T03.FCStd
index da95196..eb159da 100644
Binary files a/tubes/T03.FCStd and b/tubes/T03.FCStd differ
diff --git a/tubes/T04.FCStd b/tubes/T04.FCStd
index 639978e..1ac91b6 100644
Binary files a/tubes/T04.FCStd and b/tubes/T04.FCStd differ
diff --git a/tubes/T05.FCStd b/tubes/T05.FCStd
index f2074b2..71e8669 100644
Binary files a/tubes/T05.FCStd and b/tubes/T05.FCStd differ
diff --git a/tubes/T06.FCStd b/tubes/T06.FCStd
index 2aae846..5a16659 100644
Binary files a/tubes/T06.FCStd and b/tubes/T06.FCStd differ
diff --git a/tubes/T07.FCStd b/tubes/T07.FCStd
index 127e289..bc0f0cf 100644
Binary files a/tubes/T07.FCStd and b/tubes/T07.FCStd differ
diff --git a/tubes/T08.FCStd b/tubes/T08.FCStd
index a3b3700..bff1213 100644
Binary files a/tubes/T08.FCStd and b/tubes/T08.FCStd differ
diff --git a/tubes/T09.FCStd b/tubes/T09.FCStd
index 25b230b..26b3dfd 100644
Binary files a/tubes/T09.FCStd and b/tubes/T09.FCStd differ
diff --git a/tubes/T10.FCStd b/tubes/T10.FCStd
index 9096dfe..3bc5739 100644
Binary files a/tubes/T10.FCStd and b/tubes/T10.FCStd differ
diff --git a/tubes/T11.FCStd b/tubes/T11.FCStd
index d0d0600..b6fe837 100644
Binary files a/tubes/T11.FCStd and b/tubes/T11.FCStd differ
diff --git a/tubes/T12.FCStd b/tubes/T12.FCStd
index 0e83f44..137d6db 100644
Binary files a/tubes/T12.FCStd and b/tubes/T12.FCStd differ
diff --git a/tubes/T13.FCStd b/tubes/T13.FCStd
index a4b4192..08b3c2b 100644
Binary files a/tubes/T13.FCStd and b/tubes/T13.FCStd differ
diff --git a/tubes/T14.FCStd b/tubes/T14.FCStd
index 7733ca9..3d83aa5 100644
Binary files a/tubes/T14.FCStd and b/tubes/T14.FCStd differ
diff --git a/tubes/T15.FCStd b/tubes/T15.FCStd
index ecfa4d1..f63239f 100644
Binary files a/tubes/T15.FCStd and b/tubes/T15.FCStd differ
diff --git a/tubes/T16.FCStd b/tubes/T16.FCStd
index 8558a75..f57e44c 100644
Binary files a/tubes/T16.FCStd and b/tubes/T16.FCStd differ
diff --git a/tubes/T17.FCStd b/tubes/T17.FCStd
index 38ecf6f..9e1cc12 100644
Binary files a/tubes/T17.FCStd and b/tubes/T17.FCStd differ
diff --git a/tubes/T18.FCStd b/tubes/T18.FCStd
index 2de42b1..24becd1 100644
Binary files a/tubes/T18.FCStd and b/tubes/T18.FCStd differ
diff --git a/tubes/T19.FCStd b/tubes/T19.FCStd
index f89588a..19e1f62 100644
Binary files a/tubes/T19.FCStd and b/tubes/T19.FCStd differ
diff --git a/tubes/T20.FCStd b/tubes/T20.FCStd
index 50e3c6e..96baf98 100644
Binary files a/tubes/T20.FCStd and b/tubes/T20.FCStd differ
diff --git a/tubes/T21.FCStd b/tubes/T21.FCStd
index bab62bb..5aba4b0 100644
Binary files a/tubes/T21.FCStd and b/tubes/T21.FCStd differ
diff --git a/tubes/T22.FCStd b/tubes/T22.FCStd
index 97389da..c354824 100644
Binary files a/tubes/T22.FCStd and b/tubes/T22.FCStd differ
diff --git a/tubes/T23.FCStd b/tubes/T23.FCStd
index 12dbf0a..01a246b 100644
Binary files a/tubes/T23.FCStd and b/tubes/T23.FCStd differ
diff --git a/tubes/T24.FCStd b/tubes/T24.FCStd
index 70dc8ea..914be88 100644
Binary files a/tubes/T24.FCStd and b/tubes/T24.FCStd differ
diff --git a/tubes/T25.FCStd b/tubes/T25.FCStd
index 0f2ee62..8566f74 100644
Binary files a/tubes/T25.FCStd and b/tubes/T25.FCStd differ