Compare commits

...

9 Commits

Author SHA1 Message Date
r3414385@gmail.com 873e6eb781
Merge 4049115f3c into 6ec6fb7c0f 2026-04-11 07:36:20 +02:00
PlaylistBot 6ec6fb7c0f Update Playlist (GitHub Actions) 2026-04-09 03:28:19 +00:00
foratedio 9269fbb122
Update playlist_brazil.m3u8 (#1013) 2026-04-09 05:28:11 +02:00
PlaylistBot 5280f362ca Update Playlist (GitHub Actions) 2026-04-09 03:27:40 +00:00
Miguel Lozano 50ee8e8861
Add RTP Africa and RTP Internacional (#1016)
Thank you for yout work.
2026-04-09 05:27:31 +02:00
PlaylistBot 02c84cb055 Update Playlist (GitHub Actions) 2026-04-09 03:21:33 +00:00
Giacinto Lo Meo ea332da787
Add tvg-chno support using channel number from markdown lists (#1018)
* Add channel number to M3U line formatting

Add tvg-chno support using channel number from markdown lists

- Extract channel number from md lists
- Add tvg-chno attribute to M3U output
- Skip invalid values (e.g. 0)

Improves channel ordering in IPTV clients like Jellyfin

* Update make_playlist.py

Add tvg-chno support using channel number from markdown lists

- Extract channel number from md lists
- Add tvg-chno attribute to M3U output
- Skip invalid values (e.g. 0)

Improves channel ordering in IPTV clients like Jellyfin

* Delete playlists/playlist_italy.m3u8

delete italy playlist for updating with channel number

* Italy playlist updated with channel number
2026-04-09 05:21:25 +02:00
Baleshevich Srdjan 4462172b34
Updated the Bosnia & Herzegovina, Serbia & Montenegro playlist and list (#878)
* Updated the Bosnia and Herzegovina playlist and list

Replaced non-working links of two TV stations for links that work. The source of those links is found on the web sites of those TV stations respectively.

* Update Playlist (GitHub Actions)

* Updated the Bosnia & Herzegovina, Serbia & Montenegro playlist and list

Updated the link of one TV stations in Bosnia and Herzegovina, and remarked a non-HD channel on that list.
Updated all the links of TV stations from Montenegro, marked some of the links with GeoIP blocking (help needed from good, hones & heroic person from Montenegro on this one).
Added TV 3 channels to Serbia's list, and updated 2 links on that list as well.

* Update Playlist (GitHub Actions)

* Update Playlist (GitHub Actions)

---------

Co-authored-by: PlaylistBot <playlistbot@users.noreply.github.com>
2026-04-09 05:15:33 +02:00
r3414385@gmail.com 4049115f3c
Update azerbaijan.md
Yeni TV kanallar
2025-12-29 22:18:35 +04:00
90 changed files with 2764 additions and 2736 deletions

View File

@ -39,4 +39,7 @@
| 0 | Səhiyyə TV | [>](https://www.tvkaista.net/stream-forwarder/get.php?x=SehiyyeTV) | <img height="20" src="https://upload.wikimedia.org/wikipedia/az/thumb/c/cd/S%C9%99hiyy%C9%99_TV.png/640px-S%C9%99hiyy%C9%99_TV.png"/> | SehiyyeTV.az |
| 0  | MCJ TV SHOP | [x](https://www.tvkaista.net/stream-forwarder/get.php?x=MCJTVShop) | <img height="20" src="https://tvtolive.com/wp-content/uploads/MCJ-TV-Shop-tvtolive.com_.jpg"/> |
| 0 | VIP HD | [>](https://www.tvkaista.net/stream-forwarder/get.php?x=AZ_VIP) | <img height="20" src="https://tvtolive.com/wp-content/uploads/VIP-TV-tvtolive.com_.jpg"/> |
| 0 | MTV Azerbaijan Ⓢ | [>](https://www.tvkaista.net/stream-forwarder/get.php?x=MTVAzerbaijan) | <img height="20" src="https://upload.wikimedia.org/wikipedia/commons/thumb/0/00/MTV_Az%C9%99rbaycan_%282022%29.png/622px-MTV_Az%C9%99rbaycan_%282022%29.png"/> | MTVAzerbaijan.az |
| 0 | MTV Azerbaijan Ⓢ | [>](https://www.tvkaista.net/stream-forwarder/get.php?x=MTVAzerbaijan) | <img 20src="https://upload.wikimedia.org/wikipedia/commons/thumb/0/00/MTV_Az%C9%99rbaycan_%282022%29.png/622px-MTV_Az%C9%99rbaycan_%282022%29.png"/> | MTVAzerbaijan.az |
# | Channel | Link | Logo | EPG id | |:---:|:--------------:|:-----:|:----:|:------:| https://www.tvkaista.net/stream-keds forwarder/get.php?x=ARMGunes http://109.205.166.68/server124/arb/gerinal index.m3u8 ARBTV SD http://85.132.81.184:8080/arb/live/news index.m3u8 ARB24 SD https://www.tvkaista.net/stream-forwarder/get.php?gerenalx=ATVAz AZAD AZƏRBAYCAN TV SD https://live.itv.az/itv gerenal.m3u8 ICTİMAİ TV SD https://mn-nl.mncdn.com/cbcsports_live/ cbcsports/playlist Sports.m3u8 CBC SPORT SD https://str.yodacdn.net/aztv/ gerenal index.m3u8 AZTV SD https://str.yodacdn.net/medeniyyet/medeniyyet index.m3u8 MƏDƏNİYYƏT TV SD http://109.205.166.68/server124/ Sports idman_az/index.m3u8 IDMAN AZƏRBAYCN TV SD https://www.tvkaista.net/stream- gerenalforwarder/get.php?x=Dunya DUNYA TV SD AMC https://www.tvkaista.net/stream-forwarder/get.php?x=KanalS Kanal S #EXTINF:0 tvg-country="AZ" tvg-logo="" news group-title="Undefined", GUNAZTV HD
http://rtmp.apa.tv/@pagroup!23.m3u8/APA TV https://lenz.splus.ir/PLTV/88888888/224/3221226800/index.m3u8/General/West Azerbaijan TV https://lenz.splus.ir/PLTV/88888888/224/3221226800/index.m3u8/Generalt Azerbaijan Gharbi https://www.tvkaista.net/stream- gerenal forwarder/get.php?x=SehiyyeTV/Səhiyyə TV Channel TV https://raw.githubusercontent.com/UzunMuhalefet/streams/refs/heads/main/myvideo-az/vip.m3u8 VİP TV https://53be5ef2d13aa.streamlock.net/cubesanewz-secure/smil:cubesanewz-secure-web.smil/playlist.m3u8 ANEWZ https://53be5ef2d13aa.streamlock.net/cubesanewz-secure/smil:cubesanewz-secure-web.smil/playlist.m3u8 anewZ https://live.ishiacloud.com/haditv.co.uk/haditv3.m3u8 www hadi3tv.az Hadi TV Azeri and Russian(720p) https://www.tvkaista.net/stream-forwarder/get.php?x=SehiyyeTV SehiyyeTV.az Səhiyyə TV https://raw.githubusercontent.com/UzunMuhalefet/streams/refs/heads/main/myvideo-az/mcj-tv-shop.m3u8 MCJ SHOP http://live.azstartv.com/azstar/smil:azstar.smil/playlist.m3u8 AZ STAR TV SD https://www.tvkaista.net/stream-forwarder/get.php?x=MTVAzerbaijan www MTVAzerbaijan.az MTV AZƏRBAYCAN SD https://www.tvkaista.net/stream-forwarder/get.php?x=MTVAzerbaijan MUZTV AZƏRBAYCAN https://raw.githubusercontent.com/UzunMuhalefet/streams/refs/heads/main/myvideo-az/baku-tv.m3u8 Baku TV SD #EXTINF:0 tvg-country="AZ" tvg-logo="" group-title="Undefined",Lider http://mfe.cliptv.az/dash/Lider_SD.ism/playlist.mpd?checkedby:hlscat.com Ledir Azərbaycan TV_SD VİRTUAL SPORTS VİRTUAL SPORTS BL SPORT TV SPORT TV 2 TVNET SPORT ANGOR AZERBAİJAN 114TV TV #EXTINF:0 tvg-country="AZ" tvg-logo="" group-title="Undefined",Naxçıvan TV http://mfe.cliptv.az/dash/NTV_HD.ism/playlist.mpd?checkedby:hlscat.com NAXÇIVAN TV HD AZ REAKSIYA TV https://rtmp.showplus.tv/hls/myshow.m3u8 SHOWS PLUS TV SƏS TV MEDİA TURK #EXTINF:0 tvg-country="AZ" tvg-logo="" group-title="Undefined",QƏBƏLƏ TV https://qebele.tv/live/stream/index.m3u8?checkedby:hlscat.com QƏBƏLƏ TV https://str1.yodacdn.net/qafkaz/playlist.m3u8 QAFQAZ TV TOPLUM TV İNTERAZ QLOBAL TV ARB CANUB http://85.132.78.122:8050/hls/stream/index.m3u8 Kepez TV ARB ŞİMAL Xezer xeber Topaz 2 Azercosmos porum ATV CİNEMA ATV VİVACE http://str.yodacdn.net/kanal35/tracks-v1a1/mono.m3u8 KANAL 35 http://cdn-konultvazerbaijan.yayin.com.tr/konultvazerbaijan/konultvazerbaijan/playlist.m3u8 konsul TV https://cdn4.yayin.com.tr/bakixebertv/video.m3u8 Konsul MUSİC http://str.yodacdn.net/kanal35/tracks-v1a1/mono.m3u8 kanal 35 http://cdn4.yayin.com.tr/ismayillitv/video.m3u8 ismayıllı TV Sirvan TV http://xantv.site:41480/MahniTV/video.m3u8 Mahnı TV https://tv.mobyservice.ru/livetv/index.m3u8 LIVE TV meydan TV TV 36 FTV https://www.tvkaista.net/stream-forwarder/get.php?x=AZ_VIP VİP HD #EXTINF:0 tvg-country="AZ" tvg-logo="" group-title="Undefined",AL ZAHRA TV http://live.al-zahratv.com/live/playlist.m3u8?checkedby:hlscat.com AL ZAHAR TV #EXTINF:0 tvg-country="AZ" tvg-logo="" group-title="Undefined",AMC_SD http://mfe.cliptv.az/dash/AMC_SD.ism/playlist.mpd?checkedby:hlscat.com AMC_SD https://www.tvkaista.net/stream-forwarder/get.php?x=SehiyyeTV SƏHİYYƏ TV #EXTINF:0 tvg-country="AZ" tvg-logo="" group-title="Undefined",Dalğa TV http://mfe.cliptv.az/dash/DalgaTV_SD.ism/playlist.mpd?checkedby:hlscat.com DALGA TV SD #EXTINF:0 tvg-country="AZ" tvg-logo="" group-title="Undefined",ELTV http://85.132.53.162:1935/live/eltv/chunklist_.m3u8?checkedby:hlscat.com ElTV #EXTINF:0 tvg-country="AZ" tvg-logo="" group-title="Undefined",ANITV_SD http://mfe.cliptv.az/dash/ANITV_SD.ism/playlist.mpd?checkedby:hlscat.com ANITV_SD STANSA SPORT 1 STANSA SPORT 2 STANSA SPORT + STANSA SPORT + http://str.yodacdn.net/biznestv/tracks-v1a1/mono.ts.m3u8 Biznes TV http://iptv.prosto.tv:7000/ch318/video.m3u8 PeykTV_AZERBAYCAN Naxçıvan TV ayaz tv Azerbaijan Music Azerbaijan Music Plus Russia Music https://cdn4.yayin.com.tr/kntv/tracks-v1a1/mono.m3u8 Kn TV

View File

@ -4,11 +4,11 @@
|:---:|:--------------:|:-----:|:----:|:------:|
| 1 | BHT 1 | [>](https://bhrtstream.bhtelecom.ba/bhrtportal_hd.m3u8) | <img height="20" src="https://upload.wikimedia.org/wikipedia/commons/9/93/Logo_of_BHT_1_%282003-2012%29.png" /> | BHT1.ba |
| 2 | Federalna televizija (FTV) Ⓢ | [>](http://94.250.2.6:7374/play/a02s/index.m3u8) | <img height="20" src="https://i.imgur.com/Jpvs4u3.png" /> | FederalnaTV.ba |
| 3 | Televizija Republike Srpske (RTRS) | [>](https://parh.rtrs.tv/tv/live/playlist.m3u8) | <img height="20" src="https://upload.wikimedia.org/wikipedia/commons/thumb/7/7d/RTRS_Logo.svg/640px-RTRS_Logo.svg.png" /> | RTRSTV.ba |
| 3 | Televizija Republike Srpske (RTRS) | [>](https://parh.rtrs.tv/tv/live/playlist.m3u8) | <img height="20" src="https://upload.wikimedia.org/wikipedia/commons/thumb/7/7d/RTRS_Logo.svg/640px-RTRS_Logo.svg.png" /> | RTRSTV.ba |
| 3 | RTRS PLUS Ⓢ | [>](https://pluslive.rtrs.tv/plus/plus/playlist.m3u8) | <img height="20" src="https://i.imgur.com/k06WvYl.png"/> | RTRSplus.ba |
| 4 | N1 Bosna i Hercegovina | [>](https://best-str.umn.cdn.united.cloud/stream?channel=n1bos&p=n1Sh4redSecre7iNf0&sp=n1info&stream=sp1400&u=n1info) | <img height="20" src="https://i.imgur.com/72oMSWz.png"/> | N1BosniaHerzegovina.ba |
| 5 | RTV HB Ⓢ | [>](https://prd-hometv-live-open.spectar.tv/ERO_1_083/playlist.m3u8) | <img height="20" src="https://upload.wikimedia.org/wikipedia/en/6/60/Logo_of_TV_Herceg-Bosne.png"/> | RTVHB.ba |
| 6 | RTV BN | [>](https://rtvbn.tv:8080/live/index.m3u8) | <img height="20" src="https://i.imgur.com/DUBvfWb.png"/> | BNTV.ba |
| 6 | RTV BN | [>](https://stream.rtvbn.tv:8080/live/index.m3u8) | <img height="20" src="https://i.imgur.com/DUBvfWb.png"/> | BNTV.ba |
| 7 | RTV Glas Drine | [>](http://glasdrine.cutuk.net:8081/433ssdsw/GlasDrineSD/playlist.m3u8) | <img height="20" src="https://i.imgur.com/9NgxOdb.png"/> | RTVGlasDrine.ba |
| 8 | Sevdah Ⓢ | [>](https://restreamer2.tnt.ba/hls/stream.m3u8) | <img height="20" src="https://i.imgur.com/V6W3yEp.png"/> | SevdahTV.ba |
| 9 | TNT Kids | [>](https://restreamer1.tnt.ba/hls/tntkids.m3u8) | <img height="20" src="https://i.imgur.com/irTDbpn.png"/> | TNTKidsTV.ba |

View File

@ -2,7 +2,7 @@
| # | Channel | Link | Logo | EPG id |
|:---:|:--------------:|:-----:|:----:|:------:|
| 1 | TVCG 1 | [>](http://cdn3.bcdn.rs:1935/cg1/smil:cg1.smil/playlist.m3u8) | <img height="20" src="https://i.imgur.com/QORHrXu.png"/> | TVCG1.me |
| 2 | TVCG 2 | [>](http://cdn3.bcdn.rs:1935/cg2/smil:cg2.smil/playlist.m3u8) | <img height="20" src="https://i.imgur.com/WECmUKH.png"/> | TVCG2.me |
| 3 | TVCG 3 | [>](https://parlament.rtcg.me:1936/pr/smil:parlament.smil/playlist.m3u8) | <img height="20" src="https://i.imgur.com/XC7zVog.png"/> | Parlamentarnikanal.me |
| 99 | TVCG MNE | [>](http://cdn3.bcdn.rs:1935/cgsat/smil:cgsat.smil/playlist.m3u8) | <img height="20" src="https://i.imgur.com/pf8VEwf.png"/> | TVCGMNE.me |
| 1 | TVCG 1 Ⓖ | [>](https://rtcg-live-open-geo.morescreens.com/RTCG_1_001/playlist.m3u8) | <img height="20" src="https://i.imgur.com/QORHrXu.png"/> | TVCG1.me |
| 2 | TVCG 2 Ⓖ | [>](https://rtcg-live-open-geo.morescreens.com/RTCG_1_002/playlist.m3u8) | <img height="20" src="https://i.imgur.com/WECmUKH.png"/> | TVCG2.me |
| 3 | TVCG 3 Ⓖ | [>](https://rtcg-live-open-geo.morescreens.com/RTCG_1_003/playlist.m3u8) | <img height="20" src="https://i.imgur.com/XC7zVog.png"/> | TVCG3.me |
| 99 | TVCG MNE | [>](https://rtcg-live-open.morescreens.com/RTCG_1_004/playlist.m3u8) | <img height="20" src="https://i.imgur.com/pf8VEwf.png"/> | TVCGMNE.me |

View File

@ -10,7 +10,9 @@
| 5 | RTP Madeira Ⓢ | [>](https://streaming-live.rtp.pt/liverepeater/smil:rtpmadeira.smil/playlist.m3u8) | <img height="20" src="https://upload.wikimedia.org/wikipedia/en/a/ac/RTP_Madeira_2016.png"/> | RTPMadeira.pt |
| 6 | RTP3 | [>](https://streaming-live.rtp.pt/livetvhlsDVR/rtpnHDdvr.smil/playlist.m3u8?DVR=) | <img height="20" src="https://upload.wikimedia.org/wikipedia/commons/b/b9/Rtp3.png"/> | RTP3.pt |
| 7 | RTP Memória | [x]() | <img height="20" src="https://upload.wikimedia.org/wikipedia/commons/7/79/RtpMemoria_positivo_horiz_RGB.png"/> | RTPMemoria.pt |
| 8 | RTP África | [>](https://streaming-live.rtp.pt/liverepeater/smil:rtpafrica.smil/playlist.m3u8) | <img height="20" src="https://i.imgur.com/ISFNy17.png"/> | RTPAfrica.pt |
| 9 | RTP Mundo | [>](https://streaming-live.rtp.pt/liverepeater/smil:rtpi.smil/playlist.m3u8) | <img height="20" src="https://i.imgur.com/mJ3gyqx.png"/> | RTPInternacional.pt |
| 1 | Porto Canal Ⓢ | [>](https://streamer-a01.videos.sapo.pt/live/portocanal/playlist.m3u8) | <img height="20" src="https://i.imgur.com/wsyvP2H.png"/> | PortoCanal.pt |
| 2 | ADtv Ⓢ | [>](https://playout172.livextend.cloud/liveiframe/_definst_/ngrp:liveartvabr_abr/playlist.m3u8) | <img height="20" src="https://i.imgur.com/FvlcU3z.png"/> |
| 3 | CNN Portugal | [>](https://sktv-forwarders.7m.pl/get.php?x=CNN_Portugal) | <img height="20" src="https://i.imgur.com/NYH39xs.png"/> | CNNPortugal.pt |
| 2 | ADtv Ⓢ | [>](https://playout172.livextend.cloud/liveiframe/_definst_/ngrp:liveartvabr_abr/playlist.m3u8) | <img height="20" src="https://i.imgur.com/FvlcU3z.png"/> | |
| 3 | CNN Portugal | [>](https://sktv-forwarders.7m.pl/get.php?x=CNN_Portugal) | <img height="20" src="https://i.imgur.com/NYH39xs.png"/> | CNNPortugal.pt |
| 4 | Euronews em Português Ⓨ| [>](https://www.youtube.com/euronewspt/live) | <img height="20" src="https://upload.wikimedia.org/wikipedia/commons/thumb/9/9c/Euronews_2022.svg/640px-Euronews_2022.svg.png"/> | EuronewsPortuguese.fr |

View File

@ -2,15 +2,18 @@
| # | Channel | Link | Logo | EPG id |
|:---:|:--------------:|:-----:|:----:|:------:|
| 1 | RTS 1 | [>](https://webtvstream.bhtelecom.ba/rts1.m3u8) | <img height="20" src="https://i.imgur.com/S1pKHSR.png"/> | RTS1.rs |
| 2 | RTS 2 | [>](https://webtvstream.bhtelecom.ba/rts2.m3u8) | <img height="20" src="https://i.imgur.com/jltAf5h.png"/> | RTS2.rs |
| 3 | RTS 3 | [x]() | <img height="20" src="https://i.imgur.com/gxuGB4J.png"/> | RTS3.rs |
| 0 | RTS Svet | [x]() | <img height="20" src="https://upload.wikimedia.org/wikipedia/commons/8/8a/Rts-svet.png"/> | RTSSvet.rs |
| 0 | Euronews Serbia | [>](https://d1ei8ofhgfmkac.cloudfront.net/app-19518-1306/ngrp:QoZfNjsg_all/playlist.m3u8) | <img height="20" src="https://i.imgur.com/b24QKcq.png"/> | EuroNewsSerbia.rs |
| 1 | RTS 1 | [>](https://webtvstream.bhtelecom.ba/rts1.m3u8) | <img height="20" src="https://i.imgur.com/S1pKHSR.png"/> | RTS1.rs |
| 2 | RTS 2 | [>](https://webtvstream.bhtelecom.ba/rts2.m3u8) | <img height="20" src="https://i.imgur.com/jltAf5h.png"/> | RTS2.rs |
| 3 | RTS 3 | [x]() | <img height="20" src="https://i.imgur.com/gxuGB4J.png"/> | RTS3.rs |
| 4 | Red TV | [>](https://edge8.pink.rs/redtv/chunklist_w1213385221.m3u8) | <img height="20" src="https://i.imgur.com/cpN7NrL.png"/> | RedTV.rs |
| 5 | Kurir TV | [>](https://static.am.mediaoutcast.com/storage/nQJnjJkO/nQJnjJkO/stream/O68x4o8g/720p/720p.m3u8) | <img height="20" src="https://i.imgur.com/HBPnUD5.png"/> | KurirTV.rs |
| 6 | Informer TV | [>](https://edge-rs-03.maksnet.tv/informertv-secure/web/playlist.m3u8) | <img height="20" src="https://i.imgur.com/9wdEHRf.png"/> | InformerTV.rs |
| 0 | RTS Svet | [x]() | <img height="20" src="https://upload.wikimedia.org/wikipedia/commons/8/8a/Rts-svet.png"/> | RTSSvet.rs |
| 0 | Euronews Serbia | [x](https://d1ei8ofhgfmkac.cloudfront.net/app-19518-1306/ngrp:QoZfNjsg_all/playlist.m3u8) | <img height="20" src="https://i.imgur.com/b24QKcq.png"/> | EuroNewsSerbia.rs |
<h3>Vojvodina</h3>
| # | Channel | Link | Logo | EPG id |
|:---:|:--------------:|:-----:|:----:|:------:|
| 1 | RTV 1 | [>](rtsp://212.200.255.151/rtv1) | <img height="20" src="https://i.imgur.com/CG44YT3.png"/> | RTV1.rs |
| 2 | RTV 2 | [>](rtsp://212.200.255.151/rtv2) | <img height="20" src="https://i.imgur.com/skpr66t.png"/> | RTV2.rs |
| 1 | RTV 1 | [>](rtmp://212.200.230.50:1935/RTV/rtv1) | <img height="20" src="https://i.imgur.com/CG44YT3.png"/> | RTV1.rs |
| 2 | RTV 2 | [>](rtmp://212.200.230.50:1935/RTV/rtv2) | <img height="20" src="https://i.imgur.com/skpr66t.png"/> | RTV2.rs |

View File

@ -103,6 +103,9 @@ class Channel:
self.url = self.url[self.url.find("(")+1:self.url.rfind(")")]
self.logo = parts[4].strip()
self.logo = self.logo[self.logo.find('src="')+5:self.logo.rfind('"')]
self.chno = self.number if self.number and self.number != "0" else None
if len(parts) > 6:
self.epg = parts[5].strip()
else:
@ -110,10 +113,11 @@ class Channel:
def to_m3u_line(self):
country = f' tvg-country="{self.country_code}"' if self.country_code else ""
chno = f' tvg-chno="{self.chno}"' if self.chno else ""
if self.epg is None:
return (f'#EXTINF:-1 tvg-name="{self.name}" tvg-logo="{self.logo}"{country} group-title="{self.group}",{self.name}\n{self.url}')
return (f'#EXTINF:-1 tvg-name="{self.name}" tvg-logo="{self.logo}"{chno}{country} group-title="{self.group}",{self.name}\n{self.url}')
else:
return (f'#EXTINF:-1 tvg-name="{self.name}" tvg-logo="{self.logo}" tvg-id="{self.epg}"{country} group-title="{self.group}",{self.name}\n{self.url}')
return (f'#EXTINF:-1 tvg-name="{self.name}" tvg-logo="{self.logo}" tvg-id="{self.epg}"{chno}{country} group-title="{self.group}",{self.name}\n{self.url}')
def main():

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long