code: def validate_matadd_integer(*args: MatrixExpr) -> None:
      """Validate matrix shape for addition only for integer values"""
      rows, cols = zip(*(x.shape for x in args))
      if (
          len(
              set(filter(lambda x: isinstance(x, (int, Integer)), rows))
          )
          > 1
      ):
          raise ShapeError(f"Matrices have mismatching shape: {rows}")
      if (
          len(
              set(filter(lambda x: isinstance(x, (int, Integer)), cols))
          )
          > 1
      ):
          raise ShapeError(f"Matrices have mismatching shape: {cols}")
  
file_path: sympy/sympy/matrices/expressions/_shape.py
imports: from sympy.core.relational import Eq
  from sympy.core.expr import Expr
  from sympy.core.numbers import Integer
  from sympy.logic.boolalg import Boolean, And
  from sympy.matrices.expressions.matexpr import MatrixExpr
  from sympy.matrices.exceptions import ShapeError
  from typing import Union
label_desc: Use image node_id 4 for calling a global function with example usage: validate_matadd_integer() without return types