def _try_resolve_parameter_refs(self, input, parameters):
        """
        Try to resolve parameter references on the given input object. The object could be of any type.
        If the input is not in the format used by intrinsics (ie. dictionary with one key), input is returned
        unmodified. If the single key in dictionary is one of the supported intrinsic function types,
        go ahead and try to resolve it.

        :param input: Input object to resolve
        :param parameters: Parameter values used to for ref substitution
        :return:
        """
        if not self._is_intrinsic_dict(input):
            return input

        function_type = list(input.keys())[0]
        return self.supported_intrinsics[function_type].resolve_parameter_refs(input, parameters)