             self.addConstraints([monthView.topConstraint, monthView.bottomConstraint, monthView.widthConstraint])
         }
         
-        self.updateConstraintsForMonthViews()
-    }
-    
-    // MARK: Constraints
-    
-    private func updateConstraintsForMonthViews()
-    {
-        for monthView in self.monthViews
-        {
-            if monthView.leftConstraint != nil
-            {
-                self.removeConstraint(monthView.leftConstraint)
-            }
-            
-            if monthView.rightConstraint != nil
-            {
-                self.removeConstraint(monthView.rightConstraint)
-            }
-        }
-        
-        self.updateConstraintsForPreviousMonthView()
-        self.updateConstraintsForCurrentMonthView()
-        self.updateConstraintsForNextMonthView()
-    }
-    
-    private func updateConstraintsForPreviousMonthView()
-    {
-        self.previousMonthView.rightConstraint = NSLayoutConstraint(i: self.previousMonthView, a: .Right, i: self.currentMonthView, a: .Left)
-        
-        self.addConstraint(self.previousMonthView.rightConstraint)
-    }
-    
-    private func updateConstraintsForCurrentMonthView()
-    {
-        self.currentMonthView.leftConstraint = NSLayoutConstraint(i: self.currentMonthView, a: .Left, i: self)
-        
-        self.addConstraint(self.currentMonthView.leftConstraint)
-    }
-    
-    private func updateConstraintsForNextMonthView()
-    {
-        self.nextMonthView.leftConstraint = NSLayoutConstraint(i: self.nextMonthView, a: .Left, i: self.currentMonthView, a: .Right)
-        
-        self.addConstraint(self.nextMonthView.leftConstraint)
+        self.updateCentersForMonthViews()
+    }
+    
+    // MARK: Centers
+    
+    private func updateCentersForMonthViews()
+    {
+        self.previousMonthView.center.x = -(self.bounds.size.width / 2)
+        self.currentMonthView.center.x = self.bounds.size.width / 2
+        self.nextMonthView.center.x = self.bounds.size.width + (self.bounds.size.width / 2)
     }
     
     // MARK: Properties

        {
            if self.currentMonthView.center.x < self.currentMonthView.bounds.size.width * 0.25
            {
                
            }
            else if self.currentMonthView.center.x > self.currentMonthView.bounds.size.width * 0.75
            {
                
            }
            else
            {
                UIView.animateWithDuration(0.1) {
                    
                    self.previousMonthView.center = self.previousMonthView.originalCenter
                    self.currentMonthView.center = self.currentMonthView.originalCenter

        
        self.addHeaderView()
        self.addMonthViews()
    }
    
    public override func layoutSubviews()
    {
        super.layoutSubviews()
        
        self.updateCentersForMonthViews()
    }
}

