[PATCH 02/10] cal: fix signed integer overflow [AddressSanitizer]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



misc-utils/cal.c:811:16: runtime error: signed integer overflow:
2147483645 + 536870911 cannot be represented in type 'int'

Signed-off-by: Sami Kerola <kerolasa@xxxxxx>
---
 misc-utils/cal.c            |   6 +-
 tests/expected/cal/bigyear  | 312 +++++++++++++++++++++---------------------
 tests/expected/cal/bigyearw | 324 ++++++++++++++++++++++----------------------
 3 files changed, 322 insertions(+), 320 deletions(-)

diff --git a/misc-utils/cal.c b/misc-utils/cal.c
index a11136a..593ab28 100644
--- a/misc-utils/cal.c
+++ b/misc-utils/cal.c
@@ -807,9 +807,11 @@ static int day_in_week(int day, int month, int32_t year)
 		year -= (month < 3) + 14;
 	if (REFORMATION_YEAR < year
 	    || (year == REFORMATION_YEAR && 9 < month)
-	    || (year == REFORMATION_YEAR && month == 9 && 13 < day))
-		return (year + (year / 4) - (year / 100) + (year / 400) + reform[month - 1] +
+	    || (year == REFORMATION_YEAR && month == 9 && 13 < day)) {
+		long long_year = year;
+		return (long_year + (year / 4) - (year / 100) + (year / 400) + reform[month - 1] +
 			day) % 7;
+	}
 	if (year < REFORMATION_YEAR
 	    || (year == REFORMATION_YEAR && month < 9)
 	    || (year == REFORMATION_YEAR && month == 9 && day < 3))
diff --git a/tests/expected/cal/bigyear b/tests/expected/cal/bigyear
index 8dbd276..922a810 100644
--- a/tests/expected/cal/bigyear
+++ b/tests/expected/cal/bigyear
@@ -2,248 +2,248 @@
 Gregorian - Monday-based month
  December 2147483646
 Mo Tu We Th Fr Sa Su
+                1  2 
+ 3  4  5  6  7  8  9 
+10 11 12 13 14 15 16 
+17 18 19 20 21 22 23 
+24 25 26 27 28 29 30 
+31                   
+Gregorian - Sunday-based month
+ December 2147483646
+Su Mo Tu We Th Fr Sa
                    1 
  2  3  4  5  6  7  8 
  9 10 11 12 13 14 15 
 16 17 18 19 20 21 22 
 23 24 25 26 27 28 29 
 30 31                
-Gregorian - Sunday-based month
- December 2147483646
-Su Mo Tu We Th Fr Sa
- 1  2  3  4  5  6  7 
- 8  9 10 11 12 13 14 
-15 16 17 18 19 20 21 
-22 23 24 25 26 27 28 
-29 30 31             
-                     
 Julian - Monday-based month
     December 2147483646    
 Mon Tue Wed Thu Fri Sat Sun
+                    335 336 
+337 338 339 340 341 342 343 
+344 345 346 347 348 349 350 
+351 352 353 354 355 356 357 
+358 359 360 361 362 363 364 
+365                         
+Julian - Sunday-based month
+    December 2147483646    
+Sun Mon Tue Wed Thu Fri Sat
                         335 
 336 337 338 339 340 341 342 
 343 344 345 346 347 348 349 
 350 351 352 353 354 355 356 
 357 358 359 360 361 362 363 
 364 365                     
-Julian - Sunday-based month
-    December 2147483646    
-Sun Mon Tue Wed Thu Fri Sat
-335 336 337 338 339 340 341 
-342 343 344 345 346 347 348 
-349 350 351 352 353 354 355 
-356 357 358 359 360 361 362 
-363 364 365                 
-                            
 Gregorian - Monday-based three months
  November 2147483646   December 2147483646   January 2147483647 
 Mo Tu We Th Fr Sa Su  Mo Tu We Th Fr Sa Su  Mo Tu We Th Fr Sa Su
-                   1                     1                     1 
- 2  3  4  5  6  7  8   2  3  4  5  6  7  8   2  3  4  5  6  7  8 
- 9 10 11 12 13 14 15   9 10 11 12 13 14 15   9 10 11 12 13 14 15 
-16 17 18 19 20 21 22  16 17 18 19 20 21 22  16 17 18 19 20 21 22 
-23 24 25 26 27 28 29  23 24 25 26 27 28 29  23 24 25 26 27 28 29 
-30                    30 31                 30 31                
+          1  2  3  4                  1  2      1  2  3  4  5  6 
+ 5  6  7  8  9 10 11   3  4  5  6  7  8  9   7  8  9 10 11 12 13 
+12 13 14 15 16 17 18  10 11 12 13 14 15 16  14 15 16 17 18 19 20 
+19 20 21 22 23 24 25  17 18 19 20 21 22 23  21 22 23 24 25 26 27 
+26 27 28 29 30        24 25 26 27 28 29 30  28 29 30 31          
+                      31                                         
 Gregorian - Sunday-based three months
  November 2147483646   December 2147483646   January 2147483647 
 Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa
- 1  2  3  4  5  6  7   1  2  3  4  5  6  7   1  2  3  4  5  6  7 
- 8  9 10 11 12 13 14   8  9 10 11 12 13 14   8  9 10 11 12 13 14 
-15 16 17 18 19 20 21  15 16 17 18 19 20 21  15 16 17 18 19 20 21 
-22 23 24 25 26 27 28  22 23 24 25 26 27 28  22 23 24 25 26 27 28 
-29 30                 29 30 31              29 30 31             
-                                                                 
+             1  2  3                     1         1  2  3  4  5 
+ 4  5  6  7  8  9 10   2  3  4  5  6  7  8   6  7  8  9 10 11 12 
+11 12 13 14 15 16 17   9 10 11 12 13 14 15  13 14 15 16 17 18 19 
+18 19 20 21 22 23 24  16 17 18 19 20 21 22  20 21 22 23 24 25 26 
+25 26 27 28 29 30     23 24 25 26 27 28 29  27 28 29 30 31       
+                      30 31                                      
 Julian - Monday-based three months
     November 2147483646          December 2147483646           January 2147483647    
 Mon Tue Wed Thu Fri Sat Sun  Mon Tue Wed Thu Fri Sat Sun  Mon Tue Wed Thu Fri Sat Sun
-                        305                          335                            1 
-306 307 308 309 310 311 312  336 337 338 339 340 341 342    2   3   4   5   6   7   8 
-313 314 315 316 317 318 319  343 344 345 346 347 348 349    9  10  11  12  13  14  15 
-320 321 322 323 324 325 326  350 351 352 353 354 355 356   16  17  18  19  20  21  22 
-327 328 329 330 331 332 333  357 358 359 360 361 362 363   23  24  25  26  27  28  29 
-334                          364 365                       30  31                     
+            305 306 307 308                      335 336        1   2   3   4   5   6 
+309 310 311 312 313 314 315  337 338 339 340 341 342 343    7   8   9  10  11  12  13 
+316 317 318 319 320 321 322  344 345 346 347 348 349 350   14  15  16  17  18  19  20 
+323 324 325 326 327 328 329  351 352 353 354 355 356 357   21  22  23  24  25  26  27 
+330 331 332 333 334          358 359 360 361 362 363 364   28  29  30  31             
+                             365                                                      
 Julian - Sunday-based three months
     November 2147483646          December 2147483646           January 2147483647    
 Sun Mon Tue Wed Thu Fri Sat  Sun Mon Tue Wed Thu Fri Sat  Sun Mon Tue Wed Thu Fri Sat
