use crate::traits::{FftParameters, PoseidonDefaultParameters};
use core::{fmt::Debug, hash::Hash};
pub trait FieldParameters:
'static + FftParameters + PoseidonDefaultParameters + Copy + Clone + Debug + Default + PartialEq + Eq + Hash
{
const MODULUS: Self::BigInteger;
const MODULUS_BITS: u32;
const REPR_SHAVE_BITS: u32;
const R: Self::BigInteger;
const R2: Self::BigInteger;
const INV: u64;
const GENERATOR: Self::BigInteger;
const CAPACITY: u32;
const T: Self::BigInteger;
const T_MINUS_ONE_DIV_TWO: Self::BigInteger;
const MODULUS_MINUS_ONE_DIV_TWO: Self::BigInteger;
}