     }, completion: completion)
   }
 
-  func flash(repeatCount: Int, completion: AnimatableCompletion? = nil) {
+  public func flash(repeatCount: Int, completion: AnimatableCompletion? = nil) {
     CALayer.animate({
       let animation = CABasicAnimation(keyPath: "opacity")
       animation.fromValue = 1

  }

  // MARK: - Animation methods
  func slide(_ way: AnimationType.Way, direction: AnimationType.Direction, completion: AnimatableCompletion? = nil) {
    let values = computeValues(way: way, direction: direction, shouldScale: false)
    switch way {
    case .in:

    }, completion: completion)
  }

  public func morph(repeatCount: Int, completion: AnimatableCompletion? = nil) {
    CALayer.animate({
      let morphX = CAKeyframeAnimation(keyPath: "transform.scale.x")
      morphX.values = [1, 1.3 * self.force, 0.7, 1.3 * self.force, 1]
