 					tree.children[tree.children.indexOf(b)] = null
 
 			# if the colours or arrow have updated, save them
-			if a
-				a.colour = bit.first.colour if bit.first.colour
+			a.colour = bit.first.colour if a && bit.first.colour
+				
 			if b
 				b.colour = bit.second.colour if bit.second.colour
 				b.arrow = bit.arrow if bit.arrow


		return {rectangle:newRect, svg:actualRect}

	drawText: (x, y, text) ->
		@paper.text(x, y, text).attr(
			{"font-size": "13px", 
			"font-family":"'Shadows Into Light Two', sans-serif"
			})

	drawAndConnectToBlock:(previousBlock, block, childIndex, direction, arrow) ->
		previousRectangle = previousBlock.rectangle # block also contains the svg, just in case


		# <3 coffescript
		parsedBits.push(@parseLine line) for line in allTheLines;
		return @parseTree parsedBits

	parseTree: (parsedBits) ->
