match case with case classes, aliases an alternatives
case classes