       # Build row's tiles.
       unless vars.rowTiles.length
         for index in [0...vars.numCols]
-          vars.rowTiles.push Tile.Empty if (
+          vars.rowTiles.push(Tile.Empty) if (
             (0 <= index < vars.iColStart) or
             (vars.iColEnd < index < vars.numCols) or
             (vars.iColStart is vars.iColEnd)
           )
-          vars.rowTiles.push Tile.Solid if (
+          vars.rowTiles.push(Tile.Solid) if (
             (vars.iColStart <= index <= vars.iColEnd) and
             (vars.iColStart isnt vars.iColEnd)
           )
 
       # Add tiles.
-      @tiles.push vars.rowTiles
+      @tiles.push(vars.rowTiles)
       return
 
     _setupEmptyRow: (vars) ->


        else
          if vars.rowSpacing is 0
            @_setupLedgeRow vars
            vars.iLedgeLayer = @ledgeThickness - 1

          else if vars.iLedgeLayer > 0
            vars.iLedgeLayer--

          else
            @_setupEmptyRow vars
            vars.rowSpacing--
            vars.iLedgeLayer = 0

        @_addRow vars

        vars.iRow--

      @tiles.reverse()

      @tiles = autoSetTiles @tiles

      @debug 'tiles', @tiles
      return

    _addLedgeDifficulty: (ledge, vars) ->
      easiness = Math.pow (vars.numLedgeRows / ledge.index), 0.3
      # Amplify.
      ledge.spacing = Math.round ledge.spacing / easiness
      ledge.size = Math.round ledge.size * easiness
      # Normalize.
      ledge.spacing = Phaser.Math.clamp ledge.spacing,
        @minLedgeSpacing.y, @maxLedgeSpacing.y
      ledge.size = Phaser.Math.clamp ledge.size, @minLedgeSize, @maxLedgeSize
      # Update.
      switch ledge.facing
        when 'left' then ledge.end = ledge.size - 1


      vars.iRow = vars.iRowStart = vars.numRows - 1
      until vars.iRow < vars.iRowEnd
        @_setupEachRow(vars)

        if (vars.iRow - vars.numRowsClearance) <= vars.iRowEnd
          # Fill out the last rows after last ledge.
          @_setupEmptyRow(vars)

          if vars.iLedgeLayer > 0
            vars.iLedgeLayer--
