factory returns