void finish() {
   boolean bool2 = true;
   if (tables == 0) {
     bool1 = true;
     X.assertTrue(bool1);
     if (state != 0) {
       break label34;
     }
   }
   label34:
   for (boolean bool1 = bool2; ; bool1 = false) {
     X.assertTrue(bool1);
     return;
     bool1 = false;
     break;
   }
 }
 void seeEndTag(HtmlDocument.EndTag paramEndTag) {
   int i = 1;
   paramEndTag = paramEndTag.getElement();
   if ((tables > 0) && (paramEndTag.getType() == 1)) {
     if ((!HTML4.TD_ELEMENT.equals(paramEndTag))
         && (!HTML4.TR_ELEMENT.equals(paramEndTag))
         && (!HTML4.TH_ELEMENT.equals(paramEndTag))) {
       break label58;
     }
     state = 0;
   }
   label58:
   do {
     return;
     if (HTML4.CAPTION_ELEMENT.equals(paramEndTag)) {
       state = 0;
       return;
     }
   } while (!HTML4.TABLE_ELEMENT.equals(paramEndTag));
   boolean bool;
   if (tables > 0) {
     bool = true;
     X.assertTrue(bool);
     tables -= 1;
     if (tables <= 0) {
       break label125;
     }
   }
   for (; ; ) {
     state = i;
     return;
     bool = false;
     break;
     label125:
     i = 0;
   }
 }
 public HtmlTree getTree() {
   X.assertTrue(built);
   return tree;
 }