Write a program or a script that returns the last Sundays of each month of a given year. The year may be given through any simple input method in your language (command line, std in, etc).

Example of an expected output:

./last_sundays 2013
2013-01-27
2013-02-24
2013-03-31
2013-04-28
2013-05-26
2013-06-30
2013-07-28
2013-08-25
2013-09-29
2013-10-27
2013-11-24
2013-12-29


Related tasks
 Day of the week
 Five weekends
 Last Friday of each month


lastSundayForMonth: function [m,y][
    ensure -> in? m 1..12
 
    daysOfMonth: @[0 31 (leap? y)? -> 28 -> 27 31 30 31 30 31 31 30 31 30 31]
    loop range get daysOfMonth m 1 [d][
        dt: to :date.format:"yyyy-M-dd" ~"|y|-|m|-|d|"
        if dt\Day = "Sunday" -> return dt
    ]
]
 
getLastSundays: function [year][
    loop 1..12 'month [
        print to :string.format:"yyyy-MM-dd" lastSundayForMonth month year
    ]
]
 
getLastSundays 2013