implemented the AIM