comefrom: <qiyuangong>733_Flood_Fill_2.py
code: def floodFill( image, sr, sc, newColor):
      r_ls, c_ls = len(image), len(image[0])
      color = image[sr][sc]
      if color == newColor:
          return image
      queue = [(sr, sc)]
      while len(queue) > 0:
          r, c = queue.pop(0)
          if image[r][c] == color:
              image[r][c] = newColor
              if r - 1 >= 0: queue.append((r - 1, c))
              if r + 1 < r_ls: queue.append((r + 1, c))
              if c - 1 >= 0: queue.append((r, c - 1))
              if c + 1 < c_ls: queue.append((r, c + 1))
      return image
masked: def sample_funcname ( var_0 , var_1 , var_2 , var_3 ) :
      var_5 , var_7 = len ( var_0 ) , len ( var_0 [ 0 ] )
      var_8 = var_0 [ var_1 ] [ var_2 ]
      if var_8 == var_3 :
          return var_0
      var_9 = [ ( var_1 , var_2 ) ]
      while len ( var_9 ) > 0 :
          var_11 , var_12 = var_9.pop ( 0 )
          if var_0 [ var_11 ] [ var_12 ] == var_8 :
              var_0 [ var_11 ] [ var_12 ] = var_3
              if var_11 - 1 >= 0 : var_9.append ( ( var_11 - 1 , var_12 ) )
              if var_11 + 1 < var_5 : var_9.append ( ( var_11 + 1 , var_12 ) )
              if var_12 - 1 >= 0 : var_9.append ( ( var_11 , var_12 - 1 ) )
              if var_12 + 1 < var_7 : var_9.append ( ( var_11 , var_12 + 1 ) )
      return var_0
  