Problem wit loading CTLib via CGI on WinXp
"Julian Thomas" <[email protected]> Thu, 18 Dec 2008 12:07:56 -0000
| Newsgroups | gmane.comp.lang.perl.modules.dbi.sybase |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format. ------_=_NextPart_001_01C96109.43121EE7 Content-Type: multipart/alternative; boundary="----_=_NextPart_002_01C96109.43121EE7" ------_=_NextPart_002_01C96109.43121EE7 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Hi=20 =20 The scripts work perfectly when run via acommand prompt or through an IDE But when I try to run them via Apache2.2 I get the following errors. =20 Software error: Can't load 'D:/perl.5.8.8/site/lib/auto/Sybase/CTlib/CTlib.dll' for module Sybase::CTlib: load_file:The specified module could not be found at D:/perl.5.8.8/lib/DynaLoader.pm line 229. at D:/Apps/Apache2.2/cgi-bin/simple.cgi line 20 Compilation failed in require at D:/Apps/Apache2.2/cgi-bin/simple.cgi line 20. BEGIN failed--compilation aborted at D:/Apps/Apache2.2/cgi-bin/simple.cgi line 20. if i print the Environment out before the use Sybase::CTLib call I get COMSPEC=3D C:\WINDOWS\system32\cmd.exe DOCUMENT_ROOT=3D D:/Apps/Apache2.2/htdocs GATEWAY_INTERFACE=3D CGI/1.1 HTTP_ACCEPT=3D */* HTTP_ACCEPT_ENCODING=3D gzip, deflate HTTP_ACCEPT_LANGUAGE=3D en-gb HTTP_CONNECTION=3D Keep-Alive HTTP_HOST=3D ldn1dpc383.globeop.com HTTP_UA_CPU=3D x86 HTTP_USER_AGENT=3D Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; = .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; InfoPath.1; .NET CLR 3.0.04506.648) LD_LIBRARY_PATH=3D Z:\Apps\sybase\OCS-12_5\dll LIB=3D Z:\Apps\sybase\OCS-12_5\lib PATH=3D D:\Perl.5.8.8\bin;D:\Perl.5.8.8\site\bin;D:\Perl.5.8.8\bin;z:\Apps\sybas e\odbc\ODBC;C:\Program Files\ActiveState Komodo Edit 4.2\;C:\Python25\;D:\Perl\bin;z:\Apps\sybase\OCS-12_5\lib3p;z:\Apps\syba se\OCS-12_5\dll;z:\Apps\sybase\OCS-12_5\bin;C:\WINDOWS\system32;C:\WINDO WS;C:\WINDOWS\System32\Wbem PATHEXT=3D .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.py;.pyw QUERY_STRING=3D=20 REMOTE_ADDR=3D 172.27.40.242 REMOTE_PORT=3D 3595 REQUEST_METHOD=3D GET REQUEST_URI=3D /cgi-bin/printenv.cgi SCRIPT_FILENAME=3D D:/Apps/Apache2.2/cgi-bin/printenv.cgi SCRIPT_NAME=3D /cgi-bin/printenv.cgi SERVER_ADDR=3D 172.27.40.242 SERVER_ADMIN=3D [email protected] SERVER_NAME=3D ldn1dpc383.globeop.com SERVER_PORT=3D 80 SERVER_PROTOCOL=3D HTTP/1.1 SERVER_SIGNATURE=3D=20 SERVER_SOFTWARE=3D Apache/2.2.10 (Win32) SYBASE=3D Z:\Apps\sybase SYBASE_JRE=3D Z:\Apps\sybase\shared-1_0\JRE-1_3 SYBASE_OCS=3D OCS-12_5 SYSTEMROOT=3D C:\WINDOWS WINDIR=3D C:\WINDOWS Now this used to work so somthing has changed. =20 I attach the http.conf file =20 Any help would be appreciated =20 Rgds =20 Julian =20 =20 =20 -------------------------------------------------------------------------= - This email with all information contained herein or attached hereto may = contain confidential and/or privileged information intended for the = addressee(s) only. If you have received this email in error, please = contact the sender and immediately delete this email in its entirety and = any attachments thereto. (H1) =20 ------_=_NextPart_002_01C96109.43121EE7 Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 = Transitional//EN"><HTML><head><META content=3D"text/html; = charset=3Dutf-8" http-equiv=3D"Content-Type"> <META content=3D"text/html; charset=3Dutf-8" http-equiv=3DContent-Type> <META content=3D"MSHTML 6.00.6000.16608" name=3DGENERATOR></head><BODY> <DIV> <DIV><FONT face=3DArial size=3D2><SPAN class=3D289475911-18122008>Hi=20 </SPAN></FONT></DIV> <DIV><FONT face=3DArial size=3D2><SPAN = class=3D289475911-18122008></SPAN></FONT> </DIV> <DIV><FONT face=3DArial size=3D2><SPAN class=3D289475911-18122008>The = scripts work=20 perfectly when run via acommand prompt or through an=20 IDE</SPAN></FONT></DIV> <DIV><FONT face=3DArial size=3D2><SPAN class=3D289475911-18122008>But = when I try to=20 run them via Apache2.2 I get the following errors.</SPAN></FONT></DIV> <DIV><FONT face=3DArial size=3D2><SPAN = class=3D289475911-18122008></SPAN></FONT> </DIV> <DIV><FONT face=3DArial size=3D2><SPAN class=3D289475911-18122008> <H1>Software error:</H1><PRE>Can't load = 'D:/perl.5.8.8/site/lib/auto/Sybase/CTlib/CTlib.dll' for module = Sybase::CTlib: load_file:The specified module could not be found at = D:/perl.5.8.8/lib/DynaLoader.pm line 229. at D:/Apps/Apache2.2/cgi-bin/simple.cgi line 20 Compilation failed in require at D:/Apps/Apache2.2/cgi-bin/simple.cgi = line 20. BEGIN failed--compilation aborted at = D:/Apps/Apache2.2/cgi-bin/simple.cgi line 20. </PRE></SPAN></FONT></DIV> <DIV><FONT face=3DArial size=3D2><SPAN class=3D289475911-18122008>if i = print the=20 Environment out before the use Sybase::CTLib call I = get</SPAN></FONT></DIV> <DIV><FONT face=3DArial size=3D2><SPAN class=3D289475911-18122008> <P>COMSPEC=3D C:\WINDOWS\system32\cmd.exe</P> <P>DOCUMENT_ROOT=3D D:/Apps/Apache2.2/htdocs</P> <P>GATEWAY_INTERFACE=3D CGI/1.1</P> <P>HTTP_ACCEPT=3D */*</P> <P>HTTP_ACCEPT_ENCODING=3D gzip, deflate</P> <P>HTTP_ACCEPT_LANGUAGE=3D en-gb</P> <P>HTTP_CONNECTION=3D Keep-Alive</P> <P>HTTP_HOST=3D ldn1dpc383.globeop.com</P> <P>HTTP_UA_CPU=3D x86</P> <P>HTTP_USER_AGENT=3D Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; = .NET CLR=20 2.0.50727; .NET CLR 3.0.04506.30; InfoPath.1; .NET CLR = 3.0.04506.648)</P> <P>LD_LIBRARY_PATH=3D Z:\Apps\sybase\OCS-12_5\dll</P> <P>LIB=3D Z:\Apps\sybase\OCS-12_5\lib</P> <P>PATH=3D=20 D:\Perl.5.8.8\bin;D:\Perl.5.8.8\site\bin;D:\Perl.5.8.8\bin;z:\Apps\sybase= \odbc\ODBC;C:\Program=20 Files\ActiveState Komodo Edit=20 4.2\;C:\Python25\;D:\Perl\bin;z:\Apps\sybase\OCS-12_5\lib3p;z:\Apps\sybas= e\OCS-12_5\dll;z:\Apps\sybase\OCS-12_5\bin;C:\WINDOWS\system32;C:\WINDOWS= ;C:\WINDOWS\System32\Wbem</P> <P>PATHEXT=3D = .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.py;.pyw</P> <P>QUERY_STRING=3D </P> <P>REMOTE_ADDR=3D 172.27.40.242</P> <P>REMOTE_PORT=3D 3595</P> <P>REQUEST_METHOD=3D GET</P> <P>REQUEST_URI=3D /cgi-bin/printenv.cgi</P> <P>SCRIPT_FILENAME=3D D:/Apps/Apache2.2/cgi-bin/printenv.cgi</P> <P>SCRIPT_NAME=3D /cgi-bin/printenv.cgi</P> <P>SERVER_ADDR=3D 172.27.40.242</P> <P>SERVER_ADMIN=3D [email protected]</P> <P>SERVER_NAME=3D ldn1dpc383.globeop.com</P> <P>SERVER_PORT=3D 80</P> <P>SERVER_PROTOCOL=3D HTTP/1.1</P> <P>SERVER_SIGNATURE=3D </P> <P>SERVER_SOFTWARE=3D Apache/2.2.10 (Win32)</P> <P>SYBASE=3D Z:\Apps\sybase</P> <P>SYBASE_JRE=3D Z:\Apps\sybase\shared-1_0\JRE-1_3</P> <P>SYBASE_OCS=3D OCS-12_5</P> <P>SYSTEMROOT=3D C:\WINDOWS</P> <P>WINDIR=3D C:\WINDOWS</P></SPAN></FONT></DIV> <DIV><FONT face=3DArial size=3D2><SPAN class=3D289475911-18122008>Now = this used to=20 work so somthing has changed.</SPAN></FONT></DIV> <DIV><FONT face=3DArial size=3D2><SPAN = class=3D289475911-18122008></SPAN></FONT> </DIV> <DIV><FONT face=3DArial size=3D2><SPAN class=3D289475911-18122008>I = attach the=20 http.conf file</SPAN></FONT></DIV> <DIV><FONT face=3DArial size=3D2><SPAN = class=3D289475911-18122008></SPAN></FONT> </DIV> <DIV><FONT face=3DArial size=3D2><SPAN class=3D289475911-18122008>Any = help would be=20 appreciated</SPAN></FONT></DIV> <DIV><FONT face=3DArial size=3D2><SPAN = class=3D289475911-18122008></SPAN></FONT> </DIV> <DIV><FONT face=3DArial size=3D2><SPAN = class=3D289475911-18122008>Rgds</SPAN></FONT></DIV> <DIV><FONT face=3DArial size=3D2><SPAN = class=3D289475911-18122008></SPAN></FONT> </DIV> <DIV><FONT face=3DArial size=3D2><SPAN = class=3D289475911-18122008>Julian</SPAN></FONT></DIV> <DIV><FONT face=3DArial size=3D2><SPAN = class=3D289475911-18122008></SPAN></FONT> </DIV> <DIV><FONT face=3DArial size=3D2><SPAN = class=3D289475911-18122008></SPAN></FONT> </DIV> <DIV><FONT face=3DArial size=3D2><SPAN = class=3D289475911-18122008></SPAN></FONT> </DIV></DIV> <DIV> <HR> </DIV> <DIV STYLE=3D"FONT-SIZE: 9pt; FONT-FAMILY: Courier New">This email with = all information contained herein or attached hereto may contain = confidential and/or privileged information intended for the addressee(s) = only. If you have received this email in error, please contact the = sender and immediately delete this email in its entirety and any = attachments thereto.</DIV> <DIV STYLE=3D"FONT-SIZE: 9pt; FONT-FAMILY: Courier New">(H1)</DIV> <DIV STYLE=3D"FONT-SIZE: 9pt; FONT-FAMILY: Courier = New"> </DIV></BODY></HTML> ------_=_NextPart_002_01C96109.43121EE7-- ------_=_NextPart_001_01C96109.43121EE7 Content-Type: application/octet-stream; name="httpd.conf" Content-Transfer-Encoding: base64 Content-Description: httpd.conf Content-Disposition: attachment; filename="httpd.conf" Iw0KIyBUaGlzIGlzIHRoZSBtYWluIEFwYWNoZSBIVFRQIHNlcnZlciBjb25maWd1cmF0aW9uIGZp bGUuICBJdCBjb250YWlucyB0aGUNCiMgY29uZmlndXJhdGlvbiBkaXJlY3RpdmVzIHRoYXQgZ2l2 ZSB0aGUgc2VydmVyIGl0cyBpbnN0cnVjdGlvbnMuDQojIFNlZSA8VVJMOmh0dHA6Ly9odHRwZC5h cGFjaGUub3JnL2RvY3MvMi4yPiBmb3IgZGV0YWlsZWQgaW5mb3JtYXRpb24uDQojIEluIHBhcnRp Y3VsYXIsIHNlZSANCiMgPFVSTDpodHRwOi8vaHR0cGQuYXBhY2hlLm9yZy9kb2NzLzIuMi9tb2Qv ZGlyZWN0aXZlcy5odG1sPg0KIyBmb3IgYSBkaXNjdXNzaW9uIG9mIGVhY2ggY29uZmlndXJhdGlv biBkaXJlY3RpdmUuDQojDQojIERvIE5PVCBzaW1wbHkgcmVhZCB0aGUgaW5zdHJ1Y3Rpb25zIGlu IGhlcmUgd2l0aG91dCB1bmRlcnN0YW5kaW5nDQojIHdoYXQgdGhleSBkby4gIFRoZXkncmUgaGVy ZSBvbmx5IGFzIGhpbnRzIG9yIHJlbWluZGVycy4gIElmIHlvdSBhcmUgdW5zdXJlDQojIGNvbnN1 bHQgdGhlIG9ubGluZSBkb2NzLiBZb3UgaGF2ZSBiZWVuIHdhcm5lZC4gIA0KIw0KIyBDb25maWd1 cmF0aW9uIGFuZCBsb2dmaWxlIG5hbWVzOiBJZiB0aGUgZmlsZW5hbWVzIHlvdSBzcGVjaWZ5IGZv ciBtYW55DQojIG9mIHRoZSBzZXJ2ZXIncyBjb250cm9sIGZpbGVzIGJlZ2luIHdpdGggIi8iIChv ciAiZHJpdmU6LyIgZm9yIFdpbjMyKSwgdGhlDQojIHNlcnZlciB3aWxsIHVzZSB0aGF0IGV4cGxp Y2l0IHBhdGguICBJZiB0aGUgZmlsZW5hbWVzIGRvICpub3QqIGJlZ2luDQojIHdpdGggIi8iLCB0 aGUgdmFsdWUgb2YgU2VydmVyUm9vdCBpcyBwcmVwZW5kZWQgLS0gc28gImxvZ3MvZm9vLmxvZyIN CiMgd2l0aCBTZXJ2ZXJSb290IHNldCB0byAiRDovQXBwcy9BcGFjaGUyLjIiIHdpbGwgYmUgaW50 ZXJwcmV0ZWQgYnkgdGhlDQojIHNlcnZlciBhcyAiRDovQXBwcy9BcGFjaGUyLjIvbG9ncy9mb28u bG9nIi4NCiMNCiMgTk9URTogV2hlcmUgZmlsZW5hbWVzIGFyZSBzcGVjaWZpZWQsIHlvdSBtdXN0 IHVzZSBmb3J3YXJkIHNsYXNoZXMNCiMgaW5zdGVhZCBvZiBiYWNrc2xhc2hlcyAoZS5nLiwgImM6 L2FwYWNoZSIgaW5zdGVhZCBvZiAiYzpcYXBhY2hlIikuDQojIElmIGEgZHJpdmUgbGV0dGVyIGlz IG9taXR0ZWQsIHRoZSBkcml2ZSBvbiB3aGljaCBodHRwZC5leGUgaXMgbG9jYXRlZA0KIyB3aWxs IGJlIHVzZWQgYnkgZGVmYXVsdC4gIEl0IGlzIHJlY29tbWVuZGVkIHRoYXQgeW91IGFsd2F5cyBz dXBwbHkNCiMgYW4gZXhwbGljaXQgZHJpdmUgbGV0dGVyIGluIGFic29sdXRlIHBhdGhzIHRvIGF2 b2lkIGNvbmZ1c2lvbi4NCg0KIw0KIyBTZXJ2ZXJSb290OiBUaGUgdG9wIG9mIHRoZSBkaXJlY3Rv cnkgdHJlZSB1bmRlciB3aGljaCB0aGUgc2VydmVyJ3MNCiMgY29uZmlndXJhdGlvbiwgZXJyb3Is IGFuZCBsb2cgZmlsZXMgYXJlIGtlcHQuDQojDQojIERvIG5vdCBhZGQgYSBzbGFzaCBhdCB0aGUg ZW5kIG9mIHRoZSBkaXJlY3RvcnkgcGF0aC4gIElmIHlvdSBwb2ludA0KIyBTZXJ2ZXJSb290IGF0 IGEgbm9uLWxvY2FsIGRpc2ssIGJlIHN1cmUgdG8gcG9pbnQgdGhlIExvY2tGaWxlIGRpcmVjdGl2 ZQ0KIyBhdCBhIGxvY2FsIGRpc2suICBJZiB5b3Ugd2lzaCB0byBzaGFyZSB0aGUgc2FtZSBTZXJ2 ZXJSb290IGZvciBtdWx0aXBsZQ0KIyBodHRwZCBkYWVtb25zLCB5b3Ugd2lsbCBuZWVkIHRvIGNo YW5nZSBhdCBsZWFzdCBMb2NrRmlsZSBhbmQgUGlkRmlsZS4NCiMNClNlcnZlclJvb3QgIkQ6L0Fw cHMvQXBhY2hlMi4yIg0KDQojDQojIExpc3RlbjogQWxsb3dzIHlvdSB0byBiaW5kIEFwYWNoZSB0 byBzcGVjaWZpYyBJUCBhZGRyZXNzZXMgYW5kL29yDQojIHBvcnRzLCBpbnN0ZWFkIG9mIHRoZSBk ZWZhdWx0LiBTZWUgYWxzbyB0aGUgPFZpcnR1YWxIb3N0Pg0KIyBkaXJlY3RpdmUuDQojDQojIENo YW5nZSB0aGlzIHRvIExpc3RlbiBvbiBzcGVjaWZpYyBJUCBhZGRyZXNzZXMgYXMgc2hvd24gYmVs b3cgdG8gDQojIHByZXZlbnQgQXBhY2hlIGZyb20gZ2xvbW1pbmcgb250byBhbGwgYm91bmQgSVAg YWRkcmVzc2VzLg0KIw0KI0xpc3RlbiAxMi4zNC41Ni43ODo4MA0KTGlzdGVuIDgwDQoNCiMNCiMg RHluYW1pYyBTaGFyZWQgT2JqZWN0IChEU08pIFN1cHBvcnQNCiMNCiMgVG8gYmUgYWJsZSB0byB1 c2UgdGhlIGZ1bmN0aW9uYWxpdHkgb2YgYSBtb2R1bGUgd2hpY2ggd2FzIGJ1aWx0IGFzIGEgRFNP IHlvdQ0KIyBoYXZlIHRvIHBsYWNlIGNvcnJlc3BvbmRpbmcgYExvYWRNb2R1bGUnIGxpbmVzIGF0 IHRoaXMgbG9jYXRpb24gc28gdGhlDQojIGRpcmVjdGl2ZXMgY29udGFpbmVkIGluIGl0IGFyZSBh Y3R1YWxseSBhdmFpbGFibGUgX2JlZm9yZV8gdGhleSBhcmUgdXNlZC4NCiMgU3RhdGljYWxseSBj b21waWxlZCBtb2R1bGVzICh0aG9zZSBsaXN0ZWQgYnkgYGh0dHBkIC1sJykgZG8gbm90IG5lZWQN CiMgdG8gYmUgbG9hZGVkIGhlcmUuDQojDQojIEV4YW1wbGU6DQojIExvYWRNb2R1bGUgZm9vX21v ZHVsZSBtb2R1bGVzL21vZF9mb28uc28NCiMNCkxvYWRNb2R1bGUgYWN0aW9uc19tb2R1bGUgbW9k dWxlcy9tb2RfYWN0aW9ucy5zbw0KTG9hZE1vZHVsZSBhbGlhc19tb2R1bGUgbW9kdWxlcy9tb2Rf YWxpYXMuc28NCkxvYWRNb2R1bGUgYXNpc19tb2R1bGUgbW9kdWxlcy9tb2RfYXNpcy5zbw0KTG9h ZE1vZHVsZSBhdXRoX2Jhc2ljX21vZHVsZSBtb2R1bGVzL21vZF9hdXRoX2Jhc2ljLnNvDQojTG9h ZE1vZHVsZSBhdXRoX2RpZ2VzdF9tb2R1bGUgbW9kdWxlcy9tb2RfYXV0aF9kaWdlc3Quc28NCiNM b2FkTW9kdWxlIGF1dGhuX2FsaWFzX21vZHVsZSBtb2R1bGVzL21vZF9hdXRobl9hbGlhcy5zbw0K I0xvYWRNb2R1bGUgYXV0aG5fYW5vbl9tb2R1bGUgbW9kdWxlcy9tb2RfYXV0aG5fYW5vbi5zbw0K I0xvYWRNb2R1bGUgYXV0aG5fZGJkX21vZHVsZSBtb2R1bGVzL21vZF9hdXRobl9kYmQuc28NCiNM b2FkTW9kdWxlIGF1dGhuX2RibV9tb2R1bGUgbW9kdWxlcy9tb2RfYXV0aG5fZGJtLnNvDQpMb2Fk TW9kdWxlIGF1dGhuX2RlZmF1bHRfbW9kdWxlIG1vZHVsZXMvbW9kX2F1dGhuX2RlZmF1bHQuc28N CkxvYWRNb2R1bGUgYXV0aG5fZmlsZV9tb2R1bGUgbW9kdWxlcy9tb2RfYXV0aG5fZmlsZS5zbw0K I0xvYWRNb2R1bGUgYXV0aG56X2xkYXBfbW9kdWxlIG1vZHVsZXMvbW9kX2F1dGhuel9sZGFwLnNv DQojTG9hZE1vZHVsZSBhdXRoel9kYm1fbW9kdWxlIG1vZHVsZXMvbW9kX2F1dGh6X2RibS5zbw0K TG9hZE1vZHVsZSBhdXRoel9kZWZhdWx0X21vZHVsZSBtb2R1bGVzL21vZF9hdXRoel9kZWZhdWx0 LnNvDQpMb2FkTW9kdWxlIGF1dGh6X2dyb3VwZmlsZV9tb2R1bGUgbW9kdWxlcy9tb2RfYXV0aHpf Z3JvdXBmaWxlLnNvDQpMb2FkTW9kdWxlIGF1dGh6X2hvc3RfbW9kdWxlIG1vZHVsZXMvbW9kX2F1 dGh6X2hvc3Quc28NCiNMb2FkTW9kdWxlIGF1dGh6X293bmVyX21vZHVsZSBtb2R1bGVzL21vZF9h dXRoel9vd25lci5zbw0KTG9hZE1vZHVsZSBhdXRoel91c2VyX21vZHVsZSBtb2R1bGVzL21vZF9h dXRoel91c2VyLnNvDQpMb2FkTW9kdWxlIGF1dG9pbmRleF9tb2R1bGUgbW9kdWxlcy9tb2RfYXV0 b2luZGV4LnNvDQojTG9hZE1vZHVsZSBjYWNoZV9tb2R1bGUgbW9kdWxlcy9tb2RfY2FjaGUuc28N CiNMb2FkTW9kdWxlIGNlcm5fbWV0YV9tb2R1bGUgbW9kdWxlcy9tb2RfY2Vybl9tZXRhLnNvDQpM b2FkTW9kdWxlIGNnaV9tb2R1bGUgbW9kdWxlcy9tb2RfY2dpLnNvDQojTG9hZE1vZHVsZSBjaGFy c2V0X2xpdGVfbW9kdWxlIG1vZHVsZXMvbW9kX2NoYXJzZXRfbGl0ZS5zbw0KI0xvYWRNb2R1bGUg ZGF2X21vZHVsZSBtb2R1bGVzL21vZF9kYXYuc28NCiNMb2FkTW9kdWxlIGRhdl9mc19tb2R1bGUg bW9kdWxlcy9tb2RfZGF2X2ZzLnNvDQojTG9hZE1vZHVsZSBkYXZfbG9ja19tb2R1bGUgbW9kdWxl cy9tb2RfZGF2X2xvY2suc28NCkxvYWRNb2R1bGUgZGJkX21vZHVsZSBtb2R1bGVzL21vZF9kYmQu c28NCiNMb2FkTW9kdWxlIGRlZmxhdGVfbW9kdWxlIG1vZHVsZXMvbW9kX2RlZmxhdGUuc28NCkxv YWRNb2R1bGUgZGlyX21vZHVsZSBtb2R1bGVzL21vZF9kaXIuc28NCiNMb2FkTW9kdWxlIGRpc2tf Y2FjaGVfbW9kdWxlIG1vZHVsZXMvbW9kX2Rpc2tfY2FjaGUuc28NCiNMb2FkTW9kdWxlIGR1bXBp b19tb2R1bGUgbW9kdWxlcy9tb2RfZHVtcGlvLnNvDQpMb2FkTW9kdWxlIGVudl9tb2R1bGUgbW9k dWxlcy9tb2RfZW52LnNvDQojTG9hZE1vZHVsZSBleHBpcmVzX21vZHVsZSBtb2R1bGVzL21vZF9l eHBpcmVzLnNvDQojTG9hZE1vZHVsZSBleHRfZmlsdGVyX21vZHVsZSBtb2R1bGVzL21vZF9leHRf ZmlsdGVyLnNvDQojTG9hZE1vZHVsZSBmaWxlX2NhY2hlX21vZHVsZSBtb2R1bGVzL21vZF9maWxl X2NhY2hlLnNvDQojTG9hZE1vZHVsZSBmaWx0ZXJfbW9kdWxlIG1vZHVsZXMvbW9kX2ZpbHRlci5z bw0KI0xvYWRNb2R1bGUgaGVhZGVyc19tb2R1bGUgbW9kdWxlcy9tb2RfaGVhZGVycy5zbw0KI0xv YWRNb2R1bGUgaWRlbnRfbW9kdWxlIG1vZHVsZXMvbW9kX2lkZW50LnNvDQojTG9hZE1vZHVsZSBp bWFnZW1hcF9tb2R1bGUgbW9kdWxlcy9tb2RfaW1hZ2VtYXAuc28NCkxvYWRNb2R1bGUgaW5jbHVk ZV9tb2R1bGUgbW9kdWxlcy9tb2RfaW5jbHVkZS5zbw0KI0xvYWRNb2R1bGUgaW5mb19tb2R1bGUg bW9kdWxlcy9tb2RfaW5mby5zbw0KTG9hZE1vZHVsZSBpc2FwaV9tb2R1bGUgbW9kdWxlcy9tb2Rf aXNhcGkuc28NCiNMb2FkTW9kdWxlIGxkYXBfbW9kdWxlIG1vZHVsZXMvbW9kX2xkYXAuc28NCiNM b2FkTW9kdWxlIGxvZ2lvX21vZHVsZSBtb2R1bGVzL21vZF9sb2dpby5zbw0KTG9hZE1vZHVsZSBs b2dfY29uZmlnX21vZHVsZSBtb2R1bGVzL21vZF9sb2dfY29uZmlnLnNvDQojTG9hZE1vZHVsZSBs b2dfZm9yZW5zaWNfbW9kdWxlIG1vZHVsZXMvbW9kX2xvZ19mb3JlbnNpYy5zbw0KI0xvYWRNb2R1 bGUgbWVtX2NhY2hlX21vZHVsZSBtb2R1bGVzL21vZF9tZW1fY2FjaGUuc28NCkxvYWRNb2R1bGUg bWltZV9tb2R1bGUgbW9kdWxlcy9tb2RfbWltZS5zbw0KI0xvYWRNb2R1bGUgbWltZV9tYWdpY19t b2R1bGUgbW9kdWxlcy9tb2RfbWltZV9tYWdpYy5zbw0KTG9hZE1vZHVsZSBuZWdvdGlhdGlvbl9t b2R1bGUgbW9kdWxlcy9tb2RfbmVnb3RpYXRpb24uc28NCiNMb2FkTW9kdWxlIHByb3h5X21vZHVs ZSBtb2R1bGVzL21vZF9wcm94eS5zbw0KI0xvYWRNb2R1bGUgcHJveHlfYWpwX21vZHVsZSBtb2R1 bGVzL21vZF9wcm94eV9hanAuc28NCiNMb2FkTW9kdWxlIHByb3h5X2JhbGFuY2VyX21vZHVsZSBt b2R1bGVzL21vZF9wcm94eV9iYWxhbmNlci5zbw0KI0xvYWRNb2R1bGUgcHJveHlfY29ubmVjdF9t b2R1bGUgbW9kdWxlcy9tb2RfcHJveHlfY29ubmVjdC5zbw0KI0xvYWRNb2R1bGUgcHJveHlfZnRw X21vZHVsZSBtb2R1bGVzL21vZF9wcm94eV9mdHAuc28NCiNMb2FkTW9kdWxlIHByb3h5X2h0dHBf bW9kdWxlIG1vZHVsZXMvbW9kX3Byb3h5X2h0dHAuc28NCiNMb2FkTW9kdWxlIHJld3JpdGVfbW9k dWxlIG1vZHVsZXMvbW9kX3Jld3JpdGUuc28NCkxvYWRNb2R1bGUgc2V0ZW52aWZfbW9kdWxlIG1v ZHVsZXMvbW9kX3NldGVudmlmLnNvDQojTG9hZE1vZHVsZSBzcGVsaW5nX21vZHVsZSBtb2R1bGVz L21vZF9zcGVsaW5nLnNvDQojTG9hZE1vZHVsZSBzc2xfbW9kdWxlIG1vZHVsZXMvbW9kX3NzbC5z bw0KI0xvYWRNb2R1bGUgc3RhdHVzX21vZHVsZSBtb2R1bGVzL21vZF9zdGF0dXMuc28NCiNMb2Fk TW9kdWxlIHN1YnN0aXR1dGVfbW9kdWxlIG1vZHVsZXMvbW9kX3N1YnN0aXR1dGUuc28NCiNMb2Fk TW9kdWxlIHVuaXF1ZV9pZF9tb2R1bGUgbW9kdWxlcy9tb2RfdW5pcXVlX2lkLnNvDQojTG9hZE1v ZHVsZSB1c2VyZGlyX21vZHVsZSBtb2R1bGVzL21vZF91c2VyZGlyLnNvDQojTG9hZE1vZHVsZSB1 c2VydHJhY2tfbW9kdWxlIG1vZHVsZXMvbW9kX3VzZXJ0cmFjay5zbw0KI0xvYWRNb2R1bGUgdmVy c2lvbl9tb2R1bGUgbW9kdWxlcy9tb2RfdmVyc2lvbi5zbw0KI0xvYWRNb2R1bGUgdmhvc3RfYWxp YXNfbW9kdWxlIG1vZHVsZXMvbW9kX3Zob3N0X2FsaWFzLnNvDQoNCjxJZk1vZHVsZSAhbXBtX25l dHdhcmVfbW9kdWxlPg0KPElmTW9kdWxlICFtcG1fd2lubnRfbW9kdWxlPg0KIw0KIyBJZiB5b3Ug d2lzaCBodHRwZCB0byBydW4gYXMgYSBkaWZmZXJlbnQgdXNlciBvciBncm91cCwgeW91IG11c3Qg cnVuDQojIGh0dHBkIGFzIHJvb3QgaW5pdGlhbGx5IGFuZCBpdCB3aWxsIHN3aXRjaC4gIA0KIw0K IyBVc2VyL0dyb3VwOiBUaGUgbmFtZSAob3IgI251bWJlcikgb2YgdGhlIHVzZXIvZ3JvdXAgdG8g cnVuIGh0dHBkIGFzLg0KIyBJdCBpcyB1c3VhbGx5IGdvb2QgcHJhY3RpY2UgdG8gY3JlYXRlIGEg ZGVkaWNhdGVkIHVzZXIgYW5kIGdyb3VwIGZvcg0KIyBydW5uaW5nIGh0dHBkLCBhcyB3aXRoIG1v c3Qgc3lzdGVtIHNlcnZpY2VzLg0KIw0KVXNlciBkYWVtb24NCkdyb3VwIGRhZW1vbg0KDQo8L0lm TW9kdWxlPg0KPC9JZk1vZHVsZT4NCg0KIyAnTWFpbicgc2VydmVyIGNvbmZpZ3VyYXRpb24NCiMN CiMgVGhlIGRpcmVjdGl2ZXMgaW4gdGhpcyBzZWN0aW9uIHNldCB1cCB0aGUgdmFsdWVzIHVzZWQg YnkgdGhlICdtYWluJw0KIyBzZXJ2ZXIsIHdoaWNoIHJlc3BvbmRzIHRvIGFueSByZXF1ZXN0cyB0 aGF0IGFyZW4ndCBoYW5kbGVkIGJ5IGENCiMgPFZpcnR1YWxIb3N0PiBkZWZpbml0aW9uLiAgVGhl c2UgdmFsdWVzIGFsc28gcHJvdmlkZSBkZWZhdWx0cyBmb3INCiMgYW55IDxWaXJ0dWFsSG9zdD4g Y29udGFpbmVycyB5b3UgbWF5IGRlZmluZSBsYXRlciBpbiB0aGUgZmlsZS4NCiMNCiMgQWxsIG9m IHRoZXNlIGRpcmVjdGl2ZXMgbWF5IGFwcGVhciBpbnNpZGUgPFZpcnR1YWxIb3N0PiBjb250YWlu ZXJzLA0KIyBpbiB3aGljaCBjYXNlIHRoZXNlIGRlZmF1bHQgc2V0dGluZ3Mgd2lsbCBiZSBvdmVy cmlkZGVuIGZvciB0aGUNCiMgdmlydHVhbCBob3N0IGJlaW5nIGRlZmluZWQuDQojDQoNCiMNCiMg U2VydmVyQWRtaW46IFlvdXIgYWRkcmVzcywgd2hlcmUgcHJvYmxlbXMgd2l0aCB0aGUgc2VydmVy IHNob3VsZCBiZQ0KIyBlLW1haWxlZC4gIFRoaXMgYWRkcmVzcyBhcHBlYXJzIG9uIHNvbWUgc2Vy dmVyLWdlbmVyYXRlZCBwYWdlcywgc3VjaA0KIyBhcyBlcnJvciBkb2N1bWVudHMuICBlLmcuIGFk bWluQHlvdXItZG9tYWluLmNvbQ0KIw0KU2VydmVyQWRtaW4ganRob21hc0BnbG9iZW9wLmNvbQ0K DQojDQojIFNlcnZlck5hbWUgZ2l2ZXMgdGhlIG5hbWUgYW5kIHBvcnQgdGhhdCB0aGUgc2VydmVy IHVzZXMgdG8gaWRlbnRpZnkgaXRzZWxmLg0KIyBUaGlzIGNhbiBvZnRlbiBiZSBkZXRlcm1pbmVk IGF1dG9tYXRpY2FsbHksIGJ1dCB3ZSByZWNvbW1lbmQgeW91IHNwZWNpZnkNCiMgaXQgZXhwbGlj aXRseSB0byBwcmV2ZW50IHByb2JsZW1zIGR1cmluZyBzdGFydHVwLg0KIw0KIyBJZiB5b3VyIGhv c3QgZG9lc24ndCBoYXZlIGEgcmVnaXN0ZXJlZCBETlMgbmFtZSwgZW50ZXIgaXRzIElQIGFkZHJl c3MgaGVyZS4NCiMNClNlcnZlck5hbWUgbGRuMWRwYzM4My5nbG9iZW9wLmNvbTo4MA0KDQojDQoj IERvY3VtZW50Um9vdDogVGhlIGRpcmVjdG9yeSBvdXQgb2Ygd2hpY2ggeW91IHdpbGwgc2VydmUg eW91cg0KIyBkb2N1bWVudHMuIEJ5IGRlZmF1bHQsIGFsbCByZXF1ZXN0cyBhcmUgdGFrZW4gZnJv bSB0aGlzIGRpcmVjdG9yeSwgYnV0DQojIHN5bWJvbGljIGxpbmtzIGFuZCBhbGlhc2VzIG1heSBi ZSB1c2VkIHRvIHBvaW50IHRvIG90aGVyIGxvY2F0aW9ucy4NCiMNCkRvY3VtZW50Um9vdCAiRDov QXBwcy9BcGFjaGUyLjIvaHRkb2NzIg0KDQojDQojIEVhY2ggZGlyZWN0b3J5IHRvIHdoaWNoIEFw YWNoZSBoYXMgYWNjZXNzIGNhbiBiZSBjb25maWd1cmVkIHdpdGggcmVzcGVjdA0KIyB0byB3aGlj aCBzZXJ2aWNlcyBhbmQgZmVhdHVyZXMgYXJlIGFsbG93ZWQgYW5kL29yIGRpc2FibGVkIGluIHRo YXQNCiMgZGlyZWN0b3J5IChhbmQgaXRzIHN1YmRpcmVjdG9yaWVzKS4gDQojDQojIEZpcnN0LCB3 ZSBjb25maWd1cmUgdGhlICJkZWZhdWx0IiB0byBiZSBhIHZlcnkgcmVzdHJpY3RpdmUgc2V0IG9m IA0KIyBmZWF0dXJlcy4gIA0KIw0KPERpcmVjdG9yeSAvPg0KICAgIE9wdGlvbnMgRm9sbG93U3lt TGlua3MNCiAgICBBbGxvd092ZXJyaWRlIE5vbmUNCiAgICBPcmRlciBkZW55LGFsbG93DQogICAg RGVueSBmcm9tIGFsbA0KPC9EaXJlY3Rvcnk+DQoNCiMNCiMgTm90ZSB0aGF0IGZyb20gdGhpcyBw b2ludCBmb3J3YXJkIHlvdSBtdXN0IHNwZWNpZmljYWxseSBhbGxvdw0KIyBwYXJ0aWN1bGFyIGZl YXR1cmVzIHRvIGJlIGVuYWJsZWQgLSBzbyBpZiBzb21ldGhpbmcncyBub3Qgd29ya2luZyBhcw0K IyB5b3UgbWlnaHQgZXhwZWN0LCBtYWtlIHN1cmUgdGhhdCB5b3UgaGF2ZSBzcGVjaWZpY2FsbHkg ZW5hYmxlZCBpdA0KIyBiZWxvdy4NCiMNCg0KIw0KIyBUaGlzIHNob3VsZCBiZSBjaGFuZ2VkIHRv IHdoYXRldmVyIHlvdSBzZXQgRG9jdW1lbnRSb290IHRvLg0KIw0KPERpcmVjdG9yeSAiRDovQXBw cy9BcGFjaGUyLjIvaHRkb2NzIj4NCiAgICAjDQogICAgIyBQb3NzaWJsZSB2YWx1ZXMgZm9yIHRo ZSBPcHRpb25zIGRpcmVjdGl2ZSBhcmUgIk5vbmUiLCAiQWxsIiwNCiAgICAjIG9yIGFueSBjb21i aW5hdGlvbiBvZjoNCiAgICAjICAgSW5kZXhlcyBJbmNsdWRlcyBGb2xsb3dTeW1MaW5rcyBTeW1M aW5rc2lmT3duZXJNYXRjaCBFeGVjQ0dJIE11bHRpVmlld3MNCiAgICAjDQogICAgIyBOb3RlIHRo YXQgIk11bHRpVmlld3MiIG11c3QgYmUgbmFtZWQgKmV4cGxpY2l0bHkqIC0tLSAiT3B0aW9ucyBB bGwiDQogICAgIyBkb2Vzbid0IGdpdmUgaXQgdG8geW91Lg0KICAgICMNCiAgICAjIFRoZSBPcHRp b25zIGRpcmVjdGl2ZSBpcyBib3RoIGNvbXBsaWNhdGVkIGFuZCBpbXBvcnRhbnQuICBQbGVhc2Ug c2VlDQogICAgIyBodHRwOi8vaHR0cGQuYXBhY2hlLm9yZy9kb2NzLzIuMi9tb2QvY29yZS5odG1s I29wdGlvbnMNCiAgICAjIGZvciBtb3JlIGluZm9ybWF0aW9uLg0KICAgICMNCiAgICBPcHRpb25z IEluZGV4ZXMgRm9sbG93U3ltTGlua3MNCg0KICAgICMNCiAgICAjIEFsbG93T3ZlcnJpZGUgY29u dHJvbHMgd2hhdCBkaXJlY3RpdmVzIG1heSBiZSBwbGFjZWQgaW4gLmh0YWNjZXNzIGZpbGVzLg0K ICAgICMgSXQgY2FuIGJlICJBbGwiLCAiTm9uZSIsIG9yIGFueSBjb21iaW5hdGlvbiBvZiB0aGUg a2V5d29yZHM6DQogICAgIyAgIE9wdGlvbnMgRmlsZUluZm8gQXV0aENvbmZpZyBMaW1pdA0KICAg ICMNCiAgICBBbGxvd092ZXJyaWRlIE5vbmUNCg0KICAgICMNCiAgICAjIENvbnRyb2xzIHdobyBj YW4gZ2V0IHN0dWZmIGZyb20gdGhpcyBzZXJ2ZXIuDQogICAgIw0KICAgIE9yZGVyIGFsbG93LGRl bnkNCiAgICBBbGxvdyBmcm9tIGFsbA0KDQo8L0RpcmVjdG9yeT4NCg0KIw0KIyBEaXJlY3RvcnlJ bmRleDogc2V0cyB0aGUgZmlsZSB0aGF0IEFwYWNoZSB3aWxsIHNlcnZlIGlmIGEgZGlyZWN0b3J5 DQojIGlzIHJlcXVlc3RlZC4NCiMNCjxJZk1vZHVsZSBkaXJfbW9kdWxlPg0KICAgIERpcmVjdG9y eUluZGV4IGluZGV4Lmh0bWwNCjwvSWZNb2R1bGU+DQoNCiMNCiMgVGhlIGZvbGxvd2luZyBsaW5l cyBwcmV2ZW50IC5odGFjY2VzcyBhbmQgLmh0cGFzc3dkIGZpbGVzIGZyb20gYmVpbmcgDQojIHZp ZXdlZCBieSBXZWIgY2xpZW50cy4gDQojDQo8RmlsZXNNYXRjaCAiXlwuaHQiPg0KICAgIE9yZGVy IGFsbG93LGRlbnkNCiAgICBEZW55IGZyb20gYWxsDQogICAgU2F0aXNmeSBBbGwNCjwvRmlsZXNN YXRjaD4NCg0KIw0KIyBFcnJvckxvZzogVGhlIGxvY2F0aW9uIG9mIHRoZSBlcnJvciBsb2cgZmls ZS4NCiMgSWYgeW91IGRvIG5vdCBzcGVjaWZ5IGFuIEVycm9yTG9nIGRpcmVjdGl2ZSB3aXRoaW4g YSA8VmlydHVhbEhvc3Q+DQojIGNvbnRhaW5lciwgZXJyb3IgbWVzc2FnZXMgcmVsYXRpbmcgdG8g dGhhdCB2aXJ0dWFsIGhvc3Qgd2lsbCBiZQ0KIyBsb2dnZWQgaGVyZS4gIElmIHlvdSAqZG8qIGRl ZmluZSBhbiBlcnJvciBsb2dmaWxlIGZvciBhIDxWaXJ0dWFsSG9zdD4NCiMgY29udGFpbmVyLCB0 aGF0IGhvc3QncyBlcnJvcnMgd2lsbCBiZSBsb2dnZWQgdGhlcmUgYW5kIG5vdCBoZXJlLg0KIw0K RXJyb3JMb2cgImxvZ3MvZXJyb3IubG9nIg0KDQojDQojIExvZ0xldmVsOiBDb250cm9sIHRoZSBu dW1iZXIgb2YgbWVzc2FnZXMgbG9nZ2VkIHRvIHRoZSBlcnJvcl9sb2cuDQojIFBvc3NpYmxlIHZh bHVlcyBpbmNsdWRlOiBkZWJ1ZywgaW5mbywgbm90aWNlLCB3YXJuLCBlcnJvciwgY3JpdCwNCiMg YWxlcnQsIGVtZXJnLg0KIw0KTG9nTGV2ZWwgd2Fybg0KDQo8SWZNb2R1bGUgbG9nX2NvbmZpZ19t b2R1bGU+DQogICAgIw0KICAgICMgVGhlIGZvbGxvd2luZyBkaXJlY3RpdmVzIGRlZmluZSBzb21l IGZvcm1hdCBuaWNrbmFtZXMgZm9yIHVzZSB3aXRoDQogICAgIyBhIEN1c3RvbUxvZyBkaXJlY3Rp dmUgKHNlZSBiZWxvdykuDQogICAgIw0KICAgIExvZ0Zvcm1hdCAiJWggJWwgJXUgJXQgXCIlclwi ICU+cyAlYiBcIiV7UmVmZXJlcn1pXCIgXCIle1VzZXItQWdlbnR9aVwiIiBjb21iaW5lZA0KICAg IExvZ0Zvcm1hdCAiJWggJWwgJXUgJXQgXCIlclwiICU+cyAlYiIgY29tbW9uDQoNCiAgICA8SWZN b2R1bGUgbG9naW9fbW9kdWxlPg0KICAgICAgIyBZb3UgbmVlZCB0byBlbmFibGUgbW9kX2xvZ2lv LmMgdG8gdXNlICVJIGFuZCAlTw0KICAgICAgTG9nRm9ybWF0ICIlaCAlbCAldSAldCBcIiVyXCIg JT5zICViIFwiJXtSZWZlcmVyfWlcIiBcIiV7VXNlci1BZ2VudH1pXCIgJUkgJU8iIGNvbWJpbmVk aW8NCiAgICA8L0lmTW9kdWxlPg0KDQogICAgIw0KICAgICMgVGhlIGxvY2F0aW9uIGFuZCBmb3Jt YXQgb2YgdGhlIGFjY2VzcyBsb2dmaWxlIChDb21tb24gTG9nZmlsZSBGb3JtYXQpLg0KICAgICMg SWYgeW91IGRvIG5vdCBkZWZpbmUgYW55IGFjY2VzcyBsb2dmaWxlcyB3aXRoaW4gYSA8VmlydHVh bEhvc3Q+DQogICAgIyBjb250YWluZXIsIHRoZXkgd2lsbCBiZSBsb2dnZWQgaGVyZS4gIENvbnRy YXJpd2lzZSwgaWYgeW91ICpkbyoNCiAgICAjIGRlZmluZSBwZXItPFZpcnR1YWxIb3N0PiBhY2Nl c3MgbG9nZmlsZXMsIHRyYW5zYWN0aW9ucyB3aWxsIGJlDQogICAgIyBsb2dnZWQgdGhlcmVpbiBh bmQgKm5vdCogaW4gdGhpcyBmaWxlLg0KICAgICMNCiAgICBDdXN0b21Mb2cgImxvZ3MvYWNjZXNz LmxvZyIgY29tbW9uDQoNCiAgICAjDQogICAgIyBJZiB5b3UgcHJlZmVyIGEgbG9nZmlsZSB3aXRo IGFjY2VzcywgYWdlbnQsIGFuZCByZWZlcmVyIGluZm9ybWF0aW9uDQogICAgIyAoQ29tYmluZWQg TG9nZmlsZSBGb3JtYXQpIHlvdSBjYW4gdXNlIHRoZSBmb2xsb3dpbmcgZGlyZWN0aXZlLg0KICAg ICMNCiAgICAjQ3VzdG9tTG9nICJsb2dzL2FjY2Vzcy5sb2ciIGNvbWJpbmVkDQo8L0lmTW9kdWxl Pg0KDQo8SWZNb2R1bGUgYWxpYXNfbW9kdWxlPg0KICAgICMNCiAgICAjIFJlZGlyZWN0OiBBbGxv d3MgeW91IHRvIHRlbGwgY2xpZW50cyBhYm91dCBkb2N1bWVudHMgdGhhdCB1c2VkIHRvIA0KICAg ICMgZXhpc3QgaW4geW91ciBzZXJ2ZXIncyBuYW1lc3BhY2UsIGJ1dCBkbyBub3QgYW55bW9yZS4g VGhlIGNsaWVudCANCiAgICAjIHdpbGwgbWFrZSBhIG5ldyByZXF1ZXN0IGZvciB0aGUgZG9jdW1l bnQgYXQgaXRzIG5ldyBsb2NhdGlvbi4NCiAgICAjIEV4YW1wbGU6DQogICAgIyBSZWRpcmVjdCBw ZXJtYW5lbnQgL2ZvbyBodHRwOi8vbGRuMWRwYzM4My5nbG9iZW9wLmNvbS9iYXINCg0KICAgICMN CiAgICAjIEFsaWFzOiBNYXBzIHdlYiBwYXRocyBpbnRvIGZpbGVzeXN0ZW0gcGF0aHMgYW5kIGlz IHVzZWQgdG8NCiAgICAjIGFjY2VzcyBjb250ZW50IHRoYXQgZG9lcyBub3QgbGl2ZSB1bmRlciB0 aGUgRG9jdW1lbnRSb290Lg0KICAgICMgRXhhbXBsZToNCiAgICAjIEFsaWFzIC93ZWJwYXRoIC9m dWxsL2ZpbGVzeXN0ZW0vcGF0aA0KICAgICMNCiAgICAjIElmIHlvdSBpbmNsdWRlIGEgdHJhaWxp bmcgLyBvbiAvd2VicGF0aCB0aGVuIHRoZSBzZXJ2ZXIgd2lsbA0KICAgICMgcmVxdWlyZSBpdCB0 byBiZSBwcmVzZW50IGluIHRoZSBVUkwuICBZb3Ugd2lsbCBhbHNvIGxpa2VseQ0KICAgICMgbmVl ZCB0byBwcm92aWRlIGEgPERpcmVjdG9yeT4gc2VjdGlvbiB0byBhbGxvdyBhY2Nlc3MgdG8NCiAg ICAjIHRoZSBmaWxlc3lzdGVtIHBhdGguDQoNCiAgICAjDQogICAgIyBTY3JpcHRBbGlhczogVGhp cyBjb250cm9scyB3aGljaCBkaXJlY3RvcmllcyBjb250YWluIHNlcnZlciBzY3JpcHRzLiANCiAg ICAjIFNjcmlwdEFsaWFzZXMgYXJlIGVzc2VudGlhbGx5IHRoZSBzYW1lIGFzIEFsaWFzZXMsIGV4 Y2VwdCB0aGF0DQogICAgIyBkb2N1bWVudHMgaW4gdGhlIHRhcmdldCBkaXJlY3RvcnkgYXJlIHRy ZWF0ZWQgYXMgYXBwbGljYXRpb25zIGFuZA0KICAgICMgcnVuIGJ5IHRoZSBzZXJ2ZXIgd2hlbiBy ZXF1ZXN0ZWQgcmF0aGVyIHRoYW4gYXMgZG9jdW1lbnRzIHNlbnQgdG8gdGhlDQogICAgIyBjbGll bnQuICBUaGUgc2FtZSBydWxlcyBhYm91dCB0cmFpbGluZyAiLyIgYXBwbHkgdG8gU2NyaXB0QWxp YXMNCiAgICAjIGRpcmVjdGl2ZXMgYXMgdG8gQWxpYXMuDQogICAgIw0KICAgIFNjcmlwdEFsaWFz IC9jZ2ktYmluLyAiRDovQXBwcy9BcGFjaGUyLjIvY2dpLWJpbi8iDQoNCjwvSWZNb2R1bGU+DQoN CjxJZk1vZHVsZSBjZ2lkX21vZHVsZT4NCiAgICAjDQogICAgIyBTY3JpcHRTb2NrOiBPbiB0aHJl YWRlZCBzZXJ2ZXJzLCBkZXNpZ25hdGUgdGhlIHBhdGggdG8gdGhlIFVOSVgNCiAgICAjIHNvY2tl dCB1c2VkIHRvIGNvbW11bmljYXRlIHdpdGggdGhlIENHSSBkYWVtb24gb2YgbW9kX2NnaWQuDQog ICAgIw0KICAgICNTY3JpcHRzb2NrIGxvZ3MvY2dpc29jaw0KPC9JZk1vZHVsZT4NCg0KIw0KIyAi RDovQXBwcy9BcGFjaGUyLjIvY2dpLWJpbiIgc2hvdWxkIGJlIGNoYW5nZWQgdG8gd2hhdGV2ZXIg eW91ciBTY3JpcHRBbGlhc2VkDQojIENHSSBkaXJlY3RvcnkgZXhpc3RzLCBpZiB5b3UgaGF2ZSB0 aGF0IGNvbmZpZ3VyZWQuDQojDQo8RGlyZWN0b3J5ICJEOi9BcHBzL0FwYWNoZTIuMi9jZ2ktYmlu Ij4NCiAgICBBbGxvd092ZXJyaWRlIE5vbmUNCiAgICBPcHRpb25zIE5vbmUNCiAgICBPcmRlciBh bGxvdyxkZW55DQogICAgQWxsb3cgZnJvbSBhbGwNCjwvRGlyZWN0b3J5Pg0KDQojDQojIERlZmF1 bHRUeXBlOiB0aGUgZGVmYXVsdCBNSU1FIHR5cGUgdGhlIHNlcnZlciB3aWxsIHVzZSBmb3IgYSBk b2N1bWVudA0KIyBpZiBpdCBjYW5ub3Qgb3RoZXJ3aXNlIGRldGVybWluZSBvbmUsIHN1Y2ggYXMg ZnJvbSBmaWxlbmFtZSBleHRlbnNpb25zLg0KIyBJZiB5b3VyIHNlcnZlciBjb250YWlucyBtb3N0 bHkgdGV4dCBvciBIVE1MIGRvY3VtZW50cywgInRleHQvcGxhaW4iIGlzDQojIGEgZ29vZCB2YWx1 ZS4gIElmIG1vc3Qgb2YgeW91ciBjb250ZW50IGlzIGJpbmFyeSwgc3VjaCBhcyBhcHBsaWNhdGlv bnMNCiMgb3IgaW1hZ2VzLCB5b3UgbWF5IHdhbnQgdG8gdXNlICJhcHBsaWNhdGlvbi9vY3RldC1z dHJlYW0iIGluc3RlYWQgdG8NCiMga2VlcCBicm93c2VycyBmcm9tIHRyeWluZyB0byBkaXNwbGF5 IGJpbmFyeSBmaWxlcyBhcyB0aG91Z2ggdGhleSBhcmUNCiMgdGV4dC4NCiMNCkRlZmF1bHRUeXBl IHRleHQvcGxhaW4NCg0KPElmTW9kdWxlIG1pbWVfbW9kdWxlPg0KICAgICMNCiAgICAjIFR5cGVz Q29uZmlnIHBvaW50cyB0byB0aGUgZmlsZSBjb250YWluaW5nIHRoZSBsaXN0IG9mIG1hcHBpbmdz IGZyb20NCiAgICAjIGZpbGVuYW1lIGV4dGVuc2lvbiB0byBNSU1FLXR5cGUuDQogICAgIw0KICAg IFR5cGVzQ29uZmlnIGNvbmYvbWltZS50eXBlcw0KDQogICAgIw0KICAgICMgQWRkVHlwZSBhbGxv d3MgeW91IHRvIGFkZCB0byBvciBvdmVycmlkZSB0aGUgTUlNRSBjb25maWd1cmF0aW9uDQogICAg IyBmaWxlIHNwZWNpZmllZCBpbiBUeXBlc0NvbmZpZyBmb3Igc3BlY2lmaWMgZmlsZSB0eXBlcy4N CiAgICAjDQogICAgI0FkZFR5cGUgYXBwbGljYXRpb24veC1nemlwIC50Z3oNCiAgICAjDQogICAg IyBBZGRFbmNvZGluZyBhbGxvd3MgeW91IHRvIGhhdmUgY2VydGFpbiBicm93c2VycyB1bmNvbXBy ZXNzDQogICAgIyBpbmZvcm1hdGlvbiBvbiB0aGUgZmx5LiBOb3RlOiBOb3QgYWxsIGJyb3dzZXJz IHN1cHBvcnQgdGhpcy4NCiAgICAjDQogICAgI0FkZEVuY29kaW5nIHgtY29tcHJlc3MgLloNCiAg ICAjQWRkRW5jb2RpbmcgeC1nemlwIC5neiAudGd6DQogICAgIw0KICAgICMgSWYgdGhlIEFkZEVu Y29kaW5nIGRpcmVjdGl2ZXMgYWJvdmUgYXJlIGNvbW1lbnRlZC1vdXQsIHRoZW4geW91DQogICAg IyBwcm9iYWJseSBzaG91bGQgZGVmaW5lIHRob3NlIGV4dGVuc2lvbnMgdG8gaW5kaWNhdGUgbWVk aWEgdHlwZXM6DQogICAgIw0KICAgIEFkZFR5cGUgYXBwbGljYXRpb24veC1jb21wcmVzcyAuWg0K ICAgIEFkZFR5cGUgYXBwbGljYXRpb24veC1nemlwIC5neiAudGd6DQoNCiAgICAjDQogICAgIyBB ZGRIYW5kbGVyIGFsbG93cyB5b3UgdG8gbWFwIGNlcnRhaW4gZmlsZSBleHRlbnNpb25zIHRvICJo YW5kbGVycyI6DQogICAgIyBhY3Rpb25zIHVucmVsYXRlZCB0byBmaWxldHlwZS4gVGhlc2UgY2Fu IGJlIGVpdGhlciBidWlsdCBpbnRvIHRoZSBzZXJ2ZXINCiAgICAjIG9yIGFkZGVkIHdpdGggdGhl IEFjdGlvbiBkaXJlY3RpdmUgKHNlZSBiZWxvdykNCiAgICAjDQogICAgIyBUbyB1c2UgQ0dJIHNj cmlwdHMgb3V0c2lkZSBvZiBTY3JpcHRBbGlhc2VkIGRpcmVjdG9yaWVzOg0KICAgICMgKFlvdSB3 aWxsIGFsc28gbmVlZCB0byBhZGQgIkV4ZWNDR0kiIHRvIHRoZSAiT3B0aW9ucyIgZGlyZWN0aXZl LikNCiAgICAjDQogICAgI0FkZEhhbmRsZXIgY2dpLXNjcmlwdCAuY2dpDQoNCiAgICAjIEZvciB0 eXBlIG1hcHMgKG5lZ290aWF0ZWQgcmVzb3VyY2VzKToNCiAgICAjQWRkSGFuZGxlciB0eXBlLW1h cCB2YXINCg0KICAgICMNCiAgICAjIEZpbHRlcnMgYWxsb3cgeW91IHRvIHByb2Nlc3MgY29udGVu dCBiZWZvcmUgaXQgaXMgc2VudCB0byB0aGUgY2xpZW50Lg0KICAgICMNCiAgICAjIFRvIHBhcnNl IC5zaHRtbCBmaWxlcyBmb3Igc2VydmVyLXNpZGUgaW5jbHVkZXMgKFNTSSk6DQogICAgIyAoWW91 IHdpbGwgYWxzbyBuZWVkIHRvIGFkZCAiSW5jbHVkZXMiIHRvIHRoZSAiT3B0aW9ucyIgZGlyZWN0 aXZlLikNCiAgICAjDQogICAgI0FkZFR5cGUgdGV4dC9odG1sIC5zaHRtbA0KICAgICNBZGRPdXRw dXRGaWx0ZXIgSU5DTFVERVMgLnNodG1sDQo8L0lmTW9kdWxlPg0KDQojDQojIFRoZSBtb2RfbWlt ZV9tYWdpYyBtb2R1bGUgYWxsb3dzIHRoZSBzZXJ2ZXIgdG8gdXNlIHZhcmlvdXMgaGludHMgZnJv bSB0aGUNCiMgY29udGVudHMgb2YgdGhlIGZpbGUgaXRzZWxmIHRvIGRldGVybWluZSBpdHMgdHlw ZS4gIFRoZSBNSU1FTWFnaWNGaWxlDQojIGRpcmVjdGl2ZSB0ZWxscyB0aGUgbW9kdWxlIHdoZXJl IHRoZSBoaW50IGRlZmluaXRpb25zIGFyZSBsb2NhdGVkLg0KIw0KI01JTUVNYWdpY0ZpbGUgY29u Zi9tYWdpYw0KDQojDQojIEN1c3RvbWl6YWJsZSBlcnJvciByZXNwb25zZXMgY29tZSBpbiB0aHJl ZSBmbGF2b3JzOg0KIyAxKSBwbGFpbiB0ZXh0IDIpIGxvY2FsIHJlZGlyZWN0cyAzKSBleHRlcm5h bCByZWRpcmVjdHMNCiMNCiMgU29tZSBleGFtcGxlczoNCiNFcnJvckRvY3VtZW50IDUwMCAiVGhl IHNlcnZlciBtYWRlIGEgYm9vIGJvby4iDQojRXJyb3JEb2N1bWVudCA0MDQgL21pc3NpbmcuaHRt bA0KI0Vycm9yRG9jdW1lbnQgNDA0ICIvY2dpLWJpbi9taXNzaW5nX2hhbmRsZXIucGwiDQojRXJy b3JEb2N1bWVudCA0MDIgaHR0cDovL2xkbjFkcGMzODMuZ2xvYmVvcC5jb20vc3Vic2NyaXB0aW9u X2luZm8uaHRtbA0KIw0KDQojDQojIEVuYWJsZU1NQVAgYW5kIEVuYWJsZVNlbmRmaWxlOiBPbiBz eXN0ZW1zIHRoYXQgc3VwcG9ydCBpdCwgDQojIG1lbW9yeS1tYXBwaW5nIG9yIHRoZSBzZW5kZmls ZSBzeXNjYWxsIGlzIHVzZWQgdG8gZGVsaXZlcg0KIyBmaWxlcy4gIFRoaXMgdXN1YWxseSBpbXBy b3ZlcyBzZXJ2ZXIgcGVyZm9ybWFuY2UsIGJ1dCBtdXN0DQojIGJlIHR1cm5lZCBvZmYgd2hlbiBz ZXJ2aW5nIGZyb20gbmV0d29ya2VkLW1vdW50ZWQgDQojIGZpbGVzeXN0ZW1zIG9yIGlmIHN1cHBv cnQgZm9yIHRoZXNlIGZ1bmN0aW9ucyBpcyBvdGhlcndpc2UNCiMgYnJva2VuIG9uIHlvdXIgc3lz dGVtLg0KIw0KI0VuYWJsZU1NQVAgb2ZmDQojRW5hYmxlU2VuZGZpbGUgb2ZmDQoNCiMgU3VwcGxl bWVudGFsIGNvbmZpZ3VyYXRpb24NCiMNCiMgVGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgaW4gdGhl IGNvbmYvZXh0cmEvIGRpcmVjdG9yeSBjYW4gYmUgDQojIGluY2x1ZGVkIHRvIGFkZCBleHRyYSBm ZWF0dXJlcyBvciB0byBtb2RpZnkgdGhlIGRlZmF1bHQgY29uZmlndXJhdGlvbiBvZiANCiMgdGhl IHNlcnZlciwgb3IgeW91IG1heSBzaW1wbHkgY29weSB0aGVpciBjb250ZW50cyBoZXJlIGFuZCBj aGFuZ2UgYXMgDQojIG5lY2Vzc2FyeS4NCg0KIyBTZXJ2ZXItcG9vbCBtYW5hZ2VtZW50IChNUE0g c3BlY2lmaWMpDQojSW5jbHVkZSBjb25mL2V4dHJhL2h0dHBkLW1wbS5jb25mDQoNCiMgTXVsdGkt bGFuZ3VhZ2UgZXJyb3IgbWVzc2FnZXMNCiNJbmNsdWRlIGNvbmYvZXh0cmEvaHR0cGQtbXVsdGls YW5nLWVycm9yZG9jLmNvbmYNCg0KIyBGYW5jeSBkaXJlY3RvcnkgbGlzdGluZ3MNCiNJbmNsdWRl IGNvbmYvZXh0cmEvaHR0cGQtYXV0b2luZGV4LmNvbmYNCg0KIyBMYW5ndWFnZSBzZXR0aW5ncw0K I0luY2x1ZGUgY29uZi9leHRyYS9odHRwZC1sYW5ndWFnZXMuY29uZg0KDQojIFVzZXIgaG9tZSBk aXJlY3Rvcmllcw0KI0luY2x1ZGUgY29uZi9leHRyYS9odHRwZC11c2VyZGlyLmNvbmYNCg0KIyBS ZWFsLXRpbWUgaW5mbyBvbiByZXF1ZXN0cyBhbmQgY29uZmlndXJhdGlvbg0KI0luY2x1ZGUgY29u Zi9leHRyYS9odHRwZC1pbmZvLmNvbmYNCg0KIyBWaXJ0dWFsIGhvc3RzDQojSW5jbHVkZSBjb25m L2V4dHJhL2h0dHBkLXZob3N0cy5jb25mDQoNCiMgTG9jYWwgYWNjZXNzIHRvIHRoZSBBcGFjaGUg SFRUUCBTZXJ2ZXIgTWFudWFsDQojSW5jbHVkZSBjb25mL2V4dHJhL2h0dHBkLW1hbnVhbC5jb25m DQoNCiMgRGlzdHJpYnV0ZWQgYXV0aG9yaW5nIGFuZCB2ZXJzaW9uaW5nIChXZWJEQVYpDQojSW5j bHVkZSBjb25mL2V4dHJhL2h0dHBkLWRhdi5jb25mDQoNCiMgVmFyaW91cyBkZWZhdWx0IHNldHRp bmdzDQojSW5jbHVkZSBjb25mL2V4dHJhL2h0dHBkLWRlZmF1bHQuY29uZg0KU2V0RW52IFNZQkFT RV9KUkUgWjpcQXBwc1xzeWJhc2Vcc2hhcmVkLTFfMFxKUkUtMV8zDQpTZXRFbnYgU1lCQVNFIFo6 XEFwcHNcc3liYXNlDQpTZXRFbnYgU1lCQVNFX09DUyBPQ1MtMTJfNQ0KU2V0RW52IFBBVEggWjpc QXBwc1xzeWJhc2VcT0NTLTEyXzVcYmluO1o6XEFwcHNcc3liYXNlXE9DUy0xMl81XGRsbDtaOlxB cHBzXHN5YmFzZVxPQ1MtMTJfNVxsaWIzcDslUEFUSCUNClNldEVudiBTWUJBU0UgWjpcQXBwc1xz eWJhc2UNClNldEVudiBTWUJBU0UgWjpcQXBwc1xzeWJhc2UNClNldEVudiBMRF9MSUJSQVJZX1BB VEggWjpcQXBwc1xzeWJhc2VcT0NTLTEyXzVcZGxsDQpTZXRFbnYgTElCIFo6XEFwcHNcc3liYXNl XE9DUy0xMl81XGxpYjtaOlxBcHBzXHN5YmFzZVxPQ1MtMTJfNVxsaWIzcA0KIyBTZWN1cmUgKFNT TC9UTFMpIGNvbm5lY3Rpb25zDQojSW5jbHVkZSBjb25mL2V4dHJhL2h0dHBkLXNzbC5jb25mDQoj DQojIE5vdGU6IFRoZSBmb2xsb3dpbmcgbXVzdCBtdXN0IGJlIHByZXNlbnQgdG8gc3VwcG9ydA0K IyAgICAgICBzdGFydGluZyB3aXRob3V0IFNTTCBvbiBwbGF0Zm9ybXMgd2l0aCBubyAvZGV2L3Jh bmRvbSBlcXVpdmFsZW50DQojICAgICAgIGJ1dCBhIHN0YXRpY2FsbHkgY29tcGlsZWQtaW4gbW9k X3NzbC4NCiMNCjxJZk1vZHVsZSBzc2xfbW9kdWxlPg0KU1NMUmFuZG9tU2VlZCBzdGFydHVwIGJ1 aWx0aW4NClNTTFJhbmRvbVNlZWQgY29ubmVjdCBidWlsdGluDQo8L0lmTW9kdWxlPg0K ------_=_NextPart_001_01C96109.43121EE7--