wmmrule ETSI:
	vo_c: cw_min=3, cw_max=7, aifsn=2, cot=2
	vi_c: cw_min=7, cw_max=15, aifsn=2, cot=4
	be_c: cw_min=15, cw_max=1023, aifsn=3, cot=6
	bk_c: cw_min=15, cw_max=1023, aifsn=7, cot=6
	vo_ap: cw_min=3, cw_max=7, aifsn=1, cot=2
	vi_ap: cw_min=7, cw_max=15, aifsn=1, cot=4
	be_ap: cw_min=15, cw_max=63, aifsn=3, cot=6
	bk_ap: cw_min=15, cw_max=1023, aifsn=7, cot=6

# This is the world regulatory domain
country 00:
	(2402 - 2472 @ 40), (20)
	# Channel 12 - 13.
	(2457 - 2482 @ 20), (20), NO-IR, AUTO-BW
	# Channel 14. Only JP enables this and for 802.11b only
	(2474 - 2494 @ 20), (20), NO-IR, NO-OFDM
	# Channel 36 - 48
	(5170 - 5250 @ 80), (20), NO-IR, AUTO-BW
	# Channel 52 - 64
	(5250 - 5330 @ 80), (20), NO-IR, DFS, AUTO-BW
	# Channel 100 - 144
	(5490 - 5730 @ 160), (20), NO-IR, DFS
	# Channel 149 - 165
	(5735 - 5835 @ 80), (20), NO-IR
	# IEEE 802.11ad (60GHz), channels 1..3
	(57240 - 63720 @ 2160), (0)

# AD as part of CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries: https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
country AD: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4, ref: Etsi En 302 567
	(57000 - 66000 @ 2160), (40)

country AE: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country AF: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (27), DFS

# Source:
# http://pucanguilla.org/Downloads/January2005-Anguilla%20Table%20of%20Allocations.pdf
country AI: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW, wmmrule=ETSI
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW, wmmrule=ETSI
	(5490 - 5710 @ 160), (27), DFS, wmmrule=ETSI

# AL as part of CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
country AL: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)

country AM: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 20), (18)
	(5250 - 5330 @ 20), (18), DFS

country AN: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (27), DFS

country AR: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country AS: DFS-FCC
	(2402 - 2472 @ 40), (30)
	(5170 - 5250 @ 80), (24), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

# AT as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# AT: https://www.rtr.at/en/tk/Spektrum5GHz/1997_bmvit-info-052010en.pdf
# AT: acceptance https://www.ris.bka.gv.at/Dokumente/BgblAuth/BGBLA_2014_II_63/BGBLA_2014_II_63.pdfsig
country AT: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

# Source:
# https://www.legislation.gov.au/Details/F2016C00432
# Both DFS-ETSI and DFS-FCC are acceptable per AS/NZS 4268 Appendix B.
# The EIRP for DFS bands can be increased by 3dB if TPC is implemented.
# In order to allow 80MHz operation between 5650-5730MHz the upper boundary
# of this more restrictive band has been shifted up by 5MHz from 5725MHz.
country AU: DFS-ETSI
	(2400 - 2483.5 @ 40), (36)
	(5150 - 5250 @ 80), (23), NO-OUTDOOR, AUTO-BW
	(5250 - 5350 @ 80), (20), NO-OUTDOOR, AUTO-BW, DFS
	(5470 - 5600 @ 80), (27), DFS
	(5650 - 5730 @ 80), (27), DFS
	(5730 - 5850 @ 80), (36)
	(57000 - 66000 @ 2160), (43), NO-OUTDOOR

country AW: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (27), DFS

country AZ: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (18), AUTO-BW
	(5250 - 5330 @ 80), (18), DFS, AUTO-BW

# BA as part of CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
country BA: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4, ref: Etsi En 302 567
	(57000 - 66000 @ 2160), (40)

country BB: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (23), AUTO-BW
	(5250 - 5330 @ 80), (23), DFS, AUTO-BW
	(5735 - 5835 @ 80), (30)

country BD: DFS-JP
	(2402 - 2482 @ 40), (20)
	(5735 - 5835 @ 80), (30)

# BE as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# BE: https://www.ibpt.be/public/files/en/21760/B03-01_2.1_EN.pdf
# BE: https://www.ibpt.be/public/files/en/21761/B03-02_2.1_EN.pdf
# BE: https://www.ibpt.be/public/files/en/21762/B03-03_2.1_EN.pdf
# BE: https://www.ibpt.be/public/files/en/22165/B01-28_3.1_EN.pdf
country BE: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

country BF: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

