Shabinder / SpotiFlyer

Kotlin Multiplatform Music Downloader, Supports Spotify / Gaana / Youtube Music / Jio Saavn / SoundCloud.
https://app.spotiflyer.in/
GNU General Public License v3.0
10.48k stars 780 forks source link

[BUG] : Unable to download any YouTube audios #3540

Open Humra87 opened 3 months ago

Humra87 commented 3 months ago

DownloadLinkFetchFailed(errorTrace=Find Link for – Big Dawgs | Ft. Kalmi (Official Music Video) | Def Jam India -> VideoID:hOHKltAiKXQ?si=mXRcr8RHBV0nfxF9

Yt1sMp3 Failed for hOHKltAiKXQ?si=mXRcr8RHBV0nfxF9:io.ktor.client.features.RedirectResponseException: Unhandled redirect: https://yt1s.com/api/ajaxSearch/index. Status: 301 . Text: "

301 Moved Permanently

301 Moved Permanently


cloudflare

" at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invokeSuspend(DefaultResponseValidation.kt:205) at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(Unknown Source:8) at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(Unknown Source:4) at io.ktor.client.features.HttpCallValidator.validateResponse(HttpCallValidator.kt:86) at io.ktor.client.features.HttpCallValidator.access$validateResponse(HttpCallValidator.kt:0) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invokeSuspend(HttpCallValidator.kt:42) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(Unknown Source:11) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(Unknown Source:8) at io.ktor.client.features.HttpSend$Feature$install$1.invokeSuspend(HttpSend.kt:178) at h7.a.resumeWith(ContinuationImpl.kt:10) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24) at h7.a.resumeWith(ContinuationImpl.kt:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24) at h7.a.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:12) at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:2) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:0) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:14) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:28) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:0)

Trying Local Extraction

YT Manual Extraction Failed!io.ktor.client.features.ClientRequestException: Client request(https://rr1---sn-8vq54vox03-cgne.googlevideo.com/videoplayback?expire=1724092038&ei=JjrDZveRO4i2mLAPjYOCqAo&ip=2a0a%3Aef40%3Ad15%3A9f01%3A5110%3A1d3d%3A9c74%3A8aec&id=o-AID-hm_9dRWz6XQ_keek4jjVEVRYA03dmEiV-D3F-pus&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=Zd&mm=31%2C29&mn=sn-8vq54vox03-cgne%2Csn-aigl6nzs&ms=au%2Crdu&mv=m&mvi=1&pcm2cms=yes&pl=49&initcwndbps=2312500&bui=AQmm2ewJSY8kHeDpClyiSzCvG-j3QxaAv2q09oAvrcErjnzR9zdqHz_wRyHo1KDAs2Hgx-5T7Ub8Cu4z&spc=Mv1m9o1Yi7hSqk6wk-Ht__t6seWF5yvdQtZv-ohHlQKW3QA2yNOh1iPoIZU5&vprv=1&svpuc=1&mime=audio%2Fmp4&ns=Ye3TRbE5vhFu49PJ4hQP8vMQ&rqh=1&gir=yes&clen=3799338&dur=234.707&lmt=1722511564090471&mt=1724070089&fvip=5&keepalive=yes&c=WEB&sefc=1&txp=4532434&n=xOq7W4bnJ44AqskNr&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cbui%2Cspc%2Cvprv%2Csvpuc%2Cmime%2Cns%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpcm2cms%2Cpl%2Cinitcwndbps&lsig=AGtxev0wRgIhALW7AGKTh3av1sDKcAXfJEX5TpsEGzd9XMn3W3JEOTu4AiEA0yoCT6F5oVRFrHikGwcO_3t76LBMaTnhfhIaGDfIkQ0%3D&sig=AJfQdSswRgIhAOFpQJ6USkd1GzLTlpCZIshx6xE9Tu4gzd-QfIXxxWYAAiEAiMazfqYf3VSokKgsFL7Luep1puD5Nc7WfAKtWuX6baY%3D) invalid: 403 Forbidden. Text: "" at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invokeSuspend(DefaultResponseValidation.kt:199) at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(Unknown Source:8) at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(Unknown Source:4) at io.ktor.client.features.HttpCallValidator.validateResponse(HttpCallValidator.kt:86) at io.ktor.client.features.HttpCallValidator.access$validateResponse(HttpCallValidator.kt:0) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invokeSuspend(HttpCallValidator.kt:42) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(Unknown Source:11) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(Unknown Source:8) at io.ktor.client.features.HttpSend$Feature$install$1.invokeSuspend(HttpSend.kt:178) at h7.a.resumeWith(ContinuationImpl.kt:10) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24) at h7.a.resumeWith(ContinuationImpl.kt:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24) at h7.a.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:12) at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:2) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:0) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:14) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:28) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:0)

Fetching From Saavn Failed:DownloadLinkFetchFailed(errorTrace=No SAAVN Match Found for – Big Dawgs | Ft. Kalmi (Official Music Video) | Def Jam India) at com.shabinder.common.providers.saavn.requests.JioSaavnRequests$DefaultImpls.findBestSongDownloadURL(JioSaavnRequests.kt:299) at com.shabinder.common.providers.saavn.requests.JioSaavnRequests$findBestSongDownloadURL$1.invokeSuspend(Unknown Source:10) at h7.a.resumeWith(ContinuationImpl.kt:10) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24) at h7.a.resumeWith(ContinuationImpl.kt:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24) at h7.a.resumeWith(ContinuationImpl.kt:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24) at h7.a.resumeWith(ContinuationImpl.kt:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24) at h7.a.resumeWith(ContinuationImpl.kt:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24) at h7.a.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:12) at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:2) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:0) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:14) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:28) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:0)

Yt1sMp3 Failed for wgbvJTW-Pgo:io.ktor.client.features.RedirectResponseException: Unhandled redirect: https://yt1s.com/api/ajaxSearch/index. Status: 301 . Text: "

301 Moved Permanently

301 Moved Permanently


cloudflare

" at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invokeSuspend(DefaultResponseValidation.kt:205) at h7.a.resumeWith(ContinuationImpl.kt:10) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:12) at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:2) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:0) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:14) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:28) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:0)

Extracting Manually...

YT Manual Extraction Failed!io.ktor.client.features.ClientRequestException: Client request(https://rr2---sn-8vq54vox03-cgne.googlevideo.com/videoplayback?expire=1724092043&ei=KzrDZvuvCrG4mLAPr_zjyQs&ip=2a0a%3Aef40%3Ad15%3A9f01%3A5110%3A1d3d%3A9c74%3A8aec&id=o-AKYdRwKhDqvAdqoSzFvVS8P5so0JAX45rmtTl-9DJXaf&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=NT&mm=31%2C29&mn=sn-8vq54vox03-cgne%2Csn-aigl6ney&ms=au%2Crdu&mv=m&mvi=2&pl=49&gcr=gb&initcwndbps=2312500&bui=AQmm2ext7wqaE1fDwEnhluqGsbO-_CH2fL6HtKR2ct5dRV_Nl6HucVYz2UygorTF8x5PH2OzZh1FOTs2&spc=Mv1m9gb8RswEipDp4nMVHgzCI7ly432Tp7VERzA-WA8Nr0pdpZz9LR-orQCn&vprv=1&svpuc=1&mime=audio%2Fmp4&ns=U-V0nhd0HTUKk4cWBnp_wbcQ&rqh=1&gir=yes&clen=1714023&dur=105.859&lmt=1723569443795513&mt=1724070089&fvip=3&keepalive=yes&c=WEB&sefc=1&txp=6318224&n=_PJGq5uQ9TAfi_Zvr&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cgcr%2Cbui%2Cspc%2Cvprv%2Csvpuc%2Cmime%2Cns%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AGtxev0wRQIgUKSlZT6-XxqJBsKHKNlOroGna3nR1dDAWKQRAcGJBIoCIQCfQ0dkAQc4Q7VBgLHlEavY3qErANIQKj-K-MAmrcfSyg%3D%3D&sig=AJfQdSswRgIhAO9AfWmilC7ROloskpvdf-ua5lZ-sxn7w7yVENGGdX6KAiEAv9wgN0bZNEsLtSo3Ul2dqTElI6eLN4ZGIRaj8UH106k%3D) invalid: 403 Forbidden. Text: "" at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invokeSuspend(DefaultResponseValidation.kt:199) at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(Unknown Source:8) at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(Unknown Source:4) at io.ktor.client.features.HttpCallValidator.validateResponse(HttpCallValidator.kt:86) at io.ktor.client.features.HttpCallValidator.access$validateResponse(HttpCallValidator.kt:0) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invokeSuspend(HttpCallValidator.kt:42) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(Unknown Source:11) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(Unknown Source:8) at io.ktor.client.features.HttpSend$Feature$install$1.invokeSuspend(HttpSend.kt:178) at h7.a.resumeWith(ContinuationImpl.kt:10) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24) at h7.a.resumeWith(ContinuationImpl.kt:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24) at h7.a.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:12) at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:2) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:0) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:14) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:28) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:0)

Fetching From YT Failed:io.ktor.client.features.ClientRequestException: Client request(https://rr2---sn-8vq54vox03-cgne.googlevideo.com/videoplayback?expire=1724092043&ei=KzrDZvuvCrG4mLAPr_zjyQs&ip=2a0a%3Aef40%3Ad15%3A9f01%3A5110%3A1d3d%3A9c74%3A8aec&id=o-AKYdRwKhDqvAdqoSzFvVS8P5so0JAX45rmtTl-9DJXaf&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=NT&mm=31%2C29&mn=sn-8vq54vox03-cgne%2Csn-aigl6ney&ms=au%2Crdu&mv=m&mvi=2&pl=49&gcr=gb&initcwndbps=2312500&bui=AQmm2ext7wqaE1fDwEnhluqGsbO-_CH2fL6HtKR2ct5dRV_Nl6HucVYz2UygorTF8x5PH2OzZh1FOTs2&spc=Mv1m9gb8RswEipDp4nMVHgzCI7ly432Tp7VERzA-WA8Nr0pdpZz9LR-orQCn&vprv=1&svpuc=1&mime=audio%2Fmp4&ns=U-V0nhd0HTUKk4cWBnp_wbcQ&rqh=1&gir=yes&clen=1714023&dur=105.859&lmt=1723569443795513&mt=1724070089&fvip=3&keepalive=yes&c=WEB&sefc=1&txp=6318224&n=_PJGq5uQ9TAfi_Zvr&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cgcr%2Cbui%2Cspc%2Cvprv%2Csvpuc%2Cmime%2Cns%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AGtxev0wRQIgUKSlZT6-XxqJBsKHKNlOroGna3nR1dDAWKQRAcGJBIoCIQCfQ0dkAQc4Q7VBgLHlEavY3qErANIQKj-K-MAmrcfSyg%3D%3D&sig=AJfQdSswRgIhAO9AfWmilC7ROloskpvdf-ua5lZ-sxn7w7yVENGGdX6KAiEAv9wgN0bZNEsLtSo3Ul2dqTElI6eLN4ZGIRaj8UH106k%3D) invalid: 403 Forbidden. Text: "" at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invokeSuspend(DefaultResponseValidation.kt:199) at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(Unknown Source:8) at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(Unknown Source:4) at io.ktor.client.features.HttpCallValidator.validateResponse(HttpCallValidator.kt:86) at io.ktor.client.features.HttpCallValidator.access$validateResponse(HttpCallValidator.kt:0) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invokeSuspend(HttpCallValidator.kt:42) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(Unknown Source:11) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(Unknown Source:8) at io.ktor.client.features.HttpSend$Feature$install$1.invokeSuspend(HttpSend.kt:178) at h7.a.resumeWith(ContinuationImpl.kt:10) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24) at h7.a.resumeWith(ContinuationImpl.kt:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24) at h7.a.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:12) at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:2) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:0) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:14) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:28) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:0)

) at com.shabinder.common.providers.FetchPlatformQueryResult.findBestDownloadLink(FetchPlatformQueryResult.kt:1873) at com.shabinder.common.providers.FetchPlatformQueryResult$findBestDownloadLink$1.invokeSuspend(Unknown Source:12) at h7.a.resumeWith(ContinuationImpl.kt:10) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:74) at io.ktor.util.pipeline.SuspendFunctionGun.access$resumeRootWith(SuspendFunctionGun.kt:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:17) at h7.a.resumeWith(ContinuationImpl.kt:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:74) at io.ktor.util.pipeline.SuspendFunctionGun.access$resumeRootWith(SuspendFunctionGun.kt:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:17) at h7.a.resumeWith(ContinuationImpl.kt:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:74) at io.ktor.util.pipeline.SuspendFunctionGun.access$resumeRootWith(SuspendFunctionGun.kt:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:17) at h7.a.resumeWith(ContinuationImpl.kt:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24) at h7.a.resumeWith(ContinuationImpl.kt:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24) at h7.a.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:12) at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:2) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:0) at kotlinx.co