input: Write a function to generate a Python program to perform matrix multiplication on two given matrices. If the given matrices are not multiplicable (i.e., the number of columns in the first matrix is not equal to the number of rows in the second matrix), return an error message. Otherwise, return the resulting matrix.
  
  assert matrix_multiplication([[1, 2], [3, 4]], [[5, 6], [7, 8]])==[[19, 22], [43, 50]]
  assert matrix_multiplication([[1, 2, 3]], [[4], [5], [6]])==[[32]]
  assert matrix_multiplication([[2, 3]], [[4, 5], [6, 7]])==[[26, 31]]
  assert matrix_multiplication([[1, 2], [3, 4]], [[5, 6]])=='Error: Matrices cannot be multiplied'
  assert matrix_multiplication([], [])==[]
output: def matrix_multiplication(A, B):
      if len(A) == 0 or len(B) == 0:
          return []
      if len(A[0]) != len(B):
          return 'Error: Matrices cannot be multiplied'
      
      result = [[0 for _ in range(len(B[0]))] for _ in range(len(A))]
      
      for i in range(len(A)):
          for j in range(len(B[0])):
              for k in range(len(B)):
                  result[i][j] += A[i][k] * B[k][j]
      
      return result