code: def isinstance(self, types):
          
          if isinstance(self, types):
              return True
          inner_field = getattr(self, 'inner_field', None)
          while inner_field:
              if isinstance(inner_field, types):
                  return True
              inner_field = getattr(inner_field, 'inner_field', None)
          return False
docs: Checks if the instance if one of the types provided or if any of the inner_field child is one of the types
          provided, returns True if field or any inner_field is one of ths provided, False otherwise
          :param types: Iterable of types to check inclusion of instance
          :return: Boolean