some requirement
mod power and random number
more requirements