public HtmlElement next()
 {
     if (currentIterator != null && currentIterator.hasNext())
     {
         return currentIterator.next();
     }
     else
     {
         position++;
         currentIterator = elements[position - 1].getIterator();
         return elements[position - 1];
     }
 }
 public HtmlTagIterator(HtmlTag HtmlTag)
 {
     if (HtmlTag.isSingleTag) this.currentIterator = null;
     else this.currentIterator = new HtmlConstruct(HtmlTag.children).getIterator();
 }
 public HtmlConstructIterator(HtmlConstruct HtmlConstruct)
 {
     this.elements = HtmlConstruct.elements;
     position = 0;
     currentIterator = null;
 }