# Bulgarian rules as defined by the Communications Regulation Commission in the
# following documents:
#
# Rules for carrying out electronic communications through radio equipment using
# radio spectrum, which does not need to be individually assigned (the Rules):
# http://www.crc.bg/files/_bg/Pravila_09_06_2015.pdf
#
# List of radio equipment that uses harmonized within the European Union bands
# and electronic communications terminal equipment (the List):
# http://www.crc.bg/files/_bg/Spisak_2015.pdf
#
# Note: The transmit power limits in the 5250-5350 MHz and 5470-5725 MHz bands
# can be raised by 3 dBm if TPC is enabled. Refer to BDS EN 301 893 for details.
#
# BG as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# BG: https://crc.bg/files/_en/Electronic_Communications_Revised_EN1.pdf
# BG: acceptance of 2006/771/EC https://crc.bg/files/Pravila_06_12_2018.pdf
country BG: DFS-ETSI
	# Wideband data transmission systems (WDTS) in the 2.4GHz ISM band, ref:
	# I.22 of the List, BDS EN 300 328
	(2400 - 2483.5 @ 40), (100 mW)
	# 5 GHz Radio Local Area Networks (RLANs), ref:
	# II.H01 of the List, BDS EN 301 893
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	# II.H01 of the List, I.54 from the List, BDS EN 301 893
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	# I.43 of the List, BDS EN 300 440-2, BDS EN 300 440-1
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	# II.H03 of the List, BDS EN 302 567-2
	(57000 - 66000 @ 2160), (40)

country BH: DFS-JP
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 20), (20)
	(5250 - 5330 @ 20), (20), DFS
	(5735 - 5835 @ 20), (20)

country BL: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (27), DFS

country BM: DFS-FCC
	(2402 - 2472 @ 40), (30)
	(5170 - 5250 @ 80), (24), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country BN: DFS-JP
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5735 - 5835 @ 80), (20)

country BO: DFS-JP
	(2402 - 2482 @ 40), (20)
	(5250 - 5330 @ 80), (30), DFS
	(5735 - 5835 @ 80), (30)

country BR: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country BS: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (24), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

# Source:
# http://www.bicma.gov.bt/paper/publication/nrrpart4.pdf
country BT: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (27), DFS

country BY: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (27), DFS

country BZ: DFS-JP
	(2402 - 2482 @ 40), (30)
	(5735 - 5835 @ 80), (30)

# Source:
# https://www.ic.gc.ca/eic/site/smt-gst.nsf/vwapj/rss-247-i2-e.pdf/$file/rss-247-i2-e.pdf
country CA: DFS-FCC
	(2402 - 2472 @ 40), (30)
	(5150 - 5250 @ 80), (23), NO-OUTDOOR, AUTO-BW
	(5250 - 5350 @ 80), (24), DFS, AUTO-BW
	(5470 - 5600 @ 80), (24), DFS
	(5650 - 5730 @ 80), (24), DFS
	(5735 - 5835 @ 80), (30)

# Source:
# http://www.art-rca.org
country CF: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 40), (17)
	(5250 - 5330 @ 40), (24), DFS
	(5490 - 5730 @ 40), (24), DFS
	(5735 - 5835 @ 40), (30)


# CH as part of CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# CH: https://www.ofcomnet.ch/api/rir/1010/05
# CH: https://www.ofcomnet.ch/api/rir/1010/04
# CH: https://www.ofcomnet.ch/api/rir/1008/12
# CH: https://www.ofcomnet.ch/#/fatTable
country CH: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

country CI: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country CL: DFS-JP
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5735 - 5835 @ 80), (20)

country CN: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (23), AUTO-BW
	(5250 - 5330 @ 80), (23), DFS, AUTO-BW
	(5735 - 5835 @ 80), (30)
	# 60 GHz band channels 1,4: 28dBm, channels 2,3: 44dBm
	# ref: http://www.miit.gov.cn/n11293472/n11505629/n11506593/n11960250/n11960606/n11960700/n12330791.files/n12330790.pdf
	(57240 - 59400 @ 2160), (28)
	(59400 - 63720 @ 2160), (44)
	(63720 - 65880 @ 2160), (28)

country CO: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country CR: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 20), (17)
	(5250 - 5330 @ 20), (24), DFS
	(5490 - 5730 @ 20), (24), DFS
	(5735 - 5835 @ 20), (30)

# Source:
# https://www.mincom.gob.cu/es/marco-legal
# - Redes Informáticas
#    Resolución 98- 2019 Reglamento de Redes Inalámbricas:
# https://www.mincom.gob.cu/sites/default/files/marcoregulatorio/r_98-19_reglamento_redes_inalambricas.pdf
country CU: DFS-FCC
	(2400 - 2483.5 @ 40), (200 mW)
	(5150 - 5350 @ 80), (200 mW), NO-IR, NO-OUTDOOR
	(5470 - 5725 @ 80), (250 mW), NO-IR
	(5725 - 5850 @ 80), (200 mW)

country CX: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (24), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)


# CY as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# CY: http://www.mcw.gov.cy/mcw/dec/dec.nsf/all/292484CFC7013DD4C2256EBA0023D447/$file/Sxedio%20Radiosyxnothtwn%20ths%20Dhmokratias-3-8-2018-E2.2(English%20Unified%20Unofficial).pdf?openelement
country CY: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

# CZ as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# CZ: https://www.ctu.cz/cs/download/vseobecna-opravneni/archiv/vo-r_12-06_2010-09.pdf
# CZ: https://www.ctu.cz/sites/default/files/obsah/ctu/vseobecne-opravneni-c.vo-r/10/12.2017-10/obrazky/vo-r10-122017-10.pdf
country CZ: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

