must inherit the params class