https://mycodingblog.com/posts/understanding-the-optional-chaining-operator/