Modified for lazy initialization.