I'd rather use 3-argument getattr() here than the 'try:...except AttributeError:',