output_description: Print a sequence of operations that maximizes the number of cells containing
  an even number of coins, in the following format:
  
      
      
      N
      y_1 x_1 y_1' x_1'
      y_2 x_2 y_2' x_2'
      :
      y_N x_N y_N' x_N'
      
  
  That is, in the first line, print an integer N between 0 and H \times W
  (inclusive), representing the number of operations.
  
  In the (i+1)-th line (1 \leq i \leq N), print four integers y_i, x_i, y_i' and
  x_i' (1 \leq y_i, y_i' \leq H and 1 \leq x_i, x_i' \leq W), representing the
  i-th operation. These four integers represents the operation of moving one of
  the coins placed in Cell (y_i, x_i) to a vertically or horizontally adjacent
  cell, (y_i', x_i').
  
  Note that if the specified operation violates the specification in the problem
  statement or the output format is invalid, it will result in _Wrong Answer_.
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      H W
      a_{11} a_{12} ... a_{1W}
      a_{21} a_{22} ... a_{2W}
      :
      a_{H1} a_{H2} ... a_{HW}
attempt: def movement(inpair1, inpair2):
      outlist = [(inpair1)]
      if inpair1[1] < inpair2[1]:
          for i in range(inpair1[1] + 1, inpair2[1] + 1):
              outlist.append((inpair1[0], i))
              t = i
      elif inpair1[1] > inpair2[1]:
          for i in range(inpair1[1] - 1, inpair2[1] - 1, -1):
              outlist.append((inpair1[0], i))
              t = i
      else:
          t = inpair1[1]
      for j in range(inpair1[0] + 1, inpair2[0] + 1):
          outlist.append((j, t))
      outlist = [
          (outlist[i][0], outlist[i][1], outlist[i + 1][0], outlist[i + 1][1])
          for i in range(len(outlist) - 1)
      ]
  
      return outlist
  
  
  h, w = [int(v) for v in input().split()]
  odd_list = []
  odd_list_2 = []
  odd_list_3 = []
  for i in range(h):
      line = [int(v) % 2 for v in input().split()]
      if line.count(1) >= 1:
          temp_list = []
          for j in range(w):
  
              if line[j] % 2 == 1:
                  temp_list.append((i, j))
          odd_list_2.append(temp_list)
          odd_list.append([[i, 0], [i, w - 1]])
  
  
  for i in range(len(odd_list)):
      if i % 2 == 1:
          odd_list[i] = list(reversed(odd_list[i]))
          odd_list_2[i] = list(reversed(odd_list_2[i]))
      odd_list_3 += odd_list_2[i]
  odd_list_3.append((h, w))
  
  
  total_move_list = []
  for i in range(len(odd_list)):
      total_move_list += movement(odd_list[i][0], odd_list[i][1])
      if i != len(odd_list) - 1:
          total_move_list += movement(odd_list[i][1], odd_list[i + 1][0])
  
  
  rec = -1
  z = 0
  x, y = odd_list_3[0]
  anslist = []
  for i in total_move_list:
      if i[0] == x and i[1] == y:
          rec *= -1
          z += 1
          x, y = odd_list_3[z]
      if rec == 1:
          anslist.append(i)
  
  
  print(len(anslist))
  for i in anslist:
      print(i[0] + 1, i[1] + 1, i[2] + 1, i[3] + 1)
  
problem_description: Statement
  
  There is a grid of square cells with H horizontal rows and W vertical columns.
  The cell at the i-th row and the j-th column will be denoted as Cell (i, j).
  
  In Cell (i, j), a_{ij} coins are placed.
  
  You can perform the following operation any number of times:
  
  Operation: Choose a cell that was not chosen before and contains one or more
  coins, then move one of those coins to a vertically or horizontally adjacent
  cell.
  
  Maximize the number of cells containing an even number of coins.
samples: [{"input": "2 3\n    1 2 3\n    0 1 1", "output": "3\n    2 2 2 3\n    1 1 1 2\n    1 3 1 2\n    \n\nEvery cell contains an even number of coins after the following sequence of\noperations:\n\n  * Move the coin in Cell (2, 2) to Cell (2, 3).\n  * Move the coin in Cell (1, 1) to Cell (1, 2).\n  * Move one of the coins in Cell (1, 3) to Cell (1, 2).\n\n* * *"}, {"input": "3 2\n    1 0\n    2 1\n    1 0", "output": "3\n    1 1 1 2\n    1 2 2 2\n    3 1 3 2\n    \n\n* * *"}, {"input": "1 5\n    9 9 9 9 9", "output": "2\n    1 1 1 2\n    1 3 1 4"}]