initial macro substitution implementation //TODO empty_element_parsed_guard_