I read this, and the usage of it below in _from_dict(), and I still don't think I understand why this needs to be a staticmethod. I'm not against this approach and I'm not blocking merge, but if you have time I'd like to discuss.