seems like you could make an array of arrays out of your dates, with the index being the number of the month, or a hash with the month's name as the key and an array of dates within the month as the value... that way you could pull out the first index of each month and get the first non-holiday weekday (not necessarily the 1st of the month, as you mentioned,) and add 7 to get the next non-holiday weekday. have you got some code you're working with that you could post? - j -- Posted via http://www.ruby-forum.com/.