def _do_element(self, node, initial_other_attrs = [], unused = None):
<EOL>ns_parent, ns_rendered, xml_attrs =self.state[<NUM_LIT:0>], self.state[<NUM_LIT:1>].copy(), self.state[<NUM_LIT:2>].copy() <EOL>ns_unused_inherited = unused<EOL>if unused is None:<EOL><INDENT>ns_unused_inherited = self.state[<NUM_LIT:3>].copy()<EOL><DEDENT>ns_local = ns_parent.copy()<EOL>inclusive = _inclusive(self)<EOL>xml_attrs_local = {}<EOL>other_attrs = []<EOL>in_subset = _in_subset(self.subset, node)<EOL>for a in initial_other_attrs + _attrs(node):<EOL><INDENT>if a.namespaceURI == XMLNS.BASE:<EOL><INDENT>n = a.nodeName<EOL>if n == "<STR_LIT>": n = "<STR_LIT>"        <EOL>ns_local[n] = a.nodeValue<EOL><DEDENT>elif a.namespaceURI == XMLNS.XML:<EOL><INDENT>if inclusive or (in_subset and  _in_subset(self.subset, a)): <EOL><INDENT>xml_attrs_local[a.nodeName] = a <EOL><DEDENT><DEDENT>else:<EOL><INDENT>if  _in_subset(self.subset, a):     <EOL><INDENT>other_attrs.append(a)<EOL>
_do_element(self, node, initial_other_attrs = [], unused = {}) -> None
        Process an element (and its children).