# DE as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
#
# Allocation for the 2.4 GHz band (Vfg 10 / 2013, Allgemeinzuteilung von
# Frequenzen für die Nutzung in lokalen Netzwerken; Wireless Local Area
# Networks (WLAN-Funkanwendungen).
# https://www.bundesnetzagentur.de/SharedDocs/Downloads/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Frequenzen/Allgemeinzuteilungen/2013_10_WLAN_2,4GHz_pdf.pdf
#
# Allocation for the 5 GHz band (Vfg. 7 / 2010, Allgemeinzuteilung von
# Frequenzen in den Bereichen 5150 MHz - 5350 MHz und 5470 MHz - 5725 MHz für
# Funkanwendungen zur breitbandigen Datenübertragung, WAS/WLAN („Wireless
# Access Systems including Wireless Local Area Networks“).
# https://www.bundesnetzagentur.de/SharedDocs/Downloads/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Frequenzen/Allgemeinzuteilungen/2010_07_WLAN_5GHz_pdf.pdf
#
# The ETSI EN 300 440-1 standard for short range devices in the 5 GHz band has
# been implemented in Germany:
# https://www.bundesnetzagentur.de/SharedDocs/Downloads/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Frequenzen/Allgemeinzuteilungen/2014_69_SRD_pdf.pdf
#
# Allocation for the 60 GHz band (Allgemeinzuteilung von Frequenzen im
# Bereich 57 GHz - 66 GHz für Funkanwendungen für weitbandige
# Datenübertragungssysteme; „Multiple Gigabit WAS/RLAN Systems (MGWS)“).
# https://www.bundesnetzagentur.de/SharedDocs/Downloads/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Frequenzen/Allgemeinzuteilungen/2011_08_MGWS_pdf.pdf
#
# Allocation for the WiFi 6E Band (Allgemeinzuteilung von Frequenzen im
# Bereich 5945 MHz - 6425 MHz für drahtlose Zugangssysteme,
# einschließlich lokaler Funknetze WAS/WLAN („Wireless Access Systems
# including Wireless Local Area Networks“))
# https://www.bundesnetzagentur.de/SharedDocs/Downloads/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Frequenzen/Allgemeinzuteilungen/MobilfunkDectWlanCBFunk/vfg552021WLAN6GHz.pdf
country DE: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# WiFi 6E
	(5945 - 6425 @ 160), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

# DK as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# DK: https://ens.dk/sites/ens.dk/files/Tele/frekvensplan_0.pdf
# 5GHz: https://erhvervsstyrelsen.dk/sites/default/files/007_interface-datanet_5-6_ghz.pdf.pdf
# 60GHz: https://erhvervsstyrelsen.dk/sites/default/files/radiograenseflader-63.pdf
country DK: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

# Source:
# http://www.ntrcdom.org/index.php?option=com_content&view=category&layout=blog&id=10&Itemid=55
country DM: DFS-FCC
	(2402 - 2472 @ 40), (30)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (23), DFS, AUTO-BW
	(5735 - 5835 @ 80), (30)

country DO: DFS-FCC
	(2402 - 2472 @ 40), (30)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (23), DFS, AUTO-BW
	(5735 - 5835 @ 80), (30)

country DZ: DFS-JP
	(2402 - 2482 @ 40), (20)
	(5170.000 - 5250.000 @ 80.000), (23.00), AUTO-BW
	(5250.000 - 5330.000 @ 80.000), (23.00), DFS, AUTO-BW
	(5490.000 - 5670.000 @ 160.000), (23.00), DFS

# Source:
# https://www.arcotel.gob.ec/wp-content/uploads/2018/04/NORMA-ESPECTRO-DE-USO-LIBRE-Y-ESPECTRO-PARA-USO-DETERMINADO-EN-BANDAS-LIBRES.pdf
country EC: DFS-FCC
	(2400 - 2483.5 @ 40), (1000 mW)
	(5150 - 5250 @ 80), (50 mW), AUTO-BW, DFS
	(5250 - 5350 @ 80), (125 mW), AUTO-BW, DFS
	(5470 - 5725 @ 160), (125 mW), DFS
	(5725 - 5850 @ 80), (1000 mW)

# EE as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# EE: https://www.ttja.ee/et/ettevottele-organisatsioonile/sideteenused/raadioseadmed/wifi-seade
# EE: https://www.itu.int/ITU-D/study_groups/SGP_1998-2002/JGRES09/pdf/estonia.pdf
country EE: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

# https://www.tra.gov.eg/en/industry/importing-of-equipment/Pages/Regulations-for-use-of-Wireless-Networks-Devices.aspx
country EG: DFS-ETSI
	(2402 - 2483.5 @ 40), (20)
	(5150 - 5250 @ 80), (23), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5330 @ 80), (20), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI

# ES as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# ES: https://avancedigital.mineco.gob.es/espectro/Paginas/cnaf.aspx
country ES: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

country ET: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (27), DFS

# FI as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
country FI: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

country FM: DFS-FCC
	(2402 - 2472 @ 40), (30)
	(5170 - 5250 @ 80), (24), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

# FR as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
country FR: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

# GB as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# GB: https://www.ofcom.org.uk/__data/assets/pdf_file/0019/136009/Ofcom-Information-Sheet-5-GHz-RLANs.pdf
# GB: https://www.ofcom.org.uk/__data/assets/pdf_file/0028/84970/ir-2030.pdf
# GB: https://www.ofcom.org.uk/__data/assets/pdf_file/0013/126121/Statement_Implementing-Ofcoms-decision-on-the-57-71GHz-band.pdf
country GB: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5730 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5850 @ 80), (200 mW), NO-OUTDOOR
	# 60 GHz band channels 1-6
	(57000 - 71000 @ 2160), (40)

