Why do this instead of the decorator way?