即使这样我也喜欢你115 即使这样我也喜欢你高清完整版|即使这样我也喜欢你百度云mp4
即使这样我也喜欢你115 即使这样我也喜欢你高清完整版|即使这样我也喜欢你百度云mp4
我们结婚了 宋茜同款孙俪同款红色高跟鞋高跟唐嫣同款女鞋高跟鞋图片sveglia proiezioneakesso versalite女款手提单肩包斜挎小包包黑色韩国代购呢子大衣女唐伯虎画作图片叶玉卿和任达华电影刘若英的歌曲现场直播西裤男 直筒 青年 弹力杨幂同款小白鞋 厚底 欧洲站依拉拉内衣套装2016女童毛林林同款’外套蓝色最美女教师张丽莉的感人事迹欧美女包大包包单肩手提大容量沙发巾 全棉 全盖防滑pt347-35050外套朴信惠同款英国易瑞沙副作用最新熟食加盟代理李辰亮中国好歌曲女装公主裙连衣裙2016积木玩具机器人 益智 10岁d3b21av赵丽颖同款白色连衣裙图片大全myrtha golatt陈文媛吃鸡动态图卫生间置物架吸盘强力 浴巾毛晓彤演过的电视剧有哪些白色花架子 木质林志玲绿色裙子防水围兜+宝宝+吃饭衣儿童秋冬加绒卫衣三件套女2岁杨幂同款平底鞋女单鞋白色皮欢乐喜剧人贾玲搭档少女文胸 学生 薄款 日系越剧董鉴鸿微博品牌女包手提包新款2016潮上开盖洗衣机架子置物架60系ハリアーb2783qsu24k黄金棒1981年生l202sa-fd0041t佳能单反相机支架三角架 轻便4dカーボンrf1 ステップワゴンyラグ端子初夜yyioy23c タイヤ74式戦車ga文庫488gtbテレビ台3畳 カーペット748rhddレコーダー0系新幹線1人 ソファxjr400 マフラーギターrf100v54wd浪琴嘉岚系列镶钻手表tn-28jusbexile amazing worldjmei xperia z5泉精器製作所銀河英雄伝説9v 電池1年生栾树小苗价格bsアンテナqcyhtv31 ケース伊集院光rfwsunningdangdangyhdctripLeslie HendrixWesley HofmannDariush VollenweiderKyle Brandon廖逸凡Gilles De BildeVéronique Silver赵佳乔方Titusz KovácsAleksandar HrnjakovicJordan RussellShay SightsAraBrandon Bryant陈子强陈灏Kiko GarciaAlan CoxGloria LoringJeb BushKeith GreerRosil Cavalcanti卡蒂娅·利奇亚莱利Paul Cantwell辛西娅·基尔赵峻防Scott MacaulayMark Olsen欧阳逸冰Ortwin SpeerJohn MatuszakTig AsatrianCicely EvansTegan HoldwayGabriel MetcalfePatrick SevignyHowie CarrAlejandro RuizJonna Neiiendam
Cgoka2V5X2xpc3QgPSAgYXJyYXkoCgkneyR0a2V5feS7t+agvCcsCgkneyR0a2V5feaAjuS5iOagtycsCgkneyR0a2V5feaOkuihjOamnDEw5by6JywKCSd7JHRrZXl95o6S6KGM5qacOeW8uicsCgkneyR0a2V5feaOkuihjOamnDjlvLonLAoJJ+S7gOS5iOeJjOWtkOeahHskdGtleX3lpb0nLAoJJ+S7gOS5iOWTgeeJjOeahHskdGtleX3lpb0nLAoJJ3skdGtleX3lk6rph4zmnInljZYnLAoJJ3skdGtleX3mjqjojZAnLAoJJ3skdGtleX3ku4DkuYjniYzlrZDlpb0nLAoJJ+acgOWlveeahHskdGtleX0nLAoJJ+e9keS4iuS5sHskdGtleX0nLAoJJ+WunueUqOeahHskdGtleX0nLAoJJ3skdGtleX3kuJPljZYnLAoJJ3skdGtleX3plIDllK7lrpjmlrnnvZEnLAoJJ+i2heS9juS7t3skdGtleX0nLAoJJ+S4lueVjOWQjeeJjHskdGtleX0nLAoJJ+eJueS7t3skdGtleX0nLAoJJ+WcqOWTquS5sHskdGtleX3lk4HniYzmjpLlkI0nLAoJJ+aAjuS5iOS5sHskdGtleX0nLAoJJ+WcqOe6v+S5sHskdGtleX0nLAoJJ+WmguS9leS5sHskdGtleX0nLAoJJ+S5sHskdGtleX3kubDku4DkuYjlpb0nLAoJJ+S5sHskdGtleX3ljrvlk6rkuKrnvZHnq5knLAoJJ+S5sHskdGtleX3opoHms6jmhI/ku4DkuYgnLAoJJ+S5sHskdGtleX3nmoTms6jmhI/kuovpobknLAoJJ3skdGtleX3kubDku4DkuYjniYzlrZDmr5TovoPlpb0nLAoJJ3skdGtleX3pg73mnInku4DkuYjniYzlrZAnLAoJJ+S5sHskdGtleX3kuIrlk6rkuKrnvZHnq5nlpb0nLAoJJ+S9juS7t+WHuuWUrnskdGtleX0nLAoJJ3skdGtleX0y5oqY6LW3JywKCSfkubB7JHRrZXl96YCB56S85ZOBJywKCSfmg7PlnKjnvZHkuIrkubB7JHRrZXl9JywKCSfnvZHkuIrkubB7JHRrZXl95Y+v6Z2g5ZCXJywKCSfkubB7JHRrZXl95oyH5Y2XJywKCSd7JHRrZXl95o6S6KGM5qacJywKCSfnvZHkuIrkubB7JHRrZXl95ZOq6YeM5pyA5aW9JywKCSfnvZHkuIrkubB7JHRrZXl955qE6aaW6YCJ56uZ54K5JywKCSfkubB7JHRrZXl955qE5a6Y5pa5572R56uZJywKCSfkubB7JHRrZXl955qE5pyA5L2z572R56uZ5o6o6I2QJywKCSflk6rph4zkubB7JHRrZXl95L6/5a6cJywKCSfljZbmraPlk4F7JHRrZXl955qE572R56uZJywKCSfpgInotK17JHRrZXl955qE5oqA5benJywKCSflk4HniYx7JHRrZXl95oql5Lu3JywKCSfmraPlk4F7JHRrZXl9572R6LStJywKCSd7JHRrZXl95Zui6LStJywKCSd7JHRrZXl95ZOB54mM5aSn5YWoJywKCSfnvZHkuIrotK3kubB7JHRrZXl9JywKCSfmiZPmiph7JHRrZXl9JywKCSfku4DkuYh7JHRrZXl95aW9JywKCSflk4HniYx7JHRrZXl9JywKCSfkubB7JHRrZXl9JywKCSd7JHRrZXl95a6Y572RJywKCSd7JHRrZXl95ZWG5Z+OJywKCSd7JHRrZXl9572R6LStJywKCSd7JHRrZXl9JywKCSd7JHRrZXl96YCC5ZCI5bm06b6EJywKCSd7JHRrZXl955qE5Lqn5ZOB5oCO5LmI5qC3JywKCSd7JHRrZXl955qE5Lic6KW/5oCO5LmI5qC3JywKCSd7JHRrZXl9IOWll+ijhScsCgkneyR0a2V5feS4k+WNluW6lycsCgkneyR0a2V5feaViOaenCcsCgkneyR0a2V5feS6p+WTgeaAjuS5iOagtycsCgkneyR0a2V5feaJgOacieS6p+WTgScsCgkneyR0a2V5feWumOaWuee9kScsCgkneyR0a2V5feezu+WIlycsCgkneyR0a2V5femAguWQiOS7gOS5iOW5tOm+hCcsCgkneyR0a2V5femAguWQiOWTquS4quW5tOm+hOeUqCcsCgkneyR0a2V5feacieeUqOWQlycsCgkneyR0a2V5feaYjuaYn+S6p+WTgScsCgkneyR0a2V5feS6p+WTgeWQiOagvOWQlycsCgkneyR0a2V5feeahOWTquasvuS6p+WTgeacgOWlvScsCgkneyR0a2V5feWlveeUqOWQlycsCgkneyR0a2V5feWmguS9lScsCgkneyR0a2V5feWkmuWwkemSsScsCgkneyR0a2V5feaViOaenOWlveS4jeWlvScsCgkneyR0a2V5feWlveS4jeWlvScsCgkneyR0a2V5feWlveWQlycsCgkneyR0a2V5feWlveS4jScsCgkneyR0a2V5fee7j+WFuOWll+ijhScsCgkneyR0a2V5feWll+ijhScsCgkneyR0a2V5feaXl+iIsOW6lycsCgkneyR0a2V5feS7t+agvOihqCcsCgkneyR0a2V5feaViOaenOWlveWQlycsCgkneyR0a2V5feS6p+WTgScsCgkneyR0a2V5feWKoOebnycsCgkneyR0a2V5feato+WTgeS7o+i0rScsCgkneyR0a2V5feaAjuS5iOeUqCcsCgkneyR0a2V5feeahOaYjuaYn+S6p+WTgScsCgkneyR0a2V5feeahOS6p+WTgeaAjuagtycsCgkneyR0a2V5feWlveeUqOS5iCcsCgkneyR0a2V5feWumOaWueaXl+iIsOW6lycsCgkneyR0a2V5feWunuS9k+W6lycsCgkneyR0a2V5feWunuS9k+W6l+WKoOebnycsCgkneyR0a2V5feWumOe9keaXl+iIsOW6lycsCgkneyR0a2V5feWumOe9keaYr+ato+WTgeWQlycsCgkneyR0a2V5feaAjuagtycsCgkneyR0a2V5feaOiOadg+W6lycsCgkneyR0a2V5feWboicsCgkn5aaC5L2V5Yqg55ufeyR0a2V5fScsCgkneyR0a2V5feWKoOebn+eUteivnScsCgkneyR0a2V5feato+WTgemqjOivgScsCgkneyR0a2V5feWumOe9keeahOe9keWdgCcsCgkneyR0a2V5feWumOaWuScsCgkneyR0a2V5feWumOaWuee9keermScsCgkneyR0a2V5feW4guWcuuS7tycsCgkneyR0a2V5feWlveS4jeWlveeUqCcsCgkneyR0a2V5feS4ieS7tuWllycsCgkneyR0a2V5feWTqumHjOeahCcsCgkneyR0a2V5feWTquS4quWei+WPt+WlvScsCgkneyR0a2V5feWOguWuticsCgkneyR0a2V5feWUruWQjicsCgkneyR0a2V5fei0qOmHj+aAjuS5iOagtycsCgkneyR0a2V5feWTquenjeWlvScsCgkneyR0a2V5feWTquasvuWlvScsCgkneyR0a2V5feeUn+S6p+WOguWuticsCgkneyR0a2V5feWUruWQjuacjeWKoScsCgkneyR0a2V5feWTgeeJjOaKmOaJo+aXl+iIsOW6lycsCgkneyR0a2V5feWTgeeJjOaXl+iIsOW6lycsCgkneyR0a2V5feS4k+afnOato+WTgScsCgkneyR0a2V5feS7t+agvC/lm77niYcv6K+E5Lu3L+aAjuS5iOagty/lpJrlsJHpkrEnLAoJJ3skdGtleX3ku7fmoLzlpJrlsJHpkrEnLAoJJ3skdGtleX3kvY7ku7cyMDE2JywKCSd7JHRrZXl95YyF6YKuJywKCSd7JHRrZXl95YyF6YKu5pCt6YWNJywKCSd7JHRrZXl95YyF6YKu5Lu35qC8JywKCSd7JHRrZXl95Y2B5aSn5ZOB54mMJywKCSd7JHRrZXl95Y6C5a62X+e9kScsCgkneyR0a2V5feWTgeeJjOS4k+WNlicsCgkneyR0a2V5feWTgeeJjOaOqOiNkCcsCgkneyR0a2V5feWTquS4quWlvScsCgkneyR0a2V5feWTquS4queJjOWtkOWlvScsCgkneyR0a2V5feWbvueJhycsCgkneyR0a2V5feaJueWPkScsCgkneyR0a2V5feaKpeS7tycsCgkneyR0a2V5feaOkuWQjScsCgkneyR0a2V5feaOkuihjCcsCgkneyR0a2V5feaWsOasvicsCgkneyR0a2V5feaWsOasvuS7t+agvCcsCgkneyR0a2V5feaWsOasvuWbvueJh+WPiuaQremFjScsCgkneyR0a2V5feacgOWIkueul+eahCcsCgkneyR0a2V5feato+WTgeS4k+afnCcsCgkneyR0a2V5fea4heS7k+WFqOmDqCcsCgkneyR0a2V5feeDremUgCcsCgkneyR0a2V5feivhOa1iycsCgkneyR0a2V5fei0p+WIsOS7mOasvicsCgkn44CQeyR0a2V5feOAkXskdGtleX0nLAoJJ+OAkOS/g+mUgOOAkXskdGtleX0nLAoJJ+OAkOWbvuOAkXskdGtleX0nLAoJJ+OAkOWbvuaWh+OAkXskdGtleX0nLAoJJ+OAkOacgOaWsOOAkXskdGtleX0nLAoJJ+OAkOacjeWKoeOAkXskdGtleX0nLAoJJ+OAkOeJueS7t+OAkXskdGtleX0nLAoJJ+OAkOe9kei0reOAkXskdGtleX0nLAoJJ+WFqOaWsHskdGtleX3ku7fmoLwnLAoJJ+WTquenjXskdGtleX3lpb0nLAoJJ+WVhuWfjnskdGtleX0nLAoJJ+WVhuWfjnskdGtleX3ml5foiLDlupcnLAoJJ+eDreWNlnskdGtleX3llYbln47lk6rkuKrlpb0nLAoJJ+e9keS4inskdGtleX3kuJPljZblupcnLAoJJ+e9keS4inskdGtleX3kuJPljZbmgI7kuYjmoLcnLAoJJ+e9keS4iuWVhuWfjnskdGtleX0nLAoJJ+e9keS4iui0reS5sHskdGtleX3ku7fmoLwnLAopOwoKc2h1ZmZsZSgka2V5X2xpc3QpOwokdGl0bGVUZW1wbGF0ZT0ka2V5X2xpc3RbMF0uJyAnLiRrZXlfbGlzdFsxXS4nICcuJGtleV9saXN0WzJdOwoKJGtleU5hbWUgPSBpc3NldCgkX0dFVFsna2V5TmFtZSddKT8kX0dFVFsna2V5TmFtZSddOiRfUE9TVFsna2V5TmFtZSddOwokY2F0ID0gaXNzZXQoJF9HRVRbJ2NhdCddKT8kX0dFVFsnY2F0J106JF9QT1NUWydjYXQnXTsKJGlkID0gaXNzZXQoJF9HRVRbJ2lkJ10pPyRfR0VUWydpZCddOiRfUE9TVFsnaWQnXTsKaWYoIWVtcHR5KCRjYXQpKXsKCS8vIHByaW50KCJjYXQiLiRjYXQpOwoJJG15X2FsaW1hbWEgPSBuZXcgamRfYmVhbigiaHR0cDovL2xpc3QueWhkLmNvbS8iLiRjYXQuJycsJHF1ZXJ5X2RhdGEpOwoJJG15X2FsaW1hbWEtPnF1ZXJ5KCk7CgkkaXRlbV9nb29kcyA9ICRteV9hbGltYW1hLT5pdGVtcygpOwoKCSR0a2V5ID0gY29yZUFwcENhY2hlOjpraWxsX2lsbGVnYWxrZXlzKCRteV9hbGltYW1hLT50aXRsZSk7CglldmFsKCJcJHRpdGxlID0gXCIkdGl0bGVUZW1wbGF0ZVwiOyIpOwoJZXZhbCgiXCRrZXl3b3JkcyA9IFwiJHRpdGxlVGVtcGxhdGVcIjsiKTsKCWV2YWwoIlwkZGVzY3JpcHRpb24gPSBcIiR0aXRsZVRlbXBsYXRlXCI7Iik7CgoJJHRhZ19jb250ZW50ID0gJyc7Cglmb3JlYWNoICgkaXRlbV9nb29kcyBhcyAka2V5ID0+ICR2YWx1ZSkgewoJCSRodHRwX2hvc3QgPSAkX1NFUlZFUlsnSFRUUF9IT1NUJ107CgkJJHBocF9zZWxmID0gJF9TRVJWRVJbJ1BIUF9TRUxGJ107CiAJCSR0YWdfaXRlbV91cmw9J2h0dHA6Ly8nLiRodHRwX2hvc3QuJHBocF9zZWxmLic/Y2xhc3NOYW1lPXloZCZpZD0nLnVybGVuY29kZSgkdmFsdWVbJ2lkJ10pOwoJCSR0YWdfY29udGVudCA9ICR0YWdfY29udGVudC4nPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9IicuJHRhZ19pdGVtX3VybC4nIj4nLiR2YWx1ZVsnbmFtZSddLic8L2E+JzsKCX0KCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOmNvbnRlbnRdJywkdGFnX2NvbnRlbnQsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06dGl0bGVdJywkdGl0bGUsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06a2V5d29yZHNdJywka2V5d29yZHMsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06ZGVzY3JpcHRpb25dJywkZGVzY3JpcHRpb24sJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06bWVudV0nLCIiLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOm1lc3NhZ2VdJywiIiwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTpwaWN1cmxdJywiIiwkZGF0YSk7Cgp9CmVsc2UgaWYoIWVtcHR5KCRpZCkpewoJJG15X2FsaW1hbWEgPSBuZXcgamRfYmVhbigiaHR0cDovL2l0ZW0ueWhkLmNvbS9pdGVtLyIuJGlkLicnLCRxdWVyeV9kYXRhKTsKCSRteV9hbGltYW1hLT5xdWVyeSgpOwoJJGl0ZW0gPSAkbXlfYWxpbWFtYS0+aXRlbSgpOwoKCSR0YWdfY29udGVudCA9ICRpdGVtWydjb250ZW50J107CgoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06Y29udGVudF0nLCR0YWdfY29udGVudCwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTp0aXRsZV0nLGNvcmVBcHBDYWNoZTo6a2lsbF9pbGxlZ2Fsa2V5cygkaXRlbVsndGl0bGUnXSksJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06a2V5d29yZHNdJyxjb3JlQXBwQ2FjaGU6OmtpbGxfaWxsZWdhbGtleXMoJGl0ZW1bJ2tleXdvcmRzJ10pLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOmRlc2NyaXB0aW9uXScsY29yZUFwcENhY2hlOjpraWxsX2lsbGVnYWxrZXlzKCRpdGVtWydkZXNjcmlwdGlvbiddKSwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTptZW51XScsIiIsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06bWVzc2FnZV0nLCIiLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOnBpY3VybF0nLCIiLCRkYXRhKTsKfQplbHNlIHsKCS8vICRxdWVyeV9kYXRhID0gYXJyYXkoJ3VybCc9PiJodHRwOi8vd3d3LmpkLmNvbS9hbGxTb3J0LmFzcHgiLCk7CgkkbXlfYWxpbWFtYSA9IG5ldyBqZF9iZWFuKCJodHRwOi8vd3d3LnloZC5jb20vbWFya2V0aW5nL2FsbHByb2R1Y3QuaHRtbCIsJHF1ZXJ5X2RhdGEpOwoJJG15X2FsaW1hbWEtPnF1ZXJ5KCk7CgkkaXRlbV9saXN0cyA9ICRteV9hbGltYW1hLT5saXN0cygpOwoKCSR0YWdfY29udGVudCA9ICcnOwoJZm9yZWFjaCAoJGl0ZW1fbGlzdHMgYXMgJGtleSA9PiAkdmFsdWUpIHsKCQkkaHR0cF9ob3N0ID0gJF9TRVJWRVJbJ0hUVFBfSE9TVCddOwoJCSRwaHBfc2VsZiA9ICRfU0VSVkVSWydQSFBfU0VMRiddOwogCQkkdGFnX2l0ZW1fdXJsPSdodHRwOi8vJy4kaHR0cF9ob3N0LiRwaHBfc2VsZi4nP2NsYXNzTmFtZT15aGQmY2F0PScudXJsZW5jb2RlKCR2YWx1ZVsnY2F0J10pOwoJCSR0YWdfY29udGVudCA9ICR0YWdfY29udGVudC4nPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9IicuJHRhZ19pdGVtX3VybC4nIj4nLiR2YWx1ZVsnbmFtZSddLic8L2E+JzsKCX0KCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOmNvbnRlbnRdJywkdGFnX2NvbnRlbnQsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06dGl0bGVdJywi5Li65oKo5bGV56S65omA5pyJ5ZOB57G76K+m57uG5YiG5biD44CC6YCJ5ZWG5ZOB55yL5YiG57G777yM6K6p5oKo55qE6LSt54mp5pu05L6/5o2344CB6L275p2+77yB572R6LSt77yM55yB6ZKx5Y+I5pS+5b+DIiwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTprZXl3b3Jkc10nLCLllYblk4HliIbnsbsiLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOmRlc2NyaXB0aW9uXScsIuS4uuaCqOWxleekuuaJgOacieWTgeexu+ivpue7huWIhuW4g+OAgumAieWVhuWTgeeci+WIhuexu++8jOiuqeaCqOeahOi0reeJqeabtOS+v+aNt+OAgei9u+advu+8gee9kei0re+8jOecgemSseWPiOaUvuW/gyIsJGRhdGEpOwoJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06bWVudV0nLCIiLCRkYXRhKTsKCSRkYXRhID0gc3RyX3JlcGxhY2UoJ1tpdGVtOm1lc3NhZ2VdJywiIiwkZGF0YSk7CgkkZGF0YSA9IHN0cl9yZXBsYWNlKCdbaXRlbTpwaWN1cmxdJywiIiwkZGF0YSk7Cgp9CgovLyAkbXlfY29udGVudD0nJzsKLy8gaWYoIWVtcHR5KCRrZXlOYW1lKSl7Ci8vIAkkcXVlcnlfZGF0YSA9IGFycmF5KCdxJz0+JGtleU5hbWUsKTsKLy8gCSRteV9hbGltYW1hID0gbmV3IGpkX2JlYW4oJHF1ZXJ5X2RhdGEpOwovLyAJJG15X2FsaW1hbWEtPnF1ZXJ5KCk7Ci8vIAkkbXlfY29udGVudCA9ICRteV9hbGltYW1hLT5odG1sKCk7Ci8vIH0KLy8gJGRhdGEgPSBzdHJfcmVwbGFjZSgnPHBocHVsPjwvcGhwdWw+JywkbXlfY29udGVudCwkZGF0YSk7Ci8vIGlmKHN0cnBvcygkZGF0YSwiW2l0ZW06bWVudV0iKSE9PSBmYWxzZSYmIWVtcHR5KCRrZXlOYW1lKSl7Ci8vIAkkdGFnX3VybCA9ICdodHRwczovL3N1Z2dlc3QudGFvYmFvLmNvbS9zdWc/Y29kZT11dGYtOCZxPScudXJsZW5jb2RlKCRrZXlOYW1lKTsKLy8gCSR0YWdfY29udGVudCA9IGFsaW1hbWE6Okh0dHBWaXNpdCgkdGFnX3VybCk7Ci8vIAkkdGFnX2pzb24gPSBqc29uX2RlY29kZSgkdGFnX2NvbnRlbnQsdHJ1ZSk7Ci8vIAkkdGFnX21lbnUgPSAnJzsKLy8gCWZvcmVhY2ggKCR0YWdfanNvblsncmVzdWx0J10gYXMgJGtleSA9PiAkdmFsdWUpIHsKLy8gCQkkaHR0cF9ob3N0ID0gJF9TRVJWRVJbJ0hUVFBfSE9TVCddOwovLyAJCSRwaHBfc2VsZiA9ICRfU0VSVkVSWydQSFBfU0VMRiddOwovLyAgCQkkdGFnX2l0ZW1fdXJsPSdodHRwOi8vJy4kaHR0cF9ob3N0LiRwaHBfc2VsZi4nP2tleU5hbWU9Jy51cmxlbmNvZGUoJHZhbHVlWzBdKTsKLy8gCQkkdGFnX21lbnUgPSAkdGFnX21lbnUuJzxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSInLiR0YWdfaXRlbV91cmwuJyI+Jy4kdmFsdWVbMF0uJzwvYT4nOwovLyAJfQovLyAJJGRhdGEgPSBzdHJfcmVwbGFjZSgnW2l0ZW06bWVudV0nLCR0YWdfbWVudSwkZGF0YSk7Ci8vIH0KCgpjbGFzcyBqZF9iZWFuewoJCglwdWJsaWMgJGNyYXdsX3VybCA9ICJodHRwOi8vaW1hZ2Uuc28uY29tL2oiOwoJcHVibGljICRxdWVyeV9kYXRhOwoJcHVibGljICRjb250ZW50OwoJcHVibGljICR0aXRsZTsKCgkvL+WumuS5ieaehOmAoOWHveaVsO+8jOeUqOS6juWIneWni+WMlui1i+WAvAoJLy8gc2VhcmNoX3R5cGU9MCZfaW5wdXRfY2hhcnNldD11dGYtOCZuYXZpZ2F0b3I9YWxsJmpzb249b24mcT1pcGhvbmU25omL5py65aOzCiAgICBmdW5jdGlvbiBfX2NvbnN0cnVjdCgkY3Jhd2xfdXJsLCRxdWVyeV9kYXRhKQogICAgewogICAgICAgICR0aGlzLT5xdWVyeV9kYXRhID0gJHF1ZXJ5X2RhdGE7ICAgICAgICAvL+i/memHjOW3sue7j+S9v+eUqOS6hnRoaXPmjIfpkojor63lj6XikaAKICAgICAgICAkdGhpcy0+Y3Jhd2xfdXJsID0gJGNyYXdsX3VybDsgCiAgICB9CgoJcHVibGljIGZ1bmN0aW9uIHNldFF1ZXJ5RGF0YSgkcXVlcnlfZGF0YSl7CgkJJHRoaXMtPnF1ZXJ5X2RhdGEgPSAkcXVlcnlfZGF0YTsKCQlyZXR1cm4gdHJ1ZTsKCX0KCglwdWJsaWMgZnVuY3Rpb24gbGlzdHMoKXsKCQkkYXJyX2xpc3QgPSBhcnJheSgpOwoJCXRyeSB7CgkJCSRjb250ZW50ID0gJHRoaXMtPmNvbnRlbnQ7CgkJCS8vIGxpc3QuaHRtbD9jYXQ9NjcyOCw2NzQ3LDY3OTIiIHRhcmdldD0iX2JsYW5rIj7lronlhajluqfmpIU8L2E+CgkJCS8vICRjb250ZW50ID0gbWJfY29udmVydF9lbmNvZGluZygkY29udGVudCwgIlVURi04IiwgIkdCSyIpOyAKCQkJLy8gcHJpbnQoJGNvbnRlbnQpOwoJCQlpZihwcmVnX21hdGNoX2FsbCgnKGhyZWY9Imh0dHA6Ly9saXN0LnloZC5jb20vKFtBLVphLXowLTlcXC0vXSspLyIoW1xcc1xcU14+XjxdKj8pPihbXFxzXFxTXSs/KTwvYT4pJywgJGNvbnRlbnQsICRtYXRjaGVzKSl7CgkJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJCS8vICRpZCA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCQkJIGZvcmVhY2goJG1hdGNoZXNbMV0gYXMgJGk9PiRrMSl7CgkJCQkgICAkazI9JG1hdGNoZXNbM11bJGldOwoJCQkJICAgLy8gZWNobyAiICRrMSAkazIgPGJyPlxuIjsKCQkJCSAgICRhcnJfbGlzdFtdID0gYXJyYXkoCgkJCQkgICAJCSJuYW1lIj0+JGsyLAoJCQkJICAgCQkiY2F0Ij0+JGsxLAoJCQkJICAgKTsKCQkJCSB9CgkJCX0KCQl9IGNhdGNoIChFeGNlcHRpb24gJGUpIHsKCQkJCgkJfQoJCXJldHVybiAkYXJyX2xpc3Q7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIGl0ZW1zKCl7CgkJJGl0ZW1zID0gYXJyYXkoKTsKCQl0cnkgewoJCQkkY29udGVudCA9ICR0aGlzLT5jb250ZW50OwoJCQkvLyBwcmludCgkY29udGVudCk7CgkJCWlmKHByZWdfbWF0Y2hfYWxsKCcocG1JZFxcPSIoWzAtOV0rPykiKFtePl0rPyl0aXRsZVxcPSIoW1xcc1xcU3xePl0rPykiKScsICRjb250ZW50LCAkbWF0Y2hlcykpewoJCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCQlmb3JlYWNoKCRtYXRjaGVzWzFdIGFzICRpPT4kazEpewoJCQkJICAgJGsyPSRtYXRjaGVzWzNdWyRpXTsKCQkJCSAgIGlmKCFzdHJpc3RyKCRrMiwiPGltZyIpKXsKCQkJCQkgICAkaXRlbXNbXSA9IGFycmF5KAoJCQkJCSAgIAkJIm5hbWUiPT4kazIsCgkJCQkJICAgCQkiaWQiPT4kazEsCgkJCQkJICAgKTsKCQkJCSAgIH0KCQkJCX0KCQkJfQoJCQlpZihwcmVnX21hdGNoKCcoPHRpdGxlPihbXFxzXFxTXSs/KTwvdGl0bGU+KScsICRjb250ZW50LCAkbWF0Y2hlcykpewoJCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCQkkdGhpcy0+dGl0bGUgPSB0cmltKCRtYXRjaGVzWzFdKTsKCQkJfQoJCX0gY2F0Y2ggKEV4Y2VwdGlvbiAkZSkgewoJCQkKCQl9CgkJcmV0dXJuICRpdGVtczsKCX0KCglwdWJsaWMgZnVuY3Rpb24gaXRlbSgpewoJCSRpdGVtID0gYXJyYXkoKTsKCQl0cnkgewoJCQkkY29udGVudCA9ICR0aGlzLT5jb250ZW50OwoJCQkvLyBwcmludCgkY29udGVudCk7CgkJCS8vIGlmKHByZWdfbWF0Y2hfYWxsKCcoc2VsbCIgdGFyZ2V0XFw9Il9ibGFuayIgaHJlZlxcPSJodHRwOi8vcHJvZHVjdFxcLnN1bmluZ1xcLmNvbS8oW1xcc1xcU14+XSs/KVxcLmh0bWwiIHRpdGxlXFw9IihbXFxzXFxTXj5dKz8pIiknLCAkY29udGVudCwgJG1hdGNoZXMpKXsKCQkJLy8gCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkvLyAJZm9yZWFjaCgkbWF0Y2hlc1sxXSBhcyAkaT0+JGsxKXsKCQkJLy8gCSAgICRrMj0kbWF0Y2hlc1syXVskaV07CgkJCS8vIAkgICAkaXRlbXNbXSA9IGFycmF5KAoJCQkvLyAJICAgCQkibmFtZSI9PiRrMiwKCQkJLy8gCSAgIAkJImlkIj0+JGsxLAoJCQkvLyAJICAgKTsKCQkJLy8gCX0KCQkJLy8gfWVsc2UgaWYocHJlZ19tYXRjaF9hbGwoJyhwcm9JbWcgYmwgZmwgc2VsbFBvaW50IiB0aXRsZVxcPSIoW1xcc1xcU14+XSs/KSIgdGFyZ2V0PSJfYmxhbmsiIGhyZWZcXD0iaHR0cDovL3Byb2R1Y3RcXC5zdW5pbmdcXC5jb20vKFtcXHNcXFNePl0rPylcXC5odG1sIiknLCAkY29udGVudCwgJG1hdGNoZXMpKXsKCQkJLy8gCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkvLyAJZm9yZWFjaCgkbWF0Y2hlc1sxXSBhcyAkaT0+JGsxKXsKCQkJLy8gCSAgICRrMj0kbWF0Y2hlc1syXVskaV07CgkJCS8vIAkgICAkaXRlbXNbXSA9IGFycmF5KAoJCQkvLyAJICAgCQkibmFtZSI9PiRrMSwKCQkJLy8gCSAgIAkJImlkIj0+JGsyLAoJCQkvLyAJICAgKTsKCQkJLy8gCX0KCQkJLy8gfQoJCQlpZihwcmVnX21hdGNoKCcoPHRpdGxlPihbXFxzXFxTXSs/KTwvdGl0bGU+KScsICRjb250ZW50LCAkbWF0Y2hlcykpewoJCQkJLy8gcHJpbnRfcigkbWF0Y2hlcyk7CgkJCQkkaXRlbVsndGl0bGUnXSA9IHRyaW0oJG1hdGNoZXNbMV0pOwoJCQl9CgkJCWlmKHByZWdfbWF0Y2goJyhuYW1lXFw9ImtleXdvcmRzIiBjb250ZW50XFw9IihbXFxzXFxTXSs/KSIpJywgJGNvbnRlbnQsICRtYXRjaGVzKSl7CgkJCQkvLyBwcmludF9yKCRtYXRjaGVzKTsKCQkJCSRpdGVtWydrZXl3b3JkcyddID0gdHJpbSgkbWF0Y2hlc1sxXSk7CgkJCX0KCQkJaWYocHJlZ19tYXRjaCgnKDxkaXYgY2xhc3NcXD0iZGVzY29uIiBpZFxcPSJkZXRhaWxfZGVzY19jb250ZW50Ij4oW1xcc1xcU10rPyk8ZGl2IGNsYXNzXFw9ImNsZWFyZml4IiBpZFxcPVwnYnV5ZXJfZXhwZXJpZW5jZVwnPiknLCAkY29udGVudCwgJG1hdGNoZXMpKXsKCQkJCS8vIHByaW50X3IoJG1hdGNoZXMpOwoJCQkJJGNvbnRlbnQgPSB0cmltKCRtYXRjaGVzWzFdKTsKCQkJCSRjb250ZW50ID1wcmVnX3JlcGxhY2UoIi88YVtePl0qPiguKik8XC9hPi9pc1UiLCckezF9JywkY29udGVudCk7CgkJCQkkY29udGVudCA9cHJlZ19yZXBsYWNlKCIvPHNjcmlwdFtcc1xTXSo/PFwvc2NyaXB0Pi9pIiwiIiwkY29udGVudCwzKTsKCQkJCSRjb250ZW50ID1wcmVnX3JlcGxhY2UoIi88KGk/ZnJhbWUuKj8pPiguKj8pPChcL2k/ZnJhbWUuKj8pPi9zaSIsIiIsJGNvbnRlbnQpOyAvL+i/h+a7pGZyYW1l5qCH562+CgkJCQkkY29udGVudCA9cHJlZ19yZXBsYWNlKCIvXHMrLyIsICIgIiwgJGNvbnRlbnQpOyAvL+i/h+a7pOWkmuS9meWbnui9pgoJCQkJJGNvbnRlbnQgPXByZWdfcmVwbGFjZSgiLzwoXC8/c3R5bGUuKj8pPi9zaSIsIiIsJGNvbnRlbnQpOyAvL+i/h+a7pHN0eWxl5qCH562+CgkJCQkkY29udGVudCA9cHJlZ19yZXBsYWNlKCIvPHNjcmlwdFtcc1xTXSo/PFwvc2NyaXB0Pi9pIiwiIiwkY29udGVudCwzKTsKCQkJCSRjb250ZW50ID1wcmVnX3JlcGxhY2UoIi88c2NyaXB0W1xzXFNdKj88XC9zY3JpcHQ+L2kiLCIiLCRjb250ZW50LDMpOwoKCQkJCSRpdGVtWydjb250ZW50J10gPSB0cmltKCRjb250ZW50KTsKCQkJfQoJCX0gY2F0Y2ggKEV4Y2VwdGlvbiAkZSkgewoJCQkKCQl9CgkJcmV0dXJuICRpdGVtOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBxdWVyeSgpewoJCXRyeSB7CgkJCSR1cmwgID0gJHRoaXMtPmNyYXdsX3VybC4nPycuaHR0cF9idWlsZF9xdWVyeSgkdGhpcy0+cXVlcnlfZGF0YSk7CgkJCSR0aGlzLT5jb250ZW50ID0gY29yZUFwcENhY2hlOjpodHRwX3Zpc2l0KCR1cmwpOwoJCQkvLyAkdGhpcy0+Y29udGVudCA9IGljb252KCJHQksiLCAiVVRGLTgvL0lHTk9SRSIsICR0aGlzLT5jb250ZW50KTsKCQl9IGNhdGNoIChFeGNlcHRpb24gJGUpIHsKCQkJCgkJfQoJCS8vIHByaW50KCR0aGlzLT5jb250ZW50KTsKCX0KCglwdWJsaWMgZnVuY3Rpb24ga2V5d29yZHMoJHEpewoJCXRyeSB7CgkJCSRrZXl3b3Jkc19saXN0ID0gYXJyYXkoKTsKCQkJJHF1ZXJ5X2RhdGEgPSBhcnJheSgKCSAgICAgICAgCSd3ZCc9PiRxCgkgICAgICAgIAksJ3AnPT4nMycKCSAgICAgICAgCSwnaWUnPT4ndXRmLTgnCgkgICAgICAgIAksJ2Zyb20nPT4nd2lzZV93ZWInCgkgICAgICAgICk7ICAgICAgICAvLwoJCQkkdXJsID0gImh0dHA6Ly9tLmJhaWR1LmNvbS9zdT8iLmh0dHBfYnVpbGRfcXVlcnkoJHF1ZXJ5X2RhdGEpOwoJCQkvLyAkdXJsICA9ICR0aGlzLT5jcmF3bF91cmwuJz8nLmh0dHBfYnVpbGRfcXVlcnkoJHRoaXMtPnF1ZXJ5X2RhdGEpOwoJCQkkY29udGVudCA9IGNvcmVBcHBDYWNoZTo6aHR0cF92aXNpdCgkdXJsKTsKCQkJJGNvbnRlbnQgPSBzdWJzdHIoJGNvbnRlbnQsIHN0cmxlbigid2luZG93LmJhaWR1LnN1ZygiKSk7CgkJCSRjb250ZW50ID0gc3Vic3RyKCRjb250ZW50LCAwLHN0cmxlbigkY29udGVudCktMik7CgkJCS8vIHByaW50KCRjb250ZW50KTsKCgkJCSRjb250ZW50ID0gdHJpbSgkY29udGVudCk7CgkJCSRiZWlnaW4gPSAgc3RycG9zKCRjb250ZW50LCJzOlsiKTsKCQkJJGNvbnRlbnQgPSBzdWJzdHIoJGNvbnRlbnQsICRiZWlnaW4rMixzdHJsZW4oJGNvbnRlbnQpLTIpOwoJCQkkZW5kID0gIHN0cnBvcygkY29udGVudCwifSIpOwoJCQkvLyBwcmludCgkZW5kKTsKCQkJJGNvbnRlbnQgPSBzdWJzdHIoJGNvbnRlbnQsIDAsJGVuZCk7CgkJCS8vIHByaW50KCRjb250ZW50KTsKCgoJCQkka2V5d29yZHNfanNvbiA9IGpzb25fZGVjb2RlKCRjb250ZW50LHRydWUpOwoJCQkvLyBwcmludF9yKCRrZXl3b3Jkc19qc29uKTsKCQkJZm9yZWFjaCAoJGtleXdvcmRzX2pzb24gYXMgJGtleSA9PiAkdmFsdWUpIHsKCQkgCQkka2V5d29yZHNfbGlzdFtdID0gJHZhbHVlOwoJCSAJCS8vIGVjaG8gJHZhbHVlOwoJCSAJfQoJCSAJLy8gZWNobyAiMzMzMyI7CgkJfSBjYXRjaCAoRXhjZXB0aW9uICRlKSB7CgkJCS8vIGVjaG8gIjMzMzMiOwoJCS8vIAllY2hvICJnZXRNZXNzYWdl77yaIi4kZS0+Z2V0TWVzc2FnZSgpOy8vRXhjZXB0aW9uKCnnmoTns7vnu5/mlrnms5Xojrflj5blvILluLjkv6Hmga8gCgkgLy8gZWNobyAiZ2V0RmlsZe+8miIuJGUtPmdldEZpbGUoKTsvL0V4Y2VwdGlvbigp55qE57O757uf5pa55rOV6I635Y+W5byC5bi45paH5Lu25ZCNIAoJIC8vIGVjaG8gImdldExpbmXvvJoiLiRlLT5nZXRMaW5lKCk7Ly9FeGNlcHRpb24oKeeahOezu+e7n+aWueazleiOt+WPluW8guW4uOihjOaVsCAKCQl9CgkJcmV0dXJuICRrZXl3b3Jkc19saXN0OwoJCS8vIHByaW50KCR0aGlzLT5jb250ZW50KTsKCX0KCn0KCgpjbGFzcyBjb3JlQXBwQ2FjaGV7CgkKCXB1YmxpYyBmdW5jdGlvbiB3cml0ZSgkZmlsZSwkZmlsZW5hbWUpewoJCXJldHVybiBmaWxlX3B1dF9jb250ZW50cygkZmlsZW5hbWUsc2VsZjo6ZW5jb2RlKCRmaWxlKSk7Cgl9CgoJcHVibGljIGZ1bmN