used ||= for initialization.