fetch defaults lazily