func (dates DateNodes) Maximum() *DateNode {
    min := (*DateNode)(nil)

    for _, date := range dates {
        if min == nil || date.EndDate().Years() > min.EndDate().Years() {