 		default:
 			magnitude = ""
 		}
-		label.text = "\(xs)\n\(magnitude)\n\(y)"
+//		label.text = "\(xs)\n\(magnitude)\n\(y)"
+		label.attributedText = text
 		view.setNeedsLayout()
 	}
 	
 	override func viewWillLayoutSubviews() {
 		super.viewWillLayoutSubviews()
 		
-		var f = view.bounds.insetBy(dx: 40, dy: 10)
-		f.size.height = 100
+		var f = view.bounds.insetBy(dx: 0, dy: 10)
+		f.size.height = 64
 		f.origin.y = view.bounds.midY - 50
 		focusView.frame = f
 		
-		let size = label.sizeThatFits(f.size)
-		label.frame = CGRect(origin: CGPointZero, size: size)
-		label.center = focusView.center
+		do {
+			let size = titleLabel.sizeThatFits(f.size)
+			let labelx = f.minX + 20
+			let labely = f.midY - size.height / 2
+			titleLabel.frame = CGRect(origin: CGPoint(x: labelx, y: labely), size: size)
+		}
+		do {
+			let size = label.sizeThatFits(f.size)
+			let labelx = f.maxX - size.width - 20
+			let labely = f.midY - size.height / 2
+			label.frame = CGRect(origin: CGPoint(x: labelx, y: labely), size: size)
+		}
 	}
 	
 	var xOriginal: CGFloat = 0

	
	lazy var focusView: UIView = {
		let instance = UIView()
		instance.backgroundColor = UIColor.redColor()
		return instance
	}()
	

	var y: Int = 0
	
	func updateLabel() {
		
		let xs = String(format: "%.3f", x)
		
		var cutpoint = y + 3
		if y >= 0 {
			cutpoint += 1
		}
		var fp = ""
		var sp = ""
		for (index, char) in xs.characters.reverse().enumerate() {
			if index >= cutpoint {
				fp = "\(char)\(fp)"
			} else {
				sp = "\(char)\(sp)"
			}
		}

		let firstPart = NSAttributedString(string: fp, attributes: [NSForegroundColorAttributeName: UIColor.blackColor()])
		let secondPart = NSAttributedString(string: sp, attributes: [NSForegroundColorAttributeName: UIColor.lightGrayColor()])
		
		let text = NSMutableAttributedString()
		text.appendAttributedString(firstPart)
		text.appendAttributedString(secondPart)

		
		var magnitude = ""
		switch y {
		case -3: magnitude = "0.001"
