better way to override