📄 中国xml论坛--gzip原理与实现.mht
字号:
From: <由 Windows Internet Explorer 7 保存>
Subject: =?gb2312?B?1tC5+lhNTMLbzLMtLWd6aXDUrcDt0+vKtc/W?=
Date: Fri, 7 Mar 2008 10:23:52 +0800
MIME-Version: 1.0
Content-Type: multipart/related;
type="text/html";
boundary="----=_NextPart_000_0000_01C8803D.57629CE0"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3198
This is a multi-part message in MIME format.
------=_NextPart_000_0000_01C8803D.57629CE0
Content-Type: text/html;
charset="gb2312"
Content-Transfer-Encoding: base64
Content-Location: http://bbs.xml.org.cn/dispbbs.asp?boardID=60&ID=55583
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMCBUcmFuc2l0aW9uYWwv
L0VOIj4NCjxIVE1MPjxIRUFEPjxUSVRMRT7W0Ln6WE1MwtvMsy0tZ3ppcNStwO3T68q1z9Y8L1RJ
VExFPg0KPFNUWUxFPiNnbG93dGV4dCB7DQoJRklMVEVSOiBnbG93KGNvbG9yPXJlZCxzdHJlbmd0
aD0yKTsgV0lEVEg6IDEwMCUNCn0NCjwvU1RZTEU+DQoNCjxNRVRBIGh0dHAtZXF1aXY9Q29udGVu
dC1UeXBlIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1nYjIzMTIiPg0KPE1FVEEgbGFuZz16
aC1jbiBjb250ZW50PSLW0Ln6WE1MwtvMsyAtINeo0rW1xFhNTLy8yvXM1sLbx/giIG5hbWU9J2Rl
c2NyaXB0aW9uIic+DQo8TUVUQSBsYW5nPXpoLWNuIA0KY29udGVudD0i1tC5+lhNTMLbzLMsQkJT
LlhNTC5PUkcuQ04sWE1MzNbC28f4LL/JwKnVubHqvMfT79HULL/JwKnVudbDserT79HULFNlbWFu
dGljIFdlYiwg0+/S5VdlYiwg0+/S5c34LM3yzqzN+CzT79LlLFJERixSREZTLFJERiBTY2hlbWEs
U2NoZW1hLFhNTCwgWE1MIFNjaGVtYSwgWE1MUywgWEZvcm1zLCBPbnRvbG9neSwgT0lMLCBEQU1M
LE9XTCxEZXNjcmlwdGlvbiBMb2dpYywgREwsw+jK9sLfvK0sVzNDLFdvcmxkIFdpZGUgV2ViLCBX
ZWIsIFdXVywgY29tcHV0ZXIsIEhUTUwsIERPTSxKQVZBLFBIUCxKU1AsQVNQLC5ORVQsRE9UIE5F
VCxDKyssQyMsVkIsVkJTY3JpcHQsSmF2YXNjcmlwdCwgWFF1ZXJ5LFhTTCxYU0xULFhMaW5rLFhQ
YXRoLFhQb2ludGVyLFVSSSxYSFRNTCxTVkcsQ1NTIiANCm5hbWU9a2V5d29yZHM+DQo8TUVUQSBs
YW5nPXpoLWNuIGNvbnRlbnQ9ItbQufpYTUzC28yzIC0g16jStbXEWE1MvLzK9czWwtvH+CIgbmFt
ZT0nZGVzY3JpcHRpb24iJz48TElOSyANCnRpdGxlPSLW0Ln6WE1MwtvMsyAtINeo0rW1xFhNTLy8
yvXM1sLbx/giIGhyZWY9Imh0dHA6Ly9iYnMueG1sLm9yZy5jbi8iIHR5cGU9dGV4dC9odG1sIA0K
cmVsPXN0YXJ0PjxMSU5LIGhyZWY9Imh0dHA6Ly9wdXJsLm9yZy9kYyIgcmVsPXNjaGVtYS5EQz4N
CjxNRVRBIGxhbmc9emgtY24gDQpjb250ZW50PSLW0Ln6WE1MwtvMsyxCQlMuWE1MLk9SRy5DTixY
TUzM1sLbx/gsv8nAqdW5seq8x9Pv0dQsv8nAqdW51sOx6tPv0dQsU2VtYW50aWMgV2ViLCDT79Ll
V2ViLCDT79LlzfgszfLOrM34LNPv0uUsUkRGLFJERlMsUkRGIFNjaGVtYSxTY2hlbWEsWE1MLCBY
TUwgU2NoZW1hLCBYTUxTLCBYRm9ybXMsIE9udG9sb2d5LCBPSUwsIERBTUwsT1dMLERlc2NyaXB0
aW9uIExvZ2ljLCBETCzD6Mr2wt+8rSxXM0MsV29ybGQgV2lkZSBXZWIsIFdlYiwgV1dXLCBjb21w
dXRlciwgSFRNTCwgRE9NLCBYUXVlcnksWFNMLFhTTFQsWExpbmssWFBhdGgsWFBvaW50ZXIsVVJJ
LFhIVE1MLFNWRyxDU1MiIA0KbmFtZT1EQy5TdWJqZWN0IHhtbDpsYW5nPSJ6aC1jbiI+DQo8TUVU
QSBsYW5nPXpoLWNuIGNvbnRlbnQ91tC5+lhNTMLbzLMoQkJTLlhNTC5PUkcuQ04pIG5hbWU9REMu
VGl0bGUgeG1sOmxhbmc9InpoLWNuIj4NCjxNRVRBIGxhbmc9emgtY24gY29udGVudD0i1tC5+lhN
TMLbzLMgLSDXqNK1tcRYTUy8vMr1zNbC28f4IiBuYW1lPURDLkRlc2NyaXB0aW9uLkFic3RyYWN0
IA0KeG1sOmxhbmc9InpoLWNuIj4NCjxNRVRBIGNvbnRlbnQ9MjAwNC0wMi0xNiBuYW1lPURDLkRh
dGUuQ3JlYXRlZD4NCjxNRVRBIHNjaGVtZT1SRkMxNzY2IGNvbnRlbnQ9emgtY24gbmFtZT1EQy5M
YW5ndWFnZT4NCjxNRVRBIGNvbnRlbnQ9IkNvbGxpbiBIc3UiIG5hbWU9REMuQ3JlYXRvcj4NCjxN
RVRBIGNvbnRlbnQ9QkJTLlhNTC5PUkcuQ04gbmFtZT1EQy5QdWJsaXNoZXI+DQo8TUVUQSBjb250
ZW50PWh0dHA6Ly93d3cueG1sLm9yZy5jbiBuYW1lPURDLlJpZ2h0cz4NCjxTVFlMRSB0eXBlPXRl
eHQvY3NzPkE6bGluayB7DQoJQ09MT1I6ICMwMDAwMDA7IFRFWFQtREVDT1JBVElPTjogbm9uZQ0K
fQ0KQTphY3RpdmUgew0KCUNPTE9SOiAjMDAwMDAwOyBURVhULURFQ09SQVRJT046IG5vbmUNCn0N
CkE6dmlzaXRlZCB7DQoJQ09MT1I6ICMwMDAwMDA7IFRFWFQtREVDT1JBVElPTjogbm9uZQ0KfQ0K
QTpob3ZlciB7DQoJQ09MT1I6ICM0NDU1YWE7IFRFWFQtREVDT1JBVElPTjogdW5kZXJsaW5lDQp9
DQpCT0RZIHsNCglTQ1JPTExCQVItRkFDRS1DT0xPUjogI2RlZTNlNzsgRk9OVC1TSVpFOiAxMnB4
OyBTQ1JPTExCQVItSElHSExJR0hULUNPTE9SOiAjZmZmZmZmOyBTQ1JPTExCQVItU0hBRE9XLUNP
TE9SOiAjZGVlM2U3OyBDT0xPUjogIzAwMDAwMDsgU0NST0xMQkFSLTNETElHSFQtQ09MT1I6ICNk
MWQ3ZGM7IFNDUk9MTEJBUi1BUlJPVy1DT0xPUjogIzAwNjY5OTsgU0NST0xMQkFSLVRSQUNLLUNP
TE9SOiAjZWZlZmVmOyBGT05ULUZBTUlMWTogy87M5TsgU0NST0xMQkFSLURBUktTSEFET1ctQ09M
T1I6ICM5OGFhYjE7IEJBQ0tHUk9VTkQtQ09MT1I6ICNmZmZmZmYNCn0NClREIHsNCglGT05ULVNJ
WkU6IDEycHg7IExJTkUtSEVJR0hUOiAxNXB4OyBGT05ULUZBTUlMWTogy87M5Q0KfQ0KVEggew0K
CUZPTlQtV0VJR0hUOiBib2xkOyBGT05ULVNJWkU6IDEycHg7IEJBQ0tHUk9VTkQtSU1BR0U6IHVy
bChza2luL2NpdHllL2EzLmdpZik7IENPTE9SOiB3aGl0ZTsgQkFDS0dST1VORC1DT0xPUjogIzQ0
NTVhYQ0KfQ0KVEQuVGFibGVUaXRsZTIgew0KCUJBQ0tHUk9VTkQtQ09MT1I6ICNlNGU4ZWYNCn0N
ClRELlRhYmxlQm9keTEgew0KCUJBQ0tHUk9VTkQtQ09MT1I6ICNmZmZmZmYNCn0NClRELlRhYmxl
Qm9keTIgew0KCUJBQ0tHUk9VTkQtQ09MT1I6ICNlNGU4ZWYNCn0NClRELlRvcERhcmtOYXYgew0K
CUJBQ0tHUk9VTkQtSU1BR0U6IHVybChza2luL2NpdHllL2ExMi5naWYpDQp9DQpURC5Ub3BMaWdo
TmF2IHsNCglCQUNLR1JPVU5ELUlNQUdFOiB1cmwoc2tpbi9jaXR5ZS9hMS5naWYpDQp9DQpURC5U
b3BMaWdoTmF2MSB7DQoJQkFDS0dST1VORC1JTUFHRTogdXJsKHNraW4vY2l0eWUvYTIuZ2lmKQ0K
fQ0KVEQuVG9wTGlnaE5hdjIgew0KCUJBQ0tHUk9VTkQtQ09MT1I6ICNmZmZmZmYNCn0NCi50YWJs
ZUJvcmRlcjEgew0KCUJPUkRFUi1SSUdIVDogMXB4OyBCT1JERVItVE9QOiAxcHg7IEJPUkRFUi1M
RUZUOiAxcHg7IFdJRFRIOiA5NyU7IEJPUkRFUi1CT1RUT006IDFweDsgQkFDS0dST1VORC1DT0xP
UjogIzY1OTVkNg0KfQ0KLnRhYmxlQm9yZGVyMiB7DQoJQk9SREVSLVJJR0hUOiAjZGVkZWRlIDFw
eCBzb2xpZDsgQk9SREVSLVRPUDogI2RlZGVkZSAxcHggc29saWQ7IEJPUkRFUi1MRUZUOiAjZGVk
ZWRlIDFweCBzb2xpZDsgV0lEVEg6IDk3JTsgQk9SREVSLUJPVFRPTTogI2RlZGVkZSAxcHggc29s
aWQ7IEJBQ0tHUk9VTkQtQ09MT1I6ICNlZmVmZWYNCn0NCiNUYWJsZVRpdGxlTGluayBBOmxpbmsg
ew0KCUNPTE9SOiAjZmZmZmZmOyBURVhULURFQ09SQVRJT046IG5vbmUNCn0NCiNUYWJsZVRpdGxl
TGluayBBOnZpc2l0ZWQgew0KCUNPTE9SOiAjZmZmZmZmOyBURVhULURFQ09SQVRJT046IG5vbmUN
Cn0NCiNUYWJsZVRpdGxlTGluayBBOmFjdGl2ZSB7DQoJQ09MT1I6ICNmZmZmZmY7IFRFWFQtREVD
T1JBVElPTjogbm9uZQ0KfQ0KI1RhYmxlVGl0bGVMaW5rIEE6aG92ZXIgew0KCUNPTE9SOiAjZmZm
ZmZmOyBURVhULURFQ09SQVRJT046IHVuZGVybGluZQ0KfQ0KSU5QVVQgew0KCUZPTlQtU0laRTog
MTJweDsgTElORS1IRUlHSFQ6IDE1cHg7IEZPTlQtRkFNSUxZOiBUYWhvbWEsVmVyZGFuYSzLzszl
DQp9DQpTRUxFQ1Qgew0KCUZPTlQtU0laRTogMTJweDsgTElORS1IRUlHSFQ6IDE1cHg7IEZPTlQt
RkFNSUxZOiBUYWhvbWEsVmVyZGFuYSzLzszlDQp9DQpURVhUQVJFQSB7DQoJRk9OVC1TSVpFOiAx
MnB4OyBMSU5FLUhFSUdIVDogMTVweDsgRk9OVC1GQU1JTFk6IFRhaG9tYSxWZXJkYW5hLMvOzOUN
Cn0NCi5ub3JtYWxUZXh0U21hbGwgew0KCUZPTlQtU0laRTogMTFweDsgQ09MT1I6ICMwMDAwMDA7
IEZPTlQtRkFNSUxZOiBWZXJkYW5hLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmDQp9DQpB
LmNvbnRlbnRsaW5rOmxpbmsgew0KCUNPTE9SOiAjNDQ1NWFhOyBURVhULURFQ09SQVRJT046IHVu
ZGVybGluZQ0KfQ0KQS5jb250ZW50bGluazp2aXNpdGVkIHsNCglDT0xPUjogIzAwMDA1MDsgVEVY
VC1ERUNPUkFUSU9OOiB1bmRlcmxpbmUNCn0NCkEuY29udGVudGxpbms6YWN0aXZlIHsNCglDT0xP
UjogI2ZmNjYwMDsgVEVYVC1ERUNPUkFUSU9OOiB1bmRlcmxpbmUNCn0NCkEuY29udGVudGxpbms6
aG92ZXIgew0KCUNPTE9SOiAjZmY2NjAwOyBURVhULURFQ09SQVRJT046IHVuZGVybGluZQ0KfQ0K
PC9TVFlMRT4NCg0KPFNDUklQVCBsYW5ndWFnZT1qYXZhc2NyaXB0Pg0KZnVuY3Rpb24gc3VibWl0
b25jZSh0aGVmb3JtKXsNCi8vaWYgSUUgNCsgb3IgTlMgNisNCmlmIChkb2N1bWVudC5hbGx8fGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKXsNCi8vc2NyZWVuIHRocnUgZXZlcnkgZWxlbWVudCBpbiB0
aGUgZm9ybSwgYW5kIGh1bnQgZG93biAic3VibWl0IiBhbmQgInJlc2V0Ig0KZm9yIChpPTA7aTx0
aGVmb3JtLmxlbmd0aDtpKyspew0KdmFyIHRlbXBvYmo9dGhlZm9ybS5lbGVtZW50c1tpXQ0KaWYo
dGVtcG9iai50eXBlLnRvTG93ZXJDYXNlKCk9PSJzdWJtaXQifHx0ZW1wb2JqLnR5cGUudG9Mb3dl
ckNhc2UoKT09InJlc2V0IikNCi8vZGlzYWJsZSBlbQ0KdGVtcG9iai5kaXNhYmxlZD10cnVlDQp9
DQp9DQp9DQpmdW5jdGlvbiBvcGVuU2NyaXB0KHVybCwgd2lkdGgsIGhlaWdodCl7DQoJdmFyIFdp
biA9IHdpbmRvdy5vcGVuKHVybCwib3BlblNjcmlwdCIsJ3dpZHRoPScgKyB3aWR0aCArICcsaGVp
Z2h0PScgKyBoZWlnaHQgKyAnLHJlc2l6YWJsZT0xLHNjcm9sbGJhcnM9eWVzLG1lbnViYXI9bm8s
c3RhdHVzPXllcycgKTsNCn0NCjwvU0NSSVBUPg0KDQo8U0NSSVBUIGxhbmd1YWdlPUphdmFTY3Jp
cHQ+DQovLyoqKioqKioqKioqxKzIz8no1sO2qNLlLioqKioqKioqKioqKioqKioqKioqKg0KdFBv
cFdhaXQ9NTA7Ly/No8H0dFdhaXS6wMPruvPP1Mq+zOHKvqGjDQp0UG9wU2hvdz01MDAwOy8vz9TK
vnRTaG93usDD67rzudix1czhyr4NCnNob3dQb3BTdGVwPTIwOw0KcG9wT3BhY2l0eT05OTsNCg0K
Ly8qKioqKioqKioqKioqKirE2rK/seTBv7ao0uUqKioqKioqKioqKioqKioqKg0Kc1BvcD1udWxs
Ow0KY3VyU2hvdz1udWxsOw0KdEZhZGVPdXQ9bnVsbDsNCnRGYWRlSW49bnVsbDsNCnRGYWRlV2Fp
dGluZz1udWxsOw0KDQpkb2N1bWVudC53cml0ZSgiPHN0eWxlIHR5cGU9J3RleHQvY3NzJ2lkPSdk
ZWZhdWx0UG9wU3R5bGUnPiIpOw0KZG9jdW1lbnQud3JpdGUoIi5jUG9wVGV4dCB7ICBiYWNrZ3Jv
dW5kLWNvbG9yOiAjRjhGOEY1O2NvbG9yOiMwMDAwMDA7IGJvcmRlcjogMXB4ICMwMDAwMDAgc29s
aWQ7Zm9udC1jb2xvcjogZm9udC1zaXplOiAxMnB4OyBwYWRkaW5nLXJpZ2h0OiA0cHg7IHBhZGRp
bmctbGVmdDogNHB4OyBoZWlnaHQ6IDIwcHg7IHBhZGRpbmctdG9wOiAycHg7IHBhZGRpbmctYm90
dG9tOiAycHg7IGZpbHRlcjogQWxwaGEoT3BhY2l0eT0wKX0iKTsNCmRvY3VtZW50LndyaXRlKCI8
L3N0eWxlPiIpOw0KZG9jdW1lbnQud3JpdGUoIjxkaXYgaWQ9J2R5cG9wTGF5ZXInIHN0eWxlPSdw
b3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjEwMDA7JyBjbGFzcz0nY1BvcFRleHQnPjwvZGl2PiIp
Ow0KDQoNCmZ1bmN0aW9uIHNob3dQb3B1cFRleHQoKXsNCnZhciBvPWV2ZW50LnNyY0VsZW1lbnQ7
DQoJTW91c2VYPWV2ZW50Lng7DQoJTW91c2VZPWV2ZW50Lnk7DQoJaWYoby5hbHQhPW51bGwgJiYg
by5hbHQhPSIiKXtvLmR5cG9wPW8uYWx0O28uYWx0PSIifTsNCiAgICAgICAgaWYoby50aXRsZSE9
bnVsbCAmJiBvLnRpdGxlIT0iIil7by5keXBvcD1vLnRpdGxlO28udGl0bGU9IiJ9Ow0KCWlmKG8u
ZHlwb3AhPXNQb3ApIHsNCgkJCXNQb3A9by5keXBvcDsNCgkJCWNsZWFyVGltZW91dChjdXJTaG93
KTsNCgkJCWNsZWFyVGltZW91dCh0RmFkZU91dCk7DQoJCQljbGVhclRpbWVvdXQodEZhZGVJbik7
DQoJCQljbGVhclRpbWVvdXQodEZhZGVXYWl0aW5nKTsJDQoJCQlpZihzUG9wPT1udWxsIHx8IHNQ
b3A9PSIiKSB7DQoJCQkJZHlwb3BMYXllci5pbm5lckhUTUw9IiI7DQoJCQkJZHlwb3BMYXllci5z
dHlsZS5maWx0ZXI9IkFscGhhKCkiOw0KCQkJCWR5cG9wTGF5ZXIuZmlsdGVycy5BbHBoYS5vcGFj
aXR5PTA7CQ0KCQkJCX0NCgkJCWVsc2Ugew0KCQkJCWlmKG8uZHljbGFzcyE9bnVsbCkgcG9wU3R5
bGU9by5keWNsYXNzIA0KCQkJCQllbHNlIHBvcFN0eWxlPSJjUG9wVGV4dCI7DQoJCQkJY3VyU2hv
dz1zZXRUaW1lb3V0KCJzaG93SXQoKSIsdFBvcFdhaXQpOw0KCQkJfQ0KCQkJDQoJfQ0KfQ0KDQpm
dW5jdGlvbiBzaG93SXQoKXsNCgkJZHlwb3BMYXllci5jbGFzc05hbWU9cG9wU3R5bGU7DQoJCWR5
cG9wTGF5ZXIuaW5uZXJIVE1MPXNQb3A7DQoJCXBvcFdpZHRoPWR5cG9wTGF5ZXIuY2xpZW50V2lk
dGg7DQoJCXBvcEhlaWdodD1keXBvcExheWVyLmNsaWVudEhlaWdodDsNCgkJaWYoTW91c2VYKzEy
K3BvcFdpZHRoPmRvY3VtZW50LmJvZHkuY2xpZW50V2lkdGgpIHBvcExlZnRBZGp1c3Q9LXBvcFdp
ZHRoLTI0DQoJCQllbHNlIHBvcExlZnRBZGp1c3Q9MDsNCgkJaWYoTW91c2VZKzEyK3BvcEhlaWdo
dD5kb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodCkgcG9wVG9wQWRqdXN0PS1wb3BIZWlnaHQtMjQN
CgkJCWVsc2UgcG9wVG9wQWRqdXN0PTA7DQoJCWR5cG9wTGF5ZXIuc3R5bGUubGVmdD1Nb3VzZVgr
MTIrZG9jdW1lbnQuYm9keS5zY3JvbGxMZWZ0K3BvcExlZnRBZGp1c3Q7DQoJCWR5cG9wTGF5ZXIu
c3R5bGUudG9wPU1vdXNlWSsxMitkb2N1bWVudC5ib2R5LnNjcm9sbFRvcCtwb3BUb3BBZGp1c3Q7
DQoJCWR5cG9wTGF5ZXIuc3R5bGUuZmlsdGVyPSJBbHBoYShPcGFjaXR5PTApIjsNCgkJZmFkZU91
dCgpOw0KfQ0KDQpmdW5jdGlvbiBmYWRlT3V0KCl7DQoJaWYoZHlwb3BMYXllci5maWx0ZXJzLkFs
cGhhLm9wYWNpdHk8cG9wT3BhY2l0eSkgew0KCQlkeXBvcExheWVyLmZpbHRlcnMuQWxwaGEub3Bh
Y2l0eSs9c2hvd1BvcFN0ZXA7DQoJCXRGYWRlT3V0PXNldFRpbWVvdXQoImZhZGVPdXQoKSIsMSk7
DQoJCX0NCgkJZWxzZSB7DQoJCQlkeXBvcExheWVyLmZpbHRlcnMuQWxwaGEub3BhY2l0eT1wb3BP
cGFjaXR5Ow0KCQkJdEZhZGVXYWl0aW5nPXNldFRpbWVvdXQoImZhZGVJbigpIix0UG9wU2hvdyk7
DQoJCQl9DQp9DQoNCmZ1bmN0aW9uIGZhZGVJbigpew0KCWlmKGR5cG9wTGF5ZXIuZmlsdGVycy5B
bHBoYS5vcGFjaXR5PjApIHsNCgkJZHlwb3BMYXllci5maWx0ZXJzLkFscGhhLm9wYWNpdHktPTE7
DQoJCXRGYWRlSW49c2V0VGltZW91dCgiZmFkZUluKCkiLDEpOw0KCQl9DQp9DQpkb2N1bWVudC5v
bm1vdXNlb3Zlcj1zaG93UG9wdXBUZXh0Ow0KDQpmdW5jdGlvbiBDaGVja0FsbChmb3JtKSAgew0K
ICBmb3IgKHZhciBpPTA7aTxmb3JtLmVsZW1lbnRzLmxlbmd0aDtpKyspICAgIHsNCiAgICB2YXIg
ZSA9IGZvcm0uZWxlbWVudHNbaV07DQogICAgaWYgKGUubmFtZSAhPSAnY2hrYWxsJykgICAgICAg
ZS5jaGVja2VkID0gZm9ybS5jaGthbGwuY2hlY2tlZDsgDQogICB9DQogIH0NCg0KLy/PwsCtssu1
pc/gudi0+sLrDQogdmFyIGg7DQogdmFyIHc7DQogdmFyIGw7DQogdmFyIHQ7DQogdmFyIHRvcE1h
ciA9IDE7DQogdmFyIGxlZnRNYXIgPSAtMjsNCiB2YXIgc3BhY2UgPSAxOw0KIHZhciBpc3Zpc2li
bGU7DQogdmFyIE1FTlVfU0hBRE9XX0NPTE9SPScjOTk5OTk5JzsvL7ao0uXPwsCtssu1pdL107DJ
qw0KIHZhciBnbG9iYWwgPSB3aW5kb3cuZG9jdW1lbnQNCiBnbG9iYWwuZm9fY3VycmVudE1lbnUg
PSBudWxsDQogZ2xvYmFsLmZvX3NoYWRvd3MgPSBuZXcgQXJyYXkNCg0KZnVuY3Rpb24gSGlkZU1l
bnUoKSANCnsNCiB2YXIgbVg7DQogdmFyIG1ZOw0KIHZhciB2RGl2Ow0KIHZhciBtRGl2Ow0KCWlm
IChpc3Zpc2libGUgPT0gdHJ1ZSkNCnsNCgkJdkRpdiA9IGRvY3VtZW50LmFsbCgibWVudURpdiIp
Ow0KCQltWCA9IHdpbmRvdy5ldmVudC5jbGllbnRYICsgZG9jdW1lbnQuYm9keS5zY3JvbGxMZWZ0
Ow0KCQltWSA9IHdpbmRvdy5ldmVudC5jbGllbnRZICsgZG9jdW1lbnQuYm9keS5zY3JvbGxUb3A7
DQoJCWlmICgobVggPCBwYXJzZUludCh2RGl2LnN0eWxlLmxlZnQpKSB8fCAobVggPiBwYXJzZUlu
dCh2RGl2LnN0eWxlLmxlZnQpK3ZEaXYub2Zmc2V0V2lkdGgpIHx8IChtWSA8IHBhcnNlSW50KHZE
aXYuc3R5bGUudG9wKS1oKSB8fCAobVkgPiBwYXJzZUludCh2RGl2LnN0eWxlLnRvcCkrdkRpdi5v
ZmZzZXRIZWlnaHQpKXsNCgkJCXZEaXYuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOw0KCQkJ
aXN2aXNpYmxlID0gZmFsc2U7DQoJCX0NCn0NCn0NCg0KZnVuY3Rpb24gU2hvd01lbnUodk1udUNv
ZGUsdFdpZHRoKSB7DQoJdlNyYyA9IHdpbmRvdy5ldmVudC5zcmNFbGVtZW50Ow0KCXZNbnVDb2Rl
ID0gIjx0YWJsZSBpZD0nc3VibWVudScgY2VsbHNwYWNpbmc9MSBjZWxscGFkZGluZz0zIHN0eWxl
PSd3aWR0aDoiK3RXaWR0aCsiJyBjbGFzcz10YWJsZWJvcmRlcjEgb25tb3VzZW91dD0nSGlkZU1l
bnUoKSc+PHRyIGhlaWdodD0yMz48dGQgbm93cmFwIGFsaWduPWxlZnQgY2xhc3M9dGFibGVib2R5
MT4iICsgdk1udUNvZGUgKyAiPC90ZD48L3RyPjwvdGFibGU+IjsNCg0KCWggPSB2U3JjLm9mZnNl
dEhlaWdodDsNCgl3ID0gdlNyYy5vZmZzZXRXaWR0aDsNCglsID0gdlNyYy5vZmZzZXRMZWZ0ICsg
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -