code: def equals_default_impl(this: Any, that: Any) -> bool:
      """
      Default semantics of a structural equality check between two objects of
      arbitrary type.
  
      Two objects ``this`` and ``that`` are defined to be structurally equal
      if and only if the following criteria are satisfied:
  
      1. Their types match.
      2. If their initializer are :func:`validated`, their initializer arguments
         are pairwise structurally equal.
      3. If their initializer are not :func:`validated`, they are referentially
         equal (i.e. ``this == that``).
  
      Parameters
      ----------
      this, that
          Objects to compare.
  
      Returns
      -------
      bool
          A boolean value indicating whether ``this`` and ``that`` are
          structurally equal.
      """
      if type(this) != type(that):
          return False
  
      if hasattr(this, "__init_args__") and hasattr(
          that, "__init_args__"
      ):
          return equals(
              this.__init_args__,
              that.__init_args__,
          )
  
      if hasattr(this, "__init_passed_kwargs__") and hasattr(
          that, "__init_passed_kwargs__"
      ):
          return equals(
              this.__init_passed_kwargs__,
              that.__init_passed_kwargs__,
          )
  
      return this == that
  
imports: import functools
  import inspect
  import logging
  from collections import OrderedDict
  from functools import singledispatch
  from typing import Any, Type, TypeVar
  import numpy
  from gluonts.core import fqname_for
  from gluonts.exceptions import GluonTSHyperparametersError
  from gluonts.pydantic import BaseConfig, BaseModel, ValidationError, create_model
label_desc: Use image node_id 3 for calling a global function with example usage: equals_default_impl(this, that) and returns: unknown, False, equals, equals