             case _ as String:() //Do nothin' !
             case let a as [UIView]:
                 align(horizontally: a)
-            let v = a.first!
-            if let pm = previousMargin {
-                if i == 1 {
-                    v.top(pm) // only if first view
-                } else {
-                    if let vx = objects[i-2] as? UIView {
-                        vx.stackV(m: pm, v: v)
-                    } else if let va = objects[i-2] as? [UIView] {
-                        va.first!.stackV(m: pm, v: v)
-                    }
-                }
-                previousMargin = nil
-            } else if let pfm = previousFlexibleMargin {
-                if i == 1 {
-                    v.top(pfm) // only if first view
-                } else {
-                    if let vx = objects[i-2] as? UIView {
-                        addConstraint(
-                            item: v, attribute: .top,
-                            relatedBy: pfm.relation,
-                            toItem: vx, attribute: .bottom,
-                            multiplier: 1, constant: pfm.points
-                        )
-                    } else if let va = objects[i-2] as? [UIView] {
-                        addConstraint(
-                            item: v, attribute: .top,
-                            relatedBy: pfm.relation,
-                            toItem: va.first!, attribute: .bottom,
-                            multiplier: 1, constant: pfm.points
-                        )
-                    }
-                }
-                previousFlexibleMargin = nil
-            } else {
-                tryStackViewVerticallyWithPreviousView(v, index: i, objects: objects)
-            }
+                let v = a.first!
+                viewLogic(v)
             default: ()
             }
         }

                } else {
                    tryStackViewVerticallyWithPreviousView(v, index: i, objects: objects)
                }
            case is Int, is Double, is CGFloat:
                let m = cgFloatMarginFromObject(o)
                previousMargin = m // Store margin for next pass

     
     ```
     layout(
     100,
     |-email-| ~ 80,
     8,
     |-password-forgot-| ~ 80,
     >=20,
     |login| ~ 80,
     0
     )
     ```
     */
