added printInfo() method