https://happydevops.com/2022/06/15/cons-operator-y-pattern-matching-en-scala/