PageSourceSearch

https://www.angelsense.com/wp-content/themes/angelsense/js/moment-timezone-2020.js?ver=146.7

js angelsense.com collected 2026-09-24 10:09:16 UTC 44,531 bytes, 1,200 lines download raw bytes

vendor: 14,304 bytes, lines 1-607
1//! moment-timezone.js
2//! version : 0.5.10
3//! Copyright (c) JS Foundation and other contributors
4//! license : MIT
5//! github.com/moment/moment-timezone
6
7(function (root, factory) {
8	"use strict";
9
10	/*global define*/
11	if (typeof define === 'function' && define.amd) {
12		define(['moment'], factory);                 // AMD
13	} else if (typeof module === 'object' && module.exports) {
14		module.exports = factory(require('moment')); // Node
15	} else {
16		factory(root.moment);                        // Browser
17	}
18}(this, function (moment) {
19	"use strict";
20
21	// Do not load moment-timezone a second time.
22	if (moment.tz !== undefined) {
23		logError('Moment Timezone ' + moment.tz.version + ' was already loaded ' + (moment.tz.dataVersion ? 'with data from ' : 'without any data') + moment.tz.dataVersion);
24		return moment;
25	}
26
27	var VERSION = "0.5.10",
28		zones = {},
29		links = {},
30		names = {},
31		guesses = {},
32		cachedGuess,
33
34		momentVersion = moment.version.split('.'),
35		major = +momentVersion[0],
36		minor = +momentVersion[1];
37
38	// Moment.js version check
39	if (major < 2 || (major === 2 && minor < 6)) {
40		logError('Moment Timezone requires Moment.js >= 2.6.0. You are using Moment.js ' + moment.version + '. See momentjs.com');
41	}
42
43	/************************************
44		Unpacking
45	************************************/
46
47	function charCodeToInt(charCode) {
48		if (charCode > 96) {
49			return charCode - 87;
50		} else if (charCode > 64) {
51			return charCode - 29;
52		}
53		return charCode - 48;
54	}
55
56	function unpackBase60(string) {
57		var i = 0,
58			parts = string.split('.'),
59			whole = parts[0],
60			fractional = parts[1] || '',
61			multiplier = 1,
62			num,
63			out = 0,
64			sign = 1;
65
66		// handle negative numbers
67		if (string.charCodeAt(0) === 45) {
68			i = 1;
69			sign = -1;
70		}
71
72		// handle digits before the decimal
73		for (i; i < whole.length; i++) {
74			num = charCodeToInt(whole.charCodeAt(i));
75			out = 60 * out + num;
76		}
77
78		// handle digits after the decimal
79		for (i = 0; i < fractional.length; i++) {
80			multiplier = multiplier / 60;
81			num = charCodeToInt(fractional.charCodeAt(i));
82			out += num * multiplier;
83		}
84
85		return out * sign;
86	}
87
88	function arrayToInt (array) {
89		for (var i = 0; i < array.length; i++) {
90			array[i] = unpackBase60(array[i]);
91		}
92	}
93
94	function intToUntil (array, length) {
95		for (var i = 0; i < length; i++) {
96			array[i] = Math.round((array[i - 1] || 0) + (array[i] * 60000)); // minutes to milliseconds
97		}
98
99		array[length - 1] = Infinity;
100	}
101
102	function mapIndices (source, indices) {
103		var out = [], i;
104
105		for (i = 0; i < indices.length; i++) {
106			out[i] = source[indices[i]];
107		}
108
109		return out;
110	}
111
112	function unpack (string) {
113		var data = string.split('|'),
114			offsets = data[2].split(' '),
115			indices = data[3].split(''),
116			untils  = data[4].split(' ');
117
118		arrayToInt(offsets);
119		arrayToInt(indices);
120		arrayToInt(untils);
121
122		intToUntil(untils, indices.length);
123
124		return {
125			name       : data[0],
126			abbrs      : mapIndices(data[1].split(' '), indices),
127			offsets    : mapIndices(offsets, indices),
128			untils     : untils,
129			population : data[5] | 0
130		};
131	}
132
133	/************************************
134		Zone object
135	************************************/
136
137	function Zone (packedString) {
138		if (packedString) {
139			this._set(unpack(packedString));
140		}
141	}
142
143	Zone.prototype = {
144		_set : function (unpacked) {
145			this.name       = unpacked.name;
146			this.abbrs      = unpacked.abbrs;
147			this.untils     = unpacked.untils;
148			this.offsets    = unpacked.offsets;
149			this.population = unpacked.population;
150		},
151
152		_index : function (timestamp) {
153			var target = +timestamp,
154				untils = this.untils,
155				i;
156
157			for (i = 0; i < untils.length; i++) {
158				if (target < untils[i]) {
159					return i;
160				}
161			}
162		},
163
164		parse : function (timestamp) {
165			var target  = +timestamp,
166				offsets = this.offsets,
167				untils  = this.untils,
168				max     = untils.length - 1,
169				offset, offsetNext, offsetPrev, i;
170
171			for (i = 0; i < max; i++) {
172				offset     = offsets[i];
173				offsetNext = offsets[i + 1];
174				offsetPrev = offsets[i ? i - 1 : i];
175
176				if (offset < offsetNext && tz.moveAmbiguousForward) {
177					offset = offsetNext;
178				} else if (offset > offsetPrev && tz.moveInvalidForward) {
179					offset = offsetPrev;
180				}
181
182				if (target < untils[i] - (offset * 60000)) {
183					return offsets[i];
184				}
185			}
186
187			return offsets[max];
188		},
189
190		abbr : function (mom) {
191			return this.abbrs[this._index(mom)];
192		},
193
194		offset : function (mom) {
195			return this.offsets[this._index(mom)];
196		}
197	};
198
199	/************************************
200		Current Timezone
201	************************************/
202
203	function OffsetAt(at) {
204		var timeString = at.toTimeString();
205		var abbr = timeString.match(/\([a-z ]+\)/i);
206		if (abbr && abbr[0]) {
207			// 17:56:31 GMT-0600 (CST)
208			// 17:56:31 GMT-0600 (Central Standard Time)
209			abbr = abbr[0].match(/[A-Z]/g);
210			abbr = abbr ? abbr.join('') : undefined;
211		} else {
212			// 17:56:31 CST
213			// 17:56:31 GMT+0800 (台北標準時間)
214			abbr = timeString.match(/[A-Z]{3,5}/g);
215			abbr = abbr ? abbr[0] : undefined;
216		}
217
218		if (abbr === 'GMT') {
219			abbr = undefined;
220		}
221
222		this.at = +at;
223		this.abbr = abbr;
224		this.offset = at.getTimezoneOffset();
225	}
226
227	function ZoneScore(zone) {
228		this.zone = zone;
229		this.offsetScore = 0;
230		this.abbrScore = 0;
231	}
232
233	ZoneScore.prototype.scoreOffsetAt = function (offsetAt) {
234		this.offsetScore += Math.abs(this.zone.offset(offsetAt.at) - offsetAt.offset);
235		if (this.zone.abbr(offsetAt.at).replace(/[^A-Z]/g, '') !== offsetAt.abbr) {
236			this.abbrScore++;
237		}
238	};
239
240	function findChange(low, high) {
241		var mid, diff;
242
243		while ((diff = ((high.at - low.at) / 12e4 | 0) * 6e4)) {
244			mid = new OffsetAt(new Date(low.at + diff));
245			if (mid.offset === low.offset) {
246				low = mid;
247			} else {
248				high = mid;
249			}
250		}
251
252		return low;
253	}
254
255	function userOffsets() {
256		var startYear = new Date().getFullYear() - 2,
257			last = new OffsetAt(new Date(startYear, 0, 1)),
258			offsets = [last],
259			change, next, i;
260
261		for (i = 1; i < 48; i++) {
262			next = new OffsetAt(new Date(startYear, i, 1));
263			if (next.offset !== last.offset) {
264				change = findChange(last, next);
265				offsets.push(change);
266				offsets.push(new OffsetAt(new Date(change.at + 6e4)));
267			}
268			last = next;
269		}
270
271		for (i = 0; i < 4; i++) {
272			offsets.push(new OffsetAt(new Date(startYear + i, 0, 1)));
273			offsets.push(new OffsetAt(new Date(startYear + i, 6, 1)));
274		}
275
276		return offsets;
277	}
278
279	function sortZoneScores (a, b) {
280		if (a.offsetScore !== b.offsetScore) {
281			return a.offsetScore - b.offsetScore;
282		}
283		if (a.abbrScore !== b.abbrScore) {
284			return a.abbrScore - b.abbrScore;
285		}
286		return b.zone.population - a.zone.population;
287	}
288
289	function addToGuesses (name, offsets) {
290		var i, offset;
291		arrayToInt(offsets);
292		for (i = 0; i < offsets.length; i++) {
293			offset = offsets[i];
294			guesses[offset] = guesses[offset] || {};
295			guesses[offset][name] = true;
296		}
297	}
298
299	function guessesForUserOffsets (offsets) {
300		var offsetsLength = offsets.length,
301			filteredGuesses = {},
302			out = [],
303			i, j, guessesOffset;
304
305		for (i = 0; i < offsetsLength; i++) {
306			guessesOffset = guesses[offsets[i].offset] || {};
307			for (j in guessesOffset) {
308				if (guessesOffset.hasOwnProperty(j)) {
309					filteredGuesses[j] = true;
310				}
311			}
312		}
313
314		for (i in filteredGuesses) {
315			if (filteredGuesses.hasOwnProperty(i)) {
316				out.push(names[i]);
317			}
318		}
319
320		return out;
321	}
322
323	function rebuildGuess () {
324
325		// use Intl API when available and returning valid time zone
326		try {
327			var intlName = Intl.DateTimeFormat().resolvedOptions().timeZone;
328			if (intlName){
329				var name = names[normalizeName(intlName)];
330				if (name) {
331					return name;
332				}
333				logError("Moment Timezone found " + intlName + " from the Intl api, but did not have that data loaded.");
334			}
335		} catch (e) {
336			// Intl unavailable, fall back to manual guessing.
337		}
338
339		var offsets = userOffsets(),
340			offsetsLength = offsets.length,
341			guesses = guessesForUserOffsets(offsets),
342			zoneScores = [],
343			zoneScore, i, j;
344
345		for (i = 0; i < guesses.length; i++) {
346			zoneScore = new ZoneScore(getZone(guesses[i]), offsetsLength);
347			for (j = 0; j < offsetsLength; j++) {
348				zoneScore.scoreOffsetAt(offsets[j]);
349			}
350			zoneScores.push(zoneScore);
351		}
352
353		zoneScores.sort(sortZoneScores);
354
355		return zoneScores.length > 0 ? zoneScores[0].zone.name : undefined;
356	}
357
358	function guess (ignoreCache) {
359		if (!cachedGuess || ignoreCache) {
360			cachedGuess = rebuildGuess();
361		}
362		return cachedGuess;
363	}
364
365	/************************************
366		Global Methods
367	************************************/
368
369	function normalizeName (name) {
370		return (name || '').toLowerCase().replace(/\//g, '_');
371	}
372
373	function addZone (packed) {
374		var i, name, split, normalized;
375
376		if (typeof packed === "string") {
377			packed = [packed];
378		}
379
380		for (i = 0; i < packed.length; i++) {
381			split = packed[i].split('|');
382			name = split[0];
383			normalized = normalizeName(name);
384			zones[normalized] = packed[i];
385			names[normalized] = name;
386			if (split[5]) {
387				addToGuesses(normalized, split[2].split(' '));
388			}
389		}
390	}
391
392	function getZone (name, caller) {
393		name = normalizeName(name);
394
395		var zone = zones[name];
396		var link;
397
398		if (zone instanceof Zone) {
399			return zone;
400		}
401
402		if (typeof zone === 'string') {
403			zone = new Zone(zone);
404			zones[name] = zone;
405			return zone;
406		}
407
408		// Pass getZone to prevent recursion more than 1 level deep
409		if (links[name] && caller !== getZone && (link = getZone(links[name], getZone))) {
410			zone = zones[name] = new Zone();
411			zone._set(link);
412			zone.name = names[name];
413			return zone;
414		}
415
416		return null;
417	}
418
419	function getNames () {
420		var i, out = [];
421
422		for (i in names) {
423			if (names.hasOwnProperty(i) && (zones[i] || zones[links[i]]) && names[i]) {
424				out.push(names[i]);
425			}
426		}
427
428		return out.sort();
429	}
430
431	function addLink (aliases) {
432		var i, alias, normal0, normal1;
433
434		if (typeof aliases === "string") {
435			aliases = [aliases];
436		}
437
438		for (i = 0; i < aliases.length; i++) {
439			alias = aliases[i].split('|');
440
441			normal0 = normalizeName(alias[0]);
442			normal1 = normalizeName(alias[1]);
443
444			links[normal0] = normal1;
445			names[normal0] = alias[0];
446
447			links[normal1] = normal0;
448			names[normal1] = alias[1];
449		}
450	}
451
452	function loadData (data) {
453		addZone(data.zones);
454		addLink(data.links);
455		tz.dataVersion = data.version;
456	}
457
458	function zoneExists (name) {
459		if (!zoneExists.didShowError) {
460			zoneExists.didShowError = true;
461				logError("moment.tz.zoneExists('" + name + "') has been deprecated in favor of !moment.tz.zone('" + name + "')");
462		}
463		return !!getZone(name);
464	}
465
466	function needsOffset (m) {
467		return !!(m._a && (m._tzm === undefined));
468	}
469
470	function logError (message) {
471		if (typeof console !== 'undefined' && typeof console.error === 'function') {
472			console.error(message);
473		}
474	}
475
476	/************************************
477		moment.tz namespace
478	************************************/
479
480	function tz (input) {
481		var args = Array.prototype.slice.call(arguments, 0, -1),
482			name = arguments[arguments.length - 1],
483			zone = getZone(name),
484			out  = moment.utc.apply(null, args);
485
486		if (zone && !moment.isMoment(input) && needsOffset(out)) {
487			out.add(zone.parse(out), 'minutes');
488		}
489
490		out.tz(name);
491
492		return out;
493	}
494
495	tz.version      = VERSION;
496	tz.dataVersion  = '';
497	tz._zones       = zones;
498	tz._links       = links;
499	tz._names       = names;
500	tz.add          = addZone;
501	tz.link         = addLink;
502	tz.load         = loadData;
503	tz.zone         = getZone;
504	tz.zoneExists   = zoneExists; // deprecated in 0.1.0
505	tz.guess        = guess;
506	tz.names        = getNames;
507	tz.Zone         = Zone;
508	tz.unpack       = unpack;
509	tz.unpackBase60 = unpackBase60;
510	tz.needsOffset  = needsOffset;
511	tz.moveInvalidForward   = true;
512	tz.moveAmbiguousForward = false;
513
514	/************************************
515		Interface with Moment.js
516	************************************/
517
518	var fn = moment.fn;
519
520	moment.tz = tz;
521
522	moment.defaultZone = null;
523
524	moment.updateOffset = function (mom, keepTime) {
525		var zone = moment.defaultZone,
526			offset;
527
528		if (mom._z === undefined) {
529			if (zone && needsOffset(mom) && !mom._isUTC) {
530				mom._d = moment.utc(mom._a)._d;
531				mom.utc().add(zone.parse(mom), 'minutes');
532			}
533			mom._z = zone;
534		}
535		if (mom._z) {
536			offset = mom._z.offset(mom);
537			if (Math.abs(offset) < 16) {
538				offset = offset / 60;
539			}
540			if (mom.utcOffset !== undefined) {
541				mom.utcOffset(-offset, keepTime);
542			} else {
543				mom.zone(offset, keepTime);
544			}
545		}
546	};
547
548	fn.tz = function (name) {
549		if (name) {
550			this._z = getZone(name);
551			if (this._z) {
552				moment.updateOffset(this);
553			} else {
554				logError("Moment Timezone has no data for " + name + ". See http://momentjs.com/timezone/docs/#/data-loading/.");
555			}
556			return this;
557		}
558		if (this._z) { return this._z.name; }
559	};
560
561	function abbrWrap (old) {
562		return function () {
563			if (this._z) { return this._z.abbr(this); }
564			return old.call(this);
565		};
566	}
567
568	function resetZoneWrap (old) {
569		return function () {
570			this._z = null;
571			return old.apply(this, arguments);
572		};
573	}
574
575	fn.zoneName = abbrWrap(fn.zoneName);
576	fn.zoneAbbr = abbrWrap(fn.zoneAbbr);
577	fn.utc      = resetZoneWrap(fn.utc);
578
579	moment.tz.setDefault = function(name) {
580		if (major < 2 || (major === 2 && minor < 9)) {
581			logError('Moment Timezone setDefault() requires Moment.js >= 2.9.0. You are using Moment.js ' + moment.version + '.');
582		}
583		moment.defaultZone = name ? getZone(name) : null;
584		return moment;
585	};
586
587	// Cloning a moment should include the _z property.
588	var momentProperties = moment.momentProperties;
589	if (Object.prototype.toString.call(momentProperties) === '[object Array]') {
590		// moment 2.8.1+
591		momentProperties.push('_z');
592		momentProperties.push('_a');
593	} else if (momentProperties) {
594		// moment 2.7.0
595		momentProperties._z = null;
596	}
597
598	loadData({
599		"version": "2016j",
600		"zones": [
601			"Africa/Abidjan|GMT|0|0||48e5",
602			"Africa/Khartoum|EAT|-30|0||51e5",
603			"Africa/Algiers|CET|-10|0||26e5",
604			"Africa/Lagos|WAT|-10|0||17e6",
605			"Africa/Maputo|CAT|-20|0||26e5",
606			"Africa/Cairo|EET EEST|-20 -30|010101010|1Cby0 Fb0 c10 8n0 8Nd0 gL0 e10 mn0|15e6",
607			"Africa/Casablanca|WET WEST|0 -10|01010101010101010101010101010101010101010|1Cco0 Db0 1zd0 Lz0 1Nf0 wM0 co0 go0 1o00 s00 dA0 vc0 11A0 A00 e00 y00 11A0 uM0 e00 Dc0 11A0 s00 e00 IM0 WM0 mo0 gM0 LA0 WM0 jA0 e
60700 Rc0 11A0 e00 e00 U00 11A0 8o0 e00 11A0|32e5",
608			"Europe/Paris|CET CEST|-10 -20|01010101010101010101010|1BWp0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|11e6",
609			"Africa/Johannesburg|SAST|-20|0||84e5",
610			"Africa/Tripoli|EET CET CEST|-20 -10 -20|0120|1IlA0 TA0 1o00|11e5",
611			"Africa/Windhoek|WAST WAT|-20 -10|01010101010101010101010|1C1c0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0|32e4",
612			"America/Adak|HST HDT|a0 90|01010101010101010101010|1BR00 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|326",
613			"America/Anchorage|AKST AKDT|90 80|01010101010101010101010|1BQX0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|30e4",
614			"America/Santo_Domingo|AST|40|0||29e5",
615			"America/Araguaina|BRT BRST|30 20|010|1IdD0 Lz0|14e4",
616			"America/Argentina/Buenos_Aires|ART|30|0|",
617			"America/Asuncion|PYST PYT|30 40|01010101010101010101010|1C430 1a10 1fz0 1a10 1fz0 1cN0 17b0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1ip0 17b0 1ip0 17b0 1ip0|28e5",
618			"America/Panama|EST|50|0||15e5",
619			"America/Bahia|BRT BRST|30 20|010|1FJf0 Rb0|27e5",
620			"America/Bahia_Banderas|MST CDT CST|70 50 60|01212121212121212121212|1C1l0 1nW0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|84e3",
621			"America/Fortaleza|BRT|30|0||34e5",
622			"America/Managua|CST|60|0||22e5",
623			"America/Manaus|AMT|40|0||19e5",
624			"America/Bogota|COT|50|0||90e5",
625			"America/Denver|MST MDT|70 60|01010101010101010101010|1BQV0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|26e5",
626			"America/Campo_Grande|AMST AMT|30 40|01010101010101010101010|1BIr0 1zd0 On0 1zd0 Rb0 1zd0 Lz0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 On0 1zd0 On0 1C10 Lz0 1C10 Lz0 1C10|77e4",
627			"America/Cancun|CST CDT EST|60 50 50|010101010102|1C1k0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 Dd0|63e4",
628			"America/Caracas|VET VET|4u 40|01|1QMT0|29e5",
629			"America/Cayenne|GFT|30|0||58e3",
630			"America/Chicago|CST CDT|60 50|01010101010101010101010|1BQU0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|92e5",
631			"America/Chihuahua|MST MDT|70 60|01010101010101010101010|1C1l0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|81e4",
632			"America/Phoenix|MST|70|0||42e5",
633			"America/Los_Angeles|PST PDT|80 70|01010101010101010101010|1BQW0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|15e6",
634			"America/New_York|EST EDT|50 40|01010101010101010101010|1BQT0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|21e6",
635			"America/Rio_Branco|AMT ACT|40 50|01|1KLE0|31e4",
636			"America/Fort_Nelson|PST PDT MST|80 70 70|010101010102|1BQW0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0|39e2",
637			"America/Halifax|AST ADT|40 30|01010101010101010101010|1BQS0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|39e4",
638			"America/Godthab|WGT WGST|30 20|01010101010101010101010|1BWp0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|17e3",
639			"America/Goose_Bay|AST ADT|40 30|01010101010101010101010|1BQQ1 1zb0 Op0 1zcX Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|76e2",
640			"America/Grand_Turk|EST EDT AST|50 40 40|0101010101012|1BQT0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|37e2",
641			"America/Guayaquil|ECT|50|0||27e5",
642			"America/Guyana|GYT|40|0||80e4",
643			"America/Havana|CST CDT|50 40|01010101010101010101010|1BQR0 1wo0 U00 1zc0 U00 1qM0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0|21e5",
644			"America/La_Paz|BOT|40|0||19e5",
645			"America/Lima|PET|50|0||11e6",
646			"America/Mexico_City|CST CDT|60 50|01010101010101010101010|1C1k0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|20e6",
647			"America/Metlakatla|PST AKST AKDT|80 90 80|012121212121|1PAa0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|14e2",
648			"America/Miquelon|PMST PMDT|30 20|01010101010101010101010|1BQR0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|61e2",
649			"America/Montevideo|UYST UYT|20 30|010101010101|1BQQ0 1ld0 14n0 1ld0 14n0 1o10 11z0 1o10 11z0 1o10 11z0|17e5",
650			"America/Noronha|FNT|20|0||30e2",
651			"America/North_Dakota/Beulah|MST MDT CST CDT|70 60 60 50|01232323232323232323232|1BQV0 1zb0 Oo0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0",
652			"America/Paramaribo|SRT|30|0||24e4",
653			"America/Port-au-Prince|EST EDT|50 40|010101010|1GI70 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|23e5",
654			"America/Santiago|CLST CLT|30 40|010101010101010101010|1C1f0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0 1Nb0 Ap0 1Nb0 Ap0 1Nb0 Ap0 1Nb0 Ap0|62e5",
655			"America/Sao_Paulo|BRST BRT|20 30|01010101010101010101010|1BIq0 1zd0 On0 1zd0 Rb0 1zd0 Lz0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 On0 1zd0 On0 1C10 Lz0 1C10 Lz0 1C10|20e6",
656			"America/Scoresbysund|EGT EGST|10 0|01010101010101010101010|1BWp0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|452",
657			"America/St_Johns|NST NDT|3u 2u|01010101010101010101010|1BQPv 1zb0 Op0 1zcX Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|11e4",
658			"Antarctica/Casey|+11 +08|-b0 -80|01010|1BN30 40P0 KL0 blz0|10",
659			"Antarctica/Davis|+05 +07|-50 -70|0101|1BPw0 3Wn0 KN0|70",
660			"Antarctica/DumontDUrville|+10|-a0|0||80",
661			"Antarctica/Macquarie|AEDT MIST|-b0 -b0|01|1C140|1",
662			"Asia/Tashkent|+05|-50|0||23e5",
663			"Pacific/Auckland|NZDT NZST|-d0 -c0|01010101010101010101010|1C120 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00|14e5",
664			"Antarctica/Rothera|-03|30|0||130",
665			"Antarctica/Syowa|+03|-30|0||20",
666			"Antarctica/Troll|+00 +02|0 -20|01010101010101010101010|1BWp0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|40",
667			"Asia/Almaty|+06|-60|0||15e5",
668			"Asia/Baghdad|AST|-30|0||66e5",
669			"Asia/Amman|EET EEST|-20 -30|010101010101010101010|1BVy0 1qM0 11A0 1o00 11A0 4bX0 Dd0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0|25e5",
670			"Asia/Kamchatka|+12 +11|-c0 -b0|010|1Dp30 WM0|18e4",
671			"Asia/Baku|+04 +05|-40 -50|0101010101010|1BWo0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|27e5",
672			"Asia/Bangkok|ICT|-70|0||15e6",
673			"Asia/Barnaul|+06 +07|-60 -70|010101|1BWk0 1qM0 WM0 8Hz0 3rd0",
674			"Asia/Beirut|EET EEST|-20 -30|01010101010101010101010|1BWm0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0|22e5",
675			"Asia/Brunei|BNT|-80|0||42e4",
676			"Asia/Kolkata|IST|-5u|0||15e6",
677			"Asia/Chita|+09 +10 +08|-90 -a0 -80|010120|1BWh0 1qM0 WM0 8Hz0 3re0|33e4",
678			"Asia/Choibalsan|CHOT CHOST|-80 -90|0101010101010|1O8G0 1cJ0 1cP0 1cJ0 1cP0 1fx0 1cP0 1cJ0 1cP0 1cJ0 1cP0 1cJ0|38e3",
679			"Asia/Shanghai|CST|-80|0||23e6",
680			"Asia/Colombo|+0530|-5u|0||22e5",
681			"Asia/Dhaka|BDT|-60|0||16e6",
682			"Asia/Damascus|EET EEST|-20 -30|01010101010101010101010|1C0m0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0|26e5",
683			"Asia/Dili|TLT|-90|0||19e4",
684			"Asia/Dubai|GST|-40|0||39e5",
685			"Asia/Famagusta|EET EEST +03|-20 -30 -30|010101010101012|1BWp0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 15U0",
686			"Asia/Gaza|EET EEST|-20 -30|01010101010101010101010|1BVW1 SKX 1xd1 MKX 1AN0 1a00 1fA0 1cL0 1cN0 1nX0 1210 1nz0 1220 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0|18e5",
687			"Asia/Hebron|EET EEST|-20 -30|0101010101010101010101010|1BVy0 Tb0 1xd1 MKX bB0 cn0 1cN0 1a00 1fA0 1cL0 1cN0 1nX0 1210 1nz0 1220 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0|25e4",
688			"Asia/Hong_Kong|HKT|-80|0||73e5",
689			"Asia/Hovd|HOVT HOVST|-70 -80|0101010101010|1O8H0 1cJ0 1cP0 1cJ0 1cP0 1fx0 1cP0 1cJ0 1cP0 1cJ0 1cP0 1cJ0|81e3",
690			"Asia/Irkutsk|+08 +09|-80 -90|01010|1BWi0 1qM0 WM0 8Hz0|60e4",
691			"Europe/Istanbul|EET EEST +03|-20 -30 -30|010101010101012|1BWp0 1qM0 Xc0 1qo0 WM0 1qM0 11A0 1o00 1200 1nA0 11A0 1tA0 U00 15w0|13e6",
692			"Asia/Jakarta|WIB|-70|0||31e6",
693			"Asia/Jayapura|WIT|-90|0||26e4",
694			"Asia/Jerusalem|IST IDT|-20 -30|01010101010101010101010|1BVA0 17X0 1kp0 1dz0 1c10 1aL0 1eN0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0|81e4",
695			"Asia/Kabul|AFT|-4u|0||46e5",
696			"Asia/Karachi|PKT|-50|0||24e6",
697			"Asia/Urumqi|XJT|-60|0||32e5",
698			"Asia/Kathmandu|NPT|-5J|0||12e5",
699			"Asia/Khandyga|+10 +11 +09|-a0 -b0 -90|010102|1BWg0 1qM0 WM0 17V0 7zD0|66e2",
700			"Asia/Krasnoyarsk|+07 +08|-70 -80|01010|1BWj0 1qM0 WM0 8Hz0|10e5",
701			"Asia/Kuala_Lumpur|MYT|-80|0||71e5",
702			"Asia/Magadan|+11 +12 +10|-b0 -c0 -a0|010120|1BWf0 1qM0 WM0 8Hz0 3Cq0|95e3",
703			"Asia/Makassar|WITA|-80|0||15e5",
704			"Asia/Manila|PHT|-80|0||24e6",
705			"Europe/Athens|EET EEST|-20 -30|01010101010101010101010|1BWp0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|35e5",
706			"Asia/Novokuznetsk|+07 +06|-70 -60|010|1Dp80 WM0|55e4",
707			"Asia/Novosibirsk|+06 +07|-60 -70|010101|1BWk0 1qM0 WM0 8Hz0 4eN0|15e5",
708			"Asia/Omsk|+06 +07|-60 -70|01010|1BWk0 1qM0 WM0 8Hz0|12e5",
709			"Asia/Pyongyang|KST KST|-90 -8u|01|1P4D0|29e5",
710			"Asia/Rangoon|MMT|-6u|0||48e5",
711			"Asia/Sakhalin|+10 +11|-a0 -b0|010101|1BWg0 1qM0 WM0 8Hz0 3rd0|58e4",
712			"Asia/Seoul|KST|-90|0||23e6",
713			"Asia/Singapore|SGT|-80|0||56e5",
714			"Asia/Srednekolymsk|+11 +12|-b0 -c0|01010|1BWf0 1qM0 WM0 8Hz0|35e2",
715			"Asia/Tbilisi|+04|-40|0||11e5",
716			"Asia/Tehran|IRST IRDT|-3u -4u|01010101010101010101010|1BTUu 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0|14e6",
717			"Asia/Thimphu|BTT|-60|0||79e3",
718			"Asia/Tokyo|JST|-90|0||38e6",
719			"Asia/Tomsk|+06 +07|-60 -70|010101|1BWk0 1qM0 WM0 8Hz0 3Qp0|10e5",
720			"Asia/Ulaanbaatar|ULAT ULAST|-80 -90|0101010101010|1O8G0 1cJ0 1cP0 1cJ0 1cP0 1fx0 1cP0 1cJ0 1cP0 1cJ0 1cP0 1cJ0|12e5",
721			"Asia/Ust-Nera|+11 +12 +10|-b0 -c0 -a0|010102|1BWf0 1qM0 WM0 17V0 7zD0|65e2",
722			"Asia/Vladivostok|+10 +11|-a0 -b0|01010|1BWg0 1qM0 WM0 8Hz0|60e4",
723			"Asia/Yakutsk|+09 +10|-90 -a0|01010|1BWh0 1qM0 WM0 8Hz0|28e4",
724			"Asia/Yekaterinburg|+05 +06|-50 -60|01010|1BWl0 1qM0 WM0 8Hz0|14e5",
725			"Asia/Yerevan|+04 +05|-40 -50|01010|1BWm0 1qM0 WM0 1qM0|13e5",
726			"Atlantic/Azores|AZOT AZOST|10 0|01010101010101010101010|1BWp0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|25e4",
727			"Europe/Lisbon|WET WEST|0 -10|01010101010101010101010|1BWp0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|27e5",
728			"Atlantic/Cape_Verde|CVT|10|0||50e4",
729			"Atlantic/South_Georgia|GST|20|0||30",
730			"Atlantic/Stanley|FKST FKT|30 40|010|1C6R0 U10|21e2",
731			"Australia/Sydney|AEDT AEST|-b0 -a0|01010101010101010101010|1C140 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|40e5",
732			"Australia/Adelaide|ACDT ACST|-au -9u|01010101010101010101010|1C14u 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|11e5",
733			"Australia/Brisbane|AEST|-a0|0||20e5",
734			"Australia/Darwin|ACST|-9u|0||12e4",
735			"Australia/Eucla|ACWST|-8J|0||368",
736			"Australia/Lord_Howe|LHDT LHST|-b0 -au|01010101010101010101010|1C130 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu|347",
737			"Australia/Perth|AWST|-80|0||18e5",
738			"Pacific/Easter|EASST EAST|50 60|010101010101010101010|1C1f0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0 1Nb0 Ap0 1Nb0 Ap0 1Nb0 Ap0 1Nb0 Ap0|30e2",
739			"Europe/Dublin|GMT IST|0 -10|01010101010101010101010|1BWp0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|12e5",
740			"Etc/GMT+1|-01|10|0|",
741			"Etc/GMT+10|-10|a0|0|",
742			"Etc/GMT+11|-11|b0|0|",
743			"Etc/GMT+12|-12|c0|0|",
744			"Etc/GMT+2|-02|20|0|",
745			"Etc/GMT+4|-04|40|0|",
746			"Etc/GMT+5|-05|50|0|",
747			"Etc/GMT+6|-06|60|0|",
748			"Etc/GMT+7|-07|70|0|",
749			"Etc/GMT+8|-08|80|0|",
750			"Etc/GMT+9|-09|90|0|",
751			"Etc/GMT-1|+01|-10|0|",
752			"Etc/GMT-11|+11|-b0|0|",
753			"Etc/GMT-12|+12|-c0|0|",
754			"Etc/GMT-13|+13|-d0|0|",
755			"Etc/GMT-14|+14|-e0|0|",
756			"Etc/GMT-2|+02|-20|0|",
757			"Etc/GMT-7|+07|-70|0|",
758			"Etc/GMT-8|+08|-80|0|",
759			"Etc/GMT-9|+09|-90|0|",
760			"Etc/UCT|UCT|0|0|",
761			"Etc/UTC|UTC|0|0|",
762			"Europe/Astrakhan|+03 +04|-30 -40|010101|1BWn0 1qM0 WM0 8Hz0 3rd0",
763			"Europe/London|GMT BST|0 -10|01010101010101010101010|1BWp0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|10e6",
764			"Europe/Chisinau|EET EEST|-20 -30|01010101010101010101010|1BWo0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|67e4",
765			"Europe/Kaliningrad|EET EEST +03|-20 -30 -30|01020|1BWo0 1qM0 WM0 8Hz0|44e4",
766			"Europe/Volgograd|+03 +04|-30 -40|01010|1BWn0 1qM0 WM0 8Hz0|10e5",
767			"Europe/Minsk|EET EEST +03|-20 -30 -30|0102|1BWo0 1qM0 WM0|19e5",
768			"Europe/Moscow|MSK MSD MSK|-30 -40 -40|01020|1BWn0 1qM0 WM0 8Hz0|16e6",
769			"Europe/Samara|+04 +03|-40 -30|010|1Dpb0 WM0|12e5",
770			"Europe/Saratov|+03 +04|-30 -40|010101|1BWn0 1qM0 WM0 8Hz0 5810",
771			"Europe/Simferopol|EET EEST MSK MSK|-20 -30 -40 -30|01010101023|1BWp0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11z0 1nW0|33e4",
772			"Pacific/Honolulu|HST|a0|0||37e4",
773			"Indian/Chagos|IOT|-60|0||30e2",
774			"Indian/Christmas|CXT|-70|0||21e2",
775			"Indian/Cocos|CCT|-6u|0||596",
776			"Indian/Mahe|SCT|-40|0||79e3",
777			"Indian/Maldives|MVT|-50|0||35e4",
778			"Indian/Mauritius|MUT|-40|0||15e4",
779			"Indian/Reunion|RET|-40|0||84e4",
780			"Pacific/Majuro|MHT|-c0|0||28e3",
781			"MET|MET MEST|-10 -20|01010101010101010101010|1BWp0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00",
782			"Pacific/Chatham|CHADT CHAST|-dJ -cJ|01010101010101010101010|1C120 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00|600",
783			"Pacific/Apia|SST SDT WSDT WSST|b0 a0 -e0 -d0|01012323232323232323232|1Dbn0 1ff0 1a00 CI0 AQ0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00|37e3",
784			"Pacific/Bougainville|PGT BST|-a0 -b0|01|1NwE0|18e4",
785			"Pacific/Chuuk|CHUT|-a0|0||49e3",
786			"Pacific/Efate|VUT|-b0|0||66e3",
787			"Pacific/Enderbury|PHOT|-d0|0||1",
788			"Pacific/Fakaofo|TKT TKT|b0 -d0|01|1Gfn0|483",
789			"Pacific/Fiji|FJST FJT|-d0 -c0|01010101010101010101010|1BWe0 1o00 Rc0 1wo0 Ao0 1Nc0 Ao0 1Q00 xz0 1SN0 uM0 1SM0 uM0 1VA0 s00 1VA0 uM0 1SM0 uM0 1SM0 uM0 1SM0|88e4",
790			"Pacific/Funafuti|TVT|-c0|0||45e2",
791			"Pacific/Galapagos|GALT|60|0||25e3",
792			"Pacific/Gambier|GAMT|90|0||125",
793			"Pacific/Guadalcanal|SBT|-b0|0||11e4",
794			"Pacific/Guam|ChST|-a0|0||17e4",
795			"Pacific/Kiritimati|LINT|-e0|0||51e2",
796			"Pacific/Kosrae|KOST|-b0|0||66e2",
797			"Pacific/Marquesas|MART|9u|0||86e2",
798			"Pacific/Pago_Pago|SST|b0|0||37e2",
799			"Pacific/Nauru|NRT|-c0|0||10e3",
800			"Pacific/Niue|NUT|b0|0||12e2",
801			"Pacific/Norfolk|NFT NFT|-bu -b0|01|1PoCu|25e4",
802			"Pacific/Noumea|NCT|-b0|0||98e3",
803			"Pacific/Palau|PWT|-90|0||21e3",
804			"Pacific/Pitcairn|PST|80|0||56",
805			"Pacific/Pohnpei|PONT|-b0|0||34e3",
806			"Pacific/Port_Moresby|PGT|-a0|0||25e4",
807			"Pacific/Rarotonga|CKT|a0|0||13e3",
808			"Pacific/Tahiti|TAHT|a0|0||18e4",
809			"Pacific/Tarawa|GILT|-c0|0||29e3",
810			"Pacific/Tongatapu|+13 +14|-d0 -e0|0101010101|1S4d0 s00 1VA0 uM0 1SM0 uM0 1SM0 uM0 1SM0|75e3",
811			"Pacific/Wake|WAKT|-c0|0||16e3",
812			"Pacific/Wallis|WFT|-c0|0||94"
813		],
814		"links": [
815			"Africa/Abidjan|Africa/Accra",
816			"Africa/Abidjan|Africa/Bamako",
817			"Africa/Abidjan|Africa/Banjul",
818			"Africa/Abidjan|Africa/Bissau",
819			"Africa/Abidjan|Africa/Conakry",
820			"Africa/Abidjan|Africa/Dakar",
821			"Africa/Abidjan|Africa/Freetown",
822			"Africa/Abidjan|Africa/Lome",
823			"Africa/Abidjan|Africa/Monrovia",
824			"Africa/Abidjan|Africa/Nouakchott",
825			"Africa/Abidjan|Africa/Ouagadougou",
826			"Africa/Abidjan|Africa/Sao_Tome",
827			"Africa/Abidjan|Africa/Timbuktu",
828			"Africa/Abidjan|America/Danmarkshavn",
829			"Africa/Abidjan|Atlantic/Reykjavik",
830			"Africa/Abidjan|Atlantic/St_Helena",
831			"Africa/Abidjan|Etc/GMT",
832			"Africa/Abidjan|Etc/GMT+0",
833			"Africa/Abidjan|Etc/GMT-0",
834			"Africa/Abidjan|Etc/GMT0",
835			"Africa/Abidjan|Etc/Greenwich",
836			"Africa/Abidjan|GMT",
837			"Africa/Abidjan|GMT+0",
838			"Africa/Abidjan|GMT-0",
839			"Africa/Abidjan|GMT0",
840			"Africa/Abidjan|Greenwich",
841			"Africa/Abidjan|Iceland",
842			"Africa/Algiers|Africa/Tunis",
843			"Africa/Cairo|Egypt",
844			"Africa/Casablanca|Africa/El_Aaiun",
845			"Africa/Johannesburg|Africa/Maseru",
846			"Africa/Johannesburg|Africa/Mbabane",
847			"Africa/Khartoum|Africa/Addis_Ababa",
848			"Africa/Khartoum|Africa/Asmara",
849			"Africa/Khartoum|Africa/Asmera",
850			"Africa/Khartoum|Africa/Dar_es_Salaam",
851			"Africa/Khartoum|Africa/Djibouti",
852			"Africa/Khartoum|Africa/Juba",
853			"Africa/Khartoum|Africa/Kampala",
854			"Africa/Khartoum|Africa/Mogadishu",
855			"Africa/Khartoum|Africa/Nairobi",
856			"Africa/Khartoum|Indian/Antananarivo",
857			"Africa/Khartoum|Indian/Comoro",
858			"Africa/Khartoum|Indian/Mayotte",
859			"Africa/Lagos|Africa/Bangui",
860			"Africa/Lagos|Africa/Brazzaville",
861			"Africa/Lagos|Africa/Douala",
862			"Africa/Lagos|Africa/Kinshasa",
863			"Africa/Lagos|Africa/Libreville",
864			"Africa/Lagos|Africa/Luanda",
865			"Africa/Lagos|Africa/Malabo",
866			"Africa/Lagos|Africa/Ndjamena",
867			"Africa/Lagos|Africa/Niamey",
868			"Africa/Lagos|Africa/Porto-Novo",
869			"Africa/Maputo|Africa/Blantyre",
870			"Africa/Maputo|Africa/Bujumbura",
871			"Africa/Maputo|Africa/Gaborone",
872			"Africa/Maputo|Africa/Harare",
873			"Africa/Maputo|Africa/Kigali",
874			"Africa/Maputo|Africa/Lubumbashi",
875			"Africa/Maputo|Africa/Lusaka",
876			"Africa/Tripoli|Libya",
877			"America/Adak|America/Atka",
878			"America/Adak|US/Aleutian",
879			"America/Anchorage|America/Juneau",
880			"America/Anchorage|America/Nome",
881			"America/Anchorage|America/Sitka",
882			"America/Anchorage|America/Yakutat",
883			"America/Anchorage|US/Alaska",
884			"America/Argentina/Buenos_Aires|America/Argentina/Catamarca",
885			"America/Argentina/Buenos_Aires|America/Argentina/ComodRivadavia",
886			"America/Argentina/Buenos_Aires|America/Argentina/Cordoba",
887			"America/Argentina/Buenos_Aires|America/Argentina/Jujuy",
888			"America/Argentina/Buenos_Aires|America/Argentina/La_Rioja",
889			"America/Argentina/Buenos_Aires|America/Argentina/Mendoza",
890			"America/Argentina/Buenos_Aires|America/Argentina/Rio_Gallegos",
891			"America/Argentina/Buenos_Aires|America/Argentina/Salta",
892			"America/Argentina/Buenos_Aires|America/Argentina/San_Juan",
893			"America/Argentina/Buenos_Aires|America/Argentina/San_Luis",
894			"America/Argentina/Buenos_Aires|America/Argentina/Tucuman",
895			"America/Argentina/Buenos_Aires|America/Argentina/Ushuaia",
896			"America/Argentina/Buenos_Aires|America/Buenos_Aires",
897			"America/Argentina/Buenos_Aires|America/Catamarca",
898			"America/Argentina/Buenos_Aires|America/Cordoba",
899			"America/Argentina/Buenos_Aires|America/Jujuy",
900			"America/Argentina/Buenos_Aires|America/Mendoza",
901			"America/Argentina/Buenos_Aires|America/Rosario",
902			"America/Campo_Grande|America/Cuiaba",
903			"America/Chicago|America/Indiana/Knox",
904			"America/Chicago|America/Indiana/Tell_City",
905			"America/Chicago|America/Knox_IN",
906			"America/Chicago|America/Matamoros",
907			"America/Chicago|America/Menominee",
908			"America/Chicago|America/North_Dakota/Center",
909			"America/Chicago|America/North_Dakota/New_Salem",
910			"America/Chicago|America/Rainy_River",
911			"America/Chicago|America/Rankin_Inlet",
912			"America/Chicago|America/Resolute",
913			"America/Chicago|America/Winnipeg",
914			"America/Chicago|CST6CDT",
915			"America/Chicago|Canada/Central",
916			"America/Chicago|US/Central",
917			"America/Chicago|US/Indiana-Starke",
918			"America/Chihuahua|America/Mazatlan",
919			"America/Chihuahua|Mexico/BajaSur",
920			"America/Denver|America/Boise",
921			"America/Denver|America/Cambridge_Bay",
922			"America/Denver|America/Edmonton",
923			"America/Denver|America/Inuvik",
924			"America/Denver|America/Ojinaga",
925			"America/Denver|America/Shiprock",
926			"America/Denver|America/Yellowknife",
927			"America/Denver|Canada/Mountain",
928			"America/Denver|MST7MDT",
929			"America/Denver|Navajo",
930			"America/Denver|US/Mountain",
931			"America/Fortaleza|America/Belem",
932			"America/Fortaleza|America/Maceio",
933			"America/Fortaleza|America/Recife",
934			"America/Fortaleza|America/Santarem",
935			"America/Halifax|America/Glace_Bay",
936			"America/Halifax|America/Moncton",
937			"America/Halifax|America/Thule",
938			"America/Halifax|Atlantic/Bermuda",
939			"America/Halifax|Canada/Atlantic",
940			"America/Havana|Cuba",
941			"America/Los_Angeles|America/Dawson",
942			"America/Los_Angeles|America/Ensenada",
943			"America/Los_Angeles|America/Santa_Isabel",
944			"America/Los_Angeles|America/Tijuana",
945			"America/Los_Angeles|America/Vancouver",
946			"America/Los_Angeles|America/Whitehorse",
947			"America/Los_Angeles|Canada/Pacific",
948			"America/Los_Angeles|Canada/Yukon",
949			"America/Los_Angeles|Mexico/BajaNorte",
950			"America/Los_Angeles|PST8PDT",
951			"America/Los_Angeles|US/Pacific",
952			"America/Los_Angeles|US/Pacific-New",
953			"America/Managua|America/Belize",
954			"America/Managua|America/Costa_Rica",
955			"America/Managua|America/El_Salvador",
956			"America/Managua|America/Guatemala",
957			"America/Managua|America/Regina",
958			"America/Managua|America/Swift_Current",
959			"America/Managua|America/Tegucigalpa",
960			"America/Managua|Canada/East-Saskatchewan",
961			"America/Managua|Canada/Saskatchewan",
962			"America/Manaus|America/Boa_Vista",
963			"America/Manaus|America/Porto_Velho",
964			"America/Manaus|Brazil/West",
965			"America/Mexico_City|America/Merida",
966			"America/Mexico_City|America/Monterrey",
967			"America/Mexico_City|Mexico/General",
968			"America/New_York|America/Detroit",
969			"America/New_York|America/Fort_Wayne",
970			"America/New_York|America/Indiana/Indianapolis",
971			"America/New_York|America/Indiana/Marengo",
972			"America/New_York|America/Indiana/Petersburg",
973			"America/New_York|America/Indiana/Vevay",
974			"America/New_York|America/Indiana/Vincennes",
975			"America/New_York|America/Indiana/Winamac",
976			"America/New_York|America/Indianapolis",
977			"America/New_York|America/Iqaluit",
978			"America/New_York|America/Kentucky/Louisville",
979			"America/New_York|America/Kentucky/Monticello",
980			"America/New_York|America/Louisville",
981			"America/New_York|America/Montreal",
982			"America/New_York|America/Nassau",
983			"America/New_York|America/Nipigon",
984			"America/New_York|America/Pangnirtung",
985			"America/New_York|America/Thunder_Bay",
986			"America/New_York|America/Toronto",
987			"America/New_York|Canada/Eastern",
988			"America/New_York|EST5EDT",
989			"America/New_York|US/East-Indiana",
990			"America/New_York|US/Eastern",
991			"America/New_York|US/Michigan",
992			"America/Noronha|Brazil/DeNoronha",
993			"America/Panama|America/Atikokan",
994			"America/Panama|America/Cayman",
995			"America/Panama|America/Coral_Harbour",
996			"America/Panama|America/Jamaica",
997			"America/Panama|EST",
998			"America/Panama|Jamaica",
999			"America/Phoenix|America/Creston",
1000			"America/Phoenix|America/Dawson_Creek",
1001			"America/Phoenix|America/Hermosillo",
1002			"America/Phoenix|MST",
1003			"America/Phoenix|US/Arizona",
1004			"America/Rio_Branco|America/Eirunepe",
1005			"America/Rio_Branco|America/Porto_Acre",
1006			"America/Rio_Branco|Brazil/Acre",
1007			"America/Santiago|Antarctica/Palmer",
1008			"America/Santiago|Chile/Continental",
1009			"America/Santo_Domingo|America/Anguilla",
1010			"America/Santo_Domingo|America/Antigua",
1011			"America/Santo_Domingo|America/Aruba",
1012			"America/Santo_Domingo|America/Barbados",
1013			"America/Santo_Domingo|America/Blanc-Sablon",
1014			"America/Santo_Domingo|America/Curacao",
1015			"America/Santo_Domingo|America/Dominica",
1016			"America/Santo_Domingo|America/Grenada",
1017			"America/Santo_Domingo|America/Guadeloupe",
1018			"America/Santo_Domingo|America/Kralendijk",
1019			"America/Santo_Domingo|America/Lower_Princes",
1020			"America/Santo_Domingo|America/Marigot",
1021			"America/Santo_Domingo|America/Martinique",
1022			"America/Santo_Domingo|America/Montserrat",
1023			"America/Santo_Domingo|America/Port_of_Spain",
1024			"America/Santo_Domingo|America/Puerto_Rico",
1025			"America/Santo_Domingo|America/St_Barthelemy",
1026			"America/Santo_Domingo|America/St_Kitts",
1027			"America/Santo_Domingo|America/St_Lucia",
1028			"America/Santo_Domingo|America/St_Thomas",
1029			"America/Santo_Domingo|America/St_Vincent",
1030			"America/Santo_Domingo|America/Tortola",
1031			"America/Santo_Domingo|America/Virgin",
1032			"America/Sao_Paulo|Brazil/East",
1033			"America/St_Johns|Canada/Newfoundland",
1034			"Antarctica/DumontDUrville|Etc/GMT-10",
1035			"Antarctica/Rothera|Etc/GMT+3",
1036			"Antarctica/Syowa|Etc/GMT-3",
1037			"Asia/Almaty|Antarctica/Vostok",
1038			"Asia/Almaty|Asia/Bishkek",
1039			"Asia/Almaty|Asia/Qyzylorda",
1040			"Asia/Almaty|Etc/GMT-6",
1041			"Asia/Baghdad|Asia/Aden",
1042			"Asia/Baghdad|Asia/Bahrain",
1043			"Asia/Baghdad|Asia/Kuwait",
1044			"Asia/Baghdad|Asia/Qatar",
1045			"Asia/Baghdad|Asia/Riyadh",
1046			"Asia/Bangkok|Asia/Ho_Chi_Minh",
1047			"Asia/Bangkok|Asia/Phnom_Penh",
1048			"Asia/Bangkok|Asia/Saigon",
1049			"Asia/Bangkok|Asia/Vientiane",
1050			"Asia/Dhaka|Asia/Dacca",
1051			"Asia/Dubai|Asia/Muscat",
1052			"Asia/Hong_Kong|Hongkong",
1053			"Asia/Jakarta|Asia/Pontianak",
1054			"Asia/Jerusalem|Asia/Tel_Aviv",
1055			"Asia/Jerusalem|Israel",
1056			"Asia/Kamchatka|Asia/Anadyr",
1057			"Asia/Kathmandu|Asia/Katmandu",
1058			"Asia/Kolkata|Asia/Calcutta",
1059			"Asia/Kuala_Lumpur|Asia/Kuching",
1060			"Asia/Makassar|Asia/Ujung_Pandang",
1061			"Asia/Rangoon|Asia/Yangon",
1062			"Asia/Seoul|ROK",
1063			"Asia/Shanghai|Asia/Chongqing",
1064			"Asia/Shanghai|Asia/Chungking",
1065			"Asia/Shanghai|Asia/Harbin",
1066			"Asia/Shanghai|Asia/Macao",
1067			"Asia/Shanghai|Asia/Macau",
1068			"Asia/Shanghai|Asia/Taipei",
1069			"Asia/Shanghai|PRC",
1070			"Asia/Shanghai|ROC",
1071			"Asia/Singapore|Singapore",
1072			"Asia/Tashkent|Antarctica/Mawson",
1073			"Asia/Tashkent|Asia/Aqtau",
1074			"Asia/Tashkent|Asia/Aqtobe",
1075			"Asia/Tashkent|Asia/Ashgabat",
1076			"Asia/Tashkent|Asia/Ashkhabad",
1077			"Asia/Tashkent|Asia/Atyrau",
1078			"Asia/Tashkent|Asia/Dushanbe",
1079			"Asia/Tashkent|Asia/Oral",
1080			"Asia/Tashkent|Asia/Samarkand",
1081			"Asia/Tashkent|Etc/GMT-5",
1082			"Asia/Tashkent|Indian/Kerguelen",
1083			"Asia/Tbilisi|Etc/GMT-4",
1084			"Asia/Tehran|Iran",
1085			"Asia/Thimphu|Asia/Thimbu",
1086			"Asia/Tokyo|Japan",
1087			"Asia/Ulaanbaatar|Asia/Ulan_Bator",
1088			"Asia/Urumqi|Asia/Kashgar",
1089			"Australia/Adelaide|Australia/Broken_Hill",
1090			"Australia/Adelaide|Australia/South",
1091			"Australia/Adelaide|Australia/Yancowinna",
1092			"Australia/Brisbane|Australia/Lindeman",
1093			"Australia/Brisbane|Australia/Queensland",
1094			"Australia/Darwin|Australia/North",
1095			"Australia/Lord_Howe|Australia/LHI",
1096			"Australia/Perth|Australia/West",
1097			"Australia/Sydney|Australia/ACT",
1098			"Australia/Sydney|Australia/Canberra",
1099			"Australia/Sydney|Australia/Currie",
1100			"Australia/Sydney|Australia/Hobart",
1101			"Australia/Sydney|Australia/Melbourne",
1102			"Australia/Sydney|Australia/NSW",
1103			"Australia/Sydney|Australia/Tasmania",
1104			"Australia/Sydney|Australia/Victoria",
1105			"Etc/UCT|UCT",
1106			"Etc/UTC|Etc/Universal",
1107			"Etc/UTC|Etc/Zulu",
1108			"Etc/UTC|UTC",
1109			"Etc/UTC|Universal",
1110			"Etc/UTC|Zulu",
1111			"Europe/Astrakhan|Europe/Ulyanovsk",
1112			"Europe/Athens|Asia/Nicosia",
1113			"Europe/Athens|EET",
1114			"Europe/Athens|Europe/Bucharest",
1115			"Europe/Athens|Europe/Helsinki",
1116			"Europe/Athens|Europe/Kiev",
1117			"Europe/Athens|Europe/Mariehamn",
1118			"Europe/Athens|Europe/Nicosia",
1119			"Europe/Athens|Europe/Riga",
1120			"Europe/Athens|Europe/Sofia",
1121			"Europe/Athens|Europe/Tallinn",
1122			"Europe/Athens|Europe/Uzhgorod",
1123			"Europe/Athens|Europe/Vilnius",
1124			"Europe/Athens|Europe/Zaporozhye",
1125			"Europe/Chisinau|Europe/Tiraspol",
1126			"Europe/Dublin|Eire",
1127			"Europe/Istanbul|Asia/Istanbul",
1128			"Europe/Istanbul|Turkey",
1129			"Europe/Lisbon|Atlantic/Canary",
1130			"Europe/Lisbon|Atlantic/Faeroe",
1131			"Europe/Lisbon|Atlantic/Faroe",
1132			"Europe/Lisbon|Atlantic/Madeira",
1133			"Europe/Lisbon|Portugal",
1134			"Europe/Lisbon|WET",
1135			"Europe/London|Europe/Belfast",
1136			"Europe/London|Europe/Guernsey",
1137			"Europe/London|Europe/Isle_of_Man",
1138			"Europe/London|Europe/Jersey",
1139			"Europe/London|GB",
1140			"Europe/London|GB-Eire",
1141			"Europe/Moscow|W-SU",
1142			"Europe/Paris|Africa/Ceuta",
1143			"Europe/Paris|Arctic/Longyearbyen",
1144			"Europe/Paris|Atlantic/Jan_Mayen",
1145			"Europe/Paris|CET",
1146			"Europe/Paris|Europe/Amsterdam",
1147			"Europe/Paris|Europe/Andorra",
1148			"Europe/Paris|Europe/Belgrade",
1149			"Europe/Paris|Europe/Berlin",
1150			"Europe/Paris|Europe/Bratislava",
1151			"Europe/Paris|Europe/Brussels",
1152			"Europe/Paris|Europe/Budapest",
1153			"Europe/Paris|Europe/Busingen",
1154			"Europe/Paris|Europe/Copenhagen",
1155			"Europe/Paris|Europe/Gibraltar",
1156			"Europe/Paris|Europe/Ljubljana",
1157			"Europe/Paris|Europe/Luxembourg",
1158			"Europe/Paris|Europe/Madrid",
1159			"Europe/Paris|Europe/Malta",
1160			"Europe/Paris|Europe/Monaco",
1161			"Europe/Paris|Europe/Oslo",
1162			"Europe/Paris|Europe/Podgorica",
1163			"Europe/Paris|Europe/Prague",
1164			"Europe/Paris|Europe/Rome",
1165			"Europe/Paris|Europe/San_Marino",
1166			"Europe/Paris|Europe/Sarajevo",
1167			"Europe/Paris|Europe/Skopje",
1168			"Europe/Paris|Europe/Stockholm",
1169			"Europe/Paris|Europe/Tirane",
1170			"Europe/Paris|Europe/Vaduz",
1171			"Europe/Paris|Europe/Vatican",
1172			"Europe/Paris|Europe/Vienna",
1173			"Europe/Paris|Europe/Warsaw",
1174			"Europe/Paris|Europe/Zagreb",
1175			"Europe/Paris|Europe/Zurich",
1176			"Europe/Paris|Poland",
1177			"Europe/Volgograd|Europe/Kirov",
1178			"Pacific/Auckland|Antarctica/McMurdo",
1179			"Pacific/Auckland|Antarctica/South_Pole",
1180			"Pacific/Auckland|NZ",
1181			"Pacific/Chatham|NZ-CHAT",
1182			"Pacific/Chuuk|Pacific/Truk",
1183			"Pacific/Chuuk|Pacific/Yap",
1184			"Pacific/Easter|Chile/EasterIsland",
1185			"Pacific/Guam|Pacific/Saipan",
1186			"Pacific/Honolulu|HST",
1187			"Pacific/Honolulu|Pacific/Johnston",
1188			"Pacific/Honolulu|US/Hawaii",
1189			"Pacific/Majuro|Kwajalein",
1190			"Pacific/Majuro|Pacific/Kwajalein",
1191			"Pacific/Pago_Pago|Pacific/Midway",
1192			"Pacific/Pago_Pago|Pacific/Samoa",
1193			"Pacific/Pago_Pago|US/Samoa",
1194			"Pacific/Pohnpei|Pacific/Ponape"
1195		]
1196	});
1197
1198
1199	return moment;
1200}));

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.