diff --git a/.github/workflows/updater.yaml b/.github/workflows/updater.yaml index b4b34ad7e..65fd29def 100644 --- a/.github/workflows/updater.yaml +++ b/.github/workflows/updater.yaml @@ -9,13 +9,13 @@ jobs: update: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: token: ${{ secrets.UPDATER }} # otherwise, you will failed to push refs to dest repo fetch-depth: 0 - - uses: actions/setup-python@v2 + - uses: actions/setup-python@v4 with: python-version: "3.x" @@ -25,7 +25,7 @@ jobs: - name: Auto Checking Update run: | - python ./ci/src/updater.py ${{ secrets.DISCORD_WEBHOOK }} + python ./ci/src/updater.py ${{ secrets.GITHUB_TOKEN }} ${{ secrets.DISCORD_WEBHOOK }} - name: Commit & Push changes uses: stefanzweifel/git-auto-commit-action@v4 diff --git a/ci/envs/requirements-updater.txt b/ci/envs/requirements-updater.txt index 5bb8c66c6..977adf4f0 100644 --- a/ci/envs/requirements-updater.txt +++ b/ci/envs/requirements-updater.txt @@ -1,2 +1,2 @@ -requests +aiohttp tqdm diff --git a/ci/src/_utils.py b/ci/src/_utils.py index a0d524563..d89956f38 100644 --- a/ci/src/_utils.py +++ b/ci/src/_utils.py @@ -63,7 +63,7 @@ def clean(string: str, flag="-") -> str: def version_tuple(version: str) -> tuple: version = clean(version, "v") - return tuple(map(int, (version.split(".")))) + return tuple(version.split(".")) def check_url(url: str) -> bool: regex = re.compile( diff --git a/ci/src/discord.py b/ci/src/discord.py index 25b6c60fc..398dbe069 100644 --- a/ci/src/discord.py +++ b/ci/src/discord.py @@ -1,11 +1,11 @@ -import requests +import aiohttp from _utils import * MAX_BODY_LEN = 1024 -def update_hook(webhook_url: str, info: dict, latest_ver: str, release: dict) -> None: +async def update_hook(webhook_url: str, info: dict, latest_ver: str, release: dict) -> None: embed = { "content": None, "embeds": [ @@ -41,7 +41,9 @@ def update_hook(webhook_url: str, info: dict, latest_ver: str, release: dict) -> release_notes = release.get('body') if release_notes and release_notes.strip(): embed['embeds'][0]['fields'].append({"name": "Release Notes", "value": truncate_release_notes(release['html_url'], release.get('body', ""))}) - requests.post(webhook_url, json=embed) + + async with aiohttp.ClientSession() as session: + await session.post(webhook_url, json=embed) def truncate_release_notes(url: str, release_notes: str, length: int = MAX_BODY_LEN) -> str: if len(release_notes) <= length: diff --git a/ci/src/updater.py b/ci/src/updater.py index 86850878c..5a4ef9129 100644 --- a/ci/src/updater.py +++ b/ci/src/updater.py @@ -1,20 +1,22 @@ # -*-coding: utf-8 -*- -from http.client import responses +import asyncio from typing import List from unicodedata import name from sys import argv import traceback +import aiohttp -import requests -from tqdm import tqdm +from tqdm.asyncio import tqdm from _utils import * from discord import update_hook -def batch_github_plugin_info(info: P, tags: ETagsType, webhook_url: str = None) -> P: +async def batch_github_plugin_info( + info: P, tags: ETagsType, github_token: str = None, webhook_url: str = None +) -> P: try: - headers = None + headers = {} if "github.com" not in info[url_download]: return info @@ -26,70 +28,100 @@ def batch_github_plugin_info(info: P, tags: ETagsType, webhook_url: str = None) tag: str = tags.get(info[id_name], info.get(etag, "")) if release_date in info.keys(): - headers = {"If-None-Match": tag} - res = requests.get( - url_release.format(repo=repo), - headers=headers, - ) - if res.status_code in (403, 304): - return info - - latest_rel = res.json() - assets = latest_rel.get("assets") - if info.get(release_date, '') != latest_rel.get('published_at'): - info[release_date] = latest_rel.get('published_at') - if assets: - info[url_download] = assets[0]["browser_download_url"] - send_notification(info, clean( - latest_rel["tag_name"], "v"), latest_rel, webhook_url) - info[version] = clean(latest_rel["tag_name"], "v") - - tags[info[id_name]] = res.headers.get(etag, "") - - return info + headers["If-None-Match"] = tag + + if github_token is not None: + headers["Authorization"] = f"Bearer {github_token}" + + async with aiohttp.ClientSession() as session: + async with session.get( + url_release.format(repo=repo), + headers=headers, + ) as res: + if res.status in (403, 304): + return info + + latest_rel = await res.json() + + assets = latest_rel.get("assets") + + if info.get(release_date, "") != latest_rel["published_at"]: + info[release_date] = latest_rel.get("published_at") + if assets: + info[url_download] = assets[0]["browser_download_url"] + await send_notification( + info, + clean(latest_rel["tag_name"], "v"), + latest_rel, + webhook_url, + ) + info[version] = clean(latest_rel["tag_name"], "v") + + tags[info[id_name]] = res.headers.get(etag, "") + + return info except Exception as e: tb = traceback.format_exc() print(f"Error when processing plugin {info[plugin_name]}:\n{e} {tb}") return info -def batch_plugin_infos(plugin_infos: Ps, tags: ETagsType, webhook_url: str = None) -> Ps: - return [batch_github_plugin_info(info, tags, webhook_url) for info in tqdm(plugin_infos)] +async def batch_plugin_infos( + plugin_infos: Ps, tags: ETagsType, github_token: str = None, webhook_url: str = None +) -> Ps: + return await tqdm.gather( + *[ + batch_github_plugin_info(info, tags, github_token, webhook_url) + for info in tqdm(plugin_infos) + ] + ) def remove_unused_etags(plugin_infos: Ps, etags: ETagsType) -> ETagsType: etags_updated = {} plugin_ids = [info.get("ID") for info in plugin_infos] - + for id, tag in etags.items(): - if id not in plugin_ids: - print(f"Plugin with ID {id} has been removed. The associated ETag will be also removed now.") + print( + f"Plugin with ID {id} has been removed. The associated ETag will be also removed now." + ) continue - + etags_updated[id] = tag - + return etags_updated -def send_notification(info: P, latest_ver, release, webhook_url: str = None) -> None: +async def send_notification( + info: P, latest_ver, release, webhook_url: str = None +) -> None: if version_tuple(info[version]) != version_tuple(latest_ver): tqdm.write(f"Update detected: {info[plugin_name]} {latest_ver}") try: - update_hook(webhook_url, info, latest_ver, release) + await update_hook(webhook_url, info, latest_ver, release) except Exception as e: - tqdm.write(e) + tqdm.write(str(e)) -if __name__ == "__main__": +async def main(): + github_token = None webhook_url = None if len(argv) > 1: - webhook_url = argv[1] + github_token = argv[1] + if len(argv) > 2: + webhook_url = argv[2] plugin_infos = plugin_reader() etags = etag_reader() - - plugin_infos_new = batch_plugin_infos(plugin_infos, etags, webhook_url) + + plugin_infos_new = await batch_plugin_infos( + plugin_infos, etags, github_token, webhook_url + ) plugin_writer(plugin_infos_new) - + etags_new = remove_unused_etags(plugin_infos_new, etags) etags_writer(etags_new) + + +if __name__ == "__main__": + asyncio.run(main()) diff --git a/etags.json b/etags.json index 3b27cefb8..6d611c8d3 100644 --- a/etags.json +++ b/etags.json @@ -1,114 +1,116 @@ { - "176690627AB54C8381A7FD99A3519F42": "W/\"44077e921a1c960780aeda0f2e345bacf324f5adad06222d004d157cba3e12d8\"", - "c3406b5c-22f0-4984-b018-3dae897cab3f": "W/\"38b84935481e0721b9d5ef0c1788345950a8561ba2269ae9531df30750d7ad86\"", - "SY91U1N7H9D0X1DTZ8IOP4YV43KT7C5M": "W/\"570db883c7a250b29a8c08a790c32a699b6cf3adae606fd74e4c61dfceefb0fd\"", - "8025ce8b-b1ce-49cd-af48-b343a0df8606": "W/\"191f8e4b564d4f4eae3848f1951c9fdb77226a07ed6de01f829929e42d637a24\"", - "F737A9223560B3C6833B5FFB8CDF78E5": "W/\"5b3a3d96c7c66a63077e64722f8a58e0c465e0d9562f0f25686c460d5f777f88\"", - "9B36CE6181FC47FBB597AA2C29CD9B0A": "W/\"0bebff0f9ccd57372681945afd97929e6c1848efca0f1016037b5597effff4b1\"", - "18892B7863AC43ABA27859A5A2866DD8": "W/\"693587f34511a59eb690851a41dbd1873770051c87f7c9962b41cb7dc6d60ae5\"", - "E2D2C23B084D41D1B6F60EC79D62CAH6": "W/\"95d7fd57e9367243b02810fd4cad44d45da4a4cdaeb59fe32a8a744e9a76795d\"", - "D2D2C23B084D411DB66EE0C79D6C2A7C": "W/\"64004b7fa7c5c919dddfdd7f84ded03c20a7c2f8c860cabd90ea3e964850f7d6\"", - "54A6672C06E047A48A7D88C78FA5F13E": "W/\"017b0ae8eb0ae64d081bec9135b8f2ec0252540bd54919fd6dfbe535c63d1bd5\"", - "81b8c8c8-72ef-427c-a9c1-17cf8f1c766c": "W/\"ceaf1564fa9c32cca412bd0ae26b01dbf43cc3077af3a40760523d4df243e038\"", - "F71F6EE367D34BAFB681A9287ACF59EB": "W/\"1a2d7aa427ff95ef0e693d47e3f03c6caa2a9c46d9ecfa26f6a075176274cf9e\"", - "5B7E53D506844D2D8B7001AA19F5EF8F": "W/\"104f35da4175bd83005da2c09f38c2f210333ba422dc99ac37d1bd7a154f2c1b\"", - "1b7c732781f94b748ed08351f8200894": "W/\"2806d900514df88958902702a36acfef2b73614393b1bf25776467b033845bd2\"", - "6c22cffe6b3546ec9087abe149c4a575": "W/\"afb19fc828c0e42b56dd05981e3c633ef0594ddb0263418bfcd1d7413f6a8a5f\"", - "b9aaddfa36a948f384b31b4fb6186861": "W/\"2883de9fd5d048abf9e798908b780f826ebc8dc077089d9e7dd782bf54faa8d2\"", - "5403b2dc28fb4327aedc9f8c872d9d1f": "W/\"1ba2c1d2dc68b9697abe37a2991cc25239c735e762b3e8d62f92a6046004af2d\"", - "FF2C31D6A47348FFB9ED4EB26F6794E2": "W/\"fb799acebc9a93b74a4048975e3a1040168aad74d139d58dfb44436e8b7ca3e7\"", - "84ddc2a6d43911e8a8d5f2801f1b9fd1": "W/\"b785e93ffc3bf8da7144372e638a46abb41801aee471912d0e619dfd67c09c8b\"", - "73f2c04d-176a-4586-9ff5-69fae63321ef": "W/\"dd75356e52828d2ffa7be46a4172a1562c79de895d0da885d0f3aca21764f06c\"", - "B2D2C23B055D411GH66FF0C79D6C2A6H": "W/\"cb4010652724c973b52c2c199f07c00cd6cf2afa99e8a2321119e6e456a6ddf9\"", - "28b1bc8d-06e1-4bda-8311-f36e8d4f9915": "W/\"b12a67675fe351767c0308c439124ce274ef3c082c1f6890a8184600b7c97c5a\"", - "8G5CDC9A78EF4A7E667E138F1FC04015": "W/\"c9af48ebe9e5ae00230ab88f1857eacd0e05e9fce42161ceb4f4e8ec3090962c\"", - "32D9F15C38EE400EA7E3DF57DA15BFD5": "W/\"c52573ebf7e5e30ef765a1c2996be02b00ff0ca667c32c6c81c92d757d2736ad\"", - "4D5DF575E4964C6AAADCF86134F09CC0": "W/\"3b09098be337b42249b94f2404633a52fb8cf0081c082390e1cbecb098a4bcaf\"", - "477F16413D374364A4D5D36DCE68ED45": "W/\"0e7928ef7674cb43546fd5f6437e36c8ea14b95a552bbcb24754d753901cbbdf\"", - "095A6AE3A255532EAAD78F05A71D4981": "W/\"d7bce88f61bef6126a80e333cdf5b6a978ab2062b7ceb6fe80c4b0828da6c4d9\"", - "3C62514E3C8644D583E3F12202F11161": "W/\"1f2013e28772cc22521f95eb218580951f78db9813a55d93079f62bc2c8d429a\"", - "D0DB38F5-0199-4DFC-8A8D-1B22F68C157C": "W/\"95cb1c11bf24ba84344be96224bbf5ffb629db7fb36915cfbd35fe412f577c62\"", - "d6675ca0-9da6-4361-8342-95564214cd04": "W/\"05114c959305ecb9aedd648f7c072ceeb752495c8d2ed397a54d7b7922ee579a\"", - "C7E78C47FA5942E4B7972EAD844F5007": "W/\"89a0ac28e7705fda7aa78fae14e04c334237e3fa5959a8abca4e598cf1ece511\"", - "4F31D5DF26984581BDF4213D40860ADF": "W/\"34b04b5d66ee49c8c834abf6895c14030aa08675657dbfd1f5f810b4d65fa71f\"", - "747F1A93B6D24CCFBC433BA2455B3BEA": "W/\"347343bdea6a352e3ff4db8251d0ae8f4d140a4daa3b6e2694cf8f6d5f586cb8\"", - "A4A92BC0C742463187E5CCBA9B849B86": "W/\"7905762bcff38e4c2df5642309b7275ce76c6244df8059e55cf641c977eee23c\"", - "427af2d93887868f8179665uy661c6c3": "W/\"35712d2310ed05379691d6b16056f177b23d9e7af4be3d5d01394557c909b599\"", - "F32C0CF0270944AFAC9298BB67E16292": "W/\"1113ad07e28003f1a33bbaf7fcf4d0014d60628217d3eeeedab877b161239543\"", - "525995402BEF4A8CA860D92F6D108092": "W/\"d818d70775e73f6c2d650434f6c077afa266842a99843c2e644dc7edd40e6cac\"", - "2f4e384e-76ce-45c3-aea2-b16f5e5c328f": "W/\"5246498edfae8d817d59ee9f516c907d7c0e883bcfbd6c4b899b7ea461365e86\"", - "02D91372A4C9429B93BA6365E38FBD4C": "W/\"bb86668c8f0b6b64eb2e75ddfa45103520c1301e573176b5b40e000e9826c6fa\"", - "F0DC45CD032F438C9B900679BD9B117A": "W/\"f529be2b0dc62ff61a10d34fcc564a4167b1bc7d13b21d5b5e06a3658398a1a4\"", - "51F9B93359B24716BF9D7FCD1CB075B6": "W/\"2fbdd34252f22bcaf1c45df53386f3ca7ab2aea6b0235214248b0eec2d599084\"", - "625A2812D5364D708582FDD9ACCD8C93": "W/\"a414a5b7b24111c298a6459c21632ff0a0456a351d240073e5f571e2ddaae323\"", - "a56ae6ac-7b3b-47b9-857f-05ff25d29510": "W/\"be1618d188c787b190e1914b235e12de8c6dc0ab53c1d6bf4ca03970a64bb0d5\"", - "9B66F9CD1BF54CBBADCF1ACB378E33BB": "W/\"043909260bdfbac84fe070416f36b54dafbffb4ef733bf8bbb22b6e120f48518\"", - "240B648F33DD4105800747A2749E1B5C": "W/\"134b1256ab08fc061831b0a0702a240b12ee0ae7aab9932516a0fa0d05c6ac52\"", - "898FC7F0-4F38-401B-82E0-A852798C2D59": "W/\"a8e2ce1121c4ef98f863e8b4c10e8c3c1b37d15d26ed83783b3673a361d97626\"", - "a9b5753e-21a6-420f-9dc9-b67ce94ae1e8": "W/\"4924b58d7101552cc6fb5f9cc775b59d6cec8c1e5bce76461e0086b3d9aa798b\"", - "258159A0D7A64C7A931CBBD8FB3A6FA6": "W/\"45cc47e72127a46e7550079db48398796527abf00bad57380ab6d338f76234df\"", - "62A7E77D5AC84177AF902C4A5FF10603": "W/\"b4bed9e8445e670fa9c7b89acf5743ee0b5d8af1725d57685c865adb3336babb\"", - "915f45f7747440f7828621bd8ec0f298": "W/\"badac8badad44474c9a294a79199ff4eaf6c816d5195a211b5644e5708b22422\"", - "F6B8C1BC8441496798D2CE2BADB0E95E": "W/\"e69fba178bf3c34611b933cbbc4fa03fdc1dc50e1c02091f0f7fa384985de477\"", - "76148ECE-AA72-4C68-AFD5-54BA8A3C1F61": "W/\"2f9f72e12acbb254c29d8e0184ffdf60e8559838ee22d40b8ac5d21eb6cb4ca0\"", - "42DE0794627A48B2847E6FDF29DD5561": "W/\"7878a96703f1ddb7d63a5c1cfcf2288dc68fad6a26d8ac778db734752d7cbabe\"", - "B75F7BE9E8B544FAB7EADBB581DB7C7B": "W/\"8be799535dd783250b715e7686b6f51a1e53176593a7f104c64ab5ad76097464\"", - "6361A46C-D08C-49AB-AAA4-D19E1F2ABA0D": "W/\"1dfaa657316af68ad49569a39a71426822b7cdc0ae542f8b963109b05b9960b5\"", - "5C36ECBD-629E-412B-8DD3-2457EE7C522B": "W/\"2b8e0a17718c1263a646b3189f32c633de1abc86f661740e992b7ac06b42c08a\"", - "CF8389C7-61AC-4387-93DE-370B31BD07EB": "W/\"ceb2b4a3dcf64e894ee1cfcb9b7107c90f3861eca0dba1f7b45fac59c99baaea\"", - "D87F82F1-5A19-46CC-B5CC-50430B2F77AB": "W/\"55ce7f9a4414a5df90d0f8143a74ab76b42af12fd87612094158a1ab1211e455\"", - "62EE2B99A29740B2A8CB6B58D067DBD2": "W/\"19c9a3875f11115665d431627ae3e3df74c3149030a97e59d034fa3e8113ac4e\"", - "B9B8174812E4474D96C148317BE2BFB7": "W/\"9f65fc51ac5ad026415c980661009e38abca480dbf4c5b889bda1a22ce2a3170\"", - "90170ddfd94a4c188bc5ff2e3690d0ae": "W/\"2d21416fd5271b3cfc5ef2c0bd577de960774048da2fed496f12eb624c2e88c7\"", - "6bfc4672-5550-4d40-b2dc-53093a2417a0": "W/\"d5d539aece5270718b6a3ce2c0f1e010040ec7bd2de0b7a6800b57f60ca1181f\"", - "3b42afc0d17f45b98a55e324728252be": "W/\"ebb39742d352f9b05ccf31b9a33cd3f759a1212e852f6a7d5f7e90e9d0a43268\"", - "5A1E2AA6-1C6A-4130-990E-973FC5795D87": "W/\"0b1a22840191338f6a2e59b9c14791306f78cc3ebb3bfb9929f2227d81a06d2b\"", - "1602DFD6B9F843A3A31CB9AD5561A9A2": "W/\"caf44572c422c6bab0ac9cb528b18f9fa0c58432287e8106eeaeffaafe1d5cc8\"", - "68B179AA-4E80-4080-AC68-CC922CD2AE60": "W/\"bd43cc24dd3966041ea95c92b6ceb5eaf9a6e94c25e0cdf400c13e254132bd9d\"", - "F229B92B-C4D1-4A87-B05B-A96ACC486263": "W/\"fe9a71286f97dbc29e993f1f5cf738760eb02d3df30ba388d50700e92cb42b42\"", - "d91d366e4ff742b3b821f9d60031c3df": "W/\"b6346d9434316b1c3ab7e06e0d94cd5058f614e186fa2fd4df83e964e46ade53\"", - "188b0b5c-159b-11ed-861d-0242ac120002": "W/\"6b1d1f21ef6ae2045af031fee7ccb189ce5d47f5f6f60e7094a8f81795cf5470\"", - "1e87e4c90c8e4daf9eee182d7c023919": "W/\"79dbf2afba5f0eb2edc7107412ba10cc7913de401bcca9421346092286d847df\"", - "7bfc4332-55t0-4d40-b4cc-530889g415a0": "W/\"7e784ec32699cf7c0ff1d1c05ddec9d79a4c5459786711c9ba4d59af522a564c\"", - "F03364BE-101B-4988-B555-528B961E6A86": "W/\"ca50236c1c26e820c4e147fd26cac7947daf44ab20408ffc338bca9e91da1382\"", - "F8775498-BD72-4ECA-893F-B33863D81CB5": "W/\"757dbf6cda14627e9e06a75279071948b0b62a0ab92cb74bc8b5201f687e63a5\"", - "84d9d550-80cb-4e5f-a090-e1ccf3237a40": "W/\"4a566f2167d6b55f416b8650ebb56b2e7b1bda7d58dffb57f84b8cf4546d06d0\"", - "D738C474-9262-4B94-B58D-0413ED8EB9C6": "W/\"d71c7d49fa8d18964155612b6e06cbfdd9b6735f2d3da3ea9000abe892b91efd\"", - "5423df3c6dd84fc5ad3ca1bfadad872dfca307c0a013d116dc3e8bed60b8ca5b": "W/\"d61e95180118f3ee15429b60d7acf02dbab516769bd9ddcba1c867a008c9079b\"", - "4e2018ca-4ed0-11ed-bdc3-0242ac120002": "W/\"fdabdfdcd053d5c8992172dca05bd40439fa29a0c8536ef0a4ab4038206c74c9\"", - "e47fca5f-4305-4c14-9928-57d2c319d78e": "W/\"3dbf9d70941e1674c8a60ad23b6b8237f2249ea6f3f027d888be7515affb7825\"", - "f823a07e-7191-11ed-a1eb-0242ac120002": "W/\"6a97fb4bd500181dbc61a5d39cd14589544fb7c110375ef7b91cd83b12d380e3\"", - "32DD22C2-7E7D-4A49-9032-B57046975824": "W/\"b7e06157e4f02bb688b0e1225c86ee2ad7e995f4db6e005cca8f7ab213dd3fd1\"", - "14b986ef-45ec-44c1-be66-cab460a771f7": "W/\"175d69d050b240db6dce71cdb12ce8d2eebadf46eca0e13079688bc31d9eca72\"", - "91B97FA34859445782AEF1893DE4E350": "W/\"5558a756d774286be1f345ca601c3f3b6870284ddf1873605a2cb14e4d4e9ef8\"", - "C04175CF5284406DAA9E30A85EC7DA76": "W/\"b084990a3c5bf46c3307d9c4e986fa333fd368f7b611ea98ca63931f341fa8ba\"", - "506B2EE8-4117-4BDF-8F00-DF58498DF922": "W/\"2f25910c1c6bf06de93a211aba077464938ccb7a12901305a662045e78946169\"", - "959A3FED8292422784F7892F7FB59DB1": "W/\"f580ecc9f71ec83b818b01b0ac266e7aadda568f38856a876e18954801ef1c6e\"", - "140f3da0-7d14-4b20-b897-b4cb155fec2d": "W/\"f867defbbc3593ec090929e513053f75d5cc43b381085668c3349d3d6b3344e1\"", - "29d4e311-eb40-4943-bc94-9b733fc307c7": "W/\"7276653e035e64503ba5d18d8d3a3ac51e1c8c055cdc852bf8e6d4f9d16c3eb1\"", - "dcbb0454f0694431944b1b7f18673a54": "W/\"dded208579e3f0bb010fad87646b102757612cf42fe22c3176394a0c8aeed7f5\"", - "E1E3DB9C-632D-4187-A5B4-EED6E09CACA7": "W/\"73ce840750bd6f8bae2282b9dbdaa8866334d78635c13a8115ddee54eab37d96\"", - "5c221cee-07a5-4e4c-a669-a0e0f7486c65": "W/\"c4158d5d3d2bd1d14839206e1124bf59ba0a84f3e687dcdc5c42bb465bd5ee66\"", - "85eb90ff-b92d-476b-bae4-3d71398e61f9": "W/\"8c8dc76b19c91176327088bb9db14fb8fe8447717e5a28a8408c36c341b7a910\"", - "df432fe0-9ff7-4ba1-b0fd-5ffd26efbf86": "W/\"2c2952174ada351c9b19831bf35bf496d8abf9838c5b0e9597a596f2574a1748\"", - "E5E5A4BD-39C7-4B41-93F8-0D4850BC317C": "W/\"7df2eae80f9c7961cd07412fd8661989b896f52c86a78b9b475612b9e96af688\"", - "2972879D-1702-48A7-BA50-CA8352A6AA74": "W/\"1bfa9a9790083ca947d95d52a574499ca69f1e38bfe973af3e01cd1b305880b1\"", - "08AF784C-A014-4A03-822F-6C2F3665A843": "W/\"c427f33b3e76e7968b75f91923e5d458652b4baf5ac0f33c695e66cc4e8a8780\"", - "5DBA462B9AB77AC5DC158EB5047367F0": "W/\"c0f6b9ccd5b099be936b8a835d6bfd0f34b4d4c073090b1ecf42e08e30fcb6c0\"", - "ac0201cb-6610-48dd-9c60-e292d5e3a3da": "W/\"27608ffdcbc0815b6d74e26cf0ed0aee1b3fd5dab55f254f9f395c52ac546a94\"", - "963cdb07-9143-41e6-b77b-14391e8344d8": "W/\"3067702337277c7df5b68657b1f0f747db7eaa7b908d25ef67f58cae53272f70\"", - "7CCD5CC94597483EBC3F179A69511D5C": "W/\"dc3761e76b2caf5b66779718c220610aa87dc92694d9fbee58c5beb0b6477423\"", - "763D015F571C48E4ACA5EF5DFD0BCA30": "W/\"88e4dc8456b3ba26b66aadf35864267fae079ba627396af532edd5265215c0a4\"", - "75894EA334FA4C10AC16E28BC4616C4A": "W/\"bc208db192595497b33d3483f0821a6e0c2e24e89382f4deface8834db3ce4de\"", - "725660A1CB3D4FFE978A8B477EB376B4": "W/\"28256495a413ce1f8a4ad00e97166b6cd13ac392b05363f80274575410a5df51\"", - "735A3608B5D240E5A44357CCF852E329": "W/\"0dd999e9f025984a842b1f0e8b209959d4a27c12776a6adacb4aa74128cba1a9\"", - "01B8703D-13E2-483D-BBF9-603425628151": "W/\"8c90616aad25b1528404f08f42946b704ce9fb239977e60708e5e3bd4f9b581b\"", - "77435DA907472F189B759F9F4F3E3C23": "W/\"45320b4185b8fd7d16291694286ed9288cf7fcff93a354f398429454f3ba3f98\"", - "78c1bfc7-044e-46cd-b920-9e0ae0e7f234": "W/\"92a8b195389845a7f5cfd6ac9dddacbc1e5a46197b0cd03b84bc8011cf52ed33\"", - "72E67DFE0F6F482395AF3CD0A3BC6F04": "W/\"310e6597522ff6421dd31809964b1211b05324df7193a886b86fddcb95a0d6f9\"", - "7d2d209d-5ab9-42dd-ae9b-2487b57ff569": "W/\"0fa7da8788067af6e324699874dc67948813ce0d44a7ef9d67c82765d9d5cb20\"", - "8533B2E5632A449F916D3658EABFB595": "W/\"9257b4c94efc4b42c7b3198fb0730fee07449b5b86064e31e61b48c40b825315\"", - "dff48291-c333-46ed-8784-115aa85acb4f": "W/\"1c4717ddc7eac3b5d71f19b90038561eb4cc1da54e8d5a98b7d47d448cb03acb\"", - "467A8D7E-0DC6-F0C8-347C-BC4B315C397F": "W/\"3fde01ab3eb260bc04490d76dfa0c0389fb482a7f08635a46b40c28cf7a96494\"", - "661D020D-4E0B-414B-B12B-58F795A20D79": "W/\"81edb80765c9cd1b6a3fa673f0c1a4f9fff43e6e8d552885126335952d079b21\"" + "176690627AB54C8381A7FD99A3519F42": "W/\"54e229f183a35dfd07d6c0ae8b674588d602899d02498ab132468f763f795c5b\"", + "c3406b5c-22f0-4984-b018-3dae897cab3f": "W/\"14832bf4a9c85eb3952ca4ddeea5bdce9846377ffd2a0e2512a306361d499041\"", + "SY91U1N7H9D0X1DTZ8IOP4YV43KT7C5M": "W/\"ebb169c57d7d0a2684418f4a16800feae9a5ee2326a7e1212afabb68a8fe05db\"", + "8025ce8b-b1ce-49cd-af48-b343a0df8606": "W/\"5a6d9a2f7396bc2a43a2927024fa06a4fe1c34e5fa3a857b036b3bbff76a1330\"", + "F737A9223560B3C6833B5FFB8CDF78E5": "W/\"297489b67121f204f55181025f2d562aae1349c591e341af653fd2887b76d038\"", + "9B36CE6181FC47FBB597AA2C29CD9B0A": "W/\"79ed529b541768c0c3613149823936953d27de69e5c83c0735c2d07b0b835930\"", + "18892B7863AC43ABA27859A5A2866DD8": "W/\"fd3b2ebe6cc4a6db2b717e65fb7ef1c87e0a0697e8332b2d4bed6f1ac1ccdf48\"", + "E2D2C23B084D41D1B6F60EC79D62CAH6": "W/\"9e68f0f618359785cc6d0030b5d61249f57dcc738027ac9b4e2ce6b25fc04356\"", + "D2D2C23B084D411DB66EE0C79D6C2A7C": "W/\"d0d2ed114bf045b396604d7db4ab9b9962cc478704ff4a5b173bfe5d5aab6bdc\"", + "54A6672C06E047A48A7D88C78FA5F13E": "W/\"f9628e32150e0ad19f02f31be474da4964f8cff2c84a805ffaf89b1775fbf9c5\"", + "81b8c8c8-72ef-427c-a9c1-17cf8f1c766c": "W/\"fe80ebe2bd3d24e6830c97e08b4a5603ef1e7ad5890457a8fb5bd1e127c3a5fd\"", + "F71F6EE367D34BAFB681A9287ACF59EB": "W/\"a2e60f47c79c713db778f7e9b164ecb11ce1fcd66d655bc8f0661b4b03b7087e\"", + "5B7E53D506844D2D8B7001AA19F5EF8F": "W/\"ba0c95a43664e186aebb8603bbb2be6a277914493994072256425a9942f14996\"", + "1b7c732781f94b748ed08351f8200894": "W/\"522190b0a7da0075a5b4903cd4d85159ae00ee8731b8583fed03dd53d9df0029\"", + "6c22cffe6b3546ec9087abe149c4a575": "W/\"e9946e61f4b8bd05474c81022331909d7a72593b4ec4ebcfde485cb2288be100\"", + "b9aaddfa36a948f384b31b4fb6186861": "W/\"bbadbdcd9811b9b5c47bf56d47645a9a6ccf576907460e8863ed5c677fb4618b\"", + "5403b2dc28fb4327aedc9f8c872d9d1f": "W/\"81a790a1359732d336680ea9d2f2a87cd16d2236e181bf5f3f9c6203eabcbd0d\"", + "FF2C31D6A47348FFB9ED4EB26F6794E2": "W/\"25a62fe6af050606a2567d63f256e101c8406393b754f35c1a67a1cda27fe65e\"", + "84ddc2a6d43911e8a8d5f2801f1b9fd1": "W/\"72e410f45cb8a730b22493b3f0445ecab999d89185f06b3023d7afcb1e8d754b\"", + "73f2c04d-176a-4586-9ff5-69fae63321ef": "W/\"667f414c82f949bc8b54e4f50fbb24ebac1921930246977ba2429181ed283009\"", + "B2D2C23B055D411GH66FF0C79D6C2A6H": "W/\"0fb6b5c98d6d60578823b8311b8ab573e0d3730aa82cad36667e54128652a77f\"", + "28b1bc8d-06e1-4bda-8311-f36e8d4f9915": "W/\"63121aeb2d8cccaa670b98ec8696fa006813cc2bc1ba03438c6c24e71703d22f\"", + "8G5CDC9A78EF4A7E667E138F1FC04015": "W/\"a1f1ec78eda10281cd9108e7b58d309f97de341cf6a6bca92b257a3b7eafe006\"", + "32D9F15C38EE400EA7E3DF57DA15BFD5": "W/\"44b7e95225169bb67813806739ba399ce3cdc65665d98dc0b55e771c179f1096\"", + "4D5DF575E4964C6AAADCF86134F09CC0": "W/\"7994df696f4aa3fed8efffcab3674fc9104b4a497134890e424b777f7478feca\"", + "477F16413D374364A4D5D36DCE68ED45": "W/\"b6f6c57a92ffe537a6743e513f59671078246f92fe9ec6a98d8c174cddb6cbd3\"", + "095A6AE3A255532EAAD78F05A71D4981": "W/\"580d622f702fedb9db7940a4fef532ee0478a8e29e49338b90fceee0d2381e24\"", + "3C62514E3C8644D583E3F12202F11161": "W/\"e3ff9dbd6e5a03efc20789c61e58238eff100412f1efce0855ac5d14a2b84964\"", + "D0DB38F5-0199-4DFC-8A8D-1B22F68C157C": "W/\"def3911d2077f0fe380a6437cc5ef487246ade472b5c1e273a5ff46d351a0ae5\"", + "d6675ca0-9da6-4361-8342-95564214cd04": "W/\"8caffc752886a6defeb17aa91bce8c7045e3671608162acffe1c99eb78d77ff2\"", + "C7E78C47FA5942E4B7972EAD844F5007": "W/\"70511ccf24a583dbdd65f2c4be94f66c395f0ca9339ebdb9cb0d1ad1145243f0\"", + "4F31D5DF26984581BDF4213D40860ADF": "W/\"bbe8dbef55f68fe44bee08d9191ac26ef074e6344fcac685cbbf34f5c4fc3451\"", + "747F1A93B6D24CCFBC433BA2455B3BEA": "W/\"5282e2c61572829eff9abe9691622a759e2a55655b2ae01a5b18840fecb95c27\"", + "A4A92BC0C742463187E5CCBA9B849B86": "W/\"58f69b152601fad766606e29fb2e6da9b775e74c32f465c2d6fd473af1754ac3\"", + "427af2d93887868f8179665uy661c6c3": "W/\"785c333dd4357ff456df259b6efb35865a503b9390d4b854456d8d21220972da\"", + "F32C0CF0270944AFAC9298BB67E16292": "W/\"8cb3c2dce6d6b7a8f5c8e681db8a065f08623c496a9aa32a923ba602cf4b5bde\"", + "525995402BEF4A8CA860D92F6D108092": "W/\"28156e87f8bf913da167a7c84c76d5b56a64ecbd141833cf8392128ebe314188\"", + "2f4e384e-76ce-45c3-aea2-b16f5e5c328f": "W/\"3401564468487ddf7e8d21264649af466bea83ebff73d18b5a56221878537bb4\"", + "02D91372A4C9429B93BA6365E38FBD4C": "W/\"370c43511cb53ee6494d5291858c37a404ebec9d026ce966e77ac8badc27d4c0\"", + "F0DC45CD032F438C9B900679BD9B117A": "W/\"f16e641ed75eebef6ef46688bfde8da210d5d9dba5d5b1fc07e9923cf9b04c36\"", + "51F9B93359B24716BF9D7FCD1CB075B6": "W/\"afb65c800f1517da67dbbe1a0679f6ce15290b203e014168ea53f9d7bfa6e1c5\"", + "625A2812D5364D708582FDD9ACCD8C93": "W/\"8d4b1f7bbfb772818f2ce83a1969045083da62a430fa74a32a36e72ff85dc383\"", + "a56ae6ac-7b3b-47b9-857f-05ff25d29510": "W/\"46346751623618cfc58c6113a0a38a1c5531bd7ee505b5a0890ec8fc80d69b93\"", + "9B66F9CD1BF54CBBADCF1ACB378E33BB": "W/\"a96e0ca44c3bcfcd76e050ae6fc5e2514113e2183caa11391902372c1c2f9686\"", + "240B648F33DD4105800747A2749E1B5C": "W/\"c9ca44e2a1e031e0e3bca7449cab1ef902b3d6cf784e804a88ec95cb9e62f447\"", + "898FC7F0-4F38-401B-82E0-A852798C2D59": "W/\"aac2de4cbbefbf9fe639df45e204288b6df4ebc2eaff673f385f5bfd708fba5a\"", + "a9b5753e-21a6-420f-9dc9-b67ce94ae1e8": "W/\"e677cb9a8bd4208678b2b3d7fe0969a77430ec6b03e441861dd05d44ff38820f\"", + "258159A0D7A64C7A931CBBD8FB3A6FA6": "W/\"c0736092ad3d2b2ff962b8cedb8f8167e16d0398467c201ca6cdc7275ea2da85\"", + "62A7E77D5AC84177AF902C4A5FF10603": "W/\"2e514303b8c20e519484eac678dcdb1082b02e33126f48a033fa17d9c163fae2\"", + "915f45f7747440f7828621bd8ec0f298": "W/\"05b8afc5ddb5f32082e25c8cd983128f46210bf14c70eeb29df87773ca853597\"", + "F6B8C1BC8441496798D2CE2BADB0E95E": "W/\"bac7729cf5b2f1b1c629c879bb55872f23bab3555a5306aa57d4962dda1f5c4e\"", + "76148ECE-AA72-4C68-AFD5-54BA8A3C1F61": "W/\"07d8224e22fcfefed5b51fa8ef71db86fd5e619ed4d5d362c2860c267e1be0ac\"", + "42DE0794627A48B2847E6FDF29DD5561": "W/\"7cd8f083c039ed887891ad1e8fff2fb92d719c912b6071cdcf8ad2cc908aa950\"", + "B75F7BE9E8B544FAB7EADBB581DB7C7B": "W/\"14349fa73ce84ffa457f117c3aa2bf906753ba252e9b6dd39926ddb01fce57ef\"", + "6361A46C-D08C-49AB-AAA4-D19E1F2ABA0D": "W/\"98b9a8a0df5ec85fc8ac1aacfc9bd7b531fbbaf1fa4f5c4aea3176fa31177998\"", + "5C36ECBD-629E-412B-8DD3-2457EE7C522B": "W/\"7da383e1fc94eada36fe8b9c153dbe800014dda841916d6a5188485211a8ad22\"", + "CF8389C7-61AC-4387-93DE-370B31BD07EB": "W/\"44908f2ecbe9f68555023de3b720d9aca64e9934f27a9ca1b3458afc945ac18f\"", + "D87F82F1-5A19-46CC-B5CC-50430B2F77AB": "W/\"c4ae84b4cac52987c1775b3c01f49c6b01687666af7da8bb008dea1a8964ff8c\"", + "62EE2B99A29740B2A8CB6B58D067DBD2": "W/\"f0b1e19f600558f3dafa1a34930f2bcf8dc2a45fd323da5c5d9976b7628d26ce\"", + "B9B8174812E4474D96C148317BE2BFB7": "W/\"15b78d4824fb98fa8cc8ac49421201bf07c22d10a6683f9d968d6b61fff5c8ab\"", + "90170ddfd94a4c188bc5ff2e3690d0ae": "W/\"91f1b5a8d971e26bd08ee4911e116f1e7a7080d1c2d85b9580370cf0d4fc9cc8\"", + "6bfc4672-5550-4d40-b2dc-53093a2417a0": "W/\"a11cdd9e23a9c4bdca08ea8c21b451712b4ac788bd6b1cc76f9a31bac01972fd\"", + "3b42afc0d17f45b98a55e324728252be": "W/\"db931e48807403f84b24a6ed0521fcbe3a62dd2eea873830c5769521e5839036\"", + "5A1E2AA6-1C6A-4130-990E-973FC5795D87": "W/\"7aad8efb31a88ed7539c173ddd2add1806c8b872fcd25be11b721ed240c69e40\"", + "1602DFD6B9F843A3A31CB9AD5561A9A2": "W/\"243fdbda38e2446e4064d80f5d4eef7112536dce97a0753e87c69851a9045492\"", + "68B179AA-4E80-4080-AC68-CC922CD2AE60": "W/\"3bb7283e0c2edc93c4297f6f5055f7ea8707ed726daf030a3a5e45ee6a5b0f38\"", + "F229B92B-C4D1-4A87-B05B-A96ACC486263": "W/\"da4fc5d9b05c93c565dbd928632ffff582f175d923c09132384ca9ed02764d47\"", + "d91d366e4ff742b3b821f9d60031c3df": "W/\"e3fa7b5118cda0f3df1b7d7d3172fbe5cba4d9d1e2f1cf4a84bf5b5606c08ae7\"", + "188b0b5c-159b-11ed-861d-0242ac120002": "W/\"54f567ee7f3b29d3835f0ccedb10ae4e692ef40830f1f8c15022f4430525440e\"", + "1e87e4c90c8e4daf9eee182d7c023919": "W/\"89ae3a69d3eb0e22ec636e336eac6c3e778d2dbfc2393e673f86312c83b144e7\"", + "7bfc4332-55t0-4d40-b4cc-530889g415a0": "W/\"f669b1f806cf7abc1e81f1273d35b666124eb11c040a1625f238d2f33dfdb5de\"", + "F03364BE-101B-4988-B555-528B961E6A86": "W/\"47d7e7573aa7f6cc627c9101dd35fab373daed7e284c9b0d0b216f430f63825b\"", + "F8775498-BD72-4ECA-893F-B33863D81CB5": "W/\"dbd679d4fa63b47294e9b9bd29b4185d2dbd3b459203cdaace439d1890e478e5\"", + "84d9d550-80cb-4e5f-a090-e1ccf3237a40": "W/\"b835555a89028ce8924145be8fb105ad765dc8678f3aefd44f80260087cec3bf\"", + "D738C474-9262-4B94-B58D-0413ED8EB9C6": "W/\"22f8b72cfec4aa6349cb73d15502327480bea14b7c0b26f4efe848e41319c569\"", + "5423df3c6dd84fc5ad3ca1bfadad872dfca307c0a013d116dc3e8bed60b8ca5b": "W/\"0ddc88d925c217af34a1739b5b495e39ab7e4b44ba3efe16b599c20e1e5caecf\"", + "4e2018ca-4ed0-11ed-bdc3-0242ac120002": "W/\"5ba25b09cabe0c4d37e00d5c1ee3300c36ccdfdfa6cb62734586d41445c6d4f5\"", + "e47fca5f-4305-4c14-9928-57d2c319d78e": "W/\"58ce2ae18de3371e7c021d1956b153decb039d850794a8fef786c6126bd4bf45\"", + "f823a07e-7191-11ed-a1eb-0242ac120002": "W/\"6a7c6769765d39a398475b6bfa1b1bd8168d057c00b7c8cefa05cecb9b92404c\"", + "32DD22C2-7E7D-4A49-9032-B57046975824": "W/\"f8c579c0ba055207e8c63620255cad4363bd9a0f90c1d5da5a1a51c50bbf7820\"", + "14b986ef-45ec-44c1-be66-cab460a771f7": "W/\"a3dbb58d9d6c9390d7c52002f55492f544be83603ea09b5b08d2bfa422b1de79\"", + "91B97FA34859445782AEF1893DE4E350": "W/\"fee2a3dea878189bb9d0efb17c8c5e32e54e33b403a4c517b2bf969e9f565418\"", + "C04175CF5284406DAA9E30A85EC7DA76": "W/\"f2094122957fb9986f1bbae902033e9ac4ed276ce9c4c1562156c01634d14909\"", + "506B2EE8-4117-4BDF-8F00-DF58498DF922": "W/\"497c02c581295fb278d41cc66c7f36a1636f8e2d66d3676b8d5faddb67352bf1\"", + "959A3FED8292422784F7892F7FB59DB1": "W/\"400cf1b8ee614b15218ca01c824c0739eb530271b5eb0dd8034a42984c50db60\"", + "140f3da0-7d14-4b20-b897-b4cb155fec2d": "W/\"077a317a2b2bb21297d870cbcb263bf2d3a7ab8952ef38ac10ba5ee4f30e3e55\"", + "29d4e311-eb40-4943-bc94-9b733fc307c7": "W/\"d9e61b28f7e23e608fcf6cb27a0f832c98bf2765bfafa53eb3ba2d918ff8dcea\"", + "dcbb0454f0694431944b1b7f18673a54": "W/\"6c869f6861bbd6efd38b2944dab4a6113c14007e22682e0aeaa818d2ae532f0c\"", + "E1E3DB9C-632D-4187-A5B4-EED6E09CACA7": "W/\"39c21523978dc644b8867d9700531951e71eb5d57fdf8267f266b7828a78b92a\"", + "5c221cee-07a5-4e4c-a669-a0e0f7486c65": "W/\"80ca46282f08251fd9b763ac6d8a49aa8e632b8816c465ea9adc181050d33f42\"", + "85eb90ff-b92d-476b-bae4-3d71398e61f9": "W/\"04f4f079760be6da89674d627ee232eb8b08536e0e8c2c1194f58006119b0e29\"", + "df432fe0-9ff7-4ba1-b0fd-5ffd26efbf86": "W/\"f726dbdd33227ed8166d350aed4b9c813d28605afacb4f1ce5a3fe7a366aa0e7\"", + "E5E5A4BD-39C7-4B41-93F8-0D4850BC317C": "W/\"7b66321416f220170ba9b30aa89aa54678c080596a15e7b262466844e9e6a82f\"", + "2972879D-1702-48A7-BA50-CA8352A6AA74": "W/\"f5176e85a8815d33052aa7dc808affd0d303cf4ac7b8c84b6354e5862639ab90\"", + "08AF784C-A014-4A03-822F-6C2F3665A843": "W/\"7dee7e1f9c999625e4ff2fe0cefd8654b1927641ffaa17765115a7271f6c31eb\"", + "5DBA462B9AB77AC5DC158EB5047367F0": "W/\"6894231efb257fe8f78e20aea0037475b67382fa539834df571f5f620a345cae\"", + "ac0201cb-6610-48dd-9c60-e292d5e3a3da": "W/\"dd57e0ce09fe8f11119359b8139c38a45eedcfe0f56a180b50471ace3f6a688c\"", + "963cdb07-9143-41e6-b77b-14391e8344d8": "W/\"71673bd1ac9c1c203ab14b825ebadbe944be5a08a36b8214803c02cfc8ed7482\"", + "7CCD5CC94597483EBC3F179A69511D5C": "W/\"e7b7fa02d9926b1e441c35e3c6da7a801c61e539663ee99b80235b23ff1a5162\"", + "763D015F571C48E4ACA5EF5DFD0BCA30": "W/\"6d7927a9122a43336fc981aa41af1de469dca9321d398f835f08141dcc7462c0\"", + "75894EA334FA4C10AC16E28BC4616C4A": "W/\"589d2b9170b1086fa533d9228df644bb7ebc49e9ee89c90efcf88f38940e0534\"", + "725660A1CB3D4FFE978A8B477EB376B4": "W/\"72196dbc4208e4021b0bbd0edd51de64ebd3b95b352255d696579863d32cea2b\"", + "735A3608B5D240E5A44357CCF852E329": "W/\"68e5ad1fa41cc1a44d08eabb7a122331fedad8ee678a8269766c1835e1f9cc59\"", + "01B8703D-13E2-483D-BBF9-603425628151": "W/\"39d3e3895b8a348c3c70fe8511b6452aee78332362a558c5cc0d7cf29095cc80\"", + "77435DA907472F189B759F9F4F3E3C23": "W/\"d5c9332902a5143e272e0eb1ad142abdd256887a872972079357b026c76af97a\"", + "78c1bfc7-044e-46cd-b920-9e0ae0e7f234": "W/\"7e5443c729eb48811918c23df0aa26f0b17411384605fa93f022caaea4ea2431\"", + "72E67DFE0F6F482395AF3CD0A3BC6F04": "W/\"4bc2b545c2eff238ecf5f7d09d71fcb9d35cdd7aeb55a623cec7abbd2e81cd69\"", + "7d2d209d-5ab9-42dd-ae9b-2487b57ff569": "W/\"b1c19dbd873d084e0daf0fa4bf44cddaec09815828e80438602044ee716f1b03\"", + "8533B2E5632A449F916D3658EABFB595": "W/\"8ab0c1222f5aaba97f5af28a4b2ba2beb62932ed12ebe4e5f3d08f8527152246\"", + "dff48291-c333-46ed-8784-115aa85acb4f": "W/\"1d32c0b055eb3810c473e1bcd8671c733f22a3b822cf35a804424247a40c8c0d\"", + "467A8D7E-0DC6-F0C8-347C-BC4B315C397F": "W/\"2df892762b5bdf73d9687803900eeea42d34c581c3d444d1d55278fbbabadcd4\"", + "661D020D-4E0B-414B-B12B-58F795A20D79": "W/\"173b55c77450cf906d87029863046090002fc401c278e5e5f6bbc8ac6c5be164\"", + "54545DC7B3A542DBB6C7DA50DEAD455B": "W/\"e6a1d8727f57b11a67726e8389aca294a2dd75e9316637aebdb94c63d36bc21b\"", + "d58fbe34-bce7-11ed-afa1-0242ac120002": "W/\"5855afe9e2bac2e84a228f1b395d1bbf628752cdbf2aef511b62c20433d7fa81\"" } \ No newline at end of file diff --git a/plugins.json b/plugins.json index 4005bd941..fd0954f19 100644 --- a/plugins.json +++ b/plugins.json @@ -1330,7 +1330,7 @@ "Name": "Youtube Downloader", "Description": "A youtube downloader", "Author": "LordOfTheEel; Eyal.Br", - "Version": "v1.0.0-beta", + "Version": "1.0.0", "Language": "python", "Website": "https://github.com/DeepVoyager253/FlowLauncherYTDownload", "IcoPath": "https://cdn.jsdelivr.net/gh/DeepVoyager253/FlowLauncherYTDownload@main/icon.png", @@ -1642,26 +1642,27 @@ "Name": "Shortcuts", "Description": "Open user defined shortcut quickly from Flow Launcher", "Author": "Mantelis", - "Version": "1.0.4", + "Version": "1.0.5", "Language": "csharp", "Website": "https://github.com/mantasjasikenas/flow-launcher-shortcuts-plugin", - "UrlDownload": "https://github.com/mantasjasikenas/flow-launcher-shortcuts-plugin/releases/download/v1.0.4/Flow.Launcher.Plugin.ShortcutPlugin.zip", + "UrlDownload": "https://github.com/mantasjasikenas/flow-launcher-shortcuts-plugin/releases/download/v1.0.5/Flow.Launcher.Plugin.ShortcutPlugin.zip", "UrlSourceCode": "https://github.com/mantasjasikenas/flow-launcher-shortcuts-plugin/tree/master", "IcoPath": "https://cdn.jsdelivr.net/gh/mantasjasikenas/flow-launcher-shortcuts-plugin@master/Flow.Launcher.Plugin.ShortcutPlugin/Images/icon.png", "DateAdded": "2023-08-20T03:55:23Z", - "LatestReleaseDate": "2023-08-20T07:18:03Z" + "LatestReleaseDate": "2023-08-25T16:47:31Z" }, { "ID": "54545DC7B3A542DBB6C7DA50DEAD455B", "Name": "GamesLauncher", "Description": "Search and launch games from multiple platforms like Steam, Epic Games etc.", "Author": "KrystianLesniak", - "Version": "1.1.0", + "Version": "1.2.0", "Language": "csharp", "Website": "https://github.com/KrystianLesniak/Flow.Launcher.Plugin.GamesLauncher", - "UrlDownload": "https://github.com/KrystianLesniak/Flow.Launcher.Plugin.GamesLauncher/releases/download/v1.1.0/GamesLauncher.zip", + "UrlDownload": "https://github.com/KrystianLesniak/Flow.Launcher.Plugin.GamesLauncher/releases/download/v1.2.0/GamesLauncher.zip", "UrlSourceCode": "https://github.com/KrystianLesniak/Flow.Launcher.Plugin.GamesLauncher/tree/main", "IcoPath": "https://cdn.jsdelivr.net/gh/krystianlesniak/Flow.Launcher.Plugin.GamesLauncher@master/Flow.Launcher.Plugin.GamesLauncher/icon.png", - "DateAdded": "2023-08-25T07:12:31Z" + "DateAdded": "2023-08-25T07:12:31Z", + "LatestReleaseDate": "2023-08-23T13:32:58Z" } ] \ No newline at end of file