|
|
һʱ䣬ԭansidelphiĺƴutf8lazarus ʵˡ۰
ͷ Щְԭġ
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
StdCtrls, ComCtrls,windows;
type
{ TForm1 }
TUTF8String=class
private
Fvalue:string;
Fcharscount:integer;
FisErrorUTF8String:boolean;
procedure SetValue(s:string);
Function GetUTF8Char(Index: Integer): string;
public
constructor Create;
property value:string read fvalue write SetValue;
property UTF8CharsCount:integer read Fcharscount;
property UTF8Chars[index:integer]:string read GetUTF8Char;
property isErrorUTF8String:boolean read FisErrorUTF8String;
end;
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
ComboBox1: TComboBox;
ComboBox2: TComboBox;
ComboBox3: TComboBox;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Label1: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Memo1: TMemo;
Memo2: TMemo;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure ComboBox3Change(Sender: TObject);
procedure FormClose(Sender: TObject; var CloseAction: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure Label9Click(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
pinyintable:TStrings;
function getPINYINCode(const input:string):string;
function getBitStrofChar(c:byte):string;
function getBitStrofString(s:string):string;
end;
var
Form1: TForm1;
implementation
{ TForm1 }
constructor TUTF8String.Create;
begin
Fvalue:='';
FCharsCount:=0;
FisErrorUTF8String:=false;
end;
function TUTF8String.GetUTF8Char(index:integer):string;
var
c:char;pc:pchar;b:byte;i,L,counter,cL,sp:integer;
begin
L:=length(FValue);
result:=''; sp:=0;
pc:=Pchar(Fvalue); counter:=0;
for i:=0 to L-1 do
begin
c:=PC^; b:=byte(c);
if (b and $FC)=$FC then CL:=6
else if (b and $F8)=$F8 then CL:=5
else if (b and $F0)=$F0 then CL:=4
else if (b and $E0)=$E0 then CL:=3
else if (b and $C0)=$C0 then CL:=2
else if (b and $80)<>$80 then CL:=1
else CL:=0; //UTF8ַͷֽ,
if CL<>0 then begin
inc(counter);
if counter-1=index then
begin
result:=copy(Fvalue,sp+1,CL); //copy1ʼλá
exit;
end;
PC:=PC+CL;
sp:=sp+CL;
end else begin PC:=PC+1; inc(sp); end;
if sp>=L then break;
end;
end;
procedure TUTF8String.SetValue(s:string);
var
c:char;pc:pchar;b:byte;i,L,counter,cL,sp:integer;
begin
if Fvalue<>s then
begin
Fvalue:=s;
sp:=0;//ָӦַ
FisErrorUTF8String:=false;
L:=length(FValue);
pc:=Pchar(Fvalue); counter:=0;
for i:=0 to L-1 do
begin
c:=PC^; b:=byte(c);
if (b and $FC)=$FC then CL:=6 //CLΪݿͷֽжϳUTF8ַ
else if (b and $F8)=$F8 then CL:=5
else if (b and $F0)=$F0 then CL:=4
else if (b and $E0)=$E0 then CL:=3
else if (b and $C0)=$C0 then CL:=2
else if (b and $80)<>$80 then CL:=1
else begin CL:=0;FisErrorUTF8String:=true end; //UTF8ַͷֽ,
if CL<>0 then
begin
inc(counter);
PC:=PC+CL;
sp:=sp+CL;
end else begin PC:=PC+1; inc(sp); end;
if sp>L then //ָ볬
begin
FisErrorUTF8String:=true;
break;
end else if sp=L then break; //ָպָβ
end;
self.Fcharscount:=counter;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
utf8s:TUTF8String; i,j,cc:integer; tc,pinyincode:string;
begin
utf8s:=TUTF8String.Create;
utf8s.value:=edit1.Text;
cc:=utf8s.UTF8CharsCount;
edit7.Text:=inttostr(cc);
if utf8s.isErrorUTF8String then showmessage('Error UTF8 String!');
//ȡƴ롣
for i:=0 to cc-1 do
begin
tc:=utf8s.UTF8Chars;
if length(tc)=1 then
begin //ASCIIֱַӷ
pinyincode:=pinyincode+tc;
continue;
end;
//ѯֱ
for j:=0 to pinyintable.Count-1 do
begin
if pos(tc,pinyintable[j])>0 then
begin
pinyincode:=pinyincode+copy(pinyintable[j],0,1);
break;
end;
end;
end;
edit2.Text:=pinyincode;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
c:char;
s:string;
begin
s:=copy(pinyintable[0],combobox1.ItemIndex,combobox2.ItemIndex+1);
edit3.Text:=s;
edit5.Text:=inttostr(length(edit3.text));
edit6.Text:=inttostr(length(s));
memo2.Text:=self.getBitStrofString(s);
end;
procedure TForm1.ComboBox3Change(Sender: TObject);
var
utf8s:TUTF8String; r:string;
begin
utf8s:=TUTF8String.Create;
utf8s.value:=edit1.Text;
r:=utf8s.UTF8Chars[combobox3.ItemIndex];
showmessage(r);
end;
procedure TForm1.FormClose(Sender: TObject; var CloseAction: TCloseAction);
begin
end;
function TForm1.getBitStrofChar(c:byte):string;
var
i:integer; tc:byte;
begin
result:='';tc:=c;
for i:=1 to 8 do
begin
if i=5 then result:='-'+result ;
if ( tc and $1 )<>0 then result:='1'+result else result:='0'+result ;
tc:=tc shr 1;
end;
end;
function TForm1.getBitStrofString(s:string):string;
var
i,L:integer;
pc char;c:char; b:byte;
begin
result:='';
L:=length(s);
PC:=pchar(S);
for i:=0 to L-1 do
begin
c:=PC^;
b:=byte(c);
result:=result+self.getBitStrofChar(b)+'; ';
PC:=PC+1;
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
pinyintable:=TStringList.Create;
pinyintable.Append('AąX߰܇B}lȰt@c\vɉaȐ۰訃vܑBa}LPo^sWɎY씰QKcV폆눈');
pinyintable.Append('A@O@ItFB찺nlꈁEnJໆڝE᪇۰HTK֒OqbO\ᮒUCSRWSİÓ֓');
pinyintable.Append('BˁͰȰǖ[XɊBᱰŰ̆^ưμjM^iz؞߰j_yRɰѰаӏyֈE҆Fԉ屙װٰ۰ؖqڔ[o݆ܰhbٔĮB');
pinyintable.Append('B߰ΆnL歚ӻ{kZ犔EtO[kLʰߙRDgYMŐr߰}_');
pinyintable.Append('BA𱫒~ጇhRdم˝dǘsb̙ޱt`鱰GdˍlձmؐKpp㣪N˗fDfF');
pinyintable.Append('BKնF͓Rc݅^vLͱyڂ`GQMΗВٗLݙȱaԾXEe잱ñʼnlGaȱPSsݩNjذȉaaH˖');
pinyintable.Append('B±ʻPұرϱՁ؈fםߛPnٱѫRݱЋر֗a][]㏌㹜zvCPbɜ͚sűןΪaEƝ');
pinyintable.Append('BXKԏY`ovI娱ۋ`{Vg@S{KLxFEzֱԮK߄Q߅bceױҐܷHۼDux\MኍOc');
pinyintable.Append('BҌO±gŌlp׃ԪYàw˟ϱ쮃[dgAٙSjklnsՕFl~lBM̋earXhTߓϱñĬe');
pinyintable.Append('BfكIM̞ٞlE_ϙ\PĜxWޒ䉙vTmumsV]KՈvⲡp}@mhhCB');
pinyintable.Append('Bࣼ\`G@QòN`R¶zಬȕKAkŇCgcDNŵR~noPݙq}˹X\LYNm');
pinyintable.Append('BcJK߲aGQѲhiЄψ곏EɞY^X');
pinyintable.Append('Cgn²ŲIJؔòɂƊuʒPZȲ˗̿nk{۲вϲњM]LQTґKkoӃLN負|ցײԂ}ՂȜ檁nPœ@ؙىٲ');
pinyintable.Append('CڕЍɘG[ܳHݐxH_RYŜymZɃx~ᯗqӸ}䳀KeuOPaӐől˲荿x鶲');
pinyintable.Append('Cdg汲pO٭}Ѓϊ{{i濲ȟSaܝCveʎfpsKBiCP}Ʈab');
pinyintable.Append('CۄݝIr~鈺oApPUϞ׀㳃ϲ]潜CѕǬdm_KɳDO^cLϬq䖃^Ll㮳YS`˳');
pinyintable.Append('Cko̳n˳z}RJVC|le܇qp͒ފEsJسuӳՀoƐ巟GkH');
pinyintable.Append('CZcmIRlmڒ}~{ٕįM鴷QYZrpߠՂbWrlγſBXdfV|dpةɳʳdzJnjkw^A');
pinyintable.Append('CÔ̹͗fS˳\䅝γșrjrѳҎGӳԊwoꏫEWʓղl|AVc~J[ڳس۳ٍIݳָKFMPWYܯs߅');
pinyintable.Append('CLޅq݈nuNInlrX߳óxȐp뷟UbജѯvSM놑y@oJB둴چu_ҫonZی獃꙳|Nߠ');
pinyintable.Append('Cٱ㰳Ǔ[{OlbŮPׇEGh{c،iۻZaZaenˏNXÎЙ{RXƴƴҝ郦sl');
pinyintable.Append('CAsءIa}XeGI`sUz[ߚbĕ|uݴ밴״NݎFb[AiVѴRl}Jky');
pinyintable.Append('Cﴷǔ鳴NqI~N@atꙚjꁴݻËƜOȝ_coòQكwִuƐOQbzfpqګueʫy');
pinyintable.Append('CĴ~eȮNǴŴi@ByQo\]ˁհrc̄pƘDŽayΈnӴ҇ʏƉStН^[ڭBϲjbZSW^ԏQFpz');
pinyintable.Append('C{qߠց՜ݏc⧋{|KuׯؿqyAߥڔxf艔emܟۚxZ߃NJty議Qy㲴륟n');
pinyintable.Append('CċăWPěߗ坴Yvuiq̑ύczvzȉsuHxSɲҳ');
pinyintable.Append('DԌb֝bBkhdL_nκ@TqǮׇ}eQAδzQR[JσJNo\ya᷎߰ʴ܍ܤ');
pinyintable.Append('DHDxοD\lŕ캉Oy^lNnl[SэFل隗R[my㼍d^đXDࢆ̵E͞gQn');
pinyintable.Append('D壶V}XQٜKɹY}ǭcdř}ԓ[וʈWЮG담X^ځnTUD߶sҵꉵuvI옘ZWF\');
pinyintable.Append('DKͱIRm|pR܄zÛgNԵuēgOYƵO⋿O~ŘRŵꭵ˵Qص뙞狁͏ДꝵhֵᴔLCfJmφvе');
pinyintable.Append('Dݶb{HLEˋpeMص}ڮۡs~ƒǜBWصܕAmZKdۈ淵ޞ\bDžKكCEVdVOdSREǔم');
pinyintable.Append('DᘕۆopdHLϵ_sڵU͟늉|յ崐a@PqhfMymŏtӎ');
pinyintable.Append('DyuH덯LSB|Ug]yWܦ鮒xePHсŎABۇö궣k۶w픶Y疶Gӆ}bֶO');
pinyintable.Append('DVrGMAᴖ|{k뱂ĊLJX[CHٶʐՉ튟ἶޓӍϗLP뚄rtXŏch^KW');
pinyintable.Append('DYuÖHkZLL]^`aྲྀ`빶ti}LEX^٭{yxKG~obtטƶoĶGـVܶʶŶNJT|ΖC');
pinyintable.Append('DeH̶ζωFȘѬaV;呔Yfщ[ůyX玶ӶԶҌqԽAc摻}BmضՉݓ檖ǠHOޚ۶ٶgD]q');
pinyintable.Append('DvͶ߄և섋ޔk⇊ZAyI\⒖綗roEDmwFGzؼ');
pinyintable.Append('EjވkݭӞxeﰶdMP~Z[FSFExiqٳX@эSbLvrܗՈ㵜`Q]ciYʂ');
pinyintable.Append('E{OIجAF@_dt׆y|{CWEszXHsL[XbWǶꚾDn߃ڍpr٦n@^EԠ');
pinyintable.Append('FTvDCSp^H\}ГܖUxokleүV뷤XPyUtᷨzm鷬hᦑNcxYFGKiotw');
pinyintable.Append('FBCuެܭ[XT잒\xϛBxﷸiӌFDGJ˹ў~ʠ՜EK[ph·÷ĕPXf뼏');
pinyintable.Append('FLJŷwȊd糷Uqqp[IWaEyǕNn˷̊O쳗ʄuͷϖ{Εhтn|XQMЏUʆհCO]ַԎҕSոj');
pinyintable.Append('Fӟmp냖Bi؊}ږRri_`kBVʈXJkrMMOR۲bv݈ekܷlǷ߷f^ďSa灧KN~hO`Lo傪');
pinyintable.Append('FQSthȷ䯂^tAhlSQۺbpK뒸łp҃SgٺuRLPiوX҅u]ߑcNQCuX');
pinyintable.Append('FKa[JAFʁTi_ڷܽ]@ƅޫstwۮIb}ݳJMAE̒nJȃ');
pinyintable.Append('FŀݷRVOD_J}hᥝqD~ݗHvf}ԸYMᜒѸӟrG港o븸}c⸴yӇؓbЕ帱Dkci|');
pinyintable.Append('F҄cڸֶOч羔ʍlx`ݕVَvg');
pinyintable.Append('GqrW٤Qٸ¸mثVpYD|ԓdW^ĽiYؤ_qƸǸȑ}ꮸw[yɸQ|˫\ո̸xQϹmlvrϸҹC');
pinyintable.Append('Gsߦh꺱Y礂ƽCl_֙gӞոڸٸ،IքՒGVs۸ܟ߰w{غRݸpzkǐª');
pinyintable.Append('Gc̸ھ۬zﯹlJa䆸˸鏐xmwRg抅ρتZܪk롘wkYsuPRZѸw');
pinyintable.Append('Gبݢ^jjuʸ@ԟcfKsQ칡y箹ci톯ֆrkŹm@bpCby\얹ؕE');
pinyintable.Append('G˃ŹНhѐxḹ۫vTVUxxڸƙڹ_찓kgMُù¹}fgBuLM챹HOYݞ');
pinyintable.Append('GڬȹɍglE܂Ùv병b𠘀ŘbYM[JkkW̹ʃˈ؍흃ldAϹƂONTmօɹЄԈqڴ');
pinyintable.Append('GGLԟԹՖʹysع۹ٹҋĹFAHQ^bݯp`݄o]^IAᛌʐTk暹ࠃeٹ}➻Ӟ՞ۈƚD׃Z_U');
pinyintable.Append('GUѹ棹ߞƗ뎢wO˹F|ًYnh峹сй{܉뵃QМ͊mԎj۔ιKF}ZʘWli');
pinyintable.Append('GЖɀLF݁POe֏uH偏⎽IXbǑx[RJݸ');
pinyintable.Append('HgWhmsD́@w唐UNoV怕璚yԍXⒿS]Hoq^WiNs@{^R˺ܟQhVaˁcE');
pinyintable.Append('HHATHiΛϗcʺ]bKwn{ȺGJ_I\~۪RtHF\y͔LIdΑhuAn[f㺼');
pinyintable.Append('HaؘVW@hƪ|s_غ婻Dϖqúº껕aShƺĕB|̖AڭǺXϚ̺Ϻ͊ӍPAt҆Y');
pinyintable.Append('H˱BɆԜzжMZԆFuiKH[҇Yވ،yZREֺպGְFeQLefSg\ںٝϒ앁ܺԋߐÆa');
pinyintable.Append('HtaMCUցYbܟpްݓZkƺKYȌfayfݦļo{A|sȇȈvbD~pCfޮZ{');
pinyintable.Append('HڧӏНU@펫ȉTFAf\Cᛕ˺jܩ_`cI~U~~O㱜X̏ܠ댇FiX_@W؋|⩽`');
pinyintable.Append('HPSιkeΙgLbE{CK[R䰻L̕}tUuꎏZO˻𭽜dUno_sI_Nɳ');
pinyintable.Append('HAjkfWLΔfOîԒ勽ՖՠXEsёבќљjx|Zbȑⵚg؎גO`BPȈ~bfv}');
pinyintable.Append('Ha٭hoDq]QSX߱kۼKJ»佻hՆѓQo~ߧȲoːZdxYEŻʂSƆňhȏؘRͬꪍB');
pinyintable.Append('HŊǷkWcڇubmUUОrΕsNѻϐԅmeƜnͰwҞڶԻ֒ӛ͟FY^]DqԜNjvExĞ`؇ݏhjo');
pinyintable.Append('HޒCD`z͠tΚmSe܌x䫻U{ݽ}_RٜԐVaG]dHۑ}ޥڙB_CDM_buZ_˙dβ~xD');
pinyintable.Append('HLPMTuweԐǗEJ钏Ɯ꿌@ڻ[ko՟x߫dߘⷛ[in؛؊_C@fm');
pinyintable.Append('HhɕG\Z');
pinyintable.Append('Jnpkuҗȁezr̎Ցυ]Ɩv\WESQQZotJآWߴZἡܸҼ|UކK_ょ\Ę');
pinyintable.Append('Jܻ}uԑC^eZYsيfuI^^QZaVa~W҈iWbA҉ؽ٥BuEużVf
hÐCO꜖Ja');
pinyintable.Append('Jlcl㚎NmުnWvΎQۈŝUgPWn|}Mj䛋ؔDmƼǼ͈j˼ɼaʼ∅c䩼üoƈӋӛʼż');
pinyintable.Append('J¼mUȗίs@_EHߝPTIIbHݕՂ꼽̷]EHٙoYJJ۔HT^հU_R^nDzVCqKӼВzћvȼϚk_ªo');
pinyintable.Append('Jʠ`eؼOj؆]SۣPv̼͐Oe]aGwΔϼּ؋TЗZ⛘\xۼݼܼټގk{ꧼԼ芦Ԑ\Gՠ');
pinyintable.Append('JȂȅg{R{ٟҾ}zʗϟ]VDKJhMVpW[̂dż낛ȼ윗ʜpd﵏ُzuMO');
pinyintable.Append('JOֈCrxϕ{v}|kɽV{립[`ԘcGՐv{`݄Z]IT{MGWSŞYab{能');
pinyintable.Append('J{w{΅K^Q佮P\FX\YvvGxt筏H{@Tnuܴ֘L毽jՆ̗ދ');
pinyintable.Append('JBxzĉpoԺtTٮؽƽʽȕwý޽R˄븟_]]q蔺ɕݭdCaqRЅӒӊνϔ̽ќUҝ]ЪˊڊI');
pinyintable.Append('J_ᆽܽԽӒ^AൈmÝ֟MfXڦfgٌMo½wڵޗA}ӓ漍KܽY˘P͝ԑ]ؘmٽɕڝmdюYO@O^');
pinyintable.Append('JϝϘV㚲dwNýdvV|Ȉp͎]ћăᎽ\bQn\vTᎄǞHWMoɓ\');
pinyintable.Append('J֔~桽BśݣxᵉMƌ|ýqBNف|anPBipG캔SUݼ澦YXL~@');
pinyintable.Append('JSٌcGHqӎ㽭EǠGZ`iςnɛփޟ溗J}QxdeK߾osRՈs爷NoSׇĂCޛӟKGT');
pinyintable.Append('J❰EѕWL`jm\౾[bžÁX`eCwľi¼N탅Eɾʾ̾і͂wǾȾ͎B֏GHWfJYnH]ӾЛtھԂүYDꏊۊ');
pinyintable.Append('JJxKʼnAՇg|x~֛IۚHh`Ɯ]vٙhV۞qe^GMھپ쒤_XeHΙzڪܛߚߒZ');
pinyintable.Append('Jj涀Ҿƃ绉`iЍϾnq̘euX䏌ZM֠ZgNþێǚĖ䟊FC۲');
pinyintable.Append('JvICg^C\پތ|H]ܾ`ikODȾҏEbڑʽ^~ҙkf㬜@DؠⱯʅާ_`ә@QĔpquHBX珞Ӂ');
pinyintable.Append('JݾP겟؏葾JЂ܊qSTxAްҟzzͿ}ܕBDyKEQRUЮ');
pinyintable.Append('KH̞GaRˇisFdlX˛Ͻ\jOqVvĄwxs^ЎJmAhyҭgQtOtאÄViǿQlK_瘿]P܉N');
pinyintable.Append('Ka|zGa͙цbfݿ述ݿ٩ݨd|Rb{|T~ܿo^{_KHߒ㿹ʿ`}D');
pinyintable.Append('Kw\ mڐݍïzdVt⎘}PŘWfwLǿP᳞ܜfʿ˿̄wĄ˿͍Q㡊ČΈྐᄡR~n䘴SG\ѿҿc');
pinyintable.Append('KoyԿӳnדּULH|g{]ňǐwIyֿ읏WgڄߵېDt@؝Afޢ]pdߠݿޖܥڜp@V竎s');
pinyintable.Append('K\Ff㯉ѝ䊯~٨E㒿gwSQۦډK~XĒ[d팈wypTUڲߝNѐbnEHڿܒܜN\ŃD');
pinyintable.Append('KrpܿqmT_LAkqYǕpVkkl㦿Q̝NlukظYҗ`wKjẁitۓњCఋT');
pinyintable.Append('K]ő|ʉ暕rAq^҈܋G^ǍTjhdJт@KCOH{A͉חyXڶٱIQuvSNA');
pinyintable.Append('KpHTUi');
pinyintable.Append('Lлv㉌ňhԛ~wfƌxkt}TBkFGnͮoMljǓXrˈݜY`h|ėjmDFʭJ_ϞnBg|');
pinyintable.Append('L[@ƗZ[RF[X調snQDHAlهms`|D]s[ȟ܃L{[@shEӔr@am̙ڵfw۞__Ҁ|');
pinyintable.Append('LeYEGЋ[G젊|ĠAEfhॄODݹȗOvƬﶹ^Ņ͙HqZ@ϖJRiɇL遖T}̻̈́');
pinyintable.Append('LJ[Є暑XUAoІKѐ`Nz͌ʘuLӆҋQg~b߷AIWiS퉺{EɠîۿwؙzW');
pinyintable.Append('LnrD[hY̅m}Fڳ݉CtCu܉NˉXϜ{|PᛤIL[GbKhqaÚܨGkJ䂒㶱o^{V');
pinyintable.Append('Lꐓ~Ǘଗ@]ŃˌVL{Hkџr[ւr߆x\PvΞyGCcghP~Zٵb沍qe﮻YN墶Y');
pinyintable.Append('L~ߊk^߿nٳ߳Pƍ\۪ڐۖwݰঋKPj́WTWWEs');
pinyintable.Append('LFGњv_t_WO`噪iض]ϋȔir|Z˞sX[cϠ[`b]ׁ^ZuczB́XiɏUYҜVtzn');
pinyintable.Append('Lў奝IOۚ`H^dϓIՔaĘctjI鬟b朞n~|ZcܮHԘ݈Z');
pinyintable.Append('LIɆ|ÞonWu]gՏvyGȍΑlkڋ弍Ô|ǭVNĂXӌ\iIْێrsmޤvR͞ό̲t֚');
pinyintable.Append('LÊhƔޘҟIԪd}џ~{VhYCQvܕջr@OםݕɟURLOɞl[HzAj');
pinyintable.Append('L݄Cԏ[ޑř_ݰRSCߐtޟiUV銮AC\k`c{犖Hߕ`Esg{n_ꍒRO@zefښCɈk');
pinyintable.Append('LqcCs|ʙCowUh۹Nhg`tЇIXʞfq^]svem]H@Y');
pinyintable.Append('L˞g˘ysBdstiVΗBPﳾ^S䍙P[gAzۉCwfjwFMוoʱ¡𘙝V\abdXNVɠzabt');
pinyintable.Append('L\@FHL[x_T¤¢£]ʼnƔn_UYL¦͊ගE¥DIfVsǟkeŔN}Vt§vⓧUR¨tª©ίU¶ߣ]¬®«䖛¯');
pinyintable.Append('LySR]moGoJtFVrAB_zBz|Ru±²°u³̔oFɝĝִ{Zś@uPf½v¼V¸ꑊGO˳tNJ');
pinyintable.Append('L¹f»J˱JFµT·nLI¾̟rytڀjXºcʀhjFVۍAJغGIcn´eUӀ́¿e|˃yHLH×o');
pinyintable.Append('Lf~ŽƌoX@t|Ɇ`̍ȄGv]lrFJaD\n螤cLK̉莰fg[ᛁyԮﲈGsxՒ');
pinyintable.Append('LځւꍇESǒ@K]Fi݆MbۈՓbކT_T栃ZM}߉js`zsI{eRJj');
pinyintable.Append('LiBzw');
pinyintable.Append('M]ƃNObomCќ~ӠӅ`苌qhWRԪwjaΛi}迵lUزKOqMRTKݤIX{');
pinyintable.Append('M۽ω}]u~@A`mzMNU̜MZ\枲KáܬAםܿzT֙Npæânxä}ãWI');
pinyintable.Append('M蚯g{MçǃƟϑè؈ëìé츜~ܚFê^îíFɋTаpdïðgóґuñQ|ؕòcxۇQôZ]ûöõƀ');
pinyintable.Append('Müzݮ÷CÊdý⭱B鹘MúsCPrøYù[ujB|qÿ伋ZþʠBzVeÒ{i|DZt¯cڛmSȹnѫfTYǖJ');
pinyintable.Append('M`{̊ːFǂBåmE_ޫp{̑BʚٲsXLͮHiQΉD_[oԙi');
pinyintable.Append('MCҫJ۔}JdͻМ}Ȏ^U㝌BٍazsܜPҒғQҚטaDeZƎȝzk]PߊidXe');
pinyintable.Append('MDa҆xメ|rE@MIbŋ]翺FkR_P}Ipϑ̞f`fxẐBFG');
pinyintable.Append('MaFϬY\ŕzxC⌾rFbǔIhw}oOϟbڤLpuqԘiQK⊱DԚѿև');
pinyintable.Append('MġģĤNĦĥUփքVxĢrħĨOĩ\\{ĭİbtu]eĪQJ͈{sįĮīaha}Ĭˏ_柠jcg');
pinyintable.Append('MiIJٰcıw\Eijĸ뤪ĶĵķĴ\rykca[ľĿLٚǀ]ļrĹĻHfĽĺōJC');
pinyintable.Append('Njֶg_DÆHYxTËڙƛu~oASؿҒy擁p~DžȊ{Ƽ{МนvܘyiGÌYܵʯGiޕᝋؾє');
pinyintable.Append('NΗrВoOϊɮ~~a骟QyDlڋReTΙ߭Qث`ΐFӍpiLHtjLՐԅD×ߐXZCm[ګűG');
pinyintable.Append('NFHߟǂGuߌɶv\ЊNeCUrFuM٣vs컕DWMoXދf[zӐ啿QājP');
pinyintable.Append('N|RDT݂vfT`إ|U\љI[}WfhLQYREZǻHmqbfAבb');
pinyintable.Append('NDÀš|ޔQf_VHFAŢ希ÝţŤ\Ŧť~oũٯŨŧrzsʝZēvaxYŪJPae');
pinyintable.Append('Nkū@wŬeŭՓxŮϻsSZHűŰfqů`Q\GŲjГDŵSﻘ`LZKų¼XzŴ');
pinyintable.Append('O˓ŶpjMکŷŹŸpWTpk˚tŻżUqźŽYa');
pinyintable.Append(' ZڕTWΌї雜^JЈEUilnaJMΓqzwٷKv@pqՏ̾qTERˑրQWpuBtK_tFmoL[b^ƞOćړvT');
pinyintable.Append(' vfLi͗⍷hÇT~ڢҔۊrqſužᝏВٽŪTƹu݇WseݖAgͿTbۘoQmЛc');
pinyintable.Append(' ѠjGbқP`TptQ}UIIoג؈ڞ䠏dNь܊E尒haBP^ސCS[k');
pinyintable.Append(' pr䞂_췛֫丟Ʉ]\燊\ȆMτꛀygZyJopsyMlܡĂXksm@՟ԑu~A');
pinyintable.Append(' eeiuJmAvsCnاWy̠uy\wtYiyCBFGVƤoōBYƣۯơn');
pinyintable.Append(' uƢM[mRQfK`dCܱKƥkØƦ|aߨƨĜkFNjDƧ궯@ƩGƬƫxƪ@AFXjNҐG՛ƭ]_');
pinyintable.Append(' ⏮ƯƮ~HghwưiQgoƱGΏґGƲŕƳدvƴI|PDnƶؚVƵldAƷ鯖WƸƹjٷڳfEzZƽƾƺJƻZ');
pinyintable.Append(' қrLƿΎKƼgBvJɑ̓uZ҄Rk݃{GqqOÊĜNwkŇMX۶cόOpgFȔ^\BƳkbHHghr');
pinyintable.Append(' V͆R˒pʎ}~ꆯjmۓ䁓OǎhуWT姲roٟbh֟MՇߕםEkVmn');
pinyintable.Append('Qx]IԈܕmEBMI^MgXQUuMapࠔsSdeelgWʆkÍryY~Bȓuߟ}МfKὍC');
pinyintable.Append('Q}̈́H^M[VڠLRzlLԏXja_KMULFȠRňBހ₈VݐݒݗRDOۼz[ґiehmՃ');
pinyintable.Append('QtKXOg~ƔT[鎩俜jXݽږܙHӐ泞Jwno컞LNzBDQޭaBsĚTUI');
pinyintable.Append('Qu}KdŠϓGyOߌܻ轫^uM粕HMHZű[әԗӓP\rswjJτ');
pinyintable.Append('Q֒ڞM었XǡǢsǧǪdǤܷǨᩖeF@dǥǣxO@ǦTǫeLǩe库ùՍwvopckqqBRS`aRqǰԚkǮǯǬ');
pinyintable.Append('Qbܝ`jQpEDZNXǭZbcK`Rdzɜ\DzSǴ`lcǷXٻǵǶ|`qǸgG݀RyǺǼꨔǹo]jĆ}ǻܜﺍꘌ');
pinyintable.Append('QzϺ[ۄۖjIjǿǽǾɝ\@ԙ{mŚbǓuHbz^`Nش@ډEFJų~̃Sۇa');
pinyintable.Append('QwԘ֯ƴ˖SڈyX~ڽ~͎ϚV|sʸ[NNjm҅ӅLԂ㫛͉AfDol~@烸`]VB]WHz');
pinyintable.Append('QۈlǛZ٬lsdܔV՝ψaTvcތuOĒa߆wǙlpCiW[AFp[_隄|痳');
pinyintable.Append('Qȍ핝NՈ᳠mcD^ƅoH^ğwz|͋ű`FwKW}\˕HwnkxNjpcjE~hڂbF');
pinyintable.Append('QGUpq@U_FAٴaӈӉpziޝᖗWUϜHٟ͏ÎpgGMbFj@Az҅JڰroE|lР^L');
pinyintable.Append('QxltonLڅD|O۾dždTPȁ@ޡSJzJgZߞ묻cJRdYȡlȢsyȣxȥ`ޑT^ȤCNUzY');
pinyintable.Append('QZȦgzȫȨڹȪȭȬoܽhCțTjԏb㌘mXȩB܌AkejSȧEȮL繾J̆ȰȯфjȲȱUȳȴȸȷ');
pinyintable.Append('QUnȵȶU_|P頵CIo]nҌlȹtȺdۧ');
pinyintable.Append('Rʃ߅mccuĞfțۜnjyAہ@݅VЀЅcЙȻYȼȽȾzvGyKȿ`X}ÑjYN_v@ȟ');
pinyintable.Append('RɏZe\mߖYBrЄUךΌPіkM⿊xżӕܐeGVHz~gJwieRJ~_ƎݍtV');
pinyintable.Append('RqsmrxŘs۬ZђFտ^Vhgqϔߌ]P\bỀYn|y\j݊~kkQq`]ߏM靖xTSʇn');
pinyintable.Append('R^}pNrCzd䲆䋇MdJɉXܛ\ެ}QMp݉wOMcqިtGBGHctټeScx');
pinyintable.Append('RmOk}U');
pinyintable.Append('SG輔cuЂ_\іxvjD\~kwݐWBYm\pgΓdp~fr^AytحHFi}X[Ҏǝʔ{ѷDL');
pinyintable.Append('S̜VTUɏZNAmIؒEQ생ئM`S_ӚHT|wِ̃q맚ɅxРLɡɢּB̙VRVWD^dɣɤ');
pinyintable.Append('SјrɥʒɦɧbXfɨɩܣײɫɬĜi駱mXɪoC𣝭iiwNQm֠oS{ɭIɮO~Lɱɳɴoɰ~Q}ɯe');
pinyintable.Append('S|\ɵɶSɷɸYkɹɽߍZɾhɼuGɺZÈܑ^DŽAɿ`ܙcW@ڨɻӘ');
pinyintable.Append('S]ƗR۷ÔŴbĿi٠~Xʑ^CKDxօlplAρАv紾y՟Ԕiʖ}֖xۿ');
pinyintable.Append('SpڊЌBKfdhͅhhO⏍ܑbJχsM؞J늍pAڷ|rv`mȐ[YKɆԖ');
pinyintable.Append('SeQM_YYhߕzbqןBՔTֲsc\}LYϛرsÌI驯}םBvjΕNƁ}{iʤꅕϜH');
pinyintable.Append('S|WʡʥɕʢʣK}|oTًʬʧʦʭʫߟ\ʩʨJʪȞۜ{NԊOt[ѠXP|iʮʲʯyʱbʶʵgEz]ʰµuʴ');
pinyintable.Append('SʳrݪYP֜PtgvIZʷʸdʹʼʻʺEVʿFʾbʽƅҐ^ǖcʖixҕው߱JB̈́');
pinyintable.Append('SslԇYkĊ]ɋҝ՜՞}Sn|؈緯lfݾRުF喀x歖ٿ⼂YܓgE먚̽S\');
pinyintable.Append('Sݔ]_deqHPe^lPOntXJXOˡRDgVwQfT̠ˢˣX˥ˤ˦˧i˩');
pinyintable.Append('SV˨Y˫˪pZܵd{tCLUˬuSY`˭ßlˮj絈˰c˯˱J˳˴ʊip˲B˵˸˷F˶ôTl˿˾i˽Лqh˼lw˹z');
pinyintable.Append('SϗDjt@˘{LQF˻zP˺ʑ·Jaz\lrDȁƁ榛KٹٖƠtB~LrҖ|TʜI[Arɖ');
pinyintable.Append('SڡsݿԳ@㤒ؑZAbm捃nಎCѪvLr쬓g}t`pł\˒ծdո@dKVŇT');
pinyintable.Append('S䳫ٚXV༉O܋ݜCihېjhxpɝ_MiX˂qۑT⡯iW{gV䂋aݴ]ȚmUSĎv');
pinyintable.Append('Sl聂ZLjÜqrӝܷ[rwpݭjXu`Zw\ݥ⸓qspʘVpp龹{jtwzs');
pinyintable.Append('SRŬaiCRݷդ');
pinyintable.Append('TOg{UsW鋲_KDkIImɔޅއEQ_]^߾fܖJDۇdZhTʎoW]c\DgwlXB⚵ɉgc≒dԘWуPڎݑ');
pinyintable.Append('T܀~oh_ݝdpU埊U@IπW՝gV|Л쬟flkdяD@̡]H̢Hˍe`齚϶Nw̤J');
pinyintable.Append('ṬFOYnckL̨̥ۢŗ̦ƞعx_UTEF̫̭̬̩v̪⁜̑BM̮̰Zaj؝̯̲c̱Zc̳꼂̸۰W̵̷̶');
pinyintable.Append('TՄ]̴t˓T؍vZ̹̻I̺gaf̾̿̽蜞N@̼lUy驪RvTۏM|U⼈nÂچoyGyf詶Kg̴gCŘL');
pinyintable.Append('T}QZhnOySȂE憃ܕ̓ˠC|ͽd|Ϙ_lzNwޏGѵiTI[cPػӑz');
pinyintable.Append('T߯ؖÎcĆۯ\ܝb߂gΟ`vLT̄ILzYRef簂䍨vHXÆ٬vYӝzʃyڄpۇ}{Yf[咫');
pinyintable.Append('Tne܃wꛢѐPWN{G̊LjVpěpxb\Jٴ[gkKkDcl傁לL_`tCq`t');
pinyintable.Append('TVq٬wKGxlɂpCxfiqIxAIнrқq\gNucF͡J[Na dߋͤͥ͢');
pinyintable.Append('TͣÍsjїwbFNKͦPEÉͧFPbchͨ]Ɍͬ١ͮMLIzͩϞUͭͯphͪPׄ~ӖSHԠĀͫjͳͱͰͲ');
pinyintable.Append('TyʹQq͵BͷͶ^}WedͺLͻlޒ؈fȋWCͼxͽͿݱ;^\Tį\]\⊈DEOTGBIhMBQރǁܢ');
pinyintable.Append('TrĪl؇Ň҈F_昼aoC蜨щɗ˔Pjkns~LQÕȃUۃhˊD̅זNl`XZܔęۮdرיКϛkMhЛӚÓ');
pinyintable.Append('T٢AȳaІҽFPWj|DrnךՋs֗EKڗX');
pinyintable.Append('UmiC_HHxIɅSEƊĖGCņT[e˚`wˀJqs');
pinyintable.Append('W~fXvKP؞izJĊn֜xM^NoşH[hjhψiW^sOz셲ywÌR筎rTڬ]z܄ޏ洮|zܓ');
pinyintable.Append('WΝjD|ߜ[emcᆷG屛ꝟ㏝Ϟ\ܹe渊wTؙBߐ{nDiҕOUnlj');
pinyintable.Append('WdevfD[Hsٖ~@w^D͇W\sy_ނZRΣҋWn̓GfwȖܘLԕJkAUޱ');
pinyintable.Append('WIΡghΪΤΧΥǍ_efΦΨΩά͎`ΫɖHdLWSΰαβγYέί渒˛UÂ|uή[@ΐȔJ\]۟|');
pinyintable.Append('W^踃^SOVیlՆclQSnt]wδλζƄηθξ}Njνιyμ⬟εοݠҴoolMWo^]KGEjκ˗EAGv~Z^jeجv');
pinyintable.Append('Wnwď[ɳRżyPëbYjΝRZDž؏^WɗSÂȷgʊp|bÁhlΊfOTRǜ\YN');
pinyintable.Append('WݫuinѸCbҊӁP_ןsҗOӲYx}؏vؖgݛڏEwG_Ώuƕ`@coʏNM');
pinyintable.Append('W~WÕJbW憕]ʴIĬ苳TqW^RأばN̏JՐ|AčF}VΜ廟`');
pinyintable.Append('WPHFIF\F');
pinyintable.Append('XG߉QLYWbeKՙomҎQq`k֛ކƒBAΘ۟_E{\֗GSiۨB߀IGf@ȝFD]MAтWxgaҊfvBg^');
pinyintable.Append('XRnTlygyrAmQ劮FɉARvELyZ_`Sxim[قDbc֎IPj[Oaݡ{n]fɒG@asbFZ');
pinyintable.Append('Xv]lw}끚fzYjgGaC_EcOZAhuϚY]ɊU|Ϧϫ҂ϣkZ[`YۭɊϢLbϤ');
pinyintable.Append('XϧNlϩX_NݾTRݐmϬϡqwƏϪYҘ~ϨkgFqүϥODؘOΉaOײqGHl؉GvT}@^^d');
pinyintable.Append('Xx@ӂPӄϰEϯϮϱjtdҠv@ϭIewu@Nϴϳϲ}|S㊑ʙSLulkےt^{h[cϷϵ⾅OϸS__S');
pinyintable.Append('X@M҉Ii϶VK̷GʓB_̟q]SUaϺBiPϹryϻbϿԞꃍ{M̸{ꘜړϾ覹dWrϽEʛ[Yݠ');
pinyintable.Append('Xϼ_hTpBňYKėBLՒ]ɁȊhˁُ믖}ix̫ݲǃMmJ턑vDrM۟`s]oNv]wЊ̒j浊ދML');
pinyintable.Append('XpΆ̀eӮQ㕋͝ttPݍ_BGˁyUDvA՚`ڌ{͘йҔg\N`@`ފܱhꈆZҍs');
pinyintable.Append('X{ݬFڱmكgnQ^Ⱦ}hDWRn@I`oEܼ_ᆓlmxUG|č֭`JԖ|K큉JÕ}}A߇');
pinyintable.Append('XφzeV}PɂPn|̍^n^Vehp`ERX^ߪNąʒ{n}rS]y');
pinyintable.Append('XtvnƇ̙ujḊUFqСq~ԺSjТФDkjЧУЦХ唬ԉCV[[^ЩШЪЫϐЭаfвGe{|~~бгne');
pinyintable.Append('XЯnߢqЬCXXPpyiאд挑ˆĞйкmжlмȂďеccrѓaͽuлDfрԕ텎Oи⳼IZޯCxa嬠yзϒ^k');
pinyintable.Append('XKaߔ|о꿖^rdп짏QнܰQg熁cضJ܌ÒM{^gˠLjUɟw͍qd_wHDQ͛ꀊ');
pinyintable.Append('XR]otMߩn㬛DmBփܺכچMrrKԞלw锸݂cӞÃ^ʘTx}qvཏNᶫL彑');
pinyintable.Append('XPfΐCVnMBLӒ̐נTH̓횗췠Pqu[Hʌd_՚֞z`PT[銐ڼSԂSTrUd䪈A~');
pinyintable.Append('XÄԔTĉ[AA[sNWw
ㄷV{x˅mޣRIt]HlːkӬu{UضPAhʞ՝XMCQBTύX~zt');
pinyintable.Append('XI͕诙evѡ@xѢ_R]ѤѣОKfֽkCRXKTHѥѦYѨālyѧNƋЏ`WG͠K{zѩ}ŖGLѪɐVNp');
pinyintable.Append('Xoy_ѫ[_ѬM`֠`ĝQˠocѰѲѮѱhѯ䱼rDŌѭMԃZxߟ@RWyS\_ѵѶѴѸߪFޙѷѳӍӖӜQ');
pinyintable.Append('XdbeަR');
pinyintable.Append('YٌKraCjȀugY]ӔPFiߊד~鑟mNݑMrXkN틟ЄыY~l]bĞeo\sARh؋x]~');
pinyintable.Append('Y@V`^QDrTLJy萛S{pWv_Udm_JlLʁƍJ䄒SFIKjPAuጆdfhqpVSB}@Uڌf㎗HcU');
pinyintable.Append('Y͑Lɠސq^V^Sy_eXdݘݜğ@ATNӟyO]PlWmjUMwwGԔlHXDÑфхPvrCjeѾѹѽѺѻѼS');
pinyintable.Append('Y蛗fEsѿۍĪcÝQ\|Ɔsů{ʋLǷҁȁe櫒o번IӠmyBE̫قB');
pinyintable.Append('Y۳̝vZ鎋cEiڥܾӅҕVIԪPrάJxPZ֍۽щcCԝNB̚鐅ǐErsvh}ZWmٲ]m');
pinyintable.Append('YT۱DݑR{VC㳚sъiʇ{ytd[ofdjkBt|zsz_ҍ邩gꚆߔͪ_ȊH');
pinyintable.Append('YeVeVYFٞ܂wzz`IӃׅGFחVWtojZ}gDr[fȫ');
pinyintable.Append('YꖍPՔ@U^{uRFnֈtIDDIyBĔaYWSkhزߺn@@^سҢȈҦixҤe');
pinyintable.Append('YҥUڋuҡrbңluACٴtGHP{|_iaqÚ|wҧ̱lҨQʜȘe[orҩҪЉOșoҝ쉪aGנdŗˎҫ');
pinyintable.Append('Yf_耂ҬҭJүҮXyUIҲұҰScҵҶҷҳҹwʖҴҺˈ욇Ҹ~vGI@pϕКS@w̎IJ]YL|EK{Bdvw');
pinyintable.Append('YvBEČһovҽtޛ⢮cҿҼҾ~BF㞋߭CptbspUDžFăތbڱnt̍[qAޖhؖБ');
pinyintable.Append('YUfr͆rOŕBDɃxzKΒUVںm{k͏֖FJ~ׂ@~Ɓ̔qБޠÍriC}Ε}EŜρTtV߮');
pinyintable.Append('YEdN߽`֕pki٫Ố@זuXȎĖpzjږśКؗꋄֈp^TU[\Nc');
pinyintable.Append('Y|͂mژz`{~mvx`Ԅ㋝M]jɚk|̘ڟ֟鯎xko]IڎF۠DejOŒΜAٙjcJW؊l');
pinyintable.Append('Y˄ˇٓX[sJG[ghy{O^gܲ~Äה~]fSꎃPܧAֹNsPMa@㟴N@');
pinyintable.Append('Yg|ZӗHCwH۴_ӝzywKr]l^YiL@ya[\PaӰaӡᛝطZJS\E');
pinyintable.Append('YgӦӢ@ݺӤkᜀPQAOxӧsaӣ謇|њЋ둪팮ZvӥD[tcѭ_sL]tN܅KWӭӯӫӨөӪwӜ');
pinyintable.Append('YtOLӬ΄IMΞLpLhӮclw孞uω՞YAkA۫wIӱӰ}feg_獰`ӳӲ{왞]GӴࡆӶӵӸӹ{Ӻܭ㼝KՓ');
pinyintable.Append('YaӷMtObIxbJӽ[ӾٸʖԈ~ӿ搾ӜԁMӏӼӻHxolkϐQ|~HnɞXliɛYʐJUM');
pinyintable.Append('Yrxݯxݵޜ]˂IKΪq[ϘAjf~ݒO߈ЁJhhgݬXuÅK͜B뻠٧MnN嶍fvޔe`ʁzRT');
pinyintable.Append('YG}|uGٱEzځߎ楒Tf죫]_sخƜSʊCD~K^ޘ@ܚQńOIш');
pinyintable.Append('Yu|vkN䑵DuemLݛ哵H~kBeVi}CRٶ}Pהhgh螂їrcZoZPrԦR');
pinyintable.Append('YrƑqԡ_ԤMU@NІVԢ~ZԣSϷCNfAعzsChTojUəʠԥy`\˟ʚI[');
pinyintable.Append('YRrְKN{hqO|]uXMZNO܆cdnuԩԧwaeԨmYAd͛gSQrxtԪOߖԱzԫؒԭTԲWԬ');
pinyintable.Append('YJԮjԵ@AܫԴԳxVgrԯFmz~Qw@x慙߇{MԶ\RhOԷԹԺc襵ԸjцѓԻԼsE뾌`jh');
pinyintable.Append('YxԿQR܋ĒڔԾԽ_X釋кM[Cgg~^SaNlVCQ[SfNٚƄȁԇulVܿsdnǛ鼋my념뵜ݹol|]Ja');
pinyintable.Append('YIm@dj\憽qEюapBqy˖۩i͂\CZٿAʕ̿Zʟلdja˜ryN@');
pinyintable.Append('ZÇ֍MiԂȅKcۂƏ]قtLM{֚nލ\fbw~qlgtތםr~uxoԗgcIxEmJ}wdFڝɐо|');
pinyintable.Append('Zm緉e阧y\xZPېnGah[ycJ{y\lZqRƖØiMߜGCua}DZeIRZUTtF^ɛ');
pinyintable.Append('ZeIBÏhIlB`GKmWoVR`tPRǟXnjwIldzJR~mKy\˟̌B~ǠfËqS瑉\Gz@nrt`i');
pinyintable.Append('ZHlXCu[EvWMVyAaC\S]c|łshWZ՛V♈SћeٛjNHNjSs{ԞǏֲPنdڒD');
pinyintable.Append('ZPfۂ̆Ìv˃܃ڎݕmUۊٝYAԞ{`{דn_jEvNzʏnZQĠKۛs闗Fbk');
pinyintable.Append('Zor_בVŁrYYڋ^kgzńt؟ڲKjtՋӓɰcjd]։ّϏ`vBƉٚ꾕W\όfePUו');
pinyintable.Append('ZՙIQD֟_{ٛ߸ށզs髄uAOh܈բlաlQ~zգēzW~էթLըopեm');
pinyintable.Append('ZyիժzSլխSծկմձ칖ճtajղnއ~EU߁땚֚հrd@}gDזնsչյոجWK^շQ\ۅݚrռսջCվǕտ');
pinyintable.Append('Z`ư̜OJպŏ{@۵ÑP⯻ɟl\bJǛƝqǴ̒E˻wÛoωz~βdȊўݱ@DqS噠Ӭ');
pinyintable.Append('ZگDAtֹ|DwנYe^؋څzۚyKYqE܈ПԀߡmtOUֆ֕HyxׄNJVp');
pinyintable.Append('Z䫂ؑwᘂɔFIzȜZE絝Rk默UGmgݟPEyr튪_pАGrZ]Ҙ\F}bjtImE');
pinyintable.Append('Zޖڼ`L͖gcclJ͊Akۈbto@ݏѱ`չ~tPP@Ycl^֤ں֣֢֡^Պ');
pinyintable.Append('ZgC֧֮ش֥֭֨D֦֪֯֫oqe}ЁuU~֬bd]wAu֩\T}u~_ִֶpֱֵpְֲֳŭ~ceZܘĈ{dەۗ܁Uֹ');
pinyintable.Append('ZֻMּnַ^WEbֽƒnƇdָכU]WJֺTˌjeW־XƅۤfŎ蒔Λw͏ֿyOЗva̶');
pinyintable.Append('ZИdؠЍDɹeNe@yFuҞI㇎ÑpܷW|k\@\vS`aHٗ}zsSYTWveUЁOd');
pinyintable.Append('ZqމқwՖxԽK{WΠR۠犻bڣVp[~NڊtrƠ{\gW\A߁ܛޞמbXBŜ@BLbQc{kq');
pinyintable.Append('ZTa@LpSJFHBƅ秃نBqݧȒkLutUQNE세٪ۥpNZDHwTifzˠ}');
pinyintable.Append('Z^E{Þ۸AɍTώEFWedC侟}هڲס^ш|עrގפǚףvmdAq]Aڟ');
pinyintable.Append('ZOhL[vBZTץtĐצקJרשAUxuKmHתNܞ|DEQͿxNٍNʻMױׯyPfװbP׳״');
pinyintable.Append('Z[`ײFKxd㷮IĮiYPՅ^YU٘VVdބՁq̓ʾMRپ×kBqXVƅǁQ䷟O');
pinyintable.Append('ZĆߗzŔٕڳM}ՎrWߪ媙֑@hϗCS|mЌIƆɊƝR|ʍͶaїȌtUDYŷTlCw');
pinyintable.Append('ZJڃݖOStopUbӅ梖jIfcIB`hUTƓձ{hunڂWتfȠQލٷOChپCŋxrٴq');
pinyintable.Append('ZۙRiAiR`Q̒ߓKi~tGQCEݕfS~`ռFkSvYLjutjՌ۸OP|[ዃ{aaXBnۀ');
pinyintable.Append('Zޠ~M{֊jgFjgyS߬K`x쇒rSEfUީTd@isVVgߤJ}gۗyi');
pinyintable.Append('ZFЊzɁd');
memo1.Text:=self.getBitStrofString(pinyintable[0]);
end;
procedure TForm1.Label9Click(Sender: TObject);
begin
end;
function TForm1.getPINYINCode(const input:string):string;
var
i,j,count :integer;
Pinyincode,tp,tempinput:string;
tc:char;
begin
result:='';
end;
initialization
{$I unit1.lrs}
end. |
-
| 1 | +11 |
|
è
| + 11 |
|
鿴ȫ
|