country GD: DFS-FCC
	(2402 - 2472 @ 40), (30)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country GE: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (18), AUTO-BW
	(5250 - 5330 @ 80), (18), DFS, AUTO-BW
	# 60 GHz band channels 1-4, ref: Etsi En 302 567
	(57000 - 66000 @ 2160), (40)

country GF: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW, wmmrule=ETSI
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW, wmmrule=ETSI
	(5490 - 5710 @ 160), (27), DFS, wmmrule=ETSI

country GH: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country GL: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW, wmmrule=ETSI
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW, wmmrule=ETSI
	(5490 - 5710 @ 160), (27), DFS, wmmrule=ETSI

country GP: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW, wmmrule=ETSI
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW, wmmrule=ETSI
	(5490 - 5710 @ 160), (27), DFS, wmmrule=ETSI

# GR as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# GR: https://www.eett.gr/opencms/export/sites/default/EETT_EN/Electronic_Communications/Radio_Communications/TelecommunicationEquipment/Radio_equipment_interface_requirement_2012.pdf
# GR: https://www.eett.gr/opencms/export/sites/default/EETT_EN/Electronic_Communications/Radio_Communications/TelecommunicationEquipment/Radio_equipment_interface_requirement_107.pdf
country GR: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

country GT: DFS-FCC
	(2402 - 2472 @ 40), (30)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (23), DFS, AUTO-BW
	(5735 - 5835 @ 80), (30)

country GU: DFS-FCC
	(2402 - 2472 @ 40), (30)
	(5170 - 5250 @ 20), (17)
	(5250 - 5330 @ 20), (24), DFS
	(5490 - 5730 @ 20), (24), DFS
	(5735 - 5835 @ 20), (30)

country GY:
	(2402 - 2482 @ 40), (30)
	(5735 - 5835 @ 80), (30)

country HK: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5710 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country HN: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country HR: DFS-ETSI
# HR as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# HR: http://tablice.hakom.hr:8080/vis?lang=en
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (200 mW), DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

country HT: DFS-FCC
	(2402 - 2472 @ 40), (30)
	(5170 - 5250 @ 80), (24), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

# HU as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# HU: http://stir.nmhh.hu/?oldal=dokumentumGeneralo&root_rendeletelem_id=3&hatalyos=1
# HU: http://english.nmhh.hu/cikk/297/Eljarasi_tajekoztato_a_24_GHzes_es_az_5_GHzes_savban_mukodo_berendezesek_engedelyezeserol
# HU: http://nmhh.hu/dokumentum/319/kis_hatotavolsagu_eszkozok_srdk.pdf
country HU: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

country ID: DFS-JP
	# ref: https://jdih.kominfo.go.id/produk_hukum/view/id/676/t/peraturan+menteri+komunikasi+dan+informatika+nomor+1+tahun+2019+tanggal+24+april+2019
	(2400 - 2483.5 @ 40), (500 mW), NO-OUTDOOR
	(5150 - 5350 @ 80), (200 mW), NO-OUTDOOR
	(5725 - 5825 @ 80), (200 mW), NO-OUTDOOR

# IE as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# IE: https://www.comreg.ie/publication-download/interface-requirements-for-radio-services-in-ireland
# IE: https://www.comreg.ie/publication-download/permitted-short-range-devices-ireland
country IE: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

country IL: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW
	(5250 - 5350 @ 80), (200 mW), NO-OUTDOOR, DFS, AUTO-BW

country IN:
	(2402 - 2482 @ 40), (20)
	(5150 - 5250 @ 80), (30)
	(5250 - 5350 @ 80), (24)
	(5470 - 5725 @ 160), (24)
	(5725 - 5875 @ 80), (30)

country IR: DFS-JP
	(2402 - 2482 @ 40), (20)
	(5735 - 5835 @ 80), (30)

# IS as part of CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# IS: https://www.pfs.is/library/Skrar/Tidnir-og-taekni/MHZ_21022019.pdf
country IS: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

# IT as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
country IT: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

country JM: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country JO: DFS-JP
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (23)
	(5735 - 5835 @ 80), (23)

country JP: DFS-JP
	(2402 - 2482 @ 40), (20)
	(2474 - 2494 @ 20), (20), NO-OFDM
	(4910 - 4990 @ 40), (23)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (23), DFS
	# 60 GHz band channels 2-4 at 10mW,
	# ref: http://www.arib.or.jp/english/html/overview/doc/1-STD-T74v1_1.pdf
	(57000 - 66000 @ 2160), (10 mW)

country KE: DFS-JP
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (23)
	(5490 - 5570 @ 80), (30), DFS
	(5735 - 5775 @ 40), (23)

country KH: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (27), DFS

# Source
# http://ntrc.kn/?page_id=7
country KN: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (30), DFS
	(5735 - 5815 @ 80), (30)

