collectNamespacePrefixes((ElementImpl)node, prefixes);
} else {</BUG>
do {
collectNamespacePrefixes((ElementImpl)node, prefixes);
node = node.getParentNode();
<BUG>} while (node != null && node.getNodeType() == Node.ELEMENT_NODE);
}</BUG>
} else {
if (context.inheritNamespaces()) {
<BUG>node = node.getParentNode();
do {
collectNamespacePrefixes((org.exist.memtree.ElementImpl)node, prefixes);
node = node.getParentNode();</BUG>
} while (node != null && node.getNodeType() == Node.ELEMENT_NODE);

collectNamespacePrefixes((ElementImpl)node, prefixes);
node = node.getParentNode();
} while (node != null && node.getNodeType() == Node.ELEMENT_NODE);
} else {
if (node.getNodeType() == Node.ELEMENT_NODE)
collectNamespacePrefixes((ElementImpl)node, prefixes);
}
} else {
if (context.inheritNamespaces()) {
do {
if (node.getParentNode() == null || node.getParentNode() instanceof DocumentImpl)
collectNamespacePrefixes((ElementImpl)node, prefixes);
node = node.getParentNode();
} while (node != null && node.getNodeType() == Node.ELEMENT_NODE);
