added bunches of code.
use setup array for filters and validations.