using lazy initialization for document options