-305 306 307 308 309 310 311  335 336 337 338 339 340 341    1   2   3   4   5   6   7 
-312 313 314 315 316 317 318  342 343 344 345 346 347 348    8   9  10  11  12  13  14 
-319 320 321 322 323 324 325  349 350 351 352 353 354 355   15  16  17  18  19  20  21 
-326 327 328 329 330 331 332  356 357 358 359 360 361 362   22  23  24  25  26  27  28 
-333 334                      363 364 365                   29  30  31                 
-                                                                                      
+                305 306 307                          335            1   2   3   4   5 
+308 309 310 311 312 313 314  336 337 338 339 340 341 342    6   7   8   9  10  11  12 
+315 316 317 318 319 320 321  343 344 345 346 347 348 349   13  14  15  16  17  18  19 
+322 323 324 325 326 327 328  350 351 352 353 354 355 356   20  21  22  23  24  25  26 
+329 330 331 332 333 334      357 358 359 360 361 362 363   27  28  29  30  31         
+                             364 365                                                  
 Gregorian - Monday-based year
                             2147483646                            
 
        January               February                 March       
 Mo Tu We Th Fr Sa Su   Mo Tu We Th Fr Sa Su   Mo Tu We Th Fr Sa Su
-                   1                      1                      1   
- 2  3  4  5  6  7  8    2  3  4  5  6  7  8    2  3  4  5  6  7  8   
- 9 10 11 12 13 14 15    9 10 11 12 13 14 15    9 10 11 12 13 14 15   
-16 17 18 19 20 21 22   16 17 18 19 20 21 22   16 17 18 19 20 21 22   
-23 24 25 26 27 28 29   23 24 25 26 27 28      23 24 25 26 27 28 29   
-30 31                                         30 31                  
+ 1  2  3  4  5  6  7             1  2  3  4             1  2  3  4   
+ 8  9 10 11 12 13 14    5  6  7  8  9 10 11    5  6  7  8  9 10 11   
+15 16 17 18 19 20 21   12 13 14 15 16 17 18   12 13 14 15 16 17 18   
+22 23 24 25 26 27 28   19 20 21 22 23 24 25   19 20 21 22 23 24 25   
+29 30 31               26 27 28               26 27 28 29 30 31      
+                                                                     
         April                   May                   June        
 Mo Tu We Th Fr Sa Su   Mo Tu We Th Fr Sa Su   Mo Tu We Th Fr Sa Su
-                   1                      1                      1   
- 2  3  4  5  6  7  8    2  3  4  5  6  7  8    2  3  4  5  6  7  8   
- 9 10 11 12 13 14 15    9 10 11 12 13 14 15    9 10 11 12 13 14 15   
-16 17 18 19 20 21 22   16 17 18 19 20 21 22   16 17 18 19 20 21 22   
-23 24 25 26 27 28 29   23 24 25 26 27 28 29   23 24 25 26 27 28 29   
-30                     30 31                  30                     
+                   1       1  2  3  4  5  6                1  2  3   
+ 2  3  4  5  6  7  8    7  8  9 10 11 12 13    4  5  6  7  8  9 10   
+ 9 10 11 12 13 14 15   14 15 16 17 18 19 20   11 12 13 14 15 16 17   
+16 17 18 19 20 21 22   21 22 23 24 25 26 27   18 19 20 21 22 23 24   
+23 24 25 26 27 28 29   28 29 30 31            25 26 27 28 29 30      
+30                                                                   
         July                  August                September     
 Mo Tu We Th Fr Sa Su   Mo Tu We Th Fr Sa Su   Mo Tu We Th Fr Sa Su
-                   1                      1                      1   
- 2  3  4  5  6  7  8    2  3  4  5  6  7  8    2  3  4  5  6  7  8   
- 9 10 11 12 13 14 15    9 10 11 12 13 14 15    9 10 11 12 13 14 15   
-16 17 18 19 20 21 22   16 17 18 19 20 21 22   16 17 18 19 20 21 22   
-23 24 25 26 27 28 29   23 24 25 26 27 28 29   23 24 25 26 27 28 29   
-30 31                  30 31                  30                     
+                   1          1  2  3  4  5                   1  2   
+ 2  3  4  5  6  7  8    6  7  8  9 10 11 12    3  4  5  6  7  8  9   
+ 9 10 11 12 13 14 15   13 14 15 16 17 18 19   10 11 12 13 14 15 16   
+16 17 18 19 20 21 22   20 21 22 23 24 25 26   17 18 19 20 21 22 23   
+23 24 25 26 27 28 29   27 28 29 30 31         24 25 26 27 28 29 30   
+30 31                                                                
        October               November               December      
 Mo Tu We Th Fr Sa Su   Mo Tu We Th Fr Sa Su   Mo Tu We Th Fr Sa Su
-                   1                      1                      1   
- 2  3  4  5  6  7  8    2  3  4  5  6  7  8    2  3  4  5  6  7  8   
- 9 10 11 12 13 14 15    9 10 11 12 13 14 15    9 10 11 12 13 14 15   
-16 17 18 19 20 21 22   16 17 18 19 20 21 22   16 17 18 19 20 21 22   
-23 24 25 26 27 28 29   23 24 25 26 27 28 29   23 24 25 26 27 28 29   
-30 31                  30                     30 31                  
+ 1  2  3  4  5  6  7             1  2  3  4                   1  2   
+ 8  9 10 11 12 13 14    5  6  7  8  9 10 11    3  4  5  6  7  8  9   
+15 16 17 18 19 20 21   12 13 14 15 16 17 18   10 11 12 13 14 15 16   
+22 23 24 25 26 27 28   19 20 21 22 23 24 25   17 18 19 20 21 22 23   
+29 30 31               26 27 28 29 30         24 25 26 27 28 29 30   
+                                              31                     
 
 Gregorian - Sunday-based year
                             2147483646                            
 
        January               February                 March       
 Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa
- 1  2  3  4  5  6  7    1  2  3  4  5  6  7    1  2  3  4  5  6  7   
- 8  9 10 11 12 13 14    8  9 10 11 12 13 14    8  9 10 11 12 13 14   
-15 16 17 18 19 20 21   15 16 17 18 19 20 21   15 16 17 18 19 20 21   
-22 23 24 25 26 27 28   22 23 24 25 26 27 28   22 23 24 25 26 27 28   
-29 30 31                                      29 30 31               
+    1  2  3  4  5  6                1  2  3                1  2  3   
+ 7  8  9 10 11 12 13    4  5  6  7  8  9 10    4  5  6  7  8  9 10   
+14 15 16 17 18 19 20   11 12 13 14 15 16 17   11 12 13 14 15 16 17   
+21 22 23 24 25 26 27   18 19 20 21 22 23 24   18 19 20 21 22 23 24   
+28 29 30 31            25 26 27 28            25 26 27 28 29 30 31   
                                                                      
         April                   May                   June        
 Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa
- 1  2  3  4  5  6  7    1  2  3  4  5  6  7    1  2  3  4  5  6  7   
- 8  9 10 11 12 13 14    8  9 10 11 12 13 14    8  9 10 11 12 13 14   
-15 16 17 18 19 20 21   15 16 17 18 19 20 21   15 16 17 18 19 20 21   
-22 23 24 25 26 27 28   22 23 24 25 26 27 28   22 23 24 25 26 27 28   
-29 30                  29 30 31               29 30                  
+ 1  2  3  4  5  6  7          1  2  3  4  5                   1  2   
+ 8  9 10 11 12 13 14    6  7  8  9 10 11 12    3  4  5  6  7  8  9   
+15 16 17 18 19 20 21   13 14 15 16 17 18 19   10 11 12 13 14 15 16   
+22 23 24 25 26 27 28   20 21 22 23 24 25 26   17 18 19 20 21 22 23   
+29 30                  27 28 29 30 31         24 25 26 27 28 29 30   
                                                                      
         July                  August                September     
 Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa
- 1  2  3  4  5  6  7    1  2  3  4  5  6  7    1  2  3  4  5  6  7   
- 8  9 10 11 12 13 14    8  9 10 11 12 13 14    8  9 10 11 12 13 14   
-15 16 17 18 19 20 21   15 16 17 18 19 20 21   15 16 17 18 19 20 21   
-22 23 24 25 26 27 28   22 23 24 25 26 27 28   22 23 24 25 26 27 28   
-29 30 31               29 30 31               29 30                  
-                                                                     
+ 1  2  3  4  5  6  7             1  2  3  4                      1   
+ 8  9 10 11 12 13 14    5  6  7  8  9 10 11    2  3  4  5  6  7  8   
+15 16 17 18 19 20 21   12 13 14 15 16 17 18    9 10 11 12 13 14 15   
+22 23 24 25 26 27 28   19 20 21 22 23 24 25   16 17 18 19 20 21 22   
+29 30 31               26 27 28 29 30 31      23 24 25 26 27 28 29   
+                                              30                     
        October               November               December      
 Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa   Su Mo Tu We Th Fr Sa
- 1  2  3  4  5  6  7    1  2  3  4  5  6  7    1  2  3  4  5  6  7   
- 8  9 10 11 12 13 14    8  9 10 11 12 13 14    8  9 10 11 12 13 14   
-15 16 17 18 19 20 21   15 16 17 18 19 20 21   15 16 17 18 19 20 21   
-22 23 24 25 26 27 28   22 23 24 25 26 27 28   22 23 24 25 26 27 28   
-29 30 31               29 30                  29 30 31               
-                                                                     
+    1  2  3  4  5  6                1  2  3                      1   
+ 7  8  9 10 11 12 13    4  5  6  7  8  9 10    2  3  4  5  6  7  8   
+14 15 16 17 18 19 20   11 12 13 14 15 16 17    9 10 11 12 13 14 15   
+21 22 23 24 25 26 27   18 19 20 21 22 23 24   16 17 18 19 20 21 22   
+28 29 30 31            25 26 27 28 29 30      23 24 25 26 27 28 29   
+                                              30 31                  
 
 Julian - Monday-based year
                         2147483646                       
 
           January                       February         
 Mon Tue Wed Thu Fri Sat Sun   Mon Tue Wed Thu Fri Sat Sun
-                          1                            32   
-  2   3   4   5   6   7   8    33  34  35  36  37  38  39   
-  9  10  11  12  13  14  15    40  41  42  43  44  45  46   
- 16  17  18  19  20  21  22    47  48  49  50  51  52  53   
- 23  24  25  26  27  28  29    54  55  56  57  58  59       
- 30  31                                                     
+  1   2   3   4   5   6   7                32  33  34  35   
+  8   9  10  11  12  13  14    36  37  38  39  40  41  42   
+ 15  16  17  18  19  20  21    43  44  45  46  47  48  49   
+ 22  23  24  25  26  27  28    50  51  52  53  54  55  56   
+ 29  30  31                    57  58  59                   
+                                                            
            March                         April           
 Mon Tue Wed Thu Fri Sat Sun   Mon Tue Wed Thu Fri Sat Sun
-                         60                            91   
- 61  62  63  64  65  66  67    92  93  94  95  96  97  98   
- 68  69  70  71  72  73  74    99 100 101 102 103 104 105   
- 75  76  77  78  79  80  81   106 107 108 109 110 111 112   
- 82  83  84  85  86  87  88   113 114 115 116 117 118 119   
- 89  90                       120                           
+             60  61  62  63                            91   
+ 64  65  66  67  68  69  70    92  93  94  95  96  97  98   
+ 71  72  73  74  75  76  77    99 100 101 102 103 104 105   
+ 78  79  80  81  82  83  84   106 107 108 109 110 111 112   
+ 85  86  87  88  89  90       113 114 115 116 117 118 119   
+                              120                           
             May                           June           
 Mon Tue Wed Thu Fri Sat Sun   Mon Tue Wed Thu Fri Sat Sun
-                        121                           152   
-122 123 124 125 126 127 128   153 154 155 156 157 158 159   
-129 130 131 132 133 134 135   160 161 162 163 164 165 166   
-136 137 138 139 140 141 142   167 168 169 170 171 172 173   
-143 144 145 146 147 148 149   174 175 176 177 178 179 180   
-150 151                       181                           
+    121 122 123 124 125 126                   152 153 154   
+127 128 129 130 131 132 133   155 156 157 158 159 160 161   
+134 135 136 137 138 139 140   162 163 164 165 166 167 168   
+141 142 143 144 145 146 147   169 170 171 172 173 174 175   
+148 149 150 151               176 177 178 179 180 181       
+                                                            
             July                         August          
 Mon Tue Wed Thu Fri Sat Sun   Mon Tue Wed Thu Fri Sat Sun
-                        182                           213   
-183 184 185 186 187 188 189   214 215 216 217 218 219 220   
-190 191 192 193 194 195 196   221 222 223 224 225 226 227   
-197 198 199 200 201 202 203   228 229 230 231 232 233 234   
-204 205 206 207 208 209 210   235 236 237 238 239 240 241   
-211 212                       242 243                       
+                        182           213 214 215 216 217   
+183 184 185 186 187 188 189   218 219 220 221 222 223 224   
+190 191 192 193 194 195 196   225 226 227 228 229 230 231   
+197 198 199 200 201 202 203   232 233 234 235 236 237 238   
+204 205 206 207 208 209 210   239 240 241 242 243           
+211 212                                                     
          September                      October          
 Mon Tue Wed Thu Fri Sat Sun   Mon Tue Wed Thu Fri Sat Sun
