# # This module contains two functions for converting between natural # numbers expressing times in seconds since midnight January 1, 1970 and # strings of the form 'Fri Mar 18 1:58:31 2005 +0100'. The time zone # abbreviation is ignored, but time zones can be specified as +0500, # etc.. Days of the week are output correctly but ignored in the input. # Fields can be written in any order but must be separated by spaces. # Commas are optional. # # Copyright (C) 2007-2009 Dennis Furey # # one_time (217) # string_to_time (128327) # time_to_string (240056) # # compressed with granularity 89 # # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; version 3. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software Foundation, # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA # {kwwzkowzkHgxz{fnfkHgxz{fffgFfxnkowzggvfkfnjkHgxz{fcebfvUfjdfnfkHgxz{fbVUFeebg^ zfgvhggoF{G{ve``Fue`fZbVkebfvbgFvxnkGoZfL^e``FbVUF^VUfefVgjVhffwEVivdf`DfUE>jVU FujVfVEffzgoFnhsffdf`DfUE>ebbNjWbgvUfjtajnkwFff^fL^e``FbVUVbVUfkEgoGhz{dgFff^fL ^e``FebbNfnb\vgggxzsgDgFff^fL^fUE>fk`{TGgvxvkwiz>nFnffd^e>VfbTnHfveZggrkInwKVdG DkFff^fgbOeFodezgrhbgfhgoKkgdGFFnfhnebDbfKo\Sfjbgbgnvvjjqns^f\gDgFDfUIxfyBB[fkU fbVgjbefykJqgivj^>nFf`D{F_wFHAvfnUgbNgrVWbfnVvbTNjwZ^ftGDdkHFoPf_cvffUFU^fnUeeb ffV{ICFxjgZfvf>gKjGKO^<=JfkbFUFfu``bNgueXniFgfxoiv^ffn_SIfKGNkzfbUFLffU^E>fU`yV JgFkFjhjwZffF^gAaFqM]f]ZhfU^bfu`dfbTcSGEpfjfkWGnwkvdff^i`jPoFf[fFbNgFbTffUH^vIN >fyvgejgfxjj{gvfKiDfabfI=KFe@fFbNhe?J{DPfgEbfxbzgngfxiGkvfffoJNFxn>G{fF?Fe@ddiH {^BffbNfobkNgjgrgffiIIvnffpW@omf\FAtffF>ftDx{FffubffUGqFkUfj^grffgWkvfFf]D?Gh\^ `wDFnFEJkHfvfbNfjbHtffnEfkZfvVjgkFvwzhfffn{Fh{dh^gKHnjnhgbFfc`_EffzRfnUfkEfbfVI gNpj{fffdH_n<^DSf^o@wFy^fdfUOFbThoffU^ffbNfobfVekNfffpj{fFfgGPduz^d^xaUDfHf`FFb N>FfjUFfzUfgbNeFbofgfvfiGkvffgINf@Evff`aFbPnebDhkFefbgfvffgO{Zf ffsFFgVdfF`fVefbgjJgIKvfjfdFf NdfhfddtoxfnfF`fVef^bYOFdivfgFfhdf`dhfvdPdn^nfF`fVjoROHjvzffffdffffGFnpfFdhf^eF bms?hggjkzfngGFfn^dnFGF^thf^eFxBv\hgOwKwFjfgFffnddgl_^fGFdxJnveFfkoigvhgHFn^fhf ^h_gDfGF?YPnoVdOFeFU^ggbz{NfVf fgNvy{_FhdnffffffgdtgOEOGdf^bNfVbNQKhJfVjfffpigx{f^gFfffffffn`tB\CSfffLfbubGIva FbfVffffyVifOz^hhfffffffdhOGEGQ_FbfVUfVgxrF`fVjgfv^jpyWHkvgQNfffffffLX^`zF^fn`b PjRzwBf^eFbfVdgOENFfoGoZfo@fffffffhp>oxgF^^LjvHsKfnffFafZjeGpxjwflwzfn?Fffnfffg hl@g\^fOZxfhgY@_Ffdf`fbdHfo[wolcjrsfeFffffffhC^`Rv^f=PuHf^hcDhffeF`gyI@{HkgvhoO HwZfiFffpfffkPfpmGDztFzvuVdh^ffFHqDFoPfkVkOFfkfwkvgFhfffhfhyPdfgF\UjdULfMzW^oFf <<]N\?G=hhVMGdyGNwozfiFnfphffo^^iN_DWjm=FAwjJdgFd<\vDKffb{bfgnzx{fhfoFffpflnV>g P\YJ<@axnnld^fcvZZpehw{ffhgOgwozfiFnfphffhno>>=wB`vgHfFf]SDP`jfWOIN[fzjfgRxvzx{ fhfoFffpflDfH_`]KyDfn^fgfjOteDF{McvefgzjfnnpkJkkIvfpgFgNnff>^\zxAviLffdZFXJaDdo T\mZfYFpWFVfgvfhiGogwivgFhnffiFh\\tmYLB[f`ffbfbjNjVvjfvnqkJjwZfpfn fphfgFal[^lffxrc_jeHz_CwEHg`NbefiBefjffkffhiWN{ivgDhnfFiFhd_kIik=a\mZdfXDeHf`effbe^gMffgvyGhfgNw ivg>gFdgNgFJ[ff\?glXsGiS<`v>bh\FteXg`effbkNiBefeffNjpjwZfn^fflfhd?BvffG>_fdkBuX {f`QEfbngFfgOPzsSfhvffkFDcvjf>fpILvSvn>fN^ bDgnD^MEnkFuGffiJgkzqPfqIPhff[qFfvZ?_UDclIN@eDe^>>ONWNVepkFi@qJkKfhffffhd<=Zffg ?IKIH]xf^n>`^>ENEpbfbffffxgfKqQJqYPpj[qGjbZMLxEAlO?D@_EDbPcGgnfhfYs{FhgNgFfq<=z foOOOTeNJN^^^]EDbnVboxzoukz{YQOGQIPpdaqNnnniStMFoGGKX?ffoD>P@^efzna<{E{BWuzB[nfgIFhfnp JgOOOINADqDvDG`l{Dtbru?t?W^m{rA{QQPiPqON\QGGGGaRniFPbNx{eqwD?AtEZ<]{RBSyfiONgFh qFhppmtb_PhDcPvxu]gPhacocxL{[_c{kqPniNqPnqNvgkp@nfhcDxggmBq_F^mw<@tm[{QqJACwGpayJ=Auuu{qMQOQPqNoGAQGYnj=Hpe Of`FkBGoun=GB>KjrAyOlIkXyUZAElD[ffnoJhfPoOQiGPoh^^]>Vtfh`ggobtKl>bt]axjCUGkWR^_ vyVU{IQPgQGPffpqNplhqEIEnXfz>{ggmSCogZtJ[>Et?ku{?xAAvYKDGCcc[>SvfhiOOPfgL`QG[Nl@@Fe^hkKBgobg^sNKFbCpz^={s@vye{{NmyvfNkgGRPgGMfqsI`nBlvo[RKVnvegpo\{O{yAoVyAwTeZ^gGPppffgMOWE@G\gbjfj >kf`feglYDXLZcGrylJ=py[jAL jzRwLWQLIOiK^d^`goE^jFNaK=oJtfFZhzvZlTbDl\\ApSkI^Z_jzssC]tccZdlJ\xyCy{OogHIXNgHqPh^egdeFggteGD`zmv ZzBXr[xxCDQkK{{IVSdqpsSfyZcvzssXslcSPDIPmIQHn?qNef{DFevUn=\DSdOkzl\xCGpoldzkSd{ jkOKMpsskIkIgqGC{lQnigO{kMKFP_gGOPIQHoONDefxTnebbLh_\{ccPh@KdZG_gdiN=K[glWNMXOQPQQMIP^grLfL\l>zoFjp^Z^]sLKt{gfz=CdgIoX[G= ?tfnUn`XnfEUdndN_fPFJj^vkEvkYSEtDwcK[Z{xAVvX_gRGsHFJVJCHDA x{j`yESzdrx_gFAPpoQ?Ffe`F\Fgb<>NLC^GsN^JdhjkXDg{L=L=?ApWHyFHkOKG=?vJdc_YIZ]tkN^tQfTAE yo{HIudwoE_vQIEAm@qLOFfU=C]mM=x`VI>^e`GXFKxsgsHAlP{=QpFJZGHh[gpocddQgoVk=o>_enTKolXZYt`JTX_e=v@T=\\_oVZXuDJ=pk>_g>_v\IlPC{[unWAP@e=NlgcLD? lY]NQlCdfJtZDxA=tx{OeLNC=Pn{wFEF\E>_^j_DQbC]sR^FxC@FJtbKIeyqvK{kI\{@gzhnzwCHgaN\ OnRZfUQKhngTDcYIqldt@{NgJRLxsxrT^=^_mHd_Namldu>_tAFDiDTfn]LND DPa?ozTkugvjkEvFEAJdrgHxpPaFIPt fL>`p<@VNcXzggoE>vxo^xnfnVjVxsN?oa?FgHl\DpHkSo@GgoJGoEfnFtkHvhg^FnFeg kJGYXFJFxfFEOF^OQSl?{IvzgfufvjHggbgftnjdxgvu>FT^{I`EDXViAHNyPFJDkHvhvGFnjTfExvhfDbkxfbDnme=bXFJ=J^@EMHtdXdDn^^xC>M\>zGeDcvee^U`FTjbQeQPFK]fUhZ RD^rJFTactd\J<<U>w^^XctteM^QNEMML@L^ZG\J