       morphX.beginTime = CACurrentMediaTime() + CFTimeInterval(delay)
       layer.addAnimation(morphX, forKey: "morphX")
       
-      let morphY = CAKeyframeAnimation()
-      morphY.keyPath = "transform.scale.y"
+      let morphY = CAKeyframeAnimation(keyPath: "transform.scale.y")
       morphY.values = [1, 0.7, 1.3*force, 0.7, 1]
       morphY.keyTimes = [0, 0.2, 0.4, 0.6, 0.8, 1]
       morphY.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)

        }, completion:nil)
      return
    case .Shake:
      let animation = CAKeyframeAnimation()
      animation.keyPath = "position.x"
      animation.values = [0, 30*force, -30*force, 30*force, 0]
      animation.keyTimes = [0, 0.2, 0.4, 0.6, 0.8, 1]
      animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)

      layer.addAnimation(animation, forKey: "flash")
      return
    case .Wobble:
      let rotation = CAKeyframeAnimation(keyPath: "transform.rotation")
      rotation.values = [0, 0.3*force, -0.3*force, 0.3*force, 0]
      rotation.keyTimes = [0, 0.2, 0.4, 0.6, 0.8, 1]
      rotation.duration = CFTimeInterval(duration)
