rsshub 1.0.0-master.ff97759 → 1.0.0-master.ffe7305
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of rsshub might be problematic. Click here for more details.
- package/README.md +14 -13
 - package/lib/api_router.js +1 -1
 - package/lib/config.js +50 -8
 - package/lib/maintainer.js +25 -0
 - package/lib/middleware/anti-hotlink.js +120 -26
 - package/lib/middleware/cache/index.js +3 -0
 - package/lib/middleware/cache/redis.js +7 -2
 - package/lib/middleware/onerror.js +2 -1
 - package/lib/middleware/parameter.js +101 -47
 - package/lib/middleware/template.js +29 -11
 - package/lib/middleware/templates/iframe.art +14 -0
 - package/lib/radar-rules.js +46 -1182
 - package/lib/radar.js +60 -0
 - package/lib/router.js +481 -528
 - package/lib/routes/bandisoft/index.js +4 -0
 - package/lib/routes/bbc/index.js +1 -0
 - package/lib/routes/biobio/others.js +5 -0
 - package/lib/routes/blogs/hedwig.js +4 -0
 - package/lib/routes/blogs/wordpress.js +5 -0
 - package/lib/routes/booth-pm/shop.js +4 -1
 - package/lib/routes/cell/cover.js +1 -1
 - package/lib/routes/craigslist/search.js +5 -0
 - package/lib/routes/engadget/home.js +4 -0
 - package/lib/routes/everything/changes.js +1 -1
 - package/lib/routes/fanbox/main.js +4 -1
 - package/lib/routes/fanxinzhui/latest.js +12 -13
 - package/lib/routes/fashionnetwork/headline.js +15 -12
 - package/lib/routes/fashionnetwork/news.js +16 -12
 - package/lib/routes/gitlab/common.js +5 -0
 - package/lib/routes/gitlab/explore.js +5 -0
 - package/lib/routes/gitlab/release.js +5 -0
 - package/lib/routes/gitlab/tag.js +5 -0
 - package/lib/routes/hexo/fluid.js +4 -0
 - package/lib/routes/hexo/next.js +4 -0
 - package/lib/routes/hexo/yilia.js +4 -0
 - package/lib/routes/index.js +1 -1
 - package/lib/routes/mastodon/account_id.js +4 -0
 - package/lib/routes/mastodon/timeline_local.js +4 -0
 - package/lib/routes/mastodon/timeline_remote.js +4 -0
 - package/lib/routes/mastodon/utils.js +17 -14
 - package/lib/routes/novel/biqugeinfo.js +2 -2
 - package/lib/routes/pornhub/category_url.js +4 -0
 - package/lib/routes/pornhub/model.js +4 -0
 - package/lib/routes/pornhub/pornstar.js +4 -0
 - package/lib/routes/pornhub/users.js +4 -0
 - package/lib/routes/questmobile/report.js +13 -14
 - package/lib/routes/rss3/blog.js +11 -12
 - package/lib/routes/sankakucomplex/post.js +1 -4
 - package/lib/routes/touhougarakuta/index.js +3 -0
 - package/lib/routes/v2ex/post.js +3 -0
 - package/lib/routes/v2ex/topics.js +4 -8
 - package/lib/routes/weforum/report.js +10 -6
 - package/lib/routes/ziroom/room.js +5 -0
 - package/lib/utils/cf-email.js +36 -0
 - package/lib/utils/parse-date.js +8 -6
 - package/lib/utils/puppeteer-utils.js +63 -0
 - package/lib/utils/puppeteer.js +58 -3
 - package/lib/utils/render.js +2 -0
 - package/lib/utils/request-wrapper.js +39 -93
 - package/lib/utils/unify-proxy.js +116 -0
 - package/lib/utils/valid-host.js +16 -0
 - package/lib/utils/wechat-mp.js +16 -5
 - package/lib/v2/0818tuan/index.js +47 -0
 - package/lib/v2/0818tuan/maintainer.js +3 -0
 - package/lib/v2/0818tuan/radar.js +13 -0
 - package/lib/v2/0818tuan/router.js +3 -0
 - package/lib/v2/163/ds.js +33 -0
 - package/lib/v2/163/dy.js +29 -0
 - package/lib/v2/163/dy2.js +42 -0
 - package/lib/v2/163/exclusive.js +148 -0
 - package/lib/v2/163/maintainer.js +20 -0
 - package/lib/v2/163/music/artist-songs.js +39 -0
 - package/lib/v2/163/music/artist.js +39 -0
 - package/lib/v2/163/music/djradio.js +78 -0
 - package/lib/v2/163/music/maintainer.js +3 -0
 - package/lib/v2/163/music/playlist.js +55 -0
 - package/lib/v2/163/music/userevents.js +52 -0
 - package/lib/v2/163/music/userplaylist.js +56 -0
 - package/lib/v2/163/music/userplayrecords.js +55 -0
 - package/lib/v2/163/news/rank.js +155 -0
 - package/lib/v2/163/news/special.js +114 -0
 - package/lib/v2/163/open/vip.js +63 -0
 - package/lib/v2/163/radar.js +155 -0
 - package/lib/v2/163/renjian.js +77 -0
 - package/lib/v2/163/router.js +20 -0
 - package/lib/v2/163/templates/ds.art +7 -0
 - package/lib/v2/163/templates/dy.art +6 -0
 - package/lib/v2/163/templates/exclusive.art +11 -0
 - package/lib/v2/163/templates/music/playlist.art +4 -0
 - package/lib/v2/163/templates/music/userevents.art +7 -0
 - package/lib/v2/163/templates/music/userplaylist.art +16 -0
 - package/lib/v2/163/templates/music/userplayrecords.art +7 -0
 - package/lib/v2/163/templates/open.art +12 -0
 - package/lib/v2/163/today.js +55 -0
 - package/lib/v2/163/utils.js +40 -0
 - package/lib/v2/18comic/album.js +2 -1
 - package/lib/v2/18comic/blogs.js +2 -1
 - package/lib/v2/18comic/radar.js +39 -29
 - package/lib/v2/18comic/templates/description.art +4 -0
 - package/lib/v2/18comic/utils.js +15 -15
 - package/lib/v2/19lou/index.js +78 -0
 - package/lib/v2/19lou/maintainer.js +3 -0
 - package/lib/v2/19lou/radar.js +29 -0
 - package/lib/v2/19lou/router.js +3 -0
 - package/lib/v2/1point3acres/blog.js +67 -0
 - package/lib/v2/1point3acres/category.js +17 -0
 - package/lib/v2/1point3acres/maintainer.js +9 -0
 - package/lib/v2/1point3acres/offer.js +69 -0
 - package/lib/v2/1point3acres/radar.js +53 -0
 - package/lib/v2/1point3acres/router.js +10 -0
 - package/lib/v2/1point3acres/section.js +28 -0
 - package/lib/v2/1point3acres/templates/image.art +1 -0
 - package/lib/v2/1point3acres/templates/offer.art +11 -0
 - package/lib/v2/1point3acres/thread.js +15 -0
 - package/lib/v2/1point3acres/utils.js +79 -0
 - package/lib/v2/2048/radar.js +13 -0
 - package/lib/v2/2cycd/index.js +57 -0
 - package/lib/v2/2cycd/maintainer.js +3 -0
 - package/lib/v2/2cycd/radar.js +25 -0
 - package/lib/v2/2cycd/router.js +3 -0
 - package/lib/v2/35photo/genre.js +2 -1
 - package/lib/v2/35photo/utils.js +19 -4
 - package/lib/v2/36kr/index.js +80 -0
 - package/lib/v2/36kr/maintainer.js +7 -5
 - package/lib/v2/36kr/radar.js +27 -15
 - package/lib/v2/36kr/router.js +1 -5
 - package/lib/v2/500px/maintainer.js +4 -0
 - package/lib/v2/500px/radar.js +19 -0
 - package/lib/v2/500px/router.js +4 -0
 - package/lib/v2/500px/templates/tribeSet.art +6 -0
 - package/lib/v2/500px/templates/user.art +3 -0
 - package/lib/v2/500px/tribeSet.js +29 -0
 - package/lib/v2/500px/user.js +32 -0
 - package/lib/v2/500px/utils.js +122 -0
 - package/lib/v2/50forum/radar.js +1 -1
 - package/lib/v2/50forum/zhuanjia.js +1 -1
 - package/lib/v2/52hrtt/index.js +12 -13
 - package/lib/v2/52hrtt/symposium.js +12 -13
 - package/lib/v2/591/list.js +144 -0
 - package/lib/v2/591/maintainer.js +3 -0
 - package/lib/v2/591/radar.js +16 -0
 - package/lib/v2/591/router.js +3 -0
 - package/lib/v2/591/templates/house.art +52 -0
 - package/lib/v2/6park/index.js +65 -0
 - package/lib/v2/6park/maintainer.js +8 -0
 - package/lib/v2/6park/news.js +76 -0
 - package/lib/v2/6park/radar.js +65 -0
 - package/lib/v2/6park/router.js +4 -0
 - package/lib/v2/6v123/latestMovies.js +14 -0
 - package/lib/v2/6v123/latestTVSeries.js +14 -0
 - package/lib/v2/6v123/maintainer.js +4 -0
 - package/lib/v2/6v123/radar.js +23 -0
 - package/lib/v2/6v123/router.js +4 -0
 - package/lib/v2/6v123/utils.js +83 -0
 - package/lib/v2/78dm/index.js +74 -0
 - package/lib/v2/78dm/maintainer.js +5 -0
 - package/lib/v2/78dm/radar.js +37 -0
 - package/lib/v2/78dm/router.js +3 -0
 - package/lib/v2/78dm/templates/image.art +1 -0
 - package/lib/v2/7mmtv/index.js +78 -0
 - package/lib/v2/7mmtv/maintainer.js +4 -0
 - package/lib/v2/7mmtv/radar.js +19 -0
 - package/lib/v2/7mmtv/templates/description.art +15 -0
 - package/lib/v2/8world/index.js +8 -8
 - package/lib/v2/8world/maintainer.js +1 -0
 - package/lib/v2/8world/radar.js +6 -0
 - package/lib/v2/8world/router.js +1 -1
 - package/lib/v2/91porn/author.js +60 -0
 - package/lib/v2/91porn/index.js +60 -0
 - package/lib/v2/91porn/maintainer.js +4 -0
 - package/lib/v2/91porn/radar.js +19 -0
 - package/lib/v2/91porn/router.js +4 -0
 - package/lib/v2/91porn/templates/index.art +1 -0
 - package/lib/v2/91porn/utils.js +12 -0
 - package/lib/v2/9to5/maintainer.js +3 -0
 - package/lib/v2/9to5/radar.js +35 -0
 - package/lib/v2/9to5/router.js +3 -0
 - package/lib/v2/9to5/subsite.js +70 -0
 - package/lib/v2/9to5/utils.js +36 -0
 - package/lib/v2/abmedia/category.js +1 -1
 - package/lib/v2/acfun/article.js +100 -0
 - package/lib/v2/acfun/bangumi.js +28 -0
 - package/lib/v2/acfun/maintainer.js +5 -0
 - package/lib/v2/acfun/radar.js +25 -0
 - package/lib/v2/acfun/router.js +5 -0
 - package/lib/v2/acfun/video.js +45 -0
 - package/lib/v2/acg17/maintainer.js +3 -0
 - package/lib/v2/acg17/post.js +20 -0
 - package/lib/v2/acg17/radar.js +13 -0
 - package/lib/v2/acg17/router.js +3 -0
 - package/lib/v2/acs/journal.js +73 -0
 - package/lib/v2/acs/maintainer.js +3 -0
 - package/lib/v2/acs/radar.js +13 -0
 - package/lib/v2/acs/router.js +3 -0
 - package/lib/v2/acs/templates/description.art +2 -0
 - package/lib/v2/aeaweb/index.js +81 -0
 - package/lib/v2/aeaweb/maintainer.js +3 -0
 - package/lib/v2/aeaweb/radar.js +13 -0
 - package/lib/v2/aeaweb/router.js +3 -0
 - package/lib/v2/aeaweb/templates/description.art +3 -0
 - package/lib/v2/agefans/detail.js +26 -0
 - package/lib/v2/agefans/maintainer.js +4 -0
 - package/lib/v2/agefans/radar.js +19 -0
 - package/lib/v2/agefans/router.js +4 -0
 - package/lib/v2/agefans/update.js +40 -0
 - package/lib/v2/agora0/index.js +54 -0
 - package/lib/v2/agora0/maintainer.js +4 -0
 - package/lib/v2/agora0/pen0.js +43 -0
 - package/lib/v2/agora0/radar.js +24 -0
 - package/lib/v2/agora0/router.js +4 -0
 - package/lib/v2/aicaijing/index.js +73 -0
 - package/lib/v2/aicaijing/maintainer.js +6 -0
 - package/lib/v2/aicaijing/radar.js +31 -0
 - package/lib/v2/aicaijing/router.js +3 -0
 - package/lib/v2/aicaijing/templates/description.art +4 -0
 - package/lib/v2/aiea/index.js +39 -0
 - package/lib/v2/aiea/maintainer.js +3 -0
 - package/lib/v2/aiea/radar.js +13 -0
 - package/lib/v2/aiea/router.js +3 -0
 - package/lib/v2/aijishu/index.js +26 -0
 - package/lib/v2/aijishu/maintainer.js +5 -0
 - package/lib/v2/aijishu/radar.js +25 -0
 - package/lib/v2/aijishu/router.js +3 -0
 - package/lib/v2/aijishu/utils.js +36 -0
 - package/lib/v2/airchina/index.js +36 -0
 - package/lib/v2/airchina/maintainer.js +3 -0
 - package/lib/v2/airchina/radar.js +13 -0
 - package/lib/v2/airchina/router.js +3 -0
 - package/lib/v2/aliyun/database_month.js +40 -0
 - package/lib/v2/aliyun/developer/group.js +49 -0
 - package/lib/v2/aliyun/maintainer.js +5 -0
 - package/lib/v2/aliyun/notice.js +56 -0
 - package/lib/v2/aliyun/radar.js +32 -0
 - package/lib/v2/aliyun/router.js +5 -0
 - package/lib/v2/aliyundrive/files.js +59 -0
 - package/lib/v2/aliyundrive/maintainer.js +3 -0
 - package/lib/v2/aliyundrive/radar.js +13 -0
 - package/lib/v2/aliyundrive/router.js +3 -0
 - package/lib/v2/aljazeera/index.js +87 -0
 - package/lib/v2/aljazeera/maintainer.js +5 -0
 - package/lib/v2/aljazeera/radar.js +62 -0
 - package/lib/v2/aljazeera/router.js +3 -0
 - package/lib/v2/aljazeera/templates/description.art +8 -0
 - package/lib/v2/allrecode/index.js +65 -0
 - package/lib/v2/allrecode/maintainer.js +5 -0
 - package/lib/v2/allrecode/news.js +35 -0
 - package/lib/v2/allrecode/radar.js +25 -0
 - package/lib/v2/allrecode/router.js +4 -0
 - package/lib/v2/ally/maintainer.js +3 -0
 - package/lib/v2/ally/radar.js +13 -0
 - package/lib/v2/ally/rail.js +108 -0
 - package/lib/v2/ally/router.js +3 -0
 - package/lib/v2/amazon/awsblogs.js +27 -0
 - package/lib/v2/amazon/kindle-software-updates.js +47 -0
 - package/lib/v2/amazon/maintainer.js +4 -0
 - package/lib/v2/amazon/radar.js +24 -0
 - package/lib/v2/amazon/router.js +4 -0
 - package/lib/v2/amazon/templates/software-description.art +4 -0
 - package/lib/v2/android/maintainer.js +3 -0
 - package/lib/v2/android/platform-tools-releases.js +47 -0
 - package/lib/v2/android/radar.js +13 -0
 - package/lib/v2/android/router.js +3 -0
 - package/lib/v2/annualreviews/index.js +68 -0
 - package/lib/v2/annualreviews/maintainer.js +3 -0
 - package/lib/v2/annualreviews/radar.js +13 -0
 - package/lib/v2/annualreviews/router.js +3 -0
 - package/lib/v2/anquanke/category.js +39 -0
 - package/lib/v2/anquanke/maintainer.js +4 -0
 - package/lib/v2/anquanke/radar.js +13 -0
 - package/lib/v2/anquanke/router.js +4 -0
 - package/lib/v2/anquanke/vul.js +34 -0
 - package/lib/v2/apache/apisix/blog.js +32 -0
 - package/lib/v2/apache/maintainer.js +3 -0
 - package/lib/v2/apache/radar.js +13 -0
 - package/lib/v2/apache/router.js +3 -0
 - package/lib/v2/apiseven/blog.js +46 -0
 - package/lib/v2/apiseven/maintainer.js +3 -0
 - package/lib/v2/apiseven/radar.js +13 -0
 - package/lib/v2/apiseven/router.js +3 -0
 - package/lib/v2/apkpure/maintainer.js +3 -0
 - package/lib/v2/apkpure/radar.js +13 -0
 - package/lib/v2/apkpure/router.js +3 -0
 - package/lib/v2/apkpure/versions.js +48 -0
 - package/lib/v2/apnews/maintainer.js +3 -0
 - package/lib/v2/apnews/radar.js +13 -0
 - package/lib/v2/apnews/router.js +3 -0
 - package/lib/v2/apnews/templates/description.art +14 -0
 - package/lib/v2/apnews/topics.js +47 -0
 - package/lib/v2/apple/exchange_repair.js +28 -21
 - package/lib/v2/appledaily/index.js +7 -11
 - package/lib/v2/appleinsider/index.js +59 -0
 - package/lib/v2/appleinsider/maintainer.js +3 -0
 - package/lib/v2/appleinsider/radar.js +13 -0
 - package/lib/v2/appleinsider/router.js +3 -0
 - package/lib/v2/aqara/community.js +32 -0
 - package/lib/v2/aqara/maintainer.js +4 -0
 - package/lib/v2/aqara/news.js +53 -0
 - package/lib/v2/aqara/radar.js +21 -0
 - package/lib/v2/aqara/router.js +4 -0
 - package/lib/v2/arcteryx/maintainer.js +5 -0
 - package/lib/v2/arcteryx/new-arrivals.js +38 -0
 - package/lib/v2/arcteryx/outlet.js +40 -0
 - package/lib/v2/arcteryx/radar.js +29 -0
 - package/lib/v2/arcteryx/regear-new-arrivals.js +53 -0
 - package/lib/v2/arcteryx/router.js +5 -0
 - package/lib/v2/arcteryx/templates/product-description.art +12 -0
 - package/lib/v2/arcteryx/templates/regear-product-description.art +16 -0
 - package/lib/v2/arcteryx/utils.js +23 -0
 - package/lib/v2/arknights/radar.js +1 -1
 - package/lib/v2/asiantolick/index.js +67 -0
 - package/lib/v2/asiantolick/maintainer.js +6 -0
 - package/lib/v2/asiantolick/radar.js +31 -0
 - package/lib/v2/asiantolick/router.js +3 -0
 - package/lib/v2/asiantolick/templates/description.art +3 -0
 - package/lib/v2/asus/bios.js +1 -0
 - package/lib/v2/asus/gpu-tweak.js +31 -0
 - package/lib/v2/asus/maintainer.js +1 -0
 - package/lib/v2/asus/radar.js +12 -1
 - package/lib/v2/asus/router.js +1 -0
 - package/lib/v2/baai/comments.js +35 -0
 - package/lib/v2/baai/events.js +35 -0
 - package/lib/v2/baai/hub.js +60 -0
 - package/lib/v2/baai/maintainer.js +5 -0
 - package/lib/v2/baai/radar.js +31 -0
 - package/lib/v2/baai/router.js +7 -0
 - package/lib/v2/baai/utils.js +33 -0
 - package/lib/v2/baidu/gushitong/index.js +28 -0
 - package/lib/v2/baidu/maintainer.js +9 -0
 - package/lib/v2/baidu/radar.js +68 -0
 - package/lib/v2/baidu/router.js +9 -0
 - package/lib/v2/baidu/templates/forum.art +1 -0
 - package/lib/v2/baidu/templates/gushitong.art +9 -0
 - package/lib/v2/baidu/templates/post.art +4 -0
 - package/lib/v2/baidu/templates/top.art +9 -0
 - package/lib/v2/baidu/tieba/forum.js +64 -0
 - package/lib/v2/baidu/tieba/post.js +80 -0
 - package/lib/v2/baidu/tieba/user.js +33 -0
 - package/lib/v2/baidu/top.js +34 -0
 - package/lib/v2/baijing/index.js +54 -0
 - package/lib/v2/baijing/maintainer.js +3 -0
 - package/lib/v2/baijing/radar.js +22 -0
 - package/lib/v2/baijing/router.js +3 -0
 - package/lib/v2/bangumi/maintainer.js +17 -0
 - package/lib/v2/bangumi/moe/index.js +92 -0
 - package/lib/v2/bangumi/online/online.js +28 -0
 - package/lib/v2/bangumi/radar.js +92 -0
 - package/lib/v2/bangumi/router.js +14 -0
 - package/lib/v2/bangumi/templates/tv/ep.art +2 -0
 - package/lib/v2/bangumi/templates/tv/today.art +12 -0
 - package/lib/v2/bangumi/tv/calendar/_base.js +37 -0
 - package/lib/v2/bangumi/tv/calendar/today.js +63 -0
 - package/lib/v2/bangumi/tv/group/reply.js +59 -0
 - package/lib/v2/bangumi/tv/group/topic.js +39 -0
 - package/lib/v2/bangumi/tv/person/index.js +38 -0
 - package/lib/v2/bangumi/tv/subject/comments.js +52 -0
 - package/lib/v2/bangumi/tv/subject/ep.js +31 -0
 - package/lib/v2/bangumi/tv/subject/index.js +26 -0
 - package/lib/v2/bangumi/tv/subject/offcial-subject-api.js +32 -0
 - package/lib/v2/bangumi/tv/user/blog.js +43 -0
 - package/lib/v2/bast/index.js +74 -0
 - package/lib/v2/bast/maintainer.js +3 -0
 - package/lib/v2/bast/radar.js +13 -0
 - package/lib/v2/bast/router.js +3 -0
 - package/lib/v2/bdys/index.js +98 -0
 - package/lib/v2/bdys/maintainer.js +3 -0
 - package/lib/v2/bdys/radar.js +20 -0
 - package/lib/v2/bdys/router.js +3 -0
 - package/lib/v2/bdys/templates/desc.art +21 -0
 - package/lib/v2/behance/maintainer.js +3 -0
 - package/lib/v2/behance/radar.js +26 -0
 - package/lib/v2/behance/router.js +3 -0
 - package/lib/v2/behance/user.js +67 -0
 - package/lib/v2/bellroy/maintainer.js +3 -0
 - package/lib/v2/bellroy/new-releases.js +26 -0
 - package/lib/v2/bellroy/radar.js +13 -0
 - package/lib/v2/bellroy/router.js +3 -0
 - package/lib/v2/bendibao/news.js +4 -0
 - package/lib/v2/bgmlist/maintainer.js +3 -0
 - package/lib/v2/bgmlist/onair.js +32 -0
 - package/lib/v2/bgmlist/radar.js +13 -0
 - package/lib/v2/bgmlist/router.js +3 -0
 - package/lib/v2/bgmlist/templates/description.art +4 -0
 - package/lib/v2/bilibili/bangumi.js +4 -4
 - package/lib/v2/bilibili/cache.js +98 -70
 - package/lib/v2/bilibili/dynamic.js +6 -3
 - package/lib/v2/bilibili/followings_dynamic.js +3 -3
 - package/lib/v2/bilibili/hotSearch.js +25 -0
 - package/lib/v2/bilibili/maintainer.js +43 -0
 - package/lib/v2/bilibili/popular.js +29 -0
 - package/lib/v2/bilibili/radar.js +37 -1
 - package/lib/v2/bilibili/router.js +6 -2
 - package/lib/v2/bilibili/topic.js +2 -2
 - package/lib/v2/bilibili/userChannel.js +31 -35
 - package/lib/v2/bilibili/userCollection.js +51 -0
 - package/lib/v2/bilibili/utils.js +14 -3
 - package/lib/v2/bilibili/video-all.js +73 -0
 - package/lib/v2/bilibili/video.js +11 -3
 - package/lib/v2/bilibili/vsearch.js +29 -9
 - package/lib/v2/bioone/featured.js +10 -8
 - package/lib/v2/bioone/journal.js +28 -26
 - package/lib/v2/biquge/index.js +99 -0
 - package/lib/v2/biquge/maintainer.js +3 -0
 - package/lib/v2/biquge/radar.js +29 -0
 - package/lib/v2/biquge/router.js +3 -0
 - package/lib/v2/bit/cs/cs.js +24 -0
 - package/lib/v2/bit/cs/utils.js +53 -0
 - package/lib/v2/bit/jwc/jwc.js +24 -0
 - package/lib/v2/bit/jwc/utils.js +49 -0
 - package/lib/v2/bit/maintainer.js +3 -0
 - package/lib/v2/bit/radar.js +25 -1
 - package/lib/v2/bit/router.js +3 -0
 - package/lib/v2/bit/yjs.js +27 -0
 - package/lib/v2/bitmovin/blog.js +15 -21
 - package/lib/v2/bjfu/it/utils.js +3 -3
 - package/lib/v2/bjp/apod.js +43 -0
 - package/lib/v2/bjp/maintainer.js +3 -0
 - package/lib/v2/bjp/radar.js +13 -0
 - package/lib/v2/bjp/router.js +3 -0
 - package/lib/v2/bjsk/index.js +52 -0
 - package/lib/v2/bjsk/maintainer.js +3 -0
 - package/lib/v2/bjsk/radar.js +13 -0
 - package/lib/v2/bjsk/router.js +3 -0
 - package/lib/v2/bjwxdxh/index.js +52 -0
 - package/lib/v2/bjwxdxh/maintainer.js +3 -0
 - package/lib/v2/bjwxdxh/radar.js +13 -0
 - package/lib/v2/bjwxdxh/router.js +3 -0
 - package/lib/v2/blockbeats/index.js +28 -35
 - package/lib/v2/blockbeats/maintainer.js +1 -1
 - package/lib/v2/blockbeats/radar.js +3 -3
 - package/lib/v2/bloomberg/authors.js +52 -0
 - package/lib/v2/bloomberg/index.js +28 -0
 - package/lib/v2/bloomberg/maintainer.js +5 -0
 - package/lib/v2/bloomberg/radar.js +19 -0
 - package/lib/v2/bloomberg/router.js +5 -0
 - package/lib/v2/bloomberg/templates/audio_media.art +13 -0
 - package/lib/v2/bloomberg/templates/image_figure.art +9 -0
 - package/lib/v2/bloomberg/templates/lede_media.art +14 -0
 - package/lib/v2/bloomberg/templates/video_media.art +25 -0
 - package/lib/v2/bloomberg/utils.js +407 -0
 - package/lib/v2/bluestacks/maintainer.js +3 -0
 - package/lib/v2/bluestacks/radar.js +13 -0
 - package/lib/v2/bluestacks/release.js +63 -0
 - package/lib/v2/bluestacks/router.js +3 -0
 - package/lib/v2/bnu/dwxgb.js +57 -0
 - package/lib/v2/bnu/fdy.js +41 -0
 - package/lib/v2/bnu/lib.js +40 -0
 - package/lib/v2/bnu/maintainer.js +3 -0
 - package/lib/v2/bnu/radar.js +27 -3
 - package/lib/v2/bnu/router.js +3 -0
 - package/lib/v2/brave/latest.js +38 -0
 - package/lib/v2/brave/maintainer.js +3 -0
 - package/lib/v2/brave/radar.js +13 -0
 - package/lib/v2/brave/router.js +3 -0
 - package/lib/v2/btzj/index.js +6 -1
 - package/lib/v2/byteclicks/index.js +22 -0
 - package/lib/v2/byteclicks/maintainer.js +4 -0
 - package/lib/v2/byteclicks/radar.js +19 -0
 - package/lib/v2/byteclicks/router.js +4 -0
 - package/lib/v2/byteclicks/tag.js +30 -0
 - package/lib/v2/byteclicks/utils.js +13 -0
 - package/lib/v2/bytes/bytes.js +25 -0
 - package/lib/v2/bytes/maintainer.js +4 -0
 - package/lib/v2/bytes/radar.js +13 -0
 - package/lib/v2/bytes/router.js +3 -0
 - package/lib/v2/c114/maintainer.js +3 -0
 - package/lib/v2/c114/radar.js +13 -0
 - package/lib/v2/c114/roll.js +57 -0
 - package/lib/v2/c114/router.js +3 -0
 - package/lib/v2/caai/index.js +22 -0
 - package/lib/v2/caai/maintainer.js +3 -0
 - package/lib/v2/caai/radar.js +13 -0
 - package/lib/v2/caai/router.js +3 -0
 - package/lib/v2/caai/utils.js +46 -0
 - package/lib/v2/caareviews/book.js +14 -0
 - package/lib/v2/caareviews/essay.js +14 -0
 - package/lib/v2/caareviews/exhibition.js +14 -0
 - package/lib/v2/caareviews/maintainer.js +5 -0
 - package/lib/v2/caareviews/radar.js +25 -0
 - package/lib/v2/caareviews/router.js +5 -0
 - package/lib/v2/caareviews/templates/utils.art +2 -0
 - package/lib/v2/caareviews/utils.js +49 -0
 - package/lib/v2/caijing/maintainer.js +3 -0
 - package/lib/v2/caijing/radar.js +13 -0
 - package/lib/v2/caijing/roll.js +46 -0
 - package/lib/v2/caijing/router.js +3 -0
 - package/lib/v2/caixin/article.js +27 -0
 - package/lib/v2/caixin/blog.js +58 -0
 - package/lib/v2/caixin/category.js +56 -0
 - package/lib/v2/caixin/database.js +48 -0
 - package/lib/v2/caixin/k.js +40 -0
 - package/lib/v2/caixin/latest.js +50 -0
 - package/lib/v2/caixin/maintainer.js +8 -0
 - package/lib/v2/caixin/radar.js +43 -0
 - package/lib/v2/caixin/router.js +8 -0
 - package/lib/v2/caixin/templates/article.art +38 -0
 - package/lib/v2/caixin/utils.js +52 -0
 - package/lib/v2/camchina/index.js +52 -0
 - package/lib/v2/camchina/maintainer.js +3 -0
 - package/lib/v2/camchina/radar.js +13 -0
 - package/lib/v2/camchina/router.js +3 -0
 - package/lib/v2/cankaoxiaoxi/index.js +44 -57
 - package/lib/v2/cankaoxiaoxi/maintainer.js +2 -1
 - package/lib/v2/cankaoxiaoxi/radar.js +7 -52
 - package/lib/v2/cankaoxiaoxi/router.js +2 -1
 - package/lib/v2/cankaoxiaoxi/templates/description.art +5 -0
 - package/lib/v2/cartoonmad/comic.js +70 -0
 - package/lib/v2/cartoonmad/maintainer.js +3 -0
 - package/lib/v2/cartoonmad/radar.js +13 -0
 - package/lib/v2/cartoonmad/router.js +3 -0
 - package/lib/v2/cartoonmad/templates/chapter.art +1 -0
 - package/lib/v2/cas/cg/index.js +52 -0
 - package/lib/v2/cas/ia/yjs.js +25 -0
 - package/lib/v2/cas/iee/kydt.js +48 -0
 - package/lib/v2/cas/maintainer.js +7 -0
 - package/lib/v2/cas/mesalab/kb.js +41 -0
 - package/lib/v2/cas/radar.js +48 -0
 - package/lib/v2/cas/router.js +7 -0
 - package/lib/v2/cas/sim/kyjz.js +47 -0
 - package/lib/v2/cast/index.js +74 -0
 - package/lib/v2/cast/maintainer.js +3 -0
 - package/lib/v2/cast/radar.js +13 -0
 - package/lib/v2/cast/router.js +3 -0
 - package/lib/v2/cau/ele.js +42 -0
 - package/lib/v2/cau/maintainer.js +4 -0
 - package/lib/v2/cau/radar.js +21 -0
 - package/lib/v2/cau/router.js +4 -0
 - package/lib/v2/cau/yjs.js +42 -0
 - package/lib/v2/cbnweek/index.js +46 -0
 - package/lib/v2/cbnweek/maintainer.js +3 -0
 - package/lib/v2/cbnweek/radar.js +13 -0
 - package/lib/v2/ccac/news.js +12 -3
 - package/lib/v2/ccf/ccfcv/index.js +68 -0
 - package/lib/v2/ccf/maintainer.js +5 -0
 - package/lib/v2/ccf/news.js +45 -0
 - package/lib/v2/ccf/radar.js +41 -0
 - package/lib/v2/ccf/router.js +5 -0
 - package/lib/v2/ccf/templates/ccfcv/description.art +1 -0
 - package/lib/v2/ccf/tfbd/index.js +22 -0
 - package/lib/v2/ccf/tfbd/utils.js +47 -0
 - package/lib/v2/ccnu/career.js +31 -0
 - package/lib/v2/ccnu/cs.js +28 -0
 - package/lib/v2/ccnu/maintainer.js +6 -0
 - package/lib/v2/ccnu/radar.js +40 -0
 - package/lib/v2/ccnu/router.js +6 -0
 - package/lib/v2/ccnu/wu.js +27 -0
 - package/lib/v2/ccnu/yjs.js +27 -0
 - package/lib/v2/cctv/lm.js +22 -23
 - package/lib/v2/cde/index.js +2 -2
 - package/lib/v2/cde/maintainer.js +2 -0
 - package/lib/v2/cde/radar.js +34 -4
 - package/lib/v2/cde/router.js +2 -0
 - package/lib/v2/cde/templates/xxgk/breakthroughCure.art +18 -0
 - package/lib/v2/cde/templates/xxgk/cliniCal.art +16 -0
 - package/lib/v2/cde/templates/xxgk/priorityApproval.art +18 -0
 - package/lib/v2/cde/utils.js +2 -2
 - package/lib/v2/cde/xxgk.js +73 -0
 - package/lib/v2/cde/zdyz.js +77 -0
 - package/lib/v2/cdzjryb/maintainer.js +3 -0
 - package/lib/v2/cdzjryb/projectList.js +49 -0
 - package/lib/v2/cdzjryb/radar.js +13 -0
 - package/lib/v2/cdzjryb/router.js +3 -0
 - package/lib/v2/cdzjryb/templates/projectList.art +23 -0
 - package/lib/v2/cebbank/all.js +5 -2
 - package/lib/v2/cebbank/history.js +1 -0
 - package/lib/v2/cebbank/radar.js +6 -6
 - package/lib/v2/cgtn/maintainer.js +3 -0
 - package/lib/v2/cgtn/podcast.js +35 -0
 - package/lib/v2/cgtn/radar.js +13 -0
 - package/lib/v2/cgtn/router.js +3 -0
 - package/lib/v2/chaincatcher/home.js +50 -0
 - package/lib/v2/chaincatcher/maintainer.js +4 -0
 - package/lib/v2/chaincatcher/news.js +40 -0
 - package/lib/v2/chaincatcher/radar.js +19 -0
 - package/lib/v2/chaincatcher/router.js +4 -0
 - package/lib/v2/chaincatcher/templates/home.art +4 -0
 - package/lib/v2/chiculture/maintainer.js +3 -0
 - package/lib/v2/chiculture/radar.js +16 -0
 - package/lib/v2/chiculture/router.js +3 -0
 - package/lib/v2/chiculture/topic.js +61 -0
 - package/lib/v2/china/maintainer.js +4 -0
 - package/lib/v2/china/news/highlights/news.js +40 -0
 - package/lib/v2/china/news/military/news.js +31 -0
 - package/lib/v2/china/radar.js +21 -0
 - package/lib/v2/china/router.js +4 -0
 - package/lib/v2/chinacef/experts.js +1 -1
 - package/lib/v2/chinacef/hot.js +1 -1
 - package/lib/v2/chinacef/index.js +1 -1
 - package/lib/v2/chinadegrees/maintainer.js +3 -0
 - package/lib/v2/chinadegrees/province.js +66 -0
 - package/lib/v2/chinadegrees/radar.js +13 -0
 - package/lib/v2/chinadegrees/router.js +3 -0
 - package/lib/v2/chinadegrees/templates/description.art +4 -0
 - package/lib/v2/chinafactcheck/index.js +1 -1
 - package/lib/v2/chinanews/index.js +4 -3
 - package/lib/v2/chinathinktanks/maintainer.js +3 -0
 - package/lib/v2/chinathinktanks/radar.js +13 -0
 - package/lib/v2/chinathinktanks/router.js +3 -0
 - package/lib/v2/chinathinktanks/viewpoint.js +52 -0
 - package/lib/v2/chsi/hotnews.js +56 -0
 - package/lib/v2/chsi/kydt.js +51 -0
 - package/lib/v2/chsi/kyzx.js +51 -0
 - package/lib/v2/chsi/maintainer.js +5 -0
 - package/lib/v2/chsi/radar.js +25 -0
 - package/lib/v2/chsi/router.js +5 -0
 - package/lib/v2/ciidbnu/index.js +14 -15
 - package/lib/v2/civitai/discussions.js +42 -0
 - package/lib/v2/civitai/maintainer.js +4 -0
 - package/lib/v2/civitai/models.js +26 -0
 - package/lib/v2/civitai/radar.js +19 -0
 - package/lib/v2/civitai/router.js +4 -0
 - package/lib/v2/clash/maintainer.js +3 -0
 - package/lib/v2/clash/premium.js +23 -0
 - package/lib/v2/clash/radar.js +13 -0
 - package/lib/v2/clash/router.js +3 -0
 - package/lib/v2/clickme/index.js +56 -0
 - package/lib/v2/clickme/maintainer.js +3 -0
 - package/lib/v2/clickme/radar.js +21 -0
 - package/lib/v2/clickme/router.js +3 -0
 - package/lib/v2/cloudnative/blog.js +34 -0
 - package/lib/v2/cloudnative/maintainer.js +3 -0
 - package/lib/v2/cloudnative/radar.js +13 -0
 - package/lib/v2/cloudnative/router.js +3 -0
 - package/lib/v2/cls/depth.js +82 -0
 - package/lib/v2/cls/hot.js +45 -0
 - package/lib/v2/cls/maintainer.js +5 -0
 - package/lib/v2/cls/radar.js +25 -0
 - package/lib/v2/cls/router.js +5 -0
 - package/lib/v2/cls/telegraph.js +52 -0
 - package/lib/v2/cls/templates/depth.art +10 -0
 - package/lib/v2/cls/templates/telegraph.art +10 -0
 - package/lib/v2/cls/utils.js +15 -0
 - package/lib/v2/cmde/index.js +72 -0
 - package/lib/v2/cmde/maintainer.js +3 -0
 - package/lib/v2/cmde/radar.js +13 -0
 - package/lib/v2/cmde/router.js +3 -0
 - package/lib/v2/cn-healthcare/index.js +31 -0
 - package/lib/v2/cn-healthcare/maintainer.js +3 -0
 - package/lib/v2/cn-healthcare/radar.js +13 -0
 - package/lib/v2/cn-healthcare/router.js +3 -0
 - package/lib/v2/cnbc/maintainer.js +3 -0
 - package/lib/v2/cnbc/radar.js +21 -0
 - package/lib/v2/cnbc/router.js +3 -0
 - package/lib/v2/cnbc/rss.js +54 -0
 - package/lib/v2/cnbeta/radar.js +6 -6
 - package/lib/v2/cnbeta/router.js +1 -1
 - package/lib/v2/cnbeta/type.js +6 -12
 - package/lib/v2/cnbeta/utils.js +5 -8
 - package/lib/v2/cnblogs/common.js +30 -0
 - package/lib/v2/cnblogs/maintainer.js +7 -0
 - package/lib/v2/cnblogs/radar.js +37 -0
 - package/lib/v2/cnblogs/router.js +7 -0
 - package/lib/v2/cncf/index.js +43 -0
 - package/lib/v2/cncf/maintainer.js +3 -0
 - package/lib/v2/cncf/radar.js +31 -0
 - package/lib/v2/cncf/reports.js +38 -0
 - package/lib/v2/cncf/router.js +4 -0
 - package/lib/v2/cngal/entry.js +25 -0
 - package/lib/v2/cngal/maintainer.js +4 -0
 - package/lib/v2/cngal/radar.js +19 -0
 - package/lib/v2/cngal/router.js +4 -0
 - package/lib/v2/cngal/templates/entry-description.art +4 -0
 - package/lib/v2/cngal/templates/weekly-description.art +4 -0
 - package/lib/v2/cngal/weekly.js +20 -0
 - package/lib/v2/cnjxol/index.js +97 -0
 - package/lib/v2/cnjxol/maintainer.js +4 -0
 - package/lib/v2/cnjxol/radar.js +19 -0
 - package/lib/v2/cnjxol/router.js +3 -0
 - package/lib/v2/cnjxol/templates/description.art +2 -0
 - package/lib/v2/cnki/author.js +45 -0
 - package/lib/v2/cnki/journals.js +2 -23
 - package/lib/v2/cnki/maintainer.js +1 -0
 - package/lib/v2/cnki/radar.js +8 -0
 - package/lib/v2/cnki/router.js +1 -0
 - package/lib/v2/cnki/utils.js +26 -0
 - package/lib/v2/cntheory/maintainer.js +3 -0
 - package/lib/v2/cntheory/paper.js +89 -0
 - package/lib/v2/cntheory/radar.js +13 -0
 - package/lib/v2/cntheory/router.js +3 -0
 - package/lib/v2/cntheory/templates/description.art +2 -0
 - package/lib/v2/codeforces/contests.js +13 -5
 - package/lib/v2/codeforces/maintainer.js +1 -0
 - package/lib/v2/codeforces/radar.js +8 -0
 - package/lib/v2/codeforces/recent_actions.js +47 -0
 - package/lib/v2/codeforces/router.js +1 -0
 - package/lib/v2/codeforces/templates/contest.art +5 -11
 - package/lib/v2/coindesk/index.js +34 -0
 - package/lib/v2/coindesk/maintainer.js +3 -0
 - package/lib/v2/coindesk/radar.js +13 -0
 - package/lib/v2/coindesk/router.js +3 -0
 - package/lib/v2/comicskingdom/index.js +60 -0
 - package/lib/v2/comicskingdom/maintainer.js +3 -0
 - package/lib/v2/comicskingdom/radar.js +13 -0
 - package/lib/v2/comicskingdom/router.js +3 -0
 - package/lib/v2/comicskingdom/templates/desc.art +1 -0
 - package/lib/v2/coolapk/dyh.js +37 -0
 - package/lib/v2/coolapk/hot.js +97 -0
 - package/lib/v2/coolapk/huati.js +24 -0
 - package/lib/v2/coolapk/maintainer.js +9 -0
 - package/lib/v2/coolapk/radar.js +31 -0
 - package/lib/v2/coolapk/router.js +9 -0
 - package/lib/v2/coolapk/toutiao.js +29 -0
 - package/lib/v2/coolapk/tuwen.js +31 -0
 - package/lib/v2/coolapk/userDynamic.js +35 -0
 - package/lib/v2/coolapk/utils.js +150 -0
 - package/lib/v2/copymanga/comic.js +110 -0
 - package/lib/v2/copymanga/maintainer.js +3 -0
 - package/lib/v2/copymanga/radar.js +19 -0
 - package/lib/v2/copymanga/router.js +3 -0
 - package/lib/v2/copymanga/templates/comic.art +4 -0
 - package/lib/v2/cpuid/maintainer.js +3 -0
 - package/lib/v2/cpuid/news.js +30 -0
 - package/lib/v2/cpuid/radar.js +13 -0
 - package/lib/v2/cpuid/router.js +3 -0
 - package/lib/v2/cqwu/index.js +1 -1
 - package/lib/v2/crac/index.js +46 -0
 - package/lib/v2/crac/maintainer.js +3 -0
 - package/lib/v2/crac/radar.js +13 -0
 - package/lib/v2/crac/router.js +3 -0
 - package/lib/v2/creative-comic/book.js +60 -0
 - package/lib/v2/creative-comic/maintainer.js +3 -0
 - package/lib/v2/creative-comic/radar.js +13 -0
 - package/lib/v2/creative-comic/router.js +3 -0
 - package/lib/v2/creative-comic/templates/chapter.art +11 -0
 - package/lib/v2/creative-comic/utils.js +96 -0
 - package/lib/v2/crossbell/feeds/following.js +29 -0
 - package/lib/v2/crossbell/maintainer.js +6 -0
 - package/lib/v2/crossbell/notes/character.js +22 -0
 - package/lib/v2/crossbell/notes/index.js +16 -0
 - package/lib/v2/crossbell/notes/source.js +19 -0
 - package/lib/v2/crossbell/notes/utils.js +18 -0
 - package/lib/v2/crossbell/radar.js +24 -0
 - package/lib/v2/crossbell/router.js +6 -0
 - package/lib/v2/cscse/maintainer.js +3 -0
 - package/lib/v2/cscse/radar.js +13 -0
 - package/lib/v2/cscse/router.js +3 -0
 - package/lib/v2/cscse/tzgg.js +54 -0
 - package/lib/v2/csdn/blog.js +39 -0
 - package/lib/v2/csdn/maintainer.js +3 -0
 - package/lib/v2/csdn/radar.js +13 -0
 - package/lib/v2/csdn/router.js +3 -0
 - package/lib/v2/cste/index.js +56 -0
 - package/lib/v2/cste/maintainer.js +3 -0
 - package/lib/v2/cste/radar.js +13 -0
 - package/lib/v2/cste/router.js +3 -0
 - package/lib/v2/csu/career.js +51 -0
 - package/lib/v2/csu/cse.js +10 -2
 - package/lib/v2/csu/mail.js +47 -0
 - package/lib/v2/csu/maintainer.js +2 -0
 - package/lib/v2/csu/radar.js +16 -0
 - package/lib/v2/csu/router.js +2 -1
 - package/lib/v2/csu/utils.js +17 -0
 - package/lib/v2/cts/maintainer.js +3 -0
 - package/lib/v2/cts/news.js +40 -0
 - package/lib/v2/cts/radar.js +13 -0
 - package/lib/v2/cts/router.js +3 -0
 - package/lib/v2/cuc/maintainer.js +3 -0
 - package/lib/v2/cuc/radar.js +13 -0
 - package/lib/v2/cuc/router.js +3 -0
 - package/lib/v2/cuc/yz.js +33 -0
 - package/lib/v2/curius/links.js +43 -0
 - package/lib/v2/curius/maintainer.js +3 -0
 - package/lib/v2/curius/radar.js +13 -0
 - package/lib/v2/curius/router.js +3 -0
 - package/lib/v2/curius/templates/description.art +16 -0
 - package/lib/v2/cw/author.js +18 -0
 - package/lib/v2/cw/maintainer.js +6 -0
 - package/lib/v2/cw/master.js +18 -0
 - package/lib/v2/cw/radar.js +31 -0
 - package/lib/v2/cw/router.js +6 -0
 - package/lib/v2/cw/sub.js +18 -0
 - package/lib/v2/cw/today.js +18 -0
 - package/lib/v2/cw/utils.js +133 -0
 - package/lib/v2/cztv/daily.js +41 -0
 - package/lib/v2/cztv/maintainer.js +4 -0
 - package/lib/v2/cztv/radar.js +19 -0
 - package/lib/v2/cztv/router.js +4 -0
 - package/lib/v2/cztv/templates/daily.art +4 -0
 - package/lib/v2/cztv/templates/zjxwlb.art +3 -0
 - package/lib/v2/cztv/zjxwlb.js +38 -0
 - package/lib/v2/dahecube/radar.js +3 -2
 - package/lib/v2/darwinawards/index.js +56 -0
 - package/lib/v2/darwinawards/maintainer.js +4 -0
 - package/lib/v2/darwinawards/radar.js +13 -0
 - package/lib/v2/darwinawards/router.js +4 -0
 - package/lib/v2/dcard/maintainer.js +4 -0
 - package/lib/v2/dcard/radar.js +31 -0
 - package/lib/v2/dcard/router.js +3 -0
 - package/lib/v2/dcard/section.js +66 -0
 - package/lib/v2/dcard/utils.js +50 -0
 - package/lib/v2/dcfever/maintainer.js +6 -0
 - package/lib/v2/dcfever/news.js +36 -0
 - package/lib/v2/dcfever/radar.js +37 -0
 - package/lib/v2/dcfever/reviews.js +29 -0
 - package/lib/v2/dcfever/router.js +6 -0
 - package/lib/v2/dcfever/templates/trading.art +14 -0
 - package/lib/v2/dcfever/trading-search.js +39 -0
 - package/lib/v2/dcfever/trading.js +39 -0
 - package/lib/v2/dcfever/utils.js +78 -0
 - package/lib/v2/ddosi/radar.js +2 -2
 - package/lib/v2/dedao/index.js +46 -0
 - package/lib/v2/dedao/knowledge.js +64 -0
 - package/lib/v2/dedao/list.js +66 -0
 - package/lib/v2/dedao/maintainer.js +8 -0
 - package/lib/v2/dedao/radar.js +50 -0
 - package/lib/v2/dedao/router.js +6 -0
 - package/lib/v2/dedao/templates/knowledge.art +29 -0
 - package/lib/v2/dedao/templates/user.art +38 -0
 - package/lib/v2/dedao/user.js +79 -0
 - package/lib/v2/deepmind/blog.js +32 -0
 - package/lib/v2/deepmind/maintainer.js +3 -0
 - package/lib/v2/deepmind/radar.js +13 -0
 - package/lib/v2/deepmind/router.js +3 -0
 - package/lib/v2/dgjyw/index.js +67 -0
 - package/lib/v2/dgjyw/maintainer.js +3 -0
 - package/lib/v2/dgjyw/radar.js +13 -0
 - package/lib/v2/dgjyw/router.js +3 -0
 - package/lib/v2/diandong/ddh.js +51 -0
 - package/lib/v2/diandong/maintainer.js +4 -0
 - package/lib/v2/diandong/news.js +50 -0
 - package/lib/v2/diandong/radar.js +19 -0
 - package/lib/v2/diandong/router.js +4 -0
 - package/lib/v2/diershoubing/maintainer.js +3 -0
 - package/lib/v2/diershoubing/news.js +50 -0
 - package/lib/v2/diershoubing/radar.js +13 -0
 - package/lib/v2/diershoubing/router.js +3 -0
 - package/lib/v2/diershoubing/templates/news.art +9 -0
 - package/lib/v2/discord/channel.js +38 -0
 - package/lib/v2/discord/discord-api.js +61 -0
 - package/lib/v2/discord/maintainer.js +3 -0
 - package/lib/v2/discord/radar.js +13 -0
 - package/lib/v2/discord/router.js +3 -0
 - package/lib/v2/discord/templates/message.art +47 -0
 - package/lib/v2/disinformationindex/blog.js +12 -13
 - package/lib/v2/disinformationindex/maintainer.js +1 -1
 - package/lib/v2/disinformationindex/radar.js +1 -1
 - package/lib/v2/diskanalyzer/maintainer.js +3 -0
 - package/lib/v2/diskanalyzer/radar.js +13 -0
 - package/lib/v2/diskanalyzer/router.js +3 -0
 - package/lib/v2/diskanalyzer/whats-new.js +49 -0
 - package/lib/v2/dlsite/campaign.js +174 -0
 - package/lib/v2/dlsite/ci-en/article.js +64 -0
 - package/lib/v2/dlsite/index.js +5 -0
 - package/lib/v2/dlsite/maintainer.js +6 -0
 - package/lib/v2/dlsite/new.js +108 -0
 - package/lib/v2/dlsite/radar.js +29 -0
 - package/lib/v2/dlsite/router.js +6 -0
 - package/lib/v2/dlsite/templates/description.art +158 -0
 - package/lib/v2/dlsite/utils.js +176 -0
 - package/lib/v2/dmzj/maintainer.js +3 -0
 - package/lib/v2/dmzj/news.js +26 -0
 - package/lib/v2/dmzj/radar.js +67 -0
 - package/lib/v2/dmzj/router.js +3 -0
 - package/lib/v2/docschina/jsweekly.js +114 -0
 - package/lib/v2/docschina/maintainer.js +3 -0
 - package/lib/v2/docschina/radar.js +13 -0
 - package/lib/v2/docschina/router.js +3 -0
 - package/lib/v2/domp4/detail.js +69 -0
 - package/lib/v2/domp4/latest.js +32 -0
 - package/lib/v2/domp4/maintainer.js +4 -0
 - package/lib/v2/domp4/radar.js +25 -0
 - package/lib/v2/domp4/router.js +4 -0
 - package/lib/v2/domp4/utils.js +89 -0
 - package/lib/v2/dongqiudi/player_news.js +2 -3
 - package/lib/v2/dongqiudi/result.js +1 -1
 - package/lib/v2/dongqiudi/router.js +1 -1
 - package/lib/v2/dongqiudi/special.js +21 -27
 - package/lib/v2/dongqiudi/team_news.js +2 -3
 - package/lib/v2/dongqiudi/top_news.js +18 -24
 - package/lib/v2/dongqiudi/utils.js +33 -41
 - package/lib/v2/douban/maintainer.js +1 -0
 - package/lib/v2/douban/other/list.js +40 -0
 - package/lib/v2/douban/other/weekly_best.js +14 -5
 - package/lib/v2/douban/people/wish.js +3 -24
 - package/lib/v2/douban/radar.js +6 -0
 - package/lib/v2/douban/router.js +1 -0
 - package/lib/v2/douban/templates/list_description.art +25 -0
 - package/lib/v2/douban/templates/weekly_best.art +10 -0
 - package/lib/v2/douyin/hashtag.js +94 -0
 - package/lib/v2/douyin/live.js +49 -0
 - package/lib/v2/douyin/maintainer.js +2 -0
 - package/lib/v2/douyin/radar.js +14 -0
 - package/lib/v2/douyin/router.js +2 -0
 - package/lib/v2/douyin/user.js +5 -53
 - package/lib/v2/douyin/utils.js +135 -0
 - package/lib/v2/douyu/group.js +45 -0
 - package/lib/v2/douyu/maintainer.js +5 -0
 - package/lib/v2/douyu/post.js +58 -0
 - package/lib/v2/douyu/radar.js +27 -0
 - package/lib/v2/douyu/router.js +5 -0
 - package/lib/v2/douyu/templates/description.art +14 -0
 - package/lib/v2/dtcj/datainsight.js +13 -14
 - package/lib/v2/dut/index.js +4 -0
 - package/lib/v2/eagle/blog.js +6 -2
 - package/lib/v2/earthquake/ceic.js +68 -0
 - package/lib/v2/earthquake/index.js +40 -0
 - package/lib/v2/earthquake/maintainer.js +4 -0
 - package/lib/v2/earthquake/radar.js +24 -0
 - package/lib/v2/earthquake/router.js +4 -0
 - package/lib/v2/eastday/24.js +14 -15
 - package/lib/v2/eastmoney/maintainer.js +4 -0
 - package/lib/v2/eastmoney/radar.js +8 -0
 - package/lib/v2/eastmoney/router.js +1 -0
 - package/lib/v2/eastmoney/search/index.js +55 -0
 - package/lib/v2/ecnu/contest.js +41 -0
 - package/lib/v2/ecnu/maintainer.js +4 -0
 - package/lib/v2/ecnu/radar.js +30 -0
 - package/lib/v2/ecnu/router.js +4 -0
 - package/lib/v2/ecnu/yjs.js +37 -0
 - package/lib/v2/economist/espresso.js +80 -0
 - package/lib/v2/economist/full.js +44 -0
 - package/lib/v2/economist/global-business-review.js +86 -0
 - package/lib/v2/economist/gre-vocabulary.js +19 -0
 - package/lib/v2/economist/maintainer.js +7 -0
 - package/lib/v2/economist/radar.js +38 -0
 - package/lib/v2/economist/router.js +7 -0
 - package/lib/v2/ecust/e/news.js +44 -0
 - package/lib/v2/ecust/gschool/yjs.js +27 -0
 - package/lib/v2/ecust/maintainer.js +4 -0
 - package/lib/v2/ecust/radar.js +21 -0
 - package/lib/v2/ecust/router.js +4 -0
 - package/lib/v2/ehentai/ehapi.js +64 -15
 - package/lib/v2/ehentai/favorites.js +2 -2
 - package/lib/v2/ehentai/maintainer.js +3 -3
 - package/lib/v2/ehentai/search.js +2 -2
 - package/lib/v2/ehentai/tag.js +1 -1
 - package/lib/v2/elasticsearch-cn/index.js +57 -0
 - package/lib/v2/elasticsearch-cn/maintainer.js +3 -0
 - package/lib/v2/elasticsearch-cn/radar.js +13 -0
 - package/lib/v2/elasticsearch-cn/router.js +3 -0
 - package/lib/v2/eleduck/jobs.js +38 -0
 - package/lib/v2/eleduck/maintainer.js +4 -0
 - package/lib/v2/eleduck/posts.js +41 -0
 - package/lib/v2/eleduck/radar.js +25 -0
 - package/lib/v2/eleduck/router.js +4 -0
 - package/lib/v2/elsevier/issue.js +62 -0
 - package/lib/v2/elsevier/journal.js +72 -0
 - package/lib/v2/elsevier/maintainer.js +2 -2
 - package/lib/v2/elsevier/radar.js +5 -5
 - package/lib/v2/elsevier/router.js +4 -2
 - package/lib/v2/elsevier/templates/description.art +5 -5
 - package/lib/v2/embassy/index.js +60 -0
 - package/lib/v2/embassy/maintainer.js +3 -0
 - package/lib/v2/embassy/radar.js +258 -0
 - package/lib/v2/embassy/router.js +3 -0
 - package/lib/v2/embassy/supportedList.js +257 -0
 - package/lib/v2/epicgames/index.js +66 -68
 - package/lib/v2/epicgames/maintainer.js +1 -1
 - package/lib/v2/epicgames/radar.js +13 -0
 - package/lib/v2/epicgames/router.js +1 -1
 - package/lib/v2/epicgames/templates/description.art +2 -0
 - package/lib/v2/eprice/rss.js +8 -16
 - package/lib/v2/eprice/templates/image.art +4 -1
 - package/lib/v2/ezone/index.js +5 -3
 - package/lib/v2/famitsu/category.js +62 -0
 - package/lib/v2/famitsu/maintainer.js +3 -0
 - package/lib/v2/famitsu/radar.js +13 -0
 - package/lib/v2/famitsu/router.js +3 -0
 - package/lib/v2/fantia/maintainer.js +4 -0
 - package/lib/v2/fantia/radar.js +13 -0
 - package/lib/v2/fantia/router.js +4 -0
 - package/lib/v2/fantia/search.js +71 -0
 - package/lib/v2/fantia/user.js +44 -0
 - package/lib/v2/fastbull/express-news.js +33 -0
 - package/lib/v2/fastbull/maintainer.js +5 -0
 - package/lib/v2/fastbull/news.js +57 -0
 - package/lib/v2/fastbull/radar.js +19 -0
 - package/lib/v2/fastbull/router.js +5 -0
 - package/lib/v2/fastbull/templates/description.art +7 -0
 - package/lib/v2/fda/cdrh.js +62 -0
 - package/lib/v2/fda/maintainer.js +3 -0
 - package/lib/v2/fda/radar.js +13 -0
 - package/lib/v2/fda/router.js +3 -0
 - package/lib/v2/feng/forum.js +42 -0
 - package/lib/v2/feng/maintainer.js +3 -0
 - package/lib/v2/feng/radar.js +13 -0
 - package/lib/v2/feng/router.js +3 -0
 - package/lib/v2/feng/templates/deleted.art +2 -0
 - package/lib/v2/feng/templates/img.art +6 -0
 - package/lib/v2/feng/utils.js +80 -0
 - package/lib/v2/ff14/ff14_global.js +5 -0
 - package/lib/v2/ff14/radar.js +30 -0
 - package/lib/v2/fffdm/maintainer.js +3 -0
 - package/lib/v2/fffdm/manhua/manhua.js +55 -0
 - package/lib/v2/fffdm/radar.js +14 -0
 - package/lib/v2/fffdm/router.js +3 -0
 - package/lib/v2/fffdm/templates/manhua.art +5 -0
 - package/lib/v2/finviz/maintainer.js +4 -0
 - package/lib/v2/finviz/news.js +45 -0
 - package/lib/v2/finviz/quote.js +40 -0
 - package/lib/v2/finviz/radar.js +19 -0
 - package/lib/v2/finviz/router.js +4 -0
 - package/lib/v2/fishshell/index.js +27 -0
 - package/lib/v2/fishshell/maintainer.js +3 -0
 - package/lib/v2/fishshell/radar.js +13 -0
 - package/lib/v2/fishshell/router.js +3 -0
 - package/lib/v2/fjksbm/index.js +53 -0
 - package/lib/v2/fjksbm/maintainer.js +3 -0
 - package/lib/v2/fjksbm/radar.js +13 -0
 - package/lib/v2/fjksbm/router.js +3 -0
 - package/lib/v2/flyert/utils.js +3 -3
 - package/lib/v2/foresightnews/index.js +8 -11
 - package/lib/v2/foreverblog/feeds.js +36 -0
 - package/lib/v2/foreverblog/maintainer.js +3 -0
 - package/lib/v2/foreverblog/radar.js +13 -0
 - package/lib/v2/foreverblog/router.js +3 -0
 - package/lib/v2/fortnite/maintainer.js +3 -0
 - package/lib/v2/fortnite/news.js +58 -0
 - package/lib/v2/fortnite/radar.js +16 -0
 - package/lib/v2/fortnite/router.js +3 -0
 - package/lib/v2/fosshub/index.js +49 -0
 - package/lib/v2/fosshub/maintainer.js +3 -0
 - package/lib/v2/fosshub/radar.js +13 -0
 - package/lib/v2/fosshub/router.js +3 -0
 - package/lib/v2/fosshub/templates/description.art +20 -0
 - package/lib/v2/freecomputerbooks/index.js +66 -0
 - package/lib/v2/freecomputerbooks/maintainer.js +4 -0
 - package/lib/v2/freecomputerbooks/radar.js +31 -0
 - package/lib/v2/freecomputerbooks/router.js +3 -0
 - package/lib/v2/freewechat/maintainer.js +3 -0
 - package/lib/v2/freewechat/profile.js +61 -0
 - package/lib/v2/freewechat/radar.js +13 -0
 - package/lib/v2/freewechat/router.js +3 -0
 - package/lib/v2/ft/maintainer.js +2 -2
 - package/lib/v2/ft/utils.js +10 -7
 - package/lib/v2/furstar/templates/description.art +1 -1
 - package/lib/v2/fx-markets/channel.js +56 -0
 - package/lib/v2/fx-markets/maintainer.js +3 -0
 - package/lib/v2/fx-markets/radar.js +31 -0
 - package/lib/v2/fx-markets/router.js +3 -0
 - package/lib/v2/gameapps/index.js +32 -13
 - package/lib/v2/gamebase/maintainer.js +3 -0
 - package/lib/v2/gamebase/news.js +74 -0
 - package/lib/v2/gamebase/radar.js +13 -0
 - package/lib/v2/gamebase/router.js +3 -0
 - package/lib/v2/gamme/category.js +50 -0
 - package/lib/v2/gamme/maintainer.js +6 -0
 - package/lib/v2/gamme/radar.js +33 -0
 - package/lib/v2/gamme/router.js +4 -0
 - package/lib/v2/gamme/tag.js +61 -0
 - package/lib/v2/gcores/category.js +21 -7
 - package/lib/v2/gcores/maintainer.js +1 -0
 - package/lib/v2/gcores/radar.js +12 -0
 - package/lib/v2/gcores/radio.js +90 -0
 - package/lib/v2/gcores/router.js +1 -0
 - package/lib/v2/gcores/tag.js +5 -1
 - package/lib/v2/gcores/templates/content.art +16 -0
 - package/lib/v2/gdut/maintainer.js +3 -0
 - package/lib/v2/gdut/news.js +166 -0
 - package/lib/v2/gdut/oa_news.js +214 -0
 - package/lib/v2/gdut/radar.js +13 -0
 - package/lib/v2/gdut/router.js +3 -0
 - package/lib/v2/gelonghui/home.js +31 -0
 - package/lib/v2/gelonghui/hot-article.js +33 -0
 - package/lib/v2/gelonghui/keyword.js +34 -0
 - package/lib/v2/gelonghui/live.js +31 -0
 - package/lib/v2/gelonghui/maintainer.js +6 -0
 - package/lib/v2/gelonghui/radar.js +43 -0
 - package/lib/v2/gelonghui/router.js +8 -0
 - package/lib/v2/gelonghui/subject.js +36 -0
 - package/lib/v2/gelonghui/templates/live.art +7 -0
 - package/lib/v2/gelonghui/user.js +33 -0
 - package/lib/v2/gelonghui/utils.js +27 -0
 - package/lib/v2/geocaching/blogs.js +30 -0
 - package/lib/v2/geocaching/maintainer.js +3 -0
 - package/lib/v2/geocaching/radar.js +13 -0
 - package/lib/v2/geocaching/router.js +3 -0
 - package/lib/v2/geocaching/templates/blogs.art +6 -0
 - package/lib/v2/getitfree/index.js +54 -0
 - package/lib/v2/getitfree/maintainer.js +3 -0
 - package/lib/v2/getitfree/radar.js +13 -0
 - package/lib/v2/getitfree/router.js +3 -0
 - package/lib/v2/gettr/maintainer.js +3 -0
 - package/lib/v2/gettr/radar.js +13 -0
 - package/lib/v2/gettr/router.js +3 -0
 - package/lib/v2/gettr/templates/post.art +13 -0
 - package/lib/v2/gettr/user.js +56 -0
 - package/lib/v2/gf-cn/news.js +1 -1
 - package/lib/v2/gihyo/group.js +48 -0
 - package/lib/v2/gihyo/maintainer.js +3 -0
 - package/lib/v2/gihyo/radar.js +13 -0
 - package/lib/v2/gihyo/router.js +3 -0
 - package/lib/v2/gitee/maintainer.js +6 -0
 - package/lib/v2/gitee/radar.js +31 -0
 - package/lib/v2/gitee/repos/commits.js +40 -0
 - package/lib/v2/gitee/repos/events.js +66 -0
 - package/lib/v2/gitee/repos/releases.js +33 -0
 - package/lib/v2/gitee/router.js +6 -0
 - package/lib/v2/gitee/users/events.js +84 -0
 - package/lib/v2/github/comments.js +17 -19
 - package/lib/v2/github/maintainer.js +4 -2
 - package/lib/v2/github/notifications.js +47 -0
 - package/lib/v2/github/pulls.js +7 -8
 - package/lib/v2/github/radar.js +41 -29
 - package/lib/v2/github/router.js +3 -1
 - package/lib/v2/github/templates/trending-description.art +5 -0
 - package/lib/v2/github/topic.js +1 -1
 - package/lib/v2/github/trending.js +70 -24
 - package/lib/v2/github/wiki.js +32 -0
 - package/lib/v2/gocn/jobs.js +23 -0
 - package/lib/v2/gocn/maintainer.js +2 -1
 - package/lib/v2/gocn/radar.js +6 -0
 - package/lib/v2/gocn/router.js +1 -0
 - package/lib/v2/gocn/topics.js +7 -12
 - package/lib/v2/gocn/util.js +17 -0
 - package/lib/v2/good/index.js +53 -0
 - package/lib/v2/good/maintainer.js +3 -0
 - package/lib/v2/good/radar.js +13 -0
 - package/lib/v2/good/router.js +3 -0
 - package/lib/v2/google/maintainer.js +1 -0
 - package/lib/v2/google/news.js +48 -66
 - package/lib/v2/google/router.js +1 -0
 - package/lib/v2/google/sitesRecentChanges.js +12 -13
 - package/lib/v2/google/templates/news.art +5 -0
 - package/lib/v2/gov/beijing/bphc/index.js +54 -0
 - package/lib/v2/gov/beijing/jw/tzgg.js +58 -0
 - package/lib/v2/gov/ccdi/index.js +18 -0
 - package/lib/v2/gov/ccdi/utils.js +94 -0
 - package/lib/v2/gov/cmse/fxrw.js +40 -0
 - package/lib/v2/gov/cmse/index.js +67 -0
 - package/lib/v2/gov/cmse/templates/description.art +11 -0
 - package/lib/v2/gov/cnnic/index.js +54 -0
 - package/lib/v2/gov/csrc/auditstatus.js +54 -0
 - package/lib/v2/gov/csrc/news.js +69 -0
 - package/lib/v2/gov/csrc/templates/attachment.art +3 -0
 - package/lib/v2/gov/customs/list.js +80 -0
 - package/lib/v2/gov/customs/utils.js +21 -0
 - package/lib/v2/gov/dianbai/dianbai.js +18 -0
 - package/lib/v2/gov/gaozhou/gaozhou.js +19 -0
 - package/lib/v2/gov/general/general.js +250 -0
 - package/lib/v2/gov/general/templates/zcjdpt.art +128 -0
 - package/lib/v2/gov/gz/index.js +38 -0
 - package/lib/v2/gov/hebei/czt.js +53 -0
 - package/lib/v2/gov/huazhou/huazhou.js +19 -0
 - package/lib/v2/gov/hunan/changsha/major-email.js +52 -0
 - package/lib/v2/gov/immiau/news.js +43 -0
 - package/lib/v2/gov/jinan/healthcommission/medical_exam_notice.js +49 -0
 - package/lib/v2/gov/maintainer.js +61 -7
 - package/lib/v2/gov/maoming/maoming.js +417 -0
 - package/lib/v2/gov/maonan/maonan.js +100 -0
 - package/lib/v2/gov/mgs/mgs.js +19 -0
 - package/lib/v2/gov/miit/wjgs.js +50 -41
 - package/lib/v2/gov/miit/zcjd.js +50 -41
 - package/lib/v2/gov/mmht/mmht.js +19 -0
 - package/lib/v2/gov/moe/moe.js +35 -23
 - package/lib/v2/gov/moe/s78.js +44 -0
 - package/lib/v2/gov/mofcom/article.js +68 -0
 - package/lib/v2/gov/moj/aac/news.js +49 -0
 - package/lib/v2/gov/news/index.js +114 -0
 - package/lib/v2/gov/nifdc/index.js +86 -0
 - package/lib/v2/gov/nmpa/generic.js +83 -0
 - package/lib/v2/gov/nopss/index.js +57 -0
 - package/lib/v2/gov/nrta/news.js +0 -1
 - package/lib/v2/gov/nsfc/index.js +83 -0
 - package/lib/v2/gov/pbc/goutongjiaoliu.js +20 -15
 - package/lib/v2/gov/pbc/tradeAnnouncement.js +18 -14
 - package/lib/v2/gov/pbc/utils.js +2 -2
 - package/lib/v2/gov/radar.js +626 -29
 - package/lib/v2/gov/router.js +50 -6
 - package/lib/v2/gov/sasac/generic.js +42 -0
 - package/lib/v2/gov/sdb/sdb.js +19 -0
 - package/lib/v2/gov/shaanxi/kjt.js +55 -0
 - package/lib/v2/gov/shanghai/yjj/index.js +62 -0
 - package/lib/v2/gov/shenzhen/xxgk/zfxxgj.js +72 -0
 - package/lib/v2/gov/sichuan/deyang/govpublicinfo.js +92 -0
 - package/lib/v2/gov/sichuan/deyang/mztoday.js +134 -0
 - package/lib/v2/gov/sichuan/deyang/templates/govPublicInfo.art +42 -37
 - package/lib/v2/gov/sichuan/deyang/templates/mztoday.art +6 -0
 - package/lib/v2/gov/stats/index.js +112 -0
 - package/lib/v2/gov/stats/templates/description.art +12 -0
 - package/lib/v2/gov/taiyuan/rsj.js +41 -0
 - package/lib/v2/gov/wuhan/whyw.js +44 -0
 - package/lib/v2/gov/xinyi/xinyi.js +19 -0
 - package/lib/v2/gov/xuzhou/hrss.js +54 -0
 - package/lib/v2/gov/zhengce/govall.js +55 -0
 - package/lib/v2/gov/zhengce/wenjian.js +47 -0
 - package/lib/v2/gov/zhengce/zhengceku.js +22 -0
 - package/lib/v2/gov/zhengce/zuixin.js +39 -0
 - package/lib/v2/gq/maintainer.js +3 -0
 - package/lib/v2/gq/radar.js +13 -0
 - package/lib/v2/gq/router.js +3 -0
 - package/lib/v2/gq/templates/embed-article.art +1 -0
 - package/lib/v2/gq/templates/embed-product.art +4 -0
 - package/lib/v2/gq/templates/img.art +6 -0
 - package/lib/v2/gq/templates/tw.art +3 -0
 - package/lib/v2/gq/templates/videoObject.art +6 -0
 - package/lib/v2/gq/templates/youtube.art +3 -0
 - package/lib/v2/gq/tw/index.js +165 -0
 - package/lib/v2/greasyfork/feedback.js +31 -0
 - package/lib/v2/greasyfork/maintainer.js +5 -0
 - package/lib/v2/greasyfork/radar.js +25 -0
 - package/lib/v2/greasyfork/router.js +5 -0
 - package/lib/v2/greasyfork/scripts.js +39 -0
 - package/lib/v2/greasyfork/versions.js +29 -0
 - package/lib/v2/guandian/index.js +37 -0
 - package/lib/v2/guandian/maintainer.js +3 -0
 - package/lib/v2/guandian/radar.js +13 -0
 - package/lib/v2/guandian/router.js +3 -0
 - package/lib/v2/guanhai/index.js +47 -0
 - package/lib/v2/guanhai/maintainer.js +4 -0
 - package/lib/v2/guanhai/radar.js +13 -0
 - package/lib/v2/guanhai/router.js +3 -0
 - package/lib/v2/gumroad/index.js +39 -0
 - package/lib/v2/gumroad/maintainer.js +3 -0
 - package/lib/v2/gumroad/radar.js +17 -0
 - package/lib/v2/gumroad/router.js +3 -0
 - package/lib/v2/gumroad/templates/products.art +7 -0
 - package/lib/v2/gxmzu/ai.js +18 -0
 - package/lib/v2/gxmzu/maintainer.js +4 -0
 - package/lib/v2/gxmzu/radar.js +21 -0
 - package/lib/v2/gxmzu/router.js +4 -0
 - package/lib/v2/gxmzu/utils/index.js +55 -0
 - package/lib/v2/gxmzu/yjs.js +18 -0
 - package/lib/v2/gz-cmc/index.js +137 -0
 - package/lib/v2/gz-cmc/maintainer.js +3 -0
 - package/lib/v2/gz-cmc/radar.js +12 -0
 - package/lib/v2/gz-cmc/router.js +3 -0
 - package/lib/v2/gz-cmc/templates/description.art +3 -0
 - package/lib/v2/gzdaily/app.js +53 -0
 - package/lib/v2/gzdaily/maintainer.js +3 -0
 - package/lib/v2/gzdaily/radar.js +12 -0
 - package/lib/v2/gzdaily/router.js +3 -0
 - package/lib/v2/gzdaily/templates/description.art +3 -0
 - package/lib/v2/gzh360/universal.js +3 -3
 - package/lib/v2/gzh360/utils.js +2 -2
 - package/lib/v2/gzhu/maintainer.js +3 -0
 - package/lib/v2/gzhu/radar.js +13 -0
 - package/lib/v2/gzhu/router.js +3 -0
 - package/lib/v2/gzhu/yjs.js +31 -0
 - package/lib/v2/hackernews/index.js +16 -7
 - package/lib/v2/hackertalk/index.js +23 -0
 - package/lib/v2/hackertalk/maintainer.js +3 -0
 - package/lib/v2/hackertalk/radar.js +13 -0
 - package/lib/v2/hackertalk/router.js +3 -0
 - package/lib/v2/hackmd/maintainer.js +3 -0
 - package/lib/v2/hackmd/profile.js +24 -0
 - package/lib/v2/hackmd/radar.js +13 -0
 - package/lib/v2/hackmd/router.js +3 -0
 - package/lib/v2/hafu/maintainer.js +3 -0
 - package/lib/v2/hafu/news.js +15 -0
 - package/lib/v2/hafu/radar.js +23 -0
 - package/lib/v2/hafu/templates/hafu.art +3 -0
 - package/lib/v2/hafu/utils.js +205 -0
 - package/lib/v2/hakkatv/maintainer.js +3 -0
 - package/lib/v2/hakkatv/radar.js +13 -0
 - package/lib/v2/hakkatv/router.js +3 -0
 - package/lib/v2/hakkatv/type.js +67 -0
 - package/lib/v2/hashnode/blog.js +62 -0
 - package/lib/v2/hashnode/maintainer.js +3 -0
 - package/lib/v2/hashnode/radar.js +13 -0
 - package/lib/v2/hashnode/router.js +3 -0
 - package/lib/v2/hashnode/templates/description.art +2 -0
 - package/lib/v2/hdu/cs/notice.js +54 -0
 - package/lib/v2/hdu/cs/pg.js +54 -0
 - package/lib/v2/hdu/maintainer.js +1 -0
 - package/lib/v2/hdu/radar.js +6 -0
 - package/lib/v2/hdu/router.js +2 -1
 - package/lib/v2/hellogithub/index.js +102 -0
 - package/lib/v2/hellogithub/maintainer.js +7 -3
 - package/lib/v2/hellogithub/radar.js +35 -11
 - package/lib/v2/hellogithub/report.js +56 -0
 - package/lib/v2/hellogithub/router.js +6 -3
 - package/lib/v2/hellogithub/templates/description.art +99 -0
 - package/lib/v2/hellogithub/templates/report.art +118 -0
 - package/lib/v2/hellogithub/templates/volume.art +36 -0
 - package/lib/v2/hellogithub/volume.js +50 -0
 - package/lib/v2/hit/hitgs.js +46 -0
 - package/lib/v2/hit/jwc.js +60 -0
 - package/lib/v2/hit/maintainer.js +5 -0
 - package/lib/v2/hit/radar.js +29 -0
 - package/lib/v2/hit/router.js +6 -0
 - package/lib/v2/hit/today.js +59 -0
 - package/lib/v2/hitsz/article.js +41 -0
 - package/lib/v2/hitsz/maintainer.js +3 -0
 - package/lib/v2/hitsz/radar.js +13 -0
 - package/lib/v2/hitsz/router.js +3 -0
 - package/lib/v2/hitwh/maintainer.js +3 -0
 - package/lib/v2/hitwh/radar.js +13 -0
 - package/lib/v2/hitwh/router.js +3 -0
 - package/lib/v2/hitwh/today.js +52 -0
 - package/lib/v2/hjedd/article.js +27 -0
 - package/lib/v2/hjedd/hot.js +14 -0
 - package/lib/v2/hjedd/latest.js +14 -0
 - package/lib/v2/hjedd/maintainer.js +10 -0
 - package/lib/v2/hjedd/news.js +14 -0
 - package/lib/v2/hjedd/notice.js +14 -0
 - package/lib/v2/hjedd/original.js +14 -0
 - package/lib/v2/hjedd/radar.js +55 -0
 - package/lib/v2/hjedd/router.js +10 -0
 - package/lib/v2/hjedd/templates/attachment.art +7 -0
 - package/lib/v2/hjedd/top.js +14 -0
 - package/lib/v2/hjedd/utils.js +111 -0
 - package/lib/v2/hk01/channel.js +23 -0
 - package/lib/v2/hk01/hot.js +20 -0
 - package/lib/v2/hk01/issue.js +22 -0
 - package/lib/v2/hk01/latest.js +20 -0
 - package/lib/v2/hk01/maintainer.js +8 -0
 - package/lib/v2/hk01/radar.js +43 -0
 - package/lib/v2/hk01/router.js +8 -0
 - package/lib/v2/hk01/tag.js +22 -0
 - package/lib/v2/hk01/templates/description.art +53 -0
 - package/lib/v2/hk01/utils.js +43 -0
 - package/lib/v2/hk01/zone.js +23 -0
 - package/lib/v2/hkepc/data.js +62 -0
 - package/lib/v2/hkepc/index.js +55 -164
 - package/lib/v2/hljucm/maintainer.js +3 -0
 - package/lib/v2/hljucm/radar.js +13 -0
 - package/lib/v2/hljucm/router.js +3 -0
 - package/lib/v2/hljucm/yjsy.js +56 -0
 - package/lib/v2/hotukdeals/hottest.js +25 -0
 - package/lib/v2/hotukdeals/index.js +1 -1
 - package/lib/v2/hotukdeals/maintainer.js +1 -0
 - package/lib/v2/hotukdeals/radar.js +6 -0
 - package/lib/v2/hotukdeals/router.js +1 -0
 - package/lib/v2/houxu/events.js +37 -0
 - package/lib/v2/houxu/index.js +21 -69
 - package/lib/v2/houxu/lives.js +35 -0
 - package/lib/v2/houxu/maintainer.js +4 -2
 - package/lib/v2/houxu/memory.js +37 -0
 - package/lib/v2/houxu/radar.js +18 -6
 - package/lib/v2/houxu/router.js +6 -1
 - package/lib/v2/houxu/templates/events.art +5 -0
 - package/lib/v2/houxu/templates/lives.art +5 -0
 - package/lib/v2/houxu/templates/memory.art +3 -0
 - package/lib/v2/hrbeu/gx/card.js +42 -0
 - package/lib/v2/hrbeu/gx/list.js +65 -0
 - package/lib/v2/hrbeu/job/bigemploy.js +25 -0
 - package/lib/v2/hrbeu/job/calendar.js +46 -0
 - package/lib/v2/hrbeu/job/list.js +65 -0
 - package/lib/v2/hrbeu/maintainer.js +9 -0
 - package/lib/v2/hrbeu/radar.js +81 -0
 - package/lib/v2/hrbeu/router.js +10 -0
 - package/lib/v2/hrbeu/uae/list.js +57 -0
 - package/lib/v2/hrbeu/ugs/news.js +98 -0
 - package/lib/v2/hrbeu/yjsy/list.js +57 -0
 - package/lib/v2/hrbust/jwzx.js +36 -0
 - package/lib/v2/hrbust/maintainer.js +3 -0
 - package/lib/v2/hrbust/radar.js +13 -0
 - package/lib/v2/hrbust/router.js +3 -0
 - package/lib/v2/hrbust/templates/description.art +1 -0
 - package/lib/v2/hrbust/utils.js +71 -0
 - package/lib/v2/huanqiu/index.js +10 -3
 - package/lib/v2/hunanpea/maintainer.js +3 -0
 - package/lib/v2/hunanpea/radar.js +13 -0
 - package/lib/v2/hunanpea/router.js +3 -0
 - package/lib/v2/hunanpea/rsks.js +42 -0
 - package/lib/v2/hupu/all.js +8 -8
 - package/lib/v2/hupu/bbs.js +42 -21
 - package/lib/v2/hupu/index.js +16 -8
 - package/lib/v2/hupu/templates/description.art +9 -4
 - package/lib/v2/hupu/templates/match.art +22 -0
 - package/lib/v2/hust/aia/news.js +26 -0
 - package/lib/v2/hust/aia/notice.js +29 -0
 - package/lib/v2/hust/maintainer.js +7 -0
 - package/lib/v2/hust/radar.js +27 -0
 - package/lib/v2/hust/router.js +7 -0
 - package/lib/v2/hust/yjs.js +27 -0
 - package/lib/v2/huxiu/article.js +33 -0
 - package/lib/v2/huxiu/author.js +36 -0
 - package/lib/v2/huxiu/briefColumn.js +41 -0
 - package/lib/v2/huxiu/collection.js +39 -0
 - package/lib/v2/huxiu/maintainer.js +8 -0
 - package/lib/v2/huxiu/moment.js +39 -0
 - package/lib/v2/huxiu/radar.js +47 -0
 - package/lib/v2/huxiu/router.js +9 -0
 - package/lib/v2/huxiu/search.js +40 -0
 - package/lib/v2/huxiu/tag.js +38 -0
 - package/lib/v2/huxiu/templates/brief.art +22 -0
 - package/lib/v2/huxiu/templates/img.art +3 -0
 - package/lib/v2/huxiu/templates/moment.art +16 -0
 - package/lib/v2/huxiu/templates/video.art +7 -0
 - package/lib/v2/huxiu/utils.js +154 -0
 - package/lib/v2/icac/radar.js +2 -2
 - package/lib/v2/idolypride/maintainer.js +3 -0
 - package/lib/v2/idolypride/news.js +29 -0
 - package/lib/v2/idolypride/radar.js +13 -0
 - package/lib/v2/idolypride/router.js +3 -0
 - package/lib/v2/ieee/earlyaccess.js +77 -0
 - package/lib/v2/ieee/journal.js +78 -0
 - package/lib/v2/ieee/maintainer.js +3 -2
 - package/lib/v2/ieee/radar.js +10 -4
 - package/lib/v2/ieee/recent.js +95 -0
 - package/lib/v2/ieee/router.js +5 -2
 - package/lib/v2/ieee/templates/description.art +5 -5
 - package/lib/v2/ieee-security/maintainer.js +3 -0
 - package/lib/v2/ieee-security/radar.js +13 -0
 - package/lib/v2/ieee-security/router.js +3 -0
 - package/lib/v2/ieee-security/sp.js +36 -0
 - package/lib/v2/ielts/index.js +32 -26
 - package/lib/v2/ifeng/maintainer.js +1 -0
 - package/lib/v2/ifeng/news.js +54 -0
 - package/lib/v2/ifeng/radar.js +7 -0
 - package/lib/v2/ifeng/router.js +1 -0
 - package/lib/v2/ifeng/templates/description.art +16 -0
 - package/lib/v2/ifi-audio/download.js +34 -0
 - package/lib/v2/ifi-audio/maintainer.js +3 -0
 - package/lib/v2/ifi-audio/radar.js +11 -0
 - package/lib/v2/ifi-audio/router.js +3 -0
 - package/lib/v2/iguoguo/index.js +75 -0
 - package/lib/v2/iguoguo/maintainer.js +3 -0
 - package/lib/v2/iguoguo/radar.js +11 -0
 - package/lib/v2/iguoguo/router.js +3 -0
 - package/lib/v2/iiilab/index.js +24 -0
 - package/lib/v2/iiilab/maintainer.js +3 -0
 - package/lib/v2/iiilab/radar.js +13 -0
 - package/lib/v2/iiilab/router.js +3 -0
 - package/lib/v2/ikea/cn/family_offers.js +70 -0
 - package/lib/v2/ikea/cn/low_price.js +22 -0
 - package/lib/v2/ikea/cn/new.js +39 -0
 - package/lib/v2/ikea/cn/utils.js +42 -0
 - package/lib/v2/ikea/gb/new.js +54 -0
 - package/lib/v2/ikea/gb/offer.js +69 -0
 - package/lib/v2/ikea/maintainer.js +7 -0
 - package/lib/v2/ikea/radar.js +42 -0
 - package/lib/v2/ikea/router.js +7 -0
 - package/lib/v2/ikea/templates/cn/product.art +14 -0
 - package/lib/v2/ikea/templates/new.art +7 -0
 - package/lib/v2/ikea/templates/offer.art +3 -0
 - package/lib/v2/imagemagick/changelog.js +46 -0
 - package/lib/v2/imagemagick/maintainer.js +3 -0
 - package/lib/v2/imagemagick/radar.js +13 -0
 - package/lib/v2/imagemagick/router.js +3 -0
 - package/lib/v2/indiansinkuwait/latest.js +43 -0
 - package/lib/v2/indiansinkuwait/maintainer.js +3 -0
 - package/lib/v2/indiansinkuwait/radar.js +13 -0
 - package/lib/v2/indiansinkuwait/router.js +3 -0
 - package/lib/v2/inewsweek/index.js +53 -0
 - package/lib/v2/inewsweek/maintainer.js +3 -0
 - package/lib/v2/inewsweek/radar.js +13 -0
 - package/lib/v2/inewsweek/router.js +3 -0
 - package/lib/v2/infoq/maintainer.js +4 -0
 - package/lib/v2/infoq/radar.js +19 -0
 - package/lib/v2/infoq/recommend.js +25 -0
 - package/lib/v2/infoq/router.js +4 -0
 - package/lib/v2/infoq/topic.js +42 -0
 - package/lib/v2/infoq/utils.js +111 -0
 - package/lib/v2/inoreader/index.js +46 -0
 - package/lib/v2/inoreader/maintainer.js +4 -0
 - package/lib/v2/inoreader/radar.js +23 -0
 - package/lib/v2/inoreader/router.js +4 -0
 - package/lib/v2/inoreader/rss.js +47 -0
 - package/lib/v2/instagram/common-utils.js +59 -0
 - package/lib/v2/instagram/maintainer.js +4 -0
 - package/lib/v2/instagram/private-api/index.js +94 -0
 - package/lib/v2/instagram/private-api/utils.js +37 -0
 - package/lib/v2/instagram/radar.js +19 -0
 - package/lib/v2/instagram/router.js +4 -0
 - package/lib/v2/instagram/templates/images.art +5 -0
 - package/lib/v2/instagram/templates/video.art +5 -0
 - package/lib/v2/instagram/web-api/index.js +70 -0
 - package/lib/v2/instagram/web-api/utils.js +99 -0
 - package/lib/v2/instructables/maintainer.js +3 -0
 - package/lib/v2/instructables/projects.js +56 -0
 - package/lib/v2/instructables/radar.js +19 -0
 - package/lib/v2/instructables/router.js +3 -0
 - package/lib/v2/iqiyi/album.js +62 -0
 - package/lib/v2/iqiyi/maintainer.js +4 -0
 - package/lib/v2/iqiyi/radar.js +24 -0
 - package/lib/v2/iqiyi/router.js +4 -0
 - package/lib/v2/iqiyi/templates/album.art +1 -0
 - package/lib/v2/iqnew/latest.js +57 -0
 - package/lib/v2/iqnew/maintainer.js +3 -0
 - package/lib/v2/iqnew/radar.js +13 -0
 - package/lib/v2/iqnew/router.js +3 -0
 - package/lib/v2/iresearch/maintainer.js +1 -0
 - package/lib/v2/iresearch/radar.js +7 -1
 - package/lib/v2/iresearch/router.js +1 -0
 - package/lib/v2/iresearch/templates/weekly.art +11 -0
 - package/lib/v2/iresearch/weekly.js +39 -0
 - package/lib/v2/islander/maintainer.js +4 -0
 - package/lib/v2/islander/radar.js +19 -0
 - package/lib/v2/islander/router.js +4 -0
 - package/lib/v2/islander/search.js +33 -0
 - package/lib/v2/islander/top30event.js +28 -0
 - package/lib/v2/issuehunt/funded.js +28 -0
 - package/lib/v2/issuehunt/maintainer.js +3 -0
 - package/lib/v2/issuehunt/radar.js +13 -0
 - package/lib/v2/issuehunt/router.js +3 -0
 - package/lib/v2/itch/devlog.js +66 -0
 - package/lib/v2/itch/index.js +56 -0
 - package/lib/v2/itch/maintainer.js +5 -0
 - package/lib/v2/itch/posts.js +41 -0
 - package/lib/v2/itch/radar.js +28 -0
 - package/lib/v2/itch/router.js +5 -0
 - package/lib/v2/itch/templates/description.art +4 -0
 - package/lib/v2/ithome/maintainer.js +1 -0
 - package/lib/v2/ithome/radar.js +11 -0
 - package/lib/v2/ithome/router.js +1 -0
 - package/lib/v2/ithome/tw/feeds.js +38 -0
 - package/lib/v2/iwara/index.js +1 -0
 - package/lib/v2/iwara/maintainer.js +1 -0
 - package/lib/v2/iwara/radar.js +8 -2
 - package/lib/v2/iwara/router.js +1 -0
 - package/lib/v2/iwara/subscriptions.js +49 -0
 - package/lib/v2/iwara/templates/subscriptions.art +1 -0
 - package/lib/v2/jandan/index.js +17 -51
 - package/lib/v2/jandan/maintainer.js +1 -1
 - package/lib/v2/jandan/section.js +0 -1
 - package/lib/v2/javbus/index.js +21 -4
 - package/lib/v2/javbus/maintainer.js +33 -14
 - package/lib/v2/javbus/radar.js +75 -39
 - package/lib/v2/javbus/router.js +1 -1
 - package/lib/v2/javbus/templates/description.art +12 -1
 - package/lib/v2/javdb/rankings.js +1 -1
 - package/lib/v2/javdb/utils.js +10 -4
 - package/lib/v2/jd/price.js +2 -1
 - package/lib/v2/jiaoliudao/index.js +35 -0
 - package/lib/v2/jiaoliudao/maintainer.js +3 -0
 - package/lib/v2/jiaoliudao/radar.js +13 -0
 - package/lib/v2/jiaoliudao/router.js +3 -0
 - package/lib/v2/jiemian/list.js +60 -0
 - package/lib/v2/jiemian/maintainer.js +4 -0
 - package/lib/v2/jiemian/radar.js +19 -0
 - package/lib/v2/jiemian/router.js +4 -0
 - package/lib/v2/jike/maintainer.js +5 -0
 - package/lib/v2/jike/radar.js +34 -0
 - package/lib/v2/jike/router.js +5 -0
 - package/lib/v2/jike/topic.js +42 -0
 - package/lib/v2/jike/topicText.js +21 -0
 - package/lib/v2/jike/user.js +158 -0
 - package/lib/v2/jike/utils.js +197 -0
 - package/lib/v2/jin10/index.js +58 -0
 - package/lib/v2/jin10/maintainer.js +3 -0
 - package/lib/v2/jin10/radar.js +13 -0
 - package/lib/v2/jin10/router.js +3 -0
 - package/lib/v2/jin10/templates/description.art +2 -0
 - package/lib/v2/jornada/index.js +59 -0
 - package/lib/v2/jornada/maintainer.js +3 -0
 - package/lib/v2/jornada/radar.js +13 -0
 - package/lib/v2/jornada/router.js +3 -0
 - package/lib/v2/jou/home.js +18 -0
 - package/lib/v2/jou/maintainer.js +4 -0
 - package/lib/v2/jou/radar.js +21 -0
 - package/lib/v2/jou/router.js +6 -0
 - package/lib/v2/jou/utils/index.js +60 -0
 - package/lib/v2/jou/yz.js +18 -0
 - package/lib/v2/jseea/maintainer.js +3 -0
 - package/lib/v2/jseea/news.js +64 -0
 - package/lib/v2/jseea/radar.js +13 -0
 - package/lib/v2/jseea/router.js +3 -0
 - package/lib/v2/juejin/books.js +30 -0
 - package/lib/v2/juejin/category.js +39 -0
 - package/lib/v2/juejin/maintainer.js +13 -0
 - package/lib/v2/juejin/news.js +25 -0
 - package/lib/v2/juejin/pins.js +67 -0
 - package/lib/v2/juejin/radar.js +61 -0
 - package/lib/v2/juejin/router.js +13 -0
 - package/lib/v2/juejin/utils.js +56 -0
 - package/lib/v2/kcna/maintainer.js +3 -0
 - package/lib/v2/kcna/news.js +81 -0
 - package/lib/v2/kcna/radar.js +61 -0
 - package/lib/v2/kcna/router.js +3 -0
 - package/lib/v2/kcna/templates/news.art +9 -0
 - package/lib/v2/kcna/utils.js +64 -0
 - package/lib/v2/ke/maintainer.js +3 -0
 - package/lib/v2/ke/radar.js +13 -0
 - package/lib/v2/ke/results.js +36 -0
 - package/lib/v2/ke/router.js +3 -0
 - package/lib/v2/keep/maintainer.js +3 -0
 - package/lib/v2/keep/radar.js +13 -0
 - package/lib/v2/keep/router.js +3 -0
 - package/lib/v2/keep/templates/user.art +16 -0
 - package/lib/v2/keep/user.js +57 -0
 - package/lib/v2/kemono/index.js +23 -19
 - package/lib/v2/kemono/templates/discord.art +22 -0
 - package/lib/v2/kimlaw/maintainer.js +3 -0
 - package/lib/v2/kimlaw/radar.js +13 -0
 - package/lib/v2/kimlaw/router.js +3 -0
 - package/lib/v2/kimlaw/thesis.js +44 -0
 - package/lib/v2/kuaidi100/maintainer.js +4 -0
 - package/lib/v2/kuaidi100/radar.js +25 -0
 - package/lib/v2/kuaidi100/router.js +4 -0
 - package/lib/v2/kuaidi100/supported_company.js +16 -0
 - package/lib/v2/kuaidi100/utils.js +258 -0
 - package/lib/v2/kunchengblog/essay.js +50 -0
 - package/lib/v2/kunchengblog/maintainer.js +3 -0
 - package/lib/v2/kunchengblog/radar.js +13 -0
 - package/lib/v2/kunchengblog/router.js +3 -0
 - package/lib/v2/kuwaitlocal/index.js +47 -0
 - package/lib/v2/kuwaitlocal/maintainer.js +4 -0
 - package/lib/v2/kuwaitlocal/radar.js +19 -0
 - package/lib/v2/kuwaitlocal/router.js +3 -0
 - package/lib/v2/lang/maintainer.js +3 -0
 - package/lib/v2/lang/radar.js +13 -0
 - package/lib/v2/lang/room.js +40 -0
 - package/lib/v2/lang/router.js +3 -0
 - package/lib/v2/lang/templates/room.art +1 -0
 - package/lib/v2/laohu8/maintainer.js +3 -0
 - package/lib/v2/laohu8/personal.js +32 -0
 - package/lib/v2/laohu8/radar.js +13 -0
 - package/lib/v2/laohu8/router.js +3 -0
 - package/lib/v2/layer3/maintainer.js +3 -0
 - package/lib/v2/layer3/quests.js +37 -0
 - package/lib/v2/layer3/radar.js +13 -0
 - package/lib/v2/layer3/router.js +3 -0
 - package/lib/v2/layer3/templates/description.art +24 -0
 - package/lib/v2/layoffs/index.js +134 -0
 - package/lib/v2/layoffs/maintainer.js +3 -0
 - package/lib/v2/layoffs/radar.js +13 -0
 - package/lib/v2/layoffs/router.js +3 -0
 - package/lib/v2/learnblockchain/maintainer.js +3 -0
 - package/lib/v2/learnblockchain/posts.js +43 -0
 - package/lib/v2/learnblockchain/radar.js +19 -0
 - package/lib/v2/learnblockchain/router.js +3 -0
 - package/lib/v2/leetcode/articles.js +80 -0
 - package/lib/v2/leetcode/dailyquestion-cn.js +115 -0
 - package/lib/v2/leetcode/dailyquestion-en.js +116 -0
 - package/lib/v2/leetcode/dailyquestion-solution-cn.js +183 -0
 - package/lib/v2/leetcode/dailyquestion-solution-en.js +213 -0
 - package/lib/v2/leetcode/maintainer.js +6 -0
 - package/lib/v2/leetcode/radar.js +62 -0
 - package/lib/v2/leetcode/router.js +7 -0
 - package/lib/v2/leetcode/templates/question-description.art +6 -0
 - package/lib/v2/lever/index.js +28 -0
 - package/lib/v2/lever/maintainer.js +3 -0
 - package/lib/v2/lever/radar.js +13 -0
 - package/lib/v2/lever/router.js +3 -0
 - package/lib/v2/lfsyd/templates/video.art +1 -0
 - package/lib/v2/lfsyd/utils.js +10 -0
 - package/lib/v2/lianxh/index.js +61 -0
 - package/lib/v2/lianxh/maintainer.js +3 -0
 - package/lib/v2/lianxh/radar.js +13 -0
 - package/lib/v2/lianxh/router.js +3 -0
 - package/lib/v2/line/maintainer.js +1 -0
 - package/lib/v2/line/publisher.js +53 -0
 - package/lib/v2/line/radar.js +8 -2
 - package/lib/v2/line/router.js +1 -0
 - package/lib/v2/line/today.js +5 -41
 - package/lib/v2/line/utils.js +43 -0
 - package/lib/v2/linkedin/cn/index.js +13 -0
 - package/lib/v2/linkedin/cn/renderer.js +179 -0
 - package/lib/v2/linkedin/cn/utils.js +122 -0
 - package/lib/v2/linkedin/jobs.js +44 -0
 - package/lib/v2/linkedin/maintainer.js +4 -0
 - package/lib/v2/linkedin/models.js +15 -0
 - package/lib/v2/linkedin/radar.js +36 -0
 - package/lib/v2/linkedin/router.js +4 -0
 - package/lib/v2/linkedin/templates/cn/posting.art +25 -0
 - package/lib/v2/linkedin/utils.js +121 -0
 - package/lib/v2/linkresearcher/index.js +68 -0
 - package/lib/v2/linkresearcher/maintainer.js +3 -0
 - package/lib/v2/linkresearcher/radar.js +19 -0
 - package/lib/v2/linkresearcher/router.js +3 -0
 - package/lib/v2/linovelib/maintainer.js +3 -0
 - package/lib/v2/linovelib/novel.js +33 -0
 - package/lib/v2/linovelib/radar.js +13 -0
 - package/lib/v2/linovelib/router.js +3 -0
 - package/lib/v2/liulinblog/utils.js +7 -4
 - package/lib/v2/lkong/forum.js +3 -2
 - package/lib/v2/lofter/user.js +10 -1
 - package/lib/v2/logonews/router.js +1 -1
 - package/lib/v2/loltw/maintainer.js +3 -0
 - package/lib/v2/loltw/news.js +36 -0
 - package/lib/v2/loltw/radar.js +13 -0
 - package/lib/v2/loltw/router.js +3 -0
 - package/lib/v2/loltw/templates/news.art +6 -0
 - package/lib/v2/lovelive-anime/maintainer.js +5 -0
 - package/lib/v2/lovelive-anime/news.js +56 -0
 - package/lib/v2/lovelive-anime/radar.js +31 -0
 - package/lib/v2/lovelive-anime/router.js +5 -0
 - package/lib/v2/lovelive-anime/schedules.js +56 -0
 - package/lib/v2/lovelive-anime/templates/description.art +1 -0
 - package/lib/v2/lovelive-anime/templates/scheduleDesc.art +3 -0
 - package/lib/v2/lovelive-anime/topics.js +84 -0
 - package/lib/v2/luogu/contest.js +72 -0
 - package/lib/v2/luogu/daily.js +33 -0
 - package/lib/v2/luogu/maintainer.js +6 -0
 - package/lib/v2/luogu/radar.js +31 -0
 - package/lib/v2/luogu/router.js +6 -0
 - package/lib/v2/luogu/userBlog.js +48 -0
 - package/lib/v2/luogu/userFeed.js +30 -0
 - package/lib/v2/lxixsxa/discography.js +54 -0
 - package/lib/v2/lxixsxa/information.js +48 -0
 - package/lib/v2/lxixsxa/jsonpHelper.js +19 -0
 - package/lib/v2/lxixsxa/maintainer.js +4 -0
 - package/lib/v2/lxixsxa/radar.js +36 -0
 - package/lib/v2/lxixsxa/router.js +4 -0
 - package/lib/v2/lxixsxa/templates/disco.art +5 -0
 - package/lib/v2/lxixsxa/templates/info.art +4 -0
 - package/lib/v2/macfilos/blog.js +61 -0
 - package/lib/v2/macfilos/maintainer.js +3 -0
 - package/lib/v2/macfilos/radar.js +13 -0
 - package/lib/v2/macfilos/router.js +3 -0
 - package/lib/v2/macmenubar/maintainer.js +3 -0
 - package/lib/v2/macmenubar/radar.js +13 -0
 - package/lib/v2/macmenubar/recently.js +47 -0
 - package/lib/v2/macmenubar/router.js +3 -0
 - package/lib/v2/magazinelib/latest-magazine.js +55 -0
 - package/lib/v2/magazinelib/maintainer.js +3 -0
 - package/lib/v2/magazinelib/radar.js +19 -0
 - package/lib/v2/magazinelib/router.js +3 -0
 - package/lib/v2/magazinelib/templates/magazine-description.art +3 -0
 - package/lib/v2/mangadex/index.js +73 -0
 - package/lib/v2/mangadex/maintainer.js +3 -0
 - package/lib/v2/mangadex/radar.js +13 -0
 - package/lib/v2/mangadex/router.js +3 -0
 - package/lib/v2/manhuagui/comic.js +114 -0
 - package/lib/v2/manhuagui/maintainer.js +6 -0
 - package/lib/v2/manhuagui/radar.js +33 -0
 - package/lib/v2/manhuagui/router.js +5 -0
 - package/lib/v2/manhuagui/subscribe.js +54 -0
 - package/lib/v2/manhuagui/templates/manga.art +2 -0
 - package/lib/v2/mckinsey/cn/categoryMap.js +79 -0
 - package/lib/v2/mckinsey/cn/index.js +37 -0
 - package/lib/v2/mckinsey/maintainer.js +3 -0
 - package/lib/v2/mckinsey/radar.js +12 -0
 - package/lib/v2/mckinsey/router.js +3 -0
 - package/lib/v2/mclaren/index.js +96 -0
 - package/lib/v2/mclaren/maintainer.js +3 -0
 - package/lib/v2/mclaren/radar.js +29 -0
 - package/lib/v2/mclaren/router.js +3 -0
 - package/lib/v2/mclaren/templates/desc.art +6 -0
 - package/lib/v2/mdpi/journal.js +65 -0
 - package/lib/v2/mdpi/maintainer.js +3 -0
 - package/lib/v2/mdpi/radar.js +13 -0
 - package/lib/v2/mdpi/router.js +3 -0
 - package/lib/v2/mdpi/templates/description.art +12 -0
 - package/lib/v2/meituclub/latest.js +41 -0
 - package/lib/v2/meituclub/maintainer.js +3 -0
 - package/lib/v2/meituclub/radar.js +13 -0
 - package/lib/v2/meituclub/router.js +3 -0
 - package/lib/v2/meituclub/templates/description.art +1 -0
 - package/lib/v2/meteor/boards.js +11 -0
 - package/lib/v2/meteor/index.js +45 -0
 - package/lib/v2/meteor/maintainer.js +4 -0
 - package/lib/v2/meteor/radar.js +19 -0
 - package/lib/v2/meteor/router.js +4 -0
 - package/lib/v2/meteor/templates/desc.art +7 -0
 - package/lib/v2/meteor/utils.js +90 -0
 - package/lib/v2/mihoyo/bbs.js +1 -0
 - package/lib/v2/mihoyo/maintainer.js +1 -0
 - package/lib/v2/mihoyo/radar.js +22 -3
 - package/lib/v2/mihoyo/router.js +1 -0
 - package/lib/v2/mihoyo/ys/news.js +81 -0
 - package/lib/v2/mindmeister/example.js +44 -0
 - package/lib/v2/mindmeister/maintainer.js +3 -0
 - package/lib/v2/mindmeister/radar.js +13 -0
 - package/lib/v2/mindmeister/router.js +3 -0
 - package/lib/v2/mindmeister/templates/image.art +1 -0
 - package/lib/v2/minecraft/maintainer.js +3 -0
 - package/lib/v2/minecraft/radar.js +13 -0
 - package/lib/v2/minecraft/router.js +3 -0
 - package/lib/v2/minecraft/version.js +34 -0
 - package/lib/v2/mingpao/index.js +28 -33
 - package/lib/v2/mingpao/templates/description.art +1 -1
 - package/lib/v2/mingpao/templates/fancybox.art +6 -2
 - package/lib/v2/mirror/index.js +41 -0
 - package/lib/v2/mirror/maintainer.js +3 -0
 - package/lib/v2/mirror/radar.js +17 -0
 - package/lib/v2/mirror/router.js +3 -0
 - package/lib/v2/misskey/featured-notes.js +29 -0
 - package/lib/v2/misskey/maintainer.js +3 -0
 - package/lib/v2/misskey/radar.js +35 -0
 - package/lib/v2/misskey/router.js +3 -0
 - package/lib/v2/misskey/templates/note.art +23 -0
 - package/lib/v2/misskey/utils.js +31 -0
 - package/lib/v2/mixcloud/index.js +130 -0
 - package/lib/v2/mixcloud/maintainer.js +3 -0
 - package/lib/v2/mixcloud/queries.js +1520 -0
 - package/lib/v2/mixcloud/radar.js +37 -0
 - package/lib/v2/mixcloud/router.js +3 -0
 - package/lib/v2/mobilism/forums.js +75 -0
 - package/lib/v2/mobilism/maintainer.js +4 -0
 - package/lib/v2/mobilism/portal.js +54 -0
 - package/lib/v2/mobilism/radar.js +23 -0
 - package/lib/v2/mobilism/router.js +4 -0
 - package/lib/v2/modelscope/community.js +55 -0
 - package/lib/v2/modelscope/datasets.js +55 -0
 - package/lib/v2/modelscope/maintainer.js +6 -0
 - package/lib/v2/modelscope/models.js +45 -0
 - package/lib/v2/modelscope/radar.js +33 -0
 - package/lib/v2/modelscope/router.js +6 -0
 - package/lib/v2/modelscope/studios.js +57 -0
 - package/lib/v2/modelscope/templates/community.art +11 -0
 - package/lib/v2/modelscope/templates/desc.art +9 -0
 - package/lib/v2/mrdx/daily.js +79 -0
 - package/lib/v2/mrdx/maintainer.js +3 -0
 - package/lib/v2/mrdx/radar.js +13 -0
 - package/lib/v2/mrdx/router.js +3 -0
 - package/lib/v2/mrdx/utils.js +17 -0
 - package/lib/v2/mtime/maintainer.js +1 -1
 - package/lib/v2/mtime/news.js +28 -24
 - package/lib/v2/mtime/radar.js +1 -1
 - package/lib/v2/myfigurecollection/activity.js +63 -0
 - package/lib/v2/myfigurecollection/index.js +82 -0
 - package/lib/v2/myfigurecollection/maintainer.js +4 -0
 - package/lib/v2/myfigurecollection/radar.js +44 -0
 - package/lib/v2/myfigurecollection/router.js +4 -0
 - package/lib/v2/myfigurecollection/templates/activity.art +8 -0
 - package/lib/v2/myfigurecollection/templates/description.art +24 -0
 - package/lib/v2/mysql/maintainer.js +3 -0
 - package/lib/v2/mysql/radar.js +13 -0
 - package/lib/v2/mysql/release.js +62 -0
 - package/lib/v2/mysql/router.js +3 -0
 - package/lib/v2/natgeo/radar.js +1 -1
 - package/lib/v2/nature/cover.js +77 -0
 - package/lib/v2/nature/highlight.js +22 -0
 - package/lib/v2/nature/maintainer.js +8 -0
 - package/lib/v2/nature/news-and-comment.js +37 -0
 - package/lib/v2/nature/news.js +30 -0
 - package/lib/v2/nature/radar.js +37 -0
 - package/lib/v2/nature/research.js +39 -0
 - package/lib/v2/nature/router.js +8 -0
 - package/lib/v2/nature/siteindex.js +48 -0
 - package/lib/v2/nature/utils.js +980 -0
 - package/lib/v2/nautil/maintainer.js +3 -0
 - package/lib/v2/nautil/radar.js +13 -0
 - package/lib/v2/nautil/router.js +3 -0
 - package/lib/v2/nautil/templates/description.art +6 -0
 - package/lib/v2/nautil/topics.js +57 -0
 - package/lib/v2/nbd/index.js +6 -6
 - package/lib/v2/nbd/radar.js +2 -2
 - package/lib/v2/nber/index.js +48 -0
 - package/lib/v2/nber/maintainer.js +4 -0
 - package/lib/v2/nber/radar.js +19 -0
 - package/lib/v2/nber/router.js +4 -0
 - package/lib/v2/nber/template/description.art +6 -0
 - package/lib/v2/ncepu/maintainer.js +3 -0
 - package/lib/v2/ncepu/master/masterinfo.js +78 -0
 - package/lib/v2/ncepu/radar.js +25 -0
 - package/lib/v2/ncepu/router.js +3 -0
 - package/lib/v2/ncwu/maintainer.js +3 -0
 - package/lib/v2/ncwu/notice.js +27 -0
 - package/lib/v2/ncwu/radar.js +13 -0
 - package/lib/v2/ncwu/router.js +3 -0
 - package/lib/v2/ndss-symposium/maintainer.js +3 -0
 - package/lib/v2/ndss-symposium/ndss.js +80 -0
 - package/lib/v2/ndss-symposium/radar.js +13 -0
 - package/lib/v2/ndss-symposium/router.js +3 -0
 - package/lib/v2/neatdownloadmanager/download.js +50 -0
 - package/lib/v2/neatdownloadmanager/maintainer.js +3 -0
 - package/lib/v2/neatdownloadmanager/radar.js +13 -0
 - package/lib/v2/neatdownloadmanager/router.js +3 -0
 - package/lib/v2/neu/bmie.js +94 -0
 - package/lib/v2/neu/maintainer.js +4 -0
 - package/lib/v2/neu/news.js +44 -0
 - package/lib/v2/neu/radar.js +21 -0
 - package/lib/v2/neu/router.js +4 -0
 - package/lib/v2/newrank/douyin.js +63 -0
 - package/lib/v2/newrank/maintainer.js +4 -0
 - package/lib/v2/newrank/radar.js +15 -0
 - package/lib/v2/newrank/router.js +4 -0
 - package/lib/v2/newrank/wechat.js +65 -0
 - package/lib/v2/newzmz/index.js +79 -0
 - package/lib/v2/newzmz/maintainer.js +4 -0
 - package/lib/v2/newzmz/radar.js +19 -0
 - package/lib/v2/newzmz/router.js +4 -0
 - package/lib/v2/newzmz/view.js +42 -0
 - package/lib/v2/nextapple/maintainer.js +3 -0
 - package/lib/v2/nextapple/radar.js +13 -0
 - package/lib/v2/nextapple/realtime.js +44 -0
 - package/lib/v2/nextapple/router.js +3 -0
 - package/lib/v2/nga/forum.js +71 -0
 - package/lib/v2/nga/maintainer.js +4 -0
 - package/lib/v2/nga/post.js +127 -0
 - package/lib/v2/nga/radar.js +39 -0
 - package/lib/v2/nga/router.js +4 -0
 - package/lib/v2/nhentai/maintainer.js +4 -0
 - package/lib/v2/nhentai/other.js +30 -0
 - package/lib/v2/nhentai/radar.js +19 -0
 - package/lib/v2/nhentai/router.js +4 -0
 - package/lib/v2/nhentai/search.js +23 -0
 - package/lib/v2/nhentai/templates/desc.art +4 -0
 - package/lib/v2/nhentai/util.js +146 -0
 - package/lib/v2/nhk/maintainer.js +4 -0
 - package/lib/v2/nhk/news.js +41 -0
 - package/lib/v2/nhk/news_web_easy.js +44 -0
 - package/lib/v2/nhk/radar.js +19 -0
 - package/lib/v2/nhk/router.js +4 -0
 - package/lib/v2/nhk/templates/news.art +5 -0
 - package/lib/v2/nikkei/asia/index.js +53 -0
 - package/lib/v2/nikkei/cn/index.js +91 -0
 - package/lib/v2/nikkei/index.js +36 -0
 - package/lib/v2/nikkei/maintainer.js +6 -0
 - package/lib/v2/nikkei/news.js +90 -0
 - package/lib/v2/nikkei/radar.js +59 -0
 - package/lib/v2/nikkei/router.js +7 -0
 - package/lib/v2/nikkei/templates/news.art +4 -0
 - package/lib/v2/nintendo/direct.js +31 -0
 - package/lib/v2/nintendo/eshop_cn.js +44 -0
 - package/lib/v2/nintendo/eshop_hk.js +79 -0
 - package/lib/v2/nintendo/eshop_jp.js +34 -0
 - package/lib/v2/nintendo/eshop_us.js +32 -0
 - package/lib/v2/nintendo/maintainer.js +7 -0
 - package/lib/v2/nintendo/news.js +23 -0
 - package/lib/v2/nintendo/news_china.js +35 -0
 - package/lib/v2/nintendo/radar.js +70 -0
 - package/lib/v2/nintendo/router.js +10 -0
 - package/lib/v2/nintendo/system-update.js +38 -0
 - package/lib/v2/nintendo/templates/direct.art +6 -0
 - package/lib/v2/nintendo/templates/eshop_cn.art +21 -0
 - package/lib/v2/nintendo/templates/eshop_hk.art +61 -0
 - package/lib/v2/nintendo/templates/eshop_jp.art +3 -0
 - package/lib/v2/nintendo/templates/eshop_us.art +24 -0
 - package/lib/v2/nintendo/utils.js +170 -0
 - package/lib/v2/njglyy/maintainer.js +3 -0
 - package/lib/v2/njglyy/radar.js +13 -0
 - package/lib/v2/njglyy/router.js +3 -0
 - package/lib/v2/njglyy/utils/index.js +50 -0
 - package/lib/v2/njglyy/ygbjypx.js +18 -0
 - package/lib/v2/njit/jwc.js +92 -0
 - package/lib/v2/njit/maintainer.js +4 -0
 - package/lib/v2/njit/radar.js +21 -0
 - package/lib/v2/njit/router.js +4 -0
 - package/lib/v2/njit/tzgg.js +74 -0
 - package/lib/v2/njnu/ceai/utils.js +3 -3
 - package/lib/v2/njnu/jwc/utils.js +3 -3
 - package/lib/v2/nju/admission.js +41 -0
 - package/lib/v2/nju/dafls.js +39 -0
 - package/lib/v2/nju/exchangesys.js +46 -0
 - package/lib/v2/nju/hosptial.js +41 -0
 - package/lib/v2/nju/hqjt.js +39 -0
 - package/lib/v2/nju/itsc.js +46 -0
 - package/lib/v2/nju/jjc.js +42 -0
 - package/lib/v2/nju/jw.js +43 -29
 - package/lib/v2/nju/maintainer.js +9 -2
 - package/lib/v2/nju/radar.js +87 -16
 - package/lib/v2/nju/rczp.js +34 -24
 - package/lib/v2/nju/router.js +9 -2
 - package/lib/v2/nju/zcc.js +6 -8
 - package/lib/v2/njucm/grabs.js +18 -0
 - package/lib/v2/njucm/maintainer.js +3 -0
 - package/lib/v2/njucm/radar.js +13 -0
 - package/lib/v2/njucm/router.js +3 -0
 - package/lib/v2/njucm/utils/index.js +47 -0
 - package/lib/v2/njust/cwc.js +39 -0
 - package/lib/v2/njust/dgxg.js +40 -0
 - package/lib/v2/njust/eo.js +50 -0
 - package/lib/v2/njust/eoe.js +39 -0
 - package/lib/v2/njust/gs.js +41 -0
 - package/lib/v2/njust/jwc.js +41 -0
 - package/lib/v2/njust/maintainer.js +8 -0
 - package/lib/v2/njust/radar.js +110 -0
 - package/lib/v2/njust/router.js +8 -0
 - package/lib/v2/njust/utils.js +35 -0
 - package/lib/v2/njxzc/home.js +26 -0
 - package/lib/v2/njxzc/lib.js +26 -0
 - package/lib/v2/njxzc/maintainer.js +4 -0
 - package/lib/v2/njxzc/radar.js +21 -0
 - package/lib/v2/njxzc/router.js +6 -0
 - package/lib/v2/njxzc/utils/index.js +48 -0
 - package/lib/v2/nmbxd1/forum.js +58 -0
 - package/lib/v2/nmbxd1/maintainer.js +3 -0
 - package/lib/v2/nmbxd1/radar.js +13 -0
 - package/lib/v2/nmbxd1/router.js +3 -0
 - package/lib/v2/nmbxd1/templates/description.art +65 -0
 - package/lib/v2/nmtv/column.js +53 -0
 - package/lib/v2/nmtv/maintainer.js +3 -0
 - package/lib/v2/nmtv/radar.js +13 -0
 - package/lib/v2/nmtv/router.js +3 -0
 - package/lib/v2/nmtv/templates/description.art +9 -0
 - package/lib/v2/nua/dc.js +63 -0
 - package/lib/v2/nua/gra.js +21 -0
 - package/lib/v2/nua/index.js +22 -0
 - package/lib/v2/nua/lib.js +39 -0
 - package/lib/v2/nua/maintainer.js +7 -0
 - package/lib/v2/nua/radar.js +45 -0
 - package/lib/v2/nua/router.js +7 -0
 - package/lib/v2/nua/sxw.js +22 -0
 - package/lib/v2/nua/utils.js +75 -0
 - package/lib/v2/nuaa/college/cae.js +79 -0
 - package/lib/v2/nuaa/college/cs.js +78 -0
 - package/lib/v2/nuaa/jwc/jwc.js +21 -27
 - package/lib/v2/nuaa/maintainer.js +4 -3
 - package/lib/v2/nuaa/radar.js +6 -0
 - package/lib/v2/nuaa/router.js +3 -2
 - package/lib/v2/nuaa/utils/pypasswaf.js +7 -9
 - package/lib/v2/nuaa/yjsy/yjsy.js +60 -41
 - package/lib/v2/nuist/bulletin.js +61 -0
 - package/lib/v2/nuist/cas.js +71 -0
 - package/lib/v2/nuist/jwc.js +43 -0
 - package/lib/v2/nuist/library/lib.js +43 -0
 - package/lib/v2/nuist/maintainer.js +10 -0
 - package/lib/v2/nuist/radar.js +69 -0
 - package/lib/v2/nuist/router.js +10 -0
 - package/lib/v2/nuist/scs.js +49 -0
 - package/lib/v2/nuist/sese.js +45 -0
 - package/lib/v2/nuist/xgc.js +49 -0
 - package/lib/v2/nuist/yjs.js +60 -0
 - package/lib/v2/nyaa/main.js +50 -0
 - package/lib/v2/nyaa/maintainer.js +9 -0
 - package/lib/v2/nyaa/radar.js +47 -0
 - package/lib/v2/nyaa/router.js +9 -0
 - package/lib/v2/nytimes/daily_briefing_chinese.js +47 -41
 - package/lib/v2/nytimes/index.js +3 -3
 - package/lib/v2/nytimes/maintainer.js +1 -1
 - package/lib/v2/nytimes/templates/image.art +3 -0
 - package/lib/v2/nytimes/utils.js +7 -1
 - package/lib/v2/oceanengine/arithmeticIndex.js +145 -0
 - package/lib/v2/oceanengine/maintainer.js +3 -0
 - package/lib/v2/oceanengine/radar.js +13 -0
 - package/lib/v2/oceanengine/router.js +3 -0
 - package/lib/v2/oceanengine/templates/content.art +14 -0
 - package/lib/v2/odaily/activity.js +13 -14
 - package/lib/v2/odaily/post.js +15 -20
 - package/lib/v2/odaily/user.js +14 -15
 - package/lib/v2/odaily/utils.js +1 -1
 - package/lib/v2/oilchem/index.js +20 -21
 - package/lib/v2/oncc/maintainer.js +1 -0
 - package/lib/v2/oncc/money18.js +115 -0
 - package/lib/v2/oncc/radar.js +13 -5
 - package/lib/v2/oncc/router.js +1 -0
 - package/lib/v2/oncc/templates/money18.art +6 -0
 - package/lib/v2/oo-software/changelog.js +40 -0
 - package/lib/v2/oo-software/maintainer.js +3 -0
 - package/lib/v2/oo-software/radar.js +13 -0
 - package/lib/v2/oo-software/router.js +3 -0
 - package/lib/v2/openai/blog.js +97 -0
 - package/lib/v2/openai/chatgpt.js +98 -0
 - package/lib/v2/openai/maintainer.js +3 -0
 - package/lib/v2/openai/radar.js +27 -0
 - package/lib/v2/openai/router.js +4 -0
 - package/lib/v2/openai/templates/article.art +2 -0
 - package/lib/v2/openwrt/maintainer.js +3 -0
 - package/lib/v2/openwrt/radar.js +13 -0
 - package/lib/v2/openwrt/releases.js +25 -0
 - package/lib/v2/openwrt/router.js +3 -0
 - package/lib/v2/orcid/index.js +1 -1
 - package/lib/v2/orcid/templates/description.art +2 -2
 - package/lib/v2/oreno3d/get_sec_page_data.js +75 -0
 - package/lib/v2/oreno3d/main.js +157 -0
 - package/lib/v2/oreno3d/maintainer.js +7 -0
 - package/lib/v2/oreno3d/radar.js +52 -0
 - package/lib/v2/oreno3d/router.js +7 -0
 - package/lib/v2/oreno3d/templates/description.art +13 -0
 - package/lib/v2/oschina/maintainer.js +6 -0
 - package/lib/v2/oschina/news.js +93 -0
 - package/lib/v2/oschina/radar.js +33 -0
 - package/lib/v2/oschina/router.js +6 -0
 - package/lib/v2/oschina/topic.js +53 -0
 - package/lib/v2/oschina/user.js +50 -0
 - package/lib/v2/oshwhub/explore.js +116 -0
 - package/lib/v2/oshwhub/maintainer.js +3 -0
 - package/lib/v2/oshwhub/radar.js +16 -0
 - package/lib/v2/oshwhub/router.js +3 -0
 - package/lib/v2/oshwhub/templates/description.art +58 -0
 - package/lib/v2/ouc/it-postgraduate.js +27 -0
 - package/lib/v2/ouc/it.js +43 -0
 - package/lib/v2/ouc/maintainer.js +5 -0
 - package/lib/v2/ouc/radar.js +27 -0
 - package/lib/v2/ouc/router.js +5 -0
 - package/lib/v2/ouc/yjs.js +27 -0
 - package/lib/v2/outagereport/index.js +51 -0
 - package/lib/v2/outagereport/maintainer.js +3 -0
 - package/lib/v2/outagereport/radar.js +13 -0
 - package/lib/v2/outagereport/router.js +3 -0
 - package/lib/v2/panewslab/author.js +48 -0
 - package/lib/v2/panewslab/index.js +24 -17
 - package/lib/v2/panewslab/maintainer.js +3 -1
 - package/lib/v2/panewslab/news.js +28 -0
 - package/lib/v2/panewslab/radar.js +2 -2
 - package/lib/v2/panewslab/router.js +4 -2
 - package/lib/v2/panewslab/topic.js +7 -14
 - package/lib/v2/paradigm/maintainer.js +3 -0
 - package/lib/v2/paradigm/radar.js +13 -0
 - package/lib/v2/paradigm/router.js +3 -0
 - package/lib/v2/paradigm/writing.js +44 -0
 - package/lib/v2/patagonia/maintainer.js +3 -0
 - package/lib/v2/patagonia/new-arrivals.js +61 -0
 - package/lib/v2/patagonia/radar.js +23 -0
 - package/lib/v2/patagonia/router.js +3 -0
 - package/lib/v2/patagonia/templates/product-description.art +4 -0
 - package/lib/v2/penguin-random-house/articles.js +27 -0
 - package/lib/v2/penguin-random-house/maintainer.js +4 -0
 - package/lib/v2/penguin-random-house/radar.js +19 -0
 - package/lib/v2/penguin-random-house/router.js +4 -0
 - package/lib/v2/penguin-random-house/templates/articleHeader.art +5 -0
 - package/lib/v2/penguin-random-house/templates/book.art +4 -0
 - package/lib/v2/penguin-random-house/thereaddown.js +27 -0
 - package/lib/v2/penguin-random-house/utils.js +119 -0
 - package/lib/v2/people/index.js +4 -0
 - package/lib/v2/people/router.js +1 -1
 - package/lib/v2/peopo/maintainer.js +3 -0
 - package/lib/v2/peopo/radar.js +13 -0
 - package/lib/v2/peopo/router.js +3 -0
 - package/lib/v2/peopo/topic.js +46 -0
 - package/lib/v2/phoronix/index.js +107 -0
 - package/lib/v2/phoronix/maintainer.js +3 -0
 - package/lib/v2/phoronix/radar.js +13 -0
 - package/lib/v2/phoronix/router.js +3 -0
 - package/lib/v2/pianyuan/app.js +34 -0
 - package/lib/v2/pianyuan/maintainer.js +4 -0
 - package/lib/v2/pianyuan/radar.js +13 -0
 - package/lib/v2/pianyuan/router.js +4 -0
 - package/lib/v2/pianyuan/search.js +45 -0
 - package/lib/v2/pianyuan/utils.js +88 -0
 - package/lib/v2/picnob/maintainer.js +3 -0
 - package/lib/v2/picnob/radar.js +13 -0
 - package/lib/v2/picnob/router.js +3 -0
 - package/lib/v2/picnob/templates/desc.art +13 -0
 - package/lib/v2/picnob/user.js +61 -0
 - package/lib/v2/picuki/maintainer.js +1 -1
 - package/lib/v2/picuki/profile.js +24 -10
 - package/lib/v2/picuki/templates/video.art +3 -0
 - package/lib/v2/picuki/utils.js +21 -0
 - package/lib/v2/pikabu/community.js +37 -0
 - package/lib/v2/pikabu/maintainer.js +5 -0
 - package/lib/v2/pikabu/radar.js +25 -0
 - package/lib/v2/pikabu/router.js +4 -0
 - package/lib/v2/pikabu/templates/video.art +8 -0
 - package/lib/v2/pikabu/user.js +46 -0
 - package/lib/v2/pikabu/utils.js +43 -0
 - package/lib/v2/pincong/hot.js +28 -0
 - package/lib/v2/pincong/index.js +34 -0
 - package/lib/v2/pincong/maintainer.js +5 -0
 - package/lib/v2/pincong/radar.js +35 -0
 - package/lib/v2/pincong/router.js +5 -0
 - package/lib/v2/pincong/topic.js +25 -0
 - package/lib/v2/pincong/utils.js +22 -0
 - package/lib/v2/pingwest/maintainer.js +5 -0
 - package/lib/v2/pingwest/radar.js +25 -0
 - package/lib/v2/pingwest/router.js +5 -0
 - package/lib/v2/pingwest/status.js +47 -0
 - package/lib/v2/pingwest/tag.js +43 -0
 - package/lib/v2/pingwest/user.js +59 -0
 - package/lib/v2/pingwest/utils.js +92 -0
 - package/lib/v2/pixabay/maintainer.js +3 -0
 - package/lib/v2/pixabay/radar.js +13 -0
 - package/lib/v2/pixabay/router.js +3 -0
 - package/lib/v2/pixabay/search.js +50 -0
 - package/lib/v2/pixabay/templates/img.art +1 -0
 - package/lib/v2/pixiv/api/getBookmarks.js +23 -0
 - package/lib/v2/pixiv/api/getIllustFollows.js +20 -0
 - package/lib/v2/pixiv/api/getIllusts.js +22 -0
 - package/lib/v2/pixiv/api/getRanking.js +30 -0
 - package/lib/v2/pixiv/api/getUserDetail.js +27 -0
 - package/lib/v2/pixiv/api/searchIllust.js +24 -0
 - package/lib/v2/pixiv/api/searchPopularIllust.js +23 -0
 - package/lib/v2/pixiv/bookmarks.js +40 -0
 - package/lib/v2/pixiv/illustfollow.js +34 -0
 - package/lib/v2/pixiv/maintainer.js +8 -0
 - package/lib/v2/pixiv/novels.js +44 -0
 - package/lib/v2/pixiv/pixiv-got.js +65 -0
 - package/lib/v2/pixiv/radar.js +43 -0
 - package/lib/v2/pixiv/ranking.js +92 -0
 - package/lib/v2/pixiv/router.js +8 -0
 - package/lib/v2/pixiv/search.js +51 -0
 - package/lib/v2/pixiv/token.js +86 -0
 - package/lib/v2/pixiv/user.js +38 -0
 - package/lib/v2/piyao/jrpy.js +39 -0
 - package/lib/v2/piyao/maintainer.js +3 -0
 - package/lib/v2/piyao/radar.js +13 -0
 - package/lib/v2/piyao/router.js +3 -0
 - package/lib/v2/pku/maintainer.js +4 -0
 - package/lib/v2/pku/nsd.js +69 -0
 - package/lib/v2/pku/radar.js +28 -0
 - package/lib/v2/pku/router.js +4 -0
 - package/lib/v2/pku/ss/admission.js +15 -0
 - package/lib/v2/pku/ss/common.js +37 -0
 - package/lib/v2/pku/ss/notice.js +15 -0
 - package/lib/v2/pku/ss/pg_admin.js +15 -0
 - package/lib/v2/playno1/av.js +41 -0
 - package/lib/v2/playno1/maintainer.js +4 -0
 - package/lib/v2/playno1/radar.js +21 -0
 - package/lib/v2/playno1/router.js +4 -0
 - package/lib/v2/playno1/st.js +36 -0
 - package/lib/v2/playno1/utils.js +32 -0
 - package/lib/v2/plurk/anonymous.js +23 -0
 - package/lib/v2/plurk/hotlinks.js +20 -0
 - package/lib/v2/plurk/maintainer.js +9 -0
 - package/lib/v2/plurk/news.js +23 -0
 - package/lib/v2/plurk/radar.js +56 -0
 - package/lib/v2/plurk/router.js +9 -0
 - package/lib/v2/plurk/search.js +27 -0
 - package/lib/v2/plurk/top.js +29 -0
 - package/lib/v2/plurk/topic.js +33 -0
 - package/lib/v2/plurk/user.js +31 -0
 - package/lib/v2/plurk/utils.js +56 -0
 - package/lib/v2/pmthinking/index.js +61 -0
 - package/lib/v2/pmthinking/maintainer.js +3 -0
 - package/lib/v2/pmthinking/radar.js +13 -0
 - package/lib/v2/pmthinking/router.js +3 -0
 - package/lib/v2/pmthinking/templates/description.art +4 -0
 - package/lib/v2/pnas/index.js +101 -0
 - package/lib/v2/pnas/maintainer.js +3 -0
 - package/lib/v2/pnas/radar.js +13 -0
 - package/lib/v2/pnas/router.js +3 -0
 - package/lib/v2/pnas/templates/article.art +8 -0
 - package/lib/v2/polkadot/home.js +34 -0
 - package/lib/v2/polkadot/maintainer.js +3 -0
 - package/lib/v2/polkadot/radar.js +13 -0
 - package/lib/v2/polkadot/router.js +3 -0
 - package/lib/v2/postman/maintainer.js +3 -0
 - package/lib/v2/postman/radar.js +13 -0
 - package/lib/v2/postman/release-notes.js +27 -0
 - package/lib/v2/postman/router.js +3 -0
 - package/lib/v2/prestige-av/maintainer.js +3 -0
 - package/lib/v2/prestige-av/radar.js +18 -0
 - package/lib/v2/prestige-av/router.js +3 -0
 - package/lib/v2/prestige-av/series.js +42 -0
 - package/lib/v2/producthunt/templates/descImg.art +2 -2
 - package/lib/v2/producthunt/today.js +8 -5
 - package/lib/v2/pts/curations.js +44 -0
 - package/lib/v2/pts/index.js +68 -0
 - package/lib/v2/pts/live.js +49 -0
 - package/lib/v2/pts/maintainer.js +7 -0
 - package/lib/v2/pts/projects.js +44 -0
 - package/lib/v2/pts/radar.js +44 -2
 - package/lib/v2/pts/router.js +5 -1
 - package/lib/v2/pts/templates/description.art +6 -0
 - package/lib/v2/pts/templates/live.art +6 -0
 - package/lib/v2/putty/changes.js +36 -0
 - package/lib/v2/putty/maintainer.js +3 -0
 - package/lib/v2/putty/radar.js +13 -0
 - package/lib/v2/putty/router.js +3 -0
 - package/lib/v2/qdaily/index.js +87 -0
 - package/lib/v2/qdaily/maintainer.js +3 -0
 - package/lib/v2/qdaily/radar.js +25 -0
 - package/lib/v2/qdaily/router.js +3 -0
 - package/lib/v2/qdaily/templates/article.art +5 -0
 - package/lib/v2/qdu/jwc.js +58 -0
 - package/lib/v2/qdu/maintainer.js +3 -0
 - package/lib/v2/qdu/radar.js +13 -0
 - package/lib/v2/qdu/router.js +3 -0
 - package/lib/v2/qianp/maintainer.js +3 -0
 - package/lib/v2/qianp/news.js +48 -0
 - package/lib/v2/qianp/radar.js +13 -0
 - package/lib/v2/qianp/router.js +3 -0
 - package/lib/v2/qianzhan/column.js +50 -0
 - package/lib/v2/qianzhan/maintainer.js +4 -0
 - package/lib/v2/qianzhan/radar.js +26 -0
 - package/lib/v2/qianzhan/rank.js +40 -0
 - package/lib/v2/qianzhan/router.js +4 -0
 - package/lib/v2/qidian/author.js +41 -0
 - package/lib/v2/qidian/chapter.js +37 -0
 - package/lib/v2/qidian/forum.js +39 -0
 - package/lib/v2/qidian/free-next.js +42 -0
 - package/lib/v2/qidian/free.js +45 -0
 - package/lib/v2/qidian/maintainer.js +7 -0
 - package/lib/v2/qidian/radar.js +41 -0
 - package/lib/v2/qidian/router.js +7 -0
 - package/lib/v2/qidian/templates/description.art +5 -0
 - package/lib/v2/qingting/channel.js +32 -0
 - package/lib/v2/qingting/maintainer.js +4 -0
 - package/lib/v2/qingting/podcast.js +77 -0
 - package/lib/v2/qingting/radar.js +19 -0
 - package/lib/v2/qingting/router.js +4 -0
 - package/lib/v2/qipamaijia/index.js +32 -0
 - package/lib/v2/qipamaijia/maintainer.js +3 -0
 - package/lib/v2/qipamaijia/radar.js +13 -0
 - package/lib/v2/qipamaijia/router.js +3 -0
 - package/lib/v2/qiyoujiage/maintainer.js +3 -0
 - package/lib/v2/qiyoujiage/price.js +28 -0
 - package/lib/v2/qiyoujiage/radar.js +13 -0
 - package/lib/v2/qiyoujiage/router.js +3 -0
 - package/lib/v2/qlu/maintainer.js +3 -0
 - package/lib/v2/qlu/notice.js +54 -0
 - package/lib/v2/qlu/radar.js +13 -0
 - package/lib/v2/qlu/router.js +3 -0
 - package/lib/v2/qoo-app/apps/card.js +38 -0
 - package/lib/v2/qoo-app/apps/comment.js +43 -0
 - package/lib/v2/qoo-app/apps/note.js +47 -0
 - package/lib/v2/qoo-app/apps/post.js +51 -0
 - package/lib/v2/qoo-app/maintainer.js +11 -0
 - package/lib/v2/qoo-app/news.js +41 -0
 - package/lib/v2/qoo-app/notes/note.js +43 -0
 - package/lib/v2/qoo-app/notes/topic.js +20 -0
 - package/lib/v2/qoo-app/notes/user.js +20 -0
 - package/lib/v2/qoo-app/radar.js +73 -0
 - package/lib/v2/qoo-app/router.js +11 -0
 - package/lib/v2/qoo-app/templates/comment.art +3 -0
 - package/lib/v2/qoo-app/templates/note.art +5 -0
 - package/lib/v2/qoo-app/user/appComment.js +41 -0
 - package/lib/v2/qoo-app/utils.js +57 -0
 - package/lib/v2/qq/fact/index.js +61 -0
 - package/lib/v2/qq/kg/cache.js +28 -0
 - package/lib/v2/qq/kg/reply.js +21 -0
 - package/lib/v2/qq/kg/user.js +50 -0
 - package/lib/v2/qq/maintainer.js +3 -0
 - package/lib/v2/qq/radar.js +22 -0
 - package/lib/v2/qq/router.js +3 -0
 - package/lib/v2/qq/templates/article.art +19 -0
 - package/lib/v2/qweather/3days.js +1 -1
 - package/lib/v2/qweather/maintainer.js +2 -2
 - package/lib/v2/qweather/now.js +2 -3
 - package/lib/v2/qweather/radar.js +15 -0
 - package/lib/v2/radio/album.js +106 -0
 - package/lib/v2/radio/index.js +55 -0
 - package/lib/v2/radio/maintainer.js +5 -0
 - package/lib/v2/radio/radar.js +25 -0
 - package/lib/v2/radio/router.js +5 -0
 - package/lib/v2/radio/templates/description.art +8 -0
 - package/lib/v2/radio/zhibo.js +73 -0
 - package/lib/v2/rarehistoricalphotos/index.js +28 -0
 - package/lib/v2/rarehistoricalphotos/maintainer.js +3 -0
 - package/lib/v2/rarehistoricalphotos/radar.js +13 -0
 - package/lib/v2/rarehistoricalphotos/router.js +3 -0
 - package/lib/v2/reactnewsletter/maintainer.js +4 -0
 - package/lib/v2/reactnewsletter/radar.js +13 -0
 - package/lib/v2/reactnewsletter/reactnewsletter.js +25 -0
 - package/lib/v2/reactnewsletter/router.js +3 -0
 - package/lib/v2/readhub/index.js +3 -3
 - package/lib/v2/readhub/maintainer.js +1 -1
 - package/lib/v2/remnote/changelog.js +33 -0
 - package/lib/v2/remnote/maintainer.js +3 -0
 - package/lib/v2/remnote/radar.js +13 -0
 - package/lib/v2/remnote/router.js +3 -0
 - package/lib/v2/researchgate/maintainer.js +3 -0
 - package/lib/v2/researchgate/publications.js +70 -0
 - package/lib/v2/researchgate/radar.js +13 -0
 - package/lib/v2/researchgate/router.js +3 -0
 - package/lib/v2/reuters/common.js +67 -0
 - package/lib/v2/reuters/investigates.js +39 -0
 - package/lib/v2/reuters/maintainer.js +6 -0
 - package/lib/v2/reuters/migration_prompt.js +3 -0
 - package/lib/v2/reuters/radar.js +19 -0
 - package/lib/v2/reuters/router.js +6 -0
 - package/lib/v2/reuters/templates/description.art +44 -0
 - package/lib/v2/rodong/maintainer.js +3 -0
 - package/lib/v2/rodong/news.js +45 -0
 - package/lib/v2/rodong/radar.js +13 -0
 - package/lib/v2/rodong/router.js +3 -0
 - package/lib/v2/ruancan/category.js +8 -0
 - package/lib/v2/ruancan/index.js +3 -50
 - package/lib/v2/ruancan/maintainer.js +3 -3
 - package/lib/v2/ruancan/radar.js +12 -6
 - package/lib/v2/ruancan/router.js +4 -1
 - package/lib/v2/ruancan/search.js +8 -0
 - package/lib/v2/ruancan/user.js +8 -0
 - package/lib/v2/ruancan/utils.js +66 -0
 - package/lib/v2/rustcc/jobs.js +39 -0
 - package/lib/v2/rustcc/maintainer.js +3 -0
 - package/lib/v2/rustcc/radar.js +13 -0
 - package/lib/v2/rustcc/router.js +3 -0
 - package/lib/v2/sakurazaka46/blog.js +54 -0
 - package/lib/v2/sakurazaka46/maintainer.js +4 -0
 - package/lib/v2/sakurazaka46/news.js +51 -0
 - package/lib/v2/sakurazaka46/radar.js +19 -0
 - package/lib/v2/sakurazaka46/router.js +4 -0
 - package/lib/v2/samsung/maintainer.js +3 -0
 - package/lib/v2/samsung/radar.js +13 -0
 - package/lib/v2/samsung/research/blog.js +49 -0
 - package/lib/v2/samsung/router.js +3 -0
 - package/lib/v2/saraba1st/digest.js +79 -0
 - package/lib/v2/saraba1st/maintainer.js +4 -0
 - package/lib/v2/saraba1st/radar.js +25 -0
 - package/lib/v2/saraba1st/router.js +4 -0
 - package/lib/v2/saraba1st/templates/digest.art +5 -0
 - package/lib/v2/saraba1st/thread.js +63 -0
 - package/lib/v2/sass/gs/index.js +55 -0
 - package/lib/v2/sass/maintainer.js +3 -0
 - package/lib/v2/sass/radar.js +13 -0
 - package/lib/v2/sass/router.js +3 -0
 - package/lib/v2/scau/maintainer.js +3 -0
 - package/lib/v2/scau/radar.js +13 -0
 - package/lib/v2/scau/router.js +3 -0
 - package/lib/v2/scau/yjs.js +27 -0
 - package/lib/v2/science/cover.js +69 -0
 - package/lib/v2/science/current.js +42 -0
 - package/lib/v2/science/early.js +33 -0
 - package/lib/v2/science/maintainer.js +5 -0
 - package/lib/v2/science/radar.js +25 -0
 - package/lib/v2/science/router.js +5 -0
 - package/lib/v2/science/templates/article.art +2 -0
 - package/lib/v2/science/templates/cover.art +2 -0
 - package/lib/v2/science/utils.js +64 -0
 - package/lib/v2/sciencedirect/journal.js +9 -2
 - package/lib/v2/scitation/journal.js +58 -0
 - package/lib/v2/scitation/maintainer.js +4 -0
 - package/lib/v2/scitation/radar.js +19 -0
 - package/lib/v2/scitation/router.js +4 -0
 - package/lib/v2/scitation/section.js +76 -0
 - package/lib/v2/scitation/templates/description.art +8 -0
 - package/lib/v2/scitation/utils.js +29 -0
 - package/lib/v2/scmp/index.js +114 -0
 - package/lib/v2/scmp/maintainer.js +3 -0
 - package/lib/v2/scmp/radar.js +13 -0
 - package/lib/v2/scmp/router.js +3 -0
 - package/lib/v2/scnu/cs/match.js +36 -0
 - package/lib/v2/scnu/jw.js +33 -0
 - package/lib/v2/scnu/library.js +33 -0
 - package/lib/v2/scnu/maintainer.js +7 -0
 - package/lib/v2/scnu/radar.js +45 -0
 - package/lib/v2/scnu/router.js +7 -0
 - package/lib/v2/scnu/ss.js +28 -0
 - package/lib/v2/scnu/yjs.js +24 -0
 - package/lib/v2/sctv/maintainer.js +3 -0
 - package/lib/v2/sctv/programme.js +80 -0
 - package/lib/v2/sctv/radar.js +13 -0
 - package/lib/v2/sctv/router.js +3 -0
 - package/lib/v2/sctv/templates/description.art +3 -0
 - package/lib/v2/scut/maintainer.js +8 -0
 - package/lib/v2/scut/radar.js +33 -0
 - package/lib/v2/scut/router.js +8 -0
 - package/lib/v2/scut/scet/notice.js +31 -0
 - package/lib/v2/scut/seie/news_center.js +52 -0
 - package/lib/v2/scut/yjs.js +30 -0
 - package/lib/v2/scvtc/maintainer.js +3 -0
 - package/lib/v2/scvtc/radar.js +13 -0
 - package/lib/v2/scvtc/router.js +3 -0
 - package/lib/v2/scvtc/xygg.js +40 -0
 - package/lib/v2/sdu/extractor/index.js +5 -5
 - package/lib/v2/sdu/extractor/sdrj.js +2 -2
 - package/lib/v2/sdu/extractor/view.js +2 -2
 - package/lib/v2/sdu/extractor/wh/jwc.js +2 -2
 - package/lib/v2/sdu/extractor/wh/news.js +2 -2
 - package/lib/v2/sdu/wh/jwc.js +1 -1
 - package/lib/v2/sdu/wh/news.js +1 -1
 - package/lib/v2/secrss/author.js +24 -0
 - package/lib/v2/secrss/category.js +26 -0
 - package/lib/v2/secrss/maintainer.js +4 -0
 - package/lib/v2/secrss/radar.js +19 -0
 - package/lib/v2/secrss/router.js +4 -0
 - package/lib/v2/seekingalpha/index.js +56 -0
 - package/lib/v2/seekingalpha/maintainer.js +3 -0
 - package/lib/v2/seekingalpha/radar.js +13 -0
 - package/lib/v2/seekingalpha/router.js +3 -0
 - package/lib/v2/segmentfault/blogs.js +38 -0
 - package/lib/v2/segmentfault/channel.js +2 -2
 - package/lib/v2/segmentfault/maintainer.js +1 -0
 - package/lib/v2/segmentfault/radar.js +8 -2
 - package/lib/v2/segmentfault/router.js +1 -0
 - package/lib/v2/sehuatang/index.js +131 -0
 - package/lib/v2/sehuatang/maintainer.js +7 -0
 - package/lib/v2/sehuatang/radar.js +19 -0
 - package/lib/v2/sehuatang/router.js +7 -0
 - package/lib/v2/sensortower/blog.js +69 -0
 - package/lib/v2/sensortower/maintainer.js +3 -0
 - package/lib/v2/sensortower/radar.js +13 -0
 - package/lib/v2/sensortower/router.js +3 -0
 - package/lib/v2/sensortower/templates/description.art +9 -0
 - package/lib/v2/setn/index.js +100 -0
 - package/lib/v2/setn/maintainer.js +3 -0
 - package/lib/v2/setn/radar.js +53 -0
 - package/lib/v2/setn/router.js +3 -0
 - package/lib/v2/shiep/index.js +91 -0
 - package/lib/v2/shiep/maintainer.js +3 -0
 - package/lib/v2/shiep/radar.js +181 -0
 - package/lib/v2/shiep/router.js +3 -0
 - package/lib/v2/shiep/templates/description.art +1 -0
 - package/lib/v2/shmeea/self-study.js +4 -4
 - package/lib/v2/shmtu/jwc.js +57 -0
 - package/lib/v2/shmtu/maintainer.js +5 -0
 - package/lib/v2/shmtu/portal.js +81 -0
 - package/lib/v2/shmtu/radar.js +29 -0
 - package/lib/v2/shmtu/router.js +5 -0
 - package/lib/v2/shmtu/templates/portal.art +30 -0
 - package/lib/v2/shmtu/www.js +58 -0
 - package/lib/v2/shoppingdesign/maintainer.js +3 -0
 - package/lib/v2/shoppingdesign/posts.js +43 -0
 - package/lib/v2/shoppingdesign/radar.js +13 -0
 - package/lib/v2/shoppingdesign/router.js +3 -0
 - package/lib/v2/shuiguopai/index.js +76 -0
 - package/lib/v2/shuiguopai/maintainer.js +3 -0
 - package/lib/v2/shuiguopai/radar.js +13 -0
 - package/lib/v2/shuiguopai/router.js +3 -0
 - package/lib/v2/shuiguopai/templates/description.art +6 -0
 - package/lib/v2/sicau/dky.js +12 -13
 - package/lib/v2/sicau/yan.js +13 -14
 - package/lib/v2/sigsac/ccs.js +57 -0
 - package/lib/v2/sigsac/maintainer.js +3 -0
 - package/lib/v2/sigsac/radar.js +13 -0
 - package/lib/v2/sigsac/router.js +3 -0
 - package/lib/v2/simpleinfo/index.js +50 -0
 - package/lib/v2/simpleinfo/maintainer.js +3 -0
 - package/lib/v2/simpleinfo/radar.js +19 -0
 - package/lib/v2/simpleinfo/router.js +3 -0
 - package/lib/v2/simpleinfo/templates/description.art +6 -0
 - package/lib/v2/sinchew/index.js +68 -0
 - package/lib/v2/sinchew/maintainer.js +5 -0
 - package/lib/v2/sinchew/radar.js +25 -0
 - package/lib/v2/sinchew/router.js +4 -0
 - package/lib/v2/sinchew/templates/images.art +4 -0
 - package/lib/v2/sis001/forum.js +62 -0
 - package/lib/v2/sis001/maintainer.js +3 -0
 - package/lib/v2/sis001/radar.js +13 -0
 - package/lib/v2/sis001/router.js +3 -0
 - package/lib/v2/skysports/maintainer.js +3 -0
 - package/lib/v2/skysports/news.js +55 -0
 - package/lib/v2/skysports/radar.js +13 -0
 - package/lib/v2/skysports/router.js +3 -0
 - package/lib/v2/slowmist/maintainer.js +3 -0
 - package/lib/v2/slowmist/radar.js +13 -0
 - package/lib/v2/slowmist/router.js +3 -0
 - package/lib/v2/slowmist/slowmist.js +39 -0
 - package/lib/v2/smzdm/article.js +43 -0
 - package/lib/v2/smzdm/baoliao.js +43 -0
 - package/lib/v2/smzdm/haowen.js +48 -0
 - package/lib/v2/smzdm/haowen_fenlei.js +56 -0
 - package/lib/v2/smzdm/keyword.js +42 -0
 - package/lib/v2/smzdm/maintainer.js +8 -0
 - package/lib/v2/smzdm/radar.js +48 -0
 - package/lib/v2/smzdm/ranking.js +56 -0
 - package/lib/v2/smzdm/router.js +8 -0
 - package/lib/v2/snowpeak/maintainer.js +3 -0
 - package/lib/v2/snowpeak/radar.js +13 -0
 - package/lib/v2/snowpeak/router.js +3 -0
 - package/lib/v2/snowpeak/templates/new-arrivals.art +11 -0
 - package/lib/v2/snowpeak/us-new-arrivals.js +45 -0
 - package/lib/v2/sobooks/date.js +7 -0
 - package/lib/v2/sobooks/index.js +7 -0
 - package/lib/v2/sobooks/maintainer.js +5 -0
 - package/lib/v2/sobooks/radar.js +25 -0
 - package/lib/v2/sobooks/router.js +5 -0
 - package/lib/v2/sobooks/tag.js +7 -0
 - package/lib/v2/sobooks/utils.js +50 -0
 - package/lib/v2/solidot/main.js +5 -0
 - package/lib/v2/sony/downloads.js +47 -0
 - package/lib/v2/sony/maintainer.js +3 -0
 - package/lib/v2/sony/radar.js +13 -0
 - package/lib/v2/sony/router.js +3 -0
 - package/lib/v2/sony/templates/software-description.art +4 -0
 - package/lib/v2/southcn/maintainer.js +4 -0
 - package/lib/v2/southcn/nfapp/column.js +45 -0
 - package/lib/v2/southcn/nfapp/reporter.js +33 -0
 - package/lib/v2/southcn/nfapp/utils.js +23 -0
 - package/lib/v2/southcn/radar.js +12 -0
 - package/lib/v2/southcn/router.js +4 -0
 - package/lib/v2/southcn/templates/description.art +6 -0
 - package/lib/v2/springer/journal.js +72 -0
 - package/lib/v2/springer/maintainer.js +3 -0
 - package/lib/v2/springer/radar.js +13 -0
 - package/lib/v2/springer/router.js +3 -0
 - package/lib/v2/springer/templates/description.art +12 -0
 - package/lib/v2/sputniknews/index.js +2 -1
 - package/lib/v2/sse/convert.js +39 -0
 - package/lib/v2/sse/disclosure.js +46 -0
 - package/lib/v2/sse/inquire.js +45 -0
 - package/lib/v2/sse/lawandrules.js +43 -0
 - package/lib/v2/sse/maintainer.js +7 -0
 - package/lib/v2/sse/radar.js +41 -0
 - package/lib/v2/sse/renewal.js +57 -0
 - package/lib/v2/sse/router.js +7 -0
 - package/lib/v2/sse/templates/inquire.art +7 -0
 - package/lib/v2/sse/templates/renewal.art +13 -0
 - package/lib/v2/sspai/activity.js +83 -0
 - package/lib/v2/sspai/author.js +57 -0
 - package/lib/v2/sspai/bookmarks.js +41 -0
 - package/lib/v2/sspai/column.js +62 -0
 - package/lib/v2/sspai/index.js +37 -0
 - package/lib/v2/sspai/maintainer.js +14 -0
 - package/lib/v2/sspai/matrix.js +38 -0
 - package/lib/v2/sspai/radar.js +81 -0
 - package/lib/v2/sspai/router.js +14 -0
 - package/lib/v2/sspai/series.js +46 -0
 - package/lib/v2/sspai/seriesUpdate.js +36 -0
 - package/lib/v2/sspai/shortcutsGallery.js +29 -0
 - package/lib/v2/sspai/tag.js +42 -0
 - package/lib/v2/sspai/topic.js +50 -0
 - package/lib/v2/sspai/topics.js +37 -0
 - package/lib/v2/stcn/index.js +25 -32
 - package/lib/v2/stcn/maintainer.js +0 -3
 - package/lib/v2/stcn/radar.js +4 -22
 - package/lib/v2/stcn/router.js +1 -1
 - package/lib/v2/stdaily/digitalpaper.js +125 -0
 - package/lib/v2/stdaily/maintainer.js +3 -0
 - package/lib/v2/stdaily/radar.js +11 -0
 - package/lib/v2/stdaily/router.js +3 -0
 - package/lib/v2/stdaily/templates/description.art +16 -0
 - package/lib/v2/stheadline/maintainer.js +3 -0
 - package/lib/v2/stheadline/radar.js +13 -0
 - package/lib/v2/stheadline/router.js +3 -0
 - package/lib/v2/stheadline/std/realtime.js +46 -0
 - package/lib/v2/studygolang/go.js +5 -0
 - package/lib/v2/studygolang/jobs.js +7 -0
 - package/lib/v2/studygolang/maintainer.js +5 -0
 - package/lib/v2/studygolang/radar.js +25 -0
 - package/lib/v2/studygolang/router.js +5 -0
 - package/lib/v2/studygolang/utils.js +74 -0
 - package/lib/v2/studygolang/weekly.js +7 -0
 - package/lib/v2/supchina/index.js +67 -0
 - package/lib/v2/supchina/maintainer.js +4 -0
 - package/lib/v2/supchina/podcasts.js +66 -0
 - package/lib/v2/supchina/radar.js +19 -0
 - package/lib/v2/supchina/router.js +4 -0
 - package/lib/v2/sustech/bidding.js +34 -0
 - package/lib/v2/sustech/maintainer.js +5 -0
 - package/lib/v2/sustech/newshub-zh.js +39 -0
 - package/lib/v2/sustech/radar.js +29 -0
 - package/lib/v2/sustech/router.js +5 -0
 - package/lib/v2/sustech/yjs.js +29 -0
 - package/lib/v2/swjtu/jtys/yjs.js +55 -0
 - package/lib/v2/swjtu/jwc.js +67 -0
 - package/lib/v2/swjtu/jyzpxx.js +28 -0
 - package/lib/v2/swjtu/maintainer.js +6 -0
 - package/lib/v2/swjtu/radar.js +37 -0
 - package/lib/v2/swjtu/router.js +6 -0
 - package/lib/v2/swjtu/templates/job_desc.art +19 -0
 - package/lib/v2/swjtu/templates/job_detail.art +21 -0
 - package/lib/v2/swjtu/utils.js +33 -0
 - package/lib/v2/swjtu/xg.js +79 -0
 - package/lib/v2/swpu/cjxy.js +53 -0
 - package/lib/v2/swpu/is.js +53 -0
 - package/lib/v2/swpu/maintainer.js +2 -0
 - package/lib/v2/swpu/radar.js +12 -0
 - package/lib/v2/swpu/router.js +2 -0
 - package/lib/v2/szse/inquire.js +41 -0
 - package/lib/v2/szse/maintainer.js +3 -0
 - package/lib/v2/szse/projectdynamic.js +90 -0
 - package/lib/v2/szse/radar.js +21 -1
 - package/lib/v2/szse/router.js +3 -0
 - package/lib/v2/szse/rule.js +3 -3
 - package/lib/v2/szse/templates/description.art +19 -0
 - package/lib/v2/szse/templates/inquire.art +6 -0
 - package/lib/v2/szu/maintainer.js +3 -0
 - package/lib/v2/szu/radar.js +19 -0
 - package/lib/v2/szu/router.js +3 -0
 - package/lib/v2/szu/yz/index.js +51 -0
 - package/lib/v2/szu/yz/utils.js +74 -0
 - package/lib/v2/taiwannews/hot.js +52 -0
 - package/lib/v2/taiwannews/maintainer.js +3 -0
 - package/lib/v2/taiwannews/radar.js +13 -0
 - package/lib/v2/taiwannews/router.js +3 -0
 - package/lib/v2/taoguba/blog.js +84 -0
 - package/lib/v2/taoguba/index.js +82 -0
 - package/lib/v2/taoguba/maintainer.js +6 -0
 - package/lib/v2/taoguba/radar.js +19 -0
 - package/lib/v2/taoguba/router.js +6 -0
 - package/lib/v2/taptap/changelog.js +11 -10
 - package/lib/v2/taptap/maintainer.js +3 -1
 - package/lib/v2/taptap/radar.js +17 -0
 - package/lib/v2/taptap/review.js +83 -21
 - package/lib/v2/taptap/router.js +4 -1
 - package/lib/v2/taptap/templates/imagePost.art +3 -0
 - package/lib/v2/taptap/templates/videoPost.art +2 -1
 - package/lib/v2/taptap/topic.js +36 -30
 - package/lib/v2/taptap/utils.js +19 -13
 - package/lib/v2/techcrunch/maintainer.js +3 -0
 - package/lib/v2/techcrunch/news.js +38 -0
 - package/lib/v2/techcrunch/radar.js +13 -0
 - package/lib/v2/techcrunch/router.js +3 -0
 - package/lib/v2/techflowpost/express.js +33 -0
 - package/lib/v2/techflowpost/index.js +30 -0
 - package/lib/v2/techflowpost/maintainer.js +4 -0
 - package/lib/v2/techflowpost/radar.js +19 -0
 - package/lib/v2/techflowpost/router.js +5 -0
 - package/lib/v2/telegram/channel.js +78 -42
 - package/lib/v2/tencent/cloud/column.js +51 -0
 - package/lib/v2/tencent/maintainer.js +5 -0
 - package/lib/v2/tencent/news/author.js +44 -0
 - package/lib/v2/tencent/news/coronavirus/data.js +71 -0
 - package/lib/v2/tencent/news/coronavirus/total.js +34 -0
 - package/lib/v2/tencent/news/coronavirus/utils.js +17 -0
 - package/lib/v2/tencent/pvp/newsindex.js +64 -0
 - package/lib/v2/tencent/radar.js +42 -9
 - package/lib/v2/tencent/router.js +5 -0
 - package/lib/v2/tencent/templates/coronavirus/chinaTotal.art +6 -0
 - package/lib/v2/tencent/templates/coronavirus/data.art +4 -0
 - package/lib/v2/tesla/maintainer.js +3 -0
 - package/lib/v2/tesla/price/get-price.js +25 -0
 - package/lib/v2/tesla/price/index.js +41 -0
 - package/lib/v2/tesla/radar.js +13 -0
 - package/lib/v2/tesla/router.js +3 -0
 - package/lib/v2/test/index.js +94 -1
 - package/lib/v2/theatlantic/maintainer.js +3 -0
 - package/lib/v2/theatlantic/news.js +32 -0
 - package/lib/v2/theatlantic/radar.js +13 -0
 - package/lib/v2/theatlantic/router.js +3 -0
 - package/lib/v2/theatlantic/templates/article-description.art +19 -0
 - package/lib/v2/theatlantic/utils.js +54 -0
 - package/lib/v2/thecatcity/index.js +48 -0
 - package/lib/v2/thecatcity/maintainer.js +3 -0
 - package/lib/v2/thecatcity/radar.js +13 -0
 - package/lib/v2/thecatcity/router.js +3 -0
 - package/lib/v2/thecatcity/termsMap.js +30 -0
 - package/lib/v2/theinitium/full.js +169 -0
 - package/lib/v2/theinitium/maintainer.js +6 -0
 - package/lib/v2/theinitium/radar.js +25 -0
 - package/lib/v2/theinitium/router.js +3 -0
 - package/lib/v2/themoviedb/api-key.js +23 -0
 - package/lib/v2/themoviedb/collection.js +21 -0
 - package/lib/v2/themoviedb/episodes.js +27 -0
 - package/lib/v2/themoviedb/maintainer.js +7 -0
 - package/lib/v2/themoviedb/radar.js +73 -0
 - package/lib/v2/themoviedb/router.js +7 -0
 - package/lib/v2/themoviedb/seasons.js +31 -0
 - package/lib/v2/themoviedb/sheet.js +45 -0
 - package/lib/v2/themoviedb/templates/description.art +6 -0
 - package/lib/v2/themoviedb/trending.js +24 -0
 - package/lib/v2/themoviedb/utils.js +34 -0
 - package/lib/v2/thenewslens/index.js +79 -0
 - package/lib/v2/thenewslens/maintainer.js +10 -0
 - package/lib/v2/thenewslens/radar.js +55 -0
 - package/lib/v2/thenewslens/router.js +3 -0
 - package/lib/v2/thenewslens/templates/description.art +6 -0
 - package/lib/v2/thepaper/channel.js +16 -5
 - package/lib/v2/thepaper/featured.js +9 -5
 - package/lib/v2/thepaper/list.js +17 -5
 - package/lib/v2/thepaper/maintainer.js +4 -3
 - package/lib/v2/thepaper/radar.js +8 -2
 - package/lib/v2/thepaper/router.js +2 -1
 - package/lib/v2/thepaper/sidebar.js +24 -0
 - package/lib/v2/thepaper/templates/image_detail.art +6 -0
 - package/lib/v2/thepaper/templates/video_detail.art +13 -0
 - package/lib/v2/thepaper/utils.js +69 -46
 - package/lib/v2/theverge/index.js +98 -0
 - package/lib/v2/theverge/maintainer.js +3 -0
 - package/lib/v2/theverge/radar.js +13 -0
 - package/lib/v2/theverge/router.js +3 -0
 - package/lib/v2/thwiki/index.js +32 -0
 - package/lib/v2/thwiki/maintainer.js +3 -0
 - package/lib/v2/thwiki/radar.js +13 -0
 - package/lib/v2/thwiki/router.js +3 -0
 - package/lib/v2/tiktok/maintainer.js +3 -0
 - package/lib/v2/tiktok/radar.js +13 -0
 - package/lib/v2/tiktok/router.js +3 -0
 - package/lib/v2/tiktok/templates/user.art +3 -0
 - package/lib/v2/tiktok/user.js +56 -0
 - package/lib/v2/tingshuitz/changsha.js +43 -0
 - package/lib/v2/tingshuitz/dalian.js +29 -0
 - package/lib/v2/tingshuitz/dongguan.js +34 -0
 - package/lib/v2/tingshuitz/maintainer.js +12 -0
 - package/lib/v2/tingshuitz/nanjing.js +33 -0
 - package/lib/v2/tingshuitz/radar.js +78 -0
 - package/lib/v2/tingshuitz/router.js +12 -0
 - package/lib/v2/tingshuitz/wuhan.js +32 -0
 - package/lib/v2/tingshuitz/xian.js +31 -0
 - package/lib/v2/tingshuitz/xiaoshan.js +34 -0
 - package/lib/v2/tingshuitz/yangjiang.js +29 -0
 - package/lib/v2/tju/cic/index.js +113 -0
 - package/lib/v2/tju/maintainer.js +6 -0
 - package/lib/v2/tju/news/index.js +135 -0
 - package/lib/v2/tju/oaa/index.js +112 -0
 - package/lib/v2/tju/radar.js +97 -0
 - package/lib/v2/tju/router.js +6 -0
 - package/lib/v2/tju/yzb/index.js +121 -0
 - package/lib/v2/tongji/maintainer.js +4 -0
 - package/lib/v2/tongji/radar.js +21 -0
 - package/lib/v2/tongji/router.js +4 -0
 - package/lib/v2/tongji/sse/_article.js +25 -0
 - package/lib/v2/tongji/sse/notice.js +46 -0
 - package/lib/v2/tongji/yjs.js +27 -0
 - package/lib/v2/tradingview/blog.js +60 -0
 - package/lib/v2/tradingview/maintainer.js +3 -0
 - package/lib/v2/tradingview/radar.js +13 -0
 - package/lib/v2/tradingview/router.js +3 -0
 - package/lib/v2/tradingview/templates/description.art +4 -0
 - package/lib/v2/trending/allTrending.js +196 -0
 - package/lib/v2/trending/maintainer.js +3 -0
 - package/lib/v2/trending/radar.js +35 -0
 - package/lib/v2/trending/router.js +3 -0
 - package/lib/v2/trending/templates/content.art +25 -0
 - package/lib/v2/tribalfootball/latest.js +68 -0
 - package/lib/v2/tribalfootball/maintainer.js +3 -0
 - package/lib/v2/tribalfootball/radar.js +13 -0
 - package/lib/v2/tribalfootball/router.js +3 -0
 - package/lib/v2/tribalfootball/templates/plus_header.art +6 -0
 - package/lib/v2/trow/portal.js +13 -3
 - package/lib/v2/tvb/maintainer.js +3 -0
 - package/lib/v2/tvb/news.js +80 -0
 - package/lib/v2/tvb/radar.js +13 -0
 - package/lib/v2/tvb/router.js +3 -0
 - package/lib/v2/tvb/templates/description.art +6 -0
 - package/lib/v2/twitter/api_fallback_common.js +17 -0
 - package/lib/v2/twitter/collection.js +55 -0
 - package/lib/v2/twitter/developer-api/search.js +22 -0
 - package/lib/v2/twitter/developer-api/user.js +29 -0
 - package/lib/v2/twitter/followings.js +44 -0
 - package/lib/v2/twitter/keyword.js +5 -0
 - package/lib/v2/twitter/likes.js +22 -0
 - package/lib/v2/twitter/list.js +38 -0
 - package/lib/v2/twitter/maintainer.js +10 -0
 - package/lib/v2/twitter/radar.js +73 -0
 - package/lib/v2/twitter/router.js +10 -0
 - package/lib/v2/twitter/trends.js +24 -0
 - package/lib/v2/twitter/user.js +5 -0
 - package/lib/v2/twitter/utils.js +450 -0
 - package/lib/v2/twitter/web-api/twitter-api.js +220 -0
 - package/lib/v2/twitter/web-api/twitter-got.js +91 -0
 - package/lib/v2/twreporter/category.js +17 -8
 - package/lib/v2/twreporter/fetch_article.js +1 -1
 - package/lib/v2/tynu/maintainer.js +3 -0
 - package/lib/v2/tynu/radar.js +13 -0
 - package/lib/v2/tynu/router.js +3 -0
 - package/lib/v2/tynu/tynu.js +39 -0
 - package/lib/v2/typora/changelog-dev.js +31 -0
 - package/lib/v2/typora/changelog.js +40 -0
 - package/lib/v2/typora/maintainer.js +4 -0
 - package/lib/v2/typora/radar.js +21 -0
 - package/lib/v2/typora/router.js +4 -0
 - package/lib/v2/u3c3/index.js +59 -0
 - package/lib/v2/u3c3/maintainer.js +3 -0
 - package/lib/v2/u3c3/radar.js +29 -0
 - package/lib/v2/u3c3/router.js +3 -0
 - package/lib/v2/u9a9/index.js +66 -0
 - package/lib/v2/u9a9/maintainer.js +4 -0
 - package/lib/v2/u9a9/radar.js +19 -0
 - package/lib/v2/u9a9/router.js +4 -0
 - package/lib/v2/uber/blog.js +58 -0
 - package/lib/v2/uber/maintainer.js +3 -0
 - package/lib/v2/uber/radar.js +13 -0
 - package/lib/v2/uber/router.js +3 -0
 - package/lib/v2/ucas/ai.js +28 -0
 - package/lib/v2/ucas/maintainer.js +1 -0
 - package/lib/v2/ucas/radar.js +41 -0
 - package/lib/v2/ucas/router.js +1 -0
 - package/lib/v2/uchicago/current.js +80 -0
 - package/lib/v2/uchicago/maintainer.js +3 -0
 - package/lib/v2/uchicago/radar.js +13 -0
 - package/lib/v2/uchicago/router.js +3 -0
 - package/lib/v2/udn/breaking-news.js +85 -0
 - package/lib/v2/udn/global/index.js +67 -0
 - package/lib/v2/udn/global/tag.js +51 -0
 - package/lib/v2/udn/maintainer.js +5 -0
 - package/lib/v2/udn/radar.js +27 -0
 - package/lib/v2/udn/router.js +5 -0
 - package/lib/v2/udn/templates/figure.art +4 -0
 - package/lib/v2/uestc/auto.js +45 -0
 - package/lib/v2/uestc/cqe.js +60 -0
 - package/lib/v2/uestc/gr.js +48 -0
 - package/lib/v2/uestc/jwc.js +52 -0
 - package/lib/v2/uestc/maintainer.js +12 -0
 - package/lib/v2/uestc/news.js +51 -0
 - package/lib/v2/uestc/radar.js +69 -0
 - package/lib/v2/uestc/router.js +12 -0
 - package/lib/v2/uestc/scse.js +90 -0
 - package/lib/v2/uestc/sice.js +46 -0
 - package/lib/v2/uestc/sise.js +80 -0
 - package/lib/v2/unusualwhales/maintainer.js +3 -0
 - package/lib/v2/unusualwhales/news.js +24 -0
 - package/lib/v2/unusualwhales/radar.js +13 -0
 - package/lib/v2/unusualwhales/router.js +3 -0
 - package/lib/v2/upc/jsj.js +77 -0
 - package/lib/v2/upc/main.js +72 -0
 - package/lib/v2/upc/maintainer.js +5 -0
 - package/lib/v2/upc/radar.js +53 -0
 - package/lib/v2/upc/router.js +5 -0
 - package/lib/v2/upc/yjs.js +28 -0
 - package/lib/v2/uptimerobot/maintainer.js +3 -0
 - package/lib/v2/uptimerobot/radar.js +13 -0
 - package/lib/v2/uptimerobot/router.js +3 -0
 - package/lib/v2/uptimerobot/rss.js +126 -0
 - package/lib/v2/uptimerobot/templates/rss.art +20 -0
 - package/lib/v2/uraaka-joshi/maintainer.js +4 -0
 - package/lib/v2/uraaka-joshi/radar.js +19 -0
 - package/lib/v2/uraaka-joshi/router.js +4 -0
 - package/lib/v2/uraaka-joshi/uraaka-joshi-user.js +105 -0
 - package/lib/v2/uraaka-joshi/uraaka-joshi.js +89 -0
 - package/lib/v2/urbandictionary/maintainer.js +3 -0
 - package/lib/v2/urbandictionary/radar.js +13 -0
 - package/lib/v2/urbandictionary/random.js +24 -0
 - package/lib/v2/urbandictionary/router.js +3 -0
 - package/lib/v2/urbandictionary/templates/definition.art +11 -0
 - package/lib/v2/usenix/maintainer.js +3 -0
 - package/lib/v2/usenix/radar.js +13 -0
 - package/lib/v2/usenix/router.js +3 -0
 - package/lib/v2/usenix/usenix.js +63 -0
 - package/lib/v2/usepanda/index.js +26 -0
 - package/lib/v2/usepanda/maintainer.js +3 -0
 - package/lib/v2/usepanda/radar.js +11 -0
 - package/lib/v2/usepanda/router.js +3 -0
 - package/lib/v2/ustb/maintainer.js +1 -0
 - package/lib/v2/ustb/radar.js +8 -0
 - package/lib/v2/ustb/router.js +1 -0
 - package/lib/v2/ustb/yzxc/tzgg.js +49 -0
 - package/lib/v2/ustc/eeis.js +59 -0
 - package/lib/v2/ustc/gs.js +59 -0
 - package/lib/v2/ustc/index.js +79 -0
 - package/lib/v2/ustc/job.js +193 -0
 - package/lib/v2/ustc/jwc.js +57 -0
 - package/lib/v2/ustc/maintainer.js +8 -0
 - package/lib/v2/ustc/radar.js +53 -0
 - package/lib/v2/ustc/router.js +8 -0
 - package/lib/v2/ustc/sist.js +59 -0
 - package/lib/v2/usts/jwch.js +56 -0
 - package/lib/v2/usts/maintainer.js +3 -0
 - package/lib/v2/usts/radar.js +25 -0
 - package/lib/v2/usts/router.js +3 -0
 - package/lib/v2/uw/gix/news.js +67 -0
 - package/lib/v2/uw/maintainer.js +3 -0
 - package/lib/v2/uw/radar.js +13 -0
 - package/lib/v2/uw/router.js +3 -0
 - package/lib/v2/v1tx/index.js +36 -0
 - package/lib/v2/v1tx/maintainer.js +4 -0
 - package/lib/v2/v1tx/radar.js +13 -0
 - package/lib/v2/v1tx/router.js +3 -0
 - package/lib/v2/vcb-s/category.js +51 -0
 - package/lib/v2/vcb-s/index.js +39 -0
 - package/lib/v2/vcb-s/maintainer.js +4 -0
 - package/lib/v2/vcb-s/radar.js +19 -0
 - package/lib/v2/vcb-s/router.js +4 -0
 - package/lib/v2/vcb-s/templates/post.art +9 -0
 - package/lib/v2/verse/articles.js +42 -0
 - package/lib/v2/verse/maintainer.js +3 -0
 - package/lib/v2/verse/radar.js +13 -0
 - package/lib/v2/verse/router.js +3 -0
 - package/lib/v2/vimeo/maintainer.js +5 -0
 - package/lib/v2/vimeo/templates/description.art +4 -4
 - package/lib/v2/vlive/index.js +71 -0
 - package/lib/v2/vlive/maintainer.js +3 -0
 - package/lib/v2/vlive/radar.js +13 -0
 - package/lib/v2/vlive/router.js +3 -0
 - package/lib/v2/vlive/templates/post.art +8 -0
 - package/lib/v2/vlive/templates/video.art +3 -0
 - package/lib/v2/vmware/flings.js +59 -0
 - package/lib/v2/vmware/maintainer.js +3 -0
 - package/lib/v2/vmware/radar.js +13 -0
 - package/lib/v2/vmware/router.js +3 -0
 - package/lib/v2/vocus/maintainer.js +4 -0
 - package/lib/v2/vocus/publication.js +42 -0
 - package/lib/v2/vocus/radar.js +19 -0
 - package/lib/v2/vocus/router.js +4 -0
 - package/lib/v2/vocus/user.js +43 -0
 - package/lib/v2/vocus/utils.js +51 -0
 - package/lib/v2/vom/featured.js +50 -0
 - package/lib/v2/vom/maintainer.js +3 -0
 - package/lib/v2/vom/radar.js +13 -0
 - package/lib/v2/vom/router.js +3 -0
 - package/lib/v2/wallpaperhub/index.js +28 -0
 - package/lib/v2/wallpaperhub/maintainer.js +3 -0
 - package/lib/v2/wallpaperhub/radar.js +13 -0
 - package/lib/v2/wallpaperhub/router.js +3 -0
 - package/lib/v2/wallpaperhub/templates/description.art +1 -0
 - package/lib/v2/wallstreetcn/hot.js +56 -0
 - package/lib/v2/wallstreetcn/live.js +14 -17
 - package/lib/v2/wallstreetcn/maintainer.js +2 -1
 - package/lib/v2/wallstreetcn/news.js +28 -13
 - package/lib/v2/wallstreetcn/radar.js +6 -0
 - package/lib/v2/wallstreetcn/router.js +1 -0
 - package/lib/v2/wallstreetcn/templates/description.art +11 -0
 - package/lib/v2/wanqu/maintainer.js +3 -0
 - package/lib/v2/wanqu/news.js +27 -0
 - package/lib/v2/wanqu/radar.js +13 -0
 - package/lib/v2/warthunder/maintainer.js +3 -0
 - package/lib/v2/warthunder/news.js +49 -0
 - package/lib/v2/warthunder/radar.js +13 -0
 - package/lib/v2/warthunder/router.js +3 -0
 - package/lib/v2/warthunder/templates/description.art +1 -0
 - package/lib/v2/wdc/download.js +37 -0
 - package/lib/v2/wdc/maintainer.js +3 -0
 - package/lib/v2/wdc/radar.js +13 -0
 - package/lib/v2/wdc/router.js +3 -0
 - package/lib/v2/web3caff/index.js +63 -0
 - package/lib/v2/web3caff/maintainer.js +3 -0
 - package/lib/v2/web3caff/radar.js +13 -0
 - package/lib/v2/web3caff/router.js +3 -0
 - package/lib/v2/wechat/ce.js +2 -2
 - package/lib/v2/wechat/data258.js +1 -1
 - package/lib/v2/wechat/ershcimi.js +1 -1
 - package/lib/v2/wechat/feeddd.js +2 -1
 - package/lib/v2/wechat/feeds.js +1 -1
 - package/lib/v2/wechat/maintainer.js +2 -1
 - package/lib/v2/wechat/mp.js +2 -2
 - package/lib/v2/wechat/msgalbum.js +2 -2
 - package/lib/v2/wechat/radar.js +22 -5
 - package/lib/v2/wechat/router.js +2 -1
 - package/lib/v2/wechat/sogou.js +58 -0
 - package/lib/v2/wechat/tgchannel.js +5 -5
 - package/lib/v2/wechat/wechat2rss.js +28 -0
 - package/lib/v2/weekendhk/maintainer.js +4 -0
 - package/lib/v2/weekendhk/posts.js +29 -0
 - package/lib/v2/weekendhk/radar.js +13 -0
 - package/lib/v2/weekendhk/router.js +3 -0
 - package/lib/v2/weibo/keyword.js +55 -0
 - package/lib/v2/weibo/maintainer.js +8 -0
 - package/lib/v2/weibo/oasis/user.js +20 -0
 - package/lib/v2/weibo/radar.js +48 -0
 - package/lib/v2/weibo/router.js +8 -0
 - package/lib/v2/weibo/search/hot.js +35 -0
 - package/lib/v2/weibo/super_index.js +62 -0
 - package/lib/v2/weibo/timeline.js +162 -0
 - package/lib/v2/weibo/user.js +155 -0
 - package/lib/v2/weibo/utils.js +458 -0
 - package/lib/v2/wfdf/maintainer.js +3 -0
 - package/lib/v2/wfdf/news.js +29 -0
 - package/lib/v2/wfdf/radar.js +13 -0
 - package/lib/v2/wfdf/router.js +3 -0
 - package/lib/v2/wfu/news.js +1 -1
 - package/lib/v2/who/news-room.js +17 -18
 - package/lib/v2/who/news.js +11 -12
 - package/lib/v2/wise/maintainer.js +3 -0
 - package/lib/v2/wise/pair.js +65 -0
 - package/lib/v2/wise/radar.js +11 -0
 - package/lib/v2/wise/router.js +3 -0
 - package/lib/v2/wise/templates/description.art +17 -0
 - package/lib/v2/wizfile/index.js +41 -0
 - package/lib/v2/wizfile/maintainer.js +3 -0
 - package/lib/v2/wizfile/radar.js +13 -0
 - package/lib/v2/wizfile/router.js +3 -0
 - package/lib/v2/wnacg/index.js +110 -0
 - package/lib/v2/wnacg/maintainer.js +5 -0
 - package/lib/v2/wnacg/radar.js +25 -0
 - package/lib/v2/wnacg/router.js +5 -0
 - package/lib/v2/wnacg/templates/manga.art +9 -0
 - package/lib/v2/worldjournal/index.js +60 -0
 - package/lib/v2/worldjournal/maintainer.js +3 -0
 - package/lib/v2/worldjournal/radar.js +13 -0
 - package/lib/v2/worldjournal/router.js +3 -0
 - package/lib/v2/woshipm/bookmarks.js +34 -0
 - package/lib/v2/woshipm/latest.js +27 -0
 - package/lib/v2/woshipm/maintainer.js +7 -0
 - package/lib/v2/woshipm/popular.js +33 -0
 - package/lib/v2/woshipm/radar.js +39 -0
 - package/lib/v2/woshipm/router.js +7 -0
 - package/lib/v2/woshipm/user_article.js +37 -0
 - package/lib/v2/woshipm/utils.js +21 -0
 - package/lib/v2/woshipm/wen.js +36 -0
 - package/lib/v2/wp-china/news.js +12 -13
 - package/lib/v2/wsj/news.js +51 -0
 - package/lib/v2/wsj/radar.js +2 -2
 - package/lib/v2/wsj/router.js +1 -1
 - package/lib/v2/wsj/templates/article-description.art +6 -0
 - package/lib/v2/wsj/utils.js +121 -0
 - package/lib/v2/wxkol/maintainer.js +3 -0
 - package/lib/v2/wxkol/radar.js +13 -0
 - package/lib/v2/wxkol/router.js +3 -0
 - package/lib/v2/wxkol/show.js +80 -0
 - package/lib/v2/wyzxwk/article.js +20 -21
 - package/lib/v2/x6d/index.js +59 -0
 - package/lib/v2/x6d/maintainer.js +3 -0
 - package/lib/v2/x6d/radar.js +13 -0
 - package/lib/v2/x6d/router.js +3 -0
 - package/lib/v2/xaufe/jiaowu.js +72 -0
 - package/lib/v2/xaufe/maintainer.js +3 -0
 - package/lib/v2/xaufe/radar.js +11 -0
 - package/lib/v2/xaufe/router.js +3 -0
 - package/lib/v2/xiaohongshu/board.js +30 -0
 - package/lib/v2/xiaohongshu/maintainer.js +5 -0
 - package/lib/v2/xiaohongshu/radar.js +25 -0
 - package/lib/v2/xiaohongshu/router.js +4 -0
 - package/lib/v2/xiaohongshu/user.js +30 -0
 - package/lib/v2/xiaohongshu/util.js +71 -0
 - package/lib/v2/xiaomiyoupin/crowdfunding.js +43 -0
 - package/lib/v2/xiaomiyoupin/latest.js +15 -0
 - package/lib/v2/xiaomiyoupin/maintainer.js +4 -0
 - package/lib/v2/xiaomiyoupin/radar.js +19 -0
 - package/lib/v2/xiaomiyoupin/router.js +4 -0
 - package/lib/v2/xiaomiyoupin/templates/goods.art +27 -0
 - package/lib/v2/xiaomiyoupin/utils.js +21 -0
 - package/lib/v2/xiaozhuanlan/column.js +52 -0
 - package/lib/v2/xiaozhuanlan/maintainer.js +3 -0
 - package/lib/v2/xiaozhuanlan/radar.js +13 -0
 - package/lib/v2/xiaozhuanlan/router.js +3 -0
 - package/lib/v2/xidian/jwc.js +54 -0
 - package/lib/v2/xidian/maintainer.js +3 -0
 - package/lib/v2/xidian/radar.js +13 -0
 - package/lib/v2/xidian/router.js +3 -0
 - package/lib/v2/xjtu/2yuan/news.js +61 -0
 - package/lib/v2/xjtu/dean.js +83 -0
 - package/lib/v2/xjtu/dyyy/index.js +44 -0
 - package/lib/v2/xjtu/ee.js +44 -0
 - package/lib/v2/xjtu/gs/tzgg.js +39 -0
 - package/lib/v2/xjtu/international.js +51 -0
 - package/lib/v2/xjtu/job.js +81 -0
 - package/lib/v2/xjtu/maintainer.js +10 -0
 - package/lib/v2/xjtu/radar.js +61 -0
 - package/lib/v2/xjtu/router.js +10 -0
 - package/lib/v2/xjtu/std.js +58 -0
 - package/lib/v2/xjtu/templates/attachments.art +3 -0
 - package/lib/v2/xjtu/templates/std.art +4 -0
 - package/lib/v2/xkb/index.js +54 -0
 - package/lib/v2/xkb/maintainer.js +3 -0
 - package/lib/v2/xkb/radar.js +13 -0
 - package/lib/v2/xkb/router.js +3 -0
 - package/lib/v2/xkb/templates/description.art +3 -0
 - package/lib/v2/xmanhua/maintainer.js +3 -0
 - package/lib/v2/xmnn/epaper.js +85 -0
 - package/lib/v2/xmnn/maintainer.js +3 -0
 - package/lib/v2/xmnn/radar.js +13 -0
 - package/lib/v2/xmnn/router.js +3 -0
 - package/lib/v2/xsijishe/forum.js +61 -0
 - package/lib/v2/xsijishe/maintainer.js +3 -0
 - package/lib/v2/xsijishe/radar.js +19 -0
 - package/lib/v2/xsijishe/router.js +3 -0
 - package/lib/v2/xueqiu/column.js +42 -0
 - package/lib/v2/xueqiu/maintainer.js +2 -0
 - package/lib/v2/xueqiu/radar.js +12 -0
 - package/lib/v2/xueqiu/router.js +2 -0
 - package/lib/v2/xueqiu/snb.js +8 -6
 - package/lib/v2/xueqiu/today.js +65 -0
 - package/lib/v2/xueqiu/user.js +35 -14
 - package/lib/v2/xunhupay/index.js +24 -0
 - package/lib/v2/xunhupay/maintainer.js +3 -0
 - package/lib/v2/xunhupay/radar.js +13 -0
 - package/lib/v2/xunhupay/router.js +3 -0
 - package/lib/v2/xwlb/index.js +40 -0
 - package/lib/v2/xwlb/maintainer.js +4 -0
 - package/lib/v2/xwlb/radar.js +13 -0
 - package/lib/v2/xwlb/router.js +4 -0
 - package/lib/v2/xys/maintainer.js +3 -0
 - package/lib/v2/xys/new.js +74 -0
 - package/lib/v2/xys/radar.js +13 -0
 - package/lib/v2/xys/router.js +3 -0
 - package/lib/v2/xys/templates/desc.art +3 -0
 - package/lib/v2/xyzrank/index.js +111 -0
 - package/lib/v2/xyzrank/maintainer.js +6 -0
 - package/lib/v2/xyzrank/radar.js +31 -0
 - package/lib/v2/xyzrank/router.js +3 -0
 - package/lib/v2/xyzrank/templates/description.art +12 -0
 - package/lib/v2/yahoo/maintainer.js +3 -0
 - package/lib/v2/yahoo/news/index.js +46 -0
 - package/lib/v2/yahoo/radar.js +13 -0
 - package/lib/v2/yahoo/router.js +3 -0
 - package/lib/v2/ycwb/index.js +82 -0
 - package/lib/v2/ycwb/maintainer.js +3 -0
 - package/lib/v2/ycwb/radar.js +12 -0
 - package/lib/v2/ycwb/router.js +3 -0
 - package/lib/v2/ycwb/templates/description.art +7 -0
 - package/lib/v2/yicai/author.js +26 -0
 - package/lib/v2/yicai/brief.js +28 -0
 - package/lib/v2/yicai/feed.js +26 -0
 - package/lib/v2/yicai/headline.js +13 -0
 - package/lib/v2/yicai/latest.js +13 -0
 - package/lib/v2/yicai/maintainer.js +10 -0
 - package/lib/v2/yicai/news.js +39 -0
 - package/lib/v2/yicai/radar.js +55 -0
 - package/lib/v2/yicai/router.js +10 -0
 - package/lib/v2/yicai/templates/description.art +11 -0
 - package/lib/v2/yicai/utils.js +51 -0
 - package/lib/v2/yicai/video.js +39 -0
 - package/lib/v2/yicai/vip.js +26 -0
 - package/lib/v2/ymgal/article.js +61 -0
 - package/lib/v2/ymgal/game.js +41 -0
 - package/lib/v2/ymgal/maintainer.js +4 -0
 - package/lib/v2/ymgal/radar.js +31 -0
 - package/lib/v2/ymgal/router.js +4 -0
 - package/lib/v2/ymgal/templates/description.art +7 -0
 - package/lib/v2/yoasobi-music/info.js +68 -0
 - package/lib/v2/yoasobi-music/jsonpHelper.js +19 -0
 - package/lib/v2/yoasobi-music/live.js +52 -0
 - package/lib/v2/yoasobi-music/maintainer.js +5 -0
 - package/lib/v2/yoasobi-music/media.js +59 -0
 - package/lib/v2/yoasobi-music/radar.js +31 -0
 - package/lib/v2/yoasobi-music/router.js +5 -0
 - package/lib/v2/yoasobi-music/templates/info.art +7 -0
 - package/lib/v2/yoasobi-music/templates/live.art +12 -0
 - package/lib/v2/yoasobi-music/templates/media.art +2 -0
 - package/lib/v2/yomiuri/maintainer.js +3 -0
 - package/lib/v2/yomiuri/news.js +129 -0
 - package/lib/v2/yomiuri/radar.js +13 -0
 - package/lib/v2/yomiuri/router.js +3 -0
 - package/lib/v2/youtube/channel.js +39 -0
 - package/lib/v2/youtube/charts.js +97 -0
 - package/lib/v2/youtube/community.js +56 -0
 - package/lib/v2/youtube/custom.js +45 -0
 - package/lib/v2/youtube/maintainer.js +9 -0
 - package/lib/v2/youtube/playlist.js +33 -0
 - package/lib/v2/youtube/radar.js +51 -0
 - package/lib/v2/youtube/router.js +9 -0
 - package/lib/v2/youtube/subscriptions.js +56 -0
 - package/lib/v2/youtube/templates/community.art +17 -0
 - package/lib/v2/youtube/templates/description.art +7 -0
 - package/lib/v2/youtube/user.js +47 -0
 - package/lib/v2/youtube/utils.js +143 -0
 - package/lib/v2/youzhiyouxing/maintainer.js +1 -1
 - package/lib/v2/youzhiyouxing/materials.js +33 -23
 - package/lib/v2/youzhiyouxing/radar.js +6 -6
 - package/lib/v2/youzhiyouxing/router.js +1 -1
 - package/lib/v2/yuque/book.js +93 -0
 - package/lib/v2/yuque/maintainer.js +3 -0
 - package/lib/v2/yuque/radar.js +13 -0
 - package/lib/v2/yuque/router.js +3 -0
 - package/lib/v2/yuque/utils.js +50 -0
 - package/lib/v2/yxdown/maintainer.js +4 -0
 - package/lib/v2/yxdown/news.js +57 -0
 - package/lib/v2/yxdown/radar.js +19 -0
 - package/lib/v2/yxdown/recommend.js +54 -0
 - package/lib/v2/yxdown/router.js +4 -0
 - package/lib/v2/yxdown/utils.js +17 -0
 - package/lib/v2/yxrb/home.js +61 -0
 - package/lib/v2/yxrb/maintainer.js +3 -0
 - package/lib/v2/yxrb/radar.js +13 -0
 - package/lib/v2/yxrb/router.js +3 -0
 - package/lib/v2/yyets/article.js +45 -0
 - package/lib/v2/yyets/maintainer.js +4 -0
 - package/lib/v2/yyets/radar.js +19 -0
 - package/lib/v2/yyets/router.js +4 -0
 - package/lib/v2/yyets/today.js +37 -0
 - package/lib/v2/zagg/maintainer.js +3 -0
 - package/lib/v2/zagg/new-arrivals.js +52 -0
 - package/lib/v2/zagg/radar.js +16 -0
 - package/lib/v2/zagg/router.js +3 -0
 - package/lib/v2/zagg/templates/new-arrivals.art +3 -0
 - package/lib/v2/zaobao/maintainer.js +1 -1
 - package/lib/v2/zaobao/util.js +18 -6
 - package/lib/v2/zaozao/article.js +36 -0
 - package/lib/v2/zaozao/maintainer.js +3 -0
 - package/lib/v2/zaozao/radar.js +13 -0
 - package/lib/v2/zaozao/router.js +3 -0
 - package/lib/v2/zcmu/jwc/index.js +41 -0
 - package/lib/v2/zcmu/maintainer.js +4 -0
 - package/lib/v2/zcmu/radar.js +87 -0
 - package/lib/v2/zcmu/router.js +4 -0
 - package/lib/v2/zcmu/yxy/index.js +42 -0
 - package/lib/v2/zcool/discover.js +152 -0
 - package/lib/v2/zcool/maintainer.js +7 -0
 - package/lib/v2/zcool/radar.js +55 -0
 - package/lib/v2/zcool/router.js +5 -0
 - package/lib/v2/zcool/templates/description.art +8 -0
 - package/lib/v2/zcool/templates/work.art +11 -0
 - package/lib/v2/zcool/top.js +51 -0
 - package/lib/v2/zcool/user.js +52 -0
 - package/lib/v2/zcool/utils.js +14 -0
 - package/lib/v2/zhangyoubao/index.js +42 -0
 - package/lib/v2/zhangyoubao/maintainer.js +3 -0
 - package/lib/v2/zhangyoubao/radar.js +13 -0
 - package/lib/v2/zhangyoubao/router.js +3 -0
 - package/lib/v2/zhangyoubao/templates/article.art +1 -0
 - package/lib/v2/zhibo8/forum.js +15 -16
 - package/lib/v2/zhibo8/luxiang.js +38 -0
 - package/lib/v2/zhibo8/maintainer.js +1 -0
 - package/lib/v2/zhibo8/more.js +12 -17
 - package/lib/v2/zhibo8/post.js +28 -18
 - package/lib/v2/zhibo8/radar.js +8 -0
 - package/lib/v2/zhibo8/router.js +1 -0
 - package/lib/v2/zhihu/activities.js +142 -0
 - package/lib/v2/zhihu/answers.js +63 -0
 - package/lib/v2/zhihu/collection.js +77 -0
 - package/lib/v2/zhihu/daily.js +80 -0
 - package/lib/v2/zhihu/daily_section.js +49 -0
 - package/lib/v2/zhihu/execlib/x-zse-96_v3.js +122 -0
 - package/lib/v2/zhihu/hot.js +38 -0
 - package/lib/v2/zhihu/hotlist.js +47 -0
 - package/lib/v2/zhihu/maintainer.js +19 -0
 - package/lib/v2/zhihu/pin/utils.js +68 -0
 - package/lib/v2/zhihu/posts.js +53 -0
 - package/lib/v2/zhihu/question.js +80 -0
 - package/lib/v2/zhihu/radar.js +107 -0
 - package/lib/v2/zhihu/router.js +19 -0
 - package/lib/v2/zhihu/timeline.js +100 -0
 - package/lib/v2/zhihu/utils.js +48 -0
 - package/lib/v2/zhihu/weekly.js +31 -0
 - package/lib/v2/zhihu/zhuanlan.js +92 -0
 - package/lib/v2/zhitongcaijing/index.js +118 -0
 - package/lib/v2/zhitongcaijing/maintainer.js +3 -0
 - package/lib/v2/zhitongcaijing/radar.js +17 -0
 - package/lib/v2/zhitongcaijing/router.js +3 -0
 - package/lib/v2/zhitongcaijing/templates/description.art +6 -0
 - package/lib/v2/zhiy/letter.js +34 -0
 - package/lib/v2/zhiy/maintainer.js +4 -0
 - package/lib/v2/zhiy/post.js +69 -0
 - package/lib/v2/zhiy/radar.js +19 -0
 - package/lib/v2/zhiy/router.js +4 -0
 - package/lib/v2/zhiy/templates/post.art +12 -0
 - package/lib/v2/zhiy/utils.js +13 -0
 - package/lib/v2/zhubai/index.js +4 -0
 - package/lib/v2/zjol/maintainer.js +3 -0
 - package/lib/v2/zjol/paper.js +88 -0
 - package/lib/v2/zjol/radar.js +61 -0
 - package/lib/v2/zjol/router.js +3 -0
 - package/lib/v2/zju/grs/index.js +11 -10
 - package/lib/v2/zju/radar.js +5 -5
 - package/lib/v2/zodgame/forum.js +54 -0
 - package/lib/v2/zodgame/maintainer.js +3 -0
 - package/lib/v2/zodgame/radar.js +18 -0
 - package/lib/v2/zodgame/router.js +3 -0
 - package/lib/v2/zodgame/templates/forum.art +1 -0
 - package/lib/v2/zotero/maintainer.js +3 -0
 - package/lib/v2/zotero/radar.js +13 -0
 - package/lib/v2/zotero/router.js +3 -0
 - package/lib/v2/zotero/versions.js +36 -0
 - package/lib/v2/zuvio/boards.js +14 -0
 - package/lib/v2/zuvio/maintainer.js +4 -0
 - package/lib/v2/zuvio/radar.js +13 -0
 - package/lib/v2/zuvio/router.js +4 -0
 - package/lib/v2/zuvio/student5.js +58 -0
 - package/lib/v2/zuvio/templates/img.art +2 -0
 - package/lib/v2/zuvio/templates/link.art +7 -0
 - package/lib/v2/zuvio/templates/ref_article.art +8 -0
 - package/lib/v2/zuvio/templates/rss.art +1 -0
 - package/lib/v2/zuvio/templates/youtube.art +2 -0
 - package/lib/v2/zuvio/utils.js +61 -0
 - package/lib/v2/zuzhirenshi/index.js +87 -0
 - package/lib/v2/zuzhirenshi/maintainer.js +3 -0
 - package/lib/v2/zuzhirenshi/radar.js +13 -0
 - package/lib/v2/zuzhirenshi/router.js +3 -0
 - package/lib/v2/zyshow/index.js +46 -0
 - package/lib/v2/zyshow/maintainer.js +3 -0
 - package/lib/v2/zyshow/radar.js +17 -0
 - package/lib/v2/zyshow/router.js +3 -0
 - package/lib/v2/zyshow/templates/description.art +16 -0
 - package/lib/views/json.js +46 -0
 - package/package.json +88 -62
 - package/lib/routes/1point3acres/blog.js +0 -52
 - package/lib/routes/1point3acres/offer.js +0 -211
 - package/lib/routes/1point3acres/post.js +0 -50
 - package/lib/routes/3k8/latest.js +0 -50
 - package/lib/routes/6park/index.js +0 -57
 - package/lib/routes/9to5/subsite.js +0 -67
 - package/lib/routes/9to5/utils.js +0 -33
 - package/lib/routes/acfun/bangumi.js +0 -28
 - package/lib/routes/acfun/video.js +0 -44
 - package/lib/routes/adnmb/index.js +0 -69
 - package/lib/routes/agefans/detail.js +0 -29
 - package/lib/routes/agefans/update.js +0 -46
 - package/lib/routes/aliyun/database_month.js +0 -45
 - package/lib/routes/aliyun/developer/group.js +0 -44
 - package/lib/routes/aliyun/notice.js +0 -64
 - package/lib/routes/aljazeera/news.js +0 -38
 - package/lib/routes/apkpure/versions.js +0 -23
 - package/lib/routes/apnews/topics.js +0 -43
 - package/lib/routes/aqk/category.js +0 -22
 - package/lib/routes/aqk/vul.js +0 -33
 - package/lib/routes/asiantolick/index.js +0 -64
 - package/lib/routes/baidu/topwords.js +0 -38
 - package/lib/routes/baijing/index.js +0 -34
 - package/lib/routes/bangumi/calendar/_base.js +0 -43
 - package/lib/routes/bangumi/calendar/today.js +0 -75
 - package/lib/routes/bangumi/group/reply.js +0 -36
 - package/lib/routes/bangumi/group/topic.js +0 -26
 - package/lib/routes/bangumi/person/index.js +0 -34
 - package/lib/routes/bangumi/subject/comments.js +0 -54
 - package/lib/routes/bangumi/subject/ep.js +0 -26
 - package/lib/routes/bangumi/subject/index.js +0 -27
 - package/lib/routes/bangumi/subject/offcial-subject-api.js +0 -30
 - package/lib/routes/bangumi/user/blog.js +0 -42
 - package/lib/routes/behance/index.js +0 -58
 - package/lib/routes/bjp/apod.js +0 -48
 - package/lib/routes/blogs/foreverblog.js +0 -33
 - package/lib/routes/caixin/article.js +0 -46
 - package/lib/routes/caixin/blog.js +0 -58
 - package/lib/routes/caixin/category.js +0 -44
 - package/lib/routes/caixin/database.js +0 -48
 - package/lib/routes/caixin/latest.js +0 -75
 - package/lib/routes/caixin/yxnews.js +0 -30
 - package/lib/routes/cartoonmad/comic.js +0 -69
 - package/lib/routes/ccdi/scdc.js +0 -51
 - package/lib/routes/ccf/news.js +0 -51
 - package/lib/routes/chiculture/topic.js +0 -59
 - package/lib/routes/clickme/index.js +0 -76
 - package/lib/routes/cls/depth.js +0 -63
 - package/lib/routes/cls/telegraph.js +0 -34
 - package/lib/routes/comicskingdom/index.js +0 -61
 - package/lib/routes/coolapk/dyh.js +0 -41
 - package/lib/routes/coolapk/hot.js +0 -99
 - package/lib/routes/coolapk/huati.js +0 -26
 - package/lib/routes/coolapk/toutiao.js +0 -31
 - package/lib/routes/coolapk/tuwen.js +0 -33
 - package/lib/routes/coolapk/userDynamic.js +0 -37
 - package/lib/routes/coolapk/utils.js +0 -151
 - package/lib/routes/copymanga/comic.js +0 -74
 - package/lib/routes/csrc/auditstatus.js +0 -61
 - package/lib/routes/csrc/fashenwei.js +0 -42
 - package/lib/routes/csrc/news.js +0 -45
 - package/lib/routes/darwinawards/articles.js +0 -42
 - package/lib/routes/dcard/section.js +0 -47
 - package/lib/routes/dcard/utils.js +0 -54
 - package/lib/routes/dedao/index.js +0 -43
 - package/lib/routes/dedao/knowledge.js +0 -78
 - package/lib/routes/dedao/list.js +0 -60
 - package/lib/routes/deepmind/blog.js +0 -43
 - package/lib/routes/dgjyw/index.js +0 -66
 - package/lib/routes/dlsite/campaign.js +0 -176
 - package/lib/routes/dlsite/new.js +0 -109
 - package/lib/routes/docschina/jsweekly.js +0 -47
 - package/lib/routes/dsndsht23/index.js +0 -127
 - package/lib/routes/dwnews/rank.js +0 -42
 - package/lib/routes/dwnews/utils.js +0 -65
 - package/lib/routes/dwnews/yaowen.js +0 -73
 - package/lib/routes/earthquake/ceic.js +0 -66
 - package/lib/routes/earthquake/index.js +0 -38
 - package/lib/routes/eleduck/jobs.js +0 -38
 - package/lib/routes/embassy/index.js +0 -64
 - package/lib/routes/embassy/supportedList.js +0 -257
 - package/lib/routes/erbingapp/news.js +0 -51
 - package/lib/routes/fantia/search.js +0 -66
 - package/lib/routes/fantia/user.js +0 -39
 - package/lib/routes/finviz/news.js +0 -40
 - package/lib/routes/fzdm/manhua.js +0 -62
 - package/lib/routes/gelonghui/keyword.js +0 -36
 - package/lib/routes/gelonghui/subject.js +0 -42
 - package/lib/routes/gelonghui/user.js +0 -46
 - package/lib/routes/go-weekly/index.js +0 -29
 - package/lib/routes/gov/customs/list.js +0 -77
 - package/lib/routes/gov/jiangsu/eea.js +0 -84
 - package/lib/routes/gov/news/index.js +0 -115
 - package/lib/routes/gov/shenzhen/xxgk/zfxxgj.js +0 -66
 - package/lib/routes/gov/zhengce/govall.js +0 -59
 - package/lib/routes/gov/zhengce/wenjian.js +0 -53
 - package/lib/routes/gov/zhengce/zuixin.js +0 -42
 - package/lib/routes/gq/tw/index.js +0 -66
 - package/lib/routes/greasyfork/scripts.js +0 -39
 - package/lib/routes/hk01/channel.js +0 -22
 - package/lib/routes/hk01/hot.js +0 -20
 - package/lib/routes/hk01/issue.js +0 -22
 - package/lib/routes/hk01/tag.js +0 -22
 - package/lib/routes/hk01/zone.js +0 -41
 - package/lib/routes/huxiu/article.js +0 -30
 - package/lib/routes/huxiu/author.js +0 -33
 - package/lib/routes/huxiu/collection.js +0 -35
 - package/lib/routes/huxiu/search.js +0 -28
 - package/lib/routes/huxiu/tag.js +0 -31
 - package/lib/routes/huxiu/utils.js +0 -70
 - package/lib/routes/ikea/uk/new.js +0 -20
 - package/lib/routes/ikea/uk/offer.js +0 -64
 - package/lib/routes/infoq/recommend.js +0 -28
 - package/lib/routes/infoq/topic.js +0 -45
 - package/lib/routes/infoq/utils.js +0 -103
 - package/lib/routes/initium/full.js +0 -188
 - package/lib/routes/instagram/index.js +0 -131
 - package/lib/routes/instagram/utils.js +0 -28
 - package/lib/routes/iqiyi/dongman.js +0 -42
 - package/lib/routes/jiemian/list.js +0 -48
 - package/lib/routes/jiemian/utils.js +0 -26
 - package/lib/routes/jike/common.js +0 -135
 - package/lib/routes/jike/topic.js +0 -65
 - package/lib/routes/jike/topicText.js +0 -42
 - package/lib/routes/jike/user.js +0 -147
 - package/lib/routes/jinshi/index.js +0 -35
 - package/lib/routes/juejin/books.js +0 -29
 - package/lib/routes/juejin/category.js +0 -39
 - package/lib/routes/juejin/pins.js +0 -66
 - package/lib/routes/juejin/utils.js +0 -48
 - package/lib/routes/keep/user.js +0 -47
 - package/lib/routes/kuaibao/index.js +0 -33
 - package/lib/routes/kuaidi100/supported_company.js +0 -17
 - package/lib/routes/kuaidi100/utils.js +0 -223
 - package/lib/routes/langlive/room.js +0 -33
 - package/lib/routes/leetcode/articles.js +0 -77
 - package/lib/routes/linkresearcher/index.js +0 -65
 - package/lib/routes/logseq/changelog.js +0 -42
 - package/lib/routes/luogu/contest.js +0 -28
 - package/lib/routes/luogu/daily.js +0 -53
 - package/lib/routes/luogu/userFeed.js +0 -38
 - package/lib/routes/manhuagui/comic.js +0 -99
 - package/lib/routes/mckinsey/index.js +0 -49
 - package/lib/routes/mhgui/comic.js +0 -99
 - package/lib/routes/mi/youpin/crowdfunding.js +0 -39
 - package/lib/routes/mi/youpin/new.js +0 -26
 - package/lib/routes/minecraft/version.js +0 -34
 - package/lib/routes/mirror/entries.js +0 -80
 - package/lib/routes/mobilism/release.js +0 -42
 - package/lib/routes/mofcom/article.js +0 -54
 - package/lib/routes/mp4er/index.js +0 -83
 - package/lib/routes/nature/cover.js +0 -90
 - package/lib/routes/nature/highlight.js +0 -57
 - package/lib/routes/nature/news-and-comment.js +0 -78
 - package/lib/routes/nature/news.js +0 -51
 - package/lib/routes/nature/research.js +0 -184
 - package/lib/routes/nautilus/topics.js +0 -45
 - package/lib/routes/ncm/artist.js +0 -33
 - package/lib/routes/ncm/djradio.js +0 -80
 - package/lib/routes/ncm/playlist.js +0 -45
 - package/lib/routes/ncm/userplaylist.js +0 -58
 - package/lib/routes/ncm/userplayrecords.js +0 -57
 - package/lib/routes/netease/ds.js +0 -41
 - package/lib/routes/netease/dy.js +0 -54
 - package/lib/routes/netease/dy2.js +0 -62
 - package/lib/routes/netease/news/special.js +0 -121
 - package/lib/routes/netease/open/latest.js +0 -68
 - package/lib/routes/netease/open/vip.js +0 -39
 - package/lib/routes/newrank/douyin.js +0 -60
 - package/lib/routes/newrank/wechat.js +0 -37
 - package/lib/routes/newzmz/index.js +0 -78
 - package/lib/routes/newzmz/view.js +0 -42
 - package/lib/routes/nga/forum.js +0 -72
 - package/lib/routes/nga/post.js +0 -71
 - package/lib/routes/nhentai/other.js +0 -25
 - package/lib/routes/nhentai/search.js +0 -16
 - package/lib/routes/nhentai/util.js +0 -136
 - package/lib/routes/nhk/news_web_easy.js +0 -44
 - package/lib/routes/nikkei/index.js +0 -34
 - package/lib/routes/nikkei/news.js +0 -155
 - package/lib/routes/nintendo/direct.js +0 -34
 - package/lib/routes/nintendo/eshop_cn.js +0 -51
 - package/lib/routes/nintendo/eshop_hk.js +0 -26
 - package/lib/routes/nintendo/eshop_jp.js +0 -20
 - package/lib/routes/nintendo/eshop_us.js +0 -36
 - package/lib/routes/nintendo/news.js +0 -25
 - package/lib/routes/nintendo/news_china.js +0 -41
 - package/lib/routes/nintendo/system-update.js +0 -38
 - package/lib/routes/nintendo/utils.js +0 -186
 - package/lib/routes/novel/shuquge.js +0 -63
 - package/lib/routes/nyaa/search.js +0 -31
 - package/lib/routes/oilprice/index.js +0 -66
 - package/lib/routes/openai/blog.js +0 -52
 - package/lib/routes/oschina/news.js +0 -97
 - package/lib/routes/oschina/topic.js +0 -54
 - package/lib/routes/oschina/u.js +0 -57
 - package/lib/routes/oschina/user.js +0 -57
 - package/lib/routes/outagereport/service.js +0 -51
 - package/lib/routes/phoronix/index.js +0 -111
 - package/lib/routes/pianyuan/app.js +0 -49
 - package/lib/routes/pincong/hot.js +0 -33
 - package/lib/routes/pincong/index.js +0 -40
 - package/lib/routes/pincong/topic.js +0 -32
 - package/lib/routes/pingwest/status.js +0 -40
 - package/lib/routes/pingwest/tag.js +0 -50
 - package/lib/routes/pingwest/user.js +0 -55
 - package/lib/routes/pingwest/utils.js +0 -76
 - package/lib/routes/pixiv/api/getBookmarks.js +0 -25
 - package/lib/routes/pixiv/api/getIllustFollows.js +0 -22
 - package/lib/routes/pixiv/api/getIllusts.js +0 -24
 - package/lib/routes/pixiv/api/getRanking.js +0 -32
 - package/lib/routes/pixiv/api/getUserDetail.js +0 -29
 - package/lib/routes/pixiv/api/searchIllust.js +0 -26
 - package/lib/routes/pixiv/api/searchPopularIllust.js +0 -25
 - package/lib/routes/pixiv/bookmarks.js +0 -39
 - package/lib/routes/pixiv/illustfollow.js +0 -33
 - package/lib/routes/pixiv/pixiv-got.js +0 -65
 - package/lib/routes/pixiv/ranking.js +0 -85
 - package/lib/routes/pixiv/search.js +0 -50
 - package/lib/routes/pixiv/token.js +0 -74
 - package/lib/routes/pixiv/user.js +0 -37
 - package/lib/routes/pnas/index.js +0 -66
 - package/lib/routes/prestige-av/series.js +0 -39
 - package/lib/routes/qdaily/index.js +0 -88
 - package/lib/routes/qidian/chapter.js +0 -43
 - package/lib/routes/qidian/forum.js +0 -41
 - package/lib/routes/qidian/free-next.js +0 -45
 - package/lib/routes/qidian/free.js +0 -47
 - package/lib/routes/qingting/channel.js +0 -36
 - package/lib/routes/radio/radio.js +0 -50
 - package/lib/routes/researchgate/publications.js +0 -60
 - package/lib/routes/reuters/channel.js +0 -155
 - package/lib/routes/reuters/theWire.js +0 -45
 - package/lib/routes/reuters/utils.js +0 -72
 - package/lib/routes/rrys/review.js +0 -30
 - package/lib/routes/sakurazaka46/blog.js +0 -38
 - package/lib/routes/saraba1st/thread.js +0 -45
 - package/lib/routes/sciencemag/cover.js +0 -56
 - package/lib/routes/sciencemag/current.js +0 -123
 - package/lib/routes/sciencemag/early.js +0 -97
 - package/lib/routes/scmp/index.js +0 -115
 - package/lib/routes/secrss/author.js +0 -22
 - package/lib/routes/secrss/category.js +0 -25
 - package/lib/routes/skysports/news.js +0 -53
 - package/lib/routes/smzdm/article.js +0 -57
 - package/lib/routes/smzdm/baoliao.js +0 -55
 - package/lib/routes/smzdm/haowen.js +0 -60
 - package/lib/routes/smzdm/haowen_fenlei.js +0 -63
 - package/lib/routes/smzdm/keyword.js +0 -39
 - package/lib/routes/smzdm/ranking.js +0 -39
 - package/lib/routes/sobooks/date.js +0 -7
 - package/lib/routes/sobooks/index.js +0 -7
 - package/lib/routes/sobooks/tag.js +0 -7
 - package/lib/routes/sobooks/utils.js +0 -49
 - package/lib/routes/sse/convert.js +0 -32
 - package/lib/routes/sse/disclosure.js +0 -34
 - package/lib/routes/sse/inquire.js +0 -31
 - package/lib/routes/sse/renewal.js +0 -61
 - package/lib/routes/sse/sserules.js +0 -49
 - package/lib/routes/ssmh/category.js +0 -50
 - package/lib/routes/ssmh/index.js +0 -32
 - package/lib/routes/sspai/activity.js +0 -82
 - package/lib/routes/sspai/author.js +0 -63
 - package/lib/routes/sspai/column.js +0 -66
 - package/lib/routes/sspai/matrix.js +0 -44
 - package/lib/routes/sspai/series.js +0 -46
 - package/lib/routes/sspai/shortcutsGallery.js +0 -28
 - package/lib/routes/sspai/tag.js +0 -46
 - package/lib/routes/sspai/topic.js +0 -53
 - package/lib/routes/sspai/topics.js +0 -41
 - package/lib/routes/swjtu/tl/news.js +0 -35
 - package/lib/routes/szse/inquire.js +0 -87
 - package/lib/routes/szse/projectdynamic.js +0 -103
 - package/lib/routes/taoguba/index.js +0 -46
 - package/lib/routes/taoguba/user.js +0 -46
 - package/lib/routes/tencent/factcheck/index.js +0 -51
 - package/lib/routes/tencent/news/author.js +0 -59
 - package/lib/routes/tencent/pvp/newsindex.js +0 -62
 - package/lib/routes/the-economist/full.js +0 -48
 - package/lib/routes/the-economist/gre-vocabulary.js +0 -27
 - package/lib/routes/tieba/forum.js +0 -88
 - package/lib/routes/tieba/post.js +0 -66
 - package/lib/routes/tieba/user.js +0 -36
 - package/lib/routes/tingshuitz/dalian.js +0 -34
 - package/lib/routes/tingshuitz/dongguan.js +0 -33
 - package/lib/routes/tingshuitz/nanjing.js +0 -35
 - package/lib/routes/tingshuitz/wuhan.js +0 -34
 - package/lib/routes/tingshuitz/xian.js +0 -31
 - package/lib/routes/tingshuitz/xiaoshan.js +0 -34
 - package/lib/routes/tingshuitz/yangjiang.js +0 -31
 - package/lib/routes/transferwise/pair.js +0 -64
 - package/lib/routes/twitter/developer-api/search.js +0 -22
 - package/lib/routes/twitter/developer-api/user.js +0 -29
 - package/lib/routes/twitter/followings.js +0 -46
 - package/lib/routes/twitter/keyword.js +0 -16
 - package/lib/routes/twitter/likes.js +0 -22
 - package/lib/routes/twitter/list.js +0 -38
 - package/lib/routes/twitter/trends.js +0 -23
 - package/lib/routes/twitter/user.js +0 -16
 - package/lib/routes/twitter/utils.js +0 -436
 - package/lib/routes/twitter/web-api/twitter-api.js +0 -208
 - package/lib/routes/twitter/web-api/twitter-got.js +0 -91
 - package/lib/routes/twmanhuagui/comic.js +0 -99
 - package/lib/routes/typora/changelog-dev.js +0 -35
 - package/lib/routes/typora/changelog.js +0 -60
 - package/lib/routes/udn/global.js +0 -61
 - package/lib/routes/universities/bit/bityjs.js +0 -23
 - package/lib/routes/universities/bit/cs/cs.js +0 -26
 - package/lib/routes/universities/bit/cs/utils.js +0 -73
 - package/lib/routes/universities/bit/jwc/jwc.js +0 -26
 - package/lib/routes/universities/bit/jwc/utils.js +0 -65
 - package/lib/routes/universities/cas/cg/index.js +0 -50
 - package/lib/routes/universities/cas/iee/kydt.js +0 -46
 - package/lib/routes/universities/cas/mesalab/kb.js +0 -45
 - package/lib/routes/universities/cas/sim/academic.js +0 -59
 - package/lib/routes/universities/cauele/cauele.js +0 -24
 - package/lib/routes/universities/cauyjs/cauyjs.js +0 -24
 - package/lib/routes/universities/ccnu/career.js +0 -43
 - package/lib/routes/universities/ccnu/ccnucs.js +0 -23
 - package/lib/routes/universities/ccnu/ccnuwu.js +0 -23
 - package/lib/routes/universities/ccnu/ccnuyjs.js +0 -23
 - package/lib/routes/universities/cuc/yz.js +0 -39
 - package/lib/routes/universities/cucyjs/cucyjs.js +0 -23
 - package/lib/routes/universities/ecnuyjs/ecnuyjs.js +0 -23
 - package/lib/routes/universities/ecustyjs/ecustyjs.js +0 -23
 - package/lib/routes/universities/gdut/news.js +0 -162
 - package/lib/routes/universities/gzyjs/gzyjs.js +0 -24
 - package/lib/routes/universities/hit/jwc.js +0 -53
 - package/lib/routes/universities/hit/today.js +0 -85
 - package/lib/routes/universities/hitsz/article.js +0 -43
 - package/lib/routes/universities/hitwh/today.js +0 -46
 - package/lib/routes/universities/hust/aia/news.js +0 -32
 - package/lib/routes/universities/hust/aia/notice.js +0 -35
 - package/lib/routes/universities/hustyjs/hustyjs.js +0 -23
 - package/lib/routes/universities/ncwu/notice.js +0 -42
 - package/lib/routes/universities/neu/news.js +0 -61
 - package/lib/routes/universities/njust/cwc/index.js +0 -37
 - package/lib/routes/universities/njust/eo/index.js +0 -41
 - package/lib/routes/universities/njust/eo/util.js +0 -28
 - package/lib/routes/universities/njust/gs/index.js +0 -33
 - package/lib/routes/universities/njust/jwc/index.js +0 -39
 - package/lib/routes/universities/nuist/bulletin.js +0 -61
 - package/lib/routes/universities/nuist/cas.js +0 -60
 - package/lib/routes/universities/nuist/jwc.js +0 -66
 - package/lib/routes/universities/nuist/library/lib.js +0 -32
 - package/lib/routes/universities/nuist/scs.js +0 -60
 - package/lib/routes/universities/nuist/sese.js +0 -60
 - package/lib/routes/universities/nuist/xgc.js +0 -48
 - package/lib/routes/universities/nuist/yjs.js +0 -63
 - package/lib/routes/universities/ouc/it.js +0 -52
 - package/lib/routes/universities/outele/outele.js +0 -23
 - package/lib/routes/universities/outyjs/outyjs.js +0 -23
 - package/lib/routes/universities/scauyjs/scauyjs.js +0 -23
 - package/lib/routes/universities/scnu/cs/match.js +0 -35
 - package/lib/routes/universities/scnu/jw.js +0 -32
 - package/lib/routes/universities/scnu/library.js +0 -32
 - package/lib/routes/universities/scnu/scnucs.js +0 -23
 - package/lib/routes/universities/scnu/scnuyjs.js +0 -23
 - package/lib/routes/universities/scut/scet/notice.js +0 -32
 - package/lib/routes/universities/scut/scutyjs.js +0 -28
 - package/lib/routes/universities/scut/seie/news_center.js +0 -57
 - package/lib/routes/universities/scvtc/xygg.js +0 -45
 - package/lib/routes/universities/shiep/index.js +0 -95
 - package/lib/routes/universities/shmtu/jwc.js +0 -75
 - package/lib/routes/universities/shmtu/www.js +0 -61
 - package/lib/routes/universities/sustech/bidding.js +0 -34
 - package/lib/routes/universities/sustech/newshub-zh.js +0 -35
 - package/lib/routes/universities/sustyjs/sustyjs.js +0 -24
 - package/lib/routes/universities/szu/yz/index.js +0 -51
 - package/lib/routes/universities/szu/yz/utils.js +0 -78
 - package/lib/routes/universities/szuyjs/szuyjs.js +0 -24
 - package/lib/routes/universities/tjpyu/ooa.js +0 -73
 - package/lib/routes/universities/tju/sse/_article.js +0 -34
 - package/lib/routes/universities/tju/sse/notice.js +0 -41
 - package/lib/routes/universities/tjuyjs/tjuyjs.js +0 -23
 - package/lib/routes/universities/tynu/tynu.js +0 -27
 - package/lib/routes/universities/uestc/auto.js +0 -113
 - package/lib/routes/universities/uestc/cqe.js +0 -40
 - package/lib/routes/universities/uestc/cs.js +0 -119
 - package/lib/routes/universities/uestc/gr.js +0 -46
 - package/lib/routes/universities/uestc/is.js +0 -102
 - package/lib/routes/universities/uestc/jwc.js +0 -38
 - package/lib/routes/universities/uestc/news.js +0 -33
 - package/lib/routes/universities/uestc/sice.js +0 -64
 - package/lib/routes/universities/upc/jsj.js +0 -81
 - package/lib/routes/universities/upc/main.js +0 -72
 - package/lib/routes/universities/upcyjs/upcyjs.js +0 -23
 - package/lib/routes/universities/ustc/index.js +0 -93
 - package/lib/routes/universities/ustc/job.js +0 -192
 - package/lib/routes/universities/ustc/jwc/index.js +0 -60
 - package/lib/routes/universities/xidian/jwc.js +0 -70
 - package/lib/routes/universities/xjtu/dean.js +0 -86
 - package/lib/routes/universities/xjtu/ee.js +0 -44
 - package/lib/routes/universities/xjtu/gs/tzgg.js +0 -39
 - package/lib/routes/universities/xjtu/international.js +0 -53
 - package/lib/routes/universities/xjtu/job.js +0 -50
 - package/lib/routes/universities/zkyai/zkyai.js +0 -23
 - package/lib/routes/universities/zkyyjs/zkyyjs.js +0 -23
 - package/lib/routes/uraaka-joshi/uraaka-joshi-user.js +0 -28
 - package/lib/routes/uraaka-joshi/uraaka-joshi.js +0 -30
 - package/lib/routes/verge/index.js +0 -88
 - package/lib/routes/vocus/publication.js +0 -19
 - package/lib/routes/vocus/utils.js +0 -29
 - package/lib/routes/waijiedanao/article.js +0 -78
 - package/lib/routes/wallpaperhub/index.js +0 -22
 - package/lib/routes/weibo/keyword.js +0 -55
 - package/lib/routes/weibo/oasis/user.js +0 -17
 - package/lib/routes/weibo/search/hot.js +0 -33
 - package/lib/routes/weibo/super_index.js +0 -62
 - package/lib/routes/weibo/timeline.js +0 -162
 - package/lib/routes/weibo/user.js +0 -163
 - package/lib/routes/weibo/utils.js +0 -422
 - package/lib/routes/woshipm/bookmarks.js +0 -45
 - package/lib/routes/woshipm/latest.js +0 -45
 - package/lib/routes/woshipm/popular.js +0 -38
 - package/lib/routes/woshipm/user_article.js +0 -43
 - package/lib/routes/woshipm/wen.js +0 -39
 - package/lib/routes/x6d/index.js +0 -64
 - package/lib/routes/xiaohongshu/board.js +0 -26
 - package/lib/routes/xiaohongshu/user.js +0 -48
 - package/lib/routes/xiaohongshu/util.js +0 -18
 - package/lib/routes/xwlb/index.js +0 -40
 - package/lib/routes/yahoo-news/index.js +0 -44
 - package/lib/routes/yicai/brief.js +0 -34
 - package/lib/routes/yomiuri/news.js +0 -144
 - package/lib/routes/youtube/channel.js +0 -35
 - package/lib/routes/youtube/playlist.js +0 -37
 - package/lib/routes/youtube/user.js +0 -35
 - package/lib/routes/youtube/utils.js +0 -90
 - package/lib/routes/yuanshen/index.js +0 -70
 - package/lib/routes/yuque/doc.js +0 -60
 - package/lib/routes/yxdown/news.js +0 -54
 - package/lib/routes/yxdown/recommend.js +0 -51
 - package/lib/routes/yyets/todayfilelist.js +0 -34
 - package/lib/routes/zcool/discover.js +0 -140
 - package/lib/routes/zcool/top.js +0 -75
 - package/lib/routes/zcool/user.js +0 -58
 - package/lib/routes/zhihu/activities.js +0 -109
 - package/lib/routes/zhihu/answers.js +0 -62
 - package/lib/routes/zhihu/collection.js +0 -76
 - package/lib/routes/zhihu/daily.js +0 -55
 - package/lib/routes/zhihu/daily_section.js +0 -55
 - package/lib/routes/zhihu/execlib/jsencrypt.js +0 -380
 - package/lib/routes/zhihu/hot.js +0 -38
 - package/lib/routes/zhihu/hotlist.js +0 -47
 - package/lib/routes/zhihu/pin/utils.js +0 -58
 - package/lib/routes/zhihu/posts.js +0 -45
 - package/lib/routes/zhihu/question.js +0 -38
 - package/lib/routes/zhihu/timeline.js +0 -99
 - package/lib/routes/zhihu/utils.js +0 -39
 - package/lib/routes/zhihu/weekly.js +0 -32
 - package/lib/routes/zhihu/zhuanlan.js +0 -91
 - package/lib/routes/zyshow/index.js +0 -42
 - package/lib/utils/torrent.js +0 -163
 - package/lib/v2/36kr/motif.js +0 -36
 - package/lib/v2/36kr/news.js +0 -56
 - package/lib/v2/36kr/newsflashes.js +0 -37
 - package/lib/v2/36kr/search/article.js +0 -70
 - package/lib/v2/36kr/user.js +0 -36
 - package/lib/v2/acm-ecnu/contest.js +0 -44
 - package/lib/v2/acm-ecnu/maintainer.js +0 -3
 - package/lib/v2/acm-ecnu/radar.js +0 -19
 - package/lib/v2/acm-ecnu/router.js +0 -3
 - package/lib/v2/appledaily/templates/content.art +0 -7
 - package/lib/v2/cnbeta/index.js +0 -16
 - package/lib/v2/csu/fetch_article.js +0 -12
 - package/lib/v2/csu/job.js +0 -34
 - package/lib/v2/dongqiudi/daily.js +0 -47
 - package/lib/v2/ecust-jxjy/maintainer.js +0 -3
 - package/lib/v2/ecust-jxjy/news.js +0 -47
 - package/lib/v2/ecust-jxjy/radar.js +0 -13
 - package/lib/v2/elsevier/latest.js +0 -87
 - package/lib/v2/elsevier/volume.js +0 -75
 - package/lib/v2/epicgames/supportedList.js +0 -23
 - package/lib/v2/gov/sichuan/deyang/govpulicinfo.js +0 -95
 - package/lib/v2/hdu/cs/index.js +0 -57
 - package/lib/v2/hellogithub/article.js +0 -47
 - package/lib/v2/hellogithub/month.js +0 -42
 - package/lib/v2/hellogithub/ranking.js +0 -39
 - package/lib/v2/heu/gx/card.js +0 -47
 - package/lib/v2/heu/gx/list.js +0 -73
 - package/lib/v2/heu/job/bigemploy.js +0 -42
 - package/lib/v2/heu/job/calendar.js +0 -54
 - package/lib/v2/heu/job/list.js +0 -70
 - package/lib/v2/heu/maintainer.js +0 -8
 - package/lib/v2/heu/radar.js +0 -73
 - package/lib/v2/heu/router.js +0 -9
 - package/lib/v2/heu/uae/list.js +0 -62
 - package/lib/v2/heu/yjsy/list.js +0 -65
 - package/lib/v2/houxu/templates/description.art +0 -9
 - package/lib/v2/ieee/latestdate.js +0 -103
 - package/lib/v2/ieee/latestvol.js +0 -87
 - package/lib/v2/jasa/latest.js +0 -70
 - package/lib/v2/jasa/maintainer.js +0 -4
 - package/lib/v2/jasa/radar.js +0 -19
 - package/lib/v2/jasa/router.js +0 -4
 - package/lib/v2/jasa/section.js +0 -95
 - package/lib/v2/jasa/templates/description.art +0 -11
 - package/lib/v2/netease/maintainer.js +0 -5
 - package/lib/v2/netease/radar.js +0 -29
 - package/lib/v2/netease/rank.js +0 -154
 - package/lib/v2/netease/renjian.js +0 -74
 - package/lib/v2/netease/router.js +0 -5
 - package/lib/v2/netease/today.js +0 -55
 - package/lib/v2/nikkei-asia/index.js +0 -40
 - package/lib/v2/nikkei-asia/maintainer.js +0 -3
 - package/lib/v2/nikkei-asia/radar.js +0 -13
 - package/lib/v2/nikkei-cn/index.js +0 -82
 - package/lib/v2/nikkei-cn/maintainer.js +0 -3
 - package/lib/v2/nikkei-cn/radar.js +0 -21
 - package/lib/v2/nsfc/maintainer.js +0 -3
 - package/lib/v2/nsfc/news.js +0 -92
 - package/lib/v2/nsfc/radar.js +0 -31
 - package/lib/v2/nuaa/cs/index.js +0 -87
 - package/lib/v2/panewslab/column.js +0 -60
 - package/lib/v2/panewslab/newsflash.js +0 -35
 - package/lib/v2/pts/dailynews.js +0 -52
 - package/lib/v2/wechat/wemp.js +0 -58
 - package/lib/v2/wsj/index.js +0 -141
 - /package/lib/{routes/ncm/templates → v2/163/templates/music}/djradio-content.art +0 -0
 - /package/lib/{routes/1point3acres/posts.js → v2/1point3acres/user/post.js} +0 -0
 - /package/lib/{routes/1point3acres/threads.js → v2/1point3acres/user/thread.js} +0 -0
 - /package/lib/v2/{nikkei-cn → 7mmtv}/router.js +0 -0
 - /package/lib/v2/{hkepc/templates → bangumi/templates/online}/image.art +0 -0
 - /package/lib/v2/{eprice → caai}/templates/description.art +0 -0
 - /package/lib/v2/{nikkei-asia → cbnweek}/router.js +0 -0
 - /package/lib/v2/{hkepc/templates → ccf/templates/tfbd}/description.art +0 -0
 - /package/lib/{routes → v2}/douyu/room.js +0 -0
 - /package/lib/v2/{acm-ecnu → ecnu}/templates/description.art +0 -0
 - /package/lib/{routes/the-economist → v2/economist}/download.js +0 -0
 - /package/lib/v2/{nsfc → hafu}/router.js +0 -0
 - /package/lib/{routes → v2}/iqiyi/video.js +0 -0
 - /package/lib/{routes → v2}/juejin/collection.js +0 -0
 - /package/lib/{routes → v2}/juejin/column.js +0 -0
 - /package/lib/{routes → v2}/juejin/favorites.js +0 -0
 - /package/lib/{routes → v2}/juejin/posts.js +0 -0
 - /package/lib/{routes → v2}/juejin/shares.js +0 -0
 - /package/lib/{routes → v2}/juejin/tag.js +0 -0
 - /package/lib/{routes → v2}/juejin/trending.js +0 -0
 - /package/lib/{routes → v2}/kuaidi100/index.js +0 -0
 - /package/lib/{routes → v2}/newrank/utils.js +0 -0
 - /package/lib/{routes → v2}/pixiv/constants.js +0 -0
 - /package/lib/{routes → v2}/pixiv/utils.js +0 -0
 - /package/lib/v2/qweather/{util → templates}/3days.art +0 -0
 - /package/lib/v2/qweather/{util → templates}/now.art +0 -0
 - /package/lib/{routes/universities → v2}/scut/jwc/news.js +0 -0
 - /package/lib/{routes/universities → v2}/scut/jwc/notice.js +0 -0
 - /package/lib/{routes/universities → v2}/scut/jwc/school.js +0 -0
 - /package/lib/{routes → v2}/szse/notice.js +0 -0
 - /package/lib/{routes → v2}/tingshuitz/guangzhou.js +0 -0
 - /package/lib/{routes → v2}/tingshuitz/hangzhou.js +0 -0
 - /package/lib/{routes → v2}/twitter/media.js +0 -0
 - /package/lib/{routes → v2}/twitter/web-api/media.js +0 -0
 - /package/lib/{routes → v2}/twitter/web-api/search.js +0 -0
 - /package/lib/{routes → v2}/twitter/web-api/user.js +0 -0
 - /package/lib/v2/{ecust-jxjy → wanqu}/router.js +0 -0
 - /package/lib/{routes → v2}/zcool/locations.js +0 -0
 - /package/lib/{routes → v2}/zhihu/bookstore/newest.js +0 -0
 - /package/lib/{routes → v2}/zhihu/pin/daily.js +0 -0
 - /package/lib/{routes → v2}/zhihu/pin/hotlist.js +0 -0
 - /package/lib/{routes → v2}/zhihu/pin/people.js +0 -0
 - /package/lib/{routes → v2}/zhihu/topic.js +0 -0
 
    
        package/lib/router.js
    CHANGED
    
    | 
         @@ -34,51 +34,52 @@ router.get('/1draw', lazyloadRouteHandler('./routes/1draw/index')); 
     | 
|
| 
       34 
34 
     | 
    
         
             
            router.get('/benedictevans', lazyloadRouteHandler('./routes/benedictevans/recent.js'));
         
     | 
| 
       35 
35 
     | 
    
         | 
| 
       36 
36 
     | 
    
         
             
            // bangumi
         
     | 
| 
       37 
     | 
    
         
            -
            router.get('/bangumi/calendar/today', lazyloadRouteHandler('./routes/bangumi/calendar/today'));
         
     | 
| 
       38 
     | 
    
         
            -
            router.get('/bangumi/subject/:id/:type', lazyloadRouteHandler('./routes/bangumi/subject'));
         
     | 
| 
       39 
     | 
    
         
            -
            router.get('/bangumi/person/:id', lazyloadRouteHandler('./routes/bangumi/person'));
         
     | 
| 
       40 
     | 
    
         
            -
            router.get('/bangumi/topic/:id', lazyloadRouteHandler('./routes/bangumi/group/reply'));
         
     | 
| 
       41 
     | 
    
         
            -
            router.get('/bangumi/group/:id', lazyloadRouteHandler('./routes/bangumi/group/topic'));
         
     | 
| 
       42 
     | 
    
         
            -
            router.get('/bangumi/subject/:id', lazyloadRouteHandler('./routes/bangumi/subject'));
         
     | 
| 
       43 
     | 
    
         
            -
            router.get('/bangumi/user/blog/:id', lazyloadRouteHandler('./routes/bangumi/user/blog'));
         
     | 
| 
      
 37 
     | 
    
         
            +
            // router.get('/bangumi/calendar/today', lazyloadRouteHandler('./routes/bangumi/calendar/today'));
         
     | 
| 
      
 38 
     | 
    
         
            +
            // router.get('/bangumi/subject/:id/:type', lazyloadRouteHandler('./routes/bangumi/subject'));
         
     | 
| 
      
 39 
     | 
    
         
            +
            // router.get('/bangumi/person/:id', lazyloadRouteHandler('./routes/bangumi/person'));
         
     | 
| 
      
 40 
     | 
    
         
            +
            // router.get('/bangumi/topic/:id', lazyloadRouteHandler('./routes/bangumi/group/reply'));
         
     | 
| 
      
 41 
     | 
    
         
            +
            // router.get('/bangumi/group/:id', lazyloadRouteHandler('./routes/bangumi/group/topic'));
         
     | 
| 
      
 42 
     | 
    
         
            +
            // router.get('/bangumi/subject/:id', lazyloadRouteHandler('./routes/bangumi/subject'));
         
     | 
| 
      
 43 
     | 
    
         
            +
            // router.get('/bangumi/user/blog/:id', lazyloadRouteHandler('./routes/bangumi/user/blog'));
         
     | 
| 
       44 
44 
     | 
    
         | 
| 
       45 
45 
     | 
    
         
             
            // 報導者 migrated to v2
         
     | 
| 
       46 
46 
     | 
    
         
             
            // router.get('/twreporter/newest', lazyloadRouteHandler('./routes/twreporter/newest'));
         
     | 
| 
       47 
47 
     | 
    
         
             
            // router.get('/twreporter/photography', lazyloadRouteHandler('./routes/twreporter/photography'));
         
     | 
| 
       48 
48 
     | 
    
         
             
            // router.get('/twreporter/category/:cid', lazyloadRouteHandler('./routes/twreporter/category'));
         
     | 
| 
       49 
49 
     | 
    
         | 
| 
       50 
     | 
    
         
            -
            // 微博
         
     | 
| 
       51 
     | 
    
         
            -
            router.get('/weibo/user/:uid/:routeParams?', lazyloadRouteHandler('./routes/weibo/user'));
         
     | 
| 
       52 
     | 
    
         
            -
            router.get('/weibo/keyword/:keyword/:routeParams?', lazyloadRouteHandler('./routes/weibo/keyword'));
         
     | 
| 
       53 
     | 
    
         
            -
            router.get('/weibo/search/hot', lazyloadRouteHandler('./routes/weibo/search/hot'));
         
     | 
| 
       54 
     | 
    
         
            -
            router.get('/weibo/super_index/:id/:type?/:routeParams?', lazyloadRouteHandler('./routes/weibo/super_index'));
         
     | 
| 
       55 
     | 
    
         
            -
            router.get('/weibo/oasis/user/:userid', lazyloadRouteHandler('./routes/weibo/oasis/user'));
         
     | 
| 
      
 50 
     | 
    
         
            +
            // 微博 migrated to v2
         
     | 
| 
      
 51 
     | 
    
         
            +
            // router.get('/weibo/user/:uid/:routeParams?', lazyloadRouteHandler('./routes/weibo/user'));
         
     | 
| 
      
 52 
     | 
    
         
            +
            // router.get('/weibo/keyword/:keyword/:routeParams?', lazyloadRouteHandler('./routes/weibo/keyword'));
         
     | 
| 
      
 53 
     | 
    
         
            +
            // router.get('/weibo/search/hot', lazyloadRouteHandler('./routes/weibo/search/hot'));
         
     | 
| 
      
 54 
     | 
    
         
            +
            // router.get('/weibo/super_index/:id/:type?/:routeParams?', lazyloadRouteHandler('./routes/weibo/super_index'));
         
     | 
| 
      
 55 
     | 
    
         
            +
            // router.get('/weibo/oasis/user/:userid', lazyloadRouteHandler('./routes/weibo/oasis/user'));
         
     | 
| 
       56 
56 
     | 
    
         | 
| 
       57 
     | 
    
         
            -
            // 贴吧
         
     | 
| 
       58 
     | 
    
         
            -
            router.get('/tieba/forum/:kw', lazyloadRouteHandler('./routes/tieba/forum'));
         
     | 
| 
       59 
     | 
    
         
            -
            router.get('/tieba/forum/good/:kw/:cid?', lazyloadRouteHandler('./routes/tieba/forum'));
         
     | 
| 
       60 
     | 
    
         
            -
            router.get('/tieba/post/:id', lazyloadRouteHandler('./routes/tieba/post'));
         
     | 
| 
       61 
     | 
    
         
            -
            router.get('/tieba/post/lz/:id', lazyloadRouteHandler('./routes/tieba/post'));
         
     | 
| 
       62 
     | 
    
         
            -
            router.get('/tieba/user/:uid', lazyloadRouteHandler('./routes/tieba/user'));
         
     | 
| 
      
 57 
     | 
    
         
            +
            // 贴吧 migrated to v2
         
     | 
| 
      
 58 
     | 
    
         
            +
            // router.get('/tieba/forum/:kw', lazyloadRouteHandler('./routes/tieba/forum'));
         
     | 
| 
      
 59 
     | 
    
         
            +
            // router.get('/tieba/forum/good/:kw/:cid?', lazyloadRouteHandler('./routes/tieba/forum'));
         
     | 
| 
      
 60 
     | 
    
         
            +
            // router.get('/tieba/post/:id', lazyloadRouteHandler('./routes/tieba/post'));
         
     | 
| 
      
 61 
     | 
    
         
            +
            // router.get('/tieba/post/lz/:id', lazyloadRouteHandler('./routes/tieba/post'));
         
     | 
| 
      
 62 
     | 
    
         
            +
            // router.get('/tieba/user/:uid', lazyloadRouteHandler('./routes/tieba/user'));
         
     | 
| 
       63 
63 
     | 
    
         | 
| 
       64 
64 
     | 
    
         
             
            // 网易云音乐
         
     | 
| 
       65 
     | 
    
         
            -
            router.get('/ncm/playlist/:id', lazyloadRouteHandler('./routes/ncm/playlist'));
         
     | 
| 
       66 
     | 
    
         
            -
            router.get('/ncm/user/playlist/:uid', lazyloadRouteHandler('./routes/ncm/userplaylist'));
         
     | 
| 
       67 
     | 
    
         
            -
            router.get('/ncm/artist/:id', lazyloadRouteHandler('./routes/ncm/artist'));
         
     | 
| 
       68 
     | 
    
         
            -
            router.get('/ncm/djradio/:id', lazyloadRouteHandler('./routes/ncm/djradio'));
         
     | 
| 
       69 
     | 
    
         
            -
            router.get('/ncm/user/playrecords/:uid/:type?', lazyloadRouteHandler('./routes/ncm/userplayrecords'));
         
     | 
| 
       70 
     | 
    
         
            -
             
     | 
| 
       71 
     | 
    
         
            -
            // 掘金
         
     | 
| 
       72 
     | 
    
         
            -
            router.get('/juejin/category/:category', lazyloadRouteHandler('./routes/juejin/category'));
         
     | 
| 
       73 
     | 
    
         
            -
            router.get('/juejin/tag/:tag', lazyloadRouteHandler('./routes/juejin/tag'));
         
     | 
| 
       74 
     | 
    
         
            -
            router.get('/juejin/trending/:category/:type', lazyloadRouteHandler('./routes/juejin/trending'));
         
     | 
| 
       75 
     | 
    
         
            -
            router.get('/juejin/books', lazyloadRouteHandler('./routes/juejin/books'));
         
     | 
| 
       76 
     | 
    
         
            -
            router.get('/juejin/pins/:type?', lazyloadRouteHandler('./routes/juejin/pins'));
         
     | 
| 
       77 
     | 
    
         
            -
            router.get('/juejin/posts/:id', lazyloadRouteHandler('./routes/juejin/posts'));
         
     | 
| 
       78 
     | 
    
         
            -
            router.get('/juejin/ 
     | 
| 
       79 
     | 
    
         
            -
            router.get('/juejin/ 
     | 
| 
       80 
     | 
    
         
            -
            router.get('/juejin/ 
     | 
| 
       81 
     | 
    
         
            -
            router.get('/juejin/ 
     | 
| 
      
 65 
     | 
    
         
            +
            // router.get('/ncm/playlist/:id', lazyloadRouteHandler('./routes/ncm/playlist'));
         
     | 
| 
      
 66 
     | 
    
         
            +
            // router.get('/ncm/user/playlist/:uid', lazyloadRouteHandler('./routes/ncm/userplaylist'));
         
     | 
| 
      
 67 
     | 
    
         
            +
            // router.get('/ncm/artist/:id', lazyloadRouteHandler('./routes/ncm/artist'));
         
     | 
| 
      
 68 
     | 
    
         
            +
            // router.get('/ncm/djradio/:id', lazyloadRouteHandler('./routes/ncm/djradio'));
         
     | 
| 
      
 69 
     | 
    
         
            +
            // router.get('/ncm/user/playrecords/:uid/:type?', lazyloadRouteHandler('./routes/ncm/userplayrecords'));
         
     | 
| 
      
 70 
     | 
    
         
            +
             
     | 
| 
      
 71 
     | 
    
         
            +
            // 掘金 migrated to v2
         
     | 
| 
      
 72 
     | 
    
         
            +
            // router.get('/juejin/category/:category', lazyloadRouteHandler('./routes/juejin/category'));
         
     | 
| 
      
 73 
     | 
    
         
            +
            // router.get('/juejin/tag/:tag', lazyloadRouteHandler('./routes/juejin/tag'));
         
     | 
| 
      
 74 
     | 
    
         
            +
            // router.get('/juejin/trending/:category/:type', lazyloadRouteHandler('./routes/juejin/trending'));
         
     | 
| 
      
 75 
     | 
    
         
            +
            // router.get('/juejin/books', lazyloadRouteHandler('./routes/juejin/books'));
         
     | 
| 
      
 76 
     | 
    
         
            +
            // router.get('/juejin/pins/:type?', lazyloadRouteHandler('./routes/juejin/pins'));
         
     | 
| 
      
 77 
     | 
    
         
            +
            // router.get('/juejin/posts/:id', lazyloadRouteHandler('./routes/juejin/posts'));
         
     | 
| 
      
 78 
     | 
    
         
            +
            // router.get('/juejin/news/:id', lazyloadRouteHandler('./routes/juejin/news'));
         
     | 
| 
      
 79 
     | 
    
         
            +
            // router.get('/juejin/collections/:userId', lazyloadRouteHandler('./routes/juejin/favorites'));
         
     | 
| 
      
 80 
     | 
    
         
            +
            // router.get('/juejin/collection/:collectionId', lazyloadRouteHandler('./routes/juejin/collection'));
         
     | 
| 
      
 81 
     | 
    
         
            +
            // router.get('/juejin/shares/:userId', lazyloadRouteHandler('./routes/juejin/shares'));
         
     | 
| 
      
 82 
     | 
    
         
            +
            // router.get('/juejin/column/:id', lazyloadRouteHandler('./routes/juejin/column'));
         
     | 
| 
       82 
83 
     | 
    
         | 
| 
       83 
84 
     | 
    
         
             
            // 自如
         
     | 
| 
       84 
85 
     | 
    
         
             
            router.get('/ziroom/room/:city/:iswhole/:room/:keyword', lazyloadRouteHandler('./routes/ziroom/room'));
         
     | 
| 
         @@ -89,24 +90,24 @@ router.get('/jianshu/trending/:timeframe', lazyloadRouteHandler('./routes/jiansh 
     | 
|
| 
       89 
90 
     | 
    
         
             
            router.get('/jianshu/collection/:id', lazyloadRouteHandler('./routes/jianshu/collection'));
         
     | 
| 
       90 
91 
     | 
    
         
             
            router.get('/jianshu/user/:id', lazyloadRouteHandler('./routes/jianshu/user'));
         
     | 
| 
       91 
92 
     | 
    
         | 
| 
       92 
     | 
    
         
            -
            // 知乎
         
     | 
| 
       93 
     | 
    
         
            -
            router.get('/zhihu/collection/:id/:getAll?', lazyloadRouteHandler('./routes/zhihu/collection'));
         
     | 
| 
       94 
     | 
    
         
            -
            router.get('/zhihu/people/activities/:id', lazyloadRouteHandler('./routes/zhihu/activities'));
         
     | 
| 
       95 
     | 
    
         
            -
            router.get('/zhihu/people/answers/:id', lazyloadRouteHandler('./routes/zhihu/answers'));
         
     | 
| 
       96 
     | 
    
         
            -
            router.get('/zhihu/posts/:usertype/:id', lazyloadRouteHandler('./routes/zhihu/posts'));
         
     | 
| 
       97 
     | 
    
         
            -
            router.get('/zhihu/zhuanlan/:id', lazyloadRouteHandler('./routes/zhihu/zhuanlan'));
         
     | 
| 
       98 
     | 
    
         
            -
            router.get('/zhihu/daily', lazyloadRouteHandler('./routes/zhihu/daily'));
         
     | 
| 
       99 
     | 
    
         
            -
            router.get('/zhihu/daily/section/:sectionId', lazyloadRouteHandler('./routes/zhihu/daily_section'));
         
     | 
| 
       100 
     | 
    
         
            -
            router.get('/zhihu/hotlist', lazyloadRouteHandler('./routes/zhihu/hotlist'));
         
     | 
| 
       101 
     | 
    
         
            -
            router.get('/zhihu/pin/hotlist', lazyloadRouteHandler('./routes/zhihu/pin/hotlist'));
         
     | 
| 
       102 
     | 
    
         
            -
            router.get('/zhihu/question/:questionId', lazyloadRouteHandler('./routes/zhihu/question'));
         
     | 
| 
       103 
     | 
    
         
            -
            router.get('/zhihu/topic/:topicId', lazyloadRouteHandler('./routes/zhihu/topic'));
         
     | 
| 
       104 
     | 
    
         
            -
            router.get('/zhihu/people/pins/:id', lazyloadRouteHandler('./routes/zhihu/pin/people'));
         
     | 
| 
       105 
     | 
    
         
            -
            router.get('/zhihu/bookstore/newest', lazyloadRouteHandler('./routes/zhihu/bookstore/newest'));
         
     | 
| 
       106 
     | 
    
         
            -
            router.get('/zhihu/pin/daily', lazyloadRouteHandler('./routes/zhihu/pin/daily'));
         
     | 
| 
       107 
     | 
    
         
            -
            router.get('/zhihu/weekly', lazyloadRouteHandler('./routes/zhihu/weekly'));
         
     | 
| 
       108 
     | 
    
         
            -
            router.get('/zhihu/timeline', lazyloadRouteHandler('./routes/zhihu/timeline'));
         
     | 
| 
       109 
     | 
    
         
            -
            router.get('/zhihu/hot/:category?', lazyloadRouteHandler('./routes/zhihu/hot'));
         
     | 
| 
      
 93 
     | 
    
         
            +
            // 知乎 migrated to v2
         
     | 
| 
      
 94 
     | 
    
         
            +
            // router.get('/zhihu/collection/:id/:getAll?', lazyloadRouteHandler('./routes/zhihu/collection'));
         
     | 
| 
      
 95 
     | 
    
         
            +
            // router.get('/zhihu/people/activities/:id', lazyloadRouteHandler('./routes/zhihu/activities'));
         
     | 
| 
      
 96 
     | 
    
         
            +
            // router.get('/zhihu/people/answers/:id', lazyloadRouteHandler('./routes/zhihu/answers'));
         
     | 
| 
      
 97 
     | 
    
         
            +
            // router.get('/zhihu/posts/:usertype/:id', lazyloadRouteHandler('./routes/zhihu/posts'));
         
     | 
| 
      
 98 
     | 
    
         
            +
            // router.get('/zhihu/zhuanlan/:id', lazyloadRouteHandler('./routes/zhihu/zhuanlan'));
         
     | 
| 
      
 99 
     | 
    
         
            +
            // router.get('/zhihu/daily', lazyloadRouteHandler('./routes/zhihu/daily'));
         
     | 
| 
      
 100 
     | 
    
         
            +
            // router.get('/zhihu/daily/section/:sectionId', lazyloadRouteHandler('./routes/zhihu/daily_section'));
         
     | 
| 
      
 101 
     | 
    
         
            +
            // router.get('/zhihu/hotlist', lazyloadRouteHandler('./routes/zhihu/hotlist'));
         
     | 
| 
      
 102 
     | 
    
         
            +
            // router.get('/zhihu/pin/hotlist', lazyloadRouteHandler('./routes/zhihu/pin/hotlist'));
         
     | 
| 
      
 103 
     | 
    
         
            +
            // router.get('/zhihu/question/:questionId', lazyloadRouteHandler('./routes/zhihu/question'));
         
     | 
| 
      
 104 
     | 
    
         
            +
            // router.get('/zhihu/topic/:topicId', lazyloadRouteHandler('./routes/zhihu/topic'));
         
     | 
| 
      
 105 
     | 
    
         
            +
            // router.get('/zhihu/people/pins/:id', lazyloadRouteHandler('./routes/zhihu/pin/people'));
         
     | 
| 
      
 106 
     | 
    
         
            +
            // router.get('/zhihu/bookstore/newest', lazyloadRouteHandler('./routes/zhihu/bookstore/newest'));
         
     | 
| 
      
 107 
     | 
    
         
            +
            // router.get('/zhihu/pin/daily', lazyloadRouteHandler('./routes/zhihu/pin/daily'));
         
     | 
| 
      
 108 
     | 
    
         
            +
            // router.get('/zhihu/weekly', lazyloadRouteHandler('./routes/zhihu/weekly'));
         
     | 
| 
      
 109 
     | 
    
         
            +
            // router.get('/zhihu/timeline', lazyloadRouteHandler('./routes/zhihu/timeline'));
         
     | 
| 
      
 110 
     | 
    
         
            +
            // router.get('/zhihu/hot/:category?', lazyloadRouteHandler('./routes/zhihu/hot'));
         
     | 
| 
       110 
111 
     | 
    
         | 
| 
       111 
112 
     | 
    
         
             
            // 妹子图
         
     | 
| 
       112 
113 
     | 
    
         
             
            router.get('/mzitu/home/:type?', lazyloadRouteHandler('./routes/mzitu/home'));
         
     | 
| 
         @@ -115,12 +116,12 @@ router.get('/mzitu/category/:category', lazyloadRouteHandler('./routes/mzitu/cat 
     | 
|
| 
       115 
116 
     | 
    
         
             
            router.get('/mzitu/post/:id', lazyloadRouteHandler('./routes/mzitu/post'));
         
     | 
| 
       116 
117 
     | 
    
         
             
            router.get('/mzitu/tag/:tag', lazyloadRouteHandler('./routes/mzitu/tag'));
         
     | 
| 
       117 
118 
     | 
    
         | 
| 
       118 
     | 
    
         
            -
            // pixiv
         
     | 
| 
       119 
     | 
    
         
            -
            router.get('/pixiv/user/bookmarks/:id', lazyloadRouteHandler('./routes/pixiv/bookmarks'));
         
     | 
| 
       120 
     | 
    
         
            -
            router.get('/pixiv/user/illustfollows', lazyloadRouteHandler('./routes/pixiv/illustfollow'));
         
     | 
| 
       121 
     | 
    
         
            -
            router.get('/pixiv/user/:id', lazyloadRouteHandler('./routes/pixiv/user'));
         
     | 
| 
       122 
     | 
    
         
            -
            router.get('/pixiv/ranking/:mode/:date?', lazyloadRouteHandler('./routes/pixiv/ranking'));
         
     | 
| 
       123 
     | 
    
         
            -
            router.get('/pixiv/search/:keyword/:order?/:mode?', lazyloadRouteHandler('./routes/pixiv/search'));
         
     | 
| 
      
 119 
     | 
    
         
            +
            // pixiv migrated to v2
         
     | 
| 
      
 120 
     | 
    
         
            +
            // router.get('/pixiv/user/bookmarks/:id', lazyloadRouteHandler('./routes/pixiv/bookmarks'));
         
     | 
| 
      
 121 
     | 
    
         
            +
            // router.get('/pixiv/user/illustfollows', lazyloadRouteHandler('./routes/pixiv/illustfollow'));
         
     | 
| 
      
 122 
     | 
    
         
            +
            // router.get('/pixiv/user/:id', lazyloadRouteHandler('./routes/pixiv/user'));
         
     | 
| 
      
 123 
     | 
    
         
            +
            // router.get('/pixiv/ranking/:mode/:date?', lazyloadRouteHandler('./routes/pixiv/ranking'));
         
     | 
| 
      
 124 
     | 
    
         
            +
            // router.get('/pixiv/search/:keyword/:order?/:mode?', lazyloadRouteHandler('./routes/pixiv/search'));
         
     | 
| 
       124 
125 
     | 
    
         | 
| 
       125 
126 
     | 
    
         
             
            // pixiv-fanbox
         
     | 
| 
       126 
127 
     | 
    
         
             
            router.get('/fanbox/:user?', lazyloadRouteHandler('./routes/fanbox/main'));
         
     | 
| 
         @@ -151,32 +152,32 @@ router.get('/jinritoutiao/keyword/:keyword', lazyloadRouteHandler('./routes/jinr 
     | 
|
| 
       151 
152 
     | 
    
         
             
            router.get('/disqus/posts/:forum', lazyloadRouteHandler('./routes/disqus/posts'));
         
     | 
| 
       152 
153 
     | 
    
         | 
| 
       153 
154 
     | 
    
         
             
            // Twitter
         
     | 
| 
       154 
     | 
    
         
            -
            router.get('/twitter/user/:id/:routeParams?', lazyloadRouteHandler('./routes/twitter/user'));
         
     | 
| 
       155 
     | 
    
         
            -
            router.get('/twitter/list/:id/:name/:routeParams?', lazyloadRouteHandler('./routes/twitter/list'));
         
     | 
| 
       156 
     | 
    
         
            -
            router.get('/twitter/likes/:id/:routeParams?', lazyloadRouteHandler('./routes/twitter/likes'));
         
     | 
| 
       157 
     | 
    
         
            -
            router.get('/twitter/followings/:id/:routeParams?', lazyloadRouteHandler('./routes/twitter/followings'));
         
     | 
| 
       158 
     | 
    
         
            -
            router.get('/twitter/keyword/:keyword/:routeParams?/:limit?', lazyloadRouteHandler('./routes/twitter/keyword'));
         
     | 
| 
       159 
     | 
    
         
            -
            router.get('/twitter/trends/:woeid?', lazyloadRouteHandler('./routes/twitter/trends'));
         
     | 
| 
       160 
     | 
    
         
            -
            router.get('/twitter/media/:id/:routeParams?', lazyloadRouteHandler('./routes/twitter/media'));
         
     | 
| 
       161 
     | 
    
         
            -
             
     | 
| 
       162 
     | 
    
         
            -
            // YouTube
         
     | 
| 
       163 
     | 
    
         
            -
            router.get('/youtube/user/:username/:embed?', lazyloadRouteHandler('./routes/youtube/user'));
         
     | 
| 
       164 
     | 
    
         
            -
            router.get('/youtube/channel/:id/:embed?', lazyloadRouteHandler('./routes/youtube/channel'));
         
     | 
| 
       165 
     | 
    
         
            -
            router.get('/youtube/playlist/:id/:embed?', lazyloadRouteHandler('./routes/youtube/playlist'));
         
     | 
| 
      
 155 
     | 
    
         
            +
            // router.get('/twitter/user/:id/:routeParams?', lazyloadRouteHandler('./routes/twitter/user'));
         
     | 
| 
      
 156 
     | 
    
         
            +
            // router.get('/twitter/list/:id/:name/:routeParams?', lazyloadRouteHandler('./routes/twitter/list'));
         
     | 
| 
      
 157 
     | 
    
         
            +
            // router.get('/twitter/likes/:id/:routeParams?', lazyloadRouteHandler('./routes/twitter/likes'));
         
     | 
| 
      
 158 
     | 
    
         
            +
            // router.get('/twitter/followings/:id/:routeParams?', lazyloadRouteHandler('./routes/twitter/followings'));
         
     | 
| 
      
 159 
     | 
    
         
            +
            // router.get('/twitter/keyword/:keyword/:routeParams?/:limit?', lazyloadRouteHandler('./routes/twitter/keyword'));
         
     | 
| 
      
 160 
     | 
    
         
            +
            // router.get('/twitter/trends/:woeid?', lazyloadRouteHandler('./routes/twitter/trends'));
         
     | 
| 
      
 161 
     | 
    
         
            +
            // router.get('/twitter/media/:id/:routeParams?', lazyloadRouteHandler('./routes/twitter/media'));
         
     | 
| 
      
 162 
     | 
    
         
            +
             
     | 
| 
      
 163 
     | 
    
         
            +
            // YouTube migrated to v2
         
     | 
| 
      
 164 
     | 
    
         
            +
            // router.get('/youtube/user/:username/:embed?', lazyloadRouteHandler('./routes/youtube/user'));
         
     | 
| 
      
 165 
     | 
    
         
            +
            // router.get('/youtube/channel/:id/:embed?', lazyloadRouteHandler('./routes/youtube/channel'));
         
     | 
| 
      
 166 
     | 
    
         
            +
            // router.get('/youtube/playlist/:id/:embed?', lazyloadRouteHandler('./routes/youtube/playlist'));
         
     | 
| 
       166 
167 
     | 
    
         | 
| 
       167 
168 
     | 
    
         
             
            // 极客时间
         
     | 
| 
       168 
169 
     | 
    
         
             
            router.get('/geektime/column/:cid', lazyloadRouteHandler('./routes/geektime/column'));
         
     | 
| 
       169 
170 
     | 
    
         
             
            router.get('/geektime/news', lazyloadRouteHandler('./routes/geektime/news'));
         
     | 
| 
       170 
171 
     | 
    
         | 
| 
       171 
172 
     | 
    
         
             
            // 界面新闻
         
     | 
| 
       172 
     | 
    
         
            -
            router.get('/jiemian/list/:cid', lazyloadRouteHandler('./routes/jiemian/list.js'));
         
     | 
| 
      
 173 
     | 
    
         
            +
            // router.get('/jiemian/list/:cid', lazyloadRouteHandler('./routes/jiemian/list.js'));
         
     | 
| 
       173 
174 
     | 
    
         | 
| 
       174 
175 
     | 
    
         
             
            // 好奇心日报
         
     | 
| 
       175 
     | 
    
         
            -
            router.get('/qdaily/:type/:id', lazyloadRouteHandler('./routes/qdaily/index'));
         
     | 
| 
      
 176 
     | 
    
         
            +
            // router.get('/qdaily/:type/:id', lazyloadRouteHandler('./routes/qdaily/index'));
         
     | 
| 
       176 
177 
     | 
    
         | 
| 
       177 
178 
     | 
    
         
             
            // 爱奇艺
         
     | 
| 
       178 
     | 
    
         
            -
            router.get('/iqiyi/dongman/:id', lazyloadRouteHandler('./routes/iqiyi/dongman'));
         
     | 
| 
       179 
     | 
    
         
            -
            router.get('/iqiyi/user/video/:uid', lazyloadRouteHandler('./routes/iqiyi/video'));
         
     | 
| 
      
 179 
     | 
    
         
            +
            // router.get('/iqiyi/dongman/:id', lazyloadRouteHandler('./routes/iqiyi/dongman'));
         
     | 
| 
      
 180 
     | 
    
         
            +
            // router.get('/iqiyi/user/video/:uid', lazyloadRouteHandler('./routes/iqiyi/video'));
         
     | 
| 
       180 
181 
     | 
    
         | 
| 
       181 
182 
     | 
    
         
             
            // 南方周末
         
     | 
| 
       182 
183 
     | 
    
         
             
            router.get('/infzm/:id', lazyloadRouteHandler('./routes/infzm/news'));
         
     | 
| 
         @@ -187,14 +188,14 @@ router.get('/dribbble/user/:name', lazyloadRouteHandler('./routes/dribbble/user' 
     | 
|
| 
       187 
188 
     | 
    
         
             
            router.get('/dribbble/keyword/:keyword', lazyloadRouteHandler('./routes/dribbble/keyword'));
         
     | 
| 
       188 
189 
     | 
    
         | 
| 
       189 
190 
     | 
    
         
             
            // 斗鱼
         
     | 
| 
       190 
     | 
    
         
            -
            router.get('/douyu/room/:id', lazyloadRouteHandler('./routes/douyu/room'));
         
     | 
| 
      
 191 
     | 
    
         
            +
            // router.get('/douyu/room/:id', lazyloadRouteHandler('./routes/douyu/room'));
         
     | 
| 
       191 
192 
     | 
    
         | 
| 
       192 
193 
     | 
    
         
             
            // 虎牙
         
     | 
| 
       193 
194 
     | 
    
         
             
            router.get('/huya/live/:id', lazyloadRouteHandler('./routes/huya/live'));
         
     | 
| 
       194 
195 
     | 
    
         | 
| 
       195 
196 
     | 
    
         
             
            // 浪Play(原kingkong)直播
         
     | 
| 
       196 
     | 
    
         
            -
            router.get('/kingkong/room/:id', lazyloadRouteHandler('./routes/langlive/room'));
         
     | 
| 
       197 
     | 
    
         
            -
            router.get('/langlive/room/:id', lazyloadRouteHandler('./routes/langlive/room'));
         
     | 
| 
      
 197 
     | 
    
         
            +
            // router.get('/kingkong/room/:id', lazyloadRouteHandler('./routes/langlive/room'));
         
     | 
| 
      
 198 
     | 
    
         
            +
            // router.get('/langlive/room/:id', lazyloadRouteHandler('./routes/langlive/room'));
         
     | 
| 
       198 
199 
     | 
    
         | 
| 
       199 
200 
     | 
    
         
             
            // SHOWROOM直播
         
     | 
| 
       200 
201 
     | 
    
         
             
            router.get('/showroom/room/:id', lazyloadRouteHandler('./routes/showroom/room'));
         
     | 
| 
         @@ -227,8 +228,8 @@ router.get('/pornhub/:language?/users/:username', lazyloadRouteHandler('./routes 
     | 
|
| 
       227 
228 
     | 
    
         
             
            router.get('/pornhub/:language?/model/:username/:sort?', lazyloadRouteHandler('./routes/pornhub/model'));
         
     | 
| 
       228 
229 
     | 
    
         
             
            router.get('/pornhub/:language?/pornstar/:username/:sort?', lazyloadRouteHandler('./routes/pornhub/pornstar'));
         
     | 
| 
       229 
230 
     | 
    
         | 
| 
       230 
     | 
    
         
            -
            // Prestige
         
     | 
| 
       231 
     | 
    
         
            -
            router.get('/prestige-av/series/:mid/:sort?', lazyloadRouteHandler('./routes/prestige-av/series'));
         
     | 
| 
      
 231 
     | 
    
         
            +
            // Prestige migrated to v2
         
     | 
| 
      
 232 
     | 
    
         
            +
            // router.get('/prestige-av/series/:mid/:sort?', lazyloadRouteHandler('./routes/prestige-av/series'));
         
     | 
| 
       232 
233 
     | 
    
         | 
| 
       233 
234 
     | 
    
         
             
            // yande.re
         
     | 
| 
       234 
235 
     | 
    
         
             
            router.get('/yande.re/post/popular_recent', lazyloadRouteHandler('./routes/yande.re/post_popular_recent'));
         
     | 
| 
         @@ -252,27 +253,27 @@ router.get('/ximalaya/:type/:id/:all/:shownote?', lazyloadRouteHandler('./routes 
     | 
|
| 
       252 
253 
     | 
    
         
             
            router.get('/eztv/torrents/:imdb_id', lazyloadRouteHandler('./routes/eztv/imdb'));
         
     | 
| 
       253 
254 
     | 
    
         | 
| 
       254 
255 
     | 
    
         
             
            // 什么值得买
         
     | 
| 
       255 
     | 
    
         
            -
            router.get('/smzdm/keyword/:keyword', lazyloadRouteHandler('./routes/smzdm/keyword'));
         
     | 
| 
       256 
     | 
    
         
            -
            router.get('/smzdm/ranking/:rank_type/:rank_id/:hour', lazyloadRouteHandler('./routes/smzdm/ranking'));
         
     | 
| 
       257 
     | 
    
         
            -
            router.get('/smzdm/haowen/:day?', lazyloadRouteHandler('./routes/smzdm/haowen'));
         
     | 
| 
       258 
     | 
    
         
            -
            router.get('/smzdm/haowen/fenlei/:name/:sort?', lazyloadRouteHandler('./routes/smzdm/haowen_fenlei'));
         
     | 
| 
       259 
     | 
    
         
            -
            router.get('/smzdm/article/:uid', lazyloadRouteHandler('./routes/smzdm/article'));
         
     | 
| 
       260 
     | 
    
         
            -
            router.get('/smzdm/baoliao/:uid', lazyloadRouteHandler('./routes/smzdm/baoliao'));
         
     | 
| 
      
 256 
     | 
    
         
            +
            // router.get('/smzdm/keyword/:keyword', lazyloadRouteHandler('./routes/smzdm/keyword'));
         
     | 
| 
      
 257 
     | 
    
         
            +
            // router.get('/smzdm/ranking/:rank_type/:rank_id/:hour', lazyloadRouteHandler('./routes/smzdm/ranking'));
         
     | 
| 
      
 258 
     | 
    
         
            +
            // router.get('/smzdm/haowen/:day?', lazyloadRouteHandler('./routes/smzdm/haowen'));
         
     | 
| 
      
 259 
     | 
    
         
            +
            // router.get('/smzdm/haowen/fenlei/:name/:sort?', lazyloadRouteHandler('./routes/smzdm/haowen_fenlei'));
         
     | 
| 
      
 260 
     | 
    
         
            +
            // router.get('/smzdm/article/:uid', lazyloadRouteHandler('./routes/smzdm/article'));
         
     | 
| 
      
 261 
     | 
    
         
            +
            // router.get('/smzdm/baoliao/:uid', lazyloadRouteHandler('./routes/smzdm/baoliao'));
         
     | 
| 
       261 
262 
     | 
    
         | 
| 
       262 
263 
     | 
    
         
             
            // 新京报
         
     | 
| 
       263 
264 
     | 
    
         
             
            router.get('/bjnews/:cat', lazyloadRouteHandler('./routes/bjnews/news'));
         
     | 
| 
       264 
265 
     | 
    
         
             
            router.get('/bjnews/epaper/:cat', lazyloadRouteHandler('./routes/bjnews/epaper'));
         
     | 
| 
       265 
266 
     | 
    
         | 
| 
       266 
     | 
    
         
            -
            // 停水通知
         
     | 
| 
       267 
     | 
    
         
            -
            router.get('/tingshuitz/hangzhou', lazyloadRouteHandler('./routes/tingshuitz/hangzhou'));
         
     | 
| 
       268 
     | 
    
         
            -
            router.get('/tingshuitz/xiaoshan', lazyloadRouteHandler('./routes/tingshuitz/xiaoshan'));
         
     | 
| 
       269 
     | 
    
         
            -
            router.get('/tingshuitz/dalian', lazyloadRouteHandler('./routes/tingshuitz/dalian'));
         
     | 
| 
       270 
     | 
    
         
            -
            router.get('/tingshuitz/guangzhou', lazyloadRouteHandler('./routes/tingshuitz/guangzhou'));
         
     | 
| 
       271 
     | 
    
         
            -
            router.get('/tingshuitz/dongguan', lazyloadRouteHandler('./routes/tingshuitz/dongguan'));
         
     | 
| 
       272 
     | 
    
         
            -
            router.get('/tingshuitz/xian', lazyloadRouteHandler('./routes/tingshuitz/xian'));
         
     | 
| 
       273 
     | 
    
         
            -
            router.get('/tingshuitz/yangjiang', lazyloadRouteHandler('./routes/tingshuitz/yangjiang'));
         
     | 
| 
       274 
     | 
    
         
            -
            router.get('/tingshuitz/nanjing', lazyloadRouteHandler('./routes/tingshuitz/nanjing'));
         
     | 
| 
       275 
     | 
    
         
            -
            router.get('/tingshuitz/wuhan', lazyloadRouteHandler('./routes/tingshuitz/wuhan'));
         
     | 
| 
      
 267 
     | 
    
         
            +
            // 停水通知 migrated to v2
         
     | 
| 
      
 268 
     | 
    
         
            +
            // router.get('/tingshuitz/hangzhou', lazyloadRouteHandler('./routes/tingshuitz/hangzhou'));
         
     | 
| 
      
 269 
     | 
    
         
            +
            // router.get('/tingshuitz/xiaoshan', lazyloadRouteHandler('./routes/tingshuitz/xiaoshan'));
         
     | 
| 
      
 270 
     | 
    
         
            +
            // router.get('/tingshuitz/dalian', lazyloadRouteHandler('./routes/tingshuitz/dalian'));
         
     | 
| 
      
 271 
     | 
    
         
            +
            // router.get('/tingshuitz/guangzhou', lazyloadRouteHandler('./routes/tingshuitz/guangzhou'));
         
     | 
| 
      
 272 
     | 
    
         
            +
            // router.get('/tingshuitz/dongguan', lazyloadRouteHandler('./routes/tingshuitz/dongguan'));
         
     | 
| 
      
 273 
     | 
    
         
            +
            // router.get('/tingshuitz/xian', lazyloadRouteHandler('./routes/tingshuitz/xian'));
         
     | 
| 
      
 274 
     | 
    
         
            +
            // router.get('/tingshuitz/yangjiang', lazyloadRouteHandler('./routes/tingshuitz/yangjiang'));
         
     | 
| 
      
 275 
     | 
    
         
            +
            // router.get('/tingshuitz/nanjing', lazyloadRouteHandler('./routes/tingshuitz/nanjing'));
         
     | 
| 
      
 276 
     | 
    
         
            +
            // router.get('/tingshuitz/wuhan', lazyloadRouteHandler('./routes/tingshuitz/wuhan'));
         
     | 
| 
       276 
277 
     | 
    
         | 
| 
       277 
278 
     | 
    
         
             
            // 米哈游
         
     | 
| 
       278 
279 
     | 
    
         
             
            router.get('/mihoyo/bh3/:type', lazyloadRouteHandler('./routes/mihoyo/bh3'));
         
     | 
| 
         @@ -287,11 +288,11 @@ router.get('/mihoyo/bh2/:type', lazyloadRouteHandler('./routes/mihoyo/bh2')); 
     | 
|
| 
       287 
288 
     | 
    
         
             
            // router.get('/cctv-special/:id?', lazyloadRouteHandler('./routes/cctv/special'));
         
     | 
| 
       288 
289 
     | 
    
         | 
| 
       289 
290 
     | 
    
         
             
            // 财新博客
         
     | 
| 
       290 
     | 
    
         
            -
            router.get('/caixin/blog/:column', lazyloadRouteHandler('./routes/caixin/blog'));
         
     | 
| 
       291 
     | 
    
         
            -
            router.get('/caixin/article', lazyloadRouteHandler('./routes/caixin/article'));
         
     | 
| 
       292 
     | 
    
         
            -
            router.get('/caixin/database', lazyloadRouteHandler('./routes/caixin/database'));
         
     | 
| 
       293 
     | 
    
         
            -
            router.get('/caixin/yxnews', lazyloadRouteHandler('./routes/caixin/yxnews'));
         
     | 
| 
       294 
     | 
    
         
            -
            router.get('/caixin/:column/:category', lazyloadRouteHandler('./routes/caixin/category'));
         
     | 
| 
      
 291 
     | 
    
         
            +
            // router.get('/caixin/blog/:column', lazyloadRouteHandler('./routes/caixin/blog'));
         
     | 
| 
      
 292 
     | 
    
         
            +
            // router.get('/caixin/article', lazyloadRouteHandler('./routes/caixin/article'));
         
     | 
| 
      
 293 
     | 
    
         
            +
            // router.get('/caixin/database', lazyloadRouteHandler('./routes/caixin/database'));
         
     | 
| 
      
 294 
     | 
    
         
            +
            // router.get('/caixin/yxnews', lazyloadRouteHandler('./routes/caixin/yxnews'));
         
     | 
| 
      
 295 
     | 
    
         
            +
            // router.get('/caixin/:column/:category', lazyloadRouteHandler('./routes/caixin/category'));
         
     | 
| 
       295 
296 
     | 
    
         | 
| 
       296 
297 
     | 
    
         
             
            // 草榴社区
         
     | 
| 
       297 
298 
     | 
    
         
             
            router.get('/t66y/post/:tid', lazyloadRouteHandler('./routes/t66y/post'));
         
     | 
| 
         @@ -329,19 +330,19 @@ router.get('/cpython/:pre?', lazyloadRouteHandler('./routes/cpython')); 
     | 
|
| 
       329 
330 
     | 
    
         
             
            // 小米
         
     | 
| 
       330 
331 
     | 
    
         
             
            router.get('/mi/golden', lazyloadRouteHandler('./routes/mi/golden'));
         
     | 
| 
       331 
332 
     | 
    
         
             
            router.get('/mi/crowdfunding', lazyloadRouteHandler('./routes/mi/crowdfunding'));
         
     | 
| 
       332 
     | 
    
         
            -
            router.get('/mi/youpin/crowdfunding', lazyloadRouteHandler('./routes/mi/youpin/crowdfunding'));
         
     | 
| 
       333 
     | 
    
         
            -
            router.get('/mi/youpin/new/:sort?', lazyloadRouteHandler('./routes/mi/youpin/new'));
         
     | 
| 
      
 333 
     | 
    
         
            +
            // router.get('/mi/youpin/crowdfunding', lazyloadRouteHandler('./routes/mi/youpin/crowdfunding'));
         
     | 
| 
      
 334 
     | 
    
         
            +
            // router.get('/mi/youpin/new/:sort?', lazyloadRouteHandler('./routes/mi/youpin/new'));
         
     | 
| 
       334 
335 
     | 
    
         
             
            router.get('/miui/:device/:type?/:region?', lazyloadRouteHandler('./routes/mi/miui/index'));
         
     | 
| 
       335 
336 
     | 
    
         
             
            router.get('/mi/bbs/board/:boardId', lazyloadRouteHandler('./routes/mi/board'));
         
     | 
| 
       336 
337 
     | 
    
         | 
| 
       337 
338 
     | 
    
         
             
            // Keep
         
     | 
| 
       338 
     | 
    
         
            -
            router.get('/keep/user/:id', lazyloadRouteHandler('./routes/keep/user'));
         
     | 
| 
      
 339 
     | 
    
         
            +
            // router.get('/keep/user/:id', lazyloadRouteHandler('./routes/keep/user'));
         
     | 
| 
       339 
340 
     | 
    
         | 
| 
       340 
     | 
    
         
            -
            // 起点
         
     | 
| 
       341 
     | 
    
         
            -
            router.get('/qidian/chapter/:id', lazyloadRouteHandler('./routes/qidian/chapter'));
         
     | 
| 
       342 
     | 
    
         
            -
            router.get('/qidian/forum/:id', lazyloadRouteHandler('./routes/qidian/forum'));
         
     | 
| 
       343 
     | 
    
         
            -
            router.get('/qidian/free/:type?', lazyloadRouteHandler('./routes/qidian/free'));
         
     | 
| 
       344 
     | 
    
         
            -
            router.get('/qidian/free-next/:type?', lazyloadRouteHandler('./routes/qidian/free-next'));
         
     | 
| 
      
 341 
     | 
    
         
            +
            // 起点 migrated to v2
         
     | 
| 
      
 342 
     | 
    
         
            +
            // router.get('/qidian/chapter/:id', lazyloadRouteHandler('./routes/qidian/chapter'));
         
     | 
| 
      
 343 
     | 
    
         
            +
            // router.get('/qidian/forum/:id', lazyloadRouteHandler('./routes/qidian/forum'));
         
     | 
| 
      
 344 
     | 
    
         
            +
            // router.get('/qidian/free/:type?', lazyloadRouteHandler('./routes/qidian/free'));
         
     | 
| 
      
 345 
     | 
    
         
            +
            // router.get('/qidian/free-next/:type?', lazyloadRouteHandler('./routes/qidian/free-next'));
         
     | 
| 
       345 
346 
     | 
    
         | 
| 
       346 
347 
     | 
    
         
             
            // 纵横
         
     | 
| 
       347 
348 
     | 
    
         
             
            router.get('/zongheng/chapter/:id', lazyloadRouteHandler('./routes/zongheng/chapter'));
         
     | 
| 
         @@ -386,8 +387,8 @@ router.get('/xuangubao/subject/:subject_id', lazyloadRouteHandler('./routes/xuan 
     | 
|
| 
       386 
387 
     | 
    
         
             
            // router.get('/xueqiu/hots', lazyloadRouteHandler('./routes/xueqiu/hots'));
         
     | 
| 
       387 
388 
     | 
    
         
             
            // router.get('/xueqiu/stock_comments/:id/:titleLength?', lazyloadRouteHandler('./routes/xueqiu/stock_comments'));
         
     | 
| 
       388 
389 
     | 
    
         | 
| 
       389 
     | 
    
         
            -
            // Greasy Fork
         
     | 
| 
       390 
     | 
    
         
            -
            router.get('/greasyfork/:language/:domain?', lazyloadRouteHandler('./routes/greasyfork/scripts'));
         
     | 
| 
      
 390 
     | 
    
         
            +
            // Greasy Fork migrated to v2
         
     | 
| 
      
 391 
     | 
    
         
            +
            // router.get('/greasyfork/:language/:domain?', lazyloadRouteHandler('./routes/greasyfork/scripts'));
         
     | 
| 
       391 
392 
     | 
    
         | 
| 
       392 
393 
     | 
    
         
             
            // Gwern Branwen
         
     | 
| 
       393 
394 
     | 
    
         
             
            router.get('/gwern/:category', lazyloadRouteHandler('./routes/gwern/category'));
         
     | 
| 
         @@ -395,19 +396,19 @@ router.get('/gwern/:category', lazyloadRouteHandler('./routes/gwern/category')); 
     | 
|
| 
       395 
396 
     | 
    
         
             
            // LinkedKeeper
         
     | 
| 
       396 
397 
     | 
    
         
             
            router.get('/linkedkeeper/:type/:id?', lazyloadRouteHandler('./routes/linkedkeeper/index'));
         
     | 
| 
       397 
398 
     | 
    
         | 
| 
       398 
     | 
    
         
            -
            // 开源中国
         
     | 
| 
       399 
     | 
    
         
            -
            router.get('/oschina/news/:category?', lazyloadRouteHandler('./routes/oschina/news'));
         
     | 
| 
       400 
     | 
    
         
            -
            router.get('/oschina/user/:id', lazyloadRouteHandler('./routes/oschina/user'));
         
     | 
| 
       401 
     | 
    
         
            -
            router.get('/oschina/u/:id', lazyloadRouteHandler('./routes/oschina/u'));
         
     | 
| 
       402 
     | 
    
         
            -
            router.get('/oschina/topic/:topic', lazyloadRouteHandler('./routes/oschina/topic'));
         
     | 
| 
      
 399 
     | 
    
         
            +
            // 开源中国 migrated to v2
         
     | 
| 
      
 400 
     | 
    
         
            +
            // router.get('/oschina/news/:category?', lazyloadRouteHandler('./routes/oschina/news'));
         
     | 
| 
      
 401 
     | 
    
         
            +
            // router.get('/oschina/user/:id', lazyloadRouteHandler('./routes/oschina/user'));
         
     | 
| 
      
 402 
     | 
    
         
            +
            // router.get('/oschina/u/:id', lazyloadRouteHandler('./routes/oschina/u'));
         
     | 
| 
      
 403 
     | 
    
         
            +
            // router.get('/oschina/topic/:topic', lazyloadRouteHandler('./routes/oschina/topic'));
         
     | 
| 
       403 
404 
     | 
    
         | 
| 
       404 
405 
     | 
    
         
             
            // MIT Technology Review
         
     | 
| 
       405 
406 
     | 
    
         
             
            router.get('/technologyreview', lazyloadRouteHandler('./routes/technologyreview/index'));
         
     | 
| 
       406 
407 
     | 
    
         
             
            router.get('/technologyreview/:category_name', lazyloadRouteHandler('./routes/technologyreview/topic'));
         
     | 
| 
       407 
408 
     | 
    
         | 
| 
       408 
409 
     | 
    
         
             
            // 安全客
         
     | 
| 
       409 
     | 
    
         
            -
            router.get('/aqk/vul', lazyloadRouteHandler('./routes/aqk/vul'));
         
     | 
| 
       410 
     | 
    
         
            -
            router.get('/aqk/:category', lazyloadRouteHandler('./routes/aqk/category'));
         
     | 
| 
      
 410 
     | 
    
         
            +
            // router.get('/aqk/vul', lazyloadRouteHandler('./routes/aqk/vul'));
         
     | 
| 
      
 411 
     | 
    
         
            +
            // router.get('/aqk/:category', lazyloadRouteHandler('./routes/aqk/category'));
         
     | 
| 
       411 
412 
     | 
    
         | 
| 
       412 
413 
     | 
    
         
             
            // 腾讯游戏开发者社区
         
     | 
| 
       413 
414 
     | 
    
         
             
            router.get('/gameinstitute/community/:tag?', lazyloadRouteHandler('./routes/tencent/gameinstitute/community'));
         
     | 
| 
         @@ -453,19 +454,17 @@ router.get('/hopper/:lowestOnly/:from/:to?', lazyloadRouteHandler('./routes/hopp 
     | 
|
| 
       453 
454 
     | 
    
         
             
            router.get('/mafengwo/note/:type', lazyloadRouteHandler('./routes/mafengwo/note'));
         
     | 
| 
       454 
455 
     | 
    
         
             
            router.get('/mafengwo/ziyouxing/:code', lazyloadRouteHandler('./routes/mafengwo/ziyouxing'));
         
     | 
| 
       455 
456 
     | 
    
         | 
| 
       456 
     | 
    
         
            -
            // 中国地震局震情速递(与地震台网同步更新)
         
     | 
| 
       457 
     | 
    
         
            -
            router.get('/earthquake/:region?', lazyloadRouteHandler('./routes/earthquake'));
         
     | 
| 
       458 
     | 
    
         
            -
             
     | 
| 
      
 457 
     | 
    
         
            +
            // 中国地震局震情速递(与地震台网同步更新)migrated to v2
         
     | 
| 
      
 458 
     | 
    
         
            +
            // router.get('/earthquake/:region?', lazyloadRouteHandler('./routes/earthquake'));
         
     | 
| 
       459 
459 
     | 
    
         
             
            // 中国地震台网
         
     | 
| 
       460 
     | 
    
         
            -
            router.get('/earthquake/ceic/:type', lazyloadRouteHandler('./routes/earthquake/ceic'));
         
     | 
| 
      
 460 
     | 
    
         
            +
            // router.get('/earthquake/ceic/:type', lazyloadRouteHandler('./routes/earthquake/ceic'));
         
     | 
| 
       461 
461 
     | 
    
         | 
| 
       462 
462 
     | 
    
         
             
            // 小说
         
     | 
| 
       463 
     | 
    
         
            -
            router.get('/novel/biquge/:id', lazyloadRouteHandler('./routes/novel/biquge'));
         
     | 
| 
       464 
     | 
    
         
            -
            router.get('/novel/biqugeinfo/:id/:limit?', lazyloadRouteHandler('./routes/novel/biqugeinfo'));
         
     | 
| 
      
 463 
     | 
    
         
            +
            // router.get('/novel/biquge/:id', lazyloadRouteHandler('./routes/novel/biquge'));
         
     | 
| 
      
 464 
     | 
    
         
            +
            // router.get('/novel/biqugeinfo/:id/:limit?', lazyloadRouteHandler('./routes/novel/biqugeinfo'));
         
     | 
| 
       465 
465 
     | 
    
         
             
            router.get('/novel/uukanshu/:uid', lazyloadRouteHandler('./routes/novel/uukanshu'));
         
     | 
| 
       466 
466 
     | 
    
         
             
            router.get('/novel/wenxuemi/:id1/:id2', lazyloadRouteHandler('./routes/novel/wenxuemi'));
         
     | 
| 
       467 
467 
     | 
    
         
             
            router.get('/novel/booksky/:id', lazyloadRouteHandler('./routes/novel/booksky'));
         
     | 
| 
       468 
     | 
    
         
            -
            router.get('/novel/shuquge/:id', lazyloadRouteHandler('./routes/novel/shuquge'));
         
     | 
| 
       469 
468 
     | 
    
         
             
            router.get('/novel/ptwxz/:id1/:id2', lazyloadRouteHandler('./routes/novel/ptwxz'));
         
     | 
| 
       470 
469 
     | 
    
         
             
            router.get('/novel/zhaishuyuan/:id', lazyloadRouteHandler('./routes/novel/zhaishuyuan'));
         
     | 
| 
       471 
470 
     | 
    
         | 
| 
         @@ -496,8 +495,8 @@ router.get('/zdfx', lazyloadRouteHandler('./routes/galgame/zdfx')); 
     | 
|
| 
       496 
495 
     | 
    
         
             
            // router.get('/bjfu/it/:type', lazyloadRouteHandler('./routes/universities/bjfu/it/index'));
         
     | 
| 
       497 
496 
     | 
    
         | 
| 
       498 
497 
     | 
    
         
             
            // 北京理工大学
         
     | 
| 
       499 
     | 
    
         
            -
            router.get('/bit/jwc', lazyloadRouteHandler('./routes/universities/bit/jwc/jwc'));
         
     | 
| 
       500 
     | 
    
         
            -
            router.get('/bit/cs', lazyloadRouteHandler('./routes/universities/bit/cs/cs'));
         
     | 
| 
      
 498 
     | 
    
         
            +
            // router.get('/bit/jwc', lazyloadRouteHandler('./routes/universities/bit/jwc/jwc'));
         
     | 
| 
      
 499 
     | 
    
         
            +
            // router.get('/bit/cs', lazyloadRouteHandler('./routes/universities/bit/cs/cs'));
         
     | 
| 
       501 
500 
     | 
    
         | 
| 
       502 
501 
     | 
    
         
             
            // 北京交通大学
         
     | 
| 
       503 
502 
     | 
    
         
             
            router.get('/bjtu/gs/:type', lazyloadRouteHandler('./routes/universities/bjtu/gs'));
         
     | 
| 
         @@ -527,15 +526,15 @@ router.get('/hhu/libNews', lazyloadRouteHandler('./routes/universities/hhu/libNe 
     | 
|
| 
       527 
526 
     | 
    
         
             
            // 河海大学常州校区
         
     | 
| 
       528 
527 
     | 
    
         
             
            router.get('/hhu/libNewsc', lazyloadRouteHandler('./routes/universities/hhu/libNewsc'));
         
     | 
| 
       529 
528 
     | 
    
         | 
| 
       530 
     | 
    
         
            -
            // 哈尔滨工业大学
         
     | 
| 
       531 
     | 
    
         
            -
            router.get('/hit/jwc', lazyloadRouteHandler('./routes/universities/hit/jwc'));
         
     | 
| 
       532 
     | 
    
         
            -
            router.get('/hit/today/:category', lazyloadRouteHandler('./routes/universities/hit/today'));
         
     | 
| 
      
 529 
     | 
    
         
            +
            // 哈尔滨工业大学 migrated to v2
         
     | 
| 
      
 530 
     | 
    
         
            +
            // router.get('/hit/jwc', lazyloadRouteHandler('./routes/universities/hit/jwc'));
         
     | 
| 
      
 531 
     | 
    
         
            +
            // router.get('/hit/today/:category', lazyloadRouteHandler('./routes/universities/hit/today'));
         
     | 
| 
       533 
532 
     | 
    
         | 
| 
       534 
533 
     | 
    
         
             
            // 哈尔滨工业大学(深圳)
         
     | 
| 
       535 
     | 
    
         
            -
            router.get('/hitsz/article/:category?', lazyloadRouteHandler('./routes/universities/hitsz/article'));
         
     | 
| 
      
 534 
     | 
    
         
            +
            // router.get('/hitsz/article/:category?', lazyloadRouteHandler('./routes/universities/hitsz/article'));
         
     | 
| 
       536 
535 
     | 
    
         | 
| 
       537 
536 
     | 
    
         
             
            // 哈尔滨工业大学(威海)
         
     | 
| 
       538 
     | 
    
         
            -
            router.get('/hitwh/today', lazyloadRouteHandler('./routes/universities/hitwh/today'));
         
     | 
| 
      
 537 
     | 
    
         
            +
            // router.get('/hitwh/today', lazyloadRouteHandler('./routes/universities/hitwh/today'));
         
     | 
| 
       539 
538 
     | 
    
         | 
| 
       540 
539 
     | 
    
         
             
            // 上海科技大学
         
     | 
| 
       541 
540 
     | 
    
         
             
            router.get('/shanghaitech/activity', lazyloadRouteHandler('./routes/universities/shanghaitech/activity'));
         
     | 
| 
         @@ -570,9 +569,9 @@ router.get('/thu/:type', lazyloadRouteHandler('./routes/universities/thu/index') 
     | 
|
| 
       570 
569 
     | 
    
         
             
            // router.get('/pku/bbs/hot', lazyloadRouteHandler('./routes/universities/pku/bbs/hot'));
         
     | 
| 
       571 
570 
     | 
    
         
             
            // router.get('/pku/scc/recruit/:type?', lazyloadRouteHandler('./routes/universities/pku/scc/recruit'));
         
     | 
| 
       572 
571 
     | 
    
         | 
| 
       573 
     | 
    
         
            -
            // 上海海事大学
         
     | 
| 
       574 
     | 
    
         
            -
            router.get('/shmtu/www/:type', lazyloadRouteHandler('./routes/universities/shmtu/www'));
         
     | 
| 
       575 
     | 
    
         
            -
            router.get('/shmtu/jwc/:type', lazyloadRouteHandler('./routes/universities/shmtu/jwc'));
         
     | 
| 
      
 572 
     | 
    
         
            +
            // 上海海事大学 migrated to v2
         
     | 
| 
      
 573 
     | 
    
         
            +
            // router.get('/shmtu/www/:type', lazyloadRouteHandler('./routes/universities/shmtu/www'));
         
     | 
| 
      
 574 
     | 
    
         
            +
            // router.get('/shmtu/jwc/:type', lazyloadRouteHandler('./routes/universities/shmtu/jwc'));
         
     | 
| 
       576 
575 
     | 
    
         | 
| 
       577 
576 
     | 
    
         
             
            // 上海海洋大学
         
     | 
| 
       578 
577 
     | 
    
         
             
            router.get('/shou/www/:type', lazyloadRouteHandler('./routes/universities/shou/www'));
         
     | 
| 
         @@ -583,26 +582,21 @@ router.get('/swust/jwc/notice/:type?', lazyloadRouteHandler('./routes/universiti 
     | 
|
| 
       583 
582 
     | 
    
         
             
            router.get('/swust/cs/:type?', lazyloadRouteHandler('./routes/universities/swust/cs'));
         
     | 
| 
       584 
583 
     | 
    
         | 
| 
       585 
584 
     | 
    
         
             
            // 华南师范大学
         
     | 
| 
       586 
     | 
    
         
            -
            router.get('/scnu/jw', lazyloadRouteHandler('./routes/universities/scnu/jw'));
         
     | 
| 
       587 
     | 
    
         
            -
            router.get('/scnu/library', lazyloadRouteHandler('./routes/universities/scnu/library'));
         
     | 
| 
       588 
     | 
    
         
            -
            router.get('/scnu/cs/match', lazyloadRouteHandler('./routes/universities/scnu/cs/match'));
         
     | 
| 
      
 585 
     | 
    
         
            +
            // router.get('/scnu/jw', lazyloadRouteHandler('./routes/universities/scnu/jw'));
         
     | 
| 
      
 586 
     | 
    
         
            +
            // router.get('/scnu/library', lazyloadRouteHandler('./routes/universities/scnu/library'));
         
     | 
| 
      
 587 
     | 
    
         
            +
            // router.get('/scnu/cs/match', lazyloadRouteHandler('./routes/universities/scnu/cs/match'));
         
     | 
| 
       589 
588 
     | 
    
         | 
| 
       590 
589 
     | 
    
         
             
            // 广东工业大学
         
     | 
| 
       591 
     | 
    
         
            -
            router.get('/gdut/news', lazyloadRouteHandler('./routes/universities/gdut/news'));
         
     | 
| 
      
 590 
     | 
    
         
            +
            // router.get('/gdut/news', lazyloadRouteHandler('./routes/universities/gdut/news'));
         
     | 
| 
       592 
591 
     | 
    
         | 
| 
       593 
592 
     | 
    
         
             
            // 中国科学院
         
     | 
| 
       594 
     | 
    
         
            -
            router.get('/cas/sim/academic', lazyloadRouteHandler('./routes/universities/cas/sim/academic'));
         
     | 
| 
       595 
     | 
    
         
            -
            router.get('/cas/mesalab/kb', lazyloadRouteHandler('./routes/universities/cas/mesalab/kb'));
         
     | 
| 
       596 
     | 
    
         
            -
            router.get('/cas/iee/kydt', lazyloadRouteHandler('./routes/universities/cas/iee/kydt'));
         
     | 
| 
       597 
     | 
    
         
            -
            router.get('/cas/cg/:caty?', lazyloadRouteHandler('./routes/universities/cas/cg/index'));
         
     | 
| 
      
 593 
     | 
    
         
            +
            // router.get('/cas/sim/academic', lazyloadRouteHandler('./routes/universities/cas/sim/academic'));
         
     | 
| 
      
 594 
     | 
    
         
            +
            // router.get('/cas/mesalab/kb', lazyloadRouteHandler('./routes/universities/cas/mesalab/kb'));
         
     | 
| 
      
 595 
     | 
    
         
            +
            // router.get('/cas/iee/kydt', lazyloadRouteHandler('./routes/universities/cas/iee/kydt'));
         
     | 
| 
      
 596 
     | 
    
         
            +
            // router.get('/cas/cg/:caty?', lazyloadRouteHandler('./routes/universities/cas/cg/index'));
         
     | 
| 
       598 
597 
     | 
    
         | 
| 
       599 
598 
     | 
    
         
             
            // 中国传媒大学
         
     | 
| 
       600 
     | 
    
         
            -
            router.get('/cuc/yz', lazyloadRouteHandler('./ 
     | 
| 
       601 
     | 
    
         
            -
             
     | 
| 
       602 
     | 
    
         
            -
            // 中国科学技术大学
         
     | 
| 
       603 
     | 
    
         
            -
            router.get('/ustc/news/:type?', lazyloadRouteHandler('./routes/universities/ustc/index'));
         
     | 
| 
       604 
     | 
    
         
            -
            router.get('/ustc/jwc/:type?', lazyloadRouteHandler('./routes/universities/ustc/jwc/index'));
         
     | 
| 
       605 
     | 
    
         
            -
            router.get('/ustc/job/:category?', lazyloadRouteHandler('./routes/universities/ustc/job'));
         
     | 
| 
      
 599 
     | 
    
         
            +
            // router.get('/cuc/yz', lazyloadRouteHandler('./v2/cuc/yz'));
         
     | 
| 
       606 
600 
     | 
    
         | 
| 
       607 
601 
     | 
    
         
             
            // UTdallas ISSO
         
     | 
| 
       608 
602 
     | 
    
         
             
            router.get('/utdallas/isso', lazyloadRouteHandler('./routes/universities/utdallas/isso'));
         
     | 
| 
         @@ -619,14 +613,14 @@ router.get('/cqu/sci/:category', lazyloadRouteHandler('./routes/universities/cqu 
     | 
|
| 
       619 
613 
     | 
    
         
             
            router.get('/cqu/net/:category', lazyloadRouteHandler('./routes/universities/cqu/net/info'));
         
     | 
| 
       620 
614 
     | 
    
         | 
| 
       621 
615 
     | 
    
         
             
            // 南京信息工程大学
         
     | 
| 
       622 
     | 
    
         
            -
            router.get('/nuist/bulletin/:category?', lazyloadRouteHandler('./routes/universities/nuist/bulletin'));
         
     | 
| 
       623 
     | 
    
         
            -
            router.get('/nuist/jwc/:category?', lazyloadRouteHandler('./routes/universities/nuist/jwc'));
         
     | 
| 
       624 
     | 
    
         
            -
            router.get('/nuist/yjs/:category?', lazyloadRouteHandler('./routes/universities/nuist/yjs'));
         
     | 
| 
       625 
     | 
    
         
            -
            router.get('/nuist/xgc', lazyloadRouteHandler('./routes/universities/nuist/xgc'));
         
     | 
| 
       626 
     | 
    
         
            -
            router.get('/nuist/scs/:category?', lazyloadRouteHandler('./routes/universities/nuist/scs'));
         
     | 
| 
       627 
     | 
    
         
            -
            router.get('/nuist/lib', lazyloadRouteHandler('./routes/universities/nuist/library/lib'));
         
     | 
| 
       628 
     | 
    
         
            -
            router.get('/nuist/sese/:category?', lazyloadRouteHandler('./routes/universities/nuist/sese'));
         
     | 
| 
       629 
     | 
    
         
            -
            router.get('/nuist/cas/:category?', lazyloadRouteHandler('./routes/universities/nuist/cas'));
         
     | 
| 
      
 616 
     | 
    
         
            +
            // router.get('/nuist/bulletin/:category?', lazyloadRouteHandler('./routes/universities/nuist/bulletin'));
         
     | 
| 
      
 617 
     | 
    
         
            +
            // router.get('/nuist/jwc/:category?', lazyloadRouteHandler('./routes/universities/nuist/jwc'));
         
     | 
| 
      
 618 
     | 
    
         
            +
            // router.get('/nuist/yjs/:category?', lazyloadRouteHandler('./routes/universities/nuist/yjs'));
         
     | 
| 
      
 619 
     | 
    
         
            +
            // router.get('/nuist/xgc', lazyloadRouteHandler('./routes/universities/nuist/xgc'));
         
     | 
| 
      
 620 
     | 
    
         
            +
            // router.get('/nuist/scs/:category?', lazyloadRouteHandler('./routes/universities/nuist/scs'));
         
     | 
| 
      
 621 
     | 
    
         
            +
            // router.get('/nuist/lib', lazyloadRouteHandler('./routes/universities/nuist/library/lib'));
         
     | 
| 
      
 622 
     | 
    
         
            +
            // router.get('/nuist/sese/:category?', lazyloadRouteHandler('./routes/universities/nuist/sese'));
         
     | 
| 
      
 623 
     | 
    
         
            +
            // router.get('/nuist/cas/:category?', lazyloadRouteHandler('./routes/universities/nuist/cas'));
         
     | 
| 
       630 
624 
     | 
    
         | 
| 
       631 
625 
     | 
    
         
             
            // 成都信息工程大学
         
     | 
| 
       632 
626 
     | 
    
         
             
            router.get('/cuit/cxxww/:type?', lazyloadRouteHandler('./routes/universities/cuit/cxxww'));
         
     | 
| 
         @@ -647,12 +641,6 @@ router.get('/cqust/lib/:type?', lazyloadRouteHandler('./routes/universities/cqus 
     | 
|
| 
       647 
641 
     | 
    
         
             
            router.get('/cczu/jwc/:category?', lazyloadRouteHandler('./routes/universities/cczu/jwc'));
         
     | 
| 
       648 
642 
     | 
    
         
             
            router.get('/cczu/news/:category?', lazyloadRouteHandler('./routes/universities/cczu/news'));
         
     | 
| 
       649 
643 
     | 
    
         | 
| 
       650 
     | 
    
         
            -
            // 南京理工大学
         
     | 
| 
       651 
     | 
    
         
            -
            router.get('/njust/jwc/:type', lazyloadRouteHandler('./routes/universities/njust/jwc'));
         
     | 
| 
       652 
     | 
    
         
            -
            router.get('/njust/cwc/:type', lazyloadRouteHandler('./routes/universities/njust/cwc'));
         
     | 
| 
       653 
     | 
    
         
            -
            router.get('/njust/gs/:type', lazyloadRouteHandler('./routes/universities/njust/gs'));
         
     | 
| 
       654 
     | 
    
         
            -
            router.get('/njust/eo/:grade?/:type?', lazyloadRouteHandler('./routes/universities/njust/eo'));
         
     | 
| 
       655 
     | 
    
         
            -
             
     | 
| 
       656 
644 
     | 
    
         
             
            // 四川旅游学院
         
     | 
| 
       657 
645 
     | 
    
         
             
            router.get('/sctu/xgxy', lazyloadRouteHandler('./routes/universities/sctu/information-engineer-faculty/index'));
         
     | 
| 
       658 
646 
     | 
    
         
             
            router.get('/sctu/xgxy/:id', lazyloadRouteHandler('./routes/universities/sctu/information-engineer-faculty/context'));
         
     | 
| 
         @@ -660,14 +648,14 @@ router.get('/sctu/jwc/:type?', lazyloadRouteHandler('./routes/universities/sctu/ 
     | 
|
| 
       660 
648 
     | 
    
         
             
            router.get('/sctu/jwc/:type/:id', lazyloadRouteHandler('./routes/universities/sctu/jwc/context'));
         
     | 
| 
       661 
649 
     | 
    
         | 
| 
       662 
650 
     | 
    
         
             
            // 电子科技大学
         
     | 
| 
       663 
     | 
    
         
            -
            router.get('/uestc/jwc/:type?', lazyloadRouteHandler('./routes/universities/uestc/jwc'));
         
     | 
| 
       664 
     | 
    
         
            -
            router.get('/uestc/is/:type?', lazyloadRouteHandler('./routes/universities/uestc/is'));
         
     | 
| 
       665 
     | 
    
         
            -
            router.get('/uestc/news/:type?', lazyloadRouteHandler('./routes/universities/uestc/news'));
         
     | 
| 
       666 
     | 
    
         
            -
            router.get('/uestc/auto/:type?', lazyloadRouteHandler('./routes/universities/uestc/auto'));
         
     | 
| 
       667 
     | 
    
         
            -
            router.get('/uestc/cs/:type?', lazyloadRouteHandler('./routes/universities/uestc/cs'));
         
     | 
| 
       668 
     | 
    
         
            -
            router.get('/uestc/cqe/:type?', lazyloadRouteHandler('./routes/universities/uestc/cqe'));
         
     | 
| 
       669 
     | 
    
         
            -
            router.get('/uestc/gr', lazyloadRouteHandler('./routes/universities/uestc/gr'));
         
     | 
| 
       670 
     | 
    
         
            -
            router.get('/uestc/sice', lazyloadRouteHandler('./routes/universities/uestc/sice'));
         
     | 
| 
      
 651 
     | 
    
         
            +
            // router.get('/uestc/jwc/:type?', lazyloadRouteHandler('./routes/universities/uestc/jwc'));
         
     | 
| 
      
 652 
     | 
    
         
            +
            // router.get('/uestc/is/:type?', lazyloadRouteHandler('./routes/universities/uestc/is'));
         
     | 
| 
      
 653 
     | 
    
         
            +
            // router.get('/uestc/news/:type?', lazyloadRouteHandler('./routes/universities/uestc/news'));
         
     | 
| 
      
 654 
     | 
    
         
            +
            // router.get('/uestc/auto/:type?', lazyloadRouteHandler('./routes/universities/uestc/auto'));
         
     | 
| 
      
 655 
     | 
    
         
            +
            // router.get('/uestc/cs/:type?', lazyloadRouteHandler('./routes/universities/uestc/cs'));
         
     | 
| 
      
 656 
     | 
    
         
            +
            // router.get('/uestc/cqe/:type?', lazyloadRouteHandler('./routes/universities/uestc/cqe'));
         
     | 
| 
      
 657 
     | 
    
         
            +
            // router.get('/uestc/gr', lazyloadRouteHandler('./routes/universities/uestc/gr'));
         
     | 
| 
      
 658 
     | 
    
         
            +
            // router.get('/uestc/sice', lazyloadRouteHandler('./routes/universities/uestc/sice'));
         
     | 
| 
       671 
659 
     | 
    
         | 
| 
       672 
660 
     | 
    
         
             
            // 西北农林科技大学
         
     | 
| 
       673 
661 
     | 
    
         
             
            router.get('/nwafu/news', lazyloadRouteHandler('./routes/universities/nwafu/news'));
         
     | 
| 
         @@ -703,10 +691,10 @@ router.get('/whu/news/:type?', lazyloadRouteHandler('./routes/universities/whu/n 
     | 
|
| 
       703 
691 
     | 
    
         
             
            // router.get('/wfu/jwc', require('./routes/universities/wfu/jwc'));
         
     | 
| 
       704 
692 
     | 
    
         | 
| 
       705 
693 
     | 
    
         
             
            // 华中科技大学
         
     | 
| 
       706 
     | 
    
         
            -
            router.get('/hust/auto/notice/:type?', lazyloadRouteHandler('./routes/universities/hust/aia/notice'));
         
     | 
| 
       707 
     | 
    
         
            -
            router.get('/hust/auto/news', lazyloadRouteHandler('./routes/universities/hust/aia/news'));
         
     | 
| 
       708 
     | 
    
         
            -
            router.get('/hust/aia/news', lazyloadRouteHandler('./routes/universities/hust/aia/news'));
         
     | 
| 
       709 
     | 
    
         
            -
            router.get('/hust/aia/notice/:type?', lazyloadRouteHandler('./routes/universities/hust/aia/notice'));
         
     | 
| 
      
 694 
     | 
    
         
            +
            // router.get('/hust/auto/notice/:type?', lazyloadRouteHandler('./routes/universities/hust/aia/notice'));
         
     | 
| 
      
 695 
     | 
    
         
            +
            // router.get('/hust/auto/news', lazyloadRouteHandler('./routes/universities/hust/aia/news'));
         
     | 
| 
      
 696 
     | 
    
         
            +
            // router.get('/hust/aia/news', lazyloadRouteHandler('./routes/universities/hust/aia/news'));
         
     | 
| 
      
 697 
     | 
    
         
            +
            // router.get('/hust/aia/notice/:type?', lazyloadRouteHandler('./routes/universities/hust/aia/notice'));
         
     | 
| 
       710 
698 
     | 
    
         | 
| 
       711 
699 
     | 
    
         
             
            // 井冈山大学
         
     | 
| 
       712 
700 
     | 
    
         
             
            router.get('/jgsu/jwc', lazyloadRouteHandler('./routes/universities/jgsu/jwc'));
         
     | 
| 
         @@ -719,7 +707,7 @@ router.get('/jgsu/jwc', lazyloadRouteHandler('./routes/universities/jgsu/jwc')); 
     | 
|
| 
       719 
707 
     | 
    
         
             
            // router.get('/sdu/epe/:type?', lazyloadRouteHandler('./routes/universities/sdu/epe'));
         
     | 
| 
       720 
708 
     | 
    
         | 
| 
       721 
709 
     | 
    
         
             
            // 中国海洋大学
         
     | 
| 
       722 
     | 
    
         
            -
            router.get('/ouc/it/:type?', lazyloadRouteHandler('./routes/universities/ouc/it'));
         
     | 
| 
      
 710 
     | 
    
         
            +
            // router.get('/ouc/it/:type?', lazyloadRouteHandler('./routes/universities/ouc/it'));
         
     | 
| 
       723 
711 
     | 
    
         | 
| 
       724 
712 
     | 
    
         
             
            // 大连大学
         
     | 
| 
       725 
713 
     | 
    
         
             
            router.get('/dlu/jiaowu/news', lazyloadRouteHandler('./routes/universities/dlu/jiaowu/news'));
         
     | 
| 
         @@ -729,12 +717,12 @@ router.get('/dgut/jwc/:type?', lazyloadRouteHandler('./routes/universities/dgut/ 
     | 
|
| 
       729 
717 
     | 
    
         
             
            router.get('/dgut/xsc/:type?', lazyloadRouteHandler('./routes/universities/dgut/xsc'));
         
     | 
| 
       730 
718 
     | 
    
         | 
| 
       731 
719 
     | 
    
         
             
            // 同济大学
         
     | 
| 
       732 
     | 
    
         
            -
            router.get('/tju/sse/:type?', lazyloadRouteHandler('./routes/universities/tju/sse/notice'));
         
     | 
| 
      
 720 
     | 
    
         
            +
            // router.get('/tju/sse/:type?', lazyloadRouteHandler('./routes/universities/tju/sse/notice'));
         
     | 
| 
       733 
721 
     | 
    
         | 
| 
       734 
722 
     | 
    
         
             
            // 华南理工大学
         
     | 
| 
       735 
     | 
    
         
            -
            router.get('/scut/jwc/notice/:category?', lazyloadRouteHandler('./routes/universities/scut/jwc/notice'));
         
     | 
| 
       736 
     | 
    
         
            -
            router.get('/scut/jwc/school/:category?', lazyloadRouteHandler('./routes/universities/scut/jwc/school'));
         
     | 
| 
       737 
     | 
    
         
            -
            router.get('/scut/jwc/news', lazyloadRouteHandler('./routes/universities/scut/jwc/news'));
         
     | 
| 
      
 723 
     | 
    
         
            +
            // router.get('/scut/jwc/notice/:category?', lazyloadRouteHandler('./routes/universities/scut/jwc/notice'));
         
     | 
| 
      
 724 
     | 
    
         
            +
            // router.get('/scut/jwc/school/:category?', lazyloadRouteHandler('./routes/universities/scut/jwc/school'));
         
     | 
| 
      
 725 
     | 
    
         
            +
            // router.get('/scut/jwc/news', lazyloadRouteHandler('./routes/universities/scut/jwc/news'));
         
     | 
| 
       738 
726 
     | 
    
         | 
| 
       739 
727 
     | 
    
         
             
            // 温州商学院
         
     | 
| 
       740 
728 
     | 
    
         
             
            router.get('/wzbc/:type?', lazyloadRouteHandler('./routes/universities/wzbc/news'));
         
     | 
| 
         @@ -742,8 +730,8 @@ router.get('/wzbc/:type?', lazyloadRouteHandler('./routes/universities/wzbc/news 
     | 
|
| 
       742 
730 
     | 
    
         
             
            // 河南大学
         
     | 
| 
       743 
731 
     | 
    
         
             
            router.get('/henu/:type?', lazyloadRouteHandler('./routes/universities/henu/news'));
         
     | 
| 
       744 
732 
     | 
    
         | 
| 
       745 
     | 
    
         
            -
            // 天津大学
         
     | 
| 
       746 
     | 
    
         
            -
            router.get('/ 
     | 
| 
      
 733 
     | 
    
         
            +
            // 天津大学 migrated to v2
         
     | 
| 
      
 734 
     | 
    
         
            +
            // router.get('/tju/oaa/:type?', lazyloadRouteHandler('./routes/universities/tju/oaa'));
         
     | 
| 
       747 
735 
     | 
    
         | 
| 
       748 
736 
     | 
    
         
             
            // 南开大学
         
     | 
| 
       749 
737 
     | 
    
         
             
            router.get('/nku/jwc/:type?', lazyloadRouteHandler('./routes/universities/nku/jwc/index'));
         
     | 
| 
         @@ -763,17 +751,17 @@ router.get('/shu/jwc/:type?', lazyloadRouteHandler('./routes/universities/shu/jw 
     | 
|
| 
       763 
751 
     | 
    
         
             
            router.get('/ustb/tj/news/:type?', lazyloadRouteHandler('./routes/universities/ustb/tj/news'));
         
     | 
| 
       764 
752 
     | 
    
         | 
| 
       765 
753 
     | 
    
         
             
            // 深圳大学
         
     | 
| 
       766 
     | 
    
         
            -
            router.get('/szu/yz/:type?', lazyloadRouteHandler('./routes/universities/szu/yz'));
         
     | 
| 
      
 754 
     | 
    
         
            +
            // router.get('/szu/yz/:type?', lazyloadRouteHandler('./routes/universities/szu/yz'));
         
     | 
| 
       767 
755 
     | 
    
         | 
| 
       768 
756 
     | 
    
         
             
            // 中国石油大学(华东)
         
     | 
| 
       769 
     | 
    
         
            -
            router.get('/upc/main/:type?', lazyloadRouteHandler('./routes/universities/upc/main'));
         
     | 
| 
       770 
     | 
    
         
            -
            router.get('/upc/jsj/:type?', lazyloadRouteHandler('./routes/universities/upc/jsj'));
         
     | 
| 
      
 757 
     | 
    
         
            +
            // router.get('/upc/main/:type?', lazyloadRouteHandler('./routes/universities/upc/main'));
         
     | 
| 
      
 758 
     | 
    
         
            +
            // router.get('/upc/jsj/:type?', lazyloadRouteHandler('./routes/universities/upc/jsj'));
         
     | 
| 
       771 
759 
     | 
    
         | 
| 
       772 
760 
     | 
    
         
             
            // 华北水利水电大学
         
     | 
| 
       773 
     | 
    
         
            -
            router.get('/ncwu/notice', lazyloadRouteHandler('./routes/universities/ncwu/notice'));
         
     | 
| 
      
 761 
     | 
    
         
            +
            // router.get('/ncwu/notice', lazyloadRouteHandler('./routes/universities/ncwu/notice'));
         
     | 
| 
       774 
762 
     | 
    
         | 
| 
       775 
763 
     | 
    
         
             
            // 太原师范学院
         
     | 
| 
       776 
     | 
    
         
            -
            router.get('/tynu', lazyloadRouteHandler('./routes/universities/tynu/tynu'));
         
     | 
| 
      
 764 
     | 
    
         
            +
            // router.get('/tynu', lazyloadRouteHandler('./routes/universities/tynu/tynu'));
         
     | 
| 
       777 
765 
     | 
    
         | 
| 
       778 
766 
     | 
    
         
             
            // 中北大学
         
     | 
| 
       779 
767 
     | 
    
         
             
            router.get('/nuc/:type', lazyloadRouteHandler('./routes/universities/nuc/index'));
         
     | 
| 
         @@ -823,16 +811,17 @@ router.get('/ipsw/index/:ptype/:pname', lazyloadRouteHandler('./routes/ipsw/inde 
     | 
|
| 
       823 
811 
     | 
    
         
             
            // Minecraft CurseForge
         
     | 
| 
       824 
812 
     | 
    
         
             
            router.get('/curseforge/files/:project', lazyloadRouteHandler('./routes/curseforge/files'));
         
     | 
| 
       825 
813 
     | 
    
         | 
| 
       826 
     | 
    
         
            -
            // 少数派 sspai
         
     | 
| 
       827 
     | 
    
         
            -
            router.get('/sspai/ 
     | 
| 
       828 
     | 
    
         
            -
            router.get('/sspai/ 
     | 
| 
       829 
     | 
    
         
            -
            router.get('/sspai/ 
     | 
| 
       830 
     | 
    
         
            -
            router.get('/sspai/ 
     | 
| 
       831 
     | 
    
         
            -
            router.get('/sspai/ 
     | 
| 
       832 
     | 
    
         
            -
            router.get('/sspai/ 
     | 
| 
       833 
     | 
    
         
            -
            router.get('/sspai/ 
     | 
| 
       834 
     | 
    
         
            -
            router.get('/sspai/ 
     | 
| 
       835 
     | 
    
         
            -
            router.get('/sspai/ 
     | 
| 
      
 814 
     | 
    
         
            +
            // 少数派 sspai migrated to v2
         
     | 
| 
      
 815 
     | 
    
         
            +
            // router.get('/sspai/index', lazyloadRouteHandler('./routes/sspai/index'));
         
     | 
| 
      
 816 
     | 
    
         
            +
            // router.get('/sspai/series', lazyloadRouteHandler('./routes/sspai/series'));
         
     | 
| 
      
 817 
     | 
    
         
            +
            // router.get('/sspai/shortcuts', lazyloadRouteHandler('./routes/sspai/shortcutsGallery'));
         
     | 
| 
      
 818 
     | 
    
         
            +
            // router.get('/sspai/matrix', lazyloadRouteHandler('./routes/sspai/matrix'));
         
     | 
| 
      
 819 
     | 
    
         
            +
            // router.get('/sspai/column/:id', lazyloadRouteHandler('./routes/sspai/column'));
         
     | 
| 
      
 820 
     | 
    
         
            +
            // router.get('/sspai/author/:id', lazyloadRouteHandler('./routes/sspai/author'));
         
     | 
| 
      
 821 
     | 
    
         
            +
            // router.get('/sspai/topics', lazyloadRouteHandler('./routes/sspai/topics'));
         
     | 
| 
      
 822 
     | 
    
         
            +
            // router.get('/sspai/topic/:id', lazyloadRouteHandler('./routes/sspai/topic'));
         
     | 
| 
      
 823 
     | 
    
         
            +
            // router.get('/sspai/tag/:keyword', lazyloadRouteHandler('./routes/sspai/tag'));
         
     | 
| 
      
 824 
     | 
    
         
            +
            // router.get('/sspai/activity/:slug', lazyloadRouteHandler('./routes/sspai/activity'));
         
     | 
| 
       836 
825 
     | 
    
         | 
| 
       837 
826 
     | 
    
         
             
            // 异次元软件世界
         
     | 
| 
       838 
827 
     | 
    
         
             
            router.get('/iplay/home', lazyloadRouteHandler('./routes/iplay/home'));
         
     | 
| 
         @@ -840,8 +829,8 @@ router.get('/iplay/home', lazyloadRouteHandler('./routes/iplay/home')); 
     | 
|
| 
       840 
829 
     | 
    
         
             
            // xclient.info
         
     | 
| 
       841 
830 
     | 
    
         
             
            router.get('/xclient/app/:name', lazyloadRouteHandler('./routes/xclient/app'));
         
     | 
| 
       842 
831 
     | 
    
         | 
| 
       843 
     | 
    
         
            -
            // 中国驻外使领事馆
         
     | 
| 
       844 
     | 
    
         
            -
            router.get('/embassy/:country/:city?', lazyloadRouteHandler('./routes/embassy/index'));
         
     | 
| 
      
 832 
     | 
    
         
            +
            // 中国驻外使领事馆 migrated to v2
         
     | 
| 
      
 833 
     | 
    
         
            +
            // router.get('/embassy/:country/:city?', lazyloadRouteHandler('./routes/embassy/index'));
         
     | 
| 
       845 
834 
     | 
    
         | 
| 
       846 
835 
     | 
    
         
             
            // 澎湃新闻
         
     | 
| 
       847 
836 
     | 
    
         
             
            // router.get('/thepaper/featured', lazyloadRouteHandler('./routes/thepaper/featured'));
         
     | 
| 
         @@ -869,17 +858,16 @@ router.get('/dytt/index', lazyloadRouteHandler('./routes/dytt/index')); // 废 
     | 
|
| 
       869 
858 
     | 
    
         
             
            // 人生05电影网
         
     | 
| 
       870 
859 
     | 
    
         
             
            router.get('/rs05/rs05', lazyloadRouteHandler('./routes/rs05/rs05'));
         
     | 
| 
       871 
860 
     | 
    
         | 
| 
       872 
     | 
    
         
            -
            // 人人影视 (评测推荐)
         
     | 
| 
       873 
     | 
    
         
            -
            router.get('/rrys/review', lazyloadRouteHandler('./routes/rrys/review'));
         
     | 
| 
       874 
     | 
    
         
            -
             
     | 
| 
      
 861 
     | 
    
         
            +
            // 人人影视 (评测推荐) migrated to v2
         
     | 
| 
      
 862 
     | 
    
         
            +
            // router.get('/rrys/review', lazyloadRouteHandler('./routes/rrys/review'));
         
     | 
| 
       875 
863 
     | 
    
         
             
            // 人人影视(每日更新)
         
     | 
| 
       876 
     | 
    
         
            -
            router.get('/yyets/todayfilelist', lazyloadRouteHandler('./routes/yyets/todayfilelist'));
         
     | 
| 
      
 864 
     | 
    
         
            +
            // router.get('/yyets/todayfilelist', lazyloadRouteHandler('./routes/yyets/todayfilelist'));
         
     | 
| 
       877 
865 
     | 
    
         | 
| 
       878 
866 
     | 
    
         
             
            // 趣头条
         
     | 
| 
       879 
867 
     | 
    
         
             
            router.get('/qutoutiao/category/:cid', lazyloadRouteHandler('./routes/qutoutiao/category'));
         
     | 
| 
       880 
868 
     | 
    
         | 
| 
       881 
     | 
    
         
            -
            // NHK NEW WEB EASY
         
     | 
| 
       882 
     | 
    
         
            -
            router.get('/nhk/news_web_easy', lazyloadRouteHandler('./routes/nhk/news_web_easy'));
         
     | 
| 
      
 869 
     | 
    
         
            +
            // NHK NEW WEB EASY migrated to v2
         
     | 
| 
      
 870 
     | 
    
         
            +
            // router.get('/nhk/news_web_easy', lazyloadRouteHandler('./routes/nhk/news_web_easy'));
         
     | 
| 
       883 
871 
     | 
    
         | 
| 
       884 
872 
     | 
    
         
             
            // BBC
         
     | 
| 
       885 
873 
     | 
    
         
             
            router.get('/bbc/:site?/:channel?', lazyloadRouteHandler('./routes/bbc/index'));
         
     | 
| 
         @@ -889,15 +877,11 @@ router.get('/bbc/:site?/:channel?', lazyloadRouteHandler('./routes/bbc/index')); 
     | 
|
| 
       889 
877 
     | 
    
         
             
            // router.get('/ft/:language/:channel?', lazyloadRouteHandler('./routes/ft/channel'));
         
     | 
| 
       890 
878 
     | 
    
         | 
| 
       891 
879 
     | 
    
         
             
            // The Verge
         
     | 
| 
       892 
     | 
    
         
            -
            router.get('/verge', lazyloadRouteHandler('./routes/verge/index'));
         
     | 
| 
      
 880 
     | 
    
         
            +
            // router.get('/verge', lazyloadRouteHandler('./routes/verge/index'));
         
     | 
| 
       893 
881 
     | 
    
         | 
| 
       894 
882 
     | 
    
         
             
            // 看雪
         
     | 
| 
       895 
883 
     | 
    
         
             
            router.get('/pediy/topic/:category?/:type?', lazyloadRouteHandler('./routes/pediy/topic'));
         
     | 
| 
       896 
884 
     | 
    
         | 
| 
       897 
     | 
    
         
            -
            // 多维新闻网
         
     | 
| 
       898 
     | 
    
         
            -
            router.get('/dwnews/yaowen/:region?', lazyloadRouteHandler('./routes/dwnews/yaowen'));
         
     | 
| 
       899 
     | 
    
         
            -
            router.get('/dwnews/rank/:type?/:range?', lazyloadRouteHandler('./routes/dwnews/rank'));
         
     | 
| 
       900 
     | 
    
         
            -
             
     | 
| 
       901 
885 
     | 
    
         
             
            // 知晓程序
         
     | 
| 
       902 
886 
     | 
    
         
             
            router.get('/miniapp/article/:category', lazyloadRouteHandler('./routes/miniapp/article'));
         
     | 
| 
       903 
887 
     | 
    
         
             
            router.get('/miniapp/store/newest', lazyloadRouteHandler('./routes/miniapp/store/newest'));
         
     | 
| 
         @@ -938,25 +922,22 @@ router.get('/dgtle/trade/search/:keyword', lazyloadRouteHandler('./routes/dgtle/ 
     | 
|
| 
       938 
922 
     | 
    
         
             
            router.get('/chouti/top/:hour?', lazyloadRouteHandler('./routes/chouti/top'));
         
     | 
| 
       939 
923 
     | 
    
         
             
            router.get('/chouti/:subject?', lazyloadRouteHandler('./routes/chouti'));
         
     | 
| 
       940 
924 
     | 
    
         | 
| 
       941 
     | 
    
         
            -
            // 西安电子科技大学
         
     | 
| 
       942 
     | 
    
         
            -
            router.get('/xidian/jwc/:category?', lazyloadRouteHandler('./routes/universities/xidian/jwc'));
         
     | 
| 
      
 925 
     | 
    
         
            +
            // 西安电子科技大学 migrated to v2
         
     | 
| 
      
 926 
     | 
    
         
            +
            // router.get('/xidian/jwc/:category?', lazyloadRouteHandler('./routes/universities/xidian/jwc'));
         
     | 
| 
       943 
927 
     | 
    
         | 
| 
       944 
928 
     | 
    
         
             
            // Westore
         
     | 
| 
       945 
929 
     | 
    
         
             
            router.get('/westore/new', lazyloadRouteHandler('./routes/westore/new'));
         
     | 
| 
       946 
930 
     | 
    
         | 
| 
       947 
     | 
    
         
            -
            // 油价
         
     | 
| 
       948 
     | 
    
         
            -
            router.get('/oilprice/:area', lazyloadRouteHandler('./routes/oilprice'));
         
     | 
| 
       949 
     | 
    
         
            -
             
     | 
| 
       950 
931 
     | 
    
         
             
            // nHentai
         
     | 
| 
       951 
     | 
    
         
            -
            router.get('/nhentai/search/:keyword/:mode?', lazyloadRouteHandler('./routes/nhentai/search'));
         
     | 
| 
       952 
     | 
    
         
            -
            router.get('/nhentai/:key/:keyword/:mode?', lazyloadRouteHandler('./routes/nhentai/other'));
         
     | 
| 
      
 932 
     | 
    
         
            +
            // router.get('/nhentai/search/:keyword/:mode?', lazyloadRouteHandler('./routes/nhentai/search'));
         
     | 
| 
      
 933 
     | 
    
         
            +
            // router.get('/nhentai/:key/:keyword/:mode?', lazyloadRouteHandler('./routes/nhentai/other'));
         
     | 
| 
       953 
934 
     | 
    
         | 
| 
       954 
935 
     | 
    
         
             
            // 龙腾网
         
     | 
| 
       955 
936 
     | 
    
         
             
            router.get('/ltaaa/:category?', lazyloadRouteHandler('./routes/ltaaa/index'));
         
     | 
| 
       956 
937 
     | 
    
         | 
| 
       957 
     | 
    
         
            -
            // AcFun
         
     | 
| 
       958 
     | 
    
         
            -
            router.get('/acfun/bangumi/:id', lazyloadRouteHandler('./routes/acfun/bangumi'));
         
     | 
| 
       959 
     | 
    
         
            -
            router.get('/acfun/user/video/:uid', lazyloadRouteHandler('./routes/acfun/video'));
         
     | 
| 
      
 938 
     | 
    
         
            +
            // AcFun migrated to v2
         
     | 
| 
      
 939 
     | 
    
         
            +
            // router.get('/acfun/bangumi/:id', lazyloadRouteHandler('./routes/acfun/bangumi'));
         
     | 
| 
      
 940 
     | 
    
         
            +
            // router.get('/acfun/user/video/:uid', lazyloadRouteHandler('./routes/acfun/video'));
         
     | 
| 
       960 
941 
     | 
    
         | 
| 
       961 
942 
     | 
    
         
             
            // Auto Trader
         
     | 
| 
       962 
943 
     | 
    
         
             
            router.get('/autotrader/:query', lazyloadRouteHandler('./routes/autotrader'));
         
     | 
| 
         @@ -966,7 +947,7 @@ router.get('/geekpark/breakingnews', lazyloadRouteHandler('./routes/geekpark/bre 
     | 
|
| 
       966 
947 
     | 
    
         | 
| 
       967 
948 
     | 
    
         
             
            // 百度
         
     | 
| 
       968 
949 
     | 
    
         
             
            router.get('/baidu/doodles', lazyloadRouteHandler('./routes/baidu/doodles'));
         
     | 
| 
       969 
     | 
    
         
            -
            router.get('/baidu/topwords/:boardId?', lazyloadRouteHandler('./routes/baidu/topwords'));
         
     | 
| 
      
 950 
     | 
    
         
            +
            // router.get('/baidu/topwords/:boardId?', lazyloadRouteHandler('./routes/baidu/topwords'));
         
     | 
| 
       970 
951 
     | 
    
         
             
            router.get('/baidu/daily', lazyloadRouteHandler('./routes/baidu/daily'));
         
     | 
| 
       971 
952 
     | 
    
         | 
| 
       972 
953 
     | 
    
         
             
            // 搜狗
         
     | 
| 
         @@ -1011,18 +992,19 @@ router.get('/eeo/:column?/:category?', lazyloadRouteHandler('./routes/eeo/index' 
     | 
|
| 
       1011 
992 
     | 
    
         
             
            // 腾讯视频
         
     | 
| 
       1012 
993 
     | 
    
         
             
            router.get('/tencentvideo/playlist/:id', lazyloadRouteHandler('./routes/tencent/video/playlist'));
         
     | 
| 
       1013 
994 
     | 
    
         | 
| 
       1014 
     | 
    
         
            -
            // 看漫画
         
     | 
| 
       1015 
     | 
    
         
            -
            router.get('/manhuagui/comic/:id/:chapterCnt?', lazyloadRouteHandler('./routes/manhuagui/comic'));
         
     | 
| 
       1016 
     | 
    
         
            -
            router.get('/mhgui/comic/:id/:chapterCnt?', lazyloadRouteHandler('./routes/mhgui/comic'));
         
     | 
| 
       1017 
     | 
    
         
            -
            router.get('/twmanhuagui/comic/:id/:chapterCnt?', lazyloadRouteHandler('./routes/twmanhuagui/comic'));
         
     | 
| 
      
 995 
     | 
    
         
            +
            // 看漫画 migrated to v2
         
     | 
| 
      
 996 
     | 
    
         
            +
            // router.get('/manhuagui/comic/:id/:chapterCnt?', lazyloadRouteHandler('./routes/manhuagui/comic'));
         
     | 
| 
      
 997 
     | 
    
         
            +
            // router.get('/mhgui/comic/:id/:chapterCnt?', lazyloadRouteHandler('./routes/mhgui/comic'));
         
     | 
| 
      
 998 
     | 
    
         
            +
            // router.get('/twmanhuagui/comic/:id/:chapterCnt?', lazyloadRouteHandler('./routes/twmanhuagui/comic'));
         
     | 
| 
      
 999 
     | 
    
         
            +
             
     | 
| 
       1018 
1000 
     | 
    
         
             
            // 拷贝漫画
         
     | 
| 
       1019 
     | 
    
         
            -
            router.get('/copymanga/comic/:id/:chapterCnt?', lazyloadRouteHandler('./routes/copymanga/comic'));
         
     | 
| 
      
 1001 
     | 
    
         
            +
            // router.get('/copymanga/comic/:id/:chapterCnt?', lazyloadRouteHandler('./routes/copymanga/comic'));
         
     | 
| 
       1020 
1002 
     | 
    
         | 
| 
       1021 
1003 
     | 
    
         
             
            // 拷贝漫画
         
     | 
| 
       1022 
     | 
    
         
            -
            router.get('/copymanga/comic/:id', lazyloadRouteHandler('./routes/copymanga/comic'));
         
     | 
| 
      
 1004 
     | 
    
         
            +
            // router.get('/copymanga/comic/:id', lazyloadRouteHandler('./routes/copymanga/comic'));
         
     | 
| 
       1023 
1005 
     | 
    
         | 
| 
       1024 
1006 
     | 
    
         
             
            // 動漫狂
         
     | 
| 
       1025 
     | 
    
         
            -
            router.get('/cartoonmad/comic/:id', lazyloadRouteHandler('./routes/cartoonmad/comic'));
         
     | 
| 
      
 1007 
     | 
    
         
            +
            // router.get('/cartoonmad/comic/:id', lazyloadRouteHandler('./routes/cartoonmad/comic'));
         
     | 
| 
       1026 
1008 
     | 
    
         
             
            // Vol
         
     | 
| 
       1027 
1009 
     | 
    
         
             
            router.get('/vol/:mode?', lazyloadRouteHandler('./routes/vol/lastupdate'));
         
     | 
| 
       1028 
1010 
     | 
    
         
             
            // 咚漫
         
     | 
| 
         @@ -1038,8 +1020,8 @@ router.get('/tits-guru/category/:type', lazyloadRouteHandler('./routes/titsguru/ 
     | 
|
| 
       1038 
1020 
     | 
    
         
             
            router.get('/tits-guru/model/:name', lazyloadRouteHandler('./routes/titsguru/model'));
         
     | 
| 
       1039 
1021 
     | 
    
         | 
| 
       1040 
1022 
     | 
    
         
             
            // typora
         
     | 
| 
       1041 
     | 
    
         
            -
            router.get('/typora/changelog', lazyloadRouteHandler('./routes/typora/changelog'));
         
     | 
| 
       1042 
     | 
    
         
            -
            router.get('/typora/changelog-dev/:os?', lazyloadRouteHandler('./routes/typora/changelog-dev'));
         
     | 
| 
      
 1023 
     | 
    
         
            +
            // router.get('/typora/changelog', lazyloadRouteHandler('./routes/typora/changelog'));
         
     | 
| 
      
 1024 
     | 
    
         
            +
            // router.get('/typora/changelog-dev/:os?', lazyloadRouteHandler('./routes/typora/changelog-dev'));
         
     | 
| 
       1043 
1025 
     | 
    
         | 
| 
       1044 
1026 
     | 
    
         
             
            // TSSstatus
         
     | 
| 
       1045 
1027 
     | 
    
         
             
            router.get('/tssstatus/:board/:build', lazyloadRouteHandler('./routes/tssstatus'));
         
     | 
| 
         @@ -1049,7 +1031,7 @@ router.get('/anime1/anime/:time/:name', lazyloadRouteHandler('./routes/anime1/an 
     | 
|
| 
       1049 
1031 
     | 
    
         
             
            router.get('/anime1/search/:keyword', lazyloadRouteHandler('./routes/anime1/search'));
         
     | 
| 
       1050 
1032 
     | 
    
         | 
| 
       1051 
1033 
     | 
    
         
             
            // Global UDN
         
     | 
| 
       1052 
     | 
    
         
            -
            router.get('/udn/global/:tid', lazyloadRouteHandler('./routes/udn/global'));
         
     | 
| 
      
 1034 
     | 
    
         
            +
            // router.get('/udn/global/:tid', lazyloadRouteHandler('./routes/udn/global'));
         
     | 
| 
       1053 
1035 
     | 
    
         | 
| 
       1054 
1036 
     | 
    
         
             
            // gitea
         
     | 
| 
       1055 
1037 
     | 
    
         
             
            router.get('/gitea/blog', lazyloadRouteHandler('./routes/gitea/blog'));
         
     | 
| 
         @@ -1058,7 +1040,7 @@ router.get('/gitea/blog', lazyloadRouteHandler('./routes/gitea/blog')); 
     | 
|
| 
       1058 
1040 
     | 
    
         
             
            router.get('/idownloadblog', lazyloadRouteHandler('./routes/idownloadblog/index'));
         
     | 
| 
       1059 
1041 
     | 
    
         | 
| 
       1060 
1042 
     | 
    
         
             
            // 9to5
         
     | 
| 
       1061 
     | 
    
         
            -
            router.get('/9to5/:subsite/:tag?', lazyloadRouteHandler('./routes/9to5/subsite'));
         
     | 
| 
      
 1043 
     | 
    
         
            +
            // router.get('/9to5/:subsite/:tag?', lazyloadRouteHandler('./routes/9to5/subsite'));
         
     | 
| 
       1062 
1044 
     | 
    
         | 
| 
       1063 
1045 
     | 
    
         
             
            // TesterHome
         
     | 
| 
       1064 
1046 
     | 
    
         
             
            router.get('/testerhome/newest', lazyloadRouteHandler('./routes/testerhome/newest'));
         
     | 
| 
         @@ -1075,12 +1057,12 @@ router.get('/coolbuy/newest', lazyloadRouteHandler('./routes/coolbuy/newest')); 
     | 
|
| 
       1075 
1057 
     | 
    
         
             
            router.get('/miniflux/subscription/:parameters?', lazyloadRouteHandler('./routes/miniflux/get_feeds'));
         
     | 
| 
       1076 
1058 
     | 
    
         
             
            router.get('/miniflux/:feeds/:parameters?', lazyloadRouteHandler('./routes/miniflux/get_entries'));
         
     | 
| 
       1077 
1059 
     | 
    
         | 
| 
       1078 
     | 
    
         
            -
            // NGA
         
     | 
| 
       1079 
     | 
    
         
            -
            router.get('/nga/forum/:fid/:recommend?', lazyloadRouteHandler('./routes/nga/forum'));
         
     | 
| 
       1080 
     | 
    
         
            -
            router.get('/nga/post/:tid', lazyloadRouteHandler('./routes/nga/post'));
         
     | 
| 
      
 1060 
     | 
    
         
            +
            // NGA migrated to v2
         
     | 
| 
      
 1061 
     | 
    
         
            +
            // router.get('/nga/forum/:fid/:recommend?', lazyloadRouteHandler('./routes/nga/forum'));
         
     | 
| 
      
 1062 
     | 
    
         
            +
            // router.get('/nga/post/:tid', lazyloadRouteHandler('./routes/nga/post'));
         
     | 
| 
       1081 
1063 
     | 
    
         | 
| 
       1082 
1064 
     | 
    
         
             
            // Nautilus
         
     | 
| 
       1083 
     | 
    
         
            -
            router.get('/nautilus/topic/:tid', lazyloadRouteHandler('./routes/nautilus/topics'));
         
     | 
| 
      
 1065 
     | 
    
         
            +
            // router.get('/nautilus/topic/:tid', lazyloadRouteHandler('./routes/nautilus/topics'));
         
     | 
| 
       1084 
1066 
     | 
    
         | 
| 
       1085 
1067 
     | 
    
         
             
            // JavBus migrated to v2
         
     | 
| 
       1086 
1068 
     | 
    
         
             
            // router.get('/javbus/home', lazyloadRouteHandler('./routes/javbus/home'));
         
     | 
| 
         @@ -1106,7 +1088,7 @@ router.get('/anigamer/new_anime', lazyloadRouteHandler('./routes/anigamer/new_an 
     | 
|
| 
       1106 
1088 
     | 
    
         
             
            router.get('/anigamer/anime/:sn', lazyloadRouteHandler('./routes/anigamer/anime'));
         
     | 
| 
       1107 
1089 
     | 
    
         | 
| 
       1108 
1090 
     | 
    
         
             
            // Apkpure
         
     | 
| 
       1109 
     | 
    
         
            -
            router.get('/apkpure/versions/:region/:pkg', lazyloadRouteHandler('./routes/apkpure/versions'));
         
     | 
| 
      
 1091 
     | 
    
         
            +
            // router.get('/apkpure/versions/:region/:pkg', lazyloadRouteHandler('./routes/apkpure/versions'));
         
     | 
| 
       1110 
1092 
     | 
    
         | 
| 
       1111 
1093 
     | 
    
         
             
            // 豆瓣美女 migrated to v2
         
     | 
| 
       1112 
1094 
     | 
    
         
             
            // router.get('/dbmv/:category?', lazyloadRouteHandler('./routes/dbmv/index'));
         
     | 
| 
         @@ -1126,12 +1108,12 @@ router.get('/zimuku/:type?', lazyloadRouteHandler('./routes/zimuku/index')); 
     | 
|
| 
       1126 
1108 
     | 
    
         
             
            // SubHD.tv
         
     | 
| 
       1127 
1109 
     | 
    
         
             
            // router.get('/subhd/newest', lazyloadRouteHandler('./routes/subhd/newest'));
         
     | 
| 
       1128 
1110 
     | 
    
         | 
| 
       1129 
     | 
    
         
            -
            // 虎嗅
         
     | 
| 
       1130 
     | 
    
         
            -
            router.get('/huxiu/tag/:id', lazyloadRouteHandler('./routes/huxiu/tag'));
         
     | 
| 
       1131 
     | 
    
         
            -
            router.get('/huxiu/search/:keyword', lazyloadRouteHandler('./routes/huxiu/search'));
         
     | 
| 
       1132 
     | 
    
         
            -
            router.get('/huxiu/author/:id', lazyloadRouteHandler('./routes/huxiu/author'));
         
     | 
| 
       1133 
     | 
    
         
            -
            router.get('/huxiu/article', lazyloadRouteHandler('./routes/huxiu/article'));
         
     | 
| 
       1134 
     | 
    
         
            -
            router.get('/huxiu/collection/:id', lazyloadRouteHandler('./routes/huxiu/collection'));
         
     | 
| 
      
 1111 
     | 
    
         
            +
            // 虎嗅 migrated to v2
         
     | 
| 
      
 1112 
     | 
    
         
            +
            // router.get('/huxiu/tag/:id', lazyloadRouteHandler('./routes/huxiu/tag'));
         
     | 
| 
      
 1113 
     | 
    
         
            +
            // router.get('/huxiu/search/:keyword', lazyloadRouteHandler('./routes/huxiu/search'));
         
     | 
| 
      
 1114 
     | 
    
         
            +
            // router.get('/huxiu/author/:id', lazyloadRouteHandler('./routes/huxiu/author'));
         
     | 
| 
      
 1115 
     | 
    
         
            +
            // router.get('/huxiu/article', lazyloadRouteHandler('./routes/huxiu/article'));
         
     | 
| 
      
 1116 
     | 
    
         
            +
            // router.get('/huxiu/collection/:id', lazyloadRouteHandler('./routes/huxiu/collection'));
         
     | 
| 
       1135 
1117 
     | 
    
         | 
| 
       1136 
1118 
     | 
    
         
             
            // Steam
         
     | 
| 
       1137 
1119 
     | 
    
         
             
            router.get('/steam/search/:params', lazyloadRouteHandler('./routes/steam/search'));
         
     | 
| 
         @@ -1189,13 +1171,13 @@ router.get('/cyzone/author/:id', lazyloadRouteHandler('./routes/cyzone/author')) 
     | 
|
| 
       1189 
1171 
     | 
    
         
             
            router.get('/cyzone/label/:name', lazyloadRouteHandler('./routes/cyzone/label'));
         
     | 
| 
       1190 
1172 
     | 
    
         | 
| 
       1191 
1173 
     | 
    
         
             
            // 政府
         
     | 
| 
       1192 
     | 
    
         
            -
            router.get('/gov/zhengce/zuixin', lazyloadRouteHandler('./routes/gov/zhengce/zuixin'));
         
     | 
| 
       1193 
     | 
    
         
            -
            router.get('/gov/zhengce/wenjian/:pcodeJiguan?', lazyloadRouteHandler('./routes/gov/zhengce/wenjian'));
         
     | 
| 
       1194 
     | 
    
         
            -
            router.get('/gov/zhengce/govall/:advance?', lazyloadRouteHandler('./routes/gov/zhengce/govall'));
         
     | 
| 
      
 1174 
     | 
    
         
            +
            // router.get('/gov/zhengce/zuixin', lazyloadRouteHandler('./routes/gov/zhengce/zuixin'));
         
     | 
| 
      
 1175 
     | 
    
         
            +
            // router.get('/gov/zhengce/wenjian/:pcodeJiguan?', lazyloadRouteHandler('./routes/gov/zhengce/wenjian'));
         
     | 
| 
      
 1176 
     | 
    
         
            +
            // router.get('/gov/zhengce/govall/:advance?', lazyloadRouteHandler('./routes/gov/zhengce/govall'));
         
     | 
| 
       1195 
1177 
     | 
    
         
             
            router.get('/gov/province/:name/:category', lazyloadRouteHandler('./routes/gov/province'));
         
     | 
| 
       1196 
1178 
     | 
    
         
             
            router.get('/gov/city/:name/:category', lazyloadRouteHandler('./routes/gov/city'));
         
     | 
| 
       1197 
1179 
     | 
    
         
             
            router.get('/gov/statecouncil/briefing', lazyloadRouteHandler('./routes/gov/statecouncil/briefing'));
         
     | 
| 
       1198 
     | 
    
         
            -
            router.get('/gov/news/:uid', lazyloadRouteHandler('./routes/gov/news'));
         
     | 
| 
      
 1180 
     | 
    
         
            +
            // router.get('/gov/news/:uid', lazyloadRouteHandler('./routes/gov/news'));
         
     | 
| 
       1199 
1181 
     | 
    
         
             
            router.get('/gov/shuju/:caty/:item', lazyloadRouteHandler('./routes/gov/shuju'));
         
     | 
| 
       1200 
1182 
     | 
    
         
             
            router.get('/gov/xinwen/tujie/:caty', lazyloadRouteHandler('./routes/gov/xinwen/tujie'));
         
     | 
| 
       1201 
1183 
     | 
    
         | 
| 
         @@ -1204,7 +1186,7 @@ router.get('/gov/suzhou/news/:uid', lazyloadRouteHandler('./routes/gov/suzhou/ne 
     | 
|
| 
       1204 
1186 
     | 
    
         
             
            router.get('/gov/suzhou/doc', lazyloadRouteHandler('./routes/gov/suzhou/doc'));
         
     | 
| 
       1205 
1187 
     | 
    
         | 
| 
       1206 
1188 
     | 
    
         
             
            // 江苏
         
     | 
| 
       1207 
     | 
    
         
            -
            router.get('/gov/jiangsu/eea/:type?', lazyloadRouteHandler('./routes/gov/jiangsu/eea'));
         
     | 
| 
      
 1189 
     | 
    
         
            +
            // router.get('/gov/jiangsu/eea/:type?', lazyloadRouteHandler('./routes/gov/jiangsu/eea'));
         
     | 
| 
       1208 
1190 
     | 
    
         | 
| 
       1209 
1191 
     | 
    
         
             
            // 山西
         
     | 
| 
       1210 
1192 
     | 
    
         
             
            router.get('/gov/shanxi/rst/:category', lazyloadRouteHandler('./routes/gov/shanxi/rst'));
         
     | 
| 
         @@ -1215,10 +1197,10 @@ router.get('/gov/hunan/notice/:type', lazyloadRouteHandler('./routes/gov/hunan/n 
     | 
|
| 
       1215 
1197 
     | 
    
         
             
            // 中华人民共和国国家发展和改革委员会
         
     | 
| 
       1216 
1198 
     | 
    
         
             
            router.get('/gov/ndrc/xwdt/:caty?', lazyloadRouteHandler('./routes/gov/ndrc/xwdt'));
         
     | 
| 
       1217 
1199 
     | 
    
         | 
| 
       1218 
     | 
    
         
            -
            // 中华人民共和国-海关总署
         
     | 
| 
       1219 
     | 
    
         
            -
            router.get('/gov/customs/list/:gchannel', lazyloadRouteHandler('./routes/gov/customs/list'));
         
     | 
| 
      
 1200 
     | 
    
         
            +
            // 中华人民共和国-海关总署 migrated to v2
         
     | 
| 
      
 1201 
     | 
    
         
            +
            // router.get('/gov/customs/list/:gchannel', lazyloadRouteHandler('./routes/gov/customs/list'));
         
     | 
| 
       1220 
1202 
     | 
    
         | 
| 
       1221 
     | 
    
         
            -
            // 中华人民共和国教育部 
     | 
| 
      
 1203 
     | 
    
         
            +
            // 中华人民共和国教育部
         
     | 
| 
       1222 
1204 
     | 
    
         
             
            // router.get('/gov/moe/:type', lazyloadRouteHandler('./routes/gov/moe/moe'));
         
     | 
| 
       1223 
1205 
     | 
    
         | 
| 
       1224 
1206 
     | 
    
         
             
            // 中华人民共和国外交部
         
     | 
| 
         @@ -1247,7 +1229,7 @@ router.get('/gov/guangdong/edu/:caty', lazyloadRouteHandler('./routes/gov/guangd 
     | 
|
| 
       1247 
1229 
     | 
    
         
             
            router.get('/gov/guangdong/eea/:caty', lazyloadRouteHandler('./routes/gov/guangdong/eea'));
         
     | 
| 
       1248 
1230 
     | 
    
         | 
| 
       1249 
1231 
     | 
    
         
             
            // 广东省深圳市
         
     | 
| 
       1250 
     | 
    
         
            -
            router.get('/gov/shenzhen/xxgk/zfxxgj/:caty', lazyloadRouteHandler('./routes/gov/shenzhen/xxgk/zfxxgj'));
         
     | 
| 
      
 1232 
     | 
    
         
            +
            // router.get('/gov/shenzhen/xxgk/zfxxgj/:caty', lazyloadRouteHandler('./routes/gov/shenzhen/xxgk/zfxxgj'));
         
     | 
| 
       1251 
1233 
     | 
    
         | 
| 
       1252 
1234 
     | 
    
         
             
            // 日本国外務省記者会見
         
     | 
| 
       1253 
1235 
     | 
    
         
             
            router.get('/go.jp/mofa', lazyloadRouteHandler('./routes/go.jp/mofa/main'));
         
     | 
| 
         @@ -1301,11 +1283,11 @@ router.get('/meipai/user/:uid', lazyloadRouteHandler('./routes/meipai/user')); 
     | 
|
| 
       1301 
1283 
     | 
    
         
             
            router.get('/duozhi', lazyloadRouteHandler('./routes/duozhi'));
         
     | 
| 
       1302 
1284 
     | 
    
         | 
| 
       1303 
1285 
     | 
    
         
             
            // 人人都是产品经理
         
     | 
| 
       1304 
     | 
    
         
            -
            router.get('/woshipm/popular', lazyloadRouteHandler('./routes/woshipm/popular'));
         
     | 
| 
       1305 
     | 
    
         
            -
            router.get('/woshipm/wen', lazyloadRouteHandler('./routes/woshipm/wen'));
         
     | 
| 
       1306 
     | 
    
         
            -
            router.get('/woshipm/bookmarks/:id', lazyloadRouteHandler('./routes/woshipm/bookmarks'));
         
     | 
| 
       1307 
     | 
    
         
            -
            router.get('/woshipm/user_article/:id', lazyloadRouteHandler('./routes/woshipm/user_article'));
         
     | 
| 
       1308 
     | 
    
         
            -
            router.get('/woshipm/latest', lazyloadRouteHandler('./routes/woshipm/latest'));
         
     | 
| 
      
 1286 
     | 
    
         
            +
            // router.get('/woshipm/popular', lazyloadRouteHandler('./routes/woshipm/popular'));
         
     | 
| 
      
 1287 
     | 
    
         
            +
            // router.get('/woshipm/wen', lazyloadRouteHandler('./routes/woshipm/wen'));
         
     | 
| 
      
 1288 
     | 
    
         
            +
            // router.get('/woshipm/bookmarks/:id', lazyloadRouteHandler('./routes/woshipm/bookmarks'));
         
     | 
| 
      
 1289 
     | 
    
         
            +
            // router.get('/woshipm/user_article/:id', lazyloadRouteHandler('./routes/woshipm/user_article'));
         
     | 
| 
      
 1290 
     | 
    
         
            +
            // router.get('/woshipm/latest', lazyloadRouteHandler('./routes/woshipm/latest'));
         
     | 
| 
       1309 
1291 
     | 
    
         | 
| 
       1310 
1292 
     | 
    
         
             
            // 高清电台
         
     | 
| 
       1311 
1293 
     | 
    
         
             
            router.get('/gaoqing/latest', lazyloadRouteHandler('./routes/gaoqing/latest'));
         
     | 
| 
         @@ -1323,7 +1305,7 @@ router.get('/aisixiang/thinktank/:name/:type?', lazyloadRouteHandler('./routes/a 
     | 
|
| 
       1323 
1305 
     | 
    
         
             
            // router.get('/hackernews/:section/:type?', lazyloadRouteHandler('./routes/hackernews/story'));
         
     | 
| 
       1324 
1306 
     | 
    
         | 
| 
       1325 
1307 
     | 
    
         
             
            // LeetCode
         
     | 
| 
       1326 
     | 
    
         
            -
            router.get('/leetcode/articles', lazyloadRouteHandler('./routes/leetcode/articles'));
         
     | 
| 
      
 1308 
     | 
    
         
            +
            // router.get('/leetcode/articles', lazyloadRouteHandler('./routes/leetcode/articles'));
         
     | 
| 
       1327 
1309 
     | 
    
         
             
            router.get('/leetcode/submission/us/:user', lazyloadRouteHandler('./routes/leetcode/check-us'));
         
     | 
| 
       1328 
1310 
     | 
    
         
             
            router.get('/leetcode/submission/cn/:user', lazyloadRouteHandler('./routes/leetcode/check-cn'));
         
     | 
| 
       1329 
1311 
     | 
    
         | 
| 
         @@ -1364,15 +1346,15 @@ router.get('/ui-cn/article', lazyloadRouteHandler('./routes/ui-cn/article')); 
     | 
|
| 
       1364 
1346 
     | 
    
         
             
            router.get('/ui-cn/user/:id', lazyloadRouteHandler('./routes/ui-cn/user'));
         
     | 
| 
       1365 
1347 
     | 
    
         | 
| 
       1366 
1348 
     | 
    
         
             
            // Dcard
         
     | 
| 
       1367 
     | 
    
         
            -
            router.get('/dcard/:section/:type?', lazyloadRouteHandler('./routes/dcard/section'));
         
     | 
| 
      
 1349 
     | 
    
         
            +
            // router.get('/dcard/:section/:type?', lazyloadRouteHandler('./routes/dcard/section'));
         
     | 
| 
       1368 
1350 
     | 
    
         | 
| 
       1369 
1351 
     | 
    
         
             
            // 北京天文馆每日一图
         
     | 
| 
       1370 
     | 
    
         
            -
            router.get('/bjp/apod', lazyloadRouteHandler('./routes/bjp/apod'));
         
     | 
| 
      
 1352 
     | 
    
         
            +
            // router.get('/bjp/apod', lazyloadRouteHandler('./routes/bjp/apod'));
         
     | 
| 
       1371 
1353 
     | 
    
         | 
| 
       1372 
1354 
     | 
    
         
             
            // 洛谷
         
     | 
| 
       1373 
     | 
    
         
            -
            router.get('/luogu/daily/:id?', lazyloadRouteHandler('./routes/luogu/daily'));
         
     | 
| 
       1374 
     | 
    
         
            -
            router.get('/luogu/contest', lazyloadRouteHandler('./routes/luogu/contest'));
         
     | 
| 
       1375 
     | 
    
         
            -
            router.get('/luogu/user/feed/:uid', lazyloadRouteHandler('./routes/luogu/userFeed'));
         
     | 
| 
      
 1355 
     | 
    
         
            +
            // router.get('/luogu/daily/:id?', lazyloadRouteHandler('./routes/luogu/daily'));
         
     | 
| 
      
 1356 
     | 
    
         
            +
            // router.get('/luogu/contest', lazyloadRouteHandler('./routes/luogu/contest'));
         
     | 
| 
      
 1357 
     | 
    
         
            +
            // router.get('/luogu/user/feed/:uid', lazyloadRouteHandler('./routes/luogu/userFeed'));
         
     | 
| 
       1376 
1358 
     | 
    
         | 
| 
       1377 
1359 
     | 
    
         
             
            // 决胜网
         
     | 
| 
       1378 
1360 
     | 
    
         
             
            router.get('/juesheng', lazyloadRouteHandler('./routes/juesheng'));
         
     | 
| 
         @@ -1393,16 +1375,16 @@ router.get('/blogs/wang54/:id?', lazyloadRouteHandler('./routes/blogs/wang54')); 
     | 
|
| 
       1393 
1375 
     | 
    
         
             
            // WordPress
         
     | 
| 
       1394 
1376 
     | 
    
         
             
            router.get('/blogs/wordpress/:domain/:https?', lazyloadRouteHandler('./routes/blogs/wordpress'));
         
     | 
| 
       1395 
1377 
     | 
    
         | 
| 
       1396 
     | 
    
         
            -
            // 裏垢女子まとめ
         
     | 
| 
       1397 
     | 
    
         
            -
            router.get('/uraaka-joshi', lazyloadRouteHandler('./routes/uraaka-joshi/uraaka-joshi'));
         
     | 
| 
       1398 
     | 
    
         
            -
            router.get('/uraaka-joshi/:id', lazyloadRouteHandler('./routes/uraaka-joshi/uraaka-joshi-user'));
         
     | 
| 
      
 1378 
     | 
    
         
            +
            // 裏垢女子まとめ migrated to v2
         
     | 
| 
      
 1379 
     | 
    
         
            +
            // router.get('/uraaka-joshi', lazyloadRouteHandler('./routes/uraaka-joshi/uraaka-joshi'));
         
     | 
| 
      
 1380 
     | 
    
         
            +
            // router.get('/uraaka-joshi/:id', lazyloadRouteHandler('./routes/uraaka-joshi/uraaka-joshi-user'));
         
     | 
| 
       1399 
1381 
     | 
    
         | 
| 
       1400 
1382 
     | 
    
         
             
            // 西祠胡同
         
     | 
| 
       1401 
1383 
     | 
    
         
             
            router.get('/xici/:id?', lazyloadRouteHandler('./routes/xici'));
         
     | 
| 
       1402 
1384 
     | 
    
         | 
| 
       1403 
1385 
     | 
    
         
             
            // 淘股吧论坛
         
     | 
| 
       1404 
     | 
    
         
            -
            router.get('/taoguba/index', lazyloadRouteHandler('./routes/taoguba/index'));
         
     | 
| 
       1405 
     | 
    
         
            -
            router.get('/taoguba/user/:uid', lazyloadRouteHandler('./routes/taoguba/user'));
         
     | 
| 
      
 1386 
     | 
    
         
            +
            // router.get('/taoguba/index', lazyloadRouteHandler('./routes/taoguba/index'));
         
     | 
| 
      
 1387 
     | 
    
         
            +
            // router.get('/taoguba/user/:uid', lazyloadRouteHandler('./routes/taoguba/user'));
         
     | 
| 
       1406 
1388 
     | 
    
         | 
| 
       1407 
1389 
     | 
    
         
             
            // 今日热榜
         
     | 
| 
       1408 
1390 
     | 
    
         
             
            router.get('/tophub/:id', lazyloadRouteHandler('./routes/tophub'));
         
     | 
| 
         @@ -1478,11 +1460,11 @@ router.get('/zucc/news/latest', lazyloadRouteHandler('./routes/universities/zucc 
     | 
|
| 
       1478 
1460 
     | 
    
         
             
            router.get('/zucc/cssearch/latest/:webVpn/:key', lazyloadRouteHandler('./routes/universities/zucc/cssearch'));
         
     | 
| 
       1479 
1461 
     | 
    
         | 
| 
       1480 
1462 
     | 
    
         
             
            // 华中师范大学
         
     | 
| 
       1481 
     | 
    
         
            -
            router.get('/ccnu/career', lazyloadRouteHandler('./routes/universities/ccnu/career'));
         
     | 
| 
      
 1463 
     | 
    
         
            +
            // router.get('/ccnu/career', lazyloadRouteHandler('./routes/universities/ccnu/career'));
         
     | 
| 
       1482 
1464 
     | 
    
         | 
| 
       1483 
1465 
     | 
    
         
             
            // Infoq
         
     | 
| 
       1484 
     | 
    
         
            -
            router.get('/infoq/recommend', lazyloadRouteHandler('./routes/infoq/recommend'));
         
     | 
| 
       1485 
     | 
    
         
            -
            router.get('/infoq/topic/:id', lazyloadRouteHandler('./routes/infoq/topic'));
         
     | 
| 
      
 1466 
     | 
    
         
            +
            // router.get('/infoq/recommend', lazyloadRouteHandler('./routes/infoq/recommend'));
         
     | 
| 
      
 1467 
     | 
    
         
            +
            // router.get('/infoq/topic/:id', lazyloadRouteHandler('./routes/infoq/topic'));
         
     | 
| 
       1486 
1468 
     | 
    
         | 
| 
       1487 
1469 
     | 
    
         
             
            // checkee
         
     | 
| 
       1488 
1470 
     | 
    
         
             
            router.get('/checkee/:dispdate', lazyloadRouteHandler('./routes/checkee/index'));
         
     | 
| 
         @@ -1520,15 +1502,15 @@ router.get('/bupt/news', lazyloadRouteHandler('./routes/universities/bupt/news') 
     | 
|
| 
       1520 
1502 
     | 
    
         
             
            router.get('/bupt/funbox', lazyloadRouteHandler('./routes/universities/bupt/funbox'));
         
     | 
| 
       1521 
1503 
     | 
    
         | 
| 
       1522 
1504 
     | 
    
         
             
            // VOCUS 方格子
         
     | 
| 
       1523 
     | 
    
         
            -
            router.get('/vocus/publication/:id', lazyloadRouteHandler('./routes/vocus/publication'));
         
     | 
| 
       1524 
     | 
    
         
            -
            router.get('/vocus/user/:id', lazyloadRouteHandler('./routes/vocus/user'));
         
     | 
| 
      
 1505 
     | 
    
         
            +
            // router.get('/vocus/publication/:id', lazyloadRouteHandler('./routes/vocus/publication'));
         
     | 
| 
      
 1506 
     | 
    
         
            +
            // router.get('/vocus/user/:id', lazyloadRouteHandler('./routes/vocus/user'));
         
     | 
| 
       1525 
1507 
     | 
    
         | 
| 
       1526 
1508 
     | 
    
         
             
            // 一亩三分地 1point3acres
         
     | 
| 
       1527 
     | 
    
         
            -
            router.get('/1point3acres/blog/:category?', lazyloadRouteHandler('./routes/1point3acres/blog'));
         
     | 
| 
       1528 
     | 
    
         
            -
            router.get('/1point3acres/user/:id/threads', lazyloadRouteHandler('./routes/1point3acres/threads'));
         
     | 
| 
       1529 
     | 
    
         
            -
            router.get('/1point3acres/user/:id/posts', lazyloadRouteHandler('./routes/1point3acres/posts'));
         
     | 
| 
       1530 
     | 
    
         
            -
            router.get('/1point3acres/offer/:year?/:major?/:school?', lazyloadRouteHandler('./routes/1point3acres/offer'));
         
     | 
| 
       1531 
     | 
    
         
            -
            router.get('/1point3acres/post/:category', lazyloadRouteHandler('./routes/1point3acres/post'));
         
     | 
| 
      
 1509 
     | 
    
         
            +
            // router.get('/1point3acres/blog/:category?', lazyloadRouteHandler('./routes/1point3acres/blog'));
         
     | 
| 
      
 1510 
     | 
    
         
            +
            // router.get('/1point3acres/user/:id/threads', lazyloadRouteHandler('./routes/1point3acres/threads'));
         
     | 
| 
      
 1511 
     | 
    
         
            +
            // router.get('/1point3acres/user/:id/posts', lazyloadRouteHandler('./routes/1point3acres/posts'));
         
     | 
| 
      
 1512 
     | 
    
         
            +
            // router.get('/1point3acres/offer/:year?/:major?/:school?', lazyloadRouteHandler('./routes/1point3acres/offer'));
         
     | 
| 
      
 1513 
     | 
    
         
            +
            // router.get('/1point3acres/post/:category', lazyloadRouteHandler('./routes/1point3acres/post'));
         
     | 
| 
       1532 
1514 
     | 
    
         | 
| 
       1533 
1515 
     | 
    
         
             
            // 广东海洋大学
         
     | 
| 
       1534 
1516 
     | 
    
         
             
            router.get('/gdoujwc', lazyloadRouteHandler('./routes/universities/gdou/jwc/jwtz'));
         
     | 
| 
         @@ -1548,15 +1530,15 @@ router.get('/ps/:lang?/product/:gridName', lazyloadRouteHandler('./routes/ps/pro 
     | 
|
| 
       1548 
1530 
     | 
    
         
             
            // Quanta Magazine
         
     | 
| 
       1549 
1531 
     | 
    
         
             
            router.get('/quantamagazine/archive', lazyloadRouteHandler('./routes/quantamagazine/archive'));
         
     | 
| 
       1550 
1532 
     | 
    
         | 
| 
       1551 
     | 
    
         
            -
            // Nintendo
         
     | 
| 
       1552 
     | 
    
         
            -
            router.get('/nintendo/eshop/jp', lazyloadRouteHandler('./routes/nintendo/eshop_jp'));
         
     | 
| 
       1553 
     | 
    
         
            -
            router.get('/nintendo/eshop/hk', lazyloadRouteHandler('./routes/nintendo/eshop_hk'));
         
     | 
| 
       1554 
     | 
    
         
            -
            router.get('/nintendo/eshop/us', lazyloadRouteHandler('./routes/nintendo/eshop_us'));
         
     | 
| 
       1555 
     | 
    
         
            -
            router.get('/nintendo/eshop/cn', lazyloadRouteHandler('./routes/nintendo/eshop_cn'));
         
     | 
| 
       1556 
     | 
    
         
            -
            router.get('/nintendo/news', lazyloadRouteHandler('./routes/nintendo/news'));
         
     | 
| 
       1557 
     | 
    
         
            -
            router.get('/nintendo/news/china', lazyloadRouteHandler('./routes/nintendo/news_china'));
         
     | 
| 
       1558 
     | 
    
         
            -
            router.get('/nintendo/direct', lazyloadRouteHandler('./routes/nintendo/direct'));
         
     | 
| 
       1559 
     | 
    
         
            -
            router.get('/nintendo/system-update', lazyloadRouteHandler('./routes/nintendo/system-update'));
         
     | 
| 
      
 1533 
     | 
    
         
            +
            // Nintendo migrated to v2
         
     | 
| 
      
 1534 
     | 
    
         
            +
            // router.get('/nintendo/eshop/jp', lazyloadRouteHandler('./routes/nintendo/eshop_jp'));
         
     | 
| 
      
 1535 
     | 
    
         
            +
            // router.get('/nintendo/eshop/hk', lazyloadRouteHandler('./routes/nintendo/eshop_hk'));
         
     | 
| 
      
 1536 
     | 
    
         
            +
            // router.get('/nintendo/eshop/us', lazyloadRouteHandler('./routes/nintendo/eshop_us'));
         
     | 
| 
      
 1537 
     | 
    
         
            +
            // router.get('/nintendo/eshop/cn', lazyloadRouteHandler('./routes/nintendo/eshop_cn'));
         
     | 
| 
      
 1538 
     | 
    
         
            +
            // router.get('/nintendo/news', lazyloadRouteHandler('./routes/nintendo/news'));
         
     | 
| 
      
 1539 
     | 
    
         
            +
            // router.get('/nintendo/news/china', lazyloadRouteHandler('./routes/nintendo/news_china'));
         
     | 
| 
      
 1540 
     | 
    
         
            +
            // router.get('/nintendo/direct', lazyloadRouteHandler('./routes/nintendo/direct'));
         
     | 
| 
      
 1541 
     | 
    
         
            +
            // router.get('/nintendo/system-update', lazyloadRouteHandler('./routes/nintendo/system-update'));
         
     | 
| 
       1560 
1542 
     | 
    
         | 
| 
       1561 
1543 
     | 
    
         
             
            // 世界卫生组织 migrated to v2
         
     | 
| 
       1562 
1544 
     | 
    
         
             
            // router.get('/who/news-room/:category?/:language?', lazyloadRouteHandler('./routes/who/news-room'));
         
     | 
| 
         @@ -1575,16 +1557,16 @@ router.get('/mit/csail/news', lazyloadRouteHandler('./routes/universities/mit/cs 
     | 
|
| 
       1575 
1557 
     | 
    
         
             
            router.get('/kpmg/insights', lazyloadRouteHandler('./routes/kpmg/insights'));
         
     | 
| 
       1576 
1558 
     | 
    
         | 
| 
       1577 
1559 
     | 
    
         
             
            // Saraba1st
         
     | 
| 
       1578 
     | 
    
         
            -
            router.get('/saraba1st/thread/:tid', lazyloadRouteHandler('./routes/saraba1st/thread'));
         
     | 
| 
      
 1560 
     | 
    
         
            +
            // router.get('/saraba1st/thread/:tid', lazyloadRouteHandler('./routes/saraba1st/thread'));
         
     | 
| 
       1579 
1561 
     | 
    
         | 
| 
       1580 
1562 
     | 
    
         
             
            // gradcafe
         
     | 
| 
       1581 
1563 
     | 
    
         
             
            router.get('/gradcafe/result/:type', lazyloadRouteHandler('./routes/gradcafe/result'));
         
     | 
| 
       1582 
1564 
     | 
    
         
             
            router.get('/gradcafe/result', lazyloadRouteHandler('./routes/gradcafe/result'));
         
     | 
| 
       1583 
1565 
     | 
    
         | 
| 
       1584 
     | 
    
         
            -
            // The Economist
         
     | 
| 
       1585 
     | 
    
         
            -
            router.get('/the-economist/download', lazyloadRouteHandler('./routes/the-economist/download'));
         
     | 
| 
       1586 
     | 
    
         
            -
            router.get('/the-economist/gre-vocabulary', lazyloadRouteHandler('./routes/the-economist/gre-vocabulary'));
         
     | 
| 
       1587 
     | 
    
         
            -
            router.get('/the-economist/:endpoint', lazyloadRouteHandler('./routes/the-economist/full'));
         
     | 
| 
      
 1566 
     | 
    
         
            +
            // The Economist migrated to v2
         
     | 
| 
      
 1567 
     | 
    
         
            +
            // router.get('/the-economist/download', lazyloadRouteHandler('./routes/the-economist/download'));
         
     | 
| 
      
 1568 
     | 
    
         
            +
            // router.get('/the-economist/gre-vocabulary', lazyloadRouteHandler('./routes/the-economist/gre-vocabulary'));
         
     | 
| 
      
 1569 
     | 
    
         
            +
            // router.get('/the-economist/:endpoint', lazyloadRouteHandler('./routes/the-economist/full'));
         
     | 
| 
       1588 
1570 
     | 
    
         | 
| 
       1589 
1571 
     | 
    
         
             
            // 鼠绘漫画
         
     | 
| 
       1590 
1572 
     | 
    
         
             
            router.get('/shuhui/comics/:id', lazyloadRouteHandler('./routes/shuhui/comics'));
         
     | 
| 
         @@ -1646,7 +1628,7 @@ router.get('/swufe/seie/:type?', lazyloadRouteHandler('./routes/universities/swu 
     | 
|
| 
       1646 
1628 
     | 
    
         
             
            router.get('/wired/tag/:tag', lazyloadRouteHandler('./routes/wired/tag'));
         
     | 
| 
       1647 
1629 
     | 
    
         | 
| 
       1648 
1630 
     | 
    
         
             
            // 语雀文档
         
     | 
| 
       1649 
     | 
    
         
            -
            router.get('/yuque/doc/:repo_id', lazyloadRouteHandler('./routes/yuque/doc'));
         
     | 
| 
      
 1631 
     | 
    
         
            +
            // router.get('/yuque/doc/:repo_id', lazyloadRouteHandler('./routes/yuque/doc'));
         
     | 
| 
       1650 
1632 
     | 
    
         | 
| 
       1651 
1633 
     | 
    
         
             
            // 飞地
         
     | 
| 
       1652 
1634 
     | 
    
         
             
            router.get('/enclavebooks/category/:id?', lazyloadRouteHandler('./routes/enclavebooks/category'));
         
     | 
| 
         @@ -1654,11 +1636,11 @@ router.get('/enclavebooks/user/:uid', lazyloadRouteHandler('./routes/enclavebook 
     | 
|
| 
       1654 
1636 
     | 
    
         
             
            router.get('/enclavebooks/collection/:uid', lazyloadRouteHandler('./routes/enclavebooks/collection.js'));
         
     | 
| 
       1655 
1637 
     | 
    
         | 
| 
       1656 
1638 
     | 
    
         
             
            // 色花堂
         
     | 
| 
       1657 
     | 
    
         
            -
            router.get('/dsndsht23/picture/:subforumid', lazyloadRouteHandler('./routes/dsndsht23/index'));
         
     | 
| 
       1658 
     | 
    
         
            -
            router.get('/dsndsht23/bt/:subforumid?', lazyloadRouteHandler('./routes/dsndsht23/index'));
         
     | 
| 
       1659 
     | 
    
         
            -
            router.get('/dsndsht23/:subforumid?/:type?', lazyloadRouteHandler('./routes/dsndsht23/index'));
         
     | 
| 
       1660 
     | 
    
         
            -
            router.get('/dsndsht23/:subforumid?', lazyloadRouteHandler('./routes/dsndsht23/index'));
         
     | 
| 
       1661 
     | 
    
         
            -
            router.get('/dsndsht23', lazyloadRouteHandler('./routes/dsndsht23/index'));
         
     | 
| 
      
 1639 
     | 
    
         
            +
            // router.get('/dsndsht23/picture/:subforumid', lazyloadRouteHandler('./routes/dsndsht23/index'));
         
     | 
| 
      
 1640 
     | 
    
         
            +
            // router.get('/dsndsht23/bt/:subforumid?', lazyloadRouteHandler('./routes/dsndsht23/index'));
         
     | 
| 
      
 1641 
     | 
    
         
            +
            // router.get('/dsndsht23/:subforumid?/:type?', lazyloadRouteHandler('./routes/dsndsht23/index'));
         
     | 
| 
      
 1642 
     | 
    
         
            +
            // router.get('/dsndsht23/:subforumid?', lazyloadRouteHandler('./routes/dsndsht23/index'));
         
     | 
| 
      
 1643 
     | 
    
         
            +
            // router.get('/dsndsht23', lazyloadRouteHandler('./routes/dsndsht23/index'));
         
     | 
| 
       1662 
1644 
     | 
    
         | 
| 
       1663 
1645 
     | 
    
         
             
            // 数英网最新文章
         
     | 
| 
       1664 
1646 
     | 
    
         
             
            router.get('/digitaling/index', lazyloadRouteHandler('./routes/digitaling/index'));
         
     | 
| 
         @@ -1741,7 +1723,7 @@ router.get('/metacritic/release/:platform/:type/:sort?', lazyloadRouteHandler('. 
     | 
|
| 
       1741 
1723 
     | 
    
         
             
            router.get('/kkj/news', lazyloadRouteHandler('./routes/kkj/news'));
         
     | 
| 
       1742 
1724 
     | 
    
         | 
| 
       1743 
1725 
     | 
    
         
             
            // Outage.Report
         
     | 
| 
       1744 
     | 
    
         
            -
            router.get('/outagereport/:name/:count?', lazyloadRouteHandler('./routes/outagereport/service'));
         
     | 
| 
      
 1726 
     | 
    
         
            +
            // router.get('/outagereport/:name/:count?', lazyloadRouteHandler('./routes/outagereport/service'));
         
     | 
| 
       1745 
1727 
     | 
    
         | 
| 
       1746 
1728 
     | 
    
         
             
            // sixthtone
         
     | 
| 
       1747 
1729 
     | 
    
         
             
            router.get('/sixthtone/news', lazyloadRouteHandler('./routes/sixthtone/news'));
         
     | 
| 
         @@ -1759,7 +1741,7 @@ router.get('/huodongxing/explore', lazyloadRouteHandler('./routes/hdx/explore')) 
     | 
|
| 
       1759 
1741 
     | 
    
         
             
            // router.get('/flyertea/creditcard/:bank', lazyloadRouteHandler('./routes/flyert/creditcard'));
         
     | 
| 
       1760 
1742 
     | 
    
         | 
| 
       1761 
1743 
     | 
    
         
             
            // 中国广播
         
     | 
| 
       1762 
     | 
    
         
            -
            router.get('/radio/:channelname/:name', lazyloadRouteHandler('./routes/radio/radio'));
         
     | 
| 
      
 1744 
     | 
    
         
            +
            // router.get('/radio/:channelname/:name', lazyloadRouteHandler('./routes/radio/radio'));
         
     | 
| 
       1763 
1745 
     | 
    
         | 
| 
       1764 
1746 
     | 
    
         
             
            // TOPYS
         
     | 
| 
       1765 
1747 
     | 
    
         
             
            // router.get('/topys/:category', lazyloadRouteHandler('./routes/topys/article'));
         
     | 
| 
         @@ -1772,9 +1754,9 @@ router.get('/8btc/news/flash', lazyloadRouteHandler('./routes/8btc/news/flash')) 
     | 
|
| 
       1772 
1754 
     | 
    
         
             
            router.get('/vuevideo/:userid', lazyloadRouteHandler('./routes/vuevideo/user'));
         
     | 
| 
       1773 
1755 
     | 
    
         | 
| 
       1774 
1756 
     | 
    
         
             
            // 证监会
         
     | 
| 
       1775 
     | 
    
         
            -
            router.get('/csrc/news/:suffix?', lazyloadRouteHandler('./routes/csrc/news'));
         
     | 
| 
       1776 
     | 
    
         
            -
            router.get('/csrc/fashenwei', lazyloadRouteHandler('./routes/csrc/fashenwei'));
         
     | 
| 
       1777 
     | 
    
         
            -
            router.get('/csrc/auditstatus/:apply_id', lazyloadRouteHandler('./routes/csrc/auditstatus'));
         
     | 
| 
      
 1757 
     | 
    
         
            +
            // router.get('/csrc/news/:suffix?', lazyloadRouteHandler('./routes/csrc/news'));
         
     | 
| 
      
 1758 
     | 
    
         
            +
            // router.get('/csrc/fashenwei', lazyloadRouteHandler('./routes/csrc/fashenwei'));
         
     | 
| 
      
 1759 
     | 
    
         
            +
            // router.get('/csrc/auditstatus/:apply_id', lazyloadRouteHandler('./routes/csrc/auditstatus'));
         
     | 
| 
       1778 
1760 
     | 
    
         | 
| 
       1779 
1761 
     | 
    
         
             
            // LWN.net Alerts
         
     | 
| 
       1780 
1762 
     | 
    
         
             
            router.get('/lwn/alerts/:distributor', lazyloadRouteHandler('./routes/lwn/alerts'));
         
     | 
| 
         @@ -1804,7 +1786,7 @@ router.get('/archdaily', lazyloadRouteHandler('./routes/archdaily/home')); 
     | 
|
| 
       1804 
1786 
     | 
    
         
             
            router.get('/aptonic/action/:untested?', lazyloadRouteHandler('./routes/aptonic/action'));
         
     | 
| 
       1805 
1787 
     | 
    
         | 
| 
       1806 
1788 
     | 
    
         
             
            // 印记中文周刊
         
     | 
| 
       1807 
     | 
    
         
            -
            router.get('/docschina/jsweekly', lazyloadRouteHandler('./routes/docschina/jsweekly'));
         
     | 
| 
      
 1789 
     | 
    
         
            +
            // router.get('/docschina/jsweekly', lazyloadRouteHandler('./routes/docschina/jsweekly'));
         
     | 
| 
       1808 
1790 
     | 
    
         | 
| 
       1809 
1791 
     | 
    
         
             
            // im2maker
         
     | 
| 
       1810 
1792 
     | 
    
         
             
            router.get('/im2maker/:channel?', lazyloadRouteHandler('./routes/im2maker/index'));
         
     | 
| 
         @@ -1813,10 +1795,7 @@ router.get('/im2maker/:channel?', lazyloadRouteHandler('./routes/im2maker/index' 
     | 
|
| 
       1813 
1795 
     | 
    
         
             
            router.get('/cninfo/announcement/:column/:code/:orgId/:category?/:search?', lazyloadRouteHandler('./routes/cninfo/announcement'));
         
     | 
| 
       1814 
1796 
     | 
    
         | 
| 
       1815 
1797 
     | 
    
         
             
            // 金十数据
         
     | 
| 
       1816 
     | 
    
         
            -
            router.get('/jinshi/index', lazyloadRouteHandler('./routes/jinshi/index'));
         
     | 
| 
       1817 
     | 
    
         
            -
             
     | 
| 
       1818 
     | 
    
         
            -
            // 中央纪委国家监委网站
         
     | 
| 
       1819 
     | 
    
         
            -
            router.get('/ccdi/scdc', lazyloadRouteHandler('./routes/ccdi/scdc'));
         
     | 
| 
      
 1798 
     | 
    
         
            +
            // router.get('/jinshi/index', lazyloadRouteHandler('./routes/jinshi/index'));
         
     | 
| 
       1820 
1799 
     | 
    
         | 
| 
       1821 
1800 
     | 
    
         
             
            // 中华人民共和国农业农村部
         
     | 
| 
       1822 
1801 
     | 
    
         
             
            router.get('/gov/moa/sjzxfb', lazyloadRouteHandler('./routes/gov/moa/sjzxfb'));
         
     | 
| 
         @@ -1851,7 +1830,7 @@ router.get('/simonsfoundation/articles', lazyloadRouteHandler('./routes/simonsfo 
     | 
|
| 
       1851 
1830 
     | 
    
         
             
            router.get('/simonsfoundation/recommend', lazyloadRouteHandler('./routes/simonsfoundation/recommend'));
         
     | 
| 
       1852 
1831 
     | 
    
         | 
| 
       1853 
1832 
     | 
    
         
             
            // 王者荣耀
         
     | 
| 
       1854 
     | 
    
         
            -
            router.get('/tencent/pvp/newsindex/:type', lazyloadRouteHandler('./routes/tencent/pvp/newsindex'));
         
     | 
| 
      
 1833 
     | 
    
         
            +
            // router.get('/tencent/pvp/newsindex/:type', lazyloadRouteHandler('./routes/tencent/pvp/newsindex'));
         
     | 
| 
       1855 
1834 
     | 
    
         | 
| 
       1856 
1835 
     | 
    
         
             
            // 《明日方舟》游戏 (migrated to v2)
         
     | 
| 
       1857 
1836 
     | 
    
         
             
            // router.get('/arknights/news', lazyloadRouteHandler('./routes/arknights/news'));
         
     | 
| 
         @@ -1880,14 +1859,14 @@ router.get('/getitfree/search/:keyword?', lazyloadRouteHandler('./routes/getitfr 
     | 
|
| 
       1880 
1859 
     | 
    
         
             
            router.get('/10000link/news/:category?', lazyloadRouteHandler('./routes/10000link/news'));
         
     | 
| 
       1881 
1860 
     | 
    
         | 
| 
       1882 
1861 
     | 
    
         
             
            // 站酷
         
     | 
| 
       1883 
     | 
    
         
            -
            router.get('/zcool/discover/:query?/:subCate?/:hasVideo?/:city?/:collage?/:recommendLevel?/:sort?', lazyloadRouteHandler('./routes/zcool/discover'));
         
     | 
| 
       1884 
     | 
    
         
            -
            router.get('/zcool/recommend/:query?/:subCate?/:hasVideo?/:city?/:collage?/:recommendLevel?/:sort?', lazyloadRouteHandler('./routes/zcool/discover')); // 兼容老版本
         
     | 
| 
       1885 
     | 
    
         
            -
            router.get('/zcool/top/:type', lazyloadRouteHandler('./routes/zcool/top'));
         
     | 
| 
       1886 
     | 
    
         
            -
            router.get('/zcool/top', lazyloadRouteHandler('./routes/zcool/top')); // 兼容老版本
         
     | 
| 
       1887 
     | 
    
         
            -
            router.get('/zcool/user/:uid', lazyloadRouteHandler('./routes/zcool/user'));
         
     | 
| 
      
 1862 
     | 
    
         
            +
            // router.get('/zcool/discover/:query?/:subCate?/:hasVideo?/:city?/:collage?/:recommendLevel?/:sort?', lazyloadRouteHandler('./routes/zcool/discover'));
         
     | 
| 
      
 1863 
     | 
    
         
            +
            // router.get('/zcool/recommend/:query?/:subCate?/:hasVideo?/:city?/:collage?/:recommendLevel?/:sort?', lazyloadRouteHandler('./routes/zcool/discover')); // 兼容老版本
         
     | 
| 
      
 1864 
     | 
    
         
            +
            // router.get('/zcool/top/:type', lazyloadRouteHandler('./routes/zcool/top'));
         
     | 
| 
      
 1865 
     | 
    
         
            +
            // router.get('/zcool/top', lazyloadRouteHandler('./routes/zcool/top')); // 兼容老版本
         
     | 
| 
      
 1866 
     | 
    
         
            +
            // router.get('/zcool/user/:uid', lazyloadRouteHandler('./routes/zcool/user'));
         
     | 
| 
       1888 
1867 
     | 
    
         | 
| 
       1889 
1868 
     | 
    
         
             
            // 第一财经
         
     | 
| 
       1890 
     | 
    
         
            -
            router.get('/yicai/brief', lazyloadRouteHandler('./routes/yicai/brief.js'));
         
     | 
| 
      
 1869 
     | 
    
         
            +
            // router.get('/yicai/brief', lazyloadRouteHandler('./routes/yicai/brief.js'));
         
     | 
| 
       1891 
1870 
     | 
    
         | 
| 
       1892 
1871 
     | 
    
         
             
            // 一兜糖
         
     | 
| 
       1893 
1872 
     | 
    
         
             
            router.get('/yidoutang/index', lazyloadRouteHandler('./routes/yidoutang/index.js'));
         
     | 
| 
         @@ -1909,16 +1888,16 @@ router.get('/keyakizaka46/news', lazyloadRouteHandler('./routes/keyakizaka46/new 
     | 
|
| 
       1909 
1888 
     | 
    
         
             
            router.get('/hinatazaka46/news', lazyloadRouteHandler('./routes/hinatazaka46/news'));
         
     | 
| 
       1910 
1889 
     | 
    
         
             
            router.get('/keyakizaka46/blog', lazyloadRouteHandler('./routes/keyakizaka46/blog'));
         
     | 
| 
       1911 
1890 
     | 
    
         
             
            router.get('/hinatazaka46/blog', lazyloadRouteHandler('./routes/hinatazaka46/blog'));
         
     | 
| 
       1912 
     | 
    
         
            -
            router.get('/sakurazaka46/blog', lazyloadRouteHandler('./routes/sakurazaka46/blog'));
         
     | 
| 
      
 1891 
     | 
    
         
            +
            // router.get('/sakurazaka46/blog', lazyloadRouteHandler('./routes/sakurazaka46/blog'));
         
     | 
| 
       1913 
1892 
     | 
    
         | 
| 
       1914 
     | 
    
         
            -
            // 酷安
         
     | 
| 
       1915 
     | 
    
         
            -
            router.get('/coolapk/tuwen/:type?', lazyloadRouteHandler('./routes/coolapk/tuwen'));
         
     | 
| 
       1916 
     | 
    
         
            -
            router.get('/coolapk/tuwen-xinxian', lazyloadRouteHandler('./routes/coolapk/tuwen'));
         
     | 
| 
       1917 
     | 
    
         
            -
            router.get('/coolapk/toutiao/:type?', lazyloadRouteHandler('./routes/coolapk/toutiao'));
         
     | 
| 
       1918 
     | 
    
         
            -
            router.get('/coolapk/huati/:tag', lazyloadRouteHandler('./routes/coolapk/huati'));
         
     | 
| 
       1919 
     | 
    
         
            -
            router.get('/coolapk/user/:uid/dynamic', lazyloadRouteHandler('./routes/coolapk/userDynamic'));
         
     | 
| 
       1920 
     | 
    
         
            -
            router.get('/coolapk/dyh/:dyhId', lazyloadRouteHandler('./routes/coolapk/dyh'));
         
     | 
| 
       1921 
     | 
    
         
            -
            router.get('/coolapk/hot/:type?/:period?', lazyloadRouteHandler('./routes/coolapk/hot'));
         
     | 
| 
      
 1893 
     | 
    
         
            +
            // 酷安 migrated to v2
         
     | 
| 
      
 1894 
     | 
    
         
            +
            // router.get('/coolapk/tuwen/:type?', lazyloadRouteHandler('./routes/coolapk/tuwen'));
         
     | 
| 
      
 1895 
     | 
    
         
            +
            // router.get('/coolapk/tuwen-xinxian', lazyloadRouteHandler('./routes/coolapk/tuwen'));
         
     | 
| 
      
 1896 
     | 
    
         
            +
            // router.get('/coolapk/toutiao/:type?', lazyloadRouteHandler('./routes/coolapk/toutiao'));
         
     | 
| 
      
 1897 
     | 
    
         
            +
            // router.get('/coolapk/huati/:tag', lazyloadRouteHandler('./routes/coolapk/huati'));
         
     | 
| 
      
 1898 
     | 
    
         
            +
            // router.get('/coolapk/user/:uid/dynamic', lazyloadRouteHandler('./routes/coolapk/userDynamic'));
         
     | 
| 
      
 1899 
     | 
    
         
            +
            // router.get('/coolapk/dyh/:dyhId', lazyloadRouteHandler('./routes/coolapk/dyh'));
         
     | 
| 
      
 1900 
     | 
    
         
            +
            // router.get('/coolapk/hot/:type?/:period?', lazyloadRouteHandler('./routes/coolapk/hot'));
         
     | 
| 
       1922 
1901 
     | 
    
         | 
| 
       1923 
1902 
     | 
    
         
             
            // 模型网
         
     | 
| 
       1924 
1903 
     | 
    
         
             
            router.get('/moxingnet', lazyloadRouteHandler('./routes/moxingnet'));
         
     | 
| 
         @@ -1937,10 +1916,10 @@ router.get('/socialclub/events/:game?', lazyloadRouteHandler('./routes/socialclu 
     | 
|
| 
       1937 
1916 
     | 
    
         
             
            router.get('/ctfhub/upcoming/:limit?', lazyloadRouteHandler('./routes/ctfhub/upcoming'));
         
     | 
| 
       1938 
1917 
     | 
    
         
             
            router.get('/ctfhub/search/:limit?/:form?/:class?/:title?', lazyloadRouteHandler('./routes/ctfhub/search'));
         
     | 
| 
       1939 
1918 
     | 
    
         | 
| 
       1940 
     | 
    
         
            -
            // 阿里云
         
     | 
| 
       1941 
     | 
    
         
            -
            router.get('/aliyun/database_month', lazyloadRouteHandler('./routes/aliyun/database_month'));
         
     | 
| 
       1942 
     | 
    
         
            -
            router.get('/aliyun/notice/:type?', lazyloadRouteHandler('./routes/aliyun/notice'));
         
     | 
| 
       1943 
     | 
    
         
            -
            router.get('/aliyun/developer/group/:type', lazyloadRouteHandler('./routes/aliyun/developer/group'));
         
     | 
| 
      
 1919 
     | 
    
         
            +
            // 阿里云 migrated to v2
         
     | 
| 
      
 1920 
     | 
    
         
            +
            // router.get('/aliyun/database_month', lazyloadRouteHandler('./routes/aliyun/database_month'));
         
     | 
| 
      
 1921 
     | 
    
         
            +
            // router.get('/aliyun/notice/:type?', lazyloadRouteHandler('./routes/aliyun/notice'));
         
     | 
| 
      
 1922 
     | 
    
         
            +
            // router.get('/aliyun/developer/group/:type', lazyloadRouteHandler('./routes/aliyun/developer/group'));
         
     | 
| 
       1944 
1923 
     | 
    
         | 
| 
       1945 
1924 
     | 
    
         
             
            // 礼物说
         
     | 
| 
       1946 
1925 
     | 
    
         
             
            router.get('/liwushuo/index', lazyloadRouteHandler('./routes/liwushuo/index.js'));
         
     | 
| 
         @@ -1960,13 +1939,13 @@ router.get('/dhl/:id', lazyloadRouteHandler('./routes/dhl/shipment-tracking')); 
     | 
|
| 
       1960 
1939 
     | 
    
         
             
            // Japanpost
         
     | 
| 
       1961 
1940 
     | 
    
         
             
            router.get('/japanpost/track/:reqCode/:locale?', lazyloadRouteHandler('./routes/japanpost/track'));
         
     | 
| 
       1962 
1941 
     | 
    
         | 
| 
       1963 
     | 
    
         
            -
            // 中华人民共和国商务部
         
     | 
| 
       1964 
     | 
    
         
            -
            router.get('/mofcom/article/:suffix', lazyloadRouteHandler('./routes/mofcom/article'));
         
     | 
| 
      
 1942 
     | 
    
         
            +
            // 中华人民共和国商务部 migrated to v2
         
     | 
| 
      
 1943 
     | 
    
         
            +
            // router.get('/mofcom/article/:suffix', lazyloadRouteHandler('./routes/mofcom/article'));
         
     | 
| 
       1965 
1944 
     | 
    
         | 
| 
       1966 
1945 
     | 
    
         
             
            // 品玩
         
     | 
| 
       1967 
     | 
    
         
            -
            router.get('/pingwest/status', lazyloadRouteHandler('./routes/pingwest/status'));
         
     | 
| 
       1968 
     | 
    
         
            -
            router.get('/pingwest/tag/:tag/:type', lazyloadRouteHandler('./routes/pingwest/tag'));
         
     | 
| 
       1969 
     | 
    
         
            -
            router.get('/pingwest/user/:uid/:type?', lazyloadRouteHandler('./routes/pingwest/user'));
         
     | 
| 
      
 1946 
     | 
    
         
            +
            // router.get('/pingwest/status', lazyloadRouteHandler('./routes/pingwest/status'));
         
     | 
| 
      
 1947 
     | 
    
         
            +
            // router.get('/pingwest/tag/:tag/:type/:option?', lazyloadRouteHandler('./routes/pingwest/tag'));
         
     | 
| 
      
 1948 
     | 
    
         
            +
            // router.get('/pingwest/user/:uid/:type?/:option?', lazyloadRouteHandler('./routes/pingwest/user'));
         
     | 
| 
       1970 
1949 
     | 
    
         | 
| 
       1971 
1950 
     | 
    
         
             
            // Hanime
         
     | 
| 
       1972 
1951 
     | 
    
         
             
            router.get('/hanime/video', lazyloadRouteHandler('./routes/hanime/video'));
         
     | 
| 
         @@ -2022,17 +2001,17 @@ router.get('/sans/summit_archive', lazyloadRouteHandler('./routes/sans/summit_ar 
     | 
|
| 
       2022 
2001 
     | 
    
         
             
            router.get('/latexstudio/home', lazyloadRouteHandler('./routes/latexstudio/home'));
         
     | 
| 
       2023 
2002 
     | 
    
         | 
| 
       2024 
2003 
     | 
    
         
             
            // 上证债券信息网 - 可转换公司债券公告
         
     | 
| 
       2025 
     | 
    
         
            -
            router.get('/sse/convert/:query?', lazyloadRouteHandler('./routes/sse/convert'));
         
     | 
| 
       2026 
     | 
    
         
            -
            router.get('/sse/renewal', lazyloadRouteHandler('./routes/sse/renewal'));
         
     | 
| 
       2027 
     | 
    
         
            -
            router.get('/sse/inquire', lazyloadRouteHandler('./routes/sse/inquire'));
         
     | 
| 
      
 2004 
     | 
    
         
            +
            // router.get('/sse/convert/:query?', lazyloadRouteHandler('./routes/sse/convert'));
         
     | 
| 
      
 2005 
     | 
    
         
            +
            // router.get('/sse/renewal', lazyloadRouteHandler('./routes/sse/renewal'));
         
     | 
| 
      
 2006 
     | 
    
         
            +
            // router.get('/sse/inquire', lazyloadRouteHandler('./routes/sse/inquire'));
         
     | 
| 
       2028 
2007 
     | 
    
         | 
| 
       2029 
2008 
     | 
    
         
             
            // 上海证券交易所
         
     | 
| 
       2030 
     | 
    
         
            -
            router.get('/sse/disclosure/:query?', lazyloadRouteHandler('./routes/sse/disclosure'));
         
     | 
| 
      
 2009 
     | 
    
         
            +
            // router.get('/sse/disclosure/:query?', lazyloadRouteHandler('./routes/sse/disclosure'));
         
     | 
| 
       2031 
2010 
     | 
    
         | 
| 
       2032 
2011 
     | 
    
         
             
            // 深圳证券交易所
         
     | 
| 
       2033 
     | 
    
         
            -
            router.get('/szse/notice', lazyloadRouteHandler('./routes/szse/notice'));
         
     | 
| 
       2034 
     | 
    
         
            -
            router.get('/szse/inquire/:type', lazyloadRouteHandler('./routes/szse/inquire'));
         
     | 
| 
       2035 
     | 
    
         
            -
            router.get('/szse/projectdynamic/:type?/:stage?/:status?', lazyloadRouteHandler('./routes/szse/projectdynamic'));
         
     | 
| 
      
 2012 
     | 
    
         
            +
            // router.get('/szse/notice', lazyloadRouteHandler('./routes/szse/notice'));
         
     | 
| 
      
 2013 
     | 
    
         
            +
            // router.get('/szse/inquire/:type', lazyloadRouteHandler('./routes/szse/inquire'));
         
     | 
| 
      
 2014 
     | 
    
         
            +
            // router.get('/szse/projectdynamic/:type?/:stage?/:status?', lazyloadRouteHandler('./routes/szse/projectdynamic'));
         
     | 
| 
       2036 
2015 
     | 
    
         | 
| 
       2037 
2016 
     | 
    
         
             
            // 前端艺术家每日整理&&飞冰早报
         
     | 
| 
       2038 
2017 
     | 
    
         
             
            router.get('/jskou/:type?', lazyloadRouteHandler('./routes/jskou/index'));
         
     | 
| 
         @@ -2051,7 +2030,7 @@ router.get('/network360/jobs', lazyloadRouteHandler('./routes/network360/jobs')) 
     | 
|
| 
       2051 
2030 
     | 
    
         
             
            router.get('/zhilian/:city/:keyword', lazyloadRouteHandler('./routes/zhilian/index'));
         
     | 
| 
       2052 
2031 
     | 
    
         | 
| 
       2053 
2032 
     | 
    
         
             
            // 电鸭社区
         
     | 
| 
       2054 
     | 
    
         
            -
            router.get('/eleduck/jobs', lazyloadRouteHandler('./routes/eleduck/jobs'));
         
     | 
| 
      
 2033 
     | 
    
         
            +
            // router.get('/eleduck/jobs', lazyloadRouteHandler('./routes/eleduck/jobs'));
         
     | 
| 
       2055 
2034 
     | 
    
         | 
| 
       2056 
2035 
     | 
    
         
             
            // 北华航天工业学院 - 新闻
         
     | 
| 
       2057 
2036 
     | 
    
         
             
            router.get('/nciae/news', lazyloadRouteHandler('./routes/universities/nciae/news'));
         
     | 
| 
         @@ -2065,8 +2044,8 @@ router.get('/nciae/xsxx', lazyloadRouteHandler('./routes/universities/nciae/xsxx 
     | 
|
| 
       2065 
2044 
     | 
    
         
             
            // cfan
         
     | 
| 
       2066 
2045 
     | 
    
         
             
            router.get('/cfan/news', lazyloadRouteHandler('./routes/cfan/news'));
         
     | 
| 
       2067 
2046 
     | 
    
         | 
| 
       2068 
     | 
    
         
            -
            // 腾讯企鹅号
         
     | 
| 
       2069 
     | 
    
         
            -
            router.get('/tencent/news/author/:mid', lazyloadRouteHandler('./routes/tencent/news/author'));
         
     | 
| 
      
 2047 
     | 
    
         
            +
            // 腾讯企鹅号 migrated to v2
         
     | 
| 
      
 2048 
     | 
    
         
            +
            // router.get('/tencent/news/author/:mid', lazyloadRouteHandler('./routes/tencent/news/author'));
         
     | 
| 
       2070 
2049 
     | 
    
         | 
| 
       2071 
2050 
     | 
    
         
             
            // 奈菲影视
         
     | 
| 
       2072 
2051 
     | 
    
         
             
            router.get('/nfmovies/:id?', lazyloadRouteHandler('./routes/nfmovies/index'));
         
     | 
| 
         @@ -2100,14 +2079,11 @@ router.get('/cug/gcxy/:type?', lazyloadRouteHandler('./routes/universities/cug/g 
     | 
|
| 
       2100 
2079 
     | 
    
         
             
            // 海猫吧
         
     | 
| 
       2101 
2080 
     | 
    
         
             
            router.get('/haimaoba/:id?', lazyloadRouteHandler('./routes/haimaoba/comics'));
         
     | 
| 
       2102 
2081 
     | 
    
         | 
| 
       2103 
     | 
    
         
            -
            // 路透社
         
     | 
| 
       2104 
     | 
    
         
            -
            router.get('/reuters/channel/:site/:channel', lazyloadRouteHandler('./routes/reuters/channel'));
         
     | 
| 
       2105 
     | 
    
         
            -
             
     | 
| 
       2106 
2082 
     | 
    
         
             
            // 蒲公英
         
     | 
| 
       2107 
2083 
     | 
    
         
             
            router.get('/pgyer/:app?', lazyloadRouteHandler('./routes/pgyer/app'));
         
     | 
| 
       2108 
2084 
     | 
    
         | 
| 
       2109 
2085 
     | 
    
         
             
            // 微博个人时间线
         
     | 
| 
       2110 
     | 
    
         
            -
            router.get('/weibo/timeline/:uid/:feature?/:routeParams?', lazyloadRouteHandler('./routes/weibo/timeline'));
         
     | 
| 
      
 2086 
     | 
    
         
            +
            // router.get('/weibo/timeline/:uid/:feature?/:routeParams?', lazyloadRouteHandler('./routes/weibo/timeline'));
         
     | 
| 
       2111 
2087 
     | 
    
         | 
| 
       2112 
2088 
     | 
    
         
             
            // TAPTAP migrated to v2
         
     | 
| 
       2113 
2089 
     | 
    
         
             
            // router.get('/taptap/topic/:id/:label?', lazyloadRouteHandler('./routes/taptap/topic'));
         
     | 
| 
         @@ -2131,11 +2107,11 @@ router.get('/zhanqi/room/:id', lazyloadRouteHandler('./routes/zhanqi/room')); 
     | 
|
| 
       2131 
2107 
     | 
    
         
             
            // 酒云网
         
     | 
| 
       2132 
2108 
     | 
    
         
             
            router.get('/wineyun/:category', lazyloadRouteHandler('./routes/wineyun'));
         
     | 
| 
       2133 
2109 
     | 
    
         | 
| 
       2134 
     | 
    
         
            -
            // 小红书
         
     | 
| 
       2135 
     | 
    
         
            -
            router.get('/xiaohongshu/user/:user_id/:category', lazyloadRouteHandler('./routes/xiaohongshu/user'));
         
     | 
| 
       2136 
     | 
    
         
            -
            router.get('/xiaohongshu/board/:board_id', lazyloadRouteHandler('./routes/xiaohongshu/board'));
         
     | 
| 
      
 2110 
     | 
    
         
            +
            // 小红书 migrated to v2
         
     | 
| 
      
 2111 
     | 
    
         
            +
            // router.get('/xiaohongshu/user/:user_id/:category', lazyloadRouteHandler('./routes/xiaohongshu/user'));
         
     | 
| 
      
 2112 
     | 
    
         
            +
            // router.get('/xiaohongshu/board/:board_id', lazyloadRouteHandler('./routes/xiaohongshu/board'));
         
     | 
| 
       2137 
2113 
     | 
    
         | 
| 
       2138 
     | 
    
         
            -
            // 每经网 
     | 
| 
      
 2114 
     | 
    
         
            +
            // 每经网
         
     | 
| 
       2139 
2115 
     | 
    
         
             
            // router.get('/nbd/daily', lazyloadRouteHandler('./routes/nbd/article'));
         
     | 
| 
       2140 
2116 
     | 
    
         
             
            // router.get('/nbd/:id?', lazyloadRouteHandler('./routes/nbd/index'));
         
     | 
| 
       2141 
2117 
     | 
    
         | 
| 
         @@ -2143,7 +2119,7 @@ router.get('/xiaohongshu/board/:board_id', lazyloadRouteHandler('./routes/xiaoho 
     | 
|
| 
       2143 
2119 
     | 
    
         
             
            router.get('/kzfeed/topic/:id', lazyloadRouteHandler('./routes/kzfeed/topic'));
         
     | 
| 
       2144 
2120 
     | 
    
         | 
| 
       2145 
2121 
     | 
    
         
             
            // 腾讯新闻较真查证平台
         
     | 
| 
       2146 
     | 
    
         
            -
            router.get('/factcheck', lazyloadRouteHandler('./routes/tencent/factcheck'));
         
     | 
| 
      
 2122 
     | 
    
         
            +
            // router.get('/factcheck', lazyloadRouteHandler('./routes/tencent/factcheck'));
         
     | 
| 
       2147 
2123 
     | 
    
         | 
| 
       2148 
2124 
     | 
    
         
             
            // X-MOL化学资讯平台
         
     | 
| 
       2149 
2125 
     | 
    
         
             
            router.get('/x-mol/news/:tag?', lazyloadRouteHandler('./routes/x-mol/news.js'));
         
     | 
| 
         @@ -2180,7 +2156,7 @@ router.get('/kaggle/user/:user', lazyloadRouteHandler('./routes/kaggle/user')); 
     | 
|
| 
       2180 
2156 
     | 
    
         
             
            // router.get('/pubmed/trending', lazyloadRouteHandler('./routes/pubmed/trending'));
         
     | 
| 
       2181 
2157 
     | 
    
         | 
| 
       2182 
2158 
     | 
    
         
             
            // 领科 (linkresearcher.com)
         
     | 
| 
       2183 
     | 
    
         
            -
            router.get('/linkresearcher/:params', lazyloadRouteHandler('./routes/linkresearcher/index'));
         
     | 
| 
      
 2159 
     | 
    
         
            +
            // router.get('/linkresearcher/:params', lazyloadRouteHandler('./routes/linkresearcher/index'));
         
     | 
| 
       2184 
2160 
     | 
    
         | 
| 
       2185 
2161 
     | 
    
         
             
            // eLife [Sci Journal]
         
     | 
| 
       2186 
2162 
     | 
    
         
             
            router.get('/elife/:tid', lazyloadRouteHandler('./routes/elife/index'));
         
     | 
| 
         @@ -2189,27 +2165,27 @@ router.get('/elife/:tid', lazyloadRouteHandler('./routes/elife/index')); 
     | 
|
| 
       2189 
2165 
     | 
    
         
             
            router.get('/ieee/author/:aid/:sortType/:count?', lazyloadRouteHandler('./routes/ieee/author'));
         
     | 
| 
       2190 
2166 
     | 
    
         | 
| 
       2191 
2167 
     | 
    
         
             
            // PNAS [Sci Journal]
         
     | 
| 
       2192 
     | 
    
         
            -
            router.get('/pnas/:topic?', lazyloadRouteHandler('./routes/pnas/index'));
         
     | 
| 
      
 2168 
     | 
    
         
            +
            // router.get('/pnas/:topic?', lazyloadRouteHandler('./routes/pnas/index'));
         
     | 
| 
       2193 
2169 
     | 
    
         | 
| 
       2194 
2170 
     | 
    
         
             
            // cell [Sci Journal]
         
     | 
| 
       2195 
2171 
     | 
    
         
             
            router.get('/cell/cell/:category', lazyloadRouteHandler('./routes/cell/cell/index'));
         
     | 
| 
       2196 
2172 
     | 
    
         
             
            router.get('/cell/cover', lazyloadRouteHandler('./routes/cell/cover'));
         
     | 
| 
       2197 
2173 
     | 
    
         | 
| 
       2198 
     | 
    
         
            -
            // nature + nature 子刊 [Sci Journal]
         
     | 
| 
       2199 
     | 
    
         
            -
            router.get('/nature/research/:journal?', lazyloadRouteHandler('./routes/nature/research'));
         
     | 
| 
       2200 
     | 
    
         
            -
            router.get('/nature/news-and-comment/:journal?', lazyloadRouteHandler('./routes/nature/news-and-comment'));
         
     | 
| 
       2201 
     | 
    
         
            -
            router.get('/nature/cover', lazyloadRouteHandler('./routes/nature/cover'));
         
     | 
| 
       2202 
     | 
    
         
            -
            router.get('/nature/news', lazyloadRouteHandler('./routes/nature/news'));
         
     | 
| 
       2203 
     | 
    
         
            -
            router.get('/nature/highlight', lazyloadRouteHandler('./routes/nature/highlight'));
         
     | 
| 
      
 2174 
     | 
    
         
            +
            // nature + nature 子刊 [Sci Journal] migrated to v2
         
     | 
| 
      
 2175 
     | 
    
         
            +
            // router.get('/nature/research/:journal?', lazyloadRouteHandler('./routes/nature/research'));
         
     | 
| 
      
 2176 
     | 
    
         
            +
            // router.get('/nature/news-and-comment/:journal?', lazyloadRouteHandler('./routes/nature/news-and-comment'));
         
     | 
| 
      
 2177 
     | 
    
         
            +
            // router.get('/nature/cover', lazyloadRouteHandler('./routes/nature/cover'));
         
     | 
| 
      
 2178 
     | 
    
         
            +
            // router.get('/nature/news', lazyloadRouteHandler('./routes/nature/news'));
         
     | 
| 
      
 2179 
     | 
    
         
            +
            // router.get('/nature/highlight/:year?', lazyloadRouteHandler('./routes/nature/highlight'));
         
     | 
| 
       2204 
2180 
     | 
    
         | 
| 
       2205 
2181 
     | 
    
         
             
            // science [Sci Journal]
         
     | 
| 
       2206 
     | 
    
         
            -
            router.get('/sciencemag/current/:journal?', lazyloadRouteHandler('./routes/sciencemag/current'));
         
     | 
| 
       2207 
     | 
    
         
            -
            router.get('/sciencemag/cover', lazyloadRouteHandler('./routes/sciencemag/cover'));
         
     | 
| 
       2208 
     | 
    
         
            -
            router.get('/sciencemag/early/science', lazyloadRouteHandler('./routes/sciencemag/early'));
         
     | 
| 
      
 2182 
     | 
    
         
            +
            // router.get('/sciencemag/current/:journal?', lazyloadRouteHandler('./routes/sciencemag/current'));
         
     | 
| 
      
 2183 
     | 
    
         
            +
            // router.get('/sciencemag/cover', lazyloadRouteHandler('./routes/sciencemag/cover'));
         
     | 
| 
      
 2184 
     | 
    
         
            +
            // router.get('/sciencemag/early/science', lazyloadRouteHandler('./routes/sciencemag/early'));
         
     | 
| 
       2209 
2185 
     | 
    
         | 
| 
       2210 
2186 
     | 
    
         
             
            // dlsite
         
     | 
| 
       2211 
     | 
    
         
            -
            router.get('/dlsite/new/:type', lazyloadRouteHandler('./routes/dlsite/new'));
         
     | 
| 
       2212 
     | 
    
         
            -
            router.get('/dlsite/campaign/:type/:free?', lazyloadRouteHandler('./routes/dlsite/campaign'));
         
     | 
| 
      
 2187 
     | 
    
         
            +
            // router.get('/dlsite/new/:type', lazyloadRouteHandler('./routes/dlsite/new'));
         
     | 
| 
      
 2188 
     | 
    
         
            +
            // router.get('/dlsite/campaign/:type/:free?', lazyloadRouteHandler('./routes/dlsite/campaign'));
         
     | 
| 
       2213 
2189 
     | 
    
         | 
| 
       2214 
2190 
     | 
    
         
             
            // mcbbs
         
     | 
| 
       2215 
2191 
     | 
    
         
             
            router.get('/mcbbs/forum/:type', lazyloadRouteHandler('./routes/mcbbs/forum'));
         
     | 
| 
         @@ -2219,11 +2195,11 @@ router.get('/mcbbs/post/:tid/:authorid?', lazyloadRouteHandler('./routes/mcbbs/p 
     | 
|
| 
       2219 
2195 
     | 
    
         
             
            router.get('/pocket/trending', lazyloadRouteHandler('./routes/pocket/trending'));
         
     | 
| 
       2220 
2196 
     | 
    
         | 
| 
       2221 
2197 
     | 
    
         
             
            // HK01
         
     | 
| 
       2222 
     | 
    
         
            -
            router.get('/hk01/zone/:id', lazyloadRouteHandler('./routes/hk01/zone'));
         
     | 
| 
       2223 
     | 
    
         
            -
            router.get('/hk01/channel/:id', lazyloadRouteHandler('./routes/hk01/channel'));
         
     | 
| 
       2224 
     | 
    
         
            -
            router.get('/hk01/issue/:id', lazyloadRouteHandler('./routes/hk01/issue'));
         
     | 
| 
       2225 
     | 
    
         
            -
            router.get('/hk01/tag/:id', lazyloadRouteHandler('./routes/hk01/tag'));
         
     | 
| 
       2226 
     | 
    
         
            -
            router.get('/hk01/hot', lazyloadRouteHandler('./routes/hk01/hot'));
         
     | 
| 
      
 2198 
     | 
    
         
            +
            // router.get('/hk01/zone/:id', lazyloadRouteHandler('./routes/hk01/zone'));
         
     | 
| 
      
 2199 
     | 
    
         
            +
            // router.get('/hk01/channel/:id', lazyloadRouteHandler('./routes/hk01/channel'));
         
     | 
| 
      
 2200 
     | 
    
         
            +
            // router.get('/hk01/issue/:id', lazyloadRouteHandler('./routes/hk01/issue'));
         
     | 
| 
      
 2201 
     | 
    
         
            +
            // router.get('/hk01/tag/:id', lazyloadRouteHandler('./routes/hk01/tag'));
         
     | 
| 
      
 2202 
     | 
    
         
            +
            // router.get('/hk01/hot', lazyloadRouteHandler('./routes/hk01/hot'));
         
     | 
| 
       2227 
2203 
     | 
    
         | 
| 
       2228 
2204 
     | 
    
         
             
            // 码农周刊
         
     | 
| 
       2229 
2205 
     | 
    
         
             
            router.get('/manong-weekly', lazyloadRouteHandler('./routes/manong-weekly/issues'));
         
     | 
| 
         @@ -2244,7 +2220,7 @@ router.get('/gov/cnca/hydt', lazyloadRouteHandler('./routes/gov/cnca/hydt')); 
     | 
|
| 
       2244 
2220 
     | 
    
         
             
            router.get('/gov/cnca/zxtz', lazyloadRouteHandler('./routes/gov/cnca/zxtz'));
         
     | 
| 
       2245 
2221 
     | 
    
         | 
| 
       2246 
2222 
     | 
    
         
             
            // clickme
         
     | 
| 
       2247 
     | 
    
         
            -
            router.get('/clickme/:site/:grouping/:name', lazyloadRouteHandler('./routes/clickme'));
         
     | 
| 
      
 2223 
     | 
    
         
            +
            // router.get('/clickme/:site/:grouping/:name', lazyloadRouteHandler('./routes/clickme'));
         
     | 
| 
       2248 
2224 
     | 
    
         | 
| 
       2249 
2225 
     | 
    
         
             
            // 文汇报
         
     | 
| 
       2250 
2226 
     | 
    
         
             
            router.get('/whb/:category', lazyloadRouteHandler('./routes/whb/zhuzhan'));
         
     | 
| 
         @@ -2278,16 +2254,17 @@ router.get('/remote-work/:caty?', lazyloadRouteHandler('./routes/remote-work/ind 
     | 
|
| 
       2278 
2254 
     | 
    
         
             
            router.get('/chinatimes/:caty', lazyloadRouteHandler('./routes/chinatimes/index'));
         
     | 
| 
       2279 
2255 
     | 
    
         | 
| 
       2280 
2256 
     | 
    
         
             
            // TransferWise
         
     | 
| 
       2281 
     | 
    
         
            -
            router.get('/transferwise/pair/:source/:target', lazyloadRouteHandler('./routes/transferwise/pair'));
         
     | 
| 
      
 2257 
     | 
    
         
            +
            // router.get('/transferwise/pair/:source/:target', lazyloadRouteHandler('./routes/transferwise/pair'));
         
     | 
| 
       2282 
2258 
     | 
    
         | 
| 
       2283 
2259 
     | 
    
         
             
            // chocolatey
         
     | 
| 
       2284 
2260 
     | 
    
         
             
            router.get('/chocolatey/software/:name?', lazyloadRouteHandler('./routes/chocolatey/software'));
         
     | 
| 
       2285 
2261 
     | 
    
         | 
| 
       2286 
     | 
    
         
            -
            // Nyaa
         
     | 
| 
       2287 
     | 
    
         
            -
            router.get('/nyaa/search/:query?', lazyloadRouteHandler('./routes/nyaa/search'));
         
     | 
| 
      
 2262 
     | 
    
         
            +
            // Nyaa migrated to v2
         
     | 
| 
      
 2263 
     | 
    
         
            +
            // router.get('/nyaa/search/:query?', lazyloadRouteHandler('./routes/nyaa/search'));
         
     | 
| 
       2288 
2264 
     | 
    
         | 
| 
       2289 
     | 
    
         
            -
            // 片源网
         
     | 
| 
       2290 
     | 
    
         
            -
            router.get('/pianyuan/:media?', lazyloadRouteHandler('./routes/pianyuan/app'));
         
     | 
| 
      
 2265 
     | 
    
         
            +
            // 片源网 migrated to v2
         
     | 
| 
      
 2266 
     | 
    
         
            +
            // router.get('/pianyuan/index/:media?', lazyloadRouteHandler('./routes/pianyuan/app'));
         
     | 
| 
      
 2267 
     | 
    
         
            +
            // router.get('/pianyuan/indexers/pianyuan/results/search/api', lazyloadRouteHandler('./routes/pianyuan/search'));
         
     | 
| 
       2291 
2268 
     | 
    
         | 
| 
       2292 
2269 
     | 
    
         
             
            // 巴哈姆特
         
     | 
| 
       2293 
2270 
     | 
    
         
             
            router.get('/bahamut/creation/:author/:category?', lazyloadRouteHandler('./routes/bahamut/creation'));
         
     | 
| 
         @@ -2300,8 +2277,8 @@ router.get('/centbrowser/history', lazyloadRouteHandler('./routes/centbrowser/hi 
     | 
|
| 
       2300 
2277 
     | 
    
         
             
            router.get('/755/user/:username', lazyloadRouteHandler('./routes/755/user'));
         
     | 
| 
       2301 
2278 
     | 
    
         | 
| 
       2302 
2279 
     | 
    
         
             
            // IKEA
         
     | 
| 
       2303 
     | 
    
         
            -
            router.get('/ikea/uk/new', lazyloadRouteHandler('./routes/ikea/uk/new'));
         
     | 
| 
       2304 
     | 
    
         
            -
            router.get('/ikea/uk/offer', lazyloadRouteHandler('./routes/ikea/uk/offer'));
         
     | 
| 
      
 2280 
     | 
    
         
            +
            // router.get('/ikea/uk/new', lazyloadRouteHandler('./routes/ikea/uk/new'));
         
     | 
| 
      
 2281 
     | 
    
         
            +
            // router.get('/ikea/uk/offer', lazyloadRouteHandler('./routes/ikea/uk/offer'));
         
     | 
| 
       2305 
2282 
     | 
    
         | 
| 
       2306 
2283 
     | 
    
         
             
            // Mastodon
         
     | 
| 
       2307 
2284 
     | 
    
         
             
            router.get('/mastodon/timeline/:site/:only_media?', lazyloadRouteHandler('./routes/mastodon/timeline_local'));
         
     | 
| 
         @@ -2335,7 +2312,7 @@ router.get('/chrome/webstore/extensions/:id', lazyloadRouteHandler('./routes/chr 
     | 
|
| 
       2335 
2312 
     | 
    
         
             
            router.get('/rthk-news/:lang/:category', lazyloadRouteHandler('./routes/rthk-news/index'));
         
     | 
| 
       2336 
2313 
     | 
    
         | 
| 
       2337 
2314 
     | 
    
         
             
            // yahoo
         
     | 
| 
       2338 
     | 
    
         
            -
            router.get('/yahoo-news/:region/:category?', lazyloadRouteHandler('./routes/yahoo-news/index'));
         
     | 
| 
      
 2315 
     | 
    
         
            +
            // router.get('/yahoo-news/:region/:category?', lazyloadRouteHandler('./routes/yahoo-news/index'));
         
     | 
| 
       2339 
2316 
     | 
    
         | 
| 
       2340 
2317 
     | 
    
         
             
            // Yahoo!テレビ
         
     | 
| 
       2341 
2318 
     | 
    
         
             
            router.get('/yahoo-jp-tv/:query', lazyloadRouteHandler('./routes/yahoo-jp-tv/index'));
         
     | 
| 
         @@ -2344,7 +2321,7 @@ router.get('/yahoo-jp-tv/:query', lazyloadRouteHandler('./routes/yahoo-jp-tv/ind 
     | 
|
| 
       2344 
2321 
     | 
    
         
             
            router.get('/yahoo-author/:author', lazyloadRouteHandler('./routes/yahoo-author/index'));
         
     | 
| 
       2345 
2322 
     | 
    
         | 
| 
       2346 
2323 
     | 
    
         
             
            // 白鲸出海
         
     | 
| 
       2347 
     | 
    
         
            -
            router.get('/baijing', lazyloadRouteHandler('./routes/baijing'));
         
     | 
| 
      
 2324 
     | 
    
         
            +
            // router.get('/baijing', lazyloadRouteHandler('./routes/baijing'));
         
     | 
| 
       2348 
2325 
     | 
    
         | 
| 
       2349 
2326 
     | 
    
         
             
            // 低端影视
         
     | 
| 
       2350 
2327 
     | 
    
         
             
            router.get('/ddrk/update/:name/:season?', lazyloadRouteHandler('./routes/ddrk/index'));
         
     | 
| 
         @@ -2381,7 +2358,7 @@ router.get('/xinquji/today/internal', lazyloadRouteHandler('./routes/xinquji/int 
     | 
|
| 
       2381 
2358 
     | 
    
         
             
            router.get('/gbcc/trust', lazyloadRouteHandler('./routes/gbcc/trust'));
         
     | 
| 
       2382 
2359 
     | 
    
         | 
| 
       2383 
2360 
     | 
    
         
             
            // Associated Press
         
     | 
| 
       2384 
     | 
    
         
            -
            router.get('/apnews/topics/:topic', lazyloadRouteHandler('./routes/apnews/topics'));
         
     | 
| 
      
 2361 
     | 
    
         
            +
            // router.get('/apnews/topics/:topic', lazyloadRouteHandler('./routes/apnews/topics'));
         
     | 
| 
       2385 
2362 
     | 
    
         | 
| 
       2386 
2363 
     | 
    
         
             
            // CBC
         
     | 
| 
       2387 
2364 
     | 
    
         
             
            router.get('/cbc/topics/:topic?', lazyloadRouteHandler('./routes/cbc/topics'));
         
     | 
| 
         @@ -2402,7 +2379,7 @@ router.get('/ifnews/:cid', lazyloadRouteHandler('./routes/ifnews/column')); 
     | 
|
| 
       2402 
2379 
     | 
    
         
             
            router.get('/scala/blog/:part?', lazyloadRouteHandler('./routes/scala-blog/scala-blog'));
         
     | 
| 
       2403 
2380 
     | 
    
         | 
| 
       2404 
2381 
     | 
    
         
             
            // Minecraft Java版游戏更新
         
     | 
| 
       2405 
     | 
    
         
            -
            router.get('/minecraft/version', lazyloadRouteHandler('./routes/minecraft/version'));
         
     | 
| 
      
 2382 
     | 
    
         
            +
            // router.get('/minecraft/version', lazyloadRouteHandler('./routes/minecraft/version'));
         
     | 
| 
       2406 
2383 
     | 
    
         | 
| 
       2407 
2384 
     | 
    
         
             
            // 微信更新日志
         
     | 
| 
       2408 
2385 
     | 
    
         
             
            router.get('/weixin/miniprogram/release', lazyloadRouteHandler('./routes/tencent/wechat/miniprogram/framework')); // 基础库更新日志
         
     | 
| 
         @@ -2425,8 +2402,8 @@ router.get('/coronavirus/yahoo-japan/:tdfk?', lazyloadRouteHandler('./routes/cor 
     | 
|
| 
       2425 
2402 
     | 
    
         
             
            router.get('/njfu/jwc/:category?', lazyloadRouteHandler('./routes/universities/njfu/jwc'));
         
     | 
| 
       2426 
2403 
     | 
    
         | 
| 
       2427 
2404 
     | 
    
         
             
            // 日本経済新聞
         
     | 
| 
       2428 
     | 
    
         
            -
            router.get('/nikkei/index', lazyloadRouteHandler('./routes/nikkei/index'));
         
     | 
| 
       2429 
     | 
    
         
            -
            router.get('/nikkei/:category/:article_type?', lazyloadRouteHandler('./routes/nikkei/news'));
         
     | 
| 
      
 2405 
     | 
    
         
            +
            // router.get('/nikkei/index', lazyloadRouteHandler('./routes/nikkei/index'));
         
     | 
| 
      
 2406 
     | 
    
         
            +
            // router.get('/nikkei/:category/:article_type?', lazyloadRouteHandler('./routes/nikkei/news'));
         
     | 
| 
       2430 
2407 
     | 
    
         | 
| 
       2431 
2408 
     | 
    
         
             
            // MQube
         
     | 
| 
       2432 
2409 
     | 
    
         
             
            router.get('/mqube/user/:user', lazyloadRouteHandler('./routes/mqube/user'));
         
     | 
| 
         @@ -2475,7 +2452,7 @@ router.get('/cowlevel/element/:id', lazyloadRouteHandler('./routes/cowlevel/elem 
     | 
|
| 
       2475 
2452 
     | 
    
         
             
            // router.get('/2048/bbs/:fid', lazyloadRouteHandler('./routes/2048/bbs'));
         
     | 
| 
       2476 
2453 
     | 
    
         | 
| 
       2477 
2454 
     | 
    
         
             
            // Google News
         
     | 
| 
       2478 
     | 
    
         
            -
            router.get('/google/news/:category/:locale', lazyloadRouteHandler('./routes/google/news'));
         
     | 
| 
      
 2455 
     | 
    
         
            +
            // router.get('/google/news/:category/:locale', lazyloadRouteHandler('./routes/google/news'));
         
     | 
| 
       2479 
2456 
     | 
    
         | 
| 
       2480 
2457 
     | 
    
         
             
            // 虛詞
         
     | 
| 
       2481 
2458 
     | 
    
         
             
            router.get('/p-articles/section/:section', lazyloadRouteHandler('./routes/p-articles/section'));
         
     | 
| 
         @@ -2483,18 +2460,18 @@ router.get('/p-articles/contributors/:author', lazyloadRouteHandler('./routes/p- 
     | 
|
| 
       2483 
2460 
     | 
    
         | 
| 
       2484 
2461 
     | 
    
         
             
            // finviz
         
     | 
| 
       2485 
2462 
     | 
    
         | 
| 
       2486 
     | 
    
         
            -
            router.get('/finviz/news/:ticker', lazyloadRouteHandler('./routes/finviz/news'));
         
     | 
| 
      
 2463 
     | 
    
         
            +
            // router.get('/finviz/news/:ticker', lazyloadRouteHandler('./routes/finviz/news'));
         
     | 
| 
       2487 
2464 
     | 
    
         | 
| 
       2488 
2465 
     | 
    
         
             
            // 好好住
         
     | 
| 
       2489 
2466 
     | 
    
         
             
            router.get('/haohaozhu/whole-house/:keyword?', lazyloadRouteHandler('./routes/haohaozhu/whole-house'));
         
     | 
| 
       2490 
2467 
     | 
    
         
             
            router.get('/haohaozhu/discover/:keyword?', lazyloadRouteHandler('./routes/haohaozhu/discover'));
         
     | 
| 
       2491 
2468 
     | 
    
         | 
| 
       2492 
2469 
     | 
    
         
             
            // 东北大学
         
     | 
| 
       2493 
     | 
    
         
            -
            router.get('/neu/news/:type', lazyloadRouteHandler('./routes/universities/neu/news'));
         
     | 
| 
      
 2470 
     | 
    
         
            +
            // router.get('/neu/news/:type', lazyloadRouteHandler('./routes/universities/neu/news'));
         
     | 
| 
       2494 
2471 
     | 
    
         | 
| 
       2495 
2472 
     | 
    
         
             
            // 快递100
         
     | 
| 
       2496 
     | 
    
         
            -
            router.get('/kuaidi100/track/:number/:id/:phone?', lazyloadRouteHandler('./routes/kuaidi100/index'));
         
     | 
| 
       2497 
     | 
    
         
            -
            router.get('/kuaidi100/company', lazyloadRouteHandler('./routes/kuaidi100/supported_company'));
         
     | 
| 
      
 2473 
     | 
    
         
            +
            // router.get('/kuaidi100/track/:number/:id/:phone?', lazyloadRouteHandler('./routes/kuaidi100/index'));
         
     | 
| 
      
 2474 
     | 
    
         
            +
            // router.get('/kuaidi100/company', lazyloadRouteHandler('./routes/kuaidi100/supported_company'));
         
     | 
| 
       2498 
2475 
     | 
    
         | 
| 
       2499 
2476 
     | 
    
         
             
            // 稻草人书屋
         
     | 
| 
       2500 
2477 
     | 
    
         
             
            router.get('/dcrsw/:name/:count?', lazyloadRouteHandler('./routes/novel/dcrsw'));
         
     | 
| 
         @@ -2509,11 +2486,11 @@ router.get('/wolley/user/:id', lazyloadRouteHandler('./routes/wolley/user')); 
     | 
|
| 
       2509 
2486 
     | 
    
         
             
            router.get('/wolley/host/:host', lazyloadRouteHandler('./routes/wolley/host'));
         
     | 
| 
       2510 
2487 
     | 
    
         | 
| 
       2511 
2488 
     | 
    
         
             
            // 西安交大
         
     | 
| 
       2512 
     | 
    
         
            -
            router.get('/xjtu/gs/tzgg', lazyloadRouteHandler('./routes/universities/xjtu/gs/tzgg'));
         
     | 
| 
       2513 
     | 
    
         
            -
            router.get('/xjtu/dean/:subpath+', lazyloadRouteHandler('./routes/universities/xjtu/dean'));
         
     | 
| 
       2514 
     | 
    
         
            -
            router.get('/xjtu/international/:subpath+', lazyloadRouteHandler('./routes/universities/xjtu/international'));
         
     | 
| 
       2515 
     | 
    
         
            -
            router.get('/xjtu/job/:subpath?', lazyloadRouteHandler('./routes/universities/xjtu/job'));
         
     | 
| 
       2516 
     | 
    
         
            -
            router.get('/xjtu/ee/:id?', lazyloadRouteHandler('./routes/universities/xjtu/ee'));
         
     | 
| 
      
 2489 
     | 
    
         
            +
            // router.get('/xjtu/gs/tzgg', lazyloadRouteHandler('./routes/universities/xjtu/gs/tzgg'));
         
     | 
| 
      
 2490 
     | 
    
         
            +
            // router.get('/xjtu/dean/:subpath+', lazyloadRouteHandler('./routes/universities/xjtu/dean'));
         
     | 
| 
      
 2491 
     | 
    
         
            +
            // router.get('/xjtu/international/:subpath+', lazyloadRouteHandler('./routes/universities/xjtu/international'));
         
     | 
| 
      
 2492 
     | 
    
         
            +
            // router.get('/xjtu/job/:subpath?', lazyloadRouteHandler('./routes/universities/xjtu/job'));
         
     | 
| 
      
 2493 
     | 
    
         
            +
            // router.get('/xjtu/ee/:id?', lazyloadRouteHandler('./routes/universities/xjtu/ee'));
         
     | 
| 
       2517 
2494 
     | 
    
         | 
| 
       2518 
2495 
     | 
    
         
             
            // booksource
         
     | 
| 
       2519 
2496 
     | 
    
         
             
            router.get('/booksource', lazyloadRouteHandler('./routes/booksource/index'));
         
     | 
| 
         @@ -2544,32 +2521,32 @@ router.get('/guat/news/:type?', lazyloadRouteHandler('./routes/guat/news')); 
     | 
|
| 
       2544 
2521 
     | 
    
         
             
            // router.get('/neea/:type', lazyloadRouteHandler('./routes/neea'));
         
     | 
| 
       2545 
2522 
     | 
    
         | 
| 
       2546 
2523 
     | 
    
         
             
            // 中国农业大学
         
     | 
| 
       2547 
     | 
    
         
            -
            router.get('/cauyjs', lazyloadRouteHandler('./routes/universities/cauyjs/cauyjs'));
         
     | 
| 
      
 2524 
     | 
    
         
            +
            // router.get('/cauyjs', lazyloadRouteHandler('./routes/universities/cauyjs/cauyjs'));
         
     | 
| 
       2548 
2525 
     | 
    
         | 
| 
       2549 
2526 
     | 
    
         
             
            // 南方科技大学
         
     | 
| 
       2550 
     | 
    
         
            -
            router.get('/sustyjs', lazyloadRouteHandler('./routes/universities/sustyjs/sustyjs'));
         
     | 
| 
       2551 
     | 
    
         
            -
            router.get('/sustech/newshub-zh', lazyloadRouteHandler('./routes/universities/sustech/newshub-zh'));
         
     | 
| 
       2552 
     | 
    
         
            -
            router.get('/sustech/bidding', lazyloadRouteHandler('./routes/universities/sustech/bidding'));
         
     | 
| 
      
 2527 
     | 
    
         
            +
            // router.get('/sustyjs', lazyloadRouteHandler('./routes/universities/sustyjs/sustyjs'));
         
     | 
| 
      
 2528 
     | 
    
         
            +
            // router.get('/sustech/newshub-zh', lazyloadRouteHandler('./routes/universities/sustech/newshub-zh'));
         
     | 
| 
      
 2529 
     | 
    
         
            +
            // router.get('/sustech/bidding', lazyloadRouteHandler('./routes/universities/sustech/bidding'));
         
     | 
| 
       2553 
2530 
     | 
    
         | 
| 
       2554 
2531 
     | 
    
         
             
            // 广州航海学院
         
     | 
| 
       2555 
2532 
     | 
    
         
             
            router.get('/gzmtu/jwc', lazyloadRouteHandler('./routes/universities/gzmtu/jwc'));
         
     | 
| 
       2556 
2533 
     | 
    
         
             
            router.get('/gzmtu/tsg', lazyloadRouteHandler('./routes/universities/gzmtu/tsg'));
         
     | 
| 
       2557 
2534 
     | 
    
         | 
| 
       2558 
2535 
     | 
    
         
             
            // 广州大学
         
     | 
| 
       2559 
     | 
    
         
            -
            router.get('/gzyjs', lazyloadRouteHandler('./routes/universities/gzyjs/gzyjs'));
         
     | 
| 
      
 2536 
     | 
    
         
            +
            // router.get('/gzyjs', lazyloadRouteHandler('./routes/universities/gzyjs/gzyjs'));
         
     | 
| 
       2560 
2537 
     | 
    
         | 
| 
       2561 
2538 
     | 
    
         
             
            // 暨南大学
         
     | 
| 
       2562 
2539 
     | 
    
         
             
            router.get('/jnu/xysx/:type', lazyloadRouteHandler('./routes/universities/jnu/xysx/index'));
         
     | 
| 
       2563 
2540 
     | 
    
         
             
            router.get('/jnu/yw/:type?', lazyloadRouteHandler('./routes/universities/jnu/yw/index'));
         
     | 
| 
       2564 
2541 
     | 
    
         | 
| 
       2565 
2542 
     | 
    
         
             
            // 深圳大学
         
     | 
| 
       2566 
     | 
    
         
            -
            router.get('/szuyjs', lazyloadRouteHandler('./routes/universities/szuyjs/szuyjs'));
         
     | 
| 
      
 2543 
     | 
    
         
            +
            // router.get('/szuyjs', lazyloadRouteHandler('./routes/universities/szuyjs/szuyjs'));
         
     | 
| 
       2567 
2544 
     | 
    
         | 
| 
       2568 
2545 
     | 
    
         
             
            // 中国传媒大学
         
     | 
| 
       2569 
     | 
    
         
            -
            router.get('/cucyjs', lazyloadRouteHandler('./routes/universities/cucyjs/cucyjs'));
         
     | 
| 
      
 2546 
     | 
    
         
            +
            // router.get('/cucyjs', lazyloadRouteHandler('./routes/universities/cucyjs/cucyjs'));
         
     | 
| 
       2570 
2547 
     | 
    
         | 
| 
       2571 
2548 
     | 
    
         
             
            // 中国农业大学信电学院
         
     | 
| 
       2572 
     | 
    
         
            -
            router.get('/cauele', lazyloadRouteHandler('./routes/universities/cauyjs/cauyjs'));
         
     | 
| 
      
 2549 
     | 
    
         
            +
            // router.get('/cauele', lazyloadRouteHandler('./routes/universities/cauyjs/cauyjs'));
         
     | 
| 
       2573 
2550 
     | 
    
         | 
| 
       2574 
2551 
     | 
    
         
             
            // moxingfans
         
     | 
| 
       2575 
2552 
     | 
    
         
             
            router.get('/moxingfans', lazyloadRouteHandler('./routes/moxingfans'));
         
     | 
| 
         @@ -2578,43 +2555,43 @@ router.get('/moxingfans', lazyloadRouteHandler('./routes/moxingfans')); 
     | 
|
| 
       2578 
2555 
     | 
    
         
             
            router.get('/chiphell/forum/:forumId?', lazyloadRouteHandler('./routes/chiphell/forum'));
         
     | 
| 
       2579 
2556 
     | 
    
         | 
| 
       2580 
2557 
     | 
    
         
             
            // 华东理工大学研究生院
         
     | 
| 
       2581 
     | 
    
         
            -
            router.get('/ecustyjs', lazyloadRouteHandler('./routes/universities/ecustyjs/ecustyjs'));
         
     | 
| 
      
 2558 
     | 
    
         
            +
            // router.get('/ecustyjs', lazyloadRouteHandler('./routes/universities/ecustyjs/ecustyjs'));
         
     | 
| 
       2582 
2559 
     | 
    
         | 
| 
       2583 
2560 
     | 
    
         
             
            // 同济大学研究生院
         
     | 
| 
       2584 
     | 
    
         
            -
            router.get('/tjuyjs', lazyloadRouteHandler('./routes/universities/tjuyjs/tjuyjs'));
         
     | 
| 
      
 2561 
     | 
    
         
            +
            // router.get('/tjuyjs', lazyloadRouteHandler('./routes/universities/tjuyjs/tjuyjs'));
         
     | 
| 
       2585 
2562 
     | 
    
         | 
| 
       2586 
2563 
     | 
    
         
             
            // 中国石油大学研究生院
         
     | 
| 
       2587 
     | 
    
         
            -
            router.get('/upcyjs', lazyloadRouteHandler('./routes/universities/upcyjs/upcyjs'));
         
     | 
| 
      
 2564 
     | 
    
         
            +
            // router.get('/upcyjs', lazyloadRouteHandler('./routes/universities/upcyjs/upcyjs'));
         
     | 
| 
       2588 
2565 
     | 
    
         | 
| 
       2589 
2566 
     | 
    
         
             
            // 中国海洋大学研究生院
         
     | 
| 
       2590 
     | 
    
         
            -
            router.get('/outyjs', lazyloadRouteHandler('./routes/universities/outyjs/outyjs'));
         
     | 
| 
      
 2567 
     | 
    
         
            +
            // router.get('/outyjs', lazyloadRouteHandler('./routes/universities/outyjs/outyjs'));
         
     | 
| 
       2591 
2568 
     | 
    
         | 
| 
       2592 
2569 
     | 
    
         
             
            // 中科院人工智能所
         
     | 
| 
       2593 
     | 
    
         
            -
            router.get('/zkyai', lazyloadRouteHandler('./routes/universities/zkyai/zkyai'));
         
     | 
| 
      
 2570 
     | 
    
         
            +
            // router.get('/zkyai', lazyloadRouteHandler('./routes/universities/zkyai/zkyai'));
         
     | 
| 
       2594 
2571 
     | 
    
         | 
| 
       2595 
2572 
     | 
    
         
             
            // 中科院自动化所
         
     | 
| 
       2596 
     | 
    
         
            -
            router.get('/zkyyjs', lazyloadRouteHandler('./routes/universities/zkyyjs/zkyyjs'));
         
     | 
| 
      
 2573 
     | 
    
         
            +
            // router.get('/zkyyjs', lazyloadRouteHandler('./routes/universities/zkyyjs/zkyyjs'));
         
     | 
| 
       2597 
2574 
     | 
    
         | 
| 
       2598 
2575 
     | 
    
         
             
            // 中国海洋大学信电学院
         
     | 
| 
       2599 
     | 
    
         
            -
            router.get('/outele', lazyloadRouteHandler('./routes/universities/outele/outele'));
         
     | 
| 
      
 2576 
     | 
    
         
            +
            // router.get('/outele', lazyloadRouteHandler('./routes/universities/outele/outele'));
         
     | 
| 
       2600 
2577 
     | 
    
         | 
| 
       2601 
     | 
    
         
            -
            // 华东师范大学研究生院
         
     | 
| 
       2602 
     | 
    
         
            -
            router.get('/ecnuyjs', lazyloadRouteHandler('./routes/universities/ecnuyjs/ecnuyjs'));
         
     | 
| 
      
 2578 
     | 
    
         
            +
            // 华东师范大学研究生院 migrated to v2
         
     | 
| 
      
 2579 
     | 
    
         
            +
            // router.get('/ecnuyjs', lazyloadRouteHandler('./routes/universities/ecnuyjs/ecnuyjs'));
         
     | 
| 
       2603 
2580 
     | 
    
         | 
| 
       2604 
2581 
     | 
    
         
             
            // 考研帮调剂信息
         
     | 
| 
       2605 
2582 
     | 
    
         
             
            router.get('/kaoyan', lazyloadRouteHandler('./routes/kaoyan/kaoyan'));
         
     | 
| 
       2606 
2583 
     | 
    
         | 
| 
       2607 
2584 
     | 
    
         
             
            // 华中科技大学研究生院
         
     | 
| 
       2608 
     | 
    
         
            -
            router.get('/hustyjs', lazyloadRouteHandler('./routes/universities/hustyjs/hustyjs'));
         
     | 
| 
      
 2585 
     | 
    
         
            +
            // router.get('/hustyjs', lazyloadRouteHandler('./routes/universities/hustyjs/hustyjs'));
         
     | 
| 
       2609 
2586 
     | 
    
         | 
| 
       2610 
2587 
     | 
    
         
             
            // 华中师范大学研究生院
         
     | 
| 
       2611 
     | 
    
         
            -
            router.get('/ccnuyjs', lazyloadRouteHandler('./routes/universities/ccnu/ccnuyjs'));
         
     | 
| 
      
 2588 
     | 
    
         
            +
            // router.get('/ccnuyjs', lazyloadRouteHandler('./routes/universities/ccnu/ccnuyjs'));
         
     | 
| 
       2612 
2589 
     | 
    
         | 
| 
       2613 
2590 
     | 
    
         
             
            // 华中师范大学计算机学院
         
     | 
| 
       2614 
     | 
    
         
            -
            router.get('/ccnucs', lazyloadRouteHandler('./routes/universities/ccnu/ccnucs'));
         
     | 
| 
      
 2591 
     | 
    
         
            +
            // router.get('/ccnucs', lazyloadRouteHandler('./routes/universities/ccnu/ccnucs'));
         
     | 
| 
       2615 
2592 
     | 
    
         | 
| 
       2616 
2593 
     | 
    
         
             
            // 华中师范大学伍论贡学院
         
     | 
| 
       2617 
     | 
    
         
            -
            router.get('/ccnuwu', lazyloadRouteHandler('./routes/universities/ccnu/ccnuwu'));
         
     | 
| 
      
 2594 
     | 
    
         
            +
            // router.get('/ccnuwu', lazyloadRouteHandler('./routes/universities/ccnu/ccnuwu'));
         
     | 
| 
       2618 
2595 
     | 
    
         | 
| 
       2619 
2596 
     | 
    
         
             
            // WEEX
         
     | 
| 
       2620 
2597 
     | 
    
         
             
            router.get('/weexcn/news/:typeid', lazyloadRouteHandler('./routes/weexcn/index'));
         
     | 
| 
         @@ -2623,26 +2600,26 @@ router.get('/weexcn/news/:typeid', lazyloadRouteHandler('./routes/weexcn/index') 
     | 
|
| 
       2623 
2600 
     | 
    
         
             
            // router.get('/eastmoney/ttjj/user/:uid', lazyloadRouteHandler('./routes/eastmoney/ttjj/user'));
         
     | 
| 
       2624 
2601 
     | 
    
         | 
| 
       2625 
2602 
     | 
    
         
             
            // 紳士漫畫
         
     | 
| 
       2626 
     | 
    
         
            -
            router.get('/ssmh', lazyloadRouteHandler('./routes/ssmh'));
         
     | 
| 
       2627 
     | 
    
         
            -
            router.get('/ssmh/category/:cid', lazyloadRouteHandler('./routes/ssmh/category'));
         
     | 
| 
      
 2603 
     | 
    
         
            +
            // router.get('/ssmh', lazyloadRouteHandler('./routes/ssmh'));
         
     | 
| 
      
 2604 
     | 
    
         
            +
            // router.get('/ssmh/category/:cid', lazyloadRouteHandler('./routes/ssmh/category'));
         
     | 
| 
       2628 
2605 
     | 
    
         | 
| 
       2629 
2606 
     | 
    
         
             
            // 华南师范大学研究生学院
         
     | 
| 
       2630 
     | 
    
         
            -
            router.get('/scnuyjs', lazyloadRouteHandler('./routes/universities/scnu/scnuyjs'));
         
     | 
| 
      
 2607 
     | 
    
         
            +
            // router.get('/scnuyjs', lazyloadRouteHandler('./routes/universities/scnu/scnuyjs'));
         
     | 
| 
       2631 
2608 
     | 
    
         | 
| 
       2632 
2609 
     | 
    
         
             
            // 华南师范大学软件学院
         
     | 
| 
       2633 
     | 
    
         
            -
            router.get('/scnucs', lazyloadRouteHandler('./routes/universities/scnu/scnucs'));
         
     | 
| 
      
 2610 
     | 
    
         
            +
            // router.get('/scnucs', lazyloadRouteHandler('./routes/universities/scnu/scnucs'));
         
     | 
| 
       2634 
2611 
     | 
    
         | 
| 
       2635 
2612 
     | 
    
         
             
            // 华南理工大学研究生院
         
     | 
| 
       2636 
     | 
    
         
            -
            router.get('/scutyjs', lazyloadRouteHandler('./routes/universities/scut/scutyjs'));
         
     | 
| 
      
 2613 
     | 
    
         
            +
            // router.get('/scutyjs', lazyloadRouteHandler('./routes/universities/scut/scutyjs'));
         
     | 
| 
       2637 
2614 
     | 
    
         | 
| 
       2638 
2615 
     | 
    
         
             
            // 华南农业大学研究生院通知公告
         
     | 
| 
       2639 
     | 
    
         
            -
            router.get('/scauyjs', lazyloadRouteHandler('./routes/universities/scauyjs/scauyjs'));
         
     | 
| 
      
 2616 
     | 
    
         
            +
            // router.get('/scauyjs', lazyloadRouteHandler('./routes/universities/scauyjs/scauyjs'));
         
     | 
| 
       2640 
2617 
     | 
    
         | 
| 
       2641 
2618 
     | 
    
         
             
            // 北京大学研究生招生网通知公告 migrated to v2
         
     | 
| 
       2642 
2619 
     | 
    
         
             
            // router.get('/pkuyjs', lazyloadRouteHandler('./routes/universities/pku/pkuyjs'));
         
     | 
| 
       2643 
2620 
     | 
    
         | 
| 
       2644 
2621 
     | 
    
         
             
            // 北京理工大学研究生通知公告
         
     | 
| 
       2645 
     | 
    
         
            -
            router.get('/bityjs', lazyloadRouteHandler('./routes/universities/bit/bityjs'));
         
     | 
| 
      
 2622 
     | 
    
         
            +
            // router.get('/bityjs', lazyloadRouteHandler('./routes/universities/bit/bityjs'));
         
     | 
| 
       2646 
2623 
     | 
    
         | 
| 
       2647 
2624 
     | 
    
         
             
            // 湖南科技大学教务处
         
     | 
| 
       2648 
2625 
     | 
    
         
             
            router.get('/hnust/jwc', lazyloadRouteHandler('./routes/universities/hnust/jwc/index'));
         
     | 
| 
         @@ -2651,12 +2628,9 @@ router.get('/hnust/art', lazyloadRouteHandler('./routes/universities/hnust/art/i 
     | 
|
| 
       2651 
2628 
     | 
    
         
             
            router.get('/hnust/chem', lazyloadRouteHandler('./routes/universities/hnust/chem/index'));
         
     | 
| 
       2652 
2629 
     | 
    
         
             
            router.get('/hnust/graduate/:type?', lazyloadRouteHandler('./routes/universities/hnust/graduate/index'));
         
     | 
| 
       2653 
2630 
     | 
    
         | 
| 
       2654 
     | 
    
         
            -
            // 西南交通大学
         
     | 
| 
       2655 
     | 
    
         
            -
            router.get('/swjtu/tl/news', lazyloadRouteHandler('./routes/swjtu/tl/news'));
         
     | 
| 
       2656 
     | 
    
         
            -
             
     | 
| 
       2657 
2631 
     | 
    
         
             
            // AGE动漫
         
     | 
| 
       2658 
     | 
    
         
            -
            router.get('/agefans/detail/:id', lazyloadRouteHandler('./routes/agefans/detail'));
         
     | 
| 
       2659 
     | 
    
         
            -
            router.get('/agefans/update', lazyloadRouteHandler('./routes/agefans/update'));
         
     | 
| 
      
 2632 
     | 
    
         
            +
            // router.get('/agefans/detail/:id', lazyloadRouteHandler('./routes/agefans/detail'));
         
     | 
| 
      
 2633 
     | 
    
         
            +
            // router.get('/agefans/update', lazyloadRouteHandler('./routes/agefans/update'));
         
     | 
| 
       2660 
2634 
     | 
    
         | 
| 
       2661 
2635 
     | 
    
         
             
            // Checkra1n
         
     | 
| 
       2662 
2636 
     | 
    
         
             
            router.get('/checkra1n/releases', lazyloadRouteHandler('./routes/checkra1n/releases'));
         
     | 
| 
         @@ -2678,9 +2652,6 @@ router.get('/hbut/cs/:type', lazyloadRouteHandler('./routes/universities/hbut/cs 
     | 
|
| 
       2678 
2652 
     | 
    
         
             
            // acwifi
         
     | 
| 
       2679 
2653 
     | 
    
         
             
            router.get('/acwifi', lazyloadRouteHandler('./routes/acwifi'));
         
     | 
| 
       2680 
2654 
     | 
    
         | 
| 
       2681 
     | 
    
         
            -
            // a岛匿名版
         
     | 
| 
       2682 
     | 
    
         
            -
            router.get('/adnmb/:pid', lazyloadRouteHandler('./routes/adnmb/index'));
         
     | 
| 
       2683 
     | 
    
         
            -
             
     | 
| 
       2684 
2655 
     | 
    
         
             
            // MIT科技评论
         
     | 
| 
       2685 
2656 
     | 
    
         
             
            router.get('/mittrchina/:type', lazyloadRouteHandler('./routes/mittrchina'));
         
     | 
| 
       2686 
2657 
     | 
    
         | 
| 
         @@ -2769,7 +2740,7 @@ router.get('/qlwb/news', lazyloadRouteHandler('./routes/qlwb/news')); 
     | 
|
| 
       2769 
2740 
     | 
    
         
             
            router.get('/qlwb/city/:city', lazyloadRouteHandler('./routes/qlwb/city'));
         
     | 
| 
       2770 
2741 
     | 
    
         | 
| 
       2771 
2742 
     | 
    
         
             
            // 蜻蜓FM
         
     | 
| 
       2772 
     | 
    
         
            -
            router.get('/qingting/channel/:id', lazyloadRouteHandler('./routes/qingting/channel'));
         
     | 
| 
      
 2743 
     | 
    
         
            +
            // router.get('/qingting/channel/:id', lazyloadRouteHandler('./routes/qingting/channel'));
         
     | 
| 
       2773 
2744 
     | 
    
         | 
| 
       2774 
2745 
     | 
    
         
             
            // 金色财经
         
     | 
| 
       2775 
2746 
     | 
    
         
             
            router.get('/jinse/lives', lazyloadRouteHandler('./routes/jinse/lives'));
         
     | 
| 
         @@ -2813,11 +2784,11 @@ router.get('/jijitang/article/:id', lazyloadRouteHandler('./routes/jijitang/arti 
     | 
|
| 
       2813 
2784 
     | 
    
         
             
            router.get('/jijitang/publication', lazyloadRouteHandler('./routes/jijitang/publication'));
         
     | 
| 
       2814 
2785 
     | 
    
         | 
| 
       2815 
2786 
     | 
    
         
             
            // 新闻联播
         
     | 
| 
       2816 
     | 
    
         
            -
            router.get('/xwlb', lazyloadRouteHandler('./routes/xwlb/index'));
         
     | 
| 
      
 2787 
     | 
    
         
            +
            // router.get('/xwlb', lazyloadRouteHandler('./routes/xwlb/index'));
         
     | 
| 
       2817 
2788 
     | 
    
         | 
| 
       2818 
2789 
     | 
    
         
             
            // 端传媒
         
     | 
| 
       2819 
     | 
    
         
            -
            router.get('/initium/:type?/:language?', lazyloadRouteHandler('./routes/initium/full'));
         
     | 
| 
       2820 
     | 
    
         
            -
            router.get('/theinitium/:model/:type?/:language?', lazyloadRouteHandler('./routes/initium/full'));
         
     | 
| 
      
 2790 
     | 
    
         
            +
            // router.get('/initium/:type?/:language?', lazyloadRouteHandler('./routes/initium/full'));
         
     | 
| 
      
 2791 
     | 
    
         
            +
            // router.get('/theinitium/:model/:type?/:language?', lazyloadRouteHandler('./routes/initium/full'));
         
     | 
| 
       2821 
2792 
     | 
    
         | 
| 
       2822 
2793 
     | 
    
         
             
            // Grub Street
         
     | 
| 
       2823 
2794 
     | 
    
         
             
            router.get('/grubstreet', lazyloadRouteHandler('./routes/grubstreet/index'));
         
     | 
| 
         @@ -2826,10 +2797,10 @@ router.get('/grubstreet', lazyloadRouteHandler('./routes/grubstreet/index')); 
     | 
|
| 
       2826 
2797 
     | 
    
         
             
            router.get('/manhuadui/manhua/:name/:serial?', lazyloadRouteHandler('./routes/manhuadui/manhua'));
         
     | 
| 
       2827 
2798 
     | 
    
         | 
| 
       2828 
2799 
     | 
    
         
             
            // 风之漫画
         
     | 
| 
       2829 
     | 
    
         
            -
            router.get('/fzdm/manhua/:id', lazyloadRouteHandler('./routes/fzdm/manhua'));
         
     | 
| 
      
 2800 
     | 
    
         
            +
            // router.get('/fzdm/manhua/:id', lazyloadRouteHandler('./routes/fzdm/manhua'));
         
     | 
| 
       2830 
2801 
     | 
    
         | 
| 
       2831 
2802 
     | 
    
         
             
            // Aljazeera 半岛网
         
     | 
| 
       2832 
     | 
    
         
            -
            router.get('/aljazeera/news', lazyloadRouteHandler('./routes/aljazeera/news'));
         
     | 
| 
      
 2803 
     | 
    
         
            +
            // router.get('/aljazeera/news', lazyloadRouteHandler('./routes/aljazeera/news'));
         
     | 
| 
       2833 
2804 
     | 
    
         | 
| 
       2834 
2805 
     | 
    
         
             
            // CFD indices dividend adjustment
         
     | 
| 
       2835 
2806 
     | 
    
         
             
            router.get('/cfd/gbp_div', lazyloadRouteHandler('./routes/cfd/gbp_div'));
         
     | 
| 
         @@ -2876,14 +2847,11 @@ router.get('/law/dh', lazyloadRouteHandler('./routes/law/dh')); 
     | 
|
| 
       2876 
2847 
     | 
    
         
             
            // 金诚同达律师事务所文章
         
     | 
| 
       2877 
2848 
     | 
    
         
             
            router.get('/law/jctd', lazyloadRouteHandler('./routes/law/jctd'));
         
     | 
| 
       2878 
2849 
     | 
    
         | 
| 
       2879 
     | 
    
         
            -
            // Mobilism
         
     | 
| 
       2880 
     | 
    
         
            -
            router.get('/mobilism/release', lazyloadRouteHandler('./routes/mobilism/release'));
         
     | 
| 
       2881 
     | 
    
         
            -
             
     | 
| 
       2882 
2850 
     | 
    
         
             
            // 三星盖乐世社区
         
     | 
| 
       2883 
2851 
     | 
    
         
             
            router.get('/samsungmembers/latest', lazyloadRouteHandler('./routes/samsungmembers/latest'));
         
     | 
| 
       2884 
2852 
     | 
    
         | 
| 
       2885 
2853 
     | 
    
         
             
            // 东莞教研网
         
     | 
| 
       2886 
     | 
    
         
            -
            router.get('/dgjyw/:type', lazyloadRouteHandler('./routes/dgjyw/index'));
         
     | 
| 
      
 2854 
     | 
    
         
            +
            // router.get('/dgjyw/:type', lazyloadRouteHandler('./routes/dgjyw/index'));
         
     | 
| 
       2887 
2855 
     | 
    
         | 
| 
       2888 
2856 
     | 
    
         
             
            // 中国信息通信研究院
         
     | 
| 
       2889 
2857 
     | 
    
         
             
            router.get('/gov/caict/bps', lazyloadRouteHandler('./routes/gov/caict/bps'));
         
     | 
| 
         @@ -2894,8 +2862,8 @@ router.get('/gov/caict/caictgd', lazyloadRouteHandler('./routes/gov/caict/caictg 
     | 
|
| 
       2894 
2862 
     | 
    
         
             
            router.get('/cs/news/:caty', lazyloadRouteHandler('./routes/cs/news'));
         
     | 
| 
       2895 
2863 
     | 
    
         | 
| 
       2896 
2864 
     | 
    
         
             
            // 财联社
         
     | 
| 
       2897 
     | 
    
         
            -
            router.get('/cls/depth/:category?', lazyloadRouteHandler('./routes/cls/depth'));
         
     | 
| 
       2898 
     | 
    
         
            -
            router.get('/cls/telegraph/:category?', lazyloadRouteHandler('./routes/cls/telegraph'));
         
     | 
| 
      
 2865 
     | 
    
         
            +
            // router.get('/cls/depth/:category?', lazyloadRouteHandler('./routes/cls/depth'));
         
     | 
| 
      
 2866 
     | 
    
         
            +
            // router.get('/cls/telegraph/:category?', lazyloadRouteHandler('./routes/cls/telegraph'));
         
     | 
| 
       2899 
2867 
     | 
    
         | 
| 
       2900 
2868 
     | 
    
         
             
            // hentai-cosplays
         
     | 
| 
       2901 
2869 
     | 
    
         
             
            router.get('/hentai-cosplays/:type?/:name?', lazyloadRouteHandler('./routes/hentai-cosplays/hentai-cosplays'));
         
     | 
| 
         @@ -2916,28 +2884,25 @@ router.get('/lizhi/user/:id', lazyloadRouteHandler('./routes/lizhi/user')); 
     | 
|
| 
       2916 
2884 
     | 
    
         
             
            // 富途牛牛
         
     | 
| 
       2917 
2885 
     | 
    
         
             
            router.get('/futunn/highlights', lazyloadRouteHandler('./routes/futunn/highlights'));
         
     | 
| 
       2918 
2886 
     | 
    
         | 
| 
       2919 
     | 
    
         
            -
            //  
     | 
| 
       2920 
     | 
    
         
            -
            router.get('/ 
     | 
| 
       2921 
     | 
    
         
            -
             
     | 
| 
       2922 
     | 
    
         
            -
            //  
     | 
| 
       2923 
     | 
    
         
            -
            router.get('/jike/topic/:id', lazyloadRouteHandler('./routes/jike/topic'));
         
     | 
| 
       2924 
     | 
    
         
            -
            router.get('/jike/topic/text/:id', lazyloadRouteHandler('./routes/jike/topicText'));
         
     | 
| 
       2925 
     | 
    
         
            -
            router.get('/jike/user/:id', lazyloadRouteHandler('./routes/jike/user'));
         
     | 
| 
      
 2887 
     | 
    
         
            +
            // 即刻 migrated to v2
         
     | 
| 
      
 2888 
     | 
    
         
            +
            // router.get('/jike/topic/:id', lazyloadRouteHandler('./routes/jike/topic'));
         
     | 
| 
      
 2889 
     | 
    
         
            +
            // router.get('/jike/topic/text/:id', lazyloadRouteHandler('./routes/jike/topicText'));
         
     | 
| 
      
 2890 
     | 
    
         
            +
            // router.get('/jike/user/:id', lazyloadRouteHandler('./routes/jike/user'));
         
     | 
| 
       2926 
2891 
     | 
    
         | 
| 
       2927 
2892 
     | 
    
         
             
            // 网易新闻
         
     | 
| 
       2928 
2893 
     | 
    
         
             
            // router.get('/netease/news/rank/:category?/:type?/:time?', lazyloadRouteHandler('./routes/netease/news/rank'));
         
     | 
| 
       2929 
     | 
    
         
            -
            router.get('/netease/news/special/:type?', lazyloadRouteHandler('./routes/netease/news/special'));
         
     | 
| 
      
 2894 
     | 
    
         
            +
            // router.get('/netease/news/special/:type?', lazyloadRouteHandler('./routes/netease/news/special'));
         
     | 
| 
       2930 
2895 
     | 
    
         | 
| 
       2931 
2896 
     | 
    
         
             
            // 网易 - 网易号
         
     | 
| 
       2932 
     | 
    
         
            -
            router.get('/netease/dy/:id', lazyloadRouteHandler('./routes/netease/dy'));
         
     | 
| 
       2933 
     | 
    
         
            -
            router.get('/netease/dy2/:id', lazyloadRouteHandler('./routes/netease/dy2'));
         
     | 
| 
      
 2897 
     | 
    
         
            +
            // router.get('/netease/dy/:id', lazyloadRouteHandler('./routes/netease/dy'));
         
     | 
| 
      
 2898 
     | 
    
         
            +
            // router.get('/netease/dy2/:id', lazyloadRouteHandler('./routes/netease/dy2'));
         
     | 
| 
       2934 
2899 
     | 
    
         | 
| 
       2935 
2900 
     | 
    
         
             
            // 网易大神
         
     | 
| 
       2936 
     | 
    
         
            -
            router.get('/netease/ds/:id', lazyloadRouteHandler('./routes/netease/ds'));
         
     | 
| 
      
 2901 
     | 
    
         
            +
            // router.get('/netease/ds/:id', lazyloadRouteHandler('./routes/netease/ds'));
         
     | 
| 
       2937 
2902 
     | 
    
         | 
| 
       2938 
2903 
     | 
    
         
             
            // 网易公开课
         
     | 
| 
       2939 
     | 
    
         
            -
            router.get('/open163/vip', lazyloadRouteHandler('./routes/netease/open/vip'));
         
     | 
| 
       2940 
     | 
    
         
            -
            router.get('/open163/latest', lazyloadRouteHandler('./routes/netease/open/latest'));
         
     | 
| 
      
 2904 
     | 
    
         
            +
            // router.get('/open163/vip', lazyloadRouteHandler('./routes/netease/open/vip'));
         
     | 
| 
      
 2905 
     | 
    
         
            +
            // router.get('/open163/latest', lazyloadRouteHandler('./routes/netease/open/latest'));
         
     | 
| 
       2941 
2906 
     | 
    
         | 
| 
       2942 
2907 
     | 
    
         
             
            // Boston.com
         
     | 
| 
       2943 
2908 
     | 
    
         
             
            router.get('/boston/:tag?', lazyloadRouteHandler('./routes/boston/index'));
         
     | 
| 
         @@ -2947,7 +2912,7 @@ router.get('/changku', lazyloadRouteHandler('./routes/changku/index')); 
     | 
|
| 
       2947 
2912 
     | 
    
         
             
            router.get('/changku/cate/:postid', lazyloadRouteHandler('./routes/changku/index'));
         
     | 
| 
       2948 
2913 
     | 
    
         | 
| 
       2949 
2914 
     | 
    
         
             
            // SCMP
         
     | 
| 
       2950 
     | 
    
         
            -
            router.get('/scmp/:category_id', lazyloadRouteHandler('./routes/scmp/index'));
         
     | 
| 
      
 2915 
     | 
    
         
            +
            // router.get('/scmp/:category_id', lazyloadRouteHandler('./routes/scmp/index'));
         
     | 
| 
       2951 
2916 
     | 
    
         | 
| 
       2952 
2917 
     | 
    
         
             
            // 上海市生态环境局
         
     | 
| 
       2953 
2918 
     | 
    
         
             
            router.get('/gov/shanghai/sthj', lazyloadRouteHandler('./routes/gov/shanghai/sthj'));
         
     | 
| 
         @@ -2973,7 +2938,7 @@ router.get('/missevan/drama/latest', lazyloadRouteHandler('./routes/missevan/lat 
     | 
|
| 
       2973 
2938 
     | 
    
         
             
            router.get('/missevan/drama/:id', lazyloadRouteHandler('./routes/missevan/drama'));
         
     | 
| 
       2974 
2939 
     | 
    
         | 
| 
       2975 
2940 
     | 
    
         
             
            // Go语言爱好者周刊
         
     | 
| 
       2976 
     | 
    
         
            -
            router.get('/go-weekly', lazyloadRouteHandler('./routes/go-weekly'));
         
     | 
| 
      
 2941 
     | 
    
         
            +
            // router.get('/go-weekly', lazyloadRouteHandler('./routes/go-weekly'));
         
     | 
| 
       2977 
2942 
     | 
    
         | 
| 
       2978 
2943 
     | 
    
         
             
            // popiask提问箱
         
     | 
| 
       2979 
2944 
     | 
    
         
             
            router.get('/popiask/:sharecode/:pagesize?', lazyloadRouteHandler('./routes/popiask/questions'));
         
     | 
| 
         @@ -2985,7 +2950,7 @@ router.get('/tapechat/questionbox/:sharecode/:pagesize?', lazyloadRouteHandler(' 
     | 
|
| 
       2985 
2950 
     | 
    
         
             
            router.get('/amd/graphicsdrivers/:id/:rid?', lazyloadRouteHandler('./routes/amd/graphicsdrivers'));
         
     | 
| 
       2986 
2951 
     | 
    
         | 
| 
       2987 
2952 
     | 
    
         
             
            // 二柄APP
         
     | 
| 
       2988 
     | 
    
         
            -
            router.get('/erbingapp/news', lazyloadRouteHandler('./routes/erbingapp/news'));
         
     | 
| 
      
 2953 
     | 
    
         
            +
            // router.get('/erbingapp/news', lazyloadRouteHandler('./routes/erbingapp/news'));
         
     | 
| 
       2989 
2954 
     | 
    
         | 
| 
       2990 
2955 
     | 
    
         
             
            // 电商报
         
     | 
| 
       2991 
2956 
     | 
    
         
             
            router.get('/dsb/area/:area', lazyloadRouteHandler('./routes/dsb/area'));
         
     | 
| 
         @@ -2993,13 +2958,10 @@ router.get('/dsb/area/:area', lazyloadRouteHandler('./routes/dsb/area')); 
     | 
|
| 
       2993 
2958 
     | 
    
         
             
            // 靠谱新闻
         
     | 
| 
       2994 
2959 
     | 
    
         
             
            router.get('/kaopunews/:language?', lazyloadRouteHandler('./routes/kaopunews'));
         
     | 
| 
       2995 
2960 
     | 
    
         | 
| 
       2996 
     | 
    
         
            -
            //  
     | 
| 
       2997 
     | 
    
         
            -
            router.get('/ 
     | 
| 
       2998 
     | 
    
         
            -
             
     | 
| 
       2999 
     | 
    
         
            -
            //  
     | 
| 
       3000 
     | 
    
         
            -
            router.get('/gelonghui/user/:id', lazyloadRouteHandler('./routes/gelonghui/user'));
         
     | 
| 
       3001 
     | 
    
         
            -
            router.get('/gelonghui/subject/:id', lazyloadRouteHandler('./routes/gelonghui/subject'));
         
     | 
| 
       3002 
     | 
    
         
            -
            router.get('/gelonghui/keyword/:keyword', lazyloadRouteHandler('./routes/gelonghui/keyword'));
         
     | 
| 
      
 2961 
     | 
    
         
            +
            // 格隆汇 migrated to v2
         
     | 
| 
      
 2962 
     | 
    
         
            +
            // router.get('/gelonghui/user/:id', lazyloadRouteHandler('./routes/gelonghui/user'));
         
     | 
| 
      
 2963 
     | 
    
         
            +
            // router.get('/gelonghui/subject/:id', lazyloadRouteHandler('./routes/gelonghui/subject'));
         
     | 
| 
      
 2964 
     | 
    
         
            +
            // router.get('/gelonghui/keyword/:keyword', lazyloadRouteHandler('./routes/gelonghui/keyword'));
         
     | 
| 
       3003 
2965 
     | 
    
         | 
| 
       3004 
2966 
     | 
    
         
             
            // 光谷社区
         
     | 
| 
       3005 
2967 
     | 
    
         
             
            router.get('/guanggoo/:category?', lazyloadRouteHandler('./routes/guanggoo/index'));
         
     | 
| 
         @@ -3039,15 +3001,12 @@ router.get('/touhougarakuta/:language/:type', lazyloadRouteHandler('./routes/tou 
     | 
|
| 
       3039 
3001 
     | 
    
         
             
            // 猎趣TV
         
     | 
| 
       3040 
3002 
     | 
    
         
             
            router.get('/liequtv/room/:id', lazyloadRouteHandler('./routes/liequtv/room'));
         
     | 
| 
       3041 
3003 
     | 
    
         | 
| 
       3042 
     | 
    
         
            -
            // Behance
         
     | 
| 
       3043 
     | 
    
         
            -
            router.get('/behance/:user/:type?', lazyloadRouteHandler('./routes/behance/index'));
         
     | 
| 
       3044 
     | 
    
         
            -
             
     | 
| 
       3045 
3004 
     | 
    
         
             
            // 北京物资学院
         
     | 
| 
       3046 
3005 
     | 
    
         
             
            router.get('/bwu/news', lazyloadRouteHandler('./routes/universities/bwu/news'));
         
     | 
| 
       3047 
3006 
     | 
    
         | 
| 
       3048 
3007 
     | 
    
         
             
            // 新榜
         
     | 
| 
       3049 
     | 
    
         
            -
            router.get('/newrank/wechat/:wxid', lazyloadRouteHandler('./routes/newrank/wechat'));
         
     | 
| 
       3050 
     | 
    
         
            -
            router.get('/newrank/douyin/:dyid', lazyloadRouteHandler('./routes/newrank/douyin'));
         
     | 
| 
      
 3008 
     | 
    
         
            +
            // router.get('/newrank/wechat/:wxid', lazyloadRouteHandler('./routes/newrank/wechat'));
         
     | 
| 
      
 3009 
     | 
    
         
            +
            // router.get('/newrank/douyin/:dyid', lazyloadRouteHandler('./routes/newrank/douyin'));
         
     | 
| 
       3051 
3010 
     | 
    
         | 
| 
       3052 
3011 
     | 
    
         
             
            // 漫小肆
         
     | 
| 
       3053 
3012 
     | 
    
         
             
            router.get('/manxiaosi/book/:id', lazyloadRouteHandler('./routes/manxiaosi/book'));
         
     | 
| 
         @@ -3063,16 +3022,16 @@ router.get('/jlu/oa', lazyloadRouteHandler('./routes/universities/jlu/oa')); 
     | 
|
| 
       3063 
3022 
     | 
    
         
             
            router.get('/hfut/tzgg', lazyloadRouteHandler('./routes/universities/hfut/tzgg'));
         
     | 
| 
       3064 
3023 
     | 
    
         | 
| 
       3065 
3024 
     | 
    
         
             
            // Darwin Awards
         
     | 
| 
       3066 
     | 
    
         
            -
            router.get('/darwinawards/all', lazyloadRouteHandler('./routes/darwinawards/articles'));
         
     | 
| 
      
 3025 
     | 
    
         
            +
            // router.get('/darwinawards/all', lazyloadRouteHandler('./routes/darwinawards/articles'));
         
     | 
| 
       3067 
3026 
     | 
    
         | 
| 
       3068 
3027 
     | 
    
         
             
            // 四川职业技术学院
         
     | 
| 
       3069 
     | 
    
         
            -
            router.get('/scvtc/xygg', lazyloadRouteHandler('./routes/universities/scvtc/xygg'));
         
     | 
| 
      
 3028 
     | 
    
         
            +
            // router.get('/scvtc/xygg', lazyloadRouteHandler('./routes/universities/scvtc/xygg'));
         
     | 
| 
       3070 
3029 
     | 
    
         | 
| 
       3071 
3030 
     | 
    
         
             
            // 华南理工大学土木与交通学院
         
     | 
| 
       3072 
     | 
    
         
            -
            router.get('/scut/scet/notice', lazyloadRouteHandler('./routes/universities/scut/scet/notice'));
         
     | 
| 
      
 3031 
     | 
    
         
            +
            // router.get('/scut/scet/notice', lazyloadRouteHandler('./routes/universities/scut/scet/notice'));
         
     | 
| 
       3073 
3032 
     | 
    
         | 
| 
       3074 
3033 
     | 
    
         
             
            // 华南理工大学电子与信息学院
         
     | 
| 
       3075 
     | 
    
         
            -
            router.get('/scut/seie/news_center', lazyloadRouteHandler('./routes/universities/scut/seie/news_center'));
         
     | 
| 
      
 3034 
     | 
    
         
            +
            // router.get('/scut/seie/news_center', lazyloadRouteHandler('./routes/universities/scut/seie/news_center'));
         
     | 
| 
       3076 
3035 
     | 
    
         | 
| 
       3077 
3036 
     | 
    
         
             
            // OneJAV
         
     | 
| 
       3078 
3037 
     | 
    
         
             
            router.get('/onejav/:type/:key?', lazyloadRouteHandler('./routes/onejav/one'));
         
     | 
| 
         @@ -3100,8 +3059,8 @@ router.get('/kotaku/story/:type', lazyloadRouteHandler('./routes/kotaku/story')) 
     | 
|
| 
       3100 
3059 
     | 
    
         
             
            // 梅斯医学
         
     | 
| 
       3101 
3060 
     | 
    
         
             
            router.get('/medsci/recommend', lazyloadRouteHandler('./routes/medsci/recommend'));
         
     | 
| 
       3102 
3061 
     | 
    
         | 
| 
       3103 
     | 
    
         
            -
            // Wallpaperhub
         
     | 
| 
       3104 
     | 
    
         
            -
            router.get('/wallpaperhub', lazyloadRouteHandler('./routes/wallpaperhub/index'));
         
     | 
| 
      
 3062 
     | 
    
         
            +
            // Wallpaperhub migrated to v2
         
     | 
| 
      
 3063 
     | 
    
         
            +
            // router.get('/wallpaperhub', lazyloadRouteHandler('./routes/wallpaperhub/index'));
         
     | 
| 
       3105 
3064 
     | 
    
         | 
| 
       3106 
3065 
     | 
    
         
             
            // 悟空问答
         
     | 
| 
       3107 
3066 
     | 
    
         
             
            router.get('/wukong/user/:id/:type?', lazyloadRouteHandler('./routes/wukong/user'));
         
     | 
| 
         @@ -3124,14 +3083,14 @@ router.get('/nasa/apod-ncku', lazyloadRouteHandler('./routes/nasa/apod-ncku')); 
     | 
|
| 
       3124 
3083 
     | 
    
         
             
            router.get('/nasa/apod-cn', lazyloadRouteHandler('./routes/nasa/apod-cn'));
         
     | 
| 
       3125 
3084 
     | 
    
         | 
| 
       3126 
3085 
     | 
    
         
             
            // 爱Q生活网
         
     | 
| 
       3127 
     | 
    
         
            -
            router.get('/iqshw/latest', lazyloadRouteHandler('./routes/3k8/latest'));
         
     | 
| 
       3128 
     | 
    
         
            -
            router.get('/3k8/latest', lazyloadRouteHandler('./routes/3k8/latest'));
         
     | 
| 
      
 3086 
     | 
    
         
            +
            // router.get('/iqshw/latest', lazyloadRouteHandler('./routes/3k8/latest'));
         
     | 
| 
      
 3087 
     | 
    
         
            +
            // router.get('/3k8/latest', lazyloadRouteHandler('./routes/3k8/latest'));
         
     | 
| 
       3129 
3088 
     | 
    
         | 
| 
       3130 
3089 
     | 
    
         
             
            // JustRun
         
     | 
| 
       3131 
3090 
     | 
    
         
             
            router.get('/justrun', lazyloadRouteHandler('./routes/justrun/index'));
         
     | 
| 
       3132 
3091 
     | 
    
         | 
| 
       3133 
     | 
    
         
            -
            // 上海电力大学
         
     | 
| 
       3134 
     | 
    
         
            -
            router.get('/shiep/:type', lazyloadRouteHandler('./routes/universities/shiep/index'));
         
     | 
| 
      
 3092 
     | 
    
         
            +
            // 上海电力大学 migrated to v2
         
     | 
| 
      
 3093 
     | 
    
         
            +
            // router.get('/shiep/:type/:id?', lazyloadRouteHandler('./routes/universities/shiep/index'));
         
     | 
| 
       3135 
3094 
     | 
    
         | 
| 
       3136 
3095 
     | 
    
         
             
            // 福建新闻
         
     | 
| 
       3137 
3096 
     | 
    
         
             
            router.get('/fjnews/:city/:limit', lazyloadRouteHandler('./routes/fjnews/fznews'));
         
     | 
| 
         @@ -3148,7 +3107,7 @@ router.get('/kongfz/shop/:id/:cat?', lazyloadRouteHandler('./routes/kongfz/shop' 
     | 
|
| 
       3148 
3107 
     | 
    
         
             
            router.get('/xmind/mindmap/:lang?', lazyloadRouteHandler('./routes/xmind/mindmap'));
         
     | 
| 
       3149 
3108 
     | 
    
         | 
| 
       3150 
3109 
     | 
    
         
             
            // 小刀娱乐网
         
     | 
| 
       3151 
     | 
    
         
            -
            router.get('/x6d/:id?', lazyloadRouteHandler('./routes/x6d/index'));
         
     | 
| 
      
 3110 
     | 
    
         
            +
            // router.get('/x6d/:id?', lazyloadRouteHandler('./routes/x6d/index'));
         
     | 
| 
       3152 
3111 
     | 
    
         | 
| 
       3153 
3112 
     | 
    
         
             
            // 思维导图社区
         
     | 
| 
       3154 
3113 
     | 
    
         
             
            router.get('/edrawsoft/mindmap/:classId?/:order?/:sort?/:lang?/:price?/:search?', lazyloadRouteHandler('./routes/edrawsoft/mindmap'));
         
     | 
| 
         @@ -3214,7 +3173,7 @@ router.get('/1x/:category?', lazyloadRouteHandler('./routes/1x/index')); 
     | 
|
| 
       3214 
3173 
     | 
    
         
             
            router.get('/jx3/:caty?', lazyloadRouteHandler('./routes/jx3/news'));
         
     | 
| 
       3215 
3174 
     | 
    
         | 
| 
       3216 
3175 
     | 
    
         
             
            // GQ
         
     | 
| 
       3217 
     | 
    
         
            -
            router.get('/gq/tw/:caty?/:subcaty?', lazyloadRouteHandler('./routes/gq/tw/index'));
         
     | 
| 
      
 3176 
     | 
    
         
            +
            // router.get('/gq/tw/:caty?/:subcaty?', lazyloadRouteHandler('./routes/gq/tw/index'));
         
     | 
| 
       3218 
3177 
     | 
    
         | 
| 
       3219 
3178 
     | 
    
         
             
            // 泉州市跨境电子商务协会
         
     | 
| 
       3220 
3179 
     | 
    
         
             
            router.get('/qzcea/:caty?', lazyloadRouteHandler('./routes/qzcea/index'));
         
     | 
| 
         @@ -3294,8 +3253,8 @@ router.get('/nobelprize/:caty?', lazyloadRouteHandler('./routes/nobelprize/index 
     | 
|
| 
       3294 
3253 
     | 
    
         
             
            // 中華民國國防部
         
     | 
| 
       3295 
3254 
     | 
    
         
             
            router.get('/gov/taiwan/mnd', lazyloadRouteHandler('./routes/gov/taiwan/mnd'));
         
     | 
| 
       3296 
3255 
     | 
    
         | 
| 
       3297 
     | 
    
         
            -
            // 読売新聞
         
     | 
| 
       3298 
     | 
    
         
            -
            router.get('/yomiuri/:category', lazyloadRouteHandler('./routes/yomiuri/news'));
         
     | 
| 
      
 3256 
     | 
    
         
            +
            // 読売新聞 to v2
         
     | 
| 
      
 3257 
     | 
    
         
            +
            // router.get('/yomiuri/:category', lazyloadRouteHandler('./routes/yomiuri/news'));
         
     | 
| 
       3299 
3258 
     | 
    
         | 
| 
       3300 
3259 
     | 
    
         
             
            // 巴哈姆特
         
     | 
| 
       3301 
3260 
     | 
    
         
             
            // GNN新闻 migrated to v2
         
     | 
| 
         @@ -3310,8 +3269,8 @@ router.get('/ofweek/news', lazyloadRouteHandler('./routes/ofweek/news')); 
     | 
|
| 
       3310 
3269 
     | 
    
         
             
            // 八阕
         
     | 
| 
       3311 
3270 
     | 
    
         
             
            router.get('/popyard/:caty?', lazyloadRouteHandler('./routes/popyard/index'));
         
     | 
| 
       3312 
3271 
     | 
    
         | 
| 
       3313 
     | 
    
         
            -
            // 原神
         
     | 
| 
       3314 
     | 
    
         
            -
            router.get('/yuanshen/:location?/:category?', lazyloadRouteHandler('./routes/yuanshen/index'));
         
     | 
| 
      
 3272 
     | 
    
         
            +
            // 原神 migrated to v2
         
     | 
| 
      
 3273 
     | 
    
         
            +
            // router.get('/yuanshen/:location?/:category?', lazyloadRouteHandler('./routes/yuanshen/index'));
         
     | 
| 
       3315 
3274 
     | 
    
         | 
| 
       3316 
3275 
     | 
    
         
             
            // World Trade Organization
         
     | 
| 
       3317 
3276 
     | 
    
         
             
            router.get('/wto/dispute-settlement/:year?', lazyloadRouteHandler('./routes/wto/dispute-settlement'));
         
     | 
| 
         @@ -3387,9 +3346,9 @@ router.get('/nwpu/:column', lazyloadRouteHandler('./routes/nwpu/index')); 
     | 
|
| 
       3387 
3346 
     | 
    
         
             
            router.get('/us/supremecourt/argument_audio/:year?', lazyloadRouteHandler('./routes/us/supremecourt/argument_audio'));
         
     | 
| 
       3388 
3347 
     | 
    
         | 
| 
       3389 
3348 
     | 
    
         
             
            // 得到
         
     | 
| 
       3390 
     | 
    
         
            -
            router.get('/dedao/list/:caty?', lazyloadRouteHandler('./routes/dedao/list'));
         
     | 
| 
       3391 
     | 
    
         
            -
            router.get('/dedao/knowledge/:topic?/:type?', lazyloadRouteHandler('./routes/dedao/knowledge'));
         
     | 
| 
       3392 
     | 
    
         
            -
            router.get('/dedao/:caty?', lazyloadRouteHandler('./routes/dedao/index'));
         
     | 
| 
      
 3349 
     | 
    
         
            +
            // router.get('/dedao/list/:caty?', lazyloadRouteHandler('./routes/dedao/list'));
         
     | 
| 
      
 3350 
     | 
    
         
            +
            // router.get('/dedao/knowledge/:topic?/:type?', lazyloadRouteHandler('./routes/dedao/knowledge'));
         
     | 
| 
      
 3351 
     | 
    
         
            +
            // router.get('/dedao/:caty?', lazyloadRouteHandler('./routes/dedao/index'));
         
     | 
| 
       3393 
3352 
     | 
    
         | 
| 
       3394 
3353 
     | 
    
         
             
            // 未名新闻
         
     | 
| 
       3395 
3354 
     | 
    
         
             
            router.get('/mitbbs/:caty?', lazyloadRouteHandler('./routes/mitbbs/index'));
         
     | 
| 
         @@ -3403,7 +3362,7 @@ router.get('/mitbbs/:caty?', lazyloadRouteHandler('./routes/mitbbs/index')); 
     | 
|
| 
       3403 
3362 
     | 
    
         
             
            router.get('/jiazhen108', lazyloadRouteHandler('./routes/jiazhen108/index'));
         
     | 
| 
       3404 
3363 
     | 
    
         | 
| 
       3405 
3364 
     | 
    
         
             
            // Instagram
         
     | 
| 
       3406 
     | 
    
         
            -
            router.get('/instagram/:category/:key', lazyloadRouteHandler('./routes/instagram/index'));
         
     | 
| 
      
 3365 
     | 
    
         
            +
            // router.get('/instagram/:category/:key', lazyloadRouteHandler('./routes/instagram/index'));
         
     | 
| 
       3407 
3366 
     | 
    
         | 
| 
       3408 
3367 
     | 
    
         
             
            // 优设网
         
     | 
| 
       3409 
3368 
     | 
    
         
             
            router.get('/uisdc/talk/:sort?', lazyloadRouteHandler('./routes/uisdc/talk'));
         
     | 
| 
         @@ -3416,7 +3375,7 @@ router.get('/uisdc/topic/:title?/:sort?', lazyloadRouteHandler('./routes/uisdc/t 
     | 
|
| 
       3416 
3375 
     | 
    
         
             
            router.get('/chinalaborwatch/reports/:lang?/:industry?', lazyloadRouteHandler('./routes/chinalaborwatch/reports'));
         
     | 
| 
       3417 
3376 
     | 
    
         | 
| 
       3418 
3377 
     | 
    
         
             
            // Phoronix
         
     | 
| 
       3419 
     | 
    
         
            -
            router.get('/phoronix/:page/:queryOrItem?', lazyloadRouteHandler('./routes/phoronix/index'));
         
     | 
| 
      
 3378 
     | 
    
         
            +
            // router.get('/phoronix/:page/:queryOrItem?', lazyloadRouteHandler('./routes/phoronix/index'));
         
     | 
| 
       3420 
3379 
     | 
    
         | 
| 
       3421 
3380 
     | 
    
         
             
            // 美国中央情报局
         
     | 
| 
       3422 
3381 
     | 
    
         
             
            router.get('/cia/foia-annual-report', lazyloadRouteHandler('./routes/us/cia/foia-annual-report'));
         
     | 
| 
         @@ -3431,7 +3390,7 @@ router.get('/clb/commentary/:lang?', lazyloadRouteHandler('./routes/clb/commenta 
     | 
|
| 
       3431 
3390 
     | 
    
         
             
            router.get('/iie/blog', lazyloadRouteHandler('./routes/iie/blog'));
         
     | 
| 
       3432 
3391 
     | 
    
         | 
| 
       3433 
3392 
     | 
    
         
             
            // McKinsey Greater China
         
     | 
| 
       3434 
     | 
    
         
            -
            router.get('/mckinsey/:category?', lazyloadRouteHandler('./routes/mckinsey/index'));
         
     | 
| 
      
 3393 
     | 
    
         
            +
            // router.get('/mckinsey/:category?', lazyloadRouteHandler('./routes/mckinsey/index'));
         
     | 
| 
       3435 
3394 
     | 
    
         | 
| 
       3436 
3395 
     | 
    
         
             
            // 超理论坛
         
     | 
| 
       3437 
3396 
     | 
    
         
             
            router.get('/chaoli/:channel?', lazyloadRouteHandler('./routes/chaoli/index'));
         
     | 
| 
         @@ -3452,7 +3411,7 @@ router.get('/totalcommander/whatsnew', lazyloadRouteHandler('./routes/totalcomma 
     | 
|
| 
       3452 
3411 
     | 
    
         
             
            router.get('/blizzard/news/:language?/:category?', lazyloadRouteHandler('./routes/blizzard/news'));
         
     | 
| 
       3453 
3412 
     | 
    
         | 
| 
       3454 
3413 
     | 
    
         
             
            // DeepMind
         
     | 
| 
       3455 
     | 
    
         
            -
            router.get('/deepmind/blog/:category?', lazyloadRouteHandler('./routes/deepmind/blog'));
         
     | 
| 
      
 3414 
     | 
    
         
            +
            // router.get('/deepmind/blog/:category?', lazyloadRouteHandler('./routes/deepmind/blog'));
         
     | 
| 
       3456 
3415 
     | 
    
         | 
| 
       3457 
3416 
     | 
    
         
             
            // 东西智库
         
     | 
| 
       3458 
3417 
     | 
    
         
             
            // router.get('/dx2025/:type?/:category?', lazyloadRouteHandler('./routes/dx2025/index'));
         
     | 
| 
         @@ -3460,9 +3419,6 @@ router.get('/deepmind/blog/:category?', lazyloadRouteHandler('./routes/deepmind/ 
     | 
|
| 
       3460 
3419 
     | 
    
         
             
            // DeepL
         
     | 
| 
       3461 
3420 
     | 
    
         
             
            router.get('/deepl/blog/:lang?', lazyloadRouteHandler('./routes/deepl/blog'));
         
     | 
| 
       3462 
3421 
     | 
    
         | 
| 
       3463 
     | 
    
         
            -
            // OpenAI
         
     | 
| 
       3464 
     | 
    
         
            -
            router.get('/openai/blog/:tag?', lazyloadRouteHandler('./routes/openai/blog'));
         
     | 
| 
       3465 
     | 
    
         
            -
             
     | 
| 
       3466 
3422 
     | 
    
         
             
            // 小木虫
         
     | 
| 
       3467 
3423 
     | 
    
         
             
            router.get('/muchong/journal/:type?', lazyloadRouteHandler('./routes/muchong/journal'));
         
     | 
| 
       3468 
3424 
     | 
    
         
             
            router.get('/muchong/:id/:type?/:sort?', lazyloadRouteHandler('./routes/muchong/index'));
         
     | 
| 
         @@ -3491,16 +3447,16 @@ router.get('/matataki/tags/:tagId/:tagName/posts/:ipfsFlag?', lazyloadRouteHandl 
     | 
|
| 
       3491 
3447 
     | 
    
         
             
            router.get('/matataki/users/:userId/favorites/:favoriteListId/posts/:ipfsFlag?', lazyloadRouteHandler('./routes/matataki/site/posts/favorite'));
         
     | 
| 
       3492 
3448 
     | 
    
         | 
| 
       3493 
3449 
     | 
    
         
             
            // SoBooks
         
     | 
| 
       3494 
     | 
    
         
            -
            router.get('/sobooks/tag/:id?', lazyloadRouteHandler('./routes/sobooks/tag'));
         
     | 
| 
       3495 
     | 
    
         
            -
            router.get('/sobooks/date/:date?', lazyloadRouteHandler('./routes/sobooks/date'));
         
     | 
| 
       3496 
     | 
    
         
            -
            router.get('/sobooks/:category?', lazyloadRouteHandler('./routes/sobooks/index'));
         
     | 
| 
      
 3450 
     | 
    
         
            +
            // router.get('/sobooks/tag/:id?', lazyloadRouteHandler('./routes/sobooks/tag'));
         
     | 
| 
      
 3451 
     | 
    
         
            +
            // router.get('/sobooks/date/:date?', lazyloadRouteHandler('./routes/sobooks/date'));
         
     | 
| 
      
 3452 
     | 
    
         
            +
            // router.get('/sobooks/:category?', lazyloadRouteHandler('./routes/sobooks/index'));
         
     | 
| 
       3497 
3453 
     | 
    
         | 
| 
       3498 
3454 
     | 
    
         
             
            // Zhimap 知识导图社区
         
     | 
| 
       3499 
3455 
     | 
    
         
             
            router.get('/zhimap/:categoryUuid?/:recommend?', lazyloadRouteHandler('./routes/zhimap/index'));
         
     | 
| 
       3500 
3456 
     | 
    
         | 
| 
       3501 
3457 
     | 
    
         
             
            // Fantia
         
     | 
| 
       3502 
     | 
    
         
            -
            router.get('/fantia/search/:type?/:caty?/:peroid?/:order?/:rating?/:keyword?', lazyloadRouteHandler('./routes/fantia/search'));
         
     | 
| 
       3503 
     | 
    
         
            -
            router.get('/fantia/user/:id', lazyloadRouteHandler('./routes/fantia/user'));
         
     | 
| 
      
 3458 
     | 
    
         
            +
            // router.get('/fantia/search/:type?/:caty?/:peroid?/:order?/:rating?/:keyword?', lazyloadRouteHandler('./routes/fantia/search'));
         
     | 
| 
      
 3459 
     | 
    
         
            +
            // router.get('/fantia/user/:id', lazyloadRouteHandler('./routes/fantia/user'));
         
     | 
| 
       3504 
3460 
     | 
    
         | 
| 
       3505 
3461 
     | 
    
         
             
            // i-Cable
         
     | 
| 
       3506 
3462 
     | 
    
         
             
            router.get('/icable/:category/:option?', lazyloadRouteHandler('./routes/icable/category'));
         
     | 
| 
         @@ -3582,7 +3538,7 @@ router.get('/vgn/:platform?', lazyloadRouteHandler('./routes/vgn/index')); 
     | 
|
| 
       3582 
3538 
     | 
    
         
             
            router.get('/iea/:category?', lazyloadRouteHandler('./routes/iea/index'));
         
     | 
| 
       3583 
3539 
     | 
    
         | 
| 
       3584 
3540 
     | 
    
         
             
            // 中国计算机学会
         
     | 
| 
       3585 
     | 
    
         
            -
            router.get('/ccf/news/:category?', lazyloadRouteHandler('./routes/ccf/news'));
         
     | 
| 
      
 3541 
     | 
    
         
            +
            // router.get('/ccf/news/:category?', lazyloadRouteHandler('./routes/ccf/news'));
         
     | 
| 
       3586 
3542 
     | 
    
         | 
| 
       3587 
3543 
     | 
    
         
             
            // The Brain
         
     | 
| 
       3588 
3544 
     | 
    
         
             
            router.get('/thebrain/:category?', lazyloadRouteHandler('./routes/thebrain/blog'));
         
     | 
| 
         @@ -3668,7 +3624,7 @@ router.get('/cppcc/:slug?', lazyloadRouteHandler('./routes/gov/cppcc/index')); 
     | 
|
| 
       3668 
3624 
     | 
    
         
             
            router.get('/nace/blog/:sort?', lazyloadRouteHandler('./routes/nace/blog'));
         
     | 
| 
       3669 
3625 
     | 
    
         | 
| 
       3670 
3626 
     | 
    
         
             
            // Caixin Latest
         
     | 
| 
       3671 
     | 
    
         
            -
            router.get('/caixin/latest', lazyloadRouteHandler('./routes/caixin/latest'));
         
     | 
| 
      
 3627 
     | 
    
         
            +
            // router.get('/caixin/latest', lazyloadRouteHandler('./routes/caixin/latest'));
         
     | 
| 
       3672 
3628 
     | 
    
         | 
| 
       3673 
3629 
     | 
    
         
             
            // Semiconductor Industry Association
         
     | 
| 
       3674 
3630 
     | 
    
         
             
            router.get('/semiconductors/latest-news', lazyloadRouteHandler('./routes/semiconductors/latest-news'));
         
     | 
| 
         @@ -3680,14 +3636,14 @@ router.get('/voa/day-photos', lazyloadRouteHandler('./routes/voa/day-photos')); 
     | 
|
| 
       3680 
3636 
     | 
    
         
             
            router.get('/voa/:language/:channel?', lazyloadRouteHandler('./routes/voa/index'));
         
     | 
| 
       3681 
3637 
     | 
    
         | 
| 
       3682 
3638 
     | 
    
         
             
            // 留园网
         
     | 
| 
       3683 
     | 
    
         
            -
            router.get('/6park/:id?/:type?/:keyword?', lazyloadRouteHandler('./routes/6park/index'));
         
     | 
| 
      
 3639 
     | 
    
         
            +
            // router.get('/6park/:id?/:type?/:keyword?', lazyloadRouteHandler('./routes/6park/index'));
         
     | 
| 
       3684 
3640 
     | 
    
         | 
| 
       3685 
3641 
     | 
    
         
             
            // 哔嘀影视
         
     | 
| 
       3686 
     | 
    
         
            -
            router.get('/mp4er/:type?/:caty?/:area?/:year?/:order?', lazyloadRouteHandler('./routes/mp4er/index'));
         
     | 
| 
       3687 
     | 
    
         
            -
            router.get('/bde4/:type?/:caty?/:area?/:year?/:order?', lazyloadRouteHandler('./routes/mp4er/index'));
         
     | 
| 
      
 3642 
     | 
    
         
            +
            // router.get('/mp4er/:type?/:caty?/:area?/:year?/:order?', lazyloadRouteHandler('./routes/mp4er/index'));
         
     | 
| 
      
 3643 
     | 
    
         
            +
            // router.get('/bde4/:type?/:caty?/:area?/:year?/:order?', lazyloadRouteHandler('./routes/mp4er/index'));
         
     | 
| 
       3688 
3644 
     | 
    
         | 
| 
       3689 
3645 
     | 
    
         
             
            // 上海证券交易所
         
     | 
| 
       3690 
     | 
    
         
            -
            router.get('/sse/sserules/:slug?', lazyloadRouteHandler('./routes/sse/sserules'));
         
     | 
| 
      
 3646 
     | 
    
         
            +
            // router.get('/sse/sserules/:slug?', lazyloadRouteHandler('./routes/sse/sserules'));
         
     | 
| 
       3691 
3647 
     | 
    
         | 
| 
       3692 
3648 
     | 
    
         
             
            // 游戏葡萄
         
     | 
| 
       3693 
3649 
     | 
    
         
             
            router.get('/gamegrape/:id?', lazyloadRouteHandler('./routes/gamegrape/index'));
         
     | 
| 
         @@ -3707,16 +3663,16 @@ router.get('/mofish/:id', lazyloadRouteHandler('./routes/mofish/index')); 
     | 
|
| 
       3707 
3663 
     | 
    
         
             
            // Mcdonalds
         
     | 
| 
       3708 
3664 
     | 
    
         
             
            router.get('/mcdonalds/:category', lazyloadRouteHandler('./routes/mcdonalds/news'));
         
     | 
| 
       3709 
3665 
     | 
    
         | 
| 
       3710 
     | 
    
         
            -
            // Pincong 品葱
         
     | 
| 
       3711 
     | 
    
         
            -
            router.get('/pincong/category/:category?/:sort?', lazyloadRouteHandler('./routes/pincong/index'));
         
     | 
| 
       3712 
     | 
    
         
            -
            router.get('/pincong/hot/:category?', lazyloadRouteHandler('./routes/pincong/hot'));
         
     | 
| 
       3713 
     | 
    
         
            -
            router.get('/pincong/topic/:topic', lazyloadRouteHandler('./routes/pincong/topic'));
         
     | 
| 
      
 3666 
     | 
    
         
            +
            // Pincong 品葱 migrated to v2
         
     | 
| 
      
 3667 
     | 
    
         
            +
            // router.get('/pincong/category/:category?/:sort?', lazyloadRouteHandler('./routes/pincong/index'));
         
     | 
| 
      
 3668 
     | 
    
         
            +
            // router.get('/pincong/hot/:category?', lazyloadRouteHandler('./routes/pincong/hot'));
         
     | 
| 
      
 3669 
     | 
    
         
            +
            // router.get('/pincong/topic/:topic', lazyloadRouteHandler('./routes/pincong/topic'));
         
     | 
| 
       3714 
3670 
     | 
    
         | 
| 
       3715 
3671 
     | 
    
         
             
            // GoComics
         
     | 
| 
       3716 
3672 
     | 
    
         
             
            router.get('/gocomics/:name', lazyloadRouteHandler('./routes/gocomics/index'));
         
     | 
| 
       3717 
3673 
     | 
    
         | 
| 
       3718 
3674 
     | 
    
         
             
            // Comics Kingdom
         
     | 
| 
       3719 
     | 
    
         
            -
            router.get('/comicskingdom/:name', lazyloadRouteHandler('./routes/comicskingdom/index'));
         
     | 
| 
      
 3675 
     | 
    
         
            +
            // router.get('/comicskingdom/:name', lazyloadRouteHandler('./routes/comicskingdom/index'));
         
     | 
| 
       3720 
3676 
     | 
    
         | 
| 
       3721 
3677 
     | 
    
         
             
            // Media Digest
         
     | 
| 
       3722 
3678 
     | 
    
         
             
            router.get('/mediadigest/:range/:category?', lazyloadRouteHandler('./routes/mediadigest/category'));
         
     | 
| 
         @@ -3740,14 +3696,14 @@ router.get('/gab/user/:username', lazyloadRouteHandler('./routes/gab/user')); 
     | 
|
| 
       3740 
3696 
     | 
    
         
             
            router.get('/gab/popular/:sort?', lazyloadRouteHandler('./routes/gab/explore'));
         
     | 
| 
       3741 
3697 
     | 
    
         | 
| 
       3742 
3698 
     | 
    
         
             
            // NEW 字幕组
         
     | 
| 
       3743 
     | 
    
         
            -
            router.get('/newzmz/view/:id', lazyloadRouteHandler('./routes/newzmz/view'));
         
     | 
| 
       3744 
     | 
    
         
            -
            router.get('/newzmz/:category?', lazyloadRouteHandler('./routes/newzmz/index'));
         
     | 
| 
      
 3699 
     | 
    
         
            +
            // router.get('/newzmz/view/:id', lazyloadRouteHandler('./routes/newzmz/view'));
         
     | 
| 
      
 3700 
     | 
    
         
            +
            // router.get('/newzmz/:category?', lazyloadRouteHandler('./routes/newzmz/index'));
         
     | 
| 
       3745 
3701 
     | 
    
         | 
| 
       3746 
3702 
     | 
    
         
             
            // Phrack Magazine
         
     | 
| 
       3747 
3703 
     | 
    
         
             
            router.get('/phrack', lazyloadRouteHandler('./routes/phrack/index'));
         
     | 
| 
       3748 
3704 
     | 
    
         | 
| 
       3749 
3705 
     | 
    
         
             
            // 通識·現代中國
         
     | 
| 
       3750 
     | 
    
         
            -
            router.get('/chiculture/topic/:category?', lazyloadRouteHandler('./routes/chiculture/topic'));
         
     | 
| 
      
 3706 
     | 
    
         
            +
            // router.get('/chiculture/topic/:category?', lazyloadRouteHandler('./routes/chiculture/topic'));
         
     | 
| 
       3751 
3707 
     | 
    
         | 
| 
       3752 
3708 
     | 
    
         
             
            // CQUT News
         
     | 
| 
       3753 
3709 
     | 
    
         
             
            router.get('/cqut/news', lazyloadRouteHandler('./routes/universities/cqut/cqut-news'));
         
     | 
| 
         @@ -3787,8 +3743,8 @@ router.get('/kingarthur/:type', lazyloadRouteHandler('./routes/kingarthur/index' 
     | 
|
| 
       3787 
3743 
     | 
    
         
             
            // router.get('/news/whxw', lazyloadRouteHandler('./routes/news/whxw'));
         
     | 
| 
       3788 
3744 
     | 
    
         | 
| 
       3789 
3745 
     | 
    
         
             
            // 游讯网
         
     | 
| 
       3790 
     | 
    
         
            -
            router.get('/yxdown/recommend', lazyloadRouteHandler('./routes/yxdown/recommend'));
         
     | 
| 
       3791 
     | 
    
         
            -
            router.get('/yxdown/news/:category?', lazyloadRouteHandler('./routes/yxdown/news'));
         
     | 
| 
      
 3746 
     | 
    
         
            +
            // router.get('/yxdown/recommend', lazyloadRouteHandler('./routes/yxdown/recommend'));
         
     | 
| 
      
 3747 
     | 
    
         
            +
            // router.get('/yxdown/news/:category?', lazyloadRouteHandler('./routes/yxdown/news'));
         
     | 
| 
       3792 
3748 
     | 
    
         | 
| 
       3793 
3749 
     | 
    
         
             
            // BabeHub
         
     | 
| 
       3794 
3750 
     | 
    
         
             
            router.get('/babehub/search/:keyword?', lazyloadRouteHandler('./routes/babehub/search'));
         
     | 
| 
         @@ -3846,9 +3802,6 @@ router.get('/furaffinity/favorites/:username/:nsfw?', lazyloadRouteHandler('./ro 
     | 
|
| 
       3846 
3802 
     | 
    
         
             
            router.get('/furaffinity/submission_comments/:id', lazyloadRouteHandler('./routes/furaffinity/submission_comments'));
         
     | 
| 
       3847 
3803 
     | 
    
         
             
            router.get('/furaffinity/journal_comments/:id', lazyloadRouteHandler('./routes/furaffinity/journal_comments'));
         
     | 
| 
       3848 
3804 
     | 
    
         | 
| 
       3849 
     | 
    
         
            -
            // Logseq
         
     | 
| 
       3850 
     | 
    
         
            -
            router.get('/logseq/changelog', lazyloadRouteHandler('./routes/logseq/changelog'));
         
     | 
| 
       3851 
     | 
    
         
            -
             
     | 
| 
       3852 
3805 
     | 
    
         
             
            // 亿欧网
         
     | 
| 
       3853 
3806 
     | 
    
         
             
            router.get('/iyiou', lazyloadRouteHandler('./routes/iyiou'));
         
     | 
| 
       3854 
3807 
     | 
    
         | 
| 
         @@ -3959,7 +3912,7 @@ router.get('/macau-bolsas/:lang?', lazyloadRouteHandler('./routes/macau-bolsas/i 
     | 
|
| 
       3959 
3912 
     | 
    
         
             
            router.get('/potplayer/update/:language?', lazyloadRouteHandler('./routes/potplayer/update'));
         
     | 
| 
       3960 
3913 
     | 
    
         | 
| 
       3961 
3914 
     | 
    
         
             
            // 综艺秀
         
     | 
| 
       3962 
     | 
    
         
            -
            router.get('/zyshow/:name', lazyloadRouteHandler('./routes/zyshow'));
         
     | 
| 
      
 3915 
     | 
    
         
            +
            // router.get('/zyshow/:name', lazyloadRouteHandler('./routes/zyshow'));
         
     | 
| 
       3963 
3916 
     | 
    
         | 
| 
       3964 
3917 
     | 
    
         
             
            // 加美财经
         
     | 
| 
       3965 
3918 
     | 
    
         
             
            router.get('/caus/:category?', lazyloadRouteHandler('./routes/caus'));
         
     | 
| 
         @@ -3995,7 +3948,7 @@ router.get('/partnershiponai/resources', lazyloadRouteHandler('./routes/partners 
     | 
|
| 
       3995 
3948 
     | 
    
         
             
            router.get('/commonapp/blog', lazyloadRouteHandler('./routes/commonapp/blog'));
         
     | 
| 
       3996 
3949 
     | 
    
         | 
| 
       3997 
3950 
     | 
    
         
             
            // Sky Sports
         
     | 
| 
       3998 
     | 
    
         
            -
            router.get('/skysports/news/:team', lazyloadRouteHandler('./routes/skysports/news'));
         
     | 
| 
      
 3951 
     | 
    
         
            +
            // router.get('/skysports/news/:team', lazyloadRouteHandler('./routes/skysports/news'));
         
     | 
| 
       3999 
3952 
     | 
    
         | 
| 
       4000 
3953 
     | 
    
         
             
            // Europa Press
         
     | 
| 
       4001 
3954 
     | 
    
         
             
            router.get('/europapress/:category?', lazyloadRouteHandler('./routes/europapress'));
         
     | 
| 
         @@ -4063,10 +4016,10 @@ router.get('/netflix/newsroom/:category?/:region?', lazyloadRouteHandler('./rout 
     | 
|
| 
       4063 
4016 
     | 
    
         
             
            router.get('/sbs/chinese/:category?/:id?/:dialect?/:language?', lazyloadRouteHandler('./routes/sbs/chinese'));
         
     | 
| 
       4064 
4017 
     | 
    
         | 
| 
       4065 
4018 
     | 
    
         
             
            // Asian to lick
         
     | 
| 
       4066 
     | 
    
         
            -
            router.get('/asiantolick/:category?/:keyword?', lazyloadRouteHandler('./routes/asiantolick'));
         
     | 
| 
      
 4019 
     | 
    
         
            +
            // router.get('/asiantolick/:category?/:keyword?', lazyloadRouteHandler('./routes/asiantolick'));
         
     | 
| 
       4067 
4020 
     | 
    
         | 
| 
       4068 
4021 
     | 
    
         
             
            // Research Gate
         
     | 
| 
       4069 
     | 
    
         
            -
            router.get('/researchgate/publications/:id', lazyloadRouteHandler('./routes/researchgate/publications'));
         
     | 
| 
      
 4022 
     | 
    
         
            +
            // router.get('/researchgate/publications/:id', lazyloadRouteHandler('./routes/researchgate/publications'));
         
     | 
| 
       4070 
4023 
     | 
    
         | 
| 
       4071 
4024 
     | 
    
         
             
            // QuestMobile
         
     | 
| 
       4072 
4025 
     | 
    
         
             
            router.get('/questmobile/report/:category?/:label?', lazyloadRouteHandler('./routes/questmobile/report'));
         
     | 
| 
         @@ -4087,14 +4040,14 @@ router.get('/fashionnetwork/news/:sectors?/:categories?/:language?', lazyloadRou 
     | 
|
| 
       4087 
4040 
     | 
    
         
             
            router.get('/dykszx/news/:type?', lazyloadRouteHandler('./routes/dykszx/news'));
         
     | 
| 
       4088 
4041 
     | 
    
         | 
| 
       4089 
4042 
     | 
    
         
             
            // 安全内参
         
     | 
| 
       4090 
     | 
    
         
            -
            router.get('/secrss/category/:category?', lazyloadRouteHandler('./routes/secrss/category'));
         
     | 
| 
       4091 
     | 
    
         
            -
            router.get('/secrss/author/:author?', lazyloadRouteHandler('./routes/secrss/author'));
         
     | 
| 
      
 4043 
     | 
    
         
            +
            // router.get('/secrss/category/:category?', lazyloadRouteHandler('./routes/secrss/category'));
         
     | 
| 
      
 4044 
     | 
    
         
            +
            // router.get('/secrss/author/:author?', lazyloadRouteHandler('./routes/secrss/author'));
         
     | 
| 
       4092 
4045 
     | 
    
         | 
| 
       4093 
4046 
     | 
    
         
             
            // Fashion Network
         
     | 
| 
       4094 
4047 
     | 
    
         
             
            router.get('/fashionnetwork/headline/:country?', lazyloadRouteHandler('./routes/fashionnetwork/headline.js'));
         
     | 
| 
       4095 
4048 
     | 
    
         | 
| 
       4096 
4049 
     | 
    
         
             
            // mirror.xyz
         
     | 
| 
       4097 
     | 
    
         
            -
            router.get('/mirror/:id', lazyloadRouteHandler('./routes/mirror/entries'));
         
     | 
| 
      
 4050 
     | 
    
         
            +
            // router.get('/mirror/:id', lazyloadRouteHandler('./routes/mirror/entries'));
         
     | 
| 
       4098 
4051 
     | 
    
         | 
| 
       4099 
4052 
     | 
    
         
             
            // KBS migrated to v2
         
     | 
| 
       4100 
4053 
     | 
    
         
             
            // router.get('/kbs/today/:language?', lazyloadRouteHandler('./routes/kbs/today'));
         
     |