https://blog.knoldus.com/scala-type-bounds/
Scala: Type Bounds