             switch justifyContent {
             case .FlexStart:
                 let firstSpace = self.blanks.first!
-                firstSpace.snp_makeConstraints(closure: { (make) -> Void in
+                firstSpace.snp_updateConstraints(closure: { (make) -> Void in
                     make.left.equalTo(0)
                 })
                 break
             case .FlexEnd:
                 let lastSpace = self.blanks.last!
-                lastSpace.snp_makeConstraints(closure: { (make) -> Void in
+                lastSpace.snp_updateConstraints(closure: { (make) -> Void in
                     make.right.equalTo(0)
                 })
                 break
             case .Center:
                 let firstSpace = self.blanks.first!
-                firstSpace.snp_makeConstraints(closure: { (make) -> Void in
+                firstSpace.snp_updateConstraints(closure: { (make) -> Void in
                     make.left.equalTo((boundWidth - contentWidth) / 2.0)
                 })
                 break
             case .SpaceBetween:
                 let firstSpace = self.blanks.first!
-                firstSpace.snp_makeConstraints(closure: { (make) -> Void in
+                firstSpace.snp_updateConstraints(closure: { (make) -> Void in
                     make.left.equalTo(0)
                     make.width.equalTo(0)
                 })
                 let lastSpace = self.blanks.last!
-                lastSpace.snp_makeConstraints(closure: { (make) -> Void in
+                lastSpace.snp_updateConstraints(closure: { (make) -> Void in
                     make.width.equalTo(0)
                 })
                 if blankSpaceSize > 0 {
                     let sizePerSpace = blankSpaceSize / CGFloat(blanks.count - 2)
                     for var index = 1;index < blanks.count - 1;index++ {
                         let space = blanks[index]
-                        space.snp_makeConstraints(closure: { (make) -> Void in
+                        space.snp_updateConstraints(closure: { (make) -> Void in
                             make.width.equalTo(sizePerSpace)
                         })
                     }

                break
            case .SpaceSeperate:
                let firstSpace = self.blanks.first!
                firstSpace.snp_makeConstraints(closure: { (make) -> Void in
                    make.left.equalTo(min((boundWidth - contentWidth) / 2.0, 0))
                })
                if blankSpaceSize > 0 {
                    let sizePerSpace = blankSpaceSize / CGFloat(blanks.count + 2)
                    for var index = 0;index < blanks.count;index++ {
                        let space = blanks[index]
                        space.snp_makeConstraints(closure: { (make) -> Void in
                            if index == 0 || index == blanks.count - 1 {
                                make.width.equalTo(sizePerSpace * 2)
                            } else {


                let margins = self.getMarginForItem(item)
                let topMargin = self.margins[index * 2]
                topMargin.snp_updateConstraints(closure: { (make) -> Void in
                    if margins.top == MarginAuto {
                        autoMargins.append(topMargin)
                    } else {
