content: package local.org.bouncycastle.crypto.params;
  
  import java.math.BigInteger;
  
  import local.org.bouncycastle.math.ec.ECConstants;
  import local.org.bouncycastle.math.ec.ECCurve;
  import local.org.bouncycastle.math.ec.ECPoint;
  import local.org.bouncycastle.util.Arrays;
  
  
  public class ECDomainParameters
      implements ECConstants
  {
      private ECCurve     curve;
      private byte[]      seed;
      private ECPoint     G;
      private BigInteger  n;
      private BigInteger  h;
  
      public ECDomainParameters(
          ECCurve     curve,
          ECPoint     G,
          BigInteger  n)
      {
          this(curve, G, n, ONE, null);
      }
  
      public ECDomainParameters(
          ECCurve     curve,
          ECPoint     G,
          BigInteger  n,
          BigInteger  h)
      {
          this(curve, G, n, h, null);
      }
  
      public ECDomainParameters(
          ECCurve     curve,
          ECPoint     G,
          BigInteger  n,
          BigInteger  h,
          byte[]      seed)
      {
          this.curve = curve;
          this.G = G;
          this.n = n;
          this.h = h;
          this.seed = seed;
      }
  
      public ECCurve getCurve()
      {
          return curve;
      }
  
      public ECPoint getG()
      {
          return G;
      }
  
      public BigInteger getN()
      {
          return n;
      }
  
      public BigInteger getH()
      {
          return h;
      }
  
      public byte[] getSeed()
      {
          return Arrays.clone(seed);
      }
  }
  