-                        244                           274   
-245 246 247 248 249 250 251   275 276 277 278 279 280 281   
-252 253 254 255 256 257 258   282 283 284 285 286 287 288   
-259 260 261 262 263 264 265   289 290 291 292 293 294 295   
-266 267 268 269 270 271 272   296 297 298 299 300 301 302   
-273                           303 304                       
+                    244 245   274 275 276 277 278 279 280   
+246 247 248 249 250 251 252   281 282 283 284 285 286 287   
+253 254 255 256 257 258 259   288 289 290 291 292 293 294   
+260 261 262 263 264 265 266   295 296 297 298 299 300 301   
+267 268 269 270 271 272 273   302 303 304                   
+                                                            
           November                      December         
 Mon Tue Wed Thu Fri Sat Sun   Mon Tue Wed Thu Fri Sat Sun
-                        305                           335   
-306 307 308 309 310 311 312   336 337 338 339 340 341 342   
-313 314 315 316 317 318 319   343 344 345 346 347 348 349   
-320 321 322 323 324 325 326   350 351 352 353 354 355 356   
-327 328 329 330 331 332 333   357 358 359 360 361 362 363   
-334                           364 365                       
+            305 306 307 308                       335 336   
+309 310 311 312 313 314 315   337 338 339 340 341 342 343   
+316 317 318 319 320 321 322   344 345 346 347 348 349 350   
+323 324 325 326 327 328 329   351 352 353 354 355 356 357   
+330 331 332 333 334           358 359 360 361 362 363 364   
+                              365                           
 
 Julian - Sunday-based year
                         2147483646                       
 
           January                       February         
 Sun Mon Tue Wed Thu Fri Sat   Sun Mon Tue Wed Thu Fri Sat
-  1   2   3   4   5   6   7    32  33  34  35  36  37  38   
-  8   9  10  11  12  13  14    39  40  41  42  43  44  45   
- 15  16  17  18  19  20  21    46  47  48  49  50  51  52   
- 22  23  24  25  26  27  28    53  54  55  56  57  58  59   
- 29  30  31                                                 
+      1   2   3   4   5   6                    32  33  34   
+  7   8   9  10  11  12  13    35  36  37  38  39  40  41   
+ 14  15  16  17  18  19  20    42  43  44  45  46  47  48   
+ 21  22  23  24  25  26  27    49  50  51  52  53  54  55   
+ 28  29  30  31                56  57  58  59               
                                                             
            March                         April           
 Sun Mon Tue Wed Thu Fri Sat   Sun Mon Tue Wed Thu Fri Sat
- 60  61  62  63  64  65  66    91  92  93  94  95  96  97   
- 67  68  69  70  71  72  73    98  99 100 101 102 103 104   
- 74  75  76  77  78  79  80   105 106 107 108 109 110 111   
- 81  82  83  84  85  86  87   112 113 114 115 116 117 118   
- 88  89  90                   119 120                       
+                 60  61  62    91  92  93  94  95  96  97   
+ 63  64  65  66  67  68  69    98  99 100 101 102 103 104   
+ 70  71  72  73  74  75  76   105 106 107 108 109 110 111   
+ 77  78  79  80  81  82  83   112 113 114 115 116 117 118   
+ 84  85  86  87  88  89  90   119 120                       
                                                             
             May                           June           
 Sun Mon Tue Wed Thu Fri Sat   Sun Mon Tue Wed Thu Fri Sat
-121 122 123 124 125 126 127   152 153 154 155 156 157 158   
-128 129 130 131 132 133 134   159 160 161 162 163 164 165   
-135 136 137 138 139 140 141   166 167 168 169 170 171 172   
-142 143 144 145 146 147 148   173 174 175 176 177 178 179   
-149 150 151                   180 181                       
+        121 122 123 124 125                       152 153   
+126 127 128 129 130 131 132   154 155 156 157 158 159 160   
+133 134 135 136 137 138 139   161 162 163 164 165 166 167   
+140 141 142 143 144 145 146   168 169 170 171 172 173 174   
+147 148 149 150 151           175 176 177 178 179 180 181   
                                                             
             July                         August          
 Sun Mon Tue Wed Thu Fri Sat   Sun Mon Tue Wed Thu Fri Sat
-182 183 184 185 186 187 188   213 214 215 216 217 218 219   
-189 190 191 192 193 194 195   220 221 222 223 224 225 226   
-196 197 198 199 200 201 202   227 228 229 230 231 232 233   
-203 204 205 206 207 208 209   234 235 236 237 238 239 240   
-210 211 212                   241 242 243                   
+182 183 184 185 186 187 188               213 214 215 216   
+189 190 191 192 193 194 195   217 218 219 220 221 222 223   
+196 197 198 199 200 201 202   224 225 226 227 228 229 230   
+203 204 205 206 207 208 209   231 232 233 234 235 236 237   
+210 211 212                   238 239 240 241 242 243       
                                                             
          September                      October          
 Sun Mon Tue Wed Thu Fri Sat   Sun Mon Tue Wed Thu Fri Sat
-244 245 246 247 248 249 250   274 275 276 277 278 279 280   
-251 252 253 254 255 256 257   281 282 283 284 285 286 287   
-258 259 260 261 262 263 264   288 289 290 291 292 293 294   
-265 266 267 268 269 270 271   295 296 297 298 299 300 301   
-272 273                       302 303 304                   
-                                                            
+                        244       274 275 276 277 278 279   
+245 246 247 248 249 250 251   280 281 282 283 284 285 286   
+252 253 254 255 256 257 258   287 288 289 290 291 292 293   
+259 260 261 262 263 264 265   294 295 296 297 298 299 300   
+266 267 268 269 270 271 272   301 302 303 304               
+273                                                         
           November                      December         
 Sun Mon Tue Wed Thu Fri Sat   Sun Mon Tue Wed Thu Fri Sat
-305 306 307 308 309 310 311   335 336 337 338 339 340 341   
-312 313 314 315 316 317 318   342 343 344 345 346 347 348   
-319 320 321 322 323 324 325   349 350 351 352 353 354 355   
-326 327 328 329 330 331 332   356 357 358 359 360 361 362   
-333 334                       363 364 365                   
-                                                            
+                305 306 307                           335   
+308 309 310 311 312 313 314   336 337 338 339 340 341 342   
+315 316 317 318 319 320 321   343 344 345 346 347 348 349   
+322 323 324 325 326 327 328   350 351 352 353 354 355 356   
+329 330 331 332 333 334       357 358 359 360 361 362 363   
+                              364 365                       
 
diff --git a/tests/expected/cal/bigyearw b/tests/expected/cal/bigyearw
index b2ce206..fae271e 100644
--- a/tests/expected/cal/bigyearw
+++ b/tests/expected/cal/bigyearw
@@ -2,248 +2,248 @@
 Gregorian - Monday-based month with week numbers
   December 2147483646  
    Mo Tu We Th Fr Sa Su
-48                    1 
-49  2  3  4  5  6  7  8 
-50  9 10 11 12 13 14 15 
-51 16 17 18 19 20 21 22 
-52 23 24 25 26 27 28 29 
-52 30 31                
+48                 1  2 
+49  3  4  5  6  7  8  9 
+50 10 11 12 13 14 15 16 
+51 17 18 19 20 21 22 23 
+52 24 25 26 27 28 29 30 
+ 1 31                   
 Gregorian - Sunday-based month with week numbers
   December 2147483646  
    Su Mo Tu We Th Fr Sa
