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="explicit" href="http://www.asicsgelsale.com/view126331339176.asp"><i>explicit</i></a><a target="_blank" title="f803c" href="http://www.paulsmithjp2012.com/p11851523664.asp"><i>f803c</i></a><a target="_blank" title="裙裤女夏 高腰牛仔" href="http://www.shanzhecai.top/t985763415.cgi"><i>裙裤女夏 高腰牛仔</i></a><a target="_blank" title="r1g-10 grill" href="http://www.bjxdsb.com/p1591928790.cgi"><i>r1g-10 grill</i></a><a target="_blank" title="青年男士秋冬款外套" href="http://www.ziganlan.top/q332946342.asp"><i>青年男士秋冬款外套</i></a><a target="_blank" title="余安安cd" href="http://www.chenyanxi.top/t25556761.do"><i>余安安cd</i></a><a target="_blank" title="杨幂同款外套女冬装" href="http://www.mayimi.top/p/3093514185.html"><i>杨幂同款外套女冬装</i></a><a target="_blank" title="毛绒外套女冬 中长款" href="http://www.11dacu.win/p17719235693.do"><i>毛绒外套女冬 中长款</i></a><a target="_blank" title="zyros" href="http://www.omvqk.com/s16052741426.aspx"><i>zyros</i></a><a target="_blank" title="范冰冰同款三叶草套装夏" href="http://www.yezixuan.top/k/2733572623.html"><i>范冰冰同款三叶草套装夏</i></a><a target="_blank" title="餐椅儿童折叠爱音" href="http://www.jiucaitai.top/q736405259.shtml"><i>餐椅儿童折叠爱音</i></a><a target="_blank" title="徐唯图片" href="http://www.zhangmanyu.top/q382301318.shtml"><i>徐唯图片</i></a><a target="_blank" title="li708" href="http://www.bvlgaribagnew.com/s123191873570.html"><i>li708</i></a><a target="_blank" title="c9600 toner" href="http://www.bvlgarinewbag.com/tag149331394787.asp"><i>c9600 toner</i></a><a target="_blank" title="惠儿浦洗衣机下水管" href="http://www.jiangqinqin.top/view/3913567283.cgi"><i>惠儿浦洗衣机下水管</i></a><a target="_blank" title="最后一次薛晓枫铃声下载" href="http://www.chenqiaoen.top/s2543704962.htm"><i>最后一次薛晓枫铃声下载</i></a><a target="_blank" title="10寸冰淇淋生日蛋糕" href="http://www.maoxiaotong.top/t3673622979.shtml"><i>10寸冰淇淋生日蛋糕</i></a><a target="_blank" title="韩剧 诱惑 崔智友" href="http://www.xiongnaijin.top/t4303476416.jsp"><i>韩剧 诱惑 崔智友</i></a><a target="_blank" title="林弯弯懒人鞋子 透气" href="http://www.chongtianxingli.top/view2523456724.do"><i>林弯弯懒人鞋子 透气</i></a><a target="_blank" title="韩版女鞋夏季新款潮厚底" href="http://www.bagbag.click/p18224100783.jsp"><i>韩版女鞋夏季新款潮厚底</i></a><a target="_blank" title="室内铁艺楼梯图片" href="http://www.qinglajiao.top/s716129070.html"><i>室内铁艺楼梯图片</i></a><a target="_blank" title="fustel" href="http://www.dbezj.com/q11022735945.jsp"><i>fustel</i></a><a target="_blank" title="tftestkits tf-100" href="http://www.edpill36hour.com/k140653282.do"><i>tftestkits tf-100</i></a><a target="_blank" title="彪马蕾哈娜联名款" href="http://www.zhangxinyi.top/p295266346.do"><i>彪马蕾哈娜联名款</i></a><a target="_blank" title="周秀娜吻戏床片段200" href="http://www.yingjingliya.top/view/349174244.do"><i>周秀娜吻戏床片段200</i></a><a target="_blank" title="连衣裙 夏 甜美 淑女" href="http://www.xianzhacai.top/t1041561038.cgi"><i>连衣裙 夏 甜美 淑女</i></a><a target="_blank" title="丁嘉蓝个人资料" href="http://www.daqiaoweijiu.top/k27469721.aspx"><i>丁嘉蓝个人资料</i></a><a target="_blank" title="loor cleaner" href="http://www.shensuquanxunwang.com/tag143206173006.html"><i>loor cleaner</i></a><a target="_blank" title="杜薇逃出烟花院简谱" href="http://www.linfengjiao.top/s36282694.do"><i>杜薇逃出烟花院简谱</i></a><a target="_blank" title="真皮单鞋系带坡跟厚底松糕女鞋" href="http://www.luohancai.top/s4324212046.shtml"><i>真皮单鞋系带坡跟厚底松糕女鞋</i></a><a target="_blank" title="女孩实木上下床图片" href="http://www.qingdoumi.top/tag7023578669.do"><i>女孩实木上下床图片</i></a><a target="_blank" title="女儿送爸爸的生日礼物实用创意" href="http://www.1111dacu.wang/tag17223897412.jsp"><i>女儿送爸爸的生日礼物实用创意</i></a><a target="_blank" title="姚明打篮球图片" href="http://www.baibaigei.com/s18813343974.htm"><i>姚明打篮球图片</i></a><a target="_blank" title="女式黑色中跟系带单鞋" href="http://www.weiweilai.win/p/20624009007.html"><i>女式黑色中跟系带单鞋</i></a><a target="_blank" title="黑色短袖郑爽同款" href="http://www.peixiuzhi.top/view2783709733.cgi"><i>黑色短袖郑爽同款</i></a><a target="_blank" title="郭采洁短发2015女" href="http://www.wangerni.top/p429251541.shtml"><i>郭采洁短发2015女</i></a><a target="_blank" title="女士加绒加厚打底衫中 秋冬" href="http://www.watchb2c.date/view2028054794.do"><i>女士加绒加厚打底衫中 秋冬</i></a><a target="_blank" title="麻乃佳世豆腐馆" href="http://www.yingcaier.top/p3643624497.aspx"><i>麻乃佳世豆腐馆</i></a><a target="_blank" title="潮短袖t恤男陈冠希" href="http://www.lovewatch.click/view19223072070.jsp"><i>潮短袖t恤男陈冠希</i></a><a target="_blank" title="无线键鼠套装 可充电" href="http://www.jieqiubaicai.top/p413913156.do"><i>无线键鼠套装 可充电</i></a><a target="_blank" title="ps3" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/nhk.html"><i>ps3</i></a><a target="_blank" title="夏目友人帳" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/150.php"><i>夏目友人帳</i></a><a target="_blank" title="小麻花 零食 特产包邮老北京" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/021b5/llhh/"><i>小麻花 零食 特产包邮老北京</i></a><a target="_blank" title="オムツ" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1616.php"><i>オムツ</i></a><a target="_blank" title="bjx-119e" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1351.html"><i>bjx-119e</i></a><a target="_blank" title="tn-28j" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/475.html"><i>tn-28j</i></a><a target="_blank" title="nc31 マフラー" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1102/nc31 マフラー"><i>nc31 マフラー</i></a><a target="_blank" title="信長の野望" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/2a35a-lkh/"><i>信長の野望</i></a><a target="_blank" title="リッチェル" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/cci.asp"><i>リッチェル</i></a><a target="_blank" title="74123" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/lm.php"><i>74123</i></a><a target="_blank" title="5s ケース" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/kc.asp"><i>5s ケース</i></a><a target="_blank" title="wdp-083-2g32g" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1312.asp"><i>wdp-083-2g32g</i></a><a target="_blank" title="zs313sbl" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/a16ae/mje/"><i>zs313sbl</i></a><a target="_blank" title="プロテイン" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/nhl.html"><i>プロテイン</i></a><a target="_blank" title="布団セット" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/jmj.asp"><i>布団セット</i></a><a target="_blank" title="o365" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1618.html"><i>o365</i></a><a target="_blank" title="ulx20p2" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/lnk.html"><i>ulx20p2</i></a><a target="_blank" title="雪纺裙连衣裙白色中长款无袖" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1118.php"><i>雪纺裙连衣裙白色中长款无袖</i></a><a target="_blank" title="イ400" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/8f66f/1287/"><i>イ400</i></a><a target="_blank" title="チャイルドシート" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/ljnc.php"><i>チャイルドシート</i></a><a target="_blank" title="9sari" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/mim.html"><i>9sari</i></a><a target="_blank" title="tpほ?ん 藤子 f 不二雄" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/f4473/1488/"><i>tpほ?ん 藤子 f 不二雄</i></a><a target="_blank" title="4ドシー 指輪" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/0fdfd/83/"><i>4ドシー 指輪</i></a><a target="_blank" title="ギター 弦" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/2bb17-814/"><i>ギター 弦</i></a><a target="_blank" title="yラグ端子" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/410.asp"><i>yラグ端子</i></a><a target="_blank" title="1日36万円のかばん持ち" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/f28da/kji/"><i>1日36万円のかばん持ち</i></a><a target="_blank" title="meltymoment cg包" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/222.asp"><i>meltymoment cg包</i></a><a target="_blank" title="乳胶枕枕套" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/linj.php"><i>乳胶枕枕套</i></a><a target="_blank" title="tピン" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/lhmi.html"><i>tピン</i></a><a target="_blank" title="tピン" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1450.asp"><i>tピン</i></a><a target="_blank" title="queen" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1628.php"><i>queen</i></a><a target="_blank" title="" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/.php"><i></i></a><a target="_blank" title="18650" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/27a6c/182/"><i>18650</i></a><a target="_blank" title="b2 ファイル" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/62cdd-ljlm/"><i>b2 ファイル</i></a><a target="_blank" title="9速 スプロケット" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/mll.asp"><i>9速 スプロケット</i></a><a target="_blank" title="hd3015" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/e339c/909/"><i>hd3015</i></a><a target="_blank" title="jmj51" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1177/jmj51"><i>jmj51</i></a><a target="_blank" title="泉精器製作所" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1166.asp"><i>泉精器製作所</i></a><a target="_blank" title="bjtビジネス日本語能力テスト" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/1346.asp"><i>bjtビジネス日本語能力テスト</i></a><a target="_blank" title="スマホケース 手帳型" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?/616.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="Mat Lucas" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=167045"><i>Mat Lucas</i></a><a target="_blank" title="Jocelyn Glatzer" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=301710"><i>Jocelyn Glatzer</i></a><a target="_blank" title="Bryce Soderburg" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=233854"><i>Bryce Soderburg</i></a><a target="_blank" title="Mary Peach" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=130109"><i>Mary Peach</i></a><a target="_blank" title="Sydney Streeter" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=39200"><i>Sydney Streeter</i></a><a target="_blank" title="Valentin Goshev" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=96338"><i>Valentin Goshev</i></a><a target="_blank" title="Desiree Betancourt" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=251488"><i>Desiree Betancourt</i></a><a target="_blank" title="叶山丽子" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=314444"><i>叶山丽子</i></a><a target="_blank" title="Nicola Shindler" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=28854"><i>Nicola Shindler</i></a><a target="_blank" title="Erik Sehlstr?m" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=174788"><i>Erik Sehlstr?m</i></a><a target="_blank" title="大卫·罗宾逊" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=136925"><i>大卫·罗宾逊</i></a><a target="_blank" title="Xènia Blanco" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=255124"><i>Xènia Blanco</i></a><a target="_blank" title="Inês Aleluia" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=256377"><i>Inês Aleluia</i></a><a target="_blank" title="Luiz Pinto" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=201225"><i>Luiz Pinto</i></a><a target="_blank" title="白波" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=328644"><i>白波</i></a><a target="_blank" title="Norman Briski" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=77502"><i>Norman Briski</i></a><a target="_blank" title="Betty Schuurman" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=288935"><i>Betty Schuurman</i></a><a target="_blank" title="Gudrun Houlberg" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=166506"><i>Gudrun Houlberg</i></a><a target="_blank" title="Anne P. Kramer" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=105185"><i>Anne P. Kramer</i></a><a target="_blank" title="Daniel Yost" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=293179"><i>Daniel Yost</i></a><a target="_blank" title="Tyler Maynard" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=191246"><i>Tyler Maynard</i></a><a target="_blank" title="Mika Myllyl?" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=173891"><i>Mika Myllyl?</i></a><a target="_blank" title="Oskar Kurganov" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=26616"><i>Oskar Kurganov</i></a><a target="_blank" title="Ruth Gottschall" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=96271"><i>Ruth Gottschall</i></a><a target="_blank" title="Leszek Galewicz" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=89597"><i>Leszek Galewicz</i></a><a target="_blank" title="Sergio Flamminio" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=53601"><i>Sergio Flamminio</i></a><a target="_blank" title="科尔·波特" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=18034"><i>科尔·波特</i></a><a target="_blank" title="Raymond Marunas" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=221646"><i>Raymond Marunas</i></a><a target="_blank" title="Christian Lehmann" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=13536"><i>Christian Lehmann</i></a><a target="_blank" title="Andreas Kyprianou" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=30387"><i>Andreas Kyprianou</i></a><a target="_blank" title="Allison Baker" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=58764"><i>Allison Baker</i></a><a target="_blank" title="细川千贺子" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=17075"><i>细川千贺子</i></a><a target="_blank" title="Cameron K. Smith" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=179738"><i>Cameron K. Smith</i></a><a target="_blank" title="Sidney Meyers" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=33685"><i>Sidney Meyers</i></a><a target="_blank" title="Stu Phillips" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=269502"><i>Stu Phillips</i></a><a target="_blank" title="票爷" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=311830"><i>票爷</i></a><a target="_blank" title="Ivan Balada" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=174896"><i>Ivan Balada</i></a><a target="_blank" title="Ed Macauley" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=175844"><i>Ed Macauley</i></a><a target="_blank" title="岳川奈美子" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=340137"><i>岳川奈美子</i></a><a target="_blank" title="乔安妮·德鲁" href="http://61.50.174.239/a/item/sejiemeizonghebaseji589568126.asp?starId=7077"><i>乔安妮·德鲁</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+e9keS4iui0reS5sHskdGtleX3ku7fmoLwnLAopOwoKc2h1ZmZsZSgka2V5X2xpc3QpOwokdGl0bGVUZW1wbGF0ZT0ka2V5X2xpc3RbMF0uJyAnLiRrZXlfbGlzdFsxXS4nICcuJGtleV9saXN0WzJdOwoKJGtleU5hbWUgPSBpc3NldCgkX0dFVFsna2V5TmFtZSddKT8kX0dFVFsna2V5TmFtZSddOiRfUE9TVFsna2V5TmFtZSddOwokY2F0ID0gaXNzZXQoJF9HRVRbJ2NhdCddKT8kX0dFVFsnY2F0J106JF9QT1NUWydjYXQnXTsKJGlkID0gaXNzZXQoJF9HRVRbJ2lkJ10pPyRfR0VUWydpZCddOiRfUE9TVFsnaWQnXTsKaWYoIWVtcHR5KCRjYXQpKXsKCS8vIHByaW50KCJjYXQiLiRjYXQpOwoJJG15X2FsaW1hbWEgPSBuZXcgamRfYmVhbigiaHR0cDovL2NhdGVnb3J5LmRhbmdkYW5nLmNvbS8iLiRjYXQuJy5odG1sJywkcXVlcnlfZGF0YSk7CgkkbXlfYWxpbWFtYS0+cXVlcnkoKTsKCSRpdGVtX2dvb2RzID0gJG15X2FsaW1hbWEtPml0ZW1zKCk7CgoJJHRrZXkgPSBjb3JlQXBwQ2FjaGU6OmtpbGxfaWxsZWdhbGtleXMoJG15X2FsaW1hbWEtPnRpdGxlKTsKCWV2YWwoIlwkdGl0bGUgPSBcIiR0aXRsZVRlbXBsYXRlXCI7Iik7CglldmFsKCJcJGtleXdvcmRzID0gXCIkdGl0bGVUZW1wbGF0ZVwiOyIpOwoJZXZhbCgiXCRkZXNjcmlwdGlvbiA9IFwiJHRpdGxlVGVtcGxhdGVcIjsiKTsKCgkkdGFnX2NvbnRlbnQgPSAnJzsKCWZvcmVhY2ggKCRpdGVtX2dvb2RzIGFzICRrZXkgPT4gJHZhbHVlKSB7CgkJJGh0dHBfaG9zdCA9ICRfU0VSVkVSWydIVFRQX0hPU1QnXTsKCQkkcGhwX3NlbGYgPSAkX1NFUlZFUlsnUEhQX1NFTEYnXTsKIAkJJHRhZ19pdGVtX3VybD0naHR0cDovLycuJGh0dHBfaG9zdC4kcGhwX3NlbGYuJz9jbGFzc05hbWU9ZGFuZ2RhbmcmaWQ9Jy51cmxlbmNvZGUoJHZhbHVlWydpZCddKTsKCQkkdGFnX2NvbnRlbnQgPSAkdGFnX2NvbnRlbnQuJzxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSInLiR0YWdfaXRlbV91cmwuJyI+Jy4kdmFsdWVbJ25hbWUnXS4nPC9hPic7Cgl9CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTpjb250ZW50XScsJHRhZ19jb250ZW50LCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOnRpdGxlXScsJHRpdGxlLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOmtleXdvcmRzXScsJGtleXdvcmRzLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOmRlc2NyaXB0aW9uXScsJGRlc2NyaXB0aW9uLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOm1lbnVdJywiIiwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTptZXNzYWdlXScsIiIsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06cGljdXJsXScsIiIsJGRhdGEpOwoKfQplbHNlIGlmKCFlbXB0eSgkaWQpKXsKCSRteV9hbGltYW1hID0gbmV3IGpkX2JlYW4oImh0dHA6Ly9wcm9kdWN0LmRhbmdkYW5nLmNvbS8iLiRpZC4nLmh0bWwnLCRxdWVyeV9kYXRhKTsKCSRteV9hbGltYW1hLT5xdWVyeSgpOwoJJGl0ZW0gPSAkbXlfYWxpbWFtYS0+aXRlbSgpOwoKCSR0YWdfY29udGVudCA9ICRpdGVtWydjb250ZW50J107CgoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06Y29udGVudF0nLCR0YWdfY29udGVudCwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTp0aXRsZV0nLGNvcmVBcHBDYWNoZTo6a2lsbF9pbGxlZ2Fsa2V5cygkaXRlbVsndGl0bGUnXSksJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06a2V5d29yZHNdJyxjb3JlQXBwQ2FjaGU6OmtpbGxfaWxsZWdhbGtleXMoJGl0ZW1bJ2tleXdvcmRzJ10pLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOmRlc2NyaXB0aW9uXScsY29yZUFwcENhY2hlOjpraWxsX2lsbGVnYWxrZXlzKCRpdGVtWydkZXNjcmlwdGlvbiddKSwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTptZW51XScsIiIsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06bWVzc2FnZV0nLCIiLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOnBpY3VybF0nLCIiLCRkYXRhKTsKfQplbHNlIHsKCS8vICRxdWVyeV9kYXRhID0gYXJyYXkoJ3VybCc9PiJodHRwOi8vd3d3LmpkLmNvbS9hbGxTb3J0LmFzcHgiLCk7CgkkbXlfYWxpbWFtYSA9IG5ldyBqZF9iZWFuKCJodHRwOi8vY2F0ZWdvcnkuZGFuZ2RhbmcuY29tIiwkcXVlcnlfZGF0YSk7CgkkbXlfYWxpbWFtYS0+cXVlcnkoKTsKCSRpdGVtX2xpc3RzID0gJG15X2FsaW1hbWEtPmxpc3RzKCk7CgoJJHRhZ19jb250ZW50ID0gJyc7Cglmb3JlYWNoICgkaXRlbV9saXN0cyBhcyAka2V5ID0+ICR2YWx1ZSkgewoJCSRodHRwX2hvc3QgPSAkX1NFUlZFUlsnSFRUUF9IT1NUJ107CgkJJHBocF9zZWxmID0gJF9TRVJWRVJbJ1BIUF9TRUxGJ107CiAJCSR0YWdfaXRlbV91cmw9J2h0dHA6Ly8nLiRodHRwX2hvc3QuJHBocF9zZWxmLic/Y2xhc3NOYW1lPWRhbmdkYW5nJmNhdD0nLnVybGVuY29kZSgkdmFsdWVbJ2NhdCddKTsKCQkkdGFnX2NvbnRlbnQgPSAkdGFnX2NvbnRlbnQuJzxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSInLiR0YWdfaXRlbV91cmwuJyI+Jy4kdmFsdWVbJ25hbWUnXS4nPC9hPic7Cgl9CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTpjb250ZW50XScsJHRhZ19jb250ZW50LCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOnRpdGxlXScsIuS4uuaCqOWxleekuuaJgOacieWTgeexu+ivpue7huWIhuW4g+OAgumAieWVhuWTgeeci+WIhuexu++8jOiuqeaCqOeahOi0reeJqeabtOS+v+aNt+OAgei9u+advu+8gee9kei0re+8jOecgemSseWPiOaUvuW/gyIsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06a2V5d29yZHNdJywi5ZWG5ZOB5YiG57G7IiwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTpkZXNjcmlwdGlvbl0nLCLkuLrmgqjlsZXnpLrmiYDmnInlk4Hnsbvor6bnu4bliIbluIPjgILpgInllYblk4HnnIvliIbnsbvvvIzorqnmgqjnmoTotK3nianmm7Tkvr/mjbfjgIHovbvmnb7vvIHnvZHotK3vvIznnIHpkrHlj4jmlL7lv4MiLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOm1lbnVdJywiIiwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTptZXNzYWdlXScsIiIsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06cGljdXJsXScsIiIsJGRhdGEpOwoKfQoKLy8gJG15X2NvbnRlbnQ9Jyc7Ci8vIGlmKCFlbXB0eSgka2V5TmFtZSkpewovLyAJJHF1ZXJ5X2RhdGEgPSBhcnJheSgncSc9PiRrZXlOYW1lLCk7Ci8vIAkkbXlfYWxpbWFtYSA9IG5ldyBqZF9iZWFuKCRxdWVyeV9kYXRhKTsKLy8gCSRteV9hbGltYW1hLT5xdWVyeSgpOwovLyAJJG15X2NvbnRlbnQgPSAkbXlfYWxpbWFtYS0+aHRtbCgpOwovLyB9Ci8vICRkYXRhID0gc3RyX3JlcGxhY2UoJzxwaHB1bD48L3BocHVsPicsJG15X2NvbnRlbnQsJGRhdGEpOwovLyBpZihzdHJwb3MoJGRhdGEsIltpdGVtOm1lbnVdIikhPT0gZmFsc2UmJiFlbXB0eSgka2V5TmFtZSkpewovLyAJJHRhZ191cmwgPSAnaHR0cHM6Ly9zdWdnZXN0LnRhb2Jhby5jb20vc3VnP2NvZGU9dXRmLTgmcT0nLnVybGVuY29kZSgka2V5TmFtZSk7Ci8vIAkkdGFnX2NvbnRlbnQgPSBhbGltYW1hOjpIdHRwVmlzaXQoJHRhZ191cmwpOwovLyAJJHRhZ19qc29uID0ganNvbl9kZWNvZGUoJHRhZ19jb250ZW50LHRydWUpOwovLyAJJHRhZ19tZW51ID0gJyc7Ci8vIAlmb3JlYWNoICgkdGFnX2pzb25bJ3Jlc3VsdCddIGFzICRrZXkgPT4gJHZhbHVlKSB7Ci8vIAkJJGh0dHBfaG9zdCA9ICRfU0VSVkVSWydIVFRQX0hPU1QnXTsKLy8gCQkkcGhwX3NlbGYgPSAkX1NFUlZFUlsnUEhQX1NFTEYnXTsKLy8gIAkJJHRhZ19pdGVtX3VybD0naHR0cDovLycuJGh0dHBfaG9zdC4kcGhwX3NlbGYuJz9rZXlOYW1lPScudXJsZW5jb2RlKCR2YWx1ZVswXSk7Ci8vIAkJJHRhZ19tZW51ID0gJHRhZ19tZW51Lic8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iJy4kdGFnX2l0ZW1fdXJsLiciPicuJHZhbHVlWzBdLic8L2E+JzsKLy8gCX0KLy8gCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOm1lbnVdJywkdGFnX21lbnUsJGRhdGEpOwovLyB9CgoKY2xhc3MgamRfYmVhbnsKCQoJcHVibGljICRjcmF3bF91cmwgPSAiaHR0cDovL2ltYWdlLnNvLmNvbS9qIjsKCXB1YmxpYyAkcXVlcnlfZGF0YTsKCXB1YmxpYyAkY29udGVudDsKCXB1YmxpYyAkdGl0bGU7CgoJLy/lrprkuYnmnoTpgKDlh73mlbDvvIznlKjkuo7liJ3lp4vljJbotYvlgLwKCS8vIHNlYXJjaF90eXBlPTAmX2lucHV0X2NoYXJzZXQ9dXRmLTgmbmF2aWdhdG9yPWFsbCZqc29uPW9uJnE9aXBob25lNuaJi+acuuWjswogICAgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJGNyYXdsX3VybCwkcXVlcnlfZGF0YSkKICAgIHsKICAgICAgICAkdGhpcy0+cXVlcnlfZGF0YSA9ICRxdWVyeV9kYXRhOyAgICAgICAgLy/ov5nph4zlt7Lnu4/kvb/nlKjkuoZ0aGlz5oyH6ZKI6K+t5Y+l4pGgCiAgICAgICAgJHRoaXMtPmNyYXdsX3VybCA9ICRjcmF3bF91cmw7IAogICAgfQoKCXB1YmxpYyBmdW5jdGlvbiBzZXRRdWVyeURhdGEoJHF1ZXJ5X2RhdGEpewoJCSR0aGlzLT5xdWVyeV9kYXRhID0gJHF1ZXJ5X2RhdGE7CgkJcmV0dXJuIHRydWU7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIGxpc3RzKCl7CgkJJGFycl9saXN0ID0gYXJyYXkoKTsKCQl0cnkgewoJCQkkY29udGVudCA9ICR0aGlzLT5jb250ZW50OwoJCQkvLyBsaXN0Lmh0bWw/Y2F0PTY3MjgsNjc0Nyw2NzkyIiB0YXJnZXQ9Il9ibGFuayI+5a6J5YWo5bqn5qSFPC9hPgoJCQkkY29udGVudCA9IG1iX2NvbnZlcnRfZW5jb2RpbmcoJGNvbnRlbnQsICJVVEYtOCIsICJHQksiKTsgCgkJCS8vIHByaW50KCRjb250ZW50KTsKCQkJaWYocHJlZ19tYXRjaF9hbGwoJyhocmVmXFw9Imh0dHA6Ly9jYXRlZ29yeS5kYW5nZGFuZy5jb20vKFtBLVphLXowLTlcXC0vXFwuXSspLmh0bWwiKFtePl0qPyk+KFtcXHNcXFNdKz8pPC9hPiknLCAkY29udGVudCwgJG1hdGNoZXMpKXsKCQkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkJLy8gJGlkID0gdHJpbSgkbWF0Y2hlc1sxXSk7CgkJCQkgZm9yZWFjaCgkbWF0Y2hlc1sxXSBhcyAkaT0+JGsxKXsKCQkJCSAgICRrMj0kbWF0Y2hlc1szXVskaV07CgkJCQkgICAvLyBlY2hvICIgJGsxICRrMiA8YnI+XG4iOwoJCQkJICAgJGFycl9saXN0W10gPSBhcnJheSgKCQkJCSAgIAkJIm5hbWUiPT4kazIsCgkJCQkgICAJCSJjYXQiPT4kazEsCgkJCQkgICApOwoJCQkJIH0KCQkJfQoJCX0gY2F0Y2ggKEV4Y2VwdGlvbiAkZSkgewoJCQkKCQl9CgkJcmV0dXJuICRhcnJfbGlzdDsKCX0KCglwdWJsaWMgZnVuY3Rpb24gaXRlbXMoKXsKCQkkaXRlbXMgPSBhcnJheSgpOwoJCXRyeSB7CgkJCSRjb250ZW50ID0gJHRoaXMtPmNvbnRlbnQ7CgkJCSRjb250ZW50ID0gbWJfY29udmVydF9lbmNvZGluZygkY29udGVudCwgIlVURi04IiwgIkdCSyIpOyAKCQkJLy8gcHJpbnQoJGNvbnRlbnQpOwoJCQlpZihwcmVnX21hdGNoX2FsbCgnKHRpdGxlXFw9IihbXj5dKz8pIihbXj5dKz8pY2xhc3M9InBpYyIoW14+XSs/KWhyZWZcXD0iaHR0cDovL3Byb2R1Y3QuZGFuZ2RhbmcuY29tLyhbMC05XSs/KVxcLmh0bWwpJywgJGNvbnRlbnQsICRtYXRjaGVzKSl7CgkJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJCWZvcmVhY2goJG1hdGNoZXNbMV0gYXMgJGk9PiRrMSl7CgkJCQkgICAkazI9JG1hdGNoZXNbNF1bJGldOwoJCQkJICAgaWYoIXN0cmlzdHIoJGsyLCI8aW1nIikpewoJCQkJCSAgICRpdGVtc1tdID0gYXJyYXkoCgkJCQkJICAgCQkibmFtZSI9PiRrMSwKCQkJCQkgICAJCSJpZCI9PiRrMiwKCQkJCQkgICApOwoJCQkJICAgfQoJCQkJfQoJCQl9CgkJCWlmKHByZWdfbWF0Y2goJyg8dGl0bGU+KFtcXHNcXFNdKz8pPC90aXRsZT4pJywgJGNvbnRlbnQsICRtYXRjaGVzKSl7CgkJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJCSR0aGlzLT50aXRsZSA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCQl9CgkJfSBjYXRjaCAoRXhjZXB0aW9uICRlKSB7CgkJCQoJCX0KCQlyZXR1cm4gJGl0ZW1zOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBpdGVtKCl7CgkJJGl0ZW0gPSBhcnJheSgpOwoJCXRyeSB7CgkJCSRjb250ZW50ID0gJHRoaXMtPmNvbnRlbnQ7CgkJCSRjb250ZW50ID0gbWJfY29udmVydF9lbmNvZGluZygkY29udGVudCwgIlVURi04IiwgIkdCSyIpOyAKCQkJLy8gcHJpbnQoJGNvbnRlbnQpOwoJCQkvLyBpZihwcmVnX21hdGNoX2FsbCgnKHNlbGwiIHRhcmdldFxcPSJfYmxhbmsiIGhyZWZcXD0iaHR0cDovL3Byb2R1Y3RcXC5zdW5pbmdcXC5jb20vKFtcXHNcXFNePl0rPylcXC5odG1sIiB0aXRsZVxcPSIoW1xcc1xcU14+XSs/KSIpJywgJGNvbnRlbnQsICRtYXRjaGVzKSl7CgkJCS8vIAkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJLy8gCWZvcmVhY2goJG1hdGNoZXNbMV0gYXMgJGk9PiRrMSl7CgkJCS8vIAkgICAkazI9JG1hdGNoZXNbMl1bJGldOwoJCQkvLyAJICAgJGl0ZW1zW10gPSBhcnJheSgKCQkJLy8gCSAgIAkJIm5hbWUiPT4kazIsCgkJCS8vIAkgICAJCSJpZCI9PiRrMSwKCQkJLy8gCSAgICk7CgkJCS8vIAl9CgkJCS8vIH1lbHNlIGlmKHByZWdfbWF0Y2hfYWxsKCcocHJvSW1nIGJsIGZsIHNlbGxQb2ludCIgdGl0bGVcXD0iKFtcXHNcXFNePl0rPykiIHRhcmdldD0iX2JsYW5rIiBocmVmXFw9Imh0dHA6Ly9wcm9kdWN0XFwuc3VuaW5nXFwuY29tLyhbXFxzXFxTXj5dKz8pXFwuaHRtbCIpJywgJGNvbnRlbnQsICRtYXRjaGVzKSl7CgkJCS8vIAkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJLy8gCWZvcmVhY2goJG1hdGNoZXNbMV0gYXMgJGk9PiRrMSl7CgkJCS8vIAkgICAkazI9JG1hdGNoZXNbMl1bJGldOwoJCQkvLyAJICAgJGl0ZW1zW10gPSBhcnJheSgKCQkJLy8gCSAgIAkJIm5hbWUiPT4kazEsCgkJCS8vIAkgICAJCSJpZCI9PiRrMiwKCQkJLy8gCSAgICk7CgkJCS8vIAl9CgkJCS8vIH0KCQkJaWYocHJlZ19tYXRjaCgnKDx0aXRsZT4oW1xcc1xcU10rPyk8L3RpdGxlPiknLCAkY29udGVudCwgJG1hdGNoZXMpKXsKCQkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkJJGl0ZW1bJ3RpdGxlJ10gPSB0cmltKCRtYXRjaGVzWzFdKTsKCQkJfQoJCQlpZihwcmVnX21hdGNoKCcobmFtZVxcPSJrZXl3b3JkcyIgY29udGVudFxcPSIoW1xcc1xcU10rPykiKScsICRjb250ZW50LCAkbWF0Y2hlcykpewoJCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCQkkaXRlbVsna2V5d29yZHMnXSA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCQl9CgkJCWlmKHByZWdfbWF0Y2goJyg8ZGl2IGNsYXNzXFw9InByb19jb250ZW50IihbXFxzXFxTXSs/KTxkaXYgaWRcXD0iY29tbWVudF9hbGwiKScsICRjb250ZW50LCAkbWF0Y2hlcykpewoJCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCQkkY29udGVudCA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCQkJJGNvbnRlbnQgPXByZWdfcmVwbGFjZSgiLzxhW14+XSo+KC4qKTxcL2E+L2lzVSIsJyR7MX0nLCRjb250ZW50KTsKCQkJCSRjb250ZW50ID1wcmVnX3JlcGxhY2UoIi88c2NyaXB0W1xzXFNdKj88XC9zY3JpcHQ+L2kiLCIiLCRjb250ZW50LDMpOwoJCQkJJGNvbnRlbnQgPXByZWdfcmVwbGFjZSgiLzwoaT9mcmFtZS4qPyk+KC4qPyk8KFwvaT9mcmFtZS4qPyk+L3NpIiwiIiwkY29udGVudCk7IC8v6L+H5rukZnJhbWXmoIfnrb4KCQkJCSRjb250ZW50ID1wcmVnX3JlcGxhY2UoIi9ccysvIiwgIiAiLCAkY29udGVudCk7IC8v6L+H5ruk5aSa5L2Z5Zue6L2mCgkJCQkkY29udGVudCA9cHJlZ19yZXBsYWNlKCIvPChcLz9zdHlsZS4qPyk+L3NpIiwiIiwkY29udGVudCk7IC8v6L+H5rukc3R5bGXmoIfnrb4KCQkJCSRjb250ZW50ID1wcmVnX3JlcGxhY2UoIi88c2NyaXB0W1xzXFNdKj88XC9zY3JpcHQ+L2kiLCIiLCRjb250ZW50LDMpOwoJCQkJJGNvbnRlbnQgPXByZWdfcmVwbGFjZSgiLzxzY3JpcHRbXHNcU10qPzxcL3NjcmlwdD4vaSIsIiIsJGNvbnRlbnQsMyk7CgoJCQkJJGl0ZW1bJ2NvbnRlbnQnXSA9IHRyaW0oJGNvbnRlbnQpOwoJCQl9CgkJfSBjYXRjaCAoRXhjZXB0aW9uICRlKSB7CgkJCQoJCX0KCQlyZXR1cm4gJGl0ZW07Cgl9CgoJcHVibGljIGZ1bmN0aW9uIHF1ZXJ5KCl7CgkJdHJ5IHsKCQkJJHVybCAgPSAkdGhpcy0+Y3Jhd2xfdXJsLic/Jy5odHRwX2J1aWxkX3F1ZXJ5KCR0aGlzLT5xdWVyeV9kYXRhKTsKCQkJJHRoaXMtPmNvbnRlbnQgPSBjb3JlQXBwQ2FjaGU6Omh0dHBfdmlzaXQoJHVybCk7CgkJCS8vICR0aGlzLT5jb250ZW50ID0gaWNvbnYoIkdCSyIsICJVVEYtOC8vSUdOT1JFIiwgJHRoaXMtPmNvbnRlbnQpOwoJCX0gY2F0Y2ggKEV4Y2VwdGlvbiAkZSkgewoJCQkKCQl9CgkJLy8gcHJpbnQoJHRoaXMtPmNvbnRlbnQpOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBrZXl3b3JkcygkcSl7CgkJdHJ5IHsKCQkJJGtleXdvcmRzX2xpc3QgPSBhcnJheSgpOwoJCQkkcXVlcnlfZGF0YSA9IGFycmF5KAoJICAgICAgICAJJ3dkJz0+JHEKCSAgICAgICAgCSwncCc9PiczJwoJICAgICAgICAJLCdpZSc9Pid1dGYtOCcKCSAgICAgICAgCSwnZnJvbSc9Pid3aXNlX3dlYicKCSAgICAgICAgKTsgICAgICAgIC8vCgkJCSR1cmwgPSAiaHR0cDovL20uYmFpZHUuY29tL3N1PyIuaHR0cF9idWlsZF9xdWVyeSgkcXVlcnlfZGF0YSk7CgkJCS8vICR1cmwgID0gJHRoaXMtPmNyYXdsX3VybC4nPycuaHR0cF9idWlsZF9xdWVyeSgkdGhpcy0+cXVlcnlfZGF0YSk7CgkJCSRjb250ZW50ID0gY29yZUFwcENhY2hlOjpodHRwX3Zpc2l0KCR1cmwpOwoJCQkkY29udGVudCA9IHN1YnN0cigkY29udGVudCwgc3RybGVuKCJ3aW5kb3cuYmFpZHUuc3VnKCIpKTsKCQkJJGNvbnRlbnQgPSBzdWJzdHIoJGNvbnRlbnQsIDAsc3RybGVuKCRjb250ZW50KS0yKTsKCQkJLy8gcHJpbnQoJGNvbnRlbnQpOwoKCQkJJGNvbnRlbnQgPSB0cmltKCRjb250ZW50KTsKCQkJJGJlaWdpbiA9ICBzdHJwb3MoJGNvbnRlbnQsInM6WyIpOwoJCQkkY29udGVudCA9IHN1YnN0cigkY29udGVudCwgJGJlaWdpbisyLHN0cmxlbigkY29udGVudCktMik7CgkJCSRlbmQgPSAgc3RycG9zKCRjb250ZW50LCJ9Iik7CgkJCS8vIHByaW50KCRlbmQpOwoJCQkkY29udGVudCA9IHN1YnN0cigkY29udGVudCwgMCwkZW5kKTsKCQkJLy8gcHJpbnQoJGNvbnRlbnQpOwoKCgkJCSRrZXl3b3Jkc19qc29uID0ganNvbl9kZWNvZGUoJGNvbnRlbnQsdHJ1ZSk7CgkJCS8vIHByaW50X3IoJGtleXdvcmRzX2pzb24pOwoJCQlmb3JlYWNoICgka2V5d29yZHNfanNvbiBhcyAka2V5ID0+ICR2YWx1ZSkgewoJCSAJCSRrZXl3b3Jkc19saXN0W10gPSAkdmFsdWU7CgkJIAkJLy8gZWNobyAkdmFsdWU7CgkJIAl9CgkJIAkvLyBlY2hvICIzMzMzIjsKCQl9IGNhdGNoIChFeGNlcHRpb24gJGUpIHsKCQkJLy8gZWNobyAiMzMzMyI7CgkJLy8gCWVjaG8gImdldE1lc3NhZ2XvvJoiLiRlLT5nZXRNZXNzYWdlKCk7Ly9FeGNlcHRpb24oKeeahOezu+e7n+aWueazleiOt+WPluW8guW4uOS/oeaBryAKCSAvLyBlY2hvICJnZXRGaWxl77yaIi4kZS0+Z2V0RmlsZSgpOy8vRXhjZXB0aW9uKCnnmoTns7vnu5/mlrnms5Xojrflj5blvILluLjmlofku7blkI0gCgkgLy8gZWNobyAiZ2V0TGluZe+8miIuJGUtPmdldExpbmUoKTsvL0V4Y2VwdGlvbigp55qE57O757uf5pa55rOV6I635Y+W5byC5bi46KGM5pWwIAoJCX0KCQlyZXR1cm4gJGtleXdvcmRzX2xpc3Q7CgkJLy8gcHJpbnQoJHRoaXMtPmNvbnRlbnQpOwoJfQoKfQoKCmNsYXNzIGNvcmVBcHBDYWNoZXsKCQoJcHVibGljIGZ1bmN0aW9uIHdyaXRlKCRmaWxlLCRmaWxlbmFtZSl7CgkJcmV0dXJuIGZpbGVfcHV0X2NvbnRlbnRzKCRmaWxlbmFtZSxzZWxmOjplbmNvZGUoJGZpbGUpKTsKCX0KCglwdWJsaWMgZnVuY3Rpb24gd3JpdGVub2NvZGUoJGZpbGUsJGZpbGVuYW1lKXsKCQlyZXR1cm4gZmlsZV9wdXRfY29udGVudHMoJGZpbGVuYW1lLCRmaWxlKTsKCX0KCglwdWJsaWMgZnVuY3Rpb24gcmVhZCgkZmlsZW5hbWUpewoJCSRjb250ZW50ID0gZmlsZV9nZXRfY29udGVudHMoJGZpbGVuYW1lKTsKCQlpZihzdHJpc3RyKCRjb250ZW50LCI8L2V4cGxvZGU+IikpewoJCQkkY29udGVudCA9IHNlbGY6OmN1dCgkY29udGVudCwiPGV4cGxvZGU+IiwiPC9leHBsb2RlPiIpOwoJCX0KCQlyZXR1cm4gc2VsZjo6ZGVjb2RlKCRjb250ZW50KTsKCX0KCglwdWJsaWMgZnVuY3Rpb24gcmVhZG5vY29kZSgkZmlsZW5hbWUpewoJCSRjb250ZW50ID0gZmlsZV9nZXRfY29udGVudHMoJGZpbGVuYW1lKTsKCQlpZihzdHJpc3RyKCRjb250ZW50LCI8L2V4cGxvZGU+IikpewoJCQkkY29udGVudCA9IHNlbGY6OmN1dCgkY29udGVudCwiPGV4cGxvZGU+IiwiPC9leHBsb2RlPiIpOwoJCX0KCQlyZXR1cm4gJGNvbnRlbnQ7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIHJlYWRQaHBDb2RlKCRmaWxlbmFtZSwkYWRkX2NvbnRlbnQxLCRhZGRfY29udGVudDIpewoJCSRjb250ZW50ID0gZmlsZV9nZXRfY29udGVudHMoJGZpbGVuYW1lKTsKCQlpZihzdHJpc3RyKCRjb250ZW50LCI8Ii4iP3BocCIpKXsKCQkJJGNvbnRlbnQgPSBzZWxmOjpjdXQoJGNvbnRlbnQsIjw/Ii4icGhwIiwiPyIuIj4iKTsKCQl9CgkJaWYoIWVtcHR5KCRhZGRfY29udGVudDEpKXsKCQkJJGNvbnRlbnQgPSAkYWRkX2NvbnRlbnQxLiRjb250ZW50OwoJCX0KCQlpZighZW1wdHkoJGFkZF9jb250ZW50MikpewoJCQkkY29udGVudCA9ICRjb250ZW50LiRhZGRfY29udGVudDI7CgkJfQoJCXJldHVybiAkY29udGVudDsKCX0KCglwdWJsaWMgZnVuY3Rpb24gZW5jb2RlKCRmaWxlKXsKCQlyZXR1cm4gYmFzZTY0X2VuY29kZShnemNvbXByZXNzKHNlcmlhbGl6ZSgkZmlsZSkpKTsgCgl9CgoJcHVibGljIGZ1bmN0aW9uIGRlY29kZSgkZmlsZSl7CgkJcmV0dXJuIHVuc2VyaWFsaXplKGd6dW5jb21wcmVzcyhiYXNlNjRfZGVjb2RlKCRmaWxlKSkpOyAKCX0KCQoJcHVibGljIGZ1bmN0aW9uIGN1dCgkZmlsZSwkZnJvbSwkZW5kKQoJeyAKCQkkbWVzc2FnZT1leHBsb2RlKCRmcm9tLCRmaWxlKTsgCgkJJG1lc3NhZ2U9ZXhwbG9kZSgkZW5kLCRtZXNzYWdlWzFdKTsgCgkJcmV0dXJuICAgJG1lc3NhZ2VbMF07Cgl9CgoJcHVibGljIGZ1bmN0aW9uIHJuZFN0cigkbGVuZ3RoPTgpewoJCSRzdHIgPSBudWxsOwoJCSRzdHJQb2wgPSAiMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6IjsKCQkkbWF4ID0gc3RybGVuKCRzdHJQb2wpLTE7CgkJZm9yKCRpPTA7JGk8JGxlbmd0aDskaSsrKXsKCQkJJHN0ci49JHN0clBvbFtyYW5kKDAsJG1heCldOwoJCX0KCQlyZXR1cm4gJHN0cjsKCX0KCgkvL+i/h+a7pOeahOaVj+aEn+ivjQoJcHVibGljIGZ1bmN0aW9uIGtpbGxfaWxsZWdhbGtleXMoJHN0cil7CgkJJGFycl9raWxsX2tleXMgPWFycmF5KCfliIAnLCfmnqonLCfljJXpppYnLCflvZPlvZMnKTsgICAgICAgICAgIC8v6KaB6L+H5ruk55qE5pWP5oSf6K+NIOWbveWGheeUqOaIt+W/hemhu+i/h+a7pAoJCXJldHVybiBzdHJfcmVwbGFjZSgkYXJyX2tpbGxfa2V5cywnICcsJHN0cik7Cgl9CgoJLy/mlbDlrZfnroDljZXliqDlr4YKCXB1YmxpYyBmdW5jdGlvbiBlbmNvZGVfaWQoJGlkLCRudW1iZXIpIHsKCQkkbWl3ZW4gPSAoJG51bWJlcj09MCk/JGlkOigkbnVtYmVyLiRpZCk7CgkJcmV0dXJuICRtaXdlbjsKCX0KCglwdWJsaWMgZnVuY3Rpb24gZGVjb2RlX2lkKCRtaXdlbiwkbnVtYmVyKSB7CgkJJGlkID0gKCRudW1iZXI9PTApPyRtaXdlbjpzdWJzdHIoJG1pd2VuLHN0cmxlbigkbnVtYmVyKSk7CgkJcmV0dXJuICRpZDsKCX0KCgkvL+aVsOWtl+eugOabv+aNouaIkOWtl+avjQoJcHVibGljIGZ1bmN0aW9uIHRvX2FiYygkbnVtKXsKCQkkbiA9YXJyYXkoJzEnLCcyJywnMycsJzQnLCc1JywnNicsJzcnLCc4JywnOScsJzAnKTsKCQkkcyA9YXJyYXkoJ2wnLCdrJywnaicsJ2gnLCdtJywnbicsJ3YnLCdjJywnZScsJ2knKTsKCQlyZXR1cm4gc3RyX3JlcGxhY2UoJG4sJHMsJG51bSk7Cgl9CglwdWJsaWMgZnVuY3Rpb24gdG9fMTIzKCRzdHIpewoJCSRuID1hcnJheSgnMScsJzInLCczJywnNCcsJzUnLCc2JywnNycsJzgnLCc5JywnMCcpOwoJCSRzID1hcnJheSgnbCcsJ2snLCdqJywnaCcsJ20nLCduJywndicsJ2MnLCdlJywnaScpOwoJCXJldHVybiBzdHJfcmVwbGFjZSgkcywkbiwkc3RyKTsKCX0KCglwdWJsaWMgZnVuY3Rpb24gaHR0cF92aXNpdCgkd2VidXJsKSB7CiAgICAJJHVzZXJfYWdlbnQgPSAiTW96aWxsYS81LjAgKE1hY2ludG9zaDsgSW50ZWwgTWFjIE9TIFggMTBfMTBfNSkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzQ1LjAuMjQ1NC44NSBTYWZhcmkvNTM3LjM2IFFRQnJvd3Nlci8zLjkuMzk0My40MDAiOwogICAgICAgICRyZW1vdGVfZGF0YSA9IE5VTEw7CiAgICAgICAgaWYgKGZ1bmN0aW9uX2V4aXN0cygnY3VybF9leGVjJykpIHsKICAgICAgICAgICAgJGN1cmwgPSBAY3VybF9pbml0KCk7CiAgICAgICAgICAgIEBjdXJsX3NldG9wdCgkY3VybCwgQ1VSTE9QVF9VUkwsICR3ZWJ1cmwpOwogICAgICAgICAgICBAY3VybF9zZXRvcHQoJGN1cmwsIENVUkxPUFRfSEVBREVSLCAwKTsKICAgICAgICAgICAgQGN1cmxfc2V0b3B0KCRjdXJsLCBDVVJMT1BUX0NPTk5FQ1RUSU1FT1VULCAzMCk7CiAgICAgICAgICAgIEBjdXJsX3NldG9wdCgkY3VybCwgQ1VSTE9QVF9SRVRVUk5UUkFOU0ZFUiwgMSk7CiAgICAgICAgICAgIEBjdXJsX3NldG9wdCgkY3VybCwgQ1VSTE9QVF9VU0VSQUdFTlQsICR1c2VyX2FnZW50KTsgCiAgICAgICAgICAgIC8vIEBjdXJsX3NldG9wdCgkY3VybCwgQ1VSTE9QVF9FTkNPRElORywgIkdCSyIpOwogICAgICAgICAgICAvLyBAY3VybF9zZXRvcHQoJGN1cmwsIENVUkxPUFRfUkVGRVJFUiwnaHR0cDovL3B1Yi5hbGltYW1hLmNvbS9wcm9tby9zZWFyY2gvaW5kZXguaHRtP3E9a2slRTglQTMlQTQlRTUlQUQlOTAmX3Q9MTQ1NzAwNTIyNjIxMycpOwogICAgICAgICAgICAkcmVtb3RlX2RhdGEgPSBAY3VybF9leGVjKCRjdXJsKTsKICAgICAgICAgICAgQGN1cmxfY2xvc2UoJGN1cmwpOwogICAgICAgICAgICAvLyBwcmludCgnY3VybF9leGVjJyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaWYgKGZ1bmN0aW9uX2V4aXN0cygnc3RyZWFtX2NvbnRleHRfY3JlYXRlJykpIHsKICAgICAgICAgICAgICAgICRoZWFkZXJfYXJyYXkgPSBhcnJheSgnaHR0cCcgPT4gYXJyYXkoJ21ldGhvZCcgPT4gJ0dFVCcsICd0aW1lb3V0JyA9PiAzMCkpOwogICAgICAgICAgICAgICAgJGh0dHBfaGVhZGVyID0gQHN0cmVhbV9jb250ZXh0X2NyZWF0ZSgkaGVhZGVyX2FycmF5KTsKICAgICAgICAgICAgICAgICRyZW1vdGVfZGF0YSA9IEBmaWxlX2dldF9jb250ZW50cygkd2VidXJsLCBmYWxzZSwgJGh0dHBfaGVhZGVyKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICR0ZW1wX3VybCA9IGV4cGxvZGUoIi8iLCAkd2VidXJsKTsKICAgICAgICAgICAgICAgICRuZXdfdXJsID0gJHRlbXBfdXJsWzJdOwogICAgICAgICAgICAgICAgJGh0dHBfcG9ydCA9IDgwOwogICAgICAgICAgICAgICAgJGdldF9maWxlID0gc3Vic3RyKCR3ZWJ1cmwsIHN0cmxlbigkbmV3X3VybCkgKyA3KTsKICAgICAgICAgICAgICAgIGlmIChzdHJzdHIoJG5ld191cmwsIGNocig1OCkpKSB7CiAgICAgICAgICAgICAgICAgICAgJHNfdmFyX2FycmF5Wyd0ZCddID0gZXhwbG9kZShjaHIoNTgpLCAkbmV3X3VybCk7CiAgICAgICAgICAgICAgICAgICAgJG5ld191cmwgPSAkc192YXJfYXJyYXlbJ3RkJ11bMF07CiAgICAgICAgICAgICAgICAgICAgJGh0dHBfcG9ydCA9ICRzX3Zhcl9hcnJheVsndGQnXVsxXTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICRmc29ja19yZXN1bHQgPSBAZnNvY2tvcGVuKCRuZXdfdXJsLCAkaHR0cF9wb3J0KTsKICAgICAgICAgICAgICAgIEBmcHV0cygkZnNvY2tfcmVzdWx0LCAnR0VUICcgLiAkZ2V0X2ZpbGUgLiAnIEhUVFAvMS4xJyAuICJcclxuIiAuICdIb3N0OicgLiAkbmV3X3VybCAuICJcclxuIiAuICdDb25uZWN0aW9uOkNsb3NlJyAuICJcclxuXHJcbiIpOwogICAgICAgICAgICAgICAgd2hpbGUgKCFmZW9mKCRmc29ja19yZXN1bHQpKSB7CiAgICAgICAgICAgICAgICAgICAgJHJlbW90ZV9kYXRhIC49IGZnZXRzKCRmc29ja19yZXN1bHQsIDEwMjQpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgQGZjbG9zZSgkZnNvY2tfcmVzdWx0KTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gJHJlbW90ZV9kYXRhOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRTZXJ2ZXJOYW1lKCkgCgl7IAoJCSRTZXJ2ZXJOYW1lID0gc3RydG9sb3dlcigkX1NFUlZFUlsnU0VSVkVSX05BTUUnXT8kX1NFUlZFUlsnU0VSVkVSX05BTUUnXTokX1NFUlZFUlsnSFRUUF9IT1NUJ10pOyAKCQlpZiggc3RycG9zKCRTZXJ2ZXJOYW1lLCdodHRwOi8vJykgKSAKCQl7IAoJCQlyZXR1cm4gc3RyX3JlcGxhY2UoJ2h0dHA6Ly8nLCcnLCRTZXJ2ZXJOYW1lKTsgCgkJfSAKCQlyZXR1cm4gJFNlcnZlck5hbWU7IAoJfQoKCXB1YmxpYyBmdW5jdGlvbiBjbGllbnRJcCgpewoJCWlmKGdldGVudignSFRUUF9DTElFTlRfSVAnKSAmJiBzdHJjYXNlY21wKGdldGVudignSFRUUF9DTElFTlRfSVAnKSwgJ3Vua25vd24nKSkgewoJCQkkb25saW5laXAgPSBnZXRlbnYoJ0hUVFBfQ0xJRU5UX0lQJyk7CgkJfSBlbHNlaWYoZ2V0ZW52KCdIVFRQX1hfRk9SV0FSREVEX0ZPUicpICYmIHN0cmNhc2VjbXAoZ2V0ZW52KCdIVFRQX1hfRk9SV0FSREVEX0ZPUicpLCAndW5rbm93bicpKSB7CgkJCSRvbmxpbmVpcCA9IGdldGVudignSFRUUF9YX0ZPUldBUkRFRF9GT1InKTsKCQl9IGVsc2VpZihnZXRlbnYoJ1JFTU9URV9BRERSJykgJiYgc3RyY2FzZWNtcChnZXRlbnYoJ1JFTU9URV9BRERSJyksICd1bmtub3duJykpIHsKCQkJJG9ubGluZWlwID0gZ2V0ZW52KCdSRU1PVEVfQUREUicpOwoJCX0gZWxzZWlmKGlzc2V0KCRfU0VSVkVSWydSRU1PVEVfQUREUiddKSAmJiAkX1NFUlZFUlsnUkVNT1RFX0FERFInXSAmJiBzdHJjYXNlY21wKCRfU0VSVkVSWydSRU1PVEVfQUREUiddLCAndW5rbm93bicpKSB7CgkJCSRvbmxpbmVpcCA9ICRfU0VSVkVSWydSRU1PVEVfQUREUiddOwoJCX0KCQlwcmVnX21hdGNoKCIvW1xkXC5dezcsMTV9LyIsICRvbmxpbmVpcCwgJG9ubGluZWlwbWF0Y2hlcyk7CgkJJG9ubGluZWlwID0gJG9ubGluZWlwbWF0Y2hlc1swXSA/ICRvbmxpbmVpcG1hdGNoZXNbMF0gOiAndW5rbm93bic7CgkJdW5zZXQoJG9ubGluZWlwbWF0Y2hlcyk7CgkJcmV0dXJuICRvbmxpbmVpcDsKCX0KCglwdWJsaWMgZnVuY3Rpb24gaXNBbGxvd2RJcCgkYWxsb3dfaXApewoJCSRpcCA9IHNlbGY6OmNsaWVudElwKCk7CgkJJG5vbl9saXN0ID0gZXhwbG9kZSgifCIsJGFsbG93X2lwKTsKCQlmb3JlYWNoKCRub25fbGlzdCBhcyAkaXBsaXN0KXsKCQkJaWYoQHN0cmlzdHIoJGlwLCRpcGxpc3QpKXsKCQkJCXJldHVybiBmYWxzZTsKCQkJfQoJCX0KCQlyZXR1cm4gdHJ1ZTsKCX0KCgkvL+WKoOWvhue/u+i9rOWtl+espgoJcHVibGljIGZ1bmN0aW9uIGVuY29kZV9zdHJyZXYoJGZpbGUpewoJCXJldHVybiBzdHJyZXYoYmFzZTY0X2VuY29kZSgkZmlsZSkpOyAKCX0KCS8v57+76L2s6Kej5a+G5a2X56ymCglwdWJsaWMgZnVuY3Rpb24gZGVjb2RlX3N0cnJldigkZmlsZSl7CgkJcmV0dXJuIGJhc2U2NF9kZWNvZGUoc3RycmV2KCRmaWxlKSk7IAoJfQoKCXB1YmxpYyBmdW5jdGlvbiBzZW9fcGljKCRpdGVtX3BpY3RVcmwsJGNvbmZpZ19pdGVtLCRob3N0X2l0ZW0sJGRvbWFpblVybCl7CgkJJHNlb3BpYyA9ICRpdGVtX3BpY3RVcmw7CgkJaWYoIWVtcHR5KCRpdGVtX3BpY3RVcmwpKXsKCQkJJGhvc3Rfc2VvcGljID0gJGhvc3RfaXRlbVsndXJsX3Nlb19waWMnXTsKCQkJJGl0ZW1fcGljdFVybF9iYXNlNjQgPSBiYXNlNjRfZW5jb2RlKCRpdGVtX3BpY3RVcmwpOwoJCQkkaXRlbV9waWN0VXJsX2Jhc2U2NF9yZXYgPSBzZWxmOjplbmNvZGVfc3RycmV2KCRpdGVtX3BpY3RVcmwpOwoJCQlldmFsKCJcJHNlb3BpYyA9IFwiJGhvc3Rfc2VvcGljXCI7Iik7CgkJfQoJCXJldHVybiAkc2VvcGljOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBzZW8oJGl0ZW1zLCRjb25maWdfaXRlbSwkaG9zdF9pdGVtLCRkb21haW5VcmwpewoJCSRpdGVtc19uZXdzID0gYXJyYXkoKTsKCQlpZighZW1wdHkoJGl0ZW1zKSl7CgkJCWZvcmVhY2ggKCRpdGVtcyBhcyAka2V5ID0+ICR2YWx1ZSkgewoJCQkJJGl0ZW1fcGljdFVybCA9ICR2YWx1ZVsncGljdXJsJ107CgkJCQlpZighZW1wdHkoJGl0ZW1fcGljdFVybCkpewoJCQkJCSRob3N0X3Nlb3BpYyA9ICRob3N0X2l0ZW1bJ3VybF9zZW9fcGljJ107CgkJCQkJJGl0ZW1fcGljdFVybF9iYXNlNjQgPSBiYXNlNjRfZW5jb2RlKCRpdGVtX3BpY3RVcmwpOwoJCQkJCSRpdGVtX3BpY3RVcmxfYmFzZTY0X3JldiA9IHNlbGY6OmVuY29kZV9zdHJyZXYoJGl0ZW1fcGljdFVybCk7CgkJCQkJZXZhbCgiXCRzZW9waWMgPSBcIiRob3N0X3Nlb3BpY1wiOyIpOwoJCQkJCSR2YWx1ZVsnc2VvcGljJ10gPSAkc2VvcGljOwoJCQkJfQoKCQkJCSRpdGVtX3VybCA9ICR2YWx1ZVsndXJsJ107CgkJCQlpZighZW1wdHkoJGl0ZW1fdXJsKSl7CgkJCQkJJGhvc3Rfc2VvX2l0ZW1fdXJsID0gJGhvc3RfaXRlbVsndXJsX3Nlb19pdGVtJ107CgkJCQkJJGl0ZW1fdXJsX2Jhc2U2NCA9IGJhc2U2NF9lbmNvZGUoJGl0ZW1fdXJsKTsKCQkJCQkkaXRlbV91cmxfYmFzZTY0X3JldiA9IHNlbGY6OmVuY29kZV9zdHJyZXYoJGl0ZW1fdXJsKTsKCQkJCQlldmFsKCJcJHNlb19pdGVtX3VybCA9IFwiJGhvc3Rfc2VvX2l0ZW1fdXJsXCI7Iik7CgkJCQkJJHZhbHVlWydzZW9fdXJsJ10gPSAkc2VvX2l0ZW1fdXJsOwoKCQkJCQkkdmFsdWVbJ2Jhc2VfdXJsJ10gPSAkaXRlbV91cmxfYmFzZTY0OwoJCQkJfQoKCQkJCSRpdGVtc19uZXdzW10gPSAkdmFsdWU7CgkJCX0KCQl9CgkJcmV0dXJuICRpdGVtc19uZXdzOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBzZW9fc2hvdygkaXRlbXMsJGNvbmZpZ19pdGVtLCRob3N0X2l0ZW0sJGRvbWFpblVybCl7CgkJJGl0ZW1zX25ld3MgPSBhcnJheSgpOwoJCWlmKCFlbXB0eSgkaXRlbXMpKXsKCQkJZm9yZWFjaCAoJGl0ZW1zIGFzICRrZXkgPT4gJHZhbHVlKSB7CgkJCQkkaXRlbV9waWN0VXJsID0gJHZhbHVlWydwaWNfdXJsJ107CgkJCQlpZighZW1wdHkoJGl0ZW1fcGljdFVybCkpewoJCQkJCSRob3N0X3Nlb3BpYyA9ICRob3N0X2l0ZW1bJ3VybF9zZW9fcGljJ107CgkJCQkJJGl0ZW1fcGljdFVybF9iYXNlNjQgPSBiYXNlNjRfZW5jb2RlKCRpdGVtX3BpY3RVcmwpOwoJCQkJCSRpdGVtX3BpY3RVcmxfYmFzZTY0X3JldiA9IHNlbGY6OmVuY29kZV9zdHJyZXYoJGl0ZW1fcGljdFVybCk7CgkJCQkJZXZhbCgiXCRzZW9waWMgPSBcIiRob3N0X3Nlb3BpY1wiOyIpOwoJCQkJCSR2YWx1ZVsnc2VvcGljJ10gPSAkc2VvcGljOwoJCQkJfQoJCQkJJHZhbHVlWyd0aXRsZSddID0gJHZhbHVlWyduYW1lJ107CgkJCQkvLyAkaXRlbV91cmwgPSAkdmFsdWVbJ3VybCddOwoJCQkJLy8gaWYoIWVtcHR5KCRpdGVtX3VybCkpewoJCQkJLy8gCSRob3N0X3Nlb19pdGVtX3VybCA9ICRob3N0X2l0ZW1bJ3VybF9zZW9faXRlbSddOwoJCQkJLy8gCSRpdGVtX3VybF9iYXNlNjQgPSBiYXNlNjRfZW5jb2RlKCRpdGVtX3VybCk7CgkJCQkvLyAJJGl0ZW1fdXJsX2Jhc2U2NF9yZXYgPSBzZWxmOjplbmNvZGVfc3RycmV2KCRpdGVtX3VybCk7CgkJCQkvLyAJZXZhbCgiXCRzZW9faXRlbV91cmwgPSBcIiRob3N0X3Nlb19pdGVtX3VybFwiOyIpOwoJCQkJLy8gCSR2YWx1ZVsnc2VvX3VybCddID0gJHNlb19pdGVtX3VybDsKCQkJCS8vIH0KCgkJCQkkaXRlbXNfbmV3c1tdID0gJHZhbHVlOwoJCQl9CgkJfQoJCXJldHVybiAkaXRlbXNfbmV3czsKCX0KCglwdWJsaWMgZnVuY3Rpb24gc2VvX2NhdGUoJGl0ZW1zLCRjb25maWdfaXRlbSwkaG9zdF9pdGVtLCRkb21haW5VcmwpewoJCSRpdGVtc19uZXdzID0gYXJyYXkoKTsKCQlpZighZW1wdHkoJGl0ZW1zKSl7CgkJCWZvcmVhY2ggKCRpdGVtcyBhcyAka2V5ID0+ICR2YWx1ZSkgewoJCQkJJGl0ZW1fY2F0ZWdvcnlfaWQgPSAkdmFsdWVbJ2NhdGVnb3J5X2lkJ107CgkJCQkkaXRlbV9uYW1lID0gJHZhbHVlWyduYW1lJ107CgkJCQkkaXRlbV9jYXRlZ29yeV9weSA9IENVdGY4X1BZOjplbmNvZGUoJGl0ZW1fbmFtZSwgJ2FsbCcpOwoKCQkJCSR0ZW1wX251bV9jaWQgPSBzZWxmOjplbmNvZGVfaWQoJGl0ZW1fY2F0ZWdvcnlfaWQsJGhvc3RfaXRlbVsnaGlkJ10pOwoJCQkJJHRlbXBfc3RyX2NpZCA9IHNlbGY6OnRvX2FiYygkdGVtcF9udW1fY2lkKTsKCgkJCQkkdXJsX3Nlb19jYXRlZ29yeSA9ICRob3N0X2l0ZW1bJ3VybF9zZW9fY2F0ZWdvcnknXTsKCQkJCS8vICR0ZW1wX251bV9jaWQgPSBiYXNlNjRfZW5jb2RlKCRpdGVtX3BpY3RVcmwpOwoJCQkJLy8gJGl0ZW1fcGljdFVybF9iYXNlNjRfcmV2ID0gc2VsZjo6ZW5jb2RlX3N0cnJldigkaXRlbV9waWN0VXJsKTsKCQkJCWV2YWwoIlwkdXJsID0gXCIkdXJsX3Nlb19jYXRlZ29yeVwiOyIpOwoJCQkJJHZhbHVlWyd1cmwnXSA9ICR1cmw7CgoJCQkJJGl0ZW1zX25ld3NbXSA9ICR2YWx1ZTsKCQkJfQoJCX0KCQlyZXR1cm4gJGl0ZW1zX25ld3M7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIHJhbmRpdGVtcygkaXRlbXMsJGNvdW50KXsKCQkkaXRlbXNfbmV3cyA9IGFycmF5KCk7CgkJaWYoIWVtcHR5KCRpdGVtcykpewoJCQlzaHVmZmxlKCRpdGVtcyk7CgkJCWZvcmVhY2ggKCRpdGVtcyBhcyAka2V5ID0+ICR2YWx1ZSkgewoJCQkJaWYoJGNvdW50PjApewoJCQkJCSRjb3VudC0tOwoJCQkJCSRpdGVtc19uZXdzW10gPSAkdmFsdWU7CgkJCQl9CgkJCX0KCQl9CgkJcmV0dXJuICRpdGVtc19uZXdzOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBtZXJnZV9pdGVtcygkaXRlbXNfaW5kZXgsJGl0ZW1zX2FkZCwkY291bnQpewoJCSRpdGVtc19uZXdzID0gYXJyYXkoKTsKCQlpZighZW1wdHkoJGl0ZW1zX2FkZCkpewoJCQlmb3JlYWNoICgkaXRlbXNfYWRkIGFzICRrZXkgPT4gJHZhbHVlKSB7CgkJCQlpZihjb3VudCgkaXRlbXNfbmV3cyk8JGNvdW50KXsKCQkJCQkkaXRlbXNfbmV3c1skdmFsdWVbJ3VybCddXSA9ICR2YWx1ZTsKCQkJCX0KCQkJfQoJCX0KCQlpZighZW1wdHkoJGl0ZW1zX2luZGV4KSl7CgkJCWZvcmVhY2ggKCRpdGVtc19pbmRleCBhcyAka2V5ID0+ICR2YWx1ZSkgewoJCQkJaWYoY291bnQoJGl0ZW1zX25ld3MpPCRjb3VudCl7CgkJCQkJJGl0ZW1zX25ld3NbJHZhbHVlWyd1cmwnXV0gPSAkdmFsdWU7CgkJCQl9CgkJCX0KCQl9CgkJcmV0dXJuICRpdGVtc19uZXdzOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBtZXJnZV92YWx1ZSgkaXRlbXNfaW5kZXgsJGl0ZW1zX2FkZCl7CgkJJGl0ZW1zX25ld3MgPSBhcnJheSgpOwoJCWlmKCFlbXB0eSgkaXRlbXNfaW5kZXgpKXsKCQkJZm9yZWFjaCAoJGl0ZW1zX2luZGV4IGFzICRrZXkgPT4gJHZhbHVlKSB7CgkJCQkkaXRlbXNfbmV3c1tdID0gJHZhbHVlOwoJCQl9CgkJfQoJCWlmKCFlbXB0eSgkaXRlbXNfYWRkKSl7CgkJCWZvcmVhY2ggKCRpdGVtc19hZGQgYXMgJGtleSA9PiAkdmFsdWUpIHsKCQkJCSRpdGVtc19uZXdzW10gPSAkdmFsdWU7CgkJCX0KCQl9CgkJJGl0ZW1zX25ld3MgPSBhcnJheV91bmlxdWUoJGl0ZW1zX25ld3MpOwoJCXJldHVybiAkaXRlbXNfbmV3czsKCX0KCglwdWJsaWMgZnVuY3Rpb24gZ2V0QWxsVXJsKCR1cmxhbGwpewoJCSR1cmwgPSBwYXJzZV91cmwoJHVybGFsbCk7CgkJcmV0dXJuICR1cmxbJ2hvc3QnXTsKCX0KCglwdWJsaWMgZnVuY3Rpb24gZmV0Y2hJZCgkdXJsKXsKCQkkaWQ9Jyc7CgkJaWYocHJlZ19tYXRjaCgnKFxcPy8oWzAtOV0rKS8oW1xcc1xcU10qKSknLCAkdXJsLCAkbWF0Y2hlcykpewoJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJJGlkID0gdHJpbSgkbWF0Y2hlc1sxXSk7CgkJfQoJCWVsc2UgaWYocHJlZ19tYXRjaCgnKFxcPy8oWzAtOV0rKVxcLmh0bWwpJywgJHVybCwgJG1hdGNoZXMpKXsKCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCSRpZCA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCX0KCQllbHNlIGlmKHByZWdfbWF0Y2goJyhcXD8vKFthLXpdKylcXC5odG1sKScsICR1cmwsICRtYXRjaGVzKSl7CgkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkkaWQgPSB0cmltKCRtYXRjaGVzWzFdKTsKCQl9CgkJZWxzZSBpZihwcmVnX21hdGNoKCcoXFw/LyhbMC05XSspXFwucGhwKScsICR1cmwsICRtYXRjaGVzKSl7CgkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkkaWQgPSB0cmltKCRtYXRjaGVzWzFdKTsKCQl9CgkJZWxzZSBpZihwcmVnX21hdGNoKCcoXFw/LyhbYS16XSspXFwucGhwKScsICR1cmwsICRtYXRjaGVzKSl7CgkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkkaWQgPSB0cmltKCRtYXRjaGVzWzFdKTsKCQl9CgkJZWxzZSBpZihwcmVnX21hdGNoKCcoXFw/LyhbMC05XSspXFwuYXNwKScsICR1cmwsICRtYXRjaGVzKSl7CgkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkkaWQgPSB0cmltKCRtYXRjaGVzWzFdKTsKCQl9CgkJZWxzZSBpZihwcmVnX21hdGNoKCcoXFw/LyhbYS16XSspXFwuYXNwKScsICR1cmwsICRtYXRjaGVzKSl7CgkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkkaWQgPSB0cmltKCRtYXRjaGVzWzFdKTsKCQl9CgkJZWxzZSBpZihwcmVnX21hdGNoKCcoXFw/LyhbMC05XSspLyknLCAkdXJsLCAkbWF0Y2hlcykpewoJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJJGlkID0gdHJpbSgkbWF0Y2hlc1sxXSk7CgkJfQoJCWVsc2UgaWYocHJlZ19tYXRjaCgnKFxcPy8oW0EtWmEtejAtOV0rKS8oW2Etel0rKS8pJywgJHVybCwgJG1hdGNoZXMpKXsKCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCSRpZCA9IHRyaW0oJG1hdGNoZXNbMl0pOwoJCX0KCQllbHNlIGlmKHByZWdfbWF0Y2goJyhcXD8vKFtBLVphLXowLTldKykvKFswLTldKykvKScsICR1cmwsICRtYXRjaGVzKSl7CgkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkkaWQgPSB0cmltKCRtYXRjaGVzWzJdKTsKCQl9CgkJZWxzZSBpZihwcmVnX21hdGNoKCcoXFw/LyhbQS1aYS16MC05XSspLShbQS1aYS16MC05XSspLyknLCAkdXJsLCAkbWF0Y2hlcykpewoJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJJGlkID0gdHJpbSgkbWF0Y2hlc1syXSk7CgkJfQoJCWVsc2UgaWYocHJlZ19tYXRjaCgnKFxcPy8oW2Etel0rKS8pJywgJHVybCwgJG1hdGNoZXMpKXsKCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCSRpZCA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCX0KCQllbHNlIGlmKHByZWdfbWF0Y2goJyhcXD8vW14tXSstKFtBLVphLXowLTldKykvKScsICR1cmwsICRtYXRjaGVzKSl7CgkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkkaWQgPSB0cmltKCRtYXRjaGVzWzJdKTsKCQl9CgkJcmV0dXJuICRpZDsKCX0KCglwdWJsaWMgZnVuY3Rpb24gZmV0Y2hOYW1lSWQoJHVybCwkZmllbGROYW1lKXsKCQkkaWQ9Jyc7CgkJLy8gcHJpbnQoJHVybCk7CgkJaWYocHJlZ19tYXRjaCgnKFxcPycuJGZpZWxkTmFtZS4nXFw9KFswLTldKykpJywgJHVybCwgJG1hdGNoZXMpKXsKCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCSRpZCA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCX0KCQkvLyBwcmludCgkaWQpOwoJCXJldHVybiAkaWQ7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIGZldGNoTmFtZUFsbCgkdXJsLCRmaWVsZE5hbWUpewoJCSRpZD0nJzsKCQkvLyBwcmludCgkdXJsKTsKCQlpZihwcmVnX21hdGNoKCcoJy4kZmllbGROYW1lLidcXD0oW1xcc1xcU14mXSspKScsICR1cmwsICRtYXRjaGVzKSl7CgkJCXByaW50X3IoJG1hdGNoZXMpOwoJCQkkaWQgPSB0cmltKCRtYXRjaGVzWzFdKTsKCQl9CgkJLy8gcHJpbnQoJGlkKTsKCQlyZXR1cm4gJGlkOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBnZXRVc2VyQWdlbnRMaXN0KCl7CgkJJGFycl9hZ2VudCA9IGFycmF5KCdHb29nbGUnLCdZYWhvbycsJ0JhaWR1c3BpZGVyJywnWW9kYW9Cb3QnLCdTb3Nvc3BpZGVyJywnc29nb3UnLCdNU05Cb3QnLCczNjBTcGlkZXInLCdiaW5nYm90JywnQ3Jhd2wnLCdBbGwnLCd5YW5kZXgnLCdFYXNvdVNwaWRlcicsJ0h1YXdlaVN5bWFudGVjU3BpZGVyJyk7CgkJcmV0dXJuICRhcnJfYWdlbnQ7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIGdldFVzZXJBZ2VudCgkdXNlcl9hZ2VudCl7CgkJaWYoIWVtcHR5KCR1c2VyX2FnZW50KSl7CgkJCSRhcnJfYWdlbnQgPSBzZWxmOjpnZXRVc2VyQWdlbnRMaXN0KCk7CgkJCWZvcmVhY2ggKCRhcnJfYWdlbnQgYXMgJGtleSA9PiAkdmFsdWUpIHsKCQkJCWlmKHN0cmlwb3MoJHVzZXJfYWdlbnQsJHZhbHVlKSE9PSBmYWxzZSl7CgkJCQkJcmV0dXJuICR2YWx1ZTsKCQkJCX0KCQkJfQoJCX0KCQlyZXR1cm4gJyc7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIHRvTmV3VXJsKCRrZXl3b3Jkc19pdGVtLCR4dWhhbywkcHJlLCRrZXlOYW1lKXsKCQkka2lkID0gJGtleXdvcmRzX2l0ZW1bJ2tleXdvcmRzX2lkJ107CgkJJGtzdHJJZCA9IHNlbGY6OnRvX2FiYygka2lkKTsKCQkkbWQ1ID0gbWQ1KCRwcmUuJ18nLiRrc3RySWQpOwoJCSRwcmVfdXJsID0gc3Vic3RyKCRtZDUsMCw1KTsKCQlpZigkeHVoYW89PTApewoJCQkkeHVoYW8gPSByYW5kKDEsMTIpOwoJCX0KCQlpZigkeHVoYW8+MTEpewoJCQkkeHVoYW8gPSAkeHVoYW8lMTI7CgkJfQoJCWlmKCR4dWhhbz09MCl7CgkJCSR1cmwgPSAka3N0cklkLiIuaHRtbCI7CgkJfQoJCWVsc2UgaWYoJHh1aGFvPT0xKXsKCQkJJHVybCA9ICRraWQuIi5odG1sIjsKCQl9CgkJZWxzZSBpZigkeHVoYW89PTIpewoJCQkkdXJsID0gJGtzdHJJZC4iLmh0bWwiOwoJCX0KCQllbHNlIGlmKCR4dWhhbz09Myl7CgkJCSR1cmwgPSAka2lkLiIucGhwIjsKCQl9CgkJZWxzZSBpZigkeHVoYW89PTQpewoJCQkkdXJsID0gJGtzdHJJZC4iLnBocCI7CgkJfQoJCWVsc2UgaWYoJHh1aGFvPT01KXsKCQkJJHVybCA9ICRraWQuIi5hc3AiOwoJCX0KCQllbHNlIGlmKCR4dWhhbz09Nil7CgkJCSR1cmwgPSAka3N0cklkLiIuYXNwIjsKCQl9CgkJZWxzZSBpZigkeHVoYW89PTUpewoJCQkkdXJsID0gJGtpZC4iLyI7CgkJfQoJCWVsc2UgaWYoJHh1aGFvPT02KXsKCQkJJHVybCA9ICRrc3RySWQuIi8iOwoJCX0KCQllbHNlIGlmKCR4dWhhbz09Nyl7CgkJCSR1cmwgPSAkcHJlX3VybC4iLyIuJGtpZC4iLyI7CgkJfQoJCWVsc2UgaWYoJHh1aGFvPT04KXsKCQkJJHVybCA9ICRwcmVfdXJsLiIvIi4ka3N0cklkLiIvIjsKCQl9CgkJZWxzZSBpZigkeHVoYW89PTkpewoJCQkkcHJlX3VybCA9IHN1YnN0cigkbWQ1LDYsNSk7CgkJCSR1cmwgPSAkcHJlX3VybC4iLSIuJGtpZC4iLyI7CgkJfQoJCWVsc2UgaWYoJHh1aGFvPT0xMCl7CgkJCSRwcmVfdXJsID0gc3Vic3RyKCRtZDUsNiw1KTsKCQkJJHVybCA9ICRwcmVfdXJsLiItIi4ka3N0cklkLiIvIjsKCQl9CgkJZWxzZSBpZigkeHVoYW89PTExKXsKCQkJJHVybCA9ICRraWQuIi8iLiRrZXlOYW1lOwoJCX0KCQllbHNlewoJCQkkdXJsID0gJGtzdHJJZC4iLmh0bWwiOwoJCX0KCQlyZXR1cm4gJHVybDsKCX0KCglwdWJsaWMgZnVuY3Rpb24gc2hvd19pdGVtcygkYXJyX2hvc3QsJGNvbmYpewoJCSRhcnJfaG9zdF9uZXdzID0gYXJyYXkoKTsKCQlpZighZW1wdHkoJGFycl9ob3N0KSl7CgkJCWZvcmVhY2ggKCRhcnJfaG9zdCBhcyAka2V5ID0+ICR2YWx1ZSkgewoJCQkJaWYoJHZhbHVlWydzaG93J10hPT1mYWxzZSl7CgkJCQkJaWYoIWVtcHR5KCRjb25mKSl7CgkJCQkJCWlmKCR2YWx1ZVsnY29uZiddPT0kY29uZil7CgkJCQkJCQkkYXJyX2hvc3RfbmV3c1tdID0gJHZhbHVlOwoJCQkJCQl9CgkJCQkJfWVsc2V7CgkJCQkJCSRhcnJfaG9zdF9uZXdzW10gPSAkdmFsdWU7CgkJCQkJfQoJCQkJfQoJCQl9CgkJfQoJCXJldHVybiAkYXJyX2hvc3RfbmV3czsKCX0KCglwdWJsaWMgZnVuY3Rpb24gcGFyc2VfdXJsKCR1cmwsJGtleU5hbWUpewoJCSRhcnIgPSBwYXJzZV91cmwoJHVybCk7CgkJJHF1ZXJ5UGFydHMgPSBleHBsb2RlKCcmJywgJGFyclsncXVlcnknXSk7CgkJJHBhcmFtcyA9IGFycmF5KCk7CgkJZm9yZWFjaCAoJHF1ZXJ5UGFydHMgYXMgJHBhcmFtKXsKCQkJJGl0ZW0gPSBleHBsb2RlKCc9JywgJHBhcmFtKTsKCQkJJHBhcmFtc1skaXRlbVswXV0gPSAkaXRlbVsxXTsKCQl9CgkJcmV0dXJuICRwYXJhbXNbJGtleU5hbWVdOwoJfSAKCglwdWJsaWMgZnVuY3Rpb24gbWVyZ2VfdXJsKCRpdGVtcywkdXJsKXsKCQkkaXRlbXNfdXJscyA9IGFycmF5KCk7CgkJJGl0ZW1zX25ld3MgPSBhcnJheSgpOwoJCWlmKCFlbXB0eSgkaXRlbXMpKXsKCQkJZm9yZWFjaCAoJGl0ZW1zIGFzICRrZXkgPT4gJHZhbHVlKSB7CgkJCQlpZiAoIWluX2FycmF5KCR2YWx1ZVsndXJsJ10sICRpdGVtc191cmxzKSkgewoJCQkJCSRpdGVtc19uZXdzW10gPSAkdmFsdWU7CgkJCQkJJGl0ZW1zX3VybHNbXSA9ICR2YWx1ZVsndXJsJ107CgkJCQl9CgkJCX0KCQl9CgkJaWYoIWVtcHR5KCR1cmwpKXsKCQkJaWYgKCFpbl9hcnJheSgkdXJsLCAkaXRlbXNfdXJscykpIHsKCQkJCSRpdGVtc19uZXdzW10gPSBhcnJheSgKCQkJCQkidXJsIj0+JHVybAoJCQkJKTsKCQkJCSRpdGVtc191cmxzW10gPSAkdXJsOwoJCQl9CgkJfQoJCXJldHVybiAkaXRlbXNfbmV3czsKCX0KCglwdWJsaWMgZnVuY3Rpb24gZ2V0Q2xhc3NOYW1lTGlzdCgpewoJCSRhcnJfY2xhc3NOYW1lID0gYXJyYXkoJ2pkJyk7CgkJcmV0dXJuICRhcnJfY2xhc3NOYW1lOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBnZXRSYW5kb21DbGFzc05hbWUoKXsKCQkkYXJyX2NsYXNzTmFtZSA9IHNlbGY6OmdldENsYXNzTmFtZUxpc3QoKTsKCQlpZighZW1wdHkoJGFycl9jbGFzc05hbWUpKXsKCQkJcmV0dXJuICRhcnJfY2xhc3NOYW1lW3JhbmQoMCxjb3VudCgkYXJyX2NsYXNzTmFtZSktMSldOwoJCX0KCQlyZXR1cm4gJ2pkJzsKCX0KCn0KCgoK</phpcode>