+Element* HTMLCollection::traverseBackwardToOffset(unsigned offset, Element& currentElement, unsigned& currentOffset) const
+{
+ ASSERT(currentOffset > offset);
+ ASSERT(canTraverseBackward());
+ if (shouldOnlyIncludeDirectChildren()) {
+ Element* previous = ¤tElement;
+ while ((previous = previousMatchingChildElement(*this, *previous))) {
+ if (--currentOffset == offset)
+ return previous;
+ }
+ return 0;
+ }
+ return traverseMatchingElementsBackwardToOffset(*this, offset, currentElement, currentOffset);
+}
+