-47  1  2  3  4  5  6  7 
-48  8  9 10 11 12 13 14 
-49 15 16 17 18 19 20 21 
-50 22 23 24 25 26 27 28 
-51 29 30 31             
-                        
+47                    1 
+48  2  3  4  5  6  7  8 
+49  9 10 11 12 13 14 15 
+50 16 17 18 19 20 21 22 
+51 23 24 25 26 27 28 29 
+52 30 31                
 Julian - Monday-based month with week numbers
       December 2147483646     
    Mon Tue Wed Thu Fri Sat Sun
-48                         335 
-49 336 337 338 339 340 341 342 
-50 343 344 345 346 347 348 349 
-51 350 351 352 353 354 355 356 
-52 357 358 359 360 361 362 363 
-52 364 365                     
+48                     335 336 
+49 337 338 339 340 341 342 343 
+50 344 345 346 347 348 349 350 
+51 351 352 353 354 355 356 357 
+52 358 359 360 361 362 363 364 
+ 1 365                         
 Julian - Sunday-based month with week numbers
       December 2147483646     
    Sun Mon Tue Wed Thu Fri Sat
-47 335 336 337 338 339 340 341 
-48 342 343 344 345 346 347 348 
-49 349 350 351 352 353 354 355 
-50 356 357 358 359 360 361 362 
-51 363 364 365                 
-                               
+47                         335 
+48 336 337 338 339 340 341 342 
+49 343 344 345 346 347 348 349 
+50 350 351 352 353 354 355 356 
+51 357 358 359 360 361 362 363 
+52 364 365                     
 Gregorian - Monday-based three months with week numbers
   November 2147483646      December 2147483646       January 2147483647  
    Mo Tu We Th Fr Sa Su     Mo Tu We Th Fr Sa Su     Mo Tu We Th Fr Sa Su
-43                    1  48                    1  52                    1 
-44  2  3  4  5  6  7  8  49  2  3  4  5  6  7  8  52  2  3  4  5  6  7  8 
-45  9 10 11 12 13 14 15  50  9 10 11 12 13 14 15  52  9 10 11 12 13 14 15 
-46 16 17 18 19 20 21 22  51 16 17 18 19 20 21 22  52 16 17 18 19 20 21 22 
-47 23 24 25 26 27 28 29  52 23 24 25 26 27 28 29  52 23 24 25 26 27 28 29 
-48 30                    52 30 31                 52 30 31                
+44           1  2  3  4  48                 1  2   1     1  2  3  4  5  6 
+45  5  6  7  8  9 10 11  49  3  4  5  6  7  8  9   2  7  8  9 10 11 12 13 
+46 12 13 14 15 16 17 18  50 10 11 12 13 14 15 16   3 14 15 16 17 18 19 20 
+47 19 20 21 22 23 24 25  51 17 18 19 20 21 22 23   4 21 22 23 24 25 26 27 
+48 26 27 28 29 30        52 24 25 26 27 28 29 30   5 28 29 30 31          
+                          1 31                                            
 Gregorian - Sunday-based three months with week numbers
   November 2147483646      December 2147483646       January 2147483647  
    Su Mo Tu We Th Fr Sa     Su Mo Tu We Th Fr Sa     Su Mo Tu We Th Fr Sa
-43  1  2  3  4  5  6  7  47  1  2  3  4  5  6  7  51  1  2  3  4  5  6  7 
-44  8  9 10 11 12 13 14  48  8  9 10 11 12 13 14  52  8  9 10 11 12 13 14 
-45 15 16 17 18 19 20 21  49 15 16 17 18 19 20 21  51 15 16 17 18 19 20 21 
-46 22 23 24 25 26 27 28  50 22 23 24 25 26 27 28  52 22 23 24 25 26 27 28 
-47 29 30                 51 29 30 31              51 29 30 31             
-                                                                          
+43              1  2  3  47                    1  52        1  2  3  4  5 
+44  4  5  6  7  8  9 10  48  2  3  4  5  6  7  8   1  6  7  8  9 10 11 12 
+45 11 12 13 14 15 16 17  49  9 10 11 12 13 14 15   2 13 14 15 16 17 18 19 
+46 18 19 20 21 22 23 24  50 16 17 18 19 20 21 22   3 20 21 22 23 24 25 26 
+47 25 26 27 28 29 30     51 23 24 25 26 27 28 29   4 27 28 29 30 31       
+                         52 30 31                                         
 Julian - Monday-based three months with week numbers
       November 2147483646             December 2147483646             January 2147483647      
    Mon Tue Wed Thu Fri Sat Sun     Mon Tue Wed Thu Fri Sat Sun     Mon Tue Wed Thu Fri Sat Sun
-43                         305  48                         335  52                           1 
-44 306 307 308 309 310 311 312  49 336 337 338 339 340 341 342  52   2   3   4   5   6   7   8 
-45 313 314 315 316 317 318 319  50 343 344 345 346 347 348 349  52   9  10  11  12  13  14  15 
-46 320 321 322 323 324 325 326  51 350 351 352 353 354 355 356  52  16  17  18  19  20  21  22 
-47 327 328 329 330 331 332 333  52 357 358 359 360 361 362 363  52  23  24  25  26  27  28  29 
-48 334                          52 364 365                      52  30  31                     
+44             305 306 307 308  48                     335 336   1       1   2   3   4   5   6 
+45 309 310 311 312 313 314 315  49 337 338 339 340 341 342 343   2   7   8   9  10  11  12  13 
+46 316 317 318 319 320 321 322  50 344 345 346 347 348 349 350   3  14  15  16  17  18  19  20 
+47 323 324 325 326 327 328 329  51 351 352 353 354 355 356 357   4  21  22  23  24  25  26  27 
+48 330 331 332 333 334          52 358 359 360 361 362 363 364   5  28  29  30  31             
+                                 1 365                                                         
 Julian - Sunday-based three months with week numbers
       November 2147483646             December 2147483646             January 2147483647      
    Sun Mon Tue Wed Thu Fri Sat     Sun Mon Tue Wed Thu Fri Sat     Sun Mon Tue Wed Thu Fri Sat
-43 305 306 307 308 309 310 311  47 335 336 337 338 339 340 341  51   1   2   3   4   5   6   7 
-44 312 313 314 315 316 317 318  48 342 343 344 345 346 347 348  52   8   9  10  11  12  13  14 
-45 319 320 321 322 323 324 325  49 349 350 351 352 353 354 355  51  15  16  17  18  19  20  21 
-46 326 327 328 329 330 331 332  50 356 357 358 359 360 361 362  52  22  23  24  25  26  27  28 
-47 333 334                      51 363 364 365                  51  29  30  31                 
-                                                                                               
+43                 305 306 307  47                         335  52           1   2   3   4   5 
+44 308 309 310 311 312 313 314  48 336 337 338 339 340 341 342   1   6   7   8   9  10  11  12 
+45 315 316 317 318 319 320 321  49 343 344 345 346 347 348 349   2  13  14  15  16  17  18  19 
+46 322 323 324 325 326 327 328  50 350 351 352 353 354 355 356   3  20  21  22  23  24  25  26 
+47 329 330 331 332 333 334      51 357 358 359 360 361 362 363   4  27  28  29  30  31         
+                                52 364 365                                                     
 Gregorian - Monday-based year with week numbers
                                  2147483646                                
 
         January                   February                   March         
    Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su
