link function and fac