code: def __get_obj_by_discriminator(self, payload, obj_type):
          # type: (str, Union[T, str]) -> T
          
          obj_cast = cast(Any, obj_type)
          namespaced_class_name = obj_cast.get_real_child_model(payload)
          if not namespaced_class_name:
              raise SerializationException(
                  "Couldn't resolve object by discriminator type "
                  "for {} class".format(obj_type))
  
          return self.__load_class_from_name(namespaced_class_name)
docs: Get correct subclass instance using the discriminator in
          payload.
  
          :param payload: Payload for deserialization
          :type payload: str
          :param obj_type: parent class for deserializing payload into
          :type obj_type: Union[object, str]
          :return: Subclass of provided parent class, that resolves to
              the discriminator in payload.
          :rtype: object
          :raises: :py:class:`ask_sdk_core.exceptions.SerializationException`