Re-use timezone offset parsing