code: def hadamard_product(*matrices):
      """
      Return the elementwise (aka Hadamard) product of matrices.
  
      Examples
      ========
  
      >>> from sympy import hadamard_product, MatrixSymbol
      >>> A = MatrixSymbol('A', 2, 3)
      >>> B = MatrixSymbol('B', 2, 3)
      >>> hadamard_product(A)
      A
      >>> hadamard_product(A, B)
      HadamardProduct(A, B)
      >>> hadamard_product(A, B)[0, 1]
      A[0, 1]*B[0, 1]
      """
      if not matrices:
          raise TypeError("Empty Hadamard product is undefined")
      if len(matrices) == 1:
          return matrices[0]
      return HadamardProduct(*matrices).doit()
  
imports: from collections import Counter
  from sympy.core import Mul, sympify
  from sympy.core.add import Add
  from sympy.core.expr import ExprBuilder
  from sympy.core.sorting import default_sort_key
  from sympy.functions.elementary.exponential import log
  from sympy.matrices.expressions.matexpr import MatrixExpr
  from sympy.matrices.expressions._shape import validate_matadd_integer
  from sympy.matrices.expressions.special import ZeroMatrix, OneMatrix
  from sympy.strategies import unpack, flatten, condition, exhaust, rm_id, sort
  from sympy.utilities.exceptions import sympy_deprecation_warning
label_desc: Use image node_id 1 for calling a global function with example usage: hadamard_product() and returns: HadamardProduct, matrices