-52                    1    4                    1    8                    1   
-52  2  3  4  5  6  7  8    5  2  3  4  5  6  7  8    9  2  3  4  5  6  7  8   
-52  9 10 11 12 13 14 15    6  9 10 11 12 13 14 15   10  9 10 11 12 13 14 15   
-52 16 17 18 19 20 21 22    7 16 17 18 19 20 21 22   11 16 17 18 19 20 21 22   
-52 23 24 25 26 27 28 29    8 23 24 25 26 27 28      12 23 24 25 26 27 28 29   
-52 30 31                                            13 30 31                  
+ 1  1  2  3  4  5  6  7    5           1  2  3  4    9           1  2  3  4   
+ 2  8  9 10 11 12 13 14    6  5  6  7  8  9 10 11   10  5  6  7  8  9 10 11   
+ 3 15 16 17 18 19 20 21    7 12 13 14 15 16 17 18   11 12 13 14 15 16 17 18   
+ 4 22 23 24 25 26 27 28    8 19 20 21 22 23 24 25   12 19 20 21 22 23 24 25   
+ 5 29 30 31                9 26 27 28               13 26 27 28 29 30 31      
+                                                                              
          April                      May                       June         
    Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su
-13                    1   17                    1   22                    1   
-14  2  3  4  5  6  7  8   18  2  3  4  5  6  7  8   23  2  3  4  5  6  7  8   
-15  9 10 11 12 13 14 15   19  9 10 11 12 13 14 15   24  9 10 11 12 13 14 15   
-16 16 17 18 19 20 21 22   20 16 17 18 19 20 21 22   25 16 17 18 19 20 21 22   
-17 23 24 25 26 27 28 29   21 23 24 25 26 27 28 29   26 23 24 25 26 27 28 29   
-18 30                     22 30 31                  27 30                     
+13                    1   18     1  2  3  4  5  6   22              1  2  3   
+14  2  3  4  5  6  7  8   19  7  8  9 10 11 12 13   23  4  5  6  7  8  9 10   
+15  9 10 11 12 13 14 15   20 14 15 16 17 18 19 20   24 11 12 13 14 15 16 17   
+16 16 17 18 19 20 21 22   21 21 22 23 24 25 26 27   25 18 19 20 21 22 23 24   
+17 23 24 25 26 27 28 29   22 28 29 30 31            26 25 26 27 28 29 30      
+18 30                                                                         
           July                     August                  September       
    Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su
-26                    1   30                    1   35                    1   
-27  2  3  4  5  6  7  8   31  2  3  4  5  6  7  8   36  2  3  4  5  6  7  8   
-28  9 10 11 12 13 14 15   32  9 10 11 12 13 14 15   37  9 10 11 12 13 14 15   
-29 16 17 18 19 20 21 22   33 16 17 18 19 20 21 22   38 16 17 18 19 20 21 22   
-30 23 24 25 26 27 28 29   34 23 24 25 26 27 28 29   39 23 24 25 26 27 28 29   
-31 30 31                  35 30 31                  40 30                     
+26                    1   31        1  2  3  4  5   35                 1  2   
+27  2  3  4  5  6  7  8   32  6  7  8  9 10 11 12   36  3  4  5  6  7  8  9   
+28  9 10 11 12 13 14 15   33 13 14 15 16 17 18 19   37 10 11 12 13 14 15 16   
+29 16 17 18 19 20 21 22   34 20 21 22 23 24 25 26   38 17 18 19 20 21 22 23   
+30 23 24 25 26 27 28 29   35 27 28 29 30 31         39 24 25 26 27 28 29 30   
+31 30 31                                                                      
         October                   November                  December       
    Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su      Mo Tu We Th Fr Sa Su
-39                    1   43                    1   48                    1   
-40  2  3  4  5  6  7  8   44  2  3  4  5  6  7  8   49  2  3  4  5  6  7  8   
-41  9 10 11 12 13 14 15   45  9 10 11 12 13 14 15   50  9 10 11 12 13 14 15   
-42 16 17 18 19 20 21 22   46 16 17 18 19 20 21 22   51 16 17 18 19 20 21 22   
-43 23 24 25 26 27 28 29   47 23 24 25 26 27 28 29   52 23 24 25 26 27 28 29   
-44 30 31                  48 30                     52 30 31                  
+40  1  2  3  4  5  6  7   44           1  2  3  4   48                 1  2   
+41  8  9 10 11 12 13 14   45  5  6  7  8  9 10 11   49  3  4  5  6  7  8  9   
+42 15 16 17 18 19 20 21   46 12 13 14 15 16 17 18   50 10 11 12 13 14 15 16   
+43 22 23 24 25 26 27 28   47 19 20 21 22 23 24 25   51 17 18 19 20 21 22 23   
+44 29 30 31               48 26 27 28 29 30         52 24 25 26 27 28 29 30   
+                                                     1 31                     
 
 Gregorian - Sunday-based year with week numbers
                                  2147483646                                
 
         January                   February                   March         
    Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa
-51  1  2  3  4  5  6  7    4  1  2  3  4  5  6  7    8  1  2  3  4  5  6  7   
-52  8  9 10 11 12 13 14    5  8  9 10 11 12 13 14    9  8  9 10 11 12 13 14   
-51 15 16 17 18 19 20 21    6 15 16 17 18 19 20 21   10 15 16 17 18 19 20 21   
-52 22 23 24 25 26 27 28    7 22 23 24 25 26 27 28   11 22 23 24 25 26 27 28   
-51 29 30 31                                         12 29 30 31               
+53     1  2  3  4  5  6    4              1  2  3    8              1  2  3   
+ 1  7  8  9 10 11 12 13    5  4  5  6  7  8  9 10    9  4  5  6  7  8  9 10   
+ 2 14 15 16 17 18 19 20    6 11 12 13 14 15 16 17   10 11 12 13 14 15 16 17   
+ 3 21 22 23 24 25 26 27    7 18 19 20 21 22 23 24   11 18 19 20 21 22 23 24   
+ 4 28 29 30 31             8 25 26 27 28            12 25 26 27 28 29 30 31   
                                                                               
          April                      May                       June         
    Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa
-12  1  2  3  4  5  6  7   16  1  2  3  4  5  6  7   21  1  2  3  4  5  6  7   
-13  8  9 10 11 12 13 14   17  8  9 10 11 12 13 14   22  8  9 10 11 12 13 14   
-14 15 16 17 18 19 20 21   18 15 16 17 18 19 20 21   23 15 16 17 18 19 20 21   
-15 22 23 24 25 26 27 28   19 22 23 24 25 26 27 28   24 22 23 24 25 26 27 28   
-16 29 30                  20 29 30 31               25 29 30                  
+13  1  2  3  4  5  6  7   17        1  2  3  4  5   21                 1  2   
+14  8  9 10 11 12 13 14   18  6  7  8  9 10 11 12   22  3  4  5  6  7  8  9   
+15 15 16 17 18 19 20 21   19 13 14 15 16 17 18 19   23 10 11 12 13 14 15 16   
+16 22 23 24 25 26 27 28   20 20 21 22 23 24 25 26   24 17 18 19 20 21 22 23   
+17 29 30                  21 27 28 29 30 31         25 24 25 26 27 28 29 30   
                                                                               
           July                     August                  September       
    Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa
