prepared for state manager implementation