Is there a reason `$options` is private rather than protected? Isn't protected more appropriate?