just nitpicking: ```getattr``` already raises ```AttributeError``` => 3/4 of the method are not needed :)