ICU-795 move the documentation into the user guide

X-SVN-Rev: 3697
This commit is contained in:
Markus Scherer 2001-02-21 01:18:56 +00:00
parent 8fff525e76
commit 8e732e59cb
19 changed files with 0 additions and 3296 deletions

1
.gitattributes vendored
View file

@ -62,7 +62,6 @@ icu4c/data/wordBE.brk -text
icu4c/data/wordLE.brk -text
icu4c/data/word_thBE.brk -text
icu4c/data/word_thLE.brk -text
icu4c/docs/collflow.gif -text
icu4c/source/data/UCATable.dat -text
icu4c/source/data/brkitr/charBE.brk -text
icu4c/source/data/brkitr/charLE.brk -text

View file

@ -1,110 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 9">
<meta name=Originator content="Microsoft Word 9">
<link rel=File-List href="./BreakIterator_files/filelist.xml">
<link rel=Edit-Time-Data href="./BreakIterator_files/editdata.mso">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<title>The working of class BreakIterator (Text Boundaries)</title>
<!--[if gte mso 9]><xml>
<o:DocumentProperties>
<o:Author>Helena Shih</o:Author>
<o:Template>Normal</o:Template>
<o:LastAuthor>Helena Shih</o:LastAuthor>
<o:Revision>2</o:Revision>
<o:TotalTime>1</o:TotalTime>
<o:Created>2000-01-15T02:16:00Z</o:Created>
<o:LastSaved>2000-01-15T02:17:00Z</o:LastSaved>
<o:Pages>1</o:Pages>
<o:Words>44</o:Words>
<o:Characters>251</o:Characters>
<o:Company>IBM</o:Company>
<o:Lines>2</o:Lines>
<o:Paragraphs>1</o:Paragraphs>
<o:CharactersWithSpaces>308</o:CharactersWithSpaces>
<o:Version>9.2720</o:Version>
</o:DocumentProperties>
</xml><![endif]-->
<style>
<!--
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-parent:"";
margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p
{font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
@page Section1
{size:8.5in 11.0in;
margin:1.0in 1.25in 1.0in 1.25in;
mso-header-margin:.5in;
mso-footer-margin:.5in;
mso-paper-source:0;}
div.Section1
{page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1027"/>
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1"/>
</o:shapelayout></xml><![endif]-->
</head>
<body bgcolor=white lang=EN-US link=blue vlink=blue style='tab-interval:.5in'>
<div class=Section1>
<h1>International Components for Unicode </h1>
<h2>The working of class BreakIterator (Text Boundaries)</h2>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
<p><img width=535 height=674 id="_x0000_i1026" src=BreakIteratorGrafik.gif
alt=BreakIteratorGrafik.gif></p>
<p>&nbsp;</p>
<p><a href="../readme.html">ReadMe for </a><a href="../readme.html#API">IBM's
International Classes for Unicode</a></p>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
</div>
</body>
</html>

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8552a6a59ec22af073bf65b36069cf8a0eb8870ea22ed0dc379cd2fe2503ebeb
size 1261

View file

@ -1,515 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 9">
<meta name=Originator content="Microsoft Word 9">
<link rel=File-List href="./Collate_files/filelist.xml">
<link rel=Edit-Time-Data href="./Collate_files/editdata.mso">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<title>International Classes for Unicode - Collation</title>
<!--[if gte mso 9]><xml>
<o:DocumentProperties>
<o:Author>Helena Shih</o:Author>
<o:Template>Normal</o:Template>
<o:LastAuthor>Helena Shih</o:LastAuthor>
<o:Revision>2</o:Revision>
<o:TotalTime>0</o:TotalTime>
<o:Created>2000-01-15T02:20:00Z</o:Created>
<o:LastSaved>2000-01-15T02:20:00Z</o:LastSaved>
<o:Pages>4</o:Pages>
<o:Words>982</o:Words>
<o:Characters>5599</o:Characters>
<o:Company>IBM</o:Company>
<o:Lines>46</o:Lines>
<o:Paragraphs>11</o:Paragraphs>
<o:CharactersWithSpaces>6875</o:CharactersWithSpaces>
<o:Version>9.2720</o:Version>
</o:DocumentProperties>
</xml><![endif]-->
<style>
<!--
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-parent:"";
margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p
{font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
@page Section1
{size:8.5in 11.0in;
margin:1.0in 1.25in 1.0in 1.25in;
mso-header-margin:.5in;
mso-footer-margin:.5in;
mso-paper-source:0;}
div.Section1
{page:Section1;}
/* List Definitions */
@list l0
{mso-list-id:56786128;
mso-list-type:hybrid;
mso-list-template-ids:316935058 799580840 -2129604566 1894698424 -1886861812 1076558752 -1316478726 -1694838522 -1962102214 -432647774;}
@list l0:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l1
{mso-list-id:218128614;
mso-list-type:hybrid;
mso-list-template-ids:726427572 -220806470 -535028662 -1139008068 926857880 19293176 -1336270008 -629910652 1961381030 -112671298;}
@list l1:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l2
{mso-list-id:398596625;
mso-list-type:hybrid;
mso-list-template-ids:1581174674 -1457777898 -2089911548 -358428948 -724424496 486305342 -803443362 102692998 -557393154 -905049134;}
@list l3
{mso-list-id:399836585;
mso-list-type:hybrid;
mso-list-template-ids:-1362098886 105021812 -1203221970 402953214 116268298 1957075642 -2103935390 135310026 2024683000 -1150503632;}
@list l4
{mso-list-id:512963647;
mso-list-type:hybrid;
mso-list-template-ids:870891966 718416036 1606166768 -734915736 -457166330 1502492706 -472354846 -1617501690 -1298739844 -1263368320;}
@list l4:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l4:level2
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:1.0in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:"Courier New";
mso-bidi-font-family:"Times New Roman";}
@list l5
{mso-list-id:1228296673;
mso-list-type:hybrid;
mso-list-template-ids:-1126373434 672300220 -1390479766 -247709302 -1005183176 586437888 1683491832 2053804606 -1192436542 -1064926734;}
@list l5:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l6
{mso-list-id:1292789779;
mso-list-type:hybrid;
mso-list-template-ids:-517678870 758258566 1452305524 223270358 -53846700 -513747388 -2068313458 1590586680 -1770905550 -1947821216;}
@list l6:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l7
{mso-list-id:1316833148;
mso-list-type:hybrid;
mso-list-template-ids:1332113200 -424870104 1051208176 892489996 -1233066968 -1810460500 -1022461362 2044245910 -1736145250 -1083136974;}
@list l7:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l8
{mso-list-id:1327392266;
mso-list-type:hybrid;
mso-list-template-ids:-1403883808 -326201746 -1498098978 273696058 1220037092 978733230 -1686724236 -2129999476 1994688346 -162764280;}
@list l8:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l9
{mso-list-id:1662541158;
mso-list-type:hybrid;
mso-list-template-ids:-1664995996 -1721883820 -1345845536 314467622 -225125196 2134916302 970646716 2097594674 1329790124 -20539764;}
@list l9:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l10
{mso-list-id:1800419391;
mso-list-type:hybrid;
mso-list-template-ids:-160151480 1490450160 1649709476 -912377276 -843295976 955542454 -958090392 1090130474 897190372 -1064773102;}
@list l10:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l11
{mso-list-id:1804076982;
mso-list-type:hybrid;
mso-list-template-ids:26769352 -1273701986 819625222 -1355785140 1125281256 -561239646 -1265353568 721578390 882827536 -1507570576;}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1027"/>
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1"/>
</o:shapelayout></xml><![endif]-->
</head>
<body bgcolor=white lang=EN-US link=blue vlink=blue style='tab-interval:.5in'>
<div class=Section1>
<h1>International Components for Unicode</h1>
<h2>Collation Framework</h2>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
<h3><u>Contents</u></h3>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l4 level1 lfo1;tab-stops:list .5in'>What is collation?</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l4 level1 lfo1;tab-stops:list .5in'>The rule symbols and their
usage</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l4 level1 lfo1;tab-stops:list .5in'>Interesting Examples</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l4 level1 lfo1;tab-stops:list .5in'>Implementation Details</li>
<ul type=circle>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto;mso-list:l4 level2 lfo1;tab-stops:list 1.0in'>Building the Collation
Table</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto;mso-list:l4 level2 lfo1;tab-stops:list 1.0in'>Incremental Comparison
Diagram</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto;mso-list:l4 level2 lfo1;tab-stops:list 1.0in'>Generating a Collation
Table</li>
</ul>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l4 level1 lfo1;tab-stops:list .5in'>Q and A</li>
</ul>
<h3><u>What is collation?</u></h3>
<p>Collation framework performs locale-sensitive string comparison. The user of
this class can use this class to build searching and sorting routines for
natural language text, build table of contents for large documentation or
create efficient index look up for database entries.<br>
<br>
The ICU Collator classes provides services to allow: </p>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l10 level1 lfo2;tab-stops:list .5in'>Simple, data-driven, table
based collation.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l10 level1 lfo2;tab-stops:list .5in'>Easily customizble for your
needs.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l10 level1 lfo2;tab-stops:list .5in'>Merging different resources
made possible.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l10 level1 lfo2;tab-stops:list .5in'>Behind the scene
transforming the ASCII data file into a binary file for efficiency.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l10 level1 lfo2;tab-stops:list .5in'>Offering both incremental
comparison for simple comparison and collation keys for batch processes.</li>
</ul>
<p>There are 4 comparison levels in the Collator classes to allow different
levels of difference to be considered significant: </p>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l6 level1 lfo3;tab-stops:list .5in'>Primary: a letter difference.
For example, 'a' and 'b'.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l6 level1 lfo3;tab-stops:list .5in'>Secondary: an accent
difference. For example, 'ä' and 'å'.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l6 level1 lfo3;tab-stops:list .5in'>Tertiary: a case difference.
For example, 'a' and 'A'.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l6 level1 lfo3;tab-stops:list .5in'>Identical: no difference. For
example, 'a' and 'a'.</li>
</ul>
<h3><u>The rule symbols and their usage</u></h3>
<p>A string is decomposed to be one or more collation elements when using with
the collation classes. The collation rules specify the order of these collation
elements. The collation table is composed of a list of collation rules, where
each rule is of three forms: </p>
<ol start=1 type=1>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l3 level1 lfo4;tab-stops:list .5in'>&lt;modifier&gt;</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l3 level1 lfo4;tab-stops:list .5in'>&lt;relation&gt;
&lt;text-argument&gt;</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l3 level1 lfo4;tab-stops:list .5in'>&lt;reset&gt;
&lt;text-argument1&gt; &lt;relation&gt; &lt;text-argument2&gt;</li>
</ol>
<h4>&lt;modifier&gt;</h4>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l7 level1 lfo5;tab-stops:list .5in'>'@': French secondary, accent
weights sorted backwards.</li>
</ul>
<h4>&lt;text-argument&gt;</h4>
<p>A text-argument is any sequence of characters, excluding special characters
(that is, common whitespace characters [0009-000D, 0020] and rule syntax
characters [0021-002F, 003A-0040, 005B-0060, 007B-007E]). If those characters
are desired, you can put them in single quotes (e.g. ampersand =&gt; '&amp;').
Note that unquoted white space characters are ignored; e.g. &quot;b c&quot; is
treated as &quot;bc&quot;.</p>
<h4>&lt;relation&gt;</h4>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l9 level1 lfo6;tab-stops:list .5in'>'&lt;' : Greater, as a letter
difference (primary)</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l9 level1 lfo6;tab-stops:list .5in'>';' : Greater, as an accent
difference (secondary)</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l9 level1 lfo6;tab-stops:list .5in'>',' : Greater, as a case
difference (tertiary)</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l9 level1 lfo6;tab-stops:list .5in'>'=' : Equal</li>
</ul>
<h4>&lt;reset&gt;</h4>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l0 level1 lfo7;tab-stops:list .5in'>'&amp;': Indicates that
text-argument2 follows the position to where the reset text-argument1
would be sorted.</li>
</ul>
<h3><u>Interesting Examples</u></h3>
<p>The following is a list of interesting examples of the rules and some string
comparison results using those rules. The comparison relation will be denoted
as &quot;&lt;&quot; of primary difference of less than, &quot;&lt;&lt;&quot; of
secondary difference of less than, &quot;&lt;&lt;&lt;&quot; of teriatry
difference of less than and &quot;==&quot; of equal to relationships: </p>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l1 level1 lfo8;tab-stops:list .5in'>Rule &quot; a, A &lt; b, B
&lt; c, C &lt; ch, cH, Ch, CH &lt; d, D &lt; e, E&quot;: this rule simply
says, sorts letters 'a', 'b', 'c', 'd' and 'e' in that order with primary
weights. 'ch' is sorted as a significant letter between 'c' and 'd' with
primary weights and upper cased letters sorts after lower cased letters
with tertiary weights. For example, &quot;abc&quot; &lt;&lt;&lt;
&quot;ABC&quot; and &quot;achb&quot; &lt; &quot;adb&quot;.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l1 level1 lfo8;tab-stops:list .5in'>Rule &quot; a, A &lt; b, B
&lt; c, C &lt; d, D &lt; e, E &amp; AE; ä &quot;: this will sort letters
'a', 'b', 'c', 'd' and 'e' in that order with primary weights. 'ä' will
sort as with a secondary less than to the sequence of 'A' following 'E'.
For example, &quot;aeb&quot; &lt;&lt; &quot;äb&quot; and &quot;acb&quot;
&lt; &quot;äb&quot;.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l1 level1 lfo8;tab-stops:list .5in'>Rule &quot;.... q, Q &amp;
Question'-'mark = '?' ....&quot;: the rule shows how to sort symbols to be
equivalent to the corrsponding text. In this example, &quot;?&quot; ==
&quot;Question-mark&quot;. Note that the special symbols need to be quoted
in the rule.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l1 level1 lfo8;tab-stops:list .5in'>Rule &quot;.... &amp; aa ; a-
&amp; ee ; e- &amp; ii ; i- &amp; oo ; o- &amp; uu ; u- ....&quot;: this
rule demonstrates how to specify prolonged vowels in Japanese. In this
case, &quot;aa&quot; is sorted as with a secondary less than to
&quot;a-&quot;. For example, &quot;baab&quot; &lt;&lt; &quot;ba-b&quot;.</li>
</ul>
<h3><u>Implementation Details</u></h3>
<p>Three parts of the code will be carefully examined here: </p>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l5 level1 lfo9;tab-stops:list .5in'>Building the collation rule
table. (see mergecol.cpp, ptnentry.cpp and tblcoll.cpp)</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l5 level1 lfo9;tab-stops:list .5in'>Incremental comparison
algorithm for simple string comparison. (RuleBasedCollator.compare() in
tblcoll.cpp)</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l5 level1 lfo9;tab-stops:list .5in'>Collation key generation and
its format. (RuleBasedCollator.getCollationKey() in tblcoll.cpp)</li>
</ul>
<h3><u>Building the Collation Table</u></h3>
<p>The process of building a collation table is as following: </p>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l8 level1 lfo10;tab-stops:list .5in'>Parse the rule text into a
list of pattern entries. Each pattern has the content of current core
characters, extension character and the strength relation. (In
ptnentry.cpp)</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l8 level1 lfo10;tab-stops:list .5in'>Inserts each entry at the
correct position based on the &lt;reset&gt; arguements. (In mergecol.cpp)</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l8 level1 lfo10;tab-stops:list .5in'>Build the compacted, highly
efficient look-up table based on the list of pattern entries. (In
tblcoll.cpp)</li>
</ul>
<p>&nbsp;</p>
<h3><u>Incremental Comparison Diagram</u></h3>
<p>&nbsp;</p>
<p><img width=468 height=800 id="_x0000_i1026" src=collflow.gif></p>
<h3><u>Generating a Collation Key</u></h3>
<p>The control flow of generating a collation key is as the following: </p>
<ol start=1 type=1>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l2 level1 lfo11;tab-stops:list .5in'>Retrieve the next collation
element of the source string. Go to step 5 when reaches the end of string.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l2 level1 lfo11;tab-stops:list .5in'>Append the primary weight of
element to the primary weight buffer.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l2 level1 lfo11;tab-stops:list .5in'>Checks if it's necessary to
process secondary weights. If so, append the secondary weights to the
secondary weight buffer. If the collator is marked to process French
secondary, reverse the order of all the secondary weights before encounters
the next primary weight.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l2 level1 lfo11;tab-stops:list .5in'>Checks if it's necessary to
process tertiary weights. If so, append the tertiary weights to the
tertiary weight buffer. </li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l2 level1 lfo11;tab-stops:list .5in'>Concatenate the primary
weight buffer, secondary weight buffer and tertiary weight buffer and add
a null delimiter among the weights. Return the concatenated buffer as the
collation key.</li>
</ol>
<h3><u>Q &amp; A</u></h3>
<ol start=1 type=1>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l11 level1 lfo12;tab-stops:list .5in'>How do I customize the
collation sequence?<br>
A: Using the RuleBasedCollator constructor, the user of the collation
framework can then create his/her own Collator with a customized rule.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l11 level1 lfo12;tab-stops:list .5in'>Will the collation framwork
support the surrogate and private use characters?<br>
A: It's part of our future work items.&nbsp; However, no firm schedule has
been set for this yet.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l11 level1 lfo12;tab-stops:list .5in'>How does the French
secondary turn-on affect the generation of collation key?<br>
A: In French, the secondary differences are sorted backwards so this will
invoke the collation key to reverse the secondary weights in the keys.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l11 level1 lfo12;tab-stops:list .5in'>Is there any support for
composing characters? If so, how does it work?<br>
A: Yes, it is based on the Normalizer interface.&nbsp; When a expanding
character is detected, the rule builder will construct collation entries
for the precomposed version internally to handle the composed characters
correctly.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l11 level1 lfo12;tab-stops:list .5in'>Is there any plan for
performance improvement, for instance, contracting/expanding character
lookup?<br>
A: Yes, the performance enhancement is an ongoing work item.</li>
</ol>
<p>&nbsp;</p>
<p><a href="../readme.html">ReadMe for </a><a href="../readme.html#API">International
Components for Unicode</a></p>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
</div>
</body>
</html>

View file

@ -1,33 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<title>Text Boundaries</title>
</head>
<body bgcolor="#FFFFFF">
<h1>Text Boundaries -- BreakIterator</h1>
<p><big><big>Break Iterator also provides a C language API.</big></big>
<ul>
<li><font size="6">Line boundaries</font><br>
<font size="5">-- used for line-wrapping</font> <br>
<font size="5">-- correctly handles punctuation and hyphenated words.</font> </li>
<li><font size="6">Sentence boundaries</font><br>
<font size="5">-- handles periods within numbers and abbreviations</font> <br>
<font size="5">-- handles trailing punctuation marks such as parentheses.</font> </li>
<li><font size="6">Word boundaries</font><br>
<font size="5">-- for search and replace functions</font> <br>
<font size="5">-- for selecting words with a double mouse click</font> </li>
<li><font size="6">Character boundaries</font><br>
<font size="5">-- handles combining characters</font></li>
</ul>
<p><a href="../readme.html#API">ReadMe for IBM's International Classes for Unicode, API
Overview</a></p>
</body>
</html>

View file

@ -1,66 +0,0 @@
<html>
<head>
<title>Build System</title>
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
</head>
<body>
<table border="1" width="100%">
<tr>
<td width="50%"><strong>Build System</strong></td>
<td width="50%"><strong>Environment variables setting</strong></td>
</tr>
<tr>
<td width="50%">xlC on AIX4.1.5</td>
<td width="50%">CC=/usr/lpp/xlC/bin/xlc<br>
CXX=/usr/lpp/xlC/bin/xlC_r</td>
</tr>
<tr>
<td width="50%">native CC compiler on Solaris</td>
<td width="50%">&nbsp;</td>
</tr>
<tr>
<td width="50%">GNU C++ compiler on Solaris</td>
<td width="50%">&nbsp;</td>
</tr>
<tr>
<td width="50%">GNU C++ compiler on Linux</td>
<td width="50%">CXX=g++<br>
CC=gcc<br>
CXXFLAGS=-g<br>
CFLAGS=-g</td>
</tr>
<tr>
<td width="50%">native C++ compiler on HP-UX10.2</td>
<td width="50%">CC=cc<br>
CXX=CC</td>
</tr>
<tr>
<td width="50%">Advanced C++ compiler on HP-UX10.2</td>
<td width="50%">CC=cc<br>
CXX=aCC</td>
</tr>
<tr>
<td width="50%">native C++ compiler on HP-UX11</td>
<td width="50%">&nbsp;</td>
</tr>
<tr>
<td width="50%">Advanced C++ compiler on HP-UX11</td>
<td width="50%">CC=cc<br>
CXX=aCC</td>
</tr>
<tr>
<td width="50%">xlC on AIX4.3</td>
<td width="50%">CC=/usr/ibmcxx/bin/xlc<br>
CXX=/usr/ibmcxx/bin/xlC_r</td>
</tr>
<tr>
<td width="50%">native CC compiler on Solaris</td>
<td width="50%">CC=/opt/SUNWspro/bin/cc<br>
CXX=/opt/SUNWspro/bin/CC</td>
</tr>
</table>
</body>
</html>

View file

@ -1,225 +0,0 @@
</<!DOCTYPE>
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 9">
<meta name=Originator content="Microsoft Word 9">
<link rel=File-List href="./cintltst_files/filelist.xml">
<link rel=Edit-Time-Data href="./cintltst_files/editdata.mso">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<title>CintlTst Test Suite Doumentation</title>
<!--[if gte mso 9]><xml>
<o:DocumentProperties>
<o:Author>Helena Shih</o:Author>
<o:Template>Normal</o:Template>
<o:LastAuthor>Helena Shih</o:LastAuthor>
<o:Revision>2</o:Revision>
<o:TotalTime>1</o:TotalTime>
<o:Created>2000-01-15T02:18:00Z</o:Created>
<o:LastSaved>2000-01-15T02:19:00Z</o:LastSaved>
<o:Pages>3</o:Pages>
<o:Words>832</o:Words>
<o:Characters>4747</o:Characters>
<o:Company>IBM</o:Company>
<o:Lines>39</o:Lines>
<o:Paragraphs>9</o:Paragraphs>
<o:CharactersWithSpaces>5829</o:CharactersWithSpaces>
<o:Version>9.2720</o:Version>
</o:DocumentProperties>
</xml><![endif]-->
<style>
<!--
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-parent:"";
margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p
{font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
pre
{margin:0in;
margin-bottom:.0001pt;
font-size:10.0pt;
font-family:"Courier New";
mso-fareast-font-family:"Courier New";}
@page Section1
{size:8.5in 11.0in;
margin:1.0in 1.25in 1.0in 1.25in;
mso-header-margin:.5in;
mso-footer-margin:.5in;
mso-paper-source:0;}
div.Section1
{page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1027"/>
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1"/>
</o:shapelayout></xml><![endif]-->
</head>
<body bgcolor=white lang=EN-US link=blue vlink=blue style='tab-interval:.5in'>
<div class=Section1>
<h1>Cintltst Test Suite Documentation</h1>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
<p><span style="mso-spacerun: yes">&nbsp;</span>Copyright (C) 1998-2000, International
Business Machines Corporation and others.<span style="mso-spacerun: yes">&nbsp;
</span>All Rights Reserved.</p>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
<p>The cintltst Test Suite contains all the tests for International
Components for Unicode C API. These tests may be automatically run by typing
&quot;cintltst&quot; or &quot;cintltst -all&quot; at the command line. It
depends on the C Test Framework. <br>
&quot;cintltst&quot;<br>
or<br>
&quot;cintltst -all&quot;</p>
<h3>C Test FrameWork</h3>
<h4>Purpose:</h4>
<p>To enable the writing of tests entirely in C. The Framework has been
designed to make creating tests or converting old ones as simple as possible,
with a minimum of framework overhead. A sample test file, <a href="#demo.c">&quot;demo.c&quot;</a>
is included at the end of this document. For more information regarding C test
framework, please see the directory \intlwork\source\tools\ctestfw.</p>
<h4>Writing Test Functions</h4>
<p>The format of the test functions is like the following,</p>
<pre>void some_test()</pre><pre>{</pre><pre>}</pre>
<p>Output from the test is accomplished with three printf-like functions:</p>
<pre>void log_err ( const char *fmt, ... );</pre><pre>void log_info ( const char *fmt, ... );</pre><pre>void log_verbose ( const char *fmt, ... );</pre>
<p><strong>log_info() </strong>simply writes to the console, for informational
messages.<br>
<strong>log_verbose()</strong> writes to the console ONLY if the VEBOSE flag is
turned on (or the -v option to the command line). It's useful for debugging. By
default, VERBOSE flag is turned OFF.<br>
<strong>log_error()</strong> is what should be called when a test failure is
detected. The error will be then logged and error count will be incremented by
one.</p>
<h4>Building a tree of tests</h4>
<p>To use the tests you must link them into a hierarchical structure. The root
of the structure will be allocated for you.</p>
<pre>TestNode *root = NULL; /* empty */</pre><pre>addTest( &amp;root, &amp;some_test, &quot;/test&quot;);</pre>
<p>The function pointer and an absolute 'path' to the test are supplied. Paths
may be up to 127 chars in length and may be used to group tests.<br>
<br>
The calls to addTest should be placed in a function or a hierarchy of functions
(perhaps mirroring the paths), please see the following demo.c example for more
details.</p>
<h4>Running the tests</h4>
<p>A subtree may be extracted from another tree of tests for programmatic
running of subtests</p>
<pre>TestNode* sub;</pre><pre>sub = getTest(root, &quot;/mytests&quot;);</pre>
<p>And a tree of tests may be run simply by:</p>
<pre>runTests( root ); /* or 'sub' */</pre>
<p>Similarly, showTests() will list out the tests.<br>
<br>
However, it is easier to simply run at the command prompt with the Usage
specified below.</p>
<h4>Globals</h4>
<p>The command line parser will manage resetting the error count, and printing
a summary of the failed tests. But if you call runTest directly, for instance,
you will need to manage these yourself.<br>
<strong>ERROR_COUNT</strong> contains the number of times log_err was called.
runTests resets it to zero before running the tests.<br>
<strong>VERBOSITY</strong> should be 1 to allow log_verbose() data to be
displayed otherwise 0 (default).</p>
<h3>Building</h3>
<p>To compile this test suite using MSVC, follow the instructions in <a
href="../readme.html#HowToInstall">icu/source/readme.html#HowToInstall</a> for
building the &quot;allC&quot; workspace. This builds the libraries as well as
the cintltst executable.</p>
<h3>Executing</h3>
<p>To run the test suite from the command line, change directories to
&quot;icu/source/test/cintltst/Debug&quot; for the debug build, (or
&quot;icu/source/test/cintltst/Release&quot; for the releawse build) then type:<br>
&quot;cintltst&quot;.</p>
<h3>Usage</h3>
<pre>Type &quot;cintltest -h&quot; to see the usage:</pre><pre><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></pre><pre>### Syntax:</pre><pre>### Usage: [ -l ] [ -v ] [ -verbose] [-a] [ -all] [-n] \n [ -no_err_msg] [ -h ] [ /path/to/test ]</pre><pre>### -l To get a list of test names</pre><pre>### -all To run all the test</pre><pre>### -a To run all the test(same a -all)</pre><pre>### -verbose To turn ON verbosity</pre><pre>### -v To turn ON verbosity(same as -verbose)</pre><pre>### -h To print this message</pre><pre>### -n To turn OFF printing error messages</pre><pre>### -no_err_msg (same as -n)</pre><pre>### -[/subtest] To run a subtest</pre><pre>### For example to run just the utility tests type: cintltest /tsutil)</pre><pre>### To run just the locale test type: cintltst /tsutil/loctst</pre><pre>###<span style="mso-spacerun: yes">&nbsp; </span></pre>
<p><a name=demo.c></a><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
<h5><span style='font-size:12.0pt'>/******************** sample ctestfw test
********************<br>
********* Simply link this with libctestfw or ctestfw.dll ****<br>
************************* demo.c *****************************/</span></h5>
<pre><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></pre><pre>#include &quot;stdlib.h&quot;</pre><pre>#include &quot;ctest.h&quot;</pre><pre>#include &quot;stdio.h&quot;</pre><pre>#include &quot;string.h&quot;</pre><pre><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></pre><pre>/**</pre><pre>* Some sample dummy tests.</pre><pre>* the statics simply show how often the test is called.</pre><pre>*/</pre><pre>void mytest()</pre><pre>{</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>static i = 0;</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>log_info(&quot;I am a test[%d]\n&quot;, i++);</pre><pre>}</pre><pre><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></pre><pre>void mytest_err()</pre><pre>{</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>static i = 0;</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>log_err(&quot;I am a test containing an error[%d]\n&quot;, i++);</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>log_err(&quot;I am a test containing an error[%d]\n&quot;, i++);</pre><pre>}</pre><pre><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></pre><pre>void mytest_verbose()</pre><pre>{</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>/* will only show if verbose is on (-v) */</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>log_verbose(&quot;I am a verbose test, blabbing about nothing at all.\n&quot;);</pre><pre>}</pre><pre><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></pre><pre>/**</pre><pre>* Add your tests from this function</pre><pre>*/</pre><pre><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></pre><pre>void add_tests( TestNode** root )</pre><pre>{</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>addTest(root, &amp;mytest, &quot;/apple/bravo&quot; );</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>addTest(root, &amp;mytest, &quot;/a/b/c/d/mytest&quot;);</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>addTest(root, &amp;mytest_err, &quot;/d/e/f/h/junk&quot;);</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>addTest(root, &amp;mytest, &quot;/a/b/c/d/another&quot;);</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>addTest(root, &amp;mytest, &quot;/a/b/c/etest&quot;);</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>addTest(root, &amp;mytest_err, &quot;/a/b/c&quot;);</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>addTest(root, &amp;mytest, &quot;/bertrand/andre/damiba&quot;);</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>addTest(root, &amp;mytest_err, &quot;/bertrand/andre/OJSimpson&quot;);</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>addTest(root, &amp;mytest, &quot;/bertrand/andre/juice/oj&quot;);</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>addTest(root, &amp;mytest, &quot;/bertrand/andre/juice/prune&quot;);</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>addTest(root, &amp;mytest_verbose, &quot;/verbose&quot;);</pre><pre><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></pre><pre>}</pre><pre><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></pre><pre>int main(int argc, const char *argv[])</pre><pre>{</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>TestNode *root = NULL;</pre><pre><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>add_tests(&amp;root); /* address of root ptr- will be filled in */</pre><pre><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>/* Run the tests. An int is returned suitable for the OS status code.</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>(0 for success, neg for parameter errors, positive for the # of</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>failed tests) */</pre><pre><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>return processArgs( root, argc, argv );</pre><pre>}</pre><pre><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></pre>
<p><a href="../readme.html">ReadMe for </a><a href="../readme.html#API">
International Components for Unicode C API</a></p>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
</div>
</body>
</html>

View file

@ -1,302 +0,0 @@
<html>
<!DOCTYPE html public "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>ICU Coding Guidelines</title>
<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF">
<h1>International Components for Unicode</h1>
<h2>ICU Coding Guidelines</h2>
<hr>
<p>This page describes guidelines for writing code for the International
Components for Unicode and how to add it to the project.</p>
<ul>
<li><a href="#coding">General Guidelines</a></li>
<li><a href="#addfiles">Adding files to ICU</a></li>
<li><a href="#tools">Build Tools</a></li>
</ul>
<a name="coding"></a>
<h2 align="center">General Guidelines</h2>
<ul>
<li>Constants (#define, enum items, const): uppercase. <code>UBREAKITERATOR_DONE</code>,
<code>UBIDI_DEFAULT_LTR</code>, <code>ULESS</code>.</li>
<li>Variables and functions: mixed-case, starting with lowercase. <code>getLength()</code>.</li>
<li>Types (class, struct, enum, union): mixed-case, starting with uppercase.
<code>class DateFormatSymbols</code>.</li>
<li>We use getProperty() and setProperty() functions.</li>
<li>getLength(), getSomethingAt(index/offset).</li>
<li>Where we return a number of items, it is <code>countItems()</code>
- <i>not</i> getItemCount() (even if we do not need to actually <i>count</i>
in the implementation of that member function).</li>
<li>Ranges of indexes: we specify a range of indexes by having <i>start</i>
and <i>limit</i> parameters, with names or suffixes like that. Such
a range contains indexes from start to limit-1, i.e., it is an interval
that is left-closed and right-open. Mathematically, [start..limit[.</li>
<li>Functions that take a buffer (pointer) and a length argument with
a default value so that the function determines the length of the input
itself (for text, calling u_strlen()), that default value should be
-1. Any other negative or undefined value constitutes an error.</li>
<li>Primitive types: they are defined by utypes.h or a header file that
it includes. The most common ones are uint8_t, uint16_t, uint32_t, int8_t,
int16_t, int32_t, UTextOffset (signed), and UErrorCode.</li>
<li>File names (.h, .c, .cpp, data files, etc.): 8.3, all lowercase.</li>
<li>Language extensions and standards: do not use any features (language
extensions or library functions) that are proprietary and do not work
on all C or C++ compilers.<br>
For example, in Microsoft Visual C++, you should go to Project Settings(alt-f7)->All
Configurations->C/C++->Customize, and set Disable Language Extensions.</li>
<li>Tabs and indentation: no tab characters (\x09), save files with spaces
instead.<br>
Indentation is of size 4.</li>
<li>Documentation: We use Javadoc-style in-file documentation with <a href="http://www.doxygen.org">doxygen</a>.
We have a printed version of the manual in our "library", and our files
use this.</li>
<li>You should not place multiple statements into one line. You should
not have if() or loop heads followed by their bodies on the same line.</li>
<li>Placements of curly braces {}: each of us subscribes to different
philosophies. Please try to do it reasonably and consistently. It is
a good idea to use the style of a file when you modify it, instead of
mixing in your favorite style.<br>
The one thing that we ask for is to not have if() and loop bodies without
curly braces.</li>
<li>Function declarations should have one line with the return type and
all the import, extern, and export declarations, and the function name
and signature at the beginning of the next line.
<pre>
U_CAPI int32_t U_EXPORT2
u_formatMessage(...);
</pre>
</li>
<li>Always use <code>static</code> for variables, functions, and constants
that are not exported explicitely by a header file. Some platforms are
confused if non-static symbols are not explictely declared extern, and
will not be able to build ICU and link against it. </li>
<li>Error codes: The ICU API functions for both C and C++ are using a
pointer or a reference to UErrorCode whereever we expect things to possibly
go wrong.
<p>In C, this is a pointer, and it must be checked for <code>NULL</code>.
In C++, this is a reference. In both cases, it must be checked for
an error code already being in there:</p>
<pre>
U_CAPI const UBiDiLevel * U_EXPORT2
ubidi_getLevels(UBiDi *pBiDi, UErrorCode *pErrorCode) {
UTextOffset start, length;
if(pErrorCode==NULL || U_FAILURE(*pErrorCode)) {
return NULL;
} else if(pBiDi==NULL || (length=pBiDi->length)<=0) {
*pErrorCode=U_ILLEGAL_ARGUMENT_ERROR;
return NULL;
}
...
return result;
}
</pre>
This prevents the API function from doing anything on data that is not
valid in a chain of function calls and relieves the caller from checking
the error code after each call.</li>
<li>Decide whether your module is part of the "common" or the "i18n" API
collection. Use the appropriate macros, like <code>U_COMMON_IMPLEMENTATION</code>,
<code>U_I18N_IMPLEMENTATION</code>, <code>U_COMMON_API</code>, <code>U_I18N_API</code>.
See <code>utypes.h</code>.</li>
<li>If we have the same module in C and in C++, then there will be two
header files, one for each language, even if one uses the other. For
example, ubidi.h for C and bidi.h for C++.</li>
<li>
<p>Platform dependencies are dealt with in the header files that <code>utypes.h</code>
includes. They are <code>platform.h</code> and its more specific cousins
like <code>pwin32.h</code> for Windows, which define basic types,
and <code>putil.h</code>, which defines platform utilities.</p>
<p></p>
<strong>Important: </strong>Outside of these files, and a small number
of implementation files that depend on platform differences (like <code>umutex.c</code>),
<i>no</i> ICU source code may have <i>any</i> <code>#ifdef <i>OperatingSystemName</i></code>
instructions.
<p></p>
</li>
<li> For mutual-exclusion (mutex) blocks, there should be no function
calls within a mutex block. The idea behind this is to prevent deadlocks
from occuring later. There should be as little code inside a mutex block
as possible to minimize the performance degradation from blocked threads.
</li>
</ul>
<h3>C Guidelines</h3>
<ul>
<li>Since we don't have classes to subdivide the namespace, we use prefixes
to avoid name collisions. Some of those prefixes contain a 3- (or sometimes
4-) letter module identifier. Very general names like <code>u_charDirection()</code>
don't have a module identifier in their prefix.
<ul>
<li>For POSIX replacements, we prepend the (all lowercase) POSIX function
name with "u_": <code>u_strlen()</code>.</li>
<li>For other API functions, we prepend a 'u', the module identifier
(if appropriate), and an underscore '_', followed by the <i>mixed-case</i>
function name: <code>u_charDirection()</code>, <code>ubidi_setPara()</code>.</li>
<li>For types (struct, enum, union), we prepend a "U", often "U&lt;module
identifier>" directly to the typename, without an underscore. <code>UComparisonResult</code>.</li>
<li>For <code>#define</code>d constants and macros , we prepend a
"U_", often "U&lt;module identifier>_" with an underscore to the
uppercase macro name. <code>U_ZERO_ERROR</code>, <code>U_SUCCESS()</code>.</li>
</ul>
</li>
<li>Function declarations need to be of the form <code>U_CAPI return-type
U_EXPORT2</code> to satisfy all compilers' needs.</li>
<li>Functions that roughly compare to constructors and destructors are
called umod_open() and umod_close().
<pre>
U_CAPI UBiDi * U_EXPORT2
ubidi_open();
U_CAPI UBiDi * U_EXPORT2
ubidi_openSized(UTextOffset maxLength, UTextOffset maxRunCount);
U_CAPI void U_EXPORT2
ubidi_close(UBiDi *pBiDi);
</pre>
</li>
<li>In cases like BreakIterator and NumberFormat, instead of having several
different 'open' APIs for each kind of instances, use an enum selector.</li>
<li>File names begin with a "u".</li>
<li>For memory allocation in C implementation files for ICU, the functions/macros
in <code>cmemory.h</code> must be used. </li>
<li>Do not use C++ style comments in C files and in headers that will be included in C files.
Some of the supported platforms are allergic to C++ style comments in C files.</li>
</ul>
<h3>C++ Guidelines</h3>
<ul>
<li>Classes and their members do not need a "U" or any other prefix.</li>
<li>Class APIs need to be declared like <code>class U_I18N_API SimpleDateFormat</code>
or like <code>class U_COMMON_API UCharCharacterIterator</code>.</li>
<li>Class member functions should be only declared, not inline-implemented,
in the class declaration. Inline implementations may follow after the
class declaration in the same file.</li>
<li>We are using <code>XP_PLUSPLUS</code> to make sure the compiler does
C++, not <code>__cplusplus</code>.</li>
<li>We do not use exceptions, and we do not use templates (at least on
the API).</li>
<li>File names do not begin with a "u".</li>
<li>
<h4>Adoption of objects:</h4>
Some constructors and factory functions take pointers to objects that
they <i>adopt</i>. This means that the newly created object will contain
a pointer to the adoptee and takes over ownership and lifecycle control.
If an error occurs while creating the new object - and thus in the code
that adopts an object - then the semantics used within ICU must be <i>adopt-on-call</i>
(as opposed to, e.g., adopt-on-success):
<ul>
<li>General: A constructor or factory function that adopts an object
does so in all cases, even if an error occurs and a <code>UErrorCode</code>
is set. This means that either the adoptee is deleted immediately
or its pointer is stored in the new object. The former case is most
common when the constructor or factory function is called and the
<code>UErrorCode</code> already indicates a failure. In the latter
case, the new object must take care of deleting the adoptee once
it is deleted itself regardless of whether the constructor was successful.</li>
<li>Constructors: The code that creates the object with the <code>new</code>
operator must check the resulting pointer returned by <code>new</code>
and delete any adoptees if it is <code>0</code> because the constructor
was not called. (Typically, a <code>UErrorCode</code> must be set
to <code>U_MEMORY_ALLOCATION_ERROR</code>.)</li>
<li>Factory functions (<code>createInstance()</code>): The factory
function must set a <code>U_MEMORY_ALLOCATION_ERROR</code> and delete
any adoptees if it cannot allocate the new object. If the construction
of the object fails otherwise, then the factory function must delete
it - and it in turn must delete its adoptees. As a result, a factory
function always returns either a valid object and a successful <code>UErrorCode</code>,
or a <code>0</code> pointer and a failure <code>UErrorCode</code>.<br>
Example:
<pre>
Calendar*
Calendar::createInstance(TimeZone* zone, UErrorCode& errorCode) {
if(U_FAILURE(errorCode)) {
delete zone;
return 0;
}
// since the Locale isn't specified, use the default locale
Calendar* c = new GregorianCalendar(zone, Locale::getDefault(), errorCode);
if(c == 0) {
errorCode = U_MEMORY_ALLOCATION_ERROR;
delete zone;
} else if(U_FAILURE(errorCode)) {
delete c;
c = 0;
}
return c;
}
</pre>
</ul>
</li>
<li>For memory allocation in C++ implementation files for ICU, the standard
<code>new</code> and <code>delete</code> operators (or the C functions/macros
in <code>cmemory.h</code>) must be used. </li>
<li>Iterations through <code>for()</code> loops should not use declarations
in the first part of the loop. The scoping of such declarations
has gone through two revisions about this, and some compilers do not
comply to the latest scoping. Declarations of loop variables should be
outside these loops. </li>
</ul>
<a name="addfiles"></a>
<h2 align="center">Adding files to ICU</h2>
<h3>Adding .c, .cpp, and .h files</h3>
<p>In order to add compilable files to ICU, you not only need to add them
to the source code control system in the appropriate folder, but also
add them to the build environment.</p>
<p>The first step is to choose one of the ICU libraries:</p>
<ol>
<li>The <em>common</em> library provides mostly low-level utilities and
basic APIs that often do not make use of Locales. Examples are APIs
that deal with character properties, the Locale APIs themselves, and
ResourceBundle APIs.</li>
<li>The <em>i18n</em> library provides Locale-dependent and -using APIs,
like for collation and formatting, that are most useful for internationalized
user input and output.</li>
</ol>
<p>Put the source code files into the folder <code>icu/source/<i>library-name</i></code>.</p>
<p>Then add them to the build system:
<ul>
<li>
<p>For most platforms, add the expected .o files to <code>icu/source/<i>library-name</i>/Makefile.in</code>,
to the <code>OBJECTS</code> variable.</p>
<p>Add the <i>public</i> header files to the <code>HEADERS</code> variable.</p>
</li>
<li>For Microsoft Visual C++ 6.0, add all the source code files to <code>icu/source/<i>library-name</i>/<i>library-name</i>.dsp</code>.
If you don't have Visual C++, then try to add the filenames to the project
file manually; it is a text file, and this part should be fairly obvious.</li>
</ul>
<p></p>
<p>You also need to add test code to <code>icu/source/test/cintltest</code>
for C APIs and to <code>icu/source/test/intltest</code> for C++ APIs.</p>
<p>All the API functions must be called by the test code (100% API coverage),
and at least 85% of the implementation code should be exercised by the
tests (>=85% code coverage).</p>
<ol>
<li>For C, create test code using the <code>log_err()</code>, <code>log_info()</code>,
and <code>log_verbose()</code> APIs from <code>cintltst.h</code> (which
uses <code>ctest.h</code>), and check it into the appropriate folder.</li>
<li>In order to get your C test code called, you have to add its toplevel
function and a descriptive test module path to the test system by calling
<code>addTest()</code>. The function that makes the call to <code>addTest()</code>
ultimately has to be called by <code>addAllTests()</code> in <code>calltest.c</code>.
Groups of tests typically have a common <code>addGroup()</code> function
that calls <code>addTest()</code> for the test functions in its group,
according to the common part of the test module path.</li>
<li>Add that test code to the build system, too. Modify <code>Makefile.in</code>
and the appropriate <code>.dsp</code> file like for the library code.</li>
</ol>
<a name="tools"></a>
<h2 align="center">Build Tools</h2>
<p>We are using the following tools to build ICU:</p>
<ul>
<li>GNU make version 3.76.1 and up.</li>
<li>GNU cc version 2.95.2 and up. (egcs merged back into gcc.)</li>
<li>autoconf version 2.13 and up.</li>
<li>autoconf needs m4 version 1.4 and up.</li>
<li>Platform-specific compilers as listed with the supported platforms.<br>
(For a complete list of supported platforms, see the <a href="http://oss.software.ibm.com/icu/tech_faq.html">ICU
Technical FAQ</a>.)</li>
<li>On Windows: Microsoft Visual C++ 6.0 with the latest Service Packs.</li>
</ul>
</body>
</html>

View file

@ -1,29 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<title>Collation Classes</title>
</head>
<body bgcolor="#FFFFFF">
<h1>Collation</h1>
<h2>Collator <i>, </i>CollationElementIterator,&nbsp;<br>
CollationKey , RuleBasedCollator</h2>
<ul>
<li><font size="6">Language-sensitive comparison</font></li>
<li><font size="6">Strength (letter, accent, case...)</font></li>
<li><font size="6">Expanding/contracting chars</font></li>
<li><font size="6">Table-driven, customizable</font></li>
</ul>
<p>&nbsp; </p>
<p><a href="../readme.html#API">ReadMe for International Components for Unicode, API
Overview</a></p>
</body>
</html>

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b503d424eda6dab267baedc29ed10b0708935448f7660665854b72f9be736483
size 9779

View file

@ -1,131 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 9">
<meta name=Originator content="Microsoft Word 9">
<link rel=File-List href="./formatCl_files/filelist.xml">
<title>Formatting Classes</title>
<!--[if gte mso 9]><xml>
<o:DocumentProperties>
<o:Author>Helena Shih</o:Author>
<o:Template>Normal</o:Template>
<o:LastAuthor>Helena Shih</o:LastAuthor>
<o:Revision>2</o:Revision>
<o:TotalTime>0</o:TotalTime>
<o:Created>2000-01-15T02:21:00Z</o:Created>
<o:LastSaved>2000-01-15T02:21:00Z</o:LastSaved>
<o:Pages>1</o:Pages>
<o:Words>87</o:Words>
<o:Characters>497</o:Characters>
<o:Company>IBM</o:Company>
<o:Lines>4</o:Lines>
<o:Paragraphs>1</o:Paragraphs>
<o:CharactersWithSpaces>610</o:CharactersWithSpaces>
<o:Version>9.2720</o:Version>
</o:DocumentProperties>
</xml><![endif]-->
<style>
<!--
/* Font Definitions */
@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;
mso-font-charset:2;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:0 268435456 0 0 -2147483648 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-parent:"";
margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p
{font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
@page Section1
{size:8.5in 11.0in;
margin:1.0in 1.25in 1.0in 1.25in;
mso-header-margin:.5in;
mso-footer-margin:.5in;
mso-paper-source:0;}
div.Section1
{page:Section1;}
/* List Definitions */
@list l0
{mso-list-id:1614048376;
mso-list-type:hybrid;
mso-list-template-ids:127050966 399114334 1901645942 -258968462 -1784641636 329570506 1822076070 271362274 -1991226564 -1893014264;}
@list l0:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1027"/>
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1"/>
</o:shapelayout></xml><![endif]-->
</head>
<body bgcolor=white lang=EN-US link=blue vlink=blue style='tab-interval:.5in'>
<div class=Section1>
<h1>Formatting Classes</h1>
<p><span style='font-size:18.0pt'>Format,
Formattable, FieldPosition, ParsePosition</span> </p>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l0 level1 lfo1;tab-stops:list .5in'><span style='font-size:24.0pt'>Both
parsing and formatting</span></li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l0 level1 lfo1;tab-stops:list .5in'><span style='font-size:24.0pt'>Default
Locale-based formats</span></li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l0 level1 lfo1;tab-stops:list .5in'><span style='font-size:24.0pt'>Programmatic
control</span></li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l0 level1 lfo1;tab-stops:list .5in'><span style='font-size:24.0pt'>Pattern-based
control</span></li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l0 level1 lfo1;tab-stops:list .5in'><span style='font-size:24.0pt'>Handles:</span><br>
<span style='font-size:18.0pt'>-- <a href="number.html">Numbers</a></span>
<br>
<span style='font-size:18.0pt'>-- <a href="tzClasses.html">Dates, Times</a></span>
<br>
<span style='font-size:18.0pt'>-- <a href="message.html">Messages</a></span></li>
</ul>
<p>&nbsp; </p>
<p><a href="../readme.html#API">ReadMe for International Components for
Unicode, API Overview</a></p>
</div>
</body>
</html>

View file

@ -1,147 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 9">
<meta name=Originator content="Microsoft Word 9">
<link rel=File-List href="./intltest_files/filelist.xml">
<link rel=Edit-Time-Data href="./intltest_files/editdata.mso">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<title>IntlTest Test Suite Doumentation</title>
<!--[if gte mso 9]><xml>
<o:DocumentProperties>
<o:Author>Helena Shih</o:Author>
<o:Template>Normal</o:Template>
<o:LastAuthor>Helena Shih</o:LastAuthor>
<o:Revision>2</o:Revision>
<o:TotalTime>1</o:TotalTime>
<o:Created>2000-01-15T02:21:00Z</o:Created>
<o:LastSaved>2000-01-15T02:22:00Z</o:LastSaved>
<o:Pages>1</o:Pages>
<o:Words>269</o:Words>
<o:Characters>1534</o:Characters>
<o:Company>IBM</o:Company>
<o:Lines>12</o:Lines>
<o:Paragraphs>3</o:Paragraphs>
<o:CharactersWithSpaces>1883</o:CharactersWithSpaces>
<o:Version>9.2720</o:Version>
</o:DocumentProperties>
</xml><![endif]-->
<style>
<!--
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-parent:"";
margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p
{font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
pre
{margin:0in;
margin-bottom:.0001pt;
font-size:10.0pt;
font-family:"Courier New";
mso-fareast-font-family:"Courier New";}
@page Section1
{size:8.5in 11.0in;
margin:1.0in 1.25in 1.0in 1.25in;
mso-header-margin:.5in;
mso-footer-margin:.5in;
mso-paper-source:0;}
div.Section1
{page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1027"/>
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1"/>
</o:shapelayout></xml><![endif]-->
</head>
<body bgcolor=white lang=EN-US link=blue vlink=blue style='tab-interval:.5in'>
<div class=Section1>
<h1>IntlTest Test Suite Documentation</h1>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
<p class=MsoNormal><span style="mso-spacerun: yes">&nbsp;</span>Copyright (C)
1997-2000, International Business Machines Corporation and others.<span
style="mso-spacerun: yes">&nbsp; </span>All Rights Reserved.<o:p></o:p></p>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
<p>The IntlTest suite contains all of the tests for the C++ API of
International Components for Unicode. These tests may be automatically run by typing
&quot;intltest&quot; at the command line. Since the verbose option prints out a
lot of information, it is recommended that the output be redirected to a file:<br>
&quot;intltest -v &gt; testOutput&quot;. </p>
<h3>Building</h3>
<p>To compile this test suite using MSVC, follow the instructions in <a
href="../readme.html#HowToInstall">icu/readme.html#HowToInstall</a> for
building the &quot;alCPP&quot; (All C++ interfaces) workspace. This builds the
libraries as well as the intltest executable.</p>
<h3>Executing</h3>
<p>To run the test suite from the command line, change directories to
&quot;intlwork/source/test/intltest/Debug&quot;, then type:<br>
&quot;intltest -v &gt; testOutput&quot;.&nbsp; For the release build, the
executable will reside in &quot;intlwork/source/test/intltest/Release&quot;.</p>
<h3>Usage</h3>
<p>Type just &quot;intltest -h&quot; to see the usage:</p>
<pre>### Syntax:</pre><pre>### IntlTest [-option1 -option2 ...] [testname1 testname2 ...] </pre><pre>### where options are: verbose (v), all (a), noerrormsg (n), </pre><pre>### exhaustive (e) and leaks (l). </pre><pre>### (Specify either -all (shortcut -a) or a test name). </pre><pre>### -all will run all of the tests.</pre><pre>### </pre><pre>### To get a list of the test names type: intltest LIST </pre><pre>### To run just the utility tests type: intltest utility </pre><pre>### </pre><pre>### Test names can be nested using slashes (&quot;testA/subtest1&quot;) </pre><pre>### For example to list the utility tests type: intltest utility/LIST </pre><pre>### To run just the Locale test type: intltest utility/LocaleTest </pre><pre>### </pre><pre>### A parameter can be specified for a test by appending '@' and the value </pre><pre>### to the testname. </pre>
<p><a href="../readme.html">ReadMe for </a><a href="../readme.html#API"><span
style="mso-spacerun: yes">&nbsp;</span>International Components for Unicode</a></p>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
</div>
</body>
</html>

View file

@ -1,39 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<title>Message Formatting</title>
</head>
<body bgcolor="#FFFFFF">
<h1>Message Formatting</h1>
<p><font size="5">MessageFormat, ChoiceFormat</font>
<ul>
<li><font size="5">Put together sequences of strings, numbers,</font><br>
<font size="5">dates, and other formats to create messages.</font></li>
</ul>
<ul>
<li><font size="5">Facilitate localization because they:</font><br>
<font size="5">-- prevent hard-coding of message strings</font> <br>
<font size="5">-- prevent hard-coding of the concatenation</font></li>
</ul>
<ul>
<li><font size="5">Enables localizers to change the content, format,</font><br>
<font size="5">and order of any text as appropriate for any language.</font></li>
</ul>
<ul>
<li><font size="5">Choice formats let localizers create more natural messages,</font><br>
<font size="5">avoiding phrases like &quot;3 file(s)&quot;.</font></li>
</ul>
<p><a href="formatCl.html">formatting</a> </p>
</body>
</html>

View file

@ -1,185 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 9">
<meta name=Originator content="Microsoft Word 9">
<link rel=File-List href="./mutex_files/filelist.xml">
<title>Mutex Documentation</title>
<!--[if gte mso 9]><xml>
<o:DocumentProperties>
<o:Author>Helena Shih</o:Author>
<o:Template>Normal</o:Template>
<o:LastAuthor>Helena Shih</o:LastAuthor>
<o:Revision>2</o:Revision>
<o:TotalTime>0</o:TotalTime>
<o:Created>2000-01-15T02:23:00Z</o:Created>
<o:LastSaved>2000-01-15T02:23:00Z</o:LastSaved>
<o:Pages>2</o:Pages>
<o:Words>522</o:Words>
<o:Characters>2979</o:Characters>
<o:Company>IBM</o:Company>
<o:Lines>24</o:Lines>
<o:Paragraphs>5</o:Paragraphs>
<o:CharactersWithSpaces>3658</o:CharactersWithSpaces>
<o:Version>9.2720</o:Version>
</o:DocumentProperties>
</xml><![endif]-->
<style>
<!--
/* Font Definitions */
@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;
mso-font-charset:2;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:0 268435456 0 0 -2147483648 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-parent:"";
margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p
{font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
@page Section1
{size:8.5in 11.0in;
margin:1.0in 1.25in 1.0in 1.25in;
mso-header-margin:.5in;
mso-footer-margin:.5in;
mso-paper-source:0;}
div.Section1
{page:Section1;}
/* List Definitions */
@list l0
{mso-list-id:1299845606;
mso-list-type:hybrid;
mso-list-template-ids:-1849547252 -302606876 -817858888 -819169718 -1866726332 223118424 -996776518 -314158042 -1140712398 101464222;}
@list l0:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1027"/>
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1"/>
</o:shapelayout></xml><![endif]-->
</head>
<body bgcolor=white lang=EN-US style='tab-interval:.5in'>
<div class=Section1>
<h1>International Components for Unicode Synchronization Issues</h1>
<h3>Introduction</h3>
<p>There are a number of functions in the IBM's Classes for Unicode that need
to access or allocate global or static data. For example, there is a global
cache of Collation rules, which ensures that we do not need to load collation
data from a file each time that a new Collator object is created. The first
time a given Collator is loaded it is stored in the cache, and subsequent
accesses are extremely fast. </p>
<p>In a single-threaded environment, this is all straightforward. However, in a
multithreaded application there are synchronization issues to deal with. For
example, the collation caching mechanism needs to be protected from
simultaneous access by multiple threads; otherwise there could be problems with
the data getting out of synch or with threads performing unnecessary work. </p>
<h3>Mutexes</h3>
<p>We prevent these problems by using a Mutex object. A Mutex is a
&quot;mutually exclusive&quot; lock. Before accessing data which might be used
by multiple threads, functions instantiate a Mutex object, which acquires the
exclusive lock. An other thread that tries to access the data at the same time
will also instantiate a Mutex, but the call will block until the first thread
has released its lock. </p>
<p>To save space, we use one underlying mutex implementation object for the
entire application. An individual Mutex object simply acquires and releases the
lock on this this global object. Since the implemention of a mutex is highly
platform-dependent, developers who plan to use the International Classes for
Unicode in a multithreaded environment are required to create their own mutex
implementation object and register it with the system. </p>
<h3>Re-Entrancy</h3>
<p>Using a single, global lock object can, of course, cause reentrancy
problems. Deadlock could occur where the Mutex aquire is attempted twice within
the same thread before it is released. For example, Win32 critical sections are
reentrant, but our testing shows that some POSIX mutex implementations are not.
POSIX would require additional code, at a performance loss. </p>
<p>To avoid these problems, the Mutex is only aquired during a pointer
assignment, where possible. In the few cases where this is not true, care is
taken to not call any other functions inside the mutex that could possibly
aquire the mutex. </p>
<p>The result of this design principle is that the mutex may be aquired more
times than necessary, however time spent inside the mutex is then minimized. </p>
<p>Developers implementing the Mutex are not required to provide reentrant-safe
implementations. </p>
<h3>Using collators in multi-threaded environment</h3>
<p>Instances of Collator class are meant to be used on per thread basis.
Although it is possible to have multiple threads access one Collator there is
no guarante that such a construct will work, especially if number of threads
grows over 10. There are no limitations on number of threads if each thread
creates its own separate instance of Collator class.</p>
<p>Test results have shown that case with 50 threads accessing 1 collator fails
with a crash after 20 threads are reached. However, a test with 50 threads
creating separate instances works well.</p>
<h3>Implementations</h3>
<p>On Win32 platforms, a reentrant mutex is most naturally implemented on top
of a Critical Section.<br>
On POSIX platforms, pthread_mutex provides an implementation. </p>
<p>The International Classes for Unicode are provided with reference
implementations for Win32 and POSIX. </p>
<p><b>See also:</b> </p>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l0 level1 lfo1;tab-stops:list .5in'><b>mutex.h </b>- Mutex API</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l0 level1 lfo1;tab-stops:list .5in'><b>muteximp.h</b> - The API's
and instructions for providing your own mutexes.</li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l0 level1 lfo1;tab-stops:list .5in'><b>mutex.cpp</b> - includes
reference implementations for Win32 and POSIX.</li>
</ul>
</div>
</body>
</html>

View file

@ -1,34 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<title>Number Formatting</title>
</head>
<body bgcolor="#FFFFFF">
<h1><font size="6">Number Formatting</font></h1>
<p><font size="5">NumberFormat, DecimalFormat, DecimalFormatSymbols</font>
&nbsp;
<ul>
<li><font size="5">Provide control over every aspect of the display</font><br>
<font size="4">-- separator characters, optional digits,</font> <br>
<font size="4">-- maximum and minimum decimal and integer places</font> <br>
<font size="4">-- optional prefixes and suffixes</font> </li>
<li><font size="5">Can produce currency and percentage formats</font><br>
<font size="4">-- can be extended to produce other formats</font> </li>
<li><font size="5">Allow you to specify new formats with string patterns</font></li>
<li><font size="5">Can retrieve the normalized pattern</font></li>
<li><font size="5">Can parse number, date and time strings if the objects can be formatted</font><br>
<font size="4">-- for use when converting text input into binary data<br>
-- no garentee round-trip results for ChoiceFormat objects when there are more than one
mapping</font></li>
</ul>
<p><a href="formatCl.html">formatting</a> </p>
</body>
</html>

View file

@ -1,998 +0,0 @@
<html>
<head>
<title>ICU System Time Zones</title>
</head>
<body>
<h1>ICU System Time Zones</h1>
<table border="0">
<tr>
<td>Version</td>
<td><strong>tzdata2000h</strong> (2000.8)</td>
</tr>
<tr>
<td>Total zone count</td>
<td><strong>432</strong> in <strong>117</strong> equivalency groups</td>
</tr>
<tr>
<td>Original source</td>
<td><strong><a href="ftp://elsie.nci.nih.gov/pub">ftp://elsie.nci.nih.gov/pub</a></strong></td>
</tr>
<tr>
<td>Author</td>
<td><strong>Alan Liu <a href="mailto:liuas@us.ibm.com">&lt;liuas@us.ibm.com&gt;</a></strong></td>
</tr>
<tr>
<td>This document generated</td>
<td><strong>Fri Feb 2 10:34:17 2001</strong></td>
</tr>
</table>
<h3>Background</h3>
<p>A time zone represents an offset applied to Greenwich Mean Time
(GMT) to obtain local time. The offset may vary throughout the year,
if daylight savings time (DST) is used, or may be the same all year
long. Typically, regions closer to the equator do not use DST. If DST
is in use, then specific rules define the point at which the offset
changes, and the amount by which it changes. Thus, a time zone is
described by the following information:
<ul>
<li><a name="cols">An</a> identifying string, or ID. This consists only of invariant characters (see the file <code>utypes.h</code>).
It typically has the format <em>continent</em> / <em>city</em>. The city chosen is
not the only city in which the zone applies, but rather a representative city for the
region. Some IDs consist of three or four uppercase letters; these are legacy zone
names that are aliases to standard zone names.</li>
<li>An offset from GMT, either positive or negative. Offsets range from approximately minus
half a day to plus half a day.</li>
</ul>
<p>If DST is observed, then three additional pieces of information are needed:
<ul>
<li>The precise date and time during the year when DST begins. This is in the first
half of the year in the northern hemisphere, and in the second half of the year in the
southern hemisphere.</li>
<li>The precise date and time during the year when DST ends. This is in the first half
of the year in the southern hemisphere, and in the second half of the year in the northern
hemisphere.</li>
<li>The amount by which the GMT offset changes when DST is in effect. This is almost
always one hour.</li>
</ul>
<h3>System and User Time Zones</h3>
<p>ICU supports local time zones through the classes
<code>TimeZone</code> and <code>SimpleTimeZone</code> in the C++
API. In the C API, time zones are designated by their ID strings.</p>
<p>Users may construct their own time zone objects by specifying the
above information to the C++ API. However, it is more typical for
users to use a pre-existing system time zone, since these represent
all current international time zones in use. This document lists the
system time zones, both in order of GMT offset, and in alphabetical
order of ID.</p>
<p>Since this list changes one or more times a year, <em>this document
only represents a snapshot</em>. For the current list of ICU system
zones, use the method <code>TimeZone::getAvailableIDs()</code>.</p>
<h3>Notes</h3>
<p><a name="order">The</a> zones are listed in binary sort order. That is, 'A' through
'Z' come before 'a' through 'z'. This is the same order in which the
zones are stored internally, and the same order in which they are
returned by <code>TimeZone::getAvailableIDs()</code>. The reason for
this is that ICU locates zones using a binary search, and the binary
search relies on this sort order.</p>
<p>You may notice that zones such as <a href="#EtcGMTp1">Etc/GMT+1</a>
appear to have the wrong sign for their GMT offset. In fact, their
sign is inverted because the the Etc zones follow the POSIX sign
conventions. This is the way the original Olson data is set up, and
ICU reproduces the Olson data faithfully, including this confusing
aspect. See the Olson files for more details.
<h3>References</h3>
<p>The ICU system time zones are derived from the Olson data at <a
href="ftp://elsie.nci.nih.gov/pub">ftp://elsie.nci.nih.gov/pub</a>. This is the data used by UNIX systems and is
updated one or more times each year. Unlike the Olson zone data, ICU
only contains data for current zone usage. There is no support for
historical zone data in ICU at this time.</p>
<hr>
<h2>Time Zones in order of GMT offset</h2>
<p>Zone listed in <strong>bold</strong> are the default zone for a
given GMT offset. This default is used by ICU if it cannot identify
the host OS time zone by name. In that case, it uses the default zone
for the host zone offset.</p>
<p><table>
<tr valign=top><td><a name="GMTm1200">GMT-12:00</a></td><td><a href="#EtcGMTp12"><b>Etc/GMT+12</b></a></td></tr>
<tr valign=top><td><a name="GMTm1100">GMT-11:00</a></td><td><a href="#EtcGMTp11">Etc/GMT+11</a>, <a href="#MIT">MIT</a>, <a href="#PacificApia"><b>Pacific/Apia</b></a>, <a href="#PacificMidway">Pacific/Midway</a>, <a href="#PacificNiue">Pacific/Niue</a>, <a href="#PacificPago_Pago">Pacific/Pago_Pago</a></td></tr>
<tr valign=top><td><a name="GMTm1000">GMT-10:00</a></td><td><a href="#AmericaAdak">America/Adak</a>, <a href="#EtcGMTp10">Etc/GMT+10</a>, <a href="#HST">HST</a>, <a href="#PacificFakaofo">Pacific/Fakaofo</a>, <a href="#PacificHonolulu"><b>Pacific/Honolulu</b></a>, <a href="#PacificJohnston">Pacific/Johnston</a>, <a href="#PacificRarotonga">Pacific/Rarotonga</a>, <a href="#PacificTahiti">Pacific/Tahiti</a></td></tr>
<tr valign=top><td><a name="GMTm930">GMT-9:30</a></td><td><a href="#PacificMarquesas"><b>Pacific/Marquesas</b></a></td></tr>
<tr valign=top><td><a name="GMTm900">GMT-9:00</a></td><td><a href="#AST">AST</a>, <a href="#AmericaAnchorage"><b>America/Anchorage</b></a>, <a href="#AmericaJuneau">America/Juneau</a>, <a href="#AmericaNome">America/Nome</a>, <a href="#AmericaYakutat">America/Yakutat</a>, <a href="#EtcGMTp9">Etc/GMT+9</a>, <a href="#PacificGambier">Pacific/Gambier</a></td></tr>
<tr valign=top><td><a name="GMTm800">GMT-8:00</a></td><td><a href="#AmericaDawson">America/Dawson</a>, <a href="#AmericaLos_Angeles"><b>America/Los_Angeles</b></a>, <a href="#AmericaTijuana">America/Tijuana</a>, <a href="#AmericaVancouver">America/Vancouver</a>, <a href="#AmericaWhitehorse">America/Whitehorse</a>, <a href="#EtcGMTp8">Etc/GMT+8</a>, <a href="#PST">PST</a>, <a href="#PacificPitcairn">Pacific/Pitcairn</a></td></tr>
<tr valign=top><td><a name="GMTm700">GMT-7:00</a></td><td><a href="#AmericaBoise">America/Boise</a>, <a href="#AmericaChihuahua">America/Chihuahua</a>, <a href="#AmericaDawson_Creek">America/Dawson_Creek</a>, <a href="#AmericaDenver"><b>America/Denver</b></a>, <a href="#AmericaEdmonton">America/Edmonton</a>, <a href="#AmericaHermosillo">America/Hermosillo</a>, <a href="#AmericaInuvik">America/Inuvik</a>, <a href="#AmericaMazatlan">America/Mazatlan</a>, <a href="#AmericaPhoenix">America/Phoenix</a>, <a href="#AmericaYellowknife">America/Yellowknife</a>, <a href="#EtcGMTp7">Etc/GMT+7</a>, <a href="#MST">MST</a>, <a href="#PNT">PNT</a></td></tr>
<tr valign=top><td><a name="GMTm600">GMT-6:00</a></td><td><a href="#AmericaBelize">America/Belize</a>, <a href="#AmericaCambridge_Bay">America/Cambridge_Bay</a>, <a href="#AmericaCancun">America/Cancun</a>, <a href="#AmericaChicago"><b>America/Chicago</b></a>, <a href="#AmericaCosta_Rica">America/Costa_Rica</a>, <a href="#AmericaEl_Salvador">America/El_Salvador</a>, <a href="#AmericaGuatemala">America/Guatemala</a>, <a href="#AmericaManagua">America/Managua</a>, <a href="#AmericaMenominee">America/Menominee</a>, <a href="#AmericaMerida">America/Merida</a>, <a href="#AmericaMexico_City">America/Mexico_City</a>, <a href="#AmericaMonterrey">America/Monterrey</a>, <a href="#AmericaRainy_River">America/Rainy_River</a>, <a href="#AmericaRegina">America/Regina</a>, <a href="#AmericaSwift_Current">America/Swift_Current</a>, <a href="#AmericaTegucigalpa">America/Tegucigalpa</a>, <a href="#AmericaWinnipeg">America/Winnipeg</a>, <a href="#CST">CST</a>, <a href="#EtcGMTp6">Etc/GMT+6</a>, <a href="#PacificEaster">Pacific/Easter</a>, <a href="#PacificGalapagos">Pacific/Galapagos</a></td></tr>
<tr valign=top><td><a name="GMTm500">GMT-5:00</a></td><td><a href="#AmericaBogota">America/Bogota</a>, <a href="#AmericaCayman">America/Cayman</a>, <a href="#AmericaDetroit">America/Detroit</a>, <a href="#AmericaEirunepe">America/Eirunepe</a>, <a href="#AmericaGrand_Turk">America/Grand_Turk</a>, <a href="#AmericaGuayaquil">America/Guayaquil</a>, <a href="#AmericaHavana">America/Havana</a>, <a href="#AmericaIndianaKnox">America/Indiana/Knox</a>, <a href="#AmericaIndianaMarengo">America/Indiana/Marengo</a>, <a href="#AmericaIndianaVevay">America/Indiana/Vevay</a>, <a href="#AmericaIndianapolis"><b>America/Indianapolis</b></a>, <a href="#AmericaIqaluit">America/Iqaluit</a>, <a href="#AmericaJamaica">America/Jamaica</a>, <a href="#AmericaKentuckyMonticello">America/Kentucky/Monticello</a>, <a href="#AmericaLima">America/Lima</a>, <a href="#AmericaLouisville">America/Louisville</a>, <a href="#AmericaMontreal">America/Montreal</a>, <a href="#AmericaNassau">America/Nassau</a>, <a href="#AmericaNew_York">America/New_York</a>, <a href="#AmericaNipigon">America/Nipigon</a>, <a href="#AmericaPanama">America/Panama</a>, <a href="#AmericaPangnirtung">America/Pangnirtung</a>, <a href="#AmericaPortmaumPrince">America/Port-au-Prince</a>, <a href="#AmericaPorto_Acre">America/Porto_Acre</a>, <a href="#AmericaRankin_Inlet">America/Rankin_Inlet</a>, <a href="#AmericaThunder_Bay">America/Thunder_Bay</a>, <a href="#EST">EST</a>, <a href="#EtcGMTp5">Etc/GMT+5</a>, <a href="#IET">IET</a></td></tr>
<tr valign=top><td><a name="GMTm400">GMT-4:00</a></td><td><a href="#AmericaAnguilla">America/Anguilla</a>, <a href="#AmericaAntigua">America/Antigua</a>, <a href="#AmericaAruba">America/Aruba</a>, <a href="#AmericaAsuncion">America/Asuncion</a>, <a href="#AmericaBarbados">America/Barbados</a>, <a href="#AmericaBoa_Vista">America/Boa_Vista</a>, <a href="#AmericaCaracas">America/Caracas</a>, <a href="#AmericaCuiaba">America/Cuiaba</a>, <a href="#AmericaCuracao">America/Curacao</a>, <a href="#AmericaDominica">America/Dominica</a>, <a href="#AmericaGlace_Bay">America/Glace_Bay</a>, <a href="#AmericaGoose_Bay">America/Goose_Bay</a>, <a href="#AmericaGrenada">America/Grenada</a>, <a href="#AmericaGuadeloupe">America/Guadeloupe</a>, <a href="#AmericaGuyana">America/Guyana</a>, <a href="#AmericaHalifax">America/Halifax</a>, <a href="#AmericaLa_Paz">America/La_Paz</a>, <a href="#AmericaManaus">America/Manaus</a>, <a href="#AmericaMartinique">America/Martinique</a>, <a href="#AmericaMontserrat">America/Montserrat</a>, <a href="#AmericaPort_of_Spain">America/Port_of_Spain</a>, <a href="#AmericaPorto_Velho">America/Porto_Velho</a>, <a href="#AmericaPuerto_Rico"><b>America/Puerto_Rico</b></a>, <a href="#AmericaSantiago">America/Santiago</a>, <a href="#AmericaSanto_Domingo">America/Santo_Domingo</a>, <a href="#AmericaSt_Kitts">America/St_Kitts</a>, <a href="#AmericaSt_Lucia">America/St_Lucia</a>, <a href="#AmericaSt_Thomas">America/St_Thomas</a>, <a href="#AmericaSt_Vincent">America/St_Vincent</a>, <a href="#AmericaThule">America/Thule</a>, <a href="#AmericaTortola">America/Tortola</a>, <a href="#AntarcticaPalmer">Antarctica/Palmer</a>, <a href="#AtlanticBermuda">Atlantic/Bermuda</a>, <a href="#AtlanticStanley">Atlantic/Stanley</a>, <a href="#EtcGMTp4">Etc/GMT+4</a>, <a href="#PRT">PRT</a></td></tr>
<tr valign=top><td><a name="GMTm330">GMT-3:30</a></td><td><a href="#AmericaSt_Johns"><b>America/St_Johns</b></a>, <a href="#CNT">CNT</a></td></tr>
<tr valign=top><td><a name="GMTm300">GMT-3:00</a></td><td><a href="#AGT">AGT</a>, <a href="#AmericaAraguaina">America/Araguaina</a>, <a href="#AmericaBelem">America/Belem</a>, <a href="#AmericaBuenos_Aires"><b>America/Buenos_Aires</b></a>, <a href="#AmericaCatamarca">America/Catamarca</a>, <a href="#AmericaCayenne">America/Cayenne</a>, <a href="#AmericaCordoba">America/Cordoba</a>, <a href="#AmericaFortaleza">America/Fortaleza</a>, <a href="#AmericaGodthab">America/Godthab</a>, <a href="#AmericaJujuy">America/Jujuy</a>, <a href="#AmericaMaceio">America/Maceio</a>, <a href="#AmericaMendoza">America/Mendoza</a>, <a href="#AmericaMiquelon">America/Miquelon</a>, <a href="#AmericaMontevideo">America/Montevideo</a>, <a href="#AmericaParamaribo">America/Paramaribo</a>, <a href="#AmericaRecife">America/Recife</a>, <a href="#AmericaRosario">America/Rosario</a>, <a href="#AmericaSao_Paulo">America/Sao_Paulo</a>, <a href="#BET">BET</a>, <a href="#EtcGMTp3">Etc/GMT+3</a></td></tr>
<tr valign=top><td><a name="GMTm200">GMT-2:00</a></td><td><a href="#AmericaNoronha"><b>America/Noronha</b></a>, <a href="#AtlanticSouth_Georgia">Atlantic/South_Georgia</a>, <a href="#EtcGMTp2">Etc/GMT+2</a></td></tr>
<tr valign=top><td><a name="GMTm100">GMT-1:00</a></td><td><a href="#AmericaScoresbysund">America/Scoresbysund</a>, <a href="#AtlanticAzores"><b>Atlantic/Azores</b></a>, <a href="#AtlanticCape_Verde">Atlantic/Cape_Verde</a>, <a href="#AtlanticJan_Mayen">Atlantic/Jan_Mayen</a>, <a href="#EtcGMTp1">Etc/GMT+1</a></td></tr>
<tr valign=top><td><a name="GMTp000">GMT+0:00</a></td><td><a href="#AfricaAbidjan">Africa/Abidjan</a>, <a href="#AfricaAccra">Africa/Accra</a>, <a href="#AfricaBamako">Africa/Bamako</a>, <a href="#AfricaBanjul">Africa/Banjul</a>, <a href="#AfricaBissau">Africa/Bissau</a>, <a href="#AfricaCasablanca">Africa/Casablanca</a>, <a href="#AfricaConakry">Africa/Conakry</a>, <a href="#AfricaDakar">Africa/Dakar</a>, <a href="#AfricaEl_Aaiun">Africa/El_Aaiun</a>, <a href="#AfricaFreetown">Africa/Freetown</a>, <a href="#AfricaLome">Africa/Lome</a>, <a href="#AfricaMonrovia">Africa/Monrovia</a>, <a href="#AfricaNouakchott">Africa/Nouakchott</a>, <a href="#AfricaOuagadougou">Africa/Ouagadougou</a>, <a href="#AfricaSao_Tome">Africa/Sao_Tome</a>, <a href="#AfricaTimbuktu">Africa/Timbuktu</a>, <a href="#AtlanticCanary">Atlantic/Canary</a>, <a href="#AtlanticFaeroe">Atlantic/Faeroe</a>, <a href="#AtlanticMadeira">Atlantic/Madeira</a>, <a href="#AtlanticReykjavik">Atlantic/Reykjavik</a>, <a href="#AtlanticSt_Helena">Atlantic/St_Helena</a>, <a href="#EtcGMT">Etc/GMT</a>, <a href="#EtcUCT">Etc/UCT</a>, <a href="#EtcUTC">Etc/UTC</a>, <a href="#EuropeBelfast">Europe/Belfast</a>, <a href="#EuropeDublin">Europe/Dublin</a>, <a href="#EuropeLisbon">Europe/Lisbon</a>, <a href="#EuropeLondon">Europe/London</a>, <a href="#GMT"><b>GMT</b></a>, <a href="#UTC">UTC</a>, <a href="#WET">WET</a></td></tr>
<tr valign=top><td><a name="GMTp100">GMT+1:00</a></td><td><a href="#AfricaAlgiers">Africa/Algiers</a>, <a href="#AfricaBangui">Africa/Bangui</a>, <a href="#AfricaBrazzaville">Africa/Brazzaville</a>, <a href="#AfricaCeuta">Africa/Ceuta</a>, <a href="#AfricaDouala">Africa/Douala</a>, <a href="#AfricaKinshasa">Africa/Kinshasa</a>, <a href="#AfricaLagos">Africa/Lagos</a>, <a href="#AfricaLibreville">Africa/Libreville</a>, <a href="#AfricaLuanda">Africa/Luanda</a>, <a href="#AfricaMalabo">Africa/Malabo</a>, <a href="#AfricaNdjamena">Africa/Ndjamena</a>, <a href="#AfricaNiamey">Africa/Niamey</a>, <a href="#AfricaPortomNovo">Africa/Porto-Novo</a>, <a href="#AfricaTunis">Africa/Tunis</a>, <a href="#AfricaWindhoek">Africa/Windhoek</a>, <a href="#ArcticLongyearbyen">Arctic/Longyearbyen</a>, <a href="#CET">CET</a>, <a href="#ECT">ECT</a>, <a href="#EtcGMTm1">Etc/GMT-1</a>, <a href="#EuropeAmsterdam">Europe/Amsterdam</a>, <a href="#EuropeAndorra">Europe/Andorra</a>, <a href="#EuropeBelgrade">Europe/Belgrade</a>, <a href="#EuropeBerlin">Europe/Berlin</a>, <a href="#EuropeBratislava">Europe/Bratislava</a>, <a href="#EuropeBrussels">Europe/Brussels</a>, <a href="#EuropeBudapest">Europe/Budapest</a>, <a href="#EuropeCopenhagen">Europe/Copenhagen</a>, <a href="#EuropeGibraltar">Europe/Gibraltar</a>, <a href="#EuropeLjubljana">Europe/Ljubljana</a>, <a href="#EuropeLuxembourg">Europe/Luxembourg</a>, <a href="#EuropeMadrid">Europe/Madrid</a>, <a href="#EuropeMalta">Europe/Malta</a>, <a href="#EuropeMonaco">Europe/Monaco</a>, <a href="#EuropeOslo">Europe/Oslo</a>, <a href="#EuropeParis"><b>Europe/Paris</b></a>, <a href="#EuropePrague">Europe/Prague</a>, <a href="#EuropeRome">Europe/Rome</a>, <a href="#EuropeSan_Marino">Europe/San_Marino</a>, <a href="#EuropeSarajevo">Europe/Sarajevo</a>, <a href="#EuropeSkopje">Europe/Skopje</a>, <a href="#EuropeStockholm">Europe/Stockholm</a>, <a href="#EuropeTirane">Europe/Tirane</a>, <a href="#EuropeVaduz">Europe/Vaduz</a>, <a href="#EuropeVatican">Europe/Vatican</a>, <a href="#EuropeVienna">Europe/Vienna</a>, <a href="#EuropeWarsaw">Europe/Warsaw</a>, <a href="#EuropeZagreb">Europe/Zagreb</a>, <a href="#EuropeZurich">Europe/Zurich</a>, <a href="#MET">MET</a></td></tr>
<tr valign=top><td><a name="GMTp200">GMT+2:00</a></td><td><a href="#ART">ART</a>, <a href="#AfricaBlantyre">Africa/Blantyre</a>, <a href="#AfricaBujumbura">Africa/Bujumbura</a>, <a href="#AfricaCairo"><b>Africa/Cairo</b></a>, <a href="#AfricaGaborone">Africa/Gaborone</a>, <a href="#AfricaHarare">Africa/Harare</a>, <a href="#AfricaJohannesburg">Africa/Johannesburg</a>, <a href="#AfricaKigali">Africa/Kigali</a>, <a href="#AfricaLubumbashi">Africa/Lubumbashi</a>, <a href="#AfricaLusaka">Africa/Lusaka</a>, <a href="#AfricaMaputo">Africa/Maputo</a>, <a href="#AfricaMaseru">Africa/Maseru</a>, <a href="#AfricaMbabane">Africa/Mbabane</a>, <a href="#AfricaTripoli">Africa/Tripoli</a>, <a href="#AsiaAmman">Asia/Amman</a>, <a href="#AsiaBeirut">Asia/Beirut</a>, <a href="#AsiaDamascus">Asia/Damascus</a>, <a href="#AsiaGaza">Asia/Gaza</a>, <a href="#AsiaJerusalem">Asia/Jerusalem</a>, <a href="#AsiaNicosia">Asia/Nicosia</a>, <a href="#CAT">CAT</a>, <a href="#EET">EET</a>, <a href="#EtcGMTm2">Etc/GMT-2</a>, <a href="#EuropeAthens">Europe/Athens</a>, <a href="#EuropeBucharest">Europe/Bucharest</a>, <a href="#EuropeChisinau">Europe/Chisinau</a>, <a href="#EuropeHelsinki">Europe/Helsinki</a>, <a href="#EuropeIstanbul">Europe/Istanbul</a>, <a href="#EuropeKaliningrad">Europe/Kaliningrad</a>, <a href="#EuropeKiev">Europe/Kiev</a>, <a href="#EuropeMinsk">Europe/Minsk</a>, <a href="#EuropeRiga">Europe/Riga</a>, <a href="#EuropeSimferopol">Europe/Simferopol</a>, <a href="#EuropeSofia">Europe/Sofia</a>, <a href="#EuropeTallinn">Europe/Tallinn</a>, <a href="#EuropeUzhgorod">Europe/Uzhgorod</a>, <a href="#EuropeVilnius">Europe/Vilnius</a>, <a href="#EuropeZaporozhye">Europe/Zaporozhye</a></td></tr>
<tr valign=top><td><a name="GMTp300">GMT+3:00</a></td><td><a href="#AfricaAddis_Ababa"><b>Africa/Addis_Ababa</b></a>, <a href="#AfricaAsmera">Africa/Asmera</a>, <a href="#AfricaDar_es_Salaam">Africa/Dar_es_Salaam</a>, <a href="#AfricaDjibouti">Africa/Djibouti</a>, <a href="#AfricaKampala">Africa/Kampala</a>, <a href="#AfricaKhartoum">Africa/Khartoum</a>, <a href="#AfricaMogadishu">Africa/Mogadishu</a>, <a href="#AfricaNairobi">Africa/Nairobi</a>, <a href="#AntarcticaSyowa">Antarctica/Syowa</a>, <a href="#AsiaAden">Asia/Aden</a>, <a href="#AsiaBaghdad">Asia/Baghdad</a>, <a href="#AsiaBahrain">Asia/Bahrain</a>, <a href="#AsiaKuwait">Asia/Kuwait</a>, <a href="#AsiaQatar">Asia/Qatar</a>, <a href="#AsiaRiyadh">Asia/Riyadh</a>, <a href="#EAT">EAT</a>, <a href="#EtcGMTm3">Etc/GMT-3</a>, <a href="#EuropeMoscow">Europe/Moscow</a>, <a href="#EuropeTiraspol">Europe/Tiraspol</a>, <a href="#IndianAntananarivo">Indian/Antananarivo</a>, <a href="#IndianComoro">Indian/Comoro</a>, <a href="#IndianMayotte">Indian/Mayotte</a></td></tr>
<tr valign=top><td><a name="GMTp30704">GMT+3:07:04</a></td><td><a href="#AsiaRiyadh87">Asia/Riyadh87</a>, <a href="#AsiaRiyadh88">Asia/Riyadh88</a>, <a href="#AsiaRiyadh89"><b>Asia/Riyadh89</b></a></td></tr>
<tr valign=top><td><a name="GMTp330">GMT+3:30</a></td><td><a href="#AsiaTehran"><b>Asia/Tehran</b></a></td></tr>
<tr valign=top><td><a name="GMTp400">GMT+4:00</a></td><td><a href="#AsiaAqtau">Asia/Aqtau</a>, <a href="#AsiaBaku">Asia/Baku</a>, <a href="#AsiaDubai">Asia/Dubai</a>, <a href="#AsiaMuscat">Asia/Muscat</a>, <a href="#AsiaTbilisi">Asia/Tbilisi</a>, <a href="#AsiaYerevan"><b>Asia/Yerevan</b></a>, <a href="#EtcGMTm4">Etc/GMT-4</a>, <a href="#EuropeSamara">Europe/Samara</a>, <a href="#IndianMahe">Indian/Mahe</a>, <a href="#IndianMauritius">Indian/Mauritius</a>, <a href="#IndianReunion">Indian/Reunion</a>, <a href="#NET">NET</a></td></tr>
<tr valign=top><td><a name="GMTp430">GMT+4:30</a></td><td><a href="#AsiaKabul"><b>Asia/Kabul</b></a></td></tr>
<tr valign=top><td><a name="GMTp500">GMT+5:00</a></td><td><a href="#AsiaAqtobe">Asia/Aqtobe</a>, <a href="#AsiaAshgabat">Asia/Ashgabat</a>, <a href="#AsiaBishkek">Asia/Bishkek</a>, <a href="#AsiaDushanbe">Asia/Dushanbe</a>, <a href="#AsiaKarachi"><b>Asia/Karachi</b></a>, <a href="#AsiaSamarkand">Asia/Samarkand</a>, <a href="#AsiaTashkent">Asia/Tashkent</a>, <a href="#AsiaYekaterinburg">Asia/Yekaterinburg</a>, <a href="#EtcGMTm5">Etc/GMT-5</a>, <a href="#IndianChagos">Indian/Chagos</a>, <a href="#IndianKerguelen">Indian/Kerguelen</a>, <a href="#IndianMaldives">Indian/Maldives</a>, <a href="#PLT">PLT</a></td></tr>
<tr valign=top><td><a name="GMTp530">GMT+5:30</a></td><td><a href="#AsiaCalcutta"><b>Asia/Calcutta</b></a>, <a href="#IST">IST</a></td></tr>
<tr valign=top><td><a name="GMTp545">GMT+5:45</a></td><td><a href="#AsiaKatmandu"><b>Asia/Katmandu</b></a></td></tr>
<tr valign=top><td><a name="GMTp600">GMT+6:00</a></td><td><a href="#AntarcticaMawson">Antarctica/Mawson</a>, <a href="#AsiaAlmaty">Asia/Almaty</a>, <a href="#AsiaColombo">Asia/Colombo</a>, <a href="#AsiaDhaka"><b>Asia/Dhaka</b></a>, <a href="#AsiaNovosibirsk">Asia/Novosibirsk</a>, <a href="#AsiaOmsk">Asia/Omsk</a>, <a href="#AsiaThimphu">Asia/Thimphu</a>, <a href="#BST">BST</a>, <a href="#EtcGMTm6">Etc/GMT-6</a></td></tr>
<tr valign=top><td><a name="GMTp630">GMT+6:30</a></td><td><a href="#AsiaRangoon"><b>Asia/Rangoon</b></a>, <a href="#IndianCocos">Indian/Cocos</a></td></tr>
<tr valign=top><td><a name="GMTp700">GMT+7:00</a></td><td><a href="#AntarcticaDavis">Antarctica/Davis</a>, <a href="#AsiaBangkok">Asia/Bangkok</a>, <a href="#AsiaHovd">Asia/Hovd</a>, <a href="#AsiaJakarta">Asia/Jakarta</a>, <a href="#AsiaKrasnoyarsk">Asia/Krasnoyarsk</a>, <a href="#AsiaPhnom_Penh">Asia/Phnom_Penh</a>, <a href="#AsiaSaigon"><b>Asia/Saigon</b></a>, <a href="#AsiaVientiane">Asia/Vientiane</a>, <a href="#EtcGMTm7">Etc/GMT-7</a>, <a href="#IndianChristmas">Indian/Christmas</a>, <a href="#VST">VST</a></td></tr>
<tr valign=top><td><a name="GMTp800">GMT+8:00</a></td><td><a href="#AntarcticaCasey">Antarctica/Casey</a>, <a href="#AsiaBrunei">Asia/Brunei</a>, <a href="#AsiaChungking">Asia/Chungking</a>, <a href="#AsiaHarbin">Asia/Harbin</a>, <a href="#AsiaHong_Kong">Asia/Hong_Kong</a>, <a href="#AsiaIrkutsk">Asia/Irkutsk</a>, <a href="#AsiaKashgar">Asia/Kashgar</a>, <a href="#AsiaKuala_Lumpur">Asia/Kuala_Lumpur</a>, <a href="#AsiaKuching">Asia/Kuching</a>, <a href="#AsiaMacao">Asia/Macao</a>, <a href="#AsiaManila">Asia/Manila</a>, <a href="#AsiaShanghai"><b>Asia/Shanghai</b></a>, <a href="#AsiaSingapore">Asia/Singapore</a>, <a href="#AsiaTaipei">Asia/Taipei</a>, <a href="#AsiaUjung_Pandang">Asia/Ujung_Pandang</a>, <a href="#AsiaUlaanbaatar">Asia/Ulaanbaatar</a>, <a href="#AsiaUrumqi">Asia/Urumqi</a>, <a href="#AustraliaPerth">Australia/Perth</a>, <a href="#CTT">CTT</a>, <a href="#EtcGMTm8">Etc/GMT-8</a></td></tr>
<tr valign=top><td><a name="GMTp900">GMT+9:00</a></td><td><a href="#AsiaDili">Asia/Dili</a>, <a href="#AsiaJayapura">Asia/Jayapura</a>, <a href="#AsiaPyongyang">Asia/Pyongyang</a>, <a href="#AsiaSeoul">Asia/Seoul</a>, <a href="#AsiaTokyo"><b>Asia/Tokyo</b></a>, <a href="#AsiaYakutsk">Asia/Yakutsk</a>, <a href="#EtcGMTm9">Etc/GMT-9</a>, <a href="#JST">JST</a>, <a href="#PacificPalau">Pacific/Palau</a></td></tr>
<tr valign=top><td><a name="GMTp930">GMT+9:30</a></td><td><a href="#ACT">ACT</a>, <a href="#AustraliaAdelaide">Australia/Adelaide</a>, <a href="#AustraliaBroken_Hill">Australia/Broken_Hill</a>, <a href="#AustraliaDarwin"><b>Australia/Darwin</b></a></td></tr>
<tr valign=top><td><a name="GMTp1000">GMT+10:00</a></td><td><a href="#AET">AET</a>, <a href="#AntarcticaDumontDUrville">Antarctica/DumontDUrville</a>, <a href="#AsiaVladivostok">Asia/Vladivostok</a>, <a href="#AustraliaBrisbane">Australia/Brisbane</a>, <a href="#AustraliaHobart">Australia/Hobart</a>, <a href="#AustraliaLindeman">Australia/Lindeman</a>, <a href="#AustraliaMelbourne">Australia/Melbourne</a>, <a href="#AustraliaSydney"><b>Australia/Sydney</b></a>, <a href="#EtcGMTm10">Etc/GMT-10</a>, <a href="#PacificGuam">Pacific/Guam</a>, <a href="#PacificPort_Moresby">Pacific/Port_Moresby</a>, <a href="#PacificSaipan">Pacific/Saipan</a>, <a href="#PacificTruk">Pacific/Truk</a>, <a href="#PacificYap">Pacific/Yap</a></td></tr>
<tr valign=top><td><a name="GMTp1030">GMT+10:30</a></td><td><a href="#AustraliaLord_Howe"><b>Australia/Lord_Howe</b></a></td></tr>
<tr valign=top><td><a name="GMTp1100">GMT+11:00</a></td><td><a href="#AsiaMagadan">Asia/Magadan</a>, <a href="#EtcGMTm11">Etc/GMT-11</a>, <a href="#PacificEfate">Pacific/Efate</a>, <a href="#PacificGuadalcanal"><b>Pacific/Guadalcanal</b></a>, <a href="#PacificKosrae">Pacific/Kosrae</a>, <a href="#PacificNoumea">Pacific/Noumea</a>, <a href="#PacificPonape">Pacific/Ponape</a>, <a href="#SST">SST</a></td></tr>
<tr valign=top><td><a name="GMTp1130">GMT+11:30</a></td><td><a href="#PacificNorfolk"><b>Pacific/Norfolk</b></a></td></tr>
<tr valign=top><td><a name="GMTp1200">GMT+12:00</a></td><td><a href="#AntarcticaMcMurdo">Antarctica/McMurdo</a>, <a href="#AsiaAnadyr">Asia/Anadyr</a>, <a href="#AsiaKamchatka">Asia/Kamchatka</a>, <a href="#EtcGMTm12">Etc/GMT-12</a>, <a href="#NST">NST</a>, <a href="#PacificAuckland"><b>Pacific/Auckland</b></a>, <a href="#PacificFiji">Pacific/Fiji</a>, <a href="#PacificFunafuti">Pacific/Funafuti</a>, <a href="#PacificKwajalein">Pacific/Kwajalein</a>, <a href="#PacificMajuro">Pacific/Majuro</a>, <a href="#PacificNauru">Pacific/Nauru</a>, <a href="#PacificTarawa">Pacific/Tarawa</a>, <a href="#PacificWake">Pacific/Wake</a>, <a href="#PacificWallis">Pacific/Wallis</a></td></tr>
<tr valign=top><td><a name="GMTp1245">GMT+12:45</a></td><td><a href="#PacificChatham"><b>Pacific/Chatham</b></a></td></tr>
<tr valign=top><td><a name="GMTp1300">GMT+13:00</a></td><td><a href="#EtcGMTm13">Etc/GMT-13</a>, <a href="#PacificEnderbury"><b>Pacific/Enderbury</b></a>, <a href="#PacificTongatapu">Pacific/Tongatapu</a></td></tr>
<tr valign=top><td><a name="GMTp1400">GMT+14:00</a></td><td><a href="#EtcGMTm14">Etc/GMT-14</a>, <a href="#PacificKiritimati"><b>Pacific/Kiritimati</b></a></td></tr>
</table>
<hr>
<h2>Time Zones in order of ID</h2>
<p>Zone listed in <strong>bold</strong> are the default zone for their
GMT offset. This default is used by ICU if it cannot identify the host
OS time zone by name. In that case, it uses the default zone for the
host zone offset. See above for a description of <a
href="#cols">columns</a>. See note above for an explanation of the
sort <a href="#order">order</a>.</p>
<p>Times suffixed with 's' are in standard time. Times suffixed with 'u' are in UTC time.
Times without suffixes are in wall time (that is, either standard time or daylight savings
time, depending on which is in effect).</p>
<p><table>
<tr><td>ID</td><td>Offset</td><td>DST Begins</td><td>DST Ends</td><td>Savings</td><td></td></tr>
<tr><td><hr></td><td><hr></td><td><hr></td><td><hr></td><td><hr></td><td></td></tr>
<tr><td><a name="ACT">ACT</a></td><td><a href="#GMTp930">GMT+9:30</a></td><td nowrap>Oct 3 2:00</td><td nowrap>Mar lastSun 2:00</td><td>1:00</td><td><em>alias for</em> <a href="#AustraliaDarwin">Australia/Darwin</a></td></tr>
<tr><td><a name="AET">AET</a></td><td><a href="#GMTp1000">GMT+10:00</a></td><td nowrap>Oct lastSun 2:00s</td><td nowrap>Mar lastSun 2:00s</td><td>1:00</td><td><em>alias for</em> <a href="#AustraliaSydney">Australia/Sydney</a></td></tr>
<tr><td><a name="AGT">AGT</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td colspan=3></td><td><em>alias for</em> <a href="#AmericaBuenos_Aires">America/Buenos_Aires</a></td></tr>
<tr><td><a name="ART">ART</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Apr lastFri 0:00s</td><td nowrap>Sep lastThu 23:00s</td><td>1:00</td><td><em>alias for</em> <a href="#AfricaCairo">Africa/Cairo</a></td></tr>
<tr><td><a name="AST">AST</a></td><td><a href="#GMTm900">GMT-9:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td><em>alias for</em> <a href="#AmericaAnchorage">America/Anchorage</a></td></tr>
<tr><td><a name="AfricaAbidjan">Africa/Abidjan</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaAccra">Africa/Accra</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td nowrap>Sep 1 0:00</td><td nowrap>Dec 31 0:00</td><td>0:20</td><td></td></tr>
<tr><td><b><a name="AfricaAddis_Ababa">Africa/Addis_Ababa</a></b></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td><em>alias </em> <a href="#EAT">EAT</a></td></tr>
<tr><td><a name="AfricaAlgiers">Africa/Algiers</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaAsmera">Africa/Asmera</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaBamako">Africa/Bamako</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaBangui">Africa/Bangui</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaBanjul">Africa/Banjul</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaBissau">Africa/Bissau</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaBlantyre">Africa/Blantyre</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaBrazzaville">Africa/Brazzaville</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaBujumbura">Africa/Bujumbura</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><b><a name="AfricaCairo">Africa/Cairo</a></b></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Apr lastFri 0:00s</td><td nowrap>Sep lastThu 23:00s</td><td>1:00</td><td><em>alias </em> <a href="#ART">ART</a></td></tr>
<tr><td><a name="AfricaCasablanca">Africa/Casablanca</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaCeuta">Africa/Ceuta</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="AfricaConakry">Africa/Conakry</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaDakar">Africa/Dakar</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaDar_es_Salaam">Africa/Dar_es_Salaam</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaDjibouti">Africa/Djibouti</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaDouala">Africa/Douala</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaEl_Aaiun">Africa/El_Aaiun</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaFreetown">Africa/Freetown</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td nowrap>Jun 1 0:00</td><td nowrap>Sep 1 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AfricaGaborone">Africa/Gaborone</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaHarare">Africa/Harare</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td colspan=3></td><td><em>alias </em> <a href="#CAT">CAT</a></td></tr>
<tr><td><a name="AfricaJohannesburg">Africa/Johannesburg</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Sep Sun>=15 2:00</td><td nowrap>Mar Sun>=15 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AfricaKampala">Africa/Kampala</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaKhartoum">Africa/Khartoum</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaKigali">Africa/Kigali</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaKinshasa">Africa/Kinshasa</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaLagos">Africa/Lagos</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaLibreville">Africa/Libreville</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaLome">Africa/Lome</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaLuanda">Africa/Luanda</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaLubumbashi">Africa/Lubumbashi</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaLusaka">Africa/Lusaka</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaMalabo">Africa/Malabo</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaMaputo">Africa/Maputo</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaMaseru">Africa/Maseru</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaMbabane">Africa/Mbabane</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaMogadishu">Africa/Mogadishu</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaMonrovia">Africa/Monrovia</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaNairobi">Africa/Nairobi</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaNdjamena">Africa/Ndjamena</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaNiamey">Africa/Niamey</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaNouakchott">Africa/Nouakchott</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaOuagadougou">Africa/Ouagadougou</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaPortomNovo">Africa/Porto-Novo</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaSao_Tome">Africa/Sao_Tome</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaTimbuktu">Africa/Timbuktu</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaTripoli">Africa/Tripoli</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AfricaTunis">Africa/Tunis</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>May 1 0:00s</td><td nowrap>Sep lastSun 0:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AfricaWindhoek">Africa/Windhoek</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Sep Sun>=1 2:00</td><td nowrap>Apr Sun>=1 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaAdak">America/Adak</a></td><td><a href="#GMTm1000">GMT-10:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><b><a name="AmericaAnchorage">America/Anchorage</a></b></td><td><a href="#GMTm900">GMT-9:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td><em>alias </em> <a href="#AST">AST</a></td></tr>
<tr><td><a name="AmericaAnguilla">America/Anguilla</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaAntigua">America/Antigua</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaAraguaina">America/Araguaina</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td nowrap>Oct Sun>=8 0:00</td><td nowrap>Feb Sun>=15 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaAruba">America/Aruba</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaAsuncion">America/Asuncion</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td nowrap>Oct Sun>=1 0:00</td><td nowrap>Feb lastSun 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaBarbados">America/Barbados</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td nowrap>Apr Sun>=15 2:00</td><td nowrap>Sep 25 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaBelem">America/Belem</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaBelize">America/Belize</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Dec 18 0:00</td><td nowrap>Feb 12 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaBoa_Vista">America/Boa_Vista</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaBogota">America/Bogota</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>May 2 0:00</td><td nowrap>Dec 31 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaBoise">America/Boise</a></td><td><a href="#GMTm700">GMT-7:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><b><a name="AmericaBuenos_Aires">America/Buenos_Aires</a></b></td><td><a href="#GMTm300">GMT-3:00</a></td><td colspan=3></td><td><em>alias </em> <a href="#AGT">AGT</a></td></tr>
<tr><td><a name="AmericaCambridge_Bay">America/Cambridge_Bay</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaCancun">America/Cancun</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaCaracas">America/Caracas</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaCatamarca">America/Catamarca</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaCayenne">America/Cayenne</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaCayman">America/Cayman</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><b><a name="AmericaChicago">America/Chicago</a></b></td><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td><em>alias </em> <a href="#CST">CST</a></td></tr>
<tr><td><a name="AmericaChihuahua">America/Chihuahua</a></td><td><a href="#GMTm700">GMT-7:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaCordoba">America/Cordoba</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaCosta_Rica">America/Costa_Rica</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Jan Sat>=15 0:00</td><td nowrap>Mar 15 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaCuiaba">America/Cuiaba</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td nowrap>Oct Sun>=8 0:00</td><td nowrap>Feb Sun>=15 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaCuracao">America/Curacao</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaDawson">America/Dawson</a></td><td><a href="#GMTm800">GMT-8:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaDawson_Creek">America/Dawson_Creek</a></td><td><a href="#GMTm700">GMT-7:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><b><a name="AmericaDenver">America/Denver</a></b></td><td><a href="#GMTm700">GMT-7:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td><em>alias </em> <a href="#MST">MST</a></td></tr>
<tr><td><a name="AmericaDetroit">America/Detroit</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaDominica">America/Dominica</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaEdmonton">America/Edmonton</a></td><td><a href="#GMTm700">GMT-7:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaEirunepe">America/Eirunepe</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaEl_Salvador">America/El_Salvador</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>May Sun>=1 0:00</td><td nowrap>Sep lastSun 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaFortaleza">America/Fortaleza</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaGlace_Bay">America/Glace_Bay</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaGodthab">America/Godthab</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaGoose_Bay">America/Goose_Bay</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td nowrap>Apr Sun>=1 0:01</td><td nowrap>Oct lastSun 0:01</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaGrand_Turk">America/Grand_Turk</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>Apr Sun>=1 0:00</td><td nowrap>Oct lastSun 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaGrenada">America/Grenada</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaGuadeloupe">America/Guadeloupe</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaGuatemala">America/Guatemala</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Mar 23 0:00</td><td nowrap>Sep 7 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaGuayaquil">America/Guayaquil</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaGuyana">America/Guyana</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaHalifax">America/Halifax</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaHavana">America/Havana</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>Apr Sun>=1 0:00s</td><td nowrap>Oct lastSun 0:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaHermosillo">America/Hermosillo</a></td><td><a href="#GMTm700">GMT-7:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaIndianaKnox">America/Indiana/Knox</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaIndianaMarengo">America/Indiana/Marengo</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaIndianaVevay">America/Indiana/Vevay</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><b><a name="AmericaIndianapolis">America/Indianapolis</a></b></td><td><a href="#GMTm500">GMT-5:00</a></td><td colspan=3></td><td><em>alias </em> <a href="#IET">IET</a></td></tr>
<tr><td><a name="AmericaInuvik">America/Inuvik</a></td><td><a href="#GMTm700">GMT-7:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaIqaluit">America/Iqaluit</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaJamaica">America/Jamaica</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaJujuy">America/Jujuy</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaJuneau">America/Juneau</a></td><td><a href="#GMTm900">GMT-9:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaKentuckyMonticello">America/Kentucky/Monticello</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaLa_Paz">America/La_Paz</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaLima">America/Lima</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>Jan 1 0:00</td><td nowrap>Apr 1 0:00</td><td>1:00</td><td></td></tr>
<tr><td><b><a name="AmericaLos_Angeles">America/Los_Angeles</a></b></td><td><a href="#GMTm800">GMT-8:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td><em>alias </em> <a href="#PST">PST</a></td></tr>
<tr><td><a name="AmericaLouisville">America/Louisville</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaMaceio">America/Maceio</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaManagua">America/Managua</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaManaus">America/Manaus</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaMartinique">America/Martinique</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaMazatlan">America/Mazatlan</a></td><td><a href="#GMTm700">GMT-7:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaMendoza">America/Mendoza</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaMenominee">America/Menominee</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaMerida">America/Merida</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaMexico_City">America/Mexico_City</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaMiquelon">America/Miquelon</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaMonterrey">America/Monterrey</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaMontevideo">America/Montevideo</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td nowrap>Oct 18 0:00</td><td nowrap>Feb 28 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaMontreal">America/Montreal</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaMontserrat">America/Montserrat</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaNassau">America/Nassau</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaNew_York">America/New_York</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td><em>alias </em> <a href="#EST">EST</a></td></tr>
<tr><td><a name="AmericaNipigon">America/Nipigon</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaNome">America/Nome</a></td><td><a href="#GMTm900">GMT-9:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><b><a name="AmericaNoronha">America/Noronha</a></b></td><td><a href="#GMTm200">GMT-2:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaPanama">America/Panama</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaPangnirtung">America/Pangnirtung</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaParamaribo">America/Paramaribo</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaPhoenix">America/Phoenix</a></td><td><a href="#GMTm700">GMT-7:00</a></td><td colspan=3></td><td><em>alias </em> <a href="#PNT">PNT</a></td></tr>
<tr><td><a name="AmericaPortmaumPrince">America/Port-au-Prince</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>Apr Sun>=1 1:00s</td><td nowrap>Oct lastSun 1:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaPort_of_Spain">America/Port_of_Spain</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaPorto_Acre">America/Porto_Acre</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaPorto_Velho">America/Porto_Velho</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><b><a name="AmericaPuerto_Rico">America/Puerto_Rico</a></b></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td><em>alias </em> <a href="#PRT">PRT</a></td></tr>
<tr><td><a name="AmericaRainy_River">America/Rainy_River</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaRankin_Inlet">America/Rankin_Inlet</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaRecife">America/Recife</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaRegina">America/Regina</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaRosario">America/Rosario</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaSantiago">America/Santiago</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td nowrap>Oct Sun>=9 0:00</td><td nowrap>Mar Sun>=9 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaSanto_Domingo">America/Santo_Domingo</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaSao_Paulo">America/Sao_Paulo</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td nowrap>Oct Sun>=8 0:00</td><td nowrap>Feb Sun>=15 0:00</td><td>1:00</td><td><em>alias </em> <a href="#BET">BET</a></td></tr>
<tr><td><a name="AmericaScoresbysund">America/Scoresbysund</a></td><td><a href="#GMTm100">GMT-1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><b><a name="AmericaSt_Johns">America/St_Johns</a></b></td><td><a href="#GMTm330">GMT-3:30</a></td><td nowrap>Apr Sun>=1 0:01</td><td nowrap>Oct lastSun 0:01</td><td>1:00</td><td><em>alias </em> <a href="#CNT">CNT</a></td></tr>
<tr><td><a name="AmericaSt_Kitts">America/St_Kitts</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaSt_Lucia">America/St_Lucia</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaSt_Thomas">America/St_Thomas</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaSt_Vincent">America/St_Vincent</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaSwift_Current">America/Swift_Current</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaTegucigalpa">America/Tegucigalpa</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>May Sun>=1 0:00</td><td nowrap>Sep lastSun 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaThule">America/Thule</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaThunder_Bay">America/Thunder_Bay</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaTijuana">America/Tijuana</a></td><td><a href="#GMTm800">GMT-8:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaTortola">America/Tortola</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AmericaVancouver">America/Vancouver</a></td><td><a href="#GMTm800">GMT-8:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaWhitehorse">America/Whitehorse</a></td><td><a href="#GMTm800">GMT-8:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaWinnipeg">America/Winnipeg</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaYakutat">America/Yakutat</a></td><td><a href="#GMTm900">GMT-9:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AmericaYellowknife">America/Yellowknife</a></td><td><a href="#GMTm700">GMT-7:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AntarcticaCasey">Antarctica/Casey</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AntarcticaDavis">Antarctica/Davis</a></td><td><a href="#GMTp700">GMT+7:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AntarcticaDumontDUrville">Antarctica/DumontDUrville</a></td><td><a href="#GMTp1000">GMT+10:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AntarcticaMawson">Antarctica/Mawson</a></td><td><a href="#GMTp600">GMT+6:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AntarcticaMcMurdo">Antarctica/McMurdo</a></td><td><a href="#GMTp1200">GMT+12:00</a></td><td nowrap>Oct Sun>=1 2:00s</td><td nowrap>Mar Sun>=15 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AntarcticaPalmer">Antarctica/Palmer</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td nowrap>Oct Sun>=9 0:00</td><td nowrap>Mar Sun>=9 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AntarcticaSyowa">Antarctica/Syowa</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="ArcticLongyearbyen">Arctic/Longyearbyen</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaAden">Asia/Aden</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaAlmaty">Asia/Almaty</a></td><td><a href="#GMTp600">GMT+6:00</a></td><td nowrap>Mar lastSun 0:00</td><td nowrap>Oct lastSun 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaAmman">Asia/Amman</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastThu 0:00s</td><td nowrap>Sep lastThu 0:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaAnadyr">Asia/Anadyr</a></td><td><a href="#GMTp1200">GMT+12:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaAqtau">Asia/Aqtau</a></td><td><a href="#GMTp400">GMT+4:00</a></td><td nowrap>Mar lastSun 0:00</td><td nowrap>Oct lastSun 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaAqtobe">Asia/Aqtobe</a></td><td><a href="#GMTp500">GMT+5:00</a></td><td nowrap>Mar lastSun 0:00</td><td nowrap>Oct lastSun 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaAshgabat">Asia/Ashgabat</a></td><td><a href="#GMTp500">GMT+5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaBaghdad">Asia/Baghdad</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td nowrap>Apr 1 3:00s</td><td nowrap>Oct 1 3:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaBahrain">Asia/Bahrain</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaBaku">Asia/Baku</a></td><td><a href="#GMTp400">GMT+4:00</a></td><td nowrap>Mar lastSun 1:00</td><td nowrap>Oct lastSun 1:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaBangkok">Asia/Bangkok</a></td><td><a href="#GMTp700">GMT+7:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaBeirut">Asia/Beirut</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastSun 0:00</td><td nowrap>Oct lastSun 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaBishkek">Asia/Bishkek</a></td><td><a href="#GMTp500">GMT+5:00</a></td><td nowrap>Mar lastSun 2:30</td><td nowrap>Oct lastSun 2:30</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaBrunei">Asia/Brunei</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><b><a name="AsiaCalcutta">Asia/Calcutta</a></b></td><td><a href="#GMTp530">GMT+5:30</a></td><td colspan=3></td><td><em>alias </em> <a href="#IST">IST</a></td></tr>
<tr><td><a name="AsiaChungking">Asia/Chungking</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td nowrap>Apr Sun>=10 0:00</td><td nowrap>Sep Sun>=11 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaColombo">Asia/Colombo</a></td><td><a href="#GMTp600">GMT+6:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaDamascus">Asia/Damascus</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Apr 1 0:00</td><td nowrap>Oct 1 0:00</td><td>1:00</td><td></td></tr>
<tr><td><b><a name="AsiaDhaka">Asia/Dhaka</a></b></td><td><a href="#GMTp600">GMT+6:00</a></td><td colspan=3></td><td><em>alias </em> <a href="#BST">BST</a></td></tr>
<tr><td><a name="AsiaDili">Asia/Dili</a></td><td><a href="#GMTp900">GMT+9:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaDubai">Asia/Dubai</a></td><td><a href="#GMTp400">GMT+4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaDushanbe">Asia/Dushanbe</a></td><td><a href="#GMTp500">GMT+5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaGaza">Asia/Gaza</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Apr Fri>=15 0:00</td><td nowrap>Oct Fri>=15 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaHarbin">Asia/Harbin</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td nowrap>Apr Sun>=10 0:00</td><td nowrap>Sep Sun>=11 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaHong_Kong">Asia/Hong_Kong</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td nowrap>May Sun>=8 3:30</td><td nowrap>Oct Sun>=16 3:30</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaHovd">Asia/Hovd</a></td><td><a href="#GMTp700">GMT+7:00</a></td><td nowrap>Mar lastSun 0:00</td><td nowrap>Sep lastSun 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaIrkutsk">Asia/Irkutsk</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaJakarta">Asia/Jakarta</a></td><td><a href="#GMTp700">GMT+7:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaJayapura">Asia/Jayapura</a></td><td><a href="#GMTp900">GMT+9:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaJerusalem">Asia/Jerusalem</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Apr 1 1:00</td><td nowrap>Sep 24 1:00</td><td>1:00</td><td></td></tr>
<tr><td><b><a name="AsiaKabul">Asia/Kabul</a></b></td><td><a href="#GMTp430">GMT+4:30</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaKamchatka">Asia/Kamchatka</a></td><td><a href="#GMTp1200">GMT+12:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><b><a name="AsiaKarachi">Asia/Karachi</a></b></td><td><a href="#GMTp500">GMT+5:00</a></td><td colspan=3></td><td><em>alias </em> <a href="#PLT">PLT</a></td></tr>
<tr><td><a name="AsiaKashgar">Asia/Kashgar</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td nowrap>Apr Sun>=10 0:00</td><td nowrap>Sep Sun>=11 0:00</td><td>1:00</td><td></td></tr>
<tr><td><b><a name="AsiaKatmandu">Asia/Katmandu</a></b></td><td><a href="#GMTp545">GMT+5:45</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaKrasnoyarsk">Asia/Krasnoyarsk</a></td><td><a href="#GMTp700">GMT+7:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaKuala_Lumpur">Asia/Kuala_Lumpur</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaKuching">Asia/Kuching</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaKuwait">Asia/Kuwait</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaMacao">Asia/Macao</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td nowrap>Apr Sun>=10 0:00</td><td nowrap>Sep Sun>=11 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaMagadan">Asia/Magadan</a></td><td><a href="#GMTp1100">GMT+11:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaManila">Asia/Manila</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td nowrap>Mar 22 0:00</td><td nowrap>Sep 21 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaMuscat">Asia/Muscat</a></td><td><a href="#GMTp400">GMT+4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaNicosia">Asia/Nicosia</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaNovosibirsk">Asia/Novosibirsk</a></td><td><a href="#GMTp600">GMT+6:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaOmsk">Asia/Omsk</a></td><td><a href="#GMTp600">GMT+6:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaPhnom_Penh">Asia/Phnom_Penh</a></td><td><a href="#GMTp700">GMT+7:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaPyongyang">Asia/Pyongyang</a></td><td><a href="#GMTp900">GMT+9:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaQatar">Asia/Qatar</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><b><a name="AsiaRangoon">Asia/Rangoon</a></b></td><td><a href="#GMTp630">GMT+6:30</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaRiyadh">Asia/Riyadh</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaRiyadh87">Asia/Riyadh87</a></td><td><a href="#GMTp30704">GMT+3:07:04</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaRiyadh88">Asia/Riyadh88</a></td><td><a href="#GMTp30704">GMT+3:07:04</a></td><td colspan=3></td><td></td></tr>
<tr><td><b><a name="AsiaRiyadh89">Asia/Riyadh89</a></b></td><td><a href="#GMTp30704">GMT+3:07:04</a></td><td colspan=3></td><td></td></tr>
<tr><td><b><a name="AsiaSaigon">Asia/Saigon</a></b></td><td><a href="#GMTp700">GMT+7:00</a></td><td colspan=3></td><td><em>alias </em> <a href="#VST">VST</a></td></tr>
<tr><td><a name="AsiaSamarkand">Asia/Samarkand</a></td><td><a href="#GMTp500">GMT+5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaSeoul">Asia/Seoul</a></td><td><a href="#GMTp900">GMT+9:00</a></td><td nowrap>May Sun<=14 0:00</td><td nowrap>Oct Sun<=14 0:00</td><td>1:00</td><td></td></tr>
<tr><td><b><a name="AsiaShanghai">Asia/Shanghai</a></b></td><td><a href="#GMTp800">GMT+8:00</a></td><td nowrap>Apr Sun>=10 0:00</td><td nowrap>Sep Sun>=11 0:00</td><td>1:00</td><td><em>alias </em> <a href="#CTT">CTT</a></td></tr>
<tr><td><a name="AsiaSingapore">Asia/Singapore</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaTaipei">Asia/Taipei</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td nowrap>Jun 30 0:00</td><td nowrap>Sep 30 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaTashkent">Asia/Tashkent</a></td><td><a href="#GMTp500">GMT+5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaTbilisi">Asia/Tbilisi</a></td><td><a href="#GMTp400">GMT+4:00</a></td><td nowrap>Mar lastSun 0:00</td><td nowrap>Oct lastSun 0:00</td><td>1:00</td><td></td></tr>
<tr><td><b><a name="AsiaTehran">Asia/Tehran</a></b></td><td><a href="#GMTp330">GMT+3:30</a></td><td nowrap>Mar 20 0:00</td><td nowrap>Sep 23 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaThimphu">Asia/Thimphu</a></td><td><a href="#GMTp600">GMT+6:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><b><a name="AsiaTokyo">Asia/Tokyo</a></b></td><td><a href="#GMTp900">GMT+9:00</a></td><td colspan=3></td><td><em>alias </em> <a href="#JST">JST</a></td></tr>
<tr><td><a name="AsiaUjung_Pandang">Asia/Ujung_Pandang</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaUlaanbaatar">Asia/Ulaanbaatar</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td nowrap>Mar lastSun 0:00</td><td nowrap>Sep lastSun 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaUrumqi">Asia/Urumqi</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td nowrap>Apr Sun>=10 0:00</td><td nowrap>Sep Sun>=11 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaVientiane">Asia/Vientiane</a></td><td><a href="#GMTp700">GMT+7:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AsiaVladivostok">Asia/Vladivostok</a></td><td><a href="#GMTp1000">GMT+10:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaYakutsk">Asia/Yakutsk</a></td><td><a href="#GMTp900">GMT+9:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AsiaYekaterinburg">Asia/Yekaterinburg</a></td><td><a href="#GMTp500">GMT+5:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><b><a name="AsiaYerevan">Asia/Yerevan</a></b></td><td><a href="#GMTp400">GMT+4:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td><em>alias </em> <a href="#NET">NET</a></td></tr>
<tr><td><b><a name="AtlanticAzores">Atlantic/Azores</a></b></td><td><a href="#GMTm100">GMT-1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="AtlanticBermuda">Atlantic/Bermuda</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AtlanticCanary">Atlantic/Canary</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="AtlanticCape_Verde">Atlantic/Cape_Verde</a></td><td><a href="#GMTm100">GMT-1:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AtlanticFaeroe">Atlantic/Faeroe</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="AtlanticJan_Mayen">Atlantic/Jan_Mayen</a></td><td><a href="#GMTm100">GMT-1:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AtlanticMadeira">Atlantic/Madeira</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="AtlanticReykjavik">Atlantic/Reykjavik</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AtlanticSouth_Georgia">Atlantic/South_Georgia</a></td><td><a href="#GMTm200">GMT-2:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AtlanticSt_Helena">Atlantic/St_Helena</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="AtlanticStanley">Atlantic/Stanley</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td nowrap>Sep Sun>=8 0:00</td><td nowrap>Apr Sun>=16 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="AustraliaAdelaide">Australia/Adelaide</a></td><td><a href="#GMTp930">GMT+9:30</a></td><td nowrap>Oct lastSun 2:00s</td><td nowrap>Mar lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AustraliaBrisbane">Australia/Brisbane</a></td><td><a href="#GMTp1000">GMT+10:00</a></td><td nowrap>Oct lastSun 2:00s</td><td nowrap>Mar Sun>=1 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AustraliaBroken_Hill">Australia/Broken_Hill</a></td><td><a href="#GMTp930">GMT+9:30</a></td><td nowrap>Oct lastSun 2:00s</td><td nowrap>Mar lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><b><a name="AustraliaDarwin">Australia/Darwin</a></b></td><td><a href="#GMTp930">GMT+9:30</a></td><td nowrap>Oct 3 2:00</td><td nowrap>Mar lastSun 2:00</td><td>1:00</td><td><em>alias </em> <a href="#ACT">ACT</a></td></tr>
<tr><td><a name="AustraliaHobart">Australia/Hobart</a></td><td><a href="#GMTp1000">GMT+10:00</a></td><td nowrap>Oct Sun>=1 2:00s</td><td nowrap>Mar lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AustraliaLindeman">Australia/Lindeman</a></td><td><a href="#GMTp1000">GMT+10:00</a></td><td nowrap>Oct lastSun 2:00s</td><td nowrap>Mar Sun>=1 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><b><a name="AustraliaLord_Howe">Australia/Lord_Howe</a></b></td><td><a href="#GMTp1030">GMT+10:30</a></td><td nowrap>Oct lastSun 2:00s</td><td nowrap>Mar lastSun 2:00s</td><td>0:30</td><td></td></tr>
<tr><td><a name="AustraliaMelbourne">Australia/Melbourne</a></td><td><a href="#GMTp1000">GMT+10:00</a></td><td nowrap>Oct lastSun 2:00s</td><td nowrap>Mar lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="AustraliaPerth">Australia/Perth</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><b><a name="AustraliaSydney">Australia/Sydney</a></b></td><td><a href="#GMTp1000">GMT+10:00</a></td><td nowrap>Oct lastSun 2:00s</td><td nowrap>Mar lastSun 2:00s</td><td>1:00</td><td><em>alias </em> <a href="#AET">AET</a></td></tr>
<tr><td><a name="BET">BET</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td nowrap>Oct Sun>=8 0:00</td><td nowrap>Feb Sun>=15 0:00</td><td>1:00</td><td><em>alias for</em> <a href="#AmericaSao_Paulo">America/Sao_Paulo</a></td></tr>
<tr><td><a name="BST">BST</a></td><td><a href="#GMTp600">GMT+6:00</a></td><td colspan=3></td><td><em>alias for</em> <a href="#AsiaDhaka">Asia/Dhaka</a></td></tr>
<tr><td><a name="CAT">CAT</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td colspan=3></td><td><em>alias for</em> <a href="#AfricaHarare">Africa/Harare</a></td></tr>
<tr><td><a name="CET">CET</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="CNT">CNT</a></td><td><a href="#GMTm330">GMT-3:30</a></td><td nowrap>Apr Sun>=1 0:01</td><td nowrap>Oct lastSun 0:01</td><td>1:00</td><td><em>alias for</em> <a href="#AmericaSt_Johns">America/St_Johns</a></td></tr>
<tr><td><a name="CST">CST</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td><em>alias for</em> <a href="#AmericaChicago">America/Chicago</a></td></tr>
<tr><td><a name="CTT">CTT</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td nowrap>Apr Sun>=10 0:00</td><td nowrap>Sep Sun>=11 0:00</td><td>1:00</td><td><em>alias for</em> <a href="#AsiaShanghai">Asia/Shanghai</a></td></tr>
<tr><td><a name="EAT">EAT</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td><em>alias for</em> <a href="#AfricaAddis_Ababa">Africa/Addis_Ababa</a></td></tr>
<tr><td><a name="ECT">ECT</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td><em>alias for</em> <a href="#EuropeParis">Europe/Paris</a></td></tr>
<tr><td><a name="EET">EET</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EST">EST</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td><em>alias for</em> <a href="#AmericaNew_York">America/New_York</a></td></tr>
<tr><td><a name="EtcGMT">Etc/GMT</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTp1">Etc/GMT+1</a></td><td><a href="#GMTm100">GMT-1:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTp10">Etc/GMT+10</a></td><td><a href="#GMTm1000">GMT-10:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTp11">Etc/GMT+11</a></td><td><a href="#GMTm1100">GMT-11:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><b><a name="EtcGMTp12">Etc/GMT+12</a></b></td><td><a href="#GMTm1200">GMT-12:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTp2">Etc/GMT+2</a></td><td><a href="#GMTm200">GMT-2:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTp3">Etc/GMT+3</a></td><td><a href="#GMTm300">GMT-3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTp4">Etc/GMT+4</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTp5">Etc/GMT+5</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTp6">Etc/GMT+6</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTp7">Etc/GMT+7</a></td><td><a href="#GMTm700">GMT-7:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTp8">Etc/GMT+8</a></td><td><a href="#GMTm800">GMT-8:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTp9">Etc/GMT+9</a></td><td><a href="#GMTm900">GMT-9:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTm1">Etc/GMT-1</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTm10">Etc/GMT-10</a></td><td><a href="#GMTp1000">GMT+10:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTm11">Etc/GMT-11</a></td><td><a href="#GMTp1100">GMT+11:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTm12">Etc/GMT-12</a></td><td><a href="#GMTp1200">GMT+12:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTm13">Etc/GMT-13</a></td><td><a href="#GMTp1300">GMT+13:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTm14">Etc/GMT-14</a></td><td><a href="#GMTp1400">GMT+14:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTm2">Etc/GMT-2</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTm3">Etc/GMT-3</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTm4">Etc/GMT-4</a></td><td><a href="#GMTp400">GMT+4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTm5">Etc/GMT-5</a></td><td><a href="#GMTp500">GMT+5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTm6">Etc/GMT-6</a></td><td><a href="#GMTp600">GMT+6:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTm7">Etc/GMT-7</a></td><td><a href="#GMTp700">GMT+7:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTm8">Etc/GMT-8</a></td><td><a href="#GMTp800">GMT+8:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcGMTm9">Etc/GMT-9</a></td><td><a href="#GMTp900">GMT+9:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcUCT">Etc/UCT</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EtcUTC">Etc/UTC</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td><em>alias </em> <a href="#UTC">UTC</a></td></tr>
<tr><td><a name="EuropeAmsterdam">Europe/Amsterdam</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeAndorra">Europe/Andorra</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeAthens">Europe/Athens</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeBelfast">Europe/Belfast</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeBelgrade">Europe/Belgrade</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeBerlin">Europe/Berlin</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeBratislava">Europe/Bratislava</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeBrussels">Europe/Brussels</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeBucharest">Europe/Bucharest</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeBudapest">Europe/Budapest</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeChisinau">Europe/Chisinau</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeCopenhagen">Europe/Copenhagen</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeDublin">Europe/Dublin</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeGibraltar">Europe/Gibraltar</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeHelsinki">Europe/Helsinki</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeIstanbul">Europe/Istanbul</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeKaliningrad">Europe/Kaliningrad</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeKiev">Europe/Kiev</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeLisbon">Europe/Lisbon</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeLjubljana">Europe/Ljubljana</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeLondon">Europe/London</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeLuxembourg">Europe/Luxembourg</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeMadrid">Europe/Madrid</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeMalta">Europe/Malta</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeMinsk">Europe/Minsk</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeMonaco">Europe/Monaco</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeMoscow">Europe/Moscow</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeOslo">Europe/Oslo</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><b><a name="EuropeParis">Europe/Paris</a></b></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td><em>alias </em> <a href="#ECT">ECT</a></td></tr>
<tr><td><a name="EuropePrague">Europe/Prague</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeRiga">Europe/Riga</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EuropeRome">Europe/Rome</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeSamara">Europe/Samara</a></td><td><a href="#GMTp400">GMT+4:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeSan_Marino">Europe/San_Marino</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeSarajevo">Europe/Sarajevo</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeSimferopol">Europe/Simferopol</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeSkopje">Europe/Skopje</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeSofia">Europe/Sofia</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeStockholm">Europe/Stockholm</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeTallinn">Europe/Tallinn</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EuropeTirane">Europe/Tirane</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeTiraspol">Europe/Tiraspol</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeUzhgorod">Europe/Uzhgorod</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeVaduz">Europe/Vaduz</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeVatican">Europe/Vatican</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeVienna">Europe/Vienna</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeVilnius">Europe/Vilnius</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="EuropeWarsaw">Europe/Warsaw</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeZagreb">Europe/Zagreb</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeZaporozhye">Europe/Zaporozhye</a></td><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><a name="EuropeZurich">Europe/Zurich</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
<tr><td><b><a name="GMT">GMT</a></b></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="HST">HST</a></td><td><a href="#GMTm1000">GMT-10:00</a></td><td colspan=3></td><td><em>alias for</em> <a href="#PacificHonolulu">Pacific/Honolulu</a></td></tr>
<tr><td><a name="IET">IET</a></td><td><a href="#GMTm500">GMT-5:00</a></td><td colspan=3></td><td><em>alias for</em> <a href="#AmericaIndianapolis">America/Indianapolis</a></td></tr>
<tr><td><a name="IST">IST</a></td><td><a href="#GMTp530">GMT+5:30</a></td><td colspan=3></td><td><em>alias for</em> <a href="#AsiaCalcutta">Asia/Calcutta</a></td></tr>
<tr><td><a name="IndianAntananarivo">Indian/Antananarivo</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="IndianChagos">Indian/Chagos</a></td><td><a href="#GMTp500">GMT+5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="IndianChristmas">Indian/Christmas</a></td><td><a href="#GMTp700">GMT+7:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="IndianCocos">Indian/Cocos</a></td><td><a href="#GMTp630">GMT+6:30</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="IndianComoro">Indian/Comoro</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="IndianKerguelen">Indian/Kerguelen</a></td><td><a href="#GMTp500">GMT+5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="IndianMahe">Indian/Mahe</a></td><td><a href="#GMTp400">GMT+4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="IndianMaldives">Indian/Maldives</a></td><td><a href="#GMTp500">GMT+5:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="IndianMauritius">Indian/Mauritius</a></td><td><a href="#GMTp400">GMT+4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="IndianMayotte">Indian/Mayotte</a></td><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="IndianReunion">Indian/Reunion</a></td><td><a href="#GMTp400">GMT+4:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="JST">JST</a></td><td><a href="#GMTp900">GMT+9:00</a></td><td colspan=3></td><td><em>alias for</em> <a href="#AsiaTokyo">Asia/Tokyo</a></td></tr>
<tr><td><a name="MET">MET</a></td><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="MIT">MIT</a></td><td><a href="#GMTm1100">GMT-11:00</a></td><td colspan=3></td><td><em>alias for</em> <a href="#PacificApia">Pacific/Apia</a></td></tr>
<tr><td><a name="MST">MST</a></td><td><a href="#GMTm700">GMT-7:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td><em>alias for</em> <a href="#AmericaDenver">America/Denver</a></td></tr>
<tr><td><a name="NET">NET</a></td><td><a href="#GMTp400">GMT+4:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td><em>alias for</em> <a href="#AsiaYerevan">Asia/Yerevan</a></td></tr>
<tr><td><a name="NST">NST</a></td><td><a href="#GMTp1200">GMT+12:00</a></td><td nowrap>Oct Sun>=1 2:00s</td><td nowrap>Mar Sun>=15 2:00s</td><td>1:00</td><td><em>alias for</em> <a href="#PacificAuckland">Pacific/Auckland</a></td></tr>
<tr><td><a name="PLT">PLT</a></td><td><a href="#GMTp500">GMT+5:00</a></td><td colspan=3></td><td><em>alias for</em> <a href="#AsiaKarachi">Asia/Karachi</a></td></tr>
<tr><td><a name="PNT">PNT</a></td><td><a href="#GMTm700">GMT-7:00</a></td><td colspan=3></td><td><em>alias for</em> <a href="#AmericaPhoenix">America/Phoenix</a></td></tr>
<tr><td><a name="PRT">PRT</a></td><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td><em>alias for</em> <a href="#AmericaPuerto_Rico">America/Puerto_Rico</a></td></tr>
<tr><td><a name="PST">PST</a></td><td><a href="#GMTm800">GMT-8:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td><em>alias for</em> <a href="#AmericaLos_Angeles">America/Los_Angeles</a></td></tr>
<tr><td><b><a name="PacificApia">Pacific/Apia</a></b></td><td><a href="#GMTm1100">GMT-11:00</a></td><td colspan=3></td><td><em>alias </em> <a href="#MIT">MIT</a></td></tr>
<tr><td><b><a name="PacificAuckland">Pacific/Auckland</a></b></td><td><a href="#GMTp1200">GMT+12:00</a></td><td nowrap>Oct Sun>=1 2:00s</td><td nowrap>Mar Sun>=15 2:00s</td><td>1:00</td><td><em>alias </em> <a href="#NST">NST</a></td></tr>
<tr><td><b><a name="PacificChatham">Pacific/Chatham</a></b></td><td><a href="#GMTp1245">GMT+12:45</a></td><td nowrap>Oct Sun>=1 2:45s</td><td nowrap>Mar Sun>=15 2:45s</td><td>1:00</td><td></td></tr>
<tr><td><a name="PacificEaster">Pacific/Easter</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Oct Sun>=9 0:00</td><td nowrap>Mar Sun>=9 0:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="PacificEfate">Pacific/Efate</a></td><td><a href="#GMTp1100">GMT+11:00</a></td><td nowrap>Oct Sun>=23 0:00</td><td nowrap>Jan Sun>=23 0:00</td><td>1:00</td><td></td></tr>
<tr><td><b><a name="PacificEnderbury">Pacific/Enderbury</a></b></td><td><a href="#GMTp1300">GMT+13:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificFakaofo">Pacific/Fakaofo</a></td><td><a href="#GMTm1000">GMT-10:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificFiji">Pacific/Fiji</a></td><td><a href="#GMTp1200">GMT+12:00</a></td><td nowrap>Nov Sun>=1 2:00</td><td nowrap>Feb lastSun 3:00</td><td>1:00</td><td></td></tr>
<tr><td><a name="PacificFunafuti">Pacific/Funafuti</a></td><td><a href="#GMTp1200">GMT+12:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificGalapagos">Pacific/Galapagos</a></td><td><a href="#GMTm600">GMT-6:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificGambier">Pacific/Gambier</a></td><td><a href="#GMTm900">GMT-9:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><b><a name="PacificGuadalcanal">Pacific/Guadalcanal</a></b></td><td><a href="#GMTp1100">GMT+11:00</a></td><td colspan=3></td><td><em>alias </em> <a href="#SST">SST</a></td></tr>
<tr><td><a name="PacificGuam">Pacific/Guam</a></td><td><a href="#GMTp1000">GMT+10:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><b><a name="PacificHonolulu">Pacific/Honolulu</a></b></td><td><a href="#GMTm1000">GMT-10:00</a></td><td colspan=3></td><td><em>alias </em> <a href="#HST">HST</a></td></tr>
<tr><td><a name="PacificJohnston">Pacific/Johnston</a></td><td><a href="#GMTm1000">GMT-10:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><b><a name="PacificKiritimati">Pacific/Kiritimati</a></b></td><td><a href="#GMTp1400">GMT+14:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificKosrae">Pacific/Kosrae</a></td><td><a href="#GMTp1100">GMT+11:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificKwajalein">Pacific/Kwajalein</a></td><td><a href="#GMTp1200">GMT+12:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificMajuro">Pacific/Majuro</a></td><td><a href="#GMTp1200">GMT+12:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><b><a name="PacificMarquesas">Pacific/Marquesas</a></b></td><td><a href="#GMTm930">GMT-9:30</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificMidway">Pacific/Midway</a></td><td><a href="#GMTm1100">GMT-11:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificNauru">Pacific/Nauru</a></td><td><a href="#GMTp1200">GMT+12:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificNiue">Pacific/Niue</a></td><td><a href="#GMTm1100">GMT-11:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><b><a name="PacificNorfolk">Pacific/Norfolk</a></b></td><td><a href="#GMTp1130">GMT+11:30</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificNoumea">Pacific/Noumea</a></td><td><a href="#GMTp1100">GMT+11:00</a></td><td nowrap>Dec 1 2:00s</td><td nowrap>Mar 2 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="PacificPago_Pago">Pacific/Pago_Pago</a></td><td><a href="#GMTm1100">GMT-11:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificPalau">Pacific/Palau</a></td><td><a href="#GMTp900">GMT+9:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificPitcairn">Pacific/Pitcairn</a></td><td><a href="#GMTm800">GMT-8:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificPonape">Pacific/Ponape</a></td><td><a href="#GMTp1100">GMT+11:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificPort_Moresby">Pacific/Port_Moresby</a></td><td><a href="#GMTp1000">GMT+10:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificRarotonga">Pacific/Rarotonga</a></td><td><a href="#GMTm1000">GMT-10:00</a></td><td nowrap>Oct lastSun 0:00</td><td nowrap>Mar Sun>=1 0:00</td><td>0:30</td><td></td></tr>
<tr><td><a name="PacificSaipan">Pacific/Saipan</a></td><td><a href="#GMTp1000">GMT+10:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificTahiti">Pacific/Tahiti</a></td><td><a href="#GMTm1000">GMT-10:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificTarawa">Pacific/Tarawa</a></td><td><a href="#GMTp1200">GMT+12:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificTongatapu">Pacific/Tongatapu</a></td><td><a href="#GMTp1300">GMT+13:00</a></td><td nowrap>Nov 4 2:00s</td><td nowrap>Jan 27 2:00s</td><td>1:00</td><td></td></tr>
<tr><td><a name="PacificTruk">Pacific/Truk</a></td><td><a href="#GMTp1000">GMT+10:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificWake">Pacific/Wake</a></td><td><a href="#GMTp1200">GMT+12:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificWallis">Pacific/Wallis</a></td><td><a href="#GMTp1200">GMT+12:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="PacificYap">Pacific/Yap</a></td><td><a href="#GMTp1000">GMT+10:00</a></td><td colspan=3></td><td></td></tr>
<tr><td><a name="SST">SST</a></td><td><a href="#GMTp1100">GMT+11:00</a></td><td colspan=3></td><td><em>alias for</em> <a href="#PacificGuadalcanal">Pacific/Guadalcanal</a></td></tr>
<tr><td><a name="UTC">UTC</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td><em>alias for</em> <a href="#EtcUTC">Etc/UTC</a></td></tr>
<tr><td><a name="VST">VST</a></td><td><a href="#GMTp700">GMT+7:00</a></td><td colspan=3></td><td><em>alias for</em> <a href="#AsiaSaigon">Asia/Saigon</a></td></tr>
<tr><td><a name="WET">WET</a></td><td><a href="#GMTp000">GMT+0:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td></td></tr>
</table>
<hr>
<h2>Time Zone Equivalency Groups</h2>
<p>ICU groups zones into <em>equivalency groups</em>. These are
groups of zones that are identical in GMT offset and in rules, but
that have different IDs. Knowledge of equivalency groups allows ICU
to reduce the amount of data stored. More importantly, it allows ICU
to apply data for one zone to other equivalent zones when appropriate
(e.g., in formatting). Equivalency groups are formed at build time,
not at runtime, so the runtime cost to lookup the equivalency group of
a given zone is negligible.</p>
<p><table>
<tr><td>Offset</td><td>DST Begins</td><td>DST Ends</td><td>Savings</td><td>Zones</td></tr>
<tr><td><hr></td><td><hr></td><td><hr></td><td><hr></td><td><hr></td><td><hr></td></tr>
<tr valign=top><td><a href="#GMTm1200">GMT-12:00</a></td><td colspan=3></td><td>Etc/GMT+12</td></tr>
<tr valign=top><td><a href="#GMTm1100">GMT-11:00</a></td><td colspan=3></td><td>Etc/GMT+11 MIT Pacific/Apia Pacific/Midway Pacific/Niue Pacific/Pago_Pago</td></tr>
<tr valign=top><td><a href="#GMTm1000">GMT-10:00</a></td><td colspan=3></td><td>Etc/GMT+10 HST Pacific/Fakaofo Pacific/Honolulu Pacific/Johnston Pacific/Tahiti</td></tr>
<tr valign=top><td><a href="#GMTm1000">GMT-10:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td>America/Adak</td></tr>
<tr valign=top><td><a href="#GMTm1000">GMT-10:00</a></td><td nowrap>Oct lastSun 0:00</td><td nowrap>Mar Sun>=1 0:00</td><td>0:30</td><td>Pacific/Rarotonga</td></tr>
<tr valign=top><td><a href="#GMTm930">GMT-9:30</a></td><td colspan=3></td><td>Pacific/Marquesas</td></tr>
<tr valign=top><td><a href="#GMTm900">GMT-9:00</a></td><td colspan=3></td><td>Etc/GMT+9 Pacific/Gambier</td></tr>
<tr valign=top><td><a href="#GMTm900">GMT-9:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td>AST America/Anchorage America/Juneau America/Nome America/Yakutat</td></tr>
<tr valign=top><td><a href="#GMTm800">GMT-8:00</a></td><td colspan=3></td><td>Etc/GMT+8 Pacific/Pitcairn</td></tr>
<tr valign=top><td><a href="#GMTm800">GMT-8:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td>America/Dawson America/Los_Angeles America/Tijuana America/Vancouver America/Whitehorse PST</td></tr>
<tr valign=top><td><a href="#GMTm700">GMT-7:00</a></td><td colspan=3></td><td>America/Dawson_Creek America/Hermosillo America/Phoenix Etc/GMT+7 PNT</td></tr>
<tr valign=top><td><a href="#GMTm700">GMT-7:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td>America/Boise America/Chihuahua America/Denver America/Edmonton America/Inuvik America/Mazatlan America/Yellowknife MST</td></tr>
<tr valign=top><td><a href="#GMTm600">GMT-6:00</a></td><td colspan=3></td><td>America/Managua America/Regina America/Swift_Current Etc/GMT+6 Pacific/Galapagos</td></tr>
<tr valign=top><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td>America/Cambridge_Bay America/Cancun America/Chicago America/Menominee America/Merida America/Mexico_City America/Monterrey America/Rainy_River CST</td></tr>
<tr valign=top><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td>America/Winnipeg</td></tr>
<tr valign=top><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Dec 18 0:00</td><td nowrap>Feb 12 0:00</td><td>1:00</td><td>America/Belize</td></tr>
<tr valign=top><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Jan Sat>=15 0:00</td><td nowrap>Mar 15 0:00</td><td>1:00</td><td>America/Costa_Rica</td></tr>
<tr valign=top><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Mar 23 0:00</td><td nowrap>Sep 7 0:00</td><td>1:00</td><td>America/Guatemala</td></tr>
<tr valign=top><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>May Sun>=1 0:00</td><td nowrap>Sep lastSun 0:00</td><td>1:00</td><td>America/El_Salvador America/Tegucigalpa</td></tr>
<tr valign=top><td><a href="#GMTm600">GMT-6:00</a></td><td nowrap>Oct Sun>=9 0:00</td><td nowrap>Mar Sun>=9 0:00</td><td>1:00</td><td>Pacific/Easter</td></tr>
<tr valign=top><td><a href="#GMTm500">GMT-5:00</a></td><td colspan=3></td><td>America/Cayman America/Eirunepe America/Guayaquil America/Indiana/Knox America/Indiana/Marengo America/Indiana/Vevay America/Indianapolis America/Iqaluit America/Jamaica America/Panama America/Pangnirtung America/Porto_Acre America/Rankin_Inlet Etc/GMT+5 IET</td></tr>
<tr valign=top><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>Apr Sun>=1 0:00</td><td nowrap>Oct lastSun 0:00</td><td>1:00</td><td>America/Grand_Turk</td></tr>
<tr valign=top><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>Apr Sun>=1 0:00s</td><td nowrap>Oct lastSun 0:00s</td><td>1:00</td><td>America/Havana</td></tr>
<tr valign=top><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>Apr Sun>=1 1:00s</td><td nowrap>Oct lastSun 1:00s</td><td>1:00</td><td>America/Port-au-Prince</td></tr>
<tr valign=top><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td>America/Detroit America/Kentucky/Monticello America/Louisville America/Montreal America/Nassau America/New_York America/Nipigon America/Thunder_Bay EST</td></tr>
<tr valign=top><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>Jan 1 0:00</td><td nowrap>Apr 1 0:00</td><td>1:00</td><td>America/Lima</td></tr>
<tr valign=top><td><a href="#GMTm500">GMT-5:00</a></td><td nowrap>May 2 0:00</td><td nowrap>Dec 31 0:00</td><td>1:00</td><td>America/Bogota</td></tr>
<tr valign=top><td><a href="#GMTm400">GMT-4:00</a></td><td colspan=3></td><td>America/Anguilla America/Antigua America/Aruba America/Boa_Vista America/Caracas America/Curacao America/Dominica America/Grenada America/Guadeloupe America/Guyana America/La_Paz America/Manaus America/Martinique America/Montserrat America/Port_of_Spain America/Porto_Velho America/Puerto_Rico America/Santo_Domingo America/St_Kitts America/St_Lucia America/St_Thomas America/St_Vincent America/Tortola Etc/GMT+4 PRT</td></tr>
<tr valign=top><td><a href="#GMTm400">GMT-4:00</a></td><td nowrap>Apr Sun>=1 0:01</td><td nowrap>Oct lastSun 0:01</td><td>1:00</td><td>America/Goose_Bay</td></tr>
<tr valign=top><td><a href="#GMTm400">GMT-4:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td>America/Glace_Bay America/Halifax America/Thule Atlantic/Bermuda</td></tr>
<tr valign=top><td><a href="#GMTm400">GMT-4:00</a></td><td nowrap>Apr Sun>=15 2:00</td><td nowrap>Sep 25 2:00</td><td>1:00</td><td>America/Barbados</td></tr>
<tr valign=top><td><a href="#GMTm400">GMT-4:00</a></td><td nowrap>Oct Sun>=1 0:00</td><td nowrap>Feb lastSun 0:00</td><td>1:00</td><td>America/Asuncion</td></tr>
<tr valign=top><td><a href="#GMTm400">GMT-4:00</a></td><td nowrap>Oct Sun>=8 0:00</td><td nowrap>Feb Sun>=15 0:00</td><td>1:00</td><td>America/Cuiaba</td></tr>
<tr valign=top><td><a href="#GMTm400">GMT-4:00</a></td><td nowrap>Oct Sun>=9 0:00</td><td nowrap>Mar Sun>=9 0:00</td><td>1:00</td><td>America/Santiago Antarctica/Palmer</td></tr>
<tr valign=top><td><a href="#GMTm400">GMT-4:00</a></td><td nowrap>Sep Sun>=8 0:00</td><td nowrap>Apr Sun>=16 0:00</td><td>1:00</td><td>Atlantic/Stanley</td></tr>
<tr valign=top><td><a href="#GMTm330">GMT-3:30</a></td><td nowrap>Apr Sun>=1 0:01</td><td nowrap>Oct lastSun 0:01</td><td>1:00</td><td>America/St_Johns CNT</td></tr>
<tr valign=top><td><a href="#GMTm300">GMT-3:00</a></td><td colspan=3></td><td>AGT America/Belem America/Buenos_Aires America/Catamarca America/Cayenne America/Cordoba America/Fortaleza America/Jujuy America/Maceio America/Mendoza America/Paramaribo America/Recife America/Rosario Etc/GMT+3</td></tr>
<tr valign=top><td><a href="#GMTm300">GMT-3:00</a></td><td nowrap>Apr Sun>=1 2:00</td><td nowrap>Oct lastSun 2:00</td><td>1:00</td><td>America/Miquelon</td></tr>
<tr valign=top><td><a href="#GMTm300">GMT-3:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td>America/Godthab</td></tr>
<tr valign=top><td><a href="#GMTm300">GMT-3:00</a></td><td nowrap>Oct 18 0:00</td><td nowrap>Feb 28 0:00</td><td>1:00</td><td>America/Montevideo</td></tr>
<tr valign=top><td><a href="#GMTm300">GMT-3:00</a></td><td nowrap>Oct Sun>=8 0:00</td><td nowrap>Feb Sun>=15 0:00</td><td>1:00</td><td>America/Araguaina America/Sao_Paulo BET</td></tr>
<tr valign=top><td><a href="#GMTm200">GMT-2:00</a></td><td colspan=3></td><td>America/Noronha Atlantic/South_Georgia Etc/GMT+2</td></tr>
<tr valign=top><td><a href="#GMTm100">GMT-1:00</a></td><td colspan=3></td><td>Atlantic/Cape_Verde Atlantic/Jan_Mayen Etc/GMT+1</td></tr>
<tr valign=top><td><a href="#GMTm100">GMT-1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td>America/Scoresbysund Atlantic/Azores</td></tr>
<tr valign=top><td><a href="#GMTp000">GMT+0:00</a></td><td colspan=3></td><td>Africa/Abidjan Africa/Bamako Africa/Banjul Africa/Bissau Africa/Casablanca Africa/Conakry Africa/Dakar Africa/El_Aaiun Africa/Lome Africa/Monrovia Africa/Nouakchott Africa/Ouagadougou Africa/Sao_Tome Africa/Timbuktu Atlantic/Reykjavik Atlantic/St_Helena Etc/GMT Etc/UCT Etc/UTC GMT UTC</td></tr>
<tr valign=top><td><a href="#GMTp000">GMT+0:00</a></td><td nowrap>Jun 1 0:00</td><td nowrap>Sep 1 0:00</td><td>1:00</td><td>Africa/Freetown</td></tr>
<tr valign=top><td><a href="#GMTp000">GMT+0:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td>Atlantic/Canary Atlantic/Faeroe Atlantic/Madeira Europe/Belfast Europe/Dublin Europe/Lisbon Europe/London WET</td></tr>
<tr valign=top><td><a href="#GMTp000">GMT+0:00</a></td><td nowrap>Sep 1 0:00</td><td nowrap>Dec 31 0:00</td><td>0:20</td><td>Africa/Accra</td></tr>
<tr valign=top><td><a href="#GMTp100">GMT+1:00</a></td><td colspan=3></td><td>Africa/Algiers Africa/Bangui Africa/Brazzaville Africa/Douala Africa/Kinshasa Africa/Lagos Africa/Libreville Africa/Luanda Africa/Malabo Africa/Ndjamena Africa/Niamey Africa/Porto-Novo Etc/GMT-1</td></tr>
<tr valign=top><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td>Africa/Ceuta Arctic/Longyearbyen ECT Europe/Amsterdam Europe/Andorra Europe/Belgrade Europe/Berlin Europe/Bratislava Europe/Brussels Europe/Budapest Europe/Copenhagen Europe/Gibraltar Europe/Ljubljana Europe/Luxembourg Europe/Madrid Europe/Malta Europe/Monaco Europe/Oslo Europe/Paris Europe/Prague Europe/Rome Europe/San_Marino Europe/Sarajevo Europe/Skopje Europe/Stockholm Europe/Tirane Europe/Vaduz Europe/Vatican Europe/Vienna Europe/Warsaw Europe/Zagreb Europe/Zurich</td></tr>
<tr valign=top><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td>CET MET</td></tr>
<tr valign=top><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>May 1 0:00s</td><td nowrap>Sep lastSun 0:00s</td><td>1:00</td><td>Africa/Tunis</td></tr>
<tr valign=top><td><a href="#GMTp100">GMT+1:00</a></td><td nowrap>Sep Sun>=1 2:00</td><td nowrap>Apr Sun>=1 2:00</td><td>1:00</td><td>Africa/Windhoek</td></tr>
<tr valign=top><td><a href="#GMTp200">GMT+2:00</a></td><td colspan=3></td><td>Africa/Blantyre Africa/Bujumbura Africa/Gaborone Africa/Harare Africa/Kigali Africa/Lubumbashi Africa/Lusaka Africa/Maputo Africa/Maseru Africa/Mbabane Africa/Tripoli CAT Etc/GMT-2 Europe/Riga Europe/Tallinn Europe/Vilnius</td></tr>
<tr valign=top><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Apr 1 0:00</td><td nowrap>Oct 1 0:00</td><td>1:00</td><td>Asia/Damascus</td></tr>
<tr valign=top><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Apr 1 1:00</td><td nowrap>Sep 24 1:00</td><td>1:00</td><td>Asia/Jerusalem</td></tr>
<tr valign=top><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Apr Fri>=15 0:00</td><td nowrap>Oct Fri>=15 0:00</td><td>1:00</td><td>Asia/Gaza</td></tr>
<tr valign=top><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Apr lastFri 0:00s</td><td nowrap>Sep lastThu 23:00s</td><td>1:00</td><td>ART Africa/Cairo</td></tr>
<tr valign=top><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastSun 0:00</td><td nowrap>Oct lastSun 0:00</td><td>1:00</td><td>Asia/Beirut</td></tr>
<tr valign=top><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastSun 1:00u</td><td nowrap>Oct lastSun 1:00u</td><td>1:00</td><td>Asia/Nicosia EET Europe/Athens Europe/Bucharest Europe/Chisinau Europe/Helsinki Europe/Istanbul Europe/Kiev Europe/Simferopol Europe/Sofia Europe/Uzhgorod Europe/Zaporozhye</td></tr>
<tr valign=top><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td>Europe/Kaliningrad Europe/Minsk</td></tr>
<tr valign=top><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Mar lastThu 0:00s</td><td nowrap>Sep lastThu 0:00s</td><td>1:00</td><td>Asia/Amman</td></tr>
<tr valign=top><td><a href="#GMTp200">GMT+2:00</a></td><td nowrap>Sep Sun>=15 2:00</td><td nowrap>Mar Sun>=15 2:00</td><td>1:00</td><td>Africa/Johannesburg</td></tr>
<tr valign=top><td><a href="#GMTp300">GMT+3:00</a></td><td colspan=3></td><td>Africa/Addis_Ababa Africa/Asmera Africa/Dar_es_Salaam Africa/Djibouti Africa/Kampala Africa/Khartoum Africa/Mogadishu Africa/Nairobi Antarctica/Syowa Asia/Aden Asia/Bahrain Asia/Kuwait Asia/Qatar Asia/Riyadh EAT Etc/GMT-3 Indian/Antananarivo Indian/Comoro Indian/Mayotte</td></tr>
<tr valign=top><td><a href="#GMTp300">GMT+3:00</a></td><td nowrap>Apr 1 3:00s</td><td nowrap>Oct 1 3:00s</td><td>1:00</td><td>Asia/Baghdad</td></tr>
<tr valign=top><td><a href="#GMTp300">GMT+3:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td>Europe/Moscow Europe/Tiraspol</td></tr>
<tr valign=top><td><a href="#GMTp30704">GMT+3:07:04</a></td><td colspan=3></td><td>Asia/Riyadh87 Asia/Riyadh88 Asia/Riyadh89</td></tr>
<tr valign=top><td><a href="#GMTp330">GMT+3:30</a></td><td nowrap>Mar 20 0:00</td><td nowrap>Sep 23 0:00</td><td>1:00</td><td>Asia/Tehran</td></tr>
<tr valign=top><td><a href="#GMTp400">GMT+4:00</a></td><td colspan=3></td><td>Asia/Dubai Asia/Muscat Etc/GMT-4 Indian/Mahe Indian/Mauritius Indian/Reunion</td></tr>
<tr valign=top><td><a href="#GMTp400">GMT+4:00</a></td><td nowrap>Mar lastSun 0:00</td><td nowrap>Oct lastSun 0:00</td><td>1:00</td><td>Asia/Aqtau Asia/Tbilisi</td></tr>
<tr valign=top><td><a href="#GMTp400">GMT+4:00</a></td><td nowrap>Mar lastSun 1:00</td><td nowrap>Oct lastSun 1:00</td><td>1:00</td><td>Asia/Baku</td></tr>
<tr valign=top><td><a href="#GMTp400">GMT+4:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td>Asia/Yerevan Europe/Samara NET</td></tr>
<tr valign=top><td><a href="#GMTp430">GMT+4:30</a></td><td colspan=3></td><td>Asia/Kabul</td></tr>
<tr valign=top><td><a href="#GMTp500">GMT+5:00</a></td><td colspan=3></td><td>Asia/Ashgabat Asia/Dushanbe Asia/Karachi Asia/Samarkand Asia/Tashkent Etc/GMT-5 Indian/Chagos Indian/Kerguelen Indian/Maldives PLT</td></tr>
<tr valign=top><td><a href="#GMTp500">GMT+5:00</a></td><td nowrap>Mar lastSun 0:00</td><td nowrap>Oct lastSun 0:00</td><td>1:00</td><td>Asia/Aqtobe</td></tr>
<tr valign=top><td><a href="#GMTp500">GMT+5:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td>Asia/Yekaterinburg</td></tr>
<tr valign=top><td><a href="#GMTp500">GMT+5:00</a></td><td nowrap>Mar lastSun 2:30</td><td nowrap>Oct lastSun 2:30</td><td>1:00</td><td>Asia/Bishkek</td></tr>
<tr valign=top><td><a href="#GMTp530">GMT+5:30</a></td><td colspan=3></td><td>Asia/Calcutta IST</td></tr>
<tr valign=top><td><a href="#GMTp545">GMT+5:45</a></td><td colspan=3></td><td>Asia/Katmandu</td></tr>
<tr valign=top><td><a href="#GMTp600">GMT+6:00</a></td><td colspan=3></td><td>Antarctica/Mawson Asia/Colombo Asia/Dhaka Asia/Thimphu BST Etc/GMT-6</td></tr>
<tr valign=top><td><a href="#GMTp600">GMT+6:00</a></td><td nowrap>Mar lastSun 0:00</td><td nowrap>Oct lastSun 0:00</td><td>1:00</td><td>Asia/Almaty</td></tr>
<tr valign=top><td><a href="#GMTp600">GMT+6:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td>Asia/Novosibirsk Asia/Omsk</td></tr>
<tr valign=top><td><a href="#GMTp630">GMT+6:30</a></td><td colspan=3></td><td>Asia/Rangoon Indian/Cocos</td></tr>
<tr valign=top><td><a href="#GMTp700">GMT+7:00</a></td><td colspan=3></td><td>Antarctica/Davis Asia/Bangkok Asia/Jakarta Asia/Phnom_Penh Asia/Saigon Asia/Vientiane Etc/GMT-7 Indian/Christmas VST</td></tr>
<tr valign=top><td><a href="#GMTp700">GMT+7:00</a></td><td nowrap>Mar lastSun 0:00</td><td nowrap>Sep lastSun 0:00</td><td>1:00</td><td>Asia/Hovd</td></tr>
<tr valign=top><td><a href="#GMTp700">GMT+7:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td>Asia/Krasnoyarsk</td></tr>
<tr valign=top><td><a href="#GMTp800">GMT+8:00</a></td><td colspan=3></td><td>Antarctica/Casey Asia/Brunei Asia/Kuala_Lumpur Asia/Kuching Asia/Singapore Asia/Ujung_Pandang Australia/Perth Etc/GMT-8</td></tr>
<tr valign=top><td><a href="#GMTp800">GMT+8:00</a></td><td nowrap>Apr Sun>=10 0:00</td><td nowrap>Sep Sun>=11 0:00</td><td>1:00</td><td>Asia/Chungking Asia/Harbin Asia/Kashgar Asia/Macao Asia/Shanghai Asia/Urumqi CTT</td></tr>
<tr valign=top><td><a href="#GMTp800">GMT+8:00</a></td><td nowrap>Jun 30 0:00</td><td nowrap>Sep 30 0:00</td><td>1:00</td><td>Asia/Taipei</td></tr>
<tr valign=top><td><a href="#GMTp800">GMT+8:00</a></td><td nowrap>Mar 22 0:00</td><td nowrap>Sep 21 0:00</td><td>1:00</td><td>Asia/Manila</td></tr>
<tr valign=top><td><a href="#GMTp800">GMT+8:00</a></td><td nowrap>Mar lastSun 0:00</td><td nowrap>Sep lastSun 0:00</td><td>1:00</td><td>Asia/Ulaanbaatar</td></tr>
<tr valign=top><td><a href="#GMTp800">GMT+8:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td>Asia/Irkutsk</td></tr>
<tr valign=top><td><a href="#GMTp800">GMT+8:00</a></td><td nowrap>May Sun>=8 3:30</td><td nowrap>Oct Sun>=16 3:30</td><td>1:00</td><td>Asia/Hong_Kong</td></tr>
<tr valign=top><td><a href="#GMTp900">GMT+9:00</a></td><td colspan=3></td><td>Asia/Dili Asia/Jayapura Asia/Pyongyang Asia/Tokyo Etc/GMT-9 JST Pacific/Palau</td></tr>
<tr valign=top><td><a href="#GMTp900">GMT+9:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td>Asia/Yakutsk</td></tr>
<tr valign=top><td><a href="#GMTp900">GMT+9:00</a></td><td nowrap>May Sun<=14 0:00</td><td nowrap>Oct Sun<=14 0:00</td><td>1:00</td><td>Asia/Seoul</td></tr>
<tr valign=top><td><a href="#GMTp930">GMT+9:30</a></td><td nowrap>Oct 3 2:00</td><td nowrap>Mar lastSun 2:00</td><td>1:00</td><td>ACT Australia/Darwin</td></tr>
<tr valign=top><td><a href="#GMTp930">GMT+9:30</a></td><td nowrap>Oct lastSun 2:00s</td><td nowrap>Mar lastSun 2:00s</td><td>1:00</td><td>Australia/Adelaide Australia/Broken_Hill</td></tr>
<tr valign=top><td><a href="#GMTp1000">GMT+10:00</a></td><td colspan=3></td><td>Antarctica/DumontDUrville Etc/GMT-10 Pacific/Guam Pacific/Port_Moresby Pacific/Saipan Pacific/Truk Pacific/Yap</td></tr>
<tr valign=top><td><a href="#GMTp1000">GMT+10:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td>Asia/Vladivostok</td></tr>
<tr valign=top><td><a href="#GMTp1000">GMT+10:00</a></td><td nowrap>Oct lastSun 2:00s</td><td nowrap>Mar lastSun 2:00s</td><td>1:00</td><td>AET Australia/Melbourne Australia/Sydney</td></tr>
<tr valign=top><td><a href="#GMTp1000">GMT+10:00</a></td><td nowrap>Oct lastSun 2:00s</td><td nowrap>Mar Sun>=1 2:00s</td><td>1:00</td><td>Australia/Brisbane Australia/Lindeman</td></tr>
<tr valign=top><td><a href="#GMTp1000">GMT+10:00</a></td><td nowrap>Oct Sun>=1 2:00s</td><td nowrap>Mar lastSun 2:00s</td><td>1:00</td><td>Australia/Hobart</td></tr>
<tr valign=top><td><a href="#GMTp1030">GMT+10:30</a></td><td nowrap>Oct lastSun 2:00s</td><td nowrap>Mar lastSun 2:00s</td><td>0:30</td><td>Australia/Lord_Howe</td></tr>
<tr valign=top><td><a href="#GMTp1100">GMT+11:00</a></td><td colspan=3></td><td>Etc/GMT-11 Pacific/Guadalcanal Pacific/Kosrae Pacific/Ponape SST</td></tr>
<tr valign=top><td><a href="#GMTp1100">GMT+11:00</a></td><td nowrap>Dec 1 2:00s</td><td nowrap>Mar 2 2:00s</td><td>1:00</td><td>Pacific/Noumea</td></tr>
<tr valign=top><td><a href="#GMTp1100">GMT+11:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td>Asia/Magadan</td></tr>
<tr valign=top><td><a href="#GMTp1100">GMT+11:00</a></td><td nowrap>Oct Sun>=23 0:00</td><td nowrap>Jan Sun>=23 0:00</td><td>1:00</td><td>Pacific/Efate</td></tr>
<tr valign=top><td><a href="#GMTp1130">GMT+11:30</a></td><td colspan=3></td><td>Pacific/Norfolk</td></tr>
<tr valign=top><td><a href="#GMTp1200">GMT+12:00</a></td><td colspan=3></td><td>Etc/GMT-12 Pacific/Funafuti Pacific/Kwajalein Pacific/Majuro Pacific/Nauru Pacific/Tarawa Pacific/Wake Pacific/Wallis</td></tr>
<tr valign=top><td><a href="#GMTp1200">GMT+12:00</a></td><td nowrap>Mar lastSun 2:00s</td><td nowrap>Oct lastSun 2:00s</td><td>1:00</td><td>Asia/Anadyr Asia/Kamchatka</td></tr>
<tr valign=top><td><a href="#GMTp1200">GMT+12:00</a></td><td nowrap>Nov Sun>=1 2:00</td><td nowrap>Feb lastSun 3:00</td><td>1:00</td><td>Pacific/Fiji</td></tr>
<tr valign=top><td><a href="#GMTp1200">GMT+12:00</a></td><td nowrap>Oct Sun>=1 2:00s</td><td nowrap>Mar Sun>=15 2:00s</td><td>1:00</td><td>Antarctica/McMurdo NST Pacific/Auckland</td></tr>
<tr valign=top><td><a href="#GMTp1245">GMT+12:45</a></td><td nowrap>Oct Sun>=1 2:45s</td><td nowrap>Mar Sun>=15 2:45s</td><td>1:00</td><td>Pacific/Chatham</td></tr>
<tr valign=top><td><a href="#GMTp1300">GMT+13:00</a></td><td colspan=3></td><td>Etc/GMT-13 Pacific/Enderbury</td></tr>
<tr valign=top><td><a href="#GMTp1300">GMT+13:00</a></td><td nowrap>Nov 4 2:00s</td><td nowrap>Jan 27 2:00s</td><td>1:00</td><td>Pacific/Tongatapu</td></tr>
<tr valign=top><td><a href="#GMTp1400">GMT+14:00</a></td><td colspan=3></td><td>Etc/GMT-14 Pacific/Kiritimati</td></tr>
</table>
<hr>
<h2>Time Zones by Country</h2>
<p>ICU captures and exports the country data from the Olson database.
The country code is the ISO 3166 two-letter code. Some zones have no
associated country; these are listed under the entry "(None)".
<p><table>
<tr><td>Country</td><td>Zones</td></tr>
<tr><td><hr></td><td><hr></td></tr>
<tr valign=top><td nowrap>(None)</td><td><a href="#AsiaRiyadh87">Asia/Riyadh87</a>, <a href="#AsiaRiyadh88">Asia/Riyadh88</a>, <a href="#AsiaRiyadh89">Asia/Riyadh89</a>, <a href="#CET">CET</a>, <a href="#EET">EET</a>, <a href="#EtcGMT">Etc/GMT</a>, <a href="#EtcGMTp1">Etc/GMT+1</a>, <a href="#EtcGMTp10">Etc/GMT+10</a>, <a href="#EtcGMTp11">Etc/GMT+11</a>, <a href="#EtcGMTp12">Etc/GMT+12</a>, <a href="#EtcGMTp2">Etc/GMT+2</a>, <a href="#EtcGMTp3">Etc/GMT+3</a>, <a href="#EtcGMTp4">Etc/GMT+4</a>, <a href="#EtcGMTp5">Etc/GMT+5</a>, <a href="#EtcGMTp6">Etc/GMT+6</a>, <a href="#EtcGMTp7">Etc/GMT+7</a>, <a href="#EtcGMTp8">Etc/GMT+8</a>, <a href="#EtcGMTp9">Etc/GMT+9</a>, <a href="#EtcGMTm1">Etc/GMT-1</a>, <a href="#EtcGMTm10">Etc/GMT-10</a>, <a href="#EtcGMTm11">Etc/GMT-11</a>, <a href="#EtcGMTm12">Etc/GMT-12</a>, <a href="#EtcGMTm13">Etc/GMT-13</a>, <a href="#EtcGMTm14">Etc/GMT-14</a>, <a href="#EtcGMTm2">Etc/GMT-2</a>, <a href="#EtcGMTm3">Etc/GMT-3</a>, <a href="#EtcGMTm4">Etc/GMT-4</a>, <a href="#EtcGMTm5">Etc/GMT-5</a>, <a href="#EtcGMTm6">Etc/GMT-6</a>, <a href="#EtcGMTm7">Etc/GMT-7</a>, <a href="#EtcGMTm8">Etc/GMT-8</a>, <a href="#EtcGMTm9">Etc/GMT-9</a>, <a href="#EtcUCT">Etc/UCT</a>, <a href="#EtcUTC">Etc/UTC</a>, <a href="#GMT">GMT</a>, <a href="#MET">MET</a>, <a href="#UTC">UTC</a>, <a href="#WET">WET</a></td></tr>
<tr valign=top><td nowrap>AD (Andorra)</td><td><a href="#EuropeAndorra">Europe/Andorra</a></td></tr>
<tr valign=top><td nowrap>AE (United Arab Emirates)</td><td><a href="#AsiaDubai">Asia/Dubai</a></td></tr>
<tr valign=top><td nowrap>AF (Afghanistan)</td><td><a href="#AsiaKabul">Asia/Kabul</a></td></tr>
<tr valign=top><td nowrap>AG (Antigua & Barbuda)</td><td><a href="#AmericaAntigua">America/Antigua</a></td></tr>
<tr valign=top><td nowrap>AI (Anguilla)</td><td><a href="#AmericaAnguilla">America/Anguilla</a></td></tr>
<tr valign=top><td nowrap>AL (Albania)</td><td><a href="#EuropeTirane">Europe/Tirane</a></td></tr>
<tr valign=top><td nowrap>AM (Armenia)</td><td><a href="#AsiaYerevan">Asia/Yerevan</a>, <a href="#NET">NET</a></td></tr>
<tr valign=top><td nowrap>AN (Netherlands Antilles)</td><td><a href="#AmericaCuracao">America/Curacao</a></td></tr>
<tr valign=top><td nowrap>AO (Angola)</td><td><a href="#AfricaLuanda">Africa/Luanda</a></td></tr>
<tr valign=top><td nowrap>AQ (Antarctica)</td><td><a href="#AntarcticaCasey">Antarctica/Casey</a>, <a href="#AntarcticaDavis">Antarctica/Davis</a>, <a href="#AntarcticaDumontDUrville">Antarctica/DumontDUrville</a>, <a href="#AntarcticaMawson">Antarctica/Mawson</a>, <a href="#AntarcticaMcMurdo">Antarctica/McMurdo</a>, <a href="#AntarcticaPalmer">Antarctica/Palmer</a>, <a href="#AntarcticaSyowa">Antarctica/Syowa</a></td></tr>
<tr valign=top><td nowrap>AR (Argentina)</td><td><a href="#AGT">AGT</a>, <a href="#AmericaBuenos_Aires">America/Buenos_Aires</a>, <a href="#AmericaCatamarca">America/Catamarca</a>, <a href="#AmericaCordoba">America/Cordoba</a>, <a href="#AmericaJujuy">America/Jujuy</a>, <a href="#AmericaMendoza">America/Mendoza</a>, <a href="#AmericaRosario">America/Rosario</a></td></tr>
<tr valign=top><td nowrap>AS (Samoa (American))</td><td><a href="#PacificPago_Pago">Pacific/Pago_Pago</a></td></tr>
<tr valign=top><td nowrap>AT (Austria)</td><td><a href="#EuropeVienna">Europe/Vienna</a></td></tr>
<tr valign=top><td nowrap>AU (Australia)</td><td><a href="#ACT">ACT</a>, <a href="#AET">AET</a>, <a href="#AustraliaAdelaide">Australia/Adelaide</a>, <a href="#AustraliaBrisbane">Australia/Brisbane</a>, <a href="#AustraliaBroken_Hill">Australia/Broken_Hill</a>, <a href="#AustraliaDarwin">Australia/Darwin</a>, <a href="#AustraliaHobart">Australia/Hobart</a>, <a href="#AustraliaLindeman">Australia/Lindeman</a>, <a href="#AustraliaLord_Howe">Australia/Lord_Howe</a>, <a href="#AustraliaMelbourne">Australia/Melbourne</a>, <a href="#AustraliaPerth">Australia/Perth</a>, <a href="#AustraliaSydney">Australia/Sydney</a></td></tr>
<tr valign=top><td nowrap>AW (Aruba)</td><td><a href="#AmericaAruba">America/Aruba</a></td></tr>
<tr valign=top><td nowrap>AZ (Azerbaijan)</td><td><a href="#AsiaBaku">Asia/Baku</a></td></tr>
<tr valign=top><td nowrap>BA (Bosnia & Herzegovina)</td><td><a href="#EuropeSarajevo">Europe/Sarajevo</a></td></tr>
<tr valign=top><td nowrap>BB (Barbados)</td><td><a href="#AmericaBarbados">America/Barbados</a></td></tr>
<tr valign=top><td nowrap>BD (Bangladesh)</td><td><a href="#AsiaDhaka">Asia/Dhaka</a>, <a href="#BST">BST</a></td></tr>
<tr valign=top><td nowrap>BE (Belgium)</td><td><a href="#EuropeBrussels">Europe/Brussels</a></td></tr>
<tr valign=top><td nowrap>BF (Burkina Faso)</td><td><a href="#AfricaOuagadougou">Africa/Ouagadougou</a></td></tr>
<tr valign=top><td nowrap>BG (Bulgaria)</td><td><a href="#EuropeSofia">Europe/Sofia</a></td></tr>
<tr valign=top><td nowrap>BH (Bahrain)</td><td><a href="#AsiaBahrain">Asia/Bahrain</a></td></tr>
<tr valign=top><td nowrap>BI (Burundi)</td><td><a href="#AfricaBujumbura">Africa/Bujumbura</a></td></tr>
<tr valign=top><td nowrap>BJ (Benin)</td><td><a href="#AfricaPortomNovo">Africa/Porto-Novo</a></td></tr>
<tr valign=top><td nowrap>BM (Bermuda)</td><td><a href="#AtlanticBermuda">Atlantic/Bermuda</a></td></tr>
<tr valign=top><td nowrap>BN (Brunei)</td><td><a href="#AsiaBrunei">Asia/Brunei</a></td></tr>
<tr valign=top><td nowrap>BO (Bolivia)</td><td><a href="#AmericaLa_Paz">America/La_Paz</a></td></tr>
<tr valign=top><td nowrap>BR (Brazil)</td><td><a href="#AmericaAraguaina">America/Araguaina</a>, <a href="#AmericaBelem">America/Belem</a>, <a href="#AmericaBoa_Vista">America/Boa_Vista</a>, <a href="#AmericaCuiaba">America/Cuiaba</a>, <a href="#AmericaEirunepe">America/Eirunepe</a>, <a href="#AmericaFortaleza">America/Fortaleza</a>, <a href="#AmericaMaceio">America/Maceio</a>, <a href="#AmericaManaus">America/Manaus</a>, <a href="#AmericaNoronha">America/Noronha</a>, <a href="#AmericaPorto_Acre">America/Porto_Acre</a>, <a href="#AmericaPorto_Velho">America/Porto_Velho</a>, <a href="#AmericaRecife">America/Recife</a>, <a href="#AmericaSao_Paulo">America/Sao_Paulo</a>, <a href="#BET">BET</a></td></tr>
<tr valign=top><td nowrap>BS (Bahamas)</td><td><a href="#AmericaNassau">America/Nassau</a></td></tr>
<tr valign=top><td nowrap>BT (Bhutan)</td><td><a href="#AsiaThimphu">Asia/Thimphu</a></td></tr>
<tr valign=top><td nowrap>BW (Botswana)</td><td><a href="#AfricaGaborone">Africa/Gaborone</a></td></tr>
<tr valign=top><td nowrap>BY (Belarus)</td><td><a href="#EuropeMinsk">Europe/Minsk</a></td></tr>
<tr valign=top><td nowrap>BZ (Belize)</td><td><a href="#AmericaBelize">America/Belize</a></td></tr>
<tr valign=top><td nowrap>CA (Canada)</td><td><a href="#AmericaCambridge_Bay">America/Cambridge_Bay</a>, <a href="#AmericaDawson">America/Dawson</a>, <a href="#AmericaDawson_Creek">America/Dawson_Creek</a>, <a href="#AmericaEdmonton">America/Edmonton</a>, <a href="#AmericaGlace_Bay">America/Glace_Bay</a>, <a href="#AmericaGoose_Bay">America/Goose_Bay</a>, <a href="#AmericaHalifax">America/Halifax</a>, <a href="#AmericaInuvik">America/Inuvik</a>, <a href="#AmericaIqaluit">America/Iqaluit</a>, <a href="#AmericaMontreal">America/Montreal</a>, <a href="#AmericaNipigon">America/Nipigon</a>, <a href="#AmericaPangnirtung">America/Pangnirtung</a>, <a href="#AmericaRainy_River">America/Rainy_River</a>, <a href="#AmericaRankin_Inlet">America/Rankin_Inlet</a>, <a href="#AmericaRegina">America/Regina</a>, <a href="#AmericaSt_Johns">America/St_Johns</a>, <a href="#AmericaSwift_Current">America/Swift_Current</a>, <a href="#AmericaThunder_Bay">America/Thunder_Bay</a>, <a href="#AmericaVancouver">America/Vancouver</a>, <a href="#AmericaWhitehorse">America/Whitehorse</a>, <a href="#AmericaWinnipeg">America/Winnipeg</a>, <a href="#AmericaYellowknife">America/Yellowknife</a>, <a href="#CNT">CNT</a></td></tr>
<tr valign=top><td nowrap>CC (Cocos (Keeling) Islands)</td><td><a href="#IndianCocos">Indian/Cocos</a></td></tr>
<tr valign=top><td nowrap>CD (Congo (Dem. Rep.))</td><td><a href="#AfricaKinshasa">Africa/Kinshasa</a>, <a href="#AfricaLubumbashi">Africa/Lubumbashi</a></td></tr>
<tr valign=top><td nowrap>CF (Central African Rep.)</td><td><a href="#AfricaBangui">Africa/Bangui</a></td></tr>
<tr valign=top><td nowrap>CG (Congo (Rep.))</td><td><a href="#AfricaBrazzaville">Africa/Brazzaville</a></td></tr>
<tr valign=top><td nowrap>CH (Switzerland)</td><td><a href="#EuropeZurich">Europe/Zurich</a></td></tr>
<tr valign=top><td nowrap>CI (Cote d'Ivoire)</td><td><a href="#AfricaAbidjan">Africa/Abidjan</a></td></tr>
<tr valign=top><td nowrap>CK (Cook Islands)</td><td><a href="#PacificRarotonga">Pacific/Rarotonga</a></td></tr>
<tr valign=top><td nowrap>CL (Chile)</td><td><a href="#AmericaSantiago">America/Santiago</a>, <a href="#PacificEaster">Pacific/Easter</a></td></tr>
<tr valign=top><td nowrap>CM (Cameroon)</td><td><a href="#AfricaDouala">Africa/Douala</a></td></tr>
<tr valign=top><td nowrap>CN (China)</td><td><a href="#AsiaChungking">Asia/Chungking</a>, <a href="#AsiaHarbin">Asia/Harbin</a>, <a href="#AsiaKashgar">Asia/Kashgar</a>, <a href="#AsiaShanghai">Asia/Shanghai</a>, <a href="#AsiaUrumqi">Asia/Urumqi</a>, <a href="#CTT">CTT</a></td></tr>
<tr valign=top><td nowrap>CO (Colombia)</td><td><a href="#AmericaBogota">America/Bogota</a></td></tr>
<tr valign=top><td nowrap>CR (Costa Rica)</td><td><a href="#AmericaCosta_Rica">America/Costa_Rica</a></td></tr>
<tr valign=top><td nowrap>CU (Cuba)</td><td><a href="#AmericaHavana">America/Havana</a></td></tr>
<tr valign=top><td nowrap>CV (Cape Verde)</td><td><a href="#AtlanticCape_Verde">Atlantic/Cape_Verde</a></td></tr>
<tr valign=top><td nowrap>CX (Christmas Island)</td><td><a href="#IndianChristmas">Indian/Christmas</a></td></tr>
<tr valign=top><td nowrap>CY (Cyprus)</td><td><a href="#AsiaNicosia">Asia/Nicosia</a></td></tr>
<tr valign=top><td nowrap>CZ (Czech Republic)</td><td><a href="#EuropePrague">Europe/Prague</a></td></tr>
<tr valign=top><td nowrap>DE (Germany)</td><td><a href="#EuropeBerlin">Europe/Berlin</a></td></tr>
<tr valign=top><td nowrap>DJ (Djibouti)</td><td><a href="#AfricaDjibouti">Africa/Djibouti</a></td></tr>
<tr valign=top><td nowrap>DK (Denmark)</td><td><a href="#EuropeCopenhagen">Europe/Copenhagen</a></td></tr>
<tr valign=top><td nowrap>DM (Dominica)</td><td><a href="#AmericaDominica">America/Dominica</a></td></tr>
<tr valign=top><td nowrap>DO (Dominican Republic)</td><td><a href="#AmericaSanto_Domingo">America/Santo_Domingo</a></td></tr>
<tr valign=top><td nowrap>DZ (Algeria)</td><td><a href="#AfricaAlgiers">Africa/Algiers</a></td></tr>
<tr valign=top><td nowrap>EC (Ecuador)</td><td><a href="#AmericaGuayaquil">America/Guayaquil</a>, <a href="#PacificGalapagos">Pacific/Galapagos</a></td></tr>
<tr valign=top><td nowrap>EE (Estonia)</td><td><a href="#EuropeTallinn">Europe/Tallinn</a></td></tr>
<tr valign=top><td nowrap>EG (Egypt)</td><td><a href="#ART">ART</a>, <a href="#AfricaCairo">Africa/Cairo</a></td></tr>
<tr valign=top><td nowrap>EH (Western Sahara)</td><td><a href="#AfricaEl_Aaiun">Africa/El_Aaiun</a></td></tr>
<tr valign=top><td nowrap>ER (Eritrea)</td><td><a href="#AfricaAsmera">Africa/Asmera</a></td></tr>
<tr valign=top><td nowrap>ES (Spain)</td><td><a href="#AfricaCeuta">Africa/Ceuta</a>, <a href="#AtlanticCanary">Atlantic/Canary</a>, <a href="#EuropeMadrid">Europe/Madrid</a></td></tr>
<tr valign=top><td nowrap>ET (Ethiopia)</td><td><a href="#AfricaAddis_Ababa">Africa/Addis_Ababa</a>, <a href="#EAT">EAT</a></td></tr>
<tr valign=top><td nowrap>FI (Finland)</td><td><a href="#EuropeHelsinki">Europe/Helsinki</a></td></tr>
<tr valign=top><td nowrap>FJ (Fiji)</td><td><a href="#PacificFiji">Pacific/Fiji</a></td></tr>
<tr valign=top><td nowrap>FK (Falkland Islands)</td><td><a href="#AtlanticStanley">Atlantic/Stanley</a></td></tr>
<tr valign=top><td nowrap>FM (Micronesia)</td><td><a href="#PacificKosrae">Pacific/Kosrae</a>, <a href="#PacificPonape">Pacific/Ponape</a>, <a href="#PacificTruk">Pacific/Truk</a>, <a href="#PacificYap">Pacific/Yap</a></td></tr>
<tr valign=top><td nowrap>FO (Faeroe Islands)</td><td><a href="#AtlanticFaeroe">Atlantic/Faeroe</a></td></tr>
<tr valign=top><td nowrap>FR (France)</td><td><a href="#ECT">ECT</a>, <a href="#EuropeParis">Europe/Paris</a></td></tr>
<tr valign=top><td nowrap>GA (Gabon)</td><td><a href="#AfricaLibreville">Africa/Libreville</a></td></tr>
<tr valign=top><td nowrap>GB (Britain (UK))</td><td><a href="#EuropeBelfast">Europe/Belfast</a>, <a href="#EuropeLondon">Europe/London</a></td></tr>
<tr valign=top><td nowrap>GD (Grenada)</td><td><a href="#AmericaGrenada">America/Grenada</a></td></tr>
<tr valign=top><td nowrap>GE (Georgia)</td><td><a href="#AsiaTbilisi">Asia/Tbilisi</a></td></tr>
<tr valign=top><td nowrap>GF (French Guiana)</td><td><a href="#AmericaCayenne">America/Cayenne</a></td></tr>
<tr valign=top><td nowrap>GH (Ghana)</td><td><a href="#AfricaAccra">Africa/Accra</a></td></tr>
<tr valign=top><td nowrap>GI (Gibraltar)</td><td><a href="#EuropeGibraltar">Europe/Gibraltar</a></td></tr>
<tr valign=top><td nowrap>GL (Greenland)</td><td><a href="#AmericaGodthab">America/Godthab</a>, <a href="#AmericaScoresbysund">America/Scoresbysund</a>, <a href="#AmericaThule">America/Thule</a></td></tr>
<tr valign=top><td nowrap>GM (Gambia)</td><td><a href="#AfricaBanjul">Africa/Banjul</a></td></tr>
<tr valign=top><td nowrap>GN (Guinea)</td><td><a href="#AfricaConakry">Africa/Conakry</a></td></tr>
<tr valign=top><td nowrap>GP (Guadeloupe)</td><td><a href="#AmericaGuadeloupe">America/Guadeloupe</a></td></tr>
<tr valign=top><td nowrap>GQ (Equatorial Guinea)</td><td><a href="#AfricaMalabo">Africa/Malabo</a></td></tr>
<tr valign=top><td nowrap>GR (Greece)</td><td><a href="#EuropeAthens">Europe/Athens</a></td></tr>
<tr valign=top><td nowrap>GS (South Georgia & the South Sandwich Islands)</td><td><a href="#AtlanticSouth_Georgia">Atlantic/South_Georgia</a></td></tr>
<tr valign=top><td nowrap>GT (Guatemala)</td><td><a href="#AmericaGuatemala">America/Guatemala</a></td></tr>
<tr valign=top><td nowrap>GU (Guam)</td><td><a href="#PacificGuam">Pacific/Guam</a></td></tr>
<tr valign=top><td nowrap>GW (Guinea-Bissau)</td><td><a href="#AfricaBissau">Africa/Bissau</a></td></tr>
<tr valign=top><td nowrap>GY (Guyana)</td><td><a href="#AmericaGuyana">America/Guyana</a></td></tr>
<tr valign=top><td nowrap>HK (Hong Kong)</td><td><a href="#AsiaHong_Kong">Asia/Hong_Kong</a></td></tr>
<tr valign=top><td nowrap>HN (Honduras)</td><td><a href="#AmericaTegucigalpa">America/Tegucigalpa</a></td></tr>
<tr valign=top><td nowrap>HR (Croatia)</td><td><a href="#EuropeZagreb">Europe/Zagreb</a></td></tr>
<tr valign=top><td nowrap>HT (Haiti)</td><td><a href="#AmericaPortmaumPrince">America/Port-au-Prince</a></td></tr>
<tr valign=top><td nowrap>HU (Hungary)</td><td><a href="#EuropeBudapest">Europe/Budapest</a></td></tr>
<tr valign=top><td nowrap>ID (Indonesia)</td><td><a href="#AsiaJakarta">Asia/Jakarta</a>, <a href="#AsiaJayapura">Asia/Jayapura</a>, <a href="#AsiaUjung_Pandang">Asia/Ujung_Pandang</a></td></tr>
<tr valign=top><td nowrap>IE (Ireland)</td><td><a href="#EuropeDublin">Europe/Dublin</a></td></tr>
<tr valign=top><td nowrap>IL (Israel)</td><td><a href="#AsiaJerusalem">Asia/Jerusalem</a></td></tr>
<tr valign=top><td nowrap>IN (India)</td><td><a href="#AsiaCalcutta">Asia/Calcutta</a>, <a href="#IST">IST</a></td></tr>
<tr valign=top><td nowrap>IO (British Indian Ocean Territory)</td><td><a href="#IndianChagos">Indian/Chagos</a></td></tr>
<tr valign=top><td nowrap>IQ (Iraq)</td><td><a href="#AsiaBaghdad">Asia/Baghdad</a></td></tr>
<tr valign=top><td nowrap>IR (Iran)</td><td><a href="#AsiaTehran">Asia/Tehran</a></td></tr>
<tr valign=top><td nowrap>IS (Iceland)</td><td><a href="#AtlanticReykjavik">Atlantic/Reykjavik</a></td></tr>
<tr valign=top><td nowrap>IT (Italy)</td><td><a href="#EuropeRome">Europe/Rome</a></td></tr>
<tr valign=top><td nowrap>JM (Jamaica)</td><td><a href="#AmericaJamaica">America/Jamaica</a></td></tr>
<tr valign=top><td nowrap>JO (Jordan)</td><td><a href="#AsiaAmman">Asia/Amman</a></td></tr>
<tr valign=top><td nowrap>JP (Japan)</td><td><a href="#AsiaTokyo">Asia/Tokyo</a>, <a href="#JST">JST</a></td></tr>
<tr valign=top><td nowrap>KE (Kenya)</td><td><a href="#AfricaNairobi">Africa/Nairobi</a></td></tr>
<tr valign=top><td nowrap>KG (Kyrgyzstan)</td><td><a href="#AsiaBishkek">Asia/Bishkek</a></td></tr>
<tr valign=top><td nowrap>KH (Cambodia)</td><td><a href="#AsiaPhnom_Penh">Asia/Phnom_Penh</a></td></tr>
<tr valign=top><td nowrap>KI (Kiribati)</td><td><a href="#PacificEnderbury">Pacific/Enderbury</a>, <a href="#PacificKiritimati">Pacific/Kiritimati</a>, <a href="#PacificTarawa">Pacific/Tarawa</a></td></tr>
<tr valign=top><td nowrap>KM (Comoros)</td><td><a href="#IndianComoro">Indian/Comoro</a></td></tr>
<tr valign=top><td nowrap>KN (St Kitts & Nevis)</td><td><a href="#AmericaSt_Kitts">America/St_Kitts</a></td></tr>
<tr valign=top><td nowrap>KP (Korea (North))</td><td><a href="#AsiaPyongyang">Asia/Pyongyang</a></td></tr>
<tr valign=top><td nowrap>KR (Korea (South))</td><td><a href="#AsiaSeoul">Asia/Seoul</a></td></tr>
<tr valign=top><td nowrap>KW (Kuwait)</td><td><a href="#AsiaKuwait">Asia/Kuwait</a></td></tr>
<tr valign=top><td nowrap>KY (Cayman Islands)</td><td><a href="#AmericaCayman">America/Cayman</a></td></tr>
<tr valign=top><td nowrap>KZ (Kazakhstan)</td><td><a href="#AsiaAlmaty">Asia/Almaty</a>, <a href="#AsiaAqtau">Asia/Aqtau</a>, <a href="#AsiaAqtobe">Asia/Aqtobe</a></td></tr>
<tr valign=top><td nowrap>LA (Laos)</td><td><a href="#AsiaVientiane">Asia/Vientiane</a></td></tr>
<tr valign=top><td nowrap>LB (Lebanon)</td><td><a href="#AsiaBeirut">Asia/Beirut</a></td></tr>
<tr valign=top><td nowrap>LC (St Lucia)</td><td><a href="#AmericaSt_Lucia">America/St_Lucia</a></td></tr>
<tr valign=top><td nowrap>LI (Liechtenstein)</td><td><a href="#EuropeVaduz">Europe/Vaduz</a></td></tr>
<tr valign=top><td nowrap>LK (Sri Lanka)</td><td><a href="#AsiaColombo">Asia/Colombo</a></td></tr>
<tr valign=top><td nowrap>LR (Liberia)</td><td><a href="#AfricaMonrovia">Africa/Monrovia</a></td></tr>
<tr valign=top><td nowrap>LS (Lesotho)</td><td><a href="#AfricaMaseru">Africa/Maseru</a></td></tr>
<tr valign=top><td nowrap>LT (Lithuania)</td><td><a href="#EuropeVilnius">Europe/Vilnius</a></td></tr>
<tr valign=top><td nowrap>LU (Luxembourg)</td><td><a href="#EuropeLuxembourg">Europe/Luxembourg</a></td></tr>
<tr valign=top><td nowrap>LV (Latvia)</td><td><a href="#EuropeRiga">Europe/Riga</a></td></tr>
<tr valign=top><td nowrap>LY (Libya)</td><td><a href="#AfricaTripoli">Africa/Tripoli</a></td></tr>
<tr valign=top><td nowrap>MA (Morocco)</td><td><a href="#AfricaCasablanca">Africa/Casablanca</a></td></tr>
<tr valign=top><td nowrap>MC (Monaco)</td><td><a href="#EuropeMonaco">Europe/Monaco</a></td></tr>
<tr valign=top><td nowrap>MD (Moldova)</td><td><a href="#EuropeChisinau">Europe/Chisinau</a>, <a href="#EuropeTiraspol">Europe/Tiraspol</a></td></tr>
<tr valign=top><td nowrap>MG (Madagascar)</td><td><a href="#IndianAntananarivo">Indian/Antananarivo</a></td></tr>
<tr valign=top><td nowrap>MH (Marshall Islands)</td><td><a href="#PacificKwajalein">Pacific/Kwajalein</a>, <a href="#PacificMajuro">Pacific/Majuro</a></td></tr>
<tr valign=top><td nowrap>MK (Macedonia)</td><td><a href="#EuropeSkopje">Europe/Skopje</a></td></tr>
<tr valign=top><td nowrap>ML (Mali)</td><td><a href="#AfricaBamako">Africa/Bamako</a>, <a href="#AfricaTimbuktu">Africa/Timbuktu</a></td></tr>
<tr valign=top><td nowrap>MM (Myanmar (Burma))</td><td><a href="#AsiaRangoon">Asia/Rangoon</a></td></tr>
<tr valign=top><td nowrap>MN (Mongolia)</td><td><a href="#AsiaHovd">Asia/Hovd</a>, <a href="#AsiaUlaanbaatar">Asia/Ulaanbaatar</a></td></tr>
<tr valign=top><td nowrap>MO (Macao)</td><td><a href="#AsiaMacao">Asia/Macao</a></td></tr>
<tr valign=top><td nowrap>MP (Northern Mariana Islands)</td><td><a href="#PacificSaipan">Pacific/Saipan</a></td></tr>
<tr valign=top><td nowrap>MQ (Martinique)</td><td><a href="#AmericaMartinique">America/Martinique</a></td></tr>
<tr valign=top><td nowrap>MR (Mauritania)</td><td><a href="#AfricaNouakchott">Africa/Nouakchott</a></td></tr>
<tr valign=top><td nowrap>MS (Montserrat)</td><td><a href="#AmericaMontserrat">America/Montserrat</a></td></tr>
<tr valign=top><td nowrap>MT (Malta)</td><td><a href="#EuropeMalta">Europe/Malta</a></td></tr>
<tr valign=top><td nowrap>MU (Mauritius)</td><td><a href="#IndianMauritius">Indian/Mauritius</a></td></tr>
<tr valign=top><td nowrap>MV (Maldives)</td><td><a href="#IndianMaldives">Indian/Maldives</a></td></tr>
<tr valign=top><td nowrap>MW (Malawi)</td><td><a href="#AfricaBlantyre">Africa/Blantyre</a></td></tr>
<tr valign=top><td nowrap>MX (Mexico)</td><td><a href="#AmericaCancun">America/Cancun</a>, <a href="#AmericaChihuahua">America/Chihuahua</a>, <a href="#AmericaHermosillo">America/Hermosillo</a>, <a href="#AmericaMazatlan">America/Mazatlan</a>, <a href="#AmericaMerida">America/Merida</a>, <a href="#AmericaMexico_City">America/Mexico_City</a>, <a href="#AmericaMonterrey">America/Monterrey</a>, <a href="#AmericaTijuana">America/Tijuana</a></td></tr>
<tr valign=top><td nowrap>MY (Malaysia)</td><td><a href="#AsiaKuala_Lumpur">Asia/Kuala_Lumpur</a>, <a href="#AsiaKuching">Asia/Kuching</a></td></tr>
<tr valign=top><td nowrap>MZ (Mozambique)</td><td><a href="#AfricaMaputo">Africa/Maputo</a></td></tr>
<tr valign=top><td nowrap>NA (Namibia)</td><td><a href="#AfricaWindhoek">Africa/Windhoek</a></td></tr>
<tr valign=top><td nowrap>NC (New Caledonia)</td><td><a href="#PacificNoumea">Pacific/Noumea</a></td></tr>
<tr valign=top><td nowrap>NE (Niger)</td><td><a href="#AfricaNiamey">Africa/Niamey</a></td></tr>
<tr valign=top><td nowrap>NF (Norfolk Island)</td><td><a href="#PacificNorfolk">Pacific/Norfolk</a></td></tr>
<tr valign=top><td nowrap>NG (Nigeria)</td><td><a href="#AfricaLagos">Africa/Lagos</a></td></tr>
<tr valign=top><td nowrap>NI (Nicaragua)</td><td><a href="#AmericaManagua">America/Managua</a></td></tr>
<tr valign=top><td nowrap>NL (Netherlands)</td><td><a href="#EuropeAmsterdam">Europe/Amsterdam</a></td></tr>
<tr valign=top><td nowrap>NO (Norway)</td><td><a href="#EuropeOslo">Europe/Oslo</a></td></tr>
<tr valign=top><td nowrap>NP (Nepal)</td><td><a href="#AsiaKatmandu">Asia/Katmandu</a></td></tr>
<tr valign=top><td nowrap>NR (Nauru)</td><td><a href="#PacificNauru">Pacific/Nauru</a></td></tr>
<tr valign=top><td nowrap>NU (Niue)</td><td><a href="#PacificNiue">Pacific/Niue</a></td></tr>
<tr valign=top><td nowrap>NZ (New Zealand)</td><td><a href="#NST">NST</a>, <a href="#PacificAuckland">Pacific/Auckland</a>, <a href="#PacificChatham">Pacific/Chatham</a></td></tr>
<tr valign=top><td nowrap>OM (Oman)</td><td><a href="#AsiaMuscat">Asia/Muscat</a></td></tr>
<tr valign=top><td nowrap>PA (Panama)</td><td><a href="#AmericaPanama">America/Panama</a></td></tr>
<tr valign=top><td nowrap>PE (Peru)</td><td><a href="#AmericaLima">America/Lima</a></td></tr>
<tr valign=top><td nowrap>PF (French Polynesia)</td><td><a href="#PacificGambier">Pacific/Gambier</a>, <a href="#PacificMarquesas">Pacific/Marquesas</a>, <a href="#PacificTahiti">Pacific/Tahiti</a></td></tr>
<tr valign=top><td nowrap>PG (Papua New Guinea)</td><td><a href="#PacificPort_Moresby">Pacific/Port_Moresby</a></td></tr>
<tr valign=top><td nowrap>PH (Philippines)</td><td><a href="#AsiaManila">Asia/Manila</a></td></tr>
<tr valign=top><td nowrap>PK (Pakistan)</td><td><a href="#AsiaKarachi">Asia/Karachi</a>, <a href="#PLT">PLT</a></td></tr>
<tr valign=top><td nowrap>PL (Poland)</td><td><a href="#EuropeWarsaw">Europe/Warsaw</a></td></tr>
<tr valign=top><td nowrap>PM (St Pierre & Miquelon)</td><td><a href="#AmericaMiquelon">America/Miquelon</a></td></tr>
<tr valign=top><td nowrap>PN (Pitcairn)</td><td><a href="#PacificPitcairn">Pacific/Pitcairn</a></td></tr>
<tr valign=top><td nowrap>PR (Puerto Rico)</td><td><a href="#AmericaPuerto_Rico">America/Puerto_Rico</a>, <a href="#PRT">PRT</a></td></tr>
<tr valign=top><td nowrap>PS (Palestine)</td><td><a href="#AsiaGaza">Asia/Gaza</a></td></tr>
<tr valign=top><td nowrap>PT (Portugal)</td><td><a href="#AtlanticAzores">Atlantic/Azores</a>, <a href="#AtlanticMadeira">Atlantic/Madeira</a>, <a href="#EuropeLisbon">Europe/Lisbon</a></td></tr>
<tr valign=top><td nowrap>PW (Palau)</td><td><a href="#PacificPalau">Pacific/Palau</a></td></tr>
<tr valign=top><td nowrap>PY (Paraguay)</td><td><a href="#AmericaAsuncion">America/Asuncion</a></td></tr>
<tr valign=top><td nowrap>QA (Qatar)</td><td><a href="#AsiaQatar">Asia/Qatar</a></td></tr>
<tr valign=top><td nowrap>RE (Reunion)</td><td><a href="#IndianReunion">Indian/Reunion</a></td></tr>
<tr valign=top><td nowrap>RO (Romania)</td><td><a href="#EuropeBucharest">Europe/Bucharest</a></td></tr>
<tr valign=top><td nowrap>RU (Russia)</td><td><a href="#AsiaAnadyr">Asia/Anadyr</a>, <a href="#AsiaIrkutsk">Asia/Irkutsk</a>, <a href="#AsiaKamchatka">Asia/Kamchatka</a>, <a href="#AsiaKrasnoyarsk">Asia/Krasnoyarsk</a>, <a href="#AsiaMagadan">Asia/Magadan</a>, <a href="#AsiaNovosibirsk">Asia/Novosibirsk</a>, <a href="#AsiaOmsk">Asia/Omsk</a>, <a href="#AsiaVladivostok">Asia/Vladivostok</a>, <a href="#AsiaYakutsk">Asia/Yakutsk</a>, <a href="#AsiaYekaterinburg">Asia/Yekaterinburg</a>, <a href="#EuropeKaliningrad">Europe/Kaliningrad</a>, <a href="#EuropeMoscow">Europe/Moscow</a>, <a href="#EuropeSamara">Europe/Samara</a></td></tr>
<tr valign=top><td nowrap>RW (Rwanda)</td><td><a href="#AfricaKigali">Africa/Kigali</a></td></tr>
<tr valign=top><td nowrap>SA (Saudi Arabia)</td><td><a href="#AsiaRiyadh">Asia/Riyadh</a></td></tr>
<tr valign=top><td nowrap>SB (Solomon Islands)</td><td><a href="#PacificGuadalcanal">Pacific/Guadalcanal</a>, <a href="#SST">SST</a></td></tr>
<tr valign=top><td nowrap>SC (Seychelles)</td><td><a href="#IndianMahe">Indian/Mahe</a></td></tr>
<tr valign=top><td nowrap>SD (Sudan)</td><td><a href="#AfricaKhartoum">Africa/Khartoum</a></td></tr>
<tr valign=top><td nowrap>SE (Sweden)</td><td><a href="#EuropeStockholm">Europe/Stockholm</a></td></tr>
<tr valign=top><td nowrap>SG (Singapore)</td><td><a href="#AsiaSingapore">Asia/Singapore</a></td></tr>
<tr valign=top><td nowrap>SH (St Helena)</td><td><a href="#AtlanticSt_Helena">Atlantic/St_Helena</a></td></tr>
<tr valign=top><td nowrap>SI (Slovenia)</td><td><a href="#EuropeLjubljana">Europe/Ljubljana</a></td></tr>
<tr valign=top><td nowrap>SJ (Svalbard & Jan Mayen)</td><td><a href="#ArcticLongyearbyen">Arctic/Longyearbyen</a>, <a href="#AtlanticJan_Mayen">Atlantic/Jan_Mayen</a></td></tr>
<tr valign=top><td nowrap>SK (Slovakia)</td><td><a href="#EuropeBratislava">Europe/Bratislava</a></td></tr>
<tr valign=top><td nowrap>SL (Sierra Leone)</td><td><a href="#AfricaFreetown">Africa/Freetown</a></td></tr>
<tr valign=top><td nowrap>SM (San Marino)</td><td><a href="#EuropeSan_Marino">Europe/San_Marino</a></td></tr>
<tr valign=top><td nowrap>SN (Senegal)</td><td><a href="#AfricaDakar">Africa/Dakar</a></td></tr>
<tr valign=top><td nowrap>SO (Somalia)</td><td><a href="#AfricaMogadishu">Africa/Mogadishu</a></td></tr>
<tr valign=top><td nowrap>SR (Suriname)</td><td><a href="#AmericaParamaribo">America/Paramaribo</a></td></tr>
<tr valign=top><td nowrap>ST (Sao Tome & Principe)</td><td><a href="#AfricaSao_Tome">Africa/Sao_Tome</a></td></tr>
<tr valign=top><td nowrap>SV (El Salvador)</td><td><a href="#AmericaEl_Salvador">America/El_Salvador</a></td></tr>
<tr valign=top><td nowrap>SY (Syria)</td><td><a href="#AsiaDamascus">Asia/Damascus</a></td></tr>
<tr valign=top><td nowrap>SZ (Swaziland)</td><td><a href="#AfricaMbabane">Africa/Mbabane</a></td></tr>
<tr valign=top><td nowrap>TC (Turks & Caicos Is)</td><td><a href="#AmericaGrand_Turk">America/Grand_Turk</a></td></tr>
<tr valign=top><td nowrap>TD (Chad)</td><td><a href="#AfricaNdjamena">Africa/Ndjamena</a></td></tr>
<tr valign=top><td nowrap>TF (French Southern & Antarctic Lands)</td><td><a href="#IndianKerguelen">Indian/Kerguelen</a></td></tr>
<tr valign=top><td nowrap>TG (Togo)</td><td><a href="#AfricaLome">Africa/Lome</a></td></tr>
<tr valign=top><td nowrap>TH (Thailand)</td><td><a href="#AsiaBangkok">Asia/Bangkok</a></td></tr>
<tr valign=top><td nowrap>TJ (Tajikistan)</td><td><a href="#AsiaDushanbe">Asia/Dushanbe</a></td></tr>
<tr valign=top><td nowrap>TK (Tokelau)</td><td><a href="#PacificFakaofo">Pacific/Fakaofo</a></td></tr>
<tr valign=top><td nowrap>TM (Turkmenistan)</td><td><a href="#AsiaAshgabat">Asia/Ashgabat</a></td></tr>
<tr valign=top><td nowrap>TN (Tunisia)</td><td><a href="#AfricaTunis">Africa/Tunis</a></td></tr>
<tr valign=top><td nowrap>TO (Tonga)</td><td><a href="#PacificTongatapu">Pacific/Tongatapu</a></td></tr>
<tr valign=top><td nowrap>TP (East Timor)</td><td><a href="#AsiaDili">Asia/Dili</a></td></tr>
<tr valign=top><td nowrap>TR (Turkey)</td><td><a href="#EuropeIstanbul">Europe/Istanbul</a></td></tr>
<tr valign=top><td nowrap>TT (Trinidad & Tobago)</td><td><a href="#AmericaPort_of_Spain">America/Port_of_Spain</a></td></tr>
<tr valign=top><td nowrap>TV (Tuvalu)</td><td><a href="#PacificFunafuti">Pacific/Funafuti</a></td></tr>
<tr valign=top><td nowrap>TW (Taiwan)</td><td><a href="#AsiaTaipei">Asia/Taipei</a></td></tr>
<tr valign=top><td nowrap>TZ (Tanzania)</td><td><a href="#AfricaDar_es_Salaam">Africa/Dar_es_Salaam</a></td></tr>
<tr valign=top><td nowrap>UA (Ukraine)</td><td><a href="#EuropeKiev">Europe/Kiev</a>, <a href="#EuropeSimferopol">Europe/Simferopol</a>, <a href="#EuropeUzhgorod">Europe/Uzhgorod</a>, <a href="#EuropeZaporozhye">Europe/Zaporozhye</a></td></tr>
<tr valign=top><td nowrap>UG (Uganda)</td><td><a href="#AfricaKampala">Africa/Kampala</a></td></tr>
<tr valign=top><td nowrap>UM (US minor outlying islands)</td><td><a href="#PacificJohnston">Pacific/Johnston</a>, <a href="#PacificMidway">Pacific/Midway</a>, <a href="#PacificWake">Pacific/Wake</a></td></tr>
<tr valign=top><td nowrap>US (United States)</td><td><a href="#AST">AST</a>, <a href="#AmericaAdak">America/Adak</a>, <a href="#AmericaAnchorage">America/Anchorage</a>, <a href="#AmericaBoise">America/Boise</a>, <a href="#AmericaChicago">America/Chicago</a>, <a href="#AmericaDenver">America/Denver</a>, <a href="#AmericaDetroit">America/Detroit</a>, <a href="#AmericaIndianaKnox">America/Indiana/Knox</a>, <a href="#AmericaIndianaMarengo">America/Indiana/Marengo</a>, <a href="#AmericaIndianaVevay">America/Indiana/Vevay</a>, <a href="#AmericaIndianapolis">America/Indianapolis</a>, <a href="#AmericaJuneau">America/Juneau</a>, <a href="#AmericaKentuckyMonticello">America/Kentucky/Monticello</a>, <a href="#AmericaLos_Angeles">America/Los_Angeles</a>, <a href="#AmericaLouisville">America/Louisville</a>, <a href="#AmericaMenominee">America/Menominee</a>, <a href="#AmericaNew_York">America/New_York</a>, <a href="#AmericaNome">America/Nome</a>, <a href="#AmericaPhoenix">America/Phoenix</a>, <a href="#AmericaYakutat">America/Yakutat</a>, <a href="#CST">CST</a>, <a href="#EST">EST</a>, <a href="#HST">HST</a>, <a href="#IET">IET</a>, <a href="#MST">MST</a>, <a href="#PNT">PNT</a>, <a href="#PST">PST</a>, <a href="#PacificHonolulu">Pacific/Honolulu</a></td></tr>
<tr valign=top><td nowrap>UY (Uruguay)</td><td><a href="#AmericaMontevideo">America/Montevideo</a></td></tr>
<tr valign=top><td nowrap>UZ (Uzbekistan)</td><td><a href="#AsiaSamarkand">Asia/Samarkand</a>, <a href="#AsiaTashkent">Asia/Tashkent</a></td></tr>
<tr valign=top><td nowrap>VA (Vatican City)</td><td><a href="#EuropeVatican">Europe/Vatican</a></td></tr>
<tr valign=top><td nowrap>VC (St Vincent)</td><td><a href="#AmericaSt_Vincent">America/St_Vincent</a></td></tr>
<tr valign=top><td nowrap>VE (Venezuela)</td><td><a href="#AmericaCaracas">America/Caracas</a></td></tr>
<tr valign=top><td nowrap>VG (Virgin Islands (UK))</td><td><a href="#AmericaTortola">America/Tortola</a></td></tr>
<tr valign=top><td nowrap>VI (Virgin Islands (US))</td><td><a href="#AmericaSt_Thomas">America/St_Thomas</a></td></tr>
<tr valign=top><td nowrap>VN (Vietnam)</td><td><a href="#AsiaSaigon">Asia/Saigon</a>, <a href="#VST">VST</a></td></tr>
<tr valign=top><td nowrap>VU (Vanuatu)</td><td><a href="#PacificEfate">Pacific/Efate</a></td></tr>
<tr valign=top><td nowrap>WF (Wallis & Futuna)</td><td><a href="#PacificWallis">Pacific/Wallis</a></td></tr>
<tr valign=top><td nowrap>WS (Samoa (Western))</td><td><a href="#MIT">MIT</a>, <a href="#PacificApia">Pacific/Apia</a></td></tr>
<tr valign=top><td nowrap>YE (Yemen)</td><td><a href="#AsiaAden">Asia/Aden</a></td></tr>
<tr valign=top><td nowrap>YT (Mayotte)</td><td><a href="#IndianMayotte">Indian/Mayotte</a></td></tr>
<tr valign=top><td nowrap>YU (Yugoslavia)</td><td><a href="#EuropeBelgrade">Europe/Belgrade</a></td></tr>
<tr valign=top><td nowrap>ZA (South Africa)</td><td><a href="#AfricaJohannesburg">Africa/Johannesburg</a></td></tr>
<tr valign=top><td nowrap>ZM (Zambia)</td><td><a href="#AfricaLusaka">Africa/Lusaka</a></td></tr>
<tr valign=top><td nowrap>ZW (Zimbabwe)</td><td><a href="#AfricaHarare">Africa/Harare</a>, <a href="#CAT">CAT</a></td></tr>
</table>
</body>
</html>

View file

@ -1,32 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<title>TimeZone and Calendar</title>
</head>
<body bgcolor="#FFFFFF">
<h1>Date/Time Formatting</h1>
<p align="left"><font size="5">Calendar, GregorianCalendar</font> <br>
<font size="5">TimeZone, SimpleTimeZone</font>
<br>
<font size="5">DateFormat<i>,</i>SimpleDateFormat, DateFormatSymbols</font> </p>
<ul>
<li><font size="5">Handle timezones and daylight savings adjustments</font></li>
<li><font size="5">Support multiple calendars</font></li>
<li><font size="5">Support European date fields</font><br>
<font size="4">--such as the number of the week in the year</font> </li>
<li><font size="5">Like the number formatters:</font><br>
<font size="4">-- Support definition of formats with string patterns</font> <br>
<font size="4">-- Can retrieve the normalized pattern</font> <br>
<font size="4">-- Can parse anything they can format</font></li>
</ul>
<p><a href="formatCl.html">formatting</a> </p>
</body>
</html>

View file

@ -1,276 +0,0 @@
<html>
<head>
<title>ICU - Formats and API for Binary Data Files</title>
</head>
<body>
<h1>ICU - Formats and API for Binary Data Files</h1>
<h2>Finding ICU data</h2>
<p>ICU data, when stored in files, is loaded from the file system
directory that is returned by <code>u_getDataDirectory()</code>.
That directory is determined sequentially by
<ul>
<li><code>getenv("ICU_DATA")</code> -
the contents of the ICU_DATA environment variable</li>
<li>on Windows, by the value named <code>"Path"</code> of the registry key
<code>HKEY_LOCAL_MACHINE "SOFTWARE\\ICU\\Unicode\\Data"</code></li>
<li>relative to the path where <code>icuuc.dll</code> or <code>libicu-uc.so</code> or similar
is loaded from: if it is loaded from <code>/some/path/lib/libicu-uc.so</code>, then
the path will be <code>/some/path/lib/../share/icu/1.3.1/</code>
where <code>"1.3.1"</code> is an example for the version of the ICU library that
is trying to locate the data directory;<br>
on Windows, if <code>icuuc.dll</code> is in <code>d:\some\path</code>, then
the path will be <code>d:\some\path\..\..\data\</code>.</li>
<li>relative to the path where <code>icuuc.dll</code> or <code>libicu-uc.so</code> or similar
is found by searching the <code>PATH</code> or <code>LIBPATH</code>
as appropriate; the relative path is determined as above</li>
<li>hardcoded to <code>(system drive)/share/icu/1.3.1/</code>;
on Windows, it will effectively be <code>(system drive)\data\</code>,
where <code>(system drive)</code> is empty or a path to the system drive, like
<code>"D:\"</code> on Windows or OS/2</li>
</ul></p>
<h2>Common data, single files, extensibility, and search sequence</h2>
<p>ICU data consists of several hundred pieces of data like converter mapping tables,
locale resource bundles, break iterator and collation rules and dictionaries, and so on.
During the build process, they are compiled into binary, memory-mappable files with
a general structure conforming to the recommendations below.</p>
<p>For performance and ease of installation, all of these elements are then typically
combined into one single, common data file with a Table of Contents listing all of its elements.
This data file can be in one of four formats:
<ol>
<li>A binary, memory-mappable file with the same general structure and a Table
of Contents with offsets to the data elements that are copied into this
common file.</li>
<li>A shared library (DLL) that contains one entry point with exactly the same
structure as the above file.</li>
<li>A shared library (DLL) that contains one entry point to a small structure
with a Table of contents with pointers to the other data elements that have
been linked into the same library. The pointers are resolved by the linker
and/or loader. Each data element may or may not also be exported with its
own entry point.</li>
<li>A shared library (DLL) that contains an entry point per data element but
no explicit Table of Contents data structure. Instead, the list of entry
points with the system API to get an address for an entry point serves
implicitly as the Table of Contents mechanism.</li>
</ol></p>
<p>Data is loaded using the <code>udata</code> API functions
by first looking in the common data file. If no common file is loaded
yet, then it is loaded as a shared library, then as a memory-mappable file.
This allows to add separate data files that get loaded if no data element with the same
name is found in the common file. The entire process of finding and loading a data
element on most platforms amounts to the following:
<ol>
<li>Load or use the common data file as follows:</li>
<ol>
<li>Use previously loaded, cached common data. This may have been set by
<code>udata_setCommonData()</code>.</li>
<li>Attempt to load the common data from a shared library (DLL);
locate the shared library first in the folder
<code>u_getDataDirectory()</code>, then without a folder specification.</li>
<li>Attempt to load the common data by memory-mapping a common data file
with a Table of Contents structure;
locate the file first in the folder
<code>u_getDataDirectory()</code>, then without a folder specification.</li>
</ol>
<li>If there is a common data file, then try to find the data element in its
Table of Contents according to the format of the common file.</li>
<li>If the data is not found in the common data, then attempt to load it directly
by memory-mapping it as a separate file;
locate the file first in the folder
<code>u_getDataDirectory()</code>, then without a folder specification.</li>
</ol>
This process ends as soon as the data is found.</p>
<p>If the data is not ICU's data itself, but application data like application-specific
resource bundles, then the process is almost the same, except for
<ul>
<li>The path is specified in the <code>udata_open()</code> or
<code>udata_openChoice()</code> call; for ICU data,
this path is specified to <code>NULL</code>, which is internally replaced by
<code>u_getDataDirectory()</code>.</li>
<li>Currently, non-ICU common data files are not cached.
There is a <a href="http://oss.software.ibm.com/developerworks/opensource/icu/bugs?findid=398">jitterbug</a>
open for this restriction.
This is a performance issue, not one of functionality.</li>
</ul></p>
<p>For more details, see <code>icu/source/common/udata.h</code>.
Note that the exact data finding depends on the implementation
of this API and may differ by platform.
See also <code>icu/source/common/udata.c</code> for implementation details.</p>
<h2>Setting the ICU data pointer</h2>
<p>An application that uses ICU may choose to find and load the ICU data itself
and provide the ICU library with a pointer to it. This may be useful in very
restricted environments, when <code>getenv()</code>, <code>LIBPATH</code> and many
system services may be unavailable. It also makes it possible for an application
to have installation settings only for itself, without special installation
for ICU, since ICU would then not rely on its own settings and capabilities.<br>
The common data can be in any of the formats with explicit Table of Contents described above;
a shared library without a Table of Contents (with only entry-point-based lookup)
cannot be used.
For details, see in <code>udata.h</code> the function <code>udata_setCommonData()</code>.</p>
<h2>Porting the ICU data loading to more platforms - help wanted</h2>
<p>The data loading as described above is complete for Windows (Win32) and
a number of POSIX-style platforms. On platforms that do not support dynamic loading
of shared libraries (DLLs), only memory-mapping is used.<br>
Note that shared libraries can be easier to find because of the system support for them,
while memory-mappable files are more portable.</p>
<p>Where memory-mapping is not available, ICU uses simple file access with
<code>fopen()</code> and <code>fread()</code> etc. instead, which is much less efficient:<br>
Loading a shared library or memory-mapping a file typically results in
shared, demand-paged, virtually memory, while simple file access results in
reading the entire file into each ICU-using process's memory.</p>
<p>Similarly, the fastest way to build a shared library (DLL) is to build the
common, memory-mappable file and to turn it into a .obj (.o) file directly
to feed it into the linker. This is currently only done on Windows.</p>
<p>For best performance, ICU needs to have efficient mechanisms for finding
and loading its and its applications' data. Right now, this means that <em>we are
looking for more implementations of the platform-specific functions</em> to
load shared libraries and to memory-map files. At build time, it is also desirable
to build .o files directly from raw data on more platforms.</p>
<h2>Binary Data File Formats</h2>
<p>Data files for ICU and for applications loading their data with ICU,
should have a memory-mappable format. This means that the data should be
layed out in the file in an immediately useful way, so that the code that uses
the data does not need to parse it or copy it to allocated memory and
build additional structures (like Hashtables).
Here are some points to consider:</p>
<ul>
<li>The data memory starts at an offset within the data file
that is divisible by (at least) <code>sizeof(double)</code>
(the largest scalar data type)
if you use <code>unewdata.h/.c</code>
to write the data.
To be exact, <code>unewdata</code> writes the data 16-aligned,
and it is 16-aligned in memory-mapped files. However, the process
of building shared libraries (DLLs) on non-Windows platforms
forced us to insert a <code>double</code> before the
binary data to get any alignment, thus only 8-aligning
(<code>sizeof(double)==8</code> on most machines) the data.
This is not an issue if the data is loaded from memory-mapped files
directly instead of from shared libraries (DLLs).</li>
<li>Write explicitly sized values: explicitly 32 bits with an
<code>int32_t</code>, not using an ambiguous <code>int</code>.</li>
<li>Align all values according to their data type size:
Align 16-bit integers on even offsets, 32-bit integers on
offsets divisible by 4, etc.</li>
<li>Align structures according to their largest field.</li>
<li>When writing structures directly, avoid implicit
field padding/alignment: if a field may not be aligned
within the structure according to its size, then
insert additional (reserved) fields to explicitly
size-align that field.</li>
<li>Avoid floating point values if possible. Their size and structure
may differ among platforms.</li>
<li>Avoid boolean (<code>bool_t</code>, <code>bool</code>) values
and use explictly sized integer values instead
because the size of the boolean type may vary.<br>
Note: the new (ICU 1.5) type definition of <code>UBool</code> is
portable. It is always defined to be an <code>int8_t</code>.</li>
<li>Write offsets to sub-structures at the beginning of the data
so that those sub-structures can be accessed directly without
parsing the data that precedes them.</li>
<li>If data needs to be read linearly, then precede it with its length
rather than (or in addition to) terminating it with a sentinel value.</li>
<li>When writing <code>char[]</code> strings, write only "invariant"
characters - avoid anything that is not common among all ASCII-
or EBCDIC-based encodings. This avoids incompatibilities and
real, heavyweight codepage conversions.
Even on the same platform, the default encoding may not always
be the same one, and every "non-invariant" character
may change.<br>
(The term "invariant characters" is from
<a href="http://www.unicode.org/unicode/reports/tr16/">
Unicode Technical Report 16 (UTF-EBCDIC)</a>.)<br>
At runtime, "invariant character" strings are efficiently converted
into Unicode using <code>u_charsToUChars()</code>.</li>
</ul>
<h2>Platform-dependency of Binary Data Files</h2>
<p>Data files with formats as described above should be portable among
machines with the same set of relevant properties:</p>
<ul>
<li>Byte ordering: If the data contains values other than byte arrays.<br>
Example: <code>uint16_t</code>, <code>int32_t</code>.</li>
<li>Character set family: Some data files contain <code>char[]</code>.
Such strings should contain only "invariant characters", but
are even so only portable among machines with the same character set
family, i.e., they must share for example the ASCII or EBCDIC
graphic characters.</li>
<li>Unicode Character size: Some data files contain <code>UChar[]</code>.
In principle, Unicode characters are stored using UTF-8, UTF-16, or UTF-32.
Thus, Unicode strings are directly compatible if the code unit size is the same.
ICU uses only UTF-16 at this point.</li>
</ul>
<p>All of these properties can be verified by checking the
<code>UDataInfo</code> structure of the data, which is done
best in a <code>UDataMemoryIsAcceptable()</code> function passed into
the <code>udata_openChoice()</code> API function.</p>
<p>If a data file is loaded on a machine with different relevant properties
than the machine where the data file was generated, then the using
code could adapt by detecting the differences and reformatting the
data on the fly or in a copy in memory.
This would improve portability of the data files but significantly
decrease performance.</p>
<p>"Relevant" properties are those that affect the portability of the
data in the particular file.</p>
<p>For example, a flat (memory-mapped) binary data file
that contains 16-bit and 32-bit integers and is
created for a typical, big-endian Unix machine, can be used
on an OS/390 system or any other big-endian machine.<br>
If the file also contains <code>char[]</code> strings,
then it can be easily shared among all big-endian <em>and</em>
ASCII-based machines, but not with (e.g.) an OS/390.<br>
OS/390 and OS/400 systems, however, could easily share such
a data file <em>created</em> on either of <em>these</em> systems.</p>
<p>To make sure that the relevant platform properties of
the data file and the loading machine match, the
<code>udata_openChoice()</code> API function should be used with a
<code>UDataMemoryIsAcceptable()</code> function that checks for
these properties.</p>
<p>Some data file loading mechanisms prevent using data files generated on
a different platform to begin with, especially data files packaged as DLLs
(shared libraries).</p>
<h2>Writing a binary data file</h2>
<p>This is a raw draft.</p>
<p>... Use <code>icu/source/tools/toolutil/unewdata.h|.c</code> to write data files,
can include a copyright statement or other comment...See <code>icu/source/tools/gennames</code>...</p>
</body>
</html>

View file

@ -1,167 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 9">
<meta name=Originator content="Microsoft Word 9">
<link rel=File-List href="./utilCL_files/filelist.xml">
<title>Utility Classes</title>
<!--[if gte mso 9]><xml>
<o:DocumentProperties>
<o:Author>Helena Shih</o:Author>
<o:Template>Normal</o:Template>
<o:LastAuthor>Helena Shih</o:LastAuthor>
<o:Revision>2</o:Revision>
<o:TotalTime>0</o:TotalTime>
<o:Created>2000-01-15T02:25:00Z</o:Created>
<o:LastSaved>2000-01-15T02:25:00Z</o:LastSaved>
<o:Pages>1</o:Pages>
<o:Words>118</o:Words>
<o:Characters>676</o:Characters>
<o:Company>IBM</o:Company>
<o:Lines>5</o:Lines>
<o:Paragraphs>1</o:Paragraphs>
<o:CharactersWithSpaces>830</o:CharactersWithSpaces>
<o:Version>9.2720</o:Version>
</o:DocumentProperties>
</xml><![endif]-->
<style>
<!--
/* Font Definitions */
@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;
mso-font-charset:2;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:0 268435456 0 0 -2147483648 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-parent:"";
margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p
{font-size:12.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
@page Section1
{size:8.5in 11.0in;
margin:1.0in 1.25in 1.0in 1.25in;
mso-header-margin:.5in;
mso-footer-margin:.5in;
mso-paper-source:0;}
div.Section1
{page:Section1;}
/* List Definitions */
@list l0
{mso-list-id:662319961;
mso-list-type:hybrid;
mso-list-template-ids:1460073458 321026920 -652829042 1556905426 1457536414 1383522746 440278938 -1596293894 168606702 1406822388;}
@list l0:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l1
{mso-list-id:1258489716;
mso-list-type:hybrid;
mso-list-template-ids:1546964176 -516516838 1083724932 -1112796606 -450856436 -1756348934 832439204 99531218 1297893980 861565214;}
@list l1:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l2
{mso-list-id:2057504711;
mso-list-type:hybrid;
mso-list-template-ids:1008257150 248026332 741384412 -1122050896 -685343652 1014505310 -1576788324 -1379379170 -251646918 -246007256;}
@list l2:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1027"/>
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1"/>
</o:shapelayout></xml><![endif]-->
</head>
<body bgcolor=white lang=EN-US link=blue vlink=blue style='tab-interval:.5in'>
<div class=Section1>
<h1>Utility Classes</h1>
<p><span style='font-size:18.0pt'>Unicode String</span> </p>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l0 level1 lfo1;tab-stops:list .5in'>
<span style='font-size:13.5pt'>Unicode</span><br>
<span style='font-size:13.5pt'>-- query the properties associated with
individual Unicode character values</span> </li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l0 level1 lfo1;tab-stops:list .5in'>
<span style='font-size:13.5pt'>UnicodeString</span></li>
</ul>
<p><span style='font-size:18.0pt'>Character Iteration</span> </p>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l1 level1 lfo2;tab-stops:list .5in'><span style='font-size:13.5pt'>CharacterIterator, StringCharacterIterator</span><br>
<span style='font-size:13.5pt'>-- Iterates over the characters in a
UnicodeString</span></li>
</ul>
<p><span style='font-size:18.0pt'>Locale</span> </p>
<ul type=disc>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l2 level1 lfo3;tab-stops:list .5in'>
<span style='font-size:13.5pt'>Locale</span><br>
<span style='font-size:13.5pt'>-- represents a specific geographical,
political, or cultural region</span> </li>
<li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
mso-list:l2 level1 lfo3;tab-stops:list .5in'>
<span style='font-size:13.5pt'>ResourceBundle</span><br>
<span style='font-size:13.5pt'>-- represents a collection of resource information
pertaining to a given locale</span></li>
</ul>
<p>&nbsp; </p>
<p><a href="../readme.html#API">ReadMe for International Components for
Unicode, API Overview</a></p>
</div>
</body>
</html>