factor out users