public boolean conformingSignaturesP(Slot superslot) {
    { Table self = this;

      if (StandardObject.conformingTypeSpecP(self.slotBaseType, superslot.type()) &&
          (StandardObject.conformingTypeSpecP(((CompoundTypeSpecifier)(KeyValueList.dynamicSlotValue(self.dynamicSlots, Stella.SYM_STELLA_SLOT_TYPE_SPECIFIER, null))), ((CompoundTypeSpecifier)(KeyValueList.dynamicSlotValue(superslot.dynamicSlots, Stella.SYM_STELLA_SLOT_TYPE_SPECIFIER, null)))) &&
           (self.methodArgumentCount() == superslot.methodArgumentCount()))) {
        if (Surrogate.subtypeOfP(Stella_Object.safePrimaryType(superslot), Stella.SGT_STELLA_TABLE)) {
          { Table superslot000 = ((Table)(superslot));

            { boolean alwaysP000 = true;

              { StandardObject ts1 = null;
                Cons iter000 = self.tupleDomains.rest();
                StandardObject ts2 = null;
                Cons iter001 = superslot000.tupleDomains.rest();

                loop000 : for (;(!(iter000 == Stella.NIL)) &&
                          (!(iter001 == Stella.NIL)); iter000 = iter000.rest, iter001 = iter001.rest) {
                  ts1 = ((StandardObject)(iter000.value));
                  ts2 = ((StandardObject)(iter001.value));
                  if (!StandardObject.conformingTypeSpecP(ts2, ts1)) {
                    alwaysP000 = false;
                    break loop000;
                  }
                }
              }
              { boolean value000 = alwaysP000;

                return (value000);
              }
            }
          }
        }
        else {
        }
      }
      return (false);
    }
  }