32
|
1 |
{\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff0\deff0\stshfdbch31505\stshfloch31506\stshfhich31506\stshfbi0\deflang1033\deflangfe2052\themelang1033\themelangfe2052\themelangcs0{\fonttbl{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fbidi \fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}
|
|
2 |
{\f2\fbidi \fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}{\f13\fbidi \fnil\fcharset134\fprq2{\*\panose 02010600030101010101}SimSun{\*\falt SimSun};}{\f34\fbidi \froman\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria Math;}
|
|
3 |
{\f38\fbidi \fswiss\fcharset0\fprq2{\*\panose 020b0604030504040204}Tahoma;}{\f40\fbidi \fnil\fcharset134\fprq2{\*\panose 02010600030101010101}@SimSun;}{\flomajor\f31500\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
|
|
4 |
{\fdbmajor\f31501\fbidi \fnil\fcharset134\fprq2{\*\panose 02010600030101010101}SimSun{\*\falt SimSun};}{\fhimajor\f31502\fbidi \froman\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria;}
|
|
5 |
{\fbimajor\f31503\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\flominor\f31504\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
|
|
6 |
{\fdbminor\f31505\fbidi \fnil\fcharset134\fprq2{\*\panose 02010600030101010101}SimSun{\*\falt SimSun};}{\fhiminor\f31506\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}
|
|
7 |
{\fbiminor\f31507\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f42\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\f43\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
|
|
8 |
{\f45\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f46\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f47\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f48\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
|
|
9 |
{\f49\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f50\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f52\fbidi \fswiss\fcharset238\fprq2 Arial CE;}{\f53\fbidi \fswiss\fcharset204\fprq2 Arial Cyr;}
|
|
10 |
{\f55\fbidi \fswiss\fcharset161\fprq2 Arial Greek;}{\f56\fbidi \fswiss\fcharset162\fprq2 Arial Tur;}{\f57\fbidi \fswiss\fcharset177\fprq2 Arial (Hebrew);}{\f58\fbidi \fswiss\fcharset178\fprq2 Arial (Arabic);}
|
|
11 |
{\f59\fbidi \fswiss\fcharset186\fprq2 Arial Baltic;}{\f60\fbidi \fswiss\fcharset163\fprq2 Arial (Vietnamese);}{\f62\fbidi \fmodern\fcharset238\fprq1 Courier New CE;}{\f63\fbidi \fmodern\fcharset204\fprq1 Courier New Cyr;}
|
|
12 |
{\f65\fbidi \fmodern\fcharset161\fprq1 Courier New Greek;}{\f66\fbidi \fmodern\fcharset162\fprq1 Courier New Tur;}{\f67\fbidi \fmodern\fcharset177\fprq1 Courier New (Hebrew);}{\f68\fbidi \fmodern\fcharset178\fprq1 Courier New (Arabic);}
|
|
13 |
{\f69\fbidi \fmodern\fcharset186\fprq1 Courier New Baltic;}{\f70\fbidi \fmodern\fcharset163\fprq1 Courier New (Vietnamese);}{\f174\fbidi \fnil\fcharset0\fprq2 SimSun Western{\*\falt SimSun};}{\f382\fbidi \froman\fcharset238\fprq2 Cambria Math CE;}
|
|
14 |
{\f383\fbidi \froman\fcharset204\fprq2 Cambria Math Cyr;}{\f385\fbidi \froman\fcharset161\fprq2 Cambria Math Greek;}{\f386\fbidi \froman\fcharset162\fprq2 Cambria Math Tur;}{\f389\fbidi \froman\fcharset186\fprq2 Cambria Math Baltic;}
|
|
15 |
{\f422\fbidi \fswiss\fcharset238\fprq2 Tahoma CE;}{\f423\fbidi \fswiss\fcharset204\fprq2 Tahoma Cyr;}{\f425\fbidi \fswiss\fcharset161\fprq2 Tahoma Greek;}{\f426\fbidi \fswiss\fcharset162\fprq2 Tahoma Tur;}
|
|
16 |
{\f427\fbidi \fswiss\fcharset177\fprq2 Tahoma (Hebrew);}{\f428\fbidi \fswiss\fcharset178\fprq2 Tahoma (Arabic);}{\f429\fbidi \fswiss\fcharset186\fprq2 Tahoma Baltic;}{\f430\fbidi \fswiss\fcharset163\fprq2 Tahoma (Vietnamese);}
|
|
17 |
{\f431\fbidi \fswiss\fcharset222\fprq2 Tahoma (Thai);}{\f444\fbidi \fnil\fcharset0\fprq2 @SimSun Western;}{\flomajor\f31508\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
|
|
18 |
{\flomajor\f31511\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\flomajor\f31512\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flomajor\f31513\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
|
|
19 |
{\flomajor\f31514\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\flomajor\f31515\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flomajor\f31516\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
|
|
20 |
{\fdbmajor\f31520\fbidi \fnil\fcharset0\fprq2 SimSun Western{\*\falt SimSun};}{\fhimajor\f31528\fbidi \froman\fcharset238\fprq2 Cambria CE;}{\fhimajor\f31529\fbidi \froman\fcharset204\fprq2 Cambria Cyr;}
|
|
21 |
{\fhimajor\f31531\fbidi \froman\fcharset161\fprq2 Cambria Greek;}{\fhimajor\f31532\fbidi \froman\fcharset162\fprq2 Cambria Tur;}{\fhimajor\f31535\fbidi \froman\fcharset186\fprq2 Cambria Baltic;}
|
|
22 |
{\fbimajor\f31538\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbimajor\f31539\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fbimajor\f31541\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
|
|
23 |
{\fbimajor\f31542\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbimajor\f31543\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fbimajor\f31544\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
|
|
24 |
{\fbimajor\f31545\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbimajor\f31546\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\flominor\f31548\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}
|
|
25 |
{\flominor\f31549\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\flominor\f31551\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\flominor\f31552\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}
|
|
26 |
{\flominor\f31553\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\flominor\f31554\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\flominor\f31555\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}
|
|
27 |
{\flominor\f31556\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fdbminor\f31560\fbidi \fnil\fcharset0\fprq2 SimSun Western{\*\falt SimSun};}{\fhiminor\f31568\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}
|
|
28 |
{\fhiminor\f31569\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}{\fhiminor\f31571\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\fhiminor\f31572\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}
|
|
29 |
{\fhiminor\f31575\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}{\fbiminor\f31578\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbiminor\f31579\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
|
|
30 |
{\fbiminor\f31581\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbiminor\f31582\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbiminor\f31583\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
|
|
31 |
{\fbiminor\f31584\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbiminor\f31585\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbiminor\f31586\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}}
|
|
32 |
{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;
|
|
33 |
\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\*\defchp \loch\af31506\hich\af31506\dbch\af31505 }{\*\defpap
|
|
34 |
\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0
|
|
35 |
\fs20\lang2057\langfe2052\loch\f0\hich\af0\dbch\af31505\cgrid\langnp2057\langfenp2052 \snext0 \sqformat \spriority0 \styrsid15022011 Normal;}{\s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\faauto\outlinelevel0\rin0\lin0\itap0 \rtlch\fcs1
|
|
36 |
\ab\af1\afs28\alang1025 \ltrch\fcs0 \b\fs28\lang2057\langfe2052\kerning28\loch\f1\hich\af1\dbch\af31505\cgrid\langnp2057\langfenp2052 \sbasedon0 \snext0 \slink15 \sqformat \styrsid15022011 heading 1;}{
|
|
37 |
\s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\faauto\outlinelevel1\rin0\lin0\itap0 \rtlch\fcs1 \ab\ai\af1\afs24\alang1025 \ltrch\fcs0 \b\i\fs24\lang2057\langfe2052\loch\f1\hich\af1\dbch\af31505\cgrid\langnp2057\langfenp2052
|
|
38 |
\sbasedon0 \snext0 \slink16 \sqformat \styrsid15022011 heading 2;}{\s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs24\alang1025 \ltrch\fcs0
|
|
39 |
\fs24\lang2057\langfe2052\loch\f1\hich\af1\dbch\af31505\cgrid\langnp2057\langfenp2052 \sbasedon0 \snext0 \slink17 \sqformat \styrsid15022011 heading 3;}{\*\cs10 \additive \ssemihidden \sunhideused \spriority1 Default Paragraph Font;}{\*
|
|
40 |
\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\tblind0\tblindtype3\tscellwidthfts0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv
|
|
41 |
\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0 \fs20\lang1033\langfe2052\loch\f31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp2052
|
|
42 |
\snext11 \ssemihidden \sunhideused \sqformat Normal Table;}{\*\cs15 \additive \rtlch\fcs1 \ab\af31503\afs32 \ltrch\fcs0 \b\fs32\lang2057\langfe0\kerning32\loch\f31502\hich\af31502\dbch\af31501\langnp2057\langfenp0
|
|
43 |
\sbasedon10 \slink1 \slocked \spriority9 \styrsid15022011 Heading 1 Char;}{\*\cs16 \additive \rtlch\fcs1 \ab\ai\af31503\afs28 \ltrch\fcs0 \b\i\fs28\lang2057\langfe0\loch\f31502\hich\af31502\dbch\af31501\langnp2057\langfenp0
|
|
44 |
\sbasedon10 \slink2 \slocked \ssemihidden \spriority9 \styrsid15022011 Heading 2 Char;}{\*\cs17 \additive \rtlch\fcs1 \ab\af31503\afs26 \ltrch\fcs0 \b\fs26\lang2057\langfe0\loch\f31502\hich\af31502\dbch\af31501\langnp2057\langfenp0
|
|
45 |
\sbasedon10 \slink3 \slocked \ssemihidden \spriority9 \styrsid15022011 Heading 3 Char;}{\s18\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs16\alang1025 \ltrch\fcs0
|
|
46 |
\fs16\lang2057\langfe2052\loch\f38\hich\af38\dbch\af31505\cgrid\langnp2057\langfenp2052 \sbasedon0 \snext18 \slink19 \ssemihidden \sunhideused \styrsid7604161 Document Map;}{\*\cs19 \additive \rtlch\fcs1 \af38\afs16 \ltrch\fcs0
|
|
47 |
\f38\fs16\lang2057\langfe0\langnp2057\langfenp0 \sbasedon10 \slink18 \slocked \ssemihidden \styrsid7604161 Document Map Char;}{\s20\ql \li0\ri0\widctlpar\tqc\tx4320\tqr\tx8640\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1025
|
|
48 |
\ltrch\fcs0 \fs20\lang2057\langfe2052\loch\f0\hich\af0\dbch\af31505\cgrid\langnp2057\langfenp2052 \sbasedon0 \snext20 \slink21 \ssemihidden \sunhideused \styrsid7604161 header;}{\*\cs21 \additive \rtlch\fcs1 \af0\afs20 \ltrch\fcs0
|
|
49 |
\f0\fs20\lang2057\langfe0\langnp2057\langfenp0 \sbasedon10 \slink20 \slocked \ssemihidden \styrsid7604161 Header Char;}{\s22\ql \li0\ri0\widctlpar\tqc\tx4320\tqr\tx8640\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0
|
|
50 |
\fs20\lang2057\langfe2052\loch\f0\hich\af0\dbch\af31505\cgrid\langnp2057\langfenp2052 \sbasedon0 \snext22 \slink23 \ssemihidden \sunhideused \styrsid7604161 footer;}{\*\cs23 \additive \rtlch\fcs1 \af0\afs20 \ltrch\fcs0
|
|
51 |
\f0\fs20\lang2057\langfe0\langnp2057\langfenp0 \sbasedon10 \slink22 \slocked \ssemihidden \styrsid7604161 Footer Char;}}{\*\listtable{\list\listtemplateid-328197846\listsimple{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1
|
|
52 |
\levelold\levelspace0\levelindent283{\leveltext\'03\'00. ;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \b0\i0\f0\fs20\fbias0\hres0\chhres0 \fi-283\li283\lin283 }{\listname ;}\listid811824388}}{\*\listoverridetable{\listoverride\listid811824388
|
|
53 |
\listoverridecount0\ls1}}{\*\revtbl {Unknown;}{x120li;}}{\*\pgptbl {\pgp\ipgp0\itap0\li0\ri0\sb0\sa0}}{\*\rsidtbl \rsid1249922\rsid1327960\rsid2316060\rsid3302996\rsid5127372\rsid6169386\rsid7604161\rsid8209133\rsid9447428\rsid11078925\rsid12653111\rsid14561726\rsid15022011}
|
|
54 |
{\mmathPr\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1\mwrapIndent1440\mintLim0\mnaryLim1}{\info{\author Graham Asher}{\operator yanchli}{\creatim\yr2009\mo5\dy20\hr13\min44}{\revtim\yr2010\mo3\dy15\hr17\min43}
|
|
55 |
{\version3}{\edmins1}{\nofpages7}{\nofwords2326}{\nofchars12995}{\*\company Symbian}{\nofcharsws15291}{\vern32895}}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}}
|
|
56 |
\paperw11906\paperh16838\margl1800\margr1800\margt1440\margb1440\gutter0\ltrsect
|
|
57 |
\widowctrl\ftnbj\aenddoc\trackmoves1\trackformatting1\donotembedsysfont0\relyonvml0\donotembedlingdata0\grfdocevents0\validatexml0\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors0\hyphcaps0\formshade\horzdoc\dghspace120\dgvspace120
|
|
58 |
\dghorigin1701\dgvorigin1984\dghshow0\dgvshow3\jcompress\viewkind1\viewscale100\splytwnine\ftnlytwnine\htmautsp\useltbaln\alntblind\lytcalctblwd\lyttblrtgr\lnbrkrule\nobrkwrptbl\snaptogridincell\allowfieldendsel\wrppunct\asianbrkrule\rsidroot7604161
|
|
59 |
\newtblstyruls\nogrowautofit\usenormstyforlist\noindnmbrts\felnbrelev\nocxsptable\indrlsweleven\noafcnsttbl\afelev\utinl\hwelev\spltpgpar\notcvasp\notbrkcnstfrctbl\notvatxbx\krnprsnet\cachedcolbal \nouicompat \fet0{\*\wgrffmtfilter 2450}
|
|
60 |
\nofeaturethrottle1\ilfomacatclnup0{\*\ftnsep \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid7604161 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0
|
|
61 |
\fs20\lang2057\langfe2052\loch\af0\hich\af0\dbch\af31505\cgrid\langnp2057\langfenp2052 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid3302996 \chftnsep
|
|
62 |
\par }}{\*\ftnsepc \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid7604161 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0 \fs20\lang2057\langfe2052\loch\af0\hich\af0\dbch\af31505\cgrid\langnp2057\langfenp2052 {
|
|
63 |
\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid3302996 \chftnsepc
|
|
64 |
\par }}{\*\aftnsep \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid7604161 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0 \fs20\lang2057\langfe2052\loch\af0\hich\af0\dbch\af31505\cgrid\langnp2057\langfenp2052 {
|
|
65 |
\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid3302996 \chftnsep
|
|
66 |
\par }}{\*\aftnsepc \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid7604161 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0 \fs20\lang2057\langfe2052\loch\af0\hich\af0\dbch\af31505\cgrid\langnp2057\langfenp2052 {
|
|
67 |
\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid3302996 \chftnsepc
|
|
68 |
\par }}\ltrpar \sectd \ltrsect\linex0\headery709\footery709\colsx709\endnhere\sectdefaultcl\sectrsid15022011\sftnbj {\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3
|
|
69 |
\pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}}{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}
|
|
70 |
{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar
|
|
71 |
\s1\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\faauto\outlinelevel0\rin0\lin0\itap0 \rtlch\fcs1 \ab\af1\afs28\alang1025 \ltrch\fcs0 \b\fs28\lang2057\langfe2052\kerning28\loch\af1\hich\af1\dbch\af31505\cgrid\langnp2057\langfenp2052 {\rtlch\fcs1
|
|
72 |
\af1 \ltrch\fcs0 \insrsid11078925 \hich\af1\dbch\af31505\loch\f1 Using COLTAB to make collation key tables
|
|
73 |
\par }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0 \fs20\lang2057\langfe2052\loch\af0\hich\af0\dbch\af31505\cgrid\langnp2057\langfenp2052 {\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
74 |
\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 Graham Asher, 10}{\rtlch\fcs1 \af0 \ltrch\fcs0 \super\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 th}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 November 1999
|
|
75 |
\par }\pard\plain \ltrpar\s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\faauto\outlinelevel1\rin0\lin0\itap0 \rtlch\fcs1 \ab\ai\af1\afs24\alang1025 \ltrch\fcs0 \b\i\fs24\lang2057\langfe2052\loch\af1\hich\af1\dbch\af31505\cgrid\langnp2057\langfenp2052 {
|
|
76 |
\rtlch\fcs1 \af1 \ltrch\fcs0 \insrsid11078925 \hich\af1\dbch\af31505\loch\f1 Introduction
|
|
77 |
\par }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0 \fs20\lang2057\langfe2052\loch\af0\hich\af0\dbch\af31505\cgrid\langnp2057\langfenp2052 {\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
78 |
\insrsid11078925 \hich\af0\dbch\af31505\loch\f0
|
|
79 |
EPOC32 reads collation keys from tables. These tables not only map single Unicode characters to single keys, but map sequences of characters to sequences of keys. This system allows almost any kind of collation behaviour to be expressed. Each key is actua
|
|
80 |
\hich\af0\dbch\af31505\loch\f0 lly a triplet, giving three weights that can be used successively to make finer discriminations. There is an implicit fourth weight that is the Unicode value of the character itself, but that is not stored in the tables.
|
|
81 |
|
|
82 |
\par
|
|
83 |
\par \hich\af0\dbch\af31505\loch\f0 There can be two sets of tables. T\hich\af0\dbch\af31505\loch\f0 he first set provides the standard keys; the optional second set tailors them for a particular locale. See the definition of TCollationMethod in \\e32\\include
|
|
84 |
\\collate.h; iMainTable contains the standard keys and iOverrideTable the tailoring.
|
|
85 |
\par
|
|
86 |
\par \hich\af0\dbch\af31505\loch\f0 The tables use\hich\af0\dbch\af31505\loch\f0
|
|
87 |
d by EPOC are arrays of numbers written in the C++ source code in hexadecimal notation, and packed and encoded in various ways to make them more compact. This article explains how to use COLTAB to write this C++ code, translating from source data supplied
|
|
88 |
\hich\af0\dbch\af31505\loch\f0 \hich\af0\dbch\af31505\loch\f0 by the Unicode Consortium, or other source data in the same format. It is followed by a case study; that of creating collation tables for Swedish.
|
|
89 |
\par }\pard\plain \ltrpar\s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\faauto\outlinelevel1\rin0\lin0\itap0 \rtlch\fcs1 \ab\ai\af1\afs24\alang1025 \ltrch\fcs0 \b\i\fs24\lang2057\langfe2052\loch\af1\hich\af1\dbch\af31505\cgrid\langnp2057\langfenp2052 {
|
|
90 |
\rtlch\fcs1 \af1 \ltrch\fcs0 \insrsid11078925 \hich\af1\dbch\af31505\loch\f1 COLTAB reference
|
|
91 |
\par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs24\alang1025 \ltrch\fcs0 \fs24\lang2057\langfe2052\loch\af1\hich\af1\dbch\af31505\cgrid\langnp2057\langfenp2052 {
|
|
92 |
\rtlch\fcs1 \af1 \ltrch\fcs0 \insrsid11078925 \hich\af1\dbch\af31505\loch\f1 COLTAB syntax
|
|
93 |
\par }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0 \fs20\lang2057\langfe2052\loch\af0\hich\af0\dbch\af31505\cgrid\langnp2057\langfenp2052 {\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
94 |
\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 COLTAB is a Windows NT console application that requires }{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 a single command-line\hich\af0\dbch\af31505\loch\f0 argument}{
|
|
95 |
\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\cf0\revised\revauth1\revdttm1188404120\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 and a single option}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 .}{\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
96 |
\cf0\revised\revauth1\revdttm1188404122\insrsid7604161
|
|
97 |
\par
|
|
98 |
\par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \deleted\revauthdel1\revdttmdel1188404122\insrsid11078925\delrsid7604161 \hich\af0\dbch\af31505\loch\f0 }{\rtlch\fcs1 \af0 \ltrch\fcs0 \deleted\revauthdel1\revdttmdel1188404120\insrsid11078925\delrsid7604161
|
|
99 |
\hich\af0\dbch\af31505\loch\f0 This }{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404120\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 The argument }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 is the }{
|
|
100 |
\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 locale name}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 \hich\f0
|
|
101 |
, which is used as a base for the names of the files that COLTAB reads and writes. The locale name can be one of the two special names \'93\loch\f0 \hich\f0 standard\'94\loch\f0 \hich\f0 and \'93\loch\f0 \hich\f0 wgl4\'94\loch\f0
|
|
102 |
, in which case the standard da\hich\af0\dbch\af31505\loch\f0 ta files are read, or anything else (usually the name of a language) in which case files providing specific collation rules for that language are read.
|
|
103 |
\par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404122\insrsid11078925
|
|
104 |
\par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404122\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 The option is \hich\f0 \lquote \loch\f0 /a\hich\f0 \rquote \loch\f0 . }{\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
105 |
\cf0\revised\revauth1\revdttm1188404123\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 The}{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404126\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 organization of}{\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
106 |
\cf0\revised\revauth1\revdttm1188404127\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 }{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404126\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 the }{\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
107 |
\cf0\revised\revauth1\revdttm1188404123\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 default collation keys files provided by the Unicode}{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404134\insrsid9447428 \hich\af0\dbch\af31505\loch\f0
|
|
108 |
Consor\hich\af0\dbch\af31505\loch\f0 tium}{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404123\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 ha}{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404124\insrsid7604161
|
|
109 |
\hich\af0\dbch\af31505\loch\f0 ve}{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404123\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 }{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404127\insrsid7604161
|
|
110 |
\hich\af0\dbch\af31505\loch\f0 been }{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404123\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 slightly changed since }{\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
111 |
\cf0\revised\revauth1\revdttm1188404122\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 Unicode }{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404124\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 version }{\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
112 |
\cf0\revised\revauth1\revdttm1188404122\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 3.0}{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404124\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 . }{\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
113 |
\cf0\revised\revauth1\revdttm1188404125\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 Before}{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404127\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 and in}{\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
114 |
\cf0\revised\revauth1\revdttm1188404125\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 Unicode 3.0, }{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404122\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 three }{\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
115 |
\cf0\revised\revauth1\revdttm1188404123\insrsid7604161 \hich\af0\dbch\af31505\loch\f0 keys files}{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404125\insrsid7604161 \hich\af0\dbch\af31505\loch\f0
|
|
116 |
are provided. They are the base keys file, the composite keys file, and the string keys file. After Unicode 3.0, these three files are combined into one}{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404128\insrsid7604161
|
|
117 |
\hich\af0\dbch\af31505\loch\f0 single file, which is the all keys file}{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404125\insrsid7604161 .}{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404128\insrsid7604161
|
|
118 |
\hich\af0\dbch\af31505\loch\f0 When option \hich\f0 \lquote \loch\f0 /a\hich\f0 \rquote \loch\f0 is not specified, COLTAB will try to find the three separated files, using the locale name as}{\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
119 |
\cf0\revised\revauth1\revdttm1188404131\insrsid2316060 \hich\af0\dbch\af31505\loch\f0 file name base. When option \hich\f0 \lquote \loch\f0 a\hich\f0 \rquote \loch\f0 is specified, }{\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
120 |
\cf0\revised\revauth1\revdttm1188404132\insrsid9447428 \hich\af0\dbch\af31505\loch\f0 COLTAB will try to find the single keys file, using the l\hich\af0\dbch\af31505\loch\f0 ocale name as file name base.}{\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
121 |
\cf0\revised\revauth1\revdttm1188404122\insrsid7604161
|
|
122 |
\par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid7604161
|
|
123 |
\par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 The input and output files are:
|
|
124 |
\par
|
|
125 |
\par \hich\af0\dbch\af31505\loch\f0 \hich\f0 1. The base keys file. If the locale name is \'93\loch\f0 \hich\f0 standard\'94\loch\f0 \hich\f0 or \'93\loch\f0 \hich\f0 wgl4\'94\loch\f0 this is }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid11078925
|
|
126 |
\hich\af0\dbch\af31505\loch\f0 basekeys.txt}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 (the standard base keys file supplied by the Unicode Consortium), otherwise it is }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0
|
|
127 |
\i\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 <locale-name>_basekeys\hich\af0\dbch\af31505\loch\f0 .txt.}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925
|
|
128 |
\par
|
|
129 |
\par \hich\af0\dbch\af31505\loch\f0 \hich\f0 2. The composite keys file. If the locale name is \'93\loch\f0 \hich\f0 standard\'94\loch\f0 \hich\f0 or \'93\loch\f0 \hich\f0 wgl4\'94\loch\f0 this is }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid11078925
|
|
130 |
\hich\af0\dbch\af31505\loch\f0 compkeys.txt}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 (the standard base keys file supplied by the Unicode Consortium), otherwise it is }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0
|
|
131 |
\i\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 <locale-name>_compkeys.txt.}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925
|
|
132 |
\par
|
|
133 |
\par \hich\af0\dbch\af31505\loch\f0 \hich\f0 3. The file of strings; sequences of Unicode characters that map to single collation keys. If the locale name is \'93\loch\f0 \hich\f0 standard\'94\loch\f0 \hich\f0 or \'93\loch\f0 \hich\f0 wgl4\'94\loch\f0
|
|
134 |
no strings file is read, otherwise it is }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 <locale-name>_strings.txt.}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925
|
|
135 |
\par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404133\insrsid11078925
|
|
136 |
\par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404133\insrsid9447428 \hich\af0\dbch\af31505\loch\f0 \hich\f0 3. The all keys file. If the locale name is \'93\loch\f0 standar\hich\af0\dbch\af31505\loch\f0 \hich\f0 d\'94\loch\f0 \hich\f0
|
|
137 |
or \'93\loch\f0 \hich\f0 wgl4\'94\loch\f0 this is }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\cf0\revised\revauth1\revdttm1188404135\insrsid8209133 \hich\af0\dbch\af31505\loch\f0 baseallkeys.txt}{\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
138 |
\cf0\revised\revauth1\revdttm1188404133\insrsid9447428 \hich\af0\dbch\af31505\loch\f0 (the standard }{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404134\insrsid8209133 \hich\af0\dbch\af31505\loch\f0 all}{\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
139 |
\cf0\revised\revauth1\revdttm1188404133\insrsid9447428 \hich\af0\dbch\af31505\loch\f0 ke}{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404134\insrsid8209133 \hich\af0\dbch\af31505\loch\f0
|
|
140 |
ys file supplied by the Unicode Consortium), otherwise it is }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\cf0\revised\revauth1\revdttm1188404135\insrsid8209133 \hich\af0\dbch\af31505\loch\f0 <locale-name>_allkeys.txt}{\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
141 |
\cf0\revised\revauth1\revdttm1188404135\insrsid8209133 .}{\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\revised\revauth1\revdttm1188404135\insrsid9447428
|
|
142 |
\par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid6169386
|
|
143 |
\par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 4. The output C++ source file. This is }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 ls_<locale-name>.cpp}{\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
144 |
\insrsid11078925 .
|
|
145 |
\par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs24\alang1025 \ltrch\fcs0 \fs24\lang2057\langfe2052\loch\af1\hich\af1\dbch\af31505\cgrid\langnp2057\langfenp2052 {
|
|
146 |
\rtlch\fcs1 \af1 \ltrch\fcs0 \insrsid11078925 \hich\af1\dbch\af31505\loch\f1 The format of the base keys file
|
|
147 |
\par }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0 \fs20\lang2057\langfe2052\loch\af0\hich\af0\dbch\af31505\cgrid\langnp2057\langfenp2052 {\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
148 |
\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 Here are a few lines from }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 basekeys.txt}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 :
|
|
149 |
|
|
150 |
\par
|
|
151 |
\par \hich\af0\dbch\af31505\loch\f0 0044 ; [.0707.0020.0008.0044] % LATIN CAPITAL LETTER D
|
|
152 |
\par \hich\af0\dbch\af31505\loch\f0 FF24 ; [.0707.0020.0009.FF24] % FULLWIDTH LATIN CAPITAL LETTER D; COMPAT
|
|
153 |
\par \hich\af0\dbch\af31505\loch\f0 216E ; [.0707.0020.000A.216E] % ROMAN NUMERAL FIVE HUNDRED; COMPAT
|
|
154 |
\par \hich\af0\dbch\af31505\loch\f0 24B9 ; [.0707.0020.0\hich\af0\dbch\af31505\loch\f0 00C.24B9] % CIRCLED LATIN CAPITAL LETTER D; COMPAT
|
|
155 |
\par \hich\af0\dbch\af31505\loch\f0 010F ; [.0707.0031.0002.010F] % LATIN SMALL LETTER D WITH CARON; CANONSEQ
|
|
156 |
\par
|
|
157 |
\par \hich\af0\dbch\af31505\loch\f0 The format is
|
|
158 |
\par
|
|
159 |
\par \hich\af0\dbch\af31505\loch\f0 a four-digit hex number; the Unicode value of the character
|
|
160 |
\par \hich\af0\dbch\af31505\loch\f0 a space, a semicolon, and a space (optionally, a single\hich\af0\dbch\af31505\loch\f0
|
|
161 |
space can occur here rather then the three characters just mentioned; this is how the data files used to be before Unicode 3.0 was released in March 2000)
|
|
162 |
\par \hich\af0\dbch\af31505\loch\f0 square brackets enclosing the four collation keys, each of which is a four-digit hex number preceded\hich\af0\dbch\af31505\loch\f0
|
|
163 |
either by a full stop (meaning that this value is treated in the ordinary way) or an asterisk (meaning that this value is usually ignored)
|
|
164 |
\par \hich\af0\dbch\af31505\loch\f0 a space
|
|
165 |
\par \hich\af0\dbch\af31505\loch\f0 a percent sign
|
|
166 |
\par \hich\af0\dbch\af31505\loch\f0 an optional comment that is usually the Unicode name of the character
|
|
167 |
\par
|
|
168 |
\par \hich\af0\dbch\af31505\loch\f0 In addition, the file \hich\af0\dbch\af31505\loch\f0 can start with some comments (lines starting with a percent sign) followed by the revision number (e.g., \hich\f0 \lquote \loch\f0 2.1.9 % version\hich\f0 \rquote
|
|
169 |
\loch\f0 ) on a line of its own; this part is optional. Blank lines are ignored.
|
|
170 |
\par
|
|
171 |
\par \hich\af0\dbch\af31505\loch\f0 The four key values have the following conventional meanings:
|
|
172 |
\par
|
|
173 |
\par \hich\af0\dbch\af31505\loch\f0 Level-0 key (0707 in the first example line above): basic character identity. All Ds have 0707 as their level-0 key.
|
|
174 |
\par
|
|
175 |
\par \hich\af0\dbch\af31505\loch\f0 Level-1 key (0020): diacritic or modifier if any; 0020 means \hich\f0 \lquote \loch\f0 no diacritic\hich\f0 \rquote \loch\f0 , 0031 means \hich\f0 \lquote \loch\f0 caron\hich\f0 \rquote \hich\af0\dbch\af31505\loch\f0
|
|
176 |
, etc. There are too many of these to list here but values can easily be ascertained by looking at }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 basekeys.txt}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 .
|
|
177 |
\par
|
|
178 |
\par \hich\af0\dbch\af31505\loch\f0 Level-2 key (0008): case or other variation. Here are the conventional values used in }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 basekeys.txt}{\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
179 |
\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 and }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 compkeys.txt}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 :
|
|
180 |
\par
|
|
181 |
\par \hich\af0\dbch\af31505\loch\f0 0002: default value; sma\hich\af0\dbch\af31505\loch\f0 ll letter; musical sign\line 0003: fullwidth small letter\line 0004: small letter used as Roman numeral or mathematical symbol\line 0005: script small letter\line
|
|
182 |
0006: circled small letter\line 0007: not used\line 0008: capital letter\line 0009: fullwidth capital letter\line 000A: capital lett\hich\af0\dbch\af31505\loch\f0 e\hich\af0\dbch\af31505\loch\f0 r used as Roman numeral or mathematical symbol
|
|
183 |
\par \hich\af0\dbch\af31505\loch\f0 000B: script capital\line 000C: circled capital\line 000D: Hiragana small letter\line 000E: Hiragana letter\line 000F: Katakana small letter\line 0010: Halfwidth Katakana small letter
|
|
184 |
\par \hich\af0\dbch\af31505\loch\f0 0011: Katakana letter
|
|
185 |
\par \hich\af0\dbch\af31505\loch\f0 0012: Halfwidth Katakana let\hich\af0\dbch\af31505\loch\f0 ter
|
|
186 |
\par \hich\af0\dbch\af31505\loch\f0 0013: Circled Katakana letter
|
|
187 |
\par \hich\af0\dbch\af31505\loch\f0 0014: modifier, ideographic annotation, superscript
|
|
188 |
\par \hich\af0\dbch\af31505\loch\f0 0015: subscript
|
|
189 |
\par \hich\af0\dbch\af31505\loch\f0 0016: vertical presentation form
|
|
190 |
\par \hich\af0\dbch\af31505\loch\f0 0017: initial (Arabic or other) presentation form
|
|
191 |
\par \hich\af0\dbch\af31505\loch\f0 0018: medial presentation form
|
|
192 |
\par \hich\af0\dbch\af31505\loch\f0 0019: final presentation form
|
|
193 |
\par \hich\af0\dbch\af31505\loch\f0 001A: isol\hich\af0\dbch\af31505\loch\f0 ated presentation form
|
|
194 |
\par \hich\af0\dbch\af31505\loch\f0 001B: non-breaking variant (non-break space, etc.)
|
|
195 |
\par \hich\af0\dbch\af31505\loch\f0 001C: surrounded by square
|
|
196 |
\par \hich\af0\dbch\af31505\loch\f0 001D: surrounded by square (not sure how this differs from 001C)
|
|
197 |
\par \hich\af0\dbch\af31505\loch\f0 001E: vulgar fraction
|
|
198 |
\par
|
|
199 |
\par \hich\af0\dbch\af31505\loch\f0 Level-3 key: fallback key, used if all other keys yield equality; i\hich\af0\dbch\af31505\loch\f0 n }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 basekeys.txt}{\rtlch\fcs1 \af0
|
|
200 |
\ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 always the Unicode value of the character. This value is not stored in the tables generated by COLTAB.
|
|
201 |
\par
|
|
202 |
\par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs24\alang1025 \ltrch\fcs0 \fs24\lang2057\langfe2052\loch\af1\hich\af1\dbch\af31505\cgrid\langnp2057\langfenp2052 {
|
|
203 |
\rtlch\fcs1 \af1 \ltrch\fcs0 \insrsid11078925 \hich\af1\dbch\af31505\loch\f1 The format of the composite keys file
|
|
204 |
\par }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0 \fs20\lang2057\langfe2052\loch\af0\hich\af0\dbch\af31505\cgrid\langnp2057\langfenp2052 {\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
205 |
\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 This is exactly the same as the base keys file, except that there may be more than one group of col\hich\af0\dbch\af31505\loch\f0
|
|
206 |
lation keys. Here are a few sample lines (broken here because of the narrow page):
|
|
207 |
\par
|
|
208 |
\par \hich\af0\dbch\af31505\loch\f0 217A ; [.08D9.0020.0004.0078] [.079D.0020.0004.0069] % SMALL ROMAN NUMERAL ELEVEN;
|
|
209 |
\par }\pard \ltrpar\ql \fi720\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 COMPATSEQ
|
|
210 |
\par }\pard \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 217B ; [.08D9.0020.0004.0078] [.079D.0020.0004.0069] [.079D.0020.0004.0069] %
|
|
211 |
\par }\pard \ltrpar\ql \fi720\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 SMALL ROMAN NUMERAL TWELVE; COMPATSEQ
|
|
212 |
\par }\pard \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 216A ; [.08D9.0020.000A.0058] [.079D.0020.000A.0049] % ROMAN NUMERAL ELEVEN;
|
|
213 |
\par }\pard \ltrpar\ql \fi720\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 COMPATSEQ
|
|
214 |
\par }\pard \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 216B ; [.08D9.0020.000A.0058] [.079D.0020.000A.0049] [.079D.0020.000A.0049] % ROMAN
|
|
215 |
\par }\pard \ltrpar\ql \fi720\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 NUMERAL TWELVE; COMPATSEQ
|
|
216 |
\par }\pard \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 0149 ; [.091E.0020.00\hich\af0\dbch\af31505\loch\f0
|
|
217 |
04.02BC] [.07FD.0020.0004.006E] % LATIN SMALL LETTER N
|
|
218 |
\par }\pard \ltrpar\ql \fi720\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 PRECEDED BY APOSTROPHE; COMPATSEQ
|
|
219 |
\par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs24\alang1025 \ltrch\fcs0 \fs24\lang2057\langfe2052\loch\af1\hich\af1\dbch\af31505\cgrid\langnp2057\langfenp2052 {
|
|
220 |
\rtlch\fcs1 \af1 \ltrch\fcs0 \insrsid11078925 \hich\af1\dbch\af31505\loch\f1 The format of the strings file
|
|
221 |
\par }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0 \fs20\lang2057\langfe2052\loch\af0\hich\af0\dbch\af31505\cgrid\langnp2057\langfenp2052 {\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
222 |
\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 The strings file has the same format as compkeys.txt, except that there can be any number of Unicode characters at the start of the line\hich\af0\dbch\af31505\loch\f0
|
|
223 |
, space-separated and each exactly 4 hex digits.
|
|
224 |
\par
|
|
225 |
\par \hich\af0\dbch\af31505\loch\f0 Each line associates a string of Unicode characters (sometimes known as a \hich\f0 \lquote \loch\f0 collation grapheme\hich\f0 \rquote \loch\f0
|
|
226 |
) with a collation key or sequence of collation keys. The collation system currently handles strings of up to 8 \hich\af0\dbch\af31505\loch\f0 characters. For example, the following entry treats \hich\f0 \lquote \loch\f0 ch\hich\f0 \rquote \loch\f0
|
|
227 |
as a single letter, as is done in traditional Spanish collation:
|
|
228 |
\par
|
|
229 |
\par \hich\af0\dbch\af31505\loch\f0 0063 0068 ; [.06FC.0020.0002.0063] % LATIN SMALL LETTER C followed by LATIN SMALL
|
|
230 |
\par }\pard \ltrpar\ql \fi720\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 LETTER H
|
|
231 |
\par }\pard \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925
|
|
232 |
\par \hich\af0\dbch\af31505\loch\f0 You will have to supply all the case vers\hich\af0\dbch\af31505\loch\f0 ions as separate entries. For \hich\f0 \lquote \loch\f0 ch\hich\f0 \rquote \loch\f0 the variants \hich\f0 \lquote \loch\f0 ch\hich\f0 \rquote \loch\f0
|
|
233 |
, \hich\f0 \lquote \loch\f0 Ch\hich\f0 \rquote \loch\f0 and \hich\f0 \lquote \loch\f0 CH\hich\f0 \rquote \loch\f0 are needed; \hich\f0 \lquote \loch\f0 cH\hich\f0 \rquote \loch\f0 should probably be omitted as not actually a case-variant of \hich\f0
|
|
234 |
\lquote \loch\f0 ch\hich\f0 \rquote \loch\f0 but two separate letters.
|
|
235 |
\par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs24\alang1025 \ltrch\fcs0 \fs24\lang2057\langfe2052\loch\af1\hich\af1\dbch\af31505\cgrid\langnp2057\langfenp2052 {
|
|
236 |
\rtlch\fcs1 \af1 \ltrch\fcs0 \insrsid11078925 \hich\af1\dbch\af31505\loch\f1 The output file
|
|
237 |
\par }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0 \fs20\lang2057\langfe2052\loch\af0\hich\af0\dbch\af31505\cgrid\langnp2057\langfenp2052 {\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
238 |
\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 COLTAB writes a C++ source file that looks like this (omitting \hich\af0\dbch\af31505\loch\f0 irrelevant material):
|
|
239 |
\par
|
|
240 |
\par }{\rtlch\fcs1 \af2 \ltrch\fcs0 \f2\insrsid11078925 \hich\af2\dbch\af31505\loch\f2 static const TUint32 TheKey[] =
|
|
241 |
\par \tab \{
|
|
242 |
\par \tab \hich\af2\dbch\af31505\loch\f2 0x21e0112,0x21e0113,0x2260112,0x2260112,0x2260113,0x2740112,\line 0x2740113,0x6c60178,\tab
|
|
243 |
\par
|
|
244 |
\par \tab \hich\af2\dbch\af31505\loch\f2 <many lines omitted >
|
|
245 |
\par
|
|
246 |
\par \tab \hich\af2\dbch\af31505\loch\f2 0xaa2011d,0xaa60105,0xaa6011d
|
|
247 |
\par \tab \}\hich\af2\dbch\af31505\loch\f2 ;
|
|
248 |
\par
|
|
249 |
\par \hich\af2\dbch\af31505\loch\f2 static const TUint32 TheIndex[] =
|
|
250 |
\par \tab \{
|
|
251 |
\par \tab \hich\af2\dbch\af31505\loch\f2 0x37,0x10037,0x20037,0x30037,0x40037,0x50037,0x60037,0x70037,
|
|
252 |
\par
|
|
253 |
\par \tab \hich\af2\dbch\af31505\loch\f2 <many lines omitted >
|
|
254 |
\par
|
|
255 |
\par \tab \hich\af2\dbch\af31505\loch\f2 0xfb01001f,0xfb020021,0xfeff0037,0xfffc00fb,0xfffd00fc
|
|
256 |
\par \tab \}\hich\af2\dbch\af31505\loch\f2 ;
|
|
257 |
\par
|
|
258 |
\par \hich\af2\dbch\af31505\loch\f2 static const TUint16 TheStringElement[] =
|
|
259 |
\par \tab \{
|
|
260 |
\par \tab \}\hich\af2\dbch\af31505\loch\f2 ;
|
|
261 |
\par
|
|
262 |
\par \hich\af2\dbch\af31505\loch\f2 static const TUint32 TheStringIndex[] =
|
|
263 |
\par \tab \{
|
|
264 |
\par \tab \}\hich\af2\dbch\af31505\loch\f2 ;
|
|
265 |
\par
|
|
266 |
\par \hich\af2\dbch\af31505\loch\f2 static c\hich\af2\dbch\af31505\loch\f2 onst TCollationKeyTable TheStandardTable =
|
|
267 |
\par \tab \{\hich\af2\dbch\af31505\loch\f2 TheKey, TheIndex, 517, TheStringElement, TheStringIndex, 0 \};
|
|
268 |
\par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925
|
|
269 |
\par \hich\af0\dbch\af31505\loch\f0 The last declaration is the important one; all the preceding ones are components of it. The TCollationKeyTable structure that is declared can be u\hich\af0\dbch\af31505\loch\f0
|
|
270 |
sed as one of the two elements of a TCollationMethod structure, which can be passed to one of the Mem::CompareC or TDesC16::CompareC functions.
|
|
271 |
\par
|
|
272 |
\par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs24\alang1025 \ltrch\fcs0 \fs24\lang2057\langfe2052\loch\af1\hich\af1\dbch\af31505\cgrid\langnp2057\langfenp2052 {
|
|
273 |
\rtlch\fcs1 \af1 \ltrch\fcs0 \insrsid11078925 \hich\af1\dbch\af31505\loch\f1 Putting the output into EPOC
|
|
274 |
\par }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0 \fs20\lang2057\langfe2052\loch\af0\hich\af0\dbch\af31505\cgrid\langnp2057\langfenp2052 {\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
275 |
\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 In an EPOC implementation collation rules are kept in two places. The }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 standard }{\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
276 |
\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 rul\hich\af0\dbch\af31505\loch\f0 es, which form the base from which the tailoring or tailorings for a given locale differ, are encoded as constant static data in \\e32\\euser\\unicode\\collate.cpp. The }{
|
|
277 |
\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 locale-specific}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 rules for the default locale are kept in \\e32\\elocl\\ls_unic.cpp. Locale-spe
|
|
278 |
\hich\af0\dbch\af31505\loch\f0 cific rules for other locales are kept in other files of the form \\e32\\elocl\\ls_<x>.cpp, where <x> will probably be the language name or locale code; this is yet to be decided.
|
|
279 |
\par
|
|
280 |
\par \hich\af0\dbch\af31505\loch\f0 The standard rules should be changed only when the Unicode organisation releas\hich\af0\dbch\af31505\loch\f0 es new collation key tables, or when EPOC changes.
|
|
281 |
\par
|
|
282 |
\par \hich\af0\dbch\af31505\loch\f0 \hich\f0 Tailoring files containing locale-specific collation keys can be created whenever necessary by running COLTAB; for locales other than \'93\loch\f0 \hich\f0 wgl4\'94\loch\f0 \hich\f0 and \'93\loch\f0 \hich\f0
|
|
283 |
standard\'94\loch\f0 COLTAB writes a complete source file that with s\hich\af0\dbch\af31505\loch\f0 mall modifications (e.g., declaring a constant for the UID for the locale-specific collation rules) can be used directly as part of ELOCL.}{\rtlch\fcs1
|
|
284 |
\af2\afs18 \ltrch\fcs0 \f2\fs18\insrsid11078925
|
|
285 |
\par }\pard\plain \ltrpar\s2\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\faauto\outlinelevel1\rin0\lin0\itap0 \rtlch\fcs1 \ab\ai\af1\afs24\alang1025 \ltrch\fcs0 \b\i\fs24\lang2057\langfe2052\loch\af1\hich\af1\dbch\af31505\cgrid\langnp2057\langfenp2052 {
|
|
286 |
\rtlch\fcs1 \af1 \ltrch\fcs0 \insrsid11078925 \hich\af1\dbch\af31505\loch\f1 Case Study: tailoring for the Swedish locale
|
|
287 |
\par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs24\alang1025 \ltrch\fcs0 \fs24\lang2057\langfe2052\loch\af1\hich\af1\dbch\af31505\cgrid\langnp2057\langfenp2052 {
|
|
288 |
\rtlch\fcs1 \af1 \ltrch\fcs0 \insrsid11078925 \hich\af1\dbch\af31505\loch\f1 Determine the collation rules
|
|
289 |
\par }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0 \fs20\lang2057\langfe2052\loch\af0\hich\af0\dbch\af31505\cgrid\langnp2057\langfenp2052 {\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
290 |
\insrsid11078925 \hich\af0\dbch\af31505\loch\f0
|
|
291 |
The first stage is to determine the collation rules for the locale in question. I will use Swedish as an example. Swedish uses the Latin script with some letters that require special treatment. It is a good rule, and one that I will follow here, that in a
|
|
292 |
\hich\af0\dbch\af31505\loch\f0 l\hich\af0\dbch\af31505\loch\f0
|
|
293 |
l cases apart from the peculiarities that actually matter to the particular locale, the standard collation system should be used. For example, it is unnecessary and undesirable for the Swedish locale to sort Greek letters in a non-standard way. This means
|
|
294 |
\hich\af0\dbch\af31505\loch\f0 \hich\af0\dbch\af31505\loch\f0 that the Swedish locale will be a relatively simple tailoring of the standard locale, which provides collation keys for the WGL4 character repertoire plus some useful control characters.
|
|
295 |
|
|
296 |
\par
|
|
297 |
\par \hich\af0\dbch\af31505\loch\f0 The rules that we need to express are as follows. (Note to experts i\hich\af0\dbch\af31505\loch\f0
|
|
298 |
n Swedish: these rules are meant as an example and may not follow actual Swedish practice, although I believe they are correct as far as they go.)
|
|
299 |
\par
|
|
300 |
\par {\pntext\pard\plain\ltrpar \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang2057\langfe2052\langnp2057\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 1. \tab}}\pard \ltrpar\ql \fi-283\li283\ri0\widctlpar\wrapdefault{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0
|
|
301 |
\pndec\pnb0\pni0\pnfs20\pnstart1\pnindent283\pnhang {\pntxta . }}\faauto\ls1\rin0\lin283\itap0\pararsid7604161 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 \hich\f0 The letters \'e5\loch\f0 \hich\f0 , \'e4\loch\f0
|
|
302 |
\hich\f0 , and \'f6\loch\f0 (a-ring, a-umlaut and o-umlaut) are separate letters, placed in that order aft\hich\af0\dbch\af31505\loch\f0 er z. They are not to be treated as accented letters.
|
|
303 |
\par {\pntext\pard\plain\ltrpar \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang2057\langfe2052\langnp2057\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 2. \tab}}\pard \ltrpar\ql \fi-283\li283\ri0\widctlpar\wrapdefault{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0
|
|
304 |
\pndec\pnb0\pni0\pnfs20\pnstart1\pnindent283\pnhang {\pntxta . }}\faauto\ls1\rin0\lin283\itap0\pararsid7604161 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 The letters v and w are identical for the purposes of collation.
|
|
305 |
|
|
306 |
\par {\pntext\pard\plain\ltrpar \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang2057\langfe2052\langnp2057\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 3. \tab}}\pard \ltrpar\ql \fi-283\li283\ri0\widctlpar\wrapdefault{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0
|
|
307 |
\pndec\pnb0\pni0\pnfs20\pnstart1\pnindent283\pnhang {\pntxta . }}\faauto\ls1\rin0\lin283\itap0\pararsid7604161 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 \hich\f0 The letters \'fc\loch\f0
|
|
308 |
and y are identical for the purposes of collation.
|
|
309 |
\par }\pard \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925
|
|
310 |
\par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs24\alang1025 \ltrch\fcs0 \fs24\lang2057\langfe2052\loch\af1\hich\af1\dbch\af31505\cgrid\langnp2057\langfenp2052 {
|
|
311 |
\rtlch\fcs1 \af1 \ltrch\fcs0 \insrsid11078925 \hich\af1\dbch\af31505\loch\f1 Create tailoring data
|
|
312 |
\par }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0 \fs20\lang2057\langfe2052\loch\af0\hich\af0\dbch\af31505\cgrid\langnp2057\langfenp2052 {\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
313 |
\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 Here is the tailoring data.
|
|
314 |
\par
|
|
315 |
\par \hich\af0\dbch\af31505\loch\f0 The equ\hich\af0\dbch\af31505\loch\f0 ivalence of v and w is indicated by a tailored base keys file that should be called (following COLTAB\hich\f0 \rquote \loch\f0
|
|
316 |
s conventions) swedish_basekeys.txt. Creating this is simple; just copy the }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 basekeys}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 .}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0
|
|
317 |
\i\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 txt}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925 \hich\af0\dbch\af31505\loch\f0 entries for V (U+0056) and v (U+0076) but change the Unicode valu\hich\af0\dbch\af31505\loch\f0 es to 0057 and 0077.
|
|
318 |
|
|
319 |
\par
|
|
320 |
\par \hich\af0\dbch\af31505\loch\f0 0057 [.08C5.0020.0008.0057] % W equivalent to V
|
|
321 |
\par \hich\af0\dbch\af31505\loch\f0 0077 [.08C5.0020.0002.0077] % w equivalent to v
|
|
322 |
\par
|
|
323 |
\par \hich\af0\dbch\af31505\loch\f0 \hich\f0 The letters \'e5\loch\f0 \hich\f0 , \'e4\loch\f0 \hich\f0 , \'f6\loch\f0 \hich\f0 and \'fc\loch\f0 must be treated in the data as strings of Unicode values, that is of bases plus accents, associated with single
|
|
324 |
\hich\af0\dbch\af31505\loch\f0 keys. (There is no need to create entries for the composed versions, because the EPOC collation system dissects them as it goes along). Use the combining diacritics; most are in the Unicode range U+0300\hich\f0 \emdash
|
|
325 |
\loch\f0 U+0361. For example, U+030A is combining ring above.\hich\af0\dbch\af31505\loch\f0 In general you have to use the combined character\hich\f0 \rquote \loch\f0 s canonical decomposition.
|
|
326 |
\par
|
|
327 |
\par \hich\af0\dbch\af31505\loch\f0 \hich\f0 The primary collation keys for \'e5\loch\f0 \hich\f0 , \'e4\loch\f0 \hich\f0 , and \'f6\loch\f0 are assigned by making use of the convenient gaps between existing key values. The last \hich\f0 \lquote \loch\f0 z
|
|
328 |
\hich\f0 \rquote \loch\f0 is U+0291, Latin small letter z with curl,\hich\af0\dbch\af31505\loch\f0
|
|
329 |
which has the primary key 08F5. The next entry is for U+0292, Latin small letter ezh, which has the primary key 08F9. This leaves a gap of 3 unused primary keys, 08F6\hich\f0 \emdash \loch\f0 \hich\f0 08F8, which can be used for \'e5\loch\f0 \hich\f0 ,
|
|
330 |
\'e4\loch\f0 \hich\f0 , and \'f6\loch\f0 . Of course, if there were more interpolated val\hich\af0\dbch\af31505\loch\f0 u\hich\af0\dbch\af31505\loch\f0 es, other primary keys would need to be reassigned.
|
|
331 |
\par
|
|
332 |
\par \hich\af0\dbch\af31505\loch\f0 This gives us the following strings file, which is called swedish_strings.txt:
|
|
333 |
\par
|
|
334 |
\par \hich\af0\dbch\af31505\loch\f0 0061 030A [.08F6.0020.0002.00E5] % a-ring after z
|
|
335 |
\par \hich\af0\dbch\af31505\loch\f0 0061 0308 [.08F7.0020.0002.00E4] % a-umlaut after a-ring
|
|
336 |
\par \hich\af0\dbch\af31505\loch\f0 006F 0308 [.08F8\hich\af0\dbch\af31505\loch\f0 .0020.0002.00F6] % o-umlaut after a-umlaut
|
|
337 |
\par \hich\af0\dbch\af31505\loch\f0 0041 030A [.08F6.0020.0008.00C5] % A-ring after Z
|
|
338 |
\par \hich\af0\dbch\af31505\loch\f0 0041 0308 [.08F7.0020.0008.00C4] % A-umlaut after A-ring
|
|
339 |
\par \hich\af0\dbch\af31505\loch\f0 004F 0308 [.08F8.0020.0008.00D6] % O-umlaut after A-umlaut
|
|
340 |
\par \hich\af0\dbch\af31505\loch\f0 0075 0308 [.08DD.0020.0002.00FC] % u-umlaut \hich\af0\dbch\af31505\loch\f0 equivalent to y
|
|
341 |
\par \hich\af0\dbch\af31505\loch\f0 0055 0308 [.08DD.0020.0008.00FC] % U-umlaut equivalent to Y
|
|
342 |
\par
|
|
343 |
\par \hich\af0\dbch\af31505\loch\f0 There is a third input file, the composite keys. We don\hich\f0 \rquote \loch\f0 t need to supply any tailorings for composite keys, so we use an empty file called swedish_compkeys.txt.
|
|
344 |
\par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb240\sa60\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs24\alang1025 \ltrch\fcs0 \fs24\lang2057\langfe2052\loch\af1\hich\af1\dbch\af31505\cgrid\langnp2057\langfenp2052 {
|
|
345 |
\rtlch\fcs1 \af1 \ltrch\fcs0 \insrsid11078925 \hich\af1\dbch\af31505\loch\f1 Run COLTAB and mak\hich\af1\dbch\af31505\loch\f1 e the locale-specific file of collation data
|
|
346 |
\par }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0 \fs20\lang2057\langfe2052\loch\af0\hich\af0\dbch\af31505\cgrid\langnp2057\langfenp2052 {\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
347 |
\insrsid11078925 \hich\af0\dbch\af31505\loch\f0 Using the files just described, run COLTAB:
|
|
348 |
\par
|
|
349 |
\par \hich\af0\dbch\af31505\loch\f0 coltab swedish
|
|
350 |
\par
|
|
351 |
\par \hich\af0\dbch\af31505\loch\f0 The output is a new file, ls_swedish.cpp:
|
|
352 |
\par }\pard \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid12653111 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid12653111 \hich\af0\dbch\af31505\loch\f0 /*
|
|
353 |
\par \hich\af0\dbch\af31505\loch\f0 * Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
|
|
354 |
\par \hich\af0\dbch\af31505\loch\f0 * All rights reserved.
|
|
355 |
\par \hich\af0\dbch\af31505\loch\f0 * This component and the accompanying materials are made available
|
|
356 |
\par \hich\af0\dbch\af31505\loch\f0 * under the terms of "Eclipse Public License v1.0"
|
|
357 |
\par \hich\af0\dbch\af31505\loch\f0 * which accompanies this distribution, and is available
|
|
358 |
\par \hich\af0\dbch\af31505\loch\f0 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
|
|
359 |
\par \hich\af0\dbch\af31505\loch\f0 *
|
|
360 |
\par \hich\af0\dbch\af31505\loch\f0 * Initial Contributors:
|
|
361 |
\par \hich\af0\dbch\af31505\loch\f0 * Nokia Corporation - initial contribution.
|
|
362 |
\par \hich\af0\dbch\af31505\loch\f0 *
|
|
363 |
\par \hich\af0\dbch\af31505\loch\f0 * Contributors:
|
|
364 |
\par \hich\af0\dbch\af31505\loch\f0 *
|
|
365 |
\par \hich\af0\dbch\af31505\loch\f0 * Description:
|
|
366 |
\par \hich\af0\dbch\af31505\loch\f0 *
|
|
367 |
\par \hich\af0\dbch\af31505\loch\f0 */
|
|
368 |
\par }\pard \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid11078925
|
|
369 |
\par \hich\af0\dbch\af31505\loch\f0 /*
|
|
370 |
\par \hich\af0\dbch\af31505\loch\f0 The LCharSet object used by the Swedish locale.
|
|
371 |
\par \hich\af0\dbch\af31505\loch\f0 Generated by COLTAB.
|
|
372 |
\par \hich\af0\dbch\af31505\loch\f0 */
|
|
373 |
\par
|
|
374 |
\par \hich\af0\dbch\af31505\loch\f0 #include "ls_std.h"
|
|
375 |
\par \hich\af0\dbch\af31505\loch\f0 #include <collate.h>
|
|
376 |
\par \hich\af0\dbch\af31505\loch\f0 const TUint\hich\af0\dbch\af31505\loch\f0 KUidSwedishCollationMethod = /* FILL THIS IN */;
|
|
377 |
\par
|
|
378 |
\par \hich\af0\dbch\af31505\loch\f0 static const TUint32 TheSwedishKey[] =
|
|
379 |
\par \tab \{
|
|
380 |
\par \tab \hich\af0\dbch\af31505\loch\f0 0x8f60109,0x8f70109,0x8f80109,0x8f60121,0x8f70121,0x8f80121,0x8dd0109,0x8dd0121,
|
|
381 |
\par \tab \hich\af0\dbch\af31505\loch\f0 0x8c50121,0x8c50109,
|
|
382 |
\par \tab \}\hich\af0\dbch\af31505\loch\f0 ;
|
|
383 |
\par
|
|
384 |
\par \hich\af0\dbch\af31505\loch\f0 static const TUint32 TheSwedishIndex[] =
|
|
385 |
\par \tab \{
|
|
386 |
\par \tab \hich\af0\dbch\af31505\loch\f0 0x570008,0x770009,
|
|
387 |
\par \tab \}\hich\af0\dbch\af31505\loch\f0 ;
|
|
388 |
\par
|
|
389 |
\par \hich\af0\dbch\af31505\loch\f0 static const TUint16 TheSwedishStringElement[] =
|
|
390 |
\par \tab \{
|
|
391 |
\par \tab \hich\af0\dbch\af31505\loch\f0 0x2,0x61,0x30a,0x2,0x61,0x308,0x2,0x6f,
|
|
392 |
\par \tab \hich\af0\dbch\af31505\loch\f0 0x308,0x2,0x41,0x30a,0x2,0x41,0x308,0x2,
|
|
393 |
\par \tab \hich\af0\dbch\af31505\loch\f0 0x4f,0x308,0x2,0x75,0x308,0x2,0x55,0x308,
|
|
394 |
\par \tab \}\hich\af0\dbch\af31505\loch\f0 ;
|
|
395 |
\par
|
|
396 |
\par \hich\af0\dbch\af31505\loch\f0 static const TUint32 TheSwedishStringIndex[] =
|
|
397 |
\par \tab \{
|
|
398 |
\par \tab \hich\af0\dbch\af31505\loch\f0 0xc0004,0x90003,0xf0005,0x150007,0x30001,0x0,0x60002,0x120006,
|
|
399 |
\par \tab \}\hich\af0\dbch\af31505\loch\f0 ;
|
|
400 |
\par
|
|
401 |
\par \hich\af0\dbch\af31505\loch\f0 static const TCollationKeyTable TheSwedishTable =
|
|
402 |
\par \tab \{\hich\af0\dbch\af31505\loch\f0 TheSwedishKey, TheSwedishIndex, 2, TheSwedishStringElement, TheSwedishStringIndex, 8 \};
|
|
403 |
\par
|
|
404 |
\par \hich\af0\dbch\af31505\loch\f0 static const TCollationMethod TheCollatio\hich\af0\dbch\af31505\loch\f0 nMethod[] =
|
|
405 |
\par \tab \{
|
|
406 |
\par \tab \tab \{
|
|
407 |
\par \tab \tab \hich\af0\dbch\af31505\loch\f0 KUidSwedishCollationMethod, // the method for the locale
|
|
408 |
\par \tab \tab \hich\af0\dbch\af31505\loch\f0 NULL, // use the standard table as the main table
|
|
409 |
\par \tab \tab \hich\af0\dbch\af31505\loch\f0 &TheSwedishTable, // the locale values override the standard values
|
|
410 |
\par \tab \tab \hich\af0\dbch\af31505\loch\f0 0 // the flags are standard
|
|
411 |
\par \tab \tab \},
|
|
412 |
\par \tab \tab \{
|
|
413 |
\par \tab \tab \hich\af0\dbch\af31505\loch\f0 KUidBasicCollationMethod, // the standard unlocalised method
|
|
414 |
\par \tab \tab \hich\af0\dbch\af31505\loch\f0 NULL, // null means use the standard table
|
|
415 |
\par \tab \tab \hich\af0\dbch\af31505\loch\f0 NULL, // there's no override table
|
|
416 |
\par \tab \tab \hich\af0\dbch\af31505\loch\f0 0 // the flags are standard
|
|
417 |
\par \tab \tab \}
|
|
418 |
\par \tab \}\hich\af0\dbch\af31505\loch\f0 ;
|
|
419 |
\par
|
|
420 |
\par \hich\af0\dbch\af31505\loch\f0 static const TCollationDataSet TheCollationDataSet =
|
|
421 |
\par \tab \{
|
|
422 |
\par \tab \hich\af0\dbch\af31505\loch\f0 TheCollationMetho\hich\af0\dbch\af31505\loch\f0 d,
|
|
423 |
\par \tab \hich\af0\dbch\af31505\loch\f0 2
|
|
424 |
\par \tab \}\hich\af0\dbch\af31505\loch\f0 ;
|
|
425 |
\par
|
|
426 |
\par \hich\af0\dbch\af31505\loch\f0 // The one and only locale character set object.
|
|
427 |
\par \hich\af0\dbch\af31505\loch\f0 const LCharSet TheCharSet =
|
|
428 |
\par \tab \{
|
|
429 |
\par \tab \hich\af0\dbch\af31505\loch\f0 NULL,
|
|
430 |
\par \tab \hich\af0\dbch\af31505\loch\f0 &TheCollationDataSet
|
|
431 |
\par \tab \}\hich\af0\dbch\af31505\loch\f0 ;
|
|
432 |
\par }{\*\themedata 504b030414000600080000002100828abc13fa0000001c020000130000005b436f6e74656e745f54797065735d2e786d6cac91cb6ac3301045f785fe83d0b6d8
|
|
433 |
72ba28a5d8cea249777d2cd20f18e4b12d6a8f843409c9df77ecb850ba082d74231062ce997b55ae8fe3a00e1893f354e9555e6885647de3a8abf4fbee29bbd7
|
|
434 |
2a3150038327acf409935ed7d757e5ee14302999a654e99e393c18936c8f23a4dc072479697d1c81e51a3b13c07e4087e6b628ee8cf5c4489cf1c4d075f92a0b
|
|
435 |
44d7a07a83c82f308ac7b0a0f0fbf90c2480980b58abc733615aa2d210c2e02cb04430076a7ee833dfb6ce62e3ed7e14693e8317d8cd0433bf5c60f53fea2fe7
|
|
436 |
065bd80facb647e9e25c7fc421fd2ddb526b2e9373fed4bb902e182e97b7b461e6bfad3f010000ffff0300504b030414000600080000002100a5d6a7e7c00000
|
|
437 |
00360100000b0000005f72656c732f2e72656c73848fcf6ac3300c87ef85bd83d17d51d2c31825762fa590432fa37d00e1287f68221bdb1bebdb4fc7060abb08
|
|
438 |
84a4eff7a93dfeae8bf9e194e720169aaa06c3e2433fcb68e1763dbf7f82c985a4a725085b787086a37bdbb55fbc50d1a33ccd311ba548b63095120f88d94fbc
|
|
439 |
52ae4264d1c910d24a45db3462247fa791715fd71f989e19e0364cd3f51652d73760ae8fa8c9ffb3c330cc9e4fc17faf2ce545046e37944c69e462a1a82fe353
|
|
440 |
bd90a865aad41ed0b5b8f9d6fd010000ffff0300504b0304140006000800000021006b799616830000008a0000001c0000007468656d652f7468656d652f7468
|
|
441 |
656d654d616e616765722e786d6c0ccc4d0ac3201040e17da17790d93763bb284562b2cbaebbf600439c1a41c7a0d29fdbd7e5e38337cedf14d59b4b0d592c9c
|
|
442 |
070d8a65cd2e88b7f07c2ca71ba8da481cc52c6ce1c715e6e97818c9b48d13df49c873517d23d59085adb5dd20d6b52bd521ef2cdd5eb9246a3d8b4757e8d3f7
|
|
443 |
29e245eb2b260a0238fd010000ffff0300504b03041400060008000000210096b5ade296060000501b0000160000007468656d652f7468656d652f7468656d65
|
|
444 |
312e786d6cec594f6fdb3614bf0fd87720746f6327761a07758ad8b19b2d4d1bc46e871e698996d850a240d2497d1bdae38001c3ba618715d86d87615b8116d8
|
|
445 |
a5fb34d93a6c1dd0afb0475292c5585e9236d88aad3e2412f9e3fbff1e1fa9abd7eec70c1d1221294fda5efd72cd4324f1794093b0eddd1ef62fad79482a9c04
|
|
446 |
98f184b4bd2991deb58df7dfbb8ad755446282607d22d771db8b944ad79796a40fc3585ee62949606ecc458c15bc8a702910f808e8c66c69b9565b5d8a314d3c
|
|
447 |
94e018c8de1a8fa94fd05093f43672e23d06af89927ac06762a049136785c10607758d9053d965021d62d6f6804fc08f86e4bef210c352c144dbab999fb7b471
|
|
448 |
7509af678b985ab0b6b4ae6f7ed9ba6c4170b06c788a705430adf71bad2b5b057d03606a1ed7ebf5babd7a41cf00b0ef83a6569632cd467faddec9699640f671
|
|
449 |
9e76b7d6ac355c7c89feca9cccad4ea7d36c65b258a206641f1b73f8b5da6a6373d9c11b90c537e7f08dce66b7bbeae00dc8e257e7f0fd2badd5868b37a088d1
|
|
450 |
e4600ead1ddaef67d40bc898b3ed4af81ac0d76a197c86826828a24bb318f3442d8ab518dfe3a20f000d6458d104a9694ac6d88728eee2782428d60cf03ac1a5
|
|
451 |
193be4cbb921cd0b495fd054b5bd0f530c1931a3f7eaf9f7af9e3f45c70f9e1d3ff8e9f8e1c3e3073f5a42ceaa6d9c84e5552fbffdeccfc71fa33f9e7ef3f2d1
|
|
452 |
17d57859c6fffac327bffcfc793510d26726ce8b2f9ffcf6ecc98baf3efdfdbb4715f04d814765f890c644a29be408edf3181433567125272371be15c308d3f2
|
|
453 |
8acd249438c19a4b05fd9e8a1cf4cd296699771c393ac4b5e01d01e5a30a787d72cf1178108989a2159c77a2d801ee72ce3a5c545a6147f32a99793849c26ae6
|
|
454 |
6252c6ed637c58c5bb8b13c7bfbd490a75330f4b47f16e441c31f7184e140e494214d273fc80900aedee52ead87597fa824b3e56e82e451d4c2b4d32a423279a
|
|
455 |
668bb6690c7e9956e90cfe766cb37b077538abd27a8b1cba48c80acc2a841f12e698f13a9e281c57911ce298950d7e03aba84ac8c154f8655c4f2af074481847
|
|
456 |
bd804859b5e696007d4b4edfc150b12addbecba6b18b148a1e54d1bc81392f23b7f84137c2715a851dd0242a633f900710a218ed715505dfe56e86e877f0034e
|
|
457 |
16bafb0e258ebb4faf06b769e888340b103d3311da9750aa9d0a1cd3e4efca31a3508f6d0c5c5c398602f8e2ebc71591f5b616e24dd893aa3261fb44f95d843b
|
|
458 |
5974bb5c04f4edafb95b7892ec1108f3f98de75dc97d5772bdff7cc95d94cf672db4b3da0a6557f70db629362d72bcb0431e53c6066acac80d699a6409fb44d0
|
|
459 |
8741bdce9c0e4971624a2378cceaba830b05366b90e0ea23aaa241845368b0eb9e2612ca8c742851ca251ceccc70256d8d87265dd96361531f186c3d9058edf2
|
|
460 |
c00eafe8e1fc5c509031bb4d680e9f39a3154de0accc56ae644441edd76156d7429d995bdd88664a9dc3ad50197c38af1a0c16d684060441db02565e85f3b966
|
|
461 |
0d0713cc48a0ed6ef7dedc2dc60b17e92219e180643ed27acffba86e9c94c78ab90980d8a9f0913ee49d62b512b79626fb06dccee2a432bbc60276b9f7dec44b
|
|
462 |
7904cfbca4f3f6443ab2a49c9c2c41476dafd55c6e7ac8c769db1bc399161ee314bc2e75cf8759081743be1236ec4f4d6693e5336fb672c5dc24a8c33585b5fb
|
|
463 |
9cc24e1d4885545b58463634cc5416022cd19cacfccb4d30eb45296023fd35a458598360f8d7a4003bbaae25e331f155d9d9a5116d3bfb9a95523e51440ca2e0
|
|
464 |
088dd844ec6370bf0e55d027a012ae264c45d02f708fa6ad6da6dce29c255df9f6cae0ec38666984b372ab5334cf640b37795cc860de4ae2816e95b21be5ceaf
|
|
465 |
8a49f90b52a51cc6ff3355f47e0237052b81f6800fd7b802239daf6d8f0b1571a8426944fdbe80c6c1d40e8816b88b8569082ab84c36ff0539d4ff6dce591a26
|
|
466 |
ade1c0a7f669880485fd484582903d284b26fa4e2156cff62e4b9265844c4495c495a9157b440e091bea1ab8aaf7760f4510eaa69a6465c0e04ec69ffb9e65d0
|
|
467 |
28d44d4e39df9c1a52ecbd3607fee9cec7263328e5d661d3d0e4f62f44acd855ed7ab33cdf7bcb8ae889599bd5c8b3029895b6825696f6af29c239b75a5bb1e6
|
|
468 |
345e6ee6c28117e73586c1a2214ae1be07e93fb0ff51e133fb65426fa843be0fb515c187064d0cc206a2fa926d3c902e907670048d931db4c1a44959d366ad93
|
|
469 |
b65abe595f70a75bf03d616c2dd959fc7d4e6317cd99cbcec9c58b34766661c7d6766ca1a9c1b327531486c6f941c638c67cd22a7f75e2a37be0e82db8df9f30
|
|
470 |
254d30c1372581a1f51c983c80e4b71ccdd28dbf000000ffff0300504b0304140006000800000021000dd1909fb60000001b010000270000007468656d652f74
|
|
471 |
68656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73848f4d0ac2301484f78277086f6fd3ba109126dd88d0add40384e4350d363f24
|
|
472 |
51eced0dae2c082e8761be9969bb979dc9136332de3168aa1a083ae995719ac16db8ec8e4052164e89d93b64b060828e6f37ed1567914b284d262452282e3198
|
|
473 |
720e274a939cd08a54f980ae38a38f56e422a3a641c8bbd048f7757da0f19b017cc524bd62107bd5001996509affb3fd381a89672f1f165dfe514173d9850528
|
|
474 |
a2c6cce0239baa4c04ca5bbabac4df000000ffff0300504b01022d0014000600080000002100828abc13fa0000001c0200001300000000000000000000000000
|
|
475 |
000000005b436f6e74656e745f54797065735d2e786d6c504b01022d0014000600080000002100a5d6a7e7c0000000360100000b000000000000000000000000
|
|
476 |
002b0100005f72656c732f2e72656c73504b01022d00140006000800000021006b799616830000008a0000001c00000000000000000000000000140200007468
|
|
477 |
656d652f7468656d652f7468656d654d616e616765722e786d6c504b01022d001400060008000000210096b5ade296060000501b000016000000000000000000
|
|
478 |
00000000d10200007468656d652f7468656d652f7468656d65312e786d6c504b01022d00140006000800000021000dd1909fb60000001b010000270000000000
|
|
479 |
00000000000000009b0900007468656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73504b050600000000050005005d010000960a00000000}
|
|
480 |
{\*\colorschememapping 3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d22796573223f3e0d0a3c613a636c724d
|
|
481 |
617020786d6c6e733a613d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f64726177696e676d6c2f323030362f6d6169
|
|
482 |
6e22206267313d226c743122207478313d22646b3122206267323d226c743222207478323d22646b322220616363656e74313d22616363656e74312220616363
|
|
483 |
656e74323d22616363656e74322220616363656e74333d22616363656e74332220616363656e74343d22616363656e74342220616363656e74353d22616363656e74352220616363656e74363d22616363656e74362220686c696e6b3d22686c696e6b2220666f6c486c696e6b3d22666f6c486c696e6b222f3e}
|
|
484 |
{\*\latentstyles\lsdstimax267\lsdlockeddef0\lsdsemihiddendef1\lsdunhideuseddef1\lsdqformatdef0\lsdprioritydef99{\lsdlockedexcept \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority0 \lsdlocked0 Normal;
|
|
485 |
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdlocked0 heading 1;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdlocked0 heading 2;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdlocked0 heading 3;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 4;
|
|
486 |
\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 5;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 6;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 7;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 8;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 9;
|
|
487 |
\lsdpriority39 \lsdlocked0 toc 1;\lsdpriority39 \lsdlocked0 toc 2;\lsdpriority39 \lsdlocked0 toc 3;\lsdpriority39 \lsdlocked0 toc 4;\lsdpriority39 \lsdlocked0 toc 5;\lsdpriority39 \lsdlocked0 toc 6;\lsdpriority39 \lsdlocked0 toc 7;
|
|
488 |
\lsdpriority39 \lsdlocked0 toc 8;\lsdpriority39 \lsdlocked0 toc 9;\lsdqformat1 \lsdpriority35 \lsdlocked0 caption;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority10 \lsdlocked0 Title;\lsdunhideused0 \lsdlocked0 Default Paragraph Font;
|
|
489 |
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority11 \lsdlocked0 Subtitle;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority22 \lsdlocked0 Strong;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority20 \lsdlocked0 Emphasis;
|
|
490 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority59 \lsdlocked0 Table Grid;\lsdunhideused0 \lsdlocked0 Placeholder Text;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority1 \lsdlocked0 No Spacing;
|
|
491 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid;
|
|
492 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1;
|
|
493 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2;
|
|
494 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading;
|
|
495 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 1;
|
|
496 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 1;
|
|
497 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 1;\lsdunhideused0 \lsdlocked0 Revision;
|
|
498 |
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority34 \lsdlocked0 List Paragraph;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority29 \lsdlocked0 Quote;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority30 \lsdlocked0 Intense Quote;
|
|
499 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 1;
|
|
500 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 1;
|
|
501 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 2;
|
|
502 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 2;
|
|
503 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 2;
|
|
504 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 2;
|
|
505 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 2;
|
|
506 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 3;
|
|
507 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 3;
|
|
508 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 3;
|
|
509 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 3;
|
|
510 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 3;
|
|
511 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 4;
|
|
512 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 4;
|
|
513 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 4;
|
|
514 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 4;
|
|
515 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 5;
|
|
516 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 5;
|
|
517 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 5;
|
|
518 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 5;
|
|
519 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 5;
|
|
520 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 6;
|
|
521 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 6;
|
|
522 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 6;
|
|
523 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 6;
|
|
524 |
\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 6;
|
|
525 |
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority19 \lsdlocked0 Subtle Emphasis;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority21 \lsdlocked0 Intense Emphasis;
|
|
526 |
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority31 \lsdlocked0 Subtle Reference;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority32 \lsdlocked0 Intense Reference;
|
|
527 |
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority33 \lsdlocked0 Book Title;\lsdpriority37 \lsdlocked0 Bibliography;\lsdqformat1 \lsdpriority39 \lsdlocked0 TOC Heading;}}{\*\datastore 010500000200000018000000
|
|
528 |
4d73786d6c322e534158584d4c5265616465722e352e3000000000000000000000060000
|
|
529 |
d0cf11e0a1b11ae1000000000000000000000000000000003e000300feff090006000000000000000000000001000000010000000000000000100000feffffff00000000feffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
530 |
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
531 |
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
532 |
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
533 |
fffffffffffffffffdfffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
534 |
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
535 |
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
536 |
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
537 |
ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffffffffffffec69d9888b8b3d4c859eaf6cd158be0f000000000000000000000000e069
|
|
538 |
840924c4ca01feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000
|
|
539 |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000
|
|
540 |
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000
|
|
541 |
0000000000000000000000000000000000000000000000000105000000000000}} |