 
 	// Layout the subviews
 	let kLabelLeftMargin: CGFloat = 15.0
+	let kUICuesMargin: CGFloat = 10.0, kUICuesWidth: CGFloat = 50.0
 	override func layoutSubviews() {
 		super.layoutSubviews()
 		// ensure the gradient layer occupies the full bounds
 		gradientLayer.frame = bounds
 		itemCompleteLayer.frame = bounds
 		label.frame = CGRect(x: kLabelLeftMargin, y: 0, width: bounds.size.width - kLabelLeftMargin, height: bounds.size.height)
+
+		tickLabel.frame = CGRect(x: -kUICuesWidth - kUICuesMargin, y: 0, width: kUICuesWidth, height: bounds.size.height)
+		crossLabel.frame = CGRect(x: bounds.size.width + kUICuesMargin, y: 0, width: kUICuesWidth, height: bounds.size.height)
 	}
+
 
 	// MARK: - horizontal pan gesture methods
 	func handlePan(recognizer: UIPanGestureRecognizer) {

		label.font = UIFont.boldSystemFontOfSize(16)
		label.backgroundColor = UIColor.clearColor()

		super.init(style: style, reuseIdentifier: reuseIdentifier)

		// set up the strike through text label
		addSubview(label)
		// remove the default blue highlight for selected cells
		selectionStyle = .None


			// has the user dragged the item far enough to initiate a delete/complete?
			deleteOnDragRelease = frame.origin.x < -frame.size.width / 2.0
			completeOnDragRelease = frame.origin.x > frame.size.width / 2.0

			// fade the contextual clues
			let cueAlpha = fabs(frame.origin.x) / (frame.size.width / 2.0)
			tickLabel.alpha = cueAlpha
			crossLabel.alpha = cueAlpha

			// indicate when the user has pulled the item far enough to invoke the given action
			tickLabel.textColor = completeOnDragRelease ? UIColor.greenColor() : UIColor.whiteColor()
			crossLabel.textColor = deleteOnDragRelease ? UIColor.redColor() : UIColor.whiteColor()
		}

		// 3
