Refactoring code so that we can use the abstract AMDManager