updated SystemManager's constructor