input: Write a python function to add and multiply matrices using the provided Matrix class.
  ```python
  assert Matrix([[1, 2], [3, 4]]) + Matrix([[5, 6], [7, 8]]) == [[6, 8], [10, 12]]
  assert Matrix([[1, 2], [3, 4]]) * Matrix([[2, 0], [1, 2]]) == [[4, 4], [10, 8]]
  assert Matrix([[1, 2, 3], [4, 5, 6]]) + Matrix([[7, 8, 9], [10, 11, 12]]) == [[8, 10, 12], [14, 16, 18]]
  assert Matrix([[1, 2, 3], [4, 5, 6]]) * Matrix([[1, 2], [3, 4], [5, 6]]) == [[22, 28], [49, 64]]
output: class Matrix:
      def __init__(self, matrix):
          self.matrix = matrix
  
      def __add__(self, other):
          result = [
              [
                  self.matrix[i][j] + other.matrix[i][j] 
                  for j in range(len(self.matrix[0]))
              ] 
              for i in range(len(self.matrix))
          ]
          return result
  
      def __mul__(self, other):
          result = [
              [
                  sum(self.matrix[i][k] * other.matrix[k][j] for k in range(len(self.matrix[0])))
                  for j in range(len(other.matrix[0]))
              ] 
              for i in range(len(self.matrix))
          ]
          return result