input: Write a function to generate a 2D maze represented by a 30x30 grid of 0s and 1s.
  assert len(generate_maze()) == 30 and len(generate_maze()[0]) == 30
  assert all(value in [0, 1] for row in generate_maze() for value in row)
output: import random
  
  def generate_maze():
      return [[random.choice([0, 1]) for _ in range(30)] for _ in range(30)]