By using NodeSet#concat we can further reduce the amount of object allocations. This in turn greatly reduces the time it takes to query large documents using descendant-or-self.