refactored sharemanager