patches for DPDK stable branches
 help / color / mirror / Atom feed
From: Xueming Li <xuemingl@nvidia.com>
To: Madhuker Mythri <madhuker.mythri@oracle.com>
Cc: Stephen Hemminger <stephen@networkplumber.org>,
	Ferruh Yigit <ferruh.yigit@amd.com>,
	dpdk stable <stable@dpdk.org>
Subject: patch 'net/tap: fix RSS for fragmented packets' has been queued to stable release 22.11.4
Date: Mon, 11 Dec 2023 18:11:11 +0800	[thread overview]
Message-ID: <20231211101226.2122-47-xuemingl@nvidia.com> (raw)
In-Reply-To: <20231211101226.2122-1-xuemingl@nvidia.com>

Hi,

FYI, your patch has been queued to stable release 22.11.4

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/13/23. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Queued patches are on a temporary branch at:
https://git.dpdk.org/dpdk-stable/log/?h=22.11-staging

This queued commit can be viewed at:
https://git.dpdk.org/dpdk-stable/commit/?h=22.11-staging&id=81410056f5ab7eacd0b91b6a708f9aca535c4a7a

Thanks.

Xueming Li <xuemingl@nvidia.com>

---
From 81410056f5ab7eacd0b91b6a708f9aca535c4a7a Mon Sep 17 00:00:00 2001
From: Madhuker Mythri <madhuker.mythri@oracle.com>
Date: Wed, 1 Nov 2023 11:02:47 -0700
Subject: [PATCH] net/tap: fix RSS for fragmented packets
Cc: Xueming Li <xuemingl@nvidia.com>

[ upstream commit db6a3ddb166bb53ac7929e4b5c4cad94f6fa6871 ]

As per analysis on Tap PMD, the existing RSS algorithm considering
4-tuple (Src-IP, Dst-IP, Src-port and Dst-port) and identification of
fragment packets is not done, thus we are seeing all the fragmented
chunks of single packet differs in RSS hash value and distributed across
multiple queues.
The RSS algorithm assumes that, all the incoming IP packets are based on
L4-protocol(UDP/TCP) and trying to fetch the L4 fields(Src-port and
Dst-port) for each incoming packet, but for the fragmented chunks these
L4-header will not be present (except for first packet) and should not
consider in RSS hash for L4 header fields in-case of fragmented chunks.
Which is a bug in the RSS algorithm implemented in the BPF functionality
under TAP PMD.

So, modified the RSS eBPF C-program and generated the structure of
C-array in the 'tap_bpf_insns.h' file, which is in eBPF byte-code
instructions format.

Bugzilla ID: 870
Fixes: cdc07e83bb24 ("net/tap: add eBPF program file")

Signed-off-by: Madhuker Mythri <madhuker.mythri@oracle.com>
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Ferruh Yigit <ferruh.yigit@amd.com>
---
 drivers/net/tap/tap_bpf_insns.h   | 2959 +++++++++++++++--------------
 drivers/net/tap/tap_bpf_program.c |   45 +-
 2 files changed, 1540 insertions(+), 1464 deletions(-)

diff --git a/drivers/net/tap/tap_bpf_insns.h b/drivers/net/tap/tap_bpf_insns.h
index 1a91bbad13..53fa76c4e6 100644
--- a/drivers/net/tap/tap_bpf_insns.h
+++ b/drivers/net/tap/tap_bpf_insns.h
@@ -1,10 +1,10 @@
 /* SPDX-License-Identifier: BSD-3-Clause
- * Copyright 2017 Mellanox Technologies, Ltd
+ * Auto-generated from tap_bpf_program.c
+ * This not the original source file. Do NOT edit it.
  */
 
 #include <tap_bpf.h>
 
-/* bpf_insn array matching cls_q section. See tap_bpf_program.c file */
 static struct bpf_insn cls_q_insns[] = {
 	{0x61,    2,    1,       52, 0x00000000},
 	{0x18,    3,    0,        0, 0xdeadbeef},
@@ -23,18 +23,17 @@ static struct bpf_insn cls_q_insns[] = {
 	{0x95,    0,    0,        0, 0x00000000},
 };
 
-/* bpf_insn array matching l3_l4 section. see tap_bpf_program.c file */
 static struct bpf_insn l3_l4_hash_insns[] = {
 	{0xbf,    7,    1,        0, 0x00000000},
-	{0x61,    8,    7,       16, 0x00000000},
-	{0x61,    6,    7,       76, 0x00000000},
+	{0x61,    6,    7,       16, 0x00000000},
+	{0x61,    8,    7,       76, 0x00000000},
 	{0x61,    9,    7,       80, 0x00000000},
 	{0x18,    1,    0,        0, 0xdeadbeef},
 	{0x00,    0,    0,        0, 0x00000000},
 	{0x63,   10,    1,       -4, 0x00000000},
 	{0xbf,    2,   10,        0, 0x00000000},
 	{0x07,    2,    0,        0, 0xfffffffc},
-	{0x18,    1,    1,        0, 0x0000cafe},
+	{0x18,    1,    0,        0, 0x00000000},
 	{0x00,    0,    0,        0, 0x00000000},
 	{0x85,    0,    0,        0, 0x00000001},
 	{0x55,    0,    0,       21, 0x00000000},
@@ -58,7 +57,7 @@ static struct bpf_insn l3_l4_hash_insns[] = {
 	{0x07,    1,    0,        0, 0xffffffd0},
 	{0xb7,    2,    0,        0, 0x00000023},
 	{0x85,    0,    0,        0, 0x00000006},
-	{0x05,    0,    0,     1632, 0x00000000},
+	{0x05,    0,    0,     1680, 0x00000000},
 	{0xb7,    1,    0,        0, 0x0000000e},
 	{0x61,    2,    7,       20, 0x00000000},
 	{0x15,    2,    0,       10, 0x00000000},
@@ -66,1630 +65,1678 @@ static struct bpf_insn l3_l4_hash_insns[] = {
 	{0x55,    2,    0,        8, 0x0000a888},
 	{0xbf,    2,    7,        0, 0x00000000},
 	{0xb7,    7,    0,        0, 0x00000000},
-	{0xbf,    1,    6,        0, 0x00000000},
+	{0xbf,    1,    8,        0, 0x00000000},
 	{0x07,    1,    0,        0, 0x00000012},
-	{0x2d,    1,    9,     1622, 0x00000000},
+	{0x2d,    1,    9,     1670, 0x00000000},
 	{0xb7,    1,    0,        0, 0x00000012},
-	{0x69,    8,    6,       16, 0x00000000},
+	{0x69,    6,    8,       16, 0x00000000},
 	{0xbf,    7,    2,        0, 0x00000000},
+	{0x57,    6,    0,        0, 0x0000ffff},
 	{0x7b,   10,    7,      -56, 0x00000000},
-	{0x57,    8,    0,        0, 0x0000ffff},
-	{0x15,    8,    0,      409, 0x0000dd86},
+	{0x15,    6,    0,      443, 0x0000dd86},
 	{0xb7,    7,    0,        0, 0x00000003},
-	{0x55,    8,    0,     1614, 0x00000008},
-	{0x0f,    6,    1,        0, 0x00000000},
+	{0x55,    6,    0,     1662, 0x00000008},
+	{0x0f,    8,    1,        0, 0x00000000},
 	{0xb7,    7,    0,        0, 0x00000000},
-	{0xbf,    1,    6,        0, 0x00000000},
+	{0xbf,    1,    8,        0, 0x00000000},
 	{0x07,    1,    0,        0, 0x00000018},
-	{0x2d,    1,    9,     1609, 0x00000000},
-	{0x71,    3,    6,       12, 0x00000000},
-	{0xbf,    1,    3,        0, 0x00000000},
-	{0x67,    1,    0,        0, 0x00000038},
-	{0xc7,    1,    0,        0, 0x00000020},
-	{0x77,    1,    0,        0, 0x0000001f},
-	{0x57,    1,    0,        0, 0x2cc681d1},
-	{0x67,    3,    0,        0, 0x00000018},
+	{0x2d,    1,    9,     1657, 0x00000000},
+	{0xb7,    1,    0,        0, 0x00000000},
+	{0x71,    3,    8,       12, 0x00000000},
+	{0x71,    2,    8,        9, 0x00000000},
+	{0x15,    2,    0,        1, 0x00000011},
+	{0x55,    2,    0,       21, 0x00000006},
+	{0x71,    2,    8,        7, 0x00000000},
+	{0x71,    4,    8,        6, 0x00000000},
+	{0xbf,    5,    4,        0, 0x00000000},
+	{0x67,    5,    0,        0, 0x00000008},
+	{0x57,    5,    0,        0, 0x00001f00},
+	{0x4f,    5,    2,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000020},
+	{0x4f,    4,    5,        0, 0x00000000},
+	{0x55,    4,    0,       12, 0x00000000},
+	{0xbf,    2,    8,        0, 0x00000000},
+	{0x07,    2,    0,        0, 0x00000014},
+	{0x71,    4,    2,        0, 0x00000000},
+	{0x67,    4,    0,        0, 0x00000018},
+	{0x71,    1,    2,        1, 0x00000000},
+	{0x67,    1,    0,        0, 0x00000010},
+	{0x4f,    1,    4,        0, 0x00000000},
+	{0x71,    4,    2,        3, 0x00000000},
+	{0x4f,    1,    4,        0, 0x00000000},
+	{0x71,    2,    2,        2, 0x00000000},
+	{0x67,    2,    0,        0, 0x00000008},
+	{0x4f,    1,    2,        0, 0x00000000},
 	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x40000000},
+	{0x67,    4,    0,        0, 0x00000038},
+	{0xc7,    4,    0,        0, 0x00000038},
+	{0xb7,    2,    0,        0, 0x00000000},
+	{0x65,    4,    0,        1, 0xffffffff},
+	{0xb7,    7,    0,        0, 0x2cc681d1},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000040},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x598d03a2},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000020},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xb31a0745},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000010},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x66340e8a},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000008},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xcc681d15},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000004},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x98d03a2b},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000002},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x31a07456},
+	{0x71,    4,    8,       13, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000001},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x6340e8ad},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x67,    3,    0,        0, 0x00000038},
+	{0xc7,    3,    0,        0, 0x00000038},
+	{0xbf,    5,    7,        0, 0x00000000},
+	{0xa7,    5,    0,        0, 0xc681d15b},
+	{0x6d,    2,    3,        1, 0x00000000},
+	{0xbf,    5,    7,        0, 0x00000000},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000040},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x8d03a2b7},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000020},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x1a07456f},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000010},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x340e8ade},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000008},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x681d15bd},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000004},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xd03a2b7b},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000002},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xa07456f6},
+	{0x71,    3,    8,       14, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000001},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x40e8aded},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x67,    4,    0,        0, 0x00000038},
+	{0xc7,    4,    0,        0, 0x00000038},
+	{0xbf,    7,    5,        0, 0x00000000},
+	{0xa7,    7,    0,        0, 0x81d15bdb},
+	{0x6d,    2,    4,        1, 0x00000000},
+	{0xbf,    7,    5,        0, 0x00000000},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000040},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x03a2b7b7},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000020},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x07456f6f},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000010},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x0e8adedf},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000008},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x1d15bdbf},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000004},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x3a2b7b7e},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000002},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x7456f6fd},
+	{0x71,    4,    8,       15, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000001},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xe8adedfa},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x67,    3,    0,        0, 0x00000038},
+	{0xc7,    3,    0,        0, 0x00000038},
+	{0xbf,    5,    7,        0, 0x00000000},
+	{0xa7,    5,    0,        0, 0xd15bdbf4},
+	{0x6d,    2,    3,        1, 0x00000000},
+	{0xbf,    5,    7,        0, 0x00000000},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000040},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xa2b7b7e9},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000020},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x456f6fd3},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000010},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x8adedfa7},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000008},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x15bdbf4f},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000004},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x2b7b7e9e},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000002},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x56f6fd3d},
+	{0x71,    3,    8,       16, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000001},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xadedfa7b},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x67,    4,    0,        0, 0x00000038},
+	{0xc7,    4,    0,        0, 0x00000038},
+	{0xbf,    7,    5,        0, 0x00000000},
+	{0xa7,    7,    0,        0, 0x5bdbf4f7},
+	{0x6d,    2,    4,        1, 0x00000000},
+	{0xbf,    7,    5,        0, 0x00000000},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000040},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xb7b7e9ef},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000020},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x6f6fd3df},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000010},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xdedfa7bf},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000008},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xbdbf4f7f},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000004},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x7b7e9eff},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000002},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xf6fd3dff},
+	{0x71,    4,    8,       17, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000001},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xedfa7bfe},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x67,    3,    0,        0, 0x00000038},
+	{0xc7,    3,    0,        0, 0x00000038},
+	{0xbf,    5,    7,        0, 0x00000000},
+	{0xa7,    5,    0,        0, 0xdbf4f7fc},
+	{0x6d,    2,    3,        1, 0x00000000},
+	{0xbf,    5,    7,        0, 0x00000000},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000040},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xb7e9eff9},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000020},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x6fd3dff2},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000010},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xdfa7bfe5},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000008},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xbf4f7fca},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000004},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x7e9eff94},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000002},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xfd3dff28},
+	{0x71,    3,    8,       18, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000001},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xfa7bfe51},
+	{0xbf,    6,    3,        0, 0x00000000},
+	{0x67,    6,    0,        0, 0x00000038},
+	{0xc7,    6,    0,        0, 0x00000038},
+	{0xbf,    4,    5,        0, 0x00000000},
+	{0xa7,    4,    0,        0, 0xf4f7fca2},
+	{0x6d,    2,    6,        1, 0x00000000},
+	{0xbf,    4,    5,        0, 0x00000000},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00000040},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xe9eff945},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00000020},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xd3dff28a},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00000010},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xa7bfe514},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00000008},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x4f7fca28},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00000004},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x9eff9450},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00000002},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x3dff28a0},
+	{0x71,    5,    8,       19, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000001},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x7bfe5141},
+	{0xbf,    3,    5,        0, 0x00000000},
+	{0x67,    3,    0,        0, 0x00000038},
+	{0xc7,    3,    0,        0, 0x00000038},
+	{0xbf,    7,    4,        0, 0x00000000},
+	{0xa7,    7,    0,        0, 0xf7fca283},
+	{0x6d,    2,    3,        1, 0x00000000},
+	{0xbf,    7,    4,        0, 0x00000000},
+	{0xbf,    3,    5,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000040},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xeff94506},
+	{0xbf,    3,    5,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000020},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xdff28a0c},
+	{0xbf,    3,    5,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000010},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xbfe51418},
+	{0xbf,    3,    5,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000008},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x7fca2831},
+	{0xbf,    3,    5,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000004},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xff945063},
+	{0xbf,    3,    5,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000002},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xff28a0c6},
+	{0x57,    5,    0,        0, 0x00000001},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xfe51418c},
+	{0xbf,    4,    1,        0, 0x00000000},
+	{0x67,    4,    0,        0, 0x00000020},
+	{0xc7,    4,    0,        0, 0x00000020},
+	{0xbf,    3,    7,        0, 0x00000000},
+	{0xa7,    3,    0,        0, 0xfca28319},
+	{0x6d,    2,    4,        1, 0x00000000},
+	{0xbf,    3,    7,        0, 0x00000000},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x40000000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xf9450633},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x20000000},
+	{0x79,    6,   10,      -56, 0x00000000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xf28a0c67},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x10000000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xe51418ce},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x08000000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xca28319d},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x04000000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x9450633b},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x02000000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x28a0c676},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x01000000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x51418ced},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00800000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xa28319db},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00400000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x450633b6},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00200000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x8a0c676c},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00100000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x1418ced8},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00080000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x28319db1},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00040000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x50633b63},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00020000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xa0c676c6},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00010000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x418ced8d},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00008000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x8319db1a},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00004000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x0633b634},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00002000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x0c676c68},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00001000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x18ced8d1},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000800},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x319db1a3},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000400},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x633b6347},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000200},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xc676c68f},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000100},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x8ced8d1f},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000080},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x19db1a3e},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000040},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x33b6347d},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000020},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x676c68fa},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000010},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xced8d1f4},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000008},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x9db1a3e9},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000004},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x3b6347d2},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000002},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x76c68fa5},
+	{0x57,    1,    0,        0, 0x00000001},
+	{0x15,    1,    0,     1194, 0x00000000},
+	{0xa7,    3,    0,        0, 0xed8d1f4a},
+	{0x05,    0,    0,     1192, 0x00000000},
+	{0x0f,    8,    1,        0, 0x00000000},
+	{0xb7,    7,    0,        0, 0x00000000},
+	{0xbf,    1,    8,        0, 0x00000000},
+	{0x07,    1,    0,        0, 0x0000002c},
+	{0x2d,    1,    9,     1216, 0x00000000},
+	{0x61,    2,    8,        8, 0x00000000},
+	{0xdc,    2,    0,        0, 0x00000040},
+	{0xc7,    2,    0,        0, 0x00000020},
+	{0x71,    3,    8,        6, 0x00000000},
+	{0x15,    3,    0,        2, 0x00000011},
+	{0xb7,    1,    0,        0, 0x00000000},
+	{0x55,    3,    0,       12, 0x00000006},
+	{0xbf,    3,    8,        0, 0x00000000},
+	{0x07,    3,    0,        0, 0x00000028},
+	{0x71,    4,    3,        0, 0x00000000},
+	{0x67,    4,    0,        0, 0x00000018},
+	{0x71,    1,    3,        1, 0x00000000},
+	{0x67,    1,    0,        0, 0x00000010},
+	{0x4f,    1,    4,        0, 0x00000000},
+	{0x71,    4,    3,        3, 0x00000000},
+	{0x4f,    1,    4,        0, 0x00000000},
+	{0x71,    3,    3,        2, 0x00000000},
+	{0x67,    3,    0,        0, 0x00000008},
+	{0x4f,    1,    3,        0, 0x00000000},
+	{0xbf,    4,    2,        0, 0x00000000},
+	{0x77,    4,    0,        0, 0x0000001f},
+	{0x57,    4,    0,        0, 0x2cc681d1},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x40000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x598d03a2},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x20000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xb31a0745},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x10000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x66340e8a},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x08000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xcc681d15},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x04000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x98d03a2b},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x02000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x31a07456},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x01000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x6340e8ad},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00800000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xc681d15b},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00400000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x8d03a2b7},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00200000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x1a07456f},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00100000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x340e8ade},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00080000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x681d15bd},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00040000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xd03a2b7b},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00020000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xa07456f6},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00010000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x40e8aded},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00008000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x81d15bdb},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00004000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x03a2b7b7},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00002000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x07456f6f},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00001000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x0e8adedf},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000800},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x1d15bdbf},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000400},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x3a2b7b7e},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000200},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x7456f6fd},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000100},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xe8adedfa},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000080},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xd15bdbf4},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000040},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xa2b7b7e9},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000020},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x456f6fd3},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000010},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x8adedfa7},
+	{0xbf,    3,    2,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000008},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x15bdbf4f},
+	{0x61,    3,    8,       12, 0x00000000},
+	{0xbf,    5,    2,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00000004},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x2b7b7e9e},
+	{0xdc,    3,    0,        0, 0x00000040},
+	{0xbf,    5,    2,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00000002},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x56f6fd3d},
+	{0xc7,    3,    0,        0, 0x00000020},
+	{0x57,    2,    0,        0, 0x00000001},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xadedfa7b},
 	{0xb7,    2,    0,        0, 0x00000000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x598d03a2},
