why add an extra getattr call here?