 /// Layout constraint for independent changing source space. Use him with anchors that not describes rect side (for example `LayoutAnchor.insets` or `LayoutAnchor.Size`).
 public struct AnonymConstraint: LayoutConstraintProtocol {
     let anchors: [RectBasedConstraint]
-
-    public init(anchors: [RectBasedConstraint]) {
+    let constrainRect: ((CGRect) -> CGRect)?
+
+    public init(anchors: [RectBasedConstraint], constrainRect: ((CGRect) -> CGRect)? = nil) {
         self.anchors = anchors
+        self.constrainRect = constrainRect
     }
 
     /// Flag that constraint not required other calculations. It`s true for size-based constraints.

    /// - Returns: Added layer
    @discardableResult
    func add<L: CALayer>(_ type: L.Type) -> L? {
        guard let superItem = ownerItem else { return nil }

        let layer = build(type)
        superItem.addSublayer(layer)

    }
}
#endif
public extension LayoutGuide {
    /// Creates dependency between two layout guides.
    ///
    /// - Parameter layoutGuide: Child layout guide.