country KP: DFS-JP
	(2402 - 2482 @ 20), (20)
	(5170 - 5250 @ 20), (20)
	(5250 - 5330 @ 20), (20), DFS
	(5490 - 5630 @ 20), (30), DFS
	(5735 - 5815 @ 20), (30)

country KR: DFS-JP
	# ref: https://www.rra.go.kr
	(2400 - 2483.5 @ 40), (23)
	(5150 - 5250 @ 80), (23), AUTO-BW
	(5250 - 5350 @ 80), (20), DFS, AUTO-BW
	(5470 - 5725 @ 160), (20), DFS
	(5725 - 5835 @ 80), (23)
	# 60 GHz band channels 1-4,
	# ref: http://www.law.go.kr/%ED%96%89%EC%A0%95%EA%B7%9C%EC%B9%99/%EB%AC%B4%EC%84%A0%EC%84%A4%EB%B9%84%EA%B7%9C%EC%B9%99
	(57000 - 66000 @ 2160), (43)

country KW: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW

country KY: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (24), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

# Source:
# http://adilet.zan.kz/rus/docs/V1500010730
# http://adilet.zan.kz/rus/docs/V1500010375
country KZ: DFS-ETSI
	(2400 - 2483.5 @ 40), (20)
	(5150 - 5250 @ 80), (23), NO-OUTDOOR, AUTO-BW
	(5250 - 5350 @ 80), (20), NO-OUTDOOR, DFS, AUTO-BW
	(5470 - 5725 @ 160), (20), NO-OUTDOOR, DFS
	(5725 - 5850 @ 80), (20), NO-OUTDOOR
	(57000 - 66000 @ 2160), (40)

country LB: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

# Source:
# http://www.ntrc.org.lc/operational_structures.htm
country LC: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (30), DFS
	(5735 - 5815 @ 80), (30)

# LI as part of CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# LI: https://www.ofcomnet.ch/api/rir/1010/05
# LI: https://www.ofcomnet.ch/api/rir/1010/04
# LI: https://www.ofcomnet.ch/api/rir/1008/12
# LI: https://www.ofcomnet.ch/#/fatTable
country LI: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

country LK: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 20), (17)
	(5250 - 5330 @ 20), (24), DFS
	(5490 - 5730 @ 20), (24), DFS
	(5735 - 5835 @ 20), (30)

# Source:
# http://lca.org.ls/images/documents/lesotho_national_frequency_allocation_plan.pdf
country LS: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (27), DFS

# LT as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# LT: https://www.rrt.lt/en/radio-spectrum/frequency-management/ or direct link:
# LT: https://www.e-tar.lt/portal/lt/legalAct/6e718fd037a011e69101aaab2992cbcd/dGRioCBBHb
country LT: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

# LU as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# LU: https://assets.ilr.lu/frequences/Documents/ILRLU-1723895916-183.pdf#search=en%20300%20440
country LU: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

# LV as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# LV: http://likumi.lv/doc.php?id=198903
country LV: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

country MA: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW

# MC as part of CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
country MC: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)

# Source:
# http://www.cnfr.md/index.php?pag=sec&id=117&l=en
# MD as part of CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
country MD: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)

# Source:
# http://www.cept.org/files/1050/Tools%20and%20Services/EFIS%20-%20ECO%20Frequency%20Information%20System/National%20frequency%20tables/Montenegro%20NAFT%20-%202010.pdf
# ME as part of CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
country ME: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)

country MF: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW, wmmrule=ETSI
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW, wmmrule=ETSI
	(5490 - 5710 @ 160), (27), DFS, wmmrule=ETSI

country MH: DFS-FCC
	(2402 - 2472 @ 40), (30)
	(5170 - 5250 @ 80), (24), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

# MK as part of CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
country MK: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4, ref: Etsi En 302 567
	(57000 - 66000 @ 2160), (40)

country MN: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (24), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country MO: DFS-FCC
	(2402 - 2482 @ 40), (23)
	(5170 - 5250 @ 80), (23), AUTO-BW
	(5250 - 5330 @ 80), (23), DFS, AUTO-BW
	(5490 - 5730 @ 160), (30), DFS
	(5735 - 5835 @ 80), (30)

country MP: DFS-FCC
	(2402 - 2472 @ 40), (30)
	(5170 - 5250 @ 80), (24), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country MQ: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW, wmmrule=ETSI
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW, wmmrule=ETSI
	(5490 - 5710 @ 160), (27), DFS, wmmrule=ETSI

# Source:
# http://www.are.mr/pdfs/telec_freq_TNAbf_2010.pdf
country MR: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (27), DFS

# MT as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# MT: https://www.mca.org.mt/sites/default/files/NFP_edition%206-1.pdf
country MT: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

country MU: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (24), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

# Source:
# http://www.cam.gov.mv/docs/tech_standards/TAM-TS-100-2004-WLAN.pdf
country MV: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), AUTO-BW
	(5250 - 5350 @ 80), (100 mW), DFS, AUTO-BW
	(5725 - 5850 @ 80), (100 mW)

country MW: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (27), DFS

country MX: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country MY: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (24), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5650 @ 160), (24), DFS
	(5735 - 5835 @ 80), (24)

country NG: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5250 - 5330 @ 80), (30), DFS
	(5735 - 5835 @ 80), (30)

country NI: DFS-FCC
	(2402 - 2472 @ 40), (30)
	(5170 - 5250 @ 80), (24), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

