         buffer: ResizableBuffer
     ) {
         guard
-            let paddedRowCount = _padCount(
-                rowCount, toAlignment: countAlignment
-            ),
-            let paddedColumnCount = _padCount(
-                columnCount, toAlignment: countAlignment
-            ),
+            let paddedRowCount = rowCount.paddedToAlignment(countAlignment),
+            let paddedColumnCount = columnCount.paddedToAlignment(countAlignment),
             let byteCount = _byteCountForPaddedRowCount(
                 paddedRowCount, paddedColumnCount: paddedColumnCount
             ) where buffer.resizeToLength(byteCount)

        else { return true }
        
        guard
            let newPaddedRowCount = _padCount(
                newRowCount, toAlignment: countAlignment
            ),
            let newPaddedColumnCount = _padCount(
                newColumnCount, toAlignment: countAlignment
            ),
            let newByteCount = _byteCountForPaddedRowCount(
                newPaddedRowCount, paddedColumnCount: newPaddedColumnCount
            )



// MARK: - Private
private extension Int {

    func paddedToAlignment(alignment: Int) -> Int? {
        guard self > 0 && alignment > 0 else { return nil }
        
        let remainder = self % alignment
        guard remainder > 0 else { return self }
        
        return self + alignment - remainder
    }

}

private func _byteCountForPaddedRowCount(
