sub fromGMT { my ($date, $hms) = @_; my ($Y, $M, $D) = unpack('A4A2A2',$date); my ($H, $M, $S) = $hms =~ m/^(\d+):(\d+):?(\d+)?/; $S ||= 0; $dt=DateTime->new(year=>$Y, month=>$M, day=>$D, hour=>$H,minute=>$M,second=>$S,time_zone=>'GMT'); $dt->set_time_zone('America/Chicago'); $dt->is_dst() and $dt->add( hours=>1 ); # Unneeded return $dt->hms; }