Changed some properties to protected set, to allow the clients to override their values.