 	required public init?(coder aDecoder: NSCoder) {
 		fatalError("init(coder:) has not been implemented")
 	}
-
-	///Get the matching NSLAyoutAttribute
-	///- Parameter edge: The screen edge
-	///- Returns: NSLayoutAttribute: The matching NSLayoutAttribute
-	class func layoutAttribute(for edge: UIRectEdge) -> NSLayoutAttribute {
-		return edge == .left ? .leading : .trailing
-	}
 }

		self.translatesAutoresizingMaskIntoConstraints = false
		hostView.addSubview(self)
		topConstraint = CariocaMenu.equalConstraint(self, toItem: tableView, attribute: .top)
		horizontalConstraint = makeHorizontalConstraint(hostView,
														attribute: CariocaIndicatorView.layoutAttribute(for: edge))
		hostView.addConstraints([
			NSLayoutConstraint(item: self,
							   attribute: .width, relatedBy: .equal,

										  edge: edge,
										  borderSpace: borderSpace,
										  bouncingValues: bouncingValues)
		print(positions)
		let mainConstraint = edge == .left ? leadingConstraint : trailingConstraint
		let secondConstraint = edge == .left ? trailingConstraint : leadingConstraint
		mainConstraint.priority = UILayoutPriority(100.0)
		secondConstraint.priority = UILayoutPriority(50.0)
		mainConstraint.constant = positions.start
//		self.superview?.layoutIfNeeded()
//
//		horizontalConstraint.constant = beforeEndPosition
//		UIView.animate(withDuration: 0.2,
//					   delay: 0,
//					   options: [.curveEaseIn],
//					   animations: {
//						self.superview?.layoutIfNeeded()
//		}, completion: { _ in
//			self.horizontalConstraint.constant = endPosition
//			UIView.animate(withDuration: 0.3,
//						   delay: 0,
//						   options: [.curveEaseOut],
//						   animations: {
//							self.superview?.layoutIfNeeded()
//			}, completion: { _ in
//				//TODO: Apply new constraint constant
//				//change priority
//			})
//		})
	}

	///Move the indicator to a specific index, by updating the top constraint value
