code: def MatrixNormal(
      symbol, location_matrix, scale_matrix_1, scale_matrix_2
  ):
      """
      Creates a random variable with Matrix Normal Distribution.
  
      The density of the said distribution can be found at [1].
  
      Parameters
      ==========
  
      location_matrix: Real ``n x p`` matrix
          Represents degrees of freedom
      scale_matrix_1: Positive definite matrix
          Scale Matrix of shape ``n x n``
      scale_matrix_2: Positive definite matrix
          Scale Matrix of shape ``p x p``
  
      Returns
      =======
  
      RandomSymbol
  
      Examples
      ========
  
      >>> from sympy import MatrixSymbol
      >>> from sympy.stats import density, MatrixNormal
      >>> M = MatrixNormal('M', [[1, 2]], [1], [[1, 0], [0, 1]])
      >>> X = MatrixSymbol('X', 1, 2)
      >>> density(M)(X).doit()
      exp(-Trace((Matrix([
      [-1],
      [-2]]) + X.T)*(Matrix([[-1, -2]]) + X))/2)/(2*pi)
      >>> density(M)([[3, 4]]).doit()
      exp(-4)/(2*pi)
  
      References
      ==========
  
      .. [1] https://en.wikipedia.org/wiki/Matrix_normal_distribution
  
      """
      if isinstance(location_matrix, list):
          location_matrix = ImmutableMatrix(location_matrix)
      if isinstance(scale_matrix_1, list):
          scale_matrix_1 = ImmutableMatrix(scale_matrix_1)
      if isinstance(scale_matrix_2, list):
          scale_matrix_2 = ImmutableMatrix(scale_matrix_2)
      args = (location_matrix, scale_matrix_1, scale_matrix_2)
      return rv(symbol, MatrixNormalDistribution, args)
  
imports: from math import prod
  from sympy.core.basic import Basic
  from sympy.core.numbers import pi
  from sympy.core.singleton import S
  from sympy.functions.elementary.exponential import exp
  from sympy.functions.special.gamma_functions import multigamma
  from sympy.core.sympify import sympify, _sympify
  from sympy.matrices import ImmutableMatrix, Inverse, Trace, Determinant, MatrixSymbol, MatrixBase, Transpose, MatrixSet, matrix2numpy
  from sympy.stats.rv import _value_check, RandomMatrixSymbol, NamedArgsMixin, PSpace, _symbol_converter, MatrixDomain, Distribution
  from sympy.external import import_module
label_desc: Use image node_id 4 for calling a global function with example usage: MatrixNormal(symbol, location_matrix, scale_matrix_1, scale_matrix_2) and returns: rv