ÿØÿà JFIF    ÿÛ „  ( %"1!%)+...383,7(-.+  -+++--++++---+-+-----+---------------+---+-++7-----ÿÀ  ß â" ÿÄ     ÿÄ H    !1AQaq"‘¡2B±ÁÑð#R“Ò Tbr‚²á3csƒ’ÂñDS¢³$CÿÄ   ÿÄ %  !1AQa"23‘ÿÚ   ? ôÿ ¨pŸªáÿ —åYõõ\?àÒü©ŠÄï¨pŸªáÿ —åYõõ\?àÓü©ŠÄá 0Ÿªáÿ Ÿå[úƒ ú®ði~TÁbqÐ8OÕpÿ ƒOò¤Oè`–RÂáœá™êi€ßÉ< FtŸI“öÌ8úDf´°å}“¾œ6  öFá°y¥jñÇh†ˆ¢ã/ÃÐ:ªcÈ "Y¡ðÑl>ÿ ”ÏËte:qž\oäŠe÷󲍷˜HT4&ÿ ÓÐü6ö®¿øþßèô Ÿ•7Ñi’•j|“ñì>b…þS?*Óôÿ ÓÐü*h¥£ír¶ü UãS炟[AÐaè[ûª•õ&õj?†Éö+EzP—WeÒírJFt ‘BŒ†Ï‡%#tE Øz ¥OÛ«!1›üä±Í™%ºÍãö]°î(–:@<‹ŒÊö×òÆt¦ãº+‡¦%ÌÁ²h´OƒJŒtMÜ>ÀÜÊw3Y´•牋4ǍýʏTì>œú=Íwhyë,¾Ôò×õ¿ßÊa»«þˆѪQ|%6ž™A õ%:øj<>É—ÿ Å_ˆCbõ¥š±ý¯Ýƒï…¶|RëócÍf溪“t.СøTÿ *Ä¿-{†çàczůŽ_–^XþŒ±miB[X±d 1,é”zEù»& î9gœf™9Ð'.;—™i}!ôšåîqêÛ٤ёý£½ÆA–àôe"A$˝Úsäÿ ÷Û #°xŸëí(l »ý3—¥5m! rt`†0~'j2(]S¦¦kv,ÚÇ l¦øJA£Šƒ J3E8ÙiŽ:cÉžúeZ°€¯\®kÖ(79«Ž:¯X”¾³Š&¡* ….‰Ž(ÜíŸ2¥ª‡×Hi²TF¤ò[¨íÈRëÉ䢍mgÑ.Ÿ<öäS0í„ǹÁU´f#Vß;Õ–…P@3ío<ä-±»Ž.L|kªÀê›fÂ6@»eu‚|ÓaÞÆŸ…¨ááå>åŠ?cKü6ùTÍÆ”†sĤÚ;H2RÚ†õ\Ö·Ÿn'¾ ñ#ºI¤Å´%çÁ­‚â7›‹qT3Iï¨ÖÚ5I7Ë!ÅOóŸ¶øÝñØôת¦$Tcö‘[«Ö³šÒ';Aþ ¸èíg A2Z"i¸vdÄ÷.iõ®§)¿]¤À†–‡É&ä{V¶iŽ”.Ó×Õÿ û?h¬Mt–íª[ÿ Ñÿ ÌV(í}=ibÔ¡›¥¢±b Lô¥‡piη_Z<‡z§èŒ)iÖwiÇ 2hÙ3·=’d÷8éŽ1¦¸c¤µ€7›7Ø ð\á)} ¹fËí›pAÃL%âc2 í§æQz¿;T8sæ°qø)QFMð‰XŒÂ±N¢aF¨…8¯!U  Z©RÊ ÖPVÄÀÍin™Ì-GˆªÅËŠ›•zË}º±ŽÍFò¹}Uw×#ä5B¤{î}Ð<ÙD é©¤&‡ïDbàÁôMÁ." ¤‡ú*õ'VŽ|¼´Úgllº¼klz[Æüï÷Aób‡Eÿ dÑ»Xx9ÃÜ£ÁT/`¼¸vI±Ýµ·Ë‚“G³þ*Ÿû´r|*}<¨îºœ @¦mÄ’M¹”.œ«Y–|6ÏU¤jç¥ÕÞqO ˜kDÆÁ¨5ÿ š;ÐЦ¦€GÙk \ –Þ=â¼=SͧµªS°ÚÍpÜãQűÀõ¬?ÃÁ1Ñ•õZà?hóœ€ L¦l{Y*K˜Ù›zc˜–ˆâ ø+¾ ­-Ök¥%ùEÜA'}ˆ><ÊIè“bpÍ/qÞâvoX€w,\úªò6Z[XdÒæ­@Ö—€$òJí#é>'°Ú ôª˜<)4ryÙ£|óAÅn5žêŸyÒäMÝ2{"}‰–¤l÷ûWX\l¾Á¸góÉOÔ /óñB¤f¸çñ[.P˜ZsÊË*ßT܈§QN¢’¡¨§V¼(Üù*eÕ“”5T¨‹Âê¥FŒã½Dü[8'Ò¥a…Ú¶k7a *•›¼'Ò·\8¨ª\@\õ¢¦íq+DÙrmÎ…_ªæ»ŠÓœ¡¯’Ré9MÅ×D™lælffc+ŒÑ,ý™ÿ ¯þǤ=Å’Á7µ÷ÚÛ/“Ü€ñýã¼àí¾ÕÑ+ƒ,uµMâÀÄbm:ÒÎPæ{˜Gz[ƒ¯«® KHà`ߨŠéí¯P8Aq.C‰ à€kòpj´kN¶qô€…Õ,ÜNŠª-­{Zö’æû44‰sŽè‰îVíRœÕm" 6?³D9¡ÇTíÅꋇ`4«¸ÝÁô ï’ýorqКÇZ«x4Žâéþuïf¹µö[P ,Q£éaX±`PÉÍZ ¸äYúg üAx ’6Lê‚xÝÓ*äQ  Ï’¨hÍ =²,6ï#rÃ<¯–£»ƒ‹,–ê•€ aÛsñ'%Æ"®ÛüìBᝠHÚ3ß°©$“XnœÖ’î2ËTeûìxîß ¦å¿çÉ ðK§þ{‘t‚Ϋ¬jéîZ[ ”š7L¥4VÚCE×]m¤Øy”ä4-dz£œ§¸x.*ãÊÊ b÷•h:©‡¦s`BTÁRû¾g⻩‹jø sF¢àJøFl‘È•Xᓁà~*j¯ +(ÚÕ6-£¯÷GŠØy‚<Ç’.F‹Hœw(+)ÜÜâÈzÄäT§FߘãÏ;DmVœ3Àu@mÚüXÝü•3B¨òÌÁÛ<·ÃÜ z,Ì@õÅ·d2]ü8s÷IôÞ¯^Ç9¢u„~ëAŸï4«M? K]­ÅàPl@s_ p:°¬ZR”´›JC[CS.h‹ƒïËœ«Æ]–÷ó‚wR×k7X‰k›‘´ù¦=¡«‰¨¨Â')—71ó’c‡Ðúµ `é.{§p¹ój\Ž{1h{o±Ý=áUÊïGÖŒõ–-BÄm+AZX¶¡ ïHðæ¥JmÙ;…䡟ˆ¦ ° äšiÉg«$üMk5¤L“’çÊvïâï ,=f“"íἊ5ô¬x6{ɏžID0e¸vçmi'︧ºð9$ò¹÷*£’9ÿ ²TÔ…×>JV¥}Œ}$p[bÔ®*[jzS*8 ”·T›Í–ñUîƒwo$áè=LT™ç—~ô·¤ÈÚ$榍q‰„+´kFm)ž‹©i–ËqÞŠ‰à¶ü( ‚•§ •°ò·‡#5ª•µÊ﯅¡X¨šÁ*F#TXJÊ ušJVÍ&=iÄs1‚3•'fý§5Ñ<=[íÞ­ PÚ;ѱÌ_~Ä££8rÞ ²w;’hDT°>ÈG¬8Á²ÚzŽ®ò®qZcqJêäÞ-ö[ܘbň±çb“ж31²n×iƒðÕ;1¶þÉ ªX‰,ßqÏ$>•î íZ¥Z 1{ç൵+ƒÕµ¥°T$§K]á»Ûï*·¤tMI’ÂZbŽÕiÒ˜}bÓ0£ª5›¨ [5Ž^ÝœWøÂÝh° ¢OWun£¤5 a2Z.G2³YL]jåtì”ä ÁÓ‘%"©<Ôúʰsº UZvä‡ÄiÆÒM .÷V·™ø#kèýiíÌ–ª)µT[)BˆõÑ xB¾B€ÖT¨.¥~ð@VĶr#¸ü*åZNDŽH;âi ],©£öØpù(šºãö¼T.uCê•4@ÿ GÕÛ)Cx›®0ø#:ÏðFÒbR\(€€Ä®fã4Þ‰Fä¯HXƒÅ,†öEÑÔÜ]Öv²?tLÃvBY£ú6Êu5ÅAQ³1‘’¬x–HŒÐ‡ ^ ¸KwJôÖŽ5×CÚ¨vÜ«/B0$×k°=ðbÇ(Ï)w±A†Á† 11Í=èQšµ626ŒÜ/`G«µ<}—-Ö7KEHÈÉðóȤmݱû±·ø«Snmá=“䫚mݱŸ¡¶~ó·“äUóJæúòB|E LêŽy´jDÔ$G¢þÐñ7óR8ýÒ…Ç› WVe#·Ÿ p·Fx~•ݤF÷0Èÿ K¯æS<6’¡WШ; ´ÿ ¥Êø\Òuî†åÝ–VNœkÒ7oòX¨Á­Ø÷FÎÑä±g÷ÿ M~Çî=p,X´ ÝÌÚÅ‹’ÃjÖ.ØöÏñ qïQ¤ÓZE†° =6·]܈ s¸>v•Ž^Ý\wq9r‰Î\¸¡kURÒ$­*‹Nq?Þª*!sŠÆ:TU_u±T+øX¡ ®¹¡,ÄâÃBTsÜ$Ø›4m椴zÜK]’’›Pƒ @€#â˜`é¹=I‡fiV•Ôî“nRm+µFPOhÍ0B£ €+¬5c v•:P'ÒyÎ ‰V~‚Ó†ÖuókDoh$å\*ö%Ю=£«…aȼ½÷Û.-½VŒŠ¼'lyî±1¬3ó#ÞE¿ÔS¤gV£m›=§\û"—WU¤ÚǼÿ ÂnÁGŒÃ ‚õN D³õNÚíŒÕ;HôyÄÈ©P¹Ä{:?R‘Ô¨âF÷ø£bÅó® JS|‚R÷ivýáâ€Æé¡è³´IئÑT!§˜•ت‚¬â@q€wnïCWÄ@JU€ê¯m6]Ï:£âx'+ÒðXvÓ¦Úm=–´7œ $ì“B£~p%ÕŸUþ« N@¼üï~w˜ñø5®—'Ôe»¤5ã//€ž~‰Tþ›Å7•#¤× Íö pÄ$ùeåì*«ÓŠEØWEÈsßg ¦ûvžSsLpºÊW–âµEWöˬH; ™!CYõZ ÃÄf æ#1W. \uWâ\,\Çf j’<qTbên›Î[vxx£ë 'ö¨1›˜ÀM¼Pÿ H)ƒêêŒA7s,|F“ 꺸k³9Ìö*ç®;Ö!Ö$Eiž•¹ÒÚ†ýóéÝû¾ÕS®ó$’NÝäŸz¤5r¦ãÄÃD÷Üø!°ø‡Ô&@m™Ì^Ãä­d q5Lnÿ N;.6½·N|#ä"1Nƒx“ã<3('&ñßt  ~ªu”1Tb㫨9ê–›–bìd$ߣ=#ÕãÒmU¯eí$EFù5ýYô櫨æì™Ç—±ssM]·á¿0ÕåJRÓªîiƒ+O58ÖñªŠÒx" \µâá¨i’¤i —Ö ” M+M¤ë9‚‰A¦°Qõ¾ßøK~¼Ã‘g…Ö´~÷Ï[3GUœÒ½#…kàÔ®Ò”‰³·dWV‰IP‰Ú8u¹”E ÖqLj¾êÕCBš{A^Âß;–¨`¯¬ìö ˼ ×tìø.tƐm*n¨y4o&Àx¥n¦×î‡aupáÛj8¿m›è¶ã!o½;ß0y^ý×^EÑ¿ÒjzŒ­)vÚÑnÄL …^ªô× ‡—‚3k Îý­hï]içå–îÏ*÷ñþ»Ô CÒjøjÍznˆ´ ¹#b'Fô‹ ‰v¥'’à'T´ƒHýÍ%M‰ ƒ&ÆÇŒï1 ‘ –Þ ‰i¬s žR-Ÿ kЬá¬7:þ 0ŒÅÒÕ/aÙ¬ÃÝ#Úøœ ©aiVc‰. ¹¦ãµ” ›Yg¦›ÆÎýº°f³7ƒhá·¸­}&D9¡ÂsÉÙÞèŠõØàC™¨ñbFC|´Ü(ŸƒÚÒ-%»'a Ì¿)ËÇn¿úÿ ÞŽX…4ÊÅH^ôΑí@ù¹Eh¶“L8Çjù ¼ÎåVªóR©Ï5uà V4lZß®=€xÖŸ–ÑÈ ÷”¨°¾__yM1tÉ?uÆþIkÄgæ@þ[¢†°XÃJ£j·:nkÅ¢u ‘}âGzö­/IµèЬ¼48q¦F°ŽR¼=ûì{´¯RýicS ÕÛ íNtÍÙï£,w4rêì®»~x(©Uñ§#Ñ&œÕ¤>ÎåÍÓ9’Ö{9eV­[Öjâ²ãu]˜å2›qÑšÕJç0€sÄ|Êëè0튔bÁ>“{×_F`Ø©ºê:µä,v¤ðfc1±"«ÔÍän1#=· Âøv~H½ÐßA¾¿Ü€Óš]Õ; I¾÷ç‚Qi†î¹9ywÔKG˜áñ zQY—§ÃÕZ07§X‚ Áh;ÁM)iÌCH-¯T‘ë|A0{Ò½LÚ–TâÖkÜ’dÀ“rmm»”جPF³ÖcbE§T€ÒxKºû’Ó®7±²(\4ŽÃ¸Uu@j™yĵ;³µ!Á¢b.W¤=mõ´êµK k ¸K^ÜÛ#p*Ü14qkZç5ïë †°5Ï%ÍÛ<Õ¤×Ô¥ê†C Õ´¼ú$ƒÖ“”]Ù¬qÞÚ[4©ý!ûÏ—Áb쳐XµA¬â~`›Çr¸8ìùÝ䫦<>ä÷«?xs´ÇÑ /á;¹øüÊÈÙà{"@Žïzâ¬[âß‚ U_<ÇŸ½4èN˜ú61®qŠu ¦þF£»äJ_ˆÙÎ~ ÞAã–݄ϗrŠD;xTž‘ô`É«…suãO`?³à™ô Lý#Íc5öoæØ‚y´´÷«ZR§<&JÇ+éâô´€i!Àˆ0æAoàðLèÖ-2ŸõW.’t^–(KÁmHµV@xÜÇy®Ñø­â^:Ú3w· 7½¹°ñ¸â¹®:',«Mœ—n­Á+Ãbš LÈ‘ÄnRÓÅœ%¦²‰¨ùQ:¤f‚ "PÕtô¸…cæl…&˜Ú˜Ôkv‹ž+vŠ,=¢v­6—Xy*¥t£«<™:“aîϲ=¦6rO]XI¿Œ÷¤zÚ­›¶ 6÷”w\d ü~v®ˆÌk«^m<ÿ ¢‰Õ\)ùºŽ;… lîÙÅEŠ®cѾ@vnMÏ,¼“ñ•ŽBxðÃzãÇç%3ˆ"}Ù•Åî> BÉú;Ò]V+P˜F_´ßé> Øše|ï‡ÄOmFæÇ ãqÞ$/xÐx­z`ï9"œÜij‚!7.\Td…9M‡•iŽ‹¾‘50ÞŽn¥ß4ÉôO ¹*í^QêËÜÇÌ8=ާs‰'ÂëÙ«á%Pú[O †ÅP¯Vsް.‰,kc¶ ¬A9n˜XÎ-ÞšN["¹QÕ‰ƒMýÁߺXJæÍaLj¾×Ãmã¾ãÚ uñÒþåQô¦¥ /ÄUx:‚ÍÜ’ Đ©ØÝ3V¨‰ÕnÐ6ó*óúK­«…c ¯U òhsý­jóÔj#,ímŒRµ«lbïUTŒÑ8†Ä0œÏr`ð¡¬É Ї ë"À² ™ 6¥ f¶ ¢ÚoܱԷ-<Àî)†a¶ž'Ú»¨TXqØæ¶÷YÄHy˜9ÈIW­YÀuMFë ºÏ’AqÌ4·/Ú †ô'i$øä­=Ä Ý|öK×40è|È6p‘0§)o¥ctî§H+CA-“ xØ|ÐXАç l8íºð3Ø:³¤¬KX¯UÿÙ xFWgc@sWdZddlZddlZddlZddlZddlZddlZddddddgZdefd YZ iZ gZ dd d Z dd Zd edZdZdZd dZejd dkrdZn dZdZdefdYZdefdYZdefdYZdefdYZdefd YZeZd!efd"YZd#efd$YZeZ d%efd&YZ!d'efd(YZ"d)efd*YZ#d+efd,YZ$d-Z%ej&jd.r$e%nej&jd/red0r[e d0ded0ned1re d1ded1ned2re d2de"d2ned3re d3ded3ned4re d4ded4qnejd dkrd5efd6YZ'gZ iZ e d7e'ej(j)ej&jd8d9d:Z*xKd;d<d=d>d?d@e*fD]+Z+ee+rte e+dee+qtqtWnejdAkrHdBefdCYZ,dDefdEYZ-e dFde-dFde d;de-d;de dGde-dGde dBde-dHdnejd dIkred?rgZ iZ e dJdedKd?dLgdndMej&kr4ej&dMj.ej/Z0e0j1xXe0D]PZ2e2dNkree2dZ3e3d dkr!e e2dee2dq!qqWdZ2[2[0ndOZ4e5dPkrSe4ndS(Qs?Interfaces for launching and remotely controlling Web browsers.iNtErrortopentopen_newt open_new_tabtgettregistercBseZRS((t__name__t __module__(((s /usr/lib/python2.7/webbrowser.pyRsicCsU||gt|j<|dkr2tj|n|dkrQtjd|ndS(s9Register a browser connector and, optionally, connection.iN(t _browserstlowert _tryordertappendtinsert(tnametklasstinstancetupdate_tryorder((s /usr/lib/python2.7/webbrowser.pyRs   cCs|dk r|g}nt}x|D]}d|krqtj|}|ddkrdt|d St|Sq%yt|j}Wntk rt |}nX|ddk r|dS|ddk r%|dSq%Wt ddS(sCReturn a browser launcher instance appropriate for the environment.s%sit&iis!could not locate runnable browserN( tNoneR tshlextsplittBackgroundBrowsertGenericBrowserRR tKeyErrort _synthesizeR(tusingt alternativestbrowsertcommand((s /usr/lib/python2.7/webbrowser.pyRs$      icCs:x3tD]+}t|}|j|||rtSqWtS(N(R RRtTruetFalse(turltnewt autoraiseR R((s /usr/lib/python2.7/webbrowser.pyR:s   cCs t|dS(Ni(R(R((s /usr/lib/python2.7/webbrowser.pyRAscCs t|dS(Ni(R(R((s /usr/lib/python2.7/webbrowser.pyRDscCs|jd}t|s&ddgStjj|}yt|j}Wntk rfddgSX|d}|r|j|jkrddl }|j |}||_ tjj||_t |d||d|gSddgS(sAttempt to synthesize a controller base on existing controllers. This is useful to create a controller when a user specifies a path to an entry in the BROWSER environment variable -- we can copy a general controller to operate using a specific installation of the desired browser in this way. If we can't create a controller in this way, or if there is no executable for the requested browser, return [None, None]. iiiN( Rt _iscommandRtostpathtbasenameRR RtcopyR R(RRtcmdR Rt controllerR&((s /usr/lib/python2.7/webbrowser.pyRHs"         itwincCs`|j}tjj|r1|jdr1tSx(dD] }tjj||r8tSq8WtS(Ns.exes.bat(s.exes.bat(s.exes.bat(R R#R$tisfiletendswithRR(R'text((s /usr/lib/python2.7/webbrowser.pyt _isexecutableis ! cCsZtjj|rVtj|tj}|tj@sO|tj@sO|tj@rVtSnt S(N( R#R$R*tstattST_MODEtS_IXUSRtS_IXGRPtS_IXOTHRR(R'tmode((s /usr/lib/python2.7/webbrowser.pyR-rs 'cCsrt|rtStjjd}|s,tSx?|jtjD]+}tjj ||}t|r?tSq?WtS(sSReturn True if cmd is executable or can be found on the executable search path.tPATH( R-RR#tenvironRRRtpathsepR$tjoin(R'R$tdtexe((s /usr/lib/python2.7/webbrowser.pyR"ys  t BaseBrowsercBsDeZdZdgZddZdedZdZdZRS(s3Parent class for all browsers. Do not use directly.s%stcCs||_||_dS(N(R R%(tselfR ((s /usr/lib/python2.7/webbrowser.pyt__init__s icCs tdS(N(tNotImplementedError(R<RR R!((s /usr/lib/python2.7/webbrowser.pyRscCs|j|dS(Ni(R(R<R((s /usr/lib/python2.7/webbrowser.pyRscCs|j|dS(Ni(R(R<R((s /usr/lib/python2.7/webbrowser.pyRs( RRt__doc__targsR=RRRR(((s /usr/lib/python2.7/webbrowser.pyR:s    RcBs&eZdZdZdedZRS(sVClass for all browsers started with a command and without remote functionality.cCs]t|tr'||_dg|_n|d|_|d|_tjj|j|_dS(Ns%sii(t isinstancet basestringR R@R#R$R%(R<R ((s /usr/lib/python2.7/webbrowser.pyR=s    icCs|jgg|jD]}|jd|^q}yItjd dkrZtj|}ntj|dt}|j SWnt k rt SXdS(Ns%siR)t close_fds( R R@treplacetsystplatformt subprocesstPopenRtwaittOSErrorR(R<RR R!targtcmdlinetp((s /usr/lib/python2.7/webbrowser.pyRs & (RRR?R=RR(((s /usr/lib/python2.7/webbrowser.pyRs RcBseZdZdedZRS(sHClass for all browsers which are to be started in the background.icCs|jgg|jD]}|jd|^q}ytjd dkrZtj|}nHttdd}|sttdd}ntj|dt d|}|j dkSWnt k rt SXdS(Ns%siR)tsetsidtsetpgrpRCt preexec_fn(R R@RDRERFRGRHtgetattrR#RRtpollRJR(R<RR R!RKRLRMRN((s /usr/lib/python2.7/webbrowser.pyRs & (RRR?RR(((s /usr/lib/python2.7/webbrowser.pyRst UnixBrowsercBsVeZdZdZddgZdZdZdZe Z e Z dZ de dZRS(s=Parent class for all Unix browsers with remote functionality.s%actions%sc Cs{g}|rC|jrCt|}|j|}|rC|g}qCn|jg||}|sf|jr{ttjd}nd}ttdd}|sttdd}nt j |dt d|d|j r|pdd|d|} |rFt jd | j} | dkrAt jd | j} | dkrAt Sn| S|jrl| jdkret StSn | j SdS( Nsr+RNRORCtstdintstdouttstderrRPii(t raise_optstintR t backgroundtfileR#tdevnullRRQRGRHRtredirect_stdoutttimetsleepRRRRI( R<R@tremoteR!t raise_opttoptRLtinoutRNRMtrc((s /usr/lib/python2.7/webbrowser.pyt_invokes<         icCs |dkr|j}n_|dkr0|j}nG|dkrc|jdkrW|j}qw|j}ntdd|g|jD]$}|jd|jd|^q}|j|t|}|sg|j D]}|jd|^q}|j|t t StSdS(NiiisBad 'new' parameter to open(); sexpected 0, 1, or 2, got %ss%ss%action( t remote_actiontremote_action_newwintremote_action_newtabRRt remote_argsRDRdRR@R(R<RR R!tactionRKR@tsuccess((s /usr/lib/python2.7/webbrowser.pyRs"       1(N(RRR?RRWRhReRfRgRRYRR\RdR(((s /usr/lib/python2.7/webbrowser.pyRSs  ,tMozillacBs>eZdZddgZddgZdZdZdZeZ RS(s-Launcher class for Mozilla/Netscape browsers.s-noraises-raises-remotesopenURL(%s%action)R;s ,new-windows,new-tab( RRR?RWRhReRfRgRRY(((s /usr/lib/python2.7/webbrowser.pyRks  tGaleoncBs8eZdZddgZddgZdZdZeZRS(s,Launcher class for Galeon/Epiphany browsers.s-noraiseR;s%actions%ss-ns-w( RRR?RWRhReRfRRY(((s /usr/lib/python2.7/webbrowser.pyRl)s   tChromecBs2eZdZddgZdZdZdZeZRS(s)Launcher class for Google Chrome browser.s%actions%sR;s --new-window( RRR?RhReRfRgRRY(((s /usr/lib/python2.7/webbrowser.pyRm3s  tOperacBs2eZdZddgZdZdZdZeZRS(s!Launcher class for Opera browser.s%actions%sR;s --new-window( RRR?RhReRfRgRRY(((s /usr/lib/python2.7/webbrowser.pyRn?s  tElinkscBs8eZdZddgZdZdZdZeZeZ RS(s#Launcher class for Elinks browsers.s-remotesopenURL(%s%action)R;s ,new-windows,new-tab( RRR?RhReRfRgRRYR\(((s /usr/lib/python2.7/webbrowser.pyRoIs t KonquerorcBseZdZdedZRS(sController for the KDE File Manager (kfm, or Konqueror). See the output of ``kfmclient --commands`` for more information on the Konqueror remote-control interface. ic Csw|dkrd}nd}ttjd}ttdd}|sZttdd}ny4tjd||gdtd |d |d |}Wntk rnX|j tSy:tjd d |gdtd |d |d |d|}Wntk rnX|j dkrtSy:tjdd|gdtd |d |d |d|}Wntk rbt SX|j dkSdS(NitnewTabtopenURLsr+RNROt kfmclientRCRTRURVt konquerors--silentRPtkfms-d( RZR#R[RQRRGRHRRJRIRRR(R<RR R!RiR[RNRM((s /usr/lib/python2.7/webbrowser.pyR^s@             (RRR?RR(((s /usr/lib/python2.7/webbrowser.pyRpWstGrailcBs)eZdZdZdedZRS(c Csddl}ddl}ddl}ddl}tjj|jd}|jtj d}tjj||d}|j|}|sdS|j|j |j } x_|D]W} y| j | Wn9|jk rytj| Wq tk rq XqX| SqWdS(Nis .grail-unixis-*(tglobtpwdtsocketttempfileR#R$R7t gettempdirtgetpwuidtgetuidRtAF_UNIXt SOCK_STREAMtconnectterrortunlinktIOError( R<RwRxRyRzttempdirtusertfilenametmaybeststfn((s /usr/lib/python2.7/webbrowser.pyt_find_grail_rcs*       cCs1|j}|sdS|j||jdS(Nii(Rtsendtclose(R<RiR((s /usr/lib/python2.7/webbrowser.pyt_remotes    icCs3|r|jd|}n|jd|}|S(NsLOADNEW sLOAD (R(R<RR R!tok((s /usr/lib/python2.7/webbrowser.pyRs(RRRRRR(((s /usr/lib/python2.7/webbrowser.pyRvs  c Csdtdr%tddtdndtjkrYtdrYtddtdndtjkrtdrtddtdndtjkrtdrtdttdntdrtddtdnx3dD]+}t|rt|dt|qqWtdrAtdttdn%tdrftdttdnx3dD]+}t|rmt|dt|qmqmWtdrtddtdnx3dD]+}t|rt|dt |qqWtdrtddt dntdrAtddtdntdr`tdt dndS( Nsxdg-opentGNOME_DESKTOP_SESSION_IDs gvfs-opens gnome-opentKDE_FULL_SESSIONRss x-www-browsersmozilla-firefoxtfirefoxsmozilla-firebirdtfirebirdt iceweaselticeapet seamonkeytmozillatnetscapeRuRttgaleontepiphanyt skipstones google-chrometchrometchromiumschromium-browsertoperatmosaictgrail( smozilla-firefoxRsmozilla-firebirdRRRRRR(RR(s google-chromeRRschromium-browser( R"RRRR#R5RpRkRlRmRnRv(R((s /usr/lib/python2.7/webbrowser.pytregister_X_browserssD              tDISPLAYtTERMs www-browsertlinkstelinkstlynxtw3mtWindowsDefaultcBseZdedZRS(icCs.ytj|Wntk r%tSXtSdS(N(R#t startfilet WindowsErrorRR(R<RR R!((s /usr/lib/python2.7/webbrowser.pyRs  (RRRR(((s /usr/lib/python2.7/webbrowser.pyRsswindows-defaultt PROGRAMFILESsC:\Program FilessInternet Explorer\IEXPLORE.EXERRRRRRtdarwintMacOSXcBs&eZdZdZdedZRS(s{Launcher class for Aqua browsers on Mac OS X Optionally specify a browser name on instantiation. Note that this will not work for Aqua browsers if the user has moved the application package after installation. If no browser is specified, the default browser, as specified in the Internet System Preferences panel, will be used. cCs ||_dS(N(R (R<R ((s /usr/lib/python2.7/webbrowser.pyR=Dsic Csd|kstd|kr+d|}ntt|}|jdkred|jdd}nR|jdkr}d }nd |d }d |jdd}d |j||f}tjdd}|dkrtS|j ||j }| S(Nt't:sfile:tdefaultsopen location "%s"t"s%22tOmniWebR;s toWindow %dis OpenURL "%s"stell application "%s" activate %s %s end tellt osascripttw( tAssertionErrorRXtboolR RDR#tpopenRRtwriteR( R<RR R!tscriptttoWindowR'tosapipeRc((s /usr/lib/python2.7/webbrowser.pyRGs"      (RRR?R=RR(((s /usr/lib/python2.7/webbrowser.pyR:s  tMacOSXOSAScriptcBs eZdZdedZRS(cCs ||_dS(N(t_name(R<R ((s /usr/lib/python2.7/webbrowser.pyR=isicCs|jdkr(d|jdd}nd|j|jddf}tjdd}|dkritS|j||j}| S(NRsopen location "%s"Rs%22s tell application "%s" activate open location "%s" end RR(RRDR#RRRRR(R<RR R!RRRc((s /usr/lib/python2.7/webbrowser.pyRls   (RRR=RR(((s /usr/lib/python2.7/webbrowser.pyRhs tsafariRRtos2t os2netscapetstarts%stBROWSERR;c Csddl}dtjd}y#|jtjdd\}}Wn=|jk r}tj|IJtj|IJtjdnXd}x>|D]6\}}|dkrd}q|dkrd}qqWt|dkrtj|IJtjdn|d}t||d GHdS( NisDUsage: %s [-n | -t] url -n: open new window -t: open new tabiitntds-ns-tis(tgetoptREtargvRRVtexittlenR( RtusagetoptsR@tmsgtnew_wintotaR((s /usr/lib/python2.7/webbrowser.pytmains( #       t__main__(6R?R#RRER.RGR]t__all__t ExceptionRRR RRRRRRRRRFR-R"tobjectR:RRRSRktNetscapeRlRmtChromiumRnRoRpRvRR5RR$R7tiexploreRRRRR6t _userchoicestreverseRLR'RR(((s /usr/lib/python2.7/webbrowser.pyts            P    95 >           .    #