def intrinsics_multi_constructor(loader, tag_prefix, node):
<EOL>tag = node.tag[<NUM_LIT:1>:]<EOL>prefix = "<STR_LIT>"<EOL>if tag in ["<STR_LIT>", "<STR_LIT>"]:<EOL><INDENT>prefix = "<STR_LIT>"<EOL><DEDENT>cfntag = prefix + tag<EOL>if tag == "<STR_LIT>" and isinstance(node.value, string_types):<EOL><INDENT>value = node.value.split("<STR_LIT:.>", <NUM_LIT:1>)<EOL><DEDENT>elif isinstance(node, ScalarNode):<EOL><INDENT>value = loader.construct_scalar(node)<EOL><DEDENT>elif isinstance(node, SequenceNode):<EOL><INDENT>value = loader.construct_sequence(node)<EOL><DEDENT>else:<EOL><INDENT>value = loader.construct_mapping(node)<EOL><DEDENT>return {cfntag: value}<EOL>
YAML constructor to parse CloudFormation intrinsics.
This will return a dictionary with key being the instrinsic name