From be625d61df37f9b714eab2ea95a6f526ec927da0 Mon Sep 17 00:00:00 2001
From: Ondrej Jirman <megous@megous.com>
Date: Fri, 11 Feb 2022 15:47:39 +0100
Subject: [PATCH 489/562] Revert "net: wireless: realtek: Update rtw88/89
 drivers from 5.17"

This reverts commit 2d9d89773768cb5c0894bafa76420f037205a188.
---
 drivers/net/wireless/realtek/rtw88/Makefile   |     1 -
 drivers/net/wireless/realtek/rtw88/bf.c       |    14 +-
 drivers/net/wireless/realtek/rtw88/bf.h       |     7 +-
 drivers/net/wireless/realtek/rtw88/debug.c    |   100 +-
 drivers/net/wireless/realtek/rtw88/debug.h    |     1 -
 drivers/net/wireless/realtek/rtw88/fw.c       |   388 -
 drivers/net/wireless/realtek/rtw88/fw.h       |   143 -
 drivers/net/wireless/realtek/rtw88/mac80211.c |    91 +-
 drivers/net/wireless/realtek/rtw88/main.c     |    88 +-
 drivers/net/wireless/realtek/rtw88/main.h     |    77 +-
 drivers/net/wireless/realtek/rtw88/pci.c      |    69 +-
 drivers/net/wireless/realtek/rtw88/pci.h      |     2 -
 drivers/net/wireless/realtek/rtw88/phy.c      |    63 +-
 drivers/net/wireless/realtek/rtw88/phy.h      |     1 -
 drivers/net/wireless/realtek/rtw88/ps.c       |     3 -
 drivers/net/wireless/realtek/rtw88/ps.h       |     1 -
 drivers/net/wireless/realtek/rtw88/rtw8821c.c |     3 +-
 drivers/net/wireless/realtek/rtw88/rtw8821c.h |     2 +-
 drivers/net/wireless/realtek/rtw88/rtw8822b.c |     4 +-
 drivers/net/wireless/realtek/rtw88/rtw8822c.c |    14 +-
 drivers/net/wireless/realtek/rtw88/rtw8822c.h |     4 -
 drivers/net/wireless/realtek/rtw88/rx.c       |    10 -
 drivers/net/wireless/realtek/rtw88/sar.c      |   114 -
 drivers/net/wireless/realtek/rtw88/sar.h      |    22 -
 drivers/net/wireless/realtek/rtw88/tx.c       |    36 +-
 drivers/net/wireless/realtek/rtw89/cam.c      |    61 +-
 drivers/net/wireless/realtek/rtw89/cam.h      |   472 +-
 drivers/net/wireless/realtek/rtw89/coex.c     |    73 +-
 drivers/net/wireless/realtek/rtw89/coex.h     |     6 -
 drivers/net/wireless/realtek/rtw89/core.c     |    93 +-
 drivers/net/wireless/realtek/rtw89/core.h     |    42 +-
 drivers/net/wireless/realtek/rtw89/debug.c    |    11 +-
 drivers/net/wireless/realtek/rtw89/fw.c       |    22 +-
 drivers/net/wireless/realtek/rtw89/fw.h       |  2170 ++-
 drivers/net/wireless/realtek/rtw89/mac.c      |    21 +-
 drivers/net/wireless/realtek/rtw89/mac.h      |    11 -
 drivers/net/wireless/realtek/rtw89/mac80211.c |     7 +-
 drivers/net/wireless/realtek/rtw89/phy.c      |   158 +-
 drivers/net/wireless/realtek/rtw89/phy.h      |    60 -
 drivers/net/wireless/realtek/rtw89/reg.h      |    25 +-
 drivers/net/wireless/realtek/rtw89/regd.c     |   375 +-
 drivers/net/wireless/realtek/rtw89/rtw8852a.c |    25 +-
 .../wireless/realtek/rtw89/rtw8852a_table.c   | 12201 +++++++---------
 drivers/net/wireless/realtek/rtw89/txrx.h     |    91 +-
 44 files changed, 6764 insertions(+), 10418 deletions(-)
 delete mode 100644 drivers/net/wireless/realtek/rtw88/sar.c
 delete mode 100644 drivers/net/wireless/realtek/rtw88/sar.h

diff --git a/drivers/net/wireless/realtek/rtw88/Makefile b/drivers/net/wireless/realtek/rtw88/Makefile
index 834c66ec0af9..73d6807a8cdf 100644
--- a/drivers/net/wireless/realtek/rtw88/Makefile
+++ b/drivers/net/wireless/realtek/rtw88/Makefile
@@ -15,7 +15,6 @@ rtw88_core-y += main.o \
 	   ps.o \
 	   sec.o \
 	   bf.o \
-	   sar.o \
 	   regd.o
 
 rtw88_core-$(CONFIG_PM) += wow.o
diff --git a/drivers/net/wireless/realtek/rtw88/bf.c b/drivers/net/wireless/realtek/rtw88/bf.c
index df750b3a35e9..aff70e4ae028 100644
--- a/drivers/net/wireless/realtek/rtw88/bf.c
+++ b/drivers/net/wireless/realtek/rtw88/bf.c
@@ -130,8 +130,7 @@ void rtw_bf_cfg_sounding(struct rtw_dev *rtwdev, struct rtw_vif *vif,
 		  BIT_WMAC_USE_NDPARATE |
 		  (csi_rsc << 13);
 
-	rtw_write8_mask(rtwdev, REG_SND_PTCL_CTRL, BIT_MASK_BEAMFORM,
-			RTW_SND_CTRL_SOUNDING);
+	rtw_write8(rtwdev, REG_SND_PTCL_CTRL, RTW_SND_CTRL_SOUNDING);
 	rtw_write8(rtwdev, REG_SND_PTCL_CTRL + 3, 0x26);
 	rtw_write8_clr(rtwdev, REG_RXFLTMAP1, BIT_RXFLTMAP1_BF_REPORT_POLL);
 	rtw_write8_clr(rtwdev, REG_RXFLTMAP4, BIT_RXFLTMAP4_BF_REPORT_POLL);
@@ -178,7 +177,7 @@ void rtw_bf_del_bfer_entry_mu(struct rtw_dev *rtwdev)
 
 void rtw_bf_del_sounding(struct rtw_dev *rtwdev)
 {
-	rtw_write8_mask(rtwdev, REG_SND_PTCL_CTRL, BIT_MASK_BEAMFORM, 0);
+	rtw_write8(rtwdev, REG_SND_PTCL_CTRL, 0);
 }
 
 void rtw_bf_enable_bfee_su(struct rtw_dev *rtwdev, struct rtw_vif *vif,
@@ -205,8 +204,7 @@ void rtw_bf_enable_bfee_su(struct rtw_dev *rtwdev, struct rtw_vif *vif,
 	}
 
 	/* Sounding protocol control */
-	rtw_write8_mask(rtwdev, REG_SND_PTCL_CTRL, BIT_MASK_BEAMFORM,
-			RTW_SND_CTRL_SOUNDING);
+	rtw_write8(rtwdev, REG_SND_PTCL_CTRL, RTW_SND_CTRL_SOUNDING);
 
 	/* MAC address/Partial AID of Beamformer */
 	for (i = 0; i < ETH_ALEN; i++)
@@ -275,8 +273,7 @@ void rtw_bf_remove_bfee_su(struct rtw_dev *rtwdev,
 	struct rtw_bf_info *bfinfo = &rtwdev->bf_info;
 
 	rtw_dbg(rtwdev, RTW_DBG_BF, "remove as a su bfee\n");
-	rtw_write8_mask(rtwdev, REG_SND_PTCL_CTRL, BIT_MASK_BEAMFORM,
-			RTW_SND_CTRL_REMOVE);
+	rtw_write8(rtwdev, REG_SND_PTCL_CTRL, RTW_SND_CTRL_REMOVE);
 
 	switch (bfee->su_reg_index) {
 	case 0:
@@ -301,8 +298,7 @@ void rtw_bf_remove_bfee_mu(struct rtw_dev *rtwdev,
 {
 	struct rtw_bf_info *bfinfo = &rtwdev->bf_info;
 
-	rtw_write8_mask(rtwdev, REG_SND_PTCL_CTRL, BIT_MASK_BEAMFORM,
-			RTW_SND_CTRL_REMOVE);
+	rtw_write8(rtwdev, REG_SND_PTCL_CTRL, RTW_SND_CTRL_REMOVE);
 
 	rtw_bf_del_bfer_entry_mu(rtwdev);
 
diff --git a/drivers/net/wireless/realtek/rtw88/bf.h b/drivers/net/wireless/realtek/rtw88/bf.h
index 7b40c2c03856..17855edb5006 100644
--- a/drivers/net/wireless/realtek/rtw88/bf.h
+++ b/drivers/net/wireless/realtek/rtw88/bf.h
@@ -13,9 +13,6 @@
 #define REG_ASSOCIATED_BFMER1_INFO	0x06EC
 #define REG_TX_CSI_RPT_PARAM_BW20	0x06F4
 #define REG_SND_PTCL_CTRL		0x0718
-#define BIT_DIS_CHK_VHTSIGB_CRC		BIT(6)
-#define BIT_DIS_CHK_VHTSIGA_CRC		BIT(5)
-#define BIT_MASK_BEAMFORM		(GENMASK(4, 0) | BIT(7))
 #define REG_MU_TX_CTL			0x14C0
 #define REG_MU_STA_GID_VLD		0x14C4
 #define REG_MU_STA_USER_POS_INFO	0x14C8
@@ -45,8 +42,8 @@
 #define BIT_RXFLTMAP4_BF_REPORT_POLL	BIT(4)
 
 #define RTW_NDP_RX_STANDBY_TIME	0x70
-#define RTW_SND_CTRL_REMOVE	0x98
-#define RTW_SND_CTRL_SOUNDING	0x9B
+#define RTW_SND_CTRL_REMOVE	0xD8
+#define RTW_SND_CTRL_SOUNDING	0xDB
 
 enum csi_seg_len {
 	HAL_CSI_SEG_4K = 0,
diff --git a/drivers/net/wireless/realtek/rtw88/debug.c b/drivers/net/wireless/realtek/rtw88/debug.c
index e429428232c1..682b23502e6e 100644
--- a/drivers/net/wireless/realtek/rtw88/debug.c
+++ b/drivers/net/wireless/realtek/rtw88/debug.c
@@ -152,22 +152,6 @@ static int rtw_debugfs_get_rf_read(struct seq_file *m, void *v)
 	return 0;
 }
 
-static int rtw_debugfs_get_fix_rate(struct seq_file *m, void *v)
-{
-	struct rtw_debugfs_priv *debugfs_priv = m->private;
-	struct rtw_dev *rtwdev = debugfs_priv->rtwdev;
-	struct rtw_dm_info *dm_info = &rtwdev->dm_info;
-	u8 fix_rate = dm_info->fix_rate;
-
-	if (fix_rate >= DESC_RATE_MAX) {
-		seq_printf(m, "Fix rate disabled, fix_rate = %u\n", fix_rate);
-		return 0;
-	}
-
-	seq_printf(m, "Data frames fixed at desc rate %u\n", fix_rate);
-	return 0;
-}
-
 static int rtw_debugfs_copy_from_user(char tmp[], int size,
 				      const char __user *buffer, size_t count,
 				      int num)
@@ -453,31 +437,6 @@ static ssize_t rtw_debugfs_set_rf_read(struct file *filp,
 	return count;
 }
 
-static ssize_t rtw_debugfs_set_fix_rate(struct file *filp,
-					const char __user *buffer,
-					size_t count, loff_t *loff)
-{
-	struct seq_file *seqpriv = (struct seq_file *)filp->private_data;
-	struct rtw_debugfs_priv *debugfs_priv = seqpriv->private;
-	struct rtw_dev *rtwdev = debugfs_priv->rtwdev;
-	struct rtw_dm_info *dm_info = &rtwdev->dm_info;
-	u8 fix_rate;
-	char tmp[32 + 1];
-	int ret;
-
-	rtw_debugfs_copy_from_user(tmp, sizeof(tmp), buffer, count, 1);
-
-	ret = kstrtou8(tmp, 0, &fix_rate);
-	if (ret) {
-		rtw_warn(rtwdev, "invalid args, [rate]\n");
-		return ret;
-	}
-
-	dm_info->fix_rate = fix_rate;
-
-	return count;
-}
-
 static int rtw_debug_get_mac_page(struct seq_file *m, void *v)
 {
 	struct rtw_debugfs_priv *debugfs_priv = m->private;
@@ -631,11 +590,9 @@ static int rtw_debugfs_get_tx_pwr_tbl(struct seq_file *m, void *v)
 	u8 ch = hal->current_channel;
 	u8 regd = rtw_regd_get(rtwdev);
 
-	seq_printf(m, "channel: %u\n", ch);
-	seq_printf(m, "bandwidth: %u\n", bw);
 	seq_printf(m, "regulatory: %s\n", rtw_get_regd_string(regd));
-	seq_printf(m, "%-4s %-10s %-9s %-9s (%-4s %-4s %-4s) %-4s\n",
-		   "path", "rate", "pwr", "base", "byr", "lmt", "sar", "rem");
+	seq_printf(m, "%-4s %-10s %-3s%6s %-4s %4s (%-4s %-4s) %-4s\n",
+		   "path", "rate", "pwr", "", "base", "", "byr", "lmt", "rem");
 
 	mutex_lock(&hal->tx_power_mutex);
 	for (path = RF_PATH_A; path <= RF_PATH_B; path++) {
@@ -657,15 +614,13 @@ static int rtw_debugfs_get_tx_pwr_tbl(struct seq_file *m, void *v)
 
 			seq_printf(m, "%4c ", path + 'A');
 			rtw_print_rate(m, rate);
-			seq_printf(m, " %3u(0x%02x) %4u %4d (%4d %4d %4d) %4d\n",
+			seq_printf(m, " %3u(0x%02x) %4u %4d (%4d %4d) %4d\n",
 				   hal->tx_pwr_tbl[path][rate],
 				   hal->tx_pwr_tbl[path][rate],
 				   pwr_param.pwr_base,
-				   min3(pwr_param.pwr_offset,
-					pwr_param.pwr_limit,
-					pwr_param.pwr_sar),
+				   min_t(s8, pwr_param.pwr_offset,
+					 pwr_param.pwr_limit),
 				   pwr_param.pwr_offset, pwr_param.pwr_limit,
-				   pwr_param.pwr_sar,
 				   pwr_param.pwr_remnant);
 		}
 	}
@@ -949,39 +904,6 @@ static int rtw_debugfs_get_fw_crash(struct seq_file *m, void *v)
 	return 0;
 }
 
-static ssize_t rtw_debugfs_set_force_lowest_basic_rate(struct file *filp,
-						       const char __user *buffer,
-						       size_t count, loff_t *loff)
-{
-	struct seq_file *seqpriv = (struct seq_file *)filp->private_data;
-	struct rtw_debugfs_priv *debugfs_priv = seqpriv->private;
-	struct rtw_dev *rtwdev = debugfs_priv->rtwdev;
-	bool input;
-	int err;
-
-	err = kstrtobool_from_user(buffer, count, &input);
-	if (err)
-		return err;
-
-	if (input)
-		set_bit(RTW_FLAG_FORCE_LOWEST_RATE, rtwdev->flags);
-	else
-		clear_bit(RTW_FLAG_FORCE_LOWEST_RATE, rtwdev->flags);
-
-	return count;
-}
-
-static int rtw_debugfs_get_force_lowest_basic_rate(struct seq_file *m, void *v)
-{
-	struct rtw_debugfs_priv *debugfs_priv = m->private;
-	struct rtw_dev *rtwdev = debugfs_priv->rtwdev;
-
-	seq_printf(m, "force lowest basic rate: %d\n",
-		   test_bit(RTW_FLAG_FORCE_LOWEST_RATE, rtwdev->flags));
-
-	return 0;
-}
-
 static ssize_t rtw_debugfs_set_dm_cap(struct file *filp,
 				      const char __user *buffer,
 				      size_t count, loff_t *loff)
@@ -1139,11 +1061,6 @@ static struct rtw_debugfs_priv rtw_debug_priv_read_reg = {
 	.cb_read = rtw_debugfs_get_read_reg,
 };
 
-static struct rtw_debugfs_priv rtw_debug_priv_fix_rate = {
-	.cb_write = rtw_debugfs_set_fix_rate,
-	.cb_read = rtw_debugfs_get_fix_rate,
-};
-
 static struct rtw_debugfs_priv rtw_debug_priv_dump_cam = {
 	.cb_write = rtw_debugfs_set_single_input,
 	.cb_read = rtw_debugfs_get_dump_cam,
@@ -1177,11 +1094,6 @@ static struct rtw_debugfs_priv rtw_debug_priv_fw_crash = {
 	.cb_read = rtw_debugfs_get_fw_crash,
 };
 
-static struct rtw_debugfs_priv rtw_debug_priv_force_lowest_basic_rate = {
-	.cb_write = rtw_debugfs_set_force_lowest_basic_rate,
-	.cb_read = rtw_debugfs_get_force_lowest_basic_rate,
-};
-
 static struct rtw_debugfs_priv rtw_debug_priv_dm_cap = {
 	.cb_write = rtw_debugfs_set_dm_cap,
 	.cb_read = rtw_debugfs_get_dm_cap,
@@ -1214,7 +1126,6 @@ void rtw_debugfs_init(struct rtw_dev *rtwdev)
 	rtw_debugfs_add_rw(read_reg);
 	rtw_debugfs_add_w(rf_write);
 	rtw_debugfs_add_rw(rf_read);
-	rtw_debugfs_add_rw(fix_rate);
 	rtw_debugfs_add_rw(dump_cam);
 	rtw_debugfs_add_rw(rsvd_page);
 	rtw_debugfs_add_r(phy_info);
@@ -1263,7 +1174,6 @@ void rtw_debugfs_init(struct rtw_dev *rtwdev)
 	rtw_debugfs_add_r(tx_pwr_tbl);
 	rtw_debugfs_add_rw(edcca_enable);
 	rtw_debugfs_add_rw(fw_crash);
-	rtw_debugfs_add_rw(force_lowest_basic_rate);
 	rtw_debugfs_add_rw(dm_cap);
 }
 
diff --git a/drivers/net/wireless/realtek/rtw88/debug.h b/drivers/net/wireless/realtek/rtw88/debug.h
index 61f8369fe2d6..47c57f395f52 100644
--- a/drivers/net/wireless/realtek/rtw88/debug.h
+++ b/drivers/net/wireless/realtek/rtw88/debug.h
@@ -22,7 +22,6 @@ enum rtw_debug_mask {
 	RTW_DBG_CFO		= 0x00002000,
 	RTW_DBG_PATH_DIV	= 0x00004000,
 	RTW_DBG_ADAPTIVITY	= 0x00008000,
-	RTW_DBG_HW_SCAN		= 0x00010000,
 
 	RTW_DBG_ALL		= 0xffffffff
 };
diff --git a/drivers/net/wireless/realtek/rtw88/fw.c b/drivers/net/wireless/realtek/rtw88/fw.c
index 2f7c036f9022..0c4f2a2f2d7f 100644
--- a/drivers/net/wireless/realtek/rtw88/fw.c
+++ b/drivers/net/wireless/realtek/rtw88/fw.c
@@ -28,12 +28,6 @@ static void rtw_fw_c2h_cmd_handle_ext(struct rtw_dev *rtwdev,
 	case C2H_CCX_RPT:
 		rtw_tx_report_handle(rtwdev, skb, C2H_CCX_RPT);
 		break;
-	case C2H_SCAN_STATUS_RPT:
-		rtw_hw_scan_status_report(rtwdev, skb);
-		break;
-	case C2H_CHAN_SWITCH:
-		rtw_hw_scan_chan_switch(rtwdev, skb);
-		break;
 	default:
 		break;
 	}
@@ -1783,385 +1777,3 @@ void rtw_fw_scan_notify(struct rtw_dev *rtwdev, bool start)
 
 	rtw_fw_send_h2c_command(rtwdev, h2c_pkt);
 }
-
-static void rtw_append_probe_req_ie(struct rtw_dev *rtwdev, struct sk_buff *skb,
-				    struct sk_buff_head *list,
-				    struct rtw_vif *rtwvif)
-{
-	struct ieee80211_scan_ies *ies = rtwvif->scan_ies;
-	struct rtw_chip_info *chip = rtwdev->chip;
-	struct sk_buff *new;
-	u8 idx;
-
-	for (idx = NL80211_BAND_2GHZ; idx < NUM_NL80211_BANDS; idx++) {
-		if (!(BIT(idx) & chip->band))
-			continue;
-		new = skb_copy(skb, GFP_KERNEL);
-		skb_put_data(new, ies->ies[idx], ies->len[idx]);
-		skb_put_data(new, ies->common_ies, ies->common_ie_len);
-		skb_queue_tail(list, new);
-	}
-}
-
-static int _rtw_hw_scan_update_probe_req(struct rtw_dev *rtwdev, u8 num_ssids,
-					 struct sk_buff_head *probe_req_list)
-{
-	struct rtw_chip_info *chip = rtwdev->chip;
-	struct sk_buff *skb, *tmp;
-	u8 page_offset = 1, *buf, page_size = chip->page_size;
-	u8 pages = page_offset + num_ssids * RTW_PROBE_PG_CNT;
-	u16 pg_addr = rtwdev->fifo.rsvd_h2c_info_addr, loc;
-	u16 buf_offset = page_size * page_offset;
-	u8 tx_desc_sz = chip->tx_pkt_desc_sz;
-	unsigned int pkt_len;
-	int ret;
-
-	buf = kzalloc(page_size * pages, GFP_KERNEL);
-	if (!buf)
-		return -ENOMEM;
-
-	buf_offset -= tx_desc_sz;
-	skb_queue_walk_safe(probe_req_list, skb, tmp) {
-		skb_unlink(skb, probe_req_list);
-		rtw_fill_rsvd_page_desc(rtwdev, skb, RSVD_PROBE_REQ);
-		if (skb->len > page_size * RTW_PROBE_PG_CNT) {
-			ret = -EINVAL;
-			goto out;
-		}
-
-		memcpy(buf + buf_offset, skb->data, skb->len);
-		pkt_len = skb->len - tx_desc_sz;
-		loc = pg_addr - rtwdev->fifo.rsvd_boundary + page_offset;
-		__rtw_fw_update_pkt(rtwdev, RTW_PACKET_PROBE_REQ, pkt_len, loc);
-
-		buf_offset += RTW_PROBE_PG_CNT * page_size;
-		page_offset += RTW_PROBE_PG_CNT;
-		kfree_skb(skb);
-	}
-
-	ret = rtw_fw_write_data_rsvd_page(rtwdev, pg_addr, buf, buf_offset);
-	if (ret) {
-		rtw_err(rtwdev, "Download probe request to firmware failed\n");
-		goto out;
-	}
-
-	rtwdev->scan_info.probe_pg_size = page_offset;
-out:
-	kfree(buf);
-
-	return ret;
-}
-
-static int rtw_hw_scan_update_probe_req(struct rtw_dev *rtwdev,
-					struct rtw_vif *rtwvif)
-{
-	struct cfg80211_scan_request *req = rtwvif->scan_req;
-	struct sk_buff_head list;
-	struct sk_buff *skb;
-	u8 num = req->n_ssids, i;
-
-	skb_queue_head_init(&list);
-	for (i = 0; i < num; i++) {
-		skb = ieee80211_probereq_get(rtwdev->hw, rtwvif->mac_addr,
-					     req->ssids[i].ssid,
-					     req->ssids[i].ssid_len,
-					     req->ie_len);
-		rtw_append_probe_req_ie(rtwdev, skb, &list, rtwvif);
-		kfree_skb(skb);
-	}
-
-	return _rtw_hw_scan_update_probe_req(rtwdev, num, &list);
-}
-
-static int rtw_add_chan_info(struct rtw_dev *rtwdev, struct rtw_chan_info *info,
-			     struct rtw_chan_list *list, u8 *buf)
-{
-	u8 *chan = &buf[list->size];
-	u8 info_size = RTW_CH_INFO_SIZE;
-
-	if (list->size > list->buf_size)
-		return -ENOMEM;
-
-	CH_INFO_SET_CH(chan, info->channel);
-	CH_INFO_SET_PRI_CH_IDX(chan, info->pri_ch_idx);
-	CH_INFO_SET_BW(chan, info->bw);
-	CH_INFO_SET_TIMEOUT(chan, info->timeout);
-	CH_INFO_SET_ACTION_ID(chan, info->action_id);
-	CH_INFO_SET_EXTRA_INFO(chan, info->extra_info);
-	if (info->extra_info) {
-		EXTRA_CH_INFO_SET_ID(chan, RTW_SCAN_EXTRA_ID_DFS);
-		EXTRA_CH_INFO_SET_INFO(chan, RTW_SCAN_EXTRA_ACTION_SCAN);
-		EXTRA_CH_INFO_SET_SIZE(chan, RTW_EX_CH_INFO_SIZE -
-				       RTW_EX_CH_INFO_HDR_SIZE);
-		EXTRA_CH_INFO_SET_DFS_EXT_TIME(chan, RTW_DFS_CHAN_TIME);
-		info_size += RTW_EX_CH_INFO_SIZE;
-	}
-	list->size += info_size;
-	list->ch_num++;
-
-	return 0;
-}
-
-static int rtw_add_chan_list(struct rtw_dev *rtwdev, struct rtw_vif *rtwvif,
-			     struct rtw_chan_list *list, u8 *buf)
-{
-	struct cfg80211_scan_request *req = rtwvif->scan_req;
-	struct rtw_fifo_conf *fifo = &rtwdev->fifo;
-	struct ieee80211_channel *channel;
-	int i, ret = 0;
-
-	for (i = 0; i < req->n_channels; i++) {
-		struct rtw_chan_info ch_info = {0};
-
-		channel = req->channels[i];
-		ch_info.channel = channel->hw_value;
-		ch_info.bw = RTW_SCAN_WIDTH;
-		ch_info.pri_ch_idx = RTW_PRI_CH_IDX;
-		ch_info.timeout = req->duration_mandatory ?
-				  req->duration : RTW_CHANNEL_TIME;
-
-		if (channel->flags & (IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IR)) {
-			ch_info.action_id = RTW_CHANNEL_RADAR;
-			ch_info.extra_info = 1;
-			/* Overwrite duration for passive scans if necessary */
-			ch_info.timeout = ch_info.timeout > RTW_PASS_CHAN_TIME ?
-					  ch_info.timeout : RTW_PASS_CHAN_TIME;
-		} else {
-			ch_info.action_id = RTW_CHANNEL_ACTIVE;
-		}
-
-		ret = rtw_add_chan_info(rtwdev, &ch_info, list, buf);
-		if (ret)
-			return ret;
-	}
-
-	if (list->size > fifo->rsvd_pg_num << TX_PAGE_SIZE_SHIFT) {
-		rtw_err(rtwdev, "List exceeds rsvd page total size\n");
-		return -EINVAL;
-	}
-
-	list->addr = fifo->rsvd_h2c_info_addr + rtwdev->scan_info.probe_pg_size;
-	ret = rtw_fw_write_data_rsvd_page(rtwdev, list->addr, buf, list->size);
-	if (ret)
-		rtw_err(rtwdev, "Download channel list failed\n");
-
-	return ret;
-}
-
-static void rtw_fw_set_scan_offload(struct rtw_dev *rtwdev,
-				    struct rtw_ch_switch_option *opt,
-				    struct rtw_vif *rtwvif,
-				    struct rtw_chan_list *list)
-{
-	struct rtw_hw_scan_info *scan_info = &rtwdev->scan_info;
-	struct cfg80211_scan_request *req = rtwvif->scan_req;
-	struct rtw_fifo_conf *fifo = &rtwdev->fifo;
-	/* reserve one dummy page at the beginning for tx descriptor */
-	u8 pkt_loc = fifo->rsvd_h2c_info_addr - fifo->rsvd_boundary + 1;
-	bool random_seq = req->flags & NL80211_SCAN_FLAG_RANDOM_SN;
-	u8 h2c_pkt[H2C_PKT_SIZE] = {0};
-
-	rtw_h2c_pkt_set_header(h2c_pkt, H2C_PKT_SCAN_OFFLOAD);
-	SET_PKT_H2C_TOTAL_LEN(h2c_pkt, H2C_PKT_CH_SWITCH_LEN);
-
-	SCAN_OFFLOAD_SET_START(h2c_pkt, opt->switch_en);
-	SCAN_OFFLOAD_SET_BACK_OP_EN(h2c_pkt, opt->back_op_en);
-	SCAN_OFFLOAD_SET_RANDOM_SEQ_EN(h2c_pkt, random_seq);
-	SCAN_OFFLOAD_SET_NO_CCK_EN(h2c_pkt, req->no_cck);
-	SCAN_OFFLOAD_SET_CH_NUM(h2c_pkt, list->ch_num);
-	SCAN_OFFLOAD_SET_CH_INFO_SIZE(h2c_pkt, list->size);
-	SCAN_OFFLOAD_SET_CH_INFO_LOC(h2c_pkt, list->addr - fifo->rsvd_boundary);
-	SCAN_OFFLOAD_SET_OP_CH(h2c_pkt, scan_info->op_chan);
-	SCAN_OFFLOAD_SET_OP_PRI_CH_IDX(h2c_pkt, scan_info->op_pri_ch_idx);
-	SCAN_OFFLOAD_SET_OP_BW(h2c_pkt, scan_info->op_bw);
-	SCAN_OFFLOAD_SET_OP_PORT_ID(h2c_pkt, rtwvif->port);
-	SCAN_OFFLOAD_SET_OP_DWELL_TIME(h2c_pkt, req->duration_mandatory ?
-				       req->duration : RTW_CHANNEL_TIME);
-	SCAN_OFFLOAD_SET_OP_GAP_TIME(h2c_pkt, RTW_OFF_CHAN_TIME);
-	SCAN_OFFLOAD_SET_SSID_NUM(h2c_pkt, req->n_ssids);
-	SCAN_OFFLOAD_SET_PKT_LOC(h2c_pkt, pkt_loc);
-
-	rtw_fw_send_h2c_packet(rtwdev, h2c_pkt);
-}
-
-void rtw_hw_scan_start(struct rtw_dev *rtwdev, struct ieee80211_vif *vif,
-		       struct ieee80211_scan_request *scan_req)
-{
-	struct rtw_vif *rtwvif = (struct rtw_vif *)vif->drv_priv;
-	struct cfg80211_scan_request *req = &scan_req->req;
-	u8 mac_addr[ETH_ALEN];
-
-	rtwdev->scan_info.scanning_vif = vif;
-	rtwvif->scan_ies = &scan_req->ies;
-	rtwvif->scan_req = req;
-
-	ieee80211_stop_queues(rtwdev->hw);
-	if (req->flags & NL80211_SCAN_FLAG_RANDOM_ADDR)
-		get_random_mask_addr(mac_addr, req->mac_addr,
-				     req->mac_addr_mask);
-	else
-		ether_addr_copy(mac_addr, vif->addr);
-
-	rtw_core_scan_start(rtwdev, rtwvif, mac_addr, true);
-
-	rtwdev->hal.rcr &= ~BIT_CBSSID_BCN;
-	rtw_write32(rtwdev, REG_RCR, rtwdev->hal.rcr);
-}
-
-void rtw_hw_scan_complete(struct rtw_dev *rtwdev, struct ieee80211_vif *vif,
-			  bool aborted)
-{
-	struct cfg80211_scan_info info = {
-		.aborted = aborted,
-	};
-	struct rtw_vif *rtwvif;
-
-	if (!vif)
-		return;
-
-	rtwdev->hal.rcr |= BIT_CBSSID_BCN;
-	rtw_write32(rtwdev, REG_RCR, rtwdev->hal.rcr);
-
-	rtw_core_scan_complete(rtwdev, vif);
-
-	ieee80211_wake_queues(rtwdev->hw);
-	ieee80211_scan_completed(rtwdev->hw, &info);
-
-	rtwvif = (struct rtw_vif *)vif->drv_priv;
-	rtwvif->scan_req = NULL;
-	rtwvif->scan_ies = NULL;
-	rtwdev->scan_info.scanning_vif = NULL;
-}
-
-static int rtw_hw_scan_prehandle(struct rtw_dev *rtwdev, struct rtw_vif *rtwvif,
-				 struct rtw_chan_list *list)
-{
-	struct cfg80211_scan_request *req = rtwvif->scan_req;
-	int size = req->n_channels * (RTW_CH_INFO_SIZE + RTW_EX_CH_INFO_SIZE);
-	u8 *buf;
-	int ret;
-
-	buf = kmalloc(size, GFP_KERNEL);
-	if (!buf)
-		return -ENOMEM;
-
-	ret = rtw_hw_scan_update_probe_req(rtwdev, rtwvif);
-	if (ret) {
-		rtw_err(rtwdev, "Update probe request failed\n");
-		goto out;
-	}
-
-	list->buf_size = size;
-	list->size = 0;
-	list->ch_num = 0;
-	ret = rtw_add_chan_list(rtwdev, rtwvif, list, buf);
-out:
-	kfree(buf);
-
-	return ret;
-}
-
-int rtw_hw_scan_offload(struct rtw_dev *rtwdev, struct ieee80211_vif *vif,
-			bool enable)
-{
-	struct rtw_vif *rtwvif = vif ? (struct rtw_vif *)vif->drv_priv : NULL;
-	struct rtw_ch_switch_option cs_option = {0};
-	struct rtw_chan_list chan_list = {0};
-	int ret = 0;
-
-	if (!rtwvif)
-		return -EINVAL;
-
-	cs_option.switch_en = enable;
-	cs_option.back_op_en = rtwvif->net_type == RTW_NET_MGD_LINKED;
-	if (enable) {
-		ret = rtw_hw_scan_prehandle(rtwdev, rtwvif, &chan_list);
-		if (ret)
-			goto out;
-	}
-	rtw_fw_set_scan_offload(rtwdev, &cs_option, rtwvif, &chan_list);
-out:
-	return ret;
-}
-
-void rtw_hw_scan_abort(struct rtw_dev *rtwdev, struct ieee80211_vif *vif)
-{
-	if (!rtw_fw_feature_check(&rtwdev->fw, FW_FEATURE_SCAN_OFFLOAD))
-		return;
-
-	rtw_hw_scan_offload(rtwdev, vif, false);
-	rtw_hw_scan_complete(rtwdev, vif, true);
-}
-
-void rtw_hw_scan_status_report(struct rtw_dev *rtwdev, struct sk_buff *skb)
-{
-	struct ieee80211_vif *vif = rtwdev->scan_info.scanning_vif;
-	struct rtw_c2h_cmd *c2h;
-	bool aborted;
-	u8 rc;
-
-	if (!test_bit(RTW_FLAG_SCANNING, rtwdev->flags))
-		return;
-
-	c2h = get_c2h_from_skb(skb);
-	rc = GET_SCAN_REPORT_RETURN_CODE(c2h->payload);
-	aborted = rc != RTW_SCAN_REPORT_SUCCESS;
-	rtw_hw_scan_complete(rtwdev, vif, aborted);
-
-	if (aborted)
-		rtw_info(rtwdev, "HW scan aborted with code: %d\n", rc);
-}
-
-void rtw_store_op_chan(struct rtw_dev *rtwdev)
-{
-	struct rtw_hw_scan_info *scan_info = &rtwdev->scan_info;
-	struct rtw_hal *hal = &rtwdev->hal;
-
-	scan_info->op_chan = hal->current_channel;
-	scan_info->op_bw = hal->current_band_width;
-	scan_info->op_pri_ch_idx = hal->current_primary_channel_index;
-}
-
-static bool rtw_is_op_chan(struct rtw_dev *rtwdev, u8 channel)
-{
-	struct rtw_hw_scan_info *scan_info = &rtwdev->scan_info;
-
-	return channel == scan_info->op_chan;
-}
-
-void rtw_hw_scan_chan_switch(struct rtw_dev *rtwdev, struct sk_buff *skb)
-{
-	struct rtw_hal *hal = &rtwdev->hal;
-	struct rtw_c2h_cmd *c2h;
-	enum rtw_scan_notify_id id;
-	u8 chan, status;
-
-	c2h = get_c2h_from_skb(skb);
-	chan = GET_CHAN_SWITCH_CENTRAL_CH(c2h->payload);
-	id = GET_CHAN_SWITCH_ID(c2h->payload);
-	status = GET_CHAN_SWITCH_STATUS(c2h->payload);
-
-	if (id == RTW_SCAN_NOTIFY_ID_POSTSWITCH) {
-		if (rtw_is_op_chan(rtwdev, chan))
-			ieee80211_wake_queues(rtwdev->hw);
-		hal->current_channel = chan;
-		hal->current_band_type = chan > 14 ? RTW_BAND_5G : RTW_BAND_2G;
-	} else if (id == RTW_SCAN_NOTIFY_ID_PRESWITCH) {
-		if (IS_CH_5G_BAND(chan)) {
-			rtw_coex_switchband_notify(rtwdev, COEX_SWITCH_TO_5G);
-		} else if (IS_CH_2G_BAND(chan)) {
-			u8 chan_type;
-
-			if (test_bit(RTW_FLAG_SCANNING, rtwdev->flags))
-				chan_type = COEX_SWITCH_TO_24G;
-			else
-				chan_type = COEX_SWITCH_TO_24G_NOFORSCAN;
-			rtw_coex_switchband_notify(rtwdev, chan_type);
-		}
-		if (rtw_is_op_chan(rtwdev, chan))
-			ieee80211_stop_queues(rtwdev->hw);
-	}
-
-	rtw_dbg(rtwdev, RTW_DBG_HW_SCAN,
-		"Chan switch: %x, id: %x, status: %x\n", chan, id, status);
-}
diff --git a/drivers/net/wireless/realtek/rtw88/fw.h b/drivers/net/wireless/realtek/rtw88/fw.h
index 654c3c2e5721..09c7afb99e63 100644
--- a/drivers/net/wireless/realtek/rtw88/fw.h
+++ b/drivers/net/wireless/realtek/rtw88/fw.h
@@ -32,17 +32,6 @@
 
 #define SCAN_NOTIFY_TIMEOUT  msecs_to_jiffies(10)
 
-#define RTW_CHANNEL_TIME		45
-#define RTW_OFF_CHAN_TIME		100
-#define RTW_PASS_CHAN_TIME		105
-#define RTW_DFS_CHAN_TIME		20
-#define RTW_CH_INFO_SIZE		4
-#define RTW_EX_CH_INFO_SIZE		3
-#define RTW_EX_CH_INFO_HDR_SIZE		2
-#define RTW_SCAN_WIDTH			0
-#define RTW_PRI_CH_IDX			1
-#define RTW_PROBE_PG_CNT		2
-
 enum rtw_c2h_cmd_id {
 	C2H_CCX_TX_RPT = 0x03,
 	C2H_BT_INFO = 0x09,
@@ -59,9 +48,7 @@ enum rtw_c2h_cmd_id {
 };
 
 enum rtw_c2h_cmd_id_ext {
-	C2H_SCAN_STATUS_RPT = 0x3,
 	C2H_CCX_RPT = 0x0f,
-	C2H_CHAN_SWITCH = 0x22,
 };
 
 struct rtw_c2h_cmd {
@@ -111,11 +98,9 @@ enum rtw_fw_feature {
 	FW_FEATURE_LPS_C2H = BIT(1),
 	FW_FEATURE_LCLK = BIT(2),
 	FW_FEATURE_PG = BIT(3),
-	FW_FEATURE_TX_WAKE = BIT(4),
 	FW_FEATURE_BCN_FILTER = BIT(5),
 	FW_FEATURE_NOTIFY_SCAN = BIT(6),
 	FW_FEATURE_ADAPTIVITY = BIT(7),
-	FW_FEATURE_SCAN_OFFLOAD = BIT(8),
 	FW_FEATURE_MAX = BIT(31),
 };
 
@@ -211,51 +196,6 @@ struct rtw_fw_wow_disconnect_para {
 	u8 retry_count;
 };
 
-enum rtw_channel_type {
-	RTW_CHANNEL_PASSIVE,
-	RTW_CHANNEL_ACTIVE,
-	RTW_CHANNEL_RADAR,
-};
-
-enum rtw_scan_extra_id {
-	RTW_SCAN_EXTRA_ID_DFS,
-};
-
-enum rtw_scan_extra_info {
-	RTW_SCAN_EXTRA_ACTION_SCAN,
-};
-
-enum rtw_scan_report_code {
-	RTW_SCAN_REPORT_SUCCESS = 0x00,
-	RTW_SCAN_REPORT_ERR_PHYDM = 0x01,
-	RTW_SCAN_REPORT_ERR_ID = 0x02,
-	RTW_SCAN_REPORT_ERR_TX = 0x03,
-	RTW_SCAN_REPORT_CANCELED = 0x10,
-	RTW_SCAN_REPORT_CANCELED_EXT = 0x11,
-	RTW_SCAN_REPORT_FW_DISABLED = 0xF0,
-};
-
-enum rtw_scan_notify_id {
-	RTW_SCAN_NOTIFY_ID_PRESWITCH = 0x00,
-	RTW_SCAN_NOTIFY_ID_POSTSWITCH = 0x01,
-	RTW_SCAN_NOTIFY_ID_PROBE_PRETX = 0x02,
-	RTW_SCAN_NOTIFY_ID_PROBE_ISSUETX = 0x03,
-	RTW_SCAN_NOTIFY_ID_NULL0_PRETX = 0x04,
-	RTW_SCAN_NOTIFY_ID_NULL0_ISSUETX = 0x05,
-	RTW_SCAN_NOTIFY_ID_NULL0_POSTTX = 0x06,
-	RTW_SCAN_NOTIFY_ID_NULL1_PRETX = 0x07,
-	RTW_SCAN_NOTIFY_ID_NULL1_ISSUETX = 0x08,
-	RTW_SCAN_NOTIFY_ID_NULL1_POSTTX = 0x09,
-	RTW_SCAN_NOTIFY_ID_DWELLEXT = 0x0A,
-};
-
-enum rtw_scan_notify_status {
-	RTW_SCAN_NOTIFY_STATUS_SUCCESS = 0x00,
-	RTW_SCAN_NOTIFY_STATUS_FAILURE = 0x01,
-	RTW_SCAN_NOTIFY_STATUS_RESOURCE = 0x02,
-	RTW_SCAN_NOTIFY_STATUS_TIMEOUT = 0x03,
-};
-
 struct rtw_ch_switch_option {
 	u8 periodic_option;
 	u32 tsf_high;
@@ -269,8 +209,6 @@ struct rtw_ch_switch_option {
 	u8 slow_period;
 	u8 slow_period_sel;
 	u8 nlo_en;
-	bool switch_en;
-	bool back_op_en;
 };
 
 struct rtw_fw_hdr {
@@ -327,11 +265,6 @@ struct rtw_fw_hdr_legacy {
 #define GET_CCX_REPORT_SEQNUM_V1(c2h_payload)	(c2h_payload[8] & 0xfc)
 #define GET_CCX_REPORT_STATUS_V1(c2h_payload)	(c2h_payload[9] & 0xc0)
 
-#define GET_SCAN_REPORT_RETURN_CODE(c2h_payload)	(c2h_payload[2] & 0xff)
-
-#define GET_CHAN_SWITCH_CENTRAL_CH(c2h_payload)	(c2h_payload[2])
-#define GET_CHAN_SWITCH_ID(c2h_payload)		(c2h_payload[3])
-#define GET_CHAN_SWITCH_STATUS(c2h_payload)	(c2h_payload[4])
 #define GET_RA_REPORT_RATE(c2h_payload)		(c2h_payload[0] & 0x7f)
 #define GET_RA_REPORT_SGI(c2h_payload)		((c2h_payload[0] & 0x80) >> 7)
 #define GET_RA_REPORT_BW(c2h_payload)		(c2h_payload[6])
@@ -351,7 +284,6 @@ struct rtw_fw_hdr_legacy {
 
 #define H2C_PKT_CH_SWITCH 0x02
 #define H2C_PKT_UPDATE_PKT 0x0C
-#define H2C_PKT_SCAN_OFFLOAD 0x19
 
 #define H2C_PKT_CH_SWITCH_LEN 0x20
 #define H2C_PKT_UPDATE_PKT_LEN 0x4
@@ -402,30 +334,6 @@ static inline void rtw_h2c_pkt_set_header(u8 *h2c_pkt, u8 sub_id)
 	le32p_replace_bits((__le32 *)(pkt) + 0x00, value, GENMASK(23, 16))
 #define CHSW_INFO_SET_ACTION_ID(pkt, value)				       \
 	le32p_replace_bits((__le32 *)(pkt) + 0x00, value, GENMASK(30, 24))
-#define CHSW_INFO_SET_EXTRA_INFO(pkt, value)				       \
-	le32p_replace_bits((__le32 *)(pkt) + 0x00, value, BIT(31))
-
-#define CH_INFO_SET_CH(pkt, value)					       \
-	u8p_replace_bits((u8 *)(pkt) + 0x00, value, GENMASK(7, 0))
-#define CH_INFO_SET_PRI_CH_IDX(pkt, value)				       \
-	u8p_replace_bits((u8 *)(pkt) + 0x01, value, GENMASK(3, 0))
-#define CH_INFO_SET_BW(pkt, value)					       \
-	u8p_replace_bits((u8 *)(pkt) + 0x01, value, GENMASK(7, 4))
-#define CH_INFO_SET_TIMEOUT(pkt, value)					       \
-	u8p_replace_bits((u8 *)(pkt) + 0x02, value, GENMASK(7, 0))
-#define CH_INFO_SET_ACTION_ID(pkt, value)				       \
-	u8p_replace_bits((u8 *)(pkt) + 0x03, value, GENMASK(6, 0))
-#define CH_INFO_SET_EXTRA_INFO(pkt, value)				       \
-	u8p_replace_bits((u8 *)(pkt) + 0x03, value, BIT(7))
-
-#define EXTRA_CH_INFO_SET_ID(pkt, value)				       \
-	u8p_replace_bits((u8 *)(pkt) + 0x04, value, GENMASK(6, 0))
-#define EXTRA_CH_INFO_SET_INFO(pkt, value)				       \
-	u8p_replace_bits((u8 *)(pkt) + 0x04, value, BIT(7))
-#define EXTRA_CH_INFO_SET_SIZE(pkt, value)				       \
-	u8p_replace_bits((u8 *)(pkt) + 0x05, value, GENMASK(7, 0))
-#define EXTRA_CH_INFO_SET_DFS_EXT_TIME(pkt, value)			       \
-	u8p_replace_bits((u8 *)(pkt) + 0x06, value, GENMASK(7, 0))
 
 #define UPDATE_PKT_SET_SIZE(h2c_pkt, value)				       \
 	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x02, value, GENMASK(15, 0))
@@ -442,18 +350,12 @@ static inline void rtw_h2c_pkt_set_header(u8 *h2c_pkt, u8 sub_id)
 	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x02, value, BIT(2))
 #define CH_SWITCH_SET_PERIODIC_OPT(h2c_pkt, value)			       \
 	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x02, value, GENMASK(4, 3))
-#define CH_SWITCH_SET_SCAN_MODE(h2c_pkt, value)				       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x02, value, BIT(5))
-#define CH_SWITCH_SET_BACK_OP_EN(h2c_pkt, value)			       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x02, value, BIT(6))
 #define CH_SWITCH_SET_INFO_LOC(h2c_pkt, value)				       \
 	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x02, value, GENMASK(15, 8))
 #define CH_SWITCH_SET_CH_NUM(h2c_pkt, value)				       \
 	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x02, value, GENMASK(23, 16))
 #define CH_SWITCH_SET_PRI_CH_IDX(h2c_pkt, value)			       \
 	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x02, value, GENMASK(27, 24))
-#define CH_SWITCH_SET_DEST_BW(h2c_pkt, value)				       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x02, value, GENMASK(31, 28))
 #define CH_SWITCH_SET_DEST_CH(h2c_pkt, value)				       \
 	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x03, value, GENMASK(7, 0))
 #define CH_SWITCH_SET_NORMAL_PERIOD(h2c_pkt, value)			       \
@@ -473,41 +375,6 @@ static inline void rtw_h2c_pkt_set_header(u8 *h2c_pkt, u8 sub_id)
 #define CH_SWITCH_SET_INFO_SIZE(h2c_pkt, value)				       \
 	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x06, value, GENMASK(15, 0))
 
-#define SCAN_OFFLOAD_SET_START(h2c_pkt, value)				       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x02, value, BIT(0))
-#define SCAN_OFFLOAD_SET_BACK_OP_EN(h2c_pkt, value)			       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x02, value, BIT(1))
-#define SCAN_OFFLOAD_SET_RANDOM_SEQ_EN(h2c_pkt, value)			       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x02, value, BIT(2))
-#define SCAN_OFFLOAD_SET_NO_CCK_EN(h2c_pkt, value)			       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x02, value, BIT(3))
-#define SCAN_OFFLOAD_SET_VERBOSE(h2c_pkt, value)			       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x02, value, BIT(4))
-#define SCAN_OFFLOAD_SET_CH_NUM(h2c_pkt, value)				       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x02, value, GENMASK(15, 8))
-#define SCAN_OFFLOAD_SET_CH_INFO_SIZE(h2c_pkt, value)			       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x02, value, GENMASK(31, 16))
-#define SCAN_OFFLOAD_SET_CH_INFO_LOC(h2c_pkt, value)			       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x03, value, GENMASK(7, 0))
-#define SCAN_OFFLOAD_SET_OP_CH(h2c_pkt, value)				       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x03, value, GENMASK(15, 8))
-#define SCAN_OFFLOAD_SET_OP_PRI_CH_IDX(h2c_pkt, value)			       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x03, value, GENMASK(19, 16))
-#define SCAN_OFFLOAD_SET_OP_BW(h2c_pkt, value)				       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x03, value, GENMASK(23, 20))
-#define SCAN_OFFLOAD_SET_OP_PORT_ID(h2c_pkt, value)			       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x03, value, GENMASK(26, 24))
-#define SCAN_OFFLOAD_SET_OP_DWELL_TIME(h2c_pkt, value)			       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x04, value, GENMASK(15, 0))
-#define SCAN_OFFLOAD_SET_OP_GAP_TIME(h2c_pkt, value)			       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x04, value, GENMASK(31, 16))
-#define SCAN_OFFLOAD_SET_MODE(h2c_pkt, value)				       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x05, value, GENMASK(3, 0))
-#define SCAN_OFFLOAD_SET_SSID_NUM(h2c_pkt, value)			       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x05, value, GENMASK(7, 4))
-#define SCAN_OFFLOAD_SET_PKT_LOC(h2c_pkt, value)			       \
-	le32p_replace_bits((__le32 *)(h2c_pkt) + 0x05, value, GENMASK(15, 8))
-
 /* Command H2C */
 #define H2C_CMD_RSVD_PAGE		0x0
 #define H2C_CMD_MEDIA_STATUS_RPT	0x01
@@ -819,14 +686,4 @@ int rtw_fw_dump_fifo(struct rtw_dev *rtwdev, u8 fifo_sel, u32 addr, u32 size,
 		     u32 *buffer);
 void rtw_fw_scan_notify(struct rtw_dev *rtwdev, bool start);
 void rtw_fw_adaptivity(struct rtw_dev *rtwdev);
-void rtw_store_op_chan(struct rtw_dev *rtwdev);
-void rtw_hw_scan_start(struct rtw_dev *rtwdev, struct ieee80211_vif *vif,
-		       struct ieee80211_scan_request *req);
-void rtw_hw_scan_complete(struct rtw_dev *rtwdev, struct ieee80211_vif *vif,
-			  bool aborted);
-int rtw_hw_scan_offload(struct rtw_dev *rtwdev, struct ieee80211_vif *vif,
-			bool enable);
-void rtw_hw_scan_status_report(struct rtw_dev *rtwdev, struct sk_buff *skb);
-void rtw_hw_scan_chan_switch(struct rtw_dev *rtwdev, struct sk_buff *skb);
-void rtw_hw_scan_abort(struct rtw_dev *rtwdev, struct ieee80211_vif *vif);
 #endif
diff --git a/drivers/net/wireless/realtek/rtw88/mac80211.c b/drivers/net/wireless/realtek/rtw88/mac80211.c
index ae7d97de5fdf..6f5629852416 100644
--- a/drivers/net/wireless/realtek/rtw88/mac80211.c
+++ b/drivers/net/wireless/realtek/rtw88/mac80211.c
@@ -13,7 +13,6 @@
 #include "bf.h"
 #include "debug.h"
 #include "wow.h"
-#include "sar.h"
 
 static void rtw_ops_tx(struct ieee80211_hw *hw,
 		       struct ieee80211_tx_control *control,
@@ -162,7 +161,6 @@ static int rtw_ops_add_interface(struct ieee80211_hw *hw,
 	rtwvif->stats.rx_unicast = 0;
 	rtwvif->stats.tx_cnt = 0;
 	rtwvif->stats.rx_cnt = 0;
-	rtwvif->scan_req = NULL;
 	memset(&rtwvif->bfee, 0, sizeof(struct rtw_bfee));
 	rtwvif->conf = &rtw_vif_port[port];
 	rtw_txq_init(rtwdev, vif->txq);
@@ -374,15 +372,9 @@ static void rtw_ops_bss_info_changed(struct ieee80211_hw *hw,
 			rtw_coex_media_status_notify(rtwdev, conf->assoc);
 			if (rtw_bf_support)
 				rtw_bf_assoc(rtwdev, vif, conf);
-			rtw_store_op_chan(rtwdev);
 		} else {
 			rtw_leave_lps(rtwdev);
 			rtw_bf_disassoc(rtwdev, vif, conf);
-			/* Abort ongoing scan if cancel_scan isn't issued
-			 * when disconnected by peer
-			 */
-			if (test_bit(RTW_FLAG_SCANNING, rtwdev->flags))
-				rtw_hw_scan_abort(rtwdev, vif);
 		}
 
 		config |= PORT_SET_NET_TYPE;
@@ -602,9 +594,22 @@ static void rtw_ops_sw_scan_start(struct ieee80211_hw *hw,
 {
 	struct rtw_dev *rtwdev = hw->priv;
 	struct rtw_vif *rtwvif = (struct rtw_vif *)vif->drv_priv;
+	u32 config = 0;
 
 	mutex_lock(&rtwdev->mutex);
-	rtw_core_scan_start(rtwdev, rtwvif, mac_addr, false);
+
+	rtw_leave_lps(rtwdev);
+
+	ether_addr_copy(rtwvif->mac_addr, mac_addr);
+	config |= PORT_SET_MAC_ADDR;
+	rtw_vif_port_config(rtwdev, rtwvif, config);
+
+	rtw_coex_scan_notify(rtwdev, COEX_SCAN_START);
+	rtw_core_fw_scan_notify(rtwdev, true);
+
+	set_bit(RTW_FLAG_DIG_DISABLE, rtwdev->flags);
+	set_bit(RTW_FLAG_SCANNING, rtwdev->flags);
+
 	mutex_unlock(&rtwdev->mutex);
 }
 
@@ -612,9 +617,22 @@ static void rtw_ops_sw_scan_complete(struct ieee80211_hw *hw,
 				     struct ieee80211_vif *vif)
 {
 	struct rtw_dev *rtwdev = hw->priv;
+	struct rtw_vif *rtwvif = (struct rtw_vif *)vif->drv_priv;
+	u32 config = 0;
 
 	mutex_lock(&rtwdev->mutex);
-	rtw_core_scan_complete(rtwdev, vif);
+
+	clear_bit(RTW_FLAG_SCANNING, rtwdev->flags);
+	clear_bit(RTW_FLAG_DIG_DISABLE, rtwdev->flags);
+
+	rtw_core_fw_scan_notify(rtwdev, false);
+
+	ether_addr_copy(rtwvif->mac_addr, vif->addr);
+	config |= PORT_SET_MAC_ADDR;
+	rtw_vif_port_config(rtwdev, rtwvif, config);
+
+	rtw_coex_scan_notify(rtwdev, COEX_SCAN_FINISH);
+
 	mutex_unlock(&rtwdev->mutex);
 }
 
@@ -797,56 +815,6 @@ static void rtw_reconfig_complete(struct ieee80211_hw *hw,
 	mutex_unlock(&rtwdev->mutex);
 }
 
-static int rtw_ops_hw_scan(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
-			   struct ieee80211_scan_request *req)
-{
-	struct rtw_dev *rtwdev = hw->priv;
-	int ret;
-
-	if (!rtw_fw_feature_check(&rtwdev->fw, FW_FEATURE_SCAN_OFFLOAD))
-		return 1;
-
-	if (test_bit(RTW_FLAG_SCANNING, rtwdev->flags))
-		return -EBUSY;
-
-	mutex_lock(&rtwdev->mutex);
-	rtw_hw_scan_start(rtwdev, vif, req);
-	ret = rtw_hw_scan_offload(rtwdev, vif, true);
-	if (ret) {
-		rtw_hw_scan_abort(rtwdev, vif);
-		rtw_err(rtwdev, "HW scan failed with status: %d\n", ret);
-	}
-	mutex_unlock(&rtwdev->mutex);
-
-	return ret;
-}
-
-static void rtw_ops_cancel_hw_scan(struct ieee80211_hw *hw,
-				   struct ieee80211_vif *vif)
-{
-	struct rtw_dev *rtwdev = hw->priv;
-
-	if (!rtw_fw_feature_check(&rtwdev->fw, FW_FEATURE_SCAN_OFFLOAD))
-		return;
-
-	if (!test_bit(RTW_FLAG_SCANNING, rtwdev->flags))
-		return;
-
-	mutex_lock(&rtwdev->mutex);
-	rtw_hw_scan_abort(rtwdev, vif);
-	mutex_unlock(&rtwdev->mutex);
-}
-
-static int rtw_ops_set_sar_specs(struct ieee80211_hw *hw,
-				 const struct cfg80211_sar_specs *sar)
-{
-	struct rtw_dev *rtwdev = hw->priv;
-
-	rtw_set_sar_specs(rtwdev, sar);
-
-	return 0;
-}
-
 const struct ieee80211_ops rtw_ops = {
 	.tx			= rtw_ops_tx,
 	.wake_tx_queue		= rtw_ops_wake_tx_queue,
@@ -874,9 +842,6 @@ const struct ieee80211_ops rtw_ops = {
 	.set_antenna		= rtw_ops_set_antenna,
 	.get_antenna		= rtw_ops_get_antenna,
 	.reconfig_complete	= rtw_reconfig_complete,
-	.hw_scan		= rtw_ops_hw_scan,
-	.cancel_hw_scan		= rtw_ops_cancel_hw_scan,
-	.set_sar_specs          = rtw_ops_set_sar_specs,
 #ifdef CONFIG_PM
 	.suspend		= rtw_ops_suspend,
 	.resume			= rtw_ops_resume,
diff --git a/drivers/net/wireless/realtek/rtw88/main.c b/drivers/net/wireless/realtek/rtw88/main.c
index 38252113c4a8..a0d4d6e31fb4 100644
--- a/drivers/net/wireless/realtek/rtw88/main.c
+++ b/drivers/net/wireless/realtek/rtw88/main.c
@@ -17,7 +17,6 @@
 #include "tx.h"
 #include "debug.h"
 #include "bf.h"
-#include "sar.h"
 
 bool rtw_disable_lps_deep_mode;
 EXPORT_SYMBOL(rtw_disable_lps_deep_mode);
@@ -638,19 +637,6 @@ static void rtw_txq_ba_work(struct work_struct *work)
 	rtw_iterate_stas_atomic(rtwdev, rtw_txq_ba_iter, &data);
 }
 
-void rtw_set_rx_freq_band(struct rtw_rx_pkt_stat *pkt_stat, u8 channel)
-{
-	if (IS_CH_2G_BAND(channel))
-		pkt_stat->band = NL80211_BAND_2GHZ;
-	else if (IS_CH_5G_BAND(channel))
-		pkt_stat->band = NL80211_BAND_5GHZ;
-	else
-		return;
-
-	pkt_stat->freq = ieee80211_channel_to_frequency(channel, pkt_stat->band);
-}
-EXPORT_SYMBOL(rtw_set_rx_freq_band);
-
 void rtw_get_channel_params(struct cfg80211_chan_def *chandef,
 			    struct rtw_channel_params *chan_params)
 {
@@ -749,28 +735,8 @@ void rtw_set_channel(struct rtw_dev *rtwdev)
 
 	hal->current_band_width = bandwidth;
 	hal->current_channel = center_chan;
-	hal->current_primary_channel_index = primary_chan_idx;
 	hal->current_band_type = center_chan > 14 ? RTW_BAND_5G : RTW_BAND_2G;
 
-	switch (center_chan) {
-	case 1 ... 14:
-		hal->sar_band = RTW_SAR_BAND_0;
-		break;
-	case 36 ... 64:
-		hal->sar_band = RTW_SAR_BAND_1;
-		break;
-	case 100 ... 144:
-		hal->sar_band = RTW_SAR_BAND_3;
-		break;
-	case 149 ... 177:
-		hal->sar_band = RTW_SAR_BAND_4;
-		break;
-	default:
-		WARN(1, "unknown ch(%u) to SAR band\n", center_chan);
-		hal->sar_band = RTW_SAR_BAND_0;
-		break;
-	}
-
 	for (i = RTW_CHANNEL_WIDTH_20; i <= RTW_MAX_CHANNEL_WIDTH; i++)
 		hal->cch_by_bw[i] = ch_param.cch_by_bw[i];
 
@@ -1312,50 +1278,6 @@ void rtw_core_fw_scan_notify(struct rtw_dev *rtwdev, bool start)
 	}
 }
 
-void rtw_core_scan_start(struct rtw_dev *rtwdev, struct rtw_vif *rtwvif,
-			 const u8 *mac_addr, bool hw_scan)
-{
-	u32 config = 0;
-	int ret = 0;
-
-	rtw_leave_lps(rtwdev);
-
-	if (hw_scan && rtwvif->net_type == RTW_NET_NO_LINK) {
-		ret = rtw_leave_ips(rtwdev);
-		if (ret) {
-			rtw_err(rtwdev, "failed to leave idle state\n");
-			return;
-		}
-	}
-
-	ether_addr_copy(rtwvif->mac_addr, mac_addr);
-	config |= PORT_SET_MAC_ADDR;
-	rtw_vif_port_config(rtwdev, rtwvif, config);
-
-	rtw_coex_scan_notify(rtwdev, COEX_SCAN_START);
-	rtw_core_fw_scan_notify(rtwdev, true);
-
-	set_bit(RTW_FLAG_DIG_DISABLE, rtwdev->flags);
-	set_bit(RTW_FLAG_SCANNING, rtwdev->flags);
-}
-
-void rtw_core_scan_complete(struct rtw_dev *rtwdev, struct ieee80211_vif *vif)
-{
-	struct rtw_vif *rtwvif = (struct rtw_vif *)vif->drv_priv;
-	u32 config = 0;
-
-	clear_bit(RTW_FLAG_SCANNING, rtwdev->flags);
-	clear_bit(RTW_FLAG_DIG_DISABLE, rtwdev->flags);
-
-	rtw_core_fw_scan_notify(rtwdev, false);
-
-	ether_addr_copy(rtwvif->mac_addr, vif->addr);
-	config |= PORT_SET_MAC_ADDR;
-	rtw_vif_port_config(rtwdev, rtwvif, config);
-
-	rtw_coex_scan_notify(rtwdev, COEX_SCAN_FINISH);
-}
-
 int rtw_core_start(struct rtw_dev *rtwdev)
 {
 	int ret;
@@ -1940,14 +1862,13 @@ int rtw_core_init(struct rtw_dev *rtwdev)
 
 	rtwdev->sec.total_cam_num = 32;
 	rtwdev->hal.current_channel = 1;
-	rtwdev->dm_info.fix_rate = U8_MAX;
 	set_bit(RTW_BC_MC_MACID, rtwdev->mac_id_map);
 
 	rtw_stats_init(rtwdev);
 
 	/* default rx filter setting */
 	rtwdev->hal.rcr = BIT_APP_FCS | BIT_APP_MIC | BIT_APP_ICV |
-			  BIT_PKTCTL_DLEN | BIT_HTC_LOC_CTRL | BIT_APP_PHYSTS |
+			  BIT_HTC_LOC_CTRL | BIT_APP_PHYSTS |
 			  BIT_AB | BIT_AM | BIT_APM;
 
 	ret = rtw_load_firmware(rtwdev, RTW_NORMAL_FW);
@@ -2030,7 +1951,6 @@ int rtw_register_hw(struct rtw_dev *rtwdev, struct ieee80211_hw *hw)
 	ieee80211_hw_set(hw, SUPPORTS_AMSDU_IN_AMPDU);
 	ieee80211_hw_set(hw, HAS_RATE_CONTROL);
 	ieee80211_hw_set(hw, TX_AMSDU);
-	ieee80211_hw_set(hw, SINGLE_SCAN_ON_ALL_BANDS);
 
 	hw->wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION) |
 				     BIT(NL80211_IFTYPE_AP) |
@@ -2043,12 +1963,8 @@ int rtw_register_hw(struct rtw_dev *rtwdev, struct ieee80211_hw *hw)
 			    WIPHY_FLAG_TDLS_EXTERNAL_SETUP;
 
 	hw->wiphy->features |= NL80211_FEATURE_SCAN_RANDOM_MAC_ADDR;
-	hw->wiphy->max_scan_ssids = RTW_SCAN_MAX_SSIDS;
-	hw->wiphy->max_scan_ie_len = RTW_SCAN_MAX_IE_LEN;
 
 	wiphy_ext_feature_set(hw->wiphy, NL80211_EXT_FEATURE_CAN_REPLACE_PTK0);
-	wiphy_ext_feature_set(hw->wiphy, NL80211_EXT_FEATURE_SCAN_RANDOM_SN);
-	wiphy_ext_feature_set(hw->wiphy, NL80211_EXT_FEATURE_SET_SCAN_DWELL);
 
 #ifdef CONFIG_PM
 	hw->wiphy->wowlan = rtwdev->chip->wowlan_stub;
@@ -2057,8 +1973,6 @@ int rtw_register_hw(struct rtw_dev *rtwdev, struct ieee80211_hw *hw)
 	rtw_set_supported_band(hw, rtwdev->chip);
 	SET_IEEE80211_PERM_ADDR(hw, rtwdev->efuse.addr);
 
-	hw->wiphy->sar_capa = &rtw_sar_capa;
-
 	ret = rtw_regd_init(rtwdev);
 	if (ret) {
 		rtw_err(rtwdev, "failed to init regd\n");
diff --git a/drivers/net/wireless/realtek/rtw88/main.h b/drivers/net/wireless/realtek/rtw88/main.h
index dc1cd9bd4b8a..bbdd535b64e7 100644
--- a/drivers/net/wireless/realtek/rtw88/main.h
+++ b/drivers/net/wireless/realtek/rtw88/main.h
@@ -22,9 +22,6 @@
 #define RTW_MAX_SEC_CAM_NUM		32
 #define MAX_PG_CAM_BACKUP_NUM		8
 
-#define RTW_SCAN_MAX_SSIDS		4
-#define RTW_SCAN_MAX_IE_LEN		128
-
 #define RTW_MAX_PATTERN_NUM		12
 #define RTW_MAX_PATTERN_MASK_SIZE	16
 #define RTW_MAX_PATTERN_SIZE		128
@@ -84,9 +81,11 @@ struct rtw_hci {
 	 IS_CH_5G_BAND_3(channel) || IS_CH_5G_BAND_4(channel))
 
 enum rtw_supported_band {
-	RTW_BAND_2G = BIT(NL80211_BAND_2GHZ),
-	RTW_BAND_5G = BIT(NL80211_BAND_5GHZ),
-	RTW_BAND_60G = BIT(NL80211_BAND_60GHZ),
+	RTW_BAND_2G = 1 << 0,
+	RTW_BAND_5G = 1 << 1,
+	RTW_BAND_60G = 1 << 2,
+
+	RTW_BAND_MAX,
 };
 
 /* now, support upto 80M bw */
@@ -365,7 +364,6 @@ enum rtw_flags {
 	RTW_FLAG_WOWLAN,
 	RTW_FLAG_RESTARTING,
 	RTW_FLAG_RESTART_TRIGGERING,
-	RTW_FLAG_FORCE_LOWEST_RATE,
 
 	NUM_OF_RTW_FLAGS,
 };
@@ -631,8 +629,6 @@ struct rtw_rx_pkt_stat {
 	s8 rx_snr[RTW_RF_PATH_MAX];
 	u8 rx_evm[RTW_RF_PATH_MAX];
 	s8 cfo_tail[RTW_RF_PATH_MAX];
-	u16 freq;
-	u8 band;
 
 	struct rtw_sta_info *si;
 	struct ieee80211_vif *vif;
@@ -803,8 +799,6 @@ struct rtw_vif {
 	struct list_head rsvd_page_list;
 	struct ieee80211_tx_queue_params tx_params[IEEE80211_NUM_ACS];
 	const struct rtw_vif_port *conf;
-	struct cfg80211_scan_request *scan_req;
-	struct ieee80211_scan_ies *scan_ies;
 
 	struct rtw_traffic_stats stats;
 
@@ -1636,7 +1630,6 @@ struct rtw_dm_info {
 	u8 cck_gi_u_bnd;
 	u8 cck_gi_l_bnd;
 
-	u8 fix_rate;
 	u8 tx_rate;
 	u32 rrsr_val_init;
 	u32 rrsr_mask_min;
@@ -1813,33 +1806,6 @@ struct rtw_fw_state {
 	u32 feature;
 };
 
-enum rtw_sar_sources {
-	RTW_SAR_SOURCE_NONE,
-	RTW_SAR_SOURCE_COMMON,
-};
-
-enum rtw_sar_bands {
-	RTW_SAR_BAND_0,
-	RTW_SAR_BAND_1,
-	/* RTW_SAR_BAND_2, not used now */
-	RTW_SAR_BAND_3,
-	RTW_SAR_BAND_4,
-
-	RTW_SAR_BAND_NR,
-};
-
-/* the union is reserved for other knids of SAR sources
- * which might not re-use same format with array common.
- */
-union rtw_sar_cfg {
-	s8 common[RTW_SAR_BAND_NR];
-};
-
-struct rtw_sar {
-	enum rtw_sar_sources src;
-	union rtw_sar_cfg cfg[RTW_RF_PATH_MAX][RTW_RATE_SECTION_MAX];
-};
-
 struct rtw_hal {
 	u32 rcr;
 
@@ -1851,7 +1817,6 @@ struct rtw_hal {
 
 	u8 ps_mode;
 	u8 current_channel;
-	u8 current_primary_channel_index;
 	u8 current_band_width;
 	u8 current_band_type;
 
@@ -1888,9 +1853,6 @@ struct rtw_hal {
 			  [RTW_MAX_CHANNEL_NUM_5G];
 	s8 tx_pwr_tbl[RTW_RF_PATH_MAX]
 		     [DESC_RATE_MAX];
-
-	enum rtw_sar_bands sar_band;
-	struct rtw_sar sar;
 };
 
 struct rtw_path_div {
@@ -1901,37 +1863,12 @@ struct rtw_path_div {
 	u16 path_b_cnt;
 };
 
-struct rtw_chan_info {
-	int pri_ch_idx;
-	int action_id;
-	int bw;
-	u8 extra_info;
-	u8 channel;
-	u16 timeout;
-};
-
-struct rtw_chan_list {
-	u32 buf_size;
-	u32 ch_num;
-	u32 size;
-	u16 addr;
-};
-
-struct rtw_hw_scan_info {
-	struct ieee80211_vif *scanning_vif;
-	u8 probe_pg_size;
-	u8 op_pri_ch_idx;
-	u8 op_chan;
-	u8 op_bw;
-};
-
 struct rtw_dev {
 	struct ieee80211_hw *hw;
 	struct device *dev;
 
 	struct rtw_hci hci;
 
-	struct rtw_hw_scan_info scan_info;
 	struct rtw_chip_info *chip;
 	struct rtw_hal hal;
 	struct rtw_fifo_conf fifo;
@@ -2084,7 +2021,6 @@ static inline int rtw_chip_dump_fw_crash(struct rtw_dev *rtwdev)
 	return 0;
 }
 
-void rtw_set_rx_freq_band(struct rtw_rx_pkt_stat *pkt_stat, u8 channel);
 void rtw_get_channel_params(struct cfg80211_chan_def *chandef,
 			    struct rtw_channel_params *ch_param);
 bool check_hw_ready(struct rtw_dev *rtwdev, u32 addr, u32 mask, u32 target);
@@ -2099,9 +2035,6 @@ void rtw_vif_port_config(struct rtw_dev *rtwdev, struct rtw_vif *rtwvif,
 			 u32 config);
 void rtw_tx_report_purge_timer(struct timer_list *t);
 void rtw_update_sta_info(struct rtw_dev *rtwdev, struct rtw_sta_info *si);
-void rtw_core_scan_start(struct rtw_dev *rtwdev, struct rtw_vif *rtwvif,
-			 const u8 *mac_addr, bool hw_scan);
-void rtw_core_scan_complete(struct rtw_dev *rtwdev, struct ieee80211_vif *vif);
 int rtw_core_start(struct rtw_dev *rtwdev);
 void rtw_core_stop(struct rtw_dev *rtwdev);
 int rtw_chip_info_setup(struct rtw_dev *rtwdev);
diff --git a/drivers/net/wireless/realtek/rtw88/pci.c b/drivers/net/wireless/realtek/rtw88/pci.c
index a0991d3f15c0..a7a6ebfaa203 100644
--- a/drivers/net/wireless/realtek/rtw88/pci.c
+++ b/drivers/net/wireless/realtek/rtw88/pci.c
@@ -2,6 +2,7 @@
 /* Copyright(c) 2018-2019  Realtek Corporation
  */
 
+#include <linux/dmi.h>
 #include <linux/module.h>
 #include <linux/pci.h>
 #include "main.h"
@@ -611,9 +612,6 @@ static void rtw_pci_deep_ps_enter(struct rtw_dev *rtwdev)
 	bool tx_empty = true;
 	u8 queue;
 
-	if (rtw_fw_feature_check(&rtwdev->fw, FW_FEATURE_TX_WAKE))
-		goto enter_deep_ps;
-
 	lockdep_assert_held(&rtwpci->irq_lock);
 
 	/* Deep PS state is not allowed to TX-DMA */
@@ -639,7 +637,7 @@ static void rtw_pci_deep_ps_enter(struct rtw_dev *rtwdev)
 			"TX path not empty, cannot enter deep power save state\n");
 		return;
 	}
-enter_deep_ps:
+
 	set_bit(RTW_FLAG_LEISURE_PS_DEEP, rtwdev->flags);
 	rtw_power_mode_change(rtwdev, true);
 }
@@ -810,8 +808,7 @@ static void rtw_pci_tx_kick_off_queue(struct rtw_dev *rtwdev, u8 queue)
 	bd_idx = rtw_pci_tx_queue_idx_addr[queue];
 
 	spin_lock_bh(&rtwpci->irq_lock);
-	if (!rtw_fw_feature_check(&rtwdev->fw, FW_FEATURE_TX_WAKE))
-		rtw_pci_deep_ps_leave(rtwdev);
+	rtw_pci_deep_ps_leave(rtwdev);
 	rtw_write16(rtwdev, bd_idx, ring->r.wp & TRX_BD_IDX_MASK);
 	spin_unlock_bh(&rtwpci->irq_lock);
 }
@@ -1412,11 +1409,7 @@ static void rtw_pci_link_ps(struct rtw_dev *rtwdev, bool enter)
 	 * throughput. This is probably because the ASPM behavior slightly
 	 * varies from different SOC.
 	 */
-	if (!(rtwpci->link_ctrl & PCI_EXP_LNKCTL_ASPM_L1))
-		return;
-
-	if ((enter && atomic_dec_if_positive(&rtwpci->link_usage) == 0) ||
-	    (!enter && atomic_inc_return(&rtwpci->link_usage) == 1))
+	if (rtwpci->link_ctrl & PCI_EXP_LNKCTL_ASPM_L1)
 		rtw_pci_aspm_set(rtwdev, enter);
 }
 
@@ -1665,9 +1658,6 @@ static int rtw_pci_napi_poll(struct napi_struct *napi, int budget)
 					      priv);
 	int work_done = 0;
 
-	if (rtwpci->rx_no_aspm)
-		rtw_pci_link_ps(rtwdev, false);
-
 	while (work_done < budget) {
 		u32 work_done_once;
 
@@ -1691,8 +1681,6 @@ static int rtw_pci_napi_poll(struct napi_struct *napi, int budget)
 		if (rtw_pci_get_hw_rx_ring_nr(rtwdev, rtwpci))
 			napi_schedule(napi);
 	}
-	if (rtwpci->rx_no_aspm)
-		rtw_pci_link_ps(rtwdev, true);
 
 	return work_done;
 }
@@ -1714,13 +1702,50 @@ static void rtw_pci_napi_deinit(struct rtw_dev *rtwdev)
 	netif_napi_del(&rtwpci->napi);
 }
 
+enum rtw88_quirk_dis_pci_caps {
+	QUIRK_DIS_PCI_CAP_MSI,
+	QUIRK_DIS_PCI_CAP_ASPM,
+};
+
+static int disable_pci_caps(const struct dmi_system_id *dmi)
+{
+	uintptr_t dis_caps = (uintptr_t)dmi->driver_data;
+
+	if (dis_caps & BIT(QUIRK_DIS_PCI_CAP_MSI))
+		rtw_disable_msi = true;
+	if (dis_caps & BIT(QUIRK_DIS_PCI_CAP_ASPM))
+		rtw_pci_disable_aspm = true;
+
+	return 1;
+}
+
+static const struct dmi_system_id rtw88_pci_quirks[] = {
+	{
+		.callback = disable_pci_caps,
+		.ident = "Protempo Ltd L116HTN6SPW",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "Protempo Ltd"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "L116HTN6SPW"),
+		},
+		.driver_data = (void *)BIT(QUIRK_DIS_PCI_CAP_ASPM),
+	},
+	{
+		.callback = disable_pci_caps,
+		.ident = "HP HP Pavilion Laptop 14-ce0xxx",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "HP"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "HP Pavilion Laptop 14-ce0xxx"),
+		},
+		.driver_data = (void *)BIT(QUIRK_DIS_PCI_CAP_ASPM),
+	},
+	{}
+};
+
 int rtw_pci_probe(struct pci_dev *pdev,
 		  const struct pci_device_id *id)
 {
-	struct pci_dev *bridge = pci_upstream_bridge(pdev);
 	struct ieee80211_hw *hw;
 	struct rtw_dev *rtwdev;
-	struct rtw_pci *rtwpci;
 	int drv_data_size;
 	int ret;
 
@@ -1738,9 +1763,6 @@ int rtw_pci_probe(struct pci_dev *pdev,
 	rtwdev->hci.ops = &rtw_pci_ops;
 	rtwdev->hci.type = RTW_HCI_TYPE_PCIE;
 
-	rtwpci = (struct rtw_pci *)rtwdev->priv;
-	atomic_set(&rtwpci->link_usage, 1);
-
 	ret = rtw_core_init(rtwdev);
 	if (ret)
 		goto err_release_hw;
@@ -1769,10 +1791,7 @@ int rtw_pci_probe(struct pci_dev *pdev,
 		goto err_destroy_pci;
 	}
 
-	/* Disable PCIe ASPM L1 while doing NAPI poll for 8821CE */
-	if (pdev->device == 0xc821 && bridge->vendor == PCI_VENDOR_ID_INTEL)
-		rtwpci->rx_no_aspm = true;
-
+	dmi_check_system(rtw88_pci_quirks);
 	rtw_pci_phy_cfg(rtwdev);
 
 	ret = rtw_register_hw(rtwdev, hw);
diff --git a/drivers/net/wireless/realtek/rtw88/pci.h b/drivers/net/wireless/realtek/rtw88/pci.h
index 0c37efd8c66f..66f78eb7757c 100644
--- a/drivers/net/wireless/realtek/rtw88/pci.h
+++ b/drivers/net/wireless/realtek/rtw88/pci.h
@@ -223,8 +223,6 @@ struct rtw_pci {
 	struct rtw_pci_tx_ring tx_rings[RTK_MAX_TX_QUEUE_NUM];
 	struct rtw_pci_rx_ring rx_rings[RTK_MAX_RX_QUEUE_NUM];
 	u16 link_ctrl;
-	atomic_t link_usage;
-	bool rx_no_aspm;
 	DECLARE_BITMAP(flags, NUM_OF_RTW_PCI_FLAGS);
 
 	void __iomem *mmap;
diff --git a/drivers/net/wireless/realtek/rtw88/phy.c b/drivers/net/wireless/realtek/rtw88/phy.c
index e505d17f107e..bfddfcbe63f5 100644
--- a/drivers/net/wireless/realtek/rtw88/phy.c
+++ b/drivers/net/wireless/realtek/rtw88/phy.c
@@ -10,7 +10,6 @@
 #include "phy.h"
 #include "debug.h"
 #include "regd.h"
-#include "sar.h"
 
 struct phy_cfg_pair {
 	u32 addr;
@@ -2005,25 +2004,6 @@ static u8 rtw_phy_get_5g_tx_power_index(struct rtw_dev *rtwdev,
 	return tx_power;
 }
 
-/* return RTW_RATE_SECTION_MAX to indicate rate is invalid */
-static u8 rtw_phy_rate_to_rate_section(u8 rate)
-{
-	if (rate >= DESC_RATE1M && rate <= DESC_RATE11M)
-		return RTW_RATE_SECTION_CCK;
-	else if (rate >= DESC_RATE6M && rate <= DESC_RATE54M)
-		return RTW_RATE_SECTION_OFDM;
-	else if (rate >= DESC_RATEMCS0 && rate <= DESC_RATEMCS7)
-		return RTW_RATE_SECTION_HT_1S;
-	else if (rate >= DESC_RATEMCS8 && rate <= DESC_RATEMCS15)
-		return RTW_RATE_SECTION_HT_2S;
-	else if (rate >= DESC_RATEVHT1SS_MCS0 && rate <= DESC_RATEVHT1SS_MCS9)
-		return RTW_RATE_SECTION_VHT_1S;
-	else if (rate >= DESC_RATEVHT2SS_MCS0 && rate <= DESC_RATEVHT2SS_MCS9)
-		return RTW_RATE_SECTION_VHT_2S;
-	else
-		return RTW_RATE_SECTION_MAX;
-}
-
 static s8 rtw_phy_get_tx_power_limit(struct rtw_dev *rtwdev, u8 band,
 				     enum rtw_bandwidth bw, u8 rf_path,
 				     u8 rate, u8 channel, u8 regd)
@@ -2031,7 +2011,7 @@ static s8 rtw_phy_get_tx_power_limit(struct rtw_dev *rtwdev, u8 band,
 	struct rtw_hal *hal = &rtwdev->hal;
 	u8 *cch_by_bw = hal->cch_by_bw;
 	s8 power_limit = (s8)rtwdev->chip->max_power_index;
-	u8 rs = rtw_phy_rate_to_rate_section(rate);
+	u8 rs;
 	int ch_idx;
 	u8 cur_bw, cur_ch;
 	s8 cur_lmt;
@@ -2039,7 +2019,19 @@ static s8 rtw_phy_get_tx_power_limit(struct rtw_dev *rtwdev, u8 band,
 	if (regd > RTW_REGD_WW)
 		return power_limit;
 
-	if (rs == RTW_RATE_SECTION_MAX)
+	if (rate >= DESC_RATE1M && rate <= DESC_RATE11M)
+		rs = RTW_RATE_SECTION_CCK;
+	else if (rate >= DESC_RATE6M && rate <= DESC_RATE54M)
+		rs = RTW_RATE_SECTION_OFDM;
+	else if (rate >= DESC_RATEMCS0 && rate <= DESC_RATEMCS7)
+		rs = RTW_RATE_SECTION_HT_1S;
+	else if (rate >= DESC_RATEMCS8 && rate <= DESC_RATEMCS15)
+		rs = RTW_RATE_SECTION_HT_2S;
+	else if (rate >= DESC_RATEVHT1SS_MCS0 && rate <= DESC_RATEVHT1SS_MCS9)
+		rs = RTW_RATE_SECTION_VHT_1S;
+	else if (rate >= DESC_RATEVHT2SS_MCS0 && rate <= DESC_RATEVHT2SS_MCS9)
+		rs = RTW_RATE_SECTION_VHT_2S;
+	else
 		goto err;
 
 	/* only 20M BW with cck and ofdm */
@@ -2073,27 +2065,6 @@ static s8 rtw_phy_get_tx_power_limit(struct rtw_dev *rtwdev, u8 band,
 	return (s8)rtwdev->chip->max_power_index;
 }
 
-static s8 rtw_phy_get_tx_power_sar(struct rtw_dev *rtwdev, u8 sar_band,
-				   u8 rf_path, u8 rate)
-{
-	u8 rs = rtw_phy_rate_to_rate_section(rate);
-	struct rtw_sar_arg arg = {
-		.sar_band = sar_band,
-		.path = rf_path,
-		.rs = rs,
-	};
-
-	if (rs == RTW_RATE_SECTION_MAX)
-		goto err;
-
-	return rtw_query_sar(rtwdev, &arg);
-
-err:
-	WARN(1, "invalid arguments, sar_band=%d, path=%d, rate=%d\n",
-	     sar_band, rf_path, rate);
-	return (s8)rtwdev->chip->max_power_index;
-}
-
 void rtw_get_tx_power_params(struct rtw_dev *rtwdev, u8 path, u8 rate, u8 bw,
 			     u8 ch, u8 regd, struct rtw_power_params *pwr_param)
 {
@@ -2105,7 +2076,6 @@ void rtw_get_tx_power_params(struct rtw_dev *rtwdev, u8 path, u8 rate, u8 bw,
 	s8 *offset = &pwr_param->pwr_offset;
 	s8 *limit = &pwr_param->pwr_limit;
 	s8 *remnant = &pwr_param->pwr_remnant;
-	s8 *sar = &pwr_param->pwr_sar;
 
 	pwr_idx = &rtwdev->efuse.txpwr_idx_table[path];
 	group = rtw_get_channel_group(ch, rate);
@@ -2129,7 +2099,6 @@ void rtw_get_tx_power_params(struct rtw_dev *rtwdev, u8 path, u8 rate, u8 bw,
 					    rate, ch, regd);
 	*remnant = (rate <= DESC_RATE11M ? dm_info->txagc_remnant_cck :
 		    dm_info->txagc_remnant_ofdm);
-	*sar = rtw_phy_get_tx_power_sar(rtwdev, hal->sar_band, path, rate);
 }
 
 u8
@@ -2144,9 +2113,7 @@ rtw_phy_get_tx_power_index(struct rtw_dev *rtwdev, u8 rf_path, u8 rate,
 				channel, regd, &pwr_param);
 
 	tx_power = pwr_param.pwr_base;
-	offset = min3(pwr_param.pwr_offset,
-		      pwr_param.pwr_limit,
-		      pwr_param.pwr_sar);
+	offset = min_t(s8, pwr_param.pwr_offset, pwr_param.pwr_limit);
 
 	if (rtwdev->chip->en_dis_dpd)
 		offset += rtw_phy_get_dis_dpd_by_rate_diff(rtwdev, rate);
diff --git a/drivers/net/wireless/realtek/rtw88/phy.h b/drivers/net/wireless/realtek/rtw88/phy.h
index b6c5ae60a462..02d1ec47ffb1 100644
--- a/drivers/net/wireless/realtek/rtw88/phy.h
+++ b/drivers/net/wireless/realtek/rtw88/phy.h
@@ -148,7 +148,6 @@ struct rtw_power_params {
 	s8 pwr_offset;
 	s8 pwr_limit;
 	s8 pwr_remnant;
-	s8 pwr_sar;
 };
 
 void
diff --git a/drivers/net/wireless/realtek/rtw88/ps.c b/drivers/net/wireless/realtek/rtw88/ps.c
index bfa64c038f5f..3f0ac33156d6 100644
--- a/drivers/net/wireless/realtek/rtw88/ps.c
+++ b/drivers/net/wireless/realtek/rtw88/ps.c
@@ -83,9 +83,6 @@ void rtw_power_mode_change(struct rtw_dev *rtwdev, bool enter)
 	/* Each request require an ack from firmware */
 	request |= POWER_MODE_ACK;
 
-	if (rtw_fw_feature_check(&rtwdev->fw, FW_FEATURE_TX_WAKE))
-		request |= POWER_TX_WAKE;
-
 	rtw_write8(rtwdev, rtwdev->hci.rpwm_addr, request);
 
 	/* Check firmware get the power requset and ack via cpwm register */
diff --git a/drivers/net/wireless/realtek/rtw88/ps.h b/drivers/net/wireless/realtek/rtw88/ps.h
index c194386f6db5..7819391c8663 100644
--- a/drivers/net/wireless/realtek/rtw88/ps.h
+++ b/drivers/net/wireless/realtek/rtw88/ps.h
@@ -9,7 +9,6 @@
 
 #define POWER_MODE_ACK		BIT(6)
 #define POWER_MODE_PG		BIT(4)
-#define POWER_TX_WAKE		BIT(1)
 #define POWER_MODE_LCLK		BIT(0)
 
 #define LEAVE_LPS_TRY_CNT	5
diff --git a/drivers/net/wireless/realtek/rtw88/rtw8821c.c b/drivers/net/wireless/realtek/rtw88/rtw8821c.c
index db078df63f85..80a6f4da6acd 100644
--- a/drivers/net/wireless/realtek/rtw88/rtw8821c.c
+++ b/drivers/net/wireless/realtek/rtw88/rtw8821c.c
@@ -223,8 +223,7 @@ static int rtw8821c_mac_init(struct rtw_dev *rtwdev)
 	rtw_write8(rtwdev, REG_TCR + 1, WLAN_TX_FUNC_CFG1);
 	rtw_write8(rtwdev, REG_ACKTO_CCK, 0x40);
 	rtw_write8_set(rtwdev, REG_WMAC_TRXPTCL_CTL_H, BIT(1));
-	rtw_write8_set(rtwdev, REG_SND_PTCL_CTRL,
-		       BIT_DIS_CHK_VHTSIGB_CRC);
+	rtw_write8_set(rtwdev, REG_SND_PTCL_CTRL, BIT(6));
 	rtw_write32(rtwdev, REG_WMAC_OPTION_FUNCTION + 8, WLAN_MAC_OPT_FUNC2);
 	rtw_write8(rtwdev, REG_WMAC_OPTION_FUNCTION + 4, WLAN_MAC_OPT_NORM_FUNC1);
 
diff --git a/drivers/net/wireless/realtek/rtw88/rtw8821c.h b/drivers/net/wireless/realtek/rtw88/rtw8821c.h
index d9fbddd7b0f3..112faa60f653 100644
--- a/drivers/net/wireless/realtek/rtw88/rtw8821c.h
+++ b/drivers/net/wireless/realtek/rtw88/rtw8821c.h
@@ -131,7 +131,7 @@ _rtw_write32s_mask(struct rtw_dev *rtwdev, u32 addr, u32 mask, u32 data)
 #define WLAN_TX_FUNC_CFG2		0x30
 #define WLAN_MAC_OPT_NORM_FUNC1		0x98
 #define WLAN_MAC_OPT_LB_FUNC1		0x80
-#define WLAN_MAC_OPT_FUNC2		0xb0810041
+#define WLAN_MAC_OPT_FUNC2		0x30810041
 
 #define WLAN_SIFS_CFG	(WLAN_SIFS_CCK_CONT_TX | \
 			(WLAN_SIFS_OFDM_CONT_TX << BIT_SHIFT_SIFS_OFDM_CTX) | \
diff --git a/drivers/net/wireless/realtek/rtw88/rtw8822b.c b/drivers/net/wireless/realtek/rtw88/rtw8822b.c
index dd4fbb82750d..c409c8c29ec8 100644
--- a/drivers/net/wireless/realtek/rtw88/rtw8822b.c
+++ b/drivers/net/wireless/realtek/rtw88/rtw8822b.c
@@ -205,7 +205,7 @@ static void rtw8822b_phy_set_param(struct rtw_dev *rtwdev)
 #define WLAN_TX_FUNC_CFG2		0x30
 #define WLAN_MAC_OPT_NORM_FUNC1		0x98
 #define WLAN_MAC_OPT_LB_FUNC1		0x80
-#define WLAN_MAC_OPT_FUNC2		0xb0810041
+#define WLAN_MAC_OPT_FUNC2		0x30810041
 
 #define WLAN_SIFS_CFG	(WLAN_SIFS_CCK_CONT_TX | \
 			(WLAN_SIFS_OFDM_CONT_TX << BIT_SHIFT_SIFS_OFDM_CTX) | \
@@ -262,8 +262,6 @@ static int rtw8822b_mac_init(struct rtw_dev *rtwdev)
 	rtw_write8(rtwdev, REG_TCR + 1, WLAN_TX_FUNC_CFG1);
 	rtw_write32(rtwdev, REG_WMAC_OPTION_FUNCTION + 8, WLAN_MAC_OPT_FUNC2);
 	rtw_write8(rtwdev, REG_WMAC_OPTION_FUNCTION + 4, WLAN_MAC_OPT_NORM_FUNC1);
-	rtw_write8_set(rtwdev, REG_SND_PTCL_CTRL,
-		       BIT_DIS_CHK_VHTSIGB_CRC);
 
 	return 0;
 }
diff --git a/drivers/net/wireless/realtek/rtw88/rtw8822c.c b/drivers/net/wireless/realtek/rtw88/rtw8822c.c
index 35c46e5209de..46b881e8e4fe 100644
--- a/drivers/net/wireless/realtek/rtw88/rtw8822c.c
+++ b/drivers/net/wireless/realtek/rtw88/rtw8822c.c
@@ -1962,7 +1962,7 @@ static void rtw8822c_phy_set_param(struct rtw_dev *rtwdev)
 #define WLAN_TX_FUNC_CFG2		0x30
 #define WLAN_MAC_OPT_NORM_FUNC1		0x98
 #define WLAN_MAC_OPT_LB_FUNC1		0x80
-#define WLAN_MAC_OPT_FUNC2		0xb0810041
+#define WLAN_MAC_OPT_FUNC2		0x30810041
 #define WLAN_MAC_INT_MIG_CFG		0x33330000
 
 #define WLAN_SIFS_CFG	(WLAN_SIFS_CCK_CONT_TX | \
@@ -2102,8 +2102,6 @@ static int rtw8822c_mac_init(struct rtw_dev *rtwdev)
 		     BIT_RXPSF_CONT_ERRCHKEN);
 	value16 = BIT_SET_RXPSF_ERRTHR(value16, 0x07);
 	rtw_write16(rtwdev, REG_RXPSF_CTRL, value16);
-	rtw_write8_set(rtwdev, REG_SND_PTCL_CTRL,
-		       BIT_DIS_CHK_VHTSIGB_CRC);
 
 	/* Interrupt migration configuration */
 	rtw_write32(rtwdev, REG_INT_MIG, WLAN_MAC_INT_MIG_CFG);
@@ -2535,7 +2533,6 @@ static void query_phy_status_page0(struct rtw_dev *rtwdev, u8 *phy_status,
 	s8 rx_power[RTW_RF_PATH_MAX];
 	s8 min_rx_power = -120;
 	u8 rssi;
-	u8 channel;
 	int path;
 
 	rx_power[RF_PATH_A] = GET_PHY_STAT_P0_PWDB_A(phy_status);
@@ -2556,11 +2553,6 @@ static void query_phy_status_page0(struct rtw_dev *rtwdev, u8 *phy_status,
 	rx_power[RF_PATH_A] -= 110;
 	rx_power[RF_PATH_B] -= 110;
 
-	channel = GET_PHY_STAT_P0_CHANNEL(phy_status);
-	if (channel == 0)
-		channel = rtwdev->hal.current_channel;
-	rtw_set_rx_freq_band(pkt_stat, channel);
-
 	pkt_stat->rx_power[RF_PATH_A] = rx_power[RF_PATH_A];
 	pkt_stat->rx_power[RF_PATH_B] = rx_power[RF_PATH_B];
 
@@ -2586,7 +2578,6 @@ static void query_phy_status_page1(struct rtw_dev *rtwdev, u8 *phy_status,
 	u8 evm_dbm = 0;
 	u8 rssi;
 	int path;
-	u8 channel;
 
 	if (pkt_stat->rate > DESC_RATE11M && pkt_stat->rate < DESC_RATEMCS0)
 		rxsc = GET_PHY_STAT_P1_L_RXSC(phy_status);
@@ -2600,9 +2591,6 @@ static void query_phy_status_page1(struct rtw_dev *rtwdev, u8 *phy_status,
 	else
 		bw = RTW_CHANNEL_WIDTH_20;
 
-	channel = GET_PHY_STAT_P1_CHANNEL(phy_status);
-	rtw_set_rx_freq_band(pkt_stat, channel);
-
 	pkt_stat->rx_power[RF_PATH_A] = GET_PHY_STAT_P1_PWDB_A(phy_status) - 110;
 	pkt_stat->rx_power[RF_PATH_B] = GET_PHY_STAT_P1_PWDB_B(phy_status) - 110;
 	pkt_stat->rssi = rtw_phy_rf_power_2_rssi(pkt_stat->rx_power, 2);
diff --git a/drivers/net/wireless/realtek/rtw88/rtw8822c.h b/drivers/net/wireless/realtek/rtw88/rtw8822c.h
index 8201955e1f21..3df627419d81 100644
--- a/drivers/net/wireless/realtek/rtw88/rtw8822c.h
+++ b/drivers/net/wireless/realtek/rtw88/rtw8822c.h
@@ -137,8 +137,6 @@ const struct rtw_table name ## _tbl = {			\
 	le32_get_bits(*((__le32 *)(phy_stat) + 0x04), GENMASK(7, 0))
 #define GET_PHY_STAT_P0_GAIN_A(phy_stat)                                       \
 	le32_get_bits(*((__le32 *)(phy_stat) + 0x00), GENMASK(21, 16))
-#define GET_PHY_STAT_P0_CHANNEL(phy_stat)				       \
-	le32_get_bits(*((__le32 *)(phy_stat) + 0x01), GENMASK(23, 16))
 #define GET_PHY_STAT_P0_GAIN_B(phy_stat)                                       \
 	le32_get_bits(*((__le32 *)(phy_stat) + 0x04), GENMASK(29, 24))
 
@@ -151,8 +149,6 @@ const struct rtw_table name ## _tbl = {			\
 	le32_get_bits(*((__le32 *)(phy_stat) + 0x01), GENMASK(11, 8))
 #define GET_PHY_STAT_P1_HT_RXSC(phy_stat)                                      \
 	le32_get_bits(*((__le32 *)(phy_stat) + 0x01), GENMASK(15, 12))
-#define GET_PHY_STAT_P1_CHANNEL(phy_stat)				       \
-	le32_get_bits(*((__le32 *)(phy_stat) + 0x01), GENMASK(23, 16))
 #define GET_PHY_STAT_P1_RXEVM_A(phy_stat)                                      \
 	le32_get_bits(*((__le32 *)(phy_stat) + 0x04), GENMASK(7, 0))
 #define GET_PHY_STAT_P1_RXEVM_B(phy_stat)                                      \
diff --git a/drivers/net/wireless/realtek/rtw88/rx.c b/drivers/net/wireless/realtek/rtw88/rx.c
index d2d607e22198..7087e385a9b3 100644
--- a/drivers/net/wireless/realtek/rtw88/rx.c
+++ b/drivers/net/wireless/realtek/rtw88/rx.c
@@ -6,7 +6,6 @@
 #include "rx.h"
 #include "ps.h"
 #include "debug.h"
-#include "fw.h"
 
 void rtw_rx_stats(struct rtw_dev *rtwdev, struct ieee80211_vif *vif,
 		  struct sk_buff *skb)
@@ -139,13 +138,6 @@ static void rtw_rx_addr_match(struct rtw_dev *rtwdev,
 	rtw_iterate_vifs_atomic(rtwdev, rtw_rx_addr_match_iter, &data);
 }
 
-static void rtw_set_rx_freq_by_pktstat(struct rtw_rx_pkt_stat *pkt_stat,
-				       struct ieee80211_rx_status *rx_status)
-{
-	rx_status->freq = pkt_stat->freq;
-	rx_status->band = pkt_stat->band;
-}
-
 void rtw_rx_fill_rx_status(struct rtw_dev *rtwdev,
 			   struct rtw_rx_pkt_stat *pkt_stat,
 			   struct ieee80211_hdr *hdr,
@@ -158,8 +150,6 @@ void rtw_rx_fill_rx_status(struct rtw_dev *rtwdev,
 	memset(rx_status, 0, sizeof(*rx_status));
 	rx_status->freq = hw->conf.chandef.chan->center_freq;
 	rx_status->band = hw->conf.chandef.chan->band;
-	if (rtw_fw_feature_check(&rtwdev->fw, FW_FEATURE_SCAN_OFFLOAD))
-		rtw_set_rx_freq_by_pktstat(pkt_stat, rx_status);
 	if (pkt_stat->crc_err)
 		rx_status->flag |= RX_FLAG_FAILED_FCS_CRC;
 	if (pkt_stat->decrypted)
diff --git a/drivers/net/wireless/realtek/rtw88/sar.c b/drivers/net/wireless/realtek/rtw88/sar.c
deleted file mode 100644
index 3383726c4d90..000000000000
--- a/drivers/net/wireless/realtek/rtw88/sar.c
+++ /dev/null
@@ -1,114 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
-/* Copyright(c) 2018-2021  Realtek Corporation
- */
-
-#include "sar.h"
-#include "phy.h"
-#include "debug.h"
-
-s8 rtw_query_sar(struct rtw_dev *rtwdev, const struct rtw_sar_arg *arg)
-{
-	const struct rtw_hal *hal = &rtwdev->hal;
-	const struct rtw_sar *sar = &hal->sar;
-
-	switch (sar->src) {
-	default:
-		rtw_warn(rtwdev, "unknown SAR source: %d\n", sar->src);
-		fallthrough;
-	case RTW_SAR_SOURCE_NONE:
-		return (s8)rtwdev->chip->max_power_index;
-	case RTW_SAR_SOURCE_COMMON:
-		return sar->cfg[arg->path][arg->rs].common[arg->sar_band];
-	}
-}
-
-static int rtw_apply_sar(struct rtw_dev *rtwdev, const struct rtw_sar *new)
-{
-	struct rtw_hal *hal = &rtwdev->hal;
-	struct rtw_sar *sar = &hal->sar;
-
-	if (sar->src != RTW_SAR_SOURCE_NONE && new->src != sar->src) {
-		rtw_warn(rtwdev, "SAR source: %d is in use\n", sar->src);
-		return -EBUSY;
-	}
-
-	*sar = *new;
-	rtw_phy_set_tx_power_level(rtwdev, hal->current_channel);
-
-	return 0;
-}
-
-static s8 rtw_sar_to_phy(struct rtw_dev *rtwdev, u8 fct, s32 sar,
-			 const struct rtw_sar_arg *arg)
-{
-	struct rtw_hal *hal = &rtwdev->hal;
-	u8 txgi = rtwdev->chip->txgi_factor;
-	u8 max = rtwdev->chip->max_power_index;
-	s32 tmp;
-	s8 base;
-
-	tmp = fct > txgi ? sar >> (fct - txgi) : sar << (txgi - fct);
-	base = arg->sar_band == RTW_SAR_BAND_0 ?
-	       hal->tx_pwr_by_rate_base_2g[arg->path][arg->rs] :
-	       hal->tx_pwr_by_rate_base_5g[arg->path][arg->rs];
-
-	return (s8)clamp_t(s32, tmp, -max - 1, max) - base;
-}
-
-static const struct cfg80211_sar_freq_ranges rtw_common_sar_freq_ranges[] = {
-	[RTW_SAR_BAND_0] = { .start_freq = 2412, .end_freq = 2484, },
-	[RTW_SAR_BAND_1] = { .start_freq = 5180, .end_freq = 5320, },
-	[RTW_SAR_BAND_3] = { .start_freq = 5500, .end_freq = 5720, },
-	[RTW_SAR_BAND_4] = { .start_freq = 5745, .end_freq = 5825, },
-};
-
-static_assert(ARRAY_SIZE(rtw_common_sar_freq_ranges) == RTW_SAR_BAND_NR);
-
-const struct cfg80211_sar_capa rtw_sar_capa = {
-	.type = NL80211_SAR_TYPE_POWER,
-	.num_freq_ranges = RTW_SAR_BAND_NR,
-	.freq_ranges = rtw_common_sar_freq_ranges,
-};
-
-int rtw_set_sar_specs(struct rtw_dev *rtwdev,
-		      const struct cfg80211_sar_specs *sar)
-{
-	struct rtw_sar_arg arg = {0};
-	struct rtw_sar new = {0};
-	u32 idx, i, j, k;
-	s32 power;
-	s8 val;
-
-	if (sar->type != NL80211_SAR_TYPE_POWER)
-		return -EINVAL;
-
-	memset(&new, rtwdev->chip->max_power_index, sizeof(new));
-	new.src = RTW_SAR_SOURCE_COMMON;
-
-	for (i = 0; i < sar->num_sub_specs; i++) {
-		idx = sar->sub_specs[i].freq_range_index;
-		if (idx >= RTW_SAR_BAND_NR)
-			return -EINVAL;
-
-		power = sar->sub_specs[i].power;
-		rtw_info(rtwdev, "On freq %u to %u, set SAR %d in 1/%lu dBm\n",
-			 rtw_common_sar_freq_ranges[idx].start_freq,
-			 rtw_common_sar_freq_ranges[idx].end_freq,
-			 power, BIT(RTW_COMMON_SAR_FCT));
-
-		for (j = 0; j < RTW_RF_PATH_MAX; j++) {
-			for (k = 0; k < RTW_RATE_SECTION_MAX; k++) {
-				arg = (struct rtw_sar_arg){
-					.sar_band = idx,
-					.path = j,
-					.rs = k,
-				};
-				val = rtw_sar_to_phy(rtwdev, RTW_COMMON_SAR_FCT,
-						     power, &arg);
-				new.cfg[j][k].common[idx] = val;
-			}
-		}
-	}
-
-	return rtw_apply_sar(rtwdev, &new);
-}
diff --git a/drivers/net/wireless/realtek/rtw88/sar.h b/drivers/net/wireless/realtek/rtw88/sar.h
deleted file mode 100644
index e01e7bb790b7..000000000000
--- a/drivers/net/wireless/realtek/rtw88/sar.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
-/* Copyright(c) 2018-2021  Realtek Corporation
- */
-
-#include "main.h"
-
-/* NL80211_SAR_TYPE_POWER means unit is in 0.25 dBm,
- * where 0.25 = 1/4 = 2^(-2), so make factor 2.
- */
-#define RTW_COMMON_SAR_FCT 2
-
-struct rtw_sar_arg {
-	u8 sar_band;
-	u8 path;
-	u8 rs;
-};
-
-extern const struct cfg80211_sar_capa rtw_sar_capa;
-
-s8 rtw_query_sar(struct rtw_dev *rtwdev, const struct rtw_sar_arg *arg);
-int rtw_set_sar_specs(struct rtw_dev *rtwdev,
-		      const struct cfg80211_sar_specs *sar);
diff --git a/drivers/net/wireless/realtek/rtw88/tx.c b/drivers/net/wireless/realtek/rtw88/tx.c
index efcc1b0371a8..3a101aa139ed 100644
--- a/drivers/net/wireless/realtek/rtw88/tx.c
+++ b/drivers/net/wireless/realtek/rtw88/tx.c
@@ -233,34 +233,17 @@ void rtw_tx_report_handle(struct rtw_dev *rtwdev, struct sk_buff *skb, int src)
 	spin_unlock_irqrestore(&tx_report->q_lock, flags);
 }
 
-static u8 rtw_get_mgmt_rate(struct rtw_dev *rtwdev, struct sk_buff *skb,
-			    u8 lowest_rate, bool ignore_rate)
-{
-	struct ieee80211_tx_info *tx_info = IEEE80211_SKB_CB(skb);
-	struct ieee80211_vif *vif = tx_info->control.vif;
-	bool force_lowest = test_bit(RTW_FLAG_FORCE_LOWEST_RATE, rtwdev->flags);
-
-	if (!vif || !vif->bss_conf.basic_rates || ignore_rate || force_lowest)
-		return lowest_rate;
-
-	return __ffs(vif->bss_conf.basic_rates) + lowest_rate;
-}
-
 static void rtw_tx_pkt_info_update_rate(struct rtw_dev *rtwdev,
 					struct rtw_tx_pkt_info *pkt_info,
-					struct sk_buff *skb,
-					bool ignore_rate)
+					struct sk_buff *skb)
 {
 	if (rtwdev->hal.current_band_type == RTW_BAND_2G) {
 		pkt_info->rate_id = RTW_RATEID_B_20M;
-		pkt_info->rate = rtw_get_mgmt_rate(rtwdev, skb, DESC_RATE1M,
-						   ignore_rate);
+		pkt_info->rate = DESC_RATE1M;
 	} else {
 		pkt_info->rate_id = RTW_RATEID_G;
-		pkt_info->rate = rtw_get_mgmt_rate(rtwdev, skb, DESC_RATE6M,
-						   ignore_rate);
+		pkt_info->rate = DESC_RATE6M;
 	}
-
 	pkt_info->use_rate = true;
 	pkt_info->dis_rate_fallback = true;
 }
@@ -297,7 +280,7 @@ static void rtw_tx_mgmt_pkt_info_update(struct rtw_dev *rtwdev,
 					struct ieee80211_sta *sta,
 					struct sk_buff *skb)
 {
-	rtw_tx_pkt_info_update_rate(rtwdev, pkt_info, skb, false);
+	rtw_tx_pkt_info_update_rate(rtwdev, pkt_info, skb);
 	pkt_info->dis_qselseq = true;
 	pkt_info->en_hwseq = true;
 	pkt_info->hw_ssn_sel = 0;
@@ -312,9 +295,7 @@ static void rtw_tx_data_pkt_info_update(struct rtw_dev *rtwdev,
 	struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data;
 	struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);
 	struct ieee80211_hw *hw = rtwdev->hw;
-	struct rtw_dm_info *dm_info = &rtwdev->dm_info;
 	struct rtw_sta_info *si;
-	u8 fix_rate;
 	u16 seq;
 	u8 ampdu_factor = 0;
 	u8 ampdu_density = 0;
@@ -366,13 +347,6 @@ static void rtw_tx_data_pkt_info_update(struct rtw_dev *rtwdev,
 	pkt_info->bw = bw;
 	pkt_info->stbc = stbc;
 	pkt_info->ldpc = ldpc;
-
-	fix_rate = dm_info->fix_rate;
-	if (fix_rate < DESC_RATE_MAX) {
-		pkt_info->rate = fix_rate;
-		pkt_info->dis_rate_fallback = true;
-		pkt_info->use_rate = true;
-	}
 }
 
 void rtw_tx_pkt_info_update(struct rtw_dev *rtwdev,
@@ -430,7 +404,7 @@ void rtw_tx_rsvd_page_pkt_info_update(struct rtw_dev *rtwdev,
 	if (type != RSVD_BEACON && type != RSVD_DUMMY)
 		pkt_info->qsel = TX_DESC_QSEL_MGMT;
 
-	rtw_tx_pkt_info_update_rate(rtwdev, pkt_info, skb, true);
+	rtw_tx_pkt_info_update_rate(rtwdev, pkt_info, skb);
 
 	bmc = is_broadcast_ether_addr(hdr->addr1) ||
 	      is_multicast_ether_addr(hdr->addr1);
diff --git a/drivers/net/wireless/realtek/rtw89/cam.c b/drivers/net/wireless/realtek/rtw89/cam.c
index bd34e4bbe107..ad7a8155dbed 100644
--- a/drivers/net/wireless/realtek/rtw89/cam.c
+++ b/drivers/net/wireless/realtek/rtw89/cam.c
@@ -219,7 +219,6 @@ static int rtw89_cam_attach_sec_cam(struct rtw89_dev *rtwdev,
 				    struct ieee80211_key_conf *key,
 				    struct rtw89_sec_cam_entry *sec_cam)
 {
-	struct rtw89_sta *rtwsta = sta_to_rtwsta_safe(sta);
 	struct rtw89_vif *rtwvif;
 	struct rtw89_addr_cam_entry *addr_cam;
 	u8 key_idx = 0;
@@ -244,7 +243,7 @@ static int rtw89_cam_attach_sec_cam(struct rtw89_dev *rtwdev,
 	addr_cam->sec_ent[key_idx] = sec_cam->sec_cam_idx;
 	addr_cam->sec_entries[key_idx] = sec_cam;
 	set_bit(key_idx, addr_cam->sec_cam_map);
-	ret = rtw89_fw_h2c_cam(rtwdev, rtwvif, rtwsta, NULL);
+	ret = rtw89_fw_h2c_cam(rtwdev, rtwvif);
 	if (ret) {
 		rtw89_err(rtwdev, "failed to update addr cam sec entry: %d\n",
 			  ret);
@@ -372,7 +371,6 @@ int rtw89_cam_sec_key_del(struct rtw89_dev *rtwdev,
 			  struct ieee80211_key_conf *key,
 			  bool inform_fw)
 {
-	struct rtw89_sta *rtwsta = sta_to_rtwsta_safe(sta);
 	struct rtw89_cam_info *cam_info = &rtwdev->cam_info;
 	struct rtw89_vif *rtwvif;
 	struct rtw89_addr_cam_entry *addr_cam;
@@ -396,7 +394,7 @@ int rtw89_cam_sec_key_del(struct rtw89_dev *rtwdev,
 	clear_bit(key_idx, addr_cam->sec_cam_map);
 	addr_cam->sec_entries[key_idx] = NULL;
 	if (inform_fw) {
-		ret = rtw89_fw_h2c_cam(rtwdev, rtwvif, rtwsta, NULL);
+		ret = rtw89_fw_h2c_cam(rtwdev, rtwvif);
 		if (ret)
 			rtw89_err(rtwdev, "failed to update cam del key: %d\n", ret);
 	}
@@ -538,8 +536,12 @@ static int rtw89_cam_init_bssid_cam(struct rtw89_dev *rtwdev,
 
 void rtw89_cam_bssid_changed(struct rtw89_dev *rtwdev, struct rtw89_vif *rtwvif)
 {
+	struct ieee80211_vif *vif = rtwvif_to_vif(rtwvif);
+	struct rtw89_addr_cam_entry *addr_cam = &rtwvif->addr_cam;
 	struct rtw89_bssid_cam_entry *bssid_cam = &rtwvif->bssid_cam;
 
+	if (vif->type == NL80211_IFTYPE_STATION)
+		ether_addr_copy(addr_cam->tma, rtwvif->bssid);
 	ether_addr_copy(bssid_cam->bssid, rtwvif->bssid);
 }
 
@@ -591,7 +593,7 @@ int rtw89_cam_fill_bssid_cam_info(struct rtw89_dev *rtwdev,
 	return 0;
 }
 
-static u8 rtw89_cam_addr_hash(u8 start, const u8 *addr)
+static u8 rtw89_cam_addr_hash(u8 start, u8 *addr)
 {
 	u8 hash = 0;
 	u8 i;
@@ -604,18 +606,15 @@ static u8 rtw89_cam_addr_hash(u8 start, const u8 *addr)
 
 void rtw89_cam_fill_addr_cam_info(struct rtw89_dev *rtwdev,
 				  struct rtw89_vif *rtwvif,
-				  struct rtw89_sta *rtwsta,
-				  const u8 *scan_mac_addr,
 				  u8 *cmd)
 {
 	struct ieee80211_vif *vif = rtwvif_to_vif(rtwvif);
+	struct ieee80211_sta *sta;
+	struct rtw89_sta *rtwsta;
 	struct rtw89_addr_cam_entry *addr_cam = &rtwvif->addr_cam;
-	struct ieee80211_sta *sta = rtwsta_to_sta_safe(rtwsta);
-	const u8 *sma = scan_mac_addr ? scan_mac_addr : rtwvif->mac_addr;
 	u8 sma_hash, tma_hash, addr_msk_start;
 	u8 sma_start = 0;
 	u8 tma_start = 0;
-	u8 *tma = sta ? sta->addr : rtwvif->bssid;
 
 	if (addr_cam->addr_mask != 0) {
 		addr_msk_start = __ffs(addr_cam->addr_mask);
@@ -624,8 +623,8 @@ void rtw89_cam_fill_addr_cam_info(struct rtw89_dev *rtwdev,
 		else if (addr_cam->mask_sel == RTW89_TMA)
 			tma_start = addr_msk_start;
 	}
-	sma_hash = rtw89_cam_addr_hash(sma_start, sma);
-	tma_hash = rtw89_cam_addr_hash(tma_start, tma);
+	sma_hash = rtw89_cam_addr_hash(sma_start, rtwvif->mac_addr);
+	tma_hash = rtw89_cam_addr_hash(tma_start, addr_cam->tma);
 
 	FWCMD_SET_ADDR_IDX(cmd, addr_cam->addr_cam_idx);
 	FWCMD_SET_ADDR_OFFSET(cmd, addr_cam->offset);
@@ -643,19 +642,19 @@ void rtw89_cam_fill_addr_cam_info(struct rtw89_dev *rtwdev,
 
 	FWCMD_SET_ADDR_BSSID_CAM_IDX(cmd, addr_cam->bssid_cam_idx);
 
-	FWCMD_SET_ADDR_SMA0(cmd, sma[0]);
-	FWCMD_SET_ADDR_SMA1(cmd, sma[1]);
-	FWCMD_SET_ADDR_SMA2(cmd, sma[2]);
-	FWCMD_SET_ADDR_SMA3(cmd, sma[3]);
-	FWCMD_SET_ADDR_SMA4(cmd, sma[4]);
-	FWCMD_SET_ADDR_SMA5(cmd, sma[5]);
+	FWCMD_SET_ADDR_SMA0(cmd, rtwvif->mac_addr[0]);
+	FWCMD_SET_ADDR_SMA1(cmd, rtwvif->mac_addr[1]);
+	FWCMD_SET_ADDR_SMA2(cmd, rtwvif->mac_addr[2]);
+	FWCMD_SET_ADDR_SMA3(cmd, rtwvif->mac_addr[3]);
+	FWCMD_SET_ADDR_SMA4(cmd, rtwvif->mac_addr[4]);
+	FWCMD_SET_ADDR_SMA5(cmd, rtwvif->mac_addr[5]);
 
-	FWCMD_SET_ADDR_TMA0(cmd, tma[0]);
-	FWCMD_SET_ADDR_TMA1(cmd, tma[1]);
-	FWCMD_SET_ADDR_TMA2(cmd, tma[2]);
-	FWCMD_SET_ADDR_TMA3(cmd, tma[3]);
-	FWCMD_SET_ADDR_TMA4(cmd, tma[4]);
-	FWCMD_SET_ADDR_TMA5(cmd, tma[5]);
+	FWCMD_SET_ADDR_TMA0(cmd, addr_cam->tma[0]);
+	FWCMD_SET_ADDR_TMA1(cmd, addr_cam->tma[1]);
+	FWCMD_SET_ADDR_TMA2(cmd, addr_cam->tma[2]);
+	FWCMD_SET_ADDR_TMA3(cmd, addr_cam->tma[3]);
+	FWCMD_SET_ADDR_TMA4(cmd, addr_cam->tma[4]);
+	FWCMD_SET_ADDR_TMA5(cmd, addr_cam->tma[5]);
 
 	FWCMD_SET_ADDR_PORT_INT(cmd, rtwvif->port);
 	FWCMD_SET_ADDR_TSF_SYNC(cmd, rtwvif->port);
@@ -663,11 +662,15 @@ void rtw89_cam_fill_addr_cam_info(struct rtw89_dev *rtwdev,
 	FWCMD_SET_ADDR_LSIG_TXOP(cmd, rtwvif->lsig_txop);
 	FWCMD_SET_ADDR_TGT_IND(cmd, rtwvif->tgt_ind);
 	FWCMD_SET_ADDR_FRM_TGT_IND(cmd, rtwvif->frm_tgt_ind);
-	FWCMD_SET_ADDR_MACID(cmd, rtwsta ? rtwsta->mac_id : rtwvif->mac_id);
-	if (rtwvif->net_type == RTW89_NET_TYPE_INFRA)
-		FWCMD_SET_ADDR_AID12(cmd, vif->bss_conf.aid & 0xfff);
-	else if (rtwvif->net_type == RTW89_NET_TYPE_AP_MODE)
-		FWCMD_SET_ADDR_AID12(cmd, sta ? sta->aid & 0xfff : 0);
+
+	if (vif->type == NL80211_IFTYPE_STATION) {
+		sta = rtwvif->mgd.ap;
+		if (sta) {
+			rtwsta = (struct rtw89_sta *)sta->drv_priv;
+			FWCMD_SET_ADDR_MACID(cmd, rtwsta->mac_id);
+			FWCMD_SET_ADDR_AID12(cmd, vif->bss_conf.aid & 0xfff);
+		}
+	}
 	FWCMD_SET_ADDR_WOL_PATTERN(cmd, rtwvif->wowlan_pattern);
 	FWCMD_SET_ADDR_WOL_UC(cmd, rtwvif->wowlan_uc);
 	FWCMD_SET_ADDR_WOL_MAGIC(cmd, rtwvif->wowlan_magic);
diff --git a/drivers/net/wireless/realtek/rtw89/cam.h b/drivers/net/wireless/realtek/rtw89/cam.h
index 33a3ad582b81..90a20a5375c6 100644
--- a/drivers/net/wireless/realtek/rtw89/cam.h
+++ b/drivers/net/wireless/realtek/rtw89/cam.h
@@ -9,347 +9,145 @@
 
 #define RTW89_SEC_CAM_LEN	20
 
-static inline void FWCMD_SET_ADDR_IDX(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 1, value, GENMASK(7, 0));
-}
-
-static inline void FWCMD_SET_ADDR_OFFSET(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 1, value, GENMASK(15, 8));
-}
-
-static inline void FWCMD_SET_ADDR_LEN(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 1, value, GENMASK(23, 16));
-}
-
-static inline void FWCMD_SET_ADDR_VALID(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 2, value, BIT(0));
-}
-
-static inline void FWCMD_SET_ADDR_NET_TYPE(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 2, value, GENMASK(2, 1));
-}
-
-static inline void FWCMD_SET_ADDR_BCN_HIT_COND(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 2, value, GENMASK(4, 3));
-}
-
-static inline void FWCMD_SET_ADDR_HIT_RULE(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 2, value, GENMASK(6, 5));
-}
-
-static inline void FWCMD_SET_ADDR_BB_SEL(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 2, value, BIT(7));
-}
-
-static inline void FWCMD_SET_ADDR_ADDR_MASK(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 2, value, GENMASK(13, 8));
-}
-
-static inline void FWCMD_SET_ADDR_MASK_SEL(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 2, value, GENMASK(15, 14));
-}
-
-static inline void FWCMD_SET_ADDR_SMA_HASH(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 2, value, GENMASK(23, 16));
-}
-
-static inline void FWCMD_SET_ADDR_TMA_HASH(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 2, value, GENMASK(31, 24));
-}
-
-static inline void FWCMD_SET_ADDR_BSSID_CAM_IDX(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 3, value, GENMASK(5, 0));
-}
-
-static inline void FWCMD_SET_ADDR_SMA0(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 4, value, GENMASK(7, 0));
-}
-
-static inline void FWCMD_SET_ADDR_SMA1(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 4, value, GENMASK(15, 8));
-}
-
-static inline void FWCMD_SET_ADDR_SMA2(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 4, value, GENMASK(23, 16));
-}
-
-static inline void FWCMD_SET_ADDR_SMA3(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 4, value, GENMASK(31, 24));
-}
-
-static inline void FWCMD_SET_ADDR_SMA4(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 5, value, GENMASK(7, 0));
-}
-
-static inline void FWCMD_SET_ADDR_SMA5(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 5, value, GENMASK(15, 8));
-}
-
-static inline void FWCMD_SET_ADDR_TMA0(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 5, value, GENMASK(23, 16));
-}
-
-static inline void FWCMD_SET_ADDR_TMA1(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 5, value, GENMASK(31, 24));
-}
-
-static inline void FWCMD_SET_ADDR_TMA2(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 6, value, GENMASK(7, 0));
-}
-
-static inline void FWCMD_SET_ADDR_TMA3(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 6, value, GENMASK(15, 8));
-}
-
-static inline void FWCMD_SET_ADDR_TMA4(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 6, value, GENMASK(23, 16));
-}
-
-static inline void FWCMD_SET_ADDR_TMA5(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 6, value, GENMASK(31, 24));
-}
-
-static inline void FWCMD_SET_ADDR_MACID(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 8, value, GENMASK(7, 0));
-}
-
-static inline void FWCMD_SET_ADDR_PORT_INT(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 8, value, GENMASK(10, 8));
-}
-
-static inline void FWCMD_SET_ADDR_TSF_SYNC(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 8, value, GENMASK(13, 11));
-}
-
-static inline void FWCMD_SET_ADDR_TF_TRS(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 8, value, BIT(14));
-}
-
-static inline void FWCMD_SET_ADDR_LSIG_TXOP(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 8, value, BIT(15));
-}
-
-static inline void FWCMD_SET_ADDR_TGT_IND(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 8, value, GENMASK(26, 24));
-}
-
-static inline void FWCMD_SET_ADDR_FRM_TGT_IND(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 8, value, GENMASK(29, 27));
-}
-
-static inline void FWCMD_SET_ADDR_AID12(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(11, 0));
-}
-
-static inline void FWCMD_SET_ADDR_AID12_0(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(7, 0));
-}
-
-static inline void FWCMD_SET_ADDR_AID12_1(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(11, 8));
-}
-
-static inline void FWCMD_SET_ADDR_WOL_PATTERN(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 9, value, BIT(12));
-}
-
-static inline void FWCMD_SET_ADDR_WOL_UC(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 9, value, BIT(13));
-}
-
-static inline void FWCMD_SET_ADDR_WOL_MAGIC(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 9, value, BIT(14));
-}
-
-static inline void FWCMD_SET_ADDR_WAPI(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 9, value, BIT(15));
-}
-
-static inline void FWCMD_SET_ADDR_SEC_ENT_MODE(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(17, 16));
-}
-
-static inline void FWCMD_SET_ADDR_SEC_ENT0_KEYID(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(19, 18));
-}
-
-static inline void FWCMD_SET_ADDR_SEC_ENT1_KEYID(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(21, 20));
-}
-
-static inline void FWCMD_SET_ADDR_SEC_ENT2_KEYID(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(23, 22));
-}
-
-static inline void FWCMD_SET_ADDR_SEC_ENT3_KEYID(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(25, 24));
-}
-
-static inline void FWCMD_SET_ADDR_SEC_ENT4_KEYID(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(27, 26));
-}
-
-static inline void FWCMD_SET_ADDR_SEC_ENT5_KEYID(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(29, 28));
-}
-
-static inline void FWCMD_SET_ADDR_SEC_ENT6_KEYID(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(31, 30));
-}
-
-static inline void FWCMD_SET_ADDR_SEC_ENT_VALID(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 10, value, GENMASK(7, 0));
-}
-
-static inline void FWCMD_SET_ADDR_SEC_ENT0(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 10, value, GENMASK(15, 8));
-}
-
-static inline void FWCMD_SET_ADDR_SEC_ENT1(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 10, value, GENMASK(23, 16));
-}
-
-static inline void FWCMD_SET_ADDR_SEC_ENT2(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 10, value, GENMASK(31, 24));
-}
-
-static inline void FWCMD_SET_ADDR_SEC_ENT3(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 11, value, GENMASK(7, 0));
-}
-
-static inline void FWCMD_SET_ADDR_SEC_ENT4(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 11, value, GENMASK(15, 8));
-}
-
-static inline void FWCMD_SET_ADDR_SEC_ENT5(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 11, value, GENMASK(23, 16));
-}
-
-static inline void FWCMD_SET_ADDR_SEC_ENT6(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 11, value, GENMASK(31, 24));
-}
-
-static inline void FWCMD_SET_ADDR_BSSID_IDX(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 12, value, GENMASK(7, 0));
-}
-
-static inline void FWCMD_SET_ADDR_BSSID_OFFSET(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 12, value, GENMASK(15, 8));
-}
-
-static inline void FWCMD_SET_ADDR_BSSID_LEN(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 12, value, GENMASK(23, 16));
-}
-
-static inline void FWCMD_SET_ADDR_BSSID_VALID(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 13, value, BIT(0));
-}
-
-static inline void FWCMD_SET_ADDR_BSSID_BB_SEL(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 13, value, BIT(1));
-}
-
-static inline void FWCMD_SET_ADDR_BSSID_BSS_COLOR(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 13, value, GENMASK(13, 8));
-}
-
-static inline void FWCMD_SET_ADDR_BSSID_BSSID0(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 13, value, GENMASK(23, 16));
-}
-
-static inline void FWCMD_SET_ADDR_BSSID_BSSID1(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 13, value, GENMASK(31, 24));
-}
-
-static inline void FWCMD_SET_ADDR_BSSID_BSSID2(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 14, value, GENMASK(7, 0));
-}
-
-static inline void FWCMD_SET_ADDR_BSSID_BSSID3(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 14, value, GENMASK(15, 8));
-}
-
-static inline void FWCMD_SET_ADDR_BSSID_BSSID4(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 14, value, GENMASK(23, 16));
-}
-
-static inline void FWCMD_SET_ADDR_BSSID_BSSID5(void *cmd, u32 value)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 14, value, GENMASK(31, 24));
-}
+#define FWCMD_SET_ADDR_IDX(cmd, value)					\
+	le32p_replace_bits((__le32 *)(cmd) + 1, value, GENMASK(7, 0))
+#define FWCMD_SET_ADDR_OFFSET(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 1, value, GENMASK(15, 8))
+#define FWCMD_SET_ADDR_LEN(cmd, value)					\
+	le32p_replace_bits((__le32 *)(cmd) + 1, value, GENMASK(23, 16))
+#define FWCMD_SET_ADDR_VALID(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 2, value, BIT(0))
+#define FWCMD_SET_ADDR_NET_TYPE(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 2, value, GENMASK(2, 1))
+#define FWCMD_SET_ADDR_BCN_HIT_COND(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 2, value, GENMASK(4, 3))
+#define FWCMD_SET_ADDR_HIT_RULE(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 2, value, GENMASK(6, 5))
+#define FWCMD_SET_ADDR_BB_SEL(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 2, value, BIT(7))
+#define FWCMD_SET_ADDR_ADDR_MASK(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 2, value, GENMASK(13, 8))
+#define FWCMD_SET_ADDR_MASK_SEL(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 2, value, GENMASK(15, 14))
+#define FWCMD_SET_ADDR_SMA_HASH(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 2, value, GENMASK(23, 16))
+#define FWCMD_SET_ADDR_TMA_HASH(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 2, value, GENMASK(31, 24))
+#define FWCMD_SET_ADDR_BSSID_CAM_IDX(cmd, value)			\
+	le32p_replace_bits((__le32 *)(cmd) + 3, value, GENMASK(5, 0))
+#define FWCMD_SET_ADDR_SMA0(cmd, value)					\
+	le32p_replace_bits((__le32 *)(cmd) + 4, value, GENMASK(7, 0))
+#define FWCMD_SET_ADDR_SMA1(cmd, value)					\
+	le32p_replace_bits((__le32 *)(cmd) + 4, value, GENMASK(15, 8))
+#define FWCMD_SET_ADDR_SMA2(cmd, value)					\
+	le32p_replace_bits((__le32 *)(cmd) + 4, value, GENMASK(23, 16))
+#define FWCMD_SET_ADDR_SMA3(cmd, value)					\
+	le32p_replace_bits((__le32 *)(cmd) + 4, value, GENMASK(31, 24))
+#define FWCMD_SET_ADDR_SMA4(cmd, value)					\
+	le32p_replace_bits((__le32 *)(cmd) + 5, value, GENMASK(7, 0))
+#define FWCMD_SET_ADDR_SMA5(cmd, value)					\
+	le32p_replace_bits((__le32 *)(cmd) + 5, value, GENMASK(15, 8))
+#define FWCMD_SET_ADDR_TMA0(cmd, value)					\
+	le32p_replace_bits((__le32 *)(cmd) + 5, value, GENMASK(23, 16))
+#define FWCMD_SET_ADDR_TMA1(cmd, value)					\
+	le32p_replace_bits((__le32 *)(cmd) + 5, value, GENMASK(31, 24))
+#define FWCMD_SET_ADDR_TMA2(cmd, value)					\
+	le32p_replace_bits((__le32 *)(cmd) + 6, value, GENMASK(7, 0))
+#define FWCMD_SET_ADDR_TMA3(cmd, value)					\
+	le32p_replace_bits((__le32 *)(cmd) + 6, value, GENMASK(15, 8))
+#define FWCMD_SET_ADDR_TMA4(cmd, value)					\
+	le32p_replace_bits((__le32 *)(cmd) + 6, value, GENMASK(23, 16))
+#define FWCMD_SET_ADDR_TMA5(cmd, value)					\
+	le32p_replace_bits((__le32 *)(cmd) + 6, value, GENMASK(31, 24))
+#define FWCMD_SET_ADDR_MACID(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 8, value, GENMASK(7, 0))
+#define FWCMD_SET_ADDR_PORT_INT(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 8, value, GENMASK(10, 8))
+#define FWCMD_SET_ADDR_TSF_SYNC(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 8, value, GENMASK(13, 11))
+#define FWCMD_SET_ADDR_TF_TRS(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 8, value, BIT(14))
+#define FWCMD_SET_ADDR_LSIG_TXOP(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 8, value, BIT(15))
+#define FWCMD_SET_ADDR_TGT_IND(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 8, value, GENMASK(26, 24))
+#define FWCMD_SET_ADDR_FRM_TGT_IND(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 8, value, GENMASK(29, 27))
+#define FWCMD_SET_ADDR_AID12(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(11, 0))
+#define FWCMD_SET_ADDR_AID12_0(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(7, 0))
+#define FWCMD_SET_ADDR_AID12_1(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(11, 8))
+#define FWCMD_SET_ADDR_WOL_PATTERN(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 9, value, BIT(12))
+#define FWCMD_SET_ADDR_WOL_UC(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 9, value, BIT(13))
+#define FWCMD_SET_ADDR_WOL_MAGIC(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 9, value, BIT(14))
+#define FWCMD_SET_ADDR_WAPI(cmd, value)					\
+	le32p_replace_bits((__le32 *)(cmd) + 9, value, BIT(15))
+#define FWCMD_SET_ADDR_SEC_ENT_MODE(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(17, 16))
+#define FWCMD_SET_ADDR_SEC_ENT0_KEYID(cmd, value)			\
+	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(19, 18))
+#define FWCMD_SET_ADDR_SEC_ENT1_KEYID(cmd, value)			\
+	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(21, 20))
+#define FWCMD_SET_ADDR_SEC_ENT2_KEYID(cmd, value)			\
+	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(23, 22))
+#define FWCMD_SET_ADDR_SEC_ENT3_KEYID(cmd, value)			\
+	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(25, 24))
+#define FWCMD_SET_ADDR_SEC_ENT4_KEYID(cmd, value)			\
+	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(27, 26))
+#define FWCMD_SET_ADDR_SEC_ENT5_KEYID(cmd, value)			\
+	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(29, 28))
+#define FWCMD_SET_ADDR_SEC_ENT6_KEYID(cmd, value)			\
+	le32p_replace_bits((__le32 *)(cmd) + 9, value, GENMASK(31, 30))
+#define FWCMD_SET_ADDR_SEC_ENT_VALID(cmd, value)			\
+	le32p_replace_bits((__le32 *)(cmd) + 10, value, GENMASK(7, 0))
+#define FWCMD_SET_ADDR_SEC_ENT0(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 10, value, GENMASK(15, 8))
+#define FWCMD_SET_ADDR_SEC_ENT1(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 10, value, GENMASK(23, 16))
+#define FWCMD_SET_ADDR_SEC_ENT2(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 10, value, GENMASK(31, 24))
+#define FWCMD_SET_ADDR_SEC_ENT3(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 11, value, GENMASK(7, 0))
+#define FWCMD_SET_ADDR_SEC_ENT4(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 11, value, GENMASK(15, 8))
+#define FWCMD_SET_ADDR_SEC_ENT5(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 11, value, GENMASK(23, 16))
+#define FWCMD_SET_ADDR_SEC_ENT6(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 11, value, GENMASK(31, 24))
+#define FWCMD_SET_ADDR_BSSID_IDX(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 12, value, GENMASK(7, 0))
+#define FWCMD_SET_ADDR_BSSID_OFFSET(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 12, value, GENMASK(15, 8))
+#define FWCMD_SET_ADDR_BSSID_LEN(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 12, value, GENMASK(23, 16))
+#define FWCMD_SET_ADDR_BSSID_VALID(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 13, value, BIT(0))
+#define FWCMD_SET_ADDR_BSSID_BB_SEL(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 13, value, BIT(1))
+#define FWCMD_SET_ADDR_BSSID_BSS_COLOR(cmd, value)			\
+	le32p_replace_bits((__le32 *)(cmd) + 13, value, GENMASK(13, 8))
+#define FWCMD_SET_ADDR_BSSID_BSSID0(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 13, value, GENMASK(23, 16))
+#define FWCMD_SET_ADDR_BSSID_BSSID1(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 13, value, GENMASK(31, 24))
+#define FWCMD_SET_ADDR_BSSID_BSSID2(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 14, value, GENMASK(7, 0))
+#define FWCMD_SET_ADDR_BSSID_BSSID3(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 14, value, GENMASK(15, 8))
+#define FWCMD_SET_ADDR_BSSID_BSSID4(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 14, value, GENMASK(23, 16))
+#define FWCMD_SET_ADDR_BSSID_BSSID5(cmd, value)				\
+	le32p_replace_bits((__le32 *)(cmd) + 14, value, GENMASK(31, 24))
 
 int rtw89_cam_init(struct rtw89_dev *rtwdev, struct rtw89_vif *vif);
 void rtw89_cam_deinit(struct rtw89_dev *rtwdev, struct rtw89_vif *vif);
 void rtw89_cam_fill_addr_cam_info(struct rtw89_dev *rtwdev,
-				  struct rtw89_vif *vif,
-				  struct rtw89_sta *rtwsta,
-				  const u8 *scan_mac_addr, u8 *cmd);
+				  struct rtw89_vif *vif, u8 *cmd);
 int rtw89_cam_fill_bssid_cam_info(struct rtw89_dev *rtwdev,
 				  struct rtw89_vif *vif, u8 *cmd);
 int rtw89_cam_sec_key_add(struct rtw89_dev *rtwdev,
diff --git a/drivers/net/wireless/realtek/rtw89/coex.c b/drivers/net/wireless/realtek/rtw89/coex.c
index 9f7d4f8d0c56..abe4b6549ab2 100644
--- a/drivers/net/wireless/realtek/rtw89/coex.c
+++ b/drivers/net/wireless/realtek/rtw89/coex.c
@@ -540,31 +540,8 @@ static void _update_bt_scbd(struct rtw89_dev *rtwdev, bool only_update);
 static void _send_fw_cmd(struct rtw89_dev *rtwdev, u8 h2c_class, u8 h2c_func,
 			 void *param, u16 len)
 {
-	struct rtw89_btc *btc = &rtwdev->btc;
-	struct rtw89_btc_btf_fwinfo *pfwinfo = &btc->fwinfo;
-	struct rtw89_btc_cx *cx = &btc->cx;
-	struct rtw89_btc_wl_info *wl = &cx->wl;
-	int ret;
-
-	if (!wl->status.map.init_ok) {
-		rtw89_debug(rtwdev, RTW89_DBG_BTC,
-			    "[BTC], %s(): return by btc not init!!\n", __func__);
-		pfwinfo->cnt_h2c_fail++;
-		return;
-	} else if ((wl->status.map.rf_off_pre == 1 && wl->status.map.rf_off == 1) ||
-		   (wl->status.map.lps_pre == 1 && wl->status.map.lps == 1)) {
-		rtw89_debug(rtwdev, RTW89_DBG_BTC,
-			    "[BTC], %s(): return by wl off!!\n", __func__);
-		pfwinfo->cnt_h2c_fail++;
-		return;
-	}
-
-	pfwinfo->cnt_h2c++;
-
-	ret = rtw89_fw_h2c_raw_with_hdr(rtwdev, h2c_class, h2c_func, param, len,
-					false, true);
-	if (ret != 0)
-		pfwinfo->cnt_h2c_fail++;
+	rtw89_fw_h2c_raw_with_hdr(rtwdev, h2c_class, h2c_func, param, len,
+				  false, true);
 }
 
 static void _reset_btc_var(struct rtw89_dev *rtwdev, u8 type)
@@ -1118,10 +1095,6 @@ static u32 _chk_btc_report(struct rtw89_dev *rtwdev,
 			diff_t = pcysta->tavg_cycle[CXT_WL] - wl_slot_set;
 			_chk_btc_err(rtwdev, BTC_DCNT_WL_SLOT_DRIFT, diff_t);
 		}
-
-		_chk_btc_err(rtwdev, BTC_DCNT_W1_FREEZE, pcysta->slot_cnt[CXST_W1]);
-		_chk_btc_err(rtwdev, BTC_DCNT_W1_FREEZE, pcysta->slot_cnt[CXST_W1]);
-		_chk_btc_err(rtwdev, BTC_DCNT_CYCLE_FREEZE, (u32)pcysta->cycles);
 	}
 
 	if (rpt_type == BTC_RPT_TYPE_CTRL) {
@@ -1130,18 +1103,6 @@ static u32 _chk_btc_report(struct rtw89_dev *rtwdev,
 		wl->ver_info.fw_coex = prpt->wl_fw_coex_ver;
 		wl->ver_info.fw = prpt->wl_fw_ver;
 		dm->wl_fw_cx_offload = !!(prpt->wl_fw_cx_offload);
-
-		_chk_btc_err(rtwdev, BTC_DCNT_RPT_FREEZE,
-			     pfwinfo->event[BTF_EVNT_RPT]);
-
-		/* To avoid I/O if WL LPS or power-off */
-		if (wl->status.map.lps != BTC_LPS_RF_OFF && !wl->status.map.rf_off) {
-			rtwdev->chip->ops->btc_update_bt_cnt(rtwdev);
-			_chk_btc_err(rtwdev, BTC_DCNT_BTCNT_FREEZE, 0);
-
-			btc->cx.cnt_bt[BTC_BCNT_POLUT] =
-				rtw89_mac_get_plt_cnt(rtwdev, RTW89_MAC_0);
-		}
 	}
 
 	if (rpt_type >= BTC_RPT_TYPE_BT_VER &&
@@ -1635,7 +1596,7 @@ static void _set_rf_trx_para(struct rtw89_dev *rtwdev)
 	_set_bt_rx_gain(rtwdev, para.bt_rx_gain);
 
 	if (bt->enable.now == 0 || wl->status.map.rf_off == 1 ||
-	    wl->status.map.lps == BTC_LPS_RF_OFF)
+	    wl->status.map.lps == 1)
 		wl_stb_chg = 0;
 	else
 		wl_stb_chg = 1;
@@ -4238,16 +4199,16 @@ void rtw89_btc_ntfy_radio_state(struct rtw89_dev *rtwdev, enum btc_rfctrl rf_sta
 	switch (rf_state) {
 	case BTC_RFCTRL_WL_OFF:
 		wl->status.map.rf_off = 1;
-		wl->status.map.lps = BTC_LPS_OFF;
+		wl->status.map.lps = 0;
 		break;
 	case BTC_RFCTRL_FW_CTRL:
 		wl->status.map.rf_off = 0;
-		wl->status.map.lps = BTC_LPS_RF_OFF;
+		wl->status.map.lps = 1;
 		break;
 	case BTC_RFCTRL_WL_ON:
 	default:
 		wl->status.map.rf_off = 0;
-		wl->status.map.lps = BTC_LPS_OFF;
+		wl->status.map.lps = 0;
 		break;
 	}
 
@@ -4533,8 +4494,6 @@ void rtw89_btc_c2h_handle(struct rtw89_dev *rtwdev, struct sk_buff *skb,
 	struct rtw89_btc_btf_fwinfo *pfwinfo = &btc->fwinfo;
 	u8 *buf = &skb->data[RTW89_C2H_HEADER_LEN];
 
-	len -= RTW89_C2H_HEADER_LEN;
-
 	rtw89_debug(rtwdev, RTW89_DBG_BTC,
 		    "[BTC], %s(): C2H BT len:%d class:%d fun:%d\n",
 		    __func__, len, class, func);
@@ -4553,12 +4512,14 @@ void rtw89_btc_c2h_handle(struct rtw89_dev *rtwdev, struct sk_buff *skb,
 		rtw89_debug(rtwdev, RTW89_DBG_BTC,
 			    "[BTC], handle C2H BT INFO with data %8ph\n", buf);
 		btc->cx.cnt_bt[BTC_BCNT_INFOUPDATE]++;
+		rtw89_leave_ps_mode(rtwdev);
 		_update_bt_info(rtwdev, buf, len);
 		break;
 	case BTF_EVNT_BT_SCBD:
 		rtw89_debug(rtwdev, RTW89_DBG_BTC,
 			    "[BTC], handle C2H BT SCBD with data %8ph\n", buf);
 		btc->cx.cnt_bt[BTC_BCNT_SCBDUPDATE]++;
+		rtw89_leave_ps_mode(rtwdev);
 		_update_bt_scbd(rtwdev, false);
 		break;
 	case BTF_EVNT_BT_PSD:
@@ -4804,6 +4765,7 @@ static void _show_bt_profile_info(struct rtw89_dev *rtwdev, struct seq_file *m)
 
 static void _show_bt_info(struct rtw89_dev *rtwdev, struct seq_file *m)
 {
+	const struct rtw89_chip_info *chip = rtwdev->chip;
 	struct rtw89_btc *btc = &rtwdev->btc;
 	struct rtw89_btc_cx *cx = &btc->cx;
 	struct rtw89_btc_bt_info *bt = &cx->bt;
@@ -4811,6 +4773,7 @@ static void _show_bt_info(struct rtw89_dev *rtwdev, struct seq_file *m)
 	struct rtw89_btc_module *module = &btc->mdinfo;
 	struct rtw89_btc_bt_link_info *bt_linfo = &bt->link_info;
 	u8 *afh = bt_linfo->afh_map;
+	u16 polt_cnt = 0;
 
 	if (!(btc->dm.coex_info_map & BTC_COEX_INFO_BT))
 		return;
@@ -4886,11 +4849,17 @@ static void _show_bt_info(struct rtw89_dev *rtwdev, struct seq_file *m)
 		   cx->cnt_bt[BTC_BCNT_INFOUPDATE],
 		   cx->cnt_bt[BTC_BCNT_INFOSAME]);
 
+	if (wl->status.map.lps || wl->status.map.rf_off)
+		return;
+
+	chip->ops->btc_update_bt_cnt(rtwdev);
+	_chk_btc_err(rtwdev, BTC_DCNT_BTCNT_FREEZE, 0);
+
 	seq_printf(m,
 		   " %-15s : Hi-rx = %d, Hi-tx = %d, Lo-rx = %d, Lo-tx = %d (bt_polut_wl_tx = %d)\n",
 		   "[trx_req_cnt]", cx->cnt_bt[BTC_BCNT_HIPRI_RX],
 		   cx->cnt_bt[BTC_BCNT_HIPRI_TX], cx->cnt_bt[BTC_BCNT_LOPRI_RX],
-		   cx->cnt_bt[BTC_BCNT_LOPRI_TX], cx->cnt_bt[BTC_BCNT_POLUT]);
+		   cx->cnt_bt[BTC_BCNT_LOPRI_TX], polt_cnt);
 }
 
 #define CASE_BTC_RSN_STR(e) case BTC_RSN_ ## e: return #e
@@ -5258,6 +5227,8 @@ static void _show_fbtc_cysta(struct rtw89_dev *rtwdev, struct seq_file *m)
 		   pcysta->bcn_cnt[CXBCN_BT_SLOT],
 		   pcysta->bcn_cnt[CXBCN_BT_OK]);
 
+	_chk_btc_err(rtwdev, BTC_DCNT_CYCLE_FREEZE, (u32)pcysta->cycles);
+
 	for (i = 0; i < CXST_MAX; i++) {
 		if (!pcysta->slot_cnt[i])
 			continue;
@@ -5281,6 +5252,9 @@ static void _show_fbtc_cysta(struct rtw89_dev *rtwdev, struct seq_file *m)
 	}
 	seq_puts(m, "\n");
 
+	_chk_btc_err(rtwdev, BTC_DCNT_W1_FREEZE, pcysta->slot_cnt[CXST_W1]);
+	_chk_btc_err(rtwdev, BTC_DCNT_B1_FREEZE, pcysta->slot_cnt[CXST_B1]);
+
 	seq_printf(m, " %-15s : avg_t[wl:%d/bt:%d/lk:%d.%03d]",
 		   "[cycle_time]",
 		   pcysta->tavg_cycle[CXT_WL],
@@ -5632,6 +5606,9 @@ static void _show_summary(struct rtw89_dev *rtwdev, struct seq_file *m)
 			   pfwinfo->event[BTF_EVNT_RPT], prptctrl->rpt_cnt,
 			   prptctrl->rpt_enable, dm->error.val);
 
+		_chk_btc_err(rtwdev, BTC_DCNT_RPT_FREEZE,
+			     pfwinfo->event[BTF_EVNT_RPT]);
+
 		if (dm->error.map.wl_fw_hang)
 			seq_puts(m, " (WL FW Hang!!)");
 		seq_puts(m, "\n");
diff --git a/drivers/net/wireless/realtek/rtw89/coex.h b/drivers/net/wireless/realtek/rtw89/coex.h
index c3a722d259d7..4b4565d15c9e 100644
--- a/drivers/net/wireless/realtek/rtw89/coex.h
+++ b/drivers/net/wireless/realtek/rtw89/coex.h
@@ -130,12 +130,6 @@ enum btc_rfctrl {
 	BTC_RFCTRL_MAX
 };
 
-enum btc_lps_state {
-	BTC_LPS_OFF = 0,
-	BTC_LPS_RF_OFF = 1,
-	BTC_LPS_RF_ON = 2
-};
-
 void rtw89_btc_ntfy_poweron(struct rtw89_dev *rtwdev);
 void rtw89_btc_ntfy_poweroff(struct rtw89_dev *rtwdev);
 void rtw89_btc_ntfy_init(struct rtw89_dev *rtwdev, u8 mode);
diff --git a/drivers/net/wireless/realtek/rtw89/core.c b/drivers/net/wireless/realtek/rtw89/core.c
index a0737eea9f81..d02ec5a735cb 100644
--- a/drivers/net/wireless/realtek/rtw89/core.c
+++ b/drivers/net/wireless/realtek/rtw89/core.c
@@ -1,8 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
 /* Copyright(c) 2019-2020  Realtek Corporation
  */
-#include <linux/ip.h>
-#include <linux/udp.h>
 
 #include "coex.h"
 #include "core.h"
@@ -145,15 +143,20 @@ static void rtw89_get_channel_params(struct cfg80211_chan_def *chandef,
 {
 	struct ieee80211_channel *channel = chandef->chan;
 	enum nl80211_chan_width width = chandef->width;
+	u8 *cch_by_bw = chan_param->cch_by_bw;
 	u32 primary_freq, center_freq;
 	u8 center_chan;
 	u8 bandwidth = RTW89_CHANNEL_WIDTH_20;
 	u8 primary_chan_idx = 0;
+	u8 i;
 
 	center_chan = channel->hw_value;
 	primary_freq = channel->center_freq;
 	center_freq = chandef->center_freq1;
 
+	/* assign the center channel used while 20M bw is selected */
+	cch_by_bw[RTW89_CHANNEL_WIDTH_20] = channel->hw_value;
+
 	switch (width) {
 	case NL80211_CHAN_WIDTH_20_NOHT:
 	case NL80211_CHAN_WIDTH_20:
@@ -180,6 +183,10 @@ static void rtw89_get_channel_params(struct cfg80211_chan_def *chandef,
 				primary_chan_idx = RTW89_SC_20_UPMOST;
 				center_chan -= 6;
 			}
+			/* assign the center channel used
+			 * while 40M bw is selected
+			 */
+			cch_by_bw[RTW89_CHANNEL_WIDTH_40] = center_chan + 4;
 		} else {
 			if (center_freq - primary_freq == 10) {
 				primary_chan_idx = RTW89_SC_20_LOWER;
@@ -188,6 +195,10 @@ static void rtw89_get_channel_params(struct cfg80211_chan_def *chandef,
 				primary_chan_idx = RTW89_SC_20_LOWEST;
 				center_chan += 6;
 			}
+			/* assign the center channel used
+			 * while 40M bw is selected
+			 */
+			cch_by_bw[RTW89_CHANNEL_WIDTH_40] = center_chan - 4;
 		}
 		break;
 	default:
@@ -199,6 +210,12 @@ static void rtw89_get_channel_params(struct cfg80211_chan_def *chandef,
 	chan_param->primary_chan = channel->hw_value;
 	chan_param->bandwidth = bandwidth;
 	chan_param->pri_ch_idx = primary_chan_idx;
+
+	/* assign the center channel used while current bw is selected */
+	cch_by_bw[bandwidth] = center_chan;
+
+	for (i = bandwidth + 1; i <= RTW89_MAX_CHANNEL_WIDTH; i++)
+		cch_by_bw[i] = 0;
 }
 
 void rtw89_set_channel(struct rtw89_dev *rtwdev)
@@ -211,6 +228,7 @@ void rtw89_set_channel(struct rtw89_dev *rtwdev)
 	u8 center_chan, bandwidth;
 	u8 band_type;
 	bool band_changed;
+	u8 i;
 
 	rtw89_get_channel_params(&hw->conf.chandef, &ch_param);
 	if (WARN(ch_param.center_chan == 0, "Invalid channel\n"))
@@ -224,7 +242,6 @@ void rtw89_set_channel(struct rtw89_dev *rtwdev)
 
 	hal->current_band_width = bandwidth;
 	hal->current_channel = center_chan;
-	hal->prev_primary_channel = hal->current_primary_channel;
 	hal->current_primary_channel = ch_param.primary_chan;
 	hal->current_band_type = band_type;
 
@@ -243,6 +260,9 @@ void rtw89_set_channel(struct rtw89_dev *rtwdev)
 		break;
 	}
 
+	for (i = RTW89_CHANNEL_WIDTH_20; i <= RTW89_MAX_CHANNEL_WIDTH; i++)
+		hal->cch_by_bw[i] = ch_param.cch_by_bw[i];
+
 	rtw89_chip_set_channel_prepare(rtwdev, &bak);
 
 	chip->ops->set_channel(rtwdev, &ch_param);
@@ -861,11 +881,8 @@ static void rtw89_core_parse_phy_status_ie01(struct rtw89_dev *rtwdev, u8 *addr,
 {
 	s16 cfo;
 
-	phy_ppdu->chan_idx = RTW89_GET_PHY_STS_IE01_CH_IDX(addr);
-	if (phy_ppdu->rate < RTW89_HW_RATE_OFDM6)
-		return;
 	/* sign conversion for S(12,2) */
-	cfo = sign_extend32(RTW89_GET_PHY_STS_IE01_CFO(addr), 11);
+	cfo = sign_extend32(RTW89_GET_PHY_STS_IE0_CFO(addr), 11);
 	rtw89_phy_cfo_parse(rtwdev, cfo, phy_ppdu);
 }
 
@@ -891,7 +908,6 @@ static void rtw89_core_update_phy_ppdu(struct rtw89_rx_phy_ppdu *phy_ppdu)
 	s8 *rssi = phy_ppdu->rssi;
 	u8 *buf = phy_ppdu->buf;
 
-	phy_ppdu->ie = RTW89_GET_PHY_STS_IE_MAP(buf);
 	phy_ppdu->rssi_avg = RTW89_GET_PHY_STS_RSSI_AVG(buf);
 	rssi[RF_PATH_A] = RTW89_RSSI_RAW_TO_DBM(RTW89_GET_PHY_STS_RSSI_A(buf));
 	rssi[RF_PATH_B] = RTW89_RSSI_RAW_TO_DBM(RTW89_GET_PHY_STS_RSSI_B(buf));
@@ -920,9 +936,8 @@ static int rtw89_core_rx_parse_phy_sts(struct rtw89_dev *rtwdev,
 	u16 ie_len;
 	u8 *pos, *end;
 
-	/* mark invalid reports and bypass them */
-	if (phy_ppdu->ie < RTW89_CCK_PKT)
-		return -EINVAL;
+	if (!phy_ppdu->to_self)
+		return 0;
 
 	pos = (u8 *)phy_ppdu->buf + PHY_STS_HDR_LEN;
 	end = (u8 *)phy_ppdu->buf + phy_ppdu->len;
@@ -985,7 +1000,9 @@ static bool rtw89_core_rx_ppdu_match(struct rtw89_dev *rtwdev,
 	data_rate_mode = GET_DATA_RATE_MODE(data_rate);
 	if (data_rate_mode == DATA_RATE_MODE_NON_HT) {
 		rate_idx = GET_DATA_RATE_NOT_HT_IDX(data_rate);
-		/* rate_idx is still hardware value here */
+		/* No 4 CCK rates for 5G */
+		if (status->band == NL80211_BAND_5GHZ)
+			rate_idx -= 4;
 	} else if (data_rate_mode == DATA_RATE_MODE_HT) {
 		rate_idx = GET_DATA_RATE_HT_IDX(data_rate);
 	} else if (data_rate_mode == DATA_RATE_MODE_VHT) {
@@ -1064,29 +1081,6 @@ static void rtw89_core_rx_stats(struct rtw89_dev *rtwdev,
 	rtw89_iterate_vifs_bh(rtwdev, rtw89_vif_rx_stats_iter, &iter_data);
 }
 
-static void rtw89_correct_cck_chan(struct rtw89_dev *rtwdev,
-				   struct ieee80211_rx_status *status)
-{
-	u16 chan = rtwdev->hal.prev_primary_channel;
-	u8 band = chan <= 14 ? NL80211_BAND_2GHZ : NL80211_BAND_5GHZ;
-
-	if (status->band != NL80211_BAND_2GHZ &&
-	    status->encoding == RX_ENC_LEGACY &&
-	    status->rate_idx < RTW89_HW_RATE_OFDM6) {
-		status->freq = ieee80211_channel_to_frequency(chan, band);
-		status->band = band;
-	}
-}
-
-static void rtw89_core_hw_to_sband_rate(struct ieee80211_rx_status *rx_status)
-{
-	if (rx_status->band == NL80211_BAND_2GHZ ||
-	    rx_status->encoding != RX_ENC_LEGACY)
-		return;
-	/* No 4 CCK rates for non-2G */
-	rx_status->rate_idx -= 4;
-}
-
 static void rtw89_core_rx_pending_skb(struct rtw89_dev *rtwdev,
 				      struct rtw89_rx_phy_ppdu *phy_ppdu,
 				      struct rtw89_rx_desc_info *desc_info,
@@ -1105,8 +1099,6 @@ static void rtw89_core_rx_pending_skb(struct rtw89_dev *rtwdev,
 		rx_status = IEEE80211_SKB_RXCB(skb_ppdu);
 		if (rtw89_core_rx_ppdu_match(rtwdev, desc_info, rx_status))
 			rtw89_chip_query_ppdu(rtwdev, phy_ppdu, rx_status);
-		rtw89_correct_cck_chan(rtwdev, rx_status);
-		rtw89_core_hw_to_sband_rate(rx_status);
 		rtw89_core_rx_stats(rtwdev, phy_ppdu, desc_info, skb_ppdu);
 		ieee80211_rx_napi(rtwdev->hw, NULL, skb_ppdu, &rtwdev->napi);
 		rtwdev->napi_budget_countdown--;
@@ -1120,7 +1112,6 @@ static void rtw89_core_rx_process_ppdu_sts(struct rtw89_dev *rtwdev,
 	struct rtw89_rx_phy_ppdu phy_ppdu = {.buf = skb->data, .valid = false,
 					     .len = skb->len,
 					     .to_self = desc_info->addr1_match,
-					     .rate = desc_info->data_rate,
 					     .mac_id = desc_info->mac_id};
 	int ret;
 
@@ -1276,7 +1267,12 @@ static void rtw89_core_update_rx_status(struct rtw89_dev *rtwdev,
 	if (data_rate_mode == DATA_RATE_MODE_NON_HT) {
 		rx_status->encoding = RX_ENC_LEGACY;
 		rx_status->rate_idx = GET_DATA_RATE_NOT_HT_IDX(data_rate);
-		/* convert rate_idx after we get the correct band */
+		/* No 4 CCK rates for 5G */
+		if (rx_status->band == NL80211_BAND_5GHZ)
+			rx_status->rate_idx -= 4;
+		if (rtwdev->scanning)
+			rx_status->rate_idx = min_t(u8, rx_status->rate_idx,
+						    ARRAY_SIZE(rtw89_bitrates) - 5);
 	} else if (data_rate_mode == DATA_RATE_MODE_HT) {
 		rx_status->encoding = RX_ENC_HT;
 		rx_status->rate_idx = GET_DATA_RATE_HT_IDX(data_rate);
@@ -1328,13 +1324,10 @@ static void rtw89_core_flush_ppdu_rx_queue(struct rtw89_dev *rtwdev,
 {
 	struct rtw89_ppdu_sts_info *ppdu_sts = &rtwdev->ppdu_sts;
 	u8 band = desc_info->bb_sel ? RTW89_PHY_1 : RTW89_PHY_0;
-	struct ieee80211_rx_status *rx_status;
 	struct sk_buff *skb_ppdu, *tmp;
 
 	skb_queue_walk_safe(&ppdu_sts->rx_queue[band], skb_ppdu, tmp) {
 		skb_unlink(skb_ppdu, &ppdu_sts->rx_queue[band]);
-		rx_status = IEEE80211_SKB_RXCB(skb_ppdu);
-		rtw89_core_hw_to_sband_rate(rx_status);
 		rtw89_core_rx_stats(rtwdev, NULL, desc_info, skb_ppdu);
 		ieee80211_rx_napi(rtwdev->hw, NULL, skb_ppdu, &rtwdev->napi);
 		rtwdev->napi_budget_countdown--;
@@ -1367,7 +1360,6 @@ void rtw89_core_rx(struct rtw89_dev *rtwdev,
 	    BIT(desc_info->frame_type) & PPDU_FILTER_BITMAP) {
 		skb_queue_tail(&ppdu_sts->rx_queue[band], skb);
 	} else {
-		rtw89_core_hw_to_sband_rate(rx_status);
 		rtw89_core_rx_stats(rtwdev, NULL, desc_info, skb);
 		ieee80211_rx_napi(rtwdev->hw, NULL, skb, &rtwdev->napi);
 		rtwdev->napi_budget_countdown--;
@@ -1833,8 +1825,7 @@ int rtw89_core_sta_add(struct rtw89_dev *rtwdev,
 	ewma_rssi_init(&rtwsta->avg_rssi);
 
 	if (vif->type == NL80211_IFTYPE_STATION) {
-		/* for station mode, assign the mac_id from itself */
-		rtwsta->mac_id = rtwvif->mac_id;
+		rtwvif->mgd.ap = sta;
 		rtw89_btc_ntfy_role_info(rtwdev, rtwvif, rtwsta,
 					 BTC_ROLE_MSTS_STA_CONN_START);
 		rtw89_chip_rfk_channel(rtwdev);
@@ -1860,7 +1851,6 @@ int rtw89_core_sta_disconnect(struct rtw89_dev *rtwdev,
 			      struct ieee80211_sta *sta)
 {
 	struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv;
-	struct rtw89_sta *rtwsta = (struct rtw89_sta *)sta->drv_priv;
 	int ret;
 
 	rtw89_mac_bf_monitor_calc(rtwdev, sta, true);
@@ -1882,7 +1872,7 @@ int rtw89_core_sta_disconnect(struct rtw89_dev *rtwdev,
 	}
 
 	/* update cam aid mac_id net_type */
-	rtw89_fw_h2c_cam(rtwdev, rtwvif, rtwsta, NULL);
+	rtw89_fw_h2c_cam(rtwdev, rtwvif);
 	if (ret) {
 		rtw89_warn(rtwdev, "failed to send h2c cam\n");
 		return ret;
@@ -1907,6 +1897,10 @@ int rtw89_core_sta_assoc(struct rtw89_dev *rtwdev,
 		return ret;
 	}
 
+	/* for station mode, assign the mac_id from itself */
+	if (vif->type == NL80211_IFTYPE_STATION)
+		rtwsta->mac_id = rtwvif->mac_id;
+
 	ret = rtw89_fw_h2c_join_info(rtwdev, rtwvif, 0);
 	if (ret) {
 		rtw89_warn(rtwdev, "failed to send h2c join info\n");
@@ -1914,7 +1908,7 @@ int rtw89_core_sta_assoc(struct rtw89_dev *rtwdev,
 	}
 
 	/* update cam aid mac_id net_type */
-	rtw89_fw_h2c_cam(rtwdev, rtwvif, rtwsta, NULL);
+	rtw89_fw_h2c_cam(rtwdev, rtwvif);
 	if (ret) {
 		rtw89_warn(rtwdev, "failed to send h2c cam\n");
 		return ret;
@@ -2121,8 +2115,7 @@ static void rtw89_init_he_cap(struct rtw89_dev *rtwdev,
 				  IEEE80211_HE_PHY_CAP9_RX_1024_QAM_LESS_THAN_242_TONE_RU |
 				  IEEE80211_HE_PHY_CAP9_RX_FULL_BW_SU_USING_MU_WITH_COMP_SIGB |
 				  IEEE80211_HE_PHY_CAP9_RX_FULL_BW_SU_USING_MU_WITH_NON_COMP_SIGB |
-				  u8_encode_bits(IEEE80211_HE_PHY_CAP9_NOMINAL_PKT_PADDING_16US,
-						 IEEE80211_HE_PHY_CAP9_NOMINAL_PKT_PADDING_MASK);
+				  IEEE80211_HE_PHY_CAP9_NOMIMAL_PKT_PADDING_16US;
 		if (i == NL80211_IFTYPE_STATION)
 			phy_cap_info[9] |= IEEE80211_HE_PHY_CAP9_TX_1024_QAM_LESS_THAN_242_TONE_RU;
 		he_cap->he_mcs_nss_supp.rx_mcs_80 = cpu_to_le16(mcs_map);
diff --git a/drivers/net/wireless/realtek/rtw89/core.h b/drivers/net/wireless/realtek/rtw89/core.h
index 7c84556ec4ad..048855e05697 100644
--- a/drivers/net/wireless/realtek/rtw89/core.h
+++ b/drivers/net/wireless/realtek/rtw89/core.h
@@ -411,13 +411,12 @@ enum rtw89_regulation_type {
 	RTW89_NA	= 4,
 	RTW89_IC	= 5,
 	RTW89_KCC	= 6,
-	RTW89_ACMA	= 7,
-	RTW89_NCC	= 8,
-	RTW89_MEXICO	= 9,
-	RTW89_CHILE	= 10,
+	RTW89_NCC	= 7,
+	RTW89_CHILE	= 8,
+	RTW89_ACMA	= 9,
+	RTW89_MEXICO	= 10,
 	RTW89_UKRAINE	= 11,
 	RTW89_CN	= 12,
-	RTW89_QATAR	= 13,
 	RTW89_REGD_NUM,
 };
 
@@ -473,9 +472,6 @@ struct rtw89_rx_phy_ppdu {
 	u8 rssi_avg;
 	s8 rssi[RF_PATH_MAX];
 	u8 mac_id;
-	u8 chan_idx;
-	u8 ie;
-	u16 rate;
 	bool to_self;
 	bool valid;
 };
@@ -547,6 +543,7 @@ enum rtw89_ps_mode {
 	RTW89_PS_MODE_PWR_GATED	= 3,
 };
 
+#define RTW89_MAX_CHANNEL_WIDTH RTW89_CHANNEL_WIDTH_80
 #define RTW89_2G_BW_NUM (RTW89_CHANNEL_WIDTH_40 + 1)
 #define RTW89_5G_BW_NUM (RTW89_CHANNEL_WIDTH_80 + 1)
 #define RTW89_PPE_BW_NUM (RTW89_CHANNEL_WIDTH_80 + 1)
@@ -573,6 +570,7 @@ struct rtw89_channel_params {
 	u8 primary_chan;
 	u8 bandwidth;
 	u8 pri_ch_idx;
+	u8 cch_by_bw[RTW89_MAX_CHANNEL_WIDTH + 1];
 };
 
 struct rtw89_channel_help_params {
@@ -805,7 +803,6 @@ enum rtw89_btc_bt_state_cnt {
 	BTC_BCNT_HIPRI_RX,
 	BTC_BCNT_LOPRI_TX,
 	BTC_BCNT_LOPRI_RX,
-	BTC_BCNT_POLUT,
 	BTC_BCNT_RATECHG,
 	BTC_BCNT_NUM
 };
@@ -1868,6 +1865,7 @@ struct rtw89_addr_cam_entry {
 	u8 wapi		: 1;
 	u8 mask_sel	: 2;
 	u8 bssid_cam_idx: 6;
+	u8 tma[ETH_ALEN];
 	u8 sma[ETH_ALEN];
 
 	u8 sec_ent_mode;
@@ -1936,6 +1934,14 @@ struct rtw89_vif {
 	bool wowlan_magic;
 	bool is_hesta;
 	bool last_a_ctrl;
+	union {
+		struct {
+			struct ieee80211_sta *ap;
+		} mgd;
+		struct {
+			struct list_head sta_list;
+		} ap;
+	};
 	struct rtw89_addr_cam_entry addr_cam;
 	struct rtw89_bssid_cam_entry bssid_cam;
 	struct ieee80211_tx_queue_params tx_params[IEEE80211_NUM_ACS];
@@ -2303,7 +2309,8 @@ struct rtw89_fw_suit {
 	RTW89_FW_VER_CODE((s)->major_ver, (s)->minor_ver, (s)->sub_ver, (s)->sub_idex)
 
 struct rtw89_fw_info {
-	const struct firmware *firmware;
+	const void *firmware;
+	size_t firmware_size;
 	struct rtw89_dev *rtwdev;
 	struct completion completion;
 	u8 h2c_seq;
@@ -2348,11 +2355,14 @@ struct rtw89_hal {
 	u32 rx_fltr;
 	u8 cv;
 	u8 current_channel;
-	u8 prev_primary_channel;
 	u8 current_primary_channel;
 	enum rtw89_subband current_subband;
 	u8 current_band_width;
 	u8 current_band_type;
+	/* center channel for different available bandwidth,
+	 * val of (bw > current_band_width) is invalid
+	 */
+	u8 cch_by_bw[RTW89_MAX_CHANNEL_WIDTH + 1];
 	u32 sw_amsdu_max_size;
 	u32 antenna_tx;
 	u32 antenna_rx;
@@ -3118,16 +3128,6 @@ static inline struct ieee80211_sta *rtwsta_to_sta(struct rtw89_sta *rtwsta)
 	return container_of(p, struct ieee80211_sta, drv_priv);
 }
 
-static inline struct ieee80211_sta *rtwsta_to_sta_safe(struct rtw89_sta *rtwsta)
-{
-	return rtwsta ? rtwsta_to_sta(rtwsta) : NULL;
-}
-
-static inline struct rtw89_sta *sta_to_rtwsta_safe(struct ieee80211_sta *sta)
-{
-	return sta ? (struct rtw89_sta *)sta->drv_priv : NULL;
-}
-
 static inline
 void rtw89_chip_set_channel_prepare(struct rtw89_dev *rtwdev,
 				    struct rtw89_channel_help_params *p)
diff --git a/drivers/net/wireless/realtek/rtw89/debug.c b/drivers/net/wireless/realtek/rtw89/debug.c
index 22bd1d03e722..29eb188c888c 100644
--- a/drivers/net/wireless/realtek/rtw89/debug.c
+++ b/drivers/net/wireless/realtek/rtw89/debug.c
@@ -2,8 +2,6 @@
 /* Copyright(c) 2019-2020  Realtek Corporation
  */
 
-#include <linux/vmalloc.h>
-
 #include "coex.h"
 #include "debug.h"
 #include "fw.h"
@@ -725,7 +723,6 @@ rtw89_debug_priv_mac_mem_dump_select(struct file *filp,
 }
 
 static const u32 mac_mem_base_addr_table[RTW89_MAC_MEM_MAX] = {
-	[RTW89_MAC_MEM_AXIDMA]	        = AXIDMA_BASE_ADDR,
 	[RTW89_MAC_MEM_SHARED_BUF]	= SHARED_BUF_BASE_ADDR,
 	[RTW89_MAC_MEM_DMAC_TBL]	= DMAC_TBL_BASE_ADDR,
 	[RTW89_MAC_MEM_SHCUT_MACHDR]	= SHCUT_MACHDR_BASE_ADDR,
@@ -738,10 +735,6 @@ static const u32 mac_mem_base_addr_table[RTW89_MAC_MEM_MAX] = {
 	[RTW89_MAC_MEM_BA_CAM]		= BA_CAM_BASE_ADDR,
 	[RTW89_MAC_MEM_BCN_IE_CAM0]	= BCN_IE_CAM0_BASE_ADDR,
 	[RTW89_MAC_MEM_BCN_IE_CAM1]	= BCN_IE_CAM1_BASE_ADDR,
-	[RTW89_MAC_MEM_TXD_FIFO_0]	= TXD_FIFO_0_BASE_ADDR,
-	[RTW89_MAC_MEM_TXD_FIFO_1]	= TXD_FIFO_1_BASE_ADDR,
-	[RTW89_MAC_MEM_TXDATA_FIFO_0]	= TXDATA_FIFO_0_BASE_ADDR,
-	[RTW89_MAC_MEM_TXDATA_FIFO_1]	= TXDATA_FIFO_1_BASE_ADDR,
 };
 
 static void rtw89_debug_dump_mac_mem(struct seq_file *m,
@@ -821,7 +814,7 @@ rtw89_debug_priv_mac_dbg_port_dump_select(struct file *filp,
 		return -EINVAL;
 	}
 
-	enable = set != 0;
+	enable = set == 0 ? false : true;
 	switch (sel) {
 	case 0:
 		debugfs_priv->dbgpkg_en.ss_dbg = enable;
@@ -2287,7 +2280,7 @@ static void rtw89_sta_info_get_iter(void *data, struct ieee80211_sta *sta)
 	switch (status->encoding) {
 	case RX_ENC_LEGACY:
 		seq_printf(m, "Legacy %d", status->rate_idx +
-			   (status->band != NL80211_BAND_2GHZ ? 4 : 0));
+			   (status->band == NL80211_BAND_5GHZ ? 4 : 0));
 		break;
 	case RX_ENC_HT:
 		seq_printf(m, "HT MCS-%d%s", status->rate_idx,
diff --git a/drivers/net/wireless/realtek/rtw89/fw.c b/drivers/net/wireless/realtek/rtw89/fw.c
index 8a57b75b07c0..6568e2f60529 100644
--- a/drivers/net/wireless/realtek/rtw89/fw.c
+++ b/drivers/net/wireless/realtek/rtw89/fw.c
@@ -123,8 +123,8 @@ int rtw89_mfw_recognize(struct rtw89_dev *rtwdev, enum rtw89_fw_type type,
 			struct rtw89_fw_suit *fw_suit)
 {
 	struct rtw89_fw_info *fw_info = &rtwdev->fw;
-	const u8 *mfw = fw_info->firmware->data;
-	u32 mfw_len = fw_info->firmware->size;
+	const u8 *mfw = fw_info->firmware;
+	u32 mfw_len = fw_info->firmware_size;
 	const struct rtw89_mfw_hdr *mfw_hdr = (const struct rtw89_mfw_hdr *)mfw;
 	const struct rtw89_mfw_info *mfw_info;
 	int i;
@@ -489,7 +489,10 @@ static void rtw89_load_firmware_cb(const struct firmware *firmware, void *contex
 		return;
 	}
 
-	fw->firmware = firmware;
+	fw->firmware = vmalloc(firmware->size);
+	if (fw->firmware)
+		memcpy((void *)fw->firmware, firmware->data, firmware->size);
+	release_firmware(firmware);
 	complete_all(&fw->completion);
 }
 
@@ -518,13 +521,14 @@ void rtw89_unload_firmware(struct rtw89_dev *rtwdev)
 
 	rtw89_wait_firmware_completion(rtwdev);
 
-	if (fw->firmware)
-		release_firmware(fw->firmware);
+	if (fw->firmware) {
+		vfree(fw->firmware);
+		fw->firmware = NULL;
+	}
 }
 
 #define H2C_CAM_LEN 60
-int rtw89_fw_h2c_cam(struct rtw89_dev *rtwdev, struct rtw89_vif *rtwvif,
-		     struct rtw89_sta *rtwsta, const u8 *scan_mac_addr)
+int rtw89_fw_h2c_cam(struct rtw89_dev *rtwdev, struct rtw89_vif *rtwvif)
 {
 	struct sk_buff *skb;
 
@@ -534,7 +538,7 @@ int rtw89_fw_h2c_cam(struct rtw89_dev *rtwdev, struct rtw89_vif *rtwvif,
 		return -ENOMEM;
 	}
 	skb_put(skb, H2C_CAM_LEN);
-	rtw89_cam_fill_addr_cam_info(rtwdev, rtwvif, rtwsta, scan_mac_addr, skb->data);
+	rtw89_cam_fill_addr_cam_info(rtwdev, rtwvif, skb->data);
 	rtw89_cam_fill_bssid_cam_info(rtwdev, rtwvif, skb->data);
 
 	rtw89_h2c_pkt_set_hdr(rtwdev, skb, FWCMD_TYPE_H2C,
@@ -781,7 +785,7 @@ static void __get_sta_he_pkt_padding(struct rtw89_dev *rtwdev,
 	if (!ppe_th) {
 		u8 pad;
 
-		pad = FIELD_GET(IEEE80211_HE_PHY_CAP9_NOMINAL_PKT_PADDING_MASK,
+		pad = FIELD_GET(IEEE80211_HE_PHY_CAP9_NOMIMAL_PKT_PADDING_MASK,
 				sta->he_cap.he_cap_elem.phy_cap_info[9]);
 
 		for (i = 0; i < RTW89_PPE_BW_NUM; i++)
diff --git a/drivers/net/wireless/realtek/rtw89/fw.h b/drivers/net/wireless/realtek/rtw89/fw.h
index 2d36dc27222f..36e8d0da6c1e 100644
--- a/drivers/net/wireless/realtek/rtw89/fw.h
+++ b/drivers/net/wireless/realtek/rtw89/fw.h
@@ -156,1125 +156,863 @@ struct rtw89_h2creg_sch_tx_en {
 	u16 rsvd:15;
 } __packed;
 
-static inline void RTW89_SET_FWCMD_RA_IS_DIS(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(0));
-}
-
-static inline void RTW89_SET_FWCMD_RA_MODE(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(5, 1));
-}
-
-static inline void RTW89_SET_FWCMD_RA_BW_CAP(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(7, 6));
-}
-
-static inline void RTW89_SET_FWCMD_RA_MACID(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(15, 8));
-}
-
-static inline void RTW89_SET_FWCMD_RA_DCM(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(16));
-}
-
-static inline void RTW89_SET_FWCMD_RA_ER(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(17));
-}
-
-static inline void RTW89_SET_FWCMD_RA_INIT_RATE_LV(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(19, 18));
-}
-
-static inline void RTW89_SET_FWCMD_RA_UPD_ALL(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(20));
-}
-
-static inline void RTW89_SET_FWCMD_RA_SGI(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(21));
-}
-
-static inline void RTW89_SET_FWCMD_RA_LDPC(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(22));
-}
-
-static inline void RTW89_SET_FWCMD_RA_STBC(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(23));
-}
-
-static inline void RTW89_SET_FWCMD_RA_SS_NUM(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(26, 24));
-}
-
-static inline void RTW89_SET_FWCMD_RA_GILTF(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(29, 27));
-}
-
-static inline void RTW89_SET_FWCMD_RA_UPD_BW_NSS_MASK(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(30));
-}
-
-static inline void RTW89_SET_FWCMD_RA_UPD_MASK(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(31));
-}
-
-static inline void RTW89_SET_FWCMD_RA_MASK_0(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x01, val, GENMASK(7, 0));
-}
-
-static inline void RTW89_SET_FWCMD_RA_MASK_1(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x01, val, GENMASK(15, 8));
-}
-
-static inline void RTW89_SET_FWCMD_RA_MASK_2(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x01, val, GENMASK(23, 16));
-}
-
-static inline void RTW89_SET_FWCMD_RA_MASK_3(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x01, val, GENMASK(31, 24));
-}
-
-static inline void RTW89_SET_FWCMD_RA_MASK_4(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x02, val, GENMASK(7, 0));
-}
-
-static inline void RTW89_SET_FWCMD_RA_BFEE_CSI_CTL(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x02, val, BIT(31));
-}
-
-static inline void RTW89_SET_FWCMD_RA_BAND_NUM(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x03, val, GENMASK(7, 0));
-}
-
-static inline void RTW89_SET_FWCMD_RA_RA_CSI_RATE_EN(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x03, val, BIT(8));
-}
-
-static inline void RTW89_SET_FWCMD_RA_FIXED_CSI_RATE_EN(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x03, val, BIT(9));
-}
-
-static inline void RTW89_SET_FWCMD_RA_CR_TBL_SEL(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x03, val, BIT(10));
-}
-
-static inline void RTW89_SET_FWCMD_RA_FIXED_CSI_MCS_SS_IDX(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x03, val, GENMASK(23, 16));
-}
-
-static inline void RTW89_SET_FWCMD_RA_FIXED_CSI_MODE(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x03, val, GENMASK(25, 24));
-}
-
-static inline void RTW89_SET_FWCMD_RA_FIXED_CSI_GI_LTF(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x03, val, GENMASK(28, 26));
-}
-
-static inline void RTW89_SET_FWCMD_RA_FIXED_CSI_BW(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x03, val, GENMASK(31, 29));
-}
-
-static inline void RTW89_SET_FWCMD_SEC_IDX(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(7, 0));
-}
-
-static inline void RTW89_SET_FWCMD_SEC_OFFSET(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(15, 8));
-}
-
-static inline void RTW89_SET_FWCMD_SEC_LEN(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(23, 16));
-}
-
-static inline void RTW89_SET_FWCMD_SEC_TYPE(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x01, val, GENMASK(3, 0));
-}
-
-static inline void RTW89_SET_FWCMD_SEC_EXT_KEY(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x01, val, BIT(4));
-}
-
-static inline void RTW89_SET_FWCMD_SEC_SPP_MODE(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x01, val, BIT(5));
-}
-
-static inline void RTW89_SET_FWCMD_SEC_KEY0(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x02, val, GENMASK(31, 0));
-}
-
-static inline void RTW89_SET_FWCMD_SEC_KEY1(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x03, val, GENMASK(31, 0));
-}
-
-static inline void RTW89_SET_FWCMD_SEC_KEY2(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x04, val, GENMASK(31, 0));
-}
-
-static inline void RTW89_SET_FWCMD_SEC_KEY3(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x05, val, GENMASK(31, 0));
-}
-
-static inline void RTW89_SET_EDCA_SEL(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(1, 0));
-}
-
-static inline void RTW89_SET_EDCA_BAND(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(3));
-}
-
-static inline void RTW89_SET_EDCA_WMM(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(4));
-}
-
-static inline void RTW89_SET_EDCA_AC(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(6, 5));
-}
-
-static inline void RTW89_SET_EDCA_PARAM(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)(cmd) + 0x01, val, GENMASK(31, 0));
-}
+#define RTW89_SET_FWCMD_RA_IS_DIS(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(0))
+#define RTW89_SET_FWCMD_RA_MODE(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(5, 1))
+#define RTW89_SET_FWCMD_RA_BW_CAP(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(7, 6))
+#define RTW89_SET_FWCMD_RA_MACID(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(15, 8))
+#define RTW89_SET_FWCMD_RA_DCM(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(16))
+#define RTW89_SET_FWCMD_RA_ER(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(17))
+#define RTW89_SET_FWCMD_RA_INIT_RATE_LV(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(19, 18))
+#define RTW89_SET_FWCMD_RA_UPD_ALL(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(20))
+#define RTW89_SET_FWCMD_RA_SGI(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(21))
+#define RTW89_SET_FWCMD_RA_LDPC(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(22))
+#define RTW89_SET_FWCMD_RA_STBC(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(23))
+#define RTW89_SET_FWCMD_RA_SS_NUM(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(26, 24))
+#define RTW89_SET_FWCMD_RA_GILTF(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(29, 27))
+#define RTW89_SET_FWCMD_RA_UPD_BW_NSS_MASK(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(30))
+#define RTW89_SET_FWCMD_RA_UPD_MASK(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(31))
+#define RTW89_SET_FWCMD_RA_MASK_0(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x01, val, GENMASK(7, 0))
+#define RTW89_SET_FWCMD_RA_MASK_1(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x01, val, GENMASK(15, 8))
+#define RTW89_SET_FWCMD_RA_MASK_2(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x01, val, GENMASK(23, 16))
+#define RTW89_SET_FWCMD_RA_MASK_3(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x01, val, GENMASK(31, 24))
+#define RTW89_SET_FWCMD_RA_MASK_4(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x02, val, GENMASK(7, 0))
+#define RTW89_SET_FWCMD_RA_BFEE_CSI_CTL(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x02, val, BIT(31))
+#define RTW89_SET_FWCMD_RA_BAND_NUM(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x03, val, GENMASK(7, 0))
+#define RTW89_SET_FWCMD_RA_RA_CSI_RATE_EN(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x03, val, BIT(8))
+#define RTW89_SET_FWCMD_RA_FIXED_CSI_RATE_EN(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x03, val, BIT(9))
+#define RTW89_SET_FWCMD_RA_CR_TBL_SEL(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x03, val, BIT(10))
+#define RTW89_SET_FWCMD_RA_FIXED_CSI_MCS_SS_IDX(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x03, val, GENMASK(23, 16))
+#define RTW89_SET_FWCMD_RA_FIXED_CSI_MODE(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x03, val, GENMASK(25, 24))
+#define RTW89_SET_FWCMD_RA_FIXED_CSI_GI_LTF(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x03, val, GENMASK(28, 26))
+#define RTW89_SET_FWCMD_RA_FIXED_CSI_BW(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x03, val, GENMASK(31, 29))
+
+#define RTW89_SET_FWCMD_SEC_IDX(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(7, 0))
+#define RTW89_SET_FWCMD_SEC_OFFSET(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(15, 8))
+#define RTW89_SET_FWCMD_SEC_LEN(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(23, 16))
+#define RTW89_SET_FWCMD_SEC_TYPE(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x01, val, GENMASK(3, 0))
+#define RTW89_SET_FWCMD_SEC_EXT_KEY(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x01, val, BIT(4))
+#define RTW89_SET_FWCMD_SEC_SPP_MODE(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x01, val, BIT(5))
+#define RTW89_SET_FWCMD_SEC_KEY0(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x02, val, GENMASK(31, 0))
+#define RTW89_SET_FWCMD_SEC_KEY1(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x03, val, GENMASK(31, 0))
+#define RTW89_SET_FWCMD_SEC_KEY2(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x04, val, GENMASK(31, 0))
+#define RTW89_SET_FWCMD_SEC_KEY3(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x05, val, GENMASK(31, 0))
+
+#define RTW89_SET_EDCA_SEL(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(1, 0))
+#define RTW89_SET_EDCA_BAND(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(3))
+#define RTW89_SET_EDCA_WMM(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, BIT(4))
+#define RTW89_SET_EDCA_AC(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x00, val, GENMASK(6, 5))
+#define RTW89_SET_EDCA_PARAM(cmd, val) \
+	le32p_replace_bits((__le32 *)(cmd) + 0x01, val, GENMASK(31, 0))
 #define FW_EDCA_PARAM_TXOPLMT_MSK GENMASK(26, 16)
 #define FW_EDCA_PARAM_CWMAX_MSK GENMASK(15, 12)
 #define FW_EDCA_PARAM_CWMIN_MSK GENMASK(11, 8)
 #define FW_EDCA_PARAM_AIFS_MSK GENMASK(7, 0)
 
 #define GET_FWSECTION_HDR_SEC_SIZE(fwhdr)	\
-	le32_get_bits(*((const __le32 *)(fwhdr) + 1), GENMASK(23, 0))
+	le32_get_bits(*((__le32 *)(fwhdr) + 1), GENMASK(23, 0))
 #define GET_FWSECTION_HDR_CHECKSUM(fwhdr)	\
-	le32_get_bits(*((const __le32 *)(fwhdr) + 1), BIT(28))
+	le32_get_bits(*((__le32 *)(fwhdr) + 1), BIT(28))
 #define GET_FWSECTION_HDR_REDL(fwhdr)	\
-	le32_get_bits(*((const __le32 *)(fwhdr) + 1), BIT(29))
+	le32_get_bits(*((__le32 *)(fwhdr) + 1), BIT(29))
 #define GET_FWSECTION_HDR_DL_ADDR(fwhdr)	\
-	le32_get_bits(*((const __le32 *)(fwhdr)), GENMASK(31, 0))
+	le32_get_bits(*((__le32 *)(fwhdr)), GENMASK(31, 0))
 
 #define GET_FW_HDR_MAJOR_VERSION(fwhdr)	\
-	le32_get_bits(*((const __le32 *)(fwhdr) + 1), GENMASK(7, 0))
+	le32_get_bits(*((__le32 *)(fwhdr) + 1), GENMASK(7, 0))
 #define GET_FW_HDR_MINOR_VERSION(fwhdr)	\
-	le32_get_bits(*((const __le32 *)(fwhdr) + 1), GENMASK(15, 8))
+	le32_get_bits(*((__le32 *)(fwhdr) + 1), GENMASK(15, 8))
 #define GET_FW_HDR_SUBVERSION(fwhdr)	\
-	le32_get_bits(*((const __le32 *)(fwhdr) + 1), GENMASK(23, 16))
+	le32_get_bits(*((__le32 *)(fwhdr) + 1), GENMASK(23, 16))
 #define GET_FW_HDR_SUBINDEX(fwhdr)	\
-	le32_get_bits(*((const __le32 *)(fwhdr) + 1), GENMASK(31, 24))
+	le32_get_bits(*((__le32 *)(fwhdr) + 1), GENMASK(31, 24))
 #define GET_FW_HDR_MONTH(fwhdr)		\
-	le32_get_bits(*((const __le32 *)(fwhdr) + 4), GENMASK(7, 0))
+	le32_get_bits(*((__le32 *)(fwhdr) + 4), GENMASK(7, 0))
 #define GET_FW_HDR_DATE(fwhdr)		\
-	le32_get_bits(*((const __le32 *)(fwhdr) + 4), GENMASK(15, 8))
+	le32_get_bits(*((__le32 *)(fwhdr) + 4), GENMASK(15, 8))
 #define GET_FW_HDR_HOUR(fwhdr)		\
-	le32_get_bits(*((const __le32 *)(fwhdr) + 4), GENMASK(23, 16))
+	le32_get_bits(*((__le32 *)(fwhdr) + 4), GENMASK(23, 16))
 #define GET_FW_HDR_MIN(fwhdr)		\
-	le32_get_bits(*((const __le32 *)(fwhdr) + 4), GENMASK(31, 24))
+	le32_get_bits(*((__le32 *)(fwhdr) + 4), GENMASK(31, 24))
 #define GET_FW_HDR_YEAR(fwhdr)		\
-	le32_get_bits(*((const __le32 *)(fwhdr) + 5), GENMASK(31, 0))
+	le32_get_bits(*((__le32 *)(fwhdr) + 5), GENMASK(31, 0))
 #define GET_FW_HDR_SEC_NUM(fwhdr)	\
-	le32_get_bits(*((const __le32 *)(fwhdr) + 6), GENMASK(15, 8))
+	le32_get_bits(*((__le32 *)(fwhdr) + 6), GENMASK(15, 8))
 #define GET_FW_HDR_CMD_VERSERION(fwhdr)	\
-	le32_get_bits(*((const __le32 *)(fwhdr) + 7), GENMASK(31, 24))
+	le32_get_bits(*((__le32 *)(fwhdr) + 7), GENMASK(31, 24))
 static inline void SET_FW_HDR_PART_SIZE(void *fwhdr, u32 val)
 {
 	le32p_replace_bits((__le32 *)fwhdr + 7, val, GENMASK(15, 0));
 }
 
-static inline void SET_CTRL_INFO_MACID(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 0, val, GENMASK(6, 0));
-}
-
-static inline void SET_CTRL_INFO_OPERATION(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 0, val, BIT(7));
-}
+#define SET_CTRL_INFO_MACID(table, val) \
+	le32p_replace_bits((__le32 *)(table) + 0, val, GENMASK(6, 0))
+#define SET_CTRL_INFO_OPERATION(table, val) \
+	le32p_replace_bits((__le32 *)(table) + 0, val, BIT(7))
 #define SET_CMC_TBL_MASK_DATARATE GENMASK(8, 0)
-static inline void SET_CMC_TBL_DATARATE(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 1, val, GENMASK(8, 0));
-	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_DATARATE,
-			   GENMASK(8, 0));
-}
+#define SET_CMC_TBL_DATARATE(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 1, val, GENMASK(8, 0)); \
+	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_DATARATE, \
+			   GENMASK(8, 0)); \
+} while (0)
 #define SET_CMC_TBL_MASK_FORCE_TXOP BIT(0)
-static inline void SET_CMC_TBL_FORCE_TXOP(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 1, val, BIT(9));
-	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_FORCE_TXOP,
-			   BIT(9));
-}
+#define SET_CMC_TBL_FORCE_TXOP(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 1, val, BIT(9)); \
+	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_FORCE_TXOP, \
+			   BIT(9)); \
+} while (0)
 #define SET_CMC_TBL_MASK_DATA_BW GENMASK(1, 0)
-static inline void SET_CMC_TBL_DATA_BW(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 1, val, GENMASK(11, 10));
-	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_DATA_BW,
-			   GENMASK(11, 10));
-}
+#define SET_CMC_TBL_DATA_BW(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 1, val, GENMASK(11, 10)); \
+	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_DATA_BW, \
+			   GENMASK(11, 10)); \
+} while (0)
 #define SET_CMC_TBL_MASK_DATA_GI_LTF GENMASK(2, 0)
-static inline void SET_CMC_TBL_DATA_GI_LTF(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 1, val, GENMASK(14, 12));
-	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_DATA_GI_LTF,
-			   GENMASK(14, 12));
-}
+#define SET_CMC_TBL_DATA_GI_LTF(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 1, val, GENMASK(14, 12)); \
+	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_DATA_GI_LTF, \
+			   GENMASK(14, 12)); \
+} while (0)
 #define SET_CMC_TBL_MASK_DARF_TC_INDEX BIT(0)
-static inline void SET_CMC_TBL_DARF_TC_INDEX(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 1, val, BIT(15));
-	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_DARF_TC_INDEX,
-			   BIT(15));
-}
+#define SET_CMC_TBL_DARF_TC_INDEX(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 1, val, BIT(15)); \
+	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_DARF_TC_INDEX, \
+			   BIT(15)); \
+} while (0)
 #define SET_CMC_TBL_MASK_ARFR_CTRL GENMASK(3, 0)
-static inline void SET_CMC_TBL_ARFR_CTRL(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 1, val, GENMASK(19, 16));
-	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_ARFR_CTRL,
-			   GENMASK(19, 16));
-}
+#define SET_CMC_TBL_ARFR_CTRL(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 1, val, GENMASK(19, 16)); \
+	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_ARFR_CTRL, \
+			   GENMASK(19, 16)); \
+} while (0)
 #define SET_CMC_TBL_MASK_ACQ_RPT_EN BIT(0)
-static inline void SET_CMC_TBL_ACQ_RPT_EN(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 1, val, BIT(20));
-	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_ACQ_RPT_EN,
-			   BIT(20));
-}
+#define SET_CMC_TBL_ACQ_RPT_EN(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 1, val, BIT(20)); \
+	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_ACQ_RPT_EN, \
+			   BIT(20)); \
+} while (0)
 #define SET_CMC_TBL_MASK_MGQ_RPT_EN BIT(0)
-static inline void SET_CMC_TBL_MGQ_RPT_EN(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 1, val, BIT(21));
-	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_MGQ_RPT_EN,
-			   BIT(21));
-}
+#define SET_CMC_TBL_MGQ_RPT_EN(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 1, val, BIT(21)); \
+	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_MGQ_RPT_EN, \
+			   BIT(21)); \
+} while (0)
 #define SET_CMC_TBL_MASK_ULQ_RPT_EN BIT(0)
-static inline void SET_CMC_TBL_ULQ_RPT_EN(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 1, val, BIT(22));
-	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_ULQ_RPT_EN,
-			   BIT(22));
-}
+#define SET_CMC_TBL_ULQ_RPT_EN(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 1, val, BIT(22)); \
+	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_ULQ_RPT_EN, \
+			   BIT(22)); \
+} while (0)
 #define SET_CMC_TBL_MASK_TWTQ_RPT_EN BIT(0)
-static inline void SET_CMC_TBL_TWTQ_RPT_EN(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 1, val, BIT(23));
-	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_TWTQ_RPT_EN,
-			   BIT(23));
-}
+#define SET_CMC_TBL_TWTQ_RPT_EN(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 1, val, BIT(23)); \
+	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_TWTQ_RPT_EN, \
+			   BIT(23)); \
+} while (0)
 #define SET_CMC_TBL_MASK_DISRTSFB BIT(0)
-static inline void SET_CMC_TBL_DISRTSFB(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 1, val, BIT(25));
-	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_DISRTSFB,
-			   BIT(25));
-}
+#define SET_CMC_TBL_DISRTSFB(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 1, val, BIT(25)); \
+	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_DISRTSFB, \
+			   BIT(25)); \
+} while (0)
 #define SET_CMC_TBL_MASK_DISDATAFB BIT(0)
-static inline void SET_CMC_TBL_DISDATAFB(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 1, val, BIT(26));
-	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_DISDATAFB,
-			   BIT(26));
-}
+#define SET_CMC_TBL_DISDATAFB(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 1, val, BIT(26)); \
+	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_DISDATAFB, \
+			   BIT(26)); \
+} while (0)
 #define SET_CMC_TBL_MASK_TRYRATE BIT(0)
-static inline void SET_CMC_TBL_TRYRATE(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 1, val, BIT(27));
-	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_TRYRATE,
-			   BIT(27));
-}
+#define SET_CMC_TBL_TRYRATE(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 1, val, BIT(27)); \
+	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_TRYRATE, \
+			   BIT(27)); \
+} while (0)
 #define SET_CMC_TBL_MASK_AMPDU_DENSITY GENMASK(3, 0)
-static inline void SET_CMC_TBL_AMPDU_DENSITY(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 1, val, GENMASK(31, 28));
-	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_AMPDU_DENSITY,
-			   GENMASK(31, 28));
-}
+#define SET_CMC_TBL_AMPDU_DENSITY(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 1, val, GENMASK(31, 28)); \
+	le32p_replace_bits((__le32 *)(table) + 9, SET_CMC_TBL_MASK_AMPDU_DENSITY, \
+			   GENMASK(31, 28)); \
+} while (0)
 #define SET_CMC_TBL_MASK_DATA_RTY_LOWEST_RATE GENMASK(8, 0)
-static inline void SET_CMC_TBL_DATA_RTY_LOWEST_RATE(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 2, val, GENMASK(8, 0));
-	le32p_replace_bits((__le32 *)(table) + 10, SET_CMC_TBL_MASK_DATA_RTY_LOWEST_RATE,
-			   GENMASK(8, 0));
-}
+#define SET_CMC_TBL_DATA_RTY_LOWEST_RATE(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 2, val, GENMASK(8, 0)); \
+	le32p_replace_bits((__le32 *)(table) + 10, SET_CMC_TBL_MASK_DATA_RTY_LOWEST_RATE, \
+			   GENMASK(8, 0)); \
+} while (0)
 #define SET_CMC_TBL_MASK_AMPDU_TIME_SEL BIT(0)
-static inline void SET_CMC_TBL_AMPDU_TIME_SEL(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 2, val, BIT(9));
-	le32p_replace_bits((__le32 *)(table) + 10, SET_CMC_TBL_MASK_AMPDU_TIME_SEL,
-			   BIT(9));
-}
+#define SET_CMC_TBL_AMPDU_TIME_SEL(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 2, val, BIT(9)); \
+	le32p_replace_bits((__le32 *)(table) + 10, SET_CMC_TBL_MASK_AMPDU_TIME_SEL, \
+			   BIT(9)); \
+} while (0)
 #define SET_CMC_TBL_MASK_AMPDU_LEN_SEL BIT(0)
-static inline void SET_CMC_TBL_AMPDU_LEN_SEL(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 2, val, BIT(10));
-	le32p_replace_bits((__le32 *)(table) + 10, SET_CMC_TBL_MASK_AMPDU_LEN_SEL,
-			   BIT(10));
-}
+#define SET_CMC_TBL_AMPDU_LEN_SEL(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 2, val, BIT(10)); \
+	le32p_replace_bits((__le32 *)(table) + 10, SET_CMC_TBL_MASK_AMPDU_LEN_SEL, \
+			   BIT(10)); \
+} while (0)
 #define SET_CMC_TBL_MASK_RTS_TXCNT_LMT_SEL BIT(0)
-static inline void SET_CMC_TBL_RTS_TXCNT_LMT_SEL(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 2, val, BIT(11));
-	le32p_replace_bits((__le32 *)(table) + 10, SET_CMC_TBL_MASK_RTS_TXCNT_LMT_SEL,
-			   BIT(11));
-}
+#define SET_CMC_TBL_RTS_TXCNT_LMT_SEL(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 2, val, BIT(11)); \
+	le32p_replace_bits((__le32 *)(table) + 10, SET_CMC_TBL_MASK_RTS_TXCNT_LMT_SEL, \
+			   BIT(11)); \
+} while (0)
 #define SET_CMC_TBL_MASK_RTS_TXCNT_LMT GENMASK(3, 0)
-static inline void SET_CMC_TBL_RTS_TXCNT_LMT(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 2, val, GENMASK(15, 12));
-	le32p_replace_bits((__le32 *)(table) + 10, SET_CMC_TBL_MASK_RTS_TXCNT_LMT,
-			   GENMASK(15, 12));
-}
+#define SET_CMC_TBL_RTS_TXCNT_LMT(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 2, val, GENMASK(15, 12)); \
+	le32p_replace_bits((__le32 *)(table) + 10, SET_CMC_TBL_MASK_RTS_TXCNT_LMT, \
+			   GENMASK(15, 12)); \
+} while (0)
 #define SET_CMC_TBL_MASK_RTSRATE GENMASK(8, 0)
-static inline void SET_CMC_TBL_RTSRATE(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 2, val, GENMASK(24, 16));
-	le32p_replace_bits((__le32 *)(table) + 10, SET_CMC_TBL_MASK_RTSRATE,
-			   GENMASK(24, 16));
-}
+#define SET_CMC_TBL_RTSRATE(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 2, val, GENMASK(24, 16)); \
+	le32p_replace_bits((__le32 *)(table) + 10, SET_CMC_TBL_MASK_RTSRATE, \
+			   GENMASK(24, 16)); \
+} while (0)
 #define SET_CMC_TBL_MASK_VCS_STBC BIT(0)
-static inline void SET_CMC_TBL_VCS_STBC(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 2, val, BIT(27));
-	le32p_replace_bits((__le32 *)(table) + 10, SET_CMC_TBL_MASK_VCS_STBC,
-			   BIT(27));
-}
+#define SET_CMC_TBL_VCS_STBC(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 2, val, BIT(27)); \
+	le32p_replace_bits((__le32 *)(table) + 10, SET_CMC_TBL_MASK_VCS_STBC, \
+			   BIT(27)); \
+} while (0)
 #define SET_CMC_TBL_MASK_RTS_RTY_LOWEST_RATE GENMASK(3, 0)
-static inline void SET_CMC_TBL_RTS_RTY_LOWEST_RATE(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 2, val, GENMASK(31, 28));
-	le32p_replace_bits((__le32 *)(table) + 10, SET_CMC_TBL_MASK_RTS_RTY_LOWEST_RATE,
-			   GENMASK(31, 28));
-}
+#define SET_CMC_TBL_RTS_RTY_LOWEST_RATE(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 2, val, GENMASK(31, 28)); \
+	le32p_replace_bits((__le32 *)(table) + 10, SET_CMC_TBL_MASK_RTS_RTY_LOWEST_RATE, \
+			   GENMASK(31, 28)); \
+} while (0)
 #define SET_CMC_TBL_MASK_DATA_TX_CNT_LMT GENMASK(5, 0)
-static inline void SET_CMC_TBL_DATA_TX_CNT_LMT(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 3, val, GENMASK(5, 0));
-	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_DATA_TX_CNT_LMT,
-			   GENMASK(5, 0));
-}
+#define SET_CMC_TBL_DATA_TX_CNT_LMT(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 3, val, GENMASK(5, 0)); \
+	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_DATA_TX_CNT_LMT, \
+			   GENMASK(5, 0)); \
+} while (0)
 #define SET_CMC_TBL_MASK_DATA_TXCNT_LMT_SEL BIT(0)
-static inline void SET_CMC_TBL_DATA_TXCNT_LMT_SEL(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 3, val, BIT(6));
-	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_DATA_TXCNT_LMT_SEL,
-			   BIT(6));
-}
+#define SET_CMC_TBL_DATA_TXCNT_LMT_SEL(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 3, val, BIT(6)); \
+	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_DATA_TXCNT_LMT_SEL, \
+			   BIT(6)); \
+} while (0)
 #define SET_CMC_TBL_MASK_MAX_AGG_NUM_SEL BIT(0)
-static inline void SET_CMC_TBL_MAX_AGG_NUM_SEL(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 3, val, BIT(7));
-	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_MAX_AGG_NUM_SEL,
-			   BIT(7));
-}
+#define SET_CMC_TBL_MAX_AGG_NUM_SEL(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 3, val, BIT(7)); \
+	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_MAX_AGG_NUM_SEL, \
+			   BIT(7)); \
+} while (0)
 #define SET_CMC_TBL_MASK_RTS_EN BIT(0)
-static inline void SET_CMC_TBL_RTS_EN(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 3, val, BIT(8));
-	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_RTS_EN,
-			   BIT(8));
-}
+#define SET_CMC_TBL_RTS_EN(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 3, val, BIT(8)); \
+	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_RTS_EN, \
+			   BIT(8)); \
+} while (0)
 #define SET_CMC_TBL_MASK_CTS2SELF_EN BIT(0)
-static inline void SET_CMC_TBL_CTS2SELF_EN(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 3, val, BIT(9));
-	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_CTS2SELF_EN,
-			   BIT(9));
-}
+#define SET_CMC_TBL_CTS2SELF_EN(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 3, val, BIT(9)); \
+	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_CTS2SELF_EN, \
+			   BIT(9)); \
+} while (0)
 #define SET_CMC_TBL_MASK_CCA_RTS GENMASK(1, 0)
-static inline void SET_CMC_TBL_CCA_RTS(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 3, val, GENMASK(11, 10));
-	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_CCA_RTS,
-			   GENMASK(11, 10));
-}
+#define SET_CMC_TBL_CCA_RTS(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 3, val, GENMASK(11, 10)); \
+	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_CCA_RTS, \
+			   GENMASK(11, 10)); \
+} while (0)
 #define SET_CMC_TBL_MASK_HW_RTS_EN BIT(0)
-static inline void SET_CMC_TBL_HW_RTS_EN(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 3, val, BIT(12));
-	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_HW_RTS_EN,
-			   BIT(12));
-}
+#define SET_CMC_TBL_HW_RTS_EN(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 3, val, BIT(12)); \
+	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_HW_RTS_EN, \
+			   BIT(12)); \
+} while (0)
 #define SET_CMC_TBL_MASK_RTS_DROP_DATA_MODE GENMASK(1, 0)
-static inline void SET_CMC_TBL_RTS_DROP_DATA_MODE(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 3, val, GENMASK(14, 13));
-	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_RTS_DROP_DATA_MODE,
-			   GENMASK(14, 13));
-}
+#define SET_CMC_TBL_RTS_DROP_DATA_MODE(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 3, val, GENMASK(14, 13)); \
+	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_RTS_DROP_DATA_MODE, \
+			   GENMASK(14, 13)); \
+} while (0)
 #define SET_CMC_TBL_MASK_AMPDU_MAX_LEN GENMASK(10, 0)
-static inline void SET_CMC_TBL_AMPDU_MAX_LEN(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 3, val, GENMASK(26, 16));
-	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_AMPDU_MAX_LEN,
-			   GENMASK(26, 16));
-}
+#define SET_CMC_TBL_AMPDU_MAX_LEN(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 3, val, GENMASK(26, 16)); \
+	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_AMPDU_MAX_LEN, \
+			   GENMASK(26, 16)); \
+} while (0)
 #define SET_CMC_TBL_MASK_UL_MU_DIS BIT(0)
-static inline void SET_CMC_TBL_UL_MU_DIS(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 3, val, BIT(27));
-	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_UL_MU_DIS,
-			   BIT(27));
-}
+#define SET_CMC_TBL_UL_MU_DIS(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 3, val, BIT(27)); \
+	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_UL_MU_DIS, \
+			   BIT(27)); \
+} while (0)
 #define SET_CMC_TBL_MASK_AMPDU_MAX_TIME GENMASK(3, 0)
-static inline void SET_CMC_TBL_AMPDU_MAX_TIME(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 3, val, GENMASK(31, 28));
-	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_AMPDU_MAX_TIME,
-			   GENMASK(31, 28));
-}
+#define SET_CMC_TBL_AMPDU_MAX_TIME(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 3, val, GENMASK(31, 28)); \
+	le32p_replace_bits((__le32 *)(table) + 11, SET_CMC_TBL_MASK_AMPDU_MAX_TIME, \
+			   GENMASK(31, 28)); \
+} while (0)
 #define SET_CMC_TBL_MASK_MAX_AGG_NUM GENMASK(7, 0)
-static inline void SET_CMC_TBL_MAX_AGG_NUM(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 4, val, GENMASK(7, 0));
-	le32p_replace_bits((__le32 *)(table) + 12, SET_CMC_TBL_MASK_MAX_AGG_NUM,
-			   GENMASK(7, 0));
-}
+#define SET_CMC_TBL_MAX_AGG_NUM(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 4, val, GENMASK(7, 0)); \
+	le32p_replace_bits((__le32 *)(table) + 12, SET_CMC_TBL_MASK_MAX_AGG_NUM, \
+			   GENMASK(7, 0)); \
+} while (0)
 #define SET_CMC_TBL_MASK_BA_BMAP GENMASK(1, 0)
-static inline void SET_CMC_TBL_BA_BMAP(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 4, val, GENMASK(9, 8));
-	le32p_replace_bits((__le32 *)(table) + 12, SET_CMC_TBL_MASK_BA_BMAP,
-			   GENMASK(9, 8));
-}
+#define SET_CMC_TBL_BA_BMAP(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 4, val, GENMASK(9, 8)); \
+	le32p_replace_bits((__le32 *)(table) + 12, SET_CMC_TBL_MASK_BA_BMAP, \
+			   GENMASK(9, 8)); \
+} while (0)
 #define SET_CMC_TBL_MASK_VO_LFTIME_SEL GENMASK(2, 0)
-static inline void SET_CMC_TBL_VO_LFTIME_SEL(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 4, val, GENMASK(18, 16));
-	le32p_replace_bits((__le32 *)(table) + 12, SET_CMC_TBL_MASK_VO_LFTIME_SEL,
-			   GENMASK(18, 16));
-}
+#define SET_CMC_TBL_VO_LFTIME_SEL(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 4, val, GENMASK(18, 16)); \
+	le32p_replace_bits((__le32 *)(table) + 12, SET_CMC_TBL_MASK_VO_LFTIME_SEL, \
+			   GENMASK(18, 16)); \
+} while (0)
 #define SET_CMC_TBL_MASK_VI_LFTIME_SEL GENMASK(2, 0)
-static inline void SET_CMC_TBL_VI_LFTIME_SEL(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 4, val, GENMASK(21, 19));
-	le32p_replace_bits((__le32 *)(table) + 12, SET_CMC_TBL_MASK_VI_LFTIME_SEL,
-			   GENMASK(21, 19));
-}
+#define SET_CMC_TBL_VI_LFTIME_SEL(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 4, val, GENMASK(21, 19)); \
+	le32p_replace_bits((__le32 *)(table) + 12, SET_CMC_TBL_MASK_VI_LFTIME_SEL, \
+			   GENMASK(21, 19)); \
+} while (0)
 #define SET_CMC_TBL_MASK_BE_LFTIME_SEL GENMASK(2, 0)
-static inline void SET_CMC_TBL_BE_LFTIME_SEL(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 4, val, GENMASK(24, 22));
-	le32p_replace_bits((__le32 *)(table) + 12, SET_CMC_TBL_MASK_BE_LFTIME_SEL,
-			   GENMASK(24, 22));
-}
+#define SET_CMC_TBL_BE_LFTIME_SEL(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 4, val, GENMASK(24, 22)); \
+	le32p_replace_bits((__le32 *)(table) + 12, SET_CMC_TBL_MASK_BE_LFTIME_SEL, \
+			   GENMASK(24, 22)); \
+} while (0)
 #define SET_CMC_TBL_MASK_BK_LFTIME_SEL GENMASK(2, 0)
-static inline void SET_CMC_TBL_BK_LFTIME_SEL(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 4, val, GENMASK(27, 25));
-	le32p_replace_bits((__le32 *)(table) + 12, SET_CMC_TBL_MASK_BK_LFTIME_SEL,
-			   GENMASK(27, 25));
-}
+#define SET_CMC_TBL_BK_LFTIME_SEL(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 4, val, GENMASK(27, 25)); \
+	le32p_replace_bits((__le32 *)(table) + 12, SET_CMC_TBL_MASK_BK_LFTIME_SEL, \
+			   GENMASK(27, 25)); \
+} while (0)
 #define SET_CMC_TBL_MASK_SECTYPE GENMASK(3, 0)
-static inline void SET_CMC_TBL_SECTYPE(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 4, val, GENMASK(31, 28));
-	le32p_replace_bits((__le32 *)(table) + 12, SET_CMC_TBL_MASK_SECTYPE,
-			   GENMASK(31, 28));
-}
+#define SET_CMC_TBL_SECTYPE(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 4, val, GENMASK(31, 28)); \
+	le32p_replace_bits((__le32 *)(table) + 12, SET_CMC_TBL_MASK_SECTYPE, \
+			   GENMASK(31, 28)); \
+} while (0)
 #define SET_CMC_TBL_MASK_MULTI_PORT_ID GENMASK(2, 0)
-static inline void SET_CMC_TBL_MULTI_PORT_ID(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 5, val, GENMASK(2, 0));
-	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_MULTI_PORT_ID,
-			   GENMASK(2, 0));
-}
+#define SET_CMC_TBL_MULTI_PORT_ID(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 5, val, GENMASK(2, 0)); \
+	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_MULTI_PORT_ID, \
+			   GENMASK(2, 0)); \
+} while (0)
 #define SET_CMC_TBL_MASK_BMC BIT(0)
-static inline void SET_CMC_TBL_BMC(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(3));
-	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_BMC,
-			   BIT(3));
-}
+#define SET_CMC_TBL_BMC(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(3)); \
+	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_BMC, \
+			   BIT(3)); \
+} while (0)
 #define SET_CMC_TBL_MASK_MBSSID GENMASK(3, 0)
-static inline void SET_CMC_TBL_MBSSID(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 5, val, GENMASK(7, 4));
-	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_MBSSID,
-			   GENMASK(7, 4));
-}
+#define SET_CMC_TBL_MBSSID(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 5, val, GENMASK(7, 4)); \
+	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_MBSSID, \
+			   GENMASK(7, 4)); \
+} while (0)
 #define SET_CMC_TBL_MASK_NAVUSEHDR BIT(0)
-static inline void SET_CMC_TBL_NAVUSEHDR(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(8));
-	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_NAVUSEHDR,
-			   BIT(8));
-}
+#define SET_CMC_TBL_NAVUSEHDR(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(8)); \
+	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_NAVUSEHDR, \
+			   BIT(8)); \
+} while (0)
 #define SET_CMC_TBL_MASK_TXPWR_MODE GENMASK(2, 0)
-static inline void SET_CMC_TBL_TXPWR_MODE(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 5, val, GENMASK(11, 9));
-	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_TXPWR_MODE,
-			   GENMASK(11, 9));
-}
+#define SET_CMC_TBL_TXPWR_MODE(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 5, val, GENMASK(11, 9)); \
+	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_TXPWR_MODE, \
+			   GENMASK(11, 9)); \
+} while (0)
 #define SET_CMC_TBL_MASK_DATA_DCM BIT(0)
-static inline void SET_CMC_TBL_DATA_DCM(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(12));
-	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_DATA_DCM,
-			   BIT(12));
-}
+#define SET_CMC_TBL_DATA_DCM(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(12)); \
+	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_DATA_DCM, \
+			   BIT(12)); \
+} while (0)
 #define SET_CMC_TBL_MASK_DATA_ER BIT(0)
-static inline void SET_CMC_TBL_DATA_ER(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(13));
-	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_DATA_ER,
-			   BIT(13));
-}
+#define SET_CMC_TBL_DATA_ER(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(13)); \
+	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_DATA_ER, \
+			   BIT(13)); \
+} while (0)
 #define SET_CMC_TBL_MASK_DATA_LDPC BIT(0)
-static inline void SET_CMC_TBL_DATA_LDPC(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(14));
-	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_DATA_LDPC,
-			   BIT(14));
-}
+#define SET_CMC_TBL_DATA_LDPC(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(14)); \
+	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_DATA_LDPC, \
+			   BIT(14)); \
+} while (0)
 #define SET_CMC_TBL_MASK_DATA_STBC BIT(0)
-static inline void SET_CMC_TBL_DATA_STBC(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(15));
-	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_DATA_STBC,
-			   BIT(15));
-}
+#define SET_CMC_TBL_DATA_STBC(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(15)); \
+	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_DATA_STBC, \
+			   BIT(15)); \
+} while (0)
 #define SET_CMC_TBL_MASK_A_CTRL_BQR BIT(0)
-static inline void SET_CMC_TBL_A_CTRL_BQR(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(16));
-	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_A_CTRL_BQR,
-			   BIT(16));
-}
+#define SET_CMC_TBL_A_CTRL_BQR(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(16)); \
+	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_A_CTRL_BQR, \
+			   BIT(16)); \
+} while (0)
 #define SET_CMC_TBL_MASK_A_CTRL_UPH BIT(0)
-static inline void SET_CMC_TBL_A_CTRL_UPH(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(17));
-	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_A_CTRL_UPH,
-			   BIT(17));
-}
+#define SET_CMC_TBL_A_CTRL_UPH(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(17)); \
+	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_A_CTRL_UPH, \
+			   BIT(17)); \
+} while (0)
 #define SET_CMC_TBL_MASK_A_CTRL_BSR BIT(0)
-static inline void SET_CMC_TBL_A_CTRL_BSR(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(18));
-	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_A_CTRL_BSR,
-			   BIT(18));
-}
+#define SET_CMC_TBL_A_CTRL_BSR(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(18)); \
+	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_A_CTRL_BSR, \
+			   BIT(18)); \
+} while (0)
 #define SET_CMC_TBL_MASK_A_CTRL_CAS BIT(0)
-static inline void SET_CMC_TBL_A_CTRL_CAS(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(19));
-	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_A_CTRL_CAS,
-			   BIT(19));
-}
+#define SET_CMC_TBL_A_CTRL_CAS(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(19)); \
+	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_A_CTRL_CAS, \
+			   BIT(19)); \
+} while (0)
 #define SET_CMC_TBL_MASK_DATA_BW_ER BIT(0)
-static inline void SET_CMC_TBL_DATA_BW_ER(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(20));
-	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_DATA_BW_ER,
-			   BIT(20));
-}
+#define SET_CMC_TBL_DATA_BW_ER(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(20)); \
+	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_DATA_BW_ER, \
+			   BIT(20)); \
+} while (0)
 #define SET_CMC_TBL_MASK_LSIG_TXOP_EN BIT(0)
-static inline void SET_CMC_TBL_LSIG_TXOP_EN(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(21));
-	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_LSIG_TXOP_EN,
-			   BIT(21));
-}
+#define SET_CMC_TBL_LSIG_TXOP_EN(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(21)); \
+	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_LSIG_TXOP_EN, \
+			   BIT(21)); \
+} while (0)
 #define SET_CMC_TBL_MASK_CTRL_CNT_VLD BIT(0)
-static inline void SET_CMC_TBL_CTRL_CNT_VLD(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(27));
-	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_CTRL_CNT_VLD,
-			   BIT(27));
-}
+#define SET_CMC_TBL_CTRL_CNT_VLD(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 5, val, BIT(27)); \
+	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_CTRL_CNT_VLD, \
+			   BIT(27)); \
+} while (0)
 #define SET_CMC_TBL_MASK_CTRL_CNT GENMASK(3, 0)
-static inline void SET_CMC_TBL_CTRL_CNT(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 5, val, GENMASK(31, 28));
-	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_CTRL_CNT,
-			   GENMASK(31, 28));
-}
+#define SET_CMC_TBL_CTRL_CNT(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 5, val, GENMASK(31, 28)); \
+	le32p_replace_bits((__le32 *)(table) + 13, SET_CMC_TBL_MASK_CTRL_CNT, \
+			   GENMASK(31, 28)); \
+} while (0)
 #define SET_CMC_TBL_MASK_RESP_REF_RATE GENMASK(8, 0)
-static inline void SET_CMC_TBL_RESP_REF_RATE(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 6, val, GENMASK(8, 0));
-	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_RESP_REF_RATE,
-			   GENMASK(8, 0));
-}
+#define SET_CMC_TBL_RESP_REF_RATE(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 6, val, GENMASK(8, 0)); \
+	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_RESP_REF_RATE, \
+			   GENMASK(8, 0)); \
+} while (0)
 #define SET_CMC_TBL_MASK_ALL_ACK_SUPPORT BIT(0)
-static inline void SET_CMC_TBL_ALL_ACK_SUPPORT(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 6, val, BIT(12));
-	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_ALL_ACK_SUPPORT,
-			   BIT(12));
-}
+#define SET_CMC_TBL_ALL_ACK_SUPPORT(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 6, val, BIT(12)); \
+	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_ALL_ACK_SUPPORT, \
+			   BIT(12)); \
+} while (0)
 #define SET_CMC_TBL_MASK_BSR_QUEUE_SIZE_FORMAT BIT(0)
-static inline void SET_CMC_TBL_BSR_QUEUE_SIZE_FORMAT(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 6, val, BIT(13));
-	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_BSR_QUEUE_SIZE_FORMAT,
-			   BIT(13));
-}
+#define SET_CMC_TBL_BSR_QUEUE_SIZE_FORMAT(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 6, val, BIT(13)); \
+	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_BSR_QUEUE_SIZE_FORMAT, \
+			   BIT(13)); \
+} while (0)
 #define SET_CMC_TBL_MASK_NTX_PATH_EN GENMASK(3, 0)
-static inline void SET_CMC_TBL_NTX_PATH_EN(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 6, val, GENMASK(19, 16));
-	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_NTX_PATH_EN,
-			   GENMASK(19, 16));
-}
+#define SET_CMC_TBL_NTX_PATH_EN(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 6, val, GENMASK(19, 16)); \
+	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_NTX_PATH_EN, \
+			   GENMASK(19, 16)); \
+} while (0)
 #define SET_CMC_TBL_MASK_PATH_MAP_A GENMASK(1, 0)
-static inline void SET_CMC_TBL_PATH_MAP_A(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 6, val, GENMASK(21, 20));
-	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_PATH_MAP_A,
-			   GENMASK(21, 20));
-}
+#define SET_CMC_TBL_PATH_MAP_A(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 6, val, GENMASK(21, 20)); \
+	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_PATH_MAP_A, \
+			   GENMASK(21, 20)); \
+} while (0)
 #define SET_CMC_TBL_MASK_PATH_MAP_B GENMASK(1, 0)
-static inline void SET_CMC_TBL_PATH_MAP_B(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 6, val, GENMASK(23, 22));
-	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_PATH_MAP_B,
-			   GENMASK(23, 22));
-}
+#define SET_CMC_TBL_PATH_MAP_B(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 6, val, GENMASK(23, 22)); \
+	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_PATH_MAP_B, \
+			   GENMASK(23, 22)); \
+} while (0)
 #define SET_CMC_TBL_MASK_PATH_MAP_C GENMASK(1, 0)
-static inline void SET_CMC_TBL_PATH_MAP_C(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 6, val, GENMASK(25, 24));
-	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_PATH_MAP_C,
-			   GENMASK(25, 24));
-}
+#define SET_CMC_TBL_PATH_MAP_C(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 6, val, GENMASK(25, 24)); \
+	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_PATH_MAP_C, \
+			   GENMASK(25, 24)); \
+} while (0)
 #define SET_CMC_TBL_MASK_PATH_MAP_D GENMASK(1, 0)
-static inline void SET_CMC_TBL_PATH_MAP_D(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 6, val, GENMASK(27, 26));
-	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_PATH_MAP_D,
-			   GENMASK(27, 26));
-}
+#define SET_CMC_TBL_PATH_MAP_D(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 6, val, GENMASK(27, 26)); \
+	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_PATH_MAP_D, \
+			   GENMASK(27, 26)); \
+} while (0)
 #define SET_CMC_TBL_MASK_ANTSEL_A BIT(0)
-static inline void SET_CMC_TBL_ANTSEL_A(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 6, val, BIT(28));
-	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_ANTSEL_A,
-			   BIT(28));
-}
+#define SET_CMC_TBL_ANTSEL_A(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 6, val, BIT(28)); \
+	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_ANTSEL_A, \
+			   BIT(28)); \
+} while (0)
 #define SET_CMC_TBL_MASK_ANTSEL_B BIT(0)
-static inline void SET_CMC_TBL_ANTSEL_B(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 6, val, BIT(29));
-	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_ANTSEL_B,
-			   BIT(29));
-}
+#define SET_CMC_TBL_ANTSEL_B(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 6, val, BIT(29)); \
+	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_ANTSEL_B, \
+			   BIT(29)); \
+} while (0)
 #define SET_CMC_TBL_MASK_ANTSEL_C BIT(0)
-static inline void SET_CMC_TBL_ANTSEL_C(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 6, val, BIT(30));
-	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_ANTSEL_C,
-			   BIT(30));
-}
+#define SET_CMC_TBL_ANTSEL_C(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 6, val, BIT(30)); \
+	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_ANTSEL_C, \
+			   BIT(30)); \
+} while (0)
 #define SET_CMC_TBL_MASK_ANTSEL_D BIT(0)
-static inline void SET_CMC_TBL_ANTSEL_D(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 6, val, BIT(31));
-	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_ANTSEL_D,
-			   BIT(31));
-}
+#define SET_CMC_TBL_ANTSEL_D(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 6, val, BIT(31)); \
+	le32p_replace_bits((__le32 *)(table) + 14, SET_CMC_TBL_MASK_ANTSEL_D, \
+			   BIT(31)); \
+} while (0)
 #define SET_CMC_TBL_MASK_ADDR_CAM_INDEX GENMASK(7, 0)
-static inline void SET_CMC_TBL_ADDR_CAM_INDEX(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 7, val, GENMASK(7, 0));
-	le32p_replace_bits((__le32 *)(table) + 15, SET_CMC_TBL_MASK_ADDR_CAM_INDEX,
-			   GENMASK(7, 0));
-}
+#define SET_CMC_TBL_ADDR_CAM_INDEX(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 7, val, GENMASK(7, 0)); \
+	le32p_replace_bits((__le32 *)(table) + 15, SET_CMC_TBL_MASK_ADDR_CAM_INDEX, \
+			   GENMASK(7, 0)); \
+} while (0)
 #define SET_CMC_TBL_MASK_PAID GENMASK(8, 0)
-static inline void SET_CMC_TBL_PAID(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 7, val, GENMASK(16, 8));
-	le32p_replace_bits((__le32 *)(table) + 15, SET_CMC_TBL_MASK_PAID,
-			   GENMASK(16, 8));
-}
+#define SET_CMC_TBL_PAID(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 7, val, GENMASK(16, 8)); \
+	le32p_replace_bits((__le32 *)(table) + 15, SET_CMC_TBL_MASK_PAID, \
+			   GENMASK(16, 8)); \
+} while (0)
 #define SET_CMC_TBL_MASK_ULDL BIT(0)
-static inline void SET_CMC_TBL_ULDL(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 7, val, BIT(17));
-	le32p_replace_bits((__le32 *)(table) + 15, SET_CMC_TBL_MASK_ULDL,
-			   BIT(17));
-}
+#define SET_CMC_TBL_ULDL(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 7, val, BIT(17)); \
+	le32p_replace_bits((__le32 *)(table) + 15, SET_CMC_TBL_MASK_ULDL, \
+			   BIT(17)); \
+} while (0)
 #define SET_CMC_TBL_MASK_DOPPLER_CTRL GENMASK(1, 0)
-static inline void SET_CMC_TBL_DOPPLER_CTRL(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 7, val, GENMASK(19, 18));
-	le32p_replace_bits((__le32 *)(table) + 15, SET_CMC_TBL_MASK_DOPPLER_CTRL,
-			   GENMASK(19, 18));
-}
+#define SET_CMC_TBL_DOPPLER_CTRL(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 7, val, GENMASK(19, 18)); \
+	le32p_replace_bits((__le32 *)(table) + 15, SET_CMC_TBL_MASK_DOPPLER_CTRL, \
+			   GENMASK(19, 18)); \
+} while (0)
 #define SET_CMC_TBL_MASK_NOMINAL_PKT_PADDING GENMASK(1, 0)
-static inline void SET_CMC_TBL_NOMINAL_PKT_PADDING(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 7, val, GENMASK(21, 20));
-	le32p_replace_bits((__le32 *)(table) + 15, SET_CMC_TBL_MASK_NOMINAL_PKT_PADDING,
-			   GENMASK(21, 20));
-}
-
-static inline void SET_CMC_TBL_NOMINAL_PKT_PADDING40(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 7, val, GENMASK(23, 22));
-	le32p_replace_bits((__le32 *)(table) + 15, SET_CMC_TBL_MASK_NOMINAL_PKT_PADDING,
-			   GENMASK(23, 22));
-}
+#define SET_CMC_TBL_NOMINAL_PKT_PADDING(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 7, val, GENMASK(21, 20)); \
+	le32p_replace_bits((__le32 *)(table) + 15, SET_CMC_TBL_MASK_NOMINAL_PKT_PADDING, \
+			   GENMASK(21, 20)); \
+} while (0)
+#define SET_CMC_TBL_NOMINAL_PKT_PADDING40(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 7, val, GENMASK(23, 22)); \
+	le32p_replace_bits((__le32 *)(table) + 15, SET_CMC_TBL_MASK_NOMINAL_PKT_PADDING, \
+			   GENMASK(23, 22)); \
+} while (0)
 #define SET_CMC_TBL_MASK_TXPWR_TOLERENCE GENMASK(3, 0)
-static inline void SET_CMC_TBL_TXPWR_TOLERENCE(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 7, val, GENMASK(27, 24));
-	le32p_replace_bits((__le32 *)(table) + 15, SET_CMC_TBL_MASK_TXPWR_TOLERENCE,
-			   GENMASK(27, 24));
-}
-
-static inline void SET_CMC_TBL_NOMINAL_PKT_PADDING80(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 7, val, GENMASK(31, 30));
-	le32p_replace_bits((__le32 *)(table) + 15, SET_CMC_TBL_MASK_NOMINAL_PKT_PADDING,
-			   GENMASK(31, 30));
-}
+#define SET_CMC_TBL_TXPWR_TOLERENCE(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 7, val, GENMASK(27, 24)); \
+	le32p_replace_bits((__le32 *)(table) + 15, SET_CMC_TBL_MASK_TXPWR_TOLERENCE, \
+			   GENMASK(27, 24)); \
+} while (0)
+#define SET_CMC_TBL_NOMINAL_PKT_PADDING80(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 7, val, GENMASK(31, 30)); \
+	le32p_replace_bits((__le32 *)(table) + 15, SET_CMC_TBL_MASK_NOMINAL_PKT_PADDING, \
+			   GENMASK(31, 30)); \
+} while (0)
 #define SET_CMC_TBL_MASK_NC GENMASK(2, 0)
-static inline void SET_CMC_TBL_NC(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 8, val, GENMASK(2, 0));
-	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_NC,
-			   GENMASK(2, 0));
-}
+#define SET_CMC_TBL_NC(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 8, val, GENMASK(2, 0)); \
+	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_NC, \
+			   GENMASK(2, 0)); \
+} while (0)
 #define SET_CMC_TBL_MASK_NR GENMASK(2, 0)
-static inline void SET_CMC_TBL_NR(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 8, val, GENMASK(5, 3));
-	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_NR,
-			   GENMASK(5, 3));
-}
+#define SET_CMC_TBL_NR(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 8, val, GENMASK(5, 3)); \
+	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_NR, \
+			   GENMASK(5, 3)); \
+} while (0)
 #define SET_CMC_TBL_MASK_NG GENMASK(1, 0)
-static inline void SET_CMC_TBL_NG(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 8, val, GENMASK(7, 6));
-	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_NG,
-			   GENMASK(7, 6));
-}
+#define SET_CMC_TBL_NG(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 8, val, GENMASK(7, 6)); \
+	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_NG, \
+			   GENMASK(7, 6)); \
+} while (0)
 #define SET_CMC_TBL_MASK_CB GENMASK(1, 0)
-static inline void SET_CMC_TBL_CB(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 8, val, GENMASK(9, 8));
-	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CB,
-			   GENMASK(9, 8));
-}
+#define SET_CMC_TBL_CB(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 8, val, GENMASK(9, 8)); \
+	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CB, \
+			   GENMASK(9, 8)); \
+} while (0)
 #define SET_CMC_TBL_MASK_CS GENMASK(1, 0)
-static inline void SET_CMC_TBL_CS(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 8, val, GENMASK(11, 10));
-	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CS,
-			   GENMASK(11, 10));
-}
+#define SET_CMC_TBL_CS(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 8, val, GENMASK(11, 10)); \
+	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CS, \
+			   GENMASK(11, 10)); \
+} while (0)
 #define SET_CMC_TBL_MASK_CSI_TXBF_EN BIT(0)
-static inline void SET_CMC_TBL_CSI_TXBF_EN(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 8, val, BIT(12));
-	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CSI_TXBF_EN,
-			   BIT(12));
-}
+#define SET_CMC_TBL_CSI_TXBF_EN(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 8, val, BIT(12)); \
+	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CSI_TXBF_EN, \
+			   BIT(12)); \
+} while (0)
 #define SET_CMC_TBL_MASK_CSI_STBC_EN BIT(0)
-static inline void SET_CMC_TBL_CSI_STBC_EN(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 8, val, BIT(13));
-	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CSI_STBC_EN,
-			   BIT(13));
-}
+#define SET_CMC_TBL_CSI_STBC_EN(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 8, val, BIT(13)); \
+	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CSI_STBC_EN, \
+			   BIT(13)); \
+} while (0)
 #define SET_CMC_TBL_MASK_CSI_LDPC_EN BIT(0)
-static inline void SET_CMC_TBL_CSI_LDPC_EN(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 8, val, BIT(14));
-	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CSI_LDPC_EN,
-			   BIT(14));
-}
+#define SET_CMC_TBL_CSI_LDPC_EN(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 8, val, BIT(14)); \
+	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CSI_LDPC_EN, \
+			   BIT(14)); \
+} while (0)
 #define SET_CMC_TBL_MASK_CSI_PARA_EN BIT(0)
-static inline void SET_CMC_TBL_CSI_PARA_EN(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 8, val, BIT(15));
-	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CSI_PARA_EN,
-			   BIT(15));
-}
+#define SET_CMC_TBL_CSI_PARA_EN(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 8, val, BIT(15)); \
+	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CSI_PARA_EN, \
+			   BIT(15)); \
+} while (0)
 #define SET_CMC_TBL_MASK_CSI_FIX_RATE GENMASK(8, 0)
-static inline void SET_CMC_TBL_CSI_FIX_RATE(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 8, val, GENMASK(24, 16));
-	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CSI_FIX_RATE,
-			   GENMASK(24, 16));
-}
+#define SET_CMC_TBL_CSI_FIX_RATE(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 8, val, GENMASK(24, 16)); \
+	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CSI_FIX_RATE, \
+			   GENMASK(24, 16)); \
+} while (0)
 #define SET_CMC_TBL_MASK_CSI_GI_LTF GENMASK(2, 0)
-static inline void SET_CMC_TBL_CSI_GI_LTF(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 8, val, GENMASK(27, 25));
-	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CSI_GI_LTF,
-			   GENMASK(27, 25));
-}
+#define SET_CMC_TBL_CSI_GI_LTF(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 8, val, GENMASK(27, 25)); \
+	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CSI_GI_LTF, \
+			   GENMASK(27, 25)); \
+} while (0)
 #define SET_CMC_TBL_MASK_CSI_GID_SEL BIT(0)
-static inline void SET_CMC_TBL_CSI_GID_SEL(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 8, val, BIT(29));
-	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CSI_GID_SEL,
-			   BIT(29));
-}
+#define SET_CMC_TBL_CSI_GID_SEL(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 8, val, BIT(29)); \
+	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CSI_GID_SEL, \
+			   BIT(29)); \
+} while (0)
 #define SET_CMC_TBL_MASK_CSI_BW GENMASK(1, 0)
-static inline void SET_CMC_TBL_CSI_BW(void *table, u32 val)
-{
-	le32p_replace_bits((__le32 *)(table) + 8, val, GENMASK(31, 30));
-	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CSI_BW,
-			   GENMASK(31, 30));
-}
-
-static inline void SET_FWROLE_MAINTAIN_MACID(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(7, 0));
-}
-
-static inline void SET_FWROLE_MAINTAIN_SELF_ROLE(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(9, 8));
-}
-
-static inline void SET_FWROLE_MAINTAIN_UPD_MODE(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(12, 10));
-}
-
-static inline void SET_FWROLE_MAINTAIN_WIFI_ROLE(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(16, 13));
-}
-
-static inline void SET_JOININFO_MACID(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(7, 0));
-}
-
-static inline void SET_JOININFO_OP(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, BIT(8));
-}
-
-static inline void SET_JOININFO_BAND(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, BIT(9));
-}
-
-static inline void SET_JOININFO_WMM(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(11, 10));
-}
-
-static inline void SET_JOININFO_TGR(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, BIT(12));
-}
-
-static inline void SET_JOININFO_ISHESTA(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, BIT(13));
-}
-
-static inline void SET_JOININFO_DLBW(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(15, 14));
-}
-
-static inline void SET_JOININFO_TF_MAC_PAD(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(17, 16));
-}
-
-static inline void SET_JOININFO_DL_T_PE(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(20, 18));
-}
-
-static inline void SET_JOININFO_PORT_ID(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(23, 21));
-}
-
-static inline void SET_JOININFO_NET_TYPE(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(25, 24));
-}
-
-static inline void SET_JOININFO_WIFI_ROLE(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(29, 26));
-}
-
-static inline void SET_JOININFO_SELF_ROLE(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(31, 30));
-}
-
-static inline void SET_GENERAL_PKT_MACID(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(7, 0));
-}
-
-static inline void SET_GENERAL_PKT_PROBRSP_ID(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(15, 8));
-}
-
-static inline void SET_GENERAL_PKT_PSPOLL_ID(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(23, 16));
-}
-
-static inline void SET_GENERAL_PKT_NULL_ID(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(31, 24));
-}
-
-static inline void SET_GENERAL_PKT_QOS_NULL_ID(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)(h2c) + 1, val, GENMASK(7, 0));
-}
-
-static inline void SET_GENERAL_PKT_CTS2SELF_ID(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)(h2c) + 1, val, GENMASK(15, 8));
-}
-
-static inline void SET_LOG_CFG_LEVEL(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(7, 0));
-}
-
-static inline void SET_LOG_CFG_PATH(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(15, 8));
-}
-
-static inline void SET_LOG_CFG_COMP(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)(h2c) + 1, val, GENMASK(31, 0));
-}
-
-static inline void SET_LOG_CFG_COMP_EXT(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)(h2c) + 2, val, GENMASK(31, 0));
-}
-
-static inline void SET_BA_CAM_VALID(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, BIT(0));
-}
-
-static inline void SET_BA_CAM_INIT_REQ(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, BIT(1));
-}
-
-static inline void SET_BA_CAM_ENTRY_IDX(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(3, 2));
-}
-
-static inline void SET_BA_CAM_TID(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(7, 4));
-}
-
-static inline void SET_BA_CAM_MACID(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(15, 8));
-}
-
-static inline void SET_BA_CAM_BMAP_SIZE(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(19, 16));
-}
-
-static inline void SET_BA_CAM_SSN(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(31, 20));
-}
-
-static inline void SET_LPS_PARM_MACID(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(7, 0));
-}
-
-static inline void SET_LPS_PARM_PSMODE(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(15, 8));
-}
-
-static inline void SET_LPS_PARM_RLBM(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(19, 16));
-}
-
-static inline void SET_LPS_PARM_SMARTPS(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(23, 20));
-}
-
-static inline void SET_LPS_PARM_AWAKEINTERVAL(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)h2c, val, GENMASK(31, 24));
-}
-
-static inline void SET_LPS_PARM_VOUAPSD(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)(h2c) + 1, val, BIT(0));
-}
-
-static inline void SET_LPS_PARM_VIUAPSD(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)(h2c) + 1, val, BIT(1));
-}
-
-static inline void SET_LPS_PARM_BEUAPSD(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)(h2c) + 1, val, BIT(2));
-}
-
-static inline void SET_LPS_PARM_BKUAPSD(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)(h2c) + 1, val, BIT(3));
-}
-
-static inline void SET_LPS_PARM_LASTRPWM(void *h2c, u32 val)
-{
-	le32p_replace_bits((__le32 *)(h2c) + 1, val, GENMASK(15, 8));
-}
+#define SET_CMC_TBL_CSI_BW(table, val) \
+do { \
+	le32p_replace_bits((__le32 *)(table) + 8, val, GENMASK(31, 30)); \
+	le32p_replace_bits((__le32 *)(table) + 16, SET_CMC_TBL_MASK_CSI_BW, \
+			   GENMASK(31, 30)); \
+} while (0)
+
+#define SET_FWROLE_MAINTAIN_MACID(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(7, 0))
+#define SET_FWROLE_MAINTAIN_SELF_ROLE(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(9, 8))
+#define SET_FWROLE_MAINTAIN_UPD_MODE(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(12, 10))
+#define SET_FWROLE_MAINTAIN_WIFI_ROLE(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(16, 13))
+
+#define SET_JOININFO_MACID(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(7, 0))
+#define SET_JOININFO_OP(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, BIT(8))
+#define SET_JOININFO_BAND(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, BIT(9))
+#define SET_JOININFO_WMM(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(11, 10))
+#define SET_JOININFO_TGR(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, BIT(12))
+#define SET_JOININFO_ISHESTA(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, BIT(13))
+#define SET_JOININFO_DLBW(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(15, 14))
+#define SET_JOININFO_TF_MAC_PAD(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(17, 16))
+#define SET_JOININFO_DL_T_PE(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(20, 18))
+#define SET_JOININFO_PORT_ID(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(23, 21))
+#define SET_JOININFO_NET_TYPE(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(25, 24))
+#define SET_JOININFO_WIFI_ROLE(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(29, 26))
+#define SET_JOININFO_SELF_ROLE(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(31, 30))
+
+#define SET_GENERAL_PKT_MACID(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(7, 0))
+#define SET_GENERAL_PKT_PROBRSP_ID(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(15, 8))
+#define SET_GENERAL_PKT_PSPOLL_ID(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(23, 16))
+#define SET_GENERAL_PKT_NULL_ID(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(31, 24))
+#define SET_GENERAL_PKT_QOS_NULL_ID(h2c, val) \
+	le32p_replace_bits((__le32 *)(h2c) + 1, val, GENMASK(7, 0))
+#define SET_GENERAL_PKT_CTS2SELF_ID(h2c, val) \
+	le32p_replace_bits((__le32 *)(h2c) + 1, val, GENMASK(15, 8))
+
+#define SET_LOG_CFG_LEVEL(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(7, 0))
+#define SET_LOG_CFG_PATH(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(15, 8))
+#define SET_LOG_CFG_COMP(h2c, val) \
+	le32p_replace_bits((__le32 *)(h2c) + 1, val, GENMASK(31, 0))
+#define SET_LOG_CFG_COMP_EXT(h2c, val) \
+	le32p_replace_bits((__le32 *)(h2c) + 2, val, GENMASK(31, 0))
+
+#define SET_BA_CAM_VALID(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, BIT(0))
+#define SET_BA_CAM_INIT_REQ(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, BIT(1))
+#define SET_BA_CAM_ENTRY_IDX(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(3, 2))
+#define SET_BA_CAM_TID(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(7, 4))
+#define SET_BA_CAM_MACID(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(15, 8))
+#define SET_BA_CAM_BMAP_SIZE(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(19, 16))
+#define SET_BA_CAM_SSN(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(31, 20))
+
+#define SET_LPS_PARM_MACID(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(7, 0))
+#define SET_LPS_PARM_PSMODE(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(15, 8))
+#define SET_LPS_PARM_RLBM(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(19, 16))
+#define SET_LPS_PARM_SMARTPS(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(23, 20))
+#define SET_LPS_PARM_AWAKEINTERVAL(h2c, val) \
+	le32p_replace_bits((__le32 *)h2c, val, GENMASK(31, 24))
+#define SET_LPS_PARM_VOUAPSD(h2c, val) \
+	le32p_replace_bits((__le32 *)(h2c) + 1, val, BIT(0))
+#define SET_LPS_PARM_VIUAPSD(h2c, val) \
+	le32p_replace_bits((__le32 *)(h2c) + 1, val, BIT(1))
+#define SET_LPS_PARM_BEUAPSD(h2c, val) \
+	le32p_replace_bits((__le32 *)(h2c) + 1, val, BIT(2))
+#define SET_LPS_PARM_BKUAPSD(h2c, val) \
+	le32p_replace_bits((__le32 *)(h2c) + 1, val, BIT(3))
+#define SET_LPS_PARM_LASTRPWM(h2c, val) \
+	le32p_replace_bits((__le32 *)(h2c) + 1, val, GENMASK(15, 8))
 
 enum rtw89_btc_btf_h2c_class {
 	BTFC_SET = 0x10,
@@ -1316,322 +1054,165 @@ enum rtw89_btc_cxdrvinfo {
 	CXDRVINFO_MAX,
 };
 
-static inline void RTW89_SET_FWCMD_CXHDR_TYPE(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 0, val, GENMASK(7, 0));
-}
-
-static inline void RTW89_SET_FWCMD_CXHDR_LEN(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 1, val, GENMASK(7, 0));
-}
-
-static inline void RTW89_SET_FWCMD_CXINIT_ANT_TYPE(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 2, val, GENMASK(7, 0));
-}
-
-static inline void RTW89_SET_FWCMD_CXINIT_ANT_NUM(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 3, val, GENMASK(7, 0));
-}
-
-static inline void RTW89_SET_FWCMD_CXINIT_ANT_ISO(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 4, val, GENMASK(7, 0));
-}
-
-static inline void RTW89_SET_FWCMD_CXINIT_ANT_POS(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 5, val, BIT(0));
-}
-
-static inline void RTW89_SET_FWCMD_CXINIT_ANT_DIVERSITY(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 5, val, BIT(1));
-}
-
-static inline void RTW89_SET_FWCMD_CXINIT_MOD_RFE(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 6, val, GENMASK(7, 0));
-}
-
-static inline void RTW89_SET_FWCMD_CXINIT_MOD_CV(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 7, val, GENMASK(7, 0));
-}
-
-static inline void RTW89_SET_FWCMD_CXINIT_MOD_BT_SOLO(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 8, val, BIT(0));
-}
-
-static inline void RTW89_SET_FWCMD_CXINIT_MOD_BT_POS(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 8, val, BIT(1));
-}
-
-static inline void RTW89_SET_FWCMD_CXINIT_MOD_SW_TYPE(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 8, val, BIT(2));
-}
-
-static inline void RTW89_SET_FWCMD_CXINIT_WL_GCH(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 10, val, GENMASK(7, 0));
-}
-
-static inline void RTW89_SET_FWCMD_CXINIT_WL_ONLY(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 11, val, BIT(0));
-}
-
-static inline void RTW89_SET_FWCMD_CXINIT_WL_INITOK(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 11, val, BIT(1));
-}
-
-static inline void RTW89_SET_FWCMD_CXINIT_DBCC_EN(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 11, val, BIT(2));
-}
-
-static inline void RTW89_SET_FWCMD_CXINIT_CX_OTHER(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 11, val, BIT(3));
-}
-
-static inline void RTW89_SET_FWCMD_CXINIT_BT_ONLY(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 11, val, BIT(4));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_CONNECT_CNT(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 2, val, GENMASK(7, 0));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_LINK_MODE(void *cmd, u8 val)
-{
-	u8p_replace_bits((u8 *)(cmd) + 3, val, GENMASK(7, 0));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ROLE_NONE(void *cmd, u16 val)
-{
-	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(0));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ROLE_STA(void *cmd, u16 val)
-{
-	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(1));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ROLE_AP(void *cmd, u16 val)
-{
-	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(2));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ROLE_VAP(void *cmd, u16 val)
-{
-	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(3));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ROLE_ADHOC(void *cmd, u16 val)
-{
-	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(4));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ROLE_ADHOC_MASTER(void *cmd, u16 val)
-{
-	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(5));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ROLE_MESH(void *cmd, u16 val)
-{
-	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(6));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ROLE_MONITOR(void *cmd, u16 val)
-{
-	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(7));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ROLE_P2P_DEV(void *cmd, u16 val)
-{
-	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(8));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ROLE_P2P_GC(void *cmd, u16 val)
-{
-	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(9));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ROLE_P2P_GO(void *cmd, u16 val)
-{
-	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(10));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ROLE_NAN(void *cmd, u16 val)
-{
-	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(11));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ACT_CONNECTED(void *cmd, u8 val, int n)
-{
-	u8p_replace_bits((u8 *)(cmd) + (6 + 12 * (n)), val, BIT(0));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ACT_PID(void *cmd, u8 val, int n)
-{
-	u8p_replace_bits((u8 *)(cmd) + (6 + 12 * (n)), val, GENMASK(3, 1));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ACT_PHY(void *cmd, u8 val, int n)
-{
-	u8p_replace_bits((u8 *)(cmd) + (6 + 12 * (n)), val, BIT(4));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ACT_NOA(void *cmd, u8 val, int n)
-{
-	u8p_replace_bits((u8 *)(cmd) + (6 + 12 * (n)), val, BIT(5));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ACT_BAND(void *cmd, u8 val, int n)
-{
-	u8p_replace_bits((u8 *)(cmd) + (6 + 12 * (n)), val, GENMASK(7, 6));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ACT_CLIENT_PS(void *cmd, u8 val, int n)
-{
-	u8p_replace_bits((u8 *)(cmd) + (7 + 12 * (n)), val, BIT(0));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ACT_BW(void *cmd, u8 val, int n)
-{
-	u8p_replace_bits((u8 *)(cmd) + (7 + 12 * (n)), val, GENMASK(7, 1));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ACT_ROLE(void *cmd, u8 val, int n)
-{
-	u8p_replace_bits((u8 *)(cmd) + (8 + 12 * (n)), val, GENMASK(7, 0));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ACT_CH(void *cmd, u8 val, int n)
-{
-	u8p_replace_bits((u8 *)(cmd) + (9 + 12 * (n)), val, GENMASK(7, 0));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ACT_TX_LVL(void *cmd, u16 val, int n)
-{
-	le16p_replace_bits((__le16 *)((u8 *)(cmd) + (10 + 12 * (n))), val, GENMASK(15, 0));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ACT_RX_LVL(void *cmd, u16 val, int n)
-{
-	le16p_replace_bits((__le16 *)((u8 *)(cmd) + (12 + 12 * (n))), val, GENMASK(15, 0));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ACT_TX_RATE(void *cmd, u16 val, int n)
-{
-	le16p_replace_bits((__le16 *)((u8 *)(cmd) + (14 + 12 * (n))), val, GENMASK(15, 0));
-}
-
-static inline void RTW89_SET_FWCMD_CXROLE_ACT_RX_RATE(void *cmd, u16 val, int n)
-{
-	le16p_replace_bits((__le16 *)((u8 *)(cmd) + (16 + 12 * (n))), val, GENMASK(15, 0));
-}
-
-static inline void RTW89_SET_FWCMD_CXCTRL_MANUAL(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)((u8 *)(cmd) + 2), val, BIT(0));
-}
-
-static inline void RTW89_SET_FWCMD_CXCTRL_IGNORE_BT(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)((u8 *)(cmd) + 2), val, BIT(1));
-}
-
-static inline void RTW89_SET_FWCMD_CXCTRL_ALWAYS_FREERUN(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)((u8 *)(cmd) + 2), val, BIT(2));
-}
-
-static inline void RTW89_SET_FWCMD_CXCTRL_TRACE_STEP(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)((u8 *)(cmd) + 2), val, GENMASK(18, 3));
-}
-
-static inline void RTW89_SET_FWCMD_CXRFK_STATE(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)((u8 *)(cmd) + 2), val, GENMASK(1, 0));
-}
-
-static inline void RTW89_SET_FWCMD_CXRFK_PATH_MAP(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)((u8 *)(cmd) + 2), val, GENMASK(5, 2));
-}
-
-static inline void RTW89_SET_FWCMD_CXRFK_PHY_MAP(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)((u8 *)(cmd) + 2), val, GENMASK(7, 6));
-}
-
-static inline void RTW89_SET_FWCMD_CXRFK_BAND(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)((u8 *)(cmd) + 2), val, GENMASK(9, 8));
-}
-
-static inline void RTW89_SET_FWCMD_CXRFK_TYPE(void *cmd, u32 val)
-{
-	le32p_replace_bits((__le32 *)((u8 *)(cmd) + 2), val, GENMASK(17, 10));
-}
+#define RTW89_SET_FWCMD_CXHDR_TYPE(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 0, val, GENMASK(7, 0))
+#define RTW89_SET_FWCMD_CXHDR_LEN(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 1, val, GENMASK(7, 0))
+
+#define RTW89_SET_FWCMD_CXINIT_ANT_TYPE(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 2, val, GENMASK(7, 0))
+#define RTW89_SET_FWCMD_CXINIT_ANT_NUM(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 3, val, GENMASK(7, 0))
+#define RTW89_SET_FWCMD_CXINIT_ANT_ISO(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 4, val, GENMASK(7, 0))
+#define RTW89_SET_FWCMD_CXINIT_ANT_POS(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 5, val, BIT(0))
+#define RTW89_SET_FWCMD_CXINIT_ANT_DIVERSITY(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 5, val, BIT(1))
+#define RTW89_SET_FWCMD_CXINIT_MOD_RFE(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 6, val, GENMASK(7, 0))
+#define RTW89_SET_FWCMD_CXINIT_MOD_CV(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 7, val, GENMASK(7, 0))
+#define RTW89_SET_FWCMD_CXINIT_MOD_BT_SOLO(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 8, val, BIT(0))
+#define RTW89_SET_FWCMD_CXINIT_MOD_BT_POS(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 8, val, BIT(1))
+#define RTW89_SET_FWCMD_CXINIT_MOD_SW_TYPE(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 8, val, BIT(2))
+#define RTW89_SET_FWCMD_CXINIT_WL_GCH(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 10, val, GENMASK(7, 0))
+#define RTW89_SET_FWCMD_CXINIT_WL_ONLY(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 11, val, BIT(0))
+#define RTW89_SET_FWCMD_CXINIT_WL_INITOK(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 11, val, BIT(1))
+#define RTW89_SET_FWCMD_CXINIT_DBCC_EN(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 11, val, BIT(2))
+#define RTW89_SET_FWCMD_CXINIT_CX_OTHER(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 11, val, BIT(3))
+#define RTW89_SET_FWCMD_CXINIT_BT_ONLY(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 11, val, BIT(4))
+
+#define RTW89_SET_FWCMD_CXROLE_CONNECT_CNT(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 2, val, GENMASK(7, 0))
+#define RTW89_SET_FWCMD_CXROLE_LINK_MODE(cmd, val) \
+	u8p_replace_bits((u8 *)(cmd) + 3, val, GENMASK(7, 0))
+#define RTW89_SET_FWCMD_CXROLE_ROLE_NONE(cmd, val) \
+	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(0))
+#define RTW89_SET_FWCMD_CXROLE_ROLE_STA(cmd, val) \
+	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(1))
+#define RTW89_SET_FWCMD_CXROLE_ROLE_AP(cmd, val) \
+	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(2))
+#define RTW89_SET_FWCMD_CXROLE_ROLE_VAP(cmd, val) \
+	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(3))
+#define RTW89_SET_FWCMD_CXROLE_ROLE_ADHOC(cmd, val) \
+	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(4))
+#define RTW89_SET_FWCMD_CXROLE_ROLE_ADHOC_MASTER(cmd, val) \
+	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(5))
+#define RTW89_SET_FWCMD_CXROLE_ROLE_MESH(cmd, val) \
+	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(6))
+#define RTW89_SET_FWCMD_CXROLE_ROLE_MONITOR(cmd, val) \
+	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(7))
+#define RTW89_SET_FWCMD_CXROLE_ROLE_P2P_DEV(cmd, val) \
+	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(8))
+#define RTW89_SET_FWCMD_CXROLE_ROLE_P2P_GC(cmd, val) \
+	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(9))
+#define RTW89_SET_FWCMD_CXROLE_ROLE_P2P_GO(cmd, val) \
+	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(10))
+#define RTW89_SET_FWCMD_CXROLE_ROLE_NAN(cmd, val) \
+	le16p_replace_bits((__le16 *)((u8 *)(cmd) + 4), val, BIT(11))
+#define RTW89_SET_FWCMD_CXROLE_ACT_CONNECTED(cmd, val, n) \
+	u8p_replace_bits((u8 *)(cmd) + (6 + 12 * (n)), val, BIT(0))
+#define RTW89_SET_FWCMD_CXROLE_ACT_PID(cmd, val, n) \
+	u8p_replace_bits((u8 *)(cmd) + (6 + 12 * (n)), val, GENMASK(3, 1))
+#define RTW89_SET_FWCMD_CXROLE_ACT_PHY(cmd, val, n) \
+	u8p_replace_bits((u8 *)(cmd) + (6 + 12 * (n)), val, BIT(4))
+#define RTW89_SET_FWCMD_CXROLE_ACT_NOA(cmd, val, n) \
+	u8p_replace_bits((u8 *)(cmd) + (6 + 12 * (n)), val, BIT(5))
+#define RTW89_SET_FWCMD_CXROLE_ACT_BAND(cmd, val, n) \
+	u8p_replace_bits((u8 *)(cmd) + (6 + 12 * (n)), val, GENMASK(7, 6))
+#define RTW89_SET_FWCMD_CXROLE_ACT_CLIENT_PS(cmd, val, n) \
+	u8p_replace_bits((u8 *)(cmd) + (7 + 12 * (n)), val, BIT(0))
+#define RTW89_SET_FWCMD_CXROLE_ACT_BW(cmd, val, n) \
+	u8p_replace_bits((u8 *)(cmd) + (7 + 12 * (n)), val, GENMASK(7, 1))
+#define RTW89_SET_FWCMD_CXROLE_ACT_ROLE(cmd, val, n) \
+	u8p_replace_bits((u8 *)(cmd) + (8 + 12 * (n)), val, GENMASK(7, 0))
+#define RTW89_SET_FWCMD_CXROLE_ACT_CH(cmd, val, n) \
+	u8p_replace_bits((u8 *)(cmd) + (9 + 12 * (n)), val, GENMASK(7, 0))
+#define RTW89_SET_FWCMD_CXROLE_ACT_TX_LVL(cmd, val, n) \
+	le16p_replace_bits((__le16 *)((u8 *)(cmd) + (10 + 12 * (n))), val, GENMASK(15, 0))
+#define RTW89_SET_FWCMD_CXROLE_ACT_RX_LVL(cmd, val, n) \
+	le16p_replace_bits((__le16 *)((u8 *)(cmd) + (12 + 12 * (n))), val, GENMASK(15, 0))
+#define RTW89_SET_FWCMD_CXROLE_ACT_TX_RATE(cmd, val, n) \
+	le16p_replace_bits((__le16 *)((u8 *)(cmd) + (14 + 12 * (n))), val, GENMASK(15, 0))
+#define RTW89_SET_FWCMD_CXROLE_ACT_RX_RATE(cmd, val, n) \
+	le16p_replace_bits((__le16 *)((u8 *)(cmd) + (16 + 12 * (n))), val, GENMASK(15, 0))
+
+#define RTW89_SET_FWCMD_CXCTRL_MANUAL(cmd, val) \
+	le32p_replace_bits((__le32 *)((u8 *)(cmd) + 2), val, BIT(0))
+#define RTW89_SET_FWCMD_CXCTRL_IGNORE_BT(cmd, val) \
+	le32p_replace_bits((__le32 *)((u8 *)(cmd) + 2), val, BIT(1))
+#define RTW89_SET_FWCMD_CXCTRL_ALWAYS_FREERUN(cmd, val) \
+	le32p_replace_bits((__le32 *)((u8 *)(cmd) + 2), val, BIT(2))
+#define RTW89_SET_FWCMD_CXCTRL_TRACE_STEP(cmd, val) \
+	le32p_replace_bits((__le32 *)((u8 *)(cmd) + 2), val, GENMASK(18, 3))
+
+#define RTW89_SET_FWCMD_CXRFK_STATE(cmd, val) \
+	le32p_replace_bits((__le32 *)((u8 *)(cmd) + 2), val, GENMASK(1, 0))
+#define RTW89_SET_FWCMD_CXRFK_PATH_MAP(cmd, val) \
+	le32p_replace_bits((__le32 *)((u8 *)(cmd) + 2), val, GENMASK(5, 2))
+#define RTW89_SET_FWCMD_CXRFK_PHY_MAP(cmd, val) \
+	le32p_replace_bits((__le32 *)((u8 *)(cmd) + 2), val, GENMASK(7, 6))
+#define RTW89_SET_FWCMD_CXRFK_BAND(cmd, val) \
+	le32p_replace_bits((__le32 *)((u8 *)(cmd) + 2), val, GENMASK(9, 8))
+#define RTW89_SET_FWCMD_CXRFK_TYPE(cmd, val) \
+	le32p_replace_bits((__le32 *)((u8 *)(cmd) + 2), val, GENMASK(17, 10))
 
 #define RTW89_C2H_HEADER_LEN 8
 
 #define RTW89_GET_C2H_CATEGORY(c2h) \
-	le32_get_bits(*((const __le32 *)c2h), GENMASK(1, 0))
+	le32_get_bits(*((__le32 *)c2h), GENMASK(1, 0))
 #define RTW89_GET_C2H_CLASS(c2h) \
-	le32_get_bits(*((const __le32 *)c2h), GENMASK(7, 2))
+	le32_get_bits(*((__le32 *)c2h), GENMASK(7, 2))
 #define RTW89_GET_C2H_FUNC(c2h) \
-	le32_get_bits(*((const __le32 *)c2h), GENMASK(15, 8))
+	le32_get_bits(*((__le32 *)c2h), GENMASK(15, 8))
 #define RTW89_GET_C2H_LEN(c2h) \
-	le32_get_bits(*((const __le32 *)(c2h) + 1), GENMASK(13, 0))
+	le32_get_bits(*((__le32 *)(c2h) + 1), GENMASK(13, 0))
 
 #define RTW89_GET_C2H_LOG_SRT_PRT(c2h) (char *)((__le32 *)(c2h) + 2)
 #define RTW89_GET_C2H_LOG_LEN(len) ((len) - RTW89_C2H_HEADER_LEN)
 
 #define RTW89_GET_MAC_C2H_DONE_ACK_CAT(c2h) \
-	le32_get_bits(*((const __le32 *)(c2h) + 2), GENMASK(1, 0))
+	le32_get_bits(*((__le32 *)(c2h) + 2), GENMASK(1, 0))
 #define RTW89_GET_MAC_C2H_DONE_ACK_CLASS(c2h) \
-	le32_get_bits(*((const __le32 *)(c2h) + 2), GENMASK(7, 2))
+	le32_get_bits(*((__le32 *)(c2h) + 2), GENMASK(7, 2))
 #define RTW89_GET_MAC_C2H_DONE_ACK_FUNC(c2h) \
-	le32_get_bits(*((const __le32 *)(c2h) + 2), GENMASK(15, 8))
+	le32_get_bits(*((__le32 *)(c2h) + 2), GENMASK(15, 8))
 #define RTW89_GET_MAC_C2H_DONE_ACK_H2C_RETURN(c2h) \
-	le32_get_bits(*((const __le32 *)(c2h) + 2), GENMASK(23, 16))
+	le32_get_bits(*((__le32 *)(c2h) + 2), GENMASK(23, 16))
 #define RTW89_GET_MAC_C2H_DONE_ACK_H2C_SEQ(c2h) \
-	le32_get_bits(*((const __le32 *)(c2h) + 2), GENMASK(31, 24))
+	le32_get_bits(*((__le32 *)(c2h) + 2), GENMASK(31, 24))
 
 #define RTW89_GET_MAC_C2H_REV_ACK_CAT(c2h) \
-	le32_get_bits(*((const __le32 *)(c2h) + 2), GENMASK(1, 0))
+	le32_get_bits(*((__le32 *)(c2h) + 2), GENMASK(1, 0))
 #define RTW89_GET_MAC_C2H_REV_ACK_CLASS(c2h) \
-	le32_get_bits(*((const __le32 *)(c2h) + 2), GENMASK(7, 2))
+	le32_get_bits(*((__le32 *)(c2h) + 2), GENMASK(7, 2))
 #define RTW89_GET_MAC_C2H_REV_ACK_FUNC(c2h) \
-	le32_get_bits(*((const __le32 *)(c2h) + 2), GENMASK(15, 8))
+	le32_get_bits(*((__le32 *)(c2h) + 2), GENMASK(15, 8))
 #define RTW89_GET_MAC_C2H_REV_ACK_H2C_SEQ(c2h) \
-	le32_get_bits(*((const __le32 *)(c2h) + 2), GENMASK(23, 16))
+	le32_get_bits(*((__le32 *)(c2h) + 2), GENMASK(23, 16))
 
 #define RTW89_GET_PHY_C2H_RA_RPT_MACID(c2h) \
-	le32_get_bits(*((const __le32 *)(c2h) + 2), GENMASK(15, 0))
+	le32_get_bits(*((__le32 *)(c2h) + 2), GENMASK(15, 0))
 #define RTW89_GET_PHY_C2H_RA_RPT_RETRY_RATIO(c2h) \
-	le32_get_bits(*((const __le32 *)(c2h) + 2), GENMASK(23, 16))
+	le32_get_bits(*((__le32 *)(c2h) + 2), GENMASK(23, 16))
 #define RTW89_GET_PHY_C2H_RA_RPT_MCSNSS(c2h) \
-	le32_get_bits(*((const __le32 *)(c2h) + 3), GENMASK(6, 0))
+	le32_get_bits(*((__le32 *)(c2h) + 3), GENMASK(6, 0))
 #define RTW89_GET_PHY_C2H_RA_RPT_MD_SEL(c2h) \
-	le32_get_bits(*((const __le32 *)(c2h) + 3), GENMASK(9, 8))
+	le32_get_bits(*((__le32 *)(c2h) + 3), GENMASK(9, 8))
 #define RTW89_GET_PHY_C2H_RA_RPT_GILTF(c2h) \
-	le32_get_bits(*((const __le32 *)(c2h) + 3), GENMASK(12, 10))
+	le32_get_bits(*((__le32 *)(c2h) + 3), GENMASK(12, 10))
 #define RTW89_GET_PHY_C2H_RA_RPT_BW(c2h) \
-	le32_get_bits(*((const __le32 *)(c2h) + 3), GENMASK(14, 13))
+	le32_get_bits(*((__le32 *)(c2h) + 3), GENMASK(14, 13))
 
 /* VHT, HE, HT-old: [6:4]: NSS, [3:0]: MCS
  * HT-new: [6:5]: NA, [4:0]: MCS
@@ -1756,8 +1337,7 @@ int rtw89_fw_h2c_assoc_cmac_tbl(struct rtw89_dev *rtwdev,
 				struct ieee80211_sta *sta);
 int rtw89_fw_h2c_txtime_cmac_tbl(struct rtw89_dev *rtwdev,
 				 struct rtw89_sta *rtwsta);
-int rtw89_fw_h2c_cam(struct rtw89_dev *rtwdev, struct rtw89_vif *vif,
-		     struct rtw89_sta *rtwsta, const u8 *scan_mac_addr);
+int rtw89_fw_h2c_cam(struct rtw89_dev *rtwdev, struct rtw89_vif *vif);
 void rtw89_fw_c2h_irqsafe(struct rtw89_dev *rtwdev, struct sk_buff *c2h);
 void rtw89_fw_c2h_work(struct work_struct *work);
 int rtw89_fw_h2c_vif_maintain(struct rtw89_dev *rtwdev,
diff --git a/drivers/net/wireless/realtek/rtw89/mac.c b/drivers/net/wireless/realtek/rtw89/mac.c
index b98c47e9ecfe..afcd07ab1de7 100644
--- a/drivers/net/wireless/realtek/rtw89/mac.c
+++ b/drivers/net/wireless/realtek/rtw89/mac.c
@@ -1093,6 +1093,7 @@ static int cmac_func_en(struct rtw89_dev *rtwdev, u8 mac_idx, bool en)
 static int dmac_func_en(struct rtw89_dev *rtwdev)
 {
 	u32 val32;
+	u32 ret = 0;
 
 	val32 = (B_AX_MAC_FUNC_EN | B_AX_DMAC_FUNC_EN | B_AX_MAC_SEC_EN |
 		 B_AX_DISPATCHER_EN | B_AX_DLE_CPUIO_EN | B_AX_PKT_IN_EN |
@@ -1106,7 +1107,7 @@ static int dmac_func_en(struct rtw89_dev *rtwdev)
 		 B_AX_WD_RLS_CLK_EN);
 	rtw89_write32(rtwdev, R_AX_DMAC_CLK_EN, val32);
 
-	return 0;
+	return ret;
 }
 
 static int chip_func_en(struct rtw89_dev *rtwdev)
@@ -2990,7 +2991,7 @@ int rtw89_mac_vif_init(struct rtw89_dev *rtwdev, struct rtw89_vif *rtwvif)
 	if (ret)
 		return ret;
 
-	ret = rtw89_fw_h2c_cam(rtwdev, rtwvif, NULL, NULL);
+	ret = rtw89_fw_h2c_cam(rtwdev, rtwvif);
 	if (ret)
 		return ret;
 
@@ -3011,7 +3012,7 @@ int rtw89_mac_vif_deinit(struct rtw89_dev *rtwdev, struct rtw89_vif *rtwvif)
 
 	rtw89_cam_deinit(rtwdev, rtwvif);
 
-	ret = rtw89_fw_h2c_cam(rtwdev, rtwvif, NULL, NULL);
+	ret = rtw89_fw_h2c_cam(rtwdev, rtwvif);
 	if (ret)
 		return ret;
 
@@ -3450,18 +3451,6 @@ bool rtw89_mac_get_ctrl_path(struct rtw89_dev *rtwdev)
 	return FIELD_GET(B_AX_LTE_MUX_CTRL_PATH >> 24, val);
 }
 
-u16 rtw89_mac_get_plt_cnt(struct rtw89_dev *rtwdev, u8 band)
-{
-	u32 reg;
-	u16 cnt;
-
-	reg = rtw89_mac_reg_by_idx(R_AX_BT_PLT, band);
-	cnt = rtw89_read32_mask(rtwdev, reg, B_AX_BT_PLT_PKT_CNT_MASK);
-	rtw89_write16_set(rtwdev, reg, B_AX_BT_PLT_RST);
-
-	return cnt;
-}
-
 static void rtw89_mac_bfee_ctrl(struct rtw89_dev *rtwdev, u8 mac_idx, bool en)
 {
 	u32 reg;
@@ -3706,7 +3695,7 @@ void _rtw89_mac_bf_monitor_track(struct rtw89_dev *rtwdev)
 {
 	struct rtw89_traffic_stats *stats = &rtwdev->stats;
 	struct rtw89_vif *rtwvif;
-	bool en = stats->tx_tfc_lv <= stats->rx_tfc_lv;
+	bool en = stats->tx_tfc_lv > stats->rx_tfc_lv ? false : true;
 	bool old = test_bit(RTW89_FLAG_BFEE_EN, rtwdev->flags);
 
 	if (en == old)
diff --git a/drivers/net/wireless/realtek/rtw89/mac.h b/drivers/net/wireless/realtek/rtw89/mac.h
index b7d13edf7dd1..6f3db8a2a9c2 100644
--- a/drivers/net/wireless/realtek/rtw89/mac.h
+++ b/drivers/net/wireless/realtek/rtw89/mac.h
@@ -227,7 +227,6 @@ enum rtw89_mac_dbg_port_sel {
 /* SRAM mem dump */
 #define R_AX_INDIR_ACCESS_ENTRY 0x40000
 
-#define	AXIDMA_BASE_ADDR		0x18006000
 #define	STA_SCHED_BASE_ADDR		0x18808000
 #define	RXPLD_FLTR_CAM_BASE_ADDR	0x18813000
 #define	SECURITY_CAM_BASE_ADDR		0x18814000
@@ -241,15 +240,10 @@ enum rtw89_mac_dbg_port_sel {
 #define	DMAC_TBL_BASE_ADDR		0x18800000
 #define	SHCUT_MACHDR_BASE_ADDR		0x18800800
 #define	BCN_IE_CAM1_BASE_ADDR		0x188A0000
-#define	TXD_FIFO_0_BASE_ADDR		0x18856200
-#define	TXD_FIFO_1_BASE_ADDR		0x188A1080
-#define	TXDATA_FIFO_0_BASE_ADDR		0x18856000
-#define	TXDATA_FIFO_1_BASE_ADDR		0x188A1000
 
 #define CCTL_INFO_SIZE		32
 
 enum rtw89_mac_mem_sel {
-	RTW89_MAC_MEM_AXIDMA,
 	RTW89_MAC_MEM_SHARED_BUF,
 	RTW89_MAC_MEM_DMAC_TBL,
 	RTW89_MAC_MEM_SHCUT_MACHDR,
@@ -262,10 +256,6 @@ enum rtw89_mac_mem_sel {
 	RTW89_MAC_MEM_BA_CAM,
 	RTW89_MAC_MEM_BCN_IE_CAM0,
 	RTW89_MAC_MEM_BCN_IE_CAM1,
-	RTW89_MAC_MEM_TXD_FIFO_0,
-	RTW89_MAC_MEM_TXD_FIFO_1,
-	RTW89_MAC_MEM_TXDATA_FIFO_0,
-	RTW89_MAC_MEM_TXDATA_FIFO_1,
 
 	/* keep last */
 	RTW89_MAC_MEM_LAST,
@@ -788,7 +778,6 @@ int rtw89_mac_coex_init(struct rtw89_dev *rtwdev, const struct rtw89_mac_ax_coex
 int rtw89_mac_cfg_gnt(struct rtw89_dev *rtwdev,
 		      const struct rtw89_mac_ax_coex_gnt *gnt_cfg);
 int rtw89_mac_cfg_plt(struct rtw89_dev *rtwdev, struct rtw89_mac_ax_plt *plt);
-u16 rtw89_mac_get_plt_cnt(struct rtw89_dev *rtwdev, u8 band);
 void rtw89_mac_cfg_sb(struct rtw89_dev *rtwdev, u32 val);
 u32 rtw89_mac_get_sb(struct rtw89_dev *rtwdev);
 bool rtw89_mac_get_ctrl_path(struct rtw89_dev *rtwdev);
diff --git a/drivers/net/wireless/realtek/rtw89/mac80211.c b/drivers/net/wireless/realtek/rtw89/mac80211.c
index a322259f4cc4..16dc6fb7dbb0 100644
--- a/drivers/net/wireless/realtek/rtw89/mac80211.c
+++ b/drivers/net/wireless/realtek/rtw89/mac80211.c
@@ -27,7 +27,6 @@ static void rtw89_ops_tx(struct ieee80211_hw *hw,
 	if (ret) {
 		rtw89_err(rtwdev, "failed to transmit skb: %d\n", ret);
 		ieee80211_free_txskb(hw, skb);
-		return;
 	}
 	rtw89_core_tx_kick_off(rtwdev, qsel);
 }
@@ -337,7 +336,7 @@ static void rtw89_ops_bss_info_changed(struct ieee80211_hw *hw,
 	if (changed & BSS_CHANGED_BSSID) {
 		ether_addr_copy(rtwvif->bssid, conf->bssid);
 		rtw89_cam_bssid_changed(rtwdev, rtwvif);
-		rtw89_fw_h2c_cam(rtwdev, rtwvif, NULL, NULL);
+		rtw89_fw_h2c_cam(rtwdev, rtwvif);
 	}
 
 	if (changed & BSS_CHANGED_ERP_SLOT)
@@ -616,7 +615,6 @@ static void rtw89_ops_sw_scan_start(struct ieee80211_hw *hw,
 				    const u8 *mac_addr)
 {
 	struct rtw89_dev *rtwdev = hw->priv;
-	struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv;
 	struct rtw89_hal *hal = &rtwdev->hal;
 
 	mutex_lock(&rtwdev->mutex);
@@ -625,7 +623,6 @@ static void rtw89_ops_sw_scan_start(struct ieee80211_hw *hw,
 	rtw89_btc_ntfy_scan_start(rtwdev, RTW89_PHY_0, hal->current_band_type);
 	rtw89_chip_rfk_scan(rtwdev, true);
 	rtw89_hci_recalc_int_mit(rtwdev);
-	rtw89_fw_h2c_cam(rtwdev, rtwvif, NULL, mac_addr);
 	mutex_unlock(&rtwdev->mutex);
 }
 
@@ -633,10 +630,8 @@ static void rtw89_ops_sw_scan_complete(struct ieee80211_hw *hw,
 				       struct ieee80211_vif *vif)
 {
 	struct rtw89_dev *rtwdev = hw->priv;
-	struct rtw89_vif *rtwvif = (struct rtw89_vif *)vif->drv_priv;
 
 	mutex_lock(&rtwdev->mutex);
-	rtw89_fw_h2c_cam(rtwdev, rtwvif, NULL, NULL);
 	rtw89_chip_rfk_scan(rtwdev, false);
 	rtw89_btc_ntfy_scan_finish(rtwdev, RTW89_PHY_0);
 	rtwdev->scanning = false;
diff --git a/drivers/net/wireless/realtek/rtw89/phy.c b/drivers/net/wireless/realtek/rtw89/phy.c
index 147009888de0..ab134856baac 100644
--- a/drivers/net/wireless/realtek/rtw89/phy.c
+++ b/drivers/net/wireless/realtek/rtw89/phy.c
@@ -654,12 +654,6 @@ rtw89_phy_cofig_rf_reg_store(struct rtw89_dev *rtwdev,
 	u16 idx = info->curr_idx % RTW89_H2C_RF_PAGE_SIZE;
 	u8 page = info->curr_idx / RTW89_H2C_RF_PAGE_SIZE;
 
-	if (page >= RTW89_H2C_RF_PAGE_NUM) {
-		rtw89_warn(rtwdev, "RF parameters exceed size. path=%d, idx=%d",
-			   rf_path, info->curr_idx);
-		return;
-	}
-
 	info->rtw89_phy_config_rf_h2c[page][idx] =
 		cpu_to_le32((reg->addr << 20) | reg->data);
 	info->curr_idx++;
@@ -668,29 +662,30 @@ rtw89_phy_cofig_rf_reg_store(struct rtw89_dev *rtwdev,
 static int rtw89_phy_config_rf_reg_fw(struct rtw89_dev *rtwdev,
 				      struct rtw89_fw_h2c_rf_reg_info *info)
 {
-	u16 remain = info->curr_idx;
-	u16 len = 0;
+	u16 page = info->curr_idx / RTW89_H2C_RF_PAGE_SIZE;
+	u16 len = (info->curr_idx % RTW89_H2C_RF_PAGE_SIZE) * 4;
 	u8 i;
 	int ret = 0;
 
-	if (remain > RTW89_H2C_RF_PAGE_NUM * RTW89_H2C_RF_PAGE_SIZE) {
+	if (page > RTW89_H2C_RF_PAGE_NUM) {
 		rtw89_warn(rtwdev,
-			   "rf reg h2c total len %d larger than %d\n",
-			   remain, RTW89_H2C_RF_PAGE_NUM * RTW89_H2C_RF_PAGE_SIZE);
-		ret = -EINVAL;
-		goto out;
+			   "rf reg h2c total page num %d larger than %d (RTW89_H2C_RF_PAGE_NUM)\n",
+			   page, RTW89_H2C_RF_PAGE_NUM);
+		return -EINVAL;
 	}
 
-	for (i = 0; i < RTW89_H2C_RF_PAGE_NUM && remain; i++, remain -= len) {
-		len = remain > RTW89_H2C_RF_PAGE_SIZE ? RTW89_H2C_RF_PAGE_SIZE : remain;
-		ret = rtw89_fw_h2c_rf_reg(rtwdev, info, len * 4, i);
+	for (i = 0; i < page; i++) {
+		ret = rtw89_fw_h2c_rf_reg(rtwdev, info,
+					  RTW89_H2C_RF_PAGE_SIZE * 4, i);
 		if (ret)
-			goto out;
+			return ret;
 	}
-out:
+	ret = rtw89_fw_h2c_rf_reg(rtwdev, info, len, i);
+	if (ret)
+		return ret;
 	info->curr_idx = 0;
 
-	return ret;
+	return 0;
 }
 
 static void rtw89_phy_config_rf_reg(struct rtw89_dev *rtwdev,
@@ -1104,15 +1099,9 @@ s8 rtw89_phy_read_txpwr_limit(struct rtw89_dev *rtwdev,
 	switch (band) {
 	case RTW89_BAND_2G:
 		lmt = (*chip->txpwr_lmt_2g)[bw][ntx][rs][bf][regd][ch_idx];
-		if (!lmt)
-			lmt = (*chip->txpwr_lmt_2g)[bw][ntx][rs][bf]
-						   [RTW89_WW][ch_idx];
 		break;
 	case RTW89_BAND_5G:
 		lmt = (*chip->txpwr_lmt_5g)[bw][ntx][rs][bf][regd][ch_idx];
-		if (!lmt)
-			lmt = (*chip->txpwr_lmt_5g)[bw][ntx][rs][bf]
-						   [RTW89_WW][ch_idx];
 		break;
 	default:
 		rtw89_warn(rtwdev, "unknown band type: %d\n", band);
@@ -1235,15 +1224,9 @@ static s8 rtw89_phy_read_txpwr_limit_ru(struct rtw89_dev *rtwdev,
 	switch (band) {
 	case RTW89_BAND_2G:
 		lmt_ru = (*chip->txpwr_lmt_ru_2g)[ru][ntx][regd][ch_idx];
-		if (!lmt_ru)
-			lmt_ru = (*chip->txpwr_lmt_ru_2g)[ru][ntx]
-							 [RTW89_WW][ch_idx];
 		break;
 	case RTW89_BAND_5G:
 		lmt_ru = (*chip->txpwr_lmt_ru_5g)[ru][ntx][regd][ch_idx];
-		if (!lmt_ru)
-			lmt_ru = (*chip->txpwr_lmt_ru_5g)[ru][ntx]
-							 [RTW89_WW][ch_idx];
 		break;
 	default:
 		rtw89_warn(rtwdev, "unknown band type: %d\n", band);
@@ -1784,7 +1767,7 @@ static void rtw89_phy_cfo_dm(struct rtw89_dev *rtwdev)
 	}
 	rtw89_phy_cfo_crystal_cap_adjust(rtwdev, new_cfo);
 	cfo->cfo_avg_pre = new_cfo;
-	x_cap_update =  cfo->crystal_cap != pre_x_cap;
+	x_cap_update =  cfo->crystal_cap == pre_x_cap ? false : true;
 	rtw89_debug(rtwdev, RTW89_DBG_CFO, "Xcap_up=%d\n", x_cap_update);
 	rtw89_debug(rtwdev, RTW89_DBG_CFO, "Xcap: D:%x C:%x->%x, ofst=%d\n",
 		    cfo->def_x_cap, pre_x_cap, cfo->crystal_cap,
@@ -2421,116 +2404,6 @@ void rtw89_phy_env_monitor_track(struct rtw89_dev *rtwdev)
 		    env->ccx_watchdog_result, chk_result);
 }
 
-static bool rtw89_physts_ie_page_valid(enum rtw89_phy_status_bitmap *ie_page)
-{
-	if (*ie_page > RTW89_PHYSTS_BITMAP_NUM ||
-	    *ie_page == RTW89_RSVD_9)
-		return false;
-	else if (*ie_page > RTW89_RSVD_9)
-		*ie_page -= 1;
-
-	return true;
-}
-
-static u32 rtw89_phy_get_ie_bitmap_addr(enum rtw89_phy_status_bitmap ie_page)
-{
-	static const u8 ie_page_shift = 2;
-
-	return R_PHY_STS_BITMAP_ADDR_START + (ie_page << ie_page_shift);
-}
-
-static u32 rtw89_physts_get_ie_bitmap(struct rtw89_dev *rtwdev,
-				      enum rtw89_phy_status_bitmap ie_page)
-{
-	u32 addr;
-
-	if (!rtw89_physts_ie_page_valid(&ie_page))
-		return 0;
-
-	addr = rtw89_phy_get_ie_bitmap_addr(ie_page);
-
-	return rtw89_phy_read32(rtwdev, addr);
-}
-
-static void rtw89_physts_set_ie_bitmap(struct rtw89_dev *rtwdev,
-				       enum rtw89_phy_status_bitmap ie_page,
-				       u32 val)
-{
-	const struct rtw89_chip_info *chip = rtwdev->chip;
-	u32 addr;
-
-	if (!rtw89_physts_ie_page_valid(&ie_page))
-		return;
-
-	if (chip->chip_id == RTL8852A)
-		val &= B_PHY_STS_BITMAP_MSK_52A;
-
-	addr = rtw89_phy_get_ie_bitmap_addr(ie_page);
-	rtw89_phy_write32(rtwdev, addr, val);
-}
-
-static void rtw89_physts_enable_ie_bitmap(struct rtw89_dev *rtwdev,
-					  enum rtw89_phy_status_bitmap bitmap,
-					  enum rtw89_phy_status_ie_type ie,
-					  bool enable)
-{
-	u32 val = rtw89_physts_get_ie_bitmap(rtwdev, bitmap);
-
-	if (enable)
-		val |= BIT(ie);
-	else
-		val &= ~BIT(ie);
-
-	rtw89_physts_set_ie_bitmap(rtwdev, bitmap, val);
-}
-
-static void rtw89_physts_enable_fail_report(struct rtw89_dev *rtwdev,
-					    bool enable,
-					    enum rtw89_phy_idx phy_idx)
-{
-	if (enable) {
-		rtw89_phy_write32_clr(rtwdev, R_PLCP_HISTOGRAM,
-				      B_STS_DIS_TRIG_BY_FAIL);
-		rtw89_phy_write32_clr(rtwdev, R_PLCP_HISTOGRAM,
-				      B_STS_DIS_TRIG_BY_BRK);
-	} else {
-		rtw89_phy_write32_set(rtwdev, R_PLCP_HISTOGRAM,
-				      B_STS_DIS_TRIG_BY_FAIL);
-		rtw89_phy_write32_set(rtwdev, R_PLCP_HISTOGRAM,
-				      B_STS_DIS_TRIG_BY_BRK);
-	}
-}
-
-static void rtw89_physts_parsing_init(struct rtw89_dev *rtwdev)
-{
-	const struct rtw89_chip_info *chip = rtwdev->chip;
-	u8 i;
-
-	if (chip->chip_id == RTL8852A && rtwdev->hal.cv == CHIP_CBV)
-		rtw89_physts_enable_fail_report(rtwdev, false, RTW89_PHY_0);
-
-	for (i = 0; i < RTW89_PHYSTS_BITMAP_NUM; i++) {
-		if (i >= RTW89_CCK_PKT)
-			rtw89_physts_enable_ie_bitmap(rtwdev, i,
-						      RTW89_PHYSTS_IE09_FTR_0,
-						      true);
-		if ((i >= RTW89_CCK_BRK && i <= RTW89_VHT_MU) ||
-		    (i >= RTW89_RSVD_9 && i <= RTW89_CCK_PKT))
-			continue;
-		rtw89_physts_enable_ie_bitmap(rtwdev, i,
-					      RTW89_PHYSTS_IE24_OFDM_TD_PATH_A,
-					      true);
-	}
-	rtw89_physts_enable_ie_bitmap(rtwdev, RTW89_VHT_PKT,
-				      RTW89_PHYSTS_IE13_DL_MU_DEF, true);
-	rtw89_physts_enable_ie_bitmap(rtwdev, RTW89_HE_PKT,
-				      RTW89_PHYSTS_IE13_DL_MU_DEF, true);
-
-	/* force IE01 for channel index, only channel field is valid */
-	rtw89_physts_enable_ie_bitmap(rtwdev, RTW89_CCK_PKT,
-				      RTW89_PHYSTS_IE01_CMN_OFDM, true);
-}
-
 static void rtw89_phy_dig_read_gain_table(struct rtw89_dev *rtwdev, int type)
 {
 	const struct rtw89_chip_info *chip = rtwdev->chip;
@@ -2966,7 +2839,6 @@ void rtw89_phy_dm_init(struct rtw89_dev *rtwdev)
 	rtw89_chip_bb_sethw(rtwdev);
 
 	rtw89_phy_env_monitor_init(rtwdev);
-	rtw89_physts_parsing_init(rtwdev);
 	rtw89_phy_dig_init(rtwdev);
 	rtw89_phy_cfo_init(rtwdev);
 
diff --git a/drivers/net/wireless/realtek/rtw89/phy.h b/drivers/net/wireless/realtek/rtw89/phy.h
index b1f059b725a1..370129345e0f 100644
--- a/drivers/net/wireless/realtek/rtw89/phy.h
+++ b/drivers/net/wireless/realtek/rtw89/phy.h
@@ -134,66 +134,6 @@ enum rtw89_ccx_unit {
 	RTW89_CCX_32_US = 3
 };
 
-enum rtw89_phy_status_ie_type {
-	RTW89_PHYSTS_IE00_CMN_CCK			= 0,
-	RTW89_PHYSTS_IE01_CMN_OFDM			= 1,
-	RTW89_PHYSTS_IE02_CMN_EXT_AX			= 2,
-	RTW89_PHYSTS_IE03_CMN_EXT_SEG_1			= 3,
-	RTW89_PHYSTS_IE04_CMN_EXT_PATH_A		= 4,
-	RTW89_PHYSTS_IE05_CMN_EXT_PATH_B		= 5,
-	RTW89_PHYSTS_IE06_CMN_EXT_PATH_C		= 6,
-	RTW89_PHYSTS_IE07_CMN_EXT_PATH_D		= 7,
-	RTW89_PHYSTS_IE08_FTR_CH			= 8,
-	RTW89_PHYSTS_IE09_FTR_0				= 9,
-	RTW89_PHYSTS_IE10_FTR_PLCP_EXT			= 10,
-	RTW89_PHYSTS_IE11_FTR_PLCP_HISTOGRAM		= 11,
-	RTW89_PHYSTS_IE12_MU_EIGEN_INFO			= 12,
-	RTW89_PHYSTS_IE13_DL_MU_DEF			= 13,
-	RTW89_PHYSTS_IE14_TB_UL_CQI			= 14,
-	RTW89_PHYSTS_IE15_TB_UL_DEF			= 15,
-	RTW89_PHYSTS_IE16_RSVD16			= 16,
-	RTW89_PHYSTS_IE17_TB_UL_CTRL			= 17,
-	RTW89_PHYSTS_IE18_DBG_OFDM_FD_CMN		= 18,
-	RTW89_PHYSTS_IE19_DBG_OFDM_TD_CMN		= 19,
-	RTW89_PHYSTS_IE20_DBG_OFDM_FD_USER_SEG_0	= 20,
-	RTW89_PHYSTS_IE21_DBG_OFDM_FD_USER_SEG_1	= 21,
-	RTW89_PHYSTS_IE22_DBG_OFDM_FD_USER_AGC		= 22,
-	RTW89_PHYSTS_IE23_RSVD23			= 23,
-	RTW89_PHYSTS_IE24_OFDM_TD_PATH_A		= 24,
-	RTW89_PHYSTS_IE25_OFDM_TD_PATH_B		= 25,
-	RTW89_PHYSTS_IE26_OFDM_TD_PATH_C		= 26,
-	RTW89_PHYSTS_IE27_OFDM_TD_PATH_D		= 27,
-	RTW89_PHYSTS_IE28_DBG_CCK_PATH_A		= 28,
-	RTW89_PHYSTS_IE29_DBG_CCK_PATH_B		= 29,
-	RTW89_PHYSTS_IE30_DBG_CCK_PATH_C		= 30,
-	RTW89_PHYSTS_IE31_DBG_CCK_PATH_D		= 31,
-
-	/* keep last */
-	RTW89_PHYSTS_IE_NUM,
-	RTW89_PHYSTS_IE_MAX = RTW89_PHYSTS_IE_NUM - 1
-};
-
-enum rtw89_phy_status_bitmap {
-	RTW89_TD_SEARCH_FAIL  = 0,
-	RTW89_BRK_BY_TX_PKT   = 1,
-	RTW89_CCA_SPOOF       = 2,
-	RTW89_OFDM_BRK        = 3,
-	RTW89_CCK_BRK         = 4,
-	RTW89_DL_MU_SPOOFING  = 5,
-	RTW89_HE_MU           = 6,
-	RTW89_VHT_MU          = 7,
-	RTW89_UL_TB_SPOOFING  = 8,
-	RTW89_RSVD_9          = 9,
-	RTW89_TRIG_BASE_PPDU  = 10,
-	RTW89_CCK_PKT         = 11,
-	RTW89_LEGACY_OFDM_PKT = 12,
-	RTW89_HT_PKT          = 13,
-	RTW89_VHT_PKT         = 14,
-	RTW89_HE_PKT          = 15,
-
-	RTW89_PHYSTS_BITMAP_NUM
-};
-
 enum rtw89_dig_gain_type {
 	RTW89_DIG_GAIN_LNA_G = 0,
 	RTW89_DIG_GAIN_TIA_G = 1,
diff --git a/drivers/net/wireless/realtek/rtw89/reg.h b/drivers/net/wireless/realtek/rtw89/reg.h
index e0a416d37d0e..365d8c8ce57b 100644
--- a/drivers/net/wireless/realtek/rtw89/reg.h
+++ b/drivers/net/wireless/realtek/rtw89/reg.h
@@ -1658,7 +1658,7 @@
 #define R_RSTB_WATCH_DOG 0x000C
 #define B_P0_RSTB_WATCH_DOG BIT(0)
 #define B_P1_RSTB_WATCH_DOG BIT(1)
-#define B_UPD_P0_EN BIT(31)
+#define B_UPD_P0_EN BIT(30)
 #define R_ANAPAR_PW15 0x030C
 #define B_ANAPAR_PW15 GENMASK(31, 24)
 #define B_ANAPAR_PW15_H GENMASK(27, 24)
@@ -1674,29 +1674,6 @@
 #define B_UPD_CLK_ADC_VAL GENMASK(26, 25)
 #define R_RSTB_ASYNC 0x0704
 #define B_RSTB_ASYNC_ALL BIT(1)
-#define R_MAC_PIN_SEL 0x0734
-#define B_CH_IDX_SEG0 GENMASK(23, 16)
-#define R_PLCP_HISTOGRAM 0x0738
-#define B_STS_DIS_TRIG_BY_BRK BIT(2)
-#define B_STS_DIS_TRIG_BY_FAIL BIT(3)
-#define R_PHY_STS_BITMAP_ADDR_START R_PHY_STS_BITMAP_SEARCH_FAIL
-#define B_PHY_STS_BITMAP_ADDR_MASK GENMASK(6, 2)
-#define R_PHY_STS_BITMAP_SEARCH_FAIL 0x073C
-#define B_PHY_STS_BITMAP_MSK_52A 0x337cff3f
-#define R_PHY_STS_BITMAP_R2T 0x0740
-#define R_PHY_STS_BITMAP_CCA_SPOOF 0x0744
-#define R_PHY_STS_BITMAP_OFDM_BRK 0x0748
-#define R_PHY_STS_BITMAP_CCK_BRK 0x074C
-#define R_PHY_STS_BITMAP_DL_MU_SPOOF 0x0750
-#define R_PHY_STS_BITMAP_HE_MU 0x0754
-#define R_PHY_STS_BITMAP_VHT_MU 0x0758
-#define R_PHY_STS_BITMAP_UL_TB_SPOOF 0x075C
-#define R_PHY_STS_BITMAP_TRIGBASE 0x0760
-#define R_PHY_STS_BITMAP_CCK 0x0764
-#define R_PHY_STS_BITMAP_LEGACY 0x0768
-#define R_PHY_STS_BITMAP_HT 0x076C
-#define R_PHY_STS_BITMAP_VHT 0x0770
-#define R_PHY_STS_BITMAP_HE 0x0774
 #define R_PMAC_GNT 0x0980
 #define B_PMAC_GNT_TXEN BIT(0)
 #define B_PMAC_GNT_RXEN BIT(16)
diff --git a/drivers/net/wireless/realtek/rtw89/regd.c b/drivers/net/wireless/realtek/rtw89/regd.c
index 4c37e590e43c..f00b94ecfff4 100644
--- a/drivers/net/wireless/realtek/rtw89/regd.c
+++ b/drivers/net/wireless/realtek/rtw89/regd.c
@@ -15,244 +15,243 @@ static const struct rtw89_regulatory rtw89_ww_regd =
 	COUNTRY_REGD("00", RTW89_WW, RTW89_WW);
 
 static const struct rtw89_regulatory rtw89_regd_map[] = {
-	COUNTRY_REGD("AR", RTW89_MEXICO, RTW89_MEXICO),
-	COUNTRY_REGD("BO", RTW89_FCC, RTW89_FCC),
+	COUNTRY_REGD("AR", RTW89_FCC, RTW89_FCC),
+	COUNTRY_REGD("BO", RTW89_WW, RTW89_FCC),
 	COUNTRY_REGD("BR", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("CL", RTW89_CHILE, RTW89_CHILE),
+	COUNTRY_REGD("CL", RTW89_WW, RTW89_CHILE),
 	COUNTRY_REGD("CO", RTW89_FCC, RTW89_FCC),
 	COUNTRY_REGD("CR", RTW89_FCC, RTW89_FCC),
 	COUNTRY_REGD("EC", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("SV", RTW89_FCC, RTW89_FCC),
+	COUNTRY_REGD("SV", RTW89_WW, RTW89_FCC),
 	COUNTRY_REGD("GT", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("HN", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("MX", RTW89_MEXICO, RTW89_MEXICO),
+	COUNTRY_REGD("HN", RTW89_WW, RTW89_FCC),
+	COUNTRY_REGD("MX", RTW89_FCC, RTW89_MEXICO),
 	COUNTRY_REGD("NI", RTW89_FCC, RTW89_FCC),
 	COUNTRY_REGD("PA", RTW89_FCC, RTW89_FCC),
 	COUNTRY_REGD("PY", RTW89_FCC, RTW89_FCC),
 	COUNTRY_REGD("PE", RTW89_FCC, RTW89_FCC),
 	COUNTRY_REGD("US", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("UY", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("VE", RTW89_FCC, RTW89_FCC),
+	COUNTRY_REGD("UY", RTW89_WW, RTW89_FCC),
+	COUNTRY_REGD("VE", RTW89_WW, RTW89_FCC),
 	COUNTRY_REGD("PR", RTW89_FCC, RTW89_FCC),
 	COUNTRY_REGD("DO", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("AT", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("BE", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("CY", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("CZ", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("DK", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("EE", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("FI", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("FR", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("DE", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("GR", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("HU", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("IS", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("IE", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("IT", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("LV", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("LI", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("LT", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("LU", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("MT", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("MC", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("NL", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("NO", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("PL", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("PT", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("SK", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("SI", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("ES", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("SE", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("CH", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("GB", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("AL", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("AZ", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("BH", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("BA", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("BG", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("HR", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("EG", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("GH", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("IQ", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("IL", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("JO", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("KZ", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("KE", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("KW", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("KG", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("LB", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("LS", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("MK", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("MA", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("MZ", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("NA", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("NG", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("OM", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("QA", RTW89_QATAR, RTW89_QATAR),
-	COUNTRY_REGD("RO", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("RU", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("SA", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("SN", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("RS", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("ME", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("ZA", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("TR", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("UA", RTW89_UKRAINE, RTW89_UKRAINE),
-	COUNTRY_REGD("AE", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("YE", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("ZW", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("BD", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("KH", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("CN", RTW89_CN, RTW89_CN),
-	COUNTRY_REGD("HK", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("IN", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("AT", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("BE", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("CY", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("CZ", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("DK", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("EE", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("FI", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("FR", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("DE", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("GR", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("HU", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("IS", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("IE", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("IT", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("LV", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("LI", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("LT", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("LU", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("MT", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("MC", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("NL", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("NO", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("PL", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("PT", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("SK", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("SI", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("ES", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("SE", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("CH", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("GB", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("AL", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("AZ", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("BH", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("BA", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("BG", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("HR", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("EG", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("GH", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("IQ", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("IL", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("JO", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("KZ", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("KE", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("KW", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("KG", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("LB", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("LS", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("MK", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("MA", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("MZ", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("NA", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("NG", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("OM", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("QA", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("RO", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("RU", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("SA", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("SN", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("RS", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("ME", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("ZA", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("TR", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("UA", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("AE", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("YE", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("ZW", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("BD", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("KH", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("CN", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("HK", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("IN", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("ID", RTW89_ETSI, RTW89_ETSI),
 	COUNTRY_REGD("KR", RTW89_KCC, RTW89_KCC),
-	COUNTRY_REGD("MY", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("PK", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("PH", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("SG", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("LK", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("MY", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("PK", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("PH", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("SG", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("LK", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("TW", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("TH", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("VN", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("AU", RTW89_ACMA, RTW89_ACMA),
-	COUNTRY_REGD("NZ", RTW89_ACMA, RTW89_ACMA),
-	COUNTRY_REGD("PG", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("TH", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("VN", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("AU", RTW89_WW, RTW89_ACMA),
+	COUNTRY_REGD("NZ", RTW89_WW, RTW89_ACMA),
+	COUNTRY_REGD("PG", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("CA", RTW89_IC, RTW89_IC),
 	COUNTRY_REGD("JP", RTW89_MKK, RTW89_MKK),
-	COUNTRY_REGD("JM", RTW89_FCC, RTW89_FCC),
+	COUNTRY_REGD("JM", RTW89_WW, RTW89_FCC),
 	COUNTRY_REGD("AN", RTW89_FCC, RTW89_FCC),
 	COUNTRY_REGD("TT", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("TN", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("TN", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("AF", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("DZ", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("DZ", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("AS", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("AD", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("AO", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("AI", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("AQ", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("AD", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("AO", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("AI", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("AQ", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("AG", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("AM", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("AM", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("AW", RTW89_FCC, RTW89_FCC),
 	COUNTRY_REGD("BS", RTW89_FCC, RTW89_FCC),
 	COUNTRY_REGD("BB", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("BY", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("BY", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("BZ", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("BJ", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("BJ", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("BM", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("BT", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("BW", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("BV", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("IO", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("BT", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("BW", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("BV", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("IO", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("VG", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("BN", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("BF", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("MM", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("BI", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("CM", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("CV", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("BN", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("BF", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("MM", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("BI", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("CM", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("CV", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("KY", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("CF", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("TD", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("CX", RTW89_ACMA, RTW89_ACMA),
-	COUNTRY_REGD("CC", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("KM", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("CG", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("CD", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("CK", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("CF", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("TD", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("CX", RTW89_WW, RTW89_ACMA),
+	COUNTRY_REGD("CC", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("KM", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("CG", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("CD", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("CK", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("CI", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("DJ", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("DJ", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("DM", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("GQ", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("ER", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("ET", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("FK", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("FO", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("GQ", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("ER", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("ET", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("FK", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("FO", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("FJ", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("GF", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("PF", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("TF", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("GA", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("GM", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("GE", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("GI", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("GL", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("GF", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("PF", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("TF", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("GA", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("GM", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("GE", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("GI", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("GL", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("GD", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("GP", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("GP", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("GU", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("GG", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("GN", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("GW", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("GY", RTW89_NCC, RTW89_NCC),
+	COUNTRY_REGD("GG", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("GN", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("GW", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("GY", RTW89_FCC, RTW89_NCC),
 	COUNTRY_REGD("HT", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("HM", RTW89_ACMA, RTW89_ACMA),
-	COUNTRY_REGD("VA", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("IM", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("JE", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("KI", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("LA", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("LR", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("LY", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("MO", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("MG", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("MW", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("MV", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("ML", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("HM", RTW89_WW, RTW89_ACMA),
+	COUNTRY_REGD("VA", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("IM", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("JE", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("KI", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("LA", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("LR", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("LY", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("MO", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("MG", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("MW", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("MV", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("ML", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("MH", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("MQ", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("MR", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("MU", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("YT", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("MQ", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("MR", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("MU", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("YT", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("FM", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("MD", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("MN", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("MS", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("NR", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("NP", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("NC", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("NE", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("NU", RTW89_ACMA, RTW89_ACMA),
-	COUNTRY_REGD("NF", RTW89_ACMA, RTW89_ACMA),
+	COUNTRY_REGD("MD", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("MN", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("MS", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("NR", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("NP", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("NC", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("NE", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("NU", RTW89_WW, RTW89_ACMA),
+	COUNTRY_REGD("NF", RTW89_WW, RTW89_ACMA),
 	COUNTRY_REGD("MP", RTW89_FCC, RTW89_FCC),
 	COUNTRY_REGD("PW", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("RE", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("RW", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("SH", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("RE", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("RW", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("SH", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("KN", RTW89_FCC, RTW89_FCC),
 	COUNTRY_REGD("LC", RTW89_FCC, RTW89_FCC),
 	COUNTRY_REGD("MF", RTW89_FCC, RTW89_FCC),
 	COUNTRY_REGD("SX", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("PM", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("PM", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("VC", RTW89_FCC, RTW89_FCC),
 	COUNTRY_REGD("WS", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("SM", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("SM", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("ST", RTW89_FCC, RTW89_FCC),
 	COUNTRY_REGD("SC", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("SL", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("SB", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("SO", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("GS", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("SL", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("SB", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("SO", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("GS", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("SR", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("SJ", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("SZ", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("TJ", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("TZ", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("TG", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("TK", RTW89_ACMA, RTW89_ACMA),
-	COUNTRY_REGD("TO", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("TM", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("TC", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("SJ", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("SZ", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("TJ", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("TZ", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("TG", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("TK", RTW89_WW, RTW89_ACMA),
+	COUNTRY_REGD("TO", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("TM", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("TC", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("TV", RTW89_ETSI, RTW89_NA),
-	COUNTRY_REGD("UG", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("UG", RTW89_WW, RTW89_ETSI),
 	COUNTRY_REGD("VI", RTW89_FCC, RTW89_FCC),
-	COUNTRY_REGD("UZ", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("VU", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("WF", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("EH", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("ZM", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("IR", RTW89_ETSI, RTW89_ETSI),
-	COUNTRY_REGD("PS", RTW89_ETSI, RTW89_ETSI),
+	COUNTRY_REGD("UZ", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("VU", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("WF", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("EH", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("ZM", RTW89_WW, RTW89_ETSI),
+	COUNTRY_REGD("IR", RTW89_WW, RTW89_ETSI),
 };
 
 static const struct rtw89_regulatory *rtw89_regd_find_reg_by_name(char *alpha2)
diff --git a/drivers/net/wireless/realtek/rtw89/rtw8852a.c b/drivers/net/wireless/realtek/rtw89/rtw8852a.c
index 6b75e4bc7352..5c6ffca3a324 100644
--- a/drivers/net/wireless/realtek/rtw89/rtw8852a.c
+++ b/drivers/net/wireless/realtek/rtw89/rtw8852a.c
@@ -1053,10 +1053,10 @@ static void rtw8852a_set_channel_bb(struct rtw89_dev *rtwdev,
 				    struct rtw89_channel_params *param,
 				    enum rtw89_phy_idx phy_idx)
 {
-	bool cck_en = param->center_chan <= 14;
+	bool cck_en = param->center_chan > 14 ? false : true;
 	u8 pri_ch_idx = param->pri_ch_idx;
 
-	if (cck_en)
+	if (param->center_chan <= 14)
 		rtw8852a_ctrl_sco_cck(rtwdev, param->center_chan,
 				      param->primary_chan, param->bandwidth);
 
@@ -1069,8 +1069,6 @@ static void rtw8852a_set_channel_bb(struct rtw89_dev *rtwdev,
 		rtw8852a_bbrst_for_rfk(rtwdev, phy_idx);
 	}
 	rtw8852a_spur_elimination(rtwdev, param->center_chan);
-	rtw89_phy_write32_mask(rtwdev, R_MAC_PIN_SEL, B_CH_IDX_SEG0,
-			       param->primary_chan);
 	rtw8852a_bb_reset_all(rtwdev, phy_idx);
 }
 
@@ -1929,21 +1927,6 @@ void rtw8852a_btc_wl_s1_standby(struct rtw89_dev *rtwdev, bool state)
 	rtw89_write_rf(rtwdev, RF_PATH_B, RR_LUTWE, RFREG_MASK, 0x0);
 }
 
-static void rtw8852a_fill_freq_with_ppdu(struct rtw89_dev *rtwdev,
-					 struct rtw89_rx_phy_ppdu *phy_ppdu,
-					 struct ieee80211_rx_status *status)
-{
-	u16 chan = phy_ppdu->chan_idx;
-	u8 band;
-
-	if (chan == 0)
-		return;
-
-	band = chan <= 14 ? NL80211_BAND_2GHZ : NL80211_BAND_5GHZ;
-	status->freq = ieee80211_channel_to_frequency(chan, band);
-	status->band = band;
-}
-
 static void rtw8852a_query_ppdu(struct rtw89_dev *rtwdev,
 				struct rtw89_rx_phy_ppdu *phy_ppdu,
 				struct ieee80211_rx_status *status)
@@ -1956,8 +1939,6 @@ static void rtw8852a_query_ppdu(struct rtw89_dev *rtwdev,
 		status->chains |= BIT(path);
 		status->chain_signal[path] = rx_power[path];
 	}
-	if (phy_ppdu->valid)
-		rtw8852a_fill_freq_with_ppdu(rtwdev, phy_ppdu, status);
 }
 
 static const struct rtw89_chip_ops rtw8852a_chip_ops = {
@@ -2031,7 +2012,7 @@ const struct rtw89_chip_info rtw8852a_chip_info = {
 	.limit_efuse_size	= 1152,
 	.phycap_addr		= 0x580,
 	.phycap_size		= 128,
-	.para_ver		= 0x05050864,
+	.para_ver		= 0x05050764,
 	.wlcx_desired		= 0x05050000,
 	.btcx_desired		= 0x5,
 	.scbd			= 0x1,
diff --git a/drivers/net/wireless/realtek/rtw89/rtw8852a_table.c b/drivers/net/wireless/realtek/rtw89/rtw8852a_table.c
index 253b5f8fc4f9..3a4fe7207420 100644
--- a/drivers/net/wireless/realtek/rtw89/rtw8852a_table.c
+++ b/drivers/net/wireless/realtek/rtw89/rtw8852a_table.c
@@ -43384,6991 +43384,5248 @@ static const u8 _txpwr_track_delta_swingidx_2g_cck_a_p[] = {
 const s8 rtw89_8852a_txpwr_lmt_2g[RTW89_2G_BW_NUM][RTW89_NTX_NUM]
 				 [RTW89_RS_LMT_NUM][RTW89_BF_NUM]
 				 [RTW89_REGD_NUM][RTW89_2G_CH_NUM] = {
-	[0][0][0][0][RTW89_WW][0] = 56,
-	[0][0][0][0][RTW89_WW][1] = 56,
-	[0][0][0][0][RTW89_WW][2] = 56,
-	[0][0][0][0][RTW89_WW][3] = 56,
-	[0][0][0][0][RTW89_WW][4] = 56,
-	[0][0][0][0][RTW89_WW][5] = 56,
-	[0][0][0][0][RTW89_WW][6] = 56,
-	[0][0][0][0][RTW89_WW][7] = 56,
-	[0][0][0][0][RTW89_WW][8] = 56,
-	[0][0][0][0][RTW89_WW][9] = 56,
-	[0][0][0][0][RTW89_WW][10] = 56,
-	[0][0][0][0][RTW89_WW][11] = 56,
-	[0][0][0][0][RTW89_WW][12] = 48,
-	[0][0][0][0][RTW89_WW][13] = 76,
-	[0][1][0][0][RTW89_WW][0] = 44,
-	[0][1][0][0][RTW89_WW][1] = 44,
-	[0][1][0][0][RTW89_WW][2] = 44,
-	[0][1][0][0][RTW89_WW][3] = 44,
-	[0][1][0][0][RTW89_WW][4] = 44,
-	[0][1][0][0][RTW89_WW][5] = 44,
-	[0][1][0][0][RTW89_WW][6] = 44,
-	[0][1][0][0][RTW89_WW][7] = 44,
-	[0][1][0][0][RTW89_WW][8] = 44,
-	[0][1][0][0][RTW89_WW][9] = 44,
-	[0][1][0][0][RTW89_WW][10] = 44,
-	[0][1][0][0][RTW89_WW][11] = 44,
-	[0][1][0][0][RTW89_WW][12] = 38,
-	[0][1][0][0][RTW89_WW][13] = 64,
-	[1][0][0][0][RTW89_WW][0] = 0,
-	[1][0][0][0][RTW89_WW][1] = 0,
-	[1][0][0][0][RTW89_WW][2] = 58,
-	[1][0][0][0][RTW89_WW][3] = 58,
-	[1][0][0][0][RTW89_WW][4] = 58,
-	[1][0][0][0][RTW89_WW][5] = 58,
-	[1][0][0][0][RTW89_WW][6] = 46,
-	[1][0][0][0][RTW89_WW][7] = 46,
-	[1][0][0][0][RTW89_WW][8] = 46,
-	[1][0][0][0][RTW89_WW][9] = 32,
-	[1][0][0][0][RTW89_WW][10] = 32,
-	[1][0][0][0][RTW89_WW][11] = 0,
-	[1][0][0][0][RTW89_WW][12] = 0,
-	[1][0][0][0][RTW89_WW][13] = 0,
-	[1][1][0][0][RTW89_WW][0] = 0,
-	[1][1][0][0][RTW89_WW][1] = 0,
-	[1][1][0][0][RTW89_WW][2] = 46,
-	[1][1][0][0][RTW89_WW][3] = 46,
-	[1][1][0][0][RTW89_WW][4] = 46,
-	[1][1][0][0][RTW89_WW][5] = 46,
-	[1][1][0][0][RTW89_WW][6] = 46,
-	[1][1][0][0][RTW89_WW][7] = 46,
-	[1][1][0][0][RTW89_WW][8] = 46,
-	[1][1][0][0][RTW89_WW][9] = 24,
-	[1][1][0][0][RTW89_WW][10] = 24,
-	[1][1][0][0][RTW89_WW][11] = 0,
-	[1][1][0][0][RTW89_WW][12] = 0,
-	[1][1][0][0][RTW89_WW][13] = 0,
-	[0][0][1][0][RTW89_WW][0] = 58,
-	[0][0][1][0][RTW89_WW][1] = 58,
-	[0][0][1][0][RTW89_WW][2] = 58,
-	[0][0][1][0][RTW89_WW][3] = 58,
-	[0][0][1][0][RTW89_WW][4] = 58,
-	[0][0][1][0][RTW89_WW][5] = 58,
-	[0][0][1][0][RTW89_WW][6] = 58,
-	[0][0][1][0][RTW89_WW][7] = 58,
-	[0][0][1][0][RTW89_WW][8] = 58,
-	[0][0][1][0][RTW89_WW][9] = 58,
-	[0][0][1][0][RTW89_WW][10] = 58,
-	[0][0][1][0][RTW89_WW][11] = 56,
-	[0][0][1][0][RTW89_WW][12] = 52,
-	[0][0][1][0][RTW89_WW][13] = 0,
-	[0][1][1][0][RTW89_WW][0] = 46,
-	[0][1][1][0][RTW89_WW][1] = 46,
-	[0][1][1][0][RTW89_WW][2] = 46,
-	[0][1][1][0][RTW89_WW][3] = 46,
-	[0][1][1][0][RTW89_WW][4] = 46,
-	[0][1][1][0][RTW89_WW][5] = 46,
-	[0][1][1][0][RTW89_WW][6] = 46,
-	[0][1][1][0][RTW89_WW][7] = 46,
-	[0][1][1][0][RTW89_WW][8] = 46,
-	[0][1][1][0][RTW89_WW][9] = 46,
-	[0][1][1][0][RTW89_WW][10] = 46,
-	[0][1][1][0][RTW89_WW][11] = 42,
-	[0][1][1][0][RTW89_WW][12] = 40,
-	[0][1][1][0][RTW89_WW][13] = 0,
-	[0][0][2][0][RTW89_WW][0] = 58,
-	[0][0][2][0][RTW89_WW][1] = 58,
-	[0][0][2][0][RTW89_WW][2] = 58,
-	[0][0][2][0][RTW89_WW][3] = 58,
-	[0][0][2][0][RTW89_WW][4] = 58,
-	[0][0][2][0][RTW89_WW][5] = 58,
-	[0][0][2][0][RTW89_WW][6] = 58,
-	[0][0][2][0][RTW89_WW][7] = 58,
-	[0][0][2][0][RTW89_WW][8] = 58,
-	[0][0][2][0][RTW89_WW][9] = 58,
-	[0][0][2][0][RTW89_WW][10] = 58,
-	[0][0][2][0][RTW89_WW][11] = 54,
-	[0][0][2][0][RTW89_WW][12] = 50,
-	[0][0][2][0][RTW89_WW][13] = 0,
-	[0][1][2][0][RTW89_WW][0] = 46,
-	[0][1][2][0][RTW89_WW][1] = 46,
-	[0][1][2][0][RTW89_WW][2] = 46,
-	[0][1][2][0][RTW89_WW][3] = 46,
-	[0][1][2][0][RTW89_WW][4] = 46,
-	[0][1][2][0][RTW89_WW][5] = 46,
-	[0][1][2][0][RTW89_WW][6] = 46,
-	[0][1][2][0][RTW89_WW][7] = 46,
-	[0][1][2][0][RTW89_WW][8] = 46,
-	[0][1][2][0][RTW89_WW][9] = 46,
-	[0][1][2][0][RTW89_WW][10] = 46,
-	[0][1][2][0][RTW89_WW][11] = 42,
-	[0][1][2][0][RTW89_WW][12] = 40,
-	[0][1][2][0][RTW89_WW][13] = 0,
-	[0][1][2][1][RTW89_WW][0] = 34,
-	[0][1][2][1][RTW89_WW][1] = 34,
-	[0][1][2][1][RTW89_WW][2] = 34,
-	[0][1][2][1][RTW89_WW][3] = 34,
-	[0][1][2][1][RTW89_WW][4] = 34,
-	[0][1][2][1][RTW89_WW][5] = 34,
-	[0][1][2][1][RTW89_WW][6] = 34,
-	[0][1][2][1][RTW89_WW][7] = 34,
-	[0][1][2][1][RTW89_WW][8] = 34,
-	[0][1][2][1][RTW89_WW][9] = 34,
-	[0][1][2][1][RTW89_WW][10] = 34,
-	[0][1][2][1][RTW89_WW][11] = 34,
-	[0][1][2][1][RTW89_WW][12] = 34,
-	[0][1][2][1][RTW89_WW][13] = 0,
-	[1][0][2][0][RTW89_WW][0] = 0,
-	[1][0][2][0][RTW89_WW][1] = 0,
-	[1][0][2][0][RTW89_WW][2] = 56,
-	[1][0][2][0][RTW89_WW][3] = 56,
-	[1][0][2][0][RTW89_WW][4] = 58,
-	[1][0][2][0][RTW89_WW][5] = 58,
-	[1][0][2][0][RTW89_WW][6] = 54,
-	[1][0][2][0][RTW89_WW][7] = 50,
-	[1][0][2][0][RTW89_WW][8] = 50,
-	[1][0][2][0][RTW89_WW][9] = 42,
-	[1][0][2][0][RTW89_WW][10] = 40,
-	[1][0][2][0][RTW89_WW][11] = 0,
-	[1][0][2][0][RTW89_WW][12] = 0,
-	[1][0][2][0][RTW89_WW][13] = 0,
-	[1][1][2][0][RTW89_WW][0] = 0,
-	[1][1][2][0][RTW89_WW][1] = 0,
-	[1][1][2][0][RTW89_WW][2] = 46,
-	[1][1][2][0][RTW89_WW][3] = 46,
-	[1][1][2][0][RTW89_WW][4] = 46,
-	[1][1][2][0][RTW89_WW][5] = 46,
-	[1][1][2][0][RTW89_WW][6] = 46,
-	[1][1][2][0][RTW89_WW][7] = 46,
-	[1][1][2][0][RTW89_WW][8] = 46,
-	[1][1][2][0][RTW89_WW][9] = 38,
-	[1][1][2][0][RTW89_WW][10] = 36,
-	[1][1][2][0][RTW89_WW][11] = 0,
-	[1][1][2][0][RTW89_WW][12] = 0,
-	[1][1][2][0][RTW89_WW][13] = 0,
-	[1][1][2][1][RTW89_WW][0] = 0,
-	[1][1][2][1][RTW89_WW][1] = 0,
-	[1][1][2][1][RTW89_WW][2] = 34,
-	[1][1][2][1][RTW89_WW][3] = 34,
-	[1][1][2][1][RTW89_WW][4] = 34,
-	[1][1][2][1][RTW89_WW][5] = 34,
-	[1][1][2][1][RTW89_WW][6] = 34,
-	[1][1][2][1][RTW89_WW][7] = 34,
-	[1][1][2][1][RTW89_WW][8] = 34,
-	[1][1][2][1][RTW89_WW][9] = 34,
-	[1][1][2][1][RTW89_WW][10] = 34,
-	[1][1][2][1][RTW89_WW][11] = 0,
-	[1][1][2][1][RTW89_WW][12] = 0,
-	[1][1][2][1][RTW89_WW][13] = 0,
-	[0][0][0][0][RTW89_FCC][0] = 76,
-	[0][0][0][0][RTW89_ETSI][0] = 56,
-	[0][0][0][0][RTW89_MKK][0] = 68,
-	[0][0][0][0][RTW89_IC][0] = 76,
-	[0][0][0][0][RTW89_KCC][0] = 76,
-	[0][0][0][0][RTW89_ACMA][0] = 56,
-	[0][0][0][0][RTW89_CHILE][0] = 60,
-	[0][0][0][0][RTW89_UKRAINE][0] = 56,
-	[0][0][0][0][RTW89_MEXICO][0] = 76,
-	[0][0][0][0][RTW89_CN][0] = 56,
-	[0][0][0][0][RTW89_QATAR][0] = 56,
-	[0][0][0][0][RTW89_FCC][1] = 76,
-	[0][0][0][0][RTW89_ETSI][1] = 56,
-	[0][0][0][0][RTW89_MKK][1] = 68,
-	[0][0][0][0][RTW89_IC][1] = 76,
-	[0][0][0][0][RTW89_KCC][1] = 76,
-	[0][0][0][0][RTW89_ACMA][1] = 56,
-	[0][0][0][0][RTW89_CHILE][1] = 60,
-	[0][0][0][0][RTW89_UKRAINE][1] = 56,
-	[0][0][0][0][RTW89_MEXICO][1] = 76,
-	[0][0][0][0][RTW89_CN][1] = 56,
-	[0][0][0][0][RTW89_QATAR][1] = 56,
-	[0][0][0][0][RTW89_FCC][2] = 76,
-	[0][0][0][0][RTW89_ETSI][2] = 56,
-	[0][0][0][0][RTW89_MKK][2] = 68,
-	[0][0][0][0][RTW89_IC][2] = 76,
-	[0][0][0][0][RTW89_KCC][2] = 76,
-	[0][0][0][0][RTW89_ACMA][2] = 56,
-	[0][0][0][0][RTW89_CHILE][2] = 60,
-	[0][0][0][0][RTW89_UKRAINE][2] = 56,
-	[0][0][0][0][RTW89_MEXICO][2] = 76,
-	[0][0][0][0][RTW89_CN][2] = 56,
-	[0][0][0][0][RTW89_QATAR][2] = 56,
-	[0][0][0][0][RTW89_FCC][3] = 76,
-	[0][0][0][0][RTW89_ETSI][3] = 56,
-	[0][0][0][0][RTW89_MKK][3] = 68,
-	[0][0][0][0][RTW89_IC][3] = 76,
-	[0][0][0][0][RTW89_KCC][3] = 76,
-	[0][0][0][0][RTW89_ACMA][3] = 56,
-	[0][0][0][0][RTW89_CHILE][3] = 60,
-	[0][0][0][0][RTW89_UKRAINE][3] = 56,
-	[0][0][0][0][RTW89_MEXICO][3] = 76,
-	[0][0][0][0][RTW89_CN][3] = 56,
-	[0][0][0][0][RTW89_QATAR][3] = 56,
-	[0][0][0][0][RTW89_FCC][4] = 76,
-	[0][0][0][0][RTW89_ETSI][4] = 56,
-	[0][0][0][0][RTW89_MKK][4] = 68,
-	[0][0][0][0][RTW89_IC][4] = 76,
-	[0][0][0][0][RTW89_KCC][4] = 76,
-	[0][0][0][0][RTW89_ACMA][4] = 56,
-	[0][0][0][0][RTW89_CHILE][4] = 60,
-	[0][0][0][0][RTW89_UKRAINE][4] = 56,
-	[0][0][0][0][RTW89_MEXICO][4] = 76,
-	[0][0][0][0][RTW89_CN][4] = 56,
-	[0][0][0][0][RTW89_QATAR][4] = 56,
-	[0][0][0][0][RTW89_FCC][5] = 76,
-	[0][0][0][0][RTW89_ETSI][5] = 56,
-	[0][0][0][0][RTW89_MKK][5] = 68,
-	[0][0][0][0][RTW89_IC][5] = 76,
-	[0][0][0][0][RTW89_KCC][5] = 76,
-	[0][0][0][0][RTW89_ACMA][5] = 56,
-	[0][0][0][0][RTW89_CHILE][5] = 60,
-	[0][0][0][0][RTW89_UKRAINE][5] = 56,
-	[0][0][0][0][RTW89_MEXICO][5] = 76,
-	[0][0][0][0][RTW89_CN][5] = 56,
-	[0][0][0][0][RTW89_QATAR][5] = 56,
-	[0][0][0][0][RTW89_FCC][6] = 76,
-	[0][0][0][0][RTW89_ETSI][6] = 56,
-	[0][0][0][0][RTW89_MKK][6] = 68,
-	[0][0][0][0][RTW89_IC][6] = 76,
-	[0][0][0][0][RTW89_KCC][6] = 76,
-	[0][0][0][0][RTW89_ACMA][6] = 56,
-	[0][0][0][0][RTW89_CHILE][6] = 60,
-	[0][0][0][0][RTW89_UKRAINE][6] = 56,
-	[0][0][0][0][RTW89_MEXICO][6] = 76,
-	[0][0][0][0][RTW89_CN][6] = 56,
-	[0][0][0][0][RTW89_QATAR][6] = 56,
-	[0][0][0][0][RTW89_FCC][7] = 76,
-	[0][0][0][0][RTW89_ETSI][7] = 56,
-	[0][0][0][0][RTW89_MKK][7] = 68,
-	[0][0][0][0][RTW89_IC][7] = 76,
-	[0][0][0][0][RTW89_KCC][7] = 76,
-	[0][0][0][0][RTW89_ACMA][7] = 56,
-	[0][0][0][0][RTW89_CHILE][7] = 60,
-	[0][0][0][0][RTW89_UKRAINE][7] = 56,
-	[0][0][0][0][RTW89_MEXICO][7] = 76,
-	[0][0][0][0][RTW89_CN][7] = 56,
-	[0][0][0][0][RTW89_QATAR][7] = 56,
-	[0][0][0][0][RTW89_FCC][8] = 76,
-	[0][0][0][0][RTW89_ETSI][8] = 56,
-	[0][0][0][0][RTW89_MKK][8] = 68,
-	[0][0][0][0][RTW89_IC][8] = 76,
-	[0][0][0][0][RTW89_KCC][8] = 76,
-	[0][0][0][0][RTW89_ACMA][8] = 56,
-	[0][0][0][0][RTW89_CHILE][8] = 60,
-	[0][0][0][0][RTW89_UKRAINE][8] = 56,
-	[0][0][0][0][RTW89_MEXICO][8] = 76,
-	[0][0][0][0][RTW89_CN][8] = 56,
-	[0][0][0][0][RTW89_QATAR][8] = 56,
-	[0][0][0][0][RTW89_FCC][9] = 76,
-	[0][0][0][0][RTW89_ETSI][9] = 56,
-	[0][0][0][0][RTW89_MKK][9] = 68,
-	[0][0][0][0][RTW89_IC][9] = 76,
-	[0][0][0][0][RTW89_KCC][9] = 76,
-	[0][0][0][0][RTW89_ACMA][9] = 56,
-	[0][0][0][0][RTW89_CHILE][9] = 60,
-	[0][0][0][0][RTW89_UKRAINE][9] = 56,
-	[0][0][0][0][RTW89_MEXICO][9] = 76,
-	[0][0][0][0][RTW89_CN][9] = 56,
-	[0][0][0][0][RTW89_QATAR][9] = 56,
-	[0][0][0][0][RTW89_FCC][10] = 76,
-	[0][0][0][0][RTW89_ETSI][10] = 56,
-	[0][0][0][0][RTW89_MKK][10] = 68,
-	[0][0][0][0][RTW89_IC][10] = 76,
-	[0][0][0][0][RTW89_KCC][10] = 76,
-	[0][0][0][0][RTW89_ACMA][10] = 56,
-	[0][0][0][0][RTW89_CHILE][10] = 60,
-	[0][0][0][0][RTW89_UKRAINE][10] = 56,
-	[0][0][0][0][RTW89_MEXICO][10] = 76,
-	[0][0][0][0][RTW89_CN][10] = 56,
-	[0][0][0][0][RTW89_QATAR][10] = 56,
-	[0][0][0][0][RTW89_FCC][11] = 68,
-	[0][0][0][0][RTW89_ETSI][11] = 56,
-	[0][0][0][0][RTW89_MKK][11] = 68,
-	[0][0][0][0][RTW89_IC][11] = 68,
-	[0][0][0][0][RTW89_KCC][11] = 76,
-	[0][0][0][0][RTW89_ACMA][11] = 56,
-	[0][0][0][0][RTW89_CHILE][11] = 60,
-	[0][0][0][0][RTW89_UKRAINE][11] = 56,
-	[0][0][0][0][RTW89_MEXICO][11] = 68,
-	[0][0][0][0][RTW89_CN][11] = 56,
-	[0][0][0][0][RTW89_QATAR][11] = 56,
-	[0][0][0][0][RTW89_FCC][12] = 48,
-	[0][0][0][0][RTW89_ETSI][12] = 56,
-	[0][0][0][0][RTW89_MKK][12] = 68,
-	[0][0][0][0][RTW89_IC][12] = 48,
-	[0][0][0][0][RTW89_KCC][12] = 76,
-	[0][0][0][0][RTW89_ACMA][12] = 56,
-	[0][0][0][0][RTW89_CHILE][12] = 48,
-	[0][0][0][0][RTW89_UKRAINE][12] = 56,
-	[0][0][0][0][RTW89_MEXICO][12] = 48,
-	[0][0][0][0][RTW89_CN][12] = 56,
-	[0][0][0][0][RTW89_QATAR][12] = 56,
-	[0][0][0][0][RTW89_FCC][13] = 127,
-	[0][0][0][0][RTW89_ETSI][13] = 127,
-	[0][0][0][0][RTW89_MKK][13] = 76,
-	[0][0][0][0][RTW89_IC][13] = 127,
-	[0][0][0][0][RTW89_KCC][13] = 127,
-	[0][0][0][0][RTW89_ACMA][13] = 127,
-	[0][0][0][0][RTW89_CHILE][13] = 127,
-	[0][0][0][0][RTW89_UKRAINE][13] = 127,
-	[0][0][0][0][RTW89_MEXICO][13] = 127,
-	[0][0][0][0][RTW89_CN][13] = 127,
-	[0][0][0][0][RTW89_QATAR][13] = 127,
-	[0][1][0][0][RTW89_FCC][0] = 74,
-	[0][1][0][0][RTW89_ETSI][0] = 44,
-	[0][1][0][0][RTW89_MKK][0] = 56,
-	[0][1][0][0][RTW89_IC][0] = 74,
-	[0][1][0][0][RTW89_KCC][0] = 68,
-	[0][1][0][0][RTW89_ACMA][0] = 44,
-	[0][1][0][0][RTW89_CHILE][0] = 48,
-	[0][1][0][0][RTW89_UKRAINE][0] = 44,
-	[0][1][0][0][RTW89_MEXICO][0] = 74,
-	[0][1][0][0][RTW89_CN][0] = 44,
-	[0][1][0][0][RTW89_QATAR][0] = 44,
-	[0][1][0][0][RTW89_FCC][1] = 76,
-	[0][1][0][0][RTW89_ETSI][1] = 44,
-	[0][1][0][0][RTW89_MKK][1] = 56,
-	[0][1][0][0][RTW89_IC][1] = 76,
-	[0][1][0][0][RTW89_KCC][1] = 68,
-	[0][1][0][0][RTW89_ACMA][1] = 44,
-	[0][1][0][0][RTW89_CHILE][1] = 48,
-	[0][1][0][0][RTW89_UKRAINE][1] = 44,
-	[0][1][0][0][RTW89_MEXICO][1] = 76,
-	[0][1][0][0][RTW89_CN][1] = 44,
-	[0][1][0][0][RTW89_QATAR][1] = 44,
-	[0][1][0][0][RTW89_FCC][2] = 76,
-	[0][1][0][0][RTW89_ETSI][2] = 44,
-	[0][1][0][0][RTW89_MKK][2] = 56,
-	[0][1][0][0][RTW89_IC][2] = 76,
-	[0][1][0][0][RTW89_KCC][2] = 68,
-	[0][1][0][0][RTW89_ACMA][2] = 44,
-	[0][1][0][0][RTW89_CHILE][2] = 48,
-	[0][1][0][0][RTW89_UKRAINE][2] = 44,
-	[0][1][0][0][RTW89_MEXICO][2] = 76,
-	[0][1][0][0][RTW89_CN][2] = 44,
-	[0][1][0][0][RTW89_QATAR][2] = 44,
-	[0][1][0][0][RTW89_FCC][3] = 76,
-	[0][1][0][0][RTW89_ETSI][3] = 44,
-	[0][1][0][0][RTW89_MKK][3] = 56,
-	[0][1][0][0][RTW89_IC][3] = 76,
-	[0][1][0][0][RTW89_KCC][3] = 68,
-	[0][1][0][0][RTW89_ACMA][3] = 44,
-	[0][1][0][0][RTW89_CHILE][3] = 48,
-	[0][1][0][0][RTW89_UKRAINE][3] = 44,
-	[0][1][0][0][RTW89_MEXICO][3] = 76,
-	[0][1][0][0][RTW89_CN][3] = 44,
-	[0][1][0][0][RTW89_QATAR][3] = 44,
-	[0][1][0][0][RTW89_FCC][4] = 76,
-	[0][1][0][0][RTW89_ETSI][4] = 44,
-	[0][1][0][0][RTW89_MKK][4] = 56,
-	[0][1][0][0][RTW89_IC][4] = 76,
-	[0][1][0][0][RTW89_KCC][4] = 68,
-	[0][1][0][0][RTW89_ACMA][4] = 44,
-	[0][1][0][0][RTW89_CHILE][4] = 48,
-	[0][1][0][0][RTW89_UKRAINE][4] = 44,
-	[0][1][0][0][RTW89_MEXICO][4] = 76,
-	[0][1][0][0][RTW89_CN][4] = 44,
-	[0][1][0][0][RTW89_QATAR][4] = 44,
-	[0][1][0][0][RTW89_FCC][5] = 76,
-	[0][1][0][0][RTW89_ETSI][5] = 44,
-	[0][1][0][0][RTW89_MKK][5] = 56,
-	[0][1][0][0][RTW89_IC][5] = 76,
-	[0][1][0][0][RTW89_KCC][5] = 68,
-	[0][1][0][0][RTW89_ACMA][5] = 44,
-	[0][1][0][0][RTW89_CHILE][5] = 48,
-	[0][1][0][0][RTW89_UKRAINE][5] = 44,
-	[0][1][0][0][RTW89_MEXICO][5] = 76,
-	[0][1][0][0][RTW89_CN][5] = 44,
-	[0][1][0][0][RTW89_QATAR][5] = 44,
-	[0][1][0][0][RTW89_FCC][6] = 76,
-	[0][1][0][0][RTW89_ETSI][6] = 44,
-	[0][1][0][0][RTW89_MKK][6] = 56,
-	[0][1][0][0][RTW89_IC][6] = 76,
-	[0][1][0][0][RTW89_KCC][6] = 68,
-	[0][1][0][0][RTW89_ACMA][6] = 44,
-	[0][1][0][0][RTW89_CHILE][6] = 48,
-	[0][1][0][0][RTW89_UKRAINE][6] = 44,
-	[0][1][0][0][RTW89_MEXICO][6] = 76,
-	[0][1][0][0][RTW89_CN][6] = 44,
-	[0][1][0][0][RTW89_QATAR][6] = 44,
-	[0][1][0][0][RTW89_FCC][7] = 76,
-	[0][1][0][0][RTW89_ETSI][7] = 44,
-	[0][1][0][0][RTW89_MKK][7] = 56,
-	[0][1][0][0][RTW89_IC][7] = 76,
-	[0][1][0][0][RTW89_KCC][7] = 68,
-	[0][1][0][0][RTW89_ACMA][7] = 44,
-	[0][1][0][0][RTW89_CHILE][7] = 48,
-	[0][1][0][0][RTW89_UKRAINE][7] = 44,
-	[0][1][0][0][RTW89_MEXICO][7] = 76,
-	[0][1][0][0][RTW89_CN][7] = 44,
-	[0][1][0][0][RTW89_QATAR][7] = 44,
-	[0][1][0][0][RTW89_FCC][8] = 76,
-	[0][1][0][0][RTW89_ETSI][8] = 44,
-	[0][1][0][0][RTW89_MKK][8] = 56,
-	[0][1][0][0][RTW89_IC][8] = 76,
-	[0][1][0][0][RTW89_KCC][8] = 68,
-	[0][1][0][0][RTW89_ACMA][8] = 44,
-	[0][1][0][0][RTW89_CHILE][8] = 48,
-	[0][1][0][0][RTW89_UKRAINE][8] = 44,
-	[0][1][0][0][RTW89_MEXICO][8] = 76,
-	[0][1][0][0][RTW89_CN][8] = 44,
-	[0][1][0][0][RTW89_QATAR][8] = 44,
-	[0][1][0][0][RTW89_FCC][9] = 76,
-	[0][1][0][0][RTW89_ETSI][9] = 44,
-	[0][1][0][0][RTW89_MKK][9] = 56,
-	[0][1][0][0][RTW89_IC][9] = 76,
-	[0][1][0][0][RTW89_KCC][9] = 68,
-	[0][1][0][0][RTW89_ACMA][9] = 44,
-	[0][1][0][0][RTW89_CHILE][9] = 48,
-	[0][1][0][0][RTW89_UKRAINE][9] = 44,
-	[0][1][0][0][RTW89_MEXICO][9] = 76,
-	[0][1][0][0][RTW89_CN][9] = 44,
-	[0][1][0][0][RTW89_QATAR][9] = 44,
-	[0][1][0][0][RTW89_FCC][10] = 62,
-	[0][1][0][0][RTW89_ETSI][10] = 44,
-	[0][1][0][0][RTW89_MKK][10] = 56,
-	[0][1][0][0][RTW89_IC][10] = 62,
-	[0][1][0][0][RTW89_KCC][10] = 68,
-	[0][1][0][0][RTW89_ACMA][10] = 44,
-	[0][1][0][0][RTW89_CHILE][10] = 48,
-	[0][1][0][0][RTW89_UKRAINE][10] = 44,
-	[0][1][0][0][RTW89_MEXICO][10] = 62,
-	[0][1][0][0][RTW89_CN][10] = 44,
-	[0][1][0][0][RTW89_QATAR][10] = 44,
-	[0][1][0][0][RTW89_FCC][11] = 52,
-	[0][1][0][0][RTW89_ETSI][11] = 44,
-	[0][1][0][0][RTW89_MKK][11] = 56,
-	[0][1][0][0][RTW89_IC][11] = 52,
-	[0][1][0][0][RTW89_KCC][11] = 68,
-	[0][1][0][0][RTW89_ACMA][11] = 44,
-	[0][1][0][0][RTW89_CHILE][11] = 48,
-	[0][1][0][0][RTW89_UKRAINE][11] = 44,
-	[0][1][0][0][RTW89_MEXICO][11] = 52,
-	[0][1][0][0][RTW89_CN][11] = 44,
-	[0][1][0][0][RTW89_QATAR][11] = 44,
-	[0][1][0][0][RTW89_FCC][12] = 38,
-	[0][1][0][0][RTW89_ETSI][12] = 44,
-	[0][1][0][0][RTW89_MKK][12] = 56,
-	[0][1][0][0][RTW89_IC][12] = 38,
-	[0][1][0][0][RTW89_KCC][12] = 68,
-	[0][1][0][0][RTW89_ACMA][12] = 44,
-	[0][1][0][0][RTW89_CHILE][12] = 38,
-	[0][1][0][0][RTW89_UKRAINE][12] = 44,
-	[0][1][0][0][RTW89_MEXICO][12] = 38,
-	[0][1][0][0][RTW89_CN][12] = 44,
-	[0][1][0][0][RTW89_QATAR][12] = 44,
-	[0][1][0][0][RTW89_FCC][13] = 127,
-	[0][1][0][0][RTW89_ETSI][13] = 127,
-	[0][1][0][0][RTW89_MKK][13] = 64,
-	[0][1][0][0][RTW89_IC][13] = 127,
-	[0][1][0][0][RTW89_KCC][13] = 127,
-	[0][1][0][0][RTW89_ACMA][13] = 127,
-	[0][1][0][0][RTW89_CHILE][13] = 127,
-	[0][1][0][0][RTW89_UKRAINE][13] = 127,
-	[0][1][0][0][RTW89_MEXICO][13] = 127,
-	[0][1][0][0][RTW89_CN][13] = 127,
-	[0][1][0][0][RTW89_QATAR][13] = 127,
-	[1][0][0][0][RTW89_FCC][0] = 127,
-	[1][0][0][0][RTW89_ETSI][0] = 127,
-	[1][0][0][0][RTW89_MKK][0] = 127,
-	[1][0][0][0][RTW89_IC][0] = 127,
-	[1][0][0][0][RTW89_KCC][0] = 127,
-	[1][0][0][0][RTW89_ACMA][0] = 127,
-	[1][0][0][0][RTW89_CHILE][0] = 127,
-	[1][0][0][0][RTW89_UKRAINE][0] = 127,
-	[1][0][0][0][RTW89_MEXICO][0] = 127,
-	[1][0][0][0][RTW89_CN][0] = 127,
-	[1][0][0][0][RTW89_QATAR][0] = 127,
-	[1][0][0][0][RTW89_FCC][1] = 127,
-	[1][0][0][0][RTW89_ETSI][1] = 127,
-	[1][0][0][0][RTW89_MKK][1] = 127,
-	[1][0][0][0][RTW89_IC][1] = 127,
-	[1][0][0][0][RTW89_KCC][1] = 127,
-	[1][0][0][0][RTW89_ACMA][1] = 127,
-	[1][0][0][0][RTW89_CHILE][1] = 127,
-	[1][0][0][0][RTW89_UKRAINE][1] = 127,
-	[1][0][0][0][RTW89_MEXICO][1] = 127,
-	[1][0][0][0][RTW89_CN][1] = 127,
-	[1][0][0][0][RTW89_QATAR][1] = 127,
-	[1][0][0][0][RTW89_FCC][2] = 60,
-	[1][0][0][0][RTW89_ETSI][2] = 58,
-	[1][0][0][0][RTW89_MKK][2] = 68,
-	[1][0][0][0][RTW89_IC][2] = 60,
-	[1][0][0][0][RTW89_KCC][2] = 70,
-	[1][0][0][0][RTW89_ACMA][2] = 58,
-	[1][0][0][0][RTW89_CHILE][2] = 60,
-	[1][0][0][0][RTW89_UKRAINE][2] = 58,
-	[1][0][0][0][RTW89_MEXICO][2] = 60,
-	[1][0][0][0][RTW89_CN][2] = 58,
-	[1][0][0][0][RTW89_QATAR][2] = 58,
-	[1][0][0][0][RTW89_FCC][3] = 60,
-	[1][0][0][0][RTW89_ETSI][3] = 58,
-	[1][0][0][0][RTW89_MKK][3] = 68,
-	[1][0][0][0][RTW89_IC][3] = 60,
-	[1][0][0][0][RTW89_KCC][3] = 70,
-	[1][0][0][0][RTW89_ACMA][3] = 58,
-	[1][0][0][0][RTW89_CHILE][3] = 60,
-	[1][0][0][0][RTW89_UKRAINE][3] = 58,
-	[1][0][0][0][RTW89_MEXICO][3] = 60,
-	[1][0][0][0][RTW89_CN][3] = 58,
-	[1][0][0][0][RTW89_QATAR][3] = 58,
-	[1][0][0][0][RTW89_FCC][4] = 60,
-	[1][0][0][0][RTW89_ETSI][4] = 58,
-	[1][0][0][0][RTW89_MKK][4] = 68,
-	[1][0][0][0][RTW89_IC][4] = 60,
-	[1][0][0][0][RTW89_KCC][4] = 70,
-	[1][0][0][0][RTW89_ACMA][4] = 58,
-	[1][0][0][0][RTW89_CHILE][4] = 60,
-	[1][0][0][0][RTW89_UKRAINE][4] = 58,
-	[1][0][0][0][RTW89_MEXICO][4] = 60,
-	[1][0][0][0][RTW89_CN][4] = 58,
-	[1][0][0][0][RTW89_QATAR][4] = 58,
-	[1][0][0][0][RTW89_FCC][5] = 60,
-	[1][0][0][0][RTW89_ETSI][5] = 58,
-	[1][0][0][0][RTW89_MKK][5] = 68,
-	[1][0][0][0][RTW89_IC][5] = 60,
-	[1][0][0][0][RTW89_KCC][5] = 70,
-	[1][0][0][0][RTW89_ACMA][5] = 58,
-	[1][0][0][0][RTW89_CHILE][5] = 60,
-	[1][0][0][0][RTW89_UKRAINE][5] = 58,
-	[1][0][0][0][RTW89_MEXICO][5] = 60,
-	[1][0][0][0][RTW89_CN][5] = 58,
-	[1][0][0][0][RTW89_QATAR][5] = 58,
-	[1][0][0][0][RTW89_FCC][6] = 46,
-	[1][0][0][0][RTW89_ETSI][6] = 58,
-	[1][0][0][0][RTW89_MKK][6] = 68,
-	[1][0][0][0][RTW89_IC][6] = 46,
-	[1][0][0][0][RTW89_KCC][6] = 70,
-	[1][0][0][0][RTW89_ACMA][6] = 58,
-	[1][0][0][0][RTW89_CHILE][6] = 46,
-	[1][0][0][0][RTW89_UKRAINE][6] = 58,
-	[1][0][0][0][RTW89_MEXICO][6] = 46,
-	[1][0][0][0][RTW89_CN][6] = 58,
-	[1][0][0][0][RTW89_QATAR][6] = 58,
-	[1][0][0][0][RTW89_FCC][7] = 46,
-	[1][0][0][0][RTW89_ETSI][7] = 58,
-	[1][0][0][0][RTW89_MKK][7] = 68,
-	[1][0][0][0][RTW89_IC][7] = 46,
-	[1][0][0][0][RTW89_KCC][7] = 70,
-	[1][0][0][0][RTW89_ACMA][7] = 58,
-	[1][0][0][0][RTW89_CHILE][7] = 46,
-	[1][0][0][0][RTW89_UKRAINE][7] = 58,
-	[1][0][0][0][RTW89_MEXICO][7] = 46,
-	[1][0][0][0][RTW89_CN][7] = 58,
-	[1][0][0][0][RTW89_QATAR][7] = 58,
-	[1][0][0][0][RTW89_FCC][8] = 46,
-	[1][0][0][0][RTW89_ETSI][8] = 58,
-	[1][0][0][0][RTW89_MKK][8] = 68,
-	[1][0][0][0][RTW89_IC][8] = 46,
-	[1][0][0][0][RTW89_KCC][8] = 70,
-	[1][0][0][0][RTW89_ACMA][8] = 58,
-	[1][0][0][0][RTW89_CHILE][8] = 46,
-	[1][0][0][0][RTW89_UKRAINE][8] = 58,
-	[1][0][0][0][RTW89_MEXICO][8] = 46,
-	[1][0][0][0][RTW89_CN][8] = 58,
-	[1][0][0][0][RTW89_QATAR][8] = 58,
-	[1][0][0][0][RTW89_FCC][9] = 32,
-	[1][0][0][0][RTW89_ETSI][9] = 58,
-	[1][0][0][0][RTW89_MKK][9] = 68,
-	[1][0][0][0][RTW89_IC][9] = 32,
-	[1][0][0][0][RTW89_KCC][9] = 70,
-	[1][0][0][0][RTW89_ACMA][9] = 58,
-	[1][0][0][0][RTW89_CHILE][9] = 32,
-	[1][0][0][0][RTW89_UKRAINE][9] = 58,
-	[1][0][0][0][RTW89_MEXICO][9] = 32,
-	[1][0][0][0][RTW89_CN][9] = 58,
-	[1][0][0][0][RTW89_QATAR][9] = 58,
-	[1][0][0][0][RTW89_FCC][10] = 32,
-	[1][0][0][0][RTW89_ETSI][10] = 58,
-	[1][0][0][0][RTW89_MKK][10] = 68,
-	[1][0][0][0][RTW89_IC][10] = 32,
-	[1][0][0][0][RTW89_KCC][10] = 70,
-	[1][0][0][0][RTW89_ACMA][10] = 58,
-	[1][0][0][0][RTW89_CHILE][10] = 32,
-	[1][0][0][0][RTW89_UKRAINE][10] = 58,
-	[1][0][0][0][RTW89_MEXICO][10] = 32,
-	[1][0][0][0][RTW89_CN][10] = 58,
-	[1][0][0][0][RTW89_QATAR][10] = 58,
-	[1][0][0][0][RTW89_FCC][11] = 127,
-	[1][0][0][0][RTW89_ETSI][11] = 127,
-	[1][0][0][0][RTW89_MKK][11] = 127,
-	[1][0][0][0][RTW89_IC][11] = 127,
-	[1][0][0][0][RTW89_KCC][11] = 127,
-	[1][0][0][0][RTW89_ACMA][11] = 127,
-	[1][0][0][0][RTW89_CHILE][11] = 127,
-	[1][0][0][0][RTW89_UKRAINE][11] = 127,
-	[1][0][0][0][RTW89_MEXICO][11] = 127,
-	[1][0][0][0][RTW89_CN][11] = 127,
-	[1][0][0][0][RTW89_QATAR][11] = 127,
-	[1][0][0][0][RTW89_FCC][12] = 127,
-	[1][0][0][0][RTW89_ETSI][12] = 127,
-	[1][0][0][0][RTW89_MKK][12] = 127,
-	[1][0][0][0][RTW89_IC][12] = 127,
-	[1][0][0][0][RTW89_KCC][12] = 127,
-	[1][0][0][0][RTW89_ACMA][12] = 127,
-	[1][0][0][0][RTW89_CHILE][12] = 127,
-	[1][0][0][0][RTW89_UKRAINE][12] = 127,
-	[1][0][0][0][RTW89_MEXICO][12] = 127,
-	[1][0][0][0][RTW89_CN][12] = 127,
-	[1][0][0][0][RTW89_QATAR][12] = 127,
-	[1][0][0][0][RTW89_FCC][13] = 127,
-	[1][0][0][0][RTW89_ETSI][13] = 127,
-	[1][0][0][0][RTW89_MKK][13] = 127,
-	[1][0][0][0][RTW89_IC][13] = 127,
-	[1][0][0][0][RTW89_KCC][13] = 127,
-	[1][0][0][0][RTW89_ACMA][13] = 127,
-	[1][0][0][0][RTW89_CHILE][13] = 127,
-	[1][0][0][0][RTW89_UKRAINE][13] = 127,
-	[1][0][0][0][RTW89_MEXICO][13] = 127,
-	[1][0][0][0][RTW89_CN][13] = 127,
-	[1][0][0][0][RTW89_QATAR][13] = 127,
-	[1][1][0][0][RTW89_FCC][0] = 127,
-	[1][1][0][0][RTW89_ETSI][0] = 127,
-	[1][1][0][0][RTW89_MKK][0] = 127,
-	[1][1][0][0][RTW89_IC][0] = 127,
-	[1][1][0][0][RTW89_KCC][0] = 127,
-	[1][1][0][0][RTW89_ACMA][0] = 127,
-	[1][1][0][0][RTW89_CHILE][0] = 127,
-	[1][1][0][0][RTW89_UKRAINE][0] = 127,
-	[1][1][0][0][RTW89_MEXICO][0] = 127,
-	[1][1][0][0][RTW89_CN][0] = 127,
-	[1][1][0][0][RTW89_QATAR][0] = 127,
-	[1][1][0][0][RTW89_FCC][1] = 127,
-	[1][1][0][0][RTW89_ETSI][1] = 127,
-	[1][1][0][0][RTW89_MKK][1] = 127,
-	[1][1][0][0][RTW89_IC][1] = 127,
-	[1][1][0][0][RTW89_KCC][1] = 127,
-	[1][1][0][0][RTW89_ACMA][1] = 127,
-	[1][1][0][0][RTW89_CHILE][1] = 127,
-	[1][1][0][0][RTW89_UKRAINE][1] = 127,
-	[1][1][0][0][RTW89_MEXICO][1] = 127,
-	[1][1][0][0][RTW89_CN][1] = 127,
-	[1][1][0][0][RTW89_QATAR][1] = 127,
-	[1][1][0][0][RTW89_FCC][2] = 48,
-	[1][1][0][0][RTW89_ETSI][2] = 46,
-	[1][1][0][0][RTW89_MKK][2] = 56,
-	[1][1][0][0][RTW89_IC][2] = 48,
-	[1][1][0][0][RTW89_KCC][2] = 58,
-	[1][1][0][0][RTW89_ACMA][2] = 46,
-	[1][1][0][0][RTW89_CHILE][2] = 48,
-	[1][1][0][0][RTW89_UKRAINE][2] = 46,
-	[1][1][0][0][RTW89_MEXICO][2] = 48,
-	[1][1][0][0][RTW89_CN][2] = 46,
-	[1][1][0][0][RTW89_QATAR][2] = 46,
-	[1][1][0][0][RTW89_FCC][3] = 48,
-	[1][1][0][0][RTW89_ETSI][3] = 46,
-	[1][1][0][0][RTW89_MKK][3] = 56,
-	[1][1][0][0][RTW89_IC][3] = 48,
-	[1][1][0][0][RTW89_KCC][3] = 58,
-	[1][1][0][0][RTW89_ACMA][3] = 46,
-	[1][1][0][0][RTW89_CHILE][3] = 48,
-	[1][1][0][0][RTW89_UKRAINE][3] = 46,
-	[1][1][0][0][RTW89_MEXICO][3] = 48,
-	[1][1][0][0][RTW89_CN][3] = 46,
-	[1][1][0][0][RTW89_QATAR][3] = 46,
-	[1][1][0][0][RTW89_FCC][4] = 48,
-	[1][1][0][0][RTW89_ETSI][4] = 46,
-	[1][1][0][0][RTW89_MKK][4] = 56,
-	[1][1][0][0][RTW89_IC][4] = 48,
-	[1][1][0][0][RTW89_KCC][4] = 58,
-	[1][1][0][0][RTW89_ACMA][4] = 46,
-	[1][1][0][0][RTW89_CHILE][4] = 48,
-	[1][1][0][0][RTW89_UKRAINE][4] = 46,
-	[1][1][0][0][RTW89_MEXICO][4] = 48,
-	[1][1][0][0][RTW89_CN][4] = 46,
-	[1][1][0][0][RTW89_QATAR][4] = 46,
-	[1][1][0][0][RTW89_FCC][5] = 58,
-	[1][1][0][0][RTW89_ETSI][5] = 46,
-	[1][1][0][0][RTW89_MKK][5] = 56,
-	[1][1][0][0][RTW89_IC][5] = 58,
-	[1][1][0][0][RTW89_KCC][5] = 58,
-	[1][1][0][0][RTW89_ACMA][5] = 46,
-	[1][1][0][0][RTW89_CHILE][5] = 48,
-	[1][1][0][0][RTW89_UKRAINE][5] = 46,
-	[1][1][0][0][RTW89_MEXICO][5] = 58,
-	[1][1][0][0][RTW89_CN][5] = 46,
-	[1][1][0][0][RTW89_QATAR][5] = 46,
-	[1][1][0][0][RTW89_FCC][6] = 46,
-	[1][1][0][0][RTW89_ETSI][6] = 46,
-	[1][1][0][0][RTW89_MKK][6] = 56,
-	[1][1][0][0][RTW89_IC][6] = 46,
-	[1][1][0][0][RTW89_KCC][6] = 58,
-	[1][1][0][0][RTW89_ACMA][6] = 46,
-	[1][1][0][0][RTW89_CHILE][6] = 46,
-	[1][1][0][0][RTW89_UKRAINE][6] = 46,
-	[1][1][0][0][RTW89_MEXICO][6] = 46,
-	[1][1][0][0][RTW89_CN][6] = 46,
-	[1][1][0][0][RTW89_QATAR][6] = 46,
-	[1][1][0][0][RTW89_FCC][7] = 46,
-	[1][1][0][0][RTW89_ETSI][7] = 46,
-	[1][1][0][0][RTW89_MKK][7] = 56,
-	[1][1][0][0][RTW89_IC][7] = 46,
-	[1][1][0][0][RTW89_KCC][7] = 58,
-	[1][1][0][0][RTW89_ACMA][7] = 46,
-	[1][1][0][0][RTW89_CHILE][7] = 46,
-	[1][1][0][0][RTW89_UKRAINE][7] = 46,
-	[1][1][0][0][RTW89_MEXICO][7] = 46,
-	[1][1][0][0][RTW89_CN][7] = 46,
-	[1][1][0][0][RTW89_QATAR][7] = 46,
-	[1][1][0][0][RTW89_FCC][8] = 46,
-	[1][1][0][0][RTW89_ETSI][8] = 46,
-	[1][1][0][0][RTW89_MKK][8] = 56,
-	[1][1][0][0][RTW89_IC][8] = 46,
-	[1][1][0][0][RTW89_KCC][8] = 58,
-	[1][1][0][0][RTW89_ACMA][8] = 46,
-	[1][1][0][0][RTW89_CHILE][8] = 46,
-	[1][1][0][0][RTW89_UKRAINE][8] = 46,
-	[1][1][0][0][RTW89_MEXICO][8] = 46,
-	[1][1][0][0][RTW89_CN][8] = 46,
-	[1][1][0][0][RTW89_QATAR][8] = 46,
-	[1][1][0][0][RTW89_FCC][9] = 24,
-	[1][1][0][0][RTW89_ETSI][9] = 46,
-	[1][1][0][0][RTW89_MKK][9] = 56,
-	[1][1][0][0][RTW89_IC][9] = 24,
-	[1][1][0][0][RTW89_KCC][9] = 58,
-	[1][1][0][0][RTW89_ACMA][9] = 46,
-	[1][1][0][0][RTW89_CHILE][9] = 24,
-	[1][1][0][0][RTW89_UKRAINE][9] = 46,
-	[1][1][0][0][RTW89_MEXICO][9] = 24,
-	[1][1][0][0][RTW89_CN][9] = 46,
-	[1][1][0][0][RTW89_QATAR][9] = 46,
-	[1][1][0][0][RTW89_FCC][10] = 24,
-	[1][1][0][0][RTW89_ETSI][10] = 46,
-	[1][1][0][0][RTW89_MKK][10] = 56,
-	[1][1][0][0][RTW89_IC][10] = 24,
-	[1][1][0][0][RTW89_KCC][10] = 58,
-	[1][1][0][0][RTW89_ACMA][10] = 46,
-	[1][1][0][0][RTW89_CHILE][10] = 24,
-	[1][1][0][0][RTW89_UKRAINE][10] = 46,
-	[1][1][0][0][RTW89_MEXICO][10] = 24,
-	[1][1][0][0][RTW89_CN][10] = 46,
-	[1][1][0][0][RTW89_QATAR][10] = 46,
-	[1][1][0][0][RTW89_FCC][11] = 127,
-	[1][1][0][0][RTW89_ETSI][11] = 127,
-	[1][1][0][0][RTW89_MKK][11] = 127,
-	[1][1][0][0][RTW89_IC][11] = 127,
-	[1][1][0][0][RTW89_KCC][11] = 127,
-	[1][1][0][0][RTW89_ACMA][11] = 127,
-	[1][1][0][0][RTW89_CHILE][11] = 127,
-	[1][1][0][0][RTW89_UKRAINE][11] = 127,
-	[1][1][0][0][RTW89_MEXICO][11] = 127,
-	[1][1][0][0][RTW89_CN][11] = 127,
-	[1][1][0][0][RTW89_QATAR][11] = 127,
-	[1][1][0][0][RTW89_FCC][12] = 127,
-	[1][1][0][0][RTW89_ETSI][12] = 127,
-	[1][1][0][0][RTW89_MKK][12] = 127,
-	[1][1][0][0][RTW89_IC][12] = 127,
-	[1][1][0][0][RTW89_KCC][12] = 127,
-	[1][1][0][0][RTW89_ACMA][12] = 127,
-	[1][1][0][0][RTW89_CHILE][12] = 127,
-	[1][1][0][0][RTW89_UKRAINE][12] = 127,
-	[1][1][0][0][RTW89_MEXICO][12] = 127,
-	[1][1][0][0][RTW89_CN][12] = 127,
-	[1][1][0][0][RTW89_QATAR][12] = 127,
-	[1][1][0][0][RTW89_FCC][13] = 127,
-	[1][1][0][0][RTW89_ETSI][13] = 127,
-	[1][1][0][0][RTW89_MKK][13] = 127,
-	[1][1][0][0][RTW89_IC][13] = 127,
-	[1][1][0][0][RTW89_KCC][13] = 127,
-	[1][1][0][0][RTW89_ACMA][13] = 127,
-	[1][1][0][0][RTW89_CHILE][13] = 127,
-	[1][1][0][0][RTW89_UKRAINE][13] = 127,
-	[1][1][0][0][RTW89_MEXICO][13] = 127,
-	[1][1][0][0][RTW89_CN][13] = 127,
-	[1][1][0][0][RTW89_QATAR][13] = 127,
-	[0][0][1][0][RTW89_FCC][0] = 66,
-	[0][0][1][0][RTW89_ETSI][0] = 58,
-	[0][0][1][0][RTW89_MKK][0] = 76,
-	[0][0][1][0][RTW89_IC][0] = 66,
-	[0][0][1][0][RTW89_KCC][0] = 76,
-	[0][0][1][0][RTW89_ACMA][0] = 58,
-	[0][0][1][0][RTW89_CHILE][0] = 60,
-	[0][0][1][0][RTW89_UKRAINE][0] = 58,
-	[0][0][1][0][RTW89_MEXICO][0] = 66,
-	[0][0][1][0][RTW89_CN][0] = 58,
-	[0][0][1][0][RTW89_QATAR][0] = 58,
-	[0][0][1][0][RTW89_FCC][1] = 66,
-	[0][0][1][0][RTW89_ETSI][1] = 58,
-	[0][0][1][0][RTW89_MKK][1] = 76,
-	[0][0][1][0][RTW89_IC][1] = 66,
-	[0][0][1][0][RTW89_KCC][1] = 76,
-	[0][0][1][0][RTW89_ACMA][1] = 58,
-	[0][0][1][0][RTW89_CHILE][1] = 60,
-	[0][0][1][0][RTW89_UKRAINE][1] = 58,
-	[0][0][1][0][RTW89_MEXICO][1] = 66,
-	[0][0][1][0][RTW89_CN][1] = 58,
-	[0][0][1][0][RTW89_QATAR][1] = 58,
-	[0][0][1][0][RTW89_FCC][2] = 70,
-	[0][0][1][0][RTW89_ETSI][2] = 58,
-	[0][0][1][0][RTW89_MKK][2] = 76,
-	[0][0][1][0][RTW89_IC][2] = 70,
-	[0][0][1][0][RTW89_KCC][2] = 76,
-	[0][0][1][0][RTW89_ACMA][2] = 58,
-	[0][0][1][0][RTW89_CHILE][2] = 60,
-	[0][0][1][0][RTW89_UKRAINE][2] = 58,
-	[0][0][1][0][RTW89_MEXICO][2] = 70,
-	[0][0][1][0][RTW89_CN][2] = 58,
-	[0][0][1][0][RTW89_QATAR][2] = 58,
-	[0][0][1][0][RTW89_FCC][3] = 74,
-	[0][0][1][0][RTW89_ETSI][3] = 58,
-	[0][0][1][0][RTW89_MKK][3] = 76,
-	[0][0][1][0][RTW89_IC][3] = 74,
-	[0][0][1][0][RTW89_KCC][3] = 76,
-	[0][0][1][0][RTW89_ACMA][3] = 58,
-	[0][0][1][0][RTW89_CHILE][3] = 60,
-	[0][0][1][0][RTW89_UKRAINE][3] = 58,
-	[0][0][1][0][RTW89_MEXICO][3] = 74,
-	[0][0][1][0][RTW89_CN][3] = 58,
-	[0][0][1][0][RTW89_QATAR][3] = 58,
-	[0][0][1][0][RTW89_FCC][4] = 78,
-	[0][0][1][0][RTW89_ETSI][4] = 58,
-	[0][0][1][0][RTW89_MKK][4] = 76,
-	[0][0][1][0][RTW89_IC][4] = 78,
-	[0][0][1][0][RTW89_KCC][4] = 76,
-	[0][0][1][0][RTW89_ACMA][4] = 58,
-	[0][0][1][0][RTW89_CHILE][4] = 60,
-	[0][0][1][0][RTW89_UKRAINE][4] = 58,
-	[0][0][1][0][RTW89_MEXICO][4] = 78,
-	[0][0][1][0][RTW89_CN][4] = 58,
-	[0][0][1][0][RTW89_QATAR][4] = 58,
-	[0][0][1][0][RTW89_FCC][5] = 78,
-	[0][0][1][0][RTW89_ETSI][5] = 58,
-	[0][0][1][0][RTW89_MKK][5] = 76,
-	[0][0][1][0][RTW89_IC][5] = 78,
-	[0][0][1][0][RTW89_KCC][5] = 76,
-	[0][0][1][0][RTW89_ACMA][5] = 58,
-	[0][0][1][0][RTW89_CHILE][5] = 60,
-	[0][0][1][0][RTW89_UKRAINE][5] = 58,
-	[0][0][1][0][RTW89_MEXICO][5] = 78,
-	[0][0][1][0][RTW89_CN][5] = 58,
-	[0][0][1][0][RTW89_QATAR][5] = 58,
-	[0][0][1][0][RTW89_FCC][6] = 78,
-	[0][0][1][0][RTW89_ETSI][6] = 58,
-	[0][0][1][0][RTW89_MKK][6] = 76,
-	[0][0][1][0][RTW89_IC][6] = 78,
-	[0][0][1][0][RTW89_KCC][6] = 76,
-	[0][0][1][0][RTW89_ACMA][6] = 58,
-	[0][0][1][0][RTW89_CHILE][6] = 60,
-	[0][0][1][0][RTW89_UKRAINE][6] = 58,
-	[0][0][1][0][RTW89_MEXICO][6] = 78,
-	[0][0][1][0][RTW89_CN][6] = 58,
-	[0][0][1][0][RTW89_QATAR][6] = 58,
-	[0][0][1][0][RTW89_FCC][7] = 74,
-	[0][0][1][0][RTW89_ETSI][7] = 58,
-	[0][0][1][0][RTW89_MKK][7] = 76,
-	[0][0][1][0][RTW89_IC][7] = 74,
-	[0][0][1][0][RTW89_KCC][7] = 76,
-	[0][0][1][0][RTW89_ACMA][7] = 58,
-	[0][0][1][0][RTW89_CHILE][7] = 60,
-	[0][0][1][0][RTW89_UKRAINE][7] = 58,
-	[0][0][1][0][RTW89_MEXICO][7] = 74,
-	[0][0][1][0][RTW89_CN][7] = 58,
-	[0][0][1][0][RTW89_QATAR][7] = 58,
-	[0][0][1][0][RTW89_FCC][8] = 70,
-	[0][0][1][0][RTW89_ETSI][8] = 58,
-	[0][0][1][0][RTW89_MKK][8] = 76,
-	[0][0][1][0][RTW89_IC][8] = 70,
-	[0][0][1][0][RTW89_KCC][8] = 76,
-	[0][0][1][0][RTW89_ACMA][8] = 58,
-	[0][0][1][0][RTW89_CHILE][8] = 60,
-	[0][0][1][0][RTW89_UKRAINE][8] = 58,
-	[0][0][1][0][RTW89_MEXICO][8] = 70,
-	[0][0][1][0][RTW89_CN][8] = 58,
-	[0][0][1][0][RTW89_QATAR][8] = 58,
-	[0][0][1][0][RTW89_FCC][9] = 66,
-	[0][0][1][0][RTW89_ETSI][9] = 58,
-	[0][0][1][0][RTW89_MKK][9] = 76,
-	[0][0][1][0][RTW89_IC][9] = 66,
-	[0][0][1][0][RTW89_KCC][9] = 76,
-	[0][0][1][0][RTW89_ACMA][9] = 58,
-	[0][0][1][0][RTW89_CHILE][9] = 60,
-	[0][0][1][0][RTW89_UKRAINE][9] = 58,
-	[0][0][1][0][RTW89_MEXICO][9] = 66,
-	[0][0][1][0][RTW89_CN][9] = 58,
-	[0][0][1][0][RTW89_QATAR][9] = 58,
-	[0][0][1][0][RTW89_FCC][10] = 66,
-	[0][0][1][0][RTW89_ETSI][10] = 58,
-	[0][0][1][0][RTW89_MKK][10] = 76,
-	[0][0][1][0][RTW89_IC][10] = 66,
-	[0][0][1][0][RTW89_KCC][10] = 76,
-	[0][0][1][0][RTW89_ACMA][10] = 58,
-	[0][0][1][0][RTW89_CHILE][10] = 60,
-	[0][0][1][0][RTW89_UKRAINE][10] = 58,
-	[0][0][1][0][RTW89_MEXICO][10] = 66,
-	[0][0][1][0][RTW89_CN][10] = 58,
-	[0][0][1][0][RTW89_QATAR][10] = 58,
-	[0][0][1][0][RTW89_FCC][11] = 56,
-	[0][0][1][0][RTW89_ETSI][11] = 58,
-	[0][0][1][0][RTW89_MKK][11] = 76,
-	[0][0][1][0][RTW89_IC][11] = 56,
-	[0][0][1][0][RTW89_KCC][11] = 76,
-	[0][0][1][0][RTW89_ACMA][11] = 58,
-	[0][0][1][0][RTW89_CHILE][11] = 56,
-	[0][0][1][0][RTW89_UKRAINE][11] = 58,
-	[0][0][1][0][RTW89_MEXICO][11] = 56,
-	[0][0][1][0][RTW89_CN][11] = 58,
-	[0][0][1][0][RTW89_QATAR][11] = 58,
-	[0][0][1][0][RTW89_FCC][12] = 52,
-	[0][0][1][0][RTW89_ETSI][12] = 58,
-	[0][0][1][0][RTW89_MKK][12] = 76,
-	[0][0][1][0][RTW89_IC][12] = 52,
-	[0][0][1][0][RTW89_KCC][12] = 76,
-	[0][0][1][0][RTW89_ACMA][12] = 58,
-	[0][0][1][0][RTW89_CHILE][12] = 52,
-	[0][0][1][0][RTW89_UKRAINE][12] = 58,
-	[0][0][1][0][RTW89_MEXICO][12] = 52,
-	[0][0][1][0][RTW89_CN][12] = 58,
-	[0][0][1][0][RTW89_QATAR][12] = 58,
-	[0][0][1][0][RTW89_FCC][13] = 127,
-	[0][0][1][0][RTW89_ETSI][13] = 127,
-	[0][0][1][0][RTW89_MKK][13] = 127,
-	[0][0][1][0][RTW89_IC][13] = 127,
-	[0][0][1][0][RTW89_KCC][13] = 127,
-	[0][0][1][0][RTW89_ACMA][13] = 127,
-	[0][0][1][0][RTW89_CHILE][13] = 127,
-	[0][0][1][0][RTW89_UKRAINE][13] = 127,
-	[0][0][1][0][RTW89_MEXICO][13] = 127,
-	[0][0][1][0][RTW89_CN][13] = 127,
-	[0][0][1][0][RTW89_QATAR][13] = 127,
-	[0][1][1][0][RTW89_FCC][0] = 62,
-	[0][1][1][0][RTW89_ETSI][0] = 46,
-	[0][1][1][0][RTW89_MKK][0] = 64,
-	[0][1][1][0][RTW89_IC][0] = 62,
-	[0][1][1][0][RTW89_KCC][0] = 70,
-	[0][1][1][0][RTW89_ACMA][0] = 46,
-	[0][1][1][0][RTW89_CHILE][0] = 48,
-	[0][1][1][0][RTW89_UKRAINE][0] = 46,
-	[0][1][1][0][RTW89_MEXICO][0] = 62,
-	[0][1][1][0][RTW89_CN][0] = 46,
-	[0][1][1][0][RTW89_QATAR][0] = 46,
-	[0][1][1][0][RTW89_FCC][1] = 62,
-	[0][1][1][0][RTW89_ETSI][1] = 46,
-	[0][1][1][0][RTW89_MKK][1] = 64,
-	[0][1][1][0][RTW89_IC][1] = 62,
-	[0][1][1][0][RTW89_KCC][1] = 70,
-	[0][1][1][0][RTW89_ACMA][1] = 46,
-	[0][1][1][0][RTW89_CHILE][1] = 48,
-	[0][1][1][0][RTW89_UKRAINE][1] = 46,
-	[0][1][1][0][RTW89_MEXICO][1] = 62,
-	[0][1][1][0][RTW89_CN][1] = 46,
-	[0][1][1][0][RTW89_QATAR][1] = 46,
-	[0][1][1][0][RTW89_FCC][2] = 66,
-	[0][1][1][0][RTW89_ETSI][2] = 46,
-	[0][1][1][0][RTW89_MKK][2] = 64,
-	[0][1][1][0][RTW89_IC][2] = 66,
-	[0][1][1][0][RTW89_KCC][2] = 70,
-	[0][1][1][0][RTW89_ACMA][2] = 46,
-	[0][1][1][0][RTW89_CHILE][2] = 48,
-	[0][1][1][0][RTW89_UKRAINE][2] = 46,
-	[0][1][1][0][RTW89_MEXICO][2] = 66,
-	[0][1][1][0][RTW89_CN][2] = 46,
-	[0][1][1][0][RTW89_QATAR][2] = 46,
-	[0][1][1][0][RTW89_FCC][3] = 70,
-	[0][1][1][0][RTW89_ETSI][3] = 46,
-	[0][1][1][0][RTW89_MKK][3] = 64,
-	[0][1][1][0][RTW89_IC][3] = 70,
-	[0][1][1][0][RTW89_KCC][3] = 70,
-	[0][1][1][0][RTW89_ACMA][3] = 46,
-	[0][1][1][0][RTW89_CHILE][3] = 48,
-	[0][1][1][0][RTW89_UKRAINE][3] = 46,
-	[0][1][1][0][RTW89_MEXICO][3] = 70,
-	[0][1][1][0][RTW89_CN][3] = 46,
-	[0][1][1][0][RTW89_QATAR][3] = 46,
-	[0][1][1][0][RTW89_FCC][4] = 78,
-	[0][1][1][0][RTW89_ETSI][4] = 46,
-	[0][1][1][0][RTW89_MKK][4] = 64,
-	[0][1][1][0][RTW89_IC][4] = 78,
-	[0][1][1][0][RTW89_KCC][4] = 70,
-	[0][1][1][0][RTW89_ACMA][4] = 46,
-	[0][1][1][0][RTW89_CHILE][4] = 48,
-	[0][1][1][0][RTW89_UKRAINE][4] = 46,
-	[0][1][1][0][RTW89_MEXICO][4] = 78,
-	[0][1][1][0][RTW89_CN][4] = 46,
-	[0][1][1][0][RTW89_QATAR][4] = 46,
-	[0][1][1][0][RTW89_FCC][5] = 78,
-	[0][1][1][0][RTW89_ETSI][5] = 46,
-	[0][1][1][0][RTW89_MKK][5] = 64,
-	[0][1][1][0][RTW89_IC][5] = 78,
-	[0][1][1][0][RTW89_KCC][5] = 70,
-	[0][1][1][0][RTW89_ACMA][5] = 46,
-	[0][1][1][0][RTW89_CHILE][5] = 48,
-	[0][1][1][0][RTW89_UKRAINE][5] = 46,
-	[0][1][1][0][RTW89_MEXICO][5] = 78,
-	[0][1][1][0][RTW89_CN][5] = 46,
-	[0][1][1][0][RTW89_QATAR][5] = 46,
-	[0][1][1][0][RTW89_FCC][6] = 78,
-	[0][1][1][0][RTW89_ETSI][6] = 46,
-	[0][1][1][0][RTW89_MKK][6] = 64,
-	[0][1][1][0][RTW89_IC][6] = 78,
-	[0][1][1][0][RTW89_KCC][6] = 70,
-	[0][1][1][0][RTW89_ACMA][6] = 46,
-	[0][1][1][0][RTW89_CHILE][6] = 48,
-	[0][1][1][0][RTW89_UKRAINE][6] = 46,
-	[0][1][1][0][RTW89_MEXICO][6] = 78,
-	[0][1][1][0][RTW89_CN][6] = 46,
-	[0][1][1][0][RTW89_QATAR][6] = 46,
-	[0][1][1][0][RTW89_FCC][7] = 70,
-	[0][1][1][0][RTW89_ETSI][7] = 46,
-	[0][1][1][0][RTW89_MKK][7] = 64,
-	[0][1][1][0][RTW89_IC][7] = 70,
-	[0][1][1][0][RTW89_KCC][7] = 70,
-	[0][1][1][0][RTW89_ACMA][7] = 46,
-	[0][1][1][0][RTW89_CHILE][7] = 48,
-	[0][1][1][0][RTW89_UKRAINE][7] = 46,
-	[0][1][1][0][RTW89_MEXICO][7] = 70,
-	[0][1][1][0][RTW89_CN][7] = 46,
-	[0][1][1][0][RTW89_QATAR][7] = 46,
-	[0][1][1][0][RTW89_FCC][8] = 66,
-	[0][1][1][0][RTW89_ETSI][8] = 46,
-	[0][1][1][0][RTW89_MKK][8] = 64,
-	[0][1][1][0][RTW89_IC][8] = 66,
-	[0][1][1][0][RTW89_KCC][8] = 70,
-	[0][1][1][0][RTW89_ACMA][8] = 46,
-	[0][1][1][0][RTW89_CHILE][8] = 48,
-	[0][1][1][0][RTW89_UKRAINE][8] = 46,
-	[0][1][1][0][RTW89_MEXICO][8] = 66,
-	[0][1][1][0][RTW89_CN][8] = 46,
-	[0][1][1][0][RTW89_QATAR][8] = 46,
-	[0][1][1][0][RTW89_FCC][9] = 62,
-	[0][1][1][0][RTW89_ETSI][9] = 46,
-	[0][1][1][0][RTW89_MKK][9] = 64,
-	[0][1][1][0][RTW89_IC][9] = 62,
-	[0][1][1][0][RTW89_KCC][9] = 70,
-	[0][1][1][0][RTW89_ACMA][9] = 46,
-	[0][1][1][0][RTW89_CHILE][9] = 48,
-	[0][1][1][0][RTW89_UKRAINE][9] = 46,
-	[0][1][1][0][RTW89_MEXICO][9] = 62,
-	[0][1][1][0][RTW89_CN][9] = 46,
-	[0][1][1][0][RTW89_QATAR][9] = 46,
-	[0][1][1][0][RTW89_FCC][10] = 62,
-	[0][1][1][0][RTW89_ETSI][10] = 46,
-	[0][1][1][0][RTW89_MKK][10] = 64,
-	[0][1][1][0][RTW89_IC][10] = 62,
-	[0][1][1][0][RTW89_KCC][10] = 70,
-	[0][1][1][0][RTW89_ACMA][10] = 46,
-	[0][1][1][0][RTW89_CHILE][10] = 48,
-	[0][1][1][0][RTW89_UKRAINE][10] = 46,
-	[0][1][1][0][RTW89_MEXICO][10] = 62,
-	[0][1][1][0][RTW89_CN][10] = 46,
-	[0][1][1][0][RTW89_QATAR][10] = 46,
-	[0][1][1][0][RTW89_FCC][11] = 42,
-	[0][1][1][0][RTW89_ETSI][11] = 46,
-	[0][1][1][0][RTW89_MKK][11] = 64,
-	[0][1][1][0][RTW89_IC][11] = 42,
-	[0][1][1][0][RTW89_KCC][11] = 70,
-	[0][1][1][0][RTW89_ACMA][11] = 46,
-	[0][1][1][0][RTW89_CHILE][11] = 42,
-	[0][1][1][0][RTW89_UKRAINE][11] = 46,
-	[0][1][1][0][RTW89_MEXICO][11] = 42,
-	[0][1][1][0][RTW89_CN][11] = 46,
-	[0][1][1][0][RTW89_QATAR][11] = 46,
-	[0][1][1][0][RTW89_FCC][12] = 40,
-	[0][1][1][0][RTW89_ETSI][12] = 46,
-	[0][1][1][0][RTW89_MKK][12] = 64,
-	[0][1][1][0][RTW89_IC][12] = 40,
-	[0][1][1][0][RTW89_KCC][12] = 70,
-	[0][1][1][0][RTW89_ACMA][12] = 46,
-	[0][1][1][0][RTW89_CHILE][12] = 40,
-	[0][1][1][0][RTW89_UKRAINE][12] = 46,
-	[0][1][1][0][RTW89_MEXICO][12] = 40,
-	[0][1][1][0][RTW89_CN][12] = 46,
-	[0][1][1][0][RTW89_QATAR][12] = 46,
-	[0][1][1][0][RTW89_FCC][13] = 127,
-	[0][1][1][0][RTW89_ETSI][13] = 127,
-	[0][1][1][0][RTW89_MKK][13] = 127,
-	[0][1][1][0][RTW89_IC][13] = 127,
-	[0][1][1][0][RTW89_KCC][13] = 127,
-	[0][1][1][0][RTW89_ACMA][13] = 127,
-	[0][1][1][0][RTW89_CHILE][13] = 127,
-	[0][1][1][0][RTW89_UKRAINE][13] = 127,
-	[0][1][1][0][RTW89_MEXICO][13] = 127,
-	[0][1][1][0][RTW89_CN][13] = 127,
-	[0][1][1][0][RTW89_QATAR][13] = 127,
-	[0][0][2][0][RTW89_FCC][0] = 66,
-	[0][0][2][0][RTW89_ETSI][0] = 58,
-	[0][0][2][0][RTW89_MKK][0] = 76,
-	[0][0][2][0][RTW89_IC][0] = 66,
-	[0][0][2][0][RTW89_KCC][0] = 76,
-	[0][0][2][0][RTW89_ACMA][0] = 58,
-	[0][0][2][0][RTW89_CHILE][0] = 60,
-	[0][0][2][0][RTW89_UKRAINE][0] = 58,
-	[0][0][2][0][RTW89_MEXICO][0] = 66,
-	[0][0][2][0][RTW89_CN][0] = 58,
-	[0][0][2][0][RTW89_QATAR][0] = 58,
-	[0][0][2][0][RTW89_FCC][1] = 66,
-	[0][0][2][0][RTW89_ETSI][1] = 58,
-	[0][0][2][0][RTW89_MKK][1] = 76,
-	[0][0][2][0][RTW89_IC][1] = 66,
-	[0][0][2][0][RTW89_KCC][1] = 76,
-	[0][0][2][0][RTW89_ACMA][1] = 58,
-	[0][0][2][0][RTW89_CHILE][1] = 60,
-	[0][0][2][0][RTW89_UKRAINE][1] = 58,
-	[0][0][2][0][RTW89_MEXICO][1] = 66,
-	[0][0][2][0][RTW89_CN][1] = 58,
-	[0][0][2][0][RTW89_QATAR][1] = 58,
-	[0][0][2][0][RTW89_FCC][2] = 70,
-	[0][0][2][0][RTW89_ETSI][2] = 58,
-	[0][0][2][0][RTW89_MKK][2] = 76,
-	[0][0][2][0][RTW89_IC][2] = 70,
-	[0][0][2][0][RTW89_KCC][2] = 76,
-	[0][0][2][0][RTW89_ACMA][2] = 58,
-	[0][0][2][0][RTW89_CHILE][2] = 60,
-	[0][0][2][0][RTW89_UKRAINE][2] = 58,
-	[0][0][2][0][RTW89_MEXICO][2] = 70,
-	[0][0][2][0][RTW89_CN][2] = 58,
-	[0][0][2][0][RTW89_QATAR][2] = 58,
-	[0][0][2][0][RTW89_FCC][3] = 74,
-	[0][0][2][0][RTW89_ETSI][3] = 58,
-	[0][0][2][0][RTW89_MKK][3] = 76,
-	[0][0][2][0][RTW89_IC][3] = 74,
-	[0][0][2][0][RTW89_KCC][3] = 76,
-	[0][0][2][0][RTW89_ACMA][3] = 58,
-	[0][0][2][0][RTW89_CHILE][3] = 60,
-	[0][0][2][0][RTW89_UKRAINE][3] = 58,
-	[0][0][2][0][RTW89_MEXICO][3] = 74,
-	[0][0][2][0][RTW89_CN][3] = 58,
-	[0][0][2][0][RTW89_QATAR][3] = 58,
-	[0][0][2][0][RTW89_FCC][4] = 76,
-	[0][0][2][0][RTW89_ETSI][4] = 58,
-	[0][0][2][0][RTW89_MKK][4] = 76,
-	[0][0][2][0][RTW89_IC][4] = 76,
-	[0][0][2][0][RTW89_KCC][4] = 76,
-	[0][0][2][0][RTW89_ACMA][4] = 58,
-	[0][0][2][0][RTW89_CHILE][4] = 60,
-	[0][0][2][0][RTW89_UKRAINE][4] = 58,
-	[0][0][2][0][RTW89_MEXICO][4] = 76,
-	[0][0][2][0][RTW89_CN][4] = 58,
-	[0][0][2][0][RTW89_QATAR][4] = 58,
-	[0][0][2][0][RTW89_FCC][5] = 76,
-	[0][0][2][0][RTW89_ETSI][5] = 58,
-	[0][0][2][0][RTW89_MKK][5] = 76,
-	[0][0][2][0][RTW89_IC][5] = 76,
-	[0][0][2][0][RTW89_KCC][5] = 76,
-	[0][0][2][0][RTW89_ACMA][5] = 58,
-	[0][0][2][0][RTW89_CHILE][5] = 60,
-	[0][0][2][0][RTW89_UKRAINE][5] = 58,
-	[0][0][2][0][RTW89_MEXICO][5] = 76,
-	[0][0][2][0][RTW89_CN][5] = 58,
-	[0][0][2][0][RTW89_QATAR][5] = 58,
-	[0][0][2][0][RTW89_FCC][6] = 76,
-	[0][0][2][0][RTW89_ETSI][6] = 58,
-	[0][0][2][0][RTW89_MKK][6] = 76,
-	[0][0][2][0][RTW89_IC][6] = 76,
-	[0][0][2][0][RTW89_KCC][6] = 76,
-	[0][0][2][0][RTW89_ACMA][6] = 58,
-	[0][0][2][0][RTW89_CHILE][6] = 60,
-	[0][0][2][0][RTW89_UKRAINE][6] = 58,
-	[0][0][2][0][RTW89_MEXICO][6] = 76,
-	[0][0][2][0][RTW89_CN][6] = 58,
-	[0][0][2][0][RTW89_QATAR][6] = 58,
-	[0][0][2][0][RTW89_FCC][7] = 74,
-	[0][0][2][0][RTW89_ETSI][7] = 58,
-	[0][0][2][0][RTW89_MKK][7] = 76,
-	[0][0][2][0][RTW89_IC][7] = 74,
-	[0][0][2][0][RTW89_KCC][7] = 76,
-	[0][0][2][0][RTW89_ACMA][7] = 58,
-	[0][0][2][0][RTW89_CHILE][7] = 60,
-	[0][0][2][0][RTW89_UKRAINE][7] = 58,
-	[0][0][2][0][RTW89_MEXICO][7] = 74,
-	[0][0][2][0][RTW89_CN][7] = 58,
-	[0][0][2][0][RTW89_QATAR][7] = 58,
-	[0][0][2][0][RTW89_FCC][8] = 70,
-	[0][0][2][0][RTW89_ETSI][8] = 58,
-	[0][0][2][0][RTW89_MKK][8] = 76,
-	[0][0][2][0][RTW89_IC][8] = 70,
-	[0][0][2][0][RTW89_KCC][8] = 76,
-	[0][0][2][0][RTW89_ACMA][8] = 58,
-	[0][0][2][0][RTW89_CHILE][8] = 60,
-	[0][0][2][0][RTW89_UKRAINE][8] = 58,
-	[0][0][2][0][RTW89_MEXICO][8] = 70,
-	[0][0][2][0][RTW89_CN][8] = 58,
-	[0][0][2][0][RTW89_QATAR][8] = 58,
-	[0][0][2][0][RTW89_FCC][9] = 66,
-	[0][0][2][0][RTW89_ETSI][9] = 58,
-	[0][0][2][0][RTW89_MKK][9] = 76,
-	[0][0][2][0][RTW89_IC][9] = 66,
-	[0][0][2][0][RTW89_KCC][9] = 76,
-	[0][0][2][0][RTW89_ACMA][9] = 58,
-	[0][0][2][0][RTW89_CHILE][9] = 60,
-	[0][0][2][0][RTW89_UKRAINE][9] = 58,
-	[0][0][2][0][RTW89_MEXICO][9] = 66,
-	[0][0][2][0][RTW89_CN][9] = 58,
-	[0][0][2][0][RTW89_QATAR][9] = 58,
-	[0][0][2][0][RTW89_FCC][10] = 66,
-	[0][0][2][0][RTW89_ETSI][10] = 58,
-	[0][0][2][0][RTW89_MKK][10] = 76,
-	[0][0][2][0][RTW89_IC][10] = 66,
-	[0][0][2][0][RTW89_KCC][10] = 76,
-	[0][0][2][0][RTW89_ACMA][10] = 58,
-	[0][0][2][0][RTW89_CHILE][10] = 60,
-	[0][0][2][0][RTW89_UKRAINE][10] = 58,
-	[0][0][2][0][RTW89_MEXICO][10] = 66,
-	[0][0][2][0][RTW89_CN][10] = 58,
-	[0][0][2][0][RTW89_QATAR][10] = 58,
-	[0][0][2][0][RTW89_FCC][11] = 54,
-	[0][0][2][0][RTW89_ETSI][11] = 58,
-	[0][0][2][0][RTW89_MKK][11] = 76,
-	[0][0][2][0][RTW89_IC][11] = 54,
-	[0][0][2][0][RTW89_KCC][11] = 76,
-	[0][0][2][0][RTW89_ACMA][11] = 58,
-	[0][0][2][0][RTW89_CHILE][11] = 54,
-	[0][0][2][0][RTW89_UKRAINE][11] = 58,
-	[0][0][2][0][RTW89_MEXICO][11] = 54,
-	[0][0][2][0][RTW89_CN][11] = 58,
-	[0][0][2][0][RTW89_QATAR][11] = 58,
-	[0][0][2][0][RTW89_FCC][12] = 50,
-	[0][0][2][0][RTW89_ETSI][12] = 58,
-	[0][0][2][0][RTW89_MKK][12] = 76,
-	[0][0][2][0][RTW89_IC][12] = 50,
-	[0][0][2][0][RTW89_KCC][12] = 74,
-	[0][0][2][0][RTW89_ACMA][12] = 58,
-	[0][0][2][0][RTW89_CHILE][12] = 50,
-	[0][0][2][0][RTW89_UKRAINE][12] = 58,
-	[0][0][2][0][RTW89_MEXICO][12] = 50,
-	[0][0][2][0][RTW89_CN][12] = 58,
-	[0][0][2][0][RTW89_QATAR][12] = 58,
-	[0][0][2][0][RTW89_FCC][13] = 127,
-	[0][0][2][0][RTW89_ETSI][13] = 127,
-	[0][0][2][0][RTW89_MKK][13] = 127,
-	[0][0][2][0][RTW89_IC][13] = 127,
-	[0][0][2][0][RTW89_KCC][13] = 127,
-	[0][0][2][0][RTW89_ACMA][13] = 127,
-	[0][0][2][0][RTW89_CHILE][13] = 127,
-	[0][0][2][0][RTW89_UKRAINE][13] = 127,
-	[0][0][2][0][RTW89_MEXICO][13] = 127,
-	[0][0][2][0][RTW89_CN][13] = 127,
-	[0][0][2][0][RTW89_QATAR][13] = 127,
-	[0][1][2][0][RTW89_FCC][0] = 62,
-	[0][1][2][0][RTW89_ETSI][0] = 46,
-	[0][1][2][0][RTW89_MKK][0] = 64,
-	[0][1][2][0][RTW89_IC][0] = 62,
-	[0][1][2][0][RTW89_KCC][0] = 68,
-	[0][1][2][0][RTW89_ACMA][0] = 46,
-	[0][1][2][0][RTW89_CHILE][0] = 48,
-	[0][1][2][0][RTW89_UKRAINE][0] = 46,
-	[0][1][2][0][RTW89_MEXICO][0] = 62,
-	[0][1][2][0][RTW89_CN][0] = 46,
-	[0][1][2][0][RTW89_QATAR][0] = 46,
-	[0][1][2][0][RTW89_FCC][1] = 62,
-	[0][1][2][0][RTW89_ETSI][1] = 46,
-	[0][1][2][0][RTW89_MKK][1] = 64,
-	[0][1][2][0][RTW89_IC][1] = 62,
-	[0][1][2][0][RTW89_KCC][1] = 70,
-	[0][1][2][0][RTW89_ACMA][1] = 46,
-	[0][1][2][0][RTW89_CHILE][1] = 48,
-	[0][1][2][0][RTW89_UKRAINE][1] = 46,
-	[0][1][2][0][RTW89_MEXICO][1] = 62,
-	[0][1][2][0][RTW89_CN][1] = 46,
-	[0][1][2][0][RTW89_QATAR][1] = 46,
-	[0][1][2][0][RTW89_FCC][2] = 66,
-	[0][1][2][0][RTW89_ETSI][2] = 46,
-	[0][1][2][0][RTW89_MKK][2] = 64,
-	[0][1][2][0][RTW89_IC][2] = 66,
-	[0][1][2][0][RTW89_KCC][2] = 70,
-	[0][1][2][0][RTW89_ACMA][2] = 46,
-	[0][1][2][0][RTW89_CHILE][2] = 48,
-	[0][1][2][0][RTW89_UKRAINE][2] = 46,
-	[0][1][2][0][RTW89_MEXICO][2] = 66,
-	[0][1][2][0][RTW89_CN][2] = 46,
-	[0][1][2][0][RTW89_QATAR][2] = 46,
-	[0][1][2][0][RTW89_FCC][3] = 70,
-	[0][1][2][0][RTW89_ETSI][3] = 46,
-	[0][1][2][0][RTW89_MKK][3] = 64,
-	[0][1][2][0][RTW89_IC][3] = 70,
-	[0][1][2][0][RTW89_KCC][3] = 70,
-	[0][1][2][0][RTW89_ACMA][3] = 46,
-	[0][1][2][0][RTW89_CHILE][3] = 48,
-	[0][1][2][0][RTW89_UKRAINE][3] = 46,
-	[0][1][2][0][RTW89_MEXICO][3] = 70,
-	[0][1][2][0][RTW89_CN][3] = 46,
-	[0][1][2][0][RTW89_QATAR][3] = 46,
-	[0][1][2][0][RTW89_FCC][4] = 76,
-	[0][1][2][0][RTW89_ETSI][4] = 46,
-	[0][1][2][0][RTW89_MKK][4] = 64,
-	[0][1][2][0][RTW89_IC][4] = 76,
-	[0][1][2][0][RTW89_KCC][4] = 70,
-	[0][1][2][0][RTW89_ACMA][4] = 46,
-	[0][1][2][0][RTW89_CHILE][4] = 48,
-	[0][1][2][0][RTW89_UKRAINE][4] = 46,
-	[0][1][2][0][RTW89_MEXICO][4] = 76,
-	[0][1][2][0][RTW89_CN][4] = 46,
-	[0][1][2][0][RTW89_QATAR][4] = 46,
-	[0][1][2][0][RTW89_FCC][5] = 76,
-	[0][1][2][0][RTW89_ETSI][5] = 46,
-	[0][1][2][0][RTW89_MKK][5] = 64,
-	[0][1][2][0][RTW89_IC][5] = 76,
-	[0][1][2][0][RTW89_KCC][5] = 70,
-	[0][1][2][0][RTW89_ACMA][5] = 46,
-	[0][1][2][0][RTW89_CHILE][5] = 48,
-	[0][1][2][0][RTW89_UKRAINE][5] = 46,
-	[0][1][2][0][RTW89_MEXICO][5] = 76,
-	[0][1][2][0][RTW89_CN][5] = 46,
-	[0][1][2][0][RTW89_QATAR][5] = 46,
-	[0][1][2][0][RTW89_FCC][6] = 76,
-	[0][1][2][0][RTW89_ETSI][6] = 46,
-	[0][1][2][0][RTW89_MKK][6] = 64,
-	[0][1][2][0][RTW89_IC][6] = 76,
-	[0][1][2][0][RTW89_KCC][6] = 70,
-	[0][1][2][0][RTW89_ACMA][6] = 46,
-	[0][1][2][0][RTW89_CHILE][6] = 48,
-	[0][1][2][0][RTW89_UKRAINE][6] = 46,
-	[0][1][2][0][RTW89_MEXICO][6] = 76,
-	[0][1][2][0][RTW89_CN][6] = 46,
-	[0][1][2][0][RTW89_QATAR][6] = 46,
-	[0][1][2][0][RTW89_FCC][7] = 68,
-	[0][1][2][0][RTW89_ETSI][7] = 46,
-	[0][1][2][0][RTW89_MKK][7] = 64,
-	[0][1][2][0][RTW89_IC][7] = 68,
-	[0][1][2][0][RTW89_KCC][7] = 70,
-	[0][1][2][0][RTW89_ACMA][7] = 46,
-	[0][1][2][0][RTW89_CHILE][7] = 48,
-	[0][1][2][0][RTW89_UKRAINE][7] = 46,
-	[0][1][2][0][RTW89_MEXICO][7] = 68,
-	[0][1][2][0][RTW89_CN][7] = 46,
-	[0][1][2][0][RTW89_QATAR][7] = 46,
-	[0][1][2][0][RTW89_FCC][8] = 64,
-	[0][1][2][0][RTW89_ETSI][8] = 46,
-	[0][1][2][0][RTW89_MKK][8] = 64,
-	[0][1][2][0][RTW89_IC][8] = 64,
-	[0][1][2][0][RTW89_KCC][8] = 70,
-	[0][1][2][0][RTW89_ACMA][8] = 46,
-	[0][1][2][0][RTW89_CHILE][8] = 48,
-	[0][1][2][0][RTW89_UKRAINE][8] = 46,
-	[0][1][2][0][RTW89_MEXICO][8] = 64,
-	[0][1][2][0][RTW89_CN][8] = 46,
-	[0][1][2][0][RTW89_QATAR][8] = 46,
-	[0][1][2][0][RTW89_FCC][9] = 60,
-	[0][1][2][0][RTW89_ETSI][9] = 46,
-	[0][1][2][0][RTW89_MKK][9] = 64,
-	[0][1][2][0][RTW89_IC][9] = 60,
-	[0][1][2][0][RTW89_KCC][9] = 70,
-	[0][1][2][0][RTW89_ACMA][9] = 46,
-	[0][1][2][0][RTW89_CHILE][9] = 48,
-	[0][1][2][0][RTW89_UKRAINE][9] = 46,
-	[0][1][2][0][RTW89_MEXICO][9] = 60,
-	[0][1][2][0][RTW89_CN][9] = 46,
-	[0][1][2][0][RTW89_QATAR][9] = 46,
-	[0][1][2][0][RTW89_FCC][10] = 60,
-	[0][1][2][0][RTW89_ETSI][10] = 46,
-	[0][1][2][0][RTW89_MKK][10] = 64,
-	[0][1][2][0][RTW89_IC][10] = 60,
-	[0][1][2][0][RTW89_KCC][10] = 70,
-	[0][1][2][0][RTW89_ACMA][10] = 46,
-	[0][1][2][0][RTW89_CHILE][10] = 48,
-	[0][1][2][0][RTW89_UKRAINE][10] = 46,
-	[0][1][2][0][RTW89_MEXICO][10] = 60,
-	[0][1][2][0][RTW89_CN][10] = 46,
-	[0][1][2][0][RTW89_QATAR][10] = 46,
-	[0][1][2][0][RTW89_FCC][11] = 42,
-	[0][1][2][0][RTW89_ETSI][11] = 46,
-	[0][1][2][0][RTW89_MKK][11] = 64,
-	[0][1][2][0][RTW89_IC][11] = 42,
-	[0][1][2][0][RTW89_KCC][11] = 70,
-	[0][1][2][0][RTW89_ACMA][11] = 46,
-	[0][1][2][0][RTW89_CHILE][11] = 42,
-	[0][1][2][0][RTW89_UKRAINE][11] = 46,
-	[0][1][2][0][RTW89_MEXICO][11] = 42,
-	[0][1][2][0][RTW89_CN][11] = 46,
-	[0][1][2][0][RTW89_QATAR][11] = 46,
-	[0][1][2][0][RTW89_FCC][12] = 40,
-	[0][1][2][0][RTW89_ETSI][12] = 46,
-	[0][1][2][0][RTW89_MKK][12] = 64,
-	[0][1][2][0][RTW89_IC][12] = 40,
-	[0][1][2][0][RTW89_KCC][12] = 68,
-	[0][1][2][0][RTW89_ACMA][12] = 46,
-	[0][1][2][0][RTW89_CHILE][12] = 40,
-	[0][1][2][0][RTW89_UKRAINE][12] = 46,
-	[0][1][2][0][RTW89_MEXICO][12] = 40,
-	[0][1][2][0][RTW89_CN][12] = 46,
-	[0][1][2][0][RTW89_QATAR][12] = 46,
-	[0][1][2][0][RTW89_FCC][13] = 127,
-	[0][1][2][0][RTW89_ETSI][13] = 127,
-	[0][1][2][0][RTW89_MKK][13] = 127,
-	[0][1][2][0][RTW89_IC][13] = 127,
-	[0][1][2][0][RTW89_KCC][13] = 127,
-	[0][1][2][0][RTW89_ACMA][13] = 127,
-	[0][1][2][0][RTW89_CHILE][13] = 127,
-	[0][1][2][0][RTW89_UKRAINE][13] = 127,
-	[0][1][2][0][RTW89_MEXICO][13] = 127,
-	[0][1][2][0][RTW89_CN][13] = 127,
-	[0][1][2][0][RTW89_QATAR][13] = 127,
-	[0][1][2][1][RTW89_FCC][0] = 62,
-	[0][1][2][1][RTW89_ETSI][0] = 34,
-	[0][1][2][1][RTW89_MKK][0] = 64,
-	[0][1][2][1][RTW89_IC][0] = 62,
-	[0][1][2][1][RTW89_KCC][0] = 68,
-	[0][1][2][1][RTW89_ACMA][0] = 34,
-	[0][1][2][1][RTW89_CHILE][0] = 36,
-	[0][1][2][1][RTW89_UKRAINE][0] = 34,
-	[0][1][2][1][RTW89_MEXICO][0] = 62,
-	[0][1][2][1][RTW89_CN][0] = 34,
-	[0][1][2][1][RTW89_QATAR][0] = 34,
-	[0][1][2][1][RTW89_FCC][1] = 62,
-	[0][1][2][1][RTW89_ETSI][1] = 34,
-	[0][1][2][1][RTW89_MKK][1] = 64,
-	[0][1][2][1][RTW89_IC][1] = 62,
-	[0][1][2][1][RTW89_KCC][1] = 70,
-	[0][1][2][1][RTW89_ACMA][1] = 34,
-	[0][1][2][1][RTW89_CHILE][1] = 36,
-	[0][1][2][1][RTW89_UKRAINE][1] = 34,
-	[0][1][2][1][RTW89_MEXICO][1] = 62,
-	[0][1][2][1][RTW89_CN][1] = 34,
-	[0][1][2][1][RTW89_QATAR][1] = 34,
-	[0][1][2][1][RTW89_FCC][2] = 66,
-	[0][1][2][1][RTW89_ETSI][2] = 34,
-	[0][1][2][1][RTW89_MKK][2] = 64,
-	[0][1][2][1][RTW89_IC][2] = 66,
-	[0][1][2][1][RTW89_KCC][2] = 70,
-	[0][1][2][1][RTW89_ACMA][2] = 34,
-	[0][1][2][1][RTW89_CHILE][2] = 36,
-	[0][1][2][1][RTW89_UKRAINE][2] = 34,
-	[0][1][2][1][RTW89_MEXICO][2] = 66,
-	[0][1][2][1][RTW89_CN][2] = 34,
-	[0][1][2][1][RTW89_QATAR][2] = 34,
-	[0][1][2][1][RTW89_FCC][3] = 70,
-	[0][1][2][1][RTW89_ETSI][3] = 34,
-	[0][1][2][1][RTW89_MKK][3] = 64,
-	[0][1][2][1][RTW89_IC][3] = 70,
-	[0][1][2][1][RTW89_KCC][3] = 70,
-	[0][1][2][1][RTW89_ACMA][3] = 34,
-	[0][1][2][1][RTW89_CHILE][3] = 36,
-	[0][1][2][1][RTW89_UKRAINE][3] = 34,
-	[0][1][2][1][RTW89_MEXICO][3] = 70,
-	[0][1][2][1][RTW89_CN][3] = 34,
-	[0][1][2][1][RTW89_QATAR][3] = 34,
-	[0][1][2][1][RTW89_FCC][4] = 76,
-	[0][1][2][1][RTW89_ETSI][4] = 34,
-	[0][1][2][1][RTW89_MKK][4] = 64,
-	[0][1][2][1][RTW89_IC][4] = 76,
-	[0][1][2][1][RTW89_KCC][4] = 70,
-	[0][1][2][1][RTW89_ACMA][4] = 34,
-	[0][1][2][1][RTW89_CHILE][4] = 36,
-	[0][1][2][1][RTW89_UKRAINE][4] = 34,
-	[0][1][2][1][RTW89_MEXICO][4] = 76,
-	[0][1][2][1][RTW89_CN][4] = 34,
-	[0][1][2][1][RTW89_QATAR][4] = 34,
-	[0][1][2][1][RTW89_FCC][5] = 76,
-	[0][1][2][1][RTW89_ETSI][5] = 34,
-	[0][1][2][1][RTW89_MKK][5] = 64,
-	[0][1][2][1][RTW89_IC][5] = 76,
-	[0][1][2][1][RTW89_KCC][5] = 70,
-	[0][1][2][1][RTW89_ACMA][5] = 34,
-	[0][1][2][1][RTW89_CHILE][5] = 36,
-	[0][1][2][1][RTW89_UKRAINE][5] = 34,
-	[0][1][2][1][RTW89_MEXICO][5] = 76,
-	[0][1][2][1][RTW89_CN][5] = 34,
-	[0][1][2][1][RTW89_QATAR][5] = 34,
-	[0][1][2][1][RTW89_FCC][6] = 76,
-	[0][1][2][1][RTW89_ETSI][6] = 34,
-	[0][1][2][1][RTW89_MKK][6] = 64,
-	[0][1][2][1][RTW89_IC][6] = 76,
-	[0][1][2][1][RTW89_KCC][6] = 70,
-	[0][1][2][1][RTW89_ACMA][6] = 34,
-	[0][1][2][1][RTW89_CHILE][6] = 36,
-	[0][1][2][1][RTW89_UKRAINE][6] = 34,
-	[0][1][2][1][RTW89_MEXICO][6] = 76,
-	[0][1][2][1][RTW89_CN][6] = 34,
-	[0][1][2][1][RTW89_QATAR][6] = 34,
-	[0][1][2][1][RTW89_FCC][7] = 68,
-	[0][1][2][1][RTW89_ETSI][7] = 34,
-	[0][1][2][1][RTW89_MKK][7] = 64,
-	[0][1][2][1][RTW89_IC][7] = 68,
-	[0][1][2][1][RTW89_KCC][7] = 70,
-	[0][1][2][1][RTW89_ACMA][7] = 34,
-	[0][1][2][1][RTW89_CHILE][7] = 36,
-	[0][1][2][1][RTW89_UKRAINE][7] = 34,
-	[0][1][2][1][RTW89_MEXICO][7] = 68,
-	[0][1][2][1][RTW89_CN][7] = 34,
-	[0][1][2][1][RTW89_QATAR][7] = 34,
-	[0][1][2][1][RTW89_FCC][8] = 64,
-	[0][1][2][1][RTW89_ETSI][8] = 34,
-	[0][1][2][1][RTW89_MKK][8] = 64,
-	[0][1][2][1][RTW89_IC][8] = 64,
-	[0][1][2][1][RTW89_KCC][8] = 70,
-	[0][1][2][1][RTW89_ACMA][8] = 34,
-	[0][1][2][1][RTW89_CHILE][8] = 36,
-	[0][1][2][1][RTW89_UKRAINE][8] = 34,
-	[0][1][2][1][RTW89_MEXICO][8] = 64,
-	[0][1][2][1][RTW89_CN][8] = 34,
-	[0][1][2][1][RTW89_QATAR][8] = 34,
-	[0][1][2][1][RTW89_FCC][9] = 60,
-	[0][1][2][1][RTW89_ETSI][9] = 34,
-	[0][1][2][1][RTW89_MKK][9] = 64,
-	[0][1][2][1][RTW89_IC][9] = 60,
-	[0][1][2][1][RTW89_KCC][9] = 70,
-	[0][1][2][1][RTW89_ACMA][9] = 34,
-	[0][1][2][1][RTW89_CHILE][9] = 36,
-	[0][1][2][1][RTW89_UKRAINE][9] = 34,
-	[0][1][2][1][RTW89_MEXICO][9] = 60,
-	[0][1][2][1][RTW89_CN][9] = 34,
-	[0][1][2][1][RTW89_QATAR][9] = 34,
-	[0][1][2][1][RTW89_FCC][10] = 60,
-	[0][1][2][1][RTW89_ETSI][10] = 34,
-	[0][1][2][1][RTW89_MKK][10] = 64,
-	[0][1][2][1][RTW89_IC][10] = 60,
-	[0][1][2][1][RTW89_KCC][10] = 70,
-	[0][1][2][1][RTW89_ACMA][10] = 34,
-	[0][1][2][1][RTW89_CHILE][10] = 36,
-	[0][1][2][1][RTW89_UKRAINE][10] = 34,
-	[0][1][2][1][RTW89_MEXICO][10] = 60,
-	[0][1][2][1][RTW89_CN][10] = 34,
-	[0][1][2][1][RTW89_QATAR][10] = 34,
-	[0][1][2][1][RTW89_FCC][11] = 42,
-	[0][1][2][1][RTW89_ETSI][11] = 34,
-	[0][1][2][1][RTW89_MKK][11] = 64,
-	[0][1][2][1][RTW89_IC][11] = 42,
-	[0][1][2][1][RTW89_KCC][11] = 70,
-	[0][1][2][1][RTW89_ACMA][11] = 34,
-	[0][1][2][1][RTW89_CHILE][11] = 36,
-	[0][1][2][1][RTW89_UKRAINE][11] = 34,
-	[0][1][2][1][RTW89_MEXICO][11] = 42,
-	[0][1][2][1][RTW89_CN][11] = 34,
-	[0][1][2][1][RTW89_QATAR][11] = 34,
-	[0][1][2][1][RTW89_FCC][12] = 40,
-	[0][1][2][1][RTW89_ETSI][12] = 34,
-	[0][1][2][1][RTW89_MKK][12] = 64,
-	[0][1][2][1][RTW89_IC][12] = 40,
-	[0][1][2][1][RTW89_KCC][12] = 68,
-	[0][1][2][1][RTW89_ACMA][12] = 34,
-	[0][1][2][1][RTW89_CHILE][12] = 36,
-	[0][1][2][1][RTW89_UKRAINE][12] = 34,
-	[0][1][2][1][RTW89_MEXICO][12] = 40,
-	[0][1][2][1][RTW89_CN][12] = 34,
-	[0][1][2][1][RTW89_QATAR][12] = 34,
-	[0][1][2][1][RTW89_FCC][13] = 127,
-	[0][1][2][1][RTW89_ETSI][13] = 127,
-	[0][1][2][1][RTW89_MKK][13] = 127,
-	[0][1][2][1][RTW89_IC][13] = 127,
-	[0][1][2][1][RTW89_KCC][13] = 127,
-	[0][1][2][1][RTW89_ACMA][13] = 127,
-	[0][1][2][1][RTW89_CHILE][13] = 127,
-	[0][1][2][1][RTW89_UKRAINE][13] = 127,
-	[0][1][2][1][RTW89_MEXICO][13] = 127,
-	[0][1][2][1][RTW89_CN][13] = 127,
-	[0][1][2][1][RTW89_QATAR][13] = 127,
-	[1][0][2][0][RTW89_FCC][0] = 127,
-	[1][0][2][0][RTW89_ETSI][0] = 127,
-	[1][0][2][0][RTW89_MKK][0] = 127,
-	[1][0][2][0][RTW89_IC][0] = 127,
-	[1][0][2][0][RTW89_KCC][0] = 127,
-	[1][0][2][0][RTW89_ACMA][0] = 127,
-	[1][0][2][0][RTW89_CHILE][0] = 127,
-	[1][0][2][0][RTW89_UKRAINE][0] = 127,
-	[1][0][2][0][RTW89_MEXICO][0] = 127,
-	[1][0][2][0][RTW89_CN][0] = 127,
-	[1][0][2][0][RTW89_QATAR][0] = 127,
-	[1][0][2][0][RTW89_FCC][1] = 127,
-	[1][0][2][0][RTW89_ETSI][1] = 127,
-	[1][0][2][0][RTW89_MKK][1] = 127,
-	[1][0][2][0][RTW89_IC][1] = 127,
-	[1][0][2][0][RTW89_KCC][1] = 127,
-	[1][0][2][0][RTW89_ACMA][1] = 127,
-	[1][0][2][0][RTW89_CHILE][1] = 127,
-	[1][0][2][0][RTW89_UKRAINE][1] = 127,
-	[1][0][2][0][RTW89_MEXICO][1] = 127,
-	[1][0][2][0][RTW89_CN][1] = 127,
-	[1][0][2][0][RTW89_QATAR][1] = 127,
-	[1][0][2][0][RTW89_FCC][2] = 56,
-	[1][0][2][0][RTW89_ETSI][2] = 58,
-	[1][0][2][0][RTW89_MKK][2] = 68,
-	[1][0][2][0][RTW89_IC][2] = 56,
-	[1][0][2][0][RTW89_KCC][2] = 68,
-	[1][0][2][0][RTW89_ACMA][2] = 58,
-	[1][0][2][0][RTW89_CHILE][2] = 56,
-	[1][0][2][0][RTW89_UKRAINE][2] = 58,
-	[1][0][2][0][RTW89_MEXICO][2] = 56,
-	[1][0][2][0][RTW89_CN][2] = 58,
-	[1][0][2][0][RTW89_QATAR][2] = 58,
-	[1][0][2][0][RTW89_FCC][3] = 56,
-	[1][0][2][0][RTW89_ETSI][3] = 58,
-	[1][0][2][0][RTW89_MKK][3] = 68,
-	[1][0][2][0][RTW89_IC][3] = 56,
-	[1][0][2][0][RTW89_KCC][3] = 68,
-	[1][0][2][0][RTW89_ACMA][3] = 58,
-	[1][0][2][0][RTW89_CHILE][3] = 56,
-	[1][0][2][0][RTW89_UKRAINE][3] = 58,
-	[1][0][2][0][RTW89_MEXICO][3] = 56,
-	[1][0][2][0][RTW89_CN][3] = 58,
-	[1][0][2][0][RTW89_QATAR][3] = 58,
-	[1][0][2][0][RTW89_FCC][4] = 60,
-	[1][0][2][0][RTW89_ETSI][4] = 58,
-	[1][0][2][0][RTW89_MKK][4] = 68,
-	[1][0][2][0][RTW89_IC][4] = 60,
-	[1][0][2][0][RTW89_KCC][4] = 68,
-	[1][0][2][0][RTW89_ACMA][4] = 58,
-	[1][0][2][0][RTW89_CHILE][4] = 60,
-	[1][0][2][0][RTW89_UKRAINE][4] = 58,
-	[1][0][2][0][RTW89_MEXICO][4] = 60,
-	[1][0][2][0][RTW89_CN][4] = 58,
-	[1][0][2][0][RTW89_QATAR][4] = 58,
-	[1][0][2][0][RTW89_FCC][5] = 64,
-	[1][0][2][0][RTW89_ETSI][5] = 58,
-	[1][0][2][0][RTW89_MKK][5] = 68,
-	[1][0][2][0][RTW89_IC][5] = 64,
-	[1][0][2][0][RTW89_KCC][5] = 68,
-	[1][0][2][0][RTW89_ACMA][5] = 58,
-	[1][0][2][0][RTW89_CHILE][5] = 60,
-	[1][0][2][0][RTW89_UKRAINE][5] = 58,
-	[1][0][2][0][RTW89_MEXICO][5] = 64,
-	[1][0][2][0][RTW89_CN][5] = 58,
-	[1][0][2][0][RTW89_QATAR][5] = 58,
-	[1][0][2][0][RTW89_FCC][6] = 54,
-	[1][0][2][0][RTW89_ETSI][6] = 58,
-	[1][0][2][0][RTW89_MKK][6] = 68,
-	[1][0][2][0][RTW89_IC][6] = 54,
-	[1][0][2][0][RTW89_KCC][6] = 68,
-	[1][0][2][0][RTW89_ACMA][6] = 58,
-	[1][0][2][0][RTW89_CHILE][6] = 54,
-	[1][0][2][0][RTW89_UKRAINE][6] = 58,
-	[1][0][2][0][RTW89_MEXICO][6] = 54,
-	[1][0][2][0][RTW89_CN][6] = 58,
-	[1][0][2][0][RTW89_QATAR][6] = 58,
-	[1][0][2][0][RTW89_FCC][7] = 50,
-	[1][0][2][0][RTW89_ETSI][7] = 58,
-	[1][0][2][0][RTW89_MKK][7] = 68,
-	[1][0][2][0][RTW89_IC][7] = 50,
-	[1][0][2][0][RTW89_KCC][7] = 68,
-	[1][0][2][0][RTW89_ACMA][7] = 58,
-	[1][0][2][0][RTW89_CHILE][7] = 50,
-	[1][0][2][0][RTW89_UKRAINE][7] = 58,
-	[1][0][2][0][RTW89_MEXICO][7] = 50,
-	[1][0][2][0][RTW89_CN][7] = 58,
-	[1][0][2][0][RTW89_QATAR][7] = 58,
-	[1][0][2][0][RTW89_FCC][8] = 50,
-	[1][0][2][0][RTW89_ETSI][8] = 58,
-	[1][0][2][0][RTW89_MKK][8] = 68,
-	[1][0][2][0][RTW89_IC][8] = 50,
-	[1][0][2][0][RTW89_KCC][8] = 68,
-	[1][0][2][0][RTW89_ACMA][8] = 58,
-	[1][0][2][0][RTW89_CHILE][8] = 50,
-	[1][0][2][0][RTW89_UKRAINE][8] = 58,
-	[1][0][2][0][RTW89_MEXICO][8] = 50,
-	[1][0][2][0][RTW89_CN][8] = 58,
-	[1][0][2][0][RTW89_QATAR][8] = 58,
-	[1][0][2][0][RTW89_FCC][9] = 42,
-	[1][0][2][0][RTW89_ETSI][9] = 58,
-	[1][0][2][0][RTW89_MKK][9] = 68,
-	[1][0][2][0][RTW89_IC][9] = 42,
-	[1][0][2][0][RTW89_KCC][9] = 68,
-	[1][0][2][0][RTW89_ACMA][9] = 58,
-	[1][0][2][0][RTW89_CHILE][9] = 42,
-	[1][0][2][0][RTW89_UKRAINE][9] = 58,
-	[1][0][2][0][RTW89_MEXICO][9] = 42,
-	[1][0][2][0][RTW89_CN][9] = 58,
-	[1][0][2][0][RTW89_QATAR][9] = 58,
-	[1][0][2][0][RTW89_FCC][10] = 40,
-	[1][0][2][0][RTW89_ETSI][10] = 58,
-	[1][0][2][0][RTW89_MKK][10] = 68,
-	[1][0][2][0][RTW89_IC][10] = 40,
-	[1][0][2][0][RTW89_KCC][10] = 68,
-	[1][0][2][0][RTW89_ACMA][10] = 58,
-	[1][0][2][0][RTW89_CHILE][10] = 40,
-	[1][0][2][0][RTW89_UKRAINE][10] = 58,
-	[1][0][2][0][RTW89_MEXICO][10] = 40,
-	[1][0][2][0][RTW89_CN][10] = 58,
-	[1][0][2][0][RTW89_QATAR][10] = 58,
-	[1][0][2][0][RTW89_FCC][11] = 127,
-	[1][0][2][0][RTW89_ETSI][11] = 127,
-	[1][0][2][0][RTW89_MKK][11] = 127,
-	[1][0][2][0][RTW89_IC][11] = 127,
-	[1][0][2][0][RTW89_KCC][11] = 127,
-	[1][0][2][0][RTW89_ACMA][11] = 127,
-	[1][0][2][0][RTW89_CHILE][11] = 127,
-	[1][0][2][0][RTW89_UKRAINE][11] = 127,
-	[1][0][2][0][RTW89_MEXICO][11] = 127,
-	[1][0][2][0][RTW89_CN][11] = 127,
-	[1][0][2][0][RTW89_QATAR][11] = 127,
-	[1][0][2][0][RTW89_FCC][12] = 127,
-	[1][0][2][0][RTW89_ETSI][12] = 127,
-	[1][0][2][0][RTW89_MKK][12] = 127,
-	[1][0][2][0][RTW89_IC][12] = 127,
-	[1][0][2][0][RTW89_KCC][12] = 127,
-	[1][0][2][0][RTW89_ACMA][12] = 127,
-	[1][0][2][0][RTW89_CHILE][12] = 127,
-	[1][0][2][0][RTW89_UKRAINE][12] = 127,
-	[1][0][2][0][RTW89_MEXICO][12] = 127,
-	[1][0][2][0][RTW89_CN][12] = 127,
-	[1][0][2][0][RTW89_QATAR][12] = 127,
-	[1][0][2][0][RTW89_FCC][13] = 127,
-	[1][0][2][0][RTW89_ETSI][13] = 127,
-	[1][0][2][0][RTW89_MKK][13] = 127,
-	[1][0][2][0][RTW89_IC][13] = 127,
-	[1][0][2][0][RTW89_KCC][13] = 127,
-	[1][0][2][0][RTW89_ACMA][13] = 127,
-	[1][0][2][0][RTW89_CHILE][13] = 127,
-	[1][0][2][0][RTW89_UKRAINE][13] = 127,
-	[1][0][2][0][RTW89_MEXICO][13] = 127,
-	[1][0][2][0][RTW89_CN][13] = 127,
-	[1][0][2][0][RTW89_QATAR][13] = 127,
-	[1][1][2][0][RTW89_FCC][0] = 127,
-	[1][1][2][0][RTW89_ETSI][0] = 127,
-	[1][1][2][0][RTW89_MKK][0] = 127,
-	[1][1][2][0][RTW89_IC][0] = 127,
-	[1][1][2][0][RTW89_KCC][0] = 127,
-	[1][1][2][0][RTW89_ACMA][0] = 127,
-	[1][1][2][0][RTW89_CHILE][0] = 127,
-	[1][1][2][0][RTW89_UKRAINE][0] = 127,
-	[1][1][2][0][RTW89_MEXICO][0] = 127,
-	[1][1][2][0][RTW89_CN][0] = 127,
-	[1][1][2][0][RTW89_QATAR][0] = 127,
-	[1][1][2][0][RTW89_FCC][1] = 127,
-	[1][1][2][0][RTW89_ETSI][1] = 127,
-	[1][1][2][0][RTW89_MKK][1] = 127,
-	[1][1][2][0][RTW89_IC][1] = 127,
-	[1][1][2][0][RTW89_KCC][1] = 127,
-	[1][1][2][0][RTW89_ACMA][1] = 127,
-	[1][1][2][0][RTW89_CHILE][1] = 127,
-	[1][1][2][0][RTW89_UKRAINE][1] = 127,
-	[1][1][2][0][RTW89_MEXICO][1] = 127,
-	[1][1][2][0][RTW89_CN][1] = 127,
-	[1][1][2][0][RTW89_QATAR][1] = 127,
-	[1][1][2][0][RTW89_FCC][2] = 52,
-	[1][1][2][0][RTW89_ETSI][2] = 46,
-	[1][1][2][0][RTW89_MKK][2] = 64,
-	[1][1][2][0][RTW89_IC][2] = 52,
-	[1][1][2][0][RTW89_KCC][2] = 66,
-	[1][1][2][0][RTW89_ACMA][2] = 46,
-	[1][1][2][0][RTW89_CHILE][2] = 48,
-	[1][1][2][0][RTW89_UKRAINE][2] = 46,
-	[1][1][2][0][RTW89_MEXICO][2] = 52,
-	[1][1][2][0][RTW89_CN][2] = 46,
-	[1][1][2][0][RTW89_QATAR][2] = 46,
-	[1][1][2][0][RTW89_FCC][3] = 52,
-	[1][1][2][0][RTW89_ETSI][3] = 46,
-	[1][1][2][0][RTW89_MKK][3] = 64,
-	[1][1][2][0][RTW89_IC][3] = 52,
-	[1][1][2][0][RTW89_KCC][3] = 68,
-	[1][1][2][0][RTW89_ACMA][3] = 46,
-	[1][1][2][0][RTW89_CHILE][3] = 48,
-	[1][1][2][0][RTW89_UKRAINE][3] = 46,
-	[1][1][2][0][RTW89_MEXICO][3] = 52,
-	[1][1][2][0][RTW89_CN][3] = 46,
-	[1][1][2][0][RTW89_QATAR][3] = 46,
-	[1][1][2][0][RTW89_FCC][4] = 56,
-	[1][1][2][0][RTW89_ETSI][4] = 46,
-	[1][1][2][0][RTW89_MKK][4] = 64,
-	[1][1][2][0][RTW89_IC][4] = 56,
-	[1][1][2][0][RTW89_KCC][4] = 68,
-	[1][1][2][0][RTW89_ACMA][4] = 46,
-	[1][1][2][0][RTW89_CHILE][4] = 48,
-	[1][1][2][0][RTW89_UKRAINE][4] = 46,
-	[1][1][2][0][RTW89_MEXICO][4] = 56,
-	[1][1][2][0][RTW89_CN][4] = 46,
-	[1][1][2][0][RTW89_QATAR][4] = 46,
-	[1][1][2][0][RTW89_FCC][5] = 60,
-	[1][1][2][0][RTW89_ETSI][5] = 46,
-	[1][1][2][0][RTW89_MKK][5] = 64,
-	[1][1][2][0][RTW89_IC][5] = 60,
-	[1][1][2][0][RTW89_KCC][5] = 68,
-	[1][1][2][0][RTW89_ACMA][5] = 46,
-	[1][1][2][0][RTW89_CHILE][5] = 48,
-	[1][1][2][0][RTW89_UKRAINE][5] = 46,
-	[1][1][2][0][RTW89_MEXICO][5] = 60,
-	[1][1][2][0][RTW89_CN][5] = 46,
-	[1][1][2][0][RTW89_QATAR][5] = 46,
-	[1][1][2][0][RTW89_FCC][6] = 54,
-	[1][1][2][0][RTW89_ETSI][6] = 46,
-	[1][1][2][0][RTW89_MKK][6] = 64,
-	[1][1][2][0][RTW89_IC][6] = 52,
-	[1][1][2][0][RTW89_KCC][6] = 68,
-	[1][1][2][0][RTW89_ACMA][6] = 46,
-	[1][1][2][0][RTW89_CHILE][6] = 48,
-	[1][1][2][0][RTW89_UKRAINE][6] = 46,
-	[1][1][2][0][RTW89_MEXICO][6] = 54,
-	[1][1][2][0][RTW89_CN][6] = 46,
-	[1][1][2][0][RTW89_QATAR][6] = 46,
-	[1][1][2][0][RTW89_FCC][7] = 50,
-	[1][1][2][0][RTW89_ETSI][7] = 46,
-	[1][1][2][0][RTW89_MKK][7] = 64,
-	[1][1][2][0][RTW89_IC][7] = 48,
-	[1][1][2][0][RTW89_KCC][7] = 68,
-	[1][1][2][0][RTW89_ACMA][7] = 46,
-	[1][1][2][0][RTW89_CHILE][7] = 48,
-	[1][1][2][0][RTW89_UKRAINE][7] = 46,
-	[1][1][2][0][RTW89_MEXICO][7] = 50,
-	[1][1][2][0][RTW89_CN][7] = 46,
-	[1][1][2][0][RTW89_QATAR][7] = 46,
-	[1][1][2][0][RTW89_FCC][8] = 50,
-	[1][1][2][0][RTW89_ETSI][8] = 46,
-	[1][1][2][0][RTW89_MKK][8] = 64,
-	[1][1][2][0][RTW89_IC][8] = 48,
-	[1][1][2][0][RTW89_KCC][8] = 68,
-	[1][1][2][0][RTW89_ACMA][8] = 46,
-	[1][1][2][0][RTW89_CHILE][8] = 48,
-	[1][1][2][0][RTW89_UKRAINE][8] = 46,
-	[1][1][2][0][RTW89_MEXICO][8] = 50,
-	[1][1][2][0][RTW89_CN][8] = 46,
-	[1][1][2][0][RTW89_QATAR][8] = 46,
-	[1][1][2][0][RTW89_FCC][9] = 38,
-	[1][1][2][0][RTW89_ETSI][9] = 46,
-	[1][1][2][0][RTW89_MKK][9] = 64,
-	[1][1][2][0][RTW89_IC][9] = 38,
-	[1][1][2][0][RTW89_KCC][9] = 68,
-	[1][1][2][0][RTW89_ACMA][9] = 46,
-	[1][1][2][0][RTW89_CHILE][9] = 38,
-	[1][1][2][0][RTW89_UKRAINE][9] = 46,
-	[1][1][2][0][RTW89_MEXICO][9] = 38,
-	[1][1][2][0][RTW89_CN][9] = 46,
-	[1][1][2][0][RTW89_QATAR][9] = 46,
-	[1][1][2][0][RTW89_FCC][10] = 36,
-	[1][1][2][0][RTW89_ETSI][10] = 46,
-	[1][1][2][0][RTW89_MKK][10] = 64,
-	[1][1][2][0][RTW89_IC][10] = 36,
-	[1][1][2][0][RTW89_KCC][10] = 66,
-	[1][1][2][0][RTW89_ACMA][10] = 46,
-	[1][1][2][0][RTW89_CHILE][10] = 36,
-	[1][1][2][0][RTW89_UKRAINE][10] = 46,
-	[1][1][2][0][RTW89_MEXICO][10] = 36,
-	[1][1][2][0][RTW89_CN][10] = 46,
-	[1][1][2][0][RTW89_QATAR][10] = 46,
-	[1][1][2][0][RTW89_FCC][11] = 127,
-	[1][1][2][0][RTW89_ETSI][11] = 127,
-	[1][1][2][0][RTW89_MKK][11] = 127,
-	[1][1][2][0][RTW89_IC][11] = 127,
-	[1][1][2][0][RTW89_KCC][11] = 127,
-	[1][1][2][0][RTW89_ACMA][11] = 127,
-	[1][1][2][0][RTW89_CHILE][11] = 127,
-	[1][1][2][0][RTW89_UKRAINE][11] = 127,
-	[1][1][2][0][RTW89_MEXICO][11] = 127,
-	[1][1][2][0][RTW89_CN][11] = 127,
-	[1][1][2][0][RTW89_QATAR][11] = 127,
-	[1][1][2][0][RTW89_FCC][12] = 127,
-	[1][1][2][0][RTW89_ETSI][12] = 127,
-	[1][1][2][0][RTW89_MKK][12] = 127,
-	[1][1][2][0][RTW89_IC][12] = 127,
-	[1][1][2][0][RTW89_KCC][12] = 127,
-	[1][1][2][0][RTW89_ACMA][12] = 127,
-	[1][1][2][0][RTW89_CHILE][12] = 127,
-	[1][1][2][0][RTW89_UKRAINE][12] = 127,
-	[1][1][2][0][RTW89_MEXICO][12] = 127,
-	[1][1][2][0][RTW89_CN][12] = 127,
-	[1][1][2][0][RTW89_QATAR][12] = 127,
-	[1][1][2][0][RTW89_FCC][13] = 127,
-	[1][1][2][0][RTW89_ETSI][13] = 127,
-	[1][1][2][0][RTW89_MKK][13] = 127,
-	[1][1][2][0][RTW89_IC][13] = 127,
-	[1][1][2][0][RTW89_KCC][13] = 127,
-	[1][1][2][0][RTW89_ACMA][13] = 127,
-	[1][1][2][0][RTW89_CHILE][13] = 127,
-	[1][1][2][0][RTW89_UKRAINE][13] = 127,
-	[1][1][2][0][RTW89_MEXICO][13] = 127,
-	[1][1][2][0][RTW89_CN][13] = 127,
-	[1][1][2][0][RTW89_QATAR][13] = 127,
-	[1][1][2][1][RTW89_FCC][0] = 127,
-	[1][1][2][1][RTW89_ETSI][0] = 127,
-	[1][1][2][1][RTW89_MKK][0] = 127,
-	[1][1][2][1][RTW89_IC][0] = 127,
-	[1][1][2][1][RTW89_KCC][0] = 127,
-	[1][1][2][1][RTW89_ACMA][0] = 127,
-	[1][1][2][1][RTW89_CHILE][0] = 127,
-	[1][1][2][1][RTW89_UKRAINE][0] = 127,
-	[1][1][2][1][RTW89_MEXICO][0] = 127,
-	[1][1][2][1][RTW89_CN][0] = 127,
-	[1][1][2][1][RTW89_QATAR][0] = 127,
-	[1][1][2][1][RTW89_FCC][1] = 127,
-	[1][1][2][1][RTW89_ETSI][1] = 127,
-	[1][1][2][1][RTW89_MKK][1] = 127,
-	[1][1][2][1][RTW89_IC][1] = 127,
-	[1][1][2][1][RTW89_KCC][1] = 127,
-	[1][1][2][1][RTW89_ACMA][1] = 127,
-	[1][1][2][1][RTW89_CHILE][1] = 127,
-	[1][1][2][1][RTW89_UKRAINE][1] = 127,
-	[1][1][2][1][RTW89_MEXICO][1] = 127,
-	[1][1][2][1][RTW89_CN][1] = 127,
-	[1][1][2][1][RTW89_QATAR][1] = 127,
-	[1][1][2][1][RTW89_FCC][2] = 52,
-	[1][1][2][1][RTW89_ETSI][2] = 34,
-	[1][1][2][1][RTW89_MKK][2] = 64,
-	[1][1][2][1][RTW89_IC][2] = 52,
-	[1][1][2][1][RTW89_KCC][2] = 66,
-	[1][1][2][1][RTW89_ACMA][2] = 34,
-	[1][1][2][1][RTW89_CHILE][2] = 36,
-	[1][1][2][1][RTW89_UKRAINE][2] = 34,
-	[1][1][2][1][RTW89_MEXICO][2] = 52,
-	[1][1][2][1][RTW89_CN][2] = 34,
-	[1][1][2][1][RTW89_QATAR][2] = 34,
-	[1][1][2][1][RTW89_FCC][3] = 52,
-	[1][1][2][1][RTW89_ETSI][3] = 34,
-	[1][1][2][1][RTW89_MKK][3] = 64,
-	[1][1][2][1][RTW89_IC][3] = 52,
-	[1][1][2][1][RTW89_KCC][3] = 68,
-	[1][1][2][1][RTW89_ACMA][3] = 34,
-	[1][1][2][1][RTW89_CHILE][3] = 36,
-	[1][1][2][1][RTW89_UKRAINE][3] = 34,
-	[1][1][2][1][RTW89_MEXICO][3] = 52,
-	[1][1][2][1][RTW89_CN][3] = 34,
-	[1][1][2][1][RTW89_QATAR][3] = 34,
-	[1][1][2][1][RTW89_FCC][4] = 56,
-	[1][1][2][1][RTW89_ETSI][4] = 34,
-	[1][1][2][1][RTW89_MKK][4] = 64,
-	[1][1][2][1][RTW89_IC][4] = 56,
-	[1][1][2][1][RTW89_KCC][4] = 68,
-	[1][1][2][1][RTW89_ACMA][4] = 34,
-	[1][1][2][1][RTW89_CHILE][4] = 36,
-	[1][1][2][1][RTW89_UKRAINE][4] = 34,
-	[1][1][2][1][RTW89_MEXICO][4] = 56,
-	[1][1][2][1][RTW89_CN][4] = 34,
-	[1][1][2][1][RTW89_QATAR][4] = 34,
-	[1][1][2][1][RTW89_FCC][5] = 60,
-	[1][1][2][1][RTW89_ETSI][5] = 34,
-	[1][1][2][1][RTW89_MKK][5] = 64,
-	[1][1][2][1][RTW89_IC][5] = 60,
-	[1][1][2][1][RTW89_KCC][5] = 68,
-	[1][1][2][1][RTW89_ACMA][5] = 34,
-	[1][1][2][1][RTW89_CHILE][5] = 36,
-	[1][1][2][1][RTW89_UKRAINE][5] = 34,
-	[1][1][2][1][RTW89_MEXICO][5] = 60,
-	[1][1][2][1][RTW89_CN][5] = 34,
-	[1][1][2][1][RTW89_QATAR][5] = 34,
-	[1][1][2][1][RTW89_FCC][6] = 54,
-	[1][1][2][1][RTW89_ETSI][6] = 34,
-	[1][1][2][1][RTW89_MKK][6] = 64,
-	[1][1][2][1][RTW89_IC][6] = 52,
-	[1][1][2][1][RTW89_KCC][6] = 68,
-	[1][1][2][1][RTW89_ACMA][6] = 34,
-	[1][1][2][1][RTW89_CHILE][6] = 36,
-	[1][1][2][1][RTW89_UKRAINE][6] = 34,
-	[1][1][2][1][RTW89_MEXICO][6] = 54,
-	[1][1][2][1][RTW89_CN][6] = 34,
-	[1][1][2][1][RTW89_QATAR][6] = 34,
-	[1][1][2][1][RTW89_FCC][7] = 50,
-	[1][1][2][1][RTW89_ETSI][7] = 34,
-	[1][1][2][1][RTW89_MKK][7] = 64,
-	[1][1][2][1][RTW89_IC][7] = 48,
-	[1][1][2][1][RTW89_KCC][7] = 68,
-	[1][1][2][1][RTW89_ACMA][7] = 34,
-	[1][1][2][1][RTW89_CHILE][7] = 36,
-	[1][1][2][1][RTW89_UKRAINE][7] = 34,
-	[1][1][2][1][RTW89_MEXICO][7] = 50,
-	[1][1][2][1][RTW89_CN][7] = 34,
-	[1][1][2][1][RTW89_QATAR][7] = 34,
-	[1][1][2][1][RTW89_FCC][8] = 50,
-	[1][1][2][1][RTW89_ETSI][8] = 34,
-	[1][1][2][1][RTW89_MKK][8] = 64,
-	[1][1][2][1][RTW89_IC][8] = 48,
-	[1][1][2][1][RTW89_KCC][8] = 68,
-	[1][1][2][1][RTW89_ACMA][8] = 34,
-	[1][1][2][1][RTW89_CHILE][8] = 36,
-	[1][1][2][1][RTW89_UKRAINE][8] = 34,
-	[1][1][2][1][RTW89_MEXICO][8] = 50,
-	[1][1][2][1][RTW89_CN][8] = 34,
-	[1][1][2][1][RTW89_QATAR][8] = 34,
-	[1][1][2][1][RTW89_FCC][9] = 38,
-	[1][1][2][1][RTW89_ETSI][9] = 34,
-	[1][1][2][1][RTW89_MKK][9] = 64,
-	[1][1][2][1][RTW89_IC][9] = 38,
-	[1][1][2][1][RTW89_KCC][9] = 68,
-	[1][1][2][1][RTW89_ACMA][9] = 34,
-	[1][1][2][1][RTW89_CHILE][9] = 36,
-	[1][1][2][1][RTW89_UKRAINE][9] = 34,
-	[1][1][2][1][RTW89_MEXICO][9] = 38,
-	[1][1][2][1][RTW89_CN][9] = 34,
-	[1][1][2][1][RTW89_QATAR][9] = 34,
-	[1][1][2][1][RTW89_FCC][10] = 36,
-	[1][1][2][1][RTW89_ETSI][10] = 34,
-	[1][1][2][1][RTW89_MKK][10] = 64,
-	[1][1][2][1][RTW89_IC][10] = 36,
-	[1][1][2][1][RTW89_KCC][10] = 66,
-	[1][1][2][1][RTW89_ACMA][10] = 34,
-	[1][1][2][1][RTW89_CHILE][10] = 36,
-	[1][1][2][1][RTW89_UKRAINE][10] = 34,
-	[1][1][2][1][RTW89_MEXICO][10] = 36,
-	[1][1][2][1][RTW89_CN][10] = 34,
-	[1][1][2][1][RTW89_QATAR][10] = 34,
-	[1][1][2][1][RTW89_FCC][11] = 127,
-	[1][1][2][1][RTW89_ETSI][11] = 127,
-	[1][1][2][1][RTW89_MKK][11] = 127,
-	[1][1][2][1][RTW89_IC][11] = 127,
-	[1][1][2][1][RTW89_KCC][11] = 127,
-	[1][1][2][1][RTW89_ACMA][11] = 127,
-	[1][1][2][1][RTW89_CHILE][11] = 127,
-	[1][1][2][1][RTW89_UKRAINE][11] = 127,
-	[1][1][2][1][RTW89_MEXICO][11] = 127,
-	[1][1][2][1][RTW89_CN][11] = 127,
-	[1][1][2][1][RTW89_QATAR][11] = 127,
-	[1][1][2][1][RTW89_FCC][12] = 127,
-	[1][1][2][1][RTW89_ETSI][12] = 127,
-	[1][1][2][1][RTW89_MKK][12] = 127,
-	[1][1][2][1][RTW89_IC][12] = 127,
-	[1][1][2][1][RTW89_KCC][12] = 127,
-	[1][1][2][1][RTW89_ACMA][12] = 127,
-	[1][1][2][1][RTW89_CHILE][12] = 127,
-	[1][1][2][1][RTW89_UKRAINE][12] = 127,
-	[1][1][2][1][RTW89_MEXICO][12] = 127,
-	[1][1][2][1][RTW89_CN][12] = 127,
-	[1][1][2][1][RTW89_QATAR][12] = 127,
-	[1][1][2][1][RTW89_FCC][13] = 127,
-	[1][1][2][1][RTW89_ETSI][13] = 127,
-	[1][1][2][1][RTW89_MKK][13] = 127,
-	[1][1][2][1][RTW89_IC][13] = 127,
-	[1][1][2][1][RTW89_KCC][13] = 127,
-	[1][1][2][1][RTW89_ACMA][13] = 127,
-	[1][1][2][1][RTW89_CHILE][13] = 127,
-	[1][1][2][1][RTW89_UKRAINE][13] = 127,
-	[1][1][2][1][RTW89_MEXICO][13] = 127,
-	[1][1][2][1][RTW89_CN][13] = 127,
-	[1][1][2][1][RTW89_QATAR][13] = 127,
+	[0][0][0][0][0][0] = 56,
+	[0][0][0][0][0][1] = 56,
+	[0][0][0][0][0][2] = 56,
+	[0][0][0][0][0][3] = 56,
+	[0][0][0][0][0][4] = 56,
+	[0][0][0][0][0][5] = 56,
+	[0][0][0][0][0][6] = 56,
+	[0][0][0][0][0][7] = 56,
+	[0][0][0][0][0][8] = 56,
+	[0][0][0][0][0][9] = 56,
+	[0][0][0][0][0][10] = 56,
+	[0][0][0][0][0][11] = 56,
+	[0][0][0][0][0][12] = 48,
+	[0][0][0][0][0][13] = 76,
+	[0][1][0][0][0][0] = 44,
+	[0][1][0][0][0][1] = 44,
+	[0][1][0][0][0][2] = 44,
+	[0][1][0][0][0][3] = 44,
+	[0][1][0][0][0][4] = 44,
+	[0][1][0][0][0][5] = 44,
+	[0][1][0][0][0][6] = 44,
+	[0][1][0][0][0][7] = 44,
+	[0][1][0][0][0][8] = 44,
+	[0][1][0][0][0][9] = 44,
+	[0][1][0][0][0][10] = 44,
+	[0][1][0][0][0][11] = 44,
+	[0][1][0][0][0][12] = 38,
+	[0][1][0][0][0][13] = 64,
+	[1][0][0][0][0][0] = 0,
+	[1][0][0][0][0][1] = 0,
+	[1][0][0][0][0][2] = 58,
+	[1][0][0][0][0][3] = 58,
+	[1][0][0][0][0][4] = 58,
+	[1][0][0][0][0][5] = 58,
+	[1][0][0][0][0][6] = 46,
+	[1][0][0][0][0][7] = 46,
+	[1][0][0][0][0][8] = 46,
+	[1][0][0][0][0][9] = 32,
+	[1][0][0][0][0][10] = 32,
+	[1][0][0][0][0][11] = 0,
+	[1][0][0][0][0][12] = 0,
+	[1][0][0][0][0][13] = 0,
+	[1][1][0][0][0][0] = 0,
+	[1][1][0][0][0][1] = 0,
+	[1][1][0][0][0][2] = 46,
+	[1][1][0][0][0][3] = 46,
+	[1][1][0][0][0][4] = 46,
+	[1][1][0][0][0][5] = 46,
+	[1][1][0][0][0][6] = 46,
+	[1][1][0][0][0][7] = 46,
+	[1][1][0][0][0][8] = 46,
+	[1][1][0][0][0][9] = 24,
+	[1][1][0][0][0][10] = 24,
+	[1][1][0][0][0][11] = 0,
+	[1][1][0][0][0][12] = 0,
+	[1][1][0][0][0][13] = 0,
+	[0][0][1][0][0][0] = 58,
+	[0][0][1][0][0][1] = 58,
+	[0][0][1][0][0][2] = 58,
+	[0][0][1][0][0][3] = 58,
+	[0][0][1][0][0][4] = 58,
+	[0][0][1][0][0][5] = 58,
+	[0][0][1][0][0][6] = 58,
+	[0][0][1][0][0][7] = 58,
+	[0][0][1][0][0][8] = 58,
+	[0][0][1][0][0][9] = 58,
+	[0][0][1][0][0][10] = 58,
+	[0][0][1][0][0][11] = 56,
+	[0][0][1][0][0][12] = 52,
+	[0][0][1][0][0][13] = 0,
+	[0][1][1][0][0][0] = 46,
+	[0][1][1][0][0][1] = 46,
+	[0][1][1][0][0][2] = 46,
+	[0][1][1][0][0][3] = 46,
+	[0][1][1][0][0][4] = 46,
+	[0][1][1][0][0][5] = 46,
+	[0][1][1][0][0][6] = 46,
+	[0][1][1][0][0][7] = 46,
+	[0][1][1][0][0][8] = 46,
+	[0][1][1][0][0][9] = 46,
+	[0][1][1][0][0][10] = 46,
+	[0][1][1][0][0][11] = 42,
+	[0][1][1][0][0][12] = 40,
+	[0][1][1][0][0][13] = 0,
+	[0][0][2][0][0][0] = 58,
+	[0][0][2][0][0][1] = 58,
+	[0][0][2][0][0][2] = 58,
+	[0][0][2][0][0][3] = 58,
+	[0][0][2][0][0][4] = 58,
+	[0][0][2][0][0][5] = 58,
+	[0][0][2][0][0][6] = 58,
+	[0][0][2][0][0][7] = 58,
+	[0][0][2][0][0][8] = 58,
+	[0][0][2][0][0][9] = 58,
+	[0][0][2][0][0][10] = 58,
+	[0][0][2][0][0][11] = 54,
+	[0][0][2][0][0][12] = 50,
+	[0][0][2][0][0][13] = 0,
+	[0][1][2][0][0][0] = 46,
+	[0][1][2][0][0][1] = 46,
+	[0][1][2][0][0][2] = 46,
+	[0][1][2][0][0][3] = 46,
+	[0][1][2][0][0][4] = 46,
+	[0][1][2][0][0][5] = 46,
+	[0][1][2][0][0][6] = 46,
+	[0][1][2][0][0][7] = 46,
+	[0][1][2][0][0][8] = 46,
+	[0][1][2][0][0][9] = 46,
+	[0][1][2][0][0][10] = 46,
+	[0][1][2][0][0][11] = 42,
+	[0][1][2][0][0][12] = 40,
+	[0][1][2][0][0][13] = 0,
+	[0][1][2][1][0][0] = 34,
+	[0][1][2][1][0][1] = 34,
+	[0][1][2][1][0][2] = 34,
+	[0][1][2][1][0][3] = 34,
+	[0][1][2][1][0][4] = 34,
+	[0][1][2][1][0][5] = 34,
+	[0][1][2][1][0][6] = 34,
+	[0][1][2][1][0][7] = 34,
+	[0][1][2][1][0][8] = 34,
+	[0][1][2][1][0][9] = 34,
+	[0][1][2][1][0][10] = 34,
+	[0][1][2][1][0][11] = 34,
+	[0][1][2][1][0][12] = 34,
+	[0][1][2][1][0][13] = 0,
+	[1][0][2][0][0][0] = 0,
+	[1][0][2][0][0][1] = 0,
+	[1][0][2][0][0][2] = 56,
+	[1][0][2][0][0][3] = 56,
+	[1][0][2][0][0][4] = 58,
+	[1][0][2][0][0][5] = 58,
+	[1][0][2][0][0][6] = 54,
+	[1][0][2][0][0][7] = 50,
+	[1][0][2][0][0][8] = 50,
+	[1][0][2][0][0][9] = 42,
+	[1][0][2][0][0][10] = 40,
+	[1][0][2][0][0][11] = 0,
+	[1][0][2][0][0][12] = 0,
+	[1][0][2][0][0][13] = 0,
+	[1][1][2][0][0][0] = 0,
+	[1][1][2][0][0][1] = 0,
+	[1][1][2][0][0][2] = 46,
+	[1][1][2][0][0][3] = 46,
+	[1][1][2][0][0][4] = 46,
+	[1][1][2][0][0][5] = 46,
+	[1][1][2][0][0][6] = 46,
+	[1][1][2][0][0][7] = 46,
+	[1][1][2][0][0][8] = 46,
+	[1][1][2][0][0][9] = 38,
+	[1][1][2][0][0][10] = 36,
+	[1][1][2][0][0][11] = 0,
+	[1][1][2][0][0][12] = 0,
+	[1][1][2][0][0][13] = 0,
+	[1][1][2][1][0][0] = 0,
+	[1][1][2][1][0][1] = 0,
+	[1][1][2][1][0][2] = 34,
+	[1][1][2][1][0][3] = 34,
+	[1][1][2][1][0][4] = 34,
+	[1][1][2][1][0][5] = 34,
+	[1][1][2][1][0][6] = 34,
+	[1][1][2][1][0][7] = 34,
+	[1][1][2][1][0][8] = 34,
+	[1][1][2][1][0][9] = 34,
+	[1][1][2][1][0][10] = 34,
+	[1][1][2][1][0][11] = 0,
+	[1][1][2][1][0][12] = 0,
+	[1][1][2][1][0][13] = 0,
+	[0][0][0][0][2][0] = 76,
+	[0][0][0][0][1][0] = 56,
+	[0][0][0][0][3][0] = 68,
+	[0][0][0][0][5][0] = 76,
+	[0][0][0][0][6][0] = 56,
+	[0][0][0][0][9][0] = 56,
+	[0][0][0][0][8][0] = 60,
+	[0][0][0][0][11][0] = 56,
+	[0][0][0][0][2][1] = 76,
+	[0][0][0][0][1][1] = 56,
+	[0][0][0][0][3][1] = 68,
+	[0][0][0][0][5][1] = 76,
+	[0][0][0][0][6][1] = 56,
+	[0][0][0][0][9][1] = 56,
+	[0][0][0][0][8][1] = 60,
+	[0][0][0][0][11][1] = 56,
+	[0][0][0][0][2][2] = 76,
+	[0][0][0][0][1][2] = 56,
+	[0][0][0][0][3][2] = 68,
+	[0][0][0][0][5][2] = 76,
+	[0][0][0][0][6][2] = 56,
+	[0][0][0][0][9][2] = 56,
+	[0][0][0][0][8][2] = 60,
+	[0][0][0][0][11][2] = 56,
+	[0][0][0][0][2][3] = 76,
+	[0][0][0][0][1][3] = 56,
+	[0][0][0][0][3][3] = 68,
+	[0][0][0][0][5][3] = 76,
+	[0][0][0][0][6][3] = 56,
+	[0][0][0][0][9][3] = 56,
+	[0][0][0][0][8][3] = 60,
+	[0][0][0][0][11][3] = 56,
+	[0][0][0][0][2][4] = 76,
+	[0][0][0][0][1][4] = 56,
+	[0][0][0][0][3][4] = 68,
+	[0][0][0][0][5][4] = 76,
+	[0][0][0][0][6][4] = 56,
+	[0][0][0][0][9][4] = 56,
+	[0][0][0][0][8][4] = 60,
+	[0][0][0][0][11][4] = 56,
+	[0][0][0][0][2][5] = 76,
+	[0][0][0][0][1][5] = 56,
+	[0][0][0][0][3][5] = 68,
+	[0][0][0][0][5][5] = 76,
+	[0][0][0][0][6][5] = 56,
+	[0][0][0][0][9][5] = 56,
+	[0][0][0][0][8][5] = 60,
+	[0][0][0][0][11][5] = 56,
+	[0][0][0][0][2][6] = 76,
+	[0][0][0][0][1][6] = 56,
+	[0][0][0][0][3][6] = 68,
+	[0][0][0][0][5][6] = 76,
+	[0][0][0][0][6][6] = 56,
+	[0][0][0][0][9][6] = 56,
+	[0][0][0][0][8][6] = 60,
+	[0][0][0][0][11][6] = 56,
+	[0][0][0][0][2][7] = 76,
+	[0][0][0][0][1][7] = 56,
+	[0][0][0][0][3][7] = 68,
+	[0][0][0][0][5][7] = 76,
+	[0][0][0][0][6][7] = 56,
+	[0][0][0][0][9][7] = 56,
+	[0][0][0][0][8][7] = 60,
+	[0][0][0][0][11][7] = 56,
+	[0][0][0][0][2][8] = 76,
+	[0][0][0][0][1][8] = 56,
+	[0][0][0][0][3][8] = 68,
+	[0][0][0][0][5][8] = 76,
+	[0][0][0][0][6][8] = 56,
+	[0][0][0][0][9][8] = 56,
+	[0][0][0][0][8][8] = 60,
+	[0][0][0][0][11][8] = 56,
+	[0][0][0][0][2][9] = 76,
+	[0][0][0][0][1][9] = 56,
+	[0][0][0][0][3][9] = 68,
+	[0][0][0][0][5][9] = 76,
+	[0][0][0][0][6][9] = 56,
+	[0][0][0][0][9][9] = 56,
+	[0][0][0][0][8][9] = 60,
+	[0][0][0][0][11][9] = 56,
+	[0][0][0][0][2][10] = 76,
+	[0][0][0][0][1][10] = 56,
+	[0][0][0][0][3][10] = 68,
+	[0][0][0][0][5][10] = 76,
+	[0][0][0][0][6][10] = 56,
+	[0][0][0][0][9][10] = 56,
+	[0][0][0][0][8][10] = 60,
+	[0][0][0][0][11][10] = 56,
+	[0][0][0][0][2][11] = 68,
+	[0][0][0][0][1][11] = 56,
+	[0][0][0][0][3][11] = 68,
+	[0][0][0][0][5][11] = 68,
+	[0][0][0][0][6][11] = 56,
+	[0][0][0][0][9][11] = 56,
+	[0][0][0][0][8][11] = 60,
+	[0][0][0][0][11][11] = 56,
+	[0][0][0][0][2][12] = 48,
+	[0][0][0][0][1][12] = 56,
+	[0][0][0][0][3][12] = 68,
+	[0][0][0][0][5][12] = 48,
+	[0][0][0][0][6][12] = 56,
+	[0][0][0][0][9][12] = 56,
+	[0][0][0][0][8][12] = 60,
+	[0][0][0][0][11][12] = 56,
+	[0][0][0][0][2][13] = 127,
+	[0][0][0][0][1][13] = 127,
+	[0][0][0][0][3][13] = 76,
+	[0][0][0][0][5][13] = 127,
+	[0][0][0][0][6][13] = 127,
+	[0][0][0][0][9][13] = 127,
+	[0][0][0][0][8][13] = 127,
+	[0][0][0][0][11][13] = 127,
+	[0][1][0][0][2][0] = 74,
+	[0][1][0][0][1][0] = 44,
+	[0][1][0][0][3][0] = 56,
+	[0][1][0][0][5][0] = 74,
+	[0][1][0][0][6][0] = 44,
+	[0][1][0][0][9][0] = 44,
+	[0][1][0][0][8][0] = 48,
+	[0][1][0][0][11][0] = 44,
+	[0][1][0][0][2][1] = 76,
+	[0][1][0][0][1][1] = 44,
+	[0][1][0][0][3][1] = 56,
+	[0][1][0][0][5][1] = 76,
+	[0][1][0][0][6][1] = 44,
+	[0][1][0][0][9][1] = 44,
+	[0][1][0][0][8][1] = 48,
+	[0][1][0][0][11][1] = 44,
+	[0][1][0][0][2][2] = 76,
+	[0][1][0][0][1][2] = 44,
+	[0][1][0][0][3][2] = 56,
+	[0][1][0][0][5][2] = 76,
+	[0][1][0][0][6][2] = 44,
+	[0][1][0][0][9][2] = 44,
+	[0][1][0][0][8][2] = 48,
+	[0][1][0][0][11][2] = 44,
+	[0][1][0][0][2][3] = 76,
+	[0][1][0][0][1][3] = 44,
+	[0][1][0][0][3][3] = 56,
+	[0][1][0][0][5][3] = 76,
+	[0][1][0][0][6][3] = 44,
+	[0][1][0][0][9][3] = 44,
+	[0][1][0][0][8][3] = 48,
+	[0][1][0][0][11][3] = 44,
+	[0][1][0][0][2][4] = 76,
+	[0][1][0][0][1][4] = 44,
+	[0][1][0][0][3][4] = 56,
+	[0][1][0][0][5][4] = 76,
+	[0][1][0][0][6][4] = 44,
+	[0][1][0][0][9][4] = 44,
+	[0][1][0][0][8][4] = 48,
+	[0][1][0][0][11][4] = 44,
+	[0][1][0][0][2][5] = 76,
+	[0][1][0][0][1][5] = 44,
+	[0][1][0][0][3][5] = 56,
+	[0][1][0][0][5][5] = 76,
+	[0][1][0][0][6][5] = 44,
+	[0][1][0][0][9][5] = 44,
+	[0][1][0][0][8][5] = 48,
+	[0][1][0][0][11][5] = 44,
+	[0][1][0][0][2][6] = 76,
+	[0][1][0][0][1][6] = 44,
+	[0][1][0][0][3][6] = 56,
+	[0][1][0][0][5][6] = 76,
+	[0][1][0][0][6][6] = 44,
+	[0][1][0][0][9][6] = 44,
+	[0][1][0][0][8][6] = 48,
+	[0][1][0][0][11][6] = 44,
+	[0][1][0][0][2][7] = 76,
+	[0][1][0][0][1][7] = 44,
+	[0][1][0][0][3][7] = 56,
+	[0][1][0][0][5][7] = 76,
+	[0][1][0][0][6][7] = 44,
+	[0][1][0][0][9][7] = 44,
+	[0][1][0][0][8][7] = 48,
+	[0][1][0][0][11][7] = 44,
+	[0][1][0][0][2][8] = 76,
+	[0][1][0][0][1][8] = 44,
+	[0][1][0][0][3][8] = 56,
+	[0][1][0][0][5][8] = 76,
+	[0][1][0][0][6][8] = 44,
+	[0][1][0][0][9][8] = 44,
+	[0][1][0][0][8][8] = 48,
+	[0][1][0][0][11][8] = 44,
+	[0][1][0][0][2][9] = 76,
+	[0][1][0][0][1][9] = 44,
+	[0][1][0][0][3][9] = 56,
+	[0][1][0][0][5][9] = 76,
+	[0][1][0][0][6][9] = 44,
+	[0][1][0][0][9][9] = 44,
+	[0][1][0][0][8][9] = 48,
+	[0][1][0][0][11][9] = 44,
+	[0][1][0][0][2][10] = 62,
+	[0][1][0][0][1][10] = 44,
+	[0][1][0][0][3][10] = 56,
+	[0][1][0][0][5][10] = 62,
+	[0][1][0][0][6][10] = 44,
+	[0][1][0][0][9][10] = 44,
+	[0][1][0][0][8][10] = 48,
+	[0][1][0][0][11][10] = 44,
+	[0][1][0][0][2][11] = 52,
+	[0][1][0][0][1][11] = 44,
+	[0][1][0][0][3][11] = 56,
+	[0][1][0][0][5][11] = 52,
+	[0][1][0][0][6][11] = 44,
+	[0][1][0][0][9][11] = 44,
+	[0][1][0][0][8][11] = 48,
+	[0][1][0][0][11][11] = 44,
+	[0][1][0][0][2][12] = 38,
+	[0][1][0][0][1][12] = 44,
+	[0][1][0][0][3][12] = 56,
+	[0][1][0][0][5][12] = 38,
+	[0][1][0][0][6][12] = 44,
+	[0][1][0][0][9][12] = 44,
+	[0][1][0][0][8][12] = 48,
+	[0][1][0][0][11][12] = 44,
+	[0][1][0][0][2][13] = 127,
+	[0][1][0][0][1][13] = 127,
+	[0][1][0][0][3][13] = 64,
+	[0][1][0][0][5][13] = 127,
+	[0][1][0][0][6][13] = 127,
+	[0][1][0][0][9][13] = 127,
+	[0][1][0][0][8][13] = 127,
+	[0][1][0][0][11][13] = 127,
+	[1][0][0][0][2][0] = 127,
+	[1][0][0][0][1][0] = 127,
+	[1][0][0][0][3][0] = 127,
+	[1][0][0][0][5][0] = 127,
+	[1][0][0][0][6][0] = 127,
+	[1][0][0][0][9][0] = 127,
+	[1][0][0][0][8][0] = 127,
+	[1][0][0][0][11][0] = 127,
+	[1][0][0][0][2][1] = 127,
+	[1][0][0][0][1][1] = 127,
+	[1][0][0][0][3][1] = 127,
+	[1][0][0][0][5][1] = 127,
+	[1][0][0][0][6][1] = 127,
+	[1][0][0][0][9][1] = 127,
+	[1][0][0][0][8][1] = 127,
+	[1][0][0][0][11][1] = 127,
+	[1][0][0][0][2][2] = 60,
+	[1][0][0][0][1][2] = 58,
+	[1][0][0][0][3][2] = 68,
+	[1][0][0][0][5][2] = 60,
+	[1][0][0][0][6][2] = 58,
+	[1][0][0][0][9][2] = 58,
+	[1][0][0][0][8][2] = 60,
+	[1][0][0][0][11][2] = 58,
+	[1][0][0][0][2][3] = 60,
+	[1][0][0][0][1][3] = 58,
+	[1][0][0][0][3][3] = 68,
+	[1][0][0][0][5][3] = 60,
+	[1][0][0][0][6][3] = 58,
+	[1][0][0][0][9][3] = 58,
+	[1][0][0][0][8][3] = 60,
+	[1][0][0][0][11][3] = 58,
+	[1][0][0][0][2][4] = 60,
+	[1][0][0][0][1][4] = 58,
+	[1][0][0][0][3][4] = 68,
+	[1][0][0][0][5][4] = 60,
+	[1][0][0][0][6][4] = 58,
+	[1][0][0][0][9][4] = 58,
+	[1][0][0][0][8][4] = 60,
+	[1][0][0][0][11][4] = 58,
+	[1][0][0][0][2][5] = 60,
+	[1][0][0][0][1][5] = 58,
+	[1][0][0][0][3][5] = 68,
+	[1][0][0][0][5][5] = 60,
+	[1][0][0][0][6][5] = 58,
+	[1][0][0][0][9][5] = 58,
+	[1][0][0][0][8][5] = 60,
+	[1][0][0][0][11][5] = 58,
+	[1][0][0][0][2][6] = 46,
+	[1][0][0][0][1][6] = 58,
+	[1][0][0][0][3][6] = 68,
+	[1][0][0][0][5][6] = 46,
+	[1][0][0][0][6][6] = 58,
+	[1][0][0][0][9][6] = 58,
+	[1][0][0][0][8][6] = 60,
+	[1][0][0][0][11][6] = 58,
+	[1][0][0][0][2][7] = 46,
+	[1][0][0][0][1][7] = 58,
+	[1][0][0][0][3][7] = 68,
+	[1][0][0][0][5][7] = 46,
+	[1][0][0][0][6][7] = 58,
+	[1][0][0][0][9][7] = 58,
+	[1][0][0][0][8][7] = 60,
+	[1][0][0][0][11][7] = 58,
+	[1][0][0][0][2][8] = 46,
+	[1][0][0][0][1][8] = 58,
+	[1][0][0][0][3][8] = 68,
+	[1][0][0][0][5][8] = 46,
+	[1][0][0][0][6][8] = 58,
+	[1][0][0][0][9][8] = 58,
+	[1][0][0][0][8][8] = 60,
+	[1][0][0][0][11][8] = 58,
+	[1][0][0][0][2][9] = 32,
+	[1][0][0][0][1][9] = 58,
+	[1][0][0][0][3][9] = 68,
+	[1][0][0][0][5][9] = 32,
+	[1][0][0][0][6][9] = 58,
+	[1][0][0][0][9][9] = 58,
+	[1][0][0][0][8][9] = 60,
+	[1][0][0][0][11][9] = 58,
+	[1][0][0][0][2][10] = 32,
+	[1][0][0][0][1][10] = 58,
+	[1][0][0][0][3][10] = 68,
+	[1][0][0][0][5][10] = 32,
+	[1][0][0][0][6][10] = 58,
+	[1][0][0][0][9][10] = 58,
+	[1][0][0][0][8][10] = 60,
+	[1][0][0][0][11][10] = 58,
+	[1][0][0][0][2][11] = 127,
+	[1][0][0][0][1][11] = 127,
+	[1][0][0][0][3][11] = 127,
+	[1][0][0][0][5][11] = 127,
+	[1][0][0][0][6][11] = 127,
+	[1][0][0][0][9][11] = 127,
+	[1][0][0][0][8][11] = 127,
+	[1][0][0][0][11][11] = 127,
+	[1][0][0][0][2][12] = 127,
+	[1][0][0][0][1][12] = 127,
+	[1][0][0][0][3][12] = 127,
+	[1][0][0][0][5][12] = 127,
+	[1][0][0][0][6][12] = 127,
+	[1][0][0][0][9][12] = 127,
+	[1][0][0][0][8][12] = 127,
+	[1][0][0][0][11][12] = 127,
+	[1][0][0][0][2][13] = 127,
+	[1][0][0][0][1][13] = 127,
+	[1][0][0][0][3][13] = 127,
+	[1][0][0][0][5][13] = 127,
+	[1][0][0][0][6][13] = 127,
+	[1][0][0][0][9][13] = 127,
+	[1][0][0][0][8][13] = 127,
+	[1][0][0][0][11][13] = 127,
+	[1][1][0][0][2][0] = 127,
+	[1][1][0][0][1][0] = 127,
+	[1][1][0][0][3][0] = 127,
+	[1][1][0][0][5][0] = 127,
+	[1][1][0][0][6][0] = 127,
+	[1][1][0][0][9][0] = 127,
+	[1][1][0][0][8][0] = 127,
+	[1][1][0][0][11][0] = 127,
+	[1][1][0][0][2][1] = 127,
+	[1][1][0][0][1][1] = 127,
+	[1][1][0][0][3][1] = 127,
+	[1][1][0][0][5][1] = 127,
+	[1][1][0][0][6][1] = 127,
+	[1][1][0][0][9][1] = 127,
+	[1][1][0][0][8][1] = 127,
+	[1][1][0][0][11][1] = 127,
+	[1][1][0][0][2][2] = 48,
+	[1][1][0][0][1][2] = 46,
+	[1][1][0][0][3][2] = 56,
+	[1][1][0][0][5][2] = 48,
+	[1][1][0][0][6][2] = 46,
+	[1][1][0][0][9][2] = 46,
+	[1][1][0][0][8][2] = 48,
+	[1][1][0][0][11][2] = 46,
+	[1][1][0][0][2][3] = 48,
+	[1][1][0][0][1][3] = 46,
+	[1][1][0][0][3][3] = 56,
+	[1][1][0][0][5][3] = 48,
+	[1][1][0][0][6][3] = 46,
+	[1][1][0][0][9][3] = 46,
+	[1][1][0][0][8][3] = 48,
+	[1][1][0][0][11][3] = 46,
+	[1][1][0][0][2][4] = 48,
+	[1][1][0][0][1][4] = 46,
+	[1][1][0][0][3][4] = 56,
+	[1][1][0][0][5][4] = 48,
+	[1][1][0][0][6][4] = 46,
+	[1][1][0][0][9][4] = 46,
+	[1][1][0][0][8][4] = 48,
+	[1][1][0][0][11][4] = 46,
+	[1][1][0][0][2][5] = 58,
+	[1][1][0][0][1][5] = 46,
+	[1][1][0][0][3][5] = 56,
+	[1][1][0][0][5][5] = 58,
+	[1][1][0][0][6][5] = 46,
+	[1][1][0][0][9][5] = 46,
+	[1][1][0][0][8][5] = 48,
+	[1][1][0][0][11][5] = 46,
+	[1][1][0][0][2][6] = 46,
+	[1][1][0][0][1][6] = 46,
+	[1][1][0][0][3][6] = 56,
+	[1][1][0][0][5][6] = 46,
+	[1][1][0][0][6][6] = 46,
+	[1][1][0][0][9][6] = 46,
+	[1][1][0][0][8][6] = 48,
+	[1][1][0][0][11][6] = 46,
+	[1][1][0][0][2][7] = 46,
+	[1][1][0][0][1][7] = 46,
+	[1][1][0][0][3][7] = 56,
+	[1][1][0][0][5][7] = 46,
+	[1][1][0][0][6][7] = 46,
+	[1][1][0][0][9][7] = 46,
+	[1][1][0][0][8][7] = 48,
+	[1][1][0][0][11][7] = 46,
+	[1][1][0][0][2][8] = 46,
+	[1][1][0][0][1][8] = 46,
+	[1][1][0][0][3][8] = 56,
+	[1][1][0][0][5][8] = 46,
+	[1][1][0][0][6][8] = 46,
+	[1][1][0][0][9][8] = 46,
+	[1][1][0][0][8][8] = 48,
+	[1][1][0][0][11][8] = 46,
+	[1][1][0][0][2][9] = 24,
+	[1][1][0][0][1][9] = 46,
+	[1][1][0][0][3][9] = 56,
+	[1][1][0][0][5][9] = 24,
+	[1][1][0][0][6][9] = 46,
+	[1][1][0][0][9][9] = 46,
+	[1][1][0][0][8][9] = 48,
+	[1][1][0][0][11][9] = 46,
+	[1][1][0][0][2][10] = 24,
+	[1][1][0][0][1][10] = 46,
+	[1][1][0][0][3][10] = 56,
+	[1][1][0][0][5][10] = 24,
+	[1][1][0][0][6][10] = 46,
+	[1][1][0][0][9][10] = 46,
+	[1][1][0][0][8][10] = 48,
+	[1][1][0][0][11][10] = 46,
+	[1][1][0][0][2][11] = 127,
+	[1][1][0][0][1][11] = 127,
+	[1][1][0][0][3][11] = 127,
+	[1][1][0][0][5][11] = 127,
+	[1][1][0][0][6][11] = 127,
+	[1][1][0][0][9][11] = 127,
+	[1][1][0][0][8][11] = 127,
+	[1][1][0][0][11][11] = 127,
+	[1][1][0][0][2][12] = 127,
+	[1][1][0][0][1][12] = 127,
+	[1][1][0][0][3][12] = 127,
+	[1][1][0][0][5][12] = 127,
+	[1][1][0][0][6][12] = 127,
+	[1][1][0][0][9][12] = 127,
+	[1][1][0][0][8][12] = 127,
+	[1][1][0][0][11][12] = 127,
+	[1][1][0][0][2][13] = 127,
+	[1][1][0][0][1][13] = 127,
+	[1][1][0][0][3][13] = 127,
+	[1][1][0][0][5][13] = 127,
+	[1][1][0][0][6][13] = 127,
+	[1][1][0][0][9][13] = 127,
+	[1][1][0][0][8][13] = 127,
+	[1][1][0][0][11][13] = 127,
+	[0][0][1][0][2][0] = 66,
+	[0][0][1][0][1][0] = 58,
+	[0][0][1][0][3][0] = 76,
+	[0][0][1][0][5][0] = 66,
+	[0][0][1][0][6][0] = 58,
+	[0][0][1][0][9][0] = 58,
+	[0][0][1][0][8][0] = 60,
+	[0][0][1][0][11][0] = 58,
+	[0][0][1][0][2][1] = 66,
+	[0][0][1][0][1][1] = 58,
+	[0][0][1][0][3][1] = 76,
+	[0][0][1][0][5][1] = 66,
+	[0][0][1][0][6][1] = 58,
+	[0][0][1][0][9][1] = 58,
+	[0][0][1][0][8][1] = 60,
+	[0][0][1][0][11][1] = 58,
+	[0][0][1][0][2][2] = 70,
+	[0][0][1][0][1][2] = 58,
+	[0][0][1][0][3][2] = 76,
+	[0][0][1][0][5][2] = 70,
+	[0][0][1][0][6][2] = 58,
+	[0][0][1][0][9][2] = 58,
+	[0][0][1][0][8][2] = 60,
+	[0][0][1][0][11][2] = 58,
+	[0][0][1][0][2][3] = 74,
+	[0][0][1][0][1][3] = 58,
+	[0][0][1][0][3][3] = 76,
+	[0][0][1][0][5][3] = 74,
+	[0][0][1][0][6][3] = 58,
+	[0][0][1][0][9][3] = 58,
+	[0][0][1][0][8][3] = 60,
+	[0][0][1][0][11][3] = 58,
+	[0][0][1][0][2][4] = 78,
+	[0][0][1][0][1][4] = 58,
+	[0][0][1][0][3][4] = 76,
+	[0][0][1][0][5][4] = 78,
+	[0][0][1][0][6][4] = 58,
+	[0][0][1][0][9][4] = 58,
+	[0][0][1][0][8][4] = 60,
+	[0][0][1][0][11][4] = 58,
+	[0][0][1][0][2][5] = 78,
+	[0][0][1][0][1][5] = 58,
+	[0][0][1][0][3][5] = 76,
+	[0][0][1][0][5][5] = 78,
+	[0][0][1][0][6][5] = 58,
+	[0][0][1][0][9][5] = 58,
+	[0][0][1][0][8][5] = 60,
+	[0][0][1][0][11][5] = 58,
+	[0][0][1][0][2][6] = 78,
+	[0][0][1][0][1][6] = 58,
+	[0][0][1][0][3][6] = 76,
+	[0][0][1][0][5][6] = 78,
+	[0][0][1][0][6][6] = 58,
+	[0][0][1][0][9][6] = 58,
+	[0][0][1][0][8][6] = 60,
+	[0][0][1][0][11][6] = 58,
+	[0][0][1][0][2][7] = 74,
+	[0][0][1][0][1][7] = 58,
+	[0][0][1][0][3][7] = 76,
+	[0][0][1][0][5][7] = 74,
+	[0][0][1][0][6][7] = 58,
+	[0][0][1][0][9][7] = 58,
+	[0][0][1][0][8][7] = 60,
+	[0][0][1][0][11][7] = 58,
+	[0][0][1][0][2][8] = 70,
+	[0][0][1][0][1][8] = 58,
+	[0][0][1][0][3][8] = 76,
+	[0][0][1][0][5][8] = 70,
+	[0][0][1][0][6][8] = 58,
+	[0][0][1][0][9][8] = 58,
+	[0][0][1][0][8][8] = 60,
+	[0][0][1][0][11][8] = 58,
+	[0][0][1][0][2][9] = 66,
+	[0][0][1][0][1][9] = 58,
+	[0][0][1][0][3][9] = 76,
+	[0][0][1][0][5][9] = 66,
+	[0][0][1][0][6][9] = 58,
+	[0][0][1][0][9][9] = 58,
+	[0][0][1][0][8][9] = 60,
+	[0][0][1][0][11][9] = 58,
+	[0][0][1][0][2][10] = 66,
+	[0][0][1][0][1][10] = 58,
+	[0][0][1][0][3][10] = 76,
+	[0][0][1][0][5][10] = 66,
+	[0][0][1][0][6][10] = 58,
+	[0][0][1][0][9][10] = 58,
+	[0][0][1][0][8][10] = 60,
+	[0][0][1][0][11][10] = 58,
+	[0][0][1][0][2][11] = 56,
+	[0][0][1][0][1][11] = 58,
+	[0][0][1][0][3][11] = 76,
+	[0][0][1][0][5][11] = 56,
+	[0][0][1][0][6][11] = 58,
+	[0][0][1][0][9][11] = 58,
+	[0][0][1][0][8][11] = 60,
+	[0][0][1][0][11][11] = 58,
+	[0][0][1][0][2][12] = 52,
+	[0][0][1][0][1][12] = 58,
+	[0][0][1][0][3][12] = 76,
+	[0][0][1][0][5][12] = 52,
+	[0][0][1][0][6][12] = 58,
+	[0][0][1][0][9][12] = 58,
+	[0][0][1][0][8][12] = 60,
+	[0][0][1][0][11][12] = 58,
+	[0][0][1][0][2][13] = 127,
+	[0][0][1][0][1][13] = 127,
+	[0][0][1][0][3][13] = 127,
+	[0][0][1][0][5][13] = 127,
+	[0][0][1][0][6][13] = 127,
+	[0][0][1][0][9][13] = 127,
+	[0][0][1][0][8][13] = 127,
+	[0][0][1][0][11][13] = 127,
+	[0][1][1][0][2][0] = 62,
+	[0][1][1][0][1][0] = 46,
+	[0][1][1][0][3][0] = 64,
+	[0][1][1][0][5][0] = 62,
+	[0][1][1][0][6][0] = 46,
+	[0][1][1][0][9][0] = 46,
+	[0][1][1][0][8][0] = 48,
+	[0][1][1][0][11][0] = 46,
+	[0][1][1][0][2][1] = 62,
+	[0][1][1][0][1][1] = 46,
+	[0][1][1][0][3][1] = 64,
+	[0][1][1][0][5][1] = 62,
+	[0][1][1][0][6][1] = 46,
+	[0][1][1][0][9][1] = 46,
+	[0][1][1][0][8][1] = 48,
+	[0][1][1][0][11][1] = 46,
+	[0][1][1][0][2][2] = 66,
+	[0][1][1][0][1][2] = 46,
+	[0][1][1][0][3][2] = 64,
+	[0][1][1][0][5][2] = 66,
+	[0][1][1][0][6][2] = 46,
+	[0][1][1][0][9][2] = 46,
+	[0][1][1][0][8][2] = 48,
+	[0][1][1][0][11][2] = 46,
+	[0][1][1][0][2][3] = 70,
+	[0][1][1][0][1][3] = 46,
+	[0][1][1][0][3][3] = 64,
+	[0][1][1][0][5][3] = 70,
+	[0][1][1][0][6][3] = 46,
+	[0][1][1][0][9][3] = 46,
+	[0][1][1][0][8][3] = 48,
+	[0][1][1][0][11][3] = 46,
+	[0][1][1][0][2][4] = 78,
+	[0][1][1][0][1][4] = 46,
+	[0][1][1][0][3][4] = 64,
+	[0][1][1][0][5][4] = 78,
+	[0][1][1][0][6][4] = 46,
+	[0][1][1][0][9][4] = 46,
+	[0][1][1][0][8][4] = 48,
+	[0][1][1][0][11][4] = 46,
+	[0][1][1][0][2][5] = 78,
+	[0][1][1][0][1][5] = 46,
+	[0][1][1][0][3][5] = 64,
+	[0][1][1][0][5][5] = 78,
+	[0][1][1][0][6][5] = 46,
+	[0][1][1][0][9][5] = 46,
+	[0][1][1][0][8][5] = 48,
+	[0][1][1][0][11][5] = 46,
+	[0][1][1][0][2][6] = 78,
+	[0][1][1][0][1][6] = 46,
+	[0][1][1][0][3][6] = 64,
+	[0][1][1][0][5][6] = 78,
+	[0][1][1][0][6][6] = 46,
+	[0][1][1][0][9][6] = 46,
+	[0][1][1][0][8][6] = 48,
+	[0][1][1][0][11][6] = 46,
+	[0][1][1][0][2][7] = 70,
+	[0][1][1][0][1][7] = 46,
+	[0][1][1][0][3][7] = 64,
+	[0][1][1][0][5][7] = 70,
+	[0][1][1][0][6][7] = 46,
+	[0][1][1][0][9][7] = 46,
+	[0][1][1][0][8][7] = 48,
+	[0][1][1][0][11][7] = 46,
+	[0][1][1][0][2][8] = 66,
+	[0][1][1][0][1][8] = 46,
+	[0][1][1][0][3][8] = 64,
+	[0][1][1][0][5][8] = 66,
+	[0][1][1][0][6][8] = 46,
+	[0][1][1][0][9][8] = 46,
+	[0][1][1][0][8][8] = 48,
+	[0][1][1][0][11][8] = 46,
+	[0][1][1][0][2][9] = 62,
+	[0][1][1][0][1][9] = 46,
+	[0][1][1][0][3][9] = 64,
+	[0][1][1][0][5][9] = 62,
+	[0][1][1][0][6][9] = 46,
+	[0][1][1][0][9][9] = 46,
+	[0][1][1][0][8][9] = 48,
+	[0][1][1][0][11][9] = 46,
+	[0][1][1][0][2][10] = 62,
+	[0][1][1][0][1][10] = 46,
+	[0][1][1][0][3][10] = 64,
+	[0][1][1][0][5][10] = 62,
+	[0][1][1][0][6][10] = 46,
+	[0][1][1][0][9][10] = 46,
+	[0][1][1][0][8][10] = 48,
+	[0][1][1][0][11][10] = 46,
+	[0][1][1][0][2][11] = 42,
+	[0][1][1][0][1][11] = 46,
+	[0][1][1][0][3][11] = 64,
+	[0][1][1][0][5][11] = 42,
+	[0][1][1][0][6][11] = 46,
+	[0][1][1][0][9][11] = 46,
+	[0][1][1][0][8][11] = 48,
+	[0][1][1][0][11][11] = 46,
+	[0][1][1][0][2][12] = 40,
+	[0][1][1][0][1][12] = 46,
+	[0][1][1][0][3][12] = 64,
+	[0][1][1][0][5][12] = 40,
+	[0][1][1][0][6][12] = 46,
+	[0][1][1][0][9][12] = 46,
+	[0][1][1][0][8][12] = 48,
+	[0][1][1][0][11][12] = 46,
+	[0][1][1][0][2][13] = 127,
+	[0][1][1][0][1][13] = 127,
+	[0][1][1][0][3][13] = 127,
+	[0][1][1][0][5][13] = 127,
+	[0][1][1][0][6][13] = 127,
+	[0][1][1][0][9][13] = 127,
+	[0][1][1][0][8][13] = 127,
+	[0][1][1][0][11][13] = 127,
+	[0][0][2][0][2][0] = 66,
+	[0][0][2][0][1][0] = 58,
+	[0][0][2][0][3][0] = 76,
+	[0][0][2][0][5][0] = 66,
+	[0][0][2][0][6][0] = 58,
+	[0][0][2][0][9][0] = 58,
+	[0][0][2][0][8][0] = 60,
+	[0][0][2][0][11][0] = 58,
+	[0][0][2][0][2][1] = 66,
+	[0][0][2][0][1][1] = 58,
+	[0][0][2][0][3][1] = 76,
+	[0][0][2][0][5][1] = 66,
+	[0][0][2][0][6][1] = 58,
+	[0][0][2][0][9][1] = 58,
+	[0][0][2][0][8][1] = 60,
+	[0][0][2][0][11][1] = 58,
+	[0][0][2][0][2][2] = 70,
+	[0][0][2][0][1][2] = 58,
+	[0][0][2][0][3][2] = 76,
+	[0][0][2][0][5][2] = 70,
+	[0][0][2][0][6][2] = 58,
+	[0][0][2][0][9][2] = 58,
+	[0][0][2][0][8][2] = 60,
+	[0][0][2][0][11][2] = 58,
+	[0][0][2][0][2][3] = 74,
+	[0][0][2][0][1][3] = 58,
+	[0][0][2][0][3][3] = 76,
+	[0][0][2][0][5][3] = 74,
+	[0][0][2][0][6][3] = 58,
+	[0][0][2][0][9][3] = 58,
+	[0][0][2][0][8][3] = 60,
+	[0][0][2][0][11][3] = 58,
+	[0][0][2][0][2][4] = 76,
+	[0][0][2][0][1][4] = 58,
+	[0][0][2][0][3][4] = 76,
+	[0][0][2][0][5][4] = 76,
+	[0][0][2][0][6][4] = 58,
+	[0][0][2][0][9][4] = 58,
+	[0][0][2][0][8][4] = 60,
+	[0][0][2][0][11][4] = 58,
+	[0][0][2][0][2][5] = 76,
+	[0][0][2][0][1][5] = 58,
+	[0][0][2][0][3][5] = 76,
+	[0][0][2][0][5][5] = 76,
+	[0][0][2][0][6][5] = 58,
+	[0][0][2][0][9][5] = 58,
+	[0][0][2][0][8][5] = 60,
+	[0][0][2][0][11][5] = 58,
+	[0][0][2][0][2][6] = 76,
+	[0][0][2][0][1][6] = 58,
+	[0][0][2][0][3][6] = 76,
+	[0][0][2][0][5][6] = 76,
+	[0][0][2][0][6][6] = 58,
+	[0][0][2][0][9][6] = 58,
+	[0][0][2][0][8][6] = 60,
+	[0][0][2][0][11][6] = 58,
+	[0][0][2][0][2][7] = 74,
+	[0][0][2][0][1][7] = 58,
+	[0][0][2][0][3][7] = 76,
+	[0][0][2][0][5][7] = 74,
+	[0][0][2][0][6][7] = 58,
+	[0][0][2][0][9][7] = 58,
+	[0][0][2][0][8][7] = 60,
+	[0][0][2][0][11][7] = 58,
+	[0][0][2][0][2][8] = 70,
+	[0][0][2][0][1][8] = 58,
+	[0][0][2][0][3][8] = 76,
+	[0][0][2][0][5][8] = 70,
+	[0][0][2][0][6][8] = 58,
+	[0][0][2][0][9][8] = 58,
+	[0][0][2][0][8][8] = 60,
+	[0][0][2][0][11][8] = 58,
+	[0][0][2][0][2][9] = 66,
+	[0][0][2][0][1][9] = 58,
+	[0][0][2][0][3][9] = 76,
+	[0][0][2][0][5][9] = 66,
+	[0][0][2][0][6][9] = 58,
+	[0][0][2][0][9][9] = 58,
+	[0][0][2][0][8][9] = 60,
+	[0][0][2][0][11][9] = 58,
+	[0][0][2][0][2][10] = 66,
+	[0][0][2][0][1][10] = 58,
+	[0][0][2][0][3][10] = 76,
+	[0][0][2][0][5][10] = 66,
+	[0][0][2][0][6][10] = 58,
+	[0][0][2][0][9][10] = 58,
+	[0][0][2][0][8][10] = 60,
+	[0][0][2][0][11][10] = 58,
+	[0][0][2][0][2][11] = 54,
+	[0][0][2][0][1][11] = 58,
+	[0][0][2][0][3][11] = 76,
+	[0][0][2][0][5][11] = 54,
+	[0][0][2][0][6][11] = 58,
+	[0][0][2][0][9][11] = 58,
+	[0][0][2][0][8][11] = 60,
+	[0][0][2][0][11][11] = 58,
+	[0][0][2][0][2][12] = 50,
+	[0][0][2][0][1][12] = 58,
+	[0][0][2][0][3][12] = 76,
+	[0][0][2][0][5][12] = 50,
+	[0][0][2][0][6][12] = 58,
+	[0][0][2][0][9][12] = 58,
+	[0][0][2][0][8][12] = 60,
+	[0][0][2][0][11][12] = 58,
+	[0][0][2][0][2][13] = 127,
+	[0][0][2][0][1][13] = 127,
+	[0][0][2][0][3][13] = 127,
+	[0][0][2][0][5][13] = 127,
+	[0][0][2][0][6][13] = 127,
+	[0][0][2][0][9][13] = 127,
+	[0][0][2][0][8][13] = 127,
+	[0][0][2][0][11][13] = 127,
+	[0][1][2][0][2][0] = 62,
+	[0][1][2][0][1][0] = 46,
+	[0][1][2][0][3][0] = 64,
+	[0][1][2][0][5][0] = 62,
+	[0][1][2][0][6][0] = 46,
+	[0][1][2][0][9][0] = 46,
+	[0][1][2][0][8][0] = 48,
+	[0][1][2][0][11][0] = 46,
+	[0][1][2][0][2][1] = 62,
+	[0][1][2][0][1][1] = 46,
+	[0][1][2][0][3][1] = 64,
+	[0][1][2][0][5][1] = 62,
+	[0][1][2][0][6][1] = 46,
+	[0][1][2][0][9][1] = 46,
+	[0][1][2][0][8][1] = 48,
+	[0][1][2][0][11][1] = 46,
+	[0][1][2][0][2][2] = 66,
+	[0][1][2][0][1][2] = 46,
+	[0][1][2][0][3][2] = 64,
+	[0][1][2][0][5][2] = 66,
+	[0][1][2][0][6][2] = 46,
+	[0][1][2][0][9][2] = 46,
+	[0][1][2][0][8][2] = 48,
+	[0][1][2][0][11][2] = 46,
+	[0][1][2][0][2][3] = 70,
+	[0][1][2][0][1][3] = 46,
+	[0][1][2][0][3][3] = 64,
+	[0][1][2][0][5][3] = 70,
+	[0][1][2][0][6][3] = 46,
+	[0][1][2][0][9][3] = 46,
+	[0][1][2][0][8][3] = 48,
+	[0][1][2][0][11][3] = 46,
+	[0][1][2][0][2][4] = 76,
+	[0][1][2][0][1][4] = 46,
+	[0][1][2][0][3][4] = 64,
+	[0][1][2][0][5][4] = 76,
+	[0][1][2][0][6][4] = 46,
+	[0][1][2][0][9][4] = 46,
+	[0][1][2][0][8][4] = 48,
+	[0][1][2][0][11][4] = 46,
+	[0][1][2][0][2][5] = 76,
+	[0][1][2][0][1][5] = 46,
+	[0][1][2][0][3][5] = 64,
+	[0][1][2][0][5][5] = 76,
+	[0][1][2][0][6][5] = 46,
+	[0][1][2][0][9][5] = 46,
+	[0][1][2][0][8][5] = 48,
+	[0][1][2][0][11][5] = 46,
+	[0][1][2][0][2][6] = 76,
+	[0][1][2][0][1][6] = 46,
+	[0][1][2][0][3][6] = 64,
+	[0][1][2][0][5][6] = 76,
+	[0][1][2][0][6][6] = 46,
+	[0][1][2][0][9][6] = 46,
+	[0][1][2][0][8][6] = 48,
+	[0][1][2][0][11][6] = 46,
+	[0][1][2][0][2][7] = 68,
+	[0][1][2][0][1][7] = 46,
+	[0][1][2][0][3][7] = 64,
+	[0][1][2][0][5][7] = 68,
+	[0][1][2][0][6][7] = 46,
+	[0][1][2][0][9][7] = 46,
+	[0][1][2][0][8][7] = 48,
+	[0][1][2][0][11][7] = 46,
+	[0][1][2][0][2][8] = 64,
+	[0][1][2][0][1][8] = 46,
+	[0][1][2][0][3][8] = 64,
+	[0][1][2][0][5][8] = 64,
+	[0][1][2][0][6][8] = 46,
+	[0][1][2][0][9][8] = 46,
+	[0][1][2][0][8][8] = 48,
+	[0][1][2][0][11][8] = 46,
+	[0][1][2][0][2][9] = 60,
+	[0][1][2][0][1][9] = 46,
+	[0][1][2][0][3][9] = 64,
+	[0][1][2][0][5][9] = 60,
+	[0][1][2][0][6][9] = 46,
+	[0][1][2][0][9][9] = 46,
+	[0][1][2][0][8][9] = 48,
+	[0][1][2][0][11][9] = 46,
+	[0][1][2][0][2][10] = 60,
+	[0][1][2][0][1][10] = 46,
+	[0][1][2][0][3][10] = 64,
+	[0][1][2][0][5][10] = 60,
+	[0][1][2][0][6][10] = 46,
+	[0][1][2][0][9][10] = 46,
+	[0][1][2][0][8][10] = 48,
+	[0][1][2][0][11][10] = 46,
+	[0][1][2][0][2][11] = 42,
+	[0][1][2][0][1][11] = 46,
+	[0][1][2][0][3][11] = 64,
+	[0][1][2][0][5][11] = 42,
+	[0][1][2][0][6][11] = 46,
+	[0][1][2][0][9][11] = 46,
+	[0][1][2][0][8][11] = 48,
+	[0][1][2][0][11][11] = 46,
+	[0][1][2][0][2][12] = 40,
+	[0][1][2][0][1][12] = 46,
+	[0][1][2][0][3][12] = 64,
+	[0][1][2][0][5][12] = 40,
+	[0][1][2][0][6][12] = 46,
+	[0][1][2][0][9][12] = 46,
+	[0][1][2][0][8][12] = 48,
+	[0][1][2][0][11][12] = 46,
+	[0][1][2][0][2][13] = 127,
+	[0][1][2][0][1][13] = 127,
+	[0][1][2][0][3][13] = 127,
+	[0][1][2][0][5][13] = 127,
+	[0][1][2][0][6][13] = 127,
+	[0][1][2][0][9][13] = 127,
+	[0][1][2][0][8][13] = 127,
+	[0][1][2][0][11][13] = 127,
+	[0][1][2][1][2][0] = 62,
+	[0][1][2][1][1][0] = 34,
+	[0][1][2][1][3][0] = 64,
+	[0][1][2][1][5][0] = 62,
+	[0][1][2][1][6][0] = 34,
+	[0][1][2][1][9][0] = 34,
+	[0][1][2][1][8][0] = 36,
+	[0][1][2][1][11][0] = 34,
+	[0][1][2][1][2][1] = 62,
+	[0][1][2][1][1][1] = 34,
+	[0][1][2][1][3][1] = 64,
+	[0][1][2][1][5][1] = 62,
+	[0][1][2][1][6][1] = 34,
+	[0][1][2][1][9][1] = 34,
+	[0][1][2][1][8][1] = 36,
+	[0][1][2][1][11][1] = 34,
+	[0][1][2][1][2][2] = 66,
+	[0][1][2][1][1][2] = 34,
+	[0][1][2][1][3][2] = 64,
+	[0][1][2][1][5][2] = 66,
+	[0][1][2][1][6][2] = 34,
+	[0][1][2][1][9][2] = 34,
+	[0][1][2][1][8][2] = 36,
+	[0][1][2][1][11][2] = 34,
+	[0][1][2][1][2][3] = 70,
+	[0][1][2][1][1][3] = 34,
+	[0][1][2][1][3][3] = 64,
+	[0][1][2][1][5][3] = 70,
+	[0][1][2][1][6][3] = 34,
+	[0][1][2][1][9][3] = 34,
+	[0][1][2][1][8][3] = 36,
+	[0][1][2][1][11][3] = 34,
+	[0][1][2][1][2][4] = 76,
+	[0][1][2][1][1][4] = 34,
+	[0][1][2][1][3][4] = 64,
+	[0][1][2][1][5][4] = 76,
+	[0][1][2][1][6][4] = 34,
+	[0][1][2][1][9][4] = 34,
+	[0][1][2][1][8][4] = 36,
+	[0][1][2][1][11][4] = 34,
+	[0][1][2][1][2][5] = 76,
+	[0][1][2][1][1][5] = 34,
+	[0][1][2][1][3][5] = 64,
+	[0][1][2][1][5][5] = 76,
+	[0][1][2][1][6][5] = 34,
+	[0][1][2][1][9][5] = 34,
+	[0][1][2][1][8][5] = 36,
+	[0][1][2][1][11][5] = 34,
+	[0][1][2][1][2][6] = 76,
+	[0][1][2][1][1][6] = 34,
+	[0][1][2][1][3][6] = 64,
+	[0][1][2][1][5][6] = 76,
+	[0][1][2][1][6][6] = 34,
+	[0][1][2][1][9][6] = 34,
+	[0][1][2][1][8][6] = 36,
+	[0][1][2][1][11][6] = 34,
+	[0][1][2][1][2][7] = 68,
+	[0][1][2][1][1][7] = 34,
+	[0][1][2][1][3][7] = 64,
+	[0][1][2][1][5][7] = 68,
+	[0][1][2][1][6][7] = 34,
+	[0][1][2][1][9][7] = 34,
+	[0][1][2][1][8][7] = 36,
+	[0][1][2][1][11][7] = 34,
+	[0][1][2][1][2][8] = 64,
+	[0][1][2][1][1][8] = 34,
+	[0][1][2][1][3][8] = 64,
+	[0][1][2][1][5][8] = 64,
+	[0][1][2][1][6][8] = 34,
+	[0][1][2][1][9][8] = 34,
+	[0][1][2][1][8][8] = 36,
+	[0][1][2][1][11][8] = 34,
+	[0][1][2][1][2][9] = 60,
+	[0][1][2][1][1][9] = 34,
+	[0][1][2][1][3][9] = 64,
+	[0][1][2][1][5][9] = 60,
+	[0][1][2][1][6][9] = 34,
+	[0][1][2][1][9][9] = 34,
+	[0][1][2][1][8][9] = 36,
+	[0][1][2][1][11][9] = 34,
+	[0][1][2][1][2][10] = 60,
+	[0][1][2][1][1][10] = 34,
+	[0][1][2][1][3][10] = 64,
+	[0][1][2][1][5][10] = 60,
+	[0][1][2][1][6][10] = 34,
+	[0][1][2][1][9][10] = 34,
+	[0][1][2][1][8][10] = 36,
+	[0][1][2][1][11][10] = 34,
+	[0][1][2][1][2][11] = 42,
+	[0][1][2][1][1][11] = 34,
+	[0][1][2][1][3][11] = 64,
+	[0][1][2][1][5][11] = 42,
+	[0][1][2][1][6][11] = 34,
+	[0][1][2][1][9][11] = 34,
+	[0][1][2][1][8][11] = 36,
+	[0][1][2][1][11][11] = 34,
+	[0][1][2][1][2][12] = 40,
+	[0][1][2][1][1][12] = 34,
+	[0][1][2][1][3][12] = 64,
+	[0][1][2][1][5][12] = 40,
+	[0][1][2][1][6][12] = 34,
+	[0][1][2][1][9][12] = 34,
+	[0][1][2][1][8][12] = 36,
+	[0][1][2][1][11][12] = 34,
+	[0][1][2][1][2][13] = 127,
+	[0][1][2][1][1][13] = 127,
+	[0][1][2][1][3][13] = 127,
+	[0][1][2][1][5][13] = 127,
+	[0][1][2][1][6][13] = 127,
+	[0][1][2][1][9][13] = 127,
+	[0][1][2][1][8][13] = 127,
+	[0][1][2][1][11][13] = 127,
+	[1][0][2][0][2][0] = 127,
+	[1][0][2][0][1][0] = 127,
+	[1][0][2][0][3][0] = 127,
+	[1][0][2][0][5][0] = 127,
+	[1][0][2][0][6][0] = 127,
+	[1][0][2][0][9][0] = 127,
+	[1][0][2][0][8][0] = 127,
+	[1][0][2][0][11][0] = 127,
+	[1][0][2][0][2][1] = 127,
+	[1][0][2][0][1][1] = 127,
+	[1][0][2][0][3][1] = 127,
+	[1][0][2][0][5][1] = 127,
+	[1][0][2][0][6][1] = 127,
+	[1][0][2][0][9][1] = 127,
+	[1][0][2][0][8][1] = 127,
+	[1][0][2][0][11][1] = 127,
+	[1][0][2][0][2][2] = 56,
+	[1][0][2][0][1][2] = 58,
+	[1][0][2][0][3][2] = 76,
+	[1][0][2][0][5][2] = 56,
+	[1][0][2][0][6][2] = 58,
+	[1][0][2][0][9][2] = 58,
+	[1][0][2][0][8][2] = 60,
+	[1][0][2][0][11][2] = 58,
+	[1][0][2][0][2][3] = 56,
+	[1][0][2][0][1][3] = 58,
+	[1][0][2][0][3][3] = 76,
+	[1][0][2][0][5][3] = 56,
+	[1][0][2][0][6][3] = 58,
+	[1][0][2][0][9][3] = 58,
+	[1][0][2][0][8][3] = 60,
+	[1][0][2][0][11][3] = 58,
+	[1][0][2][0][2][4] = 60,
+	[1][0][2][0][1][4] = 58,
+	[1][0][2][0][3][4] = 76,
+	[1][0][2][0][5][4] = 60,
+	[1][0][2][0][6][4] = 58,
+	[1][0][2][0][9][4] = 58,
+	[1][0][2][0][8][4] = 60,
+	[1][0][2][0][11][4] = 58,
+	[1][0][2][0][2][5] = 64,
+	[1][0][2][0][1][5] = 58,
+	[1][0][2][0][3][5] = 76,
+	[1][0][2][0][5][5] = 64,
+	[1][0][2][0][6][5] = 58,
+	[1][0][2][0][9][5] = 58,
+	[1][0][2][0][8][5] = 60,
+	[1][0][2][0][11][5] = 58,
+	[1][0][2][0][2][6] = 54,
+	[1][0][2][0][1][6] = 58,
+	[1][0][2][0][3][6] = 76,
+	[1][0][2][0][5][6] = 54,
+	[1][0][2][0][6][6] = 58,
+	[1][0][2][0][9][6] = 58,
+	[1][0][2][0][8][6] = 60,
+	[1][0][2][0][11][6] = 58,
+	[1][0][2][0][2][7] = 50,
+	[1][0][2][0][1][7] = 58,
+	[1][0][2][0][3][7] = 76,
+	[1][0][2][0][5][7] = 50,
+	[1][0][2][0][6][7] = 58,
+	[1][0][2][0][9][7] = 58,
+	[1][0][2][0][8][7] = 60,
+	[1][0][2][0][11][7] = 58,
+	[1][0][2][0][2][8] = 50,
+	[1][0][2][0][1][8] = 58,
+	[1][0][2][0][3][8] = 76,
+	[1][0][2][0][5][8] = 50,
+	[1][0][2][0][6][8] = 58,
+	[1][0][2][0][9][8] = 58,
+	[1][0][2][0][8][8] = 60,
+	[1][0][2][0][11][8] = 58,
+	[1][0][2][0][2][9] = 42,
+	[1][0][2][0][1][9] = 58,
+	[1][0][2][0][3][9] = 76,
+	[1][0][2][0][5][9] = 42,
+	[1][0][2][0][6][9] = 58,
+	[1][0][2][0][9][9] = 58,
+	[1][0][2][0][8][9] = 60,
+	[1][0][2][0][11][9] = 58,
+	[1][0][2][0][2][10] = 40,
+	[1][0][2][0][1][10] = 58,
+	[1][0][2][0][3][10] = 76,
+	[1][0][2][0][5][10] = 40,
+	[1][0][2][0][6][10] = 58,
+	[1][0][2][0][9][10] = 58,
+	[1][0][2][0][8][10] = 60,
+	[1][0][2][0][11][10] = 58,
+	[1][0][2][0][2][11] = 127,
+	[1][0][2][0][1][11] = 127,
+	[1][0][2][0][3][11] = 127,
+	[1][0][2][0][5][11] = 127,
+	[1][0][2][0][6][11] = 127,
+	[1][0][2][0][9][11] = 127,
+	[1][0][2][0][8][11] = 127,
+	[1][0][2][0][11][11] = 127,
+	[1][0][2][0][2][12] = 127,
+	[1][0][2][0][1][12] = 127,
+	[1][0][2][0][3][12] = 127,
+	[1][0][2][0][5][12] = 127,
+	[1][0][2][0][6][12] = 127,
+	[1][0][2][0][9][12] = 127,
+	[1][0][2][0][8][12] = 127,
+	[1][0][2][0][11][12] = 127,
+	[1][0][2][0][2][13] = 127,
+	[1][0][2][0][1][13] = 127,
+	[1][0][2][0][3][13] = 127,
+	[1][0][2][0][5][13] = 127,
+	[1][0][2][0][6][13] = 127,
+	[1][0][2][0][9][13] = 127,
+	[1][0][2][0][8][13] = 127,
+	[1][0][2][0][11][13] = 127,
+	[1][1][2][0][2][0] = 127,
+	[1][1][2][0][1][0] = 127,
+	[1][1][2][0][3][0] = 127,
+	[1][1][2][0][5][0] = 127,
+	[1][1][2][0][6][0] = 127,
+	[1][1][2][0][9][0] = 127,
+	[1][1][2][0][8][0] = 127,
+	[1][1][2][0][11][0] = 127,
+	[1][1][2][0][2][1] = 127,
+	[1][1][2][0][1][1] = 127,
+	[1][1][2][0][3][1] = 127,
+	[1][1][2][0][5][1] = 127,
+	[1][1][2][0][6][1] = 127,
+	[1][1][2][0][9][1] = 127,
+	[1][1][2][0][8][1] = 127,
+	[1][1][2][0][11][1] = 127,
+	[1][1][2][0][2][2] = 52,
+	[1][1][2][0][1][2] = 46,
+	[1][1][2][0][3][2] = 64,
+	[1][1][2][0][5][2] = 52,
+	[1][1][2][0][6][2] = 46,
+	[1][1][2][0][9][2] = 46,
+	[1][1][2][0][8][2] = 48,
+	[1][1][2][0][11][2] = 46,
+	[1][1][2][0][2][3] = 52,
+	[1][1][2][0][1][3] = 46,
+	[1][1][2][0][3][3] = 64,
+	[1][1][2][0][5][3] = 52,
+	[1][1][2][0][6][3] = 46,
+	[1][1][2][0][9][3] = 46,
+	[1][1][2][0][8][3] = 48,
+	[1][1][2][0][11][3] = 46,
+	[1][1][2][0][2][4] = 56,
+	[1][1][2][0][1][4] = 46,
+	[1][1][2][0][3][4] = 64,
+	[1][1][2][0][5][4] = 56,
+	[1][1][2][0][6][4] = 46,
+	[1][1][2][0][9][4] = 46,
+	[1][1][2][0][8][4] = 48,
+	[1][1][2][0][11][4] = 46,
+	[1][1][2][0][2][5] = 60,
+	[1][1][2][0][1][5] = 46,
+	[1][1][2][0][3][5] = 64,
+	[1][1][2][0][5][5] = 60,
+	[1][1][2][0][6][5] = 46,
+	[1][1][2][0][9][5] = 46,
+	[1][1][2][0][8][5] = 48,
+	[1][1][2][0][11][5] = 46,
+	[1][1][2][0][2][6] = 54,
+	[1][1][2][0][1][6] = 46,
+	[1][1][2][0][3][6] = 64,
+	[1][1][2][0][5][6] = 52,
+	[1][1][2][0][6][6] = 46,
+	[1][1][2][0][9][6] = 46,
+	[1][1][2][0][8][6] = 48,
+	[1][1][2][0][11][6] = 46,
+	[1][1][2][0][2][7] = 50,
+	[1][1][2][0][1][7] = 46,
+	[1][1][2][0][3][7] = 64,
+	[1][1][2][0][5][7] = 48,
+	[1][1][2][0][6][7] = 46,
+	[1][1][2][0][9][7] = 46,
+	[1][1][2][0][8][7] = 48,
+	[1][1][2][0][11][7] = 46,
+	[1][1][2][0][2][8] = 50,
+	[1][1][2][0][1][8] = 46,
+	[1][1][2][0][3][8] = 64,
+	[1][1][2][0][5][8] = 48,
+	[1][1][2][0][6][8] = 46,
+	[1][1][2][0][9][8] = 46,
+	[1][1][2][0][8][8] = 48,
+	[1][1][2][0][11][8] = 46,
+	[1][1][2][0][2][9] = 38,
+	[1][1][2][0][1][9] = 46,
+	[1][1][2][0][3][9] = 64,
+	[1][1][2][0][5][9] = 38,
+	[1][1][2][0][6][9] = 46,
+	[1][1][2][0][9][9] = 46,
+	[1][1][2][0][8][9] = 48,
+	[1][1][2][0][11][9] = 46,
+	[1][1][2][0][2][10] = 36,
+	[1][1][2][0][1][10] = 46,
+	[1][1][2][0][3][10] = 64,
+	[1][1][2][0][5][10] = 36,
+	[1][1][2][0][6][10] = 46,
+	[1][1][2][0][9][10] = 46,
+	[1][1][2][0][8][10] = 48,
+	[1][1][2][0][11][10] = 46,
+	[1][1][2][0][2][11] = 127,
+	[1][1][2][0][1][11] = 127,
+	[1][1][2][0][3][11] = 127,
+	[1][1][2][0][5][11] = 127,
+	[1][1][2][0][6][11] = 127,
+	[1][1][2][0][9][11] = 127,
+	[1][1][2][0][8][11] = 127,
+	[1][1][2][0][11][11] = 127,
+	[1][1][2][0][2][12] = 127,
+	[1][1][2][0][1][12] = 127,
+	[1][1][2][0][3][12] = 127,
+	[1][1][2][0][5][12] = 127,
+	[1][1][2][0][6][12] = 127,
+	[1][1][2][0][9][12] = 127,
+	[1][1][2][0][8][12] = 127,
+	[1][1][2][0][11][12] = 127,
+	[1][1][2][0][2][13] = 127,
+	[1][1][2][0][1][13] = 127,
+	[1][1][2][0][3][13] = 127,
+	[1][1][2][0][5][13] = 127,
+	[1][1][2][0][6][13] = 127,
+	[1][1][2][0][9][13] = 127,
+	[1][1][2][0][8][13] = 127,
+	[1][1][2][0][11][13] = 127,
+	[1][1][2][1][2][0] = 127,
+	[1][1][2][1][1][0] = 127,
+	[1][1][2][1][3][0] = 127,
+	[1][1][2][1][5][0] = 127,
+	[1][1][2][1][6][0] = 127,
+	[1][1][2][1][9][0] = 127,
+	[1][1][2][1][8][0] = 127,
+	[1][1][2][1][11][0] = 127,
+	[1][1][2][1][2][1] = 127,
+	[1][1][2][1][1][1] = 127,
+	[1][1][2][1][3][1] = 127,
+	[1][1][2][1][5][1] = 127,
+	[1][1][2][1][6][1] = 127,
+	[1][1][2][1][9][1] = 127,
+	[1][1][2][1][8][1] = 127,
+	[1][1][2][1][11][1] = 127,
+	[1][1][2][1][2][2] = 52,
+	[1][1][2][1][1][2] = 34,
+	[1][1][2][1][3][2] = 64,
+	[1][1][2][1][5][2] = 52,
+	[1][1][2][1][6][2] = 34,
+	[1][1][2][1][9][2] = 34,
+	[1][1][2][1][8][2] = 36,
+	[1][1][2][1][11][2] = 34,
+	[1][1][2][1][2][3] = 52,
+	[1][1][2][1][1][3] = 34,
+	[1][1][2][1][3][3] = 64,
+	[1][1][2][1][5][3] = 52,
+	[1][1][2][1][6][3] = 34,
+	[1][1][2][1][9][3] = 34,
+	[1][1][2][1][8][3] = 36,
+	[1][1][2][1][11][3] = 34,
+	[1][1][2][1][2][4] = 56,
+	[1][1][2][1][1][4] = 34,
+	[1][1][2][1][3][4] = 64,
+	[1][1][2][1][5][4] = 56,
+	[1][1][2][1][6][4] = 34,
+	[1][1][2][1][9][4] = 34,
+	[1][1][2][1][8][4] = 36,
+	[1][1][2][1][11][4] = 34,
+	[1][1][2][1][2][5] = 60,
+	[1][1][2][1][1][5] = 34,
+	[1][1][2][1][3][5] = 64,
+	[1][1][2][1][5][5] = 60,
+	[1][1][2][1][6][5] = 34,
+	[1][1][2][1][9][5] = 34,
+	[1][1][2][1][8][5] = 36,
+	[1][1][2][1][11][5] = 34,
+	[1][1][2][1][2][6] = 54,
+	[1][1][2][1][1][6] = 34,
+	[1][1][2][1][3][6] = 64,
+	[1][1][2][1][5][6] = 52,
+	[1][1][2][1][6][6] = 34,
+	[1][1][2][1][9][6] = 34,
+	[1][1][2][1][8][6] = 36,
+	[1][1][2][1][11][6] = 34,
+	[1][1][2][1][2][7] = 50,
+	[1][1][2][1][1][7] = 34,
+	[1][1][2][1][3][7] = 64,
+	[1][1][2][1][5][7] = 48,
+	[1][1][2][1][6][7] = 34,
+	[1][1][2][1][9][7] = 34,
+	[1][1][2][1][8][7] = 36,
+	[1][1][2][1][11][7] = 34,
+	[1][1][2][1][2][8] = 50,
+	[1][1][2][1][1][8] = 34,
+	[1][1][2][1][3][8] = 64,
+	[1][1][2][1][5][8] = 48,
+	[1][1][2][1][6][8] = 34,
+	[1][1][2][1][9][8] = 34,
+	[1][1][2][1][8][8] = 36,
+	[1][1][2][1][11][8] = 34,
+	[1][1][2][1][2][9] = 38,
+	[1][1][2][1][1][9] = 34,
+	[1][1][2][1][3][9] = 64,
+	[1][1][2][1][5][9] = 38,
+	[1][1][2][1][6][9] = 34,
+	[1][1][2][1][9][9] = 34,
+	[1][1][2][1][8][9] = 36,
+	[1][1][2][1][11][9] = 34,
+	[1][1][2][1][2][10] = 36,
+	[1][1][2][1][1][10] = 34,
+	[1][1][2][1][3][10] = 64,
+	[1][1][2][1][5][10] = 36,
+	[1][1][2][1][6][10] = 34,
+	[1][1][2][1][9][10] = 34,
+	[1][1][2][1][8][10] = 36,
+	[1][1][2][1][11][10] = 34,
+	[1][1][2][1][2][11] = 127,
+	[1][1][2][1][1][11] = 127,
+	[1][1][2][1][3][11] = 127,
+	[1][1][2][1][5][11] = 127,
+	[1][1][2][1][6][11] = 127,
+	[1][1][2][1][9][11] = 127,
+	[1][1][2][1][8][11] = 127,
+	[1][1][2][1][11][11] = 127,
+	[1][1][2][1][2][12] = 127,
+	[1][1][2][1][1][12] = 127,
+	[1][1][2][1][3][12] = 127,
+	[1][1][2][1][5][12] = 127,
+	[1][1][2][1][6][12] = 127,
+	[1][1][2][1][9][12] = 127,
+	[1][1][2][1][8][12] = 127,
+	[1][1][2][1][11][12] = 127,
+	[1][1][2][1][2][13] = 127,
+	[1][1][2][1][1][13] = 127,
+	[1][1][2][1][3][13] = 127,
+	[1][1][2][1][5][13] = 127,
+	[1][1][2][1][6][13] = 127,
+	[1][1][2][1][9][13] = 127,
+	[1][1][2][1][8][13] = 127,
+	[1][1][2][1][11][13] = 127,
 };
 
 const s8 rtw89_8852a_txpwr_lmt_5g[RTW89_5G_BW_NUM][RTW89_NTX_NUM]
 				 [RTW89_RS_LMT_NUM][RTW89_BF_NUM]
 				 [RTW89_REGD_NUM][RTW89_5G_CH_NUM] = {
-	[0][0][1][0][RTW89_WW][0] = 30,
-	[0][0][1][0][RTW89_WW][2] = 30,
-	[0][0][1][0][RTW89_WW][4] = 30,
-	[0][0][1][0][RTW89_WW][6] = 30,
-	[0][0][1][0][RTW89_WW][8] = 52,
-	[0][0][1][0][RTW89_WW][10] = 52,
-	[0][0][1][0][RTW89_WW][12] = 52,
-	[0][0][1][0][RTW89_WW][14] = 52,
-	[0][0][1][0][RTW89_WW][15] = 52,
-	[0][0][1][0][RTW89_WW][17] = 52,
-	[0][0][1][0][RTW89_WW][19] = 52,
-	[0][0][1][0][RTW89_WW][21] = 52,
-	[0][0][1][0][RTW89_WW][23] = 52,
-	[0][0][1][0][RTW89_WW][25] = 52,
-	[0][0][1][0][RTW89_WW][27] = 52,
-	[0][0][1][0][RTW89_WW][29] = 52,
-	[0][0][1][0][RTW89_WW][31] = 52,
-	[0][0][1][0][RTW89_WW][33] = 52,
-	[0][0][1][0][RTW89_WW][35] = 52,
-	[0][0][1][0][RTW89_WW][37] = 54,
-	[0][0][1][0][RTW89_WW][38] = 28,
-	[0][0][1][0][RTW89_WW][40] = 28,
-	[0][0][1][0][RTW89_WW][42] = 28,
-	[0][0][1][0][RTW89_WW][44] = 28,
-	[0][0][1][0][RTW89_WW][46] = 28,
-	[0][1][1][0][RTW89_WW][0] = 18,
-	[0][1][1][0][RTW89_WW][2] = 18,
-	[0][1][1][0][RTW89_WW][4] = 18,
-	[0][1][1][0][RTW89_WW][6] = 18,
-	[0][1][1][0][RTW89_WW][8] = 40,
-	[0][1][1][0][RTW89_WW][10] = 40,
-	[0][1][1][0][RTW89_WW][12] = 40,
-	[0][1][1][0][RTW89_WW][14] = 40,
-	[0][1][1][0][RTW89_WW][15] = 40,
-	[0][1][1][0][RTW89_WW][17] = 40,
-	[0][1][1][0][RTW89_WW][19] = 40,
-	[0][1][1][0][RTW89_WW][21] = 40,
-	[0][1][1][0][RTW89_WW][23] = 40,
-	[0][1][1][0][RTW89_WW][25] = 40,
-	[0][1][1][0][RTW89_WW][27] = 40,
-	[0][1][1][0][RTW89_WW][29] = 40,
-	[0][1][1][0][RTW89_WW][31] = 40,
-	[0][1][1][0][RTW89_WW][33] = 40,
-	[0][1][1][0][RTW89_WW][35] = 40,
-	[0][1][1][0][RTW89_WW][37] = 42,
-	[0][1][1][0][RTW89_WW][38] = 16,
-	[0][1][1][0][RTW89_WW][40] = 16,
-	[0][1][1][0][RTW89_WW][42] = 16,
-	[0][1][1][0][RTW89_WW][44] = 16,
-	[0][1][1][0][RTW89_WW][46] = 16,
-	[0][0][2][0][RTW89_WW][0] = 30,
-	[0][0][2][0][RTW89_WW][2] = 30,
-	[0][0][2][0][RTW89_WW][4] = 30,
-	[0][0][2][0][RTW89_WW][6] = 30,
-	[0][0][2][0][RTW89_WW][8] = 52,
-	[0][0][2][0][RTW89_WW][10] = 52,
-	[0][0][2][0][RTW89_WW][12] = 52,
-	[0][0][2][0][RTW89_WW][14] = 52,
-	[0][0][2][0][RTW89_WW][15] = 52,
-	[0][0][2][0][RTW89_WW][17] = 52,
-	[0][0][2][0][RTW89_WW][19] = 52,
-	[0][0][2][0][RTW89_WW][21] = 52,
-	[0][0][2][0][RTW89_WW][23] = 52,
-	[0][0][2][0][RTW89_WW][25] = 52,
-	[0][0][2][0][RTW89_WW][27] = 52,
-	[0][0][2][0][RTW89_WW][29] = 52,
-	[0][0][2][0][RTW89_WW][31] = 52,
-	[0][0][2][0][RTW89_WW][33] = 52,
-	[0][0][2][0][RTW89_WW][35] = 52,
-	[0][0][2][0][RTW89_WW][37] = 54,
-	[0][0][2][0][RTW89_WW][38] = 28,
-	[0][0][2][0][RTW89_WW][40] = 28,
-	[0][0][2][0][RTW89_WW][42] = 28,
-	[0][0][2][0][RTW89_WW][44] = 28,
-	[0][0][2][0][RTW89_WW][46] = 28,
-	[0][1][2][0][RTW89_WW][0] = 18,
-	[0][1][2][0][RTW89_WW][2] = 18,
-	[0][1][2][0][RTW89_WW][4] = 18,
-	[0][1][2][0][RTW89_WW][6] = 18,
-	[0][1][2][0][RTW89_WW][8] = 40,
-	[0][1][2][0][RTW89_WW][10] = 40,
-	[0][1][2][0][RTW89_WW][12] = 40,
-	[0][1][2][0][RTW89_WW][14] = 40,
-	[0][1][2][0][RTW89_WW][15] = 40,
-	[0][1][2][0][RTW89_WW][17] = 40,
-	[0][1][2][0][RTW89_WW][19] = 40,
-	[0][1][2][0][RTW89_WW][21] = 40,
-	[0][1][2][0][RTW89_WW][23] = 40,
-	[0][1][2][0][RTW89_WW][25] = 40,
-	[0][1][2][0][RTW89_WW][27] = 40,
-	[0][1][2][0][RTW89_WW][29] = 40,
-	[0][1][2][0][RTW89_WW][31] = 40,
-	[0][1][2][0][RTW89_WW][33] = 40,
-	[0][1][2][0][RTW89_WW][35] = 40,
-	[0][1][2][0][RTW89_WW][37] = 42,
-	[0][1][2][0][RTW89_WW][38] = 16,
-	[0][1][2][0][RTW89_WW][40] = 16,
-	[0][1][2][0][RTW89_WW][42] = 16,
-	[0][1][2][0][RTW89_WW][44] = 16,
-	[0][1][2][0][RTW89_WW][46] = 16,
-	[0][1][2][1][RTW89_WW][0] = 6,
-	[0][1][2][1][RTW89_WW][2] = 6,
-	[0][1][2][1][RTW89_WW][4] = 6,
-	[0][1][2][1][RTW89_WW][6] = 6,
-	[0][1][2][1][RTW89_WW][8] = 28,
-	[0][1][2][1][RTW89_WW][10] = 28,
-	[0][1][2][1][RTW89_WW][12] = 28,
-	[0][1][2][1][RTW89_WW][14] = 28,
-	[0][1][2][1][RTW89_WW][15] = 28,
-	[0][1][2][1][RTW89_WW][17] = 28,
-	[0][1][2][1][RTW89_WW][19] = 28,
-	[0][1][2][1][RTW89_WW][21] = 28,
-	[0][1][2][1][RTW89_WW][23] = 28,
-	[0][1][2][1][RTW89_WW][25] = 28,
-	[0][1][2][1][RTW89_WW][27] = 28,
-	[0][1][2][1][RTW89_WW][29] = 28,
-	[0][1][2][1][RTW89_WW][31] = 28,
-	[0][1][2][1][RTW89_WW][33] = 28,
-	[0][1][2][1][RTW89_WW][35] = 28,
-	[0][1][2][1][RTW89_WW][37] = 30,
-	[0][1][2][1][RTW89_WW][38] = 4,
-	[0][1][2][1][RTW89_WW][40] = 4,
-	[0][1][2][1][RTW89_WW][42] = 4,
-	[0][1][2][1][RTW89_WW][44] = 4,
-	[0][1][2][1][RTW89_WW][46] = 4,
-	[1][0][2][0][RTW89_WW][1] = 30,
-	[1][0][2][0][RTW89_WW][5] = 30,
-	[1][0][2][0][RTW89_WW][9] = 52,
-	[1][0][2][0][RTW89_WW][13] = 52,
-	[1][0][2][0][RTW89_WW][16] = 52,
-	[1][0][2][0][RTW89_WW][20] = 52,
-	[1][0][2][0][RTW89_WW][24] = 52,
-	[1][0][2][0][RTW89_WW][28] = 52,
-	[1][0][2][0][RTW89_WW][32] = 52,
-	[1][0][2][0][RTW89_WW][36] = 54,
-	[1][0][2][0][RTW89_WW][39] = 28,
-	[1][0][2][0][RTW89_WW][43] = 28,
-	[1][1][2][0][RTW89_WW][1] = 18,
-	[1][1][2][0][RTW89_WW][5] = 18,
-	[1][1][2][0][RTW89_WW][9] = 40,
-	[1][1][2][0][RTW89_WW][13] = 40,
-	[1][1][2][0][RTW89_WW][16] = 40,
-	[1][1][2][0][RTW89_WW][20] = 40,
-	[1][1][2][0][RTW89_WW][24] = 40,
-	[1][1][2][0][RTW89_WW][28] = 40,
-	[1][1][2][0][RTW89_WW][32] = 40,
-	[1][1][2][0][RTW89_WW][36] = 42,
-	[1][1][2][0][RTW89_WW][39] = 16,
-	[1][1][2][0][RTW89_WW][43] = 16,
-	[1][1][2][1][RTW89_WW][1] = 6,
-	[1][1][2][1][RTW89_WW][5] = 6,
-	[1][1][2][1][RTW89_WW][9] = 28,
-	[1][1][2][1][RTW89_WW][13] = 28,
-	[1][1][2][1][RTW89_WW][16] = 28,
-	[1][1][2][1][RTW89_WW][20] = 28,
-	[1][1][2][1][RTW89_WW][24] = 28,
-	[1][1][2][1][RTW89_WW][28] = 28,
-	[1][1][2][1][RTW89_WW][32] = 28,
-	[1][1][2][1][RTW89_WW][36] = 30,
-	[1][1][2][1][RTW89_WW][39] = 4,
-	[1][1][2][1][RTW89_WW][43] = 4,
-	[2][0][2][0][RTW89_WW][3] = 30,
-	[2][0][2][0][RTW89_WW][11] = 52,
-	[2][0][2][0][RTW89_WW][18] = 52,
-	[2][0][2][0][RTW89_WW][26] = 52,
-	[2][0][2][0][RTW89_WW][34] = 54,
-	[2][0][2][0][RTW89_WW][41] = 28,
-	[2][1][2][0][RTW89_WW][3] = 18,
-	[2][1][2][0][RTW89_WW][11] = 40,
-	[2][1][2][0][RTW89_WW][18] = 40,
-	[2][1][2][0][RTW89_WW][26] = 40,
-	[2][1][2][0][RTW89_WW][34] = 42,
-	[2][1][2][0][RTW89_WW][41] = 16,
-	[2][1][2][1][RTW89_WW][3] = 6,
-	[2][1][2][1][RTW89_WW][11] = 28,
-	[2][1][2][1][RTW89_WW][18] = 28,
-	[2][1][2][1][RTW89_WW][26] = 28,
-	[2][1][2][1][RTW89_WW][34] = 30,
-	[2][1][2][1][RTW89_WW][41] = 4,
-	[0][0][1][0][RTW89_FCC][0] = 76,
-	[0][0][1][0][RTW89_ETSI][0] = 58,
-	[0][0][1][0][RTW89_MKK][0] = 62,
-	[0][0][1][0][RTW89_IC][0] = 62,
-	[0][0][1][0][RTW89_KCC][0] = 76,
-	[0][0][1][0][RTW89_ACMA][0] = 58,
-	[0][0][1][0][RTW89_CHILE][0] = 30,
-	[0][0][1][0][RTW89_UKRAINE][0] = 52,
-	[0][0][1][0][RTW89_MEXICO][0] = 62,
-	[0][0][1][0][RTW89_CN][0] = 58,
-	[0][0][1][0][RTW89_QATAR][0] = 58,
-	[0][0][1][0][RTW89_FCC][2] = 76,
-	[0][0][1][0][RTW89_ETSI][2] = 58,
-	[0][0][1][0][RTW89_MKK][2] = 62,
-	[0][0][1][0][RTW89_IC][2] = 62,
-	[0][0][1][0][RTW89_KCC][2] = 76,
-	[0][0][1][0][RTW89_ACMA][2] = 58,
-	[0][0][1][0][RTW89_CHILE][2] = 30,
-	[0][0][1][0][RTW89_UKRAINE][2] = 52,
-	[0][0][1][0][RTW89_MEXICO][2] = 62,
-	[0][0][1][0][RTW89_CN][2] = 58,
-	[0][0][1][0][RTW89_QATAR][2] = 58,
-	[0][0][1][0][RTW89_FCC][4] = 76,
-	[0][0][1][0][RTW89_ETSI][4] = 58,
-	[0][0][1][0][RTW89_MKK][4] = 62,
-	[0][0][1][0][RTW89_IC][4] = 62,
-	[0][0][1][0][RTW89_KCC][4] = 76,
-	[0][0][1][0][RTW89_ACMA][4] = 58,
-	[0][0][1][0][RTW89_CHILE][4] = 30,
-	[0][0][1][0][RTW89_UKRAINE][4] = 52,
-	[0][0][1][0][RTW89_MEXICO][4] = 62,
-	[0][0][1][0][RTW89_CN][4] = 58,
-	[0][0][1][0][RTW89_QATAR][4] = 58,
-	[0][0][1][0][RTW89_FCC][6] = 76,
-	[0][0][1][0][RTW89_ETSI][6] = 58,
-	[0][0][1][0][RTW89_MKK][6] = 62,
-	[0][0][1][0][RTW89_IC][6] = 62,
-	[0][0][1][0][RTW89_KCC][6] = 58,
-	[0][0][1][0][RTW89_ACMA][6] = 58,
-	[0][0][1][0][RTW89_CHILE][6] = 30,
-	[0][0][1][0][RTW89_UKRAINE][6] = 52,
-	[0][0][1][0][RTW89_MEXICO][6] = 62,
-	[0][0][1][0][RTW89_CN][6] = 58,
-	[0][0][1][0][RTW89_QATAR][6] = 58,
-	[0][0][1][0][RTW89_FCC][8] = 76,
-	[0][0][1][0][RTW89_ETSI][8] = 58,
-	[0][0][1][0][RTW89_MKK][8] = 62,
-	[0][0][1][0][RTW89_IC][8] = 64,
-	[0][0][1][0][RTW89_KCC][8] = 76,
-	[0][0][1][0][RTW89_ACMA][8] = 58,
-	[0][0][1][0][RTW89_CHILE][8] = 54,
-	[0][0][1][0][RTW89_UKRAINE][8] = 52,
-	[0][0][1][0][RTW89_MEXICO][8] = 76,
-	[0][0][1][0][RTW89_CN][8] = 58,
-	[0][0][1][0][RTW89_QATAR][8] = 58,
-	[0][0][1][0][RTW89_FCC][10] = 76,
-	[0][0][1][0][RTW89_ETSI][10] = 58,
-	[0][0][1][0][RTW89_MKK][10] = 62,
-	[0][0][1][0][RTW89_IC][10] = 64,
-	[0][0][1][0][RTW89_KCC][10] = 76,
-	[0][0][1][0][RTW89_ACMA][10] = 58,
-	[0][0][1][0][RTW89_CHILE][10] = 54,
-	[0][0][1][0][RTW89_UKRAINE][10] = 52,
-	[0][0][1][0][RTW89_MEXICO][10] = 76,
-	[0][0][1][0][RTW89_CN][10] = 58,
-	[0][0][1][0][RTW89_QATAR][10] = 58,
-	[0][0][1][0][RTW89_FCC][12] = 76,
-	[0][0][1][0][RTW89_ETSI][12] = 58,
-	[0][0][1][0][RTW89_MKK][12] = 62,
-	[0][0][1][0][RTW89_IC][12] = 64,
-	[0][0][1][0][RTW89_KCC][12] = 76,
-	[0][0][1][0][RTW89_ACMA][12] = 58,
-	[0][0][1][0][RTW89_CHILE][12] = 54,
-	[0][0][1][0][RTW89_UKRAINE][12] = 52,
-	[0][0][1][0][RTW89_MEXICO][12] = 76,
-	[0][0][1][0][RTW89_CN][12] = 58,
-	[0][0][1][0][RTW89_QATAR][12] = 58,
-	[0][0][1][0][RTW89_FCC][14] = 76,
-	[0][0][1][0][RTW89_ETSI][14] = 58,
-	[0][0][1][0][RTW89_MKK][14] = 62,
-	[0][0][1][0][RTW89_IC][14] = 64,
-	[0][0][1][0][RTW89_KCC][14] = 76,
-	[0][0][1][0][RTW89_ACMA][14] = 58,
-	[0][0][1][0][RTW89_CHILE][14] = 54,
-	[0][0][1][0][RTW89_UKRAINE][14] = 52,
-	[0][0][1][0][RTW89_MEXICO][14] = 76,
-	[0][0][1][0][RTW89_CN][14] = 58,
-	[0][0][1][0][RTW89_QATAR][14] = 58,
-	[0][0][1][0][RTW89_FCC][15] = 76,
-	[0][0][1][0][RTW89_ETSI][15] = 58,
-	[0][0][1][0][RTW89_MKK][15] = 76,
-	[0][0][1][0][RTW89_IC][15] = 76,
-	[0][0][1][0][RTW89_KCC][15] = 76,
-	[0][0][1][0][RTW89_ACMA][15] = 58,
-	[0][0][1][0][RTW89_CHILE][15] = 54,
-	[0][0][1][0][RTW89_UKRAINE][15] = 52,
-	[0][0][1][0][RTW89_MEXICO][15] = 76,
-	[0][0][1][0][RTW89_CN][15] = 127,
-	[0][0][1][0][RTW89_QATAR][15] = 52,
-	[0][0][1][0][RTW89_FCC][17] = 76,
-	[0][0][1][0][RTW89_ETSI][17] = 58,
-	[0][0][1][0][RTW89_MKK][17] = 76,
-	[0][0][1][0][RTW89_IC][17] = 76,
-	[0][0][1][0][RTW89_KCC][17] = 76,
-	[0][0][1][0][RTW89_ACMA][17] = 58,
-	[0][0][1][0][RTW89_CHILE][17] = 54,
-	[0][0][1][0][RTW89_UKRAINE][17] = 52,
-	[0][0][1][0][RTW89_MEXICO][17] = 76,
-	[0][0][1][0][RTW89_CN][17] = 127,
-	[0][0][1][0][RTW89_QATAR][17] = 52,
-	[0][0][1][0][RTW89_FCC][19] = 76,
-	[0][0][1][0][RTW89_ETSI][19] = 58,
-	[0][0][1][0][RTW89_MKK][19] = 76,
-	[0][0][1][0][RTW89_IC][19] = 76,
-	[0][0][1][0][RTW89_KCC][19] = 76,
-	[0][0][1][0][RTW89_ACMA][19] = 58,
-	[0][0][1][0][RTW89_CHILE][19] = 54,
-	[0][0][1][0][RTW89_UKRAINE][19] = 52,
-	[0][0][1][0][RTW89_MEXICO][19] = 76,
-	[0][0][1][0][RTW89_CN][19] = 127,
-	[0][0][1][0][RTW89_QATAR][19] = 52,
-	[0][0][1][0][RTW89_FCC][21] = 76,
-	[0][0][1][0][RTW89_ETSI][21] = 58,
-	[0][0][1][0][RTW89_MKK][21] = 76,
-	[0][0][1][0][RTW89_IC][21] = 76,
-	[0][0][1][0][RTW89_KCC][21] = 76,
-	[0][0][1][0][RTW89_ACMA][21] = 58,
-	[0][0][1][0][RTW89_CHILE][21] = 54,
-	[0][0][1][0][RTW89_UKRAINE][21] = 52,
-	[0][0][1][0][RTW89_MEXICO][21] = 76,
-	[0][0][1][0][RTW89_CN][21] = 127,
-	[0][0][1][0][RTW89_QATAR][21] = 52,
-	[0][0][1][0][RTW89_FCC][23] = 76,
-	[0][0][1][0][RTW89_ETSI][23] = 58,
-	[0][0][1][0][RTW89_MKK][23] = 76,
-	[0][0][1][0][RTW89_IC][23] = 76,
-	[0][0][1][0][RTW89_KCC][23] = 76,
-	[0][0][1][0][RTW89_ACMA][23] = 58,
-	[0][0][1][0][RTW89_CHILE][23] = 54,
-	[0][0][1][0][RTW89_UKRAINE][23] = 52,
-	[0][0][1][0][RTW89_MEXICO][23] = 76,
-	[0][0][1][0][RTW89_CN][23] = 127,
-	[0][0][1][0][RTW89_QATAR][23] = 52,
-	[0][0][1][0][RTW89_FCC][25] = 76,
-	[0][0][1][0][RTW89_ETSI][25] = 58,
-	[0][0][1][0][RTW89_MKK][25] = 76,
-	[0][0][1][0][RTW89_IC][25] = 127,
-	[0][0][1][0][RTW89_KCC][25] = 76,
-	[0][0][1][0][RTW89_ACMA][25] = 127,
-	[0][0][1][0][RTW89_CHILE][25] = 54,
-	[0][0][1][0][RTW89_UKRAINE][25] = 52,
-	[0][0][1][0][RTW89_MEXICO][25] = 76,
-	[0][0][1][0][RTW89_CN][25] = 127,
-	[0][0][1][0][RTW89_QATAR][25] = 52,
-	[0][0][1][0][RTW89_FCC][27] = 76,
-	[0][0][1][0][RTW89_ETSI][27] = 58,
-	[0][0][1][0][RTW89_MKK][27] = 76,
-	[0][0][1][0][RTW89_IC][27] = 127,
-	[0][0][1][0][RTW89_KCC][27] = 76,
-	[0][0][1][0][RTW89_ACMA][27] = 127,
-	[0][0][1][0][RTW89_CHILE][27] = 54,
-	[0][0][1][0][RTW89_UKRAINE][27] = 52,
-	[0][0][1][0][RTW89_MEXICO][27] = 76,
-	[0][0][1][0][RTW89_CN][27] = 127,
-	[0][0][1][0][RTW89_QATAR][27] = 52,
-	[0][0][1][0][RTW89_FCC][29] = 76,
-	[0][0][1][0][RTW89_ETSI][29] = 58,
-	[0][0][1][0][RTW89_MKK][29] = 76,
-	[0][0][1][0][RTW89_IC][29] = 127,
-	[0][0][1][0][RTW89_KCC][29] = 76,
-	[0][0][1][0][RTW89_ACMA][29] = 127,
-	[0][0][1][0][RTW89_CHILE][29] = 54,
-	[0][0][1][0][RTW89_UKRAINE][29] = 52,
-	[0][0][1][0][RTW89_MEXICO][29] = 76,
-	[0][0][1][0][RTW89_CN][29] = 127,
-	[0][0][1][0][RTW89_QATAR][29] = 52,
-	[0][0][1][0][RTW89_FCC][31] = 76,
-	[0][0][1][0][RTW89_ETSI][31] = 58,
-	[0][0][1][0][RTW89_MKK][31] = 76,
-	[0][0][1][0][RTW89_IC][31] = 76,
-	[0][0][1][0][RTW89_KCC][31] = 76,
-	[0][0][1][0][RTW89_ACMA][31] = 58,
-	[0][0][1][0][RTW89_CHILE][31] = 54,
-	[0][0][1][0][RTW89_UKRAINE][31] = 52,
-	[0][0][1][0][RTW89_MEXICO][31] = 76,
-	[0][0][1][0][RTW89_CN][31] = 127,
-	[0][0][1][0][RTW89_QATAR][31] = 52,
-	[0][0][1][0][RTW89_FCC][33] = 76,
-	[0][0][1][0][RTW89_ETSI][33] = 58,
-	[0][0][1][0][RTW89_MKK][33] = 76,
-	[0][0][1][0][RTW89_IC][33] = 76,
-	[0][0][1][0][RTW89_KCC][33] = 76,
-	[0][0][1][0][RTW89_ACMA][33] = 58,
-	[0][0][1][0][RTW89_CHILE][33] = 54,
-	[0][0][1][0][RTW89_UKRAINE][33] = 52,
-	[0][0][1][0][RTW89_MEXICO][33] = 76,
-	[0][0][1][0][RTW89_CN][33] = 127,
-	[0][0][1][0][RTW89_QATAR][33] = 52,
-	[0][0][1][0][RTW89_FCC][35] = 74,
-	[0][0][1][0][RTW89_ETSI][35] = 58,
-	[0][0][1][0][RTW89_MKK][35] = 76,
-	[0][0][1][0][RTW89_IC][35] = 74,
-	[0][0][1][0][RTW89_KCC][35] = 76,
-	[0][0][1][0][RTW89_ACMA][35] = 58,
-	[0][0][1][0][RTW89_CHILE][35] = 54,
-	[0][0][1][0][RTW89_UKRAINE][35] = 52,
-	[0][0][1][0][RTW89_MEXICO][35] = 74,
-	[0][0][1][0][RTW89_CN][35] = 127,
-	[0][0][1][0][RTW89_QATAR][35] = 52,
-	[0][0][1][0][RTW89_FCC][37] = 76,
-	[0][0][1][0][RTW89_ETSI][37] = 127,
-	[0][0][1][0][RTW89_MKK][37] = 76,
-	[0][0][1][0][RTW89_IC][37] = 76,
-	[0][0][1][0][RTW89_KCC][37] = 76,
-	[0][0][1][0][RTW89_ACMA][37] = 76,
-	[0][0][1][0][RTW89_CHILE][37] = 54,
-	[0][0][1][0][RTW89_UKRAINE][37] = 127,
-	[0][0][1][0][RTW89_MEXICO][37] = 76,
-	[0][0][1][0][RTW89_CN][37] = 127,
-	[0][0][1][0][RTW89_QATAR][37] = 127,
-	[0][0][1][0][RTW89_FCC][38] = 76,
-	[0][0][1][0][RTW89_ETSI][38] = 28,
-	[0][0][1][0][RTW89_MKK][38] = 127,
-	[0][0][1][0][RTW89_IC][38] = 76,
-	[0][0][1][0][RTW89_KCC][38] = 76,
-	[0][0][1][0][RTW89_ACMA][38] = 76,
-	[0][0][1][0][RTW89_CHILE][38] = 54,
-	[0][0][1][0][RTW89_UKRAINE][38] = 28,
-	[0][0][1][0][RTW89_MEXICO][38] = 76,
-	[0][0][1][0][RTW89_CN][38] = 72,
-	[0][0][1][0][RTW89_QATAR][38] = 28,
-	[0][0][1][0][RTW89_FCC][40] = 76,
-	[0][0][1][0][RTW89_ETSI][40] = 28,
-	[0][0][1][0][RTW89_MKK][40] = 127,
-	[0][0][1][0][RTW89_IC][40] = 76,
-	[0][0][1][0][RTW89_KCC][40] = 76,
-	[0][0][1][0][RTW89_ACMA][40] = 76,
-	[0][0][1][0][RTW89_CHILE][40] = 54,
-	[0][0][1][0][RTW89_UKRAINE][40] = 28,
-	[0][0][1][0][RTW89_MEXICO][40] = 76,
-	[0][0][1][0][RTW89_CN][40] = 76,
-	[0][0][1][0][RTW89_QATAR][40] = 28,
-	[0][0][1][0][RTW89_FCC][42] = 76,
-	[0][0][1][0][RTW89_ETSI][42] = 28,
-	[0][0][1][0][RTW89_MKK][42] = 127,
-	[0][0][1][0][RTW89_IC][42] = 76,
-	[0][0][1][0][RTW89_KCC][42] = 76,
-	[0][0][1][0][RTW89_ACMA][42] = 76,
-	[0][0][1][0][RTW89_CHILE][42] = 54,
-	[0][0][1][0][RTW89_UKRAINE][42] = 28,
-	[0][0][1][0][RTW89_MEXICO][42] = 76,
-	[0][0][1][0][RTW89_CN][42] = 76,
-	[0][0][1][0][RTW89_QATAR][42] = 28,
-	[0][0][1][0][RTW89_FCC][44] = 76,
-	[0][0][1][0][RTW89_ETSI][44] = 28,
-	[0][0][1][0][RTW89_MKK][44] = 127,
-	[0][0][1][0][RTW89_IC][44] = 76,
-	[0][0][1][0][RTW89_KCC][44] = 76,
-	[0][0][1][0][RTW89_ACMA][44] = 76,
-	[0][0][1][0][RTW89_CHILE][44] = 54,
-	[0][0][1][0][RTW89_UKRAINE][44] = 28,
-	[0][0][1][0][RTW89_MEXICO][44] = 76,
-	[0][0][1][0][RTW89_CN][44] = 76,
-	[0][0][1][0][RTW89_QATAR][44] = 28,
-	[0][0][1][0][RTW89_FCC][46] = 76,
-	[0][0][1][0][RTW89_ETSI][46] = 28,
-	[0][0][1][0][RTW89_MKK][46] = 127,
-	[0][0][1][0][RTW89_IC][46] = 76,
-	[0][0][1][0][RTW89_KCC][46] = 76,
-	[0][0][1][0][RTW89_ACMA][46] = 76,
-	[0][0][1][0][RTW89_CHILE][46] = 54,
-	[0][0][1][0][RTW89_UKRAINE][46] = 28,
-	[0][0][1][0][RTW89_MEXICO][46] = 76,
-	[0][0][1][0][RTW89_CN][46] = 76,
-	[0][0][1][0][RTW89_QATAR][46] = 28,
-	[0][1][1][0][RTW89_FCC][0] = 68,
-	[0][1][1][0][RTW89_ETSI][0] = 46,
-	[0][1][1][0][RTW89_MKK][0] = 50,
-	[0][1][1][0][RTW89_IC][0] = 40,
-	[0][1][1][0][RTW89_KCC][0] = 72,
-	[0][1][1][0][RTW89_ACMA][0] = 46,
-	[0][1][1][0][RTW89_CHILE][0] = 18,
-	[0][1][1][0][RTW89_UKRAINE][0] = 40,
-	[0][1][1][0][RTW89_MEXICO][0] = 50,
-	[0][1][1][0][RTW89_CN][0] = 46,
-	[0][1][1][0][RTW89_QATAR][0] = 46,
-	[0][1][1][0][RTW89_FCC][2] = 68,
-	[0][1][1][0][RTW89_ETSI][2] = 46,
-	[0][1][1][0][RTW89_MKK][2] = 50,
-	[0][1][1][0][RTW89_IC][2] = 40,
-	[0][1][1][0][RTW89_KCC][2] = 72,
-	[0][1][1][0][RTW89_ACMA][2] = 46,
-	[0][1][1][0][RTW89_CHILE][2] = 18,
-	[0][1][1][0][RTW89_UKRAINE][2] = 40,
-	[0][1][1][0][RTW89_MEXICO][2] = 50,
-	[0][1][1][0][RTW89_CN][2] = 46,
-	[0][1][1][0][RTW89_QATAR][2] = 46,
-	[0][1][1][0][RTW89_FCC][4] = 68,
-	[0][1][1][0][RTW89_ETSI][4] = 46,
-	[0][1][1][0][RTW89_MKK][4] = 50,
-	[0][1][1][0][RTW89_IC][4] = 40,
-	[0][1][1][0][RTW89_KCC][4] = 72,
-	[0][1][1][0][RTW89_ACMA][4] = 46,
-	[0][1][1][0][RTW89_CHILE][4] = 18,
-	[0][1][1][0][RTW89_UKRAINE][4] = 40,
-	[0][1][1][0][RTW89_MEXICO][4] = 50,
-	[0][1][1][0][RTW89_CN][4] = 46,
-	[0][1][1][0][RTW89_QATAR][4] = 46,
-	[0][1][1][0][RTW89_FCC][6] = 68,
-	[0][1][1][0][RTW89_ETSI][6] = 46,
-	[0][1][1][0][RTW89_MKK][6] = 50,
-	[0][1][1][0][RTW89_IC][6] = 40,
-	[0][1][1][0][RTW89_KCC][6] = 44,
-	[0][1][1][0][RTW89_ACMA][6] = 46,
-	[0][1][1][0][RTW89_CHILE][6] = 18,
-	[0][1][1][0][RTW89_UKRAINE][6] = 40,
-	[0][1][1][0][RTW89_MEXICO][6] = 50,
-	[0][1][1][0][RTW89_CN][6] = 46,
-	[0][1][1][0][RTW89_QATAR][6] = 46,
-	[0][1][1][0][RTW89_FCC][8] = 68,
-	[0][1][1][0][RTW89_ETSI][8] = 46,
-	[0][1][1][0][RTW89_MKK][8] = 50,
-	[0][1][1][0][RTW89_IC][8] = 52,
-	[0][1][1][0][RTW89_KCC][8] = 72,
-	[0][1][1][0][RTW89_ACMA][8] = 46,
-	[0][1][1][0][RTW89_CHILE][8] = 42,
-	[0][1][1][0][RTW89_UKRAINE][8] = 40,
-	[0][1][1][0][RTW89_MEXICO][8] = 68,
-	[0][1][1][0][RTW89_CN][8] = 46,
-	[0][1][1][0][RTW89_QATAR][8] = 46,
-	[0][1][1][0][RTW89_FCC][10] = 68,
-	[0][1][1][0][RTW89_ETSI][10] = 46,
-	[0][1][1][0][RTW89_MKK][10] = 50,
-	[0][1][1][0][RTW89_IC][10] = 52,
-	[0][1][1][0][RTW89_KCC][10] = 72,
-	[0][1][1][0][RTW89_ACMA][10] = 46,
-	[0][1][1][0][RTW89_CHILE][10] = 42,
-	[0][1][1][0][RTW89_UKRAINE][10] = 40,
-	[0][1][1][0][RTW89_MEXICO][10] = 68,
-	[0][1][1][0][RTW89_CN][10] = 46,
-	[0][1][1][0][RTW89_QATAR][10] = 46,
-	[0][1][1][0][RTW89_FCC][12] = 68,
-	[0][1][1][0][RTW89_ETSI][12] = 46,
-	[0][1][1][0][RTW89_MKK][12] = 50,
-	[0][1][1][0][RTW89_IC][12] = 52,
-	[0][1][1][0][RTW89_KCC][12] = 72,
-	[0][1][1][0][RTW89_ACMA][12] = 46,
-	[0][1][1][0][RTW89_CHILE][12] = 42,
-	[0][1][1][0][RTW89_UKRAINE][12] = 40,
-	[0][1][1][0][RTW89_MEXICO][12] = 68,
-	[0][1][1][0][RTW89_CN][12] = 46,
-	[0][1][1][0][RTW89_QATAR][12] = 46,
-	[0][1][1][0][RTW89_FCC][14] = 68,
-	[0][1][1][0][RTW89_ETSI][14] = 46,
-	[0][1][1][0][RTW89_MKK][14] = 50,
-	[0][1][1][0][RTW89_IC][14] = 52,
-	[0][1][1][0][RTW89_KCC][14] = 72,
-	[0][1][1][0][RTW89_ACMA][14] = 46,
-	[0][1][1][0][RTW89_CHILE][14] = 42,
-	[0][1][1][0][RTW89_UKRAINE][14] = 40,
-	[0][1][1][0][RTW89_MEXICO][14] = 68,
-	[0][1][1][0][RTW89_CN][14] = 46,
-	[0][1][1][0][RTW89_QATAR][14] = 46,
-	[0][1][1][0][RTW89_FCC][15] = 68,
-	[0][1][1][0][RTW89_ETSI][15] = 46,
-	[0][1][1][0][RTW89_MKK][15] = 70,
-	[0][1][1][0][RTW89_IC][15] = 68,
-	[0][1][1][0][RTW89_KCC][15] = 72,
-	[0][1][1][0][RTW89_ACMA][15] = 46,
-	[0][1][1][0][RTW89_CHILE][15] = 42,
-	[0][1][1][0][RTW89_UKRAINE][15] = 40,
-	[0][1][1][0][RTW89_MEXICO][15] = 68,
-	[0][1][1][0][RTW89_CN][15] = 127,
-	[0][1][1][0][RTW89_QATAR][15] = 40,
-	[0][1][1][0][RTW89_FCC][17] = 68,
-	[0][1][1][0][RTW89_ETSI][17] = 46,
-	[0][1][1][0][RTW89_MKK][17] = 70,
-	[0][1][1][0][RTW89_IC][17] = 68,
-	[0][1][1][0][RTW89_KCC][17] = 72,
-	[0][1][1][0][RTW89_ACMA][17] = 46,
-	[0][1][1][0][RTW89_CHILE][17] = 42,
-	[0][1][1][0][RTW89_UKRAINE][17] = 40,
-	[0][1][1][0][RTW89_MEXICO][17] = 68,
-	[0][1][1][0][RTW89_CN][17] = 127,
-	[0][1][1][0][RTW89_QATAR][17] = 40,
-	[0][1][1][0][RTW89_FCC][19] = 68,
-	[0][1][1][0][RTW89_ETSI][19] = 46,
-	[0][1][1][0][RTW89_MKK][19] = 70,
-	[0][1][1][0][RTW89_IC][19] = 68,
-	[0][1][1][0][RTW89_KCC][19] = 72,
-	[0][1][1][0][RTW89_ACMA][19] = 46,
-	[0][1][1][0][RTW89_CHILE][19] = 42,
-	[0][1][1][0][RTW89_UKRAINE][19] = 40,
-	[0][1][1][0][RTW89_MEXICO][19] = 68,
-	[0][1][1][0][RTW89_CN][19] = 127,
-	[0][1][1][0][RTW89_QATAR][19] = 40,
-	[0][1][1][0][RTW89_FCC][21] = 68,
-	[0][1][1][0][RTW89_ETSI][21] = 46,
-	[0][1][1][0][RTW89_MKK][21] = 70,
-	[0][1][1][0][RTW89_IC][21] = 68,
-	[0][1][1][0][RTW89_KCC][21] = 72,
-	[0][1][1][0][RTW89_ACMA][21] = 46,
-	[0][1][1][0][RTW89_CHILE][21] = 42,
-	[0][1][1][0][RTW89_UKRAINE][21] = 40,
-	[0][1][1][0][RTW89_MEXICO][21] = 68,
-	[0][1][1][0][RTW89_CN][21] = 127,
-	[0][1][1][0][RTW89_QATAR][21] = 40,
-	[0][1][1][0][RTW89_FCC][23] = 68,
-	[0][1][1][0][RTW89_ETSI][23] = 46,
-	[0][1][1][0][RTW89_MKK][23] = 70,
-	[0][1][1][0][RTW89_IC][23] = 68,
-	[0][1][1][0][RTW89_KCC][23] = 72,
-	[0][1][1][0][RTW89_ACMA][23] = 46,
-	[0][1][1][0][RTW89_CHILE][23] = 42,
-	[0][1][1][0][RTW89_UKRAINE][23] = 40,
-	[0][1][1][0][RTW89_MEXICO][23] = 68,
-	[0][1][1][0][RTW89_CN][23] = 127,
-	[0][1][1][0][RTW89_QATAR][23] = 40,
-	[0][1][1][0][RTW89_FCC][25] = 68,
-	[0][1][1][0][RTW89_ETSI][25] = 46,
-	[0][1][1][0][RTW89_MKK][25] = 70,
-	[0][1][1][0][RTW89_IC][25] = 127,
-	[0][1][1][0][RTW89_KCC][25] = 72,
-	[0][1][1][0][RTW89_ACMA][25] = 127,
-	[0][1][1][0][RTW89_CHILE][25] = 42,
-	[0][1][1][0][RTW89_UKRAINE][25] = 40,
-	[0][1][1][0][RTW89_MEXICO][25] = 68,
-	[0][1][1][0][RTW89_CN][25] = 127,
-	[0][1][1][0][RTW89_QATAR][25] = 40,
-	[0][1][1][0][RTW89_FCC][27] = 68,
-	[0][1][1][0][RTW89_ETSI][27] = 46,
-	[0][1][1][0][RTW89_MKK][27] = 70,
-	[0][1][1][0][RTW89_IC][27] = 127,
-	[0][1][1][0][RTW89_KCC][27] = 72,
-	[0][1][1][0][RTW89_ACMA][27] = 127,
-	[0][1][1][0][RTW89_CHILE][27] = 42,
-	[0][1][1][0][RTW89_UKRAINE][27] = 40,
-	[0][1][1][0][RTW89_MEXICO][27] = 68,
-	[0][1][1][0][RTW89_CN][27] = 127,
-	[0][1][1][0][RTW89_QATAR][27] = 40,
-	[0][1][1][0][RTW89_FCC][29] = 68,
-	[0][1][1][0][RTW89_ETSI][29] = 46,
-	[0][1][1][0][RTW89_MKK][29] = 70,
-	[0][1][1][0][RTW89_IC][29] = 127,
-	[0][1][1][0][RTW89_KCC][29] = 72,
-	[0][1][1][0][RTW89_ACMA][29] = 127,
-	[0][1][1][0][RTW89_CHILE][29] = 42,
-	[0][1][1][0][RTW89_UKRAINE][29] = 40,
-	[0][1][1][0][RTW89_MEXICO][29] = 68,
-	[0][1][1][0][RTW89_CN][29] = 127,
-	[0][1][1][0][RTW89_QATAR][29] = 40,
-	[0][1][1][0][RTW89_FCC][31] = 68,
-	[0][1][1][0][RTW89_ETSI][31] = 46,
-	[0][1][1][0][RTW89_MKK][31] = 70,
-	[0][1][1][0][RTW89_IC][31] = 68,
-	[0][1][1][0][RTW89_KCC][31] = 72,
-	[0][1][1][0][RTW89_ACMA][31] = 46,
-	[0][1][1][0][RTW89_CHILE][31] = 42,
-	[0][1][1][0][RTW89_UKRAINE][31] = 40,
-	[0][1][1][0][RTW89_MEXICO][31] = 68,
-	[0][1][1][0][RTW89_CN][31] = 127,
-	[0][1][1][0][RTW89_QATAR][31] = 40,
-	[0][1][1][0][RTW89_FCC][33] = 68,
-	[0][1][1][0][RTW89_ETSI][33] = 46,
-	[0][1][1][0][RTW89_MKK][33] = 70,
-	[0][1][1][0][RTW89_IC][33] = 68,
-	[0][1][1][0][RTW89_KCC][33] = 72,
-	[0][1][1][0][RTW89_ACMA][33] = 46,
-	[0][1][1][0][RTW89_CHILE][33] = 42,
-	[0][1][1][0][RTW89_UKRAINE][33] = 40,
-	[0][1][1][0][RTW89_MEXICO][33] = 68,
-	[0][1][1][0][RTW89_CN][33] = 127,
-	[0][1][1][0][RTW89_QATAR][33] = 40,
-	[0][1][1][0][RTW89_FCC][35] = 66,
-	[0][1][1][0][RTW89_ETSI][35] = 46,
-	[0][1][1][0][RTW89_MKK][35] = 70,
-	[0][1][1][0][RTW89_IC][35] = 66,
-	[0][1][1][0][RTW89_KCC][35] = 72,
-	[0][1][1][0][RTW89_ACMA][35] = 46,
-	[0][1][1][0][RTW89_CHILE][35] = 42,
-	[0][1][1][0][RTW89_UKRAINE][35] = 40,
-	[0][1][1][0][RTW89_MEXICO][35] = 66,
-	[0][1][1][0][RTW89_CN][35] = 127,
-	[0][1][1][0][RTW89_QATAR][35] = 40,
-	[0][1][1][0][RTW89_FCC][37] = 68,
-	[0][1][1][0][RTW89_ETSI][37] = 127,
-	[0][1][1][0][RTW89_MKK][37] = 70,
-	[0][1][1][0][RTW89_IC][37] = 68,
-	[0][1][1][0][RTW89_KCC][37] = 72,
-	[0][1][1][0][RTW89_ACMA][37] = 68,
-	[0][1][1][0][RTW89_CHILE][37] = 42,
-	[0][1][1][0][RTW89_UKRAINE][37] = 127,
-	[0][1][1][0][RTW89_MEXICO][37] = 68,
-	[0][1][1][0][RTW89_CN][37] = 127,
-	[0][1][1][0][RTW89_QATAR][37] = 127,
-	[0][1][1][0][RTW89_FCC][38] = 76,
-	[0][1][1][0][RTW89_ETSI][38] = 16,
-	[0][1][1][0][RTW89_MKK][38] = 127,
-	[0][1][1][0][RTW89_IC][38] = 76,
-	[0][1][1][0][RTW89_KCC][38] = 72,
-	[0][1][1][0][RTW89_ACMA][38] = 76,
-	[0][1][1][0][RTW89_CHILE][38] = 42,
-	[0][1][1][0][RTW89_UKRAINE][38] = 16,
-	[0][1][1][0][RTW89_MEXICO][38] = 76,
-	[0][1][1][0][RTW89_CN][38] = 72,
-	[0][1][1][0][RTW89_QATAR][38] = 16,
-	[0][1][1][0][RTW89_FCC][40] = 76,
-	[0][1][1][0][RTW89_ETSI][40] = 16,
-	[0][1][1][0][RTW89_MKK][40] = 127,
-	[0][1][1][0][RTW89_IC][40] = 76,
-	[0][1][1][0][RTW89_KCC][40] = 72,
-	[0][1][1][0][RTW89_ACMA][40] = 76,
-	[0][1][1][0][RTW89_CHILE][40] = 42,
-	[0][1][1][0][RTW89_UKRAINE][40] = 16,
-	[0][1][1][0][RTW89_MEXICO][40] = 76,
-	[0][1][1][0][RTW89_CN][40] = 76,
-	[0][1][1][0][RTW89_QATAR][40] = 16,
-	[0][1][1][0][RTW89_FCC][42] = 76,
-	[0][1][1][0][RTW89_ETSI][42] = 16,
-	[0][1][1][0][RTW89_MKK][42] = 127,
-	[0][1][1][0][RTW89_IC][42] = 76,
-	[0][1][1][0][RTW89_KCC][42] = 72,
-	[0][1][1][0][RTW89_ACMA][42] = 76,
-	[0][1][1][0][RTW89_CHILE][42] = 42,
-	[0][1][1][0][RTW89_UKRAINE][42] = 16,
-	[0][1][1][0][RTW89_MEXICO][42] = 76,
-	[0][1][1][0][RTW89_CN][42] = 76,
-	[0][1][1][0][RTW89_QATAR][42] = 16,
-	[0][1][1][0][RTW89_FCC][44] = 76,
-	[0][1][1][0][RTW89_ETSI][44] = 16,
-	[0][1][1][0][RTW89_MKK][44] = 127,
-	[0][1][1][0][RTW89_IC][44] = 76,
-	[0][1][1][0][RTW89_KCC][44] = 72,
-	[0][1][1][0][RTW89_ACMA][44] = 76,
-	[0][1][1][0][RTW89_CHILE][44] = 42,
-	[0][1][1][0][RTW89_UKRAINE][44] = 16,
-	[0][1][1][0][RTW89_MEXICO][44] = 76,
-	[0][1][1][0][RTW89_CN][44] = 76,
-	[0][1][1][0][RTW89_QATAR][44] = 16,
-	[0][1][1][0][RTW89_FCC][46] = 76,
-	[0][1][1][0][RTW89_ETSI][46] = 16,
-	[0][1][1][0][RTW89_MKK][46] = 127,
-	[0][1][1][0][RTW89_IC][46] = 76,
-	[0][1][1][0][RTW89_KCC][46] = 72,
-	[0][1][1][0][RTW89_ACMA][46] = 76,
-	[0][1][1][0][RTW89_CHILE][46] = 42,
-	[0][1][1][0][RTW89_UKRAINE][46] = 16,
-	[0][1][1][0][RTW89_MEXICO][46] = 76,
-	[0][1][1][0][RTW89_CN][46] = 76,
-	[0][1][1][0][RTW89_QATAR][46] = 16,
-	[0][0][2][0][RTW89_FCC][0] = 76,
-	[0][0][2][0][RTW89_ETSI][0] = 58,
-	[0][0][2][0][RTW89_MKK][0] = 62,
-	[0][0][2][0][RTW89_IC][0] = 62,
-	[0][0][2][0][RTW89_KCC][0] = 76,
-	[0][0][2][0][RTW89_ACMA][0] = 58,
-	[0][0][2][0][RTW89_CHILE][0] = 30,
-	[0][0][2][0][RTW89_UKRAINE][0] = 52,
-	[0][0][2][0][RTW89_MEXICO][0] = 62,
-	[0][0][2][0][RTW89_CN][0] = 58,
-	[0][0][2][0][RTW89_QATAR][0] = 58,
-	[0][0][2][0][RTW89_FCC][2] = 76,
-	[0][0][2][0][RTW89_ETSI][2] = 58,
-	[0][0][2][0][RTW89_MKK][2] = 62,
-	[0][0][2][0][RTW89_IC][2] = 62,
-	[0][0][2][0][RTW89_KCC][2] = 76,
-	[0][0][2][0][RTW89_ACMA][2] = 58,
-	[0][0][2][0][RTW89_CHILE][2] = 30,
-	[0][0][2][0][RTW89_UKRAINE][2] = 52,
-	[0][0][2][0][RTW89_MEXICO][2] = 62,
-	[0][0][2][0][RTW89_CN][2] = 58,
-	[0][0][2][0][RTW89_QATAR][2] = 58,
-	[0][0][2][0][RTW89_FCC][4] = 76,
-	[0][0][2][0][RTW89_ETSI][4] = 58,
-	[0][0][2][0][RTW89_MKK][4] = 62,
-	[0][0][2][0][RTW89_IC][4] = 62,
-	[0][0][2][0][RTW89_KCC][4] = 76,
-	[0][0][2][0][RTW89_ACMA][4] = 58,
-	[0][0][2][0][RTW89_CHILE][4] = 30,
-	[0][0][2][0][RTW89_UKRAINE][4] = 52,
-	[0][0][2][0][RTW89_MEXICO][4] = 62,
-	[0][0][2][0][RTW89_CN][4] = 58,
-	[0][0][2][0][RTW89_QATAR][4] = 58,
-	[0][0][2][0][RTW89_FCC][6] = 76,
-	[0][0][2][0][RTW89_ETSI][6] = 58,
-	[0][0][2][0][RTW89_MKK][6] = 62,
-	[0][0][2][0][RTW89_IC][6] = 62,
-	[0][0][2][0][RTW89_KCC][6] = 58,
-	[0][0][2][0][RTW89_ACMA][6] = 58,
-	[0][0][2][0][RTW89_CHILE][6] = 30,
-	[0][0][2][0][RTW89_UKRAINE][6] = 52,
-	[0][0][2][0][RTW89_MEXICO][6] = 62,
-	[0][0][2][0][RTW89_CN][6] = 58,
-	[0][0][2][0][RTW89_QATAR][6] = 58,
-	[0][0][2][0][RTW89_FCC][8] = 76,
-	[0][0][2][0][RTW89_ETSI][8] = 58,
-	[0][0][2][0][RTW89_MKK][8] = 62,
-	[0][0][2][0][RTW89_IC][8] = 64,
-	[0][0][2][0][RTW89_KCC][8] = 76,
-	[0][0][2][0][RTW89_ACMA][8] = 58,
-	[0][0][2][0][RTW89_CHILE][8] = 54,
-	[0][0][2][0][RTW89_UKRAINE][8] = 52,
-	[0][0][2][0][RTW89_MEXICO][8] = 76,
-	[0][0][2][0][RTW89_CN][8] = 58,
-	[0][0][2][0][RTW89_QATAR][8] = 58,
-	[0][0][2][0][RTW89_FCC][10] = 76,
-	[0][0][2][0][RTW89_ETSI][10] = 58,
-	[0][0][2][0][RTW89_MKK][10] = 62,
-	[0][0][2][0][RTW89_IC][10] = 64,
-	[0][0][2][0][RTW89_KCC][10] = 76,
-	[0][0][2][0][RTW89_ACMA][10] = 58,
-	[0][0][2][0][RTW89_CHILE][10] = 54,
-	[0][0][2][0][RTW89_UKRAINE][10] = 52,
-	[0][0][2][0][RTW89_MEXICO][10] = 76,
-	[0][0][2][0][RTW89_CN][10] = 58,
-	[0][0][2][0][RTW89_QATAR][10] = 58,
-	[0][0][2][0][RTW89_FCC][12] = 76,
-	[0][0][2][0][RTW89_ETSI][12] = 58,
-	[0][0][2][0][RTW89_MKK][12] = 62,
-	[0][0][2][0][RTW89_IC][12] = 64,
-	[0][0][2][0][RTW89_KCC][12] = 76,
-	[0][0][2][0][RTW89_ACMA][12] = 58,
-	[0][0][2][0][RTW89_CHILE][12] = 54,
-	[0][0][2][0][RTW89_UKRAINE][12] = 52,
-	[0][0][2][0][RTW89_MEXICO][12] = 76,
-	[0][0][2][0][RTW89_CN][12] = 58,
-	[0][0][2][0][RTW89_QATAR][12] = 58,
-	[0][0][2][0][RTW89_FCC][14] = 76,
-	[0][0][2][0][RTW89_ETSI][14] = 58,
-	[0][0][2][0][RTW89_MKK][14] = 62,
-	[0][0][2][0][RTW89_IC][14] = 64,
-	[0][0][2][0][RTW89_KCC][14] = 76,
-	[0][0][2][0][RTW89_ACMA][14] = 58,
-	[0][0][2][0][RTW89_CHILE][14] = 54,
-	[0][0][2][0][RTW89_UKRAINE][14] = 52,
-	[0][0][2][0][RTW89_MEXICO][14] = 76,
-	[0][0][2][0][RTW89_CN][14] = 58,
-	[0][0][2][0][RTW89_QATAR][14] = 58,
-	[0][0][2][0][RTW89_FCC][15] = 74,
-	[0][0][2][0][RTW89_ETSI][15] = 58,
-	[0][0][2][0][RTW89_MKK][15] = 76,
-	[0][0][2][0][RTW89_IC][15] = 74,
-	[0][0][2][0][RTW89_KCC][15] = 76,
-	[0][0][2][0][RTW89_ACMA][15] = 58,
-	[0][0][2][0][RTW89_CHILE][15] = 54,
-	[0][0][2][0][RTW89_UKRAINE][15] = 52,
-	[0][0][2][0][RTW89_MEXICO][15] = 74,
-	[0][0][2][0][RTW89_CN][15] = 127,
-	[0][0][2][0][RTW89_QATAR][15] = 52,
-	[0][0][2][0][RTW89_FCC][17] = 76,
-	[0][0][2][0][RTW89_ETSI][17] = 58,
-	[0][0][2][0][RTW89_MKK][17] = 76,
-	[0][0][2][0][RTW89_IC][17] = 76,
-	[0][0][2][0][RTW89_KCC][17] = 76,
-	[0][0][2][0][RTW89_ACMA][17] = 58,
-	[0][0][2][0][RTW89_CHILE][17] = 54,
-	[0][0][2][0][RTW89_UKRAINE][17] = 52,
-	[0][0][2][0][RTW89_MEXICO][17] = 76,
-	[0][0][2][0][RTW89_CN][17] = 127,
-	[0][0][2][0][RTW89_QATAR][17] = 52,
-	[0][0][2][0][RTW89_FCC][19] = 76,
-	[0][0][2][0][RTW89_ETSI][19] = 58,
-	[0][0][2][0][RTW89_MKK][19] = 76,
-	[0][0][2][0][RTW89_IC][19] = 76,
-	[0][0][2][0][RTW89_KCC][19] = 76,
-	[0][0][2][0][RTW89_ACMA][19] = 58,
-	[0][0][2][0][RTW89_CHILE][19] = 54,
-	[0][0][2][0][RTW89_UKRAINE][19] = 52,
-	[0][0][2][0][RTW89_MEXICO][19] = 76,
-	[0][0][2][0][RTW89_CN][19] = 127,
-	[0][0][2][0][RTW89_QATAR][19] = 52,
-	[0][0][2][0][RTW89_FCC][21] = 76,
-	[0][0][2][0][RTW89_ETSI][21] = 58,
-	[0][0][2][0][RTW89_MKK][21] = 76,
-	[0][0][2][0][RTW89_IC][21] = 76,
-	[0][0][2][0][RTW89_KCC][21] = 76,
-	[0][0][2][0][RTW89_ACMA][21] = 58,
-	[0][0][2][0][RTW89_CHILE][21] = 54,
-	[0][0][2][0][RTW89_UKRAINE][21] = 52,
-	[0][0][2][0][RTW89_MEXICO][21] = 76,
-	[0][0][2][0][RTW89_CN][21] = 127,
-	[0][0][2][0][RTW89_QATAR][21] = 52,
-	[0][0][2][0][RTW89_FCC][23] = 76,
-	[0][0][2][0][RTW89_ETSI][23] = 58,
-	[0][0][2][0][RTW89_MKK][23] = 76,
-	[0][0][2][0][RTW89_IC][23] = 76,
-	[0][0][2][0][RTW89_KCC][23] = 76,
-	[0][0][2][0][RTW89_ACMA][23] = 58,
-	[0][0][2][0][RTW89_CHILE][23] = 54,
-	[0][0][2][0][RTW89_UKRAINE][23] = 52,
-	[0][0][2][0][RTW89_MEXICO][23] = 76,
-	[0][0][2][0][RTW89_CN][23] = 127,
-	[0][0][2][0][RTW89_QATAR][23] = 52,
-	[0][0][2][0][RTW89_FCC][25] = 76,
-	[0][0][2][0][RTW89_ETSI][25] = 58,
-	[0][0][2][0][RTW89_MKK][25] = 76,
-	[0][0][2][0][RTW89_IC][25] = 127,
-	[0][0][2][0][RTW89_KCC][25] = 76,
-	[0][0][2][0][RTW89_ACMA][25] = 127,
-	[0][0][2][0][RTW89_CHILE][25] = 54,
-	[0][0][2][0][RTW89_UKRAINE][25] = 52,
-	[0][0][2][0][RTW89_MEXICO][25] = 76,
-	[0][0][2][0][RTW89_CN][25] = 127,
-	[0][0][2][0][RTW89_QATAR][25] = 52,
-	[0][0][2][0][RTW89_FCC][27] = 76,
-	[0][0][2][0][RTW89_ETSI][27] = 58,
-	[0][0][2][0][RTW89_MKK][27] = 76,
-	[0][0][2][0][RTW89_IC][27] = 127,
-	[0][0][2][0][RTW89_KCC][27] = 76,
-	[0][0][2][0][RTW89_ACMA][27] = 127,
-	[0][0][2][0][RTW89_CHILE][27] = 54,
-	[0][0][2][0][RTW89_UKRAINE][27] = 52,
-	[0][0][2][0][RTW89_MEXICO][27] = 76,
-	[0][0][2][0][RTW89_CN][27] = 127,
-	[0][0][2][0][RTW89_QATAR][27] = 52,
-	[0][0][2][0][RTW89_FCC][29] = 76,
-	[0][0][2][0][RTW89_ETSI][29] = 58,
-	[0][0][2][0][RTW89_MKK][29] = 76,
-	[0][0][2][0][RTW89_IC][29] = 127,
-	[0][0][2][0][RTW89_KCC][29] = 76,
-	[0][0][2][0][RTW89_ACMA][29] = 127,
-	[0][0][2][0][RTW89_CHILE][29] = 54,
-	[0][0][2][0][RTW89_UKRAINE][29] = 52,
-	[0][0][2][0][RTW89_MEXICO][29] = 76,
-	[0][0][2][0][RTW89_CN][29] = 127,
-	[0][0][2][0][RTW89_QATAR][29] = 52,
-	[0][0][2][0][RTW89_FCC][31] = 76,
-	[0][0][2][0][RTW89_ETSI][31] = 58,
-	[0][0][2][0][RTW89_MKK][31] = 76,
-	[0][0][2][0][RTW89_IC][31] = 76,
-	[0][0][2][0][RTW89_KCC][31] = 76,
-	[0][0][2][0][RTW89_ACMA][31] = 58,
-	[0][0][2][0][RTW89_CHILE][31] = 54,
-	[0][0][2][0][RTW89_UKRAINE][31] = 52,
-	[0][0][2][0][RTW89_MEXICO][31] = 76,
-	[0][0][2][0][RTW89_CN][31] = 127,
-	[0][0][2][0][RTW89_QATAR][31] = 52,
-	[0][0][2][0][RTW89_FCC][33] = 76,
-	[0][0][2][0][RTW89_ETSI][33] = 58,
-	[0][0][2][0][RTW89_MKK][33] = 76,
-	[0][0][2][0][RTW89_IC][33] = 76,
-	[0][0][2][0][RTW89_KCC][33] = 76,
-	[0][0][2][0][RTW89_ACMA][33] = 58,
-	[0][0][2][0][RTW89_CHILE][33] = 54,
-	[0][0][2][0][RTW89_UKRAINE][33] = 52,
-	[0][0][2][0][RTW89_MEXICO][33] = 76,
-	[0][0][2][0][RTW89_CN][33] = 127,
-	[0][0][2][0][RTW89_QATAR][33] = 52,
-	[0][0][2][0][RTW89_FCC][35] = 70,
-	[0][0][2][0][RTW89_ETSI][35] = 58,
-	[0][0][2][0][RTW89_MKK][35] = 76,
-	[0][0][2][0][RTW89_IC][35] = 70,
-	[0][0][2][0][RTW89_KCC][35] = 76,
-	[0][0][2][0][RTW89_ACMA][35] = 58,
-	[0][0][2][0][RTW89_CHILE][35] = 54,
-	[0][0][2][0][RTW89_UKRAINE][35] = 52,
-	[0][0][2][0][RTW89_MEXICO][35] = 70,
-	[0][0][2][0][RTW89_CN][35] = 127,
-	[0][0][2][0][RTW89_QATAR][35] = 52,
-	[0][0][2][0][RTW89_FCC][37] = 76,
-	[0][0][2][0][RTW89_ETSI][37] = 127,
-	[0][0][2][0][RTW89_MKK][37] = 76,
-	[0][0][2][0][RTW89_IC][37] = 76,
-	[0][0][2][0][RTW89_KCC][37] = 76,
-	[0][0][2][0][RTW89_ACMA][37] = 76,
-	[0][0][2][0][RTW89_CHILE][37] = 54,
-	[0][0][2][0][RTW89_UKRAINE][37] = 127,
-	[0][0][2][0][RTW89_MEXICO][37] = 76,
-	[0][0][2][0][RTW89_CN][37] = 127,
-	[0][0][2][0][RTW89_QATAR][37] = 127,
-	[0][0][2][0][RTW89_FCC][38] = 76,
-	[0][0][2][0][RTW89_ETSI][38] = 28,
-	[0][0][2][0][RTW89_MKK][38] = 127,
-	[0][0][2][0][RTW89_IC][38] = 76,
-	[0][0][2][0][RTW89_KCC][38] = 76,
-	[0][0][2][0][RTW89_ACMA][38] = 76,
-	[0][0][2][0][RTW89_CHILE][38] = 54,
-	[0][0][2][0][RTW89_UKRAINE][38] = 28,
-	[0][0][2][0][RTW89_MEXICO][38] = 76,
-	[0][0][2][0][RTW89_CN][38] = 68,
-	[0][0][2][0][RTW89_QATAR][38] = 28,
-	[0][0][2][0][RTW89_FCC][40] = 76,
-	[0][0][2][0][RTW89_ETSI][40] = 28,
-	[0][0][2][0][RTW89_MKK][40] = 127,
-	[0][0][2][0][RTW89_IC][40] = 76,
-	[0][0][2][0][RTW89_KCC][40] = 76,
-	[0][0][2][0][RTW89_ACMA][40] = 76,
-	[0][0][2][0][RTW89_CHILE][40] = 54,
-	[0][0][2][0][RTW89_UKRAINE][40] = 28,
-	[0][0][2][0][RTW89_MEXICO][40] = 76,
-	[0][0][2][0][RTW89_CN][40] = 76,
-	[0][0][2][0][RTW89_QATAR][40] = 28,
-	[0][0][2][0][RTW89_FCC][42] = 76,
-	[0][0][2][0][RTW89_ETSI][42] = 28,
-	[0][0][2][0][RTW89_MKK][42] = 127,
-	[0][0][2][0][RTW89_IC][42] = 76,
-	[0][0][2][0][RTW89_KCC][42] = 76,
-	[0][0][2][0][RTW89_ACMA][42] = 76,
-	[0][0][2][0][RTW89_CHILE][42] = 54,
-	[0][0][2][0][RTW89_UKRAINE][42] = 28,
-	[0][0][2][0][RTW89_MEXICO][42] = 76,
-	[0][0][2][0][RTW89_CN][42] = 76,
-	[0][0][2][0][RTW89_QATAR][42] = 28,
-	[0][0][2][0][RTW89_FCC][44] = 76,
-	[0][0][2][0][RTW89_ETSI][44] = 28,
-	[0][0][2][0][RTW89_MKK][44] = 127,
-	[0][0][2][0][RTW89_IC][44] = 76,
-	[0][0][2][0][RTW89_KCC][44] = 76,
-	[0][0][2][0][RTW89_ACMA][44] = 76,
-	[0][0][2][0][RTW89_CHILE][44] = 54,
-	[0][0][2][0][RTW89_UKRAINE][44] = 28,
-	[0][0][2][0][RTW89_MEXICO][44] = 76,
-	[0][0][2][0][RTW89_CN][44] = 76,
-	[0][0][2][0][RTW89_QATAR][44] = 28,
-	[0][0][2][0][RTW89_FCC][46] = 76,
-	[0][0][2][0][RTW89_ETSI][46] = 28,
-	[0][0][2][0][RTW89_MKK][46] = 127,
-	[0][0][2][0][RTW89_IC][46] = 76,
-	[0][0][2][0][RTW89_KCC][46] = 76,
-	[0][0][2][0][RTW89_ACMA][46] = 76,
-	[0][0][2][0][RTW89_CHILE][46] = 54,
-	[0][0][2][0][RTW89_UKRAINE][46] = 28,
-	[0][0][2][0][RTW89_MEXICO][46] = 76,
-	[0][0][2][0][RTW89_CN][46] = 76,
-	[0][0][2][0][RTW89_QATAR][46] = 28,
-	[0][1][2][0][RTW89_FCC][0] = 68,
-	[0][1][2][0][RTW89_ETSI][0] = 46,
-	[0][1][2][0][RTW89_MKK][0] = 50,
-	[0][1][2][0][RTW89_IC][0] = 40,
-	[0][1][2][0][RTW89_KCC][0] = 68,
-	[0][1][2][0][RTW89_ACMA][0] = 46,
-	[0][1][2][0][RTW89_CHILE][0] = 18,
-	[0][1][2][0][RTW89_UKRAINE][0] = 40,
-	[0][1][2][0][RTW89_MEXICO][0] = 50,
-	[0][1][2][0][RTW89_CN][0] = 46,
-	[0][1][2][0][RTW89_QATAR][0] = 46,
-	[0][1][2][0][RTW89_FCC][2] = 68,
-	[0][1][2][0][RTW89_ETSI][2] = 46,
-	[0][1][2][0][RTW89_MKK][2] = 50,
-	[0][1][2][0][RTW89_IC][2] = 40,
-	[0][1][2][0][RTW89_KCC][2] = 68,
-	[0][1][2][0][RTW89_ACMA][2] = 46,
-	[0][1][2][0][RTW89_CHILE][2] = 18,
-	[0][1][2][0][RTW89_UKRAINE][2] = 40,
-	[0][1][2][0][RTW89_MEXICO][2] = 50,
-	[0][1][2][0][RTW89_CN][2] = 46,
-	[0][1][2][0][RTW89_QATAR][2] = 46,
-	[0][1][2][0][RTW89_FCC][4] = 68,
-	[0][1][2][0][RTW89_ETSI][4] = 46,
-	[0][1][2][0][RTW89_MKK][4] = 50,
-	[0][1][2][0][RTW89_IC][4] = 40,
-	[0][1][2][0][RTW89_KCC][4] = 68,
-	[0][1][2][0][RTW89_ACMA][4] = 46,
-	[0][1][2][0][RTW89_CHILE][4] = 18,
-	[0][1][2][0][RTW89_UKRAINE][4] = 40,
-	[0][1][2][0][RTW89_MEXICO][4] = 50,
-	[0][1][2][0][RTW89_CN][4] = 46,
-	[0][1][2][0][RTW89_QATAR][4] = 46,
-	[0][1][2][0][RTW89_FCC][6] = 68,
-	[0][1][2][0][RTW89_ETSI][6] = 46,
-	[0][1][2][0][RTW89_MKK][6] = 50,
-	[0][1][2][0][RTW89_IC][6] = 40,
-	[0][1][2][0][RTW89_KCC][6] = 38,
-	[0][1][2][0][RTW89_ACMA][6] = 46,
-	[0][1][2][0][RTW89_CHILE][6] = 18,
-	[0][1][2][0][RTW89_UKRAINE][6] = 40,
-	[0][1][2][0][RTW89_MEXICO][6] = 50,
-	[0][1][2][0][RTW89_CN][6] = 46,
-	[0][1][2][0][RTW89_QATAR][6] = 46,
-	[0][1][2][0][RTW89_FCC][8] = 68,
-	[0][1][2][0][RTW89_ETSI][8] = 46,
-	[0][1][2][0][RTW89_MKK][8] = 50,
-	[0][1][2][0][RTW89_IC][8] = 52,
-	[0][1][2][0][RTW89_KCC][8] = 68,
-	[0][1][2][0][RTW89_ACMA][8] = 46,
-	[0][1][2][0][RTW89_CHILE][8] = 42,
-	[0][1][2][0][RTW89_UKRAINE][8] = 40,
-	[0][1][2][0][RTW89_MEXICO][8] = 68,
-	[0][1][2][0][RTW89_CN][8] = 46,
-	[0][1][2][0][RTW89_QATAR][8] = 46,
-	[0][1][2][0][RTW89_FCC][10] = 68,
-	[0][1][2][0][RTW89_ETSI][10] = 46,
-	[0][1][2][0][RTW89_MKK][10] = 50,
-	[0][1][2][0][RTW89_IC][10] = 52,
-	[0][1][2][0][RTW89_KCC][10] = 68,
-	[0][1][2][0][RTW89_ACMA][10] = 46,
-	[0][1][2][0][RTW89_CHILE][10] = 42,
-	[0][1][2][0][RTW89_UKRAINE][10] = 40,
-	[0][1][2][0][RTW89_MEXICO][10] = 68,
-	[0][1][2][0][RTW89_CN][10] = 46,
-	[0][1][2][0][RTW89_QATAR][10] = 46,
-	[0][1][2][0][RTW89_FCC][12] = 68,
-	[0][1][2][0][RTW89_ETSI][12] = 46,
-	[0][1][2][0][RTW89_MKK][12] = 50,
-	[0][1][2][0][RTW89_IC][12] = 52,
-	[0][1][2][0][RTW89_KCC][12] = 68,
-	[0][1][2][0][RTW89_ACMA][12] = 46,
-	[0][1][2][0][RTW89_CHILE][12] = 42,
-	[0][1][2][0][RTW89_UKRAINE][12] = 40,
-	[0][1][2][0][RTW89_MEXICO][12] = 68,
-	[0][1][2][0][RTW89_CN][12] = 46,
-	[0][1][2][0][RTW89_QATAR][12] = 46,
-	[0][1][2][0][RTW89_FCC][14] = 68,
-	[0][1][2][0][RTW89_ETSI][14] = 46,
-	[0][1][2][0][RTW89_MKK][14] = 50,
-	[0][1][2][0][RTW89_IC][14] = 52,
-	[0][1][2][0][RTW89_KCC][14] = 68,
-	[0][1][2][0][RTW89_ACMA][14] = 46,
-	[0][1][2][0][RTW89_CHILE][14] = 42,
-	[0][1][2][0][RTW89_UKRAINE][14] = 40,
-	[0][1][2][0][RTW89_MEXICO][14] = 68,
-	[0][1][2][0][RTW89_CN][14] = 46,
-	[0][1][2][0][RTW89_QATAR][14] = 46,
-	[0][1][2][0][RTW89_FCC][15] = 68,
-	[0][1][2][0][RTW89_ETSI][15] = 46,
-	[0][1][2][0][RTW89_MKK][15] = 70,
-	[0][1][2][0][RTW89_IC][15] = 68,
-	[0][1][2][0][RTW89_KCC][15] = 66,
-	[0][1][2][0][RTW89_ACMA][15] = 46,
-	[0][1][2][0][RTW89_CHILE][15] = 42,
-	[0][1][2][0][RTW89_UKRAINE][15] = 40,
-	[0][1][2][0][RTW89_MEXICO][15] = 68,
-	[0][1][2][0][RTW89_CN][15] = 127,
-	[0][1][2][0][RTW89_QATAR][15] = 40,
-	[0][1][2][0][RTW89_FCC][17] = 68,
-	[0][1][2][0][RTW89_ETSI][17] = 46,
-	[0][1][2][0][RTW89_MKK][17] = 70,
-	[0][1][2][0][RTW89_IC][17] = 68,
-	[0][1][2][0][RTW89_KCC][17] = 66,
-	[0][1][2][0][RTW89_ACMA][17] = 46,
-	[0][1][2][0][RTW89_CHILE][17] = 42,
-	[0][1][2][0][RTW89_UKRAINE][17] = 40,
-	[0][1][2][0][RTW89_MEXICO][17] = 68,
-	[0][1][2][0][RTW89_CN][17] = 127,
-	[0][1][2][0][RTW89_QATAR][17] = 40,
-	[0][1][2][0][RTW89_FCC][19] = 68,
-	[0][1][2][0][RTW89_ETSI][19] = 46,
-	[0][1][2][0][RTW89_MKK][19] = 70,
-	[0][1][2][0][RTW89_IC][19] = 68,
-	[0][1][2][0][RTW89_KCC][19] = 66,
-	[0][1][2][0][RTW89_ACMA][19] = 46,
-	[0][1][2][0][RTW89_CHILE][19] = 42,
-	[0][1][2][0][RTW89_UKRAINE][19] = 40,
-	[0][1][2][0][RTW89_MEXICO][19] = 68,
-	[0][1][2][0][RTW89_CN][19] = 127,
-	[0][1][2][0][RTW89_QATAR][19] = 40,
-	[0][1][2][0][RTW89_FCC][21] = 68,
-	[0][1][2][0][RTW89_ETSI][21] = 46,
-	[0][1][2][0][RTW89_MKK][21] = 70,
-	[0][1][2][0][RTW89_IC][21] = 68,
-	[0][1][2][0][RTW89_KCC][21] = 66,
-	[0][1][2][0][RTW89_ACMA][21] = 46,
-	[0][1][2][0][RTW89_CHILE][21] = 42,
-	[0][1][2][0][RTW89_UKRAINE][21] = 40,
-	[0][1][2][0][RTW89_MEXICO][21] = 68,
-	[0][1][2][0][RTW89_CN][21] = 127,
-	[0][1][2][0][RTW89_QATAR][21] = 40,
-	[0][1][2][0][RTW89_FCC][23] = 68,
-	[0][1][2][0][RTW89_ETSI][23] = 46,
-	[0][1][2][0][RTW89_MKK][23] = 70,
-	[0][1][2][0][RTW89_IC][23] = 68,
-	[0][1][2][0][RTW89_KCC][23] = 66,
-	[0][1][2][0][RTW89_ACMA][23] = 46,
-	[0][1][2][0][RTW89_CHILE][23] = 42,
-	[0][1][2][0][RTW89_UKRAINE][23] = 40,
-	[0][1][2][0][RTW89_MEXICO][23] = 68,
-	[0][1][2][0][RTW89_CN][23] = 127,
-	[0][1][2][0][RTW89_QATAR][23] = 40,
-	[0][1][2][0][RTW89_FCC][25] = 68,
-	[0][1][2][0][RTW89_ETSI][25] = 46,
-	[0][1][2][0][RTW89_MKK][25] = 70,
-	[0][1][2][0][RTW89_IC][25] = 127,
-	[0][1][2][0][RTW89_KCC][25] = 66,
-	[0][1][2][0][RTW89_ACMA][25] = 127,
-	[0][1][2][0][RTW89_CHILE][25] = 42,
-	[0][1][2][0][RTW89_UKRAINE][25] = 40,
-	[0][1][2][0][RTW89_MEXICO][25] = 68,
-	[0][1][2][0][RTW89_CN][25] = 127,
-	[0][1][2][0][RTW89_QATAR][25] = 40,
-	[0][1][2][0][RTW89_FCC][27] = 68,
-	[0][1][2][0][RTW89_ETSI][27] = 46,
-	[0][1][2][0][RTW89_MKK][27] = 70,
-	[0][1][2][0][RTW89_IC][27] = 127,
-	[0][1][2][0][RTW89_KCC][27] = 66,
-	[0][1][2][0][RTW89_ACMA][27] = 127,
-	[0][1][2][0][RTW89_CHILE][27] = 42,
-	[0][1][2][0][RTW89_UKRAINE][27] = 40,
-	[0][1][2][0][RTW89_MEXICO][27] = 68,
-	[0][1][2][0][RTW89_CN][27] = 127,
-	[0][1][2][0][RTW89_QATAR][27] = 40,
-	[0][1][2][0][RTW89_FCC][29] = 68,
-	[0][1][2][0][RTW89_ETSI][29] = 46,
-	[0][1][2][0][RTW89_MKK][29] = 70,
-	[0][1][2][0][RTW89_IC][29] = 127,
-	[0][1][2][0][RTW89_KCC][29] = 66,
-	[0][1][2][0][RTW89_ACMA][29] = 127,
-	[0][1][2][0][RTW89_CHILE][29] = 42,
-	[0][1][2][0][RTW89_UKRAINE][29] = 40,
-	[0][1][2][0][RTW89_MEXICO][29] = 68,
-	[0][1][2][0][RTW89_CN][29] = 127,
-	[0][1][2][0][RTW89_QATAR][29] = 40,
-	[0][1][2][0][RTW89_FCC][31] = 68,
-	[0][1][2][0][RTW89_ETSI][31] = 46,
-	[0][1][2][0][RTW89_MKK][31] = 70,
-	[0][1][2][0][RTW89_IC][31] = 68,
-	[0][1][2][0][RTW89_KCC][31] = 66,
-	[0][1][2][0][RTW89_ACMA][31] = 46,
-	[0][1][2][0][RTW89_CHILE][31] = 42,
-	[0][1][2][0][RTW89_UKRAINE][31] = 40,
-	[0][1][2][0][RTW89_MEXICO][31] = 68,
-	[0][1][2][0][RTW89_CN][31] = 127,
-	[0][1][2][0][RTW89_QATAR][31] = 40,
-	[0][1][2][0][RTW89_FCC][33] = 68,
-	[0][1][2][0][RTW89_ETSI][33] = 46,
-	[0][1][2][0][RTW89_MKK][33] = 70,
-	[0][1][2][0][RTW89_IC][33] = 68,
-	[0][1][2][0][RTW89_KCC][33] = 66,
-	[0][1][2][0][RTW89_ACMA][33] = 46,
-	[0][1][2][0][RTW89_CHILE][33] = 42,
-	[0][1][2][0][RTW89_UKRAINE][33] = 40,
-	[0][1][2][0][RTW89_MEXICO][33] = 68,
-	[0][1][2][0][RTW89_CN][33] = 127,
-	[0][1][2][0][RTW89_QATAR][33] = 40,
-	[0][1][2][0][RTW89_FCC][35] = 64,
-	[0][1][2][0][RTW89_ETSI][35] = 46,
-	[0][1][2][0][RTW89_MKK][35] = 70,
-	[0][1][2][0][RTW89_IC][35] = 64,
-	[0][1][2][0][RTW89_KCC][35] = 66,
-	[0][1][2][0][RTW89_ACMA][35] = 46,
-	[0][1][2][0][RTW89_CHILE][35] = 42,
-	[0][1][2][0][RTW89_UKRAINE][35] = 40,
-	[0][1][2][0][RTW89_MEXICO][35] = 64,
-	[0][1][2][0][RTW89_CN][35] = 127,
-	[0][1][2][0][RTW89_QATAR][35] = 40,
-	[0][1][2][0][RTW89_FCC][37] = 68,
-	[0][1][2][0][RTW89_ETSI][37] = 127,
-	[0][1][2][0][RTW89_MKK][37] = 70,
-	[0][1][2][0][RTW89_IC][37] = 68,
-	[0][1][2][0][RTW89_KCC][37] = 66,
-	[0][1][2][0][RTW89_ACMA][37] = 68,
-	[0][1][2][0][RTW89_CHILE][37] = 42,
-	[0][1][2][0][RTW89_UKRAINE][37] = 127,
-	[0][1][2][0][RTW89_MEXICO][37] = 68,
-	[0][1][2][0][RTW89_CN][37] = 127,
-	[0][1][2][0][RTW89_QATAR][37] = 127,
-	[0][1][2][0][RTW89_FCC][38] = 76,
-	[0][1][2][0][RTW89_ETSI][38] = 16,
-	[0][1][2][0][RTW89_MKK][38] = 127,
-	[0][1][2][0][RTW89_IC][38] = 76,
-	[0][1][2][0][RTW89_KCC][38] = 66,
-	[0][1][2][0][RTW89_ACMA][38] = 76,
-	[0][1][2][0][RTW89_CHILE][38] = 42,
-	[0][1][2][0][RTW89_UKRAINE][38] = 16,
-	[0][1][2][0][RTW89_MEXICO][38] = 76,
-	[0][1][2][0][RTW89_CN][38] = 68,
-	[0][1][2][0][RTW89_QATAR][38] = 16,
-	[0][1][2][0][RTW89_FCC][40] = 76,
-	[0][1][2][0][RTW89_ETSI][40] = 16,
-	[0][1][2][0][RTW89_MKK][40] = 127,
-	[0][1][2][0][RTW89_IC][40] = 76,
-	[0][1][2][0][RTW89_KCC][40] = 66,
-	[0][1][2][0][RTW89_ACMA][40] = 76,
-	[0][1][2][0][RTW89_CHILE][40] = 42,
-	[0][1][2][0][RTW89_UKRAINE][40] = 16,
-	[0][1][2][0][RTW89_MEXICO][40] = 76,
-	[0][1][2][0][RTW89_CN][40] = 76,
-	[0][1][2][0][RTW89_QATAR][40] = 16,
-	[0][1][2][0][RTW89_FCC][42] = 76,
-	[0][1][2][0][RTW89_ETSI][42] = 16,
-	[0][1][2][0][RTW89_MKK][42] = 127,
-	[0][1][2][0][RTW89_IC][42] = 76,
-	[0][1][2][0][RTW89_KCC][42] = 66,
-	[0][1][2][0][RTW89_ACMA][42] = 76,
-	[0][1][2][0][RTW89_CHILE][42] = 42,
-	[0][1][2][0][RTW89_UKRAINE][42] = 16,
-	[0][1][2][0][RTW89_MEXICO][42] = 76,
-	[0][1][2][0][RTW89_CN][42] = 76,
-	[0][1][2][0][RTW89_QATAR][42] = 16,
-	[0][1][2][0][RTW89_FCC][44] = 76,
-	[0][1][2][0][RTW89_ETSI][44] = 16,
-	[0][1][2][0][RTW89_MKK][44] = 127,
-	[0][1][2][0][RTW89_IC][44] = 76,
-	[0][1][2][0][RTW89_KCC][44] = 66,
-	[0][1][2][0][RTW89_ACMA][44] = 76,
-	[0][1][2][0][RTW89_CHILE][44] = 42,
-	[0][1][2][0][RTW89_UKRAINE][44] = 16,
-	[0][1][2][0][RTW89_MEXICO][44] = 76,
-	[0][1][2][0][RTW89_CN][44] = 76,
-	[0][1][2][0][RTW89_QATAR][44] = 16,
-	[0][1][2][0][RTW89_FCC][46] = 76,
-	[0][1][2][0][RTW89_ETSI][46] = 16,
-	[0][1][2][0][RTW89_MKK][46] = 127,
-	[0][1][2][0][RTW89_IC][46] = 76,
-	[0][1][2][0][RTW89_KCC][46] = 66,
-	[0][1][2][0][RTW89_ACMA][46] = 76,
-	[0][1][2][0][RTW89_CHILE][46] = 42,
-	[0][1][2][0][RTW89_UKRAINE][46] = 16,
-	[0][1][2][0][RTW89_MEXICO][46] = 76,
-	[0][1][2][0][RTW89_CN][46] = 76,
-	[0][1][2][0][RTW89_QATAR][46] = 16,
-	[0][1][2][1][RTW89_FCC][0] = 68,
-	[0][1][2][1][RTW89_ETSI][0] = 34,
-	[0][1][2][1][RTW89_MKK][0] = 50,
-	[0][1][2][1][RTW89_IC][0] = 38,
-	[0][1][2][1][RTW89_KCC][0] = 68,
-	[0][1][2][1][RTW89_ACMA][0] = 34,
-	[0][1][2][1][RTW89_CHILE][0] = 6,
-	[0][1][2][1][RTW89_UKRAINE][0] = 28,
-	[0][1][2][1][RTW89_MEXICO][0] = 50,
-	[0][1][2][1][RTW89_CN][0] = 34,
-	[0][1][2][1][RTW89_QATAR][0] = 34,
-	[0][1][2][1][RTW89_FCC][2] = 68,
-	[0][1][2][1][RTW89_ETSI][2] = 34,
-	[0][1][2][1][RTW89_MKK][2] = 50,
-	[0][1][2][1][RTW89_IC][2] = 38,
-	[0][1][2][1][RTW89_KCC][2] = 68,
-	[0][1][2][1][RTW89_ACMA][2] = 34,
-	[0][1][2][1][RTW89_CHILE][2] = 6,
-	[0][1][2][1][RTW89_UKRAINE][2] = 28,
-	[0][1][2][1][RTW89_MEXICO][2] = 50,
-	[0][1][2][1][RTW89_CN][2] = 34,
-	[0][1][2][1][RTW89_QATAR][2] = 34,
-	[0][1][2][1][RTW89_FCC][4] = 68,
-	[0][1][2][1][RTW89_ETSI][4] = 34,
-	[0][1][2][1][RTW89_MKK][4] = 50,
-	[0][1][2][1][RTW89_IC][4] = 38,
-	[0][1][2][1][RTW89_KCC][4] = 68,
-	[0][1][2][1][RTW89_ACMA][4] = 34,
-	[0][1][2][1][RTW89_CHILE][4] = 6,
-	[0][1][2][1][RTW89_UKRAINE][4] = 28,
-	[0][1][2][1][RTW89_MEXICO][4] = 50,
-	[0][1][2][1][RTW89_CN][4] = 34,
-	[0][1][2][1][RTW89_QATAR][4] = 34,
-	[0][1][2][1][RTW89_FCC][6] = 68,
-	[0][1][2][1][RTW89_ETSI][6] = 34,
-	[0][1][2][1][RTW89_MKK][6] = 50,
-	[0][1][2][1][RTW89_IC][6] = 38,
-	[0][1][2][1][RTW89_KCC][6] = 38,
-	[0][1][2][1][RTW89_ACMA][6] = 34,
-	[0][1][2][1][RTW89_CHILE][6] = 6,
-	[0][1][2][1][RTW89_UKRAINE][6] = 28,
-	[0][1][2][1][RTW89_MEXICO][6] = 50,
-	[0][1][2][1][RTW89_CN][6] = 34,
-	[0][1][2][1][RTW89_QATAR][6] = 34,
-	[0][1][2][1][RTW89_FCC][8] = 68,
-	[0][1][2][1][RTW89_ETSI][8] = 34,
-	[0][1][2][1][RTW89_MKK][8] = 50,
-	[0][1][2][1][RTW89_IC][8] = 38,
-	[0][1][2][1][RTW89_KCC][8] = 68,
-	[0][1][2][1][RTW89_ACMA][8] = 34,
-	[0][1][2][1][RTW89_CHILE][8] = 30,
-	[0][1][2][1][RTW89_UKRAINE][8] = 28,
-	[0][1][2][1][RTW89_MEXICO][8] = 68,
-	[0][1][2][1][RTW89_CN][8] = 34,
-	[0][1][2][1][RTW89_QATAR][8] = 34,
-	[0][1][2][1][RTW89_FCC][10] = 68,
-	[0][1][2][1][RTW89_ETSI][10] = 34,
-	[0][1][2][1][RTW89_MKK][10] = 50,
-	[0][1][2][1][RTW89_IC][10] = 38,
-	[0][1][2][1][RTW89_KCC][10] = 68,
-	[0][1][2][1][RTW89_ACMA][10] = 34,
-	[0][1][2][1][RTW89_CHILE][10] = 30,
-	[0][1][2][1][RTW89_UKRAINE][10] = 28,
-	[0][1][2][1][RTW89_MEXICO][10] = 68,
-	[0][1][2][1][RTW89_CN][10] = 34,
-	[0][1][2][1][RTW89_QATAR][10] = 34,
-	[0][1][2][1][RTW89_FCC][12] = 68,
-	[0][1][2][1][RTW89_ETSI][12] = 34,
-	[0][1][2][1][RTW89_MKK][12] = 50,
-	[0][1][2][1][RTW89_IC][12] = 38,
-	[0][1][2][1][RTW89_KCC][12] = 68,
-	[0][1][2][1][RTW89_ACMA][12] = 34,
-	[0][1][2][1][RTW89_CHILE][12] = 30,
-	[0][1][2][1][RTW89_UKRAINE][12] = 28,
-	[0][1][2][1][RTW89_MEXICO][12] = 68,
-	[0][1][2][1][RTW89_CN][12] = 34,
-	[0][1][2][1][RTW89_QATAR][12] = 34,
-	[0][1][2][1][RTW89_FCC][14] = 68,
-	[0][1][2][1][RTW89_ETSI][14] = 34,
-	[0][1][2][1][RTW89_MKK][14] = 50,
-	[0][1][2][1][RTW89_IC][14] = 38,
-	[0][1][2][1][RTW89_KCC][14] = 68,
-	[0][1][2][1][RTW89_ACMA][14] = 34,
-	[0][1][2][1][RTW89_CHILE][14] = 30,
-	[0][1][2][1][RTW89_UKRAINE][14] = 28,
-	[0][1][2][1][RTW89_MEXICO][14] = 68,
-	[0][1][2][1][RTW89_CN][14] = 34,
-	[0][1][2][1][RTW89_QATAR][14] = 34,
-	[0][1][2][1][RTW89_FCC][15] = 68,
-	[0][1][2][1][RTW89_ETSI][15] = 34,
-	[0][1][2][1][RTW89_MKK][15] = 70,
-	[0][1][2][1][RTW89_IC][15] = 62,
-	[0][1][2][1][RTW89_KCC][15] = 66,
-	[0][1][2][1][RTW89_ACMA][15] = 34,
-	[0][1][2][1][RTW89_CHILE][15] = 30,
-	[0][1][2][1][RTW89_UKRAINE][15] = 28,
-	[0][1][2][1][RTW89_MEXICO][15] = 68,
-	[0][1][2][1][RTW89_CN][15] = 127,
-	[0][1][2][1][RTW89_QATAR][15] = 28,
-	[0][1][2][1][RTW89_FCC][17] = 68,
-	[0][1][2][1][RTW89_ETSI][17] = 34,
-	[0][1][2][1][RTW89_MKK][17] = 70,
-	[0][1][2][1][RTW89_IC][17] = 62,
-	[0][1][2][1][RTW89_KCC][17] = 66,
-	[0][1][2][1][RTW89_ACMA][17] = 34,
-	[0][1][2][1][RTW89_CHILE][17] = 30,
-	[0][1][2][1][RTW89_UKRAINE][17] = 28,
-	[0][1][2][1][RTW89_MEXICO][17] = 68,
-	[0][1][2][1][RTW89_CN][17] = 127,
-	[0][1][2][1][RTW89_QATAR][17] = 28,
-	[0][1][2][1][RTW89_FCC][19] = 68,
-	[0][1][2][1][RTW89_ETSI][19] = 34,
-	[0][1][2][1][RTW89_MKK][19] = 70,
-	[0][1][2][1][RTW89_IC][19] = 62,
-	[0][1][2][1][RTW89_KCC][19] = 66,
-	[0][1][2][1][RTW89_ACMA][19] = 34,
-	[0][1][2][1][RTW89_CHILE][19] = 30,
-	[0][1][2][1][RTW89_UKRAINE][19] = 28,
-	[0][1][2][1][RTW89_MEXICO][19] = 68,
-	[0][1][2][1][RTW89_CN][19] = 127,
-	[0][1][2][1][RTW89_QATAR][19] = 28,
-	[0][1][2][1][RTW89_FCC][21] = 68,
-	[0][1][2][1][RTW89_ETSI][21] = 34,
-	[0][1][2][1][RTW89_MKK][21] = 70,
-	[0][1][2][1][RTW89_IC][21] = 62,
-	[0][1][2][1][RTW89_KCC][21] = 66,
-	[0][1][2][1][RTW89_ACMA][21] = 34,
-	[0][1][2][1][RTW89_CHILE][21] = 30,
-	[0][1][2][1][RTW89_UKRAINE][21] = 28,
-	[0][1][2][1][RTW89_MEXICO][21] = 68,
-	[0][1][2][1][RTW89_CN][21] = 127,
-	[0][1][2][1][RTW89_QATAR][21] = 28,
-	[0][1][2][1][RTW89_FCC][23] = 68,
-	[0][1][2][1][RTW89_ETSI][23] = 34,
-	[0][1][2][1][RTW89_MKK][23] = 70,
-	[0][1][2][1][RTW89_IC][23] = 62,
-	[0][1][2][1][RTW89_KCC][23] = 66,
-	[0][1][2][1][RTW89_ACMA][23] = 34,
-	[0][1][2][1][RTW89_CHILE][23] = 30,
-	[0][1][2][1][RTW89_UKRAINE][23] = 28,
-	[0][1][2][1][RTW89_MEXICO][23] = 68,
-	[0][1][2][1][RTW89_CN][23] = 127,
-	[0][1][2][1][RTW89_QATAR][23] = 28,
-	[0][1][2][1][RTW89_FCC][25] = 68,
-	[0][1][2][1][RTW89_ETSI][25] = 34,
-	[0][1][2][1][RTW89_MKK][25] = 70,
-	[0][1][2][1][RTW89_IC][25] = 127,
-	[0][1][2][1][RTW89_KCC][25] = 66,
-	[0][1][2][1][RTW89_ACMA][25] = 127,
-	[0][1][2][1][RTW89_CHILE][25] = 30,
-	[0][1][2][1][RTW89_UKRAINE][25] = 28,
-	[0][1][2][1][RTW89_MEXICO][25] = 68,
-	[0][1][2][1][RTW89_CN][25] = 127,
-	[0][1][2][1][RTW89_QATAR][25] = 28,
-	[0][1][2][1][RTW89_FCC][27] = 68,
-	[0][1][2][1][RTW89_ETSI][27] = 34,
-	[0][1][2][1][RTW89_MKK][27] = 70,
-	[0][1][2][1][RTW89_IC][27] = 127,
-	[0][1][2][1][RTW89_KCC][27] = 66,
-	[0][1][2][1][RTW89_ACMA][27] = 127,
-	[0][1][2][1][RTW89_CHILE][27] = 30,
-	[0][1][2][1][RTW89_UKRAINE][27] = 28,
-	[0][1][2][1][RTW89_MEXICO][27] = 68,
-	[0][1][2][1][RTW89_CN][27] = 127,
-	[0][1][2][1][RTW89_QATAR][27] = 28,
-	[0][1][2][1][RTW89_FCC][29] = 68,
-	[0][1][2][1][RTW89_ETSI][29] = 34,
-	[0][1][2][1][RTW89_MKK][29] = 70,
-	[0][1][2][1][RTW89_IC][29] = 127,
-	[0][1][2][1][RTW89_KCC][29] = 66,
-	[0][1][2][1][RTW89_ACMA][29] = 127,
-	[0][1][2][1][RTW89_CHILE][29] = 30,
-	[0][1][2][1][RTW89_UKRAINE][29] = 28,
-	[0][1][2][1][RTW89_MEXICO][29] = 68,
-	[0][1][2][1][RTW89_CN][29] = 127,
-	[0][1][2][1][RTW89_QATAR][29] = 28,
-	[0][1][2][1][RTW89_FCC][31] = 68,
-	[0][1][2][1][RTW89_ETSI][31] = 34,
-	[0][1][2][1][RTW89_MKK][31] = 70,
-	[0][1][2][1][RTW89_IC][31] = 62,
-	[0][1][2][1][RTW89_KCC][31] = 66,
-	[0][1][2][1][RTW89_ACMA][31] = 34,
-	[0][1][2][1][RTW89_CHILE][31] = 30,
-	[0][1][2][1][RTW89_UKRAINE][31] = 28,
-	[0][1][2][1][RTW89_MEXICO][31] = 68,
-	[0][1][2][1][RTW89_CN][31] = 127,
-	[0][1][2][1][RTW89_QATAR][31] = 28,
-	[0][1][2][1][RTW89_FCC][33] = 68,
-	[0][1][2][1][RTW89_ETSI][33] = 34,
-	[0][1][2][1][RTW89_MKK][33] = 70,
-	[0][1][2][1][RTW89_IC][33] = 62,
-	[0][1][2][1][RTW89_KCC][33] = 66,
-	[0][1][2][1][RTW89_ACMA][33] = 34,
-	[0][1][2][1][RTW89_CHILE][33] = 30,
-	[0][1][2][1][RTW89_UKRAINE][33] = 28,
-	[0][1][2][1][RTW89_MEXICO][33] = 68,
-	[0][1][2][1][RTW89_CN][33] = 127,
-	[0][1][2][1][RTW89_QATAR][33] = 28,
-	[0][1][2][1][RTW89_FCC][35] = 64,
-	[0][1][2][1][RTW89_ETSI][35] = 34,
-	[0][1][2][1][RTW89_MKK][35] = 70,
-	[0][1][2][1][RTW89_IC][35] = 62,
-	[0][1][2][1][RTW89_KCC][35] = 66,
-	[0][1][2][1][RTW89_ACMA][35] = 34,
-	[0][1][2][1][RTW89_CHILE][35] = 30,
-	[0][1][2][1][RTW89_UKRAINE][35] = 28,
-	[0][1][2][1][RTW89_MEXICO][35] = 64,
-	[0][1][2][1][RTW89_CN][35] = 127,
-	[0][1][2][1][RTW89_QATAR][35] = 28,
-	[0][1][2][1][RTW89_FCC][37] = 68,
-	[0][1][2][1][RTW89_ETSI][37] = 127,
-	[0][1][2][1][RTW89_MKK][37] = 70,
-	[0][1][2][1][RTW89_IC][37] = 62,
-	[0][1][2][1][RTW89_KCC][37] = 66,
-	[0][1][2][1][RTW89_ACMA][37] = 68,
-	[0][1][2][1][RTW89_CHILE][37] = 30,
-	[0][1][2][1][RTW89_UKRAINE][37] = 127,
-	[0][1][2][1][RTW89_MEXICO][37] = 68,
-	[0][1][2][1][RTW89_CN][37] = 127,
-	[0][1][2][1][RTW89_QATAR][37] = 127,
-	[0][1][2][1][RTW89_FCC][38] = 76,
-	[0][1][2][1][RTW89_ETSI][38] = 4,
-	[0][1][2][1][RTW89_MKK][38] = 127,
-	[0][1][2][1][RTW89_IC][38] = 76,
-	[0][1][2][1][RTW89_KCC][38] = 66,
-	[0][1][2][1][RTW89_ACMA][38] = 76,
-	[0][1][2][1][RTW89_CHILE][38] = 30,
-	[0][1][2][1][RTW89_UKRAINE][38] = 4,
-	[0][1][2][1][RTW89_MEXICO][38] = 76,
-	[0][1][2][1][RTW89_CN][38] = 68,
-	[0][1][2][1][RTW89_QATAR][38] = 4,
-	[0][1][2][1][RTW89_FCC][40] = 76,
-	[0][1][2][1][RTW89_ETSI][40] = 4,
-	[0][1][2][1][RTW89_MKK][40] = 127,
-	[0][1][2][1][RTW89_IC][40] = 76,
-	[0][1][2][1][RTW89_KCC][40] = 66,
-	[0][1][2][1][RTW89_ACMA][40] = 76,
-	[0][1][2][1][RTW89_CHILE][40] = 30,
-	[0][1][2][1][RTW89_UKRAINE][40] = 4,
-	[0][1][2][1][RTW89_MEXICO][40] = 76,
-	[0][1][2][1][RTW89_CN][40] = 70,
-	[0][1][2][1][RTW89_QATAR][40] = 4,
-	[0][1][2][1][RTW89_FCC][42] = 76,
-	[0][1][2][1][RTW89_ETSI][42] = 4,
-	[0][1][2][1][RTW89_MKK][42] = 127,
-	[0][1][2][1][RTW89_IC][42] = 76,
-	[0][1][2][1][RTW89_KCC][42] = 66,
-	[0][1][2][1][RTW89_ACMA][42] = 76,
-	[0][1][2][1][RTW89_CHILE][42] = 30,
-	[0][1][2][1][RTW89_UKRAINE][42] = 4,
-	[0][1][2][1][RTW89_MEXICO][42] = 76,
-	[0][1][2][1][RTW89_CN][42] = 70,
-	[0][1][2][1][RTW89_QATAR][42] = 4,
-	[0][1][2][1][RTW89_FCC][44] = 76,
-	[0][1][2][1][RTW89_ETSI][44] = 4,
-	[0][1][2][1][RTW89_MKK][44] = 127,
-	[0][1][2][1][RTW89_IC][44] = 76,
-	[0][1][2][1][RTW89_KCC][44] = 66,
-	[0][1][2][1][RTW89_ACMA][44] = 76,
-	[0][1][2][1][RTW89_CHILE][44] = 30,
-	[0][1][2][1][RTW89_UKRAINE][44] = 4,
-	[0][1][2][1][RTW89_MEXICO][44] = 76,
-	[0][1][2][1][RTW89_CN][44] = 70,
-	[0][1][2][1][RTW89_QATAR][44] = 4,
-	[0][1][2][1][RTW89_FCC][46] = 76,
-	[0][1][2][1][RTW89_ETSI][46] = 4,
-	[0][1][2][1][RTW89_MKK][46] = 127,
-	[0][1][2][1][RTW89_IC][46] = 76,
-	[0][1][2][1][RTW89_KCC][46] = 66,
-	[0][1][2][1][RTW89_ACMA][46] = 76,
-	[0][1][2][1][RTW89_CHILE][46] = 30,
-	[0][1][2][1][RTW89_UKRAINE][46] = 4,
-	[0][1][2][1][RTW89_MEXICO][46] = 76,
-	[0][1][2][1][RTW89_CN][46] = 70,
-	[0][1][2][1][RTW89_QATAR][46] = 4,
-	[1][0][2][0][RTW89_FCC][1] = 68,
-	[1][0][2][0][RTW89_ETSI][1] = 64,
-	[1][0][2][0][RTW89_MKK][1] = 62,
-	[1][0][2][0][RTW89_IC][1] = 64,
-	[1][0][2][0][RTW89_KCC][1] = 72,
-	[1][0][2][0][RTW89_ACMA][1] = 64,
-	[1][0][2][0][RTW89_CHILE][1] = 30,
-	[1][0][2][0][RTW89_UKRAINE][1] = 52,
-	[1][0][2][0][RTW89_MEXICO][1] = 62,
-	[1][0][2][0][RTW89_CN][1] = 64,
-	[1][0][2][0][RTW89_QATAR][1] = 64,
-	[1][0][2][0][RTW89_FCC][5] = 72,
-	[1][0][2][0][RTW89_ETSI][5] = 64,
-	[1][0][2][0][RTW89_MKK][5] = 62,
-	[1][0][2][0][RTW89_IC][5] = 64,
-	[1][0][2][0][RTW89_KCC][5] = 72,
-	[1][0][2][0][RTW89_ACMA][5] = 64,
-	[1][0][2][0][RTW89_CHILE][5] = 30,
-	[1][0][2][0][RTW89_UKRAINE][5] = 52,
-	[1][0][2][0][RTW89_MEXICO][5] = 62,
-	[1][0][2][0][RTW89_CN][5] = 64,
-	[1][0][2][0][RTW89_QATAR][5] = 64,
-	[1][0][2][0][RTW89_FCC][9] = 72,
-	[1][0][2][0][RTW89_ETSI][9] = 64,
-	[1][0][2][0][RTW89_MKK][9] = 62,
-	[1][0][2][0][RTW89_IC][9] = 64,
-	[1][0][2][0][RTW89_KCC][9] = 72,
-	[1][0][2][0][RTW89_ACMA][9] = 64,
-	[1][0][2][0][RTW89_CHILE][9] = 54,
-	[1][0][2][0][RTW89_UKRAINE][9] = 52,
-	[1][0][2][0][RTW89_MEXICO][9] = 72,
-	[1][0][2][0][RTW89_CN][9] = 64,
-	[1][0][2][0][RTW89_QATAR][9] = 64,
-	[1][0][2][0][RTW89_FCC][13] = 66,
-	[1][0][2][0][RTW89_ETSI][13] = 64,
-	[1][0][2][0][RTW89_MKK][13] = 62,
-	[1][0][2][0][RTW89_IC][13] = 64,
-	[1][0][2][0][RTW89_KCC][13] = 68,
-	[1][0][2][0][RTW89_ACMA][13] = 64,
-	[1][0][2][0][RTW89_CHILE][13] = 54,
-	[1][0][2][0][RTW89_UKRAINE][13] = 52,
-	[1][0][2][0][RTW89_MEXICO][13] = 66,
-	[1][0][2][0][RTW89_CN][13] = 64,
-	[1][0][2][0][RTW89_QATAR][13] = 64,
-	[1][0][2][0][RTW89_FCC][16] = 62,
-	[1][0][2][0][RTW89_ETSI][16] = 64,
-	[1][0][2][0][RTW89_MKK][16] = 72,
-	[1][0][2][0][RTW89_IC][16] = 62,
-	[1][0][2][0][RTW89_KCC][16] = 72,
-	[1][0][2][0][RTW89_ACMA][16] = 64,
-	[1][0][2][0][RTW89_CHILE][16] = 54,
-	[1][0][2][0][RTW89_UKRAINE][16] = 52,
-	[1][0][2][0][RTW89_MEXICO][16] = 62,
-	[1][0][2][0][RTW89_CN][16] = 127,
-	[1][0][2][0][RTW89_QATAR][16] = 52,
-	[1][0][2][0][RTW89_FCC][20] = 72,
-	[1][0][2][0][RTW89_ETSI][20] = 64,
-	[1][0][2][0][RTW89_MKK][20] = 72,
-	[1][0][2][0][RTW89_IC][20] = 72,
-	[1][0][2][0][RTW89_KCC][20] = 72,
-	[1][0][2][0][RTW89_ACMA][20] = 64,
-	[1][0][2][0][RTW89_CHILE][20] = 54,
-	[1][0][2][0][RTW89_UKRAINE][20] = 52,
-	[1][0][2][0][RTW89_MEXICO][20] = 72,
-	[1][0][2][0][RTW89_CN][20] = 127,
-	[1][0][2][0][RTW89_QATAR][20] = 52,
-	[1][0][2][0][RTW89_FCC][24] = 72,
-	[1][0][2][0][RTW89_ETSI][24] = 64,
-	[1][0][2][0][RTW89_MKK][24] = 72,
-	[1][0][2][0][RTW89_IC][24] = 127,
-	[1][0][2][0][RTW89_KCC][24] = 72,
-	[1][0][2][0][RTW89_ACMA][24] = 127,
-	[1][0][2][0][RTW89_CHILE][24] = 54,
-	[1][0][2][0][RTW89_UKRAINE][24] = 52,
-	[1][0][2][0][RTW89_MEXICO][24] = 72,
-	[1][0][2][0][RTW89_CN][24] = 127,
-	[1][0][2][0][RTW89_QATAR][24] = 52,
-	[1][0][2][0][RTW89_FCC][28] = 72,
-	[1][0][2][0][RTW89_ETSI][28] = 64,
-	[1][0][2][0][RTW89_MKK][28] = 72,
-	[1][0][2][0][RTW89_IC][28] = 127,
-	[1][0][2][0][RTW89_KCC][28] = 72,
-	[1][0][2][0][RTW89_ACMA][28] = 127,
-	[1][0][2][0][RTW89_CHILE][28] = 54,
-	[1][0][2][0][RTW89_UKRAINE][28] = 52,
-	[1][0][2][0][RTW89_MEXICO][28] = 72,
-	[1][0][2][0][RTW89_CN][28] = 127,
-	[1][0][2][0][RTW89_QATAR][28] = 52,
-	[1][0][2][0][RTW89_FCC][32] = 72,
-	[1][0][2][0][RTW89_ETSI][32] = 64,
-	[1][0][2][0][RTW89_MKK][32] = 72,
-	[1][0][2][0][RTW89_IC][32] = 72,
-	[1][0][2][0][RTW89_KCC][32] = 72,
-	[1][0][2][0][RTW89_ACMA][32] = 64,
-	[1][0][2][0][RTW89_CHILE][32] = 54,
-	[1][0][2][0][RTW89_UKRAINE][32] = 52,
-	[1][0][2][0][RTW89_MEXICO][32] = 72,
-	[1][0][2][0][RTW89_CN][32] = 127,
-	[1][0][2][0][RTW89_QATAR][32] = 52,
-	[1][0][2][0][RTW89_FCC][36] = 72,
-	[1][0][2][0][RTW89_ETSI][36] = 127,
-	[1][0][2][0][RTW89_MKK][36] = 72,
-	[1][0][2][0][RTW89_IC][36] = 72,
-	[1][0][2][0][RTW89_KCC][36] = 72,
-	[1][0][2][0][RTW89_ACMA][36] = 72,
-	[1][0][2][0][RTW89_CHILE][36] = 54,
-	[1][0][2][0][RTW89_UKRAINE][36] = 127,
-	[1][0][2][0][RTW89_MEXICO][36] = 72,
-	[1][0][2][0][RTW89_CN][36] = 127,
-	[1][0][2][0][RTW89_QATAR][36] = 127,
-	[1][0][2][0][RTW89_FCC][39] = 72,
-	[1][0][2][0][RTW89_ETSI][39] = 28,
-	[1][0][2][0][RTW89_MKK][39] = 127,
-	[1][0][2][0][RTW89_IC][39] = 72,
-	[1][0][2][0][RTW89_KCC][39] = 72,
-	[1][0][2][0][RTW89_ACMA][39] = 72,
-	[1][0][2][0][RTW89_CHILE][39] = 54,
-	[1][0][2][0][RTW89_UKRAINE][39] = 28,
-	[1][0][2][0][RTW89_MEXICO][39] = 72,
-	[1][0][2][0][RTW89_CN][39] = 68,
-	[1][0][2][0][RTW89_QATAR][39] = 28,
-	[1][0][2][0][RTW89_FCC][43] = 72,
-	[1][0][2][0][RTW89_ETSI][43] = 28,
-	[1][0][2][0][RTW89_MKK][43] = 127,
-	[1][0][2][0][RTW89_IC][43] = 72,
-	[1][0][2][0][RTW89_KCC][43] = 72,
-	[1][0][2][0][RTW89_ACMA][43] = 72,
-	[1][0][2][0][RTW89_CHILE][43] = 54,
-	[1][0][2][0][RTW89_UKRAINE][43] = 28,
-	[1][0][2][0][RTW89_MEXICO][43] = 72,
-	[1][0][2][0][RTW89_CN][43] = 72,
-	[1][0][2][0][RTW89_QATAR][43] = 28,
-	[1][1][2][0][RTW89_FCC][1] = 58,
-	[1][1][2][0][RTW89_ETSI][1] = 52,
-	[1][1][2][0][RTW89_MKK][1] = 50,
-	[1][1][2][0][RTW89_IC][1] = 52,
-	[1][1][2][0][RTW89_KCC][1] = 66,
-	[1][1][2][0][RTW89_ACMA][1] = 52,
-	[1][1][2][0][RTW89_CHILE][1] = 18,
-	[1][1][2][0][RTW89_UKRAINE][1] = 40,
-	[1][1][2][0][RTW89_MEXICO][1] = 50,
-	[1][1][2][0][RTW89_CN][1] = 52,
-	[1][1][2][0][RTW89_QATAR][1] = 52,
-	[1][1][2][0][RTW89_FCC][5] = 72,
-	[1][1][2][0][RTW89_ETSI][5] = 52,
-	[1][1][2][0][RTW89_MKK][5] = 50,
-	[1][1][2][0][RTW89_IC][5] = 52,
-	[1][1][2][0][RTW89_KCC][5] = 50,
-	[1][1][2][0][RTW89_ACMA][5] = 52,
-	[1][1][2][0][RTW89_CHILE][5] = 18,
-	[1][1][2][0][RTW89_UKRAINE][5] = 40,
-	[1][1][2][0][RTW89_MEXICO][5] = 50,
-	[1][1][2][0][RTW89_CN][5] = 52,
-	[1][1][2][0][RTW89_QATAR][5] = 52,
-	[1][1][2][0][RTW89_FCC][9] = 72,
-	[1][1][2][0][RTW89_ETSI][9] = 52,
-	[1][1][2][0][RTW89_MKK][9] = 50,
-	[1][1][2][0][RTW89_IC][9] = 52,
-	[1][1][2][0][RTW89_KCC][9] = 66,
-	[1][1][2][0][RTW89_ACMA][9] = 52,
-	[1][1][2][0][RTW89_CHILE][9] = 42,
-	[1][1][2][0][RTW89_UKRAINE][9] = 40,
-	[1][1][2][0][RTW89_MEXICO][9] = 72,
-	[1][1][2][0][RTW89_CN][9] = 52,
-	[1][1][2][0][RTW89_QATAR][9] = 52,
-	[1][1][2][0][RTW89_FCC][13] = 58,
-	[1][1][2][0][RTW89_ETSI][13] = 52,
-	[1][1][2][0][RTW89_MKK][13] = 50,
-	[1][1][2][0][RTW89_IC][13] = 52,
-	[1][1][2][0][RTW89_KCC][13] = 66,
-	[1][1][2][0][RTW89_ACMA][13] = 52,
-	[1][1][2][0][RTW89_CHILE][13] = 42,
-	[1][1][2][0][RTW89_UKRAINE][13] = 40,
-	[1][1][2][0][RTW89_MEXICO][13] = 58,
-	[1][1][2][0][RTW89_CN][13] = 52,
-	[1][1][2][0][RTW89_QATAR][13] = 52,
-	[1][1][2][0][RTW89_FCC][16] = 56,
-	[1][1][2][0][RTW89_ETSI][16] = 52,
-	[1][1][2][0][RTW89_MKK][16] = 72,
-	[1][1][2][0][RTW89_IC][16] = 56,
-	[1][1][2][0][RTW89_KCC][16] = 64,
-	[1][1][2][0][RTW89_ACMA][16] = 52,
-	[1][1][2][0][RTW89_CHILE][16] = 42,
-	[1][1][2][0][RTW89_UKRAINE][16] = 40,
-	[1][1][2][0][RTW89_MEXICO][16] = 56,
-	[1][1][2][0][RTW89_CN][16] = 127,
-	[1][1][2][0][RTW89_QATAR][16] = 40,
-	[1][1][2][0][RTW89_FCC][20] = 72,
-	[1][1][2][0][RTW89_ETSI][20] = 52,
-	[1][1][2][0][RTW89_MKK][20] = 72,
-	[1][1][2][0][RTW89_IC][20] = 72,
-	[1][1][2][0][RTW89_KCC][20] = 66,
-	[1][1][2][0][RTW89_ACMA][20] = 52,
-	[1][1][2][0][RTW89_CHILE][20] = 42,
-	[1][1][2][0][RTW89_UKRAINE][20] = 40,
-	[1][1][2][0][RTW89_MEXICO][20] = 72,
-	[1][1][2][0][RTW89_CN][20] = 127,
-	[1][1][2][0][RTW89_QATAR][20] = 40,
-	[1][1][2][0][RTW89_FCC][24] = 72,
-	[1][1][2][0][RTW89_ETSI][24] = 52,
-	[1][1][2][0][RTW89_MKK][24] = 72,
-	[1][1][2][0][RTW89_IC][24] = 127,
-	[1][1][2][0][RTW89_KCC][24] = 66,
-	[1][1][2][0][RTW89_ACMA][24] = 127,
-	[1][1][2][0][RTW89_CHILE][24] = 42,
-	[1][1][2][0][RTW89_UKRAINE][24] = 40,
-	[1][1][2][0][RTW89_MEXICO][24] = 72,
-	[1][1][2][0][RTW89_CN][24] = 127,
-	[1][1][2][0][RTW89_QATAR][24] = 40,
-	[1][1][2][0][RTW89_FCC][28] = 72,
-	[1][1][2][0][RTW89_ETSI][28] = 52,
-	[1][1][2][0][RTW89_MKK][28] = 72,
-	[1][1][2][0][RTW89_IC][28] = 127,
-	[1][1][2][0][RTW89_KCC][28] = 66,
-	[1][1][2][0][RTW89_ACMA][28] = 127,
-	[1][1][2][0][RTW89_CHILE][28] = 42,
-	[1][1][2][0][RTW89_UKRAINE][28] = 40,
-	[1][1][2][0][RTW89_MEXICO][28] = 72,
-	[1][1][2][0][RTW89_CN][28] = 127,
-	[1][1][2][0][RTW89_QATAR][28] = 40,
-	[1][1][2][0][RTW89_FCC][32] = 68,
-	[1][1][2][0][RTW89_ETSI][32] = 52,
-	[1][1][2][0][RTW89_MKK][32] = 72,
-	[1][1][2][0][RTW89_IC][32] = 68,
-	[1][1][2][0][RTW89_KCC][32] = 66,
-	[1][1][2][0][RTW89_ACMA][32] = 52,
-	[1][1][2][0][RTW89_CHILE][32] = 42,
-	[1][1][2][0][RTW89_UKRAINE][32] = 40,
-	[1][1][2][0][RTW89_MEXICO][32] = 68,
-	[1][1][2][0][RTW89_CN][32] = 127,
-	[1][1][2][0][RTW89_QATAR][32] = 40,
-	[1][1][2][0][RTW89_FCC][36] = 72,
-	[1][1][2][0][RTW89_ETSI][36] = 127,
-	[1][1][2][0][RTW89_MKK][36] = 72,
-	[1][1][2][0][RTW89_IC][36] = 72,
-	[1][1][2][0][RTW89_KCC][36] = 66,
-	[1][1][2][0][RTW89_ACMA][36] = 72,
-	[1][1][2][0][RTW89_CHILE][36] = 42,
-	[1][1][2][0][RTW89_UKRAINE][36] = 127,
-	[1][1][2][0][RTW89_MEXICO][36] = 72,
-	[1][1][2][0][RTW89_CN][36] = 127,
-	[1][1][2][0][RTW89_QATAR][36] = 127,
-	[1][1][2][0][RTW89_FCC][39] = 72,
-	[1][1][2][0][RTW89_ETSI][39] = 16,
-	[1][1][2][0][RTW89_MKK][39] = 127,
-	[1][1][2][0][RTW89_IC][39] = 72,
-	[1][1][2][0][RTW89_KCC][39] = 66,
-	[1][1][2][0][RTW89_ACMA][39] = 72,
-	[1][1][2][0][RTW89_CHILE][39] = 42,
-	[1][1][2][0][RTW89_UKRAINE][39] = 16,
-	[1][1][2][0][RTW89_MEXICO][39] = 72,
-	[1][1][2][0][RTW89_CN][39] = 68,
-	[1][1][2][0][RTW89_QATAR][39] = 16,
-	[1][1][2][0][RTW89_FCC][43] = 72,
-	[1][1][2][0][RTW89_ETSI][43] = 16,
-	[1][1][2][0][RTW89_MKK][43] = 127,
-	[1][1][2][0][RTW89_IC][43] = 72,
-	[1][1][2][0][RTW89_KCC][43] = 66,
-	[1][1][2][0][RTW89_ACMA][43] = 72,
-	[1][1][2][0][RTW89_CHILE][43] = 42,
-	[1][1][2][0][RTW89_UKRAINE][43] = 16,
-	[1][1][2][0][RTW89_MEXICO][43] = 72,
-	[1][1][2][0][RTW89_CN][43] = 72,
-	[1][1][2][0][RTW89_QATAR][43] = 16,
-	[1][1][2][1][RTW89_FCC][1] = 58,
-	[1][1][2][1][RTW89_ETSI][1] = 40,
-	[1][1][2][1][RTW89_MKK][1] = 50,
-	[1][1][2][1][RTW89_IC][1] = 40,
-	[1][1][2][1][RTW89_KCC][1] = 66,
-	[1][1][2][1][RTW89_ACMA][1] = 40,
-	[1][1][2][1][RTW89_CHILE][1] = 6,
-	[1][1][2][1][RTW89_UKRAINE][1] = 28,
-	[1][1][2][1][RTW89_MEXICO][1] = 50,
-	[1][1][2][1][RTW89_CN][1] = 40,
-	[1][1][2][1][RTW89_QATAR][1] = 40,
-	[1][1][2][1][RTW89_FCC][5] = 68,
-	[1][1][2][1][RTW89_ETSI][5] = 40,
-	[1][1][2][1][RTW89_MKK][5] = 50,
-	[1][1][2][1][RTW89_IC][5] = 40,
-	[1][1][2][1][RTW89_KCC][5] = 50,
-	[1][1][2][1][RTW89_ACMA][5] = 40,
-	[1][1][2][1][RTW89_CHILE][5] = 6,
-	[1][1][2][1][RTW89_UKRAINE][5] = 28,
-	[1][1][2][1][RTW89_MEXICO][5] = 50,
-	[1][1][2][1][RTW89_CN][5] = 40,
-	[1][1][2][1][RTW89_QATAR][5] = 40,
-	[1][1][2][1][RTW89_FCC][9] = 68,
-	[1][1][2][1][RTW89_ETSI][9] = 40,
-	[1][1][2][1][RTW89_MKK][9] = 50,
-	[1][1][2][1][RTW89_IC][9] = 40,
-	[1][1][2][1][RTW89_KCC][9] = 66,
-	[1][1][2][1][RTW89_ACMA][9] = 40,
-	[1][1][2][1][RTW89_CHILE][9] = 30,
-	[1][1][2][1][RTW89_UKRAINE][9] = 28,
-	[1][1][2][1][RTW89_MEXICO][9] = 68,
-	[1][1][2][1][RTW89_CN][9] = 40,
-	[1][1][2][1][RTW89_QATAR][9] = 40,
-	[1][1][2][1][RTW89_FCC][13] = 58,
-	[1][1][2][1][RTW89_ETSI][13] = 40,
-	[1][1][2][1][RTW89_MKK][13] = 50,
-	[1][1][2][1][RTW89_IC][13] = 40,
-	[1][1][2][1][RTW89_KCC][13] = 66,
-	[1][1][2][1][RTW89_ACMA][13] = 40,
-	[1][1][2][1][RTW89_CHILE][13] = 30,
-	[1][1][2][1][RTW89_UKRAINE][13] = 28,
-	[1][1][2][1][RTW89_MEXICO][13] = 58,
-	[1][1][2][1][RTW89_CN][13] = 40,
-	[1][1][2][1][RTW89_QATAR][13] = 40,
-	[1][1][2][1][RTW89_FCC][16] = 56,
-	[1][1][2][1][RTW89_ETSI][16] = 40,
-	[1][1][2][1][RTW89_MKK][16] = 72,
-	[1][1][2][1][RTW89_IC][16] = 56,
-	[1][1][2][1][RTW89_KCC][16] = 64,
-	[1][1][2][1][RTW89_ACMA][16] = 40,
-	[1][1][2][1][RTW89_CHILE][16] = 30,
-	[1][1][2][1][RTW89_UKRAINE][16] = 28,
-	[1][1][2][1][RTW89_MEXICO][16] = 56,
-	[1][1][2][1][RTW89_CN][16] = 127,
-	[1][1][2][1][RTW89_QATAR][16] = 28,
-	[1][1][2][1][RTW89_FCC][20] = 68,
-	[1][1][2][1][RTW89_ETSI][20] = 40,
-	[1][1][2][1][RTW89_MKK][20] = 72,
-	[1][1][2][1][RTW89_IC][20] = 68,
-	[1][1][2][1][RTW89_KCC][20] = 66,
-	[1][1][2][1][RTW89_ACMA][20] = 40,
-	[1][1][2][1][RTW89_CHILE][20] = 30,
-	[1][1][2][1][RTW89_UKRAINE][20] = 28,
-	[1][1][2][1][RTW89_MEXICO][20] = 68,
-	[1][1][2][1][RTW89_CN][20] = 127,
-	[1][1][2][1][RTW89_QATAR][20] = 28,
-	[1][1][2][1][RTW89_FCC][24] = 68,
-	[1][1][2][1][RTW89_ETSI][24] = 40,
-	[1][1][2][1][RTW89_MKK][24] = 72,
-	[1][1][2][1][RTW89_IC][24] = 127,
-	[1][1][2][1][RTW89_KCC][24] = 66,
-	[1][1][2][1][RTW89_ACMA][24] = 127,
-	[1][1][2][1][RTW89_CHILE][24] = 30,
-	[1][1][2][1][RTW89_UKRAINE][24] = 28,
-	[1][1][2][1][RTW89_MEXICO][24] = 68,
-	[1][1][2][1][RTW89_CN][24] = 127,
-	[1][1][2][1][RTW89_QATAR][24] = 28,
-	[1][1][2][1][RTW89_FCC][28] = 68,
-	[1][1][2][1][RTW89_ETSI][28] = 40,
-	[1][1][2][1][RTW89_MKK][28] = 72,
-	[1][1][2][1][RTW89_IC][28] = 127,
-	[1][1][2][1][RTW89_KCC][28] = 66,
-	[1][1][2][1][RTW89_ACMA][28] = 127,
-	[1][1][2][1][RTW89_CHILE][28] = 30,
-	[1][1][2][1][RTW89_UKRAINE][28] = 28,
-	[1][1][2][1][RTW89_MEXICO][28] = 68,
-	[1][1][2][1][RTW89_CN][28] = 127,
-	[1][1][2][1][RTW89_QATAR][28] = 28,
-	[1][1][2][1][RTW89_FCC][32] = 68,
-	[1][1][2][1][RTW89_ETSI][32] = 40,
-	[1][1][2][1][RTW89_MKK][32] = 72,
-	[1][1][2][1][RTW89_IC][32] = 68,
-	[1][1][2][1][RTW89_KCC][32] = 66,
-	[1][1][2][1][RTW89_ACMA][32] = 40,
-	[1][1][2][1][RTW89_CHILE][32] = 30,
-	[1][1][2][1][RTW89_UKRAINE][32] = 28,
-	[1][1][2][1][RTW89_MEXICO][32] = 68,
-	[1][1][2][1][RTW89_CN][32] = 127,
-	[1][1][2][1][RTW89_QATAR][32] = 28,
-	[1][1][2][1][RTW89_FCC][36] = 68,
-	[1][1][2][1][RTW89_ETSI][36] = 127,
-	[1][1][2][1][RTW89_MKK][36] = 72,
-	[1][1][2][1][RTW89_IC][36] = 68,
-	[1][1][2][1][RTW89_KCC][36] = 66,
-	[1][1][2][1][RTW89_ACMA][36] = 68,
-	[1][1][2][1][RTW89_CHILE][36] = 30,
-	[1][1][2][1][RTW89_UKRAINE][36] = 127,
-	[1][1][2][1][RTW89_MEXICO][36] = 68,
-	[1][1][2][1][RTW89_CN][36] = 127,
-	[1][1][2][1][RTW89_QATAR][36] = 127,
-	[1][1][2][1][RTW89_FCC][39] = 72,
-	[1][1][2][1][RTW89_ETSI][39] = 4,
-	[1][1][2][1][RTW89_MKK][39] = 127,
-	[1][1][2][1][RTW89_IC][39] = 72,
-	[1][1][2][1][RTW89_KCC][39] = 66,
-	[1][1][2][1][RTW89_ACMA][39] = 72,
-	[1][1][2][1][RTW89_CHILE][39] = 30,
-	[1][1][2][1][RTW89_UKRAINE][39] = 4,
-	[1][1][2][1][RTW89_MEXICO][39] = 72,
-	[1][1][2][1][RTW89_CN][39] = 62,
-	[1][1][2][1][RTW89_QATAR][39] = 4,
-	[1][1][2][1][RTW89_FCC][43] = 72,
-	[1][1][2][1][RTW89_ETSI][43] = 4,
-	[1][1][2][1][RTW89_MKK][43] = 127,
-	[1][1][2][1][RTW89_IC][43] = 72,
-	[1][1][2][1][RTW89_KCC][43] = 66,
-	[1][1][2][1][RTW89_ACMA][43] = 72,
-	[1][1][2][1][RTW89_CHILE][43] = 30,
-	[1][1][2][1][RTW89_UKRAINE][43] = 4,
-	[1][1][2][1][RTW89_MEXICO][43] = 72,
-	[1][1][2][1][RTW89_CN][43] = 72,
-	[1][1][2][1][RTW89_QATAR][43] = 4,
-	[2][0][2][0][RTW89_FCC][3] = 64,
-	[2][0][2][0][RTW89_ETSI][3] = 64,
-	[2][0][2][0][RTW89_MKK][3] = 64,
-	[2][0][2][0][RTW89_IC][3] = 62,
-	[2][0][2][0][RTW89_KCC][3] = 72,
-	[2][0][2][0][RTW89_ACMA][3] = 64,
-	[2][0][2][0][RTW89_CHILE][3] = 30,
-	[2][0][2][0][RTW89_UKRAINE][3] = 52,
-	[2][0][2][0][RTW89_MEXICO][3] = 62,
-	[2][0][2][0][RTW89_CN][3] = 64,
-	[2][0][2][0][RTW89_QATAR][3] = 64,
-	[2][0][2][0][RTW89_FCC][11] = 64,
-	[2][0][2][0][RTW89_ETSI][11] = 64,
-	[2][0][2][0][RTW89_MKK][11] = 64,
-	[2][0][2][0][RTW89_IC][11] = 62,
-	[2][0][2][0][RTW89_KCC][11] = 72,
-	[2][0][2][0][RTW89_ACMA][11] = 64,
-	[2][0][2][0][RTW89_CHILE][11] = 54,
-	[2][0][2][0][RTW89_UKRAINE][11] = 52,
-	[2][0][2][0][RTW89_MEXICO][11] = 64,
-	[2][0][2][0][RTW89_CN][11] = 64,
-	[2][0][2][0][RTW89_QATAR][11] = 64,
-	[2][0][2][0][RTW89_FCC][18] = 62,
-	[2][0][2][0][RTW89_ETSI][18] = 64,
-	[2][0][2][0][RTW89_MKK][18] = 72,
-	[2][0][2][0][RTW89_IC][18] = 66,
-	[2][0][2][0][RTW89_KCC][18] = 70,
-	[2][0][2][0][RTW89_ACMA][18] = 64,
-	[2][0][2][0][RTW89_CHILE][18] = 54,
-	[2][0][2][0][RTW89_UKRAINE][18] = 52,
-	[2][0][2][0][RTW89_MEXICO][18] = 62,
-	[2][0][2][0][RTW89_CN][18] = 127,
-	[2][0][2][0][RTW89_QATAR][18] = 52,
-	[2][0][2][0][RTW89_FCC][26] = 72,
-	[2][0][2][0][RTW89_ETSI][26] = 64,
-	[2][0][2][0][RTW89_MKK][26] = 72,
-	[2][0][2][0][RTW89_IC][26] = 127,
-	[2][0][2][0][RTW89_KCC][26] = 72,
-	[2][0][2][0][RTW89_ACMA][26] = 127,
-	[2][0][2][0][RTW89_CHILE][26] = 54,
-	[2][0][2][0][RTW89_UKRAINE][26] = 52,
-	[2][0][2][0][RTW89_MEXICO][26] = 72,
-	[2][0][2][0][RTW89_CN][26] = 127,
-	[2][0][2][0][RTW89_QATAR][26] = 52,
-	[2][0][2][0][RTW89_FCC][34] = 72,
-	[2][0][2][0][RTW89_ETSI][34] = 127,
-	[2][0][2][0][RTW89_MKK][34] = 72,
-	[2][0][2][0][RTW89_IC][34] = 72,
-	[2][0][2][0][RTW89_KCC][34] = 72,
-	[2][0][2][0][RTW89_ACMA][34] = 72,
-	[2][0][2][0][RTW89_CHILE][34] = 54,
-	[2][0][2][0][RTW89_UKRAINE][34] = 127,
-	[2][0][2][0][RTW89_MEXICO][34] = 72,
-	[2][0][2][0][RTW89_CN][34] = 127,
-	[2][0][2][0][RTW89_QATAR][34] = 127,
-	[2][0][2][0][RTW89_FCC][41] = 72,
-	[2][0][2][0][RTW89_ETSI][41] = 28,
-	[2][0][2][0][RTW89_MKK][41] = 127,
-	[2][0][2][0][RTW89_IC][41] = 72,
-	[2][0][2][0][RTW89_KCC][41] = 68,
-	[2][0][2][0][RTW89_ACMA][41] = 72,
-	[2][0][2][0][RTW89_CHILE][41] = 54,
-	[2][0][2][0][RTW89_UKRAINE][41] = 28,
-	[2][0][2][0][RTW89_MEXICO][41] = 72,
-	[2][0][2][0][RTW89_CN][41] = 68,
-	[2][0][2][0][RTW89_QATAR][41] = 28,
-	[2][1][2][0][RTW89_FCC][3] = 56,
-	[2][1][2][0][RTW89_ETSI][3] = 52,
-	[2][1][2][0][RTW89_MKK][3] = 52,
-	[2][1][2][0][RTW89_IC][3] = 52,
-	[2][1][2][0][RTW89_KCC][3] = 66,
-	[2][1][2][0][RTW89_ACMA][3] = 52,
-	[2][1][2][0][RTW89_CHILE][3] = 18,
-	[2][1][2][0][RTW89_UKRAINE][3] = 40,
-	[2][1][2][0][RTW89_MEXICO][3] = 50,
-	[2][1][2][0][RTW89_CN][3] = 52,
-	[2][1][2][0][RTW89_QATAR][3] = 52,
-	[2][1][2][0][RTW89_FCC][11] = 56,
-	[2][1][2][0][RTW89_ETSI][11] = 52,
-	[2][1][2][0][RTW89_MKK][11] = 52,
-	[2][1][2][0][RTW89_IC][11] = 52,
-	[2][1][2][0][RTW89_KCC][11] = 64,
-	[2][1][2][0][RTW89_ACMA][11] = 52,
-	[2][1][2][0][RTW89_CHILE][11] = 42,
-	[2][1][2][0][RTW89_UKRAINE][11] = 40,
-	[2][1][2][0][RTW89_MEXICO][11] = 56,
-	[2][1][2][0][RTW89_CN][11] = 52,
-	[2][1][2][0][RTW89_QATAR][11] = 52,
-	[2][1][2][0][RTW89_FCC][18] = 56,
-	[2][1][2][0][RTW89_ETSI][18] = 52,
-	[2][1][2][0][RTW89_MKK][18] = 72,
-	[2][1][2][0][RTW89_IC][18] = 56,
-	[2][1][2][0][RTW89_KCC][18] = 58,
-	[2][1][2][0][RTW89_ACMA][18] = 52,
-	[2][1][2][0][RTW89_CHILE][18] = 42,
-	[2][1][2][0][RTW89_UKRAINE][18] = 40,
-	[2][1][2][0][RTW89_MEXICO][18] = 56,
-	[2][1][2][0][RTW89_CN][18] = 127,
-	[2][1][2][0][RTW89_QATAR][18] = 40,
-	[2][1][2][0][RTW89_FCC][26] = 72,
-	[2][1][2][0][RTW89_ETSI][26] = 52,
-	[2][1][2][0][RTW89_MKK][26] = 72,
-	[2][1][2][0][RTW89_IC][26] = 127,
-	[2][1][2][0][RTW89_KCC][26] = 64,
-	[2][1][2][0][RTW89_ACMA][26] = 127,
-	[2][1][2][0][RTW89_CHILE][26] = 42,
-	[2][1][2][0][RTW89_UKRAINE][26] = 40,
-	[2][1][2][0][RTW89_MEXICO][26] = 72,
-	[2][1][2][0][RTW89_CN][26] = 127,
-	[2][1][2][0][RTW89_QATAR][26] = 40,
-	[2][1][2][0][RTW89_FCC][34] = 72,
-	[2][1][2][0][RTW89_ETSI][34] = 127,
-	[2][1][2][0][RTW89_MKK][34] = 72,
-	[2][1][2][0][RTW89_IC][34] = 72,
-	[2][1][2][0][RTW89_KCC][34] = 64,
-	[2][1][2][0][RTW89_ACMA][34] = 72,
-	[2][1][2][0][RTW89_CHILE][34] = 42,
-	[2][1][2][0][RTW89_UKRAINE][34] = 127,
-	[2][1][2][0][RTW89_MEXICO][34] = 72,
-	[2][1][2][0][RTW89_CN][34] = 127,
-	[2][1][2][0][RTW89_QATAR][34] = 127,
-	[2][1][2][0][RTW89_FCC][41] = 72,
-	[2][1][2][0][RTW89_ETSI][41] = 16,
-	[2][1][2][0][RTW89_MKK][41] = 127,
-	[2][1][2][0][RTW89_IC][41] = 72,
-	[2][1][2][0][RTW89_KCC][41] = 58,
-	[2][1][2][0][RTW89_ACMA][41] = 72,
-	[2][1][2][0][RTW89_CHILE][41] = 42,
-	[2][1][2][0][RTW89_UKRAINE][41] = 16,
-	[2][1][2][0][RTW89_MEXICO][41] = 72,
-	[2][1][2][0][RTW89_CN][41] = 68,
-	[2][1][2][0][RTW89_QATAR][41] = 16,
-	[2][1][2][1][RTW89_FCC][3] = 56,
-	[2][1][2][1][RTW89_ETSI][3] = 40,
-	[2][1][2][1][RTW89_MKK][3] = 52,
-	[2][1][2][1][RTW89_IC][3] = 40,
-	[2][1][2][1][RTW89_KCC][3] = 66,
-	[2][1][2][1][RTW89_ACMA][3] = 40,
-	[2][1][2][1][RTW89_CHILE][3] = 6,
-	[2][1][2][1][RTW89_UKRAINE][3] = 28,
-	[2][1][2][1][RTW89_MEXICO][3] = 50,
-	[2][1][2][1][RTW89_CN][3] = 40,
-	[2][1][2][1][RTW89_QATAR][3] = 40,
-	[2][1][2][1][RTW89_FCC][11] = 56,
-	[2][1][2][1][RTW89_ETSI][11] = 40,
-	[2][1][2][1][RTW89_MKK][11] = 52,
-	[2][1][2][1][RTW89_IC][11] = 40,
-	[2][1][2][1][RTW89_KCC][11] = 64,
-	[2][1][2][1][RTW89_ACMA][11] = 40,
-	[2][1][2][1][RTW89_CHILE][11] = 30,
-	[2][1][2][1][RTW89_UKRAINE][11] = 28,
-	[2][1][2][1][RTW89_MEXICO][11] = 56,
-	[2][1][2][1][RTW89_CN][11] = 40,
-	[2][1][2][1][RTW89_QATAR][11] = 40,
-	[2][1][2][1][RTW89_FCC][18] = 56,
-	[2][1][2][1][RTW89_ETSI][18] = 40,
-	[2][1][2][1][RTW89_MKK][18] = 72,
-	[2][1][2][1][RTW89_IC][18] = 56,
-	[2][1][2][1][RTW89_KCC][18] = 58,
-	[2][1][2][1][RTW89_ACMA][18] = 40,
-	[2][1][2][1][RTW89_CHILE][18] = 30,
-	[2][1][2][1][RTW89_UKRAINE][18] = 28,
-	[2][1][2][1][RTW89_MEXICO][18] = 56,
-	[2][1][2][1][RTW89_CN][18] = 127,
-	[2][1][2][1][RTW89_QATAR][18] = 28,
-	[2][1][2][1][RTW89_FCC][26] = 68,
-	[2][1][2][1][RTW89_ETSI][26] = 40,
-	[2][1][2][1][RTW89_MKK][26] = 72,
-	[2][1][2][1][RTW89_IC][26] = 127,
-	[2][1][2][1][RTW89_KCC][26] = 64,
-	[2][1][2][1][RTW89_ACMA][26] = 127,
-	[2][1][2][1][RTW89_CHILE][26] = 30,
-	[2][1][2][1][RTW89_UKRAINE][26] = 28,
-	[2][1][2][1][RTW89_MEXICO][26] = 68,
-	[2][1][2][1][RTW89_CN][26] = 127,
-	[2][1][2][1][RTW89_QATAR][26] = 28,
-	[2][1][2][1][RTW89_FCC][34] = 68,
-	[2][1][2][1][RTW89_ETSI][34] = 127,
-	[2][1][2][1][RTW89_MKK][34] = 72,
-	[2][1][2][1][RTW89_IC][34] = 68,
-	[2][1][2][1][RTW89_KCC][34] = 64,
-	[2][1][2][1][RTW89_ACMA][34] = 68,
-	[2][1][2][1][RTW89_CHILE][34] = 30,
-	[2][1][2][1][RTW89_UKRAINE][34] = 127,
-	[2][1][2][1][RTW89_MEXICO][34] = 68,
-	[2][1][2][1][RTW89_CN][34] = 127,
-	[2][1][2][1][RTW89_QATAR][34] = 127,
-	[2][1][2][1][RTW89_FCC][41] = 72,
-	[2][1][2][1][RTW89_ETSI][41] = 4,
-	[2][1][2][1][RTW89_MKK][41] = 127,
-	[2][1][2][1][RTW89_IC][41] = 72,
-	[2][1][2][1][RTW89_KCC][41] = 58,
-	[2][1][2][1][RTW89_ACMA][41] = 72,
-	[2][1][2][1][RTW89_CHILE][41] = 30,
-	[2][1][2][1][RTW89_UKRAINE][41] = 4,
-	[2][1][2][1][RTW89_MEXICO][41] = 72,
-	[2][1][2][1][RTW89_CN][41] = 64,
-	[2][1][2][1][RTW89_QATAR][41] = 4,
+	[0][0][1][0][0][0] = 30,
+	[0][0][1][0][0][2] = 30,
+	[0][0][1][0][0][4] = 30,
+	[0][0][1][0][0][6] = 30,
+	[0][0][1][0][0][8] = 52,
+	[0][0][1][0][0][10] = 52,
+	[0][0][1][0][0][12] = 52,
+	[0][0][1][0][0][14] = 52,
+	[0][0][1][0][0][15] = 52,
+	[0][0][1][0][0][17] = 52,
+	[0][0][1][0][0][19] = 52,
+	[0][0][1][0][0][21] = 52,
+	[0][0][1][0][0][23] = 52,
+	[0][0][1][0][0][25] = 52,
+	[0][0][1][0][0][27] = 52,
+	[0][0][1][0][0][29] = 52,
+	[0][0][1][0][0][31] = 52,
+	[0][0][1][0][0][33] = 52,
+	[0][0][1][0][0][35] = 52,
+	[0][0][1][0][0][37] = 54,
+	[0][0][1][0][0][38] = 28,
+	[0][0][1][0][0][40] = 28,
+	[0][0][1][0][0][42] = 28,
+	[0][0][1][0][0][44] = 28,
+	[0][0][1][0][0][46] = 28,
+	[0][1][1][0][0][0] = 18,
+	[0][1][1][0][0][2] = 18,
+	[0][1][1][0][0][4] = 18,
+	[0][1][1][0][0][6] = 18,
+	[0][1][1][0][0][8] = 40,
+	[0][1][1][0][0][10] = 40,
+	[0][1][1][0][0][12] = 40,
+	[0][1][1][0][0][14] = 40,
+	[0][1][1][0][0][15] = 40,
+	[0][1][1][0][0][17] = 40,
+	[0][1][1][0][0][19] = 40,
+	[0][1][1][0][0][21] = 40,
+	[0][1][1][0][0][23] = 40,
+	[0][1][1][0][0][25] = 40,
+	[0][1][1][0][0][27] = 40,
+	[0][1][1][0][0][29] = 40,
+	[0][1][1][0][0][31] = 40,
+	[0][1][1][0][0][33] = 40,
+	[0][1][1][0][0][35] = 40,
+	[0][1][1][0][0][37] = 42,
+	[0][1][1][0][0][38] = 16,
+	[0][1][1][0][0][40] = 16,
+	[0][1][1][0][0][42] = 16,
+	[0][1][1][0][0][44] = 16,
+	[0][1][1][0][0][46] = 16,
+	[0][0][2][0][0][0] = 30,
+	[0][0][2][0][0][2] = 30,
+	[0][0][2][0][0][4] = 30,
+	[0][0][2][0][0][6] = 30,
+	[0][0][2][0][0][8] = 52,
+	[0][0][2][0][0][10] = 52,
+	[0][0][2][0][0][12] = 52,
+	[0][0][2][0][0][14] = 52,
+	[0][0][2][0][0][15] = 52,
+	[0][0][2][0][0][17] = 52,
+	[0][0][2][0][0][19] = 52,
+	[0][0][2][0][0][21] = 52,
+	[0][0][2][0][0][23] = 52,
+	[0][0][2][0][0][25] = 52,
+	[0][0][2][0][0][27] = 52,
+	[0][0][2][0][0][29] = 52,
+	[0][0][2][0][0][31] = 52,
+	[0][0][2][0][0][33] = 52,
+	[0][0][2][0][0][35] = 52,
+	[0][0][2][0][0][37] = 54,
+	[0][0][2][0][0][38] = 28,
+	[0][0][2][0][0][40] = 28,
+	[0][0][2][0][0][42] = 28,
+	[0][0][2][0][0][44] = 28,
+	[0][0][2][0][0][46] = 28,
+	[0][1][2][0][0][0] = 18,
+	[0][1][2][0][0][2] = 18,
+	[0][1][2][0][0][4] = 18,
+	[0][1][2][0][0][6] = 18,
+	[0][1][2][0][0][8] = 40,
+	[0][1][2][0][0][10] = 40,
+	[0][1][2][0][0][12] = 40,
+	[0][1][2][0][0][14] = 40,
+	[0][1][2][0][0][15] = 40,
+	[0][1][2][0][0][17] = 40,
+	[0][1][2][0][0][19] = 40,
+	[0][1][2][0][0][21] = 40,
+	[0][1][2][0][0][23] = 40,
+	[0][1][2][0][0][25] = 40,
+	[0][1][2][0][0][27] = 40,
+	[0][1][2][0][0][29] = 40,
+	[0][1][2][0][0][31] = 40,
+	[0][1][2][0][0][33] = 40,
+	[0][1][2][0][0][35] = 40,
+	[0][1][2][0][0][37] = 42,
+	[0][1][2][0][0][38] = 16,
+	[0][1][2][0][0][40] = 16,
+	[0][1][2][0][0][42] = 16,
+	[0][1][2][0][0][44] = 16,
+	[0][1][2][0][0][46] = 16,
+	[0][1][2][1][0][0] = 6,
+	[0][1][2][1][0][2] = 6,
+	[0][1][2][1][0][4] = 6,
+	[0][1][2][1][0][6] = 6,
+	[0][1][2][1][0][8] = 28,
+	[0][1][2][1][0][10] = 28,
+	[0][1][2][1][0][12] = 28,
+	[0][1][2][1][0][14] = 28,
+	[0][1][2][1][0][15] = 28,
+	[0][1][2][1][0][17] = 28,
+	[0][1][2][1][0][19] = 28,
+	[0][1][2][1][0][21] = 28,
+	[0][1][2][1][0][23] = 28,
+	[0][1][2][1][0][25] = 28,
+	[0][1][2][1][0][27] = 28,
+	[0][1][2][1][0][29] = 28,
+	[0][1][2][1][0][31] = 28,
+	[0][1][2][1][0][33] = 28,
+	[0][1][2][1][0][35] = 28,
+	[0][1][2][1][0][37] = 30,
+	[0][1][2][1][0][38] = 4,
+	[0][1][2][1][0][40] = 4,
+	[0][1][2][1][0][42] = 4,
+	[0][1][2][1][0][44] = 4,
+	[0][1][2][1][0][46] = 4,
+	[1][0][2][0][0][1] = 30,
+	[1][0][2][0][0][5] = 30,
+	[1][0][2][0][0][9] = 52,
+	[1][0][2][0][0][13] = 52,
+	[1][0][2][0][0][16] = 52,
+	[1][0][2][0][0][20] = 52,
+	[1][0][2][0][0][24] = 52,
+	[1][0][2][0][0][28] = 52,
+	[1][0][2][0][0][32] = 52,
+	[1][0][2][0][0][36] = 54,
+	[1][0][2][0][0][39] = 28,
+	[1][0][2][0][0][43] = 28,
+	[1][1][2][0][0][1] = 18,
+	[1][1][2][0][0][5] = 18,
+	[1][1][2][0][0][9] = 40,
+	[1][1][2][0][0][13] = 40,
+	[1][1][2][0][0][16] = 40,
+	[1][1][2][0][0][20] = 40,
+	[1][1][2][0][0][24] = 40,
+	[1][1][2][0][0][28] = 40,
+	[1][1][2][0][0][32] = 40,
+	[1][1][2][0][0][36] = 42,
+	[1][1][2][0][0][39] = 16,
+	[1][1][2][0][0][43] = 16,
+	[1][1][2][1][0][1] = 6,
+	[1][1][2][1][0][5] = 6,
+	[1][1][2][1][0][9] = 28,
+	[1][1][2][1][0][13] = 28,
+	[1][1][2][1][0][16] = 28,
+	[1][1][2][1][0][20] = 28,
+	[1][1][2][1][0][24] = 28,
+	[1][1][2][1][0][28] = 28,
+	[1][1][2][1][0][32] = 28,
+	[1][1][2][1][0][36] = 30,
+	[1][1][2][1][0][39] = 4,
+	[1][1][2][1][0][43] = 4,
+	[2][0][2][0][0][3] = 30,
+	[2][0][2][0][0][11] = 52,
+	[2][0][2][0][0][18] = 52,
+	[2][0][2][0][0][26] = 52,
+	[2][0][2][0][0][34] = 54,
+	[2][0][2][0][0][41] = 28,
+	[2][1][2][0][0][3] = 18,
+	[2][1][2][0][0][11] = 40,
+	[2][1][2][0][0][18] = 40,
+	[2][1][2][0][0][26] = 40,
+	[2][1][2][0][0][34] = 42,
+	[2][1][2][0][0][41] = 16,
+	[2][1][2][1][0][3] = 6,
+	[2][1][2][1][0][11] = 28,
+	[2][1][2][1][0][18] = 28,
+	[2][1][2][1][0][26] = 28,
+	[2][1][2][1][0][34] = 30,
+	[2][1][2][1][0][41] = 4,
+	[0][0][1][0][2][0] = 76,
+	[0][0][1][0][1][0] = 58,
+	[0][0][1][0][3][0] = 62,
+	[0][0][1][0][5][0] = 62,
+	[0][0][1][0][6][0] = 58,
+	[0][0][1][0][9][0] = 58,
+	[0][0][1][0][8][0] = 30,
+	[0][0][1][0][11][0] = 52,
+	[0][0][1][0][2][2] = 76,
+	[0][0][1][0][1][2] = 58,
+	[0][0][1][0][3][2] = 62,
+	[0][0][1][0][5][2] = 62,
+	[0][0][1][0][6][2] = 58,
+	[0][0][1][0][9][2] = 58,
+	[0][0][1][0][8][2] = 30,
+	[0][0][1][0][11][2] = 52,
+	[0][0][1][0][2][4] = 76,
+	[0][0][1][0][1][4] = 58,
+	[0][0][1][0][3][4] = 62,
+	[0][0][1][0][5][4] = 62,
+	[0][0][1][0][6][4] = 58,
+	[0][0][1][0][9][4] = 58,
+	[0][0][1][0][8][4] = 30,
+	[0][0][1][0][11][4] = 52,
+	[0][0][1][0][2][6] = 76,
+	[0][0][1][0][1][6] = 58,
+	[0][0][1][0][3][6] = 62,
+	[0][0][1][0][5][6] = 62,
+	[0][0][1][0][6][6] = 54,
+	[0][0][1][0][9][6] = 58,
+	[0][0][1][0][8][6] = 30,
+	[0][0][1][0][11][6] = 52,
+	[0][0][1][0][2][8] = 76,
+	[0][0][1][0][1][8] = 58,
+	[0][0][1][0][3][8] = 62,
+	[0][0][1][0][5][8] = 64,
+	[0][0][1][0][6][8] = 58,
+	[0][0][1][0][9][8] = 58,
+	[0][0][1][0][8][8] = 54,
+	[0][0][1][0][11][8] = 52,
+	[0][0][1][0][2][10] = 76,
+	[0][0][1][0][1][10] = 58,
+	[0][0][1][0][3][10] = 62,
+	[0][0][1][0][5][10] = 64,
+	[0][0][1][0][6][10] = 58,
+	[0][0][1][0][9][10] = 58,
+	[0][0][1][0][8][10] = 54,
+	[0][0][1][0][11][10] = 52,
+	[0][0][1][0][2][12] = 76,
+	[0][0][1][0][1][12] = 58,
+	[0][0][1][0][3][12] = 62,
+	[0][0][1][0][5][12] = 64,
+	[0][0][1][0][6][12] = 58,
+	[0][0][1][0][9][12] = 58,
+	[0][0][1][0][8][12] = 54,
+	[0][0][1][0][11][12] = 52,
+	[0][0][1][0][2][14] = 76,
+	[0][0][1][0][1][14] = 58,
+	[0][0][1][0][3][14] = 62,
+	[0][0][1][0][5][14] = 64,
+	[0][0][1][0][6][14] = 58,
+	[0][0][1][0][9][14] = 58,
+	[0][0][1][0][8][14] = 54,
+	[0][0][1][0][11][14] = 52,
+	[0][0][1][0][2][15] = 76,
+	[0][0][1][0][1][15] = 58,
+	[0][0][1][0][3][15] = 76,
+	[0][0][1][0][5][15] = 76,
+	[0][0][1][0][6][15] = 58,
+	[0][0][1][0][9][15] = 58,
+	[0][0][1][0][8][15] = 54,
+	[0][0][1][0][11][15] = 52,
+	[0][0][1][0][2][17] = 76,
+	[0][0][1][0][1][17] = 58,
+	[0][0][1][0][3][17] = 76,
+	[0][0][1][0][5][17] = 76,
+	[0][0][1][0][6][17] = 58,
+	[0][0][1][0][9][17] = 58,
+	[0][0][1][0][8][17] = 54,
+	[0][0][1][0][11][17] = 52,
+	[0][0][1][0][2][19] = 76,
+	[0][0][1][0][1][19] = 58,
+	[0][0][1][0][3][19] = 76,
+	[0][0][1][0][5][19] = 76,
+	[0][0][1][0][6][19] = 58,
+	[0][0][1][0][9][19] = 58,
+	[0][0][1][0][8][19] = 54,
+	[0][0][1][0][11][19] = 52,
+	[0][0][1][0][2][21] = 76,
+	[0][0][1][0][1][21] = 58,
+	[0][0][1][0][3][21] = 76,
+	[0][0][1][0][5][21] = 76,
+	[0][0][1][0][6][21] = 58,
+	[0][0][1][0][9][21] = 58,
+	[0][0][1][0][8][21] = 54,
+	[0][0][1][0][11][21] = 52,
+	[0][0][1][0][2][23] = 76,
+	[0][0][1][0][1][23] = 58,
+	[0][0][1][0][3][23] = 76,
+	[0][0][1][0][5][23] = 76,
+	[0][0][1][0][6][23] = 58,
+	[0][0][1][0][9][23] = 58,
+	[0][0][1][0][8][23] = 54,
+	[0][0][1][0][11][23] = 52,
+	[0][0][1][0][2][25] = 76,
+	[0][0][1][0][1][25] = 58,
+	[0][0][1][0][3][25] = 76,
+	[0][0][1][0][5][25] = 127,
+	[0][0][1][0][6][25] = 58,
+	[0][0][1][0][9][25] = 127,
+	[0][0][1][0][8][25] = 54,
+	[0][0][1][0][11][25] = 52,
+	[0][0][1][0][2][27] = 76,
+	[0][0][1][0][1][27] = 58,
+	[0][0][1][0][3][27] = 76,
+	[0][0][1][0][5][27] = 127,
+	[0][0][1][0][6][27] = 58,
+	[0][0][1][0][9][27] = 127,
+	[0][0][1][0][8][27] = 54,
+	[0][0][1][0][11][27] = 52,
+	[0][0][1][0][2][29] = 76,
+	[0][0][1][0][1][29] = 58,
+	[0][0][1][0][3][29] = 76,
+	[0][0][1][0][5][29] = 127,
+	[0][0][1][0][6][29] = 58,
+	[0][0][1][0][9][29] = 127,
+	[0][0][1][0][8][29] = 54,
+	[0][0][1][0][11][29] = 52,
+	[0][0][1][0][2][31] = 76,
+	[0][0][1][0][1][31] = 58,
+	[0][0][1][0][3][31] = 76,
+	[0][0][1][0][5][31] = 76,
+	[0][0][1][0][6][31] = 58,
+	[0][0][1][0][9][31] = 58,
+	[0][0][1][0][8][31] = 54,
+	[0][0][1][0][11][31] = 52,
+	[0][0][1][0][2][33] = 76,
+	[0][0][1][0][1][33] = 58,
+	[0][0][1][0][3][33] = 76,
+	[0][0][1][0][5][33] = 76,
+	[0][0][1][0][6][33] = 58,
+	[0][0][1][0][9][33] = 58,
+	[0][0][1][0][8][33] = 54,
+	[0][0][1][0][11][33] = 52,
+	[0][0][1][0][2][35] = 74,
+	[0][0][1][0][1][35] = 58,
+	[0][0][1][0][3][35] = 76,
+	[0][0][1][0][5][35] = 74,
+	[0][0][1][0][6][35] = 58,
+	[0][0][1][0][9][35] = 58,
+	[0][0][1][0][8][35] = 54,
+	[0][0][1][0][11][35] = 52,
+	[0][0][1][0][2][37] = 76,
+	[0][0][1][0][1][37] = 127,
+	[0][0][1][0][3][37] = 76,
+	[0][0][1][0][5][37] = 76,
+	[0][0][1][0][6][37] = 58,
+	[0][0][1][0][9][37] = 76,
+	[0][0][1][0][8][37] = 54,
+	[0][0][1][0][11][37] = 127,
+	[0][0][1][0][2][38] = 76,
+	[0][0][1][0][1][38] = 28,
+	[0][0][1][0][3][38] = 127,
+	[0][0][1][0][5][38] = 76,
+	[0][0][1][0][6][38] = 28,
+	[0][0][1][0][9][38] = 76,
+	[0][0][1][0][8][38] = 54,
+	[0][0][1][0][11][38] = 52,
+	[0][0][1][0][2][40] = 76,
+	[0][0][1][0][1][40] = 28,
+	[0][0][1][0][3][40] = 127,
+	[0][0][1][0][5][40] = 76,
+	[0][0][1][0][6][40] = 28,
+	[0][0][1][0][9][40] = 76,
+	[0][0][1][0][8][40] = 54,
+	[0][0][1][0][11][40] = 52,
+	[0][0][1][0][2][42] = 76,
+	[0][0][1][0][1][42] = 28,
+	[0][0][1][0][3][42] = 127,
+	[0][0][1][0][5][42] = 76,
+	[0][0][1][0][6][42] = 28,
+	[0][0][1][0][9][42] = 76,
+	[0][0][1][0][8][42] = 54,
+	[0][0][1][0][11][42] = 52,
+	[0][0][1][0][2][44] = 76,
+	[0][0][1][0][1][44] = 28,
+	[0][0][1][0][3][44] = 127,
+	[0][0][1][0][5][44] = 76,
+	[0][0][1][0][6][44] = 28,
+	[0][0][1][0][9][44] = 76,
+	[0][0][1][0][8][44] = 54,
+	[0][0][1][0][11][44] = 52,
+	[0][0][1][0][2][46] = 76,
+	[0][0][1][0][1][46] = 28,
+	[0][0][1][0][3][46] = 127,
+	[0][0][1][0][5][46] = 76,
+	[0][0][1][0][6][46] = 28,
+	[0][0][1][0][9][46] = 76,
+	[0][0][1][0][8][46] = 54,
+	[0][0][1][0][11][46] = 52,
+	[0][1][1][0][2][0] = 68,
+	[0][1][1][0][1][0] = 46,
+	[0][1][1][0][3][0] = 50,
+	[0][1][1][0][5][0] = 40,
+	[0][1][1][0][6][0] = 46,
+	[0][1][1][0][9][0] = 46,
+	[0][1][1][0][8][0] = 18,
+	[0][1][1][0][11][0] = 40,
+	[0][1][1][0][2][2] = 68,
+	[0][1][1][0][1][2] = 46,
+	[0][1][1][0][3][2] = 50,
+	[0][1][1][0][5][2] = 40,
+	[0][1][1][0][6][2] = 46,
+	[0][1][1][0][9][2] = 46,
+	[0][1][1][0][8][2] = 18,
+	[0][1][1][0][11][2] = 40,
+	[0][1][1][0][2][4] = 68,
+	[0][1][1][0][1][4] = 46,
+	[0][1][1][0][3][4] = 50,
+	[0][1][1][0][5][4] = 40,
+	[0][1][1][0][6][4] = 46,
+	[0][1][1][0][9][4] = 46,
+	[0][1][1][0][8][4] = 18,
+	[0][1][1][0][11][4] = 40,
+	[0][1][1][0][2][6] = 68,
+	[0][1][1][0][1][6] = 46,
+	[0][1][1][0][3][6] = 50,
+	[0][1][1][0][5][6] = 40,
+	[0][1][1][0][6][6] = 36,
+	[0][1][1][0][9][6] = 46,
+	[0][1][1][0][8][6] = 18,
+	[0][1][1][0][11][6] = 40,
+	[0][1][1][0][2][8] = 68,
+	[0][1][1][0][1][8] = 46,
+	[0][1][1][0][3][8] = 50,
+	[0][1][1][0][5][8] = 52,
+	[0][1][1][0][6][8] = 46,
+	[0][1][1][0][9][8] = 46,
+	[0][1][1][0][8][8] = 42,
+	[0][1][1][0][11][8] = 40,
+	[0][1][1][0][2][10] = 68,
+	[0][1][1][0][1][10] = 46,
+	[0][1][1][0][3][10] = 50,
+	[0][1][1][0][5][10] = 52,
+	[0][1][1][0][6][10] = 46,
+	[0][1][1][0][9][10] = 46,
+	[0][1][1][0][8][10] = 42,
+	[0][1][1][0][11][10] = 40,
+	[0][1][1][0][2][12] = 68,
+	[0][1][1][0][1][12] = 46,
+	[0][1][1][0][3][12] = 50,
+	[0][1][1][0][5][12] = 52,
+	[0][1][1][0][6][12] = 46,
+	[0][1][1][0][9][12] = 46,
+	[0][1][1][0][8][12] = 42,
+	[0][1][1][0][11][12] = 40,
+	[0][1][1][0][2][14] = 68,
+	[0][1][1][0][1][14] = 46,
+	[0][1][1][0][3][14] = 50,
+	[0][1][1][0][5][14] = 52,
+	[0][1][1][0][6][14] = 46,
+	[0][1][1][0][9][14] = 46,
+	[0][1][1][0][8][14] = 42,
+	[0][1][1][0][11][14] = 40,
+	[0][1][1][0][2][15] = 68,
+	[0][1][1][0][1][15] = 46,
+	[0][1][1][0][3][15] = 70,
+	[0][1][1][0][5][15] = 68,
+	[0][1][1][0][6][15] = 46,
+	[0][1][1][0][9][15] = 46,
+	[0][1][1][0][8][15] = 42,
+	[0][1][1][0][11][15] = 40,
+	[0][1][1][0][2][17] = 68,
+	[0][1][1][0][1][17] = 46,
+	[0][1][1][0][3][17] = 70,
+	[0][1][1][0][5][17] = 68,
+	[0][1][1][0][6][17] = 46,
+	[0][1][1][0][9][17] = 46,
+	[0][1][1][0][8][17] = 42,
+	[0][1][1][0][11][17] = 40,
+	[0][1][1][0][2][19] = 68,
+	[0][1][1][0][1][19] = 46,
+	[0][1][1][0][3][19] = 70,
+	[0][1][1][0][5][19] = 68,
+	[0][1][1][0][6][19] = 46,
+	[0][1][1][0][9][19] = 46,
+	[0][1][1][0][8][19] = 42,
+	[0][1][1][0][11][19] = 40,
+	[0][1][1][0][2][21] = 68,
+	[0][1][1][0][1][21] = 46,
+	[0][1][1][0][3][21] = 70,
+	[0][1][1][0][5][21] = 68,
+	[0][1][1][0][6][21] = 46,
+	[0][1][1][0][9][21] = 46,
+	[0][1][1][0][8][21] = 42,
+	[0][1][1][0][11][21] = 40,
+	[0][1][1][0][2][23] = 68,
+	[0][1][1][0][1][23] = 46,
+	[0][1][1][0][3][23] = 70,
+	[0][1][1][0][5][23] = 68,
+	[0][1][1][0][6][23] = 46,
+	[0][1][1][0][9][23] = 46,
+	[0][1][1][0][8][23] = 42,
+	[0][1][1][0][11][23] = 40,
+	[0][1][1][0][2][25] = 68,
+	[0][1][1][0][1][25] = 46,
+	[0][1][1][0][3][25] = 70,
+	[0][1][1][0][5][25] = 127,
+	[0][1][1][0][6][25] = 46,
+	[0][1][1][0][9][25] = 127,
+	[0][1][1][0][8][25] = 42,
+	[0][1][1][0][11][25] = 40,
+	[0][1][1][0][2][27] = 68,
+	[0][1][1][0][1][27] = 46,
+	[0][1][1][0][3][27] = 70,
+	[0][1][1][0][5][27] = 127,
+	[0][1][1][0][6][27] = 46,
+	[0][1][1][0][9][27] = 127,
+	[0][1][1][0][8][27] = 42,
+	[0][1][1][0][11][27] = 40,
+	[0][1][1][0][2][29] = 68,
+	[0][1][1][0][1][29] = 46,
+	[0][1][1][0][3][29] = 70,
+	[0][1][1][0][5][29] = 127,
+	[0][1][1][0][6][29] = 46,
+	[0][1][1][0][9][29] = 127,
+	[0][1][1][0][8][29] = 42,
+	[0][1][1][0][11][29] = 40,
+	[0][1][1][0][2][31] = 68,
+	[0][1][1][0][1][31] = 46,
+	[0][1][1][0][3][31] = 70,
+	[0][1][1][0][5][31] = 68,
+	[0][1][1][0][6][31] = 46,
+	[0][1][1][0][9][31] = 46,
+	[0][1][1][0][8][31] = 42,
+	[0][1][1][0][11][31] = 40,
+	[0][1][1][0][2][33] = 68,
+	[0][1][1][0][1][33] = 46,
+	[0][1][1][0][3][33] = 70,
+	[0][1][1][0][5][33] = 68,
+	[0][1][1][0][6][33] = 46,
+	[0][1][1][0][9][33] = 46,
+	[0][1][1][0][8][33] = 42,
+	[0][1][1][0][11][33] = 40,
+	[0][1][1][0][2][35] = 66,
+	[0][1][1][0][1][35] = 46,
+	[0][1][1][0][3][35] = 70,
+	[0][1][1][0][5][35] = 66,
+	[0][1][1][0][6][35] = 46,
+	[0][1][1][0][9][35] = 46,
+	[0][1][1][0][8][35] = 42,
+	[0][1][1][0][11][35] = 40,
+	[0][1][1][0][2][37] = 68,
+	[0][1][1][0][1][37] = 127,
+	[0][1][1][0][3][37] = 70,
+	[0][1][1][0][5][37] = 68,
+	[0][1][1][0][6][37] = 46,
+	[0][1][1][0][9][37] = 68,
+	[0][1][1][0][8][37] = 42,
+	[0][1][1][0][11][37] = 127,
+	[0][1][1][0][2][38] = 76,
+	[0][1][1][0][1][38] = 16,
+	[0][1][1][0][3][38] = 127,
+	[0][1][1][0][5][38] = 76,
+	[0][1][1][0][6][38] = 16,
+	[0][1][1][0][9][38] = 76,
+	[0][1][1][0][8][38] = 42,
+	[0][1][1][0][11][38] = 40,
+	[0][1][1][0][2][40] = 76,
+	[0][1][1][0][1][40] = 16,
+	[0][1][1][0][3][40] = 127,
+	[0][1][1][0][5][40] = 76,
+	[0][1][1][0][6][40] = 16,
+	[0][1][1][0][9][40] = 76,
+	[0][1][1][0][8][40] = 42,
+	[0][1][1][0][11][40] = 40,
+	[0][1][1][0][2][42] = 76,
+	[0][1][1][0][1][42] = 16,
+	[0][1][1][0][3][42] = 127,
+	[0][1][1][0][5][42] = 76,
+	[0][1][1][0][6][42] = 16,
+	[0][1][1][0][9][42] = 76,
+	[0][1][1][0][8][42] = 42,
+	[0][1][1][0][11][42] = 40,
+	[0][1][1][0][2][44] = 76,
+	[0][1][1][0][1][44] = 16,
+	[0][1][1][0][3][44] = 127,
+	[0][1][1][0][5][44] = 76,
+	[0][1][1][0][6][44] = 16,
+	[0][1][1][0][9][44] = 76,
+	[0][1][1][0][8][44] = 42,
+	[0][1][1][0][11][44] = 40,
+	[0][1][1][0][2][46] = 76,
+	[0][1][1][0][1][46] = 16,
+	[0][1][1][0][3][46] = 127,
+	[0][1][1][0][5][46] = 76,
+	[0][1][1][0][6][46] = 16,
+	[0][1][1][0][9][46] = 76,
+	[0][1][1][0][8][46] = 42,
+	[0][1][1][0][11][46] = 40,
+	[0][0][2][0][2][0] = 76,
+	[0][0][2][0][1][0] = 58,
+	[0][0][2][0][3][0] = 62,
+	[0][0][2][0][5][0] = 62,
+	[0][0][2][0][6][0] = 58,
+	[0][0][2][0][9][0] = 58,
+	[0][0][2][0][8][0] = 30,
+	[0][0][2][0][11][0] = 52,
+	[0][0][2][0][2][2] = 76,
+	[0][0][2][0][1][2] = 58,
+	[0][0][2][0][3][2] = 62,
+	[0][0][2][0][5][2] = 62,
+	[0][0][2][0][6][2] = 58,
+	[0][0][2][0][9][2] = 58,
+	[0][0][2][0][8][2] = 30,
+	[0][0][2][0][11][2] = 52,
+	[0][0][2][0][2][4] = 76,
+	[0][0][2][0][1][4] = 58,
+	[0][0][2][0][3][4] = 62,
+	[0][0][2][0][5][4] = 62,
+	[0][0][2][0][6][4] = 58,
+	[0][0][2][0][9][4] = 58,
+	[0][0][2][0][8][4] = 30,
+	[0][0][2][0][11][4] = 52,
+	[0][0][2][0][2][6] = 76,
+	[0][0][2][0][1][6] = 58,
+	[0][0][2][0][3][6] = 62,
+	[0][0][2][0][5][6] = 62,
+	[0][0][2][0][6][6] = 54,
+	[0][0][2][0][9][6] = 58,
+	[0][0][2][0][8][6] = 30,
+	[0][0][2][0][11][6] = 52,
+	[0][0][2][0][2][8] = 76,
+	[0][0][2][0][1][8] = 58,
+	[0][0][2][0][3][8] = 62,
+	[0][0][2][0][5][8] = 64,
+	[0][0][2][0][6][8] = 58,
+	[0][0][2][0][9][8] = 58,
+	[0][0][2][0][8][8] = 54,
+	[0][0][2][0][11][8] = 52,
+	[0][0][2][0][2][10] = 76,
+	[0][0][2][0][1][10] = 58,
+	[0][0][2][0][3][10] = 62,
+	[0][0][2][0][5][10] = 64,
+	[0][0][2][0][6][10] = 58,
+	[0][0][2][0][9][10] = 58,
+	[0][0][2][0][8][10] = 54,
+	[0][0][2][0][11][10] = 52,
+	[0][0][2][0][2][12] = 76,
+	[0][0][2][0][1][12] = 58,
+	[0][0][2][0][3][12] = 62,
+	[0][0][2][0][5][12] = 64,
+	[0][0][2][0][6][12] = 58,
+	[0][0][2][0][9][12] = 58,
+	[0][0][2][0][8][12] = 54,
+	[0][0][2][0][11][12] = 52,
+	[0][0][2][0][2][14] = 76,
+	[0][0][2][0][1][14] = 58,
+	[0][0][2][0][3][14] = 62,
+	[0][0][2][0][5][14] = 64,
+	[0][0][2][0][6][14] = 58,
+	[0][0][2][0][9][14] = 58,
+	[0][0][2][0][8][14] = 54,
+	[0][0][2][0][11][14] = 52,
+	[0][0][2][0][2][15] = 74,
+	[0][0][2][0][1][15] = 58,
+	[0][0][2][0][3][15] = 76,
+	[0][0][2][0][5][15] = 74,
+	[0][0][2][0][6][15] = 58,
+	[0][0][2][0][9][15] = 58,
+	[0][0][2][0][8][15] = 54,
+	[0][0][2][0][11][15] = 52,
+	[0][0][2][0][2][17] = 76,
+	[0][0][2][0][1][17] = 58,
+	[0][0][2][0][3][17] = 76,
+	[0][0][2][0][5][17] = 76,
+	[0][0][2][0][6][17] = 58,
+	[0][0][2][0][9][17] = 58,
+	[0][0][2][0][8][17] = 54,
+	[0][0][2][0][11][17] = 52,
+	[0][0][2][0][2][19] = 76,
+	[0][0][2][0][1][19] = 58,
+	[0][0][2][0][3][19] = 76,
+	[0][0][2][0][5][19] = 76,
+	[0][0][2][0][6][19] = 58,
+	[0][0][2][0][9][19] = 58,
+	[0][0][2][0][8][19] = 54,
+	[0][0][2][0][11][19] = 52,
+	[0][0][2][0][2][21] = 76,
+	[0][0][2][0][1][21] = 58,
+	[0][0][2][0][3][21] = 76,
+	[0][0][2][0][5][21] = 76,
+	[0][0][2][0][6][21] = 58,
+	[0][0][2][0][9][21] = 58,
+	[0][0][2][0][8][21] = 54,
+	[0][0][2][0][11][21] = 52,
+	[0][0][2][0][2][23] = 76,
+	[0][0][2][0][1][23] = 58,
+	[0][0][2][0][3][23] = 76,
+	[0][0][2][0][5][23] = 76,
+	[0][0][2][0][6][23] = 58,
+	[0][0][2][0][9][23] = 58,
+	[0][0][2][0][8][23] = 54,
+	[0][0][2][0][11][23] = 52,
+	[0][0][2][0][2][25] = 76,
+	[0][0][2][0][1][25] = 58,
+	[0][0][2][0][3][25] = 76,
+	[0][0][2][0][5][25] = 127,
+	[0][0][2][0][6][25] = 58,
+	[0][0][2][0][9][25] = 127,
+	[0][0][2][0][8][25] = 54,
+	[0][0][2][0][11][25] = 52,
+	[0][0][2][0][2][27] = 76,
+	[0][0][2][0][1][27] = 58,
+	[0][0][2][0][3][27] = 76,
+	[0][0][2][0][5][27] = 127,
+	[0][0][2][0][6][27] = 58,
+	[0][0][2][0][9][27] = 127,
+	[0][0][2][0][8][27] = 54,
+	[0][0][2][0][11][27] = 52,
+	[0][0][2][0][2][29] = 76,
+	[0][0][2][0][1][29] = 58,
+	[0][0][2][0][3][29] = 76,
+	[0][0][2][0][5][29] = 127,
+	[0][0][2][0][6][29] = 58,
+	[0][0][2][0][9][29] = 127,
+	[0][0][2][0][8][29] = 54,
+	[0][0][2][0][11][29] = 52,
+	[0][0][2][0][2][31] = 76,
+	[0][0][2][0][1][31] = 58,
+	[0][0][2][0][3][31] = 76,
+	[0][0][2][0][5][31] = 76,
+	[0][0][2][0][6][31] = 58,
+	[0][0][2][0][9][31] = 58,
+	[0][0][2][0][8][31] = 54,
+	[0][0][2][0][11][31] = 52,
+	[0][0][2][0][2][33] = 76,
+	[0][0][2][0][1][33] = 58,
+	[0][0][2][0][3][33] = 76,
+	[0][0][2][0][5][33] = 76,
+	[0][0][2][0][6][33] = 58,
+	[0][0][2][0][9][33] = 58,
+	[0][0][2][0][8][33] = 54,
+	[0][0][2][0][11][33] = 52,
+	[0][0][2][0][2][35] = 70,
+	[0][0][2][0][1][35] = 58,
+	[0][0][2][0][3][35] = 76,
+	[0][0][2][0][5][35] = 70,
+	[0][0][2][0][6][35] = 58,
+	[0][0][2][0][9][35] = 58,
+	[0][0][2][0][8][35] = 54,
+	[0][0][2][0][11][35] = 52,
+	[0][0][2][0][2][37] = 76,
+	[0][0][2][0][1][37] = 127,
+	[0][0][2][0][3][37] = 76,
+	[0][0][2][0][5][37] = 76,
+	[0][0][2][0][6][37] = 58,
+	[0][0][2][0][9][37] = 76,
+	[0][0][2][0][8][37] = 54,
+	[0][0][2][0][11][37] = 127,
+	[0][0][2][0][2][38] = 76,
+	[0][0][2][0][1][38] = 28,
+	[0][0][2][0][3][38] = 127,
+	[0][0][2][0][5][38] = 76,
+	[0][0][2][0][6][38] = 28,
+	[0][0][2][0][9][38] = 76,
+	[0][0][2][0][8][38] = 54,
+	[0][0][2][0][11][38] = 52,
+	[0][0][2][0][2][40] = 76,
+	[0][0][2][0][1][40] = 28,
+	[0][0][2][0][3][40] = 127,
+	[0][0][2][0][5][40] = 76,
+	[0][0][2][0][6][40] = 28,
+	[0][0][2][0][9][40] = 76,
+	[0][0][2][0][8][40] = 54,
+	[0][0][2][0][11][40] = 52,
+	[0][0][2][0][2][42] = 76,
+	[0][0][2][0][1][42] = 28,
+	[0][0][2][0][3][42] = 127,
+	[0][0][2][0][5][42] = 76,
+	[0][0][2][0][6][42] = 28,
+	[0][0][2][0][9][42] = 76,
+	[0][0][2][0][8][42] = 54,
+	[0][0][2][0][11][42] = 52,
+	[0][0][2][0][2][44] = 76,
+	[0][0][2][0][1][44] = 28,
+	[0][0][2][0][3][44] = 127,
+	[0][0][2][0][5][44] = 76,
+	[0][0][2][0][6][44] = 28,
+	[0][0][2][0][9][44] = 76,
+	[0][0][2][0][8][44] = 54,
+	[0][0][2][0][11][44] = 52,
+	[0][0][2][0][2][46] = 76,
+	[0][0][2][0][1][46] = 28,
+	[0][0][2][0][3][46] = 127,
+	[0][0][2][0][5][46] = 76,
+	[0][0][2][0][6][46] = 28,
+	[0][0][2][0][9][46] = 76,
+	[0][0][2][0][8][46] = 54,
+	[0][0][2][0][11][46] = 52,
+	[0][1][2][0][2][0] = 68,
+	[0][1][2][0][1][0] = 46,
+	[0][1][2][0][3][0] = 50,
+	[0][1][2][0][5][0] = 40,
+	[0][1][2][0][6][0] = 46,
+	[0][1][2][0][9][0] = 46,
+	[0][1][2][0][8][0] = 18,
+	[0][1][2][0][11][0] = 40,
+	[0][1][2][0][2][2] = 68,
+	[0][1][2][0][1][2] = 46,
+	[0][1][2][0][3][2] = 50,
+	[0][1][2][0][5][2] = 40,
+	[0][1][2][0][6][2] = 46,
+	[0][1][2][0][9][2] = 46,
+	[0][1][2][0][8][2] = 18,
+	[0][1][2][0][11][2] = 40,
+	[0][1][2][0][2][4] = 68,
+	[0][1][2][0][1][4] = 46,
+	[0][1][2][0][3][4] = 50,
+	[0][1][2][0][5][4] = 40,
+	[0][1][2][0][6][4] = 46,
+	[0][1][2][0][9][4] = 46,
+	[0][1][2][0][8][4] = 18,
+	[0][1][2][0][11][4] = 40,
+	[0][1][2][0][2][6] = 68,
+	[0][1][2][0][1][6] = 46,
+	[0][1][2][0][3][6] = 50,
+	[0][1][2][0][5][6] = 40,
+	[0][1][2][0][6][6] = 36,
+	[0][1][2][0][9][6] = 46,
+	[0][1][2][0][8][6] = 18,
+	[0][1][2][0][11][6] = 40,
+	[0][1][2][0][2][8] = 68,
+	[0][1][2][0][1][8] = 46,
+	[0][1][2][0][3][8] = 50,
+	[0][1][2][0][5][8] = 52,
+	[0][1][2][0][6][8] = 46,
+	[0][1][2][0][9][8] = 46,
+	[0][1][2][0][8][8] = 42,
+	[0][1][2][0][11][8] = 40,
+	[0][1][2][0][2][10] = 68,
+	[0][1][2][0][1][10] = 46,
+	[0][1][2][0][3][10] = 50,
+	[0][1][2][0][5][10] = 52,
+	[0][1][2][0][6][10] = 46,
+	[0][1][2][0][9][10] = 46,
+	[0][1][2][0][8][10] = 42,
+	[0][1][2][0][11][10] = 40,
+	[0][1][2][0][2][12] = 68,
+	[0][1][2][0][1][12] = 46,
+	[0][1][2][0][3][12] = 50,
+	[0][1][2][0][5][12] = 52,
+	[0][1][2][0][6][12] = 46,
+	[0][1][2][0][9][12] = 46,
+	[0][1][2][0][8][12] = 42,
+	[0][1][2][0][11][12] = 40,
+	[0][1][2][0][2][14] = 68,
+	[0][1][2][0][1][14] = 46,
+	[0][1][2][0][3][14] = 50,
+	[0][1][2][0][5][14] = 52,
+	[0][1][2][0][6][14] = 46,
+	[0][1][2][0][9][14] = 46,
+	[0][1][2][0][8][14] = 42,
+	[0][1][2][0][11][14] = 40,
+	[0][1][2][0][2][15] = 68,
+	[0][1][2][0][1][15] = 46,
+	[0][1][2][0][3][15] = 70,
+	[0][1][2][0][5][15] = 68,
+	[0][1][2][0][6][15] = 46,
+	[0][1][2][0][9][15] = 46,
+	[0][1][2][0][8][15] = 42,
+	[0][1][2][0][11][15] = 40,
+	[0][1][2][0][2][17] = 68,
+	[0][1][2][0][1][17] = 46,
+	[0][1][2][0][3][17] = 70,
+	[0][1][2][0][5][17] = 68,
+	[0][1][2][0][6][17] = 46,
+	[0][1][2][0][9][17] = 46,
+	[0][1][2][0][8][17] = 42,
+	[0][1][2][0][11][17] = 40,
+	[0][1][2][0][2][19] = 68,
+	[0][1][2][0][1][19] = 46,
+	[0][1][2][0][3][19] = 70,
+	[0][1][2][0][5][19] = 68,
+	[0][1][2][0][6][19] = 46,
+	[0][1][2][0][9][19] = 46,
+	[0][1][2][0][8][19] = 42,
+	[0][1][2][0][11][19] = 40,
+	[0][1][2][0][2][21] = 68,
+	[0][1][2][0][1][21] = 46,
+	[0][1][2][0][3][21] = 70,
+	[0][1][2][0][5][21] = 68,
+	[0][1][2][0][6][21] = 46,
+	[0][1][2][0][9][21] = 46,
+	[0][1][2][0][8][21] = 42,
+	[0][1][2][0][11][21] = 40,
+	[0][1][2][0][2][23] = 68,
+	[0][1][2][0][1][23] = 46,
+	[0][1][2][0][3][23] = 70,
+	[0][1][2][0][5][23] = 68,
+	[0][1][2][0][6][23] = 46,
+	[0][1][2][0][9][23] = 46,
+	[0][1][2][0][8][23] = 42,
+	[0][1][2][0][11][23] = 40,
+	[0][1][2][0][2][25] = 68,
+	[0][1][2][0][1][25] = 46,
+	[0][1][2][0][3][25] = 70,
+	[0][1][2][0][5][25] = 127,
+	[0][1][2][0][6][25] = 46,
+	[0][1][2][0][9][25] = 127,
+	[0][1][2][0][8][25] = 42,
+	[0][1][2][0][11][25] = 40,
+	[0][1][2][0][2][27] = 68,
+	[0][1][2][0][1][27] = 46,
+	[0][1][2][0][3][27] = 70,
+	[0][1][2][0][5][27] = 127,
+	[0][1][2][0][6][27] = 46,
+	[0][1][2][0][9][27] = 127,
+	[0][1][2][0][8][27] = 42,
+	[0][1][2][0][11][27] = 40,
+	[0][1][2][0][2][29] = 68,
+	[0][1][2][0][1][29] = 46,
+	[0][1][2][0][3][29] = 70,
+	[0][1][2][0][5][29] = 127,
+	[0][1][2][0][6][29] = 46,
+	[0][1][2][0][9][29] = 127,
+	[0][1][2][0][8][29] = 42,
+	[0][1][2][0][11][29] = 40,
+	[0][1][2][0][2][31] = 68,
+	[0][1][2][0][1][31] = 46,
+	[0][1][2][0][3][31] = 70,
+	[0][1][2][0][5][31] = 68,
+	[0][1][2][0][6][31] = 46,
+	[0][1][2][0][9][31] = 46,
+	[0][1][2][0][8][31] = 42,
+	[0][1][2][0][11][31] = 40,
+	[0][1][2][0][2][33] = 68,
+	[0][1][2][0][1][33] = 46,
+	[0][1][2][0][3][33] = 70,
+	[0][1][2][0][5][33] = 68,
+	[0][1][2][0][6][33] = 46,
+	[0][1][2][0][9][33] = 46,
+	[0][1][2][0][8][33] = 42,
+	[0][1][2][0][11][33] = 40,
+	[0][1][2][0][2][35] = 64,
+	[0][1][2][0][1][35] = 46,
+	[0][1][2][0][3][35] = 70,
+	[0][1][2][0][5][35] = 64,
+	[0][1][2][0][6][35] = 46,
+	[0][1][2][0][9][35] = 46,
+	[0][1][2][0][8][35] = 42,
+	[0][1][2][0][11][35] = 40,
+	[0][1][2][0][2][37] = 68,
+	[0][1][2][0][1][37] = 127,
+	[0][1][2][0][3][37] = 70,
+	[0][1][2][0][5][37] = 68,
+	[0][1][2][0][6][37] = 46,
+	[0][1][2][0][9][37] = 68,
+	[0][1][2][0][8][37] = 42,
+	[0][1][2][0][11][37] = 127,
+	[0][1][2][0][2][38] = 76,
+	[0][1][2][0][1][38] = 16,
+	[0][1][2][0][3][38] = 127,
+	[0][1][2][0][5][38] = 76,
+	[0][1][2][0][6][38] = 16,
+	[0][1][2][0][9][38] = 76,
+	[0][1][2][0][8][38] = 42,
+	[0][1][2][0][11][38] = 40,
+	[0][1][2][0][2][40] = 76,
+	[0][1][2][0][1][40] = 16,
+	[0][1][2][0][3][40] = 127,
+	[0][1][2][0][5][40] = 76,
+	[0][1][2][0][6][40] = 16,
+	[0][1][2][0][9][40] = 76,
+	[0][1][2][0][8][40] = 42,
+	[0][1][2][0][11][40] = 40,
+	[0][1][2][0][2][42] = 76,
+	[0][1][2][0][1][42] = 16,
+	[0][1][2][0][3][42] = 127,
+	[0][1][2][0][5][42] = 76,
+	[0][1][2][0][6][42] = 16,
+	[0][1][2][0][9][42] = 76,
+	[0][1][2][0][8][42] = 42,
+	[0][1][2][0][11][42] = 40,
+	[0][1][2][0][2][44] = 76,
+	[0][1][2][0][1][44] = 16,
+	[0][1][2][0][3][44] = 127,
+	[0][1][2][0][5][44] = 76,
+	[0][1][2][0][6][44] = 16,
+	[0][1][2][0][9][44] = 76,
+	[0][1][2][0][8][44] = 42,
+	[0][1][2][0][11][44] = 40,
+	[0][1][2][0][2][46] = 76,
+	[0][1][2][0][1][46] = 16,
+	[0][1][2][0][3][46] = 127,
+	[0][1][2][0][5][46] = 76,
+	[0][1][2][0][6][46] = 16,
+	[0][1][2][0][9][46] = 76,
+	[0][1][2][0][8][46] = 42,
+	[0][1][2][0][11][46] = 40,
+	[0][1][2][1][2][0] = 68,
+	[0][1][2][1][1][0] = 34,
+	[0][1][2][1][3][0] = 50,
+	[0][1][2][1][5][0] = 38,
+	[0][1][2][1][6][0] = 34,
+	[0][1][2][1][9][0] = 34,
+	[0][1][2][1][8][0] = 6,
+	[0][1][2][1][11][0] = 28,
+	[0][1][2][1][2][2] = 68,
+	[0][1][2][1][1][2] = 34,
+	[0][1][2][1][3][2] = 50,
+	[0][1][2][1][5][2] = 38,
+	[0][1][2][1][6][2] = 34,
+	[0][1][2][1][9][2] = 34,
+	[0][1][2][1][8][2] = 6,
+	[0][1][2][1][11][2] = 28,
+	[0][1][2][1][2][4] = 68,
+	[0][1][2][1][1][4] = 34,
+	[0][1][2][1][3][4] = 50,
+	[0][1][2][1][5][4] = 38,
+	[0][1][2][1][6][4] = 34,
+	[0][1][2][1][9][4] = 34,
+	[0][1][2][1][8][4] = 6,
+	[0][1][2][1][11][4] = 28,
+	[0][1][2][1][2][6] = 68,
+	[0][1][2][1][1][6] = 34,
+	[0][1][2][1][3][6] = 50,
+	[0][1][2][1][5][6] = 38,
+	[0][1][2][1][6][6] = 34,
+	[0][1][2][1][9][6] = 34,
+	[0][1][2][1][8][6] = 6,
+	[0][1][2][1][11][6] = 28,
+	[0][1][2][1][2][8] = 68,
+	[0][1][2][1][1][8] = 34,
+	[0][1][2][1][3][8] = 50,
+	[0][1][2][1][5][8] = 38,
+	[0][1][2][1][6][8] = 34,
+	[0][1][2][1][9][8] = 34,
+	[0][1][2][1][8][8] = 30,
+	[0][1][2][1][11][8] = 28,
+	[0][1][2][1][2][10] = 68,
+	[0][1][2][1][1][10] = 34,
+	[0][1][2][1][3][10] = 50,
+	[0][1][2][1][5][10] = 38,
+	[0][1][2][1][6][10] = 34,
+	[0][1][2][1][9][10] = 34,
+	[0][1][2][1][8][10] = 30,
+	[0][1][2][1][11][10] = 28,
+	[0][1][2][1][2][12] = 68,
+	[0][1][2][1][1][12] = 34,
+	[0][1][2][1][3][12] = 50,
+	[0][1][2][1][5][12] = 38,
+	[0][1][2][1][6][12] = 34,
+	[0][1][2][1][9][12] = 34,
+	[0][1][2][1][8][12] = 30,
+	[0][1][2][1][11][12] = 28,
+	[0][1][2][1][2][14] = 68,
+	[0][1][2][1][1][14] = 34,
+	[0][1][2][1][3][14] = 50,
+	[0][1][2][1][5][14] = 38,
+	[0][1][2][1][6][14] = 34,
+	[0][1][2][1][9][14] = 34,
+	[0][1][2][1][8][14] = 30,
+	[0][1][2][1][11][14] = 28,
+	[0][1][2][1][2][15] = 68,
+	[0][1][2][1][1][15] = 34,
+	[0][1][2][1][3][15] = 70,
+	[0][1][2][1][5][15] = 62,
+	[0][1][2][1][6][15] = 34,
+	[0][1][2][1][9][15] = 34,
+	[0][1][2][1][8][15] = 30,
+	[0][1][2][1][11][15] = 28,
+	[0][1][2][1][2][17] = 68,
+	[0][1][2][1][1][17] = 34,
+	[0][1][2][1][3][17] = 70,
+	[0][1][2][1][5][17] = 62,
+	[0][1][2][1][6][17] = 34,
+	[0][1][2][1][9][17] = 34,
+	[0][1][2][1][8][17] = 30,
+	[0][1][2][1][11][17] = 28,
+	[0][1][2][1][2][19] = 68,
+	[0][1][2][1][1][19] = 34,
+	[0][1][2][1][3][19] = 70,
+	[0][1][2][1][5][19] = 62,
+	[0][1][2][1][6][19] = 34,
+	[0][1][2][1][9][19] = 34,
+	[0][1][2][1][8][19] = 30,
+	[0][1][2][1][11][19] = 28,
+	[0][1][2][1][2][21] = 68,
+	[0][1][2][1][1][21] = 34,
+	[0][1][2][1][3][21] = 70,
+	[0][1][2][1][5][21] = 62,
+	[0][1][2][1][6][21] = 34,
+	[0][1][2][1][9][21] = 34,
+	[0][1][2][1][8][21] = 30,
+	[0][1][2][1][11][21] = 28,
+	[0][1][2][1][2][23] = 68,
+	[0][1][2][1][1][23] = 34,
+	[0][1][2][1][3][23] = 70,
+	[0][1][2][1][5][23] = 62,
+	[0][1][2][1][6][23] = 34,
+	[0][1][2][1][9][23] = 34,
+	[0][1][2][1][8][23] = 30,
+	[0][1][2][1][11][23] = 28,
+	[0][1][2][1][2][25] = 68,
+	[0][1][2][1][1][25] = 34,
+	[0][1][2][1][3][25] = 70,
+	[0][1][2][1][5][25] = 127,
+	[0][1][2][1][6][25] = 34,
+	[0][1][2][1][9][25] = 127,
+	[0][1][2][1][8][25] = 30,
+	[0][1][2][1][11][25] = 28,
+	[0][1][2][1][2][27] = 68,
+	[0][1][2][1][1][27] = 34,
+	[0][1][2][1][3][27] = 70,
+	[0][1][2][1][5][27] = 127,
+	[0][1][2][1][6][27] = 34,
+	[0][1][2][1][9][27] = 127,
+	[0][1][2][1][8][27] = 30,
+	[0][1][2][1][11][27] = 28,
+	[0][1][2][1][2][29] = 68,
+	[0][1][2][1][1][29] = 34,
+	[0][1][2][1][3][29] = 70,
+	[0][1][2][1][5][29] = 127,
+	[0][1][2][1][6][29] = 34,
+	[0][1][2][1][9][29] = 127,
+	[0][1][2][1][8][29] = 30,
+	[0][1][2][1][11][29] = 28,
+	[0][1][2][1][2][31] = 68,
+	[0][1][2][1][1][31] = 34,
+	[0][1][2][1][3][31] = 70,
+	[0][1][2][1][5][31] = 62,
+	[0][1][2][1][6][31] = 34,
+	[0][1][2][1][9][31] = 34,
+	[0][1][2][1][8][31] = 30,
+	[0][1][2][1][11][31] = 28,
+	[0][1][2][1][2][33] = 68,
+	[0][1][2][1][1][33] = 34,
+	[0][1][2][1][3][33] = 70,
+	[0][1][2][1][5][33] = 62,
+	[0][1][2][1][6][33] = 34,
+	[0][1][2][1][9][33] = 34,
+	[0][1][2][1][8][33] = 30,
+	[0][1][2][1][11][33] = 28,
+	[0][1][2][1][2][35] = 64,
+	[0][1][2][1][1][35] = 34,
+	[0][1][2][1][3][35] = 70,
+	[0][1][2][1][5][35] = 62,
+	[0][1][2][1][6][35] = 34,
+	[0][1][2][1][9][35] = 34,
+	[0][1][2][1][8][35] = 30,
+	[0][1][2][1][11][35] = 28,
+	[0][1][2][1][2][37] = 68,
+	[0][1][2][1][1][37] = 127,
+	[0][1][2][1][3][37] = 70,
+	[0][1][2][1][5][37] = 62,
+	[0][1][2][1][6][37] = 34,
+	[0][1][2][1][9][37] = 68,
+	[0][1][2][1][8][37] = 30,
+	[0][1][2][1][11][37] = 127,
+	[0][1][2][1][2][38] = 76,
+	[0][1][2][1][1][38] = 4,
+	[0][1][2][1][3][38] = 127,
+	[0][1][2][1][5][38] = 76,
+	[0][1][2][1][6][38] = 4,
+	[0][1][2][1][9][38] = 76,
+	[0][1][2][1][8][38] = 30,
+	[0][1][2][1][11][38] = 28,
+	[0][1][2][1][2][40] = 76,
+	[0][1][2][1][1][40] = 4,
+	[0][1][2][1][3][40] = 127,
+	[0][1][2][1][5][40] = 76,
+	[0][1][2][1][6][40] = 4,
+	[0][1][2][1][9][40] = 76,
+	[0][1][2][1][8][40] = 30,
+	[0][1][2][1][11][40] = 28,
+	[0][1][2][1][2][42] = 76,
+	[0][1][2][1][1][42] = 4,
+	[0][1][2][1][3][42] = 127,
+	[0][1][2][1][5][42] = 76,
+	[0][1][2][1][6][42] = 4,
+	[0][1][2][1][9][42] = 76,
+	[0][1][2][1][8][42] = 30,
+	[0][1][2][1][11][42] = 28,
+	[0][1][2][1][2][44] = 76,
+	[0][1][2][1][1][44] = 4,
+	[0][1][2][1][3][44] = 127,
+	[0][1][2][1][5][44] = 76,
+	[0][1][2][1][6][44] = 4,
+	[0][1][2][1][9][44] = 76,
+	[0][1][2][1][8][44] = 30,
+	[0][1][2][1][11][44] = 28,
+	[0][1][2][1][2][46] = 76,
+	[0][1][2][1][1][46] = 4,
+	[0][1][2][1][3][46] = 127,
+	[0][1][2][1][5][46] = 76,
+	[0][1][2][1][6][46] = 4,
+	[0][1][2][1][9][46] = 76,
+	[0][1][2][1][8][46] = 30,
+	[0][1][2][1][11][46] = 28,
+	[1][0][2][0][2][1] = 68,
+	[1][0][2][0][1][1] = 64,
+	[1][0][2][0][3][1] = 62,
+	[1][0][2][0][5][1] = 64,
+	[1][0][2][0][6][1] = 64,
+	[1][0][2][0][9][1] = 64,
+	[1][0][2][0][8][1] = 30,
+	[1][0][2][0][11][1] = 52,
+	[1][0][2][0][2][5] = 72,
+	[1][0][2][0][1][5] = 64,
+	[1][0][2][0][3][5] = 62,
+	[1][0][2][0][5][5] = 64,
+	[1][0][2][0][6][5] = 60,
+	[1][0][2][0][9][5] = 64,
+	[1][0][2][0][8][5] = 30,
+	[1][0][2][0][11][5] = 52,
+	[1][0][2][0][2][9] = 72,
+	[1][0][2][0][1][9] = 64,
+	[1][0][2][0][3][9] = 62,
+	[1][0][2][0][5][9] = 64,
+	[1][0][2][0][6][9] = 64,
+	[1][0][2][0][9][9] = 64,
+	[1][0][2][0][8][9] = 54,
+	[1][0][2][0][11][9] = 52,
+	[1][0][2][0][2][13] = 66,
+	[1][0][2][0][1][13] = 64,
+	[1][0][2][0][3][13] = 62,
+	[1][0][2][0][5][13] = 64,
+	[1][0][2][0][6][13] = 64,
+	[1][0][2][0][9][13] = 64,
+	[1][0][2][0][8][13] = 54,
+	[1][0][2][0][11][13] = 52,
+	[1][0][2][0][2][16] = 62,
+	[1][0][2][0][1][16] = 64,
+	[1][0][2][0][3][16] = 72,
+	[1][0][2][0][5][16] = 62,
+	[1][0][2][0][6][16] = 64,
+	[1][0][2][0][9][16] = 64,
+	[1][0][2][0][8][16] = 54,
+	[1][0][2][0][11][16] = 52,
+	[1][0][2][0][2][20] = 72,
+	[1][0][2][0][1][20] = 64,
+	[1][0][2][0][3][20] = 72,
+	[1][0][2][0][5][20] = 72,
+	[1][0][2][0][6][20] = 64,
+	[1][0][2][0][9][20] = 64,
+	[1][0][2][0][8][20] = 54,
+	[1][0][2][0][11][20] = 52,
+	[1][0][2][0][2][24] = 72,
+	[1][0][2][0][1][24] = 64,
+	[1][0][2][0][3][24] = 72,
+	[1][0][2][0][5][24] = 127,
+	[1][0][2][0][6][24] = 64,
+	[1][0][2][0][9][24] = 127,
+	[1][0][2][0][8][24] = 54,
+	[1][0][2][0][11][24] = 52,
+	[1][0][2][0][2][28] = 72,
+	[1][0][2][0][1][28] = 64,
+	[1][0][2][0][3][28] = 72,
+	[1][0][2][0][5][28] = 127,
+	[1][0][2][0][6][28] = 64,
+	[1][0][2][0][9][28] = 127,
+	[1][0][2][0][8][28] = 54,
+	[1][0][2][0][11][28] = 52,
+	[1][0][2][0][2][32] = 72,
+	[1][0][2][0][1][32] = 64,
+	[1][0][2][0][3][32] = 72,
+	[1][0][2][0][5][32] = 72,
+	[1][0][2][0][6][32] = 64,
+	[1][0][2][0][9][32] = 64,
+	[1][0][2][0][8][32] = 54,
+	[1][0][2][0][11][32] = 52,
+	[1][0][2][0][2][36] = 72,
+	[1][0][2][0][1][36] = 127,
+	[1][0][2][0][3][36] = 72,
+	[1][0][2][0][5][36] = 72,
+	[1][0][2][0][6][36] = 64,
+	[1][0][2][0][9][36] = 72,
+	[1][0][2][0][8][36] = 54,
+	[1][0][2][0][11][36] = 127,
+	[1][0][2][0][2][39] = 72,
+	[1][0][2][0][1][39] = 28,
+	[1][0][2][0][3][39] = 127,
+	[1][0][2][0][5][39] = 72,
+	[1][0][2][0][6][39] = 28,
+	[1][0][2][0][9][39] = 72,
+	[1][0][2][0][8][39] = 54,
+	[1][0][2][0][11][39] = 52,
+	[1][0][2][0][2][43] = 72,
+	[1][0][2][0][1][43] = 28,
+	[1][0][2][0][3][43] = 127,
+	[1][0][2][0][5][43] = 72,
+	[1][0][2][0][6][43] = 28,
+	[1][0][2][0][9][43] = 72,
+	[1][0][2][0][8][43] = 54,
+	[1][0][2][0][11][43] = 52,
+	[1][1][2][0][2][1] = 58,
+	[1][1][2][0][1][1] = 52,
+	[1][1][2][0][3][1] = 50,
+	[1][1][2][0][5][1] = 52,
+	[1][1][2][0][6][1] = 52,
+	[1][1][2][0][9][1] = 52,
+	[1][1][2][0][8][1] = 18,
+	[1][1][2][0][11][1] = 40,
+	[1][1][2][0][2][5] = 72,
+	[1][1][2][0][1][5] = 52,
+	[1][1][2][0][3][5] = 50,
+	[1][1][2][0][5][5] = 52,
+	[1][1][2][0][6][5] = 46,
+	[1][1][2][0][9][5] = 52,
+	[1][1][2][0][8][5] = 18,
+	[1][1][2][0][11][5] = 40,
+	[1][1][2][0][2][9] = 72,
+	[1][1][2][0][1][9] = 52,
+	[1][1][2][0][3][9] = 50,
+	[1][1][2][0][5][9] = 52,
+	[1][1][2][0][6][9] = 52,
+	[1][1][2][0][9][9] = 52,
+	[1][1][2][0][8][9] = 42,
+	[1][1][2][0][11][9] = 40,
+	[1][1][2][0][2][13] = 58,
+	[1][1][2][0][1][13] = 52,
+	[1][1][2][0][3][13] = 50,
+	[1][1][2][0][5][13] = 52,
+	[1][1][2][0][6][13] = 52,
+	[1][1][2][0][9][13] = 52,
+	[1][1][2][0][8][13] = 42,
+	[1][1][2][0][11][13] = 40,
+	[1][1][2][0][2][16] = 56,
+	[1][1][2][0][1][16] = 52,
+	[1][1][2][0][3][16] = 72,
+	[1][1][2][0][5][16] = 56,
+	[1][1][2][0][6][16] = 52,
+	[1][1][2][0][9][16] = 52,
+	[1][1][2][0][8][16] = 42,
+	[1][1][2][0][11][16] = 40,
+	[1][1][2][0][2][20] = 72,
+	[1][1][2][0][1][20] = 52,
+	[1][1][2][0][3][20] = 72,
+	[1][1][2][0][5][20] = 72,
+	[1][1][2][0][6][20] = 52,
+	[1][1][2][0][9][20] = 52,
+	[1][1][2][0][8][20] = 42,
+	[1][1][2][0][11][20] = 40,
+	[1][1][2][0][2][24] = 72,
+	[1][1][2][0][1][24] = 52,
+	[1][1][2][0][3][24] = 72,
+	[1][1][2][0][5][24] = 127,
+	[1][1][2][0][6][24] = 52,
+	[1][1][2][0][9][24] = 127,
+	[1][1][2][0][8][24] = 42,
+	[1][1][2][0][11][24] = 40,
+	[1][1][2][0][2][28] = 72,
+	[1][1][2][0][1][28] = 52,
+	[1][1][2][0][3][28] = 72,
+	[1][1][2][0][5][28] = 127,
+	[1][1][2][0][6][28] = 52,
+	[1][1][2][0][9][28] = 127,
+	[1][1][2][0][8][28] = 42,
+	[1][1][2][0][11][28] = 40,
+	[1][1][2][0][2][32] = 68,
+	[1][1][2][0][1][32] = 52,
+	[1][1][2][0][3][32] = 72,
+	[1][1][2][0][5][32] = 68,
+	[1][1][2][0][6][32] = 52,
+	[1][1][2][0][9][32] = 52,
+	[1][1][2][0][8][32] = 42,
+	[1][1][2][0][11][32] = 40,
+	[1][1][2][0][2][36] = 72,
+	[1][1][2][0][1][36] = 127,
+	[1][1][2][0][3][36] = 72,
+	[1][1][2][0][5][36] = 72,
+	[1][1][2][0][6][36] = 52,
+	[1][1][2][0][9][36] = 72,
+	[1][1][2][0][8][36] = 42,
+	[1][1][2][0][11][36] = 127,
+	[1][1][2][0][2][39] = 72,
+	[1][1][2][0][1][39] = 16,
+	[1][1][2][0][3][39] = 127,
+	[1][1][2][0][5][39] = 72,
+	[1][1][2][0][6][39] = 16,
+	[1][1][2][0][9][39] = 72,
+	[1][1][2][0][8][39] = 42,
+	[1][1][2][0][11][39] = 40,
+	[1][1][2][0][2][43] = 72,
+	[1][1][2][0][1][43] = 16,
+	[1][1][2][0][3][43] = 127,
+	[1][1][2][0][5][43] = 72,
+	[1][1][2][0][6][43] = 16,
+	[1][1][2][0][9][43] = 72,
+	[1][1][2][0][8][43] = 42,
+	[1][1][2][0][11][43] = 40,
+	[1][1][2][1][2][1] = 58,
+	[1][1][2][1][1][1] = 40,
+	[1][1][2][1][3][1] = 50,
+	[1][1][2][1][5][1] = 40,
+	[1][1][2][1][6][1] = 40,
+	[1][1][2][1][9][1] = 40,
+	[1][1][2][1][8][1] = 6,
+	[1][1][2][1][11][1] = 28,
+	[1][1][2][1][2][5] = 68,
+	[1][1][2][1][1][5] = 40,
+	[1][1][2][1][3][5] = 50,
+	[1][1][2][1][5][5] = 40,
+	[1][1][2][1][6][5] = 40,
+	[1][1][2][1][9][5] = 40,
+	[1][1][2][1][8][5] = 6,
+	[1][1][2][1][11][5] = 28,
+	[1][1][2][1][2][9] = 68,
+	[1][1][2][1][1][9] = 40,
+	[1][1][2][1][3][9] = 50,
+	[1][1][2][1][5][9] = 40,
+	[1][1][2][1][6][9] = 40,
+	[1][1][2][1][9][9] = 40,
+	[1][1][2][1][8][9] = 30,
+	[1][1][2][1][11][9] = 28,
+	[1][1][2][1][2][13] = 58,
+	[1][1][2][1][1][13] = 40,
+	[1][1][2][1][3][13] = 50,
+	[1][1][2][1][5][13] = 40,
+	[1][1][2][1][6][13] = 40,
+	[1][1][2][1][9][13] = 40,
+	[1][1][2][1][8][13] = 30,
+	[1][1][2][1][11][13] = 28,
+	[1][1][2][1][2][16] = 56,
+	[1][1][2][1][1][16] = 40,
+	[1][1][2][1][3][16] = 72,
+	[1][1][2][1][5][16] = 56,
+	[1][1][2][1][6][16] = 40,
+	[1][1][2][1][9][16] = 40,
+	[1][1][2][1][8][16] = 30,
+	[1][1][2][1][11][16] = 28,
+	[1][1][2][1][2][20] = 68,
+	[1][1][2][1][1][20] = 40,
+	[1][1][2][1][3][20] = 72,
+	[1][1][2][1][5][20] = 68,
+	[1][1][2][1][6][20] = 40,
+	[1][1][2][1][9][20] = 40,
+	[1][1][2][1][8][20] = 30,
+	[1][1][2][1][11][20] = 28,
+	[1][1][2][1][2][24] = 68,
+	[1][1][2][1][1][24] = 40,
+	[1][1][2][1][3][24] = 72,
+	[1][1][2][1][5][24] = 127,
+	[1][1][2][1][6][24] = 40,
+	[1][1][2][1][9][24] = 127,
+	[1][1][2][1][8][24] = 30,
+	[1][1][2][1][11][24] = 28,
+	[1][1][2][1][2][28] = 68,
+	[1][1][2][1][1][28] = 40,
+	[1][1][2][1][3][28] = 72,
+	[1][1][2][1][5][28] = 127,
+	[1][1][2][1][6][28] = 40,
+	[1][1][2][1][9][28] = 127,
+	[1][1][2][1][8][28] = 30,
+	[1][1][2][1][11][28] = 28,
+	[1][1][2][1][2][32] = 68,
+	[1][1][2][1][1][32] = 40,
+	[1][1][2][1][3][32] = 72,
+	[1][1][2][1][5][32] = 68,
+	[1][1][2][1][6][32] = 40,
+	[1][1][2][1][9][32] = 40,
+	[1][1][2][1][8][32] = 30,
+	[1][1][2][1][11][32] = 28,
+	[1][1][2][1][2][36] = 68,
+	[1][1][2][1][1][36] = 127,
+	[1][1][2][1][3][36] = 72,
+	[1][1][2][1][5][36] = 68,
+	[1][1][2][1][6][36] = 40,
+	[1][1][2][1][9][36] = 68,
+	[1][1][2][1][8][36] = 30,
+	[1][1][2][1][11][36] = 127,
+	[1][1][2][1][2][39] = 72,
+	[1][1][2][1][1][39] = 4,
+	[1][1][2][1][3][39] = 127,
+	[1][1][2][1][5][39] = 72,
+	[1][1][2][1][6][39] = 4,
+	[1][1][2][1][9][39] = 72,
+	[1][1][2][1][8][39] = 30,
+	[1][1][2][1][11][39] = 28,
+	[1][1][2][1][2][43] = 72,
+	[1][1][2][1][1][43] = 4,
+	[1][1][2][1][3][43] = 127,
+	[1][1][2][1][5][43] = 72,
+	[1][1][2][1][6][43] = 4,
+	[1][1][2][1][9][43] = 72,
+	[1][1][2][1][8][43] = 30,
+	[1][1][2][1][11][43] = 28,
+	[2][0][2][0][2][3] = 64,
+	[2][0][2][0][1][3] = 64,
+	[2][0][2][0][3][3] = 64,
+	[2][0][2][0][5][3] = 62,
+	[2][0][2][0][6][3] = 64,
+	[2][0][2][0][9][3] = 64,
+	[2][0][2][0][8][3] = 30,
+	[2][0][2][0][11][3] = 52,
+	[2][0][2][0][2][11] = 64,
+	[2][0][2][0][1][11] = 64,
+	[2][0][2][0][3][11] = 64,
+	[2][0][2][0][5][11] = 62,
+	[2][0][2][0][6][11] = 64,
+	[2][0][2][0][9][11] = 64,
+	[2][0][2][0][8][11] = 54,
+	[2][0][2][0][11][11] = 52,
+	[2][0][2][0][2][18] = 62,
+	[2][0][2][0][1][18] = 64,
+	[2][0][2][0][3][18] = 72,
+	[2][0][2][0][5][18] = 66,
+	[2][0][2][0][6][18] = 64,
+	[2][0][2][0][9][18] = 64,
+	[2][0][2][0][8][18] = 54,
+	[2][0][2][0][11][18] = 52,
+	[2][0][2][0][2][26] = 72,
+	[2][0][2][0][1][26] = 64,
+	[2][0][2][0][3][26] = 72,
+	[2][0][2][0][5][26] = 127,
+	[2][0][2][0][6][26] = 64,
+	[2][0][2][0][9][26] = 127,
+	[2][0][2][0][8][26] = 54,
+	[2][0][2][0][11][26] = 52,
+	[2][0][2][0][2][34] = 72,
+	[2][0][2][0][1][34] = 127,
+	[2][0][2][0][3][34] = 72,
+	[2][0][2][0][5][34] = 72,
+	[2][0][2][0][6][34] = 64,
+	[2][0][2][0][9][34] = 72,
+	[2][0][2][0][8][34] = 54,
+	[2][0][2][0][11][34] = 127,
+	[2][0][2][0][2][41] = 72,
+	[2][0][2][0][1][41] = 28,
+	[2][0][2][0][3][41] = 127,
+	[2][0][2][0][5][41] = 72,
+	[2][0][2][0][6][41] = 28,
+	[2][0][2][0][9][41] = 72,
+	[2][0][2][0][8][41] = 54,
+	[2][0][2][0][11][41] = 52,
+	[2][1][2][0][2][3] = 56,
+	[2][1][2][0][1][3] = 52,
+	[2][1][2][0][3][3] = 52,
+	[2][1][2][0][5][3] = 52,
+	[2][1][2][0][6][3] = 52,
+	[2][1][2][0][9][3] = 52,
+	[2][1][2][0][8][3] = 18,
+	[2][1][2][0][11][3] = 40,
+	[2][1][2][0][2][11] = 56,
+	[2][1][2][0][1][11] = 52,
+	[2][1][2][0][3][11] = 52,
+	[2][1][2][0][5][11] = 52,
+	[2][1][2][0][6][11] = 52,
+	[2][1][2][0][9][11] = 52,
+	[2][1][2][0][8][11] = 42,
+	[2][1][2][0][11][11] = 40,
+	[2][1][2][0][2][18] = 56,
+	[2][1][2][0][1][18] = 52,
+	[2][1][2][0][3][18] = 72,
+	[2][1][2][0][5][18] = 56,
+	[2][1][2][0][6][18] = 52,
+	[2][1][2][0][9][18] = 52,
+	[2][1][2][0][8][18] = 42,
+	[2][1][2][0][11][18] = 40,
+	[2][1][2][0][2][26] = 72,
+	[2][1][2][0][1][26] = 52,
+	[2][1][2][0][3][26] = 72,
+	[2][1][2][0][5][26] = 127,
+	[2][1][2][0][6][26] = 52,
+	[2][1][2][0][9][26] = 127,
+	[2][1][2][0][8][26] = 42,
+	[2][1][2][0][11][26] = 40,
+	[2][1][2][0][2][34] = 72,
+	[2][1][2][0][1][34] = 127,
+	[2][1][2][0][3][34] = 72,
+	[2][1][2][0][5][34] = 72,
+	[2][1][2][0][6][34] = 52,
+	[2][1][2][0][9][34] = 72,
+	[2][1][2][0][8][34] = 42,
+	[2][1][2][0][11][34] = 127,
+	[2][1][2][0][2][41] = 72,
+	[2][1][2][0][1][41] = 16,
+	[2][1][2][0][3][41] = 127,
+	[2][1][2][0][5][41] = 72,
+	[2][1][2][0][6][41] = 16,
+	[2][1][2][0][9][41] = 72,
+	[2][1][2][0][8][41] = 42,
+	[2][1][2][0][11][41] = 40,
+	[2][1][2][1][2][3] = 56,
+	[2][1][2][1][1][3] = 40,
+	[2][1][2][1][3][3] = 52,
+	[2][1][2][1][5][3] = 40,
+	[2][1][2][1][6][3] = 40,
+	[2][1][2][1][9][3] = 40,
+	[2][1][2][1][8][3] = 6,
+	[2][1][2][1][11][3] = 28,
+	[2][1][2][1][2][11] = 56,
+	[2][1][2][1][1][11] = 40,
+	[2][1][2][1][3][11] = 52,
+	[2][1][2][1][5][11] = 40,
+	[2][1][2][1][6][11] = 40,
+	[2][1][2][1][9][11] = 40,
+	[2][1][2][1][8][11] = 30,
+	[2][1][2][1][11][11] = 28,
+	[2][1][2][1][2][18] = 56,
+	[2][1][2][1][1][18] = 40,
+	[2][1][2][1][3][18] = 72,
+	[2][1][2][1][5][18] = 56,
+	[2][1][2][1][6][18] = 40,
+	[2][1][2][1][9][18] = 40,
+	[2][1][2][1][8][18] = 30,
+	[2][1][2][1][11][18] = 28,
+	[2][1][2][1][2][26] = 68,
+	[2][1][2][1][1][26] = 40,
+	[2][1][2][1][3][26] = 72,
+	[2][1][2][1][5][26] = 127,
+	[2][1][2][1][6][26] = 40,
+	[2][1][2][1][9][26] = 127,
+	[2][1][2][1][8][26] = 30,
+	[2][1][2][1][11][26] = 28,
+	[2][1][2][1][2][34] = 68,
+	[2][1][2][1][1][34] = 127,
+	[2][1][2][1][3][34] = 72,
+	[2][1][2][1][5][34] = 68,
+	[2][1][2][1][6][34] = 40,
+	[2][1][2][1][9][34] = 68,
+	[2][1][2][1][8][34] = 30,
+	[2][1][2][1][11][34] = 127,
+	[2][1][2][1][2][41] = 72,
+	[2][1][2][1][1][41] = 4,
+	[2][1][2][1][3][41] = 127,
+	[2][1][2][1][5][41] = 72,
+	[2][1][2][1][6][41] = 4,
+	[2][1][2][1][9][41] = 72,
+	[2][1][2][1][8][41] = 30,
+	[2][1][2][1][11][41] = 28,
 };
 
 const s8 rtw89_8852a_txpwr_lmt_ru_2g[RTW89_RU_NUM][RTW89_NTX_NUM]
 				    [RTW89_REGD_NUM][RTW89_2G_CH_NUM] = {
-	[0][0][RTW89_WW][0] = 32,
-	[0][0][RTW89_WW][1] = 32,
-	[0][0][RTW89_WW][2] = 32,
-	[0][0][RTW89_WW][3] = 32,
-	[0][0][RTW89_WW][4] = 32,
-	[0][0][RTW89_WW][5] = 32,
-	[0][0][RTW89_WW][6] = 32,
-	[0][0][RTW89_WW][7] = 32,
-	[0][0][RTW89_WW][8] = 32,
-	[0][0][RTW89_WW][9] = 32,
-	[0][0][RTW89_WW][10] = 32,
-	[0][0][RTW89_WW][11] = 32,
-	[0][0][RTW89_WW][12] = 32,
-	[0][0][RTW89_WW][13] = 0,
-	[0][1][RTW89_WW][0] = 20,
-	[0][1][RTW89_WW][1] = 20,
-	[0][1][RTW89_WW][2] = 20,
-	[0][1][RTW89_WW][3] = 20,
-	[0][1][RTW89_WW][4] = 20,
-	[0][1][RTW89_WW][5] = 20,
-	[0][1][RTW89_WW][6] = 20,
-	[0][1][RTW89_WW][7] = 20,
-	[0][1][RTW89_WW][8] = 20,
-	[0][1][RTW89_WW][9] = 20,
-	[0][1][RTW89_WW][10] = 20,
-	[0][1][RTW89_WW][11] = 20,
-	[0][1][RTW89_WW][12] = 20,
-	[0][1][RTW89_WW][13] = 0,
-	[1][0][RTW89_WW][0] = 42,
-	[1][0][RTW89_WW][1] = 42,
-	[1][0][RTW89_WW][2] = 42,
-	[1][0][RTW89_WW][3] = 42,
-	[1][0][RTW89_WW][4] = 42,
-	[1][0][RTW89_WW][5] = 42,
-	[1][0][RTW89_WW][6] = 42,
-	[1][0][RTW89_WW][7] = 42,
-	[1][0][RTW89_WW][8] = 42,
-	[1][0][RTW89_WW][9] = 42,
-	[1][0][RTW89_WW][10] = 42,
-	[1][0][RTW89_WW][11] = 42,
-	[1][0][RTW89_WW][12] = 36,
-	[1][0][RTW89_WW][13] = 0,
-	[1][1][RTW89_WW][0] = 30,
-	[1][1][RTW89_WW][1] = 30,
-	[1][1][RTW89_WW][2] = 30,
-	[1][1][RTW89_WW][3] = 30,
-	[1][1][RTW89_WW][4] = 30,
-	[1][1][RTW89_WW][5] = 30,
-	[1][1][RTW89_WW][6] = 30,
-	[1][1][RTW89_WW][7] = 30,
-	[1][1][RTW89_WW][8] = 30,
-	[1][1][RTW89_WW][9] = 30,
-	[1][1][RTW89_WW][10] = 30,
-	[1][1][RTW89_WW][11] = 30,
-	[1][1][RTW89_WW][12] = 30,
-	[1][1][RTW89_WW][13] = 0,
-	[2][0][RTW89_WW][0] = 52,
-	[2][0][RTW89_WW][1] = 52,
-	[2][0][RTW89_WW][2] = 52,
-	[2][0][RTW89_WW][3] = 52,
-	[2][0][RTW89_WW][4] = 52,
-	[2][0][RTW89_WW][5] = 52,
-	[2][0][RTW89_WW][6] = 52,
-	[2][0][RTW89_WW][7] = 52,
-	[2][0][RTW89_WW][8] = 52,
-	[2][0][RTW89_WW][9] = 52,
-	[2][0][RTW89_WW][10] = 52,
-	[2][0][RTW89_WW][11] = 52,
-	[2][0][RTW89_WW][12] = 40,
-	[2][0][RTW89_WW][13] = 0,
-	[2][1][RTW89_WW][0] = 40,
-	[2][1][RTW89_WW][1] = 40,
-	[2][1][RTW89_WW][2] = 40,
-	[2][1][RTW89_WW][3] = 40,
-	[2][1][RTW89_WW][4] = 40,
-	[2][1][RTW89_WW][5] = 40,
-	[2][1][RTW89_WW][6] = 40,
-	[2][1][RTW89_WW][7] = 40,
-	[2][1][RTW89_WW][8] = 40,
-	[2][1][RTW89_WW][9] = 40,
-	[2][1][RTW89_WW][10] = 40,
-	[2][1][RTW89_WW][11] = 40,
-	[2][1][RTW89_WW][12] = 26,
-	[2][1][RTW89_WW][13] = 0,
-	[0][0][RTW89_FCC][0] = 70,
-	[0][0][RTW89_ETSI][0] = 32,
-	[0][0][RTW89_MKK][0] = 40,
-	[0][0][RTW89_IC][0] = 70,
-	[0][0][RTW89_KCC][0] = 46,
-	[0][0][RTW89_ACMA][0] = 32,
-	[0][0][RTW89_CHILE][0] = 60,
-	[0][0][RTW89_UKRAINE][0] = 32,
-	[0][0][RTW89_MEXICO][0] = 70,
-	[0][0][RTW89_CN][0] = 32,
-	[0][0][RTW89_QATAR][0] = 32,
-	[0][0][RTW89_FCC][1] = 70,
-	[0][0][RTW89_ETSI][1] = 32,
-	[0][0][RTW89_MKK][1] = 40,
-	[0][0][RTW89_IC][1] = 70,
-	[0][0][RTW89_KCC][1] = 46,
-	[0][0][RTW89_ACMA][1] = 32,
-	[0][0][RTW89_CHILE][1] = 60,
-	[0][0][RTW89_UKRAINE][1] = 32,
-	[0][0][RTW89_MEXICO][1] = 70,
-	[0][0][RTW89_CN][1] = 32,
-	[0][0][RTW89_QATAR][1] = 32,
-	[0][0][RTW89_FCC][2] = 74,
-	[0][0][RTW89_ETSI][2] = 32,
-	[0][0][RTW89_MKK][2] = 40,
-	[0][0][RTW89_IC][2] = 74,
-	[0][0][RTW89_KCC][2] = 46,
-	[0][0][RTW89_ACMA][2] = 32,
-	[0][0][RTW89_CHILE][2] = 60,
-	[0][0][RTW89_UKRAINE][2] = 32,
-	[0][0][RTW89_MEXICO][2] = 74,
-	[0][0][RTW89_CN][2] = 32,
-	[0][0][RTW89_QATAR][2] = 32,
-	[0][0][RTW89_FCC][3] = 78,
-	[0][0][RTW89_ETSI][3] = 32,
-	[0][0][RTW89_MKK][3] = 40,
-	[0][0][RTW89_IC][3] = 78,
-	[0][0][RTW89_KCC][3] = 46,
-	[0][0][RTW89_ACMA][3] = 32,
-	[0][0][RTW89_CHILE][3] = 60,
-	[0][0][RTW89_UKRAINE][3] = 32,
-	[0][0][RTW89_MEXICO][3] = 78,
-	[0][0][RTW89_CN][3] = 32,
-	[0][0][RTW89_QATAR][3] = 32,
-	[0][0][RTW89_FCC][4] = 78,
-	[0][0][RTW89_ETSI][4] = 32,
-	[0][0][RTW89_MKK][4] = 40,
-	[0][0][RTW89_IC][4] = 78,
-	[0][0][RTW89_KCC][4] = 46,
-	[0][0][RTW89_ACMA][4] = 32,
-	[0][0][RTW89_CHILE][4] = 60,
-	[0][0][RTW89_UKRAINE][4] = 32,
-	[0][0][RTW89_MEXICO][4] = 78,
-	[0][0][RTW89_CN][4] = 32,
-	[0][0][RTW89_QATAR][4] = 32,
-	[0][0][RTW89_FCC][5] = 78,
-	[0][0][RTW89_ETSI][5] = 32,
-	[0][0][RTW89_MKK][5] = 40,
-	[0][0][RTW89_IC][5] = 78,
-	[0][0][RTW89_KCC][5] = 46,
-	[0][0][RTW89_ACMA][5] = 32,
-	[0][0][RTW89_CHILE][5] = 60,
-	[0][0][RTW89_UKRAINE][5] = 32,
-	[0][0][RTW89_MEXICO][5] = 78,
-	[0][0][RTW89_CN][5] = 32,
-	[0][0][RTW89_QATAR][5] = 32,
-	[0][0][RTW89_FCC][6] = 78,
-	[0][0][RTW89_ETSI][6] = 32,
-	[0][0][RTW89_MKK][6] = 40,
-	[0][0][RTW89_IC][6] = 78,
-	[0][0][RTW89_KCC][6] = 46,
-	[0][0][RTW89_ACMA][6] = 32,
-	[0][0][RTW89_CHILE][6] = 60,
-	[0][0][RTW89_UKRAINE][6] = 32,
-	[0][0][RTW89_MEXICO][6] = 78,
-	[0][0][RTW89_CN][6] = 32,
-	[0][0][RTW89_QATAR][6] = 32,
-	[0][0][RTW89_FCC][7] = 78,
-	[0][0][RTW89_ETSI][7] = 32,
-	[0][0][RTW89_MKK][7] = 40,
-	[0][0][RTW89_IC][7] = 78,
-	[0][0][RTW89_KCC][7] = 46,
-	[0][0][RTW89_ACMA][7] = 32,
-	[0][0][RTW89_CHILE][7] = 60,
-	[0][0][RTW89_UKRAINE][7] = 32,
-	[0][0][RTW89_MEXICO][7] = 78,
-	[0][0][RTW89_CN][7] = 32,
-	[0][0][RTW89_QATAR][7] = 32,
-	[0][0][RTW89_FCC][8] = 74,
-	[0][0][RTW89_ETSI][8] = 32,
-	[0][0][RTW89_MKK][8] = 40,
-	[0][0][RTW89_IC][8] = 74,
-	[0][0][RTW89_KCC][8] = 46,
-	[0][0][RTW89_ACMA][8] = 32,
-	[0][0][RTW89_CHILE][8] = 60,
-	[0][0][RTW89_UKRAINE][8] = 32,
-	[0][0][RTW89_MEXICO][8] = 74,
-	[0][0][RTW89_CN][8] = 32,
-	[0][0][RTW89_QATAR][8] = 32,
-	[0][0][RTW89_FCC][9] = 70,
-	[0][0][RTW89_ETSI][9] = 32,
-	[0][0][RTW89_MKK][9] = 40,
-	[0][0][RTW89_IC][9] = 70,
-	[0][0][RTW89_KCC][9] = 46,
-	[0][0][RTW89_ACMA][9] = 32,
-	[0][0][RTW89_CHILE][9] = 60,
-	[0][0][RTW89_UKRAINE][9] = 32,
-	[0][0][RTW89_MEXICO][9] = 70,
-	[0][0][RTW89_CN][9] = 32,
-	[0][0][RTW89_QATAR][9] = 32,
-	[0][0][RTW89_FCC][10] = 70,
-	[0][0][RTW89_ETSI][10] = 32,
-	[0][0][RTW89_MKK][10] = 40,
-	[0][0][RTW89_IC][10] = 70,
-	[0][0][RTW89_KCC][10] = 46,
-	[0][0][RTW89_ACMA][10] = 32,
-	[0][0][RTW89_CHILE][10] = 60,
-	[0][0][RTW89_UKRAINE][10] = 32,
-	[0][0][RTW89_MEXICO][10] = 70,
-	[0][0][RTW89_CN][10] = 32,
-	[0][0][RTW89_QATAR][10] = 32,
-	[0][0][RTW89_FCC][11] = 58,
-	[0][0][RTW89_ETSI][11] = 32,
-	[0][0][RTW89_MKK][11] = 40,
-	[0][0][RTW89_IC][11] = 58,
-	[0][0][RTW89_KCC][11] = 46,
-	[0][0][RTW89_ACMA][11] = 32,
-	[0][0][RTW89_CHILE][11] = 58,
-	[0][0][RTW89_UKRAINE][11] = 32,
-	[0][0][RTW89_MEXICO][11] = 58,
-	[0][0][RTW89_CN][11] = 32,
-	[0][0][RTW89_QATAR][11] = 32,
-	[0][0][RTW89_FCC][12] = 34,
-	[0][0][RTW89_ETSI][12] = 32,
-	[0][0][RTW89_MKK][12] = 40,
-	[0][0][RTW89_IC][12] = 34,
-	[0][0][RTW89_KCC][12] = 46,
-	[0][0][RTW89_ACMA][12] = 32,
-	[0][0][RTW89_CHILE][12] = 34,
-	[0][0][RTW89_UKRAINE][12] = 32,
-	[0][0][RTW89_MEXICO][12] = 34,
-	[0][0][RTW89_CN][12] = 32,
-	[0][0][RTW89_QATAR][12] = 32,
-	[0][0][RTW89_FCC][13] = 127,
-	[0][0][RTW89_ETSI][13] = 127,
-	[0][0][RTW89_MKK][13] = 127,
-	[0][0][RTW89_IC][13] = 127,
-	[0][0][RTW89_KCC][13] = 127,
-	[0][0][RTW89_ACMA][13] = 127,
-	[0][0][RTW89_CHILE][13] = 127,
-	[0][0][RTW89_UKRAINE][13] = 127,
-	[0][0][RTW89_MEXICO][13] = 127,
-	[0][0][RTW89_CN][13] = 127,
-	[0][0][RTW89_QATAR][13] = 127,
-	[0][1][RTW89_FCC][0] = 64,
-	[0][1][RTW89_ETSI][0] = 20,
-	[0][1][RTW89_MKK][0] = 28,
-	[0][1][RTW89_IC][0] = 64,
-	[0][1][RTW89_KCC][0] = 32,
-	[0][1][RTW89_ACMA][0] = 20,
-	[0][1][RTW89_CHILE][0] = 48,
-	[0][1][RTW89_UKRAINE][0] = 20,
-	[0][1][RTW89_MEXICO][0] = 64,
-	[0][1][RTW89_CN][0] = 20,
-	[0][1][RTW89_QATAR][0] = 20,
-	[0][1][RTW89_FCC][1] = 64,
-	[0][1][RTW89_ETSI][1] = 20,
-	[0][1][RTW89_MKK][1] = 28,
-	[0][1][RTW89_IC][1] = 64,
-	[0][1][RTW89_KCC][1] = 32,
-	[0][1][RTW89_ACMA][1] = 20,
-	[0][1][RTW89_CHILE][1] = 48,
-	[0][1][RTW89_UKRAINE][1] = 20,
-	[0][1][RTW89_MEXICO][1] = 64,
-	[0][1][RTW89_CN][1] = 20,
-	[0][1][RTW89_QATAR][1] = 20,
-	[0][1][RTW89_FCC][2] = 68,
-	[0][1][RTW89_ETSI][2] = 20,
-	[0][1][RTW89_MKK][2] = 28,
-	[0][1][RTW89_IC][2] = 68,
-	[0][1][RTW89_KCC][2] = 32,
-	[0][1][RTW89_ACMA][2] = 20,
-	[0][1][RTW89_CHILE][2] = 48,
-	[0][1][RTW89_UKRAINE][2] = 20,
-	[0][1][RTW89_MEXICO][2] = 68,
-	[0][1][RTW89_CN][2] = 20,
-	[0][1][RTW89_QATAR][2] = 20,
-	[0][1][RTW89_FCC][3] = 72,
-	[0][1][RTW89_ETSI][3] = 20,
-	[0][1][RTW89_MKK][3] = 28,
-	[0][1][RTW89_IC][3] = 72,
-	[0][1][RTW89_KCC][3] = 32,
-	[0][1][RTW89_ACMA][3] = 20,
-	[0][1][RTW89_CHILE][3] = 48,
-	[0][1][RTW89_UKRAINE][3] = 20,
-	[0][1][RTW89_MEXICO][3] = 72,
-	[0][1][RTW89_CN][3] = 20,
-	[0][1][RTW89_QATAR][3] = 20,
-	[0][1][RTW89_FCC][4] = 76,
-	[0][1][RTW89_ETSI][4] = 20,
-	[0][1][RTW89_MKK][4] = 28,
-	[0][1][RTW89_IC][4] = 76,
-	[0][1][RTW89_KCC][4] = 32,
-	[0][1][RTW89_ACMA][4] = 20,
-	[0][1][RTW89_CHILE][4] = 48,
-	[0][1][RTW89_UKRAINE][4] = 20,
-	[0][1][RTW89_MEXICO][4] = 76,
-	[0][1][RTW89_CN][4] = 20,
-	[0][1][RTW89_QATAR][4] = 20,
-	[0][1][RTW89_FCC][5] = 78,
-	[0][1][RTW89_ETSI][5] = 20,
-	[0][1][RTW89_MKK][5] = 28,
-	[0][1][RTW89_IC][5] = 78,
-	[0][1][RTW89_KCC][5] = 32,
-	[0][1][RTW89_ACMA][5] = 20,
-	[0][1][RTW89_CHILE][5] = 48,
-	[0][1][RTW89_UKRAINE][5] = 20,
-	[0][1][RTW89_MEXICO][5] = 78,
-	[0][1][RTW89_CN][5] = 20,
-	[0][1][RTW89_QATAR][5] = 20,
-	[0][1][RTW89_FCC][6] = 76,
-	[0][1][RTW89_ETSI][6] = 20,
-	[0][1][RTW89_MKK][6] = 28,
-	[0][1][RTW89_IC][6] = 76,
-	[0][1][RTW89_KCC][6] = 32,
-	[0][1][RTW89_ACMA][6] = 20,
-	[0][1][RTW89_CHILE][6] = 48,
-	[0][1][RTW89_UKRAINE][6] = 20,
-	[0][1][RTW89_MEXICO][6] = 76,
-	[0][1][RTW89_CN][6] = 20,
-	[0][1][RTW89_QATAR][6] = 20,
-	[0][1][RTW89_FCC][7] = 72,
-	[0][1][RTW89_ETSI][7] = 20,
-	[0][1][RTW89_MKK][7] = 28,
-	[0][1][RTW89_IC][7] = 72,
-	[0][1][RTW89_KCC][7] = 32,
-	[0][1][RTW89_ACMA][7] = 20,
-	[0][1][RTW89_CHILE][7] = 48,
-	[0][1][RTW89_UKRAINE][7] = 20,
-	[0][1][RTW89_MEXICO][7] = 72,
-	[0][1][RTW89_CN][7] = 20,
-	[0][1][RTW89_QATAR][7] = 20,
-	[0][1][RTW89_FCC][8] = 68,
-	[0][1][RTW89_ETSI][8] = 20,
-	[0][1][RTW89_MKK][8] = 28,
-	[0][1][RTW89_IC][8] = 68,
-	[0][1][RTW89_KCC][8] = 32,
-	[0][1][RTW89_ACMA][8] = 20,
-	[0][1][RTW89_CHILE][8] = 48,
-	[0][1][RTW89_UKRAINE][8] = 20,
-	[0][1][RTW89_MEXICO][8] = 68,
-	[0][1][RTW89_CN][8] = 20,
-	[0][1][RTW89_QATAR][8] = 20,
-	[0][1][RTW89_FCC][9] = 64,
-	[0][1][RTW89_ETSI][9] = 20,
-	[0][1][RTW89_MKK][9] = 28,
-	[0][1][RTW89_IC][9] = 64,
-	[0][1][RTW89_KCC][9] = 32,
-	[0][1][RTW89_ACMA][9] = 20,
-	[0][1][RTW89_CHILE][9] = 48,
-	[0][1][RTW89_UKRAINE][9] = 20,
-	[0][1][RTW89_MEXICO][9] = 64,
-	[0][1][RTW89_CN][9] = 20,
-	[0][1][RTW89_QATAR][9] = 20,
-	[0][1][RTW89_FCC][10] = 64,
-	[0][1][RTW89_ETSI][10] = 20,
-	[0][1][RTW89_MKK][10] = 28,
-	[0][1][RTW89_IC][10] = 64,
-	[0][1][RTW89_KCC][10] = 32,
-	[0][1][RTW89_ACMA][10] = 20,
-	[0][1][RTW89_CHILE][10] = 48,
-	[0][1][RTW89_UKRAINE][10] = 20,
-	[0][1][RTW89_MEXICO][10] = 64,
-	[0][1][RTW89_CN][10] = 20,
-	[0][1][RTW89_QATAR][10] = 20,
-	[0][1][RTW89_FCC][11] = 54,
-	[0][1][RTW89_ETSI][11] = 20,
-	[0][1][RTW89_MKK][11] = 28,
-	[0][1][RTW89_IC][11] = 54,
-	[0][1][RTW89_KCC][11] = 32,
-	[0][1][RTW89_ACMA][11] = 20,
-	[0][1][RTW89_CHILE][11] = 48,
-	[0][1][RTW89_UKRAINE][11] = 20,
-	[0][1][RTW89_MEXICO][11] = 54,
-	[0][1][RTW89_CN][11] = 20,
-	[0][1][RTW89_QATAR][11] = 20,
-	[0][1][RTW89_FCC][12] = 32,
-	[0][1][RTW89_ETSI][12] = 20,
-	[0][1][RTW89_MKK][12] = 28,
-	[0][1][RTW89_IC][12] = 32,
-	[0][1][RTW89_KCC][12] = 32,
-	[0][1][RTW89_ACMA][12] = 20,
-	[0][1][RTW89_CHILE][12] = 32,
-	[0][1][RTW89_UKRAINE][12] = 20,
-	[0][1][RTW89_MEXICO][12] = 32,
-	[0][1][RTW89_CN][12] = 20,
-	[0][1][RTW89_QATAR][12] = 20,
-	[0][1][RTW89_FCC][13] = 127,
-	[0][1][RTW89_ETSI][13] = 127,
-	[0][1][RTW89_MKK][13] = 127,
-	[0][1][RTW89_IC][13] = 127,
-	[0][1][RTW89_KCC][13] = 127,
-	[0][1][RTW89_ACMA][13] = 127,
-	[0][1][RTW89_CHILE][13] = 127,
-	[0][1][RTW89_UKRAINE][13] = 127,
-	[0][1][RTW89_MEXICO][13] = 127,
-	[0][1][RTW89_CN][13] = 127,
-	[0][1][RTW89_QATAR][13] = 127,
-	[1][0][RTW89_FCC][0] = 72,
-	[1][0][RTW89_ETSI][0] = 42,
-	[1][0][RTW89_MKK][0] = 50,
-	[1][0][RTW89_IC][0] = 72,
-	[1][0][RTW89_KCC][0] = 58,
-	[1][0][RTW89_ACMA][0] = 42,
-	[1][0][RTW89_CHILE][0] = 60,
-	[1][0][RTW89_UKRAINE][0] = 42,
-	[1][0][RTW89_MEXICO][0] = 72,
-	[1][0][RTW89_CN][0] = 42,
-	[1][0][RTW89_QATAR][0] = 42,
-	[1][0][RTW89_FCC][1] = 72,
-	[1][0][RTW89_ETSI][1] = 42,
-	[1][0][RTW89_MKK][1] = 50,
-	[1][0][RTW89_IC][1] = 72,
-	[1][0][RTW89_KCC][1] = 58,
-	[1][0][RTW89_ACMA][1] = 42,
-	[1][0][RTW89_CHILE][1] = 60,
-	[1][0][RTW89_UKRAINE][1] = 42,
-	[1][0][RTW89_MEXICO][1] = 72,
-	[1][0][RTW89_CN][1] = 42,
-	[1][0][RTW89_QATAR][1] = 42,
-	[1][0][RTW89_FCC][2] = 76,
-	[1][0][RTW89_ETSI][2] = 42,
-	[1][0][RTW89_MKK][2] = 50,
-	[1][0][RTW89_IC][2] = 76,
-	[1][0][RTW89_KCC][2] = 58,
-	[1][0][RTW89_ACMA][2] = 42,
-	[1][0][RTW89_CHILE][2] = 60,
-	[1][0][RTW89_UKRAINE][2] = 42,
-	[1][0][RTW89_MEXICO][2] = 76,
-	[1][0][RTW89_CN][2] = 42,
-	[1][0][RTW89_QATAR][2] = 42,
-	[1][0][RTW89_FCC][3] = 78,
-	[1][0][RTW89_ETSI][3] = 42,
-	[1][0][RTW89_MKK][3] = 50,
-	[1][0][RTW89_IC][3] = 78,
-	[1][0][RTW89_KCC][3] = 58,
-	[1][0][RTW89_ACMA][3] = 42,
-	[1][0][RTW89_CHILE][3] = 60,
-	[1][0][RTW89_UKRAINE][3] = 42,
-	[1][0][RTW89_MEXICO][3] = 78,
-	[1][0][RTW89_CN][3] = 42,
-	[1][0][RTW89_QATAR][3] = 42,
-	[1][0][RTW89_FCC][4] = 78,
-	[1][0][RTW89_ETSI][4] = 42,
-	[1][0][RTW89_MKK][4] = 50,
-	[1][0][RTW89_IC][4] = 78,
-	[1][0][RTW89_KCC][4] = 58,
-	[1][0][RTW89_ACMA][4] = 42,
-	[1][0][RTW89_CHILE][4] = 60,
-	[1][0][RTW89_UKRAINE][4] = 42,
-	[1][0][RTW89_MEXICO][4] = 78,
-	[1][0][RTW89_CN][4] = 42,
-	[1][0][RTW89_QATAR][4] = 42,
-	[1][0][RTW89_FCC][5] = 78,
-	[1][0][RTW89_ETSI][5] = 42,
-	[1][0][RTW89_MKK][5] = 50,
-	[1][0][RTW89_IC][5] = 78,
-	[1][0][RTW89_KCC][5] = 58,
-	[1][0][RTW89_ACMA][5] = 42,
-	[1][0][RTW89_CHILE][5] = 60,
-	[1][0][RTW89_UKRAINE][5] = 42,
-	[1][0][RTW89_MEXICO][5] = 78,
-	[1][0][RTW89_CN][5] = 42,
-	[1][0][RTW89_QATAR][5] = 42,
-	[1][0][RTW89_FCC][6] = 78,
-	[1][0][RTW89_ETSI][6] = 42,
-	[1][0][RTW89_MKK][6] = 50,
-	[1][0][RTW89_IC][6] = 78,
-	[1][0][RTW89_KCC][6] = 58,
-	[1][0][RTW89_ACMA][6] = 42,
-	[1][0][RTW89_CHILE][6] = 60,
-	[1][0][RTW89_UKRAINE][6] = 42,
-	[1][0][RTW89_MEXICO][6] = 78,
-	[1][0][RTW89_CN][6] = 42,
-	[1][0][RTW89_QATAR][6] = 42,
-	[1][0][RTW89_FCC][7] = 78,
-	[1][0][RTW89_ETSI][7] = 42,
-	[1][0][RTW89_MKK][7] = 50,
-	[1][0][RTW89_IC][7] = 78,
-	[1][0][RTW89_KCC][7] = 58,
-	[1][0][RTW89_ACMA][7] = 42,
-	[1][0][RTW89_CHILE][7] = 60,
-	[1][0][RTW89_UKRAINE][7] = 42,
-	[1][0][RTW89_MEXICO][7] = 78,
-	[1][0][RTW89_CN][7] = 42,
-	[1][0][RTW89_QATAR][7] = 42,
-	[1][0][RTW89_FCC][8] = 78,
-	[1][0][RTW89_ETSI][8] = 42,
-	[1][0][RTW89_MKK][8] = 50,
-	[1][0][RTW89_IC][8] = 78,
-	[1][0][RTW89_KCC][8] = 58,
-	[1][0][RTW89_ACMA][8] = 42,
-	[1][0][RTW89_CHILE][8] = 60,
-	[1][0][RTW89_UKRAINE][8] = 42,
-	[1][0][RTW89_MEXICO][8] = 78,
-	[1][0][RTW89_CN][8] = 42,
-	[1][0][RTW89_QATAR][8] = 42,
-	[1][0][RTW89_FCC][9] = 74,
-	[1][0][RTW89_ETSI][9] = 42,
-	[1][0][RTW89_MKK][9] = 50,
-	[1][0][RTW89_IC][9] = 74,
-	[1][0][RTW89_KCC][9] = 58,
-	[1][0][RTW89_ACMA][9] = 42,
-	[1][0][RTW89_CHILE][9] = 60,
-	[1][0][RTW89_UKRAINE][9] = 42,
-	[1][0][RTW89_MEXICO][9] = 74,
-	[1][0][RTW89_CN][9] = 42,
-	[1][0][RTW89_QATAR][9] = 42,
-	[1][0][RTW89_FCC][10] = 74,
-	[1][0][RTW89_ETSI][10] = 42,
-	[1][0][RTW89_MKK][10] = 50,
-	[1][0][RTW89_IC][10] = 74,
-	[1][0][RTW89_KCC][10] = 58,
-	[1][0][RTW89_ACMA][10] = 42,
-	[1][0][RTW89_CHILE][10] = 60,
-	[1][0][RTW89_UKRAINE][10] = 42,
-	[1][0][RTW89_MEXICO][10] = 74,
-	[1][0][RTW89_CN][10] = 42,
-	[1][0][RTW89_QATAR][10] = 42,
-	[1][0][RTW89_FCC][11] = 64,
-	[1][0][RTW89_ETSI][11] = 42,
-	[1][0][RTW89_MKK][11] = 50,
-	[1][0][RTW89_IC][11] = 64,
-	[1][0][RTW89_KCC][11] = 58,
-	[1][0][RTW89_ACMA][11] = 42,
-	[1][0][RTW89_CHILE][11] = 60,
-	[1][0][RTW89_UKRAINE][11] = 42,
-	[1][0][RTW89_MEXICO][11] = 64,
-	[1][0][RTW89_CN][11] = 42,
-	[1][0][RTW89_QATAR][11] = 42,
-	[1][0][RTW89_FCC][12] = 36,
-	[1][0][RTW89_ETSI][12] = 42,
-	[1][0][RTW89_MKK][12] = 50,
-	[1][0][RTW89_IC][12] = 36,
-	[1][0][RTW89_KCC][12] = 58,
-	[1][0][RTW89_ACMA][12] = 42,
-	[1][0][RTW89_CHILE][12] = 36,
-	[1][0][RTW89_UKRAINE][12] = 42,
-	[1][0][RTW89_MEXICO][12] = 36,
-	[1][0][RTW89_CN][12] = 42,
-	[1][0][RTW89_QATAR][12] = 42,
-	[1][0][RTW89_FCC][13] = 127,
-	[1][0][RTW89_ETSI][13] = 127,
-	[1][0][RTW89_MKK][13] = 127,
-	[1][0][RTW89_IC][13] = 127,
-	[1][0][RTW89_KCC][13] = 127,
-	[1][0][RTW89_ACMA][13] = 127,
-	[1][0][RTW89_CHILE][13] = 127,
-	[1][0][RTW89_UKRAINE][13] = 127,
-	[1][0][RTW89_MEXICO][13] = 127,
-	[1][0][RTW89_CN][13] = 127,
-	[1][0][RTW89_QATAR][13] = 127,
-	[1][1][RTW89_FCC][0] = 66,
-	[1][1][RTW89_ETSI][0] = 30,
-	[1][1][RTW89_MKK][0] = 38,
-	[1][1][RTW89_IC][0] = 66,
-	[1][1][RTW89_KCC][0] = 44,
-	[1][1][RTW89_ACMA][0] = 30,
-	[1][1][RTW89_CHILE][0] = 48,
-	[1][1][RTW89_UKRAINE][0] = 30,
-	[1][1][RTW89_MEXICO][0] = 66,
-	[1][1][RTW89_CN][0] = 30,
-	[1][1][RTW89_QATAR][0] = 30,
-	[1][1][RTW89_FCC][1] = 66,
-	[1][1][RTW89_ETSI][1] = 30,
-	[1][1][RTW89_MKK][1] = 38,
-	[1][1][RTW89_IC][1] = 66,
-	[1][1][RTW89_KCC][1] = 44,
-	[1][1][RTW89_ACMA][1] = 30,
-	[1][1][RTW89_CHILE][1] = 48,
-	[1][1][RTW89_UKRAINE][1] = 30,
-	[1][1][RTW89_MEXICO][1] = 66,
-	[1][1][RTW89_CN][1] = 30,
-	[1][1][RTW89_QATAR][1] = 30,
-	[1][1][RTW89_FCC][2] = 70,
-	[1][1][RTW89_ETSI][2] = 30,
-	[1][1][RTW89_MKK][2] = 38,
-	[1][1][RTW89_IC][2] = 70,
-	[1][1][RTW89_KCC][2] = 44,
-	[1][1][RTW89_ACMA][2] = 30,
-	[1][1][RTW89_CHILE][2] = 48,
-	[1][1][RTW89_UKRAINE][2] = 30,
-	[1][1][RTW89_MEXICO][2] = 70,
-	[1][1][RTW89_CN][2] = 30,
-	[1][1][RTW89_QATAR][2] = 30,
-	[1][1][RTW89_FCC][3] = 74,
-	[1][1][RTW89_ETSI][3] = 30,
-	[1][1][RTW89_MKK][3] = 38,
-	[1][1][RTW89_IC][3] = 74,
-	[1][1][RTW89_KCC][3] = 44,
-	[1][1][RTW89_ACMA][3] = 30,
-	[1][1][RTW89_CHILE][3] = 48,
-	[1][1][RTW89_UKRAINE][3] = 30,
-	[1][1][RTW89_MEXICO][3] = 74,
-	[1][1][RTW89_CN][3] = 30,
-	[1][1][RTW89_QATAR][3] = 30,
-	[1][1][RTW89_FCC][4] = 78,
-	[1][1][RTW89_ETSI][4] = 30,
-	[1][1][RTW89_MKK][4] = 38,
-	[1][1][RTW89_IC][4] = 78,
-	[1][1][RTW89_KCC][4] = 44,
-	[1][1][RTW89_ACMA][4] = 30,
-	[1][1][RTW89_CHILE][4] = 48,
-	[1][1][RTW89_UKRAINE][4] = 30,
-	[1][1][RTW89_MEXICO][4] = 78,
-	[1][1][RTW89_CN][4] = 30,
-	[1][1][RTW89_QATAR][4] = 30,
-	[1][1][RTW89_FCC][5] = 78,
-	[1][1][RTW89_ETSI][5] = 30,
-	[1][1][RTW89_MKK][5] = 38,
-	[1][1][RTW89_IC][5] = 78,
-	[1][1][RTW89_KCC][5] = 44,
-	[1][1][RTW89_ACMA][5] = 30,
-	[1][1][RTW89_CHILE][5] = 48,
-	[1][1][RTW89_UKRAINE][5] = 30,
-	[1][1][RTW89_MEXICO][5] = 78,
-	[1][1][RTW89_CN][5] = 30,
-	[1][1][RTW89_QATAR][5] = 30,
-	[1][1][RTW89_FCC][6] = 78,
-	[1][1][RTW89_ETSI][6] = 30,
-	[1][1][RTW89_MKK][6] = 38,
-	[1][1][RTW89_IC][6] = 78,
-	[1][1][RTW89_KCC][6] = 44,
-	[1][1][RTW89_ACMA][6] = 30,
-	[1][1][RTW89_CHILE][6] = 48,
-	[1][1][RTW89_UKRAINE][6] = 30,
-	[1][1][RTW89_MEXICO][6] = 78,
-	[1][1][RTW89_CN][6] = 30,
-	[1][1][RTW89_QATAR][6] = 30,
-	[1][1][RTW89_FCC][7] = 74,
-	[1][1][RTW89_ETSI][7] = 30,
-	[1][1][RTW89_MKK][7] = 38,
-	[1][1][RTW89_IC][7] = 74,
-	[1][1][RTW89_KCC][7] = 44,
-	[1][1][RTW89_ACMA][7] = 30,
-	[1][1][RTW89_CHILE][7] = 48,
-	[1][1][RTW89_UKRAINE][7] = 30,
-	[1][1][RTW89_MEXICO][7] = 74,
-	[1][1][RTW89_CN][7] = 30,
-	[1][1][RTW89_QATAR][7] = 30,
-	[1][1][RTW89_FCC][8] = 70,
-	[1][1][RTW89_ETSI][8] = 30,
-	[1][1][RTW89_MKK][8] = 38,
-	[1][1][RTW89_IC][8] = 70,
-	[1][1][RTW89_KCC][8] = 44,
-	[1][1][RTW89_ACMA][8] = 30,
-	[1][1][RTW89_CHILE][8] = 48,
-	[1][1][RTW89_UKRAINE][8] = 30,
-	[1][1][RTW89_MEXICO][8] = 70,
-	[1][1][RTW89_CN][8] = 30,
-	[1][1][RTW89_QATAR][8] = 30,
-	[1][1][RTW89_FCC][9] = 66,
-	[1][1][RTW89_ETSI][9] = 30,
-	[1][1][RTW89_MKK][9] = 38,
-	[1][1][RTW89_IC][9] = 66,
-	[1][1][RTW89_KCC][9] = 44,
-	[1][1][RTW89_ACMA][9] = 30,
-	[1][1][RTW89_CHILE][9] = 48,
-	[1][1][RTW89_UKRAINE][9] = 30,
-	[1][1][RTW89_MEXICO][9] = 66,
-	[1][1][RTW89_CN][9] = 30,
-	[1][1][RTW89_QATAR][9] = 30,
-	[1][1][RTW89_FCC][10] = 66,
-	[1][1][RTW89_ETSI][10] = 30,
-	[1][1][RTW89_MKK][10] = 38,
-	[1][1][RTW89_IC][10] = 66,
-	[1][1][RTW89_KCC][10] = 44,
-	[1][1][RTW89_ACMA][10] = 30,
-	[1][1][RTW89_CHILE][10] = 48,
-	[1][1][RTW89_UKRAINE][10] = 30,
-	[1][1][RTW89_MEXICO][10] = 66,
-	[1][1][RTW89_CN][10] = 30,
-	[1][1][RTW89_QATAR][10] = 30,
-	[1][1][RTW89_FCC][11] = 60,
-	[1][1][RTW89_ETSI][11] = 30,
-	[1][1][RTW89_MKK][11] = 38,
-	[1][1][RTW89_IC][11] = 60,
-	[1][1][RTW89_KCC][11] = 44,
-	[1][1][RTW89_ACMA][11] = 30,
-	[1][1][RTW89_CHILE][11] = 48,
-	[1][1][RTW89_UKRAINE][11] = 30,
-	[1][1][RTW89_MEXICO][11] = 60,
-	[1][1][RTW89_CN][11] = 30,
-	[1][1][RTW89_QATAR][11] = 30,
-	[1][1][RTW89_FCC][12] = 32,
-	[1][1][RTW89_ETSI][12] = 30,
-	[1][1][RTW89_MKK][12] = 38,
-	[1][1][RTW89_IC][12] = 32,
-	[1][1][RTW89_KCC][12] = 44,
-	[1][1][RTW89_ACMA][12] = 30,
-	[1][1][RTW89_CHILE][12] = 32,
-	[1][1][RTW89_UKRAINE][12] = 30,
-	[1][1][RTW89_MEXICO][12] = 32,
-	[1][1][RTW89_CN][12] = 30,
-	[1][1][RTW89_QATAR][12] = 30,
-	[1][1][RTW89_FCC][13] = 127,
-	[1][1][RTW89_ETSI][13] = 127,
-	[1][1][RTW89_MKK][13] = 127,
-	[1][1][RTW89_IC][13] = 127,
-	[1][1][RTW89_KCC][13] = 127,
-	[1][1][RTW89_ACMA][13] = 127,
-	[1][1][RTW89_CHILE][13] = 127,
-	[1][1][RTW89_UKRAINE][13] = 127,
-	[1][1][RTW89_MEXICO][13] = 127,
-	[1][1][RTW89_CN][13] = 127,
-	[1][1][RTW89_QATAR][13] = 127,
-	[2][0][RTW89_FCC][0] = 76,
-	[2][0][RTW89_ETSI][0] = 52,
-	[2][0][RTW89_MKK][0] = 64,
-	[2][0][RTW89_IC][0] = 76,
-	[2][0][RTW89_KCC][0] = 70,
-	[2][0][RTW89_ACMA][0] = 52,
-	[2][0][RTW89_CHILE][0] = 60,
-	[2][0][RTW89_UKRAINE][0] = 52,
-	[2][0][RTW89_MEXICO][0] = 76,
-	[2][0][RTW89_CN][0] = 52,
-	[2][0][RTW89_QATAR][0] = 52,
-	[2][0][RTW89_FCC][1] = 76,
-	[2][0][RTW89_ETSI][1] = 52,
-	[2][0][RTW89_MKK][1] = 64,
-	[2][0][RTW89_IC][1] = 76,
-	[2][0][RTW89_KCC][1] = 70,
-	[2][0][RTW89_ACMA][1] = 52,
-	[2][0][RTW89_CHILE][1] = 60,
-	[2][0][RTW89_UKRAINE][1] = 52,
-	[2][0][RTW89_MEXICO][1] = 76,
-	[2][0][RTW89_CN][1] = 52,
-	[2][0][RTW89_QATAR][1] = 52,
-	[2][0][RTW89_FCC][2] = 78,
-	[2][0][RTW89_ETSI][2] = 52,
-	[2][0][RTW89_MKK][2] = 64,
-	[2][0][RTW89_IC][2] = 78,
-	[2][0][RTW89_KCC][2] = 70,
-	[2][0][RTW89_ACMA][2] = 52,
-	[2][0][RTW89_CHILE][2] = 60,
-	[2][0][RTW89_UKRAINE][2] = 52,
-	[2][0][RTW89_MEXICO][2] = 78,
-	[2][0][RTW89_CN][2] = 52,
-	[2][0][RTW89_QATAR][2] = 52,
-	[2][0][RTW89_FCC][3] = 78,
-	[2][0][RTW89_ETSI][3] = 52,
-	[2][0][RTW89_MKK][3] = 64,
-	[2][0][RTW89_IC][3] = 78,
-	[2][0][RTW89_KCC][3] = 70,
-	[2][0][RTW89_ACMA][3] = 52,
-	[2][0][RTW89_CHILE][3] = 60,
-	[2][0][RTW89_UKRAINE][3] = 52,
-	[2][0][RTW89_MEXICO][3] = 78,
-	[2][0][RTW89_CN][3] = 52,
-	[2][0][RTW89_QATAR][3] = 52,
-	[2][0][RTW89_FCC][4] = 78,
-	[2][0][RTW89_ETSI][4] = 52,
-	[2][0][RTW89_MKK][4] = 64,
-	[2][0][RTW89_IC][4] = 78,
-	[2][0][RTW89_KCC][4] = 70,
-	[2][0][RTW89_ACMA][4] = 52,
-	[2][0][RTW89_CHILE][4] = 60,
-	[2][0][RTW89_UKRAINE][4] = 52,
-	[2][0][RTW89_MEXICO][4] = 78,
-	[2][0][RTW89_CN][4] = 52,
-	[2][0][RTW89_QATAR][4] = 52,
-	[2][0][RTW89_FCC][5] = 78,
-	[2][0][RTW89_ETSI][5] = 52,
-	[2][0][RTW89_MKK][5] = 64,
-	[2][0][RTW89_IC][5] = 78,
-	[2][0][RTW89_KCC][5] = 70,
-	[2][0][RTW89_ACMA][5] = 52,
-	[2][0][RTW89_CHILE][5] = 60,
-	[2][0][RTW89_UKRAINE][5] = 52,
-	[2][0][RTW89_MEXICO][5] = 78,
-	[2][0][RTW89_CN][5] = 52,
-	[2][0][RTW89_QATAR][5] = 52,
-	[2][0][RTW89_FCC][6] = 78,
-	[2][0][RTW89_ETSI][6] = 52,
-	[2][0][RTW89_MKK][6] = 64,
-	[2][0][RTW89_IC][6] = 78,
-	[2][0][RTW89_KCC][6] = 70,
-	[2][0][RTW89_ACMA][6] = 52,
-	[2][0][RTW89_CHILE][6] = 60,
-	[2][0][RTW89_UKRAINE][6] = 52,
-	[2][0][RTW89_MEXICO][6] = 78,
-	[2][0][RTW89_CN][6] = 52,
-	[2][0][RTW89_QATAR][6] = 52,
-	[2][0][RTW89_FCC][7] = 78,
-	[2][0][RTW89_ETSI][7] = 52,
-	[2][0][RTW89_MKK][7] = 64,
-	[2][0][RTW89_IC][7] = 78,
-	[2][0][RTW89_KCC][7] = 70,
-	[2][0][RTW89_ACMA][7] = 52,
-	[2][0][RTW89_CHILE][7] = 60,
-	[2][0][RTW89_UKRAINE][7] = 52,
-	[2][0][RTW89_MEXICO][7] = 78,
-	[2][0][RTW89_CN][7] = 52,
-	[2][0][RTW89_QATAR][7] = 52,
-	[2][0][RTW89_FCC][8] = 78,
-	[2][0][RTW89_ETSI][8] = 52,
-	[2][0][RTW89_MKK][8] = 64,
-	[2][0][RTW89_IC][8] = 78,
-	[2][0][RTW89_KCC][8] = 70,
-	[2][0][RTW89_ACMA][8] = 52,
-	[2][0][RTW89_CHILE][8] = 60,
-	[2][0][RTW89_UKRAINE][8] = 52,
-	[2][0][RTW89_MEXICO][8] = 78,
-	[2][0][RTW89_CN][8] = 52,
-	[2][0][RTW89_QATAR][8] = 52,
-	[2][0][RTW89_FCC][9] = 76,
-	[2][0][RTW89_ETSI][9] = 52,
-	[2][0][RTW89_MKK][9] = 64,
-	[2][0][RTW89_IC][9] = 76,
-	[2][0][RTW89_KCC][9] = 70,
-	[2][0][RTW89_ACMA][9] = 52,
-	[2][0][RTW89_CHILE][9] = 60,
-	[2][0][RTW89_UKRAINE][9] = 52,
-	[2][0][RTW89_MEXICO][9] = 76,
-	[2][0][RTW89_CN][9] = 52,
-	[2][0][RTW89_QATAR][9] = 52,
-	[2][0][RTW89_FCC][10] = 76,
-	[2][0][RTW89_ETSI][10] = 52,
-	[2][0][RTW89_MKK][10] = 64,
-	[2][0][RTW89_IC][10] = 76,
-	[2][0][RTW89_KCC][10] = 70,
-	[2][0][RTW89_ACMA][10] = 52,
-	[2][0][RTW89_CHILE][10] = 60,
-	[2][0][RTW89_UKRAINE][10] = 52,
-	[2][0][RTW89_MEXICO][10] = 76,
-	[2][0][RTW89_CN][10] = 52,
-	[2][0][RTW89_QATAR][10] = 52,
-	[2][0][RTW89_FCC][11] = 68,
-	[2][0][RTW89_ETSI][11] = 52,
-	[2][0][RTW89_MKK][11] = 64,
-	[2][0][RTW89_IC][11] = 68,
-	[2][0][RTW89_KCC][11] = 70,
-	[2][0][RTW89_ACMA][11] = 52,
-	[2][0][RTW89_CHILE][11] = 60,
-	[2][0][RTW89_UKRAINE][11] = 52,
-	[2][0][RTW89_MEXICO][11] = 68,
-	[2][0][RTW89_CN][11] = 52,
-	[2][0][RTW89_QATAR][11] = 52,
-	[2][0][RTW89_FCC][12] = 40,
-	[2][0][RTW89_ETSI][12] = 52,
-	[2][0][RTW89_MKK][12] = 64,
-	[2][0][RTW89_IC][12] = 40,
-	[2][0][RTW89_KCC][12] = 70,
-	[2][0][RTW89_ACMA][12] = 52,
-	[2][0][RTW89_CHILE][12] = 40,
-	[2][0][RTW89_UKRAINE][12] = 52,
-	[2][0][RTW89_MEXICO][12] = 40,
-	[2][0][RTW89_CN][12] = 52,
-	[2][0][RTW89_QATAR][12] = 52,
-	[2][0][RTW89_FCC][13] = 127,
-	[2][0][RTW89_ETSI][13] = 127,
-	[2][0][RTW89_MKK][13] = 127,
-	[2][0][RTW89_IC][13] = 127,
-	[2][0][RTW89_KCC][13] = 127,
-	[2][0][RTW89_ACMA][13] = 127,
-	[2][0][RTW89_CHILE][13] = 127,
-	[2][0][RTW89_UKRAINE][13] = 127,
-	[2][0][RTW89_MEXICO][13] = 127,
-	[2][0][RTW89_CN][13] = 127,
-	[2][0][RTW89_QATAR][13] = 127,
-	[2][1][RTW89_FCC][0] = 68,
-	[2][1][RTW89_ETSI][0] = 40,
-	[2][1][RTW89_MKK][0] = 52,
-	[2][1][RTW89_IC][0] = 68,
-	[2][1][RTW89_KCC][0] = 56,
-	[2][1][RTW89_ACMA][0] = 40,
-	[2][1][RTW89_CHILE][0] = 48,
-	[2][1][RTW89_UKRAINE][0] = 40,
-	[2][1][RTW89_MEXICO][0] = 68,
-	[2][1][RTW89_CN][0] = 40,
-	[2][1][RTW89_QATAR][0] = 40,
-	[2][1][RTW89_FCC][1] = 68,
-	[2][1][RTW89_ETSI][1] = 40,
-	[2][1][RTW89_MKK][1] = 52,
-	[2][1][RTW89_IC][1] = 68,
-	[2][1][RTW89_KCC][1] = 56,
-	[2][1][RTW89_ACMA][1] = 40,
-	[2][1][RTW89_CHILE][1] = 48,
-	[2][1][RTW89_UKRAINE][1] = 40,
-	[2][1][RTW89_MEXICO][1] = 68,
-	[2][1][RTW89_CN][1] = 40,
-	[2][1][RTW89_QATAR][1] = 40,
-	[2][1][RTW89_FCC][2] = 72,
-	[2][1][RTW89_ETSI][2] = 40,
-	[2][1][RTW89_MKK][2] = 52,
-	[2][1][RTW89_IC][2] = 72,
-	[2][1][RTW89_KCC][2] = 56,
-	[2][1][RTW89_ACMA][2] = 40,
-	[2][1][RTW89_CHILE][2] = 48,
-	[2][1][RTW89_UKRAINE][2] = 40,
-	[2][1][RTW89_MEXICO][2] = 72,
-	[2][1][RTW89_CN][2] = 40,
-	[2][1][RTW89_QATAR][2] = 40,
-	[2][1][RTW89_FCC][3] = 76,
-	[2][1][RTW89_ETSI][3] = 40,
-	[2][1][RTW89_MKK][3] = 52,
-	[2][1][RTW89_IC][3] = 76,
-	[2][1][RTW89_KCC][3] = 56,
-	[2][1][RTW89_ACMA][3] = 40,
-	[2][1][RTW89_CHILE][3] = 48,
-	[2][1][RTW89_UKRAINE][3] = 40,
-	[2][1][RTW89_MEXICO][3] = 76,
-	[2][1][RTW89_CN][3] = 40,
-	[2][1][RTW89_QATAR][3] = 40,
-	[2][1][RTW89_FCC][4] = 78,
-	[2][1][RTW89_ETSI][4] = 40,
-	[2][1][RTW89_MKK][4] = 52,
-	[2][1][RTW89_IC][4] = 78,
-	[2][1][RTW89_KCC][4] = 56,
-	[2][1][RTW89_ACMA][4] = 40,
-	[2][1][RTW89_CHILE][4] = 48,
-	[2][1][RTW89_UKRAINE][4] = 40,
-	[2][1][RTW89_MEXICO][4] = 78,
-	[2][1][RTW89_CN][4] = 40,
-	[2][1][RTW89_QATAR][4] = 40,
-	[2][1][RTW89_FCC][5] = 78,
-	[2][1][RTW89_ETSI][5] = 40,
-	[2][1][RTW89_MKK][5] = 52,
-	[2][1][RTW89_IC][5] = 78,
-	[2][1][RTW89_KCC][5] = 56,
-	[2][1][RTW89_ACMA][5] = 40,
-	[2][1][RTW89_CHILE][5] = 48,
-	[2][1][RTW89_UKRAINE][5] = 40,
-	[2][1][RTW89_MEXICO][5] = 78,
-	[2][1][RTW89_CN][5] = 40,
-	[2][1][RTW89_QATAR][5] = 40,
-	[2][1][RTW89_FCC][6] = 78,
-	[2][1][RTW89_ETSI][6] = 40,
-	[2][1][RTW89_MKK][6] = 52,
-	[2][1][RTW89_IC][6] = 78,
-	[2][1][RTW89_KCC][6] = 56,
-	[2][1][RTW89_ACMA][6] = 40,
-	[2][1][RTW89_CHILE][6] = 48,
-	[2][1][RTW89_UKRAINE][6] = 40,
-	[2][1][RTW89_MEXICO][6] = 78,
-	[2][1][RTW89_CN][6] = 40,
-	[2][1][RTW89_QATAR][6] = 40,
-	[2][1][RTW89_FCC][7] = 78,
-	[2][1][RTW89_ETSI][7] = 40,
-	[2][1][RTW89_MKK][7] = 52,
-	[2][1][RTW89_IC][7] = 78,
-	[2][1][RTW89_KCC][7] = 56,
-	[2][1][RTW89_ACMA][7] = 40,
-	[2][1][RTW89_CHILE][7] = 48,
-	[2][1][RTW89_UKRAINE][7] = 40,
-	[2][1][RTW89_MEXICO][7] = 78,
-	[2][1][RTW89_CN][7] = 40,
-	[2][1][RTW89_QATAR][7] = 40,
-	[2][1][RTW89_FCC][8] = 74,
-	[2][1][RTW89_ETSI][8] = 40,
-	[2][1][RTW89_MKK][8] = 52,
-	[2][1][RTW89_IC][8] = 74,
-	[2][1][RTW89_KCC][8] = 56,
-	[2][1][RTW89_ACMA][8] = 40,
-	[2][1][RTW89_CHILE][8] = 48,
-	[2][1][RTW89_UKRAINE][8] = 40,
-	[2][1][RTW89_MEXICO][8] = 74,
-	[2][1][RTW89_CN][8] = 40,
-	[2][1][RTW89_QATAR][8] = 40,
-	[2][1][RTW89_FCC][9] = 70,
-	[2][1][RTW89_ETSI][9] = 40,
-	[2][1][RTW89_MKK][9] = 52,
-	[2][1][RTW89_IC][9] = 70,
-	[2][1][RTW89_KCC][9] = 56,
-	[2][1][RTW89_ACMA][9] = 40,
-	[2][1][RTW89_CHILE][9] = 48,
-	[2][1][RTW89_UKRAINE][9] = 40,
-	[2][1][RTW89_MEXICO][9] = 70,
-	[2][1][RTW89_CN][9] = 40,
-	[2][1][RTW89_QATAR][9] = 40,
-	[2][1][RTW89_FCC][10] = 70,
-	[2][1][RTW89_ETSI][10] = 40,
-	[2][1][RTW89_MKK][10] = 52,
-	[2][1][RTW89_IC][10] = 70,
-	[2][1][RTW89_KCC][10] = 56,
-	[2][1][RTW89_ACMA][10] = 40,
-	[2][1][RTW89_CHILE][10] = 48,
-	[2][1][RTW89_UKRAINE][10] = 40,
-	[2][1][RTW89_MEXICO][10] = 70,
-	[2][1][RTW89_CN][10] = 40,
-	[2][1][RTW89_QATAR][10] = 40,
-	[2][1][RTW89_FCC][11] = 48,
-	[2][1][RTW89_ETSI][11] = 40,
-	[2][1][RTW89_MKK][11] = 52,
-	[2][1][RTW89_IC][11] = 48,
-	[2][1][RTW89_KCC][11] = 56,
-	[2][1][RTW89_ACMA][11] = 40,
-	[2][1][RTW89_CHILE][11] = 48,
-	[2][1][RTW89_UKRAINE][11] = 40,
-	[2][1][RTW89_MEXICO][11] = 48,
-	[2][1][RTW89_CN][11] = 40,
-	[2][1][RTW89_QATAR][11] = 40,
-	[2][1][RTW89_FCC][12] = 26,
-	[2][1][RTW89_ETSI][12] = 40,
-	[2][1][RTW89_MKK][12] = 52,
-	[2][1][RTW89_IC][12] = 26,
-	[2][1][RTW89_KCC][12] = 56,
-	[2][1][RTW89_ACMA][12] = 40,
-	[2][1][RTW89_CHILE][12] = 26,
-	[2][1][RTW89_UKRAINE][12] = 40,
-	[2][1][RTW89_MEXICO][12] = 26,
-	[2][1][RTW89_CN][12] = 40,
-	[2][1][RTW89_QATAR][12] = 40,
-	[2][1][RTW89_FCC][13] = 127,
-	[2][1][RTW89_ETSI][13] = 127,
-	[2][1][RTW89_MKK][13] = 127,
-	[2][1][RTW89_IC][13] = 127,
-	[2][1][RTW89_KCC][13] = 127,
-	[2][1][RTW89_ACMA][13] = 127,
-	[2][1][RTW89_CHILE][13] = 127,
-	[2][1][RTW89_UKRAINE][13] = 127,
-	[2][1][RTW89_MEXICO][13] = 127,
-	[2][1][RTW89_CN][13] = 127,
-	[2][1][RTW89_QATAR][13] = 127,
+	[0][0][0][0] = 32,
+	[0][0][0][1] = 32,
+	[0][0][0][2] = 32,
+	[0][0][0][3] = 32,
+	[0][0][0][4] = 32,
+	[0][0][0][5] = 32,
+	[0][0][0][6] = 32,
+	[0][0][0][7] = 32,
+	[0][0][0][8] = 32,
+	[0][0][0][9] = 32,
+	[0][0][0][10] = 32,
+	[0][0][0][11] = 32,
+	[0][0][0][12] = 32,
+	[0][0][0][13] = 0,
+	[0][1][0][0] = 20,
+	[0][1][0][1] = 20,
+	[0][1][0][2] = 20,
+	[0][1][0][3] = 20,
+	[0][1][0][4] = 20,
+	[0][1][0][5] = 20,
+	[0][1][0][6] = 20,
+	[0][1][0][7] = 20,
+	[0][1][0][8] = 20,
+	[0][1][0][9] = 20,
+	[0][1][0][10] = 20,
+	[0][1][0][11] = 20,
+	[0][1][0][12] = 20,
+	[0][1][0][13] = 0,
+	[1][0][0][0] = 42,
+	[1][0][0][1] = 42,
+	[1][0][0][2] = 42,
+	[1][0][0][3] = 42,
+	[1][0][0][4] = 42,
+	[1][0][0][5] = 42,
+	[1][0][0][6] = 42,
+	[1][0][0][7] = 42,
+	[1][0][0][8] = 42,
+	[1][0][0][9] = 42,
+	[1][0][0][10] = 42,
+	[1][0][0][11] = 42,
+	[1][0][0][12] = 36,
+	[1][0][0][13] = 0,
+	[1][1][0][0] = 30,
+	[1][1][0][1] = 30,
+	[1][1][0][2] = 30,
+	[1][1][0][3] = 30,
+	[1][1][0][4] = 30,
+	[1][1][0][5] = 30,
+	[1][1][0][6] = 30,
+	[1][1][0][7] = 30,
+	[1][1][0][8] = 30,
+	[1][1][0][9] = 30,
+	[1][1][0][10] = 30,
+	[1][1][0][11] = 30,
+	[1][1][0][12] = 30,
+	[1][1][0][13] = 0,
+	[2][0][0][0] = 52,
+	[2][0][0][1] = 52,
+	[2][0][0][2] = 52,
+	[2][0][0][3] = 52,
+	[2][0][0][4] = 52,
+	[2][0][0][5] = 52,
+	[2][0][0][6] = 52,
+	[2][0][0][7] = 52,
+	[2][0][0][8] = 52,
+	[2][0][0][9] = 52,
+	[2][0][0][10] = 52,
+	[2][0][0][11] = 52,
+	[2][0][0][12] = 40,
+	[2][0][0][13] = 0,
+	[2][1][0][0] = 40,
+	[2][1][0][1] = 40,
+	[2][1][0][2] = 40,
+	[2][1][0][3] = 40,
+	[2][1][0][4] = 40,
+	[2][1][0][5] = 40,
+	[2][1][0][6] = 40,
+	[2][1][0][7] = 40,
+	[2][1][0][8] = 40,
+	[2][1][0][9] = 40,
+	[2][1][0][10] = 40,
+	[2][1][0][11] = 40,
+	[2][1][0][12] = 26,
+	[2][1][0][13] = 0,
+	[0][0][2][0] = 70,
+	[0][0][1][0] = 32,
+	[0][0][3][0] = 40,
+	[0][0][5][0] = 70,
+	[0][0][6][0] = 32,
+	[0][0][9][0] = 32,
+	[0][0][8][0] = 60,
+	[0][0][11][0] = 32,
+	[0][0][2][1] = 70,
+	[0][0][1][1] = 32,
+	[0][0][3][1] = 40,
+	[0][0][5][1] = 70,
+	[0][0][6][1] = 32,
+	[0][0][9][1] = 32,
+	[0][0][8][1] = 60,
+	[0][0][11][1] = 32,
+	[0][0][2][2] = 74,
+	[0][0][1][2] = 32,
+	[0][0][3][2] = 40,
+	[0][0][5][2] = 74,
+	[0][0][6][2] = 32,
+	[0][0][9][2] = 32,
+	[0][0][8][2] = 60,
+	[0][0][11][2] = 32,
+	[0][0][2][3] = 78,
+	[0][0][1][3] = 32,
+	[0][0][3][3] = 40,
+	[0][0][5][3] = 78,
+	[0][0][6][3] = 32,
+	[0][0][9][3] = 32,
+	[0][0][8][3] = 60,
+	[0][0][11][3] = 32,
+	[0][0][2][4] = 78,
+	[0][0][1][4] = 32,
+	[0][0][3][4] = 40,
+	[0][0][5][4] = 78,
+	[0][0][6][4] = 32,
+	[0][0][9][4] = 32,
+	[0][0][8][4] = 60,
+	[0][0][11][4] = 32,
+	[0][0][2][5] = 78,
+	[0][0][1][5] = 32,
+	[0][0][3][5] = 40,
+	[0][0][5][5] = 78,
+	[0][0][6][5] = 32,
+	[0][0][9][5] = 32,
+	[0][0][8][5] = 60,
+	[0][0][11][5] = 32,
+	[0][0][2][6] = 78,
+	[0][0][1][6] = 32,
+	[0][0][3][6] = 40,
+	[0][0][5][6] = 78,
+	[0][0][6][6] = 32,
+	[0][0][9][6] = 32,
+	[0][0][8][6] = 60,
+	[0][0][11][6] = 32,
+	[0][0][2][7] = 78,
+	[0][0][1][7] = 32,
+	[0][0][3][7] = 40,
+	[0][0][5][7] = 78,
+	[0][0][6][7] = 32,
+	[0][0][9][7] = 32,
+	[0][0][8][7] = 60,
+	[0][0][11][7] = 32,
+	[0][0][2][8] = 74,
+	[0][0][1][8] = 32,
+	[0][0][3][8] = 40,
+	[0][0][5][8] = 74,
+	[0][0][6][8] = 32,
+	[0][0][9][8] = 32,
+	[0][0][8][8] = 60,
+	[0][0][11][8] = 32,
+	[0][0][2][9] = 70,
+	[0][0][1][9] = 32,
+	[0][0][3][9] = 40,
+	[0][0][5][9] = 70,
+	[0][0][6][9] = 32,
+	[0][0][9][9] = 32,
+	[0][0][8][9] = 60,
+	[0][0][11][9] = 32,
+	[0][0][2][10] = 70,
+	[0][0][1][10] = 32,
+	[0][0][3][10] = 40,
+	[0][0][5][10] = 70,
+	[0][0][6][10] = 32,
+	[0][0][9][10] = 32,
+	[0][0][8][10] = 60,
+	[0][0][11][10] = 32,
+	[0][0][2][11] = 58,
+	[0][0][1][11] = 32,
+	[0][0][3][11] = 40,
+	[0][0][5][11] = 58,
+	[0][0][6][11] = 32,
+	[0][0][9][11] = 32,
+	[0][0][8][11] = 60,
+	[0][0][11][11] = 32,
+	[0][0][2][12] = 34,
+	[0][0][1][12] = 32,
+	[0][0][3][12] = 40,
+	[0][0][5][12] = 34,
+	[0][0][6][12] = 32,
+	[0][0][9][12] = 32,
+	[0][0][8][12] = 60,
+	[0][0][11][12] = 32,
+	[0][0][2][13] = 127,
+	[0][0][1][13] = 127,
+	[0][0][3][13] = 127,
+	[0][0][5][13] = 127,
+	[0][0][6][13] = 127,
+	[0][0][9][13] = 127,
+	[0][0][8][13] = 127,
+	[0][0][11][13] = 127,
+	[0][1][2][0] = 64,
+	[0][1][1][0] = 20,
+	[0][1][3][0] = 28,
+	[0][1][5][0] = 64,
+	[0][1][6][0] = 20,
+	[0][1][9][0] = 20,
+	[0][1][8][0] = 48,
+	[0][1][11][0] = 20,
+	[0][1][2][1] = 64,
+	[0][1][1][1] = 20,
+	[0][1][3][1] = 28,
+	[0][1][5][1] = 64,
+	[0][1][6][1] = 20,
+	[0][1][9][1] = 20,
+	[0][1][8][1] = 48,
+	[0][1][11][1] = 20,
+	[0][1][2][2] = 68,
+	[0][1][1][2] = 20,
+	[0][1][3][2] = 28,
+	[0][1][5][2] = 68,
+	[0][1][6][2] = 20,
+	[0][1][9][2] = 20,
+	[0][1][8][2] = 48,
+	[0][1][11][2] = 20,
+	[0][1][2][3] = 72,
+	[0][1][1][3] = 20,
+	[0][1][3][3] = 28,
+	[0][1][5][3] = 72,
+	[0][1][6][3] = 20,
+	[0][1][9][3] = 20,
+	[0][1][8][3] = 48,
+	[0][1][11][3] = 20,
+	[0][1][2][4] = 76,
+	[0][1][1][4] = 20,
+	[0][1][3][4] = 28,
+	[0][1][5][4] = 76,
+	[0][1][6][4] = 20,
+	[0][1][9][4] = 20,
+	[0][1][8][4] = 48,
+	[0][1][11][4] = 20,
+	[0][1][2][5] = 78,
+	[0][1][1][5] = 20,
+	[0][1][3][5] = 28,
+	[0][1][5][5] = 78,
+	[0][1][6][5] = 20,
+	[0][1][9][5] = 20,
+	[0][1][8][5] = 48,
+	[0][1][11][5] = 20,
+	[0][1][2][6] = 76,
+	[0][1][1][6] = 20,
+	[0][1][3][6] = 28,
+	[0][1][5][6] = 76,
+	[0][1][6][6] = 20,
+	[0][1][9][6] = 20,
+	[0][1][8][6] = 48,
+	[0][1][11][6] = 20,
+	[0][1][2][7] = 72,
+	[0][1][1][7] = 20,
+	[0][1][3][7] = 28,
+	[0][1][5][7] = 72,
+	[0][1][6][7] = 20,
+	[0][1][9][7] = 20,
+	[0][1][8][7] = 48,
+	[0][1][11][7] = 20,
+	[0][1][2][8] = 68,
+	[0][1][1][8] = 20,
+	[0][1][3][8] = 28,
+	[0][1][5][8] = 68,
+	[0][1][6][8] = 20,
+	[0][1][9][8] = 20,
+	[0][1][8][8] = 48,
+	[0][1][11][8] = 20,
+	[0][1][2][9] = 64,
+	[0][1][1][9] = 20,
+	[0][1][3][9] = 28,
+	[0][1][5][9] = 64,
+	[0][1][6][9] = 20,
+	[0][1][9][9] = 20,
+	[0][1][8][9] = 48,
+	[0][1][11][9] = 20,
+	[0][1][2][10] = 64,
+	[0][1][1][10] = 20,
+	[0][1][3][10] = 28,
+	[0][1][5][10] = 64,
+	[0][1][6][10] = 20,
+	[0][1][9][10] = 20,
+	[0][1][8][10] = 48,
+	[0][1][11][10] = 20,
+	[0][1][2][11] = 54,
+	[0][1][1][11] = 20,
+	[0][1][3][11] = 28,
+	[0][1][5][11] = 54,
+	[0][1][6][11] = 20,
+	[0][1][9][11] = 20,
+	[0][1][8][11] = 48,
+	[0][1][11][11] = 20,
+	[0][1][2][12] = 32,
+	[0][1][1][12] = 20,
+	[0][1][3][12] = 28,
+	[0][1][5][12] = 32,
+	[0][1][6][12] = 20,
+	[0][1][9][12] = 20,
+	[0][1][8][12] = 48,
+	[0][1][11][12] = 20,
+	[0][1][2][13] = 127,
+	[0][1][1][13] = 127,
+	[0][1][3][13] = 127,
+	[0][1][5][13] = 127,
+	[0][1][6][13] = 127,
+	[0][1][9][13] = 127,
+	[0][1][8][13] = 127,
+	[0][1][11][13] = 127,
+	[1][0][2][0] = 72,
+	[1][0][1][0] = 42,
+	[1][0][3][0] = 50,
+	[1][0][5][0] = 72,
+	[1][0][6][0] = 42,
+	[1][0][9][0] = 42,
+	[1][0][8][0] = 60,
+	[1][0][11][0] = 42,
+	[1][0][2][1] = 72,
+	[1][0][1][1] = 42,
+	[1][0][3][1] = 50,
+	[1][0][5][1] = 72,
+	[1][0][6][1] = 42,
+	[1][0][9][1] = 42,
+	[1][0][8][1] = 60,
+	[1][0][11][1] = 42,
+	[1][0][2][2] = 76,
+	[1][0][1][2] = 42,
+	[1][0][3][2] = 50,
+	[1][0][5][2] = 76,
+	[1][0][6][2] = 42,
+	[1][0][9][2] = 42,
+	[1][0][8][2] = 60,
+	[1][0][11][2] = 42,
+	[1][0][2][3] = 78,
+	[1][0][1][3] = 42,
+	[1][0][3][3] = 50,
+	[1][0][5][3] = 78,
+	[1][0][6][3] = 42,
+	[1][0][9][3] = 42,
+	[1][0][8][3] = 60,
+	[1][0][11][3] = 42,
+	[1][0][2][4] = 78,
+	[1][0][1][4] = 42,
+	[1][0][3][4] = 50,
+	[1][0][5][4] = 78,
+	[1][0][6][4] = 42,
+	[1][0][9][4] = 42,
+	[1][0][8][4] = 60,
+	[1][0][11][4] = 42,
+	[1][0][2][5] = 78,
+	[1][0][1][5] = 42,
+	[1][0][3][5] = 50,
+	[1][0][5][5] = 78,
+	[1][0][6][5] = 42,
+	[1][0][9][5] = 42,
+	[1][0][8][5] = 60,
+	[1][0][11][5] = 42,
+	[1][0][2][6] = 78,
+	[1][0][1][6] = 42,
+	[1][0][3][6] = 50,
+	[1][0][5][6] = 78,
+	[1][0][6][6] = 42,
+	[1][0][9][6] = 42,
+	[1][0][8][6] = 60,
+	[1][0][11][6] = 42,
+	[1][0][2][7] = 78,
+	[1][0][1][7] = 42,
+	[1][0][3][7] = 50,
+	[1][0][5][7] = 78,
+	[1][0][6][7] = 42,
+	[1][0][9][7] = 42,
+	[1][0][8][7] = 60,
+	[1][0][11][7] = 42,
+	[1][0][2][8] = 78,
+	[1][0][1][8] = 42,
+	[1][0][3][8] = 50,
+	[1][0][5][8] = 78,
+	[1][0][6][8] = 42,
+	[1][0][9][8] = 42,
+	[1][0][8][8] = 60,
+	[1][0][11][8] = 42,
+	[1][0][2][9] = 74,
+	[1][0][1][9] = 42,
+	[1][0][3][9] = 50,
+	[1][0][5][9] = 74,
+	[1][0][6][9] = 42,
+	[1][0][9][9] = 42,
+	[1][0][8][9] = 60,
+	[1][0][11][9] = 42,
+	[1][0][2][10] = 74,
+	[1][0][1][10] = 42,
+	[1][0][3][10] = 50,
+	[1][0][5][10] = 74,
+	[1][0][6][10] = 42,
+	[1][0][9][10] = 42,
+	[1][0][8][10] = 60,
+	[1][0][11][10] = 42,
+	[1][0][2][11] = 64,
+	[1][0][1][11] = 42,
+	[1][0][3][11] = 50,
+	[1][0][5][11] = 64,
+	[1][0][6][11] = 42,
+	[1][0][9][11] = 42,
+	[1][0][8][11] = 60,
+	[1][0][11][11] = 42,
+	[1][0][2][12] = 36,
+	[1][0][1][12] = 42,
+	[1][0][3][12] = 50,
+	[1][0][5][12] = 36,
+	[1][0][6][12] = 42,
+	[1][0][9][12] = 42,
+	[1][0][8][12] = 60,
+	[1][0][11][12] = 42,
+	[1][0][2][13] = 127,
+	[1][0][1][13] = 127,
+	[1][0][3][13] = 127,
+	[1][0][5][13] = 127,
+	[1][0][6][13] = 127,
+	[1][0][9][13] = 127,
+	[1][0][8][13] = 127,
+	[1][0][11][13] = 127,
+	[1][1][2][0] = 66,
+	[1][1][1][0] = 30,
+	[1][1][3][0] = 38,
+	[1][1][5][0] = 66,
+	[1][1][6][0] = 30,
+	[1][1][9][0] = 30,
+	[1][1][8][0] = 48,
+	[1][1][11][0] = 30,
+	[1][1][2][1] = 66,
+	[1][1][1][1] = 30,
+	[1][1][3][1] = 38,
+	[1][1][5][1] = 66,
+	[1][1][6][1] = 30,
+	[1][1][9][1] = 30,
+	[1][1][8][1] = 48,
+	[1][1][11][1] = 30,
+	[1][1][2][2] = 70,
+	[1][1][1][2] = 30,
+	[1][1][3][2] = 38,
+	[1][1][5][2] = 70,
+	[1][1][6][2] = 30,
+	[1][1][9][2] = 30,
+	[1][1][8][2] = 48,
+	[1][1][11][2] = 30,
+	[1][1][2][3] = 74,
+	[1][1][1][3] = 30,
+	[1][1][3][3] = 38,
+	[1][1][5][3] = 74,
+	[1][1][6][3] = 30,
+	[1][1][9][3] = 30,
+	[1][1][8][3] = 48,
+	[1][1][11][3] = 30,
+	[1][1][2][4] = 78,
+	[1][1][1][4] = 30,
+	[1][1][3][4] = 38,
+	[1][1][5][4] = 78,
+	[1][1][6][4] = 30,
+	[1][1][9][4] = 30,
+	[1][1][8][4] = 48,
+	[1][1][11][4] = 30,
+	[1][1][2][5] = 78,
+	[1][1][1][5] = 30,
+	[1][1][3][5] = 38,
+	[1][1][5][5] = 78,
+	[1][1][6][5] = 30,
+	[1][1][9][5] = 30,
+	[1][1][8][5] = 48,
+	[1][1][11][5] = 30,
+	[1][1][2][6] = 78,
+	[1][1][1][6] = 30,
+	[1][1][3][6] = 38,
+	[1][1][5][6] = 78,
+	[1][1][6][6] = 30,
+	[1][1][9][6] = 30,
+	[1][1][8][6] = 48,
+	[1][1][11][6] = 30,
+	[1][1][2][7] = 74,
+	[1][1][1][7] = 30,
+	[1][1][3][7] = 38,
+	[1][1][5][7] = 74,
+	[1][1][6][7] = 30,
+	[1][1][9][7] = 30,
+	[1][1][8][7] = 48,
+	[1][1][11][7] = 30,
+	[1][1][2][8] = 70,
+	[1][1][1][8] = 30,
+	[1][1][3][8] = 38,
+	[1][1][5][8] = 70,
+	[1][1][6][8] = 30,
+	[1][1][9][8] = 30,
+	[1][1][8][8] = 48,
+	[1][1][11][8] = 30,
+	[1][1][2][9] = 66,
+	[1][1][1][9] = 30,
+	[1][1][3][9] = 38,
+	[1][1][5][9] = 66,
+	[1][1][6][9] = 30,
+	[1][1][9][9] = 30,
+	[1][1][8][9] = 48,
+	[1][1][11][9] = 30,
+	[1][1][2][10] = 66,
+	[1][1][1][10] = 30,
+	[1][1][3][10] = 38,
+	[1][1][5][10] = 66,
+	[1][1][6][10] = 30,
+	[1][1][9][10] = 30,
+	[1][1][8][10] = 48,
+	[1][1][11][10] = 30,
+	[1][1][2][11] = 60,
+	[1][1][1][11] = 30,
+	[1][1][3][11] = 38,
+	[1][1][5][11] = 60,
+	[1][1][6][11] = 30,
+	[1][1][9][11] = 30,
+	[1][1][8][11] = 48,
+	[1][1][11][11] = 30,
+	[1][1][2][12] = 32,
+	[1][1][1][12] = 30,
+	[1][1][3][12] = 38,
+	[1][1][5][12] = 32,
+	[1][1][6][12] = 30,
+	[1][1][9][12] = 30,
+	[1][1][8][12] = 48,
+	[1][1][11][12] = 30,
+	[1][1][2][13] = 127,
+	[1][1][1][13] = 127,
+	[1][1][3][13] = 127,
+	[1][1][5][13] = 127,
+	[1][1][6][13] = 127,
+	[1][1][9][13] = 127,
+	[1][1][8][13] = 127,
+	[1][1][11][13] = 127,
+	[2][0][2][0] = 76,
+	[2][0][1][0] = 52,
+	[2][0][3][0] = 64,
+	[2][0][5][0] = 76,
+	[2][0][6][0] = 52,
+	[2][0][9][0] = 52,
+	[2][0][8][0] = 60,
+	[2][0][11][0] = 52,
+	[2][0][2][1] = 76,
+	[2][0][1][1] = 52,
+	[2][0][3][1] = 64,
+	[2][0][5][1] = 76,
+	[2][0][6][1] = 52,
+	[2][0][9][1] = 52,
+	[2][0][8][1] = 60,
+	[2][0][11][1] = 52,
+	[2][0][2][2] = 78,
+	[2][0][1][2] = 52,
+	[2][0][3][2] = 64,
+	[2][0][5][2] = 78,
+	[2][0][6][2] = 52,
+	[2][0][9][2] = 52,
+	[2][0][8][2] = 60,
+	[2][0][11][2] = 52,
+	[2][0][2][3] = 78,
+	[2][0][1][3] = 52,
+	[2][0][3][3] = 64,
+	[2][0][5][3] = 78,
+	[2][0][6][3] = 52,
+	[2][0][9][3] = 52,
+	[2][0][8][3] = 60,
+	[2][0][11][3] = 52,
+	[2][0][2][4] = 78,
+	[2][0][1][4] = 52,
+	[2][0][3][4] = 64,
+	[2][0][5][4] = 78,
+	[2][0][6][4] = 52,
+	[2][0][9][4] = 52,
+	[2][0][8][4] = 60,
+	[2][0][11][4] = 52,
+	[2][0][2][5] = 78,
+	[2][0][1][5] = 52,
+	[2][0][3][5] = 64,
+	[2][0][5][5] = 78,
+	[2][0][6][5] = 52,
+	[2][0][9][5] = 52,
+	[2][0][8][5] = 60,
+	[2][0][11][5] = 52,
+	[2][0][2][6] = 78,
+	[2][0][1][6] = 52,
+	[2][0][3][6] = 64,
+	[2][0][5][6] = 78,
+	[2][0][6][6] = 52,
+	[2][0][9][6] = 52,
+	[2][0][8][6] = 60,
+	[2][0][11][6] = 52,
+	[2][0][2][7] = 78,
+	[2][0][1][7] = 52,
+	[2][0][3][7] = 64,
+	[2][0][5][7] = 78,
+	[2][0][6][7] = 52,
+	[2][0][9][7] = 52,
+	[2][0][8][7] = 60,
+	[2][0][11][7] = 52,
+	[2][0][2][8] = 78,
+	[2][0][1][8] = 52,
+	[2][0][3][8] = 64,
+	[2][0][5][8] = 78,
+	[2][0][6][8] = 52,
+	[2][0][9][8] = 52,
+	[2][0][8][8] = 60,
+	[2][0][11][8] = 52,
+	[2][0][2][9] = 76,
+	[2][0][1][9] = 52,
+	[2][0][3][9] = 64,
+	[2][0][5][9] = 76,
+	[2][0][6][9] = 52,
+	[2][0][9][9] = 52,
+	[2][0][8][9] = 60,
+	[2][0][11][9] = 52,
+	[2][0][2][10] = 76,
+	[2][0][1][10] = 52,
+	[2][0][3][10] = 64,
+	[2][0][5][10] = 76,
+	[2][0][6][10] = 52,
+	[2][0][9][10] = 52,
+	[2][0][8][10] = 60,
+	[2][0][11][10] = 52,
+	[2][0][2][11] = 68,
+	[2][0][1][11] = 52,
+	[2][0][3][11] = 64,
+	[2][0][5][11] = 68,
+	[2][0][6][11] = 52,
+	[2][0][9][11] = 52,
+	[2][0][8][11] = 60,
+	[2][0][11][11] = 52,
+	[2][0][2][12] = 40,
+	[2][0][1][12] = 52,
+	[2][0][3][12] = 64,
+	[2][0][5][12] = 40,
+	[2][0][6][12] = 52,
+	[2][0][9][12] = 52,
+	[2][0][8][12] = 60,
+	[2][0][11][12] = 52,
+	[2][0][2][13] = 127,
+	[2][0][1][13] = 127,
+	[2][0][3][13] = 127,
+	[2][0][5][13] = 127,
+	[2][0][6][13] = 127,
+	[2][0][9][13] = 127,
+	[2][0][8][13] = 127,
+	[2][0][11][13] = 127,
+	[2][1][2][0] = 68,
+	[2][1][1][0] = 40,
+	[2][1][3][0] = 52,
+	[2][1][5][0] = 68,
+	[2][1][6][0] = 40,
+	[2][1][9][0] = 40,
+	[2][1][8][0] = 48,
+	[2][1][11][0] = 40,
+	[2][1][2][1] = 68,
+	[2][1][1][1] = 40,
+	[2][1][3][1] = 52,
+	[2][1][5][1] = 68,
+	[2][1][6][1] = 40,
+	[2][1][9][1] = 40,
+	[2][1][8][1] = 48,
+	[2][1][11][1] = 40,
+	[2][1][2][2] = 72,
+	[2][1][1][2] = 40,
+	[2][1][3][2] = 52,
+	[2][1][5][2] = 72,
+	[2][1][6][2] = 40,
+	[2][1][9][2] = 40,
+	[2][1][8][2] = 48,
+	[2][1][11][2] = 40,
+	[2][1][2][3] = 76,
+	[2][1][1][3] = 40,
+	[2][1][3][3] = 52,
+	[2][1][5][3] = 76,
+	[2][1][6][3] = 40,
+	[2][1][9][3] = 40,
+	[2][1][8][3] = 48,
+	[2][1][11][3] = 40,
+	[2][1][2][4] = 78,
+	[2][1][1][4] = 40,
+	[2][1][3][4] = 52,
+	[2][1][5][4] = 78,
+	[2][1][6][4] = 40,
+	[2][1][9][4] = 40,
+	[2][1][8][4] = 48,
+	[2][1][11][4] = 40,
+	[2][1][2][5] = 78,
+	[2][1][1][5] = 40,
+	[2][1][3][5] = 52,
+	[2][1][5][5] = 78,
+	[2][1][6][5] = 40,
+	[2][1][9][5] = 40,
+	[2][1][8][5] = 48,
+	[2][1][11][5] = 40,
+	[2][1][2][6] = 78,
+	[2][1][1][6] = 40,
+	[2][1][3][6] = 52,
+	[2][1][5][6] = 78,
+	[2][1][6][6] = 40,
+	[2][1][9][6] = 40,
+	[2][1][8][6] = 48,
+	[2][1][11][6] = 40,
+	[2][1][2][7] = 78,
+	[2][1][1][7] = 40,
+	[2][1][3][7] = 52,
+	[2][1][5][7] = 78,
+	[2][1][6][7] = 40,
+	[2][1][9][7] = 40,
+	[2][1][8][7] = 48,
+	[2][1][11][7] = 40,
+	[2][1][2][8] = 74,
+	[2][1][1][8] = 40,
+	[2][1][3][8] = 52,
+	[2][1][5][8] = 74,
+	[2][1][6][8] = 40,
+	[2][1][9][8] = 40,
+	[2][1][8][8] = 48,
+	[2][1][11][8] = 40,
+	[2][1][2][9] = 70,
+	[2][1][1][9] = 40,
+	[2][1][3][9] = 52,
+	[2][1][5][9] = 70,
+	[2][1][6][9] = 40,
+	[2][1][9][9] = 40,
+	[2][1][8][9] = 48,
+	[2][1][11][9] = 40,
+	[2][1][2][10] = 70,
+	[2][1][1][10] = 40,
+	[2][1][3][10] = 52,
+	[2][1][5][10] = 70,
+	[2][1][6][10] = 40,
+	[2][1][9][10] = 40,
+	[2][1][8][10] = 48,
+	[2][1][11][10] = 40,
+	[2][1][2][11] = 48,
+	[2][1][1][11] = 40,
+	[2][1][3][11] = 52,
+	[2][1][5][11] = 48,
+	[2][1][6][11] = 40,
+	[2][1][9][11] = 40,
+	[2][1][8][11] = 48,
+	[2][1][11][11] = 40,
+	[2][1][2][12] = 26,
+	[2][1][1][12] = 40,
+	[2][1][3][12] = 52,
+	[2][1][5][12] = 26,
+	[2][1][6][12] = 40,
+	[2][1][9][12] = 40,
+	[2][1][8][12] = 48,
+	[2][1][11][12] = 40,
+	[2][1][2][13] = 127,
+	[2][1][1][13] = 127,
+	[2][1][3][13] = 127,
+	[2][1][5][13] = 127,
+	[2][1][6][13] = 127,
+	[2][1][9][13] = 127,
+	[2][1][8][13] = 127,
+	[2][1][11][13] = 127,
 };
 
 const s8 rtw89_8852a_txpwr_lmt_ru_5g[RTW89_RU_NUM][RTW89_NTX_NUM]
 				    [RTW89_REGD_NUM][RTW89_5G_CH_NUM] = {
-	[0][0][RTW89_WW][0] = 22,
-	[0][0][RTW89_WW][2] = 22,
-	[0][0][RTW89_WW][4] = 22,
-	[0][0][RTW89_WW][6] = 20,
-	[0][0][RTW89_WW][8] = 24,
-	[0][0][RTW89_WW][10] = 24,
-	[0][0][RTW89_WW][12] = 24,
-	[0][0][RTW89_WW][14] = 24,
-	[0][0][RTW89_WW][15] = 24,
-	[0][0][RTW89_WW][17] = 24,
-	[0][0][RTW89_WW][19] = 24,
-	[0][0][RTW89_WW][21] = 24,
-	[0][0][RTW89_WW][23] = 24,
-	[0][0][RTW89_WW][25] = 24,
-	[0][0][RTW89_WW][27] = 24,
-	[0][0][RTW89_WW][29] = 24,
-	[0][0][RTW89_WW][31] = 24,
-	[0][0][RTW89_WW][33] = 24,
-	[0][0][RTW89_WW][35] = 24,
-	[0][0][RTW89_WW][37] = 44,
-	[0][0][RTW89_WW][38] = 28,
-	[0][0][RTW89_WW][40] = 28,
-	[0][0][RTW89_WW][42] = 28,
-	[0][0][RTW89_WW][44] = 28,
-	[0][0][RTW89_WW][46] = 28,
-	[0][1][RTW89_WW][0] = 8,
-	[0][1][RTW89_WW][2] = 8,
-	[0][1][RTW89_WW][4] = 8,
-	[0][1][RTW89_WW][6] = 4,
-	[0][1][RTW89_WW][8] = 12,
-	[0][1][RTW89_WW][10] = 12,
-	[0][1][RTW89_WW][12] = 12,
-	[0][1][RTW89_WW][14] = 12,
-	[0][1][RTW89_WW][15] = 12,
-	[0][1][RTW89_WW][17] = 12,
-	[0][1][RTW89_WW][19] = 12,
-	[0][1][RTW89_WW][21] = 12,
-	[0][1][RTW89_WW][23] = 12,
-	[0][1][RTW89_WW][25] = 12,
-	[0][1][RTW89_WW][27] = 12,
-	[0][1][RTW89_WW][29] = 12,
-	[0][1][RTW89_WW][31] = 12,
-	[0][1][RTW89_WW][33] = 12,
-	[0][1][RTW89_WW][35] = 12,
-	[0][1][RTW89_WW][37] = 32,
-	[0][1][RTW89_WW][38] = 16,
-	[0][1][RTW89_WW][40] = 16,
-	[0][1][RTW89_WW][42] = 16,
-	[0][1][RTW89_WW][44] = 16,
-	[0][1][RTW89_WW][46] = 16,
-	[1][0][RTW89_WW][0] = 30,
-	[1][0][RTW89_WW][2] = 30,
-	[1][0][RTW89_WW][4] = 30,
-	[1][0][RTW89_WW][6] = 30,
-	[1][0][RTW89_WW][8] = 36,
-	[1][0][RTW89_WW][10] = 36,
-	[1][0][RTW89_WW][12] = 36,
-	[1][0][RTW89_WW][14] = 36,
-	[1][0][RTW89_WW][15] = 36,
-	[1][0][RTW89_WW][17] = 36,
-	[1][0][RTW89_WW][19] = 36,
-	[1][0][RTW89_WW][21] = 36,
-	[1][0][RTW89_WW][23] = 36,
-	[1][0][RTW89_WW][25] = 36,
-	[1][0][RTW89_WW][27] = 36,
-	[1][0][RTW89_WW][29] = 36,
-	[1][0][RTW89_WW][31] = 36,
-	[1][0][RTW89_WW][33] = 36,
-	[1][0][RTW89_WW][35] = 36,
-	[1][0][RTW89_WW][37] = 54,
-	[1][0][RTW89_WW][38] = 28,
-	[1][0][RTW89_WW][40] = 28,
-	[1][0][RTW89_WW][42] = 28,
-	[1][0][RTW89_WW][44] = 28,
-	[1][0][RTW89_WW][46] = 28,
-	[1][1][RTW89_WW][0] = 18,
-	[1][1][RTW89_WW][2] = 18,
-	[1][1][RTW89_WW][4] = 18,
-	[1][1][RTW89_WW][6] = 16,
-	[1][1][RTW89_WW][8] = 22,
-	[1][1][RTW89_WW][10] = 22,
-	[1][1][RTW89_WW][12] = 22,
-	[1][1][RTW89_WW][14] = 22,
-	[1][1][RTW89_WW][15] = 22,
-	[1][1][RTW89_WW][17] = 22,
-	[1][1][RTW89_WW][19] = 22,
-	[1][1][RTW89_WW][21] = 22,
-	[1][1][RTW89_WW][23] = 22,
-	[1][1][RTW89_WW][25] = 22,
-	[1][1][RTW89_WW][27] = 22,
-	[1][1][RTW89_WW][29] = 22,
-	[1][1][RTW89_WW][31] = 22,
-	[1][1][RTW89_WW][33] = 22,
-	[1][1][RTW89_WW][35] = 22,
-	[1][1][RTW89_WW][37] = 42,
-	[1][1][RTW89_WW][38] = 16,
-	[1][1][RTW89_WW][40] = 16,
-	[1][1][RTW89_WW][42] = 16,
-	[1][1][RTW89_WW][44] = 16,
-	[1][1][RTW89_WW][46] = 16,
-	[2][0][RTW89_WW][0] = 30,
-	[2][0][RTW89_WW][2] = 30,
-	[2][0][RTW89_WW][4] = 30,
-	[2][0][RTW89_WW][6] = 30,
-	[2][0][RTW89_WW][8] = 46,
-	[2][0][RTW89_WW][10] = 46,
-	[2][0][RTW89_WW][12] = 46,
-	[2][0][RTW89_WW][14] = 46,
-	[2][0][RTW89_WW][15] = 46,
-	[2][0][RTW89_WW][17] = 46,
-	[2][0][RTW89_WW][19] = 46,
-	[2][0][RTW89_WW][21] = 46,
-	[2][0][RTW89_WW][23] = 46,
-	[2][0][RTW89_WW][25] = 46,
-	[2][0][RTW89_WW][27] = 46,
-	[2][0][RTW89_WW][29] = 46,
-	[2][0][RTW89_WW][31] = 46,
-	[2][0][RTW89_WW][33] = 46,
-	[2][0][RTW89_WW][35] = 46,
-	[2][0][RTW89_WW][37] = 54,
-	[2][0][RTW89_WW][38] = 28,
-	[2][0][RTW89_WW][40] = 28,
-	[2][0][RTW89_WW][42] = 28,
-	[2][0][RTW89_WW][44] = 28,
-	[2][0][RTW89_WW][46] = 28,
-	[2][1][RTW89_WW][0] = 18,
-	[2][1][RTW89_WW][2] = 18,
-	[2][1][RTW89_WW][4] = 18,
-	[2][1][RTW89_WW][6] = 18,
-	[2][1][RTW89_WW][8] = 32,
-	[2][1][RTW89_WW][10] = 32,
-	[2][1][RTW89_WW][12] = 32,
-	[2][1][RTW89_WW][14] = 32,
-	[2][1][RTW89_WW][15] = 32,
-	[2][1][RTW89_WW][17] = 32,
-	[2][1][RTW89_WW][19] = 32,
-	[2][1][RTW89_WW][21] = 32,
-	[2][1][RTW89_WW][23] = 32,
-	[2][1][RTW89_WW][25] = 32,
-	[2][1][RTW89_WW][27] = 32,
-	[2][1][RTW89_WW][29] = 32,
-	[2][1][RTW89_WW][31] = 32,
-	[2][1][RTW89_WW][33] = 32,
-	[2][1][RTW89_WW][35] = 32,
-	[2][1][RTW89_WW][37] = 42,
-	[2][1][RTW89_WW][38] = 16,
-	[2][1][RTW89_WW][40] = 16,
-	[2][1][RTW89_WW][42] = 16,
-	[2][1][RTW89_WW][44] = 16,
-	[2][1][RTW89_WW][46] = 16,
-	[0][0][RTW89_FCC][0] = 48,
-	[0][0][RTW89_ETSI][0] = 24,
-	[0][0][RTW89_MKK][0] = 26,
-	[0][0][RTW89_IC][0] = 22,
-	[0][0][RTW89_KCC][0] = 46,
-	[0][0][RTW89_ACMA][0] = 24,
-	[0][0][RTW89_CHILE][0] = 30,
-	[0][0][RTW89_UKRAINE][0] = 24,
-	[0][0][RTW89_MEXICO][0] = 48,
-	[0][0][RTW89_CN][0] = 24,
-	[0][0][RTW89_QATAR][0] = 24,
-	[0][0][RTW89_FCC][2] = 48,
-	[0][0][RTW89_ETSI][2] = 24,
-	[0][0][RTW89_MKK][2] = 26,
-	[0][0][RTW89_IC][2] = 22,
-	[0][0][RTW89_KCC][2] = 46,
-	[0][0][RTW89_ACMA][2] = 24,
-	[0][0][RTW89_CHILE][2] = 30,
-	[0][0][RTW89_UKRAINE][2] = 24,
-	[0][0][RTW89_MEXICO][2] = 48,
-	[0][0][RTW89_CN][2] = 24,
-	[0][0][RTW89_QATAR][2] = 24,
-	[0][0][RTW89_FCC][4] = 48,
-	[0][0][RTW89_ETSI][4] = 24,
-	[0][0][RTW89_MKK][4] = 26,
-	[0][0][RTW89_IC][4] = 22,
-	[0][0][RTW89_KCC][4] = 46,
-	[0][0][RTW89_ACMA][4] = 24,
-	[0][0][RTW89_CHILE][4] = 30,
-	[0][0][RTW89_UKRAINE][4] = 24,
-	[0][0][RTW89_MEXICO][4] = 48,
-	[0][0][RTW89_CN][4] = 24,
-	[0][0][RTW89_QATAR][4] = 24,
-	[0][0][RTW89_FCC][6] = 48,
-	[0][0][RTW89_ETSI][6] = 24,
-	[0][0][RTW89_MKK][6] = 26,
-	[0][0][RTW89_IC][6] = 22,
-	[0][0][RTW89_KCC][6] = 20,
-	[0][0][RTW89_ACMA][6] = 24,
-	[0][0][RTW89_CHILE][6] = 30,
-	[0][0][RTW89_UKRAINE][6] = 24,
-	[0][0][RTW89_MEXICO][6] = 48,
-	[0][0][RTW89_CN][6] = 24,
-	[0][0][RTW89_QATAR][6] = 24,
-	[0][0][RTW89_FCC][8] = 48,
-	[0][0][RTW89_ETSI][8] = 24,
-	[0][0][RTW89_MKK][8] = 26,
-	[0][0][RTW89_IC][8] = 48,
-	[0][0][RTW89_KCC][8] = 46,
-	[0][0][RTW89_ACMA][8] = 24,
-	[0][0][RTW89_CHILE][8] = 48,
-	[0][0][RTW89_UKRAINE][8] = 24,
-	[0][0][RTW89_MEXICO][8] = 48,
-	[0][0][RTW89_CN][8] = 24,
-	[0][0][RTW89_QATAR][8] = 24,
-	[0][0][RTW89_FCC][10] = 48,
-	[0][0][RTW89_ETSI][10] = 24,
-	[0][0][RTW89_MKK][10] = 26,
-	[0][0][RTW89_IC][10] = 48,
-	[0][0][RTW89_KCC][10] = 46,
-	[0][0][RTW89_ACMA][10] = 24,
-	[0][0][RTW89_CHILE][10] = 48,
-	[0][0][RTW89_UKRAINE][10] = 24,
-	[0][0][RTW89_MEXICO][10] = 48,
-	[0][0][RTW89_CN][10] = 24,
-	[0][0][RTW89_QATAR][10] = 24,
-	[0][0][RTW89_FCC][12] = 48,
-	[0][0][RTW89_ETSI][12] = 24,
-	[0][0][RTW89_MKK][12] = 26,
-	[0][0][RTW89_IC][12] = 48,
-	[0][0][RTW89_KCC][12] = 46,
-	[0][0][RTW89_ACMA][12] = 24,
-	[0][0][RTW89_CHILE][12] = 48,
-	[0][0][RTW89_UKRAINE][12] = 24,
-	[0][0][RTW89_MEXICO][12] = 48,
-	[0][0][RTW89_CN][12] = 24,
-	[0][0][RTW89_QATAR][12] = 24,
-	[0][0][RTW89_FCC][14] = 48,
-	[0][0][RTW89_ETSI][14] = 24,
-	[0][0][RTW89_MKK][14] = 26,
-	[0][0][RTW89_IC][14] = 48,
-	[0][0][RTW89_KCC][14] = 46,
-	[0][0][RTW89_ACMA][14] = 24,
-	[0][0][RTW89_CHILE][14] = 48,
-	[0][0][RTW89_UKRAINE][14] = 24,
-	[0][0][RTW89_MEXICO][14] = 48,
-	[0][0][RTW89_CN][14] = 24,
-	[0][0][RTW89_QATAR][14] = 24,
-	[0][0][RTW89_FCC][15] = 48,
-	[0][0][RTW89_ETSI][15] = 24,
-	[0][0][RTW89_MKK][15] = 44,
-	[0][0][RTW89_IC][15] = 48,
-	[0][0][RTW89_KCC][15] = 46,
-	[0][0][RTW89_ACMA][15] = 24,
-	[0][0][RTW89_CHILE][15] = 48,
-	[0][0][RTW89_UKRAINE][15] = 24,
-	[0][0][RTW89_MEXICO][15] = 48,
-	[0][0][RTW89_CN][15] = 127,
-	[0][0][RTW89_QATAR][15] = 24,
-	[0][0][RTW89_FCC][17] = 48,
-	[0][0][RTW89_ETSI][17] = 24,
-	[0][0][RTW89_MKK][17] = 44,
-	[0][0][RTW89_IC][17] = 48,
-	[0][0][RTW89_KCC][17] = 46,
-	[0][0][RTW89_ACMA][17] = 24,
-	[0][0][RTW89_CHILE][17] = 48,
-	[0][0][RTW89_UKRAINE][17] = 24,
-	[0][0][RTW89_MEXICO][17] = 48,
-	[0][0][RTW89_CN][17] = 127,
-	[0][0][RTW89_QATAR][17] = 24,
-	[0][0][RTW89_FCC][19] = 48,
-	[0][0][RTW89_ETSI][19] = 24,
-	[0][0][RTW89_MKK][19] = 44,
-	[0][0][RTW89_IC][19] = 48,
-	[0][0][RTW89_KCC][19] = 46,
-	[0][0][RTW89_ACMA][19] = 24,
-	[0][0][RTW89_CHILE][19] = 48,
-	[0][0][RTW89_UKRAINE][19] = 24,
-	[0][0][RTW89_MEXICO][19] = 48,
-	[0][0][RTW89_CN][19] = 127,
-	[0][0][RTW89_QATAR][19] = 24,
-	[0][0][RTW89_FCC][21] = 48,
-	[0][0][RTW89_ETSI][21] = 24,
-	[0][0][RTW89_MKK][21] = 44,
-	[0][0][RTW89_IC][21] = 48,
-	[0][0][RTW89_KCC][21] = 46,
-	[0][0][RTW89_ACMA][21] = 24,
-	[0][0][RTW89_CHILE][21] = 48,
-	[0][0][RTW89_UKRAINE][21] = 24,
-	[0][0][RTW89_MEXICO][21] = 48,
-	[0][0][RTW89_CN][21] = 127,
-	[0][0][RTW89_QATAR][21] = 24,
-	[0][0][RTW89_FCC][23] = 48,
-	[0][0][RTW89_ETSI][23] = 24,
-	[0][0][RTW89_MKK][23] = 44,
-	[0][0][RTW89_IC][23] = 48,
-	[0][0][RTW89_KCC][23] = 46,
-	[0][0][RTW89_ACMA][23] = 24,
-	[0][0][RTW89_CHILE][23] = 48,
-	[0][0][RTW89_UKRAINE][23] = 24,
-	[0][0][RTW89_MEXICO][23] = 48,
-	[0][0][RTW89_CN][23] = 127,
-	[0][0][RTW89_QATAR][23] = 24,
-	[0][0][RTW89_FCC][25] = 48,
-	[0][0][RTW89_ETSI][25] = 24,
-	[0][0][RTW89_MKK][25] = 44,
-	[0][0][RTW89_IC][25] = 127,
-	[0][0][RTW89_KCC][25] = 46,
-	[0][0][RTW89_ACMA][25] = 127,
-	[0][0][RTW89_CHILE][25] = 48,
-	[0][0][RTW89_UKRAINE][25] = 24,
-	[0][0][RTW89_MEXICO][25] = 48,
-	[0][0][RTW89_CN][25] = 127,
-	[0][0][RTW89_QATAR][25] = 24,
-	[0][0][RTW89_FCC][27] = 48,
-	[0][0][RTW89_ETSI][27] = 24,
-	[0][0][RTW89_MKK][27] = 44,
-	[0][0][RTW89_IC][27] = 127,
-	[0][0][RTW89_KCC][27] = 46,
-	[0][0][RTW89_ACMA][27] = 127,
-	[0][0][RTW89_CHILE][27] = 48,
-	[0][0][RTW89_UKRAINE][27] = 24,
-	[0][0][RTW89_MEXICO][27] = 48,
-	[0][0][RTW89_CN][27] = 127,
-	[0][0][RTW89_QATAR][27] = 24,
-	[0][0][RTW89_FCC][29] = 48,
-	[0][0][RTW89_ETSI][29] = 24,
-	[0][0][RTW89_MKK][29] = 44,
-	[0][0][RTW89_IC][29] = 127,
-	[0][0][RTW89_KCC][29] = 46,
-	[0][0][RTW89_ACMA][29] = 127,
-	[0][0][RTW89_CHILE][29] = 48,
-	[0][0][RTW89_UKRAINE][29] = 24,
-	[0][0][RTW89_MEXICO][29] = 48,
-	[0][0][RTW89_CN][29] = 127,
-	[0][0][RTW89_QATAR][29] = 24,
-	[0][0][RTW89_FCC][31] = 48,
-	[0][0][RTW89_ETSI][31] = 24,
-	[0][0][RTW89_MKK][31] = 44,
-	[0][0][RTW89_IC][31] = 48,
-	[0][0][RTW89_KCC][31] = 46,
-	[0][0][RTW89_ACMA][31] = 24,
-	[0][0][RTW89_CHILE][31] = 48,
-	[0][0][RTW89_UKRAINE][31] = 24,
-	[0][0][RTW89_MEXICO][31] = 48,
-	[0][0][RTW89_CN][31] = 127,
-	[0][0][RTW89_QATAR][31] = 24,
-	[0][0][RTW89_FCC][33] = 48,
-	[0][0][RTW89_ETSI][33] = 24,
-	[0][0][RTW89_MKK][33] = 44,
-	[0][0][RTW89_IC][33] = 48,
-	[0][0][RTW89_KCC][33] = 46,
-	[0][0][RTW89_ACMA][33] = 24,
-	[0][0][RTW89_CHILE][33] = 48,
-	[0][0][RTW89_UKRAINE][33] = 24,
-	[0][0][RTW89_MEXICO][33] = 48,
-	[0][0][RTW89_CN][33] = 127,
-	[0][0][RTW89_QATAR][33] = 24,
-	[0][0][RTW89_FCC][35] = 48,
-	[0][0][RTW89_ETSI][35] = 24,
-	[0][0][RTW89_MKK][35] = 44,
-	[0][0][RTW89_IC][35] = 48,
-	[0][0][RTW89_KCC][35] = 46,
-	[0][0][RTW89_ACMA][35] = 24,
-	[0][0][RTW89_CHILE][35] = 48,
-	[0][0][RTW89_UKRAINE][35] = 24,
-	[0][0][RTW89_MEXICO][35] = 48,
-	[0][0][RTW89_CN][35] = 127,
-	[0][0][RTW89_QATAR][35] = 24,
-	[0][0][RTW89_FCC][37] = 48,
-	[0][0][RTW89_ETSI][37] = 127,
-	[0][0][RTW89_MKK][37] = 44,
-	[0][0][RTW89_IC][37] = 48,
-	[0][0][RTW89_KCC][37] = 46,
-	[0][0][RTW89_ACMA][37] = 48,
-	[0][0][RTW89_CHILE][37] = 48,
-	[0][0][RTW89_UKRAINE][37] = 127,
-	[0][0][RTW89_MEXICO][37] = 48,
-	[0][0][RTW89_CN][37] = 127,
-	[0][0][RTW89_QATAR][37] = 127,
-	[0][0][RTW89_FCC][38] = 76,
-	[0][0][RTW89_ETSI][38] = 28,
-	[0][0][RTW89_MKK][38] = 127,
-	[0][0][RTW89_IC][38] = 76,
-	[0][0][RTW89_KCC][38] = 46,
-	[0][0][RTW89_ACMA][38] = 76,
-	[0][0][RTW89_CHILE][38] = 54,
-	[0][0][RTW89_UKRAINE][38] = 28,
-	[0][0][RTW89_MEXICO][38] = 76,
-	[0][0][RTW89_CN][38] = 62,
-	[0][0][RTW89_QATAR][38] = 28,
-	[0][0][RTW89_FCC][40] = 76,
-	[0][0][RTW89_ETSI][40] = 28,
-	[0][0][RTW89_MKK][40] = 127,
-	[0][0][RTW89_IC][40] = 76,
-	[0][0][RTW89_KCC][40] = 46,
-	[0][0][RTW89_ACMA][40] = 76,
-	[0][0][RTW89_CHILE][40] = 54,
-	[0][0][RTW89_UKRAINE][40] = 28,
-	[0][0][RTW89_MEXICO][40] = 76,
-	[0][0][RTW89_CN][40] = 62,
-	[0][0][RTW89_QATAR][40] = 28,
-	[0][0][RTW89_FCC][42] = 76,
-	[0][0][RTW89_ETSI][42] = 28,
-	[0][0][RTW89_MKK][42] = 127,
-	[0][0][RTW89_IC][42] = 76,
-	[0][0][RTW89_KCC][42] = 46,
-	[0][0][RTW89_ACMA][42] = 76,
-	[0][0][RTW89_CHILE][42] = 54,
-	[0][0][RTW89_UKRAINE][42] = 28,
-	[0][0][RTW89_MEXICO][42] = 76,
-	[0][0][RTW89_CN][42] = 62,
-	[0][0][RTW89_QATAR][42] = 28,
-	[0][0][RTW89_FCC][44] = 76,
-	[0][0][RTW89_ETSI][44] = 28,
-	[0][0][RTW89_MKK][44] = 127,
-	[0][0][RTW89_IC][44] = 76,
-	[0][0][RTW89_KCC][44] = 46,
-	[0][0][RTW89_ACMA][44] = 76,
-	[0][0][RTW89_CHILE][44] = 54,
-	[0][0][RTW89_UKRAINE][44] = 28,
-	[0][0][RTW89_MEXICO][44] = 76,
-	[0][0][RTW89_CN][44] = 62,
-	[0][0][RTW89_QATAR][44] = 28,
-	[0][0][RTW89_FCC][46] = 76,
-	[0][0][RTW89_ETSI][46] = 28,
-	[0][0][RTW89_MKK][46] = 127,
-	[0][0][RTW89_IC][46] = 76,
-	[0][0][RTW89_KCC][46] = 46,
-	[0][0][RTW89_ACMA][46] = 76,
-	[0][0][RTW89_CHILE][46] = 54,
-	[0][0][RTW89_UKRAINE][46] = 28,
-	[0][0][RTW89_MEXICO][46] = 76,
-	[0][0][RTW89_CN][46] = 62,
-	[0][0][RTW89_QATAR][46] = 28,
-	[0][1][RTW89_FCC][0] = 36,
-	[0][1][RTW89_ETSI][0] = 12,
-	[0][1][RTW89_MKK][0] = 14,
-	[0][1][RTW89_IC][0] = 8,
-	[0][1][RTW89_KCC][0] = 32,
-	[0][1][RTW89_ACMA][0] = 12,
-	[0][1][RTW89_CHILE][0] = 18,
-	[0][1][RTW89_UKRAINE][0] = 12,
-	[0][1][RTW89_MEXICO][0] = 36,
-	[0][1][RTW89_CN][0] = 12,
-	[0][1][RTW89_QATAR][0] = 12,
-	[0][1][RTW89_FCC][2] = 36,
-	[0][1][RTW89_ETSI][2] = 12,
-	[0][1][RTW89_MKK][2] = 14,
-	[0][1][RTW89_IC][2] = 8,
-	[0][1][RTW89_KCC][2] = 32,
-	[0][1][RTW89_ACMA][2] = 12,
-	[0][1][RTW89_CHILE][2] = 18,
-	[0][1][RTW89_UKRAINE][2] = 12,
-	[0][1][RTW89_MEXICO][2] = 36,
-	[0][1][RTW89_CN][2] = 12,
-	[0][1][RTW89_QATAR][2] = 12,
-	[0][1][RTW89_FCC][4] = 36,
-	[0][1][RTW89_ETSI][4] = 12,
-	[0][1][RTW89_MKK][4] = 14,
-	[0][1][RTW89_IC][4] = 8,
-	[0][1][RTW89_KCC][4] = 32,
-	[0][1][RTW89_ACMA][4] = 12,
-	[0][1][RTW89_CHILE][4] = 18,
-	[0][1][RTW89_UKRAINE][4] = 12,
-	[0][1][RTW89_MEXICO][4] = 36,
-	[0][1][RTW89_CN][4] = 12,
-	[0][1][RTW89_QATAR][4] = 12,
-	[0][1][RTW89_FCC][6] = 36,
-	[0][1][RTW89_ETSI][6] = 12,
-	[0][1][RTW89_MKK][6] = 14,
-	[0][1][RTW89_IC][6] = 8,
-	[0][1][RTW89_KCC][6] = 4,
-	[0][1][RTW89_ACMA][6] = 12,
-	[0][1][RTW89_CHILE][6] = 18,
-	[0][1][RTW89_UKRAINE][6] = 12,
-	[0][1][RTW89_MEXICO][6] = 36,
-	[0][1][RTW89_CN][6] = 12,
-	[0][1][RTW89_QATAR][6] = 12,
-	[0][1][RTW89_FCC][8] = 36,
-	[0][1][RTW89_ETSI][8] = 12,
-	[0][1][RTW89_MKK][8] = 14,
-	[0][1][RTW89_IC][8] = 36,
-	[0][1][RTW89_KCC][8] = 32,
-	[0][1][RTW89_ACMA][8] = 12,
-	[0][1][RTW89_CHILE][8] = 36,
-	[0][1][RTW89_UKRAINE][8] = 12,
-	[0][1][RTW89_MEXICO][8] = 36,
-	[0][1][RTW89_CN][8] = 12,
-	[0][1][RTW89_QATAR][8] = 12,
-	[0][1][RTW89_FCC][10] = 36,
-	[0][1][RTW89_ETSI][10] = 12,
-	[0][1][RTW89_MKK][10] = 14,
-	[0][1][RTW89_IC][10] = 36,
-	[0][1][RTW89_KCC][10] = 32,
-	[0][1][RTW89_ACMA][10] = 12,
-	[0][1][RTW89_CHILE][10] = 36,
-	[0][1][RTW89_UKRAINE][10] = 12,
-	[0][1][RTW89_MEXICO][10] = 36,
-	[0][1][RTW89_CN][10] = 12,
-	[0][1][RTW89_QATAR][10] = 12,
-	[0][1][RTW89_FCC][12] = 36,
-	[0][1][RTW89_ETSI][12] = 12,
-	[0][1][RTW89_MKK][12] = 14,
-	[0][1][RTW89_IC][12] = 36,
-	[0][1][RTW89_KCC][12] = 32,
-	[0][1][RTW89_ACMA][12] = 12,
-	[0][1][RTW89_CHILE][12] = 36,
-	[0][1][RTW89_UKRAINE][12] = 12,
-	[0][1][RTW89_MEXICO][12] = 36,
-	[0][1][RTW89_CN][12] = 12,
-	[0][1][RTW89_QATAR][12] = 12,
-	[0][1][RTW89_FCC][14] = 36,
-	[0][1][RTW89_ETSI][14] = 12,
-	[0][1][RTW89_MKK][14] = 14,
-	[0][1][RTW89_IC][14] = 36,
-	[0][1][RTW89_KCC][14] = 32,
-	[0][1][RTW89_ACMA][14] = 12,
-	[0][1][RTW89_CHILE][14] = 36,
-	[0][1][RTW89_UKRAINE][14] = 12,
-	[0][1][RTW89_MEXICO][14] = 36,
-	[0][1][RTW89_CN][14] = 12,
-	[0][1][RTW89_QATAR][14] = 12,
-	[0][1][RTW89_FCC][15] = 36,
-	[0][1][RTW89_ETSI][15] = 12,
-	[0][1][RTW89_MKK][15] = 32,
-	[0][1][RTW89_IC][15] = 36,
-	[0][1][RTW89_KCC][15] = 32,
-	[0][1][RTW89_ACMA][15] = 12,
-	[0][1][RTW89_CHILE][15] = 36,
-	[0][1][RTW89_UKRAINE][15] = 12,
-	[0][1][RTW89_MEXICO][15] = 36,
-	[0][1][RTW89_CN][15] = 127,
-	[0][1][RTW89_QATAR][15] = 12,
-	[0][1][RTW89_FCC][17] = 36,
-	[0][1][RTW89_ETSI][17] = 12,
-	[0][1][RTW89_MKK][17] = 32,
-	[0][1][RTW89_IC][17] = 36,
-	[0][1][RTW89_KCC][17] = 32,
-	[0][1][RTW89_ACMA][17] = 12,
-	[0][1][RTW89_CHILE][17] = 36,
-	[0][1][RTW89_UKRAINE][17] = 12,
-	[0][1][RTW89_MEXICO][17] = 36,
-	[0][1][RTW89_CN][17] = 127,
-	[0][1][RTW89_QATAR][17] = 12,
-	[0][1][RTW89_FCC][19] = 36,
-	[0][1][RTW89_ETSI][19] = 12,
-	[0][1][RTW89_MKK][19] = 32,
-	[0][1][RTW89_IC][19] = 36,
-	[0][1][RTW89_KCC][19] = 32,
-	[0][1][RTW89_ACMA][19] = 12,
-	[0][1][RTW89_CHILE][19] = 36,
-	[0][1][RTW89_UKRAINE][19] = 12,
-	[0][1][RTW89_MEXICO][19] = 36,
-	[0][1][RTW89_CN][19] = 127,
-	[0][1][RTW89_QATAR][19] = 12,
-	[0][1][RTW89_FCC][21] = 36,
-	[0][1][RTW89_ETSI][21] = 12,
-	[0][1][RTW89_MKK][21] = 32,
-	[0][1][RTW89_IC][21] = 36,
-	[0][1][RTW89_KCC][21] = 32,
-	[0][1][RTW89_ACMA][21] = 12,
-	[0][1][RTW89_CHILE][21] = 36,
-	[0][1][RTW89_UKRAINE][21] = 12,
-	[0][1][RTW89_MEXICO][21] = 36,
-	[0][1][RTW89_CN][21] = 127,
-	[0][1][RTW89_QATAR][21] = 12,
-	[0][1][RTW89_FCC][23] = 36,
-	[0][1][RTW89_ETSI][23] = 12,
-	[0][1][RTW89_MKK][23] = 32,
-	[0][1][RTW89_IC][23] = 36,
-	[0][1][RTW89_KCC][23] = 32,
-	[0][1][RTW89_ACMA][23] = 12,
-	[0][1][RTW89_CHILE][23] = 36,
-	[0][1][RTW89_UKRAINE][23] = 12,
-	[0][1][RTW89_MEXICO][23] = 36,
-	[0][1][RTW89_CN][23] = 127,
-	[0][1][RTW89_QATAR][23] = 12,
-	[0][1][RTW89_FCC][25] = 36,
-	[0][1][RTW89_ETSI][25] = 12,
-	[0][1][RTW89_MKK][25] = 32,
-	[0][1][RTW89_IC][25] = 127,
-	[0][1][RTW89_KCC][25] = 32,
-	[0][1][RTW89_ACMA][25] = 127,
-	[0][1][RTW89_CHILE][25] = 36,
-	[0][1][RTW89_UKRAINE][25] = 12,
-	[0][1][RTW89_MEXICO][25] = 36,
-	[0][1][RTW89_CN][25] = 127,
-	[0][1][RTW89_QATAR][25] = 12,
-	[0][1][RTW89_FCC][27] = 36,
-	[0][1][RTW89_ETSI][27] = 12,
-	[0][1][RTW89_MKK][27] = 32,
-	[0][1][RTW89_IC][27] = 127,
-	[0][1][RTW89_KCC][27] = 32,
-	[0][1][RTW89_ACMA][27] = 127,
-	[0][1][RTW89_CHILE][27] = 36,
-	[0][1][RTW89_UKRAINE][27] = 12,
-	[0][1][RTW89_MEXICO][27] = 36,
-	[0][1][RTW89_CN][27] = 127,
-	[0][1][RTW89_QATAR][27] = 12,
-	[0][1][RTW89_FCC][29] = 36,
-	[0][1][RTW89_ETSI][29] = 12,
-	[0][1][RTW89_MKK][29] = 32,
-	[0][1][RTW89_IC][29] = 127,
-	[0][1][RTW89_KCC][29] = 32,
-	[0][1][RTW89_ACMA][29] = 127,
-	[0][1][RTW89_CHILE][29] = 36,
-	[0][1][RTW89_UKRAINE][29] = 12,
-	[0][1][RTW89_MEXICO][29] = 36,
-	[0][1][RTW89_CN][29] = 127,
-	[0][1][RTW89_QATAR][29] = 12,
-	[0][1][RTW89_FCC][31] = 36,
-	[0][1][RTW89_ETSI][31] = 12,
-	[0][1][RTW89_MKK][31] = 32,
-	[0][1][RTW89_IC][31] = 36,
-	[0][1][RTW89_KCC][31] = 32,
-	[0][1][RTW89_ACMA][31] = 12,
-	[0][1][RTW89_CHILE][31] = 36,
-	[0][1][RTW89_UKRAINE][31] = 12,
-	[0][1][RTW89_MEXICO][31] = 36,
-	[0][1][RTW89_CN][31] = 127,
-	[0][1][RTW89_QATAR][31] = 12,
-	[0][1][RTW89_FCC][33] = 36,
-	[0][1][RTW89_ETSI][33] = 12,
-	[0][1][RTW89_MKK][33] = 32,
-	[0][1][RTW89_IC][33] = 36,
-	[0][1][RTW89_KCC][33] = 32,
-	[0][1][RTW89_ACMA][33] = 12,
-	[0][1][RTW89_CHILE][33] = 36,
-	[0][1][RTW89_UKRAINE][33] = 12,
-	[0][1][RTW89_MEXICO][33] = 36,
-	[0][1][RTW89_CN][33] = 127,
-	[0][1][RTW89_QATAR][33] = 12,
-	[0][1][RTW89_FCC][35] = 36,
-	[0][1][RTW89_ETSI][35] = 12,
-	[0][1][RTW89_MKK][35] = 32,
-	[0][1][RTW89_IC][35] = 36,
-	[0][1][RTW89_KCC][35] = 32,
-	[0][1][RTW89_ACMA][35] = 12,
-	[0][1][RTW89_CHILE][35] = 36,
-	[0][1][RTW89_UKRAINE][35] = 12,
-	[0][1][RTW89_MEXICO][35] = 36,
-	[0][1][RTW89_CN][35] = 127,
-	[0][1][RTW89_QATAR][35] = 12,
-	[0][1][RTW89_FCC][37] = 36,
-	[0][1][RTW89_ETSI][37] = 127,
-	[0][1][RTW89_MKK][37] = 32,
-	[0][1][RTW89_IC][37] = 36,
-	[0][1][RTW89_KCC][37] = 32,
-	[0][1][RTW89_ACMA][37] = 36,
-	[0][1][RTW89_CHILE][37] = 36,
-	[0][1][RTW89_UKRAINE][37] = 127,
-	[0][1][RTW89_MEXICO][37] = 36,
-	[0][1][RTW89_CN][37] = 127,
-	[0][1][RTW89_QATAR][37] = 127,
-	[0][1][RTW89_FCC][38] = 72,
-	[0][1][RTW89_ETSI][38] = 16,
-	[0][1][RTW89_MKK][38] = 127,
-	[0][1][RTW89_IC][38] = 72,
-	[0][1][RTW89_KCC][38] = 32,
-	[0][1][RTW89_ACMA][38] = 76,
-	[0][1][RTW89_CHILE][38] = 42,
-	[0][1][RTW89_UKRAINE][38] = 16,
-	[0][1][RTW89_MEXICO][38] = 72,
-	[0][1][RTW89_CN][38] = 50,
-	[0][1][RTW89_QATAR][38] = 16,
-	[0][1][RTW89_FCC][40] = 76,
-	[0][1][RTW89_ETSI][40] = 16,
-	[0][1][RTW89_MKK][40] = 127,
-	[0][1][RTW89_IC][40] = 76,
-	[0][1][RTW89_KCC][40] = 32,
-	[0][1][RTW89_ACMA][40] = 76,
-	[0][1][RTW89_CHILE][40] = 42,
-	[0][1][RTW89_UKRAINE][40] = 16,
-	[0][1][RTW89_MEXICO][40] = 76,
-	[0][1][RTW89_CN][40] = 50,
-	[0][1][RTW89_QATAR][40] = 16,
-	[0][1][RTW89_FCC][42] = 76,
-	[0][1][RTW89_ETSI][42] = 16,
-	[0][1][RTW89_MKK][42] = 127,
-	[0][1][RTW89_IC][42] = 76,
-	[0][1][RTW89_KCC][42] = 32,
-	[0][1][RTW89_ACMA][42] = 76,
-	[0][1][RTW89_CHILE][42] = 42,
-	[0][1][RTW89_UKRAINE][42] = 16,
-	[0][1][RTW89_MEXICO][42] = 76,
-	[0][1][RTW89_CN][42] = 50,
-	[0][1][RTW89_QATAR][42] = 16,
-	[0][1][RTW89_FCC][44] = 76,
-	[0][1][RTW89_ETSI][44] = 16,
-	[0][1][RTW89_MKK][44] = 127,
-	[0][1][RTW89_IC][44] = 76,
-	[0][1][RTW89_KCC][44] = 32,
-	[0][1][RTW89_ACMA][44] = 76,
-	[0][1][RTW89_CHILE][44] = 42,
-	[0][1][RTW89_UKRAINE][44] = 16,
-	[0][1][RTW89_MEXICO][44] = 76,
-	[0][1][RTW89_CN][44] = 50,
-	[0][1][RTW89_QATAR][44] = 16,
-	[0][1][RTW89_FCC][46] = 76,
-	[0][1][RTW89_ETSI][46] = 16,
-	[0][1][RTW89_MKK][46] = 127,
-	[0][1][RTW89_IC][46] = 76,
-	[0][1][RTW89_KCC][46] = 32,
-	[0][1][RTW89_ACMA][46] = 76,
-	[0][1][RTW89_CHILE][46] = 42,
-	[0][1][RTW89_UKRAINE][46] = 16,
-	[0][1][RTW89_MEXICO][46] = 76,
-	[0][1][RTW89_CN][46] = 50,
-	[0][1][RTW89_QATAR][46] = 16,
-	[1][0][RTW89_FCC][0] = 62,
-	[1][0][RTW89_ETSI][0] = 36,
-	[1][0][RTW89_MKK][0] = 36,
-	[1][0][RTW89_IC][0] = 34,
-	[1][0][RTW89_KCC][0] = 58,
-	[1][0][RTW89_ACMA][0] = 36,
-	[1][0][RTW89_CHILE][0] = 30,
-	[1][0][RTW89_UKRAINE][0] = 36,
-	[1][0][RTW89_MEXICO][0] = 62,
-	[1][0][RTW89_CN][0] = 36,
-	[1][0][RTW89_QATAR][0] = 36,
-	[1][0][RTW89_FCC][2] = 62,
-	[1][0][RTW89_ETSI][2] = 36,
-	[1][0][RTW89_MKK][2] = 36,
-	[1][0][RTW89_IC][2] = 34,
-	[1][0][RTW89_KCC][2] = 58,
-	[1][0][RTW89_ACMA][2] = 36,
-	[1][0][RTW89_CHILE][2] = 30,
-	[1][0][RTW89_UKRAINE][2] = 36,
-	[1][0][RTW89_MEXICO][2] = 62,
-	[1][0][RTW89_CN][2] = 36,
-	[1][0][RTW89_QATAR][2] = 36,
-	[1][0][RTW89_FCC][4] = 62,
-	[1][0][RTW89_ETSI][4] = 36,
-	[1][0][RTW89_MKK][4] = 36,
-	[1][0][RTW89_IC][4] = 34,
-	[1][0][RTW89_KCC][4] = 58,
-	[1][0][RTW89_ACMA][4] = 36,
-	[1][0][RTW89_CHILE][4] = 30,
-	[1][0][RTW89_UKRAINE][4] = 36,
-	[1][0][RTW89_MEXICO][4] = 62,
-	[1][0][RTW89_CN][4] = 36,
-	[1][0][RTW89_QATAR][4] = 36,
-	[1][0][RTW89_FCC][6] = 62,
-	[1][0][RTW89_ETSI][6] = 36,
-	[1][0][RTW89_MKK][6] = 36,
-	[1][0][RTW89_IC][6] = 34,
-	[1][0][RTW89_KCC][6] = 32,
-	[1][0][RTW89_ACMA][6] = 36,
-	[1][0][RTW89_CHILE][6] = 30,
-	[1][0][RTW89_UKRAINE][6] = 36,
-	[1][0][RTW89_MEXICO][6] = 62,
-	[1][0][RTW89_CN][6] = 36,
-	[1][0][RTW89_QATAR][6] = 36,
-	[1][0][RTW89_FCC][8] = 62,
-	[1][0][RTW89_ETSI][8] = 36,
-	[1][0][RTW89_MKK][8] = 36,
-	[1][0][RTW89_IC][8] = 62,
-	[1][0][RTW89_KCC][8] = 58,
-	[1][0][RTW89_ACMA][8] = 36,
-	[1][0][RTW89_CHILE][8] = 54,
-	[1][0][RTW89_UKRAINE][8] = 36,
-	[1][0][RTW89_MEXICO][8] = 62,
-	[1][0][RTW89_CN][8] = 36,
-	[1][0][RTW89_QATAR][8] = 36,
-	[1][0][RTW89_FCC][10] = 62,
-	[1][0][RTW89_ETSI][10] = 36,
-	[1][0][RTW89_MKK][10] = 36,
-	[1][0][RTW89_IC][10] = 62,
-	[1][0][RTW89_KCC][10] = 58,
-	[1][0][RTW89_ACMA][10] = 36,
-	[1][0][RTW89_CHILE][10] = 54,
-	[1][0][RTW89_UKRAINE][10] = 36,
-	[1][0][RTW89_MEXICO][10] = 62,
-	[1][0][RTW89_CN][10] = 36,
-	[1][0][RTW89_QATAR][10] = 36,
-	[1][0][RTW89_FCC][12] = 62,
-	[1][0][RTW89_ETSI][12] = 36,
-	[1][0][RTW89_MKK][12] = 36,
-	[1][0][RTW89_IC][12] = 62,
-	[1][0][RTW89_KCC][12] = 58,
-	[1][0][RTW89_ACMA][12] = 36,
-	[1][0][RTW89_CHILE][12] = 54,
-	[1][0][RTW89_UKRAINE][12] = 36,
-	[1][0][RTW89_MEXICO][12] = 62,
-	[1][0][RTW89_CN][12] = 36,
-	[1][0][RTW89_QATAR][12] = 36,
-	[1][0][RTW89_FCC][14] = 62,
-	[1][0][RTW89_ETSI][14] = 36,
-	[1][0][RTW89_MKK][14] = 36,
-	[1][0][RTW89_IC][14] = 62,
-	[1][0][RTW89_KCC][14] = 58,
-	[1][0][RTW89_ACMA][14] = 36,
-	[1][0][RTW89_CHILE][14] = 54,
-	[1][0][RTW89_UKRAINE][14] = 36,
-	[1][0][RTW89_MEXICO][14] = 62,
-	[1][0][RTW89_CN][14] = 36,
-	[1][0][RTW89_QATAR][14] = 36,
-	[1][0][RTW89_FCC][15] = 62,
-	[1][0][RTW89_ETSI][15] = 36,
-	[1][0][RTW89_MKK][15] = 58,
-	[1][0][RTW89_IC][15] = 62,
-	[1][0][RTW89_KCC][15] = 58,
-	[1][0][RTW89_ACMA][15] = 36,
-	[1][0][RTW89_CHILE][15] = 54,
-	[1][0][RTW89_UKRAINE][15] = 36,
-	[1][0][RTW89_MEXICO][15] = 62,
-	[1][0][RTW89_CN][15] = 127,
-	[1][0][RTW89_QATAR][15] = 36,
-	[1][0][RTW89_FCC][17] = 62,
-	[1][0][RTW89_ETSI][17] = 36,
-	[1][0][RTW89_MKK][17] = 58,
-	[1][0][RTW89_IC][17] = 62,
-	[1][0][RTW89_KCC][17] = 58,
-	[1][0][RTW89_ACMA][17] = 36,
-	[1][0][RTW89_CHILE][17] = 54,
-	[1][0][RTW89_UKRAINE][17] = 36,
-	[1][0][RTW89_MEXICO][17] = 62,
-	[1][0][RTW89_CN][17] = 127,
-	[1][0][RTW89_QATAR][17] = 36,
-	[1][0][RTW89_FCC][19] = 62,
-	[1][0][RTW89_ETSI][19] = 36,
-	[1][0][RTW89_MKK][19] = 58,
-	[1][0][RTW89_IC][19] = 62,
-	[1][0][RTW89_KCC][19] = 58,
-	[1][0][RTW89_ACMA][19] = 36,
-	[1][0][RTW89_CHILE][19] = 54,
-	[1][0][RTW89_UKRAINE][19] = 36,
-	[1][0][RTW89_MEXICO][19] = 62,
-	[1][0][RTW89_CN][19] = 127,
-	[1][0][RTW89_QATAR][19] = 36,
-	[1][0][RTW89_FCC][21] = 62,
-	[1][0][RTW89_ETSI][21] = 36,
-	[1][0][RTW89_MKK][21] = 58,
-	[1][0][RTW89_IC][21] = 62,
-	[1][0][RTW89_KCC][21] = 58,
-	[1][0][RTW89_ACMA][21] = 36,
-	[1][0][RTW89_CHILE][21] = 54,
-	[1][0][RTW89_UKRAINE][21] = 36,
-	[1][0][RTW89_MEXICO][21] = 62,
-	[1][0][RTW89_CN][21] = 127,
-	[1][0][RTW89_QATAR][21] = 36,
-	[1][0][RTW89_FCC][23] = 62,
-	[1][0][RTW89_ETSI][23] = 36,
-	[1][0][RTW89_MKK][23] = 58,
-	[1][0][RTW89_IC][23] = 62,
-	[1][0][RTW89_KCC][23] = 58,
-	[1][0][RTW89_ACMA][23] = 36,
-	[1][0][RTW89_CHILE][23] = 54,
-	[1][0][RTW89_UKRAINE][23] = 36,
-	[1][0][RTW89_MEXICO][23] = 62,
-	[1][0][RTW89_CN][23] = 127,
-	[1][0][RTW89_QATAR][23] = 36,
-	[1][0][RTW89_FCC][25] = 62,
-	[1][0][RTW89_ETSI][25] = 36,
-	[1][0][RTW89_MKK][25] = 58,
-	[1][0][RTW89_IC][25] = 127,
-	[1][0][RTW89_KCC][25] = 58,
-	[1][0][RTW89_ACMA][25] = 127,
-	[1][0][RTW89_CHILE][25] = 54,
-	[1][0][RTW89_UKRAINE][25] = 36,
-	[1][0][RTW89_MEXICO][25] = 62,
-	[1][0][RTW89_CN][25] = 127,
-	[1][0][RTW89_QATAR][25] = 36,
-	[1][0][RTW89_FCC][27] = 62,
-	[1][0][RTW89_ETSI][27] = 36,
-	[1][0][RTW89_MKK][27] = 58,
-	[1][0][RTW89_IC][27] = 127,
-	[1][0][RTW89_KCC][27] = 58,
-	[1][0][RTW89_ACMA][27] = 127,
-	[1][0][RTW89_CHILE][27] = 54,
-	[1][0][RTW89_UKRAINE][27] = 36,
-	[1][0][RTW89_MEXICO][27] = 62,
-	[1][0][RTW89_CN][27] = 127,
-	[1][0][RTW89_QATAR][27] = 36,
-	[1][0][RTW89_FCC][29] = 62,
-	[1][0][RTW89_ETSI][29] = 36,
-	[1][0][RTW89_MKK][29] = 58,
-	[1][0][RTW89_IC][29] = 127,
-	[1][0][RTW89_KCC][29] = 58,
-	[1][0][RTW89_ACMA][29] = 127,
-	[1][0][RTW89_CHILE][29] = 54,
-	[1][0][RTW89_UKRAINE][29] = 36,
-	[1][0][RTW89_MEXICO][29] = 62,
-	[1][0][RTW89_CN][29] = 127,
-	[1][0][RTW89_QATAR][29] = 36,
-	[1][0][RTW89_FCC][31] = 62,
-	[1][0][RTW89_ETSI][31] = 36,
-	[1][0][RTW89_MKK][31] = 58,
-	[1][0][RTW89_IC][31] = 62,
-	[1][0][RTW89_KCC][31] = 58,
-	[1][0][RTW89_ACMA][31] = 36,
-	[1][0][RTW89_CHILE][31] = 54,
-	[1][0][RTW89_UKRAINE][31] = 36,
-	[1][0][RTW89_MEXICO][31] = 62,
-	[1][0][RTW89_CN][31] = 127,
-	[1][0][RTW89_QATAR][31] = 36,
-	[1][0][RTW89_FCC][33] = 62,
-	[1][0][RTW89_ETSI][33] = 36,
-	[1][0][RTW89_MKK][33] = 58,
-	[1][0][RTW89_IC][33] = 62,
-	[1][0][RTW89_KCC][33] = 58,
-	[1][0][RTW89_ACMA][33] = 36,
-	[1][0][RTW89_CHILE][33] = 54,
-	[1][0][RTW89_UKRAINE][33] = 36,
-	[1][0][RTW89_MEXICO][33] = 62,
-	[1][0][RTW89_CN][33] = 127,
-	[1][0][RTW89_QATAR][33] = 36,
-	[1][0][RTW89_FCC][35] = 62,
-	[1][0][RTW89_ETSI][35] = 36,
-	[1][0][RTW89_MKK][35] = 58,
-	[1][0][RTW89_IC][35] = 62,
-	[1][0][RTW89_KCC][35] = 58,
-	[1][0][RTW89_ACMA][35] = 36,
-	[1][0][RTW89_CHILE][35] = 54,
-	[1][0][RTW89_UKRAINE][35] = 36,
-	[1][0][RTW89_MEXICO][35] = 62,
-	[1][0][RTW89_CN][35] = 127,
-	[1][0][RTW89_QATAR][35] = 36,
-	[1][0][RTW89_FCC][37] = 62,
-	[1][0][RTW89_ETSI][37] = 127,
-	[1][0][RTW89_MKK][37] = 58,
-	[1][0][RTW89_IC][37] = 62,
-	[1][0][RTW89_KCC][37] = 58,
-	[1][0][RTW89_ACMA][37] = 62,
-	[1][0][RTW89_CHILE][37] = 54,
-	[1][0][RTW89_UKRAINE][37] = 127,
-	[1][0][RTW89_MEXICO][37] = 62,
-	[1][0][RTW89_CN][37] = 127,
-	[1][0][RTW89_QATAR][37] = 127,
-	[1][0][RTW89_FCC][38] = 76,
-	[1][0][RTW89_ETSI][38] = 28,
-	[1][0][RTW89_MKK][38] = 127,
-	[1][0][RTW89_IC][38] = 76,
-	[1][0][RTW89_KCC][38] = 58,
-	[1][0][RTW89_ACMA][38] = 76,
-	[1][0][RTW89_CHILE][38] = 54,
-	[1][0][RTW89_UKRAINE][38] = 28,
-	[1][0][RTW89_MEXICO][38] = 76,
-	[1][0][RTW89_CN][38] = 74,
-	[1][0][RTW89_QATAR][38] = 28,
-	[1][0][RTW89_FCC][40] = 76,
-	[1][0][RTW89_ETSI][40] = 28,
-	[1][0][RTW89_MKK][40] = 127,
-	[1][0][RTW89_IC][40] = 76,
-	[1][0][RTW89_KCC][40] = 58,
-	[1][0][RTW89_ACMA][40] = 76,
-	[1][0][RTW89_CHILE][40] = 54,
-	[1][0][RTW89_UKRAINE][40] = 28,
-	[1][0][RTW89_MEXICO][40] = 76,
-	[1][0][RTW89_CN][40] = 74,
-	[1][0][RTW89_QATAR][40] = 28,
-	[1][0][RTW89_FCC][42] = 76,
-	[1][0][RTW89_ETSI][42] = 28,
-	[1][0][RTW89_MKK][42] = 127,
-	[1][0][RTW89_IC][42] = 76,
-	[1][0][RTW89_KCC][42] = 58,
-	[1][0][RTW89_ACMA][42] = 76,
-	[1][0][RTW89_CHILE][42] = 54,
-	[1][0][RTW89_UKRAINE][42] = 28,
-	[1][0][RTW89_MEXICO][42] = 76,
-	[1][0][RTW89_CN][42] = 74,
-	[1][0][RTW89_QATAR][42] = 28,
-	[1][0][RTW89_FCC][44] = 76,
-	[1][0][RTW89_ETSI][44] = 28,
-	[1][0][RTW89_MKK][44] = 127,
-	[1][0][RTW89_IC][44] = 76,
-	[1][0][RTW89_KCC][44] = 58,
-	[1][0][RTW89_ACMA][44] = 76,
-	[1][0][RTW89_CHILE][44] = 54,
-	[1][0][RTW89_UKRAINE][44] = 28,
-	[1][0][RTW89_MEXICO][44] = 76,
-	[1][0][RTW89_CN][44] = 74,
-	[1][0][RTW89_QATAR][44] = 28,
-	[1][0][RTW89_FCC][46] = 76,
-	[1][0][RTW89_ETSI][46] = 28,
-	[1][0][RTW89_MKK][46] = 127,
-	[1][0][RTW89_IC][46] = 76,
-	[1][0][RTW89_KCC][46] = 58,
-	[1][0][RTW89_ACMA][46] = 76,
-	[1][0][RTW89_CHILE][46] = 54,
-	[1][0][RTW89_UKRAINE][46] = 28,
-	[1][0][RTW89_MEXICO][46] = 76,
-	[1][0][RTW89_CN][46] = 74,
-	[1][0][RTW89_QATAR][46] = 28,
-	[1][1][RTW89_FCC][0] = 46,
-	[1][1][RTW89_ETSI][0] = 22,
-	[1][1][RTW89_MKK][0] = 24,
-	[1][1][RTW89_IC][0] = 18,
-	[1][1][RTW89_KCC][0] = 44,
-	[1][1][RTW89_ACMA][0] = 22,
-	[1][1][RTW89_CHILE][0] = 18,
-	[1][1][RTW89_UKRAINE][0] = 22,
-	[1][1][RTW89_MEXICO][0] = 46,
-	[1][1][RTW89_CN][0] = 22,
-	[1][1][RTW89_QATAR][0] = 22,
-	[1][1][RTW89_FCC][2] = 46,
-	[1][1][RTW89_ETSI][2] = 22,
-	[1][1][RTW89_MKK][2] = 24,
-	[1][1][RTW89_IC][2] = 18,
-	[1][1][RTW89_KCC][2] = 44,
-	[1][1][RTW89_ACMA][2] = 22,
-	[1][1][RTW89_CHILE][2] = 18,
-	[1][1][RTW89_UKRAINE][2] = 22,
-	[1][1][RTW89_MEXICO][2] = 46,
-	[1][1][RTW89_CN][2] = 22,
-	[1][1][RTW89_QATAR][2] = 22,
-	[1][1][RTW89_FCC][4] = 46,
-	[1][1][RTW89_ETSI][4] = 22,
-	[1][1][RTW89_MKK][4] = 24,
-	[1][1][RTW89_IC][4] = 18,
-	[1][1][RTW89_KCC][4] = 44,
-	[1][1][RTW89_ACMA][4] = 22,
-	[1][1][RTW89_CHILE][4] = 18,
-	[1][1][RTW89_UKRAINE][4] = 22,
-	[1][1][RTW89_MEXICO][4] = 46,
-	[1][1][RTW89_CN][4] = 22,
-	[1][1][RTW89_QATAR][4] = 22,
-	[1][1][RTW89_FCC][6] = 46,
-	[1][1][RTW89_ETSI][6] = 22,
-	[1][1][RTW89_MKK][6] = 24,
-	[1][1][RTW89_IC][6] = 18,
-	[1][1][RTW89_KCC][6] = 16,
-	[1][1][RTW89_ACMA][6] = 22,
-	[1][1][RTW89_CHILE][6] = 18,
-	[1][1][RTW89_UKRAINE][6] = 22,
-	[1][1][RTW89_MEXICO][6] = 46,
-	[1][1][RTW89_CN][6] = 22,
-	[1][1][RTW89_QATAR][6] = 22,
-	[1][1][RTW89_FCC][8] = 46,
-	[1][1][RTW89_ETSI][8] = 22,
-	[1][1][RTW89_MKK][8] = 24,
-	[1][1][RTW89_IC][8] = 46,
-	[1][1][RTW89_KCC][8] = 44,
-	[1][1][RTW89_ACMA][8] = 22,
-	[1][1][RTW89_CHILE][8] = 42,
-	[1][1][RTW89_UKRAINE][8] = 22,
-	[1][1][RTW89_MEXICO][8] = 46,
-	[1][1][RTW89_CN][8] = 22,
-	[1][1][RTW89_QATAR][8] = 22,
-	[1][1][RTW89_FCC][10] = 46,
-	[1][1][RTW89_ETSI][10] = 22,
-	[1][1][RTW89_MKK][10] = 24,
-	[1][1][RTW89_IC][10] = 46,
-	[1][1][RTW89_KCC][10] = 44,
-	[1][1][RTW89_ACMA][10] = 22,
-	[1][1][RTW89_CHILE][10] = 42,
-	[1][1][RTW89_UKRAINE][10] = 22,
-	[1][1][RTW89_MEXICO][10] = 46,
-	[1][1][RTW89_CN][10] = 22,
-	[1][1][RTW89_QATAR][10] = 22,
-	[1][1][RTW89_FCC][12] = 46,
-	[1][1][RTW89_ETSI][12] = 22,
-	[1][1][RTW89_MKK][12] = 24,
-	[1][1][RTW89_IC][12] = 46,
-	[1][1][RTW89_KCC][12] = 44,
-	[1][1][RTW89_ACMA][12] = 22,
-	[1][1][RTW89_CHILE][12] = 42,
-	[1][1][RTW89_UKRAINE][12] = 22,
-	[1][1][RTW89_MEXICO][12] = 46,
-	[1][1][RTW89_CN][12] = 22,
-	[1][1][RTW89_QATAR][12] = 22,
-	[1][1][RTW89_FCC][14] = 46,
-	[1][1][RTW89_ETSI][14] = 22,
-	[1][1][RTW89_MKK][14] = 24,
-	[1][1][RTW89_IC][14] = 46,
-	[1][1][RTW89_KCC][14] = 44,
-	[1][1][RTW89_ACMA][14] = 22,
-	[1][1][RTW89_CHILE][14] = 42,
-	[1][1][RTW89_UKRAINE][14] = 22,
-	[1][1][RTW89_MEXICO][14] = 46,
-	[1][1][RTW89_CN][14] = 22,
-	[1][1][RTW89_QATAR][14] = 22,
-	[1][1][RTW89_FCC][15] = 46,
-	[1][1][RTW89_ETSI][15] = 22,
-	[1][1][RTW89_MKK][15] = 46,
-	[1][1][RTW89_IC][15] = 46,
-	[1][1][RTW89_KCC][15] = 44,
-	[1][1][RTW89_ACMA][15] = 22,
-	[1][1][RTW89_CHILE][15] = 42,
-	[1][1][RTW89_UKRAINE][15] = 22,
-	[1][1][RTW89_MEXICO][15] = 46,
-	[1][1][RTW89_CN][15] = 127,
-	[1][1][RTW89_QATAR][15] = 22,
-	[1][1][RTW89_FCC][17] = 46,
-	[1][1][RTW89_ETSI][17] = 22,
-	[1][1][RTW89_MKK][17] = 46,
-	[1][1][RTW89_IC][17] = 46,
-	[1][1][RTW89_KCC][17] = 44,
-	[1][1][RTW89_ACMA][17] = 22,
-	[1][1][RTW89_CHILE][17] = 42,
-	[1][1][RTW89_UKRAINE][17] = 22,
-	[1][1][RTW89_MEXICO][17] = 46,
-	[1][1][RTW89_CN][17] = 127,
-	[1][1][RTW89_QATAR][17] = 22,
-	[1][1][RTW89_FCC][19] = 46,
-	[1][1][RTW89_ETSI][19] = 22,
-	[1][1][RTW89_MKK][19] = 46,
-	[1][1][RTW89_IC][19] = 46,
-	[1][1][RTW89_KCC][19] = 44,
-	[1][1][RTW89_ACMA][19] = 22,
-	[1][1][RTW89_CHILE][19] = 42,
-	[1][1][RTW89_UKRAINE][19] = 22,
-	[1][1][RTW89_MEXICO][19] = 46,
-	[1][1][RTW89_CN][19] = 127,
-	[1][1][RTW89_QATAR][19] = 22,
-	[1][1][RTW89_FCC][21] = 46,
-	[1][1][RTW89_ETSI][21] = 22,
-	[1][1][RTW89_MKK][21] = 46,
-	[1][1][RTW89_IC][21] = 46,
-	[1][1][RTW89_KCC][21] = 44,
-	[1][1][RTW89_ACMA][21] = 22,
-	[1][1][RTW89_CHILE][21] = 42,
-	[1][1][RTW89_UKRAINE][21] = 22,
-	[1][1][RTW89_MEXICO][21] = 46,
-	[1][1][RTW89_CN][21] = 127,
-	[1][1][RTW89_QATAR][21] = 22,
-	[1][1][RTW89_FCC][23] = 46,
-	[1][1][RTW89_ETSI][23] = 22,
-	[1][1][RTW89_MKK][23] = 46,
-	[1][1][RTW89_IC][23] = 46,
-	[1][1][RTW89_KCC][23] = 44,
-	[1][1][RTW89_ACMA][23] = 22,
-	[1][1][RTW89_CHILE][23] = 42,
-	[1][1][RTW89_UKRAINE][23] = 22,
-	[1][1][RTW89_MEXICO][23] = 46,
-	[1][1][RTW89_CN][23] = 127,
-	[1][1][RTW89_QATAR][23] = 22,
-	[1][1][RTW89_FCC][25] = 46,
-	[1][1][RTW89_ETSI][25] = 22,
-	[1][1][RTW89_MKK][25] = 46,
-	[1][1][RTW89_IC][25] = 127,
-	[1][1][RTW89_KCC][25] = 44,
-	[1][1][RTW89_ACMA][25] = 127,
-	[1][1][RTW89_CHILE][25] = 42,
-	[1][1][RTW89_UKRAINE][25] = 22,
-	[1][1][RTW89_MEXICO][25] = 46,
-	[1][1][RTW89_CN][25] = 127,
-	[1][1][RTW89_QATAR][25] = 22,
-	[1][1][RTW89_FCC][27] = 46,
-	[1][1][RTW89_ETSI][27] = 22,
-	[1][1][RTW89_MKK][27] = 46,
-	[1][1][RTW89_IC][27] = 127,
-	[1][1][RTW89_KCC][27] = 44,
-	[1][1][RTW89_ACMA][27] = 127,
-	[1][1][RTW89_CHILE][27] = 42,
-	[1][1][RTW89_UKRAINE][27] = 22,
-	[1][1][RTW89_MEXICO][27] = 46,
-	[1][1][RTW89_CN][27] = 127,
-	[1][1][RTW89_QATAR][27] = 22,
-	[1][1][RTW89_FCC][29] = 46,
-	[1][1][RTW89_ETSI][29] = 22,
-	[1][1][RTW89_MKK][29] = 46,
-	[1][1][RTW89_IC][29] = 127,
-	[1][1][RTW89_KCC][29] = 44,
-	[1][1][RTW89_ACMA][29] = 127,
-	[1][1][RTW89_CHILE][29] = 42,
-	[1][1][RTW89_UKRAINE][29] = 22,
-	[1][1][RTW89_MEXICO][29] = 46,
-	[1][1][RTW89_CN][29] = 127,
-	[1][1][RTW89_QATAR][29] = 22,
-	[1][1][RTW89_FCC][31] = 46,
-	[1][1][RTW89_ETSI][31] = 22,
-	[1][1][RTW89_MKK][31] = 46,
-	[1][1][RTW89_IC][31] = 46,
-	[1][1][RTW89_KCC][31] = 44,
-	[1][1][RTW89_ACMA][31] = 22,
-	[1][1][RTW89_CHILE][31] = 42,
-	[1][1][RTW89_UKRAINE][31] = 22,
-	[1][1][RTW89_MEXICO][31] = 46,
-	[1][1][RTW89_CN][31] = 127,
-	[1][1][RTW89_QATAR][31] = 22,
-	[1][1][RTW89_FCC][33] = 46,
-	[1][1][RTW89_ETSI][33] = 22,
-	[1][1][RTW89_MKK][33] = 46,
-	[1][1][RTW89_IC][33] = 46,
-	[1][1][RTW89_KCC][33] = 44,
-	[1][1][RTW89_ACMA][33] = 22,
-	[1][1][RTW89_CHILE][33] = 42,
-	[1][1][RTW89_UKRAINE][33] = 22,
-	[1][1][RTW89_MEXICO][33] = 46,
-	[1][1][RTW89_CN][33] = 127,
-	[1][1][RTW89_QATAR][33] = 22,
-	[1][1][RTW89_FCC][35] = 46,
-	[1][1][RTW89_ETSI][35] = 22,
-	[1][1][RTW89_MKK][35] = 46,
-	[1][1][RTW89_IC][35] = 46,
-	[1][1][RTW89_KCC][35] = 44,
-	[1][1][RTW89_ACMA][35] = 22,
-	[1][1][RTW89_CHILE][35] = 42,
-	[1][1][RTW89_UKRAINE][35] = 22,
-	[1][1][RTW89_MEXICO][35] = 46,
-	[1][1][RTW89_CN][35] = 127,
-	[1][1][RTW89_QATAR][35] = 22,
-	[1][1][RTW89_FCC][37] = 46,
-	[1][1][RTW89_ETSI][37] = 127,
-	[1][1][RTW89_MKK][37] = 46,
-	[1][1][RTW89_IC][37] = 46,
-	[1][1][RTW89_KCC][37] = 44,
-	[1][1][RTW89_ACMA][37] = 50,
-	[1][1][RTW89_CHILE][37] = 42,
-	[1][1][RTW89_UKRAINE][37] = 127,
-	[1][1][RTW89_MEXICO][37] = 46,
-	[1][1][RTW89_CN][37] = 127,
-	[1][1][RTW89_QATAR][37] = 127,
-	[1][1][RTW89_FCC][38] = 74,
-	[1][1][RTW89_ETSI][38] = 16,
-	[1][1][RTW89_MKK][38] = 127,
-	[1][1][RTW89_IC][38] = 74,
-	[1][1][RTW89_KCC][38] = 44,
-	[1][1][RTW89_ACMA][38] = 76,
-	[1][1][RTW89_CHILE][38] = 42,
-	[1][1][RTW89_UKRAINE][38] = 16,
-	[1][1][RTW89_MEXICO][38] = 74,
-	[1][1][RTW89_CN][38] = 62,
-	[1][1][RTW89_QATAR][38] = 16,
-	[1][1][RTW89_FCC][40] = 76,
-	[1][1][RTW89_ETSI][40] = 16,
-	[1][1][RTW89_MKK][40] = 127,
-	[1][1][RTW89_IC][40] = 76,
-	[1][1][RTW89_KCC][40] = 44,
-	[1][1][RTW89_ACMA][40] = 76,
-	[1][1][RTW89_CHILE][40] = 42,
-	[1][1][RTW89_UKRAINE][40] = 16,
-	[1][1][RTW89_MEXICO][40] = 76,
-	[1][1][RTW89_CN][40] = 62,
-	[1][1][RTW89_QATAR][40] = 16,
-	[1][1][RTW89_FCC][42] = 76,
-	[1][1][RTW89_ETSI][42] = 16,
-	[1][1][RTW89_MKK][42] = 127,
-	[1][1][RTW89_IC][42] = 76,
-	[1][1][RTW89_KCC][42] = 44,
-	[1][1][RTW89_ACMA][42] = 76,
-	[1][1][RTW89_CHILE][42] = 42,
-	[1][1][RTW89_UKRAINE][42] = 16,
-	[1][1][RTW89_MEXICO][42] = 76,
-	[1][1][RTW89_CN][42] = 62,
-	[1][1][RTW89_QATAR][42] = 16,
-	[1][1][RTW89_FCC][44] = 76,
-	[1][1][RTW89_ETSI][44] = 16,
-	[1][1][RTW89_MKK][44] = 127,
-	[1][1][RTW89_IC][44] = 76,
-	[1][1][RTW89_KCC][44] = 44,
-	[1][1][RTW89_ACMA][44] = 76,
-	[1][1][RTW89_CHILE][44] = 42,
-	[1][1][RTW89_UKRAINE][44] = 16,
-	[1][1][RTW89_MEXICO][44] = 76,
-	[1][1][RTW89_CN][44] = 62,
-	[1][1][RTW89_QATAR][44] = 16,
-	[1][1][RTW89_FCC][46] = 76,
-	[1][1][RTW89_ETSI][46] = 16,
-	[1][1][RTW89_MKK][46] = 127,
-	[1][1][RTW89_IC][46] = 76,
-	[1][1][RTW89_KCC][46] = 44,
-	[1][1][RTW89_ACMA][46] = 76,
-	[1][1][RTW89_CHILE][46] = 42,
-	[1][1][RTW89_UKRAINE][46] = 16,
-	[1][1][RTW89_MEXICO][46] = 76,
-	[1][1][RTW89_CN][46] = 62,
-	[1][1][RTW89_QATAR][46] = 16,
-	[2][0][RTW89_FCC][0] = 74,
-	[2][0][RTW89_ETSI][0] = 46,
-	[2][0][RTW89_MKK][0] = 50,
-	[2][0][RTW89_IC][0] = 46,
-	[2][0][RTW89_KCC][0] = 70,
-	[2][0][RTW89_ACMA][0] = 46,
-	[2][0][RTW89_CHILE][0] = 30,
-	[2][0][RTW89_UKRAINE][0] = 46,
-	[2][0][RTW89_MEXICO][0] = 62,
-	[2][0][RTW89_CN][0] = 46,
-	[2][0][RTW89_QATAR][0] = 46,
-	[2][0][RTW89_FCC][2] = 74,
-	[2][0][RTW89_ETSI][2] = 46,
-	[2][0][RTW89_MKK][2] = 50,
-	[2][0][RTW89_IC][2] = 46,
-	[2][0][RTW89_KCC][2] = 70,
-	[2][0][RTW89_ACMA][2] = 46,
-	[2][0][RTW89_CHILE][2] = 30,
-	[2][0][RTW89_UKRAINE][2] = 46,
-	[2][0][RTW89_MEXICO][2] = 62,
-	[2][0][RTW89_CN][2] = 46,
-	[2][0][RTW89_QATAR][2] = 46,
-	[2][0][RTW89_FCC][4] = 74,
-	[2][0][RTW89_ETSI][4] = 46,
-	[2][0][RTW89_MKK][4] = 50,
-	[2][0][RTW89_IC][4] = 46,
-	[2][0][RTW89_KCC][4] = 70,
-	[2][0][RTW89_ACMA][4] = 46,
-	[2][0][RTW89_CHILE][4] = 30,
-	[2][0][RTW89_UKRAINE][4] = 46,
-	[2][0][RTW89_MEXICO][4] = 62,
-	[2][0][RTW89_CN][4] = 46,
-	[2][0][RTW89_QATAR][4] = 46,
-	[2][0][RTW89_FCC][6] = 74,
-	[2][0][RTW89_ETSI][6] = 46,
-	[2][0][RTW89_MKK][6] = 50,
-	[2][0][RTW89_IC][6] = 46,
-	[2][0][RTW89_KCC][6] = 44,
-	[2][0][RTW89_ACMA][6] = 46,
-	[2][0][RTW89_CHILE][6] = 30,
-	[2][0][RTW89_UKRAINE][6] = 46,
-	[2][0][RTW89_MEXICO][6] = 62,
-	[2][0][RTW89_CN][6] = 46,
-	[2][0][RTW89_QATAR][6] = 46,
-	[2][0][RTW89_FCC][8] = 74,
-	[2][0][RTW89_ETSI][8] = 46,
-	[2][0][RTW89_MKK][8] = 50,
-	[2][0][RTW89_IC][8] = 66,
-	[2][0][RTW89_KCC][8] = 70,
-	[2][0][RTW89_ACMA][8] = 46,
-	[2][0][RTW89_CHILE][8] = 54,
-	[2][0][RTW89_UKRAINE][8] = 46,
-	[2][0][RTW89_MEXICO][8] = 74,
-	[2][0][RTW89_CN][8] = 46,
-	[2][0][RTW89_QATAR][8] = 46,
-	[2][0][RTW89_FCC][10] = 74,
-	[2][0][RTW89_ETSI][10] = 46,
-	[2][0][RTW89_MKK][10] = 50,
-	[2][0][RTW89_IC][10] = 66,
-	[2][0][RTW89_KCC][10] = 70,
-	[2][0][RTW89_ACMA][10] = 46,
-	[2][0][RTW89_CHILE][10] = 54,
-	[2][0][RTW89_UKRAINE][10] = 46,
-	[2][0][RTW89_MEXICO][10] = 74,
-	[2][0][RTW89_CN][10] = 46,
-	[2][0][RTW89_QATAR][10] = 46,
-	[2][0][RTW89_FCC][12] = 74,
-	[2][0][RTW89_ETSI][12] = 46,
-	[2][0][RTW89_MKK][12] = 50,
-	[2][0][RTW89_IC][12] = 66,
-	[2][0][RTW89_KCC][12] = 70,
-	[2][0][RTW89_ACMA][12] = 46,
-	[2][0][RTW89_CHILE][12] = 54,
-	[2][0][RTW89_UKRAINE][12] = 46,
-	[2][0][RTW89_MEXICO][12] = 74,
-	[2][0][RTW89_CN][12] = 46,
-	[2][0][RTW89_QATAR][12] = 46,
-	[2][0][RTW89_FCC][14] = 74,
-	[2][0][RTW89_ETSI][14] = 46,
-	[2][0][RTW89_MKK][14] = 50,
-	[2][0][RTW89_IC][14] = 66,
-	[2][0][RTW89_KCC][14] = 70,
-	[2][0][RTW89_ACMA][14] = 46,
-	[2][0][RTW89_CHILE][14] = 54,
-	[2][0][RTW89_UKRAINE][14] = 46,
-	[2][0][RTW89_MEXICO][14] = 74,
-	[2][0][RTW89_CN][14] = 46,
-	[2][0][RTW89_QATAR][14] = 46,
-	[2][0][RTW89_FCC][15] = 74,
-	[2][0][RTW89_ETSI][15] = 46,
-	[2][0][RTW89_MKK][15] = 70,
-	[2][0][RTW89_IC][15] = 74,
-	[2][0][RTW89_KCC][15] = 70,
-	[2][0][RTW89_ACMA][15] = 46,
-	[2][0][RTW89_CHILE][15] = 54,
-	[2][0][RTW89_UKRAINE][15] = 46,
-	[2][0][RTW89_MEXICO][15] = 74,
-	[2][0][RTW89_CN][15] = 127,
-	[2][0][RTW89_QATAR][15] = 46,
-	[2][0][RTW89_FCC][17] = 74,
-	[2][0][RTW89_ETSI][17] = 46,
-	[2][0][RTW89_MKK][17] = 70,
-	[2][0][RTW89_IC][17] = 74,
-	[2][0][RTW89_KCC][17] = 70,
-	[2][0][RTW89_ACMA][17] = 46,
-	[2][0][RTW89_CHILE][17] = 54,
-	[2][0][RTW89_UKRAINE][17] = 46,
-	[2][0][RTW89_MEXICO][17] = 74,
-	[2][0][RTW89_CN][17] = 127,
-	[2][0][RTW89_QATAR][17] = 46,
-	[2][0][RTW89_FCC][19] = 74,
-	[2][0][RTW89_ETSI][19] = 46,
-	[2][0][RTW89_MKK][19] = 70,
-	[2][0][RTW89_IC][19] = 74,
-	[2][0][RTW89_KCC][19] = 70,
-	[2][0][RTW89_ACMA][19] = 46,
-	[2][0][RTW89_CHILE][19] = 54,
-	[2][0][RTW89_UKRAINE][19] = 46,
-	[2][0][RTW89_MEXICO][19] = 74,
-	[2][0][RTW89_CN][19] = 127,
-	[2][0][RTW89_QATAR][19] = 46,
-	[2][0][RTW89_FCC][21] = 74,
-	[2][0][RTW89_ETSI][21] = 46,
-	[2][0][RTW89_MKK][21] = 70,
-	[2][0][RTW89_IC][21] = 74,
-	[2][0][RTW89_KCC][21] = 70,
-	[2][0][RTW89_ACMA][21] = 46,
-	[2][0][RTW89_CHILE][21] = 54,
-	[2][0][RTW89_UKRAINE][21] = 46,
-	[2][0][RTW89_MEXICO][21] = 74,
-	[2][0][RTW89_CN][21] = 127,
-	[2][0][RTW89_QATAR][21] = 46,
-	[2][0][RTW89_FCC][23] = 74,
-	[2][0][RTW89_ETSI][23] = 46,
-	[2][0][RTW89_MKK][23] = 70,
-	[2][0][RTW89_IC][23] = 74,
-	[2][0][RTW89_KCC][23] = 70,
-	[2][0][RTW89_ACMA][23] = 46,
-	[2][0][RTW89_CHILE][23] = 54,
-	[2][0][RTW89_UKRAINE][23] = 46,
-	[2][0][RTW89_MEXICO][23] = 74,
-	[2][0][RTW89_CN][23] = 127,
-	[2][0][RTW89_QATAR][23] = 46,
-	[2][0][RTW89_FCC][25] = 74,
-	[2][0][RTW89_ETSI][25] = 46,
-	[2][0][RTW89_MKK][25] = 70,
-	[2][0][RTW89_IC][25] = 127,
-	[2][0][RTW89_KCC][25] = 70,
-	[2][0][RTW89_ACMA][25] = 127,
-	[2][0][RTW89_CHILE][25] = 54,
-	[2][0][RTW89_UKRAINE][25] = 46,
-	[2][0][RTW89_MEXICO][25] = 74,
-	[2][0][RTW89_CN][25] = 127,
-	[2][0][RTW89_QATAR][25] = 46,
-	[2][0][RTW89_FCC][27] = 74,
-	[2][0][RTW89_ETSI][27] = 46,
-	[2][0][RTW89_MKK][27] = 70,
-	[2][0][RTW89_IC][27] = 127,
-	[2][0][RTW89_KCC][27] = 70,
-	[2][0][RTW89_ACMA][27] = 127,
-	[2][0][RTW89_CHILE][27] = 54,
-	[2][0][RTW89_UKRAINE][27] = 46,
-	[2][0][RTW89_MEXICO][27] = 74,
-	[2][0][RTW89_CN][27] = 127,
-	[2][0][RTW89_QATAR][27] = 46,
-	[2][0][RTW89_FCC][29] = 74,
-	[2][0][RTW89_ETSI][29] = 46,
-	[2][0][RTW89_MKK][29] = 70,
-	[2][0][RTW89_IC][29] = 127,
-	[2][0][RTW89_KCC][29] = 70,
-	[2][0][RTW89_ACMA][29] = 127,
-	[2][0][RTW89_CHILE][29] = 54,
-	[2][0][RTW89_UKRAINE][29] = 46,
-	[2][0][RTW89_MEXICO][29] = 74,
-	[2][0][RTW89_CN][29] = 127,
-	[2][0][RTW89_QATAR][29] = 46,
-	[2][0][RTW89_FCC][31] = 74,
-	[2][0][RTW89_ETSI][31] = 46,
-	[2][0][RTW89_MKK][31] = 70,
-	[2][0][RTW89_IC][31] = 74,
-	[2][0][RTW89_KCC][31] = 70,
-	[2][0][RTW89_ACMA][31] = 46,
-	[2][0][RTW89_CHILE][31] = 54,
-	[2][0][RTW89_UKRAINE][31] = 46,
-	[2][0][RTW89_MEXICO][31] = 74,
-	[2][0][RTW89_CN][31] = 127,
-	[2][0][RTW89_QATAR][31] = 46,
-	[2][0][RTW89_FCC][33] = 74,
-	[2][0][RTW89_ETSI][33] = 46,
-	[2][0][RTW89_MKK][33] = 70,
-	[2][0][RTW89_IC][33] = 74,
-	[2][0][RTW89_KCC][33] = 70,
-	[2][0][RTW89_ACMA][33] = 46,
-	[2][0][RTW89_CHILE][33] = 54,
-	[2][0][RTW89_UKRAINE][33] = 46,
-	[2][0][RTW89_MEXICO][33] = 74,
-	[2][0][RTW89_CN][33] = 127,
-	[2][0][RTW89_QATAR][33] = 46,
-	[2][0][RTW89_FCC][35] = 74,
-	[2][0][RTW89_ETSI][35] = 46,
-	[2][0][RTW89_MKK][35] = 70,
-	[2][0][RTW89_IC][35] = 74,
-	[2][0][RTW89_KCC][35] = 70,
-	[2][0][RTW89_ACMA][35] = 46,
-	[2][0][RTW89_CHILE][35] = 54,
-	[2][0][RTW89_UKRAINE][35] = 46,
-	[2][0][RTW89_MEXICO][35] = 74,
-	[2][0][RTW89_CN][35] = 127,
-	[2][0][RTW89_QATAR][35] = 46,
-	[2][0][RTW89_FCC][37] = 74,
-	[2][0][RTW89_ETSI][37] = 127,
-	[2][0][RTW89_MKK][37] = 70,
-	[2][0][RTW89_IC][37] = 74,
-	[2][0][RTW89_KCC][37] = 70,
-	[2][0][RTW89_ACMA][37] = 74,
-	[2][0][RTW89_CHILE][37] = 54,
-	[2][0][RTW89_UKRAINE][37] = 127,
-	[2][0][RTW89_MEXICO][37] = 74,
-	[2][0][RTW89_CN][37] = 127,
-	[2][0][RTW89_QATAR][37] = 127,
-	[2][0][RTW89_FCC][38] = 76,
-	[2][0][RTW89_ETSI][38] = 28,
-	[2][0][RTW89_MKK][38] = 127,
-	[2][0][RTW89_IC][38] = 76,
-	[2][0][RTW89_KCC][38] = 70,
-	[2][0][RTW89_ACMA][38] = 76,
-	[2][0][RTW89_CHILE][38] = 54,
-	[2][0][RTW89_UKRAINE][38] = 28,
-	[2][0][RTW89_MEXICO][38] = 76,
-	[2][0][RTW89_CN][38] = 76,
-	[2][0][RTW89_QATAR][38] = 28,
-	[2][0][RTW89_FCC][40] = 76,
-	[2][0][RTW89_ETSI][40] = 28,
-	[2][0][RTW89_MKK][40] = 127,
-	[2][0][RTW89_IC][40] = 76,
-	[2][0][RTW89_KCC][40] = 70,
-	[2][0][RTW89_ACMA][40] = 76,
-	[2][0][RTW89_CHILE][40] = 54,
-	[2][0][RTW89_UKRAINE][40] = 28,
-	[2][0][RTW89_MEXICO][40] = 76,
-	[2][0][RTW89_CN][40] = 76,
-	[2][0][RTW89_QATAR][40] = 28,
-	[2][0][RTW89_FCC][42] = 76,
-	[2][0][RTW89_ETSI][42] = 28,
-	[2][0][RTW89_MKK][42] = 127,
-	[2][0][RTW89_IC][42] = 76,
-	[2][0][RTW89_KCC][42] = 70,
-	[2][0][RTW89_ACMA][42] = 76,
-	[2][0][RTW89_CHILE][42] = 54,
-	[2][0][RTW89_UKRAINE][42] = 28,
-	[2][0][RTW89_MEXICO][42] = 76,
-	[2][0][RTW89_CN][42] = 76,
-	[2][0][RTW89_QATAR][42] = 28,
-	[2][0][RTW89_FCC][44] = 76,
-	[2][0][RTW89_ETSI][44] = 28,
-	[2][0][RTW89_MKK][44] = 127,
-	[2][0][RTW89_IC][44] = 76,
-	[2][0][RTW89_KCC][44] = 70,
-	[2][0][RTW89_ACMA][44] = 76,
-	[2][0][RTW89_CHILE][44] = 54,
-	[2][0][RTW89_UKRAINE][44] = 28,
-	[2][0][RTW89_MEXICO][44] = 76,
-	[2][0][RTW89_CN][44] = 76,
-	[2][0][RTW89_QATAR][44] = 28,
-	[2][0][RTW89_FCC][46] = 76,
-	[2][0][RTW89_ETSI][46] = 28,
-	[2][0][RTW89_MKK][46] = 127,
-	[2][0][RTW89_IC][46] = 76,
-	[2][0][RTW89_KCC][46] = 70,
-	[2][0][RTW89_ACMA][46] = 76,
-	[2][0][RTW89_CHILE][46] = 54,
-	[2][0][RTW89_UKRAINE][46] = 28,
-	[2][0][RTW89_MEXICO][46] = 76,
-	[2][0][RTW89_CN][46] = 76,
-	[2][0][RTW89_QATAR][46] = 28,
-	[2][1][RTW89_FCC][0] = 58,
-	[2][1][RTW89_ETSI][0] = 32,
-	[2][1][RTW89_MKK][0] = 38,
-	[2][1][RTW89_IC][0] = 30,
-	[2][1][RTW89_KCC][0] = 54,
-	[2][1][RTW89_ACMA][0] = 32,
-	[2][1][RTW89_CHILE][0] = 18,
-	[2][1][RTW89_UKRAINE][0] = 32,
-	[2][1][RTW89_MEXICO][0] = 50,
-	[2][1][RTW89_CN][0] = 32,
-	[2][1][RTW89_QATAR][0] = 32,
-	[2][1][RTW89_FCC][2] = 58,
-	[2][1][RTW89_ETSI][2] = 32,
-	[2][1][RTW89_MKK][2] = 38,
-	[2][1][RTW89_IC][2] = 30,
-	[2][1][RTW89_KCC][2] = 54,
-	[2][1][RTW89_ACMA][2] = 32,
-	[2][1][RTW89_CHILE][2] = 18,
-	[2][1][RTW89_UKRAINE][2] = 32,
-	[2][1][RTW89_MEXICO][2] = 50,
-	[2][1][RTW89_CN][2] = 32,
-	[2][1][RTW89_QATAR][2] = 32,
-	[2][1][RTW89_FCC][4] = 58,
-	[2][1][RTW89_ETSI][4] = 32,
-	[2][1][RTW89_MKK][4] = 38,
-	[2][1][RTW89_IC][4] = 30,
-	[2][1][RTW89_KCC][4] = 54,
-	[2][1][RTW89_ACMA][4] = 32,
-	[2][1][RTW89_CHILE][4] = 18,
-	[2][1][RTW89_UKRAINE][4] = 32,
-	[2][1][RTW89_MEXICO][4] = 50,
-	[2][1][RTW89_CN][4] = 32,
-	[2][1][RTW89_QATAR][4] = 32,
-	[2][1][RTW89_FCC][6] = 58,
-	[2][1][RTW89_ETSI][6] = 32,
-	[2][1][RTW89_MKK][6] = 38,
-	[2][1][RTW89_IC][6] = 30,
-	[2][1][RTW89_KCC][6] = 26,
-	[2][1][RTW89_ACMA][6] = 32,
-	[2][1][RTW89_CHILE][6] = 18,
-	[2][1][RTW89_UKRAINE][6] = 32,
-	[2][1][RTW89_MEXICO][6] = 50,
-	[2][1][RTW89_CN][6] = 32,
-	[2][1][RTW89_QATAR][6] = 32,
-	[2][1][RTW89_FCC][8] = 58,
-	[2][1][RTW89_ETSI][8] = 32,
-	[2][1][RTW89_MKK][8] = 38,
-	[2][1][RTW89_IC][8] = 52,
-	[2][1][RTW89_KCC][8] = 54,
-	[2][1][RTW89_ACMA][8] = 32,
-	[2][1][RTW89_CHILE][8] = 42,
-	[2][1][RTW89_UKRAINE][8] = 32,
-	[2][1][RTW89_MEXICO][8] = 58,
-	[2][1][RTW89_CN][8] = 32,
-	[2][1][RTW89_QATAR][8] = 32,
-	[2][1][RTW89_FCC][10] = 58,
-	[2][1][RTW89_ETSI][10] = 32,
-	[2][1][RTW89_MKK][10] = 38,
-	[2][1][RTW89_IC][10] = 52,
-	[2][1][RTW89_KCC][10] = 54,
-	[2][1][RTW89_ACMA][10] = 32,
-	[2][1][RTW89_CHILE][10] = 42,
-	[2][1][RTW89_UKRAINE][10] = 32,
-	[2][1][RTW89_MEXICO][10] = 58,
-	[2][1][RTW89_CN][10] = 32,
-	[2][1][RTW89_QATAR][10] = 32,
-	[2][1][RTW89_FCC][12] = 58,
-	[2][1][RTW89_ETSI][12] = 32,
-	[2][1][RTW89_MKK][12] = 38,
-	[2][1][RTW89_IC][12] = 52,
-	[2][1][RTW89_KCC][12] = 54,
-	[2][1][RTW89_ACMA][12] = 32,
-	[2][1][RTW89_CHILE][12] = 42,
-	[2][1][RTW89_UKRAINE][12] = 32,
-	[2][1][RTW89_MEXICO][12] = 58,
-	[2][1][RTW89_CN][12] = 32,
-	[2][1][RTW89_QATAR][12] = 32,
-	[2][1][RTW89_FCC][14] = 58,
-	[2][1][RTW89_ETSI][14] = 32,
-	[2][1][RTW89_MKK][14] = 38,
-	[2][1][RTW89_IC][14] = 52,
-	[2][1][RTW89_KCC][14] = 54,
-	[2][1][RTW89_ACMA][14] = 32,
-	[2][1][RTW89_CHILE][14] = 42,
-	[2][1][RTW89_UKRAINE][14] = 32,
-	[2][1][RTW89_MEXICO][14] = 58,
-	[2][1][RTW89_CN][14] = 32,
-	[2][1][RTW89_QATAR][14] = 32,
-	[2][1][RTW89_FCC][15] = 58,
-	[2][1][RTW89_ETSI][15] = 32,
-	[2][1][RTW89_MKK][15] = 58,
-	[2][1][RTW89_IC][15] = 58,
-	[2][1][RTW89_KCC][15] = 54,
-	[2][1][RTW89_ACMA][15] = 32,
-	[2][1][RTW89_CHILE][15] = 42,
-	[2][1][RTW89_UKRAINE][15] = 32,
-	[2][1][RTW89_MEXICO][15] = 58,
-	[2][1][RTW89_CN][15] = 127,
-	[2][1][RTW89_QATAR][15] = 32,
-	[2][1][RTW89_FCC][17] = 58,
-	[2][1][RTW89_ETSI][17] = 32,
-	[2][1][RTW89_MKK][17] = 58,
-	[2][1][RTW89_IC][17] = 58,
-	[2][1][RTW89_KCC][17] = 54,
-	[2][1][RTW89_ACMA][17] = 32,
-	[2][1][RTW89_CHILE][17] = 42,
-	[2][1][RTW89_UKRAINE][17] = 32,
-	[2][1][RTW89_MEXICO][17] = 58,
-	[2][1][RTW89_CN][17] = 127,
-	[2][1][RTW89_QATAR][17] = 32,
-	[2][1][RTW89_FCC][19] = 58,
-	[2][1][RTW89_ETSI][19] = 32,
-	[2][1][RTW89_MKK][19] = 58,
-	[2][1][RTW89_IC][19] = 58,
-	[2][1][RTW89_KCC][19] = 54,
-	[2][1][RTW89_ACMA][19] = 32,
-	[2][1][RTW89_CHILE][19] = 42,
-	[2][1][RTW89_UKRAINE][19] = 32,
-	[2][1][RTW89_MEXICO][19] = 58,
-	[2][1][RTW89_CN][19] = 127,
-	[2][1][RTW89_QATAR][19] = 32,
-	[2][1][RTW89_FCC][21] = 58,
-	[2][1][RTW89_ETSI][21] = 32,
-	[2][1][RTW89_MKK][21] = 58,
-	[2][1][RTW89_IC][21] = 58,
-	[2][1][RTW89_KCC][21] = 54,
-	[2][1][RTW89_ACMA][21] = 32,
-	[2][1][RTW89_CHILE][21] = 42,
-	[2][1][RTW89_UKRAINE][21] = 32,
-	[2][1][RTW89_MEXICO][21] = 58,
-	[2][1][RTW89_CN][21] = 127,
-	[2][1][RTW89_QATAR][21] = 32,
-	[2][1][RTW89_FCC][23] = 58,
-	[2][1][RTW89_ETSI][23] = 32,
-	[2][1][RTW89_MKK][23] = 58,
-	[2][1][RTW89_IC][23] = 58,
-	[2][1][RTW89_KCC][23] = 54,
-	[2][1][RTW89_ACMA][23] = 32,
-	[2][1][RTW89_CHILE][23] = 42,
-	[2][1][RTW89_UKRAINE][23] = 32,
-	[2][1][RTW89_MEXICO][23] = 58,
-	[2][1][RTW89_CN][23] = 127,
-	[2][1][RTW89_QATAR][23] = 32,
-	[2][1][RTW89_FCC][25] = 58,
-	[2][1][RTW89_ETSI][25] = 32,
-	[2][1][RTW89_MKK][25] = 58,
-	[2][1][RTW89_IC][25] = 127,
-	[2][1][RTW89_KCC][25] = 54,
-	[2][1][RTW89_ACMA][25] = 127,
-	[2][1][RTW89_CHILE][25] = 42,
-	[2][1][RTW89_UKRAINE][25] = 32,
-	[2][1][RTW89_MEXICO][25] = 58,
-	[2][1][RTW89_CN][25] = 127,
-	[2][1][RTW89_QATAR][25] = 32,
-	[2][1][RTW89_FCC][27] = 58,
-	[2][1][RTW89_ETSI][27] = 32,
-	[2][1][RTW89_MKK][27] = 58,
-	[2][1][RTW89_IC][27] = 127,
-	[2][1][RTW89_KCC][27] = 54,
-	[2][1][RTW89_ACMA][27] = 127,
-	[2][1][RTW89_CHILE][27] = 42,
-	[2][1][RTW89_UKRAINE][27] = 32,
-	[2][1][RTW89_MEXICO][27] = 58,
-	[2][1][RTW89_CN][27] = 127,
-	[2][1][RTW89_QATAR][27] = 32,
-	[2][1][RTW89_FCC][29] = 58,
-	[2][1][RTW89_ETSI][29] = 32,
-	[2][1][RTW89_MKK][29] = 58,
-	[2][1][RTW89_IC][29] = 127,
-	[2][1][RTW89_KCC][29] = 54,
-	[2][1][RTW89_ACMA][29] = 127,
-	[2][1][RTW89_CHILE][29] = 42,
-	[2][1][RTW89_UKRAINE][29] = 32,
-	[2][1][RTW89_MEXICO][29] = 58,
-	[2][1][RTW89_CN][29] = 127,
-	[2][1][RTW89_QATAR][29] = 32,
-	[2][1][RTW89_FCC][31] = 58,
-	[2][1][RTW89_ETSI][31] = 32,
-	[2][1][RTW89_MKK][31] = 58,
-	[2][1][RTW89_IC][31] = 58,
-	[2][1][RTW89_KCC][31] = 54,
-	[2][1][RTW89_ACMA][31] = 32,
-	[2][1][RTW89_CHILE][31] = 42,
-	[2][1][RTW89_UKRAINE][31] = 32,
-	[2][1][RTW89_MEXICO][31] = 58,
-	[2][1][RTW89_CN][31] = 127,
-	[2][1][RTW89_QATAR][31] = 32,
-	[2][1][RTW89_FCC][33] = 58,
-	[2][1][RTW89_ETSI][33] = 32,
-	[2][1][RTW89_MKK][33] = 58,
-	[2][1][RTW89_IC][33] = 58,
-	[2][1][RTW89_KCC][33] = 54,
-	[2][1][RTW89_ACMA][33] = 32,
-	[2][1][RTW89_CHILE][33] = 42,
-	[2][1][RTW89_UKRAINE][33] = 32,
-	[2][1][RTW89_MEXICO][33] = 58,
-	[2][1][RTW89_CN][33] = 127,
-	[2][1][RTW89_QATAR][33] = 32,
-	[2][1][RTW89_FCC][35] = 58,
-	[2][1][RTW89_ETSI][35] = 32,
-	[2][1][RTW89_MKK][35] = 58,
-	[2][1][RTW89_IC][35] = 58,
-	[2][1][RTW89_KCC][35] = 54,
-	[2][1][RTW89_ACMA][35] = 32,
-	[2][1][RTW89_CHILE][35] = 42,
-	[2][1][RTW89_UKRAINE][35] = 32,
-	[2][1][RTW89_MEXICO][35] = 58,
-	[2][1][RTW89_CN][35] = 127,
-	[2][1][RTW89_QATAR][35] = 32,
-	[2][1][RTW89_FCC][37] = 58,
-	[2][1][RTW89_ETSI][37] = 127,
-	[2][1][RTW89_MKK][37] = 58,
-	[2][1][RTW89_IC][37] = 58,
-	[2][1][RTW89_KCC][37] = 54,
-	[2][1][RTW89_ACMA][37] = 62,
-	[2][1][RTW89_CHILE][37] = 42,
-	[2][1][RTW89_UKRAINE][37] = 127,
-	[2][1][RTW89_MEXICO][37] = 58,
-	[2][1][RTW89_CN][37] = 127,
-	[2][1][RTW89_QATAR][37] = 127,
-	[2][1][RTW89_FCC][38] = 76,
-	[2][1][RTW89_ETSI][38] = 16,
-	[2][1][RTW89_MKK][38] = 127,
-	[2][1][RTW89_IC][38] = 76,
-	[2][1][RTW89_KCC][38] = 54,
-	[2][1][RTW89_ACMA][38] = 76,
-	[2][1][RTW89_CHILE][38] = 42,
-	[2][1][RTW89_UKRAINE][38] = 16,
-	[2][1][RTW89_MEXICO][38] = 76,
-	[2][1][RTW89_CN][38] = 64,
-	[2][1][RTW89_QATAR][38] = 16,
-	[2][1][RTW89_FCC][40] = 76,
-	[2][1][RTW89_ETSI][40] = 16,
-	[2][1][RTW89_MKK][40] = 127,
-	[2][1][RTW89_IC][40] = 76,
-	[2][1][RTW89_KCC][40] = 54,
-	[2][1][RTW89_ACMA][40] = 76,
-	[2][1][RTW89_CHILE][40] = 42,
-	[2][1][RTW89_UKRAINE][40] = 16,
-	[2][1][RTW89_MEXICO][40] = 76,
-	[2][1][RTW89_CN][40] = 64,
-	[2][1][RTW89_QATAR][40] = 16,
-	[2][1][RTW89_FCC][42] = 76,
-	[2][1][RTW89_ETSI][42] = 16,
-	[2][1][RTW89_MKK][42] = 127,
-	[2][1][RTW89_IC][42] = 76,
-	[2][1][RTW89_KCC][42] = 54,
-	[2][1][RTW89_ACMA][42] = 76,
-	[2][1][RTW89_CHILE][42] = 42,
-	[2][1][RTW89_UKRAINE][42] = 16,
-	[2][1][RTW89_MEXICO][42] = 76,
-	[2][1][RTW89_CN][42] = 64,
-	[2][1][RTW89_QATAR][42] = 16,
-	[2][1][RTW89_FCC][44] = 76,
-	[2][1][RTW89_ETSI][44] = 16,
-	[2][1][RTW89_MKK][44] = 127,
-	[2][1][RTW89_IC][44] = 76,
-	[2][1][RTW89_KCC][44] = 54,
-	[2][1][RTW89_ACMA][44] = 76,
-	[2][1][RTW89_CHILE][44] = 42,
-	[2][1][RTW89_UKRAINE][44] = 16,
-	[2][1][RTW89_MEXICO][44] = 76,
-	[2][1][RTW89_CN][44] = 64,
-	[2][1][RTW89_QATAR][44] = 16,
-	[2][1][RTW89_FCC][46] = 76,
-	[2][1][RTW89_ETSI][46] = 16,
-	[2][1][RTW89_MKK][46] = 127,
-	[2][1][RTW89_IC][46] = 76,
-	[2][1][RTW89_KCC][46] = 54,
-	[2][1][RTW89_ACMA][46] = 76,
-	[2][1][RTW89_CHILE][46] = 42,
-	[2][1][RTW89_UKRAINE][46] = 16,
-	[2][1][RTW89_MEXICO][46] = 76,
-	[2][1][RTW89_CN][46] = 64,
-	[2][1][RTW89_QATAR][46] = 16,
+	[0][0][0][0] = 22,
+	[0][0][0][2] = 22,
+	[0][0][0][4] = 22,
+	[0][0][0][6] = 22,
+	[0][0][0][8] = 24,
+	[0][0][0][10] = 24,
+	[0][0][0][12] = 24,
+	[0][0][0][14] = 24,
+	[0][0][0][15] = 24,
+	[0][0][0][17] = 24,
+	[0][0][0][19] = 24,
+	[0][0][0][21] = 24,
+	[0][0][0][23] = 24,
+	[0][0][0][25] = 24,
+	[0][0][0][27] = 24,
+	[0][0][0][29] = 24,
+	[0][0][0][31] = 24,
+	[0][0][0][33] = 24,
+	[0][0][0][35] = 24,
+	[0][0][0][37] = 24,
+	[0][0][0][38] = 28,
+	[0][0][0][40] = 28,
+	[0][0][0][42] = 28,
+	[0][0][0][44] = 28,
+	[0][0][0][46] = 28,
+	[0][1][0][0] = 8,
+	[0][1][0][2] = 8,
+	[0][1][0][4] = 8,
+	[0][1][0][6] = 8,
+	[0][1][0][8] = 12,
+	[0][1][0][10] = 12,
+	[0][1][0][12] = 12,
+	[0][1][0][14] = 12,
+	[0][1][0][15] = 12,
+	[0][1][0][17] = 12,
+	[0][1][0][19] = 12,
+	[0][1][0][21] = 12,
+	[0][1][0][23] = 12,
+	[0][1][0][25] = 12,
+	[0][1][0][27] = 12,
+	[0][1][0][29] = 12,
+	[0][1][0][31] = 12,
+	[0][1][0][33] = 12,
+	[0][1][0][35] = 12,
+	[0][1][0][37] = 12,
+	[0][1][0][38] = 16,
+	[0][1][0][40] = 16,
+	[0][1][0][42] = 16,
+	[0][1][0][44] = 16,
+	[0][1][0][46] = 16,
+	[1][0][0][0] = 30,
+	[1][0][0][2] = 30,
+	[1][0][0][4] = 30,
+	[1][0][0][6] = 30,
+	[1][0][0][8] = 36,
+	[1][0][0][10] = 36,
+	[1][0][0][12] = 36,
+	[1][0][0][14] = 36,
+	[1][0][0][15] = 36,
+	[1][0][0][17] = 36,
+	[1][0][0][19] = 36,
+	[1][0][0][21] = 36,
+	[1][0][0][23] = 36,
+	[1][0][0][25] = 36,
+	[1][0][0][27] = 36,
+	[1][0][0][29] = 36,
+	[1][0][0][31] = 36,
+	[1][0][0][33] = 36,
+	[1][0][0][35] = 36,
+	[1][0][0][37] = 36,
+	[1][0][0][38] = 28,
+	[1][0][0][40] = 28,
+	[1][0][0][42] = 28,
+	[1][0][0][44] = 28,
+	[1][0][0][46] = 28,
+	[1][1][0][0] = 18,
+	[1][1][0][2] = 18,
+	[1][1][0][4] = 18,
+	[1][1][0][6] = 18,
+	[1][1][0][8] = 22,
+	[1][1][0][10] = 22,
+	[1][1][0][12] = 22,
+	[1][1][0][14] = 22,
+	[1][1][0][15] = 22,
+	[1][1][0][17] = 22,
+	[1][1][0][19] = 22,
+	[1][1][0][21] = 22,
+	[1][1][0][23] = 22,
+	[1][1][0][25] = 22,
+	[1][1][0][27] = 22,
+	[1][1][0][29] = 22,
+	[1][1][0][31] = 22,
+	[1][1][0][33] = 22,
+	[1][1][0][35] = 22,
+	[1][1][0][37] = 22,
+	[1][1][0][38] = 16,
+	[1][1][0][40] = 16,
+	[1][1][0][42] = 16,
+	[1][1][0][44] = 16,
+	[1][1][0][46] = 16,
+	[2][0][0][0] = 30,
+	[2][0][0][2] = 30,
+	[2][0][0][4] = 30,
+	[2][0][0][6] = 30,
+	[2][0][0][8] = 46,
+	[2][0][0][10] = 46,
+	[2][0][0][12] = 46,
+	[2][0][0][14] = 46,
+	[2][0][0][15] = 46,
+	[2][0][0][17] = 46,
+	[2][0][0][19] = 46,
+	[2][0][0][21] = 46,
+	[2][0][0][23] = 46,
+	[2][0][0][25] = 46,
+	[2][0][0][27] = 46,
+	[2][0][0][29] = 46,
+	[2][0][0][31] = 46,
+	[2][0][0][33] = 46,
+	[2][0][0][35] = 46,
+	[2][0][0][37] = 46,
+	[2][0][0][38] = 28,
+	[2][0][0][40] = 28,
+	[2][0][0][42] = 28,
+	[2][0][0][44] = 28,
+	[2][0][0][46] = 28,
+	[2][1][0][0] = 18,
+	[2][1][0][2] = 18,
+	[2][1][0][4] = 18,
+	[2][1][0][6] = 18,
+	[2][1][0][8] = 32,
+	[2][1][0][10] = 32,
+	[2][1][0][12] = 32,
+	[2][1][0][14] = 32,
+	[2][1][0][15] = 32,
+	[2][1][0][17] = 32,
+	[2][1][0][19] = 32,
+	[2][1][0][21] = 32,
+	[2][1][0][23] = 32,
+	[2][1][0][25] = 32,
+	[2][1][0][27] = 32,
+	[2][1][0][29] = 32,
+	[2][1][0][31] = 32,
+	[2][1][0][33] = 32,
+	[2][1][0][35] = 32,
+	[2][1][0][37] = 32,
+	[2][1][0][38] = 16,
+	[2][1][0][40] = 16,
+	[2][1][0][42] = 16,
+	[2][1][0][44] = 16,
+	[2][1][0][46] = 16,
+	[0][0][2][0] = 48,
+	[0][0][1][0] = 24,
+	[0][0][3][0] = 26,
+	[0][0][5][0] = 22,
+	[0][0][6][0] = 24,
+	[0][0][9][0] = 24,
+	[0][0][8][0] = 30,
+	[0][0][11][0] = 24,
+	[0][0][2][2] = 48,
+	[0][0][1][2] = 24,
+	[0][0][3][2] = 26,
+	[0][0][5][2] = 22,
+	[0][0][6][2] = 24,
+	[0][0][9][2] = 24,
+	[0][0][8][2] = 30,
+	[0][0][11][2] = 24,
+	[0][0][2][4] = 48,
+	[0][0][1][4] = 24,
+	[0][0][3][4] = 26,
+	[0][0][5][4] = 22,
+	[0][0][6][4] = 24,
+	[0][0][9][4] = 24,
+	[0][0][8][4] = 30,
+	[0][0][11][4] = 24,
+	[0][0][2][6] = 48,
+	[0][0][1][6] = 24,
+	[0][0][3][6] = 26,
+	[0][0][5][6] = 22,
+	[0][0][6][6] = 24,
+	[0][0][9][6] = 24,
+	[0][0][8][6] = 30,
+	[0][0][11][6] = 24,
+	[0][0][2][8] = 48,
+	[0][0][1][8] = 24,
+	[0][0][3][8] = 26,
+	[0][0][5][8] = 48,
+	[0][0][6][8] = 24,
+	[0][0][9][8] = 24,
+	[0][0][8][8] = 54,
+	[0][0][11][8] = 24,
+	[0][0][2][10] = 48,
+	[0][0][1][10] = 24,
+	[0][0][3][10] = 26,
+	[0][0][5][10] = 48,
+	[0][0][6][10] = 24,
+	[0][0][9][10] = 24,
+	[0][0][8][10] = 54,
+	[0][0][11][10] = 24,
+	[0][0][2][12] = 48,
+	[0][0][1][12] = 24,
+	[0][0][3][12] = 26,
+	[0][0][5][12] = 48,
+	[0][0][6][12] = 24,
+	[0][0][9][12] = 24,
+	[0][0][8][12] = 54,
+	[0][0][11][12] = 24,
+	[0][0][2][14] = 48,
+	[0][0][1][14] = 24,
+	[0][0][3][14] = 26,
+	[0][0][5][14] = 48,
+	[0][0][6][14] = 24,
+	[0][0][9][14] = 24,
+	[0][0][8][14] = 54,
+	[0][0][11][14] = 24,
+	[0][0][2][15] = 48,
+	[0][0][1][15] = 24,
+	[0][0][3][15] = 44,
+	[0][0][5][15] = 48,
+	[0][0][6][15] = 24,
+	[0][0][9][15] = 24,
+	[0][0][8][15] = 54,
+	[0][0][11][15] = 24,
+	[0][0][2][17] = 48,
+	[0][0][1][17] = 24,
+	[0][0][3][17] = 44,
+	[0][0][5][17] = 48,
+	[0][0][6][17] = 24,
+	[0][0][9][17] = 24,
+	[0][0][8][17] = 54,
+	[0][0][11][17] = 24,
+	[0][0][2][19] = 48,
+	[0][0][1][19] = 24,
+	[0][0][3][19] = 44,
+	[0][0][5][19] = 48,
+	[0][0][6][19] = 24,
+	[0][0][9][19] = 24,
+	[0][0][8][19] = 54,
+	[0][0][11][19] = 24,
+	[0][0][2][21] = 48,
+	[0][0][1][21] = 24,
+	[0][0][3][21] = 44,
+	[0][0][5][21] = 48,
+	[0][0][6][21] = 24,
+	[0][0][9][21] = 24,
+	[0][0][8][21] = 54,
+	[0][0][11][21] = 24,
+	[0][0][2][23] = 48,
+	[0][0][1][23] = 24,
+	[0][0][3][23] = 44,
+	[0][0][5][23] = 48,
+	[0][0][6][23] = 24,
+	[0][0][9][23] = 24,
+	[0][0][8][23] = 54,
+	[0][0][11][23] = 24,
+	[0][0][2][25] = 48,
+	[0][0][1][25] = 24,
+	[0][0][3][25] = 44,
+	[0][0][5][25] = 127,
+	[0][0][6][25] = 24,
+	[0][0][9][25] = 127,
+	[0][0][8][25] = 54,
+	[0][0][11][25] = 24,
+	[0][0][2][27] = 48,
+	[0][0][1][27] = 24,
+	[0][0][3][27] = 44,
+	[0][0][5][27] = 127,
+	[0][0][6][27] = 24,
+	[0][0][9][27] = 127,
+	[0][0][8][27] = 54,
+	[0][0][11][27] = 24,
+	[0][0][2][29] = 48,
+	[0][0][1][29] = 24,
+	[0][0][3][29] = 44,
+	[0][0][5][29] = 127,
+	[0][0][6][29] = 24,
+	[0][0][9][29] = 127,
+	[0][0][8][29] = 54,
+	[0][0][11][29] = 24,
+	[0][0][2][31] = 48,
+	[0][0][1][31] = 24,
+	[0][0][3][31] = 44,
+	[0][0][5][31] = 48,
+	[0][0][6][31] = 24,
+	[0][0][9][31] = 24,
+	[0][0][8][31] = 54,
+	[0][0][11][31] = 24,
+	[0][0][2][33] = 48,
+	[0][0][1][33] = 24,
+	[0][0][3][33] = 44,
+	[0][0][5][33] = 48,
+	[0][0][6][33] = 24,
+	[0][0][9][33] = 24,
+	[0][0][8][33] = 54,
+	[0][0][11][33] = 24,
+	[0][0][2][35] = 48,
+	[0][0][1][35] = 24,
+	[0][0][3][35] = 44,
+	[0][0][5][35] = 48,
+	[0][0][6][35] = 24,
+	[0][0][9][35] = 24,
+	[0][0][8][35] = 54,
+	[0][0][11][35] = 24,
+	[0][0][2][37] = 48,
+	[0][0][1][37] = 127,
+	[0][0][3][37] = 44,
+	[0][0][5][37] = 48,
+	[0][0][6][37] = 24,
+	[0][0][9][37] = 48,
+	[0][0][8][37] = 54,
+	[0][0][11][37] = 127,
+	[0][0][2][38] = 76,
+	[0][0][1][38] = 28,
+	[0][0][3][38] = 127,
+	[0][0][5][38] = 76,
+	[0][0][6][38] = 28,
+	[0][0][9][38] = 76,
+	[0][0][8][38] = 54,
+	[0][0][11][38] = 28,
+	[0][0][2][40] = 76,
+	[0][0][1][40] = 28,
+	[0][0][3][40] = 127,
+	[0][0][5][40] = 76,
+	[0][0][6][40] = 28,
+	[0][0][9][40] = 76,
+	[0][0][8][40] = 54,
+	[0][0][11][40] = 28,
+	[0][0][2][42] = 76,
+	[0][0][1][42] = 28,
+	[0][0][3][42] = 127,
+	[0][0][5][42] = 76,
+	[0][0][6][42] = 28,
+	[0][0][9][42] = 76,
+	[0][0][8][42] = 54,
+	[0][0][11][42] = 28,
+	[0][0][2][44] = 76,
+	[0][0][1][44] = 28,
+	[0][0][3][44] = 127,
+	[0][0][5][44] = 76,
+	[0][0][6][44] = 28,
+	[0][0][9][44] = 76,
+	[0][0][8][44] = 54,
+	[0][0][11][44] = 28,
+	[0][0][2][46] = 76,
+	[0][0][1][46] = 28,
+	[0][0][3][46] = 127,
+	[0][0][5][46] = 76,
+	[0][0][6][46] = 28,
+	[0][0][9][46] = 76,
+	[0][0][8][46] = 54,
+	[0][0][11][46] = 28,
+	[0][1][2][0] = 36,
+	[0][1][1][0] = 12,
+	[0][1][3][0] = 14,
+	[0][1][5][0] = 8,
+	[0][1][6][0] = 12,
+	[0][1][9][0] = 12,
+	[0][1][8][0] = 18,
+	[0][1][11][0] = 12,
+	[0][1][2][2] = 36,
+	[0][1][1][2] = 12,
+	[0][1][3][2] = 14,
+	[0][1][5][2] = 8,
+	[0][1][6][2] = 12,
+	[0][1][9][2] = 12,
+	[0][1][8][2] = 18,
+	[0][1][11][2] = 12,
+	[0][1][2][4] = 36,
+	[0][1][1][4] = 12,
+	[0][1][3][4] = 14,
+	[0][1][5][4] = 8,
+	[0][1][6][4] = 12,
+	[0][1][9][4] = 12,
+	[0][1][8][4] = 18,
+	[0][1][11][4] = 12,
+	[0][1][2][6] = 36,
+	[0][1][1][6] = 12,
+	[0][1][3][6] = 14,
+	[0][1][5][6] = 8,
+	[0][1][6][6] = 12,
+	[0][1][9][6] = 12,
+	[0][1][8][6] = 18,
+	[0][1][11][6] = 12,
+	[0][1][2][8] = 36,
+	[0][1][1][8] = 12,
+	[0][1][3][8] = 14,
+	[0][1][5][8] = 36,
+	[0][1][6][8] = 12,
+	[0][1][9][8] = 12,
+	[0][1][8][8] = 42,
+	[0][1][11][8] = 12,
+	[0][1][2][10] = 36,
+	[0][1][1][10] = 12,
+	[0][1][3][10] = 14,
+	[0][1][5][10] = 36,
+	[0][1][6][10] = 12,
+	[0][1][9][10] = 12,
+	[0][1][8][10] = 42,
+	[0][1][11][10] = 12,
+	[0][1][2][12] = 36,
+	[0][1][1][12] = 12,
+	[0][1][3][12] = 14,
+	[0][1][5][12] = 36,
+	[0][1][6][12] = 12,
+	[0][1][9][12] = 12,
+	[0][1][8][12] = 42,
+	[0][1][11][12] = 12,
+	[0][1][2][14] = 36,
+	[0][1][1][14] = 12,
+	[0][1][3][14] = 14,
+	[0][1][5][14] = 36,
+	[0][1][6][14] = 12,
+	[0][1][9][14] = 12,
+	[0][1][8][14] = 42,
+	[0][1][11][14] = 12,
+	[0][1][2][15] = 36,
+	[0][1][1][15] = 12,
+	[0][1][3][15] = 32,
+	[0][1][5][15] = 36,
+	[0][1][6][15] = 12,
+	[0][1][9][15] = 12,
+	[0][1][8][15] = 42,
+	[0][1][11][15] = 12,
+	[0][1][2][17] = 36,
+	[0][1][1][17] = 12,
+	[0][1][3][17] = 32,
+	[0][1][5][17] = 36,
+	[0][1][6][17] = 12,
+	[0][1][9][17] = 12,
+	[0][1][8][17] = 42,
+	[0][1][11][17] = 12,
+	[0][1][2][19] = 36,
+	[0][1][1][19] = 12,
+	[0][1][3][19] = 32,
+	[0][1][5][19] = 36,
+	[0][1][6][19] = 12,
+	[0][1][9][19] = 12,
+	[0][1][8][19] = 42,
+	[0][1][11][19] = 12,
+	[0][1][2][21] = 36,
+	[0][1][1][21] = 12,
+	[0][1][3][21] = 32,
+	[0][1][5][21] = 36,
+	[0][1][6][21] = 12,
+	[0][1][9][21] = 12,
+	[0][1][8][21] = 42,
+	[0][1][11][21] = 12,
+	[0][1][2][23] = 36,
+	[0][1][1][23] = 12,
+	[0][1][3][23] = 32,
+	[0][1][5][23] = 36,
+	[0][1][6][23] = 12,
+	[0][1][9][23] = 12,
+	[0][1][8][23] = 42,
+	[0][1][11][23] = 12,
+	[0][1][2][25] = 36,
+	[0][1][1][25] = 12,
+	[0][1][3][25] = 32,
+	[0][1][5][25] = 127,
+	[0][1][6][25] = 12,
+	[0][1][9][25] = 127,
+	[0][1][8][25] = 42,
+	[0][1][11][25] = 12,
+	[0][1][2][27] = 36,
+	[0][1][1][27] = 12,
+	[0][1][3][27] = 32,
+	[0][1][5][27] = 127,
+	[0][1][6][27] = 12,
+	[0][1][9][27] = 127,
+	[0][1][8][27] = 42,
+	[0][1][11][27] = 12,
+	[0][1][2][29] = 36,
+	[0][1][1][29] = 12,
+	[0][1][3][29] = 32,
+	[0][1][5][29] = 127,
+	[0][1][6][29] = 12,
+	[0][1][9][29] = 127,
+	[0][1][8][29] = 42,
+	[0][1][11][29] = 12,
+	[0][1][2][31] = 36,
+	[0][1][1][31] = 12,
+	[0][1][3][31] = 32,
+	[0][1][5][31] = 36,
+	[0][1][6][31] = 12,
+	[0][1][9][31] = 12,
+	[0][1][8][31] = 42,
+	[0][1][11][31] = 12,
+	[0][1][2][33] = 36,
+	[0][1][1][33] = 12,
+	[0][1][3][33] = 32,
+	[0][1][5][33] = 36,
+	[0][1][6][33] = 12,
+	[0][1][9][33] = 12,
+	[0][1][8][33] = 42,
+	[0][1][11][33] = 12,
+	[0][1][2][35] = 36,
+	[0][1][1][35] = 12,
+	[0][1][3][35] = 32,
+	[0][1][5][35] = 36,
+	[0][1][6][35] = 12,
+	[0][1][9][35] = 12,
+	[0][1][8][35] = 42,
+	[0][1][11][35] = 12,
+	[0][1][2][37] = 36,
+	[0][1][1][37] = 127,
+	[0][1][3][37] = 32,
+	[0][1][5][37] = 36,
+	[0][1][6][37] = 12,
+	[0][1][9][37] = 36,
+	[0][1][8][37] = 42,
+	[0][1][11][37] = 127,
+	[0][1][2][38] = 72,
+	[0][1][1][38] = 16,
+	[0][1][3][38] = 127,
+	[0][1][5][38] = 72,
+	[0][1][6][38] = 16,
+	[0][1][9][38] = 76,
+	[0][1][8][38] = 42,
+	[0][1][11][38] = 16,
+	[0][1][2][40] = 76,
+	[0][1][1][40] = 16,
+	[0][1][3][40] = 127,
+	[0][1][5][40] = 76,
+	[0][1][6][40] = 16,
+	[0][1][9][40] = 76,
+	[0][1][8][40] = 42,
+	[0][1][11][40] = 16,
+	[0][1][2][42] = 76,
+	[0][1][1][42] = 16,
+	[0][1][3][42] = 127,
+	[0][1][5][42] = 76,
+	[0][1][6][42] = 16,
+	[0][1][9][42] = 76,
+	[0][1][8][42] = 42,
+	[0][1][11][42] = 16,
+	[0][1][2][44] = 76,
+	[0][1][1][44] = 16,
+	[0][1][3][44] = 127,
+	[0][1][5][44] = 76,
+	[0][1][6][44] = 16,
+	[0][1][9][44] = 76,
+	[0][1][8][44] = 42,
+	[0][1][11][44] = 16,
+	[0][1][2][46] = 76,
+	[0][1][1][46] = 16,
+	[0][1][3][46] = 127,
+	[0][1][5][46] = 76,
+	[0][1][6][46] = 16,
+	[0][1][9][46] = 76,
+	[0][1][8][46] = 42,
+	[0][1][11][46] = 16,
+	[1][0][2][0] = 62,
+	[1][0][1][0] = 36,
+	[1][0][3][0] = 36,
+	[1][0][5][0] = 34,
+	[1][0][6][0] = 36,
+	[1][0][9][0] = 36,
+	[1][0][8][0] = 30,
+	[1][0][11][0] = 36,
+	[1][0][2][2] = 62,
+	[1][0][1][2] = 36,
+	[1][0][3][2] = 36,
+	[1][0][5][2] = 34,
+	[1][0][6][2] = 36,
+	[1][0][9][2] = 36,
+	[1][0][8][2] = 30,
+	[1][0][11][2] = 36,
+	[1][0][2][4] = 62,
+	[1][0][1][4] = 36,
+	[1][0][3][4] = 36,
+	[1][0][5][4] = 34,
+	[1][0][6][4] = 36,
+	[1][0][9][4] = 36,
+	[1][0][8][4] = 30,
+	[1][0][11][4] = 36,
+	[1][0][2][6] = 62,
+	[1][0][1][6] = 36,
+	[1][0][3][6] = 36,
+	[1][0][5][6] = 34,
+	[1][0][6][6] = 36,
+	[1][0][9][6] = 36,
+	[1][0][8][6] = 30,
+	[1][0][11][6] = 36,
+	[1][0][2][8] = 62,
+	[1][0][1][8] = 36,
+	[1][0][3][8] = 36,
+	[1][0][5][8] = 62,
+	[1][0][6][8] = 36,
+	[1][0][9][8] = 36,
+	[1][0][8][8] = 54,
+	[1][0][11][8] = 36,
+	[1][0][2][10] = 62,
+	[1][0][1][10] = 36,
+	[1][0][3][10] = 36,
+	[1][0][5][10] = 62,
+	[1][0][6][10] = 36,
+	[1][0][9][10] = 36,
+	[1][0][8][10] = 54,
+	[1][0][11][10] = 36,
+	[1][0][2][12] = 62,
+	[1][0][1][12] = 36,
+	[1][0][3][12] = 36,
+	[1][0][5][12] = 62,
+	[1][0][6][12] = 36,
+	[1][0][9][12] = 36,
+	[1][0][8][12] = 54,
+	[1][0][11][12] = 36,
+	[1][0][2][14] = 62,
+	[1][0][1][14] = 36,
+	[1][0][3][14] = 36,
+	[1][0][5][14] = 62,
+	[1][0][6][14] = 36,
+	[1][0][9][14] = 36,
+	[1][0][8][14] = 54,
+	[1][0][11][14] = 36,
+	[1][0][2][15] = 62,
+	[1][0][1][15] = 36,
+	[1][0][3][15] = 58,
+	[1][0][5][15] = 62,
+	[1][0][6][15] = 36,
+	[1][0][9][15] = 36,
+	[1][0][8][15] = 54,
+	[1][0][11][15] = 36,
+	[1][0][2][17] = 62,
+	[1][0][1][17] = 36,
+	[1][0][3][17] = 58,
+	[1][0][5][17] = 62,
+	[1][0][6][17] = 36,
+	[1][0][9][17] = 36,
+	[1][0][8][17] = 54,
+	[1][0][11][17] = 36,
+	[1][0][2][19] = 62,
+	[1][0][1][19] = 36,
+	[1][0][3][19] = 58,
+	[1][0][5][19] = 62,
+	[1][0][6][19] = 36,
+	[1][0][9][19] = 36,
+	[1][0][8][19] = 54,
+	[1][0][11][19] = 36,
+	[1][0][2][21] = 62,
+	[1][0][1][21] = 36,
+	[1][0][3][21] = 58,
+	[1][0][5][21] = 62,
+	[1][0][6][21] = 36,
+	[1][0][9][21] = 36,
+	[1][0][8][21] = 54,
+	[1][0][11][21] = 36,
+	[1][0][2][23] = 62,
+	[1][0][1][23] = 36,
+	[1][0][3][23] = 58,
+	[1][0][5][23] = 62,
+	[1][0][6][23] = 36,
+	[1][0][9][23] = 36,
+	[1][0][8][23] = 54,
+	[1][0][11][23] = 36,
+	[1][0][2][25] = 62,
+	[1][0][1][25] = 36,
+	[1][0][3][25] = 58,
+	[1][0][5][25] = 127,
+	[1][0][6][25] = 36,
+	[1][0][9][25] = 127,
+	[1][0][8][25] = 54,
+	[1][0][11][25] = 36,
+	[1][0][2][27] = 62,
+	[1][0][1][27] = 36,
+	[1][0][3][27] = 58,
+	[1][0][5][27] = 127,
+	[1][0][6][27] = 36,
+	[1][0][9][27] = 127,
+	[1][0][8][27] = 54,
+	[1][0][11][27] = 36,
+	[1][0][2][29] = 62,
+	[1][0][1][29] = 36,
+	[1][0][3][29] = 58,
+	[1][0][5][29] = 127,
+	[1][0][6][29] = 36,
+	[1][0][9][29] = 127,
+	[1][0][8][29] = 54,
+	[1][0][11][29] = 36,
+	[1][0][2][31] = 62,
+	[1][0][1][31] = 36,
+	[1][0][3][31] = 58,
+	[1][0][5][31] = 62,
+	[1][0][6][31] = 36,
+	[1][0][9][31] = 36,
+	[1][0][8][31] = 54,
+	[1][0][11][31] = 36,
+	[1][0][2][33] = 62,
+	[1][0][1][33] = 36,
+	[1][0][3][33] = 58,
+	[1][0][5][33] = 62,
+	[1][0][6][33] = 36,
+	[1][0][9][33] = 36,
+	[1][0][8][33] = 54,
+	[1][0][11][33] = 36,
+	[1][0][2][35] = 62,
+	[1][0][1][35] = 36,
+	[1][0][3][35] = 58,
+	[1][0][5][35] = 62,
+	[1][0][6][35] = 36,
+	[1][0][9][35] = 36,
+	[1][0][8][35] = 54,
+	[1][0][11][35] = 36,
+	[1][0][2][37] = 56,
+	[1][0][1][37] = 62,
+	[1][0][3][37] = 127,
+	[1][0][5][37] = 58,
+	[1][0][6][37] = 62,
+	[1][0][9][37] = 36,
+	[1][0][8][37] = 62,
+	[1][0][11][37] = 54,
+	[1][0][2][38] = 76,
+	[1][0][1][38] = 28,
+	[1][0][3][38] = 127,
+	[1][0][5][38] = 76,
+	[1][0][6][38] = 28,
+	[1][0][9][38] = 76,
+	[1][0][8][38] = 54,
+	[1][0][11][38] = 28,
+	[1][0][2][40] = 76,
+	[1][0][1][40] = 28,
+	[1][0][3][40] = 127,
+	[1][0][5][40] = 76,
+	[1][0][6][40] = 28,
+	[1][0][9][40] = 76,
+	[1][0][8][40] = 54,
+	[1][0][11][40] = 28,
+	[1][0][2][42] = 76,
+	[1][0][1][42] = 28,
+	[1][0][3][42] = 127,
+	[1][0][5][42] = 76,
+	[1][0][6][42] = 28,
+	[1][0][9][42] = 76,
+	[1][0][8][42] = 54,
+	[1][0][11][42] = 28,
+	[1][0][2][44] = 76,
+	[1][0][1][44] = 28,
+	[1][0][3][44] = 127,
+	[1][0][5][44] = 76,
+	[1][0][6][44] = 28,
+	[1][0][9][44] = 76,
+	[1][0][8][44] = 54,
+	[1][0][11][44] = 28,
+	[1][0][2][46] = 76,
+	[1][0][1][46] = 28,
+	[1][0][3][46] = 127,
+	[1][0][5][46] = 76,
+	[1][0][6][46] = 28,
+	[1][0][9][46] = 76,
+	[1][0][8][46] = 54,
+	[1][0][11][46] = 28,
+	[1][1][2][0] = 46,
+	[1][1][1][0] = 22,
+	[1][1][3][0] = 24,
+	[1][1][5][0] = 18,
+	[1][1][6][0] = 22,
+	[1][1][9][0] = 22,
+	[1][1][8][0] = 18,
+	[1][1][11][0] = 22,
+	[1][1][2][2] = 46,
+	[1][1][1][2] = 22,
+	[1][1][3][2] = 24,
+	[1][1][5][2] = 18,
+	[1][1][6][2] = 22,
+	[1][1][9][2] = 22,
+	[1][1][8][2] = 18,
+	[1][1][11][2] = 22,
+	[1][1][2][4] = 46,
+	[1][1][1][4] = 22,
+	[1][1][3][4] = 24,
+	[1][1][5][4] = 18,
+	[1][1][6][4] = 22,
+	[1][1][9][4] = 22,
+	[1][1][8][4] = 18,
+	[1][1][11][4] = 22,
+	[1][1][2][6] = 46,
+	[1][1][1][6] = 22,
+	[1][1][3][6] = 24,
+	[1][1][5][6] = 18,
+	[1][1][6][6] = 22,
+	[1][1][9][6] = 22,
+	[1][1][8][6] = 18,
+	[1][1][11][6] = 22,
+	[1][1][2][8] = 46,
+	[1][1][1][8] = 22,
+	[1][1][3][8] = 24,
+	[1][1][5][8] = 46,
+	[1][1][6][8] = 22,
+	[1][1][9][8] = 22,
+	[1][1][8][8] = 42,
+	[1][1][11][8] = 22,
+	[1][1][2][10] = 46,
+	[1][1][1][10] = 22,
+	[1][1][3][10] = 24,
+	[1][1][5][10] = 46,
+	[1][1][6][10] = 22,
+	[1][1][9][10] = 22,
+	[1][1][8][10] = 42,
+	[1][1][11][10] = 22,
+	[1][1][2][12] = 46,
+	[1][1][1][12] = 22,
+	[1][1][3][12] = 24,
+	[1][1][5][12] = 46,
+	[1][1][6][12] = 22,
+	[1][1][9][12] = 22,
+	[1][1][8][12] = 42,
+	[1][1][11][12] = 22,
+	[1][1][2][14] = 46,
+	[1][1][1][14] = 22,
+	[1][1][3][14] = 24,
+	[1][1][5][14] = 46,
+	[1][1][6][14] = 22,
+	[1][1][9][14] = 22,
+	[1][1][8][14] = 42,
+	[1][1][11][14] = 22,
+	[1][1][2][15] = 46,
+	[1][1][1][15] = 22,
+	[1][1][3][15] = 46,
+	[1][1][5][15] = 46,
+	[1][1][6][15] = 22,
+	[1][1][9][15] = 22,
+	[1][1][8][15] = 42,
+	[1][1][11][15] = 22,
+	[1][1][2][17] = 46,
+	[1][1][1][17] = 22,
+	[1][1][3][17] = 46,
+	[1][1][5][17] = 46,
+	[1][1][6][17] = 22,
+	[1][1][9][17] = 22,
+	[1][1][8][17] = 42,
+	[1][1][11][17] = 22,
+	[1][1][2][19] = 46,
+	[1][1][1][19] = 22,
+	[1][1][3][19] = 46,
+	[1][1][5][19] = 46,
+	[1][1][6][19] = 22,
+	[1][1][9][19] = 22,
+	[1][1][8][19] = 42,
+	[1][1][11][19] = 22,
+	[1][1][2][21] = 46,
+	[1][1][1][21] = 22,
+	[1][1][3][21] = 46,
+	[1][1][5][21] = 46,
+	[1][1][6][21] = 22,
+	[1][1][9][21] = 22,
+	[1][1][8][21] = 42,
+	[1][1][11][21] = 22,
+	[1][1][2][23] = 46,
+	[1][1][1][23] = 22,
+	[1][1][3][23] = 46,
+	[1][1][5][23] = 46,
+	[1][1][6][23] = 22,
+	[1][1][9][23] = 22,
+	[1][1][8][23] = 42,
+	[1][1][11][23] = 22,
+	[1][1][2][25] = 46,
+	[1][1][1][25] = 22,
+	[1][1][3][25] = 46,
+	[1][1][5][25] = 127,
+	[1][1][6][25] = 22,
+	[1][1][9][25] = 127,
+	[1][1][8][25] = 42,
+	[1][1][11][25] = 22,
+	[1][1][2][27] = 46,
+	[1][1][1][27] = 22,
+	[1][1][3][27] = 46,
+	[1][1][5][27] = 127,
+	[1][1][6][27] = 22,
+	[1][1][9][27] = 127,
+	[1][1][8][27] = 42,
+	[1][1][11][27] = 22,
+	[1][1][2][29] = 46,
+	[1][1][1][29] = 22,
+	[1][1][3][29] = 46,
+	[1][1][5][29] = 127,
+	[1][1][6][29] = 22,
+	[1][1][9][29] = 127,
+	[1][1][8][29] = 42,
+	[1][1][11][29] = 22,
+	[1][1][2][31] = 46,
+	[1][1][1][31] = 22,
+	[1][1][3][31] = 46,
+	[1][1][5][31] = 46,
+	[1][1][6][31] = 22,
+	[1][1][9][31] = 22,
+	[1][1][8][31] = 42,
+	[1][1][11][31] = 22,
+	[1][1][2][33] = 46,
+	[1][1][1][33] = 22,
+	[1][1][3][33] = 46,
+	[1][1][5][33] = 46,
+	[1][1][6][33] = 22,
+	[1][1][9][33] = 22,
+	[1][1][8][33] = 42,
+	[1][1][11][33] = 22,
+	[1][1][2][35] = 46,
+	[1][1][1][35] = 22,
+	[1][1][3][35] = 46,
+	[1][1][5][35] = 46,
+	[1][1][6][35] = 22,
+	[1][1][9][35] = 22,
+	[1][1][8][35] = 42,
+	[1][1][11][35] = 22,
+	[1][1][2][37] = 46,
+	[1][1][1][37] = 127,
+	[1][1][3][37] = 46,
+	[1][1][5][37] = 46,
+	[1][1][6][37] = 22,
+	[1][1][9][37] = 50,
+	[1][1][8][37] = 42,
+	[1][1][11][37] = 127,
+	[1][1][2][38] = 74,
+	[1][1][1][38] = 16,
+	[1][1][3][38] = 127,
+	[1][1][5][38] = 74,
+	[1][1][6][38] = 16,
+	[1][1][9][38] = 76,
+	[1][1][8][38] = 42,
+	[1][1][11][38] = 16,
+	[1][1][2][40] = 76,
+	[1][1][1][40] = 16,
+	[1][1][3][40] = 127,
+	[1][1][5][40] = 76,
+	[1][1][6][40] = 16,
+	[1][1][9][40] = 76,
+	[1][1][8][40] = 42,
+	[1][1][11][40] = 16,
+	[1][1][2][42] = 76,
+	[1][1][1][42] = 16,
+	[1][1][3][42] = 127,
+	[1][1][5][42] = 76,
+	[1][1][6][42] = 16,
+	[1][1][9][42] = 76,
+	[1][1][8][42] = 42,
+	[1][1][11][42] = 16,
+	[1][1][2][44] = 76,
+	[1][1][1][44] = 16,
+	[1][1][3][44] = 127,
+	[1][1][5][44] = 76,
+	[1][1][6][44] = 16,
+	[1][1][9][44] = 76,
+	[1][1][8][44] = 42,
+	[1][1][11][44] = 16,
+	[1][1][2][46] = 76,
+	[1][1][1][46] = 16,
+	[1][1][3][46] = 127,
+	[1][1][5][46] = 76,
+	[1][1][6][46] = 16,
+	[1][1][9][46] = 76,
+	[1][1][8][46] = 42,
+	[1][1][11][46] = 16,
+	[2][0][2][0] = 74,
+	[2][0][1][0] = 46,
+	[2][0][3][0] = 50,
+	[2][0][5][0] = 46,
+	[2][0][6][0] = 46,
+	[2][0][9][0] = 46,
+	[2][0][8][0] = 30,
+	[2][0][11][0] = 46,
+	[2][0][2][2] = 74,
+	[2][0][1][2] = 46,
+	[2][0][3][2] = 50,
+	[2][0][5][2] = 46,
+	[2][0][6][2] = 46,
+	[2][0][9][2] = 46,
+	[2][0][8][2] = 30,
+	[2][0][11][2] = 46,
+	[2][0][2][4] = 74,
+	[2][0][1][4] = 46,
+	[2][0][3][4] = 50,
+	[2][0][5][4] = 46,
+	[2][0][6][4] = 46,
+	[2][0][9][4] = 46,
+	[2][0][8][4] = 30,
+	[2][0][11][4] = 46,
+	[2][0][2][6] = 74,
+	[2][0][1][6] = 46,
+	[2][0][3][6] = 50,
+	[2][0][5][6] = 46,
+	[2][0][6][6] = 46,
+	[2][0][9][6] = 46,
+	[2][0][8][6] = 30,
+	[2][0][11][6] = 46,
+	[2][0][2][8] = 74,
+	[2][0][1][8] = 46,
+	[2][0][3][8] = 50,
+	[2][0][5][8] = 66,
+	[2][0][6][8] = 46,
+	[2][0][9][8] = 46,
+	[2][0][8][8] = 54,
+	[2][0][11][8] = 46,
+	[2][0][2][10] = 74,
+	[2][0][1][10] = 46,
+	[2][0][3][10] = 50,
+	[2][0][5][10] = 66,
+	[2][0][6][10] = 46,
+	[2][0][9][10] = 46,
+	[2][0][8][10] = 54,
+	[2][0][11][10] = 46,
+	[2][0][2][12] = 74,
+	[2][0][1][12] = 46,
+	[2][0][3][12] = 50,
+	[2][0][5][12] = 66,
+	[2][0][6][12] = 46,
+	[2][0][9][12] = 46,
+	[2][0][8][12] = 54,
+	[2][0][11][12] = 46,
+	[2][0][2][14] = 74,
+	[2][0][1][14] = 46,
+	[2][0][3][14] = 50,
+	[2][0][5][14] = 66,
+	[2][0][6][14] = 46,
+	[2][0][9][14] = 46,
+	[2][0][8][14] = 54,
+	[2][0][11][14] = 46,
+	[2][0][2][15] = 74,
+	[2][0][1][15] = 46,
+	[2][0][3][15] = 70,
+	[2][0][5][15] = 74,
+	[2][0][6][15] = 46,
+	[2][0][9][15] = 46,
+	[2][0][8][15] = 54,
+	[2][0][11][15] = 46,
+	[2][0][2][17] = 74,
+	[2][0][1][17] = 46,
+	[2][0][3][17] = 70,
+	[2][0][5][17] = 74,
+	[2][0][6][17] = 46,
+	[2][0][9][17] = 46,
+	[2][0][8][17] = 54,
+	[2][0][11][17] = 46,
+	[2][0][2][19] = 74,
+	[2][0][1][19] = 46,
+	[2][0][3][19] = 70,
+	[2][0][5][19] = 74,
+	[2][0][6][19] = 46,
+	[2][0][9][19] = 46,
+	[2][0][8][19] = 54,
+	[2][0][11][19] = 46,
+	[2][0][2][21] = 74,
+	[2][0][1][21] = 46,
+	[2][0][3][21] = 70,
+	[2][0][5][21] = 74,
+	[2][0][6][21] = 46,
+	[2][0][9][21] = 46,
+	[2][0][8][21] = 54,
+	[2][0][11][21] = 46,
+	[2][0][2][23] = 74,
+	[2][0][1][23] = 46,
+	[2][0][3][23] = 70,
+	[2][0][5][23] = 74,
+	[2][0][6][23] = 46,
+	[2][0][9][23] = 46,
+	[2][0][8][23] = 54,
+	[2][0][11][23] = 46,
+	[2][0][2][25] = 74,
+	[2][0][1][25] = 46,
+	[2][0][3][25] = 70,
+	[2][0][5][25] = 127,
+	[2][0][6][25] = 46,
+	[2][0][9][25] = 127,
+	[2][0][8][25] = 54,
+	[2][0][11][25] = 46,
+	[2][0][2][27] = 74,
+	[2][0][1][27] = 46,
+	[2][0][3][27] = 70,
+	[2][0][5][27] = 127,
+	[2][0][6][27] = 46,
+	[2][0][9][27] = 127,
+	[2][0][8][27] = 54,
+	[2][0][11][27] = 46,
+	[2][0][2][29] = 74,
+	[2][0][1][29] = 46,
+	[2][0][3][29] = 70,
+	[2][0][5][29] = 127,
+	[2][0][6][29] = 46,
+	[2][0][9][29] = 127,
+	[2][0][8][29] = 54,
+	[2][0][11][29] = 46,
+	[2][0][2][31] = 74,
+	[2][0][1][31] = 46,
+	[2][0][3][31] = 70,
+	[2][0][5][31] = 74,
+	[2][0][6][31] = 46,
+	[2][0][9][31] = 46,
+	[2][0][8][31] = 54,
+	[2][0][11][31] = 46,
+	[2][0][2][33] = 74,
+	[2][0][1][33] = 46,
+	[2][0][3][33] = 70,
+	[2][0][5][33] = 74,
+	[2][0][6][33] = 46,
+	[2][0][9][33] = 46,
+	[2][0][8][33] = 54,
+	[2][0][11][33] = 46,
+	[2][0][2][35] = 74,
+	[2][0][1][35] = 46,
+	[2][0][3][35] = 70,
+	[2][0][5][35] = 74,
+	[2][0][6][35] = 46,
+	[2][0][9][35] = 46,
+	[2][0][8][35] = 54,
+	[2][0][11][35] = 46,
+	[2][0][2][37] = 74,
+	[2][0][1][37] = 127,
+	[2][0][3][37] = 70,
+	[2][0][5][37] = 74,
+	[2][0][6][37] = 46,
+	[2][0][9][37] = 74,
+	[2][0][8][37] = 54,
+	[2][0][11][37] = 127,
+	[2][0][2][38] = 76,
+	[2][0][1][38] = 28,
+	[2][0][3][38] = 127,
+	[2][0][5][38] = 76,
+	[2][0][6][38] = 28,
+	[2][0][9][38] = 76,
+	[2][0][8][38] = 54,
+	[2][0][11][38] = 28,
+	[2][0][2][40] = 76,
+	[2][0][1][40] = 28,
+	[2][0][3][40] = 127,
+	[2][0][5][40] = 76,
+	[2][0][6][40] = 28,
+	[2][0][9][40] = 76,
+	[2][0][8][40] = 54,
+	[2][0][11][40] = 28,
+	[2][0][2][42] = 76,
+	[2][0][1][42] = 28,
+	[2][0][3][42] = 127,
+	[2][0][5][42] = 76,
+	[2][0][6][42] = 28,
+	[2][0][9][42] = 76,
+	[2][0][8][42] = 54,
+	[2][0][11][42] = 28,
+	[2][0][2][44] = 76,
+	[2][0][1][44] = 28,
+	[2][0][3][44] = 127,
+	[2][0][5][44] = 76,
+	[2][0][6][44] = 28,
+	[2][0][9][44] = 76,
+	[2][0][8][44] = 54,
+	[2][0][11][44] = 28,
+	[2][0][2][46] = 76,
+	[2][0][1][46] = 28,
+	[2][0][3][46] = 127,
+	[2][0][5][46] = 76,
+	[2][0][6][46] = 28,
+	[2][0][9][46] = 76,
+	[2][0][8][46] = 54,
+	[2][0][11][46] = 28,
+	[2][1][2][0] = 58,
+	[2][1][1][0] = 32,
+	[2][1][3][0] = 38,
+	[2][1][5][0] = 30,
+	[2][1][6][0] = 32,
+	[2][1][9][0] = 32,
+	[2][1][8][0] = 18,
+	[2][1][11][0] = 32,
+	[2][1][2][2] = 58,
+	[2][1][1][2] = 32,
+	[2][1][3][2] = 38,
+	[2][1][5][2] = 30,
+	[2][1][6][2] = 32,
+	[2][1][9][2] = 32,
+	[2][1][8][2] = 18,
+	[2][1][11][2] = 32,
+	[2][1][2][4] = 58,
+	[2][1][1][4] = 32,
+	[2][1][3][4] = 38,
+	[2][1][5][4] = 30,
+	[2][1][6][4] = 32,
+	[2][1][9][4] = 32,
+	[2][1][8][4] = 18,
+	[2][1][11][4] = 32,
+	[2][1][2][6] = 58,
+	[2][1][1][6] = 32,
+	[2][1][3][6] = 38,
+	[2][1][5][6] = 30,
+	[2][1][6][6] = 32,
+	[2][1][9][6] = 32,
+	[2][1][8][6] = 18,
+	[2][1][11][6] = 32,
+	[2][1][2][8] = 58,
+	[2][1][1][8] = 32,
+	[2][1][3][8] = 38,
+	[2][1][5][8] = 52,
+	[2][1][6][8] = 32,
+	[2][1][9][8] = 32,
+	[2][1][8][8] = 42,
+	[2][1][11][8] = 32,
+	[2][1][2][10] = 58,
+	[2][1][1][10] = 32,
+	[2][1][3][10] = 38,
+	[2][1][5][10] = 52,
+	[2][1][6][10] = 32,
+	[2][1][9][10] = 32,
+	[2][1][8][10] = 42,
+	[2][1][11][10] = 32,
+	[2][1][2][12] = 58,
+	[2][1][1][12] = 32,
+	[2][1][3][12] = 38,
+	[2][1][5][12] = 52,
+	[2][1][6][12] = 32,
+	[2][1][9][12] = 32,
+	[2][1][8][12] = 42,
+	[2][1][11][12] = 32,
+	[2][1][2][14] = 58,
+	[2][1][1][14] = 32,
+	[2][1][3][14] = 38,
+	[2][1][5][14] = 52,
+	[2][1][6][14] = 32,
+	[2][1][9][14] = 32,
+	[2][1][8][14] = 42,
+	[2][1][11][14] = 32,
+	[2][1][2][15] = 58,
+	[2][1][1][15] = 32,
+	[2][1][3][15] = 58,
+	[2][1][5][15] = 58,
+	[2][1][6][15] = 32,
+	[2][1][9][15] = 32,
+	[2][1][8][15] = 42,
+	[2][1][11][15] = 32,
+	[2][1][2][17] = 58,
+	[2][1][1][17] = 32,
+	[2][1][3][17] = 58,
+	[2][1][5][17] = 58,
+	[2][1][6][17] = 32,
+	[2][1][9][17] = 32,
+	[2][1][8][17] = 42,
+	[2][1][11][17] = 32,
+	[2][1][2][19] = 58,
+	[2][1][1][19] = 32,
+	[2][1][3][19] = 58,
+	[2][1][5][19] = 58,
+	[2][1][6][19] = 32,
+	[2][1][9][19] = 32,
+	[2][1][8][19] = 42,
+	[2][1][11][19] = 32,
+	[2][1][2][21] = 58,
+	[2][1][1][21] = 32,
+	[2][1][3][21] = 58,
+	[2][1][5][21] = 58,
+	[2][1][6][21] = 32,
+	[2][1][9][21] = 32,
+	[2][1][8][21] = 42,
+	[2][1][11][21] = 32,
+	[2][1][2][23] = 58,
+	[2][1][1][23] = 32,
+	[2][1][3][23] = 58,
+	[2][1][5][23] = 58,
+	[2][1][6][23] = 32,
+	[2][1][9][23] = 32,
+	[2][1][8][23] = 42,
+	[2][1][11][23] = 32,
+	[2][1][2][25] = 58,
+	[2][1][1][25] = 32,
+	[2][1][3][25] = 58,
+	[2][1][5][25] = 127,
+	[2][1][6][25] = 32,
+	[2][1][9][25] = 127,
+	[2][1][8][25] = 42,
+	[2][1][11][25] = 32,
+	[2][1][2][27] = 58,
+	[2][1][1][27] = 32,
+	[2][1][3][27] = 58,
+	[2][1][5][27] = 127,
+	[2][1][6][27] = 32,
+	[2][1][9][27] = 127,
+	[2][1][8][27] = 42,
+	[2][1][11][27] = 32,
+	[2][1][2][29] = 58,
+	[2][1][1][29] = 32,
+	[2][1][3][29] = 58,
+	[2][1][5][29] = 127,
+	[2][1][6][29] = 32,
+	[2][1][9][29] = 127,
+	[2][1][8][29] = 42,
+	[2][1][11][29] = 32,
+	[2][1][2][31] = 58,
+	[2][1][1][31] = 32,
+	[2][1][3][31] = 58,
+	[2][1][5][31] = 58,
+	[2][1][6][31] = 32,
+	[2][1][9][31] = 32,
+	[2][1][8][31] = 42,
+	[2][1][11][31] = 32,
+	[2][1][2][33] = 58,
+	[2][1][1][33] = 32,
+	[2][1][3][33] = 58,
+	[2][1][5][33] = 58,
+	[2][1][6][33] = 32,
+	[2][1][9][33] = 32,
+	[2][1][8][33] = 42,
+	[2][1][11][33] = 32,
+	[2][1][2][35] = 58,
+	[2][1][1][35] = 32,
+	[2][1][3][35] = 58,
+	[2][1][5][35] = 58,
+	[2][1][6][35] = 32,
+	[2][1][9][35] = 32,
+	[2][1][8][35] = 42,
+	[2][1][11][35] = 32,
+	[2][1][2][37] = 58,
+	[2][1][1][37] = 127,
+	[2][1][3][37] = 58,
+	[2][1][5][37] = 58,
+	[2][1][6][37] = 32,
+	[2][1][9][37] = 62,
+	[2][1][8][37] = 42,
+	[2][1][11][37] = 127,
+	[2][1][2][38] = 76,
+	[2][1][1][38] = 16,
+	[2][1][3][38] = 127,
+	[2][1][5][38] = 76,
+	[2][1][6][38] = 16,
+	[2][1][9][38] = 76,
+	[2][1][8][38] = 42,
+	[2][1][11][38] = 16,
+	[2][1][2][40] = 76,
+	[2][1][1][40] = 16,
+	[2][1][3][40] = 127,
+	[2][1][5][40] = 76,
+	[2][1][6][40] = 16,
+	[2][1][9][40] = 76,
+	[2][1][8][40] = 42,
+	[2][1][11][40] = 16,
+	[2][1][2][42] = 76,
+	[2][1][1][42] = 16,
+	[2][1][3][42] = 127,
+	[2][1][5][42] = 76,
+	[2][1][6][42] = 16,
+	[2][1][9][42] = 76,
+	[2][1][8][42] = 42,
+	[2][1][11][42] = 16,
+	[2][1][2][44] = 76,
+	[2][1][1][44] = 16,
+	[2][1][3][44] = 127,
+	[2][1][5][44] = 76,
+	[2][1][6][44] = 16,
+	[2][1][9][44] = 76,
+	[2][1][8][44] = 42,
+	[2][1][11][44] = 16,
+	[2][1][2][46] = 76,
+	[2][1][1][46] = 16,
+	[2][1][3][46] = 127,
+	[2][1][5][46] = 76,
+	[2][1][6][46] = 16,
+	[2][1][9][46] = 76,
+	[2][1][8][46] = 42,
+	[2][1][11][46] = 16,
 };
 
 #define DECLARE_DIG_TABLE(name) \
diff --git a/drivers/net/wireless/realtek/rtw89/txrx.h b/drivers/net/wireless/realtek/rtw89/txrx.h
index 75b11249f306..f1e0fe36107d 100644
--- a/drivers/net/wireless/realtek/rtw89/txrx.h
+++ b/drivers/net/wireless/realtek/rtw89/txrx.h
@@ -140,56 +140,52 @@
 	le32_get_bits((rxdesc)->dword5, GENMASK(7, 0))
 
 #define RTW89_GET_RXINFO_USR_NUM(rpt) \
-	le32_get_bits(*((const __le32 *)rpt), GENMASK(3, 0))
+	le32_get_bits(*((__le32 *)rpt), GENMASK(3, 0))
 #define RTW89_GET_RXINFO_FW_DEFINE(rpt) \
-	le32_get_bits(*((const __le32 *)rpt), GENMASK(15, 8))
+	le32_get_bits(*((__le32 *)rpt), GENMASK(15, 8))
 #define RTW89_GET_RXINFO_LSIG_LEN(rpt) \
-	le32_get_bits(*((const __le32 *)rpt), GENMASK(27, 16))
+	le32_get_bits(*((__le32 *)rpt), GENMASK(27, 16))
 #define RTW89_GET_RXINFO_IS_TO_SELF(rpt) \
-	le32_get_bits(*((const __le32 *)rpt), BIT(28))
+	le32_get_bits(*((__le32 *)rpt), BIT(28))
 #define RTW89_GET_RXINFO_RX_CNT_VLD(rpt) \
-	le32_get_bits(*((const __le32 *)rpt), BIT(29))
+	le32_get_bits(*((__le32 *)rpt), BIT(29))
 #define RTW89_GET_RXINFO_LONG_RXD(rpt) \
-	le32_get_bits(*((const __le32 *)rpt), GENMASK(31, 30))
+	le32_get_bits(*((__le32 *)rpt), GENMASK(31, 30))
 #define RTW89_GET_RXINFO_SERVICE(rpt) \
-	le32_get_bits(*((const __le32 *)(rpt) + 1), GENMASK(15, 0))
+	le32_get_bits(*((__le32 *)(rpt) + 1), GENMASK(15, 0))
 #define RTW89_GET_RXINFO_PLCP_LEN(rpt) \
-	le32_get_bits(*((const __le32 *)(rpt) + 1), GENMASK(23, 16))
+	le32_get_bits(*((__le32 *)(rpt) + 1), GENMASK(23, 16))
 #define RTW89_GET_RXINFO_MAC_ID_VALID(rpt, usr) \
-	le32_get_bits(*((const __le32 *)(rpt) + (usr) + 2), BIT(0))
+	le32_get_bits(*((__le32 *)(rpt) + (usr) + 2), BIT(0))
 #define RTW89_GET_RXINFO_DATA(rpt, usr) \
-	le32_get_bits(*((const __le32 *)(rpt) + (usr) + 2), BIT(1))
+	le32_get_bits(*((__le32 *)(rpt) + (usr) + 2), BIT(1))
 #define RTW89_GET_RXINFO_CTRL(rpt, usr) \
-	le32_get_bits(*((const __le32 *)(rpt) + (usr) + 2), BIT(2))
+	le32_get_bits(*((__le32 *)(rpt) + (usr) + 2), BIT(2))
 #define RTW89_GET_RXINFO_MGMT(rpt, usr) \
-	le32_get_bits(*((const __le32 *)(rpt) + (usr) + 2), BIT(3))
+	le32_get_bits(*((__le32 *)(rpt) + (usr) + 2), BIT(3))
 #define RTW89_GET_RXINFO_BCM(rpt, usr) \
-	le32_get_bits(*((const __le32 *)(rpt) + (usr) + 2), BIT(4))
+	le32_get_bits(*((__le32 *)(rpt) + (usr) + 2), BIT(4))
 #define RTW89_GET_RXINFO_MACID(rpt, usr) \
-	le32_get_bits(*((const __le32 *)(rpt) + (usr) + 2), GENMASK(15, 8))
+	le32_get_bits(*((__le32 *)(rpt) + (usr) + 2), GENMASK(15, 8))
 
-#define RTW89_GET_PHY_STS_IE_MAP(sts) \
-	le32_get_bits(*((const __le32 *)(sts)), GENMASK(4, 0))
 #define RTW89_GET_PHY_STS_RSSI_A(sts) \
-	le32_get_bits(*((const __le32 *)(sts) + 1), GENMASK(7, 0))
+	le32_get_bits(*((__le32 *)(sts) + 1), GENMASK(7, 0))
 #define RTW89_GET_PHY_STS_RSSI_B(sts) \
-	le32_get_bits(*((const __le32 *)(sts) + 1), GENMASK(15, 8))
+	le32_get_bits(*((__le32 *)(sts) + 1), GENMASK(15, 8))
 #define RTW89_GET_PHY_STS_RSSI_C(sts) \
-	le32_get_bits(*((const __le32 *)(sts) + 1), GENMASK(23, 16))
+	le32_get_bits(*((__le32 *)(sts) + 1), GENMASK(23, 16))
 #define RTW89_GET_PHY_STS_RSSI_D(sts) \
-	le32_get_bits(*((const __le32 *)(sts) + 1), GENMASK(31, 24))
+	le32_get_bits(*((__le32 *)(sts) + 1), GENMASK(31, 24))
 #define RTW89_GET_PHY_STS_LEN(sts) \
-	le32_get_bits(*((const __le32 *)sts), GENMASK(15, 8))
+	le32_get_bits(*((__le32 *)sts), GENMASK(15, 8))
 #define RTW89_GET_PHY_STS_RSSI_AVG(sts) \
-	le32_get_bits(*((const __le32 *)sts), GENMASK(31, 24))
+	le32_get_bits(*((__le32 *)sts), GENMASK(31, 24))
 #define RTW89_GET_PHY_STS_IE_TYPE(ie) \
-	le32_get_bits(*((const __le32 *)ie), GENMASK(4, 0))
+	le32_get_bits(*((__le32 *)ie), GENMASK(4, 0))
 #define RTW89_GET_PHY_STS_IE_LEN(ie) \
-	le32_get_bits(*((const __le32 *)ie), GENMASK(11, 5))
-#define RTW89_GET_PHY_STS_IE01_CH_IDX(ie) \
-	le32_get_bits(*((const __le32 *)ie), GENMASK(23, 16))
-#define RTW89_GET_PHY_STS_IE01_CFO(ie) \
-	le32_get_bits(*((const __le32 *)(ie) + 1), GENMASK(31, 20))
+	le32_get_bits(*((__le32 *)ie), GENMASK(11, 5))
+#define RTW89_GET_PHY_STS_IE0_CFO(ie) \
+	le32_get_bits(*((__le32 *)(ie) + 1), GENMASK(31, 20))
 
 enum rtw89_tx_channel {
 	RTW89_TXCH_ACH0	= 0,
@@ -255,6 +251,45 @@ enum rtw89_tx_qsel {
 	/* reserved */
 };
 
+enum rtw89_phy_status_ie_type {
+	RTW89_PHYSTS_IE00_CMN_CCK			= 0,
+	RTW89_PHYSTS_IE01_CMN_OFDM			= 1,
+	RTW89_PHYSTS_IE02_CMN_EXT_AX			= 2,
+	RTW89_PHYSTS_IE03_CMN_EXT_SEG_1			= 3,
+	RTW89_PHYSTS_IE04_CMN_EXT_PATH_A		= 4,
+	RTW89_PHYSTS_IE05_CMN_EXT_PATH_B		= 5,
+	RTW89_PHYSTS_IE06_CMN_EXT_PATH_C		= 6,
+	RTW89_PHYSTS_IE07_CMN_EXT_PATH_D		= 7,
+	RTW89_PHYSTS_IE08_FTR_CH			= 8,
+	RTW89_PHYSTS_IE09_FTR_PLCP_0			= 9,
+	RTW89_PHYSTS_IE10_FTR_PLCP_EXT			= 10,
+	RTW89_PHYSTS_IE11_FTR_PLCP_HISTOGRAM		= 11,
+	RTW89_PHYSTS_IE12_MU_EIGEN_INFO			= 12,
+	RTW89_PHYSTS_IE13_DL_MU_DEF			= 13,
+	RTW89_PHYSTS_IE14_TB_UL_CQI			= 14,
+	RTW89_PHYSTS_IE15_TB_UL_DEF			= 15,
+	RTW89_PHYSTS_IE16_RSVD16			= 16,
+	RTW89_PHYSTS_IE17_TB_UL_CTRL			= 17,
+	RTW89_PHYSTS_IE18_DBG_OFDM_FD_CMN		= 18,
+	RTW89_PHYSTS_IE19_DBG_OFDM_TD_CMN		= 19,
+	RTW89_PHYSTS_IE20_DBG_OFDM_FD_USER_SEG_0	= 20,
+	RTW89_PHYSTS_IE21_DBG_OFDM_FD_USER_SEG_1	= 21,
+	RTW89_PHYSTS_IE22_DBG_OFDM_FD_USER_AGC		= 22,
+	RTW89_PHYSTS_IE23_RSVD23			= 23,
+	RTW89_PHYSTS_IE24_DBG_OFDM_TD_PATH_A		= 24,
+	RTW89_PHYSTS_IE25_DBG_OFDM_TD_PATH_B		= 25,
+	RTW89_PHYSTS_IE26_DBG_OFDM_TD_PATH_C		= 26,
+	RTW89_PHYSTS_IE27_DBG_OFDM_TD_PATH_D		= 27,
+	RTW89_PHYSTS_IE28_DBG_CCK_PATH_A		= 28,
+	RTW89_PHYSTS_IE29_DBG_CCK_PATH_B		= 29,
+	RTW89_PHYSTS_IE30_DBG_CCK_PATH_C		= 30,
+	RTW89_PHYSTS_IE31_DBG_CCK_PATH_D		= 31,
+
+	/* keep last */
+	RTW89_PHYSTS_IE_NUM,
+	RTW89_PHYSTS_IE_MAX = RTW89_PHYSTS_IE_NUM - 1
+};
+
 static inline u8 rtw89_core_get_qsel(struct rtw89_dev *rtwdev, u8 tid)
 {
 	switch (tid) {
-- 
2.34.1

