public short[] lock() {
    short[] newBoard = board.clone();
    byte[][] curData = getData();
    for (int y = 0; y < HEIGHT; y++) {
      for (int x = 0; x < WIDTH; x++) {
        if (curData[y][x] == 1) {
          int boardX = x + offsetX;
          int boardY = y + offsetY;
          if (boardY < 0 && boardX < 5)
            return null;
          if (boardX < 0 || boardX >= Board.WIDTH || boardY >= board.length || boardY < 0)
            continue;
          newBoard[boardY] |= (1 << boardX);
        }
      }
    }
    return newBoard;
  }