public class EPA
{
  /************************************* constantes publiques *************************************/

  /** L'EPA constant de valeur 0. */
  public static final EPA ZÉRO= new EPA( 0 );

  /** L'EPA constant de valeur 1. */
  public static final EPA UN= new EPA( 1 );

  /** L'EPA constant de valeur 2. */
  public static final EPA DEUX= new EPA( 2 );


  /************************************** constantes privées **************************************/


  /*************************************** attributs privés ***************************************/


  /************************************* constructeurs privés *************************************/

  /**
   * Construit un EPA vide. <br>
   *
   * Ce constructeur est privé car résérvé à une utilisation interne, l'EPA ainsi construit n'étant
   * pas encore cohérent.
   */
  private EPA()
  {
  }

  /**
   *
   */
  private EPA( int[] vals )
  {
    throw new RuntimeException( "Constructeur EPA( int[] ) non implanté." );
  }


  /************************************* constructeurs publics ************************************/

  /**
   *
   */
  public EPA( String chaîne )
  {
    throw new RuntimeException( "Constructeur EPA( String ) non implanté." );
  }

  /**
   *
   */
  public EPA( EPA n  )
  {
    throw new RuntimeException( "Constructeur EPA( EPA ) non implanté." );
  }

  /**
   *
   */
  public EPA( int n )
  {
    throw new RuntimeException( "Constructeur EPA( int ) non implanté." );
  }

  /**
   *
   */
  public EPA( byte[] bytes )
  {
    throw new RuntimeException( "Constructeur EPA( byte[] )non implanté." );
  }


  /********************************* méthodes publiques de classe *********************************/

  /**
   *
   */
  public static EPA créerAléatoirement( int n )
  {
    throw new RuntimeException( "Méthode créerAléatoirement( int ) non implantée." );
  }

  /**
   *
   */
  public static EPA créerAléatoirementPremier( int nbrDigit, int marge )
  {
    throw new RuntimeException( "Méthode créerAléatoirementPremier( int, int ) non implantée." );
  }


  /******************************** méthodes publiques d'instances ********************************/

  /**
   *
   */
  public int getNbrDigit()
  {
    throw new RuntimeException( "Méthode getNbrDigit() non implantée." );
  }

  /**
   *
   */
  public int getNbrCoefficients()
  {
    throw new RuntimeException( "Méthode getNbrCoefficients() non implantée." );
  }

  /**
   *
   */
  public boolean estPair()
  {
    throw new RuntimeException( "Méthode estPair() non implantée." );
  }

  /**
   *
   */
  public boolean estImpair()
  {
    throw new RuntimeException( "Méthode estImpair() non implantée." );
  }

  /**
   *
   */
  public boolean estNonNul()
  {
    throw new RuntimeException( "Méthode estNonNul() non implantée." );
  }

  /**
   *
   */
  public boolean estNul()
  {
    throw new RuntimeException( "Méthode estNul() non implantée." );
  }

  /**
   *
   */
  public boolean estÉgalÀ1()
  {
    throw new RuntimeException( "Méthode estÉgalÀ1() non implantée." );
  }

  /**
   *
   */
  public boolean estDifférentDeUn()
  {
    throw new RuntimeException( "Méthode estDifférentDeUn() non implantée." );
  }

  /**
   *
   */
  public boolean estÉgalÀ2()
  {
    throw new RuntimeException( "Méthode estÉgalÀ2() non implantée." );
  }

  /**
   *
   */
  public EPA plus( EPA terme )
  {
    throw new RuntimeException( "Méthode plus( EPA ) non implantée." );
  }

  /**
   *
   */
  public EPA moins( EPA epa )
  {
    throw new RuntimeException( "Méthode moins( EPA ) non implantée." );
  }

  /**
   *
   */
  public EPA décale( int décalage )
  {
    throw new RuntimeException( "Méthode décale( int ) non implantée." );
  }

  /**
   *
   */
  public int compareTo( EPA n )
  {
    throw new RuntimeException( "Méthode compareTo( EPA ) non implantée." );
  }

  /**
   *
   */
  public byte[] toByteArray()
  {
    throw new RuntimeException( "Méthode toByteArray() non implantée." );
  }

  /**
   *
   */
  public String toString()
  {
    throw new RuntimeException( "Méthode toString() non implantée." );
  }

  /**
   *
   */
  public String toString( char c )
  {
    throw new RuntimeException( "Méthode toString( char ) non implantée." );
  }

  /**
   *
   */
  public EPA multipliéPar( int facteur )
  {
    throw new RuntimeException( "Méthode multipliéPar( int ) non implantée." );
  }

  /**
   *
   */
  public EPA multipliéPar( EPA facteur )
  {
    throw new RuntimeException( "Méthode multipliéPar( EPA ) non implantée." );
  }

  /**
   *
   */
  public EPA diviséPar( int n )
  {
    throw new RuntimeException( "Méthode diviséPar( int ) non implantée." );
  }

  /**
   *
   */
  public int modulo( int n )
  {
    throw new RuntimeException( "Méthode modulo( int ) non implantée." );
  }

  /**
   *
   */
  public EPA quotient( EPA module )
  {
    throw new RuntimeException( "Méthode quotient( EPA ) non implantée." );
  }

  /**
   *
   */
  public EPA reste( EPA module )
  {
    throw new RuntimeException( "Méthode reste( EPA ) non implantée." );
  }

  /**
   *
   */
  public EPA modulo( EPA module )
  {
    throw new RuntimeException( "Méthode modulo( EPA ) non implantée." );
  }

  /**
   *
   */
  public EPA[] quotientReste( EPA module )
  {
    throw new RuntimeException( "Méthode quotientReste( EPA ) non implantée." );
  }

  /**
   *
   */
  public EPA puissance( int exposant )
  {
    throw new RuntimeException( "Méthode puissance( int ) non implantée." );
  }

  /**
   *
   */
  public EPA puissance( EPA exposant )
  {
    throw new RuntimeException( "Méthode puissance( EPA ) non implantée." );
  }

  /**
   *
   */
  public EPA puissanceModulo( EPA exposant, EPA mod )
  {
    throw new RuntimeException( "Méthode puissanceModulo( EPA, EPA ) non implantée." );
  }

  /**
   *
   */
  public EPA pgcd( EPA n )
  {
    throw new RuntimeException( "Méthode pgcd( EPA ) non implantée." );
  }

  /**
   *
   */
  public boolean estProbablementPremier( int marge )
  {
    throw new RuntimeException( "Méthode estProbablementPremier( int ) non implantée." );
  }

  /**
   *
   */
  public EPA inverseModulo( EPA module )
  {
    throw new RuntimeException( "Méthode inverseModulo( EPA ) non implantée." );
  }


  /********************************* méthodes privées d'instances *********************************/

  /**
   *
   */
  private String toString( int[] val )
  {
    throw new RuntimeException( "Méthode toString( int[] ) non implantée." );
  }
}
