 public class Flow<S: Equatable>: Element<S> {
 	private var elements: [Element<S>]
 
+	private var parentView: NSView?
+
 	public init(_ elements: [Element<S>]) {
 		self.elements = elements
 	}

	}

	public override func realize(component: Component<S>, parentView: NSView) {
		for element in elements {
			element.realize(component, parentView: parentView)
		}


	public override func applyDiff(other: Element<S>) {
		let otherFlow = other as Flow<S>
		var y: CGFloat = parentView?.frame.size.height ?? 0
		for pair in Zip2(elements, otherFlow.elements) {
			if (pair.0.canDiff(pair.1)) {
				pair.0.applyDiff(pair.1)

				if let v = pair.0.getContentView() {
					y -= v.frame.size.height
					v.frame.origin.y = y
				}
			} else {
				println("Wep")
