added timezone detection