+	{0xbf,    5,    4,        0, 0x00000000},
+	{0xa7,    5,    0,        0, 0x5bdbf4f7},
+	{0x6d,    2,    3,        1, 0x00000000},
+	{0xbf,    5,    4,        0, 0x00000000},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x40000000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xb7b7e9ef},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x20000000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xb31a0745},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x6f6fd3df},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x10000000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x66340e8a},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xdedfa7bf},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x08000000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xcc681d15},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xbdbf4f7f},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x04000000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x98d03a2b},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x7b7e9eff},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x02000000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x31a07456},
-	{0x57,    3,    0,        0, 0x01000000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x6340e8ad},
-	{0x71,    3,    6,       13, 0x00000000},
-	{0x67,    3,    0,        0, 0x00000010},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xf6fd3dff},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x01000000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xedfa7bfe},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00800000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xc681d15b},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xdbf4f7fc},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00400000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x8d03a2b7},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xb7e9eff9},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00200000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x1a07456f},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x6fd3dff2},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00100000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x340e8ade},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xdfa7bfe5},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00080000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x681d15bd},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xbf4f7fca},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00040000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xd03a2b7b},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x7e9eff94},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00020000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xa07456f6},
-	{0x57,    3,    0,        0, 0x00010000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x40e8aded},
-	{0x71,    3,    6,       14, 0x00000000},
-	{0x67,    3,    0,        0, 0x00000008},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xfd3dff28},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00010000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xfa7bfe51},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00008000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x81d15bdb},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xf4f7fca2},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00004000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x03a2b7b7},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xe9eff945},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00002000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x07456f6f},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xd3dff28a},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00001000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x0e8adedf},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xa7bfe514},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00000800},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x1d15bdbf},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x4f7fca28},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00000400},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x3a2b7b7e},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x9eff9450},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00000200},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x7456f6fd},
-	{0x57,    3,    0,        0, 0x00000100},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xe8adedfa},
-	{0x71,    3,    6,       15, 0x00000000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x3dff28a0},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000100},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x7bfe5141},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00000080},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xd15bdbf4},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xf7fca283},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00000040},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xa2b7b7e9},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xeff94506},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00000020},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x456f6fd3},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xdff28a0c},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00000010},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x8adedfa7},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xbfe51418},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00000008},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x15bdbf4f},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00000004},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x2b7b7e9e},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00000002},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x56f6fd3d},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x7fca2831},
+	{0x61,    4,    8,       16, 0x00000000},
+	{0xbf,    6,    3,        0, 0x00000000},
+	{0x57,    6,    0,        0, 0x00000004},
+	{0x15,    6,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xff945063},
+	{0xdc,    4,    0,        0, 0x00000040},
+	{0xbf,    6,    3,        0, 0x00000000},
+	{0x57,    6,    0,        0, 0x00000002},
+	{0x15,    6,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xff28a0c6},
+	{0xc7,    4,    0,        0, 0x00000020},
 	{0x57,    3,    0,        0, 0x00000001},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xadedfa7b},
-	{0x71,    4,    6,       16, 0x00000000},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x67,    5,    0,        0, 0x00000038},
-	{0xc7,    5,    0,        0, 0x00000020},
-	{0xb7,    3,    0,        0, 0xffffffff},
-	{0x6d,    5,    3,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x5bdbf4f7},
-	{0x67,    4,    0,        0, 0x00000018},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x40000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xb7b7e9ef},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x20000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x6f6fd3df},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x10000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xdedfa7bf},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x08000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xbdbf4f7f},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x04000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x7b7e9eff},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x02000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xf6fd3dff},
-	{0x57,    4,    0,        0, 0x01000000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xedfa7bfe},
-	{0x71,    4,    6,       17, 0x00000000},
-	{0x67,    4,    0,        0, 0x00000010},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00800000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xdbf4f7fc},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00400000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xb7e9eff9},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00200000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x6fd3dff2},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00100000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xdfa7bfe5},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00080000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xbf4f7fca},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00040000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x7e9eff94},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00020000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xfd3dff28},
-	{0x57,    4,    0,        0, 0x00010000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xfa7bfe51},
-	{0x71,    4,    6,       18, 0x00000000},
-	{0x67,    4,    0,        0, 0x00000008},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00008000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xf4f7fca2},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00004000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xe9eff945},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00002000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xd3dff28a},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00001000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xa7bfe514},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000800},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x4f7fca28},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000400},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x9eff9450},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000200},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x3dff28a0},
-	{0x57,    4,    0,        0, 0x00000100},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x7bfe5141},
-	{0x71,    4,    6,       19, 0x00000000},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000080},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xf7fca283},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000040},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xeff94506},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000020},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xdff28a0c},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000010},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xbfe51418},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000008},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x7fca2831},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000004},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xff945063},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000002},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xff28a0c6},
-	{0x57,    4,    0,        0, 0x00000001},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xfe51418c},
-	{0x71,    4,    6,       20, 0x00000000},
-	{0x67,    4,    0,        0, 0x00000008},
-	{0x71,    5,    6,       21, 0x00000000},
-	{0x4f,    4,    5,        0, 0x00000000},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x67,    5,    0,        0, 0x00000030},
-	{0xc7,    5,    0,        0, 0x00000020},
-	{0x6d,    5,    3,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xfca28319},
-	{0x67,    4,    0,        0, 0x00000010},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xfe51418c},
+	{0xbf,    7,    5,        0, 0x00000000},
+	{0xa7,    7,    0,        0, 0xfca28319},
+	{0x6d,    2,    4,        1, 0x00000000},
+	{0xbf,    7,    5,        0, 0x00000000},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x40000000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xf9450633},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xf9450633},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x20000000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xf28a0c67},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xf28a0c67},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x10000000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xe51418ce},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xe51418ce},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x08000000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xca28319d},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xca28319d},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x04000000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x9450633b},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x9450633b},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x02000000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x28a0c676},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x28a0c676},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x01000000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x51418ced},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x51418ced},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00800000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xa28319db},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xa28319db},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00400000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x450633b6},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x450633b6},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00200000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x8a0c676c},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x8a0c676c},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00100000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x1418ced8},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x1418ced8},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00080000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x28319db1},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x28319db1},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00040000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x50633b63},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x50633b63},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00020000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xa0c676c6},
-	{0x57,    4,    0,        0, 0x00010000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x418ced8d},
-	{0x71,    3,    6,       22, 0x00000000},
-	{0x67,    3,    0,        0, 0x00000008},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00008000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x8319db1a},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00004000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x0633b634},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xa0c676c6},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00010000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x418ced8d},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00008000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x8319db1a},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00004000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x0633b634},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00002000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x0c676c68},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00001000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x18ced8d1},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000800},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x319db1a3},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000400},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x633b6347},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000200},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xc676c68f},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000100},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x8ced8d1f},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000080},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x19db1a3e},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000040},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x33b6347d},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000020},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x676c68fa},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000010},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xced8d1f4},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000008},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x9db1a3e9},
+	{0x61,    3,    8,       20, 0x00000000},
+	{0xbf,    5,    4,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00000004},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x3b6347d2},
+	{0xdc,    3,    0,        0, 0x00000040},
+	{0xbf,    5,    4,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00000002},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x76c68fa5},
+	{0xc7,    3,    0,        0, 0x00000020},
+	{0x57,    4,    0,        0, 0x00000001},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xed8d1f4a},
+	{0xbf,    5,    7,        0, 0x00000000},
+	{0xa7,    5,    0,        0, 0xdb1a3e94},
+	{0x6d,    2,    3,        1, 0x00000000},
+	{0xbf,    5,    7,        0, 0x00000000},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x40000000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xb6347d28},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x20000000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x6c68fa51},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x10000000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xd8d1f4a3},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x08000000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xb1a3e946},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x04000000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x6347d28d},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x02000000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xc68fa51a},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x01000000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x8d1f4a35},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00800000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x1a3e946b},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00400000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x347d28d7},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00200000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x68fa51ae},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00100000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xd1f4a35c},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00080000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xa3e946b9},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00040000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x47d28d73},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00020000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x8fa51ae7},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00010000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x1f4a35cf},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00008000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x3e946b9e},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00004000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x7d28d73c},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00002000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x0c676c68},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xfa51ae78},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00001000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x18ced8d1},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xf4a35cf1},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00000800},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x319db1a3},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xe946b9e3},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00000400},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x633b6347},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xd28d73c7},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00000200},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xc676c68f},
-	{0x57,    3,    0,        0, 0x00000100},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x8ced8d1f},
-	{0x71,    3,    6,       23, 0x00000000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xa51ae78e},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000100},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x4a35cf1c},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00000080},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x19db1a3e},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x946b9e38},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00000040},
-	{0x79,    5,   10,      -56, 0x00000000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x33b6347d},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x28d73c71},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00000020},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x676c68fa},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x51ae78e3},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00000010},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xced8d1f4},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xa35cf1c6},
 	{0xbf,    4,    3,        0, 0x00000000},
 	{0x57,    4,    0,        0, 0x00000008},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x9db1a3e9},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00000004},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x3b6347d2},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00000002},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x76c68fa5},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x46b9e38d},
+	{0x61,    4,    8,       24, 0x00000000},
+	{0xbf,    6,    3,        0, 0x00000000},
+	{0x57,    6,    0,        0, 0x00000004},
+	{0x15,    6,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x8d73c71b},
+	{0xdc,    4,    0,        0, 0x00000040},
+	{0xbf,    6,    3,        0, 0x00000000},
+	{0x57,    6,    0,        0, 0x00000002},
+	{0x15,    6,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x1ae78e36},
+	{0xc7,    4,    0,        0, 0x00000020},
 	{0x57,    3,    0,        0, 0x00000001},
-	{0x1d,    3,    2,     1177, 0x00000000},
-	{0xa7,    1,    0,        0, 0xed8d1f4a},
-	{0x05,    0,    0,     1175, 0x00000000},
-	{0x0f,    6,    1,        0, 0x00000000},
-	{0xb7,    7,    0,        0, 0x00000000},
-	{0xbf,    1,    6,        0, 0x00000000},
-	{0x07,    1,    0,        0, 0x0000002c},
-	{0x2d,    1,    9,     1202, 0x00000000},
-	{0x61,    4,    6,        8, 0x00000000},
-	{0xbf,    1,    4,        0, 0x00000000},
-	{0x67,    1,    0,        0, 0x00000038},
-	{0xc7,    1,    0,        0, 0x00000020},
-	{0x77,    1,    0,        0, 0x0000001f},
-	{0x57,    1,    0,        0, 0x2cc681d1},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x35cf1c6c},
+	{0xbf,    7,    5,        0, 0x00000000},
+	{0xa7,    7,    0,        0, 0x6b9e38d9},
+	{0x6d,    2,    4,        1, 0x00000000},
+	{0xbf,    7,    5,        0, 0x00000000},
 	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x00000040},
-	{0xb7,    2,    0,        0, 0x00000000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x598d03a2},
+	{0x57,    3,    0,        0, 0x40000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xd73c71b2},
 	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x00000020},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xb31a0745},
+	{0x57,    3,    0,        0, 0x20000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xae78e364},
 	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x00000010},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x66340e8a},
+	{0x57,    3,    0,        0, 0x10000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x5cf1c6c9},
 	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x00000008},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xcc681d15},
+	{0x57,    3,    0,        0, 0x08000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xb9e38d92},
 	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x00000004},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x98d03a2b},
+	{0x57,    3,    0,        0, 0x04000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x73c71b25},
 	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x00000002},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x31a07456},
+	{0x57,    3,    0,        0, 0x02000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xe78e364b},
 	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x00000001},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x6340e8ad},
+	{0x57,    3,    0,        0, 0x01000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xcf1c6c96},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00800000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x9e38d92c},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00400000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x3c71b259},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00200000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x78e364b2},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00100000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xf1c6c964},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00080000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xe38d92c9},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00040000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xc71b2593},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00020000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x8e364b27},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00010000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x1c6c964e},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00008000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xc681d15b},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x38d92c9c},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00004000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x8d03a2b7},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x71b25938},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00002000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x1a07456f},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xe364b270},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00001000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x340e8ade},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xc6c964e0},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00000800},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x681d15bd},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x8d92c9c0},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00000400},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xd03a2b7b},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x1b259380},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00000200},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xa07456f6},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x364b2700},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00000100},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x40e8aded},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x6c964e01},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000080},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xd92c9c03},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000040},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xb2593807},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000020},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x64b2700f},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000010},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xc964e01e},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000008},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x92c9c03d},
+	{0x61,    3,    8,       28, 0x00000000},
+	{0xbf,    5,    4,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00000004},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x2593807a},
+	{0xdc,    3,    0,        0, 0x00000040},
+	{0xbf,    5,    4,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00000002},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x4b2700f4},
+	{0xc7,    3,    0,        0, 0x00000020},
+	{0x57,    4,    0,        0, 0x00000001},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x964e01e8},
+	{0xbf,    5,    7,        0, 0x00000000},
+	{0xa7,    5,    0,        0, 0x2c9c03d1},
+	{0x6d,    2,    3,        1, 0x00000000},
+	{0xbf,    5,    7,        0, 0x00000000},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x40000000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x593807a3},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x20000000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xb2700f46},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x10000000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x64e01e8d},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x08000000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xc9c03d1a},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x04000000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x93807a35},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x02000000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x2700f46b},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x01000000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x4e01e8d6},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00800000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x9c03d1ad},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00400000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x3807a35b},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00200000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x700f46b6},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00100000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xe01e8d6c},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00080000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xc03d1ad9},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00040000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x807a35b3},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00020000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x00f46b66},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00010000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x01e8d6cc},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00008000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x03d1ad99},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00004000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x07a35b32},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00002000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x0f46b665},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00001000},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x1e8d6cca},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000800},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x3d1ad994},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000400},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x7a35b328},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000200},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xf46b6651},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000100},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xe8d6cca2},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000080},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xd1ad9944},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000040},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xa35b3289},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000020},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x46b66512},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000010},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x8d6cca25},
+	{0xbf,    4,    3,        0, 0x00000000},
+	{0x57,    4,    0,        0, 0x00000008},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x1ad9944a},
+	{0x61,    4,    8,       32, 0x00000000},
+	{0xbf,    6,    3,        0, 0x00000000},
+	{0x57,    6,    0,        0, 0x00000004},
+	{0x15,    6,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x35b32894},
+	{0xdc,    4,    0,        0, 0x00000040},
+	{0xbf,    6,    3,        0, 0x00000000},
+	{0x57,    6,    0,        0, 0x00000002},
+	{0x15,    6,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0x6b665129},
+	{0xc7,    4,    0,        0, 0x00000020},
+	{0x57,    3,    0,        0, 0x00000001},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    5,    0,        0, 0xd6cca253},
+	{0xbf,    7,    5,        0, 0x00000000},
+	{0xa7,    7,    0,        0, 0xad9944a7},
+	{0x6d,    2,    4,        1, 0x00000000},
+	{0xbf,    7,    5,        0, 0x00000000},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x40000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x5b32894f},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x20000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xb665129f},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x10000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x6cca253e},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x08000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xd9944a7d},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x04000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xb32894fb},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x02000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x665129f6},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x01000000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xcca253ec},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00800000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x81d15bdb},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x9944a7d9},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00400000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x03a2b7b7},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x32894fb2},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00200000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x07456f6f},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x65129f65},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00100000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x0e8adedf},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xca253eca},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00080000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x1d15bdbf},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x944a7d95},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00040000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x3a2b7b7e},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x2894fb2a},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00020000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x7456f6fd},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x5129f655},
 	{0xbf,    3,    4,        0, 0x00000000},
 	{0x57,    3,    0,        0, 0x00010000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xe8adedfa},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xa253ecab},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00008000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x44a7d956},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00004000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x894fb2ac},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00002000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x129f6558},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00001000},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x253ecab1},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000800},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x4a7d9563},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000400},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x94fb2ac7},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000200},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x29f6558f},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000100},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x53ecab1e},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000080},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xa7d9563d},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000040},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x4fb2ac7a},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000020},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x9f6558f5},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000010},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x3ecab1ea},
+	{0xbf,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x00000008},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0x7d9563d5},
+	{0x61,    3,    8,       36, 0x00000000},
 	{0xbf,    5,    4,        0, 0x00000000},
-	{0x67,    5,    0,        0, 0x00000020},
-	{0xc7,    5,    0,        0, 0x00000020},
-	{0xb7,    3,    0,        0, 0xffffffff},
-	{0x6d,    5,    3,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xd15bdbf4},
+	{0x57,    5,    0,        0, 0x00000004},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xfb2ac7ab},
+	{0xdc,    3,    0,        0, 0x00000040},
 	{0xbf,    5,    4,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00000002},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xf6558f56},
+	{0xc7,    3,    0,        0, 0x00000020},
+	{0x57,    4,    0,        0, 0x00000001},
+	{0x15,    4,    0,        1, 0x00000000},
+	{0xa7,    7,    0,        0, 0xecab1eac},
+	{0xbf,    4,    7,        0, 0x00000000},
+	{0xa7,    4,    0,        0, 0xd9563d59},
+	{0x6d,    2,    3,        1, 0x00000000},
+	{0xbf,    4,    7,        0, 0x00000000},
+	{0xbf,    5,    3,        0, 0x00000000},
 	{0x57,    5,    0,        0, 0x40000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xa2b7b7e9},
-	{0xbf,    5,    4,        0, 0x00000000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xb2ac7ab2},
+	{0xbf,    5,    3,        0, 0x00000000},
 	{0x57,    5,    0,        0, 0x20000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x456f6fd3},
-	{0xbf,    5,    4,        0, 0x00000000},
+	{0x79,    6,   10,      -56, 0x00000000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x6558f564},
+	{0xbf,    5,    3,        0, 0x00000000},
 	{0x57,    5,    0,        0, 0x10000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x8adedfa7},
-	{0xbf,    5,    4,        0, 0x00000000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xcab1eac8},
+	{0xbf,    5,    3,        0, 0x00000000},
 	{0x57,    5,    0,        0, 0x08000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x15bdbf4f},
-	{0xbf,    5,    4,        0, 0x00000000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x9563d590},
+	{0xbf,    5,    3,        0, 0x00000000},
 	{0x57,    5,    0,        0, 0x04000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x2b7b7e9e},
-	{0xbf,    5,    4,        0, 0x00000000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x2ac7ab20},
+	{0xbf,    5,    3,        0, 0x00000000},
 	{0x57,    5,    0,        0, 0x02000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x56f6fd3d},
-	{0x57,    4,    0,        0, 0x01000000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xadedfa7b},
-	{0x61,    4,    6,       12, 0x00000000},
-	{0xbf,    5,    4,        0, 0x00000000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x558f5641},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x01000000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xab1eac83},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00800000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x563d5906},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00400000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xac7ab20c},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00200000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x58f56418},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00100000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xb1eac831},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00080000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x63d59063},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00040000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xc7ab20c7},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00020000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x8f56418f},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00010000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x1eac831e},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00008000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x3d59063c},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00004000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x7ab20c78},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00002000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xf56418f0},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00001000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xeac831e1},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00000800},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xd59063c2},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00000400},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xab20c784},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00000200},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x56418f09},
+	{0xbf,    5,    3,        0, 0x00000000},
+	{0x57,    5,    0,        0, 0x00000100},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xac831e12},
+	{0xbf,    5,    3,        0, 0x00000000},
 	{0x57,    5,    0,        0, 0x00000080},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x5bdbf4f7},
-	{0xbf,    5,    4,        0, 0x00000000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x59063c25},
+	{0xbf,    5,    3,        0, 0x00000000},
 	{0x57,    5,    0,        0, 0x00000040},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xb7b7e9ef},
-	{0xbf,    5,    4,        0, 0x00000000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xb20c784b},
+	{0xbf,    5,    3,        0, 0x00000000},
 	{0x57,    5,    0,        0, 0x00000020},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x6f6fd3df},
-	{0xbf,    5,    4,        0, 0x00000000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x6418f097},
+	{0xbf,    5,    3,        0, 0x00000000},
 	{0x57,    5,    0,        0, 0x00000010},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xdedfa7bf},
-	{0xbf,    5,    4,        0, 0x00000000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0xc831e12f},
+	{0xbf,    5,    3,        0, 0x00000000},
 	{0x57,    5,    0,        0, 0x00000008},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xbdbf4f7f},
-	{0xbf,    5,    4,        0, 0x00000000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x9063c25f},
+	{0xbf,    5,    3,        0, 0x00000000},
 	{0x57,    5,    0,        0, 0x00000004},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x7b7e9eff},
-	{0xbf,    5,    4,        0, 0x00000000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x20c784be},
+	{0xbf,    5,    3,        0, 0x00000000},
 	{0x57,    5,    0,        0, 0x00000002},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xf6fd3dff},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000001},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xedfa7bfe},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00008000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xdbf4f7fc},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00004000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xb7e9eff9},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00002000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x6fd3dff2},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00001000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xdfa7bfe5},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000800},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xbf4f7fca},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000400},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x7e9eff94},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000200},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xfd3dff28},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000100},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xfa7bfe51},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00800000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xf4f7fca2},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00400000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xe9eff945},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00200000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xd3dff28a},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00100000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xa7bfe514},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00080000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x4f7fca28},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00040000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x9eff9450},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00020000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x3dff28a0},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00010000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x7bfe5141},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x67,    5,    0,        0, 0x00000020},
-	{0xc7,    5,    0,        0, 0x00000020},
-	{0x6d,    5,    3,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xf7fca283},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x40000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xeff94506},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x20000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xdff28a0c},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x10000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xbfe51418},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x08000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x7fca2831},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x04000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xff945063},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x02000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xff28a0c6},
-	{0x57,    4,    0,        0, 0x01000000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xfe51418c},
-	{0x61,    4,    6,       16, 0x00000000},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000080},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xfca28319},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000040},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xf9450633},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000020},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xf28a0c67},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000010},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xe51418ce},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000008},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xca28319d},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000004},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x9450633b},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000002},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x28a0c676},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000001},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x51418ced},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00008000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xa28319db},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00004000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x450633b6},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00002000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x8a0c676c},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00001000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x1418ced8},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000800},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x28319db1},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000400},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x50633b63},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000200},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xa0c676c6},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000100},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x418ced8d},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00800000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x8319db1a},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00400000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x0633b634},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00200000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x0c676c68},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00100000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x18ced8d1},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00080000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x319db1a3},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00040000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x633b6347},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00020000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xc676c68f},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00010000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x8ced8d1f},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x67,    5,    0,        0, 0x00000020},
-	{0xc7,    5,    0,        0, 0x00000020},
-	{0x6d,    5,    3,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x19db1a3e},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x40000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x33b6347d},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x20000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x676c68fa},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x10000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xced8d1f4},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x08000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x9db1a3e9},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x04000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x3b6347d2},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x02000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x76c68fa5},
-	{0x57,    4,    0,        0, 0x01000000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xed8d1f4a},
-	{0x61,    4,    6,       20, 0x00000000},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000080},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xdb1a3e94},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000040},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xb6347d28},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000020},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x6c68fa51},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000010},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xd8d1f4a3},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000008},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xb1a3e946},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000004},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x6347d28d},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000002},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xc68fa51a},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000001},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x8d1f4a35},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00008000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x1a3e946b},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00004000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x347d28d7},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00002000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x68fa51ae},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00001000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xd1f4a35c},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000800},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xa3e946b9},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000400},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x47d28d73},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000200},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x8fa51ae7},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000100},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x1f4a35cf},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00800000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x3e946b9e},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00400000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x7d28d73c},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00200000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xfa51ae78},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00100000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xf4a35cf1},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00080000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xe946b9e3},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00040000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xd28d73c7},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00020000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xa51ae78e},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00010000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x4a35cf1c},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x67,    5,    0,        0, 0x00000020},
-	{0xc7,    5,    0,        0, 0x00000020},
-	{0x6d,    5,    3,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x946b9e38},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x40000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x28d73c71},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x20000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x51ae78e3},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x10000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xa35cf1c6},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x08000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x46b9e38d},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x04000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x8d73c71b},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x02000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x1ae78e36},
-	{0x57,    4,    0,        0, 0x01000000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x35cf1c6c},
-	{0x61,    4,    6,       24, 0x00000000},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000080},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x6b9e38d9},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000040},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xd73c71b2},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000020},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xae78e364},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000010},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x5cf1c6c9},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000008},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xb9e38d92},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000004},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x73c71b25},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000002},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xe78e364b},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000001},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xcf1c6c96},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00008000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x9e38d92c},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00004000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x3c71b259},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00002000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x78e364b2},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00001000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xf1c6c964},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000800},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xe38d92c9},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000400},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xc71b2593},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000200},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x8e364b27},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000100},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x1c6c964e},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00800000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x38d92c9c},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00400000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x71b25938},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00200000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xe364b270},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00100000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xc6c964e0},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00080000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x8d92c9c0},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00040000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x1b259380},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00020000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x364b2700},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00010000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x6c964e01},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x67,    5,    0,        0, 0x00000020},
-	{0xc7,    5,    0,        0, 0x00000020},
-	{0x6d,    5,    3,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xd92c9c03},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x40000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xb2593807},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x20000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x64b2700f},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x10000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xc964e01e},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x08000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x92c9c03d},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x04000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x2593807a},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x02000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x4b2700f4},
-	{0x57,    4,    0,        0, 0x01000000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x964e01e8},
-	{0x61,    4,    6,       28, 0x00000000},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000080},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x2c9c03d1},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000040},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x593807a3},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000020},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xb2700f46},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000010},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x64e01e8d},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000008},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xc9c03d1a},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000004},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x93807a35},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000002},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x2700f46b},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000001},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x4e01e8d6},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00008000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x9c03d1ad},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00004000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x3807a35b},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00002000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x700f46b6},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00001000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xe01e8d6c},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000800},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xc03d1ad9},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000400},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x807a35b3},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000200},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x00f46b66},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000100},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x01e8d6cc},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00800000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x03d1ad99},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00400000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x07a35b32},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00200000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x0f46b665},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00100000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x1e8d6cca},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00080000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x3d1ad994},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00040000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x7a35b328},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00020000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xf46b6651},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00010000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xe8d6cca2},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x67,    5,    0,        0, 0x00000020},
-	{0xc7,    5,    0,        0, 0x00000020},
-	{0x6d,    5,    3,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xd1ad9944},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x40000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xa35b3289},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x20000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x46b66512},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x10000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x8d6cca25},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x08000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x1ad9944a},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x04000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x35b32894},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x02000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x6b665129},
-	{0x57,    4,    0,        0, 0x01000000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xd6cca253},
-	{0x61,    4,    6,       32, 0x00000000},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000080},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xad9944a7},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000040},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x5b32894f},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000020},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xb665129f},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000010},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x6cca253e},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000008},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xd9944a7d},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000004},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xb32894fb},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000002},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x665129f6},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000001},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xcca253ec},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00008000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x9944a7d9},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00004000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x32894fb2},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00002000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x65129f65},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00001000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xca253eca},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000800},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x944a7d95},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000400},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x2894fb2a},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000200},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x5129f655},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000100},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xa253ecab},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00800000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x44a7d956},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00400000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x894fb2ac},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00200000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x129f6558},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00100000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x253ecab1},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00080000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x4a7d9563},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00040000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x94fb2ac7},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00020000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x29f6558f},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00010000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x53ecab1e},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x67,    5,    0,        0, 0x00000020},
-	{0xc7,    5,    0,        0, 0x00000020},
-	{0x6d,    5,    3,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xa7d9563d},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x40000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x4fb2ac7a},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x20000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x9f6558f5},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x10000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x3ecab1ea},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x08000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x7d9563d5},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x04000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xfb2ac7ab},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x02000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xf6558f56},
-	{0x57,    4,    0,        0, 0x01000000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xecab1eac},
-	{0x61,    4,    6,       36, 0x00000000},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000080},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xd9563d59},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000040},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xb2ac7ab2},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000020},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x6558f564},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000010},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xcab1eac8},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000008},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x9563d590},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000004},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x2ac7ab20},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000002},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x558f5641},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000001},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xab1eac83},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00008000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x563d5906},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00004000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xac7ab20c},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00002000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x58f56418},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00001000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xb1eac831},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000800},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x63d59063},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000400},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xc7ab20c7},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000200},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x8f56418f},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00000100},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x1eac831e},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00800000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x3d59063c},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00400000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x7ab20c78},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00200000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xf56418f0},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00100000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xeac831e1},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00080000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xd59063c2},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00040000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xab20c784},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00020000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x56418f09},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x00010000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xac831e12},
-	{0xbf,    5,    4,        0, 0x00000000},
+	{0x15,    5,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x418f097c},
+	{0x57,    3,    0,        0, 0x00000001},
+	{0x15,    3,    0,        1, 0x00000000},
+	{0xa7,    4,    0,        0, 0x831e12f9},
+	{0xbf,    5,    1,        0, 0x00000000},
 	{0x67,    5,    0,        0, 0x00000020},
 	{0xc7,    5,    0,        0, 0x00000020},
