def parse_hosted_zone(e_zone, connection):
<EOL>kwargs = {}<EOL>for e_field in e_zone:<EOL><INDENT>tag_name = e_field.tag.split('<STR_LIT:}>')[<NUM_LIT:1>]<EOL>field_text = e_field.text<EOL>if tag_name == '<STR_LIT>':<EOL><INDENT>e_comment = e_field.find('<STR_LIT>')<EOL>kwargs['<STR_LIT>'] = e_comment.text if e_comment is not None else None<EOL>continue<EOL><DEDENT>elif tag_name == '<STR_LIT>':<EOL><INDENT>field_text = field_text.strip('<STR_LIT>')<EOL><DEDENT>kw_name = HOSTED_ZONE_TAG_TO_KWARG_MAP[tag_name]<EOL>kwargs[kw_name] = field_text<EOL><DEDENT>return HostedZone(connection, **kwargs)<EOL>
This a common parser that allows the passing of any valid HostedZone
tag. It will spit out the appropriate HostedZone object for the tag.

:param lxml.etree._Element e_zone: The root node of the etree parsed
    response from the API.
:param Route53Connection connection: The connection instance used to
    query the API.
:rtype: HostedZone
:returns: An instantiated HostedZone object.