UNPKG

lumenize

Version:

Illuminating the forest AND the trees in your data.

1,186 lines (1,123 loc) 664 kB
/* lumenize version: 0.8.4 */ var require = function (file, cwd) { var resolved = require.resolve(file, cwd || '/'); var mod = require.modules[resolved]; if (!mod) throw new Error( 'Failed to resolve module ' + file + ', tried ' + resolved ); var cached = require.cache[resolved]; var res = cached? cached.exports : mod(); return res; }; require.paths = []; require.modules = {}; require.cache = {}; require.extensions = [".js",".coffee",".json"]; require._core = { 'assert': true, 'events': true, 'fs': true, 'path': true, 'vm': true }; require.resolve = (function () { return function (x, cwd) { if (!cwd) cwd = '/'; if (require._core[x]) return x; var path = require.modules.path(); cwd = path.resolve('/', cwd); var y = cwd || '/'; if (x.match(/^(?:\.\.?\/|\/)/)) { var m = loadAsFileSync(path.resolve(y, x)) || loadAsDirectorySync(path.resolve(y, x)); if (m) return m; } var n = loadNodeModulesSync(x, y); if (n) return n; throw new Error("Cannot find module '" + x + "'"); function loadAsFileSync (x) { x = path.normalize(x); if (require.modules[x]) { return x; } for (var i = 0; i < require.extensions.length; i++) { var ext = require.extensions[i]; if (require.modules[x + ext]) return x + ext; } } function loadAsDirectorySync (x) { x = x.replace(/\/+$/, ''); var pkgfile = path.normalize(x + '/package.json'); if (require.modules[pkgfile]) { var pkg = require.modules[pkgfile](); var b = pkg.browserify; if (typeof b === 'object' && b.main) { var m = loadAsFileSync(path.resolve(x, b.main)); if (m) return m; } else if (typeof b === 'string') { var m = loadAsFileSync(path.resolve(x, b)); if (m) return m; } else if (pkg.main) { var m = loadAsFileSync(path.resolve(x, pkg.main)); if (m) return m; } } return loadAsFileSync(x + '/index'); } function loadNodeModulesSync (x, start) { var dirs = nodeModulesPathsSync(start); for (var i = 0; i < dirs.length; i++) { var dir = dirs[i]; var m = loadAsFileSync(dir + '/' + x); if (m) return m; var n = loadAsDirectorySync(dir + '/' + x); if (n) return n; } var m = loadAsFileSync(x); if (m) return m; } function nodeModulesPathsSync (start) { var parts; if (start === '/') parts = [ '' ]; else parts = path.normalize(start).split('/'); var dirs = []; for (var i = parts.length - 1; i >= 0; i--) { if (parts[i] === 'node_modules') continue; var dir = parts.slice(0, i + 1).join('/') + '/node_modules'; dirs.push(dir); } return dirs; } }; })(); require.alias = function (from, to) { var path = require.modules.path(); var res = null; try { res = require.resolve(from + '/package.json', '/'); } catch (err) { res = require.resolve(from, '/'); } var basedir = path.dirname(res); var keys = (Object.keys || function (obj) { var res = []; for (var key in obj) res.push(key); return res; })(require.modules); for (var i = 0; i < keys.length; i++) { var key = keys[i]; if (key.slice(0, basedir.length + 1) === basedir + '/') { var f = key.slice(basedir.length); require.modules[to + f] = require.modules[basedir + f]; } else if (key === basedir) { require.modules[to] = require.modules[basedir]; } } }; (function () { var process = {}; var global = typeof window !== 'undefined' ? window : {}; var definedProcess = false; require.define = function (filename, fn) { if (!definedProcess && require.modules.__browserify_process) { process = require.modules.__browserify_process(); definedProcess = true; } var dirname = require._core[filename] ? '' : require.modules.path().dirname(filename) ; var require_ = function (file) { var requiredModule = require(file, dirname); var cached = require.cache[require.resolve(file, dirname)]; if (cached && cached.parent === null) { cached.parent = module_; } return requiredModule; }; require_.resolve = function (name) { return require.resolve(name, dirname); }; require_.modules = require.modules; require_.define = require.define; require_.cache = require.cache; var module_ = { id : filename, filename: filename, exports : {}, loaded : false, parent: null }; require.modules[filename] = function () { require.cache[filename] = module_; fn.call( module_.exports, require_, module_, module_.exports, dirname, filename, process, global ); module_.loaded = true; return module_.exports; }; }; })(); require.define("path",function(require,module,exports,__dirname,__filename,process,global){function filter (xs, fn) { var res = []; for (var i = 0; i < xs.length; i++) { if (fn(xs[i], i, xs)) res.push(xs[i]); } return res; } // resolves . and .. elements in a path array with directory names there // must be no slashes, empty elements, or device names (c:\) in the array // (so also no leading and trailing slashes - it does not distinguish // relative and absolute paths) function normalizeArray(parts, allowAboveRoot) { // if the path tries to go above the root, `up` ends up > 0 var up = 0; for (var i = parts.length; i >= 0; i--) { var last = parts[i]; if (last == '.') { parts.splice(i, 1); } else if (last === '..') { parts.splice(i, 1); up++; } else if (up) { parts.splice(i, 1); up--; } } // if the path is allowed to go above the root, restore leading ..s if (allowAboveRoot) { for (; up--; up) { parts.unshift('..'); } } return parts; } // Regex to split a filename into [*, dir, basename, ext] // posix version var splitPathRe = /^(.+\/(?!$)|\/)?((?:.+?)?(\.[^.]*)?)$/; // path.resolve([from ...], to) // posix version exports.resolve = function() { var resolvedPath = '', resolvedAbsolute = false; for (var i = arguments.length; i >= -1 && !resolvedAbsolute; i--) { var path = (i >= 0) ? arguments[i] : process.cwd(); // Skip empty and invalid entries if (typeof path !== 'string' || !path) { continue; } resolvedPath = path + '/' + resolvedPath; resolvedAbsolute = path.charAt(0) === '/'; } // At this point the path should be resolved to a full absolute path, but // handle relative paths to be safe (might happen when process.cwd() fails) // Normalize the path resolvedPath = normalizeArray(filter(resolvedPath.split('/'), function(p) { return !!p; }), !resolvedAbsolute).join('/'); return ((resolvedAbsolute ? '/' : '') + resolvedPath) || '.'; }; // path.normalize(path) // posix version exports.normalize = function(path) { var isAbsolute = path.charAt(0) === '/', trailingSlash = path.slice(-1) === '/'; // Normalize the path path = normalizeArray(filter(path.split('/'), function(p) { return !!p; }), !isAbsolute).join('/'); if (!path && !isAbsolute) { path = '.'; } if (path && trailingSlash) { path += '/'; } return (isAbsolute ? '/' : '') + path; }; // posix version exports.join = function() { var paths = Array.prototype.slice.call(arguments, 0); return exports.normalize(filter(paths, function(p, index) { return p && typeof p === 'string'; }).join('/')); }; exports.dirname = function(path) { var dir = splitPathRe.exec(path)[1] || ''; var isWindows = false; if (!dir) { // No dirname return '.'; } else if (dir.length === 1 || (isWindows && dir.length <= 3 && dir.charAt(1) === ':')) { // It is just a slash or a drive letter with a slash return dir; } else { // It is a full dirname, strip trailing slash return dir.substring(0, dir.length - 1); } }; exports.basename = function(path, ext) { var f = splitPathRe.exec(path)[2] || ''; // TODO: make this comparison case-insensitive on windows? if (ext && f.substr(-1 * ext.length) === ext) { f = f.substr(0, f.length - ext.length); } return f; }; exports.extname = function(path) { return splitPathRe.exec(path)[3] || ''; }; }); require.define("__browserify_process",function(require,module,exports,__dirname,__filename,process,global){var process = module.exports = {}; process.nextTick = (function () { var canSetImmediate = typeof window !== 'undefined' && window.setImmediate; var canPost = typeof window !== 'undefined' && window.postMessage && window.addEventListener ; if (canSetImmediate) { return function (f) { return window.setImmediate(f) }; } if (canPost) { var queue = []; window.addEventListener('message', function (ev) { if (ev.source === window && ev.data === 'browserify-tick') { ev.stopPropagation(); if (queue.length > 0) { var fn = queue.shift(); fn(); } } }, true); return function nextTick(fn) { queue.push(fn); window.postMessage('browserify-tick', '*'); }; } return function nextTick(fn) { setTimeout(fn, 0); }; })(); process.title = 'browser'; process.browser = true; process.env = {}; process.argv = []; process.binding = function (name) { if (name === 'evals') return (require)('vm') else throw new Error('No such module. (Possibly not yet loaded)') }; (function () { var cwd = '/'; var path; process.cwd = function () { return cwd }; process.chdir = function (dir) { if (!path) path = require('path'); cwd = path.resolve(dir, cwd); }; })(); }); require.define("/node_modules/files",function(require,module,exports,__dirname,__filename,process,global){module.exports = {"tz/africa":"Rule\tAlgeria\t1916\tonly\t-\tJun\t14\t23:00s\t1:00\tS\n"+ "Rule\tAlgeria\t1916\t1919\t-\tOct\tSun>=1\t23:00s\t0\t-\n"+ "Rule\tAlgeria\t1917\tonly\t-\tMar\t24\t23:00s\t1:00\tS\n"+ "Rule\tAlgeria\t1918\tonly\t-\tMar\t 9\t23:00s\t1:00\tS\n"+ "Rule\tAlgeria\t1919\tonly\t-\tMar\t 1\t23:00s\t1:00\tS\n"+ "Rule\tAlgeria\t1920\tonly\t-\tFeb\t14\t23:00s\t1:00\tS\n"+ "Rule\tAlgeria\t1920\tonly\t-\tOct\t23\t23:00s\t0\t-\n"+ "Rule\tAlgeria\t1921\tonly\t-\tMar\t14\t23:00s\t1:00\tS\n"+ "Rule\tAlgeria\t1921\tonly\t-\tJun\t21\t23:00s\t0\t-\n"+ "Rule\tAlgeria\t1939\tonly\t-\tSep\t11\t23:00s\t1:00\tS\n"+ "Rule\tAlgeria\t1939\tonly\t-\tNov\t19\t 1:00\t0\t-\n"+ "Rule\tAlgeria\t1944\t1945\t-\tApr\tMon>=1\t 2:00\t1:00\tS\n"+ "Rule\tAlgeria\t1944\tonly\t-\tOct\t 8\t 2:00\t0\t-\n"+ "Rule\tAlgeria\t1945\tonly\t-\tSep\t16\t 1:00\t0\t-\n"+ "Rule\tAlgeria\t1971\tonly\t-\tApr\t25\t23:00s\t1:00\tS\n"+ "Rule\tAlgeria\t1971\tonly\t-\tSep\t26\t23:00s\t0\t-\n"+ "Rule\tAlgeria\t1977\tonly\t-\tMay\t 6\t 0:00\t1:00\tS\n"+ "Rule\tAlgeria\t1977\tonly\t-\tOct\t21\t 0:00\t0\t-\n"+ "Rule\tAlgeria\t1978\tonly\t-\tMar\t24\t 1:00\t1:00\tS\n"+ "Rule\tAlgeria\t1978\tonly\t-\tSep\t22\t 3:00\t0\t-\n"+ "Rule\tAlgeria\t1980\tonly\t-\tApr\t25\t 0:00\t1:00\tS\n"+ "Rule\tAlgeria\t1980\tonly\t-\tOct\t31\t 2:00\t0\t-\n"+ "Zone\tAfrica/Algiers\t0:12:12 -\tLMT\t1891 Mar 15 0:01\n"+ "\t\t\t0:09:21\t-\tPMT\t1911 Mar 11 # Paris Mean Time\n"+ "\t\t\t0:00\tAlgeria\tWE%sT\t1940 Feb 25 2:00\n"+ "\t\t\t1:00\tAlgeria\tCE%sT\t1946 Oct 7\n"+ "\t\t\t0:00\t-\tWET\t1956 Jan 29\n"+ "\t\t\t1:00\t-\tCET\t1963 Apr 14\n"+ "\t\t\t0:00\tAlgeria\tWE%sT\t1977 Oct 21\n"+ "\t\t\t1:00\tAlgeria\tCE%sT\t1979 Oct 26\n"+ "\t\t\t0:00\tAlgeria\tWE%sT\t1981 May\n"+ "\t\t\t1:00\t-\tCET\n"+ "Zone\tAfrica/Luanda\t0:52:56\t-\tLMT\t1892\n"+ "\t\t\t0:52:04\t-\tAOT\t1911 May 26 # Angola Time\n"+ "\t\t\t1:00\t-\tWAT\n"+ "Zone Africa/Porto-Novo\t0:10:28\t-\tLMT\t1912\n"+ "\t\t\t0:00\t-\tGMT\t1934 Feb 26\n"+ "\t\t\t1:00\t-\tWAT\n"+ "Zone\tAfrica/Gaborone\t1:43:40 -\tLMT\t1885\n"+ "\t\t\t2:00\t-\tCAT\t1943 Sep 19 2:00\n"+ "\t\t\t2:00\t1:00\tCAST\t1944 Mar 19 2:00\n"+ "\t\t\t2:00\t-\tCAT\n"+ "Zone Africa/Ouagadougou\t-0:06:04 -\tLMT\t1912\n"+ "\t\t\t 0:00\t-\tGMT\n"+ "Zone Africa/Bujumbura\t1:57:28\t-\tLMT\t1890\n"+ "\t\t\t2:00\t-\tCAT\n"+ "Zone\tAfrica/Douala\t0:38:48\t-\tLMT\t1912\n"+ "\t\t\t1:00\t-\tWAT\n"+ "Zone Atlantic/Cape_Verde -1:34:04 -\tLMT\t1907\t\t\t# Praia\n"+ "\t\t\t-2:00\t-\tCVT\t1942 Sep\n"+ "\t\t\t-2:00\t1:00\tCVST\t1945 Oct 15\n"+ "\t\t\t-2:00\t-\tCVT\t1975 Nov 25 2:00\n"+ "\t\t\t-1:00\t-\tCVT\n"+ "Zone\tAfrica/Bangui\t1:14:20\t-\tLMT\t1912\n"+ "\t\t\t1:00\t-\tWAT\n"+ "Zone\tAfrica/Ndjamena\t1:00:12 -\tLMT\t1912\n"+ "\t\t\t1:00\t-\tWAT\t1979 Oct 14\n"+ "\t\t\t1:00\t1:00\tWAST\t1980 Mar 8\n"+ "\t\t\t1:00\t-\tWAT\n"+ "Zone\tIndian/Comoro\t2:53:04 -\tLMT\t1911 Jul # Moroni, Gran Comoro\n"+ "\t\t\t3:00\t-\tEAT\n"+ "Zone Africa/Kinshasa\t1:01:12 -\tLMT\t1897 Nov 9\n"+ "\t\t\t1:00\t-\tWAT\n"+ "Zone Africa/Lubumbashi\t1:49:52 -\tLMT\t1897 Nov 9\n"+ "\t\t\t2:00\t-\tCAT\n"+ "Zone Africa/Brazzaville\t1:01:08 -\tLMT\t1912\n"+ "\t\t\t1:00\t-\tWAT\n"+ "Zone\tAfrica/Abidjan\t-0:16:08 -\tLMT\t1912\n"+ "\t\t\t 0:00\t-\tGMT\n"+ "Zone\tAfrica/Djibouti\t2:52:36 -\tLMT\t1911 Jul\n"+ "\t\t\t3:00\t-\tEAT\n"+ "Rule\tEgypt\t1940\tonly\t-\tJul\t15\t0:00\t1:00\tS\n"+ "Rule\tEgypt\t1940\tonly\t-\tOct\t 1\t0:00\t0\t-\n"+ "Rule\tEgypt\t1941\tonly\t-\tApr\t15\t0:00\t1:00\tS\n"+ "Rule\tEgypt\t1941\tonly\t-\tSep\t16\t0:00\t0\t-\n"+ "Rule\tEgypt\t1942\t1944\t-\tApr\t 1\t0:00\t1:00\tS\n"+ "Rule\tEgypt\t1942\tonly\t-\tOct\t27\t0:00\t0\t-\n"+ "Rule\tEgypt\t1943\t1945\t-\tNov\t 1\t0:00\t0\t-\n"+ "Rule\tEgypt\t1945\tonly\t-\tApr\t16\t0:00\t1:00\tS\n"+ "Rule\tEgypt\t1957\tonly\t-\tMay\t10\t0:00\t1:00\tS\n"+ "Rule\tEgypt\t1957\t1958\t-\tOct\t 1\t0:00\t0\t-\n"+ "Rule\tEgypt\t1958\tonly\t-\tMay\t 1\t0:00\t1:00\tS\n"+ "Rule\tEgypt\t1959\t1981\t-\tMay\t 1\t1:00\t1:00\tS\n"+ "Rule\tEgypt\t1959\t1965\t-\tSep\t30\t3:00\t0\t-\n"+ "Rule\tEgypt\t1966\t1994\t-\tOct\t 1\t3:00\t0\t-\n"+ "Rule\tEgypt\t1982\tonly\t-\tJul\t25\t1:00\t1:00\tS\n"+ "Rule\tEgypt\t1983\tonly\t-\tJul\t12\t1:00\t1:00\tS\n"+ "Rule\tEgypt\t1984\t1988\t-\tMay\t 1\t1:00\t1:00\tS\n"+ "Rule\tEgypt\t1989\tonly\t-\tMay\t 6\t1:00\t1:00\tS\n"+ "Rule\tEgypt\t1990\t1994\t-\tMay\t 1\t1:00\t1:00\tS\n"+ "Rule\tEgypt\t1995\t2010\t-\tApr\tlastFri\t 0:00s\t1:00\tS\n"+ "Rule\tEgypt\t1995\t2005\t-\tSep\tlastThu\t23:00s\t0\t-\n"+ "Rule\tEgypt\t2006\tonly\t-\tSep\t21\t23:00s\t0\t-\n"+ "Rule\tEgypt\t2007\tonly\t-\tSep\tThu>=1\t23:00s\t0\t-\n"+ "Rule\tEgypt\t2008\tonly\t-\tAug\tlastThu\t23:00s\t0\t-\n"+ "Rule\tEgypt\t2009\tonly\t-\tAug\t20\t23:00s\t0\t-\n"+ "Rule\tEgypt\t2010\tonly\t-\tAug\t11\t0:00\t0\t-\n"+ "Rule\tEgypt\t2010\tonly\t-\tSep\t10\t0:00\t1:00\tS\n"+ "Rule\tEgypt\t2010\tonly\t-\tSep\tlastThu\t23:00s\t0\t-\n"+ "Zone\tAfrica/Cairo\t2:05:00 -\tLMT\t1900 Oct\n"+ "\t\t\t2:00\tEgypt\tEE%sT\n"+ "Zone\tAfrica/Malabo\t0:35:08 -\tLMT\t1912\n"+ "\t\t\t0:00\t-\tGMT\t1963 Dec 15\n"+ "\t\t\t1:00\t-\tWAT\n"+ "Zone\tAfrica/Asmara\t2:35:32 -\tLMT\t1870\n"+ "\t\t\t2:35:32\t-\tAMT\t1890\t # Asmara Mean Time\n"+ "\t\t\t2:35:20\t-\tADMT\t1936 May 5 # Adis Dera MT\n"+ "\t\t\t3:00\t-\tEAT\n"+ "Zone Africa/Addis_Ababa\t2:34:48 -\tLMT\t1870\n"+ "\t\t\t2:35:20\t-\tADMT\t1936 May 5 # Adis Dera MT\n"+ "\t\t\t3:00\t-\tEAT\n"+ "Zone Africa/Libreville\t0:37:48 -\tLMT\t1912\n"+ "\t\t\t1:00\t-\tWAT\n"+ "Zone\tAfrica/Banjul\t-1:06:36 -\tLMT\t1912\n"+ "\t\t\t-1:06:36 -\tBMT\t1935\t# Banjul Mean Time\n"+ "\t\t\t-1:00\t-\tWAT\t1964\n"+ "\t\t\t 0:00\t-\tGMT\n"+ "Rule\tGhana\t1936\t1942\t-\tSep\t 1\t0:00\t0:20\tGHST\n"+ "Rule\tGhana\t1936\t1942\t-\tDec\t31\t0:00\t0\tGMT\n"+ "Zone\tAfrica/Accra\t-0:00:52 -\tLMT\t1918\n"+ "\t\t\t 0:00\tGhana\t%s\n"+ "Zone\tAfrica/Conakry\t-0:54:52 -\tLMT\t1912\n"+ "\t\t\t 0:00\t-\tGMT\t1934 Feb 26\n"+ "\t\t\t-1:00\t-\tWAT\t1960\n"+ "\t\t\t 0:00\t-\tGMT\n"+ "Zone\tAfrica/Bissau\t-1:02:20 -\tLMT\t1911 May 26\n"+ "\t\t\t-1:00\t-\tWAT\t1975\n"+ "\t\t\t 0:00\t-\tGMT\n"+ "Zone\tAfrica/Nairobi\t2:27:16\t-\tLMT\t1928 Jul\n"+ "\t\t\t3:00\t-\tEAT\t1930\n"+ "\t\t\t2:30\t-\tBEAT\t1940\n"+ "\t\t\t2:45\t-\tBEAUT\t1960\n"+ "\t\t\t3:00\t-\tEAT\n"+ "Zone\tAfrica/Maseru\t1:50:00 -\tLMT\t1903 Mar\n"+ "\t\t\t2:00\t-\tSAST\t1943 Sep 19 2:00\n"+ "\t\t\t2:00\t1:00\tSAST\t1944 Mar 19 2:00\n"+ "\t\t\t2:00\t-\tSAST\n"+ "Zone\tAfrica/Monrovia\t-0:43:08 -\tLMT\t1882\n"+ "\t\t\t-0:43:08 -\tMMT\t1919 Mar # Monrovia Mean Time\n"+ "\t\t\t-0:44:30 -\tLRT\t1972 May # Liberia Time\n"+ "\t\t\t 0:00\t-\tGMT\n"+ "Rule\tLibya\t1951\tonly\t-\tOct\t14\t2:00\t1:00\tS\n"+ "Rule\tLibya\t1952\tonly\t-\tJan\t 1\t0:00\t0\t-\n"+ "Rule\tLibya\t1953\tonly\t-\tOct\t 9\t2:00\t1:00\tS\n"+ "Rule\tLibya\t1954\tonly\t-\tJan\t 1\t0:00\t0\t-\n"+ "Rule\tLibya\t1955\tonly\t-\tSep\t30\t0:00\t1:00\tS\n"+ "Rule\tLibya\t1956\tonly\t-\tJan\t 1\t0:00\t0\t-\n"+ "Rule\tLibya\t1982\t1984\t-\tApr\t 1\t0:00\t1:00\tS\n"+ "Rule\tLibya\t1982\t1985\t-\tOct\t 1\t0:00\t0\t-\n"+ "Rule\tLibya\t1985\tonly\t-\tApr\t 6\t0:00\t1:00\tS\n"+ "Rule\tLibya\t1986\tonly\t-\tApr\t 4\t0:00\t1:00\tS\n"+ "Rule\tLibya\t1986\tonly\t-\tOct\t 3\t0:00\t0\t-\n"+ "Rule\tLibya\t1987\t1989\t-\tApr\t 1\t0:00\t1:00\tS\n"+ "Rule\tLibya\t1987\t1989\t-\tOct\t 1\t0:00\t0\t-\n"+ "Zone\tAfrica/Tripoli\t0:52:44 -\tLMT\t1920\n"+ "\t\t\t1:00\tLibya\tCE%sT\t1959\n"+ "\t\t\t2:00\t-\tEET\t1982\n"+ "\t\t\t1:00\tLibya\tCE%sT\t1990 May 4\n"+ "\t\t\t2:00\t-\tEET\t1996 Sep 30\n"+ "\t\t\t1:00\t-\tCET\t1997 Apr 4\n"+ "\t\t\t1:00\t1:00\tCEST\t1997 Oct 4\n"+ "\t\t\t2:00\t-\tEET\n"+ "Zone Indian/Antananarivo 3:10:04 -\tLMT\t1911 Jul\n"+ "\t\t\t3:00\t-\tEAT\t1954 Feb 27 23:00s\n"+ "\t\t\t3:00\t1:00\tEAST\t1954 May 29 23:00s\n"+ "\t\t\t3:00\t-\tEAT\n"+ "Zone\tAfrica/Blantyre\t2:20:00 -\tLMT\t1903 Mar\n"+ "\t\t\t2:00\t-\tCAT\n"+ "Zone\tAfrica/Bamako\t-0:32:00 -\tLMT\t1912\n"+ "\t\t\t 0:00\t-\tGMT\t1934 Feb 26\n"+ "\t\t\t-1:00\t-\tWAT\t1960 Jun 20\n"+ "\t\t\t 0:00\t-\tGMT\n"+ "Zone Africa/Nouakchott\t-1:03:48 -\tLMT\t1912\n"+ "\t\t\t 0:00\t-\tGMT\t1934 Feb 26\n"+ "\t\t\t-1:00\t-\tWAT\t1960 Nov 28\n"+ "\t\t\t 0:00\t-\tGMT\n"+ "Rule Mauritius\t1982\tonly\t-\tOct\t10\t0:00\t1:00\tS\n"+ "Rule Mauritius\t1983\tonly\t-\tMar\t21\t0:00\t0\t-\n"+ "Rule Mauritius\t2008\tonly\t-\tOct\tlastSun\t2:00\t1:00\tS\n"+ "Rule Mauritius\t2009\tonly\t-\tMar\tlastSun\t2:00\t0\t-\n"+ "Zone Indian/Mauritius\t3:50:00 -\tLMT\t1907\t\t# Port Louis\n"+ "\t\t\t4:00 Mauritius\tMU%sT\t# Mauritius Time\n"+ "Zone\tIndian/Mayotte\t3:00:56 -\tLMT\t1911 Jul\t# Mamoutzou\n"+ "\t\t\t3:00\t-\tEAT\n"+ "Rule\tMorocco\t1939\tonly\t-\tSep\t12\t 0:00\t1:00\tS\n"+ "Rule\tMorocco\t1939\tonly\t-\tNov\t19\t 0:00\t0\t-\n"+ "Rule\tMorocco\t1940\tonly\t-\tFeb\t25\t 0:00\t1:00\tS\n"+ "Rule\tMorocco\t1945\tonly\t-\tNov\t18\t 0:00\t0\t-\n"+ "Rule\tMorocco\t1950\tonly\t-\tJun\t11\t 0:00\t1:00\tS\n"+ "Rule\tMorocco\t1950\tonly\t-\tOct\t29\t 0:00\t0\t-\n"+ "Rule\tMorocco\t1967\tonly\t-\tJun\t 3\t12:00\t1:00\tS\n"+ "Rule\tMorocco\t1967\tonly\t-\tOct\t 1\t 0:00\t0\t-\n"+ "Rule\tMorocco\t1974\tonly\t-\tJun\t24\t 0:00\t1:00\tS\n"+ "Rule\tMorocco\t1974\tonly\t-\tSep\t 1\t 0:00\t0\t-\n"+ "Rule\tMorocco\t1976\t1977\t-\tMay\t 1\t 0:00\t1:00\tS\n"+ "Rule\tMorocco\t1976\tonly\t-\tAug\t 1\t 0:00\t0\t-\n"+ "Rule\tMorocco\t1977\tonly\t-\tSep\t28\t 0:00\t0\t-\n"+ "Rule\tMorocco\t1978\tonly\t-\tJun\t 1\t 0:00\t1:00\tS\n"+ "Rule\tMorocco\t1978\tonly\t-\tAug\t 4\t 0:00\t0\t-\n"+ "Rule\tMorocco\t2008\tonly\t-\tJun\t 1\t 0:00\t1:00\tS\n"+ "Rule\tMorocco\t2008\tonly\t-\tSep\t 1\t 0:00\t0\t-\n"+ "Rule\tMorocco\t2009\tonly\t-\tJun\t 1\t 0:00\t1:00\tS\n"+ "Rule\tMorocco\t2009\tonly\t-\tAug\t 21\t 0:00\t0\t-\n"+ "Rule\tMorocco\t2010\tonly\t-\tMay\t 2\t 0:00\t1:00\tS\n"+ "Rule\tMorocco\t2010\tonly\t-\tAug\t 8\t 0:00\t0\t-\n"+ "Rule\tMorocco\t2011\tonly\t-\tApr\t 3\t 0:00\t1:00\tS\n"+ "Rule\tMorocco\t2011\tonly\t-\tJul\t 31\t 0\t0\t-\n"+ "Zone Africa/Casablanca\t-0:30:20 -\tLMT\t1913 Oct 26\n"+ "\t\t\t 0:00\tMorocco\tWE%sT\t1984 Mar 16\n"+ "\t\t\t 1:00\t-\tCET\t1986\n"+ "\t\t\t 0:00\tMorocco\tWE%sT\n"+ "Zone Africa/El_Aaiun\t-0:52:48 -\tLMT\t1934 Jan\n"+ "\t\t\t-1:00\t-\tWAT\t1976 Apr 14\n"+ "\t\t\t 0:00\t-\tWET\n"+ "Zone\tAfrica/Maputo\t2:10:20 -\tLMT\t1903 Mar\n"+ "\t\t\t2:00\t-\tCAT\n"+ "Rule\tNamibia\t1994\tmax\t-\tSep\tSun>=1\t2:00\t1:00\tS\n"+ "Rule\tNamibia\t1995\tmax\t-\tApr\tSun>=1\t2:00\t0\t-\n"+ "Zone\tAfrica/Windhoek\t1:08:24 -\tLMT\t1892 Feb 8\n"+ "\t\t\t1:30\t-\tSWAT\t1903 Mar\t# SW Africa Time\n"+ "\t\t\t2:00\t-\tSAST\t1942 Sep 20 2:00\n"+ "\t\t\t2:00\t1:00\tSAST\t1943 Mar 21 2:00\n"+ "\t\t\t2:00\t-\tSAST\t1990 Mar 21 # independence\n"+ "\t\t\t2:00\t-\tCAT\t1994 Apr 3\n"+ "\t\t\t1:00\tNamibia\tWA%sT\n"+ "Zone\tAfrica/Niamey\t 0:08:28 -\tLMT\t1912\n"+ "\t\t\t-1:00\t-\tWAT\t1934 Feb 26\n"+ "\t\t\t 0:00\t-\tGMT\t1960\n"+ "\t\t\t 1:00\t-\tWAT\n"+ "Zone\tAfrica/Lagos\t0:13:36 -\tLMT\t1919 Sep\n"+ "\t\t\t1:00\t-\tWAT\n"+ "Zone\tIndian/Reunion\t3:41:52 -\tLMT\t1911 Jun\t# Saint-Denis\n"+ "\t\t\t4:00\t-\tRET\t# Reunion Time\n"+ "Zone\tAfrica/Kigali\t2:00:16 -\tLMT\t1935 Jun\n"+ "\t\t\t2:00\t-\tCAT\n"+ "Zone Atlantic/St_Helena\t-0:22:48 -\tLMT\t1890\t\t# Jamestown\n"+ "\t\t\t-0:22:48 -\tJMT\t1951\t# Jamestown Mean Time\n"+ "\t\t\t 0:00\t-\tGMT\n"+ "Zone\tAfrica/Sao_Tome\t 0:26:56 -\tLMT\t1884\n"+ "\t\t\t-0:36:32 -\tLMT\t1912\t# Lisbon Mean Time\n"+ "\t\t\t 0:00\t-\tGMT\n"+ "Zone\tAfrica/Dakar\t-1:09:44 -\tLMT\t1912\n"+ "\t\t\t-1:00\t-\tWAT\t1941 Jun\n"+ "\t\t\t 0:00\t-\tGMT\n"+ "Zone\tIndian/Mahe\t3:41:48 -\tLMT\t1906 Jun\t# Victoria\n"+ "\t\t\t4:00\t-\tSCT\t# Seychelles Time\n"+ "Rule\tSL\t1935\t1942\t-\tJun\t 1\t0:00\t0:40\tSLST\n"+ "Rule\tSL\t1935\t1942\t-\tOct\t 1\t0:00\t0\tWAT\n"+ "Rule\tSL\t1957\t1962\t-\tJun\t 1\t0:00\t1:00\tSLST\n"+ "Rule\tSL\t1957\t1962\t-\tSep\t 1\t0:00\t0\tGMT\n"+ "Zone\tAfrica/Freetown\t-0:53:00 -\tLMT\t1882\n"+ "\t\t\t-0:53:00 -\tFMT\t1913 Jun # Freetown Mean Time\n"+ "\t\t\t-1:00\tSL\t%s\t1957\n"+ "\t\t\t 0:00\tSL\t%s\n"+ "Zone Africa/Mogadishu\t3:01:28 -\tLMT\t1893 Nov\n"+ "\t\t\t3:00\t-\tEAT\t1931\n"+ "\t\t\t2:30\t-\tBEAT\t1957\n"+ "\t\t\t3:00\t-\tEAT\n"+ "Rule\tSA\t1942\t1943\t-\tSep\tSun>=15\t2:00\t1:00\t-\n"+ "Rule\tSA\t1943\t1944\t-\tMar\tSun>=15\t2:00\t0\t-\n"+ "Zone Africa/Johannesburg 1:52:00 -\tLMT\t1892 Feb 8\n"+ "\t\t\t1:30\t-\tSAST\t1903 Mar\n"+ "\t\t\t2:00\tSA\tSAST\n"+ "Rule\tSudan\t1970\tonly\t-\tMay\t 1\t0:00\t1:00\tS\n"+ "Rule\tSudan\t1970\t1985\t-\tOct\t15\t0:00\t0\t-\n"+ "Rule\tSudan\t1971\tonly\t-\tApr\t30\t0:00\t1:00\tS\n"+ "Rule\tSudan\t1972\t1985\t-\tApr\tlastSun\t0:00\t1:00\tS\n"+ "Zone\tAfrica/Khartoum\t2:10:08 -\tLMT\t1931\n"+ "\t\t\t2:00\tSudan\tCA%sT\t2000 Jan 15 12:00\n"+ "\t\t\t3:00\t-\tEAT\n"+ "Zone\tAfrica/Juba\t2:06:24 -\tLMT\t1931\n"+ "\t\t\t2:00\tSudan\tCA%sT\t2000 Jan 15 12:00\n"+ "\t\t\t3:00\t-\tEAT\n"+ "Zone\tAfrica/Mbabane\t2:04:24 -\tLMT\t1903 Mar\n"+ "\t\t\t2:00\t-\tSAST\n"+ "Zone Africa/Dar_es_Salaam 2:37:08 -\tLMT\t1931\n"+ "\t\t\t3:00\t-\tEAT\t1948\n"+ "\t\t\t2:45\t-\tBEAUT\t1961\n"+ "\t\t\t3:00\t-\tEAT\n"+ "Zone\tAfrica/Lome\t0:04:52 -\tLMT\t1893\n"+ "\t\t\t0:00\t-\tGMT\n"+ "Rule\tTunisia\t1939\tonly\t-\tApr\t15\t23:00s\t1:00\tS\n"+ "Rule\tTunisia\t1939\tonly\t-\tNov\t18\t23:00s\t0\t-\n"+ "Rule\tTunisia\t1940\tonly\t-\tFeb\t25\t23:00s\t1:00\tS\n"+ "Rule\tTunisia\t1941\tonly\t-\tOct\t 6\t 0:00\t0\t-\n"+ "Rule\tTunisia\t1942\tonly\t-\tMar\t 9\t 0:00\t1:00\tS\n"+ "Rule\tTunisia\t1942\tonly\t-\tNov\t 2\t 3:00\t0\t-\n"+ "Rule\tTunisia\t1943\tonly\t-\tMar\t29\t 2:00\t1:00\tS\n"+ "Rule\tTunisia\t1943\tonly\t-\tApr\t17\t 2:00\t0\t-\n"+ "Rule\tTunisia\t1943\tonly\t-\tApr\t25\t 2:00\t1:00\tS\n"+ "Rule\tTunisia\t1943\tonly\t-\tOct\t 4\t 2:00\t0\t-\n"+ "Rule\tTunisia\t1944\t1945\t-\tApr\tMon>=1\t 2:00\t1:00\tS\n"+ "Rule\tTunisia\t1944\tonly\t-\tOct\t 8\t 0:00\t0\t-\n"+ "Rule\tTunisia\t1945\tonly\t-\tSep\t16\t 0:00\t0\t-\n"+ "Rule\tTunisia\t1977\tonly\t-\tApr\t30\t 0:00s\t1:00\tS\n"+ "Rule\tTunisia\t1977\tonly\t-\tSep\t24\t 0:00s\t0\t-\n"+ "Rule\tTunisia\t1978\tonly\t-\tMay\t 1\t 0:00s\t1:00\tS\n"+ "Rule\tTunisia\t1978\tonly\t-\tOct\t 1\t 0:00s\t0\t-\n"+ "Rule\tTunisia\t1988\tonly\t-\tJun\t 1\t 0:00s\t1:00\tS\n"+ "Rule\tTunisia\t1988\t1990\t-\tSep\tlastSun\t 0:00s\t0\t-\n"+ "Rule\tTunisia\t1989\tonly\t-\tMar\t26\t 0:00s\t1:00\tS\n"+ "Rule\tTunisia\t1990\tonly\t-\tMay\t 1\t 0:00s\t1:00\tS\n"+ "Rule\tTunisia\t2005\tonly\t-\tMay\t 1\t 0:00s\t1:00\tS\n"+ "Rule\tTunisia\t2005\tonly\t-\tSep\t30\t 1:00s\t0\t-\n"+ "Rule\tTunisia\t2006\t2008\t-\tMar\tlastSun\t 2:00s\t1:00\tS\n"+ "Rule\tTunisia\t2006\t2008\t-\tOct\tlastSun\t 2:00s\t0\t-\n"+ "Zone\tAfrica/Tunis\t0:40:44 -\tLMT\t1881 May 12\n"+ "\t\t\t0:09:21\t-\tPMT\t1911 Mar 11 # Paris Mean Time\n"+ "\t\t\t1:00\tTunisia\tCE%sT\n"+ "Zone\tAfrica/Kampala\t2:09:40 -\tLMT\t1928 Jul\n"+ "\t\t\t3:00\t-\tEAT\t1930\n"+ "\t\t\t2:30\t-\tBEAT\t1948\n"+ "\t\t\t2:45\t-\tBEAUT\t1957\n"+ "\t\t\t3:00\t-\tEAT\n"+ "Zone\tAfrica/Lusaka\t1:53:08 -\tLMT\t1903 Mar\n"+ "\t\t\t2:00\t-\tCAT\n"+ "Zone\tAfrica/Harare\t2:04:12 -\tLMT\t1903 Mar\n"+ "\t\t\t2:00\t-\tCAT\n"+ "","tz/antarctica":"Rule\tArgAQ\t1964\t1966\t-\tMar\t 1\t0:00\t0\t-\n"+ "Rule\tArgAQ\t1964\t1966\t-\tOct\t15\t0:00\t1:00\tS\n"+ "Rule\tArgAQ\t1967\tonly\t-\tApr\t 2\t0:00\t0\t-\n"+ "Rule\tArgAQ\t1967\t1968\t-\tOct\tSun>=1\t0:00\t1:00\tS\n"+ "Rule\tArgAQ\t1968\t1969\t-\tApr\tSun>=1\t0:00\t0\t-\n"+ "Rule\tArgAQ\t1974\tonly\t-\tJan\t23\t0:00\t1:00\tS\n"+ "Rule\tArgAQ\t1974\tonly\t-\tMay\t 1\t0:00\t0\t-\n"+ "Rule\tChileAQ\t1972\t1986\t-\tMar\tSun>=9\t3:00u\t0\t-\n"+ "Rule\tChileAQ\t1974\t1987\t-\tOct\tSun>=9\t4:00u\t1:00\tS\n"+ "Rule\tChileAQ\t1987\tonly\t-\tApr\t12\t3:00u\t0\t-\n"+ "Rule\tChileAQ\t1988\t1989\t-\tMar\tSun>=9\t3:00u\t0\t-\n"+ "Rule\tChileAQ\t1988\tonly\t-\tOct\tSun>=1\t4:00u\t1:00\tS\n"+ "Rule\tChileAQ\t1989\tonly\t-\tOct\tSun>=9\t4:00u\t1:00\tS\n"+ "Rule\tChileAQ\t1990\tonly\t-\tMar\t18\t3:00u\t0\t-\n"+ "Rule\tChileAQ\t1990\tonly\t-\tSep\t16\t4:00u\t1:00\tS\n"+ "Rule\tChileAQ\t1991\t1996\t-\tMar\tSun>=9\t3:00u\t0\t-\n"+ "Rule\tChileAQ\t1991\t1997\t-\tOct\tSun>=9\t4:00u\t1:00\tS\n"+ "Rule\tChileAQ\t1997\tonly\t-\tMar\t30\t3:00u\t0\t-\n"+ "Rule\tChileAQ\t1998\tonly\t-\tMar\tSun>=9\t3:00u\t0\t-\n"+ "Rule\tChileAQ\t1998\tonly\t-\tSep\t27\t4:00u\t1:00\tS\n"+ "Rule\tChileAQ\t1999\tonly\t-\tApr\t 4\t3:00u\t0\t-\n"+ "Rule\tChileAQ\t1999\tmax\t-\tOct\tSun>=9\t4:00u\t1:00\tS\n"+ "Rule\tChileAQ\t2000\tmax\t-\tMar\tSun>=9\t3:00u\t0\t-\n"+ "Rule\tAusAQ\t1917\tonly\t-\tJan\t 1\t0:01\t1:00\t-\n"+ "Rule\tAusAQ\t1917\tonly\t-\tMar\t25\t2:00\t0\t-\n"+ "Rule\tAusAQ\t1942\tonly\t-\tJan\t 1\t2:00\t1:00\t-\n"+ "Rule\tAusAQ\t1942\tonly\t-\tMar\t29\t2:00\t0\t-\n"+ "Rule\tAusAQ\t1942\tonly\t-\tSep\t27\t2:00\t1:00\t-\n"+ "Rule\tAusAQ\t1943\t1944\t-\tMar\tlastSun\t2:00\t0\t-\n"+ "Rule\tAusAQ\t1943\tonly\t-\tOct\t 3\t2:00\t1:00\t-\n"+ "Rule\tATAQ\t1967\tonly\t-\tOct\tSun>=1\t2:00s\t1:00\t-\n"+ "Rule\tATAQ\t1968\tonly\t-\tMar\tlastSun\t2:00s\t0\t-\n"+ "Rule\tATAQ\t1968\t1985\t-\tOct\tlastSun\t2:00s\t1:00\t-\n"+ "Rule\tATAQ\t1969\t1971\t-\tMar\tSun>=8\t2:00s\t0\t-\n"+ "Rule\tATAQ\t1972\tonly\t-\tFeb\tlastSun\t2:00s\t0\t-\n"+ "Rule\tATAQ\t1973\t1981\t-\tMar\tSun>=1\t2:00s\t0\t-\n"+ "Rule\tATAQ\t1982\t1983\t-\tMar\tlastSun\t2:00s\t0\t-\n"+ "Rule\tATAQ\t1984\t1986\t-\tMar\tSun>=1\t2:00s\t0\t-\n"+ "Rule\tATAQ\t1986\tonly\t-\tOct\tSun>=15\t2:00s\t1:00\t-\n"+ "Rule\tATAQ\t1987\t1990\t-\tMar\tSun>=15\t2:00s\t0\t-\n"+ "Rule\tATAQ\t1987\tonly\t-\tOct\tSun>=22\t2:00s\t1:00\t-\n"+ "Rule\tATAQ\t1988\t1990\t-\tOct\tlastSun\t2:00s\t1:00\t-\n"+ "Rule\tATAQ\t1991\t1999\t-\tOct\tSun>=1\t2:00s\t1:00\t-\n"+ "Rule\tATAQ\t1991\t2005\t-\tMar\tlastSun\t2:00s\t0\t-\n"+ "Rule\tATAQ\t2000\tonly\t-\tAug\tlastSun\t2:00s\t1:00\t-\n"+ "Rule\tATAQ\t2001\tmax\t-\tOct\tSun>=1\t2:00s\t1:00\t-\n"+ "Rule\tATAQ\t2006\tonly\t-\tApr\tSun>=1\t2:00s\t0\t-\n"+ "Rule\tATAQ\t2007\tonly\t-\tMar\tlastSun\t2:00s\t0\t-\n"+ "Rule\tATAQ\t2008\tmax\t-\tApr\tSun>=1\t2:00s\t0\t-\n"+ "Zone Antarctica/Casey\t0\t-\tzzz\t1969\n"+ "\t\t\t8:00\t-\tWST\t2009 Oct 18 2:00\n"+ "\t\t\t\t\t\t# Western (Aus) Standard Time\n"+ "\t\t\t11:00\t-\tCAST\t2010 Mar 5 2:00\n"+ "\t\t\t\t\t\t# Casey Time\n"+ "\t\t\t8:00\t-\tWST\n"+ "Zone Antarctica/Davis\t0\t-\tzzz\t1957 Jan 13\n"+ "\t\t\t7:00\t-\tDAVT\t1964 Nov # Davis Time\n"+ "\t\t\t0\t-\tzzz\t1969 Feb\n"+ "\t\t\t7:00\t-\tDAVT\t2009 Oct 18 2:00\n"+ "\t\t\t5:00\t-\tDAVT\t2010 Mar 10 20:00u\n"+ "\t\t\t7:00\t-\tDAVT\n"+ "Zone Antarctica/Mawson\t0\t-\tzzz\t1954 Feb 13\n"+ "\t\t\t6:00\t-\tMAWT\t2009 Oct 18 2:00\n"+ "\t\t\t\t\t\t# Mawson Time\n"+ "\t\t\t5:00\t-\tMAWT\n"+ "Zone Antarctica/Macquarie 0\t-\tzzz\t1911\n"+ "\t\t\t10:00\t-\tEST\t1916 Oct 1 2:00\n"+ "\t\t\t10:00\t1:00\tEST\t1917 Feb\n"+ "\t\t\t10:00\tAusAQ\tEST\t1967\n"+ "\t\t\t10:00\tATAQ\tEST\t2010 Apr 4 3:00\n"+ "\t\t\t11:00\t-\tMIST\t# Macquarie Island Time\n"+ "Zone Indian/Kerguelen\t0\t-\tzzz\t1950\t# Port-aux-Francais\n"+ "\t\t\t5:00\t-\tTFT\t# ISO code TF Time\n"+ "Zone Antarctica/DumontDUrville 0 -\tzzz\t1947\n"+ "\t\t\t10:00\t-\tPMT\t1952 Jan 14 # Port-Martin Time\n"+ "\t\t\t0\t-\tzzz\t1956 Nov\n"+ "\t\t\t10:00\t-\tDDUT\t# Dumont-d'Urville Time\n"+ "Zone Antarctica/Syowa\t0\t-\tzzz\t1957 Jan 29\n"+ "\t\t\t3:00\t-\tSYOT\t# Syowa Time\n"+ "Rule\tNZAQ\t1974\tonly\t-\tNov\t 3\t2:00s\t1:00\tD\n"+ "Rule\tNZAQ\t1975\t1988\t-\tOct\tlastSun\t2:00s\t1:00\tD\n"+ "Rule\tNZAQ\t1989\tonly\t-\tOct\t 8\t2:00s\t1:00\tD\n"+ "Rule\tNZAQ\t1990\t2006\t-\tOct\tSun>=1\t2:00s\t1:00\tD\n"+ "Rule\tNZAQ\t1975\tonly\t-\tFeb\t23\t2:00s\t0\tS\n"+ "Rule\tNZAQ\t1976\t1989\t-\tMar\tSun>=1\t2:00s\t0\tS\n"+ "Rule\tNZAQ\t1990\t2007\t-\tMar\tSun>=15\t2:00s\t0\tS\n"+ "Rule\tNZAQ\t2007\tmax\t-\tSep\tlastSun\t2:00s\t1:00\tD\n"+ "Rule\tNZAQ\t2008\tmax\t-\tApr\tSun>=1\t2:00s\t0\tS\n"+ "Zone Antarctica/Vostok\t0\t-\tzzz\t1957 Dec 16\n"+ "\t\t\t6:00\t-\tVOST\t# Vostok time\n"+ "Zone Antarctica/Rothera\t0\t-\tzzz\t1976 Dec 1\n"+ "\t\t\t-3:00\t-\tROTT\t# Rothera time\n"+ "Zone Antarctica/Palmer\t0\t-\tzzz\t1965\n"+ "\t\t\t-4:00\tArgAQ\tAR%sT\t1969 Oct 5\n"+ "\t\t\t-3:00\tArgAQ\tAR%sT\t1982 May\n"+ "\t\t\t-4:00\tChileAQ\tCL%sT\n"+ "Zone Antarctica/McMurdo\t0\t-\tzzz\t1956\n"+ "\t\t\t12:00\tNZAQ\tNZ%sT\n"+ "Link\tAntarctica/McMurdo\tAntarctica/South_Pole\n"+ "","tz/asia":"Rule\tEUAsia\t1981\tmax\t-\tMar\tlastSun\t 1:00u\t1:00\tS\n"+ "Rule\tEUAsia\t1979\t1995\t-\tSep\tlastSun\t 1:00u\t0\t-\n"+ "Rule\tEUAsia\t1996\tmax\t-\tOct\tlastSun\t 1:00u\t0\t-\n"+ "Rule E-EurAsia\t1981\tmax\t-\tMar\tlastSun\t 0:00\t1:00\tS\n"+ "Rule E-EurAsia\t1979\t1995\t-\tSep\tlastSun\t 0:00\t0\t-\n"+ "Rule E-EurAsia\t1996\tmax\t-\tOct\tlastSun\t 0:00\t0\t-\n"+ "Rule RussiaAsia\t1981\t1984\t-\tApr\t1\t 0:00\t1:00\tS\n"+ "Rule RussiaAsia\t1981\t1983\t-\tOct\t1\t 0:00\t0\t-\n"+ "Rule RussiaAsia\t1984\t1991\t-\tSep\tlastSun\t 2:00s\t0\t-\n"+ "Rule RussiaAsia\t1985\t1991\t-\tMar\tlastSun\t 2:00s\t1:00\tS\n"+ "Rule RussiaAsia\t1992\tonly\t-\tMar\tlastSat\t23:00\t1:00\tS\n"+ "Rule RussiaAsia\t1992\tonly\t-\tSep\tlastSat\t23:00\t0\t-\n"+ "Rule RussiaAsia\t1993\tmax\t-\tMar\tlastSun\t 2:00s\t1:00\tS\n"+ "Rule RussiaAsia\t1993\t1995\t-\tSep\tlastSun\t 2:00s\t0\t-\n"+ "Rule RussiaAsia\t1996\tmax\t-\tOct\tlastSun\t 2:00s\t0\t-\n"+ "Zone\tAsia/Kabul\t4:36:48 -\tLMT\t1890\n"+ "\t\t\t4:00\t-\tAFT\t1945\n"+ "\t\t\t4:30\t-\tAFT\n"+ "Zone\tAsia/Yerevan\t2:58:00 -\tLMT\t1924 May 2\n"+ "\t\t\t3:00\t-\tYERT\t1957 Mar # Yerevan Time\n"+ "\t\t\t4:00 RussiaAsia YER%sT\t1991 Mar 31 2:00s\n"+ "\t\t\t3:00\t1:00\tYERST\t1991 Sep 23 # independence\n"+ "\t\t\t3:00 RussiaAsia\tAM%sT\t1995 Sep 24 2:00s\n"+ "\t\t\t4:00\t-\tAMT\t1997\n"+ "\t\t\t4:00 RussiaAsia\tAM%sT\n"+ "Rule\tAzer\t1997\tmax\t-\tMar\tlastSun\t 4:00\t1:00\tS\n"+ "Rule\tAzer\t1997\tmax\t-\tOct\tlastSun\t 5:00\t0\t-\n"+ "Zone\tAsia/Baku\t3:19:24 -\tLMT\t1924 May 2\n"+ "\t\t\t3:00\t-\tBAKT\t1957 Mar # Baku Time\n"+ "\t\t\t4:00 RussiaAsia BAK%sT\t1991 Mar 31 2:00s\n"+ "\t\t\t3:00\t1:00\tBAKST\t1991 Aug 30 # independence\n"+ "\t\t\t3:00 RussiaAsia\tAZ%sT\t1992 Sep lastSat 23:00\n"+ "\t\t\t4:00\t-\tAZT\t1996 # Azerbaijan time\n"+ "\t\t\t4:00\tEUAsia\tAZ%sT\t1997\n"+ "\t\t\t4:00\tAzer\tAZ%sT\n"+ "Zone\tAsia/Bahrain\t3:22:20 -\tLMT\t1920\t\t# Al Manamah\n"+ "\t\t\t4:00\t-\tGST\t1972 Jun\n"+ "\t\t\t3:00\t-\tAST\n"+ "Rule\tDhaka\t2009\tonly\t-\tJun\t19\t23:00\t1:00\tS\n"+ "Rule\tDhaka\t2009\tonly\t-\tDec\t31\t23:59\t0\t-\n"+ "Zone\tAsia/Dhaka\t6:01:40 -\tLMT\t1890\n"+ "\t\t\t5:53:20\t-\tHMT\t1941 Oct # Howrah Mean Time?\n"+ "\t\t\t6:30\t-\tBURT\t1942 May 15 # Burma Time\n"+ "\t\t\t5:30\t-\tIST\t1942 Sep\n"+ "\t\t\t6:30\t-\tBURT\t1951 Sep 30\n"+ "\t\t\t6:00\t-\tDACT\t1971 Mar 26 # Dacca Time\n"+ "\t\t\t6:00\t-\tBDT\t2009\n"+ "\t\t\t6:00\tDhaka\tBD%sT\n"+ "Zone\tAsia/Thimphu\t5:58:36 -\tLMT\t1947 Aug 15 # or Thimbu\n"+ "\t\t\t5:30\t-\tIST\t1987 Oct\n"+ "\t\t\t6:00\t-\tBTT\t# Bhutan Time\n"+ "Zone\tIndian/Chagos\t4:49:40\t-\tLMT\t1907\n"+ "\t\t\t5:00\t-\tIOT\t1996 # BIOT Time\n"+ "\t\t\t6:00\t-\tIOT\n"+ "Zone\tAsia/Brunei\t7:39:40 -\tLMT\t1926 Mar # Bandar Seri Begawan\n"+ "\t\t\t7:30\t-\tBNT\t1933\n"+ "\t\t\t8:00\t-\tBNT\n"+ "Zone\tAsia/Rangoon\t6:24:40 -\tLMT\t1880\t\t# or Yangon\n"+ "\t\t\t6:24:36\t-\tRMT\t1920\t # Rangoon Mean Time?\n"+ "\t\t\t6:30\t-\tBURT\t1942 May # Burma Time\n"+ "\t\t\t9:00\t-\tJST\t1945 May 3\n"+ "\t\t\t6:30\t-\tMMT\t\t # Myanmar Time\n"+ "Zone\tAsia/Phnom_Penh\t6:59:40 -\tLMT\t1906 Jun 9\n"+ "\t\t\t7:06:20\t-\tSMT\t1911 Mar 11 0:01 # Saigon MT?\n"+ "\t\t\t7:00\t-\tICT\t1912 May\n"+ "\t\t\t8:00\t-\tICT\t1931 May\n"+ "\t\t\t7:00\t-\tICT\n"+ "Rule\tShang\t1940\tonly\t-\tJun\t 3\t0:00\t1:00\tD\n"+ "Rule\tShang\t1940\t1941\t-\tOct\t 1\t0:00\t0\tS\n"+ "Rule\tShang\t1941\tonly\t-\tMar\t16\t0:00\t1:00\tD\n"+ "Rule\tPRC\t1986\tonly\t-\tMay\t 4\t0:00\t1:00\tD\n"+ "Rule\tPRC\t1986\t1991\t-\tSep\tSun>=11\t0:00\t0\tS\n"+ "Rule\tPRC\t1987\t1991\t-\tApr\tSun>=10\t0:00\t1:00\tD\n"+ "Zone\tAsia/Harbin\t8:26:44\t-\tLMT\t1928 # or Haerbin\n"+ "\t\t\t8:30\t-\tCHAT\t1932 Mar # Changbai Time\n"+ "\t\t\t8:00\t-\tCST\t1940\n"+ "\t\t\t9:00\t-\tCHAT\t1966 May\n"+ "\t\t\t8:30\t-\tCHAT\t1980 May\n"+ "\t\t\t8:00\tPRC\tC%sT\n"+ "Zone\tAsia/Shanghai\t8:05:52\t-\tLMT\t1928\n"+ "\t\t\t8:00\tShang\tC%sT\t1949\n"+ "\t\t\t8:00\tPRC\tC%sT\n"+ "Zone\tAsia/Chongqing\t7:06:20\t-\tLMT\t1928 # or Chungking\n"+ "\t\t\t7:00\t-\tLONT\t1980 May # Long-shu Time\n"+ "\t\t\t8:00\tPRC\tC%sT\n"+ "Zone\tAsia/Urumqi\t5:50:20\t-\tLMT\t1928 # or Urumchi\n"+ "\t\t\t6:00\t-\tURUT\t1980 May # Urumqi Time\n"+ "\t\t\t8:00\tPRC\tC%sT\n"+ "Zone\tAsia/Kashgar\t5:03:56\t-\tLMT\t1928 # or Kashi or Kaxgar\n"+ "\t\t\t5:30\t-\tKAST\t1940\t # Kashgar Time\n"+ "\t\t\t5:00\t-\tKAST\t1980 May\n"+ "\t\t\t8:00\tPRC\tC%sT\n"+ "Rule\tHK\t1941\tonly\t-\tApr\t1\t3:30\t1:00\tS\n"+ "Rule\tHK\t1941\tonly\t-\tSep\t30\t3:30\t0\t-\n"+ "Rule\tHK\t1946\tonly\t-\tApr\t20\t3:30\t1:00\tS\n"+ "Rule\tHK\t1946\tonly\t-\tDec\t1\t3:30\t0\t-\n"+ "Rule\tHK\t1947\tonly\t-\tApr\t13\t3:30\t1:00\tS\n"+ "Rule\tHK\t1947\tonly\t-\tDec\t30\t3:30\t0\t-\n"+ "Rule\tHK\t1948\tonly\t-\tMay\t2\t3:30\t1:00\tS\n"+ "Rule\tHK\t1948\t1951\t-\tOct\tlastSun\t3:30\t0\t-\n"+ "Rule\tHK\t1952\tonly\t-\tOct\t25\t3:30\t0\t-\n"+ "Rule\tHK\t1949\t1953\t-\tApr\tSun>=1\t3:30\t1:00\tS\n"+ "Rule\tHK\t1953\tonly\t-\tNov\t1\t3:30\t0\t-\n"+ "Rule\tHK\t1954\t1964\t-\tMar\tSun>=18\t3:30\t1:00\tS\n"+ "Rule\tHK\t1954\tonly\t-\tOct\t31\t3:30\t0\t-\n"+ "Rule\tHK\t1955\t1964\t-\tNov\tSun>=1\t3:30\t0\t-\n"+ "Rule\tHK\t1965\t1976\t-\tApr\tSun>=16\t3:30\t1:00\tS\n"+ "Rule\tHK\t1965\t1976\t-\tOct\tSun>=16\t3:30\t0\t-\n"+ "Rule\tHK\t1973\tonly\t-\tDec\t30\t3:30\t1:00\tS\n"+ "Rule\tHK\t1979\tonly\t-\tMay\tSun>=8\t3:30\t1:00\tS\n"+ "Rule\tHK\t1979\tonly\t-\tOct\tSun>=16\t3:30\t0\t-\n"+ "Zone\tAsia/Hong_Kong\t7:36:36 -\tLMT\t1904 Oct 30\n"+ "\t\t\t8:00\tHK\tHK%sT\t1941 Dec 25\n"+ "\t\t\t9:00\t-\tJST\t1945 Sep 15\n"+ "\t\t\t8:00\tHK\tHK%sT\n"+ "Rule\tTaiwan\t1945\t1951\t-\tMay\t1\t0:00\t1:00\tD\n"+ "Rule\tTaiwan\t1945\t1951\t-\tOct\t1\t0:00\t0\tS\n"+ "Rule\tTaiwan\t1952\tonly\t-\tMar\t1\t0:00\t1:00\tD\n"+ "Rule\tTaiwan\t1952\t1954\t-\tNov\t1\t0:00\t0\tS\n"+ "Rule\tTaiwan\t1953\t1959\t-\tApr\t1\t0:00\t1:00\tD\n"+ "Rule\tTaiwan\t1955\t1961\t-\tOct\t1\t0:00\t0\tS\n"+ "Rule\tTaiwan\t1960\t1961\t-\tJun\t1\t0:00\t1:00\tD\n"+ "Rule\tTaiwan\t1974\t1975\t-\tApr\t1\t0:00\t1:00\tD\n"+ "Rule\tTaiwan\t1974\t1975\t-\tOct\t1\t0:00\t0\tS\n"+ "Rule\tTaiwan\t1979\tonly\t-\tJun\t30\t0:00\t1:00\tD\n"+ "Rule\tTaiwan\t1979\tonly\t-\tSep\t30\t0:00\t0\tS\n"+ "Zone\tAsia/Taipei\t8:06:00 -\tLMT\t1896 # or Taibei or T'ai-pei\n"+ "\t\t\t8:00\tTaiwan\tC%sT\n"+ "Rule\tMacau\t1961\t1962\t-\tMar\tSun>=16\t3:30\t1:00\tS\n"+ "Rule\tMacau\t1961\t1964\t-\tNov\tSun>=1\t3:30\t0\t-\n"+ "Rule\tMacau\t1963\tonly\t-\tMar\tSun>=16\t0:00\t1:00\tS\n"+ "Rule\tMacau\t1964\tonly\t-\tMar\tSun>=16\t3:30\t1:00\tS\n"+ "Rule\tMacau\t1965\tonly\t-\tMar\tSun>=16\t0:00\t1:00\tS\n"+ "Rule\tMacau\t1965\tonly\t-\tOct\t31\t0:00\t0\t-\n"+ "Rule\tMacau\t1966\t1971\t-\tApr\tSun>=16\t3:30\t1:00\tS\n"+ "Rule\tMacau\t1966\t1971\t-\tOct\tSun>=16\t3:30\t0\t-\n"+ "Rule\tMacau\t1972\t1974\t-\tApr\tSun>=15\t0:00\t1:00\tS\n"+ "Rule\tMacau\t1972\t1973\t-\tOct\tSun>=15\t0:00\t0\t-\n"+ "Rule\tMacau\t1974\t1977\t-\tOct\tSun>=15\t3:30\t0\t-\n"+ "Rule\tMacau\t1975\t1977\t-\tApr\tSun>=15\t3:30\t1:00\tS\n"+ "Rule\tMacau\t1978\t1980\t-\tApr\tSun>=15\t0:00\t1:00\tS\n"+ "Rule\tMacau\t1978\t1980\t-\tOct\tSun>=15\t0:00\t0\t-\n"+ "Zone\tAsia/Macau\t7:34:20 -\tLMT\t1912\n"+ "\t\t\t8:00\tMacau\tMO%sT\t1999 Dec 20 # return to China\n"+ "\t\t\t8:00\tPRC\tC%sT\n"+ "Rule\tCyprus\t1975\tonly\t-\tApr\t13\t0:00\t1:00\tS\n"+ "Rule\tCyprus\t1975\tonly\t-\tOct\t12\t0:00\t0\t-\n"+ "Rule\tCyprus\t1976\tonly\t-\tMay\t15\t0:00\t1:00\tS\n"+ "Rule\tCyprus\t1976\tonly\t-\tOct\t11\t0:00\t0\t-\n"+ "Rule\tCyprus\t1977\t1980\t-\tApr\tSun>=1\t0:00\t1:00\tS\n"+ "Rule\tCyprus\t1977\tonly\t-\tSep\t25\t0:00\t0\t-\n"+ "Rule\tCyprus\t1978\tonly\t-\tOct\t2\t0:00\t0\t-\n"+ "Rule\tCyprus\t1979\t1997\t-\tSep\tlastSun\t0:00\t0\t-\n"+ "Rule\tCyprus\t1981\t1998\t-\tMar\tlastSun\t0:00\t1:00\tS\n"+ "Zone\tAsia/Nicosia\t2:13:28 -\tLMT\t1921 Nov 14\n"+ "\t\t\t2:00\tCyprus\tEE%sT\t1998 Sep\n"+ "\t\t\t2:00\tEUAsia\tEE%sT\n"+ "Link\tAsia/Nicosia\tEurope/Nicosia\n"+ "Zone\tAsia/Tbilisi\t2:59:16 -\tLMT\t1880\n"+ "\t\t\t2:59:16\t-\tTBMT\t1924 May 2 # Tbilisi Mean Time\n"+ "\t\t\t3:00\t-\tTBIT\t1957 Mar # Tbilisi Time\n"+ "\t\t\t4:00 RussiaAsia TBI%sT\t1991 Mar 31 2:00s\n"+ "\t\t\t3:00\t1:00\tTBIST\t1991 Apr 9 # independence\n"+ "\t\t\t3:00 RussiaAsia GE%sT\t1992 # Georgia Time\n"+ "\t\t\t3:00 E-EurAsia\tGE%sT\t1994 Sep lastSun\n"+ "\t\t\t4:00 E-EurAsia\tGE%sT\t1996 Oct lastSun\n"+ "\t\t\t4:00\t1:00\tGEST\t1997 Mar lastSun\n"+ "\t\t\t4:00 E-EurAsia\tGE%sT\t2004 Jun 27\n"+ "\t\t\t3:00 RussiaAsia\tGE%sT\t2005 Mar lastSun 2:00\n"+ "\t\t\t4:00\t-\tGET\n"+ "Zone\tAsia/Dili\t8:22:20 -\tLMT\t1912\n"+ "\t\t\t8:00\t-\tTLT\t1942 Feb 21 23:00 # E Timor Time\n"+ "\t\t\t9:00\t-\tJST\t1945 Sep 23\n"+ "\t\t\t9:00\t-\tTLT\t1976 May 3\n"+ "\t\t\t8:00\t-\tCIT\t2000 Sep 17 00:00\n"+ "\t\t\t9:00\t-\tTLT\n"+ "Zone\tAsia/Kolkata\t5:53:28 -\tLMT\t1880\t# Kolkata\n"+ "\t\t\t5:53:20\t-\tHMT\t1941 Oct # Howrah Mean Time?\n"+ "\t\t\t6:30\t-\tBURT\t1942 May 15 # Burma Time\n"+ "\t\t\t5:30\t-\tIST\t1942 Sep\n"+ "\t\t\t5:30\t1:00\tIST\t1945 Oct 15\n"+ "\t\t\t5:30\t-\tIST\n"+ "Zone Asia/Jakarta\t7:07:12 -\tLMT\t1867 Aug 10\n"+ "\t\t\t7:07:12\t-\tJMT\t1923 Dec 31 23:47:12 # Jakarta\n"+ "\t\t\t7:20\t-\tJAVT\t1932 Nov\t # Java Time\n"+ "\t\t\t7:30\t-\tWIT\t1942 Mar 23\n"+ "\t\t\t9:00\t-\tJST\t1945 Sep 23\n"+ "\t\t\t7:30\t-\tWIT\t1948 May\n"+ "\t\t\t8:00\t-\tWIT\t1950 May\n"+ "\t\t\t7:30\t-\tWIT\t1964\n"+ "\t\t\t7:00\t-\tWIT\n"+ "Zone Asia/Pontianak\t7:17:20\t-\tLMT\t1908 May\n"+ "\t\t\t7:17:20\t-\tPMT\t1932 Nov # Pontianak MT\n"+ "\t\t\t7:30\t-\tWIT\t1942 Jan 29\n"+ "\t\t\t9:00\t-\tJST\t1945 Sep 23\n"+ "\t\t\t7:30\t-\tWIT\t1948 May\n"+ "\t\t\t8:00\t-\tWIT\t1950 May\n"+ "\t\t\t7:30\t-\tWIT\t1964\n"+ "\t\t\t8:00\t-\tCIT\t1988 Jan 1\n"+ "\t\t\t7:00\t-\tWIT\n"+ "Zone Asia/Makassar\t7:57:36 -\tLMT\t1920\n"+ "\t\t\t7:57:36\t-\tMMT\t1932 Nov # Macassar MT\n"+ "\t\t\t8:00\t-\tCIT\t1942 Feb 9\n"+ "\t\t\t9:00\t-\tJST\t1945 Sep 23\n"+ "\t\t\t8:00\t-\tCIT\n"+ "Zone Asia/Jayapura\t9:22:48 -\tLMT\t1932 Nov\n"+ "\t\t\t9:00\t-\tEIT\t1944 Sep 1\n"+ "\t\t\t9:30\t-\tCST\t1964\n"+ "\t\t\t9:00\t-\tEIT\n"+ "Rule\tIran\t1978\t1980\t-\tMar\t21\t0:00\t1:00\tD\n"+ "Rule\tIran\t1978\tonly\t-\tOct\t21\t0:00\t0\tS\n"+ "Rule\tIran\t1979\tonly\t-\tSep\t19\t0:00\t0\tS\n"+ "Rule\tIran\t1980\tonly\t-\tSep\t23\t0:00\t0\tS\n"+ "Rule\tIran\t1991\tonly\t-\tMay\t 3\t0:00\t1:00\tD\n"+ "Rule\tIran\t1992\t1995\t-\tMar\t22\t0:00\t1:00\tD\n"+ "Rule\tIran\t1991\t1995\t-\tSep\t22\t0:00\t0\tS\n"+ "Rule\tIran\t1996\tonly\t-\tMar\t21\t0:00\t1:00\tD\n"+ "Rule\tIran\t1996\tonly\t-\tSep\t21\t0:00\t0\tS\n"+ "Rule\tIran\t1997\t1999\t-\tMar\t22\t0:00\t1:00\tD\n"+ "Rule\tIran\t1997\t1999\t-\tSep\t22\t0:00\t0\tS\n"+ "Rule\tIran\t2000\tonly\t-\tMar\t21\t0:00\t1:00\tD\n"+ "Rule\tIran\t2000\tonly\t-\tSep\t21\t0:00\t0\tS\n"+ "Rule\tIran\t2001\t2003\t-\tMar\t22\t0:00\t1:00\tD\n"+ "Rule\tIran\t2001\t2003\t-\tSep\t22\t0:00\t0\tS\n"+ "Rule\tIran\t2004\tonly\t-\tMar\t21\t0:00\t1:00\tD\n"+ "Rule\tIran\t2004\tonly\t-\tSep\t21\t0:00\t0\tS\n"+ "Rule\tIran\t2005\tonly\t-\tMar\t22\t0:00\t1:00\tD\n"+ "Rule\tIran\t2005\tonly\t-\tSep\t22\t0:00\t0\tS\n"+ "Rule\tIran\t2008\tonly\t-\tMar\t21\t0:00\t1:00\tD\n"+ "Rule\tIran\t2008\tonly\t-\tSep\t21\t0:00\t0\tS\n"+ "Rule\tIran\t2009\t2011\t-\tMar\t22\t0:00\t1:00\tD\n"+ "Rule\tIran\t2009\t2011\t-\tSep\t22\t0:00\t0\tS\n"+ "Rule\tIran\t2012\tonly\t-\tMar\t21\t0:00\t1:00\tD\n"+ "Rule\tIran\t2012\tonly\t-\tSep\t21\t0:00\t0\tS\n"+ "Rule\tIran\t2013\t2015\t-\tMar\t22\t0:00\t1:00\tD\n"+ "Rule\tIran\t2013\t2015\t-\tSep\t22\t0:00\t0\tS\n"+ "Rule\tIran\t2016\tonly\t-\tMar\t21\t0:00\t1:00\tD\n"+ "Rule\tIran\t2016\tonly\t-\tSep\t21\t0:00\t0\tS\n"+ "Rule\tIran\t2017\t2019\t-\tMar\t22\t0:00\t1:00\tD\n"+ "Rule\tIran\t2017\t2019\t-\tSep\t22\t0:00\t0\tS\n"+ "Rule\tIran\t2020\tonly\t-\tMar\t21\t0:00\t1:00\tD\n"+ "Rule\tIran\t2020\tonly\t-\tSep\t21\t0:00\t0\tS\n"+ "Rule\tIran\t2021\t2023\t-\tMar\t22\t0:00\t1:00\tD\n"+ "Rule\tIran\t2021\t2023\t-\tSep\t22\t0:00\t0\tS\n"+ "Rule\tIran\t2024\tonly\t-\tMar\t21\t0:00\t1:00\tD\n"+ "Rule\tIran\t2024\tonly\t-\tSep\t21\t0:00\t0\tS\n"+ "Rule\tIran\t2025\t2027\t-\tMar\t22\t0:00\t1:00\tD\n"+ "Rule\tIran\t2025\t2027\t-\tSep\t22\t0:00\t0\tS\n"+ "Rule\tIran\t2028\t2029\t-\tMar\t21\t0:00\t1:00\tD\n"+ "Rule\tIran\t2028\t2029\t-\tSep\t21\t0:00\t0\tS\n"+ "Rule\tIran\t2030\t2031\t-\tMar\t22\t0:00\t1:00\tD\n"+ "Rule\tIran\t2030\t2031\t-\tSep\t22\t0:00\t0\tS\n"+ "Rule\tIran\t2032\t2033\t-\tMar\t21\t0:00\t1:00\tD\n"+ "Rule\tIran\t2032\t2033\t-\tSep\t21\t0:00\t0\tS\n"+ "Rule\tIran\t2034\t2035\t-\tMar\t22\t0:00\t1:00\tD\n"+ "Rule\tIran\t2034\t2035\t-\tSep\t22\t0:00\t0\tS\n"+ "Rule\tIran\t2036\t2037\t-\tMar\t21\t0:00\t1:00\tD\n"+ "Rule\tIran\t2036\t2037\t-\tSep\t21\t0:00\t0\tS\n"+ "Zone\tAsia/Tehran\t3:25:44\t-\tLMT\t1916\n"+ "\t\t\t3:25:44\t-\tTMT\t1946\t# Tehran Mean Time\n"+ "\t\t\t3:30\t-\tIRST\t1977 Nov\n"+ "\t\t\t4:00\tIran\tIR%sT\t1979\n"+ "\t\t\t3:30\tIran\tIR%sT\n"+ "Rule\tIraq\t1982\tonly\t-\tMay\t1\t0:00\t1:00\tD\n"+ "Rule\tIraq\t1982\t1984\t-\tOct\t1\t0:00\t0\tS\n"+ "Rule\tIraq\t1983\tonly\t-\tMar\t31\t0:00\t1:00\tD\n"+ "Rule\tIraq\t1984\t1985\t-\tApr\t1\t0:00\t1:00\tD\n"+ "Rule\tIraq\t1985\t1990\t-\tSep\tlastSun\t1:00s\t0\tS\n"+ "Rule\tIraq\t1986\t1990\t-\tMar\tlastSun\t1:00s\t1:00\tD\n"+ "Rule\tIraq\t1991\t2007\t-\tApr\t 1\t3:00s\t1:00\tD\n"+ "Rule\tIraq\t1991\t2007\t-\tOct\t 1\t3:00s\t0\tS\n"+ "Zone\tAsia/Baghdad\t2:57:40\t-\tLMT\t1890\n"+ "\t\t\t2:57:36\t-\tBMT\t1918\t # Baghdad Mean Time?\n"+ "\t\t\t3:00\t-\tAST\t1982 May\n"+ "\t\t\t3:00\tIraq\tA%sT\n"+ "Rule\tZion\t1940\tonly\t-\tJun\t 1\t0:00\t1:00\tD\n"+ "Rule\tZion\t1942\t1944\t-\tNov\t 1\t0:00\t0\tS\n"+ "Rule\tZion\t1943\tonly\t-\tApr\t 1\t2:00\t1:00\tD\n"+ "Rule\tZion\t1944\tonly\t-\tApr\t 1\t0:00\t1:00\tD\n"+ "Rule\tZion\t1945\tonly\t-\tApr\t16\t0:00\t1:00\tD\n"+ "Rule\tZion\t1945\tonly\t-\tNov\t 1\t2:00\t0\tS\n"+ "Rule\tZion\t1946\tonly\t-\tApr\t16\t2:00\t1:00\tD\n"+ "Rule\tZion\t1946\tonly\t-\tNov\t 1\t0:00\t0\tS\n"+ "Rule\tZion\t1948\tonly\t-\tMay\t23\t0:00\t2:00\tDD\n"+ "Rule\tZion\t1948\tonly\t-\tSep\t 1\t0:00\t1:00\tD\n"+ "Rule\tZion\t1948\t1949\t-\tNov\t 1\t2:00\t0\tS\n"+ "Rule\tZion\t1949\tonly\t-\tMay\t 1\t0:00\t1:00\tD\n"+ "Rule\tZion\t1950\tonly\t-\tApr\t16\t0:00\t1:00\tD\n"+ "Rule\tZion\t1950\tonly\t-\tSep\t15\t3:00\t0\tS\n"+ "Rule\tZion\t1951\tonly\t-\tApr\t 1\t0:00\t1:00\tD\n"+ "Rule\tZion\t1951\tonly\t-\tNov\t11\t3:00\t0\tS\n"+ "Rule\tZion\t1952\tonly\t-\tApr\t20\t2:00\t1:00\tD\n"+ "Rule\tZion\t1952\tonly\t-\tOct\t19\t3:00\t0\tS\n"+ "Rule\tZion\t1953\tonly\t-\tApr\t12\t2:00\t1:00\tD\n"+ "Rule\tZion\t1953\tonly\t-\tSep\t13\t3:00\t0\tS\n"+ "Rule\tZion\t1954\tonly\t-\tJun\t13\t0:00\t1:00\tD\n"+ "Rule\tZion\t1954\tonly\t-\tSep\t12\t0:00\t0\tS\n"+ "Rule\tZion\t1955\tonly\t-\tJun\t11\t2:00\t1:00\tD\n"+ "Rule\tZion\t1955\tonly\t-\tSep\t11\t0:00\t0\tS\n"+ "Rule\tZion\t1956\tonly\t-\tJun\t 3\t0:00\t1:00\tD\n"+ "Rule\tZion\t1956\tonly\t-\tSep\t30\t3:00\t0\tS\n"+ "Rule\tZion\t1957\tonly\t-\tApr\t29\t2:00\t1:00\tD\n"+ "Rule\tZion\t1957\tonly\t-\tSep\t22\t0:00\t0\tS\n"+ "Rule\tZion\t1974\tonly\t-\tJul\t 7\t0:00\t1:00\tD\n"+ "Rule\tZion\t1974\tonly\t-\tOct\t13\t0:00\t0\tS\n"+ "Rule\tZion\t1975\tonly\t-\tApr\t20\t0:00\t1:00\tD\n"+ "Rule\tZion\t1975\tonly\t-\tAug\t31\t0:00\t0\tS\n"+ "Rule\tZion\t1985\tonly\t-\tApr\t14\t0:00\t1:00\tD\n"+ "Rule\tZion\t1985\tonly\t-\tSep\t15\t0:00\t0\tS\n"+ "Rule\tZion\t1986\tonly\t-\tMay\t18\t0:00\t1:00\tD\n"+ "Rule\tZion\t1986\tonly\t-\tSep\t 7\t0:00\t0\tS\n"+ "Rule\tZion\t1987\tonly\t-\tApr\t15\t0:00\t1:00\tD\n"+ "Rule\tZion\t1987\tonly\t-\tSep\t13\t0:00\t0\tS\n"+ "Rule\tZion\t1988\tonly\t-\tApr\t 9\t0:00\t1:00\tD\n"+ "Rule\tZion\t1988\tonly\t-\tSep\t 3\t0:00\t0\tS\n"+ "Rule\tZion\t1989\tonly\t-\tApr\t30\t0:00\t1:00\tD\n"+ "Rule\tZion\t1989\tonly\t-\tSep\t 3\t0:00\t0\tS\n"+ "Rule\tZion\t1990\tonly\t-\tMar\t25\t0:00\t1:00\tD\n"+ "Rule\tZion\t1990\tonly\t-\tAug\t26\t0:00\t0\tS\n"+ "Rule\tZion\t1991\tonly\t-\tMar\t24\t0:00\t1:00\tD\n"+ "Rule\tZion\t1991\tonly\t-\tSep\t 1\t0:00\t0\tS\n"+ "Rule\tZion\t1992\tonly\t-\tMar\t29\t0:00\t1:00\tD\n"+ "Rule\tZion\t1992\tonly\t-\tSep\t 6\t0:00\t0\tS\n"+ "Rule\tZion\t1993\tonly\t-\tApr\t 2\t0:00\t1:00\tD\n"+ "Rule\tZion\t1993\tonly\t-\tSep\t 5\t0:00\t0\tS\n"+ "Rule\tZion\t1994\tonly\t-\tApr\t 1\t0:00\t1:00\tD\n"+ "Rule\tZion\t1994\tonly\t-\tAug\t28\t0:00\t0\tS\n"+ "Rule\tZion\t1995\tonly\t-\tMar\t31\t0:00\t1:00\tD\n"+ "Rule\tZion\t1995\tonly\t-\tSep\t 3\t0:00\t0\tS\n"+ "Rule\tZion\t1996\tonly\t-\tMar\t15\t0:00\t1:00\tD\n"+ "Rule\tZion\t1996\tonly\t-\tSep\t16\t0:00\t0\tS\n"+ "Rule\tZion\t1997\tonly\t-\tMar\t21\t0:00\t1:00\tD\n"+ "Rule\tZion\t1997\tonly\t-\tSep\t14\t0:00\t0\tS\n"+ "Rule\tZion\t1998\tonly\t-\tMar\t20\t0:00\t1:00\tD\n"+ "Rule\tZion\t1998\tonly\t-\tSep\t 6\t0:00\t0\tS\n"+ "Rule\tZion\t1999\tonly\t-\tApr\t 2\t2:00\t1:00\tD\n"+ "Rule\tZion\t1999\tonly\t-\tSep\t 3\t2:00\t0\tS\n"+ "Rule\tZion\t2000\tonly\t-\tApr\t14\t2:00\t1:00\tD\n"+ "Rule\tZion\t2000\tonly\t-\tOct\t 6\t1:00\t0\tS\n"+ "Rule\tZion\t2001\tonly\t-\tApr\t 9\t1:00\t1:00\tD\n"+ "Rule\tZion\t2001\tonly\t-\tSep\t24\t1:00\t0\tS\n"+ "Rule\tZion\t2002\tonly\t-\tMar\t29\t1:00\t1:00\tD\n"+ "Rule\tZion\t2002\tonly\t-\tOct\t 7\t1:00\t0\tS\n"+ "Rule\tZion\t2003\tonly\t-\tMar\t28\t1:00\t1:00\tD\n"+ "Rule\tZion\t2003\tonly\t-\tOct\t 3\t1:00\t0\tS\n"+ "Rule\tZion\t2004\tonly\t-\tApr\t 7\t1:00\t1:00\tD\n"+ "Rule\tZion\t2004\tonly\t-\tSep\t22\t1:00\t0\tS\n"+ "Rule\tZion\t2005\tonly\t-\tApr\t 1\t2:00\t1:00\tD\n"+ "Rule\tZion\t2005\tonly\t-\tOct\t 9\t2:00\t0\tS\n"+ "Rule\tZion\t2006\t2010\t-\tMar\tFri>=26\t2:00\t1:00\tD\n"+ "Rule\tZion\t2006\tonly\t-\tOct\t 1\t2:00\t0\tS\n"+ "Rule\tZion\t2007\tonly\t-\tSep\t16\t2:00\t0\tS\n"+ "Rule\tZion\t2008\tonly\t-\tOct\t 5\t2:00\t0\tS\n"+ "Rule\tZion\t2009\tonly\t-\tSep\t27\t2:00\t0\tS\n"+ "Rule\tZion\t2010\tonly\t-\tSep\t12\t2:00\t0\tS\n"+ "Rule\tZion\t2011\tonly\t-\tApr\t 1\t2:00\t1:00\tD\n"+ "Rule\tZion\t2011\tonly\t-\tOct\t 2\t2:00\t0\tS\n"+ "Rule\tZion\t2012\t2015\t-\tMar\tFri>=26\t2:00\t1:00\tD\n"+ "Rule\tZion\t2012\tonly\t-\tSep\t23\t2:00\t0\tS\n"+ "Rule\tZion\t2013\tonly\t-\tSep\t 8\t2:00\t0\tS\n"+ "Rule\tZion\t2014\tonly\t-\tSep\t28\t2:00\t0\tS\n"+ "Rule\tZion\t2015\tonly\t-\tSep\t20\t2:00\t0\tS\n"+ "Rule\tZion\t2016\tonly\t-\tApr\t 1\t2:00\t1:00\tD\n"+ "Rule\tZion\t2016\tonly\t-\tOct\t 9\t2:00\t0\tS\n"+ "Rule\tZion\t2017\t2021\t-\tMar\tFri>=26\t2:00\t1:00\tD\n"+ "Rule\tZion\t2017\tonly\t-\tSep\t24\t2:00\t0\tS\n"+ "Rule\tZion\t2018\tonly\t-\tSep\t16\t2:00\t0\tS\n"+ "Rule\tZion\t2019\tonly\t-\tOct\t 6\t2:00\t0\tS\n"+ "Rule\tZion\t2020\tonly\t-\tSep\t27\t2:00\t0\tS\n"+ "Rule\tZion\t2021\tonly\t-\tSep\t12\t2:00\t0\tS\n"+ "Rule\tZion\t2022\tonly\t-\tApr\t 1\t2:00\t1:00\tD\n"+ "Rule\tZion\t2022\tonly\t-\tOct\t 2\t2:00\t0\tS\n"+ "Rule\tZion\t2023\t2032\t-\tMar\tFri>=26\t2:00\t1: