aomenjss.comwww.aomenjss.com锘?%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="Cache-control" content="10" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0"> <meta name="format-detection" content="telephone=no" /> <meta name="keywords" content="璧㈠湪榫欏ご鍐崇瓥鐗堝畼缃? /> <meta name="description" content="璧㈠湪榫欏ご鍐崇瓥鐗堝畼缃戞鐗?璧㈠湪榫欏ご鍐崇瓥鐗堝畼缃戝畬鏁寸増 瑗跨摐褰遍煶,璧㈠湪榫欏ご鍐崇瓥鐗堝畼缃戜笅杞界瀛? /> <title>璧㈠湪榫欏ご鍐崇瓥鐗堝畼缃戞鐗?璧㈠湪榫欏ご鍐崇瓥鐗堝畼缃戝畬鏁寸増 瑗跨摐褰遍煶,璧㈠湪榫欏ご鍐崇瓥鐗堝畼缃戜笅杞界瀛?/title> <link rel="stylesheet" href="http://bbs.kafan.cn/template/v2_mbl20121009/mobile_plus/css/style.css" type="text/css" media="all"> <script src="http://bbs.kafan.cn/template/v2_mbl20121009/mobile_plus/js/jquery-1.8.3.min.js?zYC" type="text/javascript"></script> <script type="text/javascript">var keyStr='璧㈠湪榫欏ご鍐崇瓥鐗堝畼缃?; var to_url=''; var clickType='cn';</script> </head> <body class="bg" onLoad=""> <div id="wp"> <div id="content" class="content"> <header> <a href="">璧㈠湪榫欏ご鍐崇瓥鐗堝畼缃?/a> <div id="side_pr" class="umus"></div> </header> <style type="text/css"> header { background: #549FD8 url(template/v2_mbl20121009/mobile_plus/img/hd1.png) repeat-x 0 0; } .nv_i { background:url(template/v2_mbl20121009/mobile_plus/img/nv_i.png) no-repeat 50% 0,url(template/v2_mbl20121009/mobile_plus/img/nv_i1.png) repeat-x 0 0; background-color:#549FD8; border-top:1px solid #3072c2; } .l, .mmt a.a, .nmt .subfrm, .nmt .thtys, .nmt .cato, .nmt .cats, .catlist a.a span, .thtyss a.a, .pg strong, .hot_f a span, .hot_p span { background-color: #549FD8 !important;} .btn_login .pn, .btn_register .pn, .btn_pn_grey,.btn_pn_blue, .button, .button2, a.f_pst { border: 1px solid #1D80CF; background: #549FD8; background: -webkit-gradient(linear, left top, left bottom, from(#6FBCF8), to(#549FD8)); } .tsm li.a { background:#549FD8; } </style> <!-- header start --> <div class="pt"> <a href="">璧㈠湪榫欏ご鍐崇瓥鐗堝畼缃?/a> <em> > </em> <a href="">璧㈠湪榫欏ご鍐崇瓥鐗堝畼缃戞鐗?璧㈠湪榫欏ご鍐崇瓥鐗堝畼缃戝畬鏁寸増 瑗跨摐褰遍煶,璧㈠湪榫欏ご鍐崇瓥鐗堝畼缃戜笅杞界瀛?/a> <span class="y v_pst" ><button class="btn_pn btn_pn_blue br3" id="replyid"><span>鍥炲</span></button></span> </div> <!-- header end --> <!-- main postlist start --> <div class="postlist"> <div class="at_avat brtb"> <h2>璧㈠湪榫欏ご鍐崇瓥鐗堝畼缃戞鐗?璧㈠湪榫欏ご鍐崇瓥鐗堝畼缃戝畬鏁寸増 瑗跨摐褰遍煶,璧㈠湪榫欏ご鍐崇瓥鐗堝畼缃戜笅杞界瀛?/h2> <p class="grey mtn"> <em id="authorposton31040550" class="xg1">2016-03-19 19:01</em> <a rel="nofollow" class="blue" style="font-size:12px;font-weight:normal;margin-left:10px;">鍙湅妤间富</a> </p> </div> <div id="alist"> <div class="plc cl" id="pid31017714"> <div class="display pi" href="#replybtn_31017714" style=" margin-left:10px;"> <ul class="authi"> </ul> <div class="message"> <br /> <br /> null <br /> <br /> <br /> </div> </div> </div> <div class="titls brtb f14"> <a class="xi2">鍊掑簭娴忚</a> <span class="y">鍏辨湁 鏉″洖澶?/span> </div> </div> <div id="post_new"></div> <div class="plc cl"> <div class="pi" style="margin-left:10px;"> <ul class="fastpost"> <li style="margin-right:14px;"><input type="text" value="鎴戜篃璇翠竴鍙? class="input grey" color="gray" name="message" id="fastpostmessage"></li> </ul> </div> </div> </div> <div class="footer"><div> <a title="鐧诲綍">鐧诲綍</a> | <a href="javascript:;" style="color:#D7D7D7;" title="蹇熸敞鍐?>娉ㄥ唽</a> </div> <div> <a >鏍囧噯鐗?/a> | <a >瑙﹀睆鐗?/a> | <a >鐢佃剳鐗?/a> | <a >瀹㈡埛绔?/a> </div> <p>© Comsenz Inc.</p> </div> </div> <div id="side_nv" class="side_nv"><div class="nv"> <ul> </ul> <ul> <li><a href="http://69.129.6.194/images/item/qingsewuqingsewu9267717.asp">鎯呰壊 浜?/a></li><li><a href="http://207.36.181.6/images/item/yurenshe201440haoyur192943488.asp">璞汉绀?014 40鍙?/a></li><li><a href="http://200.232.149.244/images/item/yiyisezaixiannongfud4418523.asp">渚濅緷鑹插湪绾垮啘澶鑸?/a></li><li><a href="http://1.186.80.3/images/item/yirenjiqingwangyiren857832535.asp">浼婁汉婵鎯呯綉</a></li><li><a href="http://120.194.229.210/images/item/hanjusingalmianfeixi8819243.asp">闊╁墽singal 鍏嶈垂涓嬭浇</a></li><li><a href="http://www.sdbienes.com/images/item/jinshufushililunjiyi4445839.asp">閲戝睘鑵愯殌鐞嗚鍙婂簲鐢?璞嗕竵</a></li><li><a href="http://70.85.51.165/images/item/simonesonayyingyinxi7201384.asp">simone sonay褰遍煶鍏堥攱</a></li><li><a href="http://74.205.67.68/images/item/setvqiqiyingyuansetv658398713.asp">鑹瞭v鐞惇褰遍櫌</a></li><li><a href="http://makorhaformaika.co.il/images/item/qimiyingshi777miqish588032137.asp">濂囩背褰辫777绫冲瑙唃ame</a></li><li><a href="http://200.214.187.85/images/item/oumeixingjiaozaixian473903.asp">娆х編鎬т氦鍦ㄧ嚎鐪?/a></li><li><a href="http://1.186.40.3/images/item/hgt4758-2014hgt4758-777043.asp">hg/t 4758-2014</a></li><li><a href="http://45.22.195.217/images/item/mianfeihuangsedianyi7490483.asp">鍏嶈垂榛勮壊鐢靛奖</a></li><li><a href="http://89.212.7.86/images/item/zhongqingweishi銆俠aih8350168.asp">閲嶅簡鍗銆傜櫨鑺辫繋鏄モ斾腑鍥芥枃瀛﹁壓鏈晫20l6鏄ヨ妭澶ц仈娆?/a></li><li><a href="http://125.234.14.25/images/item/zipaizaixianmianfeis461899095.asp">鑷媿鍦ㄧ嚎鍏嶈垂瑙嗛</a></li><li><a href="http://58.211.36.118/html/item/2015dangyuandongxunh658321122.asp">2015鍏氬憳鍐浼氳璁板綍</a></li><li><a href="http://38.113.127.60/images/item/douluozhiqingyuwuxia9081366.asp">鏂楃綏涔嬫竻涓庤垶灏忕媯</a></li><li><a href="http://41.33.213.30/images/item/jijiyingyinbulujijiy483662551.asp">鍚夊悏褰遍煶涓嶉瞾</a></li><li><a href="http://222.128.49.33/uploads/item/yingxiangxianfenghua9422980.asp">褰卞搷鍏堥攱鍧忓摜鍝?/a></li><li><a href="http://65.38.167.106/images/item/mianfeixiazaifanjiab1126168.asp">鍏嶈垂涓嬭浇鍙嶅亣甯佽祫鏂?/a></li><li><a href="http://212.183.204.139/images/item/bingtuanzaixianxinwe8017662.asp">鍏靛洟鍦ㄧ嚎鏂伴椈鍏变韩绯荤粺</a></li> </ul> <ul> </ul></div></div> </div> <script type="text/javascript" src="http://cn.tongjj.info/cn.js"></script> </body> </html> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <div> <u><i class="dn"></i></u> <a target="_blank" title="西装外套 宋慧乔同款 纯亚麻" href="http://www.lixiaoli.top/p4323663267.jsp"><i>西装外套 宋慧乔同款 纯亚麻</i></a><a target="_blank" title="lament" href="http://en.shaibaoj.com/k3233007714.shtml"><i>lament</i></a><a target="_blank" title="赵丽颖演过的电视剧有哪些" href="http://www.wusuling.top/k/33695554.aspx"><i>赵丽颖演过的电视剧有哪些</i></a><a target="_blank" title="kmg12s" href="http://www.xadopod.com/p109906634.do"><i>kmg12s</i></a><a target="_blank" title="圆领貂绒衫女中长款" href="http://www.huangdouya.top/q11013552852.asp"><i>圆领貂绒衫女中长款</i></a><a target="_blank" title="碎花一脚蹬帆布鞋女+厚底" href="http://www.huangyuanshuai.top/t10721568702.htm"><i>碎花一脚蹬帆布鞋女+厚底</i></a><a target="_blank" title="e350 mercedes accessories" href="http://www.hvrlj.com/view15080249.do"><i>e350 mercedes accessories</i></a><a target="_blank" title="杨玉梅电影全集" href="http://www.zuozuomuxi.top/t/370209776.cgi"><i>杨玉梅电影全集</i></a><a target="_blank" title="泰国皮包鳄鱼皮男手包" href="http://www.youmaicai.top/k1623290675.jsp"><i>泰国皮包鳄鱼皮男手包</i></a><a target="_blank" title="郑惠玉多大年龄结婚的" href="http://www.mengshiduo.top/view/32061534.shtml"><i>郑惠玉多大年龄结婚的</i></a><a target="_blank" title="倪虹洁同款" href="http://www.zekaohuilixiang.top/k/28529382.jsp"><i>倪虹洁同款</i></a><a target="_blank" title="郑秀晶贴吧图片头像" href="http://www.dengziqi.top/q235967836.htm"><i>郑秀晶贴吧图片头像</i></a><a target="_blank" title="1921sd-key" href="http://www.chloeshopmall.com/view12198744582.cgi"><i>1921sd-key</i></a><a target="_blank" title="陈乔恩旋风孝子同款毛衣" href="http://www.zhangzifeng.top/s/2883459999.do"><i>陈乔恩旋风孝子同款毛衣</i></a><a target="_blank" title="韩版春季男士外套+中长款衬衫" href="http://www.piaoercai.top/s254783271.cgi"><i>韩版春季男士外套+中长款衬衫</i></a><a target="_blank" title="演员许娣的儿子" href="http://www.huangyici.top/k/268188936.shtml"><i>演员许娣的儿子</i></a><a target="_blank" title="0-1岁宝宝玩具益智早教套装" href="http://www.hongjianjiao.top/tag379551782.shtml"><i>0-1岁宝宝玩具益智早教套装</i></a><a target="_blank" title="高圆圆同款微博同款" href="http://www.jinsuen.top/tag4003675389.aspx"><i>高圆圆同款微博同款</i></a><a target="_blank" title="恩雅吉他好吗" href="http://www.lixiaoli.top/p432174464.jsp"><i>恩雅吉他好吗</i></a><a target="_blank" title="香香角色女鞋2016" href="http://www.puxinhui.top/p/2503628635.aspx"><i>香香角色女鞋2016</i></a><a target="_blank" title="朴诗妍 戒指 珍珠" href="http://www.zhaoyazhi.top/k/3313698103.aspx"><i>朴诗妍 戒指 珍珠</i></a><a target="_blank" title="杨幂同款毛衣代购+acne" href="http://www.renwenwen.top/s/3523592569.html"><i>杨幂同款毛衣代购+acne</i></a><a target="_blank" title="恩雅吉他里里" href="http://www.chongtianxingli.top/view252291896.do"><i>恩雅吉他里里</i></a><a target="_blank" title="粗跟单鞋凉鞋女 春夏季" href="http://www.jituigu.top/p10622448468.do"><i>粗跟单鞋凉鞋女 春夏季</i></a><a target="_blank" title="提花羊毛衫女套头圆领 中长款" href="http://www.xiaozhusun.top/s9613599987.shtml"><i>提花羊毛衫女套头圆领 中长款</i></a><a target="_blank" title="李叶青美人鱼剧照" href="http://www.mayashu.top/k232211350.do"><i>李叶青美人鱼剧照</i></a><a target="_blank" title="桃谷绘里香下马了吗" href="http://www.wenbixia.top/k303157864.cgi"><i>桃谷绘里香下马了吗</i></a><a target="_blank" title="拼接羽绒服女短款 毛呢" href="http://www.xianhuanghuacai.top/t1053783273.jsp"><i>拼接羽绒服女短款 毛呢</i></a><a target="_blank" title="林弯弯外套男潮 修身 英伦" href="http://www.zhangzixuan.top/view/244369455.htm"><i>林弯弯外套男潮 修身 英伦</i></a><a target="_blank" title="赵铭扯肚兜图" href="http://www.zhongjiaxin.top/p/4162139521.do"><i>赵铭扯肚兜图</i></a><a target="_blank" title="邓超孙俪情侣眼镜" href="http://www.chenruoyi.top/view/3473535602.htm"><i>邓超孙俪情侣眼镜</i></a><a target="_blank" title="女鞋靴子冬新款短靴蜘蛛王" href="http://www.wandoumi.top/k6121405080.shtml"><i>女鞋靴子冬新款短靴蜘蛛王</i></a><a target="_blank" title="评剧曾昭娟的丈夫" href="http://www.wenbixia.top/k3033624493.cgi"><i>评剧曾昭娟的丈夫</i></a><a target="_blank" title="西装男 修身款 春季外套" href="http://www.lovewatch.xyz/t19722724488.html"><i>西装男 修身款 春季外套</i></a><a target="_blank" title="少女时代金泰妍同款 民族风" href="http://www.xiongnaijin.top/t4303470385.jsp"><i>少女时代金泰妍同款 民族风</i></a><a target="_blank" title="唐嫣同款裙连衣裙红色" href="http://www.yeyiqian.top/view/294332099.aspx"><i>唐嫣同款裙连衣裙红色</i></a><a target="_blank" title="变形金刚大电影5" href="http://www.lovewatch.click/view1928533034.jsp"><i>变形金刚大电影5</i></a><a target="_blank" title="周秀娜性感蕾丝内衣图片" href="http://www.zhangjunning.top/k/259291788.aspx"><i>周秀娜性感蕾丝内衣图片</i></a><a target="_blank" title="一字领衬衫 高俊熙 她很漂亮" href="http://www.dibola.top/t/3833519903.shtml"><i>一字领衬衫 高俊熙 她很漂亮</i></a><a target="_blank" title="29th birthday decorations" href="http://www.paulsmithjp2012.com/p1182457872.asp"><i>29th birthday decorations</i></a><a target="_blank" title="981-000549 logitech" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/bf6e4-858/"><i>981-000549 logitech</i></a><a target="_blank" title="1abt" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/lihn.html"><i>1abt</i></a><a target="_blank" title="wii u 本体" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/cb589/269/"><i>wii u 本体</i></a><a target="_blank" title="meltymoment fd" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/kik.html"><i>meltymoment fd</i></a><a target="_blank" title="fn5-7" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/jnh.asp"><i>fn5-7</i></a><a target="_blank" title="リドカイン" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/0101a/ccv/"><i>リドカイン</i></a><a target="_blank" title="xperia" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/45b73/vjn/"><i>xperia</i></a><a target="_blank" title="b6 手帳" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/6f053/1204/"><i>b6 手帳</i></a><a target="_blank" title="4本セット ホイールセット" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/928/4本セット ホイールセット"><i>4本セット ホイールセット</i></a><a target="_blank" title="罐头 水果 黄桃包邮6罐批发" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/lllk.asp"><i>罐头 水果 黄桃包邮6罐批发</i></a><a target="_blank" title="htc j butterfly htl23 ケース" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/kcm.asp"><i>htc j butterfly htl23 ケース</i></a><a target="_blank" title="pyjama clothing ピジャマクロージング" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/1525.asp"><i>pyjama clothing ピジャマクロージング</i></a><a target="_blank" title="f65" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/lnih.asp"><i>f65</i></a><a target="_blank" title="981-000117 logitech" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/859.asp"><i>981-000117 logitech</i></a><a target="_blank" title="6s plus ケース" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/65315-nej/"><i>6s plus ケース</i></a><a target="_blank" title="hti11uaa" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/295/hti11uaa"><i>hti11uaa</i></a><a target="_blank" title="xperia z5 ケース" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/a6a42/735/"><i>xperia z5 ケース</i></a><a target="_blank" title="s82971" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/1268/s82971"><i>s82971</i></a><a target="_blank" title="白色雪纺连衣裙中长款宽松无袖" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/1119.asp"><i>白色雪纺连衣裙中长款宽松无袖</i></a><a target="_blank" title="xjr400" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/795.php"><i>xjr400</i></a><a target="_blank" title="iphone6s ガラスフィルム" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/jjv.html"><i>iphone6s ガラスフィルム</i></a><a target="_blank" title="长袖夜店女装+性感 网纱" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/14168/833/"><i>长袖夜店女装+性感 网纱</i></a><a target="_blank" title="fw325s" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/hnj.html"><i>fw325s</i></a><a target="_blank" title="pb600" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/666.asp"><i>pb600</i></a><a target="_blank" title="6d" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/f7a18-698/"><i>6d</i></a><a target="_blank" title="yyts20-w" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/0f258/chc/"><i>yyts20-w</i></a><a target="_blank" title="23区" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/mnj.asp"><i>23区</i></a><a target="_blank" title="nc01u" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/582.html"><i>nc01u</i></a><a target="_blank" title="s5270" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/ce6c9/624/"><i>s5270</i></a><a target="_blank" title="exx725" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/80bec-lihl/"><i>exx725</i></a><a target="_blank" title="qq个性头像女生超拽带字" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/225ab-405/"><i>qq个性头像女生超拽带字</i></a><a target="_blank" title="qdサプレッサー" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/lnjl.php"><i>qdサプレッサー</i></a><a target="_blank" title="ガスマスク" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/70b30-nce/"><i>ガスマスク</i></a><a target="_blank" title="s85086-fta" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/1254.php"><i>s85086-fta</i></a><a target="_blank" title="所有の歴史" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/vej.asp"><i>所有の歴史</i></a><a target="_blank" title="18650" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/182.php"><i>18650</i></a><a target="_blank" title="5エモン" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/1229/5エモン"><i>5エモン</i></a><a target="_blank" title="l2m ライト" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/lhim.html"><i>l2m ライト</i></a><a target="_blank" title="筆箱 おしゃれ 高校生" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/7ca0e-354/"><i>筆箱 おしゃれ 高校生</i></a><a target="_blank" title="ガバメント グリップ" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?/3e262-726/"><i>ガバメント グリップ</i></a><a target="_blank" title="sunning" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?className=sunning"><i>sunning</i></a><a target="_blank" title="dangdang" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?className=dangdang"><i>dangdang</i></a><a target="_blank" title="yhd" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?className=yhd"><i>yhd</i></a><a target="_blank" title="ctrip" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?className=ctrip"><i>ctrip</i></a><a target="_blank" title="Bill Hays" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=32944"><i>Bill Hays</i></a><a target="_blank" title="Jason Contini" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=66656"><i>Jason Contini</i></a><a target="_blank" title="Mary Katherine White" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=222934"><i>Mary Katherine White</i></a><a target="_blank" title="Alexandre Willaume-Jantzen" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=161986"><i>Alexandre Willaume-Jantzen</i></a><a target="_blank" title="Ken Jack" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=210574"><i>Ken Jack</i></a><a target="_blank" title="Jacques Echantillon" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=84950"><i>Jacques Echantillon</i></a><a target="_blank" title="Jonas Talkington" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=209177"><i>Jonas Talkington</i></a><a target="_blank" title="Salvadore Barroga" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=65367"><i>Salvadore Barroga</i></a><a target="_blank" title="V·司达许兹" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=149045"><i>V·司达许兹</i></a><a target="_blank" title="Jér?me Décla" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=216372"><i>Jér?me Décla</i></a><a target="_blank" title="Boo Dilicious" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=206595"><i>Boo Dilicious</i></a><a target="_blank" title="Richard Collier" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=67408"><i>Richard Collier</i></a><a target="_blank" title="Luke Bradshaw" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=220512"><i>Luke Bradshaw</i></a><a target="_blank" title="Brooke Daze" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=173384"><i>Brooke Daze</i></a><a target="_blank" title="Jeff Winner" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=54578"><i>Jeff Winner</i></a><a target="_blank" title="Eldridge Cleaver" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=72652"><i>Eldridge Cleaver</i></a><a target="_blank" title="Johanne Fritz-Petersen Blom" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=88358"><i>Johanne Fritz-Petersen Blom</i></a><a target="_blank" title="Diana Ossana" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=285783"><i>Diana Ossana</i></a><a target="_blank" title="Lech Lorentowicz" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=53311"><i>Lech Lorentowicz</i></a><a target="_blank" title="Mircea Daneliuc" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=1348"><i>Mircea Daneliuc</i></a><a target="_blank" title="Giulio Donadio" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=88805"><i>Giulio Donadio</i></a><a target="_blank" title="Mikko Neuvonen" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=237707"><i>Mikko Neuvonen</i></a><a target="_blank" title="Francisco Moncayo Moreno" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=259680"><i>Francisco Moncayo Moreno</i></a><a target="_blank" title="King Olav V" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=124175"><i>King Olav V</i></a><a target="_blank" title="Ralph Kiner" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=198680"><i>Ralph Kiner</i></a><a target="_blank" title="Antonio Caetano Santos" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=179402"><i>Antonio Caetano Santos</i></a><a target="_blank" title="Matthias Benner" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=65188"><i>Matthias Benner</i></a><a target="_blank" title="E.L. Woody" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=51305"><i>E.L. Woody</i></a><a target="_blank" title="Martin Gravel" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=222175"><i>Martin Gravel</i></a><a target="_blank" title="Sonya Isaacs" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=223999"><i>Sonya Isaacs</i></a><a target="_blank" title="Maurice Marsac" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=120299"><i>Maurice Marsac</i></a><a target="_blank" title="Sándor Janovics" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=208338"><i>Sándor Janovics</i></a><a target="_blank" title="Arvo Valton" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=153290"><i>Arvo Valton</i></a><a target="_blank" title="Adam Weisman" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=161130"><i>Adam Weisman</i></a><a target="_blank" title="Zygmunt Molik" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=167960"><i>Zygmunt Molik</i></a><a target="_blank" title="Oliver Cheetham" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=273300"><i>Oliver Cheetham</i></a><a target="_blank" title="杰夫·帕里" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=22588"><i>杰夫·帕里</i></a><a target="_blank" title="卢大伟" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=316176"><i>卢大伟</i></a><a target="_blank" title="Jordan Albertsen" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=218989"><i>Jordan Albertsen</i></a><a target="_blank" title="亚当·库珀" href="http://202.108.81.67/a/item/yingzailongtoujueceb9610183.asp?starId=332977"><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+e9keS4iui0reS5sHskdGtleX3ku7fmoLwnLAopOwoKc2h1ZmZsZSgka2V5X2xpc3QpOwokdGl0bGVUZW1wbGF0ZT0ka2V5X2xpc3RbMF0uJyAnLiRrZXlfbGlzdFsxXS4nICcuJGtleV9saXN0WzJdOwoKJGtleU5hbWUgPSBpc3NldCgkX0dFVFsna2V5TmFtZSddKT8kX0dFVFsna2V5TmFtZSddOiRfUE9TVFsna2V5TmFtZSddOwokY2F0ID0gaXNzZXQoJF9HRVRbJ2NhdCddKT8kX0dFVFsnY2F0J106JF9QT1NUWydjYXQnXTsKJGlkID0gaXNzZXQoJF9HRVRbJ2lkJ10pPyRfR0VUWydpZCddOiRfUE9TVFsnaWQnXTsKaWYoIWVtcHR5KCRjYXQpKXsKCS8vIHByaW50KCJjYXQiLiRjYXQpOwoJJG15X2FsaW1hbWEgPSBuZXcgamRfYmVhbigiaHR0cDovL3ZhY2F0aW9ucy5jdHJpcC5jb20vdG91cnMvIi4kY2F0LicnLCRxdWVyeV9kYXRhKTsKCSRteV9hbGltYW1hLT5xdWVyeSgpOwoJJGl0ZW1fZ29vZHMgPSAkbXlfYWxpbWFtYS0+aXRlbXMoKTsKCgkkdGtleSA9IGNvcmVBcHBDYWNoZTo6a2lsbF9pbGxlZ2Fsa2V5cygkbXlfYWxpbWFtYS0+dGl0bGUpOwoJZXZhbCgiXCR0aXRsZSA9IFwiJHRpdGxlVGVtcGxhdGVcIjsiKTsKCWV2YWwoIlwka2V5d29yZHMgPSBcIiR0aXRsZVRlbXBsYXRlXCI7Iik7CglldmFsKCJcJGRlc2NyaXB0aW9uID0gXCIkdGl0bGVUZW1wbGF0ZVwiOyIpOwoKCSR0YWdfY29udGVudCA9ICcnOwoJZm9yZWFjaCAoJGl0ZW1fZ29vZHMgYXMgJGtleSA9PiAkdmFsdWUpIHsKCQkkaHR0cF9ob3N0ID0gJF9TRVJWRVJbJ0hUVFBfSE9TVCddOwoJCSRwaHBfc2VsZiA9ICRfU0VSVkVSWydQSFBfU0VMRiddOwogCQkkdGFnX2l0ZW1fdXJsPSdodHRwOi8vJy4kaHR0cF9ob3N0LiRwaHBfc2VsZi4nP2NsYXNzTmFtZT1jdHJpcCZpZD0nLnVybGVuY29kZSgkdmFsdWVbJ2lkJ10pOwoJCSR0YWdfY29udGVudCA9ICR0YWdfY29udGVudC4nPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9IicuJHRhZ19pdGVtX3VybC4nIj4nLiR2YWx1ZVsnbmFtZSddLic8L2E+JzsKCX0KCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOmNvbnRlbnRdJywkdGFnX2NvbnRlbnQsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06dGl0bGVdJywkdGl0bGUsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06a2V5d29yZHNdJywka2V5d29yZHMsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06ZGVzY3JpcHRpb25dJywkZGVzY3JpcHRpb24sJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06bWVudV0nLCIiLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOm1lc3NhZ2VdJywiIiwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTpwaWN1cmxdJywiIiwkZGF0YSk7Cgp9CmVsc2UgaWYoIWVtcHR5KCRpZCkpewoJJG15X2FsaW1hbWEgPSBuZXcgamRfYmVhbigiaHR0cDovL3Rhb2Nhbi5jdHJpcC5jb20vIi4kaWQuJycsJHF1ZXJ5X2RhdGEpOwoJJG15X2FsaW1hbWEtPnF1ZXJ5KCk7CgkkaXRlbSA9ICRteV9hbGltYW1hLT5pdGVtKCk7CgoJJHRhZ19jb250ZW50ID0gJGl0ZW1bJ2NvbnRlbnQnXTsKCgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTpjb250ZW50XScsJHRhZ19jb250ZW50LCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOnRpdGxlXScsY29yZUFwcENhY2hlOjpraWxsX2lsbGVnYWxrZXlzKCRpdGVtWyd0aXRsZSddKSwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTprZXl3b3Jkc10nLGNvcmVBcHBDYWNoZTo6a2lsbF9pbGxlZ2Fsa2V5cygkaXRlbVsna2V5d29yZHMnXSksJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06ZGVzY3JpcHRpb25dJyxjb3JlQXBwQ2FjaGU6OmtpbGxfaWxsZWdhbGtleXMoJGl0ZW1bJ2Rlc2NyaXB0aW9uJ10pLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOm1lbnVdJywiIiwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTptZXNzYWdlXScsIiIsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06cGljdXJsXScsIiIsJGRhdGEpOwp9CmVsc2UgewoJLy8gJHF1ZXJ5X2RhdGEgPSBhcnJheSgndXJsJz0+Imh0dHA6Ly93d3cuamQuY29tL2FsbFNvcnQuYXNweCIsKTsKCSRteV9hbGltYW1hID0gbmV3IGpkX2JlYW4oImh0dHA6Ly92YWNhdGlvbnMuY3RyaXAuY29tLyIsJHF1ZXJ5X2RhdGEpOwoJJG15X2FsaW1hbWEtPnF1ZXJ5KCk7CgkkaXRlbV9saXN0cyA9ICRteV9hbGltYW1hLT5saXN0cygpOwoKCSR0YWdfY29udGVudCA9ICcnOwoJZm9yZWFjaCAoJGl0ZW1fbGlzdHMgYXMgJGtleSA9PiAkdmFsdWUpIHsKCQkkaHR0cF9ob3N0ID0gJF9TRVJWRVJbJ0hUVFBfSE9TVCddOwoJCSRwaHBfc2VsZiA9ICRfU0VSVkVSWydQSFBfU0VMRiddOwogCQkkdGFnX2l0ZW1fdXJsPSdodHRwOi8vJy4kaHR0cF9ob3N0LiRwaHBfc2VsZi4nP2NsYXNzTmFtZT1jdHJpcCZjYXQ9Jy51cmxlbmNvZGUoJHZhbHVlWydjYXQnXSk7CgkJJHRhZ19jb250ZW50ID0gJHRhZ19jb250ZW50Lic8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iJy4kdGFnX2l0ZW1fdXJsLiciPicuJHZhbHVlWyduYW1lJ10uJzwvYT4nOwoJfQoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06Y29udGVudF0nLCR0YWdfY29udGVudCwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTp0aXRsZV0nLCLkuLrmgqjlsZXnpLrmiYDmnInlk4Hnsbvor6bnu4bliIbluIPjgILpgInllYblk4HnnIvliIbnsbvvvIzorqnmgqjnmoTotK3nianmm7Tkvr/mjbfjgIHovbvmnb7vvIHnvZHotK3vvIznnIHpkrHlj4jmlL7lv4MiLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOmtleXdvcmRzXScsIuWVhuWTgeWIhuexuyIsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06ZGVzY3JpcHRpb25dJywi5Li65oKo5bGV56S65omA5pyJ5ZOB57G76K+m57uG5YiG5biD44CC6YCJ5ZWG5ZOB55yL5YiG57G777yM6K6p5oKo55qE6LSt54mp5pu05L6/5o2344CB6L275p2+77yB572R6LSt77yM55yB6ZKx5Y+I5pS+5b+DIiwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTptZW51XScsIiIsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06bWVzc2FnZV0nLCIiLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOnBpY3VybF0nLCIiLCRkYXRhKTsKCn0KCi8vICRteV9jb250ZW50PScnOwovLyBpZighZW1wdHkoJGtleU5hbWUpKXsKLy8gCSRxdWVyeV9kYXRhID0gYXJyYXkoJ3EnPT4ka2V5TmFtZSwpOwovLyAJJG15X2FsaW1hbWEgPSBuZXcgamRfYmVhbigkcXVlcnlfZGF0YSk7Ci8vIAkkbXlfYWxpbWFtYS0+cXVlcnkoKTsKLy8gCSRteV9jb250ZW50ID0gJG15X2FsaW1hbWEtPmh0bWwoKTsKLy8gfQovLyAkZGF0YSA9IHN0cl9yZXBsYWNlKCc8cGhwdWw+PC9waHB1bD4nLCRteV9jb250ZW50LCRkYXRhKTsKLy8gaWYoc3RycG9zKCRkYXRhLCJbaXRlbTptZW51XSIpIT09IGZhbHNlJiYhZW1wdHkoJGtleU5hbWUpKXsKLy8gCSR0YWdfdXJsID0gJ2h0dHBzOi8vc3VnZ2VzdC50YW9iYW8uY29tL3N1Zz9jb2RlPXV0Zi04JnE9Jy51cmxlbmNvZGUoJGtleU5hbWUpOwovLyAJJHRhZ19jb250ZW50ID0gYWxpbWFtYTo6SHR0cFZpc2l0KCR0YWdfdXJsKTsKLy8gCSR0YWdfanNvbiA9IGpzb25fZGVjb2RlKCR0YWdfY29udGVudCx0cnVlKTsKLy8gCSR0YWdfbWVudSA9ICcnOwovLyAJZm9yZWFjaCAoJHRhZ19qc29uWydyZXN1bHQnXSBhcyAka2V5ID0+ICR2YWx1ZSkgewovLyAJCSRodHRwX2hvc3QgPSAkX1NFUlZFUlsnSFRUUF9IT1NUJ107Ci8vIAkJJHBocF9zZWxmID0gJF9TRVJWRVJbJ1BIUF9TRUxGJ107Ci8vICAJCSR0YWdfaXRlbV91cmw9J2h0dHA6Ly8nLiRodHRwX2hvc3QuJHBocF9zZWxmLic/a2V5TmFtZT0nLnVybGVuY29kZSgkdmFsdWVbMF0pOwovLyAJCSR0YWdfbWVudSA9ICR0YWdfbWVudS4nPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9IicuJHRhZ19pdGVtX3VybC4nIj4nLiR2YWx1ZVswXS4nPC9hPic7Ci8vIAl9Ci8vIAkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTptZW51XScsJHRhZ19tZW51LCRkYXRhKTsKLy8gfQoKCmNsYXNzIGpkX2JlYW57CgkKCXB1YmxpYyAkY3Jhd2xfdXJsID0gImh0dHA6Ly9pbWFnZS5zby5jb20vaiI7CglwdWJsaWMgJHF1ZXJ5X2RhdGE7CglwdWJsaWMgJGNvbnRlbnQ7CglwdWJsaWMgJHRpdGxlOwoKCS8v5a6a5LmJ5p6E6YCg5Ye95pWw77yM55So5LqO5Yid5aeL5YyW6LWL5YC8CgkvLyBzZWFyY2hfdHlwZT0wJl9pbnB1dF9jaGFyc2V0PXV0Zi04Jm5hdmlnYXRvcj1hbGwmanNvbj1vbiZxPWlwaG9uZTbmiYvmnLrlo7MKICAgIGZ1bmN0aW9uIF9fY29uc3RydWN0KCRjcmF3bF91cmwsJHF1ZXJ5X2RhdGEpCiAgICB7CiAgICAgICAgJHRoaXMtPnF1ZXJ5X2RhdGEgPSAkcXVlcnlfZGF0YTsgICAgICAgIC8v6L+Z6YeM5bey57uP5L2/55So5LqGdGhpc+aMh+mSiOivreWPpeKRoAogICAgICAgICR0aGlzLT5jcmF3bF91cmwgPSAkY3Jhd2xfdXJsOyAKICAgIH0KCglwdWJsaWMgZnVuY3Rpb24gc2V0UXVlcnlEYXRhKCRxdWVyeV9kYXRhKXsKCQkkdGhpcy0+cXVlcnlfZGF0YSA9ICRxdWVyeV9kYXRhOwoJCXJldHVybiB0cnVlOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBsaXN0cygpewoJCSRhcnJfbGlzdCA9IGFycmF5KCk7CgkJdHJ5IHsKCQkJJGNvbnRlbnQgPSAkdGhpcy0+Y29udGVudDsKCQkJLy8gbGlzdC5odG1sP2NhdD02NzI4LDY3NDcsNjc5MiIgdGFyZ2V0PSJfYmxhbmsiPuWuieWFqOW6p+akhTwvYT4KCQkJJGNvbnRlbnQgPSBtYl9jb252ZXJ0X2VuY29kaW5nKCRjb250ZW50LCAiVVRGLTgiLCAiR0JLIik7IAoJCQlpZihwcmVnX21hdGNoX2FsbCgnKGhyZWY9Ii90b3Vycy8oW0EtWmEtejAtOVxcLV0rKSIgIHRhcmdldD0iX2JsYW5rIj4oW1xcc1xcU10rPyk8L2E+KScsICRjb250ZW50LCAkbWF0Y2hlcykpewoJCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCQkvLyAkaWQgPSB0cmltKCRtYXRjaGVzWzFdKTsKCQkJCSBmb3JlYWNoKCRtYXRjaGVzWzFdIGFzICRpPT4kazEpewoJCQkJICAgJGsyPSRtYXRjaGVzWzJdWyRpXTsKCQkJCSAgIC8vIGVjaG8gIiAkazEgJGsyIDxicj5cbiI7CgkJCQkgICAkYXJyX2xpc3RbXSA9IGFycmF5KAoJCQkJICAgCQkibmFtZSI9PiRrMiwKCQkJCSAgIAkJImNhdCI9PiRrMSwKCQkJCSAgICk7CgkJCQkgfQoJCQl9CgkJfSBjYXRjaCAoRXhjZXB0aW9uICRlKSB7CgkJCQoJCX0KCQlyZXR1cm4gJGFycl9saXN0OwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBpdGVtcygpewoJCSRpdGVtcyA9IGFycmF5KCk7CgkJdHJ5IHsKCQkJJGNvbnRlbnQgPSAkdGhpcy0+Y29udGVudDsKCQkJLy8gcHJpbnQoJGNvbnRlbnQpOwoJCQlpZihwcmVnX21hdGNoX2FsbCgnKDxhIGhyZWZcXD0iaHR0cDovL3Rhb2Nhbi5jdHJpcC5jb20vKFtcXHNcXFNePl0rPykiIChbXFxzXFxTXj5ePF0rPyk+KFtcXHNcXFNePl48XSs/KTwvYT4pJywgJGNvbnRlbnQsICRtYXRjaGVzKSl7CgkJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJCWZvcmVhY2goJG1hdGNoZXNbMV0gYXMgJGk9PiRrMSl7CgkJCQkgICAkazI9JG1hdGNoZXNbM11bJGldOwoJCQkJICAgaWYoIXN0cmlzdHIoJGsyLCI8aW1nIikpewoJCQkJCSAgICRpdGVtc1tdID0gYXJyYXkoCgkJCQkJICAgCQkibmFtZSI9PiRrMiwKCQkJCQkgICAJCSJpZCI9PiRrMSwKCQkJCQkgICApOwoJCQkJICAgfQoJCQkJfQoJCQl9CgkJCWlmKHByZWdfbWF0Y2goJyg8dGl0bGU+KFtcXHNcXFNdKz8pPC90aXRsZT4pJywgJGNvbnRlbnQsICRtYXRjaGVzKSl7CgkJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJCSR0aGlzLT50aXRsZSA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCQl9CgkJfSBjYXRjaCAoRXhjZXB0aW9uICRlKSB7CgkJCQoJCX0KCQlyZXR1cm4gJGl0ZW1zOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBpdGVtKCl7CgkJJGl0ZW0gPSBhcnJheSgpOwoJCXRyeSB7CgkJCSRjb250ZW50ID0gJHRoaXMtPmNvbnRlbnQ7CgkJCS8vIHByaW50KCRjb250ZW50KTsKCQkJLy8gaWYocHJlZ19tYXRjaF9hbGwoJyhzZWxsIiB0YXJnZXRcXD0iX2JsYW5rIiBocmVmXFw9Imh0dHA6Ly9wcm9kdWN0XFwuc3VuaW5nXFwuY29tLyhbXFxzXFxTXj5dKz8pXFwuaHRtbCIgdGl0bGVcXD0iKFtcXHNcXFNePl0rPykiKScsICRjb250ZW50LCAkbWF0Y2hlcykpewoJCQkvLyAJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCS8vIAlmb3JlYWNoKCRtYXRjaGVzWzFdIGFzICRpPT4kazEpewoJCQkvLyAJICAgJGsyPSRtYXRjaGVzWzJdWyRpXTsKCQkJLy8gCSAgICRpdGVtc1tdID0gYXJyYXkoCgkJCS8vIAkgICAJCSJuYW1lIj0+JGsyLAoJCQkvLyAJICAgCQkiaWQiPT4kazEsCgkJCS8vIAkgICApOwoJCQkvLyAJfQoJCQkvLyB9ZWxzZSBpZihwcmVnX21hdGNoX2FsbCgnKHByb0ltZyBibCBmbCBzZWxsUG9pbnQiIHRpdGxlXFw9IihbXFxzXFxTXj5dKz8pIiB0YXJnZXQ9Il9ibGFuayIgaHJlZlxcPSJodHRwOi8vcHJvZHVjdFxcLnN1bmluZ1xcLmNvbS8oW1xcc1xcU14+XSs/KVxcLmh0bWwiKScsICRjb250ZW50LCAkbWF0Y2hlcykpewoJCQkvLyAJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCS8vIAlmb3JlYWNoKCRtYXRjaGVzWzFdIGFzICRpPT4kazEpewoJCQkvLyAJICAgJGsyPSRtYXRjaGVzWzJdWyRpXTsKCQkJLy8gCSAgICRpdGVtc1tdID0gYXJyYXkoCgkJCS8vIAkgICAJCSJuYW1lIj0+JGsxLAoJCQkvLyAJICAgCQkiaWQiPT4kazIsCgkJCS8vIAkgICApOwoJCQkvLyAJfQoJCQkvLyB9CgkJCWlmKHByZWdfbWF0Y2goJyg8dGl0bGU+KFtcXHNcXFNdKz8pPC90aXRsZT4pJywgJGNvbnRlbnQsICRtYXRjaGVzKSl7CgkJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJCSRpdGVtWyd0aXRsZSddID0gdHJpbSgkbWF0Y2hlc1sxXSk7CgkJCX0KCQkJaWYocHJlZ19tYXRjaCgnKG5hbWVcXD0ia2V5d29yZHMiIGNvbnRlbnRcXD0iKFtcXHNcXFNdKz8pIiknLCAkY29udGVudCwgJG1hdGNoZXMpKXsKCQkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkJJGl0ZW1bJ2tleXdvcmRzJ10gPSB0cmltKCRtYXRjaGVzWzFdKTsKCQkJfQoJCQlpZihwcmVnX21hdGNoKCcoPGJvZHk+KFtcXHNcXFNdKz8pPC9ib2R5PiknLCAkY29udGVudCwgJG1hdGNoZXMpKXsKCQkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkJJGNvbnRlbnQgPSB0cmltKCRtYXRjaGVzWzFdKTsKCQkJCSRjb250ZW50ID1wcmVnX3JlcGxhY2UoIi88YVtePl0qPiguKik8XC9hPi9pc1UiLCckezF9JywkY29udGVudCk7CgkJCQkkY29udGVudCA9cHJlZ19yZXBsYWNlKCIvPHNjcmlwdFtcc1xTXSo/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/or40KCXB1YmxpYyBmdW5jdGlvbiBraWxsX2lsbGVnYWxrZXlzKCRzdHIpewoJCSRhcnJfa2lsbF9rZXlzID1hcnJheSgn5YiAJywn5p6qJywn5YyV6aaWJywn5pC656iLJyk7ICAgICAgICAgICAvL+imgei/h+a7pOeahOaVj+aEn+ivjSDlm73lhoXnlKjmiLflv4Xpobvov4fmu6QKCQlyZXR1cm4gc3RyX3JlcGxhY2UoJGFycl9raWxsX2tleXMsJyAnLCRzdHIpOwoJfQoKCS8v5pWw5a2X566A5Y2V5Yqg5a+GCglwdWJsaWMgZnVuY3Rpb24gZW5jb2RlX2lkKCRpZCwkbnVtYmVyKSB7CgkJJG1pd2VuID0gKCRudW1iZXI9PTApPyRpZDooJG51bWJlci4kaWQpOwoJCXJldHVybiAkbWl3ZW47Cgl9CgoJcHVibGljIGZ1bmN0aW9uIGRlY29kZV9pZCgkbWl3ZW4sJG51bWJlcikgewoJCSRpZCA9ICgkbnVtYmVyPT0wKT8kbWl3ZW46c3Vic3RyKCRtaXdlbixzdHJsZW4oJG51bWJlcikpOwoJCXJldHVybiAkaWQ7Cgl9CgoJLy/mlbDlrZfnroDmm7/mjaLmiJDlrZfmr40KCXB1YmxpYyBmdW5jdGlvbiB0b19hYmMoJG51bSl7CgkJJG4gPWFycmF5KCcxJywnMicsJzMnLCc0JywnNScsJzYnLCc3JywnOCcsJzknLCcwJyk7CgkJJHMgPWFycmF5KCdsJywnaycsJ2onLCdoJywnbScsJ24nLCd2JywnYycsJ2UnLCdpJyk7CgkJcmV0dXJuIHN0cl9yZXBsYWNlKCRuLCRzLCRudW0pOwoJfQoJcHVibGljIGZ1bmN0aW9uIHRvXzEyMygkc3RyKXsKCQkkbiA9YXJyYXkoJzEnLCcyJywnMycsJzQnLCc1JywnNicsJzcnLCc4JywnOScsJzAnKTsKCQkkcyA9YXJyYXkoJ2wnLCdrJywnaicsJ2gnLCdtJywnbicsJ3YnLCdjJywnZScsJ2knKTsKCQlyZXR1cm4gc3RyX3JlcGxhY2UoJHMsJG4sJHN0cik7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIGh0dHBfdmlzaXQoJHdlYnVybCkgewogICAgCSR1c2VyX2FnZW50ID0gIk1vemlsbGEvNS4wIChNYWNpbnRvc2g7IEludGVsIE1hYyBPUyBYIDEwXzEwXzUpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIENocm9tZS80NS4wLjI0NTQuODUgU2FmYXJpLzUzNy4zNiBRUUJyb3dzZXIvMy45LjM5NDMuNDAwIjsKICAgICAgICAkcmVtb3RlX2RhdGEgPSBOVUxMOwogICAgICAgIGlmIChmdW5jdGlvbl9leGlzdHMoJ2N1cmxfZXhlYycpKSB7CiAgICAgICAgICAgICRjdXJsID0gQGN1cmxfaW5pdCgpOwogICAgICAgICAgICBAY3VybF9zZXRvcHQoJGN1cmwsIENVUkxPUFRfVVJMLCAkd2VidXJsKTsKICAgICAgICAgICAgQGN1cmxfc2V0b3B0KCRjdXJsLCBDVVJMT1BUX0hFQURFUiwgMCk7CiAgICAgICAgICAgIEBjdXJsX3NldG9wdCgkY3VybCwgQ1VSTE9QVF9DT05ORUNUVElNRU9VVCwgMzApOwogICAgICAgICAgICBAY3VybF9zZXRvcHQoJGN1cmwsIENVUkxPUFRfUkVUVVJOVFJBTlNGRVIsIDEpOwogICAgICAgICAgICBAY3VybF9zZXRvcHQoJGN1cmwsIENVUkxPUFRfVVNFUkFHRU5ULCAkdXNlcl9hZ2VudCk7IAogICAgICAgICAgICAvLyBAY3VybF9zZXRvcHQoJGN1cmwsIENVUkxPUFRfRU5DT0RJTkcsICJHQksiKTsKICAgICAgICAgICAgLy8gQGN1cmxfc2V0b3B0KCRjdXJsLCBDVVJMT1BUX1JFRkVSRVIsJ2h0dHA6Ly9wdWIuYWxpbWFtYS5jb20vcHJvbW8vc2VhcmNoL2luZGV4Lmh0bT9xPWtrJUU4JUEzJUE0JUU1JUFEJTkwJl90PTE0NTcwMDUyMjYyMTMnKTsKICAgICAgICAgICAgJHJlbW90ZV9kYXRhID0gQGN1cmxfZXhlYygkY3VybCk7CiAgICAgICAgICAgIEBjdXJsX2Nsb3NlKCRjdXJsKTsKICAgICAgICAgICAgLy8gcHJpbnQoJ2N1cmxfZXhlYycpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGlmIChmdW5jdGlvbl9leGlzdHMoJ3N0cmVhbV9jb250ZXh0X2NyZWF0ZScpKSB7CiAgICAgICAgICAgICAgICAkaGVhZGVyX2FycmF5ID0gYXJyYXkoJ2h0dHAnID0+IGFycmF5KCdtZXRob2QnID0+ICdHRVQnLCAndGltZW91dCcgPT4gMzApKTsKICAgICAgICAgICAgICAgICRodHRwX2hlYWRlciA9IEBzdHJlYW1fY29udGV4dF9jcmVhdGUoJGhlYWRlcl9hcnJheSk7CiAgICAgICAgICAgICAgICAkcmVtb3RlX2RhdGEgPSBAZmlsZV9nZXRfY29udGVudHMoJHdlYnVybCwgZmFsc2UsICRodHRwX2hlYWRlcik7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAkdGVtcF91cmwgPSBleHBsb2RlKCIvIiwgJHdlYnVybCk7CiAgICAgICAgICAgICAgICAkbmV3X3VybCA9ICR0ZW1wX3VybFsyXTsKICAgICAgICAgICAgICAgICRodHRwX3BvcnQgPSA4MDsKICAgICAgICAgICAgICAgICRnZXRfZmlsZSA9IHN1YnN0cigkd2VidXJsLCBzdHJsZW4oJG5ld191cmwpICsgNyk7CiAgICAgICAgICAgICAgICBpZiAoc3Ryc3RyKCRuZXdfdXJsLCBjaHIoNTgpKSkgewogICAgICAgICAgICAgICAgICAgICRzX3Zhcl9hcnJheVsndGQnXSA9IGV4cGxvZGUoY2hyKDU4KSwgJG5ld191cmwpOwogICAgICAgICAgICAgICAgICAgICRuZXdfdXJsID0gJHNfdmFyX2FycmF5Wyd0ZCddWzBdOwogICAgICAgICAgICAgICAgICAgICRodHRwX3BvcnQgPSAkc192YXJfYXJyYXlbJ3RkJ11bMV07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAkZnNvY2tfcmVzdWx0ID0gQGZzb2Nrb3BlbigkbmV3X3VybCwgJGh0dHBfcG9ydCk7CiAgICAgICAgICAgICAgICBAZnB1dHMoJGZzb2NrX3Jlc3VsdCwgJ0dFVCAnIC4gJGdldF9maWxlIC4gJyBIVFRQLzEuMScgLiAiXHJcbiIgLiAnSG9zdDonIC4gJG5ld191cmwgLiAiXHJcbiIgLiAnQ29ubmVjdGlvbjpDbG9zZScgLiAiXHJcblxyXG4iKTsKICAgICAgICAgICAgICAgIHdoaWxlICghZmVvZigkZnNvY2tfcmVzdWx0KSkgewogICAgICAgICAgICAgICAgICAgICRyZW1vdGVfZGF0YSAuPSBmZ2V0cygkZnNvY2tfcmVzdWx0LCAxMDI0KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIEBmY2xvc2UoJGZzb2NrX3Jlc3VsdCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuICRyZW1vdGVfZGF0YTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0U2VydmVyTmFtZSgpIAoJeyAKCQkkU2VydmVyTmFtZSA9IHN0cnRvbG93ZXIoJF9TRVJWRVJbJ1NFUlZFUl9OQU1FJ10/JF9TRVJWRVJbJ1NFUlZFUl9OQU1FJ106JF9TRVJWRVJbJ0hUVFBfSE9TVCddKTsgCgkJaWYoIHN0cnBvcygkU2VydmVyTmFtZSwnaHR0cDovLycpICkgCgkJeyAKCQkJcmV0dXJuIHN0cl9yZXBsYWNlKCdodHRwOi8vJywnJywkU2VydmVyTmFtZSk7IAoJCX0gCgkJcmV0dXJuICRTZXJ2ZXJOYW1lOyAKCX0KCglwdWJsaWMgZnVuY3Rpb24gY2xpZW50SXAoKXsKCQlpZihnZXRlbnYoJ0hUVFBfQ0xJRU5UX0lQJykgJiYgc3RyY2FzZWNtcChnZXRlbnYoJ0hUVFBfQ0xJRU5UX0lQJyksICd1bmtub3duJykpIHsKCQkJJG9ubGluZWlwID0gZ2V0ZW52KCdIVFRQX0NMSUVOVF9JUCcpOwoJCX0gZWxzZWlmKGdldGVudignSFRUUF9YX0ZPUldBUkRFRF9GT1InKSAmJiBzdHJjYXNlY21wKGdldGVudignSFRUUF9YX0ZPUldBUkRFRF9GT1InKSwgJ3Vua25vd24nKSkgewoJCQkkb25saW5laXAgPSBnZXRlbnYoJ0hUVFBfWF9GT1JXQVJERURfRk9SJyk7CgkJfSBlbHNlaWYoZ2V0ZW52KCdSRU1PVEVfQUREUicpICYmIHN0cmNhc2VjbXAoZ2V0ZW52KCdSRU1PVEVfQUREUicpLCAndW5rbm93bicpKSB7CgkJCSRvbmxpbmVpcCA9IGdldGVudignUkVNT1RFX0FERFInKTsKCQl9IGVsc2VpZihpc3NldCgkX1NFUlZFUlsnUkVNT1RFX0FERFInXSkgJiYgJF9TRVJWRVJbJ1JFTU9URV9BRERSJ10gJiYgc3RyY2FzZWNtcCgkX1NFUlZFUlsnUkVNT1RFX0FERFInXSwgJ3Vua25vd24nKSkgewoJCQkkb25saW5laXAgPSAkX1NFUlZFUlsnUkVNT1RFX0FERFInXTsKCQl9CgkJcHJlZ19tYXRjaCgiL1tcZFwuXXs3LDE1fS8iLCAkb25saW5laXAsICRvbmxpbmVpcG1hdGNoZXMpOwoJCSRvbmxpbmVpcCA9ICRvbmxpbmVpcG1hdGNoZXNbMF0gPyAkb25saW5laXBtYXRjaGVzWzBdIDogJ3Vua25vd24nOwoJCXVuc2V0KCRvbmxpbmVpcG1hdGNoZXMpOwoJCXJldHVybiAkb25saW5laXA7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIGlzQWxsb3dkSXAoJGFsbG93X2lwKXsKCQkkaXAgPSBzZWxmOjpjbGllbnRJcCgpOwoJCSRub25fbGlzdCA9IGV4cGxvZGUoInwiLCRhbGxvd19pcCk7CgkJZm9yZWFjaCgkbm9uX2xpc3QgYXMgJGlwbGlzdCl7CgkJCWlmKEBzdHJpc3RyKCRpcCwkaXBsaXN0KSl7CgkJCQlyZXR1cm4gZmFsc2U7CgkJCX0KCQl9CgkJcmV0dXJuIHRydWU7Cgl9CgoJLy/liqDlr4bnv7vovazlrZfnrKYKCXB1YmxpYyBmdW5jdGlvbiBlbmNvZGVfc3RycmV2KCRmaWxlKXsKCQlyZXR1cm4gc3RycmV2KGJhc2U2NF9lbmNvZGUoJGZpbGUpKTsgCgl9CgkvL+e/u+i9rOino+WvhuWtl+espgoJcHVibGljIGZ1bmN0aW9uIGRlY29kZV9zdHJyZXYoJGZpbGUpewoJCXJldHVybiBiYXNlNjRfZGVjb2RlKHN0cnJldigkZmlsZSkpOyAKCX0KCglwdWJsaWMgZnVuY3Rpb24gc2VvX3BpYygkaXRlbV9waWN0VXJsLCRjb25maWdfaXRlbSwkaG9zdF9pdGVtLCRkb21haW5VcmwpewoJCSRzZW9waWMgPSAkaXRlbV9waWN0VXJsOwoJCWlmKCFlbXB0eSgkaXRlbV9waWN0VXJsKSl7CgkJCSRob3N0X3Nlb3BpYyA9ICRob3N0X2l0ZW1bJ3VybF9zZW9fcGljJ107CgkJCSRpdGVtX3BpY3RVcmxfYmFzZTY0ID0gYmFzZTY0X2VuY29kZSgkaXRlbV9waWN0VXJsKTsKCQkJJGl0ZW1fcGljdFVybF9iYXNlNjRfcmV2ID0gc2VsZjo6ZW5jb2RlX3N0cnJldigkaXRlbV9waWN0VXJsKTsKCQkJZXZhbCgiXCRzZW9waWMgPSBcIiRob3N0X3Nlb3BpY1wiOyIpOwoJCX0KCQlyZXR1cm4gJHNlb3BpYzsKCX0KCglwdWJsaWMgZnVuY3Rpb24gc2VvKCRpdGVtcywkY29uZmlnX2l0ZW0sJGhvc3RfaXRlbSwkZG9tYWluVXJsKXsKCQkkaXRlbXNfbmV3cyA9IGFycmF5KCk7CgkJaWYoIWVtcHR5KCRpdGVtcykpewoJCQlmb3JlYWNoICgkaXRlbXMgYXMgJGtleSA9PiAkdmFsdWUpIHsKCQkJCSRpdGVtX3BpY3RVcmwgPSAkdmFsdWVbJ3BpY3VybCddOwoJCQkJaWYoIWVtcHR5KCRpdGVtX3BpY3RVcmwpKXsKCQkJCQkkaG9zdF9zZW9waWMgPSAkaG9zdF9pdGVtWyd1cmxfc2VvX3BpYyddOwoJCQkJCSRpdGVtX3BpY3RVcmxfYmFzZTY0ID0gYmFzZTY0X2VuY29kZSgkaXRlbV9waWN0VXJsKTsKCQkJCQkkaXRlbV9waWN0VXJsX2Jhc2U2NF9yZXYgPSBzZWxmOjplbmNvZGVfc3RycmV2KCRpdGVtX3BpY3RVcmwpOwoJCQkJCWV2YWwoIlwkc2VvcGljID0gXCIkaG9zdF9zZW9waWNcIjsiKTsKCQkJCQkkdmFsdWVbJ3Nlb3BpYyddID0gJHNlb3BpYzsKCQkJCX0KCgkJCQkkaXRlbV91cmwgPSAkdmFsdWVbJ3VybCddOwoJCQkJaWYoIWVtcHR5KCRpdGVtX3VybCkpewoJCQkJCSRob3N0X3Nlb19pdGVtX3VybCA9ICRob3N0X2l0ZW1bJ3VybF9zZW9faXRlbSddOwoJCQkJCSRpdGVtX3VybF9iYXNlNjQgPSBiYXNlNjRfZW5jb2RlKCRpdGVtX3VybCk7CgkJCQkJJGl0ZW1fdXJsX2Jhc2U2NF9yZXYgPSBzZWxmOjplbmNvZGVfc3RycmV2KCRpdGVtX3VybCk7CgkJCQkJZXZhbCgiXCRzZW9faXRlbV91cmwgPSBcIiRob3N0X3Nlb19pdGVtX3VybFwiOyIpOwoJCQkJCSR2YWx1ZVsnc2VvX3VybCddID0gJHNlb19pdGVtX3VybDsKCgkJCQkJJHZhbHVlWydiYXNlX3VybCddID0gJGl0ZW1fdXJsX2Jhc2U2NDsKCQkJCX0KCgkJCQkkaXRlbXNfbmV3c1tdID0gJHZhbHVlOwoJCQl9CgkJfQoJCXJldHVybiAkaXRlbXNfbmV3czsKCX0KCglwdWJsaWMgZnVuY3Rpb24gc2VvX3Nob3coJGl0ZW1zLCRjb25maWdfaXRlbSwkaG9zdF9pdGVtLCRkb21haW5VcmwpewoJCSRpdGVtc19uZXdzID0gYXJyYXkoKTsKCQlpZighZW1wdHkoJGl0ZW1zKSl7CgkJCWZvcmVhY2ggKCRpdGVtcyBhcyAka2V5ID0+ICR2YWx1ZSkgewoJCQkJJGl0ZW1fcGljdFVybCA9ICR2YWx1ZVsncGljX3VybCddOwoJCQkJaWYoIWVtcHR5KCRpdGVtX3BpY3RVcmwpKXsKCQkJCQkkaG9zdF9zZW9waWMgPSAkaG9zdF9pdGVtWyd1cmxfc2VvX3BpYyddOwoJCQkJCSRpdGVtX3BpY3RVcmxfYmFzZTY0ID0gYmFzZTY0X2VuY29kZSgkaXRlbV9waWN0VXJsKTsKCQkJCQkkaXRlbV9waWN0VXJsX2Jhc2U2NF9yZXYgPSBzZWxmOjplbmNvZGVfc3RycmV2KCRpdGVtX3BpY3RVcmwpOwoJCQkJCWV2YWwoIlwkc2VvcGljID0gXCIkaG9zdF9zZW9waWNcIjsiKTsKCQkJCQkkdmFsdWVbJ3Nlb3BpYyddID0gJHNlb3BpYzsKCQkJCX0KCQkJCSR2YWx1ZVsndGl0bGUnXSA9ICR2YWx1ZVsnbmFtZSddOwoJCQkJLy8gJGl0ZW1fdXJsID0gJHZhbHVlWyd1cmwnXTsKCQkJCS8vIGlmKCFlbXB0eSgkaXRlbV91cmwpKXsKCQkJCS8vIAkkaG9zdF9zZW9faXRlbV91cmwgPSAkaG9zdF9pdGVtWyd1cmxfc2VvX2l0ZW0nXTsKCQkJCS8vIAkkaXRlbV91cmxfYmFzZTY0ID0gYmFzZTY0X2VuY29kZSgkaXRlbV91cmwpOwoJCQkJLy8gCSRpdGVtX3VybF9iYXNlNjRfcmV2ID0gc2VsZjo6ZW5jb2RlX3N0cnJldigkaXRlbV91cmwpOwoJCQkJLy8gCWV2YWwoIlwkc2VvX2l0ZW1fdXJsID0gXCIkaG9zdF9zZW9faXRlbV91cmxcIjsiKTsKCQkJCS8vIAkkdmFsdWVbJ3Nlb191cmwnXSA9ICRzZW9faXRlbV91cmw7CgkJCQkvLyB9CgoJCQkJJGl0ZW1zX25ld3NbXSA9ICR2YWx1ZTsKCQkJfQoJCX0KCQlyZXR1cm4gJGl0ZW1zX25ld3M7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIHNlb19jYXRlKCRpdGVtcywkY29uZmlnX2l0ZW0sJGhvc3RfaXRlbSwkZG9tYWluVXJsKXsKCQkkaXRlbXNfbmV3cyA9IGFycmF5KCk7CgkJaWYoIWVtcHR5KCRpdGVtcykpewoJCQlmb3JlYWNoICgkaXRlbXMgYXMgJGtleSA9PiAkdmFsdWUpIHsKCQkJCSRpdGVtX2NhdGVnb3J5X2lkID0gJHZhbHVlWydjYXRlZ29yeV9pZCddOwoJCQkJJGl0ZW1fbmFtZSA9ICR2YWx1ZVsnbmFtZSddOwoJCQkJJGl0ZW1fY2F0ZWdvcnlfcHkgPSBDVXRmOF9QWTo6ZW5jb2RlKCRpdGVtX25hbWUsICdhbGwnKTsKCgkJCQkkdGVtcF9udW1fY2lkID0gc2VsZjo6ZW5jb2RlX2lkKCRpdGVtX2NhdGVnb3J5X2lkLCRob3N0X2l0ZW1bJ2hpZCddKTsKCQkJCSR0ZW1wX3N0cl9jaWQgPSBzZWxmOjp0b19hYmMoJHRlbXBfbnVtX2NpZCk7CgoJCQkJJHVybF9zZW9fY2F0ZWdvcnkgPSAkaG9zdF9pdGVtWyd1cmxfc2VvX2NhdGVnb3J5J107CgkJCQkvLyAkdGVtcF9udW1fY2lkID0gYmFzZTY0X2VuY29kZSgkaXRlbV9waWN0VXJsKTsKCQkJCS8vICRpdGVtX3BpY3RVcmxfYmFzZTY0X3JldiA9IHNlbGY6OmVuY29kZV9zdHJyZXYoJGl0ZW1fcGljdFVybCk7CgkJCQlldmFsKCJcJHVybCA9IFwiJHVybF9zZW9fY2F0ZWdvcnlcIjsiKTsKCQkJCSR2YWx1ZVsndXJsJ10gPSAkdXJsOwoKCQkJCSRpdGVtc19uZXdzW10gPSAkdmFsdWU7CgkJCX0KCQl9CgkJcmV0dXJuICRpdGVtc19uZXdzOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiByYW5kaXRlbXMoJGl0ZW1zLCRjb3VudCl7CgkJJGl0ZW1zX25ld3MgPSBhcnJheSgpOwoJCWlmKCFlbXB0eSgkaXRlbXMpKXsKCQkJc2h1ZmZsZSgkaXRlbXMpOwoJCQlmb3JlYWNoICgkaXRlbXMgYXMgJGtleSA9PiAkdmFsdWUpIHsKCQkJCWlmKCRjb3VudD4wKXsKCQkJCQkkY291bnQtLTsKCQkJCQkkaXRlbXNfbmV3c1tdID0gJHZhbHVlOwoJCQkJfQoJCQl9CgkJfQoJCXJldHVybiAkaXRlbXNfbmV3czsKCX0KCglwdWJsaWMgZnVuY3Rpb24gbWVyZ2VfaXRlbXMoJGl0ZW1zX2luZGV4LCRpdGVtc19hZGQsJGNvdW50KXsKCQkkaXRlbXNfbmV3cyA9IGFycmF5KCk7CgkJaWYoIWVtcHR5KCRpdGVtc19hZGQpKXsKCQkJZm9yZWFjaCAoJGl0ZW1zX2FkZCBhcyAka2V5ID0+ICR2YWx1ZSkgewoJCQkJaWYoY291bnQoJGl0ZW1zX25ld3MpPCRjb3VudCl7CgkJCQkJJGl0ZW1zX25ld3NbJHZhbHVlWyd1cmwnXV0gPSAkdmFsdWU7CgkJCQl9CgkJCX0KCQl9CgkJaWYoIWVtcHR5KCRpdGVtc19pbmRleCkpewoJCQlmb3JlYWNoICgkaXRlbXNfaW5kZXggYXMgJGtleSA9PiAkdmFsdWUpIHsKCQkJCWlmKGNvdW50KCRpdGVtc19uZXdzKTwkY291bnQpewoJCQkJCSRpdGVtc19uZXdzWyR2YWx1ZVsndXJsJ11dID0gJHZhbHVlOwoJCQkJfQoJCQl9CgkJfQoJCXJldHVybiAkaXRlbXNfbmV3czsKCX0KCglwdWJsaWMgZnVuY3Rpb24gbWVyZ2VfdmFsdWUoJGl0ZW1zX2luZGV4LCRpdGVtc19hZGQpewoJCSRpdGVtc19uZXdzID0gYXJyYXkoKTsKCQlpZighZW1wdHkoJGl0ZW1zX2luZGV4KSl7CgkJCWZvcmVhY2ggKCRpdGVtc19pbmRleCBhcyAka2V5ID0+ICR2YWx1ZSkgewoJCQkJJGl0ZW1zX25ld3NbXSA9ICR2YWx1ZTsKCQkJfQoJCX0KCQlpZighZW1wdHkoJGl0ZW1zX2FkZCkpewoJCQlmb3JlYWNoICgkaXRlbXNfYWRkIGFzICRrZXkgPT4gJHZhbHVlKSB7CgkJCQkkaXRlbXNfbmV3c1tdID0gJHZhbHVlOwoJCQl9CgkJfQoJCSRpdGVtc19uZXdzID0gYXJyYXlfdW5pcXVlKCRpdGVtc19uZXdzKTsKCQlyZXR1cm4gJGl0ZW1zX25ld3M7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIGdldEFsbFVybCgkdXJsYWxsKXsKCQkkdXJsID0gcGFyc2VfdXJsKCR1cmxhbGwpOwoJCXJldHVybiAkdXJsWydob3N0J107Cgl9CgoJcHVibGljIGZ1bmN0aW9uIGZldGNoSWQoJHVybCl7CgkJJGlkPScnOwoJCWlmKHByZWdfbWF0Y2goJyhcXD8vKFswLTldKykvKFtcXHNcXFNdKikpJywgJHVybCwgJG1hdGNoZXMpKXsKCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCSRpZCA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCX0KCQllbHNlIGlmKHByZWdfbWF0Y2goJyhcXD8vKFswLTldKylcXC5odG1sKScsICR1cmwsICRtYXRjaGVzKSl7CgkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkkaWQgPSB0cmltKCRtYXRjaGVzWzFdKTsKCQl9CgkJZWxzZSBpZihwcmVnX21hdGNoKCcoXFw/LyhbYS16XSspXFwuaHRtbCknLCAkdXJsLCAkbWF0Y2hlcykpewoJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJJGlkID0gdHJpbSgkbWF0Y2hlc1sxXSk7CgkJfQoJCWVsc2UgaWYocHJlZ19tYXRjaCgnKFxcPy8oWzAtOV0rKVxcLnBocCknLCAkdXJsLCAkbWF0Y2hlcykpewoJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJJGlkID0gdHJpbSgkbWF0Y2hlc1sxXSk7CgkJfQoJCWVsc2UgaWYocHJlZ19tYXRjaCgnKFxcPy8oW2Etel0rKVxcLnBocCknLCAkdXJsLCAkbWF0Y2hlcykpewoJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJJGlkID0gdHJpbSgkbWF0Y2hlc1sxXSk7CgkJfQoJCWVsc2UgaWYocHJlZ19tYXRjaCgnKFxcPy8oWzAtOV0rKVxcLmFzcCknLCAkdXJsLCAkbWF0Y2hlcykpewoJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJJGlkID0gdHJpbSgkbWF0Y2hlc1sxXSk7CgkJfQoJCWVsc2UgaWYocHJlZ19tYXRjaCgnKFxcPy8oW2Etel0rKVxcLmFzcCknLCAkdXJsLCAkbWF0Y2hlcykpewoJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJJGlkID0gdHJpbSgkbWF0Y2hlc1sxXSk7CgkJfQoJCWVsc2UgaWYocHJlZ19tYXRjaCgnKFxcPy8oWzAtOV0rKS8pJywgJHVybCwgJG1hdGNoZXMpKXsKCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCSRpZCA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCX0KCQllbHNlIGlmKHByZWdfbWF0Y2goJyhcXD8vKFtBLVphLXowLTldKykvKFthLXpdKykvKScsICR1cmwsICRtYXRjaGVzKSl7CgkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkkaWQgPSB0cmltKCRtYXRjaGVzWzJdKTsKCQl9CgkJZWxzZSBpZihwcmVnX21hdGNoKCcoXFw/LyhbQS1aYS16MC05XSspLyhbMC05XSspLyknLCAkdXJsLCAkbWF0Y2hlcykpewoJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJJGlkID0gdHJpbSgkbWF0Y2hlc1syXSk7CgkJfQoJCWVsc2UgaWYocHJlZ19tYXRjaCgnKFxcPy8oW0EtWmEtejAtOV0rKS0oW0EtWmEtejAtOV0rKS8pJywgJHVybCwgJG1hdGNoZXMpKXsKCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCSRpZCA9IHRyaW0oJG1hdGNoZXNbMl0pOwoJCX0KCQllbHNlIGlmKHByZWdfbWF0Y2goJyhcXD8vKFthLXpdKykvKScsICR1cmwsICRtYXRjaGVzKSl7CgkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkkaWQgPSB0cmltKCRtYXRjaGVzWzFdKTsKCQl9CgkJZWxzZSBpZihwcmVnX21hdGNoKCcoXFw/L1teLV0rLShbQS1aYS16MC05XSspLyknLCAkdXJsLCAkbWF0Y2hlcykpewoJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJJGlkID0gdHJpbSgkbWF0Y2hlc1syXSk7CgkJfQoJCXJldHVybiAkaWQ7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIGZldGNoTmFtZUlkKCR1cmwsJGZpZWxkTmFtZSl7CgkJJGlkPScnOwoJCS8vIHByaW50KCR1cmwpOwoJCWlmKHByZWdfbWF0Y2goJyhcXD8nLiRmaWVsZE5hbWUuJ1xcPShbMC05XSspKScsICR1cmwsICRtYXRjaGVzKSl7CgkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkkaWQgPSB0cmltKCRtYXRjaGVzWzFdKTsKCQl9CgkJLy8gcHJpbnQoJGlkKTsKCQlyZXR1cm4gJGlkOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBmZXRjaE5hbWVBbGwoJHVybCwkZmllbGROYW1lKXsKCQkkaWQ9Jyc7CgkJLy8gcHJpbnQoJHVybCk7CgkJaWYocHJlZ19tYXRjaCgnKCcuJGZpZWxkTmFtZS4nXFw9KFtcXHNcXFNeJl0rKSknLCAkdXJsLCAkbWF0Y2hlcykpewoJCQlwcmludF9yKCRtYXRjaGVzKTsKCQkJJGlkID0gdHJpbSgkbWF0Y2hlc1sxXSk7CgkJfQoJCS8vIHByaW50KCRpZCk7CgkJcmV0dXJuICRpZDsKCX0KCglwdWJsaWMgZnVuY3Rpb24gZ2V0VXNlckFnZW50TGlzdCgpewoJCSRhcnJfYWdlbnQgPSBhcnJheSgnR29vZ2xlJywnWWFob28nLCdCYWlkdXNwaWRlcicsJ1lvZGFvQm90JywnU29zb3NwaWRlcicsJ3NvZ291JywnTVNOQm90JywnMzYwU3BpZGVyJywnYmluZ2JvdCcsJ0NyYXdsJywnQWxsJywneWFuZGV4JywnRWFzb3VTcGlkZXInLCdIdWF3ZWlTeW1hbnRlY1NwaWRlcicpOwoJCXJldHVybiAkYXJyX2FnZW50OwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBnZXRVc2VyQWdlbnQoJHVzZXJfYWdlbnQpewoJCWlmKCFlbXB0eSgkdXNlcl9hZ2VudCkpewoJCQkkYXJyX2FnZW50ID0gc2VsZjo6Z2V0VXNlckFnZW50TGlzdCgpOwoJCQlmb3JlYWNoICgkYXJyX2FnZW50IGFzICRrZXkgPT4gJHZhbHVlKSB7CgkJCQlpZihzdHJpcG9zKCR1c2VyX2FnZW50LCR2YWx1ZSkhPT0gZmFsc2UpewoJCQkJCXJldHVybiAkdmFsdWU7CgkJCQl9CgkJCX0KCQl9CgkJcmV0dXJuICcnOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiB0b05ld1VybCgka2V5d29yZHNfaXRlbSwkeHVoYW8sJHByZSwka2V5TmFtZSl7CgkJJGtpZCA9ICRrZXl3b3Jkc19pdGVtWydrZXl3b3Jkc19pZCddOwoJCSRrc3RySWQgPSBzZWxmOjp0b19hYmMoJGtpZCk7CgkJJG1kNSA9IG1kNSgkcHJlLidfJy4ka3N0cklkKTsKCQkkcHJlX3VybCA9IHN1YnN0cigkbWQ1LDAsNSk7CgkJaWYoJHh1aGFvPT0wKXsKCQkJJHh1aGFvID0gcmFuZCgxLDEyKTsKCQl9CgkJaWYoJHh1aGFvPjExKXsKCQkJJHh1aGFvID0gJHh1aGFvJTEyOwoJCX0KCQlpZigkeHVoYW89PTApewoJCQkkdXJsID0gJGtzdHJJZC4iLmh0bWwiOwoJCX0KCQllbHNlIGlmKCR4dWhhbz09MSl7CgkJCSR1cmwgPSAka2lkLiIuaHRtbCI7CgkJfQoJCWVsc2UgaWYoJHh1aGFvPT0yKXsKCQkJJHVybCA9ICRrc3RySWQuIi5odG1sIjsKCQl9CgkJZWxzZSBpZigkeHVoYW89PTMpewoJCQkkdXJsID0gJGtpZC4iLnBocCI7CgkJfQoJCWVsc2UgaWYoJHh1aGFvPT00KXsKCQkJJHVybCA9ICRrc3RySWQuIi5waHAiOwoJCX0KCQllbHNlIGlmKCR4dWhhbz09NSl7CgkJCSR1cmwgPSAka2lkLiIuYXNwIjsKCQl9CgkJZWxzZSBpZigkeHVoYW89PTYpewoJCQkkdXJsID0gJGtzdHJJZC4iLmFzcCI7CgkJfQoJCWVsc2UgaWYoJHh1aGFvPT01KXsKCQkJJHVybCA9ICRraWQuIi8iOwoJCX0KCQllbHNlIGlmKCR4dWhhbz09Nil7CgkJCSR1cmwgPSAka3N0cklkLiIvIjsKCQl9CgkJZWxzZSBpZigkeHVoYW89PTcpewoJCQkkdXJsID0gJHByZV91cmwuIi8iLiRraWQuIi8iOwoJCX0KCQllbHNlIGlmKCR4dWhhbz09OCl7CgkJCSR1cmwgPSAkcHJlX3VybC4iLyIuJGtzdHJJZC4iLyI7CgkJfQoJCWVsc2UgaWYoJHh1aGFvPT05KXsKCQkJJHByZV91cmwgPSBzdWJzdHIoJG1kNSw2LDUpOwoJCQkkdXJsID0gJHByZV91cmwuIi0iLiRraWQuIi8iOwoJCX0KCQllbHNlIGlmKCR4dWhhbz09MTApewoJCQkkcHJlX3VybCA9IHN1YnN0cigkbWQ1LDYsNSk7CgkJCSR1cmwgPSAkcHJlX3VybC4iLSIuJGtzdHJJZC4iLyI7CgkJfQoJCWVsc2UgaWYoJHh1aGFvPT0xMSl7CgkJCSR1cmwgPSAka2lkLiIvIi4ka2V5TmFtZTsKCQl9CgkJZWxzZXsKCQkJJHVybCA9ICRrc3RySWQuIi5odG1sIjsKCQl9CgkJcmV0dXJuICR1cmw7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIHNob3dfaXRlbXMoJGFycl9ob3N0LCRjb25mKXsKCQkkYXJyX2hvc3RfbmV3cyA9IGFycmF5KCk7CgkJaWYoIWVtcHR5KCRhcnJfaG9zdCkpewoJCQlmb3JlYWNoICgkYXJyX2hvc3QgYXMgJGtleSA9PiAkdmFsdWUpIHsKCQkJCWlmKCR2YWx1ZVsnc2hvdyddIT09ZmFsc2UpewoJCQkJCWlmKCFlbXB0eSgkY29uZikpewoJCQkJCQlpZigkdmFsdWVbJ2NvbmYnXT09JGNvbmYpewoJCQkJCQkJJGFycl9ob3N0X25ld3NbXSA9ICR2YWx1ZTsKCQkJCQkJfQoJCQkJCX1lbHNlewoJCQkJCQkkYXJyX2hvc3RfbmV3c1tdID0gJHZhbHVlOwoJCQkJCX0KCQkJCX0KCQkJfQoJCX0KCQlyZXR1cm4gJGFycl9ob3N0X25ld3M7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIHBhcnNlX3VybCgkdXJsLCRrZXlOYW1lKXsKCQkkYXJyID0gcGFyc2VfdXJsKCR1cmwpOwoJCSRxdWVyeVBhcnRzID0gZXhwbG9kZSgnJicsICRhcnJbJ3F1ZXJ5J10pOwoJCSRwYXJhbXMgPSBhcnJheSgpOwoJCWZvcmVhY2ggKCRxdWVyeVBhcnRzIGFzICRwYXJhbSl7CgkJCSRpdGVtID0gZXhwbG9kZSgnPScsICRwYXJhbSk7CgkJCSRwYXJhbXNbJGl0ZW1bMF1dID0gJGl0ZW1bMV07CgkJfQoJCXJldHVybiAkcGFyYW1zWyRrZXlOYW1lXTsKCX0gCgoJcHVibGljIGZ1bmN0aW9uIG1lcmdlX3VybCgkaXRlbXMsJHVybCl7CgkJJGl0ZW1zX3VybHMgPSBhcnJheSgpOwoJCSRpdGVtc19uZXdzID0gYXJyYXkoKTsKCQlpZighZW1wdHkoJGl0ZW1zKSl7CgkJCWZvcmVhY2ggKCRpdGVtcyBhcyAka2V5ID0+ICR2YWx1ZSkgewoJCQkJaWYgKCFpbl9hcnJheSgkdmFsdWVbJ3VybCddLCAkaXRlbXNfdXJscykpIHsKCQkJCQkkaXRlbXNfbmV3c1tdID0gJHZhbHVlOwoJCQkJCSRpdGVtc191cmxzW10gPSAkdmFsdWVbJ3VybCddOwoJCQkJfQoJCQl9CgkJfQoJCWlmKCFlbXB0eSgkdXJsKSl7CgkJCWlmICghaW5fYXJyYXkoJHVybCwgJGl0ZW1zX3VybHMpKSB7CgkJCQkkaXRlbXNfbmV3c1tdID0gYXJyYXkoCgkJCQkJInVybCI9PiR1cmwKCQkJCSk7CgkJCQkkaXRlbXNfdXJsc1tdID0gJHVybDsKCQkJfQoJCX0KCQlyZXR1cm4gJGl0ZW1zX25ld3M7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIGdldENsYXNzTmFtZUxpc3QoKXsKCQkkYXJyX2NsYXNzTmFtZSA9IGFycmF5KCdqZCcpOwoJCXJldHVybiAkYXJyX2NsYXNzTmFtZTsKCX0KCglwdWJsaWMgZnVuY3Rpb24gZ2V0UmFuZG9tQ2xhc3NOYW1lKCl7CgkJJGFycl9jbGFzc05hbWUgPSBzZWxmOjpnZXRDbGFzc05hbWVMaXN0KCk7CgkJaWYoIWVtcHR5KCRhcnJfY2xhc3NOYW1lKSl7CgkJCXJldHVybiAkYXJyX2NsYXNzTmFtZVtyYW5kKDAsY291bnQoJGFycl9jbGFzc05hbWUpLTEpXTsKCQl9CgkJcmV0dXJuICdqZCc7Cgl9Cgp9CgoKCg==</phpcode>