# NL as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# NL: http://wetten.overheid.nl/BWBR0036378/2015-03-05
country NL: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

# NO as part of CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# NO: https://eng.nkom.no/technical/temporary-licenses/mobile-videolink/wireless-cameras-mobile-video-links/_attachment/9947
# NO: http://www.lovdata.no/dokument/SF/forskrift/2012-01-19-77
# In addition to EU NO can use 5725–5795 MHz and 5815–5850 bands with limit of 4 W EIRP (with DFS and TPC)
country NO: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# WiFi 6E
	(5945 - 6425 @ 160), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 71000 @ 2160), (40)

country NP: DFS-JP
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5735 - 5835 @ 80), (20)

country NZ: DFS-ETSI
	(2402 - 2482 @ 40), (30)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country OM: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (27), DFS

# Source:
# http://www.asep.gob.pa/images/telecomunicaciones/Anexos/PNAF-dic2015.pdf
country PA: DFS-FCC
	(2400 - 2483.5 @ 40), (36)
	(5150 - 5250 @ 80), (36), AUTO-BW
	(5250 - 5350 @ 80), (30), AUTO-BW
	(5470 - 5725 @ 160), (30)
	(5725 - 5850 @ 80), (36)
	(57000 - 64000 @ 2160), (43)

country PE: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country PF: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW, wmmrule=ETSI
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW, wmmrule=ETSI
	(5490 - 5710 @ 160), (27), DFS, wmmrule=ETSI

country PG: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country PH: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country PK: DFS-JP
	# https://fab.gov.pk/type-approval/
	# https://pta.gov.pk/media/Pakistan_Table_of_Frequency_Allocations.pdf
	(2402 - 2482 @ 40), (20)
	(5725 - 5875 @ 80), (30)

# PL as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
country PL: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

country PM: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW, wmmrule=ETSI
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW, wmmrule=ETSI
	(5490 - 5710 @ 160), (27), DFS, wmmrule=ETSI

country PR: DFS-FCC
	(2402 - 2472 @ 40), (30)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

# PT as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# PT: https://www.anacom.pt/render.jsp?categoryId=336334
country PT: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

country PW: DFS-FCC
	(2402 - 2472 @ 40), (30)
	(5170 - 5250 @ 80), (24), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country PY: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (24), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country QA: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW), NO-OUTDOOR
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW
	(5250 - 5350 @ 80), (200 mW), NO-OUTDOOR, DFS, AUTO-BW
	(5470 - 5725 @ 160), (100 mW), NO-OUTDOOR, DFS
	(5725 - 5875 @ 80), (100 mW), NO-OUTDOOR, DFS
	(57000 - 66000 @ 2160), (40), NO-OUTDOOR

country RE: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW, wmmrule=ETSI
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW, wmmrule=ETSI
	(5490 - 5710 @ 160), (27), DFS, wmmrule=ETSI

# RO as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# RO: http://www.ancom.org.ro/en/uploads/links_files/ordin_262_2006.pdf
country RO: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

# Source:
# http://www.ratel.rs/upload/documents/Plan_namene/Plan_namene-sl_glasnik.pdf
# RS as part of CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
country RS: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4, ref: Etsi En 302 567
	(57000 - 66000 @ 2160), (40)

country RU:
	(2400 - 2483.5 @ 40), (20)
	(5150 - 5350 @ 160), (20), NO-OUTDOOR
	(5650 - 5850 @ 160), (20), NO-OUTDOOR
	# 60 GHz band channels 1-4, ref: Changes to NLA 124_Order №129_22042015.pdf
	(57000 - 66000 @ 2160), (40), NO-OUTDOOR

country RW: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country SA: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (27), DFS

# SE as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# SE: https://pts.se/globalassets/startpage/dokument/legala-dokument/foreskrifter/radio/beslutade_ptsfs-2018-3-undantagsforeskrifter.pdf
country SE: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

# https://www.imda.gov.sg/-/media/Imda/Files/Regulation-Licensing-and-Consultations/ICT-Standards/Telecommunication-Standards/Radio-Comms/IMDATSSRD.pdf
# IMDA TS SRD, Issue 1 Revision 1, April 2019, subsequently "IMDA TS SRD"
# 2400 - 2483.5 MHz: IMDA TS SRD, Table 1 (25); ANSI C63.10-2013 and FCC Part 15 Section 15.247 or EN 300 328
# 5150 - 5350 MHz: IMDA TS SRD, Table 1 (29); FCC Part 15 Section 15.407 (1) 5.15-5.25 GHz (2) 5.25-5.35 GHz; EN 301 893
# 5470 - 5725 MHz: IMDA TS SRD, Table 1 (30); FCC Part 15 Section 15.407 (2) 5.47-5.725 GHz; EN 301 893
# 5725 - 5850 MHz: IMDA TS SRD, Table 1 (27); FCC Part 15 Section 15.247; FCC Part 15 Section 15.407 (3) 5.725-5.85 GHz
# 57000 - 66000 MHz: IMDA TS SRD, Table 1 (31); ETSI EN 302 567
# Note: 27dBm for 5470-5725MHz bands is 3dBm reduction per FCC Part 15 Section 15.407 (2) 5.47-5.725 GHz; EN 301 893 as referenced by IMDA TS SRD
#  AU and BG regulatory domains use the same interpretation of cited FCC and ETSI standards
# Note: The transmit power for 5250-5350MHz bands can be raised by 3dBm when TPC is implemented: IMDA TS SRD Table 1 (29)
# Note: The transmit power for 5470-5725MHz bands can be raised by 3dBm when TPC is implemented: IMDA TS SRD Table 1 (30)

