adding challenges framework