     case FloatWithSpacing(CGFloat)
 }
 
-public class SwiftCarousel: UIView, UIScrollViewDelegate {
+public class SwiftCarousel: UIView {
+    //MARK: - Properties
     private var maxVelocity: CGFloat = 100.0
     private var shouldScroll: Bool = false
     private var shouldScrollToPosition: CGFloat = 0.0
     private var myContext = 0
-    
-    //MARK: - Properties
     private var originalChoicesNumber: Int = 0
     private var choices: Array<UIView> = []
     private var scrollView = UIScrollView()

        }
    }
    
    public func selectItem(choice: Int, animated: Bool) {
        guard choice < choices.count / 3 else {
            return
        }
        var min: Int = originalChoicesNumber
        var index: Int = choice
        if let realSelectedIndex = self.realSelectedIndex {
            for choiceIndex in choice.stride(to: choices.count, by: originalChoicesNumber) {
                if abs(realSelectedIndex - choiceIndex) < min {
                    index = choiceIndex

        addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("H:|[scrollView]|", options: .AlignAllCenterX, metrics: nil, views: ["scrollView": scrollView]))
        addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("V:|[scrollView]|", options: .AlignAllCenterY, metrics: nil, views: ["scrollView": scrollView]))
        
        backgroundColor = UIColor.clearColor()
        scrollView.backgroundColor = UIColor.clearColor()
        scrollView.addObserver(self, forKeyPath: "contentOffset", options: [.New, .Old], context: nil)
        
        let gestureRecognizer = UITapGestureRecognizer(target: self, action: "viewTapped:")
        gestureRecognizer.cancelsTouchesInView = false
        scrollView.addGestureRecognizer(gestureRecognizer)
    }
    
    private func setupViews(views: Array<UIView>) {
