     size = toView.frame.size
     foldSize = width * 0.5 / CGFloat(folds)
 
-    let viewFolds = createSnapshots(toView: toView, fromView: fromView, containerView: containerView)
+    let viewFolds = makeSnapshots(toView: toView, fromView: fromView, containerView: containerView)
     animateFoldTransition(fromView: fromView, toViewFolds: viewFolds[0], fromViewFolds: viewFolds[1], completion: {
       if !transitionContext.transitionWasCancelled {
         toView.frame = containerView.bounds

      snapshotView.addSubview(subSnapshotView!)
    }
    
    let snapshotWithShadowView = addShadow(toView: snapshotView, reverse: left)
    containerView?.addSubview(snapshotWithShadowView)
    axesValues = valuesForAxe(initialValue: left ? 0.0 : 1.0, reverseValue: 0.5)
    snapshotWithShadowView.layer.anchorPoint = CGPoint(x: axesValues.0, y: axesValues.1)
    return snapshotWithShadowView
  }
  
  func addShadow(toView view: UIView, reverse: Bool) -> UIView {
    let viewWithShadow = UIView(frame: view.frame)
    let shadowView = UIView(frame: viewWithShadow.bounds)
    let gradient = CAGradientLayer()

    return [toViewFolds, fromViewFolds]
  }
  
  func makeSnapshot(from view: UIView, afterUpdates: Bool, offset: CGFloat, left: Bool) -> UIView {
    let containerView = view.superview
    var snapshotView: UIView
    var axesValues = valuesForAxe(initialValue: offset, reverseValue: 0.0)
