         
         for var section = 0; section < numberOfSections; ++section{
             let columnCount = self.columnCountForSection(section)
-            var sectionColumnHeights = NSMutableArray(capacity: columnCount)
+            let sectionColumnHeights = NSMutableArray(capacity: columnCount)
             for var idx = 0; idx < columnCount; idx++ {
                 sectionColumnHeights.addObject(idx)
             }

    }

    override func layoutAttributesForElementsInRect(rect: CGRect) -> [UICollectionViewLayoutAttributes]? {
        var i = 0
        var begin = 0, end = self.unionRects.count
        var attrs = NSMutableArray()
        
        for var i = 0; i < end; i++ {
            if let unionRect = self.unionRects.objectAtIndex(i) as? NSValue {

        contentSize.height = CGFloat(height.doubleValue)
        return contentSize
    }

    override func layoutAttributesForItemAtIndexPath(indexPath: NSIndexPath) -> UICollectionViewLayoutAttributes? {
        if indexPath.section >= self.sectionItemAttributes.count{
            return nil
        }
        if indexPath.item >= self.sectionItemAttributes.objectAtIndex(indexPath.section).count{
            return nil;
        }
        let list = self.sectionItemAttributes.objectAtIndex(indexPath.section) as! NSArray
        return list.objectAtIndex(indexPath.item) as? UICollectionViewLayoutAttributes
    }
    
    override func layoutAttributesForSupplementaryViewOfKind(elementKind: String, atIndexPath indexPath: NSIndexPath) -> UICollectionViewLayoutAttributes{
