diff --git a/README.md b/README.md
index 7de79c6..c0cceab 100644
--- a/README.md
+++ b/README.md
@@ -5,7 +5,82 @@ This is an M3U playlist for free TV channels around the World.
Either free locally (over the air):
-
+[](lists/usa.md)
+[](lists/canada.md)
+[](lists/uk.md)
+[](lists/ireland.md)
+[](lists/australia.md)
+[](lists/india.md)
+[](lists/japan.md)
+[](lists/china.md)
+[](lists/hong_kong.md)
+[](lists/macau.md)
+[](lists/taiwan.md)
+[](lists/north_korea.md)
+[](lists/korea.md)
+[](lists/denmark.md)
+[](lists/faroe_islands.md)
+[](lists/greenland.md)
+[](lists/finland.md)
+[](lists/iceland.md)
+[](lists/norway.md)
+[](lists/sweden.md)
+[](lists/estonia.md)
+[](lists/latvia.md)
+[](lists/lithuania.md)
+[](lists/belgium.md)
+[](lists/netherlands.md)
+[](lists/luxembourg.md)
+[](lists/germany.md)
+[](lists/austria.md)
+[](lists/switzerland.md)
+[](lists/poland.md)
+[](lists/czech_republic.md)
+[](lists/slovakia.md)
+[](lists/hungary.md)
+[](lists/romania.md)
+[](lists/moldova.md)
+[](lists/bulgaria.md)
+[](lists/france.md)
+[](lists/italy.md)
+[](lists/portugal.md)
+[](lists/spain.md)
+[](lists/russia.md)
+[](lists/belarus.md)
+[](lists/ukraine.md)
+[](lists/azerbaijan.md)
+[](lists/georgia.md)
+[](lists/bosnia_and_herzegovina.md)
+[](lists/croatia.md)
+[](lists/montenegro.md)
+[](lists/north_macedonia.md)
+[](lists/serbia.md)
+[](lists/slovenia.md)
+[](lists/albania.md)
+[](lists/kosovo.md)
+[](lists/greece.md)
+[](lists/cyprus.md)
+[](lists/andorra.md)
+[](lists/malta.md)
+[](lists/monaco.md)
+[](lists/san_marino.md)
+[](lists/iran.md)
+[](lists/iraq.md)
+[](lists/israel.md)
+[](lists/qatar.md)
+[](lists/turkey.md)
+[](lists/united_arab_emirates.md)
+[](lists/argentina.md)
+[](lists/costa_rica.md)
+[](lists/dominican_republic.md)
+[](lists/mexico.md)
+[](lists/paraguay.md)
+[](lists/peru.md)
+[](lists/venezuela.md)
+[](lists/brazil.md)
+[](lists/trinidad.md)
+[](lists/chad.md)
+[](lists/somalia.md)
Or free on the Internet:
diff --git a/flag_order.txt b/flag_order.txt
new file mode 100644
index 0000000..350da1c
--- /dev/null
+++ b/flag_order.txt
@@ -0,0 +1,135 @@
+#################
+## ANGLOSPHERE ##
+#################
+usa
+canada
+uk
+ireland
+australia
+
+##########
+## ASIA ##
+##########
+
+# India / Japan
+india
+japan
+# China / Taiwan
+china
+hong_kong
+macau
+taiwan
+# North & South Korea
+north_korea
+korea
+
+############
+## EUROPE ##
+############
+
+# Nordics (Danish Realm)
+denmark
+faroe_islands
+greenland
+# Nordics (other)
+finland
+iceland
+norway
+sweden
+
+# Baltics
+estonia
+latvia
+lithuania
+
+# Benelux
+belgium
+netherlands
+luxembourg
+
+# DACH
+germany
+austria
+switzerland
+
+# Visegrád
+poland
+czech_republic
+slovakia
+hungary
+
+# Romanian-speaking
+romania
+moldova
+
+# Other European countries
+bulgaria
+france
+italy
+portugal
+spain
+
+# Russia, Belarus, Ukraine
+russia
+belarus
+ukraine
+
+# ex-USSR (excl. RU/BY/UA, Baltics and Moldova)
+azerbaijan
+georgia
+
+# ex-Yugoslavia (excl. Kosovo)
+bosnia_and_herzegovina
+croatia
+montenegro
+north_macedonia
+serbia
+slovenia
+
+# Albanian-speaking
+albania
+kosovo
+
+# Greek-speaking
+greece
+cyprus
+
+# European "microstates"
+andorra
+malta
+monaco
+san_marino
+
+#################
+## MIDDLE EAST ##
+#################
+iran
+iraq
+israel
+qatar
+turkey
+united_arab_emirates
+
+############################
+## AMERICAS (excl. US/CA) ##
+############################
+# Spanish-speaking
+argentina
+costa_rica
+dominican_republic
+mexico
+paraguay
+peru
+venezuela
+
+# Portuguese-speaking
+brazil
+
+# Other South America
+trinidad
+
+############
+## AFRICA ##
+############
+chad
+somalia
diff --git a/make_flags.sh b/make_flags.sh
new file mode 100755
index 0000000..d508b98
--- /dev/null
+++ b/make_flags.sh
@@ -0,0 +1,25 @@
+#!/usr/bin/env bash
+
+curl -sS https://raw.githubusercontent.com/linuxmint/hypnotix/master/usr/share/hypnotix/countries.list -o ./countries.list
+echo "FO:Faroe Islands" >> ./countries.list
+
+for country in `cat ./flag_order.txt | grep -v "^$" | grep -v "#"`; do
+ country_name=`echo "$country"|sed -e "s/_/ /g"`
+
+ [[ "$country_name" == "korea" ]] && country_name="south korea"
+ [[ "$country_name" == "uk" ]] && country_name="united kingdom"
+
+ country_code_line=`cat ./countries.list|grep -m 1 -i "$country_name"`
+
+ if [[ -z "$country_code_line" ]]; then
+ echo "MISSING COUNTRY CODE FOR: $country"
+ exit 1
+ elif [[ -n "$country_code_line" ]]; then
+ IFS=':'; country_code_arr=($country_code_line); unset IFS
+ country_code="${country_code_arr[0],,}"
+ fi
+
+ echo "[](lists/$country.md)"
+done
+
+rm ./countries.list