added QAFunc