LGTM for the most part, I don't really think we need to use both to_date and to_timestamp though, we can save a few cycles there. I rewrote the comments to match the rest of the file, and moved to where to where we test for year 0000 since it seems like a better place. Also took the liberty to use year 100 in one of the testcase, while the year is superfluous for the test in question, year 100 was previously untested so this will increase test coverage for free.