separated controller management