I didn't notice this before. Can this be a trait? Without performance data to say otherwise, trait should be preferred.