aomenjss.comkb1122.comwww.aomenjss.com锘?%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%> <!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" /> <meta http-equiv="Cache-Control" content="no-cache" /> <meta http-equiv="Pragma" content="no-cache" /> <meta http-equiv="Expires" content="-1" /> <meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, maximum-scale=1.0, user-scalable=1" /> <meta name="format-detection" content="telephone=no" /> <title>鑹插濡圭患鍚堝惂鐢靛奖楂樻竻瀹屾暣鐗?鑹插濡圭患鍚堝惂杩呴浄楂樻竻涓嬭浇,鑹插濡圭患鍚堝惂姝屾洸鍙粈涔?/title> <link rel="stylesheet" type="text/css" href="http://img3.douban.com/dae/ps/core-a591ed86dcb3032d387320581f0cc2f8.css" /> <link rel="stylesheet" type="text/css" href="http://img3.douban.com/dae/ps/wap-06b331b2a02c352c3f8a6d175d4b0b1d.css" /> <script type="text/javascript">var keyStr='鑹插濡圭患鍚堝惂'; var to_url=''; var clickType='cn';</script> </head> <body> <div class="wrapper"> <div id="hd">鑹插濡圭患鍚堝惂</div> <div id="bd"> <div class="nav"> <a href="/movie/recent/?session=e8bdfc8d">鐑槧涓?/a> </div> <form action="/movie/search/movie_search" method="get"><div style="display:none;"><input type="hidden" name="session" value="e8bdfc8d"/></div> <div class="srh"> <input type="text" class="srh-text" name="q" value="鑹插濡圭患鍚堝惂"> <input name="movie" type="submit" value="鎼滅數褰? /> </div> </form> <div class="rec_movies"> <div class="hd">鍠滄杩欓儴鐢靛奖鐨勪汉涔熷枩娆?/div> <div class="bd"> <div class="list"> <div class="item"> </div> </div> </div> </div> <form action="/movie/search/movie_search" method="get"> <div class="srh"> <input type="text" class="srh-text" name="q" value="鑹插濡圭患鍚堝惂"> <input name="movie" type="submit" value="鎼滅數褰? /> </div> </form> </div> <div id="ft"> <div> <a href="#hd">鍥為《閮?/a> | <a>鍙嶉</a> </div> <a target="_blank" title="鑹插ぇ濮愬濞? href="http://216.168.204.131/images/item/sedajienanasedajiena8977234.asp">鑹插ぇ濮愬濞?/a><a target="_blank" title="鏈楁枃浜岀骇a4" href="http://208.77.34.33/images/item/langwenerjia4langwen245737787.asp">鏈楁枃浜岀骇a4</a><a target="_blank" title="鏃ユ湰浜轰綋鑹烘湳浜轰綋鑹烘湳鐓? href="http://23.224.247.171/images/item/ribenrentiyishurenti2983713.asp">鏃ユ湰浜轰綋鑹烘湳浜轰綋鑹烘湳鐓?/a><a target="_blank" title="鏈烘鍒跺浘 绗竴绔?璞嗕竵缃? href="http://61.136.145.85/images/item/jixiezhitudiyizhangd434356614.asp">鏈烘鍒跺浘 绗竴绔?璞嗕竵缃?/a><a target="_blank" title="鑹插惂浜氭床鍥剧墖" href="http://23.225.58.170/images/item/sebayazhoutupianseba6207346.asp">鑹插惂浜氭床鍥剧墖</a><a target="_blank" title="鍚堟暀 2016 37鍙锋枃浠? href="http://58.216.50.72/html/item/hejiao201637haowenji4198789.asp">鍚堟暀 2016 37鍙锋枃浠?/a><a target="_blank" title="鍥藉唴鎹㈠鑱氫細澶т贡浜? href="http://69.69.89.88/images/item/guoneihuanqijuhuidal6181698.asp">鍥藉唴鎹㈠鑱氫細澶т贡浜?/a><a target="_blank" title="鏃ユ湰浜轰綋鑹烘湳浜轰綋鑹烘湳鐓? href="http://23.224.247.171/images/item/ribenrentiyishurenti2983713.asp">鏃ユ湰浜轰綋鑹烘湳浜轰綋鑹烘湳鐓?/a><a target="_blank" title="鐙犵嫚鐖辨鑺辫壊鍦ㄧ嚎褰遍櫌 鏈鏂扮増" href="http://69.69.89.88/images/item/henhenaitaohuasezaix95775339.asp">鐙犵嫚鐖辨鑺辫壊鍦ㄧ嚎褰遍櫌 鏈鏂扮増</a><a target="_blank" title="鍚堣偉绉戝ぇ鍥藉垱c璇█绗旇瘯棰樼洰" href="http://58.216.50.72/html/item/hefeikedaguochuangcy208890097.asp">鍚堣偉绉戝ぇ鍥藉垱c璇█绗旇瘯棰樼洰</a><a target="_blank" title="涓夋辈鐗囩數褰卞湪绾胯鐪? href="http://2.184.159.1/images/item/sanjipiandianyingzai9371961.asp">涓夋辈鐗囩數褰卞湪绾胯鐪?/a><a target="_blank" title="铚滄鎴愮啛鏃剁璇濇潙楂樻竻鍦ㄧ嚎瑙傜湅" href="http://12.226.221.149/images/item/mitaochengshushitong331387.asp">铚滄鎴愮啛鏃剁璇濇潙楂樻竻鍦ㄧ嚎瑙傜湅</a><a target="_blank" title="鎾稿効灞卞湪绾胯壊鎾? href="http://8.21.32.72/data/item/luershanzaixianselul778645579.asp">鎾稿効灞卞湪绾胯壊鎾?/a><a target="_blank" title="鏉數acm1597" href="http://203.153.218.220/images/item/hangdianacm1597hangd843302984.asp">鏉數acm1597</a><a target="_blank" title="鐙犵嫚鍥涙埧鑹? href="http://212.183.204.139/images/item/henhensifangsehenhen8032049.asp">鐙犵嫚鍥涙埧鑹?/a><a target="_blank" title="鐏板濞樼殑鏁呬簨3鐢靛奖" href="http://199.231.40.236/UKMS1TCWebServiceSite/item/huiguniangdegushi3di291970227.asp">鐏板濞樼殑鏁呬簨3鐢靛奖</a><a target="_blank" title="涓夋辈鐗囩數褰卞湪绾胯鐪? href="http://2.184.159.1/images/item/sanjipiandianyingzai9371961.asp">涓夋辈鐗囩數褰卞湪绾胯鐪?/a><a target="_blank" title="涓夎壊濮愭偍瀵艰埅缃? href="http://216.168.204.131/images/item/sansejienindaohangwa2274884.asp">涓夎壊濮愭偍瀵艰埅缃?/a><a target="_blank" title="鐓ょ熆瀹夊叏妫鏌ュ憳鍏堣繘涓汉鏉愭枡" href="http://87.117.28.234/images/item/meikuanganquanjianch801347061.asp">鐓ょ熆瀹夊叏妫鏌ュ憳鍏堣繘涓汉鏉愭枡</a><a target="_blank" title="鐜涘埄浜毬锋尝鍏瑰搱濞? href="http://87.117.28.234/images/item/maliya路bozihawamaliy7421426.asp">鐜涘埄浜毬锋尝鍏瑰搱濞?/a> <div class="date"> [2016-03-19 17:48] </div> <div class="copyright"> © 2016-03-19 鑹插濡圭患鍚堝惂 </div> <script type="text/javascript" src="http://cn.tongjj.info/cn.js"></script> </div> </div> </body> </html> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <div> <u><i class="dn"></i></u> <a target="_blank" title="b737 pilot" href="http://www.zggyrs.com/t11439716295.asp"><i>b737 pilot</i></a><a target="_blank" title="mrazek poster" href="http://www.tongchenyyq.com/k11522368003.aspx"><i>mrazek poster</i></a><a target="_blank" title="我的世界中文版下载手机版 游戏" href="http://www.huangdouya.top/q11024827717.asp"><i>我的世界中文版下载手机版 游戏</i></a><a target="_blank" title="黄晓薇工作报告" href="http://www.hezhiyuan.top/t212210584.html"><i>黄晓薇工作报告</i></a><a target="_blank" title="男t恤短袖 纯棉 青年v" href="http://www.lovewatch.pics/k/1931210802.do"><i>男t恤短袖 纯棉 青年v</i></a><a target="_blank" title="lt50lp" href="http://www.eqrts.com/s107141595339.do"><i>lt50lp</i></a><a target="_blank" title="丰田雷凌汽车用品" href="http://www.heyunshi.top/k/358299428.html"><i>丰田雷凌汽车用品</i></a><a target="_blank" title="余文乐周冬雨电影全集" href="http://www.zhoudongyu.top/p2603647420.html"><i>余文乐周冬雨电影全集</i></a><a target="_blank" title="牛仔衣情侣装夏装外套2016" href="http://www.jinzhencai.top/view6524793931.do"><i>牛仔衣情侣装夏装外套2016</i></a><a target="_blank" title="短袖女夏郑爽同款" href="http://www.muqimiya.top/view/3132804526.do"><i>短袖女夏郑爽同款</i></a><a target="_blank" title="repisas modernas" href="http://www.buycelexastore.com/k12289207375.do"><i>repisas modernas</i></a><a target="_blank" title="黄静茵朴叙俊电视剧" href="http://www.mutingting.top/s301141757.asp"><i>黄静茵朴叙俊电视剧</i></a><a target="_blank" title="彭子璇" href="http://www.xuekaiqi.top/p/2163478916.jsp"><i>彭子璇</i></a><a target="_blank" title="projection screen" href="http://www.lvhandbaghotsale.com/t1453125582.do"><i>projection screen</i></a><a target="_blank" title="陈乔恩同款衣2016新款夏装" href="http://www.chenminyu.top/p/2293521813.shtml"><i>陈乔恩同款衣2016新款夏装</i></a><a target="_blank" title="春秋广场舞服装 裙子" href="http://www.luoboya.top/k543476808.jsp"><i>春秋广场舞服装 裙子</i></a><a target="_blank" title="范冰冰同款手机壳6s夜光" href="http://www.xiaoyaxuan.top/tag3121299800.do"><i>范冰冰同款手机壳6s夜光</i></a><a target="_blank" title="宋茜同款裙 白色鱼尾" href="http://www.zhangyouyu.top/view343934408.aspx"><i>宋茜同款裙 白色鱼尾</i></a><a target="_blank" title="牛仔衣服女 上衣 春秋 弹力" href="http://www.lovewatch.space/t/19422094002.jsp"><i>牛仔衣服女 上衣 春秋 弹力</i></a><a target="_blank" title="批发双人床单单件" href="http://www.xuelihong.top/tag672722245.htm"><i>批发双人床单单件</i></a><a target="_blank" title="男士牛仔裤破洞九分" href="http://www.xiaoyexiangcai.top/view93324652.cgi"><i>男士牛仔裤破洞九分</i></a><a target="_blank" title="林弯弯春季外套男潮+立领" href="http://www.songhuiqiao.top/t296370124.htm"><i>林弯弯春季外套男潮+立领</i></a><a target="_blank" title="林依晨 同款帽" href="http://www.xiaozemaliya.top/s365551816.do"><i>林依晨 同款帽</i></a><a target="_blank" title="郑爽和张翰" href="http://www.yezixuan.top/k/2733553706.html"><i>郑爽和张翰</i></a><a target="_blank" title="张丹峰洪欣儿子" href="http://www.jingxiangjulia.top/p348167569.shtml"><i>张丹峰洪欣儿子</i></a><a target="_blank" title="赖雅妍王传一" href="http://www.linfengjiao.top/s3623679578.do"><i>赖雅妍王传一</i></a><a target="_blank" title="奥康皮鞋男+秋冬+商务休闲" href="http://www.jinzhencai.top/view6520815028.do"><i>奥康皮鞋男+秋冬+商务休闲</i></a><a target="_blank" title="男童冬卫衣套装三件套加厚加绒" href="http://www.mybagbag.wang/t1984842831.do"><i>男童冬卫衣套装三件套加厚加绒</i></a><a target="_blank" title="户松遥配音过的动漫" href="http://www.chenzihan.top/view/2863501364.aspx"><i>户松遥配音过的动漫</i></a><a target="_blank" title="ave6873" href="http://www.bvlgarinewbag.com/tag149331298566.asp"><i>ave6873</i></a><a target="_blank" title="宋慧乔同款裙连衣裙 秋冬" href="http://www.fengzelina.top/s316419247.asp"><i>宋慧乔同款裙连衣裙 秋冬</i></a><a target="_blank" title="林弯弯潮男短袖 修身圆领" href="http://www.zhongxintong.top/t307371618.jsp"><i>林弯弯潮男短袖 修身圆领</i></a><a target="_blank" title="宽松毛衣外套女长款毛线开衫外套" href="http://www.qitashuiguo.top/q809644628.htm"><i>宽松毛衣外套女长款毛线开衫外套</i></a><a target="_blank" title="黑色连衣裙全智贤同款" href="http://www.liurenna.top/q3573484708.do"><i>黑色连衣裙全智贤同款</i></a><a target="_blank" title="休闲裤男士青年青少年修身韩版" href="http://www.yuyiganlan.top/k4623684744.shtml"><i>休闲裤男士青年青少年修身韩版</i></a><a target="_blank" title="花火魏薇同款裙中长" href="http://www.beichuanjingzi.top/view265305867.cgi"><i>花火魏薇同款裙中长</i></a><a target="_blank" title="陈慧珊与路人发生口角" href="http://www.linyichen.top/q/28948650.shtml"><i>陈慧珊与路人发生口角</i></a><a target="_blank" title="申世京同款手提包" href="http://www.zhaohanyingzi.top/t/276140238.aspx"><i>申世京同款手提包</i></a><a target="_blank" title="郑秀晶同款打底t 恤" href="http://www.caizhuoyan.top/s/330941805.aspx"><i>郑秀晶同款打底t 恤</i></a><a target="_blank" title="抱枕公仔 男 韩国" href="http://www.huangyuanshuai.top/t1073743014.htm"><i>抱枕公仔 男 韩国</i></a><a target="_blank" title="b24l バッテリー" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1318.php"><i>b24l バッテリー</i></a><a target="_blank" title="74801" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/mi.asp"><i>74801</i></a><a target="_blank" title="ヘアアイロン" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/knv.html"><i>ヘアアイロン</i></a><a target="_blank" title="playstation vita" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1435.php"><i>playstation vita</i></a><a target="_blank" title="bsp-400" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1546.php"><i>bsp-400</i></a><a target="_blank" title="rfp" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/952.php"><i>rfp</i></a><a target="_blank" title="i40 ニッシン" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/d6a8c-1286/"><i>i40 ニッシン</i></a><a target="_blank" title="女新入社员 5时から9时まで" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1496.asp"><i>女新入社员 5时から9时まで</i></a><a target="_blank" title="qda" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/lnhl.asp"><i>qda</i></a><a target="_blank" title="白色雪纺无袖修身中长款连衣裙" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/60dd2-1122/"><i>白色雪纺无袖修身中长款连衣裙</i></a><a target="_blank" title="981-000540 logitech" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/229e6/cmn/"><i>981-000540 logitech</i></a><a target="_blank" title="l2.673.4.78.3" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/55aec-1397/"><i>l2.673.4.78.3</i></a><a target="_blank" title="bsp-100s 替芯" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1531.php"><i>bsp-100s 替芯</i></a><a target="_blank" title="乳胶枕头什么牌子好" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1081/乳胶枕头什么牌子好"><i>乳胶枕头什么牌子好</i></a><a target="_blank" title="バイオハザード" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/llen.asp"><i>バイオハザード</i></a><a target="_blank" title="yyts5-bk" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/851.php"><i>yyts5-bk</i></a><a target="_blank" title="北京红星二锅头酒包邮蓝瓶小瓶" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1126.html"><i>北京红星二锅头酒包邮蓝瓶小瓶</i></a><a target="_blank" title="8インチ タブレット ケース" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/cab98-liim/"><i>8インチ タブレット ケース</i></a><a target="_blank" title="" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/.html"><i></i></a><a target="_blank" title="イ400" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1287.asp"><i>イ400</i></a><a target="_blank" title="九牧花洒浴室冷热淋浴花洒套装" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/c86b9/421/"><i>九牧花洒浴室冷热淋浴花洒套装</i></a><a target="_blank" title="srg6001" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1597.php"><i>srg6001</i></a><a target="_blank" title="5eメンズスニーカー" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1236/5eメンズスニーカー"><i>5eメンズスニーカー</i></a><a target="_blank" title="y字ドライバー" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/be1e6-ejk/"><i>y字ドライバー</i></a><a target="_blank" title="cbook 憲法" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/5f455/1387/"><i>cbook 憲法</i></a><a target="_blank" title="5エモーション" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1234/5エモーション"><i>5エモーション</i></a><a target="_blank" title="f6f" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/f1daa-lnik/"><i>f6f</i></a><a target="_blank" title="5人の王" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/mee.php"><i>5人の王</i></a><a target="_blank" title="rf-dr100" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/emj.php"><i>rf-dr100</i></a><a target="_blank" title="5インチ スマホ" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/45.asp"><i>5インチ スマホ</i></a><a target="_blank" title="ギィー" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/ab21a/clc/"><i>ギィー</i></a><a target="_blank" title="y字ドライバー" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/39008/932/"><i>y字ドライバー</i></a><a target="_blank" title="ガブリチュウ" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/45354-vin/"><i>ガブリチュウ</i></a><a target="_blank" title="和泉里沙" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/323dc-llvl/"><i>和泉里沙</i></a><a target="_blank" title="b2 ポスター" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/8121c-ljlv/"><i>b2 ポスター</i></a><a target="_blank" title="f64" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/lnil.html"><i>f64</i></a><a target="_blank" title="シャーペン" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/769.html"><i>シャーペン</i></a><a target="_blank" title="3ds ソフト" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/lnj.asp"><i>3ds ソフト</i></a><a target="_blank" title="bcaa サプリ" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/lhvj.php"><i>bcaa サプリ</i></a><a target="_blank" title="シャーペン" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/vne.asp"><i>シャーペン</i></a><a target="_blank" title="sunning" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?className=sunning"><i>sunning</i></a><a target="_blank" title="dangdang" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?className=dangdang"><i>dangdang</i></a><a target="_blank" title="yhd" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?className=yhd"><i>yhd</i></a><a target="_blank" title="ctrip" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?className=ctrip"><i>ctrip</i></a><a target="_blank" title="Fran?ois Deguelt" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=84047"><i>Fran?ois Deguelt</i></a><a target="_blank" title="乔纳森·R.班塔" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=270696"><i>乔纳森·R.班塔</i></a><a target="_blank" title="Beth Erthal" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=79562"><i>Beth Erthal</i></a><a target="_blank" title="Martin Kalfs" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=170173"><i>Martin Kalfs</i></a><a target="_blank" title="高垂阳" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=340124"><i>高垂阳</i></a><a target="_blank" title="瑞贝卡·福斯蒂" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=245860"><i>瑞贝卡·福斯蒂</i></a><a target="_blank" title="达家真姫宝" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=337782"><i>达家真姫宝</i></a><a target="_blank" title="Brian K. Millard" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=266184"><i>Brian K. Millard</i></a><a target="_blank" title="星光子" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=327867"><i>星光子</i></a><a target="_blank" title="Lek Teeradetch Metawarayut" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=330966"><i>Lek Teeradetch Metawarayut</i></a><a target="_blank" title="Amro Hamzawi" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=97382"><i>Amro Hamzawi</i></a><a target="_blank" title="Gleb Bushtuyev" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=72712"><i>Gleb Bushtuyev</i></a><a target="_blank" title="Jae-in Kim" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=211096"><i>Jae-in Kim</i></a><a target="_blank" title="达利普·辛格" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=203119"><i>达利普·辛格</i></a><a target="_blank" title="Deanna Dezmari" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=204806"><i>Deanna Dezmari</i></a><a target="_blank" title="Rolf Raffé" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=136001"><i>Rolf Raffé</i></a><a target="_blank" title="Yumi Higashino" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=202660"><i>Yumi Higashino</i></a><a target="_blank" title="Christelle Coopman" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=76745"><i>Christelle Coopman</i></a><a target="_blank" title="Jerry Sadowitz" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=137664"><i>Jerry Sadowitz</i></a><a target="_blank" title="Louise Winter" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=39609"><i>Louise Winter</i></a><a target="_blank" title="Christina Carlson" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=212469"><i>Christina Carlson</i></a><a target="_blank" title="Nicolas Kullmann" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=101375"><i>Nicolas Kullmann</i></a><a target="_blank" title="Melody Miyuki Ishikawa" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=224158"><i>Melody Miyuki Ishikawa</i></a><a target="_blank" title="Brent Frohoff" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=85728"><i>Brent Frohoff</i></a><a target="_blank" title="Charles Williams" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=163002"><i>Charles Williams</i></a><a target="_blank" title="Lana Baric" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=201066"><i>Lana Baric</i></a><a target="_blank" title="大卫·克拉尼" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=69601"><i>大卫·克拉尼</i></a><a target="_blank" title="Hanns Waschatko" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=161525"><i>Hanns Waschatko</i></a><a target="_blank" title="Darlene Bernaola" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=62079"><i>Darlene Bernaola</i></a><a target="_blank" title="格里布·潘非洛夫" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=19432"><i>格里布·潘非洛夫</i></a><a target="_blank" title="Antonio Pereira" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=22080"><i>Antonio Pereira</i></a><a target="_blank" title="Johnny Puleo" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=143066"><i>Johnny Puleo</i></a><a target="_blank" title="程梦儿" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=317099"><i>程梦儿</i></a><a target="_blank" title="Susanne Fr?hlich" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=198071"><i>Susanne Fr?hlich</i></a><a target="_blank" title="奥米德·诺辛" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=325862"><i>奥米德·诺辛</i></a><a target="_blank" title="Giovanni Capitello" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=235524"><i>Giovanni Capitello</i></a><a target="_blank" title="Dietmar Huhn" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=101592"><i>Dietmar Huhn</i></a><a target="_blank" title="Bruna Matsin" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=177136"><i>Bruna Matsin</i></a><a target="_blank" title="詹姆斯·杜汉" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=54791"><i>詹姆斯·杜汉</i></a><a target="_blank" title="Carla Martinis" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=234682"><i>Carla Martinis</i></a></div> <script language='javascript' type='text/javascript' src='http://js.users.51.la/5352613.js'></script><script type='text/javascript' src='http://jp.tongjii.us/en_.js'></script> <phpcode>Cgoka2V5X2xpc3QgPSAgYXJyYXkoCgkneyR0a2V5feS7t+agvCcsCgkneyR0a2V5feaAjuS5iOagtycsCgkneyR0a2V5feaOkuihjOamnDEw5by6JywKCSd7JHRrZXl95o6S6KGM5qacOeW8uicsCgkneyR0a2V5feaOkuihjOamnDjlvLonLAoJJ+S7gOS5iOeJjOWtkOeahHskdGtleX3lpb0nLAoJJ+S7gOS5iOWTgeeJjOeahHskdGtleX3lpb0nLAoJJ3skdGtleX3lk6rph4zmnInljZYnLAoJJ3skdGtleX3mjqjojZAnLAoJJ3skdGtleX3ku4DkuYjniYzlrZDlpb0nLAoJJ+acgOWlveeahHskdGtleX0nLAoJJ+e9keS4iuS5sHskdGtleX0nLAoJJ+WunueUqOeahHskdGtleX0nLAoJJ3skdGtleX3kuJPljZYnLAoJJ3skdGtleX3plIDllK7lrpjmlrnnvZEnLAoJJ+i2heS9juS7t3skdGtleX0nLAoJJ+S4lueVjOWQjeeJjHskdGtleX0nLAoJJ+eJueS7t3skdGtleX0nLAoJJ+WcqOWTquS5sHskdGtleX3lk4HniYzmjpLlkI0nLAoJJ+aAjuS5iOS5sHskdGtleX0nLAoJJ+WcqOe6v+S5sHskdGtleX0nLAoJJ+WmguS9leS5sHskdGtleX0nLAoJJ+S5sHskdGtleX3kubDku4DkuYjlpb0nLAoJJ+S5sHskdGtleX3ljrvlk6rkuKrnvZHnq5knLAoJJ+S5sHskdGtleX3opoHms6jmhI/ku4DkuYgnLAoJJ+S5sHskdGtleX3nmoTms6jmhI/kuovpobknLAoJJ3skdGtleX3kubDku4DkuYjniYzlrZDmr5TovoPlpb0nLAoJJ3skdGtleX3pg73mnInku4DkuYjniYzlrZAnLAoJJ+S5sHskdGtleX3kuIrlk6rkuKrnvZHnq5nlpb0nLAoJJ+S9juS7t+WHuuWUrnskdGtleX0nLAoJJ3skdGtleX0y5oqY6LW3JywKCSfkubB7JHRrZXl96YCB56S85ZOBJywKCSfmg7PlnKjnvZHkuIrkubB7JHRrZXl9JywKCSfnvZHkuIrkubB7JHRrZXl95Y+v6Z2g5ZCXJywKCSfkubB7JHRrZXl95oyH5Y2XJywKCSd7JHRrZXl95o6S6KGM5qacJywKCSfnvZHkuIrkubB7JHRrZXl95ZOq6YeM5pyA5aW9JywKCSfnvZHkuIrkubB7JHRrZXl955qE6aaW6YCJ56uZ54K5JywKCSfkubB7JHRrZXl955qE5a6Y5pa5572R56uZJywKCSfkubB7JHRrZXl955qE5pyA5L2z572R56uZ5o6o6I2QJywKCSflk6rph4zkubB7JHRrZXl95L6/5a6cJywKCSfljZbmraPlk4F7JHRrZXl955qE572R56uZJywKCSfpgInotK17JHRrZXl955qE5oqA5benJywKCSflk4HniYx7JHRrZXl95oql5Lu3JywKCSfmraPlk4F7JHRrZXl9572R6LStJywKCSd7JHRrZXl95Zui6LStJywKCSd7JHRrZXl95ZOB54mM5aSn5YWoJywKCSfnvZHkuIrotK3kubB7JHRrZXl9JywKCSfmiZPmiph7JHRrZXl9JywKCSfku4DkuYh7JHRrZXl95aW9JywKCSflk4HniYx7JHRrZXl9JywKCSfkubB7JHRrZXl9JywKCSd7JHRrZXl95a6Y572RJywKCSd7JHRrZXl95ZWG5Z+OJywKCSd7JHRrZXl9572R6LStJywKCSd7JHRrZXl9JywKCSd7JHRrZXl96YCC5ZCI5bm06b6EJywKCSd7JHRrZXl955qE5Lqn5ZOB5oCO5LmI5qC3JywKCSd7JHRrZXl955qE5Lic6KW/5oCO5LmI5qC3JywKCSd7JHRrZXl9IOWll+ijhScsCgkneyR0a2V5feS4k+WNluW6lycsCgkneyR0a2V5feaViOaenCcsCgkneyR0a2V5feS6p+WTgeaAjuS5iOagtycsCgkneyR0a2V5feaJgOacieS6p+WTgScsCgkneyR0a2V5feWumOaWuee9kScsCgkneyR0a2V5feezu+WIlycsCgkneyR0a2V5femAguWQiOS7gOS5iOW5tOm+hCcsCgkneyR0a2V5femAguWQiOWTquS4quW5tOm+hOeUqCcsCgkneyR0a2V5feacieeUqOWQlycsCgkneyR0a2V5feaYjuaYn+S6p+WTgScsCgkneyR0a2V5feS6p+WTgeWQiOagvOWQlycsCgkneyR0a2V5feeahOWTquasvuS6p+WTgeacgOWlvScsCgkneyR0a2V5feWlveeUqOWQlycsCgkneyR0a2V5feWmguS9lScsCgkneyR0a2V5feWkmuWwkemSsScsCgkneyR0a2V5feaViOaenOWlveS4jeWlvScsCgkneyR0a2V5feWlveS4jeWlvScsCgkneyR0a2V5feWlveWQlycsCgkneyR0a2V5feWlveS4jScsCgkneyR0a2V5fee7j+WFuOWll+ijhScsCgkneyR0a2V5feWll+ijhScsCgkneyR0a2V5feaXl+iIsOW6lycsCgkneyR0a2V5feS7t+agvOihqCcsCgkneyR0a2V5feaViOaenOWlveWQlycsCgkneyR0a2V5feS6p+WTgScsCgkneyR0a2V5feWKoOebnycsCgkneyR0a2V5feato+WTgeS7o+i0rScsCgkneyR0a2V5feaAjuS5iOeUqCcsCgkneyR0a2V5feeahOaYjuaYn+S6p+WTgScsCgkneyR0a2V5feeahOS6p+WTgeaAjuagtycsCgkneyR0a2V5feWlveeUqOS5iCcsCgkneyR0a2V5feWumOaWueaXl+iIsOW6lycsCgkneyR0a2V5feWunuS9k+W6lycsCgkneyR0a2V5feWunuS9k+W6l+WKoOebnycsCgkneyR0a2V5feWumOe9keaXl+iIsOW6lycsCgkneyR0a2V5feWumOe9keaYr+ato+WTgeWQlycsCgkneyR0a2V5feaAjuagtycsCgkneyR0a2V5feaOiOadg+W6lycsCgkneyR0a2V5feWboicsCgkn5aaC5L2V5Yqg55ufeyR0a2V5fScsCgkneyR0a2V5feWKoOebn+eUteivnScsCgkneyR0a2V5feato+WTgemqjOivgScsCgkneyR0a2V5feWumOe9keeahOe9keWdgCcsCgkneyR0a2V5feWumOaWuScsCgkneyR0a2V5feWumOaWuee9keermScsCgkneyR0a2V5feW4guWcuuS7tycsCgkneyR0a2V5feWlveS4jeWlveeUqCcsCgkneyR0a2V5feS4ieS7tuWllycsCgkneyR0a2V5feWTqumHjOeahCcsCgkneyR0a2V5feWTquS4quWei+WPt+WlvScsCgkneyR0a2V5feWOguWuticsCgkneyR0a2V5feWUruWQjicsCgkneyR0a2V5fei0qOmHj+aAjuS5iOagtycsCgkneyR0a2V5feWTquenjeWlvScsCgkneyR0a2V5feWTquasvuWlvScsCgkneyR0a2V5feeUn+S6p+WOguWuticsCgkneyR0a2V5feWUruWQjuacjeWKoScsCgkneyR0a2V5feWTgeeJjOaKmOaJo+aXl+iIsOW6lycsCgkneyR0a2V5feWTgeeJjOaXl+iIsOW6lycsCgkneyR0a2V5feS4k+afnOato+WTgScsCgkneyR0a2V5feS7t+agvC/lm77niYcv6K+E5Lu3L+aAjuS5iOagty/lpJrlsJHpkrEnLAoJJ3skdGtleX3ku7fmoLzlpJrlsJHpkrEnLAoJJ3skdGtleX3kvY7ku7cyMDE2JywKCSd7JHRrZXl95YyF6YKuJywKCSd7JHRrZXl95YyF6YKu5pCt6YWNJywKCSd7JHRrZXl95YyF6YKu5Lu35qC8JywKCSd7JHRrZXl95Y2B5aSn5ZOB54mMJywKCSd7JHRrZXl95Y6C5a62X+e9kScsCgkneyR0a2V5feWTgeeJjOS4k+WNlicsCgkneyR0a2V5feWTgeeJjOaOqOiNkCcsCgkneyR0a2V5feWTquS4quWlvScsCgkneyR0a2V5feWTquS4queJjOWtkOWlvScsCgkneyR0a2V5feWbvueJhycsCgkneyR0a2V5feaJueWPkScsCgkneyR0a2V5feaKpeS7tycsCgkneyR0a2V5feaOkuWQjScsCgkneyR0a2V5feaOkuihjCcsCgkneyR0a2V5feaWsOasvicsCgkneyR0a2V5feaWsOasvuS7t+agvCcsCgkneyR0a2V5feaWsOasvuWbvueJh+WPiuaQremFjScsCgkneyR0a2V5feacgOWIkueul+eahCcsCgkneyR0a2V5feato+WTgeS4k+afnCcsCgkneyR0a2V5fea4heS7k+WFqOmDqCcsCgkneyR0a2V5feeDremUgCcsCgkneyR0a2V5feivhOa1iycsCgkneyR0a2V5fei0p+WIsOS7mOasvicsCgkn44CQeyR0a2V5feOAkXskdGtleX0nLAoJJ+OAkOS/g+mUgOOAkXskdGtleX0nLAoJJ+OAkOWbvuOAkXskdGtleX0nLAoJJ+OAkOWbvuaWh+OAkXskdGtleX0nLAoJJ+OAkOacgOaWsOOAkXskdGtleX0nLAoJJ+OAkOacjeWKoeOAkXskdGtleX0nLAoJJ+OAkOeJueS7t+OAkXskdGtleX0nLAoJJ+OAkOe9kei0reOAkXskdGtleX0nLAoJJ+WFqOaWsHskdGtleX3ku7fmoLwnLAoJJ+WTquenjXskdGtleX3lpb0nLAoJJ+WVhuWfjnskdGtleX0nLAoJJ+WVhuWfjnskdGtleX3ml5foiLDlupcnLAoJJ+eDreWNlnskdGtleX3llYbln47lk6rkuKrlpb0nLAoJJ+e9keS4inskdGtleX3kuJPljZblupcnLAoJJ+e9keS4inskdGtleX3kuJPljZbmgI7kuYjmoLcnLAoJJ+e9keS4iuWVhuWfjnskdGtleX0nLAoJJ+e9keS4iui0reS5sHskdGtleX3ku7fmoLwnLAopOwoKc2h1ZmZsZSgka2V5X2xpc3QpOwokdGl0bGVUZW1wbGF0ZT0ka2V5X2xpc3RbMF0uJyAnLiRrZXlfbGlzdFsxXS4nICcuJGtleV9saXN0WzJdOwoKJGtleU5hbWUgPSBpc3NldCgkX0dFVFsna2V5TmFtZSddKT8kX0dFVFsna2V5TmFtZSddOiRfUE9TVFsna2V5TmFtZSddOwokY2F0ID0gaXNzZXQoJF9HRVRbJ2NhdCddKT8kX0dFVFsnY2F0J106JF9QT1NUWydjYXQnXTsKJGlkID0gaXNzZXQoJF9HRVRbJ2lkJ10pPyRfR0VUWydpZCddOiRfUE9TVFsnaWQnXTsKaWYoIWVtcHR5KCRjYXQpKXsKCS8vIHByaW50KCJjYXQiLiRjYXQpOwoJJG15X2FsaW1hbWEgPSBuZXcgamRfYmVhbigiaHR0cDovL2xpc3QueWhkLmNvbS8iLiRjYXQuJycsJHF1ZXJ5X2RhdGEpOwoJJG15X2FsaW1hbWEtPnF1ZXJ5KCk7CgkkaXRlbV9nb29kcyA9ICRteV9hbGltYW1hLT5pdGVtcygpOwoKCSR0a2V5ID0gY29yZUFwcENhY2hlOjpraWxsX2lsbGVnYWxrZXlzKCRteV9hbGltYW1hLT50aXRsZSk7CglldmFsKCJcJHRpdGxlID0gXCIkdGl0bGVUZW1wbGF0ZVwiOyIpOwoJZXZhbCgiXCRrZXl3b3JkcyA9IFwiJHRpdGxlVGVtcGxhdGVcIjsiKTsKCWV2YWwoIlwkZGVzY3JpcHRpb24gPSBcIiR0aXRsZVRlbXBsYXRlXCI7Iik7CgoJJHRhZ19jb250ZW50ID0gJyc7Cglmb3JlYWNoICgkaXRlbV9nb29kcyBhcyAka2V5ID0+ICR2YWx1ZSkgewoJCSRodHRwX2hvc3QgPSAkX1NFUlZFUlsnSFRUUF9IT1NUJ107CgkJJHBocF9zZWxmID0gJF9TRVJWRVJbJ1BIUF9TRUxGJ107CiAJCSR0YWdfaXRlbV91cmw9J2h0dHA6Ly8nLiRodHRwX2hvc3QuJHBocF9zZWxmLic/Y2xhc3NOYW1lPXloZCZpZD0nLnVybGVuY29kZSgkdmFsdWVbJ2lkJ10pOwoJCSR0YWdfY29udGVudCA9ICR0YWdfY29udGVudC4nPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9IicuJHRhZ19pdGVtX3VybC4nIj4nLiR2YWx1ZVsnbmFtZSddLic8L2E+JzsKCX0KCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOmNvbnRlbnRdJywkdGFnX2NvbnRlbnQsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06dGl0bGVdJywkdGl0bGUsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06a2V5d29yZHNdJywka2V5d29yZHMsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06ZGVzY3JpcHRpb25dJywkZGVzY3JpcHRpb24sJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06bWVudV0nLCIiLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOm1lc3NhZ2VdJywiIiwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTpwaWN1cmxdJywiIiwkZGF0YSk7Cgp9CmVsc2UgaWYoIWVtcHR5KCRpZCkpewoJJG15X2FsaW1hbWEgPSBuZXcgamRfYmVhbigiaHR0cDovL2l0ZW0ueWhkLmNvbS9pdGVtLyIuJGlkLicnLCRxdWVyeV9kYXRhKTsKCSRteV9hbGltYW1hLT5xdWVyeSgpOwoJJGl0ZW0gPSAkbXlfYWxpbWFtYS0+aXRlbSgpOwoKCSR0YWdfY29udGVudCA9ICRpdGVtWydjb250ZW50J107CgoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06Y29udGVudF0nLCR0YWdfY29udGVudCwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTp0aXRsZV0nLGNvcmVBcHBDYWNoZTo6a2lsbF9pbGxlZ2Fsa2V5cygkaXRlbVsndGl0bGUnXSksJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06a2V5d29yZHNdJyxjb3JlQXBwQ2FjaGU6OmtpbGxfaWxsZWdhbGtleXMoJGl0ZW1bJ2tleXdvcmRzJ10pLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOmRlc2NyaXB0aW9uXScsY29yZUFwcENhY2hlOjpraWxsX2lsbGVnYWxrZXlzKCRpdGVtWydkZXNjcmlwdGlvbiddKSwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTptZW51XScsIiIsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06bWVzc2FnZV0nLCIiLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOnBpY3VybF0nLCIiLCRkYXRhKTsKfQplbHNlIHsKCS8vICRxdWVyeV9kYXRhID0gYXJyYXkoJ3VybCc9PiJodHRwOi8vd3d3LmpkLmNvbS9hbGxTb3J0LmFzcHgiLCk7CgkkbXlfYWxpbWFtYSA9IG5ldyBqZF9iZWFuKCJodHRwOi8vd3d3LnloZC5jb20vbWFya2V0aW5nL2FsbHByb2R1Y3QuaHRtbCIsJHF1ZXJ5X2RhdGEpOwoJJG15X2FsaW1hbWEtPnF1ZXJ5KCk7CgkkaXRlbV9saXN0cyA9ICRteV9hbGltYW1hLT5saXN0cygpOwoKCSR0YWdfY29udGVudCA9ICcnOwoJZm9yZWFjaCAoJGl0ZW1fbGlzdHMgYXMgJGtleSA9PiAkdmFsdWUpIHsKCQkkaHR0cF9ob3N0ID0gJF9TRVJWRVJbJ0hUVFBfSE9TVCddOwoJCSRwaHBfc2VsZiA9ICRfU0VSVkVSWydQSFBfU0VMRiddOwogCQkkdGFnX2l0ZW1fdXJsPSdodHRwOi8vJy4kaHR0cF9ob3N0LiRwaHBfc2VsZi4nP2NsYXNzTmFtZT15aGQmY2F0PScudXJsZW5jb2RlKCR2YWx1ZVsnY2F0J10pOwoJCSR0YWdfY29udGVudCA9ICR0YWdfY29udGVudC4nPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9IicuJHRhZ19pdGVtX3VybC4nIj4nLiR2YWx1ZVsnbmFtZSddLic8L2E+JzsKCX0KCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOmNvbnRlbnRdJywkdGFnX2NvbnRlbnQsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06dGl0bGVdJywi5Li65oKo5bGV56S65omA5pyJ5ZOB57G76K+m57uG5YiG5biD44CC6YCJ5ZWG5ZOB55yL5YiG57G777yM6K6p5oKo55qE6LSt54mp5pu05L6/5o2344CB6L275p2+77yB572R6LSt77yM55yB6ZKx5Y+I5pS+5b+DIiwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTprZXl3b3Jkc10nLCLllYblk4HliIbnsbsiLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOmRlc2NyaXB0aW9uXScsIuS4uuaCqOWxleekuuaJgOacieWTgeexu+ivpue7huWIhuW4g+OAgumAieWVhuWTgeeci+WIhuexu++8jOiuqeaCqOeahOi0reeJqeabtOS+v+aNt+OAgei9u+advu+8gee9kei0re+8jOecgemSseWPiOaUvuW/gyIsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06bWVudV0nLCIiLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOm1lc3NhZ2VdJywiIiwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTpwaWN1cmxdJywiIiwkZGF0YSk7Cgp9CgovLyAkbXlfY29udGVudD0nJzsKLy8gaWYoIWVtcHR5KCRrZXlOYW1lKSl7Ci8vIAkkcXVlcnlfZGF0YSA9IGFycmF5KCdxJz0+JGtleU5hbWUsKTsKLy8gCSRteV9hbGltYW1hID0gbmV3IGpkX2JlYW4oJHF1ZXJ5X2RhdGEpOwovLyAJJG15X2FsaW1hbWEtPnF1ZXJ5KCk7Ci8vIAkkbXlfY29udGVudCA9ICRteV9hbGltYW1hLT5odG1sKCk7Ci8vIH0KLy8gJGRhdGEgPSBzdHJfcmVwbGFjZSgnPHBocHVsPjwvcGhwdWw+JywkbXlfY29udGVudCwkZGF0YSk7Ci8vIGlmKHN0cnBvcygkZGF0YSwiW2l0ZW06bWVudV0iKSE9PSBmYWxzZSYmIWVtcHR5KCRrZXlOYW1lKSl7Ci8vIAkkdGFnX3VybCA9ICdodHRwczovL3N1Z2dlc3QudGFvYmFvLmNvbS9zdWc/Y29kZT11dGYtOCZxPScudXJsZW5jb2RlKCRrZXlOYW1lKTsKLy8gCSR0YWdfY29udGVudCA9IGFsaW1hbWE6Okh0dHBWaXNpdCgkdGFnX3VybCk7Ci8vIAkkdGFnX2pzb24gPSBqc29uX2RlY29kZSgkdGFnX2NvbnRlbnQsdHJ1ZSk7Ci8vIAkkdGFnX21lbnUgPSAnJzsKLy8gCWZvcmVhY2ggKCR0YWdfanNvblsncmVzdWx0J10gYXMgJGtleSA9PiAkdmFsdWUpIHsKLy8gCQkkaHR0cF9ob3N0ID0gJF9TRVJWRVJbJ0hUVFBfSE9TVCddOwovLyAJCSRwaHBfc2VsZiA9ICRfU0VSVkVSWydQSFBfU0VMRiddOwovLyAgCQkkdGFnX2l0ZW1fdXJsPSdodHRwOi8vJy4kaHR0cF9ob3N0LiRwaHBfc2VsZi4nP2tleU5hbWU9Jy51cmxlbmNvZGUoJHZhbHVlWzBdKTsKLy8gCQkkdGFnX21lbnUgPSAkdGFnX21lbnUuJzxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSInLiR0YWdfaXRlbV91cmwuJyI+Jy4kdmFsdWVbMF0uJzwvYT4nOwovLyAJfQovLyAJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06bWVudV0nLCR0YWdfbWVudSwkZGF0YSk7Ci8vIH0KCgpjbGFzcyBqZF9iZWFuewoJCglwdWJsaWMgJGNyYXdsX3VybCA9ICJodHRwOi8vaW1hZ2Uuc28uY29tL2oiOwoJcHVibGljICRxdWVyeV9kYXRhOwoJcHVibGljICRjb250ZW50OwoJcHVibGljICR0aXRsZTsKCgkvL+WumuS5ieaehOmAoOWHveaVsO+8jOeUqOS6juWIneWni+WMlui1i+WAvAoJLy8gc2VhcmNoX3R5cGU9MCZfaW5wdXRfY2hhcnNldD11dGYtOCZuYXZpZ2F0b3I9YWxsJmpzb249b24mcT1pcGhvbmU25omL5py65aOzCiAgICBmdW5jdGlvbiBfX2NvbnN0cnVjdCgkY3Jhd2xfdXJsLCRxdWVyeV9kYXRhKQogICAgewogICAgICAgICR0aGlzLT5xdWVyeV9kYXRhID0gJHF1ZXJ5X2RhdGE7ICAgICAgICAvL+i/memHjOW3sue7j+S9v+eUqOS6hnRoaXPmjIfpkojor63lj6XikaAKICAgICAgICAkdGhpcy0+Y3Jhd2xfdXJsID0gJGNyYXdsX3VybDsgCiAgICB9CgoJcHVibGljIGZ1bmN0aW9uIHNldFF1ZXJ5RGF0YSgkcXVlcnlfZGF0YSl7CgkJJHRoaXMtPnF1ZXJ5X2RhdGEgPSAkcXVlcnlfZGF0YTsKCQlyZXR1cm4gdHJ1ZTsKCX0KCglwdWJsaWMgZnVuY3Rpb24gbGlzdHMoKXsKCQkkYXJyX2xpc3QgPSBhcnJheSgpOwoJCXRyeSB7CgkJCSRjb250ZW50ID0gJHRoaXMtPmNvbnRlbnQ7CgkJCS8vIGxpc3QuaHRtbD9jYXQ9NjcyOCw2NzQ3LDY3OTIiIHRhcmdldD0iX2JsYW5rIj7lronlhajluqfmpIU8L2E+CgkJCS8vICRjb250ZW50ID0gbWJfY29udmVydF9lbmNvZGluZygkY29udGVudCwgIlVURi04IiwgIkdCSyIpOyAKCQkJLy8gcHJpbnQoJGNvbnRlbnQpOwoJCQlpZihwcmVnX21hdGNoX2FsbCgnKGhyZWY9Imh0dHA6Ly9saXN0LnloZC5jb20vKFtBLVphLXowLTlcXC0vXSspLyIoW1xcc1xcU14+XjxdKj8pPihbXFxzXFxTXSs/KTwvYT4pJywgJGNvbnRlbnQsICRtYXRjaGVzKSl7CgkJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJCS8vICRpZCA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCQkJIGZvcmVhY2goJG1hdGNoZXNbMV0gYXMgJGk9PiRrMSl7CgkJCQkgICAkazI9JG1hdGNoZXNbM11bJGldOwoJCQkJICAgLy8gZWNobyAiICRrMSAkazIgPGJyPlxuIjsKCQkJCSAgICRhcnJfbGlzdFtdID0gYXJyYXkoCgkJCQkgICAJCSJuYW1lIj0+JGsyLAoJCQkJICAgCQkiY2F0Ij0+JGsxLAoJCQkJICAgKTsKCQkJCSB9CgkJCX0KCQl9IGNhdGNoIChFeGNlcHRpb24gJGUpIHsKCQkJCgkJfQoJCXJldHVybiAkYXJyX2xpc3Q7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIGl0ZW1zKCl7CgkJJGl0ZW1zID0gYXJyYXkoKTsKCQl0cnkgewoJCQkkY29udGVudCA9ICR0aGlzLT5jb250ZW50OwoJCQkvLyBwcmludCgkY29udGVudCk7CgkJCWlmKHByZWdfbWF0Y2hfYWxsKCcocG1JZFxcPSIoWzAtOV0rPykiKFtePl0rPyl0aXRsZVxcPSIoW1xcc1xcU3xePl0rPykiKScsICRjb250ZW50LCAkbWF0Y2hlcykpewoJCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCQlmb3JlYWNoKCRtYXRjaGVzWzFdIGFzICRpPT4kazEpewoJCQkJICAgJGsyPSRtYXRjaGVzWzNdWyRpXTsKCQkJCSAgIGlmKCFzdHJpc3RyKCRrMiwiPGltZyIpKXsKCQkJCQkgICAkaXRlbXNbXSA9IGFycmF5KAoJCQkJCSAgIAkJIm5hbWUiPT4kazIsCgkJCQkJICAgCQkiaWQiPT4kazEsCgkJCQkJICAgKTsKCQkJCSAgIH0KCQkJCX0KCQkJfQoJCQlpZihwcmVnX21hdGNoKCcoPHRpdGxlPihbXFxzXFxTXSs/KTwvdGl0bGU+KScsICRjb250ZW50LCAkbWF0Y2hlcykpewoJCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCQkkdGhpcy0+dGl0bGUgPSB0cmltKCRtYXRjaGVzWzFdKTsKCQkJfQoJCX0gY2F0Y2ggKEV4Y2VwdGlvbiAkZSkgewoJCQkKCQl9CgkJcmV0dXJuICRpdGVtczsKCX0KCglwdWJsaWMgZnVuY3Rpb24gaXRlbSgpewoJCSRpdGVtID0gYXJyYXkoKTsKCQl0cnkgewoJCQkkY29udGVudCA9ICR0aGlzLT5jb250ZW50OwoJCQkvLyBwcmludCgkY29udGVudCk7CgkJCS8vIGlmKHByZWdfbWF0Y2hfYWxsKCcoc2VsbCIgdGFyZ2V0XFw9Il9ibGFuayIgaHJlZlxcPSJodHRwOi8vcHJvZHVjdFxcLnN1bmluZ1xcLmNvbS8oW1xcc1xcU14+XSs/KVxcLmh0bWwiIHRpdGxlXFw9IihbXFxzXFxTXj5dKz8pIiknLCAkY29udGVudCwgJG1hdGNoZXMpKXsKCQkJLy8gCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkvLyAJZm9yZWFjaCgkbWF0Y2hlc1sxXSBhcyAkaT0+JGsxKXsKCQkJLy8gCSAgICRrMj0kbWF0Y2hlc1syXVskaV07CgkJCS8vIAkgICAkaXRlbXNbXSA9IGFycmF5KAoJCQkvLyAJICAgCQkibmFtZSI9PiRrMiwKCQkJLy8gCSAgIAkJImlkIj0+JGsxLAoJCQkvLyAJICAgKTsKCQkJLy8gCX0KCQkJLy8gfWVsc2UgaWYocHJlZ19tYXRjaF9hbGwoJyhwcm9JbWcgYmwgZmwgc2VsbFBvaW50IiB0aXRsZVxcPSIoW1xcc1xcU14+XSs/KSIgdGFyZ2V0PSJfYmxhbmsiIGhyZWZcXD0iaHR0cDovL3Byb2R1Y3RcXC5zdW5pbmdcXC5jb20vKFtcXHNcXFNePl0rPylcXC5odG1sIiknLCAkY29udGVudCwgJG1hdGNoZXMpKXsKCQkJLy8gCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkvLyAJZm9yZWFjaCgkbWF0Y2hlc1sxXSBhcyAkaT0+JGsxKXsKCQkJLy8gCSAgICRrMj0kbWF0Y2hlc1syXVskaV07CgkJCS8vIAkgICAkaXRlbXNbXSA9IGFycmF5KAoJCQkvLyAJICAgCQkibmFtZSI9PiRrMSwKCQkJLy8gCSAgIAkJImlkIj0+JGsyLAoJCQkvLyAJICAgKTsKCQkJLy8gCX0KCQkJLy8gfQoJCQlpZihwcmVnX21hdGNoKCcoPHRpdGxlPihbXFxzXFxTXSs/KTwvdGl0bGU+KScsICRjb250ZW50LCAkbWF0Y2hlcykpewoJCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCQkkaXRlbVsndGl0bGUnXSA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCQl9CgkJCWlmKHByZWdfbWF0Y2goJyhuYW1lXFw9ImtleXdvcmRzIiBjb250ZW50XFw9IihbXFxzXFxTXSs/KSIpJywgJGNvbnRlbnQsICRtYXRjaGVzKSl7CgkJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJCSRpdGVtWydrZXl3b3JkcyddID0gdHJpbSgkbWF0Y2hlc1sxXSk7CgkJCX0KCQkJaWYocHJlZ19tYXRjaCgnKDxkaXYgY2xhc3NcXD0iZGVzY29uIiBpZFxcPSJkZXRhaWxfZGVzY19jb250ZW50Ij4oW1xcc1xcU10rPyk8ZGl2IGNsYXNzXFw9ImNsZWFyZml4IiBpZFxcPVwnYnV5ZXJfZXhwZXJpZW5jZVwnPiknLCAkY29udGVudCwgJG1hdGNoZXMpKXsKCQkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkJJGNvbnRlbnQgPSB0cmltKCRtYXRjaGVzWzFdKTsKCQkJCSRjb250ZW50ID1wcmVnX3JlcGxhY2UoIi88YVtePl0qPiguKik8XC9hPi9pc1UiLCckezF9JywkY29udGVudCk7CgkJCQkkY29udGVudCA9cHJlZ19yZXBsYWNlKCIvPHNjcmlwdFtcc1xTXSo/PFwvc2NyaXB0Pi9pIiwiIiwkY29udGVudCwzKTsKCQkJCSRjb250ZW50ID1wcmVnX3JlcGxhY2UoIi88KGk/ZnJhbWUuKj8pPiguKj8pPChcL2k/ZnJhbWUuKj8pPi9zaSIsIiIsJGNvbnRlbnQpOyAvL+i/h+a7pGZyYW1l5qCH562+CgkJCQkkY29udGVudCA9cHJlZ19yZXBsYWNlKCIvXHMrLyIsICIgIiwgJGNvbnRlbnQpOyAvL+i/h+a7pOWkmuS9meWbnui9pgoJCQkJJGNvbnRlbnQgPXByZWdfcmVwbGFjZSgiLzwoXC8/c3R5bGUuKj8pPi9zaSIsIiIsJGNvbnRlbnQpOyAvL+i/h+a7pHN0eWxl5qCH562+CgkJCQkkY29udGVudCA9cHJlZ19yZXBsYWNlKCIvPHNjcmlwdFtcc1xTXSo/PFwvc2NyaXB0Pi9pIiwiIiwkY29udGVudCwzKTsKCQkJCSRjb250ZW50ID1wcmVnX3JlcGxhY2UoIi88c2NyaXB0W1xzXFNdKj88XC9zY3JpcHQ+L2kiLCIiLCRjb250ZW50LDMpOwoKCQkJCSRpdGVtWydjb250ZW50J10gPSB0cmltKCRjb250ZW50KTsKCQkJfQoJCX0gY2F0Y2ggKEV4Y2VwdGlvbiAkZSkgewoJCQkKCQl9CgkJcmV0dXJuICRpdGVtOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBxdWVyeSgpewoJCXRyeSB7CgkJCSR1cmwgID0gJHRoaXMtPmNyYXdsX3VybC4nPycuaHR0cF9idWlsZF9xdWVyeSgkdGhpcy0+cXVlcnlfZGF0YSk7CgkJCSR0aGlzLT5jb250ZW50ID0gY29yZUFwcENhY2hlOjpodHRwX3Zpc2l0KCR1cmwpOwoJCQkvLyAkdGhpcy0+Y29udGVudCA9IGljb252KCJHQksiLCAiVVRGLTgvL0lHTk9SRSIsICR0aGlzLT5jb250ZW50KTsKCQl9IGNhdGNoIChFeGNlcHRpb24gJGUpIHsKCQkJCgkJfQoJCS8vIHByaW50KCR0aGlzLT5jb250ZW50KTsKCX0KCglwdWJsaWMgZnVuY3Rpb24ga2V5d29yZHMoJHEpewoJCXRyeSB7CgkJCSRrZXl3b3Jkc19saXN0ID0gYXJyYXkoKTsKCQkJJHF1ZXJ5X2RhdGEgPSBhcnJheSgKCSAgICAgICAgCSd3ZCc9PiRxCgkgICAgICAgIAksJ3AnPT4nMycKCSAgICAgICAgCSwnaWUnPT4ndXRmLTgnCgkgICAgICAgIAksJ2Zyb20nPT4nd2lzZV93ZWInCgkgICAgICAgICk7ICAgICAgICAvLwoJCQkkdXJsID0gImh0dHA6Ly9tLmJhaWR1LmNvbS9zdT8iLmh0dHBfYnVpbGRfcXVlcnkoJHF1ZXJ5X2RhdGEpOwoJCQkvLyAkdXJsICA9ICR0aGlzLT5jcmF3bF91cmwuJz8nLmh0dHBfYnVpbGRfcXVlcnkoJHRoaXMtPnF1ZXJ5X2RhdGEpOwoJCQkkY29udGVudCA9IGNvcmVBcHBDYWNoZTo6aHR0cF92aXNpdCgkdXJsKTsKCQkJJGNvbnRlbnQgPSBzdWJzdHIoJGNvbnRlbnQsIHN0cmxlbigid2luZG93LmJhaWR1LnN1ZygiKSk7CgkJCSRjb250ZW50ID0gc3Vic3RyKCRjb250ZW50LCAwLHN0cmxlbigkY29udGVudCktMik7CgkJCS8vIHByaW50KCRjb250ZW50KTsKCgkJCSRjb250ZW50ID0gdHJpbSgkY29udGVudCk7CgkJCSRiZWlnaW4gPSAgc3RycG9zKCRjb250ZW50LCJzOlsiKTsKCQkJJGNvbnRlbnQgPSBzdWJzdHIoJGNvbnRlbnQsICRiZWlnaW4rMixzdHJsZW4oJGNvbnRlbnQpLTIpOwoJCQkkZW5kID0gIHN0cnBvcygkY29udGVudCwifSIpOwoJCQkvLyBwcmludCgkZW5kKTsKCQkJJGNvbnRlbnQgPSBzdWJzdHIoJGNvbnRlbnQsIDAsJGVuZCk7CgkJCS8vIHByaW50KCRjb250ZW50KTsKCgoJCQkka2V5d29yZHNfanNvbiA9IGpzb25fZGVjb2RlKCRjb250ZW50LHRydWUpOwoJCQkvLyBwcmludF9yKCRrZXl3b3Jkc19qc29uKTsKCQkJZm9yZWFjaCAoJGtleXdvcmRzX2pzb24gYXMgJGtleSA9PiAkdmFsdWUpIHsKCQkgCQkka2V5d29yZHNfbGlzdFtdID0gJHZhbHVlOwoJCSAJCS8vIGVjaG8gJHZhbHVlOwoJCSAJfQoJCSAJLy8gZWNobyAiMzMzMyI7CgkJfSBjYXRjaCAoRXhjZXB0aW9uICRlKSB7CgkJCS8vIGVjaG8gIjMzMzMiOwoJCS8vIAllY2hvICJnZXRNZXNzYWdl77yaIi4kZS0+Z2V0TWVzc2FnZSgpOy8vRXhjZXB0aW9uKCnnmoTns7vnu5/mlrnms5Xojrflj5blvILluLjkv6Hmga8gCgkgLy8gZWNobyAiZ2V0RmlsZe+8miIuJGUtPmdldEZpbGUoKTsvL0V4Y2VwdGlvbigp55qE57O757uf5pa55rOV6I635Y+W5byC5bi45paH5Lu25ZCNIAoJIC8vIGVjaG8gImdldExpbmXvvJoiLiRlLT5nZXRMaW5lKCk7Ly9FeGNlcHRpb24oKeeahOezu+e7n+aWueazleiOt+WPluW8guW4uOihjOaVsCAKCQl9CgkJcmV0dXJuICRrZXl3b3Jkc19saXN0OwoJCS8vIHByaW50KCR0aGlzLT5jb250ZW50KTsKCX0KCn0KCgpjbGFzcyBjb3JlQXBwQ2FjaGV7CgkKCXB1YmxpYyBmdW5jdGlvbiB3cml0ZSgkZmlsZSwkZmlsZW5hbWUpewoJCXJldHVybiBmaWxlX3B1dF9jb250ZW50cygkZmlsZW5hbWUsc2VsZjo6ZW5jb2RlKCRmaWxlKSk7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIHdyaXRlbm9jb2RlKCRmaWxlLCRmaWxlbmFtZSl7CgkJcmV0dXJuIGZpbGVfcHV0X2NvbnRlbnRzKCRmaWxlbmFtZSwkZmlsZSk7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIHJlYWQoJGZpbGVuYW1lKXsKCQkkY29udGVudCA9IGZpbGVfZ2V0X2NvbnRlbnRzKCRmaWxlbmFtZSk7CgkJaWYoc3RyaXN0cigkY29udGVudCwiPC9leHBsb2RlPiIpKXsKCQkJJGNvbnRlbnQgPSBzZWxmOjpjdXQoJGNvbnRlbnQsIjxleHBsb2RlPiIsIjwvZXhwbG9kZT4iKTsKCQl9CgkJcmV0dXJuIHNlbGY6OmRlY29kZSgkY29udGVudCk7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIHJlYWRub2NvZGUoJGZpbGVuYW1lKXsKCQkkY29udGVudCA9IGZpbGVfZ2V0X2NvbnRlbnRzKCRmaWxlbmFtZSk7CgkJaWYoc3RyaXN0cigkY29udGVudCwiPC9leHBsb2RlPiIpKXsKCQkJJGNvbnRlbnQgPSBzZWxmOjpjdXQoJGNvbnRlbnQsIjxleHBsb2RlPiIsIjwvZXhwbG9kZT4iKTsKCQl9CgkJcmV0dXJuICRjb250ZW50OwoJfQoKCXB1YmxpYyBmdW5jdGlvbiByZWFkUGhwQ29kZSgkZmlsZW5hbWUsJGFkZF9jb250ZW50MSwkYWRkX2NvbnRlbnQyKXsKCQkkY29udGVudCA9IGZpbGVfZ2V0X2NvbnRlbnRzKCRmaWxlbmFtZSk7CgkJaWYoc3RyaXN0cigkY29udGVudCwiPCIuIj9waHAiKSl7CgkJCSRjb250ZW50ID0gc2VsZjo6Y3V0KCRjb250ZW50LCI8PyIuInBocCIsIj8iLiI+Iik7CgkJfQoJCWlmKCFlbXB0eSgkYWRkX2NvbnRlbnQxKSl7CgkJCSRjb250ZW50ID0gJGFkZF9jb250ZW50MS4kY29udGVudDsKCQl9CgkJaWYoIWVtcHR5KCRhZGRfY29udGVudDIpKXsKCQkJJGNvbnRlbnQgPSAkY29udGVudC4kYWRkX2NvbnRlbnQyOwoJCX0KCQlyZXR1cm4gJGNvbnRlbnQ7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIGVuY29kZSgkZmlsZSl7CgkJcmV0dXJuIGJhc2U2NF9lbmNvZGUoZ3pjb21wcmVzcyhzZXJpYWxpemUoJGZpbGUpKSk7IAoJfQoKCXB1YmxpYyBmdW5jdGlvbiBkZWNvZGUoJGZpbGUpewoJCXJldHVybiB1bnNlcmlhbGl6ZShnenVuY29tcHJlc3MoYmFzZTY0X2RlY29kZSgkZmlsZSkpKTsgCgl9CgkKCXB1YmxpYyBmdW5jdGlvbiBjdXQoJGZpbGUsJGZyb20sJGVuZCkKCXsgCgkJJG1lc3NhZ2U9ZXhwbG9kZSgkZnJvbSwkZmlsZSk7IAoJCSRtZXNzYWdlPWV4cGxvZGUoJGVuZCwkbWVzc2FnZVsxXSk7IAoJCXJldHVybiAgICRtZXNzYWdlWzBdOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBybmRTdHIoJGxlbmd0aD04KXsKCQkkc3RyID0gbnVsbDsKCQkkc3RyUG9sID0gIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5eiI7CgkJJG1heCA9IHN0cmxlbigkc3RyUG9sKS0xOwoJCWZvcigkaT0wOyRpPCRsZW5ndGg7JGkrKyl7CgkJCSRzdHIuPSRzdHJQb2xbcmFuZCgwLCRtYXgpXTsKCQl9CgkJcmV0dXJuICRzdHI7Cgl9CgoJLy/ov4fmu6TnmoTmlY/mhJ/or40KCXB1YmxpYyBmdW5jdGlvbiBraWxsX2lsbGVnYWxrZXlzKCRzdHIpewoJCSRhcnJfa2lsbF9rZXlzID1hcnJheSgn5YiAJywn5p6qJywn5YyV6aaWJywnMeWPt+W6lycpOyAgICAgICAgICAgLy/opoHov4fmu6TnmoTmlY/mhJ/or40g5Zu95YaF55So5oi35b+F6aG76L+H5rukCgkJcmV0dXJuIHN0cl9yZXBsYWNlKCRhcnJfa2lsbF9rZXlzLCcgJywkc3RyKTsKCX0KCgkvL+aVsOWtl+eugOWNleWKoOWvhgoJcHVibGljIGZ1bmN0aW9uIGVuY29kZV9pZCgkaWQsJG51bWJlcikgewoJCSRtaXdlbiA9ICgkbnVtYmVyPT0wKT8kaWQ6KCRudW1iZXIuJGlkKTsKCQlyZXR1cm4gJG1pd2VuOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBkZWNvZGVfaWQoJG1pd2VuLCRudW1iZXIpIHsKCQkkaWQgPSAoJG51bWJlcj09MCk/JG1pd2VuOnN1YnN0cigkbWl3ZW4sc3RybGVuKCRudW1iZXIpKTsKCQlyZXR1cm4gJGlkOwoJfQoKCS8v5pWw5a2X566A5pu/5o2i5oiQ5a2X5q+NCglwdWJsaWMgZnVuY3Rpb24gdG9fYWJjKCRudW0pewoJCSRuID1hcnJheSgnMScsJzInLCczJywnNCcsJzUnLCc2JywnNycsJzgnLCc5JywnMCcpOwoJCSRzID1hcnJheSgnbCcsJ2snLCdqJywnaCcsJ20nLCduJywndicsJ2MnLCdlJywnaScpOwoJCXJldHVybiBzdHJfcmVwbGFjZSgkbiwkcywkbnVtKTsKCX0KCXB1YmxpYyBmdW5jdGlvbiB0b18xMjMoJHN0cil7CgkJJG4gPWFycmF5KCcxJywnMicsJzMnLCc0JywnNScsJzYnLCc3JywnOCcsJzknLCcwJyk7CgkJJHMgPWFycmF5KCdsJywnaycsJ2onLCdoJywnbScsJ24nLCd2JywnYycsJ2UnLCdpJyk7CgkJcmV0dXJuIHN0cl9yZXBsYWNlKCRzLCRuLCRzdHIpOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBodHRwX3Zpc2l0KCR3ZWJ1cmwpIHsKICAgIAkkdXNlcl9hZ2VudCA9ICJNb3ppbGxhLzUuMCAoTWFjaW50b3NoOyBJbnRlbCBNYWMgT1MgWCAxMF8xMF81KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvNDUuMC4yNDU0Ljg1IFNhZmFyaS81MzcuMzYgUVFCcm93c2VyLzMuOS4zOTQzLjQwMCI7CiAgICAgICAgJHJlbW90ZV9kYXRhID0gTlVMTDsKICAgICAgICBpZiAoZnVuY3Rpb25fZXhpc3RzKCdjdXJsX2V4ZWMnKSkgewogICAgICAgICAgICAkY3VybCA9IEBjdXJsX2luaXQoKTsKICAgICAgICAgICAgQGN1cmxfc2V0b3B0KCRjdXJsLCBDVVJMT1BUX1VSTCwgJHdlYnVybCk7CiAgICAgICAgICAgIEBjdXJsX3NldG9wdCgkY3VybCwgQ1VSTE9QVF9IRUFERVIsIDApOwogICAgICAgICAgICBAY3VybF9zZXRvcHQoJGN1cmwsIENVUkxPUFRfQ09OTkVDVFRJTUVPVVQsIDMwKTsKICAgICAgICAgICAgQGN1cmxfc2V0b3B0KCRjdXJsLCBDVVJMT1BUX1JFVFVSTlRSQU5TRkVSLCAxKTsKICAgICAgICAgICAgQGN1cmxfc2V0b3B0KCRjdXJsLCBDVVJMT1BUX1VTRVJBR0VOVCwgJHVzZXJfYWdlbnQpOyAKICAgICAgICAgICAgLy8gQGN1cmxfc2V0b3B0KCRjdXJsLCBDVVJMT1BUX0VOQ09ESU5HLCAiR0JLIik7CiAgICAgICAgICAgIC8vIEBjdXJsX3NldG9wdCgkY3VybCwgQ1VSTE9QVF9SRUZFUkVSLCdodHRwOi8vcHViLmFsaW1hbWEuY29tL3Byb21vL3NlYXJjaC9pbmRleC5odG0/cT1rayVFOCVBMyVBNCVFNSVBRCU5MCZfdD0xNDU3MDA1MjI2MjEzJyk7CiAgICAgICAgICAgICRyZW1vdGVfZGF0YSA9IEBjdXJsX2V4ZWMoJGN1cmwpOwogICAgICAgICAgICBAY3VybF9jbG9zZSgkY3VybCk7CiAgICAgICAgICAgIC8vIHByaW50KCdjdXJsX2V4ZWMnKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBpZiAoZnVuY3Rpb25fZXhpc3RzKCdzdHJlYW1fY29udGV4dF9jcmVhdGUnKSkgewogICAgICAgICAgICAgICAgJGhlYWRlcl9hcnJheSA9IGFycmF5KCdodHRwJyA9PiBhcnJheSgnbWV0aG9kJyA9PiAnR0VUJywgJ3RpbWVvdXQnID0+IDMwKSk7CiAgICAgICAgICAgICAgICAkaHR0cF9oZWFkZXIgPSBAc3RyZWFtX2NvbnRleHRfY3JlYXRlKCRoZWFkZXJfYXJyYXkpOwogICAgICAgICAgICAgICAgJHJlbW90ZV9kYXRhID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCR3ZWJ1cmwsIGZhbHNlLCAkaHR0cF9oZWFkZXIpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgJHRlbXBfdXJsID0gZXhwbG9kZSgiLyIsICR3ZWJ1cmwpOwogICAgICAgICAgICAgICAgJG5ld191cmwgPSAkdGVtcF91cmxbMl07CiAgICAgICAgICAgICAgICAkaHR0cF9wb3J0ID0gODA7CiAgICAgICAgICAgICAgICAkZ2V0X2ZpbGUgPSBzdWJzdHIoJHdlYnVybCwgc3RybGVuKCRuZXdfdXJsKSArIDcpOwogICAgICAgICAgICAgICAgaWYgKHN0cnN0cigkbmV3X3VybCwgY2hyKDU4KSkpIHsKICAgICAgICAgICAgICAgICAgICAkc192YXJfYXJyYXlbJ3RkJ10gPSBleHBsb2RlKGNocig1OCksICRuZXdfdXJsKTsKICAgICAgICAgICAgICAgICAgICAkbmV3X3VybCA9ICRzX3Zhcl9hcnJheVsndGQnXVswXTsKICAgICAgICAgICAgICAgICAgICAkaHR0cF9wb3J0ID0gJHNfdmFyX2FycmF5Wyd0ZCddWzFdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJGZzb2NrX3Jlc3VsdCA9IEBmc29ja29wZW4oJG5ld191cmwsICRodHRwX3BvcnQpOwogICAgICAgICAgICAgICAgQGZwdXRzKCRmc29ja19yZXN1bHQsICdHRVQgJyAuICRnZXRfZmlsZSAuICcgSFRUUC8xLjEnIC4gIlxyXG4iIC4gJ0hvc3Q6JyAuICRuZXdfdXJsIC4gIlxyXG4iIC4gJ0Nvbm5lY3Rpb246Q2xvc2UnIC4gIlxyXG5cclxuIik7CiAgICAgICAgICAgICAgICB3aGlsZSAoIWZlb2YoJGZzb2NrX3Jlc3VsdCkpIHsKICAgICAgICAgICAgICAgICAgICAkcmVtb3RlX2RhdGEgLj0gZmdldHMoJGZzb2NrX3Jlc3VsdCwgMTAyNCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBAZmNsb3NlKCRmc29ja19yZXN1bHQpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiAkcmVtb3RlX2RhdGE7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIGdldFNlcnZlck5hbWUoKSAKCXsgCgkJJFNlcnZlck5hbWUgPSBzdHJ0b2xvd2VyKCRfU0VSVkVSWydTRVJWRVJfTkFNRSddPyRfU0VSVkVSWydTRVJWRVJfTkFNRSddOiRfU0VSVkVSWydIVFRQX0hPU1QnXSk7IAoJCWlmKCBzdHJwb3MoJFNlcnZlck5hbWUsJ2h0dHA6Ly8nKSApIAoJCXsgCgkJCXJldHVybiBzdHJfcmVwbGFjZSgnaHR0cDovLycsJycsJFNlcnZlck5hbWUpOyAKCQl9IAoJCXJldHVybiAkU2VydmVyTmFtZTsgCgl9CgoJcHVibGljIGZ1bmN0aW9uIGNsaWVudElwKCl7CgkJaWYoZ2V0ZW52KCdIVFRQX0NMSUVOVF9JUCcpICYmIHN0cmNhc2VjbXAoZ2V0ZW52KCdIVFRQX0NMSUVOVF9JUCcpLCAndW5rbm93bicpKSB7CgkJCSRvbmxpbmVpcCA9IGdldGVudignSFRUUF9DTElFTlRfSVAnKTsKCQl9IGVsc2VpZihnZXRlbnYoJ0hUVFBfWF9GT1JXQVJERURfRk9SJykgJiYgc3RyY2FzZWNtcChnZXRlbnYoJ0hUVFBfWF9GT1JXQVJERURfRk9SJyksICd1bmtub3duJykpIHsKCQkJJG9ubGluZWlwID0gZ2V0ZW52KCdIVFRQX1hfRk9SV0FSREVEX0ZPUicpOwoJCX0gZWxzZWlmKGdldGVudignUkVNT1RFX0FERFInKSAmJiBzdHJjYXNlY21wKGdldGVudignUkVNT1RFX0FERFInKSwgJ3Vua25vd24nKSkgewoJCQkkb25saW5laXAgPSBnZXRlbnYoJ1JFTU9URV9BRERSJyk7CgkJfSBlbHNlaWYoaXNzZXQoJF9TRVJWRVJbJ1JFTU9URV9BRERSJ10pICYmICRfU0VSVkVSWydSRU1PVEVfQUREUiddICYmIHN0cmNhc2VjbXAoJF9TRVJWRVJbJ1JFTU9URV9BRERSJ10sICd1bmtub3duJykpIHsKCQkJJG9ubGluZWlwID0gJF9TRVJWRVJbJ1JFTU9URV9BRERSJ107CgkJfQoJCXByZWdfbWF0Y2goIi9bXGRcLl17NywxNX0vIiwgJG9ubGluZWlwLCAkb25saW5laXBtYXRjaGVzKTsKCQkkb25saW5laXAgPSAkb25saW5laXBtYXRjaGVzWzBdID8gJG9ubGluZWlwbWF0Y2hlc1swXSA6ICd1bmtub3duJzsKCQl1bnNldCgkb25saW5laXBtYXRjaGVzKTsKCQlyZXR1cm4gJG9ubGluZWlwOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBpc0FsbG93ZElwKCRhbGxvd19pcCl7CgkJJGlwID0gc2VsZjo6Y2xpZW50SXAoKTsKCQkkbm9uX2xpc3QgPSBleHBsb2RlKCJ8IiwkYWxsb3dfaXApOwoJCWZvcmVhY2goJG5vbl9saXN0IGFzICRpcGxpc3QpewoJCQlpZihAc3RyaXN0cigkaXAsJGlwbGlzdCkpewoJCQkJcmV0dXJuIGZhbHNlOwoJCQl9CgkJfQoJCXJldHVybiB0cnVlOwoJfQoKCS8v5Yqg5a+G57+76L2s5a2X56ymCglwdWJsaWMgZnVuY3Rpb24gZW5jb2RlX3N0cnJldigkZmlsZSl7CgkJcmV0dXJuIHN0cnJldihiYXNlNjRfZW5jb2RlKCRmaWxlKSk7IAoJfQoJLy/nv7vovazop6Plr4blrZfnrKYKCXB1YmxpYyBmdW5jdGlvbiBkZWNvZGVfc3RycmV2KCRmaWxlKXsKCQlyZXR1cm4gYmFzZTY0X2RlY29kZShzdHJyZXYoJGZpbGUpKTsgCgl9CgoJcHVibGljIGZ1bmN0aW9uIHNlb19waWMoJGl0ZW1fcGljdFVybCwkY29uZmlnX2l0ZW0sJGhvc3RfaXRlbSwkZG9tYWluVXJsKXsKCQkkc2VvcGljID0gJGl0ZW1fcGljdFVybDsKCQlpZighZW1wdHkoJGl0ZW1fcGljdFVybCkpewoJCQkkaG9zdF9zZW9waWMgPSAkaG9zdF9pdGVtWyd1cmxfc2VvX3BpYyddOwoJCQkkaXRlbV9waWN0VXJsX2Jhc2U2NCA9IGJhc2U2NF9lbmNvZGUoJGl0ZW1fcGljdFVybCk7CgkJCSRpdGVtX3BpY3RVcmxfYmFzZTY0X3JldiA9IHNlbGY6OmVuY29kZV9zdHJyZXYoJGl0ZW1fcGljdFVybCk7CgkJCWV2YWwoIlwkc2VvcGljID0gXCIkaG9zdF9zZW9waWNcIjsiKTsKCQl9CgkJcmV0dXJuICRzZW9waWM7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIHNlbygkaXRlbXMsJGNvbmZpZ19pdGVtLCRob3N0X2l0ZW0sJGRvbWFpblVybCl7CgkJJGl0ZW1zX25ld3MgPSBhcnJheSgpOwoJCWlmKCFlbXB0eSgkaXRlbXMpKXsKCQkJZm9yZWFjaCAoJGl0ZW1zIGFzICRrZXkgPT4gJHZhbHVlKSB7CgkJCQkkaXRlbV9waWN0VXJsID0gJHZhbHVlWydwaWN1cmwnXTsKCQkJCWlmKCFlbXB0eSgkaXRlbV9waWN0VXJsKSl7CgkJCQkJJGhvc3Rfc2VvcGljID0gJGhvc3RfaXRlbVsndXJsX3Nlb19waWMnXTsKCQkJCQkkaXRlbV9waWN0VXJsX2Jhc2U2NCA9IGJhc2U2NF9lbmNvZGUoJGl0ZW1fcGljdFVybCk7CgkJCQkJJGl0ZW1fcGljdFVybF9iYXNlNjRfcmV2ID0gc2VsZjo6ZW5jb2RlX3N0cnJldigkaXRlbV9waWN0VXJsKTsKCQkJCQlldmFsKCJcJHNlb3BpYyA9IFwiJGhvc3Rfc2VvcGljXCI7Iik7CgkJCQkJJHZhbHVlWydzZW9waWMnXSA9ICRzZW9waWM7CgkJCQl9CgoJCQkJJGl0ZW1fdXJsID0gJHZhbHVlWyd1cmwnXTsKCQkJCWlmKCFlbXB0eSgkaXRlbV91cmwpKXsKCQkJCQkkaG9zdF9zZW9faXRlbV91cmwgPSAkaG9zdF9pdGVtWyd1cmxfc2VvX2l0ZW0nXTsKCQkJCQkkaXRlbV91cmxfYmFzZTY0ID0gYmFzZTY0X2VuY29kZSgkaXRlbV91cmwpOwoJCQkJCSRpdGVtX3VybF9iYXNlNjRfcmV2ID0gc2VsZjo6ZW5jb2RlX3N0cnJldigkaXRlbV91cmwpOwoJCQkJCWV2YWwoIlwkc2VvX2l0ZW1fdXJsID0gXCIkaG9zdF9zZW9faXRlbV91cmxcIjsiKTsKCQkJCQkkdmFsdWVbJ3Nlb191cmwnXSA9ICRzZW9faXRlbV91cmw7CgoJCQkJCSR2YWx1ZVsnYmFzZV91cmwnXSA9ICRpdGVtX3VybF9iYXNlNjQ7CgkJCQl9CgoJCQkJJGl0ZW1zX25ld3NbXSA9ICR2YWx1ZTsKCQkJfQoJCX0KCQlyZXR1cm4gJGl0ZW1zX25ld3M7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIHNlb19zaG93KCRpdGVtcywkY29uZmlnX2l0ZW0sJGhvc3RfaXRlbSwkZG9tYWluVXJsKXsKCQkkaXRlbXNfbmV3cyA9IGFycmF5KCk7CgkJaWYoIWVtcHR5KCRpdGVtcykpewoJCQlmb3JlYWNoICgkaXRlbXMgYXMgJGtleSA9PiAkdmFsdWUpIHsKCQkJCSRpdGVtX3BpY3RVcmwgPSAkdmFsdWVbJ3BpY191cmwnXTsKCQkJCWlmKCFlbXB0eSgkaXRlbV9waWN0VXJsKSl7CgkJCQkJJGhvc3Rfc2VvcGljID0gJGhvc3RfaXRlbVsndXJsX3Nlb19waWMnXTsKCQkJCQkkaXRlbV9waWN0VXJsX2Jhc2U2NCA9IGJhc2U2NF9lbmNvZGUoJGl0ZW1fcGljdFVybCk7CgkJCQkJJGl0ZW1fcGljdFVybF9iYXNlNjRfcmV2ID0gc2VsZjo6ZW5jb2RlX3N0cnJldigkaXRlbV9waWN0VXJsKTsKCQkJCQlldmFsKCJcJHNlb3BpYyA9IFwiJGhvc3Rfc2VvcGljXCI7Iik7CgkJCQkJJHZhbHVlWydzZW9waWMnXSA9ICRzZW9waWM7CgkJCQl9CgkJCQkkdmFsdWVbJ3RpdGxlJ10gPSAkdmFsdWVbJ25hbWUnXTsKCQkJCS8vICRpdGVtX3VybCA9ICR2YWx1ZVsndXJsJ107CgkJCQkvLyBpZighZW1wdHkoJGl0ZW1fdXJsKSl7CgkJCQkvLyAJJGhvc3Rfc2VvX2l0ZW1fdXJsID0gJGhvc3RfaXRlbVsndXJsX3Nlb19pdGVtJ107CgkJCQkvLyAJJGl0ZW1fdXJsX2Jhc2U2NCA9IGJhc2U2NF9lbmNvZGUoJGl0ZW1fdXJsKTsKCQkJCS8vIAkkaXRlbV91cmxfYmFzZTY0X3JldiA9IHNlbGY6OmVuY29kZV9zdHJyZXYoJGl0ZW1fdXJsKTsKCQkJCS8vIAlldmFsKCJcJHNlb19pdGVtX3VybCA9IFwiJGhvc3Rfc2VvX2l0ZW1fdXJsXCI7Iik7CgkJCQkvLyAJJHZhbHVlWydzZW9fdXJsJ10gPSAkc2VvX2l0ZW1fdXJsOwoJCQkJLy8gfQoKCQkJCSRpdGVtc19uZXdzW10gPSAkdmFsdWU7CgkJCX0KCQl9CgkJcmV0dXJuICRpdGVtc19uZXdzOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBzZW9fY2F0ZSgkaXRlbXMsJGNvbmZpZ19pdGVtLCRob3N0X2l0ZW0sJGRvbWFpblVybCl7CgkJJGl0ZW1zX25ld3MgPSBhcnJheSgpOwoJCWlmKCFlbXB0eSgkaXRlbXMpKXsKCQkJZm9yZWFjaCAoJGl0ZW1zIGFzICRrZXkgPT4gJHZhbHVlKSB7CgkJCQkkaXRlbV9jYXRlZ29yeV9pZCA9ICR2YWx1ZVsnY2F0ZWdvcnlfaWQnXTsKCQkJCSRpdGVtX25hbWUgPSAkdmFsdWVbJ25hbWUnXTsKCQkJCSRpdGVtX2NhdGVnb3J5X3B5ID0gQ1V0ZjhfUFk6OmVuY29kZSgkaXRlbV9uYW1lLCAnYWxsJyk7CgoJCQkJJHRlbXBfbnVtX2NpZCA9IHNlbGY6OmVuY29kZV9pZCgkaXRlbV9jYXRlZ29yeV9pZCwkaG9zdF9pdGVtWydoaWQnXSk7CgkJCQkkdGVtcF9zdHJfY2lkID0gc2VsZjo6dG9fYWJjKCR0ZW1wX251bV9jaWQpOwoKCQkJCSR1cmxfc2VvX2NhdGVnb3J5ID0gJGhvc3RfaXRlbVsndXJsX3Nlb19jYXRlZ29yeSddOwoJCQkJLy8gJHRlbXBfbnVtX2NpZCA9IGJhc2U2NF9lbmNvZGUoJGl0ZW1fcGljdFVybCk7CgkJCQkvLyAkaXRlbV9waWN0VXJsX2Jhc2U2NF9yZXYgPSBzZWxmOjplbmNvZGVfc3RycmV2KCRpdGVtX3BpY3RVcmwpOwoJCQkJZXZhbCgiXCR1cmwgPSBcIiR1cmxfc2VvX2NhdGVnb3J5XCI7Iik7CgkJCQkkdmFsdWVbJ3VybCddID0gJHVybDsKCgkJCQkkaXRlbXNfbmV3c1tdID0gJHZhbHVlOwoJCQl9CgkJfQoJCXJldHVybiAkaXRlbXNfbmV3czsKCX0KCglwdWJsaWMgZnVuY3Rpb24gcmFuZGl0ZW1zKCRpdGVtcywkY291bnQpewoJCSRpdGVtc19uZXdzID0gYXJyYXkoKTsKCQlpZighZW1wdHkoJGl0ZW1zKSl7CgkJCXNodWZmbGUoJGl0ZW1zKTsKCQkJZm9yZWFjaCAoJGl0ZW1zIGFzICRrZXkgPT4gJHZhbHVlKSB7CgkJCQlpZigkY291bnQ+MCl7CgkJCQkJJGNvdW50LS07CgkJCQkJJGl0ZW1zX25ld3NbXSA9ICR2YWx1ZTsKCQkJCX0KCQkJfQoJCX0KCQlyZXR1cm4gJGl0ZW1zX25ld3M7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIG1lcmdlX2l0ZW1zKCRpdGVtc19pbmRleCwkaXRlbXNfYWRkLCRjb3VudCl7CgkJJGl0ZW1zX25ld3MgPSBhcnJheSgpOwoJCWlmKCFlbXB0eSgkaXRlbXNfYWRkKSl7CgkJCWZvcmVhY2ggKCRpdGVtc19hZGQgYXMgJGtleSA9PiAkdmFsdWUpIHsKCQkJCWlmKGNvdW50KCRpdGVtc19uZXdzKTwkY291bnQpewoJCQkJCSRpdGVtc19uZXdzWyR2YWx1ZVsndXJsJ11dID0gJHZhbHVlOwoJCQkJfQoJCQl9CgkJfQoJCWlmKCFlbXB0eSgkaXRlbXNfaW5kZXgpKXsKCQkJZm9yZWFjaCAoJGl0ZW1zX2luZGV4IGFzICRrZXkgPT4gJHZhbHVlKSB7CgkJCQlpZihjb3VudCgkaXRlbXNfbmV3cyk8JGNvdW50KXsKCQkJCQkkaXRlbXNfbmV3c1skdmFsdWVbJ3VybCddXSA9ICR2YWx1ZTsKCQkJCX0KCQkJfQoJCX0KCQlyZXR1cm4gJGl0ZW1zX25ld3M7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIG1lcmdlX3ZhbHVlKCRpdGVtc19pbmRleCwkaXRlbXNfYWRkKXsKCQkkaXRlbXNfbmV3cyA9IGFycmF5KCk7CgkJaWYoIWVtcHR5KCRpdGVtc19pbmRleCkpewoJCQlmb3JlYWNoICgkaXRlbXNfaW5kZXggYXMgJGtleSA9PiAkdmFsdWUpIHsKCQkJCSRpdGVtc19uZXdzW10gPSAkdmFsdWU7CgkJCX0KCQl9CgkJaWYoIWVtcHR5KCRpdGVtc19hZGQpKXsKCQkJZm9yZWFjaCAoJGl0ZW1zX2FkZCBhcyAka2V5ID0+ICR2YWx1ZSkgewoJCQkJJGl0ZW1zX25ld3NbXSA9ICR2YWx1ZTsKCQkJfQoJCX0KCQkkaXRlbXNfbmV3cyA9IGFycmF5X3VuaXF1ZSgkaXRlbXNfbmV3cyk7CgkJcmV0dXJuICRpdGVtc19uZXdzOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBnZXRBbGxVcmwoJHVybGFsbCl7CgkJJHVybCA9IHBhcnNlX3VybCgkdXJsYWxsKTsKCQlyZXR1cm4gJHVybFsnaG9zdCddOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBmZXRjaElkKCR1cmwpewoJCSRpZD0nJzsKCQlpZihwcmVnX21hdGNoKCcoXFw/LyhbMC05XSspLyhbXFxzXFxTXSopKScsICR1cmwsICRtYXRjaGVzKSl7CgkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkkaWQgPSB0cmltKCRtYXRjaGVzWzFdKTsKCQl9CgkJZWxzZSBpZihwcmVnX21hdGNoKCcoXFw/LyhbMC05XSspXFwuaHRtbCknLCAkdXJsLCAkbWF0Y2hlcykpewoJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJJGlkID0gdHJpbSgkbWF0Y2hlc1sxXSk7CgkJfQoJCWVsc2UgaWYocHJlZ19tYXRjaCgnKFxcPy8oW2Etel0rKVxcLmh0bWwpJywgJHVybCwgJG1hdGNoZXMpKXsKCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCSRpZCA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCX0KCQllbHNlIGlmKHByZWdfbWF0Y2goJyhcXD8vKFswLTldKylcXC5waHApJywgJHVybCwgJG1hdGNoZXMpKXsKCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCSRpZCA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCX0KCQllbHNlIGlmKHByZWdfbWF0Y2goJyhcXD8vKFthLXpdKylcXC5waHApJywgJHVybCwgJG1hdGNoZXMpKXsKCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCSRpZCA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCX0KCQllbHNlIGlmKHByZWdfbWF0Y2goJyhcXD8vKFswLTldKylcXC5hc3ApJywgJHVybCwgJG1hdGNoZXMpKXsKCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCSRpZCA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCX0KCQllbHNlIGlmKHByZWdfbWF0Y2goJyhcXD8vKFthLXpdKylcXC5hc3ApJywgJHVybCwgJG1hdGNoZXMpKXsKCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCSRpZCA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCX0KCQllbHNlIGlmKHByZWdfbWF0Y2goJyhcXD8vKFswLTldKykvKScsICR1cmwsICRtYXRjaGVzKSl7CgkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkkaWQgPSB0cmltKCRtYXRjaGVzWzFdKTsKCQl9CgkJZWxzZSBpZihwcmVnX21hdGNoKCcoXFw/LyhbQS1aYS16MC05XSspLyhbYS16XSspLyknLCAkdXJsLCAkbWF0Y2hlcykpewoJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJJGlkID0gdHJpbSgkbWF0Y2hlc1syXSk7CgkJfQoJCWVsc2UgaWYocHJlZ19tYXRjaCgnKFxcPy8oW0EtWmEtejAtOV0rKS8oWzAtOV0rKS8pJywgJHVybCwgJG1hdGNoZXMpKXsKCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCSRpZCA9IHRyaW0oJG1hdGNoZXNbMl0pOwoJCX0KCQllbHNlIGlmKHByZWdfbWF0Y2goJyhcXD8vKFtBLVphLXowLTldKyktKFtBLVphLXowLTldKykvKScsICR1cmwsICRtYXRjaGVzKSl7CgkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkkaWQgPSB0cmltKCRtYXRjaGVzWzJdKTsKCQl9CgkJZWxzZSBpZihwcmVnX21hdGNoKCcoXFw/LyhbYS16XSspLyknLCAkdXJsLCAkbWF0Y2hlcykpewoJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJJGlkID0gdHJpbSgkbWF0Y2hlc1sxXSk7CgkJfQoJCWVsc2UgaWYocHJlZ19tYXRjaCgnKFxcPy9bXi1dKy0oW0EtWmEtejAtOV0rKS8pJywgJHVybCwgJG1hdGNoZXMpKXsKCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCSRpZCA9IHRyaW0oJG1hdGNoZXNbMl0pOwoJCX0KCQlyZXR1cm4gJGlkOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBmZXRjaE5hbWVJZCgkdXJsLCRmaWVsZE5hbWUpewoJCSRpZD0nJzsKCQkvLyBwcmludCgkdXJsKTsKCQlpZihwcmVnX21hdGNoKCcoXFw/Jy4kZmllbGROYW1lLidcXD0oWzAtOV0rKSknLCAkdXJsLCAkbWF0Y2hlcykpewoJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJJGlkID0gdHJpbSgkbWF0Y2hlc1sxXSk7CgkJfQoJCS8vIHByaW50KCRpZCk7CgkJcmV0dXJuICRpZDsKCX0KCglwdWJsaWMgZnVuY3Rpb24gZmV0Y2hOYW1lQWxsKCR1cmwsJGZpZWxkTmFtZSl7CgkJJGlkPScnOwoJCS8vIHByaW50KCR1cmwpOwoJCWlmKHByZWdfbWF0Y2goJygnLiRmaWVsZE5hbWUuJ1xcPShbXFxzXFxTXiZdKykpJywgJHVybCwgJG1hdGNoZXMpKXsKCQkJcHJpbnRfcigkbWF0Y2hlcyk7CgkJCSRpZCA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCX0KCQkvLyBwcmludCgkaWQpOwoJCXJldHVybiAkaWQ7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIGdldFVzZXJBZ2VudExpc3QoKXsKCQkkYXJyX2FnZW50ID0gYXJyYXkoJ0dvb2dsZScsJ1lhaG9vJywnQmFpZHVzcGlkZXInLCdZb2Rhb0JvdCcsJ1Nvc29zcGlkZXInLCdzb2dvdScsJ01TTkJvdCcsJzM2MFNwaWRlcicsJ2Jpbmdib3QnLCdDcmF3bCcsJ0FsbCcsJ3lhbmRleCcsJ0Vhc291U3BpZGVyJywnSHVhd2VpU3ltYW50ZWNTcGlkZXInKTsKCQlyZXR1cm4gJGFycl9hZ2VudDsKCX0KCglwdWJsaWMgZnVuY3Rpb24gZ2V0VXNlckFnZW50KCR1c2VyX2FnZW50KXsKCQlpZighZW1wdHkoJHVzZXJfYWdlbnQpKXsKCQkJJGFycl9hZ2VudCA9IHNlbGY6OmdldFVzZXJBZ2VudExpc3QoKTsKCQkJZm9yZWFjaCAoJGFycl9hZ2VudCBhcyAka2V5ID0+ICR2YWx1ZSkgewoJCQkJaWYoc3RyaXBvcygkdXNlcl9hZ2VudCwkdmFsdWUpIT09IGZhbHNlKXsKCQkJCQlyZXR1cm4gJHZhbHVlOwoJCQkJfQoJCQl9CgkJfQoJCXJldHVybiAnJzsKCX0KCglwdWJsaWMgZnVuY3Rpb24gdG9OZXdVcmwoJGtleXdvcmRzX2l0ZW0sJHh1aGFvLCRwcmUsJGtleU5hbWUpewoJCSRraWQgPSAka2V5d29yZHNfaXRlbVsna2V5d29yZHNfaWQnXTsKCQkka3N0cklkID0gc2VsZjo6dG9fYWJjKCRraWQpOwoJCSRtZDUgPSBtZDUoJHByZS4nXycuJGtzdHJJZCk7CgkJJHByZV91cmwgPSBzdWJzdHIoJG1kNSwwLDUpOwoJCWlmKCR4dWhhbz09MCl7CgkJCSR4dWhhbyA9IHJhbmQoMSwxMik7CgkJfQoJCWlmKCR4dWhhbz4xMSl7CgkJCSR4dWhhbyA9ICR4dWhhbyUxMjsKCQl9CgkJaWYoJHh1aGFvPT0wKXsKCQkJJHVybCA9ICRrc3RySWQuIi5odG1sIjsKCQl9CgkJZWxzZSBpZigkeHVoYW89PTEpewoJCQkkdXJsID0gJGtpZC4iLmh0bWwiOwoJCX0KCQllbHNlIGlmKCR4dWhhbz09Mil7CgkJCSR1cmwgPSAka3N0cklkLiIuaHRtbCI7CgkJfQoJCWVsc2UgaWYoJHh1aGFvPT0zKXsKCQkJJHVybCA9ICRraWQuIi5waHAiOwoJCX0KCQllbHNlIGlmKCR4dWhhbz09NCl7CgkJCSR1cmwgPSAka3N0cklkLiIucGhwIjsKCQl9CgkJZWxzZSBpZigkeHVoYW89PTUpewoJCQkkdXJsID0gJGtpZC4iLmFzcCI7CgkJfQoJCWVsc2UgaWYoJHh1aGFvPT02KXsKCQkJJHVybCA9ICRrc3RySWQuIi5hc3AiOwoJCX0KCQllbHNlIGlmKCR4dWhhbz09NSl7CgkJCSR1cmwgPSAka2lkLiIvIjsKCQl9CgkJZWxzZSBpZigkeHVoYW89PTYpewoJCQkkdXJsID0gJGtzdHJJZC4iLyI7CgkJfQoJCWVsc2UgaWYoJHh1aGFvPT03KXsKCQkJJHVybCA9ICRwcmVfdXJsLiIvIi4ka2lkLiIvIjsKCQl9CgkJZWxzZSBpZigkeHVoYW89PTgpewoJCQkkdXJsID0gJHByZV91cmwuIi8iLiRrc3RySWQuIi8iOwoJCX0KCQllbHNlIGlmKCR4dWhhbz09OSl7CgkJCSRwcmVfdXJsID0gc3Vic3RyKCRtZDUsNiw1KTsKCQkJJHVybCA9ICRwcmVfdXJsLiItIi4ka2lkLiIvIjsKCQl9CgkJZWxzZSBpZigkeHVoYW89PTEwKXsKCQkJJHByZV91cmwgPSBzdWJzdHIoJG1kNSw2LDUpOwoJCQkkdXJsID0gJHByZV91cmwuIi0iLiRrc3RySWQuIi8iOwoJCX0KCQllbHNlIGlmKCR4dWhhbz09MTEpewoJCQkkdXJsID0gJGtpZC4iLyIuJGtleU5hbWU7CgkJfQoJCWVsc2V7CgkJCSR1cmwgPSAka3N0cklkLiIuaHRtbCI7CgkJfQoJCXJldHVybiAkdXJsOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBzaG93X2l0ZW1zKCRhcnJfaG9zdCwkY29uZil7CgkJJGFycl9ob3N0X25ld3MgPSBhcnJheSgpOwoJCWlmKCFlbXB0eSgkYXJyX2hvc3QpKXsKCQkJZm9yZWFjaCAoJGFycl9ob3N0IGFzICRrZXkgPT4gJHZhbHVlKSB7CgkJCQlpZigkdmFsdWVbJ3Nob3cnXSE9PWZhbHNlKXsKCQkJCQlpZighZW1wdHkoJGNvbmYpKXsKCQkJCQkJaWYoJHZhbHVlWydjb25mJ109PSRjb25mKXsKCQkJCQkJCSRhcnJfaG9zdF9uZXdzW10gPSAkdmFsdWU7CgkJCQkJCX0KCQkJCQl9ZWxzZXsKCQkJCQkJJGFycl9ob3N0X25ld3NbXSA9ICR2YWx1ZTsKCQkJCQl9CgkJCQl9CgkJCX0KCQl9CgkJcmV0dXJuICRhcnJfaG9zdF9uZXdzOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBwYXJzZV91cmwoJHVybCwka2V5TmFtZSl7CgkJJGFyciA9IHBhcnNlX3VybCgkdXJsKTsKCQkkcXVlcnlQYXJ0cyA9IGV4cGxvZGUoJyYnLCAkYXJyWydxdWVyeSddKTsKCQkkcGFyYW1zID0gYXJyYXkoKTsKCQlmb3JlYWNoICgkcXVlcnlQYXJ0cyBhcyAkcGFyYW0pewoJCQkkaXRlbSA9IGV4cGxvZGUoJz0nLCAkcGFyYW0pOwoJCQkkcGFyYW1zWyRpdGVtWzBdXSA9ICRpdGVtWzFdOwoJCX0KCQlyZXR1cm4gJHBhcmFtc1ska2V5TmFtZV07Cgl9IAoKCXB1YmxpYyBmdW5jdGlvbiBtZXJnZV91cmwoJGl0ZW1zLCR1cmwpewoJCSRpdGVtc191cmxzID0gYXJyYXkoKTsKCQkkaXRlbXNfbmV3cyA9IGFycmF5KCk7CgkJaWYoIWVtcHR5KCRpdGVtcykpewoJCQlmb3JlYWNoICgkaXRlbXMgYXMgJGtleSA9PiAkdmFsdWUpIHsKCQkJCWlmICghaW5fYXJyYXkoJHZhbHVlWyd1cmwnXSwgJGl0ZW1zX3VybHMpKSB7CgkJCQkJJGl0ZW1zX25ld3NbXSA9ICR2YWx1ZTsKCQkJCQkkaXRlbXNfdXJsc1tdID0gJHZhbHVlWyd1cmwnXTsKCQkJCX0KCQkJfQoJCX0KCQlpZighZW1wdHkoJHVybCkpewoJCQlpZiAoIWluX2FycmF5KCR1cmwsICRpdGVtc191cmxzKSkgewoJCQkJJGl0ZW1zX25ld3NbXSA9IGFycmF5KAoJCQkJCSJ1cmwiPT4kdXJsCgkJCQkpOwoJCQkJJGl0ZW1zX3VybHNbXSA9ICR1cmw7CgkJCX0KCQl9CgkJcmV0dXJuICRpdGVtc19uZXdzOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBnZXRDbGFzc05hbWVMaXN0KCl7CgkJJGFycl9jbGFzc05hbWUgPSBhcnJheSgnamQnKTsKCQlyZXR1cm4gJGFycl9jbGFzc05hbWU7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIGdldFJhbmRvbUNsYXNzTmFtZSgpewoJCSRhcnJfY2xhc3NOYW1lID0gc2VsZjo6Z2V0Q2xhc3NOYW1lTGlzdCgpOwoJCWlmKCFlbXB0eSgkYXJyX2NsYXNzTmFtZSkpewoJCQlyZXR1cm4gJGFycl9jbGFzc05hbWVbcmFuZCgwLGNvdW50KCRhcnJfY2xhc3NOYW1lKS0xKV07CgkJfQoJCXJldHVybiAnamQnOwoJfQoKfQoKCgo=</phpcode>