Fix julian day problem with strptime.  Note: XXX about using 0, suggestions?
diff --git a/Lib/_strptime.py b/Lib/_strptime.py
index 896c050..b7f7577 100644
--- a/Lib/_strptime.py
+++ b/Lib/_strptime.py
@@ -306,12 +306,14 @@
 
     def __init__(self, locale_time=LocaleTime()):
         """Init inst with non-locale regexes and store LocaleTime object."""
+        # XXX: should 0 be valid for:
+        #          day (d), julian day (j), month (m), and hour12 (I)?
         super(TimeRE,self).__init__({
             # The " \d" option is to make %c from ANSI C work
             'd': r"(?P<d>3[0-1]|[0-2]\d|\d| \d)",
             'H': r"(?P<H>2[0-3]|[0-1]\d|\d)",
             'I': r"(?P<I>0\d|1[0-2]|\d)",
-            'j': r"(?P<j>(?:3[0-5]\d|6[0-6])|[0-2]\d\d|\d)",
+            'j': r"(?P<j>(?:3[0-5]\d|36[0-6])|[0-2]\d\d|\d\d|\d)",
             'm': r"(?P<m>0\d|1[0-2]|\d)",
             'M': r"(?P<M>[0-5]\d|\d)",
             'S': r"(?P<S>6[0-1]|[0-5]\d|\d)",
diff --git a/Lib/test/test_strptime.py b/Lib/test/test_strptime.py
index a66b54a..83c03b4 100644
--- a/Lib/test/test_strptime.py
+++ b/Lib/test/test_strptime.py
@@ -379,6 +379,17 @@
         eq(_strptime.strptime('12 AM', '%I %p')[3], 0)
 
 
+class JulianTests(unittest.TestCase):
+    """Test a _strptime regression that all julian (1-366) are accepted"""
+
+    def test_all_julian_days(self):
+        eq = self.assertEqual
+        # XXX: should 0 be accepted?
+        for i in range(1, 367):
+            # use 2004, since it is a leap year, we have 366 days
+            eq(_strptime.strptime('%d 2004' % i, '%j %Y')[7], i)
+
+
 def test_main():
     suite = unittest.TestSuite()
     suite.addTest(unittest.makeSuite(LocaleTime_Tests))
@@ -386,6 +397,7 @@
     suite.addTest(unittest.makeSuite(StrptimeTests))
     suite.addTest(unittest.makeSuite(FxnTests))
     suite.addTest(unittest.makeSuite(Strptime12AMPMTests))
+    suite.addTest(unittest.makeSuite(JulianTests))
     test_support.run_suite(suite)