on the trainning framework