-	{0x6d,    5,    3,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x59063c25},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x40000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xb20c784b},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x20000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x6418f097},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x10000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xc831e12f},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x08000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x9063c25f},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x04000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x20c784be},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x57,    5,    0,        0, 0x02000000},
-	{0x1d,    5,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x418f097c},
-	{0x57,    4,    0,        0, 0x01000000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x831e12f9},
-	{0x71,    4,    6,       40, 0x00000000},
-	{0x67,    4,    0,        0, 0x00000008},
-	{0x71,    5,    6,       41, 0x00000000},
-	{0x4f,    4,    5,        0, 0x00000000},
-	{0xbf,    5,    4,        0, 0x00000000},
-	{0x67,    5,    0,        0, 0x00000030},
-	{0xc7,    5,    0,        0, 0x00000020},
-	{0x6d,    5,    3,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x063c25f3},
-	{0x67,    4,    0,        0, 0x00000010},
-	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x40000000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x0c784be7},
-	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x20000000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x18f097cf},
-	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x10000000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x31e12f9f},
-	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x08000000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x63c25f3f},
-	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x04000000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xc784be7f},
-	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x02000000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x8f097cff},
-	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x01000000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x1e12f9fe},
-	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x00800000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x3c25f3fc},
-	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x00400000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x784be7f8},
-	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x00200000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xf097cff0},
-	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x00100000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xe12f9fe0},
-	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x00080000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xc25f3fc1},
 	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x00040000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x84be7f83},
+	{0xa7,    3,    0,        0, 0x063c25f3},
+	{0x6d,    2,    5,        1, 0x00000000},
 	{0xbf,    3,    4,        0, 0x00000000},
-	{0x57,    3,    0,        0, 0x00020000},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x097cff07},
-	{0x57,    4,    0,        0, 0x00010000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x12f9fe0f},
-	{0x71,    3,    6,       42, 0x00000000},
-	{0x67,    3,    0,        0, 0x00000008},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00008000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x25f3fc1f},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00004000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x4be7f83f},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00002000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x97cff07f},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00001000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x2f9fe0fe},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00000800},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x5f3fc1fd},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00000400},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xbe7f83fb},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00000200},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x7cff07f7},
-	{0x57,    3,    0,        0, 0x00000100},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xf9fe0fee},
-	{0x71,    3,    6,       43, 0x00000000},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00000080},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xf3fc1fdc},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00000040},
-	{0x79,    5,   10,      -56, 0x00000000},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xe7f83fb8},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00000020},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xcff07f70},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00000010},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x9fe0fee1},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00000008},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x3fc1fdc2},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00000004},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0x7f83fb85},
-	{0xbf,    4,    3,        0, 0x00000000},
-	{0x57,    4,    0,        0, 0x00000002},
-	{0x1d,    4,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xff07f70a},
-	{0x57,    3,    0,        0, 0x00000001},
-	{0x1d,    3,    2,        1, 0x00000000},
-	{0xa7,    1,    0,        0, 0xfe0fee15},
-	{0x71,    2,    0,      201, 0x00000000},
-	{0x67,    2,    0,        0, 0x00000008},
-	{0x71,    3,    0,      200, 0x00000000},
-	{0x4f,    2,    3,        0, 0x00000000},
-	{0x71,    3,    0,      203, 0x00000000},
-	{0x67,    3,    0,        0, 0x00000008},
-	{0x71,    4,    0,      202, 0x00000000},
-	{0x4f,    3,    4,        0, 0x00000000},
-	{0x67,    3,    0,        0, 0x00000010},
-	{0x4f,    3,    2,        0, 0x00000000},
-	{0x67,    1,    0,        0, 0x00000020},
-	{0x77,    1,    0,        0, 0x00000020},
 	{0xbf,    2,    1,        0, 0x00000000},
-	{0x3f,    2,    3,        0, 0x00000000},
-	{0x2f,    2,    3,        0, 0x00000000},
-	{0x1f,    1,    2,        0, 0x00000000},
-	{0x57,    1,    0,        0, 0x0000000f},
-	{0x67,    1,    0,        0, 0x00000002},
-	{0x0f,    0,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x40000000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x0c784be7},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x20000000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x18f097cf},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x10000000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x31e12f9f},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x08000000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x63c25f3f},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x04000000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xc784be7f},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x02000000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x8f097cff},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x01000000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x1e12f9fe},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00800000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x3c25f3fc},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00400000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x784be7f8},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00200000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xf097cff0},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00100000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xe12f9fe0},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00080000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xc25f3fc1},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00040000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x84be7f83},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00020000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x097cff07},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00010000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x12f9fe0f},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00008000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x25f3fc1f},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00004000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x4be7f83f},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00002000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x97cff07f},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00001000},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x2f9fe0fe},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000800},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x5f3fc1fd},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000400},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xbe7f83fb},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000200},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x7cff07f7},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000100},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xf9fe0fee},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000080},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xf3fc1fdc},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000040},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xe7f83fb8},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000020},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xcff07f70},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000010},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x9fe0fee1},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000008},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x3fc1fdc2},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000004},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0x7f83fb85},
+	{0xbf,    2,    1,        0, 0x00000000},
+	{0x57,    2,    0,        0, 0x00000002},
+	{0x15,    2,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xff07f70a},
+	{0x57,    1,    0,        0, 0x00000001},
+	{0x15,    1,    0,        1, 0x00000000},
+	{0xa7,    3,    0,        0, 0xfe0fee15},
+	{0x71,    1,    0,      201, 0x00000000},
+	{0x67,    1,    0,        0, 0x00000008},
+	{0x71,    2,    0,      200, 0x00000000},
+	{0x4f,    1,    2,        0, 0x00000000},
+	{0x71,    2,    0,      202, 0x00000000},
+	{0x67,    2,    0,        0, 0x00000010},
+	{0x71,    4,    0,      203, 0x00000000},
+	{0x67,    4,    0,        0, 0x00000018},
+	{0x4f,    4,    2,        0, 0x00000000},
+	{0x4f,    4,    1,        0, 0x00000000},
+	{0x67,    3,    0,        0, 0x00000020},
+	{0x77,    3,    0,        0, 0x00000020},
+	{0x9f,    3,    4,        0, 0x00000000},
+	{0x57,    3,    0,        0, 0x0000000f},
+	{0x67,    3,    0,        0, 0x00000002},
+	{0x0f,    0,    3,        0, 0x00000000},
 	{0x71,    1,    0,      137, 0x00000000},
 	{0x67,    1,    0,        0, 0x00000008},
 	{0x71,    2,    0,      136, 0x00000000},
 	{0x4f,    1,    2,        0, 0x00000000},
 	{0x71,    2,    0,      138, 0x00000000},
+	{0x67,    2,    0,        0, 0x00000010},
 	{0x71,    3,    0,      139, 0x00000000},
-	{0x67,    3,    0,        0, 0x00000008},
+	{0x67,    3,    0,        0, 0x00000018},
 	{0x4f,    3,    2,        0, 0x00000000},
-	{0x67,    3,    0,        0, 0x00000010},
 	{0x4f,    3,    1,        0, 0x00000000},
 	{0x07,    3,    0,        0, 0x7cafe800},
-	{0x63,    5,    3,       52, 0x00000000},
+	{0x63,    6,    3,       52, 0x00000000},
 	{0xb7,    7,    0,        0, 0x00000001},
 	{0xbf,    0,    7,        0, 0x00000000},
 	{0x95,    0,    0,        0, 0x00000000},
diff --git a/drivers/net/tap/tap_bpf_program.c b/drivers/net/tap/tap_bpf_program.c
index 20c310e5e7..d9bb65831a 100644
--- a/drivers/net/tap/tap_bpf_program.c
+++ b/drivers/net/tap/tap_bpf_program.c
@@ -131,6 +131,8 @@ rss_l3_l4(struct __sk_buff *skb)
 	__u8 *key = 0;
 	__u32 len;
 	__u32 queue = 0;
