first: a, rest: List()