Benchmark: timing 100000 iterations of mjd, new, original... mjd: 17 wallclock secs (16.86 usr + 0.00 sys = 16.86 CPU) @ 5931.20/s (n=100000) new: 3 wallclock secs ( 2.70 usr + 0.01 sys = 2.71 CPU) @ 36900.37/s (n=100000) original: 17 wallclock secs (12.87 usr + 0.01 sys = 12.88 CPU) @ 7763.98/s (n=100000) Rate mjd original new mjd 5931/s -- -24% -84% original 7764/s 31% -- -79% new 36900/s 522% 375% --