     }
   }
   
-  open override func updateConstraints() {
-    
-    super.updateConstraints()
-  }
   
 }
 

    contentView.setNeedsLayout()
    contentView.layoutIfNeeded()
  }
  
  func setFrontViewOffset(_ offset: CGFloat) {
    guard appearance.parallaxEnabled, let topConstraint = scalableViewTopConstraint, let bottomConstraint = scalableViewBottomConstraint else { return }
    let boundOffset = max(0, min(1, offset))
    let pixelOffset = (1 - boundOffset) * 2 * appearance.parallaxFactor
    
    topConstraint.constant = scalableViewTopOffset - pixelOffset
    bottomConstraint.constant = scalableViewBottomOffset + pixelOffset
    scalableViewLastParrallaxOffset = pixelOffset
  }
  
}

    topSeparator.backgroundColor = color
  }
  
  func setupCustomSeparatorIfNeeded() {
    guard appearance.customSeparatorEnabled, let separatorHeight = appearance.separatorHeight else { return }
    let topSeparator = UIView()
    let bottomSeparator = UIView()
    
    let separators = [topSeparator, bottomSeparator]
    
    for separator in separators {
      contentView.addSubview(separator)
      separator.backgroundColor = appearance.separatorColor
      separator.translatesAutoresizingMaskIntoConstraints = false
      
      let topOrBottomAttribute: NSLayoutAttribute = separator === topSeparator ? .top : .bottom
      
      contentView.addConstraints([
        NSLayoutConstraint(item: separator, attribute: .right, relatedBy: .equal, toItem: contentView, attribute: .right, multiplier: 1, constant: 0),
        NSLayoutConstraint(item: separator, attribute: .left, relatedBy: NSLayoutRelation.equal, toItem: contentView, attribute: .left, multiplier: 1, constant: 0),
        NSLayoutConstraint(item: separator, attribute: topOrBottomAttribute, relatedBy: .equal, toItem: contentView, attribute: topOrBottomAttribute, multiplier: 1, constant: 0)
        ])
      
      separator.addConstraint(NSLayoutConstraint(item: separator, attribute: .height, relatedBy: .equal, toItem: nil, attribute: .notAnAttribute, multiplier: 1, constant: separatorHeight))
    }
    
    topSeparatorLine = topSeparator
    bottomSeparatorLine = bottomSeparator
  }
  
}

// MARK: - Actions ⚡