-25  1  2  3  4  5  6  7   29  1  2  3  4  5  6  7   34  1  2  3  4  5  6  7   
-26  8  9 10 11 12 13 14   30  8  9 10 11 12 13 14   35  8  9 10 11 12 13 14   
-27 15 16 17 18 19 20 21   31 15 16 17 18 19 20 21   36 15 16 17 18 19 20 21   
-28 22 23 24 25 26 27 28   32 22 23 24 25 26 27 28   37 22 23 24 25 26 27 28   
-29 29 30 31               33 29 30 31               38 29 30                  
-                                                                              
+26  1  2  3  4  5  6  7   30           1  2  3  4   34                    1   
+27  8  9 10 11 12 13 14   31  5  6  7  8  9 10 11   35  2  3  4  5  6  7  8   
+28 15 16 17 18 19 20 21   32 12 13 14 15 16 17 18   36  9 10 11 12 13 14 15   
+29 22 23 24 25 26 27 28   33 19 20 21 22 23 24 25   37 16 17 18 19 20 21 22   
+30 29 30 31               34 26 27 28 29 30 31      38 23 24 25 26 27 28 29   
+                                                    39 30                     
         October                   November                  December       
    Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa      Su Mo Tu We Th Fr Sa
-38  1  2  3  4  5  6  7   43  1  2  3  4  5  6  7   47  1  2  3  4  5  6  7   
-39  8  9 10 11 12 13 14   44  8  9 10 11 12 13 14   48  8  9 10 11 12 13 14   
-40 15 16 17 18 19 20 21   45 15 16 17 18 19 20 21   49 15 16 17 18 19 20 21   
-41 22 23 24 25 26 27 28   46 22 23 24 25 26 27 28   50 22 23 24 25 26 27 28   
-42 29 30 31               47 29 30                  51 29 30 31               
-                                                                              
+39     1  2  3  4  5  6   43              1  2  3   47                    1   
+40  7  8  9 10 11 12 13   44  4  5  6  7  8  9 10   48  2  3  4  5  6  7  8   
+41 14 15 16 17 18 19 20   45 11 12 13 14 15 16 17   49  9 10 11 12 13 14 15   
+42 21 22 23 24 25 26 27   46 18 19 20 21 22 23 24   50 16 17 18 19 20 21 22   
+43 28 29 30 31            47 25 26 27 28 29 30      51 23 24 25 26 27 28 29   
+                                                    52 30 31                  
 
 Julian - Monday-based year with week numbers
                            2147483646                          
 
             January                         February           
    Mon Tue Wed Thu Fri Sat Sun      Mon Tue Wed Thu Fri Sat Sun
-52                           1    4                          32   
-52   2   3   4   5   6   7   8    5  33  34  35  36  37  38  39   
-52   9  10  11  12  13  14  15    6  40  41  42  43  44  45  46   
-52  16  17  18  19  20  21  22    7  47  48  49  50  51  52  53   
-52  23  24  25  26  27  28  29    8  54  55  56  57  58  59       
-52  30  31                                                        
+ 1   1   2   3   4   5   6   7    5              32  33  34  35   
+ 2   8   9  10  11  12  13  14    6  36  37  38  39  40  41  42   
+ 3  15  16  17  18  19  20  21    7  43  44  45  46  47  48  49   
+ 4  22  23  24  25  26  27  28    8  50  51  52  53  54  55  56   
+ 5  29  30  31                    9  57  58  59                   
+                                                                  
              March                            April            
    Mon Tue Wed Thu Fri Sat Sun      Mon Tue Wed Thu Fri Sat Sun
- 8                          60   13                          91   
- 9  61  62  63  64  65  66  67   14  92  93  94  95  96  97  98   
-10  68  69  70  71  72  73  74   15  99 100 101 102 103 104 105   
-11  75  76  77  78  79  80  81   16 106 107 108 109 110 111 112   
-12  82  83  84  85  86  87  88   17 113 114 115 116 117 118 119   
-13  89  90                       18 120                           
+ 9              60  61  62  63   13                          91   
+10  64  65  66  67  68  69  70   14  92  93  94  95  96  97  98   
+11  71  72  73  74  75  76  77   15  99 100 101 102 103 104 105   
+12  78  79  80  81  82  83  84   16 106 107 108 109 110 111 112   
+13  85  86  87  88  89  90       17 113 114 115 116 117 118 119   
+                                 18 120                           
               May                             June             
    Mon Tue Wed Thu Fri Sat Sun      Mon Tue Wed Thu Fri Sat Sun
-17                         121   22                         152   
-18 122 123 124 125 126 127 128   23 153 154 155 156 157 158 159   
-19 129 130 131 132 133 134 135   24 160 161 162 163 164 165 166   
-20 136 137 138 139 140 141 142   25 167 168 169 170 171 172 173   
-21 143 144 145 146 147 148 149   26 174 175 176 177 178 179 180   
-22 150 151                       27 181                           
+18     121 122 123 124 125 126   22                 152 153 154   
+19 127 128 129 130 131 132 133   23 155 156 157 158 159 160 161   
+20 134 135 136 137 138 139 140   24 162 163 164 165 166 167 168   
+21 141 142 143 144 145 146 147   25 169 170 171 172 173 174 175   
+22 148 149 150 151               26 176 177 178 179 180 181       
+                                                                  
              July                            August            
    Mon Tue Wed Thu Fri Sat Sun      Mon Tue Wed Thu Fri Sat Sun
-26                         182   30                         213   
-27 183 184 185 186 187 188 189   31 214 215 216 217 218 219 220   
-28 190 191 192 193 194 195 196   32 221 222 223 224 225 226 227   
-29 197 198 199 200 201 202 203   33 228 229 230 231 232 233 234   
-30 204 205 206 207 208 209 210   34 235 236 237 238 239 240 241   
-31 211 212                       35 242 243                       
+26                         182   31         213 214 215 216 217   
+27 183 184 185 186 187 188 189   32 218 219 220 221 222 223 224   
+28 190 191 192 193 194 195 196   33 225 226 227 228 229 230 231   
+29 197 198 199 200 201 202 203   34 232 233 234 235 236 237 238   
+30 204 205 206 207 208 209 210   35 239 240 241 242 243           
+31 211 212                                                        
            September                         October           
    Mon Tue Wed Thu Fri Sat Sun      Mon Tue Wed Thu Fri Sat Sun
