From patchwork Thu Aug 30 14:27:03 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sameeh Jubran X-Patchwork-Id: 10581931 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 142CF174A for ; Thu, 30 Aug 2018 14:52:48 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 038382C02D for ; Thu, 30 Aug 2018 14:52:48 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id EBF3A2C030; Thu, 30 Aug 2018 14:52:47 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 632CE2C02D for ; Thu, 30 Aug 2018 14:52:47 +0000 (UTC) Received: from localhost ([::1]:49364 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fvOJS-0007N0-Ld for patchwork-qemu-devel@patchwork.kernel.org; Thu, 30 Aug 2018 10:52:46 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33383) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fvOAP-0004cp-EB for qemu-devel@nongnu.org; Thu, 30 Aug 2018 10:43:29 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fvNum-0003ap-Vv for qemu-devel@nongnu.org; Thu, 30 Aug 2018 10:27:21 -0400 Received: from mail-wm0-x241.google.com ([2a00:1450:400c:c09::241]:54504) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fvNum-0003Z1-Mf for qemu-devel@nongnu.org; Thu, 30 Aug 2018 10:27:16 -0400 Received: by mail-wm0-x241.google.com with SMTP id c14-v6so2210868wmb.4 for ; Thu, 30 Aug 2018 07:27:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=ra19++ZsUD4WMunUCjVWXSiPqzNPU/Ti3fkLDHeWq6E=; b=te9ua5mUgrumnEU8m8HAicTp4rWFsEzRSv7x4d8tqUDhPpYY7iLqEppKxMOu3JsYwG 47WJm6HckYik+Fzk+l44dqnU4xPzlLons3hzyk/nzsp/s2JyE5tJpVQZ0OMSqHkLD1bp m2zdU/osTWiTUxSUfeMStYK/tIC3ExorSWkiMMSNsi/loGZzjU0TwG7o3/Ca0r3VJPmB G0EBTcDAnGRzq2jOaXFZaFtIK1dzpeiT0R2LKfkphUlPr1zy1TRD8sTFZUlHDSaPLdZ9 R/7kei490ewzZq4bCiRzVMPvIE7qZqepRcD7ANtnHZwl3gy04JXkbWeK6oO+49ztgLDZ opYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=ra19++ZsUD4WMunUCjVWXSiPqzNPU/Ti3fkLDHeWq6E=; b=lTtgGrLjPtGAfuBAb0ttCl9dLomOdSaRlfrZ/wUbd4SVVOV0sAiNAGGy+BrQAAVNG4 ppBBkX+j1SDDfqrNo1O6xwXQTi+uh26Y8Bw58gc7k9p1m7nnHtAbLdM/fb3Q8/+Ss5SZ wIFrUZ1vRcPgZrwdTiPUlG9ROXBitk1i3vbxaLLRIYLsgXGj/1L6TeDXdEfRiY/z2W9G x+4VwSJtrPpaF3rUOC1ykywZH0JMKj0VzKjl/eQWnNDtdWuLE1BU9hKSr5vBP1BoOFUZ Nj5GoTtXs4JxCk6Qm1F1yGX28FDFcy2lXyZTiJj/cSv1l9UNZ+PJf9sDnRwuJIlrMcLD o7EQ== X-Gm-Message-State: APzg51DTPIy6Y6ARTTeyKqPO5PUHsrR5GLoa2BNvpOAa3SuZA5y0TSxR Tq94PplUuOhJC9md0uxzPVnwefGWN1A= X-Google-Smtp-Source: ANB0Vdb5RuKeflwouwW57fHegRbLd0ZGdqigd3gJCHtTuhFdEMHJR2uQVO9Niwh7xLK2Si5P8it4BA== X-Received: by 2002:a1c:b707:: with SMTP id h7-v6mr1903462wmf.91.1535639235484; Thu, 30 Aug 2018 07:27:15 -0700 (PDT) Received: from bark.daynix ([141.226.163.173]) by smtp.gmail.com with ESMTPSA id t4-v6sm10483893wrb.45.2018.08.30.07.27.14 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 30 Aug 2018 07:27:14 -0700 (PDT) From: Sameeh Jubran To: qemu-devel@nongnu.org, Jason Wang Date: Thu, 30 Aug 2018 17:27:03 +0300 Message-Id: <20180830142708.14311-2-sameeh@daynix.com> X-Mailer: git-send-email 2.13.6 In-Reply-To: <20180830142708.14311-1-sameeh@daynix.com> References: <20180830142708.14311-1-sameeh@daynix.com> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::241 Subject: [Qemu-devel] [RFC 1/6] Add bpf support to qemu X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Yan Vugenfirer Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP From: Sameeh Jubran This commit adds the bpf header provided by Linux to Qemu. Signed-off-by: Sameeh Jubran --- MAINTAINERS | 5 +++++ configure | 44 +++++++++++++++++++++++++++++++++++++++++ scripts/update-linux-headers.sh | 8 ++++++-- 3 files changed, 55 insertions(+), 2 deletions(-) diff --git a/MAINTAINERS b/MAINTAINERS index 0fb5f38f9f..bf2619239c 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -2126,6 +2126,11 @@ F: hw/rdma/* F: hw/rdma/vmw/* F: docs/pvrdma.txt +BPF +M: Sameeh Jubran +S: Maintained +F: linux-headers/linux/bpf.h + Build and test automation ------------------------- Build and test automation diff --git a/configure b/configure index a8c4094c87..21edaf59aa 100755 --- a/configure +++ b/configure @@ -348,6 +348,7 @@ libattr="" xfs="" tcg="yes" membarrier="" +bpf="no" vhost_net="no" vhost_crypto="no" vhost_scsi="no" @@ -1173,6 +1174,10 @@ for opt do ;; --enable-membarrier) membarrier="yes" ;; + --disable-bpf) bpf="no" + ;; + --enable-bpf) bpf="yes" + ;; --disable-blobs) blobs="no" ;; --with-pkgversion=*) pkgversion="$optarg" @@ -1593,6 +1598,7 @@ disabled with --disable-FEATURE, default is enabled if available: brlapi BrlAPI (Braile) curl curl connectivity membarrier membarrier system call (for Linux 4.14+ or Windows) + bpf bpf system calls (for Linux 3.18+) fdt fdt device tree bluez bluez stack connectivity kvm KVM acceleration support @@ -5232,6 +5238,38 @@ else fi ########################################## +# check for usable bpf system call +if test "$bpf" = "yes"; then + have_bpf=no + if test "$linux" = "yes" ; then + cat > $TMPC << EOF + #include + #include "linux/bpf.h" + #include + #include + #include + int main(void) { + union bpf_attr * attr = NULL; + syscall(__NR_bpf, BPF_PROG_LOAD, attr, sizeof(attr)); + exit(0); + } +EOF + bpf_include="-Iinclude/standard-headers/linux" + bpf_cflags="" + bpf_libs="" + if compile_prog "$bpf_include" "$bpf_libs" ; then + have_bpf=yes + fi + fi + if test "$have_bpf" = "no"; then + feature_not_found "bpf" "libelf libs are not available or else \ +the bpf system call is not available" + fi +else + bpf=no +fi + +########################################## # check if rtnetlink.h exists and is useful have_rtnetlink=no cat > $TMPC << EOF @@ -5871,6 +5909,7 @@ echo "malloc trim support $malloc_trim" echo "RDMA support $rdma" echo "fdt support $fdt" echo "membarrier $membarrier" +echo "bpf $bpf" echo "preadv support $preadv" echo "fdatasync $fdatasync" echo "madvise $madvise" @@ -6365,6 +6404,11 @@ fi if test "$membarrier" = "yes" ; then echo "CONFIG_MEMBARRIER=y" >> $config_host_mak fi +if test "$bpf" = "yes" ; then + echo "CONFIG_BPF=y" >> $config_host_mak + echo "LIBS_BPF=$bpf_libs" >> $config_host_mak + echo "CFLAGS_BPF=$bpf_cflags" >> $config_host_mak +fi if test "$signalfd" = "yes" ; then echo "CONFIG_SIGNALFD=y" >> $config_host_mak fi diff --git a/scripts/update-linux-headers.sh b/scripts/update-linux-headers.sh index feb75390aa..57df8228af 100755 --- a/scripts/update-linux-headers.sh +++ b/scripts/update-linux-headers.sh @@ -35,6 +35,8 @@ cp_portable() { grep '#include' "$f" | grep -v -e 'linux/virtio' \ -e 'linux/types' \ -e 'stdint' \ + -e 'stdio' \ + -e 'stdbool' \ -e 'linux/if_ether' \ -e 'input-event-codes' \ -e 'sys/' \ @@ -44,6 +46,7 @@ cp_portable() { -e 'linux/kernel' \ -e 'linux/sysinfo' \ -e 'asm-generic/kvm_para' \ + -e 'linux/bpf' \ > /dev/null then echo "Unexpected #include in input file $f". @@ -58,7 +61,7 @@ cp_portable() { -e 's/__le\([0-9][0-9]*\)/uint\1_t/g' \ -e 's/__be\([0-9][0-9]*\)/uint\1_t/g' \ -e 's/"\(input-event-codes\.h\)"/"standard-headers\/linux\/\1"/' \ - -e 's/]*\)>/"standard-headers\/linux\/\1"/' \ + -e 's/]*(?!bpf)\)>/"standard-headers\/linux\/\1"/' \ -e 's/__bitwise//' \ -e 's/__attribute__((packed))/QEMU_PACKED/' \ -e 's/__inline__/inline/' \ @@ -126,7 +129,8 @@ done rm -rf "$output/linux-headers/linux" mkdir -p "$output/linux-headers/linux" for header in kvm.h vfio.h vfio_ccw.h vhost.h \ - psci.h psp-sev.h userfaultfd.h; do + psci.h psp-sev.h userfaultfd.h \ + bpf.h; do cp "$tmpdir/include/linux/$header" "$output/linux-headers/linux" done From patchwork Thu Aug 30 14:27:04 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sameeh Jubran X-Patchwork-Id: 10581935 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 8FBE9175A for ; Thu, 30 Aug 2018 14:54:21 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 7DC572BEFD for ; Thu, 30 Aug 2018 14:54:21 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 71FF42C02F; Thu, 30 Aug 2018 14:54:21 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id D665A2BEFD for ; Thu, 30 Aug 2018 14:54:20 +0000 (UTC) Received: from localhost ([::1]:49371 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fvOKy-0000e3-7I for patchwork-qemu-devel@patchwork.kernel.org; Thu, 30 Aug 2018 10:54:20 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33671) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fvOAP-0005sc-Ak for qemu-devel@nongnu.org; Thu, 30 Aug 2018 10:43:30 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fvNur-0003dc-67 for qemu-devel@nongnu.org; Thu, 30 Aug 2018 10:27:22 -0400 Received: from mail-wm0-x242.google.com ([2a00:1450:400c:c09::242]:54505) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fvNup-0003bk-3x for qemu-devel@nongnu.org; Thu, 30 Aug 2018 10:27:20 -0400 Received: by mail-wm0-x242.google.com with SMTP id c14-v6so2210970wmb.4 for ; Thu, 30 Aug 2018 07:27:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=AGoanAXucW5UPvxe2b/l6nbTMS9BmIpRS5YUu0y2DFU=; b=j/2PUgUPxVRtq7gHIHUSmNGXWGHcj5xgcuuFdtJy/jKzC88V+Nlokq8XIcmkneFDOh xzjrqZN3pfCdmaKy5Kj+jvj4h9FnFqSvNsGmSbOflNwKnKk+j2ICHREvkoUbMpkWHUW2 7JpEnlz6BSEdDAvlLwruzIXXEoCTjpmJFRRGU5ZK2xrvA2k5erhXK/yNa537rsTfZxsU An4caJsTWrgR4gsGrcNIRT4CkBosk4miHEi93ypeehcJzdFFet7Hha6hLJnL86FCexlL lwbtvnlSasGcUqmtdAR2k5CCsb8HY0pTf73RxVmFQn66MCwXaHiQuUMecCmSGJhzPy5C BsrA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=AGoanAXucW5UPvxe2b/l6nbTMS9BmIpRS5YUu0y2DFU=; b=HwWP0WC742IvXZ3oDhgtYiFfFl0GsBnq16KI6SqNW3R+iTSDVMJfCK/Q2jN1tP8cfO PXrL/Lebl0r2245AajJ2Yl5zS6k2iH1b/PZ6gduz7GYjPMH2ttzn7Cn5PB20Vi0zymoT akL6PUFDG62mAJ96GxIg0Xk+e8oMSFwAnOBRfb3lqtQa0aYhtTGNimxGR/B3Unfxr5gE F5/MdPqrlfHWMwCvk2MFQku2PHRAecoAcka/y/d3974w28oo0NrQEwr1puBS6D7cAxYH +r5B/TJ3YnRm0CQqVe0CRqNmZSBwY0ojhzUQjmN03XnUPKtkdtnWmsnkmIAYoVE7C1Ns nkbQ== X-Gm-Message-State: APzg51BpmYqYJftx/JgCBNWQ4AeZHW3Aw4d5OnkmfQfhlJA/MvDJdGsR vTzIr6zSjJKHL7QF6WORBqkZFXNYTlQ= X-Google-Smtp-Source: ANB0VdZ7puMWF+bZgIdf94mffihxZMj3Kjj8sEjxATgsACww0mEwIGQ+Tu6IP+S1Pko0/vNs5dJspQ== X-Received: by 2002:a1c:68f:: with SMTP id 137-v6mr2083812wmg.82.1535639236721; Thu, 30 Aug 2018 07:27:16 -0700 (PDT) Received: from bark.daynix ([141.226.163.173]) by smtp.gmail.com with ESMTPSA id t4-v6sm10483893wrb.45.2018.08.30.07.27.15 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 30 Aug 2018 07:27:16 -0700 (PDT) From: Sameeh Jubran To: qemu-devel@nongnu.org, Jason Wang Date: Thu, 30 Aug 2018 17:27:04 +0300 Message-Id: <20180830142708.14311-3-sameeh@daynix.com> X-Mailer: git-send-email 2.13.6 In-Reply-To: <20180830142708.14311-1-sameeh@daynix.com> References: <20180830142708.14311-1-sameeh@daynix.com> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::242 Subject: [Qemu-devel] [RFC 2/6] tap: Add support for bpf ioctls X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Yan Vugenfirer Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP From: Sameeh Jubran Starting from kernel v4.16 tun device supports TUNSETSTEERINGEBPF and TUNSETFILTEREBPF. Signed-off-by: Sameeh Jubran --- include/net/net.h | 3 ++- net/tap-bsd.c | 5 +++++ net/tap-linux.c | 29 ++++++++++++++++++++++++++++- net/tap-linux.h | 3 ++- net/tap-solaris.c | 5 +++++ net/tap-stub.c | 5 +++++ net/tap.c | 8 ++++++++ net/tap_int.h | 1 + qapi/net.json | 11 +++++++++++ 9 files changed, 67 insertions(+), 3 deletions(-) diff --git a/include/net/net.h b/include/net/net.h index 1425960f76..e7d1baac10 100644 --- a/include/net/net.h +++ b/include/net/net.h @@ -39,7 +39,6 @@ typedef struct NICConf { DEFINE_PROP_MACADDR("mac", _state, _conf.macaddr), \ DEFINE_PROP_NETDEV("netdev", _state, _conf.peers) - /* Net clients */ typedef void (NetPoll)(NetClientState *, bool enable); @@ -60,6 +59,7 @@ typedef int (SetVnetLE)(NetClientState *, bool); typedef int (SetVnetBE)(NetClientState *, bool); typedef struct SocketReadState SocketReadState; typedef void (SocketReadStateFinalize)(SocketReadState *rs); +typedef int (SetBPFFilter)(NetClientState *, int, BPFType); typedef struct NetClientInfo { NetClientDriver type; @@ -80,6 +80,7 @@ typedef struct NetClientInfo { SetVnetHdrLen *set_vnet_hdr_len; SetVnetLE *set_vnet_le; SetVnetBE *set_vnet_be; + SetBPFFilter *set_bpf_filter; } NetClientInfo; struct NetClientState { diff --git a/net/tap-bsd.c b/net/tap-bsd.c index 6c9692263d..fccf17bad0 100644 --- a/net/tap-bsd.c +++ b/net/tap-bsd.c @@ -259,3 +259,8 @@ int tap_fd_get_ifname(int fd, char *ifname) { return -1; } + +int tap_fd_load_bpf(int fd, int bpf_fd, BPFType type) +{ + return -1; +} diff --git a/net/tap-linux.c b/net/tap-linux.c index 535b1ddb61..e8ee54f3b3 100644 --- a/net/tap-linux.c +++ b/net/tap-linux.c @@ -305,7 +305,8 @@ int tap_fd_get_ifname(int fd, char *ifname) { struct ifreq ifr; - if (ioctl(fd, TUNGETIFF, &ifr) != 0) { + if (ioctl(fd, TUNGETIFF, &ifr) != 0) + { error_report("TUNGETIFF ioctl() failed: %s", strerror(errno)); return -1; @@ -314,3 +315,29 @@ int tap_fd_get_ifname(int fd, char *ifname) pstrcpy(ifname, sizeof(ifr.ifr_name), ifr.ifr_name); return 0; } + + +int tap_fd_load_bpf(int fd, int bpf_fd, BPFType type) +{ + int ioctl_num = 0; + switch (type) + { + case BPF_TYPE_FILTER: + ioctl_num = TUNSETFILTEREBPF; + break; + + case BPF_TYPE_STEERING: + ioctl_num = TUNSETSTEERINGEBPF; + break; + + default: + error_report("Unknown bpf_type"); + return -1; + } + + if (ioctl(fd, ioctl_num, &bpf_fd) != 0) { + error_report("#%d ioctl() failed: %s", ioctl_num, strerror(errno)); + return -1; + } + return 0; +} diff --git a/net/tap-linux.h b/net/tap-linux.h index 2f36d100fc..7348169fc2 100644 --- a/net/tap-linux.h +++ b/net/tap-linux.h @@ -31,7 +31,8 @@ #define TUNSETQUEUE _IOW('T', 217, int) #define TUNSETVNETLE _IOW('T', 220, int) #define TUNSETVNETBE _IOW('T', 222, int) - +#define TUNSETSTEERINGEBPF _IOR('T', 224, int) +#define TUNSETFILTEREBPF _IOR('T', 225, int) #endif /* TUNSETIFF ifr flags */ diff --git a/net/tap-solaris.c b/net/tap-solaris.c index a2a92356c1..a5a6248c7d 100644 --- a/net/tap-solaris.c +++ b/net/tap-solaris.c @@ -254,3 +254,8 @@ int tap_fd_get_ifname(int fd, char *ifname) { return -1; } + +int tap_fd_load_bpf(int fd, int bpf_fd, BPFType type) +{ + return -1; +} diff --git a/net/tap-stub.c b/net/tap-stub.c index a9ab8f8293..d059a32435 100644 --- a/net/tap-stub.c +++ b/net/tap-stub.c @@ -85,3 +85,8 @@ int tap_fd_get_ifname(int fd, char *ifname) { return -1; } + +int tap_fd_load_bpf(int fd, int bpf_fd, BPFType type) +{ + return -1; +} diff --git a/net/tap.c b/net/tap.c index 2126f4882d..ee98fecd40 100644 --- a/net/tap.c +++ b/net/tap.c @@ -342,6 +342,13 @@ int tap_get_fd(NetClientState *nc) return s->fd; } +static int tap_set_bpf_filter(NetClientState *nc, int bpf_fd, BPFType type) +{ + TAPState *s = DO_UPCAST(TAPState, nc, nc); + assert(nc->info->type == NET_CLIENT_DRIVER_TAP); + return tap_fd_load_bpf(s->fd, bpf_fd, type); +} + /* fd support */ static NetClientInfo net_tap_info = { @@ -360,6 +367,7 @@ static NetClientInfo net_tap_info = { .set_vnet_hdr_len = tap_set_vnet_hdr_len, .set_vnet_le = tap_set_vnet_le, .set_vnet_be = tap_set_vnet_be, + .set_bpf_filter = tap_set_bpf_filter, }; static TAPState *net_tap_fd_init(NetClientState *peer, diff --git a/net/tap_int.h b/net/tap_int.h index 9f931d52d6..3e1603a88e 100644 --- a/net/tap_int.h +++ b/net/tap_int.h @@ -45,5 +45,6 @@ int tap_fd_set_vnet_be(int fd, int vnet_is_be); int tap_fd_enable(int fd); int tap_fd_disable(int fd); int tap_fd_get_ifname(int fd, char *ifname); +int tap_fd_load_bpf(int fd, int bpf_fd, BPFType type); #endif /* NET_TAP_INT_H */ diff --git a/qapi/net.json b/qapi/net.json index 6b7d93cb59..ce0a688444 100644 --- a/qapi/net.json +++ b/qapi/net.json @@ -692,3 +692,14 @@ ## { 'event': 'NIC_RX_FILTER_CHANGED', 'data': { '*name': 'str', 'path': 'str' } } + +## +# @BPFType: +# +# BPF programs types provided as an argument for tap bpf ioctls +# +# Since: 2.12 +# +## +{ 'enum': 'BPFType', + 'data': [ 'filter', 'steering' ] } From patchwork Thu Aug 30 14:27:05 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sameeh Jubran X-Patchwork-Id: 10581925 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 19C20174A for ; Thu, 30 Aug 2018 14:49:44 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 069C02BFF4 for ; Thu, 30 Aug 2018 14:49:44 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id EE79A2BFF6; Thu, 30 Aug 2018 14:49:43 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 97D972BFF4 for ; Thu, 30 Aug 2018 14:49:43 +0000 (UTC) Received: from localhost ([::1]:49342 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fvOGU-0004YY-7b for patchwork-qemu-devel@patchwork.kernel.org; Thu, 30 Aug 2018 10:49:42 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33438) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fvOAP-0005A2-CK for qemu-devel@nongnu.org; Thu, 30 Aug 2018 10:43:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fvNur-0003dW-5k for qemu-devel@nongnu.org; Thu, 30 Aug 2018 10:27:22 -0400 Received: from mail-wr1-x444.google.com ([2a00:1450:4864:20::444]:44185) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fvNup-0003bx-NA for qemu-devel@nongnu.org; Thu, 30 Aug 2018 10:27:20 -0400 Received: by mail-wr1-x444.google.com with SMTP id v16-v6so8258255wro.11 for ; Thu, 30 Aug 2018 07:27:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=U32KNXA94kDS+kMdMqbPLujrcMwdOLOQev8OHug8Vnc=; b=fOBp4AuI9G5JmhAqh9cZGs+jW2Fb6EQWIQC1KZJzbHq4uJ69fKiOs1e4bhkFHlq/nQ u+PMqBUoWbj6OToW+0qOOrW8HpNB1StetYjvJhCpFlToTD/8dgBeUJe+tbWWn8d+U7aA x6xsVYJ+v+GLzoFruNctzElPAKhx/PtXGytcwMFS8ERQi32eCtbBjxwJg/gjolrFE0hI aZvvxEGSmXE2CV7Y6iIrUcSszOlFJs9bH0KD2shS6R5TfzOEq2zvw75kuxySLl61/GE5 eD2kVN0QOe7Dyla/z25/Uvyhd2Akq0CfZVnCUEmbPE4+HTapH/DuUb144Hopnf7lb8Xo bbaA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=U32KNXA94kDS+kMdMqbPLujrcMwdOLOQev8OHug8Vnc=; b=qR35DHyN5CIj42xgDm7omi+dQfkn8mjpiXza6HudtifUe1zud+9IlP9MhaQzB11XQD Ppl8PHC3ikY+4HJfV5za18sCjs1+LO510zSChOY0Hjb3A1SDeGvMyOrWAfn3OLZkbQPL uAypXU4MSkwMOLBMbVIiAIl2J+stv3KCgbO4tCUmQnEXyKlinJKLmT+SmuWhgp07kEkb 8YBq0r6i5jqYXmHv+DQt9z20WT58BPrQqd6Px9vw6e3uway2oTg830wvPmY4iaUPt0kv MBk5/x1vWmJB8gjnGb9peiyIftnkL1Dtb7TihsUGV5Lt5J8l0aW8YhWk5DvU1SIYU9si T3SQ== X-Gm-Message-State: APzg51DbRvo2jix2++LzLgxgimeS6J/ZHo4XRDVlcnFf+ea7LsfNKcA5 ceXhpcHAirTXCr5huGK05x1i/B0WFWc= X-Google-Smtp-Source: ANB0Vda+eHhH5WIiiW29kHHTFGyiN0RbxJ4xMRPl9b/pTAAQn7r/5lRdR6aJLSryR4ERfyqZXztPAQ== X-Received: by 2002:adf:f7c4:: with SMTP id a4-v6mr8127741wrq.86.1535639237969; Thu, 30 Aug 2018 07:27:17 -0700 (PDT) Received: from bark.daynix ([141.226.163.173]) by smtp.gmail.com with ESMTPSA id t4-v6sm10483893wrb.45.2018.08.30.07.27.16 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 30 Aug 2018 07:27:17 -0700 (PDT) From: Sameeh Jubran To: qemu-devel@nongnu.org, Jason Wang Date: Thu, 30 Aug 2018 17:27:05 +0300 Message-Id: <20180830142708.14311-4-sameeh@daynix.com> X-Mailer: git-send-email 2.13.6 In-Reply-To: <20180830142708.14311-1-sameeh@daynix.com> References: <20180830142708.14311-1-sameeh@daynix.com> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::444 Subject: [Qemu-devel] [RFC 3/6] vhost-net: Expose vhost_net_get_fd X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Yan Vugenfirer Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP From: Sameeh Jubran Signed-off-by: Sameeh Jubran --- hw/net/vhost_net.c | 2 +- include/hw/virtio/virtio-net.h | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/hw/net/vhost_net.c b/hw/net/vhost_net.c index e037db63a3..c0bff725c9 100644 --- a/hw/net/vhost_net.c +++ b/hw/net/vhost_net.c @@ -129,7 +129,7 @@ uint64_t vhost_net_get_acked_features(VHostNetState *net) return net->dev.acked_features; } -static int vhost_net_get_fd(NetClientState *backend) +int vhost_net_get_fd(NetClientState *backend) { switch (backend->info->type) { case NET_CLIENT_DRIVER_TAP: diff --git a/include/hw/virtio/virtio-net.h b/include/hw/virtio/virtio-net.h index 02484dc94c..a7b53edc96 100644 --- a/include/hw/virtio/virtio-net.h +++ b/include/hw/virtio/virtio-net.h @@ -107,4 +107,6 @@ typedef struct VirtIONet { void virtio_net_set_netclient_name(VirtIONet *n, const char *name, const char *type); +int vhost_net_get_fd(NetClientState *backend); + #endif From patchwork Thu Aug 30 14:27:06 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sameeh Jubran X-Patchwork-Id: 10581929 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 798A3174A for ; Thu, 30 Aug 2018 14:51:34 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 66E5D2C053 for ; Thu, 30 Aug 2018 14:51:34 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 5B2C72C063; Thu, 30 Aug 2018 14:51:34 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id BE3542C055 for ; Thu, 30 Aug 2018 14:51:33 +0000 (UTC) Received: from localhost ([::1]:49354 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fvOIH-0005xa-00 for patchwork-qemu-devel@patchwork.kernel.org; Thu, 30 Aug 2018 10:51:33 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33417) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fvOAP-000534-Be for qemu-devel@nongnu.org; Thu, 30 Aug 2018 10:43:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fvNur-0003dp-Fg for qemu-devel@nongnu.org; Thu, 30 Aug 2018 10:27:22 -0400 Received: from mail-wm0-x243.google.com ([2a00:1450:400c:c09::243]:53111) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fvNur-0003co-4P for qemu-devel@nongnu.org; Thu, 30 Aug 2018 10:27:21 -0400 Received: by mail-wm0-x243.google.com with SMTP id y139-v6so2197903wmc.2 for ; Thu, 30 Aug 2018 07:27:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=iytHfOxkjEX0q08ZncA6wx1hCFumvlH6HUYs4KjsBE0=; b=OyXzWY4/aF3Yvxtyv3jfoAG48QXAtR++V5Bj1VifiazkCjHr+MBDYoVQtHIGNEgHCi WSrWHJ1dqvMng1SA4youRByga1PgYXJre6HQQbO6qoLG2yUQb2nafxIFwuEUDMWhjt61 Kd7vjWbuCiUenoNozbRHz150zYLsfnP4S+Azq+XODea4StopnxgyEuEoe51FZmTcu1t9 m27zIGOBeohY/Hl9DH2X998B01ONgm7MY0XVQqo9bhDGmFB+vMKe3LoqN6WhNElG5l6l gh/9d55vZxpsUQ27nJx36mdOXaW94PPYDnIjQpg4efn6DXl7ecei44ZUworN4KqAkpzT LA2Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=iytHfOxkjEX0q08ZncA6wx1hCFumvlH6HUYs4KjsBE0=; b=evcXgSUlwBqbwttsY+CoNca1rB/aKy0HN9OUpffn+GwLp5AkKrMiTZhoi0pZTkZFb4 LPSADBWON53oVEGnqI3X6OZ7bfAWe+6qeZsVaEwixzOsQPEw87IIWWmSVr8/TR6ZAjVO 9yqamBvDKJJ+o9zedJDFdhs27tueoRd3Gw9ErB9XnGPMVghWjlI64tfRL/Y62Z/MAl7q +oT5yEMi6AiZ4Xmp1pN1SfHlkOTrHSyJpaT68/k6DMeT39BxvOBxzkIjoAdhgWH0qjhV TzepjqNpUPTaDK+RLl0OZ8ni0mLdk1A7oicAzNiB9Zz74FUSSOQEKSvkWfjQg+CCq5IF INVg== X-Gm-Message-State: APzg51BwtG/4vHXQoX1iSOc69TkK4j+HDTkegEUMf2hn9/EUqKlnb9Gi RaGtcARGnbaK12gGctL9YDVON5Js+iU= X-Google-Smtp-Source: ANB0VdZbvikkGlyY9apdXVMGOCsj/C54zH5eTT9mMvxqTbYJfq5ViUBmdc04rBqkNNus1+WXCdldxg== X-Received: by 2002:a1c:9290:: with SMTP id u138-v6mr2111689wmd.52.1535639239263; Thu, 30 Aug 2018 07:27:19 -0700 (PDT) Received: from bark.daynix ([141.226.163.173]) by smtp.gmail.com with ESMTPSA id t4-v6sm10483893wrb.45.2018.08.30.07.27.18 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 30 Aug 2018 07:27:18 -0700 (PDT) From: Sameeh Jubran To: qemu-devel@nongnu.org, Jason Wang Date: Thu, 30 Aug 2018 17:27:06 +0300 Message-Id: <20180830142708.14311-5-sameeh@daynix.com> X-Mailer: git-send-email 2.13.6 In-Reply-To: <20180830142708.14311-1-sameeh@daynix.com> References: <20180830142708.14311-1-sameeh@daynix.com> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::243 Subject: [Qemu-devel] [RFC 4/6] virtio-net: implement steering mode feature X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Yan Vugenfirer Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP From: Sameeh Jubran Signed-off-by: Sameeh Jubran --- hw/net/virtio-net.c | 65 +++++++++++++++++++++++++---- include/hw/virtio/virtio-net.h | 3 ++ include/standard-headers/linux/virtio_net.h | 55 ++++++++++++++++++++++++ 3 files changed, 116 insertions(+), 7 deletions(-) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 90502fca7c..e7c4ce6f66 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -972,13 +972,53 @@ static int virtio_net_handle_mq(VirtIONet *n, uint8_t cmd, return VIRTIO_NET_OK; } +static int virtio_net_ctrl_steering_mode(VirtIONet *n, uint8_t cmd, + struct iovec *iov, unsigned int iov_cnt, + struct iovec *iov_in, unsigned int iov_cnt_in, + size_t *size_in) +{ + size_t s; + struct virtio_net_steering_mode sm; + + switch (cmd) { + case VIRTIO_NET_CTRL_SM_GET_SUPPORTED_MODES: + if (!size_in) { + return VIRTIO_NET_ERR; + } + s = iov_from_buf(iov_in, iov_cnt_in, 0, + &n->supported_modes, sizeof(n->supported_modes)); + if (s != sizeof(n->supported_modes) || + !size_in) { + return VIRTIO_NET_ERR; + } + *size_in = s; + break; + case VIRTIO_NET_CTRL_SM_CONTROL: + s = iov_to_buf(iov, iov_cnt, 0, &sm, sizeof(sm) - + sizeof(union command_data)); + if (s != sizeof(sm) - sizeof(union command_data)) { + return VIRTIO_NET_ERR; + } + /* switch (cmd) + { + dafault: + return VIRTIO_NET_ERR; + } */ + break; + default: + return VIRTIO_NET_ERR; + } + + return VIRTIO_NET_OK; +} + static void virtio_net_handle_ctrl(VirtIODevice *vdev, VirtQueue *vq) { VirtIONet *n = VIRTIO_NET(vdev); struct virtio_net_ctrl_hdr ctrl; virtio_net_ctrl_ack status = VIRTIO_NET_ERR; VirtQueueElement *elem; - size_t s; + size_t s, elem_in_size = 0; struct iovec *iov, *iov2; unsigned int iov_cnt; @@ -996,7 +1036,8 @@ static void virtio_net_handle_ctrl(VirtIODevice *vdev, VirtQueue *vq) } iov_cnt = elem->out_num; - iov2 = iov = g_memdup(elem->out_sg, sizeof(struct iovec) * elem->out_num); + iov2 = iov = g_memdup(elem->out_sg, sizeof(struct iovec) * + elem->out_num); s = iov_to_buf(iov, iov_cnt, 0, &ctrl, sizeof(ctrl)); iov_discard_front(&iov, &iov_cnt, sizeof(ctrl)); if (s != sizeof(ctrl)) { @@ -1013,12 +1054,20 @@ static void virtio_net_handle_ctrl(VirtIODevice *vdev, VirtQueue *vq) status = virtio_net_handle_mq(n, ctrl.cmd, iov, iov_cnt); } else if (ctrl.class == VIRTIO_NET_CTRL_GUEST_OFFLOADS) { status = virtio_net_handle_offloads(n, ctrl.cmd, iov, iov_cnt); + } else if (ctrl.class == VIRTIO_NET_CTRL_STEERING_MODE) { + size_t size_in = 0; + status = virtio_net_ctrl_steering_mode(n, ctrl.cmd, iov, iov_cnt, + elem->in_sg, elem->in_num, &size_in); + if (status == VIRTIO_NET_OK && size_in > 0) { + elem_in_size += size_in; + } } - s = iov_from_buf(elem->in_sg, elem->in_num, 0, &status, sizeof(status)); + s = iov_from_buf(elem->in_sg, elem->in_num, elem_in_size, &status, + sizeof(status)); assert(s == sizeof(status)); - - virtqueue_push(vq, elem, sizeof(status)); + elem_in_size += s; + virtqueue_push(vq, elem, elem_in_size); virtio_notify(vdev, vq); g_free(iov2); g_free(elem); @@ -1375,10 +1424,10 @@ static int32_t virtio_net_flush_tx(VirtIONetQueue *q) n->guest_hdr_len, -1); if (out_num == VIRTQUEUE_MAX_SIZE) { goto drop; - } + } out_num += 1; out_sg = sg2; - } + } } /* * If host wants to see the guest header as is, we can @@ -1957,6 +2006,8 @@ static void virtio_net_device_realize(DeviceState *dev, Error **errp) n->host_features |= (1ULL << VIRTIO_NET_F_MTU); } + n->host_features |= (1ULL << VIRTIO_NET_F_CTRL_STEERING_MODE); + if (n->net_conf.duplex_str) { if (strncmp(n->net_conf.duplex_str, "half", 5) == 0) { n->net_conf.duplex = DUPLEX_HALF; diff --git a/include/hw/virtio/virtio-net.h b/include/hw/virtio/virtio-net.h index a7b53edc96..809e85481c 100644 --- a/include/hw/virtio/virtio-net.h +++ b/include/hw/virtio/virtio-net.h @@ -102,6 +102,9 @@ typedef struct VirtIONet { int announce_counter; bool needs_vnet_hdr_swap; bool mtu_bypass_backend; + struct virtio_net_steering_modes supported_modes; + struct virtio_net_steering_modes current_mode; + struct virtio_net_rss_conf *rss_conf; } VirtIONet; void virtio_net_set_netclient_name(VirtIONet *n, const char *name, diff --git a/include/standard-headers/linux/virtio_net.h b/include/standard-headers/linux/virtio_net.h index e9f255ea3f..fa399b97ab 100644 --- a/include/standard-headers/linux/virtio_net.h +++ b/include/standard-headers/linux/virtio_net.h @@ -258,4 +258,59 @@ struct virtio_net_ctrl_mq { #define VIRTIO_NET_CTRL_GUEST_OFFLOADS 5 #define VIRTIO_NET_CTRL_GUEST_OFFLOADS_SET 0 + +#define RSS_HASH_FUNCTION_TOEPLITZ 0x1 +#define RSS_HASH_FUNCTION_SYMMETRIC 0x2 + +// Hash function fields +#define RSS_HASH_FIELDS_IPV4 0x00000100 +#define RSS_HASH_FIELDS_TCP_IPV4 0x00000200 +#define RSS_HASH_FIELDS_IPV6 0x00000400 +#define RSS_HASH_FIELDS_IPV6_EX 0x00000800 +#define RSS_HASH_FIELDS_TCP_IPV6 0x00001000 +#define RSS_HASH_FIELDS_TCP_IPV6_EX 0x00002000 + +struct virtio_net_rss_supported_hash{ +uint32_t hash_function; +}; + +struct virtio_net_rss_conf_ptrs { + uint8_t *hash_key; + uint32_t *indirection_table; +}; + +struct virtio_net_rss_conf { + uint32_t hash_function; + uint32_t hash_function_flags; + uint32_t hash_key_length; + uint32_t indirection_table_length; + struct virtio_net_rss_conf_ptrs ptrs; +}; + +#define VIRTIO_NET_SM_CTRL_RSS_GET_SUPPORTED_FUNCTIONS 0 +#define VIRTIO_NET_SM_CTRL_RSS_SET 1 + + +struct virtio_net_steering_modes { + uint32_t steering_modes; +}; + +union command_data { + struct virtio_net_rss_conf rss; +}; + +struct virtio_net_steering_mode { + uint32_t steering_mode; + uint32_t command; +}; + +#define VIRTIO_NET_F_CTRL_STEERING_MODE 60 + +#define VIRTIO_NET_CTRL_STEERING_MODE 7 +#define VIRTIO_NET_CTRL_SM_GET_SUPPORTED_MODES 0 +#define VIRTIO_NET_CTRL_SM_CONTROL 1 + +#define STEERING_MODE_AUTO 0x1 +#define STEERING_MODE_RSS 0x2 + #endif /* _LINUX_VIRTIO_NET_H */ From patchwork Thu Aug 30 14:27:07 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sameeh Jubran X-Patchwork-Id: 10581863 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 6C9D6174A for ; Thu, 30 Aug 2018 14:45:09 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5CCB92B560 for ; Thu, 30 Aug 2018 14:45:09 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 50E7C2BC83; Thu, 30 Aug 2018 14:45:09 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id BAA272B560 for ; Thu, 30 Aug 2018 14:45:08 +0000 (UTC) Received: from localhost ([::1]:49316 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fvOC3-0008Eb-Ux for patchwork-qemu-devel@patchwork.kernel.org; Thu, 30 Aug 2018 10:45:08 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33918) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fvOAP-0005zO-8U for qemu-devel@nongnu.org; Thu, 30 Aug 2018 10:43:29 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fvNut-0003eS-8Q for qemu-devel@nongnu.org; Thu, 30 Aug 2018 10:27:24 -0400 Received: from mail-wm0-x242.google.com ([2a00:1450:400c:c09::242]:37706) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fvNus-0003d4-Ts for qemu-devel@nongnu.org; Thu, 30 Aug 2018 10:27:23 -0400 Received: by mail-wm0-x242.google.com with SMTP id n11-v6so2227062wmc.2 for ; Thu, 30 Aug 2018 07:27:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=+7vau5STesULGW63tq7/sSuCO0T+3e3txQ/MFYTkhwk=; b=IS9Xr2ROac8o4h5c4KD8+5ljTXOY3Y0L2xFCt4x/Cox44jYaXFU13VCPm7NXZuBcw6 iJXCOk9UuAZpKjzZcPC8gtSzLTcSTyY8efH5r7v36CejvbMBqGjJy1CNo+We8EwM/v2z JlZamjddSgOmJxYWoRDLAIDKU0KfvdczRFYEC7R/ZTW1W1NEbwXQr4/tKrFd4Vr659CQ b5h/MNTr2DPq4oHivdjMNN/dwprAj/+CWwX+g4xU+zNNn/h5Ye/SAPCT/4AdKAobXR50 m4P3SOmDvjBrq9jVYeAK8yOWt/QXtzFD50rPZN5LjjU0mOwmHfbU7IyCFNJSID8M/nGu PrjA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=+7vau5STesULGW63tq7/sSuCO0T+3e3txQ/MFYTkhwk=; b=NJyjwMcMKyfiPTwtcI/K2hmXRbbBxMLaNj8AjTTydXgOSnpI28IsRgWou6yvdY0zh9 adoj+E5lFY89MMXNr0gZyJ3G4kWw3iZsFHs4kQFW5cLvpXpCXa/46DR38pEDd8OTm8QE Yio1pCV0FlTAGOrkD8DvcRGB0hSRwktpYreUO4n7KBNn2jk9KfB+EcWgeC7ECGgxX85l r0aimuuCYFGR8aFlToHvqtrbQO5iXWTfC3YaXNRfFqIFcDPE9ALSWzykiIr8XMgl0CS1 Leq8/vBeGMEj5aRouirQZB9GH6IxIOl40ZhIx3KLiFoMQ3UjxPrKv2CISyiHBB26jOT+ 68qA== X-Gm-Message-State: APzg51C7Fr+gjiRlZc9qctOK/1wDrr7FyDDmShKYdtYVEu2edO1iKfO/ 67a09JB53CPLH0kPX7T6Cmo/DUSEAQg= X-Google-Smtp-Source: ANB0VdZnikA/07uhDz95f+7y7eVDFY89Vz0DLyGUE3xvASOYgM4HFvbs70CFPMvGPdnh0f3izTUXog== X-Received: by 2002:a1c:b213:: with SMTP id b19-v6mr1908407wmf.141.1535639240462; Thu, 30 Aug 2018 07:27:20 -0700 (PDT) Received: from bark.daynix ([141.226.163.173]) by smtp.gmail.com with ESMTPSA id t4-v6sm10483893wrb.45.2018.08.30.07.27.19 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 30 Aug 2018 07:27:19 -0700 (PDT) From: Sameeh Jubran To: qemu-devel@nongnu.org, Jason Wang Date: Thu, 30 Aug 2018 17:27:07 +0300 Message-Id: <20180830142708.14311-6-sameeh@daynix.com> X-Mailer: git-send-email 2.13.6 In-Reply-To: <20180830142708.14311-1-sameeh@daynix.com> References: <20180830142708.14311-1-sameeh@daynix.com> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::242 Subject: [Qemu-devel] [RFC 5/6] virtio-net: steering mode: Implement rss support X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Yan Vugenfirer Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP From: Sameeh Jubran Signed-off-by: Sameeh Jubran --- hw/net/virtio-net.c | 122 ++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 105 insertions(+), 17 deletions(-) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index e7c4ce6f66..4a52a6a1d0 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -972,41 +972,129 @@ static int virtio_net_handle_mq(VirtIONet *n, uint8_t cmd, return VIRTIO_NET_OK; } -static int virtio_net_ctrl_steering_mode(VirtIONet *n, uint8_t cmd, + +static int virtio_net_ctrl_sm_rss(VirtIONet *n, uint32_t cmd, struct iovec *iov, unsigned int iov_cnt, struct iovec *iov_in, unsigned int iov_cnt_in, - size_t *size_in) + size_t *size_in) +{ + size_t s; + uint32_t supported_hash_function = 0; + + switch (cmd) { + case VIRTIO_NET_SM_CTRL_RSS_GET_SUPPORTED_FUNCTIONS: + supported_hash_function |= RSS_HASH_FUNCTION_TOEPLITZ; + if (!size_in) { + return VIRTIO_NET_ERR; + } + s = iov_from_buf(iov_in, iov_cnt_in, 0, + &supported_hash_function, + supported_hash_function); + if (s != sizeof(n->supported_modes) || + !size_in) { + return VIRTIO_NET_ERR; + } + *size_in = s; + break; + case VIRTIO_NET_SM_CTRL_RSS_SET: + if (!n->rss_conf) { + n->rss_conf = g_malloc0( + sizeof(struct virtio_net_rss_conf)); + } else if (iov == NULL || iov_cnt == 0) { + g_free(n->rss_conf->ptrs.hash_key); + g_free(n->rss_conf->ptrs.indirection_table); + g_free(n->rss_conf); + return VIRTIO_NET_OK; + } + s = iov_to_buf(iov, iov_cnt, 0, n->rss_conf, + sizeof(struct virtio_net_rss_conf) - + sizeof(struct virtio_net_rss_conf_ptrs)); + + if (s != sizeof(struct virtio_net_rss_conf) - + sizeof(struct virtio_net_rss_conf_ptrs)) { + return VIRTIO_NET_ERR; + } + n->rss_conf->ptrs.hash_key = g_malloc0(sizeof(uint8_t) * + n->rss_conf->hash_key_length); + s = iov_to_buf(iov, iov_cnt, 0, n->rss_conf->ptrs.hash_key, + sizeof(uint8_t) * n->rss_conf->hash_key_length); + if (s != sizeof(uint8_t) * n->rss_conf->hash_key_length) { + g_free(n->rss_conf->ptrs.hash_key); + return VIRTIO_NET_ERR; + } + n->rss_conf->ptrs.indirection_table + = g_malloc0(sizeof(uint32_t) * + n->rss_conf->indirection_table_length); + s = iov_to_buf(iov, iov_cnt, 0, + n->rss_conf->ptrs.indirection_table, sizeof(uint32_t) * + n->rss_conf->indirection_table_length); + if (s != sizeof(uint32_t) * + n->rss_conf->indirection_table_length) { + g_free(n->rss_conf->ptrs.hash_key); + g_free(n->rss_conf->ptrs.indirection_table); + return VIRTIO_NET_ERR; + } + /* do bpf magic */ + break; + default: + return VIRTIO_NET_ERR; + } + + return VIRTIO_NET_OK; +} + +static int virtio_net_ctrl_steering_mode(VirtIONet *n, uint8_t cmd, + struct iovec *iov, unsigned int iov_cnt, + struct iovec *iov_in, unsigned int iov_in_cnt, + size_t *size_in) { size_t s; struct virtio_net_steering_mode sm; + int status = 0; + size_t size_in_cmd = 0; switch (cmd) { case VIRTIO_NET_CTRL_SM_GET_SUPPORTED_MODES: if (!size_in) { return VIRTIO_NET_ERR; } - s = iov_from_buf(iov_in, iov_cnt_in, 0, - &n->supported_modes, sizeof(n->supported_modes)); + n->supported_modes.steering_modes |= STEERING_MODE_RSS | + STEERING_MODE_AUTO; + s = iov_from_buf(iov_in, iov_in_cnt, 0, + &n->supported_modes, + sizeof(n->supported_modes)); if (s != sizeof(n->supported_modes) || - !size_in) { + !size_in) { return VIRTIO_NET_ERR; } - *size_in = s; - break; + *size_in = s; + break; case VIRTIO_NET_CTRL_SM_CONTROL: - s = iov_to_buf(iov, iov_cnt, 0, &sm, sizeof(sm) - - sizeof(union command_data)); - if (s != sizeof(sm) - sizeof(union command_data)) { + s = iov_to_buf(iov, iov_cnt, 0, &sm, sizeof(sm)); + if (s != sizeof(sm)) { + return VIRTIO_NET_ERR; + } + iov_discard_front(&iov, &iov_cnt, sizeof(sm)); + /* TODO handle the case where we change mode, call the old */ + /* mode function with null ptrs should do the trick of */ + /* freeing any resources */ + switch (sm.steering_mode) { + case STEERING_MODE_AUTO: + break; + case STEERING_MODE_RSS: + status = virtio_net_ctrl_sm_rss(n, sm.command, + iov, iov_cnt, iov_in, iov_in_cnt, + &size_in_cmd); + if (status == VIRTIO_NET_OK && size_in_cmd > 0) { + *size_in += size_in_cmd; + } + break; + default: return VIRTIO_NET_ERR; } - /* switch (cmd) - { - dafault: - return VIRTIO_NET_ERR; - } */ - break; + break; default: - return VIRTIO_NET_ERR; + return VIRTIO_NET_ERR; } return VIRTIO_NET_OK; From patchwork Thu Aug 30 14:27:08 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sameeh Jubran X-Patchwork-Id: 10581927 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id B448F174A for ; Thu, 30 Aug 2018 14:50:58 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8189E2C059 for ; Thu, 30 Aug 2018 14:50:58 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 745302BFFD; Thu, 30 Aug 2018 14:50:58 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id B1AF32C043 for ; Thu, 30 Aug 2018 14:50:49 +0000 (UTC) Received: from localhost ([::1]:49351 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fvOHY-0005P0-Ji for patchwork-qemu-devel@patchwork.kernel.org; Thu, 30 Aug 2018 10:50:48 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33658) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fvOAM-0005s6-Ty for qemu-devel@nongnu.org; Thu, 30 Aug 2018 10:43:54 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fvNuy-0003ge-R9 for qemu-devel@nongnu.org; Thu, 30 Aug 2018 10:27:43 -0400 Received: from mail-wm0-x241.google.com ([2a00:1450:400c:c09::241]:39126) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fvNux-0003fU-Bl for qemu-devel@nongnu.org; Thu, 30 Aug 2018 10:27:28 -0400 Received: by mail-wm0-x241.google.com with SMTP id q8-v6so2244695wmq.4 for ; Thu, 30 Aug 2018 07:27:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=hU26KV/E1+JmzB6BcLmv7B1THz1Rsts+u0AY06/VVrQ=; b=Xm/xDX9HIxrDEi4AE1DswjPcL9Naf+7yh8EeZeFUEtGJFisPMe1rAoIGnSPyUb4Uch LZo+sqw6a5GbWSL7B5vRA4pEB8wtR2EGEbBu5bXbPSz3fay/snEvcJiI9BAJZP29CPji dlNS+JSkvOVBjxq3mZ7VBVSKGdQHOuQjr0O5cOg0kTEx1gqIquGejPsvzpLz/wi6qlJf grTU7/yiHrfjNyBYSTDnzt2n5c7tbXEVGhGEstkC5xe1SloVyM4uaHpAsg9Bfz2HLZ7p 4tqwtUEKTrM0lGBlRdDOA8HdyMwEFRKQ8ja8eLiZ+wWqxtGJigAZZ35pFRKk5CB1E5eS DJWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=hU26KV/E1+JmzB6BcLmv7B1THz1Rsts+u0AY06/VVrQ=; b=XzsWX5Z5UEz986Fif0hNvShmJmWi9SpiuXV75LrX+IiyxuaxXiMFpXDePePV7AYLYW 5lWiYGDPig0NIR1beK1W7xC3n5/wzjBCfZgQ20yLC5eCKiYxNm60pB+VAf2dCSdDfCIc kxqC2enr06duRMdeC16r5Ryr9vmiecIXC0bahyZeVw8/heo0aomtLBtsIzk7Ts6elE7a jxyrRrG2nBDdhCyawNZ3AuGWBxdEkn8CgiSyng+IT8Ei8JR9ePLZ2p75rvm9MWRyu5e/ xHE/HlkLec1peweM+byQbUUCNslk2J5PLeeO9NLg24yRZZAMGMrz9qYSfTQ9vuluWf0G oOgg== X-Gm-Message-State: APzg51AKmUKR0fY/hOAOTQ+zH6m8OQfqNiwBqWrbfLRdMxzNVoBLlRJe Ap39l/Z2smgSzBFPSWkXtKY+cu74jy4= X-Google-Smtp-Source: ANB0VdY23t8bzPTpTsuvNpL9oHMb+bClKlRJix5P8Jgt/1HbFwCX6HZeOPCW8lOSMZzGcfmKxJRM+A== X-Received: by 2002:a1c:8955:: with SMTP id l82-v6mr1914992wmd.110.1535639243169; Thu, 30 Aug 2018 07:27:23 -0700 (PDT) Received: from bark.daynix ([141.226.163.173]) by smtp.gmail.com with ESMTPSA id t4-v6sm10483893wrb.45.2018.08.30.07.27.20 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 30 Aug 2018 07:27:22 -0700 (PDT) From: Sameeh Jubran To: qemu-devel@nongnu.org, Jason Wang Date: Thu, 30 Aug 2018 17:27:08 +0300 Message-Id: <20180830142708.14311-7-sameeh@daynix.com> X-Mailer: git-send-email 2.13.6 In-Reply-To: <20180830142708.14311-1-sameeh@daynix.com> References: <20180830142708.14311-1-sameeh@daynix.com> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::241 Subject: [Qemu-devel] [RFC 6/6] virtio-net: rss: Add bpf filter X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Yan Vugenfirer Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP From: Sameeh Jubran Signed-off-by: Sameeh Jubran --- hw/net/rss_bpf_insns.h | 3992 ++++++++++++++++++++++++++++++++++++++++++ hw/net/rss_tap_bpf.h | 40 + hw/net/rss_tap_bpf_program.c | 175 ++ hw/net/virtio-net.c | 99 +- 4 files changed, 4305 insertions(+), 1 deletion(-) create mode 100644 hw/net/rss_bpf_insns.h create mode 100644 hw/net/rss_tap_bpf.h create mode 100644 hw/net/rss_tap_bpf_program.c diff --git a/hw/net/rss_bpf_insns.h b/hw/net/rss_bpf_insns.h new file mode 100644 index 0000000000..1a92110b8d --- /dev/null +++ b/hw/net/rss_bpf_insns.h @@ -0,0 +1,3992 @@ +/* + * RSS ebpf instructions for virtio-net + * + * Copyright (c) 2018 RedHat. + * + * This work is licensed under the terms of the GNU GPL, version 2 or later. + * See the COPYING file in the top-level directory. + * + */ + +#include + +#ifndef BPF_RSS_INSNS +#define BPF_RSS_INSNS + +/* bpf_insn array matching l3_l4 section. see tap_bpf_program.c file */ +struct bpf_insn l3_l4_hash_insns[] = { +{0xbf , 0x6 , 0x1 , 0x0000 , 0x00000000}, +{0x28 , 0x0 , 0x0 , 0x0000 , 0x0000000c}, +{0xbf , 0x8 , 0x0 , 0x0000 , 0x00000000}, +{0x18 , 0x1 , 0x0 , 0x0000 , 0xdeadbeef}, +{0x00 , 0x0 , 0x0 , 0x0000 , 0x00000000}, +{0x63 , 0xa , 0x1 , 0xfffc , 0x00000000}, +{0xbf , 0x2 , 0xa , 0x0000 , 0x00000000}, +{0x07 , 0x2 , 0x0 , 0x0000 , 0xfffffffc}, +{0x18 , 0x1 , 0x1 , 0x0000 , 0xdeadcafe}, +{0x00 , 0x0 , 0x0 , 0x0000 , 0x00000000}, +{0x85 , 0x0 , 0x0 , 0x0000 , 0x00000001}, +{0x55 , 0x0 , 0x0 , 0x0017 , 0x00000000}, +{0xb7 , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x73 , 0xa , 0x1 , 0xfffa , 0x00000000}, +{0xb7 , 0x1 , 0x0 , 0x0000 , 0x00000a64}, +{0x6b , 0xa , 0x1 , 0xfff8 , 0x00000000}, +{0x18 , 0x1 , 0x0 , 0x0000 , 0x69666e6f}, +{0x00 , 0x0 , 0x0 , 0x0000 , 0x65727567}, +{0x7b , 0xa , 0x1 , 0xfff0 , 0x00000000}, +{0x18 , 0x1 , 0x0 , 0x0000 , 0x6e207369}, +{0x00 , 0x0 , 0x0 , 0x0000 , 0x6320746f}, +{0x7b , 0xa , 0x1 , 0xffe8 , 0x00000000}, +{0x18 , 0x1 , 0x0 , 0x0000 , 0x20737372}, +{0x00 , 0x0 , 0x0 , 0x0000 , 0x2079656b}, +{0x7b , 0xa , 0x1 , 0xffe0 , 0x00000000}, +{0x18 , 0x1 , 0x0 , 0x0000 , 0x68736168}, +{0x00 , 0x0 , 0x0 , 0x0000 , 0x203a2928}, +{0x7b , 0xa , 0x1 , 0xffd8 , 0x00000000}, +{0xbf , 0x1 , 0xa , 0x0000 , 0x00000000}, +{0x07 , 0x1 , 0x0 , 0x0000 , 0xffffffd8}, +{0xb7 , 0x2 , 0x0 , 0x0000 , 0x00000023}, +{0x85 , 0x0 , 0x0 , 0x0000 , 0x00000006}, +{0x18 , 0x0 , 0x0 , 0x0000 , 0xfffffffe}, +{0x00 , 0x0 , 0x0 , 0x0000 , 0x00000000}, +{0x05 , 0x0 , 0x0 , 0x0f60 , 0x00000000}, +{0x7b , 0xa , 0x0 , 0xffc8 , 0x00000000}, +{0xb7 , 0x7 , 0x0 , 0x0000 , 0x0000000e}, +{0x55 , 0x8 , 0x0 , 0x0003 , 0x000088a8}, +{0xb7 , 0x7 , 0x0 , 0x0000 , 0x00000012}, +{0x28 , 0x0 , 0x0 , 0x0000 , 0x00000010}, +{0xbf , 0x8 , 0x0 , 0x0000 , 0x00000000}, +{0x55 , 0x8 , 0x0 , 0x0005 , 0x00008100}, +{0xbf , 0x8 , 0x7 , 0x0000 , 0x00000000}, +{0x07 , 0x8 , 0x0 , 0x0000 , 0x00000002}, +{0x48 , 0x0 , 0x8 , 0x0000 , 0x00000000}, +{0xbf , 0x8 , 0x0 , 0x0000 , 0x00000000}, +{0x07 , 0x7 , 0x0 , 0x0000 , 0x00000004}, +{0x15 , 0x8 , 0x0 , 0x0b48 , 0x00000800}, +{0x18 , 0x0 , 0x0 , 0x0000 , 0xffffffff}, +{0x00 , 0x0 , 0x0 , 0x0000 , 0x00000000}, +{0x15 , 0x8 , 0x0 , 0x0001 , 0x0000dd86}, +{0x05 , 0x0 , 0x0 , 0x0f4f , 0x00000000}, +{0xbf , 0x9 , 0x7 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc8 , 0x00000000}, +{0x07 , 0x7 , 0x0 , 0x0000 , 0x00000029}, +{0x50 , 0x0 , 0x7 , 0x0000 , 0x00000000}, +{0x7b , 0xa , 0x0 , 0xffa8 , 0x00000000}, +{0xbf , 0x7 , 0x9 , 0x0000 , 0x00000000}, +{0x07 , 0x7 , 0x0 , 0x0000 , 0x00000028}, +{0x50 , 0x0 , 0x7 , 0x0000 , 0x00000000}, +{0x7b , 0xa , 0x0 , 0xff90 , 0x00000000}, +{0xbf , 0x7 , 0x9 , 0x0000 , 0x00000000}, +{0x07 , 0x7 , 0x0 , 0x0000 , 0x0000002b}, +{0x50 , 0x0 , 0x7 , 0x0000 , 0x00000000}, +{0x7b , 0xa , 0x0 , 0xffb0 , 0x00000000}, +{0xbf , 0x7 , 0x9 , 0x0000 , 0x00000000}, +{0x07 , 0x7 , 0x0 , 0x0000 , 0x0000002a}, +{0x50 , 0x0 , 0x7 , 0x0000 , 0x00000000}, +{0x7b , 0xa , 0x0 , 0xffa0 , 0x00000000}, +{0xbf , 0x7 , 0x9 , 0x0000 , 0x00000000}, +{0x07 , 0x7 , 0x0 , 0x0000 , 0x0000001b}, +{0x40 , 0x0 , 0x7 , 0x0000 , 0x00000000}, +{0x7b , 0xa , 0x0 , 0xff98 , 0x00000000}, +{0xbf , 0x7 , 0x9 , 0x0000 , 0x00000000}, +{0x07 , 0x7 , 0x0 , 0x0000 , 0x0000001a}, +{0x40 , 0x0 , 0x7 , 0x0000 , 0x00000000}, +{0x7b , 0xa , 0x0 , 0xff88 , 0x00000000}, +{0xbf , 0x7 , 0x9 , 0x0000 , 0x00000000}, +{0x07 , 0x7 , 0x0 , 0x0000 , 0x00000019}, +{0x40 , 0x0 , 0x7 , 0x0000 , 0x00000000}, +{0x7b , 0xa , 0x0 , 0xffd0 , 0x00000000}, +{0xbf , 0x7 , 0x9 , 0x0000 , 0x00000000}, +{0x07 , 0x7 , 0x0 , 0x0000 , 0x00000018}, +{0x40 , 0x0 , 0x7 , 0x0000 , 0x00000000}, +{0x7b , 0xa , 0x0 , 0xffc0 , 0x00000000}, +{0xbf , 0x7 , 0x9 , 0x0000 , 0x00000000}, +{0x07 , 0x7 , 0x0 , 0x0000 , 0x0000000b}, +{0x40 , 0x0 , 0x7 , 0x0000 , 0x00000000}, +{0x7b , 0xa , 0x0 , 0xffb8 , 0x00000000}, +{0xbf , 0x7 , 0x9 , 0x0000 , 0x00000000}, +{0x07 , 0x7 , 0x0 , 0x0000 , 0x00000008}, +{0x40 , 0x0 , 0x7 , 0x0000 , 0x00000000}, +{0xbf , 0x8 , 0x0 , 0x0000 , 0x00000000}, +{0xbf , 0x7 , 0x9 , 0x0000 , 0x00000000}, +{0x07 , 0x7 , 0x0 , 0x0000 , 0x0000000a}, +{0x40 , 0x0 , 0x7 , 0x0000 , 0x00000000}, +{0xbf , 0x7 , 0x0 , 0x0000 , 0x00000000}, +{0x07 , 0x9 , 0x0 , 0x0000 , 0x00000009}, +{0x40 , 0x0 , 0x9 , 0x0000 , 0x00000000}, +{0xb7 , 0x4 , 0x0 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0xc7 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x65 , 0x1 , 0x0 , 0x0002 , 0xffffffff}, +{0x79 , 0x1 , 0xa , 0xffc8 , 0x00000000}, +{0x61 , 0x4 , 0x1 , 0x0008 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x40000000}, +{0x79 , 0x3 , 0xa , 0xffc8 , 0x00000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000001}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x20000000}, +{0x79 , 0x6 , 0xa , 0xffa0 , 0x00000000}, +{0x79 , 0x9 , 0xa , 0xff88 , 0x00000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x10000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000003}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x08000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x04000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000005}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x02000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000006}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x01000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000007}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000019}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00800000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x71 , 0x1 , 0x3 , 0x000f , 0x00000000}, +{0x61 , 0x2 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00400000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000009}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000017}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00200000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000a}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000016}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00100000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000b}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000015}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00080000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000c}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000014}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00040000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000d}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000013}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00020000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000e}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000012}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00010000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000f}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000011}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00008000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x69 , 0x1 , 0x3 , 0x000e , 0x00000000}, +{0x61 , 0x2 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000010}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00004000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000011}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00002000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000012}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00001000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000013}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000800}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000014}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000400}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000015}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000200}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000016}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000100}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000017}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000009}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000080}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000018}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000040}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000019}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000007}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001a}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000006}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000010}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001b}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000005}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000008}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001c}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000004}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001d}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000003}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001e}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000002}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x57 , 0x8 , 0x0 , 0x0000 , 0x00000001}, +{0x15 , 0x8 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001f}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000001}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0xc7 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x65 , 0x1 , 0x0 , 0x0003 , 0xffffffff}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x40000000}, +{0x79 , 0x8 , 0xa , 0xff90 , 0x00000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000001}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x20000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x10000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000003}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x08000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x04000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000005}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x02000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000006}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x01000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000007}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000019}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00800000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x71 , 0x1 , 0x3 , 0x0013 , 0x00000000}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00400000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000009}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000017}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00200000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000a}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000016}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00100000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000b}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000015}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00080000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000c}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000014}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00040000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000d}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000013}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00020000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000e}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000012}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00010000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000f}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000011}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00008000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x69 , 0x1 , 0x3 , 0x0012 , 0x00000000}, +{0x61 , 0x2 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000010}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00004000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000011}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00002000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000012}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00001000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000013}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000800}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000014}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000400}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000015}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000200}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000016}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000100}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000017}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000009}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000080}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000018}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000040}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000019}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000007}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001a}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000006}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000010}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001b}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000005}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000008}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001c}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000004}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001d}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000003}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001e}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000002}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x57 , 0x0 , 0x0 , 0x0000 , 0x00000001}, +{0x15 , 0x0 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001f}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000001}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0xc7 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x65 , 0x1 , 0x0 , 0x0003 , 0xffffffff}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x40000000}, +{0x79 , 0x5 , 0xa , 0xffb0 , 0x00000000}, +{0x79 , 0x0 , 0xa , 0xffa8 , 0x00000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000001}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x20000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x10000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000003}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x08000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x04000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000005}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x02000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000006}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x01000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000007}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000019}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00800000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x71 , 0x1 , 0x3 , 0x0017 , 0x00000000}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00400000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000009}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000017}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00200000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000a}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000016}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00100000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000b}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000015}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00080000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000c}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000014}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00040000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000d}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000013}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00020000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000e}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000012}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00010000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000f}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000011}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00008000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x69 , 0x1 , 0x3 , 0x0016 , 0x00000000}, +{0x61 , 0x2 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000010}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00004000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000011}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00002000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000012}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00001000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000013}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000800}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000014}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000400}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000015}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000200}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000016}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000100}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000017}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000009}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000080}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000018}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000040}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000019}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000007}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001a}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000006}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000010}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001b}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000005}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000008}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001c}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000004}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001d}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000003}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001e}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000002}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x57 , 0x7 , 0x0 , 0x0000 , 0x00000001}, +{0x15 , 0x7 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001f}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000001}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0xc7 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x65 , 0x1 , 0x0 , 0x0003 , 0xffffffff}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x40000000}, +{0x79 , 0x7 , 0xa , 0xff98 , 0x00000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000001}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x20000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x10000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000003}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x08000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x04000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000005}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x02000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000006}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x01000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000007}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000019}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00800000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x71 , 0x1 , 0x3 , 0x001b , 0x00000000}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00400000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000009}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000017}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00200000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000a}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000016}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00100000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000b}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000015}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00080000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000c}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000014}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00040000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000d}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000013}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00020000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000e}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000012}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00010000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000f}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000011}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00008000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x69 , 0x1 , 0x3 , 0x001a , 0x00000000}, +{0x61 , 0x2 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000010}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00004000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000011}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00002000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000012}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00001000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000013}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000800}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000014}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000400}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000015}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000200}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000016}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000100}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000017}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000009}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000080}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000018}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000040}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000019}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000007}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001a}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000006}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000010}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001b}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000005}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000008}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001c}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000004}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001d}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000003}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001e}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000002}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffb8 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000001}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0014 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001f}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000001}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0xc7 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x65 , 0x1 , 0x0 , 0x0003 , 0xffffffff}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x40000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000001}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x20000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x10000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000003}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x08000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x04000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000005}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x02000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000006}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x01000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000007}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000019}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00800000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x71 , 0x1 , 0x3 , 0x001f , 0x00000000}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00400000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000009}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000017}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00200000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000a}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000016}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00100000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000b}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000015}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00080000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000c}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000014}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00040000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000d}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000013}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00020000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000e}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000012}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00010000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000f}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000011}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00008000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x69 , 0x1 , 0x3 , 0x001e , 0x00000000}, +{0x61 , 0x2 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000010}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00004000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000011}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00002000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000012}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00001000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000013}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000800}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000014}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000400}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000015}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000200}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000016}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000100}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000017}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000009}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000080}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000018}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000040}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000019}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000007}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001a}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000006}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000010}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001b}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000005}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000008}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001c}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000004}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001d}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000003}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001e}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000002}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffc0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000001}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0018 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001f}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000001}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0xc7 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x65 , 0x1 , 0x0 , 0x0003 , 0xffffffff}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x40000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000001}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x20000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x10000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000003}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x08000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x04000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000005}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x02000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000006}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x01000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000007}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000019}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00800000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x71 , 0x1 , 0x3 , 0x0023 , 0x00000000}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00400000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000009}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000017}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00200000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000a}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000016}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00100000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000b}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000015}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00080000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000c}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000014}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00040000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000d}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000013}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00020000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000e}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000012}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00010000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000f}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000011}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00008000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x69 , 0x1 , 0x3 , 0x0022 , 0x00000000}, +{0x61 , 0x2 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000010}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00004000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000011}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00002000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000012}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00001000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000013}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000800}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000014}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000400}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000015}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000200}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000016}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000100}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000017}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000009}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000080}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000018}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000040}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000019}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000007}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001a}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000006}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000010}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001b}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000005}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000008}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001c}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000004}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001d}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000003}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001e}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000002}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000001}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x001c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001f}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000001}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0xc7 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x65 , 0x1 , 0x0 , 0x0003 , 0xffffffff}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x40000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000001}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x20000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x10000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000003}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x08000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x04000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000005}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x02000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000006}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x01000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000007}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000019}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00800000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x71 , 0x1 , 0x3 , 0x0027 , 0x00000000}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00400000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000009}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000017}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00200000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000a}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000016}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00100000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000b}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000015}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00080000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000c}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000014}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00040000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000d}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000013}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00020000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000e}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000012}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00010000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000f}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000011}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00008000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x69 , 0x1 , 0x3 , 0x0026 , 0x00000000}, +{0x61 , 0x2 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000010}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00004000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000011}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00002000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000012}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00001000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000013}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000800}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000014}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000400}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000015}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000200}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000016}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000100}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000017}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000009}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000080}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000018}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000040}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000019}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000007}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001a}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000006}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000010}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001b}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000005}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000008}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001c}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000004}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001d}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000003}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001e}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000002}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x57 , 0x9 , 0x0 , 0x0000 , 0x00000001}, +{0x15 , 0x9 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0020 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001f}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000001}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0xc7 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x65 , 0x1 , 0x0 , 0x0003 , 0xffffffff}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x40000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000001}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x20000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x10000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000003}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x08000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x04000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000005}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x02000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000006}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x01000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000007}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000019}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00800000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x71 , 0x1 , 0x3 , 0x002b , 0x00000000}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00400000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000009}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000017}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00200000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000a}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000016}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00100000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000b}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000015}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00080000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000c}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000014}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00040000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000d}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000013}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00020000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000e}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000012}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00010000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000f}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000011}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00008000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x69 , 0x1 , 0x3 , 0x002a , 0x00000000}, +{0x61 , 0x2 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000010}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00004000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000011}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00002000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000012}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00001000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000013}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000800}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000014}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000400}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000015}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000200}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000016}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000100}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000017}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000009}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000080}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000018}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000040}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000019}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000007}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001a}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000006}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000010}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001b}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000005}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x67 , 0x8 , 0x0 , 0x0000 , 0x00000008}, +{0x57 , 0x0 , 0x0 , 0x0000 , 0x000000ff}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000008}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001c}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000004}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x4f , 0x0 , 0x8 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001d}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000003}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x67 , 0x0 , 0x0 , 0x0000 , 0x00000030}, +{0xbf , 0x1 , 0x7 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001e}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000002}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xc7 , 0x0 , 0x0 , 0x0000 , 0x00000020}, +{0x57 , 0x7 , 0x0 , 0x0000 , 0x00000001}, +{0x15 , 0x7 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0024 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001f}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000001}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x65 , 0x0 , 0x0 , 0x0003 , 0xffffffff}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x40000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000001}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x20000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x10000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000003}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x08000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x04000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000005}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x02000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000006}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x01000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000007}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000019}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00800000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x71 , 0x1 , 0x3 , 0x002f , 0x00000000}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00400000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000009}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000017}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00200000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000a}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000016}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00100000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000b}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000015}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00080000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000c}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000014}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00040000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000d}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000013}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x67 , 0x6 , 0x0 , 0x0000 , 0x00000008}, +{0x57 , 0x5 , 0x0 , 0x0000 , 0x000000ff}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00020000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000e}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000012}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x4f , 0x5 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x0 , 0x0 , 0x0000 , 0x00010000}, +{0x15 , 0x0 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000f}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000011}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x5 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00008000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x69 , 0x1 , 0x3 , 0x002e , 0x00000000}, +{0x61 , 0x2 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000010}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x5 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00004000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000011}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x5 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00002000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000012}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x5 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00001000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000013}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x5 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000800}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000014}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x5 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000400}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000015}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x5 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000200}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000016}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x5 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000100}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000017}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000009}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x5 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000080}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000018}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x5 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000040}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000019}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000007}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x5 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001a}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000006}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x5 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000010}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001b}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000005}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x5 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000008}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001c}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000004}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x5 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001d}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000003}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x5 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001e}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000002}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x57 , 0x5 , 0x0 , 0x0000 , 0x00000001}, +{0x15 , 0x5 , 0x0 , 0x0402 , 0x00000000}, +{0x61 , 0x1 , 0x3 , 0x0028 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001f}, +{0x61 , 0x2 , 0x3 , 0x002c , 0x00000000}, +{0x05 , 0x0 , 0x0 , 0x03fa , 0x00000000}, +{0xbf , 0x8 , 0x7 , 0x0000 , 0x00000000}, +{0x07 , 0x8 , 0x0 , 0x0000 , 0x0000000c}, +{0x50 , 0x0 , 0x8 , 0x0000 , 0x00000000}, +{0xbf , 0x8 , 0x0 , 0x0000 , 0x00000000}, +{0xbf , 0x9 , 0x7 , 0x0000 , 0x00000000}, +{0x07 , 0x9 , 0x0 , 0x0000 , 0x0000000d}, +{0x50 , 0x0 , 0x9 , 0x0000 , 0x00000000}, +{0x7b , 0xa , 0x0 , 0xffd0 , 0x00000000}, +{0xbf , 0x9 , 0x7 , 0x0000 , 0x00000000}, +{0x07 , 0x9 , 0x0 , 0x0000 , 0x00000010}, +{0x50 , 0x0 , 0x9 , 0x0000 , 0x00000000}, +{0x7b , 0xa , 0x0 , 0xffa0 , 0x00000000}, +{0xbf , 0x9 , 0x7 , 0x0000 , 0x00000000}, +{0x07 , 0x9 , 0x0 , 0x0000 , 0x00000011}, +{0x50 , 0x0 , 0x9 , 0x0000 , 0x00000000}, +{0x7b , 0xa , 0x0 , 0xffa8 , 0x00000000}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000010}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00ff0000}, +{0x67 , 0x8 , 0x0 , 0x0000 , 0x00000018}, +{0x4f , 0x1 , 0x8 , 0x0000 , 0x00000000}, +{0x7b , 0xa , 0x1 , 0xffd0 , 0x00000000}, +{0xbf , 0x8 , 0x7 , 0x0000 , 0x00000000}, +{0x07 , 0x8 , 0x0 , 0x0000 , 0x0000000e}, +{0x50 , 0x0 , 0x8 , 0x0000 , 0x00000000}, +{0xbf , 0x9 , 0x0 , 0x0000 , 0x00000000}, +{0xbf , 0x8 , 0x7 , 0x0000 , 0x00000000}, +{0x07 , 0x8 , 0x0 , 0x0000 , 0x00000017}, +{0x50 , 0x0 , 0x8 , 0x0000 , 0x00000000}, +{0x7b , 0xa , 0x0 , 0xffc0 , 0x00000000}, +{0xbf , 0x8 , 0x7 , 0x0000 , 0x00000000}, +{0x07 , 0x8 , 0x0 , 0x0000 , 0x00000016}, +{0x50 , 0x0 , 0x8 , 0x0000 , 0x00000000}, +{0x7b , 0xa , 0x0 , 0xffb8 , 0x00000000}, +{0xbf , 0x8 , 0x7 , 0x0000 , 0x00000000}, +{0x07 , 0x8 , 0x0 , 0x0000 , 0x00000012}, +{0x50 , 0x0 , 0x8 , 0x0000 , 0x00000000}, +{0x7b , 0xa , 0x0 , 0xff98 , 0x00000000}, +{0xbf , 0x8 , 0x7 , 0x0000 , 0x00000000}, +{0x07 , 0x8 , 0x0 , 0x0000 , 0x0000000f}, +{0x50 , 0x0 , 0x8 , 0x0000 , 0x00000000}, +{0xbf , 0x8 , 0x0 , 0x0000 , 0x00000000}, +{0x67 , 0x9 , 0x0 , 0x0000 , 0x00000008}, +{0x57 , 0x9 , 0x0 , 0x0000 , 0x0000ff00}, +{0x79 , 0x1 , 0xa , 0xffd0 , 0x00000000}, +{0x4f , 0x1 , 0x9 , 0x0000 , 0x00000000}, +{0x7b , 0xa , 0x1 , 0xffd0 , 0x00000000}, +{0xbf , 0x9 , 0x7 , 0x0000 , 0x00000000}, +{0x07 , 0x9 , 0x0 , 0x0000 , 0x00000015}, +{0x50 , 0x0 , 0x9 , 0x0000 , 0x00000000}, +{0x7b , 0xa , 0x0 , 0xffb0 , 0x00000000}, +{0xbf , 0x9 , 0x7 , 0x0000 , 0x00000000}, +{0x07 , 0x7 , 0x0 , 0x0000 , 0x00000014}, +{0x50 , 0x0 , 0x7 , 0x0000 , 0x00000000}, +{0x79 , 0x7 , 0xa , 0xffc8 , 0x00000000}, +{0x7b , 0xa , 0x0 , 0xff90 , 0x00000000}, +{0x07 , 0x9 , 0x0 , 0x0000 , 0x00000013}, +{0x50 , 0x0 , 0x9 , 0x0000 , 0x00000000}, +{0x79 , 0x3 , 0xa , 0xffd0 , 0x00000000}, +{0x57 , 0x8 , 0x0 , 0x0000 , 0x000000ff}, +{0x4f , 0x3 , 0x8 , 0x0000 , 0x00000000}, +{0xb7 , 0x4 , 0x0 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0xc7 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x65 , 0x1 , 0x0 , 0x0001 , 0xffffffff}, +{0x61 , 0x4 , 0x7 , 0x0008 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x40000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000001}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x20000000}, +{0x79 , 0x6 , 0xa , 0xffa8 , 0x00000000}, +{0x79 , 0x5 , 0xa , 0xffa0 , 0x00000000}, +{0x79 , 0x8 , 0xa , 0xff98 , 0x00000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x10000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000003}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x08000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x04000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000005}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x02000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000006}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x01000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000007}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000019}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00800000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x71 , 0x1 , 0x7 , 0x000f , 0x00000000}, +{0x61 , 0x2 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00400000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000009}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000017}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00200000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000a}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000016}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00100000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000b}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000015}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00080000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000c}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000014}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00040000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000d}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000013}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00020000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000e}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000012}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00010000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000f}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000011}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00008000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x69 , 0x1 , 0x7 , 0x000e , 0x00000000}, +{0x61 , 0x2 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000010}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00004000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000011}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00002000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000012}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00001000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000013}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000800}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000014}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000400}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000015}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000200}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000016}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000100}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000017}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000009}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000080}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000018}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000040}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000019}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000007}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001a}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000006}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x67 , 0x6 , 0x0 , 0x0000 , 0x00000010}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000010}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001b}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000005}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x57 , 0x6 , 0x0 , 0x0000 , 0x00ff0000}, +{0x67 , 0x5 , 0x0 , 0x0000 , 0x00000018}, +{0x67 , 0x8 , 0x0 , 0x0000 , 0x00000008}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000008}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001c}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000004}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x4f , 0x6 , 0x5 , 0x0000 , 0x00000000}, +{0x57 , 0x8 , 0x0 , 0x0000 , 0x0000ff00}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001d}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000003}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x4f , 0x6 , 0x8 , 0x0000 , 0x00000000}, +{0x57 , 0x0 , 0x0 , 0x0000 , 0x000000ff}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001e}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000002}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x4f , 0x6 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x3 , 0x0 , 0x0000 , 0x00000001}, +{0x79 , 0x8 , 0xa , 0xff90 , 0x00000000}, +{0x15 , 0x3 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0008 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001f}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000001}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0xc7 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x79 , 0x3 , 0xa , 0xffc0 , 0x00000000}, +{0x79 , 0x5 , 0xa , 0xffb8 , 0x00000000}, +{0x79 , 0x0 , 0xa , 0xffb0 , 0x00000000}, +{0x65 , 0x1 , 0x0 , 0x0003 , 0xffffffff}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x40000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000001}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x20000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x10000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000003}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x08000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x04000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000005}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x02000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000006}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x01000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000007}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000019}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00800000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x71 , 0x1 , 0x7 , 0x0013 , 0x00000000}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00400000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000009}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000017}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00200000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000a}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000016}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00100000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000b}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000015}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00080000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000c}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000014}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00040000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000d}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000013}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00020000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000e}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000012}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00010000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000f}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000011}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00008000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x69 , 0x1 , 0x7 , 0x0012 , 0x00000000}, +{0x61 , 0x2 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000010}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00004000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000011}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00002000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000012}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00001000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000013}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000800}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000014}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000400}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000015}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000200}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000016}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000100}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000017}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000009}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000080}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000018}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000040}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000019}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000007}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001a}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000006}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000010}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001b}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000005}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x67 , 0x8 , 0x0 , 0x0000 , 0x00000008}, +{0x57 , 0x0 , 0x0 , 0x0000 , 0x000000ff}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000008}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001c}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000004}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x4f , 0x0 , 0x8 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001d}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000003}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x67 , 0x0 , 0x0 , 0x0000 , 0x00000030}, +{0xbf , 0x1 , 0x6 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001e}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000002}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xc7 , 0x0 , 0x0 , 0x0000 , 0x00000020}, +{0x57 , 0x6 , 0x0 , 0x0000 , 0x00000001}, +{0x15 , 0x6 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x000c , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001f}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000001}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x65 , 0x0 , 0x0 , 0x0003 , 0xffffffff}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x40000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000001}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x20000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x10000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000003}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x08000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x04000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000005}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x02000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000006}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000001a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x01000000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000007}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000019}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00800000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x71 , 0x1 , 0x7 , 0x0017 , 0x00000000}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00400000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000009}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000017}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00200000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000a}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000016}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00100000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000b}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000015}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00080000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000c}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000014}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00040000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000d}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000013}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x67 , 0x5 , 0x0 , 0x0000 , 0x00000008}, +{0x57 , 0x3 , 0x0 , 0x0000 , 0x000000ff}, +{0xbf , 0x1 , 0x0 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00020000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000e}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000012}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x4f , 0x3 , 0x5 , 0x0000 , 0x00000000}, +{0x57 , 0x0 , 0x0 , 0x0000 , 0x00010000}, +{0x15 , 0x0 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000000f}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000011}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00008000}, +{0x15 , 0x1 , 0x0 , 0x0006 , 0x00000000}, +{0x69 , 0x1 , 0x7 , 0x0016 , 0x00000000}, +{0x61 , 0x2 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x2 , 0x0 , 0x0000 , 0x00000010}, +{0x4f , 0x1 , 0x2 , 0x0000 , 0x00000000}, +{0xaf , 0x1 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x1 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00004000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000011}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000f}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00002000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000012}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000e}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00001000}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000013}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000d}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000800}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000014}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000c}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000400}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000015}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000b}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000200}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000016}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x0000000a}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000100}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000017}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000009}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000080}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000018}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000008}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000040}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x00000019}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000007}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000020}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001a}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000006}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000010}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001b}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000005}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000008}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001c}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000004}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000004}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001d}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000003}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0xbf , 0x1 , 0x3 , 0x0000 , 0x00000000}, +{0x57 , 0x1 , 0x0 , 0x0000 , 0x00000002}, +{0x15 , 0x1 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001e}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000002}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x57 , 0x3 , 0x0 , 0x0000 , 0x00000001}, +{0x15 , 0x3 , 0x0 , 0x0007 , 0x00000000}, +{0x61 , 0x1 , 0x7 , 0x0010 , 0x00000000}, +{0x67 , 0x1 , 0x0 , 0x0000 , 0x0000001f}, +{0x61 , 0x2 , 0x7 , 0x0014 , 0x00000000}, +{0x77 , 0x2 , 0x0 , 0x0000 , 0x00000001}, +{0x4f , 0x2 , 0x1 , 0x0000 , 0x00000000}, +{0xaf , 0x2 , 0x4 , 0x0000 , 0x00000000}, +{0xbf , 0x4 , 0x2 , 0x0000 , 0x00000000}, +{0x18 , 0x1 , 0x0 , 0x0000 , 0x7830203a}, +{0x00 , 0x0 , 0x0 , 0x0000 , 0x000a7825}, +{0x7b , 0xa , 0x1 , 0xffe8 , 0x00000000}, +{0x18 , 0x1 , 0x0 , 0x0000 , 0x20782578}, +{0x00 , 0x0 , 0x0 , 0x0000 , 0x68736168}, +{0x7b , 0xa , 0x1 , 0xffe0 , 0x00000000}, +{0x18 , 0x1 , 0x0 , 0x0000 , 0x75657571}, +{0x00 , 0x0 , 0x0 , 0x0000 , 0x30203a65}, +{0x7b , 0xa , 0x1 , 0xffd8 , 0x00000000}, +{0xbf , 0x1 , 0xa , 0x0000 , 0x00000000}, +{0x07 , 0x1 , 0x0 , 0x0000 , 0xffffffd8}, +{0xb7 , 0x2 , 0x0 , 0x0000 , 0x00000018}, +{0x85 , 0x0 , 0x0 , 0x0000 , 0x00000006}, +{0x95 , 0x0 , 0x0 , 0x0000 , 0x00000000}, +}; + +#endif diff --git a/hw/net/rss_tap_bpf.h b/hw/net/rss_tap_bpf.h new file mode 100644 index 0000000000..54b88cfb76 --- /dev/null +++ b/hw/net/rss_tap_bpf.h @@ -0,0 +1,40 @@ +/* + * RSS ebpf header for virtio-net + * + * Copyright (c) 2018 RedHat. + * + * This work is licensed under the terms of the GNU GPL, version 2 or later. + * See the COPYING file in the top-level directory. + * + * This code is heavily based on the following bpf code from dpdk + * https://git.dpdk.org/dpdk/tree/drivers/net/tap/ + * + */ + +#ifndef RSS_TAP_BPF_H +#define RSS_TAP_BPF_H + +/* hashed fields for RSS */ +enum hash_field { + HASH_FIELD_IPV4_L3, /* IPv4 src/dst addr */ + HASH_FIELD_IPV4_L3_L4, /* IPv4 src/dst addr + L4 src/dst ports */ + HASH_FIELD_IPV6_L3, /* IPv6 src/dst addr */ + HASH_FIELD_IPV6_L3_L4, /* IPv6 src/dst addr + L4 src/dst ports */ + HASH_FIELD_L2_SRC, /* Ethernet src addr */ + HASH_FIELD_L2_DST, /* Ethernet dst addr */ + HASH_FIELD_L3_SRC, /* L3 src addr */ + HASH_FIELD_L3_DST, /* L3 dst addr */ + HASH_FIELD_L4_SRC, /* TCP/UDP src ports */ + HASH_FIELD_L4_DST, /* TCP/UDP dst ports */ +}; + +struct rss_key { + __u32 hash_fields; + __u32 nb_queues; + __u32 *indirection_table; + __u32 indirection_table_size; + __u8 *key; + __u32 key_size; +} __attribute__((packed)); + +#endif diff --git a/hw/net/rss_tap_bpf_program.c b/hw/net/rss_tap_bpf_program.c new file mode 100644 index 0000000000..2744436e86 --- /dev/null +++ b/hw/net/rss_tap_bpf_program.c @@ -0,0 +1,175 @@ +/* + * RSS ebpf code for virtio-net + * + * Copyright (c) 2018 RedHat. + * + * This work is licensed under the terms of the GNU GPL, version 2 or later. + * See the COPYING file in the top-level directory. + * + * This code is heavily based on the following bpf code from dpdk + * https://git.dpdk.org/dpdk/tree/drivers/net/tap/tap_bpf_program.c + * + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "bpf_api.h" +#include "rss_tap_bpf.h" + +/** Create IPv4 address */ +#define IPv4(a, b, c, d) ((__u32)(((a) & 0xff) << 24) | \ + (((b) & 0xff) << 16) | \ + (((c) & 0xff) << 8) | \ + ((d) & 0xff)) + +#define PORT(a, b) ((__u16)(((a) & 0xff) << 8) | \ + ((b) & 0xff)) + +#define KEY_IDX 0 + +struct vlan_hdr { + __be16 h_vlan_TCI; + __be16 h_vlan_encapsulated_proto; +}; + +struct bpf_elf_map __attribute__((section("maps"), used)) +map_rss = { + .type = BPF_MAP_TYPE_ARRAY, + .size_key = sizeof(__u32), + .size_value = sizeof(struct rss_key), + .max_elem = 1, +}; + +struct ipv4_l3_l4_tuple { + __u32 src_addr; + __u32 dst_addr; + __u16 dport; + __u16 sport; +} __attribute__((packed)); + +struct ipv6_l3_l4_tuple { + __u8 src_addr[16]; + __u8 dst_addr[16]; + __u16 dport; + __u16 sport; +} __attribute__((packed)); + +static __u32 __attribute__((always_inline)) + +rte_softrss_be(const __u32 *input_tuple, const uint8_t *key, + __u8 input_len) +{ + __u32 i, j, hash = 0; +#pragma unroll + for (j = 0; j < input_len; j++) { +#pragma unroll + for (i = 0; i < 32; i++) { + if (input_tuple[j] & (1 << (31 - i))) { + hash ^= ((const __u32 *) key)[j] << i | + (__u32)((uint64_t) + (((const __u32 *) key)[j + 1]) + >> (32 - i)); + } + } + } + return hash; +} + +static int __attribute__((always_inline)) +rss_l3_l4(struct __sk_buff *skb) +{ + __u64 proto = load_half(skb, 12); + __u64 nhoff = ETH_HLEN; + __u32 key_idx = 0xdeadbeef; + __u32 hash = 0; + int j = 0; + __u8 *key = 0; + __u32 queue = 0; + struct rss_key *rss_key; + + rss_key = (struct rss_key *) map_lookup_elem(&map_rss, &key_idx); + if (!rss_key) { + return -1; + } + + key = rss_key->key; + + if (proto == ETH_P_8021AD) { + proto = load_half(skb, nhoff + offsetof(struct vlan_hdr, + h_vlan_encapsulated_proto)); + nhoff += sizeof(struct vlan_hdr); + } + if (proto == ETH_P_8021Q) { + proto = load_half(skb, nhoff + offsetof(struct vlan_hdr, + h_vlan_encapsulated_proto)); + nhoff += sizeof(struct vlan_hdr); + } + if (likely(proto == ETH_P_IP)) { + struct ipv4_l3_l4_tuple v4_tuple = { + .src_addr = IPv4(load_byte(skb, nhoff + offsetof(struct iphdr, saddr)), + load_byte(skb, nhoff + offsetof(struct iphdr, saddr) + 1), + load_byte(skb, nhoff + offsetof(struct iphdr, saddr) + 2), + load_byte(skb, nhoff + offsetof(struct iphdr, saddr) + 3)), + .dst_addr = IPv4(load_byte(skb, nhoff + offsetof(struct iphdr, daddr)), + load_byte(skb, nhoff + offsetof(struct iphdr, daddr) + 1), + load_byte(skb, nhoff + offsetof(struct iphdr, daddr) + 2), + load_byte(skb, nhoff + offsetof(struct iphdr, daddr) + 3)), + .sport = PORT(load_byte(skb, nhoff + sizeof(struct iphdr)), + load_byte(skb, nhoff + sizeof(struct iphdr) + 1)), + .dport = PORT(load_byte(skb, nhoff + sizeof(struct iphdr) + 2), + load_byte(skb, nhoff + sizeof(struct iphdr) + 3)) + }; + __u8 input_len = sizeof(v4_tuple) / sizeof(__u32); + if (rss_key->hash_fields & (1 << HASH_FIELD_IPV4_L3)) { + input_len--; + } + hash = rte_softrss_be((__u32 *)&v4_tuple, key, input_len); + } else if (proto == htons(ETH_P_IPV6)) { + struct ipv6_l3_l4_tuple v6_tuple; + for (j = 0; j < 4; j++) { + *((uint32_t *)&v6_tuple.src_addr + j) = + load_word(skb, nhoff + offsetof(struct ipv6hdr, saddr) + j); + *((uint32_t *)&v6_tuple.dst_addr + j) = + load_word(skb, nhoff + offsetof(struct ipv6hdr, daddr) + j); + } + v6_tuple.sport = PORT(load_byte(skb, nhoff + sizeof(struct ipv6hdr)), + load_byte(skb, nhoff + sizeof(struct ipv6hdr) + 1)); + v6_tuple.dport = PORT(load_byte(skb, nhoff + sizeof(struct ipv6hdr) + 2), + load_byte(skb, nhoff + sizeof(struct ipv6hdr) + 3)); + + __u8 input_len = sizeof(v6_tuple) / sizeof(__u32); + if (rss_key->hash_fields & (1 << HASH_FIELD_IPV6_L3)) { + input_len--; + } + hash = rte_softrss_be((__u32 *)&v6_tuple, key, input_len); + } else { + return -1; + } + + queue = rss_key->indirection_table[(hash % rss_key->nb_queues)]; + return queue; +} + +#define RSS(L) \ + __section(#L) int \ + L ## _hash(struct __sk_buff *skb) \ + { \ + return rss_ ## L(skb); \ + } + +RSS(l3_l4) + +BPF_LICENSE("Dual BSD/GPL"); diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 4a52a6a1d0..66b2140cc7 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -27,6 +27,10 @@ #include "hw/virtio/virtio-access.h" #include "migration/misc.h" #include "standard-headers/linux/ethtool.h" +#include +#include +#include "rss_bpf_insns.h" +#include "rss_tap_bpf.h" #define VIRTIO_NET_VM_VERSION 11 @@ -972,6 +976,99 @@ static int virtio_net_handle_mq(VirtIONet *n, uint8_t cmd, return VIRTIO_NET_OK; } +static inline int sys_bpf(enum bpf_cmd cmd, union bpf_attr *attr, + unsigned int size) +{ + return syscall(__NR_bpf, cmd, attr, size); +} + +static int rss_load_bpf_program(int map_fd) +{ + int ret = 0; + union bpf_attr attr = {}; + + /* Insert map fd to the bpf filter program */ + l3_l4_hash_insns[3].imm = 0; + l3_l4_hash_insns[8].imm = map_fd; + + memset(&attr, 0, sizeof(attr)); + attr.prog_type = BPF_PROG_TYPE_SOCKET_FILTER; + attr.insn_cnt = ARRAY_SIZE(l3_l4_hash_insns); + attr.insns = (__u64) (unsigned long) (l3_l4_hash_insns); + attr.license = (__u64) (unsigned long) ("Dual BSD/GPL"); + + ret = sys_bpf(BPF_PROG_LOAD, &attr, sizeof(attr)); + + return ret; +} + +static int rss_create_map(VirtIONet *n, size_t size) +{ + union bpf_attr attr = {}; + + memset(&attr, 0, sizeof(attr)); + attr.map_type = BPF_MAP_TYPE_ARRAY; + attr.key_size = sizeof(__u32); + attr.value_size = size; + attr.max_entries = 1; + + return sys_bpf(BPF_MAP_CREATE, &attr, sizeof(attr)); +} + +static int rss_update_map(int fd, void *key, void *value) +{ + union bpf_attr attr = {}; + + memset(&attr, 0, sizeof(attr)); + + attr.map_type = BPF_MAP_TYPE_HASH; + attr.map_fd = fd; + attr.key = (__u64) (unsigned long) (key); + attr.value = (__u64) (unsigned long) (value); + attr.flags = BPF_ANY; + + return sys_bpf(BPF_MAP_UPDATE_ELEM, &attr, sizeof(attr)); +} + +static int virtio_net_rss_assign_bpf_filter(VirtIONet *n) +{ + NetClientState *nc; + struct rss_key rss_bpf_key_map; + int i = 0; + int map_fd = 0; + int ret = 0; + + if (n->rss_conf) { + rss_bpf_key_map.hash_fields = n->rss_conf->hash_function_flags; + rss_bpf_key_map.nb_queues = n->curr_queues; + rss_bpf_key_map.indirection_table = n->rss_conf->ptrs.indirection_table; + rss_bpf_key_map.indirection_table_size = n->rss_conf->indirection_table_length; + rss_bpf_key_map.key = n->rss_conf->ptrs.hash_key; + rss_bpf_key_map.key_size = n->rss_conf->hash_key_length; + map_fd = rss_create_map(n, sizeof(rss_bpf_key_map)); + } + + if (map_fd <= 0) { + return -1; + } + + rss_update_map(map_fd, 0, &rss_bpf_key_map); + int bpf_fd = rss_load_bpf_program(map_fd); + for (i = 0; i < n->curr_queues ; i++) { + nc = qemu_get_subqueue(n->nic, i); + + if (!nc->peer) { + return VIRTIO_NET_ERR; + } + + if (nc->peer->info->type != NET_CLIENT_DRIVER_TAP) { + return VIRTIO_NET_ERR; + } + vhost_net_get_fd(nc->peer); + ret = nc->peer->info->set_bpf_filter(nc->peer, bpf_fd, BPF_TYPE_STEERING); + } + return ret; +} static int virtio_net_ctrl_sm_rss(VirtIONet *n, uint32_t cmd, struct iovec *iov, unsigned int iov_cnt, @@ -1034,7 +1131,7 @@ static int virtio_net_ctrl_sm_rss(VirtIONet *n, uint32_t cmd, g_free(n->rss_conf->ptrs.indirection_table); return VIRTIO_NET_ERR; } - /* do bpf magic */ + virtio_net_rss_assign_bpf_filter(n); break; default: return VIRTIO_NET_ERR;