From 885e4aac5ce3af18e881436a29a92d1e204b2353 Mon Sep 17 00:00:00 2001 From: gaotianliuyun <58679624+gaotianliuyun@users.noreply.github.com> Date: Tue, 18 Oct 2022 07:53:00 +0800 Subject: [PATCH] Add files via upload --- js.json | 159 ++++++++++++++++++++++++++++++------------------ js/8号影院.js | 22 +++++++ js/KUBO影视.js | 25 ++++++++ js/TV蜂.js | 25 ++++++++ js/if101[飞].js | 24 ++++++++ js/双十电影.js | 14 +++++ js/小品网.js | 23 +++++++ js/尘落影视.js | 23 +++++++ js/抓饭体育.js | 29 +++++++++ js/斗鱼直播.js | 29 +++++++++ js/爱迪影视.js | 19 ++++++ js/蛋蛋赞.js | 24 ++++++++ js/豆瓣.js | 6 +- lib/drpy.min.js | 2 +- live.jar | Bin 0 -> 100945 bytes 15 files changed, 362 insertions(+), 62 deletions(-) create mode 100644 js/8号影院.js create mode 100644 js/KUBO影视.js create mode 100644 js/TV蜂.js create mode 100644 js/if101[飞].js create mode 100644 js/双十电影.js create mode 100644 js/小品网.js create mode 100644 js/尘落影视.js create mode 100644 js/抓饭体育.js create mode 100644 js/斗鱼直播.js create mode 100644 js/爱迪影视.js create mode 100644 js/蛋蛋赞.js create mode 100644 live.jar diff --git a/js.json b/js.json index 3e61d990..3c5f08b3 100644 --- a/js.json +++ b/js.json @@ -1,5 +1,5 @@ { - "spider" : "./proxy.jar", + "spider" : "./live.jar", "sites" : [ { "key" : "drpy_js_360影视", @@ -7,13 +7,41 @@ "type" : 3, "api" : "./lib/drpy.ym.js", "ext" : "./js/360影视.js" + }, + { + "key" : "drpy_js_豆瓣", + "name" : "豆瓣[DRPY]", + "type" : 3, + "api" : "./lib/drpy.ym.js", + "ext" : "./js/豆瓣.js" + }, + { + "key" : "drpy_js_抓饭体育", + "name" : "抓饭体育[DRPY]", + "type" : 3, + "api" : "./lib/drpy.ym.js", + "ext" : "./js/抓饭体育.js" + }, + { + "key" : "drpy_js_斗鱼直播", + "name" : "斗鱼直播[DRPY]", + "type" : 3, + "api" : "./lib/drpy.ym.js", + "ext" : "./js/斗鱼直播.js" + }, + { + "key" : "drpy_js_酷云77", + "name" : "酷云77[DRPY]", + "type" : 3, + "api" : "./lib/drpy.ym.js", + "ext" : "./js/酷云77.js" }, { "key" : "drpy_js_快看", "name" : "快看[DRPY]", "type" : 3, "api" : "./lib/drpy.ym.js", - "ext" : "./js/快看.js" + "ext" : "./js/快看1.js" }, { "key" : "drpy_js_低端", @@ -21,6 +49,13 @@ "type" : 3, "api" : "./lib/drpy.ym.js", "ext" : "./js/ddys.js" + }, + { + "key" : "drpy_js_蛋蛋赞", + "name" : "蛋蛋赞[DRPY]", + "type" : 3, + "api" : "./lib/drpy.ym.js", + "ext" : "./js/蛋蛋赞.js" }, { "key" : "drpy_js_菜狗", @@ -30,11 +65,18 @@ "ext" : "./js/菜狗.js" }, { - "key" : "drpy_js_豆瓣", - "name" : "豆瓣[DRPY]", + "key" : "drpy_js_奇珍异兽", + "name" : "奇珍异兽[DRPY]", "type" : 3, "api" : "./lib/drpy.ym.js", - "ext" : "./js/豆瓣.js" + "ext" : "./js/奇珍异兽.js" + }, + { + "key" : "drpy_js_百忙无果", + "name" : "百忙无果[DRPY]", + "type" : 3, + "api" : "./lib/drpy.ym.js", + "ext" : "./js/百忙无果.js" }, { "key" : "drpy_js_69美剧", @@ -42,13 +84,6 @@ "type" : 3, "api" : "./lib/drpy.ym.js", "ext" : "./js/69美剧.js" - }, - { - "key" : "drpy_js_小说", - "name" : "小说[DRPY]", - "type" : 3, - "api" : "./lib/drpy.ym.js", - "ext" : "./js/有声小说吧.js" }, { "key" : "drpy_js_优酷", @@ -56,13 +91,6 @@ "type" : 3, "api" : "./lib/drpy.ym.js", "ext" : "./js/优酷.js" - }, - { - "key" : "drpy_js_酷云77", - "name" : "酷云77[DRPY]", - "type" : 3, - "api" : "./lib/drpy.ym.js", - "ext" : "./js/酷云77.js" }, { "key" : "drpy_js_真不卡", @@ -77,6 +105,48 @@ "type" : 3, "api" : "./lib/drpy.ym.js", "ext" : "./js/素白白.js" + }, + { + "key" : "drpy_js_双十电影", + "name" : "双十电影[DRPY]", + "type" : 3, + "api" : "./lib/drpy.ym.js", + "ext" : "./js/双十电影.js" + }, + { + "key" : "drpy_js_TV蜂", + "name" : "TV蜂[DRPY]", + "type" : 3, + "api" : "./lib/drpy.ym.js", + "ext" : "./js/TV蜂.js" + }, + { + "key" : "drpy_js_8号影院", + "name" : "8号影院[DRPY]", + "type" : 3, + "api" : "./lib/drpy.ym.js", + "ext" : "./js/8号影院.js" + }, + { + "key" : "drpy_js_爱迪影视", + "name" : "爱迪影视[DRPY]", + "type" : 3, + "api" : "./lib/drpy.ym.js", + "ext" : "./js/爱迪影视.js" + }, + { + "key" : "drpy_js_KUBO影视", + "name" : "KUBO影视[DRPY]", + "type" : 3, + "api" : "./lib/drpy.ym.js", + "ext" : "./js/KUBO影视.js" + }, + { + "key" : "drpy_js_尘落影视", + "name" : "尘落影视[DRPY]", + "type" : 3, + "api" : "./lib/drpy.ym.js", + "ext" : "./js/尘落影视.js" }, { "key" : "drpy_js_短视频", @@ -105,13 +175,6 @@ "type" : 3, "api" : "./lib/drpy.ym.js", "ext" : "./js/LIBVIO.js" - }, - { - "key" : "drpy_js_百忙无果", - "name" : "百忙无果[DRPY]", - "type" : 3, - "api" : "./lib/drpy.ym.js", - "ext" : "./js/百忙无果.js" }, { "key" : "drpy_js_番茄影视", @@ -266,13 +329,6 @@ "type" : 3, "api" : "./lib/drpy.ym.js", "ext" : "./js/牛马TV.js" - }, - { - "key" : "drpy_js_奇珍异兽", - "name" : "奇珍异兽[DRPY]", - "type" : 3, - "api" : "./lib/drpy.ym.js", - "ext" : "./js/奇珍异兽.js" }, { "key" : "drpy_js_人人影视", @@ -464,32 +520,14 @@ "ext" : "./js/AGE动漫.js" }, { - "key" : "drpy_js_vip影院", - "name" : "vip影院[DRPY]-坏", + "key" : "push_agent", + "name" : "🎯推送", "type" : 3, - "api" : "./lib/drpy.ym.js", - "ext" : "./js/vip影院.js" - }, - { - "key" : "drpy_js_蓝莓影视", - "name" : "蓝莓影视[DRPY]-坏", - "type" : 3, - "api" : "./lib/drpy.ym.js", - "ext" : "./js/蓝莓影视.js" - }, - { - "key" : "drpy_js_小猫咪", - "name" : "小猫咪[DRPY]-坏", - "type" : 3, - "api" : "./lib/drpy.ym.js", - "ext" : "./js/小猫咪.js" - }, - { - "key" : "drpy_js_夜空", - "name" : "夜空[DRPY]-坏", - "type" : 3, - "api" : "./lib/drpy.ym.js", - "ext" : "./js/夜空.js" + "api" : "csp_PushAgent", + "searchable" : 0, + "quickSearch" : 0, + "filterable" : 0, + "ext" : "http://刚刚.live/json/alitoken.json" }], "lives" : [ { @@ -513,6 +551,11 @@ "rule" : [ "default.365yg.com", "/video/tos/cn/"] + }, + { + "host" : "http://www.xiaopin.tv", + "rule" : [ + "https://vali-ugc.cp31.ott.cibntv.net"] }, { "host" : "*", diff --git a/js/8号影院.js b/js/8号影院.js new file mode 100644 index 00000000..7f7fc9c3 --- /dev/null +++ b/js/8号影院.js @@ -0,0 +1,22 @@ +var rule={ +title:'8号影院', + host:'http://www.8hysw.com', + // homeUrl:'/', + url:'/frim/fyclass-fypage.html', + searchUrl:'/search.php', +searchable:2,//是否启用全局搜索, +quickSearch:0,//是否启用快速搜索, +filterable:0,//是否启用分类筛选, +class_name:'电影&电视剧&综艺&动漫&日韩剧&国产剧&欧美剧&港台剧', + class_url:'1&2&3&4&16&13&15&14', +play_parse:true, +lazy:'', +limit:6, +tab_exclude:'本周热门|最近更新', +推荐:'.stui-pannel_bd;.stui-vodlist li;h4&&Text;.lazyload&&data-original;.text-right&&Text;a&&href', +double:true, // 推荐内容是否双层定位 +一级:'.stui-vodlist.clearfix&&li;a&&title;.lazyload&&data-original;.text-right&&Text;a&&href', +二级:{"title":"h1&&Text;.stui-content__detail&&Text","img":".lazyload&&data-original","desc":".data:eq(0)&&Text;.data:eq(1)&&Text;.data:eq(2)&&Text;.data:eq(3)&&Text","content":".desc&&Text","tabs":".stui-pannel__head.bottom-line.active.clearfix h3","lists":".stui-content__playlist:eq(#id) li"}, +搜索:'*', + +} \ No newline at end of file diff --git a/js/KUBO影视.js b/js/KUBO影视.js new file mode 100644 index 00000000..fa644a15 --- /dev/null +++ b/js/KUBO影视.js @@ -0,0 +1,25 @@ +var rule = { + title:'KUBO影视', + host:'https://123kubo.tv', + // homeUrl:'/', + url:'/show/fyclass/page/fypage.html', + searchUrl:'/search/page/fypage/wd/**.html', + searchable:2,//是否启用全局搜索, + quickSearch:0,//是否启用快速搜索, + filterable:0,//是否启用分类筛选, + headers:{//网站的请求头,完整支持所有的,常带ua和cookies + 'User-Agent':'MOBILE_UA', + // "Cookie": "searchneed=ok" + }, + class_name:'电影&电视剧&综艺&动漫', + class_url:'1&2&3&4', + //class_parse:'.myui-panel-box&&ul&&li;a&&Text;a&&href;/v/(.*)/', + play_parse:true, + lazy:'', + limit:6, + 推荐:'ul.hl-vod-list;li;a&&title;.hl-item-thumb.hl-lazy&&data-original;.hl-pic-text&&Text;a&&href', + double:true, // 推荐内容是否双层定位 + 一级:'.hl-list-item;a&&title;.hl-item-thumb.hl-lazy&&data-original;.hl-pic-text&&Text;a&&href', + 二级:{"title":".hl-item-thumb.hl-lazy&&title;.hl-full-box&&ul li:eq(6)&&Text","img":".hl-item-thumb.hl-lazy&&data-original","desc":".hl-full-box&&ul&&li:eq(1)&&Text;.hl-full-box&&ul&&li:eq(2)&&Text;.hl-full-box&&ul&&li:eq(3)&&Text","content":".hl-col-xs-12.blurb&&Text","tabs":".hl-plays-from:eq(0) a","lists":".hl-plays-list:eq(#id) li"}, + 搜索:'.hl-item-div;a&&title;.hl-item-thumb&&data-original;.hl-lc-1&&Text;a&&href;.text-muted:eq(-1)&&Text', +} diff --git a/js/TV蜂.js b/js/TV蜂.js new file mode 100644 index 00000000..21b14cf5 --- /dev/null +++ b/js/TV蜂.js @@ -0,0 +1,25 @@ + +var rule = { + title:'TV蜂', + host:'https://www.tvfeng.net', + // homeUrl:'/', + url:'/tvfenshow/fyclass--------fypage---.html', + searchUrl:'/tvfensearch/**----------fypage---.html', + searchable:2,//是否启用全局搜索, + quickSearch:0,//是否启用快速搜索, + filterable:0,//是否启用分类筛选, + headers:{//网站的请求头,完整支持所有的,常带ua和cookies + 'User-Agent':'MOBILE_UA', + // "Cookie": "searchneed=ok" + }, + class_name:'电影&电视剧&综艺&动漫', + class_url:'1&2&3&4', + play_parse:true, + lazy:'', + limit:6, + 推荐:'.module-list;.module-items&&.module-item;a&&title;img&&data-src;.module-item-text&&Text;a&&href', + double:true, // 推荐内容是否双层定位 + 一级:'.module-items .module-item;a&&title;img&&data-src;.module-item-text&&Text;a&&href', + 二级:{"title":"h1&&Text;.tag-link&&Text","img":".module-item-pic&&img&&data-src","desc":".video-info-items:eq(0)&&Text;.video-info-items:eq(3)&&Text;.video-info-items:eq(2)&&Text;.video-info-items:eq(1)&&Text","content":".vod_content&&Text","tabs":".module-tab-item","lists":".module-player-list:eq(#id)&&.scroll-content&&a"}, + 搜索:'.module-items .module-search-item;h3&&Text;img&&data-src;.video-serial&&Text;a&&href', +} diff --git a/js/if101[飞].js b/js/if101[飞].js new file mode 100644 index 00000000..21bff1dd --- /dev/null +++ b/js/if101[飞].js @@ -0,0 +1,24 @@ +var rule={ + title:'if101', + host:'https://www.oulevod.tv', + // homeUrl:'/', + url:'/index.php/vod/show/id/fyclass/page/fypage.html', + searchUrl:'/index.php/vod/search.html?wd=**', + searchable:2,//是否启用全局搜索, + quickSearch:0,//是否启用快速搜索, + filterable:0,//是否启用分类筛选, + headers:{//网站的请求头,完整支持所有的,常带ua和cookies + 'User-Agent':'MOBILE_UA', + // "Cookie": "searchneed=ok" + }, + class_parse:'.conch-nav&&ul&&li;a&&Text;a&&href;./(\\d+).html', + cate_exclude:'', + play_parse:true, + lazy:'', + limit:6, + 推荐:'body&&.hl-list-wrap;ul&&li;a&&title;.hl-lazy&&data-original;.hl-pic-text&&Text;a&&href', + double:true, // 推荐内容是否双层定位 + 一级:'.hl-vod-list&&li;a&&title;.hl-lazy&&data-original;.hl-pic-text&&Text;a&&href', + 二级:{"title":".hl-dc-title&&Text;.hl-col-xs-12&&em&&.hl-text-muted:eq(0)&&Text","img":".hl-lazy&&data-original","desc":".hl-col-xs-12&&em&&.hl-text-muted:eq(-2)&&Text;.hl-col-xs-12&&em&&.hl-text-muted:eq(1)&&Text;.hl-col-xs-12&&em&&.hl-text-muted:eq(2)&&Text","content":".hl-content-text&&Text","tabs":".hl-plays-wrap","lists":".hl-plays-list:eq(#id) li"}, + 搜索:'.hl-list-wrap&&ul&&li;h3&&Text;.hl-lazy&&data-original;.hl-item-title:eq(0)&&Text;a&&href', +} \ No newline at end of file diff --git a/js/双十电影.js b/js/双十电影.js new file mode 100644 index 00000000..cea09dca --- /dev/null +++ b/js/双十电影.js @@ -0,0 +1,14 @@ +muban.首图2.推荐 = 'ul.stui-vodlist.clearfix;li;a&&title;.lazyload&&data-original;.pic-text&&Text;a&&href'; +muban.首图2.二级.content = '.stui-pannel_bd p:eq(0)'; +muban.首图2.二级.desc = ';;.stui-content__detail p:eq(0);.stui-content__detail p:eq(1);.stui-content__detail p:eq(2)' +muban.首图2.二级.tabs = '.stui-pannel__head.bottom-line.active.clearfix h3'; +var rule = Object.assign(muban.首图2,{ +title:'双十电影', +host:'https://www.1010dy3.com', +url:'/show/fyclass/page/fypage/', +searchUrl:'/search/page/fypage/wd/**/', +class_name:'电影&电视剧&动漫&综艺', +class_url:'1&2&3&4', +tab_exclude:'为你|榜单', +搜索:'ul.stui-vodlist__media&&li;a&&title;.lazyload&&data-original;.text-muted&&Text;a&&href;.text-muted:eq(-1)&&Text', +}); diff --git a/js/小品网.js b/js/小品网.js new file mode 100644 index 00000000..a3878288 --- /dev/null +++ b/js/小品网.js @@ -0,0 +1,23 @@ +var rule = { + title:'小品网', + host:'http://www.xiaopin.tv', + url:'/?cate=fyclass&page=fypage', + searchUrl:'/search.php?q=**', + searchable:2, + quickSearch:0, + filterable:0, + headers:{ + 'User-Agent':'MOBILE_UA' + }, + timeout:5000, + class_name:'小品&相声&二人转&春晚小品', + class_url:'2&1&3&14', + play_parse:true, + lazy:'', + limit:6, + double:true, + 推荐:'.itemlist;ul&&li;.itemname&&a&&Text;.itemimg img&&src;*;*', + 一级:'.catecon&&ul&&li;.catename&&a&&Text;img&&src;.icoplay&&Text;a&&href', + 二级:'*', + 搜索:'*', +} \ No newline at end of file diff --git a/js/尘落影视.js b/js/尘落影视.js new file mode 100644 index 00000000..551ccd53 --- /dev/null +++ b/js/尘落影视.js @@ -0,0 +1,23 @@ +var rule={ + title:'尘落影视', + host:'http://v.ftixkrv.cn', + url:'/whole/fyclass_______0_addtime_fypage.html', + searchUrl:'/?c=search&wd=**&sort=addtime&order=desc&page=fypage', + searchable:2,//是否启用全局搜索, + quickSearch:0,//是否启用快速搜索, + filterable:0,//是否启用分类筛选, + headers:{//网站的请求头,完整支持所有的,常带ua和cookies + 'User-Agent':'PC_UA', + // "Cookie": "searchneed=ok" + }, + class_name:'电影&电视剧&综艺&动漫', + class_url:'1&2&4&3', + cate_exclude:'全网资源', + play_parse:true, + lazy:'', + limit:6, + 推荐:'.movie-item-in;a&&title;img&&src;em&&Text;a&&href', + 一级:'.movie-item-in;a&&title;img&&src;em&&Text;a&&href', + 二级:{"title":"h1&&Text;.table-striped tr:eq(2)&&Text","img":".img-thumbnail&&src","desc":";;.table-striped tr:eq(3)&&Text;.table-striped tr:eq(1)&&Text;.table-striped tr:eq(0)&&Text","content":".movie-introduce&&Text","tabs":".nav.nav-tabs li a","lists":".tab-pane.active:eq(#id) div a"}, + 搜索:'.movie-item-in;a&&title;img&&src;em&&Text;a&&href', +} \ No newline at end of file diff --git a/js/抓饭体育.js b/js/抓饭体育.js new file mode 100644 index 00000000..aefc262a --- /dev/null +++ b/js/抓饭体育.js @@ -0,0 +1,29 @@ +// 道长 drpy仓库 https://gitcode.net/qq_32394351/dr_py +// drpy安卓本地搭建说明 https://gitcode.net/qq_32394351/dr_py/-/blob/master/%E5%AE%89%E5%8D%93%E6%9C%AC%E5%9C%B0%E6%90%AD%E5%BB%BA%E8%AF%B4%E6%98%8E.md +// Pluto Player官方TG https://t.me/PlutoPlayer +// Pluto Player官方TG https://t.me/PlutoPlayerChannel + +var rule = { + title:'抓饭体育', + host:'https://www.zhuafan.tech', + url:'/sports-home/category/fyclass', + class_name:'全部&足球&篮球&羽乒&台球&棒球&户外&搏击&综合&棋盘&电竞&网球&排球&聊天&原声', + class_url:'all&Football&Basketball&Badminton&Billiards&Baseball&Outdoors&Wrestling&Others&Boardgame&Popular&Tennis&Volleyball&Chat&Acoustic', + homeUrl:'/sports-home/category/all',//网站的首页链接,用于分类获取和推荐获取 + detailUrl:'https://m.zhuafan.tech/fyid',//二级详情拼接链接(json格式用) + searchUrl:'/live-search/search/query/data?keyword=**&page=fypage&num=&searchType=all&uid=null&from=pc', + searchable:2, + quickSearch:0, + headers:{ + 'User-Agent':'PC_UA' + }, + limit:6, + timeout:5000, + play_parse:true, + lazy:'', + double:false, + 推荐:'*', + 一级:'json:data;cname;imageUrl;uname;id', + 二级:'*', + 搜索:'json:cObj.cList;*;*;*;_id', +} \ No newline at end of file diff --git a/js/斗鱼直播.js b/js/斗鱼直播.js new file mode 100644 index 00000000..f35925a8 --- /dev/null +++ b/js/斗鱼直播.js @@ -0,0 +1,29 @@ +// 道长 drpy仓库 https://gitcode.net/qq_32394351/dr_py +// drpy安卓本地搭建说明 https://gitcode.net/qq_32394351/dr_py/-/blob/master/%E5%AE%89%E5%8D%93%E6%9C%AC%E5%9C%B0%E6%90%AD%E5%BB%BA%E8%AF%B4%E6%98%8E.md +// Pluto Player官方TG https://t.me/PlutoPlayer +// Pluto Player官方TG https://t.me/PlutoPlayerChannel + +var rule = { + title:'斗鱼直播', + host:'https://www.douyu.com', + homeUrl:'/japi/weblist/apinc/recLabelList?',//网站的首页链接,用于分类获取和推荐获取 + url:'/gapi/rkc/directory/mixList/fyclass/fypage', + class_name:'一起看&网游竞技&单机热游&手游休闲&娱乐天地&科技文化&语音互动&语音直播&正能量&颜值&音乐&舞蹈&二次元&户外&美食&互动交友&趣生活&数码科技&文化&科普&社会人文&汽车&纪录片&斗鱼购物&交友&电台&一起玩&音乐之声&正能量&英雄联盟&热门游戏&DOTA2&穿越火线&CFHD&DNF&炉石传说&CS:GO&逆战&lol云顶之弈&魔兽争霸&魔兽怀旧服&网易游戏&守望先锋&DOTA&魔兽世界&天涯明月刀&三国杀&主机游戏&永劫无间&生死狙击2&迷失ARK&艾尔登法环&逃离塔科夫&V Rising&海上狼人杀&怀旧游戏&王者荣耀&和平精英&火影忍者&LOL手游&金铲铲之战&重返帝国&COD手游&哈利波特:魔法觉醒&CF手游&欢乐斗地主&原神&天刀手游&棋牌娱乐&欢乐麻将&新游中心&QQ飞车&阴阳师&热门手游', + class_url:'2_208&1_1&1_15&1_9&1_2&1_11&1_20&1_18&1_13&2_201&2_175&2_1008&2_174&2_124&2_194&2_1555&2_1097&2_134&2_195&2_204&2_1162&2_136&2_514&2_1203&2_1221&2_1556&2_1575&2_910&2_250&2_1&2_270&2_3&2_33&2_1997&2_40&2_2&2_6&2_46&2_917&2_55&2_1055&2_3567&2_148&2_217&2_5&2_59&2_14&2_19&2_1227&2_1781&2_3528&2_3406&2_1024&2_3684&2_3556&2_26&2_181&2_350&2_196&2_1920&2_2556&2_2915&2_767&2_1192&2_178&2_416&2_1223&2_911&2_113&2_451&2_229&2_331&2_240&2_30', + detailUrl:'/fyid',//二级详情拼接链接(json格式用) + searchUrl:'/japi/search/api/searchShow?kw=**&page=fypage&pageSize=20', + searchable:2, + quickSearch:0, + headers:{ + 'User-Agent':'PC_UA' + }, + timeout:5000, + limit:8, + play_parse:true, + lazy:'', + double:true, + 推荐:'json:data.list;room;*;cover;*;*', + 一级:'json:data.rl;rn;rs16;nn;rid', + 二级:'*', + 搜索:'json:data.relateShow;roomName;roomSrc;nickName;*', +} \ No newline at end of file diff --git a/js/爱迪影视.js b/js/爱迪影视.js new file mode 100644 index 00000000..3a71dffd --- /dev/null +++ b/js/爱迪影视.js @@ -0,0 +1,19 @@ +var rule={ + title:'爱迪影视', + host:'https://aidi.tv', + url:'/show/fyclass--------fypage---.html', + searchUrl:'/vsearch/-------------.html?wd=**&submit=', + searchable:2, + quickSearch:0, + filterable:0, + headers:{ 'User-Agent':'MOBILE_UA', }, + class_name:'电影&电视剧&综艺&动漫', + class_url:'dianying&lianxuju&zongyi&dongman', + tab_exclude:'app专用|VIP线路', + play_parse:true, + double:true, + 推荐:'body .vodlist.vodlist_wi;li;a&&title;.vodlist_thumb.lazyload&&data-original;.pic-text&&Text;a&&href', + 一级:'.vodlist.vodlist_wi&&li;a&&title;.lazyload&&data-original;.pic-text&&Text;a&&href', + 二级:{"title":"h2&&Text;.data:eq(1)&&Text","img":".lazyload&&data-original","desc":";.content_min li:eq(1)&&Text;;.content_min li:eq(2)&&Text;.content_min li:eq(3)&&Text;.data:eq(4)&&Text","content":".context.clearfix&&Text","tabs":".play_source_tab&&a","lists":".content_playlist:eq(#id) li"}, + 搜索:'.searchlist_img;a&&title;.vodlist_thumb.lazyload&&data-original;.pic-text&&Text;a&&href', +} \ No newline at end of file diff --git a/js/蛋蛋赞.js b/js/蛋蛋赞.js new file mode 100644 index 00000000..02690529 --- /dev/null +++ b/js/蛋蛋赞.js @@ -0,0 +1,24 @@ +var rule={ + title:'蛋蛋赞', + host:'https://www.dandanzan10.top', + // homeUrl:'/', + url:'/fyclass/index_fypage.html[/fyclass/index.html]', + //searchUrl:'/search/**/', + searchable:2,//是否启用全局搜索, + quickSearch:0,//是否启用快速搜索, + filterable:0,//是否启用分类筛选, + headers:{//网站的请求头,完整支持所有的,常带ua和cookies + 'User-Agent':'MOBILE_UA', + // "Cookie": "searchneed=ok" + }, + class_name:'电视剧&电影&综艺&动漫', + class_url:'dianshiju&dianying&zongyi&dongman', + + 推荐:'div.lists-content;li;h2&&Text;.thumb&&src;.note&&Text;a&&href', + + 一级:'.lists-content:eq(1)&&ul&&li;img&&alt;.thumb&&src;.note&&Text;a&&href', + + double:true, // 推荐内容是否双层定位 + 二级:{"title":"h1&&Text;.product-excerpt:eq(2)&&Text","img":".thumb&&src","desc":";;.product-excerpt:eq(3)&&Text;.product-excerpt:eq(1)&&Text;.product-excerpt:eq(0)&&Text","content":".product-excerpt:eq(5)&&Text","tabs":".playlists dl dt","lists":".play-div-oa:eq(#id) li"}, + 搜索:'ul.img-list.clearfix&&li;a&&title;.lazyload&&data-original;.pic-text&&Text;a&&href', +} \ No newline at end of file diff --git a/js/豆瓣.js b/js/豆瓣.js index 5a803a92..4bb0723e 100644 --- a/js/豆瓣.js +++ b/js/豆瓣.js @@ -17,8 +17,8 @@ var rule = { "User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36 MicroMessenger/7.0.9.501 NetType/WIFI MiniProgramEnv/Windows WindowsWechat" }, timeout:5000, - class_name:'我的豆瓣&热门电影&热播剧集&热播综艺&电影筛选&电视筛选&电影榜单&电视榜单', - class_url:'interests&hot_gaia&tv_hot&show_hot&movie&tv&rank_list_movie&rank_list_tv', + class_name:'热门电影&热播剧集&热播综艺&电影筛选&电视筛选&电影榜单&电视榜单', + class_url:'hot_gaia&tv_hot&show_hot&movie&tv&rank_list_movie&rank_list_tv', filter:{'interests': [{'key': 'status', 'name': '状态', 'value': [{'n': '想看', 'v': 'mark'}, {'n': '在看', 'v': 'doing'}, {'n': '看过', 'v': 'done'}]}, {'key': 'subtype_tag', 'name': '形式', 'value': [{'n': '全部', 'v': ''}, {'n': '电影', 'v': 'movie'}, {'n': '电视', 'v': 'tv'}]}, {'key': 'year_tag', 'name': '年代', 'value': [{'n': '全部', 'v': '全部'}, {'n': '2022', 'v': '2022'}, {'n': '2021', 'v': '2021'}, {'n': '2020', 'v': '2020'}, {'n': '2019', 'v': '2019'}, {'n': '2010年代', 'v': '2010年代'}, {'n': '2000年代', 'v': '2000年代'}, {'n': '90年代', 'v': '90年代'}, {'n': '80年代', 'v': '80年代'}, {'n': '70年代', 'v': '70年代'}, {'n': '60年代', 'v': '60年代'}, {'n': '更早', 'v': '更早'}]}], 'hot_gaia': [{'key': 'sort', 'name': '排序', 'value': [{'n': '热度', 'v': 'recommend'}, {'n': '最新', 'v': 'time'}, {'n': '评分', 'v': 'rank'}]}, {'key': 'area', 'name': '地区', 'value': [{'n': '全部', 'v': '全部'}, {'n': '华语', 'v': '华语'}, {'n': '欧美', 'v': '欧美'}, {'n': '韩国', 'v': '韩国'}, {'n': '日本', 'v': '日本'}]}], 'tv_hot': [{'key': 'type', 'name': '分类', 'value': [{'n': '综合', 'v': 'tv_hot'}, {'n': '国产剧', 'v': 'tv_domestic'}, {'n': '欧美剧', 'v': 'tv_american'}, {'n': '日剧', 'v': 'tv_japanese'}, {'n': '韩剧', 'v': 'tv_korean'}, {'n': '动画', 'v': 'tv_animation'}]}], 'show_hot': [{'key': 'type', 'name': '分类', 'value': [{'n': '综合', 'v': 'show_hot'}, {'n': '国内', 'v': 'show_domestic'}, {'n': '国外', 'v': 'show_foreign'}]}], 'movie': [{'key': '类型', 'name': '类型', 'value': [{'n': '全部类型', 'v': ''}, {'n': '喜剧', 'v': '喜剧'}, {'n': '爱情', 'v': '爱情'}, {'n': '动作', 'v': '动作'}, {'n': '科幻', 'v': '科幻'}, {'n': '动画', 'v': '动画'}, {'n': '悬疑', 'v': '悬疑'}, {'n': '犯罪', 'v': '犯罪'}, {'n': '惊悚', 'v': '惊悚'}, {'n': '冒险', 'v': '冒险'}, {'n': '音乐', 'v': '音乐'}, {'n': '历史', 'v': '历史'}, {'n': '奇幻', 'v': '奇幻'}, {'n': '恐怖', 'v': '恐怖'}, {'n': '战争', 'v': '战争'}, {'n': '传记', 'v': '传记'}, {'n': '歌舞', 'v': '歌舞'}, {'n': '武侠', 'v': '武侠'}, {'n': '情色', 'v': '情色'}, {'n': '灾难', 'v': '灾难'}, {'n': '西部', 'v': '西部'}, {'n': '纪录片', 'v': '纪录片'}, {'n': '短片', 'v': '短片'}]}, {'key': '地区', 'name': '地区', 'value': [{'n': '全部地区', 'v': ''}, {'n': '华语', 'v': '华语'}, {'n': '欧美', 'v': '欧美'}, {'n': '韩国', 'v': '韩国'}, {'n': '日本', 'v': '日本'}, {'n': '中国大陆', 'v': '中国大陆'}, {'n': '美国', 'v': '美国'}, {'n': '中国香港', 'v': '中国香港'}, {'n': '中国台湾', 'v': '中国台湾'}, {'n': '英国', 'v': '英国'}, {'n': '法国', 'v': '法国'}, {'n': '德国', 'v': '德国'}, {'n': '意大利', 'v': '意大利'}, {'n': '西班牙', 'v': '西班牙'}, {'n': '印度', 'v': '印度'}, {'n': '泰国', 'v': '泰国'}, {'n': '俄罗斯', 'v': '俄罗斯'}, {'n': '加拿大', 'v': '加拿大'}, {'n': '澳大利亚', 'v': '澳大利亚'}, {'n': '爱尔兰', 'v': '爱尔兰'}, {'n': '瑞典', 'v': '瑞典'}, {'n': '巴西', 'v': '巴西'}, {'n': '丹麦', 'v': '丹麦'}]}, {'key': 'sort', 'name': '排序', 'value': [{'n': '近期热度', 'v': 'T'}, {'n': '首映时间', 'v': 'R'}, {'n': '高分优先', 'v': 'S'}]}, {'key': '年代', 'name': '年代', 'value': [{'n': '全部年代', 'v': ''}, {'n': '2022', 'v': '2022'}, {'n': '2021', 'v': '2021'}, {'n': '2020', 'v': '2020'}, {'n': '2019', 'v': '2019'}, {'n': '2010年代', 'v': '2010年代'}, {'n': '2000年代', 'v': '2000年代'}, {'n': '90年代', 'v': '90年代'}, {'n': '80年代', 'v': '80年代'}, {'n': '70年代', 'v': '70年代'}, {'n': '60年代', 'v': '60年代'}, {'n': '更早', 'v': '更早'}]}], 'tv': [{'key': '类型', 'name': '类型', 'value': [{'n': '不限', 'v': ''}, {'n': '电视剧', 'v': '电视剧'}, {'n': '综艺', 'v': '综艺'}]}, {'key': '电视剧形式', 'name': '电视剧形式', 'value': [{'n': '不限', 'v': ''}, {'n': '喜剧', 'v': '喜剧'}, {'n': '爱情', 'v': '爱情'}, {'n': '悬疑', 'v': '悬疑'}, {'n': '动画', 'v': '动画'}, {'n': '武侠', 'v': '武侠'}, {'n': '古装', 'v': '古装'}, {'n': '家庭', 'v': '家庭'}, {'n': '犯罪', 'v': '犯罪'}, {'n': '科幻', 'v': '科幻'}, {'n': '恐怖', 'v': '恐怖'}, {'n': '历史', 'v': '历史'}, {'n': '战争', 'v': '战争'}, {'n': '动作', 'v': '动作'}, {'n': '冒险', 'v': '冒险'}, {'n': '传记', 'v': '传记'}, {'n': '剧情', 'v': '剧情'}, {'n': '奇幻', 'v': '奇幻'}, {'n': '惊悚', 'v': '惊悚'}, {'n': '灾难', 'v': '灾难'}, {'n': '歌舞', 'v': '歌舞'}, {'n': '音乐', 'v': '音乐'}]}, {'key': '综艺形式', 'name': '综艺形式', 'value': [{'n': '不限', 'v': ''}, {'n': '真人秀', 'v': '真人秀'}, {'n': '脱口秀', 'v': '脱口秀'}, {'n': '音乐', 'v': '音乐'}, {'n': '歌舞', 'v': '歌舞'}]}, {'key': '地区', 'name': '地区', 'value': [{'n': '全部地区', 'v': ''}, {'n': '华语', 'v': '华语'}, {'n': '欧美', 'v': '欧美'}, {'n': '国外', 'v': '国外'}, {'n': '韩国', 'v': '韩国'}, {'n': '日本', 'v': '日本'}, {'n': '中国大陆', 'v': '中国大陆'}, {'n': '中国香港', 'v': '中国香港'}, {'n': '美国', 'v': '美国'}, {'n': '英国', 'v': '英国'}, {'n': '泰国', 'v': '泰国'}, {'n': '中国台湾', 'v': '中国台湾'}, {'n': '意大利', 'v': '意大利'}, {'n': '法国', 'v': '法国'}, {'n': '德国', 'v': '德国'}, {'n': '西班牙', 'v': '西班牙'}, {'n': '俄罗斯', 'v': '俄罗斯'}, {'n': '瑞典', 'v': '瑞典'}, {'n': '巴西', 'v': '巴西'}, {'n': '丹麦', 'v': '丹麦'}, {'n': '印度', 'v': '印度'}, {'n': '加拿大', 'v': '加拿大'}, {'n': '爱尔兰', 'v': '爱尔兰'}, {'n': '澳大利亚', 'v': '澳大利亚'}]}, {'key': 'sort', 'name': '排序', 'value': [{'n': '近期热度', 'v': 'T'}, {'n': '首播时间', 'v': 'R'}, {'n': '高分优先', 'v': 'S'}]}, {'key': '年代', 'name': '年代', 'value': [{'n': '全部', 'v': ''}, {'n': '2022', 'v': '2022'}, {'n': '2021', 'v': '2021'}, {'n': '2020', 'v': '2020'}, {'n': '2019', 'v': '2019'}, {'n': '2010年代', 'v': '2010年代'}, {'n': '2000年代', 'v': '2000年代'}, {'n': '90年代', 'v': '90年代'}, {'n': '80年代', 'v': '80年代'}, {'n': '70年代', 'v': '70年代'}, {'n': '60年代', 'v': '60年代'}, {'n': '更早', 'v': '更早'}]}, {'key': '平台', 'name': '平台', 'value': [{'n': '全部', 'v': ''}, {'n': '腾讯视频', 'v': '腾讯视频'}, {'n': '爱奇艺', 'v': '爱奇艺'}, {'n': '优酷', 'v': '优酷'}, {'n': '湖南卫视', 'v': '湖南卫视'}, {'n': 'Netflix', 'v': 'Netflix'}, {'n': 'HBO', 'v': 'HBO'}, {'n': 'BBC', 'v': 'BBC'}, {'n': 'NHK', 'v': 'NHK'}, {'n': 'CBS', 'v': 'CBS'}, {'n': 'NBC', 'v': 'NBC'}, {'n': 'tvN', 'v': 'tvN'}]}], 'rank_list_movie': [{'key': '榜单', 'name': '榜单', 'value': [{'n': '实时热门电影', 'v': 'movie_real_time_hotest'}, {'n': '一周口碑电影榜', 'v': 'movie_weekly_best'}, {'n': '豆瓣电影Top250', 'v': 'movie_top250'}]}], 'rank_list_tv': [{'key': '榜单', 'name': '榜单', 'value': [{'n': '实时热门电视', 'v': 'tv_real_time_hotest'}, {'n': '华语口碑剧集榜', 'v': 'tv_chinese_best_weekly'}, {'n': '全球口碑剧集榜', 'v': 'tv_global_best_weekly'}, {'n': '国内口碑综艺榜', 'v': 'show_chinese_best_weekly'}, {'n': '国外口碑综艺榜', 'v': 'show_global_best_weekly'}]}]}, limit:20, play_parse:false, @@ -28,7 +28,7 @@ var rule = { lazy:'', // 推荐:'.list_item;img&&alt;img&&src;a&&Text;a&&data-float', 一级:'', - 一级:'js:let d=[];let douban=input.split("douban=")[1].split("&")[0];let douban_api_host="https://frodo.douban.com/api/v2";let miniapp_apikey="0ac44ae016490db2204ce0a042db2916";const count=30;function miniapp_request(path,query){try{let url=douban_api_host+path;query.apikey=miniapp_apikey;fetch_params.headers=oheaders;url=buildUrl(url,query);let html=fetch(url,fetch_params);return JSON.parse(html)}catch(e){print("发生了错误:"+e.message);return{}}}function cate_filter(d,douban){douban=douban||"";try{let res={};if(MY_CATE==="interests"){if(douban){let status=MY_FL.status||"mark";let subtype_tag=MY_FL.subtype_tag||"";let year_tag=MY_FL.year_tag||"全部";let path="/user/"+douban+"/interests";res=miniapp_request(path,{type:"movie",status:status,subtype_tag:subtype_tag,year_tag:year_tag,start:(MY_PAGE-1)*count,count:count})}else{return{}}}else if(MY_CATE==="hot_gaia"){let sort=MY_FL.sort||"recommend";let area=MY_FL.area||"全部";let path="/movie/"+MY_CATE;res=miniapp_request(path,{area:area,sort:sort,start:(MY_PAGE-1)*count,count:count})}else if(MY_CATE==="tv_hot"||MY_CATE==="show_hot"){let stype=MY_FL.type||MY_CATE;let path="/subject_collection/"+stype+"/items";res=miniapp_request(path,{start:(MY_PAGE-1)*count,count:count})}else if(MY_CATE.startsWith("rank_list")){let id=MY_CATE==="rank_list_movie"?"movie_real_time_hotest":"tv_real_time_hotest";id=MY_FL.榜单||id;let path="/subject_collection/"+id+"/items";res=miniapp_request(path,{start:(MY_PAGE-1)*count,count:count})}else{let path="/"+MY_CATE+"/recommend";let selected_categories;if(Object.keys(MY_FL).length>0){let sort=MY_FL.sort||"T";let tags=Object.Values(MY_FL).join(",");if(MY_CATE==="movie"){selected_categories={"类型":MY_FL.类型||"","地区":MY_FL.地区||""}}else{selected_categories={"类型":MY_FL.类型||"","形式":MY_FL.类型?MY_FL.类型+"地区":"","地区":MY_FL.地区||""}}}else{let sort="T";let tags="";if(MY_CATE==="movie"){selected_categories={"类型":"","地区":""}}else{selected_categories={"类型":"","形式":"","地区":""}}}let params={tags:tags,sort:sort,refresh:0,selected_categories:stringify(selected_categories),start:(MY_PAGE-1)*count,count:count};res=miniapp_request(path,params)}let result={page:MY_PAGE,pagecount:Math.ceil(res.total/count),limit:count,total:res.total};let items=[];if(/^rank_list|tv_hot|show_hot/.test(MY_CATE)){items=res["subject_collection_items"]}else if(MY_CATE==="interests"){res["interests"].forEach(function(it){items.push(it.subject)})}else{items=res.items}let lists=[];items.forEach(function(item){if(item.type==="movie"||item.type==="tv"){let rating=item.rating?item.rating.value:"";let rat_str=rating||"暂无评分";let title=item.title;let honor=item.honor_infos||[];let honor_str=honor.map(function(it){return it.title}).join("|");let vod_obj={vod_name:title!=="未知电影"?title:"暂不支持展示",vod_pic:item.pic.normal,vod_remarks:rat_str+" "+honor_str};let vod_obj_d={url:item.type+"$"+item.id,title:title!=="未知电影"?title:"暂不支持展示",pic_url:item.pic.normal,desc:rat_str+" "+honor_str};lists.push(vod_obj);d.push(vod_obj_d)}});result.list=lists;return result}catch(e){print(e.message)}return{}}let res=cate_filter(d);setResult2(res);', + 一级:'js:let d=[];let douban=input.split("douban=")[1].split("&")[0];let douban_api_host="https://frodo.douban.com/api/v2";let miniapp_apikey="0ac44ae016490db2204ce0a042db2916";const count=30;function miniapp_request(path,query){try{let url=douban_api_host+path;query.apikey=miniapp_apikey;fetch_params.headers=oheaders;url=buildUrl(url,query);let html=fetch(url,fetch_params);return JSON.parse(html)}catch(e){print("发生了错误:"+e.message);return{}}}function cate_filter(d,douban){douban=douban||"";try{let res={};if(MY_CATE==="interests"){if(douban){let status=MY_FL.status||"mark";let subtype_tag=MY_FL.subtype_tag||"";let year_tag=MY_FL.year_tag||"全部";let path="/user/"+douban+"/interests";res=miniapp_request(path,{type:"movie",status:status,subtype_tag:subtype_tag,year_tag:year_tag,start:(MY_PAGE-1)*count,count:count})}else{return{}}}else if(MY_CATE==="hot_gaia"){let sort=MY_FL.sort||"recommend";let area=MY_FL.area||"全部";let path="/movie/"+MY_CATE;res=miniapp_request(path,{area:area,sort:sort,start:(MY_PAGE-1)*count,count:count})}else if(MY_CATE==="tv_hot"||MY_CATE==="show_hot"){let stype=MY_FL.type||MY_CATE;let path="/subject_collection/"+stype+"/items";res=miniapp_request(path,{start:(MY_PAGE-1)*count,count:count})}else if(MY_CATE.startsWith("rank_list")){let id=MY_CATE==="rank_list_movie"?"movie_real_time_hotest":"tv_real_time_hotest";id=MY_FL.榜单||id;let path="/subject_collection/"+id+"/items";res=miniapp_request(path,{start:(MY_PAGE-1)*count,count:count})}else{let path="/"+MY_CATE+"/recommend";let selected_categories;let tags;let sort;if(Object.keys(MY_FL).length>0){sort=MY_FL.sort||"T";tags=Object.values(MY_FL).join(",");if(MY_CATE==="movie"){selected_categories={"类型":MY_FL.类型||"","地区":MY_FL.地区||""}}else{selected_categories={"类型":MY_FL.类型||"","形式":MY_FL.类型?MY_FL.类型+"地区":"","地区":MY_FL.地区||""}}}else{sort="T";tags="";if(MY_CATE==="movie"){selected_categories={"类型":"","地区":""}}else{selected_categories={"类型":"","形式":"","地区":""}}}let params={tags:tags,sort:sort,refresh:0,selected_categories:stringify(selected_categories),start:(MY_PAGE-1)*count,count:count};res=miniapp_request(path,params)}let result={page:MY_PAGE,pagecount:Math.ceil(res.total/count),limit:count,total:res.total};let items=[];if(/^rank_list|tv_hot|show_hot/.test(MY_CATE)){items=res["subject_collection_items"]}else if(MY_CATE==="interests"){res["interests"].forEach(function(it){items.push(it.subject)})}else{items=res.items}let lists=[];items.forEach(function(item){if(item.type==="movie"||item.type==="tv"){let rating=item.rating?item.rating.value:"";let rat_str=rating||"暂无评分";let title=item.title;let honor=item.honor_infos||[];let honor_str=honor.map(function(it){return it.title}).join("|");let vod_obj={vod_name:title!=="未知电影"?title:"暂不支持展示",vod_pic:item.pic.normal,vod_remarks:rat_str+" "+honor_str};let vod_obj_d={url:item.type+"$"+item.id,title:title!=="未知电影"?title:"暂不支持展示",pic_url:item.pic.normal,desc:rat_str+" "+honor_str};lists.push(vod_obj);d.push(vod_obj_d)}});result.list=lists;return result}catch(e){print(e.message)}return{}}let res=cate_filter(d);setResult2(res);', 二级:'', 搜索:'', } \ No newline at end of file diff --git a/lib/drpy.min.js b/lib/drpy.min.js index a524197f..b8e48a48 100644 --- a/lib/drpy.min.js +++ b/lib/drpy.min.js @@ -1 +1 @@ -import cheerio from"assets://js/lib/cheerio.min.js";import"assets://js/lib/crypto-js.js";import"./drT.js";function init_test(){console.log("init_test_start");console.log(RKEY);console.log(JSON.stringify(rule));console.log("init_test_end")}let rule={};const MOBILE_UA="Mozilla/5.0 (Linux; Android 11; M2007J3SC Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045714 Mobile Safari/537.36";const PC_UA="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36";const UA="Mozilla/5.0";const UC_UA="Mozilla/5.0 (Linux; U; Android 9; zh-CN; MI 9 Build/PKQ1.181121.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/12.5.5.1035 Mobile Safari/537.36";const IOS_UA="Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1";const RULE_CK="cookie";const CATE_EXCLUDE="首页|留言|APP|下载|资讯|新闻|动态";const TAB_EXCLUDE="猜你|喜欢|APP|下载|剧情|热播";const OCR_RETRY=3;const OCR_API="http://cms.nokia.press/parse/ocr";if(typeof MY_URL==="undefined"){var MY_URL}var RKEY;var fetch;var print;var log;var rule_fetch_params;var fetch_params;var oheaders;var _pdfh;var _pdfa;var _pd;const DOM_CHECK_ATTR=/(url|src|href|data-original|data-src)$/;const SELECT_REGEX=/:eq|:lt|:gt|#/g;const SELECT_REGEX_A=/:eq|:lt|:gt/g;if(typeof Object.assign!="function"){Object.assign=function(){var target=arguments[0];for(var i=1;ithis.length){return false}else{return this.indexOf(search,start)!==-1}}}if(!Array.prototype.includes){Object.defineProperty(Array.prototype,"includes",{value:function(searchElement,fromIndex){if(this==null){throw new TypeError('"this" is null or not defined')}var o=Object(this);var len=o.length>>>0;if(len===0){return false}var n=fromIndex|0;var k=Math.max(n>=0?n:len-Math.abs(n),0);while(k-1){let sp=parse.split("&&");option=sp[sp.length-1];sp.splice(sp.length-1);if(sp.length>1){for(let i in sp){if(!SELECT_REGEX.test(sp[i])){sp[i]=sp[i]+":eq(0)"}}}else{if(!SELECT_REGEX.test(sp[0])){sp[0]=sp[0]+":eq(0)"}}parse=sp.join(" ")}let result="";const $=eleFind?html.rr:cheerio.load(html);let ret=eleFind?parse==="*=*"||$(html.ele).is(parse)?html.ele:$(html.ele).find(parse):$(parse);if(option){if(option==="Text"){result=$(ret).text()}else if(option==="Html"){result=$(ret).html()}else{result=$(ret).attr(option);if(/style/.test(option.toLowerCase())&&/url\(/.test(result)){try{result=result.match(/url\((.*?)\)/)[1]}catch(e){}}}if(result&&base_url&&DOM_CHECK_ATTR.test(option)){if(/http/.test(result)){result=result.substr(result.indexOf("http"))}else{result=urljoin(base_url,result)}}}else{result=$(ret).toString()}return result},pdfa(html,parse){if(!parse||!parse.trim()){return[]}let eleFind=typeof html==="object";if(parse.indexOf("&&")>-1){let sp=parse.split("&&");for(let i in sp){if(!SELECT_REGEX_A.test(sp[i])&&i=OCR_RETRY){cookie=""}}catch(e){console.log(`第${cnt+1}次验证码提交失败:${e.message}`);if(cnt+1>=OCR_RETRY){cookie=""}}cnt+=1}return cookie}function setItem(k,v){local.set(RKEY,k,v);console.log(`规则${RKEY}设置${k} => ${v}`)}function getItem(k,v){return local.get(RKEY,k)||v}function clearItem(k){local.delete(RKEY,k)}function getHome(url){if(!url){return""}let tmp=url.split("//");url=tmp[0]+"//"+tmp[1].split("/")[0];try{url=decodeURIComponent(url)}catch(e){}return url}function buildUrl(url,obj){obj=obj||{};if(url.indexOf("?")<0){url+="?"}let param_list=[];let keys=Object.keys(obj);keys.forEach(it=>{param_list.push(it+"="+obj[it])});let prs=param_list.join("&");if(keys.length>0&&!url.endsWith("?")){url+="&"}url+=prs;return url}function require(url){eval(request(url))}function request(url,obj,ocr_flag){ocr_flag=ocr_flag||false;if(typeof obj==="undefined"||!obj||obj==={}){if(!fetch_params||!fetch_params.headers){let headers={"User-Agent":MOBILE_UA};if(rule.headers){Object.assign(headers,rule.headers)}fetch_params.headers=headers}if(!fetch_params.headers.Referer){fetch_params.headers.Referer=getHome(url)}obj=fetch_params}else{let headers=obj.headers||{};let keys=Object.keys(headers).map(it=>it.toLowerCase());if(!keys.includes("user-agent")){headers["User-Agent"]=MOBILE_UA}if(!keys.includes("referer")){headers["Referer"]=getHome(url)}obj.headers=headers}if(rule.encoding&&rule.encoding!=="utf-8"&&!ocr_flag){if(!obj.headers.hasOwnProperty("Content-Type")){obj.headers["Content-Type"]="text/html; charset="+rule.encoding}}if(typeof obj.headers.body!="undefined"&&obj.headers.body&&typeof obj.headers.body==="string"){let data={};obj.headers.body.split("&").forEach(it=>{data[it.split("=")[0]]=it.split("=")[1]});obj.data=data;delete obj.headers.body}if(!url){return obj.withHeaders?"{}":""}if(obj.toBase64){obj.buffer=2;delete obj.toBase64}console.log(JSON.stringify(obj.headers));console.log("request:"+url);let res=req(url,obj);let html=res.content||"";if(obj.withHeaders){let htmlWithHeaders=res.headers;htmlWithHeaders.body=html;return JSON.stringify(htmlWithHeaders)}else{return html}}fetch=request;print=function(data){data=data||"";if(typeof data!=="string"){try{data=JSON.stringify(data)}catch(e){console.log("print:"+e.message)}}console.log(data)};log=print;function checkHtml(html,url,obj){if(/\?btwaf=/.test(html)){let btwaf=html.match(/btwaf(.*?)"/)[1];url=url.split("#")[0]+"?btwaf"+btwaf;html=request(url,obj)}return html}function getCode(url,obj){let html=request(url,obj);html=checkHtml(html,url,obj);return html}function getHtml(url){let obj={};if(rule.headers){obj.headers=rule.headers}let cookie=getItem(RULE_CK,"");if(cookie){if(obj.headers&&!Object.keys(obj.headers).map(it=>it.toLowerCase()).includes("cookie")){obj.headers["Cookie"]=cookie}else if(!obj.headers){obj.headers={Cookie:cookie}}}let html=getCode(url,obj);return html}function homeParse(homeObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let classes=[];if(homeObj.class_name&&homeObj.class_url){let names=homeObj.class_name.split("&");let urls=homeObj.class_url.split("&");let cnt=Math.min(names.length,urls.length);for(let i=0;i=3){try{let html=getHtml(homeObj.MY_URL);if(html){homeHtmlCache=html;let list=_pdfa(html,p[0]);if(list&&list.length>0){list.forEach((it,idex)=>{try{let name=_pdfh(it,p[1]);if(homeObj.cate_exclude&&new RegExp(homeObj.cate_exclude).test(name)){return}let url=_pd(it,p[2]);if(p.length>3&&p[3]){let exp=new RegExp(p[3]);url=url.match(exp)[1]}classes.push({type_id:url.trim(),type_name:name.trim()})}catch(e){console.log(`分类列表定位第${idex}个元素正常报错:${e.message}`)}})}}}catch(e){console.log(e.message)}}}classes=classes.filter(it=>!homeObj.cate_exclude||!new RegExp(homeObj.cate_exclude).test(it.type_name));let resp={class:classes};if(homeObj.filter){resp.filters=homeObj.filter}console.log(JSON.stringify(resp));return JSON.stringify(resp)}function homeVodParse(homeVodObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let d=[];MY_URL=homeVodObj.homeUrl;console.log(MY_URL);let p=homeVodObj.推荐;if(p==="*"&&rule.一级){p=rule.一级;homeVodObj.double=false}if(!p||typeof p!=="string"){return"{}"}p=p.trim();if(p.startsWith("js:")){const TYPE="home";var input=MY_URL;const HOST=rule.host;eval(p.replace("js:",""));d=VODS}else{p=p.split(";");if(!homeVodObj.double&&p.length<5){return"{}"}else if(homeVodObj.double&&p.length<6){return"{}"}let _ps=parseTags.getParse(p[0]);_pdfa=_ps.pdfa;_pdfh=_ps.pdfh;_pd=_ps.pd;let is_json=p[0].startsWith("json:");p[0]=p[0].replace(/^(jsp:|json:|jq:)/,"");let html=homeHtmlCache||getHtml(MY_URL);homeHtmlCache=undefined;if(is_json){html=dealJson(html)}try{console.log("double:"+homeVodObj.double);if(homeVodObj.double){let items=_pdfa(html,p[0]);for(let item of items){let items2=_pdfa(item,p[1]);for(let item2 of items2){try{let title=_pdfh(item2,p[2]);let img="";try{img=_pd(item2,p[3])}catch(e){}let desc=_pdfh(item2,p[4]);let links=[];for(let p5 of p[5].split("+")){let link=!homeVodObj.detailUrl?_pd(item2,p5,MY_URL):_pdfh(item2,p5);links.push(link)}let vod={vod_name:title,vod_pic:img,vod_remarks:desc,vod_id:links.join("$")};d.push(vod)}catch(e){console.log("首页列表处理发生错误:"+e.message)}}}}else{let items=_pdfa(html,p[0]);for(let item of items){try{let title=_pdfh(item,p[1]);let img="";try{img=_pd(item,p[2],MY_URL)}catch(e){}let desc=_pdfh(item,p[3]);let links=[];for(let p5 of p[4].split("+")){let link=!homeVodObj.detailUrl?_pd(item,p5,MY_URL):_pdfh(item,p5);links.push(link)}let vod={vod_name:title,vod_pic:img,vod_remarks:desc,vod_id:links.join("$")};d.push(vod)}catch(e){}}}}catch(e){}}return JSON.stringify({list:d})}function categoryParse(cateObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let p=cateObj.一级;if(!p||typeof p!=="string"){return"{}"}let d=[];let url=cateObj.url.replaceAll("fyclass",cateObj.tid);if(rule.filter_url){if(!/fyfilter/.test(url)){if(!url.endsWith("&")&&!rule.filter_url.startsWith("&")){url+="&"}url+=rule.filter_url}else{url=url.replace("fyfilter",rule.filter_url)}let fl=cateObj.filter?cateObj.extend:{};let new_url;new_url=cheerio.jinja2(url,{fl:fl});if(/object Object/.test(new_url)){new_url=drT.renderText(url,fl)}url=new_url}if(/fypage/.test(url)){if(url.includes("(")&&url.includes(")")){let url_rep=url.match(/.*?\((.*)\)/)[1];let cnt_page=url_rep.replaceAll("fypage",cateObj.pg);let cnt_pg=eval(cnt_page);url=url.replaceAll(url_rep,cnt_pg).replaceAll("(","").replaceAll(")","")}else{url=url.replaceAll("fypage",cateObj.pg)}}if(cateObj.pg===1&&url.includes("[")&&url.includes("]")){url=url.split("[")[1].split("]")[0]}MY_URL=url;console.log(MY_URL);p=p.trim();const MY_CATE=cateObj.tid;if(p.startsWith("js:")){var MY_FL=cateObj.extend;const TYPE="cate";var input=MY_URL;const MY_PAGE=cateObj.pg;var desc="";eval(p.trim().replace("js:",""));d=VODS}else{p=p.split(";");if(p.length<5){return"{}"}let _ps=parseTags.getParse(p[0]);_pdfa=_ps.pdfa;_pdfh=_ps.pdfh;_pd=_ps.pd;let is_json=p[0].startsWith("json:");p[0]=p[0].replace(/^(jsp:|json:|jq:)/,"");try{let html=getHtml(MY_URL);if(html){if(is_json){html=dealJson(html)}let list=_pdfa(html,p[0]);list.forEach(it=>{let links=p[4].split("+").map(p4=>{return!rule.detailUrl?_pd(it,p4,MY_URL):_pdfh(it,p4)});let link=links.join("$");let vod_id=rule.detailUrl?MY_CATE+"$"+link:link;d.push({vod_id:vod_id,vod_name:_pdfh(it,p[1]).replace(/\n|\t/g,"").trim(),vod_pic:_pd(it,p[2],MY_URL),vod_remarks:_pdfh(it,p[3]).replace(/\n|\t/g,"").trim()})})}}catch(e){console.log(e.message)}}return d.length<1?"{}":JSON.stringify({page:parseInt(cateObj.pg),pagecount:999,limit:20,total:999,list:d})}function searchParse(searchObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let d=[];if(!searchObj.searchUrl){return"{}"}let p=searchObj.搜索==="*"&&rule.一级?rule.一级:searchObj.搜索;if(!p||typeof p!=="string"){return"{}"}p=p.trim();let url=searchObj.searchUrl.replaceAll("**",searchObj.wd).replaceAll("fypage",searchObj.pg);MY_URL=url;console.log(MY_URL);if(p.startsWith("js:")){const TYPE="search";const MY_PAGE=searchObj.pg;const KEY=searchObj.wd;var input=MY_URL;var detailUrl=rule.detailUrl||"";eval(p.trim().replace("js:",""));d=VODS}else{p=p.split(";");if(p.length<5){return"{}"}let _ps=parseTags.getParse(p[0]);_pdfa=_ps.pdfa;_pdfh=_ps.pdfh;_pd=_ps.pd;let is_json=p[0].startsWith("json:");p[0]=p[0].replace(/^(jsp:|json:|jq:)/,"");try{let html=getHtml(MY_URL);if(html){if(/系统安全验证|输入验证码/.test(html)){let cookie=verifyCode(MY_URL);if(cookie){console.log(`本次成功过验证,cookie:${cookie}`);setItem(RULE_CK,cookie)}else{console.log(`本次自动过搜索验证失败,cookie:${cookie}`)}html=getHtml(MY_URL)}if(!html.includes(searchObj.wd)){console.log("搜索结果源码未包含关键字,疑似搜索失败,正为您打印结果源码");console.log(html)}if(is_json){html=dealJson(html)}let list=_pdfa(html,p[0]);list.forEach(it=>{let links=p[4].split("+").map(p4=>{return!rule.detailUrl?_pd(it,p4,MY_URL):_pdfh(it,p4)});let link=links.join("$");let ob={vod_id:link,vod_name:_pdfh(it,p[1]).replace(/\n|\t/g,"").trim(),vod_pic:_pd(it,p[2],MY_URL),vod_remarks:_pdfh(it,p[3]).replace(/\n|\t/g,"").trim()};if(p.length>5&&p[5]){ob.vod_content=_pdfh(it,p[5])}d.push(ob)})}}catch(e){return"{}"}}return JSON.stringify({page:parseInt(searchObj.pg),pagecount:10,limit:20,total:100,list:d})}function detailParse(detailObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let vod={vod_id:detailObj.orId,vod_name:"片名",vod_pic:"",type_name:"剧情",vod_year:"年份",vod_area:"地区",vod_remarks:"更新信息",vod_actor:"主演",vod_director:"导演",vod_content:"简介"};let p=detailObj.二级;let url=detailObj.url;let detailUrl=detailObj.detailUrl;let fyclass=detailObj.fyclass;let tab_exclude=detailObj.tab_exclude;let html=detailObj.html||"";MY_URL=url;console.log(MY_URL);if(p==="*"){vod.vod_play_from="道长在线";vod.vod_remarks=detailUrl;vod.vod_actor="没有二级,只有一级链接直接嗅探播放";vod.vod_content=MY_URL;vod.vod_play_url="嗅探播放$"+MY_URL}else if(typeof p==="string"&&p.trim().startsWith("js:")){const TYPE="detail";var input=MY_URL;eval(p.trim().replace("js:",""));vod=VOD;console.log(JSON.stringify(vod))}else if(p&&typeof p==="object"){if(!html){html=getHtml(MY_URL)}let _impJQP=true;let _ps;if(p.is_json){_ps=parseTags.json;html=dealJson(html);_impJQP=false}else if(p.is_jsp){_ps=parseTags.jsp}else if(p.is_jq){_ps=parseTags.jq}else{_ps=parseTags.jq}if(_impJQP){let c$=cheerio.load(html);html={rr:c$,ele:c$("html")[0]}}_pdfa=_ps.pdfa;_pdfh=_ps.pdfh;_pd=_ps.pd;if(p.title){let p1=p.title.split(";");vod.vod_name=_pdfh(html,p1[0]).replace(/\n|\t/g,"").trim();let type_name=p1.length>1?_pdfh(html,p1[1]).replace(/\n|\t/g,"").replace(/ /g,"").trim():"";vod.type_name=type_name||vod.type_name}if(p.desc){try{let p1=p.desc.split(";");vod.vod_remarks=_pdfh(html,p1[0]).replace(/\n|\t/g,"").trim();vod.vod_year=p1.length>1?_pdfh(html,p1[1]).replace(/\n|\t/g,"").trim():"";vod.vod_area=p1.length>2?_pdfh(html,p1[2]).replace(/\n|\t/g,"").trim():"";vod.vod_actor=p1.length>3?_pdfh(html,p1[3]).replace(/\n|\t/g,"").trim():"";vod.vod_director=p1.length>4?_pdfh(html,p1[4]).replace(/\n|\t/g,"").trim():""}catch(e){}}if(p.content){try{let p1=p.content.split(";");vod.vod_content=_pdfh(html,p1[0]).replace(/\n|\t/g,"").trim()}catch(e){}}if(p.img){try{let p1=p.img.split(";");vod.vod_pic=_pd(html,p1[0],MY_URL)}catch(e){}}let vod_play_from="$$$";let playFrom=[];if(p.重定向&&p.重定向.startsWith("js:")){print("开始执行重定向代码:"+p.重定向);html=eval(p.重定向.replace("js:",""));if(_impJQP){let c$=cheerio.load(html);html={rr:c$,ele:c$("html")[0]}}}if(p.tabs){if(p.tabs.startsWith("js:")){print("开始执行tabs代码:"+p.tabs);if(html&&typeof html!=="string"){html=html.rr(html.ele).toString()}var input=MY_URL;eval(p.tabs.replace("js:",""));playFrom=TABS}else{let p_tab=p.tabs.split(";")[0];console.log(p_tab);let vHeader=_pdfa(html,p_tab);console.log(vHeader.length);for(let v of vHeader){let v_title=_pdfh(v,"body&&Text").trim();console.log(v_title);if(tab_exclude&&new RegExp(tab_exclude).test(v_title)){continue}playFrom.push(v_title)}}console.log(JSON.stringify(playFrom))}else{playFrom=["道长在线"]}vod.vod_play_from=playFrom.join(vod_play_from);let vod_play_url="$$$";let vod_tab_list=[];if(p.lists){if(p.lists.startsWith("js:")){print("开始执行lists代码:"+p.lists);if(html&&typeof html!=="string"){html=html.rr(html.ele).toString()}var input=MY_URL;eval(p.lists.replace("js:",""));vod_play_url=LISTS.map(it=>it.join("#")).join(vod_play_url)}else{for(let i=0;i1?p.tabs.split(";")[1]:"";let p1=p.lists.replaceAll("#idv",tab_name).replaceAll("#id",i);tab_ext=tab_ext.replaceAll("#idv",tab_name).replaceAll("#id",i);console.log(p1);let vodList=[];try{vodList=_pdfa(html,p1);console.log("len(vodList):"+vodList.length)}catch(e){}let new_vod_list=[];let tabName=tab_ext?_pdfh(html,tab_ext):tab_name;console.log(tabName);vodList.forEach(it=>{new_vod_list.push(_pdfh(it,"body&&Text").trim()+"$"+_pd(it,"a&&href",MY_URL))});let vlist=new_vod_list.join("#");vod_tab_list.push(vlist)}vod_play_url=vod_tab_list.join(vod_play_url)}}vod.vod_play_url=vod_play_url}return JSON.stringify({list:[vod]})}function tellIsJx(url){try{let is_vip=!/\.(m3u8|mp4|m4a)$/.test(url.split("?")[0])&&是否正版(url);return is_vip?1:0}catch(e){return 1}}function playParse(playObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));MY_URL=playObj.url;if(!/http/.test(MY_URL)){try{MY_URL=base64Decode(MY_URL)}catch(e){}}MY_URL=decodeURIComponent(MY_URL);var input=MY_URL;let common_play={parse:1,url:input,jx:tellIsJx(input)};let lazy_play;if(!rule.play_parse||!rule.lazy){lazy_play=common_play}else if(rule.play_parse&&rule.lazy&&typeof rule.lazy==="string"){try{let lazy_code=rule.lazy.replace("js:","").trim();print("开始执行js免嗅=>"+lazy_code);eval(lazy_code);lazy_play=typeof input==="object"?input:{parse:1,jx:tellIsJx(input),url:input}}catch(e){print("js免嗅错误:"+e.message);lazy_play=common_play}}else{lazy_play=common_play}console.log(JSON.stringify(lazy_play));return JSON.stringify(lazy_play)}function init(ext){console.log("init");try{if(typeof globalThis.mubanJs==="undefined"){let mubanJs=request("https://gitcode.net/qq_32394351/dr_py/-/raw/master/js/模板.js",{"User-Agent":MOBILE_UA});mubanJs=mubanJs.replace("export default","(function() {return muban;}()) // export default");globalThis.mubanJs=mubanJs}let muban=eval(globalThis.mubanJs);if(typeof ext=="object"){rule=ext;if(rule.template){rule=Object.assign(muban[rule.template],rule)}}else if(typeof ext=="string"){if(ext.startsWith("http")){let js=request(ext,{method:"GET"});if(js){eval(js.replace("var rule","rule"))}}}else{eval(ext.replace("var rule","rule"))}let rule_cate_excludes=(rule.cate_exclude||"").split("|").filter(it=>it.trim());let rule_tab_excludes=(rule.tab_exclude||"").split("|").filter(it=>it.trim());rule_cate_excludes=rule_cate_excludes.concat(CATE_EXCLUDE.split("|").filter(it=>it.trim()));rule_tab_excludes=rule_tab_excludes.concat(TAB_EXCLUDE.split("|").filter(it=>it.trim()));rule.cate_exclude=rule_cate_excludes.join("|");rule.tab_exclude=rule_tab_excludes.join("|");rule.host=(rule.host||"").rstrip("/");rule.url=rule.url||"";rule.double=rule.double||false;rule.homeUrl=rule.homeUrl||"";rule.detailUrl=rule.detailUrl||"";rule.searchUrl=rule.searchUrl||"";rule.homeUrl=rule.host&&rule.homeUrl?urljoin(rule.host,rule.homeUrl):rule.homeUrl||rule.host;rule.detailUrl=rule.host&&rule.detailUrl?urljoin(rule.host,rule.detailUrl):rule.detailUrl;if(rule.url.includes("[")&&rule.url.includes("]")){let u1=rule.url.split("[")[0];let u2=rule.url.split("[")[1].split("]")[0];rule.url=rule.host&&rule.url?urljoin(rule.host,u1)+"["+urljoin(rule.host,u2)+"]":rule.url}else{rule.url=rule.host&&rule.url?urljoin(rule.host,rule.url):rule.url}rule.searchUrl=rule.host&&rule.searchUrl?urljoin(rule.host,rule.searchUrl):rule.searchUrl;rule.timeout=rule.timeout||5e3;rule.encoding=rule.编码||rule.encoding||"utf-8";if(rule.headers&&typeof rule.headers==="object"){try{let header_keys=Object.keys(rule.headers);for(let k of header_keys){if(k.toLowerCase()==="user-agent"){let v=rule.headers[k];console.log(v);if(["MOBILE_UA","PC_UA","UC_UA","IOS_UA","UA"].includes(v)){rule.headers[k]=eval(v)}}}}catch(e){console.log("处理headers发生错误:"+e.message)}}rule_fetch_params={headers:rule.headers||false,timeout:rule.timeout,encoding:rule.encoding};oheaders=rule.headers||{};RKEY=typeof key!=="undefined"&&key?key:"drpy_"+(rule.title||rule.host);init_test()}catch(e){console.log("init_test发生错误:"+e.message)}}let homeHtmlCache=undefined;function home(filter){console.log("home");let homeObj={filter:rule.filter||false,MY_URL:rule.homeUrl,class_name:rule.class_name||"",class_url:rule.class_url||"",class_parse:rule.class_parse||"",cate_exclude:rule.cate_exclude};return homeParse(homeObj)}function homeVod(params){let homeVodObj={"推荐":rule.推荐,double:rule.double,homeUrl:rule.homeUrl,detailUrl:rule.detailUrl};return homeVodParse(homeVodObj)}function category(tid,pg,filter,extend){let cateObj={url:rule.url,"一级":rule.一级,tid:tid,pg:parseInt(pg),filter:filter,extend:extend};return categoryParse(cateObj)}function detail(vod_url){let orId=vod_url;let fyclass="";if(vod_url.indexOf("$")>-1){let tmp=vod_url.split("$");fyclass=tmp[0];vod_url=tmp[1]}let detailUrl=vod_url;let url;if(!detailUrl.startsWith("http")&&!detailUrl.includes("/")){url=rule.detailUrl.replaceAll("fyid",detailUrl).replaceAll("fyclass",fyclass)}else if(detailUrl.includes("/")){url=urljoin(rule.homeUrl,detailUrl)}else{url=detailUrl}let detailObj={orId:orId,url:url,"二级":rule.二级,detailUrl:detailUrl,fyclass:fyclass,tab_exclude:rule.tab_exclude};return detailParse(detailObj)}function play(flag,id,flags){let playObj={url:id,flag:flag,flags:flags};return playParse(playObj)}function search(wd,quick){let searchObj={searchUrl:rule.searchUrl,"搜索":rule.搜索,wd:wd,pg:1,quick:quick};return searchParse(searchObj)}function DRPY(){return{init:init,home:home,homeVod:homeVod,category:category,detail:detail,play:play,search:search}}export default{init:init,home:home,homeVod:homeVod,category:category,detail:detail,play:play,search:search,DRPY:DRPY}; \ No newline at end of file +import cheerio from"assets://js/lib/cheerio.min.js";import"assets://js/lib/crypto-js.js";import"assets://js/lib/drT.js";function init_test(){console.log("init_test_start");console.log(RKEY);console.log(JSON.stringify(rule));console.log("init_test_end")}let rule={};const MOBILE_UA="Mozilla/5.0 (Linux; Android 11; M2007J3SC Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045714 Mobile Safari/537.36";const PC_UA="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36";const UA="Mozilla/5.0";const UC_UA="Mozilla/5.0 (Linux; U; Android 9; zh-CN; MI 9 Build/PKQ1.181121.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/12.5.5.1035 Mobile Safari/537.36";const IOS_UA="Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1";const RULE_CK="cookie";const CATE_EXCLUDE="首页|留言|APP|下载|资讯|新闻|动态";const TAB_EXCLUDE="猜你|喜欢|APP|下载|剧情|热播";const OCR_RETRY=3;const OCR_API="http://cms.nokia.press/parse/ocr";if(typeof MY_URL==="undefined"){var MY_URL}var RKEY;var fetch;var print;var log;var rule_fetch_params;var fetch_params;var oheaders;var _pdfh;var _pdfa;var _pd;const DOM_CHECK_ATTR=/(url|src|href|data-original|data-src)$/;const SELECT_REGEX=/:eq|:lt|:gt|#/g;const SELECT_REGEX_A=/:eq|:lt|:gt/g;if(typeof Object.assign!="function"){Object.assign=function(){var target=arguments[0];for(var i=1;ithis.length){return false}else{return this.indexOf(search,start)!==-1}}}if(!Array.prototype.includes){Object.defineProperty(Array.prototype,"includes",{value:function(searchElement,fromIndex){if(this==null){throw new TypeError('"this" is null or not defined')}var o=Object(this);var len=o.length>>>0;if(len===0){return false}var n=fromIndex|0;var k=Math.max(n>=0?n:len-Math.abs(n),0);while(k-1){let sp=parse.split("&&");option=sp[sp.length-1];sp.splice(sp.length-1);if(sp.length>1){for(let i in sp){if(!SELECT_REGEX.test(sp[i])){sp[i]=sp[i]+":eq(0)"}}}else{if(!SELECT_REGEX.test(sp[0])){sp[0]=sp[0]+":eq(0)"}}parse=sp.join(" ")}let result="";const $=eleFind?html.rr:cheerio.load(html);let ret=eleFind?parse==="*=*"||$(html.ele).is(parse)?html.ele:$(html.ele).find(parse):$(parse);if(option){if(option==="Text"){result=$(ret).text()}else if(option==="Html"){result=$(ret).html()}else{result=$(ret).attr(option);if(/style/.test(option.toLowerCase())&&/url\(/.test(result)){try{result=result.match(/url\((.*?)\)/)[1]}catch(e){}}}if(result&&base_url&&DOM_CHECK_ATTR.test(option)){if(/http/.test(result)){result=result.substr(result.indexOf("http"))}else{result=urljoin(base_url,result)}}}else{result=$(ret).toString()}return result},pdfa(html,parse){if(!parse||!parse.trim()){return[]}let eleFind=typeof html==="object";if(parse.indexOf("&&")>-1){let sp=parse.split("&&");for(let i in sp){if(!SELECT_REGEX_A.test(sp[i])&&i=OCR_RETRY){cookie=""}}catch(e){console.log(`第${cnt+1}次验证码提交失败:${e.message}`);if(cnt+1>=OCR_RETRY){cookie=""}}cnt+=1}return cookie}function setItem(k,v){local.set(RKEY,k,v);console.log(`规则${RKEY}设置${k} => ${v}`)}function getItem(k,v){return local.get(RKEY,k)||v}function clearItem(k){local.delete(RKEY,k)}function getHome(url){if(!url){return""}let tmp=url.split("//");url=tmp[0]+"//"+tmp[1].split("/")[0];try{url=decodeURIComponent(url)}catch(e){}return url}function buildUrl(url,obj){obj=obj||{};if(url.indexOf("?")<0){url+="?"}let param_list=[];let keys=Object.keys(obj);keys.forEach(it=>{param_list.push(it+"="+obj[it])});let prs=param_list.join("&");if(keys.length>0&&!url.endsWith("?")){url+="&"}url+=prs;return url}function require(url){eval(request(url))}function request(url,obj,ocr_flag){ocr_flag=ocr_flag||false;if(typeof obj==="undefined"||!obj||obj==={}){if(!fetch_params||!fetch_params.headers){let headers={"User-Agent":MOBILE_UA};if(rule.headers){Object.assign(headers,rule.headers)}fetch_params.headers=headers}if(!fetch_params.headers.Referer){fetch_params.headers.Referer=getHome(url)}obj=fetch_params}else{let headers=obj.headers||{};let keys=Object.keys(headers).map(it=>it.toLowerCase());if(!keys.includes("user-agent")){headers["User-Agent"]=MOBILE_UA}if(!keys.includes("referer")){headers["Referer"]=getHome(url)}obj.headers=headers}if(rule.encoding&&rule.encoding!=="utf-8"&&!ocr_flag){if(!obj.headers.hasOwnProperty("Content-Type")){obj.headers["Content-Type"]="text/html; charset="+rule.encoding}}if(typeof obj.headers.body!="undefined"&&obj.headers.body&&typeof obj.headers.body==="string"){let data={};obj.headers.body.split("&").forEach(it=>{data[it.split("=")[0]]=it.split("=")[1]});obj.data=data;delete obj.headers.body}if(!url){return obj.withHeaders?"{}":""}if(obj.toBase64){obj.buffer=2;delete obj.toBase64}console.log(JSON.stringify(obj.headers));console.log("request:"+url);let res=req(url,obj);let html=res.content||"";if(obj.withHeaders){let htmlWithHeaders=res.headers;htmlWithHeaders.body=html;return JSON.stringify(htmlWithHeaders)}else{return html}}fetch=request;print=function(data){data=data||"";if(typeof data!=="string"){try{data=JSON.stringify(data)}catch(e){console.log("print:"+e.message)}}console.log(data)};log=print;function checkHtml(html,url,obj){if(/\?btwaf=/.test(html)){let btwaf=html.match(/btwaf(.*?)"/)[1];url=url.split("#")[0]+"?btwaf"+btwaf;html=request(url,obj)}return html}function getCode(url,obj){let html=request(url,obj);html=checkHtml(html,url,obj);return html}function getHtml(url){let obj={};if(rule.headers){obj.headers=rule.headers}let cookie=getItem(RULE_CK,"");if(cookie){if(obj.headers&&!Object.keys(obj.headers).map(it=>it.toLowerCase()).includes("cookie")){obj.headers["Cookie"]=cookie}else if(!obj.headers){obj.headers={Cookie:cookie}}}let html=getCode(url,obj);return html}function homeParse(homeObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let classes=[];if(homeObj.class_name&&homeObj.class_url){let names=homeObj.class_name.split("&");let urls=homeObj.class_url.split("&");let cnt=Math.min(names.length,urls.length);for(let i=0;i=3){try{let html=getHtml(homeObj.MY_URL);if(html){homeHtmlCache=html;let list=_pdfa(html,p[0]);if(list&&list.length>0){list.forEach((it,idex)=>{try{let name=_pdfh(it,p[1]);if(homeObj.cate_exclude&&new RegExp(homeObj.cate_exclude).test(name)){return}let url=_pd(it,p[2]);if(p.length>3&&p[3]){let exp=new RegExp(p[3]);url=url.match(exp)[1]}classes.push({type_id:url.trim(),type_name:name.trim()})}catch(e){console.log(`分类列表定位第${idex}个元素正常报错:${e.message}`)}})}}}catch(e){console.log(e.message)}}}classes=classes.filter(it=>!homeObj.cate_exclude||!new RegExp(homeObj.cate_exclude).test(it.type_name));let resp={class:classes};if(homeObj.filter){resp.filters=homeObj.filter}console.log(JSON.stringify(resp));return JSON.stringify(resp)}function getPP(p,pn,pp,ppn){let ps=p[pn]==="*"&&pp.length>ppn?pp[ppn]:p[pn];return ps}function homeVodParse(homeVodObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let d=[];MY_URL=homeVodObj.homeUrl;console.log(MY_URL);let p=homeVodObj.推荐;if(p==="*"&&rule.一级){p=rule.一级;homeVodObj.double=false}if(!p||typeof p!=="string"){return"{}"}p=p.trim();let pp=rule.一级.split(";");if(p.startsWith("js:")){const TYPE="home";var input=MY_URL;const HOST=rule.host;eval(p.replace("js:",""));d=VODS}else{p=p.split(";");if(!homeVodObj.double&&p.length<5){return"{}"}else if(homeVodObj.double&&p.length<6){return"{}"}let p0=getPP(p,0,pp,0);let _ps=parseTags.getParse(p0);_pdfa=_ps.pdfa;_pdfh=_ps.pdfh;_pd=_ps.pd;let is_json=p0.startsWith("json:");p0=p0.replace(/^(jsp:|json:|jq:)/,"");let html=homeHtmlCache||getHtml(MY_URL);homeHtmlCache=undefined;if(is_json){html=dealJson(html)}try{console.log("double:"+homeVodObj.double);if(homeVodObj.double){let items=_pdfa(html,p0);for(let item of items){let items2=_pdfa(item,p[1]);for(let item2 of items2){try{let p2=getPP(p,2,pp,1);let title=_pdfh(item2,p2);let img="";try{let p3=getPP(p,3,pp,2);img=_pd(item2,p3)}catch(e){}let desc="";try{let p4=getPP(p,4,pp,3);desc=_pdfh(item2,p4)}catch(e){}let p5=getPP(p,5,pp,4);let links=[];for(let _p5 of p5.split("+")){let link=!homeVodObj.detailUrl?_pd(item2,_p5,MY_URL):_pdfh(item2,_p5);links.push(link)}let content;if(p.length>6&&p[6]){let p6=getPP(p,6,pp,5);content=_pdfh(item2,p6)}else{content=""}let vod={vod_name:title,vod_pic:img,vod_remarks:desc,vod_content:content,vod_id:links.join("$")};d.push(vod)}catch(e){console.log("首页列表处理发生错误:"+e.message)}}}}else{let items=_pdfa(html,p0);for(let item of items){try{let p1=getPP(p,1,pp,1);let title=_pdfh(item,p1);let img="";try{let p2=getPP(p,2,pp,2);img=_pd(item,p2,MY_URL)}catch(e){}let desc="";try{let p3=getPP(p,3,pp,3);desc=_pdfh(item,p3)}catch(e){}let p4=getPP(p,4,pp,4);let links=[];for(let _p5 of p4.split("+")){let link=!homeVodObj.detailUrl?_pd(item,_p5,MY_URL):_pdfh(item,_p5);links.push(link)}let content;if(p.length>5&&p[5]){let p5=getPP(p,5,pp,5);content=_pdfh(item,p5)}else{content=""}let vod={vod_name:title,vod_pic:img,vod_remarks:desc,vod_content:content,vod_id:links.join("$")};d.push(vod)}catch(e){}}}}catch(e){}}return JSON.stringify({list:d})}function categoryParse(cateObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let p=cateObj.一级;if(!p||typeof p!=="string"){return"{}"}let d=[];let url=cateObj.url.replaceAll("fyclass",cateObj.tid);if(rule.filter_url){if(!/fyfilter/.test(url)){if(!url.endsWith("&")&&!rule.filter_url.startsWith("&")){url+="&"}url+=rule.filter_url}else{url=url.replace("fyfilter",rule.filter_url)}let fl=cateObj.filter?cateObj.extend:{};let new_url;new_url=cheerio.jinja2(url,{fl:fl});if(/object Object/.test(new_url)){new_url=drT.renderText(url,fl)}url=new_url}if(/fypage/.test(url)){if(url.includes("(")&&url.includes(")")){let url_rep=url.match(/.*?\((.*)\)/)[1];let cnt_page=url_rep.replaceAll("fypage",cateObj.pg);let cnt_pg=eval(cnt_page);url=url.replaceAll(url_rep,cnt_pg).replaceAll("(","").replaceAll(")","")}else{url=url.replaceAll("fypage",cateObj.pg)}}if(cateObj.pg===1&&url.includes("[")&&url.includes("]")){url=url.split("[")[1].split("]")[0]}else if(cateObj.pg>1&&url.includes("[")&&url.includes("]")){url=url.split("[")[0]}MY_URL=url;console.log(MY_URL);p=p.trim();const MY_CATE=cateObj.tid;if(p.startsWith("js:")){var MY_FL=cateObj.extend;const TYPE="cate";var input=MY_URL;const MY_PAGE=cateObj.pg;var desc="";eval(p.trim().replace("js:",""));d=VODS}else{p=p.split(";");if(p.length<5){return"{}"}let _ps=parseTags.getParse(p[0]);_pdfa=_ps.pdfa;_pdfh=_ps.pdfh;_pd=_ps.pd;let is_json=p[0].startsWith("json:");p[0]=p[0].replace(/^(jsp:|json:|jq:)/,"");try{let html=getHtml(MY_URL);if(html){if(is_json){html=dealJson(html)}let list=_pdfa(html,p[0]);list.forEach(it=>{let links=p[4].split("+").map(p4=>{return!rule.detailUrl?_pd(it,p4,MY_URL):_pdfh(it,p4)});let link=links.join("$");let vod_id=rule.detailUrl?MY_CATE+"$"+link:link;d.push({vod_id:vod_id,vod_name:_pdfh(it,p[1]).replace(/\n|\t/g,"").trim(),vod_pic:_pd(it,p[2],MY_URL),vod_remarks:_pdfh(it,p[3]).replace(/\n|\t/g,"").trim()})})}}catch(e){console.log(e.message)}}return d.length<1?"{}":JSON.stringify({page:parseInt(cateObj.pg),pagecount:999,limit:20,total:999,list:d})}function searchParse(searchObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let d=[];if(!searchObj.searchUrl){return"{}"}let p=searchObj.搜索==="*"&&rule.一级?rule.一级:searchObj.搜索;if(!p||typeof p!=="string"){return"{}"}p=p.trim();let pp=rule.一级.split(";");let url=searchObj.searchUrl.replaceAll("**",searchObj.wd).replaceAll("fypage",searchObj.pg);MY_URL=url;console.log(MY_URL);if(p.startsWith("js:")){const TYPE="search";const MY_PAGE=searchObj.pg;const KEY=searchObj.wd;var input=MY_URL;var detailUrl=rule.detailUrl||"";eval(p.trim().replace("js:",""));d=VODS}else{p=p.split(";");if(p.length<5){return"{}"}let p0=getPP(p,0,pp,0);let _ps=parseTags.getParse(p0);_pdfa=_ps.pdfa;_pdfh=_ps.pdfh;_pd=_ps.pd;let is_json=p0.startsWith("json:");p0=p0.replace(/^(jsp:|json:|jq:)/,"");try{let html=getHtml(MY_URL);if(html){if(/系统安全验证|输入验证码/.test(html)){let cookie=verifyCode(MY_URL);if(cookie){console.log(`本次成功过验证,cookie:${cookie}`);setItem(RULE_CK,cookie)}else{console.log(`本次自动过搜索验证失败,cookie:${cookie}`)}html=getHtml(MY_URL)}if(!html.includes(searchObj.wd)){console.log("搜索结果源码未包含关键字,疑似搜索失败,正为您打印结果源码");console.log(html)}if(is_json){html=dealJson(html)}let list=_pdfa(html,p0);list.forEach(it=>{let p1=getPP(p,1,pp,1);let p2=getPP(p,2,pp,2);let p3=getPP(p,3,pp,3);let p4=getPP(p,4,pp,4);let links=p4.split("+").map(_p4=>{return!rule.detailUrl?_pd(it,_p4,MY_URL):_pdfh(it,_p4)});let link=links.join("$");let content;if(p.length>5&&p[5]){let p5=getPP(p,5,pp,5);content=_pdfh(item,p5)}else{content=""}let ob={vod_id:link,vod_name:_pdfh(it,p1).replace(/\n|\t/g,"").trim(),vod_pic:_pd(it,p2,MY_URL),vod_remarks:_pdfh(it,p3).replace(/\n|\t/g,"").trim(),vod_content:content.replace(/\n|\t/g,"").trim()};d.push(ob)})}}catch(e){return"{}"}}return JSON.stringify({page:parseInt(searchObj.pg),pagecount:10,limit:20,total:100,list:d})}function detailParse(detailObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let vod={vod_id:detailObj.orId,vod_name:"片名",vod_pic:"",type_name:"剧情",vod_year:"年份",vod_area:"地区",vod_remarks:"更新信息",vod_actor:"主演",vod_director:"导演",vod_content:"简介"};let p=detailObj.二级;let url=detailObj.url;let detailUrl=detailObj.detailUrl;let fyclass=detailObj.fyclass;let tab_exclude=detailObj.tab_exclude;let html=detailObj.html||"";MY_URL=url;console.log(MY_URL);if(p==="*"){vod.vod_play_from="道长在线";vod.vod_remarks=detailUrl;vod.vod_actor="没有二级,只有一级链接直接嗅探播放";vod.vod_content=MY_URL;vod.vod_play_url="嗅探播放$"+MY_URL}else if(typeof p==="string"&&p.trim().startsWith("js:")){const TYPE="detail";var input=MY_URL;eval(p.trim().replace("js:",""));vod=VOD;console.log(JSON.stringify(vod))}else if(p&&typeof p==="object"){if(!html){html=getHtml(MY_URL)}let _impJQP=true;let _ps;if(p.is_json){_ps=parseTags.json;html=dealJson(html);_impJQP=false}else if(p.is_jsp){_ps=parseTags.jsp}else if(p.is_jq){_ps=parseTags.jq}else{_ps=parseTags.jq}if(_impJQP){let c$=cheerio.load(html);html={rr:c$,ele:c$("html")[0]}}_pdfa=_ps.pdfa;_pdfh=_ps.pdfh;_pd=_ps.pd;if(p.title){let p1=p.title.split(";");vod.vod_name=_pdfh(html,p1[0]).replace(/\n|\t/g,"").trim();let type_name=p1.length>1?_pdfh(html,p1[1]).replace(/\n|\t/g,"").replace(/ /g,"").trim():"";vod.type_name=type_name||vod.type_name}if(p.desc){try{let p1=p.desc.split(";");vod.vod_remarks=_pdfh(html,p1[0]).replace(/\n|\t/g,"").trim();vod.vod_year=p1.length>1?_pdfh(html,p1[1]).replace(/\n|\t/g,"").trim():"";vod.vod_area=p1.length>2?_pdfh(html,p1[2]).replace(/\n|\t/g,"").trim():"";vod.vod_actor=p1.length>3?_pdfh(html,p1[3]).replace(/\n|\t/g,"").trim():"";vod.vod_director=p1.length>4?_pdfh(html,p1[4]).replace(/\n|\t/g,"").trim():""}catch(e){}}if(p.content){try{let p1=p.content.split(";");vod.vod_content=_pdfh(html,p1[0]).replace(/\n|\t/g,"").trim()}catch(e){}}if(p.img){try{let p1=p.img.split(";");vod.vod_pic=_pd(html,p1[0],MY_URL)}catch(e){}}let vod_play_from="$$$";let playFrom=[];if(p.重定向&&p.重定向.startsWith("js:")){print("开始执行重定向代码:"+p.重定向);html=eval(p.重定向.replace("js:",""));if(_impJQP){let c$=cheerio.load(html);html={rr:c$,ele:c$("html")[0]}}}if(p.tabs){if(p.tabs.startsWith("js:")){print("开始执行tabs代码:"+p.tabs);if(html&&typeof html!=="string"){html=html.rr(html.ele).toString()}var input=MY_URL;eval(p.tabs.replace("js:",""));playFrom=TABS}else{let p_tab=p.tabs.split(";")[0];console.log(p_tab);let vHeader=_pdfa(html,p_tab);console.log(vHeader.length);for(let v of vHeader){let v_title=_pdfh(v,"body&&Text").trim();console.log(v_title);if(tab_exclude&&new RegExp(tab_exclude).test(v_title)){continue}playFrom.push(v_title)}}console.log(JSON.stringify(playFrom))}else{playFrom=["道长在线"]}vod.vod_play_from=playFrom.join(vod_play_from);let vod_play_url="$$$";let vod_tab_list=[];if(p.lists){if(p.lists.startsWith("js:")){print("开始执行lists代码:"+p.lists);if(html&&typeof html!=="string"){html=html.rr(html.ele).toString()}var input=MY_URL;eval(p.lists.replace("js:",""));vod_play_url=LISTS.map(it=>it.join("#")).join(vod_play_url)}else{for(let i=0;i1?p.tabs.split(";")[1]:"";let p1=p.lists.replaceAll("#idv",tab_name).replaceAll("#id",i);tab_ext=tab_ext.replaceAll("#idv",tab_name).replaceAll("#id",i);console.log(p1);let vodList=[];try{vodList=_pdfa(html,p1);console.log("len(vodList):"+vodList.length)}catch(e){}let new_vod_list=[];let tabName=tab_ext?_pdfh(html,tab_ext):tab_name;console.log(tabName);vodList.forEach(it=>{new_vod_list.push(_pdfh(it,"body&&Text").trim()+"$"+_pd(it,"a&&href",MY_URL))});let vlist=new_vod_list.join("#");vod_tab_list.push(vlist)}vod_play_url=vod_tab_list.join(vod_play_url)}}vod.vod_play_url=vod_play_url}return JSON.stringify({list:[vod]})}function tellIsJx(url){try{let is_vip=!/\.(m3u8|mp4|m4a)$/.test(url.split("?")[0])&&是否正版(url);return is_vip?1:0}catch(e){return 1}}function playParse(playObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));MY_URL=playObj.url;if(!/http/.test(MY_URL)){try{MY_URL=base64Decode(MY_URL)}catch(e){}}MY_URL=decodeURIComponent(MY_URL);var input=MY_URL;let common_play={parse:1,url:input,jx:tellIsJx(input)};let lazy_play;if(!rule.play_parse||!rule.lazy){lazy_play=common_play}else if(rule.play_parse&&rule.lazy&&typeof rule.lazy==="string"){try{let lazy_code=rule.lazy.replace("js:","").trim();print("开始执行js免嗅=>"+lazy_code);eval(lazy_code);lazy_play=typeof input==="object"?input:{parse:1,jx:tellIsJx(input),url:input}}catch(e){print("js免嗅错误:"+e.message);lazy_play=common_play}}else{lazy_play=common_play}console.log(JSON.stringify(lazy_play));return JSON.stringify(lazy_play)}function init(ext){console.log("init");try{if(typeof globalThis.mubanJs==="undefined"){let mubanJs=request("https://gitcode.net/qq_32394351/dr_py/-/raw/master/js/模板.js",{"User-Agent":MOBILE_UA});mubanJs=mubanJs.replace("export default","(function() {return muban;}()) // export default");globalThis.mubanJs=mubanJs}let muban=eval(globalThis.mubanJs);if(typeof ext=="object"){rule=ext;if(rule.template){rule=Object.assign(muban[rule.template],rule)}}else if(typeof ext=="string"){if(ext.startsWith("http")){let js=request(ext,{method:"GET"});if(js){eval(js.replace("var rule","rule"))}}}else{eval(ext.replace("var rule","rule"))}let rule_cate_excludes=(rule.cate_exclude||"").split("|").filter(it=>it.trim());let rule_tab_excludes=(rule.tab_exclude||"").split("|").filter(it=>it.trim());rule_cate_excludes=rule_cate_excludes.concat(CATE_EXCLUDE.split("|").filter(it=>it.trim()));rule_tab_excludes=rule_tab_excludes.concat(TAB_EXCLUDE.split("|").filter(it=>it.trim()));rule.cate_exclude=rule_cate_excludes.join("|");rule.tab_exclude=rule_tab_excludes.join("|");rule.host=(rule.host||"").rstrip("/");rule.url=rule.url||"";rule.double=rule.double||false;rule.homeUrl=rule.homeUrl||"";rule.detailUrl=rule.detailUrl||"";rule.searchUrl=rule.searchUrl||"";rule.homeUrl=rule.host&&rule.homeUrl?urljoin(rule.host,rule.homeUrl):rule.homeUrl||rule.host;rule.detailUrl=rule.host&&rule.detailUrl?urljoin(rule.host,rule.detailUrl):rule.detailUrl;if(rule.url.includes("[")&&rule.url.includes("]")){let u1=rule.url.split("[")[0];let u2=rule.url.split("[")[1].split("]")[0];rule.url=rule.host&&rule.url?urljoin(rule.host,u1)+"["+urljoin(rule.host,u2)+"]":rule.url}else{rule.url=rule.host&&rule.url?urljoin(rule.host,rule.url):rule.url}rule.searchUrl=rule.host&&rule.searchUrl?urljoin(rule.host,rule.searchUrl):rule.searchUrl;rule.timeout=rule.timeout||5e3;rule.encoding=rule.编码||rule.encoding||"utf-8";if(rule.headers&&typeof rule.headers==="object"){try{let header_keys=Object.keys(rule.headers);for(let k of header_keys){if(k.toLowerCase()==="user-agent"){let v=rule.headers[k];console.log(v);if(["MOBILE_UA","PC_UA","UC_UA","IOS_UA","UA"].includes(v)){rule.headers[k]=eval(v)}}}}catch(e){console.log("处理headers发生错误:"+e.message)}}rule_fetch_params={headers:rule.headers||false,timeout:rule.timeout,encoding:rule.encoding};oheaders=rule.headers||{};RKEY=typeof key!=="undefined"&&key?key:"drpy_"+(rule.title||rule.host);init_test()}catch(e){console.log("init_test发生错误:"+e.message)}}let homeHtmlCache=undefined;function home(filter){console.log("home");let homeObj={filter:rule.filter||false,MY_URL:rule.homeUrl,class_name:rule.class_name||"",class_url:rule.class_url||"",class_parse:rule.class_parse||"",cate_exclude:rule.cate_exclude};return homeParse(homeObj)}function homeVod(params){let homeVodObj={"推荐":rule.推荐,double:rule.double,homeUrl:rule.homeUrl,detailUrl:rule.detailUrl};return homeVodParse(homeVodObj)}function category(tid,pg,filter,extend){let cateObj={url:rule.url,"一级":rule.一级,tid:tid,pg:parseInt(pg),filter:filter,extend:extend};return categoryParse(cateObj)}function detail(vod_url){let orId=vod_url;let fyclass="";if(vod_url.indexOf("$")>-1){let tmp=vod_url.split("$");fyclass=tmp[0];vod_url=tmp[1]}let detailUrl=vod_url;let url;if(!detailUrl.startsWith("http")&&!detailUrl.includes("/")){url=rule.detailUrl.replaceAll("fyid",detailUrl).replaceAll("fyclass",fyclass)}else if(detailUrl.includes("/")){url=urljoin(rule.homeUrl,detailUrl)}else{url=detailUrl}let detailObj={orId:orId,url:url,"二级":rule.二级,detailUrl:detailUrl,fyclass:fyclass,tab_exclude:rule.tab_exclude};return detailParse(detailObj)}function play(flag,id,flags){let playObj={url:id,flag:flag,flags:flags};return playParse(playObj)}function search(wd,quick){let searchObj={searchUrl:rule.searchUrl,"搜索":rule.搜索,wd:wd,pg:1,quick:quick};return searchParse(searchObj)}function DRPY(){return{init:init,home:home,homeVod:homeVod,category:category,detail:detail,play:play,search:search}}export default{init:init,home:home,homeVod:homeVod,category:category,detail:detail,play:play,search:search,DRPY:DRPY}; \ No newline at end of file diff --git a/live.jar b/live.jar new file mode 100644 index 0000000000000000000000000000000000000000..daf63f8f0dc711bdd74454e8a2bff4414b36b21d GIT binary patch literal 100945 zcmZU32UJr{6sC#_NK<-`f`Zbe*F-@@=_iz>)lGd!u4~Y9s^M>s6zp5Y<1rL z8@#sQ%$jO4Aoyum;l_h#v6!0yx6`lcy?v}#GRCz>C2MZay1~BH$>NFOZIt8J_{xSn zC6p&*O6{16seSY*^taY@AzGU&`T{<>RFuD~0pb_ix_8M6@ZO8-wtn~&e%xF0hv zmg09M=e&*sr|qTb?p;5gc{aAr!hK%N^G8d!LOFnOHOp>gA%y`}yv*qxs?AI#ofkrR zraA#*`(haN`xpHEF6J;qFJH)@llBd+Rw&BXz{PMlT(>=!-l^J5U(#h8$^?uCbS(U{ zrE@>;ov&cpam`N(7tgeGxtU3<+cuPgySuNJm487`uvTG*k#U1HY=cg`<6iSQ*A6es zi+~QdTGl~dQMR%3>fL#@0KtoWUH5n|r*}GMu+((7)Lwwb#x-d)(LHbgZJgKbW|U)p z)Gg%4W)K}#%L|N#7t9Kc2E_{EVkmxMv>kO=W-!%sThA;TVUpro94-vMnU&*N?-n^_ zXpciLjkV;={qw=tzcIqAs&F(mPa~KLdP2AOpm9UkfIYQS?%r7fpCL5Rfx)|lI#&!8M^Y2BylcNX5);MY@Mr8bqH@X^mrC(cCRrqqJA1_l# z$Hj~*bq+GEtl+MYC9%(-86l&XPPr?+U3PL@i!p3Vo|bHD$*R-5*7xW)E`;$i6fTKb zUhrJ9aNjQrsG`a49-Aun<*vuPEGrHo263g1K&dyN{Mnm-S=Dte2{QL}XUYlocG~SL zwqAgDT{-2Ociv*M))s$zFJ$Aq*75`1%hMefLocj%zc^)Xj|LZvb8ZR#>{|4b6Fd)D zdY~#4*LA!3{QuUNtfO>ge93dZ@LG*u4!-^O0ldsS9bA6&iSbtdE$`czzE7tZk?4P) zen#lU$LN(MgJuBmO|qjFF7pwj(?yPTFaDv4ulfqBQM`?Vh~|0UPPcsp#oYVqS0kex z&Lzf3E-7a)*EtFg$8#;Y{yrJIn$>k6$88@8%HNebWbAenX+4*)tl~~o-My%@{4#?X ztUV{bfsx}E>+m||SJ!;9xO81rNG9??jz@i@m-$29*Tox`w3bbqnd~DQ#*RG(FIjYl zhF;(Y>Y!s6Zk+Gy49&QV)b?R@iDFyQIOXEk(r>vJzHvos=|c0x-cHjDI^RzIQ?9I$ zTkwyuI?JKFSDcoG-3fx^i!yJX`tfL<4?zX&DV+*JqmWuyTi?)g(8wP=IdlBMQ8#l~ z*g7<7uUI2DY`JpiL%N8y$NHl}=P+H}`^sK#+U$e(oSV6TkyAAvxos~_ca8YTYSLl5 z?g}TX0J5bh`x{fw7#<%O*aFgkh}DsB(+X2w#UL95?p@Kh2IyHua!0Jj2z<`jT@pp`WmI$=1nJ#ByXYj=Fr& zhiT?YmNt|7C2z;@4ThF3;j59%J4_2V=(Uy{R4*h&ITgs}Tomsv_v6lC!q8aZQhKME z9QS{V`|z@H{Abr5a!h$qZjQpO7i&7TEiYobpPh2HzcH)jhDL!qa|N5_-I?b)g2%4? zyvIqCtl%ZOWr@(MdC@)lk~@lWe)L@q%>wq3HI5a}%LG)fJnEp615DjJdQN9?9>&;wwv0P&t27l?3;+FkD z!|}calU9-2m&Iv&Wm${|Ii%mO2jtK-bqDOX(TGgax6<^umYkq;KA{Ea?HKm5vSbN;Cl!fk;IBS z@O`o4ZC)tgVUDL?VmZC`mxaxi+bHstoB%L3PV_<(4=yfY=|(6AG-_A(ay9?xn`{Tx z$~V0{Pci#!%@>7Zo0idIuQ;7pE_YV#3q~*+%Cg$B6S`dF_!eVX#x~iv1V-cL9AzRH zKghD!GAG3`E!&53O?5SoUvnq zBwdrZ;3ZLq3$2&Y_Y%g3#cBV!%;9)Gg5JCOMN(v>pO7XaKxcNc{*oXgPY0QXWwyBw zj`JP&cMfbDLo?fDS7eeQ`W!%GK-#K`!iu+yvN-PkdbSTExa zn^pl$@9Ev%`t*!N;$_qh~*D*5H!V1g`*G_wiE z^ewYkG798RdjH`GjP72RYGxIV<5|+Oq}vN7uQa#ufv;BI$tO-#?HZFhVI43IEVwR zUt5?pN@v+m^-5CY%F@LRw$cthKN;I|Je_NPEQ!%`OENUuTv9q^ZETCL&j%$&TJ2x^ zvM@9gwdcpl96#r%EESu)tZ>Rb)#*FttVuqvu5IzS{~e8v=gZ!a-x>;vH26)_9-^U1@i$AD=B-pNyY zr9BdmPocy4(irGIKWlV~$=3SqI7gNrN+tFKXFV^XUaIXch3_B3G83 zRe7poJRJq+FE({T8mF^lqRRZbYuWFjAY#loc*%@<{2hnD=CFI2~j`*GQ_I4$uvbN6-y$+1?)3oJcq zX7q`(Su$^C@rl=1GHPbpiwj?}=Vilpl4-|&L%)0@lvk`vl!ncy0l7;hT~2Z=CEd&! zjCD(|LNDaS%+mZY3#vmflzY7^K#naho`(h>M*BF6C9@2+n$GS0%TjM*_r*v|i&0IE z*IMbYUE#I7i}7qUF<#JL7PY(#=oa6 zJr9iu+UFoKBRgK7s*tV-EUBCdQQlDBcrMwVJI)6xzLCEjFP(qGi}3>uOw5M)cf43e z^403!c<0~pVyenls*l{wm#&XKsnyy!r=d;1!I0}9KEoFrIl8a1aiK-qVumF+UdzFF zhDqdVEbp%y=bt>j&o6PEF1#B!#&Qx(F3>R5=Jx;pbhW`4-~DNfDJiP3Km|u*8Ou|8 zLHa%&7F;w(0f@w56!(0|R8?s7P2GR0x!i4{$`;po=6Bwfq1*9dVoU-pm!c(0#WeF^ zwV-)f{_3c^ek`_3PRr`N^wZreG~8WO>6WJP!sRAfx*|S*DWqG=Pc|{0xC9M7C)N?Y ze^ry2WBFPrrx-2Kx$u1XZpLMWr65|~(RKNh1sV@p0xb=0RG6@B>CoMd_Mf@H-<3AT z&=}QweOq@KHSG%ZWcP$;BDbiGe zIZiU`r~dj#U2)|ci7w$B;fj$~Ioc@i3H@2eoyPS$cXW1a7*YO^N+-^PW><R?Hby#OB38S{@8~}Lar(+Jm9D^{!+te*! z)kYpuCe!Bov%-Og0XNuQ_^6hZ*tw+2}We?y^l9Ge*4uS-Y25ay@v z(R>>=y86{>{pvwo18vJAQ7^RWe`#hRv?D2-`-A%$ zb`l5&+~pyB%P95@7lJXEOSHQ%ZVxB)LX)ipeU*bi%Yw@+%uY&nV?1S%epJ`!7$ z*+Q-~JQVj#@E)-(qZ*l0y@%(2AI=UCY&tdF^~P;^d0MPVyCYH%uW*IrEcQP?n_!h2 ziys0tGS4(Bx~u>Btc2k6RZD`|iW_v@TOVkzKj?>vtb(`>Qy9+%V*WlHUZ|?-nTNg} zhva>z@hJ#BVadcZeaMxlFn(3TT6}AL&m2x4w{>)V$c?sslzDsj< zYNSxxiMo-mio&t3)fwORf{)E?I#HPR(6hD>gMKP#7@7EK$V-?bplizWF5D+zJoEl5X`rODFuOb(OJ;m#SPOyRF|y!#b}hho&LRi! zje4YWrV0AP{lZ6~+2vk*3D zu+*x;7tGU?gaeXt`NpD`-uOJsx-79EP#}hc%d{QFEIoM$(kkT~!Tyd9Q9jZy&>YUT zSA;zTu1N(H9LK8+OC9ZAP|!zPy1Qojq7~~Z>n;T(sZw3mqf2=fFdwN+!ziqM0JjLr(63yvrmS$Pzwj+1#i~FX1F31+GZC zebt^>PUc>yVLSt?6mOK$LDRAjv$(JDvw|OqS*F7}3WxiVnKni&lg4FIg*s<^WcP7$ zvB_)*8$yL4cK5EDX;aGkwKhr9cn&#P<)c;;%@v*X+|u~2xGiVf+iXAj!uy8nN@)NY zf5A6>71bA8TX5=P|GH)jukF2{YRb(w9jn=IYx;P5;XlE>#VlyUnH$FKQWC;^c)uBE zasZ`pA51`*3RN>npUNMG%w|JO%V1qH3P-PQ;8*skPYS5r5rM{@B zwDB4fO*B|pkGp*eG-3Q(b8sUG!l$t2B@FH(T&(~&cEfbBMH~7$=5N_tq6tuE7wGa`Ee~=p2K9 zihIr|M422omW1T;hjYJ7&(;o7k~M9b&^|u$DKpfK-)iLxOCuI6E7w3hT{A6^3U$L3 z=A>L5&!HLFQ>=2ayHU(Y%KP;=h4+rhOqukt zq#?wnn*v;TurzTb3ZT}_JuKgTg<=yo4`L|J&alTFJ-t2ZSU_T9O4TQv$i|+Q!;f9l zDEqz&FrI3i-*y)J9C}T2xUT?@7H#3)Sz+G?Ci5B}7~Y2$T)Y3OMnnGgUhbpIJ#7;Y zpMe@xt{xF|$-+;Dx1}hOQU8GZgCD~JZ!c6t|AVe?li3;k=;K4$|}e=z3MJ5D3-7bm;%G!+uiJzI`E3C2Z#x@FASTAI&{2GN;FcB56jlnR4t zr8~>&EeT5V)#iD2(o{QXc(^6uTFTQD#*`;a>Gghh0*tTO?|9UOuswNIqZmHg1#mct zHW2nYygH<7{1=n`S_B=my%k1GJ8tv(dT7|xFvveWKksJM+-C?J@7TtC6BKTB@NXDI zFJx(}yQ0#4!W>$2gC8fimzKH?*8vN%aIg1_*?(@cpFb9`Z?eNr#H zzOJ7|qVM8o*ryRQ!eIiW`V8#hpNgnaMwCS2!EY`8nmN0rE(F@XMOGs8saIQ8sk~b{ zztwt$O316cA@3VkzOO?o5eatl$)Y5K)V}hTezSEMLc2K|WQ2OaZOn3fbFJ$8ft?Pk zd3m_oNX>>u#ZK8-)vKWf0A3WxIGsG}n>+Z>Cwef+8cd#N_r^kf-js+^*1ttqA5EjA zCj$wH9-oFme0?r)d}8_=?)cV0koj3sh3Q#!BeDp4^y<@;1*o^89{=u7MGWZOE4Alq z2Y-PgJ#8R`QG-6yU)xtJo}~_$ ziA`sadRIflkSd7LRg{=YS*v0h7(LgdINR^ckz#1*3%>W>(ZHK;b7y?Z*iQ(>CK+^$S~nc`^xb^2jqY&a-|7Hd+O?R0iaY00cq%v1_1 z8n72jRu0P=c5`2=fpfEPL2Y2{VY2soe; z1R4S}iu)H24mBX(+jWifAaUu4dZ&QYcn?@c0<>XJrJlUbUigQ2w3B}mgqkCfG*`l1 z=zPI0Ck+zt>0qwe*`ig+SLkjn*UaG~*(C_-E>0YGv2R~`ZgP;b(LtCTi_MNj`$nqme+r~Na%e160Z2pJ5X+Ix~IA%7okZHG{x zzW%ubEMmp>50q6lyX}gPMNSZ6;QwdI2C-t2h(`8*NVv1cKKsi#AVu0hFYJW%gcW)n zd3GJ3Y21prgt>&CIy$sSL1sq$#i25CChje=GQTPvXkj+G>f1lZY{3^{V!X{Qzq!S3(X*KtEs?6y9KE)CdAs=({o9+vRurqs0J3uNO|{8{O5)2jjCaBA>K_(5 zw-#q|H-DCqol*^lVH`)(e|8K<+Lcc5+hJ#sgP%s>ePZ++X4GPWrz^p=I(EGR5$ox* zCvwX+V31n2ReI4^)Fz`nb{o)|e?pE*H#Pq@-;0~efC^0bt{6R^{r%g+gJS(tKL^BP z#5h$E@oO~pd6b)3l0PM4rhha(SrrBp+$5dVrXFFs?^atE*I?3eYJ{Ju-3fiL*5gw! zIJ6*<%Hsk16llF2_8a4AGc?_}7njeqSEcH!N3njI#3CWtU~i332-IxycYE3XtKEDp zOx?!@;rL&-r*3~Mr)c^w!PqmTF0Dn0?4GL!0yi}VRX4QgVzQ_9G&L}+(_zI*Zu_Y$ z5th?1<6J_C&X)IphZ{TN{i3*WTtqNS^A)m^F zNBf2;?LCsaQvMbG09cAY9KJ3QzpZ}#Y`$~nH)VHW${M|Er;q~7+r3jd)6{h47(T7& zZZ77ZIFJyvF5#;*d;4v<<`Bf00+c7qry52X54UTtUB@f=)8pHxs7X^4jl=0V8_%{N zzrL41_2vRG*>O@}ZA5TA<@Y!#ND(G90@j^=)aRjlgdQM;$WwF29%}^u2rK2FklT_` zs8O+ySMg<3yZHh!HifVs3)`(Lq&6ebmT3=Xy!wY7dpA(7xVlY5uAO-|^#lLMeUTm* zj{uLIm+g*T+dHJ)Zfm>bEj(VG{HLuVwXP!7S7rU~EA+^Ghys40YQ7~K!j=s`k%NV2 z5c9a9#sTPwdHfGbZ8`$$vUe>({Kek2faI+3Kl6p_!gZl9)`b=D&1yU+l$a5DU`w3f7@z2!QKe zd}g?@K$F%;oA`Ful~fG9q*?G}cxqna8?zE{q5oTA?+&_LQ*B6xh4=95JR-aYrKGaP}Y_A zDdx)i1R5=P6O_cJzu6WNc|PS1wNeM=0pO{k9fg|_3H~+dBw>%0wZ|&YC$v73M;l!H zYxep)WX-K%XyC82@L97y%pa-(6BEp&yHYU z1WL|8g9|SXlKuo){@bneuV1I$4oO`H<0!y|Qds?(?-7xVRD&VWvu8wdZY~myKLQ`v z!`v{~$7M`%0P6z}9s4V2R0qC&c{ zg_KSshmt|9o$z?y>6Lja{yo*9(#KSCchlUfy_mmP(ceagLJvsz1{~3v(5FCsOFU=< zRewMAwABcz`F>y}O4eT6Uy@8sIfl0NZdLVu_#Fl&DSg8p+f?9=tyX0GEIdi=K+j5` z=T3yka-M0}mr;z;&KG;dv#i1I>dDjn1ZN7;d=n+96l{MjB(v0WC+AtW(W~&(mW>EI zr(H8Aa!D`2kVT_WbSQ$PTQP5l@nA$x&wHA(j)i0Sr}Z(L{2G0KY86^gBtx^=C&b7i ze9U0(LW)a!M1Yw+zowgiUh&cEOj+!pJQ#*7_bNK_`EXpwufaAsqgEDo*7{+yNfN(1 z-ae1fSzq9oIXlIgwA&F8NRRLnC)XqN_n$K%m5(|vr%*JemO5a4TkM=&M66}%&(Zfd zbe%9O314a7`7!{HuKT$`b^v9w5ogct7g4Jl%$AUz4=+&dhG3{2-DK})dt@b*O=LjO zcdTunC&jp)n8mT+fd4x9U5rc~c^8Zf_?$|-+0vvoVE2uDe3NvBb!N(?8U=q#Te+z+ z)?R2=LDt3Pn%S2g{e7}0zbh+_c&-Q|OH(My$;YLwXj)Ezze%>jDE~R46xlzd#Zt(= zv)8+*ce|JBYW@oX{|m3Hl{S&n-Y)2Eehh6Q<=p-0?U5hqwQdroPBv2`*E~g$KDrx zBYvCW^`^>Lq)tL$JEZ#jpNTdXAn8;d4#$t6xz~UsbFu6%;UQEA?$Lty<7S~@yDhwP z$cMCme5Sw!p^dHVw)V!Fep(We^@YS5cwDdbP>)nP)4sx~fz0_w$if{_?ljsb*cQtd ztn6}Tqm90k;9HG+X>L5(im-I<4!338J9)z*aQ6?Ek%IpAw4q7#&zMZ zUV)1bRjQ~HITNA3+REbqmEE3N49gArPF*lrrl+EeRg_IFn8nGtZ03C0b*h!s1(z8vxr%w5I>`;WJ zjXSXSB~lZ$2N?~}@E~*#1BZ7o+2n{iu)_({FtlJ+R*~pe$EHGLs7sb3KCVkvBtCRS z_U{x90|$3_vdJ&%z%NephoR-OvPwi3SLED^mav#>@;PQgX_?aCmO@h(pjt`(ase)v=fp|_NhZV zorDiVYi6-Z#L&8A6(YnHiQ2(ulc9AWhZFi?VCN3UFeQH$ph(nlh4t^SWs@E2j1`Fw z>Oe0}bcZQrvj8RH%{pUwqH~?GGLf^+_%6}3&RB`)`aUR7j_hef!#X_ zBfyEBI-1wpNzNu8SQCxZeYG6-j5CNSuCU)bbtAyJ9pg;$ojQ>B(agj;rM^NQ5wL{b zHAjCV*XOD zY`UskMI?vo6;ns$r+2ZzQXHErxt^F5giHnge!#+gpWsZqEb$Yf5e1i&<@!h$f^naa&T{^re0*L*l1V^>-oyZiISBIclHcxGTjuU>lETaZL@69b0(c;o~KA zRVZ2C$6_S;F*T_Nxg9p3G;!GGj9s$#C%y#Q{|Nt_?zQlGc8ltw5#R2G8B4Ef2R9O+ zvqEJUWcu#nl1l~Fq7vQu0+VDh&z@S7MXbot&$A#p1mH2B&r0A}O8HqH>Z}{tqBfCR z^BUmOp6j`8b9xq>7xv+k%(8tzsb}-FH~c_d@{e9!0#Ts4qU0!U+W{N;%@ci4`7G>X z8|vW9$^rkJX@?Sgo;-luKESkG3O4?ke_mg9N{HK9L#m#b9lPh?9Ut4sX63$nP_kg$>VbZU4vgOjeLe9n z?7!AKkiBOjBu@2TPy|u^VblI?Jx0bmzBX;GBWi&Se<80EhV52WBqWbXqQPqTevKlr zYPJy`oSe4m+cHC`}5wPwUj%@Q@9@RrJy3T%5AoMd%VrPjqBJ+w-sk*WC_kSr!< zLt|03kXEO&h`xW}egDGxj(;DGXqe}PjG$XwY2FEoSbR-+jp{;LRN&EbJlV(|8rO4D z6Lu+(@3A(v+h}+^uoij{*@G|mfMN4)g>48=zWV;_ADC87c-8lkq%XC2iyQim7~hNh zHCm@HJ^!q!^a%`&__Kao9FqbeJe$@>q4gKW|1Rp=0fYeh3s3*DrCY1B`+OL5%7LMS zicW~d!L;d%;!+Laqs7Wt*s9Njzf|3!Ox>&6;oeSp0s0{?L8<>csHDo&QCj}HGi}k= zDPIxqqRa{m)_wUJJ_A`6mnm5z{3=$W!he=+ff@q3N>}lR@}Jy(x|u2e#?B8_38%LR z|3#(GsW~Cqh?b*aF41~m_>jwd#r)tRLTSoh8q<2WDRLT_FYk&)6Fk&!<_-A{An@@mgg0hYLk(!BK)7=AyPnD=d6&nVpA89i62TtbNe3 zX)XM1Zl6iY7PF?rl*gOKa4RZlxGIp6yJ#6+O3R_UQS++deR#x40%~?P0f|}w{Xt{) zRFCn9>>`S}B?!FSI00?wvMV6#7QuKh6U5&nhzB9n6>Q~+d`5=3?13|h5_L7-8i=7t zWqi#Dq+!+~8}eaxI)f}w2Xi`UNUQN3A=?B{r~Xk#=aJnq)wIt)+Ca7L}$P9A2bql^}aeg|R zh#aB#)=^)cfJfRpcLXYP1YRycB9NIBl>q9Gaujo!{Ou4bovj5No=-= zrY7lhbgaCl>Q{r+tJ5{Zb2Ylk%%s+-{(qh^R1b-G`U$f}KfsqTGDgCtC8)nj%64T5 z?$aXwNxZ^~eI~pkKX0zhz!`#f$Rq(%<(qUfscjPB-vs$=OZ^}CMGpuVE*AM~o7C7k zFY$j9+^|j?!oJ}9Cv!Um-TiO7#bpVTkk$+;{?Q(8wpP9cvpGECJ~2;2o1bdXhkMpF zby8>KKN&7uNVUlpT<8CiplP_`!I4w_qbk-@px*!a;Dfw^z1=8(yz0rWA+m6?J1G*5 z39gUWLw|T~B0E=d2j&Zdmoe4KYYta1k&?Lbv%!ss(*`g`j}o*Wab$ zCwUSzepC}Rpz4z~h!|N@^5DbM**~jOVq}u!9$N;L-fZ!jlv!8-(RA%`lkM8@lAC@= z+n^(@s(fS!ylP_B?`fN<7cLv?<-W%<(q24RV2u=t7BCC`@p{*p-1^+F;-tl>(_0KH z7e*_X87$gu*Hr0&lXIiy?2L+KEyRaVMxB)VG?`Y}hOCaJ?TyxB7+<1gKZd+$v7~M# z+Tn5y(UXMx(@XbKAO@_j=!RM~M^+IM+bx~0fEWH{1B6vKmA_Vt$9uw>t4U^?MB-j& z_g<#_*@Coal%1Kq_u>5}i%gO*4;=e;(&DD-R1wY07<)5t*maT4Dlu}4+BmlAP)ge3 z7eVLd{`RYz?qA8;I6x*fSt`%Pz6QJft6jSo2IgTTsSC4|AWkH*TZ|-{?jouN`l5U! zuu~L47VDR=5Ar~$cCQrRz~Kk6Ww3oqn60F_YG@5Vd3q?`KMiydK~4GJj0%|7a7`zP zRoQvJ6DM_g|K4yq&iRg$PoqLEz+|PK?ZviOMJz~B z7y7XU5)ieYR+JW6yVOUIO&h>&9&GNqt<5Ay2o{|vEM!Zdf)h*$xE6ZjX0RD>k8;m7 znnTf+Yxjii#8z%-o`=3emNW^DW zVrA|e5i%uoH#CDxF}MC8~tM2Z)A1heHoMO8!jf!H0U`*Ovf4yUk?$;i&^y z(X1WrY|;+{sQ9O3>c*1Vw88Gt{HV(zG0xs39KQ50MHaE{>RaU>GgW$O~*k$Ll%4j zqDe9xZKgOaWFmHGg%8Xm$%p`a4foSL%TFHi!wmNuiRptX3s?#2TGjyGkMM4WcnSNG zLb!y@w5>e+^D}*JAYq53;1rXTZUg&!NX-@lC@2zbVdvprKTwrJCFjJV zTkrsiVuX^Pc)zSp@L_-yC3#~FANQ`EiEyLD_nGeL6`V?DyN3`VZ$mr-x~-0*8%N1Q z>eO)}AVo;Pgzx5i!mAi?EOb7xV)+CtUJy+pRzK;I>!=ht_MTm-ZsvSJe4 zOqnk9#nn!SG>~GqOP9AJ=X!7pRnTrir0*Ea5Sbl|75?3HgY>k-cOlY$DAvhA+xQVY6g=vi;y$QBLXW5Sl;7q726P#(2c$MNd zp}X}McAX%`(FU}Rht6ytQsqM-l}V?%g=jR6_~$9eyB|GXl5BGd(I(6>z~VMJf{H-b z$PY`5Ckx=o6y=H1?J?LJXvwDJ))*`n8o8+u^oRNy2hWCL)w@)RB9K|_HbTb}mmo*F ztx&XjmqkAI1%bRhhQE(QZc1*Cv851{AdReKcbr>h`yg)l1i?b)DygY1B-M?hy$KOQ z%a}sA3xRIy8w}^0(XMNEoD7ZKWUJIc3X?BS08A~&3b4k|KigD$UCLZOdIU#5eT@dr z%1yR%9dINCPy(uFg|OkG4UzXKv(8Z8=G%Tw2Iz^igYVZlq1TtwGuwM{yV`{JDs(Dg zKc)dbgshMDt8C9(DGW_#1V#91Q_j}0u61*6H?c4_Qox;H?{jqQ$w_!x0vhyg2hPV) zd?o-wSHPAqOaa<~aKjw5e8>_Z={F5pKW>vIeKZ`zr*0Czi~;0Ewv+GT_bE$szmYw- zzBnBH9A#A!r(j4;Rv*NcQF}^2)iPSJb~y-I{kN~qY2!p2B@{D_+0{A2Mzwe0#J{|y zUY)?#?PqU=XHy;|gcOp+57JTlgp{qfRB7DZ34DzXdL4W|T(^c=x~bvynUbc^X21Au zssT1Lg%fZ2i8nTM3nO=^w{SMYCxisO zjV1+h89QOY0QQQJ++Kn#ilN9&fUULBC|r8#7~GREq`x7nLgu=KYs#VwvJ-R-KtE$B zd=p?ZZR8lvB7F?@f^hd14xLTOVkZ!c!^jP{aC2EuFGe!j0A|Ms>BX(+ZBTs(+xi>C zEJ_?Zq0Rv2#7OQbL6*l*9!;QawW;}=zIO^>zi~}zV@OxRoZd!y7UhJU;A;TWWhBE4 zU~Y_%qtZ4?H9H~K02aas`HjQVfZ#v~*WXCKOFm^MOc=nxjAVuhG*}y!y9u~mfJEUq z^fuhGD4pztbVI5MBbitNYmR}YZi=Uk`O1++Z{ZB{4hXvX8zGA1B6dRArg-|8MJ7~_ zk^Hm-ZmkXbu?dhY0HJXcdK-Ni(ASLQg%bEvZED7*TiO`Nmtb`Zhs~fIuoGkrs1F#) zz9q09G3}dzHE=s^bSKU@b*#@omWmuJ!5hQBqB89%paMgb`1Uy5nc%j~fL`D2&~hOl ze2$JRE|PUiV55_?*Jq(q+nC7$tkG%ZCcH+J4BRkQA~PML#Fps`z%L0rRnV?w-2z(K zJ$-(iI5#)el(~H@o87)oHRd`*58-N3Z=+L7U<;FNRGL-z{`u72uWN`Ln}oF6I1^O1 z%V3{i;iKEswJjjv_%7Mz)*;akWZW{^xJg9+sdjjS~m|7+}{ez)! z@a7TX^lRLZA+@|mlHeK)^*CWAhD^w^#RA+2tQ$?R&TUYIDAb#00%jlI&bA!Q(`HYF zRT_@!PK-4vk*{F-e3z-?zfW{%paj#_!mHvc45%*e_Gi;up)QON*$J4LHY{t?B6TcT zjy!#f=53)tjAWe>@N;d@91i_u4CzB?pq&HRS4i#0q0<lW*bL43X6_6wV2%sWz-&6DCuDoWvo&jDcPdj&I?P45(Ok!ow13Lkx{xRcN;6 zML_Fq*tGsThN&XkynHccD8LYEkA$Aw47`;Bv+tarVGCVHU?V+n>}l`AoFQ< ztPjdwG5Kop=k_~2JYf&7t?Hr; zdB(r9P@uVx;Uo6yYbOR$+{rx>!->lOeVUtN;sY8^J@9IkPkU?rqPiC*#%)|8Vnq`F z$F*rH&++b|)7^+)6@_Nw<p67E;*;Hx*=_$wve!>e&A~Fp$6Y;o-NH%ur2pF2m;D zh8q$hY7J)BLZr;O240RH-o0~wxZ$e8UFR3G?h@?Xw#$FB1j;`m-#>n!BQ}Py3%ki~ zc+H1C)#G@NIlC-{7=(WgM^VkfboKY0~@8IR3x#1o51KUcG ztl$yTltT8E0mb8wAFWHA`R)|2+Ue!rx`le`9qk^JXk8MRI?lUX_&ro4Q_sR#qRtGl z)#`aq>gjZwN$H;_E{c4`IUfFi0w|OBqqgVhaxW=%j_LRAO0Ea+q@u53A%VGfZ;GV8 zb61S?luAu7zxnl9%U^Z1;VyU8

UxKTLv|b|MowUAfEceMtD{kfSAAkNI;=eEPytclz`AZZSKl$A`>u{NUg0t+> zzsh{%WVh}L1Es#yT%5h$Nb^~N&)=_qOGZSTbLJ-$3O_xT;V(sc{rjx<(oXF5clU3% z!M1}uLoI0;?mXpMf90+jz8q=jN}Wp7ElPj*>1|;l6e6vy4RVPh5#55(5HCH%`U|(8xvdR;`y?-*x-QXmx5w<0L^)TlpIBa@m}tFI6z{*M9=ne| zDLV3&-`!+tSbuzLSG4NOl<*yLufa1<-1{_vS&x9T6~AMiaJma!62$SnKw)Si6zaOJ7tlfYD5 z{*_$7wnuV$`?VBdnd-kQl7Yd_loDOH{-%?hK;;pU6oZ@p%1!lNmo=BTCkR$BsEHtl z`_*9zS2ne>5yj=?XZ-$VdMOV@%gvtaTdmh{KUC0q*Kkuzy1T5@&H0zOn3avQvqO?a zs7g6t{=_t36hHY`{!YLPb?#4U>3r&iqDTq;^s|JtL&u3{unY~Zk-M3Wk}o_qAL5=* zIsX1K8-)5m8e>~o{lago5cMzU6kW3c%KRL-@}uRkZUwvABM*^OBXM>s_3&qUx*)xN z0$fi)CSX-=&b#PbAb+4KW;M1A$*f zgp6;=>3%+VAd~9)Yn5Hi_0M3SGS?G}oBoUvvT5?v@6KFYsIIifoQ-C2<&X4P9JjH^_`B{_UX{2V8%dnLNKkO;5z|g@nmxJ^=AO+hT;ObAkEIOJwM;&+1(A%8#Y`-V~x023*UM5{)M7Z$g~~9t{-Ab2=l+ zf^|vYBT<3tjYS5+9($y{&o-IQspm7 zr4E?cMp-ze?pykOIars7FXTnSn|MbV;i6ssoEN{*oEL^hJD4Vz*7 zC(>zIKWM8;SxZvvys5Yj{%c*OtJvC9%EFM6hNWKgWSUN8qLIIr9~y`Cm}M-+ zy32?nCoFi0RGh9wE(`t>sc0&bsvY05LuW)5+NH3!rgky&N9#w=56LPCE2mLwm!#yG z-Ah!@sCnNheEdvh8D{D<6M35MolNBE&~ZjG`SGJUmEEMC=>yU(jN&L$dPQNCDdr7_ zWRfKW8cXd6Bk$Z+Ie~w zeToSwCh^prPuW37BTVr5cvjCR?6;B$+1unJS#C!!xVY11ACNY3VdB)$D&avL~|a)1s+3>EzilBymp5j*yu@FQ=5K zx5>Vh({m&v`$l?tWjvosTuQI zMNDgh`jNY=9X4{&8x}%VlWK*W!zqoPIQ8T%_n7(6eOqI5@wb#>%j-fYy`cg5it4{| zYO1EkMt!`rx6B)P&hdGAemtGkd5dzT7|^k#-hEY5cbjW7azD(h5NEcK+pdC-Sd^m+ zBQ++cJoQs()td^5B8(OR8iy zOsw98yh!V-ty=w6ZZyVQMCC3yBj;3loX&0P3pf8IKu_>Z3#+EyVCE$D;wma}=Mzqi{wixQO3O7 zzDU@Ha@3Ne6(x+Z)>aXle4)_z$)*2V!TgEef-Nt1-;^k(eKRYExTp_LnZ0CQY!)rt z$rtk3awC^Qd$$O?Qg1o>eXEV!WVaQOvTK~uZ{xMKuP)>-M(@k&TG3ctWQCVfQyRT@ zsgxN8v#fD>ZPA8uu$23HDT&r!Qdin4^_Q1hLLK+b!Zy9pZK^I6wRiE}hulC$t?x95 z#_5Ujuhei{?qf(tO>!Vq6Lm#NG5K3WVu{;YE64jBb6i_>$@%Xm%%e&D0wmuZ^5h|2 zxNnt_?nB25V_b6SUDSu{A8@HBck*_&YUm}iL(8a~hN!Ppgua>bUj)>Z-l=o7tRZst zi)rZU7_+2&OTw1ap4zZ>Zfj96Nv*RROEY5H7Tj11s`Mb0(pW3Co;b?TMoGQFmHSAE zfw@G#K4tVPRbG8nt47vH_9(Ttmks<4vivJw{pfuS^~P5ERZB7HJ#)Nx2vWb|D!sd9 zv1dsyvoeSe8TYYxLd{tn$C^vIos-d^=}HajJ-qE;2(X5LV zTnamL*_r&w_r*jpjO=Ks-E=C)tZ!E(GE>McQj)R8ET>_T6_Qu>U~TBBxp);jUHL-5 z8LD>nJib<=U)HDv>7yC_rdSoLF5dl-Ke_Lt#pS|}U2P&6^*5GsD=xh-nPflCejq7l z5V;e~r(>>@tWPnSpOchM_Hh;ZJuWNX+S181G0~G!(F(a0*82!8BXw45w)tbvu#2CM z^+uzLq>}m-wTh!mweCP7#IUjdKfmKWqUfJf4s|1U40>l#EqA%H5^;8m$`xd~GREAY z$M&kUegnZ@;r337o@D-&u0_#Bzmm$GUaMNSYX2oo_Du0i zF*GNaDp`G*aSARu*^3lYE`Fb}?@nzu*RW;FOD`&>r`K+_pQi51<%@_*2 zWIo4NaojhGX5{=NGcF-BG7`LG-Dw-mB;|sTFv-NmU;VtUc=3q2IHT61HtR)Yw#g^b z?$DULAIQjQcB5XK*1q7s7N>P~VBE^rWofUJe3K-%j6xZ~i5NQ!`BuZ~x+n3;nJhu8 zWpx&h{}FEozic+^6f@uWcJ`Oz0iv2 zg_i3Ywk0@Crx+KqKV(nNdX$Yys?kCoaJKl!a7_d zlD?eW>(k<27gNk(ousx9lU`&qC3 zy9>K3XhzB82AXiPGO+h;Be#h9c7UA8dL_M8>Uty1Mtz?iTl<=YT?F;QhEDdoxzKAR z-5u#kUS9WfiTT~WuA2XChIgI+yU*G=eeaF@$v#+HP4?XMSG|dq^*QeME^)nAkyEFf z!2erVY1f3F>|=F??NmB!JYg?7T5ja0@HKlASG%F?DX#LRGA6fm@)|A?PZn;1qjKk- z*Y{!>xs&C@RTJ;%xG7ugFWS(y^DH;c%LQbuaX7AxE-l}jqLapzc4 z&bpx&e|3%mmyOA(Brl^-R$N*(ryo3}#Vho5DsRN(6e)gWw8<5koXK+f5`dAz{IgMQ zxgP&ptLZIS(psk~E;l9#KkEMXn3#|BmhVqv`jg)9Kji68V=9@aRwa5_!&u>6R8zT0 zlba!0THiv-Nn2;Ua{Wrmo;zmmhElm?H8Zh)$-`MYDtCwaHdO0N-X=v)TM-lZ0%sO>f=2U)f_tbzStfwA^gi4QN|) z%jmvCM!n4C@~Sdwq2*qOkwPCATjnNV=bNjcm_b#c-`{ZHOIMRF4MKcXx-m;^oEFVdI4a6>w(!%#+Gp1Blx`(t zV`hH+5vBO(moB~O2Z)He=qD|`w9=zWG_$pwvkwyfQf z$VIs<1)H1L zU-ui0>1A`qb^5a~v5eI6pZQ?{lL=im($ao%xh$Vp<1Y0V!pekHt&?zN?I`+R!xgT3 z|Fphha_uIc1>=8SUq!#Q_0^^BFmk!T$f)EP8`F#9#9#1PxKgV-9~m7>6|(Gy^W39llwBP?NTy1-Gj{DCiGT$cUnTlUzHmJ zQp`g!z2b~fO9@wwEfYyIAH`$^Lf=*CllFO@*4tq?lzh&!_l!yB0 z*e=E8~d?hZ&v?_hzEt{;)8{6Y4e{C$sYWV;j zN&4*|BYI0Nket?J(mySyN)^#i??W1sU)CeD0R-vf; zV26GhN=4=4K^1dl?Ps8P@iS1DxWp2X{v@Btb!#JAu&h4cuJl*Ua-4UA)#oN_n7p!2 zMD2Q8F4Fbr?LYDB#bAzEKC7S3^YQ|hHe*vDdj?q*WaCzN5H8zidxOW?7q66~dL-+5 z)|F~XHo?_$fRd|O7L0`SS60MI%|W6Ndz~@n>yEMTkwwa(pJ*%ObB(r)908@iLl-8g zoICcf#zVQIDaKGDMeX{_WZAV;%EtuR14Qi;d9ft_C6Cn+Z8ywp>XMa(3pw2k`%7DU z@}zT1Gx}pDB|nTHE3*8cO+#GBS2{~iF;hC}_6E0)`;q7?-aYQh{olAge&YnC9g2$Kvbny z0N9uovWybBgs-Z-*eKXDS~q#u%iHN^)p}L7@t(mSX7ajEk{^?+_J@mfB(z79e9Mm+ zRoJzWTnjXe+ow2YD!MCk%AsD$v#@xjUd>e(%=#lE?6BgIxQueSxR*nJb%MQZN**oh zCm(Xp91^dPufgfO>+yexPab+z>-@-wDa7}G%2}N;CF6;FI`{t+-^L~N@g4Nn<4Yx3 z+p6SxA|j`YikQBzmgl|nU>sbouDIl?h_0Gsta9*TUt29#?aYGmIZtjC5;}%u#AW0u zWZgOXUt{q<$G}+qOK~M+-j*L#lSk0iS_9Sk<9@8-tSVKT!aY3-pr+{)}e_6DvMHaBUJ%`JusBm0r;>gQpUyxIAlh zUk0UAa!DaylXQWh31!ii11;-kmZhyCos)|Xe^HXo{(q#sTeIWHktWDYl}c)jMk8r@ zwB6e79(7MmOlwVMNsu4_j@OadxmIS?smxT~B&8nKKma5_f&hpMZ%_NP_HlpKJnrWn z0bWjKR$^^ssyyKyfw+43CBi*u-;6G?h(kUQ;o!|7N8CDcqR0x-7>2bC(-z%yJ@Kf$ z96`uBTsM2op_Jo_LEdM>*}1a#RQi%dIJ6p$0=LB5$Kj|1@W9c?mOijIvt?g9Jb6%b zhU}MgBS9qn^R{|l@+QE-e1X57{Cg?5O9;ZB>c6hj`&pZU8uIgFdNl6+;uOL{{PG+| zZNGkqLCt^vAr7tl=3`j2_zxe)qxIi@DhECJr%&ghSO4-ux#;2VemEb!{kPARK+nJW zd>M>Fbt#1r{d>1^7~NxgfHfP4w;_8Mak@PpOC5%rG`Q3hC7zSH8n5l_5K`0nbL2b{StkrvF&7wBrhtO30ng3{O*^h^F1 zv;8yucK}tjO*QrLP@xJcj0X1~Qcaz3k+-dXHE z)H&m|{1`R<+;-(y409zj=js`9`){=G^Y=)(Vvw+T#~wm=G7eXJ z0D?Y#E#9CfUX{S{_c!wWm$r+2Ipq5J@6ctwfxhtUjC|PiSmVMB}XMfFL z$#<{=NwdK+lCSz)1A1zsKSPeq7~YOJ5(_G>_<=pPnbNO76<09l@vjJj>)!wM$i5zo z+)KxXjK5*o?Or>#u5FLyaSBgD6xdD$-Eib4JFf|0@P+S{xTM~~LcIh9dmJ{&7oD&| zY`zYL^tSl{gdvBZd9a1Y^2h*R^|14}BUiwXYNFMA$^SZ+`Y)L5WBUd<5D8!&?9k(} zdy}|QvBQhL1kq0Ykg(WHHzSEqluHR)2FII{UCsIYWYq6taZjL;grPX>?#;51!*CyS zm;{KU&%x06+qyXYROBMNkTRA}4IrMmq~4$)j>nM7e?Ri<8wiU#_tL(!VV&^>334#) zBM|%O>cC)rI=T{~7%^6-prJfHrunf8w!#O@F0M`;U^|`D{_G;G6%?)R9#-+i>y!5QDZ?fv$o1l!l{ z;o@oB`^`z-r3BaT#vKWM#7;j$a6{RQa(*Rs9r66QiF3Hxy*fR2mW%x-S_oL&H98l!% zKAk5z|DDX+gA$;h=O4ok#bpTV^Z$L_KGH{~O^7~E=A8MNEwgkjCxTZ8b>tr&a z-*eswwci}5{pN()e-8M_3%DGtKvPaqrrZ~DYKgreb0OIN9eBlW9$@a+Ucegs;uOz< ze+0R~&eljlPK<8Azxm%Q&>j9|3y@vq`K+6r*BQs>aC|n;C%mxs1SiVQ?IDour;LLY zafMoMd)`4th->!fy5%?EYX@}(>d$G+xmInQANo=U(vI#P253O#c|3xmhVTE^&zvjU zadb4oW$PR7+#LMQ(X2gcUz*^c&(TfmgAdIF-wx#w2EI$TZP>-u?d|yP?(X&y#^=}^ zNrK&*dQ5zqu3sWGugocxHlyI?zs`iQl557PKC|*B`-xygEc=vY#mX%EAQ3*tp(4EY1GN74M2Z zzv3g8(Bj1cby^>iOC%5XS^CeqlglF$-%#-sVy%}=;}IVLkIfu%TiE_0-sH$0hWV9= z_L3+}IdT}wapsA?Hu{eCINk{g5|bGVhM|a}TlR|PWk%nw<$}|dlqI!)?yT-c~gm~?;m%~7U+Bq^C z<>ehT?fqnNERFaWdra)mL`MU@t{rgX8%Lt{`Lztpq4qu>TKzHi&AH{6P?Yd^(cGc- zFXvamtb|lL+h~$rfANF0Z2;o`K!C zY_V7)c13W-9R-X{-iu?dp|25#`g&k=(|WM5#Wxf`Gd|Ge3z@dh%+5G%XhYl}Ks)>* z%~)I@#A!fIeGdH`_O<^#zk?>q#VfD_7--VbJoU>zP|mRy)V9g`9J?Bl5aTq z2Fag(9i&N?)PL-K`L+K0=#Ra}fBg5}-~CaZjFh(`|46+b{gHm(`{IxMh9v*{H~yDj zj^uxT-}{pP0Q`ym`}^MG%VF>T`Mb;8G?`tD60!ny`TffaYd`~a=?6_6U5rAqTy+^F zWpFWy$nwkufD}tS*~ndNG=j<*Vx#FaLUB7Zj`O zAPN(p=VXQI_RZ6aQAO5L-I}ISvZm@*H?<^drfyAB3$h}0D>Y_h#p;_k7uJd#^~`)& zkTqA&^oJ|57V4S#FefWf&*a0BtW@3O!<=mO+;p`jD^o8_Eo-t0^+MOOA#0^xm|7aL za`mE0{VKk2`eZfgh53FsW(qwyn24&I5g<1 zx4I!`K-NaRm4=)lSzGm1H{@7kt<_tu&auhbslS>JMr7@kZ-6lkhRWAp`!ukX>3*LY zW}lX5-r%L{u+kqY#Z zIa3;pm03QUc1ULRg`JSEg1p%A@+K;1$}-9>>;(lXjAj@1hE^&})(JPVra_@1GlrN3 z6BX$(Bs2(AWI8*efv=((^PJNlQIT|NPJ>WQOFys%7o#y*Lk-v$Baf_s07C#iS+<(h zOd76AOiL*ZrYg}bEom@QNwf{p3p=KBE|ubTYA zE@`3CnyF``mVSWQSyQ2wNl@k&Ba7BZhGCBHhqP7Mq$)1#8F?xL%C0C?nVIW?26L60 z&XqJsRjxZ%(O{`^)1ws)7Ah~p>4m+bIj5EvBZsWM$_*KAXs}YbskEj+rgG_XLxWru ze(7I~2DDK{+Ehy{$(Bl0iysU>(POS zp^V{S-U$x_?OjgF2<^BI*^47X!z^9~yNhZ=K0ch57lTCxs#?S+d=4{unHI5sQH11$ z>QdI0ep4~=jj3R;%g;Kdq#G1B33|i*Rry1KsJ}kvjlv~DQzk; zbpjmWOlHGh%%%*(L%uhCdk-stTM&U8I3bwj1Pj+2XGPu@;lquw;)LQZ4R)-#Cj zldM6v>K$!|2K6!(%$By6!Mu@;;M9BCj?{IU2a8QoMb~*&=S}$xjf2*(c}s_ig7cBr zl^z&54fAWKim4KW zo|PdLOZ8zd22^0Zc)6WqMN^m4Wga%*3eL)-3=<1hf*JdPk+@V~^2)rbF1!i$M~L|{ zL=G)t9;)kx*B#=#-{-WDK?ydsP&a1L$4KRM>Brb&HbkRmtDA3`jv;jtb@Q5&Dfy|o zdC$o;`Hi~qXR`>47sM2~fJ&sZ5zR+PS21r7$nT_7H->%^vNr%gqLx;-6-IBdlhS zvury-zmc5}uHbo$UgqF7&f23re|)}4mJ|bNwkYd5m<%WBVqit1fx6Wj8)A2{II%XMQ{1M} zQds7yPnoZ7waj1AsE>3}?_MwcG<}V2R6>v?SjN#-XMhOKGpDdC_$#d)R5Y@Y*83DI zm#)=qQ60ohg!aeyr z^$k;j*QZgSzR{zETv{yEH&A5P=xQH$({T(V-KuZO$cM~pS!YVs`V4m;LDo5I%zQs- zGwz^SwI5_uJ1yS)x$vggqO-U~>niFYHED}_o%)$!*ItCe;NK?4Pz6TQOw>1K%fN=8 zV`5m;msFSP>E$btZcCb^>Zu<@i;H|D>GQLLUqG31@j zf3JUxu>#H&t#WcH0i5n-?BpQB{Ty11ut7netcr`4+lq+e>g-MU)nT5N>+A8 zqe4BC@r-D?Iyn*;TI$(Sqf4ZCV|zZ0Qclkju%g{F5MWO66qq7SSaV}hu~W}PYwA-m zRYy6w+EWnN`>EW17s=cd|t*@+J(cD)LH4j*w<3wZ2#OKMx*DKojXE^EP7;1IUKf@cI&{VXW zNrqOr4&4HK9*<4NX{%5Z$GO2Dw4FUcwx8nk)Ii-F>&g!$H?)|jhdL3cYOH(hA2r)j z5GBu*f7EGh#SC0J-!gcIsj?qQ#;Gt^Qr#EipkA8eOaJdFy*Lan<)=2+h*SyvU`f0V>6Y z)e6dxW?S{Wp6LZ5@*0e}vUY2vBp(af)tb#&Iz$(q98ko6``g2hQrc$$-) zWJHGy*4!RsqS2_Tqws;kB5K9TYZ7=M8&^(a~c z%mfA>)GgXGz7Tk>wTm%Lw@8CRV^C2d>C+>OgsMVt=Fp(3spdNCj~QVN6@AV-s`D0Q zkzmYDoKdwnzz0qH51^@4Ciqre-cV*S;y4v+s`n?Dw#F?rqZ9O*4#@S^!;{>TiIu$U zB+saWBWhMB*mI4LKeDESlYBDS=>~R{HP)FzB@NY^7Hp?vL(QPY9hsp`P2OT#5|jCfTkJVgl#WD)%G){UQzMK0 zQCf!bEuYP1$0DcvS7*xiFUtt~QI7BeT2D?Mb8gX_X$}cB|yHS|5-nySpr@ zv&)6d;K^juv0(^1YN189RvWo&XVyRvj zSq7R|4%Ley%06-`9ZpWLMm!;`zzq0aytMP2}H zBb*+tR)-Vy0-HwWE`+_b)L_ZN!yTf3ZGl#Ywm>p4fEf4E=VQ`1s*(z2(H%?}aOU8& zXlS`rFL?qdH1X9-J!cu_tX41i@P9`h3LsIDS1FeD`pDnj^2O@QJjo!pBN!c!d}2F? zK#C*_X*N_ZnbE94z^OXnA`Uf``hbOif9%x9m%|?s{81P92%fr zU%iU+i=rm4R$AXYw+dl~xP5h|iLNLao?x_HXwfn~L7twH+qBr}tfOHF9eiLad1x78 ziJWztb#5Bst8seFI@pE-TGS8G+OmPkKMr+PYaL?O4P13{7VgtFKftZU=hHk=ADj?_ z{g3DBfedR(+J)+4@(aRipgtzKnwoYCo%6u#!|2Cun{(PUOzH9AlY=?8qeXm<)Z+$g z7zgV77`so4Onq>K4JsW^G}=F28Gxeo9*Aj%vGJ{Xdrssz*d)HAUY(hSB`s&_l{QbN zG{X?YJV|Mes+u&qiBf+Tg%_UBvocYypXz(llqL%RoLtaku3o>md&59ZlT5ufyJ|^J zqh1GKA1o!8Na~GK5oq(Z**Gh5b^usnjB|1}iZ9O~aVLR#tv5Hj&8*ey7|h|porSBh z4-P+SjeSV`1C2i1V=N1b(Q-25L)$fZ=qjHO>swLm(;4NCdTrzkc0O$A*Q=6ua6O<9rHcRzUrKWCZQ<`=K;@l9p{~JS`4Y>m)gdNc& zRBtpvVzVzc>P;M#(KIhvlk%vj8NtV)3-T7~)Y6UIKRAWNQjt)oNlhT8-72 zCYRBwQXi;s1+8}KOoyweM0X99f=4b#3QVgo-T-k%)1i7}2m(A~o&l0mhw+YF=fv-8 zI0YawZ%Ffjq}lxktOf)=9;&w!IdE;ruQ|;Z8oo_#aP$@%&XC4bO=%LTw_4ltJ#vB8 z^9EVGIQ1wSqL^rV{(xLxz0E?cM-4Le`O%=!qrkz3!4ahuDM$(Eqk=rwq@Z>Wxjud1 z?b6=Ufbo7<(FTK+Q*GZTH$hs@AB_4XDm>*7`xexfqR{8OQHwggYaLOFE}ve%E^A6K zzz1?18n2JpEwl^^X}i`yE5ODy$2g0YKgX0d0K=1e$dr~CPEnj6KQ)xZ8hgg~)|4!O zhT>E@G~P>6F7&qKZPZ)w^YI;W(NRMrVAb0~&7=sF2 z_0G%(h-{ATt<9hk+6~m7h2$X;-G%yd6wY`|HtqZB&$>Qv-o;-1+0^HwK2QDG)VD)@ zEAE!5}>*EA>~tP^vQWGxb;5aVwe> zCmxx@MEzCwFd}z}G>T+2K}xsEmp7LBt7!~^ed(*e>c&!N$n#45l~>%Kk(;acBIE}& zvDACrf*+GxsP~#*`YE}!VlS6^NRxqj&j+~voZM2qkIMYdNm$1xXLnOznMo$(CF;Fs zvlY!!^`gO{z%j#C(p%hum@tbBHvS*@vXILVL~V$9KyK?cB%A}Lm-dBILo zP$nZOyaoW3ByttoEY2#Ye9lR}bVDJml~HmzCt+Y&abpGLseybSWzoW9)FLK8fc7U& zi-6|lfp{lwi$JG5(B{Nz5!@c=XEJUPQy@Yh{1$<6dl3+m77+u1iGX?sgs4*)lH#912PX3#8yov<-$m3SAbe0u$zXSnjHHU1HeA4X;P_4$lktA z5K&~Si8z94KhT|lj9VzGkJy(5JHUe&fKoQ$!O6%lR&g2C4xc$7u$q-m&|W6uxV>;F z9&vgTMeM{{QC+Kv-s|A9Das|YK)gO3+K&Vh2aOoCF{%U>H5Dp_%TO-YRX!}MAQYIL znt>>Qm6{f|xPYimUK^$cP{n1S{xnf?YG(Gh7>+lV$#eJ7auwipSUPjJeNfd6l|ME zS3}Za7DKmO!rnffR>3fl@#itlbv~D;uKv zA=kNm3IHt+8v$+rVN2LEf!<;W*glXJ428(!0Yw5efG{m~%+OnI9Q0+o0&(NeDQ#OI zZXCpDI|6azY@H4ndItcsG+YaSu0&WydnpiC301@n1>!0}PPQ*ljFKP?$XkZE0Vaw- zAZ`FV!yYq)|6h1xEYW1cV91rmXmBqOR|@JF>O534fdM&`=0j97;R%!`V&ktP6A|+y zfm-dUKs-rMP;6O+7?Tw6bd~~Pk^-)>VrZ#7pBtC9QdTyJ(>S!1+18uVX*}947;d<) zFgom!K-^bUWe)`6zG6DSj~U{=vM+4L&>8?JbSRaqc}~IVZ4Ggi&@1hUKwKqQfb9u{ zF$P>^Ef5+Ac*HA#xB)&P1}&fPXw1gJt9^J91!JKxBW18ib1ZHZEfaiGQiORqF!fN< zk!I*0+(qM{oE3+^~lj$Ku$(l(r zDouROAW(sbqa0+O+A4@4Ae$)#5t0$}xdQvtnQLh2mn|j%Cb@tzIYw`x&A2m`SSwCr zVLWh;Nv&iQ^A)*!N%FE(E>(d*X(R@wuxkev%)&WEYhLZZU|Dzuk1frI=$jUN4V{ZO z;H*Wk!s9eU+O`dZS{rW$wDnt*F{?(jjTjZ_E`^+)W?IL=-UwtQOQ>UB3xgG{t%?i1g1Y5OOB_ZCaDd=Re=N{SWBAgWTZn_Ooq$^z!5-phqFAI=_FLPiW*LX zR*RaJYe`QteL(06)E@0~eq%6OW-uJ0fN9hUPeH4_q=iT5+1;fvA zC>V!9>84L#Ic3}`iA zSgT5y>ukrMF$J7vOxq<8eCc;$@nJ$NuI6w&$;2}j!~t391r7v@MJVz-)BAuIW_^k_ z8-drTQeoLrn%vu>ccqyO$hJYjpq>m4wMCnT*@6D&TZS-)HNiR#S=sS?XrBT4U_v%h zve9qD+c0O?r6CLx2u?7%(OiJ3v1qU&jnEEkN%S$Sg9wt7oq$+ljAkk_n`%uXS0a<~ zkweu4NlBxjVy?nb6p@Oiy6FK`0|2sPu#%~xu;si6 zd~Y^BiF<~g8qJ{dL=gA05vN6jvB@<=+G>a((pMwXJ@jhWt3=4wE0c^Dokv-Jhy&nm3`B%^R3X=?~5r*Nnt z8&E-^tzh3?j9qeKq~wbwg=k106V)_Ay=L!V<1VL)&y%qgA!_?W0V<4ejIIV~Q=8kY z*+-aMK6zM$Gc!orXv(E0*v;bRU~CW;zs<}-9$D9qSOtLRHwtr*~IG+6p(uI(0; zir<&a9>&U-K^4qgDmcxd;Z8NBYOW6EE>*b(Zf@`y`?-MlR_k^wSginUmzoNORG}du zRL{YveT+um2=8fDA*~q(7|0Gl+g()1Jb6mvaT^s6d$^5?hn*KSWe(~IXo@a#VEdLh zk#KjRvt}UrZ4m{vuP;kEMyO^~8}nnRHB?id-CSozItbNTYRVKIP%u$bkPjbApaRPo zs_8W06J0Bmb8{cC0r_IXWl+O%(v7b*^+R~1$ZS95Lw`?A=L`;-KMZypc|T2kmIz?I zPNdpu}fPn=2UM>qcPIZQr0wSlvd0w8ik5w8;4P$at^zd$f*U=D~;Z8 za-}=wa#}X2iGp%~s7#tOtAITqpnT0ThBV`Y$eNA~m;?3!PguYD2|PDHIJdVE3_q4v5wjFE|HCK%zC;3)}#w{ zEk(ga6&YO*hMSi#Vq*|kV{f72T&rLuE%9x>tXWYkr?kS@^L%j=zr;+4AUWR+5u>gIVAjNuGy`{P6`Yq%VUu`czM>cc=9>)Tg zhy03Rm`E{}ZobFYD4=AwI zLbnc~0)ucdEBPYM%W1Sz3pwiy2}at2d%Nya0Ica0zwnT%h3OPW#Sc_^sV({yL2FMn zGn`RcAzl02wvEnvzDl+C?+~h*yH^}c&OvVY{+6vBO!Krg*4grV@F}tDc1>g&8EV5q-#A>Q!?f|k3g;p?~9^Y}Y zxH{p<*w|Z1Pjv9+LIYC>5F56n7YQsN>hJ;qLFK~ybm0_yH=EKt7pUMfJMda>C!mDl zJ7^Irm1_59Cvyl2GAp^>6m853PV0FDOY}SjF)35&koYtIPpjHDsNtdr)WM1<$zCL zkcUe67{#Sj*KjJ?Sbzr)u$2z%wU201d8Pf#r^k#6cH*oRk`VW$WYsaYW_w08rF{zQ z%*2e&kY4FgSDakw4P|k<)r3K6Q|uj4RXNR>S`)_Jh44vRO&EL#q98qJ!XUM&-@>f1 zVGmDvc$GBYYQmvlqCOq!|=Y8vmWNKjfagKpcm1&&s1Uh8p84Q8b+Ze|24K}ivg zdYucXHM1Qx*emU6BV?_Qd6=HWE@NdhbHfl)^lzr?z;2weehuC~#pYuTOfULWfJQHN zpaD>`gAFt0f|Hc*wfQC%bT9mSO97}V)j^GzL(MFhDnRCPQpiWEa#qN>(v$~l+!}*U zQ#syBK>Z_ZP7`UnAqU-F=1s*8m3${@8PE^n$e=K}qIu?2qnld$XGJ9wz)U$K(5Ptt z*f!HSr&k6@1X$@hCIGbd&(Fqz&E=YFGTRt2Bzj&!OK^=`c!-3ZH-OF~c{w83J7CX3 zb~z$AlB}g)R3I#uBmUe%P-i7MNEkiJ^WyY?9(*%9BHQ!%8O^zdLW~8hvcF(Rn2*e^59h`Ex)r5Jzq=ff+ z6jmBw-s@AySz6KFk>io$^?jX(0?Mp)OfUjD>h|lWCK*ivCRl` zJ`7uNjCxOOx!jm;;3L|WYZ1O$%F(b>MzpdIuQ(3+%A9TS#RKD0ejW(?&sho(Rgr;H zz=aNgnJGi_0!#b7?C_CI&5!R>4#xaIrFQgPand-- zg`Ae9j`{6D>*N{B0q4oJ#mc9w(ZEFed(1Ty>MM<*fuKRaGPc5zTBZSCbz)Z}1%R;B z)@h)YS#b!K->79C@`<(6Oli9Vq<1-JV~KGVy3|%J&7R=*c`z+i&0d1yl!|F@E>;T~ zW6%u~BCihA=N%et4!}xf`cWSVB<=eE<$WB91FZ`N*N6D)TxF+kJ%p4lH0CU#C!%x- zv^=w*YxMxi;{v+YIfLs%)N-P-vnZk|rD&-2^Ui4J0y4MsOWHXq^CzjVpQ1y}Ce)`- zu>UjTj4JKqvC72ZvZivvN%6SU!O#iA+P6|-yCa4%bK?;?Q*;TUE|X zLon|&JZ<4hN9S)2@0(hvb8;G1zSMAZ2q-UArZ1KG$=`wjiT|+4!KWtvV?a&-KwsdO zR1P#?Zt(SBxU}3xgCT^NI^G*2f&rVEy)mQ^jYm45KSfGgDj6*?FOfD*`JUK|1uV7O z{!#<27e9Yz&f%r^YjtpLOQ-@JMSOsQieM;t8H4(uUS118uiAt64P`?EnU@1FCcQ8zG#3L1-( z`pJT(uQGF{1uDiM^Z`|t(7XX4VmIa|8c}zmLx`{g_<7I`)D)}XG>B@0U20VT*18M` zUbLqj1)vXOCt~+tO0_M>9jtbM^yKd-K~nuxZHtd8(bVDm5mXX>fzQ-c-a<2=T5AraT|5W+}9k$Kzzw58c< zMLC9J7#P^zGH;*$W*U%V3h9Kk(in48p>a!%Tl@N>sR6-!HypK77&rh7 zd1y&nvRF1{nFi!rfJ+1Nx8Tjz#=!h7s|7$f~TR#yp#a`!cH{&2*He# zy4(D+K*eBme1~Abu*f6m+zU)c#Q~28DyR(Nd?K;`G^|ZE8R)XO7W&>)Pj7Zb$a8f5aOTLFzD3_aDSHxM8$)^M#~y_G2_u?%eh z)Pi>C?poiFNp8iZ<dap6T(vM=ZwQXyRt(CSiT=1`nDu-CQ-O@OEtnm~ zvM%-a;4p5@pea%75@7IaO~W(Y0|=;%-k(caViGq-$U@S4GXYB-GB?*i8$pL*ZZa)K z(UiATdF#{|pFE6i+W=bM#!wzf*G`R-m(9d9m1f4x+Cm|1Z zkQL699CynD&SRvjoR7ggaOp{=a*0wJPsu@gs{J0<$SDAc>;|>Ku9NfY#e_Wf*XlyXqAz$wT?Jqs)1MyvE%^KA#^rppfYBj=qi0!~@*fVHpQoRkY9g z?hg;_4}5jP=#eF*rw!0R0g06%OaQ4NgiHUKE<3~ z@|k9^p(s?c91<L8A2JXAK5J0c6T2?5a8t zxZdP|*^wRjODTvk@b=TH3WzjV1EHxOiqLX({CxxqeJk}NEe%rabk9FKg2gG>mYJg3 z7?ZAbo7$swUm48?8Ilh4*R`bE(>wVt6qIpy)epPu)lv0<-lM_8ncozhi(`!wQ8>kf z#AA)nCwzQVtH06;tWWEaGI0&Tj-sgsD*Yr4CaBDAO+7vXGAM2)Vdzk&#X}L_XqU2r z(^Ef{{lEvYYe8tnw1vGehy+nJ{8HW)#6RF>*>#X#nUTzbk4qQ|03Est`Y)T3H&Bz) z&Qpa^ulRjZvhv=~r#1g3^^iWq>84kFTtfYMm5&V@g%h{)C3DN^?P0(lS;?V@)XC zBW*5rAUC{;D$NBMJM>zr)K_818dpkgZJaXx!?K{&gh8?QV{!@rA>VNGdl(*o!!;R5 zWikUoPIdVunt=d(tHa^%wLt7K$-zQ8Pj1Gz=*jPX3=(A&>lG!Aq?sJRDJ_2@;6%S* zv($jxhH+^4R2_71K(#=U$v+Yl3Mf})5zY0da#c2?`AQ(UD#H?wEdlja8KjW!3oKV< zF3rd4px0A^DQ)k{usR;+)d@%n9IDuBAk(K55zVkL=BA7T@pgdpO&R9RK^M$Tnf!23 zX>Q7(qH$Vo%J`RyGJ*6>87Rgt49quW&{zCYmF7GnB?mKL&NJrZaE`tyV@GjxMQ+Ms z{(&XA;q@qRRjF^v_zCz8fYe-v@uX}4>(kqiqJaiV4Pn0Y#aKp*zA7WWh3ChL#*)@f z1XG$h0vaa*WP1Wv`qdirf`8)0onmT6haY~iF#7i91(uHwYM!3F3xpcI9#-E|r?+bQaFrV@ z&hTt=aLY@LJ-f@ZX|X?|Pp;EQP?hEa$)*&Ok?I=)G>`d6`AT3?E!;oC(tO#PPG}k%&Rut&UT%_PLKV?XGBh=bu#gM*8*+EW%9uF5OAleXHSS~?E z6iAA-TbExqS_3?o{E!3zDl)esm^>_Pd!gYFBz0*xEB{_Rl=@*#_a=2a*%1~kAfB~r)n=)Q7q=hoZY7GD$rXTwHFgue&vjjH2kbG~3l|4GJU`YI+*7-#D8Ck`AUXI#BbYppN zvFBGqT~!?>s^B!A6>Py22I&5hT~i>$XE~>ta zvL=)$6YL6YY|;oIIwN1e?f_~AgkCJsR^jt=h%UR0JB|T$L?L5Fsyf(Q_;e+)to+{B zRs(Fq8L!>VTIra7ex7UF*8t~lOg?|FPsmEzEL3}##t(v(8alijHb20kp`*k~Fok|8 zELZKx8$S-#Xz1{cSayKrW0b%!SB-hXjC*foI#ulCBw}6X4u|| zClG(Sq|KNCy%DBRGUI|_vk}mYAF1O>Cao9hWYN&@TAiI?;`^<^NGK{d;2jYw(*ajd ztc}k2$)%xy64HqUOXeEnyG;nR1k6Yuh(a=KBz>^jSSCybb+q*$3rynHS!8a#=4(A(x#{X_}qVx;*@V-(Yt51;4@Q@DqLm zN43Yb7#4R@2Yd6)bes#QCxL%ZQ+^FF(oe+6?*W?C1&@mxhGS+0Zi6LqDhU- z8H`?iR2Uo)E7RaaP_p{`_P8yebe=;@6Akj}Lk1)uICB76&=S3C4?x+KIu)?gPu5o& zXkW0$Vr()kC9%9-dHngr;X+}9&Uj2)2{BpS+Gm3wr?XWZrE(~-g>eB2sI{;Kkfy5UC-!XpzTR3x#|QTsMzCA%jK;oB z^TSN#h{kITt_9cvNP@-bvpqwNI!I8LVI3P*Q|JL&v~LA**0G>>{0&JPeLegJ+W7c; zlEXl!C;EMf)IdC^0hmhYYXrLxgH%HPvUS(SoaT{l?r<@!d_uv$O;vMJo+sJyX~u>@ z?HB=OIUg`6k_%M5Yy{$iGLOB760WB5jn=bLb$jN}rwGl#f{*k|i5SiCffsP3k#|6t zw_P|cGEw#Uvo7o(vs4c+FW6BgK49702&g)?&_4Xa`f;E>xXNHnIc2njF2LDwgy7n$?z}TD+11a8VdEby-AvevQu^^5Y$$s*M2S zUj*gvJ6)dq_NhHljSi&dA1p})Fpt>c8{?+P z(K?xG+HhrngSi343yl#8BXr0v#yh|ejZY#r!l+S=ehYF)?xg*(RjW{qey4FlF6uLc z&Ogh8scTiA=Jb_BetdBX)LFPOcYl6FwqAW0$4oWF;cZ9;_-L=D@k)}hJf66d zw8VHK2OTR+2iP|EDD_m+#wTO14N?Qj=oztKgdRPpc7QSJ*B4!K(Nk?QCLBMAkr{&I z_gzrVL@7hpwXlNbWk!qKF#s_%dB194YMy6uRio*Ldp17&WUU>k<`Az8C1PT$wI;@t zmSeS+M=oPjkTe4DuTrA&WUbn}!Wr%QYOSAc^IVR9+5;?4^|X)?Ixc`i0Xzn?oH^`F zhwj>pX>~YDfJDynhmt-yjh!%})XO=ObezjEjn9CwlVA-k1U%KCjBf3mWr!waYy>E- zl64|?%{Ts8hREOcn=xl;vBRQeBjDM6F8`9y_!MoZj9;4$)SBac8k*Fqy-xLMTPS(( zfp4u`PKr?irn74p687m+H3gu9sWuP-7K0MJ#E)T)8K@c)cvsD{Y$Woh9zZJSbD&nvhf#zys2Fs7khiZFxAI?Gg z_&Qt-sC^r5thVMc0e-!0s;P@Qk|IeNg)|uhdriKcNQ}dT{a{T?9yv6Fg zm$~g&?agDR31JrZ<}uSHxsBon9O^wyc4{w=nJ&n!)IKu5+g8zR0f-gPh{m4U>mKo8 zQ>pf>FVs7N*3rKG;N&$e6SX%T#KdHMwKpB)m!xNEznMex+!8dG{U+n|hQgWZJ-X^W zzMAwNUH2Ye^MB9qU)6hb(|de#)BEz~_Wt(GEz;lg9^LkSa{K(7`)9A8_8#Buk zAAj&36~6ENiz1Fl|}WFw`D@T|M~!x{;A>L3iUJS zjQgmh-fs^D^6JS|1L6DCyW3Z z^?v`urCyp-$gixAxBQW!pDp;BU!}-`=;Pxx1;0Zu{M>>@tJ*Cj(Y#?)1{UXOywt+S0A5&vqD!LD!RI*-hcmW zp>Mxhb*byy9~_@9bj?+Lw(Hj&n!8Rq6uPtX{B5T-{*ahm3rQ()T>UV-gGMUw$oI+d)cknzEhiir^*7aQ)OYN z%EF{mv1r__*j1-u)4y~oHtR+~ai_}Sx>IG{renV9RN10aW$AaFiWU7%Z5EwMb?blC zsbkG;r^>o9jcunUcUcGaf8U|Z^A6nqWf!sar+$ZyznXQD%P7`GF29;}DD=9Ee0!aD zn5r&p^KB=>ddtK6Yl$JPSWyr##lye`e&cdPFE=iRD% z-mSWq9Vf4o4uW#8x>d*eMVE4~J5Dld8C|;frdzQt1{#XJ>()7z>z&H&yOsM(m%{** zd*7|P_Z`^)3-B(@c3d(R<6Wu?yHyujGTvtgon{?}5+^ssc zV7pY;agygaOGVcmD(b@IR!KLD2jx0hC@9xOPeidU8WD2h1N>2zk+u*S{Qdb~OjM`nzXY(bTW& zGV+(~5A{L*i>5v)@QXtM_UmI`vlf2#;&vNE1^49)eOmo559qc-zd2w~29xvv&kvVB zxh#q(3;hYV_uErECZpu`Zp$(+55tzc>)0=ku3-P=L5?5P+{mv^(R%XL87j}B=Xw3Q zDT=(TqwvE49?R+Oop$>sl2=af-C^K@zs;KEhnTO=syu1ws}uCIG>v9{dRfjI{?*5m zQvdp4sn;Nk=%mPhJ}shuxqy0qe~QGU=wW;e`}J9u@AGVSK8WxA8Z7OfPB72&*G&-L zB~coh75d$2Zj+`jbNR`HPmJSv!$g0VmrMV2sJ}ib@?tWNg8IDKSB?C>-6y`#WJbMz z`~WBZl{_bB#dlR5VY&Xd6Wp5^)EwUDfuDXd<9s=hk#F?W{__dCjHXZi9Qlh^5pPnV z)E~_Lx}`667k!3*F2k^lm~4M{#DDLnQ%qSDzI}CnG6%mpmUx{9i>N;AW$`_Ib$_5~ z1K&hJ9%?64jm91gV)mb`We-(c#lLsd|LGh}4-w}jWJ-Q@im3fy@e$P5t#lGpkZ1a5PC;>gn(EE< znF3$8#P~r0`Pp1v-PcjMPJ&NYb-M*o%6j#GxWGrMR6qR1q1^9&xLkGM5)VtoXuO^F`)dQ3s@UKtMRRQ)Moi^CwbXiPsIeRj% zKy=@}e(_x73ag!G*fS;ZET>ggesf=Lx%wxswmh7dX){YQap*Ak4gcmFjE^IcS5T%h z-UVzR{ZOgHM){yJaPo8lHu~flD40X`A~}V8SSrsKNyKIN@3+3hgghw2KamOX%m%>O zRQ}5+3cfA0t?;{t`TPpa@(F(|d-#(jm^@91fBJZdXS#*|`ia~F!T$3n3Vfz^O{br# z{Xk+LER8O}VJSi@KRn7d%w_q>ZnhTW2dk#DpXVo2`H7))$o=}m4lAf z_Z~g(J%0WU|NXi5=tb}Gi?sLn<)HWDmzQs@pZ30Z`Qr7P-j80sebf7y#K{OV=skMX zd;IFpy`Q|k`R@OG_WTVJx7RP8-@NWUdeeLS#_9d|%`N?rdOwjrzkk;I^36*m{@DA` zn>T3lZSV2hVeb*ze0Poip7nn8?wR~^-}~a7gonMm2go5~?>I_}|Gn@1_??7zeJOtg z`K^@Vk0kty|J8sLmN>6>Ccx|6{Ym2e`}b1pJsNt6|Ip`m?@`rzuJ1i#F$eGVy+?oU zJ^o7{|BdnAr1$8ry~lsO!+)4F6nc-ozel&4F7qI ziobmSUi$v{Z&&ya-~a7d@4x-+bB7jub@|ysI&SB)#rW9vvxWHb?SFi>l(~KTeAnb+ z?eq1S%P!TWV5bVrIsE6x%ST85`EMVwM$eF~!TI0+_Q1Rez=K7$U-K!(G~uHHXg_~@ zApO6Kb_cot&kr-t)q;P0nEj#V@W}5y_D8+{;0FP8mAllRRlOhiVc7c;|6HbN??2(M zw%tOBM(q6r2#MkRJ0vtC6&&-#-cOOx#eRj<+pO}Ztb$!uL6Y?T&0iK5)_^SYtEfZs zn>vH`kiv9@WPZ7O9r2_sl9 zQSU#75x+Zmt)p2{BPfPYWNaf_xB&uNJ{yb-#sU{%`&3*ogbsmFQXvIGzG-|z5>ia>E!2ecgnXSq5=ck_ z-v9|Agf#H~y*IPFv#XPV{Qkes=O_DicHXo%Z{B0+gpx&a`0CEJ1}IgphParCW)OmD zZW9OW|{9{Z>&*3`ABcf}!n44MEp{FN=uvBSYJ%En`F5kKKSHSyt=59X}@GriQkk zuo>$!vi>xTC?|OsKZ9v!bir>qGtL0D0B@s=Z()%w8_qg*Lxo%v7X#ewOxpsQYRhi; zoz1kZ$FL;uAuxr&THlKC;jszYGY)c1dh!lq|2d|$d_+g29Ex9vLzS$Zo@ z^pK$jgE(g3Xddz!-UN97^N2cYTS0ENF#|u(#nSlnnuJBSNrfO^0L^WuF?}0UhC_WS zv*Fjv3}WzTWy6^`WMv6>k<*0ChWEuoyEmLJ=1`Xp1LqkPY&Jg3v|-RP!(cATseTq8 zt}F(vv~z3&t0kj(`v!NU#uCF7?>#*{q6$SEyt28Y!(*pIr?Hjs5vGlRu{P4mOgbIT zV&p6X7D|t7U4PbwF<1HNBf}%i7(qd-9f4eS(6m$;Z%l@?NIVGLxgGd!1Qc}y9@wGs zQI-Tb*$FI-7g9293dHH(gI0JKp*$d|=KV}LP$Nm`jXwgG!E$PPOX%q|D7V`m*-=@mWAkWbvy z*v?7?m$wLW4t%tI{jLp?kJ8(zzxAktxi)OCuIjQr+!xSHl@6~G#J zqnarpf+3UJH{SQNI}5LDRq!wV1hmWGhIW1%^;ik%Lhb=t9h6Ek+K-vVUaF)S2qa>uZ@HijOY?-rh@@N8!_JBAnS#>uSp zTd@PiSW7)c1D<1t&jhZ*elD?NxKDnejm35h`%zZmxQn6~c;gt;b^?#?1TomT2!6-0 z$j%B0skO7RZTNJs9+9@x@#;H4g0-E{T)UXLOK2-{&^n+O;Hh0W!*v$Z!KP*WOs1WA z0yED9s}!1?9G4e4=$YLxqB)CcXKjWb$nx2{na&tn&o;7qz~%7!ANU#Y>*US!PlNYn zem=*r1@J(>#itQ`6rLD&3Hb3J#(7xga{xRr?{#d59nVC%pRnaD0&WWOy^o#4@gK&G zagk<{jCX}B7ymGiDEJ0soTp@*6y$(mBM`S+;aR5If?fnG64(q&P=#o8oLI_YUZ_2IJZW>J3UP@P6)okabj z^v-2^gcSgC4gjz&r+9UlOZgrw;~pv9XJi@YNPNa1o+fF4?)gL)#_pH#3NqfPtl#%# znOAcB=hh)gX-|=LTP@R`BFjv{!&K<}q{Mw4a1|$>67lB9{7wRHK(`iZCGww3bQpuw z(>#0x-d9LI9)K`|;&S?l_W!PQmot|)=1Mwl=h!mLgRhsk?vl8;<&=Qm+VXiEo9(INryAZ#nN{J0va~I8>9kYQ#UHZ7>&% zXM4PGG~u*O)-46T`(!!WIZ7Y*`20$*{ys0Q18SL+zi3Cde#lwV6#PHPKg17{Y20=} zDRA{kRO0W-%1K`S>m=U`UOi5RyZUWJ^4=ubMk~B}iTJwwC7=vfk0l_)rFpZ|LnDeF z;_L!S`?QQ-=7ZdA_peLX8IZr*j%r(M;U|%9#Pq*lt`6~a-F=dlbG@>rksP>`M%aN; zc28nHzoY!SI3uNnOs%1OH!8UQgo$=uEqU#`vb^QYrOOorKUd;-o@~?emA1m%o@Xvk z-$U^8J-V)y?(^gxFWX0#I8BmuDBvs}@r96c(cj%eFr*Qub`W`LY_a6kE2WOOLduPx z8z-y(gf+6MjZE*%nVrAaI)A5eW1n`RrhPbJG~J!-oM~zo zYy9feWV?}fe%$ChhW?MZFVAXK-nY>6c@3U2vEKP-T}09LaRB5BGQj9uW_0c}IzK~U z0>&Go+6DMFXNx8xw6#vzI`P`hb79c_+a02UGDpZ7KzMA#uec z2=NCs-qUKu0@$V19G(v3@U+QZ^pL__KJ7Mh6q@-MqcItvg$PPO&}IUO=gIW^4K{OQ zTIL?J?oLjX@l9;oUT9lvlFm6knU6O*w;P?u8lBH+9)EaECvakz%|#TZH)9GBW^_C zJe685+V|z|_u{G?u}W>eQv&UBirRj!YYJ;`lyp=D>RN?Sb7}$|MR0*n&gn7C{7u)_ z)Dtf14YjB(!J>HQ6F!^Altj;|JpZOkp8V&oesv)K*32sVFTo$55jl zKvgF#;T)zi(LyB;x0#O$3H0v`iR%upsehtjc|Ru=@~ELO{4v#39&w3KQJ**XQvvZ_ z>eAIwB{ioCajr)VYEpxmdcvumb|tfBB5cNCrsy`ckW@r1#Pw0o(}D5>dgxV6(IU&t zAfKorn-glp&otn_3DpvwdR~jI^jVVQgZB#Xw zlJW&Lt40$wT}F~1nj6k-%Z=qma@%vGxr(g%Bt`x{{%&<$Y`kI=r1ER{mao{J$UQDa z?_jSr%0b3BPxmz;&;8D;0I6zArLo$>L}c+E63+z;fa^?I$NPeXsaY7EPrITF+#nD* zAa`W$z+7Lhl$)JfkUJ{3G`BD}FV~fulbfGABG;Q+oa@LPoNLb=mz$eAEZ3G>mg~tK zo;xVlojWFXXl_yN*xb>%CArSrA-PtCAYbq}y0hPq!tk8h$fptm{mNC0OCPCZd*3z@+!OiuflHesv7*a ziU^VQ=JiZIY4Q<%H7G^D(IMSFO+im&c$(kLo@N69_>9VSmzz@2HU?~kT_J%Ibnag}$TRmhlDupBSeiu_%w zcJ+<%prmFb?#Fv6j?yKzeivDFRG=sqVl1w7*ja_~75;9lk)^GZ?meD?#RK|Vg#Ma| zKOE0|?iMi~U4D;n&%H;C!JfaLvzpsEd+9a-Puwc!zhwBq_i}dWU7U^HE#ObwBgTU} z?&R$C+r|5wJ4GHC-Xqh$Ame@J0nRqvDPXV5vWc0db*m`v?K>nM zGQZjP3itV2{e170aR%=7Vc)nzyf3_uv&U}}d9H*sTLAvV-G02YWZGS_{L7^K{d+~4 zwNRhU06SF1dr2wd!}kl=7jE;*I$6g1r^GXRpKuSA?vG{uUHAF<|+a{UMS0LXd61S%%4oH{Bm9n$ibTcGg76Eg1qC~4*smnd z#vbtVoGNKjP+$isb$wX2(c!WV=g2&+mhK5kx+yZB`A=nf?+bevPC@v%(Wh zX|LbQJiZ}ucu~fC73y85yu0=K&;vdn9VzqfmVC2Hx*wK&nZMu1@s0<4ogI_mzkoW- zy3>cxmVEiT5;rCF=N}&sdHqec$6i_1OVa(<-F}*Dq>Lp&{(l7i|CV%Vk^RAwfcIZy z+f91Vr^P)=9$&oGkGoIdkIyMGS1-$MQ~H^LlE>MShd=cw#u9xXzN35MLjp%8VffRe zKlYISuEul2bmjfTkRSgHC9NCB48?K(R2v|mY z8@NY-yHxs@N&nwNX_h_`^gk(iBPQ#P^uTt(HQyfs{dR-W;l9-Ac{W3t>EkUkLazp-8r_9bv1f_mPF^#b=RSU%9>CUEyWDArWa{RX(3 z!F^eg0sOla;ZT>qhv0Wf_~eJVH~)@*)398CJs`s$WIjJ?%;)2SWqTeb-ABP40rxR* z?*sR7a6bq6y!c?STwGKAJHW~zdK)2rS{m}_9}oKXgu;&vwWk&Ge;`!e3!(6}q3|6c z|8pV#Z6W^!A$%SRg-;KacUMSW=7!?`Fckl%q3~3Q9v6Ho=&uX;e;C5=(U89<6#vwR zgZ|l}@Y$jCe-6dZhw%MCs6ID@^7~ZCzc%FG6Y@VB)_);-Tob})a;SX#GvyEea7`5X ze7SVX(mfg6KSSD6zK)lPyP~a@5;Ag|{TJRnV zI9?~+PfPcD>3&AK|0UheO80Zp{k(L)Al)xY_Xg?yw{*WG-5aI*W$AuJx?h#Di#o&dKD^sCi`{+=e?PU*fJ;(PZm>e5XU{oU!{?uPs} zfx8s^L*UMav|GUK0smHT>j3X<;Lfc=*Dt`Y_*jt7un)Nf;-3z9+zRdpxVK67cInKPBA7!KDfAe?i_%7((Bsq+1M?cYO$-RH&cY9FosR zL-j9*;+I1CkFJq^_s_N8z6tQ@Q1?CHUITgF4DJn(&j&*ENQLC+(GWh%L;UuJ ztiSjt{%F62)d^i~4U7kH93?`oVrW<2#73>3L3L8Bz-RLj>&w9Uj&=}7sK!!SrF4_o z9CP$eil?)bUdb;qyI4Z+(zh{3?^58$5!^8bG=v$zC6&_g=2AUj>^1dRrL@L8(MXwv zNHfny6KpgeVLMsM9Ldi!SF?gyfYJv|li5*>xm(8^hs+MP*D!b`f1E{097^C^qwb_vOX#N{UC%E0Z&Wd+9#vROWubxP+RT1EX)G z9$KVWFQnUQs`tqg$}7^}kfYPiD?v>@U~0sB zG2;H8ARj4GFexAf$a^4J<}|aJ7a}P((o@S;FB{AM+*}Va#_|uE3t90ucFd03kjImd zbHeE8T?l#n0;z3`S-&<7%4;Le4(+yuKq z`c3u`oM_n1wzA7PV-vQOswZ}b_|(@5oA;v?PWpdZD=2#4#)wNuB6#7=#)i6GMP$&3@=>5`AUAN3yUEIS<@^laWj;0h&Lec{GRqNGJFa zAR&SRoY~r5C<1$!7VO=C63rmpq8HOVNX0suxH_w0KNV%ukqQv9fCYLtf?(ey+GfaX zC8|OT>KQ#j_==i*miXa#&F?ql_~u_MWx=q@TV3Nb}2?0btpcVde*SEehavU$0diaGHm9)4J7>Tx0LQxM1QZn^df zo@Gx0RZFCy`dHj_*iug(z#l1qm0hvcnv`q)7&8a%NZvFrV0ID0W0`n5R<*Q!JH6*-Vpr3%Cih%M`MimYNb}b1h3nrbT8`zq8n*?Gm$-C1TyN7{m9OK-;e9 zul5z98!27`rD-OsWfOBEXA-`k4I-8N;Q&cR!1}RDAWMl@$7SEzSIHk1*#&eNjGNTP zmjkt@#Y?<94q87hbbXu+CLk0nmn-6x{8i=}wl^B(#a|ZEoe+K-;9M|8Op^^pL_WVK zJWAY&3LS+l-W53(>i;p+0H{D$zf*w!V&V86ooTm^O>N^0?b*(MCz zgpqp-%6p_MGN0OnNtz;FTPeN3YpE;~%jjl_L{~!KwcCS#m3R)zL%c30?!MdH7AyV$ z)6AkWzOzrJk!4(k{ndj=CzB;o-Ki)WguxI}|7CMDpJi{cRH`c#CyVqPmPmJ{b(Tr_ z@sDDKl+c;bf@vYwY0wRSXTIJV0th}|VNT7-#JM#rRU;s%nQFn8treQ-Z6%~aJd4`; zoV1hHsAUmiPpy=Wj67SDNu^V$w^IrZ85AqBzovlO%ETO8C&E%%}dyLn*hh6L43QX zhPh`1#NTxIjnWLiZ*MyMMo(j5t`<9$M<{0t!rrF^!(3}LLl(6zbN&+1dX2|FWBDJD zHlD^{jKhDVUOjCq52a;YYy{#T7cPrz6o*}-@bC%L_jW^T z6(FxH7yVln;$r_+(xUpPb&H`>PwDVk!AD!A__-n@a2=g~ju zf=B&TOP8NDrg?3SHW8kospJn}7L9YXaq-9J{qlRrdl2%THDTWB8siZxXmce4zI4Ec zt+o_=zaby+BHOIU@*jx{hk$YpJBEkgd4BoEuIEg9e-EvpL-!dC9nxn|pr-sH_(5TsDh zfrkLO(R@4W0qejqw^0nVqcP9bvJV(79l?4c&|`xp#-1B_>@ft`ycCG}WN?uS z9c`PJ8sP^^iaPoe9xV_)7y7ViDTE7Zv;ut4K>hPuu!;xG8lv$5M31>t!sC)Qg{Z>| zF_VqtHMW^K@r~TG5%W6x6j^v}=4FsmyBTH4=qQ^F7$@WReX=1wm$fFN@wrKxA%$Bt zSq5M(%6J&Ciat)gu=N7qQAlNhS7spRxx7N_*Dyj~yGdK0-(TCW+q|}M49l}!yP^viT9w#~M`^xcNyLeCd-kMb{@CMQ4BbS} z&X^Nf#66o6;T*?sPVB#!XW?55BZ$jr>0q{7OGVLE-31!GJF=L@1>KRuAy#ykQo6tu zbZHi9-{kp;!QTF;TUr{&R}TWT9T~?e!fp@ zFizB3BbqT6@GWS95*l;#8D8rS8VRaXn}PF`j&Z#|o(9ZmCQ0ywi8YvRrZlWU3*;uO z1IW!d(ra(5ORpSrE`*Q+1EWxcw6N-N(Q3fbhBTbVI##iBx}dbAcCWS>YE(4c*(uc5 zxKCw}X!AR5cSv{DzX#owAqwI+Sj=JJK8(q%4s6XSE`9l+o+N#8wX`D!jWqeMp?MAm zazyz`nB8OnwS(j*jr-~vB0&F`5t#?tW-9#4=rkJ)t)MeiPH65T?ih9uk|-pwO+FK7 z6KplLO=g>5tw5X1fp*RMQVZ0bL+uN8yLqfHWkAo9Skk%dH?cMQ zAcCE7v?h;x2+~}@c~Lq%s zF|yp(#raNvfZmS&MA2V|lm4&{(;X^c+x4FBoFB z11yB7CvQ#_DtFc|C;!h2tpecg72G5ho6H#MLA$V+hJ{l8imTN#W)7ZLGO=gv4JmhD)ZIB+@mC`I zB{&|`yz$_7s*KWb^mGVA+01~Y`uGIntHWdr8-CN_-J}@;##Toe*+@2vX)Uxiph=r_ z)cTsC(Q4xD%$M>LxT|fQ$Qn;}oaj34%k_z#lsfSNPd=Q)=P92A=w&B)lGpN1>M6~Y z4JUnyH)rD1v~zdn#i?CO@3kNy4qN3>C)NTzYHGD7TQN{;j`0Hz-j{T_+n)&s$ZzR+ zHR-gA>A9Vrr_pmIJ#U4PTZZEOM46+AnJvVN%R_5o)Q^Ie&H}tOQi2u)eXR>Su8m0> z2l9*QEkLORizPBlwrVDpO)w|1N^@HzRtJ4)x>s|l-<8?KW0@pyzo3>YqqmTZt^oNI zGM;3ydR*TSbTFYD^a&b)uOSfD7y(&q^EAsKy4FJCpjZyZveB<8n)fhm7rNGilhf_pzBvFbG?UYsOw{sIB@?dip<=v zHJ}|;E$(Er7S{Pa3dH>c>PAn`#HQ3Rr{)Hx&KJH!Z8ij@i+)q&h!CM&q!xh^PZ(Ds z)*bzYm?$AeX*SdI%k<1q`WTHeA2cU1T$zi3eIMhKSS&u7#cHO2^|EUp))VnZ3{f-P zk97quS;UJ?YM4LUCf8B|vvnc`J|80*fik#sgNpP$BMDow4~>YZizNTpO2n`>0-@s7CkE#ZT97&zJ_&W9^_8VBT73i zGJnGoHC;8g@Z-J`&OGAzZIgV^H?@gH4lulno2n&vWcvYC`&}QMSGQP#een7hgPSqJcCVSJ#EIi82|P^1L4j$?jN85azh zCjx(SX4fO-*2wwX9LWCJff?SMlrV>15Qa-R3$Enur00Lrv)*0LC0U#bRvDIvxR6vv z>wr@mNG4{no%`G{l*U)2Y#qakjV}D1CGi-L^eijdX^^f0|ugQU<^l*)Kl{1|0iQHTpUi!&TUB20|)ze9CQ zXt87q`Tv=8*!Kc`u!H9qxC%KtwD+V`rH?(DaQ_OuU+Rt|uwR98U<9D_2q%~yBW$+= z{0wh(7UyDxdm&m^36%S<_;R1s3gLx~5s7M!;$akMGke$r@VG zf)RigorTaEnyGmk>iyk7y{FQ%qB-ooKV5>mZ-w|!kClqvtg$=`5KI4K z9BB}<(GvJ{U=|9k6VxH@ND)VQcSXgF)OnymDuEH*d1P0RW&*nbF_SYKNhh|=%eOn( zMi!r)lyUWrBbrHz-3geYrHPv7Vze@|Y4<&it@2YEff+2?RZQhU%9JRhgD}h(5`+4*(eY(4! zhvv1^Q7nyD;dvvCu-asd;5ZgXb|qH)Ia-yB_71f&EF0+tS{C|q)ZUtm+3NZj`tStV z3I2)=gjlFwqr#%u0ik35C?+N>n@gZoM2q7cXhQBeN#6n%GlZ4X!{wef)IX^Ao1+YO zXT@U8pmV-7P8W5@Er5TbijG39kueK#Q6lP6Q6lOb0ZUVf-y^M>rsrFrS-unCq$yAn zEuc|9_%3wHxm2rP(EG9k)+jD}fno}NdYWM$P@p+cbffj|7#i2AaGm!|hG!f&-Dfro zF5WSB3yZK0Jg2~t!0(Kud4&C0r?n|oV=%D0>e)w3ymzslt%~59y2Bzc2LFByJboR8 z$G7qATQPV%fp3qAH9&XX70?Z4=4f--v<8=edJMtXss{Q= z6aI-=zfRhcEFpS+gj)W}6hgQY zU!lwu^pDF0WFjGC59mC}o}5j$vBRHzm37{ipw)pm?e)Of+81CX`w(+SvY38v9Qhpi z4Cs}{-r;A_R2qASpF`Y>{J79N{2cdd(A->_=H|XcI{y`%c}TV?^HtrE2eH?&&??@c zSj9`sEnx9F$!*@axho>H@`Dt9m3an>WumM&g0SOpWSK$h_c%qjFEV#Q9^Da}xpACm zd0coGggBAcl(M@c!xXpIx1>vDbC-^=RpVemeb`9P6X-e9dl$7t-<=ZXB)eId3Nl>i z%_z=*of^fN%2>oAoo7#)#ZKIZw4%C3UJu|5BboT#R4NeL-iO*e5!g4|5ZE_Mv9@D@M~aHuTq2aQ^KV5a*wA{SeQL>7X-iA~(r&5c%8i@fCc0 zQ?H?&(?V|X&P6AEyT>W03$U%90m;Yp%!9Zu#hO3g1mkeuo_+$27?(numD>%To*6Pi_aaa^2Anozp7SWCw24k*hU?J2Qm zZ^2T8t&wu=$TZH1Ka;{)@pr-k+r~{blJAH-!`v1j{E|L?p;k1jw_--F72!T3Jaat- zTsqSY?gw#whE|&HfVRC8goWNidvt$Cdvv=Q+PeiN`g*i81U9(8YPGU< z*b`|s9Bowyg1xrIe7n@)KVT{^*HNvp?2M5%#9C9vr28l2eD@+2+=m>awaj`pV$El` z(XZ*UAJRf)m{KVeBE&jfs{1VcPrcy4R z$!#v#yo1-W#hT8$z|z>uIWPXbpbI>D*-X9WJ>yzW^%u0~WEJ^%f3FJOy0`Kv_7`JY zbHHwm1=h8-073_B8*+#$WgLKQPnHz&^+~h`sCm7u*?Nav&z2bxEo-i2?d2G2Uy1ub zPX`Go8p7SHX`J^KUmmsY#`LsHNDu9sEaz>Hclw*N>}IPL_|V_`j{DO3^I3?q2B0{C z!4dEAtc~8|lm=bD{8@oHXfb6e}spyhQF z#$l`2Y#J>=iuzg;DOCJREm7CEeRmSi*smd#ZNq-U{u^Qur#U(pNpu6f$d`?+Wo;MC zV%gYC)_z%>wcQwH-N0MF#(nI`Y^(s#7(gSe8%D^#hO)YiCe{T#XR*Hh#yHKDwbug; zJ`S`q+wU|GvTvRqp&IpnBFp&5T>X)Kb6~_!zRo79o)k$Xin;?$H&1V2{>q`lKI4x} zpg$37i8lfKL@flD>x!e+La+leiQt;tJJWoM8K$|Rq{lly$|alHbuX~rnl?Wz%C@ew z5B4C~BF&WFRN_P2_cCIg0y!qw;b8IigKX@{qlAEDX^kLRPbiXg5X7IU3HamV;4!7F zsj^-Xh9ei0>{{MDf}D|M%k-#LJ{@r0AaE^%1=cepBsB@TJDmd@ox6h1DW3h@WC zgmaW7Ogm#6(d|1TE0H?U+NfI37}awv)Dzp_Byin5wc-!gLHkQW#&nV^=p(Ha^1X)H z%`KVp_zd1e`ILdLQP&9BA=v}B_?vPoVALjLk85qh|t;EY!`>YeKL%z^o7~0kBvI23i^VoFFU( zuw)3923R}*8?~+%YaiBMiT>zE3KaAXutmOZBL95T1pN;-O~ra$o-V!K6x#3Ww36}- zjAiYio$)Q~N?ys|EO*-j^+6&FpzB90yz^s-HPBeH!1Iv%Tu5EiX7b`boyx~FT4#Fu{u+uH#(<5^$Up9u%hux1>juch!|&?0@NhO^yvrROiEWml}%FpfE} zs19|ynFd~KFikeo)JaccdEd|qQXW-XYmha9oa1WLn-KR@)Bqf~$BIKpy$t!Asgn#C zie!-7Svc?b4>J#Ko^Js@*JCW&GEH9rHQvBl>28n+&0U4ktoo;!@0~bJ^>Y68AC&X& z{gzWb&0G6Tqv`>j=vPl^CxZK8Y+wCD zW7cEpc{>;z)VSyE2)DMjzwX0+rI{7~l;JE;o+Hb%IgR*vf7@g>PxDLcZ=H;G(mt%K zMH&$53h~sjP?~7+acb{8e*ngHCd7Myq1EBq2I2DB^R8VoYV|U-;U>F01AX1&phrjY z?+2gF21-tdzlzkh%NU-Dy`HRXVF6zyS5-b_l;jLX5j5rp1yqEBY<^O88z z1Zs7?#mD1%#Ue9oKPM}TF!5}(dU2$iii_2A{&ydbN{+VxW9`w%{7N(OybV^A& zi5>ChvtF7PLLPI!BqhdH!&Vpe>{OQl4P*rDWLqoh{q|(GMw^W5LeTe#emGAv4vcJf z&OfTTy4$S-&LMbn1Nof{Z>OM6XtY7rHO`tp(oJ(3NbM-~(~Gq@)b}FVG1;Zf zfsnJ1EA-}T+I!nwZU*08)7Uo;boF8*Zen|^WT{Bo>Bu=ngO`i1+1V}~M=j?;e6&Px zpVwIFA@c&>{E@w!?VAUqpv5fC2ciz+R`E@gjLQI%QEM^c^|6lT1dPxDm;BYNQ_Rl1 zDf5X_K5;iikOoP~=Zc0U9qGmk-t+NM=HBz6>JKqCJd24lgeLTdlcc`VL;6bUs{F$y z()vbIETNgma0qht1;_DQM}ofpwr zr%99}?kOHCJz*}2U~cQhdHEMJfxZOCsO^@4vniU*Yq>h7g?(KmzeCQC`TQ|s0(~ar z1EtjMdwPO84shYdz(R+5LfmOTFx#PVim!*TKaS?hFh1`Bxs6)Ie`UtmAN|&3>gOlY zU*p^H3a=g2o2uOLPekb#8)Q99s)ytfc>mYp? zKOB4GIQ(3W>*g~eF8`{3F8{_A{@q6Dq8Hj)7vIFjN`{X&tCD0|R^JXU&nEGS+#7=OCs1ux!TQ$=P9_*7|zR<*80d;6Cp6K6Kd^tE5F6OMJi8G%02e_r^zu;Kr zeik0fOqOts_2&_bPAg4$!FZn`zOA&2$AX$86f8Env+5zH?YEwHRjsEDHbsA1o^>?) z^|V9v?8181K|QgT|KH%89@W#DMi}J@3ogemp*d!v#hIS|Q)#017d2G(gZ`>>wEt~=fvGpKlY^%DE52$%2}E+OmH z-<+rMN(D8EKG8iE{y6s_qWzXCXXd8^{NKu%`HLicCg5?gd_Ms9XZdRc)=3gRgUU%m z3%mE3(rsc!bR>FV^kdO4MsJTkzAO5e#3x20aPil`{I#tC>mV4f9>@l=hp>UVL)k$6 z!EB)6FgDOwf;iuiyBI=c=(3C(f@PSBowWpM)pIDr-Hc+~fv16U%&%*0MBLd1aqWtuEpIwS281cz4%haibULgR>f}z z;Rj`ah3@y=#_TlrtqEL%veD1bR#^uaO$E9P znRz#V&$o&2J%I+fBm+aNo|Gkr|*aA4FRf`7ee{H zhq=_0JTWZ-{Z(&e#dumm@P4H?0U~T! zlnF7nWivKz-e`ayMDdc$KQq0W+F%CI^@AQ=ZEd9VeXwwc81CzYF#UJlN{(HJVXejx zpUnz7gqgqhPQKYQFl=RHNN-~W6T+f@@%CofT^P1AHUzzUAqrvf7yJ{VM`PG06GPDs zX0K_v_Cnsr;#wb%8-02_(r3nFebIPgD1Laz4y8V<)It`Rx(9-6X|h|_@J<*hcTwNO z0`^;h%>q6hDgA_5T+CRyf3xw}}0<=gE32wl({`wOIOcW565%|!yVVoi~| zdS9XS4BT(R<=zZ+T#4&bwuR@L%dOoo%I||9hksV-vzD2z9XOr_IUc6LR4Tt0_~>G0 zOP&<|%a~2K0==cvosb$>Px(c1cd|bgRB^+(2sy@~bTaSVv+Ut7#No2$29qgVg_ z*2T=dugImtEmi5Dwn4&c1D9(C_z_k3UGloZTSs`jwZAqw!fTV8-Vqm-ALj0tALcT5 zC;k4)p8F2`@NU`xb!uC4D$o`k|500fdIFxTCQI=NWa*m|%2KstB2%Yu}&)U21v%!Xw#7byNG8u1DtRQFikIw{7S)MVOc$b#ceJ&i>_)N5>tB8(tDbs(DD|CHQj1$HWIChI7@w|x z#gWXvWsK<#zv~_8n^M|(pKR+MHlQtFL0v}ugxy2^L<`xn&`;P4K)3ZMy6qL3al*b! zV{%Mp7iqVI$_qGlboE@1r{@+xJH9HoT2CY+yKa*s5q^F5D>+Zgc z|E%9${D0JMPp(3ZiD;qnR-Keh)DdWt<}(klZl3V;UpH6hl*4q{6QIlZ{`L*I<{3`+ z0#nmP6`HmCx&p={DC@PJzhXJ!tgCf3-8+mnx=A#1$VNBGMqh{b_aG%SbR)#`Kjv+c z*YVcG_Vq996Z6jRyvzJW6Sozm7Feu;oSf{#5d#V{fYmuoqjuE zJI#Jq?bM^;ebi`wLpy05&68+esGi2wqMfw;v=hw}{ib$8I>i(@#Pyf_t`)2+0(5Ao zjZ~~|9IHfdeK|tzEqH5!9P8aG@9sMR#zc6g{z!}qG)qe$4`pz*~}5H*pQ~W(!C4b$F7)j8drvo=-GK z^Ka|3sr;kleBl0Uk405&kH(PgvFKgd9*aC3|Bd$~H!6R22KckfY-RZs574gl;z40O zVsoiUfb*JMP4W&L`rsD7cFKRUbjRYN*5L zHcjACjpSH-V??9*r%7PT{1R-|zwFDmpUArPSN9>kaR=;p+T0r8$Nlv`?jP0M&e`!@ZF7<4p{n2r$N5`hBbo{?#hn?_$WQXP6!5&UCUw7j7B76S5u195-9&)pe45zUu*G;erM^_tz`it3*%ha@*Skxsua?(jttfLcb2#46 zlVPb$Uxr&l{211<{z~rHzowgeKoaaen`=(C#NC^G`m)>@0t=~S0mQ32lH!4-P}f(- zwISY5=>bm-N`-jGiTvuHp?F~B)%Vpyehtr(zk#J1`Wi6aN}`CstPdN2&s`;m!`e|J8*Escg)erSNiDmimVwZXS%m8lC4u*qw9QZrW zBM#J1@y8s9t@sm;wpjJ29BrxUuW__xsvo%QDAf-f5oeCp8-gVOHa`SQGN3cAax>r# zaMKXyh)|pwfVGBTwE$}i!7PB4La+?L)`wtt6XvE6EDNwzAy^%rr3}I90X7hVH2`d7 z2-XO&{tzq&u+b2#31A~3m;$A=p%aZ3)4q0qmP0SRPl39zq(U`2p^Gz6Q)KsLcW z5W+qj3Ofj39}2+^2H0gG*dYLWUkG+6z@7@h4g=VCL$DISei(waGSFh+wn5mVp|Ey< zeLDo34Y0q2U>yMaV+eLQ!2UM`>jc=#Ay^j!oe6F?16>F19EkH~D9#Z8Gk6d-7hpUD zn+LFeh0@LkSS}RrNPtZV!Fm8TDFj;putW&95Mb#Lte1hl1@|Zj>j{M|VxaHAT?}E1 zLt#q*wlD-+%AhX*cNyxIP}tF^lR~g#0M-$L9m}Af0Jjgq`a)sH0c=A6HpKhnzVV<< zWEwhI0MJ+Bya{x`1Emw?`oBLA_py8J}G;*$;Jy4dd$B zr5Yx`Vq;7**0J^-c;1lmdc9Ut_nhGPv}_$l^EcvLWeog>aGYPr)86loaZYfYp}d$k zvtq1b#l(JRij&W;gV1`Wj8nn=J{P&gA-Ch@{>|w|p1E@luDvYwoSX>b$3CdTNYB+= zE8}i$Q<;}QJExMrhHeSPGjPFOqPR3jVICmQf_IrU3-@1R>Yp^ z|1x?5a}%|CLfI=h2k|`BZ*Qb~Ry&>9dS~8bdo^}FjxT5Di>!RQ-~dC?UY2f*=I`P= z=<7<@7U;Xg_32&lI77%aboT~AsI7ipt4Ec#!nv;U@*objHV5>7d8H^*e4S*STXVWs z|1>vGK4`3@QhI5g1|S-h@@psZeeZTzJe3=P5S7^711f{pSp^52v2|-&+mU|APuO2PO9WZ>5KLsHxG>d%Y1^C6N zZbQs$9EsL4NNu}8qlx@#h=q4OAnlJZa0a-%a2C}6G2Tq`ujSrZyu1qV%yY0qQszic zLbLiS`SV~@=bn*p>xb)DgP^f&kcap2HVfrp{NCh}++*Ok(-ayXoZf3C+Q;x)HgwjaTmoGIt<8uk#{gY%jJVY>i0fjkU_8b~ z@-OJqQJ3V8($;0 zeLxGsK5lw)`*KYcnjTV>rl|3&!5M8BtzYX13i0TG7>TMLK)r z7?YH5M=ZfvX5cbBm-&9k<05W?4f+bi>KzxW+jth>bE>3{(Ak(-?7I-&F+uJZdAUCT zv3jcHej~t-r~>~qz!z4@6-)degozRP_!2+jmH2*$)m9}|3}Rg&V-?37V?mWtFwO;T zoKqd+s}tmNwHxO+pxrygnd=x^CWv#s8|OgBxH=q1$Frk@>@qh_u1gE#Ya##5VsE}Z z$S!wbkwJE$d>?<7aeyzEyzldwxckGEu?1D7C4Ba=zb_m~&m_57!v?GqymOT5p0h#LuV|H^Zj4C1 z=W0bmvAgijhvA-tVYLnNi}?Uw1HH`vKY`iWS{P3w1qb-?@GC2~Fb?pO1HMzh_fxQ# z7a8a~7GxKDjI}WKUaPIGa-P)|nntb)bXYY3&C{O6wLAKn+$;9$cwSGP`=WU~)bP?y z?Z!1H>%*K=KlImqZa?MH26bw=6x4M#CtIoQWM%g|=oPvTWu){`-mA$qKhC+`*4_+S zaJJBbhN}gi3-^ZyR4Hc;n*@DDP^Z$(o3;DtF@7(;6Egm6^tt2qa*KPM{C(u7$bIl` z+oHXORtSDCw%jVL5Q|QOeIIHMcF0k}4p|5?Xlo-qQw_eblD{1KX5?=eo0?Imx!{{R zz)!Wk=E=NG+S{z=4fY>cJmr-lZ`|8q>uBZh7R^6?_Q7P>+^4yn!pp2{t$cW09(^=5|6z%7b z9UANt)6gfnwyEDMWrU^v2b=C1^4ma^dkjMhuDLW`HkEy4+8};K3M^$!!Oz9tqPAX# zJBx|dxI+Z@n8vjdN9$1o?oiLtHM;eI@e-bUwJrO#wye8`fFmYOb=!j{&dgRLd{;rp zo`N_fEqs0($5yMX)$)EShkZ;rk4mR;HF*mPol70COWd~BLVPi<{0yB451)M+;B6e+ z&|QleZ#%4+z)n7f?BuJZovg~{G#0eu{PQoOZCwq}zAz^F9VK0klV8S@Ff4Gk@&szL zQ#qcj>_WYpzX0Cl=;rA1sIS{>`{rhzwGH~ZbX|GmWV%@i%PdJ64eub5)X5*HiF?Ni+QM;V&t(7M__dmzenIGIRfo)| zszauX(;@Dt7;|m)=X#n0b3HHARH66DEJ*LLY@9M~9Wvsk>$#BgwrV!g@#ETFd^6Mk zTI*ZNsR(hp6J#{MnNE+KHSXjm-ufuQc8@z*5;MdJ3JlNkbLpPA@EOr?olfxJE`DNd zwUYm!w87Lizag#yAxUfNf66sybo!_#Sf<7(&GHg4d9fxbJ!glN! zH$Iza?4{DSo`r3}G+966=Q`{O+7e{WYs;|hIY9PNOwo-rKY8jwz>{3uNnrhyi5aV{p{7u5|X`Zw?N#YoTRSaYYVCC1Mk z49GU}ZBAOB#Ceal8U^Z~DXRuk_bCgzXP6K2PlNtBK9c8|D&f0i_^A_wS0MZ|5PsYQ z;X5JxdI(>)pY)&FPx@h*|Nij%)PC^WDZ?i!f0x8>qV&Tue4_G)W&RU|?}qSeQNQme z{JQ;w@09f4AN{W15B(}K{Y2rrBz^Zszt4E(k6#}jrS);uo)&kE&Ii5sQ&NLRF&=b#^i}y&K`X@xQf^)^&*h;H^<;_J z`r4LL=}w&ScV@2hZrXrRTk|^Fm*lVaKgSrYg1Q=uF;`O^sD)>eN?Ld(sWk{$;Am|@ z$O=bm4?@;E+Uy`?6!c^OlI1bxXorVjxB}f7g5e5uR|u8_Sa%49-}jsog3-!!2!<=u zb3-s(nVuJd;mY*<5DZtQj|{!OXKpRIM+xFfXJoDLTMs5Oc9kZprG^Pj~L51SLZk5yOd<=*#Hk+(Q)qq{1z8q0S!$5=s!R?MGfwty{+r+g_?tCY5y zS#6M?2Jy$F1w9{l=zsA0Ox9ld<_O-7*x7=1+t2XMz&FD8>fk+KbM$7Ax}UmU*Ya$+CU<-Pebib{oP%H5#ru?x4cw=U`?F^1ctatU zrLMmWGJ&zU&k``Uo|fl#6C@K^&hl7Wixs1Yw}@95H;+EWlg}n8pY>8cGg3a&B%eY~ zKQ~TJ)j9TN+dg2c>4=6 zq?Hw4uULDqU)I8R4W@~9$-JP=*T>PuQQB-xRQUl7@SJ}NdNDvE4u9E?a{@r34o~=THUlK)@NfHZ&H_l>;otQj z*+h&1EaC9^Ub<{Dj9OZYf=cSarj^Sc(rMS)jGW1 zhgmfUvmE{vAC{>_SjOQu`7r2@0A@RU%!g$&2+KPBO&?ZgBdpHh-&D%YQn}QFHhf*# zvxmKEJ;1&Zf;9l_<`AqAV7G)|Ie_g6!I}Uj_8Iyx2VlPr#hV1Me}!O^0k%2>n*y+- zLa?a-`)CL@4PY}vuspzqL$GFmjf7wYfb9&yS^zd0f=vh5r6Je>02>U!W&ms;1e*!4 zl_6LWVCzG$Spa(~1UnF53qmwK2w;bY;vEdIBSP^G0ocM2>`;L9gkXmOtSyvZ31F=u zSS!FfLTTFoHYWsY2Uu?i1{OubaUoa-z$S;vI2_9e!8!r9DFo{R*rOp>H^6wPj5)|d zA=nWBs|%%_3$S}buz3KBhtkdm*tbIQjzroAU_)#>%kqU{e`>>X>RwsRX;`fKb*Eu_ zU@xuH(4~~gO{d{3H9X=p%vJqSr{O>~ehk`N4UanwjcRzpX;`6#C!L0*8lG|*PF2Ix zPD8uuuW=fhy!hFA&}$96-f6g1jblL`YMvRV;ZQZ)b{d*he-`Sb#;K*G(t`eKtPR0He>ENxN(=g{@xvh)=ħDfHJV=R;(=h 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%0Ax?$;)9WRq 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