defensive in getOrElse