if (DEBUG && debuglevel > 0)
if (Configuration.DEBUG)
  public KeyPair generate()  {    if (p == null)      {        BigInteger[] params = new FIPS186(L, rnd).generateParameters();        seed = params[FIPS186.DSA_PARAMS_SEED];        counter = params[FIPS186.DSA_PARAMS_COUNTER];        q = params[FIPS186.DSA_PARAMS_Q];        p = params[FIPS186.DSA_PARAMS_P];        e = params[FIPS186.DSA_PARAMS_E];        g = params[FIPS186.DSA_PARAMS_G];        if (DEBUG && debuglevel > 0)          {            debug("seed: " + seed.toString(16));            debug("counter: " + counter.intValue());            debug("q: " + q.toString(16));            debug("p: " + p.toString(16));            debug("e: " + e.toString(16));            debug("g: " + g.toString(16));          }      }    BigInteger x = nextX();    BigInteger y = g.modPow(x, p);    PublicKey pubK = new DSSPublicKey(preferredFormat, p, q, g, y);    PrivateKey secK = new DSSPrivateKey(preferredFormat, p, q, g, x);    return new KeyPair(pubK, secK);  }