def _handle_sub_action(self, input_dict, handler):
if not self.can_handle(input_dict):<EOL><INDENT>return input_dict<EOL><DEDENT>key = self.intrinsic_name<EOL>sub_value = input_dict[key]<EOL>input_dict[key] = self._handle_sub_value(sub_value, handler)<EOL>return input_dict<EOL>
Handles resolving replacements in the Sub action based on the handler that is passed as an input.

:param input_dict: Dictionary to be resolved
:param supported_values: One of several different objects that contain the supported values that
    need to be changed. See each method above for specifics on these objects.
:param handler: handler that is specific to each implementation.
:return: Resolved value of the Sub dictionary