The disc won't play Youtube videos

Console:
[20:49:26 INFO]: [su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAccessTokenTracker] Updating YouTube visitor id (current is null).
[20:49:27 INFO]: [su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAccessTokenTracker] Updating YouTube visitor id succeeded, new one is CgtWaW4xS0UyNzJobyiH7uGwBjIKCgJVUxIEGgAgWjoKIMzm18Ty4J2MZg%3D%3D, next update will be after 600 seconds.
[20:49:27 INFO]: [su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAccessTokenTracker] Updating YouTube access token (current is null).
[20:49:27 INFO]: [su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAccessTokenTracker] Updating YouTube access token succeeded, new token is ya29.a0Ad52N3_BVoV7OqdmHXEfxk2xr6zPLXXHmOZkj2fv3TzbLaLHlHuRFNRr415X1XmlW2_yIfVc49eXvB2kfbZYAp8hQXmfGWftIan8LL-fcr_LES552BB61GGo6DZDXBST7t7qvblWXR6xPnpQ3DBUHErt0bOaMVD0zzrVy-10LU9lcn0XnQWpxaJr_FLScIjW7xzXT2pxPzf2Sc5ShrAW1I_F-Tj27N9gPEEVQ4Pi5VKQ01xhI2ObrhnN3pqqLP7DM9xqDHRbwAce5yCYnAJyYKhmjHBWd2o8gUOvj_Kz1i6R8KVu_SMbNKgi-fwVlAaCgYKAeESARISFQHGX2Micb8QVVYNz9lW3lL47KcjWQ0325, next update will be after 9719 seconds.
in-game:

I've tried everything, I have all the versions in the most recent ones, but the music doesn't play. Usually you don't see any errors, but in some specific songs you see this:

I'm using these versions:

Enable the debug in the Plasmo Voice config and send the full log file after trying to play the disc

trying to play the disc:
[11:55:34 INFO]: [pv-addon-discs] Starting track job "LE SSERAFIM (르세라핌) 'Perfect Night' OFFICIAL M/V with OVERWATCH 2 (Choreography ver.)" with distance 12 at Location{world=CraftWorld{name=Beta},x=-190.0,y=-60.0,z=-280.0,pitch=0.0,yaw=0.0}
[11:55:34 INFO]: [pv-addon-discs] Track "LE SSERAFIM (르세라핌) 'Perfect Night' OFFICIAL M/V with OVERWATCH 2 (Choreography ver.)" on su.plo.voice.server.audio.source.VoiceServerStaticSource@6189c187 was ended or cancelled
Trying to burn the disc:
[12:00:09 INFO]: [pv-addon-discs] Failed to load track
su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.tools.FriendlyException: Video returned by YouTube isn't what was requested
at su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeTrackDetailsLoader.load(DefaultYoutubeTrackDetailsLoader.java:59) ~[pv-addon-lavaplayer-lib-1.0.8.jar:?]
at su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeTrackDetailsLoader.loadDetails(DefaultYoutubeTrackDetailsLoader.java:36) ~[pv-addon-lavaplayer-lib-1.0.8.jar:?]
at su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager.loadTrackWithVideoId(YoutubeAudioSourceManager.java:230) ~[pv-addon-lavaplayer-lib-1.0.8.jar:?]
at su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager$LoadingRoutes.track(YoutubeAudioSourceManager.java:254) ~[pv-addon-lavaplayer-lib-1.0.8.jar:?]
at su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager$LoadingRoutes.track(YoutubeAudioSourceManager.java:250) ~[pv-addon-lavaplayer-lib-1.0.8.jar:?]
at su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeLinkRouter.routeFromUrlWithVideoId(DefaultYoutubeLinkRouter.java:103) ~[pv-addon-lavaplayer-lib-1.0.8.jar:?]
at su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeLinkRouter.routeFromMainDomain(DefaultYoutubeLinkRouter.java:68) ~[pv-addon-lavaplayer-lib-1.0.8.jar:?]
at su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.source.youtube.DefaultYoutubeLinkRouter.route(DefaultYoutubeLinkRouter.java:46) ~[pv-addon-lavaplayer-lib-1.0.8.jar:?]
at su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager.loadItemOnce(YoutubeAudioSourceManager.java:218) ~[pv-addon-lavaplayer-lib-1.0.8.jar:?]
at su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager.loadItem(YoutubeAudioSourceManager.java:149) ~[pv-addon-lavaplayer-lib-1.0.8.jar:?]
at su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager.checkSourcesForItemOnce(DefaultAudioPlayerManager.java:406) ~[pv-addon-lavaplayer-lib-1.0.8.jar:?]
at su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager.checkSourcesForItem(DefaultAudioPlayerManager.java:388) ~[pv-addon-lavaplayer-lib-1.0.8.jar:?]
at su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager.lambda$createItemLoader$0(DefaultAudioPlayerManager.java:183) ~[pv-addon-lavaplayer-lib-1.0.8.jar:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
at java.lang.Thread.run(Thread.java:840) ~[?:?]
Suppressed: su.plo.voice.lavaplayer.libs.com.sedmelluq.discord.lavaplayer.tools.exception.EnvironmentInformation:
lavaplayer.version: 1.5.3
os.arch: amd64
os.name: Linux
os.version: 5.15.0-94-generic
java.vendor: Eclipse Adoptium
java.version: 17.0.10
java.runtime.version: 17.0.10+7
java.vm.version: 17.0.10+7
Caused by: java.lang.IllegalStateException: {"responseContext":{"serviceTrackingParams":[{"service":"GFEEDBACK","params":[{"key":"ipcc","value":"0"},{"key":"is_viewed_live","value":"False"},{"key":"is_alc_surface","value":"false"},{"key":"premium_membership","value":"non_member"},{"key":"has_unlimited_entitlement","value":"False"},{"key":"has_alc_entitlement","value":"false"},{"key":"logged_in","value":"1"},{"key":"e","value":"23888716,23946420,23966208,23983296,23998056,24004644,24036948,24077241,24078649,24080738,24117491,24120819,24135310,24143331,24166867,24173288,24181174,24187377,24187921,24230811,24232551,24241378,24265964,24267186,24290971,24377598,24384760,24397985,24445497,24451319,24458317,24458324,24458329,24458684,24468724,24515326,24515388,24515423,24522874,24524098,24525810,24536106,24542367,24548627,24548629,24556101,24560416,24585134,24585737,39325978,51003636,51009781,51012659,51016856,51017346,51019626,51020570,51025415,51030101,51033399,51033491,51033765,51037332,51037346,51037351,51044000,51048489,51050361,51053689,51057844,51057855,51060353,51064835,51068313,51068632,51069269,51074183,51079239,51080128,51089177,51089441,51091057,51092042,51092661,51094173,51094195,51094200,51094207,51095478,51100401,51101454,51103858,51105868,51106995,51107338,51108006,51111738,51112401,51113658,51113663,51113750,51115184,51116067,51117319,51118456,51118932,51123077,51123540,51124104,51125857,51128547,51128585,51131185,51131840,51132393,51134883,51134885,51135346,51135652,51136218,51136785,51139379,51139566,51140806,51141385,51141798,51142567,51142676,51142882,51142889,51143690,51143948,51145052,51145216,51145749,51146568,51146962,51147558,51147789,51148749,51148978,51148983,51149607,51149655,51149740,51150230,51152043,51152050,51152207,51153949,51154012,51156462,51156719,51157410,51157838,51158513,51158745,51159917,51160784,51163635,51164910"}]},{"service":"CSI","params":[{"key":"c","value":"ANDROID"},{"key":"cver","value":"18.06.35"},{"key":"yt_li","value":"1"},{"key":"GetPlayer_rid","value":"0xc784c666115f40aa"}]},{"service":"GUIDED_HELP","params":[{"key":"logged_in","value":"1"}]},{"service":"ECATCHER","params":[{"key":"client.version","value":"18.06"},{"key":"client.name","value":"ANDROID"}]},{"service":"LISTNR","params":[{"key":"e","value":"24286257,39325978,24181174,51116067,51146962,51134883,51147789,51111738,51143690,51104447,51108006,51117319,51112401,24515423,24024517,51060353,24274141,24560416,51104418,51074286,51128585,24166867,24117491,51020570,51030735,24195115,51134885,24250570,51156462,24036948,51143948,51140806,51164910,24143331,24033252,24384760,51104424,51074183,51102763,51053689,51048489,51003636,51135346,51079239,51101454,51157410,24181216,24377598,51142567,24290971,24458329,51064835,51068632,24254870,51149607,51157866,51158513,24542367,51148749,24585737,51136785,51050361,51118932,51016856,51154012,24220751,51091057,24548629,51080128,51095478,24397985,51105868,51152043,24458324,24585134,24522874,51123540,24451319,51152050,24458317,51131185,24556101,51136218,24410415,51033399,51132393,51139566,24536106,51139379,51106995,51069269,24267186,51131840,51159917,51033765,24525810,51118456,51012659,24458684,51089441,51124104,51146568,24515388,51092661,24548627,51100401,24232551,24230811,24195012,51125857,24135310,51025415,51152207,51033491,51019626,51009781,24524098"}]}],"maxAgeSeconds":0},"playabilityStatus":{"status":"OK","playableInEmbed":true,"offlineability":{"buttonRenderer":{"serviceEndpoint":{"clickTrackingParams":"CAUQ6ewBIhMIkf-xufi8hQMVnDIeAB3nOgiT","ypcGetOfflineUpsellEndpoint":{"params":"ChPqqN25AQ0KC2FRdkdJSWRnRkRNIgthUXZHSUlkZ0ZETSoTCAlSDwoLYVF2R0lJZGdGRE0gAQ%3D%3D"}},"trackingParams":"CAUQ6ewBIhMIkf-xufi8hQMVnDIeAB3nOgiT"}},"miniplayer":{"miniplayerRenderer":{"playbackMode":"PLAYBACK_MODE_ALLOW"}},"contextParams":"Q0FFU0FnZ0M="},"streamingData":{"expiresInSeconds":"21540","formats":[{"itag":18,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=18&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=video%2Fmp4&rqh=1&cnr=14&ratebypass=yes&dur=300.071&lmt=1711576327765252&mt=1712933595&fvip=2&c=ANDROID&txp=5538434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Ccnr%2Cratebypass%2Cdur%2Clmt&sig=AJfQdSswRgIhALm33FTRWXPEx3Xds6kNcCPMPqn9fiAak8_1x2ZAxKRKAiEA1JyOlyhjOIlULT9TllxLY2Yw23BrT_PVmCw5G6poQPY%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"video/mp4; codecs="avc1.42001E, mp4a.40.2"","bitrate":137681,"width":640,"height":358,"lastModified":"1711576327765252","quality":"medium","fps":6,"qualityLabel":"360p","projectionType":"RECTANGULAR","audioQuality":"AUDIO_QUALITY_LOW","approxDurationMs":"300071","audioSampleRate":"44100","audioChannels":2}],"adaptiveFormats":[{"itag":134,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=134&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=video%2Fmp4&rqh=1&gir=yes&clen=310413&dur=300.000&lmt=1711576325179364&mt=1712933595&fvip=2&keepalive=yes&c=ANDROID&txp=5532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRgIhAKmddGSxXQL546_GrsUS5GDARq5LqvJWZXSbCYcHYJQbAiEA1M56g2kxO8VGe2F9UmXpOPlYTJjTXSAViPXRmQuVhxk%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"video/mp4; codecs="avc1.4d4016"","bitrate":9667,"width":640,"height":358,"initRange":{"start":"0","end":"740"},"indexRange":{"start":"741","end":"1288"},"lastModified":"1711576325179364","contentLength":"310413","quality":"medium","fps":6,"qualityLabel":"360p","projectionType":"RECTANGULAR","averageBitrate":8277,"highReplication":true,"approxDurationMs":"300000"},{"itag":243,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=243&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=video%2Fwebm&rqh=1&gir=yes&clen=620700&dur=299.999&lmt=1711576309861254&mt=1712933595&fvip=2&keepalive=yes&c=ANDROID&txp=5537434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRAIgCq3NFU6b1we5O_Ut43uCh8BR14iXG2BOQSoM82J-wjQCIEoy3aBiJNqqcVYOKSJ0E87jV20k08faLKFsy1YNQhIx&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"video/webm; codecs="vp9"","bitrate":19045,"width":640,"height":358,"initRange":{"start":"0","end":"218"},"indexRange":{"start":"219","end":"939"},"lastModified":"1711576309861254","contentLength":"620700","quality":"medium","fps":6,"qualityLabel":"360p","projectionType":"RECTANGULAR","averageBitrate":16552,"colorInfo":{"primaries":"COLOR_PRIMARIES_BT709","transferCharacteristics":"COLOR_TRANSFER_CHARACTERISTICS_BT709","matrixCoefficients":"COLOR_MATRIX_COEFFICIENTS_BT709"},"approxDurationMs":"299999"},{"itag":396,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=396&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=video%2Fmp4&rqh=1&gir=yes&clen=563729&dur=300.000&lmt=1711576399164396&mt=1712933595&fvip=2&keepalive=yes&c=ANDROID&txp=5537434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRgIhAPzveD2VDQ_rclDsOnVt1j9h-LH7D78SjEtCqW7js-5GAiEA6wfK-ieviNf-BzLP2HE5cj5m32H3vVM4WjNTXs20R2E%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"video/mp4; codecs="av01.0.01M.08"","bitrate":17204,"width":640,"height":358,"initRange":{"start":"0","end":"699"},"indexRange":{"start":"700","end":"1247"},"lastModified":"1711576399164396","contentLength":"563729","quality":"medium","fps":6,"qualityLabel":"360p","projectionType":"RECTANGULAR","averageBitrate":15032,"colorInfo":{"primaries":"COLOR_PRIMARIES_BT709","transferCharacteristics":"COLOR_TRANSFER_CHARACTERISTICS_BT709","matrixCoefficients":"COLOR_MATRIX_COEFFICIENTS_BT709"},"approxDurationMs":"300000"},{"itag":133,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=133&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=video%2Fmp4&rqh=1&gir=yes&clen=208905&dur=300.000&lmt=1711576334264359&mt=1712933595&fvip=2&keepalive=yes&c=ANDROID&txp=5532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRAIgEtGlDn77i39gbaF28hJOyIsIao93Jcr5Xs5fMIA-wtsCIC0JnQoloY_3SJZ505Trd8ZX4cVTWKPN6Cd_tY5hreyW&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"video/mp4; codecs="avc1.4d4015"","bitrate":7003,"width":426,"height":238,"initRange":{"start":"0","end":"740"},"indexRange":{"start":"741","end":"1288"},"lastModified":"1711576334264359","contentLength":"208905","quality":"small","fps":6,"qualityLabel":"240p","projectionType":"RECTANGULAR","averageBitrate":5570,"approxDurationMs":"300000"},{"itag":242,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=242&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=video%2Fwebm&rqh=1&gir=yes&clen=384187&dur=299.999&lmt=1711576293743107&mt=1712933595&fvip=2&keepalive=yes&c=ANDROID&txp=5537434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRQIgNeXjeqL1GbzOVFJuMixDafj8BskGaaZtWseQdd08RjsCIQCrm_7_cs3inJRv4dY3SisuCokMbct9qStRlRSYU3CwbQ%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"video/webm; codecs="vp9"","bitrate":11689,"width":426,"height":238,"initRange":{"start":"0","end":"217"},"indexRange":{"start":"218","end":"935"},"lastModified":"1711576293743107","contentLength":"384187","quality":"small","fps":6,"qualityLabel":"240p","projectionType":"RECTANGULAR","averageBitrate":10245,"colorInfo":{"primaries":"COLOR_PRIMARIES_BT709","transferCharacteristics":"COLOR_TRANSFER_CHARACTERISTICS_BT709","matrixCoefficients":"COLOR_MATRIX_COEFFICIENTS_BT709"},"approxDurationMs":"299999"},{"itag":395,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=395&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=video%2Fmp4&rqh=1&gir=yes&clen=324781&dur=300.000&lmt=1711576321021233&mt=1712933595&fvip=2&keepalive=yes&c=ANDROID&txp=5537434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRQIgWnBF8BV3kNymThVri8MnA-Q67JgT16BWbmvA2zeOm0gCIQCRHckihdw3nKpp-2FoKYCg9e7H7c1pIChFhv2BcSncww%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"video/mp4; codecs="av01.0.00M.08"","bitrate":10124,"width":426,"height":238,"initRange":{"start":"0","end":"699"},"indexRange":{"start":"700","end":"1247"},"lastModified":"1711576321021233","contentLength":"324781","quality":"small","fps":6,"qualityLabel":"240p","projectionType":"RECTANGULAR","averageBitrate":8660,"colorInfo":{"primaries":"COLOR_PRIMARIES_BT709","transferCharacteristics":"COLOR_TRANSFER_CHARACTERISTICS_BT709","matrixCoefficients":"COLOR_MATRIX_COEFFICIENTS_BT709"},"approxDurationMs":"300000"},{"itag":160,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=160&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=video%2Fmp4&rqh=1&gir=yes&clen=139006&dur=300.000&lmt=1711576325035365&mt=1712933595&fvip=2&keepalive=yes&c=ANDROID&txp=5532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRAIgftsG4jaHQKotYW5SP_3Kjt0nY1L4BCPl78YdrcCmaN8CIFwI6FzVdQW9N95cd2vJpPpWe7ZVzWyC3N9GRjiVyBgQ&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"video/mp4; codecs="avc1.4d400b"","bitrate":5131,"width":256,"height":144,"initRange":{"start":"0","end":"739"},"indexRange":{"start":"740","end":"1287"},"lastModified":"1711576325035365","contentLength":"139006","quality":"tiny","fps":6,"qualityLabel":"144p","projectionType":"RECTANGULAR","averageBitrate":3706,"approxDurationMs":"300000"},{"itag":278,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=278&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=video%2Fwebm&rqh=1&gir=yes&clen=223725&dur=299.999&lmt=1711576390934771&mt=1712933595&fvip=2&keepalive=yes&c=ANDROID&txp=5537434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRQIhAOS87qzg3fYXr1QImbNN6zHUMY-8WFJulvuf7MnerNxEAiAwIPj2MNSnx7mHKEijIJTBJZb87z0VMCIY5SLZPKrRTg%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"video/webm; codecs="vp9"","bitrate":6956,"width":256,"height":144,"initRange":{"start":"0","end":"217"},"indexRange":{"start":"218","end":"930"},"lastModified":"1711576390934771","contentLength":"223725","quality":"tiny","fps":6,"qualityLabel":"144p","projectionType":"RECTANGULAR","averageBitrate":5966,"colorInfo":{"primaries":"COLOR_PRIMARIES_BT709","transferCharacteristics":"COLOR_TRANSFER_CHARACTERISTICS_BT709","matrixCoefficients":"COLOR_MATRIX_COEFFICIENTS_BT709"},"approxDurationMs":"299999"},{"itag":394,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=394&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=video%2Fmp4&rqh=1&gir=yes&clen=207535&dur=300.000&lmt=1711576438084941&mt=1712933595&fvip=2&keepalive=yes&c=ANDROID&txp=5537434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRgIhALDMs8ENPMOepF0q7gV5U3sS95v11aGidC1cEj9Ynvu2AiEApGOnX2b0unpx2B1EBGRl616u-9SaD1bUfzBtouG2Auk%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"video/mp4; codecs="av01.0.00M.08"","bitrate":6913,"width":256,"height":144,"initRange":{"start":"0","end":"699"},"indexRange":{"start":"700","end":"1247"},"lastModified":"1711576438084941","contentLength":"207535","quality":"tiny","fps":6,"qualityLabel":"144p","projectionType":"RECTANGULAR","averageBitrate":5534,"colorInfo":{"primaries":"COLOR_PRIMARIES_BT709","transferCharacteristics":"COLOR_TRANSFER_CHARACTERISTICS_BT709","matrixCoefficients":"COLOR_MATRIX_COEFFICIENTS_BT709"},"approxDurationMs":"300000"},{"itag":597,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=597&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=video%2Fmp4&rqh=1&gir=yes&clen=141189&dur=300.000&lmt=1711576306929520&mt=1712933595&fvip=2&keepalive=yes&c=ANDROID&txp=5532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRAIgQaf7i_JWdrGGxR7BLCHvlFgu7iYIAadfc78Op5DZYVgCICb37FlBpPNcgqYP2KJsMNUNNfk6ZxC9Pf3SV48sF3Je&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"video/mp4; codecs="avc1.4d400b"","bitrate":5196,"width":256,"height":144,"initRange":{"start":"0","end":"739"},"indexRange":{"start":"740","end":"1287"},"lastModified":"1711576306929520","contentLength":"141189","quality":"tiny","fps":6,"qualityLabel":"144p","projectionType":"RECTANGULAR","averageBitrate":3765,"approxDurationMs":"300000"},{"itag":598,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=598&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=video%2Fwebm&rqh=1&gir=yes&clen=222740&dur=299.999&lmt=1711576303810722&mt=1712933595&fvip=2&keepalive=yes&c=ANDROID&txp=5532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRQIhAJsXCps6xi71Azl_16hZb1FNk-wLmKKnLlqBTfejrJi5AiBhtweh2ZtoaiDpaClzrG5DPmpRvYcMGWu2oUfb0qT5dA%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"video/webm; codecs="vp9"","bitrate":6956,"width":256,"height":144,"initRange":{"start":"0","end":"217"},"indexRange":{"start":"218","end":"930"},"lastModified":"1711576303810722","contentLength":"222740","quality":"tiny","fps":6,"qualityLabel":"144p","projectionType":"RECTANGULAR","averageBitrate":5939,"colorInfo":{"primaries":"COLOR_PRIMARIES_BT709","transferCharacteristics":"COLOR_TRANSFER_CHARACTERISTICS_BT709","matrixCoefficients":"COLOR_MATRIX_COEFFICIENTS_BT709"},"approxDurationMs":"299999"},{"itag":139,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=139&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=audio%2Fmp4&rqh=1&gir=yes&clen=1830967&dur=300.141&lmt=1711574706493930&mt=1712933595&fvip=2&keepalive=yes&c=ANDROID&txp=5532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRQIhAKx5QaW6ZXEfML03vW6LDx5n4zyW_kVLZ6-Z6TzlsXoDAiB0_NotbTvGnJ3JzQnRDqzbndYXJYdlTdYUHIpuamJ2zw%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"audio/mp4; codecs="mp4a.40.5"","bitrate":50039,"initRange":{"start":"0","end":"640"},"indexRange":{"start":"641","end":"1044"},"lastModified":"1711574706493930","contentLength":"1830967","quality":"tiny","projectionType":"RECTANGULAR","averageBitrate":48802,"audioQuality":"AUDIO_QUALITY_LOW","approxDurationMs":"300141","audioSampleRate":"22050","audioChannels":2,"loudnessDb":-9986},{"itag":140,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=audio%2Fmp4&rqh=1&gir=yes&clen=4857095&dur=300.071&lmt=1711574696628887&mt=1712933595&fvip=2&keepalive=yes&c=ANDROID&txp=5532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRAIgRQYdK2U9xqxiIbUhsvoRyVhXtzqm_BBeW1q17oDlYVACIC-84_0ZX5VGS38iHeMqIpUh_9MjsMrVXYWWodN1rD1a&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"audio/mp4; codecs="mp4a.40.2"","bitrate":130951,"initRange":{"start":"0","end":"631"},"indexRange":{"start":"632","end":"1035"},"lastModified":"1711574696628887","contentLength":"4857095","quality":"tiny","projectionType":"RECTANGULAR","averageBitrate":129491,"highReplication":true,"audioQuality":"AUDIO_QUALITY_MEDIUM","approxDurationMs":"300071","audioSampleRate":"44100","audioChannels":2,"loudnessDb":-9986},{"itag":249,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=249&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=audio%2Fwebm&rqh=1&gir=yes&clen=136118&dur=300.021&lmt=1711574692785189&mt=1712933595&fvip=2&keepalive=yes&c=ANDROID&txp=5532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRgIhAMigjYEgpidJY5wy93R1cNIPxG9uXggD7eh6dc6Vd4qTAiEA_toxuJhY6fn193tn4B6WllLsdHecEw-R17o60gz4ZNw%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"audio/webm; codecs="opus"","bitrate":10800,"initRange":{"start":"0","end":"258"},"indexRange":{"start":"259","end":"768"},"lastModified":"1711574692785189","contentLength":"136118","quality":"tiny","projectionType":"RECTANGULAR","averageBitrate":3629,"audioQuality":"AUDIO_QUALITY_LOW","approxDurationMs":"300021","audioSampleRate":"48000","audioChannels":2,"loudnessDb":-9986},{"itag":250,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=250&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=audio%2Fwebm&rqh=1&gir=yes&clen=136118&dur=300.021&lmt=1711574710710074&mt=1712933595&fvip=2&keepalive=yes&c=ANDROID&txp=5532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRQIhAKBGlYplIwBaZrBlrC0WE4lK5T2GtG7quC69DVgkM_phAiAWgzgbPOdVLpwkU7_G0hICiK24Qa-NwAfuoMFBOgR9kQ%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"audio/webm; codecs="opus"","bitrate":10800,"initRange":{"start":"0","end":"258"},"indexRange":{"start":"259","end":"768"},"lastModified":"1711574710710074","contentLength":"136118","quality":"tiny","projectionType":"RECTANGULAR","averageBitrate":3629,"audioQuality":"AUDIO_QUALITY_LOW","approxDurationMs":"300021","audioSampleRate":"48000","audioChannels":2,"loudnessDb":-9986},{"itag":251,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=251&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=audio%2Fwebm&rqh=1&gir=yes&clen=136118&dur=300.021&lmt=1711574689964039&mt=1712933595&fvip=2&keepalive=yes&c=ANDROID&txp=5532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRAIgZlPJUvYEWFpabh_IvR--EyxAnHap2WqGHq_U0ect03cCIEqH4VYs5RWb0LVtzePDJ3dz7FYzwHzvgCTueDk144JW&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"audio/webm; codecs="opus"","bitrate":10800,"initRange":{"start":"0","end":"258"},"indexRange":{"start":"259","end":"768"},"lastModified":"1711574689964039","contentLength":"136118","quality":"tiny","projectionType":"RECTANGULAR","averageBitrate":3629,"audioQuality":"AUDIO_QUALITY_MEDIUM","approxDurationMs":"300021","audioSampleRate":"48000","audioChannels":2,"loudnessDb":-9986},{"itag":599,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=599&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=audio%2Fmp4&rqh=1&gir=yes&clen=1155650&dur=300.141&lmt=1711574730071930&mt=1712933595&fvip=2&keepalive=yes&c=ANDROID&txp=5532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRAIgIZSralKiq-LLPMxHexkz1Qn6W_OUF7MVtKEDoGpawdQCIA5M0IQo6r4_VYU33ETRWLWbLaxEN-JZu9mDaBw0IoUu&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"audio/mp4; codecs="mp4a.40.5"","bitrate":32052,"initRange":{"start":"0","end":"640"},"indexRange":{"start":"641","end":"1044"},"lastModified":"1711574730071930","contentLength":"1155650","quality":"tiny","projectionType":"RECTANGULAR","averageBitrate":30802,"audioQuality":"AUDIO_QUALITY_ULTRALOW","approxDurationMs":"300141","audioSampleRate":"22050","audioChannels":2,"loudnessDb":-9986},{"itag":600,"url":"https://rr5---sn-p5qs7nsr.googlevideo.com/videoplayback?expire=1712955609&ei=eUwZZtHeLJzl-LAP5_WgmAk&ip=<IP_ADDRESS>&id=o-ADom_bqmkXvPs4jh6_1KT8-QDRXa9CoF2a5xEau-QsQM&itag=600&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T2&mm=31%2C26&mn=sn-p5qs7nsr%2Csn-a5msenl7&ms=au%2Conr&mv=u&mvi=5&pl=24&siu=1&vprv=1&svpuc=1&mime=audio%2Fwebm&rqh=1&gir=yes&clen=136118&dur=300.021&lmt=1711574696633882&mt=1712933595&fvip=2&keepalive=yes&c=ANDROID&txp=5532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cvprv%2Csvpuc%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRQIhAJEf192Pj2LvkwXGP8h5Sjxw0DUeuE59MUSXP0IuIWQrAiBBgaEKKtoEeBHw4qLgYR7jhtVXO_j_4vJOdAOY-POxbQ%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl&lsig=ALClDIEwRQIgD28iLlVKY4xURK6zvkG0uYx9fNLKzRTLbRc2bnRyYnMCIQCJ8gBg9kiCgotMo3YUZf63dlC3HxUUP2csH23t0VtKJg%3D%3D","mimeType":"audio/webm; codecs="opus"","bitrate":10800,"initRange":{"start":"0","end":"258"},"indexRange":{"start":"259","end":"768"},"lastModified":"1711574696633882","contentLength":"136118","quality":"tiny","projectionType":"RECTANGULAR","averageBitrate":3629,"audioQuality":"AUDIO_QUALITY_ULTRALOW","approxDurationMs":"300021","audioSampleRate":"48000","audioChannels":2,"loudnessDb":-9986}]},"playbackTracking":{"videostatsPlaybackUrl":{"baseUrl":"https://s.youtube.com/api/stats/playback?cl=623523848&docid=aQvGIIdgFDM&ei=eUwZZtHeLJzl-LAP5_WgmAk&fexp=v1%2C23888716%2C57704%2C19788%2C17088%2C14760%2C6588%2C32304%2C40293%2C1408%2C2089%2C36753%2C3328%2C14491%2C8021%2C23536%2C6421%2C7886%2C6203%2C544%2C42890%2C1740%2C8827%2C24586%2C1222%2C23785%2C86627%2C7162%2C13225%2C47512%2C5822%2C6998%2C7%2C5%2C355%2C10040%2C46602%2C62%2C35%2C7451%2C1224%2C1712%2C10296%2C6261%2C6260%2C2%2C7472%2C4315%2C24718%2C603%2C14740241%2C11677658%2C6145%2C2878%2C4197%2C490%2C2280%2C944%2C4845%2C4686%2C3298%2C92%2C274%2C3567%2C14%2C5%2C6649%2C4489%2C1872%2C3328%2C4155%2C11%2C2498%2C4482%2C3478%2C319%2C637%2C4914%2C5056%2C889%2C9049%2C264%2C1616%2C985%2C619%2C1512%2C22%2C5%2C7%2C1271%2C4923%2C1053%2C2404%2C2010%2C1127%2C343%2C668%2C3732%2C663%2C1257%2C5%2C87%2C1434%2C883%2C1252%2C1137%2C476%2C4145%2C463%2C564%2C1753%2C2690%2C38%2C2600%2C655%2C553%2C2490%2C2%2C461%2C306%2C566%2C567%2C2594%2C187%2C1240%2C579%2C413%2C769%2C109%2C206%2C7%2C801%2C258%2C1104%2C164%2C533%2C819%2C394%2C596%2C231%2C960%2C229%2C5%2C624%2C48%2C85%2C490%2C1813%2C7%2C157%2C1742%2C63%2C2450%2C257%2C691%2C428%2C675%2C232%2C1172%2C867%2C2851%2C1275&ns=yt&plid=AAYV54csz3hdz7dP&adformat=0_6&el=adunit&len=301&of=nBni41ETR8lEDbNBxHSr9Q&uga=o21&vm=CAEQABgEOjJBSHFpSlRKWGd3Mndweks4NGdpMTlScWs4M2ZQTHZrWTEtQ2hOVkM1NmtST2dfZXV4Z2JwQVBta0tES1JzakQ3VnJiUlpsNXF2M3I0UV94LUNncnlKUXd0S2xnS1BDc2k3NkVZVnpTXzVWTlAyQWloQkUxTmNUV3N4Vy0tUHY5bVVsdGs3UktjNzFGdENsenloQTdoRFBnUUlUUE5rd1NQZmhEdWgC","headers":[{"headerType":"USER_AUTH"},{"headerType":"VISITOR_ID"},{"headerType":"PLUS_PAGE_ID"}]},"videostatsDelayplayUrl":{"baseUrl":"https://s.youtube.com/api/stats/delayplay?cl=623523848&docid=aQvGIIdgFDM&ei=eUwZZtHeLJzl-LAP5_WgmAk&fexp=v1%2C23888716%2C57704%2C19788%2C17088%2C14760%2C6588%2C32304%2C40293%2C1408%2C2089%2C36753%2C3328%2C14491%2C8021%2C23536%2C6421%2C7886%2C6203%2C544%2C42890%2C1740%2C8827%2C24586%2C1222%2C23785%2C86627%2C7162%2C13225%2C47512%2C5822%2C6998%2C7%2C5%2C355%2C10040%2C46602%2C62%2C35%2C7451%2C1224%2C1712%2C10296%2C6261%2C6260%2C2%2C7472%2C4315%2C24718%2C603%2C14740241%2C11677658%2C6145%2C2878%2C4197%2C490%2C2280%2C944%2C4845%2C4686%2C3298%2C92%2C274%2C3567%2C14%2C5%2C6649%2C4489%2C1872%2C3328%2C4155%2C11%2C2498%2C4482%2C3478%2C319%2C637%2C4914%2C5056%2C889%2C9049%2C264%2C1616%2C985%2C619%2C1512%2C22%2C5%2C7%2C1271%2C4923%2C1053%2C2404%2C2010%2C1127%2C343%2C668%2C3732%2C663%2C1257%2C5%2C87%2C1434%2C883%2C1252%2C1137%2C476%2C4145%2C463%2C564%2C1753%2C2690%2C38%2C2600%2C655%2C553%2C2490%2C2%2C461%2C306%2C566%2C567%2C2594%2C187%2C1240%2C579%2C413%2C769%2C109%2C206%2C7%2C801%2C258%2C1104%2C164%2C533%2C819%2C394%2C596%2C231%2C960%2C229%2C5%2C624%2C48%2C85%2C490%2C1813%2C7%2C157%2C1742%2C63%2C2450%2C257%2C691%2C428%2C675%2C232%2C1172%2C867%2C2851%2C1275&ns=yt&plid=AAYV54csz3hdz7dP&adformat=0_6&el=adunit&is_ad=1&len=301&of=nBni41ETR8lEDbNBxHSr9Q&uga=o21&vm=CAEQABgEOjJBSHFpSlRKWGd3Mndweks4NGdpMTlScWs4M2ZQTHZrWTEtQ2hOVkM1NmtST2dfZXV4Z2JwQVBta0tES1JzakQ3VnJiUlpsNXF2M3I0UV94LUNncnlKUXd0S2xnS1BDc2k3NkVZVnpTXzVWTlAyQWloQkUxTmNUV3N4Vy0tUHY5bVVsdGs3UktjNzFGdENsenloQTdoRFBnUUlUUE5rd1NQZmhEdWgC","headers":[{"headerType":"USER_AUTH"},{"headerType":"VISITOR_ID"},{"headerType":"PLUS_PAGE_ID"}]},"videostatsWatchtimeUrl":{"baseUrl":"https://s.youtube.com/api/stats/watchtime?cl=623523848&docid=aQvGIIdgFDM&ei=eUwZZtHeLJzl-LAP5_WgmAk&fexp=v1%2C23888716%2C57704%2C19788%2C17088%2C14760%2C6588%2C32304%2C40293%2C1408%2C2089%2C36753%2C3328%2C14491%2C8021%2C23536%2C6421%2C7886%2C6203%2C544%2C42890%2C1740%2C8827%2C24586%2C1222%2C23785%2C86627%2C7162%2C13225%2C47512%2C5822%2C6998%2C7%2C5%2C355%2C10040%2C46602%2C62%2C35%2C7451%2C1224%2C1712%2C10296%2C6261%2C6260%2C2%2C7472%2C4315%2C24718%2C603%2C14740241%2C11677658%2C6145%2C2878%2C4197%2C490%2C2280%2C944%2C4845%2C4686%2C3298%2C92%2C274%2C3567%2C14%2C5%2C6649%2C4489%2C1872%2C3328%2C4155%2C11%2C2498%2C4482%2C3478%2C319%2C637%2C4914%2C5056%2C889%2C9049%2C264%2C1616%2C985%2C619%2C1512%2C22%2C5%2C7%2C1271%2C4923%2C1053%2C2404%2C2010%2C1127%2C343%2C668%2C3732%2C663%2C1257%2C5%2C87%2C1434%2C883%2C1252%2C1137%2C476%2C4145%2C463%2C564%2C1753%2C2690%2C38%2C2600%2C655%2C553%2C2490%2C2%2C461%2C306%2C566%2C567%2C2594%2C187%2C1240%2C579%2C413%2C769%2C109%2C206%2C7%2C801%2C258%2C1104%2C164%2C533%2C819%2C394%2C596%2C231%2C960%2C229%2C5%2C624%2C48%2C85%2C490%2C1813%2C7%2C157%2C1742%2C63%2C2450%2C257%2C691%2C428%2C675%2C232%2C1172%2C867%2C2851%2C1275&ns=yt&plid=AAYV54csz3hdz7dP&adformat=0_6&el=adunit&is_ad=1&len=301&of=nBni41ETR8lEDbNBxHSr9Q&uga=o21&vm=CAEQABgEOjJBSHFpSlRKWGd3Mndweks4NGdpMTlScWs4M2ZQTHZrWTEtQ2hOVkM1NmtST2dfZXV4Z2JwQVBta0tES1JzakQ3VnJiUlpsNXF2M3I0UV94LUNncnlKUXd0S2xnS1BDc2k3NkVZVnpTXzVWTlAyQWloQkUxTmNUV3N4Vy0tUHY5bVVsdGs3UktjNzFGdENsenloQTdoRFBnUUlUUE5rd1NQZmhEdWgC","headers":[{"headerType":"USER_AUTH"},{"headerType":"VISITOR_ID"},{"headerType":"PLUS_PAGE_ID"}]},"ptrackingUrl":{"baseUrl":"https://www.youtube.com/ptracking?content_v=&ei=eUwZZtHeLJzl-LAP5_WgmAk&plid=AAYV54csz3hdz7dP&pltype=adpromoted&ptchn=youtube_host&ptk=youtube_host&video_id=aQvGIIdgFDM","headers":[{"headerType":"USER_AUTH"},{"headerType":"VISITOR_ID"},{"headerType":"PLUS_PAGE_ID"}]},"qoeUrl":{"baseUrl":"https://s.youtube.com/api/stats/qoe?adformat=0_6&cl=623523848&docid=aQvGIIdgFDM&ei=eUwZZtHeLJzl-LAP5_WgmAk&event=streamingstats&fexp=v1%2C23888716%2C57704%2C19788%2C17088%2C14760%2C6588%2C32304%2C40293%2C1408%2C2089%2C36753%2C3328%2C14491%2C8021%2C23536%2C6421%2C7886%2C6203%2C544%2C42890%2C1740%2C8827%2C24586%2C1222%2C23785%2C86627%2C7162%2C13225%2C47512%2C5822%2C6998%2C7%2C5%2C355%2C10040%2C46602%2C62%2C35%2C7451%2C1224%2C1712%2C10296%2C6261%2C6260%2C2%2C7472%2C4315%2C24718%2C603%2C14740241%2C11677658%2C6145%2C2878%2C4197%2C490%2C2280%2C944%2C4845%2C4686%2C3298%2C92%2C274%2C3567%2C14%2C5%2C6649%2C4489%2C1872%2C3328%2C4155%2C11%2C2498%2C4482%2C3478%2C319%2C637%2C4914%2C5056%2C889%2C9049%2C264%2C1616%2C985%2C619%2C1512%2C22%2C5%2C7%2C1271%2C4923%2C1053%2C2404%2C2010%2C1127%2C343%2C668%2C3732%2C663%2C1257%2C5%2C87%2C1434%2C883%2C1252%2C1137%2C476%2C4145%2C463%2C564%2C1753%2C2690%2C38%2C2600%2C655%2C553%2C2490%2C2%2C461%2C306%2C566%2C567%2C2594%2C187%2C1240%2C579%2C413%2C769%2C109%2C206%2C7%2C801%2C258%2C1104%2C164%2C533%2C819%2C394%2C596%2C231%2C960%2C229%2C5%2C624%2C48%2C85%2C490%2C1813%2C7%2C157%2C1742%2C63%2C2450%2C257%2C691%2C428%2C675%2C232%2C1172%2C867%2C2851%2C1275&ns=yt&plid=AAYV54csz3hdz7dP","headers":[{"headerType":"USER_AUTH"},{"headerType":"VISITOR_ID"},{"headerType":"PLUS_PAGE_ID"}]},"atrUrl":{"baseUrl":"https://s.youtube.com/api/stats/atr?docid=aQvGIIdgFDM&ei=eUwZZtHeLJzl-LAP5_WgmAk&is_ad=1&len=301&ns=yt&plid=AAYV54csz3hdz7dP&ver=2","elapsedMediaTimeSeconds":3,"headers":[{"headerType":"USER_AUTH"},{"headerType":"VISITOR_ID"},{"headerType":"PLUS_PAGE_ID"}]},"engageUrl":{"baseUrl":"https://s.youtube.com/api/stats/engage?adformat=0_6&cl=623523848&cmt=[VSS_CMT]&conn=[VSS_CONN]&cpn=[VSS_CPN]&docid=aQvGIIdgFDM&ei=eUwZZtHeLJzl-LAP5_WgmAk&el=adunit&fexp=v1%2C23888716%2C57704%2C19788%2C17088%2C14760%2C6588%2C32304%2C40293%2C1408%2C2089%2C36753%2C3328%2C14491%2C8021%2C23536%2C6421%2C7886%2C6203%2C544%2C42890%2C1740%2C8827%2C24586%2C1222%2C23785%2C86627%2C7162%2C13225%2C47512%2C5822%2C6998%2C7%2C5%2C355%2C10040%2C46602%2C62%2C35%2C7451%2C1224%2C1712%2C10296%2C6261%2C6260%2C2%2C7472%2C4315%2C24718%2C603%2C14740241%2C11677658%2C6145%2C2878%2C4197%2C490%2C2280%2C944%2C4845%2C4686%2C3298%2C92%2C274%2C3567%2C14%2C5%2C6649%2C4489%2C1872%2C3328%2C4155%2C11%2C2498%2C4482%2C3478%2C319%2C637%2C4914%2C5056%2C889%2C9049%2C264%2C1616%2C985%2C619%2C1512%2C22%2C5%2C7%2C1271%2C4923%2C1053%2C2404%2C2010%2C1127%2C343%2C668%2C3732%2C663%2C1257%2C5%2C87%2C1434%2C883%2C1252%2C1137%2C476%2C4145%2C463%2C564%2C1753%2C2690%2C38%2C2600%2C655%2C553%2C2490%2C2%2C461%2C306%2C566%2C567%2C2594%2C187%2C1240%2C579%2C413%2C769%2C109%2C206%2C7%2C801%2C258%2C1104%2C164%2C533%2C819%2C394%2C596%2C231%2C960%2C229%2C5%2C624%2C48%2C85%2C490%2C1813%2C7%2C157%2C1742%2C63%2C2450%2C257%2C691%2C428%2C675%2C232%2C1172%2C867%2C2851%2C1275&is_ad=1&lact=[VSS_LACT]&len=301&ns=yt&of=nBni41ETR8lEDbNBxHSr9Q&plid=AAYV54csz3hdz7dP&rt=[VSS_RT]&state=[VSS_STATE]&uga=o21&vis=[VSS_VIS]&vm=CAEQABgEOjJBSHFpSlRKWGd3Mndweks4NGdpMTlScWs4M2ZQTHZrWTEtQ2hOVkM1NmtST2dfZXV4Z2JwQVBta0tES1JzakQ3VnJiUlpsNXF2M3I0UV94LUNncnlKUXd0S2xnS1BDc2k3NkVZVnpTXzVWTlAyQWloQkUxTmNUV3N4Vy0tUHY5bVVsdGs3UktjNzFGdENsenloQTdoRFBnUUlUUE5rd1NQZmhEdWgC","headers":[{"headerType":"USER_AUTH"},{"headerType":"VISITOR_ID"}]},"videostatsScheduledFlushWalltimeSeconds":[10,20,30],"videostatsDefaultFlushIntervalSeconds":300,"googleRemarketingUrl":{"baseUrl":"https://www.google.com/pagead/1p-user-list/962985656/?backend=innertube&bundleid=com.google.android.youtube&cname=3&cver=18_06&data=backend%3Dinnertube%3Bcname%3D3%3Bcver%3D18_06%3Bel%3Dadunit%3Bptype%3Df_adview%3Btype%3Dview%3Butuid%3DMDQxm7cUx3yXkfeHa5zJIQ%3Butvid%3DaQvGIIdgFDM&idtype=ssaid&is_vtc=0&ptype=f_adview&random=753722095&utuid=MDQxm7cUx3yXkfeHa5zJIQ","elapsedMediaTimeSeconds":0,"headers":[{"headerType":"USER_AUTH"}]}},"videoDetails":{"videoId":"aQvGIIdgFDM","title":"Video Not Available","lengthSeconds":"300","keywords":["tips","tricks","help","tutorial","youtube","youtubehelp","support","how to"],"channelId":"UCMDQxm7cUx3yXkfeHa5zJIQ","isOwnerViewing":false,"shortDescription":"Video Not Available","isCrawlable":false,"thumbnail":{"thumbnails":[{"url":"https://i.ytimg.com/vi/aQvGIIdgFDM/hqdefault.jpg?sqp=-oaymwEyCHgQWkhG8quKqQMmCAEVAACIQnABwAEG8AEB-AH-BIAC5gKKAgwIABABGGUgZShlMA8=&rs=AOn4CLAcNCNgR1o21wW2bPNPSXq9zrx6Hg","width":120,"height":90},{"url":"https://i.ytimg.com/vi/aQvGIIdgFDM/hqdefault.jpg?sqp=-oaymwE2CMACELQBSEbyq4qpAygIARUAAIhCGAFwAcABBvABAfgB_gSAAuYCigIMCAAQARhlIGUoZTAP&rs=AOn4CLDb0DVkt1kDweb1B48oUPyR5z4pCA","width":320,"height":180},{"url":"https://i.ytimg.com/vi/aQvGIIdgFDM/hqdefault.jpg?sqp=-oaymwEmCOADEOgC8quKqQMa8AEB-AH-BIAC5gKKAgwIABABGGUgZShlMA8=&rs=AOn4CLCK1AwhQMVrg5kj-Jdn6saENiLGKw","width":480,"height":360}]},"allowRatings":false,"viewCount":"710884","author":"YouTube Viewers","isPrivate":false,"isUnpluggedCorpus":false,"isLiveContent":false},"annotations":[{"playerAnnotationsExpandedRenderer":{"featuredChannel":{"startTimeMs":"5000","endTimeMs":"301000","watermark":{"thumbnails":[{"url":"https://i.ytimg.com/an/MDQxm7cUx3yXkfeHa5zJIQ/featured_channel.jpg?v=5d85123f","width":40,"height":40}]},"trackingParams":"CAQQ8zciEwiR_7G5-LyFAxWcMh4AHec6CJM="},"allowSwipeDismiss":true}}],"playerConfig":{"audioConfig":{"loudnessDb":-9986,"perceptualLoudnessDb":-10000,"enablePerFormatLoudness":true},"exoPlayerConfig":{"useExoPlayer":true,"useAdaptiveBitrate":true,"maxInitialByteRate":91136,"minDurationForQualityIncreaseMs":12364,"maxDurationForQualityDecreaseMs":3720,"minDurationToRetainAfterDiscardMs":21000,"lowWatermarkMs":15000,"highWatermarkMs":30000,"lowPoolLoad":0.8,"highPoolLoad":0.8,"sufficientBandwidthOverhead":0.9,"bufferChunkSizeKb":50,"httpConnectTimeoutMs":16000,"httpReadTimeoutMs":8000,"numAudioSegmentsPerFetch":1,"numVideoSegmentsPerFetch":2,"minDurationForPlaybackStartMs":1600,"enableExoplayerReuse":false,"useRadioTypeForInitialQualitySelection":true,"blacklistFormatOnError":false,"enableBandaidHttpDataSource":true,"httpLoadTimeoutMs":18000,"canPlayHdDrm":true,"videoBufferSegmentCount":389,"audioBufferSegmentCount":38,"useAbruptSplicing":false,"minRetryCount":10,"minChunksNeededToPreferOffline":2,"secondsToMaxAggressiveness":0,"enableSurfaceviewResizeWorkaround":true,"enableVp9IfThresholdsPass":false,"matchQualityToViewportOnUnfullscreen":false,"lowAudioQualityConnTypes":["MOBILE_CONNECTION_TYPE_CELLULAR_2G","MOBILE_CONNECTION_TYPE_CELLULAR_3G"],"useDashForLiveStreams":true,"enableLibvpxVideoTrackRenderer":false,"lowAudioQualityBandwidthThresholdBps":786432,"enableVariableSpeedPlayback":true,"preferOnesieBufferedFormat":true,"minimumBandwidthSampleBytes":16384,"useDashForOtfAndCompletedLiveStreams":true,"disableCacheAwareVideoFormatEvaluation":false,"useLiveDvrForDashLiveStreams":true,"cronetResetTimeoutOnRedirects":true,"emitVideoDecoderChangeEvents":false,"onesieVideoBufferLoadTimeoutMs":"0","onesieVideoBufferReadTimeoutMs":"0","libvpxEnableGl":false,"enableVp9EncryptedIfThresholdsPass":false,"enableOpus":true,"usePredictedBuffer":true,"maxReadAheadMediaTimeMs":120000,"useMediaTimeCappedLoadControl":true,"allowCacheOverrideToLowerQualitiesWithinRange":0,"allowDroppingUndecodedFrames":true,"minDurationForPlaybackRestartMs":5000,"serverProvidedBandwidthHeader":"","liveOnlyPegStrategy":"LIVE_ONLY_PEG_STRATEGY_SEEK_ON_REBUFFER_ESTIMATE_DURATION","enableRedirectorHostFallback":true,"enableHighlyAvailableFormatFallbackOnPcr":false,"recordTrackRendererTimingEvents":true,"minErrorsForRedirectorHostFallback":0,"nonHardwareMediaCodecNames":["OMX.ffmpeg.vp9.decoder","OMX.google.vp9.decoder","c2.android.vp9.decoder","OMX.Intel.sw_vd.vp9","OMX.MTK.VIDEO.DECODER.SW.VP9","c2.mtk.sw.vp9.decoder","OMX.google.av1.decoder","c2.android.av1.decoder","OMX.sprd.av1.decoder"],"enableVp9IfInHardware":true,"enableVp9EncryptedIfInHardware":true,"useOpusMedAsLowQualityAudio":false,"minErrorsForPcrFallback":0,"useStickyRedirectHttpDataSource":true,"onlyVideoBandwidth":true,"useRedirectorOnNetworkChange":false,"enableMaxReadaheadAbrThreshold":true,"cacheCheckDirectoryWritabilityOnce":false,"predictorType":"PREDICTOR_TYPE_NEAREST_RANK","slidingPercentile":0.25,"slidingWindowSize":12,"maxFrameDropIntervalMs":100,"ignoreLoadTimeoutForFallback":false,"serverBweMultiplier":1,"drmMaxKeyfetchDelayMs":900000,"maxResolutionForWhiteNoise":0,"whiteNoiseRenderEffectMode":"RENDER_EFFECT_MODE_UNKNOWN","enableLibvpxHdr":false,"enableCacheAwareStreamSelection":true,"useExoCronetDataSource":true,"whiteNoiseScale":0,"whiteNoiseOffset":0,"preventVideoFrameLaggingWithLibvpx":false,"enableMediaCodecHdr":true,"enableMediaCodecSwHdr":false,"liveOnlyWindowChunks":10,"bearerMinDurationToRetainAfterDiscardMs":[21000,21000,21000,21000,120000,120000,90000,120000],"forceWidevineL3":false,"useAverageBitrate":false,"useMedialibAudioTrackRendererForLive":true,"useExoPlayerV2":true,"logMediaRequestEventsToCsi":true,"onesieFixNonZeroStartTimeFormatSelection":false,"liveOnlyReadaheadStepSizeChunks":1,"liveOnlyBufferHealthHalfLifeSeconds":60,"liveOnlyMinBufferHealthRatio":0.75,"liveOnlyMinLatencyToSeekRatio":3,"manifestlessPartialChunkStrategy":"ANDROID_PARTIAL_CHUNK_STRATEGY_RETRY_RANGE_CHECK_LMT","ignoreViewportSizeWhenSticky":false,"enableLibvpxFallback":false,"disableLibvpxLoopFilter":false,"enableVpxMediaView":false,"hdrMinScreenBrightness":0,"hdrMaxScreenBrightnessThreshold":0,"onesieDataSourceAboveCacheDataSource":true,"httpNonplayerLoadTimeoutMs":72000,"numVideoSegmentsPerFetchStrategy":"NUM_SEGMENTS_PER_FETCH_STRATEGY_LIMITED_DURATION","maxVideoDurationPerFetchMs":12000,"maxVideoEstimatedLoadDurationMs":-1,"estimatedServerClockHalfLife":5,"estimatedServerClockStrictOffset":false,"minReadAheadMediaTimeMs":0,"readAheadGrowthRate":0,"useDynamicReadAhead":false,"useYtVodMediaSourceForV2":false,"enableV2Gapless":false,"useLiveHeadTimeMillis":true,"allowTrackSelectionWithUpdatedVideoItagsForExoV2":true,"maxAllowableTimeBeforeMediaTimeUpdateSec":15,"enableDynamicHdr":false,"v2PerformEarlyStreamSelection":false,"v2UsePlaybackStreamSelectionResult":false,"v2MinTimeBetweenAbrReevaluationMs":2000,"avoidReusePlaybackAcrossLoadvideos":false,"enableInfiniteNetworkLoadingRetries":true,"reportExoPlayerStateOnTransition":true,"manifestlessSequenceMethod":"MANIFESTLESS_SEQUENCE_METHOD_LIVE_HEAD","useLiveHeadWindow":true,"enableDynamicHdrInHardware":true,"ultralowAudioQualityBandwidthThresholdBps":0,"retryLiveNetNocontentWithDelay":true,"ignoreUnneededSeeksToLiveHead":true,"adaptiveLiveHeadWindow":true,"drmMetricsQoeLoggingFraction":0.01,"liveNetNocontentMaximumErrors":-1,"waitForDrmLicenseBeforeProcessingAndroidStuckBufferfull":true,"slidingPercentileScalar":0.85,"minAdaptiveVideoQuality":0,"platypusBackBufferDurationMs":30000},"playbackStartConfig":{"startTimeToleranceBeforeMs":"20000"},"adRequestConfig":{"filterTimeEventsOnDelta":10000,"useCriticalExecOnAdsPrep":true,"userCriticalExecOnAdsProcessing":true,"enableCountdownNextToThumbnailAndroid":true,"preskipScalingFactorAndroid":0.712,"preskipPaddingAndroid":6},"networkProtocolConfig":{"useQuic":true},"androidNetworkStackConfig":{"networkStack":"CRONET","androidCronetResponsePriority":{"priorityValue":"BACKGROUND_10_THREAD_PRIORITY"},"androidMetadataNetworkConfig":{"coalesceRequests":true}},"lidarSdkConfig":{"enableActiveViewReporter":true,"useMediaTime":true,"sendTosMetrics":true,"usePlayerState":false,"enableIosAppStateCheck":true,"enableImprovedSizeReportingAndroid":true,"enableIsAndroidVideoAlwaysMeasurable":true,"enableActiveViewAudioMeasurementAndroid":true},"androidMedialibConfig":{"isItag18MainProfile":true,"initialBandwidthEstimates":[{"detailedNetworkType":"DETAILED_NETWORK_TYPE_WIFI","bandwidthBps":"921853"},{"detailedNetworkType":"DETAILED_NETWORK_TYPE_LTE","bandwidthBps":"631467"}],"viewportSizeFraction":0.85,"enablePrerollPrebuffer":true,"prebufferOptimizeForViewportSize":true,"hpqViewportSizeFraction":0.58},"playerControlsConfig":{"showCachedInTimebar":true},"variableSpeedConfig":{"availablePlaybackSpeeds":[{"label":{"runs":[{"text":"0.25x"}]},"value":0.25},{"label":{"runs":[{"text":"0.5x"}]},"value":0.5},{"label":{"runs":[{"text":"0.75x"}]},"value":0.75},{"label":{"runs":[{"text":"Normal"}]},"value":1},{"label":{"runs":[{"text":"1.25x"}]},"value":1.25},{"label":{"runs":[{"text":"1.5x"}]},"value":1.5},{"label":{"runs":[{"text":"1.75x"}]},"value":1.75},{"label":{"runs":[{"text":"2x"}]},"value":2}],"androidVariableSpeedTimeoutSecs":0,"enableVariableSpeedOnOtf":true},"decodeQualityConfig":{"maximumVideoDecodeVerticalResolution":2160},"vrConfig":{"allowVr":true,"allowSubtitles":true,"showHqButton":true,"sphericalDirectionLoggingEnabled":true,"enableAndroidVr180MagicWindow":true,"enableAndroidMagicWindowEduOverlay":true,"magicWindowEduOverlayText":"Move device to explore video","magicWindowEduOverlayAnimationUrl":"https://youtube.com/img/vr/magic_window_edu_overlay_animation_v2.webp","enableMagicWindowZoom":true},"qoeStatsClientConfig":{"batchedEntriesPeriodMs":"30000"},"androidPlayerStatsConfig":{"usePblForAttestationReporting":false,"usePblForHeartbeatReporting":false,"usePblForPlaybacktrackingReporting":false,"usePblForQoeReporting":true,"changeCpnOnFatalPlaybackError":true},"stickyQualitySelectionConfig":{"stickySelectionType":"DISABLE_STICKY","expirationTimeSinceLastManualVideoQualitySelectionMs":"259200000","expirationTimeSinceLastPlaybackStartMs":"18000000","stickyCeilingOverridesSimpleBitrateCap":true},"adSurveyRequestConfig":{"useGetRequests":true},"retryConfig":{"retryEligibleErrors":["fmt.decode","android.exo.fatal","scripted_player.js.fatal","android.stuck.bufferfull","player.timeout","android.audiotrack"],"retryUnderSameConditionAttempts":1,"retryWithNewSurfaceAttempts":1,"progressiveFallbackOnNonNetworkErrors":true,"l3FallbackOnDrmErrors":true,"retryAfterCacheRemoval":true,"widevineL3EnforcedFallbackOnDrmErrors":true,"exoProxyableFormatFallback":true,"maxPlayerRetriesWhenNetworkUnavailable":2,"retryWithLibvpx":true,"suppressFatalErrorAfterStop":false,"fallbackFromHfrToSfrOnFormatDecodeError":true,"fallbackToSwDecoderOnFormatDecodeError":true},"cmsPathProbeConfig":{"cmsPathProbeDelayMs":7000},"mediaCommonConfig":{"dynamicReadaheadConfig":{"maxReadAheadMediaTimeMs":160000,"minReadAheadMediaTimeMs":15000,"readAheadGrowthRateMs":300,"readAheadWatermarkMarginRatio":0,"minReadAheadWatermarkMarginMs":0,"maxReadAheadWatermarkMarginMs":0,"shouldIncorporateNetworkActiveState":false},"mediaUstreamerRequestConfig":{"enableVideoPlaybackRequest":true,"videoPlaybackUstreamerConfig":"CtAICsMGCAAlMZkqPi1mZmY_NT0Klz9YAWABaAF4j06AAQGgAQGoAQC1AfYo3D_gAQHoAQPwAQH5AQAAAAAAANA_gQIAAAAAAAAYQJACAZgC8AGgAugCuAIAyAIB2gKWARCw6gEYqEYgoJwBKNg2MJh1cIgngAH0A-ABAZgCDMACAdACAuACAegCAoADAogDiCeYAwGoAwOwAwG4AwHAAwHIAwHQAwH4AwGQBAGYBAGgBAGoBAHIBAHQBAHgBADoBAH4BAeABX2IBQGQBQGwBQG4BQHQBQHYBQHgBdAP-AXQD4AGAbgGAcAGAdgGAegGAfgGAZAHAfoC9QEtAACCQjUAAJZCQAFIAWUAAIBAaMBwqAHQhgPNAQAAgD_wAQH9AQAAgD-FAgAAgD6NAs3MzD-VAiUGAT6YAgG1AgAAgD_AApAB0gIRsP__________AR48RlpcXV7aAgUyMDowMOACeOgC6AL1AilcDz79AgAAAD6AAwGdAwrXIz2gAwHFAwAAoEHIAwHVAwAAekTYAwHlA2JKREDtAzLK8z6IBAGYBAHFBJqZWUDVBAAAgD_wBAHIBQHgBQGYBgGoBgG1Br03hjW9BjMzg0DABwHIBwHVBwAAV0PlBwCACUShCAAAAAAAAPC_qQgAAAAAAADwv4IDAJADAeADkE6wBAG4BAHKBFsKFQiA4gkQmHUYrAIlAAAAACgAMABAARDg1AMY0A8qNgoKdGJfY29zdF81MCAIKQAAAAAAAAAASAFQAV2amZk-ZQAAAD9tAAAAP3UAAAA_eMCpB5IBADABSPAu6AQB8AQB-AQBiAUBkAUBmAUBoAUBqAUBsAUB0AUB2AUB6AUB8AUBiAYBkAYBmAYBqAaAgALABgHIBgGCBwoVAACAPxhkIJBOiAcBwAcByAcAgAgBoAgBsAgBuAgBmAkBqQkAAAAAAADwv7EJAAAAAAAA8L_ICQHaCSBZOGZBd3lVM1lhYW05bGVtUUxrV2RXcFIxMm9lWnc9PZgKhOqsGKIKGITqrBiF6qwYhuqsGIfqrBiI6qwYieqsGKgKieqsGLAKAcAKAdAKAdgKAfAKAYALAYgLAcgLAdgLAfALAfgLAZgMAaAMAbgMARgBIAEyDAiGARDkj_nWtpWFAzIMCPMBEIaX0s-2lYUDMgwIjAMQ7Oec-raVhQMyDAiFARCn0KPbtpWFAzIMCPIBEIO0-se2lYUDMgwIiwMQsar71LaVhQMyDAigARDlqvDWtpWFAzIMCJYCEPPBpva2lYUDMgwIigMQzarkjLeVhQMyDAjVBBDwnp_OtpWFAzIMCNYEEKLx4My2lYUDMgwIiwEQ6rOM07CVhQMyDAiMARCXpbLOsJWFAzIMCPkBEKXYx8ywlYUDMgwI-gEQut6N1bCVhQMyDAj7ARCHwJvLsJWFAzIMCNcEEPq-q96wlYUDMgwI2AQQmsyyzrCVhQM6AEgAkMvTjw4BEksAP9Pd4jBEAiAPDb5jNoomS606YaSAlfDZtBAVI3G7kzG5QgPVwwo3SQIgQfpkHXXpPNaRRF5DnRTToN5jn2jWrs9n8iXnc2g3GIoaAmVp","videoPlaybackPostEmptyBody":false,"isVideoPlaybackRequestIdempotent":true},"predictedReadaheadConfig":{"minReadaheadMs":5000,"maxReadaheadMs":157000},"mediaFetchRetryConfig":{"initialDelayMs":1000,"backoffFactor":1.3,"maximumDelayMs":20000,"jitterFactor":0.1},"mediaFetchMaximumServerErrors":10,"mediaFetchMaximumNetworkErrors":-1,"mediaFetchMaximumErrors":10,"serverReadaheadConfig":{"enable":true,"nextRequestPolicy":{"targetAudioReadaheadMs":120000,"targetVideoReadaheadMs":120000}},"useServerDrivenAbr":false},"playerGestureConfig":{"downAndOutLandscapeAllowed":true,"downAndOutPortraitAllowed":true},"taskCoordinatorConfig":{"prefetchCoordinatorBufferedPositionMillisRelease":5000}},"trackingParams":"CAAQu2kiEwiR_7G5-LyFAxWcMh4AHec6CJM=","attestation":{"playerAttestationRenderer":{"challenge":"a=6&a2=1&b=hpxKQv3IIO7rsP1l9TQ3pMaqCFQ&c=1712934009&d=3&e=aQvGIIdgFDM&c5a=1&c5b=yt_player_ias&hh=lh5_QIGf7acvLR9a6HQiCsT6LIsEJD99kpbXod2NvEQ"}},"overlay":{},"playerSettingsMenuData":{"loggingDirectives":{"trackingParams":"CAMQtc4GIhMIkf-xufi8hQMVnDIeAB3nOgiT","visibility":{"types":"12"},"enableDisplayloggerExperiment":true}},"adBreakHeartbeatParams":"Q0FBJTNE","frameworkUpdates":{"entityBatchUpdate":{"mutations":[{"entityKey":"Eg0KC2FRdkdJSWRnRkRNIPYBKAE%3D","type":"ENTITY_MUTATION_TYPE_REPLACE","payload":{"offlineabilityEntity":{"key":"Eg0KC2FRdkdJSWRnRkRNIPYBKAE%3D","addToOfflineButtonState":"ADD_TO_OFFLINE_BUTTON_STATE_ENABLED","commandWrapper":{"command":{"innertubeCommand":{"clickTrackingParams":"CAIQ6ewBIhMIkf-xufi8hQMVnDIeAB3nOgiT","ypcGetOfflineUpsellEndpoint":{"params":"ChPqqN25AQ0KC2FRdkdJSWRnRkRNIgthUXZHSUlkZ0ZETSoTCAlSDwoLYVF2R0lJZGdGRE0gAQ%3D%3D"}}},"loggingDirectives":{"trackingParams":"CAIQ6ewBIhMIkf-xufi8hQMVnDIeAB3nOgiT","enableDisplayloggerExperiment":true}},"contentCheckOk":true,"racyCheckOk":true,"loggingDirectives":{"trackingParams":"CAEQxzciEwiR_7G5-LyFAxWcMh4AHec6CJM=","visibility":{"types":"4"},"enableDisplayloggerExperiment":true}}}}],"timestamp":{"seconds":"1712934009","nanos":757509008}}}}
... 17 more

IT WORKED, TY SO MUCH!!

Duplicate of #17


Bug in drawing conditionals in latex and matplotlib

Informations
After #1278 and #1276, the latex and matplotlib have a bug in drawing conditional gates:
This code:
from qiskit import QuantumRegister, ClassicalRegister, QuantumCircuit
q = QuantumRegister(3, 'q')
c = ClassicalRegister(1, 'c')
circ = QuantumCircuit(q, c)
circ.u2(1.57, 0.7, q[0])
circ.measure(q[0], c[0])
circ.u1(0.1, q[1]).c_if(c, 1)
circ.draw(output='latex')

was drawn correctly before these 2 recent PR merges:

but with this patch the conditional vertical wire is gone:

This is also an issue with the mpl drawer:

But the text drawer is fine:
q_2: |0>──────────────────────────────
                           ┌─────────┐
q_1: |0>───────────────────┤ U1(0.1) ├
        ┌──────────────┐┌─┐└────┬────┘
q_0: |0>┤ U2(1.57,0.7) ├┤M├─────┼─────
        └──────────────┘└╥┘┌────┴────┐
 c_0: 0 ═════════════════╩═╡   = 1   ╞
                           └─────────┘

Yeah, taking a brief look at the code this is being caused by the _get_instructions() output returning different data from the transpiler json format. It used to be op['conditional'] which would have a hex bitmask value. Now it's returning a bit label and is op['condition'] (so the drawers don't even know there is a conditional) we'll need to adjust the drawing code for conditionals to handle the new info.


Preview layout is indented when displaying Release Notes

VSCode Version: Code 1.10.2 (8076a19fdcab7e1fc1707952d652f0bb6c6db331, 2017-03-08T14:02:52.799Z)
OS Version: Windows_NT ia32 10.0.14393
Extensions:

Extension
Author
Version

jshint
dbaeumer
0.10.15

githistory
donjayamanne
0.2.0

trailing-semicolon
naumovs
1.0.2

code-settings-sync
Shan
2.4.4

Don't know why the preview layout which displays Release Notes would be indented in height & width, like this,

Steps to Reproduce:

Select [Help] -> Release Notes

#5745


[PR Workflow] Bot injection of text when TypeSpec usage warning/error is generated

When the build process detects that TypeSpec was not used in the generation of OpenAPI, could we auto-insert the following markdown text (or similar) inserted into the PR:

This is a follow-up to provide context for the TypeSpec Requirement warning generated for this PR.  For more information on this requirement, please see Azure SDK documentation (eng.ms).  If you believe that the ARM board approved an exception in this case, please contact ARM & typespeconboard with the relevant documentation so that we can close on this.  Thanks!

TypeSpec usage is required for all new (greenfields) services.  This is currently enforced as a warning, but will made a blocking error in the future.  Refer to [Azure SDK documentation (eng.ms)](https://eng.ms/docs/products/azure-developer-experience) for more information on addresing this, and contact ARM/typespeconboard for any questions.

TypeSpec usage is required for all new (greenfields) services.  This is currently enforced as a warning, but will be made a blocking error in the future.  Please refer questions about this policy to [RP Help](https://aka.ms/rphelp).  For information on  converting from OpenAPI to TypeSpec, refer to [Azure SDK documentation (eng.ms)](https://eng.ms/docs/products/azure-developer-experience).

(post edited by @konrad-jamrozik)
(post edited by @MattGertz)

(Ah, and of course, the markdown was converted when I submitted this, d'oh...)

From technical standpoint I can propose the following:
We already have logic that obtains required GitHub checks, see getGraphQLQuery called from getRequiredAndAutomatedMergingRequirementsMetCheckRuns. This is used to populate the Next Steps to Merge comment via buildNextStepsToMergeCommentBody. This happens both upon next CI pipeline run e.g. due to commit push, via renderUnifiedPipelineRunEvent as well as in reaction to a labelling event, via processBotUpdateEvent.
We could inject extra logic in buildNextStepsToMergeCommentBody or somewhere in the relevant call chain to make the Next Steps to Merge comment provide extra information. We could read the status of TypeSpec Requirement and TypeSpec Validation checks (adapt the code from getGraphQLQuery) to read failed GitHub checks even if they are not marked as required on GitHub.
Some other code that could be possibly relevant here:

Our pipeline-bot has a callback on any label addition, due to [PullRequest.labeled]: this.pullRequestLabeled. Some of it is processed processBotUpdateEvent. We could inject some logic based on addition of some labels like TypeSpecRequried or TypeSpecInvalid. But then we would need to ensure to revert the changes (remove or add another label, update comment) once TypeSpec problems are fixed / suppressed.

@weshaggard @mikeharder thoughts?
@MattGertz this is a new / special case for our codebase so it is going to take few days of implementation work until we can deploy it.

Thanks @konrad-jamrozik!  I want to keep it generic, if that's OK -- that way, we can update the text in the link instead to correspond to blocking/not blocking state, saving a step.  (This will also help us later when brownfields becomes relevant.
Thanks for the cost numbers also -- lemme know when it ends up in a sprint, and I'll keep partners informed.

Thanks @konrad-jamrozik! I want to keep it generic, if that's OK -- that way, we can update the text in the link instead to correspond to blocking/not blocking state, saving a step. (This will also help us later when brownfields becomes relevant.)
Thanks for the cost numbers also -- lemme know when it ends up in a sprint, and I'll keep partners informed.

@MattGertz the PR review process is complex (see the diagram) and creates a lot of support burden for us (AzSDK EngSys team, ARM team, breaking change review board, SDK team). Hence we strive for clarity. Given that, I believe the message should be explicit about if the problem is a blocker or just a warning. Both the Next Steps to Merge comment and automated merging requirements met check are already clearly communicating what is blocking and what is not. Once we add this info about TypeSpec, we should follow that convention. The extra work to ensure this distinction won't be that significant.

Got it @konrad-jamrozik .  So, let's go with the current wording to start, and then I will file a bug to request that the word "warning" be changed to "blocking error" when we flip the bit on it.

Exchanged mail with Mike.  I'm going to edit the OP to align the text with the "Next Steps" suggestion he made.

Btw how to interpret this:

and contact ARM/typespeconboard for any questions.

?
Is this an email alias? Teams channel?

@MattGertz I was assuming that we discover through automation that the PR being raised is for a new service and show the message only when that condition is satisfied. I do not see a mention of this in Konrad's technical analysis. Can someone clarify?

I was assuming that we discover through automation that the PR being raised is for a new service and show the message only when that condition is satisfied. I do not see a mention of this in Konrad's technical analysis. Can someone clarify?

@rkmanda the overall idea is as follows:

For "greenfield" specs we require the usage of TypeSpec. The automation will detect if this requirement is violated and add relevant info to the Next Steps to Merge comment and Automated merging requirements met check. We also mention this all over the place at https://aka.ms/azsdkdocs.
As of 1/19/2024 this is just a warning, but within weeks we will change this into a merge blocker.
Even so, this is a last resort measure. PR authors should have been informed about this requirement long before they tried to submit a PR that violates it.

Copy-pasting @mikeharder's explanation from the email thread on how we define a "greenfield" spec:

The heuristic we are currently using is simple.  A service is "brownfield" if and only if it contains > a "stable" folder in public/main.  Else, the service is "greenfield".
Overall, the check will work as follows:

Identify all OpenAPI files (*.json) added or changed in a PR
For each OpenAPI file
a.	If TypeSpecRequirement is suppressed, continue
b.	If OpenAPI contains x-typespec-generated, continue (spec is using TypeSpec)
c.	If spec folder in public/main contains "stable" folder, continue (spec is brownfield)
d.	Else, show error (spec appears to be "greenfield" but OpenAPI was not generated from TypeSpec)
If any OpenAPI files caused errors
a.	Fail check (which will block merging)
b.	Show message in "Next Steps to Merge"

If a PR is idenitified as brownfield ("stable" folder in public/main), or a greenfield using TypeSpec, > the check passes and no message is shown.

The method “A service is "brownfield" if and only if it contains a "stable" folder in public/main” could have a leak as Service Tree | Products | Azure Storage Actions (microsoftservicetree.com).  Currently, Storage Actions is private preview, heading to public preview.  However, it has published only a stable version https://github.com/Azure/azure-rest-api-specs/tree/main/specification/storageactions/resource-manager/Microsoft.StorageActions/stable/2023-01-01.   Storage Actions should not be treated as a brownfield, right?

The method “A service is "brownfield" if and only if it contains a "stable" folder in public/main” could have a leak as Service Tree | Products | Azure Storage Actions (microsoftservicetree.com). Currently, Storage Actions is private preview, heading to public preview. However, it has published only a stable version https://github.com/Azure/azure-rest-api-specs/tree/main/specification/storageactions/resource-manager/Microsoft.StorageActions/stable/2023-01-01. Storage Actions should not be treated as a brownfield, right?

Tracking this feedback separately at https://github.com/Azure/azure-rest-api-specs-pr/issues/16733

@MattGertz Looking at the text that will be included, I worry that it is ARM specific but the check, if I am not wrong, applies to data plane too. Is this temporary and we are going to have a doc for data plane?

Pull Request 523770: Add support for 'FYI' GitHub checks + add 'TypeSpec Requirement' check as FYI

@maririos per further discussion we had, the check will apply both to ARM and data-plane. We also updated the check text.

@maririos per further discussion we had, the check will apply both to ARM and data-plane. We also updated the check text. See Pull Request 523770.

I saw it live today and looks great. Thank you for the change :)


Simple WebUI integrating the "text-generation-inference" API

Feature request
What is the simplest way to use this stream API inside a WebUI in local ?
Gradio / Streamlit -> how use those library to use this stream API ? Is it possible ?
HTML/JS example -> any repo to share ?
Other solutions ?
Motivation
Get fastly a WebUI to use this stream API
Your contribution
If i have the confirmation that it doesn't exist, i will definitely work on a WebUI

After few hours of browsing, i think that an Streamlit could do the job,

After few hours of browsing, i think that an Streamlit could do the job,

Hi, could you provide the details on how to handle the websocket responses and render it in the streamlit client? I find it tricky if not manually refreshing it with while True: time.sleep(0.5). Thanks.


Activate climate control

Add support for enabling climate control and heating from HA

initial work in 1c468e7

Hello
Can you tell me if this should already work with the climate? I can turn on the air conditioning via HA, but I cannot adjust the temperature. Attention text is translated with translator because I only speak German. Greetings daniel

Hi Daniel
the climate feature is a work in progress and not really finished. I have little time to work on it at the moment, but since it would be nice to have it I might bump it up the priority list. You can keep watching this issue to get notified if changes are made.

Hello, what needs to be done so that the temperature can be adjusted? With service climate.turn_on the clima turns on, but I have the feeling that the temperature cannot be set with climate.set_temperature. Greetings Daniel


Use pydantic BaseSettings for loading and validating env vars

https://pydantic-docs.helpmanual.io/usage/settings/

closing issue, as env vars are no longer used for tgcf config


Each audio chunk first second corrupt

Hi. I am using (currently only audio) your library for recording purposes.
I'm writing 60 second chunks and send them to server, where I merge them.
All work fine. But one moment: almost each chunk's first second is broken. It sounds like repeated sound with high frequency... I hear it on the very first chunks I recieve from frontend, so that's why asking for your help.
I've tried switching audio formats, but that doesn't help( tried 'wav,ogg' ).
Also I have option for writing video(with audio) same problem with audio there, but video file looks straight.
Any suggestions?
Forgot to mention, that I'm using simple constraints while { audio : "true" }.
I've experimented a little with duration. Looks like with less duration comes less noise. And this noise happens even on first chunk, at start.

can you send me your chunk code?

This may fix your corrupted audio.
https://github.com/muaz-khan/RecordRTC/issues/48

Hi, here I have the same problem recording video and audio in chrome as separate blobs and setting the interval to 5s (like in the demo). Randomly the audio data is corrupted by high frequency noise in the first part (the same in the demo https://www.webrtc-experiment.com/msr/MultiStreamRecorder.html ). I have also simple constraints on the getUserMedia, I'm acquiring only mono channel with a bufferSize of 4096B.
Then I set an higher bufferSize (8192) and the problem seems to be disappeared. Can it be a possibile solution? Any idea about this?
Thank you very much

As far as I'm no longer working under that project I'll close this issue. There's almost identical one you may continue discussion there. Good luck =)


debuginfo issues with parallel functions: file names are not identified

Consider the following file, myexample.py:
import numpy as np
from numba import njit, prange, gdb
from time import time

DATA = np.random.random((1_000_000,))

@njit(parallel=True)
def parallel_sum(timeseries):
    total = 0
    for i in prange(len(timeseries)):
        value = ((7 * timeseries[i]) + 1) / 9
        for j in range(100):
            value = np.sin(value)
            value = np.cos(value)
            value = ((7 * value) + 1) / 9
        total += value
    return total

# Make sure the Numba code is pre-compiled
parallel_sum(DATA)

# This is the part we want to profile:
import os

print(os.getpid())
while True:
    parallel_sum(DATA)

If I run:
$ NUMBA_ENABLE_PROFILING=1 python  myexample.py
/home/itamarst/devel/profila/venv/lib/python3.10/site-packages/numba/core/lowering.py:112: NumbaDebugInfoWarning: Could not find source for function: <function __numba_parfor_gufunc_0x7f6cdacfa500 at 0x7f6cdab03d00>. Debug line information may be inaccurate.
  warnings.warn(NumbaDebugInfoWarning(msg))
987245

The problem: wrong file names
That warning is accurate! If I attach gdb I do get back traces that are somewhat meaningful, but it doesn't identify the filename, instead of myexample.py:14 it says <string>:14, e.g.:
(gdb) thread 20
[Switching to thread 20 (Thread 0x7f6cd5d50640 (LWP 987264))]
#0  do_sin (dx=0, x=<optimized out>) at ../sysdeps/ieee754/dbl-64/s_sin.c:144
144     in ../sysdeps/ieee754/dbl-64/s_sin.c
(gdb) bt
#0  do_sin (dx=0, x=<optimized out>) at ../sysdeps/ieee754/dbl-64/s_sin.c:144
#1  __sin_fma (x=0.72430158876385675) at ../sysdeps/ieee754/dbl-64/s_sin.c:221
#2  0x00007f6d0083d0fa in _3cdynamic_3e::__numba_parfor_gufunc_0x7f6cdacfa500[abi:v5][abi:c8tJTC_2fWQAlzW1yBDkop6GEOEUMEOYSPGuIQMViAQ3iQ8IbKQIMbwoOGNoQDDWwQR1NHAZtvoQrh6RHKR8skqKIYWQImjYg1W7ADge6ExAzM1UUQpZoA](Array<unsigned long long, 1, C, mutable, aligned>, Array<double, 1, C, mutable, aligned>, Array<double, 1, C, mutable, aligned>) (sched=..., timeseries=...,
    total_2__arr=...) at <string>:14
#3  0x00007f6ce3b21186 in __gufunc__._ZN13_3cdynamic_3e36__numba_parfor_gufunc_0x7f6cdacfa500B2v5B118c8tJTC_2fWQAlzW1yBDkop6GEOEUMEOYSPGuIQMViAQ3iQ8IbKQIMbwoOGNoQDDWwQR1NHAZtvoQrh6RHKR8skqKIYWQImjYg1W7ADge6ExAzM1UUQpZoAE5ArrayIyLi1E1C7mutable7alignedE5ArrayIdLi1E1C7mutable7alignedE5ArrayIdLi1E1C7mutable7alignedE ()
#4  0x00007f6ce3b29264 in _ZL12parallel_forPvPPcPmS2_S_mmi._omp_fn.0(void) ()
    at numba/np/ufunc/omppool.cpp:205
#5  0x00007f6ce3ad7c0e in ?? () from /lib/x86_64-linux-gnu/libgomp.so.1.0.0
#6  0x00007f6d04094ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
#7  0x00007f6d04126850 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81

Versions
I'm on Ubuntu 22.04, Python 3.10. I get the same behavior with 0.58.1 and 0.59.0rc1.

parallel.py was the name of the example file I created, yes. The goal here is to enable profiling of parallel functions with Profila, and that requires the ability to map stack traces to the original source code.

I updated the original report to say myexample.py instead of parallel.py to make it clearer what I expected.

Ah, there's a file called parallel.py in Numba also associated with parallel kernel execution, hence some minor confusion on my part, apologies! Thanks for updating the example for clarity.


rbd: detect krbd features in runtime and fallback to nbd

Describe what this PR does
Currently, we recognize and warn for the provided image features based on our prior intelligence at ceph-csi (i.e based on supportedFeatures map and validateImageFeatures) at image/PV creation time. It might be very much possible that the cluster is heterogeneous i.e. the PV creation and application container might both be on different nodes with different kernel versions (krbd driver versions).
This PR adds a mechanism to check for the supported krbd features during mount time, if the krbd driver doesn't have the specified image feature then it will fall back to rbd-nbd mounter.
Is there anything that requires special attention
This PR also provides an option to disable the auto fallback to nbd mounter via storageclass fallbackToNBD parameter.
Related issues
Fixes: #478

Show available bot commands
These commands are normally not required, but in case of issues, leave any of
the following bot commands in an otherwise empty comment in this PR:

/retest ci/centos/<job-name>: retest the <job-name> after unrelated
failure (please report the failure too!)
/retest all: run this in case the CentOS CI failed to start/report any test
progress or results

Where you mention "realtime", you mean "runtime". Please change the comments accordingly.

/retest ci/centos/mini-e2e-helm/k8s-1.21

/retest mini-e2e-helm_k8s-1.21

/retest ci/centos/mini-e2e-helm/k8s-1.21

@Madhu-1 @nixpanic PTAL. Thanks!

/retest ci/centos/mini-e2e-helm/k8s-1.22


How to check if used modules miss import statement

Recently I have faced a problem: I'm trying to find if there are any modules used without import
statement with eslint. But I could not find how to do it with eslint-plugin-import or only eslint. So I'm wondering that are there any configurations for this feature. Thx.

I'm not sure I understand; you're looking for modules that don't happen to import anything? Why?

@ljharb I didnt' mean it that way. Just like when I use React.Component in one of my component files but I forgot to use import React from 'react'（As shown in the screenshot）. I wish eslint could help me check it out. And then when my teammates work together, we can find the same problem easily by using this rule.

It does. Enable jsx-uses-react, iirc.

(In eslint-plugin-react)
Do you have a non-react use case too?

@ljharb yes, I want to find a common use of these cases，not just for react. If I use any components or modules I forgot to import, eslint could show me errors. Just like the no-use-before-define rule. Is there a "no-use-before-import"(this name was made up only for explanation) rule for this?

eslint core already has a number of rules that handle this. React is only special because of JSX.
Try enabling https://npmjs.com/eslint-config-airbnb and see if this shows you all the errors you're looking for.

@ljharb Thanks for helping. I have found it in eslint core. When using JSX, this error could also be found by jsx-no-undef rule in eslint-plugin-react. Pretty awsome!


Add keymap support for macOS

The ctrl-keymaps didn't work on OSX and macOS. They do now because I also added the cmd versions.

Thanks @indri-indri!


If statement erroneously coerces array of single string to just a string

Prerequisites

[X] Write a descriptive title.
[X] Make sure you are able to repro it on the latest released version
[X] Search the existing issues.
[X] Refer to the FAQ.
[X] Refer to Differences between Windows PowerShell 5.1 and PowerShell.

Steps to reproduce
$a = if ($True) { @("a string") } else { @("another string") }
$a.GetType()

Expected behavior
IsPublic IsSerial Name                                     BaseType
-------- -------- ----                                     --------
True     True     Object[]                                 System.Array

Actual behavior
IsPublic IsSerial Name                                     BaseType
-------- -------- ----                                     --------
True     True     String                                   System.Object

Error details
No response
Environment data
Name                           Value
----                           -----
PSVersion                      7.3.0
PSEdition                      Core
GitCommitId                    7.3.0
OS                             Microsoft Windows 10.0.19044
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

Visuals
No response

Note: If you amend the sample to have the array include multiple elements, then it behaves as expected.

Also moving the assignment inside the if/else blocks also fixes the behavior.

Nevermind, this is likely just an unintuitive behavior due to how PowerShell processes output. See https://stackoverflow.com/questions/18476634/powershell-doesnt-return-an-empty-array-as-an-array.


[Feature request]: Restructure files structure

What do you need?
Our root folder has too many files, and we’d like to restructure it as follows:
.
├── .github        # GitHub CI workflows
├── go/            # All Go source code
├── patterns
├── integ/         # Integration code, Docker, Nix, scripts, etc.
└── README.md

I will write up a a more sensible proposal when I get back home.

I implemented these changes in this branch: https://github.com/jaredmontoya/fabric/tree/redesign-project-tree

Hi @jaredmontoya ,
I like your suggestions and explanations.
@danielmiessler is this reduction enough for you?
I would like to have more reduction in root folder and separation of things like it is in mono repo concept.
Therefore, I don't see big problem to have all Go code in go sub folder. go install will also work, just habe additional  go siffix, go install .../go@latest.
All installation and other helfers are typically integration (integ) layer. O would say, there will be come more of such helpers.

@eugeis can you tell me more about why this project is transitioning to a mono repo?
From what I know mono repos are only useful when there are multiple separate projects(maybe even in different languages) that are two parts of one whole and therefore they benefit from being tracked together under one git history.
An example of such a scenario would be a monorepo where backend is in the application-backend directory and frontend is in the application-frontend directory. And in the root there is usually a docker-compose.yml file to start those two services and provide communication between them. In this scenario a mono repo is useful because the API provided by the backend and API understood by the client are in sync under every commit.
Another example is if the project is really big and has a micro-service architecture, then there are a lot more independent projects in subdirectories all usually managed by docker-compose.yml or some other tool.
But currently fabric isn't one of those scenarios.
Also this is exactly what I meant, If someone made a script that executes go install to install fabric their script will break and they will have to append the required suffix. Not a colossal problem but such breakages may be annoying if done frequently.

@jaredmontoya I received a request from @danielmiessler to reduce the number of files and folders in the root of the repository. You’re correct that our current structure doesn’t have multiple layers like a typical monorepo. However, I do see at least two distinctions—CLI and integration—that could help organize things.
We’re not fully transitioning to a monorepo structure; that was just a comparison to illustrate that moving all Go code into a dedicated go/ subfolder wouldn’t pose any major issues.
Regarding your suggestion to move all Go packages to an internal package, I think that could be misleading to Go developers, as it implies restricted access for internal use only. Instead, for clarity and to reduce clutter, we could create a go/ subfolder to house all packages and related files with a clear, semantic structure.

@eugeis I am not that familiar with fabric's codebase so I didn't know that fabric's packages are reusable, I do not insist on the grouping directory being named internal, it might as well be pkg or go.
If you really want to move the GO project root(main.go along with version.go and go.mod+go.sum) to the go subdirectory inside of the project root I won't be radically against it because the only things that I have a strong opinion about are flake.nix, flake.lock and .envrc.
They are required to be in the project root due to technical resons.
It is also possible to move gomod2nix.toml around so I can move it to the nix directory away from go.mod if needed.

@eugeis when fabric is built under a subdirectory called go the resulting binary produced by go build is now called go instead of fabric which is expected behaviour but shouldn't be like this in my opinion.
Moving the go project root out of the repo root creates inconveniences that require use of workarounds like go build -o fabric.
It's time I say what I think after multiple iterations on this feature request.

The first proposed directory structure in this thread only causes major inconveniences while gains that it provides are easily achievable without moving the go root If fabric doesn't plan to do anything special with the new directory structure in the future.
Only changes that I came up with do not sacrifice convenience while still improving developer expirience.

Therefore I will do a final iteration based on all the previous iterations that includes only directory structure changes that give gains while taking nothing away.
After that @danielmiessler is free to either merge my final changes if the number of files in the project root turns out to be small enough for for his liking. If he won't be satisfied with that then I will have to wait until the restructuring is complete and then try to fix all the nix features if it is possible.
changes newly included in the final iteration:

Fixed docker image go version(noticed it was broken while trying to docker files to "integ" and found out it's also a pain to use docker like that.)
gomod2nix moved to the nix fabric package directory
added fabric go binary to .gitignore
moved NOTES.md to misc
fabric packages are now grouped in pkg so it's easy to focus on fabric's internals and not pay attention to files in the root.


Can't use Google Maps Plugin w/ Push Plugin

Expected Behaviour
Be able to build for Android with both plugins.
Actual Behaviour
See log below.
Steps to Reproduce

Add Google Maps plugin and Phonegap Push Plugin together in the same project
Use<EMAIL_ADDRESS>for plugin compatibility purposes.

After reading your documentation, I tried uninstalling and reinstalling the push plugin pointing FCM_VERSION to 15.0.1 to match the maps' version, but it does not exist:
Could not find com.google.firebase:firebase-messaging:15.0.1.
  Searched in the following locations:
      file:/Applications/android-sdk/extras/m2repository/com/google/firebase/firebase-messaging/15.0.1/firebase-messaging-15.0.1.pom
      file:/Applications/android-sdk/extras/m2repository/com/google/firebase/firebase-messaging/15.0.1/firebase-messaging-15.0.1.jar
      file:/Applications/android-sdk/extras/google/m2repository/com/google/firebase/firebase-messaging/15.0.1/firebase-messaging-15.0.1.pom
      file:/Applications/android-sdk/extras/google/m2repository/com/google/firebase/firebase-messaging/15.0.1/firebase-messaging-15.0.1.jar
      file:/Applications/android-sdk/extras/android/m2repository/com/google/firebase/firebase-messaging/15.0.1/firebase-messaging-15.0.1.pom
      file:/Applications/android-sdk/extras/android/m2repository/com/google/firebase/firebase-messaging/15.0.1/firebase-messaging-15.0.1.jar
      https://jcenter.bintray.com/com/google/firebase/firebase-messaging/15.0.1/firebase-messaging-15.0.1.pom
      https://jcenter.bintray.com/com/google/firebase/firebase-messaging/15.0.1/firebase-messaging-15.0.1.jar
      https://maven.google.com/com/google/firebase/firebase-messaging/15.0.1/firebase-messaging-15.0.1.pom
      https://maven.google.com/com/google/firebase/firebase-messaging/15.0.1/firebase-messaging-15.0.1.jar
      https://repo1.maven.org/maven2/com/google/firebase/firebase-messaging/15.0.1/firebase-messaging-15.0.1.pom
      https://repo1.maven.org/maven2/com/google/firebase/firebase-messaging/15.0.1/firebase-messaging-15.0.1.jar

...etc
Any help would be appreciated.
Cordova CLI version and cordova platform version
8.1.2
6.4.0

Plugin version
2.1.3 # Push
2.4.6 # cordova-plugin-googlemaps

Logs taken while reproducing problem
> cordova run android
ANDROID_HOME=/Applications/android-sdk/
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_101.jdk/Contents/Home
Subproject Path: CordovaLib
Configuration 'compile' in project ':' is deprecated. Use 'implementation' instead.
The Task.leftShift(Closure) method has been deprecated and is scheduled to be removed in Gradle 5.0. Please use Task.doLast(Action) instead.
        at build_1kl8wwhxgl2y8uycmi6hq7q3g.run(/Users/xxx/Projects/app/platforms/android/build.gradle:143)
registerResGeneratingTask is deprecated, use registerGeneratedFolders(FileCollection)

registerResGeneratingTask is deprecated, use registerGeneratedFolders(FileCollection)
publishNonDefault is deprecated and has no effect anymore. All variants are now published.

:preBuild
 UP-TO-DATE

:CordovaLib:preBuild
 UP-TO-DATE
:CordovaLib:preDebugBuild
 UP-TO-DATE
:CordovaLib:checkDebugManifest

:CordovaLib:processDebugManifest

:preDebugBuild

:CordovaLib:compileDebugAidl

:compileDebugAidl

:CordovaLib:packageDebugRenderscript
 NO-SOURCE
:compileDebugRenderscript

:checkDebugManifest
:generateDebugBuildConfig
:prepareLintJar UP-TO-DATE

:generateDebugResValues

:generateDebugResources

:processDebugGoogleServices

Found com.google.android.gms:play-services-maps:15.0.1, but version 11.6.2 is needed for the google-services plugin.

Found com.google.android.gms:play-services-location:15.0.1, but version 11.6.2 is needed for the google-services plugin.
:processDebugGoogleServices
FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':processDebugGoogleServices'.
> Please fix the version conflict either by updating the version of the google-services plugin (information about the latest version is available at https://bintray.com/android/android-tools/com.google.gms.google-services/) or updating the version of com.google.android.gms to 11.6.2.

* Try:
Run with --stacktrace
 option to get the stack trace. Run with --info or --debug
 option to get more log output.

* Get more help at https://help.gradle.org

BUILD FAILED in 1s
11 actionable tasks: 10 executed, 1 up-to-date
/Users/xxx/Projects/app/platforms/android/gradlew: Command failed with exit code 1 Error output:
FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':processDebugGoogleServices'.
> Please fix the version conflict either by updating the version of the google-services plugin (information about the latest version is available at https://bintray.com/android/android-tools/com.google.gms.google-services/) or updating the version of com.google.android.gms to 11.6.2.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

* Get more help at https://help.gradle.org

BUILD FAILED in 1s
[ERROR] An error occurred while running cordova run android (exit code 1).

sorry, this is fixed but latest version of the plugin requires cordova-android 7.1.x.

@jcesarmobile - Yikes! That's upsetting. Glad to know I won't run into this issue in the near-future, once the team and I figure out what to do about this pesky plugin dependency.

@jcesarmobile - Still getting this issue, even after upgrading cordova-android to 7.1.2


Error when using rodauth-rails with ruby-oci8

I use rodauth-rails (1.15.0) with sequel-activerecord_connection (1.4.1) and sequel (5.84.0).
When trying to login I get the following error message:
"undefined method `raw_oci_connection' for an instance of OCI8EnhancedAutoRecover"
I tried with ruby-oci8 (2.2.14) and (2.2.13 x64-mingw-ucrt). Any suggestions how I can solve the issue?

The sequel-activerecord_connection gem should work with the Oracle Enhanced adapter. It seems the raw connection stopped getting properly initialized in the latest adapter releases, and that this might be fixed on master. Could you try pulling activerecord-oracle_enhanced-adapter from master and see if it fixes the issue? I might add a workaround either way, as it's been a while since the last adapter release.

It's still the same issue. The error occurs at app/misc/rodauth_app.rb:11:in `block in class:RodauthApp' when invoking r.rodauth

Something is not compatible with activerecord-oracle_enhanced-adapter from master:
wrong number of arguments (given 4, expected 1..3)
activerecord (<IP_ADDRESS>) lib/active_record/connection_adapters/abstract_adapter.rb:74:in initialize'
oracle-enhanced (b8821cf48ef5) lib/active_record/connection_adapters/oracle_enhanced_adapter.rb:250:in initialize' oracle-enhanced (b8821cf48ef5) lib/active_record/connection_adapters/oracle_enhanced_adapter.rb:76:in new'
oracle-enhanced (b8821cf48ef5) lib/active_record/connection_adapters/oracle_enhanced_adapter.rb:76:in oracle_enhanced_connection' activerecord (<IP_ADDRESS>) lib/active_record/connection_adapters/abstract/connection_pool.rb:656:in public_send'
activerecord (<IP_ADDRESS>) lib/active_record/connection_adapters/abstract/connection_pool.rb:656:in new_connection' activerecord (<IP_ADDRESS>) lib/active_record/connection_adapters/abstract/connection_pool.rb:700:in checkout_new_connection'
activerecord (<IP_ADDRESS>) lib/active_record/connection_adapters/abstract/connection_pool.rb:679:in try_to_checkout_new_connection' activerecord (<IP_ADDRESS>) lib/active_record/connection_adapters/abstract/connection_pool.rb:640:in acquire_connection'
activerecord (<IP_ADDRESS>) lib/active_record/connection_adapters/abstract/connection_pool.rb:341:in checkout' activerecord (<IP_ADDRESS>) lib/active_record/connection_adapters/abstract/connection_pool.rb:181:in connection'
activerecord (<IP_ADDRESS>) lib/active_record/connection_adapters/abstract/connection_handler.rb:211:in retrieve_connection' activerecord (<IP_ADDRESS>) lib/active_record/connection_handling.rb:313:in retrieve_connection'
activerecord (<IP_ADDRESS>) lib/active_record/connection_handling.rb:280:in connection' activerecord (<IP_ADDRESS>) lib/active_record/migration.rb:648:in connection'
activerecord (<IP_ADDRESS>) lib/active_record/migration.rb:643:in build_watcher' activerecord (<IP_ADDRESS>) lib/active_record/migration.rb:625:in block in call'
activerecord (<IP_ADDRESS>) lib/active_record/migration.rb:624:in synchronize' activerecord (<IP_ADDRESS>) lib/active_record/migration.rb:624:in call'
actionpack (<IP_ADDRESS>) lib/action_dispatch/middleware/callbacks.rb:27:in block in call' activesupport (<IP_ADDRESS>) lib/active_support/callbacks.rb:99:in run_callbacks'
actionpack (<IP_ADDRESS>) lib/action_dispatch/middleware/callbacks.rb:26:in call' actionpack (<IP_ADDRESS>) lib/action_dispatch/middleware/executor.rb:14:in call'
actionpack (<IP_ADDRESS>) lib/action_dispatch/middleware/actionable_exceptions.rb:17:in call' actionpack (<IP_ADDRESS>) lib/action_dispatch/middleware/debug_exceptions.rb:28:in call'
web-console (4.2.1) lib/web_console/middleware.rb:132:in call_app' web-console (4.2.1) lib/web_console/middleware.rb:28:in block in call'
web-console (4.2.1) lib/web_console/middleware.rb:17:in catch' web-console (4.2.1) lib/web_console/middleware.rb:17:in call'
actionpack (<IP_ADDRESS>) lib/action_dispatch/middleware/show_exceptions.rb:29:in call' railties (<IP_ADDRESS>) lib/rails/rack/logger.rb:40:in call_app'
railties (<IP_ADDRESS>) lib/rails/rack/logger.rb:25:in block in call' activesupport (<IP_ADDRESS>) lib/active_support/tagged_logging.rb:99:in block in tagged'
activesupport (<IP_ADDRESS>) lib/active_support/tagged_logging.rb:37:in tagged' activesupport (<IP_ADDRESS>) lib/active_support/tagged_logging.rb:99:in tagged'
railties (<IP_ADDRESS>) lib/rails/rack/logger.rb:25:in call' sprockets-rails (3.5.2) lib/sprockets/rails/quiet_assets.rb:17:in call'
actionpack (<IP_ADDRESS>) lib/action_dispatch/middleware/remote_ip.rb:93:in call' actionpack (<IP_ADDRESS>) lib/action_dispatch/middleware/request_id.rb:26:in call'
rack (2.2.9) lib/rack/method_override.rb:24:in call' rack (2.2.9) lib/rack/runtime.rb:22:in call'
activesupport (<IP_ADDRESS>) lib/active_support/cache/strategy/local_cache_middleware.rb:29:in call' actionpack (<IP_ADDRESS>) lib/action_dispatch/middleware/server_timing.rb:61:in block in call'
actionpack (<IP_ADDRESS>) lib/action_dispatch/middleware/server_timing.rb:26:in collect_events' actionpack (<IP_ADDRESS>) lib/action_dispatch/middleware/server_timing.rb:60:in call'
actionpack (<IP_ADDRESS>) lib/action_dispatch/middleware/executor.rb:14:in call' actionpack (<IP_ADDRESS>) lib/action_dispatch/middleware/static.rb:23:in call'
rack (2.2.9) lib/rack/sendfile.rb:110:in call' actionpack (<IP_ADDRESS>) lib/action_dispatch/middleware/host_authorization.rb:138:in call'
railties (<IP_ADDRESS>) lib/rails/engine.rb:530:in call' puma (6.4.2) lib/puma/configuration.rb:272:in call'
puma (6.4.2) lib/puma/request.rb:100:in block in handle_request' puma (6.4.2) lib/puma/thread_pool.rb:378:in with_force_shutdown'
puma (6.4.2) lib/puma/request.rb:99:in handle_request' puma (6.4.2) lib/puma/server.rb:464:in process_client'
puma (6.4.2) lib/puma/server.rb:245:in block in run' puma (6.4.2) lib/puma/thread_pool.rb:155:in block in spawn_thread' `

It appears that the master branch isn't compatible with Active Record 7.0, it's passing arguments to abstract adapter accepted only by AR 7.1+. I don't want to force people using rodauth-rails to upgrade Rails, especially since rodauth-rails officially supports Rails 5.0+, so I'll prepare a hotfix for sequel-activerecord_connection.

I just pushed a potential fix to the sequel-activerecord_connection master branch, would you mind testing it out?


RecyclerView with GridLInearLayout manager Weird Behavior

Sometime The RecyclerView Item Take Whole row og GridLayoutManger On load more Action I upload below image for understanding the problem.

Hi,
can you provide code snippet for Paginate setuping and how do you add more items into the list.
Can you confirm that this item (that takes full span) is the last item on a certain page?

There is  Paginate Initialization code.. Where newSpanCount is number of Grid Column
 int threshold=4;
        paginate = Paginate.with(listProduct, this)
                .setLoadingTriggerThreshold(threshold)
                .setLoadingListItemSpanSizeLookup(new LoadingListItemSpanLookup() {
                    @Override
                    public int getSpanSize() {
                        return newSpanCount ;
                    }
                })
                .build();

And below code is adding more items...
 int range = productAdapter.getItemCount();
            // productAdapter.products.addAll(productsResponse.getProducts());
            productAdapter.addAll(productsResponse.getProducts());
            loading = false;
            System.out.print("Size" + productList.size());
            productAdapter.notifyItemRangeInserted(range,productsResponse.getProducts().size());
            productAdapter.notifyDataSetChanged();

And The item which take full span is the first item in a particular page when loading more..

What's the implementation of productAdapter.addAll(items) -  do you call any adapter related callbacks inside that method?
Why do you call both notifyItemRangeInserted(int positionStart, itemCount) and notifyDataSetChanged() ?
Check the sample for the example for RecyclerView + GridLayoutManager with span = 2.

Since long inactivity on this issue, I will close it for now. Feel free to reopen it if you still have problems with this.


Update AddParticipant

Refactor based on latest swagger changes
Make AddParticipant singular
add CallInvite overload for AddParticipant
Pass down Source from client to CallConnection object for internal use

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.Communication.CallAutomation