R eSSKJrJr SSKrSSKrSSKJr SSKJ r Sr /SQr S\ -r \ "5S-\RR5S-r\ S -\-r"S S \5r"S S \5r"SS\5rSr\\4Sjr\S:Xaf\"SS\5r\R0R35r\"S\SS\SS5 SSKr\R:"S5 \R=5 SSS5 gg!,(df  g=f))BaseHTTPRequestHandler HTTPServerN) SimpleHandler)python_implementationz0.2) WSGIServerWSGIRequestHandlerdemo_app make_server WSGIServer// c\rSrSr\rSrSrg) ServerHandlercURRURRSS5SUR5 [ R "U5 g![ R "U5 f=f)Nr r)request_handler log_requeststatussplit bytes_sentrcloseselfs rAr$rr%rrr*sK   'r%rc0\rSrSrS\-rSrSrSrSr g)rGr crURRR5nURUS'URUS'UR US'SUR ;aUR RSS5up#O UR Sp2[RRUS5US'X1S 'URS US 'URRS 5cURR5US 'OURS US 'URRS5nU(aXAS'URR5H`upVUR!SS5R#5oVR%5nXQ;aM;SU-U;aUSU-==SU-- ss'MYXaSU-'Mb U$)NSERVER_PROTOCOLSERVER_SOFTWAREREQUEST_METHOD?rr1z iso-8859-1 PATH_INFO QUERY_STRINGr REMOTE_ADDRz content-type CONTENT_TYPEzcontent-lengthr3-_HTTP_,)serverr5copyrequest_versionserver_versioncommandpathrurllibparseunquoteclient_addressheadersgetget_content_typeitemsreplaceupperstrip)rr9rWquerylengthkvs r get_environWSGIRequestHandler.get_environKskk&&++-!%!5!5 !%!4!4  $   $)) Q/JD2!<<//lCK#N!003M <<  N + 3"&,,"?"?"AC "&,,~">C !!"23 $* !LL&&(DAiiC &&(AGGI!xqyCGAI#a%'!"GAI) r%c"[R$r))sysstderrrs r get_stderrWSGIRequestHandler.get_stderrls zzr%cURRS5Ul[UR5S:a'SUlSUlSUlURS5 gUR5(dg[URURUR5UR5SS9nXl URURR!55 g)Niir1iF) multithread)rfilereadlineraw_requestlinelen requestlinerTrV send_error parse_requestrwfilerlrgrrunrRr>)rhandlers rhandleWSGIRequestHandler.handleos $zz2259 t## $u ,!D #%D DL OOC !!##  JJ DOO$5t7G7G7I #' DKK'')*r%)rVrrrTrtN) rrr r! __version__rUrgrlrzr$rr%rrrGs"[0NB+r%rcSSKJn U"5n[SUS9 [US9 [UR 55nUHupV[US[ U5US9 M U"SS/5 UR 5RS5/$) Nr)StringIOz Hello world!)file=z200 OK)z Content-Typeztext/plain; charset=utf-8zutf-8)ior~printsortedr_reprgetvalueencode)environstart_responser~stdouthrerfs rr r su ZF .v& vw}}A aDG&)8JKL OO  $ $W - ..r%c<U"X4U5nURU5 U$r))rA)hostportapp server_class handler_classrRs rr r s#4, 6F NN3 Mr%__main__r1i@zServing HTTP onrrz...zhttp://localhost:8000/xyz?abc) http.serverrrrj urllib.parserXwsgiref.handlersrplatformrr|__all__rUversionr sys_versionr"rrrr r rhttpdsocket getsocknamesar webbrowseropenhandle_requestrr%rrs ; ** I,#%+ckk.?.?.A!.DD !C'+5 &M &'':;+/;+~ /#-