added functional testing capability