-35                         244   39                         274   
-36 245 246 247 248 249 250 251   40 275 276 277 278 279 280 281   
-37 252 253 254 255 256 257 258   41 282 283 284 285 286 287 288   
-38 259 260 261 262 263 264 265   42 289 290 291 292 293 294 295   
-39 266 267 268 269 270 271 272   43 296 297 298 299 300 301 302   
-40 273                           44 303 304                       
+35                     244 245   40 274 275 276 277 278 279 280   
+36 246 247 248 249 250 251 252   41 281 282 283 284 285 286 287   
+37 253 254 255 256 257 258 259   42 288 289 290 291 292 293 294   
+38 260 261 262 263 264 265 266   43 295 296 297 298 299 300 301   
+39 267 268 269 270 271 272 273   44 302 303 304                   
+                                                                  
            November                         December           
    Mon Tue Wed Thu Fri Sat Sun      Mon Tue Wed Thu Fri Sat Sun
-43                         305   48                         335   
-44 306 307 308 309 310 311 312   49 336 337 338 339 340 341 342   
-45 313 314 315 316 317 318 319   50 343 344 345 346 347 348 349   
-46 320 321 322 323 324 325 326   51 350 351 352 353 354 355 356   
-47 327 328 329 330 331 332 333   52 357 358 359 360 361 362 363   
-48 334                           52 364 365                       
+44             305 306 307 308   48                     335 336   
+45 309 310 311 312 313 314 315   49 337 338 339 340 341 342 343   
+46 316 317 318 319 320 321 322   50 344 345 346 347 348 349 350   
+47 323 324 325 326 327 328 329   51 351 352 353 354 355 356 357   
+48 330 331 332 333 334           52 358 359 360 361 362 363 364   
+                                  1 365                           
 
 Julian - Sunday-based year with week numbers
                            2147483646                          
 
             January                         February           
    Sun Mon Tue Wed Thu Fri Sat      Sun Mon Tue Wed Thu Fri Sat
-51   1   2   3   4   5   6   7    4  32  33  34  35  36  37  38   
-52   8   9  10  11  12  13  14    5  39  40  41  42  43  44  45   
-51  15  16  17  18  19  20  21    6  46  47  48  49  50  51  52   
-52  22  23  24  25  26  27  28    7  53  54  55  56  57  58  59   
-51  29  30  31                                                    
+53       1   2   3   4   5   6    4                  32  33  34   
+ 1   7   8   9  10  11  12  13    5  35  36  37  38  39  40  41   
+ 2  14  15  16  17  18  19  20    6  42  43  44  45  46  47  48   
+ 3  21  22  23  24  25  26  27    7  49  50  51  52  53  54  55   
+ 4  28  29  30  31                8  56  57  58  59               
                                                                   
              March                            April            
    Sun Mon Tue Wed Thu Fri Sat      Sun Mon Tue Wed Thu Fri Sat
- 8  60  61  62  63  64  65  66   12  91  92  93  94  95  96  97   
- 9  67  68  69  70  71  72  73   13  98  99 100 101 102 103 104   
-10  74  75  76  77  78  79  80   14 105 106 107 108 109 110 111   
-11  81  82  83  84  85  86  87   15 112 113 114 115 116 117 118   
-12  88  89  90                   16 119 120                       
+ 8                  60  61  62   13  91  92  93  94  95  96  97   
+ 9  63  64  65  66  67  68  69   14  98  99 100 101 102 103 104   
+10  70  71  72  73  74  75  76   15 105 106 107 108 109 110 111   
+11  77  78  79  80  81  82  83   16 112 113 114 115 116 117 118   
+12  84  85  86  87  88  89  90   17 119 120                       
                                                                   
               May                             June             
    Sun Mon Tue Wed Thu Fri Sat      Sun Mon Tue Wed Thu Fri Sat
-16 121 122 123 124 125 126 127   21 152 153 154 155 156 157 158   
-17 128 129 130 131 132 133 134   22 159 160 161 162 163 164 165   
-18 135 136 137 138 139 140 141   23 166 167 168 169 170 171 172   
-19 142 143 144 145 146 147 148   24 173 174 175 176 177 178 179   
-20 149 150 151                   25 180 181                       
+17         121 122 123 124 125   21                     152 153   
+18 126 127 128 129 130 131 132   22 154 155 156 157 158 159 160   
+19 133 134 135 136 137 138 139   23 161 162 163 164 165 166 167   
+20 140 141 142 143 144 145 146   24 168 169 170 171 172 173 174   
+21 147 148 149 150 151           25 175 176 177 178 179 180 181   
                                                                   
              July                            August            
    Sun Mon Tue Wed Thu Fri Sat      Sun Mon Tue Wed Thu Fri Sat
-25 182 183 184 185 186 187 188   29 213 214 215 216 217 218 219   
-26 189 190 191 192 193 194 195   30 220 221 222 223 224 225 226   
-27 196 197 198 199 200 201 202   31 227 228 229 230 231 232 233   
-28 203 204 205 206 207 208 209   32 234 235 236 237 238 239 240   
-29 210 211 212                   33 241 242 243                   
+26 182 183 184 185 186 187 188   30             213 214 215 216   
+27 189 190 191 192 193 194 195   31 217 218 219 220 221 222 223   
+28 196 197 198 199 200 201 202   32 224 225 226 227 228 229 230   
+29 203 204 205 206 207 208 209   33 231 232 233 234 235 236 237   
+30 210 211 212                   34 238 239 240 241 242 243       
                                                                   
            September                         October           
    Sun Mon Tue Wed Thu Fri Sat      Sun Mon Tue Wed Thu Fri Sat
-34 244 245 246 247 248 249 250   38 274 275 276 277 278 279 280   
-35 251 252 253 254 255 256 257   39 281 282 283 284 285 286 287   
-36 258 259 260 261 262 263 264   40 288 289 290 291 292 293 294   
-37 265 266 267 268 269 270 271   41 295 296 297 298 299 300 301   
-38 272 273                       42 302 303 304                   
-                                                                  
+34                         244   39     274 275 276 277 278 279   
+35 245 246 247 248 249 250 251   40 280 281 282 283 284 285 286   
+36 252 253 254 255 256 257 258   41 287 288 289 290 291 292 293   
+37 259 260 261 262 263 264 265   42 294 295 296 297 298 299 300   
+38 266 267 268 269 270 271 272   43 301 302 303 304               
+39 273                                                            
            November                         December           
    Sun Mon Tue Wed Thu Fri Sat      Sun Mon Tue Wed Thu Fri Sat
-43 305 306 307 308 309 310 311   47 335 336 337 338 339 340 341   
-44 312 313 314 315 316 317 318   48 342 343 344 345 346 347 348   
-45 319 320 321 322 323 324 325   49 349 350 351 352 353 354 355   
-46 326 327 328 329 330 331 332   50 356 357 358 359 360 361 362   
-47 333 334                       51 363 364 365                   
-                                                                  
+43                 305 306 307   47                         335   
+44 308 309 310 311 312 313 314   48 336 337 338 339 340 341 342   
+45 315 316 317 318 319 320 321   49 343 344 345 346 347 348 349   
+46 322 323 324 325 326 327 328   50 350 351 352 353 354 355 356   
+47 329 330 331 332 333 334       51 357 358 359 360 361 362 363   
+                                 52 364 365                       
 
-- 
2.1.3

--
To unsubscribe from this list: send the line "unsubscribe util-linux" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux