Fórum Root.cz
		Hlavní témata => Software => Téma založeno: Jigdo  13. 01. 2023, 14:12:38
		
			
			- 
				yt-dlp mi pri pokusu o download m3u8 pise "ERROR: Initialization fragment found after media fragments, unable to download"
 hledal jsem cim to je, na GitHub nekdo otevrel issue #4777 ale pozdeji ho zavreli.
 
 Dalsi prispevek na odkazuje na pouziti N-m3u8DL-CLI coz bezi jen na Window$ :(
 
 Poradi nekdo jak na to? --key pro program funguje, ale sifrovany obsah video+audio nejde stahnout :(
- 
				ved to mas v errore, ten playlist ma nespravny format.
			
- 
				ved to mas v errore, ten playlist ma nespravny format.
 
 
 Nejsem si jisty jaky je spravny format :( @hknmtt poradis?
 
 Podarilo se mi stahnout akorat ten prvni fragment pres prohlizec "map.m4a/mp4"
 
 Ktery u mp4 potvrzuje KID s tim vygenerovany v WKS-KEYS ....
 
 (v prohlizeci se mi nacetly tyhle playlisty):
 ctr-all- (*.mp4, *.m4a, *.vtt)
 composite_1800k_CENC_CTR_FHD_SDR_(*.mp4) - Encrypted
 composite_2400k_CENC_CTR_FHD_SDR_(*.mp4) - Encrypted
 composite_128k_mp4a.40.2_cs_PRIMARY_(*.m4a)
 composite_en_SDH_(*.vtt)
 
 Koukam do toho playlistu "ctr-all-" a ani jeden se neda stahnout pres yt-dlp :(
 
 eac-3 tam ma 8 jazyku/playlistu
 aac-128 ma 10 jazyku/playlistu
 aac-64k ma 10 jazyku/playlistu
 sub-main ma 30 jazyku/playlistu
 
 yt-dlp stale hlasi: ERROR: Initialization fragment found after media fragments, unable to download
 pri pokusu o individualni download playlistu .... :(
- 
				ved to mas v errore, ten playlist ma nespravny format.
 
 
 Koukam do toho ctr-all-*.m3u8 ale nic tam takoveho "obvious" nevidim :(
 https://en.wikipedia.org/wiki/M3U
 
 #EXTM3U
 
 #EXT-X-INDEPENDENT-SEGMENTS
 
 #EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="eac-3",NAME="English",LANGUAGE="en",AUTOSELECT=YES,CHANNELS="6",URI="r/composite_256k_ec-3_en_PRIMARY_xxxxx.m3u8"
 #EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="eac-3",NAME="English [Audio Description]",LANGUAGE="en",AUTOSELECT=YES,CHARACTERISTICS="public.accessibility.describes-video",CHANNELS="2",URI="r/composite_128k_mp4a.40.2_en_NARRATION_xxxxxx.m3u8"
 
 #EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="aac-128k",NAME="English",LANGUAGE="en",AUTOSELECT=YES,CHANNELS="2",URI="r/composite_128k_mp4a.40.2_en_PRIMARY_xxxxxxxxxx.m3u8"
 #EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="aac-128k",NAME="English [Audio Description]",LANGUAGE="en",AUTOSELECT=YES,CHARACTERISTICS="public.accessibility.describes-video",CHANNELS="2",URI="r/composite_128k_mp4a.40.2_en_NARRATION_xxxxxxxx.m3u8"
 
 #EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="aac-64k",NAME="English",LANGUAGE="en",AUTOSELECT=YES,CHANNELS="2",URI="r/composite_64k_mp4a.40.2_en_PRIMARY_xxxxxxxxxx.m3u8"
 #EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="aac-64k",NAME="English [Audio Description]",LANGUAGE="en",AUTOSELECT=YES,CHARACTERISTICS="public.accessibility.describes-video",CHANNELS="2",URI="r/composite_64k_mp4a.40.2_en_NARRATION_xxxxxxxx.m3u8"
 
 #EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="sub-main",NAME="English [CC]",LANGUAGE="en",AUTOSELECT=YES,FORCED=NO,CHARACTERISTICS="public.accessibility.transcribes-spoken-dialog,public.accessibility.describes-music-and-sound",URI="r/composite_en_SDH_xxxxxxxxxxx.m3u8"
 
 #EXT-X-STREAM-INF:BANDWIDTH=3247723,AVERAGE-BANDWIDTH=2035951,CODECS="avc1.64001f,mp4a.40.2",RESOLUTION=1280x720,FRAME-RATE=23.976,HDCP-LEVEL=TYPE-0,CHARACTERISTICS="com.dss.ctr.hd",AUDIO="aac-128k",SUBTITLES="sub-main"
 r/composite_2400k_CENC_CTR_FHD_SDR_xxxxxxxx.m3u8
 #EXT-X-STREAM-INF:BANDWIDTH=4069096,AVERAGE-BANDWIDTH=2499509,CODECS="avc1.64001f,mp4a.40.2",RESOLUTION=1280x720,FRAME-RATE=23.976,HDCP-LEVEL=TYPE-0,CHARACTERISTICS="com.dss.ctr.hd",AUDIO="aac-128k",SUBTITLES="sub-main"
 r/composite_3000k_CENC_CTR_FHD_SDR_xxxxxxxx.m3u8
 #EXT-X-STREAM-INF:BANDWIDTH=5660779,AVERAGE-BANDWIDTH=3412665,CODECS="avc1.64001f,mp4a.40.2",RESOLUTION=1280x720,FRAME-RATE=23.976,HDCP-LEVEL=TYPE-0,CHARACTERISTICS="com.dss.ctr.hd",AUDIO="aac-128k",SUBTITLES="sub-main"
 r/composite_4250k_CENC_CTR_FHD_SDR_xxxxxxxx.m3u8
 
 #EXT-X-STREAM-INF:BANDWIDTH=3376359,AVERAGE-BANDWIDTH=2165101,CODECS="avc1.64001f,ec-3,mp4a.40.2",RESOLUTION=1280x720,FRAME-RATE=23.976,HDCP-LEVEL=TYPE-0,CHARACTERISTICS="com.dss.ctr.hd",AUDIO="eac-3",SUBTITLES="sub-main"
 r/composite_2400k_CENC_CTR_FHD_SDR_xxxxxxxx.m3u8
 #EXT-X-STREAM-INF:BANDWIDTH=4197732,AVERAGE-BANDWIDTH=2628659,CODECS="avc1.64001f,ec-3,mp4a.40.2",RESOLUTION=1280x720,FRAME-RATE=23.976,HDCP-LEVEL=TYPE-0,CHARACTERISTICS="com.dss.ctr.hd",AUDIO="eac-3",SUBTITLES="sub-main"
 r/composite_3000k_CENC_CTR_FHD_SDR_xxxxxxxx.m3u8
 #EXT-X-STREAM-INF:BANDWIDTH=5789415,AVERAGE-BANDWIDTH=3541815,CODECS="avc1.64001f,ec-3,mp4a.40.2",RESOLUTION=1280x720,FRAME-RATE=23.976,HDCP-LEVEL=TYPE-0,CHARACTERISTICS="com.dss.ctr.hd",AUDIO="eac-3",SUBTITLES="sub-main"
 r/composite_4250k_CENC_CTR_FHD_SDR_xxxxxxxx.m3u8
 
 #EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=420501,CODECS="avc1.64001f",RESOLUTION=1280x720,HDCP-LEVEL=TYPE-0,CHARACTERISTICS="com.dss.ctr.hd",URI="r/composite_2400k_Iframe_CENC_CTR_FHD_SDR_xxxxxxxx.m3u8"
 
 #EXT-X-SESSION-KEY:METHOD=SAMPLE-AES-CTR,KEYFORMAT="urn:uuid:xxxxxxxx",KEYFORMATVERSIONS="1",CHARACTERISTICS="com.dss.ctr.hd",URI="data:text/plain;base64,AAAAxxxxxxxx="
 #EXT-X-SESSION-KEY:METHOD=SAMPLE-AES-CTR,KEYFORMAT="com.microsoft.playready",KEYFORMATVERSIONS="1",CHARACTERISTICS="com.dss.ctr.hd",
 URI="data:text/plain;charset=UTF-16;base64,xxxxxxxxx="
 #EXT-X-SESSION-KEY:METHOD=SAMPLE-AES-CTR,KEYFORMAT="PRMNAGRA",KEYFORMATVERSIONS="1",CHARACTERISTICS="com.dss.ctr.hd",
 URI="data:text/plain;base64,xxxxxxxx="
 
 Je tady nekdo kdo se vyzna v M3U, je tam neco spatne?
- 
				spomenul som si ze ked som sa babral s mp4 kontajnermi ze niekedy mozu mat header/info na konci a nie na zaciatku. to sa casto stava ked dopredu nie su zname informacie - tzn pripad ziveho vysielania, alebo proste enkoder to tak spravi. moze teda ist o tento pripad kedy ten program potrebuje tie headery/metadata na zaciatku aby zacal pracovat. inak sa bezne musis stiahnut cely subor a naparsovat. a problem je teda so samotnym kontajnerom a nie playlistom ako takym. skusil by som preto iny program asi ktory si to vie osetrit. pripadne potom manualne tie embedovane playlisti skusit tahat a nie tento hlavny plalist ktory len odkazuje na playlisty s roznymi urovnami kvality.
			
- 
				spomenul som si ze ked som sa babral s mp4 kontajnermi ze niekedy mozu mat header/info na konci a nie na zaciatku. to sa casto stava ked dopredu nie su zname informacie - tzn pripad ziveho vysielania, alebo proste enkoder to tak spravi. moze teda ist o tento pripad kedy ten program potrebuje tie headery/metadata na zaciatku aby zacal pracovat. inak sa bezne musis stiahnut cely subor a naparsovat. a problem je teda so samotnym kontajnerom a nie playlistom ako takym. skusil by som preto iny program asi ktory si to vie osetrit. pripadne potom manualne tie embedovane playlisti skusit tahat a nie tento hlavny plalist ktory len odkazuje na playlisty s roznymi urovnami kvality.
 
 
 
 Co je zvlastni ze kdyz kouknu co je v nabidce pres
 
 $ yt-dlp -F --allow-unplayable-formats --verbose --write-pages "https://vod-akc-eu-east-1.media.ds sott.com/ps01/dis ney/xxxxxxxxx/ctr-all-xxxxxxxx.m3u8?r=720&v=1&hash=xxxxxxxxxx"
 
 tak mi to vyhodi nabidku tech formatu
 
 aac-128k-Deutsch                     mp4 audio only     |       m3u8  | audio only        unknown    [de] Deutsch
 aac-128k-English                     mp4 audio only     |       m3u8  | audio only        unknown    [en] English
 aac-128k-English__Audio_Description_ mp4 audio only     |       m3u8  | audio only        unknown    [en] English [Audio Description]
 aac-128k-Español                     mp4 audio only     |       m3u8  | audio only        unknown    [es-ES] Español
 aac-128k-Español__Latinoamericano_   mp4 audio only     |       m3u8  | audio only        unknown    [es-419] Español (Latinoamericano)
 aac-128k-Français                    mp4 audio only     |       m3u8  | audio only        unknown    [fr-FR] Français
 aac-128k-Italiano                    mp4 audio only     |       m3u8  | audio only        unknown    [it] Italiano
 aac-128k-Polski                      mp4 audio only     |       m3u8  | audio only        unknown    [pl] Polski
 aac-128k-Português__Brasil_          mp4 audio only     |       m3u8  | audio only        unknown    [pt-BR] Português (Brasil)
 aac-128k-Čeština                     mp4 audio only     |       m3u8  | audio only        unknown    [cs] Čeština
 
 aac-64k-Deutsch                      mp4 audio only     |       m3u8  | audio only        unknown    [de] Deutsch
 aac-64k-English                      mp4 audio only     |       m3u8  | audio only        unknown    [en] English
 aac-64k-English__Audio_Description_  mp4 audio only     |       m3u8  | audio only        unknown    [en] English [Audio Description]
 aac-64k-Español                      mp4 audio only     |       m3u8  | audio only        unknown    [es-ES] Español
 aac-64k-Español__Latinoamericano_    mp4 audio only     |       m3u8  | audio only        unknown    [es-419] Español (Latinoamericano)
 aac-64k-Français                     mp4 audio only     |       m3u8  | audio only        unknown    [fr-FR] Français
 aac-64k-Italiano                     mp4 audio only     |       m3u8  | audio only        unknown    [it] Italiano
 aac-64k-Polski                       mp4 audio only     |       m3u8  | audio only        unknown    [pl] Polski
 aac-64k-Português__Brasil_           mp4 audio only     |       m3u8  | audio only        unknown    [pt-BR] Português (Brasil)
 aac-64k-Čeština                      mp4 audio only     |       m3u8  | audio only        unknown    [cs] Čeština
 
 eac-3-Deutsch                        mp4 audio only     |       m3u8  | audio only        unknown    [de] Deutsch
 eac-3-English                        mp4 audio only     |       m3u8  | audio only        unknown    [en] English
 eac-3-English__Audio_Description_    mp4 audio only     |       m3u8  | audio only        unknown    [en] English [Audio Description]
 eac-3-Español                        mp4 audio only     |       m3u8  | audio only        unknown    [es-ES] Español
 eac-3-Español__Latinoamericano_      mp4 audio only     |       m3u8  | audio only        unknown    [es-419] Español (Latinoamericano)
 eac-3-Français                       mp4 audio only     |       m3u8  | audio only        unknown    [fr-FR] Français
 eac-3-Italiano                       mp4 audio only     |       m3u8  | audio only        unknown    [it] Italiano
 eac-3-Polski                         mp4 audio only     |       m3u8  | audio only        unknown    [pl] Polski
 eac-3-Português__Brasil_             mp4 audio only     |       m3u8  | audio only        unknown    [pt-BR] Português (Brasil)
 eac-3-Čeština                        mp4 audio only     |       m3u8  | audio only        unknown    [cs] Čeština
 386                                  mp4 640x360     24 |  386k m3u8  | avc1.4d401f  386k video only
 579                                  mp4 640x360     24 |  579k m3u8  | avc1.4d401f  579k video only
 685                                  mp4 640x360     24 |  685k m3u8  | avc1.4d401f  685k video only
 878                                  mp4 640x360     24 |  878k m3u8  | avc1.4d401f  878k video only
 1073                                 mp4 854x480     24 | 1073k m3u8  | avc1.4d401f 1073k video only
 1202                                 mp4 854x480     24 | 1202k m3u8  | avc1.4d401f 1202k video only
 1515                                 mp4 854x480     24 | 1516k m3u8  | avc1.4d401f 1516k video only
 1644                                 mp4 854x480     24 | 1645k m3u8  | avc1.4d401f 1645k video only
 
 2035                                 mp4 1280x720    24 | 2036k m3u8  | avc1.64001f 2036k video only
 2165                                 mp4 1280x720    24 | 2165k m3u8  | avc1.64001f 2165k video only
 2499                                 mp4 1280x720    24 | 2500k m3u8  | avc1.64001f 2500k video only
 2628                                 mp4 1280x720    24 | 2629k m3u8  | avc1.64001f 2629k video only
 3412                                 mp4 1280x720    24 | 3413k m3u8  | avc1.64001f 3413k video only
 3541                                 mp4 1280x720    24 | 3542k m3u8  | avc1.64001f 3542k video only
 
 
 A kdyz koukam treba do m3u playlistu pro audio tak to vypada takhle
 
 
 https://vod-ftc-eu-east-2.media.ds sott.com/ps01/dis ney/xxxxxx/r/composite_256k_ec-3_en_PRIMARY_xxxxxx.m3u8
 
 #EXT-X-MAP:URI="xxxxxx/532c-MAIN/03/audio_ec3_256K/map.mp4a"
 #EXTINF:8,
 xxxxxx/532c-MAIN/03/audio_ec3_256K/00/00/00_000.mp4a
 
 #EXTINF:3.968,
 xxxxxx/532c-MAIN/03/audio_ec3_256K/xxxxxx/00/08/00_000.mp4a
 #EXT-X-DS-MARKER:ID="INT-1"
 #EXTINF:4.032,
 xxxxxx/532c-MAIN/03/audio_ec3_256K/xxxxxx/00/08/03_968.mp4a
 
 #EXTINF:8.448,
 xxxxxx/532c-MAIN/03/audio_ec3_256K/xxxxxx/00/12/40_000.mp4a
 #EXT-X-DS-MARKER:ID="INT-2"
 #EXTINF:7.552,
 xxxxxx/532c-MAIN/03/audio_ec3_256K/xxxxxx/00/12/48_448.mp4a
 
 #EXT-X-DS-MARKER:ID="INT-END"
 #EXT-X-DISCONTINUITY
 #EXT-X-MAP:URI="xxxxxx/3eea-DUB_CARD/03/audio_ec3_256K/map.mp4a"
 #EXTINF:8,
 xxxxxx/3eea-DUB_CARD/03/audio_ec3_256K/00/00/00_000.mp4a
 #EXTINF:8,
 xxxxxx/3eea-DUB_CARD/03/audio_ec3_256K/00/00/08_000.mp4a
 #EXTINF:4.064,
 xxxxxx/3eea-DUB_CARD/03/audio_ec3_256K/00/00/16_000.mp4a
 #EXT-X-DISCONTINUITY
 #EXT-X-MAP:URI="xxxxxx/e103-DUB_CARD/03/audio_ec3_256K/map.mp4a"
 #EXTINF:8,
 xxxxxx/e103-DUB_CARD/03/audio_ec3_256K/00/00/00_000.mp4a
 #EXTINF:7.232,
 xxxxxx/e103-DUB_CARD/03/audio_ec3_256K/00/00/08_000.mp4a
 #EXT-X-DISCONTINUITY
 #EXT-X-MAP:URI="xxxxxx/b986-DUB_CARD/03/audio_ec3_256K/map.mp4a"
 #EXTINF:8,
 xxxxxx/b986-DUB_CARD/03/audio_ec3_256K/00/00/00_000.mp4a
 #EXTINF:4.128,
 xxxxxx/b986-DUB_CARD/03/audio_ec3_256K/00/00/08_000.mp4a
 #EXT-X-DISCONTINUITY
 #EXT-X-MAP:URI="xxxxxx/e576-DUB_CARD/03/audio_ec3_256K/map.mp4a"
 #EXTINF:8,
 xxxxxx/e576-DUB_CARD/03/audio_ec3_256K/00/00/00_000.mp4a
 #EXTINF:0.128,
 xxxxxx/e576-DUB_CARD/03/audio_ec3_256K/00/00/08_000.mp4a
 #EXT-X-DISCONTINUITY
 #EXT-X-MAP:URI="xxxxxx/6f24-DUB_CARD/03/audio_ec3_256K/map.mp4a"
 #EXTINF:8,
 xxxxxx/6f24-DUB_CARD/03/audio_ec3_256K/00/00/00_000.mp4a
 #EXTINF:7.232,
 xxxxxx/6f24-DUB_CARD/03/audio_ec3_256K/00/00/08_000.mp4a
 #EXT-X-ENDLIST
 
 
 
 Kdyz jsem zkousel stahnou individualni playlist hlasi to tu samou chybu :(
 
 Ale nejak to jde, protoze na netu je plno DSNP WebRIPu .........
- 
				ako som pisal, nejde o tie playlisty ale o samotne subory. prave tie .mp4a, co je len mp4 audio. z nejakeho dovodu asi ten program nechce tie subory tahat ako bezny download ze ich len ulozi na disk, ale ich chce nejako spracovat a kvoli tym headerom v ich kontajneri to nevie spracovat. pozrel by som teda ze ci tam nie je nejaka vlajka ktora tam automaticky zapina nejake spracovanie suborov a ze nerobi len cisty download a vypnut to.
			
- 
				na webe sa daju najst parsery na mp4 subory kde ti vypise strukturu kontajneru a mozes si pozriet ci su headery na zaciatku alebo nie. potom vies na 100% ci ide o problem s headermi alebo nie.
			
- 
				https://stackoverflow.com/questions/35177797/what-exactly-is-fragmented-mp4fmp4-how-is-it-different-from-normal-mp4
			
- 
				Nechce se mi to moc studovat, ale myslím, že by to mohlo fungovat, i když tu kontrolu ve zdrojáku zrušíš.
			
- 
				ako som pisal, nejde o tie playlisty ale o samotne subory. prave tie .mp4a, co je len mp4 audio. z nejakeho dovodu asi ten program nechce tie subory tahat ako bezny download ze ich len ulozi na disk, ale ich chce nejako spracovat a kvoli tym headerom v ich kontajneri to nevie spracovat. pozrel by som teda ze ci tam nie je nejaka vlajka ktora tam automaticky zapina nejake spracovanie suborov a ze nerobi len cisty download a vypnut to.
 
 
 
 Doposud mi vsude fungovala vlajka "yt-dlp --allow-unplayable-formats" a stahnu si zvlast audio/video ktere potrebuji .....ale u DS NP to nefunguje ....
- 
				na webe sa daju najst parsery na mp4 subory kde ti vypise strukturu kontajneru a mozes si pozriet ci su headery na zaciatku alebo nie. potom vies na 100% ci ide o problem s headermi alebo nie.
 
 
 
 http://mp4parser.com/ nejede ...jen dneska, nebo delsi dobu?
 
 Nejaky jiny dporuci nekdo?
- 
				Problém není ve videu, ale v tom playlistu. Edit: Teda v tom jak ho yt-dlp dementně parsuje.
			
- 
				Problém není ve videu, ale v tom playlistu. Edit: Teda v tom jak ho yt-dlp dementně parsuje.
 
 
 OK, chyba ja v tom jak to yt-dlp parsuje .... existuje prepinac, kterym to jde napravit
 A nebo jeste lepe, cim se daji z DS NP stahnout mp4 (Enc rypted), mp4a a vtt?
 
 Koukam na https://github.com/yt-dlp/yt-dlp a nic takove "obvious" tam nevidim :(
 Navic v nove verzi maji:
 
 Merged with youtube-dl v2021.12.17+ commit/195f22f and youtube-dlc v2020.11.11-3+ commit/f9401f2:
 You get all the features and patches of youtube-dlc in addition to the latest youtube-dl
- 
				a mas poslednu verziu toho programu? ono pri youtube sa zmeny robia kazdu chvilu lebo yt aktivne bojuje proti stahovacom, takze furt nieco menia aby im to ztazili.
			
- 
				a mas poslednu verziu toho programu? ono pri youtube sa zmeny robia kazdu chvilu lebo yt aktivne bojuje proti stahovacom, takze furt nieco menia aby im to ztazili.
 
 
 :)
 Ano, mam
 yt-dlp is up to date (2023.01.06)
 
- 
				a v issues na githube nie je nikto s rovnakym problemom?
			
- 
				a v issues na githube nie je nikto s rovnakym problemom?
 
 
 na GitHub nekdo otevrel issue #4777 ale pozdeji ho zavreli.
- 
				Tady je najaky Python scrip
 https://github.com/TDenisM/DISNEY-4K-SCRIPT/blob/main/disneyplus.py
 ale je to delane pro Window$ .......
 
 Nevidi tam v tom nekdo, jak to stahuji?
- 
				Takze Audio se da stahovat pomoci ffmpeg
 
 ffmpeg -i "https://vod-ftc-eu-east-2.media.dssott.com/ps01/dis ney/xxxxxxxxx/r/composite_128k_mp4a.40.2_cs_PRIMARY_xxxxxxx.m3u8" -c copy composite_128k_mp4a.40.2_cs_PRIMARY.m4a
 
 Ale u Videa to hlasi
 [hls,applehttp @ 0x556c184c3800] SAMPLE-AES encryption is not supported yet
 [hls,applehttp @ 0x556c184c3800] Failed to open an initialization section in playlist 0
 
- 
				yt-dlp mi pri pokusu o download m3u8 pise "ERROR: Initialization fragment found after media fragments, unable to download"
 hledal jsem cim to je, na GitHub nekdo otevrel issue #4777 ale pozdeji ho zavreli.
 
 Dalsi prispevek na odkazuje na pouziti N-m3u8DL-CLI coz bezi jen na Window$ :(
 
 Poradi nekdo jak na to? --key pro program funguje, ale sifrovany obsah video+audio nejde stahnout :(
 
 
 
 Vyreseno = pro Linux existuje verze - N_m3u8DL-RE_v0.1.5.3-beta
 Vse funguje jak ma ....