         animator.addAnimation(bigCloudVerticalAnimation)
         
         // Lay out the little cloud
-        scrollView.addConstraint(NSLayoutConstraint(item: littleCloud, attribute: .Bottom, relatedBy: .Equal, toItem: bigCloud, attribute: .Top, multiplier: 1, constant: 20))
-        scrollView.addConstraint(NSLayoutConstraint(item: littleCloud, attribute: .Width, relatedBy: .Equal, toItem: bigCloud, attribute: .Height, multiplier: 1, constant: 0))
-        scrollView.addConstraint(NSLayoutConstraint(item: littleCloud, attribute: .Height, relatedBy: .Equal, toItem: littleCloud, attribute: .Width, multiplier: 0.5, constant: 0))
+        let littleCloudBottom = NSLayoutConstraint(item: littleCloud, attribute: .Bottom, relatedBy: .Equal, toItem: bigCloud, attribute: .Top, multiplier: 1, constant: 20)
+        let littleCloudWidth = NSLayoutConstraint(item: littleCloud, attribute: .Width, relatedBy: .Equal, toItem: bigCloud, attribute: .Height, multiplier: 1, constant: 0)
+        let littleCloudAspect = NSLayoutConstraint(item: littleCloud, attribute: .Height, relatedBy: .Equal, toItem: littleCloud, attribute: .Width, multiplier: 0.5, constant: 0)
+        NSLayoutConstraint.activateConstraints([littleCloudBottom, littleCloudWidth, littleCloudAspect])
         
         // Keep the little cloud slightly to the left on pages 1 and 2
         keepView(littleCloud, onPages: [0.75, 1.75], atTimes: [1, 2])
         
         // Lay out the IFTTT cloud on the bottom half of the view
-        scrollView.addConstraint(NSLayoutConstraint(item: iftttCloud, attribute: .CenterY, relatedBy: .Equal, toItem: scrollView, attribute: .CenterY, multiplier: 1.5, constant: 0))
+        NSLayoutConstraint(item: iftttCloud, attribute: .CenterY, relatedBy: .Equal, toItem: scrollView, attribute: .CenterY, multiplier: 1.5, constant: 0).active = true
         
         // Zoom in the IFTTT cloud from the right between pages 2 and 3
         keepView(iftttCloud, onPages: [3.5, 3], atTimes: [2, 3])

    private func configureMusicStand() {
        // Create the vertical position constraint for the music stand
        let musicStandVerticalConstraint = NSLayoutConstraint(item: musicStand, attribute: .Bottom, relatedBy: .GreaterThanOrEqual, toItem: scrollView, attribute: .Bottom, multiplier: 1, constant: 0)
        scrollView.addConstraint(musicStandVerticalConstraint)
        scrollView.addConstraint(NSLayoutConstraint(item: musicStand, attribute: .Top, relatedBy: .GreaterThanOrEqual, toItem: scrollView, attribute: .Top, multiplier: 1, constant: 40))
        scrollView.addConstraint(NSLayoutConstraint(item: musicStand, attribute: .Width, relatedBy: .LessThanOrEqual, toItem: scrollView, attribute: .Width, multiplier: 1, constant: 0))
        scrollView.addConstraint(NSLayoutConstraint(item: musicStand, attribute: .Height, relatedBy: .Equal, toItem: musicStand, attribute: .Width, multiplier: 1184.0 / 750.0, constant: 0))
        scrollView.addConstraint(NSLayoutConstraint(item: musicStand, attribute: .Height, relatedBy: .LessThanOrEqual, toItem: scrollView, attribute: .Height, multiplier: 1, constant: 0))
        
        // Keep the right side of the music stand at the right edge of pages 1 and 2
        keepView(musicStand, onPages: [1,2], withAttribute: .Right)

    
    private func configureIFTTTPresents() {
        // Keep IFTTTPresents centered on pages 0 and 1, offset 20 pixels down from the top of the view
        NSLayoutConstraint(item: iftttPresents, attribute: .Top, relatedBy: .Equal, toItem: contentView, attribute: .Top, multiplier: 1, constant: 20).active = true
        keepView(iftttPresents, onPages: [0,1])
        
        // Hide IFTTTPresents when we get to page 1
