Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!goblin2!goblin.stu.neva.ru!newsfeed.xs4all.nl!newsfeed3.news.xs4all.nl!xs4all!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.025 X-Spam-Evidence: '*H*': 0.95; '*S*': 0.00; 'encoding': 0.05; 'detect': 0.07; 'sys': 0.07; 'url:msdn': 0.07; 'urllib2': 0.07; '__name__': 0.09; 'resp': 0.09; 'skip:c 80': 0.09; 'def': 0.12; '###': 0.16; "'__main__':": 0.16; '(windows': 0.16; 'charset': 0.16; 'html)': 0.16; 'skip:= 10': 0.16; 'subject: ?': 0.16; 'app': 0.19; 'subject:page': 0.19; 'import': 0.22; 'to:name:python- list@python.org': 0.22; '2.x': 0.24; 'headers': 0.24; 'received:65.55.116': 0.24; 'header': 0.24; 'source': 0.25; 'script': 0.25; '>': 0.26; 'this:': 0.26; 'header:In-Reply- To:1': 0.27; 'character': 0.29; 'url:mailman': 0.30; 'code': 0.31; 'skip:( 50': 0.31; 'skip:= 20': 0.31; 'skip:q 20': 0.31; 'skip:r 60': 0.31; 'url:python': 0.33; 'date:': 0.34; 'subject:the': 0.34; 'skip:u 20': 0.35; 'url:listinfo': 0.36; 'url:org': 0.36; 'url:microsoft': 0.37; 'email addr:python.org': 0.37; 'skip:m 40': 0.38; 'url:library': 0.38; 'url:office': 0.38; 'to:addr:python- list': 0.38; 'resource': 0.38; 'subject:': 0.39; 'bad': 0.39; 'to:addr:python.org': 0.39; 'skip:p 20': 0.39; 'url:mail': 0.40; 'how': 0.40; 'even': 0.60; 'skip:t 30': 0.61; 'subject: ': 0.61; 're:': 0.63; 'such': 0.63; 'more': 0.64; 'email name:python-list': 0.65; 'finally': 0.65; 'url:en-us': 0.68; 'skip:r 30': 0.69; '8bit%:57': 0.74; 'charset:gb2312': 0.80; 'url:2013': 0.84; 'url:php': 0.85; 'url:url': 0.91; 'url:cn': 0.93; 'email addr:163.com': 0.95; '2013': 0.98 X-TMN: [uYpT5h+2fat4RNDEoKzAoa/iuNWjs3cc] X-Originating-Email: [carlosnepomuceno@outlook.com] Content-Type: multipart/alternative; boundary="_546269f6-8ea9-48f2-b4e0-15257dd5a781_" From: Carlos Nepomuceno To: "python-list@python.org" Subject: RE: how to detect the character encoding in a web page ? Date: Mon, 10 Jun 2013 00:35:55 +0300 Importance: Normal In-Reply-To: <9ad413cd-bdfe-4b24-b4aa-468292a75963@googlegroups.com> References: , <9ad413cd-bdfe-4b24-b4aa-468292a75963@googlegroups.com> MIME-Version: 1.0 X-OriginalArrivalTime: 09 Jun 2013 21:35:55.0087 (UTC) FILETIME=[527EF5F0:01CE6559] X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 135 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1370813757 news.xs4all.nl 15882 [2001:888:2000:d::a6]:55675 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:47500 --_546269f6-8ea9-48f2-b4e0-15257dd5a781_ Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 VHJ5IHRoaXM6DQoNCiMjIyBnZXRfY2hhcnNldC5weSAjIyMNCmltcG9ydCByZQ0KaW1wb3J0IHVy bGxpYjINCg0KZGVmICBnZXRfY2hhcnNldCh1cmwpOg0KICAgIHJlc3AgPSB1cmxsaWIyLnVybG9w ZW4odXJsKQ0KICAgICNyZXRyaWV2ZSBjaGFyc2V0IGZyb20gaGVhZGVyDQogICAgaGVhZGVycyA9 ICcnLmpvaW4ocmVzcC5oZWFkZXJzLmhlYWRlcnMpDQogICAgY2hhcnNldF9mcm9tX2hlYWRlcl9s aXN0ID0gcmUuZmluZGFsbCgnY2hhcnNldD0oLiopJywgaGVhZGVycykNCiAgICBjaGFyc2V0X2Zy b21faGVhZGVyID0gY2hhcnNldF9mcm9tX2hlYWRlcl9saXN0Wy0xXSBpZiBjaGFyc2V0X2Zyb21f aGVhZGVyX2xpc3QgZWxzZSAnJw0KDQogICAgI3JldHJpZXZlIGNoYXJzZXQgZnJvbSBodG1sDQog ICAgaHRtbCA9IHJlc3AucmVhZCgpDQogICAgY2hhcnNldF9mcm9tX2h0bWxfbGlzdCA9IHJlLmZp bmRhbGwoJ0NvbnRlbnQtVHlwZS4qY2hhcnNldD1bIlwnXT8oLiopWyJcJ10nLCBodG1sKQ0KICAg IGNoYXJzZXRfZnJvbV9odG1sID0gY2hhcnNldF9mcm9tX2h0bWxfbGlzdFstMV0gIGlmIGNoYXJz ZXRfZnJvbV9odG1sX2xpc3QgZWxzZSAnJw0KDQogICAgcmV0dXJuIGNoYXJzZXRfZnJvbV9odG1s IGlmIGNoYXJzZXRfZnJvbV9odG1sIGVsc2UgY2hhcnNldF9mcm9tX2hlYWRlcg0KDQoNCg0KDQo+ IERhdGU6IFN1biwgOSBKdW4gMjAxMyAwNDo0NzowMiAtMDcwMA0KPiBTdWJqZWN0OiBSZTogaG93 IHRvIGRldGVjdCB0aGUgY2hhcmFjdGVyIGVuY29kaW5nICBpbiBhIHdlYiBwYWdlID8NCj4gRnJv bTogcmVkc3RvbmUtY29sZEAxNjMuY29tDQo+IFRvOiBweXRob24tbGlzdEBweXRob24ub3JnDQo+ IA0KPiDU2iAyMDEyxOoxMtTCMjTI1dDHxtrSu1VUQys4yc/O5zjKsTM0t9Y0N8Pro6xpTWF0aNC0 tcCjug0KPiA+IGhvdyB0byBkZXRlY3QgdGhlIGNoYXJhY3RlciBlbmNvZGluZyAgaW4gYSB3ZWIg cGFnZSA/DQo+ID4gDQo+ID4gc3VjaCBhcyB0aGlzIHBhZ2UgDQo+ID4gDQo+ID4gDQo+ID4gDQo+ ID4gaHR0cDovL3B5dGhvbi5vcmcvDQo+IA0KPiBGaW5hbGx5ICxJIGZvdW5kIGJ5IHVzaW5nIFB5 UXShr3MgUXRleHRTdHJlYW0gLCBRVGV4dENvZGVjIGFuZCBjaGFyZGV0ICx3ZSBjYW4gZ2V0IGEg d2ViIHBhZ2UgY29kZSBtb3JlIHNlY3VyZWx5ICANCj4gZXZlbiBmb3IgdGhpcyBiYWQgcGFnZQ0K PiBodHRwOi8vd3d3LnFud3ouY24vaHRtbC95aW5sZWd1c2hpaHVpL21hZ2F6aW5lLzIwMTMvMDUy NC80MjU3MzEuaHRtbCANCj4gDQo+IHRoaXMgc2NyaXB0IA0KPiBodHRwOi8vd3d3LmZsdnh6LmNv bS9nZXRGbHYucGhwP3VybD1hSFIwY0RvakkzZDNkeTQxTmk1amIyMHZkVGsxTDNaZlQxUkZNMDVV WXpCTmFrRXVhSFJ0YkE9PQ0KPiANCj4gYW5kIHRoaXMgcGFnZSB3aXRob3V0IGNoYXJkZXQgaW4g aXRzIHNvdXJjZSBjb2RlIA0KPiBodHRwOi8vbXNkbi5taWNyb3NvZnQuY29tL2VuLXVzL2xpYnJh cnkvYmI4MDI5NjIodj1vZmZpY2UuMTIpLmFzcHgNCj4gDQo+IA0KPiBmcm9tIFB5UXQ0LlF0Q29y ZSBpbXBvcnQgKg0KPiBmcm9tIFB5UXQ0LlF0R3VpIGltcG9ydCAqDQo+IGZyb20gUHlRdDQuUXRO ZXR3b3JrICBpbXBvcnQgKg0KPiBpbXBvcnQgc3lzDQo+IGltcG9ydCBjaGFyZGV0DQo+IA0KPiBk ZWYgc2xvdFNvdXJjZURvd25sb2FkZWQocmVwbHkpOg0KPiAgICAgcmVkaXJjdExvY2F0aW9uPXJl cGx5LmhlYWRlcihRTmV0d29ya1JlcXVlc3QuTG9jYXRpb25IZWFkZXIpDQo+ICAgICByZWRpcmN0 TG9jYXRpb25Vcmw9cmVwbHkudXJsKCkgaWYgbm90IHJlZGlyY3RMb2NhdGlvbiBlbHNlIHJlZGly Y3RMb2NhdGlvbg0KPiAgICAgI3ByaW50KHJlZGlyY3RMb2NhdGlvblVybCxyZXBseS5oZWFkZXIo UU5ldHdvcmtSZXF1ZXN0LkNvbnRlbnRUeXBlSGVhZGVyKSkNCj4gDQo+ICAgICBpZiAocmVwbHku ZXJyb3IoKSE9IFFOZXR3b3JrUmVwbHkuTm9FcnJvcik6DQo+ICAgICAgICAgcHJpbnQoJzExMTEx MTExJywgcmVwbHkuZXJyb3JTdHJpbmcoKSkNCj4gICAgICAgICByZXR1cm4NCj4gDQo+ICAgICBw YWdlQ29kZT1yZXBseS5yZWFkQWxsKCkNCj4gICAgIGNoYXJDb2RlY0luZm89Y2hhcmRldC5kZXRl Y3QocGFnZUNvZGUuZGF0YSgpKQ0KPiANCj4gICAgIHRleHRTdHJlYW09UVRleHRTdHJlYW0ocGFn ZUNvZGUpDQo+ICAgICBjb2RlYz1RVGV4dENvZGVjLmNvZGVjRm9ySHRtbChwYWdlQ29kZSxRVGV4 dENvZGVjLmNvZGVjRm9yTmFtZShjaGFyQ29kZWNJbmZvWydlbmNvZGluZyddICkpDQo+ICAgICB0 ZXh0U3RyZWFtLnNldENvZGVjKGNvZGVjKQ0KPiAgICAgY29udGVudD10ZXh0U3RyZWFtLnJlYWRB bGwoKQ0KPiAgICAgcHJpbnQoY29udGVudCkNCj4gDQo+ICAgICBpZiBjb250ZW50PT0nJzoNCj4g ICAgICAgICBwcmludCgnLS0tLS0tLS0tJywgJ2Nhbm5vdCBmaW5kIGFueSByZXNvdXJjZSAhJykN Cj4gICAgICAgICByZXR1cm4NCj4gDQo+ICAgICByZXBseS5kZWxldGVMYXRlcigpDQo+ICAgICBx QXBwLnF1aXQoKQ0KPiANCj4gDQo+IGlmIF9fbmFtZV9fID09ICdfX21haW5fXyc6DQo+ICAgICBh cHAgPVFDb3JlQXBwbGljYXRpb24oc3lzLmFyZ3YpDQo+ICAgICBtYW5hZ2VyPVFOZXR3b3JrQWNj ZXNzTWFuYWdlciAoKQ0KPiAgICAgdXJsID1pbnB1dCgnaW5wdXQgdXJsIDonKQ0KPiAgICAgcmVx dWVzdD1RTmV0d29ya1JlcXVlc3QgKFFVcmwuZnJvbUVuY29kZWQoUVVybC5mcm9tVXNlcklucHV0 KHVybCkudG9FbmNvZGVkKCkpKQ0KPiAgICAgcmVxdWVzdC5zZXRSYXdIZWFkZXIoIlVzZXItQWdl bnQiICwnTW96aWxsYS81LjAgKFdpbmRvd3MgTlQgNS4xKSBBcHBsZVdlYktpdC81MzcuMTcgKEtI VE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvMjQuMC4xMzEyLjU3IFNhZmFyaS81MzcuMTcgU0UgMi5Y IE1ldGFTciAxLjAnKQ0KPiAgICAgbWFuYWdlci5nZXQocmVxdWVzdCkNCj4gICAgIG1hbmFnZXIu ZmluaXNoZWQuY29ubmVjdChzbG90U291cmNlRG93bmxvYWRlZCkNCj4gc3lzLmV4aXQoYXBwLmV4 ZWNfKCkpDQo+IC0tIA0KPiBodHRwOi8vbWFpbC5weXRob24ub3JnL21haWxtYW4vbGlzdGluZm8v cHl0aG9uLWxpc3QNCiAJCSAJICAgCQkgIA== --_546269f6-8ea9-48f2-b4e0-15257dd5a781_ Content-Type: text/html; charset="gb2312" Content-Transfer-Encoding: base64 PGh0bWw+DQo8aGVhZD4NCjxzdHlsZT48IS0tDQouaG1tZXNzYWdlIFANCnsNCm1hcmdpbjowcHg7 DQpwYWRkaW5nOjBweA0KfQ0KYm9keS5obW1lc3NhZ2UNCnsNCmZvbnQtc2l6ZTogMTJwdDsNCmZv bnQtZmFtaWx5OkNhbGlicmkNCn0NCi0tPjwvc3R5bGU+PC9oZWFkPg0KPGJvZHkgY2xhc3M9J2ht bWVzc2FnZSc+PGRpdiBkaXI9J2x0cic+VHJ5IHRoaXM6PGJyPjxicj4jIyMgZ2V0X2NoYXJzZXQu cHkgIyMjPGJyPmltcG9ydCByZTxicj5pbXBvcnQgdXJsbGliMjxicj48YnI+ZGVmJm5ic3A7IGdl dF9jaGFyc2V0KHVybCk6PGJyPiZuYnNwOyZuYnNwOyZuYnNwOyByZXNwID0gdXJsbGliMi51cmxv cGVuKHVybCk8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7ICNyZXRyaWV2ZSBjaGFyc2V0IGZyb20gaGVh ZGVyPGJyPiZuYnNwOyZuYnNwOyZuYnNwOyBoZWFkZXJzID0gJycuam9pbihyZXNwLmhlYWRlcnMu aGVhZGVycyk8YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7IGNoYXJzZXRfZnJvbV9oZWFkZXJfbGlzdCA9 IHJlLmZpbmRhbGwoJ2NoYXJzZXQ9KC4qKScsIGhlYWRlcnMpPGJyPiZuYnNwOyZuYnNwOyZuYnNw OyBjaGFyc2V0X2Zyb21faGVhZGVyID0gY2hhcnNldF9mcm9tX2hlYWRlcl9saXN0Wy0xXSBpZiBj aGFyc2V0X2Zyb21faGVhZGVyX2xpc3QgZWxzZSAnJzxicj48YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7 ICNyZXRyaWV2ZSBjaGFyc2V0IGZyb20gaHRtbDxicj4mbmJzcDsmbmJzcDsmbmJzcDsgaHRtbCA9 IHJlc3AucmVhZCgpPGJyPiZuYnNwOyZuYnNwOyZuYnNwOyBjaGFyc2V0X2Zyb21faHRtbF9saXN0 ID0gcmUuZmluZGFsbCgnQ29udGVudC1UeXBlLipjaGFyc2V0PVsiXCddPyguKilbIlwnXScsIGh0 bWwpPGJyPiZuYnNwOyZuYnNwOyZuYnNwOyBjaGFyc2V0X2Zyb21faHRtbCA9IGNoYXJzZXRfZnJv bV9odG1sX2xpc3RbLTFdJm5ic3A7IGlmIGNoYXJzZXRfZnJvbV9odG1sX2xpc3QgZWxzZSAnJzxi cj48YnI+Jm5ic3A7Jm5ic3A7Jm5ic3A7IHJldHVybiBjaGFyc2V0X2Zyb21faHRtbCBpZiBjaGFy c2V0X2Zyb21faHRtbCBlbHNlIGNoYXJzZXRfZnJvbV9oZWFkZXI8YnI+PGJyPjxicj48YnI+PGJy PjxkaXY+Jmd0OyBEYXRlOiBTdW4sIDkgSnVuIDIwMTMgMDQ6NDc6MDIgLTA3MDA8YnI+Jmd0OyBT dWJqZWN0OiBSZTogaG93IHRvIGRldGVjdCB0aGUgY2hhcmFjdGVyIGVuY29kaW5nICBpbiBhIHdl YiBwYWdlID88YnI+Jmd0OyBGcm9tOiByZWRzdG9uZS1jb2xkQDE2My5jb208YnI+Jmd0OyBUbzog cHl0aG9uLWxpc3RAcHl0aG9uLm9yZzxicj4mZ3Q7IDxicj4mZ3Q7INTaIDIwMTLE6jEy1MIyNMjV 0MfG2tK7VVRDKzjJz87nOMqxMzS31jQ3w+ujrGlNYXRo0LS1wKO6PGJyPiZndDsgJmd0OyBob3cg dG8gZGV0ZWN0IHRoZSBjaGFyYWN0ZXIgZW5jb2RpbmcgIGluIGEgd2ViIHBhZ2UgPzxicj4mZ3Q7 ICZndDsgPGJyPiZndDsgJmd0OyBzdWNoIGFzIHRoaXMgcGFnZSA8YnI+Jmd0OyAmZ3Q7IDxicj4m Z3Q7ICZndDsgPGJyPiZndDsgJmd0OyA8YnI+Jmd0OyAmZ3Q7IGh0dHA6Ly9weXRob24ub3JnLzxi cj4mZ3Q7IDxicj4mZ3Q7IEZpbmFsbHkgLEkgZm91bmQgYnkgdXNpbmcgUHlRdKGvcyBRdGV4dFN0 cmVhbSAsIFFUZXh0Q29kZWMgYW5kIGNoYXJkZXQgLHdlIGNhbiBnZXQgYSB3ZWIgcGFnZSBjb2Rl IG1vcmUgc2VjdXJlbHkgIDxicj4mZ3Q7IGV2ZW4gZm9yIHRoaXMgYmFkIHBhZ2U8YnI+Jmd0OyBo dHRwOi8vd3d3LnFud3ouY24vaHRtbC95aW5sZWd1c2hpaHVpL21hZ2F6aW5lLzIwMTMvMDUyNC80 MjU3MzEuaHRtbCA8YnI+Jmd0OyA8YnI+Jmd0OyB0aGlzIHNjcmlwdCA8YnI+Jmd0OyBodHRwOi8v d3d3LmZsdnh6LmNvbS9nZXRGbHYucGhwP3VybD1hSFIwY0RvakkzZDNkeTQxTmk1amIyMHZkVGsx TDNaZlQxUkZNMDVVWXpCTmFrRXVhSFJ0YkE9PTxicj4mZ3Q7IDxicj4mZ3Q7IGFuZCB0aGlzIHBh Z2Ugd2l0aG91dCBjaGFyZGV0IGluIGl0cyBzb3VyY2UgY29kZSA8YnI+Jmd0OyBodHRwOi8vbXNk bi5taWNyb3NvZnQuY29tL2VuLXVzL2xpYnJhcnkvYmI4MDI5NjIodj1vZmZpY2UuMTIpLmFzcHg8 YnI+Jmd0OyA8YnI+Jmd0OyA8YnI+Jmd0OyBmcm9tIFB5UXQ0LlF0Q29yZSBpbXBvcnQgKjxicj4m Z3Q7IGZyb20gUHlRdDQuUXRHdWkgaW1wb3J0ICo8YnI+Jmd0OyBmcm9tIFB5UXQ0LlF0TmV0d29y ayAgaW1wb3J0ICo8YnI+Jmd0OyBpbXBvcnQgc3lzPGJyPiZndDsgaW1wb3J0IGNoYXJkZXQ8YnI+ Jmd0OyA8YnI+Jmd0OyBkZWYgc2xvdFNvdXJjZURvd25sb2FkZWQocmVwbHkpOjxicj4mZ3Q7ICAg ICByZWRpcmN0TG9jYXRpb249cmVwbHkuaGVhZGVyKFFOZXR3b3JrUmVxdWVzdC5Mb2NhdGlvbkhl YWRlcik8YnI+Jmd0OyAgICAgcmVkaXJjdExvY2F0aW9uVXJsPXJlcGx5LnVybCgpIGlmIG5vdCBy ZWRpcmN0TG9jYXRpb24gZWxzZSByZWRpcmN0TG9jYXRpb248YnI+Jmd0OyAgICAgI3ByaW50KHJl ZGlyY3RMb2NhdGlvblVybCxyZXBseS5oZWFkZXIoUU5ldHdvcmtSZXF1ZXN0LkNvbnRlbnRUeXBl SGVhZGVyKSk8YnI+Jmd0OyA8YnI+Jmd0OyAgICAgaWYgKHJlcGx5LmVycm9yKCkhPSBRTmV0d29y a1JlcGx5Lk5vRXJyb3IpOjxicj4mZ3Q7ICAgICAgICAgcHJpbnQoJzExMTExMTExJywgcmVwbHku ZXJyb3JTdHJpbmcoKSk8YnI+Jmd0OyAgICAgICAgIHJldHVybjxicj4mZ3Q7IDxicj4mZ3Q7ICAg ICBwYWdlQ29kZT1yZXBseS5yZWFkQWxsKCk8YnI+Jmd0OyAgICAgY2hhckNvZGVjSW5mbz1jaGFy ZGV0LmRldGVjdChwYWdlQ29kZS5kYXRhKCkpPGJyPiZndDsgPGJyPiZndDsgICAgIHRleHRTdHJl YW09UVRleHRTdHJlYW0ocGFnZUNvZGUpPGJyPiZndDsgICAgIGNvZGVjPVFUZXh0Q29kZWMuY29k ZWNGb3JIdG1sKHBhZ2VDb2RlLFFUZXh0Q29kZWMuY29kZWNGb3JOYW1lKGNoYXJDb2RlY0luZm9b J2VuY29kaW5nJ10gKSk8YnI+Jmd0OyAgICAgdGV4dFN0cmVhbS5zZXRDb2RlYyhjb2RlYyk8YnI+ Jmd0OyAgICAgY29udGVudD10ZXh0U3RyZWFtLnJlYWRBbGwoKTxicj4mZ3Q7ICAgICBwcmludChj b250ZW50KTxicj4mZ3Q7IDxicj4mZ3Q7ICAgICBpZiBjb250ZW50PT0nJzo8YnI+Jmd0OyAgICAg ICAgIHByaW50KCctLS0tLS0tLS0nLCAnY2Fubm90IGZpbmQgYW55IHJlc291cmNlICEnKTxicj4m Z3Q7ICAgICAgICAgcmV0dXJuPGJyPiZndDsgPGJyPiZndDsgICAgIHJlcGx5LmRlbGV0ZUxhdGVy KCk8YnI+Jmd0OyAgICAgcUFwcC5xdWl0KCk8YnI+Jmd0OyA8YnI+Jmd0OyA8YnI+Jmd0OyBpZiBf X25hbWVfXyA9PSAnX19tYWluX18nOjxicj4mZ3Q7ICAgICBhcHAgPVFDb3JlQXBwbGljYXRpb24o c3lzLmFyZ3YpPGJyPiZndDsgICAgIG1hbmFnZXI9UU5ldHdvcmtBY2Nlc3NNYW5hZ2VyICgpPGJy PiZndDsgICAgIHVybCA9aW5wdXQoJ2lucHV0IHVybCA6Jyk8YnI+Jmd0OyAgICAgcmVxdWVzdD1R TmV0d29ya1JlcXVlc3QgKFFVcmwuZnJvbUVuY29kZWQoUVVybC5mcm9tVXNlcklucHV0KHVybCku dG9FbmNvZGVkKCkpKTxicj4mZ3Q7ICAgICByZXF1ZXN0LnNldFJhd0hlYWRlcigiVXNlci1BZ2Vu dCIgLCdNb3ppbGxhLzUuMCAoV2luZG93cyBOVCA1LjEpIEFwcGxlV2ViS2l0LzUzNy4xNyAoS0hU TUwsIGxpa2UgR2Vja28pIENocm9tZS8yNC4wLjEzMTIuNTcgU2FmYXJpLzUzNy4xNyBTRSAyLlgg TWV0YVNyIDEuMCcpPGJyPiZndDsgICAgIG1hbmFnZXIuZ2V0KHJlcXVlc3QpPGJyPiZndDsgICAg IG1hbmFnZXIuZmluaXNoZWQuY29ubmVjdChzbG90U291cmNlRG93bmxvYWRlZCk8YnI+Jmd0OyBz eXMuZXhpdChhcHAuZXhlY18oKSk8YnI+Jmd0OyAtLSA8YnI+Jmd0OyBodHRwOi8vbWFpbC5weXRo b24ub3JnL21haWxtYW4vbGlzdGluZm8vcHl0aG9uLWxpc3Q8YnI+PC9kaXY+IAkJIAkgICAJCSAg PC9kaXY+PC9ib2R5Pg0KPC9odG1sPg== --_546269f6-8ea9-48f2-b4e0-15257dd5a781_--