country SG: DFS-FCC
	(2400 - 2483.5 @ 40), (23)
	(5150 - 5250 @ 80), (23), AUTO-BW
	(5250 - 5350 @ 80), (20), DFS, AUTO-BW
	(5470 - 5725 @ 160), (27), DFS
	(5725 - 5850 @ 80), (30)
	(57000 - 66000 @ 2160), (40)

# SI as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# SI: https://www.akos-rs.si/bwa
country SI: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

# SK as part of EU/CEPT accepted decisions 2005/513/EC (5GHz RLAN, EN 301 893)
# and 2006/771/EC (amended by 2008/432/EC, Short-Range Devices, EN 300 440)
#  EU decision 2005/513/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02005D0513-20070213
#  EU decision 2006/771/EC: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:02008D0432-20080611
# Harmonized CEPT countries (July 2019): https://www.ecodocdb.dk/download/25c41779-cd6e/Rec7003e.pdf
# SK: https://www.teleoff.gov.sk/data/files/25911.pdf
# SK: https://www.teleoff.gov.sk/data/files/41072.pdf
# SK: https://www.teleoff.gov.sk/data/files/49125_vpr-01_2018-rusi-vpr-10_2014a21_2012-nespecifik-srd_021018.pdf
country SK: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW)
	(5150 - 5250 @ 80), (200 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), NO-OUTDOOR, DFS, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (500 mW), DFS, wmmrule=ETSI
	# short range devices (ETSI EN 300 440-1)
	(5725 - 5875 @ 80), (25 mW)
	# 60 GHz band channels 1-4 (ETSI EN 302 567)
	(57000 - 66000 @ 2160), (40)

# Source:
# Regulation N° 2004-005 ART/DG/DRC/D.Rég
country SN: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country SR: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (27), DFS

country SV: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 20), (17)
	(5250 - 5330 @ 20), (23), DFS
	(5735 - 5835 @ 20), (30)

country SY:
	(2402 - 2482 @ 40), (20)

# Source:
# http://www.telecommission.tc/Spectrum-plan20110324-101210.html
country TC: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (24), AUTO-BW, wmmrule=ETSI
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW, wmmrule=ETSI
	(5490 - 5730 @ 160), (24), DFS, wmmrule=ETSI
	(5735 - 5835 @ 80), (30)

country TD: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (27), DFS

country TG: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 40), (20)
	(5250 - 5330 @ 40), (20), DFS
	(5490 - 5710 @ 40), (27), DFS

country TH: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country TN: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW

# Source:
# By-Law on Short Range Radio Devices (SRD) Oct 2015
# https://www.btk.gov.tr/File/?path=ROOT%2f1%2fDocuments%2fOrdinance%2fBY%2DLAW%20ON%20SHORT%20RANGE%20DEVICES.pdf
# Article 8
country TR: DFS-ETSI
	(2400 - 2483.5 @ 40), (20)
	(5170 - 5250 @ 80), (23), NO-OUTDOOR, AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, NO-OUTDOOR, AUTO-BW
	(5470 - 5725 @ 160), (27), DFS
	# 60 GHz band channels 1-4, ref: Etsi En 302 567
	(57000 - 66000 @ 2160), (40)

country TT: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

# Source:
# Table of Frequency Allocations of Republic of China (Taiwan) / Feb 2017:
#   https://www.motc.gov.tw/websitedowndoc?file=post/201702221012200.doc& \
#	filedisplay=Table%2Bof%2Bradio%2Bfrequency%2Ballocation.doc
# LP0002 Low-power Radio-frequency Devices Technical Regulations / 23 Aug 2016:
#   http://www.ncc.gov.tw/english/show_file.aspx?table_name=news&file_sn=681
country TW: DFS-FCC
	# 2.4g band, LP0002 section 3.10.1
	(2400 - 2483.5 @ 40), (30)
	# 5g U-NII band, LP0002 section 4.7
	# 5.15 ~ 5.25 GHz: 30 dBm for master mode, 23 dBm for clients
	(5150 - 5250 @ 80), (23), AUTO-BW
	(5250 - 5350 @ 80), (23), DFS, AUTO-BW
	# This range ends at 5725 MHz, but channel 144 extends to 5730 MHz.
	# Since 5725 ~ 5730 MHz belongs to the next range which has looser
	# requirements, we can extend the range by 5 MHz to make the kernel
	# happy and be able to use channel 144.
	(5470 - 5730 @ 160), (23), DFS
	(5725 - 5850 @ 80), (30)
	# 60g band, LP0002 section 3.13.1.1 (3)(C), EIRP=40dBm(43dBm peak)
	(57000 - 66000 @ 2160), (40)
 
country TZ:
	(2402 - 2482 @ 40), (20)
	(5735 - 5835 @ 80), (30)

# Source: https://zakon.rada.gov.ua/laws/show/z0201-15#n48
# Although it is allowed to use up to 250 mW for some 5 GHz frequency ranges,
# all of them are limited to 100 mW for IEEE 802.11n and IEEE 802.11ac.
# 2.4 GHz band channels can be used outdoors when some requirements are met.
# 5 GHz band channels must be used only indoors in some cases. They are neither
# permitted nor denied outdoors in others.
country UA: DFS-ETSI
	(2400 - 2483.5 @ 40), (100 mW), NO-OUTDOOR
	(5150 - 5250 @ 80), (100 mW), NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5250 - 5350 @ 80), (100 mW), DFS, NO-OUTDOOR, AUTO-BW, wmmrule=ETSI
	(5470 - 5725 @ 160), (100 mW), DFS, NO-OUTDOOR, wmmrule=ETSI
	(5725 - 5850 @ 80), (100 mW), NO-OUTDOOR
	# 60 GHz band channels 1-4, ref: Etsi En 302 567
	(57000 - 66000 @ 2160), (40 mW), NO-OUTDOOR

country UG: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (24), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

# https://www.ecfr.gov/cgi-bin/text-idx?SID=eed706a2c49fd9271106c3228b0615f3&mc=true&node=pt47.1.15&rgn=div5
# Title 47 Part 15 - Radio Frequency Devices, April 2, 2020
# Channels 12 and 13 are not forbidden, but are not normally used with full
# power in order to avoid any potential interference in the adjacent restricted
# frequency band, 2,483.5–2,500 MHz which is subject to strict emission limits
# set out in 47 CFR § 15.205. TODO: reenable and specify a safe TX power here.
country US: DFS-FCC
	(2400 - 2472 @ 40), (30)
	# 5.15 ~ 5.25 GHz: 30 dBm for master mode, 23 dBm for clients
	(5150 - 5250 @ 80), (23), AUTO-BW
	(5250 - 5350 @ 80), (24), DFS, AUTO-BW
	# This range ends at 5725 MHz, but channel 144 extends to 5730 MHz.
	# Since 5725 ~ 5730 MHz belongs to the next range which has looser
	# requirements, we can extend the range by 5 MHz to make the kernel
	# happy and be able to use channel 144.
	(5470 - 5730 @ 160), (24), DFS
	(5730 - 5850 @ 80), (30), AUTO-BW
	# https://www.federalregister.gov/documents/2021/05/03/2021-08802/use-of-the-5850-5925-ghz-band
	# max. 33 dBm AP @ 20MHz, 36 dBm AP @ 40Mhz+, 6 dB less for clients
	(5850 - 5895 @ 40), (27), NO-OUTDOOR, AUTO-BW, NO-IR
	# 60g band
	# reference: section IV-D https://docs.fcc.gov/public/attachments/FCC-16-89A1.pdf
	# channels 1-6 EIRP=40dBm(43dBm peak)
	(57240 - 71000 @ 2160), (40)

country UY: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (23), AUTO-BW
	(5250 - 5330 @ 80), (23), DFS, AUTO-BW
	(5735 - 5835 @ 80), (30)

# Source:
# http://cemc.uz/article/1976/
country UZ: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW

# Source:
# http://www.ntrc.vc/regulations/Jun_2006_Spectrum_Managment_Regulations.pdf
country VC: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (27), DFS

# Source:
# Official Gazette (Gaceta Oficial) concerning Unlicensed transmitter use
# (10 June 2013)
# http://www.conatel.gob.ve/
country VE: DFS-FCC
	(2402 - 2482 @ 40), (30)
	(5170 - 5250 @ 80), (23), AUTO-BW
	(5250 - 5330 @ 80), (23), DFS, AUTO-BW
	(5735 - 5835 @ 80), (30)

country VI: DFS-FCC
	(2402 - 2472 @ 40), (30)
	(5170 - 5250 @ 80), (24), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country VN: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17)
	(5250 - 5330 @ 80), (24), DFS
	(5490 - 5730 @ 80), (24), DFS
	(5735 - 5835 @ 80), (30)

# Source:
# http://www.trr.vu/attachments/category/130/GURL_for_Short-range_Radiocommunication_Devices2.pdf
country VU: DFS-FCC
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (17), AUTO-BW
	(5250 - 5330 @ 80), (24), DFS, AUTO-BW
	(5490 - 5730 @ 160), (24), DFS
	(5735 - 5835 @ 80), (30)

country WF: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW, wmmrule=ETSI
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW, wmmrule=ETSI
	(5490 - 5710 @ 160), (27), DFS, wmmrule=ETSI

country WS: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 40), (20)
	(5250 - 5330 @ 40), (20), DFS
	(5490 - 5710 @ 40), (27), DFS

country YE:
	(2402 - 2482 @ 40), (20)

country YT: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW, wmmrule=ETSI
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW, wmmrule=ETSI
	(5490 - 5710 @ 160), (27), DFS, wmmrule=ETSI

country ZA: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (30)

country ZW: DFS-ETSI
	(2402 - 2482 @ 40), (20)
	(5170 - 5250 @ 80), (20), AUTO-BW
	(5250 - 5330 @ 80), (20), DFS, AUTO-BW
	(5490 - 5710 @ 160), (27), DFS

