added variable frequency option