+	bool mf = 0;
+	__u16 frag_off = 0;
 
 	rsskey = map_lookup_elem(&map_keys, &key_idx);
 	if (!rsskey) {
@@ -155,6 +157,8 @@ rss_l3_l4(struct __sk_buff *skb)
 			return TC_ACT_OK;
 
 		__u8 *src_dst_addr = data + off + offsetof(struct iphdr, saddr);
+		__u8 *frag_off_addr = data + off + offsetof(struct iphdr, frag_off);
+		__u8 *prot_addr = data + off + offsetof(struct iphdr, protocol);
 		__u8 *src_dst_port = data + off + sizeof(struct iphdr);
 		struct ipv4_l3_l4_tuple v4_tuple = {
 			.src_addr = IPv4(*(src_dst_addr + 0),
@@ -165,11 +169,25 @@ rss_l3_l4(struct __sk_buff *skb)
 					*(src_dst_addr + 5),
 					*(src_dst_addr + 6),
 					*(src_dst_addr + 7)),
-			.sport = PORT(*(src_dst_port + 0),
-					*(src_dst_port + 1)),
-			.dport = PORT(*(src_dst_port + 2),
-					*(src_dst_port + 3)),
+			.sport = 0,
+			.dport = 0,
 		};
+		/** Fetch the L4-payer port numbers only in-case of TCP/UDP
+		 ** and also if the packet is not fragmented. Since fragmented
+		 ** chunks do not have L4 TCP/UDP header.
+		 **/
+		if (*prot_addr == IPPROTO_UDP || *prot_addr == IPPROTO_TCP) {
+			frag_off = PORT(*(frag_off_addr + 0),
+					*(frag_off_addr + 1));
+			mf = frag_off & 0x2000;
+			frag_off = frag_off & 0x1fff;
+			if (mf == 0 && frag_off == 0) {
+				v4_tuple.sport = PORT(*(src_dst_port + 0),
+						*(src_dst_port + 1));
+				v4_tuple.dport = PORT(*(src_dst_port + 2),
+						*(src_dst_port + 3));
+			}
+		}
 		__u8 input_len = sizeof(v4_tuple) / sizeof(__u32);
 		if (rsskey->hash_fields & (1 << HASH_FIELD_IPV4_L3))
 			input_len--;
@@ -182,6 +200,9 @@ rss_l3_l4(struct __sk_buff *skb)
 					offsetof(struct ipv6hdr, saddr);
 		__u8 *src_dst_port = data + off +
 					sizeof(struct ipv6hdr);
+		__u8 *next_hdr = data + off +
+					offsetof(struct ipv6hdr, nexthdr);
+
 		struct ipv6_l3_l4_tuple v6_tuple;
 		for (j = 0; j < 4; j++)
 			*((uint32_t *)&v6_tuple.src_addr + j) =
@@ -191,10 +212,18 @@ rss_l3_l4(struct __sk_buff *skb)
 			*((uint32_t *)&v6_tuple.dst_addr + j) =
 				__builtin_bswap32(*((uint32_t *)
 						src_dst_addr + 4 + j));
-		v6_tuple.sport = PORT(*(src_dst_port + 0),
-			      *(src_dst_port + 1));
-		v6_tuple.dport = PORT(*(src_dst_port + 2),
-			      *(src_dst_port + 3));
+
+		/** Fetch the L4 header port-numbers only if next-header
+		 * is TCP/UDP **/
+		if (*next_hdr == IPPROTO_UDP || *next_hdr == IPPROTO_TCP) {
+			v6_tuple.sport = PORT(*(src_dst_port + 0),
+				      *(src_dst_port + 1));
+			v6_tuple.dport = PORT(*(src_dst_port + 2),
+				      *(src_dst_port + 3));
+		} else {
+			v6_tuple.sport = 0;
+			v6_tuple.dport = 0;
+		}
 
 		__u8 input_len = sizeof(v6_tuple) / sizeof(__u32);
 		if (rsskey->hash_fields & (1 << HASH_FIELD_IPV6_L3))
-- 
2.25.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2023-12-11 17:56:24.621232800 +0800
+++ 0046-net-tap-fix-RSS-for-fragmented-packets.patch	2023-12-11 17:56:22.987652300 +0800
@@ -1 +1 @@
-From db6a3ddb166bb53ac7929e4b5c4cad94f6fa6871 Mon Sep 17 00:00:00 2001
+From 81410056f5ab7eacd0b91b6a708f9aca535c4a7a Mon Sep 17 00:00:00 2001
@@ -4,0 +5,3 @@
+Cc: Xueming Li <xuemingl@nvidia.com>
+
+[ upstream commit db6a3ddb166bb53ac7929e4b5c4cad94f6fa6871 ]
@@ -25 +27,0 @@
-Cc: stable@dpdk.org
@@ -31,2 +33,2 @@
- drivers/net/tap/bpf/tap_bpf_program.c |   45 +-
- drivers/net/tap/tap_bpf_insns.h       | 2959 +++++++++++++------------
+ drivers/net/tap/tap_bpf_insns.h   | 2959 +++++++++++++++--------------
+ drivers/net/tap/tap_bpf_program.c |   45 +-
@@ -35,85 +36,0 @@
-diff --git a/drivers/net/tap/bpf/tap_bpf_program.c b/drivers/net/tap/bpf/tap_bpf_program.c
-index d65021d8a1..f05aed021c 100644
---- a/drivers/net/tap/bpf/tap_bpf_program.c
-+++ b/drivers/net/tap/bpf/tap_bpf_program.c
-@@ -133,6 +133,8 @@ rss_l3_l4(struct __sk_buff *skb)
- 	__u8 *key = 0;
- 	__u32 len;
- 	__u32 queue = 0;
-+	bool mf = 0;
-+	__u16 frag_off = 0;
- 
- 	rsskey = map_lookup_elem(&map_keys, &key_idx);
- 	if (!rsskey) {
-@@ -157,6 +159,8 @@ rss_l3_l4(struct __sk_buff *skb)
- 			return TC_ACT_OK;
- 
- 		__u8 *src_dst_addr = data + off + offsetof(struct iphdr, saddr);
-+		__u8 *frag_off_addr = data + off + offsetof(struct iphdr, frag_off);
-+		__u8 *prot_addr = data + off + offsetof(struct iphdr, protocol);
- 		__u8 *src_dst_port = data + off + sizeof(struct iphdr);
- 		struct ipv4_l3_l4_tuple v4_tuple = {
- 			.src_addr = IPv4(*(src_dst_addr + 0),
-@@ -167,11 +171,25 @@ rss_l3_l4(struct __sk_buff *skb)
- 					*(src_dst_addr + 5),
- 					*(src_dst_addr + 6),
- 					*(src_dst_addr + 7)),
--			.sport = PORT(*(src_dst_port + 0),
--					*(src_dst_port + 1)),
--			.dport = PORT(*(src_dst_port + 2),
--					*(src_dst_port + 3)),
-+			.sport = 0,
-+			.dport = 0,
- 		};
-+		/** Fetch the L4-payer port numbers only in-case of TCP/UDP
-+		 ** and also if the packet is not fragmented. Since fragmented
-+		 ** chunks do not have L4 TCP/UDP header.
-+		 **/
-+		if (*prot_addr == IPPROTO_UDP || *prot_addr == IPPROTO_TCP) {
-+			frag_off = PORT(*(frag_off_addr + 0),
-+					*(frag_off_addr + 1));
-+			mf = frag_off & 0x2000;
-+			frag_off = frag_off & 0x1fff;
-+			if (mf == 0 && frag_off == 0) {
-+				v4_tuple.sport = PORT(*(src_dst_port + 0),
-+						*(src_dst_port + 1));
-+				v4_tuple.dport = PORT(*(src_dst_port + 2),
-+						*(src_dst_port + 3));
-+			}
-+		}
- 		__u8 input_len = sizeof(v4_tuple) / sizeof(__u32);
- 		if (rsskey->hash_fields & (1 << HASH_FIELD_IPV4_L3))
- 			input_len--;
-@@ -184,6 +202,9 @@ rss_l3_l4(struct __sk_buff *skb)
- 					offsetof(struct ipv6hdr, saddr);
- 		__u8 *src_dst_port = data + off +
- 					sizeof(struct ipv6hdr);
-+		__u8 *next_hdr = data + off +
-+					offsetof(struct ipv6hdr, nexthdr);
-+
- 		struct ipv6_l3_l4_tuple v6_tuple;
- 		for (j = 0; j < 4; j++)
- 			*((uint32_t *)&v6_tuple.src_addr + j) =
-@@ -193,10 +214,18 @@ rss_l3_l4(struct __sk_buff *skb)
- 			*((uint32_t *)&v6_tuple.dst_addr + j) =
- 				__builtin_bswap32(*((uint32_t *)
- 						src_dst_addr + 4 + j));
--		v6_tuple.sport = PORT(*(src_dst_port + 0),
--			      *(src_dst_port + 1));
--		v6_tuple.dport = PORT(*(src_dst_port + 2),
--			      *(src_dst_port + 3));
-+
-+		/** Fetch the L4 header port-numbers only if next-header
-+		 * is TCP/UDP **/
-+		if (*next_hdr == IPPROTO_UDP || *next_hdr == IPPROTO_TCP) {
-+			v6_tuple.sport = PORT(*(src_dst_port + 0),
-+				      *(src_dst_port + 1));
-+			v6_tuple.dport = PORT(*(src_dst_port + 2),
-+				      *(src_dst_port + 3));
-+		} else {
-+			v6_tuple.sport = 0;
-+			v6_tuple.dport = 0;
-+		}
- 
- 		__u8 input_len = sizeof(v6_tuple) / sizeof(__u32);
- 		if (rsskey->hash_fields & (1 << HASH_FIELD_IPV6_L3))
@@ -3295,0 +3213,85 @@
+diff --git a/drivers/net/tap/tap_bpf_program.c b/drivers/net/tap/tap_bpf_program.c
+index 20c310e5e7..d9bb65831a 100644
+--- a/drivers/net/tap/tap_bpf_program.c
++++ b/drivers/net/tap/tap_bpf_program.c
+@@ -131,6 +131,8 @@ rss_l3_l4(struct __sk_buff *skb)
+ 	__u8 *key = 0;
+ 	__u32 len;
+ 	__u32 queue = 0;
++	bool mf = 0;
++	__u16 frag_off = 0;
+ 
+ 	rsskey = map_lookup_elem(&map_keys, &key_idx);
+ 	if (!rsskey) {
+@@ -155,6 +157,8 @@ rss_l3_l4(struct __sk_buff *skb)
+ 			return TC_ACT_OK;
+ 
+ 		__u8 *src_dst_addr = data + off + offsetof(struct iphdr, saddr);
++		__u8 *frag_off_addr = data + off + offsetof(struct iphdr, frag_off);
++		__u8 *prot_addr = data + off + offsetof(struct iphdr, protocol);
+ 		__u8 *src_dst_port = data + off + sizeof(struct iphdr);
+ 		struct ipv4_l3_l4_tuple v4_tuple = {
+ 			.src_addr = IPv4(*(src_dst_addr + 0),
+@@ -165,11 +169,25 @@ rss_l3_l4(struct __sk_buff *skb)
+ 					*(src_dst_addr + 5),
+ 					*(src_dst_addr + 6),
+ 					*(src_dst_addr + 7)),
+-			.sport = PORT(*(src_dst_port + 0),
+-					*(src_dst_port + 1)),
+-			.dport = PORT(*(src_dst_port + 2),
+-					*(src_dst_port + 3)),
++			.sport = 0,
++			.dport = 0,
+ 		};
++		/** Fetch the L4-payer port numbers only in-case of TCP/UDP
++		 ** and also if the packet is not fragmented. Since fragmented
++		 ** chunks do not have L4 TCP/UDP header.
++		 **/
++		if (*prot_addr == IPPROTO_UDP || *prot_addr == IPPROTO_TCP) {
++			frag_off = PORT(*(frag_off_addr + 0),
++					*(frag_off_addr + 1));
++			mf = frag_off & 0x2000;
++			frag_off = frag_off & 0x1fff;
++			if (mf == 0 && frag_off == 0) {
++				v4_tuple.sport = PORT(*(src_dst_port + 0),
++						*(src_dst_port + 1));
++				v4_tuple.dport = PORT(*(src_dst_port + 2),
++						*(src_dst_port + 3));
++			}
++		}
+ 		__u8 input_len = sizeof(v4_tuple) / sizeof(__u32);
+ 		if (rsskey->hash_fields & (1 << HASH_FIELD_IPV4_L3))
+ 			input_len--;
+@@ -182,6 +200,9 @@ rss_l3_l4(struct __sk_buff *skb)
+ 					offsetof(struct ipv6hdr, saddr);
+ 		__u8 *src_dst_port = data + off +
+ 					sizeof(struct ipv6hdr);
++		__u8 *next_hdr = data + off +
++					offsetof(struct ipv6hdr, nexthdr);
++
+ 		struct ipv6_l3_l4_tuple v6_tuple;
+ 		for (j = 0; j < 4; j++)
+ 			*((uint32_t *)&v6_tuple.src_addr + j) =
+@@ -191,10 +212,18 @@ rss_l3_l4(struct __sk_buff *skb)
+ 			*((uint32_t *)&v6_tuple.dst_addr + j) =
+ 				__builtin_bswap32(*((uint32_t *)
+ 						src_dst_addr + 4 + j));
+-		v6_tuple.sport = PORT(*(src_dst_port + 0),
+-			      *(src_dst_port + 1));
+-		v6_tuple.dport = PORT(*(src_dst_port + 2),
+-			      *(src_dst_port + 3));
++
++		/** Fetch the L4 header port-numbers only if next-header
++		 * is TCP/UDP **/
++		if (*next_hdr == IPPROTO_UDP || *next_hdr == IPPROTO_TCP) {
++			v6_tuple.sport = PORT(*(src_dst_port + 0),
++				      *(src_dst_port + 1));
++			v6_tuple.dport = PORT(*(src_dst_port + 2),
++				      *(src_dst_port + 3));
++		} else {
++			v6_tuple.sport = 0;
++			v6_tuple.dport = 0;
++		}
+ 
+ 		__u8 input_len = sizeof(v6_tuple) / sizeof(__u32);
+ 		if (rsskey->hash_fields & (1 << HASH_FIELD_IPV6_L3))

  parent reply	other threads:[~2023-12-11 10:17 UTC|newest]

Thread overview: 266+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-22 14:20 patch " Xueming Li
2023-10-22 14:20 ` patch 'ci: fix race on container image name' " Xueming Li
2023-10-22 14:20 ` patch 'mempool: fix default ops for an empty mempool' " Xueming Li
2023-10-22 14:20 ` patch 'eal/unix: fix firmware reading with external xz helper' " Xueming Li
2023-10-22 14:20 ` patch 'rawdev: fix device class in log message' " Xueming Li
2023-10-22 14:20 ` patch 'net/bonding: fix header for C++' " Xueming Li
2023-10-22 14:20 ` patch 'net/sfc: set max Rx packet length for representors' " Xueming Li
2023-10-22 14:20 ` patch 'net/sfc: account for data offset on Tx' " Xueming Li
2023-10-22 14:20 ` patch 'net/sfc: add missing error code indication to MAE init path' " Xueming Li
2023-10-22 14:20 ` patch 'net/nfp: fix control message packets' " Xueming Li
2023-10-22 14:20 ` patch 'net/hns3: fix VF default MAC modified when set failed' " Xueming Li
2023-10-22 14:20 ` patch 'net/hns3: fix error code for multicast resource' " Xueming Li
2023-10-22 14:20 ` patch 'net/hns3: fix flushing multicast MAC address' " Xueming Li
2023-10-22 14:20 ` patch 'net/hns3: fix traffic management thread safety' " Xueming Li
2023-10-22 14:20 ` patch 'net/hns3: fix traffic management dump text alignment' " Xueming Li
2023-10-22 14:20 ` patch 'app/test: fix reference to master in bonding test' " Xueming Li
2023-10-22 14:20 ` patch 'net/mana: enable 32-bit build' " Xueming Li
2023-10-22 14:20 ` patch 'net/mana: add 32-bit short doorbell' " Xueming Li
2023-10-22 14:20 ` patch 'net/hns3: fix order in NEON Rx' " Xueming Li
2023-10-22 14:20 ` patch 'random: initialize state for unregistered non-EAL threads' " Xueming Li
2023-10-22 14:20 ` patch 'bus/dpaa: fix build with asserts for GCC 13' " Xueming Li
2023-10-22 14:20 ` patch 'gpu/cuda: fix build with external GDRCopy' " Xueming Li
2023-10-22 14:20 ` patch 'mem: fix deadlock with multiprocess' " Xueming Li
2023-10-22 14:20 ` patch 'hash: align SSE lookup to scalar implementation' " Xueming Li
2023-10-22 14:20 ` patch 'net/netvsc: increase VSP response timeout to 60 seconds' " Xueming Li
2023-10-22 14:20 ` patch 'net/txgbe: add Tx queue maximum limit' " Xueming Li
2023-10-22 14:20 ` patch 'net/txgbe: fix GRE tunnel packet checksum' " Xueming Li
2023-10-22 14:20 ` patch 'net/ngbe: fix flow control' " Xueming Li
2023-10-22 14:20 ` patch 'net/ngbe: prevent NIC from slowing down link speed' " Xueming Li
2023-10-22 14:20 ` patch 'net/txgbe: reconfigure MAC Rx when link update' " Xueming Li
2023-10-22 14:20 ` patch 'net/ngbe: " Xueming Li
2023-10-22 14:21 ` patch 'net/txgbe: keep link down after device close' " Xueming Li
2023-10-22 14:21 ` patch 'net/ngbe: " Xueming Li
2023-10-22 14:21 ` patch 'net/txgbe: check process type in close operation' " Xueming Li
2023-10-22 14:21 ` patch 'net/ngbe: " Xueming Li
2023-10-22 14:21 ` patch 'net/tap: use MAC address parse API instead of local parser' " Xueming Li
2023-10-22 14:21 ` patch 'net/gve: fix max MTU limit' " Xueming Li
2023-10-23 22:01   ` Joshua Washington
2023-10-24  7:51     ` Xueming(Steven) Li
2023-10-22 14:21 ` patch 'app/testpmd: fix help string' " Xueming Li
2023-10-22 14:21 ` patch 'test: fix named test macro' " Xueming Li
2023-10-22 14:21 ` patch 'cryptodev: add missing doc for security context' " Xueming Li
2023-10-22 14:21 ` patch 'crypto/dpaa2_sec: fix debug prints' " Xueming Li
2023-10-22 14:21 ` patch 'crypto/dpaa_sec: " Xueming Li
2023-10-22 14:21 ` patch 'doc: replace code blocks with includes in security guide' " Xueming Li
2023-10-22 14:21 ` patch 'test/security: fix IPv6 next header field' " Xueming Li
2023-10-22 14:21 ` patch 'test/crypto: fix IV in some vectors' " Xueming Li
2023-10-22 14:21 ` patch 'test/crypto: skip some synchronous tests with CPU crypto' " Xueming Li
2023-10-22 14:21 ` patch 'test/crypto: fix return value for GMAC case' " Xueming Li
2023-10-22 14:21 ` patch 'test/crypto: fix typo in asym tests' " Xueming Li
2023-10-22 14:21 ` patch 'crypto/qat: fix raw API null algorithm digest' " Xueming Li
2023-10-22 14:21 ` patch 'crypto/cnxk: fix IPsec CCM and GCM capabilities' " Xueming Li
2023-10-22 14:21 ` patch 'crypto/ipsec_mb: add dependency check for cross build' " Xueming Li
2023-10-22 14:21 ` patch 'eventdev: fix symbol export for port maintenance' " Xueming Li
2023-10-22 14:21 ` patch 'bus/pci: fix device ID log' " Xueming Li
2023-10-22 14:21 ` patch 'eventdev: fix alignment padding' " Xueming Li
2023-10-22 14:21 ` patch 'event/cnxk: fix getwork mode devargs parsing' " Xueming Li
2023-10-22 14:21 ` patch 'event/cnxk: fix CASP usage for clang' " Xueming Li
2023-10-22 14:21 ` patch 'eventdev/crypto: fix circular buffer full case' " Xueming Li
2023-10-22 14:21 ` patch 'event/cnxk: fix return values for capability API' " Xueming Li
2023-10-22 14:21 ` patch 'test/event: fix crypto null device creation' " Xueming Li
2023-10-22 14:21 ` patch 'event/sw: remove obsolete comment' " Xueming Li
2023-10-22 14:21 ` patch 'event/cnxk: fix context flush in port cleanup' " Xueming Li
2023-10-22 14:21 ` patch 'eventdev/eth_rx: fix timestamp field register in mbuf' " Xueming Li
2023-10-22 14:21 ` patch 'event/sw: fix ordering corruption with op release' " Xueming Li
2023-10-22 14:21 ` patch 'common/cnxk: fix default flow action setting' " Xueming Li
2023-10-22 14:21 ` patch 'common/cnxk: fix xstats for different packet sizes' " Xueming Li
2023-10-22 14:21 ` patch 'common/cnxk: fix different size bit operations' " Xueming Li
2023-10-22 14:21 ` patch 'common/cnxk: fix incorrect aura ID' " Xueming Li
2023-10-22 14:21 ` patch 'net/cnxk: fix uninitialized variable' " Xueming Li
2023-10-22 14:21 ` patch 'common/cnxk: fix DPI memzone name' " Xueming Li
2023-10-22 14:21 ` patch 'dma/cnxk: fix device state' " Xueming Li
2023-10-22 14:21 ` patch 'dma/cnxk: fix device reconfigure' " Xueming Li
2023-10-22 14:21 ` patch 'dma/cnxk: fix chunk buffer failure return code' " Xueming Li
2023-10-22 14:21 ` patch 'mempool/cnxk: fix free from non-EAL threads' " Xueming Li
2023-10-22 14:21 ` patch 'mempool/cnxk: fix alloc " Xueming Li
2023-10-22 14:21 ` patch 'common/cnxk: fix aura disable handling' " Xueming Li
2023-10-22 14:21 ` patch 'common/cnxk: fix RSS key configuration' " Xueming Li
2023-10-22 14:21 ` patch 'common/cnxk: remove dead Meson code' " Xueming Li
2023-10-22 14:21 ` patch 'common/cnxk: replace direct API usage in REE' " Xueming Li
2023-10-22 14:21 ` patch 'vdpa/mlx5: fix unregister kick handler order' " Xueming Li
2023-10-22 14:21 ` patch 'baseband/acc: fix ACC100 HARQ input alignment' " Xueming Li
2023-10-22 14:21 ` patch 'app/bbdev: fix link with NXP LA12XX' " Xueming Li
2023-10-22 14:21 ` patch 'net/i40e: fix FDIR queue receives broadcast packets' " Xueming Li
2023-10-22 14:21 ` patch 'net/ice: write timestamp to first segment in scattered Rx' " Xueming Li
2023-10-22 14:21 ` patch 'net/iavf: fix VLAN offload strip flag' " Xueming Li
2023-10-22 14:21 ` patch 'net/iavf: fix checksum offloading' " Xueming Li
2023-10-22 14:21 ` patch 'net/i40e: fix buffer leak on Rx reconfiguration' " Xueming Li
2023-10-22 14:21 ` patch 'net/ice: fix TM configuration clearing' " Xueming Li
2023-10-22 14:21 ` patch 'net/iavf: fix port stats " Xueming Li
2023-10-22 14:21 ` patch 'net/iavf: unregister interrupt handler before FD close' " Xueming Li
2023-10-22 14:21 ` patch 'net/iavf: fix ESN session update' " Xueming Li
2023-10-22 14:21 ` patch 'net/ice: fix initial link status' " Xueming Li
2023-10-22 14:22 ` patch 'net/iavf: fix Tx debug' " Xueming Li
2023-10-22 14:22 ` patch 'net/iavf: remove log from Tx prepare function' " Xueming Li
2023-10-22 14:22 ` patch 'net/iavf: fix TSO with big segments' " Xueming Li
2023-10-22 14:22 ` patch 'net/ice: remove log from Tx prepare function' " Xueming Li
2023-10-22 14:22 ` patch 'net/ice: fix TSO with big segments' " Xueming Li
2023-10-22 14:22 ` patch 'net/axgbe: identify CPU with cpuid' " Xueming Li
2023-10-22 14:22 ` patch 'net/ark: support single function with multiple port' " Xueming Li
2023-10-22 14:22 ` patch 'net/nfp: fix initialization of physical representors' " Xueming Li
2023-10-22 14:22 ` patch 'net/mlx5: fix leak in sysfs port name translation' " Xueming Li
2023-10-22 14:22 ` patch 'common/mlx5: replace use of PMD log type' " Xueming Li
2023-10-22 14:22 ` patch 'net/mlx5: fix jump ipool entry size' " Xueming Li
2023-10-22 14:22 ` patch 'net/mlx5/hws: fix field copy bind' " Xueming Li
2023-10-22 14:22 ` patch 'fib: fix adding default route overwriting entire table' " Xueming Li
2023-10-22 14:22 ` patch 'fib6: fix adding default route as first route' " Xueming Li
2023-10-22 14:22 ` patch 'net/mana: add missing new line to data path logs' " Xueming Li
2023-10-22 14:22 ` patch 'net/af_packet: fix Rx and Tx queue state' " Xueming Li
2023-10-22 14:22 ` patch 'net/af_xdp: " Xueming Li
2023-10-22 14:22 ` patch 'net/avp: " Xueming Li
2023-10-22 14:22 ` patch 'net/bnx2x: " Xueming Li
2023-10-22 14:22 ` patch 'net/bnxt: " Xueming Li
2023-10-22 14:22 ` patch 'net/bonding: " Xueming Li
2023-10-22 14:22 ` patch 'net/cxgbe: " Xueming Li
2023-10-22 14:22 ` patch 'net/dpaa: " Xueming Li
2023-10-22 14:22 ` patch 'net/dpaa2: " Xueming Li
2023-10-22 14:22 ` patch 'net/e1000: " Xueming Li
2023-10-22 14:22 ` patch 'net/ena: " Xueming Li
2023-10-22 14:22 ` patch 'net/enetc: " Xueming Li
2023-10-22 14:22 ` patch 'net/enic: " Xueming Li
2023-10-22 14:22 ` patch 'net/hinic: " Xueming Li
2023-10-22 14:22 ` patch 'net/ipn3ke: " Xueming Li
2023-10-22 14:22 ` patch 'net/memif: " Xueming Li
2023-10-22 14:22 ` patch 'net/mlx4: " Xueming Li
2023-10-22 14:22 ` patch 'net/mvneta: " Xueming Li
2023-10-22 14:22 ` patch 'net/mvpp2: " Xueming Li
2023-10-22 14:22 ` patch 'net/nfp: " Xueming Li
2023-10-22 14:22 ` patch 'net/ngbe: " Xueming Li
2023-10-22 14:22 ` patch 'net/null: " Xueming Li
2023-10-22 14:22 ` patch 'net/octeon_ep: " Xueming Li
2023-10-22 14:22 ` patch 'net/octeontx: " Xueming Li
2023-10-22 14:22 ` patch 'net/pfe: " Xueming Li
2023-10-22 14:22 ` patch 'net/ring: " Xueming Li
2023-10-22 14:22 ` patch 'net/sfc: " Xueming Li
2023-10-22 14:22 ` patch 'net/softnic: " Xueming Li
2023-10-22 14:22 ` patch 'net/txgbe: " Xueming Li
2023-10-22 14:22 ` patch 'net/vhost: " Xueming Li
2023-10-22 14:22 ` patch 'net/virtio: " Xueming Li
2023-10-22 14:22 ` patch 'net/vmxnet3: " Xueming Li
2023-10-22 14:22 ` patch 'app/testpmd: fix primary process not polling all queues' " Xueming Li
2023-10-22 14:22 ` patch 'net/bonding: fix link status callback stop' " Xueming Li
2023-10-22 14:22 ` patch 'ethdev: add check in async flow action query' " Xueming Li
2023-10-22 14:22 ` patch 'app/procinfo: remove unnecessary rte_malloc' " Xueming Li
2023-12-11 10:10 ` patch " Xueming Li
2023-12-11 10:10   ` patch 'bus/ifpga: fix driver header dependency' " Xueming Li
2023-12-11 10:10   ` patch 'malloc: remove return from void functions' " Xueming Li
2023-12-11 10:10   ` patch 'eventdev: fix device pointer for vdev-based devices' " Xueming Li
2023-12-11 10:10   ` patch 'eventdev: fix missing driver names in info struct' " Xueming Li
2023-12-11 10:10   ` patch 'net/virtio: fix missing next flag in Tx packed ring' " Xueming Li
2023-12-11 10:10   ` patch 'net/virtio: fix link state interrupt vector setting' " Xueming Li
2023-12-11 10:10   ` patch 'vhost: fix missing vring call check on virtqueue access' " Xueming Li
2023-12-11 10:10   ` patch 'vhost: fix missing " Xueming Li
2023-12-11 10:10   ` patch 'vhost: fix check on virtqueue access in async registration' " Xueming Li
2023-12-11 10:10   ` patch 'vhost: fix check on virtqueue access in in-flight getter' " Xueming Li
2023-12-11 10:10   ` patch 'vhost: fix missing lock protection in power monitor API' " Xueming Li
2023-12-11 10:10   ` patch 'vhost: fix checking virtqueue access in stats " Xueming Li
2023-12-11 10:10   ` patch 'common/cnxk: fix pool buffer size in opaque mode' " Xueming Li
2023-12-11 10:10   ` patch 'net/cnxk: fix data offset in vector Tx' " Xueming Li
2023-12-11 10:10   ` patch 'net/nfp: fix crash on close' " Xueming Li
2023-12-11 10:10   ` patch 'ethdev: fix function name in comment' " Xueming Li
2023-12-11 10:10   ` patch 'net/gve: update max Rx packet length to be based on MTU' " Xueming Li
2023-12-11 10:10   ` patch 'app/testpmd: fix early exit from signal' " Xueming Li
2023-12-11 10:10   ` patch 'net/hns3: fix typo in function name' " Xueming Li
2023-12-11 10:10   ` patch 'net/hns3: fix unchecked Rx free threshold' " Xueming Li
2023-12-11 10:10   ` patch 'net/hns3: fix double stats for IMP and global reset' " Xueming Li
2023-12-11 10:10   ` patch 'net/hns3: remove reset log in secondary' " Xueming Li
2023-12-11 10:10   ` patch 'net/hns3: fix multiple reset detected log' " Xueming Li
2023-12-11 10:10   ` patch 'net/hns3: fix IMP or global reset' " Xueming Li
2023-12-11 10:10   ` patch 'net/hns3: refactor interrupt state query' " Xueming Li
2023-12-11 10:10   ` patch 'net/nfp: fix reconfigure logic in PF initialization' " Xueming Li
2023-12-11 10:10   ` patch 'net/nfp: fix reconfigure logic in VF " Xueming Li
2023-12-11 10:10   ` patch 'test/bonding: remove unreachable statement' " Xueming Li
2023-12-11 10:10   ` patch 'test/bonding: add missing check' " Xueming Li
2023-12-11 10:10   ` patch 'net/bonding: fix possible overrun' " Xueming Li
2023-12-11 10:10   ` patch 'net/txgbe: add proper memory barriers in Rx' " Xueming Li
2023-12-11 10:10   ` patch 'net/ngbe: " Xueming Li
2023-12-11 10:10   ` patch 'ethdev: fix 32-bit build with GCC 13' " Xueming Li
2023-12-11 10:10   ` patch 'net/enic: avoid extra unlock in MTU set' " Xueming Li
2023-12-11 10:11   ` patch 'net/hns3: fix setting DCB capability' " Xueming Li
2023-12-11 10:11   ` patch 'net/hns3: fix LRO offload to report' " Xueming Li
2023-12-11 10:11   ` patch 'net/hns3: fix some return values' " Xueming Li
2023-12-11 10:11   ` patch 'net/hns3: fix some error logs' " Xueming Li
2023-12-11 10:11   ` patch 'net/hns3: keep set/get algo key functions local' " Xueming Li
2023-12-11 10:11   ` patch 'net/hns3: fix uninitialized hash algo value' " Xueming Li
2023-12-11 10:11   ` patch 'net/tap: fix L4 checksum offloading' " Xueming Li
2023-12-11 10:11   ` patch 'net/tap: fix IPv4 " Xueming Li
2023-12-11 10:11   ` patch 'app/procinfo: fix RSS info' " Xueming Li
2023-12-11 10:11   ` patch 'app/procinfo: adjust format of " Xueming Li
2023-12-11 10:11   ` patch 'net/nfp: fix DMA error after abnormal exit' " Xueming Li
2023-12-11 10:11   ` Xueming Li [this message]
2023-12-11 10:11   ` patch 'net/mlx5: fix decap action checking in sample flow' " Xueming Li
2023-12-11 10:11   ` patch 'net/mlx5: fix NIC flow capability query' " Xueming Li
2023-12-11 10:11   ` patch 'net/mlx5: fix E-Switch mirror flow rule validation' " Xueming Li
2023-12-11 10:11   ` patch 'net/mlx5: fix flow thread safety flag for HWS' " Xueming Li
2023-12-11 10:11   ` patch 'net/mlx5/hws: fix integrity bits level' " Xueming Li
2023-12-11 10:11   ` patch 'net/mlx5: fix flow workspace double free in Windows' " Xueming Li
2023-12-11 10:11   ` patch 'common/mlx5: fix controller index parsing' " Xueming Li
2023-12-11 10:11   ` patch 'net/ice: fix L1 check interval' " Xueming Li
2023-12-11 10:11   ` patch 'net/iavf: fix Tx offload mask' " Xueming Li
2023-12-11 10:11   ` patch 'net/iavf: fix indent in Tx path' " Xueming Li
2023-12-11 10:11   ` patch 'net/iavf: fix Tx offload flags check' " Xueming Li
2023-12-11 10:11   ` patch 'net/ice: fix DCF port statistics' " Xueming Li
2023-12-11 10:11   ` patch 'doc: update kernel module entry in QAT guide' " Xueming Li
2023-12-11 10:11   ` patch 'crypto/nitrox: fix panic with high number of segments' " Xueming Li
2023-12-11 10:11   ` patch 'net/iavf: fix Tx preparation' " Xueming Li
2023-12-11 10:11   ` patch 'net/ice: " Xueming Li
2023-12-11 10:11   ` patch 'config/arm: fix aarch32 build with GCC 13' " Xueming Li
2023-12-11 10:11   ` patch 'build: add libarchive to optional external dependencies' " Xueming Li
2023-12-11 10:11   ` patch 'bus/pci: add PASID control' " Xueming Li
2023-12-11 10:11   ` patch 'event/dlb2: disable PASID' " Xueming Li
2023-12-11 10:11   ` patch 'app/dumpcap: fix mbuf pool ring type' " Xueming Li
2023-12-11 10:11   ` patch 'event/dlb2: fix name check in self-test' " Xueming Li
2023-12-11 10:11   ` patch 'baseband/acc: fix TB mode on VRB1' " Xueming Li
2023-12-11 10:11   ` patch 'test/bbdev: fix Python script subprocess' " Xueming Li
2023-12-11 10:11   ` patch 'test/bbdev: assert failed test for queue configure' " Xueming Li
2023-12-11 10:11   ` patch 'net/ice: fix crash on closing representor ports' " Xueming Li
2023-12-11 10:11   ` patch 'common/cnxk: fix SDP channel mask' " Xueming Li
2023-12-11 10:11   ` patch 'event/dlb2: fix missing queue ordering capability flag' " Xueming Li
2023-12-11 10:11   ` patch 'meter: fix RFC4115 trTCM API Doxygen' " Xueming Li
2023-12-11 10:11   ` patch 'net/sfc: remove null dereference in log' " Xueming Li
2023-12-11 10:11   ` patch 'app/testpmd: remove useless check in TSO command' " Xueming Li
2023-12-11 10:11   ` patch 'ethdev: account for smaller MTU when setting default' " Xueming Li
2023-12-11 10:11   ` patch 'test/bonding: fix uninitialized RSS configuration' " Xueming Li
2023-12-11 10:11   ` patch 'net/hns3: fix mailbox sync' " Xueming Li
2023-12-11 10:11   ` patch 'app/testpmd: fix tunnel TSO capability check' " Xueming Li
2023-12-11 10:11   ` patch 'app/testpmd: add explicit check for tunnel TSO' " Xueming Li
2023-12-11 10:11   ` patch 'app/testpmd: fix tunnel TSO configuration' " Xueming Li
2023-12-11 10:11   ` patch 'net/mlx5: fix unlock mismatch' " Xueming Li
2023-12-11 10:11   ` patch 'net/mlx5: fix validation of sample encap flow action' " Xueming Li
2023-12-11 10:11   ` patch 'net/mlx5: fix counter query during port close' " Xueming Li
2023-12-11 10:11   ` patch 'net/mlx5: fix missing flow rules for external SQ' " Xueming Li
2023-12-11 10:11   ` patch 'net/mlx5: fix destroying external representor flow' " Xueming Li
2023-12-11 10:11   ` patch 'net/mlx5: fix use after free on Rx queue start' " Xueming Li
2023-12-11 10:11   ` patch 'net/mlx5: fix hairpin queue unbind' " Xueming Li
2023-12-11 10:11   ` patch 'net/mlx5: fix hairpin queue states' " Xueming Li
2023-12-11 10:11   ` patch 'net/mlx5: fix multi-segment Tx inline data length' " Xueming Li
2023-12-11 10:11   ` patch 'net/mlx5: fix shared Rx queue list management' " Xueming Li
2023-12-11 10:11   ` patch 'net/mlx5: zero UDP checksum over IPv4 in encapsulation' " Xueming Li
2023-12-11 10:12   ` patch 'net/mlx5: fix MPRQ stride size check' " Xueming Li
2023-12-11 10:12   ` patch 'eal/riscv: fix vector type alignment' " Xueming Li
2023-12-11 10:12   ` patch 'net/txgbe: fix out of bound access' " Xueming Li
2023-12-11 10:12   ` patch 'doc: fix hns3 build option about max queue number' " Xueming Li
2023-12-11 10:12   ` patch 'doc: update features in hns3 guide' " Xueming Li
2023-12-11 10:12   ` patch 'doc: fix RSS flow description " Xueming Li
2023-12-11 10:12   ` patch 'doc: update versions recommendations for i40e and ice' " Xueming Li
2023-12-11 10:12   ` patch 'net/mlx5: fix offset size in conntrack flow action' " Xueming Li
2023-12-11 10:12   ` patch 'examples/ipsec-secgw: fix partial overflow' " Xueming Li
2023-12-11 10:12   ` patch 'config: fix RISC-V native build' " Xueming Li
2023-12-11 10:12   ` patch 'eal/windows: fix build with recent MinGW' " Xueming Li
2023-12-11 10:12   ` patch 'pdump: fix error number on IPC response' " Xueming Li
2023-12-11 10:12   ` patch 'app/dumpcap: allow multiple invocations' " Xueming Li
2023-12-11 10:12   ` patch 'examples/ethtool: fix pause configuration' " Xueming Li
2023-12-11 10:12   ` patch 'usertools/pmdinfo: fix usage typos' " Xueming Li
2023-12-11 10:12   ` patch 'test/hash: fix creation error log' " Xueming Li
2023-12-11 10:12   ` patch 'app/pipeline: add sigint handler' " Xueming Li
2023-12-11 10:12   ` patch 'doc: remove restriction on ixgbe vector support' " Xueming Li
2023-12-11 10:12   ` patch 'doc: fix some ordered lists' " Xueming Li
2023-12-11 10:12   ` patch 'doc: remove number of commands in vDPA guide' " Xueming Li
2023-12-11 10:12   ` patch 'mempool: fix get function documentation' " Xueming Li
2023-12-11 10:12   ` patch 'mempool: clarify enqueue/dequeue ops " Xueming Li
2023-12-11 10:12   ` patch 'ethdev: fix ESP packet type description' " Xueming Li
2023-12-11 10:12   ` patch 'net/hns3: fix ignored reset event' " Xueming Li
2023-12-11 10:12   ` patch 'net/hns3: fix reset event status' " Xueming Li
2023-12-11 10:12   ` patch 'net/hns3: fix VF reset handler interruption' " Xueming Li
2023-12-11 10:12   ` patch 'event/dlb2: fix disable PASID' " Xueming Li

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231211101226.2122-47-xuemingl@nvidia.com \
    --to=xuemingl@nvidia.com \
    --cc=ferruh.yigit@amd.com \
    --cc=madhuker.mythri@oracle.com \
    --cc=stable@dpdk.org \
    --cc=stephen@networkplumber.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).