   }
   
   // MARK: animations
-  
   func foldingAnimation(_ timing: String, from: CGFloat, to: CGFloat, duration: TimeInterval, delay:TimeInterval, hidden:Bool) {
     
     let rotateAnimation = CABasicAnimation(keyPath: "transform.rotation.x")

    
    let firstItemView = animationView.subviews.filter{$0.tag == 0}.first
    
    if let first = firstItemView {
      first.layer.masksToBounds = true
      DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + Double(Int64(durations[0] * Double(NSEC_PER_SEC))) / Double(NSEC_PER_SEC), execute: { 
                first.layer.cornerRadius = 0
      })
    }
    DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + Double(Int64(delay * Double(NSEC_PER_SEC))) / Double(NSEC_PER_SEC), execute: {
      self.animationView?.alpha = 0
      self.containerView.alpha  = 1

  }
  
  open func isAnimating()->Bool {
    return animationView?.alpha == 1 ? true : false
  }
  
  // MARK: animations
  open func animationDuration(_ itemIndex:NSInteger, type:AnimationType)-> TimeInterval {
    assert(false, "added this method to cell")
    return 0
