Refactored to use Prototype Manager.