fixed SystemManager and Factory methods to static