         tapLocation    = touch.locationInView(self),
         platformRect   = platformRectFromBorderRect(platformBorderRect),
         emptyPositions = gameBoard.emptyPositions,
-        emptyCellRects = cellRectsWithPositions(emptyPositions, inRect: platformRect),
+        emptyCellRects = cellRectsWithPositions(emptyPositions, inPlatformRect: platformRect),
         emptyPositionsAndRects = Array(zip(emptyPositions, emptyCellRects))
         
         let tappedPositions = emptyPositionsAndRects.flatMap { (position, rect) in

        return (startPoint, endPoint)
    }
    
    func cellRectsWithPositions(positions: [GameBoard.Position], inRect rect: CGRect) -> [CGRect] {
        return positions.map {
            cellRectAtRow($0.row, column: $0.column, inRect: rect)
        }
    }
    
    func cellRectAtRow(row: Int, column: Int, inRect rect: CGRect) -> CGRect {
        let
        totalLength = rect.width,
        cellLength  = totalLength / CGFloat(cellsPerAxis),
        leftEdge    = rect.minX + CGFloat(column) * cellLength,
        topEdge     = rect.minY + CGFloat(row) * cellLength,
        naturalRect = CGRect(x: leftEdge, y: topEdge, width: cellLength, height: cellLength),
        cellRect    = naturalRect.insetUniformlyBy(Thickness.gridLine)
        return cellRect

        context.fillRect(rect, color: Color.platformFill)
    }
    
    func drawGridLinesInRects(rects: [CGRect]) {
        rects.forEach {
            context.fillRect($0, color: Color.gridLine)
        }
    }
    
    func drawMarksInPlatformRect(platformRect: CGRect) {
        guard let gameBoard = gameBoard else { return }
        for row in 0..<gameBoard.dimension {
            let marksInRow = gameBoard.marksInRow(row)
            for column in 0..<gameBoard.dimension {
                if let mark = marksInRow[column] {
                    let cellRect = cellRectAtRow(row, column: column, inPlatformRect: platformRect)
                    drawMark(mark, inRect: cellRect)
                }
            }
