                 headerSize = cachedHeaderSizeForSection(indexPath.section)
             }
             var height: CGFloat = 0
-
-            let totalNumberOfRows =
-                monthData[monthMap[indexPath.section]!].rows
+            let totalNumberOfRows = monthData[monthMap[indexPath.section]!].rows
             let currentMonth = monthData[monthMap[indexPath.section]!]
-            let monthSection = currentMonth
-                .sectionIndexMaps[indexPath.section]!
-            let numberOfSections =
-                CGFloat(totalNumberOfRows) / CGFloat(numberOfRows)
+            let monthSection = currentMonth.sectionIndexMaps[indexPath.section]!
+            let numberOfSections = CGFloat(totalNumberOfRows) / CGFloat(numberOfRows)
             let fullSections =  Int(numberOfSections)
             let numberOfRowsForSection: Int
             if scrollDirection == .horizontal {
-                numberOfRowsForSection = currentMonth
-                    .maxNumberOfRowsForFull(developerSetRows: numberOfRows)
-                height = (collectionView!.frame.height - headerSize.height) /
-                    CGFloat(numberOfRowsForSection)
+                if thereAreHeaders {
+                    numberOfRowsForSection = currentMonth.maxNumberOfRowsForFull(developerSetRows: numberOfRows)
+                } else {
+                    numberOfRowsForSection = numberOfRows
+                }
+                height = (collectionView!.frame.height - headerSize.height) / CGFloat(numberOfRowsForSection)
             } else {
                 if monthSection + 1 <= fullSections {
                     numberOfRowsForSection = numberOfRows


    func horizontalStuff() {
        var section = 0
        var rowNumber = 0
        var totalDayCounter = 0
        var headerGuide = 0
        
        var stillInPreviousVirtualSection = false
        var offsetCOUNTER = 0
        
        for aMonth in monthData {
            for numberOfDaysInCurrentSection in aMonth.sections {
                // Generate and cache the headers

                            }
                        } else {
                            totalDayCounter += 1
                            extra += 1
                            if totalDayCounter % fullSection == 0 { // If you have a full section
                                xCellOffset = 0
                                yCellOffset = 0
                                contentWidth += attribute.frame.width * 7 
                                stride = contentWidth
                                sectionSize.append(contentWidth)
                            } else {
                                if totalDayCounter >= delegate.totalDays {
                                    contentWidth += attribute.frame.width * 7
                                    sectionSize.append(contentWidth)
                                }
                                
                                if totalDayCounter % 7 == 0 {
                                    xCellOffset = 0
                                    yCellOffset += attribute.frame.height
                                }
                            }
                        }
                    }
                }
                // Save the content size for each section
                
                if thereAreHeaders {
                    sectionSize.append(contentWidth)
                    stride = sectionSize[section]
                    
                }
                section += 1
            }
        }
        contentHeight = self.collectionView!.bounds.size.height
        print(sectionSize)
    }

    func verticalStuff() {
