input: Write a function to take two matrices A and B, and return a matrix C where each element is the product of the corresponding elements of A and B. If the dimensions of the matrices do not match, return "Matrix multiplication not possible".
  assert elementwise_product([[3, 4], [1, 2]], [[7, 5], [0, 1]])==[[21, 20], [0, 2]]
  assert elementwise_product([[3, 4]], [[7, 5]])==[[21, 20]]
  assert elementwise_product([[3, 4, 2]], [[7, 5, 3]])==[[21, 20, 6]]
  assert elementwise_product([[3, 4], [1, 2]], [[7, 5]])=="Matrix multiplication not possible"
  assert elementwise_product([[3], [1]], [[7], [0]])==[[21], [0]]
output: def elementwise_product(A, B):
      if len(A) != len(B) or any(len(rowA) != len(rowB) for rowA, rowB in zip(A, B)):
          return "Matrix multiplication not possible"
      return [[A[i][j] * B[i][j] for j in range(len(A[0]))] for i in range(len(A))]