summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar bunnei2018-01-02 22:24:12 -0500
committerGravatar bunnei2018-01-02 22:24:12 -0500
commitb172f0d770486d4367fbea22906a5e908ef621e8 (patch)
tree6a564c23ed8f52c16c50942803f4a69fd0047f6c
parentvm_manager: Use a more reasonable MAX_ADDRESS size. (diff)
downloadyuzu-b172f0d770486d4367fbea22906a5e908ef621e8.tar.gz
yuzu-b172f0d770486d4367fbea22906a5e908ef621e8.tar.xz
yuzu-b172f0d770486d4367fbea22906a5e908ef621e8.zip
arm: Remove SkyEye/Dyncom code that is ARMv6-only.
-rw-r--r--src/citra_qt/debugger/registers.cpp46
-rw-r--r--src/core/CMakeLists.txt25
-rw-r--r--src/core/arm/arm_interface.h30
-rw-r--r--src/core/arm/dynarmic/arm_dynarmic.cpp26
-rw-r--r--src/core/arm/dynarmic/arm_dynarmic.h7
-rw-r--r--src/core/arm/dynarmic/arm_dynarmic_cp15.cpp88
-rw-r--r--src/core/arm/dynarmic/arm_dynarmic_cp15.h32
-rw-r--r--src/core/arm/dyncom/arm_dyncom.cpp132
-rw-r--r--src/core/arm/dyncom/arm_dyncom.h46
-rw-r--r--src/core/arm/dyncom/arm_dyncom_dec.cpp478
-rw-r--r--src/core/arm/dyncom/arm_dyncom_dec.h36
-rw-r--r--src/core/arm/dyncom/arm_dyncom_interpreter.cpp4578
-rw-r--r--src/core/arm/dyncom/arm_dyncom_interpreter.h9
-rw-r--r--src/core/arm/dyncom/arm_dyncom_run.h48
-rw-r--r--src/core/arm/dyncom/arm_dyncom_thumb.cpp390
-rw-r--r--src/core/arm/dyncom/arm_dyncom_thumb.h49
-rw-r--r--src/core/arm/dyncom/arm_dyncom_trans.cpp1887
-rw-r--r--src/core/arm/dyncom/arm_dyncom_trans.h494
-rw-r--r--src/core/arm/skyeye_common/arm_regformat.h187
-rw-r--r--src/core/arm/skyeye_common/armstate.cpp597
-rw-r--r--src/core/arm/skyeye_common/armstate.h245
-rw-r--r--src/core/arm/skyeye_common/armsupp.cpp189
-rw-r--r--src/core/arm/skyeye_common/armsupp.h32
-rw-r--r--src/core/arm/skyeye_common/vfp/asm_vfp.h83
-rw-r--r--src/core/arm/skyeye_common/vfp/vfp.cpp137
-rw-r--r--src/core/arm/skyeye_common/vfp/vfp.h43
-rw-r--r--src/core/arm/skyeye_common/vfp/vfp_helper.h433
-rw-r--r--src/core/arm/skyeye_common/vfp/vfpdouble.cpp1247
-rw-r--r--src/core/arm/skyeye_common/vfp/vfpinstr.cpp1703
-rw-r--r--src/core/arm/skyeye_common/vfp/vfpsingle.cpp1272
-rw-r--r--src/core/core.cpp5
-rw-r--r--src/core/gdbstub/gdbstub.cpp9
-rw-r--r--src/core/hle/kernel/svc.cpp28
-rw-r--r--src/core/hle/kernel/thread.cpp6
-rw-r--r--src/tests/CMakeLists.txt1
-rw-r--r--src/tests/core/arm/dyncom/arm_dyncom_vfp_tests.cpp50
-rw-r--r--src/tests/core/arm/dyncom/vfp_vadd_f32.inc13456
37 files changed, 23 insertions, 28101 deletions
diff --git a/src/citra_qt/debugger/registers.cpp b/src/citra_qt/debugger/registers.cpp
index b982bc58b..60b23021c 100644
--- a/src/citra_qt/debugger/registers.cpp
+++ b/src/citra_qt/debugger/registers.cpp
@@ -70,7 +70,6 @@ void RegistersWidget::OnDebugModeEntered() {
70 1, QString("0x%1").arg(Core::CPU().GetVFPReg(i), 8, 16, QLatin1Char('0'))); 70 1, QString("0x%1").arg(Core::CPU().GetVFPReg(i), 8, 16, QLatin1Char('0')));
71 71
72 UpdateCPSRValues(); 72 UpdateCPSRValues();
73 UpdateVFPSystemRegisterValues();
74} 73}
75 74
76void RegistersWidget::OnDebugModeLeft() {} 75void RegistersWidget::OnDebugModeLeft() {}
@@ -191,48 +190,5 @@ void RegistersWidget::CreateVFPSystemRegisterChildren() {
191} 190}
192 191
193void RegistersWidget::UpdateVFPSystemRegisterValues() { 192void RegistersWidget::UpdateVFPSystemRegisterValues() {
194 const u32 fpscr_val = Core::CPU().GetVFPSystemReg(VFP_FPSCR); 193 UNIMPLEMENTED();
195 const u32 fpexc_val = Core::CPU().GetVFPSystemReg(VFP_FPEXC);
196 const u32 fpinst_val = Core::CPU().GetVFPSystemReg(VFP_FPINST);
197 const u32 fpinst2_val = Core::CPU().GetVFPSystemReg(VFP_FPINST2);
198
199 QTreeWidgetItem* const fpscr = vfp_system_registers->child(0);
200 fpscr->setText(1, QString("0x%1").arg(fpscr_val, 8, 16, QLatin1Char('0')));
201 fpscr->child(0)->setText(1, QString::number(fpscr_val & 1));
202 fpscr->child(1)->setText(1, QString::number((fpscr_val >> 1) & 1));
203 fpscr->child(2)->setText(1, QString::number((fpscr_val >> 2) & 1));
204 fpscr->child(3)->setText(1, QString::number((fpscr_val >> 3) & 1));
205 fpscr->child(4)->setText(1, QString::number((fpscr_val >> 4) & 1));
206 fpscr->child(5)->setText(1, QString::number((fpscr_val >> 7) & 1));
207 fpscr->child(6)->setText(1, QString::number((fpscr_val >> 8) & 1));
208 fpscr->child(7)->setText(1, QString::number((fpscr_val >> 9) & 1));
209 fpscr->child(8)->setText(1, QString::number((fpscr_val >> 10) & 1));
210 fpscr->child(9)->setText(1, QString::number((fpscr_val >> 11) & 1));
211 fpscr->child(10)->setText(1, QString::number((fpscr_val >> 12) & 1));
212 fpscr->child(11)->setText(1, QString::number((fpscr_val >> 15) & 1));
213 fpscr->child(12)->setText(1, QString("b%1").arg((fpscr_val >> 16) & 7, 3, 2, QLatin1Char('0')));
214 fpscr->child(13)->setText(1, QString("b%1").arg((fpscr_val >> 20) & 3, 2, 2, QLatin1Char('0')));
215 fpscr->child(14)->setText(1, QString("b%1").arg((fpscr_val >> 22) & 3, 2, 2, QLatin1Char('0')));
216 fpscr->child(15)->setText(1, QString::number((fpscr_val >> 24) & 1));
217 fpscr->child(16)->setText(1, QString::number((fpscr_val >> 25) & 1));
218 fpscr->child(17)->setText(1, QString::number((fpscr_val >> 28) & 1));
219 fpscr->child(18)->setText(1, QString::number((fpscr_val >> 29) & 1));
220 fpscr->child(19)->setText(1, QString::number((fpscr_val >> 30) & 1));
221 fpscr->child(20)->setText(1, QString::number((fpscr_val >> 31) & 1));
222
223 QTreeWidgetItem* const fpexc = vfp_system_registers->child(1);
224 fpexc->setText(1, QString("0x%1").arg(fpexc_val, 8, 16, QLatin1Char('0')));
225 fpexc->child(0)->setText(1, QString::number(fpexc_val & 1));
226 fpexc->child(1)->setText(1, QString::number((fpexc_val >> 2) & 1));
227 fpexc->child(2)->setText(1, QString::number((fpexc_val >> 3) & 1));
228 fpexc->child(3)->setText(1, QString::number((fpexc_val >> 7) & 1));
229 fpexc->child(4)->setText(1, QString("b%1").arg((fpexc_val >> 8) & 7, 3, 2, QLatin1Char('0')));
230 fpexc->child(5)->setText(1, QString::number((fpexc_val >> 28) & 1));
231 fpexc->child(6)->setText(1, QString::number((fpexc_val >> 30) & 1));
232 fpexc->child(7)->setText(1, QString::number((fpexc_val >> 31) & 1));
233
234 vfp_system_registers->child(2)->setText(
235 1, QString("0x%1").arg(fpinst_val, 8, 16, QLatin1Char('0')));
236 vfp_system_registers->child(3)->setText(
237 1, QString("0x%1").arg(fpinst2_val, 8, 16, QLatin1Char('0')));
238} 194}
diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt
index d93eb39a4..7da6ed318 100644
--- a/src/core/CMakeLists.txt
+++ b/src/core/CMakeLists.txt
@@ -1,19 +1,7 @@
1set(SRCS 1set(SRCS
2 arm/dynarmic/arm_dynarmic.cpp 2 arm/dynarmic/arm_dynarmic.cpp
3 arm/dynarmic/arm_dynarmic_cp15.cpp
4 arm/dyncom/arm_dyncom.cpp
5 arm/dyncom/arm_dyncom_dec.cpp
6 arm/dyncom/arm_dyncom_interpreter.cpp
7 arm/dyncom/arm_dyncom_thumb.cpp
8 arm/dyncom/arm_dyncom_trans.cpp
9 arm/unicorn/arm_unicorn.cpp 3 arm/unicorn/arm_unicorn.cpp
10 arm/unicorn/unicorn_dynload.c 4 arm/unicorn/unicorn_dynload.c
11 arm/skyeye_common/armstate.cpp
12 arm/skyeye_common/armsupp.cpp
13 arm/skyeye_common/vfp/vfp.cpp
14 arm/skyeye_common/vfp/vfpdouble.cpp
15 arm/skyeye_common/vfp/vfpinstr.cpp
16 arm/skyeye_common/vfp/vfpsingle.cpp
17 core.cpp 5 core.cpp
18 core_timing.cpp 6 core_timing.cpp
19 file_sys/archive_backend.cpp 7 file_sys/archive_backend.cpp
@@ -86,21 +74,8 @@ set(HEADERS
86 3ds.h 74 3ds.h
87 arm/arm_interface.h 75 arm/arm_interface.h
88 arm/dynarmic/arm_dynarmic.h 76 arm/dynarmic/arm_dynarmic.h
89 arm/dynarmic/arm_dynarmic_cp15.h
90 arm/dyncom/arm_dyncom.h
91 arm/dyncom/arm_dyncom_dec.h
92 arm/dyncom/arm_dyncom_interpreter.h
93 arm/dyncom/arm_dyncom_run.h
94 arm/dyncom/arm_dyncom_thumb.h
95 arm/dyncom/arm_dyncom_trans.h
96 arm/unicorn/arm_unicorn.h 77 arm/unicorn/arm_unicorn.h
97 arm/unicorn/unicorn_dynload.h 78 arm/unicorn/unicorn_dynload.h
98 arm/skyeye_common/arm_regformat.h
99 arm/skyeye_common/armstate.h
100 arm/skyeye_common/armsupp.h
101 arm/skyeye_common/vfp/asm_vfp.h
102 arm/skyeye_common/vfp/vfp.h
103 arm/skyeye_common/vfp/vfp_helper.h
104 core.h 79 core.h
105 core_timing.h 80 core_timing.h
106 file_sys/archive_backend.h 81 file_sys/archive_backend.h
diff --git a/src/core/arm/arm_interface.h b/src/core/arm/arm_interface.h
index 0b3096347..c0d6e2604 100644
--- a/src/core/arm/arm_interface.h
+++ b/src/core/arm/arm_interface.h
@@ -6,8 +6,6 @@
6 6
7#include "common/common_types.h" 7#include "common/common_types.h"
8#include "core/hle/kernel/vm_manager.h" 8#include "core/hle/kernel/vm_manager.h"
9#include "core/arm/skyeye_common/arm_regformat.h"
10#include "core/arm/skyeye_common/vfp/asm_vfp.h"
11 9
12/// Generic ARM11 CPU interface 10/// Generic ARM11 CPU interface
13class ARM_Interface : NonCopyable { 11class ARM_Interface : NonCopyable {
@@ -96,20 +94,6 @@ public:
96 virtual void SetVFPReg(int index, u32 value) = 0; 94 virtual void SetVFPReg(int index, u32 value) = 0;
97 95
98 /** 96 /**
99 * Gets the current value within a given VFP system register
100 * @param reg The VFP system register
101 * @return The value within the VFP system register
102 */
103 virtual u32 GetVFPSystemReg(VFPSystemRegister reg) const = 0;
104
105 /**
106 * Sets the VFP system register to the given value
107 * @param reg The VFP system register
108 * @param value Value to set the VFP system register to
109 */
110 virtual void SetVFPSystemReg(VFPSystemRegister reg, u32 value) = 0;
111
112 /**
113 * Get the current CPSR register 97 * Get the current CPSR register
114 * @return Returns the value of the CPSR register 98 * @return Returns the value of the CPSR register
115 */ 99 */
@@ -121,20 +105,6 @@ public:
121 */ 105 */
122 virtual void SetCPSR(u32 cpsr) = 0; 106 virtual void SetCPSR(u32 cpsr) = 0;
123 107
124 /**
125 * Gets the value stored in a CP15 register.
126 * @param reg The CP15 register to retrieve the value from.
127 * @return the value stored in the given CP15 register.
128 */
129 virtual u32 GetCP15Register(CP15Register reg) = 0;
130
131 /**
132 * Stores the given value into the indicated CP15 register.
133 * @param reg The CP15 register to store the value into.
134 * @param value The value to store into the CP15 register.
135 */
136 virtual void SetCP15Register(CP15Register reg, u32 value) = 0;
137
138 virtual VAddr GetTlsAddress() const = 0; 108 virtual VAddr GetTlsAddress() const = 0;
139 109
140 virtual void SetTlsAddress(VAddr address) = 0; 110 virtual void SetTlsAddress(VAddr address) = 0;
diff --git a/src/core/arm/dynarmic/arm_dynarmic.cpp b/src/core/arm/dynarmic/arm_dynarmic.cpp
index 6dcab5bab..89754da17 100644
--- a/src/core/arm/dynarmic/arm_dynarmic.cpp
+++ b/src/core/arm/dynarmic/arm_dynarmic.cpp
@@ -7,11 +7,9 @@
7#include "common/assert.h" 7#include "common/assert.h"
8#include "common/microprofile.h" 8#include "common/microprofile.h"
9#include "core/arm/dynarmic/arm_dynarmic.h" 9#include "core/arm/dynarmic/arm_dynarmic.h"
10#include "core/arm/dynarmic/arm_dynarmic_cp15.h"
11#include "core/arm/dyncom/arm_dyncom_interpreter.h"
12#include "core/core.h" 10#include "core/core.h"
13#include "core/core_timing.h" 11#include "core/core_timing.h"
14#include "core/hle/svc.h" 12#include "core/hle/kernel/svc.h"
15#include "core/memory.h" 13#include "core/memory.h"
16 14
17static void InterpreterFallback(u64 pc, Dynarmic::Jit* jit, void* user_arg) { 15static void InterpreterFallback(u64 pc, Dynarmic::Jit* jit, void* user_arg) {
@@ -55,11 +53,11 @@ void MemoryWrite64(const u64 addr, const u64 data) {
55 Memory::Write64(static_cast<VAddr>(addr), data); 53 Memory::Write64(static_cast<VAddr>(addr), data);
56} 54}
57 55
58static Dynarmic::UserCallbacks GetUserCallbacks(ARM_Dynarmic* this_) { 56static Dynarmic::UserCallbacks GetUserCallbacks(ARM_Interface* interpreter_fallback) {
59 Dynarmic::UserCallbacks user_callbacks{}; 57 Dynarmic::UserCallbacks user_callbacks{};
60 user_callbacks.InterpreterFallback = &InterpreterFallback; 58 user_callbacks.InterpreterFallback = &InterpreterFallback;
61 user_callbacks.user_arg = static_cast<void*>(this_); 59 user_callbacks.user_arg = static_cast<void*>(interpreter_fallback);
62 user_callbacks.CallSVC = &SVC::CallSVC; 60 user_callbacks.CallSVC = &Kernel::CallSVC;
63 user_callbacks.memory.IsReadOnlyMemory = &IsReadOnlyMemory; 61 user_callbacks.memory.IsReadOnlyMemory = &IsReadOnlyMemory;
64 user_callbacks.memory.ReadCode = &MemoryRead32; 62 user_callbacks.memory.ReadCode = &MemoryRead32;
65 user_callbacks.memory.Read8 = &MemoryRead8; 63 user_callbacks.memory.Read8 = &MemoryRead8;
@@ -74,7 +72,7 @@ static Dynarmic::UserCallbacks GetUserCallbacks(ARM_Dynarmic* this_) {
74 return user_callbacks; 72 return user_callbacks;
75} 73}
76 74
77ARM_Dynarmic::ARM_Dynarmic(PrivilegeMode initial_mode) { 75ARM_Dynarmic::ARM_Dynarmic() {
78} 76}
79 77
80void ARM_Dynarmic::MapBackingMemory(VAddr address, size_t size, u8* memory, Kernel::VMAPermission perms) { 78void ARM_Dynarmic::MapBackingMemory(VAddr address, size_t size, u8* memory, Kernel::VMAPermission perms) {
@@ -111,13 +109,6 @@ u32 ARM_Dynarmic::GetVFPReg(int index) const {
111void ARM_Dynarmic::SetVFPReg(int index, u32 value) { 109void ARM_Dynarmic::SetVFPReg(int index, u32 value) {
112} 110}
113 111
114u32 ARM_Dynarmic::GetVFPSystemReg(VFPSystemRegister reg) const {
115 return {};
116}
117
118void ARM_Dynarmic::SetVFPSystemReg(VFPSystemRegister reg, u32 value) {
119}
120
121u32 ARM_Dynarmic::GetCPSR() const { 112u32 ARM_Dynarmic::GetCPSR() const {
122 return jit->Cpsr(); 113 return jit->Cpsr();
123} 114}
@@ -126,13 +117,6 @@ void ARM_Dynarmic::SetCPSR(u32 cpsr) {
126 jit->Cpsr() = cpsr; 117 jit->Cpsr() = cpsr;
127} 118}
128 119
129u32 ARM_Dynarmic::GetCP15Register(CP15Register reg) {
130 return {};
131}
132
133void ARM_Dynarmic::SetCP15Register(CP15Register reg, u32 value) {
134}
135
136VAddr ARM_Dynarmic::GetTlsAddress() const { 120VAddr ARM_Dynarmic::GetTlsAddress() const {
137 return jit->TlsAddr(); 121 return jit->TlsAddr();
138} 122}
diff --git a/src/core/arm/dynarmic/arm_dynarmic.h b/src/core/arm/dynarmic/arm_dynarmic.h
index 6567359b0..5c7f516d8 100644
--- a/src/core/arm/dynarmic/arm_dynarmic.h
+++ b/src/core/arm/dynarmic/arm_dynarmic.h
@@ -9,7 +9,6 @@
9#include <dynarmic/dynarmic.h> 9#include <dynarmic/dynarmic.h>
10#include "common/common_types.h" 10#include "common/common_types.h"
11#include "core/arm/arm_interface.h" 11#include "core/arm/arm_interface.h"
12#include "core/arm/skyeye_common/armstate.h"
13 12
14namespace Memory { 13namespace Memory {
15struct PageTable; 14struct PageTable;
@@ -17,7 +16,7 @@ struct PageTable;
17 16
18class ARM_Dynarmic final : public ARM_Interface { 17class ARM_Dynarmic final : public ARM_Interface {
19public: 18public:
20 ARM_Dynarmic(PrivilegeMode initial_mode); 19 ARM_Dynarmic();
21 20
22 void MapBackingMemory(VAddr address, size_t size, u8* memory, Kernel::VMAPermission perms) override; 21 void MapBackingMemory(VAddr address, size_t size, u8* memory, Kernel::VMAPermission perms) override;
23 22
@@ -29,12 +28,8 @@ public:
29 void SetExtReg(int index, u128& value) override; 28 void SetExtReg(int index, u128& value) override;
30 u32 GetVFPReg(int index) const override; 29 u32 GetVFPReg(int index) const override;
31 void SetVFPReg(int index, u32 value) override; 30 void SetVFPReg(int index, u32 value) override;
32 u32 GetVFPSystemReg(VFPSystemRegister reg) const override;
33 void SetVFPSystemReg(VFPSystemRegister reg, u32 value) override;
34 u32 GetCPSR() const override; 31 u32 GetCPSR() const override;
35 void SetCPSR(u32 cpsr) override; 32 void SetCPSR(u32 cpsr) override;
36 u32 GetCP15Register(CP15Register reg) override;
37 void SetCP15Register(CP15Register reg, u32 value) override;
38 VAddr GetTlsAddress() const override; 33 VAddr GetTlsAddress() const override;
39 void SetTlsAddress(VAddr address) override; 34 void SetTlsAddress(VAddr address) override;
40 35
diff --git a/src/core/arm/dynarmic/arm_dynarmic_cp15.cpp b/src/core/arm/dynarmic/arm_dynarmic_cp15.cpp
deleted file mode 100644
index b1fdce096..000000000
--- a/src/core/arm/dynarmic/arm_dynarmic_cp15.cpp
+++ /dev/null
@@ -1,88 +0,0 @@
1// Copyright 2017 Citra Emulator Project
2// Licensed under GPLv2 or any later version
3// Refer to the license.txt file included.
4
5#include "core/arm/dynarmic/arm_dynarmic_cp15.h"
6#include "core/arm/skyeye_common/arm_regformat.h"
7#include "core/arm/skyeye_common/armstate.h"
8
9using Callback = Dynarmic::Coprocessor::Callback;
10using CallbackOrAccessOneWord = Dynarmic::Coprocessor::CallbackOrAccessOneWord;
11using CallbackOrAccessTwoWords = Dynarmic::Coprocessor::CallbackOrAccessTwoWords;
12
13DynarmicCP15::DynarmicCP15(const std::shared_ptr<ARMul_State>& state) : interpreter_state(state) {}
14
15DynarmicCP15::~DynarmicCP15() = default;
16
17boost::optional<Callback> DynarmicCP15::CompileInternalOperation(bool two, unsigned opc1,
18 CoprocReg CRd, CoprocReg CRn,
19 CoprocReg CRm, unsigned opc2) {
20 return boost::none;
21}
22
23CallbackOrAccessOneWord DynarmicCP15::CompileSendOneWord(bool two, unsigned opc1, CoprocReg CRn,
24 CoprocReg CRm, unsigned opc2) {
25 // TODO(merry): Privileged CP15 registers
26
27 if (!two && CRn == CoprocReg::C7 && opc1 == 0 && CRm == CoprocReg::C5 && opc2 == 4) {
28 // This is a dummy write, we ignore the value written here.
29 return &interpreter_state->CP15[CP15_FLUSH_PREFETCH_BUFFER];
30 }
31
32 if (!two && CRn == CoprocReg::C7 && opc1 == 0 && CRm == CoprocReg::C10) {
33 switch (opc2) {
34 case 4:
35 // This is a dummy write, we ignore the value written here.
36 return &interpreter_state->CP15[CP15_DATA_SYNC_BARRIER];
37 case 5:
38 // This is a dummy write, we ignore the value written here.
39 return &interpreter_state->CP15[CP15_DATA_MEMORY_BARRIER];
40 default:
41 return boost::blank{};
42 }
43 }
44
45 if (!two && CRn == CoprocReg::C13 && opc1 == 0 && CRm == CoprocReg::C0 && opc2 == 2) {
46 return &interpreter_state->CP15[CP15_THREAD_UPRW];
47 }
48
49 return boost::blank{};
50}
51
52CallbackOrAccessTwoWords DynarmicCP15::CompileSendTwoWords(bool two, unsigned opc, CoprocReg CRm) {
53 return boost::blank{};
54}
55
56CallbackOrAccessOneWord DynarmicCP15::CompileGetOneWord(bool two, unsigned opc1, CoprocReg CRn,
57 CoprocReg CRm, unsigned opc2) {
58 // TODO(merry): Privileged CP15 registers
59
60 if (!two && CRn == CoprocReg::C13 && opc1 == 0 && CRm == CoprocReg::C0) {
61 switch (opc2) {
62 case 2:
63 return &interpreter_state->CP15[CP15_THREAD_UPRW];
64 case 3:
65 return &interpreter_state->CP15[CP15_THREAD_URO];
66 default:
67 return boost::blank{};
68 }
69 }
70
71 return boost::blank{};
72}
73
74CallbackOrAccessTwoWords DynarmicCP15::CompileGetTwoWords(bool two, unsigned opc, CoprocReg CRm) {
75 return boost::blank{};
76}
77
78boost::optional<Callback> DynarmicCP15::CompileLoadWords(bool two, bool long_transfer,
79 CoprocReg CRd,
80 boost::optional<u8> option) {
81 return boost::none;
82}
83
84boost::optional<Callback> DynarmicCP15::CompileStoreWords(bool two, bool long_transfer,
85 CoprocReg CRd,
86 boost::optional<u8> option) {
87 return boost::none;
88}
diff --git a/src/core/arm/dynarmic/arm_dynarmic_cp15.h b/src/core/arm/dynarmic/arm_dynarmic_cp15.h
deleted file mode 100644
index 7fa54e14c..000000000
--- a/src/core/arm/dynarmic/arm_dynarmic_cp15.h
+++ /dev/null
@@ -1,32 +0,0 @@
1// Copyright 2017 Citra Emulator Project
2// Licensed under GPLv2 or any later version
3// Refer to the license.txt file included.
4
5#include <memory>
6#include <dynarmic/coprocessor.h>
7#include "common/common_types.h"
8
9struct ARMul_State;
10
11class DynarmicCP15 final : public Dynarmic::Coprocessor {
12public:
13 explicit DynarmicCP15(const std::shared_ptr<ARMul_State>&);
14 ~DynarmicCP15() override;
15
16 boost::optional<Callback> CompileInternalOperation(bool two, unsigned opc1, CoprocReg CRd,
17 CoprocReg CRn, CoprocReg CRm,
18 unsigned opc2) override;
19 CallbackOrAccessOneWord CompileSendOneWord(bool two, unsigned opc1, CoprocReg CRn,
20 CoprocReg CRm, unsigned opc2) override;
21 CallbackOrAccessTwoWords CompileSendTwoWords(bool two, unsigned opc, CoprocReg CRm) override;
22 CallbackOrAccessOneWord CompileGetOneWord(bool two, unsigned opc1, CoprocReg CRn, CoprocReg CRm,
23 unsigned opc2) override;
24 CallbackOrAccessTwoWords CompileGetTwoWords(bool two, unsigned opc, CoprocReg CRm) override;
25 boost::optional<Callback> CompileLoadWords(bool two, bool long_transfer, CoprocReg CRd,
26 boost::optional<u8> option) override;
27 boost::optional<Callback> CompileStoreWords(bool two, bool long_transfer, CoprocReg CRd,
28 boost::optional<u8> option) override;
29
30private:
31 std::shared_ptr<ARMul_State> interpreter_state;
32};
diff --git a/src/core/arm/dyncom/arm_dyncom.cpp b/src/core/arm/dyncom/arm_dyncom.cpp
deleted file mode 100644
index 5ebf7a2f1..000000000
--- a/src/core/arm/dyncom/arm_dyncom.cpp
+++ /dev/null
@@ -1,132 +0,0 @@
1// Copyright 2014 Citra Emulator Project
2// Licensed under GPLv2 or any later version
3// Refer to the license.txt file included.
4
5#include <cstring>
6#include <memory>
7#include "core/arm/dyncom/arm_dyncom.h"
8#include "core/arm/dyncom/arm_dyncom_interpreter.h"
9#include "core/arm/dyncom/arm_dyncom_run.h"
10#include "core/arm/dyncom/arm_dyncom_trans.h"
11#include "core/arm/skyeye_common/armstate.h"
12#include "core/arm/skyeye_common/armsupp.h"
13#include "core/arm/skyeye_common/vfp/vfp.h"
14#include "core/core.h"
15#include "core/core_timing.h"
16
17ARM_DynCom::ARM_DynCom(PrivilegeMode initial_mode) {
18 state = std::make_unique<ARMul_State>(initial_mode);
19}
20
21ARM_DynCom::~ARM_DynCom() {}
22
23void ARM_DynCom::ClearInstructionCache() {
24 state->instruction_cache.clear();
25 trans_cache_buf_top = 0;
26}
27
28void ARM_DynCom::SetPC(u64 pc) {
29 state->Reg[15] = pc;
30}
31
32void ARM_DynCom::PageTableChanged() {
33 ClearInstructionCache();
34}
35
36u64 ARM_DynCom::GetPC() const {
37 return state->Reg[15];
38}
39
40u64 ARM_DynCom::GetReg(int index) const {
41 return state->Reg[index];
42}
43
44void ARM_DynCom::SetReg(int index, u64 value) {
45 state->Reg[index] = value;
46}
47
48const u128& ARM_DynCom::GetExtReg(int index) const {
49 return {};
50}
51
52void ARM_DynCom::SetExtReg(int index, u128& value) {
53}
54
55u32 ARM_DynCom::GetVFPReg(int index) const {
56 return state->ExtReg[index];
57}
58
59void ARM_DynCom::SetVFPReg(int index, u32 value) {
60 state->ExtReg[index] = value;
61}
62
63u32 ARM_DynCom::GetVFPSystemReg(VFPSystemRegister reg) const {
64 return state->VFP[reg];
65}
66
67void ARM_DynCom::SetVFPSystemReg(VFPSystemRegister reg, u32 value) {
68 state->VFP[reg] = value;
69}
70
71u32 ARM_DynCom::GetCPSR() const {
72 return state->Cpsr;
73}
74
75void ARM_DynCom::SetCPSR(u32 cpsr) {
76 state->Cpsr = cpsr;
77}
78
79u32 ARM_DynCom::GetCP15Register(CP15Register reg) {
80 return state->CP15[reg];
81}
82
83void ARM_DynCom::SetCP15Register(CP15Register reg, u32 value) {
84 state->CP15[reg] = value;
85}
86
87VAddr ARM_DynCom::GetTlsAddress() const {
88 return {};
89}
90
91void ARM_DynCom::SetTlsAddress(VAddr /*address*/) {
92}
93
94void ARM_DynCom::ExecuteInstructions(int num_instructions) {
95 state->NumInstrsToExecute = num_instructions;
96
97 // Dyncom only breaks on instruction dispatch. This only happens on every instruction when
98 // executing one instruction at a time. Otherwise, if a block is being executed, more
99 // instructions may actually be executed than specified.
100 unsigned ticks_executed = InterpreterMainLoop(state.get());
101 CoreTiming::AddTicks(ticks_executed);
102}
103
104void ARM_DynCom::SaveContext(ThreadContext& ctx) {
105 memcpy(ctx.cpu_registers, state->Reg.data(), sizeof(ctx.cpu_registers));
106 memcpy(ctx.fpu_registers, state->ExtReg.data(), sizeof(ctx.fpu_registers));
107
108 ctx.sp = state->Reg[13];
109 ctx.lr = state->Reg[14];
110 ctx.pc = state->Reg[15];
111 ctx.cpsr = state->Cpsr;
112
113 ctx.fpscr = state->VFP[VFP_FPSCR];
114 ctx.fpexc = state->VFP[VFP_FPEXC];
115}
116
117void ARM_DynCom::LoadContext(const ThreadContext& ctx) {
118 memcpy(state->Reg.data(), ctx.cpu_registers, sizeof(ctx.cpu_registers));
119 memcpy(state->ExtReg.data(), ctx.fpu_registers, sizeof(ctx.fpu_registers));
120
121 state->Reg[13] = ctx.sp;
122 state->Reg[14] = ctx.lr;
123 state->Reg[15] = ctx.pc;
124 state->Cpsr = ctx.cpsr;
125
126 state->VFP[VFP_FPSCR] = ctx.fpscr;
127 state->VFP[VFP_FPEXC] = ctx.fpexc;
128}
129
130void ARM_DynCom::PrepareReschedule() {
131 state->NumInstrsToExecute = 0;
132}
diff --git a/src/core/arm/dyncom/arm_dyncom.h b/src/core/arm/dyncom/arm_dyncom.h
deleted file mode 100644
index cc3c0f3da..000000000
--- a/src/core/arm/dyncom/arm_dyncom.h
+++ /dev/null
@@ -1,46 +0,0 @@
1// Copyright 2014 Citra Emulator Project
2// Licensed under GPLv2 or any later version
3// Refer to the license.txt file included.
4
5#pragma once
6
7#include <memory>
8#include "common/common_types.h"
9#include "core/arm/arm_interface.h"
10#include "core/arm/skyeye_common/arm_regformat.h"
11#include "core/arm/skyeye_common/armstate.h"
12
13class ARM_DynCom final : public ARM_Interface {
14public:
15 ARM_DynCom(PrivilegeMode initial_mode);
16 ~ARM_DynCom();
17
18 void ClearInstructionCache() override;
19 void PageTableChanged() override;
20
21 void SetPC(u64 pc) override;
22 u64 GetPC() const override;
23 u64 GetReg(int index) const override;
24 void SetReg(int index, u64 value) override;
25 const u128& GetExtReg(int index) const override;
26 void SetExtReg(int index, u128& value) override;
27 u32 GetVFPReg(int index) const override;
28 void SetVFPReg(int index, u32 value) override;
29 u32 GetVFPSystemReg(VFPSystemRegister reg) const override;
30 void SetVFPSystemReg(VFPSystemRegister reg, u32 value) override;
31 u32 GetCPSR() const override;
32 void SetCPSR(u32 cpsr) override;
33 u32 GetCP15Register(CP15Register reg) override;
34 void SetCP15Register(CP15Register reg, u32 value) override;
35 VAddr GetTlsAddress() const override;
36 void SetTlsAddress(VAddr address) override;
37
38 void SaveContext(ThreadContext& ctx) override;
39 void LoadContext(const ThreadContext& ctx) override;
40
41 void PrepareReschedule() override;
42 void ExecuteInstructions(int num_instructions) override;
43
44private:
45 std::unique_ptr<ARMul_State> state;
46};
diff --git a/src/core/arm/dyncom/arm_dyncom_dec.cpp b/src/core/arm/dyncom/arm_dyncom_dec.cpp
deleted file mode 100644
index dcfcd6561..000000000
--- a/src/core/arm/dyncom/arm_dyncom_dec.cpp
+++ /dev/null
@@ -1,478 +0,0 @@
1// Copyright 2012 Michael Kang, 2014 Citra Emulator Project
2// Licensed under GPLv2 or any later version
3// Refer to the license.txt file included.
4
5#include "core/arm/dyncom/arm_dyncom_dec.h"
6#include "core/arm/skyeye_common/armsupp.h"
7
8// clang-format off
9const InstructionSetEncodingItem arm_instruction[] = {
10 { "vmla", 5, ARMVFP2, { 23, 27, 0x1C, 20, 21, 0x0, 9, 11, 0x5, 6, 6, 0, 4, 4, 0 }},
11 { "vmls", 5, ARMVFP2, { 23, 27, 0x1C, 20, 21, 0x0, 9, 11, 0x5, 6, 6, 1, 4, 4, 0 }},
12 { "vnmla", 5, ARMVFP2, { 23, 27, 0x1C, 20, 21, 0x1, 9, 11, 0x5, 6, 6, 1, 4, 4, 0 }},
13 { "vnmls", 5, ARMVFP2, { 23, 27, 0x1C, 20, 21, 0x1, 9, 11, 0x5, 6, 6, 0, 4, 4, 0 }},
14 { "vnmul", 5, ARMVFP2, { 23, 27, 0x1C, 20, 21, 0x2, 9, 11, 0x5, 6, 6, 1, 4, 4, 0 }},
15 { "vmul", 5, ARMVFP2, { 23, 27, 0x1C, 20, 21, 0x2, 9, 11, 0x5, 6, 6, 0, 4, 4, 0 }},
16 { "vadd", 5, ARMVFP2, { 23, 27, 0x1C, 20, 21, 0x3, 9, 11, 0x5, 6, 6, 0, 4, 4, 0 }},
17 { "vsub", 5, ARMVFP2, { 23, 27, 0x1C, 20, 21, 0x3, 9, 11, 0x5, 6, 6, 1, 4, 4, 0 }},
18 { "vdiv", 5, ARMVFP2, { 23, 27, 0x1D, 20, 21, 0x0, 9, 11, 0x5, 6, 6, 0, 4, 4, 0 }},
19 { "vmov(i)", 4, ARMVFP3, { 23, 27, 0x1D, 20, 21, 0x3, 9, 11, 0x5, 4, 7, 0 }},
20 { "vmov(r)", 5, ARMVFP3, { 23, 27, 0x1D, 16, 21, 0x30, 9, 11, 0x5, 6, 7, 1, 4, 4, 0 }},
21 { "vabs", 5, ARMVFP2, { 23, 27, 0x1D, 16, 21, 0x30, 9, 11, 0x5, 6, 7, 3, 4, 4, 0 }},
22 { "vneg", 5, ARMVFP2, { 23, 27, 0x1D, 17, 21, 0x18, 9, 11, 0x5, 6, 7, 1, 4, 4, 0 }},
23 { "vsqrt", 5, ARMVFP2, { 23, 27, 0x1D, 16, 21, 0x31, 9, 11, 0x5, 6, 7, 3, 4, 4, 0 }},
24 { "vcmp", 5, ARMVFP2, { 23, 27, 0x1D, 16, 21, 0x34, 9, 11, 0x5, 6, 6, 1, 4, 4, 0 }},
25 { "vcmp2", 5, ARMVFP2, { 23, 27, 0x1D, 16, 21, 0x35, 9, 11, 0x5, 0, 6, 0x40 }},
26 { "vcvt(bds)", 5, ARMVFP2, { 23, 27, 0x1D, 16, 21, 0x37, 9, 11, 0x5, 6, 7, 3, 4, 4, 0 }},
27 { "vcvt(bff)", 6, ARMVFP3, { 23, 27, 0x1D, 19, 21, 0x7, 17, 17, 0x1, 9, 11, 5, 6, 6, 1 }},
28 { "vcvt(bfi)", 5, ARMVFP2, { 23, 27, 0x1D, 19, 21, 0x7, 9, 11, 0x5, 6, 6, 1, 4, 4, 0 }},
29 { "vmovbrs", 3, ARMVFP2, { 21, 27, 0x70, 8, 11, 0xA, 0, 6, 0x10 }},
30 { "vmsr", 2, ARMVFP2, { 20, 27, 0xEE, 0, 11, 0xA10 }},
31 { "vmovbrc", 4, ARMVFP2, { 23, 27, 0x1C, 20, 20, 0x0, 8, 11, 0xB, 0, 4, 0x10 }},
32 { "vmrs", 2, ARMVFP2, { 20, 27, 0xEF, 0, 11, 0xA10 }},
33 { "vmovbcr", 4, ARMVFP2, { 24, 27, 0xE, 20, 20, 1, 8, 11, 0xB, 0, 4, 0x10 }},
34 { "vmovbrrss", 3, ARMVFP2, { 21, 27, 0x62, 8, 11, 0xA, 4, 4, 1 }},
35 { "vmovbrrd", 3, ARMVFP2, { 21, 27, 0x62, 6, 11, 0x2C, 4, 4, 1 }},
36 { "vstr", 3, ARMVFP2, { 24, 27, 0xD, 20, 21, 0, 9, 11, 5 }},
37 { "vpush", 3, ARMVFP2, { 23, 27, 0x1A, 16, 21, 0x2D, 9, 11, 5 }},
38 { "vstm", 3, ARMVFP2, { 25, 27, 0x6, 20, 20, 0, 9, 11, 5 }},
39 { "vpop", 3, ARMVFP2, { 23, 27, 0x19, 16, 21, 0x3D, 9, 11, 5 }},
40 { "vldr", 3, ARMVFP2, { 24, 27, 0xD, 20, 21, 1, 9, 11, 5 }},
41 { "vldm", 3, ARMVFP2, { 25, 27, 0x6, 20, 20, 1, 9, 11, 5 }},
42
43 { "srs", 4, 6, { 25, 31, 0x0000007c, 22, 22, 0x00000001, 16, 20, 0x0000000d, 8, 11, 0x00000005 }},
44 { "rfe", 4, 6, { 25, 31, 0x0000007c, 22, 22, 0x00000000, 20, 20, 0x00000001, 8, 11, 0x0000000a }},
45 { "bkpt", 2, 3, { 20, 27, 0x00000012, 4, 7, 0x00000007 }},
46 { "blx", 1, 3, { 25, 31, 0x0000007d }},
47 { "cps", 3, 6, { 20, 31, 0x00000f10, 16, 16, 0x00000000, 5, 5, 0x00000000 }},
48 { "pld", 4, 4, { 26, 31, 0x0000003d, 24, 24, 0x00000001, 20, 22, 0x00000005, 12, 15, 0x0000000f }},
49 { "setend", 2, 6, { 16, 31, 0x0000f101, 4, 7, 0x00000000 }},
50 { "clrex", 1, 6, { 0, 31, 0xf57ff01f }},
51 { "rev16", 2, 6, { 16, 27, 0x000006bf, 4, 11, 0x000000fb }},
52 { "usad8", 3, 6, { 20, 27, 0x00000078, 12, 15, 0x0000000f, 4, 7, 0x00000001 }},
53 { "sxtb", 2, 6, { 16, 27, 0x000006af, 4, 7, 0x00000007 }},
54 { "uxtb", 2, 6, { 16, 27, 0x000006ef, 4, 7, 0x00000007 }},
55 { "sxth", 2, 6, { 16, 27, 0x000006bf, 4, 7, 0x00000007 }},
56 { "sxtb16", 2, 6, { 16, 27, 0x0000068f, 4, 7, 0x00000007 }},
57 { "uxth", 2, 6, { 16, 27, 0x000006ff, 4, 7, 0x00000007 }},
58 { "uxtb16", 2, 6, { 16, 27, 0x000006cf, 4, 7, 0x00000007 }},
59 { "cpy", 2, 6, { 20, 27, 0x0000001a, 4, 11, 0x00000000 }},
60 { "uxtab", 2, 6, { 20, 27, 0x0000006e, 4, 9, 0x00000007 }},
61 { "ssub8", 2, 6, { 20, 27, 0x00000061, 4, 7, 0x0000000f }},
62 { "shsub8", 2, 6, { 20, 27, 0x00000063, 4, 7, 0x0000000f }},
63 { "ssubaddx", 2, 6, { 20, 27, 0x00000061, 4, 7, 0x00000005 }},
64 { "strex", 2, 6, { 20, 27, 0x00000018, 4, 7, 0x00000009 }},
65 { "strexb", 2, 7, { 20, 27, 0x0000001c, 4, 7, 0x00000009 }},
66 { "swp", 2, 0, { 20, 27, 0x00000010, 4, 7, 0x00000009 }},
67 { "swpb", 2, 0, { 20, 27, 0x00000014, 4, 7, 0x00000009 }},
68 { "ssub16", 2, 6, { 20, 27, 0x00000061, 4, 7, 0x00000007 }},
69 { "ssat16", 2, 6, { 20, 27, 0x0000006a, 4, 7, 0x00000003 }},
70 { "shsubaddx", 2, 6, { 20, 27, 0x00000063, 4, 7, 0x00000005 }},
71 { "qsubaddx", 2, 6, { 20, 27, 0x00000062, 4, 7, 0x00000005 }},
72 { "shaddsubx", 2, 6, { 20, 27, 0x00000063, 4, 7, 0x00000003 }},
73 { "shadd8", 2, 6, { 20, 27, 0x00000063, 4, 7, 0x00000009 }},
74 { "shadd16", 2, 6, { 20, 27, 0x00000063, 4, 7, 0x00000001 }},
75 { "sel", 2, 6, { 20, 27, 0x00000068, 4, 7, 0x0000000b }},
76 { "saddsubx", 2, 6, { 20, 27, 0x00000061, 4, 7, 0x00000003 }},
77 { "sadd8", 2, 6, { 20, 27, 0x00000061, 4, 7, 0x00000009 }},
78 { "sadd16", 2, 6, { 20, 27, 0x00000061, 4, 7, 0x00000001 }},
79 { "shsub16", 2, 6, { 20, 27, 0x00000063, 4, 7, 0x00000007 }},
80 { "umaal", 2, 6, { 20, 27, 0x00000004, 4, 7, 0x00000009 }},
81 { "uxtab16", 2, 6, { 20, 27, 0x0000006c, 4, 7, 0x00000007 }},
82 { "usubaddx", 2, 6, { 20, 27, 0x00000065, 4, 7, 0x00000005 }},
83 { "usub8", 2, 6, { 20, 27, 0x00000065, 4, 7, 0x0000000f }},
84 { "usub16", 2, 6, { 20, 27, 0x00000065, 4, 7, 0x00000007 }},
85 { "usat16", 2, 6, { 20, 27, 0x0000006e, 4, 7, 0x00000003 }},
86 { "usada8", 2, 6, { 20, 27, 0x00000078, 4, 7, 0x00000001 }},
87 { "uqsubaddx", 2, 6, { 20, 27, 0x00000066, 4, 7, 0x00000005 }},
88 { "uqsub8", 2, 6, { 20, 27, 0x00000066, 4, 7, 0x0000000f }},
89 { "uqsub16", 2, 6, { 20, 27, 0x00000066, 4, 7, 0x00000007 }},
90 { "uqaddsubx", 2, 6, { 20, 27, 0x00000066, 4, 7, 0x00000003 }},
91 { "uqadd8", 2, 6, { 20, 27, 0x00000066, 4, 7, 0x00000009 }},
92 { "uqadd16", 2, 6, { 20, 27, 0x00000066, 4, 7, 0x00000001 }},
93 { "sxtab", 2, 6, { 20, 27, 0x0000006a, 4, 7, 0x00000007 }},
94 { "uhsubaddx", 2, 6, { 20, 27, 0x00000067, 4, 7, 0x00000005 }},
95 { "uhsub8", 2, 6, { 20, 27, 0x00000067, 4, 7, 0x0000000f }},
96 { "uhsub16", 2, 6, { 20, 27, 0x00000067, 4, 7, 0x00000007 }},
97 { "uhaddsubx", 2, 6, { 20, 27, 0x00000067, 4, 7, 0x00000003 }},
98 { "uhadd8", 2, 6, { 20, 27, 0x00000067, 4, 7, 0x00000009 }},
99 { "uhadd16", 2, 6, { 20, 27, 0x00000067, 4, 7, 0x00000001 }},
100 { "uaddsubx", 2, 6, { 20, 27, 0x00000065, 4, 7, 0x00000003 }},
101 { "uadd8", 2, 6, { 20, 27, 0x00000065, 4, 7, 0x00000009 }},
102 { "uadd16", 2, 6, { 20, 27, 0x00000065, 4, 7, 0x00000001 }},
103 { "sxtah", 2, 6, { 20, 27, 0x0000006b, 4, 7, 0x00000007 }},
104 { "sxtab16", 2, 6, { 20, 27, 0x00000068, 4, 7, 0x00000007 }},
105 { "qadd8", 2, 6, { 20, 27, 0x00000062, 4, 7, 0x00000009 }},
106 { "bxj", 2, 5, { 20, 27, 0x00000012, 4, 7, 0x00000002 }},
107 { "clz", 2, 3, { 20, 27, 0x00000016, 4, 7, 0x00000001 }},
108 { "uxtah", 2, 6, { 20, 27, 0x0000006f, 4, 7, 0x00000007 }},
109 { "bx", 2, 2, { 20, 27, 0x00000012, 4, 7, 0x00000001 }},
110 { "rev", 2, 6, { 20, 27, 0x0000006b, 4, 7, 0x00000003 }},
111 { "blx", 2, 3, { 20, 27, 0x00000012, 4, 7, 0x00000003 }},
112 { "revsh", 2, 6, { 20, 27, 0x0000006f, 4, 7, 0x0000000b }},
113 { "qadd", 2, 4, { 20, 27, 0x00000010, 4, 7, 0x00000005 }},
114 { "qadd16", 2, 6, { 20, 27, 0x00000062, 4, 7, 0x00000001 }},
115 { "qaddsubx", 2, 6, { 20, 27, 0x00000062, 4, 7, 0x00000003 }},
116 { "ldrex", 2, 0, { 20, 27, 0x00000019, 4, 7, 0x00000009 }},
117 { "qdadd", 2, 4, { 20, 27, 0x00000014, 4, 7, 0x00000005 }},
118 { "qdsub", 2, 4, { 20, 27, 0x00000016, 4, 7, 0x00000005 }},
119 { "qsub", 2, 4, { 20, 27, 0x00000012, 4, 7, 0x00000005 }},
120 { "ldrexb", 2, 7, { 20, 27, 0x0000001d, 4, 7, 0x00000009 }},
121 { "qsub8", 2, 6, { 20, 27, 0x00000062, 4, 7, 0x0000000f }},
122 { "qsub16", 2, 6, { 20, 27, 0x00000062, 4, 7, 0x00000007 }},
123 { "smuad", 4, 6, { 20, 27, 0x00000070, 12, 15, 0x0000000f, 6, 7, 0x00000000, 4, 4, 0x00000001 }},
124 { "smmul", 4, 6, { 20, 27, 0x00000075, 12, 15, 0x0000000f, 6, 7, 0x00000000, 4, 4, 0x00000001 }},
125 { "smusd", 4, 6, { 20, 27, 0x00000070, 12, 15, 0x0000000f, 6, 7, 0x00000001, 4, 4, 0x00000001 }},
126 { "smlsd", 3, 6, { 20, 27, 0x00000070, 6, 7, 0x00000001, 4, 4, 0x00000001 }},
127 { "smlsld", 3, 6, { 20, 27, 0x00000074, 6, 7, 0x00000001, 4, 4, 0x00000001 }},
128 { "smmla", 3, 6, { 20, 27, 0x00000075, 6, 7, 0x00000000, 4, 4, 0x00000001 }},
129 { "smmls", 3, 6, { 20, 27, 0x00000075, 6, 7, 0x00000003, 4, 4, 0x00000001 }},
130 { "smlald", 3, 6, { 20, 27, 0x00000074, 6, 7, 0x00000000, 4, 4, 0x00000001 }},
131 { "smlad", 3, 6, { 20, 27, 0x00000070, 6, 7, 0x00000000, 4, 4, 0x00000001 }},
132 { "smlaw", 3, 4, { 20, 27, 0x00000012, 7, 7, 0x00000001, 4, 5, 0x00000000 }},
133 { "smulw", 3, 4, { 20, 27, 0x00000012, 7, 7, 0x00000001, 4, 5, 0x00000002 }},
134 { "pkhtb", 2, 6, { 20, 27, 0x00000068, 4, 6, 0x00000005 }},
135 { "pkhbt", 2, 6, { 20, 27, 0x00000068, 4, 6, 0x00000001 }},
136 { "smul", 3, 4, { 20, 27, 0x00000016, 7, 7, 0x00000001, 4, 4, 0x00000000 }},
137 { "smlalxy", 3, 4, { 20, 27, 0x00000014, 7, 7, 0x00000001, 4, 4, 0x00000000 }},
138 { "smla", 3, 4, { 20, 27, 0x00000010, 7, 7, 0x00000001, 4, 4, 0x00000000 }},
139 { "mcrr", 1, 6, { 20, 27, 0x000000c4 }},
140 { "mrrc", 1, 6, { 20, 27, 0x000000c5 }},
141 { "cmp", 2, 0, { 26, 27, 0x00000000, 20, 24, 0x00000015 }},
142 { "tst", 2, 0, { 26, 27, 0x00000000, 20, 24, 0x00000011 }},
143 { "teq", 2, 0, { 26, 27, 0x00000000, 20, 24, 0x00000013 }},
144 { "cmn", 2, 0, { 26, 27, 0x00000000, 20, 24, 0x00000017 }},
145 { "smull", 2, 0, { 21, 27, 0x00000006, 4, 7, 0x00000009 }},
146 { "umull", 2, 0, { 21, 27, 0x00000004, 4, 7, 0x00000009 }},
147 { "umlal", 2, 0, { 21, 27, 0x00000005, 4, 7, 0x00000009 }},
148 { "smlal", 2, 0, { 21, 27, 0x00000007, 4, 7, 0x00000009 }},
149 { "mul", 2, 0, { 21, 27, 0x00000000, 4, 7, 0x00000009 }},
150 { "mla", 2, 0, { 21, 27, 0x00000001, 4, 7, 0x00000009 }},
151 { "ssat", 2, 6, { 21, 27, 0x00000035, 4, 5, 0x00000001 }},
152 { "usat", 2, 6, { 21, 27, 0x00000037, 4, 5, 0x00000001 }},
153 { "mrs", 4, 0, { 23, 27, 0x00000002, 20, 21, 0x00000000, 16, 19, 0x0000000f, 0, 11, 0x00000000 }},
154 { "msr", 3, 0, { 23, 27, 0x00000002, 20, 21, 0x00000002, 4, 7, 0x00000000 }},
155 { "and", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x00000000 }},
156 { "bic", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x0000000e }},
157 { "ldm", 3, 0, { 25, 27, 0x00000004, 20, 22, 0x00000005, 15, 15, 0x00000000 }},
158 { "eor", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x00000001 }},
159 { "add", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x00000004 }},
160 { "rsb", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x00000003 }},
161 { "rsc", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x00000007 }},
162 { "sbc", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x00000006 }},
163 { "adc", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x00000005 }},
164 { "sub", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x00000002 }},
165 { "orr", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x0000000c }},
166 { "mvn", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x0000000f }},
167 { "mov", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x0000000d }},
168 { "stm", 2, 0, { 25, 27, 0x00000004, 20, 22, 0x00000004 }},
169 { "ldm", 4, 0, { 25, 27, 0x00000004, 22, 22, 0x00000001, 20, 20, 0x00000001, 15, 15, 0x00000001 }},
170 { "ldrsh", 3, 2, { 25, 27, 0x00000000, 20, 20, 0x00000001, 4, 7, 0x0000000f }},
171 { "stm", 3, 0, { 25, 27, 0x00000004, 22, 22, 0x00000000, 20, 20, 0x00000000 }},
172 { "ldm", 3, 0, { 25, 27, 0x00000004, 22, 22, 0x00000000, 20, 20, 0x00000001 }},
173 { "ldrsb", 3, 2, { 25, 27, 0x00000000, 20, 20, 0x00000001, 4, 7, 0x0000000d }},
174 { "strd", 3, 4, { 25, 27, 0x00000000, 20, 20, 0x00000000, 4, 7, 0x0000000f }},
175 { "ldrh", 3, 0, { 25, 27, 0x00000000, 20, 20, 0x00000001, 4, 7, 0x0000000b }},
176 { "strh", 3, 0, { 25, 27, 0x00000000, 20, 20, 0x00000000, 4, 7, 0x0000000b }},
177 { "ldrd", 3, 4, { 25, 27, 0x00000000, 20, 20, 0x00000000, 4, 7, 0x0000000d }},
178 { "strt", 3, 0, { 26, 27, 0x00000001, 24, 24, 0x00000000, 20, 22, 0x00000002 }},
179 { "strbt", 3, 0, { 26, 27, 0x00000001, 24, 24, 0x00000000, 20, 22, 0x00000006 }},
180 { "ldrbt", 3, 0, { 26, 27, 0x00000001, 24, 24, 0x00000000, 20, 22, 0x00000007 }},
181 { "ldrt", 3, 0, { 26, 27, 0x00000001, 24, 24, 0x00000000, 20, 22, 0x00000003 }},
182 { "mrc", 3, 6, { 24, 27, 0x0000000e, 20, 20, 0x00000001, 4, 4, 0x00000001 }},
183 { "mcr", 3, 0, { 24, 27, 0x0000000e, 20, 20, 0x00000000, 4, 4, 0x00000001 }},
184 { "msr", 3, 0, { 23, 27, 0x00000006, 20, 21, 0x00000002, 22, 22, 0x00000001 }},
185 { "msr", 4, 0, { 23, 27, 0x00000006, 20, 21, 0x00000002, 22, 22, 0x00000000, 16, 19, 0x00000004 }},
186 { "msr", 5, 0, { 23, 27, 0x00000006, 20, 21, 0x00000002, 22, 22, 0x00000000, 19, 19, 0x00000001, 16, 17, 0x00000000 }},
187 { "msr", 4, 0, { 23, 27, 0x00000006, 20, 21, 0x00000002, 22, 22, 0x00000000, 16, 17, 0x00000001 }},
188 { "msr", 4, 0, { 23, 27, 0x00000006, 20, 21, 0x00000002, 22, 22, 0x00000000, 17, 17, 0x00000001 }},
189 { "ldrb", 3, 0, { 26, 27, 0x00000001, 22, 22, 0x00000001, 20, 20, 0x00000001 }},
190 { "strb", 3, 0, { 26, 27, 0x00000001, 22, 22, 0x00000001, 20, 20, 0x00000000 }},
191 { "ldr", 4, 0, { 28, 31, 0x0000000e, 26, 27, 0x00000001, 22, 22, 0x00000000, 20, 20, 0x00000001 }},
192 { "ldrcond", 3, 0, { 26, 27, 0x00000001, 22, 22, 0x00000000, 20, 20, 0x00000001 }},
193 { "str", 3, 0, { 26, 27, 0x00000001, 22, 22, 0x00000000, 20, 20, 0x00000000 }},
194 { "cdp", 2, 0, { 24, 27, 0x0000000e, 4, 4, 0x00000000 }},
195 { "stc", 2, 0, { 25, 27, 0x00000006, 20, 20, 0x00000000 }},
196 { "ldc", 2, 0, { 25, 27, 0x00000006, 20, 20, 0x00000001 }},
197 { "ldrexd", 2, ARMV6K, { 20, 27, 0x0000001B, 4, 7, 0x00000009 }},
198 { "strexd", 2, ARMV6K, { 20, 27, 0x0000001A, 4, 7, 0x00000009 }},
199 { "ldrexh", 2, ARMV6K, { 20, 27, 0x0000001F, 4, 7, 0x00000009 }},
200 { "strexh", 2, ARMV6K, { 20, 27, 0x0000001E, 4, 7, 0x00000009 }},
201 { "nop", 5, ARMV6K, { 23, 27, 0x00000006, 22, 22, 0x00000000, 20, 21, 0x00000002, 16, 19, 0x00000000, 0, 7, 0x00000000 }},
202 { "yield", 5, ARMV6K, { 23, 27, 0x00000006, 22, 22, 0x00000000, 20, 21, 0x00000002, 16, 19, 0x00000000, 0, 7, 0x00000001 }},
203 { "wfe", 5, ARMV6K, { 23, 27, 0x00000006, 22, 22, 0x00000000, 20, 21, 0x00000002, 16, 19, 0x00000000, 0, 7, 0x00000002 }},
204 { "wfi", 5, ARMV6K, { 23, 27, 0x00000006, 22, 22, 0x00000000, 20, 21, 0x00000002, 16, 19, 0x00000000, 0, 7, 0x00000003 }},
205 { "sev", 5, ARMV6K, { 23, 27, 0x00000006, 22, 22, 0x00000000, 20, 21, 0x00000002, 16, 19, 0x00000000, 0, 7, 0x00000004 }},
206 { "swi", 1, 0, { 24, 27, 0x0000000f }},
207 { "bbl", 1, 0, { 25, 27, 0x00000005 }},
208};
209
210
211const InstructionSetEncodingItem arm_exclusion_code[] = {
212 { "vmla", 0, ARMVFP2, { 0 }},
213 { "vmls", 0, ARMVFP2, { 0 }},
214 { "vnmla", 0, ARMVFP2, { 0 }},
215 { "vnmls", 0, ARMVFP2, { 0 }},
216 { "vnmul", 0, ARMVFP2, { 0 }},
217 { "vmul", 0, ARMVFP2, { 0 }},
218 { "vadd", 0, ARMVFP2, { 0 }},
219 { "vsub", 0, ARMVFP2, { 0 }},
220 { "vdiv", 0, ARMVFP2, { 0 }},
221 { "vmov(i)", 0, ARMVFP3, { 0 }},
222 { "vmov(r)", 0, ARMVFP3, { 0 }},
223 { "vabs", 0, ARMVFP2, { 0 }},
224 { "vneg", 0, ARMVFP2, { 0 }},
225 { "vsqrt", 0, ARMVFP2, { 0 }},
226 { "vcmp", 0, ARMVFP2, { 0 }},
227 { "vcmp2", 0, ARMVFP2, { 0 }},
228 { "vcvt(bff)", 0, ARMVFP3, { 4, 4, 1 }},
229 { "vcvt(bds)", 0, ARMVFP2, { 0 }},
230 { "vcvt(bfi)", 0, ARMVFP2, { 0 }},
231 { "vmovbrs", 0, ARMVFP2, { 0 }},
232 { "vmsr", 0, ARMVFP2, { 0 }},
233 { "vmovbrc", 0, ARMVFP2, { 0 }},
234 { "vmrs", 0, ARMVFP2, { 0 }},
235 { "vmovbcr", 0, ARMVFP2, { 0 }},
236 { "vmovbrrss", 0, ARMVFP2, { 0 }},
237 { "vmovbrrd", 0, ARMVFP2, { 0 }},
238 { "vstr", 0, ARMVFP2, { 0 }},
239 { "vpush", 0, ARMVFP2, { 0 }},
240 { "vstm", 0, ARMVFP2, { 0 }},
241 { "vpop", 0, ARMVFP2, { 0 }},
242 { "vldr", 0, ARMVFP2, { 0 }},
243 { "vldm", 0, ARMVFP2, { 0 }},
244
245 { "srs", 0, 6, { 0 }},
246 { "rfe", 0, 6, { 0 }},
247 { "bkpt", 0, 3, { 0 }},
248 { "blx", 0, 3, { 0 }},
249 { "cps", 0, 6, { 0 }},
250 { "pld", 0, 4, { 0 }},
251 { "setend", 0, 6, { 0 }},
252 { "clrex", 0, 6, { 0 }},
253 { "rev16", 0, 6, { 0 }},
254 { "usad8", 0, 6, { 0 }},
255 { "sxtb", 0, 6, { 0 }},
256 { "uxtb", 0, 6, { 0 }},
257 { "sxth", 0, 6, { 0 }},
258 { "sxtb16", 0, 6, { 0 }},
259 { "uxth", 0, 6, { 0 }},
260 { "uxtb16", 0, 6, { 0 }},
261 { "cpy", 0, 6, { 0 }},
262 { "uxtab", 0, 6, { 0 }},
263 { "ssub8", 0, 6, { 0 }},
264 { "shsub8", 0, 6, { 0 }},
265 { "ssubaddx", 0, 6, { 0 }},
266 { "strex", 0, 6, { 0 }},
267 { "strexb", 0, 7, { 0 }},
268 { "swp", 0, 0, { 0 }},
269 { "swpb", 0, 0, { 0 }},
270 { "ssub16", 0, 6, { 0 }},
271 { "ssat16", 0, 6, { 0 }},
272 { "shsubaddx", 0, 6, { 0 }},
273 { "qsubaddx", 0, 6, { 0 }},
274 { "shaddsubx", 0, 6, { 0 }},
275 { "shadd8", 0, 6, { 0 }},
276 { "shadd16", 0, 6, { 0 }},
277 { "sel", 0, 6, { 0 }},
278 { "saddsubx", 0, 6, { 0 }},
279 { "sadd8", 0, 6, { 0 }},
280 { "sadd16", 0, 6, { 0 }},
281 { "shsub16", 0, 6, { 0 }},
282 { "umaal", 0, 6, { 0 }},
283 { "uxtab16", 0, 6, { 0 }},
284 { "usubaddx", 0, 6, { 0 }},
285 { "usub8", 0, 6, { 0 }},
286 { "usub16", 0, 6, { 0 }},
287 { "usat16", 0, 6, { 0 }},
288 { "usada8", 0, 6, { 0 }},
289 { "uqsubaddx", 0, 6, { 0 }},
290 { "uqsub8", 0, 6, { 0 }},
291 { "uqsub16", 0, 6, { 0 }},
292 { "uqaddsubx", 0, 6, { 0 }},
293 { "uqadd8", 0, 6, { 0 }},
294 { "uqadd16", 0, 6, { 0 }},
295 { "sxtab", 0, 6, { 0 }},
296 { "uhsubaddx", 0, 6, { 0 }},
297 { "uhsub8", 0, 6, { 0 }},
298 { "uhsub16", 0, 6, { 0 }},
299 { "uhaddsubx", 0, 6, { 0 }},
300 { "uhadd8", 0, 6, { 0 }},
301 { "uhadd16", 0, 6, { 0 }},
302 { "uaddsubx", 0, 6, { 0 }},
303 { "uadd8", 0, 6, { 0 }},
304 { "uadd16", 0, 6, { 0 }},
305 { "sxtah", 0, 6, { 0 }},
306 { "sxtab16", 0, 6, { 0 }},
307 { "qadd8", 0, 6, { 0 }},
308 { "bxj", 0, 5, { 0 }},
309 { "clz", 0, 3, { 0 }},
310 { "uxtah", 0, 6, { 0 }},
311 { "bx", 0, 2, { 0 }},
312 { "rev", 0, 6, { 0 }},
313 { "blx", 0, 3, { 0 }},
314 { "revsh", 0, 6, { 0 }},
315 { "qadd", 0, 4, { 0 }},
316 { "qadd16", 0, 6, { 0 }},
317 { "qaddsubx", 0, 6, { 0 }},
318 { "ldrex", 0, 0, { 0 }},
319 { "qdadd", 0, 4, { 0 }},
320 { "qdsub", 0, 4, { 0 }},
321 { "qsub", 0, 4, { 0 }},
322 { "ldrexb", 0, 7, { 0 }},
323 { "qsub8", 0, 6, { 0 }},
324 { "qsub16", 0, 6, { 0 }},
325 { "smuad", 0, 6, { 0 }},
326 { "smmul", 0, 6, { 0 }},
327 { "smusd", 0, 6, { 0 }},
328 { "smlsd", 0, 6, { 0 }},
329 { "smlsld", 0, 6, { 0 }},
330 { "smmla", 0, 6, { 0 }},
331 { "smmls", 0, 6, { 0 }},
332 { "smlald", 0, 6, { 0 }},
333 { "smlad", 0, 6, { 0 }},
334 { "smlaw", 0, 4, { 0 }},
335 { "smulw", 0, 4, { 0 }},
336 { "pkhtb", 0, 6, { 0 }},
337 { "pkhbt", 0, 6, { 0 }},
338 { "smul", 0, 4, { 0 }},
339 { "smlal", 0, 4, { 0 }},
340 { "smla", 0, 4, { 0 }},
341 { "mcrr", 0, 6, { 0 }},
342 { "mrrc", 0, 6, { 0 }},
343 { "cmp", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
344 { "tst", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
345 { "teq", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
346 { "cmn", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
347 { "smull", 0, 0, { 0 }},
348 { "umull", 0, 0, { 0 }},
349 { "umlal", 0, 0, { 0 }},
350 { "smlal", 0, 0, { 0 }},
351 { "mul", 0, 0, { 0 }},
352 { "mla", 0, 0, { 0 }},
353 { "ssat", 0, 6, { 0 }},
354 { "usat", 0, 6, { 0 }},
355 { "mrs", 0, 0, { 0 }},
356 { "msr", 0, 0, { 0 }},
357 { "and", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
358 { "bic", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
359 { "ldm", 0, 0, { 0 }},
360 { "eor", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
361 { "add", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
362 { "rsb", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
363 { "rsc", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
364 { "sbc", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
365 { "adc", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
366 { "sub", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
367 { "orr", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
368 { "mvn", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
369 { "mov", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
370 { "stm", 0, 0, { 0 }},
371 { "ldm", 0, 0, { 0 }},
372 { "ldrsh", 0, 2, { 0 }},
373 { "stm", 0, 0, { 0 }},
374 { "ldm", 0, 0, { 0 }},
375 { "ldrsb", 0, 2, { 0 }},
376 { "strd", 0, 4, { 0 }},
377 { "ldrh", 0, 0, { 0 }},
378 { "strh", 0, 0, { 0 }},
379 { "ldrd", 0, 4, { 0 }},
380 { "strt", 0, 0, { 0 }},
381 { "strbt", 0, 0, { 0 }},
382 { "ldrbt", 0, 0, { 0 }},
383 { "ldrt", 0, 0, { 0 }},
384 { "mrc", 0, 6, { 0 }},
385 { "mcr", 0, 0, { 0 }},
386 { "msr", 0, 0, { 0 }},
387 { "msr", 0, 0, { 0 }},
388 { "msr", 0, 0, { 0 }},
389 { "msr", 0, 0, { 0 }},
390 { "msr", 0, 0, { 0 }},
391 { "ldrb", 0, 0, { 0 }},
392 { "strb", 0, 0, { 0 }},
393 { "ldr", 0, 0, { 0 }},
394 { "ldrcond", 1, 0, { 28, 31, 0x0000000e }},
395 { "str", 0, 0, { 0 }},
396 { "cdp", 0, 0, { 0 }},
397 { "stc", 0, 0, { 0 }},
398 { "ldc", 0, 0, { 0 }},
399 { "ldrexd", 0, ARMV6K, { 0 }},
400 { "strexd", 0, ARMV6K, { 0 }},
401 { "ldrexh", 0, ARMV6K, { 0 }},
402 { "strexh", 0, ARMV6K, { 0 }},
403 { "nop", 0, ARMV6K, { 0 }},
404 { "yield", 0, ARMV6K, { 0 }},
405 { "wfe", 0, ARMV6K, { 0 }},
406 { "wfi", 0, ARMV6K, { 0 }},
407 { "sev", 0, ARMV6K, { 0 }},
408 { "swi", 0, 0, { 0 }},
409 { "bbl", 0, 0, { 0 }},
410
411 { "bl_1_thumb", 0, INVALID, { 0 }}, // Should be table[-4]
412 { "bl_2_thumb", 0, INVALID, { 0 }}, // Should be located at the end of the table[-3]
413 { "blx_1_thumb", 0, INVALID, { 0 }}, // Should be located at table[-2]
414 { "invalid", 0, INVALID, { 0 }}
415};
416// clang-format on
417
418ARMDecodeStatus DecodeARMInstruction(u32 instr, int* idx) {
419 int n = 0;
420 int base = 0;
421 int instr_slots = sizeof(arm_instruction) / sizeof(InstructionSetEncodingItem);
422 ARMDecodeStatus ret = ARMDecodeStatus::FAILURE;
423
424 for (int i = 0; i < instr_slots; i++) {
425 n = arm_instruction[i].attribute_value;
426 base = 0;
427
428 // 3DS has no VFP3 support
429 if (arm_instruction[i].version == ARMVFP3)
430 continue;
431
432 while (n) {
433 if (arm_instruction[i].content[base + 1] == 31 &&
434 arm_instruction[i].content[base] == 0) {
435 // clrex
436 if (instr != arm_instruction[i].content[base + 2]) {
437 break;
438 }
439 } else if (BITS(instr, arm_instruction[i].content[base],
440 arm_instruction[i].content[base + 1]) !=
441 arm_instruction[i].content[base + 2]) {
442 break;
443 }
444 base += 3;
445 n--;
446 }
447
448 // All conditions are satisfied.
449 if (n == 0)
450 ret = ARMDecodeStatus::SUCCESS;
451
452 if (ret == ARMDecodeStatus::SUCCESS) {
453 n = arm_exclusion_code[i].attribute_value;
454 if (n != 0) {
455 base = 0;
456 while (n) {
457 if (BITS(instr, arm_exclusion_code[i].content[base],
458 arm_exclusion_code[i].content[base + 1]) !=
459 arm_exclusion_code[i].content[base + 2]) {
460 break;
461 }
462 base += 3;
463 n--;
464 }
465
466 // All conditions are satisfied.
467 if (n == 0)
468 ret = ARMDecodeStatus::FAILURE;
469 }
470 }
471
472 if (ret == ARMDecodeStatus::SUCCESS) {
473 *idx = i;
474 return ret;
475 }
476 }
477 return ret;
478}
diff --git a/src/core/arm/dyncom/arm_dyncom_dec.h b/src/core/arm/dyncom/arm_dyncom_dec.h
deleted file mode 100644
index 1dcf7ecd1..000000000
--- a/src/core/arm/dyncom/arm_dyncom_dec.h
+++ /dev/null
@@ -1,36 +0,0 @@
1// Copyright 2012 Michael Kang, 2015 Citra Emulator Project
2// Licensed under GPLv2 or any later version
3// Refer to the license.txt file included.
4
5#pragma once
6
7#include "common/common_types.h"
8
9enum class ARMDecodeStatus { SUCCESS, FAILURE };
10
11ARMDecodeStatus DecodeARMInstruction(u32 instr, int* idx);
12
13struct InstructionSetEncodingItem {
14 const char* name;
15 int attribute_value;
16 int version;
17 u32 content[21];
18};
19
20// ARM versions
21enum {
22 INVALID = 0,
23 ARMALL,
24 ARMV4,
25 ARMV4T,
26 ARMV5T,
27 ARMV5TE,
28 ARMV5TEJ,
29 ARMV6,
30 ARM1176JZF_S,
31 ARMVFP2,
32 ARMVFP3,
33 ARMV6K,
34};
35
36extern const InstructionSetEncodingItem arm_instruction[];
diff --git a/src/core/arm/dyncom/arm_dyncom_interpreter.cpp b/src/core/arm/dyncom/arm_dyncom_interpreter.cpp
deleted file mode 100644
index fc2d6aabc..000000000
--- a/src/core/arm/dyncom/arm_dyncom_interpreter.cpp
+++ /dev/null
@@ -1,4578 +0,0 @@
1// Copyright 2012 Michael Kang, 2014 Citra Emulator Project
2// Licensed under GPLv2 or any later version
3// Refer to the license.txt file included.
4
5#define CITRA_IGNORE_EXIT(x)
6
7#include <algorithm>
8#include <cinttypes>
9#include <cstdio>
10#include "common/common_types.h"
11#include "common/logging/log.h"
12#include "common/microprofile.h"
13#include "core/arm/dyncom/arm_dyncom_dec.h"
14#include "core/arm/dyncom/arm_dyncom_interpreter.h"
15#include "core/arm/dyncom/arm_dyncom_run.h"
16#include "core/arm/dyncom/arm_dyncom_thumb.h"
17#include "core/arm/dyncom/arm_dyncom_trans.h"
18#include "core/arm/skyeye_common/armstate.h"
19#include "core/arm/skyeye_common/armsupp.h"
20#include "core/arm/skyeye_common/vfp/vfp.h"
21#include "core/gdbstub/gdbstub.h"
22#include "core/hle/svc.h"
23#include "core/memory.h"
24
25#define RM BITS(sht_oper, 0, 3)
26#define RS BITS(sht_oper, 8, 11)
27
28#define glue(x, y) x##y
29#define DPO(s) glue(DataProcessingOperands, s)
30#define ROTATE_RIGHT(n, i, l) ((n << (l - i)) | (n >> i))
31#define ROTATE_LEFT(n, i, l) ((n >> (l - i)) | (n << i))
32#define ROTATE_RIGHT_32(n, i) ROTATE_RIGHT(n, i, 32)
33#define ROTATE_LEFT_32(n, i) ROTATE_LEFT(n, i, 32)
34
35static bool CondPassed(const ARMul_State* cpu, unsigned int cond) {
36 const bool n_flag = cpu->NFlag != 0;
37 const bool z_flag = cpu->ZFlag != 0;
38 const bool c_flag = cpu->CFlag != 0;
39 const bool v_flag = cpu->VFlag != 0;
40
41 switch (cond) {
42 case ConditionCode::EQ:
43 return z_flag;
44 case ConditionCode::NE:
45 return !z_flag;
46 case ConditionCode::CS:
47 return c_flag;
48 case ConditionCode::CC:
49 return !c_flag;
50 case ConditionCode::MI:
51 return n_flag;
52 case ConditionCode::PL:
53 return !n_flag;
54 case ConditionCode::VS:
55 return v_flag;
56 case ConditionCode::VC:
57 return !v_flag;
58 case ConditionCode::HI:
59 return (c_flag && !z_flag);
60 case ConditionCode::LS:
61 return (!c_flag || z_flag);
62 case ConditionCode::GE:
63 return (n_flag == v_flag);
64 case ConditionCode::LT:
65 return (n_flag != v_flag);
66 case ConditionCode::GT:
67 return (!z_flag && (n_flag == v_flag));
68 case ConditionCode::LE:
69 return (z_flag || (n_flag != v_flag));
70 case ConditionCode::AL:
71 case ConditionCode::NV: // Unconditional
72 return true;
73 }
74
75 return false;
76}
77
78static unsigned int DPO(Immediate)(ARMul_State* cpu, unsigned int sht_oper) {
79 unsigned int immed_8 = BITS(sht_oper, 0, 7);
80 unsigned int rotate_imm = BITS(sht_oper, 8, 11);
81 unsigned int shifter_operand = ROTATE_RIGHT_32(immed_8, rotate_imm * 2);
82 if (rotate_imm == 0)
83 cpu->shifter_carry_out = cpu->CFlag;
84 else
85 cpu->shifter_carry_out = BIT(shifter_operand, 31);
86 return shifter_operand;
87}
88
89static unsigned int DPO(Register)(ARMul_State* cpu, unsigned int sht_oper) {
90 unsigned int rm = CHECK_READ_REG15(cpu, RM);
91 unsigned int shifter_operand = rm;
92 cpu->shifter_carry_out = cpu->CFlag;
93 return shifter_operand;
94}
95
96static unsigned int DPO(LogicalShiftLeftByImmediate)(ARMul_State* cpu, unsigned int sht_oper) {
97 int shift_imm = BITS(sht_oper, 7, 11);
98 unsigned int rm = CHECK_READ_REG15(cpu, RM);
99 unsigned int shifter_operand;
100 if (shift_imm == 0) {
101 shifter_operand = rm;
102 cpu->shifter_carry_out = cpu->CFlag;
103 } else {
104 shifter_operand = rm << shift_imm;
105 cpu->shifter_carry_out = BIT(rm, 32 - shift_imm);
106 }
107 return shifter_operand;
108}
109
110static unsigned int DPO(LogicalShiftLeftByRegister)(ARMul_State* cpu, unsigned int sht_oper) {
111 int shifter_operand;
112 unsigned int rm = CHECK_READ_REG15(cpu, RM);
113 unsigned int rs = CHECK_READ_REG15(cpu, RS);
114 if (BITS(rs, 0, 7) == 0) {
115 shifter_operand = rm;
116 cpu->shifter_carry_out = cpu->CFlag;
117 } else if (BITS(rs, 0, 7) < 32) {
118 shifter_operand = rm << BITS(rs, 0, 7);
119 cpu->shifter_carry_out = BIT(rm, 32 - BITS(rs, 0, 7));
120 } else if (BITS(rs, 0, 7) == 32) {
121 shifter_operand = 0;
122 cpu->shifter_carry_out = BIT(rm, 0);
123 } else {
124 shifter_operand = 0;
125 cpu->shifter_carry_out = 0;
126 }
127 return shifter_operand;
128}
129
130static unsigned int DPO(LogicalShiftRightByImmediate)(ARMul_State* cpu, unsigned int sht_oper) {
131 unsigned int rm = CHECK_READ_REG15(cpu, RM);
132 unsigned int shifter_operand;
133 int shift_imm = BITS(sht_oper, 7, 11);
134 if (shift_imm == 0) {
135 shifter_operand = 0;
136 cpu->shifter_carry_out = BIT(rm, 31);
137 } else {
138 shifter_operand = rm >> shift_imm;
139 cpu->shifter_carry_out = BIT(rm, shift_imm - 1);
140 }
141 return shifter_operand;
142}
143
144static unsigned int DPO(LogicalShiftRightByRegister)(ARMul_State* cpu, unsigned int sht_oper) {
145 unsigned int rs = CHECK_READ_REG15(cpu, RS);
146 unsigned int rm = CHECK_READ_REG15(cpu, RM);
147 unsigned int shifter_operand;
148 if (BITS(rs, 0, 7) == 0) {
149 shifter_operand = rm;
150 cpu->shifter_carry_out = cpu->CFlag;
151 } else if (BITS(rs, 0, 7) < 32) {
152 shifter_operand = rm >> BITS(rs, 0, 7);
153 cpu->shifter_carry_out = BIT(rm, BITS(rs, 0, 7) - 1);
154 } else if (BITS(rs, 0, 7) == 32) {
155 shifter_operand = 0;
156 cpu->shifter_carry_out = BIT(rm, 31);
157 } else {
158 shifter_operand = 0;
159 cpu->shifter_carry_out = 0;
160 }
161 return shifter_operand;
162}
163
164static unsigned int DPO(ArithmeticShiftRightByImmediate)(ARMul_State* cpu, unsigned int sht_oper) {
165 unsigned int rm = CHECK_READ_REG15(cpu, RM);
166 unsigned int shifter_operand;
167 int shift_imm = BITS(sht_oper, 7, 11);
168 if (shift_imm == 0) {
169 if (BIT(rm, 31) == 0)
170 shifter_operand = 0;
171 else
172 shifter_operand = 0xFFFFFFFF;
173 cpu->shifter_carry_out = BIT(rm, 31);
174 } else {
175 shifter_operand = static_cast<int>(rm) >> shift_imm;
176 cpu->shifter_carry_out = BIT(rm, shift_imm - 1);
177 }
178 return shifter_operand;
179}
180
181static unsigned int DPO(ArithmeticShiftRightByRegister)(ARMul_State* cpu, unsigned int sht_oper) {
182 unsigned int rs = CHECK_READ_REG15(cpu, RS);
183 unsigned int rm = CHECK_READ_REG15(cpu, RM);
184 unsigned int shifter_operand;
185 if (BITS(rs, 0, 7) == 0) {
186 shifter_operand = rm;
187 cpu->shifter_carry_out = cpu->CFlag;
188 } else if (BITS(rs, 0, 7) < 32) {
189 shifter_operand = static_cast<int>(rm) >> BITS(rs, 0, 7);
190 cpu->shifter_carry_out = BIT(rm, BITS(rs, 0, 7) - 1);
191 } else {
192 if (BIT(rm, 31) == 0)
193 shifter_operand = 0;
194 else
195 shifter_operand = 0xffffffff;
196 cpu->shifter_carry_out = BIT(rm, 31);
197 }
198 return shifter_operand;
199}
200
201static unsigned int DPO(RotateRightByImmediate)(ARMul_State* cpu, unsigned int sht_oper) {
202 unsigned int shifter_operand;
203 unsigned int rm = CHECK_READ_REG15(cpu, RM);
204 int shift_imm = BITS(sht_oper, 7, 11);
205 if (shift_imm == 0) {
206 shifter_operand = (cpu->CFlag << 31) | (rm >> 1);
207 cpu->shifter_carry_out = BIT(rm, 0);
208 } else {
209 shifter_operand = ROTATE_RIGHT_32(rm, shift_imm);
210 cpu->shifter_carry_out = BIT(rm, shift_imm - 1);
211 }
212 return shifter_operand;
213}
214
215static unsigned int DPO(RotateRightByRegister)(ARMul_State* cpu, unsigned int sht_oper) {
216 unsigned int rm = CHECK_READ_REG15(cpu, RM);
217 unsigned int rs = CHECK_READ_REG15(cpu, RS);
218 unsigned int shifter_operand;
219 if (BITS(rs, 0, 7) == 0) {
220 shifter_operand = rm;
221 cpu->shifter_carry_out = cpu->CFlag;
222 } else if (BITS(rs, 0, 4) == 0) {
223 shifter_operand = rm;
224 cpu->shifter_carry_out = BIT(rm, 31);
225 } else {
226 shifter_operand = ROTATE_RIGHT_32(rm, BITS(rs, 0, 4));
227 cpu->shifter_carry_out = BIT(rm, BITS(rs, 0, 4) - 1);
228 }
229 return shifter_operand;
230}
231
232#define DEBUG_MSG \
233 LOG_DEBUG(Core_ARM, "inst is %x", inst); \
234 CITRA_IGNORE_EXIT(0)
235
236#define LnSWoUB(s) glue(LnSWoUB, s)
237#define MLnS(s) glue(MLnS, s)
238#define LdnStM(s) glue(LdnStM, s)
239
240#define W_BIT BIT(inst, 21)
241#define U_BIT BIT(inst, 23)
242#define I_BIT BIT(inst, 25)
243#define P_BIT BIT(inst, 24)
244#define OFFSET_12 BITS(inst, 0, 11)
245
246static void LnSWoUB(ImmediateOffset)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr) {
247 unsigned int Rn = BITS(inst, 16, 19);
248 unsigned int addr;
249
250 if (U_BIT)
251 addr = CHECK_READ_REG15_WA(cpu, Rn) + OFFSET_12;
252 else
253 addr = CHECK_READ_REG15_WA(cpu, Rn) - OFFSET_12;
254
255 virt_addr = addr;
256}
257
258static void LnSWoUB(RegisterOffset)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr) {
259 unsigned int Rn = BITS(inst, 16, 19);
260 unsigned int Rm = BITS(inst, 0, 3);
261 unsigned int rn = CHECK_READ_REG15_WA(cpu, Rn);
262 unsigned int rm = CHECK_READ_REG15_WA(cpu, Rm);
263 unsigned int addr;
264
265 if (U_BIT)
266 addr = rn + rm;
267 else
268 addr = rn - rm;
269
270 virt_addr = addr;
271}
272
273static void LnSWoUB(ImmediatePostIndexed)(ARMul_State* cpu, unsigned int inst,
274 unsigned int& virt_addr) {
275 unsigned int Rn = BITS(inst, 16, 19);
276 unsigned int addr = CHECK_READ_REG15_WA(cpu, Rn);
277
278 if (U_BIT)
279 cpu->Reg[Rn] += OFFSET_12;
280 else
281 cpu->Reg[Rn] -= OFFSET_12;
282
283 virt_addr = addr;
284}
285
286static void LnSWoUB(ImmediatePreIndexed)(ARMul_State* cpu, unsigned int inst,
287 unsigned int& virt_addr) {
288 unsigned int Rn = BITS(inst, 16, 19);
289 unsigned int addr;
290
291 if (U_BIT)
292 addr = CHECK_READ_REG15_WA(cpu, Rn) + OFFSET_12;
293 else
294 addr = CHECK_READ_REG15_WA(cpu, Rn) - OFFSET_12;
295
296 virt_addr = addr;
297
298 if (CondPassed(cpu, BITS(inst, 28, 31)))
299 cpu->Reg[Rn] = addr;
300}
301
302static void MLnS(RegisterPreIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr) {
303 unsigned int addr;
304 unsigned int Rn = BITS(inst, 16, 19);
305 unsigned int Rm = BITS(inst, 0, 3);
306 unsigned int rn = CHECK_READ_REG15_WA(cpu, Rn);
307 unsigned int rm = CHECK_READ_REG15_WA(cpu, Rm);
308
309 if (U_BIT)
310 addr = rn + rm;
311 else
312 addr = rn - rm;
313
314 virt_addr = addr;
315
316 if (CondPassed(cpu, BITS(inst, 28, 31)))
317 cpu->Reg[Rn] = addr;
318}
319
320static void LnSWoUB(RegisterPreIndexed)(ARMul_State* cpu, unsigned int inst,
321 unsigned int& virt_addr) {
322 unsigned int Rn = BITS(inst, 16, 19);
323 unsigned int Rm = BITS(inst, 0, 3);
324 unsigned int rn = CHECK_READ_REG15_WA(cpu, Rn);
325 unsigned int rm = CHECK_READ_REG15_WA(cpu, Rm);
326 unsigned int addr;
327
328 if (U_BIT)
329 addr = rn + rm;
330 else
331 addr = rn - rm;
332
333 virt_addr = addr;
334
335 if (CondPassed(cpu, BITS(inst, 28, 31))) {
336 cpu->Reg[Rn] = addr;
337 }
338}
339
340static void LnSWoUB(ScaledRegisterPreIndexed)(ARMul_State* cpu, unsigned int inst,
341 unsigned int& virt_addr) {
342 unsigned int shift = BITS(inst, 5, 6);
343 unsigned int shift_imm = BITS(inst, 7, 11);
344 unsigned int Rn = BITS(inst, 16, 19);
345 unsigned int Rm = BITS(inst, 0, 3);
346 unsigned int index = 0;
347 unsigned int addr;
348 unsigned int rm = CHECK_READ_REG15_WA(cpu, Rm);
349 unsigned int rn = CHECK_READ_REG15_WA(cpu, Rn);
350
351 switch (shift) {
352 case 0:
353 index = rm << shift_imm;
354 break;
355 case 1:
356 if (shift_imm == 0) {
357 index = 0;
358 } else {
359 index = rm >> shift_imm;
360 }
361 break;
362 case 2:
363 if (shift_imm == 0) { // ASR #32
364 if (BIT(rm, 31) == 1)
365 index = 0xFFFFFFFF;
366 else
367 index = 0;
368 } else {
369 index = static_cast<int>(rm) >> shift_imm;
370 }
371 break;
372 case 3:
373 if (shift_imm == 0) {
374 index = (cpu->CFlag << 31) | (rm >> 1);
375 } else {
376 index = ROTATE_RIGHT_32(rm, shift_imm);
377 }
378 break;
379 }
380
381 if (U_BIT)
382 addr = rn + index;
383 else
384 addr = rn - index;
385
386 virt_addr = addr;
387
388 if (CondPassed(cpu, BITS(inst, 28, 31)))
389 cpu->Reg[Rn] = addr;
390}
391
392static void LnSWoUB(ScaledRegisterPostIndexed)(ARMul_State* cpu, unsigned int inst,
393 unsigned int& virt_addr) {
394 unsigned int shift = BITS(inst, 5, 6);
395 unsigned int shift_imm = BITS(inst, 7, 11);
396 unsigned int Rn = BITS(inst, 16, 19);
397 unsigned int Rm = BITS(inst, 0, 3);
398 unsigned int index = 0;
399 unsigned int addr = CHECK_READ_REG15_WA(cpu, Rn);
400 unsigned int rm = CHECK_READ_REG15_WA(cpu, Rm);
401
402 switch (shift) {
403 case 0:
404 index = rm << shift_imm;
405 break;
406 case 1:
407 if (shift_imm == 0) {
408 index = 0;
409 } else {
410 index = rm >> shift_imm;
411 }
412 break;
413 case 2:
414 if (shift_imm == 0) { // ASR #32
415 if (BIT(rm, 31) == 1)
416 index = 0xFFFFFFFF;
417 else
418 index = 0;
419 } else {
420 index = static_cast<int>(rm) >> shift_imm;
421 }
422 break;
423 case 3:
424 if (shift_imm == 0) {
425 index = (cpu->CFlag << 31) | (rm >> 1);
426 } else {
427 index = ROTATE_RIGHT_32(rm, shift_imm);
428 }
429 break;
430 }
431
432 virt_addr = addr;
433
434 if (CondPassed(cpu, BITS(inst, 28, 31))) {
435 if (U_BIT)
436 cpu->Reg[Rn] += index;
437 else
438 cpu->Reg[Rn] -= index;
439 }
440}
441
442static void LnSWoUB(RegisterPostIndexed)(ARMul_State* cpu, unsigned int inst,
443 unsigned int& virt_addr) {
444 unsigned int Rn = BITS(inst, 16, 19);
445 unsigned int Rm = BITS(inst, 0, 3);
446 unsigned int rm = CHECK_READ_REG15_WA(cpu, Rm);
447
448 virt_addr = CHECK_READ_REG15_WA(cpu, Rn);
449
450 if (CondPassed(cpu, BITS(inst, 28, 31))) {
451 if (U_BIT) {
452 cpu->Reg[Rn] += rm;
453 } else {
454 cpu->Reg[Rn] -= rm;
455 }
456 }
457}
458
459static void MLnS(ImmediateOffset)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr) {
460 unsigned int immedL = BITS(inst, 0, 3);
461 unsigned int immedH = BITS(inst, 8, 11);
462 unsigned int Rn = BITS(inst, 16, 19);
463 unsigned int addr;
464
465 unsigned int offset_8 = (immedH << 4) | immedL;
466
467 if (U_BIT)
468 addr = CHECK_READ_REG15_WA(cpu, Rn) + offset_8;
469 else
470 addr = CHECK_READ_REG15_WA(cpu, Rn) - offset_8;
471
472 virt_addr = addr;
473}
474
475static void MLnS(RegisterOffset)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr) {
476 unsigned int addr;
477 unsigned int Rn = BITS(inst, 16, 19);
478 unsigned int Rm = BITS(inst, 0, 3);
479 unsigned int rn = CHECK_READ_REG15_WA(cpu, Rn);
480 unsigned int rm = CHECK_READ_REG15_WA(cpu, Rm);
481
482 if (U_BIT)
483 addr = rn + rm;
484 else
485 addr = rn - rm;
486
487 virt_addr = addr;
488}
489
490static void MLnS(ImmediatePreIndexed)(ARMul_State* cpu, unsigned int inst,
491 unsigned int& virt_addr) {
492 unsigned int Rn = BITS(inst, 16, 19);
493 unsigned int immedH = BITS(inst, 8, 11);
494 unsigned int immedL = BITS(inst, 0, 3);
495 unsigned int addr;
496 unsigned int rn = CHECK_READ_REG15_WA(cpu, Rn);
497 unsigned int offset_8 = (immedH << 4) | immedL;
498
499 if (U_BIT)
500 addr = rn + offset_8;
501 else
502 addr = rn - offset_8;
503
504 virt_addr = addr;
505
506 if (CondPassed(cpu, BITS(inst, 28, 31)))
507 cpu->Reg[Rn] = addr;
508}
509
510static void MLnS(ImmediatePostIndexed)(ARMul_State* cpu, unsigned int inst,
511 unsigned int& virt_addr) {
512 unsigned int Rn = BITS(inst, 16, 19);
513 unsigned int immedH = BITS(inst, 8, 11);
514 unsigned int immedL = BITS(inst, 0, 3);
515 unsigned int rn = CHECK_READ_REG15_WA(cpu, Rn);
516
517 virt_addr = rn;
518
519 if (CondPassed(cpu, BITS(inst, 28, 31))) {
520 unsigned int offset_8 = (immedH << 4) | immedL;
521 if (U_BIT)
522 rn += offset_8;
523 else
524 rn -= offset_8;
525
526 cpu->Reg[Rn] = rn;
527 }
528}
529
530static void MLnS(RegisterPostIndexed)(ARMul_State* cpu, unsigned int inst,
531 unsigned int& virt_addr) {
532 unsigned int Rn = BITS(inst, 16, 19);
533 unsigned int Rm = BITS(inst, 0, 3);
534 unsigned int rm = CHECK_READ_REG15_WA(cpu, Rm);
535
536 virt_addr = CHECK_READ_REG15_WA(cpu, Rn);
537
538 if (CondPassed(cpu, BITS(inst, 28, 31))) {
539 if (U_BIT)
540 cpu->Reg[Rn] += rm;
541 else
542 cpu->Reg[Rn] -= rm;
543 }
544}
545
546static void LdnStM(DecrementBefore)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr) {
547 unsigned int Rn = BITS(inst, 16, 19);
548 unsigned int i = BITS(inst, 0, 15);
549 int count = 0;
550
551 while (i) {
552 if (i & 1)
553 count++;
554 i = i >> 1;
555 }
556
557 virt_addr = CHECK_READ_REG15_WA(cpu, Rn) - count * 4;
558
559 if (CondPassed(cpu, BITS(inst, 28, 31)) && BIT(inst, 21))
560 cpu->Reg[Rn] -= count * 4;
561}
562
563static void LdnStM(IncrementBefore)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr) {
564 unsigned int Rn = BITS(inst, 16, 19);
565 unsigned int i = BITS(inst, 0, 15);
566 int count = 0;
567
568 while (i) {
569 if (i & 1)
570 count++;
571 i = i >> 1;
572 }
573
574 virt_addr = CHECK_READ_REG15_WA(cpu, Rn) + 4;
575
576 if (CondPassed(cpu, BITS(inst, 28, 31)) && BIT(inst, 21))
577 cpu->Reg[Rn] += count * 4;
578}
579
580static void LdnStM(IncrementAfter)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr) {
581 unsigned int Rn = BITS(inst, 16, 19);
582 unsigned int i = BITS(inst, 0, 15);
583 int count = 0;
584
585 while (i) {
586 if (i & 1)
587 count++;
588 i = i >> 1;
589 }
590
591 virt_addr = CHECK_READ_REG15_WA(cpu, Rn);
592
593 if (CondPassed(cpu, BITS(inst, 28, 31)) && BIT(inst, 21))
594 cpu->Reg[Rn] += count * 4;
595}
596
597static void LdnStM(DecrementAfter)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr) {
598 unsigned int Rn = BITS(inst, 16, 19);
599 unsigned int i = BITS(inst, 0, 15);
600 int count = 0;
601 while (i) {
602 if (i & 1)
603 count++;
604 i = i >> 1;
605 }
606 unsigned int rn = CHECK_READ_REG15_WA(cpu, Rn);
607 unsigned int start_addr = rn - count * 4 + 4;
608
609 virt_addr = start_addr;
610
611 if (CondPassed(cpu, BITS(inst, 28, 31)) && BIT(inst, 21)) {
612 cpu->Reg[Rn] -= count * 4;
613 }
614}
615
616static void LnSWoUB(ScaledRegisterOffset)(ARMul_State* cpu, unsigned int inst,
617 unsigned int& virt_addr) {
618 unsigned int shift = BITS(inst, 5, 6);
619 unsigned int shift_imm = BITS(inst, 7, 11);
620 unsigned int Rn = BITS(inst, 16, 19);
621 unsigned int Rm = BITS(inst, 0, 3);
622 unsigned int index = 0;
623 unsigned int addr;
624 unsigned int rm = CHECK_READ_REG15_WA(cpu, Rm);
625 unsigned int rn = CHECK_READ_REG15_WA(cpu, Rn);
626
627 switch (shift) {
628 case 0:
629 index = rm << shift_imm;
630 break;
631 case 1:
632 if (shift_imm == 0) {
633 index = 0;
634 } else {
635 index = rm >> shift_imm;
636 }
637 break;
638 case 2:
639 if (shift_imm == 0) { // ASR #32
640 if (BIT(rm, 31) == 1)
641 index = 0xFFFFFFFF;
642 else
643 index = 0;
644 } else {
645 index = static_cast<int>(rm) >> shift_imm;
646 }
647 break;
648 case 3:
649 if (shift_imm == 0) {
650 index = (cpu->CFlag << 31) | (rm >> 1);
651 } else {
652 index = ROTATE_RIGHT_32(rm, shift_imm);
653 }
654 break;
655 }
656
657 if (U_BIT) {
658 addr = rn + index;
659 } else
660 addr = rn - index;
661
662 virt_addr = addr;
663}
664
665shtop_fp_t GetShifterOp(unsigned int inst) {
666 if (BIT(inst, 25)) {
667 return DPO(Immediate);
668 } else if (BITS(inst, 4, 11) == 0) {
669 return DPO(Register);
670 } else if (BITS(inst, 4, 6) == 0) {
671 return DPO(LogicalShiftLeftByImmediate);
672 } else if (BITS(inst, 4, 7) == 1) {
673 return DPO(LogicalShiftLeftByRegister);
674 } else if (BITS(inst, 4, 6) == 2) {
675 return DPO(LogicalShiftRightByImmediate);
676 } else if (BITS(inst, 4, 7) == 3) {
677 return DPO(LogicalShiftRightByRegister);
678 } else if (BITS(inst, 4, 6) == 4) {
679 return DPO(ArithmeticShiftRightByImmediate);
680 } else if (BITS(inst, 4, 7) == 5) {
681 return DPO(ArithmeticShiftRightByRegister);
682 } else if (BITS(inst, 4, 6) == 6) {
683 return DPO(RotateRightByImmediate);
684 } else if (BITS(inst, 4, 7) == 7) {
685 return DPO(RotateRightByRegister);
686 }
687 return nullptr;
688}
689
690get_addr_fp_t GetAddressingOp(unsigned int inst) {
691 if (BITS(inst, 24, 27) == 5 && BIT(inst, 21) == 0) {
692 return LnSWoUB(ImmediateOffset);
693 } else if (BITS(inst, 24, 27) == 7 && BIT(inst, 21) == 0 && BITS(inst, 4, 11) == 0) {
694 return LnSWoUB(RegisterOffset);
695 } else if (BITS(inst, 24, 27) == 7 && BIT(inst, 21) == 0 && BIT(inst, 4) == 0) {
696 return LnSWoUB(ScaledRegisterOffset);
697 } else if (BITS(inst, 24, 27) == 5 && BIT(inst, 21) == 1) {
698 return LnSWoUB(ImmediatePreIndexed);
699 } else if (BITS(inst, 24, 27) == 7 && BIT(inst, 21) == 1 && BITS(inst, 4, 11) == 0) {
700 return LnSWoUB(RegisterPreIndexed);
701 } else if (BITS(inst, 24, 27) == 7 && BIT(inst, 21) == 1 && BIT(inst, 4) == 0) {
702 return LnSWoUB(ScaledRegisterPreIndexed);
703 } else if (BITS(inst, 24, 27) == 4 && BIT(inst, 21) == 0) {
704 return LnSWoUB(ImmediatePostIndexed);
705 } else if (BITS(inst, 24, 27) == 6 && BIT(inst, 21) == 0 && BITS(inst, 4, 11) == 0) {
706 return LnSWoUB(RegisterPostIndexed);
707 } else if (BITS(inst, 24, 27) == 6 && BIT(inst, 21) == 0 && BIT(inst, 4) == 0) {
708 return LnSWoUB(ScaledRegisterPostIndexed);
709 } else if (BITS(inst, 24, 27) == 1 && BITS(inst, 21, 22) == 2 && BIT(inst, 7) == 1 &&
710 BIT(inst, 4) == 1) {
711 return MLnS(ImmediateOffset);
712 } else if (BITS(inst, 24, 27) == 1 && BITS(inst, 21, 22) == 0 && BIT(inst, 7) == 1 &&
713 BIT(inst, 4) == 1) {
714 return MLnS(RegisterOffset);
715 } else if (BITS(inst, 24, 27) == 1 && BITS(inst, 21, 22) == 3 && BIT(inst, 7) == 1 &&
716 BIT(inst, 4) == 1) {
717 return MLnS(ImmediatePreIndexed);
718 } else if (BITS(inst, 24, 27) == 1 && BITS(inst, 21, 22) == 1 && BIT(inst, 7) == 1 &&
719 BIT(inst, 4) == 1) {
720 return MLnS(RegisterPreIndexed);
721 } else if (BITS(inst, 24, 27) == 0 && BITS(inst, 21, 22) == 2 && BIT(inst, 7) == 1 &&
722 BIT(inst, 4) == 1) {
723 return MLnS(ImmediatePostIndexed);
724 } else if (BITS(inst, 24, 27) == 0 && BITS(inst, 21, 22) == 0 && BIT(inst, 7) == 1 &&
725 BIT(inst, 4) == 1) {
726 return MLnS(RegisterPostIndexed);
727 } else if (BITS(inst, 23, 27) == 0x11) {
728 return LdnStM(IncrementAfter);
729 } else if (BITS(inst, 23, 27) == 0x13) {
730 return LdnStM(IncrementBefore);
731 } else if (BITS(inst, 23, 27) == 0x10) {
732 return LdnStM(DecrementAfter);
733 } else if (BITS(inst, 23, 27) == 0x12) {
734 return LdnStM(DecrementBefore);
735 }
736 return nullptr;
737}
738
739// Specialized for LDRT, LDRBT, STRT, and STRBT, which have specific addressing mode requirements
740get_addr_fp_t GetAddressingOpLoadStoreT(unsigned int inst) {
741 if (BITS(inst, 25, 27) == 2) {
742 return LnSWoUB(ImmediatePostIndexed);
743 } else if (BITS(inst, 25, 27) == 3) {
744 return LnSWoUB(ScaledRegisterPostIndexed);
745 }
746 // Reaching this would indicate the thumb version
747 // of this instruction, however the 3DS CPU doesn't
748 // support this variant (the 3DS CPU is only ARMv6K,
749 // while this variant is added in ARMv6T2).
750 // So it's sufficient for citra to not implement this.
751 return nullptr;
752}
753
754enum { FETCH_SUCCESS, FETCH_FAILURE };
755
756static ThumbDecodeStatus DecodeThumbInstruction(u32 inst, u32 addr, u32* arm_inst, u32* inst_size,
757 ARM_INST_PTR* ptr_inst_base) {
758 // Check if in Thumb mode
759 ThumbDecodeStatus ret = TranslateThumbInstruction(addr, inst, arm_inst, inst_size);
760 if (ret == ThumbDecodeStatus::BRANCH) {
761 int inst_index;
762 int table_length = static_cast<int>(arm_instruction_trans_len);
763 u32 tinstr = GetThumbInstruction(inst, addr);
764
765 switch ((tinstr & 0xF800) >> 11) {
766 case 26:
767 case 27:
768 if (((tinstr & 0x0F00) != 0x0E00) && ((tinstr & 0x0F00) != 0x0F00)) {
769 inst_index = table_length - 4;
770 *ptr_inst_base = arm_instruction_trans[inst_index](tinstr, inst_index);
771 } else {
772 LOG_ERROR(Core_ARM, "thumb decoder error");
773 }
774 break;
775 case 28:
776 // Branch 2, unconditional branch
777 inst_index = table_length - 5;
778 *ptr_inst_base = arm_instruction_trans[inst_index](tinstr, inst_index);
779 break;
780
781 case 8:
782 case 29:
783 // For BLX 1 thumb instruction
784 inst_index = table_length - 1;
785 *ptr_inst_base = arm_instruction_trans[inst_index](tinstr, inst_index);
786 break;
787 case 30:
788 // For BL 1 thumb instruction
789 inst_index = table_length - 3;
790 *ptr_inst_base = arm_instruction_trans[inst_index](tinstr, inst_index);
791 break;
792 case 31:
793 // For BL 2 thumb instruction
794 inst_index = table_length - 2;
795 *ptr_inst_base = arm_instruction_trans[inst_index](tinstr, inst_index);
796 break;
797 default:
798 ret = ThumbDecodeStatus::UNDEFINED;
799 break;
800 }
801 }
802 return ret;
803}
804
805enum { KEEP_GOING, FETCH_EXCEPTION };
806
807MICROPROFILE_DEFINE(DynCom_Decode, "DynCom", "Decode", MP_RGB(255, 64, 64));
808
809static unsigned int InterpreterTranslateInstruction(const ARMul_State* cpu, const u32 phys_addr,
810 ARM_INST_PTR& inst_base) {
811 u32 inst_size = 4;
812 u32 inst = Memory::Read32(phys_addr & 0xFFFFFFFC);
813
814 // If we are in Thumb mode, we'll translate one Thumb instruction to the corresponding ARM
815 // instruction
816 if (cpu->TFlag) {
817 u32 arm_inst;
818 ThumbDecodeStatus state =
819 DecodeThumbInstruction(inst, phys_addr, &arm_inst, &inst_size, &inst_base);
820
821 // We have translated the Thumb branch instruction in the Thumb decoder
822 if (state == ThumbDecodeStatus::BRANCH) {
823 return inst_size;
824 }
825 inst = arm_inst;
826 }
827
828 int idx;
829 if (DecodeARMInstruction(inst, &idx) == ARMDecodeStatus::FAILURE) {
830 LOG_ERROR(Core_ARM, "Decode failure.\tPC: [0x%08" PRIX32 "]\tInstruction: %08" PRIX32,
831 phys_addr, inst);
832 LOG_ERROR(Core_ARM, "cpsr=0x%" PRIX32 ", cpu->TFlag=%d, r15=0x%08" PRIX32, cpu->Cpsr,
833 cpu->TFlag, cpu->Reg[15]);
834 CITRA_IGNORE_EXIT(-1);
835 }
836 inst_base = arm_instruction_trans[idx](inst, idx);
837
838 return inst_size;
839}
840
841static int InterpreterTranslateBlock(ARMul_State* cpu, std::size_t& bb_start, u32 addr) {
842 MICROPROFILE_SCOPE(DynCom_Decode);
843
844 // Decode instruction, get index
845 // Allocate memory and init InsCream
846 // Go on next, until terminal instruction
847 // Save start addr of basicblock in CreamCache
848 ARM_INST_PTR inst_base = nullptr;
849 TransExtData ret = TransExtData::NON_BRANCH;
850 int size = 0; // instruction size of basic block
851 bb_start = trans_cache_buf_top;
852
853 u32 phys_addr = addr;
854 u32 pc_start = cpu->Reg[15];
855
856 while (ret == TransExtData::NON_BRANCH) {
857 unsigned int inst_size = InterpreterTranslateInstruction(cpu, phys_addr, inst_base);
858
859 size++;
860
861 phys_addr += inst_size;
862
863 if ((phys_addr & 0xfff) == 0) {
864 inst_base->br = TransExtData::END_OF_PAGE;
865 }
866 ret = inst_base->br;
867 };
868
869 cpu->instruction_cache[pc_start] = bb_start;
870
871 return KEEP_GOING;
872}
873
874static int InterpreterTranslateSingle(ARMul_State* cpu, std::size_t& bb_start, u32 addr) {
875 MICROPROFILE_SCOPE(DynCom_Decode);
876
877 ARM_INST_PTR inst_base = nullptr;
878 bb_start = trans_cache_buf_top;
879
880 u32 phys_addr = addr;
881 u32 pc_start = cpu->Reg[15];
882
883 InterpreterTranslateInstruction(cpu, phys_addr, inst_base);
884
885 if (inst_base->br == TransExtData::NON_BRANCH) {
886 inst_base->br = TransExtData::SINGLE_STEP;
887 }
888
889 cpu->instruction_cache[pc_start] = bb_start;
890
891 return KEEP_GOING;
892}
893
894static int clz(unsigned int x) {
895 int n;
896 if (x == 0)
897 return (32);
898 n = 1;
899 if ((x >> 16) == 0) {
900 n = n + 16;
901 x = x << 16;
902 }
903 if ((x >> 24) == 0) {
904 n = n + 8;
905 x = x << 8;
906 }
907 if ((x >> 28) == 0) {
908 n = n + 4;
909 x = x << 4;
910 }
911 if ((x >> 30) == 0) {
912 n = n + 2;
913 x = x << 2;
914 }
915 n = n - (x >> 31);
916 return n;
917}
918
919MICROPROFILE_DEFINE(DynCom_Execute, "DynCom", "Execute", MP_RGB(255, 0, 0));
920
921unsigned InterpreterMainLoop(ARMul_State* cpu) {
922 MICROPROFILE_SCOPE(DynCom_Execute);
923
924 GDBStub::BreakpointAddress breakpoint_data;
925
926#undef RM
927#undef RS
928
929#define CRn inst_cream->crn
930#define OPCODE_1 inst_cream->opcode_1
931#define OPCODE_2 inst_cream->opcode_2
932#define CRm inst_cream->crm
933#define RD cpu->Reg[inst_cream->Rd]
934#define RD2 cpu->Reg[inst_cream->Rd + 1]
935#define RN cpu->Reg[inst_cream->Rn]
936#define RM cpu->Reg[inst_cream->Rm]
937#define RS cpu->Reg[inst_cream->Rs]
938#define RDHI cpu->Reg[inst_cream->RdHi]
939#define RDLO cpu->Reg[inst_cream->RdLo]
940#define LINK_RTN_ADDR (cpu->Reg[14] = cpu->Reg[15] + 4)
941#define SET_PC (cpu->Reg[15] = cpu->Reg[15] + 8 + inst_cream->signed_immed_24)
942#define SHIFTER_OPERAND inst_cream->shtop_func(cpu, inst_cream->shifter_operand)
943
944#define FETCH_INST \
945 if (inst_base->br != TransExtData::NON_BRANCH) \
946 goto DISPATCH; \
947 inst_base = (arm_inst*)&trans_cache_buf[ptr]
948
949#define INC_PC(l) ptr += sizeof(arm_inst) + l
950#define INC_PC_STUB ptr += sizeof(arm_inst)
951
952#define GDB_BP_CHECK \
953 cpu->Cpsr &= ~(1 << 5); \
954 cpu->Cpsr |= cpu->TFlag << 5; \
955 if (GDBStub::IsServerEnabled()) { \
956 if (GDBStub::IsMemoryBreak() || (breakpoint_data.type != GDBStub::BreakpointType::None && \
957 PC == breakpoint_data.address)) { \
958 GDBStub::Break(); \
959 goto END; \
960 } \
961 }
962
963// GCC and Clang have a C++ extension to support a lookup table of labels. Otherwise, fallback to a
964// clunky switch statement.
965#if defined __GNUC__ || defined __clang__
966#define GOTO_NEXT_INST \
967 GDB_BP_CHECK; \
968 if (num_instrs >= cpu->NumInstrsToExecute) \
969 goto END; \
970 num_instrs++; \
971 goto* InstLabel[inst_base->idx]
972#else
973#define GOTO_NEXT_INST \
974 GDB_BP_CHECK; \
975 if (num_instrs >= cpu->NumInstrsToExecute) \
976 goto END; \
977 num_instrs++; \
978 switch (inst_base->idx) { \
979 case 0: \
980 goto VMLA_INST; \
981 case 1: \
982 goto VMLS_INST; \
983 case 2: \
984 goto VNMLA_INST; \
985 case 3: \
986 goto VNMLS_INST; \
987 case 4: \
988 goto VNMUL_INST; \
989 case 5: \
990 goto VMUL_INST; \
991 case 6: \
992 goto VADD_INST; \
993 case 7: \
994 goto VSUB_INST; \
995 case 8: \
996 goto VDIV_INST; \
997 case 9: \
998 goto VMOVI_INST; \
999 case 10: \
1000 goto VMOVR_INST; \
1001 case 11: \
1002 goto VABS_INST; \
1003 case 12: \
1004 goto VNEG_INST; \
1005 case 13: \
1006 goto VSQRT_INST; \
1007 case 14: \
1008 goto VCMP_INST; \
1009 case 15: \
1010 goto VCMP2_INST; \
1011 case 16: \
1012 goto VCVTBDS_INST; \
1013 case 17: \
1014 goto VCVTBFF_INST; \
1015 case 18: \
1016 goto VCVTBFI_INST; \
1017 case 19: \
1018 goto VMOVBRS_INST; \
1019 case 20: \
1020 goto VMSR_INST; \
1021 case 21: \
1022 goto VMOVBRC_INST; \
1023 case 22: \
1024 goto VMRS_INST; \
1025 case 23: \
1026 goto VMOVBCR_INST; \
1027 case 24: \
1028 goto VMOVBRRSS_INST; \
1029 case 25: \
1030 goto VMOVBRRD_INST; \
1031 case 26: \
1032 goto VSTR_INST; \
1033 case 27: \
1034 goto VPUSH_INST; \
1035 case 28: \
1036 goto VSTM_INST; \
1037 case 29: \
1038 goto VPOP_INST; \
1039 case 30: \
1040 goto VLDR_INST; \
1041 case 31: \
1042 goto VLDM_INST; \
1043 case 32: \
1044 goto SRS_INST; \
1045 case 33: \
1046 goto RFE_INST; \
1047 case 34: \
1048 goto BKPT_INST; \
1049 case 35: \
1050 goto BLX_INST; \
1051 case 36: \
1052 goto CPS_INST; \
1053 case 37: \
1054 goto PLD_INST; \
1055 case 38: \
1056 goto SETEND_INST; \
1057 case 39: \
1058 goto CLREX_INST; \
1059 case 40: \
1060 goto REV16_INST; \
1061 case 41: \
1062 goto USAD8_INST; \
1063 case 42: \
1064 goto SXTB_INST; \
1065 case 43: \
1066 goto UXTB_INST; \
1067 case 44: \
1068 goto SXTH_INST; \
1069 case 45: \
1070 goto SXTB16_INST; \
1071 case 46: \
1072 goto UXTH_INST; \
1073 case 47: \
1074 goto UXTB16_INST; \
1075 case 48: \
1076 goto CPY_INST; \
1077 case 49: \
1078 goto UXTAB_INST; \
1079 case 50: \
1080 goto SSUB8_INST; \
1081 case 51: \
1082 goto SHSUB8_INST; \
1083 case 52: \
1084 goto SSUBADDX_INST; \
1085 case 53: \
1086 goto STREX_INST; \
1087 case 54: \
1088 goto STREXB_INST; \
1089 case 55: \
1090 goto SWP_INST; \
1091 case 56: \
1092 goto SWPB_INST; \
1093 case 57: \
1094 goto SSUB16_INST; \
1095 case 58: \
1096 goto SSAT16_INST; \
1097 case 59: \
1098 goto SHSUBADDX_INST; \
1099 case 60: \
1100 goto QSUBADDX_INST; \
1101 case 61: \
1102 goto SHADDSUBX_INST; \
1103 case 62: \
1104 goto SHADD8_INST; \
1105 case 63: \
1106 goto SHADD16_INST; \
1107 case 64: \
1108 goto SEL_INST; \
1109 case 65: \
1110 goto SADDSUBX_INST; \
1111 case 66: \
1112 goto SADD8_INST; \
1113 case 67: \
1114 goto SADD16_INST; \
1115 case 68: \
1116 goto SHSUB16_INST; \
1117 case 69: \
1118 goto UMAAL_INST; \
1119 case 70: \
1120 goto UXTAB16_INST; \
1121 case 71: \
1122 goto USUBADDX_INST; \
1123 case 72: \
1124 goto USUB8_INST; \
1125 case 73: \
1126 goto USUB16_INST; \
1127 case 74: \
1128 goto USAT16_INST; \
1129 case 75: \
1130 goto USADA8_INST; \
1131 case 76: \
1132 goto UQSUBADDX_INST; \
1133 case 77: \
1134 goto UQSUB8_INST; \
1135 case 78: \
1136 goto UQSUB16_INST; \
1137 case 79: \
1138 goto UQADDSUBX_INST; \
1139 case 80: \
1140 goto UQADD8_INST; \
1141 case 81: \
1142 goto UQADD16_INST; \
1143 case 82: \
1144 goto SXTAB_INST; \
1145 case 83: \
1146 goto UHSUBADDX_INST; \
1147 case 84: \
1148 goto UHSUB8_INST; \
1149 case 85: \
1150 goto UHSUB16_INST; \
1151 case 86: \
1152 goto UHADDSUBX_INST; \
1153 case 87: \
1154 goto UHADD8_INST; \
1155 case 88: \
1156 goto UHADD16_INST; \
1157 case 89: \
1158 goto UADDSUBX_INST; \
1159 case 90: \
1160 goto UADD8_INST; \
1161 case 91: \
1162 goto UADD16_INST; \
1163 case 92: \
1164 goto SXTAH_INST; \
1165 case 93: \
1166 goto SXTAB16_INST; \
1167 case 94: \
1168 goto QADD8_INST; \
1169 case 95: \
1170 goto BXJ_INST; \
1171 case 96: \
1172 goto CLZ_INST; \
1173 case 97: \
1174 goto UXTAH_INST; \
1175 case 98: \
1176 goto BX_INST; \
1177 case 99: \
1178 goto REV_INST; \
1179 case 100: \
1180 goto BLX_INST; \
1181 case 101: \
1182 goto REVSH_INST; \
1183 case 102: \
1184 goto QADD_INST; \
1185 case 103: \
1186 goto QADD16_INST; \
1187 case 104: \
1188 goto QADDSUBX_INST; \
1189 case 105: \
1190 goto LDREX_INST; \
1191 case 106: \
1192 goto QDADD_INST; \
1193 case 107: \
1194 goto QDSUB_INST; \
1195 case 108: \
1196 goto QSUB_INST; \
1197 case 109: \
1198 goto LDREXB_INST; \
1199 case 110: \
1200 goto QSUB8_INST; \
1201 case 111: \
1202 goto QSUB16_INST; \
1203 case 112: \
1204 goto SMUAD_INST; \
1205 case 113: \
1206 goto SMMUL_INST; \
1207 case 114: \
1208 goto SMUSD_INST; \
1209 case 115: \
1210 goto SMLSD_INST; \
1211 case 116: \
1212 goto SMLSLD_INST; \
1213 case 117: \
1214 goto SMMLA_INST; \
1215 case 118: \
1216 goto SMMLS_INST; \
1217 case 119: \
1218 goto SMLALD_INST; \
1219 case 120: \
1220 goto SMLAD_INST; \
1221 case 121: \
1222 goto SMLAW_INST; \
1223 case 122: \
1224 goto SMULW_INST; \
1225 case 123: \
1226 goto PKHTB_INST; \
1227 case 124: \
1228 goto PKHBT_INST; \
1229 case 125: \
1230 goto SMUL_INST; \
1231 case 126: \
1232 goto SMLALXY_INST; \
1233 case 127: \
1234 goto SMLA_INST; \
1235 case 128: \
1236 goto MCRR_INST; \
1237 case 129: \
1238 goto MRRC_INST; \
1239 case 130: \
1240 goto CMP_INST; \
1241 case 131: \
1242 goto TST_INST; \
1243 case 132: \
1244 goto TEQ_INST; \
1245 case 133: \
1246 goto CMN_INST; \
1247 case 134: \
1248 goto SMULL_INST; \
1249 case 135: \
1250 goto UMULL_INST; \
1251 case 136: \
1252 goto UMLAL_INST; \
1253 case 137: \
1254 goto SMLAL_INST; \
1255 case 138: \
1256 goto MUL_INST; \
1257 case 139: \
1258 goto MLA_INST; \
1259 case 140: \
1260 goto SSAT_INST; \
1261 case 141: \
1262 goto USAT_INST; \
1263 case 142: \
1264 goto MRS_INST; \
1265 case 143: \
1266 goto MSR_INST; \
1267 case 144: \
1268 goto AND_INST; \
1269 case 145: \
1270 goto BIC_INST; \
1271 case 146: \
1272 goto LDM_INST; \
1273 case 147: \
1274 goto EOR_INST; \
1275 case 148: \
1276 goto ADD_INST; \
1277 case 149: \
1278 goto RSB_INST; \
1279 case 150: \
1280 goto RSC_INST; \
1281 case 151: \
1282 goto SBC_INST; \
1283 case 152: \
1284 goto ADC_INST; \
1285 case 153: \
1286 goto SUB_INST; \
1287 case 154: \
1288 goto ORR_INST; \
1289 case 155: \
1290 goto MVN_INST; \
1291 case 156: \
1292 goto MOV_INST; \
1293 case 157: \
1294 goto STM_INST; \
1295 case 158: \
1296 goto LDM_INST; \
1297 case 159: \
1298 goto LDRSH_INST; \
1299 case 160: \
1300 goto STM_INST; \
1301 case 161: \
1302 goto LDM_INST; \
1303 case 162: \
1304 goto LDRSB_INST; \
1305 case 163: \
1306 goto STRD_INST; \
1307 case 164: \
1308 goto LDRH_INST; \
1309 case 165: \
1310 goto STRH_INST; \
1311 case 166: \
1312 goto LDRD_INST; \
1313 case 167: \
1314 goto STRT_INST; \
1315 case 168: \
1316 goto STRBT_INST; \
1317 case 169: \
1318 goto LDRBT_INST; \
1319 case 170: \
1320 goto LDRT_INST; \
1321 case 171: \
1322 goto MRC_INST; \
1323 case 172: \
1324 goto MCR_INST; \
1325 case 173: \
1326 goto MSR_INST; \
1327 case 174: \
1328 goto MSR_INST; \
1329 case 175: \
1330 goto MSR_INST; \
1331 case 176: \
1332 goto MSR_INST; \
1333 case 177: \
1334 goto MSR_INST; \
1335 case 178: \
1336 goto LDRB_INST; \
1337 case 179: \
1338 goto STRB_INST; \
1339 case 180: \
1340 goto LDR_INST; \
1341 case 181: \
1342 goto LDRCOND_INST; \
1343 case 182: \
1344 goto STR_INST; \
1345 case 183: \
1346 goto CDP_INST; \
1347 case 184: \
1348 goto STC_INST; \
1349 case 185: \
1350 goto LDC_INST; \
1351 case 186: \
1352 goto LDREXD_INST; \
1353 case 187: \
1354 goto STREXD_INST; \
1355 case 188: \
1356 goto LDREXH_INST; \
1357 case 189: \
1358 goto STREXH_INST; \
1359 case 190: \
1360 goto NOP_INST; \
1361 case 191: \
1362 goto YIELD_INST; \
1363 case 192: \
1364 goto WFE_INST; \
1365 case 193: \
1366 goto WFI_INST; \
1367 case 194: \
1368 goto SEV_INST; \
1369 case 195: \
1370 goto SWI_INST; \
1371 case 196: \
1372 goto BBL_INST; \
1373 case 197: \
1374 goto B_2_THUMB; \
1375 case 198: \
1376 goto B_COND_THUMB; \
1377 case 199: \
1378 goto BL_1_THUMB; \
1379 case 200: \
1380 goto BL_2_THUMB; \
1381 case 201: \
1382 goto BLX_1_THUMB; \
1383 case 202: \
1384 goto DISPATCH; \
1385 case 203: \
1386 goto INIT_INST_LENGTH; \
1387 case 204: \
1388 goto END; \
1389 }
1390#endif
1391
1392#define UPDATE_NFLAG(dst) (cpu->NFlag = BIT(dst, 31) ? 1 : 0)
1393#define UPDATE_ZFLAG(dst) (cpu->ZFlag = dst ? 0 : 1)
1394#define UPDATE_CFLAG_WITH_SC (cpu->CFlag = cpu->shifter_carry_out)
1395
1396#define SAVE_NZCVT \
1397 cpu->Cpsr = (cpu->Cpsr & 0x0fffffdf) | (cpu->NFlag << 31) | (cpu->ZFlag << 30) | \
1398 (cpu->CFlag << 29) | (cpu->VFlag << 28) | (cpu->TFlag << 5)
1399#define LOAD_NZCVT \
1400 cpu->NFlag = (cpu->Cpsr >> 31); \
1401 cpu->ZFlag = (cpu->Cpsr >> 30) & 1; \
1402 cpu->CFlag = (cpu->Cpsr >> 29) & 1; \
1403 cpu->VFlag = (cpu->Cpsr >> 28) & 1; \
1404 cpu->TFlag = (cpu->Cpsr >> 5) & 1;
1405
1406#define CurrentModeHasSPSR (cpu->Mode != SYSTEM32MODE) && (cpu->Mode != USER32MODE)
1407#define PC (cpu->Reg[15])
1408
1409// GCC and Clang have a C++ extension to support a lookup table of labels. Otherwise, fallback
1410// to a clunky switch statement.
1411#if defined __GNUC__ || defined __clang__
1412 void* InstLabel[] = {&&VMLA_INST,
1413 &&VMLS_INST,
1414 &&VNMLA_INST,
1415 &&VNMLS_INST,
1416 &&VNMUL_INST,
1417 &&VMUL_INST,
1418 &&VADD_INST,
1419 &&VSUB_INST,
1420 &&VDIV_INST,
1421 &&VMOVI_INST,
1422 &&VMOVR_INST,
1423 &&VABS_INST,
1424 &&VNEG_INST,
1425 &&VSQRT_INST,
1426 &&VCMP_INST,
1427 &&VCMP2_INST,
1428 &&VCVTBDS_INST,
1429 &&VCVTBFF_INST,
1430 &&VCVTBFI_INST,
1431 &&VMOVBRS_INST,
1432 &&VMSR_INST,
1433 &&VMOVBRC_INST,
1434 &&VMRS_INST,
1435 &&VMOVBCR_INST,
1436 &&VMOVBRRSS_INST,
1437 &&VMOVBRRD_INST,
1438 &&VSTR_INST,
1439 &&VPUSH_INST,
1440 &&VSTM_INST,
1441 &&VPOP_INST,
1442 &&VLDR_INST,
1443 &&VLDM_INST,
1444
1445 &&SRS_INST,
1446 &&RFE_INST,
1447 &&BKPT_INST,
1448 &&BLX_INST,
1449 &&CPS_INST,
1450 &&PLD_INST,
1451 &&SETEND_INST,
1452 &&CLREX_INST,
1453 &&REV16_INST,
1454 &&USAD8_INST,
1455 &&SXTB_INST,
1456 &&UXTB_INST,
1457 &&SXTH_INST,
1458 &&SXTB16_INST,
1459 &&UXTH_INST,
1460 &&UXTB16_INST,
1461 &&CPY_INST,
1462 &&UXTAB_INST,
1463 &&SSUB8_INST,
1464 &&SHSUB8_INST,
1465 &&SSUBADDX_INST,
1466 &&STREX_INST,
1467 &&STREXB_INST,
1468 &&SWP_INST,
1469 &&SWPB_INST,
1470 &&SSUB16_INST,
1471 &&SSAT16_INST,
1472 &&SHSUBADDX_INST,
1473 &&QSUBADDX_INST,
1474 &&SHADDSUBX_INST,
1475 &&SHADD8_INST,
1476 &&SHADD16_INST,
1477 &&SEL_INST,
1478 &&SADDSUBX_INST,
1479 &&SADD8_INST,
1480 &&SADD16_INST,
1481 &&SHSUB16_INST,
1482 &&UMAAL_INST,
1483 &&UXTAB16_INST,
1484 &&USUBADDX_INST,
1485 &&USUB8_INST,
1486 &&USUB16_INST,
1487 &&USAT16_INST,
1488 &&USADA8_INST,
1489 &&UQSUBADDX_INST,
1490 &&UQSUB8_INST,
1491 &&UQSUB16_INST,
1492 &&UQADDSUBX_INST,
1493 &&UQADD8_INST,
1494 &&UQADD16_INST,
1495 &&SXTAB_INST,
1496 &&UHSUBADDX_INST,
1497 &&UHSUB8_INST,
1498 &&UHSUB16_INST,
1499 &&UHADDSUBX_INST,
1500 &&UHADD8_INST,
1501 &&UHADD16_INST,
1502 &&UADDSUBX_INST,
1503 &&UADD8_INST,
1504 &&UADD16_INST,
1505 &&SXTAH_INST,
1506 &&SXTAB16_INST,
1507 &&QADD8_INST,
1508 &&BXJ_INST,
1509 &&CLZ_INST,
1510 &&UXTAH_INST,
1511 &&BX_INST,
1512 &&REV_INST,
1513 &&BLX_INST,
1514 &&REVSH_INST,
1515 &&QADD_INST,
1516 &&QADD16_INST,
1517 &&QADDSUBX_INST,
1518 &&LDREX_INST,
1519 &&QDADD_INST,
1520 &&QDSUB_INST,
1521 &&QSUB_INST,
1522 &&LDREXB_INST,
1523 &&QSUB8_INST,
1524 &&QSUB16_INST,
1525 &&SMUAD_INST,
1526 &&SMMUL_INST,
1527 &&SMUSD_INST,
1528 &&SMLSD_INST,
1529 &&SMLSLD_INST,
1530 &&SMMLA_INST,
1531 &&SMMLS_INST,
1532 &&SMLALD_INST,
1533 &&SMLAD_INST,
1534 &&SMLAW_INST,
1535 &&SMULW_INST,
1536 &&PKHTB_INST,
1537 &&PKHBT_INST,
1538 &&SMUL_INST,
1539 &&SMLALXY_INST,
1540 &&SMLA_INST,
1541 &&MCRR_INST,
1542 &&MRRC_INST,
1543 &&CMP_INST,
1544 &&TST_INST,
1545 &&TEQ_INST,
1546 &&CMN_INST,
1547 &&SMULL_INST,
1548 &&UMULL_INST,
1549 &&UMLAL_INST,
1550 &&SMLAL_INST,
1551 &&MUL_INST,
1552 &&MLA_INST,
1553 &&SSAT_INST,
1554 &&USAT_INST,
1555 &&MRS_INST,
1556 &&MSR_INST,
1557 &&AND_INST,
1558 &&BIC_INST,
1559 &&LDM_INST,
1560 &&EOR_INST,
1561 &&ADD_INST,
1562 &&RSB_INST,
1563 &&RSC_INST,
1564 &&SBC_INST,
1565 &&ADC_INST,
1566 &&SUB_INST,
1567 &&ORR_INST,
1568 &&MVN_INST,
1569 &&MOV_INST,
1570 &&STM_INST,
1571 &&LDM_INST,
1572 &&LDRSH_INST,
1573 &&STM_INST,
1574 &&LDM_INST,
1575 &&LDRSB_INST,
1576 &&STRD_INST,
1577 &&LDRH_INST,
1578 &&STRH_INST,
1579 &&LDRD_INST,
1580 &&STRT_INST,
1581 &&STRBT_INST,
1582 &&LDRBT_INST,
1583 &&LDRT_INST,
1584 &&MRC_INST,
1585 &&MCR_INST,
1586 &&MSR_INST,
1587 &&MSR_INST,
1588 &&MSR_INST,
1589 &&MSR_INST,
1590 &&MSR_INST,
1591 &&LDRB_INST,
1592 &&STRB_INST,
1593 &&LDR_INST,
1594 &&LDRCOND_INST,
1595 &&STR_INST,
1596 &&CDP_INST,
1597 &&STC_INST,
1598 &&LDC_INST,
1599 &&LDREXD_INST,
1600 &&STREXD_INST,
1601 &&LDREXH_INST,
1602 &&STREXH_INST,
1603 &&NOP_INST,
1604 &&YIELD_INST,
1605 &&WFE_INST,
1606 &&WFI_INST,
1607 &&SEV_INST,
1608 &&SWI_INST,
1609 &&BBL_INST,
1610 &&B_2_THUMB,
1611 &&B_COND_THUMB,
1612 &&BL_1_THUMB,
1613 &&BL_2_THUMB,
1614 &&BLX_1_THUMB,
1615 &&DISPATCH,
1616 &&INIT_INST_LENGTH,
1617 &&END};
1618#endif
1619 arm_inst* inst_base;
1620 unsigned int addr;
1621 unsigned int num_instrs = 0;
1622
1623 std::size_t ptr;
1624
1625 LOAD_NZCVT;
1626DISPATCH : {
1627 if (!cpu->NirqSig) {
1628 if (!(cpu->Cpsr & 0x80)) {
1629 goto END;
1630 }
1631 }
1632
1633 if (cpu->TFlag)
1634 cpu->Reg[15] &= 0xfffffffe;
1635 else
1636 cpu->Reg[15] &= 0xfffffffc;
1637
1638 // Find the cached instruction cream, otherwise translate it...
1639 auto itr = cpu->instruction_cache.find(cpu->Reg[15]);
1640 if (itr != cpu->instruction_cache.end()) {
1641 ptr = itr->second;
1642 } else if (cpu->NumInstrsToExecute != 1) {
1643 if (InterpreterTranslateBlock(cpu, ptr, cpu->Reg[15]) == FETCH_EXCEPTION)
1644 goto END;
1645 } else {
1646 if (InterpreterTranslateSingle(cpu, ptr, cpu->Reg[15]) == FETCH_EXCEPTION)
1647 goto END;
1648 }
1649
1650 // Find breakpoint if one exists within the block
1651 if (GDBStub::IsConnected()) {
1652 breakpoint_data =
1653 GDBStub::GetNextBreakpointFromAddress(cpu->Reg[15], GDBStub::BreakpointType::Execute);
1654 }
1655
1656 inst_base = (arm_inst*)&trans_cache_buf[ptr];
1657 GOTO_NEXT_INST;
1658}
1659ADC_INST : {
1660 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
1661 adc_inst* const inst_cream = (adc_inst*)inst_base->component;
1662
1663 u32 rn_val = RN;
1664 if (inst_cream->Rn == 15)
1665 rn_val += 2 * cpu->GetInstructionSize();
1666
1667 bool carry;
1668 bool overflow;
1669 RD = AddWithCarry(rn_val, SHIFTER_OPERAND, cpu->CFlag, &carry, &overflow);
1670
1671 if (inst_cream->S && (inst_cream->Rd == 15)) {
1672 if (CurrentModeHasSPSR) {
1673 cpu->Cpsr = cpu->Spsr_copy;
1674 cpu->ChangePrivilegeMode(cpu->Spsr_copy & 0x1F);
1675 LOAD_NZCVT;
1676 }
1677 } else if (inst_cream->S) {
1678 UPDATE_NFLAG(RD);
1679 UPDATE_ZFLAG(RD);
1680 cpu->CFlag = carry;
1681 cpu->VFlag = overflow;
1682 }
1683 if (inst_cream->Rd == 15) {
1684 INC_PC(sizeof(adc_inst));
1685 goto DISPATCH;
1686 }
1687 }
1688 cpu->Reg[15] += cpu->GetInstructionSize();
1689 INC_PC(sizeof(adc_inst));
1690 FETCH_INST;
1691 GOTO_NEXT_INST;
1692}
1693ADD_INST : {
1694 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
1695 add_inst* const inst_cream = (add_inst*)inst_base->component;
1696
1697 u32 rn_val = CHECK_READ_REG15_WA(cpu, inst_cream->Rn);
1698
1699 bool carry;
1700 bool overflow;
1701 RD = AddWithCarry(rn_val, SHIFTER_OPERAND, 0, &carry, &overflow);
1702
1703 if (inst_cream->S && (inst_cream->Rd == 15)) {
1704 if (CurrentModeHasSPSR) {
1705 cpu->Cpsr = cpu->Spsr_copy;
1706 cpu->ChangePrivilegeMode(cpu->Cpsr & 0x1F);
1707 LOAD_NZCVT;
1708 }
1709 } else if (inst_cream->S) {
1710 UPDATE_NFLAG(RD);
1711 UPDATE_ZFLAG(RD);
1712 cpu->CFlag = carry;
1713 cpu->VFlag = overflow;
1714 }
1715 if (inst_cream->Rd == 15) {
1716 INC_PC(sizeof(add_inst));
1717 goto DISPATCH;
1718 }
1719 }
1720 cpu->Reg[15] += cpu->GetInstructionSize();
1721 INC_PC(sizeof(add_inst));
1722 FETCH_INST;
1723 GOTO_NEXT_INST;
1724}
1725AND_INST : {
1726 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
1727 and_inst* const inst_cream = (and_inst*)inst_base->component;
1728
1729 u32 lop = RN;
1730 u32 rop = SHIFTER_OPERAND;
1731
1732 if (inst_cream->Rn == 15)
1733 lop += 2 * cpu->GetInstructionSize();
1734
1735 RD = lop & rop;
1736
1737 if (inst_cream->S && (inst_cream->Rd == 15)) {
1738 if (CurrentModeHasSPSR) {
1739 cpu->Cpsr = cpu->Spsr_copy;
1740 cpu->ChangePrivilegeMode(cpu->Cpsr & 0x1F);
1741 LOAD_NZCVT;
1742 }
1743 } else if (inst_cream->S) {
1744 UPDATE_NFLAG(RD);
1745 UPDATE_ZFLAG(RD);
1746 UPDATE_CFLAG_WITH_SC;
1747 }
1748 if (inst_cream->Rd == 15) {
1749 INC_PC(sizeof(and_inst));
1750 goto DISPATCH;
1751 }
1752 }
1753 cpu->Reg[15] += cpu->GetInstructionSize();
1754 INC_PC(sizeof(and_inst));
1755 FETCH_INST;
1756 GOTO_NEXT_INST;
1757}
1758BBL_INST : {
1759 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
1760 bbl_inst* inst_cream = (bbl_inst*)inst_base->component;
1761 if (inst_cream->L) {
1762 LINK_RTN_ADDR;
1763 }
1764 SET_PC;
1765 INC_PC(sizeof(bbl_inst));
1766 goto DISPATCH;
1767 }
1768 cpu->Reg[15] += cpu->GetInstructionSize();
1769 INC_PC(sizeof(bbl_inst));
1770 goto DISPATCH;
1771}
1772BIC_INST : {
1773 bic_inst* inst_cream = (bic_inst*)inst_base->component;
1774 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
1775 u32 lop = RN;
1776 if (inst_cream->Rn == 15) {
1777 lop += 2 * cpu->GetInstructionSize();
1778 }
1779 u32 rop = SHIFTER_OPERAND;
1780 RD = lop & (~rop);
1781 if ((inst_cream->S) && (inst_cream->Rd == 15)) {
1782 if (CurrentModeHasSPSR) {
1783 cpu->Cpsr = cpu->Spsr_copy;
1784 cpu->ChangePrivilegeMode(cpu->Spsr_copy & 0x1F);
1785 LOAD_NZCVT;
1786 }
1787 } else if (inst_cream->S) {
1788 UPDATE_NFLAG(RD);
1789 UPDATE_ZFLAG(RD);
1790 UPDATE_CFLAG_WITH_SC;
1791 }
1792 if (inst_cream->Rd == 15) {
1793 INC_PC(sizeof(bic_inst));
1794 goto DISPATCH;
1795 }
1796 }
1797 cpu->Reg[15] += cpu->GetInstructionSize();
1798 INC_PC(sizeof(bic_inst));
1799 FETCH_INST;
1800 GOTO_NEXT_INST;
1801}
1802BKPT_INST : {
1803 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
1804 bkpt_inst* const inst_cream = (bkpt_inst*)inst_base->component;
1805 LOG_DEBUG(Core_ARM, "Breakpoint instruction hit. Immediate: 0x%08X", inst_cream->imm);
1806 }
1807 cpu->Reg[15] += cpu->GetInstructionSize();
1808 INC_PC(sizeof(bkpt_inst));
1809 FETCH_INST;
1810 GOTO_NEXT_INST;
1811}
1812BLX_INST : {
1813 blx_inst* inst_cream = (blx_inst*)inst_base->component;
1814 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
1815 unsigned int inst = inst_cream->inst;
1816 if (BITS(inst, 20, 27) == 0x12 && BITS(inst, 4, 7) == 0x3) {
1817 const u32 jump_address = cpu->Reg[inst_cream->val.Rm];
1818 cpu->Reg[14] = (cpu->Reg[15] + cpu->GetInstructionSize());
1819 if (cpu->TFlag)
1820 cpu->Reg[14] |= 0x1;
1821 cpu->Reg[15] = jump_address & 0xfffffffe;
1822 cpu->TFlag = jump_address & 0x1;
1823 } else {
1824 cpu->Reg[14] = (cpu->Reg[15] + cpu->GetInstructionSize());
1825 cpu->TFlag = 0x1;
1826 int signed_int = inst_cream->val.signed_immed_24;
1827 signed_int = (signed_int & 0x800000) ? (0x3F000000 | signed_int) : signed_int;
1828 signed_int = signed_int << 2;
1829 cpu->Reg[15] = cpu->Reg[15] + 8 + signed_int + (BIT(inst, 24) << 1);
1830 }
1831 INC_PC(sizeof(blx_inst));
1832 goto DISPATCH;
1833 }
1834 cpu->Reg[15] += cpu->GetInstructionSize();
1835 INC_PC(sizeof(blx_inst));
1836 goto DISPATCH;
1837}
1838
1839BX_INST:
1840BXJ_INST : {
1841 // Note that only the 'fail' case of BXJ is emulated. This is because
1842 // the facilities for Jazelle emulation are not implemented.
1843 //
1844 // According to the ARM documentation on BXJ, if setting the J bit in the APSR
1845 // fails, then BXJ functions identically like a regular BX instruction.
1846 //
1847 // This is sufficient for citra, as the CPU for the 3DS does not implement Jazelle.
1848
1849 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
1850 bx_inst* const inst_cream = (bx_inst*)inst_base->component;
1851
1852 u32 address = RM;
1853
1854 if (inst_cream->Rm == 15)
1855 address += 2 * cpu->GetInstructionSize();
1856
1857 cpu->TFlag = address & 1;
1858 cpu->Reg[15] = address & 0xfffffffe;
1859 INC_PC(sizeof(bx_inst));
1860 goto DISPATCH;
1861 }
1862
1863 cpu->Reg[15] += cpu->GetInstructionSize();
1864 INC_PC(sizeof(bx_inst));
1865 goto DISPATCH;
1866}
1867
1868CDP_INST : {
1869 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
1870 // Undefined instruction here
1871 cpu->NumInstrsToExecute = 0;
1872 return num_instrs;
1873 }
1874 cpu->Reg[15] += cpu->GetInstructionSize();
1875 INC_PC(sizeof(cdp_inst));
1876 FETCH_INST;
1877 GOTO_NEXT_INST;
1878}
1879
1880CLREX_INST : {
1881 cpu->UnsetExclusiveMemoryAddress();
1882 cpu->Reg[15] += cpu->GetInstructionSize();
1883 INC_PC(sizeof(clrex_inst));
1884 FETCH_INST;
1885 GOTO_NEXT_INST;
1886}
1887CLZ_INST : {
1888 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
1889 clz_inst* inst_cream = (clz_inst*)inst_base->component;
1890 RD = clz(RM);
1891 }
1892 cpu->Reg[15] += cpu->GetInstructionSize();
1893 INC_PC(sizeof(clz_inst));
1894 FETCH_INST;
1895 GOTO_NEXT_INST;
1896}
1897CMN_INST : {
1898 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
1899 cmn_inst* const inst_cream = (cmn_inst*)inst_base->component;
1900
1901 u32 rn_val = RN;
1902 if (inst_cream->Rn == 15)
1903 rn_val += 2 * cpu->GetInstructionSize();
1904
1905 bool carry;
1906 bool overflow;
1907 u32 result = AddWithCarry(rn_val, SHIFTER_OPERAND, 0, &carry, &overflow);
1908
1909 UPDATE_NFLAG(result);
1910 UPDATE_ZFLAG(result);
1911 cpu->CFlag = carry;
1912 cpu->VFlag = overflow;
1913 }
1914 cpu->Reg[15] += cpu->GetInstructionSize();
1915 INC_PC(sizeof(cmn_inst));
1916 FETCH_INST;
1917 GOTO_NEXT_INST;
1918}
1919CMP_INST : {
1920 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
1921 cmp_inst* const inst_cream = (cmp_inst*)inst_base->component;
1922
1923 u32 rn_val = RN;
1924 if (inst_cream->Rn == 15)
1925 rn_val += 2 * cpu->GetInstructionSize();
1926
1927 bool carry;
1928 bool overflow;
1929 u32 result = AddWithCarry(rn_val, ~SHIFTER_OPERAND, 1, &carry, &overflow);
1930
1931 UPDATE_NFLAG(result);
1932 UPDATE_ZFLAG(result);
1933 cpu->CFlag = carry;
1934 cpu->VFlag = overflow;
1935 }
1936 cpu->Reg[15] += cpu->GetInstructionSize();
1937 INC_PC(sizeof(cmp_inst));
1938 FETCH_INST;
1939 GOTO_NEXT_INST;
1940}
1941CPS_INST : {
1942 cps_inst* inst_cream = (cps_inst*)inst_base->component;
1943 u32 aif_val = 0;
1944 u32 aif_mask = 0;
1945 if (cpu->InAPrivilegedMode()) {
1946 if (inst_cream->imod1) {
1947 if (inst_cream->A) {
1948 aif_val |= (inst_cream->imod0 << 8);
1949 aif_mask |= 1 << 8;
1950 }
1951 if (inst_cream->I) {
1952 aif_val |= (inst_cream->imod0 << 7);
1953 aif_mask |= 1 << 7;
1954 }
1955 if (inst_cream->F) {
1956 aif_val |= (inst_cream->imod0 << 6);
1957 aif_mask |= 1 << 6;
1958 }
1959 aif_mask = ~aif_mask;
1960 cpu->Cpsr = (cpu->Cpsr & aif_mask) | aif_val;
1961 }
1962 if (inst_cream->mmod) {
1963 cpu->Cpsr = (cpu->Cpsr & 0xffffffe0) | inst_cream->mode;
1964 cpu->ChangePrivilegeMode(inst_cream->mode);
1965 }
1966 }
1967 cpu->Reg[15] += cpu->GetInstructionSize();
1968 INC_PC(sizeof(cps_inst));
1969 FETCH_INST;
1970 GOTO_NEXT_INST;
1971}
1972CPY_INST : {
1973 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
1974 mov_inst* inst_cream = (mov_inst*)inst_base->component;
1975
1976 RD = SHIFTER_OPERAND;
1977 if (inst_cream->Rd == 15) {
1978 INC_PC(sizeof(mov_inst));
1979 goto DISPATCH;
1980 }
1981 }
1982 cpu->Reg[15] += cpu->GetInstructionSize();
1983 INC_PC(sizeof(mov_inst));
1984 FETCH_INST;
1985 GOTO_NEXT_INST;
1986}
1987EOR_INST : {
1988 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
1989 eor_inst* inst_cream = (eor_inst*)inst_base->component;
1990
1991 u32 lop = RN;
1992 if (inst_cream->Rn == 15) {
1993 lop += 2 * cpu->GetInstructionSize();
1994 }
1995 u32 rop = SHIFTER_OPERAND;
1996 RD = lop ^ rop;
1997 if (inst_cream->S && (inst_cream->Rd == 15)) {
1998 if (CurrentModeHasSPSR) {
1999 cpu->Cpsr = cpu->Spsr_copy;
2000 cpu->ChangePrivilegeMode(cpu->Spsr_copy & 0x1F);
2001 LOAD_NZCVT;
2002 }
2003 } else if (inst_cream->S) {
2004 UPDATE_NFLAG(RD);
2005 UPDATE_ZFLAG(RD);
2006 UPDATE_CFLAG_WITH_SC;
2007 }
2008 if (inst_cream->Rd == 15) {
2009 INC_PC(sizeof(eor_inst));
2010 goto DISPATCH;
2011 }
2012 }
2013 cpu->Reg[15] += cpu->GetInstructionSize();
2014 INC_PC(sizeof(eor_inst));
2015 FETCH_INST;
2016 GOTO_NEXT_INST;
2017}
2018LDC_INST : {
2019 // Instruction not implemented
2020 // LOG_CRITICAL(Core_ARM, "unimplemented instruction");
2021 cpu->Reg[15] += cpu->GetInstructionSize();
2022 INC_PC(sizeof(ldc_inst));
2023 FETCH_INST;
2024 GOTO_NEXT_INST;
2025}
2026LDM_INST : {
2027 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2028 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
2029 inst_cream->get_addr(cpu, inst_cream->inst, addr);
2030
2031 unsigned int inst = inst_cream->inst;
2032 if (BIT(inst, 22) && !BIT(inst, 15)) {
2033 for (int i = 0; i < 13; i++) {
2034 if (BIT(inst, i)) {
2035 cpu->Reg[i] = cpu->ReadMemory32(addr);
2036 addr += 4;
2037 }
2038 }
2039 if (BIT(inst, 13)) {
2040 if (cpu->Mode == USER32MODE)
2041 cpu->Reg[13] = cpu->ReadMemory32(addr);
2042 else
2043 cpu->Reg_usr[0] = cpu->ReadMemory32(addr);
2044
2045 addr += 4;
2046 }
2047 if (BIT(inst, 14)) {
2048 if (cpu->Mode == USER32MODE)
2049 cpu->Reg[14] = cpu->ReadMemory32(addr);
2050 else
2051 cpu->Reg_usr[1] = cpu->ReadMemory32(addr);
2052
2053 addr += 4;
2054 }
2055 } else if (!BIT(inst, 22)) {
2056 for (int i = 0; i < 16; i++) {
2057 if (BIT(inst, i)) {
2058 unsigned int ret = cpu->ReadMemory32(addr);
2059
2060 // For armv5t, should enter thumb when bits[0] is non-zero.
2061 if (i == 15) {
2062 cpu->TFlag = ret & 0x1;
2063 ret &= 0xFFFFFFFE;
2064 }
2065
2066 cpu->Reg[i] = ret;
2067 addr += 4;
2068 }
2069 }
2070 } else if (BIT(inst, 22) && BIT(inst, 15)) {
2071 for (int i = 0; i < 15; i++) {
2072 if (BIT(inst, i)) {
2073 cpu->Reg[i] = cpu->ReadMemory32(addr);
2074 addr += 4;
2075 }
2076 }
2077
2078 if (CurrentModeHasSPSR) {
2079 cpu->Cpsr = cpu->Spsr_copy;
2080 cpu->ChangePrivilegeMode(cpu->Cpsr & 0x1F);
2081 LOAD_NZCVT;
2082 }
2083
2084 cpu->Reg[15] = cpu->ReadMemory32(addr);
2085 }
2086
2087 if (BIT(inst, 15)) {
2088 INC_PC(sizeof(ldst_inst));
2089 goto DISPATCH;
2090 }
2091 }
2092 cpu->Reg[15] += cpu->GetInstructionSize();
2093 INC_PC(sizeof(ldst_inst));
2094 FETCH_INST;
2095 GOTO_NEXT_INST;
2096}
2097SXTH_INST : {
2098 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2099 sxth_inst* inst_cream = (sxth_inst*)inst_base->component;
2100
2101 unsigned int operand2 = ROTATE_RIGHT_32(RM, 8 * inst_cream->rotate);
2102 if (BIT(operand2, 15)) {
2103 operand2 |= 0xffff0000;
2104 } else {
2105 operand2 &= 0xffff;
2106 }
2107 RD = operand2;
2108 }
2109 cpu->Reg[15] += cpu->GetInstructionSize();
2110 INC_PC(sizeof(sxth_inst));
2111 FETCH_INST;
2112 GOTO_NEXT_INST;
2113}
2114LDR_INST : {
2115 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
2116 inst_cream->get_addr(cpu, inst_cream->inst, addr);
2117
2118 unsigned int value = cpu->ReadMemory32(addr);
2119 cpu->Reg[BITS(inst_cream->inst, 12, 15)] = value;
2120
2121 if (BITS(inst_cream->inst, 12, 15) == 15) {
2122 // For armv5t, should enter thumb when bits[0] is non-zero.
2123 cpu->TFlag = value & 0x1;
2124 cpu->Reg[15] &= 0xFFFFFFFE;
2125 INC_PC(sizeof(ldst_inst));
2126 goto DISPATCH;
2127 }
2128
2129 cpu->Reg[15] += cpu->GetInstructionSize();
2130 INC_PC(sizeof(ldst_inst));
2131 FETCH_INST;
2132 GOTO_NEXT_INST;
2133}
2134LDRCOND_INST : {
2135 if (CondPassed(cpu, inst_base->cond)) {
2136 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
2137 inst_cream->get_addr(cpu, inst_cream->inst, addr);
2138
2139 unsigned int value = cpu->ReadMemory32(addr);
2140 cpu->Reg[BITS(inst_cream->inst, 12, 15)] = value;
2141
2142 if (BITS(inst_cream->inst, 12, 15) == 15) {
2143 // For armv5t, should enter thumb when bits[0] is non-zero.
2144 cpu->TFlag = value & 0x1;
2145 cpu->Reg[15] &= 0xFFFFFFFE;
2146 INC_PC(sizeof(ldst_inst));
2147 goto DISPATCH;
2148 }
2149 }
2150 cpu->Reg[15] += cpu->GetInstructionSize();
2151 INC_PC(sizeof(ldst_inst));
2152 FETCH_INST;
2153 GOTO_NEXT_INST;
2154}
2155UXTH_INST : {
2156 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2157 uxth_inst* inst_cream = (uxth_inst*)inst_base->component;
2158 RD = ROTATE_RIGHT_32(RM, 8 * inst_cream->rotate) & 0xffff;
2159 }
2160 cpu->Reg[15] += cpu->GetInstructionSize();
2161 INC_PC(sizeof(uxth_inst));
2162 FETCH_INST;
2163 GOTO_NEXT_INST;
2164}
2165UXTAH_INST : {
2166 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2167 uxtah_inst* inst_cream = (uxtah_inst*)inst_base->component;
2168 unsigned int operand2 = ROTATE_RIGHT_32(RM, 8 * inst_cream->rotate) & 0xffff;
2169
2170 RD = RN + operand2;
2171 }
2172 cpu->Reg[15] += cpu->GetInstructionSize();
2173 INC_PC(sizeof(uxtah_inst));
2174 FETCH_INST;
2175 GOTO_NEXT_INST;
2176}
2177LDRB_INST : {
2178 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2179 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
2180 inst_cream->get_addr(cpu, inst_cream->inst, addr);
2181
2182 cpu->Reg[BITS(inst_cream->inst, 12, 15)] = cpu->ReadMemory8(addr);
2183 }
2184 cpu->Reg[15] += cpu->GetInstructionSize();
2185 INC_PC(sizeof(ldst_inst));
2186 FETCH_INST;
2187 GOTO_NEXT_INST;
2188}
2189LDRBT_INST : {
2190 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2191 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
2192 inst_cream->get_addr(cpu, inst_cream->inst, addr);
2193
2194 const u32 dest_index = BITS(inst_cream->inst, 12, 15);
2195 const u32 previous_mode = cpu->Mode;
2196
2197 cpu->ChangePrivilegeMode(USER32MODE);
2198 const u8 value = cpu->ReadMemory8(addr);
2199 cpu->ChangePrivilegeMode(previous_mode);
2200
2201 cpu->Reg[dest_index] = value;
2202 }
2203 cpu->Reg[15] += cpu->GetInstructionSize();
2204 INC_PC(sizeof(ldst_inst));
2205 FETCH_INST;
2206 GOTO_NEXT_INST;
2207}
2208LDRD_INST : {
2209 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2210 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
2211 // Should check if RD is even-numbered, Rd != 14, addr[0:1] == 0, (CP15_reg1_U == 1 ||
2212 // addr[2] == 0)
2213 inst_cream->get_addr(cpu, inst_cream->inst, addr);
2214
2215 // The 3DS doesn't have LPAE (Large Physical Access Extension), so it
2216 // wouldn't do this as a single read.
2217 cpu->Reg[BITS(inst_cream->inst, 12, 15) + 0] = cpu->ReadMemory32(addr);
2218 cpu->Reg[BITS(inst_cream->inst, 12, 15) + 1] = cpu->ReadMemory32(addr + 4);
2219
2220 // No dispatch since this operation should not modify R15
2221 }
2222 cpu->Reg[15] += 4;
2223 INC_PC(sizeof(ldst_inst));
2224 FETCH_INST;
2225 GOTO_NEXT_INST;
2226}
2227
2228LDREX_INST : {
2229 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2230 generic_arm_inst* inst_cream = (generic_arm_inst*)inst_base->component;
2231 unsigned int read_addr = RN;
2232
2233 cpu->SetExclusiveMemoryAddress(read_addr);
2234
2235 RD = cpu->ReadMemory32(read_addr);
2236 }
2237 cpu->Reg[15] += cpu->GetInstructionSize();
2238 INC_PC(sizeof(generic_arm_inst));
2239 FETCH_INST;
2240 GOTO_NEXT_INST;
2241}
2242LDREXB_INST : {
2243 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2244 generic_arm_inst* inst_cream = (generic_arm_inst*)inst_base->component;
2245 unsigned int read_addr = RN;
2246
2247 cpu->SetExclusiveMemoryAddress(read_addr);
2248
2249 RD = cpu->ReadMemory8(read_addr);
2250 }
2251 cpu->Reg[15] += cpu->GetInstructionSize();
2252 INC_PC(sizeof(generic_arm_inst));
2253 FETCH_INST;
2254 GOTO_NEXT_INST;
2255}
2256LDREXH_INST : {
2257 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2258 generic_arm_inst* inst_cream = (generic_arm_inst*)inst_base->component;
2259 unsigned int read_addr = RN;
2260
2261 cpu->SetExclusiveMemoryAddress(read_addr);
2262
2263 RD = cpu->ReadMemory16(read_addr);
2264 }
2265 cpu->Reg[15] += cpu->GetInstructionSize();
2266 INC_PC(sizeof(generic_arm_inst));
2267 FETCH_INST;
2268 GOTO_NEXT_INST;
2269}
2270LDREXD_INST : {
2271 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2272 generic_arm_inst* inst_cream = (generic_arm_inst*)inst_base->component;
2273 unsigned int read_addr = RN;
2274
2275 cpu->SetExclusiveMemoryAddress(read_addr);
2276
2277 RD = cpu->ReadMemory32(read_addr);
2278 RD2 = cpu->ReadMemory32(read_addr + 4);
2279 }
2280 cpu->Reg[15] += cpu->GetInstructionSize();
2281 INC_PC(sizeof(generic_arm_inst));
2282 FETCH_INST;
2283 GOTO_NEXT_INST;
2284}
2285LDRH_INST : {
2286 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2287 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
2288 inst_cream->get_addr(cpu, inst_cream->inst, addr);
2289
2290 cpu->Reg[BITS(inst_cream->inst, 12, 15)] = cpu->ReadMemory16(addr);
2291 }
2292 cpu->Reg[15] += cpu->GetInstructionSize();
2293 INC_PC(sizeof(ldst_inst));
2294 FETCH_INST;
2295 GOTO_NEXT_INST;
2296}
2297LDRSB_INST : {
2298 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2299 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
2300 inst_cream->get_addr(cpu, inst_cream->inst, addr);
2301 unsigned int value = cpu->ReadMemory8(addr);
2302 if (BIT(value, 7)) {
2303 value |= 0xffffff00;
2304 }
2305 cpu->Reg[BITS(inst_cream->inst, 12, 15)] = value;
2306 }
2307 cpu->Reg[15] += cpu->GetInstructionSize();
2308 INC_PC(sizeof(ldst_inst));
2309 FETCH_INST;
2310 GOTO_NEXT_INST;
2311}
2312LDRSH_INST : {
2313 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2314 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
2315 inst_cream->get_addr(cpu, inst_cream->inst, addr);
2316
2317 unsigned int value = cpu->ReadMemory16(addr);
2318 if (BIT(value, 15)) {
2319 value |= 0xffff0000;
2320 }
2321 cpu->Reg[BITS(inst_cream->inst, 12, 15)] = value;
2322 }
2323 cpu->Reg[15] += cpu->GetInstructionSize();
2324 INC_PC(sizeof(ldst_inst));
2325 FETCH_INST;
2326 GOTO_NEXT_INST;
2327}
2328LDRT_INST : {
2329 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2330 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
2331 inst_cream->get_addr(cpu, inst_cream->inst, addr);
2332
2333 const u32 dest_index = BITS(inst_cream->inst, 12, 15);
2334 const u32 previous_mode = cpu->Mode;
2335
2336 cpu->ChangePrivilegeMode(USER32MODE);
2337 const u32 value = cpu->ReadMemory32(addr);
2338 cpu->ChangePrivilegeMode(previous_mode);
2339
2340 cpu->Reg[dest_index] = value;
2341 }
2342 cpu->Reg[15] += cpu->GetInstructionSize();
2343 INC_PC(sizeof(ldst_inst));
2344 FETCH_INST;
2345 GOTO_NEXT_INST;
2346}
2347MCR_INST : {
2348 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2349 mcr_inst* inst_cream = (mcr_inst*)inst_base->component;
2350
2351 unsigned int inst = inst_cream->inst;
2352 if (inst_cream->Rd == 15) {
2353 DEBUG_MSG;
2354 } else {
2355 if (inst_cream->cp_num == 15)
2356 cpu->WriteCP15Register(RD, CRn, OPCODE_1, CRm, OPCODE_2);
2357 }
2358 }
2359 cpu->Reg[15] += cpu->GetInstructionSize();
2360 INC_PC(sizeof(mcr_inst));
2361 FETCH_INST;
2362 GOTO_NEXT_INST;
2363}
2364
2365MCRR_INST : {
2366 // Stubbed, as the MPCore doesn't have any registers that are accessible
2367 // through this instruction.
2368 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2369 mcrr_inst* const inst_cream = (mcrr_inst*)inst_base->component;
2370
2371 LOG_ERROR(Core_ARM, "MCRR executed | Coprocessor: %u, CRm %u, opc1: %u, Rt: %u, Rt2: %u",
2372 inst_cream->cp_num, inst_cream->crm, inst_cream->opcode_1, inst_cream->rt,
2373 inst_cream->rt2);
2374 }
2375
2376 cpu->Reg[15] += cpu->GetInstructionSize();
2377 INC_PC(sizeof(mcrr_inst));
2378 FETCH_INST;
2379 GOTO_NEXT_INST;
2380}
2381
2382MLA_INST : {
2383 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2384 mla_inst* inst_cream = (mla_inst*)inst_base->component;
2385
2386 u64 rm = RM;
2387 u64 rs = RS;
2388 u64 rn = RN;
2389
2390 RD = static_cast<u32>((rm * rs + rn) & 0xffffffff);
2391 if (inst_cream->S) {
2392 UPDATE_NFLAG(RD);
2393 UPDATE_ZFLAG(RD);
2394 }
2395 }
2396 cpu->Reg[15] += cpu->GetInstructionSize();
2397 INC_PC(sizeof(mla_inst));
2398 FETCH_INST;
2399 GOTO_NEXT_INST;
2400}
2401MOV_INST : {
2402 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2403 mov_inst* inst_cream = (mov_inst*)inst_base->component;
2404
2405 RD = SHIFTER_OPERAND;
2406 if (inst_cream->S && (inst_cream->Rd == 15)) {
2407 if (CurrentModeHasSPSR) {
2408 cpu->Cpsr = cpu->Spsr_copy;
2409 cpu->ChangePrivilegeMode(cpu->Spsr_copy & 0x1F);
2410 LOAD_NZCVT;
2411 }
2412 } else if (inst_cream->S) {
2413 UPDATE_NFLAG(RD);
2414 UPDATE_ZFLAG(RD);
2415 UPDATE_CFLAG_WITH_SC;
2416 }
2417 if (inst_cream->Rd == 15) {
2418 INC_PC(sizeof(mov_inst));
2419 goto DISPATCH;
2420 }
2421 }
2422 cpu->Reg[15] += cpu->GetInstructionSize();
2423 INC_PC(sizeof(mov_inst));
2424 FETCH_INST;
2425 GOTO_NEXT_INST;
2426}
2427MRC_INST : {
2428 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2429 mrc_inst* inst_cream = (mrc_inst*)inst_base->component;
2430
2431 if (inst_cream->cp_num == 15) {
2432 const uint32_t value = cpu->ReadCP15Register(CRn, OPCODE_1, CRm, OPCODE_2);
2433
2434 if (inst_cream->Rd == 15) {
2435 cpu->Cpsr = (cpu->Cpsr & ~0xF0000000) | (value & 0xF0000000);
2436 LOAD_NZCVT;
2437 } else {
2438 RD = value;
2439 }
2440 }
2441 }
2442 cpu->Reg[15] += cpu->GetInstructionSize();
2443 INC_PC(sizeof(mrc_inst));
2444 FETCH_INST;
2445 GOTO_NEXT_INST;
2446}
2447
2448MRRC_INST : {
2449 // Stubbed, as the MPCore doesn't have any registers that are accessible
2450 // through this instruction.
2451 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2452 mcrr_inst* const inst_cream = (mcrr_inst*)inst_base->component;
2453
2454 LOG_ERROR(Core_ARM, "MRRC executed | Coprocessor: %u, CRm %u, opc1: %u, Rt: %u, Rt2: %u",
2455 inst_cream->cp_num, inst_cream->crm, inst_cream->opcode_1, inst_cream->rt,
2456 inst_cream->rt2);
2457 }
2458
2459 cpu->Reg[15] += cpu->GetInstructionSize();
2460 INC_PC(sizeof(mcrr_inst));
2461 FETCH_INST;
2462 GOTO_NEXT_INST;
2463}
2464
2465MRS_INST : {
2466 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2467 mrs_inst* inst_cream = (mrs_inst*)inst_base->component;
2468
2469 if (inst_cream->R) {
2470 RD = cpu->Spsr_copy;
2471 } else {
2472 SAVE_NZCVT;
2473 RD = cpu->Cpsr;
2474 }
2475 }
2476 cpu->Reg[15] += cpu->GetInstructionSize();
2477 INC_PC(sizeof(mrs_inst));
2478 FETCH_INST;
2479 GOTO_NEXT_INST;
2480}
2481MSR_INST : {
2482 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2483 msr_inst* inst_cream = (msr_inst*)inst_base->component;
2484 const u32 UserMask = 0xf80f0200, PrivMask = 0x000001df, StateMask = 0x01000020;
2485 unsigned int inst = inst_cream->inst;
2486 unsigned int operand;
2487
2488 if (BIT(inst, 25)) {
2489 int rot_imm = BITS(inst, 8, 11) * 2;
2490 operand = ROTATE_RIGHT_32(BITS(inst, 0, 7), rot_imm);
2491 } else {
2492 operand = cpu->Reg[BITS(inst, 0, 3)];
2493 }
2494 u32 byte_mask = (BIT(inst, 16) ? 0xff : 0) | (BIT(inst, 17) ? 0xff00 : 0) |
2495 (BIT(inst, 18) ? 0xff0000 : 0) | (BIT(inst, 19) ? 0xff000000 : 0);
2496 u32 mask = 0;
2497 if (!inst_cream->R) {
2498 if (cpu->InAPrivilegedMode()) {
2499 if ((operand & StateMask) != 0) {
2500 /// UNPREDICTABLE
2501 DEBUG_MSG;
2502 } else
2503 mask = byte_mask & (UserMask | PrivMask);
2504 } else {
2505 mask = byte_mask & UserMask;
2506 }
2507 SAVE_NZCVT;
2508
2509 cpu->Cpsr = (cpu->Cpsr & ~mask) | (operand & mask);
2510 cpu->ChangePrivilegeMode(cpu->Cpsr & 0x1F);
2511 LOAD_NZCVT;
2512 } else {
2513 if (CurrentModeHasSPSR) {
2514 mask = byte_mask & (UserMask | PrivMask | StateMask);
2515 cpu->Spsr_copy = (cpu->Spsr_copy & ~mask) | (operand & mask);
2516 }
2517 }
2518 }
2519 cpu->Reg[15] += cpu->GetInstructionSize();
2520 INC_PC(sizeof(msr_inst));
2521 FETCH_INST;
2522 GOTO_NEXT_INST;
2523}
2524MUL_INST : {
2525 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2526 mul_inst* inst_cream = (mul_inst*)inst_base->component;
2527
2528 u64 rm = RM;
2529 u64 rs = RS;
2530 RD = static_cast<u32>((rm * rs) & 0xffffffff);
2531 if (inst_cream->S) {
2532 UPDATE_NFLAG(RD);
2533 UPDATE_ZFLAG(RD);
2534 }
2535 }
2536 cpu->Reg[15] += cpu->GetInstructionSize();
2537 INC_PC(sizeof(mul_inst));
2538 FETCH_INST;
2539 GOTO_NEXT_INST;
2540}
2541MVN_INST : {
2542 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2543 mvn_inst* const inst_cream = (mvn_inst*)inst_base->component;
2544
2545 RD = ~SHIFTER_OPERAND;
2546
2547 if (inst_cream->S && (inst_cream->Rd == 15)) {
2548 if (CurrentModeHasSPSR) {
2549 cpu->Cpsr = cpu->Spsr_copy;
2550 cpu->ChangePrivilegeMode(cpu->Spsr_copy & 0x1F);
2551 LOAD_NZCVT;
2552 }
2553 } else if (inst_cream->S) {
2554 UPDATE_NFLAG(RD);
2555 UPDATE_ZFLAG(RD);
2556 UPDATE_CFLAG_WITH_SC;
2557 }
2558 if (inst_cream->Rd == 15) {
2559 INC_PC(sizeof(mvn_inst));
2560 goto DISPATCH;
2561 }
2562 }
2563 cpu->Reg[15] += cpu->GetInstructionSize();
2564 INC_PC(sizeof(mvn_inst));
2565 FETCH_INST;
2566 GOTO_NEXT_INST;
2567}
2568ORR_INST : {
2569 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2570 orr_inst* const inst_cream = (orr_inst*)inst_base->component;
2571
2572 u32 lop = RN;
2573 u32 rop = SHIFTER_OPERAND;
2574
2575 if (inst_cream->Rn == 15)
2576 lop += 2 * cpu->GetInstructionSize();
2577
2578 RD = lop | rop;
2579
2580 if (inst_cream->S && (inst_cream->Rd == 15)) {
2581 if (CurrentModeHasSPSR) {
2582 cpu->Cpsr = cpu->Spsr_copy;
2583 cpu->ChangePrivilegeMode(cpu->Spsr_copy & 0x1F);
2584 LOAD_NZCVT;
2585 }
2586 } else if (inst_cream->S) {
2587 UPDATE_NFLAG(RD);
2588 UPDATE_ZFLAG(RD);
2589 UPDATE_CFLAG_WITH_SC;
2590 }
2591 if (inst_cream->Rd == 15) {
2592 INC_PC(sizeof(orr_inst));
2593 goto DISPATCH;
2594 }
2595 }
2596 cpu->Reg[15] += cpu->GetInstructionSize();
2597 INC_PC(sizeof(orr_inst));
2598 FETCH_INST;
2599 GOTO_NEXT_INST;
2600}
2601
2602NOP_INST : {
2603 cpu->Reg[15] += cpu->GetInstructionSize();
2604 INC_PC_STUB;
2605 FETCH_INST;
2606 GOTO_NEXT_INST;
2607}
2608
2609PKHBT_INST : {
2610 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2611 pkh_inst* inst_cream = (pkh_inst*)inst_base->component;
2612 RD = (RN & 0xFFFF) | ((RM << inst_cream->imm) & 0xFFFF0000);
2613 }
2614 cpu->Reg[15] += cpu->GetInstructionSize();
2615 INC_PC(sizeof(pkh_inst));
2616 FETCH_INST;
2617 GOTO_NEXT_INST;
2618}
2619
2620PKHTB_INST : {
2621 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2622 pkh_inst* inst_cream = (pkh_inst*)inst_base->component;
2623 int shift_imm = inst_cream->imm ? inst_cream->imm : 31;
2624 RD = ((static_cast<s32>(RM) >> shift_imm) & 0xFFFF) | (RN & 0xFFFF0000);
2625 }
2626 cpu->Reg[15] += cpu->GetInstructionSize();
2627 INC_PC(sizeof(pkh_inst));
2628 FETCH_INST;
2629 GOTO_NEXT_INST;
2630}
2631
2632PLD_INST : {
2633 // Not implemented. PLD is a hint instruction, so it's optional.
2634
2635 cpu->Reg[15] += cpu->GetInstructionSize();
2636 INC_PC(sizeof(pld_inst));
2637 FETCH_INST;
2638 GOTO_NEXT_INST;
2639}
2640
2641QADD_INST:
2642QDADD_INST:
2643QDSUB_INST:
2644QSUB_INST : {
2645 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2646 generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component;
2647 const u8 op1 = inst_cream->op1;
2648 const u32 rm_val = RM;
2649 const u32 rn_val = RN;
2650
2651 u32 result = 0;
2652
2653 // QADD
2654 if (op1 == 0x00) {
2655 result = rm_val + rn_val;
2656
2657 if (AddOverflow(rm_val, rn_val, result)) {
2658 result = POS(result) ? 0x80000000 : 0x7FFFFFFF;
2659 cpu->Cpsr |= (1 << 27);
2660 }
2661 }
2662 // QSUB
2663 else if (op1 == 0x01) {
2664 result = rm_val - rn_val;
2665
2666 if (SubOverflow(rm_val, rn_val, result)) {
2667 result = POS(result) ? 0x80000000 : 0x7FFFFFFF;
2668 cpu->Cpsr |= (1 << 27);
2669 }
2670 }
2671 // QDADD
2672 else if (op1 == 0x02) {
2673 u32 mul = (rn_val * 2);
2674
2675 if (AddOverflow(rn_val, rn_val, rn_val * 2)) {
2676 mul = POS(mul) ? 0x80000000 : 0x7FFFFFFF;
2677 cpu->Cpsr |= (1 << 27);
2678 }
2679
2680 result = mul + rm_val;
2681
2682 if (AddOverflow(rm_val, mul, result)) {
2683 result = POS(result) ? 0x80000000 : 0x7FFFFFFF;
2684 cpu->Cpsr |= (1 << 27);
2685 }
2686 }
2687 // QDSUB
2688 else if (op1 == 0x03) {
2689 u32 mul = (rn_val * 2);
2690
2691 if (AddOverflow(rn_val, rn_val, mul)) {
2692 mul = POS(mul) ? 0x80000000 : 0x7FFFFFFF;
2693 cpu->Cpsr |= (1 << 27);
2694 }
2695
2696 result = rm_val - mul;
2697
2698 if (SubOverflow(rm_val, mul, result)) {
2699 result = POS(result) ? 0x80000000 : 0x7FFFFFFF;
2700 cpu->Cpsr |= (1 << 27);
2701 }
2702 }
2703
2704 RD = result;
2705 }
2706
2707 cpu->Reg[15] += cpu->GetInstructionSize();
2708 INC_PC(sizeof(generic_arm_inst));
2709 FETCH_INST;
2710 GOTO_NEXT_INST;
2711}
2712
2713QADD8_INST:
2714QADD16_INST:
2715QADDSUBX_INST:
2716QSUB8_INST:
2717QSUB16_INST:
2718QSUBADDX_INST : {
2719 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2720 generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component;
2721 const u16 rm_lo = (RM & 0xFFFF);
2722 const u16 rm_hi = ((RM >> 16) & 0xFFFF);
2723 const u16 rn_lo = (RN & 0xFFFF);
2724 const u16 rn_hi = ((RN >> 16) & 0xFFFF);
2725 const u8 op2 = inst_cream->op2;
2726
2727 u16 lo_result = 0;
2728 u16 hi_result = 0;
2729
2730 // QADD16
2731 if (op2 == 0x00) {
2732 lo_result = ARMul_SignedSaturatedAdd16(rn_lo, rm_lo);
2733 hi_result = ARMul_SignedSaturatedAdd16(rn_hi, rm_hi);
2734 }
2735 // QASX
2736 else if (op2 == 0x01) {
2737 lo_result = ARMul_SignedSaturatedSub16(rn_lo, rm_hi);
2738 hi_result = ARMul_SignedSaturatedAdd16(rn_hi, rm_lo);
2739 }
2740 // QSAX
2741 else if (op2 == 0x02) {
2742 lo_result = ARMul_SignedSaturatedAdd16(rn_lo, rm_hi);
2743 hi_result = ARMul_SignedSaturatedSub16(rn_hi, rm_lo);
2744 }
2745 // QSUB16
2746 else if (op2 == 0x03) {
2747 lo_result = ARMul_SignedSaturatedSub16(rn_lo, rm_lo);
2748 hi_result = ARMul_SignedSaturatedSub16(rn_hi, rm_hi);
2749 }
2750 // QADD8
2751 else if (op2 == 0x04) {
2752 lo_result = ARMul_SignedSaturatedAdd8(rn_lo & 0xFF, rm_lo & 0xFF) |
2753 ARMul_SignedSaturatedAdd8(rn_lo >> 8, rm_lo >> 8) << 8;
2754 hi_result = ARMul_SignedSaturatedAdd8(rn_hi & 0xFF, rm_hi & 0xFF) |
2755 ARMul_SignedSaturatedAdd8(rn_hi >> 8, rm_hi >> 8) << 8;
2756 }
2757 // QSUB8
2758 else if (op2 == 0x07) {
2759 lo_result = ARMul_SignedSaturatedSub8(rn_lo & 0xFF, rm_lo & 0xFF) |
2760 ARMul_SignedSaturatedSub8(rn_lo >> 8, rm_lo >> 8) << 8;
2761 hi_result = ARMul_SignedSaturatedSub8(rn_hi & 0xFF, rm_hi & 0xFF) |
2762 ARMul_SignedSaturatedSub8(rn_hi >> 8, rm_hi >> 8) << 8;
2763 }
2764
2765 RD = (lo_result & 0xFFFF) | ((hi_result & 0xFFFF) << 16);
2766 }
2767
2768 cpu->Reg[15] += cpu->GetInstructionSize();
2769 INC_PC(sizeof(generic_arm_inst));
2770 FETCH_INST;
2771 GOTO_NEXT_INST;
2772}
2773
2774REV_INST:
2775REV16_INST:
2776REVSH_INST : {
2777
2778 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2779 rev_inst* const inst_cream = (rev_inst*)inst_base->component;
2780
2781 const u8 op1 = inst_cream->op1;
2782 const u8 op2 = inst_cream->op2;
2783
2784 // REV
2785 if (op1 == 0x03 && op2 == 0x01) {
2786 RD = ((RM & 0xFF) << 24) | (((RM >> 8) & 0xFF) << 16) | (((RM >> 16) & 0xFF) << 8) |
2787 ((RM >> 24) & 0xFF);
2788 }
2789 // REV16
2790 else if (op1 == 0x03 && op2 == 0x05) {
2791 RD = ((RM & 0xFF) << 8) | ((RM & 0xFF00) >> 8) | ((RM & 0xFF0000) << 8) |
2792 ((RM & 0xFF000000) >> 8);
2793 }
2794 // REVSH
2795 else if (op1 == 0x07 && op2 == 0x05) {
2796 RD = ((RM & 0xFF) << 8) | ((RM & 0xFF00) >> 8);
2797 if (RD & 0x8000)
2798 RD |= 0xffff0000;
2799 }
2800 }
2801
2802 cpu->Reg[15] += cpu->GetInstructionSize();
2803 INC_PC(sizeof(rev_inst));
2804 FETCH_INST;
2805 GOTO_NEXT_INST;
2806}
2807
2808RFE_INST : {
2809 // RFE is unconditional
2810 ldst_inst* const inst_cream = (ldst_inst*)inst_base->component;
2811
2812 u32 address = 0;
2813 inst_cream->get_addr(cpu, inst_cream->inst, address);
2814
2815 cpu->Cpsr = cpu->ReadMemory32(address);
2816 cpu->Reg[15] = cpu->ReadMemory32(address + 4);
2817
2818 INC_PC(sizeof(ldst_inst));
2819 goto DISPATCH;
2820}
2821
2822RSB_INST : {
2823 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2824 rsb_inst* const inst_cream = (rsb_inst*)inst_base->component;
2825
2826 u32 rn_val = RN;
2827 if (inst_cream->Rn == 15)
2828 rn_val += 2 * cpu->GetInstructionSize();
2829
2830 bool carry;
2831 bool overflow;
2832 RD = AddWithCarry(~rn_val, SHIFTER_OPERAND, 1, &carry, &overflow);
2833
2834 if (inst_cream->S && (inst_cream->Rd == 15)) {
2835 if (CurrentModeHasSPSR) {
2836 cpu->Cpsr = cpu->Spsr_copy;
2837 cpu->ChangePrivilegeMode(cpu->Spsr_copy & 0x1F);
2838 LOAD_NZCVT;
2839 }
2840 } else if (inst_cream->S) {
2841 UPDATE_NFLAG(RD);
2842 UPDATE_ZFLAG(RD);
2843 cpu->CFlag = carry;
2844 cpu->VFlag = overflow;
2845 }
2846 if (inst_cream->Rd == 15) {
2847 INC_PC(sizeof(rsb_inst));
2848 goto DISPATCH;
2849 }
2850 }
2851 cpu->Reg[15] += cpu->GetInstructionSize();
2852 INC_PC(sizeof(rsb_inst));
2853 FETCH_INST;
2854 GOTO_NEXT_INST;
2855}
2856RSC_INST : {
2857 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2858 rsc_inst* const inst_cream = (rsc_inst*)inst_base->component;
2859
2860 u32 rn_val = RN;
2861 if (inst_cream->Rn == 15)
2862 rn_val += 2 * cpu->GetInstructionSize();
2863
2864 bool carry;
2865 bool overflow;
2866 RD = AddWithCarry(~rn_val, SHIFTER_OPERAND, cpu->CFlag, &carry, &overflow);
2867
2868 if (inst_cream->S && (inst_cream->Rd == 15)) {
2869 if (CurrentModeHasSPSR) {
2870 cpu->Cpsr = cpu->Spsr_copy;
2871 cpu->ChangePrivilegeMode(cpu->Spsr_copy & 0x1F);
2872 LOAD_NZCVT;
2873 }
2874 } else if (inst_cream->S) {
2875 UPDATE_NFLAG(RD);
2876 UPDATE_ZFLAG(RD);
2877 cpu->CFlag = carry;
2878 cpu->VFlag = overflow;
2879 }
2880 if (inst_cream->Rd == 15) {
2881 INC_PC(sizeof(rsc_inst));
2882 goto DISPATCH;
2883 }
2884 }
2885 cpu->Reg[15] += cpu->GetInstructionSize();
2886 INC_PC(sizeof(rsc_inst));
2887 FETCH_INST;
2888 GOTO_NEXT_INST;
2889}
2890
2891SADD8_INST:
2892SSUB8_INST:
2893SADD16_INST:
2894SADDSUBX_INST:
2895SSUBADDX_INST:
2896SSUB16_INST : {
2897 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
2898 generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component;
2899 const u8 op2 = inst_cream->op2;
2900
2901 if (op2 == 0x00 || op2 == 0x01 || op2 == 0x02 || op2 == 0x03) {
2902 const s16 rn_lo = (RN & 0xFFFF);
2903 const s16 rn_hi = ((RN >> 16) & 0xFFFF);
2904 const s16 rm_lo = (RM & 0xFFFF);
2905 const s16 rm_hi = ((RM >> 16) & 0xFFFF);
2906
2907 s32 lo_result = 0;
2908 s32 hi_result = 0;
2909
2910 // SADD16
2911 if (inst_cream->op2 == 0x00) {
2912 lo_result = (rn_lo + rm_lo);
2913 hi_result = (rn_hi + rm_hi);
2914 }
2915 // SASX
2916 else if (op2 == 0x01) {
2917 lo_result = (rn_lo - rm_hi);
2918 hi_result = (rn_hi + rm_lo);
2919 }
2920 // SSAX
2921 else if (op2 == 0x02) {
2922 lo_result = (rn_lo + rm_hi);
2923 hi_result = (rn_hi - rm_lo);
2924 }
2925 // SSUB16
2926 else if (op2 == 0x03) {
2927 lo_result = (rn_lo - rm_lo);
2928 hi_result = (rn_hi - rm_hi);
2929 }
2930
2931 RD = (lo_result & 0xFFFF) | ((hi_result & 0xFFFF) << 16);
2932
2933 if (lo_result >= 0) {
2934 cpu->Cpsr |= (1 << 16);
2935 cpu->Cpsr |= (1 << 17);
2936 } else {
2937 cpu->Cpsr &= ~(1 << 16);
2938 cpu->Cpsr &= ~(1 << 17);
2939 }
2940
2941 if (hi_result >= 0) {
2942 cpu->Cpsr |= (1 << 18);
2943 cpu->Cpsr |= (1 << 19);
2944 } else {
2945 cpu->Cpsr &= ~(1 << 18);
2946 cpu->Cpsr &= ~(1 << 19);
2947 }
2948 } else if (op2 == 0x04 || op2 == 0x07) {
2949 s32 lo_val1, lo_val2;
2950 s32 hi_val1, hi_val2;
2951
2952 // SADD8
2953 if (op2 == 0x04) {
2954 lo_val1 = (s32)(s8)(RN & 0xFF) + (s32)(s8)(RM & 0xFF);
2955 lo_val2 = (s32)(s8)((RN >> 8) & 0xFF) + (s32)(s8)((RM >> 8) & 0xFF);
2956 hi_val1 = (s32)(s8)((RN >> 16) & 0xFF) + (s32)(s8)((RM >> 16) & 0xFF);
2957 hi_val2 = (s32)(s8)((RN >> 24) & 0xFF) + (s32)(s8)((RM >> 24) & 0xFF);
2958 }
2959 // SSUB8
2960 else {
2961 lo_val1 = (s32)(s8)(RN & 0xFF) - (s32)(s8)(RM & 0xFF);
2962 lo_val2 = (s32)(s8)((RN >> 8) & 0xFF) - (s32)(s8)((RM >> 8) & 0xFF);
2963 hi_val1 = (s32)(s8)((RN >> 16) & 0xFF) - (s32)(s8)((RM >> 16) & 0xFF);
2964 hi_val2 = (s32)(s8)((RN >> 24) & 0xFF) - (s32)(s8)((RM >> 24) & 0xFF);
2965 }
2966
2967 RD = ((lo_val1 & 0xFF) | ((lo_val2 & 0xFF) << 8) | ((hi_val1 & 0xFF) << 16) |
2968 ((hi_val2 & 0xFF) << 24));
2969
2970 if (lo_val1 >= 0)
2971 cpu->Cpsr |= (1 << 16);
2972 else
2973 cpu->Cpsr &= ~(1 << 16);
2974
2975 if (lo_val2 >= 0)
2976 cpu->Cpsr |= (1 << 17);
2977 else
2978 cpu->Cpsr &= ~(1 << 17);
2979
2980 if (hi_val1 >= 0)
2981 cpu->Cpsr |= (1 << 18);
2982 else
2983 cpu->Cpsr &= ~(1 << 18);
2984
2985 if (hi_val2 >= 0)
2986 cpu->Cpsr |= (1 << 19);
2987 else
2988 cpu->Cpsr &= ~(1 << 19);
2989 }
2990 }
2991
2992 cpu->Reg[15] += cpu->GetInstructionSize();
2993 INC_PC(sizeof(generic_arm_inst));
2994 FETCH_INST;
2995 GOTO_NEXT_INST;
2996}
2997
2998SBC_INST : {
2999 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3000 sbc_inst* const inst_cream = (sbc_inst*)inst_base->component;
3001
3002 u32 rn_val = RN;
3003 if (inst_cream->Rn == 15)
3004 rn_val += 2 * cpu->GetInstructionSize();
3005
3006 bool carry;
3007 bool overflow;
3008 RD = AddWithCarry(rn_val, ~SHIFTER_OPERAND, cpu->CFlag, &carry, &overflow);
3009
3010 if (inst_cream->S && (inst_cream->Rd == 15)) {
3011 if (CurrentModeHasSPSR) {
3012 cpu->Cpsr = cpu->Spsr_copy;
3013 cpu->ChangePrivilegeMode(cpu->Spsr_copy & 0x1F);
3014 LOAD_NZCVT;
3015 }
3016 } else if (inst_cream->S) {
3017 UPDATE_NFLAG(RD);
3018 UPDATE_ZFLAG(RD);
3019 cpu->CFlag = carry;
3020 cpu->VFlag = overflow;
3021 }
3022 if (inst_cream->Rd == 15) {
3023 INC_PC(sizeof(sbc_inst));
3024 goto DISPATCH;
3025 }
3026 }
3027 cpu->Reg[15] += cpu->GetInstructionSize();
3028 INC_PC(sizeof(sbc_inst));
3029 FETCH_INST;
3030 GOTO_NEXT_INST;
3031}
3032
3033SEL_INST : {
3034 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3035 generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component;
3036
3037 const u32 to = RM;
3038 const u32 from = RN;
3039 const u32 cpsr = cpu->Cpsr;
3040
3041 u32 result;
3042 if (cpsr & (1 << 16))
3043 result = from & 0xff;
3044 else
3045 result = to & 0xff;
3046
3047 if (cpsr & (1 << 17))
3048 result |= from & 0x0000ff00;
3049 else
3050 result |= to & 0x0000ff00;
3051
3052 if (cpsr & (1 << 18))
3053 result |= from & 0x00ff0000;
3054 else
3055 result |= to & 0x00ff0000;
3056
3057 if (cpsr & (1 << 19))
3058 result |= from & 0xff000000;
3059 else
3060 result |= to & 0xff000000;
3061
3062 RD = result;
3063 }
3064
3065 cpu->Reg[15] += cpu->GetInstructionSize();
3066 INC_PC(sizeof(generic_arm_inst));
3067 FETCH_INST;
3068 GOTO_NEXT_INST;
3069}
3070
3071SETEND_INST : {
3072 // SETEND is unconditional
3073 setend_inst* const inst_cream = (setend_inst*)inst_base->component;
3074 const bool big_endian = (inst_cream->set_bigend == 1);
3075
3076 if (big_endian)
3077 cpu->Cpsr |= (1 << 9);
3078 else
3079 cpu->Cpsr &= ~(1 << 9);
3080
3081 LOG_WARNING(Core_ARM, "SETEND %s executed", big_endian ? "BE" : "LE");
3082
3083 cpu->Reg[15] += cpu->GetInstructionSize();
3084 INC_PC(sizeof(setend_inst));
3085 FETCH_INST;
3086 GOTO_NEXT_INST;
3087}
3088
3089SEV_INST : {
3090 // Stubbed, as SEV is a hint instruction.
3091 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3092 LOG_TRACE(Core_ARM, "SEV executed.");
3093 }
3094
3095 cpu->Reg[15] += cpu->GetInstructionSize();
3096 INC_PC_STUB;
3097 FETCH_INST;
3098 GOTO_NEXT_INST;
3099}
3100
3101SHADD8_INST:
3102SHADD16_INST:
3103SHADDSUBX_INST:
3104SHSUB8_INST:
3105SHSUB16_INST:
3106SHSUBADDX_INST : {
3107 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3108 generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component;
3109
3110 const u8 op2 = inst_cream->op2;
3111 const u32 rm_val = RM;
3112 const u32 rn_val = RN;
3113
3114 if (op2 == 0x00 || op2 == 0x01 || op2 == 0x02 || op2 == 0x03) {
3115 s32 lo_result = 0;
3116 s32 hi_result = 0;
3117
3118 // SHADD16
3119 if (op2 == 0x00) {
3120 lo_result = ((s16)(rn_val & 0xFFFF) + (s16)(rm_val & 0xFFFF)) >> 1;
3121 hi_result = ((s16)((rn_val >> 16) & 0xFFFF) + (s16)((rm_val >> 16) & 0xFFFF)) >> 1;
3122 }
3123 // SHASX
3124 else if (op2 == 0x01) {
3125 lo_result = ((s16)(rn_val & 0xFFFF) - (s16)((rm_val >> 16) & 0xFFFF)) >> 1;
3126 hi_result = ((s16)((rn_val >> 16) & 0xFFFF) + (s16)(rm_val & 0xFFFF)) >> 1;
3127 }
3128 // SHSAX
3129 else if (op2 == 0x02) {
3130 lo_result = ((s16)(rn_val & 0xFFFF) + (s16)((rm_val >> 16) & 0xFFFF)) >> 1;
3131 hi_result = ((s16)((rn_val >> 16) & 0xFFFF) - (s16)(rm_val & 0xFFFF)) >> 1;
3132 }
3133 // SHSUB16
3134 else if (op2 == 0x03) {
3135 lo_result = ((s16)(rn_val & 0xFFFF) - (s16)(rm_val & 0xFFFF)) >> 1;
3136 hi_result = ((s16)((rn_val >> 16) & 0xFFFF) - (s16)((rm_val >> 16) & 0xFFFF)) >> 1;
3137 }
3138
3139 RD = ((lo_result & 0xFFFF) | ((hi_result & 0xFFFF) << 16));
3140 } else if (op2 == 0x04 || op2 == 0x07) {
3141 s16 lo_val1, lo_val2;
3142 s16 hi_val1, hi_val2;
3143
3144 // SHADD8
3145 if (op2 == 0x04) {
3146 lo_val1 = ((s8)(rn_val & 0xFF) + (s8)(rm_val & 0xFF)) >> 1;
3147 lo_val2 = ((s8)((rn_val >> 8) & 0xFF) + (s8)((rm_val >> 8) & 0xFF)) >> 1;
3148
3149 hi_val1 = ((s8)((rn_val >> 16) & 0xFF) + (s8)((rm_val >> 16) & 0xFF)) >> 1;
3150 hi_val2 = ((s8)((rn_val >> 24) & 0xFF) + (s8)((rm_val >> 24) & 0xFF)) >> 1;
3151 }
3152 // SHSUB8
3153 else {
3154 lo_val1 = ((s8)(rn_val & 0xFF) - (s8)(rm_val & 0xFF)) >> 1;
3155 lo_val2 = ((s8)((rn_val >> 8) & 0xFF) - (s8)((rm_val >> 8) & 0xFF)) >> 1;
3156
3157 hi_val1 = ((s8)((rn_val >> 16) & 0xFF) - (s8)((rm_val >> 16) & 0xFF)) >> 1;
3158 hi_val2 = ((s8)((rn_val >> 24) & 0xFF) - (s8)((rm_val >> 24) & 0xFF)) >> 1;
3159 }
3160
3161 RD = (lo_val1 & 0xFF) | ((lo_val2 & 0xFF) << 8) | ((hi_val1 & 0xFF) << 16) |
3162 ((hi_val2 & 0xFF) << 24);
3163 }
3164 }
3165
3166 cpu->Reg[15] += cpu->GetInstructionSize();
3167 INC_PC(sizeof(generic_arm_inst));
3168 FETCH_INST;
3169 GOTO_NEXT_INST;
3170}
3171
3172SMLA_INST : {
3173 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3174 smla_inst* inst_cream = (smla_inst*)inst_base->component;
3175 s32 operand1, operand2;
3176 if (inst_cream->x == 0)
3177 operand1 = (BIT(RM, 15)) ? (BITS(RM, 0, 15) | 0xffff0000) : BITS(RM, 0, 15);
3178 else
3179 operand1 = (BIT(RM, 31)) ? (BITS(RM, 16, 31) | 0xffff0000) : BITS(RM, 16, 31);
3180
3181 if (inst_cream->y == 0)
3182 operand2 = (BIT(RS, 15)) ? (BITS(RS, 0, 15) | 0xffff0000) : BITS(RS, 0, 15);
3183 else
3184 operand2 = (BIT(RS, 31)) ? (BITS(RS, 16, 31) | 0xffff0000) : BITS(RS, 16, 31);
3185
3186 u32 product = operand1 * operand2;
3187 u32 result = product + RN;
3188 if (AddOverflow(product, RN, result))
3189 cpu->Cpsr |= (1 << 27);
3190 RD = result;
3191 }
3192 cpu->Reg[15] += cpu->GetInstructionSize();
3193 INC_PC(sizeof(smla_inst));
3194 FETCH_INST;
3195 GOTO_NEXT_INST;
3196}
3197
3198SMLAD_INST:
3199SMLSD_INST:
3200SMUAD_INST:
3201SMUSD_INST : {
3202 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3203 smlad_inst* const inst_cream = (smlad_inst*)inst_base->component;
3204 const u8 op2 = inst_cream->op2;
3205
3206 u32 rm_val = cpu->Reg[inst_cream->Rm];
3207 const u32 rn_val = cpu->Reg[inst_cream->Rn];
3208
3209 if (inst_cream->m)
3210 rm_val = (((rm_val & 0xFFFF) << 16) | (rm_val >> 16));
3211
3212 const s16 rm_lo = (rm_val & 0xFFFF);
3213 const s16 rm_hi = ((rm_val >> 16) & 0xFFFF);
3214 const s16 rn_lo = (rn_val & 0xFFFF);
3215 const s16 rn_hi = ((rn_val >> 16) & 0xFFFF);
3216
3217 const u32 product1 = (rn_lo * rm_lo);
3218 const u32 product2 = (rn_hi * rm_hi);
3219
3220 // SMUAD and SMLAD
3221 if (BIT(op2, 1) == 0) {
3222 u32 rd_val = (product1 + product2);
3223
3224 if (inst_cream->Ra != 15) {
3225 rd_val += cpu->Reg[inst_cream->Ra];
3226
3227 if (ARMul_AddOverflowQ(product1 + product2, cpu->Reg[inst_cream->Ra]))
3228 cpu->Cpsr |= (1 << 27);
3229 }
3230
3231 RD = rd_val;
3232
3233 if (ARMul_AddOverflowQ(product1, product2))
3234 cpu->Cpsr |= (1 << 27);
3235 }
3236 // SMUSD and SMLSD
3237 else {
3238 u32 rd_val = (product1 - product2);
3239
3240 if (inst_cream->Ra != 15) {
3241 rd_val += cpu->Reg[inst_cream->Ra];
3242
3243 if (ARMul_AddOverflowQ(product1 - product2, cpu->Reg[inst_cream->Ra]))
3244 cpu->Cpsr |= (1 << 27);
3245 }
3246
3247 RD = rd_val;
3248 }
3249 }
3250
3251 cpu->Reg[15] += cpu->GetInstructionSize();
3252 INC_PC(sizeof(smlad_inst));
3253 FETCH_INST;
3254 GOTO_NEXT_INST;
3255}
3256
3257SMLAL_INST : {
3258 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3259 umlal_inst* inst_cream = (umlal_inst*)inst_base->component;
3260 long long int rm = RM;
3261 long long int rs = RS;
3262 if (BIT(rm, 31)) {
3263 rm |= 0xffffffff00000000LL;
3264 }
3265 if (BIT(rs, 31)) {
3266 rs |= 0xffffffff00000000LL;
3267 }
3268 long long int rst = rm * rs;
3269 long long int rdhi32 = RDHI;
3270 long long int hilo = (rdhi32 << 32) + RDLO;
3271 rst += hilo;
3272 RDLO = BITS(rst, 0, 31);
3273 RDHI = BITS(rst, 32, 63);
3274 if (inst_cream->S) {
3275 cpu->NFlag = BIT(RDHI, 31);
3276 cpu->ZFlag = (RDHI == 0 && RDLO == 0);
3277 }
3278 }
3279 cpu->Reg[15] += cpu->GetInstructionSize();
3280 INC_PC(sizeof(umlal_inst));
3281 FETCH_INST;
3282 GOTO_NEXT_INST;
3283}
3284
3285SMLALXY_INST : {
3286 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3287 smlalxy_inst* const inst_cream = (smlalxy_inst*)inst_base->component;
3288
3289 u64 operand1 = RN;
3290 u64 operand2 = RM;
3291
3292 if (inst_cream->x != 0)
3293 operand1 >>= 16;
3294 if (inst_cream->y != 0)
3295 operand2 >>= 16;
3296 operand1 &= 0xFFFF;
3297 if (operand1 & 0x8000)
3298 operand1 -= 65536;
3299 operand2 &= 0xFFFF;
3300 if (operand2 & 0x8000)
3301 operand2 -= 65536;
3302
3303 u64 dest = ((u64)RDHI << 32 | RDLO) + (operand1 * operand2);
3304 RDLO = (dest & 0xFFFFFFFF);
3305 RDHI = ((dest >> 32) & 0xFFFFFFFF);
3306 }
3307
3308 cpu->Reg[15] += cpu->GetInstructionSize();
3309 INC_PC(sizeof(smlalxy_inst));
3310 FETCH_INST;
3311 GOTO_NEXT_INST;
3312}
3313
3314SMLAW_INST : {
3315 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3316 smlad_inst* const inst_cream = (smlad_inst*)inst_base->component;
3317
3318 const u32 rm_val = RM;
3319 const u32 rn_val = RN;
3320 const u32 ra_val = cpu->Reg[inst_cream->Ra];
3321 const bool high = (inst_cream->m == 1);
3322
3323 const s16 operand2 = (high) ? ((rm_val >> 16) & 0xFFFF) : (rm_val & 0xFFFF);
3324 const s64 result = (s64)(s32)rn_val * (s64)(s32)operand2 + ((s64)(s32)ra_val << 16);
3325
3326 RD = BITS(result, 16, 47);
3327
3328 if ((result >> 16) != (s32)RD)
3329 cpu->Cpsr |= (1 << 27);
3330 }
3331
3332 cpu->Reg[15] += cpu->GetInstructionSize();
3333 INC_PC(sizeof(smlad_inst));
3334 FETCH_INST;
3335 GOTO_NEXT_INST;
3336}
3337
3338SMLALD_INST:
3339SMLSLD_INST : {
3340 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3341 smlald_inst* const inst_cream = (smlald_inst*)inst_base->component;
3342
3343 const bool do_swap = (inst_cream->swap == 1);
3344 const u32 rdlo_val = RDLO;
3345 const u32 rdhi_val = RDHI;
3346 const u32 rn_val = RN;
3347 u32 rm_val = RM;
3348
3349 if (do_swap)
3350 rm_val = (((rm_val & 0xFFFF) << 16) | (rm_val >> 16));
3351
3352 const s32 product1 = (s16)(rn_val & 0xFFFF) * (s16)(rm_val & 0xFFFF);
3353 const s32 product2 = (s16)((rn_val >> 16) & 0xFFFF) * (s16)((rm_val >> 16) & 0xFFFF);
3354 s64 result;
3355
3356 // SMLALD
3357 if (BIT(inst_cream->op2, 1) == 0) {
3358 result = (product1 + product2) + (s64)(rdlo_val | ((s64)rdhi_val << 32));
3359 }
3360 // SMLSLD
3361 else {
3362 result = (product1 - product2) + (s64)(rdlo_val | ((s64)rdhi_val << 32));
3363 }
3364
3365 RDLO = (result & 0xFFFFFFFF);
3366 RDHI = ((result >> 32) & 0xFFFFFFFF);
3367 }
3368
3369 cpu->Reg[15] += cpu->GetInstructionSize();
3370 INC_PC(sizeof(smlald_inst));
3371 FETCH_INST;
3372 GOTO_NEXT_INST;
3373}
3374
3375SMMLA_INST:
3376SMMLS_INST:
3377SMMUL_INST : {
3378 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3379 smlad_inst* const inst_cream = (smlad_inst*)inst_base->component;
3380
3381 const u32 rm_val = RM;
3382 const u32 rn_val = RN;
3383 const bool do_round = (inst_cream->m == 1);
3384
3385 // Assume SMMUL by default.
3386 s64 result = (s64)(s32)rn_val * (s64)(s32)rm_val;
3387
3388 if (inst_cream->Ra != 15) {
3389 const u32 ra_val = cpu->Reg[inst_cream->Ra];
3390
3391 // SMMLA, otherwise SMMLS
3392 if (BIT(inst_cream->op2, 1) == 0)
3393 result += ((s64)ra_val << 32);
3394 else
3395 result = ((s64)ra_val << 32) - result;
3396 }
3397
3398 if (do_round)
3399 result += 0x80000000;
3400
3401 RD = ((result >> 32) & 0xFFFFFFFF);
3402 }
3403
3404 cpu->Reg[15] += cpu->GetInstructionSize();
3405 INC_PC(sizeof(smlad_inst));
3406 FETCH_INST;
3407 GOTO_NEXT_INST;
3408}
3409
3410SMUL_INST : {
3411 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3412 smul_inst* inst_cream = (smul_inst*)inst_base->component;
3413 u32 operand1, operand2;
3414 if (inst_cream->x == 0)
3415 operand1 = (BIT(RM, 15)) ? (BITS(RM, 0, 15) | 0xffff0000) : BITS(RM, 0, 15);
3416 else
3417 operand1 = (BIT(RM, 31)) ? (BITS(RM, 16, 31) | 0xffff0000) : BITS(RM, 16, 31);
3418
3419 if (inst_cream->y == 0)
3420 operand2 = (BIT(RS, 15)) ? (BITS(RS, 0, 15) | 0xffff0000) : BITS(RS, 0, 15);
3421 else
3422 operand2 = (BIT(RS, 31)) ? (BITS(RS, 16, 31) | 0xffff0000) : BITS(RS, 16, 31);
3423 RD = operand1 * operand2;
3424 }
3425 cpu->Reg[15] += cpu->GetInstructionSize();
3426 INC_PC(sizeof(smul_inst));
3427 FETCH_INST;
3428 GOTO_NEXT_INST;
3429}
3430SMULL_INST : {
3431 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3432 umull_inst* inst_cream = (umull_inst*)inst_base->component;
3433 s64 rm = RM;
3434 s64 rs = RS;
3435 if (BIT(rm, 31)) {
3436 rm |= 0xffffffff00000000LL;
3437 }
3438 if (BIT(rs, 31)) {
3439 rs |= 0xffffffff00000000LL;
3440 }
3441 s64 rst = rm * rs;
3442 RDHI = BITS(rst, 32, 63);
3443 RDLO = BITS(rst, 0, 31);
3444
3445 if (inst_cream->S) {
3446 cpu->NFlag = BIT(RDHI, 31);
3447 cpu->ZFlag = (RDHI == 0 && RDLO == 0);
3448 }
3449 }
3450 cpu->Reg[15] += cpu->GetInstructionSize();
3451 INC_PC(sizeof(umull_inst));
3452 FETCH_INST;
3453 GOTO_NEXT_INST;
3454}
3455
3456SMULW_INST : {
3457 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3458 smlad_inst* const inst_cream = (smlad_inst*)inst_base->component;
3459
3460 s16 rm = (inst_cream->m == 1) ? ((RM >> 16) & 0xFFFF) : (RM & 0xFFFF);
3461
3462 s64 result = (s64)rm * (s64)(s32)RN;
3463 RD = BITS(result, 16, 47);
3464 }
3465 cpu->Reg[15] += cpu->GetInstructionSize();
3466 INC_PC(sizeof(smlad_inst));
3467 FETCH_INST;
3468 GOTO_NEXT_INST;
3469}
3470
3471SRS_INST : {
3472 // SRS is unconditional
3473 ldst_inst* const inst_cream = (ldst_inst*)inst_base->component;
3474
3475 u32 address = 0;
3476 inst_cream->get_addr(cpu, inst_cream->inst, address);
3477
3478 cpu->WriteMemory32(address + 0, cpu->Reg[14]);
3479 cpu->WriteMemory32(address + 4, cpu->Spsr_copy);
3480
3481 cpu->Reg[15] += cpu->GetInstructionSize();
3482 INC_PC(sizeof(ldst_inst));
3483 FETCH_INST;
3484 GOTO_NEXT_INST;
3485}
3486
3487SSAT_INST : {
3488 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3489 ssat_inst* const inst_cream = (ssat_inst*)inst_base->component;
3490
3491 u8 shift_type = inst_cream->shift_type;
3492 u8 shift_amount = inst_cream->imm5;
3493 u32 rn_val = RN;
3494
3495 // 32-bit ASR is encoded as an amount of 0.
3496 if (shift_type == 1 && shift_amount == 0)
3497 shift_amount = 31;
3498
3499 if (shift_type == 0)
3500 rn_val <<= shift_amount;
3501 else if (shift_type == 1)
3502 rn_val = ((s32)rn_val >> shift_amount);
3503
3504 bool saturated = false;
3505 rn_val = ARMul_SignedSatQ(rn_val, inst_cream->sat_imm, &saturated);
3506
3507 if (saturated)
3508 cpu->Cpsr |= (1 << 27);
3509
3510 RD = rn_val;
3511 }
3512
3513 cpu->Reg[15] += cpu->GetInstructionSize();
3514 INC_PC(sizeof(ssat_inst));
3515 FETCH_INST;
3516 GOTO_NEXT_INST;
3517}
3518
3519SSAT16_INST : {
3520 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3521 ssat_inst* const inst_cream = (ssat_inst*)inst_base->component;
3522 const u8 saturate_to = inst_cream->sat_imm;
3523
3524 bool sat1 = false;
3525 bool sat2 = false;
3526
3527 RD = (ARMul_SignedSatQ((s16)RN, saturate_to, &sat1) & 0xFFFF) |
3528 ARMul_SignedSatQ((s32)RN >> 16, saturate_to, &sat2) << 16;
3529
3530 if (sat1 || sat2)
3531 cpu->Cpsr |= (1 << 27);
3532 }
3533
3534 cpu->Reg[15] += cpu->GetInstructionSize();
3535 INC_PC(sizeof(ssat_inst));
3536 FETCH_INST;
3537 GOTO_NEXT_INST;
3538}
3539
3540STC_INST : {
3541 // Instruction not implemented
3542 // LOG_CRITICAL(Core_ARM, "unimplemented instruction");
3543 cpu->Reg[15] += cpu->GetInstructionSize();
3544 INC_PC(sizeof(stc_inst));
3545 FETCH_INST;
3546 GOTO_NEXT_INST;
3547}
3548STM_INST : {
3549 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3550 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
3551 unsigned int inst = inst_cream->inst;
3552
3553 unsigned int Rn = BITS(inst, 16, 19);
3554 unsigned int old_RN = cpu->Reg[Rn];
3555
3556 inst_cream->get_addr(cpu, inst_cream->inst, addr);
3557 if (BIT(inst_cream->inst, 22) == 1) {
3558 for (int i = 0; i < 13; i++) {
3559 if (BIT(inst_cream->inst, i)) {
3560 cpu->WriteMemory32(addr, cpu->Reg[i]);
3561 addr += 4;
3562 }
3563 }
3564 if (BIT(inst_cream->inst, 13)) {
3565 if (cpu->Mode == USER32MODE)
3566 cpu->WriteMemory32(addr, cpu->Reg[13]);
3567 else
3568 cpu->WriteMemory32(addr, cpu->Reg_usr[0]);
3569
3570 addr += 4;
3571 }
3572 if (BIT(inst_cream->inst, 14)) {
3573 if (cpu->Mode == USER32MODE)
3574 cpu->WriteMemory32(addr, cpu->Reg[14]);
3575 else
3576 cpu->WriteMemory32(addr, cpu->Reg_usr[1]);
3577
3578 addr += 4;
3579 }
3580 if (BIT(inst_cream->inst, 15)) {
3581 cpu->WriteMemory32(addr, cpu->Reg[15] + 8);
3582 }
3583 } else {
3584 for (int i = 0; i < 15; i++) {
3585 if (BIT(inst_cream->inst, i)) {
3586 if (i == Rn)
3587 cpu->WriteMemory32(addr, old_RN);
3588 else
3589 cpu->WriteMemory32(addr, cpu->Reg[i]);
3590
3591 addr += 4;
3592 }
3593 }
3594
3595 // Check PC reg
3596 if (BIT(inst_cream->inst, 15)) {
3597 cpu->WriteMemory32(addr, cpu->Reg[15] + 8);
3598 }
3599 }
3600 }
3601 cpu->Reg[15] += cpu->GetInstructionSize();
3602 INC_PC(sizeof(ldst_inst));
3603 FETCH_INST;
3604 GOTO_NEXT_INST;
3605}
3606SXTB_INST : {
3607 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3608 sxtb_inst* inst_cream = (sxtb_inst*)inst_base->component;
3609
3610 unsigned int operand2 = ROTATE_RIGHT_32(RM, 8 * inst_cream->rotate);
3611 if (BIT(operand2, 7)) {
3612 operand2 |= 0xffffff00;
3613 } else {
3614 operand2 &= 0xff;
3615 }
3616 RD = operand2;
3617 }
3618 cpu->Reg[15] += cpu->GetInstructionSize();
3619 INC_PC(sizeof(sxtb_inst));
3620 FETCH_INST;
3621 GOTO_NEXT_INST;
3622}
3623STR_INST : {
3624 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3625 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
3626 inst_cream->get_addr(cpu, inst_cream->inst, addr);
3627
3628 unsigned int reg = BITS(inst_cream->inst, 12, 15);
3629 unsigned int value = cpu->Reg[reg];
3630
3631 if (reg == 15)
3632 value += 2 * cpu->GetInstructionSize();
3633
3634 cpu->WriteMemory32(addr, value);
3635 }
3636 cpu->Reg[15] += cpu->GetInstructionSize();
3637 INC_PC(sizeof(ldst_inst));
3638 FETCH_INST;
3639 GOTO_NEXT_INST;
3640}
3641UXTB_INST : {
3642 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3643 uxtb_inst* inst_cream = (uxtb_inst*)inst_base->component;
3644 RD = ROTATE_RIGHT_32(RM, 8 * inst_cream->rotate) & 0xff;
3645 }
3646 cpu->Reg[15] += cpu->GetInstructionSize();
3647 INC_PC(sizeof(uxtb_inst));
3648 FETCH_INST;
3649 GOTO_NEXT_INST;
3650}
3651UXTAB_INST : {
3652 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3653 uxtab_inst* inst_cream = (uxtab_inst*)inst_base->component;
3654
3655 unsigned int operand2 = ROTATE_RIGHT_32(RM, 8 * inst_cream->rotate) & 0xff;
3656 RD = RN + operand2;
3657 }
3658 cpu->Reg[15] += cpu->GetInstructionSize();
3659 INC_PC(sizeof(uxtab_inst));
3660 FETCH_INST;
3661 GOTO_NEXT_INST;
3662}
3663STRB_INST : {
3664 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3665 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
3666 inst_cream->get_addr(cpu, inst_cream->inst, addr);
3667 unsigned int value = cpu->Reg[BITS(inst_cream->inst, 12, 15)] & 0xff;
3668 cpu->WriteMemory8(addr, value);
3669 }
3670 cpu->Reg[15] += cpu->GetInstructionSize();
3671 INC_PC(sizeof(ldst_inst));
3672 FETCH_INST;
3673 GOTO_NEXT_INST;
3674}
3675STRBT_INST : {
3676 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3677 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
3678 inst_cream->get_addr(cpu, inst_cream->inst, addr);
3679
3680 const u32 previous_mode = cpu->Mode;
3681 const u32 value = cpu->Reg[BITS(inst_cream->inst, 12, 15)] & 0xff;
3682
3683 cpu->ChangePrivilegeMode(USER32MODE);
3684 cpu->WriteMemory8(addr, value);
3685 cpu->ChangePrivilegeMode(previous_mode);
3686 }
3687 cpu->Reg[15] += cpu->GetInstructionSize();
3688 INC_PC(sizeof(ldst_inst));
3689 FETCH_INST;
3690 GOTO_NEXT_INST;
3691}
3692STRD_INST : {
3693 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3694 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
3695 inst_cream->get_addr(cpu, inst_cream->inst, addr);
3696
3697 // The 3DS doesn't have the Large Physical Access Extension (LPAE)
3698 // so STRD wouldn't store these as a single write.
3699 cpu->WriteMemory32(addr + 0, cpu->Reg[BITS(inst_cream->inst, 12, 15)]);
3700 cpu->WriteMemory32(addr + 4, cpu->Reg[BITS(inst_cream->inst, 12, 15) + 1]);
3701 }
3702 cpu->Reg[15] += cpu->GetInstructionSize();
3703 INC_PC(sizeof(ldst_inst));
3704 FETCH_INST;
3705 GOTO_NEXT_INST;
3706}
3707STREX_INST : {
3708 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3709 generic_arm_inst* inst_cream = (generic_arm_inst*)inst_base->component;
3710 unsigned int write_addr = cpu->Reg[inst_cream->Rn];
3711
3712 if (cpu->IsExclusiveMemoryAccess(write_addr)) {
3713 cpu->UnsetExclusiveMemoryAddress();
3714 cpu->WriteMemory32(write_addr, RM);
3715 RD = 0;
3716 } else {
3717 // Failed to write due to mutex access
3718 RD = 1;
3719 }
3720 }
3721 cpu->Reg[15] += cpu->GetInstructionSize();
3722 INC_PC(sizeof(generic_arm_inst));
3723 FETCH_INST;
3724 GOTO_NEXT_INST;
3725}
3726STREXB_INST : {
3727 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3728 generic_arm_inst* inst_cream = (generic_arm_inst*)inst_base->component;
3729 unsigned int write_addr = cpu->Reg[inst_cream->Rn];
3730
3731 if (cpu->IsExclusiveMemoryAccess(write_addr)) {
3732 cpu->UnsetExclusiveMemoryAddress();
3733 cpu->WriteMemory8(write_addr, cpu->Reg[inst_cream->Rm]);
3734 RD = 0;
3735 } else {
3736 // Failed to write due to mutex access
3737 RD = 1;
3738 }
3739 }
3740 cpu->Reg[15] += cpu->GetInstructionSize();
3741 INC_PC(sizeof(generic_arm_inst));
3742 FETCH_INST;
3743 GOTO_NEXT_INST;
3744}
3745STREXD_INST : {
3746 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3747 generic_arm_inst* inst_cream = (generic_arm_inst*)inst_base->component;
3748 unsigned int write_addr = cpu->Reg[inst_cream->Rn];
3749
3750 if (cpu->IsExclusiveMemoryAccess(write_addr)) {
3751 cpu->UnsetExclusiveMemoryAddress();
3752
3753 const u32 rt = cpu->Reg[inst_cream->Rm + 0];
3754 const u32 rt2 = cpu->Reg[inst_cream->Rm + 1];
3755 u64 value;
3756
3757 if (cpu->InBigEndianMode())
3758 value = (((u64)rt << 32) | rt2);
3759 else
3760 value = (((u64)rt2 << 32) | rt);
3761
3762 cpu->WriteMemory64(write_addr, value);
3763 RD = 0;
3764 } else {
3765 // Failed to write due to mutex access
3766 RD = 1;
3767 }
3768 }
3769 cpu->Reg[15] += cpu->GetInstructionSize();
3770 INC_PC(sizeof(generic_arm_inst));
3771 FETCH_INST;
3772 GOTO_NEXT_INST;
3773}
3774STREXH_INST : {
3775 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3776 generic_arm_inst* inst_cream = (generic_arm_inst*)inst_base->component;
3777 unsigned int write_addr = cpu->Reg[inst_cream->Rn];
3778
3779 if (cpu->IsExclusiveMemoryAccess(write_addr)) {
3780 cpu->UnsetExclusiveMemoryAddress();
3781 cpu->WriteMemory16(write_addr, RM);
3782 RD = 0;
3783 } else {
3784 // Failed to write due to mutex access
3785 RD = 1;
3786 }
3787 }
3788 cpu->Reg[15] += cpu->GetInstructionSize();
3789 INC_PC(sizeof(generic_arm_inst));
3790 FETCH_INST;
3791 GOTO_NEXT_INST;
3792}
3793STRH_INST : {
3794 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3795 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
3796 inst_cream->get_addr(cpu, inst_cream->inst, addr);
3797
3798 unsigned int value = cpu->Reg[BITS(inst_cream->inst, 12, 15)] & 0xffff;
3799 cpu->WriteMemory16(addr, value);
3800 }
3801 cpu->Reg[15] += cpu->GetInstructionSize();
3802 INC_PC(sizeof(ldst_inst));
3803 FETCH_INST;
3804 GOTO_NEXT_INST;
3805}
3806STRT_INST : {
3807 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3808 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
3809 inst_cream->get_addr(cpu, inst_cream->inst, addr);
3810
3811 const u32 previous_mode = cpu->Mode;
3812 const u32 rt_index = BITS(inst_cream->inst, 12, 15);
3813
3814 u32 value = cpu->Reg[rt_index];
3815 if (rt_index == 15)
3816 value += 2 * cpu->GetInstructionSize();
3817
3818 cpu->ChangePrivilegeMode(USER32MODE);
3819 cpu->WriteMemory32(addr, value);
3820 cpu->ChangePrivilegeMode(previous_mode);
3821 }
3822 cpu->Reg[15] += cpu->GetInstructionSize();
3823 INC_PC(sizeof(ldst_inst));
3824 FETCH_INST;
3825 GOTO_NEXT_INST;
3826}
3827SUB_INST : {
3828 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3829 sub_inst* const inst_cream = (sub_inst*)inst_base->component;
3830
3831 u32 rn_val = CHECK_READ_REG15_WA(cpu, inst_cream->Rn);
3832
3833 bool carry;
3834 bool overflow;
3835 RD = AddWithCarry(rn_val, ~SHIFTER_OPERAND, 1, &carry, &overflow);
3836
3837 if (inst_cream->S && (inst_cream->Rd == 15)) {
3838 if (CurrentModeHasSPSR) {
3839 cpu->Cpsr = cpu->Spsr_copy;
3840 cpu->ChangePrivilegeMode(cpu->Spsr_copy & 0x1F);
3841 LOAD_NZCVT;
3842 }
3843 } else if (inst_cream->S) {
3844 UPDATE_NFLAG(RD);
3845 UPDATE_ZFLAG(RD);
3846 cpu->CFlag = carry;
3847 cpu->VFlag = overflow;
3848 }
3849 if (inst_cream->Rd == 15) {
3850 INC_PC(sizeof(sub_inst));
3851 goto DISPATCH;
3852 }
3853 }
3854 cpu->Reg[15] += cpu->GetInstructionSize();
3855 INC_PC(sizeof(sub_inst));
3856 FETCH_INST;
3857 GOTO_NEXT_INST;
3858}
3859SWI_INST : {
3860 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3861 swi_inst* const inst_cream = (swi_inst*)inst_base->component;
3862 SVC::CallSVC(inst_cream->num & 0xFFFF);
3863 }
3864
3865 cpu->Reg[15] += cpu->GetInstructionSize();
3866 INC_PC(sizeof(swi_inst));
3867 FETCH_INST;
3868 GOTO_NEXT_INST;
3869}
3870SWP_INST : {
3871 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3872 swp_inst* inst_cream = (swp_inst*)inst_base->component;
3873
3874 addr = RN;
3875 unsigned int value = cpu->ReadMemory32(addr);
3876 cpu->WriteMemory32(addr, RM);
3877
3878 RD = value;
3879 }
3880 cpu->Reg[15] += cpu->GetInstructionSize();
3881 INC_PC(sizeof(swp_inst));
3882 FETCH_INST;
3883 GOTO_NEXT_INST;
3884}
3885SWPB_INST : {
3886 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3887 swp_inst* inst_cream = (swp_inst*)inst_base->component;
3888 addr = RN;
3889 unsigned int value = cpu->ReadMemory8(addr);
3890 cpu->WriteMemory8(addr, (RM & 0xFF));
3891 RD = value;
3892 }
3893 cpu->Reg[15] += cpu->GetInstructionSize();
3894 INC_PC(sizeof(swp_inst));
3895 FETCH_INST;
3896 GOTO_NEXT_INST;
3897}
3898SXTAB_INST : {
3899 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3900 sxtab_inst* inst_cream = (sxtab_inst*)inst_base->component;
3901
3902 unsigned int operand2 = ROTATE_RIGHT_32(RM, 8 * inst_cream->rotate) & 0xff;
3903
3904 // Sign extend for byte
3905 operand2 = (0x80 & operand2) ? (0xFFFFFF00 | operand2) : operand2;
3906 RD = RN + operand2;
3907 }
3908 cpu->Reg[15] += cpu->GetInstructionSize();
3909 INC_PC(sizeof(uxtab_inst));
3910 FETCH_INST;
3911 GOTO_NEXT_INST;
3912}
3913
3914SXTAB16_INST:
3915SXTB16_INST : {
3916 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3917 sxtab_inst* const inst_cream = (sxtab_inst*)inst_base->component;
3918
3919 const u8 rotation = inst_cream->rotate * 8;
3920 u32 rm_val = RM;
3921 u32 rn_val = RN;
3922
3923 if (rotation)
3924 rm_val = ((rm_val << (32 - rotation)) | (rm_val >> rotation));
3925
3926 // SXTB16
3927 if (inst_cream->Rn == 15) {
3928 u32 lo = (u32)(s8)rm_val;
3929 u32 hi = (u32)(s8)(rm_val >> 16);
3930 RD = (lo & 0xFFFF) | (hi << 16);
3931 }
3932 // SXTAB16
3933 else {
3934 u32 lo = rn_val + (u32)(s8)(rm_val & 0xFF);
3935 u32 hi = (rn_val >> 16) + (u32)(s8)((rm_val >> 16) & 0xFF);
3936 RD = (lo & 0xFFFF) | (hi << 16);
3937 }
3938 }
3939
3940 cpu->Reg[15] += cpu->GetInstructionSize();
3941 INC_PC(sizeof(sxtab_inst));
3942 FETCH_INST;
3943 GOTO_NEXT_INST;
3944}
3945
3946SXTAH_INST : {
3947 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3948 sxtah_inst* inst_cream = (sxtah_inst*)inst_base->component;
3949
3950 unsigned int operand2 = ROTATE_RIGHT_32(RM, 8 * inst_cream->rotate) & 0xffff;
3951 // Sign extend for half
3952 operand2 = (0x8000 & operand2) ? (0xFFFF0000 | operand2) : operand2;
3953 RD = RN + operand2;
3954 }
3955 cpu->Reg[15] += cpu->GetInstructionSize();
3956 INC_PC(sizeof(sxtah_inst));
3957 FETCH_INST;
3958 GOTO_NEXT_INST;
3959}
3960
3961TEQ_INST : {
3962 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3963 teq_inst* const inst_cream = (teq_inst*)inst_base->component;
3964
3965 u32 lop = RN;
3966 u32 rop = SHIFTER_OPERAND;
3967
3968 if (inst_cream->Rn == 15)
3969 lop += cpu->GetInstructionSize() * 2;
3970
3971 u32 result = lop ^ rop;
3972
3973 UPDATE_NFLAG(result);
3974 UPDATE_ZFLAG(result);
3975 UPDATE_CFLAG_WITH_SC;
3976 }
3977 cpu->Reg[15] += cpu->GetInstructionSize();
3978 INC_PC(sizeof(teq_inst));
3979 FETCH_INST;
3980 GOTO_NEXT_INST;
3981}
3982TST_INST : {
3983 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
3984 tst_inst* const inst_cream = (tst_inst*)inst_base->component;
3985
3986 u32 lop = RN;
3987 u32 rop = SHIFTER_OPERAND;
3988
3989 if (inst_cream->Rn == 15)
3990 lop += cpu->GetInstructionSize() * 2;
3991
3992 u32 result = lop & rop;
3993
3994 UPDATE_NFLAG(result);
3995 UPDATE_ZFLAG(result);
3996 UPDATE_CFLAG_WITH_SC;
3997 }
3998 cpu->Reg[15] += cpu->GetInstructionSize();
3999 INC_PC(sizeof(tst_inst));
4000 FETCH_INST;
4001 GOTO_NEXT_INST;
4002}
4003
4004UADD8_INST:
4005UADD16_INST:
4006UADDSUBX_INST:
4007USUB8_INST:
4008USUB16_INST:
4009USUBADDX_INST : {
4010 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
4011 generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component;
4012
4013 const u8 op2 = inst_cream->op2;
4014 const u32 rm_val = RM;
4015 const u32 rn_val = RN;
4016
4017 s32 lo_result = 0;
4018 s32 hi_result = 0;
4019
4020 // UADD16
4021 if (op2 == 0x00) {
4022 lo_result = (rn_val & 0xFFFF) + (rm_val & 0xFFFF);
4023 hi_result = ((rn_val >> 16) & 0xFFFF) + ((rm_val >> 16) & 0xFFFF);
4024
4025 if (lo_result & 0xFFFF0000) {
4026 cpu->Cpsr |= (1 << 16);
4027 cpu->Cpsr |= (1 << 17);
4028 } else {
4029 cpu->Cpsr &= ~(1 << 16);
4030 cpu->Cpsr &= ~(1 << 17);
4031 }
4032
4033 if (hi_result & 0xFFFF0000) {
4034 cpu->Cpsr |= (1 << 18);
4035 cpu->Cpsr |= (1 << 19);
4036 } else {
4037 cpu->Cpsr &= ~(1 << 18);
4038 cpu->Cpsr &= ~(1 << 19);
4039 }
4040 }
4041 // UASX
4042 else if (op2 == 0x01) {
4043 lo_result = (rn_val & 0xFFFF) - ((rm_val >> 16) & 0xFFFF);
4044 hi_result = ((rn_val >> 16) & 0xFFFF) + (rm_val & 0xFFFF);
4045
4046 if (lo_result >= 0) {
4047 cpu->Cpsr |= (1 << 16);
4048 cpu->Cpsr |= (1 << 17);
4049 } else {
4050 cpu->Cpsr &= ~(1 << 16);
4051 cpu->Cpsr &= ~(1 << 17);
4052 }
4053
4054 if (hi_result >= 0x10000) {
4055 cpu->Cpsr |= (1 << 18);
4056 cpu->Cpsr |= (1 << 19);
4057 } else {
4058 cpu->Cpsr &= ~(1 << 18);
4059 cpu->Cpsr &= ~(1 << 19);
4060 }
4061 }
4062 // USAX
4063 else if (op2 == 0x02) {
4064 lo_result = (rn_val & 0xFFFF) + ((rm_val >> 16) & 0xFFFF);
4065 hi_result = ((rn_val >> 16) & 0xFFFF) - (rm_val & 0xFFFF);
4066
4067 if (lo_result >= 0x10000) {
4068 cpu->Cpsr |= (1 << 16);
4069 cpu->Cpsr |= (1 << 17);
4070 } else {
4071 cpu->Cpsr &= ~(1 << 16);
4072 cpu->Cpsr &= ~(1 << 17);
4073 }
4074
4075 if (hi_result >= 0) {
4076 cpu->Cpsr |= (1 << 18);
4077 cpu->Cpsr |= (1 << 19);
4078 } else {
4079 cpu->Cpsr &= ~(1 << 18);
4080 cpu->Cpsr &= ~(1 << 19);
4081 }
4082 }
4083 // USUB16
4084 else if (op2 == 0x03) {
4085 lo_result = (rn_val & 0xFFFF) - (rm_val & 0xFFFF);
4086 hi_result = ((rn_val >> 16) & 0xFFFF) - ((rm_val >> 16) & 0xFFFF);
4087
4088 if ((lo_result & 0xFFFF0000) == 0) {
4089 cpu->Cpsr |= (1 << 16);
4090 cpu->Cpsr |= (1 << 17);
4091 } else {
4092 cpu->Cpsr &= ~(1 << 16);
4093 cpu->Cpsr &= ~(1 << 17);
4094 }
4095
4096 if ((hi_result & 0xFFFF0000) == 0) {
4097 cpu->Cpsr |= (1 << 18);
4098 cpu->Cpsr |= (1 << 19);
4099 } else {
4100 cpu->Cpsr &= ~(1 << 18);
4101 cpu->Cpsr &= ~(1 << 19);
4102 }
4103 }
4104 // UADD8
4105 else if (op2 == 0x04) {
4106 s16 sum1 = (rn_val & 0xFF) + (rm_val & 0xFF);
4107 s16 sum2 = ((rn_val >> 8) & 0xFF) + ((rm_val >> 8) & 0xFF);
4108 s16 sum3 = ((rn_val >> 16) & 0xFF) + ((rm_val >> 16) & 0xFF);
4109 s16 sum4 = ((rn_val >> 24) & 0xFF) + ((rm_val >> 24) & 0xFF);
4110
4111 if (sum1 >= 0x100)
4112 cpu->Cpsr |= (1 << 16);
4113 else
4114 cpu->Cpsr &= ~(1 << 16);
4115
4116 if (sum2 >= 0x100)
4117 cpu->Cpsr |= (1 << 17);
4118 else
4119 cpu->Cpsr &= ~(1 << 17);
4120
4121 if (sum3 >= 0x100)
4122 cpu->Cpsr |= (1 << 18);
4123 else
4124 cpu->Cpsr &= ~(1 << 18);
4125
4126 if (sum4 >= 0x100)
4127 cpu->Cpsr |= (1 << 19);
4128 else
4129 cpu->Cpsr &= ~(1 << 19);
4130
4131 lo_result = ((sum1 & 0xFF) | (sum2 & 0xFF) << 8);
4132 hi_result = ((sum3 & 0xFF) | (sum4 & 0xFF) << 8);
4133 }
4134 // USUB8
4135 else if (op2 == 0x07) {
4136 s16 diff1 = (rn_val & 0xFF) - (rm_val & 0xFF);
4137 s16 diff2 = ((rn_val >> 8) & 0xFF) - ((rm_val >> 8) & 0xFF);
4138 s16 diff3 = ((rn_val >> 16) & 0xFF) - ((rm_val >> 16) & 0xFF);
4139 s16 diff4 = ((rn_val >> 24) & 0xFF) - ((rm_val >> 24) & 0xFF);
4140
4141 if (diff1 >= 0)
4142 cpu->Cpsr |= (1 << 16);
4143 else
4144 cpu->Cpsr &= ~(1 << 16);
4145
4146 if (diff2 >= 0)
4147 cpu->Cpsr |= (1 << 17);
4148 else
4149 cpu->Cpsr &= ~(1 << 17);
4150
4151 if (diff3 >= 0)
4152 cpu->Cpsr |= (1 << 18);
4153 else
4154 cpu->Cpsr &= ~(1 << 18);
4155
4156 if (diff4 >= 0)
4157 cpu->Cpsr |= (1 << 19);
4158 else
4159 cpu->Cpsr &= ~(1 << 19);
4160
4161 lo_result = (diff1 & 0xFF) | ((diff2 & 0xFF) << 8);
4162 hi_result = (diff3 & 0xFF) | ((diff4 & 0xFF) << 8);
4163 }
4164
4165 RD = (lo_result & 0xFFFF) | ((hi_result & 0xFFFF) << 16);
4166 }
4167
4168 cpu->Reg[15] += cpu->GetInstructionSize();
4169 INC_PC(sizeof(generic_arm_inst));
4170 FETCH_INST;
4171 GOTO_NEXT_INST;
4172}
4173
4174UHADD8_INST:
4175UHADD16_INST:
4176UHADDSUBX_INST:
4177UHSUBADDX_INST:
4178UHSUB8_INST:
4179UHSUB16_INST : {
4180 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
4181 generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component;
4182 const u32 rm_val = RM;
4183 const u32 rn_val = RN;
4184 const u8 op2 = inst_cream->op2;
4185
4186 if (op2 == 0x00 || op2 == 0x01 || op2 == 0x02 || op2 == 0x03) {
4187 u32 lo_val = 0;
4188 u32 hi_val = 0;
4189
4190 // UHADD16
4191 if (op2 == 0x00) {
4192 lo_val = (rn_val & 0xFFFF) + (rm_val & 0xFFFF);
4193 hi_val = ((rn_val >> 16) & 0xFFFF) + ((rm_val >> 16) & 0xFFFF);
4194 }
4195 // UHASX
4196 else if (op2 == 0x01) {
4197 lo_val = (rn_val & 0xFFFF) - ((rm_val >> 16) & 0xFFFF);
4198 hi_val = ((rn_val >> 16) & 0xFFFF) + (rm_val & 0xFFFF);
4199 }
4200 // UHSAX
4201 else if (op2 == 0x02) {
4202 lo_val = (rn_val & 0xFFFF) + ((rm_val >> 16) & 0xFFFF);
4203 hi_val = ((rn_val >> 16) & 0xFFFF) - (rm_val & 0xFFFF);
4204 }
4205 // UHSUB16
4206 else if (op2 == 0x03) {
4207 lo_val = (rn_val & 0xFFFF) - (rm_val & 0xFFFF);
4208 hi_val = ((rn_val >> 16) & 0xFFFF) - ((rm_val >> 16) & 0xFFFF);
4209 }
4210
4211 lo_val >>= 1;
4212 hi_val >>= 1;
4213
4214 RD = (lo_val & 0xFFFF) | ((hi_val & 0xFFFF) << 16);
4215 } else if (op2 == 0x04 || op2 == 0x07) {
4216 u32 sum1;
4217 u32 sum2;
4218 u32 sum3;
4219 u32 sum4;
4220
4221 // UHADD8
4222 if (op2 == 0x04) {
4223 sum1 = (rn_val & 0xFF) + (rm_val & 0xFF);
4224 sum2 = ((rn_val >> 8) & 0xFF) + ((rm_val >> 8) & 0xFF);
4225 sum3 = ((rn_val >> 16) & 0xFF) + ((rm_val >> 16) & 0xFF);
4226 sum4 = ((rn_val >> 24) & 0xFF) + ((rm_val >> 24) & 0xFF);
4227 }
4228 // UHSUB8
4229 else {
4230 sum1 = (rn_val & 0xFF) - (rm_val & 0xFF);
4231 sum2 = ((rn_val >> 8) & 0xFF) - ((rm_val >> 8) & 0xFF);
4232 sum3 = ((rn_val >> 16) & 0xFF) - ((rm_val >> 16) & 0xFF);
4233 sum4 = ((rn_val >> 24) & 0xFF) - ((rm_val >> 24) & 0xFF);
4234 }
4235
4236 sum1 >>= 1;
4237 sum2 >>= 1;
4238 sum3 >>= 1;
4239 sum4 >>= 1;
4240
4241 RD = (sum1 & 0xFF) | ((sum2 & 0xFF) << 8) | ((sum3 & 0xFF) << 16) |
4242 ((sum4 & 0xFF) << 24);
4243 }
4244 }
4245
4246 cpu->Reg[15] += cpu->GetInstructionSize();
4247 INC_PC(sizeof(generic_arm_inst));
4248 FETCH_INST;
4249 GOTO_NEXT_INST;
4250}
4251
4252UMAAL_INST : {
4253 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
4254 umaal_inst* const inst_cream = (umaal_inst*)inst_base->component;
4255 const u64 rm = RM;
4256 const u64 rn = RN;
4257 const u64 rd_lo = RDLO;
4258 const u64 rd_hi = RDHI;
4259 const u64 result = (rm * rn) + rd_lo + rd_hi;
4260
4261 RDLO = (result & 0xFFFFFFFF);
4262 RDHI = ((result >> 32) & 0xFFFFFFFF);
4263 }
4264 cpu->Reg[15] += cpu->GetInstructionSize();
4265 INC_PC(sizeof(umaal_inst));
4266 FETCH_INST;
4267 GOTO_NEXT_INST;
4268}
4269UMLAL_INST : {
4270 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
4271 umlal_inst* inst_cream = (umlal_inst*)inst_base->component;
4272 unsigned long long int rm = RM;
4273 unsigned long long int rs = RS;
4274 unsigned long long int rst = rm * rs;
4275 unsigned long long int add = ((unsigned long long)RDHI) << 32;
4276 add += RDLO;
4277 rst += add;
4278 RDLO = BITS(rst, 0, 31);
4279 RDHI = BITS(rst, 32, 63);
4280
4281 if (inst_cream->S) {
4282 cpu->NFlag = BIT(RDHI, 31);
4283 cpu->ZFlag = (RDHI == 0 && RDLO == 0);
4284 }
4285 }
4286 cpu->Reg[15] += cpu->GetInstructionSize();
4287 INC_PC(sizeof(umlal_inst));
4288 FETCH_INST;
4289 GOTO_NEXT_INST;
4290}
4291UMULL_INST : {
4292 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
4293 umull_inst* inst_cream = (umull_inst*)inst_base->component;
4294 unsigned long long int rm = RM;
4295 unsigned long long int rs = RS;
4296 unsigned long long int rst = rm * rs;
4297 RDHI = BITS(rst, 32, 63);
4298 RDLO = BITS(rst, 0, 31);
4299
4300 if (inst_cream->S) {
4301 cpu->NFlag = BIT(RDHI, 31);
4302 cpu->ZFlag = (RDHI == 0 && RDLO == 0);
4303 }
4304 }
4305 cpu->Reg[15] += cpu->GetInstructionSize();
4306 INC_PC(sizeof(umull_inst));
4307 FETCH_INST;
4308 GOTO_NEXT_INST;
4309}
4310B_2_THUMB : {
4311 b_2_thumb* inst_cream = (b_2_thumb*)inst_base->component;
4312 cpu->Reg[15] = cpu->Reg[15] + 4 + inst_cream->imm;
4313 INC_PC(sizeof(b_2_thumb));
4314 goto DISPATCH;
4315}
4316B_COND_THUMB : {
4317 b_cond_thumb* inst_cream = (b_cond_thumb*)inst_base->component;
4318
4319 if (CondPassed(cpu, inst_cream->cond))
4320 cpu->Reg[15] = cpu->Reg[15] + 4 + inst_cream->imm;
4321 else
4322 cpu->Reg[15] += 2;
4323
4324 INC_PC(sizeof(b_cond_thumb));
4325 goto DISPATCH;
4326}
4327BL_1_THUMB : {
4328 bl_1_thumb* inst_cream = (bl_1_thumb*)inst_base->component;
4329 cpu->Reg[14] = cpu->Reg[15] + 4 + inst_cream->imm;
4330 cpu->Reg[15] += cpu->GetInstructionSize();
4331 INC_PC(sizeof(bl_1_thumb));
4332 FETCH_INST;
4333 GOTO_NEXT_INST;
4334}
4335BL_2_THUMB : {
4336 bl_2_thumb* inst_cream = (bl_2_thumb*)inst_base->component;
4337 int tmp = ((cpu->Reg[15] + 2) | 1);
4338 cpu->Reg[15] = (cpu->Reg[14] + inst_cream->imm);
4339 cpu->Reg[14] = tmp;
4340 INC_PC(sizeof(bl_2_thumb));
4341 goto DISPATCH;
4342}
4343BLX_1_THUMB : {
4344 // BLX 1 for armv5t and above
4345 u32 tmp = cpu->Reg[15];
4346 blx_1_thumb* inst_cream = (blx_1_thumb*)inst_base->component;
4347 cpu->Reg[15] = (cpu->Reg[14] + inst_cream->imm) & 0xFFFFFFFC;
4348 cpu->Reg[14] = ((tmp + 2) | 1);
4349 cpu->TFlag = 0;
4350 INC_PC(sizeof(blx_1_thumb));
4351 goto DISPATCH;
4352}
4353
4354UQADD8_INST:
4355UQADD16_INST:
4356UQADDSUBX_INST:
4357UQSUB8_INST:
4358UQSUB16_INST:
4359UQSUBADDX_INST : {
4360 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
4361 generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component;
4362
4363 const u8 op2 = inst_cream->op2;
4364 const u32 rm_val = RM;
4365 const u32 rn_val = RN;
4366
4367 u16 lo_val = 0;
4368 u16 hi_val = 0;
4369
4370 // UQADD16
4371 if (op2 == 0x00) {
4372 lo_val = ARMul_UnsignedSaturatedAdd16(rn_val & 0xFFFF, rm_val & 0xFFFF);
4373 hi_val = ARMul_UnsignedSaturatedAdd16((rn_val >> 16) & 0xFFFF, (rm_val >> 16) & 0xFFFF);
4374 }
4375 // UQASX
4376 else if (op2 == 0x01) {
4377 lo_val = ARMul_UnsignedSaturatedSub16(rn_val & 0xFFFF, (rm_val >> 16) & 0xFFFF);
4378 hi_val = ARMul_UnsignedSaturatedAdd16((rn_val >> 16) & 0xFFFF, rm_val & 0xFFFF);
4379 }
4380 // UQSAX
4381 else if (op2 == 0x02) {
4382 lo_val = ARMul_UnsignedSaturatedAdd16(rn_val & 0xFFFF, (rm_val >> 16) & 0xFFFF);
4383 hi_val = ARMul_UnsignedSaturatedSub16((rn_val >> 16) & 0xFFFF, rm_val & 0xFFFF);
4384 }
4385 // UQSUB16
4386 else if (op2 == 0x03) {
4387 lo_val = ARMul_UnsignedSaturatedSub16(rn_val & 0xFFFF, rm_val & 0xFFFF);
4388 hi_val = ARMul_UnsignedSaturatedSub16((rn_val >> 16) & 0xFFFF, (rm_val >> 16) & 0xFFFF);
4389 }
4390 // UQADD8
4391 else if (op2 == 0x04) {
4392 lo_val = ARMul_UnsignedSaturatedAdd8(rn_val, rm_val) |
4393 ARMul_UnsignedSaturatedAdd8(rn_val >> 8, rm_val >> 8) << 8;
4394 hi_val = ARMul_UnsignedSaturatedAdd8(rn_val >> 16, rm_val >> 16) |
4395 ARMul_UnsignedSaturatedAdd8(rn_val >> 24, rm_val >> 24) << 8;
4396 }
4397 // UQSUB8
4398 else {
4399 lo_val = ARMul_UnsignedSaturatedSub8(rn_val, rm_val) |
4400 ARMul_UnsignedSaturatedSub8(rn_val >> 8, rm_val >> 8) << 8;
4401 hi_val = ARMul_UnsignedSaturatedSub8(rn_val >> 16, rm_val >> 16) |
4402 ARMul_UnsignedSaturatedSub8(rn_val >> 24, rm_val >> 24) << 8;
4403 }
4404
4405 RD = ((lo_val & 0xFFFF) | hi_val << 16);
4406 }
4407
4408 cpu->Reg[15] += cpu->GetInstructionSize();
4409 INC_PC(sizeof(generic_arm_inst));
4410 FETCH_INST;
4411 GOTO_NEXT_INST;
4412}
4413
4414USAD8_INST:
4415USADA8_INST : {
4416 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
4417 generic_arm_inst* inst_cream = (generic_arm_inst*)inst_base->component;
4418
4419 const u8 ra_idx = inst_cream->Ra;
4420 const u32 rm_val = RM;
4421 const u32 rn_val = RN;
4422
4423 const u8 diff1 = ARMul_UnsignedAbsoluteDifference(rn_val & 0xFF, rm_val & 0xFF);
4424 const u8 diff2 =
4425 ARMul_UnsignedAbsoluteDifference((rn_val >> 8) & 0xFF, (rm_val >> 8) & 0xFF);
4426 const u8 diff3 =
4427 ARMul_UnsignedAbsoluteDifference((rn_val >> 16) & 0xFF, (rm_val >> 16) & 0xFF);
4428 const u8 diff4 =
4429 ARMul_UnsignedAbsoluteDifference((rn_val >> 24) & 0xFF, (rm_val >> 24) & 0xFF);
4430
4431 u32 finalDif = (diff1 + diff2 + diff3 + diff4);
4432
4433 // Op is USADA8 if true.
4434 if (ra_idx != 15)
4435 finalDif += cpu->Reg[ra_idx];
4436
4437 RD = finalDif;
4438 }
4439
4440 cpu->Reg[15] += cpu->GetInstructionSize();
4441 INC_PC(sizeof(generic_arm_inst));
4442 FETCH_INST;
4443 GOTO_NEXT_INST;
4444}
4445
4446USAT_INST : {
4447 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
4448 ssat_inst* const inst_cream = (ssat_inst*)inst_base->component;
4449
4450 u8 shift_type = inst_cream->shift_type;
4451 u8 shift_amount = inst_cream->imm5;
4452 u32 rn_val = RN;
4453
4454 // 32-bit ASR is encoded as an amount of 0.
4455 if (shift_type == 1 && shift_amount == 0)
4456 shift_amount = 31;
4457
4458 if (shift_type == 0)
4459 rn_val <<= shift_amount;
4460 else if (shift_type == 1)
4461 rn_val = ((s32)rn_val >> shift_amount);
4462
4463 bool saturated = false;
4464 rn_val = ARMul_UnsignedSatQ(rn_val, inst_cream->sat_imm, &saturated);
4465
4466 if (saturated)
4467 cpu->Cpsr |= (1 << 27);
4468
4469 RD = rn_val;
4470 }
4471
4472 cpu->Reg[15] += cpu->GetInstructionSize();
4473 INC_PC(sizeof(ssat_inst));
4474 FETCH_INST;
4475 GOTO_NEXT_INST;
4476}
4477
4478USAT16_INST : {
4479 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
4480 ssat_inst* const inst_cream = (ssat_inst*)inst_base->component;
4481 const u8 saturate_to = inst_cream->sat_imm;
4482
4483 bool sat1 = false;
4484 bool sat2 = false;
4485
4486 RD = (ARMul_UnsignedSatQ((s16)RN, saturate_to, &sat1) & 0xFFFF) |
4487 ARMul_UnsignedSatQ((s32)RN >> 16, saturate_to, &sat2) << 16;
4488
4489 if (sat1 || sat2)
4490 cpu->Cpsr |= (1 << 27);
4491 }
4492
4493 cpu->Reg[15] += cpu->GetInstructionSize();
4494 INC_PC(sizeof(ssat_inst));
4495 FETCH_INST;
4496 GOTO_NEXT_INST;
4497}
4498
4499UXTAB16_INST:
4500UXTB16_INST : {
4501 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
4502 uxtab_inst* const inst_cream = (uxtab_inst*)inst_base->component;
4503
4504 const u8 rn_idx = inst_cream->Rn;
4505 const u32 rm_val = RM;
4506 const u32 rotation = inst_cream->rotate * 8;
4507 const u32 rotated_rm = ((rm_val << (32 - rotation)) | (rm_val >> rotation));
4508
4509 // UXTB16, otherwise UXTAB16
4510 if (rn_idx == 15) {
4511 RD = rotated_rm & 0x00FF00FF;
4512 } else {
4513 const u32 rn_val = RN;
4514 const u8 lo_rotated = (rotated_rm & 0xFF);
4515 const u16 lo_result = (rn_val & 0xFFFF) + (u16)lo_rotated;
4516 const u8 hi_rotated = (rotated_rm >> 16) & 0xFF;
4517 const u16 hi_result = (rn_val >> 16) + (u16)hi_rotated;
4518
4519 RD = ((hi_result << 16) | (lo_result & 0xFFFF));
4520 }
4521 }
4522
4523 cpu->Reg[15] += cpu->GetInstructionSize();
4524 INC_PC(sizeof(uxtab_inst));
4525 FETCH_INST;
4526 GOTO_NEXT_INST;
4527}
4528
4529WFE_INST : {
4530 // Stubbed, as WFE is a hint instruction.
4531 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
4532 LOG_TRACE(Core_ARM, "WFE executed.");
4533 }
4534
4535 cpu->Reg[15] += cpu->GetInstructionSize();
4536 INC_PC_STUB;
4537 FETCH_INST;
4538 GOTO_NEXT_INST;
4539}
4540
4541WFI_INST : {
4542 // Stubbed, as WFI is a hint instruction.
4543 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
4544 LOG_TRACE(Core_ARM, "WFI executed.");
4545 }
4546
4547 cpu->Reg[15] += cpu->GetInstructionSize();
4548 INC_PC_STUB;
4549 FETCH_INST;
4550 GOTO_NEXT_INST;
4551}
4552
4553YIELD_INST : {
4554 // Stubbed, as YIELD is a hint instruction.
4555 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
4556 LOG_TRACE(Core_ARM, "YIELD executed.");
4557 }
4558
4559 cpu->Reg[15] += cpu->GetInstructionSize();
4560 INC_PC_STUB;
4561 FETCH_INST;
4562 GOTO_NEXT_INST;
4563}
4564
4565#define VFP_INTERPRETER_IMPL
4566#include "core/arm/skyeye_common/vfp/vfpinstr.cpp"
4567#undef VFP_INTERPRETER_IMPL
4568
4569END : {
4570 SAVE_NZCVT;
4571 cpu->NumInstrsToExecute = 0;
4572 return num_instrs;
4573}
4574INIT_INST_LENGTH : {
4575 cpu->NumInstrsToExecute = 0;
4576 return num_instrs;
4577}
4578}
diff --git a/src/core/arm/dyncom/arm_dyncom_interpreter.h b/src/core/arm/dyncom/arm_dyncom_interpreter.h
deleted file mode 100644
index 7a46dcc94..000000000
--- a/src/core/arm/dyncom/arm_dyncom_interpreter.h
+++ /dev/null
@@ -1,9 +0,0 @@
1// Copyright 2014 Citra Emulator Project
2// Licensed under GPLv2 or any later version
3// Refer to the license.txt file included.
4
5#pragma once
6
7struct ARMul_State;
8
9unsigned InterpreterMainLoop(ARMul_State* state);
diff --git a/src/core/arm/dyncom/arm_dyncom_run.h b/src/core/arm/dyncom/arm_dyncom_run.h
deleted file mode 100644
index 8eb694fee..000000000
--- a/src/core/arm/dyncom/arm_dyncom_run.h
+++ /dev/null
@@ -1,48 +0,0 @@
1/* Copyright (C)
2* 2011 - Michael.Kang blackfin.kang@gmail.com
3* This program is free software; you can redistribute it and/or
4* modify it under the terms of the GNU General Public License
5* as published by the Free Software Foundation; either version 2
6* of the License, or (at your option) any later version.
7*
8* This program is distributed in the hope that it will be useful,
9* but WITHOUT ANY WARRANTY; without even the implied warranty of
10* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11* GNU General Public License for more details.
12*
13* You should have received a copy of the GNU General Public License
14* along with this program; if not, write to the Free Software
15* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
16*
17*/
18
19#pragma once
20
21#include "core/arm/skyeye_common/armstate.h"
22
23/**
24 * Checks if the PC is being read, and if so, word-aligns it.
25 * Used with address calculations.
26 *
27 * @param cpu The ARM CPU state instance.
28 * @param Rn The register being read.
29 *
30 * @return If the PC is being read, then the word-aligned PC value is returned.
31 * If the PC is not being read, then the value stored in the register is returned.
32 */
33inline u32 CHECK_READ_REG15_WA(const ARMul_State* cpu, int Rn) {
34 return (Rn == 15) ? ((cpu->Reg[15] & ~0x3) + cpu->GetInstructionSize() * 2) : cpu->Reg[Rn];
35}
36
37/**
38 * Reads the PC. Used for data processing operations that use the PC.
39 *
40 * @param cpu The ARM CPU state instance.
41 * @param Rn The register being read.
42 *
43 * @return If the PC is being read, then the incremented PC value is returned.
44 * If the PC is not being read, then the values stored in the register is returned.
45 */
46inline u32 CHECK_READ_REG15(const ARMul_State* cpu, int Rn) {
47 return (Rn == 15) ? ((cpu->Reg[15] & ~0x1) + cpu->GetInstructionSize() * 2) : cpu->Reg[Rn];
48}
diff --git a/src/core/arm/dyncom/arm_dyncom_thumb.cpp b/src/core/arm/dyncom/arm_dyncom_thumb.cpp
deleted file mode 100644
index 2a3dd0f53..000000000
--- a/src/core/arm/dyncom/arm_dyncom_thumb.cpp
+++ /dev/null
@@ -1,390 +0,0 @@
1// Copyright 2012 Michael Kang, 2014 Citra Emulator Project
2// Licensed under GPLv2 or any later version
3// Refer to the license.txt file included.
4
5#include <cstddef>
6
7// We can provide simple Thumb simulation by decoding the Thumb instruction into its corresponding
8// ARM instruction, and using the existing ARM simulator.
9
10#include "core/arm/dyncom/arm_dyncom_thumb.h"
11#include "core/arm/skyeye_common/armsupp.h"
12
13// Decode a 16bit Thumb instruction. The instruction is in the low 16-bits of the tinstr field,
14// with the following Thumb instruction held in the high 16-bits. Passing in two Thumb instructions
15// allows easier simulation of the special dual BL instruction.
16
17ThumbDecodeStatus TranslateThumbInstruction(u32 addr, u32 instr, u32* ainstr, u32* inst_size) {
18 ThumbDecodeStatus valid = ThumbDecodeStatus::UNINITIALIZED;
19 u32 tinstr = GetThumbInstruction(instr, addr);
20
21 *ainstr = 0xDEADC0DE; // Debugging to catch non updates
22
23 switch ((tinstr & 0xF800) >> 11) {
24 case 0: // LSL
25 case 1: // LSR
26 case 2: // ASR
27 *ainstr = 0xE1B00000 // base opcode
28 | ((tinstr & 0x1800) >> (11 - 5)) // shift type
29 | ((tinstr & 0x07C0) << (7 - 6)) // imm5
30 | ((tinstr & 0x0038) >> 3) // Rs
31 | ((tinstr & 0x0007) << 12); // Rd
32 break;
33
34 case 3: // ADD/SUB
35 {
36 static const u32 subset[4] = {
37 0xE0900000, // ADDS Rd,Rs,Rn
38 0xE0500000, // SUBS Rd,Rs,Rn
39 0xE2900000, // ADDS Rd,Rs,#imm3
40 0xE2500000 // SUBS Rd,Rs,#imm3
41 };
42 // It is quicker indexing into a table, than performing switch or conditionals:
43 *ainstr = subset[(tinstr & 0x0600) >> 9] // base opcode
44 | ((tinstr & 0x01C0) >> 6) // Rn or imm3
45 | ((tinstr & 0x0038) << (16 - 3)) // Rs
46 | ((tinstr & 0x0007) << (12 - 0)); // Rd
47 } break;
48
49 case 4: // MOV
50 case 5: // CMP
51 case 6: // ADD
52 case 7: // SUB
53 {
54 static const u32 subset[4] = {
55 0xE3B00000, // MOVS Rd,#imm8
56 0xE3500000, // CMP Rd,#imm8
57 0xE2900000, // ADDS Rd,Rd,#imm8
58 0xE2500000, // SUBS Rd,Rd,#imm8
59 };
60
61 *ainstr = subset[(tinstr & 0x1800) >> 11] // base opcode
62 | ((tinstr & 0x00FF) >> 0) // imm8
63 | ((tinstr & 0x0700) << (16 - 8)) // Rn
64 | ((tinstr & 0x0700) << (12 - 8)); // Rd
65 } break;
66
67 case 8: // Arithmetic and high register transfers
68
69 // TODO: Since the subsets for both Format 4 and Format 5 instructions are made up of
70 // different ARM encodings, we could save the following conditional, and just have one
71 // large subset
72
73 if ((tinstr & (1 << 10)) == 0) {
74 enum otype { t_norm, t_shift, t_neg, t_mul };
75
76 static const struct {
77 u32 opcode;
78 otype type;
79 } subset[16] = {
80 {0xE0100000, t_norm}, // ANDS Rd,Rd,Rs
81 {0xE0300000, t_norm}, // EORS Rd,Rd,Rs
82 {0xE1B00010, t_shift}, // MOVS Rd,Rd,LSL Rs
83 {0xE1B00030, t_shift}, // MOVS Rd,Rd,LSR Rs
84 {0xE1B00050, t_shift}, // MOVS Rd,Rd,ASR Rs
85 {0xE0B00000, t_norm}, // ADCS Rd,Rd,Rs
86 {0xE0D00000, t_norm}, // SBCS Rd,Rd,Rs
87 {0xE1B00070, t_shift}, // MOVS Rd,Rd,ROR Rs
88 {0xE1100000, t_norm}, // TST Rd,Rs
89 {0xE2700000, t_neg}, // RSBS Rd,Rs,#0
90 {0xE1500000, t_norm}, // CMP Rd,Rs
91 {0xE1700000, t_norm}, // CMN Rd,Rs
92 {0xE1900000, t_norm}, // ORRS Rd,Rd,Rs
93 {0xE0100090, t_mul}, // MULS Rd,Rd,Rs
94 {0xE1D00000, t_norm}, // BICS Rd,Rd,Rs
95 {0xE1F00000, t_norm} // MVNS Rd,Rs
96 };
97
98 *ainstr = subset[(tinstr & 0x03C0) >> 6].opcode; // base
99
100 switch (subset[(tinstr & 0x03C0) >> 6].type) {
101 case t_norm:
102 *ainstr |= ((tinstr & 0x0007) << 16) // Rn
103 | ((tinstr & 0x0007) << 12) // Rd
104 | ((tinstr & 0x0038) >> 3); // Rs
105 break;
106 case t_shift:
107 *ainstr |= ((tinstr & 0x0007) << 12) // Rd
108 | ((tinstr & 0x0007) >> 0) // Rm
109 | ((tinstr & 0x0038) << (8 - 3)); // Rs
110 break;
111 case t_neg:
112 *ainstr |= ((tinstr & 0x0007) << 12) // Rd
113 | ((tinstr & 0x0038) << (16 - 3)); // Rn
114 break;
115 case t_mul:
116 *ainstr |= ((tinstr & 0x0007) << 16) // Rd
117 | ((tinstr & 0x0007) << 8) // Rs
118 | ((tinstr & 0x0038) >> 3); // Rm
119 break;
120 }
121 } else {
122 u32 Rd = ((tinstr & 0x0007) >> 0);
123 u32 Rs = ((tinstr & 0x0078) >> 3);
124
125 if (tinstr & (1 << 7))
126 Rd += 8;
127
128 switch ((tinstr & 0x03C0) >> 6) {
129 case 0x0: // ADD Rd,Rd,Rs
130 case 0x1: // ADD Rd,Rd,Hs
131 case 0x2: // ADD Hd,Hd,Rs
132 case 0x3: // ADD Hd,Hd,Hs
133 *ainstr = 0xE0800000 // base
134 | (Rd << 16) // Rn
135 | (Rd << 12) // Rd
136 | (Rs << 0); // Rm
137 break;
138 case 0x4: // CMP Rd,Rs
139 case 0x5: // CMP Rd,Hs
140 case 0x6: // CMP Hd,Rs
141 case 0x7: // CMP Hd,Hs
142 *ainstr = 0xE1500000 // base
143 | (Rd << 16) // Rn
144 | (Rs << 0); // Rm
145 break;
146 case 0x8: // MOV Rd,Rs
147 case 0x9: // MOV Rd,Hs
148 case 0xA: // MOV Hd,Rs
149 case 0xB: // MOV Hd,Hs
150 *ainstr = 0xE1A00000 // base
151 | (Rd << 12) // Rd
152 | (Rs << 0); // Rm
153 break;
154 case 0xC: // BX Rs
155 case 0xD: // BX Hs
156 *ainstr = 0xE12FFF10 // base
157 | ((tinstr & 0x0078) >> 3); // Rd
158 break;
159 case 0xE: // BLX
160 case 0xF: // BLX
161 *ainstr = 0xE1200030 // base
162 | (Rs << 0); // Rm
163 break;
164 }
165 }
166 break;
167
168 case 9: // LDR Rd,[PC,#imm8]
169 *ainstr = 0xE59F0000 // base
170 | ((tinstr & 0x0700) << (12 - 8)) // Rd
171 | ((tinstr & 0x00FF) << (2 - 0)); // off8
172 break;
173
174 case 10:
175 case 11: {
176 static const u32 subset[8] = {
177 0xE7800000, // STR Rd,[Rb,Ro]
178 0xE18000B0, // STRH Rd,[Rb,Ro]
179 0xE7C00000, // STRB Rd,[Rb,Ro]
180 0xE19000D0, // LDRSB Rd,[Rb,Ro]
181 0xE7900000, // LDR Rd,[Rb,Ro]
182 0xE19000B0, // LDRH Rd,[Rb,Ro]
183 0xE7D00000, // LDRB Rd,[Rb,Ro]
184 0xE19000F0 // LDRSH Rd,[Rb,Ro]
185 };
186
187 *ainstr = subset[(tinstr & 0xE00) >> 9] // base
188 | ((tinstr & 0x0007) << (12 - 0)) // Rd
189 | ((tinstr & 0x0038) << (16 - 3)) // Rb
190 | ((tinstr & 0x01C0) >> 6); // Ro
191 } break;
192
193 case 12: // STR Rd,[Rb,#imm5]
194 case 13: // LDR Rd,[Rb,#imm5]
195 case 14: // STRB Rd,[Rb,#imm5]
196 case 15: // LDRB Rd,[Rb,#imm5]
197 {
198 static const u32 subset[4] = {
199 0xE5800000, // STR Rd,[Rb,#imm5]
200 0xE5900000, // LDR Rd,[Rb,#imm5]
201 0xE5C00000, // STRB Rd,[Rb,#imm5]
202 0xE5D00000 // LDRB Rd,[Rb,#imm5]
203 };
204 // The offset range defends on whether we are transferring a byte or word value:
205 *ainstr = subset[(tinstr & 0x1800) >> 11] // base
206 | ((tinstr & 0x0007) << (12 - 0)) // Rd
207 | ((tinstr & 0x0038) << (16 - 3)) // Rb
208 | ((tinstr & 0x07C0) >> (6 - ((tinstr & (1 << 12)) ? 0 : 2))); // off5
209 } break;
210
211 case 16: // STRH Rd,[Rb,#imm5]
212 case 17: // LDRH Rd,[Rb,#imm5]
213 *ainstr = ((tinstr & (1 << 11)) // base
214 ? 0xE1D000B0 // LDRH
215 : 0xE1C000B0) // STRH
216 | ((tinstr & 0x0007) << (12 - 0)) // Rd
217 | ((tinstr & 0x0038) << (16 - 3)) // Rb
218 | ((tinstr & 0x01C0) >> (6 - 1)) // off5, low nibble
219 | ((tinstr & 0x0600) >> (9 - 8)); // off5, high nibble
220 break;
221
222 case 18: // STR Rd,[SP,#imm8]
223 case 19: // LDR Rd,[SP,#imm8]
224 *ainstr = ((tinstr & (1 << 11)) // base
225 ? 0xE59D0000 // LDR
226 : 0xE58D0000) // STR
227 | ((tinstr & 0x0700) << (12 - 8)) // Rd
228 | ((tinstr & 0x00FF) << 2); // off8
229 break;
230
231 case 20: // ADD Rd,PC,#imm8
232 case 21: // ADD Rd,SP,#imm8
233
234 if ((tinstr & (1 << 11)) == 0) {
235
236 // NOTE: The PC value used here should by word aligned. We encode shift-left-by-2 in the
237 // rotate immediate field, so no shift of off8 is needed.
238
239 *ainstr = 0xE28F0F00 // base
240 | ((tinstr & 0x0700) << (12 - 8)) // Rd
241 | (tinstr & 0x00FF); // off8
242 } else {
243 // We encode shift-left-by-2 in the rotate immediate field, so no shift of off8 is
244 // needed.
245 *ainstr = 0xE28D0F00 // base
246 | ((tinstr & 0x0700) << (12 - 8)) // Rd
247 | (tinstr & 0x00FF); // off8
248 }
249 break;
250
251 case 22:
252 case 23:
253 if ((tinstr & 0x0F00) == 0x0000) {
254 // NOTE: The instruction contains a shift left of 2 equivalent (implemented as ROR #30):
255 *ainstr = ((tinstr & (1 << 7)) // base
256 ? 0xE24DDF00 // SUB
257 : 0xE28DDF00) // ADD
258 | (tinstr & 0x007F); // off7
259 } else if ((tinstr & 0x0F00) == 0x0e00) {
260 // BKPT
261 *ainstr = 0xEF000000 // base
262 | BITS(tinstr, 0, 3) // imm4 field;
263 | (BITS(tinstr, 4, 7) << 8); // beginning 4 bits of imm12
264 } else if ((tinstr & 0x0F00) == 0x0200) {
265 static const u32 subset[4] = {
266 0xE6BF0070, // SXTH
267 0xE6AF0070, // SXTB
268 0xE6FF0070, // UXTH
269 0xE6EF0070, // UXTB
270 };
271
272 *ainstr = subset[BITS(tinstr, 6, 7)] // base
273 | (BITS(tinstr, 0, 2) << 12) // Rd
274 | BITS(tinstr, 3, 5); // Rm
275 } else if ((tinstr & 0x0F00) == 0x600) {
276 if (BIT(tinstr, 5) == 0) {
277 // SETEND
278 *ainstr = 0xF1010000 // base
279 | (BIT(tinstr, 3) << 9); // endian specifier
280 } else {
281 // CPS
282 *ainstr = 0xF1080000 // base
283 | (BIT(tinstr, 0) << 6) // fiq bit
284 | (BIT(tinstr, 1) << 7) // irq bit
285 | (BIT(tinstr, 2) << 8) // abort bit
286 | (BIT(tinstr, 4) << 18); // enable bit
287 }
288 } else if ((tinstr & 0x0F00) == 0x0a00) {
289 static const u32 subset[4] = {
290 0xE6BF0F30, // REV
291 0xE6BF0FB0, // REV16
292 0, // undefined
293 0xE6FF0FB0, // REVSH
294 };
295
296 size_t subset_index = BITS(tinstr, 6, 7);
297
298 if (subset_index == 2) {
299 valid = ThumbDecodeStatus::UNDEFINED;
300 } else {
301 *ainstr = subset[subset_index] // base
302 | (BITS(tinstr, 0, 2) << 12) // Rd
303 | BITS(tinstr, 3, 5); // Rm
304 }
305 } else {
306 static const u32 subset[4] = {
307 0xE92D0000, // STMDB sp!,{rlist}
308 0xE92D4000, // STMDB sp!,{rlist,lr}
309 0xE8BD0000, // LDMIA sp!,{rlist}
310 0xE8BD8000 // LDMIA sp!,{rlist,pc}
311 };
312 *ainstr = subset[((tinstr & (1 << 11)) >> 10) | ((tinstr & (1 << 8)) >> 8)] // base
313 | (tinstr & 0x00FF); // mask8
314 }
315 break;
316
317 case 24: // STMIA
318 case 25: // LDMIA
319 if (tinstr & (1 << 11)) {
320 unsigned int base = 0xE8900000;
321 unsigned int rn = BITS(tinstr, 8, 10);
322
323 // Writeback
324 if ((tinstr & (1 << rn)) == 0)
325 base |= (1 << 21);
326
327 *ainstr = base // base (LDMIA)
328 | (rn << 16) // Rn
329 | (tinstr & 0x00FF); // Register list
330 } else {
331 *ainstr = 0xE8A00000 // base (STMIA)
332 | (BITS(tinstr, 8, 10) << 16) // Rn
333 | (tinstr & 0x00FF); // Register list
334 }
335 break;
336
337 case 26: // Bcc
338 case 27: // Bcc/SWI
339 if ((tinstr & 0x0F00) == 0x0F00) {
340 // Format 17 : SWI
341 *ainstr = 0xEF000000;
342 // Breakpoint must be handled specially.
343 if ((tinstr & 0x00FF) == 0x18)
344 *ainstr |= ((tinstr & 0x00FF) << 16);
345 // New breakpoint value. See gdb/arm-tdep.c
346 else if ((tinstr & 0x00FF) == 0xFE)
347 *ainstr |= 0x180000; // base |= BKPT mask
348 else
349 *ainstr |= (tinstr & 0x00FF);
350 } else if ((tinstr & 0x0F00) != 0x0E00)
351 valid = ThumbDecodeStatus::BRANCH;
352 else // UNDEFINED : cc=1110(AL) uses different format
353 valid = ThumbDecodeStatus::UNDEFINED;
354
355 break;
356
357 case 28: // B
358 valid = ThumbDecodeStatus::BRANCH;
359 break;
360
361 case 29:
362 if (tinstr & 0x1)
363 valid = ThumbDecodeStatus::UNDEFINED;
364 else
365 valid = ThumbDecodeStatus::BRANCH;
366 break;
367
368 case 30: // BL instruction 1
369
370 // There is no single ARM instruction equivalent for this Thumb instruction. To keep the
371 // simulation simple (from the user perspective) we check if the following instruction is
372 // the second half of this BL, and if it is we simulate it immediately
373
374 valid = ThumbDecodeStatus::BRANCH;
375 break;
376
377 case 31: // BL instruction 2
378
379 // There is no single ARM instruction equivalent for this instruction. Also, it should only
380 // ever be matched with the fmt19 "BL instruction 1" instruction. However, we do allow the
381 // simulation of it on its own, with undefined results if r14 is not suitably initialised.
382
383 valid = ThumbDecodeStatus::BRANCH;
384 break;
385 }
386
387 *inst_size = 2;
388
389 return valid;
390}
diff --git a/src/core/arm/dyncom/arm_dyncom_thumb.h b/src/core/arm/dyncom/arm_dyncom_thumb.h
deleted file mode 100644
index 231e48aa4..000000000
--- a/src/core/arm/dyncom/arm_dyncom_thumb.h
+++ /dev/null
@@ -1,49 +0,0 @@
1/* Copyright (C)
2* 2011 - Michael.Kang blackfin.kang@gmail.com
3* This program is free software; you can redistribute it and/or
4* modify it under the terms of the GNU General Public License
5* as published by the Free Software Foundation; either version 2
6* of the License, or (at your option) any later version.
7*
8* This program is distributed in the hope that it will be useful,
9* but WITHOUT ANY WARRANTY; without even the implied warranty of
10* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11* GNU General Public License for more details.
12*
13* You should have received a copy of the GNU General Public License
14* along with this program; if not, write to the Free Software
15* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
16*
17*/
18
19/**
20* @file arm_dyncom_thumb.h
21* @brief The thumb dyncom
22* @author Michael.Kang blackfin.kang@gmail.com
23* @version 78.77
24* @date 2011-11-07
25*/
26
27#pragma once
28
29#include "common/common_types.h"
30
31enum class ThumbDecodeStatus {
32 UNDEFINED, // Undefined Thumb instruction
33 DECODED, // Instruction decoded to ARM equivalent
34 BRANCH, // Thumb branch (already processed)
35 UNINITIALIZED,
36};
37
38// Translates a Thumb mode instruction into its ARM equivalent.
39ThumbDecodeStatus TranslateThumbInstruction(u32 addr, u32 instr, u32* ainstr, u32* inst_size);
40
41inline u32 GetThumbInstruction(u32 instr, u32 address) {
42 // Normally you would need to handle instruction endianness,
43 // however, it is fixed to little-endian on the MPCore, so
44 // there's no need to check for this beforehand.
45 if ((address & 0x3) != 0)
46 return instr >> 16;
47
48 return instr & 0xFFFF;
49}
diff --git a/src/core/arm/dyncom/arm_dyncom_trans.cpp b/src/core/arm/dyncom/arm_dyncom_trans.cpp
deleted file mode 100644
index 9cd6c0dea..000000000
--- a/src/core/arm/dyncom/arm_dyncom_trans.cpp
+++ /dev/null
@@ -1,1887 +0,0 @@
1#include <cstdlib>
2#include "common/assert.h"
3#include "common/common_types.h"
4#include "core/arm/dyncom/arm_dyncom_interpreter.h"
5#include "core/arm/dyncom/arm_dyncom_trans.h"
6#include "core/arm/skyeye_common/armstate.h"
7#include "core/arm/skyeye_common/armsupp.h"
8#include "core/arm/skyeye_common/vfp/vfp.h"
9
10char trans_cache_buf[TRANS_CACHE_SIZE];
11size_t trans_cache_buf_top = 0;
12
13static void* AllocBuffer(size_t size) {
14 size_t start = trans_cache_buf_top;
15 trans_cache_buf_top += size;
16 ASSERT_MSG(trans_cache_buf_top <= TRANS_CACHE_SIZE, "Translation cache is full!");
17 return static_cast<void*>(&trans_cache_buf[start]);
18}
19
20#define glue(x, y) x##y
21#define INTERPRETER_TRANSLATE(s) glue(InterpreterTranslate_, s)
22
23shtop_fp_t GetShifterOp(unsigned int inst);
24get_addr_fp_t GetAddressingOp(unsigned int inst);
25get_addr_fp_t GetAddressingOpLoadStoreT(unsigned int inst);
26
27static ARM_INST_PTR INTERPRETER_TRANSLATE(adc)(unsigned int inst, int index) {
28 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(adc_inst));
29 adc_inst* inst_cream = (adc_inst*)inst_base->component;
30
31 inst_base->cond = BITS(inst, 28, 31);
32 inst_base->idx = index;
33 inst_base->br = TransExtData::NON_BRANCH;
34
35 inst_cream->I = BIT(inst, 25);
36 inst_cream->S = BIT(inst, 20);
37 inst_cream->Rn = BITS(inst, 16, 19);
38 inst_cream->Rd = BITS(inst, 12, 15);
39 inst_cream->shifter_operand = BITS(inst, 0, 11);
40 inst_cream->shtop_func = GetShifterOp(inst);
41
42 if (inst_cream->Rd == 15)
43 inst_base->br = TransExtData::INDIRECT_BRANCH;
44
45 return inst_base;
46}
47static ARM_INST_PTR INTERPRETER_TRANSLATE(add)(unsigned int inst, int index) {
48 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(add_inst));
49 add_inst* inst_cream = (add_inst*)inst_base->component;
50
51 inst_base->cond = BITS(inst, 28, 31);
52 inst_base->idx = index;
53 inst_base->br = TransExtData::NON_BRANCH;
54
55 inst_cream->I = BIT(inst, 25);
56 inst_cream->S = BIT(inst, 20);
57 inst_cream->Rn = BITS(inst, 16, 19);
58 inst_cream->Rd = BITS(inst, 12, 15);
59 inst_cream->shifter_operand = BITS(inst, 0, 11);
60 inst_cream->shtop_func = GetShifterOp(inst);
61
62 if (inst_cream->Rd == 15)
63 inst_base->br = TransExtData::INDIRECT_BRANCH;
64
65 return inst_base;
66}
67static ARM_INST_PTR INTERPRETER_TRANSLATE(and)(unsigned int inst, int index) {
68 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(and_inst));
69 and_inst* inst_cream = (and_inst*)inst_base->component;
70
71 inst_base->cond = BITS(inst, 28, 31);
72 inst_base->idx = index;
73 inst_base->br = TransExtData::NON_BRANCH;
74
75 inst_cream->I = BIT(inst, 25);
76 inst_cream->S = BIT(inst, 20);
77 inst_cream->Rn = BITS(inst, 16, 19);
78 inst_cream->Rd = BITS(inst, 12, 15);
79 inst_cream->shifter_operand = BITS(inst, 0, 11);
80 inst_cream->shtop_func = GetShifterOp(inst);
81
82 if (inst_cream->Rd == 15)
83 inst_base->br = TransExtData::INDIRECT_BRANCH;
84
85 return inst_base;
86}
87static ARM_INST_PTR INTERPRETER_TRANSLATE(bbl)(unsigned int inst, int index) {
88#define POSBRANCH ((inst & 0x7fffff) << 2)
89#define NEGBRANCH ((0xff000000 | (inst & 0xffffff)) << 2)
90
91 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(bbl_inst));
92 bbl_inst* inst_cream = (bbl_inst*)inst_base->component;
93
94 inst_base->cond = BITS(inst, 28, 31);
95 inst_base->idx = index;
96 inst_base->br = TransExtData::DIRECT_BRANCH;
97
98 if (BIT(inst, 24))
99 inst_base->br = TransExtData::CALL;
100
101 inst_cream->L = BIT(inst, 24);
102 inst_cream->signed_immed_24 = BIT(inst, 23) ? NEGBRANCH : POSBRANCH;
103
104 return inst_base;
105}
106static ARM_INST_PTR INTERPRETER_TRANSLATE(bic)(unsigned int inst, int index) {
107 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(bic_inst));
108 bic_inst* inst_cream = (bic_inst*)inst_base->component;
109
110 inst_base->cond = BITS(inst, 28, 31);
111 inst_base->idx = index;
112 inst_base->br = TransExtData::NON_BRANCH;
113
114 inst_cream->I = BIT(inst, 25);
115 inst_cream->S = BIT(inst, 20);
116 inst_cream->Rn = BITS(inst, 16, 19);
117 inst_cream->Rd = BITS(inst, 12, 15);
118 inst_cream->shifter_operand = BITS(inst, 0, 11);
119 inst_cream->shtop_func = GetShifterOp(inst);
120
121 if (inst_cream->Rd == 15)
122 inst_base->br = TransExtData::INDIRECT_BRANCH;
123 return inst_base;
124}
125
126static ARM_INST_PTR INTERPRETER_TRANSLATE(bkpt)(unsigned int inst, int index) {
127 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(bkpt_inst));
128 bkpt_inst* const inst_cream = (bkpt_inst*)inst_base->component;
129
130 inst_base->cond = BITS(inst, 28, 31);
131 inst_base->idx = index;
132 inst_base->br = TransExtData::NON_BRANCH;
133
134 inst_cream->imm = (BITS(inst, 8, 19) << 4) | BITS(inst, 0, 3);
135
136 return inst_base;
137}
138
139static ARM_INST_PTR INTERPRETER_TRANSLATE(blx)(unsigned int inst, int index) {
140 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(blx_inst));
141 blx_inst* inst_cream = (blx_inst*)inst_base->component;
142
143 inst_base->cond = BITS(inst, 28, 31);
144 inst_base->idx = index;
145 inst_base->br = TransExtData::INDIRECT_BRANCH;
146
147 inst_cream->inst = inst;
148 if (BITS(inst, 20, 27) == 0x12 && BITS(inst, 4, 7) == 0x3) {
149 inst_cream->val.Rm = BITS(inst, 0, 3);
150 } else {
151 inst_cream->val.signed_immed_24 = BITS(inst, 0, 23);
152 }
153
154 return inst_base;
155}
156static ARM_INST_PTR INTERPRETER_TRANSLATE(bx)(unsigned int inst, int index) {
157 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(bx_inst));
158 bx_inst* inst_cream = (bx_inst*)inst_base->component;
159
160 inst_base->cond = BITS(inst, 28, 31);
161 inst_base->idx = index;
162 inst_base->br = TransExtData::INDIRECT_BRANCH;
163
164 inst_cream->Rm = BITS(inst, 0, 3);
165
166 return inst_base;
167}
168static ARM_INST_PTR INTERPRETER_TRANSLATE(bxj)(unsigned int inst, int index) {
169 return INTERPRETER_TRANSLATE(bx)(inst, index);
170}
171
172static ARM_INST_PTR INTERPRETER_TRANSLATE(cdp)(unsigned int inst, int index) {
173 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(cdp_inst));
174 cdp_inst* inst_cream = (cdp_inst*)inst_base->component;
175
176 inst_base->cond = BITS(inst, 28, 31);
177 inst_base->idx = index;
178 inst_base->br = TransExtData::NON_BRANCH;
179
180 inst_cream->CRm = BITS(inst, 0, 3);
181 inst_cream->CRd = BITS(inst, 12, 15);
182 inst_cream->CRn = BITS(inst, 16, 19);
183 inst_cream->cp_num = BITS(inst, 8, 11);
184 inst_cream->opcode_2 = BITS(inst, 5, 7);
185 inst_cream->opcode_1 = BITS(inst, 20, 23);
186 inst_cream->inst = inst;
187
188 LOG_TRACE(Core_ARM, "inst %x index %x", inst, index);
189 return inst_base;
190}
191static ARM_INST_PTR INTERPRETER_TRANSLATE(clrex)(unsigned int inst, int index) {
192 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(clrex_inst));
193 inst_base->cond = BITS(inst, 28, 31);
194 inst_base->idx = index;
195 inst_base->br = TransExtData::NON_BRANCH;
196
197 return inst_base;
198}
199static ARM_INST_PTR INTERPRETER_TRANSLATE(clz)(unsigned int inst, int index) {
200 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(clz_inst));
201 clz_inst* inst_cream = (clz_inst*)inst_base->component;
202
203 inst_base->cond = BITS(inst, 28, 31);
204 inst_base->idx = index;
205 inst_base->br = TransExtData::NON_BRANCH;
206
207 inst_cream->Rm = BITS(inst, 0, 3);
208 inst_cream->Rd = BITS(inst, 12, 15);
209
210 return inst_base;
211}
212static ARM_INST_PTR INTERPRETER_TRANSLATE(cmn)(unsigned int inst, int index) {
213 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(cmn_inst));
214 cmn_inst* inst_cream = (cmn_inst*)inst_base->component;
215
216 inst_base->cond = BITS(inst, 28, 31);
217 inst_base->idx = index;
218 inst_base->br = TransExtData::NON_BRANCH;
219
220 inst_cream->I = BIT(inst, 25);
221 inst_cream->Rn = BITS(inst, 16, 19);
222 inst_cream->shifter_operand = BITS(inst, 0, 11);
223 inst_cream->shtop_func = GetShifterOp(inst);
224
225 return inst_base;
226}
227static ARM_INST_PTR INTERPRETER_TRANSLATE(cmp)(unsigned int inst, int index) {
228 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(cmp_inst));
229 cmp_inst* inst_cream = (cmp_inst*)inst_base->component;
230
231 inst_base->cond = BITS(inst, 28, 31);
232 inst_base->idx = index;
233 inst_base->br = TransExtData::NON_BRANCH;
234
235 inst_cream->I = BIT(inst, 25);
236 inst_cream->Rn = BITS(inst, 16, 19);
237 inst_cream->shifter_operand = BITS(inst, 0, 11);
238 inst_cream->shtop_func = GetShifterOp(inst);
239
240 return inst_base;
241}
242static ARM_INST_PTR INTERPRETER_TRANSLATE(cps)(unsigned int inst, int index) {
243 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(cps_inst));
244 cps_inst* inst_cream = (cps_inst*)inst_base->component;
245
246 inst_base->cond = BITS(inst, 28, 31);
247 inst_base->idx = index;
248 inst_base->br = TransExtData::NON_BRANCH;
249
250 inst_cream->imod0 = BIT(inst, 18);
251 inst_cream->imod1 = BIT(inst, 19);
252 inst_cream->mmod = BIT(inst, 17);
253 inst_cream->A = BIT(inst, 8);
254 inst_cream->I = BIT(inst, 7);
255 inst_cream->F = BIT(inst, 6);
256 inst_cream->mode = BITS(inst, 0, 4);
257
258 return inst_base;
259}
260static ARM_INST_PTR INTERPRETER_TRANSLATE(cpy)(unsigned int inst, int index) {
261 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(mov_inst));
262 mov_inst* inst_cream = (mov_inst*)inst_base->component;
263
264 inst_base->cond = BITS(inst, 28, 31);
265 inst_base->idx = index;
266 inst_base->br = TransExtData::NON_BRANCH;
267
268 inst_cream->I = BIT(inst, 25);
269 inst_cream->S = BIT(inst, 20);
270 inst_cream->Rd = BITS(inst, 12, 15);
271 inst_cream->shifter_operand = BITS(inst, 0, 11);
272 inst_cream->shtop_func = GetShifterOp(inst);
273
274 if (inst_cream->Rd == 15) {
275 inst_base->br = TransExtData::INDIRECT_BRANCH;
276 }
277 return inst_base;
278}
279static ARM_INST_PTR INTERPRETER_TRANSLATE(eor)(unsigned int inst, int index) {
280 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(eor_inst));
281 eor_inst* inst_cream = (eor_inst*)inst_base->component;
282
283 inst_base->cond = BITS(inst, 28, 31);
284 inst_base->idx = index;
285 inst_base->br = TransExtData::NON_BRANCH;
286
287 inst_cream->I = BIT(inst, 25);
288 inst_cream->S = BIT(inst, 20);
289 inst_cream->Rn = BITS(inst, 16, 19);
290 inst_cream->Rd = BITS(inst, 12, 15);
291 inst_cream->shifter_operand = BITS(inst, 0, 11);
292 inst_cream->shtop_func = GetShifterOp(inst);
293
294 if (inst_cream->Rd == 15)
295 inst_base->br = TransExtData::INDIRECT_BRANCH;
296
297 return inst_base;
298}
299static ARM_INST_PTR INTERPRETER_TRANSLATE(ldc)(unsigned int inst, int index) {
300 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldc_inst));
301 inst_base->cond = BITS(inst, 28, 31);
302 inst_base->idx = index;
303 inst_base->br = TransExtData::NON_BRANCH;
304
305 return inst_base;
306}
307static ARM_INST_PTR INTERPRETER_TRANSLATE(ldm)(unsigned int inst, int index) {
308 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
309 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
310
311 inst_base->cond = BITS(inst, 28, 31);
312 inst_base->idx = index;
313 inst_base->br = TransExtData::NON_BRANCH;
314
315 inst_cream->inst = inst;
316 inst_cream->get_addr = GetAddressingOp(inst);
317
318 if (BIT(inst, 15)) {
319 inst_base->br = TransExtData::INDIRECT_BRANCH;
320 }
321 return inst_base;
322}
323static ARM_INST_PTR INTERPRETER_TRANSLATE(sxth)(unsigned int inst, int index) {
324 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(sxtb_inst));
325 sxtb_inst* inst_cream = (sxtb_inst*)inst_base->component;
326
327 inst_base->cond = BITS(inst, 28, 31);
328 inst_base->idx = index;
329 inst_base->br = TransExtData::NON_BRANCH;
330
331 inst_cream->Rd = BITS(inst, 12, 15);
332 inst_cream->Rm = BITS(inst, 0, 3);
333 inst_cream->rotate = BITS(inst, 10, 11);
334
335 return inst_base;
336}
337static ARM_INST_PTR INTERPRETER_TRANSLATE(ldr)(unsigned int inst, int index) {
338 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
339 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
340
341 inst_base->cond = BITS(inst, 28, 31);
342 inst_base->idx = index;
343 inst_base->br = TransExtData::NON_BRANCH;
344
345 inst_cream->inst = inst;
346 inst_cream->get_addr = GetAddressingOp(inst);
347
348 if (BITS(inst, 12, 15) == 15)
349 inst_base->br = TransExtData::INDIRECT_BRANCH;
350
351 return inst_base;
352}
353
354static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrcond)(unsigned int inst, int index) {
355 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
356 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
357
358 inst_base->cond = BITS(inst, 28, 31);
359 inst_base->idx = index;
360 inst_base->br = TransExtData::NON_BRANCH;
361
362 inst_cream->inst = inst;
363 inst_cream->get_addr = GetAddressingOp(inst);
364
365 if (BITS(inst, 12, 15) == 15)
366 inst_base->br = TransExtData::INDIRECT_BRANCH;
367
368 return inst_base;
369}
370
371static ARM_INST_PTR INTERPRETER_TRANSLATE(uxth)(unsigned int inst, int index) {
372 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(uxth_inst));
373 uxth_inst* inst_cream = (uxth_inst*)inst_base->component;
374
375 inst_base->cond = BITS(inst, 28, 31);
376 inst_base->idx = index;
377 inst_base->br = TransExtData::NON_BRANCH;
378
379 inst_cream->Rd = BITS(inst, 12, 15);
380 inst_cream->rotate = BITS(inst, 10, 11);
381 inst_cream->Rm = BITS(inst, 0, 3);
382
383 return inst_base;
384}
385static ARM_INST_PTR INTERPRETER_TRANSLATE(uxtah)(unsigned int inst, int index) {
386 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(uxtah_inst));
387 uxtah_inst* inst_cream = (uxtah_inst*)inst_base->component;
388
389 inst_base->cond = BITS(inst, 28, 31);
390 inst_base->idx = index;
391 inst_base->br = TransExtData::NON_BRANCH;
392
393 inst_cream->Rn = BITS(inst, 16, 19);
394 inst_cream->Rd = BITS(inst, 12, 15);
395 inst_cream->rotate = BITS(inst, 10, 11);
396 inst_cream->Rm = BITS(inst, 0, 3);
397
398 return inst_base;
399}
400static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrb)(unsigned int inst, int index) {
401 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
402 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
403
404 inst_base->cond = BITS(inst, 28, 31);
405 inst_base->idx = index;
406 inst_base->br = TransExtData::NON_BRANCH;
407
408 inst_cream->inst = inst;
409 inst_cream->get_addr = GetAddressingOp(inst);
410
411 return inst_base;
412}
413static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrbt)(unsigned int inst, int index) {
414 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
415 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
416
417 inst_base->cond = BITS(inst, 28, 31);
418 inst_base->idx = index;
419 inst_base->br = TransExtData::NON_BRANCH;
420
421 inst_cream->inst = inst;
422 inst_cream->get_addr = GetAddressingOpLoadStoreT(inst);
423
424 return inst_base;
425}
426static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrd)(unsigned int inst, int index) {
427 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
428 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
429
430 inst_base->cond = BITS(inst, 28, 31);
431 inst_base->idx = index;
432 inst_base->br = TransExtData::NON_BRANCH;
433
434 inst_cream->inst = inst;
435 inst_cream->get_addr = GetAddressingOp(inst);
436
437 return inst_base;
438}
439static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrex)(unsigned int inst, int index) {
440 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst));
441 generic_arm_inst* inst_cream = (generic_arm_inst*)inst_base->component;
442
443 inst_base->cond = BITS(inst, 28, 31);
444 inst_base->idx = index;
445 inst_base->br = (BITS(inst, 12, 15) == 15) ? TransExtData::INDIRECT_BRANCH
446 : TransExtData::NON_BRANCH; // Branch if dest is R15
447
448 inst_cream->Rn = BITS(inst, 16, 19);
449 inst_cream->Rd = BITS(inst, 12, 15);
450
451 return inst_base;
452}
453static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrexb)(unsigned int inst, int index) {
454 return INTERPRETER_TRANSLATE(ldrex)(inst, index);
455}
456static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrexh)(unsigned int inst, int index) {
457 return INTERPRETER_TRANSLATE(ldrex)(inst, index);
458}
459static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrexd)(unsigned int inst, int index) {
460 return INTERPRETER_TRANSLATE(ldrex)(inst, index);
461}
462static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrh)(unsigned int inst, int index) {
463 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
464 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
465
466 inst_base->cond = BITS(inst, 28, 31);
467 inst_base->idx = index;
468 inst_base->br = TransExtData::NON_BRANCH;
469
470 inst_cream->inst = inst;
471 inst_cream->get_addr = GetAddressingOp(inst);
472
473 return inst_base;
474}
475static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrsb)(unsigned int inst, int index) {
476 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
477 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
478
479 inst_base->cond = BITS(inst, 28, 31);
480 inst_base->idx = index;
481 inst_base->br = TransExtData::NON_BRANCH;
482
483 inst_cream->inst = inst;
484 inst_cream->get_addr = GetAddressingOp(inst);
485
486 return inst_base;
487}
488static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrsh)(unsigned int inst, int index) {
489 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
490 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
491
492 inst_base->cond = BITS(inst, 28, 31);
493 inst_base->idx = index;
494 inst_base->br = TransExtData::NON_BRANCH;
495
496 inst_cream->inst = inst;
497 inst_cream->get_addr = GetAddressingOp(inst);
498
499 return inst_base;
500}
501static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrt)(unsigned int inst, int index) {
502 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
503 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
504
505 inst_base->cond = BITS(inst, 28, 31);
506 inst_base->idx = index;
507 inst_base->br = TransExtData::NON_BRANCH;
508
509 inst_cream->inst = inst;
510 inst_cream->get_addr = GetAddressingOpLoadStoreT(inst);
511
512 if (BITS(inst, 12, 15) == 15) {
513 inst_base->br = TransExtData::INDIRECT_BRANCH;
514 }
515 return inst_base;
516}
517static ARM_INST_PTR INTERPRETER_TRANSLATE(mcr)(unsigned int inst, int index) {
518 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(mcr_inst));
519 mcr_inst* inst_cream = (mcr_inst*)inst_base->component;
520 inst_base->cond = BITS(inst, 28, 31);
521 inst_base->idx = index;
522 inst_base->br = TransExtData::NON_BRANCH;
523
524 inst_cream->crn = BITS(inst, 16, 19);
525 inst_cream->crm = BITS(inst, 0, 3);
526 inst_cream->opcode_1 = BITS(inst, 21, 23);
527 inst_cream->opcode_2 = BITS(inst, 5, 7);
528 inst_cream->Rd = BITS(inst, 12, 15);
529 inst_cream->cp_num = BITS(inst, 8, 11);
530 inst_cream->inst = inst;
531 return inst_base;
532}
533
534static ARM_INST_PTR INTERPRETER_TRANSLATE(mcrr)(unsigned int inst, int index) {
535 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(mcrr_inst));
536 mcrr_inst* const inst_cream = (mcrr_inst*)inst_base->component;
537
538 inst_base->cond = BITS(inst, 28, 31);
539 inst_base->idx = index;
540 inst_base->br = TransExtData::NON_BRANCH;
541
542 inst_cream->crm = BITS(inst, 0, 3);
543 inst_cream->opcode_1 = BITS(inst, 4, 7);
544 inst_cream->cp_num = BITS(inst, 8, 11);
545 inst_cream->rt = BITS(inst, 12, 15);
546 inst_cream->rt2 = BITS(inst, 16, 19);
547
548 return inst_base;
549}
550
551static ARM_INST_PTR INTERPRETER_TRANSLATE(mla)(unsigned int inst, int index) {
552 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(mla_inst));
553 mla_inst* inst_cream = (mla_inst*)inst_base->component;
554
555 inst_base->cond = BITS(inst, 28, 31);
556 inst_base->idx = index;
557 inst_base->br = TransExtData::NON_BRANCH;
558
559 inst_cream->S = BIT(inst, 20);
560 inst_cream->Rn = BITS(inst, 12, 15);
561 inst_cream->Rd = BITS(inst, 16, 19);
562 inst_cream->Rs = BITS(inst, 8, 11);
563 inst_cream->Rm = BITS(inst, 0, 3);
564
565 return inst_base;
566}
567static ARM_INST_PTR INTERPRETER_TRANSLATE(mov)(unsigned int inst, int index) {
568 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(mov_inst));
569 mov_inst* inst_cream = (mov_inst*)inst_base->component;
570
571 inst_base->cond = BITS(inst, 28, 31);
572 inst_base->idx = index;
573 inst_base->br = TransExtData::NON_BRANCH;
574
575 inst_cream->I = BIT(inst, 25);
576 inst_cream->S = BIT(inst, 20);
577 inst_cream->Rd = BITS(inst, 12, 15);
578 inst_cream->shifter_operand = BITS(inst, 0, 11);
579 inst_cream->shtop_func = GetShifterOp(inst);
580
581 if (inst_cream->Rd == 15) {
582 inst_base->br = TransExtData::INDIRECT_BRANCH;
583 }
584 return inst_base;
585}
586static ARM_INST_PTR INTERPRETER_TRANSLATE(mrc)(unsigned int inst, int index) {
587 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(mrc_inst));
588 mrc_inst* inst_cream = (mrc_inst*)inst_base->component;
589 inst_base->cond = BITS(inst, 28, 31);
590 inst_base->idx = index;
591 inst_base->br = TransExtData::NON_BRANCH;
592
593 inst_cream->crn = BITS(inst, 16, 19);
594 inst_cream->crm = BITS(inst, 0, 3);
595 inst_cream->opcode_1 = BITS(inst, 21, 23);
596 inst_cream->opcode_2 = BITS(inst, 5, 7);
597 inst_cream->Rd = BITS(inst, 12, 15);
598 inst_cream->cp_num = BITS(inst, 8, 11);
599 inst_cream->inst = inst;
600 return inst_base;
601}
602
603static ARM_INST_PTR INTERPRETER_TRANSLATE(mrrc)(unsigned int inst, int index) {
604 return INTERPRETER_TRANSLATE(mcrr)(inst, index);
605}
606
607static ARM_INST_PTR INTERPRETER_TRANSLATE(mrs)(unsigned int inst, int index) {
608 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(mrs_inst));
609 mrs_inst* inst_cream = (mrs_inst*)inst_base->component;
610
611 inst_base->cond = BITS(inst, 28, 31);
612 inst_base->idx = index;
613 inst_base->br = TransExtData::NON_BRANCH;
614
615 inst_cream->Rd = BITS(inst, 12, 15);
616 inst_cream->R = BIT(inst, 22);
617
618 return inst_base;
619}
620static ARM_INST_PTR INTERPRETER_TRANSLATE(msr)(unsigned int inst, int index) {
621 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(msr_inst));
622 msr_inst* inst_cream = (msr_inst*)inst_base->component;
623
624 inst_base->cond = BITS(inst, 28, 31);
625 inst_base->idx = index;
626 inst_base->br = TransExtData::NON_BRANCH;
627
628 inst_cream->field_mask = BITS(inst, 16, 19);
629 inst_cream->R = BIT(inst, 22);
630 inst_cream->inst = inst;
631
632 return inst_base;
633}
634static ARM_INST_PTR INTERPRETER_TRANSLATE(mul)(unsigned int inst, int index) {
635 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(mul_inst));
636 mul_inst* inst_cream = (mul_inst*)inst_base->component;
637
638 inst_base->cond = BITS(inst, 28, 31);
639 inst_base->idx = index;
640 inst_base->br = TransExtData::NON_BRANCH;
641
642 inst_cream->S = BIT(inst, 20);
643 inst_cream->Rm = BITS(inst, 0, 3);
644 inst_cream->Rs = BITS(inst, 8, 11);
645 inst_cream->Rd = BITS(inst, 16, 19);
646
647 return inst_base;
648}
649static ARM_INST_PTR INTERPRETER_TRANSLATE(mvn)(unsigned int inst, int index) {
650 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(mvn_inst));
651 mvn_inst* inst_cream = (mvn_inst*)inst_base->component;
652
653 inst_base->cond = BITS(inst, 28, 31);
654 inst_base->idx = index;
655 inst_base->br = TransExtData::NON_BRANCH;
656
657 inst_cream->I = BIT(inst, 25);
658 inst_cream->S = BIT(inst, 20);
659 inst_cream->Rd = BITS(inst, 12, 15);
660 inst_cream->shifter_operand = BITS(inst, 0, 11);
661 inst_cream->shtop_func = GetShifterOp(inst);
662
663 if (inst_cream->Rd == 15) {
664 inst_base->br = TransExtData::INDIRECT_BRANCH;
665 }
666 return inst_base;
667}
668static ARM_INST_PTR INTERPRETER_TRANSLATE(orr)(unsigned int inst, int index) {
669 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(orr_inst));
670 orr_inst* inst_cream = (orr_inst*)inst_base->component;
671
672 inst_base->cond = BITS(inst, 28, 31);
673 inst_base->idx = index;
674 inst_base->br = TransExtData::NON_BRANCH;
675
676 inst_cream->I = BIT(inst, 25);
677 inst_cream->S = BIT(inst, 20);
678 inst_cream->Rd = BITS(inst, 12, 15);
679 inst_cream->Rn = BITS(inst, 16, 19);
680 inst_cream->shifter_operand = BITS(inst, 0, 11);
681 inst_cream->shtop_func = GetShifterOp(inst);
682
683 if (inst_cream->Rd == 15)
684 inst_base->br = TransExtData::INDIRECT_BRANCH;
685
686 return inst_base;
687}
688
689// NOP introduced in ARMv6K.
690static ARM_INST_PTR INTERPRETER_TRANSLATE(nop)(unsigned int inst, int index) {
691 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst));
692
693 inst_base->cond = BITS(inst, 28, 31);
694 inst_base->idx = index;
695 inst_base->br = TransExtData::NON_BRANCH;
696
697 return inst_base;
698}
699
700static ARM_INST_PTR INTERPRETER_TRANSLATE(pkhbt)(unsigned int inst, int index) {
701 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(pkh_inst));
702 pkh_inst* inst_cream = (pkh_inst*)inst_base->component;
703
704 inst_base->cond = BITS(inst, 28, 31);
705 inst_base->idx = index;
706 inst_base->br = TransExtData::NON_BRANCH;
707
708 inst_cream->Rd = BITS(inst, 12, 15);
709 inst_cream->Rn = BITS(inst, 16, 19);
710 inst_cream->Rm = BITS(inst, 0, 3);
711 inst_cream->imm = BITS(inst, 7, 11);
712
713 return inst_base;
714}
715
716static ARM_INST_PTR INTERPRETER_TRANSLATE(pkhtb)(unsigned int inst, int index) {
717 return INTERPRETER_TRANSLATE(pkhbt)(inst, index);
718}
719
720static ARM_INST_PTR INTERPRETER_TRANSLATE(pld)(unsigned int inst, int index) {
721 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(pld_inst));
722
723 inst_base->cond = BITS(inst, 28, 31);
724 inst_base->idx = index;
725 inst_base->br = TransExtData::NON_BRANCH;
726
727 return inst_base;
728}
729
730static ARM_INST_PTR INTERPRETER_TRANSLATE(qadd)(unsigned int inst, int index) {
731 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst));
732 generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component;
733
734 inst_base->cond = BITS(inst, 28, 31);
735 inst_base->idx = index;
736 inst_base->br = TransExtData::NON_BRANCH;
737
738 inst_cream->op1 = BITS(inst, 21, 22);
739 inst_cream->Rm = BITS(inst, 0, 3);
740 inst_cream->Rn = BITS(inst, 16, 19);
741 inst_cream->Rd = BITS(inst, 12, 15);
742
743 return inst_base;
744}
745static ARM_INST_PTR INTERPRETER_TRANSLATE(qdadd)(unsigned int inst, int index) {
746 return INTERPRETER_TRANSLATE(qadd)(inst, index);
747}
748static ARM_INST_PTR INTERPRETER_TRANSLATE(qdsub)(unsigned int inst, int index) {
749 return INTERPRETER_TRANSLATE(qadd)(inst, index);
750}
751static ARM_INST_PTR INTERPRETER_TRANSLATE(qsub)(unsigned int inst, int index) {
752 return INTERPRETER_TRANSLATE(qadd)(inst, index);
753}
754
755static ARM_INST_PTR INTERPRETER_TRANSLATE(qadd8)(unsigned int inst, int index) {
756 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst));
757 generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component;
758
759 inst_base->cond = BITS(inst, 28, 31);
760 inst_base->idx = index;
761 inst_base->br = TransExtData::NON_BRANCH;
762
763 inst_cream->Rm = BITS(inst, 0, 3);
764 inst_cream->Rn = BITS(inst, 16, 19);
765 inst_cream->Rd = BITS(inst, 12, 15);
766 inst_cream->op1 = BITS(inst, 20, 21);
767 inst_cream->op2 = BITS(inst, 5, 7);
768
769 return inst_base;
770}
771static ARM_INST_PTR INTERPRETER_TRANSLATE(qadd16)(unsigned int inst, int index) {
772 return INTERPRETER_TRANSLATE(qadd8)(inst, index);
773}
774static ARM_INST_PTR INTERPRETER_TRANSLATE(qaddsubx)(unsigned int inst, int index) {
775 return INTERPRETER_TRANSLATE(qadd8)(inst, index);
776}
777static ARM_INST_PTR INTERPRETER_TRANSLATE(qsub8)(unsigned int inst, int index) {
778 return INTERPRETER_TRANSLATE(qadd8)(inst, index);
779}
780static ARM_INST_PTR INTERPRETER_TRANSLATE(qsub16)(unsigned int inst, int index) {
781 return INTERPRETER_TRANSLATE(qadd8)(inst, index);
782}
783static ARM_INST_PTR INTERPRETER_TRANSLATE(qsubaddx)(unsigned int inst, int index) {
784 return INTERPRETER_TRANSLATE(qadd8)(inst, index);
785}
786
787static ARM_INST_PTR INTERPRETER_TRANSLATE(rev)(unsigned int inst, int index) {
788 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(rev_inst));
789 rev_inst* const inst_cream = (rev_inst*)inst_base->component;
790
791 inst_base->cond = BITS(inst, 28, 31);
792 inst_base->idx = index;
793 inst_base->br = TransExtData::NON_BRANCH;
794
795 inst_cream->Rm = BITS(inst, 0, 3);
796 inst_cream->Rd = BITS(inst, 12, 15);
797 inst_cream->op1 = BITS(inst, 20, 22);
798 inst_cream->op2 = BITS(inst, 5, 7);
799
800 return inst_base;
801}
802static ARM_INST_PTR INTERPRETER_TRANSLATE(rev16)(unsigned int inst, int index) {
803 return INTERPRETER_TRANSLATE(rev)(inst, index);
804}
805static ARM_INST_PTR INTERPRETER_TRANSLATE(revsh)(unsigned int inst, int index) {
806 return INTERPRETER_TRANSLATE(rev)(inst, index);
807}
808
809static ARM_INST_PTR INTERPRETER_TRANSLATE(rfe)(unsigned int inst, int index) {
810 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
811 ldst_inst* const inst_cream = (ldst_inst*)inst_base->component;
812
813 inst_base->cond = AL;
814 inst_base->idx = index;
815 inst_base->br = TransExtData::INDIRECT_BRANCH;
816
817 inst_cream->inst = inst;
818 inst_cream->get_addr = GetAddressingOp(inst);
819
820 return inst_base;
821}
822
823static ARM_INST_PTR INTERPRETER_TRANSLATE(rsb)(unsigned int inst, int index) {
824 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(rsb_inst));
825 rsb_inst* inst_cream = (rsb_inst*)inst_base->component;
826
827 inst_base->cond = BITS(inst, 28, 31);
828 inst_base->idx = index;
829 inst_base->br = TransExtData::NON_BRANCH;
830
831 inst_cream->I = BIT(inst, 25);
832 inst_cream->S = BIT(inst, 20);
833 inst_cream->Rn = BITS(inst, 16, 19);
834 inst_cream->Rd = BITS(inst, 12, 15);
835 inst_cream->shifter_operand = BITS(inst, 0, 11);
836 inst_cream->shtop_func = GetShifterOp(inst);
837
838 if (inst_cream->Rd == 15)
839 inst_base->br = TransExtData::INDIRECT_BRANCH;
840
841 return inst_base;
842}
843static ARM_INST_PTR INTERPRETER_TRANSLATE(rsc)(unsigned int inst, int index) {
844 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(rsc_inst));
845 rsc_inst* inst_cream = (rsc_inst*)inst_base->component;
846
847 inst_base->cond = BITS(inst, 28, 31);
848 inst_base->idx = index;
849 inst_base->br = TransExtData::NON_BRANCH;
850
851 inst_cream->I = BIT(inst, 25);
852 inst_cream->S = BIT(inst, 20);
853 inst_cream->Rn = BITS(inst, 16, 19);
854 inst_cream->Rd = BITS(inst, 12, 15);
855 inst_cream->shifter_operand = BITS(inst, 0, 11);
856 inst_cream->shtop_func = GetShifterOp(inst);
857
858 if (inst_cream->Rd == 15)
859 inst_base->br = TransExtData::INDIRECT_BRANCH;
860
861 return inst_base;
862}
863static ARM_INST_PTR INTERPRETER_TRANSLATE(sadd8)(unsigned int inst, int index) {
864 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst));
865 generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component;
866
867 inst_base->cond = BITS(inst, 28, 31);
868 inst_base->idx = index;
869 inst_base->br = TransExtData::NON_BRANCH;
870
871 inst_cream->Rm = BITS(inst, 0, 3);
872 inst_cream->Rn = BITS(inst, 16, 19);
873 inst_cream->Rd = BITS(inst, 12, 15);
874 inst_cream->op1 = BITS(inst, 20, 21);
875 inst_cream->op2 = BITS(inst, 5, 7);
876
877 return inst_base;
878}
879static ARM_INST_PTR INTERPRETER_TRANSLATE(sadd16)(unsigned int inst, int index) {
880 return INTERPRETER_TRANSLATE(sadd8)(inst, index);
881}
882static ARM_INST_PTR INTERPRETER_TRANSLATE(saddsubx)(unsigned int inst, int index) {
883 return INTERPRETER_TRANSLATE(sadd8)(inst, index);
884}
885static ARM_INST_PTR INTERPRETER_TRANSLATE(ssub8)(unsigned int inst, int index) {
886 return INTERPRETER_TRANSLATE(sadd8)(inst, index);
887}
888static ARM_INST_PTR INTERPRETER_TRANSLATE(ssub16)(unsigned int inst, int index) {
889 return INTERPRETER_TRANSLATE(sadd8)(inst, index);
890}
891static ARM_INST_PTR INTERPRETER_TRANSLATE(ssubaddx)(unsigned int inst, int index) {
892 return INTERPRETER_TRANSLATE(sadd8)(inst, index);
893}
894
895static ARM_INST_PTR INTERPRETER_TRANSLATE(sbc)(unsigned int inst, int index) {
896 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(sbc_inst));
897 sbc_inst* inst_cream = (sbc_inst*)inst_base->component;
898
899 inst_base->cond = BITS(inst, 28, 31);
900 inst_base->idx = index;
901 inst_base->br = TransExtData::NON_BRANCH;
902
903 inst_cream->I = BIT(inst, 25);
904 inst_cream->S = BIT(inst, 20);
905 inst_cream->Rn = BITS(inst, 16, 19);
906 inst_cream->Rd = BITS(inst, 12, 15);
907 inst_cream->shifter_operand = BITS(inst, 0, 11);
908 inst_cream->shtop_func = GetShifterOp(inst);
909
910 if (inst_cream->Rd == 15)
911 inst_base->br = TransExtData::INDIRECT_BRANCH;
912
913 return inst_base;
914}
915static ARM_INST_PTR INTERPRETER_TRANSLATE(sel)(unsigned int inst, int index) {
916 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst));
917 generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component;
918
919 inst_base->cond = BITS(inst, 28, 31);
920 inst_base->idx = index;
921 inst_base->br = TransExtData::NON_BRANCH;
922
923 inst_cream->Rm = BITS(inst, 0, 3);
924 inst_cream->Rn = BITS(inst, 16, 19);
925 inst_cream->Rd = BITS(inst, 12, 15);
926 inst_cream->op1 = BITS(inst, 20, 22);
927 inst_cream->op2 = BITS(inst, 5, 7);
928
929 return inst_base;
930}
931
932static ARM_INST_PTR INTERPRETER_TRANSLATE(setend)(unsigned int inst, int index) {
933 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(setend_inst));
934 setend_inst* const inst_cream = (setend_inst*)inst_base->component;
935
936 inst_base->cond = AL;
937 inst_base->idx = index;
938 inst_base->br = TransExtData::NON_BRANCH;
939
940 inst_cream->set_bigend = BIT(inst, 9);
941
942 return inst_base;
943}
944
945static ARM_INST_PTR INTERPRETER_TRANSLATE(sev)(unsigned int inst, int index) {
946 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst));
947
948 inst_base->cond = BITS(inst, 28, 31);
949 inst_base->idx = index;
950 inst_base->br = TransExtData::NON_BRANCH;
951
952 return inst_base;
953}
954
955static ARM_INST_PTR INTERPRETER_TRANSLATE(shadd8)(unsigned int inst, int index) {
956 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst));
957 generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component;
958
959 inst_base->cond = BITS(inst, 28, 31);
960 inst_base->idx = index;
961 inst_base->br = TransExtData::NON_BRANCH;
962
963 inst_cream->op1 = BITS(inst, 20, 21);
964 inst_cream->op2 = BITS(inst, 5, 7);
965 inst_cream->Rm = BITS(inst, 0, 3);
966 inst_cream->Rn = BITS(inst, 16, 19);
967 inst_cream->Rd = BITS(inst, 12, 15);
968
969 return inst_base;
970}
971static ARM_INST_PTR INTERPRETER_TRANSLATE(shadd16)(unsigned int inst, int index) {
972 return INTERPRETER_TRANSLATE(shadd8)(inst, index);
973}
974static ARM_INST_PTR INTERPRETER_TRANSLATE(shaddsubx)(unsigned int inst, int index) {
975 return INTERPRETER_TRANSLATE(shadd8)(inst, index);
976}
977static ARM_INST_PTR INTERPRETER_TRANSLATE(shsub8)(unsigned int inst, int index) {
978 return INTERPRETER_TRANSLATE(shadd8)(inst, index);
979}
980static ARM_INST_PTR INTERPRETER_TRANSLATE(shsub16)(unsigned int inst, int index) {
981 return INTERPRETER_TRANSLATE(shadd8)(inst, index);
982}
983static ARM_INST_PTR INTERPRETER_TRANSLATE(shsubaddx)(unsigned int inst, int index) {
984 return INTERPRETER_TRANSLATE(shadd8)(inst, index);
985}
986
987static ARM_INST_PTR INTERPRETER_TRANSLATE(smla)(unsigned int inst, int index) {
988 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(smla_inst));
989 smla_inst* inst_cream = (smla_inst*)inst_base->component;
990
991 inst_base->cond = BITS(inst, 28, 31);
992 inst_base->idx = index;
993 inst_base->br = TransExtData::NON_BRANCH;
994
995 inst_cream->x = BIT(inst, 5);
996 inst_cream->y = BIT(inst, 6);
997 inst_cream->Rm = BITS(inst, 0, 3);
998 inst_cream->Rs = BITS(inst, 8, 11);
999 inst_cream->Rd = BITS(inst, 16, 19);
1000 inst_cream->Rn = BITS(inst, 12, 15);
1001
1002 return inst_base;
1003}
1004
1005static ARM_INST_PTR INTERPRETER_TRANSLATE(smlad)(unsigned int inst, int index) {
1006 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(smlad_inst));
1007 smlad_inst* const inst_cream = (smlad_inst*)inst_base->component;
1008
1009 inst_base->cond = BITS(inst, 28, 31);
1010 inst_base->idx = index;
1011 inst_base->br = TransExtData::NON_BRANCH;
1012
1013 inst_cream->m = BIT(inst, 5);
1014 inst_cream->Rn = BITS(inst, 0, 3);
1015 inst_cream->Rm = BITS(inst, 8, 11);
1016 inst_cream->Rd = BITS(inst, 16, 19);
1017 inst_cream->Ra = BITS(inst, 12, 15);
1018 inst_cream->op1 = BITS(inst, 20, 22);
1019 inst_cream->op2 = BITS(inst, 5, 7);
1020
1021 return inst_base;
1022}
1023static ARM_INST_PTR INTERPRETER_TRANSLATE(smuad)(unsigned int inst, int index) {
1024 return INTERPRETER_TRANSLATE(smlad)(inst, index);
1025}
1026static ARM_INST_PTR INTERPRETER_TRANSLATE(smusd)(unsigned int inst, int index) {
1027 return INTERPRETER_TRANSLATE(smlad)(inst, index);
1028}
1029static ARM_INST_PTR INTERPRETER_TRANSLATE(smlsd)(unsigned int inst, int index) {
1030 return INTERPRETER_TRANSLATE(smlad)(inst, index);
1031}
1032
1033static ARM_INST_PTR INTERPRETER_TRANSLATE(smlal)(unsigned int inst, int index) {
1034 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(umlal_inst));
1035 umlal_inst* inst_cream = (umlal_inst*)inst_base->component;
1036
1037 inst_base->cond = BITS(inst, 28, 31);
1038 inst_base->idx = index;
1039 inst_base->br = TransExtData::NON_BRANCH;
1040
1041 inst_cream->S = BIT(inst, 20);
1042 inst_cream->Rm = BITS(inst, 0, 3);
1043 inst_cream->Rs = BITS(inst, 8, 11);
1044 inst_cream->RdHi = BITS(inst, 16, 19);
1045 inst_cream->RdLo = BITS(inst, 12, 15);
1046
1047 return inst_base;
1048}
1049
1050static ARM_INST_PTR INTERPRETER_TRANSLATE(smlalxy)(unsigned int inst, int index) {
1051 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(smlalxy_inst));
1052 smlalxy_inst* const inst_cream = (smlalxy_inst*)inst_base->component;
1053
1054 inst_base->cond = BITS(inst, 28, 31);
1055 inst_base->idx = index;
1056 inst_base->br = TransExtData::NON_BRANCH;
1057
1058 inst_cream->x = BIT(inst, 5);
1059 inst_cream->y = BIT(inst, 6);
1060 inst_cream->RdLo = BITS(inst, 12, 15);
1061 inst_cream->RdHi = BITS(inst, 16, 19);
1062 inst_cream->Rn = BITS(inst, 0, 4);
1063 inst_cream->Rm = BITS(inst, 8, 11);
1064
1065 return inst_base;
1066}
1067
1068static ARM_INST_PTR INTERPRETER_TRANSLATE(smlaw)(unsigned int inst, int index) {
1069 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(smlad_inst));
1070 smlad_inst* const inst_cream = (smlad_inst*)inst_base->component;
1071
1072 inst_base->cond = BITS(inst, 28, 31);
1073 inst_base->idx = index;
1074 inst_base->br = TransExtData::NON_BRANCH;
1075
1076 inst_cream->Ra = BITS(inst, 12, 15);
1077 inst_cream->Rm = BITS(inst, 8, 11);
1078 inst_cream->Rn = BITS(inst, 0, 3);
1079 inst_cream->Rd = BITS(inst, 16, 19);
1080 inst_cream->m = BIT(inst, 6);
1081
1082 return inst_base;
1083}
1084
1085static ARM_INST_PTR INTERPRETER_TRANSLATE(smlald)(unsigned int inst, int index) {
1086 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(smlald_inst));
1087 smlald_inst* const inst_cream = (smlald_inst*)inst_base->component;
1088
1089 inst_base->cond = BITS(inst, 28, 31);
1090 inst_base->idx = index;
1091 inst_base->br = TransExtData::NON_BRANCH;
1092
1093 inst_cream->Rm = BITS(inst, 8, 11);
1094 inst_cream->Rn = BITS(inst, 0, 3);
1095 inst_cream->RdLo = BITS(inst, 12, 15);
1096 inst_cream->RdHi = BITS(inst, 16, 19);
1097 inst_cream->swap = BIT(inst, 5);
1098 inst_cream->op1 = BITS(inst, 20, 22);
1099 inst_cream->op2 = BITS(inst, 5, 7);
1100
1101 return inst_base;
1102}
1103static ARM_INST_PTR INTERPRETER_TRANSLATE(smlsld)(unsigned int inst, int index) {
1104 return INTERPRETER_TRANSLATE(smlald)(inst, index);
1105}
1106
1107static ARM_INST_PTR INTERPRETER_TRANSLATE(smmla)(unsigned int inst, int index) {
1108 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(smlad_inst));
1109 smlad_inst* const inst_cream = (smlad_inst*)inst_base->component;
1110
1111 inst_base->cond = BITS(inst, 28, 31);
1112 inst_base->idx = index;
1113 inst_base->br = TransExtData::NON_BRANCH;
1114
1115 inst_cream->m = BIT(inst, 5);
1116 inst_cream->Ra = BITS(inst, 12, 15);
1117 inst_cream->Rm = BITS(inst, 8, 11);
1118 inst_cream->Rn = BITS(inst, 0, 3);
1119 inst_cream->Rd = BITS(inst, 16, 19);
1120 inst_cream->op1 = BITS(inst, 20, 22);
1121 inst_cream->op2 = BITS(inst, 5, 7);
1122
1123 return inst_base;
1124}
1125static ARM_INST_PTR INTERPRETER_TRANSLATE(smmls)(unsigned int inst, int index) {
1126 return INTERPRETER_TRANSLATE(smmla)(inst, index);
1127}
1128static ARM_INST_PTR INTERPRETER_TRANSLATE(smmul)(unsigned int inst, int index) {
1129 return INTERPRETER_TRANSLATE(smmla)(inst, index);
1130}
1131
1132static ARM_INST_PTR INTERPRETER_TRANSLATE(smul)(unsigned int inst, int index) {
1133 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(smul_inst));
1134 smul_inst* inst_cream = (smul_inst*)inst_base->component;
1135
1136 inst_base->cond = BITS(inst, 28, 31);
1137 inst_base->idx = index;
1138 inst_base->br = TransExtData::NON_BRANCH;
1139
1140 inst_cream->Rd = BITS(inst, 16, 19);
1141 inst_cream->Rs = BITS(inst, 8, 11);
1142 inst_cream->Rm = BITS(inst, 0, 3);
1143
1144 inst_cream->x = BIT(inst, 5);
1145 inst_cream->y = BIT(inst, 6);
1146
1147 return inst_base;
1148}
1149static ARM_INST_PTR INTERPRETER_TRANSLATE(smull)(unsigned int inst, int index) {
1150 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(umull_inst));
1151 umull_inst* inst_cream = (umull_inst*)inst_base->component;
1152
1153 inst_base->cond = BITS(inst, 28, 31);
1154 inst_base->idx = index;
1155 inst_base->br = TransExtData::NON_BRANCH;
1156
1157 inst_cream->S = BIT(inst, 20);
1158 inst_cream->Rm = BITS(inst, 0, 3);
1159 inst_cream->Rs = BITS(inst, 8, 11);
1160 inst_cream->RdHi = BITS(inst, 16, 19);
1161 inst_cream->RdLo = BITS(inst, 12, 15);
1162
1163 return inst_base;
1164}
1165
1166static ARM_INST_PTR INTERPRETER_TRANSLATE(smulw)(unsigned int inst, int index) {
1167 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(smlad_inst));
1168 smlad_inst* inst_cream = (smlad_inst*)inst_base->component;
1169
1170 inst_base->cond = BITS(inst, 28, 31);
1171 inst_base->idx = index;
1172 inst_base->br = TransExtData::NON_BRANCH;
1173
1174 inst_cream->m = BIT(inst, 6);
1175 inst_cream->Rm = BITS(inst, 8, 11);
1176 inst_cream->Rn = BITS(inst, 0, 3);
1177 inst_cream->Rd = BITS(inst, 16, 19);
1178
1179 return inst_base;
1180}
1181
1182static ARM_INST_PTR INTERPRETER_TRANSLATE(srs)(unsigned int inst, int index) {
1183 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
1184 ldst_inst* const inst_cream = (ldst_inst*)inst_base->component;
1185
1186 inst_base->cond = AL;
1187 inst_base->idx = index;
1188 inst_base->br = TransExtData::NON_BRANCH;
1189
1190 inst_cream->inst = inst;
1191 inst_cream->get_addr = GetAddressingOp(inst);
1192
1193 return inst_base;
1194}
1195
1196static ARM_INST_PTR INTERPRETER_TRANSLATE(ssat)(unsigned int inst, int index) {
1197 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ssat_inst));
1198 ssat_inst* const inst_cream = (ssat_inst*)inst_base->component;
1199
1200 inst_base->cond = BITS(inst, 28, 31);
1201 inst_base->idx = index;
1202 inst_base->br = TransExtData::NON_BRANCH;
1203
1204 inst_cream->Rn = BITS(inst, 0, 3);
1205 inst_cream->Rd = BITS(inst, 12, 15);
1206 inst_cream->imm5 = BITS(inst, 7, 11);
1207 inst_cream->sat_imm = BITS(inst, 16, 20);
1208 inst_cream->shift_type = BIT(inst, 6);
1209
1210 return inst_base;
1211}
1212static ARM_INST_PTR INTERPRETER_TRANSLATE(ssat16)(unsigned int inst, int index) {
1213 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ssat_inst));
1214 ssat_inst* const inst_cream = (ssat_inst*)inst_base->component;
1215
1216 inst_base->cond = BITS(inst, 28, 31);
1217 inst_base->idx = index;
1218 inst_base->br = TransExtData::NON_BRANCH;
1219
1220 inst_cream->Rn = BITS(inst, 0, 3);
1221 inst_cream->Rd = BITS(inst, 12, 15);
1222 inst_cream->sat_imm = BITS(inst, 16, 19);
1223
1224 return inst_base;
1225}
1226
1227static ARM_INST_PTR INTERPRETER_TRANSLATE(stc)(unsigned int inst, int index) {
1228 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(stc_inst));
1229 inst_base->cond = BITS(inst, 28, 31);
1230 inst_base->idx = index;
1231 inst_base->br = TransExtData::NON_BRANCH;
1232
1233 return inst_base;
1234}
1235static ARM_INST_PTR INTERPRETER_TRANSLATE(stm)(unsigned int inst, int index) {
1236 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
1237 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
1238
1239 inst_base->cond = BITS(inst, 28, 31);
1240 inst_base->idx = index;
1241 inst_base->br = TransExtData::NON_BRANCH;
1242
1243 inst_cream->inst = inst;
1244 inst_cream->get_addr = GetAddressingOp(inst);
1245 return inst_base;
1246}
1247static ARM_INST_PTR INTERPRETER_TRANSLATE(sxtb)(unsigned int inst, int index) {
1248 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(sxtb_inst));
1249 sxtb_inst* inst_cream = (sxtb_inst*)inst_base->component;
1250
1251 inst_base->cond = BITS(inst, 28, 31);
1252 inst_base->idx = index;
1253 inst_base->br = TransExtData::NON_BRANCH;
1254
1255 inst_cream->Rd = BITS(inst, 12, 15);
1256 inst_cream->Rm = BITS(inst, 0, 3);
1257 inst_cream->rotate = BITS(inst, 10, 11);
1258
1259 return inst_base;
1260}
1261static ARM_INST_PTR INTERPRETER_TRANSLATE(str)(unsigned int inst, int index) {
1262 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
1263 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
1264
1265 inst_base->cond = BITS(inst, 28, 31);
1266 inst_base->idx = index;
1267 inst_base->br = TransExtData::NON_BRANCH;
1268
1269 inst_cream->inst = inst;
1270 inst_cream->get_addr = GetAddressingOp(inst);
1271
1272 return inst_base;
1273}
1274static ARM_INST_PTR INTERPRETER_TRANSLATE(uxtb)(unsigned int inst, int index) {
1275 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(uxth_inst));
1276 uxth_inst* inst_cream = (uxth_inst*)inst_base->component;
1277
1278 inst_base->cond = BITS(inst, 28, 31);
1279 inst_base->idx = index;
1280 inst_base->br = TransExtData::NON_BRANCH;
1281
1282 inst_cream->Rd = BITS(inst, 12, 15);
1283 inst_cream->rotate = BITS(inst, 10, 11);
1284 inst_cream->Rm = BITS(inst, 0, 3);
1285
1286 return inst_base;
1287}
1288static ARM_INST_PTR INTERPRETER_TRANSLATE(uxtab)(unsigned int inst, int index) {
1289 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(uxtab_inst));
1290 uxtab_inst* inst_cream = (uxtab_inst*)inst_base->component;
1291
1292 inst_base->cond = BITS(inst, 28, 31);
1293 inst_base->idx = index;
1294 inst_base->br = TransExtData::NON_BRANCH;
1295
1296 inst_cream->Rd = BITS(inst, 12, 15);
1297 inst_cream->rotate = BITS(inst, 10, 11);
1298 inst_cream->Rm = BITS(inst, 0, 3);
1299 inst_cream->Rn = BITS(inst, 16, 19);
1300
1301 return inst_base;
1302}
1303static ARM_INST_PTR INTERPRETER_TRANSLATE(strb)(unsigned int inst, int index) {
1304 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
1305 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
1306
1307 inst_base->cond = BITS(inst, 28, 31);
1308 inst_base->idx = index;
1309 inst_base->br = TransExtData::NON_BRANCH;
1310
1311 inst_cream->inst = inst;
1312 inst_cream->get_addr = GetAddressingOp(inst);
1313
1314 return inst_base;
1315}
1316static ARM_INST_PTR INTERPRETER_TRANSLATE(strbt)(unsigned int inst, int index) {
1317 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
1318 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
1319
1320 inst_base->cond = BITS(inst, 28, 31);
1321 inst_base->idx = index;
1322 inst_base->br = TransExtData::NON_BRANCH;
1323
1324 inst_cream->inst = inst;
1325 inst_cream->get_addr = GetAddressingOpLoadStoreT(inst);
1326
1327 return inst_base;
1328}
1329static ARM_INST_PTR INTERPRETER_TRANSLATE(strd)(unsigned int inst, int index) {
1330 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
1331 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
1332
1333 inst_base->cond = BITS(inst, 28, 31);
1334 inst_base->idx = index;
1335 inst_base->br = TransExtData::NON_BRANCH;
1336
1337 inst_cream->inst = inst;
1338 inst_cream->get_addr = GetAddressingOp(inst);
1339
1340 return inst_base;
1341}
1342static ARM_INST_PTR INTERPRETER_TRANSLATE(strex)(unsigned int inst, int index) {
1343 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst));
1344 generic_arm_inst* inst_cream = (generic_arm_inst*)inst_base->component;
1345
1346 inst_base->cond = BITS(inst, 28, 31);
1347 inst_base->idx = index;
1348 inst_base->br = TransExtData::NON_BRANCH;
1349
1350 inst_cream->Rn = BITS(inst, 16, 19);
1351 inst_cream->Rd = BITS(inst, 12, 15);
1352 inst_cream->Rm = BITS(inst, 0, 3);
1353
1354 return inst_base;
1355}
1356static ARM_INST_PTR INTERPRETER_TRANSLATE(strexb)(unsigned int inst, int index) {
1357 return INTERPRETER_TRANSLATE(strex)(inst, index);
1358}
1359static ARM_INST_PTR INTERPRETER_TRANSLATE(strexh)(unsigned int inst, int index) {
1360 return INTERPRETER_TRANSLATE(strex)(inst, index);
1361}
1362static ARM_INST_PTR INTERPRETER_TRANSLATE(strexd)(unsigned int inst, int index) {
1363 return INTERPRETER_TRANSLATE(strex)(inst, index);
1364}
1365static ARM_INST_PTR INTERPRETER_TRANSLATE(strh)(unsigned int inst, int index) {
1366 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
1367 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
1368
1369 inst_base->cond = BITS(inst, 28, 31);
1370 inst_base->idx = index;
1371 inst_base->br = TransExtData::NON_BRANCH;
1372
1373 inst_cream->inst = inst;
1374 inst_cream->get_addr = GetAddressingOp(inst);
1375
1376 return inst_base;
1377}
1378static ARM_INST_PTR INTERPRETER_TRANSLATE(strt)(unsigned int inst, int index) {
1379 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst));
1380 ldst_inst* inst_cream = (ldst_inst*)inst_base->component;
1381
1382 inst_base->cond = BITS(inst, 28, 31);
1383 inst_base->idx = index;
1384 inst_base->br = TransExtData::NON_BRANCH;
1385
1386 inst_cream->inst = inst;
1387 inst_cream->get_addr = GetAddressingOpLoadStoreT(inst);
1388
1389 return inst_base;
1390}
1391static ARM_INST_PTR INTERPRETER_TRANSLATE(sub)(unsigned int inst, int index) {
1392 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(sub_inst));
1393 sub_inst* inst_cream = (sub_inst*)inst_base->component;
1394
1395 inst_base->cond = BITS(inst, 28, 31);
1396 inst_base->idx = index;
1397 inst_base->br = TransExtData::NON_BRANCH;
1398
1399 inst_cream->I = BIT(inst, 25);
1400 inst_cream->S = BIT(inst, 20);
1401 inst_cream->Rn = BITS(inst, 16, 19);
1402 inst_cream->Rd = BITS(inst, 12, 15);
1403 inst_cream->shifter_operand = BITS(inst, 0, 11);
1404 inst_cream->shtop_func = GetShifterOp(inst);
1405
1406 if (inst_cream->Rd == 15)
1407 inst_base->br = TransExtData::INDIRECT_BRANCH;
1408
1409 return inst_base;
1410}
1411static ARM_INST_PTR INTERPRETER_TRANSLATE(swi)(unsigned int inst, int index) {
1412 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(swi_inst));
1413 swi_inst* inst_cream = (swi_inst*)inst_base->component;
1414
1415 inst_base->cond = BITS(inst, 28, 31);
1416 inst_base->idx = index;
1417 inst_base->br = TransExtData::NON_BRANCH;
1418
1419 inst_cream->num = BITS(inst, 0, 23);
1420 return inst_base;
1421}
1422static ARM_INST_PTR INTERPRETER_TRANSLATE(swp)(unsigned int inst, int index) {
1423 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(swp_inst));
1424 swp_inst* inst_cream = (swp_inst*)inst_base->component;
1425
1426 inst_base->cond = BITS(inst, 28, 31);
1427 inst_base->idx = index;
1428 inst_base->br = TransExtData::NON_BRANCH;
1429
1430 inst_cream->Rn = BITS(inst, 16, 19);
1431 inst_cream->Rd = BITS(inst, 12, 15);
1432 inst_cream->Rm = BITS(inst, 0, 3);
1433
1434 return inst_base;
1435}
1436static ARM_INST_PTR INTERPRETER_TRANSLATE(swpb)(unsigned int inst, int index) {
1437 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(swp_inst));
1438 swp_inst* inst_cream = (swp_inst*)inst_base->component;
1439
1440 inst_base->cond = BITS(inst, 28, 31);
1441 inst_base->idx = index;
1442 inst_base->br = TransExtData::NON_BRANCH;
1443
1444 inst_cream->Rn = BITS(inst, 16, 19);
1445 inst_cream->Rd = BITS(inst, 12, 15);
1446 inst_cream->Rm = BITS(inst, 0, 3);
1447
1448 return inst_base;
1449}
1450static ARM_INST_PTR INTERPRETER_TRANSLATE(sxtab)(unsigned int inst, int index) {
1451 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(sxtab_inst));
1452 sxtab_inst* inst_cream = (sxtab_inst*)inst_base->component;
1453
1454 inst_base->cond = BITS(inst, 28, 31);
1455 inst_base->idx = index;
1456 inst_base->br = TransExtData::NON_BRANCH;
1457
1458 inst_cream->Rd = BITS(inst, 12, 15);
1459 inst_cream->rotate = BITS(inst, 10, 11);
1460 inst_cream->Rm = BITS(inst, 0, 3);
1461 inst_cream->Rn = BITS(inst, 16, 19);
1462
1463 return inst_base;
1464}
1465
1466static ARM_INST_PTR INTERPRETER_TRANSLATE(sxtab16)(unsigned int inst, int index) {
1467 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(sxtab_inst));
1468 sxtab_inst* const inst_cream = (sxtab_inst*)inst_base->component;
1469
1470 inst_base->cond = BITS(inst, 28, 31);
1471 inst_base->idx = index;
1472 inst_base->br = TransExtData::NON_BRANCH;
1473
1474 inst_cream->Rm = BITS(inst, 0, 3);
1475 inst_cream->Rn = BITS(inst, 16, 19);
1476 inst_cream->Rd = BITS(inst, 12, 15);
1477 inst_cream->rotate = BITS(inst, 10, 11);
1478
1479 return inst_base;
1480}
1481static ARM_INST_PTR INTERPRETER_TRANSLATE(sxtb16)(unsigned int inst, int index) {
1482 return INTERPRETER_TRANSLATE(sxtab16)(inst, index);
1483}
1484
1485static ARM_INST_PTR INTERPRETER_TRANSLATE(sxtah)(unsigned int inst, int index) {
1486 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(sxtah_inst));
1487 sxtah_inst* inst_cream = (sxtah_inst*)inst_base->component;
1488
1489 inst_base->cond = BITS(inst, 28, 31);
1490 inst_base->idx = index;
1491 inst_base->br = TransExtData::NON_BRANCH;
1492
1493 inst_cream->Rd = BITS(inst, 12, 15);
1494 inst_cream->rotate = BITS(inst, 10, 11);
1495 inst_cream->Rm = BITS(inst, 0, 3);
1496 inst_cream->Rn = BITS(inst, 16, 19);
1497
1498 return inst_base;
1499}
1500
1501static ARM_INST_PTR INTERPRETER_TRANSLATE(teq)(unsigned int inst, int index) {
1502 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(teq_inst));
1503 teq_inst* inst_cream = (teq_inst*)inst_base->component;
1504
1505 inst_base->cond = BITS(inst, 28, 31);
1506 inst_base->idx = index;
1507 inst_base->br = TransExtData::NON_BRANCH;
1508
1509 inst_cream->I = BIT(inst, 25);
1510 inst_cream->Rn = BITS(inst, 16, 19);
1511 inst_cream->shifter_operand = BITS(inst, 0, 11);
1512 inst_cream->shtop_func = GetShifterOp(inst);
1513
1514 return inst_base;
1515}
1516static ARM_INST_PTR INTERPRETER_TRANSLATE(tst)(unsigned int inst, int index) {
1517 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(tst_inst));
1518 tst_inst* inst_cream = (tst_inst*)inst_base->component;
1519
1520 inst_base->cond = BITS(inst, 28, 31);
1521 inst_base->idx = index;
1522 inst_base->br = TransExtData::NON_BRANCH;
1523
1524 inst_cream->I = BIT(inst, 25);
1525 inst_cream->S = BIT(inst, 20);
1526 inst_cream->Rn = BITS(inst, 16, 19);
1527 inst_cream->Rd = BITS(inst, 12, 15);
1528 inst_cream->shifter_operand = BITS(inst, 0, 11);
1529 inst_cream->shtop_func = GetShifterOp(inst);
1530
1531 return inst_base;
1532}
1533
1534static ARM_INST_PTR INTERPRETER_TRANSLATE(uadd8)(unsigned int inst, int index) {
1535 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst));
1536 generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component;
1537
1538 inst_base->cond = BITS(inst, 28, 31);
1539 inst_base->idx = index;
1540 inst_base->br = TransExtData::NON_BRANCH;
1541
1542 inst_cream->op1 = BITS(inst, 20, 21);
1543 inst_cream->op2 = BITS(inst, 5, 7);
1544 inst_cream->Rm = BITS(inst, 0, 3);
1545 inst_cream->Rn = BITS(inst, 16, 19);
1546 inst_cream->Rd = BITS(inst, 12, 15);
1547
1548 return inst_base;
1549}
1550static ARM_INST_PTR INTERPRETER_TRANSLATE(uadd16)(unsigned int inst, int index) {
1551 return INTERPRETER_TRANSLATE(uadd8)(inst, index);
1552}
1553static ARM_INST_PTR INTERPRETER_TRANSLATE(uaddsubx)(unsigned int inst, int index) {
1554 return INTERPRETER_TRANSLATE(uadd8)(inst, index);
1555}
1556static ARM_INST_PTR INTERPRETER_TRANSLATE(usub8)(unsigned int inst, int index) {
1557 return INTERPRETER_TRANSLATE(uadd8)(inst, index);
1558}
1559static ARM_INST_PTR INTERPRETER_TRANSLATE(usub16)(unsigned int inst, int index) {
1560 return INTERPRETER_TRANSLATE(uadd8)(inst, index);
1561}
1562static ARM_INST_PTR INTERPRETER_TRANSLATE(usubaddx)(unsigned int inst, int index) {
1563 return INTERPRETER_TRANSLATE(uadd8)(inst, index);
1564}
1565
1566static ARM_INST_PTR INTERPRETER_TRANSLATE(uhadd8)(unsigned int inst, int index) {
1567 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst));
1568 generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component;
1569
1570 inst_base->cond = BITS(inst, 28, 31);
1571 inst_base->idx = index;
1572 inst_base->br = TransExtData::NON_BRANCH;
1573
1574 inst_cream->op1 = BITS(inst, 20, 21);
1575 inst_cream->op2 = BITS(inst, 5, 7);
1576 inst_cream->Rm = BITS(inst, 0, 3);
1577 inst_cream->Rn = BITS(inst, 16, 19);
1578 inst_cream->Rd = BITS(inst, 12, 15);
1579
1580 return inst_base;
1581}
1582static ARM_INST_PTR INTERPRETER_TRANSLATE(uhadd16)(unsigned int inst, int index) {
1583 return INTERPRETER_TRANSLATE(uhadd8)(inst, index);
1584}
1585static ARM_INST_PTR INTERPRETER_TRANSLATE(uhaddsubx)(unsigned int inst, int index) {
1586 return INTERPRETER_TRANSLATE(uhadd8)(inst, index);
1587}
1588static ARM_INST_PTR INTERPRETER_TRANSLATE(uhsub8)(unsigned int inst, int index) {
1589 return INTERPRETER_TRANSLATE(uhadd8)(inst, index);
1590}
1591static ARM_INST_PTR INTERPRETER_TRANSLATE(uhsub16)(unsigned int inst, int index) {
1592 return INTERPRETER_TRANSLATE(uhadd8)(inst, index);
1593}
1594static ARM_INST_PTR INTERPRETER_TRANSLATE(uhsubaddx)(unsigned int inst, int index) {
1595 return INTERPRETER_TRANSLATE(uhadd8)(inst, index);
1596}
1597static ARM_INST_PTR INTERPRETER_TRANSLATE(umaal)(unsigned int inst, int index) {
1598 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(umaal_inst));
1599 umaal_inst* const inst_cream = (umaal_inst*)inst_base->component;
1600
1601 inst_base->cond = BITS(inst, 28, 31);
1602 inst_base->idx = index;
1603 inst_base->br = TransExtData::NON_BRANCH;
1604
1605 inst_cream->Rm = BITS(inst, 8, 11);
1606 inst_cream->Rn = BITS(inst, 0, 3);
1607 inst_cream->RdLo = BITS(inst, 12, 15);
1608 inst_cream->RdHi = BITS(inst, 16, 19);
1609
1610 return inst_base;
1611}
1612static ARM_INST_PTR INTERPRETER_TRANSLATE(umlal)(unsigned int inst, int index) {
1613 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(umlal_inst));
1614 umlal_inst* inst_cream = (umlal_inst*)inst_base->component;
1615
1616 inst_base->cond = BITS(inst, 28, 31);
1617 inst_base->idx = index;
1618 inst_base->br = TransExtData::NON_BRANCH;
1619
1620 inst_cream->S = BIT(inst, 20);
1621 inst_cream->Rm = BITS(inst, 0, 3);
1622 inst_cream->Rs = BITS(inst, 8, 11);
1623 inst_cream->RdHi = BITS(inst, 16, 19);
1624 inst_cream->RdLo = BITS(inst, 12, 15);
1625
1626 return inst_base;
1627}
1628static ARM_INST_PTR INTERPRETER_TRANSLATE(umull)(unsigned int inst, int index) {
1629 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(umull_inst));
1630 umull_inst* inst_cream = (umull_inst*)inst_base->component;
1631
1632 inst_base->cond = BITS(inst, 28, 31);
1633 inst_base->idx = index;
1634 inst_base->br = TransExtData::NON_BRANCH;
1635
1636 inst_cream->S = BIT(inst, 20);
1637 inst_cream->Rm = BITS(inst, 0, 3);
1638 inst_cream->Rs = BITS(inst, 8, 11);
1639 inst_cream->RdHi = BITS(inst, 16, 19);
1640 inst_cream->RdLo = BITS(inst, 12, 15);
1641
1642 return inst_base;
1643}
1644
1645static ARM_INST_PTR INTERPRETER_TRANSLATE(b_2_thumb)(unsigned int tinst, int index) {
1646 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(b_2_thumb));
1647 b_2_thumb* inst_cream = (b_2_thumb*)inst_base->component;
1648
1649 inst_cream->imm = ((tinst & 0x3FF) << 1) | ((tinst & (1 << 10)) ? 0xFFFFF800 : 0);
1650
1651 inst_base->idx = index;
1652 inst_base->br = TransExtData::DIRECT_BRANCH;
1653
1654 return inst_base;
1655}
1656
1657static ARM_INST_PTR INTERPRETER_TRANSLATE(b_cond_thumb)(unsigned int tinst, int index) {
1658 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(b_cond_thumb));
1659 b_cond_thumb* inst_cream = (b_cond_thumb*)inst_base->component;
1660
1661 inst_cream->imm = (((tinst & 0x7F) << 1) | ((tinst & (1 << 7)) ? 0xFFFFFF00 : 0));
1662 inst_cream->cond = ((tinst >> 8) & 0xf);
1663 inst_base->idx = index;
1664 inst_base->br = TransExtData::DIRECT_BRANCH;
1665
1666 return inst_base;
1667}
1668
1669static ARM_INST_PTR INTERPRETER_TRANSLATE(bl_1_thumb)(unsigned int tinst, int index) {
1670 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(bl_1_thumb));
1671 bl_1_thumb* inst_cream = (bl_1_thumb*)inst_base->component;
1672
1673 inst_cream->imm = (((tinst & 0x07FF) << 12) | ((tinst & (1 << 10)) ? 0xFF800000 : 0));
1674
1675 inst_base->idx = index;
1676 inst_base->br = TransExtData::NON_BRANCH;
1677 return inst_base;
1678}
1679static ARM_INST_PTR INTERPRETER_TRANSLATE(bl_2_thumb)(unsigned int tinst, int index) {
1680 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(bl_2_thumb));
1681 bl_2_thumb* inst_cream = (bl_2_thumb*)inst_base->component;
1682
1683 inst_cream->imm = (tinst & 0x07FF) << 1;
1684
1685 inst_base->idx = index;
1686 inst_base->br = TransExtData::DIRECT_BRANCH;
1687 return inst_base;
1688}
1689static ARM_INST_PTR INTERPRETER_TRANSLATE(blx_1_thumb)(unsigned int tinst, int index) {
1690 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(blx_1_thumb));
1691 blx_1_thumb* inst_cream = (blx_1_thumb*)inst_base->component;
1692
1693 inst_cream->imm = (tinst & 0x07FF) << 1;
1694 inst_cream->instr = tinst;
1695
1696 inst_base->idx = index;
1697 inst_base->br = TransExtData::DIRECT_BRANCH;
1698 return inst_base;
1699}
1700
1701static ARM_INST_PTR INTERPRETER_TRANSLATE(uqadd8)(unsigned int inst, int index) {
1702 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst));
1703 generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component;
1704
1705 inst_base->cond = BITS(inst, 28, 31);
1706 inst_base->idx = index;
1707 inst_base->br = TransExtData::NON_BRANCH;
1708
1709 inst_cream->Rm = BITS(inst, 0, 3);
1710 inst_cream->Rn = BITS(inst, 16, 19);
1711 inst_cream->Rd = BITS(inst, 12, 15);
1712 inst_cream->op1 = BITS(inst, 20, 21);
1713 inst_cream->op2 = BITS(inst, 5, 7);
1714
1715 return inst_base;
1716}
1717static ARM_INST_PTR INTERPRETER_TRANSLATE(uqadd16)(unsigned int inst, int index) {
1718 return INTERPRETER_TRANSLATE(uqadd8)(inst, index);
1719}
1720static ARM_INST_PTR INTERPRETER_TRANSLATE(uqaddsubx)(unsigned int inst, int index) {
1721 return INTERPRETER_TRANSLATE(uqadd8)(inst, index);
1722}
1723static ARM_INST_PTR INTERPRETER_TRANSLATE(uqsub8)(unsigned int inst, int index) {
1724 return INTERPRETER_TRANSLATE(uqadd8)(inst, index);
1725}
1726static ARM_INST_PTR INTERPRETER_TRANSLATE(uqsub16)(unsigned int inst, int index) {
1727 return INTERPRETER_TRANSLATE(uqadd8)(inst, index);
1728}
1729static ARM_INST_PTR INTERPRETER_TRANSLATE(uqsubaddx)(unsigned int inst, int index) {
1730 return INTERPRETER_TRANSLATE(uqadd8)(inst, index);
1731}
1732static ARM_INST_PTR INTERPRETER_TRANSLATE(usada8)(unsigned int inst, int index) {
1733 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst));
1734 generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component;
1735
1736 inst_base->cond = BITS(inst, 28, 31);
1737 inst_base->idx = index;
1738 inst_base->br = TransExtData::NON_BRANCH;
1739
1740 inst_cream->op1 = BITS(inst, 20, 24);
1741 inst_cream->op2 = BITS(inst, 5, 7);
1742 inst_cream->Rd = BITS(inst, 16, 19);
1743 inst_cream->Rm = BITS(inst, 8, 11);
1744 inst_cream->Rn = BITS(inst, 0, 3);
1745 inst_cream->Ra = BITS(inst, 12, 15);
1746
1747 return inst_base;
1748}
1749static ARM_INST_PTR INTERPRETER_TRANSLATE(usad8)(unsigned int inst, int index) {
1750 return INTERPRETER_TRANSLATE(usada8)(inst, index);
1751}
1752static ARM_INST_PTR INTERPRETER_TRANSLATE(usat)(unsigned int inst, int index) {
1753 return INTERPRETER_TRANSLATE(ssat)(inst, index);
1754}
1755static ARM_INST_PTR INTERPRETER_TRANSLATE(usat16)(unsigned int inst, int index) {
1756 return INTERPRETER_TRANSLATE(ssat16)(inst, index);
1757}
1758
1759static ARM_INST_PTR INTERPRETER_TRANSLATE(uxtab16)(unsigned int inst, int index) {
1760 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(uxtab_inst));
1761 uxtab_inst* const inst_cream = (uxtab_inst*)inst_base->component;
1762
1763 inst_base->cond = BITS(inst, 28, 31);
1764 inst_base->idx = index;
1765 inst_base->br = TransExtData::NON_BRANCH;
1766
1767 inst_cream->Rm = BITS(inst, 0, 3);
1768 inst_cream->Rn = BITS(inst, 16, 19);
1769 inst_cream->Rd = BITS(inst, 12, 15);
1770 inst_cream->rotate = BITS(inst, 10, 11);
1771
1772 return inst_base;
1773}
1774static ARM_INST_PTR INTERPRETER_TRANSLATE(uxtb16)(unsigned int inst, int index) {
1775 return INTERPRETER_TRANSLATE(uxtab16)(inst, index);
1776}
1777
1778static ARM_INST_PTR INTERPRETER_TRANSLATE(wfe)(unsigned int inst, int index) {
1779 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst));
1780
1781 inst_base->cond = BITS(inst, 28, 31);
1782 inst_base->idx = index;
1783 inst_base->br = TransExtData::NON_BRANCH;
1784
1785 return inst_base;
1786}
1787static ARM_INST_PTR INTERPRETER_TRANSLATE(wfi)(unsigned int inst, int index) {
1788 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst));
1789
1790 inst_base->cond = BITS(inst, 28, 31);
1791 inst_base->idx = index;
1792 inst_base->br = TransExtData::NON_BRANCH;
1793
1794 return inst_base;
1795}
1796static ARM_INST_PTR INTERPRETER_TRANSLATE(yield)(unsigned int inst, int index) {
1797 arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst));
1798
1799 inst_base->cond = BITS(inst, 28, 31);
1800 inst_base->idx = index;
1801 inst_base->br = TransExtData::NON_BRANCH;
1802
1803 return inst_base;
1804}
1805
1806// Floating point VFPv3 instructions
1807#define VFP_INTERPRETER_TRANS
1808#include "core/arm/skyeye_common/vfp/vfpinstr.cpp"
1809#undef VFP_INTERPRETER_TRANS
1810
1811const transop_fp_t arm_instruction_trans[] = {
1812 INTERPRETER_TRANSLATE(vmla), INTERPRETER_TRANSLATE(vmls), INTERPRETER_TRANSLATE(vnmla),
1813 INTERPRETER_TRANSLATE(vnmls), INTERPRETER_TRANSLATE(vnmul), INTERPRETER_TRANSLATE(vmul),
1814 INTERPRETER_TRANSLATE(vadd), INTERPRETER_TRANSLATE(vsub), INTERPRETER_TRANSLATE(vdiv),
1815 INTERPRETER_TRANSLATE(vmovi), INTERPRETER_TRANSLATE(vmovr), INTERPRETER_TRANSLATE(vabs),
1816 INTERPRETER_TRANSLATE(vneg), INTERPRETER_TRANSLATE(vsqrt), INTERPRETER_TRANSLATE(vcmp),
1817 INTERPRETER_TRANSLATE(vcmp2), INTERPRETER_TRANSLATE(vcvtbds), INTERPRETER_TRANSLATE(vcvtbff),
1818 INTERPRETER_TRANSLATE(vcvtbfi), INTERPRETER_TRANSLATE(vmovbrs), INTERPRETER_TRANSLATE(vmsr),
1819 INTERPRETER_TRANSLATE(vmovbrc), INTERPRETER_TRANSLATE(vmrs), INTERPRETER_TRANSLATE(vmovbcr),
1820 INTERPRETER_TRANSLATE(vmovbrrss), INTERPRETER_TRANSLATE(vmovbrrd), INTERPRETER_TRANSLATE(vstr),
1821 INTERPRETER_TRANSLATE(vpush), INTERPRETER_TRANSLATE(vstm), INTERPRETER_TRANSLATE(vpop),
1822 INTERPRETER_TRANSLATE(vldr), INTERPRETER_TRANSLATE(vldm),
1823
1824 INTERPRETER_TRANSLATE(srs), INTERPRETER_TRANSLATE(rfe), INTERPRETER_TRANSLATE(bkpt),
1825 INTERPRETER_TRANSLATE(blx), INTERPRETER_TRANSLATE(cps), INTERPRETER_TRANSLATE(pld),
1826 INTERPRETER_TRANSLATE(setend), INTERPRETER_TRANSLATE(clrex), INTERPRETER_TRANSLATE(rev16),
1827 INTERPRETER_TRANSLATE(usad8), INTERPRETER_TRANSLATE(sxtb), INTERPRETER_TRANSLATE(uxtb),
1828 INTERPRETER_TRANSLATE(sxth), INTERPRETER_TRANSLATE(sxtb16), INTERPRETER_TRANSLATE(uxth),
1829 INTERPRETER_TRANSLATE(uxtb16), INTERPRETER_TRANSLATE(cpy), INTERPRETER_TRANSLATE(uxtab),
1830 INTERPRETER_TRANSLATE(ssub8), INTERPRETER_TRANSLATE(shsub8), INTERPRETER_TRANSLATE(ssubaddx),
1831 INTERPRETER_TRANSLATE(strex), INTERPRETER_TRANSLATE(strexb), INTERPRETER_TRANSLATE(swp),
1832 INTERPRETER_TRANSLATE(swpb), INTERPRETER_TRANSLATE(ssub16), INTERPRETER_TRANSLATE(ssat16),
1833 INTERPRETER_TRANSLATE(shsubaddx), INTERPRETER_TRANSLATE(qsubaddx),
1834 INTERPRETER_TRANSLATE(shaddsubx), INTERPRETER_TRANSLATE(shadd8), INTERPRETER_TRANSLATE(shadd16),
1835 INTERPRETER_TRANSLATE(sel), INTERPRETER_TRANSLATE(saddsubx), INTERPRETER_TRANSLATE(sadd8),
1836 INTERPRETER_TRANSLATE(sadd16), INTERPRETER_TRANSLATE(shsub16), INTERPRETER_TRANSLATE(umaal),
1837 INTERPRETER_TRANSLATE(uxtab16), INTERPRETER_TRANSLATE(usubaddx), INTERPRETER_TRANSLATE(usub8),
1838 INTERPRETER_TRANSLATE(usub16), INTERPRETER_TRANSLATE(usat16), INTERPRETER_TRANSLATE(usada8),
1839 INTERPRETER_TRANSLATE(uqsubaddx), INTERPRETER_TRANSLATE(uqsub8), INTERPRETER_TRANSLATE(uqsub16),
1840 INTERPRETER_TRANSLATE(uqaddsubx), INTERPRETER_TRANSLATE(uqadd8), INTERPRETER_TRANSLATE(uqadd16),
1841 INTERPRETER_TRANSLATE(sxtab), INTERPRETER_TRANSLATE(uhsubaddx), INTERPRETER_TRANSLATE(uhsub8),
1842 INTERPRETER_TRANSLATE(uhsub16), INTERPRETER_TRANSLATE(uhaddsubx), INTERPRETER_TRANSLATE(uhadd8),
1843 INTERPRETER_TRANSLATE(uhadd16), INTERPRETER_TRANSLATE(uaddsubx), INTERPRETER_TRANSLATE(uadd8),
1844 INTERPRETER_TRANSLATE(uadd16), INTERPRETER_TRANSLATE(sxtah), INTERPRETER_TRANSLATE(sxtab16),
1845 INTERPRETER_TRANSLATE(qadd8), INTERPRETER_TRANSLATE(bxj), INTERPRETER_TRANSLATE(clz),
1846 INTERPRETER_TRANSLATE(uxtah), INTERPRETER_TRANSLATE(bx), INTERPRETER_TRANSLATE(rev),
1847 INTERPRETER_TRANSLATE(blx), INTERPRETER_TRANSLATE(revsh), INTERPRETER_TRANSLATE(qadd),
1848 INTERPRETER_TRANSLATE(qadd16), INTERPRETER_TRANSLATE(qaddsubx), INTERPRETER_TRANSLATE(ldrex),
1849 INTERPRETER_TRANSLATE(qdadd), INTERPRETER_TRANSLATE(qdsub), INTERPRETER_TRANSLATE(qsub),
1850 INTERPRETER_TRANSLATE(ldrexb), INTERPRETER_TRANSLATE(qsub8), INTERPRETER_TRANSLATE(qsub16),
1851 INTERPRETER_TRANSLATE(smuad), INTERPRETER_TRANSLATE(smmul), INTERPRETER_TRANSLATE(smusd),
1852 INTERPRETER_TRANSLATE(smlsd), INTERPRETER_TRANSLATE(smlsld), INTERPRETER_TRANSLATE(smmla),
1853 INTERPRETER_TRANSLATE(smmls), INTERPRETER_TRANSLATE(smlald), INTERPRETER_TRANSLATE(smlad),
1854 INTERPRETER_TRANSLATE(smlaw), INTERPRETER_TRANSLATE(smulw), INTERPRETER_TRANSLATE(pkhtb),
1855 INTERPRETER_TRANSLATE(pkhbt), INTERPRETER_TRANSLATE(smul), INTERPRETER_TRANSLATE(smlalxy),
1856 INTERPRETER_TRANSLATE(smla), INTERPRETER_TRANSLATE(mcrr), INTERPRETER_TRANSLATE(mrrc),
1857 INTERPRETER_TRANSLATE(cmp), INTERPRETER_TRANSLATE(tst), INTERPRETER_TRANSLATE(teq),
1858 INTERPRETER_TRANSLATE(cmn), INTERPRETER_TRANSLATE(smull), INTERPRETER_TRANSLATE(umull),
1859 INTERPRETER_TRANSLATE(umlal), INTERPRETER_TRANSLATE(smlal), INTERPRETER_TRANSLATE(mul),
1860 INTERPRETER_TRANSLATE(mla), INTERPRETER_TRANSLATE(ssat), INTERPRETER_TRANSLATE(usat),
1861 INTERPRETER_TRANSLATE(mrs), INTERPRETER_TRANSLATE(msr), INTERPRETER_TRANSLATE(and),
1862 INTERPRETER_TRANSLATE(bic), INTERPRETER_TRANSLATE(ldm), INTERPRETER_TRANSLATE(eor),
1863 INTERPRETER_TRANSLATE(add), INTERPRETER_TRANSLATE(rsb), INTERPRETER_TRANSLATE(rsc),
1864 INTERPRETER_TRANSLATE(sbc), INTERPRETER_TRANSLATE(adc), INTERPRETER_TRANSLATE(sub),
1865 INTERPRETER_TRANSLATE(orr), INTERPRETER_TRANSLATE(mvn), INTERPRETER_TRANSLATE(mov),
1866 INTERPRETER_TRANSLATE(stm), INTERPRETER_TRANSLATE(ldm), INTERPRETER_TRANSLATE(ldrsh),
1867 INTERPRETER_TRANSLATE(stm), INTERPRETER_TRANSLATE(ldm), INTERPRETER_TRANSLATE(ldrsb),
1868 INTERPRETER_TRANSLATE(strd), INTERPRETER_TRANSLATE(ldrh), INTERPRETER_TRANSLATE(strh),
1869 INTERPRETER_TRANSLATE(ldrd), INTERPRETER_TRANSLATE(strt), INTERPRETER_TRANSLATE(strbt),
1870 INTERPRETER_TRANSLATE(ldrbt), INTERPRETER_TRANSLATE(ldrt), INTERPRETER_TRANSLATE(mrc),
1871 INTERPRETER_TRANSLATE(mcr), INTERPRETER_TRANSLATE(msr), INTERPRETER_TRANSLATE(msr),
1872 INTERPRETER_TRANSLATE(msr), INTERPRETER_TRANSLATE(msr), INTERPRETER_TRANSLATE(msr),
1873 INTERPRETER_TRANSLATE(ldrb), INTERPRETER_TRANSLATE(strb), INTERPRETER_TRANSLATE(ldr),
1874 INTERPRETER_TRANSLATE(ldrcond), INTERPRETER_TRANSLATE(str), INTERPRETER_TRANSLATE(cdp),
1875 INTERPRETER_TRANSLATE(stc), INTERPRETER_TRANSLATE(ldc), INTERPRETER_TRANSLATE(ldrexd),
1876 INTERPRETER_TRANSLATE(strexd), INTERPRETER_TRANSLATE(ldrexh), INTERPRETER_TRANSLATE(strexh),
1877 INTERPRETER_TRANSLATE(nop), INTERPRETER_TRANSLATE(yield), INTERPRETER_TRANSLATE(wfe),
1878 INTERPRETER_TRANSLATE(wfi), INTERPRETER_TRANSLATE(sev), INTERPRETER_TRANSLATE(swi),
1879 INTERPRETER_TRANSLATE(bbl),
1880
1881 // All the thumb instructions should be placed the end of table
1882 INTERPRETER_TRANSLATE(b_2_thumb), INTERPRETER_TRANSLATE(b_cond_thumb),
1883 INTERPRETER_TRANSLATE(bl_1_thumb), INTERPRETER_TRANSLATE(bl_2_thumb),
1884 INTERPRETER_TRANSLATE(blx_1_thumb),
1885};
1886
1887const size_t arm_instruction_trans_len = sizeof(arm_instruction_trans) / sizeof(transop_fp_t);
diff --git a/src/core/arm/dyncom/arm_dyncom_trans.h b/src/core/arm/dyncom/arm_dyncom_trans.h
deleted file mode 100644
index 632ff2cd6..000000000
--- a/src/core/arm/dyncom/arm_dyncom_trans.h
+++ /dev/null
@@ -1,494 +0,0 @@
1#pragma once
2
3#include <cstddef>
4#include "common/common_types.h"
5
6struct ARMul_State;
7typedef unsigned int (*shtop_fp_t)(ARMul_State* cpu, unsigned int sht_oper);
8
9enum class TransExtData {
10 COND = (1 << 0),
11 NON_BRANCH = (1 << 1),
12 DIRECT_BRANCH = (1 << 2),
13 INDIRECT_BRANCH = (1 << 3),
14 CALL = (1 << 4),
15 RET = (1 << 5),
16 END_OF_PAGE = (1 << 6),
17 THUMB = (1 << 7),
18 SINGLE_STEP = (1 << 8)
19};
20
21struct arm_inst {
22 unsigned int idx;
23 unsigned int cond;
24 TransExtData br;
25 char component[0];
26};
27
28struct generic_arm_inst {
29 u32 Ra;
30 u32 Rm;
31 u32 Rn;
32 u32 Rd;
33 u8 op1;
34 u8 op2;
35};
36
37struct adc_inst {
38 unsigned int I;
39 unsigned int S;
40 unsigned int Rn;
41 unsigned int Rd;
42 unsigned int shifter_operand;
43 shtop_fp_t shtop_func;
44};
45
46struct add_inst {
47 unsigned int I;
48 unsigned int S;
49 unsigned int Rn;
50 unsigned int Rd;
51 unsigned int shifter_operand;
52 shtop_fp_t shtop_func;
53};
54
55struct orr_inst {
56 unsigned int I;
57 unsigned int S;
58 unsigned int Rn;
59 unsigned int Rd;
60 unsigned int shifter_operand;
61 shtop_fp_t shtop_func;
62};
63
64struct and_inst {
65 unsigned int I;
66 unsigned int S;
67 unsigned int Rn;
68 unsigned int Rd;
69 unsigned int shifter_operand;
70 shtop_fp_t shtop_func;
71};
72
73struct eor_inst {
74 unsigned int I;
75 unsigned int S;
76 unsigned int Rn;
77 unsigned int Rd;
78 unsigned int shifter_operand;
79 shtop_fp_t shtop_func;
80};
81
82struct bbl_inst {
83 unsigned int L;
84 int signed_immed_24;
85 unsigned int next_addr;
86 unsigned int jmp_addr;
87};
88
89struct bx_inst {
90 unsigned int Rm;
91};
92
93struct blx_inst {
94 union {
95 s32 signed_immed_24;
96 u32 Rm;
97 } val;
98 unsigned int inst;
99};
100
101struct clz_inst {
102 unsigned int Rm;
103 unsigned int Rd;
104};
105
106struct cps_inst {
107 unsigned int imod0;
108 unsigned int imod1;
109 unsigned int mmod;
110 unsigned int A, I, F;
111 unsigned int mode;
112};
113
114struct clrex_inst {};
115
116struct cpy_inst {
117 unsigned int Rm;
118 unsigned int Rd;
119};
120
121struct bic_inst {
122 unsigned int I;
123 unsigned int S;
124 unsigned int Rn;
125 unsigned int Rd;
126 unsigned int shifter_operand;
127 shtop_fp_t shtop_func;
128};
129
130struct sub_inst {
131 unsigned int I;
132 unsigned int S;
133 unsigned int Rn;
134 unsigned int Rd;
135 unsigned int shifter_operand;
136 shtop_fp_t shtop_func;
137};
138
139struct tst_inst {
140 unsigned int I;
141 unsigned int S;
142 unsigned int Rn;
143 unsigned int Rd;
144 unsigned int shifter_operand;
145 shtop_fp_t shtop_func;
146};
147
148struct cmn_inst {
149 unsigned int I;
150 unsigned int Rn;
151 unsigned int shifter_operand;
152 shtop_fp_t shtop_func;
153};
154
155struct teq_inst {
156 unsigned int I;
157 unsigned int Rn;
158 unsigned int shifter_operand;
159 shtop_fp_t shtop_func;
160};
161
162struct stm_inst {
163 unsigned int inst;
164};
165
166struct bkpt_inst {
167 u32 imm;
168};
169
170struct stc_inst {};
171
172struct ldc_inst {};
173
174struct swi_inst {
175 unsigned int num;
176};
177
178struct cmp_inst {
179 unsigned int I;
180 unsigned int Rn;
181 unsigned int shifter_operand;
182 shtop_fp_t shtop_func;
183};
184
185struct mov_inst {
186 unsigned int I;
187 unsigned int S;
188 unsigned int Rd;
189 unsigned int shifter_operand;
190 shtop_fp_t shtop_func;
191};
192
193struct mvn_inst {
194 unsigned int I;
195 unsigned int S;
196 unsigned int Rd;
197 unsigned int shifter_operand;
198 shtop_fp_t shtop_func;
199};
200
201struct rev_inst {
202 unsigned int Rd;
203 unsigned int Rm;
204 unsigned int op1;
205 unsigned int op2;
206};
207
208struct rsb_inst {
209 unsigned int I;
210 unsigned int S;
211 unsigned int Rn;
212 unsigned int Rd;
213 unsigned int shifter_operand;
214 shtop_fp_t shtop_func;
215};
216
217struct rsc_inst {
218 unsigned int I;
219 unsigned int S;
220 unsigned int Rn;
221 unsigned int Rd;
222 unsigned int shifter_operand;
223 shtop_fp_t shtop_func;
224};
225
226struct sbc_inst {
227 unsigned int I;
228 unsigned int S;
229 unsigned int Rn;
230 unsigned int Rd;
231 unsigned int shifter_operand;
232 shtop_fp_t shtop_func;
233};
234
235struct mul_inst {
236 unsigned int S;
237 unsigned int Rd;
238 unsigned int Rs;
239 unsigned int Rm;
240};
241
242struct smul_inst {
243 unsigned int Rd;
244 unsigned int Rs;
245 unsigned int Rm;
246 unsigned int x;
247 unsigned int y;
248};
249
250struct umull_inst {
251 unsigned int S;
252 unsigned int RdHi;
253 unsigned int RdLo;
254 unsigned int Rs;
255 unsigned int Rm;
256};
257
258struct smlad_inst {
259 unsigned int m;
260 unsigned int Rm;
261 unsigned int Rd;
262 unsigned int Ra;
263 unsigned int Rn;
264 unsigned int op1;
265 unsigned int op2;
266};
267
268struct smla_inst {
269 unsigned int x;
270 unsigned int y;
271 unsigned int Rm;
272 unsigned int Rd;
273 unsigned int Rs;
274 unsigned int Rn;
275};
276
277struct smlalxy_inst {
278 unsigned int x;
279 unsigned int y;
280 unsigned int RdLo;
281 unsigned int RdHi;
282 unsigned int Rm;
283 unsigned int Rn;
284};
285
286struct ssat_inst {
287 unsigned int Rn;
288 unsigned int Rd;
289 unsigned int imm5;
290 unsigned int sat_imm;
291 unsigned int shift_type;
292};
293
294struct umaal_inst {
295 unsigned int Rn;
296 unsigned int Rm;
297 unsigned int RdHi;
298 unsigned int RdLo;
299};
300
301struct umlal_inst {
302 unsigned int S;
303 unsigned int Rm;
304 unsigned int Rs;
305 unsigned int RdHi;
306 unsigned int RdLo;
307};
308
309struct smlal_inst {
310 unsigned int S;
311 unsigned int Rm;
312 unsigned int Rs;
313 unsigned int RdHi;
314 unsigned int RdLo;
315};
316
317struct smlald_inst {
318 unsigned int RdLo;
319 unsigned int RdHi;
320 unsigned int Rm;
321 unsigned int Rn;
322 unsigned int swap;
323 unsigned int op1;
324 unsigned int op2;
325};
326
327struct mla_inst {
328 unsigned int S;
329 unsigned int Rn;
330 unsigned int Rd;
331 unsigned int Rs;
332 unsigned int Rm;
333};
334
335struct mrc_inst {
336 unsigned int opcode_1;
337 unsigned int opcode_2;
338 unsigned int cp_num;
339 unsigned int crn;
340 unsigned int crm;
341 unsigned int Rd;
342 unsigned int inst;
343};
344
345struct mcr_inst {
346 unsigned int opcode_1;
347 unsigned int opcode_2;
348 unsigned int cp_num;
349 unsigned int crn;
350 unsigned int crm;
351 unsigned int Rd;
352 unsigned int inst;
353};
354
355struct mcrr_inst {
356 unsigned int opcode_1;
357 unsigned int cp_num;
358 unsigned int crm;
359 unsigned int rt;
360 unsigned int rt2;
361};
362
363struct mrs_inst {
364 unsigned int R;
365 unsigned int Rd;
366};
367
368struct msr_inst {
369 unsigned int field_mask;
370 unsigned int R;
371 unsigned int inst;
372};
373
374struct pld_inst {};
375
376struct sxtb_inst {
377 unsigned int Rd;
378 unsigned int Rm;
379 unsigned int rotate;
380};
381
382struct sxtab_inst {
383 unsigned int Rd;
384 unsigned int Rn;
385 unsigned int Rm;
386 unsigned rotate;
387};
388
389struct sxtah_inst {
390 unsigned int Rd;
391 unsigned int Rn;
392 unsigned int Rm;
393 unsigned int rotate;
394};
395
396struct sxth_inst {
397 unsigned int Rd;
398 unsigned int Rm;
399 unsigned int rotate;
400};
401
402struct uxtab_inst {
403 unsigned int Rn;
404 unsigned int Rd;
405 unsigned int rotate;
406 unsigned int Rm;
407};
408
409struct uxtah_inst {
410 unsigned int Rn;
411 unsigned int Rd;
412 unsigned int rotate;
413 unsigned int Rm;
414};
415
416struct uxth_inst {
417 unsigned int Rd;
418 unsigned int Rm;
419 unsigned int rotate;
420};
421
422struct cdp_inst {
423 unsigned int opcode_1;
424 unsigned int CRn;
425 unsigned int CRd;
426 unsigned int cp_num;
427 unsigned int opcode_2;
428 unsigned int CRm;
429 unsigned int inst;
430};
431
432struct uxtb_inst {
433 unsigned int Rd;
434 unsigned int Rm;
435 unsigned int rotate;
436};
437
438struct swp_inst {
439 unsigned int Rn;
440 unsigned int Rd;
441 unsigned int Rm;
442};
443
444struct setend_inst {
445 unsigned int set_bigend;
446};
447
448struct b_2_thumb {
449 unsigned int imm;
450};
451struct b_cond_thumb {
452 unsigned int imm;
453 unsigned int cond;
454};
455
456struct bl_1_thumb {
457 unsigned int imm;
458};
459struct bl_2_thumb {
460 unsigned int imm;
461};
462struct blx_1_thumb {
463 unsigned int imm;
464 unsigned int instr;
465};
466
467struct pkh_inst {
468 unsigned int Rm;
469 unsigned int Rn;
470 unsigned int Rd;
471 unsigned char imm;
472};
473
474// Floating point VFPv3 structures
475#define VFP_INTERPRETER_STRUCT
476#include "core/arm/skyeye_common/vfp/vfpinstr.cpp"
477#undef VFP_INTERPRETER_STRUCT
478
479typedef void (*get_addr_fp_t)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr);
480
481struct ldst_inst {
482 unsigned int inst;
483 get_addr_fp_t get_addr;
484};
485
486typedef arm_inst* ARM_INST_PTR;
487typedef ARM_INST_PTR (*transop_fp_t)(unsigned int, int);
488
489extern const transop_fp_t arm_instruction_trans[];
490extern const size_t arm_instruction_trans_len;
491
492#define TRANS_CACHE_SIZE (64 * 1024 * 2000)
493extern char trans_cache_buf[TRANS_CACHE_SIZE];
494extern size_t trans_cache_buf_top;
diff --git a/src/core/arm/skyeye_common/arm_regformat.h b/src/core/arm/skyeye_common/arm_regformat.h
deleted file mode 100644
index 706195a05..000000000
--- a/src/core/arm/skyeye_common/arm_regformat.h
+++ /dev/null
@@ -1,187 +0,0 @@
1#pragma once
2
3enum {
4 R0 = 0,
5 R1,
6 R2,
7 R3,
8 R4,
9 R5,
10 R6,
11 R7,
12 R8,
13 R9,
14 R10,
15 R11,
16 R12,
17 R13,
18 LR,
19 R15, // PC,
20 CPSR_REG,
21 SPSR_REG,
22
23 PHYS_PC,
24 R13_USR,
25 R14_USR,
26 R13_SVC,
27 R14_SVC,
28 R13_ABORT,
29 R14_ABORT,
30 R13_UNDEF,
31 R14_UNDEF,
32 R13_IRQ,
33 R14_IRQ,
34 R8_FIRQ,
35 R9_FIRQ,
36 R10_FIRQ,
37 R11_FIRQ,
38 R12_FIRQ,
39 R13_FIRQ,
40 R14_FIRQ,
41 SPSR_INVALID1,
42 SPSR_INVALID2,
43 SPSR_SVC,
44 SPSR_ABORT,
45 SPSR_UNDEF,
46 SPSR_IRQ,
47 SPSR_FIRQ,
48 MODE_REG, /* That is the cpsr[4 : 0], just for calculation easily */
49 BANK_REG,
50 EXCLUSIVE_TAG,
51 EXCLUSIVE_STATE,
52 EXCLUSIVE_RESULT,
53
54 MAX_REG_NUM,
55};
56
57// VFP system registers
58enum VFPSystemRegister {
59 VFP_FPSID,
60 VFP_FPSCR,
61 VFP_FPEXC,
62 VFP_FPINST,
63 VFP_FPINST2,
64 VFP_MVFR0,
65 VFP_MVFR1,
66
67 // Not an actual register.
68 // All VFP system registers should be defined above this.
69 VFP_SYSTEM_REGISTER_COUNT
70};
71
72enum CP15Register {
73 // c0 - Information registers
74 CP15_MAIN_ID,
75 CP15_CACHE_TYPE,
76 CP15_TCM_STATUS,
77 CP15_TLB_TYPE,
78 CP15_CPU_ID,
79 CP15_PROCESSOR_FEATURE_0,
80 CP15_PROCESSOR_FEATURE_1,
81 CP15_DEBUG_FEATURE_0,
82 CP15_AUXILIARY_FEATURE_0,
83 CP15_MEMORY_MODEL_FEATURE_0,
84 CP15_MEMORY_MODEL_FEATURE_1,
85 CP15_MEMORY_MODEL_FEATURE_2,
86 CP15_MEMORY_MODEL_FEATURE_3,
87 CP15_ISA_FEATURE_0,
88 CP15_ISA_FEATURE_1,
89 CP15_ISA_FEATURE_2,
90 CP15_ISA_FEATURE_3,
91 CP15_ISA_FEATURE_4,
92
93 // c1 - Control registers
94 CP15_CONTROL,
95 CP15_AUXILIARY_CONTROL,
96 CP15_COPROCESSOR_ACCESS_CONTROL,
97
98 // c2 - Translation table registers
99 CP15_TRANSLATION_BASE_TABLE_0,
100 CP15_TRANSLATION_BASE_TABLE_1,
101 CP15_TRANSLATION_BASE_CONTROL,
102 CP15_DOMAIN_ACCESS_CONTROL,
103 CP15_RESERVED,
104
105 // c5 - Fault status registers
106 CP15_FAULT_STATUS,
107 CP15_INSTR_FAULT_STATUS,
108 CP15_COMBINED_DATA_FSR = CP15_FAULT_STATUS,
109 CP15_INST_FSR,
110
111 // c6 - Fault Address registers
112 CP15_FAULT_ADDRESS,
113 CP15_COMBINED_DATA_FAR = CP15_FAULT_ADDRESS,
114 CP15_WFAR,
115 CP15_IFAR,
116
117 // c7 - Cache operation registers
118 CP15_WAIT_FOR_INTERRUPT,
119 CP15_PHYS_ADDRESS,
120 CP15_INVALIDATE_INSTR_CACHE,
121 CP15_INVALIDATE_INSTR_CACHE_USING_MVA,
122 CP15_INVALIDATE_INSTR_CACHE_USING_INDEX,
123 CP15_FLUSH_PREFETCH_BUFFER,
124 CP15_FLUSH_BRANCH_TARGET_CACHE,
125 CP15_FLUSH_BRANCH_TARGET_CACHE_ENTRY,
126 CP15_INVALIDATE_DATA_CACHE,
127 CP15_INVALIDATE_DATA_CACHE_LINE_USING_MVA,
128 CP15_INVALIDATE_DATA_CACHE_LINE_USING_INDEX,
129 CP15_INVALIDATE_DATA_AND_INSTR_CACHE,
130 CP15_CLEAN_DATA_CACHE,
131 CP15_CLEAN_DATA_CACHE_LINE_USING_MVA,
132 CP15_CLEAN_DATA_CACHE_LINE_USING_INDEX,
133 CP15_DATA_SYNC_BARRIER,
134 CP15_DATA_MEMORY_BARRIER,
135 CP15_CLEAN_AND_INVALIDATE_DATA_CACHE,
136 CP15_CLEAN_AND_INVALIDATE_DATA_CACHE_LINE_USING_MVA,
137 CP15_CLEAN_AND_INVALIDATE_DATA_CACHE_LINE_USING_INDEX,
138
139 // c8 - TLB operations
140 CP15_INVALIDATE_ITLB,
141 CP15_INVALIDATE_ITLB_SINGLE_ENTRY,
142 CP15_INVALIDATE_ITLB_ENTRY_ON_ASID_MATCH,
143 CP15_INVALIDATE_ITLB_ENTRY_ON_MVA,
144 CP15_INVALIDATE_DTLB,
145 CP15_INVALIDATE_DTLB_SINGLE_ENTRY,
146 CP15_INVALIDATE_DTLB_ENTRY_ON_ASID_MATCH,
147 CP15_INVALIDATE_DTLB_ENTRY_ON_MVA,
148 CP15_INVALIDATE_UTLB,
149 CP15_INVALIDATE_UTLB_SINGLE_ENTRY,
150 CP15_INVALIDATE_UTLB_ENTRY_ON_ASID_MATCH,
151 CP15_INVALIDATE_UTLB_ENTRY_ON_MVA,
152
153 // c9 - Data cache lockdown register
154 CP15_DATA_CACHE_LOCKDOWN,
155
156 // c10 - TLB/Memory map registers
157 CP15_TLB_LOCKDOWN,
158 CP15_PRIMARY_REGION_REMAP,
159 CP15_NORMAL_REGION_REMAP,
160
161 // c13 - Thread related registers
162 CP15_PID,
163 CP15_CONTEXT_ID,
164 CP15_THREAD_UPRW, // Thread ID register - User/Privileged Read/Write
165 CP15_THREAD_URO, // Thread ID register - User Read Only (Privileged R/W)
166 CP15_THREAD_PRW, // Thread ID register - Privileged R/W only.
167
168 // c15 - Performance and TLB lockdown registers
169 CP15_PERFORMANCE_MONITOR_CONTROL,
170 CP15_CYCLE_COUNTER,
171 CP15_COUNT_0,
172 CP15_COUNT_1,
173 CP15_READ_MAIN_TLB_LOCKDOWN_ENTRY,
174 CP15_WRITE_MAIN_TLB_LOCKDOWN_ENTRY,
175 CP15_MAIN_TLB_LOCKDOWN_VIRT_ADDRESS,
176 CP15_MAIN_TLB_LOCKDOWN_PHYS_ADDRESS,
177 CP15_MAIN_TLB_LOCKDOWN_ATTRIBUTE,
178 CP15_TLB_DEBUG_CONTROL,
179
180 // Skyeye defined
181 CP15_TLB_FAULT_ADDR,
182 CP15_TLB_FAULT_STATUS,
183
184 // Not an actual register.
185 // All registers should be defined above this.
186 CP15_REGISTER_COUNT,
187};
diff --git a/src/core/arm/skyeye_common/armstate.cpp b/src/core/arm/skyeye_common/armstate.cpp
deleted file mode 100644
index 92b644825..000000000
--- a/src/core/arm/skyeye_common/armstate.cpp
+++ /dev/null
@@ -1,597 +0,0 @@
1// Copyright 2015 Citra Emulator Project
2// Licensed under GPLv2 or any later version
3// Refer to the license.txt file included.
4
5#include <algorithm>
6#include "common/logging/log.h"
7#include "common/swap.h"
8#include "core/arm/skyeye_common/armstate.h"
9#include "core/arm/skyeye_common/vfp/vfp.h"
10#include "core/gdbstub/gdbstub.h"
11#include "core/memory.h"
12
13ARMul_State::ARMul_State(PrivilegeMode initial_mode) {
14 Reset();
15 ChangePrivilegeMode(initial_mode);
16}
17
18void ARMul_State::ChangePrivilegeMode(u32 new_mode) {
19 if (Mode == new_mode)
20 return;
21
22 if (new_mode != USERBANK) {
23 switch (Mode) {
24 case SYSTEM32MODE: // Shares registers with user mode
25 case USER32MODE:
26 Reg_usr[0] = Reg[13];
27 Reg_usr[1] = Reg[14];
28 break;
29 case IRQ32MODE:
30 Reg_irq[0] = Reg[13];
31 Reg_irq[1] = Reg[14];
32 Spsr[IRQBANK] = Spsr_copy;
33 break;
34 case SVC32MODE:
35 Reg_svc[0] = Reg[13];
36 Reg_svc[1] = Reg[14];
37 Spsr[SVCBANK] = Spsr_copy;
38 break;
39 case ABORT32MODE:
40 Reg_abort[0] = Reg[13];
41 Reg_abort[1] = Reg[14];
42 Spsr[ABORTBANK] = Spsr_copy;
43 break;
44 case UNDEF32MODE:
45 Reg_undef[0] = Reg[13];
46 Reg_undef[1] = Reg[14];
47 Spsr[UNDEFBANK] = Spsr_copy;
48 break;
49 case FIQ32MODE:
50 std::copy(Reg.begin() + 8, Reg.end() - 1, Reg_firq.begin());
51 Spsr[FIQBANK] = Spsr_copy;
52 break;
53 }
54
55 switch (new_mode) {
56 case USER32MODE:
57 Reg[13] = Reg_usr[0];
58 Reg[14] = Reg_usr[1];
59 Bank = USERBANK;
60 break;
61 case IRQ32MODE:
62 Reg[13] = Reg_irq[0];
63 Reg[14] = Reg_irq[1];
64 Spsr_copy = Spsr[IRQBANK];
65 Bank = IRQBANK;
66 break;
67 case SVC32MODE:
68 Reg[13] = Reg_svc[0];
69 Reg[14] = Reg_svc[1];
70 Spsr_copy = Spsr[SVCBANK];
71 Bank = SVCBANK;
72 break;
73 case ABORT32MODE:
74 Reg[13] = Reg_abort[0];
75 Reg[14] = Reg_abort[1];
76 Spsr_copy = Spsr[ABORTBANK];
77 Bank = ABORTBANK;
78 break;
79 case UNDEF32MODE:
80 Reg[13] = Reg_undef[0];
81 Reg[14] = Reg_undef[1];
82 Spsr_copy = Spsr[UNDEFBANK];
83 Bank = UNDEFBANK;
84 break;
85 case FIQ32MODE:
86 std::copy(Reg_firq.begin(), Reg_firq.end(), Reg.begin() + 8);
87 Spsr_copy = Spsr[FIQBANK];
88 Bank = FIQBANK;
89 break;
90 case SYSTEM32MODE: // Shares registers with user mode.
91 Reg[13] = Reg_usr[0];
92 Reg[14] = Reg_usr[1];
93 Bank = SYSTEMBANK;
94 break;
95 }
96
97 // Set the mode bits in the APSR
98 Cpsr = (Cpsr & ~Mode) | new_mode;
99 Mode = new_mode;
100 }
101}
102
103// Performs a reset
104void ARMul_State::Reset() {
105 VFPInit(this);
106
107 // Set stack pointer to the top of the stack
108 Reg[13] = 0x10000000;
109 Reg[15] = 0;
110
111 Cpsr = INTBITS | SVC32MODE;
112 Mode = SVC32MODE;
113 Bank = SVCBANK;
114
115 ResetMPCoreCP15Registers();
116
117 NresetSig = HIGH;
118 NfiqSig = HIGH;
119 NirqSig = HIGH;
120 NtransSig = (Mode & 3) ? HIGH : LOW;
121 abortSig = LOW;
122
123 NumInstrs = 0;
124 Emulate = RUN;
125}
126
127// Resets certain MPCore CP15 values to their ARM-defined reset values.
128void ARMul_State::ResetMPCoreCP15Registers() {
129 // c0
130 CP15[CP15_MAIN_ID] = 0x410FB024;
131 CP15[CP15_TLB_TYPE] = 0x00000800;
132 CP15[CP15_PROCESSOR_FEATURE_0] = 0x00000111;
133 CP15[CP15_PROCESSOR_FEATURE_1] = 0x00000001;
134 CP15[CP15_DEBUG_FEATURE_0] = 0x00000002;
135 CP15[CP15_MEMORY_MODEL_FEATURE_0] = 0x01100103;
136 CP15[CP15_MEMORY_MODEL_FEATURE_1] = 0x10020302;
137 CP15[CP15_MEMORY_MODEL_FEATURE_2] = 0x01222000;
138 CP15[CP15_MEMORY_MODEL_FEATURE_3] = 0x00000000;
139 CP15[CP15_ISA_FEATURE_0] = 0x00100011;
140 CP15[CP15_ISA_FEATURE_1] = 0x12002111;
141 CP15[CP15_ISA_FEATURE_2] = 0x11221011;
142 CP15[CP15_ISA_FEATURE_3] = 0x01102131;
143 CP15[CP15_ISA_FEATURE_4] = 0x00000141;
144
145 // c1
146 CP15[CP15_CONTROL] = 0x00054078;
147 CP15[CP15_AUXILIARY_CONTROL] = 0x0000000F;
148 CP15[CP15_COPROCESSOR_ACCESS_CONTROL] = 0x00000000;
149
150 // c2
151 CP15[CP15_TRANSLATION_BASE_TABLE_0] = 0x00000000;
152 CP15[CP15_TRANSLATION_BASE_TABLE_1] = 0x00000000;
153 CP15[CP15_TRANSLATION_BASE_CONTROL] = 0x00000000;
154
155 // c3
156 CP15[CP15_DOMAIN_ACCESS_CONTROL] = 0x00000000;
157
158 // c7
159 CP15[CP15_PHYS_ADDRESS] = 0x00000000;
160
161 // c9
162 CP15[CP15_DATA_CACHE_LOCKDOWN] = 0xFFFFFFF0;
163
164 // c10
165 CP15[CP15_TLB_LOCKDOWN] = 0x00000000;
166 CP15[CP15_PRIMARY_REGION_REMAP] = 0x00098AA4;
167 CP15[CP15_NORMAL_REGION_REMAP] = 0x44E048E0;
168
169 // c13
170 CP15[CP15_PID] = 0x00000000;
171 CP15[CP15_CONTEXT_ID] = 0x00000000;
172 CP15[CP15_THREAD_UPRW] = 0x00000000;
173 CP15[CP15_THREAD_URO] = 0x00000000;
174 CP15[CP15_THREAD_PRW] = 0x00000000;
175
176 // c15
177 CP15[CP15_PERFORMANCE_MONITOR_CONTROL] = 0x00000000;
178 CP15[CP15_MAIN_TLB_LOCKDOWN_VIRT_ADDRESS] = 0x00000000;
179 CP15[CP15_MAIN_TLB_LOCKDOWN_PHYS_ADDRESS] = 0x00000000;
180 CP15[CP15_MAIN_TLB_LOCKDOWN_ATTRIBUTE] = 0x00000000;
181 CP15[CP15_TLB_DEBUG_CONTROL] = 0x00000000;
182}
183
184static void CheckMemoryBreakpoint(u32 address, GDBStub::BreakpointType type) {
185 if (GDBStub::IsServerEnabled() && GDBStub::CheckBreakpoint(address, type)) {
186 LOG_DEBUG(Debug, "Found memory breakpoint @ %08x", address);
187 GDBStub::Break(true);
188 }
189}
190
191u8 ARMul_State::ReadMemory8(u32 address) const {
192 CheckMemoryBreakpoint(address, GDBStub::BreakpointType::Read);
193
194 return Memory::Read8(address);
195}
196
197u16 ARMul_State::ReadMemory16(u32 address) const {
198 CheckMemoryBreakpoint(address, GDBStub::BreakpointType::Read);
199
200 u16 data = Memory::Read16(address);
201
202 if (InBigEndianMode())
203 data = Common::swap16(data);
204
205 return data;
206}
207
208u32 ARMul_State::ReadMemory32(u32 address) const {
209 CheckMemoryBreakpoint(address, GDBStub::BreakpointType::Read);
210
211 u32 data = Memory::Read32(address);
212
213 if (InBigEndianMode())
214 data = Common::swap32(data);
215
216 return data;
217}
218
219u64 ARMul_State::ReadMemory64(u32 address) const {
220 CheckMemoryBreakpoint(address, GDBStub::BreakpointType::Read);
221
222 u64 data = Memory::Read64(address);
223
224 if (InBigEndianMode())
225 data = Common::swap64(data);
226
227 return data;
228}
229
230void ARMul_State::WriteMemory8(u32 address, u8 data) {
231 CheckMemoryBreakpoint(address, GDBStub::BreakpointType::Write);
232
233 Memory::Write8(address, data);
234}
235
236void ARMul_State::WriteMemory16(u32 address, u16 data) {
237 CheckMemoryBreakpoint(address, GDBStub::BreakpointType::Write);
238
239 if (InBigEndianMode())
240 data = Common::swap16(data);
241
242 Memory::Write16(address, data);
243}
244
245void ARMul_State::WriteMemory32(u32 address, u32 data) {
246 CheckMemoryBreakpoint(address, GDBStub::BreakpointType::Write);
247
248 if (InBigEndianMode())
249 data = Common::swap32(data);
250
251 Memory::Write32(address, data);
252}
253
254void ARMul_State::WriteMemory64(u32 address, u64 data) {
255 CheckMemoryBreakpoint(address, GDBStub::BreakpointType::Write);
256
257 if (InBigEndianMode())
258 data = Common::swap64(data);
259
260 Memory::Write64(address, data);
261}
262
263// Reads from the CP15 registers. Used with implementation of the MRC instruction.
264// Note that since the 3DS does not have the hypervisor extensions, these registers
265// are not implemented.
266u32 ARMul_State::ReadCP15Register(u32 crn, u32 opcode_1, u32 crm, u32 opcode_2) const {
267 // Unprivileged registers
268 if (crn == 13 && opcode_1 == 0 && crm == 0) {
269 if (opcode_2 == 2)
270 return CP15[CP15_THREAD_UPRW];
271
272 if (opcode_2 == 3)
273 return CP15[CP15_THREAD_URO];
274 }
275
276 if (InAPrivilegedMode()) {
277 if (crn == 0 && opcode_1 == 0) {
278 if (crm == 0) {
279 if (opcode_2 == 0)
280 return CP15[CP15_MAIN_ID];
281
282 if (opcode_2 == 1)
283 return CP15[CP15_CACHE_TYPE];
284
285 if (opcode_2 == 3)
286 return CP15[CP15_TLB_TYPE];
287
288 if (opcode_2 == 5)
289 return CP15[CP15_CPU_ID];
290 } else if (crm == 1) {
291 if (opcode_2 == 0)
292 return CP15[CP15_PROCESSOR_FEATURE_0];
293
294 if (opcode_2 == 1)
295 return CP15[CP15_PROCESSOR_FEATURE_1];
296
297 if (opcode_2 == 2)
298 return CP15[CP15_DEBUG_FEATURE_0];
299
300 if (opcode_2 == 4)
301 return CP15[CP15_MEMORY_MODEL_FEATURE_0];
302
303 if (opcode_2 == 5)
304 return CP15[CP15_MEMORY_MODEL_FEATURE_1];
305
306 if (opcode_2 == 6)
307 return CP15[CP15_MEMORY_MODEL_FEATURE_2];
308
309 if (opcode_2 == 7)
310 return CP15[CP15_MEMORY_MODEL_FEATURE_3];
311 } else if (crm == 2) {
312 if (opcode_2 == 0)
313 return CP15[CP15_ISA_FEATURE_0];
314
315 if (opcode_2 == 1)
316 return CP15[CP15_ISA_FEATURE_1];
317
318 if (opcode_2 == 2)
319 return CP15[CP15_ISA_FEATURE_2];
320
321 if (opcode_2 == 3)
322 return CP15[CP15_ISA_FEATURE_3];
323
324 if (opcode_2 == 4)
325 return CP15[CP15_ISA_FEATURE_4];
326 }
327 }
328
329 if (crn == 1 && opcode_1 == 0 && crm == 0) {
330 if (opcode_2 == 0)
331 return CP15[CP15_CONTROL];
332
333 if (opcode_2 == 1)
334 return CP15[CP15_AUXILIARY_CONTROL];
335
336 if (opcode_2 == 2)
337 return CP15[CP15_COPROCESSOR_ACCESS_CONTROL];
338 }
339
340 if (crn == 2 && opcode_1 == 0 && crm == 0) {
341 if (opcode_2 == 0)
342 return CP15[CP15_TRANSLATION_BASE_TABLE_0];
343
344 if (opcode_2 == 1)
345 return CP15[CP15_TRANSLATION_BASE_TABLE_1];
346
347 if (opcode_2 == 2)
348 return CP15[CP15_TRANSLATION_BASE_CONTROL];
349 }
350
351 if (crn == 3 && opcode_1 == 0 && crm == 0 && opcode_2 == 0)
352 return CP15[CP15_DOMAIN_ACCESS_CONTROL];
353
354 if (crn == 5 && opcode_1 == 0 && crm == 0) {
355 if (opcode_2 == 0)
356 return CP15[CP15_FAULT_STATUS];
357
358 if (opcode_2 == 1)
359 return CP15[CP15_INSTR_FAULT_STATUS];
360 }
361
362 if (crn == 6 && opcode_1 == 0 && crm == 0) {
363 if (opcode_2 == 0)
364 return CP15[CP15_FAULT_ADDRESS];
365
366 if (opcode_2 == 1)
367 return CP15[CP15_WFAR];
368 }
369
370 if (crn == 7 && opcode_1 == 0 && crm == 4 && opcode_2 == 0)
371 return CP15[CP15_PHYS_ADDRESS];
372
373 if (crn == 9 && opcode_1 == 0 && crm == 0 && opcode_2 == 0)
374 return CP15[CP15_DATA_CACHE_LOCKDOWN];
375
376 if (crn == 10 && opcode_1 == 0) {
377 if (crm == 0 && opcode_2 == 0)
378 return CP15[CP15_TLB_LOCKDOWN];
379
380 if (crm == 2) {
381 if (opcode_2 == 0)
382 return CP15[CP15_PRIMARY_REGION_REMAP];
383
384 if (opcode_2 == 1)
385 return CP15[CP15_NORMAL_REGION_REMAP];
386 }
387 }
388
389 if (crn == 13 && crm == 0) {
390 if (opcode_2 == 0)
391 return CP15[CP15_PID];
392
393 if (opcode_2 == 1)
394 return CP15[CP15_CONTEXT_ID];
395
396 if (opcode_2 == 4)
397 return CP15[CP15_THREAD_PRW];
398 }
399
400 if (crn == 15) {
401 if (opcode_1 == 0 && crm == 12) {
402 if (opcode_2 == 0)
403 return CP15[CP15_PERFORMANCE_MONITOR_CONTROL];
404
405 if (opcode_2 == 1)
406 return CP15[CP15_CYCLE_COUNTER];
407
408 if (opcode_2 == 2)
409 return CP15[CP15_COUNT_0];
410
411 if (opcode_2 == 3)
412 return CP15[CP15_COUNT_1];
413 }
414
415 if (opcode_1 == 5 && opcode_2 == 2) {
416 if (crm == 5)
417 return CP15[CP15_MAIN_TLB_LOCKDOWN_VIRT_ADDRESS];
418
419 if (crm == 6)
420 return CP15[CP15_MAIN_TLB_LOCKDOWN_PHYS_ADDRESS];
421
422 if (crm == 7)
423 return CP15[CP15_MAIN_TLB_LOCKDOWN_ATTRIBUTE];
424 }
425
426 if (opcode_1 == 7 && crm == 1 && opcode_2 == 0)
427 return CP15[CP15_TLB_DEBUG_CONTROL];
428 }
429 }
430
431 LOG_ERROR(Core_ARM, "MRC CRn=%u, CRm=%u, OP1=%u OP2=%u is not implemented. Returning zero.",
432 crn, crm, opcode_1, opcode_2);
433 return 0;
434}
435
436// Write to the CP15 registers. Used with implementation of the MCR instruction.
437// Note that since the 3DS does not have the hypervisor extensions, these registers
438// are not implemented.
439void ARMul_State::WriteCP15Register(u32 value, u32 crn, u32 opcode_1, u32 crm, u32 opcode_2) {
440 if (InAPrivilegedMode()) {
441 if (crn == 1 && opcode_1 == 0 && crm == 0) {
442 if (opcode_2 == 0)
443 CP15[CP15_CONTROL] = value;
444 else if (opcode_2 == 1)
445 CP15[CP15_AUXILIARY_CONTROL] = value;
446 else if (opcode_2 == 2)
447 CP15[CP15_COPROCESSOR_ACCESS_CONTROL] = value;
448 } else if (crn == 2 && opcode_1 == 0 && crm == 0) {
449 if (opcode_2 == 0)
450 CP15[CP15_TRANSLATION_BASE_TABLE_0] = value;
451 else if (opcode_2 == 1)
452 CP15[CP15_TRANSLATION_BASE_TABLE_1] = value;
453 else if (opcode_2 == 2)
454 CP15[CP15_TRANSLATION_BASE_CONTROL] = value;
455 } else if (crn == 3 && opcode_1 == 0 && crm == 0 && opcode_2 == 0) {
456 CP15[CP15_DOMAIN_ACCESS_CONTROL] = value;
457 } else if (crn == 5 && opcode_1 == 0 && crm == 0) {
458 if (opcode_2 == 0)
459 CP15[CP15_FAULT_STATUS] = value;
460 else if (opcode_2 == 1)
461 CP15[CP15_INSTR_FAULT_STATUS] = value;
462 } else if (crn == 6 && opcode_1 == 0 && crm == 0) {
463 if (opcode_2 == 0)
464 CP15[CP15_FAULT_ADDRESS] = value;
465 else if (opcode_2 == 1)
466 CP15[CP15_WFAR] = value;
467 } else if (crn == 7 && opcode_1 == 0) {
468 if (crm == 0 && opcode_2 == 4) {
469 CP15[CP15_WAIT_FOR_INTERRUPT] = value;
470 } else if (crm == 4 && opcode_2 == 0) {
471 // NOTE: Not entirely accurate. This should do permission checks.
472 CP15[CP15_PHYS_ADDRESS] = Memory::VirtualToPhysicalAddress(value);
473 } else if (crm == 5) {
474 if (opcode_2 == 0)
475 CP15[CP15_INVALIDATE_INSTR_CACHE] = value;
476 else if (opcode_2 == 1)
477 CP15[CP15_INVALIDATE_INSTR_CACHE_USING_MVA] = value;
478 else if (opcode_2 == 2)
479 CP15[CP15_INVALIDATE_INSTR_CACHE_USING_INDEX] = value;
480 else if (opcode_2 == 6)
481 CP15[CP15_FLUSH_BRANCH_TARGET_CACHE] = value;
482 else if (opcode_2 == 7)
483 CP15[CP15_FLUSH_BRANCH_TARGET_CACHE_ENTRY] = value;
484 } else if (crm == 6) {
485 if (opcode_2 == 0)
486 CP15[CP15_INVALIDATE_DATA_CACHE] = value;
487 else if (opcode_2 == 1)
488 CP15[CP15_INVALIDATE_DATA_CACHE_LINE_USING_MVA] = value;
489 else if (opcode_2 == 2)
490 CP15[CP15_INVALIDATE_DATA_CACHE_LINE_USING_INDEX] = value;
491 } else if (crm == 7 && opcode_2 == 0) {
492 CP15[CP15_INVALIDATE_DATA_AND_INSTR_CACHE] = value;
493 } else if (crm == 10) {
494 if (opcode_2 == 0)
495 CP15[CP15_CLEAN_DATA_CACHE] = value;
496 else if (opcode_2 == 1)
497 CP15[CP15_CLEAN_DATA_CACHE_LINE_USING_MVA] = value;
498 else if (opcode_2 == 2)
499 CP15[CP15_CLEAN_DATA_CACHE_LINE_USING_INDEX] = value;
500 } else if (crm == 14) {
501 if (opcode_2 == 0)
502 CP15[CP15_CLEAN_AND_INVALIDATE_DATA_CACHE] = value;
503 else if (opcode_2 == 1)
504 CP15[CP15_CLEAN_AND_INVALIDATE_DATA_CACHE_LINE_USING_MVA] = value;
505 else if (opcode_2 == 2)
506 CP15[CP15_CLEAN_AND_INVALIDATE_DATA_CACHE_LINE_USING_INDEX] = value;
507 }
508 } else if (crn == 8 && opcode_1 == 0) {
509 if (crm == 5) {
510 if (opcode_2 == 0)
511 CP15[CP15_INVALIDATE_ITLB] = value;
512 else if (opcode_2 == 1)
513 CP15[CP15_INVALIDATE_ITLB_SINGLE_ENTRY] = value;
514 else if (opcode_2 == 2)
515 CP15[CP15_INVALIDATE_ITLB_ENTRY_ON_ASID_MATCH] = value;
516 else if (opcode_2 == 3)
517 CP15[CP15_INVALIDATE_ITLB_ENTRY_ON_MVA] = value;
518 } else if (crm == 6) {
519 if (opcode_2 == 0)
520 CP15[CP15_INVALIDATE_DTLB] = value;
521 else if (opcode_2 == 1)
522 CP15[CP15_INVALIDATE_DTLB_SINGLE_ENTRY] = value;
523 else if (opcode_2 == 2)
524 CP15[CP15_INVALIDATE_DTLB_ENTRY_ON_ASID_MATCH] = value;
525 else if (opcode_2 == 3)
526 CP15[CP15_INVALIDATE_DTLB_ENTRY_ON_MVA] = value;
527 } else if (crm == 7) {
528 if (opcode_2 == 0)
529 CP15[CP15_INVALIDATE_UTLB] = value;
530 else if (opcode_2 == 1)
531 CP15[CP15_INVALIDATE_UTLB_SINGLE_ENTRY] = value;
532 else if (opcode_2 == 2)
533 CP15[CP15_INVALIDATE_UTLB_ENTRY_ON_ASID_MATCH] = value;
534 else if (opcode_2 == 3)
535 CP15[CP15_INVALIDATE_UTLB_ENTRY_ON_MVA] = value;
536 }
537 } else if (crn == 9 && opcode_1 == 0 && crm == 0 && opcode_2 == 0) {
538 CP15[CP15_DATA_CACHE_LOCKDOWN] = value;
539 } else if (crn == 10 && opcode_1 == 0) {
540 if (crm == 0 && opcode_2 == 0) {
541 CP15[CP15_TLB_LOCKDOWN] = value;
542 } else if (crm == 2) {
543 if (opcode_2 == 0)
544 CP15[CP15_PRIMARY_REGION_REMAP] = value;
545 else if (opcode_2 == 1)
546 CP15[CP15_NORMAL_REGION_REMAP] = value;
547 }
548 } else if (crn == 13 && opcode_1 == 0 && crm == 0) {
549 if (opcode_2 == 0)
550 CP15[CP15_PID] = value;
551 else if (opcode_2 == 1)
552 CP15[CP15_CONTEXT_ID] = value;
553 else if (opcode_2 == 3)
554 CP15[CP15_THREAD_URO] = value;
555 else if (opcode_2 == 4)
556 CP15[CP15_THREAD_PRW] = value;
557 } else if (crn == 15) {
558 if (opcode_1 == 0 && crm == 12) {
559 if (opcode_2 == 0)
560 CP15[CP15_PERFORMANCE_MONITOR_CONTROL] = value;
561 else if (opcode_2 == 1)
562 CP15[CP15_CYCLE_COUNTER] = value;
563 else if (opcode_2 == 2)
564 CP15[CP15_COUNT_0] = value;
565 else if (opcode_2 == 3)
566 CP15[CP15_COUNT_1] = value;
567 } else if (opcode_1 == 5) {
568 if (crm == 4) {
569 if (opcode_2 == 2)
570 CP15[CP15_READ_MAIN_TLB_LOCKDOWN_ENTRY] = value;
571 else if (opcode_2 == 4)
572 CP15[CP15_WRITE_MAIN_TLB_LOCKDOWN_ENTRY] = value;
573 } else if (crm == 5 && opcode_2 == 2) {
574 CP15[CP15_MAIN_TLB_LOCKDOWN_VIRT_ADDRESS] = value;
575 } else if (crm == 6 && opcode_2 == 2) {
576 CP15[CP15_MAIN_TLB_LOCKDOWN_PHYS_ADDRESS] = value;
577 } else if (crm == 7 && opcode_2 == 2) {
578 CP15[CP15_MAIN_TLB_LOCKDOWN_ATTRIBUTE] = value;
579 }
580 } else if (opcode_1 == 7 && crm == 1 && opcode_2 == 0) {
581 CP15[CP15_TLB_DEBUG_CONTROL] = value;
582 }
583 }
584 }
585
586 // Unprivileged registers
587 if (crn == 7 && opcode_1 == 0 && crm == 5 && opcode_2 == 4) {
588 CP15[CP15_FLUSH_PREFETCH_BUFFER] = value;
589 } else if (crn == 7 && opcode_1 == 0 && crm == 10) {
590 if (opcode_2 == 4)
591 CP15[CP15_DATA_SYNC_BARRIER] = value;
592 else if (opcode_2 == 5)
593 CP15[CP15_DATA_MEMORY_BARRIER] = value;
594 } else if (crn == 13 && opcode_1 == 0 && crm == 0 && opcode_2 == 2) {
595 CP15[CP15_THREAD_UPRW] = value;
596 }
597}
diff --git a/src/core/arm/skyeye_common/armstate.h b/src/core/arm/skyeye_common/armstate.h
deleted file mode 100644
index 893877797..000000000
--- a/src/core/arm/skyeye_common/armstate.h
+++ /dev/null
@@ -1,245 +0,0 @@
1/* armdefs.h -- ARMulator common definitions: ARM6 Instruction Emulator.
2 Copyright (C) 1994 Advanced RISC Machines Ltd.
3
4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation; either version 2 of the License, or
7 (at your option) any later version.
8
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
13
14 You should have received a copy of the GNU General Public License
15 along with this program; if not, write to the Free Software
16 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
17
18#pragma once
19
20#include <array>
21#include <unordered_map>
22#include "common/common_types.h"
23#include "core/arm/skyeye_common/arm_regformat.h"
24
25// Signal levels
26enum { LOW = 0, HIGH = 1, LOWHIGH = 1, HIGHLOW = 2 };
27
28// Cache types
29enum {
30 NONCACHE = 0,
31 DATACACHE = 1,
32 INSTCACHE = 2,
33};
34
35// ARM privilege modes
36enum PrivilegeMode {
37 USER32MODE = 16,
38 FIQ32MODE = 17,
39 IRQ32MODE = 18,
40 SVC32MODE = 19,
41 ABORT32MODE = 23,
42 UNDEF32MODE = 27,
43 SYSTEM32MODE = 31
44};
45
46// ARM privilege mode register banks
47enum {
48 USERBANK = 0,
49 FIQBANK = 1,
50 IRQBANK = 2,
51 SVCBANK = 3,
52 ABORTBANK = 4,
53 UNDEFBANK = 5,
54 DUMMYBANK = 6,
55 SYSTEMBANK = 7
56};
57
58// Hardware vector addresses
59enum {
60 ARMResetV = 0,
61 ARMUndefinedInstrV = 4,
62 ARMSWIV = 8,
63 ARMPrefetchAbortV = 12,
64 ARMDataAbortV = 16,
65 ARMAddrExceptnV = 20,
66 ARMIRQV = 24,
67 ARMFIQV = 28,
68 ARMErrorV = 32, // This is an offset, not an address!
69
70 ARMul_ResetV = ARMResetV,
71 ARMul_UndefinedInstrV = ARMUndefinedInstrV,
72 ARMul_SWIV = ARMSWIV,
73 ARMul_PrefetchAbortV = ARMPrefetchAbortV,
74 ARMul_DataAbortV = ARMDataAbortV,
75 ARMul_AddrExceptnV = ARMAddrExceptnV,
76 ARMul_IRQV = ARMIRQV,
77 ARMul_FIQV = ARMFIQV
78};
79
80// Coprocessor status values
81enum {
82 ARMul_FIRST = 0,
83 ARMul_TRANSFER = 1,
84 ARMul_BUSY = 2,
85 ARMul_DATA = 3,
86 ARMul_INTERRUPT = 4,
87 ARMul_DONE = 0,
88 ARMul_CANT = 1,
89 ARMul_INC = 3
90};
91
92// Instruction condition codes
93enum ConditionCode {
94 EQ = 0,
95 NE = 1,
96 CS = 2,
97 CC = 3,
98 MI = 4,
99 PL = 5,
100 VS = 6,
101 VC = 7,
102 HI = 8,
103 LS = 9,
104 GE = 10,
105 LT = 11,
106 GT = 12,
107 LE = 13,
108 AL = 14,
109 NV = 15,
110};
111
112// Flags for use with the APSR.
113enum : u32 {
114 NBIT = (1U << 31U),
115 ZBIT = (1 << 30),
116 CBIT = (1 << 29),
117 VBIT = (1 << 28),
118 QBIT = (1 << 27),
119 JBIT = (1 << 24),
120 EBIT = (1 << 9),
121 ABIT = (1 << 8),
122 IBIT = (1 << 7),
123 FBIT = (1 << 6),
124 TBIT = (1 << 5),
125
126 // Masks for groups of bits in the APSR.
127 MODEBITS = 0x1F,
128 INTBITS = 0x1C0,
129};
130
131// Values for Emulate.
132enum {
133 STOP = 0, // Stop
134 CHANGEMODE = 1, // Change mode
135 ONCE = 2, // Execute just one iteration
136 RUN = 3 // Continuous execution
137};
138
139struct ARMul_State final {
140public:
141 explicit ARMul_State(PrivilegeMode initial_mode);
142
143 void ChangePrivilegeMode(u32 new_mode);
144 void Reset();
145
146 // Reads/writes data in big/little endian format based on the
147 // state of the E (endian) bit in the APSR.
148 u8 ReadMemory8(u32 address) const;
149 u16 ReadMemory16(u32 address) const;
150 u32 ReadMemory32(u32 address) const;
151 u64 ReadMemory64(u32 address) const;
152 void WriteMemory8(u32 address, u8 data);
153 void WriteMemory16(u32 address, u16 data);
154 void WriteMemory32(u32 address, u32 data);
155 void WriteMemory64(u32 address, u64 data);
156
157 u32 ReadCP15Register(u32 crn, u32 opcode_1, u32 crm, u32 opcode_2) const;
158 void WriteCP15Register(u32 value, u32 crn, u32 opcode_1, u32 crm, u32 opcode_2);
159
160 // Exclusive memory access functions
161 bool IsExclusiveMemoryAccess(u32 address) const {
162 return exclusive_state && exclusive_tag == (address & RESERVATION_GRANULE_MASK);
163 }
164 void SetExclusiveMemoryAddress(u32 address) {
165 exclusive_tag = address & RESERVATION_GRANULE_MASK;
166 exclusive_state = true;
167 }
168 void UnsetExclusiveMemoryAddress() {
169 exclusive_tag = 0xFFFFFFFF;
170 exclusive_state = false;
171 }
172
173 // Whether or not the given CPU is in big endian mode (E bit is set)
174 bool InBigEndianMode() const {
175 return (Cpsr & (1 << 9)) != 0;
176 }
177 // Whether or not the given CPU is in a mode other than user mode.
178 bool InAPrivilegedMode() const {
179 return (Mode != USER32MODE);
180 }
181 // Note that for the 3DS, a Thumb instruction will only ever be
182 // two bytes in size. Thus we don't need to worry about ThumbEE
183 // or Thumb-2 where instructions can be 4 bytes in length.
184 u32 GetInstructionSize() const {
185 return TFlag ? 2 : 4;
186 }
187
188 std::array<u32, 16> Reg{}; // The current register file
189 std::array<u32, 2> Reg_usr{};
190 std::array<u32, 2> Reg_svc{}; // R13_SVC R14_SVC
191 std::array<u32, 2> Reg_abort{}; // R13_ABORT R14_ABORT
192 std::array<u32, 2> Reg_undef{}; // R13 UNDEF R14 UNDEF
193 std::array<u32, 2> Reg_irq{}; // R13_IRQ R14_IRQ
194 std::array<u32, 7> Reg_firq{}; // R8---R14 FIRQ
195 std::array<u32, 7> Spsr{}; // The exception psr's
196 std::array<u32, CP15_REGISTER_COUNT> CP15{};
197
198 // FPSID, FPSCR, and FPEXC
199 std::array<u32, VFP_SYSTEM_REGISTER_COUNT> VFP{};
200
201 // VFPv2 and VFPv3-D16 has 16 doubleword registers (D0-D16 or S0-S31).
202 // VFPv3-D32/ASIMD may have up to 32 doubleword registers (D0-D31),
203 // and only 32 singleword registers are accessible (S0-S31).
204 std::array<u32, 64> ExtReg{};
205
206 u32 Emulate; // To start and stop emulation
207 u32 Cpsr; // The current PSR
208 u32 Spsr_copy;
209 u32 phys_pc;
210
211 u32 Mode; // The current mode
212 u32 Bank; // The current register bank
213
214 u32 NFlag, ZFlag, CFlag, VFlag, IFFlags; // Dummy flags for speed
215 unsigned int shifter_carry_out;
216
217 u32 TFlag; // Thumb state
218
219 unsigned long long NumInstrs; // The number of instructions executed
220 unsigned NumInstrsToExecute;
221
222 unsigned NresetSig; // Reset the processor
223 unsigned NfiqSig;
224 unsigned NirqSig;
225
226 unsigned abortSig;
227 unsigned NtransSig;
228 unsigned bigendSig;
229 unsigned syscallSig;
230
231 // TODO(bunnei): Move this cache to a better place - it should be per codeset (likely per
232 // process for our purposes), not per ARMul_State (which tracks CPU core state).
233 std::unordered_map<u32, std::size_t> instruction_cache;
234
235private:
236 void ResetMPCoreCP15Registers();
237
238 // Defines a reservation granule of 2 words, which protects the first 2 words starting at the
239 // tag. This is the smallest granule allowed by the v7 spec, and is coincidentally just large
240 // enough to support LDR/STREXD.
241 static const u32 RESERVATION_GRANULE_MASK = 0xFFFFFFF8;
242
243 u32 exclusive_tag; // The address for which the local monitor is in exclusive access mode
244 bool exclusive_state;
245};
diff --git a/src/core/arm/skyeye_common/armsupp.cpp b/src/core/arm/skyeye_common/armsupp.cpp
deleted file mode 100644
index 06aa1b075..000000000
--- a/src/core/arm/skyeye_common/armsupp.cpp
+++ /dev/null
@@ -1,189 +0,0 @@
1/* armsupp.c -- ARMulator support code: ARM6 Instruction Emulator.
2 Copyright (C) 1994 Advanced RISC Machines Ltd.
3
4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation; either version 2 of the License, or
7 (at your option) any later version.
8
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
13
14 You should have received a copy of the GNU General Public License
15 along with this program; if not, write to the Free Software
16 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
17
18#include "common/logging/log.h"
19#include "core/arm/skyeye_common/arm_regformat.h"
20#include "core/arm/skyeye_common/armstate.h"
21#include "core/arm/skyeye_common/armsupp.h"
22
23// Unsigned sum of absolute difference
24u8 ARMul_UnsignedAbsoluteDifference(u8 left, u8 right) {
25 if (left > right)
26 return left - right;
27
28 return right - left;
29}
30
31// Add with carry, indicates if a carry-out or signed overflow occurred.
32u32 AddWithCarry(u32 left, u32 right, u32 carry_in, bool* carry_out_occurred,
33 bool* overflow_occurred) {
34 u64 unsigned_sum = (u64)left + (u64)right + (u64)carry_in;
35 s64 signed_sum = (s64)(s32)left + (s64)(s32)right + (s64)carry_in;
36 u64 result = (unsigned_sum & 0xFFFFFFFF);
37
38 if (carry_out_occurred)
39 *carry_out_occurred = (result != unsigned_sum);
40
41 if (overflow_occurred)
42 *overflow_occurred = ((s64)(s32)result != signed_sum);
43
44 return (u32)result;
45}
46
47// Compute whether an addition of A and B, giving RESULT, overflowed.
48bool AddOverflow(u32 a, u32 b, u32 result) {
49 return ((NEG(a) && NEG(b) && POS(result)) || (POS(a) && POS(b) && NEG(result)));
50}
51
52// Compute whether a subtraction of A and B, giving RESULT, overflowed.
53bool SubOverflow(u32 a, u32 b, u32 result) {
54 return ((NEG(a) && POS(b) && POS(result)) || (POS(a) && NEG(b) && NEG(result)));
55}
56
57// Returns true if the Q flag should be set as a result of overflow.
58bool ARMul_AddOverflowQ(u32 a, u32 b) {
59 u32 result = a + b;
60 if (((result ^ a) & (u32)0x80000000) && ((a ^ b) & (u32)0x80000000) == 0)
61 return true;
62
63 return false;
64}
65
66// 8-bit signed saturated addition
67u8 ARMul_SignedSaturatedAdd8(u8 left, u8 right) {
68 u8 result = left + right;
69
70 if (((result ^ left) & 0x80) && ((left ^ right) & 0x80) == 0) {
71 if (left & 0x80)
72 result = 0x80;
73 else
74 result = 0x7F;
75 }
76
77 return result;
78}
79
80// 8-bit signed saturated subtraction
81u8 ARMul_SignedSaturatedSub8(u8 left, u8 right) {
82 u8 result = left - right;
83
84 if (((result ^ left) & 0x80) && ((left ^ right) & 0x80) != 0) {
85 if (left & 0x80)
86 result = 0x80;
87 else
88 result = 0x7F;
89 }
90
91 return result;
92}
93
94// 16-bit signed saturated addition
95u16 ARMul_SignedSaturatedAdd16(u16 left, u16 right) {
96 u16 result = left + right;
97
98 if (((result ^ left) & 0x8000) && ((left ^ right) & 0x8000) == 0) {
99 if (left & 0x8000)
100 result = 0x8000;
101 else
102 result = 0x7FFF;
103 }
104
105 return result;
106}
107
108// 16-bit signed saturated subtraction
109u16 ARMul_SignedSaturatedSub16(u16 left, u16 right) {
110 u16 result = left - right;
111
112 if (((result ^ left) & 0x8000) && ((left ^ right) & 0x8000) != 0) {
113 if (left & 0x8000)
114 result = 0x8000;
115 else
116 result = 0x7FFF;
117 }
118
119 return result;
120}
121
122// 8-bit unsigned saturated addition
123u8 ARMul_UnsignedSaturatedAdd8(u8 left, u8 right) {
124 u8 result = left + right;
125
126 if (result < left)
127 result = 0xFF;
128
129 return result;
130}
131
132// 16-bit unsigned saturated addition
133u16 ARMul_UnsignedSaturatedAdd16(u16 left, u16 right) {
134 u16 result = left + right;
135
136 if (result < left)
137 result = 0xFFFF;
138
139 return result;
140}
141
142// 8-bit unsigned saturated subtraction
143u8 ARMul_UnsignedSaturatedSub8(u8 left, u8 right) {
144 if (left <= right)
145 return 0;
146
147 return left - right;
148}
149
150// 16-bit unsigned saturated subtraction
151u16 ARMul_UnsignedSaturatedSub16(u16 left, u16 right) {
152 if (left <= right)
153 return 0;
154
155 return left - right;
156}
157
158// Signed saturation.
159u32 ARMul_SignedSatQ(s32 value, u8 shift, bool* saturation_occurred) {
160 const u32 max = (1 << shift) - 1;
161 const s32 top = (value >> shift);
162
163 if (top > 0) {
164 *saturation_occurred = true;
165 return max;
166 } else if (top < -1) {
167 *saturation_occurred = true;
168 return ~max;
169 }
170
171 *saturation_occurred = false;
172 return (u32)value;
173}
174
175// Unsigned saturation
176u32 ARMul_UnsignedSatQ(s32 value, u8 shift, bool* saturation_occurred) {
177 const u32 max = (1 << shift) - 1;
178
179 if (value < 0) {
180 *saturation_occurred = true;
181 return 0;
182 } else if ((u32)value > max) {
183 *saturation_occurred = true;
184 return max;
185 }
186
187 *saturation_occurred = false;
188 return (u32)value;
189}
diff --git a/src/core/arm/skyeye_common/armsupp.h b/src/core/arm/skyeye_common/armsupp.h
deleted file mode 100644
index bf9299c07..000000000
--- a/src/core/arm/skyeye_common/armsupp.h
+++ /dev/null
@@ -1,32 +0,0 @@
1// Copyright 2014 Citra Emulator Project
2// Licensed under GPLv2 or any later version
3// Refer to the license.txt file included.
4
5#pragma once
6
7#include "common/common_types.h"
8
9#define BITS(s, a, b) ((s << ((sizeof(s) * 8 - 1) - b)) >> (sizeof(s) * 8 - b + a - 1))
10#define BIT(s, n) ((s >> (n)) & 1)
11
12#define POS(i) ((~(i)) >> 31)
13#define NEG(i) ((i) >> 31)
14
15bool AddOverflow(u32, u32, u32);
16bool SubOverflow(u32, u32, u32);
17
18u32 AddWithCarry(u32, u32, u32, bool*, bool*);
19bool ARMul_AddOverflowQ(u32, u32);
20
21u8 ARMul_SignedSaturatedAdd8(u8, u8);
22u8 ARMul_SignedSaturatedSub8(u8, u8);
23u16 ARMul_SignedSaturatedAdd16(u16, u16);
24u16 ARMul_SignedSaturatedSub16(u16, u16);
25
26u8 ARMul_UnsignedSaturatedAdd8(u8, u8);
27u16 ARMul_UnsignedSaturatedAdd16(u16, u16);
28u8 ARMul_UnsignedSaturatedSub8(u8, u8);
29u16 ARMul_UnsignedSaturatedSub16(u16, u16);
30u8 ARMul_UnsignedAbsoluteDifference(u8, u8);
31u32 ARMul_SignedSatQ(s32, u8, bool*);
32u32 ARMul_UnsignedSatQ(s32, u8, bool*);
diff --git a/src/core/arm/skyeye_common/vfp/asm_vfp.h b/src/core/arm/skyeye_common/vfp/asm_vfp.h
deleted file mode 100644
index 15b2394eb..000000000
--- a/src/core/arm/skyeye_common/vfp/asm_vfp.h
+++ /dev/null
@@ -1,83 +0,0 @@
1/*
2 * arch/arm/include/asm/vfp.h
3 *
4 * VFP register definitions.
5 * First, the standard VFP set.
6 */
7
8#pragma once
9
10// ARM11 MPCore FPSID Information
11// Note that these are used as values and not as flags.
12enum : u32 {
13 VFP_FPSID_IMPLMEN = 0x41, // Implementation code. Should be the same as cp15 0 c0 0
14 VFP_FPSID_SW = 0, // Software emulation bit value
15 VFP_FPSID_SUBARCH = 0x1, // Subarchitecture version number
16 VFP_FPSID_PARTNUM = 0x20, // Part number
17 VFP_FPSID_VARIANT = 0xB, // Variant number
18 VFP_FPSID_REVISION = 0x4 // Revision number
19};
20
21// FPEXC bits
22enum : u32 {
23 FPEXC_EX = (1U << 31U),
24 FPEXC_EN = (1 << 30),
25 FPEXC_DEX = (1 << 29),
26 FPEXC_FP2V = (1 << 28),
27 FPEXC_VV = (1 << 27),
28 FPEXC_TFV = (1 << 26),
29 FPEXC_LENGTH_BIT = (8),
30 FPEXC_LENGTH_MASK = (7 << FPEXC_LENGTH_BIT),
31 FPEXC_IDF = (1 << 7),
32 FPEXC_IXF = (1 << 4),
33 FPEXC_UFF = (1 << 3),
34 FPEXC_OFF = (1 << 2),
35 FPEXC_DZF = (1 << 1),
36 FPEXC_IOF = (1 << 0),
37 FPEXC_TRAP_MASK = (FPEXC_IDF | FPEXC_IXF | FPEXC_UFF | FPEXC_OFF | FPEXC_DZF | FPEXC_IOF)
38};
39
40// FPSCR Flags
41enum : u32 {
42 FPSCR_NFLAG = (1U << 31U), // Negative condition flag
43 FPSCR_ZFLAG = (1 << 30), // Zero condition flag
44 FPSCR_CFLAG = (1 << 29), // Carry condition flag
45 FPSCR_VFLAG = (1 << 28), // Overflow condition flag
46
47 FPSCR_QC = (1 << 27), // Cumulative saturation bit
48 FPSCR_AHP = (1 << 26), // Alternative half-precision control bit
49 FPSCR_DEFAULT_NAN = (1 << 25), // Default NaN mode control bit
50 FPSCR_FLUSH_TO_ZERO = (1 << 24), // Flush-to-zero mode control bit
51 FPSCR_RMODE_MASK = (3 << 22), // Rounding Mode bit mask
52 FPSCR_STRIDE_MASK = (3 << 20), // Vector stride bit mask
53 FPSCR_LENGTH_MASK = (7 << 16), // Vector length bit mask
54
55 FPSCR_IDE = (1 << 15), // Input Denormal exception trap enable.
56 FPSCR_IXE = (1 << 12), // Inexact exception trap enable
57 FPSCR_UFE = (1 << 11), // Undeflow exception trap enable
58 FPSCR_OFE = (1 << 10), // Overflow exception trap enable
59 FPSCR_DZE = (1 << 9), // Division by Zero exception trap enable
60 FPSCR_IOE = (1 << 8), // Invalid Operation exception trap enable
61
62 FPSCR_IDC = (1 << 7), // Input Denormal cumulative exception bit
63 FPSCR_IXC = (1 << 4), // Inexact cumulative exception bit
64 FPSCR_UFC = (1 << 3), // Undeflow cumulative exception bit
65 FPSCR_OFC = (1 << 2), // Overflow cumulative exception bit
66 FPSCR_DZC = (1 << 1), // Division by Zero cumulative exception bit
67 FPSCR_IOC = (1 << 0), // Invalid Operation cumulative exception bit
68};
69
70// FPSCR bit offsets
71enum : u32 {
72 FPSCR_RMODE_BIT = 22,
73 FPSCR_STRIDE_BIT = 20,
74 FPSCR_LENGTH_BIT = 16,
75};
76
77// FPSCR rounding modes
78enum : u32 {
79 FPSCR_ROUND_NEAREST = (0 << 22),
80 FPSCR_ROUND_PLUSINF = (1 << 22),
81 FPSCR_ROUND_MINUSINF = (2 << 22),
82 FPSCR_ROUND_TOZERO = (3 << 22)
83};
diff --git a/src/core/arm/skyeye_common/vfp/vfp.cpp b/src/core/arm/skyeye_common/vfp/vfp.cpp
deleted file mode 100644
index 0466b999a..000000000
--- a/src/core/arm/skyeye_common/vfp/vfp.cpp
+++ /dev/null
@@ -1,137 +0,0 @@
1/*
2 armvfp.c - ARM VFPv3 emulation unit
3 Copyright (C) 2003 Skyeye Develop Group
4 for help please send mail to <skyeye-developer@lists.gro.clinux.org>
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19*/
20
21/* Note: this file handles interface with arm core and vfp registers */
22
23#include "common/common_funcs.h"
24#include "common/common_types.h"
25#include "common/logging/log.h"
26#include "core/arm/skyeye_common/armstate.h"
27#include "core/arm/skyeye_common/vfp/asm_vfp.h"
28#include "core/arm/skyeye_common/vfp/vfp.h"
29
30void VFPInit(ARMul_State* state) {
31 state->VFP[VFP_FPSID] = VFP_FPSID_IMPLMEN << 24 | VFP_FPSID_SW << 23 | VFP_FPSID_SUBARCH << 16 |
32 VFP_FPSID_PARTNUM << 8 | VFP_FPSID_VARIANT << 4 | VFP_FPSID_REVISION;
33 state->VFP[VFP_FPEXC] = 0;
34 state->VFP[VFP_FPSCR] = 0;
35
36 // ARM11 MPCore instruction register reset values.
37 state->VFP[VFP_FPINST] = 0xEE000A00;
38 state->VFP[VFP_FPINST2] = 0;
39
40 // ARM11 MPCore feature register values.
41 state->VFP[VFP_MVFR0] = 0x11111111;
42 state->VFP[VFP_MVFR1] = 0;
43}
44
45void VMOVBRS(ARMul_State* state, u32 to_arm, u32 t, u32 n, u32* value) {
46 if (to_arm) {
47 *value = state->ExtReg[n];
48 } else {
49 state->ExtReg[n] = *value;
50 }
51}
52
53void VMOVBRRD(ARMul_State* state, u32 to_arm, u32 t, u32 t2, u32 n, u32* value1, u32* value2) {
54 if (to_arm) {
55 *value2 = state->ExtReg[n * 2 + 1];
56 *value1 = state->ExtReg[n * 2];
57 } else {
58 state->ExtReg[n * 2 + 1] = *value2;
59 state->ExtReg[n * 2] = *value1;
60 }
61}
62void VMOVBRRSS(ARMul_State* state, u32 to_arm, u32 t, u32 t2, u32 n, u32* value1, u32* value2) {
63 if (to_arm) {
64 *value1 = state->ExtReg[n + 0];
65 *value2 = state->ExtReg[n + 1];
66 } else {
67 state->ExtReg[n + 0] = *value1;
68 state->ExtReg[n + 1] = *value2;
69 }
70}
71
72void VMOVI(ARMul_State* state, u32 single, u32 d, u32 imm) {
73 if (single) {
74 state->ExtReg[d] = imm;
75 } else {
76 /* Check endian please */
77 state->ExtReg[d * 2 + 1] = imm;
78 state->ExtReg[d * 2] = 0;
79 }
80}
81void VMOVR(ARMul_State* state, u32 single, u32 d, u32 m) {
82 if (single) {
83 state->ExtReg[d] = state->ExtReg[m];
84 } else {
85 /* Check endian please */
86 state->ExtReg[d * 2 + 1] = state->ExtReg[m * 2 + 1];
87 state->ExtReg[d * 2] = state->ExtReg[m * 2];
88 }
89}
90
91/* Miscellaneous functions */
92s32 vfp_get_float(ARMul_State* state, unsigned int reg) {
93 LOG_TRACE(Core_ARM, "VFP get float: s%d=[%08x]", reg, state->ExtReg[reg]);
94 return state->ExtReg[reg];
95}
96
97void vfp_put_float(ARMul_State* state, s32 val, unsigned int reg) {
98 LOG_TRACE(Core_ARM, "VFP put float: s%d <= [%08x]", reg, val);
99 state->ExtReg[reg] = val;
100}
101
102u64 vfp_get_double(ARMul_State* state, unsigned int reg) {
103 u64 result = ((u64)state->ExtReg[reg * 2 + 1]) << 32 | state->ExtReg[reg * 2];
104 LOG_TRACE(Core_ARM, "VFP get double: s[%d-%d]=[%016llx]", reg * 2 + 1, reg * 2, result);
105 return result;
106}
107
108void vfp_put_double(ARMul_State* state, u64 val, unsigned int reg) {
109 LOG_TRACE(Core_ARM, "VFP put double: s[%d-%d] <= [%08x-%08x]", reg * 2 + 1, reg * 2,
110 (u32)(val >> 32), (u32)(val & 0xffffffff));
111 state->ExtReg[reg * 2] = (u32)(val & 0xffffffff);
112 state->ExtReg[reg * 2 + 1] = (u32)(val >> 32);
113}
114
115/*
116 * Process bitmask of exception conditions. (from vfpmodule.c)
117 */
118void vfp_raise_exceptions(ARMul_State* state, u32 exceptions, u32 inst, u32 fpscr) {
119 LOG_TRACE(Core_ARM, "VFP: raising exceptions %08x", exceptions);
120
121 if (exceptions == VFP_EXCEPTION_ERROR) {
122 LOG_CRITICAL(Core_ARM, "unhandled bounce %x", inst);
123 Crash();
124 }
125
126 /*
127 * If any of the status flags are set, update the FPSCR.
128 * Comparison instructions always return at least one of
129 * these flags set.
130 */
131 if (exceptions & (FPSCR_NFLAG | FPSCR_ZFLAG | FPSCR_CFLAG | FPSCR_VFLAG))
132 fpscr &= ~(FPSCR_NFLAG | FPSCR_ZFLAG | FPSCR_CFLAG | FPSCR_VFLAG);
133
134 fpscr |= exceptions;
135
136 state->VFP[VFP_FPSCR] = fpscr;
137}
diff --git a/src/core/arm/skyeye_common/vfp/vfp.h b/src/core/arm/skyeye_common/vfp/vfp.h
deleted file mode 100644
index fe9c4dac8..000000000
--- a/src/core/arm/skyeye_common/vfp/vfp.h
+++ /dev/null
@@ -1,43 +0,0 @@
1/*
2 vfp/vfp.h - ARM VFPv3 emulation unit - vfp interface
3 Copyright (C) 2003 Skyeye Develop Group
4 for help please send mail to <skyeye-developer@lists.gro.clinux.org>
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19*/
20
21#pragma once
22
23#include "core/arm/skyeye_common/vfp/vfp_helper.h" /* for references to cdp SoftFloat functions */
24
25#define VFP_DEBUG_UNTESTED(x) LOG_TRACE(Core_ARM, "in func %s, " #x " untested", __FUNCTION__);
26#define CHECK_VFP_ENABLED
27#define CHECK_VFP_CDP_RET vfp_raise_exceptions(cpu, ret, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
28
29void VFPInit(ARMul_State* state);
30
31s32 vfp_get_float(ARMul_State* state, u32 reg);
32void vfp_put_float(ARMul_State* state, s32 val, u32 reg);
33u64 vfp_get_double(ARMul_State* state, u32 reg);
34void vfp_put_double(ARMul_State* state, u64 val, u32 reg);
35void vfp_raise_exceptions(ARMul_State* state, u32 exceptions, u32 inst, u32 fpscr);
36u32 vfp_single_cpdo(ARMul_State* state, u32 inst, u32 fpscr);
37u32 vfp_double_cpdo(ARMul_State* state, u32 inst, u32 fpscr);
38
39void VMOVBRS(ARMul_State* state, u32 to_arm, u32 t, u32 n, u32* value);
40void VMOVBRRD(ARMul_State* state, u32 to_arm, u32 t, u32 t2, u32 n, u32* value1, u32* value2);
41void VMOVBRRSS(ARMul_State* state, u32 to_arm, u32 t, u32 t2, u32 n, u32* value1, u32* value2);
42void VMOVI(ARMul_State* state, u32 single, u32 d, u32 imm);
43void VMOVR(ARMul_State* state, u32 single, u32 d, u32 imm);
diff --git a/src/core/arm/skyeye_common/vfp/vfp_helper.h b/src/core/arm/skyeye_common/vfp/vfp_helper.h
deleted file mode 100644
index 1eba71b48..000000000
--- a/src/core/arm/skyeye_common/vfp/vfp_helper.h
+++ /dev/null
@@ -1,433 +0,0 @@
1/*
2 vfp/vfp.h - ARM VFPv3 emulation unit - SoftFloat lib helper
3 Copyright (C) 2003 Skyeye Develop Group
4 for help please send mail to <skyeye-developer@lists.gro.clinux.org>
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19*/
20
21/*
22 * The following code is derivative from Linux Android kernel vfp
23 * floating point support.
24 *
25 * Copyright (C) 2004 ARM Limited.
26 * Written by Deep Blue Solutions Limited.
27 *
28 * This program is free software; you can redistribute it and/or modify
29 * it under the terms of the GNU General Public License version 2 as
30 * published by the Free Software Foundation.
31 */
32
33#pragma once
34
35#include <cstdio>
36#include "common/common_types.h"
37#include "core/arm/skyeye_common/armstate.h"
38#include "core/arm/skyeye_common/vfp/asm_vfp.h"
39
40#define do_div(n, base) \
41 { n /= base; }
42
43enum : u32 {
44 FOP_MASK = 0x00b00040,
45 FOP_FMAC = 0x00000000,
46 FOP_FNMAC = 0x00000040,
47 FOP_FMSC = 0x00100000,
48 FOP_FNMSC = 0x00100040,
49 FOP_FMUL = 0x00200000,
50 FOP_FNMUL = 0x00200040,
51 FOP_FADD = 0x00300000,
52 FOP_FSUB = 0x00300040,
53 FOP_FDIV = 0x00800000,
54 FOP_EXT = 0x00b00040
55};
56
57#define FOP_TO_IDX(inst) ((inst & 0x00b00000) >> 20 | (inst & (1 << 6)) >> 4)
58
59enum : u32 {
60 FEXT_MASK = 0x000f0080,
61 FEXT_FCPY = 0x00000000,
62 FEXT_FABS = 0x00000080,
63 FEXT_FNEG = 0x00010000,
64 FEXT_FSQRT = 0x00010080,
65 FEXT_FCMP = 0x00040000,
66 FEXT_FCMPE = 0x00040080,
67 FEXT_FCMPZ = 0x00050000,
68 FEXT_FCMPEZ = 0x00050080,
69 FEXT_FCVT = 0x00070080,
70 FEXT_FUITO = 0x00080000,
71 FEXT_FSITO = 0x00080080,
72 FEXT_FTOUI = 0x000c0000,
73 FEXT_FTOUIZ = 0x000c0080,
74 FEXT_FTOSI = 0x000d0000,
75 FEXT_FTOSIZ = 0x000d0080
76};
77
78#define FEXT_TO_IDX(inst) ((inst & 0x000f0000) >> 15 | (inst & (1 << 7)) >> 7)
79
80#define vfp_get_sd(inst) ((inst & 0x0000f000) >> 11 | (inst & (1 << 22)) >> 22)
81#define vfp_get_dd(inst) ((inst & 0x0000f000) >> 12 | (inst & (1 << 22)) >> 18)
82#define vfp_get_sm(inst) ((inst & 0x0000000f) << 1 | (inst & (1 << 5)) >> 5)
83#define vfp_get_dm(inst) ((inst & 0x0000000f) | (inst & (1 << 5)) >> 1)
84#define vfp_get_sn(inst) ((inst & 0x000f0000) >> 15 | (inst & (1 << 7)) >> 7)
85#define vfp_get_dn(inst) ((inst & 0x000f0000) >> 16 | (inst & (1 << 7)) >> 3)
86
87#define vfp_single(inst) (((inst)&0x0000f00) == 0xa00)
88
89inline u32 vfp_shiftright32jamming(u32 val, unsigned int shift) {
90 if (shift) {
91 if (shift < 32)
92 val = val >> shift | ((val << (32 - shift)) != 0);
93 else
94 val = val != 0;
95 }
96 return val;
97}
98
99inline u64 vfp_shiftright64jamming(u64 val, unsigned int shift) {
100 if (shift) {
101 if (shift < 64)
102 val = val >> shift | ((val << (64 - shift)) != 0);
103 else
104 val = val != 0;
105 }
106 return val;
107}
108
109inline u32 vfp_hi64to32jamming(u64 val) {
110 u32 v;
111 u32 highval = val >> 32;
112 u32 lowval = val & 0xffffffff;
113
114 if (lowval >= 1)
115 v = highval | 1;
116 else
117 v = highval;
118
119 return v;
120}
121
122inline void add128(u64* resh, u64* resl, u64 nh, u64 nl, u64 mh, u64 ml) {
123 *resl = nl + ml;
124 *resh = nh + mh;
125 if (*resl < nl)
126 *resh += 1;
127}
128
129inline void sub128(u64* resh, u64* resl, u64 nh, u64 nl, u64 mh, u64 ml) {
130 *resl = nl - ml;
131 *resh = nh - mh;
132 if (*resl > nl)
133 *resh -= 1;
134}
135
136inline void mul64to128(u64* resh, u64* resl, u64 n, u64 m) {
137 u32 nh, nl, mh, ml;
138 u64 rh, rma, rmb, rl;
139
140 nl = static_cast<u32>(n);
141 ml = static_cast<u32>(m);
142 rl = (u64)nl * ml;
143
144 nh = n >> 32;
145 rma = (u64)nh * ml;
146
147 mh = m >> 32;
148 rmb = (u64)nl * mh;
149 rma += rmb;
150
151 rh = (u64)nh * mh;
152 rh += ((u64)(rma < rmb) << 32) + (rma >> 32);
153
154 rma <<= 32;
155 rl += rma;
156 rh += (rl < rma);
157
158 *resl = rl;
159 *resh = rh;
160}
161
162inline void shift64left(u64* resh, u64* resl, u64 n) {
163 *resh = n >> 63;
164 *resl = n << 1;
165}
166
167inline u64 vfp_hi64multiply64(u64 n, u64 m) {
168 u64 rh, rl;
169 mul64to128(&rh, &rl, n, m);
170 return rh | (rl != 0);
171}
172
173inline u64 vfp_estimate_div128to64(u64 nh, u64 nl, u64 m) {
174 u64 mh, ml, remh, reml, termh, terml, z;
175
176 if (nh >= m)
177 return ~0ULL;
178 mh = m >> 32;
179 if (mh << 32 <= nh) {
180 z = 0xffffffff00000000ULL;
181 } else {
182 z = nh;
183 do_div(z, mh);
184 z <<= 32;
185 }
186 mul64to128(&termh, &terml, m, z);
187 sub128(&remh, &reml, nh, nl, termh, terml);
188 ml = m << 32;
189 while ((s64)remh < 0) {
190 z -= 0x100000000ULL;
191 add128(&remh, &reml, remh, reml, mh, ml);
192 }
193 remh = (remh << 32) | (reml >> 32);
194 if (mh << 32 <= remh) {
195 z |= 0xffffffff;
196 } else {
197 do_div(remh, mh);
198 z |= remh;
199 }
200 return z;
201}
202
203// Operations on unpacked elements
204#define vfp_sign_negate(sign) (sign ^ 0x8000)
205
206// Single-precision
207struct vfp_single {
208 s16 exponent;
209 u16 sign;
210 u32 significand;
211};
212
213// VFP_SINGLE_MANTISSA_BITS - number of bits in the mantissa
214// VFP_SINGLE_EXPONENT_BITS - number of bits in the exponent
215// VFP_SINGLE_LOW_BITS - number of low bits in the unpacked significand
216// which are not propagated to the float upon packing.
217#define VFP_SINGLE_MANTISSA_BITS (23)
218#define VFP_SINGLE_EXPONENT_BITS (8)
219#define VFP_SINGLE_LOW_BITS (32 - VFP_SINGLE_MANTISSA_BITS - 2)
220#define VFP_SINGLE_LOW_BITS_MASK ((1 << VFP_SINGLE_LOW_BITS) - 1)
221
222// The bit in an unpacked float which indicates that it is a quiet NaN
223#define VFP_SINGLE_SIGNIFICAND_QNAN (1 << (VFP_SINGLE_MANTISSA_BITS - 1 + VFP_SINGLE_LOW_BITS))
224
225// Operations on packed single-precision numbers
226#define vfp_single_packed_sign(v) ((v)&0x80000000)
227#define vfp_single_packed_negate(v) ((v) ^ 0x80000000)
228#define vfp_single_packed_abs(v) ((v) & ~0x80000000)
229#define vfp_single_packed_exponent(v) \
230 (((v) >> VFP_SINGLE_MANTISSA_BITS) & ((1 << VFP_SINGLE_EXPONENT_BITS) - 1))
231#define vfp_single_packed_mantissa(v) ((v) & ((1 << VFP_SINGLE_MANTISSA_BITS) - 1))
232
233enum : u32 {
234 VFP_NUMBER = (1 << 0),
235 VFP_ZERO = (1 << 1),
236 VFP_DENORMAL = (1 << 2),
237 VFP_INFINITY = (1 << 3),
238 VFP_NAN = (1 << 4),
239 VFP_NAN_SIGNAL = (1 << 5),
240
241 VFP_QNAN = (VFP_NAN),
242 VFP_SNAN = (VFP_NAN | VFP_NAN_SIGNAL)
243};
244
245inline int vfp_single_type(const vfp_single* s) {
246 int type = VFP_NUMBER;
247 if (s->exponent == 255) {
248 if (s->significand == 0)
249 type = VFP_INFINITY;
250 else if (s->significand & VFP_SINGLE_SIGNIFICAND_QNAN)
251 type = VFP_QNAN;
252 else
253 type = VFP_SNAN;
254 } else if (s->exponent == 0) {
255 if (s->significand == 0)
256 type |= VFP_ZERO;
257 else
258 type |= VFP_DENORMAL;
259 }
260 return type;
261}
262
263// Unpack a single-precision float. Note that this returns the magnitude
264// of the single-precision float mantissa with the 1. if necessary,
265// aligned to bit 30.
266inline u32 vfp_single_unpack(vfp_single* s, s32 val, u32 fpscr) {
267 u32 exceptions = 0;
268 s->sign = vfp_single_packed_sign(val) >> 16, s->exponent = vfp_single_packed_exponent(val);
269
270 u32 significand = ((u32)val << (32 - VFP_SINGLE_MANTISSA_BITS)) >> 2;
271 if (s->exponent && s->exponent != 255)
272 significand |= 0x40000000;
273 s->significand = significand;
274
275 // If flush-to-zero mode is enabled, turn the denormal into zero.
276 // On a VFPv2 architecture, the sign of the zero is always positive.
277 if ((fpscr & FPSCR_FLUSH_TO_ZERO) != 0 && (vfp_single_type(s) & VFP_DENORMAL) != 0) {
278 s->sign = 0;
279 s->exponent = 0;
280 s->significand = 0;
281 exceptions |= FPSCR_IDC;
282 }
283 return exceptions;
284}
285
286// Re-pack a single-precision float. This assumes that the float is
287// already normalised such that the MSB is bit 30, _not_ bit 31.
288inline s32 vfp_single_pack(const vfp_single* s) {
289 u32 val = (s->sign << 16) + (s->exponent << VFP_SINGLE_MANTISSA_BITS) +
290 (s->significand >> VFP_SINGLE_LOW_BITS);
291 return (s32)val;
292}
293
294u32 vfp_single_normaliseround(ARMul_State* state, int sd, vfp_single* vs, u32 fpscr, u32 exceptions,
295 const char* func);
296
297// Double-precision
298struct vfp_double {
299 s16 exponent;
300 u16 sign;
301 u64 significand;
302};
303
304// VFP_REG_ZERO is a special register number for vfp_get_double
305// which returns (double)0.0. This is useful for the compare with
306// zero instructions.
307#ifdef CONFIG_VFPv3
308#define VFP_REG_ZERO 32
309#else
310#define VFP_REG_ZERO 16
311#endif
312
313#define VFP_DOUBLE_MANTISSA_BITS (52)
314#define VFP_DOUBLE_EXPONENT_BITS (11)
315#define VFP_DOUBLE_LOW_BITS (64 - VFP_DOUBLE_MANTISSA_BITS - 2)
316#define VFP_DOUBLE_LOW_BITS_MASK ((1 << VFP_DOUBLE_LOW_BITS) - 1)
317
318// The bit in an unpacked double which indicates that it is a quiet NaN
319#define VFP_DOUBLE_SIGNIFICAND_QNAN (1ULL << (VFP_DOUBLE_MANTISSA_BITS - 1 + VFP_DOUBLE_LOW_BITS))
320
321// Operations on packed single-precision numbers
322#define vfp_double_packed_sign(v) ((v) & (1ULL << 63))
323#define vfp_double_packed_negate(v) ((v) ^ (1ULL << 63))
324#define vfp_double_packed_abs(v) ((v) & ~(1ULL << 63))
325#define vfp_double_packed_exponent(v) \
326 (((v) >> VFP_DOUBLE_MANTISSA_BITS) & ((1 << VFP_DOUBLE_EXPONENT_BITS) - 1))
327#define vfp_double_packed_mantissa(v) ((v) & ((1ULL << VFP_DOUBLE_MANTISSA_BITS) - 1))
328
329inline int vfp_double_type(const vfp_double* s) {
330 int type = VFP_NUMBER;
331 if (s->exponent == 2047) {
332 if (s->significand == 0)
333 type = VFP_INFINITY;
334 else if (s->significand & VFP_DOUBLE_SIGNIFICAND_QNAN)
335 type = VFP_QNAN;
336 else
337 type = VFP_SNAN;
338 } else if (s->exponent == 0) {
339 if (s->significand == 0)
340 type |= VFP_ZERO;
341 else
342 type |= VFP_DENORMAL;
343 }
344 return type;
345}
346
347// Unpack a double-precision float. Note that this returns the magnitude
348// of the double-precision float mantissa with the 1. if necessary,
349// aligned to bit 62.
350inline u32 vfp_double_unpack(vfp_double* s, s64 val, u32 fpscr) {
351 u32 exceptions = 0;
352 s->sign = vfp_double_packed_sign(val) >> 48;
353 s->exponent = vfp_double_packed_exponent(val);
354
355 u64 significand = ((u64)val << (64 - VFP_DOUBLE_MANTISSA_BITS)) >> 2;
356 if (s->exponent && s->exponent != 2047)
357 significand |= (1ULL << 62);
358 s->significand = significand;
359
360 // If flush-to-zero mode is enabled, turn the denormal into zero.
361 // On a VFPv2 architecture, the sign of the zero is always positive.
362 if ((fpscr & FPSCR_FLUSH_TO_ZERO) != 0 && (vfp_double_type(s) & VFP_DENORMAL) != 0) {
363 s->sign = 0;
364 s->exponent = 0;
365 s->significand = 0;
366 exceptions |= FPSCR_IDC;
367 }
368 return exceptions;
369}
370
371// Re-pack a double-precision float. This assumes that the float is
372// already normalised such that the MSB is bit 30, _not_ bit 31.
373inline s64 vfp_double_pack(const vfp_double* s) {
374 u64 val = ((u64)s->sign << 48) + ((u64)s->exponent << VFP_DOUBLE_MANTISSA_BITS) +
375 (s->significand >> VFP_DOUBLE_LOW_BITS);
376 return (s64)val;
377}
378
379u32 vfp_estimate_sqrt_significand(u32 exponent, u32 significand);
380
381// A special flag to tell the normalisation code not to normalise.
382#define VFP_NAN_FLAG 0x100
383
384// A bit pattern used to indicate the initial (unset) value of the
385// exception mask, in case nothing handles an instruction. This
386// doesn't include the NAN flag, which get masked out before
387// we check for an error.
388#define VFP_EXCEPTION_ERROR ((u32)-1 & ~VFP_NAN_FLAG)
389
390// A flag to tell vfp instruction type.
391// OP_SCALAR - This operation always operates in scalar mode
392// OP_SD - The instruction exceptionally writes to a single precision result.
393// OP_DD - The instruction exceptionally writes to a double precision result.
394// OP_SM - The instruction exceptionally reads from a single precision operand.
395enum : u32 { OP_SCALAR = (1 << 0), OP_SD = (1 << 1), OP_DD = (1 << 1), OP_SM = (1 << 2) };
396
397struct op {
398 u32 (*const fn)(ARMul_State* state, int dd, int dn, int dm, u32 fpscr);
399 u32 flags;
400};
401
402inline u32 fls(u32 x) {
403 int r = 32;
404
405 if (!x)
406 return 0;
407 if (!(x & 0xffff0000u)) {
408 x <<= 16;
409 r -= 16;
410 }
411 if (!(x & 0xff000000u)) {
412 x <<= 8;
413 r -= 8;
414 }
415 if (!(x & 0xf0000000u)) {
416 x <<= 4;
417 r -= 4;
418 }
419 if (!(x & 0xc0000000u)) {
420 x <<= 2;
421 r -= 2;
422 }
423 if (!(x & 0x80000000u)) {
424 x <<= 1;
425 r -= 1;
426 }
427 return r;
428}
429
430u32 vfp_double_multiply(vfp_double* vdd, vfp_double* vdn, vfp_double* vdm, u32 fpscr);
431u32 vfp_double_add(vfp_double* vdd, vfp_double* vdn, vfp_double* vdm, u32 fpscr);
432u32 vfp_double_normaliseround(ARMul_State* state, int dd, vfp_double* vd, u32 fpscr, u32 exceptions,
433 const char* func);
diff --git a/src/core/arm/skyeye_common/vfp/vfpdouble.cpp b/src/core/arm/skyeye_common/vfp/vfpdouble.cpp
deleted file mode 100644
index e5cb54aab..000000000
--- a/src/core/arm/skyeye_common/vfp/vfpdouble.cpp
+++ /dev/null
@@ -1,1247 +0,0 @@
1/*
2 vfp/vfpdouble.c - ARM VFPv3 emulation unit - SoftFloat double instruction
3 Copyright (C) 2003 Skyeye Develop Group
4 for help please send mail to <skyeye-developer@lists.gro.clinux.org>
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19*/
20
21/*
22 * This code is derived in part from :
23 * - Android kernel
24 * - John R. Housers softfloat library, which
25 * carries the following notice:
26 *
27 * ===========================================================================
28 * This C source file is part of the SoftFloat IEC/IEEE Floating-point
29 * Arithmetic Package, Release 2.
30 *
31 * Written by John R. Hauser. This work was made possible in part by the
32 * International Computer Science Institute, located at Suite 600, 1947 Center
33 * Street, Berkeley, California 94704. Funding was partially provided by the
34 * National Science Foundation under grant MIP-9311980. The original version
35 * of this code was written as part of a project to build a fixed-point vector
36 * processor in collaboration with the University of California at Berkeley,
37 * overseen by Profs. Nelson Morgan and John Wawrzynek. More information
38 * is available through the web page `http://HTTP.CS.Berkeley.EDU/~jhauser/
39 * arithmetic/softfloat.html'.
40 *
41 * THIS SOFTWARE IS DISTRIBUTED AS IS, FOR FREE. Although reasonable effort
42 * has been made to avoid it, THIS SOFTWARE MAY CONTAIN FAULTS THAT WILL AT
43 * TIMES RESULT IN INCORRECT BEHAVIOR. USE OF THIS SOFTWARE IS RESTRICTED TO
44 * PERSONS AND ORGANIZATIONS WHO CAN AND WILL TAKE FULL RESPONSIBILITY FOR ANY
45 * AND ALL LOSSES, COSTS, OR OTHER PROBLEMS ARISING FROM ITS USE.
46 *
47 * Derivative works are acceptable, even for commercial purposes, so long as
48 * (1) they include prominent notice that the work is derivative, and (2) they
49 * include prominent notice akin to these three paragraphs for those parts of
50 * this code that are retained.
51 * ===========================================================================
52 */
53
54#include <algorithm>
55#include "common/logging/log.h"
56#include "core/arm/skyeye_common/vfp/asm_vfp.h"
57#include "core/arm/skyeye_common/vfp/vfp.h"
58#include "core/arm/skyeye_common/vfp/vfp_helper.h"
59
60static struct vfp_double vfp_double_default_qnan = {
61 2047, 0, VFP_DOUBLE_SIGNIFICAND_QNAN,
62};
63
64static void vfp_double_dump(const char* str, struct vfp_double* d) {
65 LOG_TRACE(Core_ARM, "VFP: %s: sign=%d exponent=%d significand=%016llx", str, d->sign != 0,
66 d->exponent, d->significand);
67}
68
69static void vfp_double_normalise_denormal(struct vfp_double* vd) {
70 int bits = 31 - fls((u32)(vd->significand >> 32));
71 if (bits == 31)
72 bits = 63 - fls((u32)vd->significand);
73
74 vfp_double_dump("normalise_denormal: in", vd);
75
76 if (bits) {
77 vd->exponent -= bits - 1;
78 vd->significand <<= bits;
79 }
80
81 vfp_double_dump("normalise_denormal: out", vd);
82}
83
84u32 vfp_double_normaliseround(ARMul_State* state, int dd, struct vfp_double* vd, u32 fpscr,
85 u32 exceptions, const char* func) {
86 u64 significand, incr;
87 int exponent, shift, underflow;
88 u32 rmode;
89
90 vfp_double_dump("pack: in", vd);
91
92 /*
93 * Infinities and NaNs are a special case.
94 */
95 if (vd->exponent == 2047 && (vd->significand == 0 || exceptions))
96 goto pack;
97
98 /*
99 * Special-case zero.
100 */
101 if (vd->significand == 0) {
102 vd->exponent = 0;
103 goto pack;
104 }
105
106 exponent = vd->exponent;
107 significand = vd->significand;
108
109 shift = 32 - fls((u32)(significand >> 32));
110 if (shift == 32)
111 shift = 64 - fls((u32)significand);
112 if (shift) {
113 exponent -= shift;
114 significand <<= shift;
115 }
116
117#if 1
118 vd->exponent = exponent;
119 vd->significand = significand;
120 vfp_double_dump("pack: normalised", vd);
121#endif
122
123 /*
124 * Tiny number?
125 */
126 underflow = exponent < 0;
127 if (underflow) {
128 significand = vfp_shiftright64jamming(significand, -exponent);
129 exponent = 0;
130#if 1
131 vd->exponent = exponent;
132 vd->significand = significand;
133 vfp_double_dump("pack: tiny number", vd);
134#endif
135 if (!(significand & ((1ULL << (VFP_DOUBLE_LOW_BITS + 1)) - 1)))
136 underflow = 0;
137
138 int type = vfp_double_type(vd);
139
140 if ((type & VFP_DENORMAL) && (fpscr & FPSCR_FLUSH_TO_ZERO)) {
141 // Flush denormal to positive 0
142 significand = 0;
143
144 vd->sign = 0;
145 vd->significand = significand;
146
147 underflow = 0;
148 exceptions |= FPSCR_UFC;
149 }
150 }
151
152 /*
153 * Select rounding increment.
154 */
155 incr = 0;
156 rmode = fpscr & FPSCR_RMODE_MASK;
157
158 if (rmode == FPSCR_ROUND_NEAREST) {
159 incr = 1ULL << VFP_DOUBLE_LOW_BITS;
160 if ((significand & (1ULL << (VFP_DOUBLE_LOW_BITS + 1))) == 0)
161 incr -= 1;
162 } else if (rmode == FPSCR_ROUND_TOZERO) {
163 incr = 0;
164 } else if ((rmode == FPSCR_ROUND_PLUSINF) ^ (vd->sign != 0))
165 incr = (1ULL << (VFP_DOUBLE_LOW_BITS + 1)) - 1;
166
167 LOG_TRACE(Core_ARM, "VFP: rounding increment = 0x%08llx", incr);
168
169 /*
170 * Is our rounding going to overflow?
171 */
172 if ((significand + incr) < significand) {
173 exponent += 1;
174 significand = (significand >> 1) | (significand & 1);
175 incr >>= 1;
176#if 1
177 vd->exponent = exponent;
178 vd->significand = significand;
179 vfp_double_dump("pack: overflow", vd);
180#endif
181 }
182
183 /*
184 * If any of the low bits (which will be shifted out of the
185 * number) are non-zero, the result is inexact.
186 */
187 if (significand & ((1 << (VFP_DOUBLE_LOW_BITS + 1)) - 1))
188 exceptions |= FPSCR_IXC;
189
190 /*
191 * Do our rounding.
192 */
193 significand += incr;
194
195 /*
196 * Infinity?
197 */
198 if (exponent >= 2046) {
199 exceptions |= FPSCR_OFC | FPSCR_IXC;
200 if (incr == 0) {
201 vd->exponent = 2045;
202 vd->significand = 0x7fffffffffffffffULL;
203 } else {
204 vd->exponent = 2047; /* infinity */
205 vd->significand = 0;
206 }
207 } else {
208 if (significand >> (VFP_DOUBLE_LOW_BITS + 1) == 0)
209 exponent = 0;
210 if (exponent || significand > 0x8000000000000000ULL)
211 underflow = 0;
212 if (underflow)
213 exceptions |= FPSCR_UFC;
214 vd->exponent = exponent;
215 vd->significand = significand >> 1;
216 }
217
218pack:
219 vfp_double_dump("pack: final", vd);
220 {
221 s64 d = vfp_double_pack(vd);
222 LOG_TRACE(Core_ARM, "VFP: %s: d(d%d)=%016llx exceptions=%08x", func, dd, d, exceptions);
223 vfp_put_double(state, d, dd);
224 }
225 return exceptions;
226}
227
228/*
229 * Propagate the NaN, setting exceptions if it is signalling.
230 * 'n' is always a NaN. 'm' may be a number, NaN or infinity.
231 */
232static u32 vfp_propagate_nan(struct vfp_double* vdd, struct vfp_double* vdn, struct vfp_double* vdm,
233 u32 fpscr) {
234 struct vfp_double* nan;
235 int tn, tm = 0;
236
237 tn = vfp_double_type(vdn);
238
239 if (vdm)
240 tm = vfp_double_type(vdm);
241
242 if (fpscr & FPSCR_DEFAULT_NAN)
243 /*
244 * Default NaN mode - always returns a quiet NaN
245 */
246 nan = &vfp_double_default_qnan;
247 else {
248 /*
249 * Contemporary mode - select the first signalling
250 * NAN, or if neither are signalling, the first
251 * quiet NAN.
252 */
253 if (tn == VFP_SNAN || (tm != VFP_SNAN && tn == VFP_QNAN))
254 nan = vdn;
255 else
256 nan = vdm;
257 /*
258 * Make the NaN quiet.
259 */
260 nan->significand |= VFP_DOUBLE_SIGNIFICAND_QNAN;
261 }
262
263 *vdd = *nan;
264
265 /*
266 * If one was a signalling NAN, raise invalid operation.
267 */
268 return tn == VFP_SNAN || tm == VFP_SNAN ? FPSCR_IOC : VFP_NAN_FLAG;
269}
270
271/*
272 * Extended operations
273 */
274static u32 vfp_double_fabs(ARMul_State* state, int dd, int unused, int dm, u32 fpscr) {
275 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
276 vfp_put_double(state, vfp_double_packed_abs(vfp_get_double(state, dm)), dd);
277 return 0;
278}
279
280static u32 vfp_double_fcpy(ARMul_State* state, int dd, int unused, int dm, u32 fpscr) {
281 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
282 vfp_put_double(state, vfp_get_double(state, dm), dd);
283 return 0;
284}
285
286static u32 vfp_double_fneg(ARMul_State* state, int dd, int unused, int dm, u32 fpscr) {
287 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
288 vfp_put_double(state, vfp_double_packed_negate(vfp_get_double(state, dm)), dd);
289 return 0;
290}
291
292static u32 vfp_double_fsqrt(ARMul_State* state, int dd, int unused, int dm, u32 fpscr) {
293 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
294 vfp_double vdm, vdd, *vdp;
295 int ret, tm;
296 u32 exceptions = 0;
297
298 exceptions |= vfp_double_unpack(&vdm, vfp_get_double(state, dm), fpscr);
299
300 tm = vfp_double_type(&vdm);
301 if (tm & (VFP_NAN | VFP_INFINITY)) {
302 vdp = &vdd;
303
304 if (tm & VFP_NAN)
305 ret = vfp_propagate_nan(vdp, &vdm, nullptr, fpscr);
306 else if (vdm.sign == 0) {
307 sqrt_copy:
308 vdp = &vdm;
309 ret = 0;
310 } else {
311 sqrt_invalid:
312 vdp = &vfp_double_default_qnan;
313 ret = FPSCR_IOC;
314 }
315 vfp_put_double(state, vfp_double_pack(vdp), dd);
316 return ret;
317 }
318
319 /*
320 * sqrt(+/- 0) == +/- 0
321 */
322 if (tm & VFP_ZERO)
323 goto sqrt_copy;
324
325 /*
326 * Normalise a denormalised number
327 */
328 if (tm & VFP_DENORMAL)
329 vfp_double_normalise_denormal(&vdm);
330
331 /*
332 * sqrt(<0) = invalid
333 */
334 if (vdm.sign)
335 goto sqrt_invalid;
336
337 vfp_double_dump("sqrt", &vdm);
338
339 /*
340 * Estimate the square root.
341 */
342 vdd.sign = 0;
343 vdd.exponent = ((vdm.exponent - 1023) >> 1) + 1023;
344 vdd.significand = (u64)vfp_estimate_sqrt_significand(vdm.exponent, vdm.significand >> 32) << 31;
345
346 vfp_double_dump("sqrt estimate1", &vdd);
347
348 vdm.significand >>= 1 + (vdm.exponent & 1);
349 vdd.significand += 2 + vfp_estimate_div128to64(vdm.significand, 0, vdd.significand);
350
351 vfp_double_dump("sqrt estimate2", &vdd);
352
353 /*
354 * And now adjust.
355 */
356 if ((vdd.significand & VFP_DOUBLE_LOW_BITS_MASK) <= 5) {
357 if (vdd.significand < 2) {
358 vdd.significand = ~0ULL;
359 } else {
360 u64 termh, terml, remh, reml;
361 vdm.significand <<= 2;
362 mul64to128(&termh, &terml, vdd.significand, vdd.significand);
363 sub128(&remh, &reml, vdm.significand, 0, termh, terml);
364 while ((s64)remh < 0) {
365 vdd.significand -= 1;
366 shift64left(&termh, &terml, vdd.significand);
367 terml |= 1;
368 add128(&remh, &reml, remh, reml, termh, terml);
369 }
370 vdd.significand |= (remh | reml) != 0;
371 }
372 }
373 vdd.significand = vfp_shiftright64jamming(vdd.significand, 1);
374
375 exceptions |= vfp_double_normaliseround(state, dd, &vdd, fpscr, 0, "fsqrt");
376
377 return exceptions;
378}
379
380/*
381 * Equal := ZC
382 * Less than := N
383 * Greater than := C
384 * Unordered := CV
385 */
386static u32 vfp_compare(ARMul_State* state, int dd, int signal_on_qnan, int dm, u32 fpscr) {
387 s64 d, m;
388 u32 ret = 0;
389
390 LOG_TRACE(Core_ARM, "In %s, state=0x%p, fpscr=0x%x", __FUNCTION__, state, fpscr);
391 m = vfp_get_double(state, dm);
392 if (vfp_double_packed_exponent(m) == 2047 && vfp_double_packed_mantissa(m)) {
393 ret |= FPSCR_CFLAG | FPSCR_VFLAG;
394 if (signal_on_qnan ||
395 !(vfp_double_packed_mantissa(m) & (1ULL << (VFP_DOUBLE_MANTISSA_BITS - 1))))
396 /*
397 * Signalling NaN, or signalling on quiet NaN
398 */
399 ret |= FPSCR_IOC;
400 }
401
402 d = vfp_get_double(state, dd);
403 if (vfp_double_packed_exponent(d) == 2047 && vfp_double_packed_mantissa(d)) {
404 ret |= FPSCR_CFLAG | FPSCR_VFLAG;
405 if (signal_on_qnan ||
406 !(vfp_double_packed_mantissa(d) & (1ULL << (VFP_DOUBLE_MANTISSA_BITS - 1))))
407 /*
408 * Signalling NaN, or signalling on quiet NaN
409 */
410 ret |= FPSCR_IOC;
411 }
412
413 if (ret == 0) {
414 // printf("In %s, d=%lld, m =%lld\n ", __FUNCTION__, d, m);
415 if (d == m || vfp_double_packed_abs(d | m) == 0) {
416 /*
417 * equal
418 */
419 ret |= FPSCR_ZFLAG | FPSCR_CFLAG;
420 // printf("In %s,1 ret=0x%x\n", __FUNCTION__, ret);
421 } else if (vfp_double_packed_sign(d ^ m)) {
422 /*
423 * different signs
424 */
425 if (vfp_double_packed_sign(d))
426 /*
427 * d is negative, so d < m
428 */
429 ret |= FPSCR_NFLAG;
430 else
431 /*
432 * d is positive, so d > m
433 */
434 ret |= FPSCR_CFLAG;
435 } else if ((vfp_double_packed_sign(d) != 0) ^ (d < m)) {
436 /*
437 * d < m
438 */
439 ret |= FPSCR_NFLAG;
440 } else if ((vfp_double_packed_sign(d) != 0) ^ (d > m)) {
441 /*
442 * d > m
443 */
444 ret |= FPSCR_CFLAG;
445 }
446 }
447 LOG_TRACE(Core_ARM, "In %s, state=0x%p, ret=0x%x", __FUNCTION__, state, ret);
448
449 return ret;
450}
451
452static u32 vfp_double_fcmp(ARMul_State* state, int dd, int unused, int dm, u32 fpscr) {
453 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
454 return vfp_compare(state, dd, 0, dm, fpscr);
455}
456
457static u32 vfp_double_fcmpe(ARMul_State* state, int dd, int unused, int dm, u32 fpscr) {
458 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
459 return vfp_compare(state, dd, 1, dm, fpscr);
460}
461
462static u32 vfp_double_fcmpz(ARMul_State* state, int dd, int unused, int dm, u32 fpscr) {
463 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
464 return vfp_compare(state, dd, 0, VFP_REG_ZERO, fpscr);
465}
466
467static u32 vfp_double_fcmpez(ARMul_State* state, int dd, int unused, int dm, u32 fpscr) {
468 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
469 return vfp_compare(state, dd, 1, VFP_REG_ZERO, fpscr);
470}
471
472static u32 vfp_double_fcvts(ARMul_State* state, int sd, int unused, int dm, u32 fpscr) {
473 struct vfp_double vdm;
474 struct vfp_single vsd;
475 int tm;
476 u32 exceptions = 0;
477
478 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
479 exceptions |= vfp_double_unpack(&vdm, vfp_get_double(state, dm), fpscr);
480
481 tm = vfp_double_type(&vdm);
482
483 /*
484 * If we have a signalling NaN, signal invalid operation.
485 */
486 if (tm == VFP_SNAN)
487 exceptions = FPSCR_IOC;
488
489 if (tm & VFP_DENORMAL)
490 vfp_double_normalise_denormal(&vdm);
491
492 vsd.sign = vdm.sign;
493 vsd.significand = vfp_hi64to32jamming(vdm.significand);
494
495 /*
496 * If we have an infinity or a NaN, the exponent must be 255
497 */
498 if (tm & (VFP_INFINITY | VFP_NAN)) {
499 vsd.exponent = 255;
500 if (tm == VFP_QNAN)
501 vsd.significand |= VFP_SINGLE_SIGNIFICAND_QNAN;
502 goto pack_nan;
503 } else if (tm & VFP_ZERO)
504 vsd.exponent = 0;
505 else
506 vsd.exponent = vdm.exponent - (1023 - 127);
507
508 return vfp_single_normaliseround(state, sd, &vsd, fpscr, exceptions, "fcvts");
509
510pack_nan:
511 vfp_put_float(state, vfp_single_pack(&vsd), sd);
512 return exceptions;
513}
514
515static u32 vfp_double_fuito(ARMul_State* state, int dd, int unused, int dm, u32 fpscr) {
516 struct vfp_double vdm;
517 u32 m = vfp_get_float(state, dm);
518
519 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
520 vdm.sign = 0;
521 vdm.exponent = 1023 + 63 - 1;
522 vdm.significand = (u64)m;
523
524 return vfp_double_normaliseround(state, dd, &vdm, fpscr, 0, "fuito");
525}
526
527static u32 vfp_double_fsito(ARMul_State* state, int dd, int unused, int dm, u32 fpscr) {
528 struct vfp_double vdm;
529 u32 m = vfp_get_float(state, dm);
530
531 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
532 vdm.sign = (m & 0x80000000) >> 16;
533 vdm.exponent = 1023 + 63 - 1;
534 vdm.significand = vdm.sign ? (~m + 1) : m;
535
536 return vfp_double_normaliseround(state, dd, &vdm, fpscr, 0, "fsito");
537}
538
539static u32 vfp_double_ftoui(ARMul_State* state, int sd, int unused, int dm, u32 fpscr) {
540 struct vfp_double vdm;
541 u32 d, exceptions = 0;
542 int rmode = fpscr & FPSCR_RMODE_MASK;
543 int tm;
544
545 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
546 exceptions |= vfp_double_unpack(&vdm, vfp_get_double(state, dm), fpscr);
547
548 /*
549 * Do we have a denormalised number?
550 */
551 tm = vfp_double_type(&vdm);
552 if (tm & VFP_DENORMAL)
553 exceptions |= FPSCR_IDC;
554
555 if (tm & VFP_NAN)
556 vdm.sign = 1;
557
558 if (vdm.exponent >= 1023 + 32) {
559 d = vdm.sign ? 0 : 0xffffffff;
560 exceptions = FPSCR_IOC;
561 } else if (vdm.exponent >= 1023) {
562 int shift = 1023 + 63 - vdm.exponent;
563 u64 rem, incr = 0;
564
565 /*
566 * 2^0 <= m < 2^32-2^8
567 */
568 d = (u32)((vdm.significand << 1) >> shift);
569 rem = vdm.significand << (65 - shift);
570
571 if (rmode == FPSCR_ROUND_NEAREST) {
572 incr = 0x8000000000000000ULL;
573 if ((d & 1) == 0)
574 incr -= 1;
575 } else if (rmode == FPSCR_ROUND_TOZERO) {
576 incr = 0;
577 } else if ((rmode == FPSCR_ROUND_PLUSINF) ^ (vdm.sign != 0)) {
578 incr = ~0ULL;
579 }
580
581 if ((rem + incr) < rem) {
582 if (d < 0xffffffff)
583 d += 1;
584 else
585 exceptions |= FPSCR_IOC;
586 }
587
588 if (d && vdm.sign) {
589 d = 0;
590 exceptions |= FPSCR_IOC;
591 } else if (rem)
592 exceptions |= FPSCR_IXC;
593 } else {
594 d = 0;
595 if (vdm.exponent | vdm.significand) {
596 if (rmode == FPSCR_ROUND_NEAREST) {
597 if (vdm.exponent >= 1022) {
598 d = vdm.sign ? 0 : 1;
599 exceptions |= vdm.sign ? FPSCR_IOC : FPSCR_IXC;
600 } else {
601 exceptions |= FPSCR_IXC;
602 }
603 } else if (rmode == FPSCR_ROUND_PLUSINF && vdm.sign == 0) {
604 d = 1;
605 exceptions |= FPSCR_IXC;
606 } else if (rmode == FPSCR_ROUND_MINUSINF) {
607 exceptions |= vdm.sign ? FPSCR_IOC : FPSCR_IXC;
608 } else {
609 exceptions |= FPSCR_IXC;
610 }
611 }
612 }
613
614 LOG_TRACE(Core_ARM, "VFP: ftoui: d(s%d)=%08x exceptions=%08x", sd, d, exceptions);
615
616 vfp_put_float(state, d, sd);
617
618 return exceptions;
619}
620
621static u32 vfp_double_ftouiz(ARMul_State* state, int sd, int unused, int dm, u32 fpscr) {
622 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
623 return vfp_double_ftoui(state, sd, unused, dm,
624 (fpscr & ~FPSCR_RMODE_MASK) | FPSCR_ROUND_TOZERO);
625}
626
627static u32 vfp_double_ftosi(ARMul_State* state, int sd, int unused, int dm, u32 fpscr) {
628 struct vfp_double vdm;
629 u32 d, exceptions = 0;
630 int rmode = fpscr & FPSCR_RMODE_MASK;
631 int tm;
632
633 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
634 exceptions |= vfp_double_unpack(&vdm, vfp_get_double(state, dm), fpscr);
635 vfp_double_dump("VDM", &vdm);
636
637 /*
638 * Do we have denormalised number?
639 */
640 tm = vfp_double_type(&vdm);
641 if (tm & VFP_DENORMAL)
642 exceptions |= FPSCR_IDC;
643
644 if (tm & VFP_NAN) {
645 d = 0;
646 exceptions |= FPSCR_IOC;
647 } else if (vdm.exponent >= 1023 + 31) {
648 d = 0x7fffffff;
649 if (vdm.sign)
650 d = ~d;
651 exceptions |= FPSCR_IOC;
652 } else if (vdm.exponent >= 1023) {
653 int shift = 1023 + 63 - vdm.exponent; /* 58 */
654 u64 rem, incr = 0;
655
656 d = (u32)((vdm.significand << 1) >> shift);
657 rem = vdm.significand << (65 - shift);
658
659 if (rmode == FPSCR_ROUND_NEAREST) {
660 incr = 0x8000000000000000ULL;
661 if ((d & 1) == 0)
662 incr -= 1;
663 } else if (rmode == FPSCR_ROUND_TOZERO) {
664 incr = 0;
665 } else if ((rmode == FPSCR_ROUND_PLUSINF) ^ (vdm.sign != 0)) {
666 incr = ~0ULL;
667 }
668
669 if ((rem + incr) < rem && d < 0xffffffff)
670 d += 1;
671 if (d > (0x7fffffffU + (vdm.sign != 0))) {
672 d = (0x7fffffffU + (vdm.sign != 0));
673 exceptions |= FPSCR_IOC;
674 } else if (rem)
675 exceptions |= FPSCR_IXC;
676
677 if (vdm.sign)
678 d = (~d + 1);
679 } else {
680 d = 0;
681 if (vdm.exponent | vdm.significand) {
682 exceptions |= FPSCR_IXC;
683 if (rmode == FPSCR_ROUND_NEAREST) {
684 if (vdm.exponent >= 1022) {
685 d = vdm.sign ? 0xffffffff : 1;
686 } else {
687 d = 0;
688 }
689 } else if (rmode == FPSCR_ROUND_PLUSINF && vdm.sign == 0) {
690 d = 1;
691 } else if (rmode == FPSCR_ROUND_MINUSINF && vdm.sign) {
692 d = 0xffffffff;
693 }
694 }
695 }
696
697 LOG_TRACE(Core_ARM, "VFP: ftosi: d(s%d)=%08x exceptions=%08x", sd, d, exceptions);
698
699 vfp_put_float(state, (s32)d, sd);
700
701 return exceptions;
702}
703
704static u32 vfp_double_ftosiz(ARMul_State* state, int dd, int unused, int dm, u32 fpscr) {
705 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
706 return vfp_double_ftosi(state, dd, unused, dm,
707 (fpscr & ~FPSCR_RMODE_MASK) | FPSCR_ROUND_TOZERO);
708}
709
710static struct op fops_ext[] = {
711 {vfp_double_fcpy, 0}, // 0x00000000 - FEXT_FCPY
712 {vfp_double_fabs, 0}, // 0x00000001 - FEXT_FABS
713 {vfp_double_fneg, 0}, // 0x00000002 - FEXT_FNEG
714 {vfp_double_fsqrt, 0}, // 0x00000003 - FEXT_FSQRT
715 {nullptr, 0},
716 {nullptr, 0},
717 {nullptr, 0},
718 {nullptr, 0},
719 {vfp_double_fcmp, OP_SCALAR}, // 0x00000008 - FEXT_FCMP
720 {vfp_double_fcmpe, OP_SCALAR}, // 0x00000009 - FEXT_FCMPE
721 {vfp_double_fcmpz, OP_SCALAR}, // 0x0000000A - FEXT_FCMPZ
722 {vfp_double_fcmpez, OP_SCALAR}, // 0x0000000B - FEXT_FCMPEZ
723 {nullptr, 0},
724 {nullptr, 0},
725 {nullptr, 0},
726 {vfp_double_fcvts, OP_SCALAR | OP_DD}, // 0x0000000F - FEXT_FCVT
727 {vfp_double_fuito, OP_SCALAR | OP_SM}, // 0x00000010 - FEXT_FUITO
728 {vfp_double_fsito, OP_SCALAR | OP_SM}, // 0x00000011 - FEXT_FSITO
729 {nullptr, 0},
730 {nullptr, 0},
731 {nullptr, 0},
732 {nullptr, 0},
733 {nullptr, 0},
734 {nullptr, 0},
735 {vfp_double_ftoui, OP_SCALAR | OP_SD}, // 0x00000018 - FEXT_FTOUI
736 {vfp_double_ftouiz, OP_SCALAR | OP_SD}, // 0x00000019 - FEXT_FTOUIZ
737 {vfp_double_ftosi, OP_SCALAR | OP_SD}, // 0x0000001A - FEXT_FTOSI
738 {vfp_double_ftosiz, OP_SCALAR | OP_SD}, // 0x0000001B - FEXT_FTOSIZ
739};
740
741static u32 vfp_double_fadd_nonnumber(struct vfp_double* vdd, struct vfp_double* vdn,
742 struct vfp_double* vdm, u32 fpscr) {
743 struct vfp_double* vdp;
744 u32 exceptions = 0;
745 int tn, tm;
746
747 tn = vfp_double_type(vdn);
748 tm = vfp_double_type(vdm);
749
750 if (tn & tm & VFP_INFINITY) {
751 /*
752 * Two infinities. Are they different signs?
753 */
754 if (vdn->sign ^ vdm->sign) {
755 /*
756 * different signs -> invalid
757 */
758 exceptions = FPSCR_IOC;
759 vdp = &vfp_double_default_qnan;
760 } else {
761 /*
762 * same signs -> valid
763 */
764 vdp = vdn;
765 }
766 } else if (tn & VFP_INFINITY && tm & VFP_NUMBER) {
767 /*
768 * One infinity and one number -> infinity
769 */
770 vdp = vdn;
771 } else {
772 /*
773 * 'n' is a NaN of some type
774 */
775 return vfp_propagate_nan(vdd, vdn, vdm, fpscr);
776 }
777 *vdd = *vdp;
778 return exceptions;
779}
780
781u32 vfp_double_add(struct vfp_double* vdd, struct vfp_double* vdn, struct vfp_double* vdm,
782 u32 fpscr) {
783 u32 exp_diff;
784 u64 m_sig;
785
786 if (vdn->significand & (1ULL << 63) || vdm->significand & (1ULL << 63)) {
787 LOG_INFO(Core_ARM, "VFP: bad FP values in %s", __func__);
788 vfp_double_dump("VDN", vdn);
789 vfp_double_dump("VDM", vdm);
790 }
791
792 /*
793 * Ensure that 'n' is the largest magnitude number. Note that
794 * if 'n' and 'm' have equal exponents, we do not swap them.
795 * This ensures that NaN propagation works correctly.
796 */
797 if (vdn->exponent < vdm->exponent) {
798 std::swap(vdm, vdn);
799 }
800
801 /*
802 * Is 'n' an infinity or a NaN? Note that 'm' may be a number,
803 * infinity or a NaN here.
804 */
805 if (vdn->exponent == 2047)
806 return vfp_double_fadd_nonnumber(vdd, vdn, vdm, fpscr);
807
808 /*
809 * We have two proper numbers, where 'vdn' is the larger magnitude.
810 *
811 * Copy 'n' to 'd' before doing the arithmetic.
812 */
813 *vdd = *vdn;
814
815 /*
816 * Align 'm' with the result.
817 */
818 exp_diff = vdn->exponent - vdm->exponent;
819 m_sig = vfp_shiftright64jamming(vdm->significand, exp_diff);
820
821 /*
822 * If the signs are different, we are really subtracting.
823 */
824 if (vdn->sign ^ vdm->sign) {
825 m_sig = vdn->significand - m_sig;
826 if ((s64)m_sig < 0) {
827 vdd->sign = vfp_sign_negate(vdd->sign);
828 m_sig = (~m_sig + 1);
829 } else if (m_sig == 0) {
830 vdd->sign = (fpscr & FPSCR_RMODE_MASK) == FPSCR_ROUND_MINUSINF ? 0x8000 : 0;
831 }
832 } else {
833 m_sig += vdn->significand;
834 }
835 vdd->significand = m_sig;
836
837 return 0;
838}
839
840u32 vfp_double_multiply(struct vfp_double* vdd, struct vfp_double* vdn, struct vfp_double* vdm,
841 u32 fpscr) {
842 vfp_double_dump("VDN", vdn);
843 vfp_double_dump("VDM", vdm);
844
845 /*
846 * Ensure that 'n' is the largest magnitude number. Note that
847 * if 'n' and 'm' have equal exponents, we do not swap them.
848 * This ensures that NaN propagation works correctly.
849 */
850 if (vdn->exponent < vdm->exponent) {
851 std::swap(vdm, vdn);
852 LOG_TRACE(Core_ARM, "VFP: swapping M <-> N");
853 }
854
855 vdd->sign = vdn->sign ^ vdm->sign;
856
857 /*
858 * If 'n' is an infinity or NaN, handle it. 'm' may be anything.
859 */
860 if (vdn->exponent == 2047) {
861 if (vdn->significand || (vdm->exponent == 2047 && vdm->significand))
862 return vfp_propagate_nan(vdd, vdn, vdm, fpscr);
863 if ((vdm->exponent | vdm->significand) == 0) {
864 *vdd = vfp_double_default_qnan;
865 return FPSCR_IOC;
866 }
867 vdd->exponent = vdn->exponent;
868 vdd->significand = 0;
869 return 0;
870 }
871
872 /*
873 * If 'm' is zero, the result is always zero. In this case,
874 * 'n' may be zero or a number, but it doesn't matter which.
875 */
876 if ((vdm->exponent | vdm->significand) == 0) {
877 vdd->exponent = 0;
878 vdd->significand = 0;
879 return 0;
880 }
881
882 /*
883 * We add 2 to the destination exponent for the same reason
884 * as the addition case - though this time we have +1 from
885 * each input operand.
886 */
887 vdd->exponent = vdn->exponent + vdm->exponent - 1023 + 2;
888 vdd->significand = vfp_hi64multiply64(vdn->significand, vdm->significand);
889
890 vfp_double_dump("VDD", vdd);
891 return 0;
892}
893
894#define NEG_MULTIPLY (1 << 0)
895#define NEG_SUBTRACT (1 << 1)
896
897static u32 vfp_double_multiply_accumulate(ARMul_State* state, int dd, int dn, int dm, u32 fpscr,
898 u32 negate, const char* func) {
899 struct vfp_double vdd, vdp, vdn, vdm;
900 u32 exceptions = 0;
901
902 exceptions |= vfp_double_unpack(&vdn, vfp_get_double(state, dn), fpscr);
903 if (vdn.exponent == 0 && vdn.significand)
904 vfp_double_normalise_denormal(&vdn);
905
906 exceptions |= vfp_double_unpack(&vdm, vfp_get_double(state, dm), fpscr);
907 if (vdm.exponent == 0 && vdm.significand)
908 vfp_double_normalise_denormal(&vdm);
909
910 exceptions |= vfp_double_multiply(&vdp, &vdn, &vdm, fpscr);
911 if (negate & NEG_MULTIPLY)
912 vdp.sign = vfp_sign_negate(vdp.sign);
913
914 exceptions |= vfp_double_unpack(&vdn, vfp_get_double(state, dd), fpscr);
915 if (vdn.exponent == 0 && vdn.significand != 0)
916 vfp_double_normalise_denormal(&vdn);
917
918 if (negate & NEG_SUBTRACT)
919 vdn.sign = vfp_sign_negate(vdn.sign);
920
921 exceptions |= vfp_double_add(&vdd, &vdn, &vdp, fpscr);
922
923 return vfp_double_normaliseround(state, dd, &vdd, fpscr, exceptions, func);
924}
925
926/*
927 * Standard operations
928 */
929
930/*
931 * sd = sd + (sn * sm)
932 */
933static u32 vfp_double_fmac(ARMul_State* state, int dd, int dn, int dm, u32 fpscr) {
934 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
935 return vfp_double_multiply_accumulate(state, dd, dn, dm, fpscr, 0, "fmac");
936}
937
938/*
939 * sd = sd - (sn * sm)
940 */
941static u32 vfp_double_fnmac(ARMul_State* state, int dd, int dn, int dm, u32 fpscr) {
942 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
943 return vfp_double_multiply_accumulate(state, dd, dn, dm, fpscr, NEG_MULTIPLY, "fnmac");
944}
945
946/*
947 * sd = -sd + (sn * sm)
948 */
949static u32 vfp_double_fmsc(ARMul_State* state, int dd, int dn, int dm, u32 fpscr) {
950 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
951 return vfp_double_multiply_accumulate(state, dd, dn, dm, fpscr, NEG_SUBTRACT, "fmsc");
952}
953
954/*
955 * sd = -sd - (sn * sm)
956 */
957static u32 vfp_double_fnmsc(ARMul_State* state, int dd, int dn, int dm, u32 fpscr) {
958 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
959 return vfp_double_multiply_accumulate(state, dd, dn, dm, fpscr, NEG_SUBTRACT | NEG_MULTIPLY,
960 "fnmsc");
961}
962
963/*
964 * sd = sn * sm
965 */
966static u32 vfp_double_fmul(ARMul_State* state, int dd, int dn, int dm, u32 fpscr) {
967 struct vfp_double vdd, vdn, vdm;
968 u32 exceptions = 0;
969
970 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
971 exceptions |= vfp_double_unpack(&vdn, vfp_get_double(state, dn), fpscr);
972 if (vdn.exponent == 0 && vdn.significand)
973 vfp_double_normalise_denormal(&vdn);
974
975 exceptions |= vfp_double_unpack(&vdm, vfp_get_double(state, dm), fpscr);
976 if (vdm.exponent == 0 && vdm.significand)
977 vfp_double_normalise_denormal(&vdm);
978
979 exceptions |= vfp_double_multiply(&vdd, &vdn, &vdm, fpscr);
980 return vfp_double_normaliseround(state, dd, &vdd, fpscr, exceptions, "fmul");
981}
982
983/*
984 * sd = -(sn * sm)
985 */
986static u32 vfp_double_fnmul(ARMul_State* state, int dd, int dn, int dm, u32 fpscr) {
987 struct vfp_double vdd, vdn, vdm;
988 u32 exceptions = 0;
989
990 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
991 exceptions |= vfp_double_unpack(&vdn, vfp_get_double(state, dn), fpscr);
992 if (vdn.exponent == 0 && vdn.significand)
993 vfp_double_normalise_denormal(&vdn);
994
995 exceptions |= vfp_double_unpack(&vdm, vfp_get_double(state, dm), fpscr);
996 if (vdm.exponent == 0 && vdm.significand)
997 vfp_double_normalise_denormal(&vdm);
998
999 exceptions |= vfp_double_multiply(&vdd, &vdn, &vdm, fpscr);
1000 vdd.sign = vfp_sign_negate(vdd.sign);
1001
1002 return vfp_double_normaliseround(state, dd, &vdd, fpscr, exceptions, "fnmul");
1003}
1004
1005/*
1006 * sd = sn + sm
1007 */
1008static u32 vfp_double_fadd(ARMul_State* state, int dd, int dn, int dm, u32 fpscr) {
1009 struct vfp_double vdd, vdn, vdm;
1010 u32 exceptions = 0;
1011
1012 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
1013 exceptions |= vfp_double_unpack(&vdn, vfp_get_double(state, dn), fpscr);
1014 if (vdn.exponent == 0 && vdn.significand)
1015 vfp_double_normalise_denormal(&vdn);
1016
1017 exceptions |= vfp_double_unpack(&vdm, vfp_get_double(state, dm), fpscr);
1018 if (vdm.exponent == 0 && vdm.significand)
1019 vfp_double_normalise_denormal(&vdm);
1020
1021 exceptions |= vfp_double_add(&vdd, &vdn, &vdm, fpscr);
1022
1023 return vfp_double_normaliseround(state, dd, &vdd, fpscr, exceptions, "fadd");
1024}
1025
1026/*
1027 * sd = sn - sm
1028 */
1029static u32 vfp_double_fsub(ARMul_State* state, int dd, int dn, int dm, u32 fpscr) {
1030 struct vfp_double vdd, vdn, vdm;
1031 u32 exceptions = 0;
1032
1033 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
1034 exceptions |= vfp_double_unpack(&vdn, vfp_get_double(state, dn), fpscr);
1035 if (vdn.exponent == 0 && vdn.significand)
1036 vfp_double_normalise_denormal(&vdn);
1037
1038 exceptions |= vfp_double_unpack(&vdm, vfp_get_double(state, dm), fpscr);
1039 if (vdm.exponent == 0 && vdm.significand)
1040 vfp_double_normalise_denormal(&vdm);
1041
1042 /*
1043 * Subtraction is like addition, but with a negated operand.
1044 */
1045 vdm.sign = vfp_sign_negate(vdm.sign);
1046
1047 exceptions |= vfp_double_add(&vdd, &vdn, &vdm, fpscr);
1048
1049 return vfp_double_normaliseround(state, dd, &vdd, fpscr, exceptions, "fsub");
1050}
1051
1052/*
1053 * sd = sn / sm
1054 */
1055static u32 vfp_double_fdiv(ARMul_State* state, int dd, int dn, int dm, u32 fpscr) {
1056 struct vfp_double vdd, vdn, vdm;
1057 u32 exceptions = 0;
1058 int tm, tn;
1059
1060 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
1061 exceptions |= vfp_double_unpack(&vdn, vfp_get_double(state, dn), fpscr);
1062 exceptions |= vfp_double_unpack(&vdm, vfp_get_double(state, dm), fpscr);
1063
1064 vdd.sign = vdn.sign ^ vdm.sign;
1065
1066 tn = vfp_double_type(&vdn);
1067 tm = vfp_double_type(&vdm);
1068
1069 /*
1070 * Is n a NAN?
1071 */
1072 if (tn & VFP_NAN)
1073 goto vdn_nan;
1074
1075 /*
1076 * Is m a NAN?
1077 */
1078 if (tm & VFP_NAN)
1079 goto vdm_nan;
1080
1081 /*
1082 * If n and m are infinity, the result is invalid
1083 * If n and m are zero, the result is invalid
1084 */
1085 if (tm & tn & (VFP_INFINITY | VFP_ZERO))
1086 goto invalid;
1087
1088 /*
1089 * If n is infinity, the result is infinity
1090 */
1091 if (tn & VFP_INFINITY)
1092 goto infinity;
1093
1094 /*
1095 * If m is zero, raise div0 exceptions
1096 */
1097 if (tm & VFP_ZERO)
1098 goto divzero;
1099
1100 /*
1101 * If m is infinity, or n is zero, the result is zero
1102 */
1103 if (tm & VFP_INFINITY || tn & VFP_ZERO)
1104 goto zero;
1105
1106 if (tn & VFP_DENORMAL)
1107 vfp_double_normalise_denormal(&vdn);
1108 if (tm & VFP_DENORMAL)
1109 vfp_double_normalise_denormal(&vdm);
1110
1111 /*
1112 * Ok, we have two numbers, we can perform division.
1113 */
1114 vdd.exponent = vdn.exponent - vdm.exponent + 1023 - 1;
1115 vdm.significand <<= 1;
1116 if (vdm.significand <= (2 * vdn.significand)) {
1117 vdn.significand >>= 1;
1118 vdd.exponent++;
1119 }
1120 vdd.significand = vfp_estimate_div128to64(vdn.significand, 0, vdm.significand);
1121 if ((vdd.significand & 0x1ff) <= 2) {
1122 u64 termh, terml, remh, reml;
1123 mul64to128(&termh, &terml, vdm.significand, vdd.significand);
1124 sub128(&remh, &reml, vdn.significand, 0, termh, terml);
1125 while ((s64)remh < 0) {
1126 vdd.significand -= 1;
1127 add128(&remh, &reml, remh, reml, 0, vdm.significand);
1128 }
1129 vdd.significand |= (reml != 0);
1130 }
1131 return vfp_double_normaliseround(state, dd, &vdd, fpscr, 0, "fdiv");
1132
1133vdn_nan:
1134 exceptions |= vfp_propagate_nan(&vdd, &vdn, &vdm, fpscr);
1135pack:
1136 vfp_put_double(state, vfp_double_pack(&vdd), dd);
1137 return exceptions;
1138
1139vdm_nan:
1140 exceptions |= vfp_propagate_nan(&vdd, &vdm, &vdn, fpscr);
1141 goto pack;
1142
1143zero:
1144 vdd.exponent = 0;
1145 vdd.significand = 0;
1146 goto pack;
1147
1148divzero:
1149 exceptions |= FPSCR_DZC;
1150infinity:
1151 vdd.exponent = 2047;
1152 vdd.significand = 0;
1153 goto pack;
1154
1155invalid:
1156 vfp_put_double(state, vfp_double_pack(&vfp_double_default_qnan), dd);
1157 return FPSCR_IOC;
1158}
1159
1160static struct op fops[] = {
1161 {vfp_double_fmac, 0}, {vfp_double_fmsc, 0}, {vfp_double_fmul, 0},
1162 {vfp_double_fadd, 0}, {vfp_double_fnmac, 0}, {vfp_double_fnmsc, 0},
1163 {vfp_double_fnmul, 0}, {vfp_double_fsub, 0}, {vfp_double_fdiv, 0},
1164};
1165
1166#define FREG_BANK(x) ((x)&0x0c)
1167#define FREG_IDX(x) ((x)&3)
1168
1169u32 vfp_double_cpdo(ARMul_State* state, u32 inst, u32 fpscr) {
1170 u32 op = inst & FOP_MASK;
1171 u32 exceptions = 0;
1172 unsigned int dest;
1173 unsigned int dn = vfp_get_dn(inst);
1174 unsigned int dm;
1175 unsigned int vecitr, veclen, vecstride;
1176 struct op* fop;
1177
1178 LOG_TRACE(Core_ARM, "In %s", __FUNCTION__);
1179 vecstride = (1 + ((fpscr & FPSCR_STRIDE_MASK) == FPSCR_STRIDE_MASK));
1180
1181 fop = (op == FOP_EXT) ? &fops_ext[FEXT_TO_IDX(inst)] : &fops[FOP_TO_IDX(op)];
1182
1183 /*
1184 * fcvtds takes an sN register number as destination, not dN.
1185 * It also always operates on scalars.
1186 */
1187 if (fop->flags & OP_SD)
1188 dest = vfp_get_sd(inst);
1189 else
1190 dest = vfp_get_dd(inst);
1191
1192 /*
1193 * f[us]ito takes a sN operand, not a dN operand.
1194 */
1195 if (fop->flags & OP_SM)
1196 dm = vfp_get_sm(inst);
1197 else
1198 dm = vfp_get_dm(inst);
1199
1200 /*
1201 * If destination bank is zero, vector length is always '1'.
1202 * ARM DDI0100F C5.1.3, C5.3.2.
1203 */
1204 if ((fop->flags & OP_SCALAR) || (FREG_BANK(dest) == 0))
1205 veclen = 0;
1206 else
1207 veclen = fpscr & FPSCR_LENGTH_MASK;
1208
1209 LOG_TRACE(Core_ARM, "VFP: vecstride=%u veclen=%u", vecstride,
1210 (veclen >> FPSCR_LENGTH_BIT) + 1);
1211
1212 if (!fop->fn) {
1213 printf("VFP: could not find double op %d\n", FEXT_TO_IDX(inst));
1214 goto invalid;
1215 }
1216
1217 for (vecitr = 0; vecitr <= veclen; vecitr += 1 << FPSCR_LENGTH_BIT) {
1218 u32 except;
1219 char type;
1220
1221 type = (fop->flags & OP_SD) ? 's' : 'd';
1222 if (op == FOP_EXT)
1223 LOG_TRACE(Core_ARM, "VFP: itr%d (%c%u) = op[%u] (d%u)", vecitr >> FPSCR_LENGTH_BIT,
1224 type, dest, dn, dm);
1225 else
1226 LOG_TRACE(Core_ARM, "VFP: itr%d (%c%u) = (d%u) op[%u] (d%u)",
1227 vecitr >> FPSCR_LENGTH_BIT, type, dest, dn, FOP_TO_IDX(op), dm);
1228
1229 except = fop->fn(state, dest, dn, dm, fpscr);
1230 LOG_TRACE(Core_ARM, "VFP: itr%d: exceptions=%08x", vecitr >> FPSCR_LENGTH_BIT, except);
1231
1232 exceptions |= except & ~VFP_NAN_FLAG;
1233
1234 /*
1235 * CHECK: It appears to be undefined whether we stop when
1236 * we encounter an exception. We continue.
1237 */
1238 dest = FREG_BANK(dest) + ((FREG_IDX(dest) + vecstride) & 3);
1239 dn = FREG_BANK(dn) + ((FREG_IDX(dn) + vecstride) & 3);
1240 if (FREG_BANK(dm) != 0)
1241 dm = FREG_BANK(dm) + ((FREG_IDX(dm) + vecstride) & 3);
1242 }
1243 return exceptions;
1244
1245invalid:
1246 return ~0;
1247}
diff --git a/src/core/arm/skyeye_common/vfp/vfpinstr.cpp b/src/core/arm/skyeye_common/vfp/vfpinstr.cpp
deleted file mode 100644
index a66dc1016..000000000
--- a/src/core/arm/skyeye_common/vfp/vfpinstr.cpp
+++ /dev/null
@@ -1,1703 +0,0 @@
1// Copyright 2012 Michael Kang, 2015 Citra Emulator Project
2// Licensed under GPLv2 or any later version
3// Refer to the license.txt file included.
4
5/* Notice: this file should not be compiled as is, and is meant to be
6 included in other files only. */
7
8/* ----------------------------------------------------------------------- */
9/* CDP instructions */
10/* cond 1110 opc1 CRn- CRd- copr op20 CRm- CDP */
11
12/* ----------------------------------------------------------------------- */
13/* VMLA */
14/* cond 1110 0D00 Vn-- Vd-- 101X N0M0 Vm-- */
15#ifdef VFP_INTERPRETER_STRUCT
16struct vmla_inst {
17 unsigned int instr;
18 unsigned int dp_operation;
19};
20#endif
21#ifdef VFP_INTERPRETER_TRANS
22static ARM_INST_PTR INTERPRETER_TRANSLATE(vmla)(unsigned int inst, int index) {
23 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vmla_inst));
24 vmla_inst* inst_cream = (vmla_inst*)inst_base->component;
25
26 inst_base->cond = BITS(inst, 28, 31);
27 inst_base->idx = index;
28 inst_base->br = TransExtData::NON_BRANCH;
29
30 inst_cream->dp_operation = BIT(inst, 8);
31 inst_cream->instr = inst;
32
33 return inst_base;
34}
35#endif
36#ifdef VFP_INTERPRETER_IMPL
37VMLA_INST : {
38 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
39 CHECK_VFP_ENABLED;
40
41 vmla_inst* inst_cream = (vmla_inst*)inst_base->component;
42
43 int ret;
44
45 if (inst_cream->dp_operation)
46 ret = vfp_double_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
47 else
48 ret = vfp_single_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
49
50 CHECK_VFP_CDP_RET;
51 }
52 cpu->Reg[15] += cpu->GetInstructionSize();
53 INC_PC(sizeof(vmla_inst));
54 FETCH_INST;
55 GOTO_NEXT_INST;
56}
57#endif
58
59/* ----------------------------------------------------------------------- */
60/* VNMLS */
61/* cond 1110 0D00 Vn-- Vd-- 101X N1M0 Vm-- */
62#ifdef VFP_INTERPRETER_STRUCT
63struct vmls_inst {
64 unsigned int instr;
65 unsigned int dp_operation;
66};
67#endif
68#ifdef VFP_INTERPRETER_TRANS
69static ARM_INST_PTR INTERPRETER_TRANSLATE(vmls)(unsigned int inst, int index) {
70 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vmls_inst));
71 vmls_inst* inst_cream = (vmls_inst*)inst_base->component;
72
73 inst_base->cond = BITS(inst, 28, 31);
74 inst_base->idx = index;
75 inst_base->br = TransExtData::NON_BRANCH;
76
77 inst_cream->dp_operation = BIT(inst, 8);
78 inst_cream->instr = inst;
79
80 return inst_base;
81}
82#endif
83#ifdef VFP_INTERPRETER_IMPL
84VMLS_INST : {
85 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
86 CHECK_VFP_ENABLED;
87
88 vmls_inst* inst_cream = (vmls_inst*)inst_base->component;
89
90 int ret;
91
92 if (inst_cream->dp_operation)
93 ret = vfp_double_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
94 else
95 ret = vfp_single_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
96
97 CHECK_VFP_CDP_RET;
98 }
99 cpu->Reg[15] += cpu->GetInstructionSize();
100 INC_PC(sizeof(vmls_inst));
101 FETCH_INST;
102 GOTO_NEXT_INST;
103}
104#endif
105
106/* ----------------------------------------------------------------------- */
107/* VNMLA */
108/* cond 1110 0D01 Vn-- Vd-- 101X N1M0 Vm-- */
109#ifdef VFP_INTERPRETER_STRUCT
110struct vnmla_inst {
111 unsigned int instr;
112 unsigned int dp_operation;
113};
114#endif
115#ifdef VFP_INTERPRETER_TRANS
116static ARM_INST_PTR INTERPRETER_TRANSLATE(vnmla)(unsigned int inst, int index) {
117 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vnmla_inst));
118 vnmla_inst* inst_cream = (vnmla_inst*)inst_base->component;
119
120 inst_base->cond = BITS(inst, 28, 31);
121 inst_base->idx = index;
122 inst_base->br = TransExtData::NON_BRANCH;
123
124 inst_cream->dp_operation = BIT(inst, 8);
125 inst_cream->instr = inst;
126
127 return inst_base;
128}
129#endif
130#ifdef VFP_INTERPRETER_IMPL
131VNMLA_INST : {
132 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
133 CHECK_VFP_ENABLED;
134
135 vnmla_inst* inst_cream = (vnmla_inst*)inst_base->component;
136
137 int ret;
138
139 if (inst_cream->dp_operation)
140 ret = vfp_double_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
141 else
142 ret = vfp_single_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
143
144 CHECK_VFP_CDP_RET;
145 }
146 cpu->Reg[15] += cpu->GetInstructionSize();
147 INC_PC(sizeof(vnmla_inst));
148 FETCH_INST;
149 GOTO_NEXT_INST;
150}
151#endif
152
153/* ----------------------------------------------------------------------- */
154/* VNMLS */
155/* cond 1110 0D01 Vn-- Vd-- 101X N0M0 Vm-- */
156
157#ifdef VFP_INTERPRETER_STRUCT
158struct vnmls_inst {
159 unsigned int instr;
160 unsigned int dp_operation;
161};
162#endif
163#ifdef VFP_INTERPRETER_TRANS
164static ARM_INST_PTR INTERPRETER_TRANSLATE(vnmls)(unsigned int inst, int index) {
165 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vnmls_inst));
166 vnmls_inst* inst_cream = (vnmls_inst*)inst_base->component;
167
168 inst_base->cond = BITS(inst, 28, 31);
169 inst_base->idx = index;
170 inst_base->br = TransExtData::NON_BRANCH;
171
172 inst_cream->dp_operation = BIT(inst, 8);
173 inst_cream->instr = inst;
174
175 return inst_base;
176}
177#endif
178#ifdef VFP_INTERPRETER_IMPL
179VNMLS_INST : {
180 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
181 CHECK_VFP_ENABLED;
182
183 vnmls_inst* inst_cream = (vnmls_inst*)inst_base->component;
184
185 int ret;
186
187 if (inst_cream->dp_operation)
188 ret = vfp_double_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
189 else
190 ret = vfp_single_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
191
192 CHECK_VFP_CDP_RET;
193 }
194 cpu->Reg[15] += cpu->GetInstructionSize();
195 INC_PC(sizeof(vnmls_inst));
196 FETCH_INST;
197 GOTO_NEXT_INST;
198}
199#endif
200
201/* ----------------------------------------------------------------------- */
202/* VNMUL */
203/* cond 1110 0D10 Vn-- Vd-- 101X N0M0 Vm-- */
204#ifdef VFP_INTERPRETER_STRUCT
205struct vnmul_inst {
206 unsigned int instr;
207 unsigned int dp_operation;
208};
209#endif
210#ifdef VFP_INTERPRETER_TRANS
211static ARM_INST_PTR INTERPRETER_TRANSLATE(vnmul)(unsigned int inst, int index) {
212 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vnmul_inst));
213 vnmul_inst* inst_cream = (vnmul_inst*)inst_base->component;
214
215 inst_base->cond = BITS(inst, 28, 31);
216 inst_base->idx = index;
217 inst_base->br = TransExtData::NON_BRANCH;
218
219 inst_cream->dp_operation = BIT(inst, 8);
220 inst_cream->instr = inst;
221
222 return inst_base;
223}
224#endif
225#ifdef VFP_INTERPRETER_IMPL
226VNMUL_INST : {
227 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
228 CHECK_VFP_ENABLED;
229
230 vnmul_inst* inst_cream = (vnmul_inst*)inst_base->component;
231
232 int ret;
233
234 if (inst_cream->dp_operation)
235 ret = vfp_double_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
236 else
237 ret = vfp_single_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
238
239 CHECK_VFP_CDP_RET;
240 }
241 cpu->Reg[15] += cpu->GetInstructionSize();
242 INC_PC(sizeof(vnmul_inst));
243 FETCH_INST;
244 GOTO_NEXT_INST;
245}
246#endif
247
248/* ----------------------------------------------------------------------- */
249/* VMUL */
250/* cond 1110 0D10 Vn-- Vd-- 101X N0M0 Vm-- */
251#ifdef VFP_INTERPRETER_STRUCT
252struct vmul_inst {
253 unsigned int instr;
254 unsigned int dp_operation;
255};
256#endif
257#ifdef VFP_INTERPRETER_TRANS
258static ARM_INST_PTR INTERPRETER_TRANSLATE(vmul)(unsigned int inst, int index) {
259 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vmul_inst));
260 vmul_inst* inst_cream = (vmul_inst*)inst_base->component;
261
262 inst_base->cond = BITS(inst, 28, 31);
263 inst_base->idx = index;
264 inst_base->br = TransExtData::NON_BRANCH;
265
266 inst_cream->dp_operation = BIT(inst, 8);
267 inst_cream->instr = inst;
268
269 return inst_base;
270}
271#endif
272#ifdef VFP_INTERPRETER_IMPL
273VMUL_INST : {
274 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
275 CHECK_VFP_ENABLED;
276
277 vmul_inst* inst_cream = (vmul_inst*)inst_base->component;
278
279 int ret;
280
281 if (inst_cream->dp_operation)
282 ret = vfp_double_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
283 else
284 ret = vfp_single_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
285
286 CHECK_VFP_CDP_RET;
287 }
288 cpu->Reg[15] += cpu->GetInstructionSize();
289 INC_PC(sizeof(vmul_inst));
290 FETCH_INST;
291 GOTO_NEXT_INST;
292}
293#endif
294
295/* ----------------------------------------------------------------------- */
296/* VADD */
297/* cond 1110 0D11 Vn-- Vd-- 101X N0M0 Vm-- */
298#ifdef VFP_INTERPRETER_STRUCT
299struct vadd_inst {
300 unsigned int instr;
301 unsigned int dp_operation;
302};
303#endif
304#ifdef VFP_INTERPRETER_TRANS
305static ARM_INST_PTR INTERPRETER_TRANSLATE(vadd)(unsigned int inst, int index) {
306 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vadd_inst));
307 vadd_inst* inst_cream = (vadd_inst*)inst_base->component;
308
309 inst_base->cond = BITS(inst, 28, 31);
310 inst_base->idx = index;
311 inst_base->br = TransExtData::NON_BRANCH;
312
313 inst_cream->dp_operation = BIT(inst, 8);
314 inst_cream->instr = inst;
315
316 return inst_base;
317}
318#endif
319#ifdef VFP_INTERPRETER_IMPL
320VADD_INST : {
321 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
322 CHECK_VFP_ENABLED;
323
324 vadd_inst* inst_cream = (vadd_inst*)inst_base->component;
325
326 int ret;
327
328 if (inst_cream->dp_operation)
329 ret = vfp_double_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
330 else
331 ret = vfp_single_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
332
333 CHECK_VFP_CDP_RET;
334 }
335 cpu->Reg[15] += cpu->GetInstructionSize();
336 INC_PC(sizeof(vadd_inst));
337 FETCH_INST;
338 GOTO_NEXT_INST;
339}
340#endif
341
342/* ----------------------------------------------------------------------- */
343/* VSUB */
344/* cond 1110 0D11 Vn-- Vd-- 101X N1M0 Vm-- */
345#ifdef VFP_INTERPRETER_STRUCT
346struct vsub_inst {
347 unsigned int instr;
348 unsigned int dp_operation;
349};
350#endif
351#ifdef VFP_INTERPRETER_TRANS
352static ARM_INST_PTR INTERPRETER_TRANSLATE(vsub)(unsigned int inst, int index) {
353 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vsub_inst));
354 vsub_inst* inst_cream = (vsub_inst*)inst_base->component;
355
356 inst_base->cond = BITS(inst, 28, 31);
357 inst_base->idx = index;
358 inst_base->br = TransExtData::NON_BRANCH;
359
360 inst_cream->dp_operation = BIT(inst, 8);
361 inst_cream->instr = inst;
362
363 return inst_base;
364}
365#endif
366#ifdef VFP_INTERPRETER_IMPL
367VSUB_INST : {
368 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
369 CHECK_VFP_ENABLED;
370
371 vsub_inst* inst_cream = (vsub_inst*)inst_base->component;
372
373 int ret;
374
375 if (inst_cream->dp_operation)
376 ret = vfp_double_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
377 else
378 ret = vfp_single_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
379
380 CHECK_VFP_CDP_RET;
381 }
382 cpu->Reg[15] += cpu->GetInstructionSize();
383 INC_PC(sizeof(vsub_inst));
384 FETCH_INST;
385 GOTO_NEXT_INST;
386}
387#endif
388
389/* ----------------------------------------------------------------------- */
390/* VDIV */
391/* cond 1110 1D00 Vn-- Vd-- 101X N0M0 Vm-- */
392#ifdef VFP_INTERPRETER_STRUCT
393struct vdiv_inst {
394 unsigned int instr;
395 unsigned int dp_operation;
396};
397#endif
398#ifdef VFP_INTERPRETER_TRANS
399static ARM_INST_PTR INTERPRETER_TRANSLATE(vdiv)(unsigned int inst, int index) {
400 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vdiv_inst));
401 vdiv_inst* inst_cream = (vdiv_inst*)inst_base->component;
402
403 inst_base->cond = BITS(inst, 28, 31);
404 inst_base->idx = index;
405 inst_base->br = TransExtData::NON_BRANCH;
406
407 inst_cream->dp_operation = BIT(inst, 8);
408 inst_cream->instr = inst;
409
410 return inst_base;
411}
412#endif
413#ifdef VFP_INTERPRETER_IMPL
414VDIV_INST : {
415 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
416 CHECK_VFP_ENABLED;
417
418 vdiv_inst* inst_cream = (vdiv_inst*)inst_base->component;
419
420 int ret;
421
422 if (inst_cream->dp_operation)
423 ret = vfp_double_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
424 else
425 ret = vfp_single_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
426
427 CHECK_VFP_CDP_RET;
428 }
429 cpu->Reg[15] += cpu->GetInstructionSize();
430 INC_PC(sizeof(vdiv_inst));
431 FETCH_INST;
432 GOTO_NEXT_INST;
433}
434#endif
435
436/* ----------------------------------------------------------------------- */
437/* VMOVI move immediate */
438/* cond 1110 1D11 im4H Vd-- 101X 0000 im4L */
439/* cond 1110 opc1 CRn- CRd- copr op20 CRm- CDP */
440#ifdef VFP_INTERPRETER_STRUCT
441struct vmovi_inst {
442 unsigned int single;
443 unsigned int d;
444 unsigned int imm;
445};
446#endif
447#ifdef VFP_INTERPRETER_TRANS
448static ARM_INST_PTR INTERPRETER_TRANSLATE(vmovi)(unsigned int inst, int index) {
449 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vmovi_inst));
450 vmovi_inst* inst_cream = (vmovi_inst*)inst_base->component;
451
452 inst_base->cond = BITS(inst, 28, 31);
453 inst_base->idx = index;
454 inst_base->br = TransExtData::NON_BRANCH;
455
456 inst_cream->single = BIT(inst, 8) == 0;
457 inst_cream->d = (inst_cream->single ? BITS(inst, 12, 15) << 1 | BIT(inst, 22)
458 : BITS(inst, 12, 15) | BIT(inst, 22) << 4);
459 unsigned int imm8 = BITS(inst, 16, 19) << 4 | BITS(inst, 0, 3);
460 if (inst_cream->single)
461 inst_cream->imm = BIT(imm8, 7) << 31 | (BIT(imm8, 6) == 0) << 30 |
462 (BIT(imm8, 6) ? 0x1f : 0) << 25 | BITS(imm8, 0, 5) << 19;
463 else
464 inst_cream->imm = BIT(imm8, 7) << 31 | (BIT(imm8, 6) == 0) << 30 |
465 (BIT(imm8, 6) ? 0xff : 0) << 22 | BITS(imm8, 0, 5) << 16;
466 return inst_base;
467}
468#endif
469#ifdef VFP_INTERPRETER_IMPL
470VMOVI_INST : {
471 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
472 CHECK_VFP_ENABLED;
473
474 vmovi_inst* inst_cream = (vmovi_inst*)inst_base->component;
475
476 VMOVI(cpu, inst_cream->single, inst_cream->d, inst_cream->imm);
477 }
478 cpu->Reg[15] += cpu->GetInstructionSize();
479 INC_PC(sizeof(vmovi_inst));
480 FETCH_INST;
481 GOTO_NEXT_INST;
482}
483#endif
484
485/* ----------------------------------------------------------------------- */
486/* VMOVR move register */
487/* cond 1110 1D11 0000 Vd-- 101X 01M0 Vm-- */
488/* cond 1110 opc1 CRn- CRd- copr op20 CRm- CDP */
489#ifdef VFP_INTERPRETER_STRUCT
490struct vmovr_inst {
491 unsigned int single;
492 unsigned int d;
493 unsigned int m;
494};
495#endif
496#ifdef VFP_INTERPRETER_TRANS
497static ARM_INST_PTR INTERPRETER_TRANSLATE(vmovr)(unsigned int inst, int index) {
498 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vmovr_inst));
499 vmovr_inst* inst_cream = (vmovr_inst*)inst_base->component;
500
501 inst_base->cond = BITS(inst, 28, 31);
502 inst_base->idx = index;
503 inst_base->br = TransExtData::NON_BRANCH;
504
505 inst_cream->single = BIT(inst, 8) == 0;
506 inst_cream->d = (inst_cream->single ? BITS(inst, 12, 15) << 1 | BIT(inst, 22)
507 : BITS(inst, 12, 15) | BIT(inst, 22) << 4);
508 inst_cream->m = (inst_cream->single ? BITS(inst, 0, 3) << 1 | BIT(inst, 5)
509 : BITS(inst, 0, 3) | BIT(inst, 5) << 4);
510 return inst_base;
511}
512#endif
513#ifdef VFP_INTERPRETER_IMPL
514VMOVR_INST : {
515 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
516 CHECK_VFP_ENABLED;
517
518 vmovr_inst* inst_cream = (vmovr_inst*)inst_base->component;
519
520 VMOVR(cpu, inst_cream->single, inst_cream->d, inst_cream->m);
521 }
522 cpu->Reg[15] += cpu->GetInstructionSize();
523 INC_PC(sizeof(vmovr_inst));
524 FETCH_INST;
525 GOTO_NEXT_INST;
526}
527#endif
528
529/* ----------------------------------------------------------------------- */
530/* VABS */
531/* cond 1110 1D11 0000 Vd-- 101X 11M0 Vm-- */
532#ifdef VFP_INTERPRETER_STRUCT
533typedef struct _vabs_inst {
534 unsigned int instr;
535 unsigned int dp_operation;
536} vabs_inst;
537#endif
538#ifdef VFP_INTERPRETER_TRANS
539static ARM_INST_PTR INTERPRETER_TRANSLATE(vabs)(unsigned int inst, int index) {
540 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vabs_inst));
541 vabs_inst* inst_cream = (vabs_inst*)inst_base->component;
542
543 inst_base->cond = BITS(inst, 28, 31);
544 inst_base->idx = index;
545 inst_base->br = TransExtData::NON_BRANCH;
546
547 inst_cream->dp_operation = BIT(inst, 8);
548 inst_cream->instr = inst;
549
550 return inst_base;
551}
552#endif
553#ifdef VFP_INTERPRETER_IMPL
554VABS_INST : {
555 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
556 CHECK_VFP_ENABLED;
557
558 vabs_inst* inst_cream = (vabs_inst*)inst_base->component;
559
560 int ret;
561
562 if (inst_cream->dp_operation)
563 ret = vfp_double_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
564 else
565 ret = vfp_single_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
566
567 CHECK_VFP_CDP_RET;
568 }
569 cpu->Reg[15] += cpu->GetInstructionSize();
570 INC_PC(sizeof(vabs_inst));
571 FETCH_INST;
572 GOTO_NEXT_INST;
573}
574#endif
575
576/* ----------------------------------------------------------------------- */
577/* VNEG */
578/* cond 1110 1D11 0001 Vd-- 101X 11M0 Vm-- */
579
580#ifdef VFP_INTERPRETER_STRUCT
581struct vneg_inst {
582 unsigned int instr;
583 unsigned int dp_operation;
584};
585#endif
586#ifdef VFP_INTERPRETER_TRANS
587static ARM_INST_PTR INTERPRETER_TRANSLATE(vneg)(unsigned int inst, int index) {
588 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vneg_inst));
589 vneg_inst* inst_cream = (vneg_inst*)inst_base->component;
590
591 inst_base->cond = BITS(inst, 28, 31);
592 inst_base->idx = index;
593 inst_base->br = TransExtData::NON_BRANCH;
594
595 inst_cream->dp_operation = BIT(inst, 8);
596 inst_cream->instr = inst;
597
598 return inst_base;
599}
600#endif
601#ifdef VFP_INTERPRETER_IMPL
602VNEG_INST : {
603 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
604 CHECK_VFP_ENABLED;
605
606 vneg_inst* inst_cream = (vneg_inst*)inst_base->component;
607
608 int ret;
609
610 if (inst_cream->dp_operation)
611 ret = vfp_double_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
612 else
613 ret = vfp_single_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
614
615 CHECK_VFP_CDP_RET;
616 }
617 cpu->Reg[15] += cpu->GetInstructionSize();
618 INC_PC(sizeof(vneg_inst));
619 FETCH_INST;
620 GOTO_NEXT_INST;
621}
622#endif
623
624/* ----------------------------------------------------------------------- */
625/* VSQRT */
626/* cond 1110 1D11 0001 Vd-- 101X 11M0 Vm-- */
627#ifdef VFP_INTERPRETER_STRUCT
628struct vsqrt_inst {
629 unsigned int instr;
630 unsigned int dp_operation;
631};
632#endif
633#ifdef VFP_INTERPRETER_TRANS
634static ARM_INST_PTR INTERPRETER_TRANSLATE(vsqrt)(unsigned int inst, int index) {
635 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vsqrt_inst));
636 vsqrt_inst* inst_cream = (vsqrt_inst*)inst_base->component;
637
638 inst_base->cond = BITS(inst, 28, 31);
639 inst_base->idx = index;
640 inst_base->br = TransExtData::NON_BRANCH;
641
642 inst_cream->dp_operation = BIT(inst, 8);
643 inst_cream->instr = inst;
644
645 return inst_base;
646}
647#endif
648#ifdef VFP_INTERPRETER_IMPL
649VSQRT_INST : {
650 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
651 CHECK_VFP_ENABLED;
652
653 vsqrt_inst* inst_cream = (vsqrt_inst*)inst_base->component;
654
655 int ret;
656
657 if (inst_cream->dp_operation)
658 ret = vfp_double_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
659 else
660 ret = vfp_single_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
661
662 CHECK_VFP_CDP_RET;
663 }
664 cpu->Reg[15] += cpu->GetInstructionSize();
665 INC_PC(sizeof(vsqrt_inst));
666 FETCH_INST;
667 GOTO_NEXT_INST;
668}
669#endif
670
671/* ----------------------------------------------------------------------- */
672/* VCMP VCMPE */
673/* cond 1110 1D11 0100 Vd-- 101X E1M0 Vm-- Encoding 1 */
674#ifdef VFP_INTERPRETER_STRUCT
675struct vcmp_inst {
676 unsigned int instr;
677 unsigned int dp_operation;
678};
679#endif
680#ifdef VFP_INTERPRETER_TRANS
681static ARM_INST_PTR INTERPRETER_TRANSLATE(vcmp)(unsigned int inst, int index) {
682 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vcmp_inst));
683 vcmp_inst* inst_cream = (vcmp_inst*)inst_base->component;
684
685 inst_base->cond = BITS(inst, 28, 31);
686 inst_base->idx = index;
687 inst_base->br = TransExtData::NON_BRANCH;
688
689 inst_cream->dp_operation = BIT(inst, 8);
690 inst_cream->instr = inst;
691
692 return inst_base;
693}
694#endif
695#ifdef VFP_INTERPRETER_IMPL
696VCMP_INST : {
697 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
698 CHECK_VFP_ENABLED;
699
700 vcmp_inst* inst_cream = (vcmp_inst*)inst_base->component;
701
702 int ret;
703
704 if (inst_cream->dp_operation)
705 ret = vfp_double_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
706 else
707 ret = vfp_single_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
708
709 CHECK_VFP_CDP_RET;
710 }
711 cpu->Reg[15] += cpu->GetInstructionSize();
712 INC_PC(sizeof(vcmp_inst));
713 FETCH_INST;
714 GOTO_NEXT_INST;
715}
716#endif
717
718/* ----------------------------------------------------------------------- */
719/* VCMP VCMPE */
720/* cond 1110 1D11 0100 Vd-- 101X E1M0 Vm-- Encoding 2 */
721#ifdef VFP_INTERPRETER_STRUCT
722struct vcmp2_inst {
723 unsigned int instr;
724 unsigned int dp_operation;
725};
726#endif
727#ifdef VFP_INTERPRETER_TRANS
728static ARM_INST_PTR INTERPRETER_TRANSLATE(vcmp2)(unsigned int inst, int index) {
729 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vcmp2_inst));
730 vcmp2_inst* inst_cream = (vcmp2_inst*)inst_base->component;
731
732 inst_base->cond = BITS(inst, 28, 31);
733 inst_base->idx = index;
734 inst_base->br = TransExtData::NON_BRANCH;
735
736 inst_cream->dp_operation = BIT(inst, 8);
737 inst_cream->instr = inst;
738
739 return inst_base;
740}
741#endif
742#ifdef VFP_INTERPRETER_IMPL
743VCMP2_INST : {
744 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
745 CHECK_VFP_ENABLED;
746
747 vcmp2_inst* inst_cream = (vcmp2_inst*)inst_base->component;
748
749 int ret;
750
751 if (inst_cream->dp_operation)
752 ret = vfp_double_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
753 else
754 ret = vfp_single_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
755
756 CHECK_VFP_CDP_RET;
757 }
758 cpu->Reg[15] += cpu->GetInstructionSize();
759 INC_PC(sizeof(vcmp2_inst));
760 FETCH_INST;
761 GOTO_NEXT_INST;
762}
763#endif
764
765/* ----------------------------------------------------------------------- */
766/* VCVTBDS between double and single */
767/* cond 1110 1D11 0111 Vd-- 101X 11M0 Vm-- */
768#ifdef VFP_INTERPRETER_STRUCT
769struct vcvtbds_inst {
770 unsigned int instr;
771 unsigned int dp_operation;
772};
773#endif
774#ifdef VFP_INTERPRETER_TRANS
775static ARM_INST_PTR INTERPRETER_TRANSLATE(vcvtbds)(unsigned int inst, int index) {
776 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vcvtbds_inst));
777 vcvtbds_inst* inst_cream = (vcvtbds_inst*)inst_base->component;
778
779 inst_base->cond = BITS(inst, 28, 31);
780 inst_base->idx = index;
781 inst_base->br = TransExtData::NON_BRANCH;
782
783 inst_cream->dp_operation = BIT(inst, 8);
784 inst_cream->instr = inst;
785
786 return inst_base;
787}
788#endif
789#ifdef VFP_INTERPRETER_IMPL
790VCVTBDS_INST : {
791 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
792 CHECK_VFP_ENABLED;
793
794 vcvtbds_inst* inst_cream = (vcvtbds_inst*)inst_base->component;
795
796 int ret;
797
798 if (inst_cream->dp_operation)
799 ret = vfp_double_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
800 else
801 ret = vfp_single_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
802
803 CHECK_VFP_CDP_RET;
804 }
805 cpu->Reg[15] += cpu->GetInstructionSize();
806 INC_PC(sizeof(vcvtbds_inst));
807 FETCH_INST;
808 GOTO_NEXT_INST;
809}
810#endif
811
812/* ----------------------------------------------------------------------- */
813/* VCVTBFF between floating point and fixed point */
814/* cond 1110 1D11 1op2 Vd-- 101X X1M0 Vm-- */
815#ifdef VFP_INTERPRETER_STRUCT
816struct vcvtbff_inst {
817 unsigned int instr;
818 unsigned int dp_operation;
819};
820#endif
821#ifdef VFP_INTERPRETER_TRANS
822static ARM_INST_PTR INTERPRETER_TRANSLATE(vcvtbff)(unsigned int inst, int index) {
823 VFP_DEBUG_UNTESTED(VCVTBFF);
824
825 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vcvtbff_inst));
826 vcvtbff_inst* inst_cream = (vcvtbff_inst*)inst_base->component;
827
828 inst_base->cond = BITS(inst, 28, 31);
829 inst_base->idx = index;
830 inst_base->br = TransExtData::NON_BRANCH;
831
832 inst_cream->dp_operation = BIT(inst, 8);
833 inst_cream->instr = inst;
834
835 return inst_base;
836}
837#endif
838#ifdef VFP_INTERPRETER_IMPL
839VCVTBFF_INST : {
840 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
841 CHECK_VFP_ENABLED;
842
843 vcvtbff_inst* inst_cream = (vcvtbff_inst*)inst_base->component;
844
845 int ret;
846
847 if (inst_cream->dp_operation)
848 ret = vfp_double_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
849 else
850 ret = vfp_single_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
851
852 CHECK_VFP_CDP_RET;
853 }
854 cpu->Reg[15] += cpu->GetInstructionSize();
855 INC_PC(sizeof(vcvtbff_inst));
856 FETCH_INST;
857 GOTO_NEXT_INST;
858}
859#endif
860
861/* ----------------------------------------------------------------------- */
862/* VCVTBFI between floating point and integer */
863/* cond 1110 1D11 1op2 Vd-- 101X X1M0 Vm-- */
864#ifdef VFP_INTERPRETER_STRUCT
865struct vcvtbfi_inst {
866 unsigned int instr;
867 unsigned int dp_operation;
868};
869#endif
870#ifdef VFP_INTERPRETER_TRANS
871static ARM_INST_PTR INTERPRETER_TRANSLATE(vcvtbfi)(unsigned int inst, int index) {
872 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vcvtbfi_inst));
873 vcvtbfi_inst* inst_cream = (vcvtbfi_inst*)inst_base->component;
874
875 inst_base->cond = BITS(inst, 28, 31);
876 inst_base->idx = index;
877 inst_base->br = TransExtData::NON_BRANCH;
878
879 inst_cream->dp_operation = BIT(inst, 8);
880 inst_cream->instr = inst;
881
882 return inst_base;
883}
884#endif
885#ifdef VFP_INTERPRETER_IMPL
886VCVTBFI_INST : {
887 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
888 CHECK_VFP_ENABLED;
889
890 vcvtbfi_inst* inst_cream = (vcvtbfi_inst*)inst_base->component;
891
892 int ret;
893
894 if (inst_cream->dp_operation)
895 ret = vfp_double_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
896 else
897 ret = vfp_single_cpdo(cpu, inst_cream->instr, cpu->VFP[VFP_FPSCR]);
898
899 CHECK_VFP_CDP_RET;
900 }
901 cpu->Reg[15] += cpu->GetInstructionSize();
902 INC_PC(sizeof(vcvtbfi_inst));
903 FETCH_INST;
904 GOTO_NEXT_INST;
905}
906#endif
907
908/* ----------------------------------------------------------------------- */
909/* MRC / MCR instructions */
910/* cond 1110 AAAL XXXX XXXX 101C XBB1 XXXX */
911/* cond 1110 op11 CRn- Rt-- copr op21 CRm- */
912
913/* ----------------------------------------------------------------------- */
914/* VMOVBRS between register and single precision */
915/* cond 1110 000o Vn-- Rt-- 1010 N001 0000 */
916/* cond 1110 op11 CRn- Rt-- copr op21 CRm- MRC */
917#ifdef VFP_INTERPRETER_STRUCT
918struct vmovbrs_inst {
919 unsigned int to_arm;
920 unsigned int t;
921 unsigned int n;
922};
923#endif
924#ifdef VFP_INTERPRETER_TRANS
925static ARM_INST_PTR INTERPRETER_TRANSLATE(vmovbrs)(unsigned int inst, int index) {
926 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vmovbrs_inst));
927 vmovbrs_inst* inst_cream = (vmovbrs_inst*)inst_base->component;
928
929 inst_base->cond = BITS(inst, 28, 31);
930 inst_base->idx = index;
931 inst_base->br = TransExtData::NON_BRANCH;
932
933 inst_cream->to_arm = BIT(inst, 20) == 1;
934 inst_cream->t = BITS(inst, 12, 15);
935 inst_cream->n = BIT(inst, 7) | BITS(inst, 16, 19) << 1;
936
937 return inst_base;
938}
939#endif
940#ifdef VFP_INTERPRETER_IMPL
941VMOVBRS_INST : {
942 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
943 CHECK_VFP_ENABLED;
944
945 vmovbrs_inst* inst_cream = (vmovbrs_inst*)inst_base->component;
946
947 VMOVBRS(cpu, inst_cream->to_arm, inst_cream->t, inst_cream->n, &(cpu->Reg[inst_cream->t]));
948 }
949 cpu->Reg[15] += cpu->GetInstructionSize();
950 INC_PC(sizeof(vmovbrs_inst));
951 FETCH_INST;
952 GOTO_NEXT_INST;
953}
954#endif
955
956/* ----------------------------------------------------------------------- */
957/* VMSR */
958/* cond 1110 1110 reg- Rt-- 1010 0001 0000 */
959/* cond 1110 op10 CRn- Rt-- copr op21 CRm- MCR */
960#ifdef VFP_INTERPRETER_STRUCT
961struct vmsr_inst {
962 unsigned int reg;
963 unsigned int Rt;
964};
965#endif
966#ifdef VFP_INTERPRETER_TRANS
967static ARM_INST_PTR INTERPRETER_TRANSLATE(vmsr)(unsigned int inst, int index) {
968 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vmsr_inst));
969 vmsr_inst* inst_cream = (vmsr_inst*)inst_base->component;
970
971 inst_base->cond = BITS(inst, 28, 31);
972 inst_base->idx = index;
973 inst_base->br = TransExtData::NON_BRANCH;
974
975 inst_cream->reg = BITS(inst, 16, 19);
976 inst_cream->Rt = BITS(inst, 12, 15);
977
978 return inst_base;
979}
980#endif
981#ifdef VFP_INTERPRETER_IMPL
982VMSR_INST : {
983 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
984 /* FIXME: special case for access to FPSID and FPEXC, VFP must be disabled ,
985 and in privileged mode */
986 /* Exceptions must be checked, according to v7 ref manual */
987 CHECK_VFP_ENABLED;
988
989 vmsr_inst* const inst_cream = (vmsr_inst*)inst_base->component;
990
991 unsigned int reg = inst_cream->reg;
992 unsigned int rt = inst_cream->Rt;
993
994 if (reg == 1) {
995 cpu->VFP[VFP_FPSCR] = cpu->Reg[rt];
996 } else if (cpu->InAPrivilegedMode()) {
997 if (reg == 8)
998 cpu->VFP[VFP_FPEXC] = cpu->Reg[rt];
999 else if (reg == 9)
1000 cpu->VFP[VFP_FPINST] = cpu->Reg[rt];
1001 else if (reg == 10)
1002 cpu->VFP[VFP_FPINST2] = cpu->Reg[rt];
1003 }
1004 }
1005 cpu->Reg[15] += cpu->GetInstructionSize();
1006 INC_PC(sizeof(vmsr_inst));
1007 FETCH_INST;
1008 GOTO_NEXT_INST;
1009}
1010#endif
1011
1012/* ----------------------------------------------------------------------- */
1013/* VMOVBRC register to scalar */
1014/* cond 1110 0XX0 Vd-- Rt-- 1011 DXX1 0000 */
1015/* cond 1110 op10 CRn- Rt-- copr op21 CRm- MCR */
1016#ifdef VFP_INTERPRETER_STRUCT
1017struct vmovbrc_inst {
1018 unsigned int esize;
1019 unsigned int index;
1020 unsigned int d;
1021 unsigned int t;
1022};
1023#endif
1024#ifdef VFP_INTERPRETER_TRANS
1025static ARM_INST_PTR INTERPRETER_TRANSLATE(vmovbrc)(unsigned int inst, int index) {
1026 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vmovbrc_inst));
1027 vmovbrc_inst* inst_cream = (vmovbrc_inst*)inst_base->component;
1028
1029 inst_base->cond = BITS(inst, 28, 31);
1030 inst_base->idx = index;
1031 inst_base->br = TransExtData::NON_BRANCH;
1032
1033 inst_cream->d = BITS(inst, 16, 19) | BIT(inst, 7) << 4;
1034 inst_cream->t = BITS(inst, 12, 15);
1035 /* VFP variant of instruction */
1036 inst_cream->esize = 32;
1037 inst_cream->index = BIT(inst, 21);
1038
1039 return inst_base;
1040}
1041#endif
1042#ifdef VFP_INTERPRETER_IMPL
1043VMOVBRC_INST : {
1044 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
1045 CHECK_VFP_ENABLED;
1046
1047 vmovbrc_inst* const inst_cream = (vmovbrc_inst*)inst_base->component;
1048
1049 cpu->ExtReg[(2 * inst_cream->d) + inst_cream->index] = cpu->Reg[inst_cream->t];
1050 }
1051 cpu->Reg[15] += cpu->GetInstructionSize();
1052 INC_PC(sizeof(vmovbrc_inst));
1053 FETCH_INST;
1054 GOTO_NEXT_INST;
1055}
1056#endif
1057
1058/* ----------------------------------------------------------------------- */
1059/* VMRS */
1060/* cond 1110 1111 CRn- Rt-- 1010 0001 0000 */
1061/* cond 1110 op11 CRn- Rt-- copr op21 CRm- MRC */
1062#ifdef VFP_INTERPRETER_STRUCT
1063struct vmrs_inst {
1064 unsigned int reg;
1065 unsigned int Rt;
1066};
1067#endif
1068#ifdef VFP_INTERPRETER_TRANS
1069static ARM_INST_PTR INTERPRETER_TRANSLATE(vmrs)(unsigned int inst, int index) {
1070 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vmrs_inst));
1071 vmrs_inst* inst_cream = (vmrs_inst*)inst_base->component;
1072
1073 inst_base->cond = BITS(inst, 28, 31);
1074 inst_base->idx = index;
1075 inst_base->br = TransExtData::NON_BRANCH;
1076
1077 inst_cream->reg = BITS(inst, 16, 19);
1078 inst_cream->Rt = BITS(inst, 12, 15);
1079
1080 return inst_base;
1081}
1082#endif
1083#ifdef VFP_INTERPRETER_IMPL
1084VMRS_INST : {
1085 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
1086 /* FIXME: special case for access to FPSID and FPEXC, VFP must be disabled,
1087 and in privileged mode */
1088 /* Exceptions must be checked, according to v7 ref manual */
1089 CHECK_VFP_ENABLED;
1090
1091 vmrs_inst* const inst_cream = (vmrs_inst*)inst_base->component;
1092
1093 unsigned int reg = inst_cream->reg;
1094 unsigned int rt = inst_cream->Rt;
1095
1096 if (reg == 1) // FPSCR
1097 {
1098 if (rt != 15) {
1099 cpu->Reg[rt] = cpu->VFP[VFP_FPSCR];
1100 } else {
1101 cpu->NFlag = (cpu->VFP[VFP_FPSCR] >> 31) & 1;
1102 cpu->ZFlag = (cpu->VFP[VFP_FPSCR] >> 30) & 1;
1103 cpu->CFlag = (cpu->VFP[VFP_FPSCR] >> 29) & 1;
1104 cpu->VFlag = (cpu->VFP[VFP_FPSCR] >> 28) & 1;
1105 }
1106 } else if (reg == 0) {
1107 cpu->Reg[rt] = cpu->VFP[VFP_FPSID];
1108 } else if (reg == 6) {
1109 cpu->Reg[rt] = cpu->VFP[VFP_MVFR1];
1110 } else if (reg == 7) {
1111 cpu->Reg[rt] = cpu->VFP[VFP_MVFR0];
1112 } else if (cpu->InAPrivilegedMode()) {
1113 if (reg == 8)
1114 cpu->Reg[rt] = cpu->VFP[VFP_FPEXC];
1115 else if (reg == 9)
1116 cpu->Reg[rt] = cpu->VFP[VFP_FPINST];
1117 else if (reg == 10)
1118 cpu->Reg[rt] = cpu->VFP[VFP_FPINST2];
1119 }
1120 }
1121 cpu->Reg[15] += cpu->GetInstructionSize();
1122 INC_PC(sizeof(vmrs_inst));
1123 FETCH_INST;
1124 GOTO_NEXT_INST;
1125}
1126#endif
1127
1128/* ----------------------------------------------------------------------- */
1129/* VMOVBCR scalar to register */
1130/* cond 1110 XXX1 Vd-- Rt-- 1011 NXX1 0000 */
1131/* cond 1110 op11 CRn- Rt-- copr op21 CRm- MCR */
1132#ifdef VFP_INTERPRETER_STRUCT
1133struct vmovbcr_inst {
1134 unsigned int esize;
1135 unsigned int index;
1136 unsigned int d;
1137 unsigned int t;
1138};
1139#endif
1140#ifdef VFP_INTERPRETER_TRANS
1141static ARM_INST_PTR INTERPRETER_TRANSLATE(vmovbcr)(unsigned int inst, int index) {
1142 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vmovbcr_inst));
1143 vmovbcr_inst* inst_cream = (vmovbcr_inst*)inst_base->component;
1144
1145 inst_base->cond = BITS(inst, 28, 31);
1146 inst_base->idx = index;
1147 inst_base->br = TransExtData::NON_BRANCH;
1148
1149 inst_cream->d = BITS(inst, 16, 19) | BIT(inst, 7) << 4;
1150 inst_cream->t = BITS(inst, 12, 15);
1151 /* VFP variant of instruction */
1152 inst_cream->esize = 32;
1153 inst_cream->index = BIT(inst, 21);
1154
1155 return inst_base;
1156}
1157#endif
1158#ifdef VFP_INTERPRETER_IMPL
1159VMOVBCR_INST : {
1160 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
1161 CHECK_VFP_ENABLED;
1162
1163 vmovbcr_inst* const inst_cream = (vmovbcr_inst*)inst_base->component;
1164
1165 cpu->Reg[inst_cream->t] = cpu->ExtReg[(2 * inst_cream->d) + inst_cream->index];
1166 }
1167 cpu->Reg[15] += cpu->GetInstructionSize();
1168 INC_PC(sizeof(vmovbcr_inst));
1169 FETCH_INST;
1170 GOTO_NEXT_INST;
1171}
1172#endif
1173
1174/* ----------------------------------------------------------------------- */
1175/* MRRC / MCRR instructions */
1176/* cond 1100 0101 Rt2- Rt-- copr opc1 CRm- MRRC */
1177/* cond 1100 0100 Rt2- Rt-- copr opc1 CRm- MCRR */
1178
1179/* ----------------------------------------------------------------------- */
1180/* VMOVBRRSS between 2 registers to 2 singles */
1181/* cond 1100 010X Rt2- Rt-- 1010 00X1 Vm-- */
1182/* cond 1100 0101 Rt2- Rt-- copr opc1 CRm- MRRC */
1183#ifdef VFP_INTERPRETER_STRUCT
1184struct vmovbrrss_inst {
1185 unsigned int to_arm;
1186 unsigned int t;
1187 unsigned int t2;
1188 unsigned int m;
1189};
1190#endif
1191#ifdef VFP_INTERPRETER_TRANS
1192static ARM_INST_PTR INTERPRETER_TRANSLATE(vmovbrrss)(unsigned int inst, int index) {
1193 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vmovbrrss_inst));
1194 vmovbrrss_inst* inst_cream = (vmovbrrss_inst*)inst_base->component;
1195
1196 inst_base->cond = BITS(inst, 28, 31);
1197 inst_base->idx = index;
1198 inst_base->br = TransExtData::NON_BRANCH;
1199
1200 inst_cream->to_arm = BIT(inst, 20) == 1;
1201 inst_cream->t = BITS(inst, 12, 15);
1202 inst_cream->t2 = BITS(inst, 16, 19);
1203 inst_cream->m = BITS(inst, 0, 3) << 1 | BIT(inst, 5);
1204
1205 return inst_base;
1206}
1207#endif
1208#ifdef VFP_INTERPRETER_IMPL
1209VMOVBRRSS_INST : {
1210 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
1211 CHECK_VFP_ENABLED;
1212
1213 vmovbrrss_inst* const inst_cream = (vmovbrrss_inst*)inst_base->component;
1214
1215 VMOVBRRSS(cpu, inst_cream->to_arm, inst_cream->t, inst_cream->t2, inst_cream->m,
1216 &cpu->Reg[inst_cream->t], &cpu->Reg[inst_cream->t2]);
1217 }
1218 cpu->Reg[15] += cpu->GetInstructionSize();
1219 INC_PC(sizeof(vmovbrrss_inst));
1220 FETCH_INST;
1221 GOTO_NEXT_INST;
1222}
1223#endif
1224
1225/* ----------------------------------------------------------------------- */
1226/* VMOVBRRD between 2 registers and 1 double */
1227/* cond 1100 010X Rt2- Rt-- 1011 00X1 Vm-- */
1228/* cond 1100 0101 Rt2- Rt-- copr opc1 CRm- MRRC */
1229#ifdef VFP_INTERPRETER_STRUCT
1230struct vmovbrrd_inst {
1231 unsigned int to_arm;
1232 unsigned int t;
1233 unsigned int t2;
1234 unsigned int m;
1235};
1236#endif
1237#ifdef VFP_INTERPRETER_TRANS
1238static ARM_INST_PTR INTERPRETER_TRANSLATE(vmovbrrd)(unsigned int inst, int index) {
1239 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vmovbrrd_inst));
1240 vmovbrrd_inst* inst_cream = (vmovbrrd_inst*)inst_base->component;
1241
1242 inst_base->cond = BITS(inst, 28, 31);
1243 inst_base->idx = index;
1244 inst_base->br = TransExtData::NON_BRANCH;
1245
1246 inst_cream->to_arm = BIT(inst, 20) == 1;
1247 inst_cream->t = BITS(inst, 12, 15);
1248 inst_cream->t2 = BITS(inst, 16, 19);
1249 inst_cream->m = BIT(inst, 5) << 4 | BITS(inst, 0, 3);
1250
1251 return inst_base;
1252}
1253#endif
1254#ifdef VFP_INTERPRETER_IMPL
1255VMOVBRRD_INST : {
1256 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
1257 CHECK_VFP_ENABLED;
1258
1259 vmovbrrd_inst* inst_cream = (vmovbrrd_inst*)inst_base->component;
1260
1261 VMOVBRRD(cpu, inst_cream->to_arm, inst_cream->t, inst_cream->t2, inst_cream->m,
1262 &(cpu->Reg[inst_cream->t]), &(cpu->Reg[inst_cream->t2]));
1263 }
1264 cpu->Reg[15] += cpu->GetInstructionSize();
1265 INC_PC(sizeof(vmovbrrd_inst));
1266 FETCH_INST;
1267 GOTO_NEXT_INST;
1268}
1269#endif
1270
1271/* ----------------------------------------------------------------------- */
1272/* LDC/STC between 2 registers and 1 double */
1273/* cond 110X XXX1 Rn-- CRd- copr imm- imm- LDC */
1274/* cond 110X XXX0 Rn-- CRd- copr imm8 imm8 STC */
1275
1276/* ----------------------------------------------------------------------- */
1277/* VSTR */
1278/* cond 1101 UD00 Rn-- Vd-- 101X imm8 imm8 */
1279#ifdef VFP_INTERPRETER_STRUCT
1280struct vstr_inst {
1281 unsigned int single;
1282 unsigned int n;
1283 unsigned int d;
1284 unsigned int imm32;
1285 unsigned int add;
1286};
1287#endif
1288#ifdef VFP_INTERPRETER_TRANS
1289static ARM_INST_PTR INTERPRETER_TRANSLATE(vstr)(unsigned int inst, int index) {
1290 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vstr_inst));
1291 vstr_inst* inst_cream = (vstr_inst*)inst_base->component;
1292
1293 inst_base->cond = BITS(inst, 28, 31);
1294 inst_base->idx = index;
1295 inst_base->br = TransExtData::NON_BRANCH;
1296
1297 inst_cream->single = BIT(inst, 8) == 0;
1298 inst_cream->add = BIT(inst, 23);
1299 inst_cream->imm32 = BITS(inst, 0, 7) << 2;
1300 inst_cream->d = (inst_cream->single ? BITS(inst, 12, 15) << 1 | BIT(inst, 22)
1301 : BITS(inst, 12, 15) | BIT(inst, 22) << 4);
1302 inst_cream->n = BITS(inst, 16, 19);
1303
1304 return inst_base;
1305}
1306#endif
1307#ifdef VFP_INTERPRETER_IMPL
1308VSTR_INST : {
1309 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
1310 CHECK_VFP_ENABLED;
1311
1312 vstr_inst* inst_cream = (vstr_inst*)inst_base->component;
1313
1314 unsigned int base = (inst_cream->n == 15 ? (cpu->Reg[inst_cream->n] & 0xFFFFFFFC) + 8
1315 : cpu->Reg[inst_cream->n]);
1316 addr = (inst_cream->add ? base + inst_cream->imm32 : base - inst_cream->imm32);
1317
1318 if (inst_cream->single) {
1319 cpu->WriteMemory32(addr, cpu->ExtReg[inst_cream->d]);
1320 } else {
1321 const u32 word1 = cpu->ExtReg[inst_cream->d * 2 + 0];
1322 const u32 word2 = cpu->ExtReg[inst_cream->d * 2 + 1];
1323
1324 if (cpu->InBigEndianMode()) {
1325 cpu->WriteMemory32(addr + 0, word2);
1326 cpu->WriteMemory32(addr + 4, word1);
1327 } else {
1328 cpu->WriteMemory32(addr + 0, word1);
1329 cpu->WriteMemory32(addr + 4, word2);
1330 }
1331 }
1332 }
1333 cpu->Reg[15] += cpu->GetInstructionSize();
1334 INC_PC(sizeof(vstr_inst));
1335 FETCH_INST;
1336 GOTO_NEXT_INST;
1337}
1338#endif
1339
1340/* ----------------------------------------------------------------------- */
1341/* VPUSH */
1342/* cond 1101 0D10 1101 Vd-- 101X imm8 imm8 */
1343#ifdef VFP_INTERPRETER_STRUCT
1344struct vpush_inst {
1345 unsigned int single;
1346 unsigned int d;
1347 unsigned int imm32;
1348 unsigned int regs;
1349};
1350#endif
1351#ifdef VFP_INTERPRETER_TRANS
1352static ARM_INST_PTR INTERPRETER_TRANSLATE(vpush)(unsigned int inst, int index) {
1353 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vpush_inst));
1354 vpush_inst* inst_cream = (vpush_inst*)inst_base->component;
1355
1356 inst_base->cond = BITS(inst, 28, 31);
1357 inst_base->idx = index;
1358 inst_base->br = TransExtData::NON_BRANCH;
1359
1360 inst_cream->single = BIT(inst, 8) == 0;
1361 inst_cream->d = (inst_cream->single ? BITS(inst, 12, 15) << 1 | BIT(inst, 22)
1362 : BITS(inst, 12, 15) | BIT(inst, 22) << 4);
1363 inst_cream->imm32 = BITS(inst, 0, 7) << 2;
1364 inst_cream->regs = (inst_cream->single ? BITS(inst, 0, 7) : BITS(inst, 1, 7));
1365
1366 return inst_base;
1367}
1368#endif
1369#ifdef VFP_INTERPRETER_IMPL
1370VPUSH_INST : {
1371 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
1372 CHECK_VFP_ENABLED;
1373
1374 vpush_inst* inst_cream = (vpush_inst*)inst_base->component;
1375
1376 addr = cpu->Reg[R13] - inst_cream->imm32;
1377
1378 for (unsigned int i = 0; i < inst_cream->regs; i++) {
1379 if (inst_cream->single) {
1380 cpu->WriteMemory32(addr, cpu->ExtReg[inst_cream->d + i]);
1381 addr += 4;
1382 } else {
1383 const u32 word1 = cpu->ExtReg[(inst_cream->d + i) * 2 + 0];
1384 const u32 word2 = cpu->ExtReg[(inst_cream->d + i) * 2 + 1];
1385
1386 if (cpu->InBigEndianMode()) {
1387 cpu->WriteMemory32(addr + 0, word2);
1388 cpu->WriteMemory32(addr + 4, word1);
1389 } else {
1390 cpu->WriteMemory32(addr + 0, word1);
1391 cpu->WriteMemory32(addr + 4, word2);
1392 }
1393
1394 addr += 8;
1395 }
1396 }
1397
1398 cpu->Reg[R13] -= inst_cream->imm32;
1399 }
1400 cpu->Reg[15] += cpu->GetInstructionSize();
1401 INC_PC(sizeof(vpush_inst));
1402 FETCH_INST;
1403 GOTO_NEXT_INST;
1404}
1405#endif
1406
1407/* ----------------------------------------------------------------------- */
1408/* VSTM */
1409/* cond 110P UDW0 Rn-- Vd-- 101X imm8 imm8 */
1410#ifdef VFP_INTERPRETER_STRUCT
1411struct vstm_inst {
1412 unsigned int single;
1413 unsigned int add;
1414 unsigned int wback;
1415 unsigned int d;
1416 unsigned int n;
1417 unsigned int imm32;
1418 unsigned int regs;
1419};
1420#endif
1421#ifdef VFP_INTERPRETER_TRANS
1422static ARM_INST_PTR INTERPRETER_TRANSLATE(vstm)(unsigned int inst, int index) {
1423 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vstm_inst));
1424 vstm_inst* inst_cream = (vstm_inst*)inst_base->component;
1425
1426 inst_base->cond = BITS(inst, 28, 31);
1427 inst_base->idx = index;
1428 inst_base->br = TransExtData::NON_BRANCH;
1429
1430 inst_cream->single = BIT(inst, 8) == 0;
1431 inst_cream->add = BIT(inst, 23);
1432 inst_cream->wback = BIT(inst, 21);
1433 inst_cream->d = (inst_cream->single ? BITS(inst, 12, 15) << 1 | BIT(inst, 22)
1434 : BITS(inst, 12, 15) | BIT(inst, 22) << 4);
1435 inst_cream->n = BITS(inst, 16, 19);
1436 inst_cream->imm32 = BITS(inst, 0, 7) << 2;
1437 inst_cream->regs = (inst_cream->single ? BITS(inst, 0, 7) : BITS(inst, 1, 7));
1438
1439 return inst_base;
1440}
1441#endif
1442#ifdef VFP_INTERPRETER_IMPL
1443VSTM_INST : /* encoding 1 */
1444{
1445 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
1446 CHECK_VFP_ENABLED;
1447
1448 vstm_inst* inst_cream = (vstm_inst*)inst_base->component;
1449
1450 u32 address = cpu->Reg[inst_cream->n];
1451
1452 // Only possible in ARM mode, where PC accesses have an 8 byte offset.
1453 if (inst_cream->n == 15)
1454 address += 8;
1455
1456 if (inst_cream->add == 0)
1457 address -= inst_cream->imm32;
1458
1459 for (unsigned int i = 0; i < inst_cream->regs; i++) {
1460 if (inst_cream->single) {
1461 cpu->WriteMemory32(address, cpu->ExtReg[inst_cream->d + i]);
1462 address += 4;
1463 } else {
1464 const u32 word1 = cpu->ExtReg[(inst_cream->d + i) * 2 + 0];
1465 const u32 word2 = cpu->ExtReg[(inst_cream->d + i) * 2 + 1];
1466
1467 if (cpu->InBigEndianMode()) {
1468 cpu->WriteMemory32(address + 0, word2);
1469 cpu->WriteMemory32(address + 4, word1);
1470 } else {
1471 cpu->WriteMemory32(address + 0, word1);
1472 cpu->WriteMemory32(address + 4, word2);
1473 }
1474
1475 address += 8;
1476 }
1477 }
1478 if (inst_cream->wback) {
1479 cpu->Reg[inst_cream->n] =
1480 (inst_cream->add ? cpu->Reg[inst_cream->n] + inst_cream->imm32
1481 : cpu->Reg[inst_cream->n] - inst_cream->imm32);
1482 }
1483 }
1484 cpu->Reg[15] += 4;
1485 INC_PC(sizeof(vstm_inst));
1486
1487 FETCH_INST;
1488 GOTO_NEXT_INST;
1489}
1490#endif
1491
1492/* ----------------------------------------------------------------------- */
1493/* VPOP */
1494/* cond 1100 1D11 1101 Vd-- 101X imm8 imm8 */
1495#ifdef VFP_INTERPRETER_STRUCT
1496struct vpop_inst {
1497 unsigned int single;
1498 unsigned int d;
1499 unsigned int imm32;
1500 unsigned int regs;
1501};
1502#endif
1503#ifdef VFP_INTERPRETER_TRANS
1504static ARM_INST_PTR INTERPRETER_TRANSLATE(vpop)(unsigned int inst, int index) {
1505 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vpop_inst));
1506 vpop_inst* inst_cream = (vpop_inst*)inst_base->component;
1507
1508 inst_base->cond = BITS(inst, 28, 31);
1509 inst_base->idx = index;
1510 inst_base->br = TransExtData::NON_BRANCH;
1511
1512 inst_cream->single = BIT(inst, 8) == 0;
1513 inst_cream->d = (inst_cream->single ? (BITS(inst, 12, 15) << 1) | BIT(inst, 22)
1514 : BITS(inst, 12, 15) | (BIT(inst, 22) << 4));
1515 inst_cream->imm32 = BITS(inst, 0, 7) << 2;
1516 inst_cream->regs = (inst_cream->single ? BITS(inst, 0, 7) : BITS(inst, 1, 7));
1517
1518 return inst_base;
1519}
1520#endif
1521#ifdef VFP_INTERPRETER_IMPL
1522VPOP_INST : {
1523 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
1524 CHECK_VFP_ENABLED;
1525
1526 vpop_inst* inst_cream = (vpop_inst*)inst_base->component;
1527
1528 addr = cpu->Reg[R13];
1529
1530 for (unsigned int i = 0; i < inst_cream->regs; i++) {
1531 if (inst_cream->single) {
1532 cpu->ExtReg[inst_cream->d + i] = cpu->ReadMemory32(addr);
1533 addr += 4;
1534 } else {
1535 const u32 word1 = cpu->ReadMemory32(addr + 0);
1536 const u32 word2 = cpu->ReadMemory32(addr + 4);
1537
1538 if (cpu->InBigEndianMode()) {
1539 cpu->ExtReg[(inst_cream->d + i) * 2 + 0] = word2;
1540 cpu->ExtReg[(inst_cream->d + i) * 2 + 1] = word1;
1541 } else {
1542 cpu->ExtReg[(inst_cream->d + i) * 2 + 0] = word1;
1543 cpu->ExtReg[(inst_cream->d + i) * 2 + 1] = word2;
1544 }
1545
1546 addr += 8;
1547 }
1548 }
1549 cpu->Reg[R13] += inst_cream->imm32;
1550 }
1551 cpu->Reg[15] += cpu->GetInstructionSize();
1552 INC_PC(sizeof(vpop_inst));
1553 FETCH_INST;
1554 GOTO_NEXT_INST;
1555}
1556#endif
1557
1558/* ----------------------------------------------------------------------- */
1559/* VLDR */
1560/* cond 1101 UD01 Rn-- Vd-- 101X imm8 imm8 */
1561#ifdef VFP_INTERPRETER_STRUCT
1562struct vldr_inst {
1563 unsigned int single;
1564 unsigned int n;
1565 unsigned int d;
1566 unsigned int imm32;
1567 unsigned int add;
1568};
1569#endif
1570#ifdef VFP_INTERPRETER_TRANS
1571static ARM_INST_PTR INTERPRETER_TRANSLATE(vldr)(unsigned int inst, int index) {
1572 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vldr_inst));
1573 vldr_inst* inst_cream = (vldr_inst*)inst_base->component;
1574
1575 inst_base->cond = BITS(inst, 28, 31);
1576 inst_base->idx = index;
1577 inst_base->br = TransExtData::NON_BRANCH;
1578
1579 inst_cream->single = BIT(inst, 8) == 0;
1580 inst_cream->add = BIT(inst, 23);
1581 inst_cream->imm32 = BITS(inst, 0, 7) << 2;
1582 inst_cream->d = (inst_cream->single ? BITS(inst, 12, 15) << 1 | BIT(inst, 22)
1583 : BITS(inst, 12, 15) | BIT(inst, 22) << 4);
1584 inst_cream->n = BITS(inst, 16, 19);
1585
1586 return inst_base;
1587}
1588#endif
1589#ifdef VFP_INTERPRETER_IMPL
1590VLDR_INST : {
1591 if ((inst_base->cond == ConditionCode::AL) || CondPassed(cpu, inst_base->cond)) {
1592 CHECK_VFP_ENABLED;
1593
1594 vldr_inst* inst_cream = (vldr_inst*)inst_base->component;
1595
1596 unsigned int base = (inst_cream->n == 15 ? (cpu->Reg[inst_cream->n] & 0xFFFFFFFC) + 8
1597 : cpu->Reg[inst_cream->n]);
1598 addr = (inst_cream->add ? base + inst_cream->imm32 : base - inst_cream->imm32);
1599
1600 if (inst_cream->single) {
1601 cpu->ExtReg[inst_cream->d] = cpu->ReadMemory32(addr);
1602 } else {
1603 const u32 word1 = cpu->ReadMemory32(addr + 0);
1604 const u32 word2 = cpu->ReadMemory32(addr + 4);
1605
1606 if (cpu->InBigEndianMode()) {
1607 cpu->ExtReg[inst_cream->d * 2 + 0] = word2;
1608 cpu->ExtReg[inst_cream->d * 2 + 1] = word1;
1609 } else {
1610 cpu->ExtReg[inst_cream->d * 2 + 0] = word1;
1611 cpu->ExtReg[inst_cream->d * 2 + 1] = word2;
1612 }
1613 }
1614 }
1615 cpu->Reg[15] += cpu->GetInstructionSize();
1616 INC_PC(sizeof(vldr_inst));
1617 FETCH_INST;
1618 GOTO_NEXT_INST;
1619}
1620#endif
1621
1622/* ----------------------------------------------------------------------- */
1623/* VLDM */
1624/* cond 110P UDW1 Rn-- Vd-- 101X imm8 imm8 */
1625#ifdef VFP_INTERPRETER_STRUCT
1626struct vldm_inst {
1627 unsigned int single;
1628 unsigned int add;
1629 unsigned int wback;
1630 unsigned int d;
1631 unsigned int n;
1632 unsigned int imm32;
1633 unsigned int regs;
1634};
1635#endif
1636#ifdef VFP_INTERPRETER_TRANS
1637static ARM_INST_PTR INTERPRETER_TRANSLATE(vldm)(unsigned int inst, int index) {
1638 arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(vldm_inst));
1639 vldm_inst* inst_cream = (vldm_inst*)inst_base->component;
1640
1641 inst_base->cond = BITS(inst, 28, 31);
1642 inst_base->idx = index;
1643 inst_base->br = TransExtData::NON_BRANCH;
1644
1645 inst_cream->single = BIT(inst, 8) == 0;
1646 inst_cream->add = BIT(inst, 23);
1647 inst_cream->wback = BIT(inst, 21);
1648 inst_cream->d = (inst_cream->single ? BITS(inst, 12, 15) << 1 | BIT(inst, 22)
1649 : BITS(inst, 12, 15) | BIT(inst, 22) << 4);
1650 inst_cream->n = BITS(inst, 16, 19);
1651 inst_cream->imm32 = BITS(inst, 0, 7) << 2;
1652 inst_cream->regs = (inst_cream->single ? BITS(inst, 0, 7) : BITS(inst, 1, 7));
1653
1654 return inst_base;
1655}
1656#endif
1657#ifdef VFP_INTERPRETER_IMPL
1658VLDM_INST : {
1659 if (inst_base->cond == ConditionCode::AL || CondPassed(cpu, inst_base->cond)) {
1660 CHECK_VFP_ENABLED;
1661
1662 vldm_inst* inst_cream = (vldm_inst*)inst_base->component;
1663
1664 u32 address = cpu->Reg[inst_cream->n];
1665
1666 // Only possible in ARM mode, where PC accesses have an 8 byte offset.
1667 if (inst_cream->n == 15)
1668 address += 8;
1669
1670 if (inst_cream->add == 0)
1671 address -= inst_cream->imm32;
1672
1673 for (unsigned int i = 0; i < inst_cream->regs; i++) {
1674 if (inst_cream->single) {
1675 cpu->ExtReg[inst_cream->d + i] = cpu->ReadMemory32(address);
1676 address += 4;
1677 } else {
1678 const u32 word1 = cpu->ReadMemory32(address + 0);
1679 const u32 word2 = cpu->ReadMemory32(address + 4);
1680
1681 if (cpu->InBigEndianMode()) {
1682 cpu->ExtReg[(inst_cream->d + i) * 2 + 0] = word2;
1683 cpu->ExtReg[(inst_cream->d + i) * 2 + 1] = word1;
1684 } else {
1685 cpu->ExtReg[(inst_cream->d + i) * 2 + 0] = word1;
1686 cpu->ExtReg[(inst_cream->d + i) * 2 + 1] = word2;
1687 }
1688
1689 address += 8;
1690 }
1691 }
1692 if (inst_cream->wback) {
1693 cpu->Reg[inst_cream->n] =
1694 (inst_cream->add ? cpu->Reg[inst_cream->n] + inst_cream->imm32
1695 : cpu->Reg[inst_cream->n] - inst_cream->imm32);
1696 }
1697 }
1698 cpu->Reg[15] += cpu->GetInstructionSize();
1699 INC_PC(sizeof(vldm_inst));
1700 FETCH_INST;
1701 GOTO_NEXT_INST;
1702}
1703#endif
diff --git a/src/core/arm/skyeye_common/vfp/vfpsingle.cpp b/src/core/arm/skyeye_common/vfp/vfpsingle.cpp
deleted file mode 100644
index 108f03aa9..000000000
--- a/src/core/arm/skyeye_common/vfp/vfpsingle.cpp
+++ /dev/null
@@ -1,1272 +0,0 @@
1/*
2 vfp/vfpsingle.c - ARM VFPv3 emulation unit - SoftFloat single instruction
3 Copyright (C) 2003 Skyeye Develop Group
4 for help please send mail to <skyeye-developer@lists.gro.clinux.org>
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19*/
20
21/*
22 * This code is derived in part from :
23 * - Android kernel
24 * - John R. Housers softfloat library, which
25 * carries the following notice:
26 *
27 * ===========================================================================
28 * This C source file is part of the SoftFloat IEC/IEEE Floating-point
29 * Arithmetic Package, Release 2.
30 *
31 * Written by John R. Hauser. This work was made possible in part by the
32 * International Computer Science Institute, located at Suite 600, 1947 Center
33 * Street, Berkeley, California 94704. Funding was partially provided by the
34 * National Science Foundation under grant MIP-9311980. The original version
35 * of this code was written as part of a project to build a fixed-point vector
36 * processor in collaboration with the University of California at Berkeley,
37 * overseen by Profs. Nelson Morgan and John Wawrzynek. More information
38 * is available through the web page `http://HTTP.CS.Berkeley.EDU/~jhauser/
39 * arithmetic/softfloat.html'.
40 *
41 * THIS SOFTWARE IS DISTRIBUTED AS IS, FOR FREE. Although reasonable effort
42 * has been made to avoid it, THIS SOFTWARE MAY CONTAIN FAULTS THAT WILL AT
43 * TIMES RESULT IN INCORRECT BEHAVIOR. USE OF THIS SOFTWARE IS RESTRICTED TO
44 * PERSONS AND ORGANIZATIONS WHO CAN AND WILL TAKE FULL RESPONSIBILITY FOR ANY
45 * AND ALL LOSSES, COSTS, OR OTHER PROBLEMS ARISING FROM ITS USE.
46 *
47 * Derivative works are acceptable, even for commercial purposes, so long as
48 * (1) they include prominent notice that the work is derivative, and (2) they
49 * include prominent notice akin to these three paragraphs for those parts of
50 * this code that are retained.
51 * ===========================================================================
52 */
53
54#include <algorithm>
55#include <cinttypes>
56#include "common/common_funcs.h"
57#include "common/common_types.h"
58#include "common/logging/log.h"
59#include "core/arm/skyeye_common/vfp/asm_vfp.h"
60#include "core/arm/skyeye_common/vfp/vfp.h"
61#include "core/arm/skyeye_common/vfp/vfp_helper.h"
62
63static struct vfp_single vfp_single_default_qnan = {
64 255, 0, VFP_SINGLE_SIGNIFICAND_QNAN,
65};
66
67static void vfp_single_dump(const char* str, struct vfp_single* s) {
68 LOG_TRACE(Core_ARM, "%s: sign=%d exponent=%d significand=%08x", str, s->sign != 0,
69 s->exponent, s->significand);
70}
71
72static void vfp_single_normalise_denormal(struct vfp_single* vs) {
73 int bits = 31 - fls(vs->significand);
74
75 vfp_single_dump("normalise_denormal: in", vs);
76
77 if (bits) {
78 vs->exponent -= bits - 1;
79 vs->significand <<= bits;
80 }
81
82 vfp_single_dump("normalise_denormal: out", vs);
83}
84
85u32 vfp_single_normaliseround(ARMul_State* state, int sd, struct vfp_single* vs, u32 fpscr,
86 u32 exceptions, const char* func) {
87 u32 significand, incr, rmode;
88 int exponent, shift, underflow;
89
90 vfp_single_dump("pack: in", vs);
91
92 /*
93 * Infinities and NaNs are a special case.
94 */
95 if (vs->exponent == 255 && (vs->significand == 0 || exceptions))
96 goto pack;
97
98 /*
99 * Special-case zero.
100 */
101 if (vs->significand == 0) {
102 vs->exponent = 0;
103 goto pack;
104 }
105
106 exponent = vs->exponent;
107 significand = vs->significand;
108
109 /*
110 * Normalise first. Note that we shift the significand up to
111 * bit 31, so we have VFP_SINGLE_LOW_BITS + 1 below the least
112 * significant bit.
113 */
114 shift = 32 - fls(significand);
115 if (shift < 32 && shift) {
116 exponent -= shift;
117 significand <<= shift;
118 }
119
120#if 1
121 vs->exponent = exponent;
122 vs->significand = significand;
123 vfp_single_dump("pack: normalised", vs);
124#endif
125
126 /*
127 * Tiny number?
128 */
129 underflow = exponent < 0;
130 if (underflow) {
131 significand = vfp_shiftright32jamming(significand, -exponent);
132 exponent = 0;
133#if 1
134 vs->exponent = exponent;
135 vs->significand = significand;
136 vfp_single_dump("pack: tiny number", vs);
137#endif
138 if (!(significand & ((1 << (VFP_SINGLE_LOW_BITS + 1)) - 1)))
139 underflow = 0;
140
141 int type = vfp_single_type(vs);
142
143 if ((type & VFP_DENORMAL) && (fpscr & FPSCR_FLUSH_TO_ZERO)) {
144 // Flush denormal to positive 0
145 significand = 0;
146
147 vs->sign = 0;
148 vs->significand = significand;
149
150 underflow = 0;
151 exceptions |= FPSCR_UFC;
152 }
153 }
154
155 /*
156 * Select rounding increment.
157 */
158 incr = 0;
159 rmode = fpscr & FPSCR_RMODE_MASK;
160
161 if (rmode == FPSCR_ROUND_NEAREST) {
162 incr = 1 << VFP_SINGLE_LOW_BITS;
163 if ((significand & (1 << (VFP_SINGLE_LOW_BITS + 1))) == 0)
164 incr -= 1;
165 } else if (rmode == FPSCR_ROUND_TOZERO) {
166 incr = 0;
167 } else if ((rmode == FPSCR_ROUND_PLUSINF) ^ (vs->sign != 0))
168 incr = (1 << (VFP_SINGLE_LOW_BITS + 1)) - 1;
169
170 LOG_TRACE(Core_ARM, "rounding increment = 0x%08x", incr);
171
172 /*
173 * Is our rounding going to overflow?
174 */
175 if ((significand + incr) < significand) {
176 exponent += 1;
177 significand = (significand >> 1) | (significand & 1);
178 incr >>= 1;
179#if 1
180 vs->exponent = exponent;
181 vs->significand = significand;
182 vfp_single_dump("pack: overflow", vs);
183#endif
184 }
185
186 /*
187 * If any of the low bits (which will be shifted out of the
188 * number) are non-zero, the result is inexact.
189 */
190 if (significand & ((1 << (VFP_SINGLE_LOW_BITS + 1)) - 1))
191 exceptions |= FPSCR_IXC;
192
193 /*
194 * Do our rounding.
195 */
196 significand += incr;
197
198 /*
199 * Infinity?
200 */
201 if (exponent >= 254) {
202 exceptions |= FPSCR_OFC | FPSCR_IXC;
203 if (incr == 0) {
204 vs->exponent = 253;
205 vs->significand = 0x7fffffff;
206 } else {
207 vs->exponent = 255; /* infinity */
208 vs->significand = 0;
209 }
210 } else {
211 if (significand >> (VFP_SINGLE_LOW_BITS + 1) == 0)
212 exponent = 0;
213 if (exponent || significand > 0x80000000)
214 underflow = 0;
215 if (underflow)
216 exceptions |= FPSCR_UFC;
217 vs->exponent = exponent;
218 vs->significand = significand >> 1;
219 }
220
221pack:
222 vfp_single_dump("pack: final", vs);
223 {
224 s32 d = vfp_single_pack(vs);
225 LOG_TRACE(Core_ARM, "%s: d(s%d)=%08x exceptions=%08x", func, sd, d, exceptions);
226 vfp_put_float(state, d, sd);
227 }
228
229 return exceptions;
230}
231
232/*
233 * Propagate the NaN, setting exceptions if it is signalling.
234 * 'n' is always a NaN. 'm' may be a number, NaN or infinity.
235 */
236static u32 vfp_propagate_nan(struct vfp_single* vsd, struct vfp_single* vsn, struct vfp_single* vsm,
237 u32 fpscr) {
238 struct vfp_single* nan;
239 int tn, tm = 0;
240
241 tn = vfp_single_type(vsn);
242
243 if (vsm)
244 tm = vfp_single_type(vsm);
245
246 if (fpscr & FPSCR_DEFAULT_NAN)
247 /*
248 * Default NaN mode - always returns a quiet NaN
249 */
250 nan = &vfp_single_default_qnan;
251 else {
252 /*
253 * Contemporary mode - select the first signalling
254 * NAN, or if neither are signalling, the first
255 * quiet NAN.
256 */
257 if (tn == VFP_SNAN || (tm != VFP_SNAN && tn == VFP_QNAN))
258 nan = vsn;
259 else
260 nan = vsm;
261 /*
262 * Make the NaN quiet.
263 */
264 nan->significand |= VFP_SINGLE_SIGNIFICAND_QNAN;
265 }
266
267 *vsd = *nan;
268
269 /*
270 * If one was a signalling NAN, raise invalid operation.
271 */
272 return tn == VFP_SNAN || tm == VFP_SNAN ? FPSCR_IOC : VFP_NAN_FLAG;
273}
274
275/*
276 * Extended operations
277 */
278static u32 vfp_single_fabs(ARMul_State* state, int sd, int unused, s32 m, u32 fpscr) {
279 vfp_put_float(state, vfp_single_packed_abs(m), sd);
280 return 0;
281}
282
283static u32 vfp_single_fcpy(ARMul_State* state, int sd, int unused, s32 m, u32 fpscr) {
284 vfp_put_float(state, m, sd);
285 return 0;
286}
287
288static u32 vfp_single_fneg(ARMul_State* state, int sd, int unused, s32 m, u32 fpscr) {
289 vfp_put_float(state, vfp_single_packed_negate(m), sd);
290 return 0;
291}
292
293static const u16 sqrt_oddadjust[] = {
294 0x0004, 0x0022, 0x005d, 0x00b1, 0x011d, 0x019f, 0x0236, 0x02e0,
295 0x039c, 0x0468, 0x0545, 0x0631, 0x072b, 0x0832, 0x0946, 0x0a67,
296};
297
298static const u16 sqrt_evenadjust[] = {
299 0x0a2d, 0x08af, 0x075a, 0x0629, 0x051a, 0x0429, 0x0356, 0x029e,
300 0x0200, 0x0179, 0x0109, 0x00af, 0x0068, 0x0034, 0x0012, 0x0002,
301};
302
303u32 vfp_estimate_sqrt_significand(u32 exponent, u32 significand) {
304 int index;
305 u32 z, a;
306
307 if ((significand & 0xc0000000) != 0x40000000) {
308 LOG_TRACE(Core_ARM, "invalid significand");
309 }
310
311 a = significand << 1;
312 index = (a >> 27) & 15;
313 if (exponent & 1) {
314 z = 0x4000 + (a >> 17) - sqrt_oddadjust[index];
315 z = ((a / z) << 14) + (z << 15);
316 a >>= 1;
317 } else {
318 z = 0x8000 + (a >> 17) - sqrt_evenadjust[index];
319 z = a / z + z;
320 z = (z >= 0x20000) ? 0xffff8000 : (z << 15);
321 if (z <= a)
322 return (s32)a >> 1;
323 }
324 {
325 u64 v = (u64)a << 31;
326 do_div(v, z);
327 return (u32)(v + (z >> 1));
328 }
329}
330
331static u32 vfp_single_fsqrt(ARMul_State* state, int sd, int unused, s32 m, u32 fpscr) {
332 struct vfp_single vsm, vsd, *vsp;
333 int ret, tm;
334 u32 exceptions = 0;
335
336 exceptions |= vfp_single_unpack(&vsm, m, fpscr);
337 tm = vfp_single_type(&vsm);
338 if (tm & (VFP_NAN | VFP_INFINITY)) {
339 vsp = &vsd;
340
341 if (tm & VFP_NAN)
342 ret = vfp_propagate_nan(vsp, &vsm, nullptr, fpscr);
343 else if (vsm.sign == 0) {
344 sqrt_copy:
345 vsp = &vsm;
346 ret = 0;
347 } else {
348 sqrt_invalid:
349 vsp = &vfp_single_default_qnan;
350 ret = FPSCR_IOC;
351 }
352 vfp_put_float(state, vfp_single_pack(vsp), sd);
353 return ret;
354 }
355
356 /*
357 * sqrt(+/- 0) == +/- 0
358 */
359 if (tm & VFP_ZERO)
360 goto sqrt_copy;
361
362 /*
363 * Normalise a denormalised number
364 */
365 if (tm & VFP_DENORMAL)
366 vfp_single_normalise_denormal(&vsm);
367
368 /*
369 * sqrt(<0) = invalid
370 */
371 if (vsm.sign)
372 goto sqrt_invalid;
373
374 vfp_single_dump("sqrt", &vsm);
375
376 /*
377 * Estimate the square root.
378 */
379 vsd.sign = 0;
380 vsd.exponent = ((vsm.exponent - 127) >> 1) + 127;
381 vsd.significand = vfp_estimate_sqrt_significand(vsm.exponent, vsm.significand) + 2;
382
383 vfp_single_dump("sqrt estimate", &vsd);
384
385 /*
386 * And now adjust.
387 */
388 if ((vsd.significand & VFP_SINGLE_LOW_BITS_MASK) <= 5) {
389 if (vsd.significand < 2) {
390 vsd.significand = 0xffffffff;
391 } else {
392 u64 term;
393 s64 rem;
394 vsm.significand <<= static_cast<u32>((vsm.exponent & 1) == 0);
395 term = (u64)vsd.significand * vsd.significand;
396 rem = ((u64)vsm.significand << 32) - term;
397
398 LOG_TRACE(Core_ARM, "term=%016" PRIx64 "rem=%016" PRIx64, term, rem);
399
400 while (rem < 0) {
401 vsd.significand -= 1;
402 rem += ((u64)vsd.significand << 1) | 1;
403 }
404 vsd.significand |= rem != 0;
405 }
406 }
407 vsd.significand = vfp_shiftright32jamming(vsd.significand, 1);
408
409 exceptions |= vfp_single_normaliseround(state, sd, &vsd, fpscr, 0, "fsqrt");
410
411 return exceptions;
412}
413
414/*
415 * Equal := ZC
416 * Less than := N
417 * Greater than := C
418 * Unordered := CV
419 */
420static u32 vfp_compare(ARMul_State* state, int sd, int signal_on_qnan, s32 m, u32 fpscr) {
421 s32 d;
422 u32 ret = 0;
423
424 d = vfp_get_float(state, sd);
425 if (vfp_single_packed_exponent(m) == 255 && vfp_single_packed_mantissa(m)) {
426 ret |= FPSCR_CFLAG | FPSCR_VFLAG;
427 if (signal_on_qnan ||
428 !(vfp_single_packed_mantissa(m) & (1 << (VFP_SINGLE_MANTISSA_BITS - 1))))
429 /*
430 * Signalling NaN, or signalling on quiet NaN
431 */
432 ret |= FPSCR_IOC;
433 }
434
435 if (vfp_single_packed_exponent(d) == 255 && vfp_single_packed_mantissa(d)) {
436 ret |= FPSCR_CFLAG | FPSCR_VFLAG;
437 if (signal_on_qnan ||
438 !(vfp_single_packed_mantissa(d) & (1 << (VFP_SINGLE_MANTISSA_BITS - 1))))
439 /*
440 * Signalling NaN, or signalling on quiet NaN
441 */
442 ret |= FPSCR_IOC;
443 }
444
445 if (ret == 0) {
446 if (d == m || vfp_single_packed_abs(d | m) == 0) {
447 /*
448 * equal
449 */
450 ret |= FPSCR_ZFLAG | FPSCR_CFLAG;
451 } else if (vfp_single_packed_sign(d ^ m)) {
452 /*
453 * different signs
454 */
455 if (vfp_single_packed_sign(d))
456 /*
457 * d is negative, so d < m
458 */
459 ret |= FPSCR_NFLAG;
460 else
461 /*
462 * d is positive, so d > m
463 */
464 ret |= FPSCR_CFLAG;
465 } else if ((vfp_single_packed_sign(d) != 0) ^ (d < m)) {
466 /*
467 * d < m
468 */
469 ret |= FPSCR_NFLAG;
470 } else if ((vfp_single_packed_sign(d) != 0) ^ (d > m)) {
471 /*
472 * d > m
473 */
474 ret |= FPSCR_CFLAG;
475 }
476 }
477 return ret;
478}
479
480static u32 vfp_single_fcmp(ARMul_State* state, int sd, int unused, s32 m, u32 fpscr) {
481 return vfp_compare(state, sd, 0, m, fpscr);
482}
483
484static u32 vfp_single_fcmpe(ARMul_State* state, int sd, int unused, s32 m, u32 fpscr) {
485 return vfp_compare(state, sd, 1, m, fpscr);
486}
487
488static u32 vfp_single_fcmpz(ARMul_State* state, int sd, int unused, s32 m, u32 fpscr) {
489 return vfp_compare(state, sd, 0, 0, fpscr);
490}
491
492static u32 vfp_single_fcmpez(ARMul_State* state, int sd, int unused, s32 m, u32 fpscr) {
493 return vfp_compare(state, sd, 1, 0, fpscr);
494}
495
496static u32 vfp_single_fcvtd(ARMul_State* state, int dd, int unused, s32 m, u32 fpscr) {
497 struct vfp_single vsm;
498 struct vfp_double vdd;
499 int tm;
500 u32 exceptions = 0;
501
502 exceptions |= vfp_single_unpack(&vsm, m, fpscr);
503
504 tm = vfp_single_type(&vsm);
505
506 /*
507 * If we have a signalling NaN, signal invalid operation.
508 */
509 if (tm == VFP_SNAN)
510 exceptions |= FPSCR_IOC;
511
512 if (tm & VFP_DENORMAL)
513 vfp_single_normalise_denormal(&vsm);
514
515 vdd.sign = vsm.sign;
516 vdd.significand = (u64)vsm.significand << 32;
517
518 /*
519 * If we have an infinity or NaN, the exponent must be 2047.
520 */
521 if (tm & (VFP_INFINITY | VFP_NAN)) {
522 vdd.exponent = 2047;
523 if (tm == VFP_QNAN)
524 vdd.significand |= VFP_DOUBLE_SIGNIFICAND_QNAN;
525 goto pack_nan;
526 } else if (tm & VFP_ZERO)
527 vdd.exponent = 0;
528 else
529 vdd.exponent = vsm.exponent + (1023 - 127);
530
531 return vfp_double_normaliseround(state, dd, &vdd, fpscr, exceptions, "fcvtd");
532
533pack_nan:
534 vfp_put_double(state, vfp_double_pack(&vdd), dd);
535 return exceptions;
536}
537
538static u32 vfp_single_fuito(ARMul_State* state, int sd, int unused, s32 m, u32 fpscr) {
539 struct vfp_single vs;
540
541 vs.sign = 0;
542 vs.exponent = 127 + 31 - 1;
543 vs.significand = (u32)m;
544
545 return vfp_single_normaliseround(state, sd, &vs, fpscr, 0, "fuito");
546}
547
548static u32 vfp_single_fsito(ARMul_State* state, int sd, int unused, s32 m, u32 fpscr) {
549 struct vfp_single vs;
550
551 vs.sign = (m & 0x80000000) >> 16;
552 vs.exponent = 127 + 31 - 1;
553 vs.significand = vs.sign ? -m : m;
554
555 return vfp_single_normaliseround(state, sd, &vs, fpscr, 0, "fsito");
556}
557
558static u32 vfp_single_ftoui(ARMul_State* state, int sd, int unused, s32 m, u32 fpscr) {
559 struct vfp_single vsm;
560 u32 d, exceptions = 0;
561 int rmode = fpscr & FPSCR_RMODE_MASK;
562 int tm;
563
564 exceptions |= vfp_single_unpack(&vsm, m, fpscr);
565 vfp_single_dump("VSM", &vsm);
566
567 /*
568 * Do we have a denormalised number?
569 */
570 tm = vfp_single_type(&vsm);
571 if (tm & VFP_DENORMAL)
572 exceptions |= FPSCR_IDC;
573
574 if (tm & VFP_NAN)
575 vsm.sign = 1;
576
577 if (vsm.exponent >= 127 + 32) {
578 d = vsm.sign ? 0 : 0xffffffff;
579 exceptions |= FPSCR_IOC;
580 } else if (vsm.exponent >= 127) {
581 int shift = 127 + 31 - vsm.exponent;
582 u32 rem, incr = 0;
583
584 /*
585 * 2^0 <= m < 2^32-2^8
586 */
587 d = (vsm.significand << 1) >> shift;
588 if (shift > 0) {
589 rem = (vsm.significand << 1) << (32 - shift);
590 } else {
591 rem = 0;
592 }
593
594 if (rmode == FPSCR_ROUND_NEAREST) {
595 incr = 0x80000000;
596 if ((d & 1) == 0)
597 incr -= 1;
598 } else if (rmode == FPSCR_ROUND_TOZERO) {
599 incr = 0;
600 } else if ((rmode == FPSCR_ROUND_PLUSINF) ^ (vsm.sign != 0)) {
601 incr = ~0;
602 }
603
604 if ((rem + incr) < rem) {
605 if (d < 0xffffffff)
606 d += 1;
607 else
608 exceptions |= FPSCR_IOC;
609 }
610
611 if (d && vsm.sign) {
612 d = 0;
613 exceptions |= FPSCR_IOC;
614 } else if (rem)
615 exceptions |= FPSCR_IXC;
616 } else {
617 d = 0;
618 if (vsm.exponent | vsm.significand) {
619 if (rmode == FPSCR_ROUND_NEAREST) {
620 if (vsm.exponent >= 126) {
621 d = vsm.sign ? 0 : 1;
622 exceptions |= vsm.sign ? FPSCR_IOC : FPSCR_IXC;
623 } else {
624 exceptions |= FPSCR_IXC;
625 }
626 } else if (rmode == FPSCR_ROUND_PLUSINF && vsm.sign == 0) {
627 d = 1;
628 exceptions |= FPSCR_IXC;
629 } else if (rmode == FPSCR_ROUND_MINUSINF) {
630 exceptions |= vsm.sign ? FPSCR_IOC : FPSCR_IXC;
631 } else {
632 exceptions |= FPSCR_IXC;
633 }
634 }
635 }
636
637 LOG_TRACE(Core_ARM, "ftoui: d(s%d)=%08x exceptions=%08x", sd, d, exceptions);
638
639 vfp_put_float(state, d, sd);
640
641 return exceptions;
642}
643
644static u32 vfp_single_ftouiz(ARMul_State* state, int sd, int unused, s32 m, u32 fpscr) {
645 return vfp_single_ftoui(state, sd, unused, m, (fpscr & ~FPSCR_RMODE_MASK) | FPSCR_ROUND_TOZERO);
646}
647
648static u32 vfp_single_ftosi(ARMul_State* state, int sd, int unused, s32 m, u32 fpscr) {
649 struct vfp_single vsm;
650 u32 d, exceptions = 0;
651 int rmode = fpscr & FPSCR_RMODE_MASK;
652 int tm;
653
654 exceptions |= vfp_single_unpack(&vsm, m, fpscr);
655 vfp_single_dump("VSM", &vsm);
656
657 /*
658 * Do we have a denormalised number?
659 */
660 tm = vfp_single_type(&vsm);
661 if (vfp_single_type(&vsm) & VFP_DENORMAL)
662 exceptions |= FPSCR_IDC;
663
664 if (tm & VFP_NAN) {
665 d = 0;
666 exceptions |= FPSCR_IOC;
667 } else if (vsm.exponent >= 127 + 31) {
668 /*
669 * m >= 2^31-2^7: invalid
670 */
671 d = 0x7fffffff;
672 if (vsm.sign)
673 d = ~d;
674 exceptions |= FPSCR_IOC;
675 } else if (vsm.exponent >= 127) {
676 int shift = 127 + 31 - vsm.exponent;
677 u32 rem, incr = 0;
678
679 /* 2^0 <= m <= 2^31-2^7 */
680 d = (vsm.significand << 1) >> shift;
681 rem = (vsm.significand << 1) << (32 - shift);
682
683 if (rmode == FPSCR_ROUND_NEAREST) {
684 incr = 0x80000000;
685 if ((d & 1) == 0)
686 incr -= 1;
687 } else if (rmode == FPSCR_ROUND_TOZERO) {
688 incr = 0;
689 } else if ((rmode == FPSCR_ROUND_PLUSINF) ^ (vsm.sign != 0)) {
690 incr = ~0;
691 }
692
693 if ((rem + incr) < rem && d < 0xffffffff)
694 d += 1;
695 if (d > (0x7fffffffu + (vsm.sign != 0))) {
696 d = (0x7fffffffu + (vsm.sign != 0));
697 exceptions |= FPSCR_IOC;
698 } else if (rem)
699 exceptions |= FPSCR_IXC;
700
701 if (vsm.sign)
702 d = (~d + 1);
703 } else {
704 d = 0;
705 if (vsm.exponent | vsm.significand) {
706 exceptions |= FPSCR_IXC;
707 if (rmode == FPSCR_ROUND_NEAREST) {
708 if (vsm.exponent >= 126)
709 d = vsm.sign ? 0xffffffff : 1;
710 } else if (rmode == FPSCR_ROUND_PLUSINF && vsm.sign == 0) {
711 d = 1;
712 } else if (rmode == FPSCR_ROUND_MINUSINF && vsm.sign) {
713 d = 0xffffffff;
714 }
715 }
716 }
717
718 LOG_TRACE(Core_ARM, "ftosi: d(s%d)=%08x exceptions=%08x", sd, d, exceptions);
719
720 vfp_put_float(state, (s32)d, sd);
721
722 return exceptions;
723}
724
725static u32 vfp_single_ftosiz(ARMul_State* state, int sd, int unused, s32 m, u32 fpscr) {
726 return vfp_single_ftosi(state, sd, unused, m, (fpscr & ~FPSCR_RMODE_MASK) | FPSCR_ROUND_TOZERO);
727}
728
729static struct op fops_ext[] = {
730 {vfp_single_fcpy, 0}, // 0x00000000 - FEXT_FCPY
731 {vfp_single_fabs, 0}, // 0x00000001 - FEXT_FABS
732 {vfp_single_fneg, 0}, // 0x00000002 - FEXT_FNEG
733 {vfp_single_fsqrt, 0}, // 0x00000003 - FEXT_FSQRT
734 {nullptr, 0},
735 {nullptr, 0},
736 {nullptr, 0},
737 {nullptr, 0},
738 {vfp_single_fcmp, OP_SCALAR}, // 0x00000008 - FEXT_FCMP
739 {vfp_single_fcmpe, OP_SCALAR}, // 0x00000009 - FEXT_FCMPE
740 {vfp_single_fcmpz, OP_SCALAR}, // 0x0000000A - FEXT_FCMPZ
741 {vfp_single_fcmpez, OP_SCALAR}, // 0x0000000B - FEXT_FCMPEZ
742 {nullptr, 0},
743 {nullptr, 0},
744 {nullptr, 0},
745 {vfp_single_fcvtd, OP_SCALAR | OP_DD}, // 0x0000000F - FEXT_FCVT
746 {vfp_single_fuito, OP_SCALAR}, // 0x00000010 - FEXT_FUITO
747 {vfp_single_fsito, OP_SCALAR}, // 0x00000011 - FEXT_FSITO
748 {nullptr, 0},
749 {nullptr, 0},
750 {nullptr, 0},
751 {nullptr, 0},
752 {nullptr, 0},
753 {nullptr, 0},
754 {vfp_single_ftoui, OP_SCALAR}, // 0x00000018 - FEXT_FTOUI
755 {vfp_single_ftouiz, OP_SCALAR}, // 0x00000019 - FEXT_FTOUIZ
756 {vfp_single_ftosi, OP_SCALAR}, // 0x0000001A - FEXT_FTOSI
757 {vfp_single_ftosiz, OP_SCALAR}, // 0x0000001B - FEXT_FTOSIZ
758};
759
760static u32 vfp_single_fadd_nonnumber(struct vfp_single* vsd, struct vfp_single* vsn,
761 struct vfp_single* vsm, u32 fpscr) {
762 struct vfp_single* vsp;
763 u32 exceptions = 0;
764 int tn, tm;
765
766 tn = vfp_single_type(vsn);
767 tm = vfp_single_type(vsm);
768
769 if (tn & tm & VFP_INFINITY) {
770 /*
771 * Two infinities. Are they different signs?
772 */
773 if (vsn->sign ^ vsm->sign) {
774 /*
775 * different signs -> invalid
776 */
777 exceptions |= FPSCR_IOC;
778 vsp = &vfp_single_default_qnan;
779 } else {
780 /*
781 * same signs -> valid
782 */
783 vsp = vsn;
784 }
785 } else if (tn & VFP_INFINITY && tm & VFP_NUMBER) {
786 /*
787 * One infinity and one number -> infinity
788 */
789 vsp = vsn;
790 } else {
791 /*
792 * 'n' is a NaN of some type
793 */
794 return vfp_propagate_nan(vsd, vsn, vsm, fpscr);
795 }
796 *vsd = *vsp;
797 return exceptions;
798}
799
800static u32 vfp_single_add(struct vfp_single* vsd, struct vfp_single* vsn, struct vfp_single* vsm,
801 u32 fpscr) {
802 u32 exp_diff, m_sig;
803
804 if (vsn->significand & 0x80000000 || vsm->significand & 0x80000000) {
805 LOG_WARNING(Core_ARM, "bad FP values");
806 vfp_single_dump("VSN", vsn);
807 vfp_single_dump("VSM", vsm);
808 }
809
810 /*
811 * Ensure that 'n' is the largest magnitude number. Note that
812 * if 'n' and 'm' have equal exponents, we do not swap them.
813 * This ensures that NaN propagation works correctly.
814 */
815 if (vsn->exponent < vsm->exponent) {
816 std::swap(vsm, vsn);
817 }
818
819 /*
820 * Is 'n' an infinity or a NaN? Note that 'm' may be a number,
821 * infinity or a NaN here.
822 */
823 if (vsn->exponent == 255)
824 return vfp_single_fadd_nonnumber(vsd, vsn, vsm, fpscr);
825
826 /*
827 * We have two proper numbers, where 'vsn' is the larger magnitude.
828 *
829 * Copy 'n' to 'd' before doing the arithmetic.
830 */
831 *vsd = *vsn;
832
833 /*
834 * Align both numbers.
835 */
836 exp_diff = vsn->exponent - vsm->exponent;
837 m_sig = vfp_shiftright32jamming(vsm->significand, exp_diff);
838
839 /*
840 * If the signs are different, we are really subtracting.
841 */
842 if (vsn->sign ^ vsm->sign) {
843 m_sig = vsn->significand - m_sig;
844 if ((s32)m_sig < 0) {
845 vsd->sign = vfp_sign_negate(vsd->sign);
846 m_sig = (~m_sig + 1);
847 } else if (m_sig == 0) {
848 vsd->sign = (fpscr & FPSCR_RMODE_MASK) == FPSCR_ROUND_MINUSINF ? 0x8000 : 0;
849 }
850 } else {
851 m_sig = vsn->significand + m_sig;
852 }
853 vsd->significand = m_sig;
854
855 return 0;
856}
857
858static u32 vfp_single_multiply(struct vfp_single* vsd, struct vfp_single* vsn,
859 struct vfp_single* vsm, u32 fpscr) {
860 vfp_single_dump("VSN", vsn);
861 vfp_single_dump("VSM", vsm);
862
863 /*
864 * Ensure that 'n' is the largest magnitude number. Note that
865 * if 'n' and 'm' have equal exponents, we do not swap them.
866 * This ensures that NaN propagation works correctly.
867 */
868 if (vsn->exponent < vsm->exponent) {
869 std::swap(vsm, vsn);
870 LOG_TRACE(Core_ARM, "swapping M <-> N");
871 }
872
873 vsd->sign = vsn->sign ^ vsm->sign;
874
875 /*
876 * If 'n' is an infinity or NaN, handle it. 'm' may be anything.
877 */
878 if (vsn->exponent == 255) {
879 if (vsn->significand || (vsm->exponent == 255 && vsm->significand))
880 return vfp_propagate_nan(vsd, vsn, vsm, fpscr);
881 if ((vsm->exponent | vsm->significand) == 0) {
882 *vsd = vfp_single_default_qnan;
883 return FPSCR_IOC;
884 }
885 vsd->exponent = vsn->exponent;
886 vsd->significand = 0;
887 return 0;
888 }
889
890 /*
891 * If 'm' is zero, the result is always zero. In this case,
892 * 'n' may be zero or a number, but it doesn't matter which.
893 */
894 if ((vsm->exponent | vsm->significand) == 0) {
895 vsd->exponent = 0;
896 vsd->significand = 0;
897 return 0;
898 }
899
900 /*
901 * We add 2 to the destination exponent for the same reason as
902 * the addition case - though this time we have +1 from each
903 * input operand.
904 */
905 vsd->exponent = vsn->exponent + vsm->exponent - 127 + 2;
906 vsd->significand = vfp_hi64to32jamming((u64)vsn->significand * vsm->significand);
907
908 vfp_single_dump("VSD", vsd);
909 return 0;
910}
911
912#define NEG_MULTIPLY (1 << 0)
913#define NEG_SUBTRACT (1 << 1)
914
915static u32 vfp_single_multiply_accumulate(ARMul_State* state, int sd, int sn, s32 m, u32 fpscr,
916 u32 negate, const char* func) {
917 vfp_single vsd, vsp, vsn, vsm;
918 u32 exceptions = 0;
919 s32 v;
920
921 v = vfp_get_float(state, sn);
922 LOG_TRACE(Core_ARM, "s%u = %08x", sn, v);
923 exceptions |= vfp_single_unpack(&vsn, v, fpscr);
924 if (vsn.exponent == 0 && vsn.significand)
925 vfp_single_normalise_denormal(&vsn);
926
927 exceptions |= vfp_single_unpack(&vsm, m, fpscr);
928 if (vsm.exponent == 0 && vsm.significand)
929 vfp_single_normalise_denormal(&vsm);
930
931 exceptions |= vfp_single_multiply(&vsp, &vsn, &vsm, fpscr);
932
933 if (negate & NEG_MULTIPLY)
934 vsp.sign = vfp_sign_negate(vsp.sign);
935
936 v = vfp_get_float(state, sd);
937 LOG_TRACE(Core_ARM, "s%u = %08x", sd, v);
938 exceptions |= vfp_single_unpack(&vsn, v, fpscr);
939 if (vsn.exponent == 0 && vsn.significand != 0)
940 vfp_single_normalise_denormal(&vsn);
941
942 if (negate & NEG_SUBTRACT)
943 vsn.sign = vfp_sign_negate(vsn.sign);
944
945 exceptions |= vfp_single_add(&vsd, &vsn, &vsp, fpscr);
946
947 return vfp_single_normaliseround(state, sd, &vsd, fpscr, exceptions, func);
948}
949
950/*
951 * Standard operations
952 */
953
954/*
955 * sd = sd + (sn * sm)
956 */
957static u32 vfp_single_fmac(ARMul_State* state, int sd, int sn, s32 m, u32 fpscr) {
958 LOG_TRACE(Core_ARM, "s%u = %08x", sn, sd);
959 return vfp_single_multiply_accumulate(state, sd, sn, m, fpscr, 0, "fmac");
960}
961
962/*
963 * sd = sd - (sn * sm)
964 */
965static u32 vfp_single_fnmac(ARMul_State* state, int sd, int sn, s32 m, u32 fpscr) {
966 // TODO: this one has its arguments inverted, investigate.
967 LOG_TRACE(Core_ARM, "s%u = %08x", sd, sn);
968 return vfp_single_multiply_accumulate(state, sd, sn, m, fpscr, NEG_MULTIPLY, "fnmac");
969}
970
971/*
972 * sd = -sd + (sn * sm)
973 */
974static u32 vfp_single_fmsc(ARMul_State* state, int sd, int sn, s32 m, u32 fpscr) {
975 LOG_TRACE(Core_ARM, "s%u = %08x", sn, sd);
976 return vfp_single_multiply_accumulate(state, sd, sn, m, fpscr, NEG_SUBTRACT, "fmsc");
977}
978
979/*
980 * sd = -sd - (sn * sm)
981 */
982static u32 vfp_single_fnmsc(ARMul_State* state, int sd, int sn, s32 m, u32 fpscr) {
983 LOG_TRACE(Core_ARM, "s%u = %08x", sn, sd);
984 return vfp_single_multiply_accumulate(state, sd, sn, m, fpscr, NEG_SUBTRACT | NEG_MULTIPLY,
985 "fnmsc");
986}
987
988/*
989 * sd = sn * sm
990 */
991static u32 vfp_single_fmul(ARMul_State* state, int sd, int sn, s32 m, u32 fpscr) {
992 struct vfp_single vsd, vsn, vsm;
993 u32 exceptions = 0;
994 s32 n = vfp_get_float(state, sn);
995
996 LOG_TRACE(Core_ARM, "s%u = %08x", sn, n);
997
998 exceptions |= vfp_single_unpack(&vsn, n, fpscr);
999 if (vsn.exponent == 0 && vsn.significand)
1000 vfp_single_normalise_denormal(&vsn);
1001
1002 exceptions |= vfp_single_unpack(&vsm, m, fpscr);
1003 if (vsm.exponent == 0 && vsm.significand)
1004 vfp_single_normalise_denormal(&vsm);
1005
1006 exceptions |= vfp_single_multiply(&vsd, &vsn, &vsm, fpscr);
1007 return vfp_single_normaliseround(state, sd, &vsd, fpscr, exceptions, "fmul");
1008}
1009
1010/*
1011 * sd = -(sn * sm)
1012 */
1013static u32 vfp_single_fnmul(ARMul_State* state, int sd, int sn, s32 m, u32 fpscr) {
1014 struct vfp_single vsd, vsn, vsm;
1015 u32 exceptions = 0;
1016 s32 n = vfp_get_float(state, sn);
1017
1018 LOG_TRACE(Core_ARM, "s%u = %08x", sn, n);
1019
1020 exceptions |= vfp_single_unpack(&vsn, n, fpscr);
1021 if (vsn.exponent == 0 && vsn.significand)
1022 vfp_single_normalise_denormal(&vsn);
1023
1024 exceptions |= vfp_single_unpack(&vsm, m, fpscr);
1025 if (vsm.exponent == 0 && vsm.significand)
1026 vfp_single_normalise_denormal(&vsm);
1027
1028 exceptions |= vfp_single_multiply(&vsd, &vsn, &vsm, fpscr);
1029 vsd.sign = vfp_sign_negate(vsd.sign);
1030 return vfp_single_normaliseround(state, sd, &vsd, fpscr, exceptions, "fnmul");
1031}
1032
1033/*
1034 * sd = sn + sm
1035 */
1036static u32 vfp_single_fadd(ARMul_State* state, int sd, int sn, s32 m, u32 fpscr) {
1037 struct vfp_single vsd, vsn, vsm;
1038 u32 exceptions = 0;
1039 s32 n = vfp_get_float(state, sn);
1040
1041 LOG_TRACE(Core_ARM, "s%u = %08x", sn, n);
1042
1043 /*
1044 * Unpack and normalise denormals.
1045 */
1046 exceptions |= vfp_single_unpack(&vsn, n, fpscr);
1047 if (vsn.exponent == 0 && vsn.significand)
1048 vfp_single_normalise_denormal(&vsn);
1049
1050 exceptions |= vfp_single_unpack(&vsm, m, fpscr);
1051 if (vsm.exponent == 0 && vsm.significand)
1052 vfp_single_normalise_denormal(&vsm);
1053
1054 exceptions |= vfp_single_add(&vsd, &vsn, &vsm, fpscr);
1055
1056 return vfp_single_normaliseround(state, sd, &vsd, fpscr, exceptions, "fadd");
1057}
1058
1059/*
1060 * sd = sn - sm
1061 */
1062static u32 vfp_single_fsub(ARMul_State* state, int sd, int sn, s32 m, u32 fpscr) {
1063 LOG_TRACE(Core_ARM, "s%u = %08x", sn, sd);
1064 /*
1065 * Subtraction is addition with one sign inverted. Unpack the second operand to perform FTZ if
1066 * necessary, we can't let fadd do this because a denormal in m might get flushed to +0 in FTZ
1067 * mode, and the resulting sign of 0 OP +0 differs between fadd and fsub. We do not need to do
1068 * this for n because +0 OP 0 is always +0 for both fadd and fsub.
1069 */
1070 struct vfp_single vsm;
1071 u32 exceptions = vfp_single_unpack(&vsm, m, fpscr);
1072 if (exceptions & FPSCR_IDC) {
1073 // The value was flushed to zero, re-pack it.
1074 m = vfp_single_pack(&vsm);
1075 }
1076
1077 if (m != 0x7FC00000) // Only negate if m isn't NaN.
1078 m = vfp_single_packed_negate(m);
1079
1080 return vfp_single_fadd(state, sd, sn, m, fpscr) | exceptions;
1081}
1082
1083/*
1084 * sd = sn / sm
1085 */
1086static u32 vfp_single_fdiv(ARMul_State* state, int sd, int sn, s32 m, u32 fpscr) {
1087 struct vfp_single vsd, vsn, vsm;
1088 u32 exceptions = 0;
1089 s32 n = vfp_get_float(state, sn);
1090 int tm, tn;
1091
1092 LOG_TRACE(Core_ARM, "s%u = %08x", sn, n);
1093
1094 exceptions |= vfp_single_unpack(&vsn, n, fpscr);
1095 exceptions |= vfp_single_unpack(&vsm, m, fpscr);
1096
1097 vsd.sign = vsn.sign ^ vsm.sign;
1098
1099 tn = vfp_single_type(&vsn);
1100 tm = vfp_single_type(&vsm);
1101
1102 /*
1103 * Is n a NAN?
1104 */
1105 if (tn & VFP_NAN)
1106 goto vsn_nan;
1107
1108 /*
1109 * Is m a NAN?
1110 */
1111 if (tm & VFP_NAN)
1112 goto vsm_nan;
1113
1114 /*
1115 * If n and m are infinity, the result is invalid
1116 * If n and m are zero, the result is invalid
1117 */
1118 if (tm & tn & (VFP_INFINITY | VFP_ZERO))
1119 goto invalid;
1120
1121 /*
1122 * If n is infinity, the result is infinity
1123 */
1124 if (tn & VFP_INFINITY)
1125 goto infinity;
1126
1127 /*
1128 * If m is zero, raise div0 exception
1129 */
1130 if (tm & VFP_ZERO)
1131 goto divzero;
1132
1133 /*
1134 * If m is infinity, or n is zero, the result is zero
1135 */
1136 if (tm & VFP_INFINITY || tn & VFP_ZERO)
1137 goto zero;
1138
1139 if (tn & VFP_DENORMAL)
1140 vfp_single_normalise_denormal(&vsn);
1141 if (tm & VFP_DENORMAL)
1142 vfp_single_normalise_denormal(&vsm);
1143
1144 /*
1145 * Ok, we have two numbers, we can perform division.
1146 */
1147 vsd.exponent = vsn.exponent - vsm.exponent + 127 - 1;
1148 vsm.significand <<= 1;
1149 if (vsm.significand <= (2 * vsn.significand)) {
1150 vsn.significand >>= 1;
1151 vsd.exponent++;
1152 }
1153 {
1154 u64 significand = (u64)vsn.significand << 32;
1155 do_div(significand, vsm.significand);
1156 vsd.significand = (u32)significand;
1157 }
1158 if ((vsd.significand & 0x3f) == 0)
1159 vsd.significand |= ((u64)vsm.significand * vsd.significand != (u64)vsn.significand << 32);
1160
1161 return vfp_single_normaliseround(state, sd, &vsd, fpscr, 0, "fdiv");
1162
1163vsn_nan:
1164 exceptions |= vfp_propagate_nan(&vsd, &vsn, &vsm, fpscr);
1165pack:
1166 vfp_put_float(state, vfp_single_pack(&vsd), sd);
1167 return exceptions;
1168
1169vsm_nan:
1170 exceptions |= vfp_propagate_nan(&vsd, &vsm, &vsn, fpscr);
1171 goto pack;
1172
1173zero:
1174 vsd.exponent = 0;
1175 vsd.significand = 0;
1176 goto pack;
1177
1178divzero:
1179 exceptions |= FPSCR_DZC;
1180infinity:
1181 vsd.exponent = 255;
1182 vsd.significand = 0;
1183 goto pack;
1184
1185invalid:
1186 vfp_put_float(state, vfp_single_pack(&vfp_single_default_qnan), sd);
1187 return FPSCR_IOC;
1188}
1189
1190static struct op fops[] = {
1191 {vfp_single_fmac, 0}, {vfp_single_fmsc, 0}, {vfp_single_fmul, 0},
1192 {vfp_single_fadd, 0}, {vfp_single_fnmac, 0}, {vfp_single_fnmsc, 0},
1193 {vfp_single_fnmul, 0}, {vfp_single_fsub, 0}, {vfp_single_fdiv, 0},
1194};
1195
1196#define FREG_BANK(x) ((x)&0x18)
1197#define FREG_IDX(x) ((x)&7)
1198
1199u32 vfp_single_cpdo(ARMul_State* state, u32 inst, u32 fpscr) {
1200 u32 op = inst & FOP_MASK;
1201 u32 exceptions = 0;
1202 unsigned int dest;
1203 unsigned int sn = vfp_get_sn(inst);
1204 unsigned int sm = vfp_get_sm(inst);
1205 unsigned int vecitr, veclen, vecstride;
1206 struct op* fop;
1207
1208 vecstride = 1 + ((fpscr & FPSCR_STRIDE_MASK) == FPSCR_STRIDE_MASK);
1209
1210 fop = (op == FOP_EXT) ? &fops_ext[FEXT_TO_IDX(inst)] : &fops[FOP_TO_IDX(op)];
1211
1212 /*
1213 * fcvtsd takes a dN register number as destination, not sN.
1214 * Technically, if bit 0 of dd is set, this is an invalid
1215 * instruction. However, we ignore this for efficiency.
1216 * It also only operates on scalars.
1217 */
1218 if (fop->flags & OP_DD)
1219 dest = vfp_get_dd(inst);
1220 else
1221 dest = vfp_get_sd(inst);
1222
1223 /*
1224 * If destination bank is zero, vector length is always '1'.
1225 * ARM DDI0100F C5.1.3, C5.3.2.
1226 */
1227 if ((fop->flags & OP_SCALAR) || FREG_BANK(dest) == 0)
1228 veclen = 0;
1229 else
1230 veclen = fpscr & FPSCR_LENGTH_MASK;
1231
1232 LOG_TRACE(Core_ARM, "vecstride=%u veclen=%u", vecstride, (veclen >> FPSCR_LENGTH_BIT) + 1);
1233
1234 if (!fop->fn) {
1235 LOG_CRITICAL(Core_ARM, "could not find single op %d, inst=0x%x@0x%x", FEXT_TO_IDX(inst),
1236 inst, state->Reg[15]);
1237 Crash();
1238 goto invalid;
1239 }
1240
1241 for (vecitr = 0; vecitr <= veclen; vecitr += 1 << FPSCR_LENGTH_BIT) {
1242 s32 m = vfp_get_float(state, sm);
1243 u32 except;
1244 char type;
1245
1246 type = (fop->flags & OP_DD) ? 'd' : 's';
1247 if (op == FOP_EXT)
1248 LOG_TRACE(Core_ARM, "itr%d (%c%u) = op[%u] (s%u=%08x)", vecitr >> FPSCR_LENGTH_BIT,
1249 type, dest, sn, sm, m);
1250 else
1251 LOG_TRACE(Core_ARM, "itr%d (%c%u) = (s%u) op[%u] (s%u=%08x)",
1252 vecitr >> FPSCR_LENGTH_BIT, type, dest, sn, FOP_TO_IDX(op), sm, m);
1253
1254 except = fop->fn(state, dest, sn, m, fpscr);
1255 LOG_TRACE(Core_ARM, "itr%d: exceptions=%08x", vecitr >> FPSCR_LENGTH_BIT, except);
1256
1257 exceptions |= except & ~VFP_NAN_FLAG;
1258
1259 /*
1260 * CHECK: It appears to be undefined whether we stop when
1261 * we encounter an exception. We continue.
1262 */
1263 dest = FREG_BANK(dest) + ((FREG_IDX(dest) + vecstride) & 7);
1264 sn = FREG_BANK(sn) + ((FREG_IDX(sn) + vecstride) & 7);
1265 if (FREG_BANK(sm) != 0)
1266 sm = FREG_BANK(sm) + ((FREG_IDX(sm) + vecstride) & 7);
1267 }
1268 return exceptions;
1269
1270invalid:
1271 return (u32)-1;
1272}
diff --git a/src/core/core.cpp b/src/core/core.cpp
index 6358e827b..886cb0972 100644
--- a/src/core/core.cpp
+++ b/src/core/core.cpp
@@ -8,7 +8,6 @@
8#include "common/logging/log.h" 8#include "common/logging/log.h"
9#include "core/arm/arm_interface.h" 9#include "core/arm/arm_interface.h"
10#include "core/arm/dynarmic/arm_dynarmic.h" 10#include "core/arm/dynarmic/arm_dynarmic.h"
11#include "core/arm/dyncom/arm_dyncom.h"
12#include "core/arm/unicorn/arm_unicorn.h" 11#include "core/arm/unicorn/arm_unicorn.h"
13#include "core/core.h" 12#include "core/core.h"
14#include "core/core_timing.h" 13#include "core/core_timing.h"
@@ -142,9 +141,9 @@ System::ResultStatus System::Init(EmuWindow* emu_window, u32 system_mode) {
142 LOG_DEBUG(HW_Memory, "initialized OK"); 141 LOG_DEBUG(HW_Memory, "initialized OK");
143 142
144 if (Settings::values.use_cpu_jit) { 143 if (Settings::values.use_cpu_jit) {
145 cpu_core = std::make_unique<ARM_Dynarmic>(USER32MODE); 144 cpu_core = std::make_unique<ARM_Dynarmic>();
146 } else { 145 } else {
147 cpu_core = std::make_unique<ARM_DynCom>(USER32MODE); 146 cpu_core = std::make_unique<ARM_Unicorn>();
148 } 147 }
149 148
150 telemetry_session = std::make_unique<Core::TelemetrySession>(); 149 telemetry_session = std::make_unique<Core::TelemetrySession>();
diff --git a/src/core/gdbstub/gdbstub.cpp b/src/core/gdbstub/gdbstub.cpp
index d6be16ef6..dedbd4bdf 100644
--- a/src/core/gdbstub/gdbstub.cpp
+++ b/src/core/gdbstub/gdbstub.cpp
@@ -547,8 +547,7 @@ static void ReadRegister() {
547 id - CPSR_REGISTER - 547 id - CPSR_REGISTER -
548 1)); // VFP registers should start at 26, so one after CSPR_REGISTER 548 1)); // VFP registers should start at 26, so one after CSPR_REGISTER
549 } else if (id == FPSCR_REGISTER) { 549 } else if (id == FPSCR_REGISTER) {
550 IntToGdbHex(reply, Core::CPU().GetVFPSystemReg(VFP_FPSCR)); // Get FPSCR 550 UNIMPLEMENTED();
551 IntToGdbHex(reply + 8, 0);
552 } else { 551 } else {
553 return SendReply("E01"); 552 return SendReply("E01");
554 } 553 }
@@ -579,8 +578,6 @@ static void ReadRegisters() {
579 578
580 bufptr += (32 * CHAR_BIT); 579 bufptr += (32 * CHAR_BIT);
581 580
582 IntToGdbHex(bufptr, Core::CPU().GetVFPSystemReg(VFP_FPSCR));
583
584 SendReply(reinterpret_cast<char*>(buffer)); 581 SendReply(reinterpret_cast<char*>(buffer));
585} 582}
586 583
@@ -602,7 +599,7 @@ static void WriteRegister() {
602 } else if (id > CPSR_REGISTER && id < FPSCR_REGISTER) { 599 } else if (id > CPSR_REGISTER && id < FPSCR_REGISTER) {
603 Core::CPU().SetVFPReg(id - CPSR_REGISTER - 1, GdbHexToInt(buffer_ptr)); 600 Core::CPU().SetVFPReg(id - CPSR_REGISTER - 1, GdbHexToInt(buffer_ptr));
604 } else if (id == FPSCR_REGISTER) { 601 } else if (id == FPSCR_REGISTER) {
605 Core::CPU().SetVFPSystemReg(VFP_FPSCR, GdbHexToInt(buffer_ptr)); 602 UNIMPLEMENTED();
606 } else { 603 } else {
607 return SendReply("E01"); 604 return SendReply("E01");
608 } 605 }
@@ -631,7 +628,7 @@ static void WriteRegisters() {
631 Core::CPU().SetVFPReg(reg - CPSR_REGISTER - 1, GdbHexToInt(buffer_ptr + i * CHAR_BIT)); 628 Core::CPU().SetVFPReg(reg - CPSR_REGISTER - 1, GdbHexToInt(buffer_ptr + i * CHAR_BIT));
632 i++; // Skip padding 629 i++; // Skip padding
633 } else if (reg == FPSCR_REGISTER) { 630 } else if (reg == FPSCR_REGISTER) {
634 Core::CPU().SetVFPSystemReg(VFP_FPSCR, GdbHexToInt(buffer_ptr + i * CHAR_BIT)); 631 UNIMPLEMENTED();
635 } 632 }
636 } 633 }
637 634
diff --git a/src/core/hle/kernel/svc.cpp b/src/core/hle/kernel/svc.cpp
index 1e5218000..debaa82e5 100644
--- a/src/core/hle/kernel/svc.cpp
+++ b/src/core/hle/kernel/svc.cpp
@@ -26,8 +26,8 @@ namespace Kernel {
26static ResultCode SetHeapSize(VAddr* heap_addr, u64 heap_size) { 26static ResultCode SetHeapSize(VAddr* heap_addr, u64 heap_size) {
27 LOG_TRACE(Kernel_SVC, "called, heap_size=0x%llx", heap_size); 27 LOG_TRACE(Kernel_SVC, "called, heap_size=0x%llx", heap_size);
28 auto& process = *g_current_process; 28 auto& process = *g_current_process;
29 CASCADE_RESULT(*heap_addr, process.HeapAllocate(Memory::HEAP_VADDR, heap_size, 29 CASCADE_RESULT(*heap_addr,
30 VMAPermission::ReadWrite)); 30 process.HeapAllocate(Memory::HEAP_VADDR, heap_size, VMAPermission::ReadWrite));
31 return RESULT_SUCCESS; 31 return RESULT_SUCCESS;
32} 32}
33 33
@@ -95,8 +95,7 @@ static ResultCode SendSyncRequest(Handle handle) {
95static ResultCode GetThreadId(u32* thread_id, Handle thread_handle) { 95static ResultCode GetThreadId(u32* thread_id, Handle thread_handle) {
96 LOG_TRACE(Kernel_SVC, "called thread=0x%08X", thread_handle); 96 LOG_TRACE(Kernel_SVC, "called thread=0x%08X", thread_handle);
97 97
98 const SharedPtr<Thread> thread = 98 const SharedPtr<Thread> thread = g_handle_table.Get<Thread>(thread_handle);
99 g_handle_table.Get<Thread>(thread_handle);
100 if (!thread) { 99 if (!thread) {
101 return ERR_INVALID_HANDLE; 100 return ERR_INVALID_HANDLE;
102 } 101 }
@@ -109,8 +108,7 @@ static ResultCode GetThreadId(u32* thread_id, Handle thread_handle) {
109static ResultCode GetProcessId(u32* process_id, Handle process_handle) { 108static ResultCode GetProcessId(u32* process_id, Handle process_handle) {
110 LOG_TRACE(Kernel_SVC, "called process=0x%08X", process_handle); 109 LOG_TRACE(Kernel_SVC, "called process=0x%08X", process_handle);
111 110
112 const SharedPtr<Process> process = 111 const SharedPtr<Process> process = g_handle_table.Get<Process>(process_handle);
113 g_handle_table.Get<Process>(process_handle);
114 if (!process) { 112 if (!process) {
115 return ERR_INVALID_HANDLE; 113 return ERR_INVALID_HANDLE;
116 } 114 }
@@ -135,10 +133,8 @@ static ResultCode LockMutex(Handle holding_thread_handle, VAddr mutex_addr,
135 "requesting_current_thread_handle=0x%08X", 133 "requesting_current_thread_handle=0x%08X",
136 holding_thread_handle, mutex_addr, requesting_thread_handle); 134 holding_thread_handle, mutex_addr, requesting_thread_handle);
137 135
138 SharedPtr<Thread> holding_thread = 136 SharedPtr<Thread> holding_thread = g_handle_table.Get<Thread>(holding_thread_handle);
139 g_handle_table.Get<Thread>(holding_thread_handle); 137 SharedPtr<Thread> requesting_thread = g_handle_table.Get<Thread>(requesting_thread_handle);
140 SharedPtr<Thread> requesting_thread =
141 g_handle_table.Get<Thread>(requesting_thread_handle);
142 138
143 ASSERT(holding_thread); 139 ASSERT(holding_thread);
144 ASSERT(requesting_thread); 140 ASSERT(requesting_thread);
@@ -302,8 +298,7 @@ static ResultCode QueryMemory(MemoryInfo* memory_info, PageInfo* page_info, VAdd
302static void ExitProcess() { 298static void ExitProcess() {
303 LOG_INFO(Kernel_SVC, "Process %u exiting", g_current_process->process_id); 299 LOG_INFO(Kernel_SVC, "Process %u exiting", g_current_process->process_id);
304 300
305 ASSERT_MSG(g_current_process->status == ProcessStatus::Running, 301 ASSERT_MSG(g_current_process->status == ProcessStatus::Running, "Process has already exited");
306 "Process has already exited");
307 302
308 g_current_process->status = ProcessStatus::Exited; 303 g_current_process->status = ProcessStatus::Exited;
309 304
@@ -369,11 +364,7 @@ static ResultCode CreateThread(Handle* out_handle, VAddr entry_point, u64 arg, V
369 364
370 CASCADE_RESULT(SharedPtr<Thread> thread, 365 CASCADE_RESULT(SharedPtr<Thread> thread,
371 Thread::Create(name, entry_point, priority, arg, processor_id, stack_top, 366 Thread::Create(name, entry_point, priority, arg, processor_id, stack_top,
372 g_current_process)); 367 g_current_process));
373
374 thread->context.fpscr =
375 FPSCR_DEFAULT_NAN | FPSCR_FLUSH_TO_ZERO | FPSCR_ROUND_TOZERO; // 0x03C00000
376
377 CASCADE_RESULT(thread->guest_handle, g_handle_table.Create(thread)); 368 CASCADE_RESULT(thread->guest_handle, g_handle_table.Create(thread));
378 *out_handle = thread->guest_handle; 369 *out_handle = thread->guest_handle;
379 370
@@ -391,8 +382,7 @@ static ResultCode CreateThread(Handle* out_handle, VAddr entry_point, u64 arg, V
391static ResultCode StartThread(Handle thread_handle) { 382static ResultCode StartThread(Handle thread_handle) {
392 LOG_TRACE(Kernel_SVC, "called thread=0x%08X", thread_handle); 383 LOG_TRACE(Kernel_SVC, "called thread=0x%08X", thread_handle);
393 384
394 const SharedPtr<Thread> thread = 385 const SharedPtr<Thread> thread = g_handle_table.Get<Thread>(thread_handle);
395 g_handle_table.Get<Thread>(thread_handle);
396 if (!thread) { 386 if (!thread) {
397 return ERR_INVALID_HANDLE; 387 return ERR_INVALID_HANDLE;
398 } 388 }
diff --git a/src/core/hle/kernel/thread.cpp b/src/core/hle/kernel/thread.cpp
index 1588cfc7e..9132d1d77 100644
--- a/src/core/hle/kernel/thread.cpp
+++ b/src/core/hle/kernel/thread.cpp
@@ -11,7 +11,6 @@
11#include "common/math_util.h" 11#include "common/math_util.h"
12#include "common/thread_queue_list.h" 12#include "common/thread_queue_list.h"
13#include "core/arm/arm_interface.h" 13#include "core/arm/arm_interface.h"
14#include "core/arm/skyeye_common/armstate.h"
15#include "core/core.h" 14#include "core/core.h"
16#include "core/core_timing.h" 15#include "core/core_timing.h"
17#include "core/hle/kernel/errors.h" 16#include "core/hle/kernel/errors.h"
@@ -365,7 +364,8 @@ static void ResetThreadContext(ARM_Interface::ThreadContext& context, VAddr stac
365 context.cpu_registers[0] = arg; 364 context.cpu_registers[0] = arg;
366 context.pc = entry_point; 365 context.pc = entry_point;
367 context.sp = stack_top; 366 context.sp = stack_top;
368 context.cpsr = USER32MODE; 367 context.cpsr = 0;
368 context.fpscr = 0;
369} 369}
370 370
371ResultVal<SharedPtr<Thread>> Thread::Create(std::string name, VAddr entry_point, u32 priority, 371ResultVal<SharedPtr<Thread>> Thread::Create(std::string name, VAddr entry_point, u32 priority,
@@ -504,8 +504,6 @@ SharedPtr<Thread> SetupMainThread(VAddr entry_point, u32 priority,
504 // Register 1 must be a handle to the main thread 504 // Register 1 must be a handle to the main thread
505 thread->guest_handle = Kernel::g_handle_table.Create(thread).Unwrap();; 505 thread->guest_handle = Kernel::g_handle_table.Create(thread).Unwrap();;
506 thread->context.cpu_registers[1] = thread->guest_handle; 506 thread->context.cpu_registers[1] = thread->guest_handle;
507 thread->context.fpscr =
508 FPSCR_DEFAULT_NAN | FPSCR_FLUSH_TO_ZERO | FPSCR_ROUND_TOZERO | FPSCR_IXC; // 0x03C00010
509 507
510 // Threads by default are dormant, wake up the main thread so it runs when the scheduler fires 508 // Threads by default are dormant, wake up the main thread so it runs when the scheduler fires
511 thread->ResumeFromWait(); 509 thread->ResumeFromWait();
diff --git a/src/tests/CMakeLists.txt b/src/tests/CMakeLists.txt
index 9e048db3d..b5a8d9c66 100644
--- a/src/tests/CMakeLists.txt
+++ b/src/tests/CMakeLists.txt
@@ -1,7 +1,6 @@
1set(SRCS 1set(SRCS
2 common/param_package.cpp 2 common/param_package.cpp
3 core/arm/arm_test_common.cpp 3 core/arm/arm_test_common.cpp
4 core/arm/dyncom/arm_dyncom_vfp_tests.cpp
5 core/file_sys/path_parser.cpp 4 core/file_sys/path_parser.cpp
6 core/memory/memory.cpp 5 core/memory/memory.cpp
7 glad.cpp 6 glad.cpp
diff --git a/src/tests/core/arm/dyncom/arm_dyncom_vfp_tests.cpp b/src/tests/core/arm/dyncom/arm_dyncom_vfp_tests.cpp
deleted file mode 100644
index 83719a58e..000000000
--- a/src/tests/core/arm/dyncom/arm_dyncom_vfp_tests.cpp
+++ /dev/null
@@ -1,50 +0,0 @@
1// Copyright 2016 Citra Emulator Project
2// Licensed under GPLv2 or any later version
3// Refer to the license.txt file included.
4
5#include <catch.hpp>
6
7#include "core/arm/dyncom/arm_dyncom.h"
8#include "core/core_timing.h"
9#include "tests/core/arm/arm_test_common.h"
10
11namespace ArmTests {
12
13struct VfpTestCase {
14 u32 initial_fpscr;
15 u32 a;
16 u32 b;
17 u32 result;
18 u32 final_fpscr;
19};
20
21TEST_CASE("ARM_DynCom (vfp): vadd", "[arm_dyncom]") {
22 TestEnvironment test_env(false);
23 test_env.SetMemory32(0, 0xEE321A03); // vadd.f32 s2, s4, s6
24 test_env.SetMemory32(4, 0xEAFFFFFE); // b +#0
25
26 ARM_DynCom dyncom(USER32MODE);
27
28 std::vector<VfpTestCase> test_cases{{
29#include "vfp_vadd_f32.inc"
30 }};
31
32 for (const auto& test_case : test_cases) {
33 dyncom.SetPC(0);
34 dyncom.SetVFPSystemReg(VFP_FPSCR, test_case.initial_fpscr);
35 dyncom.SetVFPReg(4, test_case.a);
36 dyncom.SetVFPReg(6, test_case.b);
37 dyncom.ExecuteInstructions(1);
38 if (dyncom.GetVFPReg(2) != test_case.result ||
39 dyncom.GetVFPSystemReg(VFP_FPSCR) != test_case.final_fpscr) {
40 printf("f: %x\n", test_case.initial_fpscr);
41 printf("a: %x\n", test_case.a);
42 printf("b: %x\n", test_case.b);
43 printf("c: %x (%x)\n", dyncom.GetVFPReg(2), test_case.result);
44 printf("f: %x (%x)\n", dyncom.GetVFPSystemReg(VFP_FPSCR), test_case.final_fpscr);
45 FAIL();
46 }
47 }
48}
49
50} // namespace ArmTests \ No newline at end of file
diff --git a/src/tests/core/arm/dyncom/vfp_vadd_f32.inc b/src/tests/core/arm/dyncom/vfp_vadd_f32.inc
deleted file mode 100644
index d0032c2e6..000000000
--- a/src/tests/core/arm/dyncom/vfp_vadd_f32.inc
+++ /dev/null
@@ -1,13456 +0,0 @@
1{0x3c00000, 0x0, 0x0, 0x0, 0x3c00000},
2{0x3c00000, 0x0, 0x1, 0x0, 0x3c00080},
3{0x3c00000, 0x0, 0x76, 0x0, 0x3c00080},
4{0x3c00000, 0x0, 0x2b94, 0x0, 0x3c00080},
5{0x3c00000, 0x0, 0x636d24, 0x0, 0x3c00080},
6{0x3c00000, 0x0, 0x7fffff, 0x0, 0x3c00080},
7{0x3c00000, 0x0, 0x800000, 0x800000, 0x3c00000},
8{0x3c00000, 0x0, 0x800002, 0x800002, 0x3c00000},
9{0x3c00000, 0x0, 0x1398437, 0x1398437, 0x3c00000},
10{0x3c00000, 0x0, 0xba98d27, 0xba98d27, 0x3c00000},
11{0x3c00000, 0x0, 0xba98d7a, 0xba98d7a, 0x3c00000},
12{0x3c00000, 0x0, 0x751f853a, 0x751f853a, 0x3c00000},
13{0x3c00000, 0x0, 0x7f7ffff0, 0x7f7ffff0, 0x3c00000},
14{0x3c00000, 0x0, 0x7f7fffff, 0x7f7fffff, 0x3c00000},
15{0x3c00000, 0x0, 0x7f800000, 0x7f800000, 0x3c00000},
16{0x3c00000, 0x0, 0x7f800001, 0x7fc00000, 0x3c00001},
17{0x3c00000, 0x0, 0x7f984a37, 0x7fc00000, 0x3c00001},
18{0x3c00000, 0x0, 0x7fbfffff, 0x7fc00000, 0x3c00001},
19{0x3c00000, 0x0, 0x7fc00000, 0x7fc00000, 0x3c00000},
20{0x3c00000, 0x0, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
21{0x3c00000, 0x0, 0x7fffffff, 0x7fc00000, 0x3c00000},
22{0x3c00000, 0x0, 0x80000000, 0x0, 0x3c00000},
23{0x3c00000, 0x0, 0x80000001, 0x0, 0x3c00080},
24{0x3c00000, 0x0, 0x80000076, 0x0, 0x3c00080},
25{0x3c00000, 0x0, 0x80002b94, 0x0, 0x3c00080},
26{0x3c00000, 0x0, 0x80636d24, 0x0, 0x3c00080},
27{0x3c00000, 0x0, 0x807fffff, 0x0, 0x3c00080},
28{0x3c00000, 0x0, 0x80800000, 0x80800000, 0x3c00000},
29{0x3c00000, 0x0, 0x80800002, 0x80800002, 0x3c00000},
30{0x3c00000, 0x0, 0x81398437, 0x81398437, 0x3c00000},
31{0x3c00000, 0x0, 0x8ba98d27, 0x8ba98d27, 0x3c00000},
32{0x3c00000, 0x0, 0x8ba98d7a, 0x8ba98d7a, 0x3c00000},
33{0x3c00000, 0x0, 0xf51f853a, 0xf51f853a, 0x3c00000},
34{0x3c00000, 0x0, 0xff7ffff0, 0xff7ffff0, 0x3c00000},
35{0x3c00000, 0x0, 0xff7fffff, 0xff7fffff, 0x3c00000},
36{0x3c00000, 0x0, 0xff800000, 0xff800000, 0x3c00000},
37{0x3c00000, 0x0, 0xff800001, 0x7fc00000, 0x3c00001},
38{0x3c00000, 0x0, 0xff984a37, 0x7fc00000, 0x3c00001},
39{0x3c00000, 0x0, 0xffbfffff, 0x7fc00000, 0x3c00001},
40{0x3c00000, 0x0, 0xffc00000, 0x7fc00000, 0x3c00000},
41{0x3c00000, 0x0, 0xffd9ba98, 0x7fc00000, 0x3c00000},
42{0x3c00000, 0x0, 0xffffffff, 0x7fc00000, 0x3c00000},
43{0x3c00000, 0x0, 0x4f3495cb, 0x4f3495cb, 0x3c00000},
44{0x3c00000, 0x0, 0xe73a5134, 0xe73a5134, 0x3c00000},
45{0x3c00000, 0x0, 0x7c994e9e, 0x7c994e9e, 0x3c00000},
46{0x3c00000, 0x0, 0x6164bd6c, 0x6164bd6c, 0x3c00000},
47{0x3c00000, 0x0, 0x9503366, 0x9503366, 0x3c00000},
48{0x3c00000, 0x0, 0xbf5a97c9, 0xbf5a97c9, 0x3c00000},
49{0x3c00000, 0x0, 0xe6ff1a14, 0xe6ff1a14, 0x3c00000},
50{0x3c00000, 0x0, 0x77f31e2f, 0x77f31e2f, 0x3c00000},
51{0x3c00000, 0x0, 0xaab4d7d8, 0xaab4d7d8, 0x3c00000},
52{0x3c00000, 0x0, 0x966320b, 0x966320b, 0x3c00000},
53{0x3c00000, 0x0, 0xb26bddee, 0xb26bddee, 0x3c00000},
54{0x3c00000, 0x0, 0xb5c8e5d3, 0xb5c8e5d3, 0x3c00000},
55{0x3c00000, 0x0, 0x317285d3, 0x317285d3, 0x3c00000},
56{0x3c00000, 0x0, 0x3c9623b1, 0x3c9623b1, 0x3c00000},
57{0x3c00000, 0x0, 0x51fd2c7c, 0x51fd2c7c, 0x3c00000},
58{0x3c00000, 0x0, 0x7b906a6c, 0x7b906a6c, 0x3c00000},
59{0x3c00000, 0x1, 0x0, 0x0, 0x3c00080},
60{0x3c00000, 0x1, 0x1, 0x0, 0x3c00080},
61{0x3c00000, 0x1, 0x76, 0x0, 0x3c00080},
62{0x3c00000, 0x1, 0x2b94, 0x0, 0x3c00080},
63{0x3c00000, 0x1, 0x636d24, 0x0, 0x3c00080},
64{0x3c00000, 0x1, 0x7fffff, 0x0, 0x3c00080},
65{0x3c00000, 0x1, 0x800000, 0x800000, 0x3c00080},
66{0x3c00000, 0x1, 0x800002, 0x800002, 0x3c00080},
67{0x3c00000, 0x1, 0x1398437, 0x1398437, 0x3c00080},
68{0x3c00000, 0x1, 0xba98d27, 0xba98d27, 0x3c00080},
69{0x3c00000, 0x1, 0xba98d7a, 0xba98d7a, 0x3c00080},
70{0x3c00000, 0x1, 0x751f853a, 0x751f853a, 0x3c00080},
71{0x3c00000, 0x1, 0x7f7ffff0, 0x7f7ffff0, 0x3c00080},
72{0x3c00000, 0x1, 0x7f7fffff, 0x7f7fffff, 0x3c00080},
73{0x3c00000, 0x1, 0x7f800000, 0x7f800000, 0x3c00080},
74{0x3c00000, 0x1, 0x7f800001, 0x7fc00000, 0x3c00081},
75{0x3c00000, 0x1, 0x7f984a37, 0x7fc00000, 0x3c00081},
76{0x3c00000, 0x1, 0x7fbfffff, 0x7fc00000, 0x3c00081},
77{0x3c00000, 0x1, 0x7fc00000, 0x7fc00000, 0x3c00080},
78{0x3c00000, 0x1, 0x7fd9ba98, 0x7fc00000, 0x3c00080},
79{0x3c00000, 0x1, 0x7fffffff, 0x7fc00000, 0x3c00080},
80{0x3c00000, 0x1, 0x80000000, 0x0, 0x3c00080},
81{0x3c00000, 0x1, 0x80000001, 0x0, 0x3c00080},
82{0x3c00000, 0x1, 0x80000076, 0x0, 0x3c00080},
83{0x3c00000, 0x1, 0x80002b94, 0x0, 0x3c00080},
84{0x3c00000, 0x1, 0x80636d24, 0x0, 0x3c00080},
85{0x3c00000, 0x1, 0x807fffff, 0x0, 0x3c00080},
86{0x3c00000, 0x1, 0x80800000, 0x80800000, 0x3c00080},
87{0x3c00000, 0x1, 0x80800002, 0x80800002, 0x3c00080},
88{0x3c00000, 0x1, 0x81398437, 0x81398437, 0x3c00080},
89{0x3c00000, 0x1, 0x8ba98d27, 0x8ba98d27, 0x3c00080},
90{0x3c00000, 0x1, 0x8ba98d7a, 0x8ba98d7a, 0x3c00080},
91{0x3c00000, 0x1, 0xf51f853a, 0xf51f853a, 0x3c00080},
92{0x3c00000, 0x1, 0xff7ffff0, 0xff7ffff0, 0x3c00080},
93{0x3c00000, 0x1, 0xff7fffff, 0xff7fffff, 0x3c00080},
94{0x3c00000, 0x1, 0xff800000, 0xff800000, 0x3c00080},
95{0x3c00000, 0x1, 0xff800001, 0x7fc00000, 0x3c00081},
96{0x3c00000, 0x1, 0xff984a37, 0x7fc00000, 0x3c00081},
97{0x3c00000, 0x1, 0xffbfffff, 0x7fc00000, 0x3c00081},
98{0x3c00000, 0x1, 0xffc00000, 0x7fc00000, 0x3c00080},
99{0x3c00000, 0x1, 0xffd9ba98, 0x7fc00000, 0x3c00080},
100{0x3c00000, 0x1, 0xffffffff, 0x7fc00000, 0x3c00080},
101{0x3c00000, 0x1, 0x4f3495cb, 0x4f3495cb, 0x3c00080},
102{0x3c00000, 0x1, 0xe73a5134, 0xe73a5134, 0x3c00080},
103{0x3c00000, 0x1, 0x7c994e9e, 0x7c994e9e, 0x3c00080},
104{0x3c00000, 0x1, 0x6164bd6c, 0x6164bd6c, 0x3c00080},
105{0x3c00000, 0x1, 0x9503366, 0x9503366, 0x3c00080},
106{0x3c00000, 0x1, 0xbf5a97c9, 0xbf5a97c9, 0x3c00080},
107{0x3c00000, 0x1, 0xe6ff1a14, 0xe6ff1a14, 0x3c00080},
108{0x3c00000, 0x1, 0x77f31e2f, 0x77f31e2f, 0x3c00080},
109{0x3c00000, 0x1, 0xaab4d7d8, 0xaab4d7d8, 0x3c00080},
110{0x3c00000, 0x1, 0x966320b, 0x966320b, 0x3c00080},
111{0x3c00000, 0x1, 0xb26bddee, 0xb26bddee, 0x3c00080},
112{0x3c00000, 0x1, 0xb5c8e5d3, 0xb5c8e5d3, 0x3c00080},
113{0x3c00000, 0x1, 0x317285d3, 0x317285d3, 0x3c00080},
114{0x3c00000, 0x1, 0x3c9623b1, 0x3c9623b1, 0x3c00080},
115{0x3c00000, 0x1, 0x51fd2c7c, 0x51fd2c7c, 0x3c00080},
116{0x3c00000, 0x1, 0x7b906a6c, 0x7b906a6c, 0x3c00080},
117{0x3c00000, 0x76, 0x0, 0x0, 0x3c00080},
118{0x3c00000, 0x76, 0x1, 0x0, 0x3c00080},
119{0x3c00000, 0x76, 0x76, 0x0, 0x3c00080},
120{0x3c00000, 0x76, 0x2b94, 0x0, 0x3c00080},
121{0x3c00000, 0x76, 0x636d24, 0x0, 0x3c00080},
122{0x3c00000, 0x76, 0x7fffff, 0x0, 0x3c00080},
123{0x3c00000, 0x76, 0x800000, 0x800000, 0x3c00080},
124{0x3c00000, 0x76, 0x800002, 0x800002, 0x3c00080},
125{0x3c00000, 0x76, 0x1398437, 0x1398437, 0x3c00080},
126{0x3c00000, 0x76, 0xba98d27, 0xba98d27, 0x3c00080},
127{0x3c00000, 0x76, 0xba98d7a, 0xba98d7a, 0x3c00080},
128{0x3c00000, 0x76, 0x751f853a, 0x751f853a, 0x3c00080},
129{0x3c00000, 0x76, 0x7f7ffff0, 0x7f7ffff0, 0x3c00080},
130{0x3c00000, 0x76, 0x7f7fffff, 0x7f7fffff, 0x3c00080},
131{0x3c00000, 0x76, 0x7f800000, 0x7f800000, 0x3c00080},
132{0x3c00000, 0x76, 0x7f800001, 0x7fc00000, 0x3c00081},
133{0x3c00000, 0x76, 0x7f984a37, 0x7fc00000, 0x3c00081},
134{0x3c00000, 0x76, 0x7fbfffff, 0x7fc00000, 0x3c00081},
135{0x3c00000, 0x76, 0x7fc00000, 0x7fc00000, 0x3c00080},
136{0x3c00000, 0x76, 0x7fd9ba98, 0x7fc00000, 0x3c00080},
137{0x3c00000, 0x76, 0x7fffffff, 0x7fc00000, 0x3c00080},
138{0x3c00000, 0x76, 0x80000000, 0x0, 0x3c00080},
139{0x3c00000, 0x76, 0x80000001, 0x0, 0x3c00080},
140{0x3c00000, 0x76, 0x80000076, 0x0, 0x3c00080},
141{0x3c00000, 0x76, 0x80002b94, 0x0, 0x3c00080},
142{0x3c00000, 0x76, 0x80636d24, 0x0, 0x3c00080},
143{0x3c00000, 0x76, 0x807fffff, 0x0, 0x3c00080},
144{0x3c00000, 0x76, 0x80800000, 0x80800000, 0x3c00080},
145{0x3c00000, 0x76, 0x80800002, 0x80800002, 0x3c00080},
146{0x3c00000, 0x76, 0x81398437, 0x81398437, 0x3c00080},
147{0x3c00000, 0x76, 0x8ba98d27, 0x8ba98d27, 0x3c00080},
148{0x3c00000, 0x76, 0x8ba98d7a, 0x8ba98d7a, 0x3c00080},
149{0x3c00000, 0x76, 0xf51f853a, 0xf51f853a, 0x3c00080},
150{0x3c00000, 0x76, 0xff7ffff0, 0xff7ffff0, 0x3c00080},
151{0x3c00000, 0x76, 0xff7fffff, 0xff7fffff, 0x3c00080},
152{0x3c00000, 0x76, 0xff800000, 0xff800000, 0x3c00080},
153{0x3c00000, 0x76, 0xff800001, 0x7fc00000, 0x3c00081},
154{0x3c00000, 0x76, 0xff984a37, 0x7fc00000, 0x3c00081},
155{0x3c00000, 0x76, 0xffbfffff, 0x7fc00000, 0x3c00081},
156{0x3c00000, 0x76, 0xffc00000, 0x7fc00000, 0x3c00080},
157{0x3c00000, 0x76, 0xffd9ba98, 0x7fc00000, 0x3c00080},
158{0x3c00000, 0x76, 0xffffffff, 0x7fc00000, 0x3c00080},
159{0x3c00000, 0x76, 0x4f3495cb, 0x4f3495cb, 0x3c00080},
160{0x3c00000, 0x76, 0xe73a5134, 0xe73a5134, 0x3c00080},
161{0x3c00000, 0x76, 0x7c994e9e, 0x7c994e9e, 0x3c00080},
162{0x3c00000, 0x76, 0x6164bd6c, 0x6164bd6c, 0x3c00080},
163{0x3c00000, 0x76, 0x9503366, 0x9503366, 0x3c00080},
164{0x3c00000, 0x76, 0xbf5a97c9, 0xbf5a97c9, 0x3c00080},
165{0x3c00000, 0x76, 0xe6ff1a14, 0xe6ff1a14, 0x3c00080},
166{0x3c00000, 0x76, 0x77f31e2f, 0x77f31e2f, 0x3c00080},
167{0x3c00000, 0x76, 0xaab4d7d8, 0xaab4d7d8, 0x3c00080},
168{0x3c00000, 0x76, 0x966320b, 0x966320b, 0x3c00080},
169{0x3c00000, 0x76, 0xb26bddee, 0xb26bddee, 0x3c00080},
170{0x3c00000, 0x76, 0xb5c8e5d3, 0xb5c8e5d3, 0x3c00080},
171{0x3c00000, 0x76, 0x317285d3, 0x317285d3, 0x3c00080},
172{0x3c00000, 0x76, 0x3c9623b1, 0x3c9623b1, 0x3c00080},
173{0x3c00000, 0x76, 0x51fd2c7c, 0x51fd2c7c, 0x3c00080},
174{0x3c00000, 0x76, 0x7b906a6c, 0x7b906a6c, 0x3c00080},
175{0x3c00000, 0x2b94, 0x0, 0x0, 0x3c00080},
176{0x3c00000, 0x2b94, 0x1, 0x0, 0x3c00080},
177{0x3c00000, 0x2b94, 0x76, 0x0, 0x3c00080},
178{0x3c00000, 0x2b94, 0x2b94, 0x0, 0x3c00080},
179{0x3c00000, 0x2b94, 0x636d24, 0x0, 0x3c00080},
180{0x3c00000, 0x2b94, 0x7fffff, 0x0, 0x3c00080},
181{0x3c00000, 0x2b94, 0x800000, 0x800000, 0x3c00080},
182{0x3c00000, 0x2b94, 0x800002, 0x800002, 0x3c00080},
183{0x3c00000, 0x2b94, 0x1398437, 0x1398437, 0x3c00080},
184{0x3c00000, 0x2b94, 0xba98d27, 0xba98d27, 0x3c00080},
185{0x3c00000, 0x2b94, 0xba98d7a, 0xba98d7a, 0x3c00080},
186{0x3c00000, 0x2b94, 0x751f853a, 0x751f853a, 0x3c00080},
187{0x3c00000, 0x2b94, 0x7f7ffff0, 0x7f7ffff0, 0x3c00080},
188{0x3c00000, 0x2b94, 0x7f7fffff, 0x7f7fffff, 0x3c00080},
189{0x3c00000, 0x2b94, 0x7f800000, 0x7f800000, 0x3c00080},
190{0x3c00000, 0x2b94, 0x7f800001, 0x7fc00000, 0x3c00081},
191{0x3c00000, 0x2b94, 0x7f984a37, 0x7fc00000, 0x3c00081},
192{0x3c00000, 0x2b94, 0x7fbfffff, 0x7fc00000, 0x3c00081},
193{0x3c00000, 0x2b94, 0x7fc00000, 0x7fc00000, 0x3c00080},
194{0x3c00000, 0x2b94, 0x7fd9ba98, 0x7fc00000, 0x3c00080},
195{0x3c00000, 0x2b94, 0x7fffffff, 0x7fc00000, 0x3c00080},
196{0x3c00000, 0x2b94, 0x80000000, 0x0, 0x3c00080},
197{0x3c00000, 0x2b94, 0x80000001, 0x0, 0x3c00080},
198{0x3c00000, 0x2b94, 0x80000076, 0x0, 0x3c00080},
199{0x3c00000, 0x2b94, 0x80002b94, 0x0, 0x3c00080},
200{0x3c00000, 0x2b94, 0x80636d24, 0x0, 0x3c00080},
201{0x3c00000, 0x2b94, 0x807fffff, 0x0, 0x3c00080},
202{0x3c00000, 0x2b94, 0x80800000, 0x80800000, 0x3c00080},
203{0x3c00000, 0x2b94, 0x80800002, 0x80800002, 0x3c00080},
204{0x3c00000, 0x2b94, 0x81398437, 0x81398437, 0x3c00080},
205{0x3c00000, 0x2b94, 0x8ba98d27, 0x8ba98d27, 0x3c00080},
206{0x3c00000, 0x2b94, 0x8ba98d7a, 0x8ba98d7a, 0x3c00080},
207{0x3c00000, 0x2b94, 0xf51f853a, 0xf51f853a, 0x3c00080},
208{0x3c00000, 0x2b94, 0xff7ffff0, 0xff7ffff0, 0x3c00080},
209{0x3c00000, 0x2b94, 0xff7fffff, 0xff7fffff, 0x3c00080},
210{0x3c00000, 0x2b94, 0xff800000, 0xff800000, 0x3c00080},
211{0x3c00000, 0x2b94, 0xff800001, 0x7fc00000, 0x3c00081},
212{0x3c00000, 0x2b94, 0xff984a37, 0x7fc00000, 0x3c00081},
213{0x3c00000, 0x2b94, 0xffbfffff, 0x7fc00000, 0x3c00081},
214{0x3c00000, 0x2b94, 0xffc00000, 0x7fc00000, 0x3c00080},
215{0x3c00000, 0x2b94, 0xffd9ba98, 0x7fc00000, 0x3c00080},
216{0x3c00000, 0x2b94, 0xffffffff, 0x7fc00000, 0x3c00080},
217{0x3c00000, 0x2b94, 0x4f3495cb, 0x4f3495cb, 0x3c00080},
218{0x3c00000, 0x2b94, 0xe73a5134, 0xe73a5134, 0x3c00080},
219{0x3c00000, 0x2b94, 0x7c994e9e, 0x7c994e9e, 0x3c00080},
220{0x3c00000, 0x2b94, 0x6164bd6c, 0x6164bd6c, 0x3c00080},
221{0x3c00000, 0x2b94, 0x9503366, 0x9503366, 0x3c00080},
222{0x3c00000, 0x2b94, 0xbf5a97c9, 0xbf5a97c9, 0x3c00080},
223{0x3c00000, 0x2b94, 0xe6ff1a14, 0xe6ff1a14, 0x3c00080},
224{0x3c00000, 0x2b94, 0x77f31e2f, 0x77f31e2f, 0x3c00080},
225{0x3c00000, 0x2b94, 0xaab4d7d8, 0xaab4d7d8, 0x3c00080},
226{0x3c00000, 0x2b94, 0x966320b, 0x966320b, 0x3c00080},
227{0x3c00000, 0x2b94, 0xb26bddee, 0xb26bddee, 0x3c00080},
228{0x3c00000, 0x2b94, 0xb5c8e5d3, 0xb5c8e5d3, 0x3c00080},
229{0x3c00000, 0x2b94, 0x317285d3, 0x317285d3, 0x3c00080},
230{0x3c00000, 0x2b94, 0x3c9623b1, 0x3c9623b1, 0x3c00080},
231{0x3c00000, 0x2b94, 0x51fd2c7c, 0x51fd2c7c, 0x3c00080},
232{0x3c00000, 0x2b94, 0x7b906a6c, 0x7b906a6c, 0x3c00080},
233{0x3c00000, 0x636d24, 0x0, 0x0, 0x3c00080},
234{0x3c00000, 0x636d24, 0x1, 0x0, 0x3c00080},
235{0x3c00000, 0x636d24, 0x76, 0x0, 0x3c00080},
236{0x3c00000, 0x636d24, 0x2b94, 0x0, 0x3c00080},
237{0x3c00000, 0x636d24, 0x636d24, 0x0, 0x3c00080},
238{0x3c00000, 0x636d24, 0x7fffff, 0x0, 0x3c00080},
239{0x3c00000, 0x636d24, 0x800000, 0x800000, 0x3c00080},
240{0x3c00000, 0x636d24, 0x800002, 0x800002, 0x3c00080},
241{0x3c00000, 0x636d24, 0x1398437, 0x1398437, 0x3c00080},
242{0x3c00000, 0x636d24, 0xba98d27, 0xba98d27, 0x3c00080},
243{0x3c00000, 0x636d24, 0xba98d7a, 0xba98d7a, 0x3c00080},
244{0x3c00000, 0x636d24, 0x751f853a, 0x751f853a, 0x3c00080},
245{0x3c00000, 0x636d24, 0x7f7ffff0, 0x7f7ffff0, 0x3c00080},
246{0x3c00000, 0x636d24, 0x7f7fffff, 0x7f7fffff, 0x3c00080},
247{0x3c00000, 0x636d24, 0x7f800000, 0x7f800000, 0x3c00080},
248{0x3c00000, 0x636d24, 0x7f800001, 0x7fc00000, 0x3c00081},
249{0x3c00000, 0x636d24, 0x7f984a37, 0x7fc00000, 0x3c00081},
250{0x3c00000, 0x636d24, 0x7fbfffff, 0x7fc00000, 0x3c00081},
251{0x3c00000, 0x636d24, 0x7fc00000, 0x7fc00000, 0x3c00080},
252{0x3c00000, 0x636d24, 0x7fd9ba98, 0x7fc00000, 0x3c00080},
253{0x3c00000, 0x636d24, 0x7fffffff, 0x7fc00000, 0x3c00080},
254{0x3c00000, 0x636d24, 0x80000000, 0x0, 0x3c00080},
255{0x3c00000, 0x636d24, 0x80000001, 0x0, 0x3c00080},
256{0x3c00000, 0x636d24, 0x80000076, 0x0, 0x3c00080},
257{0x3c00000, 0x636d24, 0x80002b94, 0x0, 0x3c00080},
258{0x3c00000, 0x636d24, 0x80636d24, 0x0, 0x3c00080},
259{0x3c00000, 0x636d24, 0x807fffff, 0x0, 0x3c00080},
260{0x3c00000, 0x636d24, 0x80800000, 0x80800000, 0x3c00080},
261{0x3c00000, 0x636d24, 0x80800002, 0x80800002, 0x3c00080},
262{0x3c00000, 0x636d24, 0x81398437, 0x81398437, 0x3c00080},
263{0x3c00000, 0x636d24, 0x8ba98d27, 0x8ba98d27, 0x3c00080},
264{0x3c00000, 0x636d24, 0x8ba98d7a, 0x8ba98d7a, 0x3c00080},
265{0x3c00000, 0x636d24, 0xf51f853a, 0xf51f853a, 0x3c00080},
266{0x3c00000, 0x636d24, 0xff7ffff0, 0xff7ffff0, 0x3c00080},
267{0x3c00000, 0x636d24, 0xff7fffff, 0xff7fffff, 0x3c00080},
268{0x3c00000, 0x636d24, 0xff800000, 0xff800000, 0x3c00080},
269{0x3c00000, 0x636d24, 0xff800001, 0x7fc00000, 0x3c00081},
270{0x3c00000, 0x636d24, 0xff984a37, 0x7fc00000, 0x3c00081},
271{0x3c00000, 0x636d24, 0xffbfffff, 0x7fc00000, 0x3c00081},
272{0x3c00000, 0x636d24, 0xffc00000, 0x7fc00000, 0x3c00080},
273{0x3c00000, 0x636d24, 0xffd9ba98, 0x7fc00000, 0x3c00080},
274{0x3c00000, 0x636d24, 0xffffffff, 0x7fc00000, 0x3c00080},
275{0x3c00000, 0x636d24, 0x4f3495cb, 0x4f3495cb, 0x3c00080},
276{0x3c00000, 0x636d24, 0xe73a5134, 0xe73a5134, 0x3c00080},
277{0x3c00000, 0x636d24, 0x7c994e9e, 0x7c994e9e, 0x3c00080},
278{0x3c00000, 0x636d24, 0x6164bd6c, 0x6164bd6c, 0x3c00080},
279{0x3c00000, 0x636d24, 0x9503366, 0x9503366, 0x3c00080},
280{0x3c00000, 0x636d24, 0xbf5a97c9, 0xbf5a97c9, 0x3c00080},
281{0x3c00000, 0x636d24, 0xe6ff1a14, 0xe6ff1a14, 0x3c00080},
282{0x3c00000, 0x636d24, 0x77f31e2f, 0x77f31e2f, 0x3c00080},
283{0x3c00000, 0x636d24, 0xaab4d7d8, 0xaab4d7d8, 0x3c00080},
284{0x3c00000, 0x636d24, 0x966320b, 0x966320b, 0x3c00080},
285{0x3c00000, 0x636d24, 0xb26bddee, 0xb26bddee, 0x3c00080},
286{0x3c00000, 0x636d24, 0xb5c8e5d3, 0xb5c8e5d3, 0x3c00080},
287{0x3c00000, 0x636d24, 0x317285d3, 0x317285d3, 0x3c00080},
288{0x3c00000, 0x636d24, 0x3c9623b1, 0x3c9623b1, 0x3c00080},
289{0x3c00000, 0x636d24, 0x51fd2c7c, 0x51fd2c7c, 0x3c00080},
290{0x3c00000, 0x636d24, 0x7b906a6c, 0x7b906a6c, 0x3c00080},
291{0x3c00000, 0x7fffff, 0x0, 0x0, 0x3c00080},
292{0x3c00000, 0x7fffff, 0x1, 0x0, 0x3c00080},
293{0x3c00000, 0x7fffff, 0x76, 0x0, 0x3c00080},
294{0x3c00000, 0x7fffff, 0x2b94, 0x0, 0x3c00080},
295{0x3c00000, 0x7fffff, 0x636d24, 0x0, 0x3c00080},
296{0x3c00000, 0x7fffff, 0x7fffff, 0x0, 0x3c00080},
297{0x3c00000, 0x7fffff, 0x800000, 0x800000, 0x3c00080},
298{0x3c00000, 0x7fffff, 0x800002, 0x800002, 0x3c00080},
299{0x3c00000, 0x7fffff, 0x1398437, 0x1398437, 0x3c00080},
300{0x3c00000, 0x7fffff, 0xba98d27, 0xba98d27, 0x3c00080},
301{0x3c00000, 0x7fffff, 0xba98d7a, 0xba98d7a, 0x3c00080},
302{0x3c00000, 0x7fffff, 0x751f853a, 0x751f853a, 0x3c00080},
303{0x3c00000, 0x7fffff, 0x7f7ffff0, 0x7f7ffff0, 0x3c00080},
304{0x3c00000, 0x7fffff, 0x7f7fffff, 0x7f7fffff, 0x3c00080},
305{0x3c00000, 0x7fffff, 0x7f800000, 0x7f800000, 0x3c00080},
306{0x3c00000, 0x7fffff, 0x7f800001, 0x7fc00000, 0x3c00081},
307{0x3c00000, 0x7fffff, 0x7f984a37, 0x7fc00000, 0x3c00081},
308{0x3c00000, 0x7fffff, 0x7fbfffff, 0x7fc00000, 0x3c00081},
309{0x3c00000, 0x7fffff, 0x7fc00000, 0x7fc00000, 0x3c00080},
310{0x3c00000, 0x7fffff, 0x7fd9ba98, 0x7fc00000, 0x3c00080},
311{0x3c00000, 0x7fffff, 0x7fffffff, 0x7fc00000, 0x3c00080},
312{0x3c00000, 0x7fffff, 0x80000000, 0x0, 0x3c00080},
313{0x3c00000, 0x7fffff, 0x80000001, 0x0, 0x3c00080},
314{0x3c00000, 0x7fffff, 0x80000076, 0x0, 0x3c00080},
315{0x3c00000, 0x7fffff, 0x80002b94, 0x0, 0x3c00080},
316{0x3c00000, 0x7fffff, 0x80636d24, 0x0, 0x3c00080},
317{0x3c00000, 0x7fffff, 0x807fffff, 0x0, 0x3c00080},
318{0x3c00000, 0x7fffff, 0x80800000, 0x80800000, 0x3c00080},
319{0x3c00000, 0x7fffff, 0x80800002, 0x80800002, 0x3c00080},
320{0x3c00000, 0x7fffff, 0x81398437, 0x81398437, 0x3c00080},
321{0x3c00000, 0x7fffff, 0x8ba98d27, 0x8ba98d27, 0x3c00080},
322{0x3c00000, 0x7fffff, 0x8ba98d7a, 0x8ba98d7a, 0x3c00080},
323{0x3c00000, 0x7fffff, 0xf51f853a, 0xf51f853a, 0x3c00080},
324{0x3c00000, 0x7fffff, 0xff7ffff0, 0xff7ffff0, 0x3c00080},
325{0x3c00000, 0x7fffff, 0xff7fffff, 0xff7fffff, 0x3c00080},
326{0x3c00000, 0x7fffff, 0xff800000, 0xff800000, 0x3c00080},
327{0x3c00000, 0x7fffff, 0xff800001, 0x7fc00000, 0x3c00081},
328{0x3c00000, 0x7fffff, 0xff984a37, 0x7fc00000, 0x3c00081},
329{0x3c00000, 0x7fffff, 0xffbfffff, 0x7fc00000, 0x3c00081},
330{0x3c00000, 0x7fffff, 0xffc00000, 0x7fc00000, 0x3c00080},
331{0x3c00000, 0x7fffff, 0xffd9ba98, 0x7fc00000, 0x3c00080},
332{0x3c00000, 0x7fffff, 0xffffffff, 0x7fc00000, 0x3c00080},
333{0x3c00000, 0x7fffff, 0x4f3495cb, 0x4f3495cb, 0x3c00080},
334{0x3c00000, 0x7fffff, 0xe73a5134, 0xe73a5134, 0x3c00080},
335{0x3c00000, 0x7fffff, 0x7c994e9e, 0x7c994e9e, 0x3c00080},
336{0x3c00000, 0x7fffff, 0x6164bd6c, 0x6164bd6c, 0x3c00080},
337{0x3c00000, 0x7fffff, 0x9503366, 0x9503366, 0x3c00080},
338{0x3c00000, 0x7fffff, 0xbf5a97c9, 0xbf5a97c9, 0x3c00080},
339{0x3c00000, 0x7fffff, 0xe6ff1a14, 0xe6ff1a14, 0x3c00080},
340{0x3c00000, 0x7fffff, 0x77f31e2f, 0x77f31e2f, 0x3c00080},
341{0x3c00000, 0x7fffff, 0xaab4d7d8, 0xaab4d7d8, 0x3c00080},
342{0x3c00000, 0x7fffff, 0x966320b, 0x966320b, 0x3c00080},
343{0x3c00000, 0x7fffff, 0xb26bddee, 0xb26bddee, 0x3c00080},
344{0x3c00000, 0x7fffff, 0xb5c8e5d3, 0xb5c8e5d3, 0x3c00080},
345{0x3c00000, 0x7fffff, 0x317285d3, 0x317285d3, 0x3c00080},
346{0x3c00000, 0x7fffff, 0x3c9623b1, 0x3c9623b1, 0x3c00080},
347{0x3c00000, 0x7fffff, 0x51fd2c7c, 0x51fd2c7c, 0x3c00080},
348{0x3c00000, 0x7fffff, 0x7b906a6c, 0x7b906a6c, 0x3c00080},
349{0x3c00000, 0x800000, 0x0, 0x800000, 0x3c00000},
350{0x3c00000, 0x800000, 0x1, 0x800000, 0x3c00080},
351{0x3c00000, 0x800000, 0x76, 0x800000, 0x3c00080},
352{0x3c00000, 0x800000, 0x2b94, 0x800000, 0x3c00080},
353{0x3c00000, 0x800000, 0x636d24, 0x800000, 0x3c00080},
354{0x3c00000, 0x800000, 0x7fffff, 0x800000, 0x3c00080},
355{0x3c00000, 0x800000, 0x800000, 0x1000000, 0x3c00000},
356{0x3c00000, 0x800000, 0x800002, 0x1000001, 0x3c00000},
357{0x3c00000, 0x800000, 0x1398437, 0x1798437, 0x3c00000},
358{0x3c00000, 0x800000, 0xba98d27, 0xba98d29, 0x3c00000},
359{0x3c00000, 0x800000, 0xba98d7a, 0xba98d7c, 0x3c00000},
360{0x3c00000, 0x800000, 0x751f853a, 0x751f853a, 0x3c00010},
361{0x3c00000, 0x800000, 0x7f7ffff0, 0x7f7ffff0, 0x3c00010},
362{0x3c00000, 0x800000, 0x7f7fffff, 0x7f7fffff, 0x3c00010},
363{0x3c00000, 0x800000, 0x7f800000, 0x7f800000, 0x3c00000},
364{0x3c00000, 0x800000, 0x7f800001, 0x7fc00000, 0x3c00001},
365{0x3c00000, 0x800000, 0x7f984a37, 0x7fc00000, 0x3c00001},
366{0x3c00000, 0x800000, 0x7fbfffff, 0x7fc00000, 0x3c00001},
367{0x3c00000, 0x800000, 0x7fc00000, 0x7fc00000, 0x3c00000},
368{0x3c00000, 0x800000, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
369{0x3c00000, 0x800000, 0x7fffffff, 0x7fc00000, 0x3c00000},
370{0x3c00000, 0x800000, 0x80000000, 0x800000, 0x3c00000},
371{0x3c00000, 0x800000, 0x80000001, 0x800000, 0x3c00080},
372{0x3c00000, 0x800000, 0x80000076, 0x800000, 0x3c00080},
373{0x3c00000, 0x800000, 0x80002b94, 0x800000, 0x3c00080},
374{0x3c00000, 0x800000, 0x80636d24, 0x800000, 0x3c00080},
375{0x3c00000, 0x800000, 0x807fffff, 0x800000, 0x3c00080},
376{0x3c00000, 0x800000, 0x80800000, 0x0, 0x3c00000},
377{0x3c00000, 0x800000, 0x80800002, 0x0, 0x3c00008},
378{0x3c00000, 0x800000, 0x81398437, 0x80f3086e, 0x3c00000},
379{0x3c00000, 0x800000, 0x8ba98d27, 0x8ba98d25, 0x3c00000},
380{0x3c00000, 0x800000, 0x8ba98d7a, 0x8ba98d78, 0x3c00000},
381{0x3c00000, 0x800000, 0xf51f853a, 0xf51f8539, 0x3c00010},
382{0x3c00000, 0x800000, 0xff7ffff0, 0xff7fffef, 0x3c00010},
383{0x3c00000, 0x800000, 0xff7fffff, 0xff7ffffe, 0x3c00010},
384{0x3c00000, 0x800000, 0xff800000, 0xff800000, 0x3c00000},
385{0x3c00000, 0x800000, 0xff800001, 0x7fc00000, 0x3c00001},
386{0x3c00000, 0x800000, 0xff984a37, 0x7fc00000, 0x3c00001},
387{0x3c00000, 0x800000, 0xffbfffff, 0x7fc00000, 0x3c00001},
388{0x3c00000, 0x800000, 0xffc00000, 0x7fc00000, 0x3c00000},
389{0x3c00000, 0x800000, 0xffd9ba98, 0x7fc00000, 0x3c00000},
390{0x3c00000, 0x800000, 0xffffffff, 0x7fc00000, 0x3c00000},
391{0x3c00000, 0x800000, 0x4f3495cb, 0x4f3495cb, 0x3c00010},
392{0x3c00000, 0x800000, 0xe73a5134, 0xe73a5133, 0x3c00010},
393{0x3c00000, 0x800000, 0x7c994e9e, 0x7c994e9e, 0x3c00010},
394{0x3c00000, 0x800000, 0x6164bd6c, 0x6164bd6c, 0x3c00010},
395{0x3c00000, 0x800000, 0x9503366, 0x95033a6, 0x3c00000},
396{0x3c00000, 0x800000, 0xbf5a97c9, 0xbf5a97c8, 0x3c00010},
397{0x3c00000, 0x800000, 0xe6ff1a14, 0xe6ff1a13, 0x3c00010},
398{0x3c00000, 0x800000, 0x77f31e2f, 0x77f31e2f, 0x3c00010},
399{0x3c00000, 0x800000, 0xaab4d7d8, 0xaab4d7d7, 0x3c00010},
400{0x3c00000, 0x800000, 0x966320b, 0x966324b, 0x3c00000},
401{0x3c00000, 0x800000, 0xb26bddee, 0xb26bdded, 0x3c00010},
402{0x3c00000, 0x800000, 0xb5c8e5d3, 0xb5c8e5d2, 0x3c00010},
403{0x3c00000, 0x800000, 0x317285d3, 0x317285d3, 0x3c00010},
404{0x3c00000, 0x800000, 0x3c9623b1, 0x3c9623b1, 0x3c00010},
405{0x3c00000, 0x800000, 0x51fd2c7c, 0x51fd2c7c, 0x3c00010},
406{0x3c00000, 0x800000, 0x7b906a6c, 0x7b906a6c, 0x3c00010},
407{0x3c00000, 0x800002, 0x0, 0x800002, 0x3c00000},
408{0x3c00000, 0x800002, 0x1, 0x800002, 0x3c00080},
409{0x3c00000, 0x800002, 0x76, 0x800002, 0x3c00080},
410{0x3c00000, 0x800002, 0x2b94, 0x800002, 0x3c00080},
411{0x3c00000, 0x800002, 0x636d24, 0x800002, 0x3c00080},
412{0x3c00000, 0x800002, 0x7fffff, 0x800002, 0x3c00080},
413{0x3c00000, 0x800002, 0x800000, 0x1000001, 0x3c00000},
414{0x3c00000, 0x800002, 0x800002, 0x1000002, 0x3c00000},
415{0x3c00000, 0x800002, 0x1398437, 0x1798438, 0x3c00000},
416{0x3c00000, 0x800002, 0xba98d27, 0xba98d29, 0x3c00010},
417{0x3c00000, 0x800002, 0xba98d7a, 0xba98d7c, 0x3c00010},
418{0x3c00000, 0x800002, 0x751f853a, 0x751f853a, 0x3c00010},
419{0x3c00000, 0x800002, 0x7f7ffff0, 0x7f7ffff0, 0x3c00010},
420{0x3c00000, 0x800002, 0x7f7fffff, 0x7f7fffff, 0x3c00010},
421{0x3c00000, 0x800002, 0x7f800000, 0x7f800000, 0x3c00000},
422{0x3c00000, 0x800002, 0x7f800001, 0x7fc00000, 0x3c00001},
423{0x3c00000, 0x800002, 0x7f984a37, 0x7fc00000, 0x3c00001},
424{0x3c00000, 0x800002, 0x7fbfffff, 0x7fc00000, 0x3c00001},
425{0x3c00000, 0x800002, 0x7fc00000, 0x7fc00000, 0x3c00000},
426{0x3c00000, 0x800002, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
427{0x3c00000, 0x800002, 0x7fffffff, 0x7fc00000, 0x3c00000},
428{0x3c00000, 0x800002, 0x80000000, 0x800002, 0x3c00000},
429{0x3c00000, 0x800002, 0x80000001, 0x800002, 0x3c00080},
430{0x3c00000, 0x800002, 0x80000076, 0x800002, 0x3c00080},
431{0x3c00000, 0x800002, 0x80002b94, 0x800002, 0x3c00080},
432{0x3c00000, 0x800002, 0x80636d24, 0x800002, 0x3c00080},
433{0x3c00000, 0x800002, 0x807fffff, 0x800002, 0x3c00080},
434{0x3c00000, 0x800002, 0x80800000, 0x0, 0x3c00008},
435{0x3c00000, 0x800002, 0x80800002, 0x0, 0x3c00000},
436{0x3c00000, 0x800002, 0x81398437, 0x80f3086c, 0x3c00000},
437{0x3c00000, 0x800002, 0x8ba98d27, 0x8ba98d24, 0x3c00010},
438{0x3c00000, 0x800002, 0x8ba98d7a, 0x8ba98d77, 0x3c00010},
439{0x3c00000, 0x800002, 0xf51f853a, 0xf51f8539, 0x3c00010},
440{0x3c00000, 0x800002, 0xff7ffff0, 0xff7fffef, 0x3c00010},
441{0x3c00000, 0x800002, 0xff7fffff, 0xff7ffffe, 0x3c00010},
442{0x3c00000, 0x800002, 0xff800000, 0xff800000, 0x3c00000},
443{0x3c00000, 0x800002, 0xff800001, 0x7fc00000, 0x3c00001},
444{0x3c00000, 0x800002, 0xff984a37, 0x7fc00000, 0x3c00001},
445{0x3c00000, 0x800002, 0xffbfffff, 0x7fc00000, 0x3c00001},
446{0x3c00000, 0x800002, 0xffc00000, 0x7fc00000, 0x3c00000},
447{0x3c00000, 0x800002, 0xffd9ba98, 0x7fc00000, 0x3c00000},
448{0x3c00000, 0x800002, 0xffffffff, 0x7fc00000, 0x3c00000},
449{0x3c00000, 0x800002, 0x4f3495cb, 0x4f3495cb, 0x3c00010},
450{0x3c00000, 0x800002, 0xe73a5134, 0xe73a5133, 0x3c00010},
451{0x3c00000, 0x800002, 0x7c994e9e, 0x7c994e9e, 0x3c00010},
452{0x3c00000, 0x800002, 0x6164bd6c, 0x6164bd6c, 0x3c00010},
453{0x3c00000, 0x800002, 0x9503366, 0x95033a6, 0x3c00010},
454{0x3c00000, 0x800002, 0xbf5a97c9, 0xbf5a97c8, 0x3c00010},
455{0x3c00000, 0x800002, 0xe6ff1a14, 0xe6ff1a13, 0x3c00010},
456{0x3c00000, 0x800002, 0x77f31e2f, 0x77f31e2f, 0x3c00010},
457{0x3c00000, 0x800002, 0xaab4d7d8, 0xaab4d7d7, 0x3c00010},
458{0x3c00000, 0x800002, 0x966320b, 0x966324b, 0x3c00010},
459{0x3c00000, 0x800002, 0xb26bddee, 0xb26bdded, 0x3c00010},
460{0x3c00000, 0x800002, 0xb5c8e5d3, 0xb5c8e5d2, 0x3c00010},
461{0x3c00000, 0x800002, 0x317285d3, 0x317285d3, 0x3c00010},
462{0x3c00000, 0x800002, 0x3c9623b1, 0x3c9623b1, 0x3c00010},
463{0x3c00000, 0x800002, 0x51fd2c7c, 0x51fd2c7c, 0x3c00010},
464{0x3c00000, 0x800002, 0x7b906a6c, 0x7b906a6c, 0x3c00010},
465{0x3c00000, 0x1398437, 0x0, 0x1398437, 0x3c00000},
466{0x3c00000, 0x1398437, 0x1, 0x1398437, 0x3c00080},
467{0x3c00000, 0x1398437, 0x76, 0x1398437, 0x3c00080},
468{0x3c00000, 0x1398437, 0x2b94, 0x1398437, 0x3c00080},
469{0x3c00000, 0x1398437, 0x636d24, 0x1398437, 0x3c00080},
470{0x3c00000, 0x1398437, 0x7fffff, 0x1398437, 0x3c00080},
471{0x3c00000, 0x1398437, 0x800000, 0x1798437, 0x3c00000},
472{0x3c00000, 0x1398437, 0x800002, 0x1798438, 0x3c00000},
473{0x3c00000, 0x1398437, 0x1398437, 0x1b98437, 0x3c00000},
474{0x3c00000, 0x1398437, 0xba98d27, 0xba98d2c, 0x3c00010},
475{0x3c00000, 0x1398437, 0xba98d7a, 0xba98d7f, 0x3c00010},
476{0x3c00000, 0x1398437, 0x751f853a, 0x751f853a, 0x3c00010},
477{0x3c00000, 0x1398437, 0x7f7ffff0, 0x7f7ffff0, 0x3c00010},
478{0x3c00000, 0x1398437, 0x7f7fffff, 0x7f7fffff, 0x3c00010},
479{0x3c00000, 0x1398437, 0x7f800000, 0x7f800000, 0x3c00000},
480{0x3c00000, 0x1398437, 0x7f800001, 0x7fc00000, 0x3c00001},
481{0x3c00000, 0x1398437, 0x7f984a37, 0x7fc00000, 0x3c00001},
482{0x3c00000, 0x1398437, 0x7fbfffff, 0x7fc00000, 0x3c00001},
483{0x3c00000, 0x1398437, 0x7fc00000, 0x7fc00000, 0x3c00000},
484{0x3c00000, 0x1398437, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
485{0x3c00000, 0x1398437, 0x7fffffff, 0x7fc00000, 0x3c00000},
486{0x3c00000, 0x1398437, 0x80000000, 0x1398437, 0x3c00000},
487{0x3c00000, 0x1398437, 0x80000001, 0x1398437, 0x3c00080},
488{0x3c00000, 0x1398437, 0x80000076, 0x1398437, 0x3c00080},
489{0x3c00000, 0x1398437, 0x80002b94, 0x1398437, 0x3c00080},
490{0x3c00000, 0x1398437, 0x80636d24, 0x1398437, 0x3c00080},
491{0x3c00000, 0x1398437, 0x807fffff, 0x1398437, 0x3c00080},
492{0x3c00000, 0x1398437, 0x80800000, 0xf3086e, 0x3c00000},
493{0x3c00000, 0x1398437, 0x80800002, 0xf3086c, 0x3c00000},
494{0x3c00000, 0x1398437, 0x81398437, 0x0, 0x3c00000},
495{0x3c00000, 0x1398437, 0x8ba98d27, 0x8ba98d21, 0x3c00010},
496{0x3c00000, 0x1398437, 0x8ba98d7a, 0x8ba98d74, 0x3c00010},
497{0x3c00000, 0x1398437, 0xf51f853a, 0xf51f8539, 0x3c00010},
498{0x3c00000, 0x1398437, 0xff7ffff0, 0xff7fffef, 0x3c00010},
499{0x3c00000, 0x1398437, 0xff7fffff, 0xff7ffffe, 0x3c00010},
500{0x3c00000, 0x1398437, 0xff800000, 0xff800000, 0x3c00000},
501{0x3c00000, 0x1398437, 0xff800001, 0x7fc00000, 0x3c00001},
502{0x3c00000, 0x1398437, 0xff984a37, 0x7fc00000, 0x3c00001},
503{0x3c00000, 0x1398437, 0xffbfffff, 0x7fc00000, 0x3c00001},
504{0x3c00000, 0x1398437, 0xffc00000, 0x7fc00000, 0x3c00000},
505{0x3c00000, 0x1398437, 0xffd9ba98, 0x7fc00000, 0x3c00000},
506{0x3c00000, 0x1398437, 0xffffffff, 0x7fc00000, 0x3c00000},
507{0x3c00000, 0x1398437, 0x4f3495cb, 0x4f3495cb, 0x3c00010},
508{0x3c00000, 0x1398437, 0xe73a5134, 0xe73a5133, 0x3c00010},
509{0x3c00000, 0x1398437, 0x7c994e9e, 0x7c994e9e, 0x3c00010},
510{0x3c00000, 0x1398437, 0x6164bd6c, 0x6164bd6c, 0x3c00010},
511{0x3c00000, 0x1398437, 0x9503366, 0x950341f, 0x3c00010},
512{0x3c00000, 0x1398437, 0xbf5a97c9, 0xbf5a97c8, 0x3c00010},
513{0x3c00000, 0x1398437, 0xe6ff1a14, 0xe6ff1a13, 0x3c00010},
514{0x3c00000, 0x1398437, 0x77f31e2f, 0x77f31e2f, 0x3c00010},
515{0x3c00000, 0x1398437, 0xaab4d7d8, 0xaab4d7d7, 0x3c00010},
516{0x3c00000, 0x1398437, 0x966320b, 0x96632c4, 0x3c00010},
517{0x3c00000, 0x1398437, 0xb26bddee, 0xb26bdded, 0x3c00010},
518{0x3c00000, 0x1398437, 0xb5c8e5d3, 0xb5c8e5d2, 0x3c00010},
519{0x3c00000, 0x1398437, 0x317285d3, 0x317285d3, 0x3c00010},
520{0x3c00000, 0x1398437, 0x3c9623b1, 0x3c9623b1, 0x3c00010},
521{0x3c00000, 0x1398437, 0x51fd2c7c, 0x51fd2c7c, 0x3c00010},
522{0x3c00000, 0x1398437, 0x7b906a6c, 0x7b906a6c, 0x3c00010},
523{0x3c00000, 0xba98d27, 0x0, 0xba98d27, 0x3c00000},
524{0x3c00000, 0xba98d27, 0x1, 0xba98d27, 0x3c00080},
525{0x3c00000, 0xba98d27, 0x76, 0xba98d27, 0x3c00080},
526{0x3c00000, 0xba98d27, 0x2b94, 0xba98d27, 0x3c00080},
527{0x3c00000, 0xba98d27, 0x636d24, 0xba98d27, 0x3c00080},
528{0x3c00000, 0xba98d27, 0x7fffff, 0xba98d27, 0x3c00080},
529{0x3c00000, 0xba98d27, 0x800000, 0xba98d29, 0x3c00000},
530{0x3c00000, 0xba98d27, 0x800002, 0xba98d29, 0x3c00010},
531{0x3c00000, 0xba98d27, 0x1398437, 0xba98d2c, 0x3c00010},
532{0x3c00000, 0xba98d27, 0xba98d27, 0xc298d27, 0x3c00000},
533{0x3c00000, 0xba98d27, 0xba98d7a, 0xc298d50, 0x3c00010},
534{0x3c00000, 0xba98d27, 0x751f853a, 0x751f853a, 0x3c00010},
535{0x3c00000, 0xba98d27, 0x7f7ffff0, 0x7f7ffff0, 0x3c00010},
536{0x3c00000, 0xba98d27, 0x7f7fffff, 0x7f7fffff, 0x3c00010},
537{0x3c00000, 0xba98d27, 0x7f800000, 0x7f800000, 0x3c00000},
538{0x3c00000, 0xba98d27, 0x7f800001, 0x7fc00000, 0x3c00001},
539{0x3c00000, 0xba98d27, 0x7f984a37, 0x7fc00000, 0x3c00001},
540{0x3c00000, 0xba98d27, 0x7fbfffff, 0x7fc00000, 0x3c00001},
541{0x3c00000, 0xba98d27, 0x7fc00000, 0x7fc00000, 0x3c00000},
542{0x3c00000, 0xba98d27, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
543{0x3c00000, 0xba98d27, 0x7fffffff, 0x7fc00000, 0x3c00000},
544{0x3c00000, 0xba98d27, 0x80000000, 0xba98d27, 0x3c00000},
545{0x3c00000, 0xba98d27, 0x80000001, 0xba98d27, 0x3c00080},
546{0x3c00000, 0xba98d27, 0x80000076, 0xba98d27, 0x3c00080},
547{0x3c00000, 0xba98d27, 0x80002b94, 0xba98d27, 0x3c00080},
548{0x3c00000, 0xba98d27, 0x80636d24, 0xba98d27, 0x3c00080},
549{0x3c00000, 0xba98d27, 0x807fffff, 0xba98d27, 0x3c00080},
550{0x3c00000, 0xba98d27, 0x80800000, 0xba98d25, 0x3c00000},
551{0x3c00000, 0xba98d27, 0x80800002, 0xba98d24, 0x3c00010},
552{0x3c00000, 0xba98d27, 0x81398437, 0xba98d21, 0x3c00010},
553{0x3c00000, 0xba98d27, 0x8ba98d27, 0x0, 0x3c00000},
554{0x3c00000, 0xba98d27, 0x8ba98d7a, 0x83260000, 0x3c00000},
555{0x3c00000, 0xba98d27, 0xf51f853a, 0xf51f8539, 0x3c00010},
556{0x3c00000, 0xba98d27, 0xff7ffff0, 0xff7fffef, 0x3c00010},
557{0x3c00000, 0xba98d27, 0xff7fffff, 0xff7ffffe, 0x3c00010},
558{0x3c00000, 0xba98d27, 0xff800000, 0xff800000, 0x3c00000},
559{0x3c00000, 0xba98d27, 0xff800001, 0x7fc00000, 0x3c00001},
560{0x3c00000, 0xba98d27, 0xff984a37, 0x7fc00000, 0x3c00001},
561{0x3c00000, 0xba98d27, 0xffbfffff, 0x7fc00000, 0x3c00001},
562{0x3c00000, 0xba98d27, 0xffc00000, 0x7fc00000, 0x3c00000},
563{0x3c00000, 0xba98d27, 0xffd9ba98, 0x7fc00000, 0x3c00000},
564{0x3c00000, 0xba98d27, 0xffffffff, 0x7fc00000, 0x3c00000},
565{0x3c00000, 0xba98d27, 0x4f3495cb, 0x4f3495cb, 0x3c00010},
566{0x3c00000, 0xba98d27, 0xe73a5134, 0xe73a5133, 0x3c00010},
567{0x3c00000, 0xba98d27, 0x7c994e9e, 0x7c994e9e, 0x3c00010},
568{0x3c00000, 0xba98d27, 0x6164bd6c, 0x6164bd6c, 0x3c00010},
569{0x3c00000, 0xba98d27, 0x9503366, 0xbb00ec2, 0x3c00010},
570{0x3c00000, 0xba98d27, 0xbf5a97c9, 0xbf5a97c8, 0x3c00010},
571{0x3c00000, 0xba98d27, 0xe6ff1a14, 0xe6ff1a13, 0x3c00010},
572{0x3c00000, 0xba98d27, 0x77f31e2f, 0x77f31e2f, 0x3c00010},
573{0x3c00000, 0xba98d27, 0xaab4d7d8, 0xaab4d7d7, 0x3c00010},
574{0x3c00000, 0xba98d27, 0x966320b, 0xbb0beb7, 0x3c00010},
575{0x3c00000, 0xba98d27, 0xb26bddee, 0xb26bdded, 0x3c00010},
576{0x3c00000, 0xba98d27, 0xb5c8e5d3, 0xb5c8e5d2, 0x3c00010},
577{0x3c00000, 0xba98d27, 0x317285d3, 0x317285d3, 0x3c00010},
578{0x3c00000, 0xba98d27, 0x3c9623b1, 0x3c9623b1, 0x3c00010},
579{0x3c00000, 0xba98d27, 0x51fd2c7c, 0x51fd2c7c, 0x3c00010},
580{0x3c00000, 0xba98d27, 0x7b906a6c, 0x7b906a6c, 0x3c00010},
581{0x3c00000, 0xba98d7a, 0x0, 0xba98d7a, 0x3c00000},
582{0x3c00000, 0xba98d7a, 0x1, 0xba98d7a, 0x3c00080},
583{0x3c00000, 0xba98d7a, 0x76, 0xba98d7a, 0x3c00080},
584{0x3c00000, 0xba98d7a, 0x2b94, 0xba98d7a, 0x3c00080},
585{0x3c00000, 0xba98d7a, 0x636d24, 0xba98d7a, 0x3c00080},
586{0x3c00000, 0xba98d7a, 0x7fffff, 0xba98d7a, 0x3c00080},
587{0x3c00000, 0xba98d7a, 0x800000, 0xba98d7c, 0x3c00000},
588{0x3c00000, 0xba98d7a, 0x800002, 0xba98d7c, 0x3c00010},
589{0x3c00000, 0xba98d7a, 0x1398437, 0xba98d7f, 0x3c00010},
590{0x3c00000, 0xba98d7a, 0xba98d27, 0xc298d50, 0x3c00010},
591{0x3c00000, 0xba98d7a, 0xba98d7a, 0xc298d7a, 0x3c00000},
592{0x3c00000, 0xba98d7a, 0x751f853a, 0x751f853a, 0x3c00010},
593{0x3c00000, 0xba98d7a, 0x7f7ffff0, 0x7f7ffff0, 0x3c00010},
594{0x3c00000, 0xba98d7a, 0x7f7fffff, 0x7f7fffff, 0x3c00010},
595{0x3c00000, 0xba98d7a, 0x7f800000, 0x7f800000, 0x3c00000},
596{0x3c00000, 0xba98d7a, 0x7f800001, 0x7fc00000, 0x3c00001},
597{0x3c00000, 0xba98d7a, 0x7f984a37, 0x7fc00000, 0x3c00001},
598{0x3c00000, 0xba98d7a, 0x7fbfffff, 0x7fc00000, 0x3c00001},
599{0x3c00000, 0xba98d7a, 0x7fc00000, 0x7fc00000, 0x3c00000},
600{0x3c00000, 0xba98d7a, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
601{0x3c00000, 0xba98d7a, 0x7fffffff, 0x7fc00000, 0x3c00000},
602{0x3c00000, 0xba98d7a, 0x80000000, 0xba98d7a, 0x3c00000},
603{0x3c00000, 0xba98d7a, 0x80000001, 0xba98d7a, 0x3c00080},
604{0x3c00000, 0xba98d7a, 0x80000076, 0xba98d7a, 0x3c00080},
605{0x3c00000, 0xba98d7a, 0x80002b94, 0xba98d7a, 0x3c00080},
606{0x3c00000, 0xba98d7a, 0x80636d24, 0xba98d7a, 0x3c00080},
607{0x3c00000, 0xba98d7a, 0x807fffff, 0xba98d7a, 0x3c00080},
608{0x3c00000, 0xba98d7a, 0x80800000, 0xba98d78, 0x3c00000},
609{0x3c00000, 0xba98d7a, 0x80800002, 0xba98d77, 0x3c00010},
610{0x3c00000, 0xba98d7a, 0x81398437, 0xba98d74, 0x3c00010},
611{0x3c00000, 0xba98d7a, 0x8ba98d27, 0x3260000, 0x3c00000},
612{0x3c00000, 0xba98d7a, 0x8ba98d7a, 0x0, 0x3c00000},
613{0x3c00000, 0xba98d7a, 0xf51f853a, 0xf51f8539, 0x3c00010},
614{0x3c00000, 0xba98d7a, 0xff7ffff0, 0xff7fffef, 0x3c00010},
615{0x3c00000, 0xba98d7a, 0xff7fffff, 0xff7ffffe, 0x3c00010},
616{0x3c00000, 0xba98d7a, 0xff800000, 0xff800000, 0x3c00000},
617{0x3c00000, 0xba98d7a, 0xff800001, 0x7fc00000, 0x3c00001},
618{0x3c00000, 0xba98d7a, 0xff984a37, 0x7fc00000, 0x3c00001},
619{0x3c00000, 0xba98d7a, 0xffbfffff, 0x7fc00000, 0x3c00001},
620{0x3c00000, 0xba98d7a, 0xffc00000, 0x7fc00000, 0x3c00000},
621{0x3c00000, 0xba98d7a, 0xffd9ba98, 0x7fc00000, 0x3c00000},
622{0x3c00000, 0xba98d7a, 0xffffffff, 0x7fc00000, 0x3c00000},
623{0x3c00000, 0xba98d7a, 0x4f3495cb, 0x4f3495cb, 0x3c00010},
624{0x3c00000, 0xba98d7a, 0xe73a5134, 0xe73a5133, 0x3c00010},
625{0x3c00000, 0xba98d7a, 0x7c994e9e, 0x7c994e9e, 0x3c00010},
626{0x3c00000, 0xba98d7a, 0x6164bd6c, 0x6164bd6c, 0x3c00010},
627{0x3c00000, 0xba98d7a, 0x9503366, 0xbb00f15, 0x3c00010},
628{0x3c00000, 0xba98d7a, 0xbf5a97c9, 0xbf5a97c8, 0x3c00010},
629{0x3c00000, 0xba98d7a, 0xe6ff1a14, 0xe6ff1a13, 0x3c00010},
630{0x3c00000, 0xba98d7a, 0x77f31e2f, 0x77f31e2f, 0x3c00010},
631{0x3c00000, 0xba98d7a, 0xaab4d7d8, 0xaab4d7d7, 0x3c00010},
632{0x3c00000, 0xba98d7a, 0x966320b, 0xbb0bf0a, 0x3c00010},
633{0x3c00000, 0xba98d7a, 0xb26bddee, 0xb26bdded, 0x3c00010},
634{0x3c00000, 0xba98d7a, 0xb5c8e5d3, 0xb5c8e5d2, 0x3c00010},
635{0x3c00000, 0xba98d7a, 0x317285d3, 0x317285d3, 0x3c00010},
636{0x3c00000, 0xba98d7a, 0x3c9623b1, 0x3c9623b1, 0x3c00010},
637{0x3c00000, 0xba98d7a, 0x51fd2c7c, 0x51fd2c7c, 0x3c00010},
638{0x3c00000, 0xba98d7a, 0x7b906a6c, 0x7b906a6c, 0x3c00010},
639{0x3c00000, 0x751f853a, 0x0, 0x751f853a, 0x3c00000},
640{0x3c00000, 0x751f853a, 0x1, 0x751f853a, 0x3c00080},
641{0x3c00000, 0x751f853a, 0x76, 0x751f853a, 0x3c00080},
642{0x3c00000, 0x751f853a, 0x2b94, 0x751f853a, 0x3c00080},
643{0x3c00000, 0x751f853a, 0x636d24, 0x751f853a, 0x3c00080},
644{0x3c00000, 0x751f853a, 0x7fffff, 0x751f853a, 0x3c00080},
645{0x3c00000, 0x751f853a, 0x800000, 0x751f853a, 0x3c00010},
646{0x3c00000, 0x751f853a, 0x800002, 0x751f853a, 0x3c00010},
647{0x3c00000, 0x751f853a, 0x1398437, 0x751f853a, 0x3c00010},
648{0x3c00000, 0x751f853a, 0xba98d27, 0x751f853a, 0x3c00010},
649{0x3c00000, 0x751f853a, 0xba98d7a, 0x751f853a, 0x3c00010},
650{0x3c00000, 0x751f853a, 0x751f853a, 0x759f853a, 0x3c00000},
651{0x3c00000, 0x751f853a, 0x7f7ffff0, 0x7f7ffff9, 0x3c00010},
652{0x3c00000, 0x751f853a, 0x7f7fffff, 0x7f7fffff, 0x3c00014},
653{0x3c00000, 0x751f853a, 0x7f800000, 0x7f800000, 0x3c00000},
654{0x3c00000, 0x751f853a, 0x7f800001, 0x7fc00000, 0x3c00001},
655{0x3c00000, 0x751f853a, 0x7f984a37, 0x7fc00000, 0x3c00001},
656{0x3c00000, 0x751f853a, 0x7fbfffff, 0x7fc00000, 0x3c00001},
657{0x3c00000, 0x751f853a, 0x7fc00000, 0x7fc00000, 0x3c00000},
658{0x3c00000, 0x751f853a, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
659{0x3c00000, 0x751f853a, 0x7fffffff, 0x7fc00000, 0x3c00000},
660{0x3c00000, 0x751f853a, 0x80000000, 0x751f853a, 0x3c00000},
661{0x3c00000, 0x751f853a, 0x80000001, 0x751f853a, 0x3c00080},
662{0x3c00000, 0x751f853a, 0x80000076, 0x751f853a, 0x3c00080},
663{0x3c00000, 0x751f853a, 0x80002b94, 0x751f853a, 0x3c00080},
664{0x3c00000, 0x751f853a, 0x80636d24, 0x751f853a, 0x3c00080},
665{0x3c00000, 0x751f853a, 0x807fffff, 0x751f853a, 0x3c00080},
666{0x3c00000, 0x751f853a, 0x80800000, 0x751f8539, 0x3c00010},
667{0x3c00000, 0x751f853a, 0x80800002, 0x751f8539, 0x3c00010},
668{0x3c00000, 0x751f853a, 0x81398437, 0x751f8539, 0x3c00010},
669{0x3c00000, 0x751f853a, 0x8ba98d27, 0x751f8539, 0x3c00010},
670{0x3c00000, 0x751f853a, 0x8ba98d7a, 0x751f8539, 0x3c00010},
671{0x3c00000, 0x751f853a, 0xf51f853a, 0x0, 0x3c00000},
672{0x3c00000, 0x751f853a, 0xff7ffff0, 0xff7fffe6, 0x3c00010},
673{0x3c00000, 0x751f853a, 0xff7fffff, 0xff7ffff5, 0x3c00010},
674{0x3c00000, 0x751f853a, 0xff800000, 0xff800000, 0x3c00000},
675{0x3c00000, 0x751f853a, 0xff800001, 0x7fc00000, 0x3c00001},
676{0x3c00000, 0x751f853a, 0xff984a37, 0x7fc00000, 0x3c00001},
677{0x3c00000, 0x751f853a, 0xffbfffff, 0x7fc00000, 0x3c00001},
678{0x3c00000, 0x751f853a, 0xffc00000, 0x7fc00000, 0x3c00000},
679{0x3c00000, 0x751f853a, 0xffd9ba98, 0x7fc00000, 0x3c00000},
680{0x3c00000, 0x751f853a, 0xffffffff, 0x7fc00000, 0x3c00000},
681{0x3c00000, 0x751f853a, 0x4f3495cb, 0x751f853a, 0x3c00010},
682{0x3c00000, 0x751f853a, 0xe73a5134, 0x751f8539, 0x3c00010},
683{0x3c00000, 0x751f853a, 0x7c994e9e, 0x7c994fdd, 0x3c00010},
684{0x3c00000, 0x751f853a, 0x6164bd6c, 0x751f853a, 0x3c00010},
685{0x3c00000, 0x751f853a, 0x9503366, 0x751f853a, 0x3c00010},
686{0x3c00000, 0x751f853a, 0xbf5a97c9, 0x751f8539, 0x3c00010},
687{0x3c00000, 0x751f853a, 0xe6ff1a14, 0x751f8539, 0x3c00010},
688{0x3c00000, 0x751f853a, 0x77f31e2f, 0x77f81a58, 0x3c00010},
689{0x3c00000, 0x751f853a, 0xaab4d7d8, 0x751f8539, 0x3c00010},
690{0x3c00000, 0x751f853a, 0x966320b, 0x751f853a, 0x3c00010},
691{0x3c00000, 0x751f853a, 0xb26bddee, 0x751f8539, 0x3c00010},
692{0x3c00000, 0x751f853a, 0xb5c8e5d3, 0x751f8539, 0x3c00010},
693{0x3c00000, 0x751f853a, 0x317285d3, 0x751f853a, 0x3c00010},
694{0x3c00000, 0x751f853a, 0x3c9623b1, 0x751f853a, 0x3c00010},
695{0x3c00000, 0x751f853a, 0x51fd2c7c, 0x751f853a, 0x3c00010},
696{0x3c00000, 0x751f853a, 0x7b906a6c, 0x7b906f68, 0x3c00010},
697{0x3c00000, 0x7f7ffff0, 0x0, 0x7f7ffff0, 0x3c00000},
698{0x3c00000, 0x7f7ffff0, 0x1, 0x7f7ffff0, 0x3c00080},
699{0x3c00000, 0x7f7ffff0, 0x76, 0x7f7ffff0, 0x3c00080},
700{0x3c00000, 0x7f7ffff0, 0x2b94, 0x7f7ffff0, 0x3c00080},
701{0x3c00000, 0x7f7ffff0, 0x636d24, 0x7f7ffff0, 0x3c00080},
702{0x3c00000, 0x7f7ffff0, 0x7fffff, 0x7f7ffff0, 0x3c00080},
703{0x3c00000, 0x7f7ffff0, 0x800000, 0x7f7ffff0, 0x3c00010},
704{0x3c00000, 0x7f7ffff0, 0x800002, 0x7f7ffff0, 0x3c00010},
705{0x3c00000, 0x7f7ffff0, 0x1398437, 0x7f7ffff0, 0x3c00010},
706{0x3c00000, 0x7f7ffff0, 0xba98d27, 0x7f7ffff0, 0x3c00010},
707{0x3c00000, 0x7f7ffff0, 0xba98d7a, 0x7f7ffff0, 0x3c00010},
708{0x3c00000, 0x7f7ffff0, 0x751f853a, 0x7f7ffff9, 0x3c00010},
709{0x3c00000, 0x7f7ffff0, 0x7f7ffff0, 0x7f7fffff, 0x3c00014},
710{0x3c00000, 0x7f7ffff0, 0x7f7fffff, 0x7f7fffff, 0x3c00014},
711{0x3c00000, 0x7f7ffff0, 0x7f800000, 0x7f800000, 0x3c00000},
712{0x3c00000, 0x7f7ffff0, 0x7f800001, 0x7fc00000, 0x3c00001},
713{0x3c00000, 0x7f7ffff0, 0x7f984a37, 0x7fc00000, 0x3c00001},
714{0x3c00000, 0x7f7ffff0, 0x7fbfffff, 0x7fc00000, 0x3c00001},
715{0x3c00000, 0x7f7ffff0, 0x7fc00000, 0x7fc00000, 0x3c00000},
716{0x3c00000, 0x7f7ffff0, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
717{0x3c00000, 0x7f7ffff0, 0x7fffffff, 0x7fc00000, 0x3c00000},
718{0x3c00000, 0x7f7ffff0, 0x80000000, 0x7f7ffff0, 0x3c00000},
719{0x3c00000, 0x7f7ffff0, 0x80000001, 0x7f7ffff0, 0x3c00080},
720{0x3c00000, 0x7f7ffff0, 0x80000076, 0x7f7ffff0, 0x3c00080},
721{0x3c00000, 0x7f7ffff0, 0x80002b94, 0x7f7ffff0, 0x3c00080},
722{0x3c00000, 0x7f7ffff0, 0x80636d24, 0x7f7ffff0, 0x3c00080},
723{0x3c00000, 0x7f7ffff0, 0x807fffff, 0x7f7ffff0, 0x3c00080},
724{0x3c00000, 0x7f7ffff0, 0x80800000, 0x7f7fffef, 0x3c00010},
725{0x3c00000, 0x7f7ffff0, 0x80800002, 0x7f7fffef, 0x3c00010},
726{0x3c00000, 0x7f7ffff0, 0x81398437, 0x7f7fffef, 0x3c00010},
727{0x3c00000, 0x7f7ffff0, 0x8ba98d27, 0x7f7fffef, 0x3c00010},
728{0x3c00000, 0x7f7ffff0, 0x8ba98d7a, 0x7f7fffef, 0x3c00010},
729{0x3c00000, 0x7f7ffff0, 0xf51f853a, 0x7f7fffe6, 0x3c00010},
730{0x3c00000, 0x7f7ffff0, 0xff7ffff0, 0x0, 0x3c00000},
731{0x3c00000, 0x7f7ffff0, 0xff7fffff, 0xf5700000, 0x3c00000},
732{0x3c00000, 0x7f7ffff0, 0xff800000, 0xff800000, 0x3c00000},
733{0x3c00000, 0x7f7ffff0, 0xff800001, 0x7fc00000, 0x3c00001},
734{0x3c00000, 0x7f7ffff0, 0xff984a37, 0x7fc00000, 0x3c00001},
735{0x3c00000, 0x7f7ffff0, 0xffbfffff, 0x7fc00000, 0x3c00001},
736{0x3c00000, 0x7f7ffff0, 0xffc00000, 0x7fc00000, 0x3c00000},
737{0x3c00000, 0x7f7ffff0, 0xffd9ba98, 0x7fc00000, 0x3c00000},
738{0x3c00000, 0x7f7ffff0, 0xffffffff, 0x7fc00000, 0x3c00000},
739{0x3c00000, 0x7f7ffff0, 0x4f3495cb, 0x7f7ffff0, 0x3c00010},
740{0x3c00000, 0x7f7ffff0, 0xe73a5134, 0x7f7fffef, 0x3c00010},
741{0x3c00000, 0x7f7ffff0, 0x7c994e9e, 0x7f7fffff, 0x3c00014},
742{0x3c00000, 0x7f7ffff0, 0x6164bd6c, 0x7f7ffff0, 0x3c00010},
743{0x3c00000, 0x7f7ffff0, 0x9503366, 0x7f7ffff0, 0x3c00010},
744{0x3c00000, 0x7f7ffff0, 0xbf5a97c9, 0x7f7fffef, 0x3c00010},
745{0x3c00000, 0x7f7ffff0, 0xe6ff1a14, 0x7f7fffef, 0x3c00010},
746{0x3c00000, 0x7f7ffff0, 0x77f31e2f, 0x7f7fffff, 0x3c00014},
747{0x3c00000, 0x7f7ffff0, 0xaab4d7d8, 0x7f7fffef, 0x3c00010},
748{0x3c00000, 0x7f7ffff0, 0x966320b, 0x7f7ffff0, 0x3c00010},
749{0x3c00000, 0x7f7ffff0, 0xb26bddee, 0x7f7fffef, 0x3c00010},
750{0x3c00000, 0x7f7ffff0, 0xb5c8e5d3, 0x7f7fffef, 0x3c00010},
751{0x3c00000, 0x7f7ffff0, 0x317285d3, 0x7f7ffff0, 0x3c00010},
752{0x3c00000, 0x7f7ffff0, 0x3c9623b1, 0x7f7ffff0, 0x3c00010},
753{0x3c00000, 0x7f7ffff0, 0x51fd2c7c, 0x7f7ffff0, 0x3c00010},
754{0x3c00000, 0x7f7ffff0, 0x7b906a6c, 0x7f7fffff, 0x3c00014},
755{0x3c00000, 0x7f7fffff, 0x0, 0x7f7fffff, 0x3c00000},
756{0x3c00000, 0x7f7fffff, 0x1, 0x7f7fffff, 0x3c00080},
757{0x3c00000, 0x7f7fffff, 0x76, 0x7f7fffff, 0x3c00080},
758{0x3c00000, 0x7f7fffff, 0x2b94, 0x7f7fffff, 0x3c00080},
759{0x3c00000, 0x7f7fffff, 0x636d24, 0x7f7fffff, 0x3c00080},
760{0x3c00000, 0x7f7fffff, 0x7fffff, 0x7f7fffff, 0x3c00080},
761{0x3c00000, 0x7f7fffff, 0x800000, 0x7f7fffff, 0x3c00010},
762{0x3c00000, 0x7f7fffff, 0x800002, 0x7f7fffff, 0x3c00010},
763{0x3c00000, 0x7f7fffff, 0x1398437, 0x7f7fffff, 0x3c00010},
764{0x3c00000, 0x7f7fffff, 0xba98d27, 0x7f7fffff, 0x3c00010},
765{0x3c00000, 0x7f7fffff, 0xba98d7a, 0x7f7fffff, 0x3c00010},
766{0x3c00000, 0x7f7fffff, 0x751f853a, 0x7f7fffff, 0x3c00014},
767{0x3c00000, 0x7f7fffff, 0x7f7ffff0, 0x7f7fffff, 0x3c00014},
768{0x3c00000, 0x7f7fffff, 0x7f7fffff, 0x7f7fffff, 0x3c00014},
769{0x3c00000, 0x7f7fffff, 0x7f800000, 0x7f800000, 0x3c00000},
770{0x3c00000, 0x7f7fffff, 0x7f800001, 0x7fc00000, 0x3c00001},
771{0x3c00000, 0x7f7fffff, 0x7f984a37, 0x7fc00000, 0x3c00001},
772{0x3c00000, 0x7f7fffff, 0x7fbfffff, 0x7fc00000, 0x3c00001},
773{0x3c00000, 0x7f7fffff, 0x7fc00000, 0x7fc00000, 0x3c00000},
774{0x3c00000, 0x7f7fffff, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
775{0x3c00000, 0x7f7fffff, 0x7fffffff, 0x7fc00000, 0x3c00000},
776{0x3c00000, 0x7f7fffff, 0x80000000, 0x7f7fffff, 0x3c00000},
777{0x3c00000, 0x7f7fffff, 0x80000001, 0x7f7fffff, 0x3c00080},
778{0x3c00000, 0x7f7fffff, 0x80000076, 0x7f7fffff, 0x3c00080},
779{0x3c00000, 0x7f7fffff, 0x80002b94, 0x7f7fffff, 0x3c00080},
780{0x3c00000, 0x7f7fffff, 0x80636d24, 0x7f7fffff, 0x3c00080},
781{0x3c00000, 0x7f7fffff, 0x807fffff, 0x7f7fffff, 0x3c00080},
782{0x3c00000, 0x7f7fffff, 0x80800000, 0x7f7ffffe, 0x3c00010},
783{0x3c00000, 0x7f7fffff, 0x80800002, 0x7f7ffffe, 0x3c00010},
784{0x3c00000, 0x7f7fffff, 0x81398437, 0x7f7ffffe, 0x3c00010},
785{0x3c00000, 0x7f7fffff, 0x8ba98d27, 0x7f7ffffe, 0x3c00010},
786{0x3c00000, 0x7f7fffff, 0x8ba98d7a, 0x7f7ffffe, 0x3c00010},
787{0x3c00000, 0x7f7fffff, 0xf51f853a, 0x7f7ffff5, 0x3c00010},
788{0x3c00000, 0x7f7fffff, 0xff7ffff0, 0x75700000, 0x3c00000},
789{0x3c00000, 0x7f7fffff, 0xff7fffff, 0x0, 0x3c00000},
790{0x3c00000, 0x7f7fffff, 0xff800000, 0xff800000, 0x3c00000},
791{0x3c00000, 0x7f7fffff, 0xff800001, 0x7fc00000, 0x3c00001},
792{0x3c00000, 0x7f7fffff, 0xff984a37, 0x7fc00000, 0x3c00001},
793{0x3c00000, 0x7f7fffff, 0xffbfffff, 0x7fc00000, 0x3c00001},
794{0x3c00000, 0x7f7fffff, 0xffc00000, 0x7fc00000, 0x3c00000},
795{0x3c00000, 0x7f7fffff, 0xffd9ba98, 0x7fc00000, 0x3c00000},
796{0x3c00000, 0x7f7fffff, 0xffffffff, 0x7fc00000, 0x3c00000},
797{0x3c00000, 0x7f7fffff, 0x4f3495cb, 0x7f7fffff, 0x3c00010},
798{0x3c00000, 0x7f7fffff, 0xe73a5134, 0x7f7ffffe, 0x3c00010},
799{0x3c00000, 0x7f7fffff, 0x7c994e9e, 0x7f7fffff, 0x3c00014},
800{0x3c00000, 0x7f7fffff, 0x6164bd6c, 0x7f7fffff, 0x3c00010},
801{0x3c00000, 0x7f7fffff, 0x9503366, 0x7f7fffff, 0x3c00010},
802{0x3c00000, 0x7f7fffff, 0xbf5a97c9, 0x7f7ffffe, 0x3c00010},
803{0x3c00000, 0x7f7fffff, 0xe6ff1a14, 0x7f7ffffe, 0x3c00010},
804{0x3c00000, 0x7f7fffff, 0x77f31e2f, 0x7f7fffff, 0x3c00014},
805{0x3c00000, 0x7f7fffff, 0xaab4d7d8, 0x7f7ffffe, 0x3c00010},
806{0x3c00000, 0x7f7fffff, 0x966320b, 0x7f7fffff, 0x3c00010},
807{0x3c00000, 0x7f7fffff, 0xb26bddee, 0x7f7ffffe, 0x3c00010},
808{0x3c00000, 0x7f7fffff, 0xb5c8e5d3, 0x7f7ffffe, 0x3c00010},
809{0x3c00000, 0x7f7fffff, 0x317285d3, 0x7f7fffff, 0x3c00010},
810{0x3c00000, 0x7f7fffff, 0x3c9623b1, 0x7f7fffff, 0x3c00010},
811{0x3c00000, 0x7f7fffff, 0x51fd2c7c, 0x7f7fffff, 0x3c00010},
812{0x3c00000, 0x7f7fffff, 0x7b906a6c, 0x7f7fffff, 0x3c00014},
813{0x3c00000, 0x7f800000, 0x0, 0x7f800000, 0x3c00000},
814{0x3c00000, 0x7f800000, 0x1, 0x7f800000, 0x3c00080},
815{0x3c00000, 0x7f800000, 0x76, 0x7f800000, 0x3c00080},
816{0x3c00000, 0x7f800000, 0x2b94, 0x7f800000, 0x3c00080},
817{0x3c00000, 0x7f800000, 0x636d24, 0x7f800000, 0x3c00080},
818{0x3c00000, 0x7f800000, 0x7fffff, 0x7f800000, 0x3c00080},
819{0x3c00000, 0x7f800000, 0x800000, 0x7f800000, 0x3c00000},
820{0x3c00000, 0x7f800000, 0x800002, 0x7f800000, 0x3c00000},
821{0x3c00000, 0x7f800000, 0x1398437, 0x7f800000, 0x3c00000},
822{0x3c00000, 0x7f800000, 0xba98d27, 0x7f800000, 0x3c00000},
823{0x3c00000, 0x7f800000, 0xba98d7a, 0x7f800000, 0x3c00000},
824{0x3c00000, 0x7f800000, 0x751f853a, 0x7f800000, 0x3c00000},
825{0x3c00000, 0x7f800000, 0x7f7ffff0, 0x7f800000, 0x3c00000},
826{0x3c00000, 0x7f800000, 0x7f7fffff, 0x7f800000, 0x3c00000},
827{0x3c00000, 0x7f800000, 0x7f800000, 0x7f800000, 0x3c00000},
828{0x3c00000, 0x7f800000, 0x7f800001, 0x7fc00000, 0x3c00001},
829{0x3c00000, 0x7f800000, 0x7f984a37, 0x7fc00000, 0x3c00001},
830{0x3c00000, 0x7f800000, 0x7fbfffff, 0x7fc00000, 0x3c00001},
831{0x3c00000, 0x7f800000, 0x7fc00000, 0x7fc00000, 0x3c00000},
832{0x3c00000, 0x7f800000, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
833{0x3c00000, 0x7f800000, 0x7fffffff, 0x7fc00000, 0x3c00000},
834{0x3c00000, 0x7f800000, 0x80000000, 0x7f800000, 0x3c00000},
835{0x3c00000, 0x7f800000, 0x80000001, 0x7f800000, 0x3c00080},
836{0x3c00000, 0x7f800000, 0x80000076, 0x7f800000, 0x3c00080},
837{0x3c00000, 0x7f800000, 0x80002b94, 0x7f800000, 0x3c00080},
838{0x3c00000, 0x7f800000, 0x80636d24, 0x7f800000, 0x3c00080},
839{0x3c00000, 0x7f800000, 0x807fffff, 0x7f800000, 0x3c00080},
840{0x3c00000, 0x7f800000, 0x80800000, 0x7f800000, 0x3c00000},
841{0x3c00000, 0x7f800000, 0x80800002, 0x7f800000, 0x3c00000},
842{0x3c00000, 0x7f800000, 0x81398437, 0x7f800000, 0x3c00000},
843{0x3c00000, 0x7f800000, 0x8ba98d27, 0x7f800000, 0x3c00000},
844{0x3c00000, 0x7f800000, 0x8ba98d7a, 0x7f800000, 0x3c00000},
845{0x3c00000, 0x7f800000, 0xf51f853a, 0x7f800000, 0x3c00000},
846{0x3c00000, 0x7f800000, 0xff7ffff0, 0x7f800000, 0x3c00000},
847{0x3c00000, 0x7f800000, 0xff7fffff, 0x7f800000, 0x3c00000},
848{0x3c00000, 0x7f800000, 0xff800000, 0x7fc00000, 0x3c00001},
849{0x3c00000, 0x7f800000, 0xff800001, 0x7fc00000, 0x3c00001},
850{0x3c00000, 0x7f800000, 0xff984a37, 0x7fc00000, 0x3c00001},
851{0x3c00000, 0x7f800000, 0xffbfffff, 0x7fc00000, 0x3c00001},
852{0x3c00000, 0x7f800000, 0xffc00000, 0x7fc00000, 0x3c00000},
853{0x3c00000, 0x7f800000, 0xffd9ba98, 0x7fc00000, 0x3c00000},
854{0x3c00000, 0x7f800000, 0xffffffff, 0x7fc00000, 0x3c00000},
855{0x3c00000, 0x7f800000, 0x4f3495cb, 0x7f800000, 0x3c00000},
856{0x3c00000, 0x7f800000, 0xe73a5134, 0x7f800000, 0x3c00000},
857{0x3c00000, 0x7f800000, 0x7c994e9e, 0x7f800000, 0x3c00000},
858{0x3c00000, 0x7f800000, 0x6164bd6c, 0x7f800000, 0x3c00000},
859{0x3c00000, 0x7f800000, 0x9503366, 0x7f800000, 0x3c00000},
860{0x3c00000, 0x7f800000, 0xbf5a97c9, 0x7f800000, 0x3c00000},
861{0x3c00000, 0x7f800000, 0xe6ff1a14, 0x7f800000, 0x3c00000},
862{0x3c00000, 0x7f800000, 0x77f31e2f, 0x7f800000, 0x3c00000},
863{0x3c00000, 0x7f800000, 0xaab4d7d8, 0x7f800000, 0x3c00000},
864{0x3c00000, 0x7f800000, 0x966320b, 0x7f800000, 0x3c00000},
865{0x3c00000, 0x7f800000, 0xb26bddee, 0x7f800000, 0x3c00000},
866{0x3c00000, 0x7f800000, 0xb5c8e5d3, 0x7f800000, 0x3c00000},
867{0x3c00000, 0x7f800000, 0x317285d3, 0x7f800000, 0x3c00000},
868{0x3c00000, 0x7f800000, 0x3c9623b1, 0x7f800000, 0x3c00000},
869{0x3c00000, 0x7f800000, 0x51fd2c7c, 0x7f800000, 0x3c00000},
870{0x3c00000, 0x7f800000, 0x7b906a6c, 0x7f800000, 0x3c00000},
871{0x3c00000, 0x7f800001, 0x0, 0x7fc00000, 0x3c00001},
872{0x3c00000, 0x7f800001, 0x1, 0x7fc00000, 0x3c00081},
873{0x3c00000, 0x7f800001, 0x76, 0x7fc00000, 0x3c00081},
874{0x3c00000, 0x7f800001, 0x2b94, 0x7fc00000, 0x3c00081},
875{0x3c00000, 0x7f800001, 0x636d24, 0x7fc00000, 0x3c00081},
876{0x3c00000, 0x7f800001, 0x7fffff, 0x7fc00000, 0x3c00081},
877{0x3c00000, 0x7f800001, 0x800000, 0x7fc00000, 0x3c00001},
878{0x3c00000, 0x7f800001, 0x800002, 0x7fc00000, 0x3c00001},
879{0x3c00000, 0x7f800001, 0x1398437, 0x7fc00000, 0x3c00001},
880{0x3c00000, 0x7f800001, 0xba98d27, 0x7fc00000, 0x3c00001},
881{0x3c00000, 0x7f800001, 0xba98d7a, 0x7fc00000, 0x3c00001},
882{0x3c00000, 0x7f800001, 0x751f853a, 0x7fc00000, 0x3c00001},
883{0x3c00000, 0x7f800001, 0x7f7ffff0, 0x7fc00000, 0x3c00001},
884{0x3c00000, 0x7f800001, 0x7f7fffff, 0x7fc00000, 0x3c00001},
885{0x3c00000, 0x7f800001, 0x7f800000, 0x7fc00000, 0x3c00001},
886{0x3c00000, 0x7f800001, 0x7f800001, 0x7fc00000, 0x3c00001},
887{0x3c00000, 0x7f800001, 0x7f984a37, 0x7fc00000, 0x3c00001},
888{0x3c00000, 0x7f800001, 0x7fbfffff, 0x7fc00000, 0x3c00001},
889{0x3c00000, 0x7f800001, 0x7fc00000, 0x7fc00000, 0x3c00001},
890{0x3c00000, 0x7f800001, 0x7fd9ba98, 0x7fc00000, 0x3c00001},
891{0x3c00000, 0x7f800001, 0x7fffffff, 0x7fc00000, 0x3c00001},
892{0x3c00000, 0x7f800001, 0x80000000, 0x7fc00000, 0x3c00001},
893{0x3c00000, 0x7f800001, 0x80000001, 0x7fc00000, 0x3c00081},
894{0x3c00000, 0x7f800001, 0x80000076, 0x7fc00000, 0x3c00081},
895{0x3c00000, 0x7f800001, 0x80002b94, 0x7fc00000, 0x3c00081},
896{0x3c00000, 0x7f800001, 0x80636d24, 0x7fc00000, 0x3c00081},
897{0x3c00000, 0x7f800001, 0x807fffff, 0x7fc00000, 0x3c00081},
898{0x3c00000, 0x7f800001, 0x80800000, 0x7fc00000, 0x3c00001},
899{0x3c00000, 0x7f800001, 0x80800002, 0x7fc00000, 0x3c00001},
900{0x3c00000, 0x7f800001, 0x81398437, 0x7fc00000, 0x3c00001},
901{0x3c00000, 0x7f800001, 0x8ba98d27, 0x7fc00000, 0x3c00001},
902{0x3c00000, 0x7f800001, 0x8ba98d7a, 0x7fc00000, 0x3c00001},
903{0x3c00000, 0x7f800001, 0xf51f853a, 0x7fc00000, 0x3c00001},
904{0x3c00000, 0x7f800001, 0xff7ffff0, 0x7fc00000, 0x3c00001},
905{0x3c00000, 0x7f800001, 0xff7fffff, 0x7fc00000, 0x3c00001},
906{0x3c00000, 0x7f800001, 0xff800000, 0x7fc00000, 0x3c00001},
907{0x3c00000, 0x7f800001, 0xff800001, 0x7fc00000, 0x3c00001},
908{0x3c00000, 0x7f800001, 0xff984a37, 0x7fc00000, 0x3c00001},
909{0x3c00000, 0x7f800001, 0xffbfffff, 0x7fc00000, 0x3c00001},
910{0x3c00000, 0x7f800001, 0xffc00000, 0x7fc00000, 0x3c00001},
911{0x3c00000, 0x7f800001, 0xffd9ba98, 0x7fc00000, 0x3c00001},
912{0x3c00000, 0x7f800001, 0xffffffff, 0x7fc00000, 0x3c00001},
913{0x3c00000, 0x7f800001, 0x4f3495cb, 0x7fc00000, 0x3c00001},
914{0x3c00000, 0x7f800001, 0xe73a5134, 0x7fc00000, 0x3c00001},
915{0x3c00000, 0x7f800001, 0x7c994e9e, 0x7fc00000, 0x3c00001},
916{0x3c00000, 0x7f800001, 0x6164bd6c, 0x7fc00000, 0x3c00001},
917{0x3c00000, 0x7f800001, 0x9503366, 0x7fc00000, 0x3c00001},
918{0x3c00000, 0x7f800001, 0xbf5a97c9, 0x7fc00000, 0x3c00001},
919{0x3c00000, 0x7f800001, 0xe6ff1a14, 0x7fc00000, 0x3c00001},
920{0x3c00000, 0x7f800001, 0x77f31e2f, 0x7fc00000, 0x3c00001},
921{0x3c00000, 0x7f800001, 0xaab4d7d8, 0x7fc00000, 0x3c00001},
922{0x3c00000, 0x7f800001, 0x966320b, 0x7fc00000, 0x3c00001},
923{0x3c00000, 0x7f800001, 0xb26bddee, 0x7fc00000, 0x3c00001},
924{0x3c00000, 0x7f800001, 0xb5c8e5d3, 0x7fc00000, 0x3c00001},
925{0x3c00000, 0x7f800001, 0x317285d3, 0x7fc00000, 0x3c00001},
926{0x3c00000, 0x7f800001, 0x3c9623b1, 0x7fc00000, 0x3c00001},
927{0x3c00000, 0x7f800001, 0x51fd2c7c, 0x7fc00000, 0x3c00001},
928{0x3c00000, 0x7f800001, 0x7b906a6c, 0x7fc00000, 0x3c00001},
929{0x3c00000, 0x7f984a37, 0x0, 0x7fc00000, 0x3c00001},
930{0x3c00000, 0x7f984a37, 0x1, 0x7fc00000, 0x3c00081},
931{0x3c00000, 0x7f984a37, 0x76, 0x7fc00000, 0x3c00081},
932{0x3c00000, 0x7f984a37, 0x2b94, 0x7fc00000, 0x3c00081},
933{0x3c00000, 0x7f984a37, 0x636d24, 0x7fc00000, 0x3c00081},
934{0x3c00000, 0x7f984a37, 0x7fffff, 0x7fc00000, 0x3c00081},
935{0x3c00000, 0x7f984a37, 0x800000, 0x7fc00000, 0x3c00001},
936{0x3c00000, 0x7f984a37, 0x800002, 0x7fc00000, 0x3c00001},
937{0x3c00000, 0x7f984a37, 0x1398437, 0x7fc00000, 0x3c00001},
938{0x3c00000, 0x7f984a37, 0xba98d27, 0x7fc00000, 0x3c00001},
939{0x3c00000, 0x7f984a37, 0xba98d7a, 0x7fc00000, 0x3c00001},
940{0x3c00000, 0x7f984a37, 0x751f853a, 0x7fc00000, 0x3c00001},
941{0x3c00000, 0x7f984a37, 0x7f7ffff0, 0x7fc00000, 0x3c00001},
942{0x3c00000, 0x7f984a37, 0x7f7fffff, 0x7fc00000, 0x3c00001},
943{0x3c00000, 0x7f984a37, 0x7f800000, 0x7fc00000, 0x3c00001},
944{0x3c00000, 0x7f984a37, 0x7f800001, 0x7fc00000, 0x3c00001},
945{0x3c00000, 0x7f984a37, 0x7f984a37, 0x7fc00000, 0x3c00001},
946{0x3c00000, 0x7f984a37, 0x7fbfffff, 0x7fc00000, 0x3c00001},
947{0x3c00000, 0x7f984a37, 0x7fc00000, 0x7fc00000, 0x3c00001},
948{0x3c00000, 0x7f984a37, 0x7fd9ba98, 0x7fc00000, 0x3c00001},
949{0x3c00000, 0x7f984a37, 0x7fffffff, 0x7fc00000, 0x3c00001},
950{0x3c00000, 0x7f984a37, 0x80000000, 0x7fc00000, 0x3c00001},
951{0x3c00000, 0x7f984a37, 0x80000001, 0x7fc00000, 0x3c00081},
952{0x3c00000, 0x7f984a37, 0x80000076, 0x7fc00000, 0x3c00081},
953{0x3c00000, 0x7f984a37, 0x80002b94, 0x7fc00000, 0x3c00081},
954{0x3c00000, 0x7f984a37, 0x80636d24, 0x7fc00000, 0x3c00081},
955{0x3c00000, 0x7f984a37, 0x807fffff, 0x7fc00000, 0x3c00081},
956{0x3c00000, 0x7f984a37, 0x80800000, 0x7fc00000, 0x3c00001},
957{0x3c00000, 0x7f984a37, 0x80800002, 0x7fc00000, 0x3c00001},
958{0x3c00000, 0x7f984a37, 0x81398437, 0x7fc00000, 0x3c00001},
959{0x3c00000, 0x7f984a37, 0x8ba98d27, 0x7fc00000, 0x3c00001},
960{0x3c00000, 0x7f984a37, 0x8ba98d7a, 0x7fc00000, 0x3c00001},
961{0x3c00000, 0x7f984a37, 0xf51f853a, 0x7fc00000, 0x3c00001},
962{0x3c00000, 0x7f984a37, 0xff7ffff0, 0x7fc00000, 0x3c00001},
963{0x3c00000, 0x7f984a37, 0xff7fffff, 0x7fc00000, 0x3c00001},
964{0x3c00000, 0x7f984a37, 0xff800000, 0x7fc00000, 0x3c00001},
965{0x3c00000, 0x7f984a37, 0xff800001, 0x7fc00000, 0x3c00001},
966{0x3c00000, 0x7f984a37, 0xff984a37, 0x7fc00000, 0x3c00001},
967{0x3c00000, 0x7f984a37, 0xffbfffff, 0x7fc00000, 0x3c00001},
968{0x3c00000, 0x7f984a37, 0xffc00000, 0x7fc00000, 0x3c00001},
969{0x3c00000, 0x7f984a37, 0xffd9ba98, 0x7fc00000, 0x3c00001},
970{0x3c00000, 0x7f984a37, 0xffffffff, 0x7fc00000, 0x3c00001},
971{0x3c00000, 0x7f984a37, 0x4f3495cb, 0x7fc00000, 0x3c00001},
972{0x3c00000, 0x7f984a37, 0xe73a5134, 0x7fc00000, 0x3c00001},
973{0x3c00000, 0x7f984a37, 0x7c994e9e, 0x7fc00000, 0x3c00001},
974{0x3c00000, 0x7f984a37, 0x6164bd6c, 0x7fc00000, 0x3c00001},
975{0x3c00000, 0x7f984a37, 0x9503366, 0x7fc00000, 0x3c00001},
976{0x3c00000, 0x7f984a37, 0xbf5a97c9, 0x7fc00000, 0x3c00001},
977{0x3c00000, 0x7f984a37, 0xe6ff1a14, 0x7fc00000, 0x3c00001},
978{0x3c00000, 0x7f984a37, 0x77f31e2f, 0x7fc00000, 0x3c00001},
979{0x3c00000, 0x7f984a37, 0xaab4d7d8, 0x7fc00000, 0x3c00001},
980{0x3c00000, 0x7f984a37, 0x966320b, 0x7fc00000, 0x3c00001},
981{0x3c00000, 0x7f984a37, 0xb26bddee, 0x7fc00000, 0x3c00001},
982{0x3c00000, 0x7f984a37, 0xb5c8e5d3, 0x7fc00000, 0x3c00001},
983{0x3c00000, 0x7f984a37, 0x317285d3, 0x7fc00000, 0x3c00001},
984{0x3c00000, 0x7f984a37, 0x3c9623b1, 0x7fc00000, 0x3c00001},
985{0x3c00000, 0x7f984a37, 0x51fd2c7c, 0x7fc00000, 0x3c00001},
986{0x3c00000, 0x7f984a37, 0x7b906a6c, 0x7fc00000, 0x3c00001},
987{0x3c00000, 0x7fbfffff, 0x0, 0x7fc00000, 0x3c00001},
988{0x3c00000, 0x7fbfffff, 0x1, 0x7fc00000, 0x3c00081},
989{0x3c00000, 0x7fbfffff, 0x76, 0x7fc00000, 0x3c00081},
990{0x3c00000, 0x7fbfffff, 0x2b94, 0x7fc00000, 0x3c00081},
991{0x3c00000, 0x7fbfffff, 0x636d24, 0x7fc00000, 0x3c00081},
992{0x3c00000, 0x7fbfffff, 0x7fffff, 0x7fc00000, 0x3c00081},
993{0x3c00000, 0x7fbfffff, 0x800000, 0x7fc00000, 0x3c00001},
994{0x3c00000, 0x7fbfffff, 0x800002, 0x7fc00000, 0x3c00001},
995{0x3c00000, 0x7fbfffff, 0x1398437, 0x7fc00000, 0x3c00001},
996{0x3c00000, 0x7fbfffff, 0xba98d27, 0x7fc00000, 0x3c00001},
997{0x3c00000, 0x7fbfffff, 0xba98d7a, 0x7fc00000, 0x3c00001},
998{0x3c00000, 0x7fbfffff, 0x751f853a, 0x7fc00000, 0x3c00001},
999{0x3c00000, 0x7fbfffff, 0x7f7ffff0, 0x7fc00000, 0x3c00001},
1000{0x3c00000, 0x7fbfffff, 0x7f7fffff, 0x7fc00000, 0x3c00001},
1001{0x3c00000, 0x7fbfffff, 0x7f800000, 0x7fc00000, 0x3c00001},
1002{0x3c00000, 0x7fbfffff, 0x7f800001, 0x7fc00000, 0x3c00001},
1003{0x3c00000, 0x7fbfffff, 0x7f984a37, 0x7fc00000, 0x3c00001},
1004{0x3c00000, 0x7fbfffff, 0x7fbfffff, 0x7fc00000, 0x3c00001},
1005{0x3c00000, 0x7fbfffff, 0x7fc00000, 0x7fc00000, 0x3c00001},
1006{0x3c00000, 0x7fbfffff, 0x7fd9ba98, 0x7fc00000, 0x3c00001},
1007{0x3c00000, 0x7fbfffff, 0x7fffffff, 0x7fc00000, 0x3c00001},
1008{0x3c00000, 0x7fbfffff, 0x80000000, 0x7fc00000, 0x3c00001},
1009{0x3c00000, 0x7fbfffff, 0x80000001, 0x7fc00000, 0x3c00081},
1010{0x3c00000, 0x7fbfffff, 0x80000076, 0x7fc00000, 0x3c00081},
1011{0x3c00000, 0x7fbfffff, 0x80002b94, 0x7fc00000, 0x3c00081},
1012{0x3c00000, 0x7fbfffff, 0x80636d24, 0x7fc00000, 0x3c00081},
1013{0x3c00000, 0x7fbfffff, 0x807fffff, 0x7fc00000, 0x3c00081},
1014{0x3c00000, 0x7fbfffff, 0x80800000, 0x7fc00000, 0x3c00001},
1015{0x3c00000, 0x7fbfffff, 0x80800002, 0x7fc00000, 0x3c00001},
1016{0x3c00000, 0x7fbfffff, 0x81398437, 0x7fc00000, 0x3c00001},
1017{0x3c00000, 0x7fbfffff, 0x8ba98d27, 0x7fc00000, 0x3c00001},
1018{0x3c00000, 0x7fbfffff, 0x8ba98d7a, 0x7fc00000, 0x3c00001},
1019{0x3c00000, 0x7fbfffff, 0xf51f853a, 0x7fc00000, 0x3c00001},
1020{0x3c00000, 0x7fbfffff, 0xff7ffff0, 0x7fc00000, 0x3c00001},
1021{0x3c00000, 0x7fbfffff, 0xff7fffff, 0x7fc00000, 0x3c00001},
1022{0x3c00000, 0x7fbfffff, 0xff800000, 0x7fc00000, 0x3c00001},
1023{0x3c00000, 0x7fbfffff, 0xff800001, 0x7fc00000, 0x3c00001},
1024{0x3c00000, 0x7fbfffff, 0xff984a37, 0x7fc00000, 0x3c00001},
1025{0x3c00000, 0x7fbfffff, 0xffbfffff, 0x7fc00000, 0x3c00001},
1026{0x3c00000, 0x7fbfffff, 0xffc00000, 0x7fc00000, 0x3c00001},
1027{0x3c00000, 0x7fbfffff, 0xffd9ba98, 0x7fc00000, 0x3c00001},
1028{0x3c00000, 0x7fbfffff, 0xffffffff, 0x7fc00000, 0x3c00001},
1029{0x3c00000, 0x7fbfffff, 0x4f3495cb, 0x7fc00000, 0x3c00001},
1030{0x3c00000, 0x7fbfffff, 0xe73a5134, 0x7fc00000, 0x3c00001},
1031{0x3c00000, 0x7fbfffff, 0x7c994e9e, 0x7fc00000, 0x3c00001},
1032{0x3c00000, 0x7fbfffff, 0x6164bd6c, 0x7fc00000, 0x3c00001},
1033{0x3c00000, 0x7fbfffff, 0x9503366, 0x7fc00000, 0x3c00001},
1034{0x3c00000, 0x7fbfffff, 0xbf5a97c9, 0x7fc00000, 0x3c00001},
1035{0x3c00000, 0x7fbfffff, 0xe6ff1a14, 0x7fc00000, 0x3c00001},
1036{0x3c00000, 0x7fbfffff, 0x77f31e2f, 0x7fc00000, 0x3c00001},
1037{0x3c00000, 0x7fbfffff, 0xaab4d7d8, 0x7fc00000, 0x3c00001},
1038{0x3c00000, 0x7fbfffff, 0x966320b, 0x7fc00000, 0x3c00001},
1039{0x3c00000, 0x7fbfffff, 0xb26bddee, 0x7fc00000, 0x3c00001},
1040{0x3c00000, 0x7fbfffff, 0xb5c8e5d3, 0x7fc00000, 0x3c00001},
1041{0x3c00000, 0x7fbfffff, 0x317285d3, 0x7fc00000, 0x3c00001},
1042{0x3c00000, 0x7fbfffff, 0x3c9623b1, 0x7fc00000, 0x3c00001},
1043{0x3c00000, 0x7fbfffff, 0x51fd2c7c, 0x7fc00000, 0x3c00001},
1044{0x3c00000, 0x7fbfffff, 0x7b906a6c, 0x7fc00000, 0x3c00001},
1045{0x3c00000, 0x7fc00000, 0x0, 0x7fc00000, 0x3c00000},
1046{0x3c00000, 0x7fc00000, 0x1, 0x7fc00000, 0x3c00080},
1047{0x3c00000, 0x7fc00000, 0x76, 0x7fc00000, 0x3c00080},
1048{0x3c00000, 0x7fc00000, 0x2b94, 0x7fc00000, 0x3c00080},
1049{0x3c00000, 0x7fc00000, 0x636d24, 0x7fc00000, 0x3c00080},
1050{0x3c00000, 0x7fc00000, 0x7fffff, 0x7fc00000, 0x3c00080},
1051{0x3c00000, 0x7fc00000, 0x800000, 0x7fc00000, 0x3c00000},
1052{0x3c00000, 0x7fc00000, 0x800002, 0x7fc00000, 0x3c00000},
1053{0x3c00000, 0x7fc00000, 0x1398437, 0x7fc00000, 0x3c00000},
1054{0x3c00000, 0x7fc00000, 0xba98d27, 0x7fc00000, 0x3c00000},
1055{0x3c00000, 0x7fc00000, 0xba98d7a, 0x7fc00000, 0x3c00000},
1056{0x3c00000, 0x7fc00000, 0x751f853a, 0x7fc00000, 0x3c00000},
1057{0x3c00000, 0x7fc00000, 0x7f7ffff0, 0x7fc00000, 0x3c00000},
1058{0x3c00000, 0x7fc00000, 0x7f7fffff, 0x7fc00000, 0x3c00000},
1059{0x3c00000, 0x7fc00000, 0x7f800000, 0x7fc00000, 0x3c00000},
1060{0x3c00000, 0x7fc00000, 0x7f800001, 0x7fc00000, 0x3c00001},
1061{0x3c00000, 0x7fc00000, 0x7f984a37, 0x7fc00000, 0x3c00001},
1062{0x3c00000, 0x7fc00000, 0x7fbfffff, 0x7fc00000, 0x3c00001},
1063{0x3c00000, 0x7fc00000, 0x7fc00000, 0x7fc00000, 0x3c00000},
1064{0x3c00000, 0x7fc00000, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
1065{0x3c00000, 0x7fc00000, 0x7fffffff, 0x7fc00000, 0x3c00000},
1066{0x3c00000, 0x7fc00000, 0x80000000, 0x7fc00000, 0x3c00000},
1067{0x3c00000, 0x7fc00000, 0x80000001, 0x7fc00000, 0x3c00080},
1068{0x3c00000, 0x7fc00000, 0x80000076, 0x7fc00000, 0x3c00080},
1069{0x3c00000, 0x7fc00000, 0x80002b94, 0x7fc00000, 0x3c00080},
1070{0x3c00000, 0x7fc00000, 0x80636d24, 0x7fc00000, 0x3c00080},
1071{0x3c00000, 0x7fc00000, 0x807fffff, 0x7fc00000, 0x3c00080},
1072{0x3c00000, 0x7fc00000, 0x80800000, 0x7fc00000, 0x3c00000},
1073{0x3c00000, 0x7fc00000, 0x80800002, 0x7fc00000, 0x3c00000},
1074{0x3c00000, 0x7fc00000, 0x81398437, 0x7fc00000, 0x3c00000},
1075{0x3c00000, 0x7fc00000, 0x8ba98d27, 0x7fc00000, 0x3c00000},
1076{0x3c00000, 0x7fc00000, 0x8ba98d7a, 0x7fc00000, 0x3c00000},
1077{0x3c00000, 0x7fc00000, 0xf51f853a, 0x7fc00000, 0x3c00000},
1078{0x3c00000, 0x7fc00000, 0xff7ffff0, 0x7fc00000, 0x3c00000},
1079{0x3c00000, 0x7fc00000, 0xff7fffff, 0x7fc00000, 0x3c00000},
1080{0x3c00000, 0x7fc00000, 0xff800000, 0x7fc00000, 0x3c00000},
1081{0x3c00000, 0x7fc00000, 0xff800001, 0x7fc00000, 0x3c00001},
1082{0x3c00000, 0x7fc00000, 0xff984a37, 0x7fc00000, 0x3c00001},
1083{0x3c00000, 0x7fc00000, 0xffbfffff, 0x7fc00000, 0x3c00001},
1084{0x3c00000, 0x7fc00000, 0xffc00000, 0x7fc00000, 0x3c00000},
1085{0x3c00000, 0x7fc00000, 0xffd9ba98, 0x7fc00000, 0x3c00000},
1086{0x3c00000, 0x7fc00000, 0xffffffff, 0x7fc00000, 0x3c00000},
1087{0x3c00000, 0x7fc00000, 0x4f3495cb, 0x7fc00000, 0x3c00000},
1088{0x3c00000, 0x7fc00000, 0xe73a5134, 0x7fc00000, 0x3c00000},
1089{0x3c00000, 0x7fc00000, 0x7c994e9e, 0x7fc00000, 0x3c00000},
1090{0x3c00000, 0x7fc00000, 0x6164bd6c, 0x7fc00000, 0x3c00000},
1091{0x3c00000, 0x7fc00000, 0x9503366, 0x7fc00000, 0x3c00000},
1092{0x3c00000, 0x7fc00000, 0xbf5a97c9, 0x7fc00000, 0x3c00000},
1093{0x3c00000, 0x7fc00000, 0xe6ff1a14, 0x7fc00000, 0x3c00000},
1094{0x3c00000, 0x7fc00000, 0x77f31e2f, 0x7fc00000, 0x3c00000},
1095{0x3c00000, 0x7fc00000, 0xaab4d7d8, 0x7fc00000, 0x3c00000},
1096{0x3c00000, 0x7fc00000, 0x966320b, 0x7fc00000, 0x3c00000},
1097{0x3c00000, 0x7fc00000, 0xb26bddee, 0x7fc00000, 0x3c00000},
1098{0x3c00000, 0x7fc00000, 0xb5c8e5d3, 0x7fc00000, 0x3c00000},
1099{0x3c00000, 0x7fc00000, 0x317285d3, 0x7fc00000, 0x3c00000},
1100{0x3c00000, 0x7fc00000, 0x3c9623b1, 0x7fc00000, 0x3c00000},
1101{0x3c00000, 0x7fc00000, 0x51fd2c7c, 0x7fc00000, 0x3c00000},
1102{0x3c00000, 0x7fc00000, 0x7b906a6c, 0x7fc00000, 0x3c00000},
1103{0x3c00000, 0x7fd9ba98, 0x0, 0x7fc00000, 0x3c00000},
1104{0x3c00000, 0x7fd9ba98, 0x1, 0x7fc00000, 0x3c00080},
1105{0x3c00000, 0x7fd9ba98, 0x76, 0x7fc00000, 0x3c00080},
1106{0x3c00000, 0x7fd9ba98, 0x2b94, 0x7fc00000, 0x3c00080},
1107{0x3c00000, 0x7fd9ba98, 0x636d24, 0x7fc00000, 0x3c00080},
1108{0x3c00000, 0x7fd9ba98, 0x7fffff, 0x7fc00000, 0x3c00080},
1109{0x3c00000, 0x7fd9ba98, 0x800000, 0x7fc00000, 0x3c00000},
1110{0x3c00000, 0x7fd9ba98, 0x800002, 0x7fc00000, 0x3c00000},
1111{0x3c00000, 0x7fd9ba98, 0x1398437, 0x7fc00000, 0x3c00000},
1112{0x3c00000, 0x7fd9ba98, 0xba98d27, 0x7fc00000, 0x3c00000},
1113{0x3c00000, 0x7fd9ba98, 0xba98d7a, 0x7fc00000, 0x3c00000},
1114{0x3c00000, 0x7fd9ba98, 0x751f853a, 0x7fc00000, 0x3c00000},
1115{0x3c00000, 0x7fd9ba98, 0x7f7ffff0, 0x7fc00000, 0x3c00000},
1116{0x3c00000, 0x7fd9ba98, 0x7f7fffff, 0x7fc00000, 0x3c00000},
1117{0x3c00000, 0x7fd9ba98, 0x7f800000, 0x7fc00000, 0x3c00000},
1118{0x3c00000, 0x7fd9ba98, 0x7f800001, 0x7fc00000, 0x3c00001},
1119{0x3c00000, 0x7fd9ba98, 0x7f984a37, 0x7fc00000, 0x3c00001},
1120{0x3c00000, 0x7fd9ba98, 0x7fbfffff, 0x7fc00000, 0x3c00001},
1121{0x3c00000, 0x7fd9ba98, 0x7fc00000, 0x7fc00000, 0x3c00000},
1122{0x3c00000, 0x7fd9ba98, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
1123{0x3c00000, 0x7fd9ba98, 0x7fffffff, 0x7fc00000, 0x3c00000},
1124{0x3c00000, 0x7fd9ba98, 0x80000000, 0x7fc00000, 0x3c00000},
1125{0x3c00000, 0x7fd9ba98, 0x80000001, 0x7fc00000, 0x3c00080},
1126{0x3c00000, 0x7fd9ba98, 0x80000076, 0x7fc00000, 0x3c00080},
1127{0x3c00000, 0x7fd9ba98, 0x80002b94, 0x7fc00000, 0x3c00080},
1128{0x3c00000, 0x7fd9ba98, 0x80636d24, 0x7fc00000, 0x3c00080},
1129{0x3c00000, 0x7fd9ba98, 0x807fffff, 0x7fc00000, 0x3c00080},
1130{0x3c00000, 0x7fd9ba98, 0x80800000, 0x7fc00000, 0x3c00000},
1131{0x3c00000, 0x7fd9ba98, 0x80800002, 0x7fc00000, 0x3c00000},
1132{0x3c00000, 0x7fd9ba98, 0x81398437, 0x7fc00000, 0x3c00000},
1133{0x3c00000, 0x7fd9ba98, 0x8ba98d27, 0x7fc00000, 0x3c00000},
1134{0x3c00000, 0x7fd9ba98, 0x8ba98d7a, 0x7fc00000, 0x3c00000},
1135{0x3c00000, 0x7fd9ba98, 0xf51f853a, 0x7fc00000, 0x3c00000},
1136{0x3c00000, 0x7fd9ba98, 0xff7ffff0, 0x7fc00000, 0x3c00000},
1137{0x3c00000, 0x7fd9ba98, 0xff7fffff, 0x7fc00000, 0x3c00000},
1138{0x3c00000, 0x7fd9ba98, 0xff800000, 0x7fc00000, 0x3c00000},
1139{0x3c00000, 0x7fd9ba98, 0xff800001, 0x7fc00000, 0x3c00001},
1140{0x3c00000, 0x7fd9ba98, 0xff984a37, 0x7fc00000, 0x3c00001},
1141{0x3c00000, 0x7fd9ba98, 0xffbfffff, 0x7fc00000, 0x3c00001},
1142{0x3c00000, 0x7fd9ba98, 0xffc00000, 0x7fc00000, 0x3c00000},
1143{0x3c00000, 0x7fd9ba98, 0xffd9ba98, 0x7fc00000, 0x3c00000},
1144{0x3c00000, 0x7fd9ba98, 0xffffffff, 0x7fc00000, 0x3c00000},
1145{0x3c00000, 0x7fd9ba98, 0x4f3495cb, 0x7fc00000, 0x3c00000},
1146{0x3c00000, 0x7fd9ba98, 0xe73a5134, 0x7fc00000, 0x3c00000},
1147{0x3c00000, 0x7fd9ba98, 0x7c994e9e, 0x7fc00000, 0x3c00000},
1148{0x3c00000, 0x7fd9ba98, 0x6164bd6c, 0x7fc00000, 0x3c00000},
1149{0x3c00000, 0x7fd9ba98, 0x9503366, 0x7fc00000, 0x3c00000},
1150{0x3c00000, 0x7fd9ba98, 0xbf5a97c9, 0x7fc00000, 0x3c00000},
1151{0x3c00000, 0x7fd9ba98, 0xe6ff1a14, 0x7fc00000, 0x3c00000},
1152{0x3c00000, 0x7fd9ba98, 0x77f31e2f, 0x7fc00000, 0x3c00000},
1153{0x3c00000, 0x7fd9ba98, 0xaab4d7d8, 0x7fc00000, 0x3c00000},
1154{0x3c00000, 0x7fd9ba98, 0x966320b, 0x7fc00000, 0x3c00000},
1155{0x3c00000, 0x7fd9ba98, 0xb26bddee, 0x7fc00000, 0x3c00000},
1156{0x3c00000, 0x7fd9ba98, 0xb5c8e5d3, 0x7fc00000, 0x3c00000},
1157{0x3c00000, 0x7fd9ba98, 0x317285d3, 0x7fc00000, 0x3c00000},
1158{0x3c00000, 0x7fd9ba98, 0x3c9623b1, 0x7fc00000, 0x3c00000},
1159{0x3c00000, 0x7fd9ba98, 0x51fd2c7c, 0x7fc00000, 0x3c00000},
1160{0x3c00000, 0x7fd9ba98, 0x7b906a6c, 0x7fc00000, 0x3c00000},
1161{0x3c00000, 0x7fffffff, 0x0, 0x7fc00000, 0x3c00000},
1162{0x3c00000, 0x7fffffff, 0x1, 0x7fc00000, 0x3c00080},
1163{0x3c00000, 0x7fffffff, 0x76, 0x7fc00000, 0x3c00080},
1164{0x3c00000, 0x7fffffff, 0x2b94, 0x7fc00000, 0x3c00080},
1165{0x3c00000, 0x7fffffff, 0x636d24, 0x7fc00000, 0x3c00080},
1166{0x3c00000, 0x7fffffff, 0x7fffff, 0x7fc00000, 0x3c00080},
1167{0x3c00000, 0x7fffffff, 0x800000, 0x7fc00000, 0x3c00000},
1168{0x3c00000, 0x7fffffff, 0x800002, 0x7fc00000, 0x3c00000},
1169{0x3c00000, 0x7fffffff, 0x1398437, 0x7fc00000, 0x3c00000},
1170{0x3c00000, 0x7fffffff, 0xba98d27, 0x7fc00000, 0x3c00000},
1171{0x3c00000, 0x7fffffff, 0xba98d7a, 0x7fc00000, 0x3c00000},
1172{0x3c00000, 0x7fffffff, 0x751f853a, 0x7fc00000, 0x3c00000},
1173{0x3c00000, 0x7fffffff, 0x7f7ffff0, 0x7fc00000, 0x3c00000},
1174{0x3c00000, 0x7fffffff, 0x7f7fffff, 0x7fc00000, 0x3c00000},
1175{0x3c00000, 0x7fffffff, 0x7f800000, 0x7fc00000, 0x3c00000},
1176{0x3c00000, 0x7fffffff, 0x7f800001, 0x7fc00000, 0x3c00001},
1177{0x3c00000, 0x7fffffff, 0x7f984a37, 0x7fc00000, 0x3c00001},
1178{0x3c00000, 0x7fffffff, 0x7fbfffff, 0x7fc00000, 0x3c00001},
1179{0x3c00000, 0x7fffffff, 0x7fc00000, 0x7fc00000, 0x3c00000},
1180{0x3c00000, 0x7fffffff, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
1181{0x3c00000, 0x7fffffff, 0x7fffffff, 0x7fc00000, 0x3c00000},
1182{0x3c00000, 0x7fffffff, 0x80000000, 0x7fc00000, 0x3c00000},
1183{0x3c00000, 0x7fffffff, 0x80000001, 0x7fc00000, 0x3c00080},
1184{0x3c00000, 0x7fffffff, 0x80000076, 0x7fc00000, 0x3c00080},
1185{0x3c00000, 0x7fffffff, 0x80002b94, 0x7fc00000, 0x3c00080},
1186{0x3c00000, 0x7fffffff, 0x80636d24, 0x7fc00000, 0x3c00080},
1187{0x3c00000, 0x7fffffff, 0x807fffff, 0x7fc00000, 0x3c00080},
1188{0x3c00000, 0x7fffffff, 0x80800000, 0x7fc00000, 0x3c00000},
1189{0x3c00000, 0x7fffffff, 0x80800002, 0x7fc00000, 0x3c00000},
1190{0x3c00000, 0x7fffffff, 0x81398437, 0x7fc00000, 0x3c00000},
1191{0x3c00000, 0x7fffffff, 0x8ba98d27, 0x7fc00000, 0x3c00000},
1192{0x3c00000, 0x7fffffff, 0x8ba98d7a, 0x7fc00000, 0x3c00000},
1193{0x3c00000, 0x7fffffff, 0xf51f853a, 0x7fc00000, 0x3c00000},
1194{0x3c00000, 0x7fffffff, 0xff7ffff0, 0x7fc00000, 0x3c00000},
1195{0x3c00000, 0x7fffffff, 0xff7fffff, 0x7fc00000, 0x3c00000},
1196{0x3c00000, 0x7fffffff, 0xff800000, 0x7fc00000, 0x3c00000},
1197{0x3c00000, 0x7fffffff, 0xff800001, 0x7fc00000, 0x3c00001},
1198{0x3c00000, 0x7fffffff, 0xff984a37, 0x7fc00000, 0x3c00001},
1199{0x3c00000, 0x7fffffff, 0xffbfffff, 0x7fc00000, 0x3c00001},
1200{0x3c00000, 0x7fffffff, 0xffc00000, 0x7fc00000, 0x3c00000},
1201{0x3c00000, 0x7fffffff, 0xffd9ba98, 0x7fc00000, 0x3c00000},
1202{0x3c00000, 0x7fffffff, 0xffffffff, 0x7fc00000, 0x3c00000},
1203{0x3c00000, 0x7fffffff, 0x4f3495cb, 0x7fc00000, 0x3c00000},
1204{0x3c00000, 0x7fffffff, 0xe73a5134, 0x7fc00000, 0x3c00000},
1205{0x3c00000, 0x7fffffff, 0x7c994e9e, 0x7fc00000, 0x3c00000},
1206{0x3c00000, 0x7fffffff, 0x6164bd6c, 0x7fc00000, 0x3c00000},
1207{0x3c00000, 0x7fffffff, 0x9503366, 0x7fc00000, 0x3c00000},
1208{0x3c00000, 0x7fffffff, 0xbf5a97c9, 0x7fc00000, 0x3c00000},
1209{0x3c00000, 0x7fffffff, 0xe6ff1a14, 0x7fc00000, 0x3c00000},
1210{0x3c00000, 0x7fffffff, 0x77f31e2f, 0x7fc00000, 0x3c00000},
1211{0x3c00000, 0x7fffffff, 0xaab4d7d8, 0x7fc00000, 0x3c00000},
1212{0x3c00000, 0x7fffffff, 0x966320b, 0x7fc00000, 0x3c00000},
1213{0x3c00000, 0x7fffffff, 0xb26bddee, 0x7fc00000, 0x3c00000},
1214{0x3c00000, 0x7fffffff, 0xb5c8e5d3, 0x7fc00000, 0x3c00000},
1215{0x3c00000, 0x7fffffff, 0x317285d3, 0x7fc00000, 0x3c00000},
1216{0x3c00000, 0x7fffffff, 0x3c9623b1, 0x7fc00000, 0x3c00000},
1217{0x3c00000, 0x7fffffff, 0x51fd2c7c, 0x7fc00000, 0x3c00000},
1218{0x3c00000, 0x7fffffff, 0x7b906a6c, 0x7fc00000, 0x3c00000},
1219{0x3c00000, 0x80000000, 0x0, 0x0, 0x3c00000},
1220{0x3c00000, 0x80000000, 0x1, 0x0, 0x3c00080},
1221{0x3c00000, 0x80000000, 0x76, 0x0, 0x3c00080},
1222{0x3c00000, 0x80000000, 0x2b94, 0x0, 0x3c00080},
1223{0x3c00000, 0x80000000, 0x636d24, 0x0, 0x3c00080},
1224{0x3c00000, 0x80000000, 0x7fffff, 0x0, 0x3c00080},
1225{0x3c00000, 0x80000000, 0x800000, 0x800000, 0x3c00000},
1226{0x3c00000, 0x80000000, 0x800002, 0x800002, 0x3c00000},
1227{0x3c00000, 0x80000000, 0x1398437, 0x1398437, 0x3c00000},
1228{0x3c00000, 0x80000000, 0xba98d27, 0xba98d27, 0x3c00000},
1229{0x3c00000, 0x80000000, 0xba98d7a, 0xba98d7a, 0x3c00000},
1230{0x3c00000, 0x80000000, 0x751f853a, 0x751f853a, 0x3c00000},
1231{0x3c00000, 0x80000000, 0x7f7ffff0, 0x7f7ffff0, 0x3c00000},
1232{0x3c00000, 0x80000000, 0x7f7fffff, 0x7f7fffff, 0x3c00000},
1233{0x3c00000, 0x80000000, 0x7f800000, 0x7f800000, 0x3c00000},
1234{0x3c00000, 0x80000000, 0x7f800001, 0x7fc00000, 0x3c00001},
1235{0x3c00000, 0x80000000, 0x7f984a37, 0x7fc00000, 0x3c00001},
1236{0x3c00000, 0x80000000, 0x7fbfffff, 0x7fc00000, 0x3c00001},
1237{0x3c00000, 0x80000000, 0x7fc00000, 0x7fc00000, 0x3c00000},
1238{0x3c00000, 0x80000000, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
1239{0x3c00000, 0x80000000, 0x7fffffff, 0x7fc00000, 0x3c00000},
1240{0x3c00000, 0x80000000, 0x80000000, 0x80000000, 0x3c00000},
1241{0x3c00000, 0x80000000, 0x80000001, 0x0, 0x3c00080},
1242{0x3c00000, 0x80000000, 0x80000076, 0x0, 0x3c00080},
1243{0x3c00000, 0x80000000, 0x80002b94, 0x0, 0x3c00080},
1244{0x3c00000, 0x80000000, 0x80636d24, 0x0, 0x3c00080},
1245{0x3c00000, 0x80000000, 0x807fffff, 0x0, 0x3c00080},
1246{0x3c00000, 0x80000000, 0x80800000, 0x80800000, 0x3c00000},
1247{0x3c00000, 0x80000000, 0x80800002, 0x80800002, 0x3c00000},
1248{0x3c00000, 0x80000000, 0x81398437, 0x81398437, 0x3c00000},
1249{0x3c00000, 0x80000000, 0x8ba98d27, 0x8ba98d27, 0x3c00000},
1250{0x3c00000, 0x80000000, 0x8ba98d7a, 0x8ba98d7a, 0x3c00000},
1251{0x3c00000, 0x80000000, 0xf51f853a, 0xf51f853a, 0x3c00000},
1252{0x3c00000, 0x80000000, 0xff7ffff0, 0xff7ffff0, 0x3c00000},
1253{0x3c00000, 0x80000000, 0xff7fffff, 0xff7fffff, 0x3c00000},
1254{0x3c00000, 0x80000000, 0xff800000, 0xff800000, 0x3c00000},
1255{0x3c00000, 0x80000000, 0xff800001, 0x7fc00000, 0x3c00001},
1256{0x3c00000, 0x80000000, 0xff984a37, 0x7fc00000, 0x3c00001},
1257{0x3c00000, 0x80000000, 0xffbfffff, 0x7fc00000, 0x3c00001},
1258{0x3c00000, 0x80000000, 0xffc00000, 0x7fc00000, 0x3c00000},
1259{0x3c00000, 0x80000000, 0xffd9ba98, 0x7fc00000, 0x3c00000},
1260{0x3c00000, 0x80000000, 0xffffffff, 0x7fc00000, 0x3c00000},
1261{0x3c00000, 0x80000000, 0x4f3495cb, 0x4f3495cb, 0x3c00000},
1262{0x3c00000, 0x80000000, 0xe73a5134, 0xe73a5134, 0x3c00000},
1263{0x3c00000, 0x80000000, 0x7c994e9e, 0x7c994e9e, 0x3c00000},
1264{0x3c00000, 0x80000000, 0x6164bd6c, 0x6164bd6c, 0x3c00000},
1265{0x3c00000, 0x80000000, 0x9503366, 0x9503366, 0x3c00000},
1266{0x3c00000, 0x80000000, 0xbf5a97c9, 0xbf5a97c9, 0x3c00000},
1267{0x3c00000, 0x80000000, 0xe6ff1a14, 0xe6ff1a14, 0x3c00000},
1268{0x3c00000, 0x80000000, 0x77f31e2f, 0x77f31e2f, 0x3c00000},
1269{0x3c00000, 0x80000000, 0xaab4d7d8, 0xaab4d7d8, 0x3c00000},
1270{0x3c00000, 0x80000000, 0x966320b, 0x966320b, 0x3c00000},
1271{0x3c00000, 0x80000000, 0xb26bddee, 0xb26bddee, 0x3c00000},
1272{0x3c00000, 0x80000000, 0xb5c8e5d3, 0xb5c8e5d3, 0x3c00000},
1273{0x3c00000, 0x80000000, 0x317285d3, 0x317285d3, 0x3c00000},
1274{0x3c00000, 0x80000000, 0x3c9623b1, 0x3c9623b1, 0x3c00000},
1275{0x3c00000, 0x80000000, 0x51fd2c7c, 0x51fd2c7c, 0x3c00000},
1276{0x3c00000, 0x80000000, 0x7b906a6c, 0x7b906a6c, 0x3c00000},
1277{0x3c00000, 0x80000001, 0x0, 0x0, 0x3c00080},
1278{0x3c00000, 0x80000001, 0x1, 0x0, 0x3c00080},
1279{0x3c00000, 0x80000001, 0x76, 0x0, 0x3c00080},
1280{0x3c00000, 0x80000001, 0x2b94, 0x0, 0x3c00080},
1281{0x3c00000, 0x80000001, 0x636d24, 0x0, 0x3c00080},
1282{0x3c00000, 0x80000001, 0x7fffff, 0x0, 0x3c00080},
1283{0x3c00000, 0x80000001, 0x800000, 0x800000, 0x3c00080},
1284{0x3c00000, 0x80000001, 0x800002, 0x800002, 0x3c00080},
1285{0x3c00000, 0x80000001, 0x1398437, 0x1398437, 0x3c00080},
1286{0x3c00000, 0x80000001, 0xba98d27, 0xba98d27, 0x3c00080},
1287{0x3c00000, 0x80000001, 0xba98d7a, 0xba98d7a, 0x3c00080},
1288{0x3c00000, 0x80000001, 0x751f853a, 0x751f853a, 0x3c00080},
1289{0x3c00000, 0x80000001, 0x7f7ffff0, 0x7f7ffff0, 0x3c00080},
1290{0x3c00000, 0x80000001, 0x7f7fffff, 0x7f7fffff, 0x3c00080},
1291{0x3c00000, 0x80000001, 0x7f800000, 0x7f800000, 0x3c00080},
1292{0x3c00000, 0x80000001, 0x7f800001, 0x7fc00000, 0x3c00081},
1293{0x3c00000, 0x80000001, 0x7f984a37, 0x7fc00000, 0x3c00081},
1294{0x3c00000, 0x80000001, 0x7fbfffff, 0x7fc00000, 0x3c00081},
1295{0x3c00000, 0x80000001, 0x7fc00000, 0x7fc00000, 0x3c00080},
1296{0x3c00000, 0x80000001, 0x7fd9ba98, 0x7fc00000, 0x3c00080},
1297{0x3c00000, 0x80000001, 0x7fffffff, 0x7fc00000, 0x3c00080},
1298{0x3c00000, 0x80000001, 0x80000000, 0x0, 0x3c00080},
1299{0x3c00000, 0x80000001, 0x80000001, 0x0, 0x3c00080},
1300{0x3c00000, 0x80000001, 0x80000076, 0x0, 0x3c00080},
1301{0x3c00000, 0x80000001, 0x80002b94, 0x0, 0x3c00080},
1302{0x3c00000, 0x80000001, 0x80636d24, 0x0, 0x3c00080},
1303{0x3c00000, 0x80000001, 0x807fffff, 0x0, 0x3c00080},
1304{0x3c00000, 0x80000001, 0x80800000, 0x80800000, 0x3c00080},
1305{0x3c00000, 0x80000001, 0x80800002, 0x80800002, 0x3c00080},
1306{0x3c00000, 0x80000001, 0x81398437, 0x81398437, 0x3c00080},
1307{0x3c00000, 0x80000001, 0x8ba98d27, 0x8ba98d27, 0x3c00080},
1308{0x3c00000, 0x80000001, 0x8ba98d7a, 0x8ba98d7a, 0x3c00080},
1309{0x3c00000, 0x80000001, 0xf51f853a, 0xf51f853a, 0x3c00080},
1310{0x3c00000, 0x80000001, 0xff7ffff0, 0xff7ffff0, 0x3c00080},
1311{0x3c00000, 0x80000001, 0xff7fffff, 0xff7fffff, 0x3c00080},
1312{0x3c00000, 0x80000001, 0xff800000, 0xff800000, 0x3c00080},
1313{0x3c00000, 0x80000001, 0xff800001, 0x7fc00000, 0x3c00081},
1314{0x3c00000, 0x80000001, 0xff984a37, 0x7fc00000, 0x3c00081},
1315{0x3c00000, 0x80000001, 0xffbfffff, 0x7fc00000, 0x3c00081},
1316{0x3c00000, 0x80000001, 0xffc00000, 0x7fc00000, 0x3c00080},
1317{0x3c00000, 0x80000001, 0xffd9ba98, 0x7fc00000, 0x3c00080},
1318{0x3c00000, 0x80000001, 0xffffffff, 0x7fc00000, 0x3c00080},
1319{0x3c00000, 0x80000001, 0x4f3495cb, 0x4f3495cb, 0x3c00080},
1320{0x3c00000, 0x80000001, 0xe73a5134, 0xe73a5134, 0x3c00080},
1321{0x3c00000, 0x80000001, 0x7c994e9e, 0x7c994e9e, 0x3c00080},
1322{0x3c00000, 0x80000001, 0x6164bd6c, 0x6164bd6c, 0x3c00080},
1323{0x3c00000, 0x80000001, 0x9503366, 0x9503366, 0x3c00080},
1324{0x3c00000, 0x80000001, 0xbf5a97c9, 0xbf5a97c9, 0x3c00080},
1325{0x3c00000, 0x80000001, 0xe6ff1a14, 0xe6ff1a14, 0x3c00080},
1326{0x3c00000, 0x80000001, 0x77f31e2f, 0x77f31e2f, 0x3c00080},
1327{0x3c00000, 0x80000001, 0xaab4d7d8, 0xaab4d7d8, 0x3c00080},
1328{0x3c00000, 0x80000001, 0x966320b, 0x966320b, 0x3c00080},
1329{0x3c00000, 0x80000001, 0xb26bddee, 0xb26bddee, 0x3c00080},
1330{0x3c00000, 0x80000001, 0xb5c8e5d3, 0xb5c8e5d3, 0x3c00080},
1331{0x3c00000, 0x80000001, 0x317285d3, 0x317285d3, 0x3c00080},
1332{0x3c00000, 0x80000001, 0x3c9623b1, 0x3c9623b1, 0x3c00080},
1333{0x3c00000, 0x80000001, 0x51fd2c7c, 0x51fd2c7c, 0x3c00080},
1334{0x3c00000, 0x80000001, 0x7b906a6c, 0x7b906a6c, 0x3c00080},
1335{0x3c00000, 0x80000076, 0x0, 0x0, 0x3c00080},
1336{0x3c00000, 0x80000076, 0x1, 0x0, 0x3c00080},
1337{0x3c00000, 0x80000076, 0x76, 0x0, 0x3c00080},
1338{0x3c00000, 0x80000076, 0x2b94, 0x0, 0x3c00080},
1339{0x3c00000, 0x80000076, 0x636d24, 0x0, 0x3c00080},
1340{0x3c00000, 0x80000076, 0x7fffff, 0x0, 0x3c00080},
1341{0x3c00000, 0x80000076, 0x800000, 0x800000, 0x3c00080},
1342{0x3c00000, 0x80000076, 0x800002, 0x800002, 0x3c00080},
1343{0x3c00000, 0x80000076, 0x1398437, 0x1398437, 0x3c00080},
1344{0x3c00000, 0x80000076, 0xba98d27, 0xba98d27, 0x3c00080},
1345{0x3c00000, 0x80000076, 0xba98d7a, 0xba98d7a, 0x3c00080},
1346{0x3c00000, 0x80000076, 0x751f853a, 0x751f853a, 0x3c00080},
1347{0x3c00000, 0x80000076, 0x7f7ffff0, 0x7f7ffff0, 0x3c00080},
1348{0x3c00000, 0x80000076, 0x7f7fffff, 0x7f7fffff, 0x3c00080},
1349{0x3c00000, 0x80000076, 0x7f800000, 0x7f800000, 0x3c00080},
1350{0x3c00000, 0x80000076, 0x7f800001, 0x7fc00000, 0x3c00081},
1351{0x3c00000, 0x80000076, 0x7f984a37, 0x7fc00000, 0x3c00081},
1352{0x3c00000, 0x80000076, 0x7fbfffff, 0x7fc00000, 0x3c00081},
1353{0x3c00000, 0x80000076, 0x7fc00000, 0x7fc00000, 0x3c00080},
1354{0x3c00000, 0x80000076, 0x7fd9ba98, 0x7fc00000, 0x3c00080},
1355{0x3c00000, 0x80000076, 0x7fffffff, 0x7fc00000, 0x3c00080},
1356{0x3c00000, 0x80000076, 0x80000000, 0x0, 0x3c00080},
1357{0x3c00000, 0x80000076, 0x80000001, 0x0, 0x3c00080},
1358{0x3c00000, 0x80000076, 0x80000076, 0x0, 0x3c00080},
1359{0x3c00000, 0x80000076, 0x80002b94, 0x0, 0x3c00080},
1360{0x3c00000, 0x80000076, 0x80636d24, 0x0, 0x3c00080},
1361{0x3c00000, 0x80000076, 0x807fffff, 0x0, 0x3c00080},
1362{0x3c00000, 0x80000076, 0x80800000, 0x80800000, 0x3c00080},
1363{0x3c00000, 0x80000076, 0x80800002, 0x80800002, 0x3c00080},
1364{0x3c00000, 0x80000076, 0x81398437, 0x81398437, 0x3c00080},
1365{0x3c00000, 0x80000076, 0x8ba98d27, 0x8ba98d27, 0x3c00080},
1366{0x3c00000, 0x80000076, 0x8ba98d7a, 0x8ba98d7a, 0x3c00080},
1367{0x3c00000, 0x80000076, 0xf51f853a, 0xf51f853a, 0x3c00080},
1368{0x3c00000, 0x80000076, 0xff7ffff0, 0xff7ffff0, 0x3c00080},
1369{0x3c00000, 0x80000076, 0xff7fffff, 0xff7fffff, 0x3c00080},
1370{0x3c00000, 0x80000076, 0xff800000, 0xff800000, 0x3c00080},
1371{0x3c00000, 0x80000076, 0xff800001, 0x7fc00000, 0x3c00081},
1372{0x3c00000, 0x80000076, 0xff984a37, 0x7fc00000, 0x3c00081},
1373{0x3c00000, 0x80000076, 0xffbfffff, 0x7fc00000, 0x3c00081},
1374{0x3c00000, 0x80000076, 0xffc00000, 0x7fc00000, 0x3c00080},
1375{0x3c00000, 0x80000076, 0xffd9ba98, 0x7fc00000, 0x3c00080},
1376{0x3c00000, 0x80000076, 0xffffffff, 0x7fc00000, 0x3c00080},
1377{0x3c00000, 0x80000076, 0x4f3495cb, 0x4f3495cb, 0x3c00080},
1378{0x3c00000, 0x80000076, 0xe73a5134, 0xe73a5134, 0x3c00080},
1379{0x3c00000, 0x80000076, 0x7c994e9e, 0x7c994e9e, 0x3c00080},
1380{0x3c00000, 0x80000076, 0x6164bd6c, 0x6164bd6c, 0x3c00080},
1381{0x3c00000, 0x80000076, 0x9503366, 0x9503366, 0x3c00080},
1382{0x3c00000, 0x80000076, 0xbf5a97c9, 0xbf5a97c9, 0x3c00080},
1383{0x3c00000, 0x80000076, 0xe6ff1a14, 0xe6ff1a14, 0x3c00080},
1384{0x3c00000, 0x80000076, 0x77f31e2f, 0x77f31e2f, 0x3c00080},
1385{0x3c00000, 0x80000076, 0xaab4d7d8, 0xaab4d7d8, 0x3c00080},
1386{0x3c00000, 0x80000076, 0x966320b, 0x966320b, 0x3c00080},
1387{0x3c00000, 0x80000076, 0xb26bddee, 0xb26bddee, 0x3c00080},
1388{0x3c00000, 0x80000076, 0xb5c8e5d3, 0xb5c8e5d3, 0x3c00080},
1389{0x3c00000, 0x80000076, 0x317285d3, 0x317285d3, 0x3c00080},
1390{0x3c00000, 0x80000076, 0x3c9623b1, 0x3c9623b1, 0x3c00080},
1391{0x3c00000, 0x80000076, 0x51fd2c7c, 0x51fd2c7c, 0x3c00080},
1392{0x3c00000, 0x80000076, 0x7b906a6c, 0x7b906a6c, 0x3c00080},
1393{0x3c00000, 0x80002b94, 0x0, 0x0, 0x3c00080},
1394{0x3c00000, 0x80002b94, 0x1, 0x0, 0x3c00080},
1395{0x3c00000, 0x80002b94, 0x76, 0x0, 0x3c00080},
1396{0x3c00000, 0x80002b94, 0x2b94, 0x0, 0x3c00080},
1397{0x3c00000, 0x80002b94, 0x636d24, 0x0, 0x3c00080},
1398{0x3c00000, 0x80002b94, 0x7fffff, 0x0, 0x3c00080},
1399{0x3c00000, 0x80002b94, 0x800000, 0x800000, 0x3c00080},
1400{0x3c00000, 0x80002b94, 0x800002, 0x800002, 0x3c00080},
1401{0x3c00000, 0x80002b94, 0x1398437, 0x1398437, 0x3c00080},
1402{0x3c00000, 0x80002b94, 0xba98d27, 0xba98d27, 0x3c00080},
1403{0x3c00000, 0x80002b94, 0xba98d7a, 0xba98d7a, 0x3c00080},
1404{0x3c00000, 0x80002b94, 0x751f853a, 0x751f853a, 0x3c00080},
1405{0x3c00000, 0x80002b94, 0x7f7ffff0, 0x7f7ffff0, 0x3c00080},
1406{0x3c00000, 0x80002b94, 0x7f7fffff, 0x7f7fffff, 0x3c00080},
1407{0x3c00000, 0x80002b94, 0x7f800000, 0x7f800000, 0x3c00080},
1408{0x3c00000, 0x80002b94, 0x7f800001, 0x7fc00000, 0x3c00081},
1409{0x3c00000, 0x80002b94, 0x7f984a37, 0x7fc00000, 0x3c00081},
1410{0x3c00000, 0x80002b94, 0x7fbfffff, 0x7fc00000, 0x3c00081},
1411{0x3c00000, 0x80002b94, 0x7fc00000, 0x7fc00000, 0x3c00080},
1412{0x3c00000, 0x80002b94, 0x7fd9ba98, 0x7fc00000, 0x3c00080},
1413{0x3c00000, 0x80002b94, 0x7fffffff, 0x7fc00000, 0x3c00080},
1414{0x3c00000, 0x80002b94, 0x80000000, 0x0, 0x3c00080},
1415{0x3c00000, 0x80002b94, 0x80000001, 0x0, 0x3c00080},
1416{0x3c00000, 0x80002b94, 0x80000076, 0x0, 0x3c00080},
1417{0x3c00000, 0x80002b94, 0x80002b94, 0x0, 0x3c00080},
1418{0x3c00000, 0x80002b94, 0x80636d24, 0x0, 0x3c00080},
1419{0x3c00000, 0x80002b94, 0x807fffff, 0x0, 0x3c00080},
1420{0x3c00000, 0x80002b94, 0x80800000, 0x80800000, 0x3c00080},
1421{0x3c00000, 0x80002b94, 0x80800002, 0x80800002, 0x3c00080},
1422{0x3c00000, 0x80002b94, 0x81398437, 0x81398437, 0x3c00080},
1423{0x3c00000, 0x80002b94, 0x8ba98d27, 0x8ba98d27, 0x3c00080},
1424{0x3c00000, 0x80002b94, 0x8ba98d7a, 0x8ba98d7a, 0x3c00080},
1425{0x3c00000, 0x80002b94, 0xf51f853a, 0xf51f853a, 0x3c00080},
1426{0x3c00000, 0x80002b94, 0xff7ffff0, 0xff7ffff0, 0x3c00080},
1427{0x3c00000, 0x80002b94, 0xff7fffff, 0xff7fffff, 0x3c00080},
1428{0x3c00000, 0x80002b94, 0xff800000, 0xff800000, 0x3c00080},
1429{0x3c00000, 0x80002b94, 0xff800001, 0x7fc00000, 0x3c00081},
1430{0x3c00000, 0x80002b94, 0xff984a37, 0x7fc00000, 0x3c00081},
1431{0x3c00000, 0x80002b94, 0xffbfffff, 0x7fc00000, 0x3c00081},
1432{0x3c00000, 0x80002b94, 0xffc00000, 0x7fc00000, 0x3c00080},
1433{0x3c00000, 0x80002b94, 0xffd9ba98, 0x7fc00000, 0x3c00080},
1434{0x3c00000, 0x80002b94, 0xffffffff, 0x7fc00000, 0x3c00080},
1435{0x3c00000, 0x80002b94, 0x4f3495cb, 0x4f3495cb, 0x3c00080},
1436{0x3c00000, 0x80002b94, 0xe73a5134, 0xe73a5134, 0x3c00080},
1437{0x3c00000, 0x80002b94, 0x7c994e9e, 0x7c994e9e, 0x3c00080},
1438{0x3c00000, 0x80002b94, 0x6164bd6c, 0x6164bd6c, 0x3c00080},
1439{0x3c00000, 0x80002b94, 0x9503366, 0x9503366, 0x3c00080},
1440{0x3c00000, 0x80002b94, 0xbf5a97c9, 0xbf5a97c9, 0x3c00080},
1441{0x3c00000, 0x80002b94, 0xe6ff1a14, 0xe6ff1a14, 0x3c00080},
1442{0x3c00000, 0x80002b94, 0x77f31e2f, 0x77f31e2f, 0x3c00080},
1443{0x3c00000, 0x80002b94, 0xaab4d7d8, 0xaab4d7d8, 0x3c00080},
1444{0x3c00000, 0x80002b94, 0x966320b, 0x966320b, 0x3c00080},
1445{0x3c00000, 0x80002b94, 0xb26bddee, 0xb26bddee, 0x3c00080},
1446{0x3c00000, 0x80002b94, 0xb5c8e5d3, 0xb5c8e5d3, 0x3c00080},
1447{0x3c00000, 0x80002b94, 0x317285d3, 0x317285d3, 0x3c00080},
1448{0x3c00000, 0x80002b94, 0x3c9623b1, 0x3c9623b1, 0x3c00080},
1449{0x3c00000, 0x80002b94, 0x51fd2c7c, 0x51fd2c7c, 0x3c00080},
1450{0x3c00000, 0x80002b94, 0x7b906a6c, 0x7b906a6c, 0x3c00080},
1451{0x3c00000, 0x80636d24, 0x0, 0x0, 0x3c00080},
1452{0x3c00000, 0x80636d24, 0x1, 0x0, 0x3c00080},
1453{0x3c00000, 0x80636d24, 0x76, 0x0, 0x3c00080},
1454{0x3c00000, 0x80636d24, 0x2b94, 0x0, 0x3c00080},
1455{0x3c00000, 0x80636d24, 0x636d24, 0x0, 0x3c00080},
1456{0x3c00000, 0x80636d24, 0x7fffff, 0x0, 0x3c00080},
1457{0x3c00000, 0x80636d24, 0x800000, 0x800000, 0x3c00080},
1458{0x3c00000, 0x80636d24, 0x800002, 0x800002, 0x3c00080},
1459{0x3c00000, 0x80636d24, 0x1398437, 0x1398437, 0x3c00080},
1460{0x3c00000, 0x80636d24, 0xba98d27, 0xba98d27, 0x3c00080},
1461{0x3c00000, 0x80636d24, 0xba98d7a, 0xba98d7a, 0x3c00080},
1462{0x3c00000, 0x80636d24, 0x751f853a, 0x751f853a, 0x3c00080},
1463{0x3c00000, 0x80636d24, 0x7f7ffff0, 0x7f7ffff0, 0x3c00080},
1464{0x3c00000, 0x80636d24, 0x7f7fffff, 0x7f7fffff, 0x3c00080},
1465{0x3c00000, 0x80636d24, 0x7f800000, 0x7f800000, 0x3c00080},
1466{0x3c00000, 0x80636d24, 0x7f800001, 0x7fc00000, 0x3c00081},
1467{0x3c00000, 0x80636d24, 0x7f984a37, 0x7fc00000, 0x3c00081},
1468{0x3c00000, 0x80636d24, 0x7fbfffff, 0x7fc00000, 0x3c00081},
1469{0x3c00000, 0x80636d24, 0x7fc00000, 0x7fc00000, 0x3c00080},
1470{0x3c00000, 0x80636d24, 0x7fd9ba98, 0x7fc00000, 0x3c00080},
1471{0x3c00000, 0x80636d24, 0x7fffffff, 0x7fc00000, 0x3c00080},
1472{0x3c00000, 0x80636d24, 0x80000000, 0x0, 0x3c00080},
1473{0x3c00000, 0x80636d24, 0x80000001, 0x0, 0x3c00080},
1474{0x3c00000, 0x80636d24, 0x80000076, 0x0, 0x3c00080},
1475{0x3c00000, 0x80636d24, 0x80002b94, 0x0, 0x3c00080},
1476{0x3c00000, 0x80636d24, 0x80636d24, 0x0, 0x3c00080},
1477{0x3c00000, 0x80636d24, 0x807fffff, 0x0, 0x3c00080},
1478{0x3c00000, 0x80636d24, 0x80800000, 0x80800000, 0x3c00080},
1479{0x3c00000, 0x80636d24, 0x80800002, 0x80800002, 0x3c00080},
1480{0x3c00000, 0x80636d24, 0x81398437, 0x81398437, 0x3c00080},
1481{0x3c00000, 0x80636d24, 0x8ba98d27, 0x8ba98d27, 0x3c00080},
1482{0x3c00000, 0x80636d24, 0x8ba98d7a, 0x8ba98d7a, 0x3c00080},
1483{0x3c00000, 0x80636d24, 0xf51f853a, 0xf51f853a, 0x3c00080},
1484{0x3c00000, 0x80636d24, 0xff7ffff0, 0xff7ffff0, 0x3c00080},
1485{0x3c00000, 0x80636d24, 0xff7fffff, 0xff7fffff, 0x3c00080},
1486{0x3c00000, 0x80636d24, 0xff800000, 0xff800000, 0x3c00080},
1487{0x3c00000, 0x80636d24, 0xff800001, 0x7fc00000, 0x3c00081},
1488{0x3c00000, 0x80636d24, 0xff984a37, 0x7fc00000, 0x3c00081},
1489{0x3c00000, 0x80636d24, 0xffbfffff, 0x7fc00000, 0x3c00081},
1490{0x3c00000, 0x80636d24, 0xffc00000, 0x7fc00000, 0x3c00080},
1491{0x3c00000, 0x80636d24, 0xffd9ba98, 0x7fc00000, 0x3c00080},
1492{0x3c00000, 0x80636d24, 0xffffffff, 0x7fc00000, 0x3c00080},
1493{0x3c00000, 0x80636d24, 0x4f3495cb, 0x4f3495cb, 0x3c00080},
1494{0x3c00000, 0x80636d24, 0xe73a5134, 0xe73a5134, 0x3c00080},
1495{0x3c00000, 0x80636d24, 0x7c994e9e, 0x7c994e9e, 0x3c00080},
1496{0x3c00000, 0x80636d24, 0x6164bd6c, 0x6164bd6c, 0x3c00080},
1497{0x3c00000, 0x80636d24, 0x9503366, 0x9503366, 0x3c00080},
1498{0x3c00000, 0x80636d24, 0xbf5a97c9, 0xbf5a97c9, 0x3c00080},
1499{0x3c00000, 0x80636d24, 0xe6ff1a14, 0xe6ff1a14, 0x3c00080},
1500{0x3c00000, 0x80636d24, 0x77f31e2f, 0x77f31e2f, 0x3c00080},
1501{0x3c00000, 0x80636d24, 0xaab4d7d8, 0xaab4d7d8, 0x3c00080},
1502{0x3c00000, 0x80636d24, 0x966320b, 0x966320b, 0x3c00080},
1503{0x3c00000, 0x80636d24, 0xb26bddee, 0xb26bddee, 0x3c00080},
1504{0x3c00000, 0x80636d24, 0xb5c8e5d3, 0xb5c8e5d3, 0x3c00080},
1505{0x3c00000, 0x80636d24, 0x317285d3, 0x317285d3, 0x3c00080},
1506{0x3c00000, 0x80636d24, 0x3c9623b1, 0x3c9623b1, 0x3c00080},
1507{0x3c00000, 0x80636d24, 0x51fd2c7c, 0x51fd2c7c, 0x3c00080},
1508{0x3c00000, 0x80636d24, 0x7b906a6c, 0x7b906a6c, 0x3c00080},
1509{0x3c00000, 0x807fffff, 0x0, 0x0, 0x3c00080},
1510{0x3c00000, 0x807fffff, 0x1, 0x0, 0x3c00080},
1511{0x3c00000, 0x807fffff, 0x76, 0x0, 0x3c00080},
1512{0x3c00000, 0x807fffff, 0x2b94, 0x0, 0x3c00080},
1513{0x3c00000, 0x807fffff, 0x636d24, 0x0, 0x3c00080},
1514{0x3c00000, 0x807fffff, 0x7fffff, 0x0, 0x3c00080},
1515{0x3c00000, 0x807fffff, 0x800000, 0x800000, 0x3c00080},
1516{0x3c00000, 0x807fffff, 0x800002, 0x800002, 0x3c00080},
1517{0x3c00000, 0x807fffff, 0x1398437, 0x1398437, 0x3c00080},
1518{0x3c00000, 0x807fffff, 0xba98d27, 0xba98d27, 0x3c00080},
1519{0x3c00000, 0x807fffff, 0xba98d7a, 0xba98d7a, 0x3c00080},
1520{0x3c00000, 0x807fffff, 0x751f853a, 0x751f853a, 0x3c00080},
1521{0x3c00000, 0x807fffff, 0x7f7ffff0, 0x7f7ffff0, 0x3c00080},
1522{0x3c00000, 0x807fffff, 0x7f7fffff, 0x7f7fffff, 0x3c00080},
1523{0x3c00000, 0x807fffff, 0x7f800000, 0x7f800000, 0x3c00080},
1524{0x3c00000, 0x807fffff, 0x7f800001, 0x7fc00000, 0x3c00081},
1525{0x3c00000, 0x807fffff, 0x7f984a37, 0x7fc00000, 0x3c00081},
1526{0x3c00000, 0x807fffff, 0x7fbfffff, 0x7fc00000, 0x3c00081},
1527{0x3c00000, 0x807fffff, 0x7fc00000, 0x7fc00000, 0x3c00080},
1528{0x3c00000, 0x807fffff, 0x7fd9ba98, 0x7fc00000, 0x3c00080},
1529{0x3c00000, 0x807fffff, 0x7fffffff, 0x7fc00000, 0x3c00080},
1530{0x3c00000, 0x807fffff, 0x80000000, 0x0, 0x3c00080},
1531{0x3c00000, 0x807fffff, 0x80000001, 0x0, 0x3c00080},
1532{0x3c00000, 0x807fffff, 0x80000076, 0x0, 0x3c00080},
1533{0x3c00000, 0x807fffff, 0x80002b94, 0x0, 0x3c00080},
1534{0x3c00000, 0x807fffff, 0x80636d24, 0x0, 0x3c00080},
1535{0x3c00000, 0x807fffff, 0x807fffff, 0x0, 0x3c00080},
1536{0x3c00000, 0x807fffff, 0x80800000, 0x80800000, 0x3c00080},
1537{0x3c00000, 0x807fffff, 0x80800002, 0x80800002, 0x3c00080},
1538{0x3c00000, 0x807fffff, 0x81398437, 0x81398437, 0x3c00080},
1539{0x3c00000, 0x807fffff, 0x8ba98d27, 0x8ba98d27, 0x3c00080},
1540{0x3c00000, 0x807fffff, 0x8ba98d7a, 0x8ba98d7a, 0x3c00080},
1541{0x3c00000, 0x807fffff, 0xf51f853a, 0xf51f853a, 0x3c00080},
1542{0x3c00000, 0x807fffff, 0xff7ffff0, 0xff7ffff0, 0x3c00080},
1543{0x3c00000, 0x807fffff, 0xff7fffff, 0xff7fffff, 0x3c00080},
1544{0x3c00000, 0x807fffff, 0xff800000, 0xff800000, 0x3c00080},
1545{0x3c00000, 0x807fffff, 0xff800001, 0x7fc00000, 0x3c00081},
1546{0x3c00000, 0x807fffff, 0xff984a37, 0x7fc00000, 0x3c00081},
1547{0x3c00000, 0x807fffff, 0xffbfffff, 0x7fc00000, 0x3c00081},
1548{0x3c00000, 0x807fffff, 0xffc00000, 0x7fc00000, 0x3c00080},
1549{0x3c00000, 0x807fffff, 0xffd9ba98, 0x7fc00000, 0x3c00080},
1550{0x3c00000, 0x807fffff, 0xffffffff, 0x7fc00000, 0x3c00080},
1551{0x3c00000, 0x807fffff, 0x4f3495cb, 0x4f3495cb, 0x3c00080},
1552{0x3c00000, 0x807fffff, 0xe73a5134, 0xe73a5134, 0x3c00080},
1553{0x3c00000, 0x807fffff, 0x7c994e9e, 0x7c994e9e, 0x3c00080},
1554{0x3c00000, 0x807fffff, 0x6164bd6c, 0x6164bd6c, 0x3c00080},
1555{0x3c00000, 0x807fffff, 0x9503366, 0x9503366, 0x3c00080},
1556{0x3c00000, 0x807fffff, 0xbf5a97c9, 0xbf5a97c9, 0x3c00080},
1557{0x3c00000, 0x807fffff, 0xe6ff1a14, 0xe6ff1a14, 0x3c00080},
1558{0x3c00000, 0x807fffff, 0x77f31e2f, 0x77f31e2f, 0x3c00080},
1559{0x3c00000, 0x807fffff, 0xaab4d7d8, 0xaab4d7d8, 0x3c00080},
1560{0x3c00000, 0x807fffff, 0x966320b, 0x966320b, 0x3c00080},
1561{0x3c00000, 0x807fffff, 0xb26bddee, 0xb26bddee, 0x3c00080},
1562{0x3c00000, 0x807fffff, 0xb5c8e5d3, 0xb5c8e5d3, 0x3c00080},
1563{0x3c00000, 0x807fffff, 0x317285d3, 0x317285d3, 0x3c00080},
1564{0x3c00000, 0x807fffff, 0x3c9623b1, 0x3c9623b1, 0x3c00080},
1565{0x3c00000, 0x807fffff, 0x51fd2c7c, 0x51fd2c7c, 0x3c00080},
1566{0x3c00000, 0x807fffff, 0x7b906a6c, 0x7b906a6c, 0x3c00080},
1567{0x3c00000, 0x80800000, 0x0, 0x80800000, 0x3c00000},
1568{0x3c00000, 0x80800000, 0x1, 0x80800000, 0x3c00080},
1569{0x3c00000, 0x80800000, 0x76, 0x80800000, 0x3c00080},
1570{0x3c00000, 0x80800000, 0x2b94, 0x80800000, 0x3c00080},
1571{0x3c00000, 0x80800000, 0x636d24, 0x80800000, 0x3c00080},
1572{0x3c00000, 0x80800000, 0x7fffff, 0x80800000, 0x3c00080},
1573{0x3c00000, 0x80800000, 0x800000, 0x0, 0x3c00000},
1574{0x3c00000, 0x80800000, 0x800002, 0x0, 0x3c00008},
1575{0x3c00000, 0x80800000, 0x1398437, 0xf3086e, 0x3c00000},
1576{0x3c00000, 0x80800000, 0xba98d27, 0xba98d25, 0x3c00000},
1577{0x3c00000, 0x80800000, 0xba98d7a, 0xba98d78, 0x3c00000},
1578{0x3c00000, 0x80800000, 0x751f853a, 0x751f8539, 0x3c00010},
1579{0x3c00000, 0x80800000, 0x7f7ffff0, 0x7f7fffef, 0x3c00010},
1580{0x3c00000, 0x80800000, 0x7f7fffff, 0x7f7ffffe, 0x3c00010},
1581{0x3c00000, 0x80800000, 0x7f800000, 0x7f800000, 0x3c00000},
1582{0x3c00000, 0x80800000, 0x7f800001, 0x7fc00000, 0x3c00001},
1583{0x3c00000, 0x80800000, 0x7f984a37, 0x7fc00000, 0x3c00001},
1584{0x3c00000, 0x80800000, 0x7fbfffff, 0x7fc00000, 0x3c00001},
1585{0x3c00000, 0x80800000, 0x7fc00000, 0x7fc00000, 0x3c00000},
1586{0x3c00000, 0x80800000, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
1587{0x3c00000, 0x80800000, 0x7fffffff, 0x7fc00000, 0x3c00000},
1588{0x3c00000, 0x80800000, 0x80000000, 0x80800000, 0x3c00000},
1589{0x3c00000, 0x80800000, 0x80000001, 0x80800000, 0x3c00080},
1590{0x3c00000, 0x80800000, 0x80000076, 0x80800000, 0x3c00080},
1591{0x3c00000, 0x80800000, 0x80002b94, 0x80800000, 0x3c00080},
1592{0x3c00000, 0x80800000, 0x80636d24, 0x80800000, 0x3c00080},
1593{0x3c00000, 0x80800000, 0x807fffff, 0x80800000, 0x3c00080},
1594{0x3c00000, 0x80800000, 0x80800000, 0x81000000, 0x3c00000},
1595{0x3c00000, 0x80800000, 0x80800002, 0x81000001, 0x3c00000},
1596{0x3c00000, 0x80800000, 0x81398437, 0x81798437, 0x3c00000},
1597{0x3c00000, 0x80800000, 0x8ba98d27, 0x8ba98d29, 0x3c00000},
1598{0x3c00000, 0x80800000, 0x8ba98d7a, 0x8ba98d7c, 0x3c00000},
1599{0x3c00000, 0x80800000, 0xf51f853a, 0xf51f853a, 0x3c00010},
1600{0x3c00000, 0x80800000, 0xff7ffff0, 0xff7ffff0, 0x3c00010},
1601{0x3c00000, 0x80800000, 0xff7fffff, 0xff7fffff, 0x3c00010},
1602{0x3c00000, 0x80800000, 0xff800000, 0xff800000, 0x3c00000},
1603{0x3c00000, 0x80800000, 0xff800001, 0x7fc00000, 0x3c00001},
1604{0x3c00000, 0x80800000, 0xff984a37, 0x7fc00000, 0x3c00001},
1605{0x3c00000, 0x80800000, 0xffbfffff, 0x7fc00000, 0x3c00001},
1606{0x3c00000, 0x80800000, 0xffc00000, 0x7fc00000, 0x3c00000},
1607{0x3c00000, 0x80800000, 0xffd9ba98, 0x7fc00000, 0x3c00000},
1608{0x3c00000, 0x80800000, 0xffffffff, 0x7fc00000, 0x3c00000},
1609{0x3c00000, 0x80800000, 0x4f3495cb, 0x4f3495ca, 0x3c00010},
1610{0x3c00000, 0x80800000, 0xe73a5134, 0xe73a5134, 0x3c00010},
1611{0x3c00000, 0x80800000, 0x7c994e9e, 0x7c994e9d, 0x3c00010},
1612{0x3c00000, 0x80800000, 0x6164bd6c, 0x6164bd6b, 0x3c00010},
1613{0x3c00000, 0x80800000, 0x9503366, 0x9503326, 0x3c00000},
1614{0x3c00000, 0x80800000, 0xbf5a97c9, 0xbf5a97c9, 0x3c00010},
1615{0x3c00000, 0x80800000, 0xe6ff1a14, 0xe6ff1a14, 0x3c00010},
1616{0x3c00000, 0x80800000, 0x77f31e2f, 0x77f31e2e, 0x3c00010},
1617{0x3c00000, 0x80800000, 0xaab4d7d8, 0xaab4d7d8, 0x3c00010},
1618{0x3c00000, 0x80800000, 0x966320b, 0x96631cb, 0x3c00000},
1619{0x3c00000, 0x80800000, 0xb26bddee, 0xb26bddee, 0x3c00010},
1620{0x3c00000, 0x80800000, 0xb5c8e5d3, 0xb5c8e5d3, 0x3c00010},
1621{0x3c00000, 0x80800000, 0x317285d3, 0x317285d2, 0x3c00010},
1622{0x3c00000, 0x80800000, 0x3c9623b1, 0x3c9623b0, 0x3c00010},
1623{0x3c00000, 0x80800000, 0x51fd2c7c, 0x51fd2c7b, 0x3c00010},
1624{0x3c00000, 0x80800000, 0x7b906a6c, 0x7b906a6b, 0x3c00010},
1625{0x3c00000, 0x80800002, 0x0, 0x80800002, 0x3c00000},
1626{0x3c00000, 0x80800002, 0x1, 0x80800002, 0x3c00080},
1627{0x3c00000, 0x80800002, 0x76, 0x80800002, 0x3c00080},
1628{0x3c00000, 0x80800002, 0x2b94, 0x80800002, 0x3c00080},
1629{0x3c00000, 0x80800002, 0x636d24, 0x80800002, 0x3c00080},
1630{0x3c00000, 0x80800002, 0x7fffff, 0x80800002, 0x3c00080},
1631{0x3c00000, 0x80800002, 0x800000, 0x0, 0x3c00008},
1632{0x3c00000, 0x80800002, 0x800002, 0x0, 0x3c00000},
1633{0x3c00000, 0x80800002, 0x1398437, 0xf3086c, 0x3c00000},
1634{0x3c00000, 0x80800002, 0xba98d27, 0xba98d24, 0x3c00010},
1635{0x3c00000, 0x80800002, 0xba98d7a, 0xba98d77, 0x3c00010},
1636{0x3c00000, 0x80800002, 0x751f853a, 0x751f8539, 0x3c00010},
1637{0x3c00000, 0x80800002, 0x7f7ffff0, 0x7f7fffef, 0x3c00010},
1638{0x3c00000, 0x80800002, 0x7f7fffff, 0x7f7ffffe, 0x3c00010},
1639{0x3c00000, 0x80800002, 0x7f800000, 0x7f800000, 0x3c00000},
1640{0x3c00000, 0x80800002, 0x7f800001, 0x7fc00000, 0x3c00001},
1641{0x3c00000, 0x80800002, 0x7f984a37, 0x7fc00000, 0x3c00001},
1642{0x3c00000, 0x80800002, 0x7fbfffff, 0x7fc00000, 0x3c00001},
1643{0x3c00000, 0x80800002, 0x7fc00000, 0x7fc00000, 0x3c00000},
1644{0x3c00000, 0x80800002, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
1645{0x3c00000, 0x80800002, 0x7fffffff, 0x7fc00000, 0x3c00000},
1646{0x3c00000, 0x80800002, 0x80000000, 0x80800002, 0x3c00000},
1647{0x3c00000, 0x80800002, 0x80000001, 0x80800002, 0x3c00080},
1648{0x3c00000, 0x80800002, 0x80000076, 0x80800002, 0x3c00080},
1649{0x3c00000, 0x80800002, 0x80002b94, 0x80800002, 0x3c00080},
1650{0x3c00000, 0x80800002, 0x80636d24, 0x80800002, 0x3c00080},
1651{0x3c00000, 0x80800002, 0x807fffff, 0x80800002, 0x3c00080},
1652{0x3c00000, 0x80800002, 0x80800000, 0x81000001, 0x3c00000},
1653{0x3c00000, 0x80800002, 0x80800002, 0x81000002, 0x3c00000},
1654{0x3c00000, 0x80800002, 0x81398437, 0x81798438, 0x3c00000},
1655{0x3c00000, 0x80800002, 0x8ba98d27, 0x8ba98d29, 0x3c00010},
1656{0x3c00000, 0x80800002, 0x8ba98d7a, 0x8ba98d7c, 0x3c00010},
1657{0x3c00000, 0x80800002, 0xf51f853a, 0xf51f853a, 0x3c00010},
1658{0x3c00000, 0x80800002, 0xff7ffff0, 0xff7ffff0, 0x3c00010},
1659{0x3c00000, 0x80800002, 0xff7fffff, 0xff7fffff, 0x3c00010},
1660{0x3c00000, 0x80800002, 0xff800000, 0xff800000, 0x3c00000},
1661{0x3c00000, 0x80800002, 0xff800001, 0x7fc00000, 0x3c00001},
1662{0x3c00000, 0x80800002, 0xff984a37, 0x7fc00000, 0x3c00001},
1663{0x3c00000, 0x80800002, 0xffbfffff, 0x7fc00000, 0x3c00001},
1664{0x3c00000, 0x80800002, 0xffc00000, 0x7fc00000, 0x3c00000},
1665{0x3c00000, 0x80800002, 0xffd9ba98, 0x7fc00000, 0x3c00000},
1666{0x3c00000, 0x80800002, 0xffffffff, 0x7fc00000, 0x3c00000},
1667{0x3c00000, 0x80800002, 0x4f3495cb, 0x4f3495ca, 0x3c00010},
1668{0x3c00000, 0x80800002, 0xe73a5134, 0xe73a5134, 0x3c00010},
1669{0x3c00000, 0x80800002, 0x7c994e9e, 0x7c994e9d, 0x3c00010},
1670{0x3c00000, 0x80800002, 0x6164bd6c, 0x6164bd6b, 0x3c00010},
1671{0x3c00000, 0x80800002, 0x9503366, 0x9503325, 0x3c00010},
1672{0x3c00000, 0x80800002, 0xbf5a97c9, 0xbf5a97c9, 0x3c00010},
1673{0x3c00000, 0x80800002, 0xe6ff1a14, 0xe6ff1a14, 0x3c00010},
1674{0x3c00000, 0x80800002, 0x77f31e2f, 0x77f31e2e, 0x3c00010},
1675{0x3c00000, 0x80800002, 0xaab4d7d8, 0xaab4d7d8, 0x3c00010},
1676{0x3c00000, 0x80800002, 0x966320b, 0x96631ca, 0x3c00010},
1677{0x3c00000, 0x80800002, 0xb26bddee, 0xb26bddee, 0x3c00010},
1678{0x3c00000, 0x80800002, 0xb5c8e5d3, 0xb5c8e5d3, 0x3c00010},
1679{0x3c00000, 0x80800002, 0x317285d3, 0x317285d2, 0x3c00010},
1680{0x3c00000, 0x80800002, 0x3c9623b1, 0x3c9623b0, 0x3c00010},
1681{0x3c00000, 0x80800002, 0x51fd2c7c, 0x51fd2c7b, 0x3c00010},
1682{0x3c00000, 0x80800002, 0x7b906a6c, 0x7b906a6b, 0x3c00010},
1683{0x3c00000, 0x81398437, 0x0, 0x81398437, 0x3c00000},
1684{0x3c00000, 0x81398437, 0x1, 0x81398437, 0x3c00080},
1685{0x3c00000, 0x81398437, 0x76, 0x81398437, 0x3c00080},
1686{0x3c00000, 0x81398437, 0x2b94, 0x81398437, 0x3c00080},
1687{0x3c00000, 0x81398437, 0x636d24, 0x81398437, 0x3c00080},
1688{0x3c00000, 0x81398437, 0x7fffff, 0x81398437, 0x3c00080},
1689{0x3c00000, 0x81398437, 0x800000, 0x80f3086e, 0x3c00000},
1690{0x3c00000, 0x81398437, 0x800002, 0x80f3086c, 0x3c00000},
1691{0x3c00000, 0x81398437, 0x1398437, 0x0, 0x3c00000},
1692{0x3c00000, 0x81398437, 0xba98d27, 0xba98d21, 0x3c00010},
1693{0x3c00000, 0x81398437, 0xba98d7a, 0xba98d74, 0x3c00010},
1694{0x3c00000, 0x81398437, 0x751f853a, 0x751f8539, 0x3c00010},
1695{0x3c00000, 0x81398437, 0x7f7ffff0, 0x7f7fffef, 0x3c00010},
1696{0x3c00000, 0x81398437, 0x7f7fffff, 0x7f7ffffe, 0x3c00010},
1697{0x3c00000, 0x81398437, 0x7f800000, 0x7f800000, 0x3c00000},
1698{0x3c00000, 0x81398437, 0x7f800001, 0x7fc00000, 0x3c00001},
1699{0x3c00000, 0x81398437, 0x7f984a37, 0x7fc00000, 0x3c00001},
1700{0x3c00000, 0x81398437, 0x7fbfffff, 0x7fc00000, 0x3c00001},
1701{0x3c00000, 0x81398437, 0x7fc00000, 0x7fc00000, 0x3c00000},
1702{0x3c00000, 0x81398437, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
1703{0x3c00000, 0x81398437, 0x7fffffff, 0x7fc00000, 0x3c00000},
1704{0x3c00000, 0x81398437, 0x80000000, 0x81398437, 0x3c00000},
1705{0x3c00000, 0x81398437, 0x80000001, 0x81398437, 0x3c00080},
1706{0x3c00000, 0x81398437, 0x80000076, 0x81398437, 0x3c00080},
1707{0x3c00000, 0x81398437, 0x80002b94, 0x81398437, 0x3c00080},
1708{0x3c00000, 0x81398437, 0x80636d24, 0x81398437, 0x3c00080},
1709{0x3c00000, 0x81398437, 0x807fffff, 0x81398437, 0x3c00080},
1710{0x3c00000, 0x81398437, 0x80800000, 0x81798437, 0x3c00000},
1711{0x3c00000, 0x81398437, 0x80800002, 0x81798438, 0x3c00000},
1712{0x3c00000, 0x81398437, 0x81398437, 0x81b98437, 0x3c00000},
1713{0x3c00000, 0x81398437, 0x8ba98d27, 0x8ba98d2c, 0x3c00010},
1714{0x3c00000, 0x81398437, 0x8ba98d7a, 0x8ba98d7f, 0x3c00010},
1715{0x3c00000, 0x81398437, 0xf51f853a, 0xf51f853a, 0x3c00010},
1716{0x3c00000, 0x81398437, 0xff7ffff0, 0xff7ffff0, 0x3c00010},
1717{0x3c00000, 0x81398437, 0xff7fffff, 0xff7fffff, 0x3c00010},
1718{0x3c00000, 0x81398437, 0xff800000, 0xff800000, 0x3c00000},
1719{0x3c00000, 0x81398437, 0xff800001, 0x7fc00000, 0x3c00001},
1720{0x3c00000, 0x81398437, 0xff984a37, 0x7fc00000, 0x3c00001},
1721{0x3c00000, 0x81398437, 0xffbfffff, 0x7fc00000, 0x3c00001},
1722{0x3c00000, 0x81398437, 0xffc00000, 0x7fc00000, 0x3c00000},
1723{0x3c00000, 0x81398437, 0xffd9ba98, 0x7fc00000, 0x3c00000},
1724{0x3c00000, 0x81398437, 0xffffffff, 0x7fc00000, 0x3c00000},
1725{0x3c00000, 0x81398437, 0x4f3495cb, 0x4f3495ca, 0x3c00010},
1726{0x3c00000, 0x81398437, 0xe73a5134, 0xe73a5134, 0x3c00010},
1727{0x3c00000, 0x81398437, 0x7c994e9e, 0x7c994e9d, 0x3c00010},
1728{0x3c00000, 0x81398437, 0x6164bd6c, 0x6164bd6b, 0x3c00010},
1729{0x3c00000, 0x81398437, 0x9503366, 0x95032ac, 0x3c00010},
1730{0x3c00000, 0x81398437, 0xbf5a97c9, 0xbf5a97c9, 0x3c00010},
1731{0x3c00000, 0x81398437, 0xe6ff1a14, 0xe6ff1a14, 0x3c00010},
1732{0x3c00000, 0x81398437, 0x77f31e2f, 0x77f31e2e, 0x3c00010},
1733{0x3c00000, 0x81398437, 0xaab4d7d8, 0xaab4d7d8, 0x3c00010},
1734{0x3c00000, 0x81398437, 0x966320b, 0x9663151, 0x3c00010},
1735{0x3c00000, 0x81398437, 0xb26bddee, 0xb26bddee, 0x3c00010},
1736{0x3c00000, 0x81398437, 0xb5c8e5d3, 0xb5c8e5d3, 0x3c00010},
1737{0x3c00000, 0x81398437, 0x317285d3, 0x317285d2, 0x3c00010},
1738{0x3c00000, 0x81398437, 0x3c9623b1, 0x3c9623b0, 0x3c00010},
1739{0x3c00000, 0x81398437, 0x51fd2c7c, 0x51fd2c7b, 0x3c00010},
1740{0x3c00000, 0x81398437, 0x7b906a6c, 0x7b906a6b, 0x3c00010},
1741{0x3c00000, 0x8ba98d27, 0x0, 0x8ba98d27, 0x3c00000},
1742{0x3c00000, 0x8ba98d27, 0x1, 0x8ba98d27, 0x3c00080},
1743{0x3c00000, 0x8ba98d27, 0x76, 0x8ba98d27, 0x3c00080},
1744{0x3c00000, 0x8ba98d27, 0x2b94, 0x8ba98d27, 0x3c00080},
1745{0x3c00000, 0x8ba98d27, 0x636d24, 0x8ba98d27, 0x3c00080},
1746{0x3c00000, 0x8ba98d27, 0x7fffff, 0x8ba98d27, 0x3c00080},
1747{0x3c00000, 0x8ba98d27, 0x800000, 0x8ba98d25, 0x3c00000},
1748{0x3c00000, 0x8ba98d27, 0x800002, 0x8ba98d24, 0x3c00010},
1749{0x3c00000, 0x8ba98d27, 0x1398437, 0x8ba98d21, 0x3c00010},
1750{0x3c00000, 0x8ba98d27, 0xba98d27, 0x0, 0x3c00000},
1751{0x3c00000, 0x8ba98d27, 0xba98d7a, 0x3260000, 0x3c00000},
1752{0x3c00000, 0x8ba98d27, 0x751f853a, 0x751f8539, 0x3c00010},
1753{0x3c00000, 0x8ba98d27, 0x7f7ffff0, 0x7f7fffef, 0x3c00010},
1754{0x3c00000, 0x8ba98d27, 0x7f7fffff, 0x7f7ffffe, 0x3c00010},
1755{0x3c00000, 0x8ba98d27, 0x7f800000, 0x7f800000, 0x3c00000},
1756{0x3c00000, 0x8ba98d27, 0x7f800001, 0x7fc00000, 0x3c00001},
1757{0x3c00000, 0x8ba98d27, 0x7f984a37, 0x7fc00000, 0x3c00001},
1758{0x3c00000, 0x8ba98d27, 0x7fbfffff, 0x7fc00000, 0x3c00001},
1759{0x3c00000, 0x8ba98d27, 0x7fc00000, 0x7fc00000, 0x3c00000},
1760{0x3c00000, 0x8ba98d27, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
1761{0x3c00000, 0x8ba98d27, 0x7fffffff, 0x7fc00000, 0x3c00000},
1762{0x3c00000, 0x8ba98d27, 0x80000000, 0x8ba98d27, 0x3c00000},
1763{0x3c00000, 0x8ba98d27, 0x80000001, 0x8ba98d27, 0x3c00080},
1764{0x3c00000, 0x8ba98d27, 0x80000076, 0x8ba98d27, 0x3c00080},
1765{0x3c00000, 0x8ba98d27, 0x80002b94, 0x8ba98d27, 0x3c00080},
1766{0x3c00000, 0x8ba98d27, 0x80636d24, 0x8ba98d27, 0x3c00080},
1767{0x3c00000, 0x8ba98d27, 0x807fffff, 0x8ba98d27, 0x3c00080},
1768{0x3c00000, 0x8ba98d27, 0x80800000, 0x8ba98d29, 0x3c00000},
1769{0x3c00000, 0x8ba98d27, 0x80800002, 0x8ba98d29, 0x3c00010},
1770{0x3c00000, 0x8ba98d27, 0x81398437, 0x8ba98d2c, 0x3c00010},
1771{0x3c00000, 0x8ba98d27, 0x8ba98d27, 0x8c298d27, 0x3c00000},
1772{0x3c00000, 0x8ba98d27, 0x8ba98d7a, 0x8c298d50, 0x3c00010},
1773{0x3c00000, 0x8ba98d27, 0xf51f853a, 0xf51f853a, 0x3c00010},
1774{0x3c00000, 0x8ba98d27, 0xff7ffff0, 0xff7ffff0, 0x3c00010},
1775{0x3c00000, 0x8ba98d27, 0xff7fffff, 0xff7fffff, 0x3c00010},
1776{0x3c00000, 0x8ba98d27, 0xff800000, 0xff800000, 0x3c00000},
1777{0x3c00000, 0x8ba98d27, 0xff800001, 0x7fc00000, 0x3c00001},
1778{0x3c00000, 0x8ba98d27, 0xff984a37, 0x7fc00000, 0x3c00001},
1779{0x3c00000, 0x8ba98d27, 0xffbfffff, 0x7fc00000, 0x3c00001},
1780{0x3c00000, 0x8ba98d27, 0xffc00000, 0x7fc00000, 0x3c00000},
1781{0x3c00000, 0x8ba98d27, 0xffd9ba98, 0x7fc00000, 0x3c00000},
1782{0x3c00000, 0x8ba98d27, 0xffffffff, 0x7fc00000, 0x3c00000},
1783{0x3c00000, 0x8ba98d27, 0x4f3495cb, 0x4f3495ca, 0x3c00010},
1784{0x3c00000, 0x8ba98d27, 0xe73a5134, 0xe73a5134, 0x3c00010},
1785{0x3c00000, 0x8ba98d27, 0x7c994e9e, 0x7c994e9d, 0x3c00010},
1786{0x3c00000, 0x8ba98d27, 0x6164bd6c, 0x6164bd6b, 0x3c00010},
1787{0x3c00000, 0x8ba98d27, 0x9503366, 0x8ba30b8b, 0x3c00010},
1788{0x3c00000, 0x8ba98d27, 0xbf5a97c9, 0xbf5a97c9, 0x3c00010},
1789{0x3c00000, 0x8ba98d27, 0xe6ff1a14, 0xe6ff1a14, 0x3c00010},
1790{0x3c00000, 0x8ba98d27, 0x77f31e2f, 0x77f31e2e, 0x3c00010},
1791{0x3c00000, 0x8ba98d27, 0xaab4d7d8, 0xaab4d7d8, 0x3c00010},
1792{0x3c00000, 0x8ba98d27, 0x966320b, 0x8ba25b96, 0x3c00010},
1793{0x3c00000, 0x8ba98d27, 0xb26bddee, 0xb26bddee, 0x3c00010},
1794{0x3c00000, 0x8ba98d27, 0xb5c8e5d3, 0xb5c8e5d3, 0x3c00010},
1795{0x3c00000, 0x8ba98d27, 0x317285d3, 0x317285d2, 0x3c00010},
1796{0x3c00000, 0x8ba98d27, 0x3c9623b1, 0x3c9623b0, 0x3c00010},
1797{0x3c00000, 0x8ba98d27, 0x51fd2c7c, 0x51fd2c7b, 0x3c00010},
1798{0x3c00000, 0x8ba98d27, 0x7b906a6c, 0x7b906a6b, 0x3c00010},
1799{0x3c00000, 0x8ba98d7a, 0x0, 0x8ba98d7a, 0x3c00000},
1800{0x3c00000, 0x8ba98d7a, 0x1, 0x8ba98d7a, 0x3c00080},
1801{0x3c00000, 0x8ba98d7a, 0x76, 0x8ba98d7a, 0x3c00080},
1802{0x3c00000, 0x8ba98d7a, 0x2b94, 0x8ba98d7a, 0x3c00080},
1803{0x3c00000, 0x8ba98d7a, 0x636d24, 0x8ba98d7a, 0x3c00080},
1804{0x3c00000, 0x8ba98d7a, 0x7fffff, 0x8ba98d7a, 0x3c00080},
1805{0x3c00000, 0x8ba98d7a, 0x800000, 0x8ba98d78, 0x3c00000},
1806{0x3c00000, 0x8ba98d7a, 0x800002, 0x8ba98d77, 0x3c00010},
1807{0x3c00000, 0x8ba98d7a, 0x1398437, 0x8ba98d74, 0x3c00010},
1808{0x3c00000, 0x8ba98d7a, 0xba98d27, 0x83260000, 0x3c00000},
1809{0x3c00000, 0x8ba98d7a, 0xba98d7a, 0x0, 0x3c00000},
1810{0x3c00000, 0x8ba98d7a, 0x751f853a, 0x751f8539, 0x3c00010},
1811{0x3c00000, 0x8ba98d7a, 0x7f7ffff0, 0x7f7fffef, 0x3c00010},
1812{0x3c00000, 0x8ba98d7a, 0x7f7fffff, 0x7f7ffffe, 0x3c00010},
1813{0x3c00000, 0x8ba98d7a, 0x7f800000, 0x7f800000, 0x3c00000},
1814{0x3c00000, 0x8ba98d7a, 0x7f800001, 0x7fc00000, 0x3c00001},
1815{0x3c00000, 0x8ba98d7a, 0x7f984a37, 0x7fc00000, 0x3c00001},
1816{0x3c00000, 0x8ba98d7a, 0x7fbfffff, 0x7fc00000, 0x3c00001},
1817{0x3c00000, 0x8ba98d7a, 0x7fc00000, 0x7fc00000, 0x3c00000},
1818{0x3c00000, 0x8ba98d7a, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
1819{0x3c00000, 0x8ba98d7a, 0x7fffffff, 0x7fc00000, 0x3c00000},
1820{0x3c00000, 0x8ba98d7a, 0x80000000, 0x8ba98d7a, 0x3c00000},
1821{0x3c00000, 0x8ba98d7a, 0x80000001, 0x8ba98d7a, 0x3c00080},
1822{0x3c00000, 0x8ba98d7a, 0x80000076, 0x8ba98d7a, 0x3c00080},
1823{0x3c00000, 0x8ba98d7a, 0x80002b94, 0x8ba98d7a, 0x3c00080},
1824{0x3c00000, 0x8ba98d7a, 0x80636d24, 0x8ba98d7a, 0x3c00080},
1825{0x3c00000, 0x8ba98d7a, 0x807fffff, 0x8ba98d7a, 0x3c00080},
1826{0x3c00000, 0x8ba98d7a, 0x80800000, 0x8ba98d7c, 0x3c00000},
1827{0x3c00000, 0x8ba98d7a, 0x80800002, 0x8ba98d7c, 0x3c00010},
1828{0x3c00000, 0x8ba98d7a, 0x81398437, 0x8ba98d7f, 0x3c00010},
1829{0x3c00000, 0x8ba98d7a, 0x8ba98d27, 0x8c298d50, 0x3c00010},
1830{0x3c00000, 0x8ba98d7a, 0x8ba98d7a, 0x8c298d7a, 0x3c00000},
1831{0x3c00000, 0x8ba98d7a, 0xf51f853a, 0xf51f853a, 0x3c00010},
1832{0x3c00000, 0x8ba98d7a, 0xff7ffff0, 0xff7ffff0, 0x3c00010},
1833{0x3c00000, 0x8ba98d7a, 0xff7fffff, 0xff7fffff, 0x3c00010},
1834{0x3c00000, 0x8ba98d7a, 0xff800000, 0xff800000, 0x3c00000},
1835{0x3c00000, 0x8ba98d7a, 0xff800001, 0x7fc00000, 0x3c00001},
1836{0x3c00000, 0x8ba98d7a, 0xff984a37, 0x7fc00000, 0x3c00001},
1837{0x3c00000, 0x8ba98d7a, 0xffbfffff, 0x7fc00000, 0x3c00001},
1838{0x3c00000, 0x8ba98d7a, 0xffc00000, 0x7fc00000, 0x3c00000},
1839{0x3c00000, 0x8ba98d7a, 0xffd9ba98, 0x7fc00000, 0x3c00000},
1840{0x3c00000, 0x8ba98d7a, 0xffffffff, 0x7fc00000, 0x3c00000},
1841{0x3c00000, 0x8ba98d7a, 0x4f3495cb, 0x4f3495ca, 0x3c00010},
1842{0x3c00000, 0x8ba98d7a, 0xe73a5134, 0xe73a5134, 0x3c00010},
1843{0x3c00000, 0x8ba98d7a, 0x7c994e9e, 0x7c994e9d, 0x3c00010},
1844{0x3c00000, 0x8ba98d7a, 0x6164bd6c, 0x6164bd6b, 0x3c00010},
1845{0x3c00000, 0x8ba98d7a, 0x9503366, 0x8ba30bde, 0x3c00010},
1846{0x3c00000, 0x8ba98d7a, 0xbf5a97c9, 0xbf5a97c9, 0x3c00010},
1847{0x3c00000, 0x8ba98d7a, 0xe6ff1a14, 0xe6ff1a14, 0x3c00010},
1848{0x3c00000, 0x8ba98d7a, 0x77f31e2f, 0x77f31e2e, 0x3c00010},
1849{0x3c00000, 0x8ba98d7a, 0xaab4d7d8, 0xaab4d7d8, 0x3c00010},
1850{0x3c00000, 0x8ba98d7a, 0x966320b, 0x8ba25be9, 0x3c00010},
1851{0x3c00000, 0x8ba98d7a, 0xb26bddee, 0xb26bddee, 0x3c00010},
1852{0x3c00000, 0x8ba98d7a, 0xb5c8e5d3, 0xb5c8e5d3, 0x3c00010},
1853{0x3c00000, 0x8ba98d7a, 0x317285d3, 0x317285d2, 0x3c00010},
1854{0x3c00000, 0x8ba98d7a, 0x3c9623b1, 0x3c9623b0, 0x3c00010},
1855{0x3c00000, 0x8ba98d7a, 0x51fd2c7c, 0x51fd2c7b, 0x3c00010},
1856{0x3c00000, 0x8ba98d7a, 0x7b906a6c, 0x7b906a6b, 0x3c00010},
1857{0x3c00000, 0xf51f853a, 0x0, 0xf51f853a, 0x3c00000},
1858{0x3c00000, 0xf51f853a, 0x1, 0xf51f853a, 0x3c00080},
1859{0x3c00000, 0xf51f853a, 0x76, 0xf51f853a, 0x3c00080},
1860{0x3c00000, 0xf51f853a, 0x2b94, 0xf51f853a, 0x3c00080},
1861{0x3c00000, 0xf51f853a, 0x636d24, 0xf51f853a, 0x3c00080},
1862{0x3c00000, 0xf51f853a, 0x7fffff, 0xf51f853a, 0x3c00080},
1863{0x3c00000, 0xf51f853a, 0x800000, 0xf51f8539, 0x3c00010},
1864{0x3c00000, 0xf51f853a, 0x800002, 0xf51f8539, 0x3c00010},
1865{0x3c00000, 0xf51f853a, 0x1398437, 0xf51f8539, 0x3c00010},
1866{0x3c00000, 0xf51f853a, 0xba98d27, 0xf51f8539, 0x3c00010},
1867{0x3c00000, 0xf51f853a, 0xba98d7a, 0xf51f8539, 0x3c00010},
1868{0x3c00000, 0xf51f853a, 0x751f853a, 0x0, 0x3c00000},
1869{0x3c00000, 0xf51f853a, 0x7f7ffff0, 0x7f7fffe6, 0x3c00010},
1870{0x3c00000, 0xf51f853a, 0x7f7fffff, 0x7f7ffff5, 0x3c00010},
1871{0x3c00000, 0xf51f853a, 0x7f800000, 0x7f800000, 0x3c00000},
1872{0x3c00000, 0xf51f853a, 0x7f800001, 0x7fc00000, 0x3c00001},
1873{0x3c00000, 0xf51f853a, 0x7f984a37, 0x7fc00000, 0x3c00001},
1874{0x3c00000, 0xf51f853a, 0x7fbfffff, 0x7fc00000, 0x3c00001},
1875{0x3c00000, 0xf51f853a, 0x7fc00000, 0x7fc00000, 0x3c00000},
1876{0x3c00000, 0xf51f853a, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
1877{0x3c00000, 0xf51f853a, 0x7fffffff, 0x7fc00000, 0x3c00000},
1878{0x3c00000, 0xf51f853a, 0x80000000, 0xf51f853a, 0x3c00000},
1879{0x3c00000, 0xf51f853a, 0x80000001, 0xf51f853a, 0x3c00080},
1880{0x3c00000, 0xf51f853a, 0x80000076, 0xf51f853a, 0x3c00080},
1881{0x3c00000, 0xf51f853a, 0x80002b94, 0xf51f853a, 0x3c00080},
1882{0x3c00000, 0xf51f853a, 0x80636d24, 0xf51f853a, 0x3c00080},
1883{0x3c00000, 0xf51f853a, 0x807fffff, 0xf51f853a, 0x3c00080},
1884{0x3c00000, 0xf51f853a, 0x80800000, 0xf51f853a, 0x3c00010},
1885{0x3c00000, 0xf51f853a, 0x80800002, 0xf51f853a, 0x3c00010},
1886{0x3c00000, 0xf51f853a, 0x81398437, 0xf51f853a, 0x3c00010},
1887{0x3c00000, 0xf51f853a, 0x8ba98d27, 0xf51f853a, 0x3c00010},
1888{0x3c00000, 0xf51f853a, 0x8ba98d7a, 0xf51f853a, 0x3c00010},
1889{0x3c00000, 0xf51f853a, 0xf51f853a, 0xf59f853a, 0x3c00000},
1890{0x3c00000, 0xf51f853a, 0xff7ffff0, 0xff7ffff9, 0x3c00010},
1891{0x3c00000, 0xf51f853a, 0xff7fffff, 0xff7fffff, 0x3c00014},
1892{0x3c00000, 0xf51f853a, 0xff800000, 0xff800000, 0x3c00000},
1893{0x3c00000, 0xf51f853a, 0xff800001, 0x7fc00000, 0x3c00001},
1894{0x3c00000, 0xf51f853a, 0xff984a37, 0x7fc00000, 0x3c00001},
1895{0x3c00000, 0xf51f853a, 0xffbfffff, 0x7fc00000, 0x3c00001},
1896{0x3c00000, 0xf51f853a, 0xffc00000, 0x7fc00000, 0x3c00000},
1897{0x3c00000, 0xf51f853a, 0xffd9ba98, 0x7fc00000, 0x3c00000},
1898{0x3c00000, 0xf51f853a, 0xffffffff, 0x7fc00000, 0x3c00000},
1899{0x3c00000, 0xf51f853a, 0x4f3495cb, 0xf51f8539, 0x3c00010},
1900{0x3c00000, 0xf51f853a, 0xe73a5134, 0xf51f853a, 0x3c00010},
1901{0x3c00000, 0xf51f853a, 0x7c994e9e, 0x7c994d5e, 0x3c00010},
1902{0x3c00000, 0xf51f853a, 0x6164bd6c, 0xf51f8539, 0x3c00010},
1903{0x3c00000, 0xf51f853a, 0x9503366, 0xf51f8539, 0x3c00010},
1904{0x3c00000, 0xf51f853a, 0xbf5a97c9, 0xf51f853a, 0x3c00010},
1905{0x3c00000, 0xf51f853a, 0xe6ff1a14, 0xf51f853a, 0x3c00010},
1906{0x3c00000, 0xf51f853a, 0x77f31e2f, 0x77ee2205, 0x3c00010},
1907{0x3c00000, 0xf51f853a, 0xaab4d7d8, 0xf51f853a, 0x3c00010},
1908{0x3c00000, 0xf51f853a, 0x966320b, 0xf51f8539, 0x3c00010},
1909{0x3c00000, 0xf51f853a, 0xb26bddee, 0xf51f853a, 0x3c00010},
1910{0x3c00000, 0xf51f853a, 0xb5c8e5d3, 0xf51f853a, 0x3c00010},
1911{0x3c00000, 0xf51f853a, 0x317285d3, 0xf51f8539, 0x3c00010},
1912{0x3c00000, 0xf51f853a, 0x3c9623b1, 0xf51f8539, 0x3c00010},
1913{0x3c00000, 0xf51f853a, 0x51fd2c7c, 0xf51f8539, 0x3c00010},
1914{0x3c00000, 0xf51f853a, 0x7b906a6c, 0x7b90656f, 0x3c00010},
1915{0x3c00000, 0xff7ffff0, 0x0, 0xff7ffff0, 0x3c00000},
1916{0x3c00000, 0xff7ffff0, 0x1, 0xff7ffff0, 0x3c00080},
1917{0x3c00000, 0xff7ffff0, 0x76, 0xff7ffff0, 0x3c00080},
1918{0x3c00000, 0xff7ffff0, 0x2b94, 0xff7ffff0, 0x3c00080},
1919{0x3c00000, 0xff7ffff0, 0x636d24, 0xff7ffff0, 0x3c00080},
1920{0x3c00000, 0xff7ffff0, 0x7fffff, 0xff7ffff0, 0x3c00080},
1921{0x3c00000, 0xff7ffff0, 0x800000, 0xff7fffef, 0x3c00010},
1922{0x3c00000, 0xff7ffff0, 0x800002, 0xff7fffef, 0x3c00010},
1923{0x3c00000, 0xff7ffff0, 0x1398437, 0xff7fffef, 0x3c00010},
1924{0x3c00000, 0xff7ffff0, 0xba98d27, 0xff7fffef, 0x3c00010},
1925{0x3c00000, 0xff7ffff0, 0xba98d7a, 0xff7fffef, 0x3c00010},
1926{0x3c00000, 0xff7ffff0, 0x751f853a, 0xff7fffe6, 0x3c00010},
1927{0x3c00000, 0xff7ffff0, 0x7f7ffff0, 0x0, 0x3c00000},
1928{0x3c00000, 0xff7ffff0, 0x7f7fffff, 0x75700000, 0x3c00000},
1929{0x3c00000, 0xff7ffff0, 0x7f800000, 0x7f800000, 0x3c00000},
1930{0x3c00000, 0xff7ffff0, 0x7f800001, 0x7fc00000, 0x3c00001},
1931{0x3c00000, 0xff7ffff0, 0x7f984a37, 0x7fc00000, 0x3c00001},
1932{0x3c00000, 0xff7ffff0, 0x7fbfffff, 0x7fc00000, 0x3c00001},
1933{0x3c00000, 0xff7ffff0, 0x7fc00000, 0x7fc00000, 0x3c00000},
1934{0x3c00000, 0xff7ffff0, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
1935{0x3c00000, 0xff7ffff0, 0x7fffffff, 0x7fc00000, 0x3c00000},
1936{0x3c00000, 0xff7ffff0, 0x80000000, 0xff7ffff0, 0x3c00000},
1937{0x3c00000, 0xff7ffff0, 0x80000001, 0xff7ffff0, 0x3c00080},
1938{0x3c00000, 0xff7ffff0, 0x80000076, 0xff7ffff0, 0x3c00080},
1939{0x3c00000, 0xff7ffff0, 0x80002b94, 0xff7ffff0, 0x3c00080},
1940{0x3c00000, 0xff7ffff0, 0x80636d24, 0xff7ffff0, 0x3c00080},
1941{0x3c00000, 0xff7ffff0, 0x807fffff, 0xff7ffff0, 0x3c00080},
1942{0x3c00000, 0xff7ffff0, 0x80800000, 0xff7ffff0, 0x3c00010},
1943{0x3c00000, 0xff7ffff0, 0x80800002, 0xff7ffff0, 0x3c00010},
1944{0x3c00000, 0xff7ffff0, 0x81398437, 0xff7ffff0, 0x3c00010},
1945{0x3c00000, 0xff7ffff0, 0x8ba98d27, 0xff7ffff0, 0x3c00010},
1946{0x3c00000, 0xff7ffff0, 0x8ba98d7a, 0xff7ffff0, 0x3c00010},
1947{0x3c00000, 0xff7ffff0, 0xf51f853a, 0xff7ffff9, 0x3c00010},
1948{0x3c00000, 0xff7ffff0, 0xff7ffff0, 0xff7fffff, 0x3c00014},
1949{0x3c00000, 0xff7ffff0, 0xff7fffff, 0xff7fffff, 0x3c00014},
1950{0x3c00000, 0xff7ffff0, 0xff800000, 0xff800000, 0x3c00000},
1951{0x3c00000, 0xff7ffff0, 0xff800001, 0x7fc00000, 0x3c00001},
1952{0x3c00000, 0xff7ffff0, 0xff984a37, 0x7fc00000, 0x3c00001},
1953{0x3c00000, 0xff7ffff0, 0xffbfffff, 0x7fc00000, 0x3c00001},
1954{0x3c00000, 0xff7ffff0, 0xffc00000, 0x7fc00000, 0x3c00000},
1955{0x3c00000, 0xff7ffff0, 0xffd9ba98, 0x7fc00000, 0x3c00000},
1956{0x3c00000, 0xff7ffff0, 0xffffffff, 0x7fc00000, 0x3c00000},
1957{0x3c00000, 0xff7ffff0, 0x4f3495cb, 0xff7fffef, 0x3c00010},
1958{0x3c00000, 0xff7ffff0, 0xe73a5134, 0xff7ffff0, 0x3c00010},
1959{0x3c00000, 0xff7ffff0, 0x7c994e9e, 0xff7b357b, 0x3c00010},
1960{0x3c00000, 0xff7ffff0, 0x6164bd6c, 0xff7fffef, 0x3c00010},
1961{0x3c00000, 0xff7ffff0, 0x9503366, 0xff7fffef, 0x3c00010},
1962{0x3c00000, 0xff7ffff0, 0xbf5a97c9, 0xff7ffff0, 0x3c00010},
1963{0x3c00000, 0xff7ffff0, 0xe6ff1a14, 0xff7ffff0, 0x3c00010},
1964{0x3c00000, 0xff7ffff0, 0x77f31e2f, 0xff7ffe09, 0x3c00010},
1965{0x3c00000, 0xff7ffff0, 0xaab4d7d8, 0xff7ffff0, 0x3c00010},
1966{0x3c00000, 0xff7ffff0, 0x966320b, 0xff7fffef, 0x3c00010},
1967{0x3c00000, 0xff7ffff0, 0xb26bddee, 0xff7ffff0, 0x3c00010},
1968{0x3c00000, 0xff7ffff0, 0xb5c8e5d3, 0xff7ffff0, 0x3c00010},
1969{0x3c00000, 0xff7ffff0, 0x317285d3, 0xff7fffef, 0x3c00010},
1970{0x3c00000, 0xff7ffff0, 0x3c9623b1, 0xff7fffef, 0x3c00010},
1971{0x3c00000, 0xff7ffff0, 0x51fd2c7c, 0xff7fffef, 0x3c00010},
1972{0x3c00000, 0xff7ffff0, 0x7b906a6c, 0xff7edf1b, 0x3c00010},
1973{0x3c00000, 0xff7fffff, 0x0, 0xff7fffff, 0x3c00000},
1974{0x3c00000, 0xff7fffff, 0x1, 0xff7fffff, 0x3c00080},
1975{0x3c00000, 0xff7fffff, 0x76, 0xff7fffff, 0x3c00080},
1976{0x3c00000, 0xff7fffff, 0x2b94, 0xff7fffff, 0x3c00080},
1977{0x3c00000, 0xff7fffff, 0x636d24, 0xff7fffff, 0x3c00080},
1978{0x3c00000, 0xff7fffff, 0x7fffff, 0xff7fffff, 0x3c00080},
1979{0x3c00000, 0xff7fffff, 0x800000, 0xff7ffffe, 0x3c00010},
1980{0x3c00000, 0xff7fffff, 0x800002, 0xff7ffffe, 0x3c00010},
1981{0x3c00000, 0xff7fffff, 0x1398437, 0xff7ffffe, 0x3c00010},
1982{0x3c00000, 0xff7fffff, 0xba98d27, 0xff7ffffe, 0x3c00010},
1983{0x3c00000, 0xff7fffff, 0xba98d7a, 0xff7ffffe, 0x3c00010},
1984{0x3c00000, 0xff7fffff, 0x751f853a, 0xff7ffff5, 0x3c00010},
1985{0x3c00000, 0xff7fffff, 0x7f7ffff0, 0xf5700000, 0x3c00000},
1986{0x3c00000, 0xff7fffff, 0x7f7fffff, 0x0, 0x3c00000},
1987{0x3c00000, 0xff7fffff, 0x7f800000, 0x7f800000, 0x3c00000},
1988{0x3c00000, 0xff7fffff, 0x7f800001, 0x7fc00000, 0x3c00001},
1989{0x3c00000, 0xff7fffff, 0x7f984a37, 0x7fc00000, 0x3c00001},
1990{0x3c00000, 0xff7fffff, 0x7fbfffff, 0x7fc00000, 0x3c00001},
1991{0x3c00000, 0xff7fffff, 0x7fc00000, 0x7fc00000, 0x3c00000},
1992{0x3c00000, 0xff7fffff, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
1993{0x3c00000, 0xff7fffff, 0x7fffffff, 0x7fc00000, 0x3c00000},
1994{0x3c00000, 0xff7fffff, 0x80000000, 0xff7fffff, 0x3c00000},
1995{0x3c00000, 0xff7fffff, 0x80000001, 0xff7fffff, 0x3c00080},
1996{0x3c00000, 0xff7fffff, 0x80000076, 0xff7fffff, 0x3c00080},
1997{0x3c00000, 0xff7fffff, 0x80002b94, 0xff7fffff, 0x3c00080},
1998{0x3c00000, 0xff7fffff, 0x80636d24, 0xff7fffff, 0x3c00080},
1999{0x3c00000, 0xff7fffff, 0x807fffff, 0xff7fffff, 0x3c00080},
2000{0x3c00000, 0xff7fffff, 0x80800000, 0xff7fffff, 0x3c00010},
2001{0x3c00000, 0xff7fffff, 0x80800002, 0xff7fffff, 0x3c00010},
2002{0x3c00000, 0xff7fffff, 0x81398437, 0xff7fffff, 0x3c00010},
2003{0x3c00000, 0xff7fffff, 0x8ba98d27, 0xff7fffff, 0x3c00010},
2004{0x3c00000, 0xff7fffff, 0x8ba98d7a, 0xff7fffff, 0x3c00010},
2005{0x3c00000, 0xff7fffff, 0xf51f853a, 0xff7fffff, 0x3c00014},
2006{0x3c00000, 0xff7fffff, 0xff7ffff0, 0xff7fffff, 0x3c00014},
2007{0x3c00000, 0xff7fffff, 0xff7fffff, 0xff7fffff, 0x3c00014},
2008{0x3c00000, 0xff7fffff, 0xff800000, 0xff800000, 0x3c00000},
2009{0x3c00000, 0xff7fffff, 0xff800001, 0x7fc00000, 0x3c00001},
2010{0x3c00000, 0xff7fffff, 0xff984a37, 0x7fc00000, 0x3c00001},
2011{0x3c00000, 0xff7fffff, 0xffbfffff, 0x7fc00000, 0x3c00001},
2012{0x3c00000, 0xff7fffff, 0xffc00000, 0x7fc00000, 0x3c00000},
2013{0x3c00000, 0xff7fffff, 0xffd9ba98, 0x7fc00000, 0x3c00000},
2014{0x3c00000, 0xff7fffff, 0xffffffff, 0x7fc00000, 0x3c00000},
2015{0x3c00000, 0xff7fffff, 0x4f3495cb, 0xff7ffffe, 0x3c00010},
2016{0x3c00000, 0xff7fffff, 0xe73a5134, 0xff7fffff, 0x3c00010},
2017{0x3c00000, 0xff7fffff, 0x7c994e9e, 0xff7b358a, 0x3c00010},
2018{0x3c00000, 0xff7fffff, 0x6164bd6c, 0xff7ffffe, 0x3c00010},
2019{0x3c00000, 0xff7fffff, 0x9503366, 0xff7ffffe, 0x3c00010},
2020{0x3c00000, 0xff7fffff, 0xbf5a97c9, 0xff7fffff, 0x3c00010},
2021{0x3c00000, 0xff7fffff, 0xe6ff1a14, 0xff7fffff, 0x3c00010},
2022{0x3c00000, 0xff7fffff, 0x77f31e2f, 0xff7ffe18, 0x3c00010},
2023{0x3c00000, 0xff7fffff, 0xaab4d7d8, 0xff7fffff, 0x3c00010},
2024{0x3c00000, 0xff7fffff, 0x966320b, 0xff7ffffe, 0x3c00010},
2025{0x3c00000, 0xff7fffff, 0xb26bddee, 0xff7fffff, 0x3c00010},
2026{0x3c00000, 0xff7fffff, 0xb5c8e5d3, 0xff7fffff, 0x3c00010},
2027{0x3c00000, 0xff7fffff, 0x317285d3, 0xff7ffffe, 0x3c00010},
2028{0x3c00000, 0xff7fffff, 0x3c9623b1, 0xff7ffffe, 0x3c00010},
2029{0x3c00000, 0xff7fffff, 0x51fd2c7c, 0xff7ffffe, 0x3c00010},
2030{0x3c00000, 0xff7fffff, 0x7b906a6c, 0xff7edf2a, 0x3c00010},
2031{0x3c00000, 0xff800000, 0x0, 0xff800000, 0x3c00000},
2032{0x3c00000, 0xff800000, 0x1, 0xff800000, 0x3c00080},
2033{0x3c00000, 0xff800000, 0x76, 0xff800000, 0x3c00080},
2034{0x3c00000, 0xff800000, 0x2b94, 0xff800000, 0x3c00080},
2035{0x3c00000, 0xff800000, 0x636d24, 0xff800000, 0x3c00080},
2036{0x3c00000, 0xff800000, 0x7fffff, 0xff800000, 0x3c00080},
2037{0x3c00000, 0xff800000, 0x800000, 0xff800000, 0x3c00000},
2038{0x3c00000, 0xff800000, 0x800002, 0xff800000, 0x3c00000},
2039{0x3c00000, 0xff800000, 0x1398437, 0xff800000, 0x3c00000},
2040{0x3c00000, 0xff800000, 0xba98d27, 0xff800000, 0x3c00000},
2041{0x3c00000, 0xff800000, 0xba98d7a, 0xff800000, 0x3c00000},
2042{0x3c00000, 0xff800000, 0x751f853a, 0xff800000, 0x3c00000},
2043{0x3c00000, 0xff800000, 0x7f7ffff0, 0xff800000, 0x3c00000},
2044{0x3c00000, 0xff800000, 0x7f7fffff, 0xff800000, 0x3c00000},
2045{0x3c00000, 0xff800000, 0x7f800000, 0x7fc00000, 0x3c00001},
2046{0x3c00000, 0xff800000, 0x7f800001, 0x7fc00000, 0x3c00001},
2047{0x3c00000, 0xff800000, 0x7f984a37, 0x7fc00000, 0x3c00001},
2048{0x3c00000, 0xff800000, 0x7fbfffff, 0x7fc00000, 0x3c00001},
2049{0x3c00000, 0xff800000, 0x7fc00000, 0x7fc00000, 0x3c00000},
2050{0x3c00000, 0xff800000, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
2051{0x3c00000, 0xff800000, 0x7fffffff, 0x7fc00000, 0x3c00000},
2052{0x3c00000, 0xff800000, 0x80000000, 0xff800000, 0x3c00000},
2053{0x3c00000, 0xff800000, 0x80000001, 0xff800000, 0x3c00080},
2054{0x3c00000, 0xff800000, 0x80000076, 0xff800000, 0x3c00080},
2055{0x3c00000, 0xff800000, 0x80002b94, 0xff800000, 0x3c00080},
2056{0x3c00000, 0xff800000, 0x80636d24, 0xff800000, 0x3c00080},
2057{0x3c00000, 0xff800000, 0x807fffff, 0xff800000, 0x3c00080},
2058{0x3c00000, 0xff800000, 0x80800000, 0xff800000, 0x3c00000},
2059{0x3c00000, 0xff800000, 0x80800002, 0xff800000, 0x3c00000},
2060{0x3c00000, 0xff800000, 0x81398437, 0xff800000, 0x3c00000},
2061{0x3c00000, 0xff800000, 0x8ba98d27, 0xff800000, 0x3c00000},
2062{0x3c00000, 0xff800000, 0x8ba98d7a, 0xff800000, 0x3c00000},
2063{0x3c00000, 0xff800000, 0xf51f853a, 0xff800000, 0x3c00000},
2064{0x3c00000, 0xff800000, 0xff7ffff0, 0xff800000, 0x3c00000},
2065{0x3c00000, 0xff800000, 0xff7fffff, 0xff800000, 0x3c00000},
2066{0x3c00000, 0xff800000, 0xff800000, 0xff800000, 0x3c00000},
2067{0x3c00000, 0xff800000, 0xff800001, 0x7fc00000, 0x3c00001},
2068{0x3c00000, 0xff800000, 0xff984a37, 0x7fc00000, 0x3c00001},
2069{0x3c00000, 0xff800000, 0xffbfffff, 0x7fc00000, 0x3c00001},
2070{0x3c00000, 0xff800000, 0xffc00000, 0x7fc00000, 0x3c00000},
2071{0x3c00000, 0xff800000, 0xffd9ba98, 0x7fc00000, 0x3c00000},
2072{0x3c00000, 0xff800000, 0xffffffff, 0x7fc00000, 0x3c00000},
2073{0x3c00000, 0xff800000, 0x4f3495cb, 0xff800000, 0x3c00000},
2074{0x3c00000, 0xff800000, 0xe73a5134, 0xff800000, 0x3c00000},
2075{0x3c00000, 0xff800000, 0x7c994e9e, 0xff800000, 0x3c00000},
2076{0x3c00000, 0xff800000, 0x6164bd6c, 0xff800000, 0x3c00000},
2077{0x3c00000, 0xff800000, 0x9503366, 0xff800000, 0x3c00000},
2078{0x3c00000, 0xff800000, 0xbf5a97c9, 0xff800000, 0x3c00000},
2079{0x3c00000, 0xff800000, 0xe6ff1a14, 0xff800000, 0x3c00000},
2080{0x3c00000, 0xff800000, 0x77f31e2f, 0xff800000, 0x3c00000},
2081{0x3c00000, 0xff800000, 0xaab4d7d8, 0xff800000, 0x3c00000},
2082{0x3c00000, 0xff800000, 0x966320b, 0xff800000, 0x3c00000},
2083{0x3c00000, 0xff800000, 0xb26bddee, 0xff800000, 0x3c00000},
2084{0x3c00000, 0xff800000, 0xb5c8e5d3, 0xff800000, 0x3c00000},
2085{0x3c00000, 0xff800000, 0x317285d3, 0xff800000, 0x3c00000},
2086{0x3c00000, 0xff800000, 0x3c9623b1, 0xff800000, 0x3c00000},
2087{0x3c00000, 0xff800000, 0x51fd2c7c, 0xff800000, 0x3c00000},
2088{0x3c00000, 0xff800000, 0x7b906a6c, 0xff800000, 0x3c00000},
2089{0x3c00000, 0xff800001, 0x0, 0x7fc00000, 0x3c00001},
2090{0x3c00000, 0xff800001, 0x1, 0x7fc00000, 0x3c00081},
2091{0x3c00000, 0xff800001, 0x76, 0x7fc00000, 0x3c00081},
2092{0x3c00000, 0xff800001, 0x2b94, 0x7fc00000, 0x3c00081},
2093{0x3c00000, 0xff800001, 0x636d24, 0x7fc00000, 0x3c00081},
2094{0x3c00000, 0xff800001, 0x7fffff, 0x7fc00000, 0x3c00081},
2095{0x3c00000, 0xff800001, 0x800000, 0x7fc00000, 0x3c00001},
2096{0x3c00000, 0xff800001, 0x800002, 0x7fc00000, 0x3c00001},
2097{0x3c00000, 0xff800001, 0x1398437, 0x7fc00000, 0x3c00001},
2098{0x3c00000, 0xff800001, 0xba98d27, 0x7fc00000, 0x3c00001},
2099{0x3c00000, 0xff800001, 0xba98d7a, 0x7fc00000, 0x3c00001},
2100{0x3c00000, 0xff800001, 0x751f853a, 0x7fc00000, 0x3c00001},
2101{0x3c00000, 0xff800001, 0x7f7ffff0, 0x7fc00000, 0x3c00001},
2102{0x3c00000, 0xff800001, 0x7f7fffff, 0x7fc00000, 0x3c00001},
2103{0x3c00000, 0xff800001, 0x7f800000, 0x7fc00000, 0x3c00001},
2104{0x3c00000, 0xff800001, 0x7f800001, 0x7fc00000, 0x3c00001},
2105{0x3c00000, 0xff800001, 0x7f984a37, 0x7fc00000, 0x3c00001},
2106{0x3c00000, 0xff800001, 0x7fbfffff, 0x7fc00000, 0x3c00001},
2107{0x3c00000, 0xff800001, 0x7fc00000, 0x7fc00000, 0x3c00001},
2108{0x3c00000, 0xff800001, 0x7fd9ba98, 0x7fc00000, 0x3c00001},
2109{0x3c00000, 0xff800001, 0x7fffffff, 0x7fc00000, 0x3c00001},
2110{0x3c00000, 0xff800001, 0x80000000, 0x7fc00000, 0x3c00001},
2111{0x3c00000, 0xff800001, 0x80000001, 0x7fc00000, 0x3c00081},
2112{0x3c00000, 0xff800001, 0x80000076, 0x7fc00000, 0x3c00081},
2113{0x3c00000, 0xff800001, 0x80002b94, 0x7fc00000, 0x3c00081},
2114{0x3c00000, 0xff800001, 0x80636d24, 0x7fc00000, 0x3c00081},
2115{0x3c00000, 0xff800001, 0x807fffff, 0x7fc00000, 0x3c00081},
2116{0x3c00000, 0xff800001, 0x80800000, 0x7fc00000, 0x3c00001},
2117{0x3c00000, 0xff800001, 0x80800002, 0x7fc00000, 0x3c00001},
2118{0x3c00000, 0xff800001, 0x81398437, 0x7fc00000, 0x3c00001},
2119{0x3c00000, 0xff800001, 0x8ba98d27, 0x7fc00000, 0x3c00001},
2120{0x3c00000, 0xff800001, 0x8ba98d7a, 0x7fc00000, 0x3c00001},
2121{0x3c00000, 0xff800001, 0xf51f853a, 0x7fc00000, 0x3c00001},
2122{0x3c00000, 0xff800001, 0xff7ffff0, 0x7fc00000, 0x3c00001},
2123{0x3c00000, 0xff800001, 0xff7fffff, 0x7fc00000, 0x3c00001},
2124{0x3c00000, 0xff800001, 0xff800000, 0x7fc00000, 0x3c00001},
2125{0x3c00000, 0xff800001, 0xff800001, 0x7fc00000, 0x3c00001},
2126{0x3c00000, 0xff800001, 0xff984a37, 0x7fc00000, 0x3c00001},
2127{0x3c00000, 0xff800001, 0xffbfffff, 0x7fc00000, 0x3c00001},
2128{0x3c00000, 0xff800001, 0xffc00000, 0x7fc00000, 0x3c00001},
2129{0x3c00000, 0xff800001, 0xffd9ba98, 0x7fc00000, 0x3c00001},
2130{0x3c00000, 0xff800001, 0xffffffff, 0x7fc00000, 0x3c00001},
2131{0x3c00000, 0xff800001, 0x4f3495cb, 0x7fc00000, 0x3c00001},
2132{0x3c00000, 0xff800001, 0xe73a5134, 0x7fc00000, 0x3c00001},
2133{0x3c00000, 0xff800001, 0x7c994e9e, 0x7fc00000, 0x3c00001},
2134{0x3c00000, 0xff800001, 0x6164bd6c, 0x7fc00000, 0x3c00001},
2135{0x3c00000, 0xff800001, 0x9503366, 0x7fc00000, 0x3c00001},
2136{0x3c00000, 0xff800001, 0xbf5a97c9, 0x7fc00000, 0x3c00001},
2137{0x3c00000, 0xff800001, 0xe6ff1a14, 0x7fc00000, 0x3c00001},
2138{0x3c00000, 0xff800001, 0x77f31e2f, 0x7fc00000, 0x3c00001},
2139{0x3c00000, 0xff800001, 0xaab4d7d8, 0x7fc00000, 0x3c00001},
2140{0x3c00000, 0xff800001, 0x966320b, 0x7fc00000, 0x3c00001},
2141{0x3c00000, 0xff800001, 0xb26bddee, 0x7fc00000, 0x3c00001},
2142{0x3c00000, 0xff800001, 0xb5c8e5d3, 0x7fc00000, 0x3c00001},
2143{0x3c00000, 0xff800001, 0x317285d3, 0x7fc00000, 0x3c00001},
2144{0x3c00000, 0xff800001, 0x3c9623b1, 0x7fc00000, 0x3c00001},
2145{0x3c00000, 0xff800001, 0x51fd2c7c, 0x7fc00000, 0x3c00001},
2146{0x3c00000, 0xff800001, 0x7b906a6c, 0x7fc00000, 0x3c00001},
2147{0x3c00000, 0xff984a37, 0x0, 0x7fc00000, 0x3c00001},
2148{0x3c00000, 0xff984a37, 0x1, 0x7fc00000, 0x3c00081},
2149{0x3c00000, 0xff984a37, 0x76, 0x7fc00000, 0x3c00081},
2150{0x3c00000, 0xff984a37, 0x2b94, 0x7fc00000, 0x3c00081},
2151{0x3c00000, 0xff984a37, 0x636d24, 0x7fc00000, 0x3c00081},
2152{0x3c00000, 0xff984a37, 0x7fffff, 0x7fc00000, 0x3c00081},
2153{0x3c00000, 0xff984a37, 0x800000, 0x7fc00000, 0x3c00001},
2154{0x3c00000, 0xff984a37, 0x800002, 0x7fc00000, 0x3c00001},
2155{0x3c00000, 0xff984a37, 0x1398437, 0x7fc00000, 0x3c00001},
2156{0x3c00000, 0xff984a37, 0xba98d27, 0x7fc00000, 0x3c00001},
2157{0x3c00000, 0xff984a37, 0xba98d7a, 0x7fc00000, 0x3c00001},
2158{0x3c00000, 0xff984a37, 0x751f853a, 0x7fc00000, 0x3c00001},
2159{0x3c00000, 0xff984a37, 0x7f7ffff0, 0x7fc00000, 0x3c00001},
2160{0x3c00000, 0xff984a37, 0x7f7fffff, 0x7fc00000, 0x3c00001},
2161{0x3c00000, 0xff984a37, 0x7f800000, 0x7fc00000, 0x3c00001},
2162{0x3c00000, 0xff984a37, 0x7f800001, 0x7fc00000, 0x3c00001},
2163{0x3c00000, 0xff984a37, 0x7f984a37, 0x7fc00000, 0x3c00001},
2164{0x3c00000, 0xff984a37, 0x7fbfffff, 0x7fc00000, 0x3c00001},
2165{0x3c00000, 0xff984a37, 0x7fc00000, 0x7fc00000, 0x3c00001},
2166{0x3c00000, 0xff984a37, 0x7fd9ba98, 0x7fc00000, 0x3c00001},
2167{0x3c00000, 0xff984a37, 0x7fffffff, 0x7fc00000, 0x3c00001},
2168{0x3c00000, 0xff984a37, 0x80000000, 0x7fc00000, 0x3c00001},
2169{0x3c00000, 0xff984a37, 0x80000001, 0x7fc00000, 0x3c00081},
2170{0x3c00000, 0xff984a37, 0x80000076, 0x7fc00000, 0x3c00081},
2171{0x3c00000, 0xff984a37, 0x80002b94, 0x7fc00000, 0x3c00081},
2172{0x3c00000, 0xff984a37, 0x80636d24, 0x7fc00000, 0x3c00081},
2173{0x3c00000, 0xff984a37, 0x807fffff, 0x7fc00000, 0x3c00081},
2174{0x3c00000, 0xff984a37, 0x80800000, 0x7fc00000, 0x3c00001},
2175{0x3c00000, 0xff984a37, 0x80800002, 0x7fc00000, 0x3c00001},
2176{0x3c00000, 0xff984a37, 0x81398437, 0x7fc00000, 0x3c00001},
2177{0x3c00000, 0xff984a37, 0x8ba98d27, 0x7fc00000, 0x3c00001},
2178{0x3c00000, 0xff984a37, 0x8ba98d7a, 0x7fc00000, 0x3c00001},
2179{0x3c00000, 0xff984a37, 0xf51f853a, 0x7fc00000, 0x3c00001},
2180{0x3c00000, 0xff984a37, 0xff7ffff0, 0x7fc00000, 0x3c00001},
2181{0x3c00000, 0xff984a37, 0xff7fffff, 0x7fc00000, 0x3c00001},
2182{0x3c00000, 0xff984a37, 0xff800000, 0x7fc00000, 0x3c00001},
2183{0x3c00000, 0xff984a37, 0xff800001, 0x7fc00000, 0x3c00001},
2184{0x3c00000, 0xff984a37, 0xff984a37, 0x7fc00000, 0x3c00001},
2185{0x3c00000, 0xff984a37, 0xffbfffff, 0x7fc00000, 0x3c00001},
2186{0x3c00000, 0xff984a37, 0xffc00000, 0x7fc00000, 0x3c00001},
2187{0x3c00000, 0xff984a37, 0xffd9ba98, 0x7fc00000, 0x3c00001},
2188{0x3c00000, 0xff984a37, 0xffffffff, 0x7fc00000, 0x3c00001},
2189{0x3c00000, 0xff984a37, 0x4f3495cb, 0x7fc00000, 0x3c00001},
2190{0x3c00000, 0xff984a37, 0xe73a5134, 0x7fc00000, 0x3c00001},
2191{0x3c00000, 0xff984a37, 0x7c994e9e, 0x7fc00000, 0x3c00001},
2192{0x3c00000, 0xff984a37, 0x6164bd6c, 0x7fc00000, 0x3c00001},
2193{0x3c00000, 0xff984a37, 0x9503366, 0x7fc00000, 0x3c00001},
2194{0x3c00000, 0xff984a37, 0xbf5a97c9, 0x7fc00000, 0x3c00001},
2195{0x3c00000, 0xff984a37, 0xe6ff1a14, 0x7fc00000, 0x3c00001},
2196{0x3c00000, 0xff984a37, 0x77f31e2f, 0x7fc00000, 0x3c00001},
2197{0x3c00000, 0xff984a37, 0xaab4d7d8, 0x7fc00000, 0x3c00001},
2198{0x3c00000, 0xff984a37, 0x966320b, 0x7fc00000, 0x3c00001},
2199{0x3c00000, 0xff984a37, 0xb26bddee, 0x7fc00000, 0x3c00001},
2200{0x3c00000, 0xff984a37, 0xb5c8e5d3, 0x7fc00000, 0x3c00001},
2201{0x3c00000, 0xff984a37, 0x317285d3, 0x7fc00000, 0x3c00001},
2202{0x3c00000, 0xff984a37, 0x3c9623b1, 0x7fc00000, 0x3c00001},
2203{0x3c00000, 0xff984a37, 0x51fd2c7c, 0x7fc00000, 0x3c00001},
2204{0x3c00000, 0xff984a37, 0x7b906a6c, 0x7fc00000, 0x3c00001},
2205{0x3c00000, 0xffbfffff, 0x0, 0x7fc00000, 0x3c00001},
2206{0x3c00000, 0xffbfffff, 0x1, 0x7fc00000, 0x3c00081},
2207{0x3c00000, 0xffbfffff, 0x76, 0x7fc00000, 0x3c00081},
2208{0x3c00000, 0xffbfffff, 0x2b94, 0x7fc00000, 0x3c00081},
2209{0x3c00000, 0xffbfffff, 0x636d24, 0x7fc00000, 0x3c00081},
2210{0x3c00000, 0xffbfffff, 0x7fffff, 0x7fc00000, 0x3c00081},
2211{0x3c00000, 0xffbfffff, 0x800000, 0x7fc00000, 0x3c00001},
2212{0x3c00000, 0xffbfffff, 0x800002, 0x7fc00000, 0x3c00001},
2213{0x3c00000, 0xffbfffff, 0x1398437, 0x7fc00000, 0x3c00001},
2214{0x3c00000, 0xffbfffff, 0xba98d27, 0x7fc00000, 0x3c00001},
2215{0x3c00000, 0xffbfffff, 0xba98d7a, 0x7fc00000, 0x3c00001},
2216{0x3c00000, 0xffbfffff, 0x751f853a, 0x7fc00000, 0x3c00001},
2217{0x3c00000, 0xffbfffff, 0x7f7ffff0, 0x7fc00000, 0x3c00001},
2218{0x3c00000, 0xffbfffff, 0x7f7fffff, 0x7fc00000, 0x3c00001},
2219{0x3c00000, 0xffbfffff, 0x7f800000, 0x7fc00000, 0x3c00001},
2220{0x3c00000, 0xffbfffff, 0x7f800001, 0x7fc00000, 0x3c00001},
2221{0x3c00000, 0xffbfffff, 0x7f984a37, 0x7fc00000, 0x3c00001},
2222{0x3c00000, 0xffbfffff, 0x7fbfffff, 0x7fc00000, 0x3c00001},
2223{0x3c00000, 0xffbfffff, 0x7fc00000, 0x7fc00000, 0x3c00001},
2224{0x3c00000, 0xffbfffff, 0x7fd9ba98, 0x7fc00000, 0x3c00001},
2225{0x3c00000, 0xffbfffff, 0x7fffffff, 0x7fc00000, 0x3c00001},
2226{0x3c00000, 0xffbfffff, 0x80000000, 0x7fc00000, 0x3c00001},
2227{0x3c00000, 0xffbfffff, 0x80000001, 0x7fc00000, 0x3c00081},
2228{0x3c00000, 0xffbfffff, 0x80000076, 0x7fc00000, 0x3c00081},
2229{0x3c00000, 0xffbfffff, 0x80002b94, 0x7fc00000, 0x3c00081},
2230{0x3c00000, 0xffbfffff, 0x80636d24, 0x7fc00000, 0x3c00081},
2231{0x3c00000, 0xffbfffff, 0x807fffff, 0x7fc00000, 0x3c00081},
2232{0x3c00000, 0xffbfffff, 0x80800000, 0x7fc00000, 0x3c00001},
2233{0x3c00000, 0xffbfffff, 0x80800002, 0x7fc00000, 0x3c00001},
2234{0x3c00000, 0xffbfffff, 0x81398437, 0x7fc00000, 0x3c00001},
2235{0x3c00000, 0xffbfffff, 0x8ba98d27, 0x7fc00000, 0x3c00001},
2236{0x3c00000, 0xffbfffff, 0x8ba98d7a, 0x7fc00000, 0x3c00001},
2237{0x3c00000, 0xffbfffff, 0xf51f853a, 0x7fc00000, 0x3c00001},
2238{0x3c00000, 0xffbfffff, 0xff7ffff0, 0x7fc00000, 0x3c00001},
2239{0x3c00000, 0xffbfffff, 0xff7fffff, 0x7fc00000, 0x3c00001},
2240{0x3c00000, 0xffbfffff, 0xff800000, 0x7fc00000, 0x3c00001},
2241{0x3c00000, 0xffbfffff, 0xff800001, 0x7fc00000, 0x3c00001},
2242{0x3c00000, 0xffbfffff, 0xff984a37, 0x7fc00000, 0x3c00001},
2243{0x3c00000, 0xffbfffff, 0xffbfffff, 0x7fc00000, 0x3c00001},
2244{0x3c00000, 0xffbfffff, 0xffc00000, 0x7fc00000, 0x3c00001},
2245{0x3c00000, 0xffbfffff, 0xffd9ba98, 0x7fc00000, 0x3c00001},
2246{0x3c00000, 0xffbfffff, 0xffffffff, 0x7fc00000, 0x3c00001},
2247{0x3c00000, 0xffbfffff, 0x4f3495cb, 0x7fc00000, 0x3c00001},
2248{0x3c00000, 0xffbfffff, 0xe73a5134, 0x7fc00000, 0x3c00001},
2249{0x3c00000, 0xffbfffff, 0x7c994e9e, 0x7fc00000, 0x3c00001},
2250{0x3c00000, 0xffbfffff, 0x6164bd6c, 0x7fc00000, 0x3c00001},
2251{0x3c00000, 0xffbfffff, 0x9503366, 0x7fc00000, 0x3c00001},
2252{0x3c00000, 0xffbfffff, 0xbf5a97c9, 0x7fc00000, 0x3c00001},
2253{0x3c00000, 0xffbfffff, 0xe6ff1a14, 0x7fc00000, 0x3c00001},
2254{0x3c00000, 0xffbfffff, 0x77f31e2f, 0x7fc00000, 0x3c00001},
2255{0x3c00000, 0xffbfffff, 0xaab4d7d8, 0x7fc00000, 0x3c00001},
2256{0x3c00000, 0xffbfffff, 0x966320b, 0x7fc00000, 0x3c00001},
2257{0x3c00000, 0xffbfffff, 0xb26bddee, 0x7fc00000, 0x3c00001},
2258{0x3c00000, 0xffbfffff, 0xb5c8e5d3, 0x7fc00000, 0x3c00001},
2259{0x3c00000, 0xffbfffff, 0x317285d3, 0x7fc00000, 0x3c00001},
2260{0x3c00000, 0xffbfffff, 0x3c9623b1, 0x7fc00000, 0x3c00001},
2261{0x3c00000, 0xffbfffff, 0x51fd2c7c, 0x7fc00000, 0x3c00001},
2262{0x3c00000, 0xffbfffff, 0x7b906a6c, 0x7fc00000, 0x3c00001},
2263{0x3c00000, 0xffc00000, 0x0, 0x7fc00000, 0x3c00000},
2264{0x3c00000, 0xffc00000, 0x1, 0x7fc00000, 0x3c00080},
2265{0x3c00000, 0xffc00000, 0x76, 0x7fc00000, 0x3c00080},
2266{0x3c00000, 0xffc00000, 0x2b94, 0x7fc00000, 0x3c00080},
2267{0x3c00000, 0xffc00000, 0x636d24, 0x7fc00000, 0x3c00080},
2268{0x3c00000, 0xffc00000, 0x7fffff, 0x7fc00000, 0x3c00080},
2269{0x3c00000, 0xffc00000, 0x800000, 0x7fc00000, 0x3c00000},
2270{0x3c00000, 0xffc00000, 0x800002, 0x7fc00000, 0x3c00000},
2271{0x3c00000, 0xffc00000, 0x1398437, 0x7fc00000, 0x3c00000},
2272{0x3c00000, 0xffc00000, 0xba98d27, 0x7fc00000, 0x3c00000},
2273{0x3c00000, 0xffc00000, 0xba98d7a, 0x7fc00000, 0x3c00000},
2274{0x3c00000, 0xffc00000, 0x751f853a, 0x7fc00000, 0x3c00000},
2275{0x3c00000, 0xffc00000, 0x7f7ffff0, 0x7fc00000, 0x3c00000},
2276{0x3c00000, 0xffc00000, 0x7f7fffff, 0x7fc00000, 0x3c00000},
2277{0x3c00000, 0xffc00000, 0x7f800000, 0x7fc00000, 0x3c00000},
2278{0x3c00000, 0xffc00000, 0x7f800001, 0x7fc00000, 0x3c00001},
2279{0x3c00000, 0xffc00000, 0x7f984a37, 0x7fc00000, 0x3c00001},
2280{0x3c00000, 0xffc00000, 0x7fbfffff, 0x7fc00000, 0x3c00001},
2281{0x3c00000, 0xffc00000, 0x7fc00000, 0x7fc00000, 0x3c00000},
2282{0x3c00000, 0xffc00000, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
2283{0x3c00000, 0xffc00000, 0x7fffffff, 0x7fc00000, 0x3c00000},
2284{0x3c00000, 0xffc00000, 0x80000000, 0x7fc00000, 0x3c00000},
2285{0x3c00000, 0xffc00000, 0x80000001, 0x7fc00000, 0x3c00080},
2286{0x3c00000, 0xffc00000, 0x80000076, 0x7fc00000, 0x3c00080},
2287{0x3c00000, 0xffc00000, 0x80002b94, 0x7fc00000, 0x3c00080},
2288{0x3c00000, 0xffc00000, 0x80636d24, 0x7fc00000, 0x3c00080},
2289{0x3c00000, 0xffc00000, 0x807fffff, 0x7fc00000, 0x3c00080},
2290{0x3c00000, 0xffc00000, 0x80800000, 0x7fc00000, 0x3c00000},
2291{0x3c00000, 0xffc00000, 0x80800002, 0x7fc00000, 0x3c00000},
2292{0x3c00000, 0xffc00000, 0x81398437, 0x7fc00000, 0x3c00000},
2293{0x3c00000, 0xffc00000, 0x8ba98d27, 0x7fc00000, 0x3c00000},
2294{0x3c00000, 0xffc00000, 0x8ba98d7a, 0x7fc00000, 0x3c00000},
2295{0x3c00000, 0xffc00000, 0xf51f853a, 0x7fc00000, 0x3c00000},
2296{0x3c00000, 0xffc00000, 0xff7ffff0, 0x7fc00000, 0x3c00000},
2297{0x3c00000, 0xffc00000, 0xff7fffff, 0x7fc00000, 0x3c00000},
2298{0x3c00000, 0xffc00000, 0xff800000, 0x7fc00000, 0x3c00000},
2299{0x3c00000, 0xffc00000, 0xff800001, 0x7fc00000, 0x3c00001},
2300{0x3c00000, 0xffc00000, 0xff984a37, 0x7fc00000, 0x3c00001},
2301{0x3c00000, 0xffc00000, 0xffbfffff, 0x7fc00000, 0x3c00001},
2302{0x3c00000, 0xffc00000, 0xffc00000, 0x7fc00000, 0x3c00000},
2303{0x3c00000, 0xffc00000, 0xffd9ba98, 0x7fc00000, 0x3c00000},
2304{0x3c00000, 0xffc00000, 0xffffffff, 0x7fc00000, 0x3c00000},
2305{0x3c00000, 0xffc00000, 0x4f3495cb, 0x7fc00000, 0x3c00000},
2306{0x3c00000, 0xffc00000, 0xe73a5134, 0x7fc00000, 0x3c00000},
2307{0x3c00000, 0xffc00000, 0x7c994e9e, 0x7fc00000, 0x3c00000},
2308{0x3c00000, 0xffc00000, 0x6164bd6c, 0x7fc00000, 0x3c00000},
2309{0x3c00000, 0xffc00000, 0x9503366, 0x7fc00000, 0x3c00000},
2310{0x3c00000, 0xffc00000, 0xbf5a97c9, 0x7fc00000, 0x3c00000},
2311{0x3c00000, 0xffc00000, 0xe6ff1a14, 0x7fc00000, 0x3c00000},
2312{0x3c00000, 0xffc00000, 0x77f31e2f, 0x7fc00000, 0x3c00000},
2313{0x3c00000, 0xffc00000, 0xaab4d7d8, 0x7fc00000, 0x3c00000},
2314{0x3c00000, 0xffc00000, 0x966320b, 0x7fc00000, 0x3c00000},
2315{0x3c00000, 0xffc00000, 0xb26bddee, 0x7fc00000, 0x3c00000},
2316{0x3c00000, 0xffc00000, 0xb5c8e5d3, 0x7fc00000, 0x3c00000},
2317{0x3c00000, 0xffc00000, 0x317285d3, 0x7fc00000, 0x3c00000},
2318{0x3c00000, 0xffc00000, 0x3c9623b1, 0x7fc00000, 0x3c00000},
2319{0x3c00000, 0xffc00000, 0x51fd2c7c, 0x7fc00000, 0x3c00000},
2320{0x3c00000, 0xffc00000, 0x7b906a6c, 0x7fc00000, 0x3c00000},
2321{0x3c00000, 0xffd9ba98, 0x0, 0x7fc00000, 0x3c00000},
2322{0x3c00000, 0xffd9ba98, 0x1, 0x7fc00000, 0x3c00080},
2323{0x3c00000, 0xffd9ba98, 0x76, 0x7fc00000, 0x3c00080},
2324{0x3c00000, 0xffd9ba98, 0x2b94, 0x7fc00000, 0x3c00080},
2325{0x3c00000, 0xffd9ba98, 0x636d24, 0x7fc00000, 0x3c00080},
2326{0x3c00000, 0xffd9ba98, 0x7fffff, 0x7fc00000, 0x3c00080},
2327{0x3c00000, 0xffd9ba98, 0x800000, 0x7fc00000, 0x3c00000},
2328{0x3c00000, 0xffd9ba98, 0x800002, 0x7fc00000, 0x3c00000},
2329{0x3c00000, 0xffd9ba98, 0x1398437, 0x7fc00000, 0x3c00000},
2330{0x3c00000, 0xffd9ba98, 0xba98d27, 0x7fc00000, 0x3c00000},
2331{0x3c00000, 0xffd9ba98, 0xba98d7a, 0x7fc00000, 0x3c00000},
2332{0x3c00000, 0xffd9ba98, 0x751f853a, 0x7fc00000, 0x3c00000},
2333{0x3c00000, 0xffd9ba98, 0x7f7ffff0, 0x7fc00000, 0x3c00000},
2334{0x3c00000, 0xffd9ba98, 0x7f7fffff, 0x7fc00000, 0x3c00000},
2335{0x3c00000, 0xffd9ba98, 0x7f800000, 0x7fc00000, 0x3c00000},
2336{0x3c00000, 0xffd9ba98, 0x7f800001, 0x7fc00000, 0x3c00001},
2337{0x3c00000, 0xffd9ba98, 0x7f984a37, 0x7fc00000, 0x3c00001},
2338{0x3c00000, 0xffd9ba98, 0x7fbfffff, 0x7fc00000, 0x3c00001},
2339{0x3c00000, 0xffd9ba98, 0x7fc00000, 0x7fc00000, 0x3c00000},
2340{0x3c00000, 0xffd9ba98, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
2341{0x3c00000, 0xffd9ba98, 0x7fffffff, 0x7fc00000, 0x3c00000},
2342{0x3c00000, 0xffd9ba98, 0x80000000, 0x7fc00000, 0x3c00000},
2343{0x3c00000, 0xffd9ba98, 0x80000001, 0x7fc00000, 0x3c00080},
2344{0x3c00000, 0xffd9ba98, 0x80000076, 0x7fc00000, 0x3c00080},
2345{0x3c00000, 0xffd9ba98, 0x80002b94, 0x7fc00000, 0x3c00080},
2346{0x3c00000, 0xffd9ba98, 0x80636d24, 0x7fc00000, 0x3c00080},
2347{0x3c00000, 0xffd9ba98, 0x807fffff, 0x7fc00000, 0x3c00080},
2348{0x3c00000, 0xffd9ba98, 0x80800000, 0x7fc00000, 0x3c00000},
2349{0x3c00000, 0xffd9ba98, 0x80800002, 0x7fc00000, 0x3c00000},
2350{0x3c00000, 0xffd9ba98, 0x81398437, 0x7fc00000, 0x3c00000},
2351{0x3c00000, 0xffd9ba98, 0x8ba98d27, 0x7fc00000, 0x3c00000},
2352{0x3c00000, 0xffd9ba98, 0x8ba98d7a, 0x7fc00000, 0x3c00000},
2353{0x3c00000, 0xffd9ba98, 0xf51f853a, 0x7fc00000, 0x3c00000},
2354{0x3c00000, 0xffd9ba98, 0xff7ffff0, 0x7fc00000, 0x3c00000},
2355{0x3c00000, 0xffd9ba98, 0xff7fffff, 0x7fc00000, 0x3c00000},
2356{0x3c00000, 0xffd9ba98, 0xff800000, 0x7fc00000, 0x3c00000},
2357{0x3c00000, 0xffd9ba98, 0xff800001, 0x7fc00000, 0x3c00001},
2358{0x3c00000, 0xffd9ba98, 0xff984a37, 0x7fc00000, 0x3c00001},
2359{0x3c00000, 0xffd9ba98, 0xffbfffff, 0x7fc00000, 0x3c00001},
2360{0x3c00000, 0xffd9ba98, 0xffc00000, 0x7fc00000, 0x3c00000},
2361{0x3c00000, 0xffd9ba98, 0xffd9ba98, 0x7fc00000, 0x3c00000},
2362{0x3c00000, 0xffd9ba98, 0xffffffff, 0x7fc00000, 0x3c00000},
2363{0x3c00000, 0xffd9ba98, 0x4f3495cb, 0x7fc00000, 0x3c00000},
2364{0x3c00000, 0xffd9ba98, 0xe73a5134, 0x7fc00000, 0x3c00000},
2365{0x3c00000, 0xffd9ba98, 0x7c994e9e, 0x7fc00000, 0x3c00000},
2366{0x3c00000, 0xffd9ba98, 0x6164bd6c, 0x7fc00000, 0x3c00000},
2367{0x3c00000, 0xffd9ba98, 0x9503366, 0x7fc00000, 0x3c00000},
2368{0x3c00000, 0xffd9ba98, 0xbf5a97c9, 0x7fc00000, 0x3c00000},
2369{0x3c00000, 0xffd9ba98, 0xe6ff1a14, 0x7fc00000, 0x3c00000},
2370{0x3c00000, 0xffd9ba98, 0x77f31e2f, 0x7fc00000, 0x3c00000},
2371{0x3c00000, 0xffd9ba98, 0xaab4d7d8, 0x7fc00000, 0x3c00000},
2372{0x3c00000, 0xffd9ba98, 0x966320b, 0x7fc00000, 0x3c00000},
2373{0x3c00000, 0xffd9ba98, 0xb26bddee, 0x7fc00000, 0x3c00000},
2374{0x3c00000, 0xffd9ba98, 0xb5c8e5d3, 0x7fc00000, 0x3c00000},
2375{0x3c00000, 0xffd9ba98, 0x317285d3, 0x7fc00000, 0x3c00000},
2376{0x3c00000, 0xffd9ba98, 0x3c9623b1, 0x7fc00000, 0x3c00000},
2377{0x3c00000, 0xffd9ba98, 0x51fd2c7c, 0x7fc00000, 0x3c00000},
2378{0x3c00000, 0xffd9ba98, 0x7b906a6c, 0x7fc00000, 0x3c00000},
2379{0x3c00000, 0xffffffff, 0x0, 0x7fc00000, 0x3c00000},
2380{0x3c00000, 0xffffffff, 0x1, 0x7fc00000, 0x3c00080},
2381{0x3c00000, 0xffffffff, 0x76, 0x7fc00000, 0x3c00080},
2382{0x3c00000, 0xffffffff, 0x2b94, 0x7fc00000, 0x3c00080},
2383{0x3c00000, 0xffffffff, 0x636d24, 0x7fc00000, 0x3c00080},
2384{0x3c00000, 0xffffffff, 0x7fffff, 0x7fc00000, 0x3c00080},
2385{0x3c00000, 0xffffffff, 0x800000, 0x7fc00000, 0x3c00000},
2386{0x3c00000, 0xffffffff, 0x800002, 0x7fc00000, 0x3c00000},
2387{0x3c00000, 0xffffffff, 0x1398437, 0x7fc00000, 0x3c00000},
2388{0x3c00000, 0xffffffff, 0xba98d27, 0x7fc00000, 0x3c00000},
2389{0x3c00000, 0xffffffff, 0xba98d7a, 0x7fc00000, 0x3c00000},
2390{0x3c00000, 0xffffffff, 0x751f853a, 0x7fc00000, 0x3c00000},
2391{0x3c00000, 0xffffffff, 0x7f7ffff0, 0x7fc00000, 0x3c00000},
2392{0x3c00000, 0xffffffff, 0x7f7fffff, 0x7fc00000, 0x3c00000},
2393{0x3c00000, 0xffffffff, 0x7f800000, 0x7fc00000, 0x3c00000},
2394{0x3c00000, 0xffffffff, 0x7f800001, 0x7fc00000, 0x3c00001},
2395{0x3c00000, 0xffffffff, 0x7f984a37, 0x7fc00000, 0x3c00001},
2396{0x3c00000, 0xffffffff, 0x7fbfffff, 0x7fc00000, 0x3c00001},
2397{0x3c00000, 0xffffffff, 0x7fc00000, 0x7fc00000, 0x3c00000},
2398{0x3c00000, 0xffffffff, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
2399{0x3c00000, 0xffffffff, 0x7fffffff, 0x7fc00000, 0x3c00000},
2400{0x3c00000, 0xffffffff, 0x80000000, 0x7fc00000, 0x3c00000},
2401{0x3c00000, 0xffffffff, 0x80000001, 0x7fc00000, 0x3c00080},
2402{0x3c00000, 0xffffffff, 0x80000076, 0x7fc00000, 0x3c00080},
2403{0x3c00000, 0xffffffff, 0x80002b94, 0x7fc00000, 0x3c00080},
2404{0x3c00000, 0xffffffff, 0x80636d24, 0x7fc00000, 0x3c00080},
2405{0x3c00000, 0xffffffff, 0x807fffff, 0x7fc00000, 0x3c00080},
2406{0x3c00000, 0xffffffff, 0x80800000, 0x7fc00000, 0x3c00000},
2407{0x3c00000, 0xffffffff, 0x80800002, 0x7fc00000, 0x3c00000},
2408{0x3c00000, 0xffffffff, 0x81398437, 0x7fc00000, 0x3c00000},
2409{0x3c00000, 0xffffffff, 0x8ba98d27, 0x7fc00000, 0x3c00000},
2410{0x3c00000, 0xffffffff, 0x8ba98d7a, 0x7fc00000, 0x3c00000},
2411{0x3c00000, 0xffffffff, 0xf51f853a, 0x7fc00000, 0x3c00000},
2412{0x3c00000, 0xffffffff, 0xff7ffff0, 0x7fc00000, 0x3c00000},
2413{0x3c00000, 0xffffffff, 0xff7fffff, 0x7fc00000, 0x3c00000},
2414{0x3c00000, 0xffffffff, 0xff800000, 0x7fc00000, 0x3c00000},
2415{0x3c00000, 0xffffffff, 0xff800001, 0x7fc00000, 0x3c00001},
2416{0x3c00000, 0xffffffff, 0xff984a37, 0x7fc00000, 0x3c00001},
2417{0x3c00000, 0xffffffff, 0xffbfffff, 0x7fc00000, 0x3c00001},
2418{0x3c00000, 0xffffffff, 0xffc00000, 0x7fc00000, 0x3c00000},
2419{0x3c00000, 0xffffffff, 0xffd9ba98, 0x7fc00000, 0x3c00000},
2420{0x3c00000, 0xffffffff, 0xffffffff, 0x7fc00000, 0x3c00000},
2421{0x3c00000, 0xffffffff, 0x4f3495cb, 0x7fc00000, 0x3c00000},
2422{0x3c00000, 0xffffffff, 0xe73a5134, 0x7fc00000, 0x3c00000},
2423{0x3c00000, 0xffffffff, 0x7c994e9e, 0x7fc00000, 0x3c00000},
2424{0x3c00000, 0xffffffff, 0x6164bd6c, 0x7fc00000, 0x3c00000},
2425{0x3c00000, 0xffffffff, 0x9503366, 0x7fc00000, 0x3c00000},
2426{0x3c00000, 0xffffffff, 0xbf5a97c9, 0x7fc00000, 0x3c00000},
2427{0x3c00000, 0xffffffff, 0xe6ff1a14, 0x7fc00000, 0x3c00000},
2428{0x3c00000, 0xffffffff, 0x77f31e2f, 0x7fc00000, 0x3c00000},
2429{0x3c00000, 0xffffffff, 0xaab4d7d8, 0x7fc00000, 0x3c00000},
2430{0x3c00000, 0xffffffff, 0x966320b, 0x7fc00000, 0x3c00000},
2431{0x3c00000, 0xffffffff, 0xb26bddee, 0x7fc00000, 0x3c00000},
2432{0x3c00000, 0xffffffff, 0xb5c8e5d3, 0x7fc00000, 0x3c00000},
2433{0x3c00000, 0xffffffff, 0x317285d3, 0x7fc00000, 0x3c00000},
2434{0x3c00000, 0xffffffff, 0x3c9623b1, 0x7fc00000, 0x3c00000},
2435{0x3c00000, 0xffffffff, 0x51fd2c7c, 0x7fc00000, 0x3c00000},
2436{0x3c00000, 0xffffffff, 0x7b906a6c, 0x7fc00000, 0x3c00000},
2437{0x3c00000, 0x4f3495cb, 0x0, 0x4f3495cb, 0x3c00000},
2438{0x3c00000, 0x4f3495cb, 0x1, 0x4f3495cb, 0x3c00080},
2439{0x3c00000, 0x4f3495cb, 0x76, 0x4f3495cb, 0x3c00080},
2440{0x3c00000, 0x4f3495cb, 0x2b94, 0x4f3495cb, 0x3c00080},
2441{0x3c00000, 0x4f3495cb, 0x636d24, 0x4f3495cb, 0x3c00080},
2442{0x3c00000, 0x4f3495cb, 0x7fffff, 0x4f3495cb, 0x3c00080},
2443{0x3c00000, 0x4f3495cb, 0x800000, 0x4f3495cb, 0x3c00010},
2444{0x3c00000, 0x4f3495cb, 0x800002, 0x4f3495cb, 0x3c00010},
2445{0x3c00000, 0x4f3495cb, 0x1398437, 0x4f3495cb, 0x3c00010},
2446{0x3c00000, 0x4f3495cb, 0xba98d27, 0x4f3495cb, 0x3c00010},
2447{0x3c00000, 0x4f3495cb, 0xba98d7a, 0x4f3495cb, 0x3c00010},
2448{0x3c00000, 0x4f3495cb, 0x751f853a, 0x751f853a, 0x3c00010},
2449{0x3c00000, 0x4f3495cb, 0x7f7ffff0, 0x7f7ffff0, 0x3c00010},
2450{0x3c00000, 0x4f3495cb, 0x7f7fffff, 0x7f7fffff, 0x3c00010},
2451{0x3c00000, 0x4f3495cb, 0x7f800000, 0x7f800000, 0x3c00000},
2452{0x3c00000, 0x4f3495cb, 0x7f800001, 0x7fc00000, 0x3c00001},
2453{0x3c00000, 0x4f3495cb, 0x7f984a37, 0x7fc00000, 0x3c00001},
2454{0x3c00000, 0x4f3495cb, 0x7fbfffff, 0x7fc00000, 0x3c00001},
2455{0x3c00000, 0x4f3495cb, 0x7fc00000, 0x7fc00000, 0x3c00000},
2456{0x3c00000, 0x4f3495cb, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
2457{0x3c00000, 0x4f3495cb, 0x7fffffff, 0x7fc00000, 0x3c00000},
2458{0x3c00000, 0x4f3495cb, 0x80000000, 0x4f3495cb, 0x3c00000},
2459{0x3c00000, 0x4f3495cb, 0x80000001, 0x4f3495cb, 0x3c00080},
2460{0x3c00000, 0x4f3495cb, 0x80000076, 0x4f3495cb, 0x3c00080},
2461{0x3c00000, 0x4f3495cb, 0x80002b94, 0x4f3495cb, 0x3c00080},
2462{0x3c00000, 0x4f3495cb, 0x80636d24, 0x4f3495cb, 0x3c00080},
2463{0x3c00000, 0x4f3495cb, 0x807fffff, 0x4f3495cb, 0x3c00080},
2464{0x3c00000, 0x4f3495cb, 0x80800000, 0x4f3495ca, 0x3c00010},
2465{0x3c00000, 0x4f3495cb, 0x80800002, 0x4f3495ca, 0x3c00010},
2466{0x3c00000, 0x4f3495cb, 0x81398437, 0x4f3495ca, 0x3c00010},
2467{0x3c00000, 0x4f3495cb, 0x8ba98d27, 0x4f3495ca, 0x3c00010},
2468{0x3c00000, 0x4f3495cb, 0x8ba98d7a, 0x4f3495ca, 0x3c00010},
2469{0x3c00000, 0x4f3495cb, 0xf51f853a, 0xf51f8539, 0x3c00010},
2470{0x3c00000, 0x4f3495cb, 0xff7ffff0, 0xff7fffef, 0x3c00010},
2471{0x3c00000, 0x4f3495cb, 0xff7fffff, 0xff7ffffe, 0x3c00010},
2472{0x3c00000, 0x4f3495cb, 0xff800000, 0xff800000, 0x3c00000},
2473{0x3c00000, 0x4f3495cb, 0xff800001, 0x7fc00000, 0x3c00001},
2474{0x3c00000, 0x4f3495cb, 0xff984a37, 0x7fc00000, 0x3c00001},
2475{0x3c00000, 0x4f3495cb, 0xffbfffff, 0x7fc00000, 0x3c00001},
2476{0x3c00000, 0x4f3495cb, 0xffc00000, 0x7fc00000, 0x3c00000},
2477{0x3c00000, 0x4f3495cb, 0xffd9ba98, 0x7fc00000, 0x3c00000},
2478{0x3c00000, 0x4f3495cb, 0xffffffff, 0x7fc00000, 0x3c00000},
2479{0x3c00000, 0x4f3495cb, 0x4f3495cb, 0x4fb495cb, 0x3c00000},
2480{0x3c00000, 0x4f3495cb, 0xe73a5134, 0xe73a5133, 0x3c00010},
2481{0x3c00000, 0x4f3495cb, 0x7c994e9e, 0x7c994e9e, 0x3c00010},
2482{0x3c00000, 0x4f3495cb, 0x6164bd6c, 0x6164bd6c, 0x3c00010},
2483{0x3c00000, 0x4f3495cb, 0x9503366, 0x4f3495cb, 0x3c00010},
2484{0x3c00000, 0x4f3495cb, 0xbf5a97c9, 0x4f3495ca, 0x3c00010},
2485{0x3c00000, 0x4f3495cb, 0xe6ff1a14, 0xe6ff1a13, 0x3c00010},
2486{0x3c00000, 0x4f3495cb, 0x77f31e2f, 0x77f31e2f, 0x3c00010},
2487{0x3c00000, 0x4f3495cb, 0xaab4d7d8, 0x4f3495ca, 0x3c00010},
2488{0x3c00000, 0x4f3495cb, 0x966320b, 0x4f3495cb, 0x3c00010},
2489{0x3c00000, 0x4f3495cb, 0xb26bddee, 0x4f3495ca, 0x3c00010},
2490{0x3c00000, 0x4f3495cb, 0xb5c8e5d3, 0x4f3495ca, 0x3c00010},
2491{0x3c00000, 0x4f3495cb, 0x317285d3, 0x4f3495cb, 0x3c00010},
2492{0x3c00000, 0x4f3495cb, 0x3c9623b1, 0x4f3495cb, 0x3c00010},
2493{0x3c00000, 0x4f3495cb, 0x51fd2c7c, 0x52016895, 0x3c00010},
2494{0x3c00000, 0x4f3495cb, 0x7b906a6c, 0x7b906a6c, 0x3c00010},
2495{0x3c00000, 0xe73a5134, 0x0, 0xe73a5134, 0x3c00000},
2496{0x3c00000, 0xe73a5134, 0x1, 0xe73a5134, 0x3c00080},
2497{0x3c00000, 0xe73a5134, 0x76, 0xe73a5134, 0x3c00080},
2498{0x3c00000, 0xe73a5134, 0x2b94, 0xe73a5134, 0x3c00080},
2499{0x3c00000, 0xe73a5134, 0x636d24, 0xe73a5134, 0x3c00080},
2500{0x3c00000, 0xe73a5134, 0x7fffff, 0xe73a5134, 0x3c00080},
2501{0x3c00000, 0xe73a5134, 0x800000, 0xe73a5133, 0x3c00010},
2502{0x3c00000, 0xe73a5134, 0x800002, 0xe73a5133, 0x3c00010},
2503{0x3c00000, 0xe73a5134, 0x1398437, 0xe73a5133, 0x3c00010},
2504{0x3c00000, 0xe73a5134, 0xba98d27, 0xe73a5133, 0x3c00010},
2505{0x3c00000, 0xe73a5134, 0xba98d7a, 0xe73a5133, 0x3c00010},
2506{0x3c00000, 0xe73a5134, 0x751f853a, 0x751f8539, 0x3c00010},
2507{0x3c00000, 0xe73a5134, 0x7f7ffff0, 0x7f7fffef, 0x3c00010},
2508{0x3c00000, 0xe73a5134, 0x7f7fffff, 0x7f7ffffe, 0x3c00010},
2509{0x3c00000, 0xe73a5134, 0x7f800000, 0x7f800000, 0x3c00000},
2510{0x3c00000, 0xe73a5134, 0x7f800001, 0x7fc00000, 0x3c00001},
2511{0x3c00000, 0xe73a5134, 0x7f984a37, 0x7fc00000, 0x3c00001},
2512{0x3c00000, 0xe73a5134, 0x7fbfffff, 0x7fc00000, 0x3c00001},
2513{0x3c00000, 0xe73a5134, 0x7fc00000, 0x7fc00000, 0x3c00000},
2514{0x3c00000, 0xe73a5134, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
2515{0x3c00000, 0xe73a5134, 0x7fffffff, 0x7fc00000, 0x3c00000},
2516{0x3c00000, 0xe73a5134, 0x80000000, 0xe73a5134, 0x3c00000},
2517{0x3c00000, 0xe73a5134, 0x80000001, 0xe73a5134, 0x3c00080},
2518{0x3c00000, 0xe73a5134, 0x80000076, 0xe73a5134, 0x3c00080},
2519{0x3c00000, 0xe73a5134, 0x80002b94, 0xe73a5134, 0x3c00080},
2520{0x3c00000, 0xe73a5134, 0x80636d24, 0xe73a5134, 0x3c00080},
2521{0x3c00000, 0xe73a5134, 0x807fffff, 0xe73a5134, 0x3c00080},
2522{0x3c00000, 0xe73a5134, 0x80800000, 0xe73a5134, 0x3c00010},
2523{0x3c00000, 0xe73a5134, 0x80800002, 0xe73a5134, 0x3c00010},
2524{0x3c00000, 0xe73a5134, 0x81398437, 0xe73a5134, 0x3c00010},
2525{0x3c00000, 0xe73a5134, 0x8ba98d27, 0xe73a5134, 0x3c00010},
2526{0x3c00000, 0xe73a5134, 0x8ba98d7a, 0xe73a5134, 0x3c00010},
2527{0x3c00000, 0xe73a5134, 0xf51f853a, 0xf51f853a, 0x3c00010},
2528{0x3c00000, 0xe73a5134, 0xff7ffff0, 0xff7ffff0, 0x3c00010},
2529{0x3c00000, 0xe73a5134, 0xff7fffff, 0xff7fffff, 0x3c00010},
2530{0x3c00000, 0xe73a5134, 0xff800000, 0xff800000, 0x3c00000},
2531{0x3c00000, 0xe73a5134, 0xff800001, 0x7fc00000, 0x3c00001},
2532{0x3c00000, 0xe73a5134, 0xff984a37, 0x7fc00000, 0x3c00001},
2533{0x3c00000, 0xe73a5134, 0xffbfffff, 0x7fc00000, 0x3c00001},
2534{0x3c00000, 0xe73a5134, 0xffc00000, 0x7fc00000, 0x3c00000},
2535{0x3c00000, 0xe73a5134, 0xffd9ba98, 0x7fc00000, 0x3c00000},
2536{0x3c00000, 0xe73a5134, 0xffffffff, 0x7fc00000, 0x3c00000},
2537{0x3c00000, 0xe73a5134, 0x4f3495cb, 0xe73a5133, 0x3c00010},
2538{0x3c00000, 0xe73a5134, 0xe73a5134, 0xe7ba5134, 0x3c00000},
2539{0x3c00000, 0xe73a5134, 0x7c994e9e, 0x7c994e9d, 0x3c00010},
2540{0x3c00000, 0xe73a5134, 0x6164bd6c, 0xe73a42e8, 0x3c00010},
2541{0x3c00000, 0xe73a5134, 0x9503366, 0xe73a5133, 0x3c00010},
2542{0x3c00000, 0xe73a5134, 0xbf5a97c9, 0xe73a5134, 0x3c00010},
2543{0x3c00000, 0xe73a5134, 0xe6ff1a14, 0xe79cef1f, 0x3c00000},
2544{0x3c00000, 0xe73a5134, 0x77f31e2f, 0x77f31e2e, 0x3c00010},
2545{0x3c00000, 0xe73a5134, 0xaab4d7d8, 0xe73a5134, 0x3c00010},
2546{0x3c00000, 0xe73a5134, 0x966320b, 0xe73a5133, 0x3c00010},
2547{0x3c00000, 0xe73a5134, 0xb26bddee, 0xe73a5134, 0x3c00010},
2548{0x3c00000, 0xe73a5134, 0xb5c8e5d3, 0xe73a5134, 0x3c00010},
2549{0x3c00000, 0xe73a5134, 0x317285d3, 0xe73a5133, 0x3c00010},
2550{0x3c00000, 0xe73a5134, 0x3c9623b1, 0xe73a5133, 0x3c00010},
2551{0x3c00000, 0xe73a5134, 0x51fd2c7c, 0xe73a5133, 0x3c00010},
2552{0x3c00000, 0xe73a5134, 0x7b906a6c, 0x7b906a6b, 0x3c00010},
2553{0x3c00000, 0x7c994e9e, 0x0, 0x7c994e9e, 0x3c00000},
2554{0x3c00000, 0x7c994e9e, 0x1, 0x7c994e9e, 0x3c00080},
2555{0x3c00000, 0x7c994e9e, 0x76, 0x7c994e9e, 0x3c00080},
2556{0x3c00000, 0x7c994e9e, 0x2b94, 0x7c994e9e, 0x3c00080},
2557{0x3c00000, 0x7c994e9e, 0x636d24, 0x7c994e9e, 0x3c00080},
2558{0x3c00000, 0x7c994e9e, 0x7fffff, 0x7c994e9e, 0x3c00080},
2559{0x3c00000, 0x7c994e9e, 0x800000, 0x7c994e9e, 0x3c00010},
2560{0x3c00000, 0x7c994e9e, 0x800002, 0x7c994e9e, 0x3c00010},
2561{0x3c00000, 0x7c994e9e, 0x1398437, 0x7c994e9e, 0x3c00010},
2562{0x3c00000, 0x7c994e9e, 0xba98d27, 0x7c994e9e, 0x3c00010},
2563{0x3c00000, 0x7c994e9e, 0xba98d7a, 0x7c994e9e, 0x3c00010},
2564{0x3c00000, 0x7c994e9e, 0x751f853a, 0x7c994fdd, 0x3c00010},
2565{0x3c00000, 0x7c994e9e, 0x7f7ffff0, 0x7f7fffff, 0x3c00014},
2566{0x3c00000, 0x7c994e9e, 0x7f7fffff, 0x7f7fffff, 0x3c00014},
2567{0x3c00000, 0x7c994e9e, 0x7f800000, 0x7f800000, 0x3c00000},
2568{0x3c00000, 0x7c994e9e, 0x7f800001, 0x7fc00000, 0x3c00001},
2569{0x3c00000, 0x7c994e9e, 0x7f984a37, 0x7fc00000, 0x3c00001},
2570{0x3c00000, 0x7c994e9e, 0x7fbfffff, 0x7fc00000, 0x3c00001},
2571{0x3c00000, 0x7c994e9e, 0x7fc00000, 0x7fc00000, 0x3c00000},
2572{0x3c00000, 0x7c994e9e, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
2573{0x3c00000, 0x7c994e9e, 0x7fffffff, 0x7fc00000, 0x3c00000},
2574{0x3c00000, 0x7c994e9e, 0x80000000, 0x7c994e9e, 0x3c00000},
2575{0x3c00000, 0x7c994e9e, 0x80000001, 0x7c994e9e, 0x3c00080},
2576{0x3c00000, 0x7c994e9e, 0x80000076, 0x7c994e9e, 0x3c00080},
2577{0x3c00000, 0x7c994e9e, 0x80002b94, 0x7c994e9e, 0x3c00080},
2578{0x3c00000, 0x7c994e9e, 0x80636d24, 0x7c994e9e, 0x3c00080},
2579{0x3c00000, 0x7c994e9e, 0x807fffff, 0x7c994e9e, 0x3c00080},
2580{0x3c00000, 0x7c994e9e, 0x80800000, 0x7c994e9d, 0x3c00010},
2581{0x3c00000, 0x7c994e9e, 0x80800002, 0x7c994e9d, 0x3c00010},
2582{0x3c00000, 0x7c994e9e, 0x81398437, 0x7c994e9d, 0x3c00010},
2583{0x3c00000, 0x7c994e9e, 0x8ba98d27, 0x7c994e9d, 0x3c00010},
2584{0x3c00000, 0x7c994e9e, 0x8ba98d7a, 0x7c994e9d, 0x3c00010},
2585{0x3c00000, 0x7c994e9e, 0xf51f853a, 0x7c994d5e, 0x3c00010},
2586{0x3c00000, 0x7c994e9e, 0xff7ffff0, 0xff7b357b, 0x3c00010},
2587{0x3c00000, 0x7c994e9e, 0xff7fffff, 0xff7b358a, 0x3c00010},
2588{0x3c00000, 0x7c994e9e, 0xff800000, 0xff800000, 0x3c00000},
2589{0x3c00000, 0x7c994e9e, 0xff800001, 0x7fc00000, 0x3c00001},
2590{0x3c00000, 0x7c994e9e, 0xff984a37, 0x7fc00000, 0x3c00001},
2591{0x3c00000, 0x7c994e9e, 0xffbfffff, 0x7fc00000, 0x3c00001},
2592{0x3c00000, 0x7c994e9e, 0xffc00000, 0x7fc00000, 0x3c00000},
2593{0x3c00000, 0x7c994e9e, 0xffd9ba98, 0x7fc00000, 0x3c00000},
2594{0x3c00000, 0x7c994e9e, 0xffffffff, 0x7fc00000, 0x3c00000},
2595{0x3c00000, 0x7c994e9e, 0x4f3495cb, 0x7c994e9e, 0x3c00010},
2596{0x3c00000, 0x7c994e9e, 0xe73a5134, 0x7c994e9d, 0x3c00010},
2597{0x3c00000, 0x7c994e9e, 0x7c994e9e, 0x7d194e9e, 0x3c00000},
2598{0x3c00000, 0x7c994e9e, 0x6164bd6c, 0x7c994e9e, 0x3c00010},
2599{0x3c00000, 0x7c994e9e, 0x9503366, 0x7c994e9e, 0x3c00010},
2600{0x3c00000, 0x7c994e9e, 0xbf5a97c9, 0x7c994e9d, 0x3c00010},
2601{0x3c00000, 0x7c994e9e, 0xe6ff1a14, 0x7c994e9d, 0x3c00010},
2602{0x3c00000, 0x7c994e9e, 0x77f31e2f, 0x7c998b65, 0x3c00010},
2603{0x3c00000, 0x7c994e9e, 0xaab4d7d8, 0x7c994e9d, 0x3c00010},
2604{0x3c00000, 0x7c994e9e, 0x966320b, 0x7c994e9e, 0x3c00010},
2605{0x3c00000, 0x7c994e9e, 0xb26bddee, 0x7c994e9d, 0x3c00010},
2606{0x3c00000, 0x7c994e9e, 0xb5c8e5d3, 0x7c994e9d, 0x3c00010},
2607{0x3c00000, 0x7c994e9e, 0x317285d3, 0x7c994e9e, 0x3c00010},
2608{0x3c00000, 0x7c994e9e, 0x3c9623b1, 0x7c994e9e, 0x3c00010},
2609{0x3c00000, 0x7c994e9e, 0x51fd2c7c, 0x7c994e9e, 0x3c00010},
2610{0x3c00000, 0x7c994e9e, 0x7b906a6c, 0x7cbd6939, 0x3c00000},
2611{0x3c00000, 0x6164bd6c, 0x0, 0x6164bd6c, 0x3c00000},
2612{0x3c00000, 0x6164bd6c, 0x1, 0x6164bd6c, 0x3c00080},
2613{0x3c00000, 0x6164bd6c, 0x76, 0x6164bd6c, 0x3c00080},
2614{0x3c00000, 0x6164bd6c, 0x2b94, 0x6164bd6c, 0x3c00080},
2615{0x3c00000, 0x6164bd6c, 0x636d24, 0x6164bd6c, 0x3c00080},
2616{0x3c00000, 0x6164bd6c, 0x7fffff, 0x6164bd6c, 0x3c00080},
2617{0x3c00000, 0x6164bd6c, 0x800000, 0x6164bd6c, 0x3c00010},
2618{0x3c00000, 0x6164bd6c, 0x800002, 0x6164bd6c, 0x3c00010},
2619{0x3c00000, 0x6164bd6c, 0x1398437, 0x6164bd6c, 0x3c00010},
2620{0x3c00000, 0x6164bd6c, 0xba98d27, 0x6164bd6c, 0x3c00010},
2621{0x3c00000, 0x6164bd6c, 0xba98d7a, 0x6164bd6c, 0x3c00010},
2622{0x3c00000, 0x6164bd6c, 0x751f853a, 0x751f853a, 0x3c00010},
2623{0x3c00000, 0x6164bd6c, 0x7f7ffff0, 0x7f7ffff0, 0x3c00010},
2624{0x3c00000, 0x6164bd6c, 0x7f7fffff, 0x7f7fffff, 0x3c00010},
2625{0x3c00000, 0x6164bd6c, 0x7f800000, 0x7f800000, 0x3c00000},
2626{0x3c00000, 0x6164bd6c, 0x7f800001, 0x7fc00000, 0x3c00001},
2627{0x3c00000, 0x6164bd6c, 0x7f984a37, 0x7fc00000, 0x3c00001},
2628{0x3c00000, 0x6164bd6c, 0x7fbfffff, 0x7fc00000, 0x3c00001},
2629{0x3c00000, 0x6164bd6c, 0x7fc00000, 0x7fc00000, 0x3c00000},
2630{0x3c00000, 0x6164bd6c, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
2631{0x3c00000, 0x6164bd6c, 0x7fffffff, 0x7fc00000, 0x3c00000},
2632{0x3c00000, 0x6164bd6c, 0x80000000, 0x6164bd6c, 0x3c00000},
2633{0x3c00000, 0x6164bd6c, 0x80000001, 0x6164bd6c, 0x3c00080},
2634{0x3c00000, 0x6164bd6c, 0x80000076, 0x6164bd6c, 0x3c00080},
2635{0x3c00000, 0x6164bd6c, 0x80002b94, 0x6164bd6c, 0x3c00080},
2636{0x3c00000, 0x6164bd6c, 0x80636d24, 0x6164bd6c, 0x3c00080},
2637{0x3c00000, 0x6164bd6c, 0x807fffff, 0x6164bd6c, 0x3c00080},
2638{0x3c00000, 0x6164bd6c, 0x80800000, 0x6164bd6b, 0x3c00010},
2639{0x3c00000, 0x6164bd6c, 0x80800002, 0x6164bd6b, 0x3c00010},
2640{0x3c00000, 0x6164bd6c, 0x81398437, 0x6164bd6b, 0x3c00010},
2641{0x3c00000, 0x6164bd6c, 0x8ba98d27, 0x6164bd6b, 0x3c00010},
2642{0x3c00000, 0x6164bd6c, 0x8ba98d7a, 0x6164bd6b, 0x3c00010},
2643{0x3c00000, 0x6164bd6c, 0xf51f853a, 0xf51f8539, 0x3c00010},
2644{0x3c00000, 0x6164bd6c, 0xff7ffff0, 0xff7fffef, 0x3c00010},
2645{0x3c00000, 0x6164bd6c, 0xff7fffff, 0xff7ffffe, 0x3c00010},
2646{0x3c00000, 0x6164bd6c, 0xff800000, 0xff800000, 0x3c00000},
2647{0x3c00000, 0x6164bd6c, 0xff800001, 0x7fc00000, 0x3c00001},
2648{0x3c00000, 0x6164bd6c, 0xff984a37, 0x7fc00000, 0x3c00001},
2649{0x3c00000, 0x6164bd6c, 0xffbfffff, 0x7fc00000, 0x3c00001},
2650{0x3c00000, 0x6164bd6c, 0xffc00000, 0x7fc00000, 0x3c00000},
2651{0x3c00000, 0x6164bd6c, 0xffd9ba98, 0x7fc00000, 0x3c00000},
2652{0x3c00000, 0x6164bd6c, 0xffffffff, 0x7fc00000, 0x3c00000},
2653{0x3c00000, 0x6164bd6c, 0x4f3495cb, 0x6164bd6c, 0x3c00010},
2654{0x3c00000, 0x6164bd6c, 0xe73a5134, 0xe73a42e8, 0x3c00010},
2655{0x3c00000, 0x6164bd6c, 0x7c994e9e, 0x7c994e9e, 0x3c00010},
2656{0x3c00000, 0x6164bd6c, 0x6164bd6c, 0x61e4bd6c, 0x3c00000},
2657{0x3c00000, 0x6164bd6c, 0x9503366, 0x6164bd6c, 0x3c00010},
2658{0x3c00000, 0x6164bd6c, 0xbf5a97c9, 0x6164bd6b, 0x3c00010},
2659{0x3c00000, 0x6164bd6c, 0xe6ff1a14, 0xe6fefd7c, 0x3c00010},
2660{0x3c00000, 0x6164bd6c, 0x77f31e2f, 0x77f31e2f, 0x3c00010},
2661{0x3c00000, 0x6164bd6c, 0xaab4d7d8, 0x6164bd6b, 0x3c00010},
2662{0x3c00000, 0x6164bd6c, 0x966320b, 0x6164bd6c, 0x3c00010},
2663{0x3c00000, 0x6164bd6c, 0xb26bddee, 0x6164bd6b, 0x3c00010},
2664{0x3c00000, 0x6164bd6c, 0xb5c8e5d3, 0x6164bd6b, 0x3c00010},
2665{0x3c00000, 0x6164bd6c, 0x317285d3, 0x6164bd6c, 0x3c00010},
2666{0x3c00000, 0x6164bd6c, 0x3c9623b1, 0x6164bd6c, 0x3c00010},
2667{0x3c00000, 0x6164bd6c, 0x51fd2c7c, 0x6164bd6c, 0x3c00010},
2668{0x3c00000, 0x6164bd6c, 0x7b906a6c, 0x7b906a6c, 0x3c00010},
2669{0x3c00000, 0x9503366, 0x0, 0x9503366, 0x3c00000},
2670{0x3c00000, 0x9503366, 0x1, 0x9503366, 0x3c00080},
2671{0x3c00000, 0x9503366, 0x76, 0x9503366, 0x3c00080},
2672{0x3c00000, 0x9503366, 0x2b94, 0x9503366, 0x3c00080},
2673{0x3c00000, 0x9503366, 0x636d24, 0x9503366, 0x3c00080},
2674{0x3c00000, 0x9503366, 0x7fffff, 0x9503366, 0x3c00080},
2675{0x3c00000, 0x9503366, 0x800000, 0x95033a6, 0x3c00000},
2676{0x3c00000, 0x9503366, 0x800002, 0x95033a6, 0x3c00010},
2677{0x3c00000, 0x9503366, 0x1398437, 0x950341f, 0x3c00010},
2678{0x3c00000, 0x9503366, 0xba98d27, 0xbb00ec2, 0x3c00010},
2679{0x3c00000, 0x9503366, 0xba98d7a, 0xbb00f15, 0x3c00010},
2680{0x3c00000, 0x9503366, 0x751f853a, 0x751f853a, 0x3c00010},
2681{0x3c00000, 0x9503366, 0x7f7ffff0, 0x7f7ffff0, 0x3c00010},
2682{0x3c00000, 0x9503366, 0x7f7fffff, 0x7f7fffff, 0x3c00010},
2683{0x3c00000, 0x9503366, 0x7f800000, 0x7f800000, 0x3c00000},
2684{0x3c00000, 0x9503366, 0x7f800001, 0x7fc00000, 0x3c00001},
2685{0x3c00000, 0x9503366, 0x7f984a37, 0x7fc00000, 0x3c00001},
2686{0x3c00000, 0x9503366, 0x7fbfffff, 0x7fc00000, 0x3c00001},
2687{0x3c00000, 0x9503366, 0x7fc00000, 0x7fc00000, 0x3c00000},
2688{0x3c00000, 0x9503366, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
2689{0x3c00000, 0x9503366, 0x7fffffff, 0x7fc00000, 0x3c00000},
2690{0x3c00000, 0x9503366, 0x80000000, 0x9503366, 0x3c00000},
2691{0x3c00000, 0x9503366, 0x80000001, 0x9503366, 0x3c00080},
2692{0x3c00000, 0x9503366, 0x80000076, 0x9503366, 0x3c00080},
2693{0x3c00000, 0x9503366, 0x80002b94, 0x9503366, 0x3c00080},
2694{0x3c00000, 0x9503366, 0x80636d24, 0x9503366, 0x3c00080},
2695{0x3c00000, 0x9503366, 0x807fffff, 0x9503366, 0x3c00080},
2696{0x3c00000, 0x9503366, 0x80800000, 0x9503326, 0x3c00000},
2697{0x3c00000, 0x9503366, 0x80800002, 0x9503325, 0x3c00010},
2698{0x3c00000, 0x9503366, 0x81398437, 0x95032ac, 0x3c00010},
2699{0x3c00000, 0x9503366, 0x8ba98d27, 0x8ba30b8b, 0x3c00010},
2700{0x3c00000, 0x9503366, 0x8ba98d7a, 0x8ba30bde, 0x3c00010},
2701{0x3c00000, 0x9503366, 0xf51f853a, 0xf51f8539, 0x3c00010},
2702{0x3c00000, 0x9503366, 0xff7ffff0, 0xff7fffef, 0x3c00010},
2703{0x3c00000, 0x9503366, 0xff7fffff, 0xff7ffffe, 0x3c00010},
2704{0x3c00000, 0x9503366, 0xff800000, 0xff800000, 0x3c00000},
2705{0x3c00000, 0x9503366, 0xff800001, 0x7fc00000, 0x3c00001},
2706{0x3c00000, 0x9503366, 0xff984a37, 0x7fc00000, 0x3c00001},
2707{0x3c00000, 0x9503366, 0xffbfffff, 0x7fc00000, 0x3c00001},
2708{0x3c00000, 0x9503366, 0xffc00000, 0x7fc00000, 0x3c00000},
2709{0x3c00000, 0x9503366, 0xffd9ba98, 0x7fc00000, 0x3c00000},
2710{0x3c00000, 0x9503366, 0xffffffff, 0x7fc00000, 0x3c00000},
2711{0x3c00000, 0x9503366, 0x4f3495cb, 0x4f3495cb, 0x3c00010},
2712{0x3c00000, 0x9503366, 0xe73a5134, 0xe73a5133, 0x3c00010},
2713{0x3c00000, 0x9503366, 0x7c994e9e, 0x7c994e9e, 0x3c00010},
2714{0x3c00000, 0x9503366, 0x6164bd6c, 0x6164bd6c, 0x3c00010},
2715{0x3c00000, 0x9503366, 0x9503366, 0x9d03366, 0x3c00000},
2716{0x3c00000, 0x9503366, 0xbf5a97c9, 0xbf5a97c8, 0x3c00010},
2717{0x3c00000, 0x9503366, 0xe6ff1a14, 0xe6ff1a13, 0x3c00010},
2718{0x3c00000, 0x9503366, 0x77f31e2f, 0x77f31e2f, 0x3c00010},
2719{0x3c00000, 0x9503366, 0xaab4d7d8, 0xaab4d7d7, 0x3c00010},
2720{0x3c00000, 0x9503366, 0x966320b, 0x9db32b8, 0x3c00010},
2721{0x3c00000, 0x9503366, 0xb26bddee, 0xb26bdded, 0x3c00010},
2722{0x3c00000, 0x9503366, 0xb5c8e5d3, 0xb5c8e5d2, 0x3c00010},
2723{0x3c00000, 0x9503366, 0x317285d3, 0x317285d3, 0x3c00010},
2724{0x3c00000, 0x9503366, 0x3c9623b1, 0x3c9623b1, 0x3c00010},
2725{0x3c00000, 0x9503366, 0x51fd2c7c, 0x51fd2c7c, 0x3c00010},
2726{0x3c00000, 0x9503366, 0x7b906a6c, 0x7b906a6c, 0x3c00010},
2727{0x3c00000, 0xbf5a97c9, 0x0, 0xbf5a97c9, 0x3c00000},
2728{0x3c00000, 0xbf5a97c9, 0x1, 0xbf5a97c9, 0x3c00080},
2729{0x3c00000, 0xbf5a97c9, 0x76, 0xbf5a97c9, 0x3c00080},
2730{0x3c00000, 0xbf5a97c9, 0x2b94, 0xbf5a97c9, 0x3c00080},
2731{0x3c00000, 0xbf5a97c9, 0x636d24, 0xbf5a97c9, 0x3c00080},
2732{0x3c00000, 0xbf5a97c9, 0x7fffff, 0xbf5a97c9, 0x3c00080},
2733{0x3c00000, 0xbf5a97c9, 0x800000, 0xbf5a97c8, 0x3c00010},
2734{0x3c00000, 0xbf5a97c9, 0x800002, 0xbf5a97c8, 0x3c00010},
2735{0x3c00000, 0xbf5a97c9, 0x1398437, 0xbf5a97c8, 0x3c00010},
2736{0x3c00000, 0xbf5a97c9, 0xba98d27, 0xbf5a97c8, 0x3c00010},
2737{0x3c00000, 0xbf5a97c9, 0xba98d7a, 0xbf5a97c8, 0x3c00010},
2738{0x3c00000, 0xbf5a97c9, 0x751f853a, 0x751f8539, 0x3c00010},
2739{0x3c00000, 0xbf5a97c9, 0x7f7ffff0, 0x7f7fffef, 0x3c00010},
2740{0x3c00000, 0xbf5a97c9, 0x7f7fffff, 0x7f7ffffe, 0x3c00010},
2741{0x3c00000, 0xbf5a97c9, 0x7f800000, 0x7f800000, 0x3c00000},
2742{0x3c00000, 0xbf5a97c9, 0x7f800001, 0x7fc00000, 0x3c00001},
2743{0x3c00000, 0xbf5a97c9, 0x7f984a37, 0x7fc00000, 0x3c00001},
2744{0x3c00000, 0xbf5a97c9, 0x7fbfffff, 0x7fc00000, 0x3c00001},
2745{0x3c00000, 0xbf5a97c9, 0x7fc00000, 0x7fc00000, 0x3c00000},
2746{0x3c00000, 0xbf5a97c9, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
2747{0x3c00000, 0xbf5a97c9, 0x7fffffff, 0x7fc00000, 0x3c00000},
2748{0x3c00000, 0xbf5a97c9, 0x80000000, 0xbf5a97c9, 0x3c00000},
2749{0x3c00000, 0xbf5a97c9, 0x80000001, 0xbf5a97c9, 0x3c00080},
2750{0x3c00000, 0xbf5a97c9, 0x80000076, 0xbf5a97c9, 0x3c00080},
2751{0x3c00000, 0xbf5a97c9, 0x80002b94, 0xbf5a97c9, 0x3c00080},
2752{0x3c00000, 0xbf5a97c9, 0x80636d24, 0xbf5a97c9, 0x3c00080},
2753{0x3c00000, 0xbf5a97c9, 0x807fffff, 0xbf5a97c9, 0x3c00080},
2754{0x3c00000, 0xbf5a97c9, 0x80800000, 0xbf5a97c9, 0x3c00010},
2755{0x3c00000, 0xbf5a97c9, 0x80800002, 0xbf5a97c9, 0x3c00010},
2756{0x3c00000, 0xbf5a97c9, 0x81398437, 0xbf5a97c9, 0x3c00010},
2757{0x3c00000, 0xbf5a97c9, 0x8ba98d27, 0xbf5a97c9, 0x3c00010},
2758{0x3c00000, 0xbf5a97c9, 0x8ba98d7a, 0xbf5a97c9, 0x3c00010},
2759{0x3c00000, 0xbf5a97c9, 0xf51f853a, 0xf51f853a, 0x3c00010},
2760{0x3c00000, 0xbf5a97c9, 0xff7ffff0, 0xff7ffff0, 0x3c00010},
2761{0x3c00000, 0xbf5a97c9, 0xff7fffff, 0xff7fffff, 0x3c00010},
2762{0x3c00000, 0xbf5a97c9, 0xff800000, 0xff800000, 0x3c00000},
2763{0x3c00000, 0xbf5a97c9, 0xff800001, 0x7fc00000, 0x3c00001},
2764{0x3c00000, 0xbf5a97c9, 0xff984a37, 0x7fc00000, 0x3c00001},
2765{0x3c00000, 0xbf5a97c9, 0xffbfffff, 0x7fc00000, 0x3c00001},
2766{0x3c00000, 0xbf5a97c9, 0xffc00000, 0x7fc00000, 0x3c00000},
2767{0x3c00000, 0xbf5a97c9, 0xffd9ba98, 0x7fc00000, 0x3c00000},
2768{0x3c00000, 0xbf5a97c9, 0xffffffff, 0x7fc00000, 0x3c00000},
2769{0x3c00000, 0xbf5a97c9, 0x4f3495cb, 0x4f3495ca, 0x3c00010},
2770{0x3c00000, 0xbf5a97c9, 0xe73a5134, 0xe73a5134, 0x3c00010},
2771{0x3c00000, 0xbf5a97c9, 0x7c994e9e, 0x7c994e9d, 0x3c00010},
2772{0x3c00000, 0xbf5a97c9, 0x6164bd6c, 0x6164bd6b, 0x3c00010},
2773{0x3c00000, 0xbf5a97c9, 0x9503366, 0xbf5a97c8, 0x3c00010},
2774{0x3c00000, 0xbf5a97c9, 0xbf5a97c9, 0xbfda97c9, 0x3c00000},
2775{0x3c00000, 0xbf5a97c9, 0xe6ff1a14, 0xe6ff1a14, 0x3c00010},
2776{0x3c00000, 0xbf5a97c9, 0x77f31e2f, 0x77f31e2e, 0x3c00010},
2777{0x3c00000, 0xbf5a97c9, 0xaab4d7d8, 0xbf5a97c9, 0x3c00010},
2778{0x3c00000, 0xbf5a97c9, 0x966320b, 0xbf5a97c8, 0x3c00010},
2779{0x3c00000, 0xbf5a97c9, 0xb26bddee, 0xbf5a97c9, 0x3c00010},
2780{0x3c00000, 0xbf5a97c9, 0xb5c8e5d3, 0xbf5a97e2, 0x3c00010},
2781{0x3c00000, 0xbf5a97c9, 0x317285d3, 0xbf5a97c8, 0x3c00010},
2782{0x3c00000, 0xbf5a97c9, 0x3c9623b1, 0xbf55e6ab, 0x3c00010},
2783{0x3c00000, 0xbf5a97c9, 0x51fd2c7c, 0x51fd2c7b, 0x3c00010},
2784{0x3c00000, 0xbf5a97c9, 0x7b906a6c, 0x7b906a6b, 0x3c00010},
2785{0x3c00000, 0xe6ff1a14, 0x0, 0xe6ff1a14, 0x3c00000},
2786{0x3c00000, 0xe6ff1a14, 0x1, 0xe6ff1a14, 0x3c00080},
2787{0x3c00000, 0xe6ff1a14, 0x76, 0xe6ff1a14, 0x3c00080},
2788{0x3c00000, 0xe6ff1a14, 0x2b94, 0xe6ff1a14, 0x3c00080},
2789{0x3c00000, 0xe6ff1a14, 0x636d24, 0xe6ff1a14, 0x3c00080},
2790{0x3c00000, 0xe6ff1a14, 0x7fffff, 0xe6ff1a14, 0x3c00080},
2791{0x3c00000, 0xe6ff1a14, 0x800000, 0xe6ff1a13, 0x3c00010},
2792{0x3c00000, 0xe6ff1a14, 0x800002, 0xe6ff1a13, 0x3c00010},
2793{0x3c00000, 0xe6ff1a14, 0x1398437, 0xe6ff1a13, 0x3c00010},
2794{0x3c00000, 0xe6ff1a14, 0xba98d27, 0xe6ff1a13, 0x3c00010},
2795{0x3c00000, 0xe6ff1a14, 0xba98d7a, 0xe6ff1a13, 0x3c00010},
2796{0x3c00000, 0xe6ff1a14, 0x751f853a, 0x751f8539, 0x3c00010},
2797{0x3c00000, 0xe6ff1a14, 0x7f7ffff0, 0x7f7fffef, 0x3c00010},
2798{0x3c00000, 0xe6ff1a14, 0x7f7fffff, 0x7f7ffffe, 0x3c00010},
2799{0x3c00000, 0xe6ff1a14, 0x7f800000, 0x7f800000, 0x3c00000},
2800{0x3c00000, 0xe6ff1a14, 0x7f800001, 0x7fc00000, 0x3c00001},
2801{0x3c00000, 0xe6ff1a14, 0x7f984a37, 0x7fc00000, 0x3c00001},
2802{0x3c00000, 0xe6ff1a14, 0x7fbfffff, 0x7fc00000, 0x3c00001},
2803{0x3c00000, 0xe6ff1a14, 0x7fc00000, 0x7fc00000, 0x3c00000},
2804{0x3c00000, 0xe6ff1a14, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
2805{0x3c00000, 0xe6ff1a14, 0x7fffffff, 0x7fc00000, 0x3c00000},
2806{0x3c00000, 0xe6ff1a14, 0x80000000, 0xe6ff1a14, 0x3c00000},
2807{0x3c00000, 0xe6ff1a14, 0x80000001, 0xe6ff1a14, 0x3c00080},
2808{0x3c00000, 0xe6ff1a14, 0x80000076, 0xe6ff1a14, 0x3c00080},
2809{0x3c00000, 0xe6ff1a14, 0x80002b94, 0xe6ff1a14, 0x3c00080},
2810{0x3c00000, 0xe6ff1a14, 0x80636d24, 0xe6ff1a14, 0x3c00080},
2811{0x3c00000, 0xe6ff1a14, 0x807fffff, 0xe6ff1a14, 0x3c00080},
2812{0x3c00000, 0xe6ff1a14, 0x80800000, 0xe6ff1a14, 0x3c00010},
2813{0x3c00000, 0xe6ff1a14, 0x80800002, 0xe6ff1a14, 0x3c00010},
2814{0x3c00000, 0xe6ff1a14, 0x81398437, 0xe6ff1a14, 0x3c00010},
2815{0x3c00000, 0xe6ff1a14, 0x8ba98d27, 0xe6ff1a14, 0x3c00010},
2816{0x3c00000, 0xe6ff1a14, 0x8ba98d7a, 0xe6ff1a14, 0x3c00010},
2817{0x3c00000, 0xe6ff1a14, 0xf51f853a, 0xf51f853a, 0x3c00010},
2818{0x3c00000, 0xe6ff1a14, 0xff7ffff0, 0xff7ffff0, 0x3c00010},
2819{0x3c00000, 0xe6ff1a14, 0xff7fffff, 0xff7fffff, 0x3c00010},
2820{0x3c00000, 0xe6ff1a14, 0xff800000, 0xff800000, 0x3c00000},
2821{0x3c00000, 0xe6ff1a14, 0xff800001, 0x7fc00000, 0x3c00001},
2822{0x3c00000, 0xe6ff1a14, 0xff984a37, 0x7fc00000, 0x3c00001},
2823{0x3c00000, 0xe6ff1a14, 0xffbfffff, 0x7fc00000, 0x3c00001},
2824{0x3c00000, 0xe6ff1a14, 0xffc00000, 0x7fc00000, 0x3c00000},
2825{0x3c00000, 0xe6ff1a14, 0xffd9ba98, 0x7fc00000, 0x3c00000},
2826{0x3c00000, 0xe6ff1a14, 0xffffffff, 0x7fc00000, 0x3c00000},
2827{0x3c00000, 0xe6ff1a14, 0x4f3495cb, 0xe6ff1a13, 0x3c00010},
2828{0x3c00000, 0xe6ff1a14, 0xe73a5134, 0xe79cef1f, 0x3c00000},
2829{0x3c00000, 0xe6ff1a14, 0x7c994e9e, 0x7c994e9d, 0x3c00010},
2830{0x3c00000, 0xe6ff1a14, 0x6164bd6c, 0xe6fefd7c, 0x3c00010},
2831{0x3c00000, 0xe6ff1a14, 0x9503366, 0xe6ff1a13, 0x3c00010},
2832{0x3c00000, 0xe6ff1a14, 0xbf5a97c9, 0xe6ff1a14, 0x3c00010},
2833{0x3c00000, 0xe6ff1a14, 0xe6ff1a14, 0xe77f1a14, 0x3c00000},
2834{0x3c00000, 0xe6ff1a14, 0x77f31e2f, 0x77f31e2e, 0x3c00010},
2835{0x3c00000, 0xe6ff1a14, 0xaab4d7d8, 0xe6ff1a14, 0x3c00010},
2836{0x3c00000, 0xe6ff1a14, 0x966320b, 0xe6ff1a13, 0x3c00010},
2837{0x3c00000, 0xe6ff1a14, 0xb26bddee, 0xe6ff1a14, 0x3c00010},
2838{0x3c00000, 0xe6ff1a14, 0xb5c8e5d3, 0xe6ff1a14, 0x3c00010},
2839{0x3c00000, 0xe6ff1a14, 0x317285d3, 0xe6ff1a13, 0x3c00010},
2840{0x3c00000, 0xe6ff1a14, 0x3c9623b1, 0xe6ff1a13, 0x3c00010},
2841{0x3c00000, 0xe6ff1a14, 0x51fd2c7c, 0xe6ff1a13, 0x3c00010},
2842{0x3c00000, 0xe6ff1a14, 0x7b906a6c, 0x7b906a6b, 0x3c00010},
2843{0x3c00000, 0x77f31e2f, 0x0, 0x77f31e2f, 0x3c00000},
2844{0x3c00000, 0x77f31e2f, 0x1, 0x77f31e2f, 0x3c00080},
2845{0x3c00000, 0x77f31e2f, 0x76, 0x77f31e2f, 0x3c00080},
2846{0x3c00000, 0x77f31e2f, 0x2b94, 0x77f31e2f, 0x3c00080},
2847{0x3c00000, 0x77f31e2f, 0x636d24, 0x77f31e2f, 0x3c00080},
2848{0x3c00000, 0x77f31e2f, 0x7fffff, 0x77f31e2f, 0x3c00080},
2849{0x3c00000, 0x77f31e2f, 0x800000, 0x77f31e2f, 0x3c00010},
2850{0x3c00000, 0x77f31e2f, 0x800002, 0x77f31e2f, 0x3c00010},
2851{0x3c00000, 0x77f31e2f, 0x1398437, 0x77f31e2f, 0x3c00010},
2852{0x3c00000, 0x77f31e2f, 0xba98d27, 0x77f31e2f, 0x3c00010},
2853{0x3c00000, 0x77f31e2f, 0xba98d7a, 0x77f31e2f, 0x3c00010},
2854{0x3c00000, 0x77f31e2f, 0x751f853a, 0x77f81a58, 0x3c00010},
2855{0x3c00000, 0x77f31e2f, 0x7f7ffff0, 0x7f7fffff, 0x3c00014},
2856{0x3c00000, 0x77f31e2f, 0x7f7fffff, 0x7f7fffff, 0x3c00014},
2857{0x3c00000, 0x77f31e2f, 0x7f800000, 0x7f800000, 0x3c00000},
2858{0x3c00000, 0x77f31e2f, 0x7f800001, 0x7fc00000, 0x3c00001},
2859{0x3c00000, 0x77f31e2f, 0x7f984a37, 0x7fc00000, 0x3c00001},
2860{0x3c00000, 0x77f31e2f, 0x7fbfffff, 0x7fc00000, 0x3c00001},
2861{0x3c00000, 0x77f31e2f, 0x7fc00000, 0x7fc00000, 0x3c00000},
2862{0x3c00000, 0x77f31e2f, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
2863{0x3c00000, 0x77f31e2f, 0x7fffffff, 0x7fc00000, 0x3c00000},
2864{0x3c00000, 0x77f31e2f, 0x80000000, 0x77f31e2f, 0x3c00000},
2865{0x3c00000, 0x77f31e2f, 0x80000001, 0x77f31e2f, 0x3c00080},
2866{0x3c00000, 0x77f31e2f, 0x80000076, 0x77f31e2f, 0x3c00080},
2867{0x3c00000, 0x77f31e2f, 0x80002b94, 0x77f31e2f, 0x3c00080},
2868{0x3c00000, 0x77f31e2f, 0x80636d24, 0x77f31e2f, 0x3c00080},
2869{0x3c00000, 0x77f31e2f, 0x807fffff, 0x77f31e2f, 0x3c00080},
2870{0x3c00000, 0x77f31e2f, 0x80800000, 0x77f31e2e, 0x3c00010},
2871{0x3c00000, 0x77f31e2f, 0x80800002, 0x77f31e2e, 0x3c00010},
2872{0x3c00000, 0x77f31e2f, 0x81398437, 0x77f31e2e, 0x3c00010},
2873{0x3c00000, 0x77f31e2f, 0x8ba98d27, 0x77f31e2e, 0x3c00010},
2874{0x3c00000, 0x77f31e2f, 0x8ba98d7a, 0x77f31e2e, 0x3c00010},
2875{0x3c00000, 0x77f31e2f, 0xf51f853a, 0x77ee2205, 0x3c00010},
2876{0x3c00000, 0x77f31e2f, 0xff7ffff0, 0xff7ffe09, 0x3c00010},
2877{0x3c00000, 0x77f31e2f, 0xff7fffff, 0xff7ffe18, 0x3c00010},
2878{0x3c00000, 0x77f31e2f, 0xff800000, 0xff800000, 0x3c00000},
2879{0x3c00000, 0x77f31e2f, 0xff800001, 0x7fc00000, 0x3c00001},
2880{0x3c00000, 0x77f31e2f, 0xff984a37, 0x7fc00000, 0x3c00001},
2881{0x3c00000, 0x77f31e2f, 0xffbfffff, 0x7fc00000, 0x3c00001},
2882{0x3c00000, 0x77f31e2f, 0xffc00000, 0x7fc00000, 0x3c00000},
2883{0x3c00000, 0x77f31e2f, 0xffd9ba98, 0x7fc00000, 0x3c00000},
2884{0x3c00000, 0x77f31e2f, 0xffffffff, 0x7fc00000, 0x3c00000},
2885{0x3c00000, 0x77f31e2f, 0x4f3495cb, 0x77f31e2f, 0x3c00010},
2886{0x3c00000, 0x77f31e2f, 0xe73a5134, 0x77f31e2e, 0x3c00010},
2887{0x3c00000, 0x77f31e2f, 0x7c994e9e, 0x7c998b65, 0x3c00010},
2888{0x3c00000, 0x77f31e2f, 0x6164bd6c, 0x77f31e2f, 0x3c00010},
2889{0x3c00000, 0x77f31e2f, 0x9503366, 0x77f31e2f, 0x3c00010},
2890{0x3c00000, 0x77f31e2f, 0xbf5a97c9, 0x77f31e2e, 0x3c00010},
2891{0x3c00000, 0x77f31e2f, 0xe6ff1a14, 0x77f31e2e, 0x3c00010},
2892{0x3c00000, 0x77f31e2f, 0x77f31e2f, 0x78731e2f, 0x3c00000},
2893{0x3c00000, 0x77f31e2f, 0xaab4d7d8, 0x77f31e2e, 0x3c00010},
2894{0x3c00000, 0x77f31e2f, 0x966320b, 0x77f31e2f, 0x3c00010},
2895{0x3c00000, 0x77f31e2f, 0xb26bddee, 0x77f31e2e, 0x3c00010},
2896{0x3c00000, 0x77f31e2f, 0xb5c8e5d3, 0x77f31e2e, 0x3c00010},
2897{0x3c00000, 0x77f31e2f, 0x317285d3, 0x77f31e2f, 0x3c00010},
2898{0x3c00000, 0x77f31e2f, 0x3c9623b1, 0x77f31e2f, 0x3c00010},
2899{0x3c00000, 0x77f31e2f, 0x51fd2c7c, 0x77f31e2f, 0x3c00010},
2900{0x3c00000, 0x77f31e2f, 0x7b906a6c, 0x7b915d8a, 0x3c00010},
2901{0x3c00000, 0xaab4d7d8, 0x0, 0xaab4d7d8, 0x3c00000},
2902{0x3c00000, 0xaab4d7d8, 0x1, 0xaab4d7d8, 0x3c00080},
2903{0x3c00000, 0xaab4d7d8, 0x76, 0xaab4d7d8, 0x3c00080},
2904{0x3c00000, 0xaab4d7d8, 0x2b94, 0xaab4d7d8, 0x3c00080},
2905{0x3c00000, 0xaab4d7d8, 0x636d24, 0xaab4d7d8, 0x3c00080},
2906{0x3c00000, 0xaab4d7d8, 0x7fffff, 0xaab4d7d8, 0x3c00080},
2907{0x3c00000, 0xaab4d7d8, 0x800000, 0xaab4d7d7, 0x3c00010},
2908{0x3c00000, 0xaab4d7d8, 0x800002, 0xaab4d7d7, 0x3c00010},
2909{0x3c00000, 0xaab4d7d8, 0x1398437, 0xaab4d7d7, 0x3c00010},
2910{0x3c00000, 0xaab4d7d8, 0xba98d27, 0xaab4d7d7, 0x3c00010},
2911{0x3c00000, 0xaab4d7d8, 0xba98d7a, 0xaab4d7d7, 0x3c00010},
2912{0x3c00000, 0xaab4d7d8, 0x751f853a, 0x751f8539, 0x3c00010},
2913{0x3c00000, 0xaab4d7d8, 0x7f7ffff0, 0x7f7fffef, 0x3c00010},
2914{0x3c00000, 0xaab4d7d8, 0x7f7fffff, 0x7f7ffffe, 0x3c00010},
2915{0x3c00000, 0xaab4d7d8, 0x7f800000, 0x7f800000, 0x3c00000},
2916{0x3c00000, 0xaab4d7d8, 0x7f800001, 0x7fc00000, 0x3c00001},
2917{0x3c00000, 0xaab4d7d8, 0x7f984a37, 0x7fc00000, 0x3c00001},
2918{0x3c00000, 0xaab4d7d8, 0x7fbfffff, 0x7fc00000, 0x3c00001},
2919{0x3c00000, 0xaab4d7d8, 0x7fc00000, 0x7fc00000, 0x3c00000},
2920{0x3c00000, 0xaab4d7d8, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
2921{0x3c00000, 0xaab4d7d8, 0x7fffffff, 0x7fc00000, 0x3c00000},
2922{0x3c00000, 0xaab4d7d8, 0x80000000, 0xaab4d7d8, 0x3c00000},
2923{0x3c00000, 0xaab4d7d8, 0x80000001, 0xaab4d7d8, 0x3c00080},
2924{0x3c00000, 0xaab4d7d8, 0x80000076, 0xaab4d7d8, 0x3c00080},
2925{0x3c00000, 0xaab4d7d8, 0x80002b94, 0xaab4d7d8, 0x3c00080},
2926{0x3c00000, 0xaab4d7d8, 0x80636d24, 0xaab4d7d8, 0x3c00080},
2927{0x3c00000, 0xaab4d7d8, 0x807fffff, 0xaab4d7d8, 0x3c00080},
2928{0x3c00000, 0xaab4d7d8, 0x80800000, 0xaab4d7d8, 0x3c00010},
2929{0x3c00000, 0xaab4d7d8, 0x80800002, 0xaab4d7d8, 0x3c00010},
2930{0x3c00000, 0xaab4d7d8, 0x81398437, 0xaab4d7d8, 0x3c00010},
2931{0x3c00000, 0xaab4d7d8, 0x8ba98d27, 0xaab4d7d8, 0x3c00010},
2932{0x3c00000, 0xaab4d7d8, 0x8ba98d7a, 0xaab4d7d8, 0x3c00010},
2933{0x3c00000, 0xaab4d7d8, 0xf51f853a, 0xf51f853a, 0x3c00010},
2934{0x3c00000, 0xaab4d7d8, 0xff7ffff0, 0xff7ffff0, 0x3c00010},
2935{0x3c00000, 0xaab4d7d8, 0xff7fffff, 0xff7fffff, 0x3c00010},
2936{0x3c00000, 0xaab4d7d8, 0xff800000, 0xff800000, 0x3c00000},
2937{0x3c00000, 0xaab4d7d8, 0xff800001, 0x7fc00000, 0x3c00001},
2938{0x3c00000, 0xaab4d7d8, 0xff984a37, 0x7fc00000, 0x3c00001},
2939{0x3c00000, 0xaab4d7d8, 0xffbfffff, 0x7fc00000, 0x3c00001},
2940{0x3c00000, 0xaab4d7d8, 0xffc00000, 0x7fc00000, 0x3c00000},
2941{0x3c00000, 0xaab4d7d8, 0xffd9ba98, 0x7fc00000, 0x3c00000},
2942{0x3c00000, 0xaab4d7d8, 0xffffffff, 0x7fc00000, 0x3c00000},
2943{0x3c00000, 0xaab4d7d8, 0x4f3495cb, 0x4f3495ca, 0x3c00010},
2944{0x3c00000, 0xaab4d7d8, 0xe73a5134, 0xe73a5134, 0x3c00010},
2945{0x3c00000, 0xaab4d7d8, 0x7c994e9e, 0x7c994e9d, 0x3c00010},
2946{0x3c00000, 0xaab4d7d8, 0x6164bd6c, 0x6164bd6b, 0x3c00010},
2947{0x3c00000, 0xaab4d7d8, 0x9503366, 0xaab4d7d7, 0x3c00010},
2948{0x3c00000, 0xaab4d7d8, 0xbf5a97c9, 0xbf5a97c9, 0x3c00010},
2949{0x3c00000, 0xaab4d7d8, 0xe6ff1a14, 0xe6ff1a14, 0x3c00010},
2950{0x3c00000, 0xaab4d7d8, 0x77f31e2f, 0x77f31e2e, 0x3c00010},
2951{0x3c00000, 0xaab4d7d8, 0xaab4d7d8, 0xab34d7d8, 0x3c00000},
2952{0x3c00000, 0xaab4d7d8, 0x966320b, 0xaab4d7d7, 0x3c00010},
2953{0x3c00000, 0xaab4d7d8, 0xb26bddee, 0xb26bdf57, 0x3c00010},
2954{0x3c00000, 0xaab4d7d8, 0xb5c8e5d3, 0xb5c8e5d5, 0x3c00010},
2955{0x3c00000, 0xaab4d7d8, 0x317285d3, 0x3172802c, 0x3c00010},
2956{0x3c00000, 0xaab4d7d8, 0x3c9623b1, 0x3c9623b0, 0x3c00010},
2957{0x3c00000, 0xaab4d7d8, 0x51fd2c7c, 0x51fd2c7b, 0x3c00010},
2958{0x3c00000, 0xaab4d7d8, 0x7b906a6c, 0x7b906a6b, 0x3c00010},
2959{0x3c00000, 0x966320b, 0x0, 0x966320b, 0x3c00000},
2960{0x3c00000, 0x966320b, 0x1, 0x966320b, 0x3c00080},
2961{0x3c00000, 0x966320b, 0x76, 0x966320b, 0x3c00080},
2962{0x3c00000, 0x966320b, 0x2b94, 0x966320b, 0x3c00080},
2963{0x3c00000, 0x966320b, 0x636d24, 0x966320b, 0x3c00080},
2964{0x3c00000, 0x966320b, 0x7fffff, 0x966320b, 0x3c00080},
2965{0x3c00000, 0x966320b, 0x800000, 0x966324b, 0x3c00000},
2966{0x3c00000, 0x966320b, 0x800002, 0x966324b, 0x3c00010},
2967{0x3c00000, 0x966320b, 0x1398437, 0x96632c4, 0x3c00010},
2968{0x3c00000, 0x966320b, 0xba98d27, 0xbb0beb7, 0x3c00010},
2969{0x3c00000, 0x966320b, 0xba98d7a, 0xbb0bf0a, 0x3c00010},
2970{0x3c00000, 0x966320b, 0x751f853a, 0x751f853a, 0x3c00010},
2971{0x3c00000, 0x966320b, 0x7f7ffff0, 0x7f7ffff0, 0x3c00010},
2972{0x3c00000, 0x966320b, 0x7f7fffff, 0x7f7fffff, 0x3c00010},
2973{0x3c00000, 0x966320b, 0x7f800000, 0x7f800000, 0x3c00000},
2974{0x3c00000, 0x966320b, 0x7f800001, 0x7fc00000, 0x3c00001},
2975{0x3c00000, 0x966320b, 0x7f984a37, 0x7fc00000, 0x3c00001},
2976{0x3c00000, 0x966320b, 0x7fbfffff, 0x7fc00000, 0x3c00001},
2977{0x3c00000, 0x966320b, 0x7fc00000, 0x7fc00000, 0x3c00000},
2978{0x3c00000, 0x966320b, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
2979{0x3c00000, 0x966320b, 0x7fffffff, 0x7fc00000, 0x3c00000},
2980{0x3c00000, 0x966320b, 0x80000000, 0x966320b, 0x3c00000},
2981{0x3c00000, 0x966320b, 0x80000001, 0x966320b, 0x3c00080},
2982{0x3c00000, 0x966320b, 0x80000076, 0x966320b, 0x3c00080},
2983{0x3c00000, 0x966320b, 0x80002b94, 0x966320b, 0x3c00080},
2984{0x3c00000, 0x966320b, 0x80636d24, 0x966320b, 0x3c00080},
2985{0x3c00000, 0x966320b, 0x807fffff, 0x966320b, 0x3c00080},
2986{0x3c00000, 0x966320b, 0x80800000, 0x96631cb, 0x3c00000},
2987{0x3c00000, 0x966320b, 0x80800002, 0x96631ca, 0x3c00010},
2988{0x3c00000, 0x966320b, 0x81398437, 0x9663151, 0x3c00010},
2989{0x3c00000, 0x966320b, 0x8ba98d27, 0x8ba25b96, 0x3c00010},
2990{0x3c00000, 0x966320b, 0x8ba98d7a, 0x8ba25be9, 0x3c00010},
2991{0x3c00000, 0x966320b, 0xf51f853a, 0xf51f8539, 0x3c00010},
2992{0x3c00000, 0x966320b, 0xff7ffff0, 0xff7fffef, 0x3c00010},
2993{0x3c00000, 0x966320b, 0xff7fffff, 0xff7ffffe, 0x3c00010},
2994{0x3c00000, 0x966320b, 0xff800000, 0xff800000, 0x3c00000},
2995{0x3c00000, 0x966320b, 0xff800001, 0x7fc00000, 0x3c00001},
2996{0x3c00000, 0x966320b, 0xff984a37, 0x7fc00000, 0x3c00001},
2997{0x3c00000, 0x966320b, 0xffbfffff, 0x7fc00000, 0x3c00001},
2998{0x3c00000, 0x966320b, 0xffc00000, 0x7fc00000, 0x3c00000},
2999{0x3c00000, 0x966320b, 0xffd9ba98, 0x7fc00000, 0x3c00000},
3000{0x3c00000, 0x966320b, 0xffffffff, 0x7fc00000, 0x3c00000},
3001{0x3c00000, 0x966320b, 0x4f3495cb, 0x4f3495cb, 0x3c00010},
3002{0x3c00000, 0x966320b, 0xe73a5134, 0xe73a5133, 0x3c00010},
3003{0x3c00000, 0x966320b, 0x7c994e9e, 0x7c994e9e, 0x3c00010},
3004{0x3c00000, 0x966320b, 0x6164bd6c, 0x6164bd6c, 0x3c00010},
3005{0x3c00000, 0x966320b, 0x9503366, 0x9db32b8, 0x3c00010},
3006{0x3c00000, 0x966320b, 0xbf5a97c9, 0xbf5a97c8, 0x3c00010},
3007{0x3c00000, 0x966320b, 0xe6ff1a14, 0xe6ff1a13, 0x3c00010},
3008{0x3c00000, 0x966320b, 0x77f31e2f, 0x77f31e2f, 0x3c00010},
3009{0x3c00000, 0x966320b, 0xaab4d7d8, 0xaab4d7d7, 0x3c00010},
3010{0x3c00000, 0x966320b, 0x966320b, 0x9e6320b, 0x3c00000},
3011{0x3c00000, 0x966320b, 0xb26bddee, 0xb26bdded, 0x3c00010},
3012{0x3c00000, 0x966320b, 0xb5c8e5d3, 0xb5c8e5d2, 0x3c00010},
3013{0x3c00000, 0x966320b, 0x317285d3, 0x317285d3, 0x3c00010},
3014{0x3c00000, 0x966320b, 0x3c9623b1, 0x3c9623b1, 0x3c00010},
3015{0x3c00000, 0x966320b, 0x51fd2c7c, 0x51fd2c7c, 0x3c00010},
3016{0x3c00000, 0x966320b, 0x7b906a6c, 0x7b906a6c, 0x3c00010},
3017{0x3c00000, 0xb26bddee, 0x0, 0xb26bddee, 0x3c00000},
3018{0x3c00000, 0xb26bddee, 0x1, 0xb26bddee, 0x3c00080},
3019{0x3c00000, 0xb26bddee, 0x76, 0xb26bddee, 0x3c00080},
3020{0x3c00000, 0xb26bddee, 0x2b94, 0xb26bddee, 0x3c00080},
3021{0x3c00000, 0xb26bddee, 0x636d24, 0xb26bddee, 0x3c00080},
3022{0x3c00000, 0xb26bddee, 0x7fffff, 0xb26bddee, 0x3c00080},
3023{0x3c00000, 0xb26bddee, 0x800000, 0xb26bdded, 0x3c00010},
3024{0x3c00000, 0xb26bddee, 0x800002, 0xb26bdded, 0x3c00010},
3025{0x3c00000, 0xb26bddee, 0x1398437, 0xb26bdded, 0x3c00010},
3026{0x3c00000, 0xb26bddee, 0xba98d27, 0xb26bdded, 0x3c00010},
3027{0x3c00000, 0xb26bddee, 0xba98d7a, 0xb26bdded, 0x3c00010},
3028{0x3c00000, 0xb26bddee, 0x751f853a, 0x751f8539, 0x3c00010},
3029{0x3c00000, 0xb26bddee, 0x7f7ffff0, 0x7f7fffef, 0x3c00010},
3030{0x3c00000, 0xb26bddee, 0x7f7fffff, 0x7f7ffffe, 0x3c00010},
3031{0x3c00000, 0xb26bddee, 0x7f800000, 0x7f800000, 0x3c00000},
3032{0x3c00000, 0xb26bddee, 0x7f800001, 0x7fc00000, 0x3c00001},
3033{0x3c00000, 0xb26bddee, 0x7f984a37, 0x7fc00000, 0x3c00001},
3034{0x3c00000, 0xb26bddee, 0x7fbfffff, 0x7fc00000, 0x3c00001},
3035{0x3c00000, 0xb26bddee, 0x7fc00000, 0x7fc00000, 0x3c00000},
3036{0x3c00000, 0xb26bddee, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
3037{0x3c00000, 0xb26bddee, 0x7fffffff, 0x7fc00000, 0x3c00000},
3038{0x3c00000, 0xb26bddee, 0x80000000, 0xb26bddee, 0x3c00000},
3039{0x3c00000, 0xb26bddee, 0x80000001, 0xb26bddee, 0x3c00080},
3040{0x3c00000, 0xb26bddee, 0x80000076, 0xb26bddee, 0x3c00080},
3041{0x3c00000, 0xb26bddee, 0x80002b94, 0xb26bddee, 0x3c00080},
3042{0x3c00000, 0xb26bddee, 0x80636d24, 0xb26bddee, 0x3c00080},
3043{0x3c00000, 0xb26bddee, 0x807fffff, 0xb26bddee, 0x3c00080},
3044{0x3c00000, 0xb26bddee, 0x80800000, 0xb26bddee, 0x3c00010},
3045{0x3c00000, 0xb26bddee, 0x80800002, 0xb26bddee, 0x3c00010},
3046{0x3c00000, 0xb26bddee, 0x81398437, 0xb26bddee, 0x3c00010},
3047{0x3c00000, 0xb26bddee, 0x8ba98d27, 0xb26bddee, 0x3c00010},
3048{0x3c00000, 0xb26bddee, 0x8ba98d7a, 0xb26bddee, 0x3c00010},
3049{0x3c00000, 0xb26bddee, 0xf51f853a, 0xf51f853a, 0x3c00010},
3050{0x3c00000, 0xb26bddee, 0xff7ffff0, 0xff7ffff0, 0x3c00010},
3051{0x3c00000, 0xb26bddee, 0xff7fffff, 0xff7fffff, 0x3c00010},
3052{0x3c00000, 0xb26bddee, 0xff800000, 0xff800000, 0x3c00000},
3053{0x3c00000, 0xb26bddee, 0xff800001, 0x7fc00000, 0x3c00001},
3054{0x3c00000, 0xb26bddee, 0xff984a37, 0x7fc00000, 0x3c00001},
3055{0x3c00000, 0xb26bddee, 0xffbfffff, 0x7fc00000, 0x3c00001},
3056{0x3c00000, 0xb26bddee, 0xffc00000, 0x7fc00000, 0x3c00000},
3057{0x3c00000, 0xb26bddee, 0xffd9ba98, 0x7fc00000, 0x3c00000},
3058{0x3c00000, 0xb26bddee, 0xffffffff, 0x7fc00000, 0x3c00000},
3059{0x3c00000, 0xb26bddee, 0x4f3495cb, 0x4f3495ca, 0x3c00010},
3060{0x3c00000, 0xb26bddee, 0xe73a5134, 0xe73a5134, 0x3c00010},
3061{0x3c00000, 0xb26bddee, 0x7c994e9e, 0x7c994e9d, 0x3c00010},
3062{0x3c00000, 0xb26bddee, 0x6164bd6c, 0x6164bd6b, 0x3c00010},
3063{0x3c00000, 0xb26bddee, 0x9503366, 0xb26bdded, 0x3c00010},
3064{0x3c00000, 0xb26bddee, 0xbf5a97c9, 0xbf5a97c9, 0x3c00010},
3065{0x3c00000, 0xb26bddee, 0xe6ff1a14, 0xe6ff1a14, 0x3c00010},
3066{0x3c00000, 0xb26bddee, 0x77f31e2f, 0x77f31e2e, 0x3c00010},
3067{0x3c00000, 0xb26bddee, 0xaab4d7d8, 0xb26bdf57, 0x3c00010},
3068{0x3c00000, 0xb26bddee, 0x966320b, 0xb26bdded, 0x3c00010},
3069{0x3c00000, 0xb26bddee, 0xb26bddee, 0xb2ebddee, 0x3c00000},
3070{0x3c00000, 0xb26bddee, 0xb5c8e5d3, 0xb5cabd8e, 0x3c00010},
3071{0x3c00000, 0xb26bddee, 0x317285d3, 0xb22f3c79, 0x3c00010},
3072{0x3c00000, 0xb26bddee, 0x3c9623b1, 0x3c9623a9, 0x3c00010},
3073{0x3c00000, 0xb26bddee, 0x51fd2c7c, 0x51fd2c7b, 0x3c00010},
3074{0x3c00000, 0xb26bddee, 0x7b906a6c, 0x7b906a6b, 0x3c00010},
3075{0x3c00000, 0xb5c8e5d3, 0x0, 0xb5c8e5d3, 0x3c00000},
3076{0x3c00000, 0xb5c8e5d3, 0x1, 0xb5c8e5d3, 0x3c00080},
3077{0x3c00000, 0xb5c8e5d3, 0x76, 0xb5c8e5d3, 0x3c00080},
3078{0x3c00000, 0xb5c8e5d3, 0x2b94, 0xb5c8e5d3, 0x3c00080},
3079{0x3c00000, 0xb5c8e5d3, 0x636d24, 0xb5c8e5d3, 0x3c00080},
3080{0x3c00000, 0xb5c8e5d3, 0x7fffff, 0xb5c8e5d3, 0x3c00080},
3081{0x3c00000, 0xb5c8e5d3, 0x800000, 0xb5c8e5d2, 0x3c00010},
3082{0x3c00000, 0xb5c8e5d3, 0x800002, 0xb5c8e5d2, 0x3c00010},
3083{0x3c00000, 0xb5c8e5d3, 0x1398437, 0xb5c8e5d2, 0x3c00010},
3084{0x3c00000, 0xb5c8e5d3, 0xba98d27, 0xb5c8e5d2, 0x3c00010},
3085{0x3c00000, 0xb5c8e5d3, 0xba98d7a, 0xb5c8e5d2, 0x3c00010},
3086{0x3c00000, 0xb5c8e5d3, 0x751f853a, 0x751f8539, 0x3c00010},
3087{0x3c00000, 0xb5c8e5d3, 0x7f7ffff0, 0x7f7fffef, 0x3c00010},
3088{0x3c00000, 0xb5c8e5d3, 0x7f7fffff, 0x7f7ffffe, 0x3c00010},
3089{0x3c00000, 0xb5c8e5d3, 0x7f800000, 0x7f800000, 0x3c00000},
3090{0x3c00000, 0xb5c8e5d3, 0x7f800001, 0x7fc00000, 0x3c00001},
3091{0x3c00000, 0xb5c8e5d3, 0x7f984a37, 0x7fc00000, 0x3c00001},
3092{0x3c00000, 0xb5c8e5d3, 0x7fbfffff, 0x7fc00000, 0x3c00001},
3093{0x3c00000, 0xb5c8e5d3, 0x7fc00000, 0x7fc00000, 0x3c00000},
3094{0x3c00000, 0xb5c8e5d3, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
3095{0x3c00000, 0xb5c8e5d3, 0x7fffffff, 0x7fc00000, 0x3c00000},
3096{0x3c00000, 0xb5c8e5d3, 0x80000000, 0xb5c8e5d3, 0x3c00000},
3097{0x3c00000, 0xb5c8e5d3, 0x80000001, 0xb5c8e5d3, 0x3c00080},
3098{0x3c00000, 0xb5c8e5d3, 0x80000076, 0xb5c8e5d3, 0x3c00080},
3099{0x3c00000, 0xb5c8e5d3, 0x80002b94, 0xb5c8e5d3, 0x3c00080},
3100{0x3c00000, 0xb5c8e5d3, 0x80636d24, 0xb5c8e5d3, 0x3c00080},
3101{0x3c00000, 0xb5c8e5d3, 0x807fffff, 0xb5c8e5d3, 0x3c00080},
3102{0x3c00000, 0xb5c8e5d3, 0x80800000, 0xb5c8e5d3, 0x3c00010},
3103{0x3c00000, 0xb5c8e5d3, 0x80800002, 0xb5c8e5d3, 0x3c00010},
3104{0x3c00000, 0xb5c8e5d3, 0x81398437, 0xb5c8e5d3, 0x3c00010},
3105{0x3c00000, 0xb5c8e5d3, 0x8ba98d27, 0xb5c8e5d3, 0x3c00010},
3106{0x3c00000, 0xb5c8e5d3, 0x8ba98d7a, 0xb5c8e5d3, 0x3c00010},
3107{0x3c00000, 0xb5c8e5d3, 0xf51f853a, 0xf51f853a, 0x3c00010},
3108{0x3c00000, 0xb5c8e5d3, 0xff7ffff0, 0xff7ffff0, 0x3c00010},
3109{0x3c00000, 0xb5c8e5d3, 0xff7fffff, 0xff7fffff, 0x3c00010},
3110{0x3c00000, 0xb5c8e5d3, 0xff800000, 0xff800000, 0x3c00000},
3111{0x3c00000, 0xb5c8e5d3, 0xff800001, 0x7fc00000, 0x3c00001},
3112{0x3c00000, 0xb5c8e5d3, 0xff984a37, 0x7fc00000, 0x3c00001},
3113{0x3c00000, 0xb5c8e5d3, 0xffbfffff, 0x7fc00000, 0x3c00001},
3114{0x3c00000, 0xb5c8e5d3, 0xffc00000, 0x7fc00000, 0x3c00000},
3115{0x3c00000, 0xb5c8e5d3, 0xffd9ba98, 0x7fc00000, 0x3c00000},
3116{0x3c00000, 0xb5c8e5d3, 0xffffffff, 0x7fc00000, 0x3c00000},
3117{0x3c00000, 0xb5c8e5d3, 0x4f3495cb, 0x4f3495ca, 0x3c00010},
3118{0x3c00000, 0xb5c8e5d3, 0xe73a5134, 0xe73a5134, 0x3c00010},
3119{0x3c00000, 0xb5c8e5d3, 0x7c994e9e, 0x7c994e9d, 0x3c00010},
3120{0x3c00000, 0xb5c8e5d3, 0x6164bd6c, 0x6164bd6b, 0x3c00010},
3121{0x3c00000, 0xb5c8e5d3, 0x9503366, 0xb5c8e5d2, 0x3c00010},
3122{0x3c00000, 0xb5c8e5d3, 0xbf5a97c9, 0xbf5a97e2, 0x3c00010},
3123{0x3c00000, 0xb5c8e5d3, 0xe6ff1a14, 0xe6ff1a14, 0x3c00010},
3124{0x3c00000, 0xb5c8e5d3, 0x77f31e2f, 0x77f31e2e, 0x3c00010},
3125{0x3c00000, 0xb5c8e5d3, 0xaab4d7d8, 0xb5c8e5d5, 0x3c00010},
3126{0x3c00000, 0xb5c8e5d3, 0x966320b, 0xb5c8e5d2, 0x3c00010},
3127{0x3c00000, 0xb5c8e5d3, 0xb26bddee, 0xb5cabd8e, 0x3c00010},
3128{0x3c00000, 0xb5c8e5d3, 0xb5c8e5d3, 0xb648e5d3, 0x3c00000},
3129{0x3c00000, 0xb5c8e5d3, 0x317285d3, 0xb5c86c90, 0x3c00010},
3130{0x3c00000, 0xb5c8e5d3, 0x3c9623b1, 0x3c96208d, 0x3c00010},
3131{0x3c00000, 0xb5c8e5d3, 0x51fd2c7c, 0x51fd2c7b, 0x3c00010},
3132{0x3c00000, 0xb5c8e5d3, 0x7b906a6c, 0x7b906a6b, 0x3c00010},
3133{0x3c00000, 0x317285d3, 0x0, 0x317285d3, 0x3c00000},
3134{0x3c00000, 0x317285d3, 0x1, 0x317285d3, 0x3c00080},
3135{0x3c00000, 0x317285d3, 0x76, 0x317285d3, 0x3c00080},
3136{0x3c00000, 0x317285d3, 0x2b94, 0x317285d3, 0x3c00080},
3137{0x3c00000, 0x317285d3, 0x636d24, 0x317285d3, 0x3c00080},
3138{0x3c00000, 0x317285d3, 0x7fffff, 0x317285d3, 0x3c00080},
3139{0x3c00000, 0x317285d3, 0x800000, 0x317285d3, 0x3c00010},
3140{0x3c00000, 0x317285d3, 0x800002, 0x317285d3, 0x3c00010},
3141{0x3c00000, 0x317285d3, 0x1398437, 0x317285d3, 0x3c00010},
3142{0x3c00000, 0x317285d3, 0xba98d27, 0x317285d3, 0x3c00010},
3143{0x3c00000, 0x317285d3, 0xba98d7a, 0x317285d3, 0x3c00010},
3144{0x3c00000, 0x317285d3, 0x751f853a, 0x751f853a, 0x3c00010},
3145{0x3c00000, 0x317285d3, 0x7f7ffff0, 0x7f7ffff0, 0x3c00010},
3146{0x3c00000, 0x317285d3, 0x7f7fffff, 0x7f7fffff, 0x3c00010},
3147{0x3c00000, 0x317285d3, 0x7f800000, 0x7f800000, 0x3c00000},
3148{0x3c00000, 0x317285d3, 0x7f800001, 0x7fc00000, 0x3c00001},
3149{0x3c00000, 0x317285d3, 0x7f984a37, 0x7fc00000, 0x3c00001},
3150{0x3c00000, 0x317285d3, 0x7fbfffff, 0x7fc00000, 0x3c00001},
3151{0x3c00000, 0x317285d3, 0x7fc00000, 0x7fc00000, 0x3c00000},
3152{0x3c00000, 0x317285d3, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
3153{0x3c00000, 0x317285d3, 0x7fffffff, 0x7fc00000, 0x3c00000},
3154{0x3c00000, 0x317285d3, 0x80000000, 0x317285d3, 0x3c00000},
3155{0x3c00000, 0x317285d3, 0x80000001, 0x317285d3, 0x3c00080},
3156{0x3c00000, 0x317285d3, 0x80000076, 0x317285d3, 0x3c00080},
3157{0x3c00000, 0x317285d3, 0x80002b94, 0x317285d3, 0x3c00080},
3158{0x3c00000, 0x317285d3, 0x80636d24, 0x317285d3, 0x3c00080},
3159{0x3c00000, 0x317285d3, 0x807fffff, 0x317285d3, 0x3c00080},
3160{0x3c00000, 0x317285d3, 0x80800000, 0x317285d2, 0x3c00010},
3161{0x3c00000, 0x317285d3, 0x80800002, 0x317285d2, 0x3c00010},
3162{0x3c00000, 0x317285d3, 0x81398437, 0x317285d2, 0x3c00010},
3163{0x3c00000, 0x317285d3, 0x8ba98d27, 0x317285d2, 0x3c00010},
3164{0x3c00000, 0x317285d3, 0x8ba98d7a, 0x317285d2, 0x3c00010},
3165{0x3c00000, 0x317285d3, 0xf51f853a, 0xf51f8539, 0x3c00010},
3166{0x3c00000, 0x317285d3, 0xff7ffff0, 0xff7fffef, 0x3c00010},
3167{0x3c00000, 0x317285d3, 0xff7fffff, 0xff7ffffe, 0x3c00010},
3168{0x3c00000, 0x317285d3, 0xff800000, 0xff800000, 0x3c00000},
3169{0x3c00000, 0x317285d3, 0xff800001, 0x7fc00000, 0x3c00001},
3170{0x3c00000, 0x317285d3, 0xff984a37, 0x7fc00000, 0x3c00001},
3171{0x3c00000, 0x317285d3, 0xffbfffff, 0x7fc00000, 0x3c00001},
3172{0x3c00000, 0x317285d3, 0xffc00000, 0x7fc00000, 0x3c00000},
3173{0x3c00000, 0x317285d3, 0xffd9ba98, 0x7fc00000, 0x3c00000},
3174{0x3c00000, 0x317285d3, 0xffffffff, 0x7fc00000, 0x3c00000},
3175{0x3c00000, 0x317285d3, 0x4f3495cb, 0x4f3495cb, 0x3c00010},
3176{0x3c00000, 0x317285d3, 0xe73a5134, 0xe73a5133, 0x3c00010},
3177{0x3c00000, 0x317285d3, 0x7c994e9e, 0x7c994e9e, 0x3c00010},
3178{0x3c00000, 0x317285d3, 0x6164bd6c, 0x6164bd6c, 0x3c00010},
3179{0x3c00000, 0x317285d3, 0x9503366, 0x317285d3, 0x3c00010},
3180{0x3c00000, 0x317285d3, 0xbf5a97c9, 0xbf5a97c8, 0x3c00010},
3181{0x3c00000, 0x317285d3, 0xe6ff1a14, 0xe6ff1a13, 0x3c00010},
3182{0x3c00000, 0x317285d3, 0x77f31e2f, 0x77f31e2f, 0x3c00010},
3183{0x3c00000, 0x317285d3, 0xaab4d7d8, 0x3172802c, 0x3c00010},
3184{0x3c00000, 0x317285d3, 0x966320b, 0x317285d3, 0x3c00010},
3185{0x3c00000, 0x317285d3, 0xb26bddee, 0xb22f3c79, 0x3c00010},
3186{0x3c00000, 0x317285d3, 0xb5c8e5d3, 0xb5c86c90, 0x3c00010},
3187{0x3c00000, 0x317285d3, 0x317285d3, 0x31f285d3, 0x3c00000},
3188{0x3c00000, 0x317285d3, 0x3c9623b1, 0x3c9623b2, 0x3c00010},
3189{0x3c00000, 0x317285d3, 0x51fd2c7c, 0x51fd2c7c, 0x3c00010},
3190{0x3c00000, 0x317285d3, 0x7b906a6c, 0x7b906a6c, 0x3c00010},
3191{0x3c00000, 0x3c9623b1, 0x0, 0x3c9623b1, 0x3c00000},
3192{0x3c00000, 0x3c9623b1, 0x1, 0x3c9623b1, 0x3c00080},
3193{0x3c00000, 0x3c9623b1, 0x76, 0x3c9623b1, 0x3c00080},
3194{0x3c00000, 0x3c9623b1, 0x2b94, 0x3c9623b1, 0x3c00080},
3195{0x3c00000, 0x3c9623b1, 0x636d24, 0x3c9623b1, 0x3c00080},
3196{0x3c00000, 0x3c9623b1, 0x7fffff, 0x3c9623b1, 0x3c00080},
3197{0x3c00000, 0x3c9623b1, 0x800000, 0x3c9623b1, 0x3c00010},
3198{0x3c00000, 0x3c9623b1, 0x800002, 0x3c9623b1, 0x3c00010},
3199{0x3c00000, 0x3c9623b1, 0x1398437, 0x3c9623b1, 0x3c00010},
3200{0x3c00000, 0x3c9623b1, 0xba98d27, 0x3c9623b1, 0x3c00010},
3201{0x3c00000, 0x3c9623b1, 0xba98d7a, 0x3c9623b1, 0x3c00010},
3202{0x3c00000, 0x3c9623b1, 0x751f853a, 0x751f853a, 0x3c00010},
3203{0x3c00000, 0x3c9623b1, 0x7f7ffff0, 0x7f7ffff0, 0x3c00010},
3204{0x3c00000, 0x3c9623b1, 0x7f7fffff, 0x7f7fffff, 0x3c00010},
3205{0x3c00000, 0x3c9623b1, 0x7f800000, 0x7f800000, 0x3c00000},
3206{0x3c00000, 0x3c9623b1, 0x7f800001, 0x7fc00000, 0x3c00001},
3207{0x3c00000, 0x3c9623b1, 0x7f984a37, 0x7fc00000, 0x3c00001},
3208{0x3c00000, 0x3c9623b1, 0x7fbfffff, 0x7fc00000, 0x3c00001},
3209{0x3c00000, 0x3c9623b1, 0x7fc00000, 0x7fc00000, 0x3c00000},
3210{0x3c00000, 0x3c9623b1, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
3211{0x3c00000, 0x3c9623b1, 0x7fffffff, 0x7fc00000, 0x3c00000},
3212{0x3c00000, 0x3c9623b1, 0x80000000, 0x3c9623b1, 0x3c00000},
3213{0x3c00000, 0x3c9623b1, 0x80000001, 0x3c9623b1, 0x3c00080},
3214{0x3c00000, 0x3c9623b1, 0x80000076, 0x3c9623b1, 0x3c00080},
3215{0x3c00000, 0x3c9623b1, 0x80002b94, 0x3c9623b1, 0x3c00080},
3216{0x3c00000, 0x3c9623b1, 0x80636d24, 0x3c9623b1, 0x3c00080},
3217{0x3c00000, 0x3c9623b1, 0x807fffff, 0x3c9623b1, 0x3c00080},
3218{0x3c00000, 0x3c9623b1, 0x80800000, 0x3c9623b0, 0x3c00010},
3219{0x3c00000, 0x3c9623b1, 0x80800002, 0x3c9623b0, 0x3c00010},
3220{0x3c00000, 0x3c9623b1, 0x81398437, 0x3c9623b0, 0x3c00010},
3221{0x3c00000, 0x3c9623b1, 0x8ba98d27, 0x3c9623b0, 0x3c00010},
3222{0x3c00000, 0x3c9623b1, 0x8ba98d7a, 0x3c9623b0, 0x3c00010},
3223{0x3c00000, 0x3c9623b1, 0xf51f853a, 0xf51f8539, 0x3c00010},
3224{0x3c00000, 0x3c9623b1, 0xff7ffff0, 0xff7fffef, 0x3c00010},
3225{0x3c00000, 0x3c9623b1, 0xff7fffff, 0xff7ffffe, 0x3c00010},
3226{0x3c00000, 0x3c9623b1, 0xff800000, 0xff800000, 0x3c00000},
3227{0x3c00000, 0x3c9623b1, 0xff800001, 0x7fc00000, 0x3c00001},
3228{0x3c00000, 0x3c9623b1, 0xff984a37, 0x7fc00000, 0x3c00001},
3229{0x3c00000, 0x3c9623b1, 0xffbfffff, 0x7fc00000, 0x3c00001},
3230{0x3c00000, 0x3c9623b1, 0xffc00000, 0x7fc00000, 0x3c00000},
3231{0x3c00000, 0x3c9623b1, 0xffd9ba98, 0x7fc00000, 0x3c00000},
3232{0x3c00000, 0x3c9623b1, 0xffffffff, 0x7fc00000, 0x3c00000},
3233{0x3c00000, 0x3c9623b1, 0x4f3495cb, 0x4f3495cb, 0x3c00010},
3234{0x3c00000, 0x3c9623b1, 0xe73a5134, 0xe73a5133, 0x3c00010},
3235{0x3c00000, 0x3c9623b1, 0x7c994e9e, 0x7c994e9e, 0x3c00010},
3236{0x3c00000, 0x3c9623b1, 0x6164bd6c, 0x6164bd6c, 0x3c00010},
3237{0x3c00000, 0x3c9623b1, 0x9503366, 0x3c9623b1, 0x3c00010},
3238{0x3c00000, 0x3c9623b1, 0xbf5a97c9, 0xbf55e6ab, 0x3c00010},
3239{0x3c00000, 0x3c9623b1, 0xe6ff1a14, 0xe6ff1a13, 0x3c00010},
3240{0x3c00000, 0x3c9623b1, 0x77f31e2f, 0x77f31e2f, 0x3c00010},
3241{0x3c00000, 0x3c9623b1, 0xaab4d7d8, 0x3c9623b0, 0x3c00010},
3242{0x3c00000, 0x3c9623b1, 0x966320b, 0x3c9623b1, 0x3c00010},
3243{0x3c00000, 0x3c9623b1, 0xb26bddee, 0x3c9623a9, 0x3c00010},
3244{0x3c00000, 0x3c9623b1, 0xb5c8e5d3, 0x3c96208d, 0x3c00010},
3245{0x3c00000, 0x3c9623b1, 0x317285d3, 0x3c9623b2, 0x3c00010},
3246{0x3c00000, 0x3c9623b1, 0x3c9623b1, 0x3d1623b1, 0x3c00000},
3247{0x3c00000, 0x3c9623b1, 0x51fd2c7c, 0x51fd2c7c, 0x3c00010},
3248{0x3c00000, 0x3c9623b1, 0x7b906a6c, 0x7b906a6c, 0x3c00010},
3249{0x3c00000, 0x51fd2c7c, 0x0, 0x51fd2c7c, 0x3c00000},
3250{0x3c00000, 0x51fd2c7c, 0x1, 0x51fd2c7c, 0x3c00080},
3251{0x3c00000, 0x51fd2c7c, 0x76, 0x51fd2c7c, 0x3c00080},
3252{0x3c00000, 0x51fd2c7c, 0x2b94, 0x51fd2c7c, 0x3c00080},
3253{0x3c00000, 0x51fd2c7c, 0x636d24, 0x51fd2c7c, 0x3c00080},
3254{0x3c00000, 0x51fd2c7c, 0x7fffff, 0x51fd2c7c, 0x3c00080},
3255{0x3c00000, 0x51fd2c7c, 0x800000, 0x51fd2c7c, 0x3c00010},
3256{0x3c00000, 0x51fd2c7c, 0x800002, 0x51fd2c7c, 0x3c00010},
3257{0x3c00000, 0x51fd2c7c, 0x1398437, 0x51fd2c7c, 0x3c00010},
3258{0x3c00000, 0x51fd2c7c, 0xba98d27, 0x51fd2c7c, 0x3c00010},
3259{0x3c00000, 0x51fd2c7c, 0xba98d7a, 0x51fd2c7c, 0x3c00010},
3260{0x3c00000, 0x51fd2c7c, 0x751f853a, 0x751f853a, 0x3c00010},
3261{0x3c00000, 0x51fd2c7c, 0x7f7ffff0, 0x7f7ffff0, 0x3c00010},
3262{0x3c00000, 0x51fd2c7c, 0x7f7fffff, 0x7f7fffff, 0x3c00010},
3263{0x3c00000, 0x51fd2c7c, 0x7f800000, 0x7f800000, 0x3c00000},
3264{0x3c00000, 0x51fd2c7c, 0x7f800001, 0x7fc00000, 0x3c00001},
3265{0x3c00000, 0x51fd2c7c, 0x7f984a37, 0x7fc00000, 0x3c00001},
3266{0x3c00000, 0x51fd2c7c, 0x7fbfffff, 0x7fc00000, 0x3c00001},
3267{0x3c00000, 0x51fd2c7c, 0x7fc00000, 0x7fc00000, 0x3c00000},
3268{0x3c00000, 0x51fd2c7c, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
3269{0x3c00000, 0x51fd2c7c, 0x7fffffff, 0x7fc00000, 0x3c00000},
3270{0x3c00000, 0x51fd2c7c, 0x80000000, 0x51fd2c7c, 0x3c00000},
3271{0x3c00000, 0x51fd2c7c, 0x80000001, 0x51fd2c7c, 0x3c00080},
3272{0x3c00000, 0x51fd2c7c, 0x80000076, 0x51fd2c7c, 0x3c00080},
3273{0x3c00000, 0x51fd2c7c, 0x80002b94, 0x51fd2c7c, 0x3c00080},
3274{0x3c00000, 0x51fd2c7c, 0x80636d24, 0x51fd2c7c, 0x3c00080},
3275{0x3c00000, 0x51fd2c7c, 0x807fffff, 0x51fd2c7c, 0x3c00080},
3276{0x3c00000, 0x51fd2c7c, 0x80800000, 0x51fd2c7b, 0x3c00010},
3277{0x3c00000, 0x51fd2c7c, 0x80800002, 0x51fd2c7b, 0x3c00010},
3278{0x3c00000, 0x51fd2c7c, 0x81398437, 0x51fd2c7b, 0x3c00010},
3279{0x3c00000, 0x51fd2c7c, 0x8ba98d27, 0x51fd2c7b, 0x3c00010},
3280{0x3c00000, 0x51fd2c7c, 0x8ba98d7a, 0x51fd2c7b, 0x3c00010},
3281{0x3c00000, 0x51fd2c7c, 0xf51f853a, 0xf51f8539, 0x3c00010},
3282{0x3c00000, 0x51fd2c7c, 0xff7ffff0, 0xff7fffef, 0x3c00010},
3283{0x3c00000, 0x51fd2c7c, 0xff7fffff, 0xff7ffffe, 0x3c00010},
3284{0x3c00000, 0x51fd2c7c, 0xff800000, 0xff800000, 0x3c00000},
3285{0x3c00000, 0x51fd2c7c, 0xff800001, 0x7fc00000, 0x3c00001},
3286{0x3c00000, 0x51fd2c7c, 0xff984a37, 0x7fc00000, 0x3c00001},
3287{0x3c00000, 0x51fd2c7c, 0xffbfffff, 0x7fc00000, 0x3c00001},
3288{0x3c00000, 0x51fd2c7c, 0xffc00000, 0x7fc00000, 0x3c00000},
3289{0x3c00000, 0x51fd2c7c, 0xffd9ba98, 0x7fc00000, 0x3c00000},
3290{0x3c00000, 0x51fd2c7c, 0xffffffff, 0x7fc00000, 0x3c00000},
3291{0x3c00000, 0x51fd2c7c, 0x4f3495cb, 0x52016895, 0x3c00010},
3292{0x3c00000, 0x51fd2c7c, 0xe73a5134, 0xe73a5133, 0x3c00010},
3293{0x3c00000, 0x51fd2c7c, 0x7c994e9e, 0x7c994e9e, 0x3c00010},
3294{0x3c00000, 0x51fd2c7c, 0x6164bd6c, 0x6164bd6c, 0x3c00010},
3295{0x3c00000, 0x51fd2c7c, 0x9503366, 0x51fd2c7c, 0x3c00010},
3296{0x3c00000, 0x51fd2c7c, 0xbf5a97c9, 0x51fd2c7b, 0x3c00010},
3297{0x3c00000, 0x51fd2c7c, 0xe6ff1a14, 0xe6ff1a13, 0x3c00010},
3298{0x3c00000, 0x51fd2c7c, 0x77f31e2f, 0x77f31e2f, 0x3c00010},
3299{0x3c00000, 0x51fd2c7c, 0xaab4d7d8, 0x51fd2c7b, 0x3c00010},
3300{0x3c00000, 0x51fd2c7c, 0x966320b, 0x51fd2c7c, 0x3c00010},
3301{0x3c00000, 0x51fd2c7c, 0xb26bddee, 0x51fd2c7b, 0x3c00010},
3302{0x3c00000, 0x51fd2c7c, 0xb5c8e5d3, 0x51fd2c7b, 0x3c00010},
3303{0x3c00000, 0x51fd2c7c, 0x317285d3, 0x51fd2c7c, 0x3c00010},
3304{0x3c00000, 0x51fd2c7c, 0x3c9623b1, 0x51fd2c7c, 0x3c00010},
3305{0x3c00000, 0x51fd2c7c, 0x51fd2c7c, 0x527d2c7c, 0x3c00000},
3306{0x3c00000, 0x51fd2c7c, 0x7b906a6c, 0x7b906a6c, 0x3c00010},
3307{0x3c00000, 0x7b906a6c, 0x0, 0x7b906a6c, 0x3c00000},
3308{0x3c00000, 0x7b906a6c, 0x1, 0x7b906a6c, 0x3c00080},
3309{0x3c00000, 0x7b906a6c, 0x76, 0x7b906a6c, 0x3c00080},
3310{0x3c00000, 0x7b906a6c, 0x2b94, 0x7b906a6c, 0x3c00080},
3311{0x3c00000, 0x7b906a6c, 0x636d24, 0x7b906a6c, 0x3c00080},
3312{0x3c00000, 0x7b906a6c, 0x7fffff, 0x7b906a6c, 0x3c00080},
3313{0x3c00000, 0x7b906a6c, 0x800000, 0x7b906a6c, 0x3c00010},
3314{0x3c00000, 0x7b906a6c, 0x800002, 0x7b906a6c, 0x3c00010},
3315{0x3c00000, 0x7b906a6c, 0x1398437, 0x7b906a6c, 0x3c00010},
3316{0x3c00000, 0x7b906a6c, 0xba98d27, 0x7b906a6c, 0x3c00010},
3317{0x3c00000, 0x7b906a6c, 0xba98d7a, 0x7b906a6c, 0x3c00010},
3318{0x3c00000, 0x7b906a6c, 0x751f853a, 0x7b906f68, 0x3c00010},
3319{0x3c00000, 0x7b906a6c, 0x7f7ffff0, 0x7f7fffff, 0x3c00014},
3320{0x3c00000, 0x7b906a6c, 0x7f7fffff, 0x7f7fffff, 0x3c00014},
3321{0x3c00000, 0x7b906a6c, 0x7f800000, 0x7f800000, 0x3c00000},
3322{0x3c00000, 0x7b906a6c, 0x7f800001, 0x7fc00000, 0x3c00001},
3323{0x3c00000, 0x7b906a6c, 0x7f984a37, 0x7fc00000, 0x3c00001},
3324{0x3c00000, 0x7b906a6c, 0x7fbfffff, 0x7fc00000, 0x3c00001},
3325{0x3c00000, 0x7b906a6c, 0x7fc00000, 0x7fc00000, 0x3c00000},
3326{0x3c00000, 0x7b906a6c, 0x7fd9ba98, 0x7fc00000, 0x3c00000},
3327{0x3c00000, 0x7b906a6c, 0x7fffffff, 0x7fc00000, 0x3c00000},
3328{0x3c00000, 0x7b906a6c, 0x80000000, 0x7b906a6c, 0x3c00000},
3329{0x3c00000, 0x7b906a6c, 0x80000001, 0x7b906a6c, 0x3c00080},
3330{0x3c00000, 0x7b906a6c, 0x80000076, 0x7b906a6c, 0x3c00080},
3331{0x3c00000, 0x7b906a6c, 0x80002b94, 0x7b906a6c, 0x3c00080},
3332{0x3c00000, 0x7b906a6c, 0x80636d24, 0x7b906a6c, 0x3c00080},
3333{0x3c00000, 0x7b906a6c, 0x807fffff, 0x7b906a6c, 0x3c00080},
3334{0x3c00000, 0x7b906a6c, 0x80800000, 0x7b906a6b, 0x3c00010},
3335{0x3c00000, 0x7b906a6c, 0x80800002, 0x7b906a6b, 0x3c00010},
3336{0x3c00000, 0x7b906a6c, 0x81398437, 0x7b906a6b, 0x3c00010},
3337{0x3c00000, 0x7b906a6c, 0x8ba98d27, 0x7b906a6b, 0x3c00010},
3338{0x3c00000, 0x7b906a6c, 0x8ba98d7a, 0x7b906a6b, 0x3c00010},
3339{0x3c00000, 0x7b906a6c, 0xf51f853a, 0x7b90656f, 0x3c00010},
3340{0x3c00000, 0x7b906a6c, 0xff7ffff0, 0xff7edf1b, 0x3c00010},
3341{0x3c00000, 0x7b906a6c, 0xff7fffff, 0xff7edf2a, 0x3c00010},
3342{0x3c00000, 0x7b906a6c, 0xff800000, 0xff800000, 0x3c00000},
3343{0x3c00000, 0x7b906a6c, 0xff800001, 0x7fc00000, 0x3c00001},
3344{0x3c00000, 0x7b906a6c, 0xff984a37, 0x7fc00000, 0x3c00001},
3345{0x3c00000, 0x7b906a6c, 0xffbfffff, 0x7fc00000, 0x3c00001},
3346{0x3c00000, 0x7b906a6c, 0xffc00000, 0x7fc00000, 0x3c00000},
3347{0x3c00000, 0x7b906a6c, 0xffd9ba98, 0x7fc00000, 0x3c00000},
3348{0x3c00000, 0x7b906a6c, 0xffffffff, 0x7fc00000, 0x3c00000},
3349{0x3c00000, 0x7b906a6c, 0x4f3495cb, 0x7b906a6c, 0x3c00010},
3350{0x3c00000, 0x7b906a6c, 0xe73a5134, 0x7b906a6b, 0x3c00010},
3351{0x3c00000, 0x7b906a6c, 0x7c994e9e, 0x7cbd6939, 0x3c00000},
3352{0x3c00000, 0x7b906a6c, 0x6164bd6c, 0x7b906a6c, 0x3c00010},
3353{0x3c00000, 0x7b906a6c, 0x9503366, 0x7b906a6c, 0x3c00010},
3354{0x3c00000, 0x7b906a6c, 0xbf5a97c9, 0x7b906a6b, 0x3c00010},
3355{0x3c00000, 0x7b906a6c, 0xe6ff1a14, 0x7b906a6b, 0x3c00010},
3356{0x3c00000, 0x7b906a6c, 0x77f31e2f, 0x7b915d8a, 0x3c00010},
3357{0x3c00000, 0x7b906a6c, 0xaab4d7d8, 0x7b906a6b, 0x3c00010},
3358{0x3c00000, 0x7b906a6c, 0x966320b, 0x7b906a6c, 0x3c00010},
3359{0x3c00000, 0x7b906a6c, 0xb26bddee, 0x7b906a6b, 0x3c00010},
3360{0x3c00000, 0x7b906a6c, 0xb5c8e5d3, 0x7b906a6b, 0x3c00010},
3361{0x3c00000, 0x7b906a6c, 0x317285d3, 0x7b906a6c, 0x3c00010},
3362{0x3c00000, 0x7b906a6c, 0x3c9623b1, 0x7b906a6c, 0x3c00010},
3363{0x3c00000, 0x7b906a6c, 0x51fd2c7c, 0x7b906a6c, 0x3c00010},
3364{0x3c00000, 0x7b906a6c, 0x7b906a6c, 0x7c106a6c, 0x3c00000},
3365{0x3800000, 0x0, 0x0, 0x0, 0x3800000},
3366{0x3800000, 0x0, 0x1, 0x0, 0x3800080},
3367{0x3800000, 0x0, 0x76, 0x0, 0x3800080},
3368{0x3800000, 0x0, 0x2b94, 0x0, 0x3800080},
3369{0x3800000, 0x0, 0x636d24, 0x0, 0x3800080},
3370{0x3800000, 0x0, 0x7fffff, 0x0, 0x3800080},
3371{0x3800000, 0x0, 0x800000, 0x800000, 0x3800000},
3372{0x3800000, 0x0, 0x800002, 0x800002, 0x3800000},
3373{0x3800000, 0x0, 0x1398437, 0x1398437, 0x3800000},
3374{0x3800000, 0x0, 0xba98d27, 0xba98d27, 0x3800000},
3375{0x3800000, 0x0, 0xba98d7a, 0xba98d7a, 0x3800000},
3376{0x3800000, 0x0, 0x751f853a, 0x751f853a, 0x3800000},
3377{0x3800000, 0x0, 0x7f7ffff0, 0x7f7ffff0, 0x3800000},
3378{0x3800000, 0x0, 0x7f7fffff, 0x7f7fffff, 0x3800000},
3379{0x3800000, 0x0, 0x7f800000, 0x7f800000, 0x3800000},
3380{0x3800000, 0x0, 0x7f800001, 0x7fc00000, 0x3800001},
3381{0x3800000, 0x0, 0x7f984a37, 0x7fc00000, 0x3800001},
3382{0x3800000, 0x0, 0x7fbfffff, 0x7fc00000, 0x3800001},
3383{0x3800000, 0x0, 0x7fc00000, 0x7fc00000, 0x3800000},
3384{0x3800000, 0x0, 0x7fd9ba98, 0x7fc00000, 0x3800000},
3385{0x3800000, 0x0, 0x7fffffff, 0x7fc00000, 0x3800000},
3386{0x3800000, 0x0, 0x80000000, 0x80000000, 0x3800000},
3387{0x3800000, 0x0, 0x80000001, 0x0, 0x3800080},
3388{0x3800000, 0x0, 0x80000076, 0x0, 0x3800080},
3389{0x3800000, 0x0, 0x80002b94, 0x0, 0x3800080},
3390{0x3800000, 0x0, 0x80636d24, 0x0, 0x3800080},
3391{0x3800000, 0x0, 0x807fffff, 0x0, 0x3800080},
3392{0x3800000, 0x0, 0x80800000, 0x80800000, 0x3800000},
3393{0x3800000, 0x0, 0x80800002, 0x80800002, 0x3800000},
3394{0x3800000, 0x0, 0x81398437, 0x81398437, 0x3800000},
3395{0x3800000, 0x0, 0x8ba98d27, 0x8ba98d27, 0x3800000},
3396{0x3800000, 0x0, 0x8ba98d7a, 0x8ba98d7a, 0x3800000},
3397{0x3800000, 0x0, 0xf51f853a, 0xf51f853a, 0x3800000},
3398{0x3800000, 0x0, 0xff7ffff0, 0xff7ffff0, 0x3800000},
3399{0x3800000, 0x0, 0xff7fffff, 0xff7fffff, 0x3800000},
3400{0x3800000, 0x0, 0xff800000, 0xff800000, 0x3800000},
3401{0x3800000, 0x0, 0xff800001, 0x7fc00000, 0x3800001},
3402{0x3800000, 0x0, 0xff984a37, 0x7fc00000, 0x3800001},
3403{0x3800000, 0x0, 0xffbfffff, 0x7fc00000, 0x3800001},
3404{0x3800000, 0x0, 0xffc00000, 0x7fc00000, 0x3800000},
3405{0x3800000, 0x0, 0xffd9ba98, 0x7fc00000, 0x3800000},
3406{0x3800000, 0x0, 0xffffffff, 0x7fc00000, 0x3800000},
3407{0x3800000, 0x0, 0x4f3495cb, 0x4f3495cb, 0x3800000},
3408{0x3800000, 0x0, 0xe73a5134, 0xe73a5134, 0x3800000},
3409{0x3800000, 0x0, 0x7c994e9e, 0x7c994e9e, 0x3800000},
3410{0x3800000, 0x0, 0x6164bd6c, 0x6164bd6c, 0x3800000},
3411{0x3800000, 0x0, 0x9503366, 0x9503366, 0x3800000},
3412{0x3800000, 0x0, 0xbf5a97c9, 0xbf5a97c9, 0x3800000},
3413{0x3800000, 0x0, 0xe6ff1a14, 0xe6ff1a14, 0x3800000},
3414{0x3800000, 0x0, 0x77f31e2f, 0x77f31e2f, 0x3800000},
3415{0x3800000, 0x0, 0xaab4d7d8, 0xaab4d7d8, 0x3800000},
3416{0x3800000, 0x0, 0x966320b, 0x966320b, 0x3800000},
3417{0x3800000, 0x0, 0xb26bddee, 0xb26bddee, 0x3800000},
3418{0x3800000, 0x0, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800000},
3419{0x3800000, 0x0, 0x317285d3, 0x317285d3, 0x3800000},
3420{0x3800000, 0x0, 0x3c9623b1, 0x3c9623b1, 0x3800000},
3421{0x3800000, 0x0, 0x51fd2c7c, 0x51fd2c7c, 0x3800000},
3422{0x3800000, 0x0, 0x7b906a6c, 0x7b906a6c, 0x3800000},
3423{0x3800000, 0x1, 0x0, 0x0, 0x3800080},
3424{0x3800000, 0x1, 0x1, 0x0, 0x3800080},
3425{0x3800000, 0x1, 0x76, 0x0, 0x3800080},
3426{0x3800000, 0x1, 0x2b94, 0x0, 0x3800080},
3427{0x3800000, 0x1, 0x636d24, 0x0, 0x3800080},
3428{0x3800000, 0x1, 0x7fffff, 0x0, 0x3800080},
3429{0x3800000, 0x1, 0x800000, 0x800000, 0x3800080},
3430{0x3800000, 0x1, 0x800002, 0x800002, 0x3800080},
3431{0x3800000, 0x1, 0x1398437, 0x1398437, 0x3800080},
3432{0x3800000, 0x1, 0xba98d27, 0xba98d27, 0x3800080},
3433{0x3800000, 0x1, 0xba98d7a, 0xba98d7a, 0x3800080},
3434{0x3800000, 0x1, 0x751f853a, 0x751f853a, 0x3800080},
3435{0x3800000, 0x1, 0x7f7ffff0, 0x7f7ffff0, 0x3800080},
3436{0x3800000, 0x1, 0x7f7fffff, 0x7f7fffff, 0x3800080},
3437{0x3800000, 0x1, 0x7f800000, 0x7f800000, 0x3800080},
3438{0x3800000, 0x1, 0x7f800001, 0x7fc00000, 0x3800081},
3439{0x3800000, 0x1, 0x7f984a37, 0x7fc00000, 0x3800081},
3440{0x3800000, 0x1, 0x7fbfffff, 0x7fc00000, 0x3800081},
3441{0x3800000, 0x1, 0x7fc00000, 0x7fc00000, 0x3800080},
3442{0x3800000, 0x1, 0x7fd9ba98, 0x7fc00000, 0x3800080},
3443{0x3800000, 0x1, 0x7fffffff, 0x7fc00000, 0x3800080},
3444{0x3800000, 0x1, 0x80000000, 0x80000000, 0x3800080},
3445{0x3800000, 0x1, 0x80000001, 0x0, 0x3800080},
3446{0x3800000, 0x1, 0x80000076, 0x0, 0x3800080},
3447{0x3800000, 0x1, 0x80002b94, 0x0, 0x3800080},
3448{0x3800000, 0x1, 0x80636d24, 0x0, 0x3800080},
3449{0x3800000, 0x1, 0x807fffff, 0x0, 0x3800080},
3450{0x3800000, 0x1, 0x80800000, 0x80800000, 0x3800080},
3451{0x3800000, 0x1, 0x80800002, 0x80800002, 0x3800080},
3452{0x3800000, 0x1, 0x81398437, 0x81398437, 0x3800080},
3453{0x3800000, 0x1, 0x8ba98d27, 0x8ba98d27, 0x3800080},
3454{0x3800000, 0x1, 0x8ba98d7a, 0x8ba98d7a, 0x3800080},
3455{0x3800000, 0x1, 0xf51f853a, 0xf51f853a, 0x3800080},
3456{0x3800000, 0x1, 0xff7ffff0, 0xff7ffff0, 0x3800080},
3457{0x3800000, 0x1, 0xff7fffff, 0xff7fffff, 0x3800080},
3458{0x3800000, 0x1, 0xff800000, 0xff800000, 0x3800080},
3459{0x3800000, 0x1, 0xff800001, 0x7fc00000, 0x3800081},
3460{0x3800000, 0x1, 0xff984a37, 0x7fc00000, 0x3800081},
3461{0x3800000, 0x1, 0xffbfffff, 0x7fc00000, 0x3800081},
3462{0x3800000, 0x1, 0xffc00000, 0x7fc00000, 0x3800080},
3463{0x3800000, 0x1, 0xffd9ba98, 0x7fc00000, 0x3800080},
3464{0x3800000, 0x1, 0xffffffff, 0x7fc00000, 0x3800080},
3465{0x3800000, 0x1, 0x4f3495cb, 0x4f3495cb, 0x3800080},
3466{0x3800000, 0x1, 0xe73a5134, 0xe73a5134, 0x3800080},
3467{0x3800000, 0x1, 0x7c994e9e, 0x7c994e9e, 0x3800080},
3468{0x3800000, 0x1, 0x6164bd6c, 0x6164bd6c, 0x3800080},
3469{0x3800000, 0x1, 0x9503366, 0x9503366, 0x3800080},
3470{0x3800000, 0x1, 0xbf5a97c9, 0xbf5a97c9, 0x3800080},
3471{0x3800000, 0x1, 0xe6ff1a14, 0xe6ff1a14, 0x3800080},
3472{0x3800000, 0x1, 0x77f31e2f, 0x77f31e2f, 0x3800080},
3473{0x3800000, 0x1, 0xaab4d7d8, 0xaab4d7d8, 0x3800080},
3474{0x3800000, 0x1, 0x966320b, 0x966320b, 0x3800080},
3475{0x3800000, 0x1, 0xb26bddee, 0xb26bddee, 0x3800080},
3476{0x3800000, 0x1, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800080},
3477{0x3800000, 0x1, 0x317285d3, 0x317285d3, 0x3800080},
3478{0x3800000, 0x1, 0x3c9623b1, 0x3c9623b1, 0x3800080},
3479{0x3800000, 0x1, 0x51fd2c7c, 0x51fd2c7c, 0x3800080},
3480{0x3800000, 0x1, 0x7b906a6c, 0x7b906a6c, 0x3800080},
3481{0x3800000, 0x76, 0x0, 0x0, 0x3800080},
3482{0x3800000, 0x76, 0x1, 0x0, 0x3800080},
3483{0x3800000, 0x76, 0x76, 0x0, 0x3800080},
3484{0x3800000, 0x76, 0x2b94, 0x0, 0x3800080},
3485{0x3800000, 0x76, 0x636d24, 0x0, 0x3800080},
3486{0x3800000, 0x76, 0x7fffff, 0x0, 0x3800080},
3487{0x3800000, 0x76, 0x800000, 0x800000, 0x3800080},
3488{0x3800000, 0x76, 0x800002, 0x800002, 0x3800080},
3489{0x3800000, 0x76, 0x1398437, 0x1398437, 0x3800080},
3490{0x3800000, 0x76, 0xba98d27, 0xba98d27, 0x3800080},
3491{0x3800000, 0x76, 0xba98d7a, 0xba98d7a, 0x3800080},
3492{0x3800000, 0x76, 0x751f853a, 0x751f853a, 0x3800080},
3493{0x3800000, 0x76, 0x7f7ffff0, 0x7f7ffff0, 0x3800080},
3494{0x3800000, 0x76, 0x7f7fffff, 0x7f7fffff, 0x3800080},
3495{0x3800000, 0x76, 0x7f800000, 0x7f800000, 0x3800080},
3496{0x3800000, 0x76, 0x7f800001, 0x7fc00000, 0x3800081},
3497{0x3800000, 0x76, 0x7f984a37, 0x7fc00000, 0x3800081},
3498{0x3800000, 0x76, 0x7fbfffff, 0x7fc00000, 0x3800081},
3499{0x3800000, 0x76, 0x7fc00000, 0x7fc00000, 0x3800080},
3500{0x3800000, 0x76, 0x7fd9ba98, 0x7fc00000, 0x3800080},
3501{0x3800000, 0x76, 0x7fffffff, 0x7fc00000, 0x3800080},
3502{0x3800000, 0x76, 0x80000000, 0x80000000, 0x3800080},
3503{0x3800000, 0x76, 0x80000001, 0x0, 0x3800080},
3504{0x3800000, 0x76, 0x80000076, 0x0, 0x3800080},
3505{0x3800000, 0x76, 0x80002b94, 0x0, 0x3800080},
3506{0x3800000, 0x76, 0x80636d24, 0x0, 0x3800080},
3507{0x3800000, 0x76, 0x807fffff, 0x0, 0x3800080},
3508{0x3800000, 0x76, 0x80800000, 0x80800000, 0x3800080},
3509{0x3800000, 0x76, 0x80800002, 0x80800002, 0x3800080},
3510{0x3800000, 0x76, 0x81398437, 0x81398437, 0x3800080},
3511{0x3800000, 0x76, 0x8ba98d27, 0x8ba98d27, 0x3800080},
3512{0x3800000, 0x76, 0x8ba98d7a, 0x8ba98d7a, 0x3800080},
3513{0x3800000, 0x76, 0xf51f853a, 0xf51f853a, 0x3800080},
3514{0x3800000, 0x76, 0xff7ffff0, 0xff7ffff0, 0x3800080},
3515{0x3800000, 0x76, 0xff7fffff, 0xff7fffff, 0x3800080},
3516{0x3800000, 0x76, 0xff800000, 0xff800000, 0x3800080},
3517{0x3800000, 0x76, 0xff800001, 0x7fc00000, 0x3800081},
3518{0x3800000, 0x76, 0xff984a37, 0x7fc00000, 0x3800081},
3519{0x3800000, 0x76, 0xffbfffff, 0x7fc00000, 0x3800081},
3520{0x3800000, 0x76, 0xffc00000, 0x7fc00000, 0x3800080},
3521{0x3800000, 0x76, 0xffd9ba98, 0x7fc00000, 0x3800080},
3522{0x3800000, 0x76, 0xffffffff, 0x7fc00000, 0x3800080},
3523{0x3800000, 0x76, 0x4f3495cb, 0x4f3495cb, 0x3800080},
3524{0x3800000, 0x76, 0xe73a5134, 0xe73a5134, 0x3800080},
3525{0x3800000, 0x76, 0x7c994e9e, 0x7c994e9e, 0x3800080},
3526{0x3800000, 0x76, 0x6164bd6c, 0x6164bd6c, 0x3800080},
3527{0x3800000, 0x76, 0x9503366, 0x9503366, 0x3800080},
3528{0x3800000, 0x76, 0xbf5a97c9, 0xbf5a97c9, 0x3800080},
3529{0x3800000, 0x76, 0xe6ff1a14, 0xe6ff1a14, 0x3800080},
3530{0x3800000, 0x76, 0x77f31e2f, 0x77f31e2f, 0x3800080},
3531{0x3800000, 0x76, 0xaab4d7d8, 0xaab4d7d8, 0x3800080},
3532{0x3800000, 0x76, 0x966320b, 0x966320b, 0x3800080},
3533{0x3800000, 0x76, 0xb26bddee, 0xb26bddee, 0x3800080},
3534{0x3800000, 0x76, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800080},
3535{0x3800000, 0x76, 0x317285d3, 0x317285d3, 0x3800080},
3536{0x3800000, 0x76, 0x3c9623b1, 0x3c9623b1, 0x3800080},
3537{0x3800000, 0x76, 0x51fd2c7c, 0x51fd2c7c, 0x3800080},
3538{0x3800000, 0x76, 0x7b906a6c, 0x7b906a6c, 0x3800080},
3539{0x3800000, 0x2b94, 0x0, 0x0, 0x3800080},
3540{0x3800000, 0x2b94, 0x1, 0x0, 0x3800080},
3541{0x3800000, 0x2b94, 0x76, 0x0, 0x3800080},
3542{0x3800000, 0x2b94, 0x2b94, 0x0, 0x3800080},
3543{0x3800000, 0x2b94, 0x636d24, 0x0, 0x3800080},
3544{0x3800000, 0x2b94, 0x7fffff, 0x0, 0x3800080},
3545{0x3800000, 0x2b94, 0x800000, 0x800000, 0x3800080},
3546{0x3800000, 0x2b94, 0x800002, 0x800002, 0x3800080},
3547{0x3800000, 0x2b94, 0x1398437, 0x1398437, 0x3800080},
3548{0x3800000, 0x2b94, 0xba98d27, 0xba98d27, 0x3800080},
3549{0x3800000, 0x2b94, 0xba98d7a, 0xba98d7a, 0x3800080},
3550{0x3800000, 0x2b94, 0x751f853a, 0x751f853a, 0x3800080},
3551{0x3800000, 0x2b94, 0x7f7ffff0, 0x7f7ffff0, 0x3800080},
3552{0x3800000, 0x2b94, 0x7f7fffff, 0x7f7fffff, 0x3800080},
3553{0x3800000, 0x2b94, 0x7f800000, 0x7f800000, 0x3800080},
3554{0x3800000, 0x2b94, 0x7f800001, 0x7fc00000, 0x3800081},
3555{0x3800000, 0x2b94, 0x7f984a37, 0x7fc00000, 0x3800081},
3556{0x3800000, 0x2b94, 0x7fbfffff, 0x7fc00000, 0x3800081},
3557{0x3800000, 0x2b94, 0x7fc00000, 0x7fc00000, 0x3800080},
3558{0x3800000, 0x2b94, 0x7fd9ba98, 0x7fc00000, 0x3800080},
3559{0x3800000, 0x2b94, 0x7fffffff, 0x7fc00000, 0x3800080},
3560{0x3800000, 0x2b94, 0x80000000, 0x80000000, 0x3800080},
3561{0x3800000, 0x2b94, 0x80000001, 0x0, 0x3800080},
3562{0x3800000, 0x2b94, 0x80000076, 0x0, 0x3800080},
3563{0x3800000, 0x2b94, 0x80002b94, 0x0, 0x3800080},
3564{0x3800000, 0x2b94, 0x80636d24, 0x0, 0x3800080},
3565{0x3800000, 0x2b94, 0x807fffff, 0x0, 0x3800080},
3566{0x3800000, 0x2b94, 0x80800000, 0x80800000, 0x3800080},
3567{0x3800000, 0x2b94, 0x80800002, 0x80800002, 0x3800080},
3568{0x3800000, 0x2b94, 0x81398437, 0x81398437, 0x3800080},
3569{0x3800000, 0x2b94, 0x8ba98d27, 0x8ba98d27, 0x3800080},
3570{0x3800000, 0x2b94, 0x8ba98d7a, 0x8ba98d7a, 0x3800080},
3571{0x3800000, 0x2b94, 0xf51f853a, 0xf51f853a, 0x3800080},
3572{0x3800000, 0x2b94, 0xff7ffff0, 0xff7ffff0, 0x3800080},
3573{0x3800000, 0x2b94, 0xff7fffff, 0xff7fffff, 0x3800080},
3574{0x3800000, 0x2b94, 0xff800000, 0xff800000, 0x3800080},
3575{0x3800000, 0x2b94, 0xff800001, 0x7fc00000, 0x3800081},
3576{0x3800000, 0x2b94, 0xff984a37, 0x7fc00000, 0x3800081},
3577{0x3800000, 0x2b94, 0xffbfffff, 0x7fc00000, 0x3800081},
3578{0x3800000, 0x2b94, 0xffc00000, 0x7fc00000, 0x3800080},
3579{0x3800000, 0x2b94, 0xffd9ba98, 0x7fc00000, 0x3800080},
3580{0x3800000, 0x2b94, 0xffffffff, 0x7fc00000, 0x3800080},
3581{0x3800000, 0x2b94, 0x4f3495cb, 0x4f3495cb, 0x3800080},
3582{0x3800000, 0x2b94, 0xe73a5134, 0xe73a5134, 0x3800080},
3583{0x3800000, 0x2b94, 0x7c994e9e, 0x7c994e9e, 0x3800080},
3584{0x3800000, 0x2b94, 0x6164bd6c, 0x6164bd6c, 0x3800080},
3585{0x3800000, 0x2b94, 0x9503366, 0x9503366, 0x3800080},
3586{0x3800000, 0x2b94, 0xbf5a97c9, 0xbf5a97c9, 0x3800080},
3587{0x3800000, 0x2b94, 0xe6ff1a14, 0xe6ff1a14, 0x3800080},
3588{0x3800000, 0x2b94, 0x77f31e2f, 0x77f31e2f, 0x3800080},
3589{0x3800000, 0x2b94, 0xaab4d7d8, 0xaab4d7d8, 0x3800080},
3590{0x3800000, 0x2b94, 0x966320b, 0x966320b, 0x3800080},
3591{0x3800000, 0x2b94, 0xb26bddee, 0xb26bddee, 0x3800080},
3592{0x3800000, 0x2b94, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800080},
3593{0x3800000, 0x2b94, 0x317285d3, 0x317285d3, 0x3800080},
3594{0x3800000, 0x2b94, 0x3c9623b1, 0x3c9623b1, 0x3800080},
3595{0x3800000, 0x2b94, 0x51fd2c7c, 0x51fd2c7c, 0x3800080},
3596{0x3800000, 0x2b94, 0x7b906a6c, 0x7b906a6c, 0x3800080},
3597{0x3800000, 0x636d24, 0x0, 0x0, 0x3800080},
3598{0x3800000, 0x636d24, 0x1, 0x0, 0x3800080},
3599{0x3800000, 0x636d24, 0x76, 0x0, 0x3800080},
3600{0x3800000, 0x636d24, 0x2b94, 0x0, 0x3800080},
3601{0x3800000, 0x636d24, 0x636d24, 0x0, 0x3800080},
3602{0x3800000, 0x636d24, 0x7fffff, 0x0, 0x3800080},
3603{0x3800000, 0x636d24, 0x800000, 0x800000, 0x3800080},
3604{0x3800000, 0x636d24, 0x800002, 0x800002, 0x3800080},
3605{0x3800000, 0x636d24, 0x1398437, 0x1398437, 0x3800080},
3606{0x3800000, 0x636d24, 0xba98d27, 0xba98d27, 0x3800080},
3607{0x3800000, 0x636d24, 0xba98d7a, 0xba98d7a, 0x3800080},
3608{0x3800000, 0x636d24, 0x751f853a, 0x751f853a, 0x3800080},
3609{0x3800000, 0x636d24, 0x7f7ffff0, 0x7f7ffff0, 0x3800080},
3610{0x3800000, 0x636d24, 0x7f7fffff, 0x7f7fffff, 0x3800080},
3611{0x3800000, 0x636d24, 0x7f800000, 0x7f800000, 0x3800080},
3612{0x3800000, 0x636d24, 0x7f800001, 0x7fc00000, 0x3800081},
3613{0x3800000, 0x636d24, 0x7f984a37, 0x7fc00000, 0x3800081},
3614{0x3800000, 0x636d24, 0x7fbfffff, 0x7fc00000, 0x3800081},
3615{0x3800000, 0x636d24, 0x7fc00000, 0x7fc00000, 0x3800080},
3616{0x3800000, 0x636d24, 0x7fd9ba98, 0x7fc00000, 0x3800080},
3617{0x3800000, 0x636d24, 0x7fffffff, 0x7fc00000, 0x3800080},
3618{0x3800000, 0x636d24, 0x80000000, 0x80000000, 0x3800080},
3619{0x3800000, 0x636d24, 0x80000001, 0x0, 0x3800080},
3620{0x3800000, 0x636d24, 0x80000076, 0x0, 0x3800080},
3621{0x3800000, 0x636d24, 0x80002b94, 0x0, 0x3800080},
3622{0x3800000, 0x636d24, 0x80636d24, 0x0, 0x3800080},
3623{0x3800000, 0x636d24, 0x807fffff, 0x0, 0x3800080},
3624{0x3800000, 0x636d24, 0x80800000, 0x80800000, 0x3800080},
3625{0x3800000, 0x636d24, 0x80800002, 0x80800002, 0x3800080},
3626{0x3800000, 0x636d24, 0x81398437, 0x81398437, 0x3800080},
3627{0x3800000, 0x636d24, 0x8ba98d27, 0x8ba98d27, 0x3800080},
3628{0x3800000, 0x636d24, 0x8ba98d7a, 0x8ba98d7a, 0x3800080},
3629{0x3800000, 0x636d24, 0xf51f853a, 0xf51f853a, 0x3800080},
3630{0x3800000, 0x636d24, 0xff7ffff0, 0xff7ffff0, 0x3800080},
3631{0x3800000, 0x636d24, 0xff7fffff, 0xff7fffff, 0x3800080},
3632{0x3800000, 0x636d24, 0xff800000, 0xff800000, 0x3800080},
3633{0x3800000, 0x636d24, 0xff800001, 0x7fc00000, 0x3800081},
3634{0x3800000, 0x636d24, 0xff984a37, 0x7fc00000, 0x3800081},
3635{0x3800000, 0x636d24, 0xffbfffff, 0x7fc00000, 0x3800081},
3636{0x3800000, 0x636d24, 0xffc00000, 0x7fc00000, 0x3800080},
3637{0x3800000, 0x636d24, 0xffd9ba98, 0x7fc00000, 0x3800080},
3638{0x3800000, 0x636d24, 0xffffffff, 0x7fc00000, 0x3800080},
3639{0x3800000, 0x636d24, 0x4f3495cb, 0x4f3495cb, 0x3800080},
3640{0x3800000, 0x636d24, 0xe73a5134, 0xe73a5134, 0x3800080},
3641{0x3800000, 0x636d24, 0x7c994e9e, 0x7c994e9e, 0x3800080},
3642{0x3800000, 0x636d24, 0x6164bd6c, 0x6164bd6c, 0x3800080},
3643{0x3800000, 0x636d24, 0x9503366, 0x9503366, 0x3800080},
3644{0x3800000, 0x636d24, 0xbf5a97c9, 0xbf5a97c9, 0x3800080},
3645{0x3800000, 0x636d24, 0xe6ff1a14, 0xe6ff1a14, 0x3800080},
3646{0x3800000, 0x636d24, 0x77f31e2f, 0x77f31e2f, 0x3800080},
3647{0x3800000, 0x636d24, 0xaab4d7d8, 0xaab4d7d8, 0x3800080},
3648{0x3800000, 0x636d24, 0x966320b, 0x966320b, 0x3800080},
3649{0x3800000, 0x636d24, 0xb26bddee, 0xb26bddee, 0x3800080},
3650{0x3800000, 0x636d24, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800080},
3651{0x3800000, 0x636d24, 0x317285d3, 0x317285d3, 0x3800080},
3652{0x3800000, 0x636d24, 0x3c9623b1, 0x3c9623b1, 0x3800080},
3653{0x3800000, 0x636d24, 0x51fd2c7c, 0x51fd2c7c, 0x3800080},
3654{0x3800000, 0x636d24, 0x7b906a6c, 0x7b906a6c, 0x3800080},
3655{0x3800000, 0x7fffff, 0x0, 0x0, 0x3800080},
3656{0x3800000, 0x7fffff, 0x1, 0x0, 0x3800080},
3657{0x3800000, 0x7fffff, 0x76, 0x0, 0x3800080},
3658{0x3800000, 0x7fffff, 0x2b94, 0x0, 0x3800080},
3659{0x3800000, 0x7fffff, 0x636d24, 0x0, 0x3800080},
3660{0x3800000, 0x7fffff, 0x7fffff, 0x0, 0x3800080},
3661{0x3800000, 0x7fffff, 0x800000, 0x800000, 0x3800080},
3662{0x3800000, 0x7fffff, 0x800002, 0x800002, 0x3800080},
3663{0x3800000, 0x7fffff, 0x1398437, 0x1398437, 0x3800080},
3664{0x3800000, 0x7fffff, 0xba98d27, 0xba98d27, 0x3800080},
3665{0x3800000, 0x7fffff, 0xba98d7a, 0xba98d7a, 0x3800080},
3666{0x3800000, 0x7fffff, 0x751f853a, 0x751f853a, 0x3800080},
3667{0x3800000, 0x7fffff, 0x7f7ffff0, 0x7f7ffff0, 0x3800080},
3668{0x3800000, 0x7fffff, 0x7f7fffff, 0x7f7fffff, 0x3800080},
3669{0x3800000, 0x7fffff, 0x7f800000, 0x7f800000, 0x3800080},
3670{0x3800000, 0x7fffff, 0x7f800001, 0x7fc00000, 0x3800081},
3671{0x3800000, 0x7fffff, 0x7f984a37, 0x7fc00000, 0x3800081},
3672{0x3800000, 0x7fffff, 0x7fbfffff, 0x7fc00000, 0x3800081},
3673{0x3800000, 0x7fffff, 0x7fc00000, 0x7fc00000, 0x3800080},
3674{0x3800000, 0x7fffff, 0x7fd9ba98, 0x7fc00000, 0x3800080},
3675{0x3800000, 0x7fffff, 0x7fffffff, 0x7fc00000, 0x3800080},
3676{0x3800000, 0x7fffff, 0x80000000, 0x80000000, 0x3800080},
3677{0x3800000, 0x7fffff, 0x80000001, 0x0, 0x3800080},
3678{0x3800000, 0x7fffff, 0x80000076, 0x0, 0x3800080},
3679{0x3800000, 0x7fffff, 0x80002b94, 0x0, 0x3800080},
3680{0x3800000, 0x7fffff, 0x80636d24, 0x0, 0x3800080},
3681{0x3800000, 0x7fffff, 0x807fffff, 0x0, 0x3800080},
3682{0x3800000, 0x7fffff, 0x80800000, 0x80800000, 0x3800080},
3683{0x3800000, 0x7fffff, 0x80800002, 0x80800002, 0x3800080},
3684{0x3800000, 0x7fffff, 0x81398437, 0x81398437, 0x3800080},
3685{0x3800000, 0x7fffff, 0x8ba98d27, 0x8ba98d27, 0x3800080},
3686{0x3800000, 0x7fffff, 0x8ba98d7a, 0x8ba98d7a, 0x3800080},
3687{0x3800000, 0x7fffff, 0xf51f853a, 0xf51f853a, 0x3800080},
3688{0x3800000, 0x7fffff, 0xff7ffff0, 0xff7ffff0, 0x3800080},
3689{0x3800000, 0x7fffff, 0xff7fffff, 0xff7fffff, 0x3800080},
3690{0x3800000, 0x7fffff, 0xff800000, 0xff800000, 0x3800080},
3691{0x3800000, 0x7fffff, 0xff800001, 0x7fc00000, 0x3800081},
3692{0x3800000, 0x7fffff, 0xff984a37, 0x7fc00000, 0x3800081},
3693{0x3800000, 0x7fffff, 0xffbfffff, 0x7fc00000, 0x3800081},
3694{0x3800000, 0x7fffff, 0xffc00000, 0x7fc00000, 0x3800080},
3695{0x3800000, 0x7fffff, 0xffd9ba98, 0x7fc00000, 0x3800080},
3696{0x3800000, 0x7fffff, 0xffffffff, 0x7fc00000, 0x3800080},
3697{0x3800000, 0x7fffff, 0x4f3495cb, 0x4f3495cb, 0x3800080},
3698{0x3800000, 0x7fffff, 0xe73a5134, 0xe73a5134, 0x3800080},
3699{0x3800000, 0x7fffff, 0x7c994e9e, 0x7c994e9e, 0x3800080},
3700{0x3800000, 0x7fffff, 0x6164bd6c, 0x6164bd6c, 0x3800080},
3701{0x3800000, 0x7fffff, 0x9503366, 0x9503366, 0x3800080},
3702{0x3800000, 0x7fffff, 0xbf5a97c9, 0xbf5a97c9, 0x3800080},
3703{0x3800000, 0x7fffff, 0xe6ff1a14, 0xe6ff1a14, 0x3800080},
3704{0x3800000, 0x7fffff, 0x77f31e2f, 0x77f31e2f, 0x3800080},
3705{0x3800000, 0x7fffff, 0xaab4d7d8, 0xaab4d7d8, 0x3800080},
3706{0x3800000, 0x7fffff, 0x966320b, 0x966320b, 0x3800080},
3707{0x3800000, 0x7fffff, 0xb26bddee, 0xb26bddee, 0x3800080},
3708{0x3800000, 0x7fffff, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800080},
3709{0x3800000, 0x7fffff, 0x317285d3, 0x317285d3, 0x3800080},
3710{0x3800000, 0x7fffff, 0x3c9623b1, 0x3c9623b1, 0x3800080},
3711{0x3800000, 0x7fffff, 0x51fd2c7c, 0x51fd2c7c, 0x3800080},
3712{0x3800000, 0x7fffff, 0x7b906a6c, 0x7b906a6c, 0x3800080},
3713{0x3800000, 0x800000, 0x0, 0x800000, 0x3800000},
3714{0x3800000, 0x800000, 0x1, 0x800000, 0x3800080},
3715{0x3800000, 0x800000, 0x76, 0x800000, 0x3800080},
3716{0x3800000, 0x800000, 0x2b94, 0x800000, 0x3800080},
3717{0x3800000, 0x800000, 0x636d24, 0x800000, 0x3800080},
3718{0x3800000, 0x800000, 0x7fffff, 0x800000, 0x3800080},
3719{0x3800000, 0x800000, 0x800000, 0x1000000, 0x3800000},
3720{0x3800000, 0x800000, 0x800002, 0x1000001, 0x3800000},
3721{0x3800000, 0x800000, 0x1398437, 0x1798437, 0x3800000},
3722{0x3800000, 0x800000, 0xba98d27, 0xba98d29, 0x3800000},
3723{0x3800000, 0x800000, 0xba98d7a, 0xba98d7c, 0x3800000},
3724{0x3800000, 0x800000, 0x751f853a, 0x751f853a, 0x3800010},
3725{0x3800000, 0x800000, 0x7f7ffff0, 0x7f7ffff0, 0x3800010},
3726{0x3800000, 0x800000, 0x7f7fffff, 0x7f7fffff, 0x3800010},
3727{0x3800000, 0x800000, 0x7f800000, 0x7f800000, 0x3800000},
3728{0x3800000, 0x800000, 0x7f800001, 0x7fc00000, 0x3800001},
3729{0x3800000, 0x800000, 0x7f984a37, 0x7fc00000, 0x3800001},
3730{0x3800000, 0x800000, 0x7fbfffff, 0x7fc00000, 0x3800001},
3731{0x3800000, 0x800000, 0x7fc00000, 0x7fc00000, 0x3800000},
3732{0x3800000, 0x800000, 0x7fd9ba98, 0x7fc00000, 0x3800000},
3733{0x3800000, 0x800000, 0x7fffffff, 0x7fc00000, 0x3800000},
3734{0x3800000, 0x800000, 0x80000000, 0x800000, 0x3800000},
3735{0x3800000, 0x800000, 0x80000001, 0x800000, 0x3800080},
3736{0x3800000, 0x800000, 0x80000076, 0x800000, 0x3800080},
3737{0x3800000, 0x800000, 0x80002b94, 0x800000, 0x3800080},
3738{0x3800000, 0x800000, 0x80636d24, 0x800000, 0x3800080},
3739{0x3800000, 0x800000, 0x807fffff, 0x800000, 0x3800080},
3740{0x3800000, 0x800000, 0x80800000, 0x80000000, 0x3800000},
3741{0x3800000, 0x800000, 0x80800002, 0x0, 0x3800008},
3742{0x3800000, 0x800000, 0x81398437, 0x80f3086e, 0x3800000},
3743{0x3800000, 0x800000, 0x8ba98d27, 0x8ba98d25, 0x3800000},
3744{0x3800000, 0x800000, 0x8ba98d7a, 0x8ba98d78, 0x3800000},
3745{0x3800000, 0x800000, 0xf51f853a, 0xf51f853a, 0x3800010},
3746{0x3800000, 0x800000, 0xff7ffff0, 0xff7ffff0, 0x3800010},
3747{0x3800000, 0x800000, 0xff7fffff, 0xff7fffff, 0x3800010},
3748{0x3800000, 0x800000, 0xff800000, 0xff800000, 0x3800000},
3749{0x3800000, 0x800000, 0xff800001, 0x7fc00000, 0x3800001},
3750{0x3800000, 0x800000, 0xff984a37, 0x7fc00000, 0x3800001},
3751{0x3800000, 0x800000, 0xffbfffff, 0x7fc00000, 0x3800001},
3752{0x3800000, 0x800000, 0xffc00000, 0x7fc00000, 0x3800000},
3753{0x3800000, 0x800000, 0xffd9ba98, 0x7fc00000, 0x3800000},
3754{0x3800000, 0x800000, 0xffffffff, 0x7fc00000, 0x3800000},
3755{0x3800000, 0x800000, 0x4f3495cb, 0x4f3495cb, 0x3800010},
3756{0x3800000, 0x800000, 0xe73a5134, 0xe73a5134, 0x3800010},
3757{0x3800000, 0x800000, 0x7c994e9e, 0x7c994e9e, 0x3800010},
3758{0x3800000, 0x800000, 0x6164bd6c, 0x6164bd6c, 0x3800010},
3759{0x3800000, 0x800000, 0x9503366, 0x95033a6, 0x3800000},
3760{0x3800000, 0x800000, 0xbf5a97c9, 0xbf5a97c9, 0x3800010},
3761{0x3800000, 0x800000, 0xe6ff1a14, 0xe6ff1a14, 0x3800010},
3762{0x3800000, 0x800000, 0x77f31e2f, 0x77f31e2f, 0x3800010},
3763{0x3800000, 0x800000, 0xaab4d7d8, 0xaab4d7d8, 0x3800010},
3764{0x3800000, 0x800000, 0x966320b, 0x966324b, 0x3800000},
3765{0x3800000, 0x800000, 0xb26bddee, 0xb26bddee, 0x3800010},
3766{0x3800000, 0x800000, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800010},
3767{0x3800000, 0x800000, 0x317285d3, 0x317285d3, 0x3800010},
3768{0x3800000, 0x800000, 0x3c9623b1, 0x3c9623b1, 0x3800010},
3769{0x3800000, 0x800000, 0x51fd2c7c, 0x51fd2c7c, 0x3800010},
3770{0x3800000, 0x800000, 0x7b906a6c, 0x7b906a6c, 0x3800010},
3771{0x3800000, 0x800002, 0x0, 0x800002, 0x3800000},
3772{0x3800000, 0x800002, 0x1, 0x800002, 0x3800080},
3773{0x3800000, 0x800002, 0x76, 0x800002, 0x3800080},
3774{0x3800000, 0x800002, 0x2b94, 0x800002, 0x3800080},
3775{0x3800000, 0x800002, 0x636d24, 0x800002, 0x3800080},
3776{0x3800000, 0x800002, 0x7fffff, 0x800002, 0x3800080},
3777{0x3800000, 0x800002, 0x800000, 0x1000001, 0x3800000},
3778{0x3800000, 0x800002, 0x800002, 0x1000002, 0x3800000},
3779{0x3800000, 0x800002, 0x1398437, 0x1798438, 0x3800000},
3780{0x3800000, 0x800002, 0xba98d27, 0xba98d29, 0x3800010},
3781{0x3800000, 0x800002, 0xba98d7a, 0xba98d7c, 0x3800010},
3782{0x3800000, 0x800002, 0x751f853a, 0x751f853a, 0x3800010},
3783{0x3800000, 0x800002, 0x7f7ffff0, 0x7f7ffff0, 0x3800010},
3784{0x3800000, 0x800002, 0x7f7fffff, 0x7f7fffff, 0x3800010},
3785{0x3800000, 0x800002, 0x7f800000, 0x7f800000, 0x3800000},
3786{0x3800000, 0x800002, 0x7f800001, 0x7fc00000, 0x3800001},
3787{0x3800000, 0x800002, 0x7f984a37, 0x7fc00000, 0x3800001},
3788{0x3800000, 0x800002, 0x7fbfffff, 0x7fc00000, 0x3800001},
3789{0x3800000, 0x800002, 0x7fc00000, 0x7fc00000, 0x3800000},
3790{0x3800000, 0x800002, 0x7fd9ba98, 0x7fc00000, 0x3800000},
3791{0x3800000, 0x800002, 0x7fffffff, 0x7fc00000, 0x3800000},
3792{0x3800000, 0x800002, 0x80000000, 0x800002, 0x3800000},
3793{0x3800000, 0x800002, 0x80000001, 0x800002, 0x3800080},
3794{0x3800000, 0x800002, 0x80000076, 0x800002, 0x3800080},
3795{0x3800000, 0x800002, 0x80002b94, 0x800002, 0x3800080},
3796{0x3800000, 0x800002, 0x80636d24, 0x800002, 0x3800080},
3797{0x3800000, 0x800002, 0x807fffff, 0x800002, 0x3800080},
3798{0x3800000, 0x800002, 0x80800000, 0x0, 0x3800008},
3799{0x3800000, 0x800002, 0x80800002, 0x80000000, 0x3800000},
3800{0x3800000, 0x800002, 0x81398437, 0x80f3086c, 0x3800000},
3801{0x3800000, 0x800002, 0x8ba98d27, 0x8ba98d25, 0x3800010},
3802{0x3800000, 0x800002, 0x8ba98d7a, 0x8ba98d78, 0x3800010},
3803{0x3800000, 0x800002, 0xf51f853a, 0xf51f853a, 0x3800010},
3804{0x3800000, 0x800002, 0xff7ffff0, 0xff7ffff0, 0x3800010},
3805{0x3800000, 0x800002, 0xff7fffff, 0xff7fffff, 0x3800010},
3806{0x3800000, 0x800002, 0xff800000, 0xff800000, 0x3800000},
3807{0x3800000, 0x800002, 0xff800001, 0x7fc00000, 0x3800001},
3808{0x3800000, 0x800002, 0xff984a37, 0x7fc00000, 0x3800001},
3809{0x3800000, 0x800002, 0xffbfffff, 0x7fc00000, 0x3800001},
3810{0x3800000, 0x800002, 0xffc00000, 0x7fc00000, 0x3800000},
3811{0x3800000, 0x800002, 0xffd9ba98, 0x7fc00000, 0x3800000},
3812{0x3800000, 0x800002, 0xffffffff, 0x7fc00000, 0x3800000},
3813{0x3800000, 0x800002, 0x4f3495cb, 0x4f3495cb, 0x3800010},
3814{0x3800000, 0x800002, 0xe73a5134, 0xe73a5134, 0x3800010},
3815{0x3800000, 0x800002, 0x7c994e9e, 0x7c994e9e, 0x3800010},
3816{0x3800000, 0x800002, 0x6164bd6c, 0x6164bd6c, 0x3800010},
3817{0x3800000, 0x800002, 0x9503366, 0x95033a6, 0x3800010},
3818{0x3800000, 0x800002, 0xbf5a97c9, 0xbf5a97c9, 0x3800010},
3819{0x3800000, 0x800002, 0xe6ff1a14, 0xe6ff1a14, 0x3800010},
3820{0x3800000, 0x800002, 0x77f31e2f, 0x77f31e2f, 0x3800010},
3821{0x3800000, 0x800002, 0xaab4d7d8, 0xaab4d7d8, 0x3800010},
3822{0x3800000, 0x800002, 0x966320b, 0x966324b, 0x3800010},
3823{0x3800000, 0x800002, 0xb26bddee, 0xb26bddee, 0x3800010},
3824{0x3800000, 0x800002, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800010},
3825{0x3800000, 0x800002, 0x317285d3, 0x317285d3, 0x3800010},
3826{0x3800000, 0x800002, 0x3c9623b1, 0x3c9623b1, 0x3800010},
3827{0x3800000, 0x800002, 0x51fd2c7c, 0x51fd2c7c, 0x3800010},
3828{0x3800000, 0x800002, 0x7b906a6c, 0x7b906a6c, 0x3800010},
3829{0x3800000, 0x1398437, 0x0, 0x1398437, 0x3800000},
3830{0x3800000, 0x1398437, 0x1, 0x1398437, 0x3800080},
3831{0x3800000, 0x1398437, 0x76, 0x1398437, 0x3800080},
3832{0x3800000, 0x1398437, 0x2b94, 0x1398437, 0x3800080},
3833{0x3800000, 0x1398437, 0x636d24, 0x1398437, 0x3800080},
3834{0x3800000, 0x1398437, 0x7fffff, 0x1398437, 0x3800080},
3835{0x3800000, 0x1398437, 0x800000, 0x1798437, 0x3800000},
3836{0x3800000, 0x1398437, 0x800002, 0x1798438, 0x3800000},
3837{0x3800000, 0x1398437, 0x1398437, 0x1b98437, 0x3800000},
3838{0x3800000, 0x1398437, 0xba98d27, 0xba98d2c, 0x3800010},
3839{0x3800000, 0x1398437, 0xba98d7a, 0xba98d7f, 0x3800010},
3840{0x3800000, 0x1398437, 0x751f853a, 0x751f853a, 0x3800010},
3841{0x3800000, 0x1398437, 0x7f7ffff0, 0x7f7ffff0, 0x3800010},
3842{0x3800000, 0x1398437, 0x7f7fffff, 0x7f7fffff, 0x3800010},
3843{0x3800000, 0x1398437, 0x7f800000, 0x7f800000, 0x3800000},
3844{0x3800000, 0x1398437, 0x7f800001, 0x7fc00000, 0x3800001},
3845{0x3800000, 0x1398437, 0x7f984a37, 0x7fc00000, 0x3800001},
3846{0x3800000, 0x1398437, 0x7fbfffff, 0x7fc00000, 0x3800001},
3847{0x3800000, 0x1398437, 0x7fc00000, 0x7fc00000, 0x3800000},
3848{0x3800000, 0x1398437, 0x7fd9ba98, 0x7fc00000, 0x3800000},
3849{0x3800000, 0x1398437, 0x7fffffff, 0x7fc00000, 0x3800000},
3850{0x3800000, 0x1398437, 0x80000000, 0x1398437, 0x3800000},
3851{0x3800000, 0x1398437, 0x80000001, 0x1398437, 0x3800080},
3852{0x3800000, 0x1398437, 0x80000076, 0x1398437, 0x3800080},
3853{0x3800000, 0x1398437, 0x80002b94, 0x1398437, 0x3800080},
3854{0x3800000, 0x1398437, 0x80636d24, 0x1398437, 0x3800080},
3855{0x3800000, 0x1398437, 0x807fffff, 0x1398437, 0x3800080},
3856{0x3800000, 0x1398437, 0x80800000, 0xf3086e, 0x3800000},
3857{0x3800000, 0x1398437, 0x80800002, 0xf3086c, 0x3800000},
3858{0x3800000, 0x1398437, 0x81398437, 0x80000000, 0x3800000},
3859{0x3800000, 0x1398437, 0x8ba98d27, 0x8ba98d22, 0x3800010},
3860{0x3800000, 0x1398437, 0x8ba98d7a, 0x8ba98d75, 0x3800010},
3861{0x3800000, 0x1398437, 0xf51f853a, 0xf51f853a, 0x3800010},
3862{0x3800000, 0x1398437, 0xff7ffff0, 0xff7ffff0, 0x3800010},
3863{0x3800000, 0x1398437, 0xff7fffff, 0xff7fffff, 0x3800010},
3864{0x3800000, 0x1398437, 0xff800000, 0xff800000, 0x3800000},
3865{0x3800000, 0x1398437, 0xff800001, 0x7fc00000, 0x3800001},
3866{0x3800000, 0x1398437, 0xff984a37, 0x7fc00000, 0x3800001},
3867{0x3800000, 0x1398437, 0xffbfffff, 0x7fc00000, 0x3800001},
3868{0x3800000, 0x1398437, 0xffc00000, 0x7fc00000, 0x3800000},
3869{0x3800000, 0x1398437, 0xffd9ba98, 0x7fc00000, 0x3800000},
3870{0x3800000, 0x1398437, 0xffffffff, 0x7fc00000, 0x3800000},
3871{0x3800000, 0x1398437, 0x4f3495cb, 0x4f3495cb, 0x3800010},
3872{0x3800000, 0x1398437, 0xe73a5134, 0xe73a5134, 0x3800010},
3873{0x3800000, 0x1398437, 0x7c994e9e, 0x7c994e9e, 0x3800010},
3874{0x3800000, 0x1398437, 0x6164bd6c, 0x6164bd6c, 0x3800010},
3875{0x3800000, 0x1398437, 0x9503366, 0x950341f, 0x3800010},
3876{0x3800000, 0x1398437, 0xbf5a97c9, 0xbf5a97c9, 0x3800010},
3877{0x3800000, 0x1398437, 0xe6ff1a14, 0xe6ff1a14, 0x3800010},
3878{0x3800000, 0x1398437, 0x77f31e2f, 0x77f31e2f, 0x3800010},
3879{0x3800000, 0x1398437, 0xaab4d7d8, 0xaab4d7d8, 0x3800010},
3880{0x3800000, 0x1398437, 0x966320b, 0x96632c4, 0x3800010},
3881{0x3800000, 0x1398437, 0xb26bddee, 0xb26bddee, 0x3800010},
3882{0x3800000, 0x1398437, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800010},
3883{0x3800000, 0x1398437, 0x317285d3, 0x317285d3, 0x3800010},
3884{0x3800000, 0x1398437, 0x3c9623b1, 0x3c9623b1, 0x3800010},
3885{0x3800000, 0x1398437, 0x51fd2c7c, 0x51fd2c7c, 0x3800010},
3886{0x3800000, 0x1398437, 0x7b906a6c, 0x7b906a6c, 0x3800010},
3887{0x3800000, 0xba98d27, 0x0, 0xba98d27, 0x3800000},
3888{0x3800000, 0xba98d27, 0x1, 0xba98d27, 0x3800080},
3889{0x3800000, 0xba98d27, 0x76, 0xba98d27, 0x3800080},
3890{0x3800000, 0xba98d27, 0x2b94, 0xba98d27, 0x3800080},
3891{0x3800000, 0xba98d27, 0x636d24, 0xba98d27, 0x3800080},
3892{0x3800000, 0xba98d27, 0x7fffff, 0xba98d27, 0x3800080},
3893{0x3800000, 0xba98d27, 0x800000, 0xba98d29, 0x3800000},
3894{0x3800000, 0xba98d27, 0x800002, 0xba98d29, 0x3800010},
3895{0x3800000, 0xba98d27, 0x1398437, 0xba98d2c, 0x3800010},
3896{0x3800000, 0xba98d27, 0xba98d27, 0xc298d27, 0x3800000},
3897{0x3800000, 0xba98d27, 0xba98d7a, 0xc298d50, 0x3800010},
3898{0x3800000, 0xba98d27, 0x751f853a, 0x751f853a, 0x3800010},
3899{0x3800000, 0xba98d27, 0x7f7ffff0, 0x7f7ffff0, 0x3800010},
3900{0x3800000, 0xba98d27, 0x7f7fffff, 0x7f7fffff, 0x3800010},
3901{0x3800000, 0xba98d27, 0x7f800000, 0x7f800000, 0x3800000},
3902{0x3800000, 0xba98d27, 0x7f800001, 0x7fc00000, 0x3800001},
3903{0x3800000, 0xba98d27, 0x7f984a37, 0x7fc00000, 0x3800001},
3904{0x3800000, 0xba98d27, 0x7fbfffff, 0x7fc00000, 0x3800001},
3905{0x3800000, 0xba98d27, 0x7fc00000, 0x7fc00000, 0x3800000},
3906{0x3800000, 0xba98d27, 0x7fd9ba98, 0x7fc00000, 0x3800000},
3907{0x3800000, 0xba98d27, 0x7fffffff, 0x7fc00000, 0x3800000},
3908{0x3800000, 0xba98d27, 0x80000000, 0xba98d27, 0x3800000},
3909{0x3800000, 0xba98d27, 0x80000001, 0xba98d27, 0x3800080},
3910{0x3800000, 0xba98d27, 0x80000076, 0xba98d27, 0x3800080},
3911{0x3800000, 0xba98d27, 0x80002b94, 0xba98d27, 0x3800080},
3912{0x3800000, 0xba98d27, 0x80636d24, 0xba98d27, 0x3800080},
3913{0x3800000, 0xba98d27, 0x807fffff, 0xba98d27, 0x3800080},
3914{0x3800000, 0xba98d27, 0x80800000, 0xba98d25, 0x3800000},
3915{0x3800000, 0xba98d27, 0x80800002, 0xba98d24, 0x3800010},
3916{0x3800000, 0xba98d27, 0x81398437, 0xba98d21, 0x3800010},
3917{0x3800000, 0xba98d27, 0x8ba98d27, 0x80000000, 0x3800000},
3918{0x3800000, 0xba98d27, 0x8ba98d7a, 0x83260000, 0x3800000},
3919{0x3800000, 0xba98d27, 0xf51f853a, 0xf51f853a, 0x3800010},
3920{0x3800000, 0xba98d27, 0xff7ffff0, 0xff7ffff0, 0x3800010},
3921{0x3800000, 0xba98d27, 0xff7fffff, 0xff7fffff, 0x3800010},
3922{0x3800000, 0xba98d27, 0xff800000, 0xff800000, 0x3800000},
3923{0x3800000, 0xba98d27, 0xff800001, 0x7fc00000, 0x3800001},
3924{0x3800000, 0xba98d27, 0xff984a37, 0x7fc00000, 0x3800001},
3925{0x3800000, 0xba98d27, 0xffbfffff, 0x7fc00000, 0x3800001},
3926{0x3800000, 0xba98d27, 0xffc00000, 0x7fc00000, 0x3800000},
3927{0x3800000, 0xba98d27, 0xffd9ba98, 0x7fc00000, 0x3800000},
3928{0x3800000, 0xba98d27, 0xffffffff, 0x7fc00000, 0x3800000},
3929{0x3800000, 0xba98d27, 0x4f3495cb, 0x4f3495cb, 0x3800010},
3930{0x3800000, 0xba98d27, 0xe73a5134, 0xe73a5134, 0x3800010},
3931{0x3800000, 0xba98d27, 0x7c994e9e, 0x7c994e9e, 0x3800010},
3932{0x3800000, 0xba98d27, 0x6164bd6c, 0x6164bd6c, 0x3800010},
3933{0x3800000, 0xba98d27, 0x9503366, 0xbb00ec2, 0x3800010},
3934{0x3800000, 0xba98d27, 0xbf5a97c9, 0xbf5a97c9, 0x3800010},
3935{0x3800000, 0xba98d27, 0xe6ff1a14, 0xe6ff1a14, 0x3800010},
3936{0x3800000, 0xba98d27, 0x77f31e2f, 0x77f31e2f, 0x3800010},
3937{0x3800000, 0xba98d27, 0xaab4d7d8, 0xaab4d7d8, 0x3800010},
3938{0x3800000, 0xba98d27, 0x966320b, 0xbb0beb7, 0x3800010},
3939{0x3800000, 0xba98d27, 0xb26bddee, 0xb26bddee, 0x3800010},
3940{0x3800000, 0xba98d27, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800010},
3941{0x3800000, 0xba98d27, 0x317285d3, 0x317285d3, 0x3800010},
3942{0x3800000, 0xba98d27, 0x3c9623b1, 0x3c9623b1, 0x3800010},
3943{0x3800000, 0xba98d27, 0x51fd2c7c, 0x51fd2c7c, 0x3800010},
3944{0x3800000, 0xba98d27, 0x7b906a6c, 0x7b906a6c, 0x3800010},
3945{0x3800000, 0xba98d7a, 0x0, 0xba98d7a, 0x3800000},
3946{0x3800000, 0xba98d7a, 0x1, 0xba98d7a, 0x3800080},
3947{0x3800000, 0xba98d7a, 0x76, 0xba98d7a, 0x3800080},
3948{0x3800000, 0xba98d7a, 0x2b94, 0xba98d7a, 0x3800080},
3949{0x3800000, 0xba98d7a, 0x636d24, 0xba98d7a, 0x3800080},
3950{0x3800000, 0xba98d7a, 0x7fffff, 0xba98d7a, 0x3800080},
3951{0x3800000, 0xba98d7a, 0x800000, 0xba98d7c, 0x3800000},
3952{0x3800000, 0xba98d7a, 0x800002, 0xba98d7c, 0x3800010},
3953{0x3800000, 0xba98d7a, 0x1398437, 0xba98d7f, 0x3800010},
3954{0x3800000, 0xba98d7a, 0xba98d27, 0xc298d50, 0x3800010},
3955{0x3800000, 0xba98d7a, 0xba98d7a, 0xc298d7a, 0x3800000},
3956{0x3800000, 0xba98d7a, 0x751f853a, 0x751f853a, 0x3800010},
3957{0x3800000, 0xba98d7a, 0x7f7ffff0, 0x7f7ffff0, 0x3800010},
3958{0x3800000, 0xba98d7a, 0x7f7fffff, 0x7f7fffff, 0x3800010},
3959{0x3800000, 0xba98d7a, 0x7f800000, 0x7f800000, 0x3800000},
3960{0x3800000, 0xba98d7a, 0x7f800001, 0x7fc00000, 0x3800001},
3961{0x3800000, 0xba98d7a, 0x7f984a37, 0x7fc00000, 0x3800001},
3962{0x3800000, 0xba98d7a, 0x7fbfffff, 0x7fc00000, 0x3800001},
3963{0x3800000, 0xba98d7a, 0x7fc00000, 0x7fc00000, 0x3800000},
3964{0x3800000, 0xba98d7a, 0x7fd9ba98, 0x7fc00000, 0x3800000},
3965{0x3800000, 0xba98d7a, 0x7fffffff, 0x7fc00000, 0x3800000},
3966{0x3800000, 0xba98d7a, 0x80000000, 0xba98d7a, 0x3800000},
3967{0x3800000, 0xba98d7a, 0x80000001, 0xba98d7a, 0x3800080},
3968{0x3800000, 0xba98d7a, 0x80000076, 0xba98d7a, 0x3800080},
3969{0x3800000, 0xba98d7a, 0x80002b94, 0xba98d7a, 0x3800080},
3970{0x3800000, 0xba98d7a, 0x80636d24, 0xba98d7a, 0x3800080},
3971{0x3800000, 0xba98d7a, 0x807fffff, 0xba98d7a, 0x3800080},
3972{0x3800000, 0xba98d7a, 0x80800000, 0xba98d78, 0x3800000},
3973{0x3800000, 0xba98d7a, 0x80800002, 0xba98d77, 0x3800010},
3974{0x3800000, 0xba98d7a, 0x81398437, 0xba98d74, 0x3800010},
3975{0x3800000, 0xba98d7a, 0x8ba98d27, 0x3260000, 0x3800000},
3976{0x3800000, 0xba98d7a, 0x8ba98d7a, 0x80000000, 0x3800000},
3977{0x3800000, 0xba98d7a, 0xf51f853a, 0xf51f853a, 0x3800010},
3978{0x3800000, 0xba98d7a, 0xff7ffff0, 0xff7ffff0, 0x3800010},
3979{0x3800000, 0xba98d7a, 0xff7fffff, 0xff7fffff, 0x3800010},
3980{0x3800000, 0xba98d7a, 0xff800000, 0xff800000, 0x3800000},
3981{0x3800000, 0xba98d7a, 0xff800001, 0x7fc00000, 0x3800001},
3982{0x3800000, 0xba98d7a, 0xff984a37, 0x7fc00000, 0x3800001},
3983{0x3800000, 0xba98d7a, 0xffbfffff, 0x7fc00000, 0x3800001},
3984{0x3800000, 0xba98d7a, 0xffc00000, 0x7fc00000, 0x3800000},
3985{0x3800000, 0xba98d7a, 0xffd9ba98, 0x7fc00000, 0x3800000},
3986{0x3800000, 0xba98d7a, 0xffffffff, 0x7fc00000, 0x3800000},
3987{0x3800000, 0xba98d7a, 0x4f3495cb, 0x4f3495cb, 0x3800010},
3988{0x3800000, 0xba98d7a, 0xe73a5134, 0xe73a5134, 0x3800010},
3989{0x3800000, 0xba98d7a, 0x7c994e9e, 0x7c994e9e, 0x3800010},
3990{0x3800000, 0xba98d7a, 0x6164bd6c, 0x6164bd6c, 0x3800010},
3991{0x3800000, 0xba98d7a, 0x9503366, 0xbb00f15, 0x3800010},
3992{0x3800000, 0xba98d7a, 0xbf5a97c9, 0xbf5a97c9, 0x3800010},
3993{0x3800000, 0xba98d7a, 0xe6ff1a14, 0xe6ff1a14, 0x3800010},
3994{0x3800000, 0xba98d7a, 0x77f31e2f, 0x77f31e2f, 0x3800010},
3995{0x3800000, 0xba98d7a, 0xaab4d7d8, 0xaab4d7d8, 0x3800010},
3996{0x3800000, 0xba98d7a, 0x966320b, 0xbb0bf0a, 0x3800010},
3997{0x3800000, 0xba98d7a, 0xb26bddee, 0xb26bddee, 0x3800010},
3998{0x3800000, 0xba98d7a, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800010},
3999{0x3800000, 0xba98d7a, 0x317285d3, 0x317285d3, 0x3800010},
4000{0x3800000, 0xba98d7a, 0x3c9623b1, 0x3c9623b1, 0x3800010},
4001{0x3800000, 0xba98d7a, 0x51fd2c7c, 0x51fd2c7c, 0x3800010},
4002{0x3800000, 0xba98d7a, 0x7b906a6c, 0x7b906a6c, 0x3800010},
4003{0x3800000, 0x751f853a, 0x0, 0x751f853a, 0x3800000},
4004{0x3800000, 0x751f853a, 0x1, 0x751f853a, 0x3800080},
4005{0x3800000, 0x751f853a, 0x76, 0x751f853a, 0x3800080},
4006{0x3800000, 0x751f853a, 0x2b94, 0x751f853a, 0x3800080},
4007{0x3800000, 0x751f853a, 0x636d24, 0x751f853a, 0x3800080},
4008{0x3800000, 0x751f853a, 0x7fffff, 0x751f853a, 0x3800080},
4009{0x3800000, 0x751f853a, 0x800000, 0x751f853a, 0x3800010},
4010{0x3800000, 0x751f853a, 0x800002, 0x751f853a, 0x3800010},
4011{0x3800000, 0x751f853a, 0x1398437, 0x751f853a, 0x3800010},
4012{0x3800000, 0x751f853a, 0xba98d27, 0x751f853a, 0x3800010},
4013{0x3800000, 0x751f853a, 0xba98d7a, 0x751f853a, 0x3800010},
4014{0x3800000, 0x751f853a, 0x751f853a, 0x759f853a, 0x3800000},
4015{0x3800000, 0x751f853a, 0x7f7ffff0, 0x7f7ffff9, 0x3800010},
4016{0x3800000, 0x751f853a, 0x7f7fffff, 0x7f7fffff, 0x3800014},
4017{0x3800000, 0x751f853a, 0x7f800000, 0x7f800000, 0x3800000},
4018{0x3800000, 0x751f853a, 0x7f800001, 0x7fc00000, 0x3800001},
4019{0x3800000, 0x751f853a, 0x7f984a37, 0x7fc00000, 0x3800001},
4020{0x3800000, 0x751f853a, 0x7fbfffff, 0x7fc00000, 0x3800001},
4021{0x3800000, 0x751f853a, 0x7fc00000, 0x7fc00000, 0x3800000},
4022{0x3800000, 0x751f853a, 0x7fd9ba98, 0x7fc00000, 0x3800000},
4023{0x3800000, 0x751f853a, 0x7fffffff, 0x7fc00000, 0x3800000},
4024{0x3800000, 0x751f853a, 0x80000000, 0x751f853a, 0x3800000},
4025{0x3800000, 0x751f853a, 0x80000001, 0x751f853a, 0x3800080},
4026{0x3800000, 0x751f853a, 0x80000076, 0x751f853a, 0x3800080},
4027{0x3800000, 0x751f853a, 0x80002b94, 0x751f853a, 0x3800080},
4028{0x3800000, 0x751f853a, 0x80636d24, 0x751f853a, 0x3800080},
4029{0x3800000, 0x751f853a, 0x807fffff, 0x751f853a, 0x3800080},
4030{0x3800000, 0x751f853a, 0x80800000, 0x751f8539, 0x3800010},
4031{0x3800000, 0x751f853a, 0x80800002, 0x751f8539, 0x3800010},
4032{0x3800000, 0x751f853a, 0x81398437, 0x751f8539, 0x3800010},
4033{0x3800000, 0x751f853a, 0x8ba98d27, 0x751f8539, 0x3800010},
4034{0x3800000, 0x751f853a, 0x8ba98d7a, 0x751f8539, 0x3800010},
4035{0x3800000, 0x751f853a, 0xf51f853a, 0x80000000, 0x3800000},
4036{0x3800000, 0x751f853a, 0xff7ffff0, 0xff7fffe7, 0x3800010},
4037{0x3800000, 0x751f853a, 0xff7fffff, 0xff7ffff6, 0x3800010},
4038{0x3800000, 0x751f853a, 0xff800000, 0xff800000, 0x3800000},
4039{0x3800000, 0x751f853a, 0xff800001, 0x7fc00000, 0x3800001},
4040{0x3800000, 0x751f853a, 0xff984a37, 0x7fc00000, 0x3800001},
4041{0x3800000, 0x751f853a, 0xffbfffff, 0x7fc00000, 0x3800001},
4042{0x3800000, 0x751f853a, 0xffc00000, 0x7fc00000, 0x3800000},
4043{0x3800000, 0x751f853a, 0xffd9ba98, 0x7fc00000, 0x3800000},
4044{0x3800000, 0x751f853a, 0xffffffff, 0x7fc00000, 0x3800000},
4045{0x3800000, 0x751f853a, 0x4f3495cb, 0x751f853a, 0x3800010},
4046{0x3800000, 0x751f853a, 0xe73a5134, 0x751f8539, 0x3800010},
4047{0x3800000, 0x751f853a, 0x7c994e9e, 0x7c994fdd, 0x3800010},
4048{0x3800000, 0x751f853a, 0x6164bd6c, 0x751f853a, 0x3800010},
4049{0x3800000, 0x751f853a, 0x9503366, 0x751f853a, 0x3800010},
4050{0x3800000, 0x751f853a, 0xbf5a97c9, 0x751f8539, 0x3800010},
4051{0x3800000, 0x751f853a, 0xe6ff1a14, 0x751f8539, 0x3800010},
4052{0x3800000, 0x751f853a, 0x77f31e2f, 0x77f81a58, 0x3800010},
4053{0x3800000, 0x751f853a, 0xaab4d7d8, 0x751f8539, 0x3800010},
4054{0x3800000, 0x751f853a, 0x966320b, 0x751f853a, 0x3800010},
4055{0x3800000, 0x751f853a, 0xb26bddee, 0x751f8539, 0x3800010},
4056{0x3800000, 0x751f853a, 0xb5c8e5d3, 0x751f8539, 0x3800010},
4057{0x3800000, 0x751f853a, 0x317285d3, 0x751f853a, 0x3800010},
4058{0x3800000, 0x751f853a, 0x3c9623b1, 0x751f853a, 0x3800010},
4059{0x3800000, 0x751f853a, 0x51fd2c7c, 0x751f853a, 0x3800010},
4060{0x3800000, 0x751f853a, 0x7b906a6c, 0x7b906f68, 0x3800010},
4061{0x3800000, 0x7f7ffff0, 0x0, 0x7f7ffff0, 0x3800000},
4062{0x3800000, 0x7f7ffff0, 0x1, 0x7f7ffff0, 0x3800080},
4063{0x3800000, 0x7f7ffff0, 0x76, 0x7f7ffff0, 0x3800080},
4064{0x3800000, 0x7f7ffff0, 0x2b94, 0x7f7ffff0, 0x3800080},
4065{0x3800000, 0x7f7ffff0, 0x636d24, 0x7f7ffff0, 0x3800080},
4066{0x3800000, 0x7f7ffff0, 0x7fffff, 0x7f7ffff0, 0x3800080},
4067{0x3800000, 0x7f7ffff0, 0x800000, 0x7f7ffff0, 0x3800010},
4068{0x3800000, 0x7f7ffff0, 0x800002, 0x7f7ffff0, 0x3800010},
4069{0x3800000, 0x7f7ffff0, 0x1398437, 0x7f7ffff0, 0x3800010},
4070{0x3800000, 0x7f7ffff0, 0xba98d27, 0x7f7ffff0, 0x3800010},
4071{0x3800000, 0x7f7ffff0, 0xba98d7a, 0x7f7ffff0, 0x3800010},
4072{0x3800000, 0x7f7ffff0, 0x751f853a, 0x7f7ffff9, 0x3800010},
4073{0x3800000, 0x7f7ffff0, 0x7f7ffff0, 0x7f7fffff, 0x3800014},
4074{0x3800000, 0x7f7ffff0, 0x7f7fffff, 0x7f7fffff, 0x3800014},
4075{0x3800000, 0x7f7ffff0, 0x7f800000, 0x7f800000, 0x3800000},
4076{0x3800000, 0x7f7ffff0, 0x7f800001, 0x7fc00000, 0x3800001},
4077{0x3800000, 0x7f7ffff0, 0x7f984a37, 0x7fc00000, 0x3800001},
4078{0x3800000, 0x7f7ffff0, 0x7fbfffff, 0x7fc00000, 0x3800001},
4079{0x3800000, 0x7f7ffff0, 0x7fc00000, 0x7fc00000, 0x3800000},
4080{0x3800000, 0x7f7ffff0, 0x7fd9ba98, 0x7fc00000, 0x3800000},
4081{0x3800000, 0x7f7ffff0, 0x7fffffff, 0x7fc00000, 0x3800000},
4082{0x3800000, 0x7f7ffff0, 0x80000000, 0x7f7ffff0, 0x3800000},
4083{0x3800000, 0x7f7ffff0, 0x80000001, 0x7f7ffff0, 0x3800080},
4084{0x3800000, 0x7f7ffff0, 0x80000076, 0x7f7ffff0, 0x3800080},
4085{0x3800000, 0x7f7ffff0, 0x80002b94, 0x7f7ffff0, 0x3800080},
4086{0x3800000, 0x7f7ffff0, 0x80636d24, 0x7f7ffff0, 0x3800080},
4087{0x3800000, 0x7f7ffff0, 0x807fffff, 0x7f7ffff0, 0x3800080},
4088{0x3800000, 0x7f7ffff0, 0x80800000, 0x7f7fffef, 0x3800010},
4089{0x3800000, 0x7f7ffff0, 0x80800002, 0x7f7fffef, 0x3800010},
4090{0x3800000, 0x7f7ffff0, 0x81398437, 0x7f7fffef, 0x3800010},
4091{0x3800000, 0x7f7ffff0, 0x8ba98d27, 0x7f7fffef, 0x3800010},
4092{0x3800000, 0x7f7ffff0, 0x8ba98d7a, 0x7f7fffef, 0x3800010},
4093{0x3800000, 0x7f7ffff0, 0xf51f853a, 0x7f7fffe6, 0x3800010},
4094{0x3800000, 0x7f7ffff0, 0xff7ffff0, 0x80000000, 0x3800000},
4095{0x3800000, 0x7f7ffff0, 0xff7fffff, 0xf5700000, 0x3800000},
4096{0x3800000, 0x7f7ffff0, 0xff800000, 0xff800000, 0x3800000},
4097{0x3800000, 0x7f7ffff0, 0xff800001, 0x7fc00000, 0x3800001},
4098{0x3800000, 0x7f7ffff0, 0xff984a37, 0x7fc00000, 0x3800001},
4099{0x3800000, 0x7f7ffff0, 0xffbfffff, 0x7fc00000, 0x3800001},
4100{0x3800000, 0x7f7ffff0, 0xffc00000, 0x7fc00000, 0x3800000},
4101{0x3800000, 0x7f7ffff0, 0xffd9ba98, 0x7fc00000, 0x3800000},
4102{0x3800000, 0x7f7ffff0, 0xffffffff, 0x7fc00000, 0x3800000},
4103{0x3800000, 0x7f7ffff0, 0x4f3495cb, 0x7f7ffff0, 0x3800010},
4104{0x3800000, 0x7f7ffff0, 0xe73a5134, 0x7f7fffef, 0x3800010},
4105{0x3800000, 0x7f7ffff0, 0x7c994e9e, 0x7f7fffff, 0x3800014},
4106{0x3800000, 0x7f7ffff0, 0x6164bd6c, 0x7f7ffff0, 0x3800010},
4107{0x3800000, 0x7f7ffff0, 0x9503366, 0x7f7ffff0, 0x3800010},
4108{0x3800000, 0x7f7ffff0, 0xbf5a97c9, 0x7f7fffef, 0x3800010},
4109{0x3800000, 0x7f7ffff0, 0xe6ff1a14, 0x7f7fffef, 0x3800010},
4110{0x3800000, 0x7f7ffff0, 0x77f31e2f, 0x7f7fffff, 0x3800014},
4111{0x3800000, 0x7f7ffff0, 0xaab4d7d8, 0x7f7fffef, 0x3800010},
4112{0x3800000, 0x7f7ffff0, 0x966320b, 0x7f7ffff0, 0x3800010},
4113{0x3800000, 0x7f7ffff0, 0xb26bddee, 0x7f7fffef, 0x3800010},
4114{0x3800000, 0x7f7ffff0, 0xb5c8e5d3, 0x7f7fffef, 0x3800010},
4115{0x3800000, 0x7f7ffff0, 0x317285d3, 0x7f7ffff0, 0x3800010},
4116{0x3800000, 0x7f7ffff0, 0x3c9623b1, 0x7f7ffff0, 0x3800010},
4117{0x3800000, 0x7f7ffff0, 0x51fd2c7c, 0x7f7ffff0, 0x3800010},
4118{0x3800000, 0x7f7ffff0, 0x7b906a6c, 0x7f7fffff, 0x3800014},
4119{0x3800000, 0x7f7fffff, 0x0, 0x7f7fffff, 0x3800000},
4120{0x3800000, 0x7f7fffff, 0x1, 0x7f7fffff, 0x3800080},
4121{0x3800000, 0x7f7fffff, 0x76, 0x7f7fffff, 0x3800080},
4122{0x3800000, 0x7f7fffff, 0x2b94, 0x7f7fffff, 0x3800080},
4123{0x3800000, 0x7f7fffff, 0x636d24, 0x7f7fffff, 0x3800080},
4124{0x3800000, 0x7f7fffff, 0x7fffff, 0x7f7fffff, 0x3800080},
4125{0x3800000, 0x7f7fffff, 0x800000, 0x7f7fffff, 0x3800010},
4126{0x3800000, 0x7f7fffff, 0x800002, 0x7f7fffff, 0x3800010},
4127{0x3800000, 0x7f7fffff, 0x1398437, 0x7f7fffff, 0x3800010},
4128{0x3800000, 0x7f7fffff, 0xba98d27, 0x7f7fffff, 0x3800010},
4129{0x3800000, 0x7f7fffff, 0xba98d7a, 0x7f7fffff, 0x3800010},
4130{0x3800000, 0x7f7fffff, 0x751f853a, 0x7f7fffff, 0x3800014},
4131{0x3800000, 0x7f7fffff, 0x7f7ffff0, 0x7f7fffff, 0x3800014},
4132{0x3800000, 0x7f7fffff, 0x7f7fffff, 0x7f7fffff, 0x3800014},
4133{0x3800000, 0x7f7fffff, 0x7f800000, 0x7f800000, 0x3800000},
4134{0x3800000, 0x7f7fffff, 0x7f800001, 0x7fc00000, 0x3800001},
4135{0x3800000, 0x7f7fffff, 0x7f984a37, 0x7fc00000, 0x3800001},
4136{0x3800000, 0x7f7fffff, 0x7fbfffff, 0x7fc00000, 0x3800001},
4137{0x3800000, 0x7f7fffff, 0x7fc00000, 0x7fc00000, 0x3800000},
4138{0x3800000, 0x7f7fffff, 0x7fd9ba98, 0x7fc00000, 0x3800000},
4139{0x3800000, 0x7f7fffff, 0x7fffffff, 0x7fc00000, 0x3800000},
4140{0x3800000, 0x7f7fffff, 0x80000000, 0x7f7fffff, 0x3800000},
4141{0x3800000, 0x7f7fffff, 0x80000001, 0x7f7fffff, 0x3800080},
4142{0x3800000, 0x7f7fffff, 0x80000076, 0x7f7fffff, 0x3800080},
4143{0x3800000, 0x7f7fffff, 0x80002b94, 0x7f7fffff, 0x3800080},
4144{0x3800000, 0x7f7fffff, 0x80636d24, 0x7f7fffff, 0x3800080},
4145{0x3800000, 0x7f7fffff, 0x807fffff, 0x7f7fffff, 0x3800080},
4146{0x3800000, 0x7f7fffff, 0x80800000, 0x7f7ffffe, 0x3800010},
4147{0x3800000, 0x7f7fffff, 0x80800002, 0x7f7ffffe, 0x3800010},
4148{0x3800000, 0x7f7fffff, 0x81398437, 0x7f7ffffe, 0x3800010},
4149{0x3800000, 0x7f7fffff, 0x8ba98d27, 0x7f7ffffe, 0x3800010},
4150{0x3800000, 0x7f7fffff, 0x8ba98d7a, 0x7f7ffffe, 0x3800010},
4151{0x3800000, 0x7f7fffff, 0xf51f853a, 0x7f7ffff5, 0x3800010},
4152{0x3800000, 0x7f7fffff, 0xff7ffff0, 0x75700000, 0x3800000},
4153{0x3800000, 0x7f7fffff, 0xff7fffff, 0x80000000, 0x3800000},
4154{0x3800000, 0x7f7fffff, 0xff800000, 0xff800000, 0x3800000},
4155{0x3800000, 0x7f7fffff, 0xff800001, 0x7fc00000, 0x3800001},
4156{0x3800000, 0x7f7fffff, 0xff984a37, 0x7fc00000, 0x3800001},
4157{0x3800000, 0x7f7fffff, 0xffbfffff, 0x7fc00000, 0x3800001},
4158{0x3800000, 0x7f7fffff, 0xffc00000, 0x7fc00000, 0x3800000},
4159{0x3800000, 0x7f7fffff, 0xffd9ba98, 0x7fc00000, 0x3800000},
4160{0x3800000, 0x7f7fffff, 0xffffffff, 0x7fc00000, 0x3800000},
4161{0x3800000, 0x7f7fffff, 0x4f3495cb, 0x7f7fffff, 0x3800010},
4162{0x3800000, 0x7f7fffff, 0xe73a5134, 0x7f7ffffe, 0x3800010},
4163{0x3800000, 0x7f7fffff, 0x7c994e9e, 0x7f7fffff, 0x3800014},
4164{0x3800000, 0x7f7fffff, 0x6164bd6c, 0x7f7fffff, 0x3800010},
4165{0x3800000, 0x7f7fffff, 0x9503366, 0x7f7fffff, 0x3800010},
4166{0x3800000, 0x7f7fffff, 0xbf5a97c9, 0x7f7ffffe, 0x3800010},
4167{0x3800000, 0x7f7fffff, 0xe6ff1a14, 0x7f7ffffe, 0x3800010},
4168{0x3800000, 0x7f7fffff, 0x77f31e2f, 0x7f7fffff, 0x3800014},
4169{0x3800000, 0x7f7fffff, 0xaab4d7d8, 0x7f7ffffe, 0x3800010},
4170{0x3800000, 0x7f7fffff, 0x966320b, 0x7f7fffff, 0x3800010},
4171{0x3800000, 0x7f7fffff, 0xb26bddee, 0x7f7ffffe, 0x3800010},
4172{0x3800000, 0x7f7fffff, 0xb5c8e5d3, 0x7f7ffffe, 0x3800010},
4173{0x3800000, 0x7f7fffff, 0x317285d3, 0x7f7fffff, 0x3800010},
4174{0x3800000, 0x7f7fffff, 0x3c9623b1, 0x7f7fffff, 0x3800010},
4175{0x3800000, 0x7f7fffff, 0x51fd2c7c, 0x7f7fffff, 0x3800010},
4176{0x3800000, 0x7f7fffff, 0x7b906a6c, 0x7f7fffff, 0x3800014},
4177{0x3800000, 0x7f800000, 0x0, 0x7f800000, 0x3800000},
4178{0x3800000, 0x7f800000, 0x1, 0x7f800000, 0x3800080},
4179{0x3800000, 0x7f800000, 0x76, 0x7f800000, 0x3800080},
4180{0x3800000, 0x7f800000, 0x2b94, 0x7f800000, 0x3800080},
4181{0x3800000, 0x7f800000, 0x636d24, 0x7f800000, 0x3800080},
4182{0x3800000, 0x7f800000, 0x7fffff, 0x7f800000, 0x3800080},
4183{0x3800000, 0x7f800000, 0x800000, 0x7f800000, 0x3800000},
4184{0x3800000, 0x7f800000, 0x800002, 0x7f800000, 0x3800000},
4185{0x3800000, 0x7f800000, 0x1398437, 0x7f800000, 0x3800000},
4186{0x3800000, 0x7f800000, 0xba98d27, 0x7f800000, 0x3800000},
4187{0x3800000, 0x7f800000, 0xba98d7a, 0x7f800000, 0x3800000},
4188{0x3800000, 0x7f800000, 0x751f853a, 0x7f800000, 0x3800000},
4189{0x3800000, 0x7f800000, 0x7f7ffff0, 0x7f800000, 0x3800000},
4190{0x3800000, 0x7f800000, 0x7f7fffff, 0x7f800000, 0x3800000},
4191{0x3800000, 0x7f800000, 0x7f800000, 0x7f800000, 0x3800000},
4192{0x3800000, 0x7f800000, 0x7f800001, 0x7fc00000, 0x3800001},
4193{0x3800000, 0x7f800000, 0x7f984a37, 0x7fc00000, 0x3800001},
4194{0x3800000, 0x7f800000, 0x7fbfffff, 0x7fc00000, 0x3800001},
4195{0x3800000, 0x7f800000, 0x7fc00000, 0x7fc00000, 0x3800000},
4196{0x3800000, 0x7f800000, 0x7fd9ba98, 0x7fc00000, 0x3800000},
4197{0x3800000, 0x7f800000, 0x7fffffff, 0x7fc00000, 0x3800000},
4198{0x3800000, 0x7f800000, 0x80000000, 0x7f800000, 0x3800000},
4199{0x3800000, 0x7f800000, 0x80000001, 0x7f800000, 0x3800080},
4200{0x3800000, 0x7f800000, 0x80000076, 0x7f800000, 0x3800080},
4201{0x3800000, 0x7f800000, 0x80002b94, 0x7f800000, 0x3800080},
4202{0x3800000, 0x7f800000, 0x80636d24, 0x7f800000, 0x3800080},
4203{0x3800000, 0x7f800000, 0x807fffff, 0x7f800000, 0x3800080},
4204{0x3800000, 0x7f800000, 0x80800000, 0x7f800000, 0x3800000},
4205{0x3800000, 0x7f800000, 0x80800002, 0x7f800000, 0x3800000},
4206{0x3800000, 0x7f800000, 0x81398437, 0x7f800000, 0x3800000},
4207{0x3800000, 0x7f800000, 0x8ba98d27, 0x7f800000, 0x3800000},
4208{0x3800000, 0x7f800000, 0x8ba98d7a, 0x7f800000, 0x3800000},
4209{0x3800000, 0x7f800000, 0xf51f853a, 0x7f800000, 0x3800000},
4210{0x3800000, 0x7f800000, 0xff7ffff0, 0x7f800000, 0x3800000},
4211{0x3800000, 0x7f800000, 0xff7fffff, 0x7f800000, 0x3800000},
4212{0x3800000, 0x7f800000, 0xff800000, 0x7fc00000, 0x3800001},
4213{0x3800000, 0x7f800000, 0xff800001, 0x7fc00000, 0x3800001},
4214{0x3800000, 0x7f800000, 0xff984a37, 0x7fc00000, 0x3800001},
4215{0x3800000, 0x7f800000, 0xffbfffff, 0x7fc00000, 0x3800001},
4216{0x3800000, 0x7f800000, 0xffc00000, 0x7fc00000, 0x3800000},
4217{0x3800000, 0x7f800000, 0xffd9ba98, 0x7fc00000, 0x3800000},
4218{0x3800000, 0x7f800000, 0xffffffff, 0x7fc00000, 0x3800000},
4219{0x3800000, 0x7f800000, 0x4f3495cb, 0x7f800000, 0x3800000},
4220{0x3800000, 0x7f800000, 0xe73a5134, 0x7f800000, 0x3800000},
4221{0x3800000, 0x7f800000, 0x7c994e9e, 0x7f800000, 0x3800000},
4222{0x3800000, 0x7f800000, 0x6164bd6c, 0x7f800000, 0x3800000},
4223{0x3800000, 0x7f800000, 0x9503366, 0x7f800000, 0x3800000},
4224{0x3800000, 0x7f800000, 0xbf5a97c9, 0x7f800000, 0x3800000},
4225{0x3800000, 0x7f800000, 0xe6ff1a14, 0x7f800000, 0x3800000},
4226{0x3800000, 0x7f800000, 0x77f31e2f, 0x7f800000, 0x3800000},
4227{0x3800000, 0x7f800000, 0xaab4d7d8, 0x7f800000, 0x3800000},
4228{0x3800000, 0x7f800000, 0x966320b, 0x7f800000, 0x3800000},
4229{0x3800000, 0x7f800000, 0xb26bddee, 0x7f800000, 0x3800000},
4230{0x3800000, 0x7f800000, 0xb5c8e5d3, 0x7f800000, 0x3800000},
4231{0x3800000, 0x7f800000, 0x317285d3, 0x7f800000, 0x3800000},
4232{0x3800000, 0x7f800000, 0x3c9623b1, 0x7f800000, 0x3800000},
4233{0x3800000, 0x7f800000, 0x51fd2c7c, 0x7f800000, 0x3800000},
4234{0x3800000, 0x7f800000, 0x7b906a6c, 0x7f800000, 0x3800000},
4235{0x3800000, 0x7f800001, 0x0, 0x7fc00000, 0x3800001},
4236{0x3800000, 0x7f800001, 0x1, 0x7fc00000, 0x3800081},
4237{0x3800000, 0x7f800001, 0x76, 0x7fc00000, 0x3800081},
4238{0x3800000, 0x7f800001, 0x2b94, 0x7fc00000, 0x3800081},
4239{0x3800000, 0x7f800001, 0x636d24, 0x7fc00000, 0x3800081},
4240{0x3800000, 0x7f800001, 0x7fffff, 0x7fc00000, 0x3800081},
4241{0x3800000, 0x7f800001, 0x800000, 0x7fc00000, 0x3800001},
4242{0x3800000, 0x7f800001, 0x800002, 0x7fc00000, 0x3800001},
4243{0x3800000, 0x7f800001, 0x1398437, 0x7fc00000, 0x3800001},
4244{0x3800000, 0x7f800001, 0xba98d27, 0x7fc00000, 0x3800001},
4245{0x3800000, 0x7f800001, 0xba98d7a, 0x7fc00000, 0x3800001},
4246{0x3800000, 0x7f800001, 0x751f853a, 0x7fc00000, 0x3800001},
4247{0x3800000, 0x7f800001, 0x7f7ffff0, 0x7fc00000, 0x3800001},
4248{0x3800000, 0x7f800001, 0x7f7fffff, 0x7fc00000, 0x3800001},
4249{0x3800000, 0x7f800001, 0x7f800000, 0x7fc00000, 0x3800001},
4250{0x3800000, 0x7f800001, 0x7f800001, 0x7fc00000, 0x3800001},
4251{0x3800000, 0x7f800001, 0x7f984a37, 0x7fc00000, 0x3800001},
4252{0x3800000, 0x7f800001, 0x7fbfffff, 0x7fc00000, 0x3800001},
4253{0x3800000, 0x7f800001, 0x7fc00000, 0x7fc00000, 0x3800001},
4254{0x3800000, 0x7f800001, 0x7fd9ba98, 0x7fc00000, 0x3800001},
4255{0x3800000, 0x7f800001, 0x7fffffff, 0x7fc00000, 0x3800001},
4256{0x3800000, 0x7f800001, 0x80000000, 0x7fc00000, 0x3800001},
4257{0x3800000, 0x7f800001, 0x80000001, 0x7fc00000, 0x3800081},
4258{0x3800000, 0x7f800001, 0x80000076, 0x7fc00000, 0x3800081},
4259{0x3800000, 0x7f800001, 0x80002b94, 0x7fc00000, 0x3800081},
4260{0x3800000, 0x7f800001, 0x80636d24, 0x7fc00000, 0x3800081},
4261{0x3800000, 0x7f800001, 0x807fffff, 0x7fc00000, 0x3800081},
4262{0x3800000, 0x7f800001, 0x80800000, 0x7fc00000, 0x3800001},
4263{0x3800000, 0x7f800001, 0x80800002, 0x7fc00000, 0x3800001},
4264{0x3800000, 0x7f800001, 0x81398437, 0x7fc00000, 0x3800001},
4265{0x3800000, 0x7f800001, 0x8ba98d27, 0x7fc00000, 0x3800001},
4266{0x3800000, 0x7f800001, 0x8ba98d7a, 0x7fc00000, 0x3800001},
4267{0x3800000, 0x7f800001, 0xf51f853a, 0x7fc00000, 0x3800001},
4268{0x3800000, 0x7f800001, 0xff7ffff0, 0x7fc00000, 0x3800001},
4269{0x3800000, 0x7f800001, 0xff7fffff, 0x7fc00000, 0x3800001},
4270{0x3800000, 0x7f800001, 0xff800000, 0x7fc00000, 0x3800001},
4271{0x3800000, 0x7f800001, 0xff800001, 0x7fc00000, 0x3800001},
4272{0x3800000, 0x7f800001, 0xff984a37, 0x7fc00000, 0x3800001},
4273{0x3800000, 0x7f800001, 0xffbfffff, 0x7fc00000, 0x3800001},
4274{0x3800000, 0x7f800001, 0xffc00000, 0x7fc00000, 0x3800001},
4275{0x3800000, 0x7f800001, 0xffd9ba98, 0x7fc00000, 0x3800001},
4276{0x3800000, 0x7f800001, 0xffffffff, 0x7fc00000, 0x3800001},
4277{0x3800000, 0x7f800001, 0x4f3495cb, 0x7fc00000, 0x3800001},
4278{0x3800000, 0x7f800001, 0xe73a5134, 0x7fc00000, 0x3800001},
4279{0x3800000, 0x7f800001, 0x7c994e9e, 0x7fc00000, 0x3800001},
4280{0x3800000, 0x7f800001, 0x6164bd6c, 0x7fc00000, 0x3800001},
4281{0x3800000, 0x7f800001, 0x9503366, 0x7fc00000, 0x3800001},
4282{0x3800000, 0x7f800001, 0xbf5a97c9, 0x7fc00000, 0x3800001},
4283{0x3800000, 0x7f800001, 0xe6ff1a14, 0x7fc00000, 0x3800001},
4284{0x3800000, 0x7f800001, 0x77f31e2f, 0x7fc00000, 0x3800001},
4285{0x3800000, 0x7f800001, 0xaab4d7d8, 0x7fc00000, 0x3800001},
4286{0x3800000, 0x7f800001, 0x966320b, 0x7fc00000, 0x3800001},
4287{0x3800000, 0x7f800001, 0xb26bddee, 0x7fc00000, 0x3800001},
4288{0x3800000, 0x7f800001, 0xb5c8e5d3, 0x7fc00000, 0x3800001},
4289{0x3800000, 0x7f800001, 0x317285d3, 0x7fc00000, 0x3800001},
4290{0x3800000, 0x7f800001, 0x3c9623b1, 0x7fc00000, 0x3800001},
4291{0x3800000, 0x7f800001, 0x51fd2c7c, 0x7fc00000, 0x3800001},
4292{0x3800000, 0x7f800001, 0x7b906a6c, 0x7fc00000, 0x3800001},
4293{0x3800000, 0x7f984a37, 0x0, 0x7fc00000, 0x3800001},
4294{0x3800000, 0x7f984a37, 0x1, 0x7fc00000, 0x3800081},
4295{0x3800000, 0x7f984a37, 0x76, 0x7fc00000, 0x3800081},
4296{0x3800000, 0x7f984a37, 0x2b94, 0x7fc00000, 0x3800081},
4297{0x3800000, 0x7f984a37, 0x636d24, 0x7fc00000, 0x3800081},
4298{0x3800000, 0x7f984a37, 0x7fffff, 0x7fc00000, 0x3800081},
4299{0x3800000, 0x7f984a37, 0x800000, 0x7fc00000, 0x3800001},
4300{0x3800000, 0x7f984a37, 0x800002, 0x7fc00000, 0x3800001},
4301{0x3800000, 0x7f984a37, 0x1398437, 0x7fc00000, 0x3800001},
4302{0x3800000, 0x7f984a37, 0xba98d27, 0x7fc00000, 0x3800001},
4303{0x3800000, 0x7f984a37, 0xba98d7a, 0x7fc00000, 0x3800001},
4304{0x3800000, 0x7f984a37, 0x751f853a, 0x7fc00000, 0x3800001},
4305{0x3800000, 0x7f984a37, 0x7f7ffff0, 0x7fc00000, 0x3800001},
4306{0x3800000, 0x7f984a37, 0x7f7fffff, 0x7fc00000, 0x3800001},
4307{0x3800000, 0x7f984a37, 0x7f800000, 0x7fc00000, 0x3800001},
4308{0x3800000, 0x7f984a37, 0x7f800001, 0x7fc00000, 0x3800001},
4309{0x3800000, 0x7f984a37, 0x7f984a37, 0x7fc00000, 0x3800001},
4310{0x3800000, 0x7f984a37, 0x7fbfffff, 0x7fc00000, 0x3800001},
4311{0x3800000, 0x7f984a37, 0x7fc00000, 0x7fc00000, 0x3800001},
4312{0x3800000, 0x7f984a37, 0x7fd9ba98, 0x7fc00000, 0x3800001},
4313{0x3800000, 0x7f984a37, 0x7fffffff, 0x7fc00000, 0x3800001},
4314{0x3800000, 0x7f984a37, 0x80000000, 0x7fc00000, 0x3800001},
4315{0x3800000, 0x7f984a37, 0x80000001, 0x7fc00000, 0x3800081},
4316{0x3800000, 0x7f984a37, 0x80000076, 0x7fc00000, 0x3800081},
4317{0x3800000, 0x7f984a37, 0x80002b94, 0x7fc00000, 0x3800081},
4318{0x3800000, 0x7f984a37, 0x80636d24, 0x7fc00000, 0x3800081},
4319{0x3800000, 0x7f984a37, 0x807fffff, 0x7fc00000, 0x3800081},
4320{0x3800000, 0x7f984a37, 0x80800000, 0x7fc00000, 0x3800001},
4321{0x3800000, 0x7f984a37, 0x80800002, 0x7fc00000, 0x3800001},
4322{0x3800000, 0x7f984a37, 0x81398437, 0x7fc00000, 0x3800001},
4323{0x3800000, 0x7f984a37, 0x8ba98d27, 0x7fc00000, 0x3800001},
4324{0x3800000, 0x7f984a37, 0x8ba98d7a, 0x7fc00000, 0x3800001},
4325{0x3800000, 0x7f984a37, 0xf51f853a, 0x7fc00000, 0x3800001},
4326{0x3800000, 0x7f984a37, 0xff7ffff0, 0x7fc00000, 0x3800001},
4327{0x3800000, 0x7f984a37, 0xff7fffff, 0x7fc00000, 0x3800001},
4328{0x3800000, 0x7f984a37, 0xff800000, 0x7fc00000, 0x3800001},
4329{0x3800000, 0x7f984a37, 0xff800001, 0x7fc00000, 0x3800001},
4330{0x3800000, 0x7f984a37, 0xff984a37, 0x7fc00000, 0x3800001},
4331{0x3800000, 0x7f984a37, 0xffbfffff, 0x7fc00000, 0x3800001},
4332{0x3800000, 0x7f984a37, 0xffc00000, 0x7fc00000, 0x3800001},
4333{0x3800000, 0x7f984a37, 0xffd9ba98, 0x7fc00000, 0x3800001},
4334{0x3800000, 0x7f984a37, 0xffffffff, 0x7fc00000, 0x3800001},
4335{0x3800000, 0x7f984a37, 0x4f3495cb, 0x7fc00000, 0x3800001},
4336{0x3800000, 0x7f984a37, 0xe73a5134, 0x7fc00000, 0x3800001},
4337{0x3800000, 0x7f984a37, 0x7c994e9e, 0x7fc00000, 0x3800001},
4338{0x3800000, 0x7f984a37, 0x6164bd6c, 0x7fc00000, 0x3800001},
4339{0x3800000, 0x7f984a37, 0x9503366, 0x7fc00000, 0x3800001},
4340{0x3800000, 0x7f984a37, 0xbf5a97c9, 0x7fc00000, 0x3800001},
4341{0x3800000, 0x7f984a37, 0xe6ff1a14, 0x7fc00000, 0x3800001},
4342{0x3800000, 0x7f984a37, 0x77f31e2f, 0x7fc00000, 0x3800001},
4343{0x3800000, 0x7f984a37, 0xaab4d7d8, 0x7fc00000, 0x3800001},
4344{0x3800000, 0x7f984a37, 0x966320b, 0x7fc00000, 0x3800001},
4345{0x3800000, 0x7f984a37, 0xb26bddee, 0x7fc00000, 0x3800001},
4346{0x3800000, 0x7f984a37, 0xb5c8e5d3, 0x7fc00000, 0x3800001},
4347{0x3800000, 0x7f984a37, 0x317285d3, 0x7fc00000, 0x3800001},
4348{0x3800000, 0x7f984a37, 0x3c9623b1, 0x7fc00000, 0x3800001},
4349{0x3800000, 0x7f984a37, 0x51fd2c7c, 0x7fc00000, 0x3800001},
4350{0x3800000, 0x7f984a37, 0x7b906a6c, 0x7fc00000, 0x3800001},
4351{0x3800000, 0x7fbfffff, 0x0, 0x7fc00000, 0x3800001},
4352{0x3800000, 0x7fbfffff, 0x1, 0x7fc00000, 0x3800081},
4353{0x3800000, 0x7fbfffff, 0x76, 0x7fc00000, 0x3800081},
4354{0x3800000, 0x7fbfffff, 0x2b94, 0x7fc00000, 0x3800081},
4355{0x3800000, 0x7fbfffff, 0x636d24, 0x7fc00000, 0x3800081},
4356{0x3800000, 0x7fbfffff, 0x7fffff, 0x7fc00000, 0x3800081},
4357{0x3800000, 0x7fbfffff, 0x800000, 0x7fc00000, 0x3800001},
4358{0x3800000, 0x7fbfffff, 0x800002, 0x7fc00000, 0x3800001},
4359{0x3800000, 0x7fbfffff, 0x1398437, 0x7fc00000, 0x3800001},
4360{0x3800000, 0x7fbfffff, 0xba98d27, 0x7fc00000, 0x3800001},
4361{0x3800000, 0x7fbfffff, 0xba98d7a, 0x7fc00000, 0x3800001},
4362{0x3800000, 0x7fbfffff, 0x751f853a, 0x7fc00000, 0x3800001},
4363{0x3800000, 0x7fbfffff, 0x7f7ffff0, 0x7fc00000, 0x3800001},
4364{0x3800000, 0x7fbfffff, 0x7f7fffff, 0x7fc00000, 0x3800001},
4365{0x3800000, 0x7fbfffff, 0x7f800000, 0x7fc00000, 0x3800001},
4366{0x3800000, 0x7fbfffff, 0x7f800001, 0x7fc00000, 0x3800001},
4367{0x3800000, 0x7fbfffff, 0x7f984a37, 0x7fc00000, 0x3800001},
4368{0x3800000, 0x7fbfffff, 0x7fbfffff, 0x7fc00000, 0x3800001},
4369{0x3800000, 0x7fbfffff, 0x7fc00000, 0x7fc00000, 0x3800001},
4370{0x3800000, 0x7fbfffff, 0x7fd9ba98, 0x7fc00000, 0x3800001},
4371{0x3800000, 0x7fbfffff, 0x7fffffff, 0x7fc00000, 0x3800001},
4372{0x3800000, 0x7fbfffff, 0x80000000, 0x7fc00000, 0x3800001},
4373{0x3800000, 0x7fbfffff, 0x80000001, 0x7fc00000, 0x3800081},
4374{0x3800000, 0x7fbfffff, 0x80000076, 0x7fc00000, 0x3800081},
4375{0x3800000, 0x7fbfffff, 0x80002b94, 0x7fc00000, 0x3800081},
4376{0x3800000, 0x7fbfffff, 0x80636d24, 0x7fc00000, 0x3800081},
4377{0x3800000, 0x7fbfffff, 0x807fffff, 0x7fc00000, 0x3800081},
4378{0x3800000, 0x7fbfffff, 0x80800000, 0x7fc00000, 0x3800001},
4379{0x3800000, 0x7fbfffff, 0x80800002, 0x7fc00000, 0x3800001},
4380{0x3800000, 0x7fbfffff, 0x81398437, 0x7fc00000, 0x3800001},
4381{0x3800000, 0x7fbfffff, 0x8ba98d27, 0x7fc00000, 0x3800001},
4382{0x3800000, 0x7fbfffff, 0x8ba98d7a, 0x7fc00000, 0x3800001},
4383{0x3800000, 0x7fbfffff, 0xf51f853a, 0x7fc00000, 0x3800001},
4384{0x3800000, 0x7fbfffff, 0xff7ffff0, 0x7fc00000, 0x3800001},
4385{0x3800000, 0x7fbfffff, 0xff7fffff, 0x7fc00000, 0x3800001},
4386{0x3800000, 0x7fbfffff, 0xff800000, 0x7fc00000, 0x3800001},
4387{0x3800000, 0x7fbfffff, 0xff800001, 0x7fc00000, 0x3800001},
4388{0x3800000, 0x7fbfffff, 0xff984a37, 0x7fc00000, 0x3800001},
4389{0x3800000, 0x7fbfffff, 0xffbfffff, 0x7fc00000, 0x3800001},
4390{0x3800000, 0x7fbfffff, 0xffc00000, 0x7fc00000, 0x3800001},
4391{0x3800000, 0x7fbfffff, 0xffd9ba98, 0x7fc00000, 0x3800001},
4392{0x3800000, 0x7fbfffff, 0xffffffff, 0x7fc00000, 0x3800001},
4393{0x3800000, 0x7fbfffff, 0x4f3495cb, 0x7fc00000, 0x3800001},
4394{0x3800000, 0x7fbfffff, 0xe73a5134, 0x7fc00000, 0x3800001},
4395{0x3800000, 0x7fbfffff, 0x7c994e9e, 0x7fc00000, 0x3800001},
4396{0x3800000, 0x7fbfffff, 0x6164bd6c, 0x7fc00000, 0x3800001},
4397{0x3800000, 0x7fbfffff, 0x9503366, 0x7fc00000, 0x3800001},
4398{0x3800000, 0x7fbfffff, 0xbf5a97c9, 0x7fc00000, 0x3800001},
4399{0x3800000, 0x7fbfffff, 0xe6ff1a14, 0x7fc00000, 0x3800001},
4400{0x3800000, 0x7fbfffff, 0x77f31e2f, 0x7fc00000, 0x3800001},
4401{0x3800000, 0x7fbfffff, 0xaab4d7d8, 0x7fc00000, 0x3800001},
4402{0x3800000, 0x7fbfffff, 0x966320b, 0x7fc00000, 0x3800001},
4403{0x3800000, 0x7fbfffff, 0xb26bddee, 0x7fc00000, 0x3800001},
4404{0x3800000, 0x7fbfffff, 0xb5c8e5d3, 0x7fc00000, 0x3800001},
4405{0x3800000, 0x7fbfffff, 0x317285d3, 0x7fc00000, 0x3800001},
4406{0x3800000, 0x7fbfffff, 0x3c9623b1, 0x7fc00000, 0x3800001},
4407{0x3800000, 0x7fbfffff, 0x51fd2c7c, 0x7fc00000, 0x3800001},
4408{0x3800000, 0x7fbfffff, 0x7b906a6c, 0x7fc00000, 0x3800001},
4409{0x3800000, 0x7fc00000, 0x0, 0x7fc00000, 0x3800000},
4410{0x3800000, 0x7fc00000, 0x1, 0x7fc00000, 0x3800080},
4411{0x3800000, 0x7fc00000, 0x76, 0x7fc00000, 0x3800080},
4412{0x3800000, 0x7fc00000, 0x2b94, 0x7fc00000, 0x3800080},
4413{0x3800000, 0x7fc00000, 0x636d24, 0x7fc00000, 0x3800080},
4414{0x3800000, 0x7fc00000, 0x7fffff, 0x7fc00000, 0x3800080},
4415{0x3800000, 0x7fc00000, 0x800000, 0x7fc00000, 0x3800000},
4416{0x3800000, 0x7fc00000, 0x800002, 0x7fc00000, 0x3800000},
4417{0x3800000, 0x7fc00000, 0x1398437, 0x7fc00000, 0x3800000},
4418{0x3800000, 0x7fc00000, 0xba98d27, 0x7fc00000, 0x3800000},
4419{0x3800000, 0x7fc00000, 0xba98d7a, 0x7fc00000, 0x3800000},
4420{0x3800000, 0x7fc00000, 0x751f853a, 0x7fc00000, 0x3800000},
4421{0x3800000, 0x7fc00000, 0x7f7ffff0, 0x7fc00000, 0x3800000},
4422{0x3800000, 0x7fc00000, 0x7f7fffff, 0x7fc00000, 0x3800000},
4423{0x3800000, 0x7fc00000, 0x7f800000, 0x7fc00000, 0x3800000},
4424{0x3800000, 0x7fc00000, 0x7f800001, 0x7fc00000, 0x3800001},
4425{0x3800000, 0x7fc00000, 0x7f984a37, 0x7fc00000, 0x3800001},
4426{0x3800000, 0x7fc00000, 0x7fbfffff, 0x7fc00000, 0x3800001},
4427{0x3800000, 0x7fc00000, 0x7fc00000, 0x7fc00000, 0x3800000},
4428{0x3800000, 0x7fc00000, 0x7fd9ba98, 0x7fc00000, 0x3800000},
4429{0x3800000, 0x7fc00000, 0x7fffffff, 0x7fc00000, 0x3800000},
4430{0x3800000, 0x7fc00000, 0x80000000, 0x7fc00000, 0x3800000},
4431{0x3800000, 0x7fc00000, 0x80000001, 0x7fc00000, 0x3800080},
4432{0x3800000, 0x7fc00000, 0x80000076, 0x7fc00000, 0x3800080},
4433{0x3800000, 0x7fc00000, 0x80002b94, 0x7fc00000, 0x3800080},
4434{0x3800000, 0x7fc00000, 0x80636d24, 0x7fc00000, 0x3800080},
4435{0x3800000, 0x7fc00000, 0x807fffff, 0x7fc00000, 0x3800080},
4436{0x3800000, 0x7fc00000, 0x80800000, 0x7fc00000, 0x3800000},
4437{0x3800000, 0x7fc00000, 0x80800002, 0x7fc00000, 0x3800000},
4438{0x3800000, 0x7fc00000, 0x81398437, 0x7fc00000, 0x3800000},
4439{0x3800000, 0x7fc00000, 0x8ba98d27, 0x7fc00000, 0x3800000},
4440{0x3800000, 0x7fc00000, 0x8ba98d7a, 0x7fc00000, 0x3800000},
4441{0x3800000, 0x7fc00000, 0xf51f853a, 0x7fc00000, 0x3800000},
4442{0x3800000, 0x7fc00000, 0xff7ffff0, 0x7fc00000, 0x3800000},
4443{0x3800000, 0x7fc00000, 0xff7fffff, 0x7fc00000, 0x3800000},
4444{0x3800000, 0x7fc00000, 0xff800000, 0x7fc00000, 0x3800000},
4445{0x3800000, 0x7fc00000, 0xff800001, 0x7fc00000, 0x3800001},
4446{0x3800000, 0x7fc00000, 0xff984a37, 0x7fc00000, 0x3800001},
4447{0x3800000, 0x7fc00000, 0xffbfffff, 0x7fc00000, 0x3800001},
4448{0x3800000, 0x7fc00000, 0xffc00000, 0x7fc00000, 0x3800000},
4449{0x3800000, 0x7fc00000, 0xffd9ba98, 0x7fc00000, 0x3800000},
4450{0x3800000, 0x7fc00000, 0xffffffff, 0x7fc00000, 0x3800000},
4451{0x3800000, 0x7fc00000, 0x4f3495cb, 0x7fc00000, 0x3800000},
4452{0x3800000, 0x7fc00000, 0xe73a5134, 0x7fc00000, 0x3800000},
4453{0x3800000, 0x7fc00000, 0x7c994e9e, 0x7fc00000, 0x3800000},
4454{0x3800000, 0x7fc00000, 0x6164bd6c, 0x7fc00000, 0x3800000},
4455{0x3800000, 0x7fc00000, 0x9503366, 0x7fc00000, 0x3800000},
4456{0x3800000, 0x7fc00000, 0xbf5a97c9, 0x7fc00000, 0x3800000},
4457{0x3800000, 0x7fc00000, 0xe6ff1a14, 0x7fc00000, 0x3800000},
4458{0x3800000, 0x7fc00000, 0x77f31e2f, 0x7fc00000, 0x3800000},
4459{0x3800000, 0x7fc00000, 0xaab4d7d8, 0x7fc00000, 0x3800000},
4460{0x3800000, 0x7fc00000, 0x966320b, 0x7fc00000, 0x3800000},
4461{0x3800000, 0x7fc00000, 0xb26bddee, 0x7fc00000, 0x3800000},
4462{0x3800000, 0x7fc00000, 0xb5c8e5d3, 0x7fc00000, 0x3800000},
4463{0x3800000, 0x7fc00000, 0x317285d3, 0x7fc00000, 0x3800000},
4464{0x3800000, 0x7fc00000, 0x3c9623b1, 0x7fc00000, 0x3800000},
4465{0x3800000, 0x7fc00000, 0x51fd2c7c, 0x7fc00000, 0x3800000},
4466{0x3800000, 0x7fc00000, 0x7b906a6c, 0x7fc00000, 0x3800000},
4467{0x3800000, 0x7fd9ba98, 0x0, 0x7fc00000, 0x3800000},
4468{0x3800000, 0x7fd9ba98, 0x1, 0x7fc00000, 0x3800080},
4469{0x3800000, 0x7fd9ba98, 0x76, 0x7fc00000, 0x3800080},
4470{0x3800000, 0x7fd9ba98, 0x2b94, 0x7fc00000, 0x3800080},
4471{0x3800000, 0x7fd9ba98, 0x636d24, 0x7fc00000, 0x3800080},
4472{0x3800000, 0x7fd9ba98, 0x7fffff, 0x7fc00000, 0x3800080},
4473{0x3800000, 0x7fd9ba98, 0x800000, 0x7fc00000, 0x3800000},
4474{0x3800000, 0x7fd9ba98, 0x800002, 0x7fc00000, 0x3800000},
4475{0x3800000, 0x7fd9ba98, 0x1398437, 0x7fc00000, 0x3800000},
4476{0x3800000, 0x7fd9ba98, 0xba98d27, 0x7fc00000, 0x3800000},
4477{0x3800000, 0x7fd9ba98, 0xba98d7a, 0x7fc00000, 0x3800000},
4478{0x3800000, 0x7fd9ba98, 0x751f853a, 0x7fc00000, 0x3800000},
4479{0x3800000, 0x7fd9ba98, 0x7f7ffff0, 0x7fc00000, 0x3800000},
4480{0x3800000, 0x7fd9ba98, 0x7f7fffff, 0x7fc00000, 0x3800000},
4481{0x3800000, 0x7fd9ba98, 0x7f800000, 0x7fc00000, 0x3800000},
4482{0x3800000, 0x7fd9ba98, 0x7f800001, 0x7fc00000, 0x3800001},
4483{0x3800000, 0x7fd9ba98, 0x7f984a37, 0x7fc00000, 0x3800001},
4484{0x3800000, 0x7fd9ba98, 0x7fbfffff, 0x7fc00000, 0x3800001},
4485{0x3800000, 0x7fd9ba98, 0x7fc00000, 0x7fc00000, 0x3800000},
4486{0x3800000, 0x7fd9ba98, 0x7fd9ba98, 0x7fc00000, 0x3800000},
4487{0x3800000, 0x7fd9ba98, 0x7fffffff, 0x7fc00000, 0x3800000},
4488{0x3800000, 0x7fd9ba98, 0x80000000, 0x7fc00000, 0x3800000},
4489{0x3800000, 0x7fd9ba98, 0x80000001, 0x7fc00000, 0x3800080},
4490{0x3800000, 0x7fd9ba98, 0x80000076, 0x7fc00000, 0x3800080},
4491{0x3800000, 0x7fd9ba98, 0x80002b94, 0x7fc00000, 0x3800080},
4492{0x3800000, 0x7fd9ba98, 0x80636d24, 0x7fc00000, 0x3800080},
4493{0x3800000, 0x7fd9ba98, 0x807fffff, 0x7fc00000, 0x3800080},
4494{0x3800000, 0x7fd9ba98, 0x80800000, 0x7fc00000, 0x3800000},
4495{0x3800000, 0x7fd9ba98, 0x80800002, 0x7fc00000, 0x3800000},
4496{0x3800000, 0x7fd9ba98, 0x81398437, 0x7fc00000, 0x3800000},
4497{0x3800000, 0x7fd9ba98, 0x8ba98d27, 0x7fc00000, 0x3800000},
4498{0x3800000, 0x7fd9ba98, 0x8ba98d7a, 0x7fc00000, 0x3800000},
4499{0x3800000, 0x7fd9ba98, 0xf51f853a, 0x7fc00000, 0x3800000},
4500{0x3800000, 0x7fd9ba98, 0xff7ffff0, 0x7fc00000, 0x3800000},
4501{0x3800000, 0x7fd9ba98, 0xff7fffff, 0x7fc00000, 0x3800000},
4502{0x3800000, 0x7fd9ba98, 0xff800000, 0x7fc00000, 0x3800000},
4503{0x3800000, 0x7fd9ba98, 0xff800001, 0x7fc00000, 0x3800001},
4504{0x3800000, 0x7fd9ba98, 0xff984a37, 0x7fc00000, 0x3800001},
4505{0x3800000, 0x7fd9ba98, 0xffbfffff, 0x7fc00000, 0x3800001},
4506{0x3800000, 0x7fd9ba98, 0xffc00000, 0x7fc00000, 0x3800000},
4507{0x3800000, 0x7fd9ba98, 0xffd9ba98, 0x7fc00000, 0x3800000},
4508{0x3800000, 0x7fd9ba98, 0xffffffff, 0x7fc00000, 0x3800000},
4509{0x3800000, 0x7fd9ba98, 0x4f3495cb, 0x7fc00000, 0x3800000},
4510{0x3800000, 0x7fd9ba98, 0xe73a5134, 0x7fc00000, 0x3800000},
4511{0x3800000, 0x7fd9ba98, 0x7c994e9e, 0x7fc00000, 0x3800000},
4512{0x3800000, 0x7fd9ba98, 0x6164bd6c, 0x7fc00000, 0x3800000},
4513{0x3800000, 0x7fd9ba98, 0x9503366, 0x7fc00000, 0x3800000},
4514{0x3800000, 0x7fd9ba98, 0xbf5a97c9, 0x7fc00000, 0x3800000},
4515{0x3800000, 0x7fd9ba98, 0xe6ff1a14, 0x7fc00000, 0x3800000},
4516{0x3800000, 0x7fd9ba98, 0x77f31e2f, 0x7fc00000, 0x3800000},
4517{0x3800000, 0x7fd9ba98, 0xaab4d7d8, 0x7fc00000, 0x3800000},
4518{0x3800000, 0x7fd9ba98, 0x966320b, 0x7fc00000, 0x3800000},
4519{0x3800000, 0x7fd9ba98, 0xb26bddee, 0x7fc00000, 0x3800000},
4520{0x3800000, 0x7fd9ba98, 0xb5c8e5d3, 0x7fc00000, 0x3800000},
4521{0x3800000, 0x7fd9ba98, 0x317285d3, 0x7fc00000, 0x3800000},
4522{0x3800000, 0x7fd9ba98, 0x3c9623b1, 0x7fc00000, 0x3800000},
4523{0x3800000, 0x7fd9ba98, 0x51fd2c7c, 0x7fc00000, 0x3800000},
4524{0x3800000, 0x7fd9ba98, 0x7b906a6c, 0x7fc00000, 0x3800000},
4525{0x3800000, 0x7fffffff, 0x0, 0x7fc00000, 0x3800000},
4526{0x3800000, 0x7fffffff, 0x1, 0x7fc00000, 0x3800080},
4527{0x3800000, 0x7fffffff, 0x76, 0x7fc00000, 0x3800080},
4528{0x3800000, 0x7fffffff, 0x2b94, 0x7fc00000, 0x3800080},
4529{0x3800000, 0x7fffffff, 0x636d24, 0x7fc00000, 0x3800080},
4530{0x3800000, 0x7fffffff, 0x7fffff, 0x7fc00000, 0x3800080},
4531{0x3800000, 0x7fffffff, 0x800000, 0x7fc00000, 0x3800000},
4532{0x3800000, 0x7fffffff, 0x800002, 0x7fc00000, 0x3800000},
4533{0x3800000, 0x7fffffff, 0x1398437, 0x7fc00000, 0x3800000},
4534{0x3800000, 0x7fffffff, 0xba98d27, 0x7fc00000, 0x3800000},
4535{0x3800000, 0x7fffffff, 0xba98d7a, 0x7fc00000, 0x3800000},
4536{0x3800000, 0x7fffffff, 0x751f853a, 0x7fc00000, 0x3800000},
4537{0x3800000, 0x7fffffff, 0x7f7ffff0, 0x7fc00000, 0x3800000},
4538{0x3800000, 0x7fffffff, 0x7f7fffff, 0x7fc00000, 0x3800000},
4539{0x3800000, 0x7fffffff, 0x7f800000, 0x7fc00000, 0x3800000},
4540{0x3800000, 0x7fffffff, 0x7f800001, 0x7fc00000, 0x3800001},
4541{0x3800000, 0x7fffffff, 0x7f984a37, 0x7fc00000, 0x3800001},
4542{0x3800000, 0x7fffffff, 0x7fbfffff, 0x7fc00000, 0x3800001},
4543{0x3800000, 0x7fffffff, 0x7fc00000, 0x7fc00000, 0x3800000},
4544{0x3800000, 0x7fffffff, 0x7fd9ba98, 0x7fc00000, 0x3800000},
4545{0x3800000, 0x7fffffff, 0x7fffffff, 0x7fc00000, 0x3800000},
4546{0x3800000, 0x7fffffff, 0x80000000, 0x7fc00000, 0x3800000},
4547{0x3800000, 0x7fffffff, 0x80000001, 0x7fc00000, 0x3800080},
4548{0x3800000, 0x7fffffff, 0x80000076, 0x7fc00000, 0x3800080},
4549{0x3800000, 0x7fffffff, 0x80002b94, 0x7fc00000, 0x3800080},
4550{0x3800000, 0x7fffffff, 0x80636d24, 0x7fc00000, 0x3800080},
4551{0x3800000, 0x7fffffff, 0x807fffff, 0x7fc00000, 0x3800080},
4552{0x3800000, 0x7fffffff, 0x80800000, 0x7fc00000, 0x3800000},
4553{0x3800000, 0x7fffffff, 0x80800002, 0x7fc00000, 0x3800000},
4554{0x3800000, 0x7fffffff, 0x81398437, 0x7fc00000, 0x3800000},
4555{0x3800000, 0x7fffffff, 0x8ba98d27, 0x7fc00000, 0x3800000},
4556{0x3800000, 0x7fffffff, 0x8ba98d7a, 0x7fc00000, 0x3800000},
4557{0x3800000, 0x7fffffff, 0xf51f853a, 0x7fc00000, 0x3800000},
4558{0x3800000, 0x7fffffff, 0xff7ffff0, 0x7fc00000, 0x3800000},
4559{0x3800000, 0x7fffffff, 0xff7fffff, 0x7fc00000, 0x3800000},
4560{0x3800000, 0x7fffffff, 0xff800000, 0x7fc00000, 0x3800000},
4561{0x3800000, 0x7fffffff, 0xff800001, 0x7fc00000, 0x3800001},
4562{0x3800000, 0x7fffffff, 0xff984a37, 0x7fc00000, 0x3800001},
4563{0x3800000, 0x7fffffff, 0xffbfffff, 0x7fc00000, 0x3800001},
4564{0x3800000, 0x7fffffff, 0xffc00000, 0x7fc00000, 0x3800000},
4565{0x3800000, 0x7fffffff, 0xffd9ba98, 0x7fc00000, 0x3800000},
4566{0x3800000, 0x7fffffff, 0xffffffff, 0x7fc00000, 0x3800000},
4567{0x3800000, 0x7fffffff, 0x4f3495cb, 0x7fc00000, 0x3800000},
4568{0x3800000, 0x7fffffff, 0xe73a5134, 0x7fc00000, 0x3800000},
4569{0x3800000, 0x7fffffff, 0x7c994e9e, 0x7fc00000, 0x3800000},
4570{0x3800000, 0x7fffffff, 0x6164bd6c, 0x7fc00000, 0x3800000},
4571{0x3800000, 0x7fffffff, 0x9503366, 0x7fc00000, 0x3800000},
4572{0x3800000, 0x7fffffff, 0xbf5a97c9, 0x7fc00000, 0x3800000},
4573{0x3800000, 0x7fffffff, 0xe6ff1a14, 0x7fc00000, 0x3800000},
4574{0x3800000, 0x7fffffff, 0x77f31e2f, 0x7fc00000, 0x3800000},
4575{0x3800000, 0x7fffffff, 0xaab4d7d8, 0x7fc00000, 0x3800000},
4576{0x3800000, 0x7fffffff, 0x966320b, 0x7fc00000, 0x3800000},
4577{0x3800000, 0x7fffffff, 0xb26bddee, 0x7fc00000, 0x3800000},
4578{0x3800000, 0x7fffffff, 0xb5c8e5d3, 0x7fc00000, 0x3800000},
4579{0x3800000, 0x7fffffff, 0x317285d3, 0x7fc00000, 0x3800000},
4580{0x3800000, 0x7fffffff, 0x3c9623b1, 0x7fc00000, 0x3800000},
4581{0x3800000, 0x7fffffff, 0x51fd2c7c, 0x7fc00000, 0x3800000},
4582{0x3800000, 0x7fffffff, 0x7b906a6c, 0x7fc00000, 0x3800000},
4583{0x3800000, 0x80000000, 0x0, 0x80000000, 0x3800000},
4584{0x3800000, 0x80000000, 0x1, 0x80000000, 0x3800080},
4585{0x3800000, 0x80000000, 0x76, 0x80000000, 0x3800080},
4586{0x3800000, 0x80000000, 0x2b94, 0x80000000, 0x3800080},
4587{0x3800000, 0x80000000, 0x636d24, 0x80000000, 0x3800080},
4588{0x3800000, 0x80000000, 0x7fffff, 0x80000000, 0x3800080},
4589{0x3800000, 0x80000000, 0x800000, 0x800000, 0x3800000},
4590{0x3800000, 0x80000000, 0x800002, 0x800002, 0x3800000},
4591{0x3800000, 0x80000000, 0x1398437, 0x1398437, 0x3800000},
4592{0x3800000, 0x80000000, 0xba98d27, 0xba98d27, 0x3800000},
4593{0x3800000, 0x80000000, 0xba98d7a, 0xba98d7a, 0x3800000},
4594{0x3800000, 0x80000000, 0x751f853a, 0x751f853a, 0x3800000},
4595{0x3800000, 0x80000000, 0x7f7ffff0, 0x7f7ffff0, 0x3800000},
4596{0x3800000, 0x80000000, 0x7f7fffff, 0x7f7fffff, 0x3800000},
4597{0x3800000, 0x80000000, 0x7f800000, 0x7f800000, 0x3800000},
4598{0x3800000, 0x80000000, 0x7f800001, 0x7fc00000, 0x3800001},
4599{0x3800000, 0x80000000, 0x7f984a37, 0x7fc00000, 0x3800001},
4600{0x3800000, 0x80000000, 0x7fbfffff, 0x7fc00000, 0x3800001},
4601{0x3800000, 0x80000000, 0x7fc00000, 0x7fc00000, 0x3800000},
4602{0x3800000, 0x80000000, 0x7fd9ba98, 0x7fc00000, 0x3800000},
4603{0x3800000, 0x80000000, 0x7fffffff, 0x7fc00000, 0x3800000},
4604{0x3800000, 0x80000000, 0x80000000, 0x80000000, 0x3800000},
4605{0x3800000, 0x80000000, 0x80000001, 0x80000000, 0x3800080},
4606{0x3800000, 0x80000000, 0x80000076, 0x80000000, 0x3800080},
4607{0x3800000, 0x80000000, 0x80002b94, 0x80000000, 0x3800080},
4608{0x3800000, 0x80000000, 0x80636d24, 0x80000000, 0x3800080},
4609{0x3800000, 0x80000000, 0x807fffff, 0x80000000, 0x3800080},
4610{0x3800000, 0x80000000, 0x80800000, 0x80800000, 0x3800000},
4611{0x3800000, 0x80000000, 0x80800002, 0x80800002, 0x3800000},
4612{0x3800000, 0x80000000, 0x81398437, 0x81398437, 0x3800000},
4613{0x3800000, 0x80000000, 0x8ba98d27, 0x8ba98d27, 0x3800000},
4614{0x3800000, 0x80000000, 0x8ba98d7a, 0x8ba98d7a, 0x3800000},
4615{0x3800000, 0x80000000, 0xf51f853a, 0xf51f853a, 0x3800000},
4616{0x3800000, 0x80000000, 0xff7ffff0, 0xff7ffff0, 0x3800000},
4617{0x3800000, 0x80000000, 0xff7fffff, 0xff7fffff, 0x3800000},
4618{0x3800000, 0x80000000, 0xff800000, 0xff800000, 0x3800000},
4619{0x3800000, 0x80000000, 0xff800001, 0x7fc00000, 0x3800001},
4620{0x3800000, 0x80000000, 0xff984a37, 0x7fc00000, 0x3800001},
4621{0x3800000, 0x80000000, 0xffbfffff, 0x7fc00000, 0x3800001},
4622{0x3800000, 0x80000000, 0xffc00000, 0x7fc00000, 0x3800000},
4623{0x3800000, 0x80000000, 0xffd9ba98, 0x7fc00000, 0x3800000},
4624{0x3800000, 0x80000000, 0xffffffff, 0x7fc00000, 0x3800000},
4625{0x3800000, 0x80000000, 0x4f3495cb, 0x4f3495cb, 0x3800000},
4626{0x3800000, 0x80000000, 0xe73a5134, 0xe73a5134, 0x3800000},
4627{0x3800000, 0x80000000, 0x7c994e9e, 0x7c994e9e, 0x3800000},
4628{0x3800000, 0x80000000, 0x6164bd6c, 0x6164bd6c, 0x3800000},
4629{0x3800000, 0x80000000, 0x9503366, 0x9503366, 0x3800000},
4630{0x3800000, 0x80000000, 0xbf5a97c9, 0xbf5a97c9, 0x3800000},
4631{0x3800000, 0x80000000, 0xe6ff1a14, 0xe6ff1a14, 0x3800000},
4632{0x3800000, 0x80000000, 0x77f31e2f, 0x77f31e2f, 0x3800000},
4633{0x3800000, 0x80000000, 0xaab4d7d8, 0xaab4d7d8, 0x3800000},
4634{0x3800000, 0x80000000, 0x966320b, 0x966320b, 0x3800000},
4635{0x3800000, 0x80000000, 0xb26bddee, 0xb26bddee, 0x3800000},
4636{0x3800000, 0x80000000, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800000},
4637{0x3800000, 0x80000000, 0x317285d3, 0x317285d3, 0x3800000},
4638{0x3800000, 0x80000000, 0x3c9623b1, 0x3c9623b1, 0x3800000},
4639{0x3800000, 0x80000000, 0x51fd2c7c, 0x51fd2c7c, 0x3800000},
4640{0x3800000, 0x80000000, 0x7b906a6c, 0x7b906a6c, 0x3800000},
4641{0x3800000, 0x80000001, 0x0, 0x0, 0x3800080},
4642{0x3800000, 0x80000001, 0x1, 0x0, 0x3800080},
4643{0x3800000, 0x80000001, 0x76, 0x0, 0x3800080},
4644{0x3800000, 0x80000001, 0x2b94, 0x0, 0x3800080},
4645{0x3800000, 0x80000001, 0x636d24, 0x0, 0x3800080},
4646{0x3800000, 0x80000001, 0x7fffff, 0x0, 0x3800080},
4647{0x3800000, 0x80000001, 0x800000, 0x800000, 0x3800080},
4648{0x3800000, 0x80000001, 0x800002, 0x800002, 0x3800080},
4649{0x3800000, 0x80000001, 0x1398437, 0x1398437, 0x3800080},
4650{0x3800000, 0x80000001, 0xba98d27, 0xba98d27, 0x3800080},
4651{0x3800000, 0x80000001, 0xba98d7a, 0xba98d7a, 0x3800080},
4652{0x3800000, 0x80000001, 0x751f853a, 0x751f853a, 0x3800080},
4653{0x3800000, 0x80000001, 0x7f7ffff0, 0x7f7ffff0, 0x3800080},
4654{0x3800000, 0x80000001, 0x7f7fffff, 0x7f7fffff, 0x3800080},
4655{0x3800000, 0x80000001, 0x7f800000, 0x7f800000, 0x3800080},
4656{0x3800000, 0x80000001, 0x7f800001, 0x7fc00000, 0x3800081},
4657{0x3800000, 0x80000001, 0x7f984a37, 0x7fc00000, 0x3800081},
4658{0x3800000, 0x80000001, 0x7fbfffff, 0x7fc00000, 0x3800081},
4659{0x3800000, 0x80000001, 0x7fc00000, 0x7fc00000, 0x3800080},
4660{0x3800000, 0x80000001, 0x7fd9ba98, 0x7fc00000, 0x3800080},
4661{0x3800000, 0x80000001, 0x7fffffff, 0x7fc00000, 0x3800080},
4662{0x3800000, 0x80000001, 0x80000000, 0x80000000, 0x3800080},
4663{0x3800000, 0x80000001, 0x80000001, 0x0, 0x3800080},
4664{0x3800000, 0x80000001, 0x80000076, 0x0, 0x3800080},
4665{0x3800000, 0x80000001, 0x80002b94, 0x0, 0x3800080},
4666{0x3800000, 0x80000001, 0x80636d24, 0x0, 0x3800080},
4667{0x3800000, 0x80000001, 0x807fffff, 0x0, 0x3800080},
4668{0x3800000, 0x80000001, 0x80800000, 0x80800000, 0x3800080},
4669{0x3800000, 0x80000001, 0x80800002, 0x80800002, 0x3800080},
4670{0x3800000, 0x80000001, 0x81398437, 0x81398437, 0x3800080},
4671{0x3800000, 0x80000001, 0x8ba98d27, 0x8ba98d27, 0x3800080},
4672{0x3800000, 0x80000001, 0x8ba98d7a, 0x8ba98d7a, 0x3800080},
4673{0x3800000, 0x80000001, 0xf51f853a, 0xf51f853a, 0x3800080},
4674{0x3800000, 0x80000001, 0xff7ffff0, 0xff7ffff0, 0x3800080},
4675{0x3800000, 0x80000001, 0xff7fffff, 0xff7fffff, 0x3800080},
4676{0x3800000, 0x80000001, 0xff800000, 0xff800000, 0x3800080},
4677{0x3800000, 0x80000001, 0xff800001, 0x7fc00000, 0x3800081},
4678{0x3800000, 0x80000001, 0xff984a37, 0x7fc00000, 0x3800081},
4679{0x3800000, 0x80000001, 0xffbfffff, 0x7fc00000, 0x3800081},
4680{0x3800000, 0x80000001, 0xffc00000, 0x7fc00000, 0x3800080},
4681{0x3800000, 0x80000001, 0xffd9ba98, 0x7fc00000, 0x3800080},
4682{0x3800000, 0x80000001, 0xffffffff, 0x7fc00000, 0x3800080},
4683{0x3800000, 0x80000001, 0x4f3495cb, 0x4f3495cb, 0x3800080},
4684{0x3800000, 0x80000001, 0xe73a5134, 0xe73a5134, 0x3800080},
4685{0x3800000, 0x80000001, 0x7c994e9e, 0x7c994e9e, 0x3800080},
4686{0x3800000, 0x80000001, 0x6164bd6c, 0x6164bd6c, 0x3800080},
4687{0x3800000, 0x80000001, 0x9503366, 0x9503366, 0x3800080},
4688{0x3800000, 0x80000001, 0xbf5a97c9, 0xbf5a97c9, 0x3800080},
4689{0x3800000, 0x80000001, 0xe6ff1a14, 0xe6ff1a14, 0x3800080},
4690{0x3800000, 0x80000001, 0x77f31e2f, 0x77f31e2f, 0x3800080},
4691{0x3800000, 0x80000001, 0xaab4d7d8, 0xaab4d7d8, 0x3800080},
4692{0x3800000, 0x80000001, 0x966320b, 0x966320b, 0x3800080},
4693{0x3800000, 0x80000001, 0xb26bddee, 0xb26bddee, 0x3800080},
4694{0x3800000, 0x80000001, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800080},
4695{0x3800000, 0x80000001, 0x317285d3, 0x317285d3, 0x3800080},
4696{0x3800000, 0x80000001, 0x3c9623b1, 0x3c9623b1, 0x3800080},
4697{0x3800000, 0x80000001, 0x51fd2c7c, 0x51fd2c7c, 0x3800080},
4698{0x3800000, 0x80000001, 0x7b906a6c, 0x7b906a6c, 0x3800080},
4699{0x3800000, 0x80000076, 0x0, 0x0, 0x3800080},
4700{0x3800000, 0x80000076, 0x1, 0x0, 0x3800080},
4701{0x3800000, 0x80000076, 0x76, 0x0, 0x3800080},
4702{0x3800000, 0x80000076, 0x2b94, 0x0, 0x3800080},
4703{0x3800000, 0x80000076, 0x636d24, 0x0, 0x3800080},
4704{0x3800000, 0x80000076, 0x7fffff, 0x0, 0x3800080},
4705{0x3800000, 0x80000076, 0x800000, 0x800000, 0x3800080},
4706{0x3800000, 0x80000076, 0x800002, 0x800002, 0x3800080},
4707{0x3800000, 0x80000076, 0x1398437, 0x1398437, 0x3800080},
4708{0x3800000, 0x80000076, 0xba98d27, 0xba98d27, 0x3800080},
4709{0x3800000, 0x80000076, 0xba98d7a, 0xba98d7a, 0x3800080},
4710{0x3800000, 0x80000076, 0x751f853a, 0x751f853a, 0x3800080},
4711{0x3800000, 0x80000076, 0x7f7ffff0, 0x7f7ffff0, 0x3800080},
4712{0x3800000, 0x80000076, 0x7f7fffff, 0x7f7fffff, 0x3800080},
4713{0x3800000, 0x80000076, 0x7f800000, 0x7f800000, 0x3800080},
4714{0x3800000, 0x80000076, 0x7f800001, 0x7fc00000, 0x3800081},
4715{0x3800000, 0x80000076, 0x7f984a37, 0x7fc00000, 0x3800081},
4716{0x3800000, 0x80000076, 0x7fbfffff, 0x7fc00000, 0x3800081},
4717{0x3800000, 0x80000076, 0x7fc00000, 0x7fc00000, 0x3800080},
4718{0x3800000, 0x80000076, 0x7fd9ba98, 0x7fc00000, 0x3800080},
4719{0x3800000, 0x80000076, 0x7fffffff, 0x7fc00000, 0x3800080},
4720{0x3800000, 0x80000076, 0x80000000, 0x80000000, 0x3800080},
4721{0x3800000, 0x80000076, 0x80000001, 0x0, 0x3800080},
4722{0x3800000, 0x80000076, 0x80000076, 0x0, 0x3800080},
4723{0x3800000, 0x80000076, 0x80002b94, 0x0, 0x3800080},
4724{0x3800000, 0x80000076, 0x80636d24, 0x0, 0x3800080},
4725{0x3800000, 0x80000076, 0x807fffff, 0x0, 0x3800080},
4726{0x3800000, 0x80000076, 0x80800000, 0x80800000, 0x3800080},
4727{0x3800000, 0x80000076, 0x80800002, 0x80800002, 0x3800080},
4728{0x3800000, 0x80000076, 0x81398437, 0x81398437, 0x3800080},
4729{0x3800000, 0x80000076, 0x8ba98d27, 0x8ba98d27, 0x3800080},
4730{0x3800000, 0x80000076, 0x8ba98d7a, 0x8ba98d7a, 0x3800080},
4731{0x3800000, 0x80000076, 0xf51f853a, 0xf51f853a, 0x3800080},
4732{0x3800000, 0x80000076, 0xff7ffff0, 0xff7ffff0, 0x3800080},
4733{0x3800000, 0x80000076, 0xff7fffff, 0xff7fffff, 0x3800080},
4734{0x3800000, 0x80000076, 0xff800000, 0xff800000, 0x3800080},
4735{0x3800000, 0x80000076, 0xff800001, 0x7fc00000, 0x3800081},
4736{0x3800000, 0x80000076, 0xff984a37, 0x7fc00000, 0x3800081},
4737{0x3800000, 0x80000076, 0xffbfffff, 0x7fc00000, 0x3800081},
4738{0x3800000, 0x80000076, 0xffc00000, 0x7fc00000, 0x3800080},
4739{0x3800000, 0x80000076, 0xffd9ba98, 0x7fc00000, 0x3800080},
4740{0x3800000, 0x80000076, 0xffffffff, 0x7fc00000, 0x3800080},
4741{0x3800000, 0x80000076, 0x4f3495cb, 0x4f3495cb, 0x3800080},
4742{0x3800000, 0x80000076, 0xe73a5134, 0xe73a5134, 0x3800080},
4743{0x3800000, 0x80000076, 0x7c994e9e, 0x7c994e9e, 0x3800080},
4744{0x3800000, 0x80000076, 0x6164bd6c, 0x6164bd6c, 0x3800080},
4745{0x3800000, 0x80000076, 0x9503366, 0x9503366, 0x3800080},
4746{0x3800000, 0x80000076, 0xbf5a97c9, 0xbf5a97c9, 0x3800080},
4747{0x3800000, 0x80000076, 0xe6ff1a14, 0xe6ff1a14, 0x3800080},
4748{0x3800000, 0x80000076, 0x77f31e2f, 0x77f31e2f, 0x3800080},
4749{0x3800000, 0x80000076, 0xaab4d7d8, 0xaab4d7d8, 0x3800080},
4750{0x3800000, 0x80000076, 0x966320b, 0x966320b, 0x3800080},
4751{0x3800000, 0x80000076, 0xb26bddee, 0xb26bddee, 0x3800080},
4752{0x3800000, 0x80000076, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800080},
4753{0x3800000, 0x80000076, 0x317285d3, 0x317285d3, 0x3800080},
4754{0x3800000, 0x80000076, 0x3c9623b1, 0x3c9623b1, 0x3800080},
4755{0x3800000, 0x80000076, 0x51fd2c7c, 0x51fd2c7c, 0x3800080},
4756{0x3800000, 0x80000076, 0x7b906a6c, 0x7b906a6c, 0x3800080},
4757{0x3800000, 0x80002b94, 0x0, 0x0, 0x3800080},
4758{0x3800000, 0x80002b94, 0x1, 0x0, 0x3800080},
4759{0x3800000, 0x80002b94, 0x76, 0x0, 0x3800080},
4760{0x3800000, 0x80002b94, 0x2b94, 0x0, 0x3800080},
4761{0x3800000, 0x80002b94, 0x636d24, 0x0, 0x3800080},
4762{0x3800000, 0x80002b94, 0x7fffff, 0x0, 0x3800080},
4763{0x3800000, 0x80002b94, 0x800000, 0x800000, 0x3800080},
4764{0x3800000, 0x80002b94, 0x800002, 0x800002, 0x3800080},
4765{0x3800000, 0x80002b94, 0x1398437, 0x1398437, 0x3800080},
4766{0x3800000, 0x80002b94, 0xba98d27, 0xba98d27, 0x3800080},
4767{0x3800000, 0x80002b94, 0xba98d7a, 0xba98d7a, 0x3800080},
4768{0x3800000, 0x80002b94, 0x751f853a, 0x751f853a, 0x3800080},
4769{0x3800000, 0x80002b94, 0x7f7ffff0, 0x7f7ffff0, 0x3800080},
4770{0x3800000, 0x80002b94, 0x7f7fffff, 0x7f7fffff, 0x3800080},
4771{0x3800000, 0x80002b94, 0x7f800000, 0x7f800000, 0x3800080},
4772{0x3800000, 0x80002b94, 0x7f800001, 0x7fc00000, 0x3800081},
4773{0x3800000, 0x80002b94, 0x7f984a37, 0x7fc00000, 0x3800081},
4774{0x3800000, 0x80002b94, 0x7fbfffff, 0x7fc00000, 0x3800081},
4775{0x3800000, 0x80002b94, 0x7fc00000, 0x7fc00000, 0x3800080},
4776{0x3800000, 0x80002b94, 0x7fd9ba98, 0x7fc00000, 0x3800080},
4777{0x3800000, 0x80002b94, 0x7fffffff, 0x7fc00000, 0x3800080},
4778{0x3800000, 0x80002b94, 0x80000000, 0x80000000, 0x3800080},
4779{0x3800000, 0x80002b94, 0x80000001, 0x0, 0x3800080},
4780{0x3800000, 0x80002b94, 0x80000076, 0x0, 0x3800080},
4781{0x3800000, 0x80002b94, 0x80002b94, 0x0, 0x3800080},
4782{0x3800000, 0x80002b94, 0x80636d24, 0x0, 0x3800080},
4783{0x3800000, 0x80002b94, 0x807fffff, 0x0, 0x3800080},
4784{0x3800000, 0x80002b94, 0x80800000, 0x80800000, 0x3800080},
4785{0x3800000, 0x80002b94, 0x80800002, 0x80800002, 0x3800080},
4786{0x3800000, 0x80002b94, 0x81398437, 0x81398437, 0x3800080},
4787{0x3800000, 0x80002b94, 0x8ba98d27, 0x8ba98d27, 0x3800080},
4788{0x3800000, 0x80002b94, 0x8ba98d7a, 0x8ba98d7a, 0x3800080},
4789{0x3800000, 0x80002b94, 0xf51f853a, 0xf51f853a, 0x3800080},
4790{0x3800000, 0x80002b94, 0xff7ffff0, 0xff7ffff0, 0x3800080},
4791{0x3800000, 0x80002b94, 0xff7fffff, 0xff7fffff, 0x3800080},
4792{0x3800000, 0x80002b94, 0xff800000, 0xff800000, 0x3800080},
4793{0x3800000, 0x80002b94, 0xff800001, 0x7fc00000, 0x3800081},
4794{0x3800000, 0x80002b94, 0xff984a37, 0x7fc00000, 0x3800081},
4795{0x3800000, 0x80002b94, 0xffbfffff, 0x7fc00000, 0x3800081},
4796{0x3800000, 0x80002b94, 0xffc00000, 0x7fc00000, 0x3800080},
4797{0x3800000, 0x80002b94, 0xffd9ba98, 0x7fc00000, 0x3800080},
4798{0x3800000, 0x80002b94, 0xffffffff, 0x7fc00000, 0x3800080},
4799{0x3800000, 0x80002b94, 0x4f3495cb, 0x4f3495cb, 0x3800080},
4800{0x3800000, 0x80002b94, 0xe73a5134, 0xe73a5134, 0x3800080},
4801{0x3800000, 0x80002b94, 0x7c994e9e, 0x7c994e9e, 0x3800080},
4802{0x3800000, 0x80002b94, 0x6164bd6c, 0x6164bd6c, 0x3800080},
4803{0x3800000, 0x80002b94, 0x9503366, 0x9503366, 0x3800080},
4804{0x3800000, 0x80002b94, 0xbf5a97c9, 0xbf5a97c9, 0x3800080},
4805{0x3800000, 0x80002b94, 0xe6ff1a14, 0xe6ff1a14, 0x3800080},
4806{0x3800000, 0x80002b94, 0x77f31e2f, 0x77f31e2f, 0x3800080},
4807{0x3800000, 0x80002b94, 0xaab4d7d8, 0xaab4d7d8, 0x3800080},
4808{0x3800000, 0x80002b94, 0x966320b, 0x966320b, 0x3800080},
4809{0x3800000, 0x80002b94, 0xb26bddee, 0xb26bddee, 0x3800080},
4810{0x3800000, 0x80002b94, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800080},
4811{0x3800000, 0x80002b94, 0x317285d3, 0x317285d3, 0x3800080},
4812{0x3800000, 0x80002b94, 0x3c9623b1, 0x3c9623b1, 0x3800080},
4813{0x3800000, 0x80002b94, 0x51fd2c7c, 0x51fd2c7c, 0x3800080},
4814{0x3800000, 0x80002b94, 0x7b906a6c, 0x7b906a6c, 0x3800080},
4815{0x3800000, 0x80636d24, 0x0, 0x0, 0x3800080},
4816{0x3800000, 0x80636d24, 0x1, 0x0, 0x3800080},
4817{0x3800000, 0x80636d24, 0x76, 0x0, 0x3800080},
4818{0x3800000, 0x80636d24, 0x2b94, 0x0, 0x3800080},
4819{0x3800000, 0x80636d24, 0x636d24, 0x0, 0x3800080},
4820{0x3800000, 0x80636d24, 0x7fffff, 0x0, 0x3800080},
4821{0x3800000, 0x80636d24, 0x800000, 0x800000, 0x3800080},
4822{0x3800000, 0x80636d24, 0x800002, 0x800002, 0x3800080},
4823{0x3800000, 0x80636d24, 0x1398437, 0x1398437, 0x3800080},
4824{0x3800000, 0x80636d24, 0xba98d27, 0xba98d27, 0x3800080},
4825{0x3800000, 0x80636d24, 0xba98d7a, 0xba98d7a, 0x3800080},
4826{0x3800000, 0x80636d24, 0x751f853a, 0x751f853a, 0x3800080},
4827{0x3800000, 0x80636d24, 0x7f7ffff0, 0x7f7ffff0, 0x3800080},
4828{0x3800000, 0x80636d24, 0x7f7fffff, 0x7f7fffff, 0x3800080},
4829{0x3800000, 0x80636d24, 0x7f800000, 0x7f800000, 0x3800080},
4830{0x3800000, 0x80636d24, 0x7f800001, 0x7fc00000, 0x3800081},
4831{0x3800000, 0x80636d24, 0x7f984a37, 0x7fc00000, 0x3800081},
4832{0x3800000, 0x80636d24, 0x7fbfffff, 0x7fc00000, 0x3800081},
4833{0x3800000, 0x80636d24, 0x7fc00000, 0x7fc00000, 0x3800080},
4834{0x3800000, 0x80636d24, 0x7fd9ba98, 0x7fc00000, 0x3800080},
4835{0x3800000, 0x80636d24, 0x7fffffff, 0x7fc00000, 0x3800080},
4836{0x3800000, 0x80636d24, 0x80000000, 0x80000000, 0x3800080},
4837{0x3800000, 0x80636d24, 0x80000001, 0x0, 0x3800080},
4838{0x3800000, 0x80636d24, 0x80000076, 0x0, 0x3800080},
4839{0x3800000, 0x80636d24, 0x80002b94, 0x0, 0x3800080},
4840{0x3800000, 0x80636d24, 0x80636d24, 0x0, 0x3800080},
4841{0x3800000, 0x80636d24, 0x807fffff, 0x0, 0x3800080},
4842{0x3800000, 0x80636d24, 0x80800000, 0x80800000, 0x3800080},
4843{0x3800000, 0x80636d24, 0x80800002, 0x80800002, 0x3800080},
4844{0x3800000, 0x80636d24, 0x81398437, 0x81398437, 0x3800080},
4845{0x3800000, 0x80636d24, 0x8ba98d27, 0x8ba98d27, 0x3800080},
4846{0x3800000, 0x80636d24, 0x8ba98d7a, 0x8ba98d7a, 0x3800080},
4847{0x3800000, 0x80636d24, 0xf51f853a, 0xf51f853a, 0x3800080},
4848{0x3800000, 0x80636d24, 0xff7ffff0, 0xff7ffff0, 0x3800080},
4849{0x3800000, 0x80636d24, 0xff7fffff, 0xff7fffff, 0x3800080},
4850{0x3800000, 0x80636d24, 0xff800000, 0xff800000, 0x3800080},
4851{0x3800000, 0x80636d24, 0xff800001, 0x7fc00000, 0x3800081},
4852{0x3800000, 0x80636d24, 0xff984a37, 0x7fc00000, 0x3800081},
4853{0x3800000, 0x80636d24, 0xffbfffff, 0x7fc00000, 0x3800081},
4854{0x3800000, 0x80636d24, 0xffc00000, 0x7fc00000, 0x3800080},
4855{0x3800000, 0x80636d24, 0xffd9ba98, 0x7fc00000, 0x3800080},
4856{0x3800000, 0x80636d24, 0xffffffff, 0x7fc00000, 0x3800080},
4857{0x3800000, 0x80636d24, 0x4f3495cb, 0x4f3495cb, 0x3800080},
4858{0x3800000, 0x80636d24, 0xe73a5134, 0xe73a5134, 0x3800080},
4859{0x3800000, 0x80636d24, 0x7c994e9e, 0x7c994e9e, 0x3800080},
4860{0x3800000, 0x80636d24, 0x6164bd6c, 0x6164bd6c, 0x3800080},
4861{0x3800000, 0x80636d24, 0x9503366, 0x9503366, 0x3800080},
4862{0x3800000, 0x80636d24, 0xbf5a97c9, 0xbf5a97c9, 0x3800080},
4863{0x3800000, 0x80636d24, 0xe6ff1a14, 0xe6ff1a14, 0x3800080},
4864{0x3800000, 0x80636d24, 0x77f31e2f, 0x77f31e2f, 0x3800080},
4865{0x3800000, 0x80636d24, 0xaab4d7d8, 0xaab4d7d8, 0x3800080},
4866{0x3800000, 0x80636d24, 0x966320b, 0x966320b, 0x3800080},
4867{0x3800000, 0x80636d24, 0xb26bddee, 0xb26bddee, 0x3800080},
4868{0x3800000, 0x80636d24, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800080},
4869{0x3800000, 0x80636d24, 0x317285d3, 0x317285d3, 0x3800080},
4870{0x3800000, 0x80636d24, 0x3c9623b1, 0x3c9623b1, 0x3800080},
4871{0x3800000, 0x80636d24, 0x51fd2c7c, 0x51fd2c7c, 0x3800080},
4872{0x3800000, 0x80636d24, 0x7b906a6c, 0x7b906a6c, 0x3800080},
4873{0x3800000, 0x807fffff, 0x0, 0x0, 0x3800080},
4874{0x3800000, 0x807fffff, 0x1, 0x0, 0x3800080},
4875{0x3800000, 0x807fffff, 0x76, 0x0, 0x3800080},
4876{0x3800000, 0x807fffff, 0x2b94, 0x0, 0x3800080},
4877{0x3800000, 0x807fffff, 0x636d24, 0x0, 0x3800080},
4878{0x3800000, 0x807fffff, 0x7fffff, 0x0, 0x3800080},
4879{0x3800000, 0x807fffff, 0x800000, 0x800000, 0x3800080},
4880{0x3800000, 0x807fffff, 0x800002, 0x800002, 0x3800080},
4881{0x3800000, 0x807fffff, 0x1398437, 0x1398437, 0x3800080},
4882{0x3800000, 0x807fffff, 0xba98d27, 0xba98d27, 0x3800080},
4883{0x3800000, 0x807fffff, 0xba98d7a, 0xba98d7a, 0x3800080},
4884{0x3800000, 0x807fffff, 0x751f853a, 0x751f853a, 0x3800080},
4885{0x3800000, 0x807fffff, 0x7f7ffff0, 0x7f7ffff0, 0x3800080},
4886{0x3800000, 0x807fffff, 0x7f7fffff, 0x7f7fffff, 0x3800080},
4887{0x3800000, 0x807fffff, 0x7f800000, 0x7f800000, 0x3800080},
4888{0x3800000, 0x807fffff, 0x7f800001, 0x7fc00000, 0x3800081},
4889{0x3800000, 0x807fffff, 0x7f984a37, 0x7fc00000, 0x3800081},
4890{0x3800000, 0x807fffff, 0x7fbfffff, 0x7fc00000, 0x3800081},
4891{0x3800000, 0x807fffff, 0x7fc00000, 0x7fc00000, 0x3800080},
4892{0x3800000, 0x807fffff, 0x7fd9ba98, 0x7fc00000, 0x3800080},
4893{0x3800000, 0x807fffff, 0x7fffffff, 0x7fc00000, 0x3800080},
4894{0x3800000, 0x807fffff, 0x80000000, 0x80000000, 0x3800080},
4895{0x3800000, 0x807fffff, 0x80000001, 0x0, 0x3800080},
4896{0x3800000, 0x807fffff, 0x80000076, 0x0, 0x3800080},
4897{0x3800000, 0x807fffff, 0x80002b94, 0x0, 0x3800080},
4898{0x3800000, 0x807fffff, 0x80636d24, 0x0, 0x3800080},
4899{0x3800000, 0x807fffff, 0x807fffff, 0x0, 0x3800080},
4900{0x3800000, 0x807fffff, 0x80800000, 0x80800000, 0x3800080},
4901{0x3800000, 0x807fffff, 0x80800002, 0x80800002, 0x3800080},
4902{0x3800000, 0x807fffff, 0x81398437, 0x81398437, 0x3800080},
4903{0x3800000, 0x807fffff, 0x8ba98d27, 0x8ba98d27, 0x3800080},
4904{0x3800000, 0x807fffff, 0x8ba98d7a, 0x8ba98d7a, 0x3800080},
4905{0x3800000, 0x807fffff, 0xf51f853a, 0xf51f853a, 0x3800080},
4906{0x3800000, 0x807fffff, 0xff7ffff0, 0xff7ffff0, 0x3800080},
4907{0x3800000, 0x807fffff, 0xff7fffff, 0xff7fffff, 0x3800080},
4908{0x3800000, 0x807fffff, 0xff800000, 0xff800000, 0x3800080},
4909{0x3800000, 0x807fffff, 0xff800001, 0x7fc00000, 0x3800081},
4910{0x3800000, 0x807fffff, 0xff984a37, 0x7fc00000, 0x3800081},
4911{0x3800000, 0x807fffff, 0xffbfffff, 0x7fc00000, 0x3800081},
4912{0x3800000, 0x807fffff, 0xffc00000, 0x7fc00000, 0x3800080},
4913{0x3800000, 0x807fffff, 0xffd9ba98, 0x7fc00000, 0x3800080},
4914{0x3800000, 0x807fffff, 0xffffffff, 0x7fc00000, 0x3800080},
4915{0x3800000, 0x807fffff, 0x4f3495cb, 0x4f3495cb, 0x3800080},
4916{0x3800000, 0x807fffff, 0xe73a5134, 0xe73a5134, 0x3800080},
4917{0x3800000, 0x807fffff, 0x7c994e9e, 0x7c994e9e, 0x3800080},
4918{0x3800000, 0x807fffff, 0x6164bd6c, 0x6164bd6c, 0x3800080},
4919{0x3800000, 0x807fffff, 0x9503366, 0x9503366, 0x3800080},
4920{0x3800000, 0x807fffff, 0xbf5a97c9, 0xbf5a97c9, 0x3800080},
4921{0x3800000, 0x807fffff, 0xe6ff1a14, 0xe6ff1a14, 0x3800080},
4922{0x3800000, 0x807fffff, 0x77f31e2f, 0x77f31e2f, 0x3800080},
4923{0x3800000, 0x807fffff, 0xaab4d7d8, 0xaab4d7d8, 0x3800080},
4924{0x3800000, 0x807fffff, 0x966320b, 0x966320b, 0x3800080},
4925{0x3800000, 0x807fffff, 0xb26bddee, 0xb26bddee, 0x3800080},
4926{0x3800000, 0x807fffff, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800080},
4927{0x3800000, 0x807fffff, 0x317285d3, 0x317285d3, 0x3800080},
4928{0x3800000, 0x807fffff, 0x3c9623b1, 0x3c9623b1, 0x3800080},
4929{0x3800000, 0x807fffff, 0x51fd2c7c, 0x51fd2c7c, 0x3800080},
4930{0x3800000, 0x807fffff, 0x7b906a6c, 0x7b906a6c, 0x3800080},
4931{0x3800000, 0x80800000, 0x0, 0x80800000, 0x3800000},
4932{0x3800000, 0x80800000, 0x1, 0x80800000, 0x3800080},
4933{0x3800000, 0x80800000, 0x76, 0x80800000, 0x3800080},
4934{0x3800000, 0x80800000, 0x2b94, 0x80800000, 0x3800080},
4935{0x3800000, 0x80800000, 0x636d24, 0x80800000, 0x3800080},
4936{0x3800000, 0x80800000, 0x7fffff, 0x80800000, 0x3800080},
4937{0x3800000, 0x80800000, 0x800000, 0x80000000, 0x3800000},
4938{0x3800000, 0x80800000, 0x800002, 0x0, 0x3800008},
4939{0x3800000, 0x80800000, 0x1398437, 0xf3086e, 0x3800000},
4940{0x3800000, 0x80800000, 0xba98d27, 0xba98d25, 0x3800000},
4941{0x3800000, 0x80800000, 0xba98d7a, 0xba98d78, 0x3800000},
4942{0x3800000, 0x80800000, 0x751f853a, 0x751f8539, 0x3800010},
4943{0x3800000, 0x80800000, 0x7f7ffff0, 0x7f7fffef, 0x3800010},
4944{0x3800000, 0x80800000, 0x7f7fffff, 0x7f7ffffe, 0x3800010},
4945{0x3800000, 0x80800000, 0x7f800000, 0x7f800000, 0x3800000},
4946{0x3800000, 0x80800000, 0x7f800001, 0x7fc00000, 0x3800001},
4947{0x3800000, 0x80800000, 0x7f984a37, 0x7fc00000, 0x3800001},
4948{0x3800000, 0x80800000, 0x7fbfffff, 0x7fc00000, 0x3800001},
4949{0x3800000, 0x80800000, 0x7fc00000, 0x7fc00000, 0x3800000},
4950{0x3800000, 0x80800000, 0x7fd9ba98, 0x7fc00000, 0x3800000},
4951{0x3800000, 0x80800000, 0x7fffffff, 0x7fc00000, 0x3800000},
4952{0x3800000, 0x80800000, 0x80000000, 0x80800000, 0x3800000},
4953{0x3800000, 0x80800000, 0x80000001, 0x80800000, 0x3800080},
4954{0x3800000, 0x80800000, 0x80000076, 0x80800000, 0x3800080},
4955{0x3800000, 0x80800000, 0x80002b94, 0x80800000, 0x3800080},
4956{0x3800000, 0x80800000, 0x80636d24, 0x80800000, 0x3800080},
4957{0x3800000, 0x80800000, 0x807fffff, 0x80800000, 0x3800080},
4958{0x3800000, 0x80800000, 0x80800000, 0x81000000, 0x3800000},
4959{0x3800000, 0x80800000, 0x80800002, 0x81000001, 0x3800000},
4960{0x3800000, 0x80800000, 0x81398437, 0x81798437, 0x3800000},
4961{0x3800000, 0x80800000, 0x8ba98d27, 0x8ba98d29, 0x3800000},
4962{0x3800000, 0x80800000, 0x8ba98d7a, 0x8ba98d7c, 0x3800000},
4963{0x3800000, 0x80800000, 0xf51f853a, 0xf51f853b, 0x3800010},
4964{0x3800000, 0x80800000, 0xff7ffff0, 0xff7ffff1, 0x3800010},
4965{0x3800000, 0x80800000, 0xff7fffff, 0xff800000, 0x3800014},
4966{0x3800000, 0x80800000, 0xff800000, 0xff800000, 0x3800000},
4967{0x3800000, 0x80800000, 0xff800001, 0x7fc00000, 0x3800001},
4968{0x3800000, 0x80800000, 0xff984a37, 0x7fc00000, 0x3800001},
4969{0x3800000, 0x80800000, 0xffbfffff, 0x7fc00000, 0x3800001},
4970{0x3800000, 0x80800000, 0xffc00000, 0x7fc00000, 0x3800000},
4971{0x3800000, 0x80800000, 0xffd9ba98, 0x7fc00000, 0x3800000},
4972{0x3800000, 0x80800000, 0xffffffff, 0x7fc00000, 0x3800000},
4973{0x3800000, 0x80800000, 0x4f3495cb, 0x4f3495ca, 0x3800010},
4974{0x3800000, 0x80800000, 0xe73a5134, 0xe73a5135, 0x3800010},
4975{0x3800000, 0x80800000, 0x7c994e9e, 0x7c994e9d, 0x3800010},
4976{0x3800000, 0x80800000, 0x6164bd6c, 0x6164bd6b, 0x3800010},
4977{0x3800000, 0x80800000, 0x9503366, 0x9503326, 0x3800000},
4978{0x3800000, 0x80800000, 0xbf5a97c9, 0xbf5a97ca, 0x3800010},
4979{0x3800000, 0x80800000, 0xe6ff1a14, 0xe6ff1a15, 0x3800010},
4980{0x3800000, 0x80800000, 0x77f31e2f, 0x77f31e2e, 0x3800010},
4981{0x3800000, 0x80800000, 0xaab4d7d8, 0xaab4d7d9, 0x3800010},
4982{0x3800000, 0x80800000, 0x966320b, 0x96631cb, 0x3800000},
4983{0x3800000, 0x80800000, 0xb26bddee, 0xb26bddef, 0x3800010},
4984{0x3800000, 0x80800000, 0xb5c8e5d3, 0xb5c8e5d4, 0x3800010},
4985{0x3800000, 0x80800000, 0x317285d3, 0x317285d2, 0x3800010},
4986{0x3800000, 0x80800000, 0x3c9623b1, 0x3c9623b0, 0x3800010},
4987{0x3800000, 0x80800000, 0x51fd2c7c, 0x51fd2c7b, 0x3800010},
4988{0x3800000, 0x80800000, 0x7b906a6c, 0x7b906a6b, 0x3800010},
4989{0x3800000, 0x80800002, 0x0, 0x80800002, 0x3800000},
4990{0x3800000, 0x80800002, 0x1, 0x80800002, 0x3800080},
4991{0x3800000, 0x80800002, 0x76, 0x80800002, 0x3800080},
4992{0x3800000, 0x80800002, 0x2b94, 0x80800002, 0x3800080},
4993{0x3800000, 0x80800002, 0x636d24, 0x80800002, 0x3800080},
4994{0x3800000, 0x80800002, 0x7fffff, 0x80800002, 0x3800080},
4995{0x3800000, 0x80800002, 0x800000, 0x0, 0x3800008},
4996{0x3800000, 0x80800002, 0x800002, 0x80000000, 0x3800000},
4997{0x3800000, 0x80800002, 0x1398437, 0xf3086c, 0x3800000},
4998{0x3800000, 0x80800002, 0xba98d27, 0xba98d24, 0x3800010},
4999{0x3800000, 0x80800002, 0xba98d7a, 0xba98d77, 0x3800010},
5000{0x3800000, 0x80800002, 0x751f853a, 0x751f8539, 0x3800010},
5001{0x3800000, 0x80800002, 0x7f7ffff0, 0x7f7fffef, 0x3800010},
5002{0x3800000, 0x80800002, 0x7f7fffff, 0x7f7ffffe, 0x3800010},
5003{0x3800000, 0x80800002, 0x7f800000, 0x7f800000, 0x3800000},
5004{0x3800000, 0x80800002, 0x7f800001, 0x7fc00000, 0x3800001},
5005{0x3800000, 0x80800002, 0x7f984a37, 0x7fc00000, 0x3800001},
5006{0x3800000, 0x80800002, 0x7fbfffff, 0x7fc00000, 0x3800001},
5007{0x3800000, 0x80800002, 0x7fc00000, 0x7fc00000, 0x3800000},
5008{0x3800000, 0x80800002, 0x7fd9ba98, 0x7fc00000, 0x3800000},
5009{0x3800000, 0x80800002, 0x7fffffff, 0x7fc00000, 0x3800000},
5010{0x3800000, 0x80800002, 0x80000000, 0x80800002, 0x3800000},
5011{0x3800000, 0x80800002, 0x80000001, 0x80800002, 0x3800080},
5012{0x3800000, 0x80800002, 0x80000076, 0x80800002, 0x3800080},
5013{0x3800000, 0x80800002, 0x80002b94, 0x80800002, 0x3800080},
5014{0x3800000, 0x80800002, 0x80636d24, 0x80800002, 0x3800080},
5015{0x3800000, 0x80800002, 0x807fffff, 0x80800002, 0x3800080},
5016{0x3800000, 0x80800002, 0x80800000, 0x81000001, 0x3800000},
5017{0x3800000, 0x80800002, 0x80800002, 0x81000002, 0x3800000},
5018{0x3800000, 0x80800002, 0x81398437, 0x81798438, 0x3800000},
5019{0x3800000, 0x80800002, 0x8ba98d27, 0x8ba98d2a, 0x3800010},
5020{0x3800000, 0x80800002, 0x8ba98d7a, 0x8ba98d7d, 0x3800010},
5021{0x3800000, 0x80800002, 0xf51f853a, 0xf51f853b, 0x3800010},
5022{0x3800000, 0x80800002, 0xff7ffff0, 0xff7ffff1, 0x3800010},
5023{0x3800000, 0x80800002, 0xff7fffff, 0xff800000, 0x3800014},
5024{0x3800000, 0x80800002, 0xff800000, 0xff800000, 0x3800000},
5025{0x3800000, 0x80800002, 0xff800001, 0x7fc00000, 0x3800001},
5026{0x3800000, 0x80800002, 0xff984a37, 0x7fc00000, 0x3800001},
5027{0x3800000, 0x80800002, 0xffbfffff, 0x7fc00000, 0x3800001},
5028{0x3800000, 0x80800002, 0xffc00000, 0x7fc00000, 0x3800000},
5029{0x3800000, 0x80800002, 0xffd9ba98, 0x7fc00000, 0x3800000},
5030{0x3800000, 0x80800002, 0xffffffff, 0x7fc00000, 0x3800000},
5031{0x3800000, 0x80800002, 0x4f3495cb, 0x4f3495ca, 0x3800010},
5032{0x3800000, 0x80800002, 0xe73a5134, 0xe73a5135, 0x3800010},
5033{0x3800000, 0x80800002, 0x7c994e9e, 0x7c994e9d, 0x3800010},
5034{0x3800000, 0x80800002, 0x6164bd6c, 0x6164bd6b, 0x3800010},
5035{0x3800000, 0x80800002, 0x9503366, 0x9503325, 0x3800010},
5036{0x3800000, 0x80800002, 0xbf5a97c9, 0xbf5a97ca, 0x3800010},
5037{0x3800000, 0x80800002, 0xe6ff1a14, 0xe6ff1a15, 0x3800010},
5038{0x3800000, 0x80800002, 0x77f31e2f, 0x77f31e2e, 0x3800010},
5039{0x3800000, 0x80800002, 0xaab4d7d8, 0xaab4d7d9, 0x3800010},
5040{0x3800000, 0x80800002, 0x966320b, 0x96631ca, 0x3800010},
5041{0x3800000, 0x80800002, 0xb26bddee, 0xb26bddef, 0x3800010},
5042{0x3800000, 0x80800002, 0xb5c8e5d3, 0xb5c8e5d4, 0x3800010},
5043{0x3800000, 0x80800002, 0x317285d3, 0x317285d2, 0x3800010},
5044{0x3800000, 0x80800002, 0x3c9623b1, 0x3c9623b0, 0x3800010},
5045{0x3800000, 0x80800002, 0x51fd2c7c, 0x51fd2c7b, 0x3800010},
5046{0x3800000, 0x80800002, 0x7b906a6c, 0x7b906a6b, 0x3800010},
5047{0x3800000, 0x81398437, 0x0, 0x81398437, 0x3800000},
5048{0x3800000, 0x81398437, 0x1, 0x81398437, 0x3800080},
5049{0x3800000, 0x81398437, 0x76, 0x81398437, 0x3800080},
5050{0x3800000, 0x81398437, 0x2b94, 0x81398437, 0x3800080},
5051{0x3800000, 0x81398437, 0x636d24, 0x81398437, 0x3800080},
5052{0x3800000, 0x81398437, 0x7fffff, 0x81398437, 0x3800080},
5053{0x3800000, 0x81398437, 0x800000, 0x80f3086e, 0x3800000},
5054{0x3800000, 0x81398437, 0x800002, 0x80f3086c, 0x3800000},
5055{0x3800000, 0x81398437, 0x1398437, 0x80000000, 0x3800000},
5056{0x3800000, 0x81398437, 0xba98d27, 0xba98d21, 0x3800010},
5057{0x3800000, 0x81398437, 0xba98d7a, 0xba98d74, 0x3800010},
5058{0x3800000, 0x81398437, 0x751f853a, 0x751f8539, 0x3800010},
5059{0x3800000, 0x81398437, 0x7f7ffff0, 0x7f7fffef, 0x3800010},
5060{0x3800000, 0x81398437, 0x7f7fffff, 0x7f7ffffe, 0x3800010},
5061{0x3800000, 0x81398437, 0x7f800000, 0x7f800000, 0x3800000},
5062{0x3800000, 0x81398437, 0x7f800001, 0x7fc00000, 0x3800001},
5063{0x3800000, 0x81398437, 0x7f984a37, 0x7fc00000, 0x3800001},
5064{0x3800000, 0x81398437, 0x7fbfffff, 0x7fc00000, 0x3800001},
5065{0x3800000, 0x81398437, 0x7fc00000, 0x7fc00000, 0x3800000},
5066{0x3800000, 0x81398437, 0x7fd9ba98, 0x7fc00000, 0x3800000},
5067{0x3800000, 0x81398437, 0x7fffffff, 0x7fc00000, 0x3800000},
5068{0x3800000, 0x81398437, 0x80000000, 0x81398437, 0x3800000},
5069{0x3800000, 0x81398437, 0x80000001, 0x81398437, 0x3800080},
5070{0x3800000, 0x81398437, 0x80000076, 0x81398437, 0x3800080},
5071{0x3800000, 0x81398437, 0x80002b94, 0x81398437, 0x3800080},
5072{0x3800000, 0x81398437, 0x80636d24, 0x81398437, 0x3800080},
5073{0x3800000, 0x81398437, 0x807fffff, 0x81398437, 0x3800080},
5074{0x3800000, 0x81398437, 0x80800000, 0x81798437, 0x3800000},
5075{0x3800000, 0x81398437, 0x80800002, 0x81798438, 0x3800000},
5076{0x3800000, 0x81398437, 0x81398437, 0x81b98437, 0x3800000},
5077{0x3800000, 0x81398437, 0x8ba98d27, 0x8ba98d2d, 0x3800010},
5078{0x3800000, 0x81398437, 0x8ba98d7a, 0x8ba98d80, 0x3800010},
5079{0x3800000, 0x81398437, 0xf51f853a, 0xf51f853b, 0x3800010},
5080{0x3800000, 0x81398437, 0xff7ffff0, 0xff7ffff1, 0x3800010},
5081{0x3800000, 0x81398437, 0xff7fffff, 0xff800000, 0x3800014},
5082{0x3800000, 0x81398437, 0xff800000, 0xff800000, 0x3800000},
5083{0x3800000, 0x81398437, 0xff800001, 0x7fc00000, 0x3800001},
5084{0x3800000, 0x81398437, 0xff984a37, 0x7fc00000, 0x3800001},
5085{0x3800000, 0x81398437, 0xffbfffff, 0x7fc00000, 0x3800001},
5086{0x3800000, 0x81398437, 0xffc00000, 0x7fc00000, 0x3800000},
5087{0x3800000, 0x81398437, 0xffd9ba98, 0x7fc00000, 0x3800000},
5088{0x3800000, 0x81398437, 0xffffffff, 0x7fc00000, 0x3800000},
5089{0x3800000, 0x81398437, 0x4f3495cb, 0x4f3495ca, 0x3800010},
5090{0x3800000, 0x81398437, 0xe73a5134, 0xe73a5135, 0x3800010},
5091{0x3800000, 0x81398437, 0x7c994e9e, 0x7c994e9d, 0x3800010},
5092{0x3800000, 0x81398437, 0x6164bd6c, 0x6164bd6b, 0x3800010},
5093{0x3800000, 0x81398437, 0x9503366, 0x95032ac, 0x3800010},
5094{0x3800000, 0x81398437, 0xbf5a97c9, 0xbf5a97ca, 0x3800010},
5095{0x3800000, 0x81398437, 0xe6ff1a14, 0xe6ff1a15, 0x3800010},
5096{0x3800000, 0x81398437, 0x77f31e2f, 0x77f31e2e, 0x3800010},
5097{0x3800000, 0x81398437, 0xaab4d7d8, 0xaab4d7d9, 0x3800010},
5098{0x3800000, 0x81398437, 0x966320b, 0x9663151, 0x3800010},
5099{0x3800000, 0x81398437, 0xb26bddee, 0xb26bddef, 0x3800010},
5100{0x3800000, 0x81398437, 0xb5c8e5d3, 0xb5c8e5d4, 0x3800010},
5101{0x3800000, 0x81398437, 0x317285d3, 0x317285d2, 0x3800010},
5102{0x3800000, 0x81398437, 0x3c9623b1, 0x3c9623b0, 0x3800010},
5103{0x3800000, 0x81398437, 0x51fd2c7c, 0x51fd2c7b, 0x3800010},
5104{0x3800000, 0x81398437, 0x7b906a6c, 0x7b906a6b, 0x3800010},
5105{0x3800000, 0x8ba98d27, 0x0, 0x8ba98d27, 0x3800000},
5106{0x3800000, 0x8ba98d27, 0x1, 0x8ba98d27, 0x3800080},
5107{0x3800000, 0x8ba98d27, 0x76, 0x8ba98d27, 0x3800080},
5108{0x3800000, 0x8ba98d27, 0x2b94, 0x8ba98d27, 0x3800080},
5109{0x3800000, 0x8ba98d27, 0x636d24, 0x8ba98d27, 0x3800080},
5110{0x3800000, 0x8ba98d27, 0x7fffff, 0x8ba98d27, 0x3800080},
5111{0x3800000, 0x8ba98d27, 0x800000, 0x8ba98d25, 0x3800000},
5112{0x3800000, 0x8ba98d27, 0x800002, 0x8ba98d25, 0x3800010},
5113{0x3800000, 0x8ba98d27, 0x1398437, 0x8ba98d22, 0x3800010},
5114{0x3800000, 0x8ba98d27, 0xba98d27, 0x80000000, 0x3800000},
5115{0x3800000, 0x8ba98d27, 0xba98d7a, 0x3260000, 0x3800000},
5116{0x3800000, 0x8ba98d27, 0x751f853a, 0x751f8539, 0x3800010},
5117{0x3800000, 0x8ba98d27, 0x7f7ffff0, 0x7f7fffef, 0x3800010},
5118{0x3800000, 0x8ba98d27, 0x7f7fffff, 0x7f7ffffe, 0x3800010},
5119{0x3800000, 0x8ba98d27, 0x7f800000, 0x7f800000, 0x3800000},
5120{0x3800000, 0x8ba98d27, 0x7f800001, 0x7fc00000, 0x3800001},
5121{0x3800000, 0x8ba98d27, 0x7f984a37, 0x7fc00000, 0x3800001},
5122{0x3800000, 0x8ba98d27, 0x7fbfffff, 0x7fc00000, 0x3800001},
5123{0x3800000, 0x8ba98d27, 0x7fc00000, 0x7fc00000, 0x3800000},
5124{0x3800000, 0x8ba98d27, 0x7fd9ba98, 0x7fc00000, 0x3800000},
5125{0x3800000, 0x8ba98d27, 0x7fffffff, 0x7fc00000, 0x3800000},
5126{0x3800000, 0x8ba98d27, 0x80000000, 0x8ba98d27, 0x3800000},
5127{0x3800000, 0x8ba98d27, 0x80000001, 0x8ba98d27, 0x3800080},
5128{0x3800000, 0x8ba98d27, 0x80000076, 0x8ba98d27, 0x3800080},
5129{0x3800000, 0x8ba98d27, 0x80002b94, 0x8ba98d27, 0x3800080},
5130{0x3800000, 0x8ba98d27, 0x80636d24, 0x8ba98d27, 0x3800080},
5131{0x3800000, 0x8ba98d27, 0x807fffff, 0x8ba98d27, 0x3800080},
5132{0x3800000, 0x8ba98d27, 0x80800000, 0x8ba98d29, 0x3800000},
5133{0x3800000, 0x8ba98d27, 0x80800002, 0x8ba98d2a, 0x3800010},
5134{0x3800000, 0x8ba98d27, 0x81398437, 0x8ba98d2d, 0x3800010},
5135{0x3800000, 0x8ba98d27, 0x8ba98d27, 0x8c298d27, 0x3800000},
5136{0x3800000, 0x8ba98d27, 0x8ba98d7a, 0x8c298d51, 0x3800010},
5137{0x3800000, 0x8ba98d27, 0xf51f853a, 0xf51f853b, 0x3800010},
5138{0x3800000, 0x8ba98d27, 0xff7ffff0, 0xff7ffff1, 0x3800010},
5139{0x3800000, 0x8ba98d27, 0xff7fffff, 0xff800000, 0x3800014},
5140{0x3800000, 0x8ba98d27, 0xff800000, 0xff800000, 0x3800000},
5141{0x3800000, 0x8ba98d27, 0xff800001, 0x7fc00000, 0x3800001},
5142{0x3800000, 0x8ba98d27, 0xff984a37, 0x7fc00000, 0x3800001},
5143{0x3800000, 0x8ba98d27, 0xffbfffff, 0x7fc00000, 0x3800001},
5144{0x3800000, 0x8ba98d27, 0xffc00000, 0x7fc00000, 0x3800000},
5145{0x3800000, 0x8ba98d27, 0xffd9ba98, 0x7fc00000, 0x3800000},
5146{0x3800000, 0x8ba98d27, 0xffffffff, 0x7fc00000, 0x3800000},
5147{0x3800000, 0x8ba98d27, 0x4f3495cb, 0x4f3495ca, 0x3800010},
5148{0x3800000, 0x8ba98d27, 0xe73a5134, 0xe73a5135, 0x3800010},
5149{0x3800000, 0x8ba98d27, 0x7c994e9e, 0x7c994e9d, 0x3800010},
5150{0x3800000, 0x8ba98d27, 0x6164bd6c, 0x6164bd6b, 0x3800010},
5151{0x3800000, 0x8ba98d27, 0x9503366, 0x8ba30b8c, 0x3800010},
5152{0x3800000, 0x8ba98d27, 0xbf5a97c9, 0xbf5a97ca, 0x3800010},
5153{0x3800000, 0x8ba98d27, 0xe6ff1a14, 0xe6ff1a15, 0x3800010},
5154{0x3800000, 0x8ba98d27, 0x77f31e2f, 0x77f31e2e, 0x3800010},
5155{0x3800000, 0x8ba98d27, 0xaab4d7d8, 0xaab4d7d9, 0x3800010},
5156{0x3800000, 0x8ba98d27, 0x966320b, 0x8ba25b97, 0x3800010},
5157{0x3800000, 0x8ba98d27, 0xb26bddee, 0xb26bddef, 0x3800010},
5158{0x3800000, 0x8ba98d27, 0xb5c8e5d3, 0xb5c8e5d4, 0x3800010},
5159{0x3800000, 0x8ba98d27, 0x317285d3, 0x317285d2, 0x3800010},
5160{0x3800000, 0x8ba98d27, 0x3c9623b1, 0x3c9623b0, 0x3800010},
5161{0x3800000, 0x8ba98d27, 0x51fd2c7c, 0x51fd2c7b, 0x3800010},
5162{0x3800000, 0x8ba98d27, 0x7b906a6c, 0x7b906a6b, 0x3800010},
5163{0x3800000, 0x8ba98d7a, 0x0, 0x8ba98d7a, 0x3800000},
5164{0x3800000, 0x8ba98d7a, 0x1, 0x8ba98d7a, 0x3800080},
5165{0x3800000, 0x8ba98d7a, 0x76, 0x8ba98d7a, 0x3800080},
5166{0x3800000, 0x8ba98d7a, 0x2b94, 0x8ba98d7a, 0x3800080},
5167{0x3800000, 0x8ba98d7a, 0x636d24, 0x8ba98d7a, 0x3800080},
5168{0x3800000, 0x8ba98d7a, 0x7fffff, 0x8ba98d7a, 0x3800080},
5169{0x3800000, 0x8ba98d7a, 0x800000, 0x8ba98d78, 0x3800000},
5170{0x3800000, 0x8ba98d7a, 0x800002, 0x8ba98d78, 0x3800010},
5171{0x3800000, 0x8ba98d7a, 0x1398437, 0x8ba98d75, 0x3800010},
5172{0x3800000, 0x8ba98d7a, 0xba98d27, 0x83260000, 0x3800000},
5173{0x3800000, 0x8ba98d7a, 0xba98d7a, 0x80000000, 0x3800000},
5174{0x3800000, 0x8ba98d7a, 0x751f853a, 0x751f8539, 0x3800010},
5175{0x3800000, 0x8ba98d7a, 0x7f7ffff0, 0x7f7fffef, 0x3800010},
5176{0x3800000, 0x8ba98d7a, 0x7f7fffff, 0x7f7ffffe, 0x3800010},
5177{0x3800000, 0x8ba98d7a, 0x7f800000, 0x7f800000, 0x3800000},
5178{0x3800000, 0x8ba98d7a, 0x7f800001, 0x7fc00000, 0x3800001},
5179{0x3800000, 0x8ba98d7a, 0x7f984a37, 0x7fc00000, 0x3800001},
5180{0x3800000, 0x8ba98d7a, 0x7fbfffff, 0x7fc00000, 0x3800001},
5181{0x3800000, 0x8ba98d7a, 0x7fc00000, 0x7fc00000, 0x3800000},
5182{0x3800000, 0x8ba98d7a, 0x7fd9ba98, 0x7fc00000, 0x3800000},
5183{0x3800000, 0x8ba98d7a, 0x7fffffff, 0x7fc00000, 0x3800000},
5184{0x3800000, 0x8ba98d7a, 0x80000000, 0x8ba98d7a, 0x3800000},
5185{0x3800000, 0x8ba98d7a, 0x80000001, 0x8ba98d7a, 0x3800080},
5186{0x3800000, 0x8ba98d7a, 0x80000076, 0x8ba98d7a, 0x3800080},
5187{0x3800000, 0x8ba98d7a, 0x80002b94, 0x8ba98d7a, 0x3800080},
5188{0x3800000, 0x8ba98d7a, 0x80636d24, 0x8ba98d7a, 0x3800080},
5189{0x3800000, 0x8ba98d7a, 0x807fffff, 0x8ba98d7a, 0x3800080},
5190{0x3800000, 0x8ba98d7a, 0x80800000, 0x8ba98d7c, 0x3800000},
5191{0x3800000, 0x8ba98d7a, 0x80800002, 0x8ba98d7d, 0x3800010},
5192{0x3800000, 0x8ba98d7a, 0x81398437, 0x8ba98d80, 0x3800010},
5193{0x3800000, 0x8ba98d7a, 0x8ba98d27, 0x8c298d51, 0x3800010},
5194{0x3800000, 0x8ba98d7a, 0x8ba98d7a, 0x8c298d7a, 0x3800000},
5195{0x3800000, 0x8ba98d7a, 0xf51f853a, 0xf51f853b, 0x3800010},
5196{0x3800000, 0x8ba98d7a, 0xff7ffff0, 0xff7ffff1, 0x3800010},
5197{0x3800000, 0x8ba98d7a, 0xff7fffff, 0xff800000, 0x3800014},
5198{0x3800000, 0x8ba98d7a, 0xff800000, 0xff800000, 0x3800000},
5199{0x3800000, 0x8ba98d7a, 0xff800001, 0x7fc00000, 0x3800001},
5200{0x3800000, 0x8ba98d7a, 0xff984a37, 0x7fc00000, 0x3800001},
5201{0x3800000, 0x8ba98d7a, 0xffbfffff, 0x7fc00000, 0x3800001},
5202{0x3800000, 0x8ba98d7a, 0xffc00000, 0x7fc00000, 0x3800000},
5203{0x3800000, 0x8ba98d7a, 0xffd9ba98, 0x7fc00000, 0x3800000},
5204{0x3800000, 0x8ba98d7a, 0xffffffff, 0x7fc00000, 0x3800000},
5205{0x3800000, 0x8ba98d7a, 0x4f3495cb, 0x4f3495ca, 0x3800010},
5206{0x3800000, 0x8ba98d7a, 0xe73a5134, 0xe73a5135, 0x3800010},
5207{0x3800000, 0x8ba98d7a, 0x7c994e9e, 0x7c994e9d, 0x3800010},
5208{0x3800000, 0x8ba98d7a, 0x6164bd6c, 0x6164bd6b, 0x3800010},
5209{0x3800000, 0x8ba98d7a, 0x9503366, 0x8ba30bdf, 0x3800010},
5210{0x3800000, 0x8ba98d7a, 0xbf5a97c9, 0xbf5a97ca, 0x3800010},
5211{0x3800000, 0x8ba98d7a, 0xe6ff1a14, 0xe6ff1a15, 0x3800010},
5212{0x3800000, 0x8ba98d7a, 0x77f31e2f, 0x77f31e2e, 0x3800010},
5213{0x3800000, 0x8ba98d7a, 0xaab4d7d8, 0xaab4d7d9, 0x3800010},
5214{0x3800000, 0x8ba98d7a, 0x966320b, 0x8ba25bea, 0x3800010},
5215{0x3800000, 0x8ba98d7a, 0xb26bddee, 0xb26bddef, 0x3800010},
5216{0x3800000, 0x8ba98d7a, 0xb5c8e5d3, 0xb5c8e5d4, 0x3800010},
5217{0x3800000, 0x8ba98d7a, 0x317285d3, 0x317285d2, 0x3800010},
5218{0x3800000, 0x8ba98d7a, 0x3c9623b1, 0x3c9623b0, 0x3800010},
5219{0x3800000, 0x8ba98d7a, 0x51fd2c7c, 0x51fd2c7b, 0x3800010},
5220{0x3800000, 0x8ba98d7a, 0x7b906a6c, 0x7b906a6b, 0x3800010},
5221{0x3800000, 0xf51f853a, 0x0, 0xf51f853a, 0x3800000},
5222{0x3800000, 0xf51f853a, 0x1, 0xf51f853a, 0x3800080},
5223{0x3800000, 0xf51f853a, 0x76, 0xf51f853a, 0x3800080},
5224{0x3800000, 0xf51f853a, 0x2b94, 0xf51f853a, 0x3800080},
5225{0x3800000, 0xf51f853a, 0x636d24, 0xf51f853a, 0x3800080},
5226{0x3800000, 0xf51f853a, 0x7fffff, 0xf51f853a, 0x3800080},
5227{0x3800000, 0xf51f853a, 0x800000, 0xf51f853a, 0x3800010},
5228{0x3800000, 0xf51f853a, 0x800002, 0xf51f853a, 0x3800010},
5229{0x3800000, 0xf51f853a, 0x1398437, 0xf51f853a, 0x3800010},
5230{0x3800000, 0xf51f853a, 0xba98d27, 0xf51f853a, 0x3800010},
5231{0x3800000, 0xf51f853a, 0xba98d7a, 0xf51f853a, 0x3800010},
5232{0x3800000, 0xf51f853a, 0x751f853a, 0x80000000, 0x3800000},
5233{0x3800000, 0xf51f853a, 0x7f7ffff0, 0x7f7fffe6, 0x3800010},
5234{0x3800000, 0xf51f853a, 0x7f7fffff, 0x7f7ffff5, 0x3800010},
5235{0x3800000, 0xf51f853a, 0x7f800000, 0x7f800000, 0x3800000},
5236{0x3800000, 0xf51f853a, 0x7f800001, 0x7fc00000, 0x3800001},
5237{0x3800000, 0xf51f853a, 0x7f984a37, 0x7fc00000, 0x3800001},
5238{0x3800000, 0xf51f853a, 0x7fbfffff, 0x7fc00000, 0x3800001},
5239{0x3800000, 0xf51f853a, 0x7fc00000, 0x7fc00000, 0x3800000},
5240{0x3800000, 0xf51f853a, 0x7fd9ba98, 0x7fc00000, 0x3800000},
5241{0x3800000, 0xf51f853a, 0x7fffffff, 0x7fc00000, 0x3800000},
5242{0x3800000, 0xf51f853a, 0x80000000, 0xf51f853a, 0x3800000},
5243{0x3800000, 0xf51f853a, 0x80000001, 0xf51f853a, 0x3800080},
5244{0x3800000, 0xf51f853a, 0x80000076, 0xf51f853a, 0x3800080},
5245{0x3800000, 0xf51f853a, 0x80002b94, 0xf51f853a, 0x3800080},
5246{0x3800000, 0xf51f853a, 0x80636d24, 0xf51f853a, 0x3800080},
5247{0x3800000, 0xf51f853a, 0x807fffff, 0xf51f853a, 0x3800080},
5248{0x3800000, 0xf51f853a, 0x80800000, 0xf51f853b, 0x3800010},
5249{0x3800000, 0xf51f853a, 0x80800002, 0xf51f853b, 0x3800010},
5250{0x3800000, 0xf51f853a, 0x81398437, 0xf51f853b, 0x3800010},
5251{0x3800000, 0xf51f853a, 0x8ba98d27, 0xf51f853b, 0x3800010},
5252{0x3800000, 0xf51f853a, 0x8ba98d7a, 0xf51f853b, 0x3800010},
5253{0x3800000, 0xf51f853a, 0xf51f853a, 0xf59f853a, 0x3800000},
5254{0x3800000, 0xf51f853a, 0xff7ffff0, 0xff7ffffa, 0x3800010},
5255{0x3800000, 0xf51f853a, 0xff7fffff, 0xff800000, 0x3800014},
5256{0x3800000, 0xf51f853a, 0xff800000, 0xff800000, 0x3800000},
5257{0x3800000, 0xf51f853a, 0xff800001, 0x7fc00000, 0x3800001},
5258{0x3800000, 0xf51f853a, 0xff984a37, 0x7fc00000, 0x3800001},
5259{0x3800000, 0xf51f853a, 0xffbfffff, 0x7fc00000, 0x3800001},
5260{0x3800000, 0xf51f853a, 0xffc00000, 0x7fc00000, 0x3800000},
5261{0x3800000, 0xf51f853a, 0xffd9ba98, 0x7fc00000, 0x3800000},
5262{0x3800000, 0xf51f853a, 0xffffffff, 0x7fc00000, 0x3800000},
5263{0x3800000, 0xf51f853a, 0x4f3495cb, 0xf51f853a, 0x3800010},
5264{0x3800000, 0xf51f853a, 0xe73a5134, 0xf51f853b, 0x3800010},
5265{0x3800000, 0xf51f853a, 0x7c994e9e, 0x7c994d5e, 0x3800010},
5266{0x3800000, 0xf51f853a, 0x6164bd6c, 0xf51f853a, 0x3800010},
5267{0x3800000, 0xf51f853a, 0x9503366, 0xf51f853a, 0x3800010},
5268{0x3800000, 0xf51f853a, 0xbf5a97c9, 0xf51f853b, 0x3800010},
5269{0x3800000, 0xf51f853a, 0xe6ff1a14, 0xf51f853b, 0x3800010},
5270{0x3800000, 0xf51f853a, 0x77f31e2f, 0x77ee2205, 0x3800010},
5271{0x3800000, 0xf51f853a, 0xaab4d7d8, 0xf51f853b, 0x3800010},
5272{0x3800000, 0xf51f853a, 0x966320b, 0xf51f853a, 0x3800010},
5273{0x3800000, 0xf51f853a, 0xb26bddee, 0xf51f853b, 0x3800010},
5274{0x3800000, 0xf51f853a, 0xb5c8e5d3, 0xf51f853b, 0x3800010},
5275{0x3800000, 0xf51f853a, 0x317285d3, 0xf51f853a, 0x3800010},
5276{0x3800000, 0xf51f853a, 0x3c9623b1, 0xf51f853a, 0x3800010},
5277{0x3800000, 0xf51f853a, 0x51fd2c7c, 0xf51f853a, 0x3800010},
5278{0x3800000, 0xf51f853a, 0x7b906a6c, 0x7b90656f, 0x3800010},
5279{0x3800000, 0xff7ffff0, 0x0, 0xff7ffff0, 0x3800000},
5280{0x3800000, 0xff7ffff0, 0x1, 0xff7ffff0, 0x3800080},
5281{0x3800000, 0xff7ffff0, 0x76, 0xff7ffff0, 0x3800080},
5282{0x3800000, 0xff7ffff0, 0x2b94, 0xff7ffff0, 0x3800080},
5283{0x3800000, 0xff7ffff0, 0x636d24, 0xff7ffff0, 0x3800080},
5284{0x3800000, 0xff7ffff0, 0x7fffff, 0xff7ffff0, 0x3800080},
5285{0x3800000, 0xff7ffff0, 0x800000, 0xff7ffff0, 0x3800010},
5286{0x3800000, 0xff7ffff0, 0x800002, 0xff7ffff0, 0x3800010},
5287{0x3800000, 0xff7ffff0, 0x1398437, 0xff7ffff0, 0x3800010},
5288{0x3800000, 0xff7ffff0, 0xba98d27, 0xff7ffff0, 0x3800010},
5289{0x3800000, 0xff7ffff0, 0xba98d7a, 0xff7ffff0, 0x3800010},
5290{0x3800000, 0xff7ffff0, 0x751f853a, 0xff7fffe7, 0x3800010},
5291{0x3800000, 0xff7ffff0, 0x7f7ffff0, 0x80000000, 0x3800000},
5292{0x3800000, 0xff7ffff0, 0x7f7fffff, 0x75700000, 0x3800000},
5293{0x3800000, 0xff7ffff0, 0x7f800000, 0x7f800000, 0x3800000},
5294{0x3800000, 0xff7ffff0, 0x7f800001, 0x7fc00000, 0x3800001},
5295{0x3800000, 0xff7ffff0, 0x7f984a37, 0x7fc00000, 0x3800001},
5296{0x3800000, 0xff7ffff0, 0x7fbfffff, 0x7fc00000, 0x3800001},
5297{0x3800000, 0xff7ffff0, 0x7fc00000, 0x7fc00000, 0x3800000},
5298{0x3800000, 0xff7ffff0, 0x7fd9ba98, 0x7fc00000, 0x3800000},
5299{0x3800000, 0xff7ffff0, 0x7fffffff, 0x7fc00000, 0x3800000},
5300{0x3800000, 0xff7ffff0, 0x80000000, 0xff7ffff0, 0x3800000},
5301{0x3800000, 0xff7ffff0, 0x80000001, 0xff7ffff0, 0x3800080},
5302{0x3800000, 0xff7ffff0, 0x80000076, 0xff7ffff0, 0x3800080},
5303{0x3800000, 0xff7ffff0, 0x80002b94, 0xff7ffff0, 0x3800080},
5304{0x3800000, 0xff7ffff0, 0x80636d24, 0xff7ffff0, 0x3800080},
5305{0x3800000, 0xff7ffff0, 0x807fffff, 0xff7ffff0, 0x3800080},
5306{0x3800000, 0xff7ffff0, 0x80800000, 0xff7ffff1, 0x3800010},
5307{0x3800000, 0xff7ffff0, 0x80800002, 0xff7ffff1, 0x3800010},
5308{0x3800000, 0xff7ffff0, 0x81398437, 0xff7ffff1, 0x3800010},
5309{0x3800000, 0xff7ffff0, 0x8ba98d27, 0xff7ffff1, 0x3800010},
5310{0x3800000, 0xff7ffff0, 0x8ba98d7a, 0xff7ffff1, 0x3800010},
5311{0x3800000, 0xff7ffff0, 0xf51f853a, 0xff7ffffa, 0x3800010},
5312{0x3800000, 0xff7ffff0, 0xff7ffff0, 0xff800000, 0x3800014},
5313{0x3800000, 0xff7ffff0, 0xff7fffff, 0xff800000, 0x3800014},
5314{0x3800000, 0xff7ffff0, 0xff800000, 0xff800000, 0x3800000},
5315{0x3800000, 0xff7ffff0, 0xff800001, 0x7fc00000, 0x3800001},
5316{0x3800000, 0xff7ffff0, 0xff984a37, 0x7fc00000, 0x3800001},
5317{0x3800000, 0xff7ffff0, 0xffbfffff, 0x7fc00000, 0x3800001},
5318{0x3800000, 0xff7ffff0, 0xffc00000, 0x7fc00000, 0x3800000},
5319{0x3800000, 0xff7ffff0, 0xffd9ba98, 0x7fc00000, 0x3800000},
5320{0x3800000, 0xff7ffff0, 0xffffffff, 0x7fc00000, 0x3800000},
5321{0x3800000, 0xff7ffff0, 0x4f3495cb, 0xff7ffff0, 0x3800010},
5322{0x3800000, 0xff7ffff0, 0xe73a5134, 0xff7ffff1, 0x3800010},
5323{0x3800000, 0xff7ffff0, 0x7c994e9e, 0xff7b357c, 0x3800010},
5324{0x3800000, 0xff7ffff0, 0x6164bd6c, 0xff7ffff0, 0x3800010},
5325{0x3800000, 0xff7ffff0, 0x9503366, 0xff7ffff0, 0x3800010},
5326{0x3800000, 0xff7ffff0, 0xbf5a97c9, 0xff7ffff1, 0x3800010},
5327{0x3800000, 0xff7ffff0, 0xe6ff1a14, 0xff7ffff1, 0x3800010},
5328{0x3800000, 0xff7ffff0, 0x77f31e2f, 0xff7ffe0a, 0x3800010},
5329{0x3800000, 0xff7ffff0, 0xaab4d7d8, 0xff7ffff1, 0x3800010},
5330{0x3800000, 0xff7ffff0, 0x966320b, 0xff7ffff0, 0x3800010},
5331{0x3800000, 0xff7ffff0, 0xb26bddee, 0xff7ffff1, 0x3800010},
5332{0x3800000, 0xff7ffff0, 0xb5c8e5d3, 0xff7ffff1, 0x3800010},
5333{0x3800000, 0xff7ffff0, 0x317285d3, 0xff7ffff0, 0x3800010},
5334{0x3800000, 0xff7ffff0, 0x3c9623b1, 0xff7ffff0, 0x3800010},
5335{0x3800000, 0xff7ffff0, 0x51fd2c7c, 0xff7ffff0, 0x3800010},
5336{0x3800000, 0xff7ffff0, 0x7b906a6c, 0xff7edf1c, 0x3800010},
5337{0x3800000, 0xff7fffff, 0x0, 0xff7fffff, 0x3800000},
5338{0x3800000, 0xff7fffff, 0x1, 0xff7fffff, 0x3800080},
5339{0x3800000, 0xff7fffff, 0x76, 0xff7fffff, 0x3800080},
5340{0x3800000, 0xff7fffff, 0x2b94, 0xff7fffff, 0x3800080},
5341{0x3800000, 0xff7fffff, 0x636d24, 0xff7fffff, 0x3800080},
5342{0x3800000, 0xff7fffff, 0x7fffff, 0xff7fffff, 0x3800080},
5343{0x3800000, 0xff7fffff, 0x800000, 0xff7fffff, 0x3800010},
5344{0x3800000, 0xff7fffff, 0x800002, 0xff7fffff, 0x3800010},
5345{0x3800000, 0xff7fffff, 0x1398437, 0xff7fffff, 0x3800010},
5346{0x3800000, 0xff7fffff, 0xba98d27, 0xff7fffff, 0x3800010},
5347{0x3800000, 0xff7fffff, 0xba98d7a, 0xff7fffff, 0x3800010},
5348{0x3800000, 0xff7fffff, 0x751f853a, 0xff7ffff6, 0x3800010},
5349{0x3800000, 0xff7fffff, 0x7f7ffff0, 0xf5700000, 0x3800000},
5350{0x3800000, 0xff7fffff, 0x7f7fffff, 0x80000000, 0x3800000},
5351{0x3800000, 0xff7fffff, 0x7f800000, 0x7f800000, 0x3800000},
5352{0x3800000, 0xff7fffff, 0x7f800001, 0x7fc00000, 0x3800001},
5353{0x3800000, 0xff7fffff, 0x7f984a37, 0x7fc00000, 0x3800001},
5354{0x3800000, 0xff7fffff, 0x7fbfffff, 0x7fc00000, 0x3800001},
5355{0x3800000, 0xff7fffff, 0x7fc00000, 0x7fc00000, 0x3800000},
5356{0x3800000, 0xff7fffff, 0x7fd9ba98, 0x7fc00000, 0x3800000},
5357{0x3800000, 0xff7fffff, 0x7fffffff, 0x7fc00000, 0x3800000},
5358{0x3800000, 0xff7fffff, 0x80000000, 0xff7fffff, 0x3800000},
5359{0x3800000, 0xff7fffff, 0x80000001, 0xff7fffff, 0x3800080},
5360{0x3800000, 0xff7fffff, 0x80000076, 0xff7fffff, 0x3800080},
5361{0x3800000, 0xff7fffff, 0x80002b94, 0xff7fffff, 0x3800080},
5362{0x3800000, 0xff7fffff, 0x80636d24, 0xff7fffff, 0x3800080},
5363{0x3800000, 0xff7fffff, 0x807fffff, 0xff7fffff, 0x3800080},
5364{0x3800000, 0xff7fffff, 0x80800000, 0xff800000, 0x3800014},
5365{0x3800000, 0xff7fffff, 0x80800002, 0xff800000, 0x3800014},
5366{0x3800000, 0xff7fffff, 0x81398437, 0xff800000, 0x3800014},
5367{0x3800000, 0xff7fffff, 0x8ba98d27, 0xff800000, 0x3800014},
5368{0x3800000, 0xff7fffff, 0x8ba98d7a, 0xff800000, 0x3800014},
5369{0x3800000, 0xff7fffff, 0xf51f853a, 0xff800000, 0x3800014},
5370{0x3800000, 0xff7fffff, 0xff7ffff0, 0xff800000, 0x3800014},
5371{0x3800000, 0xff7fffff, 0xff7fffff, 0xff800000, 0x3800014},
5372{0x3800000, 0xff7fffff, 0xff800000, 0xff800000, 0x3800000},
5373{0x3800000, 0xff7fffff, 0xff800001, 0x7fc00000, 0x3800001},
5374{0x3800000, 0xff7fffff, 0xff984a37, 0x7fc00000, 0x3800001},
5375{0x3800000, 0xff7fffff, 0xffbfffff, 0x7fc00000, 0x3800001},
5376{0x3800000, 0xff7fffff, 0xffc00000, 0x7fc00000, 0x3800000},
5377{0x3800000, 0xff7fffff, 0xffd9ba98, 0x7fc00000, 0x3800000},
5378{0x3800000, 0xff7fffff, 0xffffffff, 0x7fc00000, 0x3800000},
5379{0x3800000, 0xff7fffff, 0x4f3495cb, 0xff7fffff, 0x3800010},
5380{0x3800000, 0xff7fffff, 0xe73a5134, 0xff800000, 0x3800014},
5381{0x3800000, 0xff7fffff, 0x7c994e9e, 0xff7b358b, 0x3800010},
5382{0x3800000, 0xff7fffff, 0x6164bd6c, 0xff7fffff, 0x3800010},
5383{0x3800000, 0xff7fffff, 0x9503366, 0xff7fffff, 0x3800010},
5384{0x3800000, 0xff7fffff, 0xbf5a97c9, 0xff800000, 0x3800014},
5385{0x3800000, 0xff7fffff, 0xe6ff1a14, 0xff800000, 0x3800014},
5386{0x3800000, 0xff7fffff, 0x77f31e2f, 0xff7ffe19, 0x3800010},
5387{0x3800000, 0xff7fffff, 0xaab4d7d8, 0xff800000, 0x3800014},
5388{0x3800000, 0xff7fffff, 0x966320b, 0xff7fffff, 0x3800010},
5389{0x3800000, 0xff7fffff, 0xb26bddee, 0xff800000, 0x3800014},
5390{0x3800000, 0xff7fffff, 0xb5c8e5d3, 0xff800000, 0x3800014},
5391{0x3800000, 0xff7fffff, 0x317285d3, 0xff7fffff, 0x3800010},
5392{0x3800000, 0xff7fffff, 0x3c9623b1, 0xff7fffff, 0x3800010},
5393{0x3800000, 0xff7fffff, 0x51fd2c7c, 0xff7fffff, 0x3800010},
5394{0x3800000, 0xff7fffff, 0x7b906a6c, 0xff7edf2b, 0x3800010},
5395{0x3800000, 0xff800000, 0x0, 0xff800000, 0x3800000},
5396{0x3800000, 0xff800000, 0x1, 0xff800000, 0x3800080},
5397{0x3800000, 0xff800000, 0x76, 0xff800000, 0x3800080},
5398{0x3800000, 0xff800000, 0x2b94, 0xff800000, 0x3800080},
5399{0x3800000, 0xff800000, 0x636d24, 0xff800000, 0x3800080},
5400{0x3800000, 0xff800000, 0x7fffff, 0xff800000, 0x3800080},
5401{0x3800000, 0xff800000, 0x800000, 0xff800000, 0x3800000},
5402{0x3800000, 0xff800000, 0x800002, 0xff800000, 0x3800000},
5403{0x3800000, 0xff800000, 0x1398437, 0xff800000, 0x3800000},
5404{0x3800000, 0xff800000, 0xba98d27, 0xff800000, 0x3800000},
5405{0x3800000, 0xff800000, 0xba98d7a, 0xff800000, 0x3800000},
5406{0x3800000, 0xff800000, 0x751f853a, 0xff800000, 0x3800000},
5407{0x3800000, 0xff800000, 0x7f7ffff0, 0xff800000, 0x3800000},
5408{0x3800000, 0xff800000, 0x7f7fffff, 0xff800000, 0x3800000},
5409{0x3800000, 0xff800000, 0x7f800000, 0x7fc00000, 0x3800001},
5410{0x3800000, 0xff800000, 0x7f800001, 0x7fc00000, 0x3800001},
5411{0x3800000, 0xff800000, 0x7f984a37, 0x7fc00000, 0x3800001},
5412{0x3800000, 0xff800000, 0x7fbfffff, 0x7fc00000, 0x3800001},
5413{0x3800000, 0xff800000, 0x7fc00000, 0x7fc00000, 0x3800000},
5414{0x3800000, 0xff800000, 0x7fd9ba98, 0x7fc00000, 0x3800000},
5415{0x3800000, 0xff800000, 0x7fffffff, 0x7fc00000, 0x3800000},
5416{0x3800000, 0xff800000, 0x80000000, 0xff800000, 0x3800000},
5417{0x3800000, 0xff800000, 0x80000001, 0xff800000, 0x3800080},
5418{0x3800000, 0xff800000, 0x80000076, 0xff800000, 0x3800080},
5419{0x3800000, 0xff800000, 0x80002b94, 0xff800000, 0x3800080},
5420{0x3800000, 0xff800000, 0x80636d24, 0xff800000, 0x3800080},
5421{0x3800000, 0xff800000, 0x807fffff, 0xff800000, 0x3800080},
5422{0x3800000, 0xff800000, 0x80800000, 0xff800000, 0x3800000},
5423{0x3800000, 0xff800000, 0x80800002, 0xff800000, 0x3800000},
5424{0x3800000, 0xff800000, 0x81398437, 0xff800000, 0x3800000},
5425{0x3800000, 0xff800000, 0x8ba98d27, 0xff800000, 0x3800000},
5426{0x3800000, 0xff800000, 0x8ba98d7a, 0xff800000, 0x3800000},
5427{0x3800000, 0xff800000, 0xf51f853a, 0xff800000, 0x3800000},
5428{0x3800000, 0xff800000, 0xff7ffff0, 0xff800000, 0x3800000},
5429{0x3800000, 0xff800000, 0xff7fffff, 0xff800000, 0x3800000},
5430{0x3800000, 0xff800000, 0xff800000, 0xff800000, 0x3800000},
5431{0x3800000, 0xff800000, 0xff800001, 0x7fc00000, 0x3800001},
5432{0x3800000, 0xff800000, 0xff984a37, 0x7fc00000, 0x3800001},
5433{0x3800000, 0xff800000, 0xffbfffff, 0x7fc00000, 0x3800001},
5434{0x3800000, 0xff800000, 0xffc00000, 0x7fc00000, 0x3800000},
5435{0x3800000, 0xff800000, 0xffd9ba98, 0x7fc00000, 0x3800000},
5436{0x3800000, 0xff800000, 0xffffffff, 0x7fc00000, 0x3800000},
5437{0x3800000, 0xff800000, 0x4f3495cb, 0xff800000, 0x3800000},
5438{0x3800000, 0xff800000, 0xe73a5134, 0xff800000, 0x3800000},
5439{0x3800000, 0xff800000, 0x7c994e9e, 0xff800000, 0x3800000},
5440{0x3800000, 0xff800000, 0x6164bd6c, 0xff800000, 0x3800000},
5441{0x3800000, 0xff800000, 0x9503366, 0xff800000, 0x3800000},
5442{0x3800000, 0xff800000, 0xbf5a97c9, 0xff800000, 0x3800000},
5443{0x3800000, 0xff800000, 0xe6ff1a14, 0xff800000, 0x3800000},
5444{0x3800000, 0xff800000, 0x77f31e2f, 0xff800000, 0x3800000},
5445{0x3800000, 0xff800000, 0xaab4d7d8, 0xff800000, 0x3800000},
5446{0x3800000, 0xff800000, 0x966320b, 0xff800000, 0x3800000},
5447{0x3800000, 0xff800000, 0xb26bddee, 0xff800000, 0x3800000},
5448{0x3800000, 0xff800000, 0xb5c8e5d3, 0xff800000, 0x3800000},
5449{0x3800000, 0xff800000, 0x317285d3, 0xff800000, 0x3800000},
5450{0x3800000, 0xff800000, 0x3c9623b1, 0xff800000, 0x3800000},
5451{0x3800000, 0xff800000, 0x51fd2c7c, 0xff800000, 0x3800000},
5452{0x3800000, 0xff800000, 0x7b906a6c, 0xff800000, 0x3800000},
5453{0x3800000, 0xff800001, 0x0, 0x7fc00000, 0x3800001},
5454{0x3800000, 0xff800001, 0x1, 0x7fc00000, 0x3800081},
5455{0x3800000, 0xff800001, 0x76, 0x7fc00000, 0x3800081},
5456{0x3800000, 0xff800001, 0x2b94, 0x7fc00000, 0x3800081},
5457{0x3800000, 0xff800001, 0x636d24, 0x7fc00000, 0x3800081},
5458{0x3800000, 0xff800001, 0x7fffff, 0x7fc00000, 0x3800081},
5459{0x3800000, 0xff800001, 0x800000, 0x7fc00000, 0x3800001},
5460{0x3800000, 0xff800001, 0x800002, 0x7fc00000, 0x3800001},
5461{0x3800000, 0xff800001, 0x1398437, 0x7fc00000, 0x3800001},
5462{0x3800000, 0xff800001, 0xba98d27, 0x7fc00000, 0x3800001},
5463{0x3800000, 0xff800001, 0xba98d7a, 0x7fc00000, 0x3800001},
5464{0x3800000, 0xff800001, 0x751f853a, 0x7fc00000, 0x3800001},
5465{0x3800000, 0xff800001, 0x7f7ffff0, 0x7fc00000, 0x3800001},
5466{0x3800000, 0xff800001, 0x7f7fffff, 0x7fc00000, 0x3800001},
5467{0x3800000, 0xff800001, 0x7f800000, 0x7fc00000, 0x3800001},
5468{0x3800000, 0xff800001, 0x7f800001, 0x7fc00000, 0x3800001},
5469{0x3800000, 0xff800001, 0x7f984a37, 0x7fc00000, 0x3800001},
5470{0x3800000, 0xff800001, 0x7fbfffff, 0x7fc00000, 0x3800001},
5471{0x3800000, 0xff800001, 0x7fc00000, 0x7fc00000, 0x3800001},
5472{0x3800000, 0xff800001, 0x7fd9ba98, 0x7fc00000, 0x3800001},
5473{0x3800000, 0xff800001, 0x7fffffff, 0x7fc00000, 0x3800001},
5474{0x3800000, 0xff800001, 0x80000000, 0x7fc00000, 0x3800001},
5475{0x3800000, 0xff800001, 0x80000001, 0x7fc00000, 0x3800081},
5476{0x3800000, 0xff800001, 0x80000076, 0x7fc00000, 0x3800081},
5477{0x3800000, 0xff800001, 0x80002b94, 0x7fc00000, 0x3800081},
5478{0x3800000, 0xff800001, 0x80636d24, 0x7fc00000, 0x3800081},
5479{0x3800000, 0xff800001, 0x807fffff, 0x7fc00000, 0x3800081},
5480{0x3800000, 0xff800001, 0x80800000, 0x7fc00000, 0x3800001},
5481{0x3800000, 0xff800001, 0x80800002, 0x7fc00000, 0x3800001},
5482{0x3800000, 0xff800001, 0x81398437, 0x7fc00000, 0x3800001},
5483{0x3800000, 0xff800001, 0x8ba98d27, 0x7fc00000, 0x3800001},
5484{0x3800000, 0xff800001, 0x8ba98d7a, 0x7fc00000, 0x3800001},
5485{0x3800000, 0xff800001, 0xf51f853a, 0x7fc00000, 0x3800001},
5486{0x3800000, 0xff800001, 0xff7ffff0, 0x7fc00000, 0x3800001},
5487{0x3800000, 0xff800001, 0xff7fffff, 0x7fc00000, 0x3800001},
5488{0x3800000, 0xff800001, 0xff800000, 0x7fc00000, 0x3800001},
5489{0x3800000, 0xff800001, 0xff800001, 0x7fc00000, 0x3800001},
5490{0x3800000, 0xff800001, 0xff984a37, 0x7fc00000, 0x3800001},
5491{0x3800000, 0xff800001, 0xffbfffff, 0x7fc00000, 0x3800001},
5492{0x3800000, 0xff800001, 0xffc00000, 0x7fc00000, 0x3800001},
5493{0x3800000, 0xff800001, 0xffd9ba98, 0x7fc00000, 0x3800001},
5494{0x3800000, 0xff800001, 0xffffffff, 0x7fc00000, 0x3800001},
5495{0x3800000, 0xff800001, 0x4f3495cb, 0x7fc00000, 0x3800001},
5496{0x3800000, 0xff800001, 0xe73a5134, 0x7fc00000, 0x3800001},
5497{0x3800000, 0xff800001, 0x7c994e9e, 0x7fc00000, 0x3800001},
5498{0x3800000, 0xff800001, 0x6164bd6c, 0x7fc00000, 0x3800001},
5499{0x3800000, 0xff800001, 0x9503366, 0x7fc00000, 0x3800001},
5500{0x3800000, 0xff800001, 0xbf5a97c9, 0x7fc00000, 0x3800001},
5501{0x3800000, 0xff800001, 0xe6ff1a14, 0x7fc00000, 0x3800001},
5502{0x3800000, 0xff800001, 0x77f31e2f, 0x7fc00000, 0x3800001},
5503{0x3800000, 0xff800001, 0xaab4d7d8, 0x7fc00000, 0x3800001},
5504{0x3800000, 0xff800001, 0x966320b, 0x7fc00000, 0x3800001},
5505{0x3800000, 0xff800001, 0xb26bddee, 0x7fc00000, 0x3800001},
5506{0x3800000, 0xff800001, 0xb5c8e5d3, 0x7fc00000, 0x3800001},
5507{0x3800000, 0xff800001, 0x317285d3, 0x7fc00000, 0x3800001},
5508{0x3800000, 0xff800001, 0x3c9623b1, 0x7fc00000, 0x3800001},
5509{0x3800000, 0xff800001, 0x51fd2c7c, 0x7fc00000, 0x3800001},
5510{0x3800000, 0xff800001, 0x7b906a6c, 0x7fc00000, 0x3800001},
5511{0x3800000, 0xff984a37, 0x0, 0x7fc00000, 0x3800001},
5512{0x3800000, 0xff984a37, 0x1, 0x7fc00000, 0x3800081},
5513{0x3800000, 0xff984a37, 0x76, 0x7fc00000, 0x3800081},
5514{0x3800000, 0xff984a37, 0x2b94, 0x7fc00000, 0x3800081},
5515{0x3800000, 0xff984a37, 0x636d24, 0x7fc00000, 0x3800081},
5516{0x3800000, 0xff984a37, 0x7fffff, 0x7fc00000, 0x3800081},
5517{0x3800000, 0xff984a37, 0x800000, 0x7fc00000, 0x3800001},
5518{0x3800000, 0xff984a37, 0x800002, 0x7fc00000, 0x3800001},
5519{0x3800000, 0xff984a37, 0x1398437, 0x7fc00000, 0x3800001},
5520{0x3800000, 0xff984a37, 0xba98d27, 0x7fc00000, 0x3800001},
5521{0x3800000, 0xff984a37, 0xba98d7a, 0x7fc00000, 0x3800001},
5522{0x3800000, 0xff984a37, 0x751f853a, 0x7fc00000, 0x3800001},
5523{0x3800000, 0xff984a37, 0x7f7ffff0, 0x7fc00000, 0x3800001},
5524{0x3800000, 0xff984a37, 0x7f7fffff, 0x7fc00000, 0x3800001},
5525{0x3800000, 0xff984a37, 0x7f800000, 0x7fc00000, 0x3800001},
5526{0x3800000, 0xff984a37, 0x7f800001, 0x7fc00000, 0x3800001},
5527{0x3800000, 0xff984a37, 0x7f984a37, 0x7fc00000, 0x3800001},
5528{0x3800000, 0xff984a37, 0x7fbfffff, 0x7fc00000, 0x3800001},
5529{0x3800000, 0xff984a37, 0x7fc00000, 0x7fc00000, 0x3800001},
5530{0x3800000, 0xff984a37, 0x7fd9ba98, 0x7fc00000, 0x3800001},
5531{0x3800000, 0xff984a37, 0x7fffffff, 0x7fc00000, 0x3800001},
5532{0x3800000, 0xff984a37, 0x80000000, 0x7fc00000, 0x3800001},
5533{0x3800000, 0xff984a37, 0x80000001, 0x7fc00000, 0x3800081},
5534{0x3800000, 0xff984a37, 0x80000076, 0x7fc00000, 0x3800081},
5535{0x3800000, 0xff984a37, 0x80002b94, 0x7fc00000, 0x3800081},
5536{0x3800000, 0xff984a37, 0x80636d24, 0x7fc00000, 0x3800081},
5537{0x3800000, 0xff984a37, 0x807fffff, 0x7fc00000, 0x3800081},
5538{0x3800000, 0xff984a37, 0x80800000, 0x7fc00000, 0x3800001},
5539{0x3800000, 0xff984a37, 0x80800002, 0x7fc00000, 0x3800001},
5540{0x3800000, 0xff984a37, 0x81398437, 0x7fc00000, 0x3800001},
5541{0x3800000, 0xff984a37, 0x8ba98d27, 0x7fc00000, 0x3800001},
5542{0x3800000, 0xff984a37, 0x8ba98d7a, 0x7fc00000, 0x3800001},
5543{0x3800000, 0xff984a37, 0xf51f853a, 0x7fc00000, 0x3800001},
5544{0x3800000, 0xff984a37, 0xff7ffff0, 0x7fc00000, 0x3800001},
5545{0x3800000, 0xff984a37, 0xff7fffff, 0x7fc00000, 0x3800001},
5546{0x3800000, 0xff984a37, 0xff800000, 0x7fc00000, 0x3800001},
5547{0x3800000, 0xff984a37, 0xff800001, 0x7fc00000, 0x3800001},
5548{0x3800000, 0xff984a37, 0xff984a37, 0x7fc00000, 0x3800001},
5549{0x3800000, 0xff984a37, 0xffbfffff, 0x7fc00000, 0x3800001},
5550{0x3800000, 0xff984a37, 0xffc00000, 0x7fc00000, 0x3800001},
5551{0x3800000, 0xff984a37, 0xffd9ba98, 0x7fc00000, 0x3800001},
5552{0x3800000, 0xff984a37, 0xffffffff, 0x7fc00000, 0x3800001},
5553{0x3800000, 0xff984a37, 0x4f3495cb, 0x7fc00000, 0x3800001},
5554{0x3800000, 0xff984a37, 0xe73a5134, 0x7fc00000, 0x3800001},
5555{0x3800000, 0xff984a37, 0x7c994e9e, 0x7fc00000, 0x3800001},
5556{0x3800000, 0xff984a37, 0x6164bd6c, 0x7fc00000, 0x3800001},
5557{0x3800000, 0xff984a37, 0x9503366, 0x7fc00000, 0x3800001},
5558{0x3800000, 0xff984a37, 0xbf5a97c9, 0x7fc00000, 0x3800001},
5559{0x3800000, 0xff984a37, 0xe6ff1a14, 0x7fc00000, 0x3800001},
5560{0x3800000, 0xff984a37, 0x77f31e2f, 0x7fc00000, 0x3800001},
5561{0x3800000, 0xff984a37, 0xaab4d7d8, 0x7fc00000, 0x3800001},
5562{0x3800000, 0xff984a37, 0x966320b, 0x7fc00000, 0x3800001},
5563{0x3800000, 0xff984a37, 0xb26bddee, 0x7fc00000, 0x3800001},
5564{0x3800000, 0xff984a37, 0xb5c8e5d3, 0x7fc00000, 0x3800001},
5565{0x3800000, 0xff984a37, 0x317285d3, 0x7fc00000, 0x3800001},
5566{0x3800000, 0xff984a37, 0x3c9623b1, 0x7fc00000, 0x3800001},
5567{0x3800000, 0xff984a37, 0x51fd2c7c, 0x7fc00000, 0x3800001},
5568{0x3800000, 0xff984a37, 0x7b906a6c, 0x7fc00000, 0x3800001},
5569{0x3800000, 0xffbfffff, 0x0, 0x7fc00000, 0x3800001},
5570{0x3800000, 0xffbfffff, 0x1, 0x7fc00000, 0x3800081},
5571{0x3800000, 0xffbfffff, 0x76, 0x7fc00000, 0x3800081},
5572{0x3800000, 0xffbfffff, 0x2b94, 0x7fc00000, 0x3800081},
5573{0x3800000, 0xffbfffff, 0x636d24, 0x7fc00000, 0x3800081},
5574{0x3800000, 0xffbfffff, 0x7fffff, 0x7fc00000, 0x3800081},
5575{0x3800000, 0xffbfffff, 0x800000, 0x7fc00000, 0x3800001},
5576{0x3800000, 0xffbfffff, 0x800002, 0x7fc00000, 0x3800001},
5577{0x3800000, 0xffbfffff, 0x1398437, 0x7fc00000, 0x3800001},
5578{0x3800000, 0xffbfffff, 0xba98d27, 0x7fc00000, 0x3800001},
5579{0x3800000, 0xffbfffff, 0xba98d7a, 0x7fc00000, 0x3800001},
5580{0x3800000, 0xffbfffff, 0x751f853a, 0x7fc00000, 0x3800001},
5581{0x3800000, 0xffbfffff, 0x7f7ffff0, 0x7fc00000, 0x3800001},
5582{0x3800000, 0xffbfffff, 0x7f7fffff, 0x7fc00000, 0x3800001},
5583{0x3800000, 0xffbfffff, 0x7f800000, 0x7fc00000, 0x3800001},
5584{0x3800000, 0xffbfffff, 0x7f800001, 0x7fc00000, 0x3800001},
5585{0x3800000, 0xffbfffff, 0x7f984a37, 0x7fc00000, 0x3800001},
5586{0x3800000, 0xffbfffff, 0x7fbfffff, 0x7fc00000, 0x3800001},
5587{0x3800000, 0xffbfffff, 0x7fc00000, 0x7fc00000, 0x3800001},
5588{0x3800000, 0xffbfffff, 0x7fd9ba98, 0x7fc00000, 0x3800001},
5589{0x3800000, 0xffbfffff, 0x7fffffff, 0x7fc00000, 0x3800001},
5590{0x3800000, 0xffbfffff, 0x80000000, 0x7fc00000, 0x3800001},
5591{0x3800000, 0xffbfffff, 0x80000001, 0x7fc00000, 0x3800081},
5592{0x3800000, 0xffbfffff, 0x80000076, 0x7fc00000, 0x3800081},
5593{0x3800000, 0xffbfffff, 0x80002b94, 0x7fc00000, 0x3800081},
5594{0x3800000, 0xffbfffff, 0x80636d24, 0x7fc00000, 0x3800081},
5595{0x3800000, 0xffbfffff, 0x807fffff, 0x7fc00000, 0x3800081},
5596{0x3800000, 0xffbfffff, 0x80800000, 0x7fc00000, 0x3800001},
5597{0x3800000, 0xffbfffff, 0x80800002, 0x7fc00000, 0x3800001},
5598{0x3800000, 0xffbfffff, 0x81398437, 0x7fc00000, 0x3800001},
5599{0x3800000, 0xffbfffff, 0x8ba98d27, 0x7fc00000, 0x3800001},
5600{0x3800000, 0xffbfffff, 0x8ba98d7a, 0x7fc00000, 0x3800001},
5601{0x3800000, 0xffbfffff, 0xf51f853a, 0x7fc00000, 0x3800001},
5602{0x3800000, 0xffbfffff, 0xff7ffff0, 0x7fc00000, 0x3800001},
5603{0x3800000, 0xffbfffff, 0xff7fffff, 0x7fc00000, 0x3800001},
5604{0x3800000, 0xffbfffff, 0xff800000, 0x7fc00000, 0x3800001},
5605{0x3800000, 0xffbfffff, 0xff800001, 0x7fc00000, 0x3800001},
5606{0x3800000, 0xffbfffff, 0xff984a37, 0x7fc00000, 0x3800001},
5607{0x3800000, 0xffbfffff, 0xffbfffff, 0x7fc00000, 0x3800001},
5608{0x3800000, 0xffbfffff, 0xffc00000, 0x7fc00000, 0x3800001},
5609{0x3800000, 0xffbfffff, 0xffd9ba98, 0x7fc00000, 0x3800001},
5610{0x3800000, 0xffbfffff, 0xffffffff, 0x7fc00000, 0x3800001},
5611{0x3800000, 0xffbfffff, 0x4f3495cb, 0x7fc00000, 0x3800001},
5612{0x3800000, 0xffbfffff, 0xe73a5134, 0x7fc00000, 0x3800001},
5613{0x3800000, 0xffbfffff, 0x7c994e9e, 0x7fc00000, 0x3800001},
5614{0x3800000, 0xffbfffff, 0x6164bd6c, 0x7fc00000, 0x3800001},
5615{0x3800000, 0xffbfffff, 0x9503366, 0x7fc00000, 0x3800001},
5616{0x3800000, 0xffbfffff, 0xbf5a97c9, 0x7fc00000, 0x3800001},
5617{0x3800000, 0xffbfffff, 0xe6ff1a14, 0x7fc00000, 0x3800001},
5618{0x3800000, 0xffbfffff, 0x77f31e2f, 0x7fc00000, 0x3800001},
5619{0x3800000, 0xffbfffff, 0xaab4d7d8, 0x7fc00000, 0x3800001},
5620{0x3800000, 0xffbfffff, 0x966320b, 0x7fc00000, 0x3800001},
5621{0x3800000, 0xffbfffff, 0xb26bddee, 0x7fc00000, 0x3800001},
5622{0x3800000, 0xffbfffff, 0xb5c8e5d3, 0x7fc00000, 0x3800001},
5623{0x3800000, 0xffbfffff, 0x317285d3, 0x7fc00000, 0x3800001},
5624{0x3800000, 0xffbfffff, 0x3c9623b1, 0x7fc00000, 0x3800001},
5625{0x3800000, 0xffbfffff, 0x51fd2c7c, 0x7fc00000, 0x3800001},
5626{0x3800000, 0xffbfffff, 0x7b906a6c, 0x7fc00000, 0x3800001},
5627{0x3800000, 0xffc00000, 0x0, 0x7fc00000, 0x3800000},
5628{0x3800000, 0xffc00000, 0x1, 0x7fc00000, 0x3800080},
5629{0x3800000, 0xffc00000, 0x76, 0x7fc00000, 0x3800080},
5630{0x3800000, 0xffc00000, 0x2b94, 0x7fc00000, 0x3800080},
5631{0x3800000, 0xffc00000, 0x636d24, 0x7fc00000, 0x3800080},
5632{0x3800000, 0xffc00000, 0x7fffff, 0x7fc00000, 0x3800080},
5633{0x3800000, 0xffc00000, 0x800000, 0x7fc00000, 0x3800000},
5634{0x3800000, 0xffc00000, 0x800002, 0x7fc00000, 0x3800000},
5635{0x3800000, 0xffc00000, 0x1398437, 0x7fc00000, 0x3800000},
5636{0x3800000, 0xffc00000, 0xba98d27, 0x7fc00000, 0x3800000},
5637{0x3800000, 0xffc00000, 0xba98d7a, 0x7fc00000, 0x3800000},
5638{0x3800000, 0xffc00000, 0x751f853a, 0x7fc00000, 0x3800000},
5639{0x3800000, 0xffc00000, 0x7f7ffff0, 0x7fc00000, 0x3800000},
5640{0x3800000, 0xffc00000, 0x7f7fffff, 0x7fc00000, 0x3800000},
5641{0x3800000, 0xffc00000, 0x7f800000, 0x7fc00000, 0x3800000},
5642{0x3800000, 0xffc00000, 0x7f800001, 0x7fc00000, 0x3800001},
5643{0x3800000, 0xffc00000, 0x7f984a37, 0x7fc00000, 0x3800001},
5644{0x3800000, 0xffc00000, 0x7fbfffff, 0x7fc00000, 0x3800001},
5645{0x3800000, 0xffc00000, 0x7fc00000, 0x7fc00000, 0x3800000},
5646{0x3800000, 0xffc00000, 0x7fd9ba98, 0x7fc00000, 0x3800000},
5647{0x3800000, 0xffc00000, 0x7fffffff, 0x7fc00000, 0x3800000},
5648{0x3800000, 0xffc00000, 0x80000000, 0x7fc00000, 0x3800000},
5649{0x3800000, 0xffc00000, 0x80000001, 0x7fc00000, 0x3800080},
5650{0x3800000, 0xffc00000, 0x80000076, 0x7fc00000, 0x3800080},
5651{0x3800000, 0xffc00000, 0x80002b94, 0x7fc00000, 0x3800080},
5652{0x3800000, 0xffc00000, 0x80636d24, 0x7fc00000, 0x3800080},
5653{0x3800000, 0xffc00000, 0x807fffff, 0x7fc00000, 0x3800080},
5654{0x3800000, 0xffc00000, 0x80800000, 0x7fc00000, 0x3800000},
5655{0x3800000, 0xffc00000, 0x80800002, 0x7fc00000, 0x3800000},
5656{0x3800000, 0xffc00000, 0x81398437, 0x7fc00000, 0x3800000},
5657{0x3800000, 0xffc00000, 0x8ba98d27, 0x7fc00000, 0x3800000},
5658{0x3800000, 0xffc00000, 0x8ba98d7a, 0x7fc00000, 0x3800000},
5659{0x3800000, 0xffc00000, 0xf51f853a, 0x7fc00000, 0x3800000},
5660{0x3800000, 0xffc00000, 0xff7ffff0, 0x7fc00000, 0x3800000},
5661{0x3800000, 0xffc00000, 0xff7fffff, 0x7fc00000, 0x3800000},
5662{0x3800000, 0xffc00000, 0xff800000, 0x7fc00000, 0x3800000},
5663{0x3800000, 0xffc00000, 0xff800001, 0x7fc00000, 0x3800001},
5664{0x3800000, 0xffc00000, 0xff984a37, 0x7fc00000, 0x3800001},
5665{0x3800000, 0xffc00000, 0xffbfffff, 0x7fc00000, 0x3800001},
5666{0x3800000, 0xffc00000, 0xffc00000, 0x7fc00000, 0x3800000},
5667{0x3800000, 0xffc00000, 0xffd9ba98, 0x7fc00000, 0x3800000},
5668{0x3800000, 0xffc00000, 0xffffffff, 0x7fc00000, 0x3800000},
5669{0x3800000, 0xffc00000, 0x4f3495cb, 0x7fc00000, 0x3800000},
5670{0x3800000, 0xffc00000, 0xe73a5134, 0x7fc00000, 0x3800000},
5671{0x3800000, 0xffc00000, 0x7c994e9e, 0x7fc00000, 0x3800000},
5672{0x3800000, 0xffc00000, 0x6164bd6c, 0x7fc00000, 0x3800000},
5673{0x3800000, 0xffc00000, 0x9503366, 0x7fc00000, 0x3800000},
5674{0x3800000, 0xffc00000, 0xbf5a97c9, 0x7fc00000, 0x3800000},
5675{0x3800000, 0xffc00000, 0xe6ff1a14, 0x7fc00000, 0x3800000},
5676{0x3800000, 0xffc00000, 0x77f31e2f, 0x7fc00000, 0x3800000},
5677{0x3800000, 0xffc00000, 0xaab4d7d8, 0x7fc00000, 0x3800000},
5678{0x3800000, 0xffc00000, 0x966320b, 0x7fc00000, 0x3800000},
5679{0x3800000, 0xffc00000, 0xb26bddee, 0x7fc00000, 0x3800000},
5680{0x3800000, 0xffc00000, 0xb5c8e5d3, 0x7fc00000, 0x3800000},
5681{0x3800000, 0xffc00000, 0x317285d3, 0x7fc00000, 0x3800000},
5682{0x3800000, 0xffc00000, 0x3c9623b1, 0x7fc00000, 0x3800000},
5683{0x3800000, 0xffc00000, 0x51fd2c7c, 0x7fc00000, 0x3800000},
5684{0x3800000, 0xffc00000, 0x7b906a6c, 0x7fc00000, 0x3800000},
5685{0x3800000, 0xffd9ba98, 0x0, 0x7fc00000, 0x3800000},
5686{0x3800000, 0xffd9ba98, 0x1, 0x7fc00000, 0x3800080},
5687{0x3800000, 0xffd9ba98, 0x76, 0x7fc00000, 0x3800080},
5688{0x3800000, 0xffd9ba98, 0x2b94, 0x7fc00000, 0x3800080},
5689{0x3800000, 0xffd9ba98, 0x636d24, 0x7fc00000, 0x3800080},
5690{0x3800000, 0xffd9ba98, 0x7fffff, 0x7fc00000, 0x3800080},
5691{0x3800000, 0xffd9ba98, 0x800000, 0x7fc00000, 0x3800000},
5692{0x3800000, 0xffd9ba98, 0x800002, 0x7fc00000, 0x3800000},
5693{0x3800000, 0xffd9ba98, 0x1398437, 0x7fc00000, 0x3800000},
5694{0x3800000, 0xffd9ba98, 0xba98d27, 0x7fc00000, 0x3800000},
5695{0x3800000, 0xffd9ba98, 0xba98d7a, 0x7fc00000, 0x3800000},
5696{0x3800000, 0xffd9ba98, 0x751f853a, 0x7fc00000, 0x3800000},
5697{0x3800000, 0xffd9ba98, 0x7f7ffff0, 0x7fc00000, 0x3800000},
5698{0x3800000, 0xffd9ba98, 0x7f7fffff, 0x7fc00000, 0x3800000},
5699{0x3800000, 0xffd9ba98, 0x7f800000, 0x7fc00000, 0x3800000},
5700{0x3800000, 0xffd9ba98, 0x7f800001, 0x7fc00000, 0x3800001},
5701{0x3800000, 0xffd9ba98, 0x7f984a37, 0x7fc00000, 0x3800001},
5702{0x3800000, 0xffd9ba98, 0x7fbfffff, 0x7fc00000, 0x3800001},
5703{0x3800000, 0xffd9ba98, 0x7fc00000, 0x7fc00000, 0x3800000},
5704{0x3800000, 0xffd9ba98, 0x7fd9ba98, 0x7fc00000, 0x3800000},
5705{0x3800000, 0xffd9ba98, 0x7fffffff, 0x7fc00000, 0x3800000},
5706{0x3800000, 0xffd9ba98, 0x80000000, 0x7fc00000, 0x3800000},
5707{0x3800000, 0xffd9ba98, 0x80000001, 0x7fc00000, 0x3800080},
5708{0x3800000, 0xffd9ba98, 0x80000076, 0x7fc00000, 0x3800080},
5709{0x3800000, 0xffd9ba98, 0x80002b94, 0x7fc00000, 0x3800080},
5710{0x3800000, 0xffd9ba98, 0x80636d24, 0x7fc00000, 0x3800080},
5711{0x3800000, 0xffd9ba98, 0x807fffff, 0x7fc00000, 0x3800080},
5712{0x3800000, 0xffd9ba98, 0x80800000, 0x7fc00000, 0x3800000},
5713{0x3800000, 0xffd9ba98, 0x80800002, 0x7fc00000, 0x3800000},
5714{0x3800000, 0xffd9ba98, 0x81398437, 0x7fc00000, 0x3800000},
5715{0x3800000, 0xffd9ba98, 0x8ba98d27, 0x7fc00000, 0x3800000},
5716{0x3800000, 0xffd9ba98, 0x8ba98d7a, 0x7fc00000, 0x3800000},
5717{0x3800000, 0xffd9ba98, 0xf51f853a, 0x7fc00000, 0x3800000},
5718{0x3800000, 0xffd9ba98, 0xff7ffff0, 0x7fc00000, 0x3800000},
5719{0x3800000, 0xffd9ba98, 0xff7fffff, 0x7fc00000, 0x3800000},
5720{0x3800000, 0xffd9ba98, 0xff800000, 0x7fc00000, 0x3800000},
5721{0x3800000, 0xffd9ba98, 0xff800001, 0x7fc00000, 0x3800001},
5722{0x3800000, 0xffd9ba98, 0xff984a37, 0x7fc00000, 0x3800001},
5723{0x3800000, 0xffd9ba98, 0xffbfffff, 0x7fc00000, 0x3800001},
5724{0x3800000, 0xffd9ba98, 0xffc00000, 0x7fc00000, 0x3800000},
5725{0x3800000, 0xffd9ba98, 0xffd9ba98, 0x7fc00000, 0x3800000},
5726{0x3800000, 0xffd9ba98, 0xffffffff, 0x7fc00000, 0x3800000},
5727{0x3800000, 0xffd9ba98, 0x4f3495cb, 0x7fc00000, 0x3800000},
5728{0x3800000, 0xffd9ba98, 0xe73a5134, 0x7fc00000, 0x3800000},
5729{0x3800000, 0xffd9ba98, 0x7c994e9e, 0x7fc00000, 0x3800000},
5730{0x3800000, 0xffd9ba98, 0x6164bd6c, 0x7fc00000, 0x3800000},
5731{0x3800000, 0xffd9ba98, 0x9503366, 0x7fc00000, 0x3800000},
5732{0x3800000, 0xffd9ba98, 0xbf5a97c9, 0x7fc00000, 0x3800000},
5733{0x3800000, 0xffd9ba98, 0xe6ff1a14, 0x7fc00000, 0x3800000},
5734{0x3800000, 0xffd9ba98, 0x77f31e2f, 0x7fc00000, 0x3800000},
5735{0x3800000, 0xffd9ba98, 0xaab4d7d8, 0x7fc00000, 0x3800000},
5736{0x3800000, 0xffd9ba98, 0x966320b, 0x7fc00000, 0x3800000},
5737{0x3800000, 0xffd9ba98, 0xb26bddee, 0x7fc00000, 0x3800000},
5738{0x3800000, 0xffd9ba98, 0xb5c8e5d3, 0x7fc00000, 0x3800000},
5739{0x3800000, 0xffd9ba98, 0x317285d3, 0x7fc00000, 0x3800000},
5740{0x3800000, 0xffd9ba98, 0x3c9623b1, 0x7fc00000, 0x3800000},
5741{0x3800000, 0xffd9ba98, 0x51fd2c7c, 0x7fc00000, 0x3800000},
5742{0x3800000, 0xffd9ba98, 0x7b906a6c, 0x7fc00000, 0x3800000},
5743{0x3800000, 0xffffffff, 0x0, 0x7fc00000, 0x3800000},
5744{0x3800000, 0xffffffff, 0x1, 0x7fc00000, 0x3800080},
5745{0x3800000, 0xffffffff, 0x76, 0x7fc00000, 0x3800080},
5746{0x3800000, 0xffffffff, 0x2b94, 0x7fc00000, 0x3800080},
5747{0x3800000, 0xffffffff, 0x636d24, 0x7fc00000, 0x3800080},
5748{0x3800000, 0xffffffff, 0x7fffff, 0x7fc00000, 0x3800080},
5749{0x3800000, 0xffffffff, 0x800000, 0x7fc00000, 0x3800000},
5750{0x3800000, 0xffffffff, 0x800002, 0x7fc00000, 0x3800000},
5751{0x3800000, 0xffffffff, 0x1398437, 0x7fc00000, 0x3800000},
5752{0x3800000, 0xffffffff, 0xba98d27, 0x7fc00000, 0x3800000},
5753{0x3800000, 0xffffffff, 0xba98d7a, 0x7fc00000, 0x3800000},
5754{0x3800000, 0xffffffff, 0x751f853a, 0x7fc00000, 0x3800000},
5755{0x3800000, 0xffffffff, 0x7f7ffff0, 0x7fc00000, 0x3800000},
5756{0x3800000, 0xffffffff, 0x7f7fffff, 0x7fc00000, 0x3800000},
5757{0x3800000, 0xffffffff, 0x7f800000, 0x7fc00000, 0x3800000},
5758{0x3800000, 0xffffffff, 0x7f800001, 0x7fc00000, 0x3800001},
5759{0x3800000, 0xffffffff, 0x7f984a37, 0x7fc00000, 0x3800001},
5760{0x3800000, 0xffffffff, 0x7fbfffff, 0x7fc00000, 0x3800001},
5761{0x3800000, 0xffffffff, 0x7fc00000, 0x7fc00000, 0x3800000},
5762{0x3800000, 0xffffffff, 0x7fd9ba98, 0x7fc00000, 0x3800000},
5763{0x3800000, 0xffffffff, 0x7fffffff, 0x7fc00000, 0x3800000},
5764{0x3800000, 0xffffffff, 0x80000000, 0x7fc00000, 0x3800000},
5765{0x3800000, 0xffffffff, 0x80000001, 0x7fc00000, 0x3800080},
5766{0x3800000, 0xffffffff, 0x80000076, 0x7fc00000, 0x3800080},
5767{0x3800000, 0xffffffff, 0x80002b94, 0x7fc00000, 0x3800080},
5768{0x3800000, 0xffffffff, 0x80636d24, 0x7fc00000, 0x3800080},
5769{0x3800000, 0xffffffff, 0x807fffff, 0x7fc00000, 0x3800080},
5770{0x3800000, 0xffffffff, 0x80800000, 0x7fc00000, 0x3800000},
5771{0x3800000, 0xffffffff, 0x80800002, 0x7fc00000, 0x3800000},
5772{0x3800000, 0xffffffff, 0x81398437, 0x7fc00000, 0x3800000},
5773{0x3800000, 0xffffffff, 0x8ba98d27, 0x7fc00000, 0x3800000},
5774{0x3800000, 0xffffffff, 0x8ba98d7a, 0x7fc00000, 0x3800000},
5775{0x3800000, 0xffffffff, 0xf51f853a, 0x7fc00000, 0x3800000},
5776{0x3800000, 0xffffffff, 0xff7ffff0, 0x7fc00000, 0x3800000},
5777{0x3800000, 0xffffffff, 0xff7fffff, 0x7fc00000, 0x3800000},
5778{0x3800000, 0xffffffff, 0xff800000, 0x7fc00000, 0x3800000},
5779{0x3800000, 0xffffffff, 0xff800001, 0x7fc00000, 0x3800001},
5780{0x3800000, 0xffffffff, 0xff984a37, 0x7fc00000, 0x3800001},
5781{0x3800000, 0xffffffff, 0xffbfffff, 0x7fc00000, 0x3800001},
5782{0x3800000, 0xffffffff, 0xffc00000, 0x7fc00000, 0x3800000},
5783{0x3800000, 0xffffffff, 0xffd9ba98, 0x7fc00000, 0x3800000},
5784{0x3800000, 0xffffffff, 0xffffffff, 0x7fc00000, 0x3800000},
5785{0x3800000, 0xffffffff, 0x4f3495cb, 0x7fc00000, 0x3800000},
5786{0x3800000, 0xffffffff, 0xe73a5134, 0x7fc00000, 0x3800000},
5787{0x3800000, 0xffffffff, 0x7c994e9e, 0x7fc00000, 0x3800000},
5788{0x3800000, 0xffffffff, 0x6164bd6c, 0x7fc00000, 0x3800000},
5789{0x3800000, 0xffffffff, 0x9503366, 0x7fc00000, 0x3800000},
5790{0x3800000, 0xffffffff, 0xbf5a97c9, 0x7fc00000, 0x3800000},
5791{0x3800000, 0xffffffff, 0xe6ff1a14, 0x7fc00000, 0x3800000},
5792{0x3800000, 0xffffffff, 0x77f31e2f, 0x7fc00000, 0x3800000},
5793{0x3800000, 0xffffffff, 0xaab4d7d8, 0x7fc00000, 0x3800000},
5794{0x3800000, 0xffffffff, 0x966320b, 0x7fc00000, 0x3800000},
5795{0x3800000, 0xffffffff, 0xb26bddee, 0x7fc00000, 0x3800000},
5796{0x3800000, 0xffffffff, 0xb5c8e5d3, 0x7fc00000, 0x3800000},
5797{0x3800000, 0xffffffff, 0x317285d3, 0x7fc00000, 0x3800000},
5798{0x3800000, 0xffffffff, 0x3c9623b1, 0x7fc00000, 0x3800000},
5799{0x3800000, 0xffffffff, 0x51fd2c7c, 0x7fc00000, 0x3800000},
5800{0x3800000, 0xffffffff, 0x7b906a6c, 0x7fc00000, 0x3800000},
5801{0x3800000, 0x4f3495cb, 0x0, 0x4f3495cb, 0x3800000},
5802{0x3800000, 0x4f3495cb, 0x1, 0x4f3495cb, 0x3800080},
5803{0x3800000, 0x4f3495cb, 0x76, 0x4f3495cb, 0x3800080},
5804{0x3800000, 0x4f3495cb, 0x2b94, 0x4f3495cb, 0x3800080},
5805{0x3800000, 0x4f3495cb, 0x636d24, 0x4f3495cb, 0x3800080},
5806{0x3800000, 0x4f3495cb, 0x7fffff, 0x4f3495cb, 0x3800080},
5807{0x3800000, 0x4f3495cb, 0x800000, 0x4f3495cb, 0x3800010},
5808{0x3800000, 0x4f3495cb, 0x800002, 0x4f3495cb, 0x3800010},
5809{0x3800000, 0x4f3495cb, 0x1398437, 0x4f3495cb, 0x3800010},
5810{0x3800000, 0x4f3495cb, 0xba98d27, 0x4f3495cb, 0x3800010},
5811{0x3800000, 0x4f3495cb, 0xba98d7a, 0x4f3495cb, 0x3800010},
5812{0x3800000, 0x4f3495cb, 0x751f853a, 0x751f853a, 0x3800010},
5813{0x3800000, 0x4f3495cb, 0x7f7ffff0, 0x7f7ffff0, 0x3800010},
5814{0x3800000, 0x4f3495cb, 0x7f7fffff, 0x7f7fffff, 0x3800010},
5815{0x3800000, 0x4f3495cb, 0x7f800000, 0x7f800000, 0x3800000},
5816{0x3800000, 0x4f3495cb, 0x7f800001, 0x7fc00000, 0x3800001},
5817{0x3800000, 0x4f3495cb, 0x7f984a37, 0x7fc00000, 0x3800001},
5818{0x3800000, 0x4f3495cb, 0x7fbfffff, 0x7fc00000, 0x3800001},
5819{0x3800000, 0x4f3495cb, 0x7fc00000, 0x7fc00000, 0x3800000},
5820{0x3800000, 0x4f3495cb, 0x7fd9ba98, 0x7fc00000, 0x3800000},
5821{0x3800000, 0x4f3495cb, 0x7fffffff, 0x7fc00000, 0x3800000},
5822{0x3800000, 0x4f3495cb, 0x80000000, 0x4f3495cb, 0x3800000},
5823{0x3800000, 0x4f3495cb, 0x80000001, 0x4f3495cb, 0x3800080},
5824{0x3800000, 0x4f3495cb, 0x80000076, 0x4f3495cb, 0x3800080},
5825{0x3800000, 0x4f3495cb, 0x80002b94, 0x4f3495cb, 0x3800080},
5826{0x3800000, 0x4f3495cb, 0x80636d24, 0x4f3495cb, 0x3800080},
5827{0x3800000, 0x4f3495cb, 0x807fffff, 0x4f3495cb, 0x3800080},
5828{0x3800000, 0x4f3495cb, 0x80800000, 0x4f3495ca, 0x3800010},
5829{0x3800000, 0x4f3495cb, 0x80800002, 0x4f3495ca, 0x3800010},
5830{0x3800000, 0x4f3495cb, 0x81398437, 0x4f3495ca, 0x3800010},
5831{0x3800000, 0x4f3495cb, 0x8ba98d27, 0x4f3495ca, 0x3800010},
5832{0x3800000, 0x4f3495cb, 0x8ba98d7a, 0x4f3495ca, 0x3800010},
5833{0x3800000, 0x4f3495cb, 0xf51f853a, 0xf51f853a, 0x3800010},
5834{0x3800000, 0x4f3495cb, 0xff7ffff0, 0xff7ffff0, 0x3800010},
5835{0x3800000, 0x4f3495cb, 0xff7fffff, 0xff7fffff, 0x3800010},
5836{0x3800000, 0x4f3495cb, 0xff800000, 0xff800000, 0x3800000},
5837{0x3800000, 0x4f3495cb, 0xff800001, 0x7fc00000, 0x3800001},
5838{0x3800000, 0x4f3495cb, 0xff984a37, 0x7fc00000, 0x3800001},
5839{0x3800000, 0x4f3495cb, 0xffbfffff, 0x7fc00000, 0x3800001},
5840{0x3800000, 0x4f3495cb, 0xffc00000, 0x7fc00000, 0x3800000},
5841{0x3800000, 0x4f3495cb, 0xffd9ba98, 0x7fc00000, 0x3800000},
5842{0x3800000, 0x4f3495cb, 0xffffffff, 0x7fc00000, 0x3800000},
5843{0x3800000, 0x4f3495cb, 0x4f3495cb, 0x4fb495cb, 0x3800000},
5844{0x3800000, 0x4f3495cb, 0xe73a5134, 0xe73a5134, 0x3800010},
5845{0x3800000, 0x4f3495cb, 0x7c994e9e, 0x7c994e9e, 0x3800010},
5846{0x3800000, 0x4f3495cb, 0x6164bd6c, 0x6164bd6c, 0x3800010},
5847{0x3800000, 0x4f3495cb, 0x9503366, 0x4f3495cb, 0x3800010},
5848{0x3800000, 0x4f3495cb, 0xbf5a97c9, 0x4f3495ca, 0x3800010},
5849{0x3800000, 0x4f3495cb, 0xe6ff1a14, 0xe6ff1a14, 0x3800010},
5850{0x3800000, 0x4f3495cb, 0x77f31e2f, 0x77f31e2f, 0x3800010},
5851{0x3800000, 0x4f3495cb, 0xaab4d7d8, 0x4f3495ca, 0x3800010},
5852{0x3800000, 0x4f3495cb, 0x966320b, 0x4f3495cb, 0x3800010},
5853{0x3800000, 0x4f3495cb, 0xb26bddee, 0x4f3495ca, 0x3800010},
5854{0x3800000, 0x4f3495cb, 0xb5c8e5d3, 0x4f3495ca, 0x3800010},
5855{0x3800000, 0x4f3495cb, 0x317285d3, 0x4f3495cb, 0x3800010},
5856{0x3800000, 0x4f3495cb, 0x3c9623b1, 0x4f3495cb, 0x3800010},
5857{0x3800000, 0x4f3495cb, 0x51fd2c7c, 0x52016895, 0x3800010},
5858{0x3800000, 0x4f3495cb, 0x7b906a6c, 0x7b906a6c, 0x3800010},
5859{0x3800000, 0xe73a5134, 0x0, 0xe73a5134, 0x3800000},
5860{0x3800000, 0xe73a5134, 0x1, 0xe73a5134, 0x3800080},
5861{0x3800000, 0xe73a5134, 0x76, 0xe73a5134, 0x3800080},
5862{0x3800000, 0xe73a5134, 0x2b94, 0xe73a5134, 0x3800080},
5863{0x3800000, 0xe73a5134, 0x636d24, 0xe73a5134, 0x3800080},
5864{0x3800000, 0xe73a5134, 0x7fffff, 0xe73a5134, 0x3800080},
5865{0x3800000, 0xe73a5134, 0x800000, 0xe73a5134, 0x3800010},
5866{0x3800000, 0xe73a5134, 0x800002, 0xe73a5134, 0x3800010},
5867{0x3800000, 0xe73a5134, 0x1398437, 0xe73a5134, 0x3800010},
5868{0x3800000, 0xe73a5134, 0xba98d27, 0xe73a5134, 0x3800010},
5869{0x3800000, 0xe73a5134, 0xba98d7a, 0xe73a5134, 0x3800010},
5870{0x3800000, 0xe73a5134, 0x751f853a, 0x751f8539, 0x3800010},
5871{0x3800000, 0xe73a5134, 0x7f7ffff0, 0x7f7fffef, 0x3800010},
5872{0x3800000, 0xe73a5134, 0x7f7fffff, 0x7f7ffffe, 0x3800010},
5873{0x3800000, 0xe73a5134, 0x7f800000, 0x7f800000, 0x3800000},
5874{0x3800000, 0xe73a5134, 0x7f800001, 0x7fc00000, 0x3800001},
5875{0x3800000, 0xe73a5134, 0x7f984a37, 0x7fc00000, 0x3800001},
5876{0x3800000, 0xe73a5134, 0x7fbfffff, 0x7fc00000, 0x3800001},
5877{0x3800000, 0xe73a5134, 0x7fc00000, 0x7fc00000, 0x3800000},
5878{0x3800000, 0xe73a5134, 0x7fd9ba98, 0x7fc00000, 0x3800000},
5879{0x3800000, 0xe73a5134, 0x7fffffff, 0x7fc00000, 0x3800000},
5880{0x3800000, 0xe73a5134, 0x80000000, 0xe73a5134, 0x3800000},
5881{0x3800000, 0xe73a5134, 0x80000001, 0xe73a5134, 0x3800080},
5882{0x3800000, 0xe73a5134, 0x80000076, 0xe73a5134, 0x3800080},
5883{0x3800000, 0xe73a5134, 0x80002b94, 0xe73a5134, 0x3800080},
5884{0x3800000, 0xe73a5134, 0x80636d24, 0xe73a5134, 0x3800080},
5885{0x3800000, 0xe73a5134, 0x807fffff, 0xe73a5134, 0x3800080},
5886{0x3800000, 0xe73a5134, 0x80800000, 0xe73a5135, 0x3800010},
5887{0x3800000, 0xe73a5134, 0x80800002, 0xe73a5135, 0x3800010},
5888{0x3800000, 0xe73a5134, 0x81398437, 0xe73a5135, 0x3800010},
5889{0x3800000, 0xe73a5134, 0x8ba98d27, 0xe73a5135, 0x3800010},
5890{0x3800000, 0xe73a5134, 0x8ba98d7a, 0xe73a5135, 0x3800010},
5891{0x3800000, 0xe73a5134, 0xf51f853a, 0xf51f853b, 0x3800010},
5892{0x3800000, 0xe73a5134, 0xff7ffff0, 0xff7ffff1, 0x3800010},
5893{0x3800000, 0xe73a5134, 0xff7fffff, 0xff800000, 0x3800014},
5894{0x3800000, 0xe73a5134, 0xff800000, 0xff800000, 0x3800000},
5895{0x3800000, 0xe73a5134, 0xff800001, 0x7fc00000, 0x3800001},
5896{0x3800000, 0xe73a5134, 0xff984a37, 0x7fc00000, 0x3800001},
5897{0x3800000, 0xe73a5134, 0xffbfffff, 0x7fc00000, 0x3800001},
5898{0x3800000, 0xe73a5134, 0xffc00000, 0x7fc00000, 0x3800000},
5899{0x3800000, 0xe73a5134, 0xffd9ba98, 0x7fc00000, 0x3800000},
5900{0x3800000, 0xe73a5134, 0xffffffff, 0x7fc00000, 0x3800000},
5901{0x3800000, 0xe73a5134, 0x4f3495cb, 0xe73a5134, 0x3800010},
5902{0x3800000, 0xe73a5134, 0xe73a5134, 0xe7ba5134, 0x3800000},
5903{0x3800000, 0xe73a5134, 0x7c994e9e, 0x7c994e9d, 0x3800010},
5904{0x3800000, 0xe73a5134, 0x6164bd6c, 0xe73a42e9, 0x3800010},
5905{0x3800000, 0xe73a5134, 0x9503366, 0xe73a5134, 0x3800010},
5906{0x3800000, 0xe73a5134, 0xbf5a97c9, 0xe73a5135, 0x3800010},
5907{0x3800000, 0xe73a5134, 0xe6ff1a14, 0xe79cef1f, 0x3800000},
5908{0x3800000, 0xe73a5134, 0x77f31e2f, 0x77f31e2e, 0x3800010},
5909{0x3800000, 0xe73a5134, 0xaab4d7d8, 0xe73a5135, 0x3800010},
5910{0x3800000, 0xe73a5134, 0x966320b, 0xe73a5134, 0x3800010},
5911{0x3800000, 0xe73a5134, 0xb26bddee, 0xe73a5135, 0x3800010},
5912{0x3800000, 0xe73a5134, 0xb5c8e5d3, 0xe73a5135, 0x3800010},
5913{0x3800000, 0xe73a5134, 0x317285d3, 0xe73a5134, 0x3800010},
5914{0x3800000, 0xe73a5134, 0x3c9623b1, 0xe73a5134, 0x3800010},
5915{0x3800000, 0xe73a5134, 0x51fd2c7c, 0xe73a5134, 0x3800010},
5916{0x3800000, 0xe73a5134, 0x7b906a6c, 0x7b906a6b, 0x3800010},
5917{0x3800000, 0x7c994e9e, 0x0, 0x7c994e9e, 0x3800000},
5918{0x3800000, 0x7c994e9e, 0x1, 0x7c994e9e, 0x3800080},
5919{0x3800000, 0x7c994e9e, 0x76, 0x7c994e9e, 0x3800080},
5920{0x3800000, 0x7c994e9e, 0x2b94, 0x7c994e9e, 0x3800080},
5921{0x3800000, 0x7c994e9e, 0x636d24, 0x7c994e9e, 0x3800080},
5922{0x3800000, 0x7c994e9e, 0x7fffff, 0x7c994e9e, 0x3800080},
5923{0x3800000, 0x7c994e9e, 0x800000, 0x7c994e9e, 0x3800010},
5924{0x3800000, 0x7c994e9e, 0x800002, 0x7c994e9e, 0x3800010},
5925{0x3800000, 0x7c994e9e, 0x1398437, 0x7c994e9e, 0x3800010},
5926{0x3800000, 0x7c994e9e, 0xba98d27, 0x7c994e9e, 0x3800010},
5927{0x3800000, 0x7c994e9e, 0xba98d7a, 0x7c994e9e, 0x3800010},
5928{0x3800000, 0x7c994e9e, 0x751f853a, 0x7c994fdd, 0x3800010},
5929{0x3800000, 0x7c994e9e, 0x7f7ffff0, 0x7f7fffff, 0x3800014},
5930{0x3800000, 0x7c994e9e, 0x7f7fffff, 0x7f7fffff, 0x3800014},
5931{0x3800000, 0x7c994e9e, 0x7f800000, 0x7f800000, 0x3800000},
5932{0x3800000, 0x7c994e9e, 0x7f800001, 0x7fc00000, 0x3800001},
5933{0x3800000, 0x7c994e9e, 0x7f984a37, 0x7fc00000, 0x3800001},
5934{0x3800000, 0x7c994e9e, 0x7fbfffff, 0x7fc00000, 0x3800001},
5935{0x3800000, 0x7c994e9e, 0x7fc00000, 0x7fc00000, 0x3800000},
5936{0x3800000, 0x7c994e9e, 0x7fd9ba98, 0x7fc00000, 0x3800000},
5937{0x3800000, 0x7c994e9e, 0x7fffffff, 0x7fc00000, 0x3800000},
5938{0x3800000, 0x7c994e9e, 0x80000000, 0x7c994e9e, 0x3800000},
5939{0x3800000, 0x7c994e9e, 0x80000001, 0x7c994e9e, 0x3800080},
5940{0x3800000, 0x7c994e9e, 0x80000076, 0x7c994e9e, 0x3800080},
5941{0x3800000, 0x7c994e9e, 0x80002b94, 0x7c994e9e, 0x3800080},
5942{0x3800000, 0x7c994e9e, 0x80636d24, 0x7c994e9e, 0x3800080},
5943{0x3800000, 0x7c994e9e, 0x807fffff, 0x7c994e9e, 0x3800080},
5944{0x3800000, 0x7c994e9e, 0x80800000, 0x7c994e9d, 0x3800010},
5945{0x3800000, 0x7c994e9e, 0x80800002, 0x7c994e9d, 0x3800010},
5946{0x3800000, 0x7c994e9e, 0x81398437, 0x7c994e9d, 0x3800010},
5947{0x3800000, 0x7c994e9e, 0x8ba98d27, 0x7c994e9d, 0x3800010},
5948{0x3800000, 0x7c994e9e, 0x8ba98d7a, 0x7c994e9d, 0x3800010},
5949{0x3800000, 0x7c994e9e, 0xf51f853a, 0x7c994d5e, 0x3800010},
5950{0x3800000, 0x7c994e9e, 0xff7ffff0, 0xff7b357c, 0x3800010},
5951{0x3800000, 0x7c994e9e, 0xff7fffff, 0xff7b358b, 0x3800010},
5952{0x3800000, 0x7c994e9e, 0xff800000, 0xff800000, 0x3800000},
5953{0x3800000, 0x7c994e9e, 0xff800001, 0x7fc00000, 0x3800001},
5954{0x3800000, 0x7c994e9e, 0xff984a37, 0x7fc00000, 0x3800001},
5955{0x3800000, 0x7c994e9e, 0xffbfffff, 0x7fc00000, 0x3800001},
5956{0x3800000, 0x7c994e9e, 0xffc00000, 0x7fc00000, 0x3800000},
5957{0x3800000, 0x7c994e9e, 0xffd9ba98, 0x7fc00000, 0x3800000},
5958{0x3800000, 0x7c994e9e, 0xffffffff, 0x7fc00000, 0x3800000},
5959{0x3800000, 0x7c994e9e, 0x4f3495cb, 0x7c994e9e, 0x3800010},
5960{0x3800000, 0x7c994e9e, 0xe73a5134, 0x7c994e9d, 0x3800010},
5961{0x3800000, 0x7c994e9e, 0x7c994e9e, 0x7d194e9e, 0x3800000},
5962{0x3800000, 0x7c994e9e, 0x6164bd6c, 0x7c994e9e, 0x3800010},
5963{0x3800000, 0x7c994e9e, 0x9503366, 0x7c994e9e, 0x3800010},
5964{0x3800000, 0x7c994e9e, 0xbf5a97c9, 0x7c994e9d, 0x3800010},
5965{0x3800000, 0x7c994e9e, 0xe6ff1a14, 0x7c994e9d, 0x3800010},
5966{0x3800000, 0x7c994e9e, 0x77f31e2f, 0x7c998b65, 0x3800010},
5967{0x3800000, 0x7c994e9e, 0xaab4d7d8, 0x7c994e9d, 0x3800010},
5968{0x3800000, 0x7c994e9e, 0x966320b, 0x7c994e9e, 0x3800010},
5969{0x3800000, 0x7c994e9e, 0xb26bddee, 0x7c994e9d, 0x3800010},
5970{0x3800000, 0x7c994e9e, 0xb5c8e5d3, 0x7c994e9d, 0x3800010},
5971{0x3800000, 0x7c994e9e, 0x317285d3, 0x7c994e9e, 0x3800010},
5972{0x3800000, 0x7c994e9e, 0x3c9623b1, 0x7c994e9e, 0x3800010},
5973{0x3800000, 0x7c994e9e, 0x51fd2c7c, 0x7c994e9e, 0x3800010},
5974{0x3800000, 0x7c994e9e, 0x7b906a6c, 0x7cbd6939, 0x3800000},
5975{0x3800000, 0x6164bd6c, 0x0, 0x6164bd6c, 0x3800000},
5976{0x3800000, 0x6164bd6c, 0x1, 0x6164bd6c, 0x3800080},
5977{0x3800000, 0x6164bd6c, 0x76, 0x6164bd6c, 0x3800080},
5978{0x3800000, 0x6164bd6c, 0x2b94, 0x6164bd6c, 0x3800080},
5979{0x3800000, 0x6164bd6c, 0x636d24, 0x6164bd6c, 0x3800080},
5980{0x3800000, 0x6164bd6c, 0x7fffff, 0x6164bd6c, 0x3800080},
5981{0x3800000, 0x6164bd6c, 0x800000, 0x6164bd6c, 0x3800010},
5982{0x3800000, 0x6164bd6c, 0x800002, 0x6164bd6c, 0x3800010},
5983{0x3800000, 0x6164bd6c, 0x1398437, 0x6164bd6c, 0x3800010},
5984{0x3800000, 0x6164bd6c, 0xba98d27, 0x6164bd6c, 0x3800010},
5985{0x3800000, 0x6164bd6c, 0xba98d7a, 0x6164bd6c, 0x3800010},
5986{0x3800000, 0x6164bd6c, 0x751f853a, 0x751f853a, 0x3800010},
5987{0x3800000, 0x6164bd6c, 0x7f7ffff0, 0x7f7ffff0, 0x3800010},
5988{0x3800000, 0x6164bd6c, 0x7f7fffff, 0x7f7fffff, 0x3800010},
5989{0x3800000, 0x6164bd6c, 0x7f800000, 0x7f800000, 0x3800000},
5990{0x3800000, 0x6164bd6c, 0x7f800001, 0x7fc00000, 0x3800001},
5991{0x3800000, 0x6164bd6c, 0x7f984a37, 0x7fc00000, 0x3800001},
5992{0x3800000, 0x6164bd6c, 0x7fbfffff, 0x7fc00000, 0x3800001},
5993{0x3800000, 0x6164bd6c, 0x7fc00000, 0x7fc00000, 0x3800000},
5994{0x3800000, 0x6164bd6c, 0x7fd9ba98, 0x7fc00000, 0x3800000},
5995{0x3800000, 0x6164bd6c, 0x7fffffff, 0x7fc00000, 0x3800000},
5996{0x3800000, 0x6164bd6c, 0x80000000, 0x6164bd6c, 0x3800000},
5997{0x3800000, 0x6164bd6c, 0x80000001, 0x6164bd6c, 0x3800080},
5998{0x3800000, 0x6164bd6c, 0x80000076, 0x6164bd6c, 0x3800080},
5999{0x3800000, 0x6164bd6c, 0x80002b94, 0x6164bd6c, 0x3800080},
6000{0x3800000, 0x6164bd6c, 0x80636d24, 0x6164bd6c, 0x3800080},
6001{0x3800000, 0x6164bd6c, 0x807fffff, 0x6164bd6c, 0x3800080},
6002{0x3800000, 0x6164bd6c, 0x80800000, 0x6164bd6b, 0x3800010},
6003{0x3800000, 0x6164bd6c, 0x80800002, 0x6164bd6b, 0x3800010},
6004{0x3800000, 0x6164bd6c, 0x81398437, 0x6164bd6b, 0x3800010},
6005{0x3800000, 0x6164bd6c, 0x8ba98d27, 0x6164bd6b, 0x3800010},
6006{0x3800000, 0x6164bd6c, 0x8ba98d7a, 0x6164bd6b, 0x3800010},
6007{0x3800000, 0x6164bd6c, 0xf51f853a, 0xf51f853a, 0x3800010},
6008{0x3800000, 0x6164bd6c, 0xff7ffff0, 0xff7ffff0, 0x3800010},
6009{0x3800000, 0x6164bd6c, 0xff7fffff, 0xff7fffff, 0x3800010},
6010{0x3800000, 0x6164bd6c, 0xff800000, 0xff800000, 0x3800000},
6011{0x3800000, 0x6164bd6c, 0xff800001, 0x7fc00000, 0x3800001},
6012{0x3800000, 0x6164bd6c, 0xff984a37, 0x7fc00000, 0x3800001},
6013{0x3800000, 0x6164bd6c, 0xffbfffff, 0x7fc00000, 0x3800001},
6014{0x3800000, 0x6164bd6c, 0xffc00000, 0x7fc00000, 0x3800000},
6015{0x3800000, 0x6164bd6c, 0xffd9ba98, 0x7fc00000, 0x3800000},
6016{0x3800000, 0x6164bd6c, 0xffffffff, 0x7fc00000, 0x3800000},
6017{0x3800000, 0x6164bd6c, 0x4f3495cb, 0x6164bd6c, 0x3800010},
6018{0x3800000, 0x6164bd6c, 0xe73a5134, 0xe73a42e9, 0x3800010},
6019{0x3800000, 0x6164bd6c, 0x7c994e9e, 0x7c994e9e, 0x3800010},
6020{0x3800000, 0x6164bd6c, 0x6164bd6c, 0x61e4bd6c, 0x3800000},
6021{0x3800000, 0x6164bd6c, 0x9503366, 0x6164bd6c, 0x3800010},
6022{0x3800000, 0x6164bd6c, 0xbf5a97c9, 0x6164bd6b, 0x3800010},
6023{0x3800000, 0x6164bd6c, 0xe6ff1a14, 0xe6fefd7d, 0x3800010},
6024{0x3800000, 0x6164bd6c, 0x77f31e2f, 0x77f31e2f, 0x3800010},
6025{0x3800000, 0x6164bd6c, 0xaab4d7d8, 0x6164bd6b, 0x3800010},
6026{0x3800000, 0x6164bd6c, 0x966320b, 0x6164bd6c, 0x3800010},
6027{0x3800000, 0x6164bd6c, 0xb26bddee, 0x6164bd6b, 0x3800010},
6028{0x3800000, 0x6164bd6c, 0xb5c8e5d3, 0x6164bd6b, 0x3800010},
6029{0x3800000, 0x6164bd6c, 0x317285d3, 0x6164bd6c, 0x3800010},
6030{0x3800000, 0x6164bd6c, 0x3c9623b1, 0x6164bd6c, 0x3800010},
6031{0x3800000, 0x6164bd6c, 0x51fd2c7c, 0x6164bd6c, 0x3800010},
6032{0x3800000, 0x6164bd6c, 0x7b906a6c, 0x7b906a6c, 0x3800010},
6033{0x3800000, 0x9503366, 0x0, 0x9503366, 0x3800000},
6034{0x3800000, 0x9503366, 0x1, 0x9503366, 0x3800080},
6035{0x3800000, 0x9503366, 0x76, 0x9503366, 0x3800080},
6036{0x3800000, 0x9503366, 0x2b94, 0x9503366, 0x3800080},
6037{0x3800000, 0x9503366, 0x636d24, 0x9503366, 0x3800080},
6038{0x3800000, 0x9503366, 0x7fffff, 0x9503366, 0x3800080},
6039{0x3800000, 0x9503366, 0x800000, 0x95033a6, 0x3800000},
6040{0x3800000, 0x9503366, 0x800002, 0x95033a6, 0x3800010},
6041{0x3800000, 0x9503366, 0x1398437, 0x950341f, 0x3800010},
6042{0x3800000, 0x9503366, 0xba98d27, 0xbb00ec2, 0x3800010},
6043{0x3800000, 0x9503366, 0xba98d7a, 0xbb00f15, 0x3800010},
6044{0x3800000, 0x9503366, 0x751f853a, 0x751f853a, 0x3800010},
6045{0x3800000, 0x9503366, 0x7f7ffff0, 0x7f7ffff0, 0x3800010},
6046{0x3800000, 0x9503366, 0x7f7fffff, 0x7f7fffff, 0x3800010},
6047{0x3800000, 0x9503366, 0x7f800000, 0x7f800000, 0x3800000},
6048{0x3800000, 0x9503366, 0x7f800001, 0x7fc00000, 0x3800001},
6049{0x3800000, 0x9503366, 0x7f984a37, 0x7fc00000, 0x3800001},
6050{0x3800000, 0x9503366, 0x7fbfffff, 0x7fc00000, 0x3800001},
6051{0x3800000, 0x9503366, 0x7fc00000, 0x7fc00000, 0x3800000},
6052{0x3800000, 0x9503366, 0x7fd9ba98, 0x7fc00000, 0x3800000},
6053{0x3800000, 0x9503366, 0x7fffffff, 0x7fc00000, 0x3800000},
6054{0x3800000, 0x9503366, 0x80000000, 0x9503366, 0x3800000},
6055{0x3800000, 0x9503366, 0x80000001, 0x9503366, 0x3800080},
6056{0x3800000, 0x9503366, 0x80000076, 0x9503366, 0x3800080},
6057{0x3800000, 0x9503366, 0x80002b94, 0x9503366, 0x3800080},
6058{0x3800000, 0x9503366, 0x80636d24, 0x9503366, 0x3800080},
6059{0x3800000, 0x9503366, 0x807fffff, 0x9503366, 0x3800080},
6060{0x3800000, 0x9503366, 0x80800000, 0x9503326, 0x3800000},
6061{0x3800000, 0x9503366, 0x80800002, 0x9503325, 0x3800010},
6062{0x3800000, 0x9503366, 0x81398437, 0x95032ac, 0x3800010},
6063{0x3800000, 0x9503366, 0x8ba98d27, 0x8ba30b8c, 0x3800010},
6064{0x3800000, 0x9503366, 0x8ba98d7a, 0x8ba30bdf, 0x3800010},
6065{0x3800000, 0x9503366, 0xf51f853a, 0xf51f853a, 0x3800010},
6066{0x3800000, 0x9503366, 0xff7ffff0, 0xff7ffff0, 0x3800010},
6067{0x3800000, 0x9503366, 0xff7fffff, 0xff7fffff, 0x3800010},
6068{0x3800000, 0x9503366, 0xff800000, 0xff800000, 0x3800000},
6069{0x3800000, 0x9503366, 0xff800001, 0x7fc00000, 0x3800001},
6070{0x3800000, 0x9503366, 0xff984a37, 0x7fc00000, 0x3800001},
6071{0x3800000, 0x9503366, 0xffbfffff, 0x7fc00000, 0x3800001},
6072{0x3800000, 0x9503366, 0xffc00000, 0x7fc00000, 0x3800000},
6073{0x3800000, 0x9503366, 0xffd9ba98, 0x7fc00000, 0x3800000},
6074{0x3800000, 0x9503366, 0xffffffff, 0x7fc00000, 0x3800000},
6075{0x3800000, 0x9503366, 0x4f3495cb, 0x4f3495cb, 0x3800010},
6076{0x3800000, 0x9503366, 0xe73a5134, 0xe73a5134, 0x3800010},
6077{0x3800000, 0x9503366, 0x7c994e9e, 0x7c994e9e, 0x3800010},
6078{0x3800000, 0x9503366, 0x6164bd6c, 0x6164bd6c, 0x3800010},
6079{0x3800000, 0x9503366, 0x9503366, 0x9d03366, 0x3800000},
6080{0x3800000, 0x9503366, 0xbf5a97c9, 0xbf5a97c9, 0x3800010},
6081{0x3800000, 0x9503366, 0xe6ff1a14, 0xe6ff1a14, 0x3800010},
6082{0x3800000, 0x9503366, 0x77f31e2f, 0x77f31e2f, 0x3800010},
6083{0x3800000, 0x9503366, 0xaab4d7d8, 0xaab4d7d8, 0x3800010},
6084{0x3800000, 0x9503366, 0x966320b, 0x9db32b8, 0x3800010},
6085{0x3800000, 0x9503366, 0xb26bddee, 0xb26bddee, 0x3800010},
6086{0x3800000, 0x9503366, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800010},
6087{0x3800000, 0x9503366, 0x317285d3, 0x317285d3, 0x3800010},
6088{0x3800000, 0x9503366, 0x3c9623b1, 0x3c9623b1, 0x3800010},
6089{0x3800000, 0x9503366, 0x51fd2c7c, 0x51fd2c7c, 0x3800010},
6090{0x3800000, 0x9503366, 0x7b906a6c, 0x7b906a6c, 0x3800010},
6091{0x3800000, 0xbf5a97c9, 0x0, 0xbf5a97c9, 0x3800000},
6092{0x3800000, 0xbf5a97c9, 0x1, 0xbf5a97c9, 0x3800080},
6093{0x3800000, 0xbf5a97c9, 0x76, 0xbf5a97c9, 0x3800080},
6094{0x3800000, 0xbf5a97c9, 0x2b94, 0xbf5a97c9, 0x3800080},
6095{0x3800000, 0xbf5a97c9, 0x636d24, 0xbf5a97c9, 0x3800080},
6096{0x3800000, 0xbf5a97c9, 0x7fffff, 0xbf5a97c9, 0x3800080},
6097{0x3800000, 0xbf5a97c9, 0x800000, 0xbf5a97c9, 0x3800010},
6098{0x3800000, 0xbf5a97c9, 0x800002, 0xbf5a97c9, 0x3800010},
6099{0x3800000, 0xbf5a97c9, 0x1398437, 0xbf5a97c9, 0x3800010},
6100{0x3800000, 0xbf5a97c9, 0xba98d27, 0xbf5a97c9, 0x3800010},
6101{0x3800000, 0xbf5a97c9, 0xba98d7a, 0xbf5a97c9, 0x3800010},
6102{0x3800000, 0xbf5a97c9, 0x751f853a, 0x751f8539, 0x3800010},
6103{0x3800000, 0xbf5a97c9, 0x7f7ffff0, 0x7f7fffef, 0x3800010},
6104{0x3800000, 0xbf5a97c9, 0x7f7fffff, 0x7f7ffffe, 0x3800010},
6105{0x3800000, 0xbf5a97c9, 0x7f800000, 0x7f800000, 0x3800000},
6106{0x3800000, 0xbf5a97c9, 0x7f800001, 0x7fc00000, 0x3800001},
6107{0x3800000, 0xbf5a97c9, 0x7f984a37, 0x7fc00000, 0x3800001},
6108{0x3800000, 0xbf5a97c9, 0x7fbfffff, 0x7fc00000, 0x3800001},
6109{0x3800000, 0xbf5a97c9, 0x7fc00000, 0x7fc00000, 0x3800000},
6110{0x3800000, 0xbf5a97c9, 0x7fd9ba98, 0x7fc00000, 0x3800000},
6111{0x3800000, 0xbf5a97c9, 0x7fffffff, 0x7fc00000, 0x3800000},
6112{0x3800000, 0xbf5a97c9, 0x80000000, 0xbf5a97c9, 0x3800000},
6113{0x3800000, 0xbf5a97c9, 0x80000001, 0xbf5a97c9, 0x3800080},
6114{0x3800000, 0xbf5a97c9, 0x80000076, 0xbf5a97c9, 0x3800080},
6115{0x3800000, 0xbf5a97c9, 0x80002b94, 0xbf5a97c9, 0x3800080},
6116{0x3800000, 0xbf5a97c9, 0x80636d24, 0xbf5a97c9, 0x3800080},
6117{0x3800000, 0xbf5a97c9, 0x807fffff, 0xbf5a97c9, 0x3800080},
6118{0x3800000, 0xbf5a97c9, 0x80800000, 0xbf5a97ca, 0x3800010},
6119{0x3800000, 0xbf5a97c9, 0x80800002, 0xbf5a97ca, 0x3800010},
6120{0x3800000, 0xbf5a97c9, 0x81398437, 0xbf5a97ca, 0x3800010},
6121{0x3800000, 0xbf5a97c9, 0x8ba98d27, 0xbf5a97ca, 0x3800010},
6122{0x3800000, 0xbf5a97c9, 0x8ba98d7a, 0xbf5a97ca, 0x3800010},
6123{0x3800000, 0xbf5a97c9, 0xf51f853a, 0xf51f853b, 0x3800010},
6124{0x3800000, 0xbf5a97c9, 0xff7ffff0, 0xff7ffff1, 0x3800010},
6125{0x3800000, 0xbf5a97c9, 0xff7fffff, 0xff800000, 0x3800014},
6126{0x3800000, 0xbf5a97c9, 0xff800000, 0xff800000, 0x3800000},
6127{0x3800000, 0xbf5a97c9, 0xff800001, 0x7fc00000, 0x3800001},
6128{0x3800000, 0xbf5a97c9, 0xff984a37, 0x7fc00000, 0x3800001},
6129{0x3800000, 0xbf5a97c9, 0xffbfffff, 0x7fc00000, 0x3800001},
6130{0x3800000, 0xbf5a97c9, 0xffc00000, 0x7fc00000, 0x3800000},
6131{0x3800000, 0xbf5a97c9, 0xffd9ba98, 0x7fc00000, 0x3800000},
6132{0x3800000, 0xbf5a97c9, 0xffffffff, 0x7fc00000, 0x3800000},
6133{0x3800000, 0xbf5a97c9, 0x4f3495cb, 0x4f3495ca, 0x3800010},
6134{0x3800000, 0xbf5a97c9, 0xe73a5134, 0xe73a5135, 0x3800010},
6135{0x3800000, 0xbf5a97c9, 0x7c994e9e, 0x7c994e9d, 0x3800010},
6136{0x3800000, 0xbf5a97c9, 0x6164bd6c, 0x6164bd6b, 0x3800010},
6137{0x3800000, 0xbf5a97c9, 0x9503366, 0xbf5a97c9, 0x3800010},
6138{0x3800000, 0xbf5a97c9, 0xbf5a97c9, 0xbfda97c9, 0x3800000},
6139{0x3800000, 0xbf5a97c9, 0xe6ff1a14, 0xe6ff1a15, 0x3800010},
6140{0x3800000, 0xbf5a97c9, 0x77f31e2f, 0x77f31e2e, 0x3800010},
6141{0x3800000, 0xbf5a97c9, 0xaab4d7d8, 0xbf5a97ca, 0x3800010},
6142{0x3800000, 0xbf5a97c9, 0x966320b, 0xbf5a97c9, 0x3800010},
6143{0x3800000, 0xbf5a97c9, 0xb26bddee, 0xbf5a97ca, 0x3800010},
6144{0x3800000, 0xbf5a97c9, 0xb5c8e5d3, 0xbf5a97e3, 0x3800010},
6145{0x3800000, 0xbf5a97c9, 0x317285d3, 0xbf5a97c9, 0x3800010},
6146{0x3800000, 0xbf5a97c9, 0x3c9623b1, 0xbf55e6ac, 0x3800010},
6147{0x3800000, 0xbf5a97c9, 0x51fd2c7c, 0x51fd2c7b, 0x3800010},
6148{0x3800000, 0xbf5a97c9, 0x7b906a6c, 0x7b906a6b, 0x3800010},
6149{0x3800000, 0xe6ff1a14, 0x0, 0xe6ff1a14, 0x3800000},
6150{0x3800000, 0xe6ff1a14, 0x1, 0xe6ff1a14, 0x3800080},
6151{0x3800000, 0xe6ff1a14, 0x76, 0xe6ff1a14, 0x3800080},
6152{0x3800000, 0xe6ff1a14, 0x2b94, 0xe6ff1a14, 0x3800080},
6153{0x3800000, 0xe6ff1a14, 0x636d24, 0xe6ff1a14, 0x3800080},
6154{0x3800000, 0xe6ff1a14, 0x7fffff, 0xe6ff1a14, 0x3800080},
6155{0x3800000, 0xe6ff1a14, 0x800000, 0xe6ff1a14, 0x3800010},
6156{0x3800000, 0xe6ff1a14, 0x800002, 0xe6ff1a14, 0x3800010},
6157{0x3800000, 0xe6ff1a14, 0x1398437, 0xe6ff1a14, 0x3800010},
6158{0x3800000, 0xe6ff1a14, 0xba98d27, 0xe6ff1a14, 0x3800010},
6159{0x3800000, 0xe6ff1a14, 0xba98d7a, 0xe6ff1a14, 0x3800010},
6160{0x3800000, 0xe6ff1a14, 0x751f853a, 0x751f8539, 0x3800010},
6161{0x3800000, 0xe6ff1a14, 0x7f7ffff0, 0x7f7fffef, 0x3800010},
6162{0x3800000, 0xe6ff1a14, 0x7f7fffff, 0x7f7ffffe, 0x3800010},
6163{0x3800000, 0xe6ff1a14, 0x7f800000, 0x7f800000, 0x3800000},
6164{0x3800000, 0xe6ff1a14, 0x7f800001, 0x7fc00000, 0x3800001},
6165{0x3800000, 0xe6ff1a14, 0x7f984a37, 0x7fc00000, 0x3800001},
6166{0x3800000, 0xe6ff1a14, 0x7fbfffff, 0x7fc00000, 0x3800001},
6167{0x3800000, 0xe6ff1a14, 0x7fc00000, 0x7fc00000, 0x3800000},
6168{0x3800000, 0xe6ff1a14, 0x7fd9ba98, 0x7fc00000, 0x3800000},
6169{0x3800000, 0xe6ff1a14, 0x7fffffff, 0x7fc00000, 0x3800000},
6170{0x3800000, 0xe6ff1a14, 0x80000000, 0xe6ff1a14, 0x3800000},
6171{0x3800000, 0xe6ff1a14, 0x80000001, 0xe6ff1a14, 0x3800080},
6172{0x3800000, 0xe6ff1a14, 0x80000076, 0xe6ff1a14, 0x3800080},
6173{0x3800000, 0xe6ff1a14, 0x80002b94, 0xe6ff1a14, 0x3800080},
6174{0x3800000, 0xe6ff1a14, 0x80636d24, 0xe6ff1a14, 0x3800080},
6175{0x3800000, 0xe6ff1a14, 0x807fffff, 0xe6ff1a14, 0x3800080},
6176{0x3800000, 0xe6ff1a14, 0x80800000, 0xe6ff1a15, 0x3800010},
6177{0x3800000, 0xe6ff1a14, 0x80800002, 0xe6ff1a15, 0x3800010},
6178{0x3800000, 0xe6ff1a14, 0x81398437, 0xe6ff1a15, 0x3800010},
6179{0x3800000, 0xe6ff1a14, 0x8ba98d27, 0xe6ff1a15, 0x3800010},
6180{0x3800000, 0xe6ff1a14, 0x8ba98d7a, 0xe6ff1a15, 0x3800010},
6181{0x3800000, 0xe6ff1a14, 0xf51f853a, 0xf51f853b, 0x3800010},
6182{0x3800000, 0xe6ff1a14, 0xff7ffff0, 0xff7ffff1, 0x3800010},
6183{0x3800000, 0xe6ff1a14, 0xff7fffff, 0xff800000, 0x3800014},
6184{0x3800000, 0xe6ff1a14, 0xff800000, 0xff800000, 0x3800000},
6185{0x3800000, 0xe6ff1a14, 0xff800001, 0x7fc00000, 0x3800001},
6186{0x3800000, 0xe6ff1a14, 0xff984a37, 0x7fc00000, 0x3800001},
6187{0x3800000, 0xe6ff1a14, 0xffbfffff, 0x7fc00000, 0x3800001},
6188{0x3800000, 0xe6ff1a14, 0xffc00000, 0x7fc00000, 0x3800000},
6189{0x3800000, 0xe6ff1a14, 0xffd9ba98, 0x7fc00000, 0x3800000},
6190{0x3800000, 0xe6ff1a14, 0xffffffff, 0x7fc00000, 0x3800000},
6191{0x3800000, 0xe6ff1a14, 0x4f3495cb, 0xe6ff1a14, 0x3800010},
6192{0x3800000, 0xe6ff1a14, 0xe73a5134, 0xe79cef1f, 0x3800000},
6193{0x3800000, 0xe6ff1a14, 0x7c994e9e, 0x7c994e9d, 0x3800010},
6194{0x3800000, 0xe6ff1a14, 0x6164bd6c, 0xe6fefd7d, 0x3800010},
6195{0x3800000, 0xe6ff1a14, 0x9503366, 0xe6ff1a14, 0x3800010},
6196{0x3800000, 0xe6ff1a14, 0xbf5a97c9, 0xe6ff1a15, 0x3800010},
6197{0x3800000, 0xe6ff1a14, 0xe6ff1a14, 0xe77f1a14, 0x3800000},
6198{0x3800000, 0xe6ff1a14, 0x77f31e2f, 0x77f31e2e, 0x3800010},
6199{0x3800000, 0xe6ff1a14, 0xaab4d7d8, 0xe6ff1a15, 0x3800010},
6200{0x3800000, 0xe6ff1a14, 0x966320b, 0xe6ff1a14, 0x3800010},
6201{0x3800000, 0xe6ff1a14, 0xb26bddee, 0xe6ff1a15, 0x3800010},
6202{0x3800000, 0xe6ff1a14, 0xb5c8e5d3, 0xe6ff1a15, 0x3800010},
6203{0x3800000, 0xe6ff1a14, 0x317285d3, 0xe6ff1a14, 0x3800010},
6204{0x3800000, 0xe6ff1a14, 0x3c9623b1, 0xe6ff1a14, 0x3800010},
6205{0x3800000, 0xe6ff1a14, 0x51fd2c7c, 0xe6ff1a14, 0x3800010},
6206{0x3800000, 0xe6ff1a14, 0x7b906a6c, 0x7b906a6b, 0x3800010},
6207{0x3800000, 0x77f31e2f, 0x0, 0x77f31e2f, 0x3800000},
6208{0x3800000, 0x77f31e2f, 0x1, 0x77f31e2f, 0x3800080},
6209{0x3800000, 0x77f31e2f, 0x76, 0x77f31e2f, 0x3800080},
6210{0x3800000, 0x77f31e2f, 0x2b94, 0x77f31e2f, 0x3800080},
6211{0x3800000, 0x77f31e2f, 0x636d24, 0x77f31e2f, 0x3800080},
6212{0x3800000, 0x77f31e2f, 0x7fffff, 0x77f31e2f, 0x3800080},
6213{0x3800000, 0x77f31e2f, 0x800000, 0x77f31e2f, 0x3800010},
6214{0x3800000, 0x77f31e2f, 0x800002, 0x77f31e2f, 0x3800010},
6215{0x3800000, 0x77f31e2f, 0x1398437, 0x77f31e2f, 0x3800010},
6216{0x3800000, 0x77f31e2f, 0xba98d27, 0x77f31e2f, 0x3800010},
6217{0x3800000, 0x77f31e2f, 0xba98d7a, 0x77f31e2f, 0x3800010},
6218{0x3800000, 0x77f31e2f, 0x751f853a, 0x77f81a58, 0x3800010},
6219{0x3800000, 0x77f31e2f, 0x7f7ffff0, 0x7f7fffff, 0x3800014},
6220{0x3800000, 0x77f31e2f, 0x7f7fffff, 0x7f7fffff, 0x3800014},
6221{0x3800000, 0x77f31e2f, 0x7f800000, 0x7f800000, 0x3800000},
6222{0x3800000, 0x77f31e2f, 0x7f800001, 0x7fc00000, 0x3800001},
6223{0x3800000, 0x77f31e2f, 0x7f984a37, 0x7fc00000, 0x3800001},
6224{0x3800000, 0x77f31e2f, 0x7fbfffff, 0x7fc00000, 0x3800001},
6225{0x3800000, 0x77f31e2f, 0x7fc00000, 0x7fc00000, 0x3800000},
6226{0x3800000, 0x77f31e2f, 0x7fd9ba98, 0x7fc00000, 0x3800000},
6227{0x3800000, 0x77f31e2f, 0x7fffffff, 0x7fc00000, 0x3800000},
6228{0x3800000, 0x77f31e2f, 0x80000000, 0x77f31e2f, 0x3800000},
6229{0x3800000, 0x77f31e2f, 0x80000001, 0x77f31e2f, 0x3800080},
6230{0x3800000, 0x77f31e2f, 0x80000076, 0x77f31e2f, 0x3800080},
6231{0x3800000, 0x77f31e2f, 0x80002b94, 0x77f31e2f, 0x3800080},
6232{0x3800000, 0x77f31e2f, 0x80636d24, 0x77f31e2f, 0x3800080},
6233{0x3800000, 0x77f31e2f, 0x807fffff, 0x77f31e2f, 0x3800080},
6234{0x3800000, 0x77f31e2f, 0x80800000, 0x77f31e2e, 0x3800010},
6235{0x3800000, 0x77f31e2f, 0x80800002, 0x77f31e2e, 0x3800010},
6236{0x3800000, 0x77f31e2f, 0x81398437, 0x77f31e2e, 0x3800010},
6237{0x3800000, 0x77f31e2f, 0x8ba98d27, 0x77f31e2e, 0x3800010},
6238{0x3800000, 0x77f31e2f, 0x8ba98d7a, 0x77f31e2e, 0x3800010},
6239{0x3800000, 0x77f31e2f, 0xf51f853a, 0x77ee2205, 0x3800010},
6240{0x3800000, 0x77f31e2f, 0xff7ffff0, 0xff7ffe0a, 0x3800010},
6241{0x3800000, 0x77f31e2f, 0xff7fffff, 0xff7ffe19, 0x3800010},
6242{0x3800000, 0x77f31e2f, 0xff800000, 0xff800000, 0x3800000},
6243{0x3800000, 0x77f31e2f, 0xff800001, 0x7fc00000, 0x3800001},
6244{0x3800000, 0x77f31e2f, 0xff984a37, 0x7fc00000, 0x3800001},
6245{0x3800000, 0x77f31e2f, 0xffbfffff, 0x7fc00000, 0x3800001},
6246{0x3800000, 0x77f31e2f, 0xffc00000, 0x7fc00000, 0x3800000},
6247{0x3800000, 0x77f31e2f, 0xffd9ba98, 0x7fc00000, 0x3800000},
6248{0x3800000, 0x77f31e2f, 0xffffffff, 0x7fc00000, 0x3800000},
6249{0x3800000, 0x77f31e2f, 0x4f3495cb, 0x77f31e2f, 0x3800010},
6250{0x3800000, 0x77f31e2f, 0xe73a5134, 0x77f31e2e, 0x3800010},
6251{0x3800000, 0x77f31e2f, 0x7c994e9e, 0x7c998b65, 0x3800010},
6252{0x3800000, 0x77f31e2f, 0x6164bd6c, 0x77f31e2f, 0x3800010},
6253{0x3800000, 0x77f31e2f, 0x9503366, 0x77f31e2f, 0x3800010},
6254{0x3800000, 0x77f31e2f, 0xbf5a97c9, 0x77f31e2e, 0x3800010},
6255{0x3800000, 0x77f31e2f, 0xe6ff1a14, 0x77f31e2e, 0x3800010},
6256{0x3800000, 0x77f31e2f, 0x77f31e2f, 0x78731e2f, 0x3800000},
6257{0x3800000, 0x77f31e2f, 0xaab4d7d8, 0x77f31e2e, 0x3800010},
6258{0x3800000, 0x77f31e2f, 0x966320b, 0x77f31e2f, 0x3800010},
6259{0x3800000, 0x77f31e2f, 0xb26bddee, 0x77f31e2e, 0x3800010},
6260{0x3800000, 0x77f31e2f, 0xb5c8e5d3, 0x77f31e2e, 0x3800010},
6261{0x3800000, 0x77f31e2f, 0x317285d3, 0x77f31e2f, 0x3800010},
6262{0x3800000, 0x77f31e2f, 0x3c9623b1, 0x77f31e2f, 0x3800010},
6263{0x3800000, 0x77f31e2f, 0x51fd2c7c, 0x77f31e2f, 0x3800010},
6264{0x3800000, 0x77f31e2f, 0x7b906a6c, 0x7b915d8a, 0x3800010},
6265{0x3800000, 0xaab4d7d8, 0x0, 0xaab4d7d8, 0x3800000},
6266{0x3800000, 0xaab4d7d8, 0x1, 0xaab4d7d8, 0x3800080},
6267{0x3800000, 0xaab4d7d8, 0x76, 0xaab4d7d8, 0x3800080},
6268{0x3800000, 0xaab4d7d8, 0x2b94, 0xaab4d7d8, 0x3800080},
6269{0x3800000, 0xaab4d7d8, 0x636d24, 0xaab4d7d8, 0x3800080},
6270{0x3800000, 0xaab4d7d8, 0x7fffff, 0xaab4d7d8, 0x3800080},
6271{0x3800000, 0xaab4d7d8, 0x800000, 0xaab4d7d8, 0x3800010},
6272{0x3800000, 0xaab4d7d8, 0x800002, 0xaab4d7d8, 0x3800010},
6273{0x3800000, 0xaab4d7d8, 0x1398437, 0xaab4d7d8, 0x3800010},
6274{0x3800000, 0xaab4d7d8, 0xba98d27, 0xaab4d7d8, 0x3800010},
6275{0x3800000, 0xaab4d7d8, 0xba98d7a, 0xaab4d7d8, 0x3800010},
6276{0x3800000, 0xaab4d7d8, 0x751f853a, 0x751f8539, 0x3800010},
6277{0x3800000, 0xaab4d7d8, 0x7f7ffff0, 0x7f7fffef, 0x3800010},
6278{0x3800000, 0xaab4d7d8, 0x7f7fffff, 0x7f7ffffe, 0x3800010},
6279{0x3800000, 0xaab4d7d8, 0x7f800000, 0x7f800000, 0x3800000},
6280{0x3800000, 0xaab4d7d8, 0x7f800001, 0x7fc00000, 0x3800001},
6281{0x3800000, 0xaab4d7d8, 0x7f984a37, 0x7fc00000, 0x3800001},
6282{0x3800000, 0xaab4d7d8, 0x7fbfffff, 0x7fc00000, 0x3800001},
6283{0x3800000, 0xaab4d7d8, 0x7fc00000, 0x7fc00000, 0x3800000},
6284{0x3800000, 0xaab4d7d8, 0x7fd9ba98, 0x7fc00000, 0x3800000},
6285{0x3800000, 0xaab4d7d8, 0x7fffffff, 0x7fc00000, 0x3800000},
6286{0x3800000, 0xaab4d7d8, 0x80000000, 0xaab4d7d8, 0x3800000},
6287{0x3800000, 0xaab4d7d8, 0x80000001, 0xaab4d7d8, 0x3800080},
6288{0x3800000, 0xaab4d7d8, 0x80000076, 0xaab4d7d8, 0x3800080},
6289{0x3800000, 0xaab4d7d8, 0x80002b94, 0xaab4d7d8, 0x3800080},
6290{0x3800000, 0xaab4d7d8, 0x80636d24, 0xaab4d7d8, 0x3800080},
6291{0x3800000, 0xaab4d7d8, 0x807fffff, 0xaab4d7d8, 0x3800080},
6292{0x3800000, 0xaab4d7d8, 0x80800000, 0xaab4d7d9, 0x3800010},
6293{0x3800000, 0xaab4d7d8, 0x80800002, 0xaab4d7d9, 0x3800010},
6294{0x3800000, 0xaab4d7d8, 0x81398437, 0xaab4d7d9, 0x3800010},
6295{0x3800000, 0xaab4d7d8, 0x8ba98d27, 0xaab4d7d9, 0x3800010},
6296{0x3800000, 0xaab4d7d8, 0x8ba98d7a, 0xaab4d7d9, 0x3800010},
6297{0x3800000, 0xaab4d7d8, 0xf51f853a, 0xf51f853b, 0x3800010},
6298{0x3800000, 0xaab4d7d8, 0xff7ffff0, 0xff7ffff1, 0x3800010},
6299{0x3800000, 0xaab4d7d8, 0xff7fffff, 0xff800000, 0x3800014},
6300{0x3800000, 0xaab4d7d8, 0xff800000, 0xff800000, 0x3800000},
6301{0x3800000, 0xaab4d7d8, 0xff800001, 0x7fc00000, 0x3800001},
6302{0x3800000, 0xaab4d7d8, 0xff984a37, 0x7fc00000, 0x3800001},
6303{0x3800000, 0xaab4d7d8, 0xffbfffff, 0x7fc00000, 0x3800001},
6304{0x3800000, 0xaab4d7d8, 0xffc00000, 0x7fc00000, 0x3800000},
6305{0x3800000, 0xaab4d7d8, 0xffd9ba98, 0x7fc00000, 0x3800000},
6306{0x3800000, 0xaab4d7d8, 0xffffffff, 0x7fc00000, 0x3800000},
6307{0x3800000, 0xaab4d7d8, 0x4f3495cb, 0x4f3495ca, 0x3800010},
6308{0x3800000, 0xaab4d7d8, 0xe73a5134, 0xe73a5135, 0x3800010},
6309{0x3800000, 0xaab4d7d8, 0x7c994e9e, 0x7c994e9d, 0x3800010},
6310{0x3800000, 0xaab4d7d8, 0x6164bd6c, 0x6164bd6b, 0x3800010},
6311{0x3800000, 0xaab4d7d8, 0x9503366, 0xaab4d7d8, 0x3800010},
6312{0x3800000, 0xaab4d7d8, 0xbf5a97c9, 0xbf5a97ca, 0x3800010},
6313{0x3800000, 0xaab4d7d8, 0xe6ff1a14, 0xe6ff1a15, 0x3800010},
6314{0x3800000, 0xaab4d7d8, 0x77f31e2f, 0x77f31e2e, 0x3800010},
6315{0x3800000, 0xaab4d7d8, 0xaab4d7d8, 0xab34d7d8, 0x3800000},
6316{0x3800000, 0xaab4d7d8, 0x966320b, 0xaab4d7d8, 0x3800010},
6317{0x3800000, 0xaab4d7d8, 0xb26bddee, 0xb26bdf58, 0x3800010},
6318{0x3800000, 0xaab4d7d8, 0xb5c8e5d3, 0xb5c8e5d6, 0x3800010},
6319{0x3800000, 0xaab4d7d8, 0x317285d3, 0x3172802c, 0x3800010},
6320{0x3800000, 0xaab4d7d8, 0x3c9623b1, 0x3c9623b0, 0x3800010},
6321{0x3800000, 0xaab4d7d8, 0x51fd2c7c, 0x51fd2c7b, 0x3800010},
6322{0x3800000, 0xaab4d7d8, 0x7b906a6c, 0x7b906a6b, 0x3800010},
6323{0x3800000, 0x966320b, 0x0, 0x966320b, 0x3800000},
6324{0x3800000, 0x966320b, 0x1, 0x966320b, 0x3800080},
6325{0x3800000, 0x966320b, 0x76, 0x966320b, 0x3800080},
6326{0x3800000, 0x966320b, 0x2b94, 0x966320b, 0x3800080},
6327{0x3800000, 0x966320b, 0x636d24, 0x966320b, 0x3800080},
6328{0x3800000, 0x966320b, 0x7fffff, 0x966320b, 0x3800080},
6329{0x3800000, 0x966320b, 0x800000, 0x966324b, 0x3800000},
6330{0x3800000, 0x966320b, 0x800002, 0x966324b, 0x3800010},
6331{0x3800000, 0x966320b, 0x1398437, 0x96632c4, 0x3800010},
6332{0x3800000, 0x966320b, 0xba98d27, 0xbb0beb7, 0x3800010},
6333{0x3800000, 0x966320b, 0xba98d7a, 0xbb0bf0a, 0x3800010},
6334{0x3800000, 0x966320b, 0x751f853a, 0x751f853a, 0x3800010},
6335{0x3800000, 0x966320b, 0x7f7ffff0, 0x7f7ffff0, 0x3800010},
6336{0x3800000, 0x966320b, 0x7f7fffff, 0x7f7fffff, 0x3800010},
6337{0x3800000, 0x966320b, 0x7f800000, 0x7f800000, 0x3800000},
6338{0x3800000, 0x966320b, 0x7f800001, 0x7fc00000, 0x3800001},
6339{0x3800000, 0x966320b, 0x7f984a37, 0x7fc00000, 0x3800001},
6340{0x3800000, 0x966320b, 0x7fbfffff, 0x7fc00000, 0x3800001},
6341{0x3800000, 0x966320b, 0x7fc00000, 0x7fc00000, 0x3800000},
6342{0x3800000, 0x966320b, 0x7fd9ba98, 0x7fc00000, 0x3800000},
6343{0x3800000, 0x966320b, 0x7fffffff, 0x7fc00000, 0x3800000},
6344{0x3800000, 0x966320b, 0x80000000, 0x966320b, 0x3800000},
6345{0x3800000, 0x966320b, 0x80000001, 0x966320b, 0x3800080},
6346{0x3800000, 0x966320b, 0x80000076, 0x966320b, 0x3800080},
6347{0x3800000, 0x966320b, 0x80002b94, 0x966320b, 0x3800080},
6348{0x3800000, 0x966320b, 0x80636d24, 0x966320b, 0x3800080},
6349{0x3800000, 0x966320b, 0x807fffff, 0x966320b, 0x3800080},
6350{0x3800000, 0x966320b, 0x80800000, 0x96631cb, 0x3800000},
6351{0x3800000, 0x966320b, 0x80800002, 0x96631ca, 0x3800010},
6352{0x3800000, 0x966320b, 0x81398437, 0x9663151, 0x3800010},
6353{0x3800000, 0x966320b, 0x8ba98d27, 0x8ba25b97, 0x3800010},
6354{0x3800000, 0x966320b, 0x8ba98d7a, 0x8ba25bea, 0x3800010},
6355{0x3800000, 0x966320b, 0xf51f853a, 0xf51f853a, 0x3800010},
6356{0x3800000, 0x966320b, 0xff7ffff0, 0xff7ffff0, 0x3800010},
6357{0x3800000, 0x966320b, 0xff7fffff, 0xff7fffff, 0x3800010},
6358{0x3800000, 0x966320b, 0xff800000, 0xff800000, 0x3800000},
6359{0x3800000, 0x966320b, 0xff800001, 0x7fc00000, 0x3800001},
6360{0x3800000, 0x966320b, 0xff984a37, 0x7fc00000, 0x3800001},
6361{0x3800000, 0x966320b, 0xffbfffff, 0x7fc00000, 0x3800001},
6362{0x3800000, 0x966320b, 0xffc00000, 0x7fc00000, 0x3800000},
6363{0x3800000, 0x966320b, 0xffd9ba98, 0x7fc00000, 0x3800000},
6364{0x3800000, 0x966320b, 0xffffffff, 0x7fc00000, 0x3800000},
6365{0x3800000, 0x966320b, 0x4f3495cb, 0x4f3495cb, 0x3800010},
6366{0x3800000, 0x966320b, 0xe73a5134, 0xe73a5134, 0x3800010},
6367{0x3800000, 0x966320b, 0x7c994e9e, 0x7c994e9e, 0x3800010},
6368{0x3800000, 0x966320b, 0x6164bd6c, 0x6164bd6c, 0x3800010},
6369{0x3800000, 0x966320b, 0x9503366, 0x9db32b8, 0x3800010},
6370{0x3800000, 0x966320b, 0xbf5a97c9, 0xbf5a97c9, 0x3800010},
6371{0x3800000, 0x966320b, 0xe6ff1a14, 0xe6ff1a14, 0x3800010},
6372{0x3800000, 0x966320b, 0x77f31e2f, 0x77f31e2f, 0x3800010},
6373{0x3800000, 0x966320b, 0xaab4d7d8, 0xaab4d7d8, 0x3800010},
6374{0x3800000, 0x966320b, 0x966320b, 0x9e6320b, 0x3800000},
6375{0x3800000, 0x966320b, 0xb26bddee, 0xb26bddee, 0x3800010},
6376{0x3800000, 0x966320b, 0xb5c8e5d3, 0xb5c8e5d3, 0x3800010},
6377{0x3800000, 0x966320b, 0x317285d3, 0x317285d3, 0x3800010},
6378{0x3800000, 0x966320b, 0x3c9623b1, 0x3c9623b1, 0x3800010},
6379{0x3800000, 0x966320b, 0x51fd2c7c, 0x51fd2c7c, 0x3800010},
6380{0x3800000, 0x966320b, 0x7b906a6c, 0x7b906a6c, 0x3800010},
6381{0x3800000, 0xb26bddee, 0x0, 0xb26bddee, 0x3800000},
6382{0x3800000, 0xb26bddee, 0x1, 0xb26bddee, 0x3800080},
6383{0x3800000, 0xb26bddee, 0x76, 0xb26bddee, 0x3800080},
6384{0x3800000, 0xb26bddee, 0x2b94, 0xb26bddee, 0x3800080},
6385{0x3800000, 0xb26bddee, 0x636d24, 0xb26bddee, 0x3800080},
6386{0x3800000, 0xb26bddee, 0x7fffff, 0xb26bddee, 0x3800080},
6387{0x3800000, 0xb26bddee, 0x800000, 0xb26bddee, 0x3800010},
6388{0x3800000, 0xb26bddee, 0x800002, 0xb26bddee, 0x3800010},
6389{0x3800000, 0xb26bddee, 0x1398437, 0xb26bddee, 0x3800010},
6390{0x3800000, 0xb26bddee, 0xba98d27, 0xb26bddee, 0x3800010},
6391{0x3800000, 0xb26bddee, 0xba98d7a, 0xb26bddee, 0x3800010},
6392{0x3800000, 0xb26bddee, 0x751f853a, 0x751f8539, 0x3800010},
6393{0x3800000, 0xb26bddee, 0x7f7ffff0, 0x7f7fffef, 0x3800010},
6394{0x3800000, 0xb26bddee, 0x7f7fffff, 0x7f7ffffe, 0x3800010},
6395{0x3800000, 0xb26bddee, 0x7f800000, 0x7f800000, 0x3800000},
6396{0x3800000, 0xb26bddee, 0x7f800001, 0x7fc00000, 0x3800001},
6397{0x3800000, 0xb26bddee, 0x7f984a37, 0x7fc00000, 0x3800001},
6398{0x3800000, 0xb26bddee, 0x7fbfffff, 0x7fc00000, 0x3800001},
6399{0x3800000, 0xb26bddee, 0x7fc00000, 0x7fc00000, 0x3800000},
6400{0x3800000, 0xb26bddee, 0x7fd9ba98, 0x7fc00000, 0x3800000},
6401{0x3800000, 0xb26bddee, 0x7fffffff, 0x7fc00000, 0x3800000},
6402{0x3800000, 0xb26bddee, 0x80000000, 0xb26bddee, 0x3800000},
6403{0x3800000, 0xb26bddee, 0x80000001, 0xb26bddee, 0x3800080},
6404{0x3800000, 0xb26bddee, 0x80000076, 0xb26bddee, 0x3800080},
6405{0x3800000, 0xb26bddee, 0x80002b94, 0xb26bddee, 0x3800080},
6406{0x3800000, 0xb26bddee, 0x80636d24, 0xb26bddee, 0x3800080},
6407{0x3800000, 0xb26bddee, 0x807fffff, 0xb26bddee, 0x3800080},
6408{0x3800000, 0xb26bddee, 0x80800000, 0xb26bddef, 0x3800010},
6409{0x3800000, 0xb26bddee, 0x80800002, 0xb26bddef, 0x3800010},
6410{0x3800000, 0xb26bddee, 0x81398437, 0xb26bddef, 0x3800010},
6411{0x3800000, 0xb26bddee, 0x8ba98d27, 0xb26bddef, 0x3800010},
6412{0x3800000, 0xb26bddee, 0x8ba98d7a, 0xb26bddef, 0x3800010},
6413{0x3800000, 0xb26bddee, 0xf51f853a, 0xf51f853b, 0x3800010},
6414{0x3800000, 0xb26bddee, 0xff7ffff0, 0xff7ffff1, 0x3800010},
6415{0x3800000, 0xb26bddee, 0xff7fffff, 0xff800000, 0x3800014},
6416{0x3800000, 0xb26bddee, 0xff800000, 0xff800000, 0x3800000},
6417{0x3800000, 0xb26bddee, 0xff800001, 0x7fc00000, 0x3800001},
6418{0x3800000, 0xb26bddee, 0xff984a37, 0x7fc00000, 0x3800001},
6419{0x3800000, 0xb26bddee, 0xffbfffff, 0x7fc00000, 0x3800001},
6420{0x3800000, 0xb26bddee, 0xffc00000, 0x7fc00000, 0x3800000},
6421{0x3800000, 0xb26bddee, 0xffd9ba98, 0x7fc00000, 0x3800000},
6422{0x3800000, 0xb26bddee, 0xffffffff, 0x7fc00000, 0x3800000},
6423{0x3800000, 0xb26bddee, 0x4f3495cb, 0x4f3495ca, 0x3800010},
6424{0x3800000, 0xb26bddee, 0xe73a5134, 0xe73a5135, 0x3800010},
6425{0x3800000, 0xb26bddee, 0x7c994e9e, 0x7c994e9d, 0x3800010},
6426{0x3800000, 0xb26bddee, 0x6164bd6c, 0x6164bd6b, 0x3800010},
6427{0x3800000, 0xb26bddee, 0x9503366, 0xb26bddee, 0x3800010},
6428{0x3800000, 0xb26bddee, 0xbf5a97c9, 0xbf5a97ca, 0x3800010},
6429{0x3800000, 0xb26bddee, 0xe6ff1a14, 0xe6ff1a15, 0x3800010},
6430{0x3800000, 0xb26bddee, 0x77f31e2f, 0x77f31e2e, 0x3800010},
6431{0x3800000, 0xb26bddee, 0xaab4d7d8, 0xb26bdf58, 0x3800010},
6432{0x3800000, 0xb26bddee, 0x966320b, 0xb26bddee, 0x3800010},
6433{0x3800000, 0xb26bddee, 0xb26bddee, 0xb2ebddee, 0x3800000},
6434{0x3800000, 0xb26bddee, 0xb5c8e5d3, 0xb5cabd8f, 0x3800010},
6435{0x3800000, 0xb26bddee, 0x317285d3, 0xb22f3c7a, 0x3800010},
6436{0x3800000, 0xb26bddee, 0x3c9623b1, 0x3c9623a9, 0x3800010},
6437{0x3800000, 0xb26bddee, 0x51fd2c7c, 0x51fd2c7b, 0x3800010},
6438{0x3800000, 0xb26bddee, 0x7b906a6c, 0x7b906a6b, 0x3800010},
6439{0x3800000, 0xb5c8e5d3, 0x0, 0xb5c8e5d3, 0x3800000},
6440{0x3800000, 0xb5c8e5d3, 0x1, 0xb5c8e5d3, 0x3800080},
6441{0x3800000, 0xb5c8e5d3, 0x76, 0xb5c8e5d3, 0x3800080},
6442{0x3800000, 0xb5c8e5d3, 0x2b94, 0xb5c8e5d3, 0x3800080},
6443{0x3800000, 0xb5c8e5d3, 0x636d24, 0xb5c8e5d3, 0x3800080},
6444{0x3800000, 0xb5c8e5d3, 0x7fffff, 0xb5c8e5d3, 0x3800080},
6445{0x3800000, 0xb5c8e5d3, 0x800000, 0xb5c8e5d3, 0x3800010},
6446{0x3800000, 0xb5c8e5d3, 0x800002, 0xb5c8e5d3, 0x3800010},
6447{0x3800000, 0xb5c8e5d3, 0x1398437, 0xb5c8e5d3, 0x3800010},
6448{0x3800000, 0xb5c8e5d3, 0xba98d27, 0xb5c8e5d3, 0x3800010},
6449{0x3800000, 0xb5c8e5d3, 0xba98d7a, 0xb5c8e5d3, 0x3800010},
6450{0x3800000, 0xb5c8e5d3, 0x751f853a, 0x751f8539, 0x3800010},
6451{0x3800000, 0xb5c8e5d3, 0x7f7ffff0, 0x7f7fffef, 0x3800010},
6452{0x3800000, 0xb5c8e5d3, 0x7f7fffff, 0x7f7ffffe, 0x3800010},
6453{0x3800000, 0xb5c8e5d3, 0x7f800000, 0x7f800000, 0x3800000},
6454{0x3800000, 0xb5c8e5d3, 0x7f800001, 0x7fc00000, 0x3800001},
6455{0x3800000, 0xb5c8e5d3, 0x7f984a37, 0x7fc00000, 0x3800001},
6456{0x3800000, 0xb5c8e5d3, 0x7fbfffff, 0x7fc00000, 0x3800001},
6457{0x3800000, 0xb5c8e5d3, 0x7fc00000, 0x7fc00000, 0x3800000},
6458{0x3800000, 0xb5c8e5d3, 0x7fd9ba98, 0x7fc00000, 0x3800000},
6459{0x3800000, 0xb5c8e5d3, 0x7fffffff, 0x7fc00000, 0x3800000},
6460{0x3800000, 0xb5c8e5d3, 0x80000000, 0xb5c8e5d3, 0x3800000},
6461{0x3800000, 0xb5c8e5d3, 0x80000001, 0xb5c8e5d3, 0x3800080},
6462{0x3800000, 0xb5c8e5d3, 0x80000076, 0xb5c8e5d3, 0x3800080},
6463{0x3800000, 0xb5c8e5d3, 0x80002b94, 0xb5c8e5d3, 0x3800080},
6464{0x3800000, 0xb5c8e5d3, 0x80636d24, 0xb5c8e5d3, 0x3800080},
6465{0x3800000, 0xb5c8e5d3, 0x807fffff, 0xb5c8e5d3, 0x3800080},
6466{0x3800000, 0xb5c8e5d3, 0x80800000, 0xb5c8e5d4, 0x3800010},
6467{0x3800000, 0xb5c8e5d3, 0x80800002, 0xb5c8e5d4, 0x3800010},
6468{0x3800000, 0xb5c8e5d3, 0x81398437, 0xb5c8e5d4, 0x3800010},
6469{0x3800000, 0xb5c8e5d3, 0x8ba98d27, 0xb5c8e5d4, 0x3800010},
6470{0x3800000, 0xb5c8e5d3, 0x8ba98d7a, 0xb5c8e5d4, 0x3800010},
6471{0x3800000, 0xb5c8e5d3, 0xf51f853a, 0xf51f853b, 0x3800010},
6472{0x3800000, 0xb5c8e5d3, 0xff7ffff0, 0xff7ffff1, 0x3800010},
6473{0x3800000, 0xb5c8e5d3, 0xff7fffff, 0xff800000, 0x3800014},
6474{0x3800000, 0xb5c8e5d3, 0xff800000, 0xff800000, 0x3800000},
6475{0x3800000, 0xb5c8e5d3, 0xff800001, 0x7fc00000, 0x3800001},
6476{0x3800000, 0xb5c8e5d3, 0xff984a37, 0x7fc00000, 0x3800001},
6477{0x3800000, 0xb5c8e5d3, 0xffbfffff, 0x7fc00000, 0x3800001},
6478{0x3800000, 0xb5c8e5d3, 0xffc00000, 0x7fc00000, 0x3800000},
6479{0x3800000, 0xb5c8e5d3, 0xffd9ba98, 0x7fc00000, 0x3800000},
6480{0x3800000, 0xb5c8e5d3, 0xffffffff, 0x7fc00000, 0x3800000},
6481{0x3800000, 0xb5c8e5d3, 0x4f3495cb, 0x4f3495ca, 0x3800010},
6482{0x3800000, 0xb5c8e5d3, 0xe73a5134, 0xe73a5135, 0x3800010},
6483{0x3800000, 0xb5c8e5d3, 0x7c994e9e, 0x7c994e9d, 0x3800010},
6484{0x3800000, 0xb5c8e5d3, 0x6164bd6c, 0x6164bd6b, 0x3800010},
6485{0x3800000, 0xb5c8e5d3, 0x9503366, 0xb5c8e5d3, 0x3800010},
6486{0x3800000, 0xb5c8e5d3, 0xbf5a97c9, 0xbf5a97e3, 0x3800010},
6487{0x3800000, 0xb5c8e5d3, 0xe6ff1a14, 0xe6ff1a15, 0x3800010},
6488{0x3800000, 0xb5c8e5d3, 0x77f31e2f, 0x77f31e2e, 0x3800010},
6489{0x3800000, 0xb5c8e5d3, 0xaab4d7d8, 0xb5c8e5d6, 0x3800010},
6490{0x3800000, 0xb5c8e5d3, 0x966320b, 0xb5c8e5d3, 0x3800010},
6491{0x3800000, 0xb5c8e5d3, 0xb26bddee, 0xb5cabd8f, 0x3800010},
6492{0x3800000, 0xb5c8e5d3, 0xb5c8e5d3, 0xb648e5d3, 0x3800000},
6493{0x3800000, 0xb5c8e5d3, 0x317285d3, 0xb5c86c91, 0x3800010},
6494{0x3800000, 0xb5c8e5d3, 0x3c9623b1, 0x3c96208d, 0x3800010},
6495{0x3800000, 0xb5c8e5d3, 0x51fd2c7c, 0x51fd2c7b, 0x3800010},
6496{0x3800000, 0xb5c8e5d3, 0x7b906a6c, 0x7b906a6b, 0x3800010},
6497{0x3800000, 0x317285d3, 0x0, 0x317285d3, 0x3800000},
6498{0x3800000, 0x317285d3, 0x1, 0x317285d3, 0x3800080},
6499{0x3800000, 0x317285d3, 0x76, 0x317285d3, 0x3800080},
6500{0x3800000, 0x317285d3, 0x2b94, 0x317285d3, 0x3800080},
6501{0x3800000, 0x317285d3, 0x636d24, 0x317285d3, 0x3800080},
6502{0x3800000, 0x317285d3, 0x7fffff, 0x317285d3, 0x3800080},
6503{0x3800000, 0x317285d3, 0x800000, 0x317285d3, 0x3800010},
6504{0x3800000, 0x317285d3, 0x800002, 0x317285d3, 0x3800010},
6505{0x3800000, 0x317285d3, 0x1398437, 0x317285d3, 0x3800010},
6506{0x3800000, 0x317285d3, 0xba98d27, 0x317285d3, 0x3800010},
6507{0x3800000, 0x317285d3, 0xba98d7a, 0x317285d3, 0x3800010},
6508{0x3800000, 0x317285d3, 0x751f853a, 0x751f853a, 0x3800010},
6509{0x3800000, 0x317285d3, 0x7f7ffff0, 0x7f7ffff0, 0x3800010},
6510{0x3800000, 0x317285d3, 0x7f7fffff, 0x7f7fffff, 0x3800010},
6511{0x3800000, 0x317285d3, 0x7f800000, 0x7f800000, 0x3800000},
6512{0x3800000, 0x317285d3, 0x7f800001, 0x7fc00000, 0x3800001},
6513{0x3800000, 0x317285d3, 0x7f984a37, 0x7fc00000, 0x3800001},
6514{0x3800000, 0x317285d3, 0x7fbfffff, 0x7fc00000, 0x3800001},
6515{0x3800000, 0x317285d3, 0x7fc00000, 0x7fc00000, 0x3800000},
6516{0x3800000, 0x317285d3, 0x7fd9ba98, 0x7fc00000, 0x3800000},
6517{0x3800000, 0x317285d3, 0x7fffffff, 0x7fc00000, 0x3800000},
6518{0x3800000, 0x317285d3, 0x80000000, 0x317285d3, 0x3800000},
6519{0x3800000, 0x317285d3, 0x80000001, 0x317285d3, 0x3800080},
6520{0x3800000, 0x317285d3, 0x80000076, 0x317285d3, 0x3800080},
6521{0x3800000, 0x317285d3, 0x80002b94, 0x317285d3, 0x3800080},
6522{0x3800000, 0x317285d3, 0x80636d24, 0x317285d3, 0x3800080},
6523{0x3800000, 0x317285d3, 0x807fffff, 0x317285d3, 0x3800080},
6524{0x3800000, 0x317285d3, 0x80800000, 0x317285d2, 0x3800010},
6525{0x3800000, 0x317285d3, 0x80800002, 0x317285d2, 0x3800010},
6526{0x3800000, 0x317285d3, 0x81398437, 0x317285d2, 0x3800010},
6527{0x3800000, 0x317285d3, 0x8ba98d27, 0x317285d2, 0x3800010},
6528{0x3800000, 0x317285d3, 0x8ba98d7a, 0x317285d2, 0x3800010},
6529{0x3800000, 0x317285d3, 0xf51f853a, 0xf51f853a, 0x3800010},
6530{0x3800000, 0x317285d3, 0xff7ffff0, 0xff7ffff0, 0x3800010},
6531{0x3800000, 0x317285d3, 0xff7fffff, 0xff7fffff, 0x3800010},
6532{0x3800000, 0x317285d3, 0xff800000, 0xff800000, 0x3800000},
6533{0x3800000, 0x317285d3, 0xff800001, 0x7fc00000, 0x3800001},
6534{0x3800000, 0x317285d3, 0xff984a37, 0x7fc00000, 0x3800001},
6535{0x3800000, 0x317285d3, 0xffbfffff, 0x7fc00000, 0x3800001},
6536{0x3800000, 0x317285d3, 0xffc00000, 0x7fc00000, 0x3800000},
6537{0x3800000, 0x317285d3, 0xffd9ba98, 0x7fc00000, 0x3800000},
6538{0x3800000, 0x317285d3, 0xffffffff, 0x7fc00000, 0x3800000},
6539{0x3800000, 0x317285d3, 0x4f3495cb, 0x4f3495cb, 0x3800010},
6540{0x3800000, 0x317285d3, 0xe73a5134, 0xe73a5134, 0x3800010},
6541{0x3800000, 0x317285d3, 0x7c994e9e, 0x7c994e9e, 0x3800010},
6542{0x3800000, 0x317285d3, 0x6164bd6c, 0x6164bd6c, 0x3800010},
6543{0x3800000, 0x317285d3, 0x9503366, 0x317285d3, 0x3800010},
6544{0x3800000, 0x317285d3, 0xbf5a97c9, 0xbf5a97c9, 0x3800010},
6545{0x3800000, 0x317285d3, 0xe6ff1a14, 0xe6ff1a14, 0x3800010},
6546{0x3800000, 0x317285d3, 0x77f31e2f, 0x77f31e2f, 0x3800010},
6547{0x3800000, 0x317285d3, 0xaab4d7d8, 0x3172802c, 0x3800010},
6548{0x3800000, 0x317285d3, 0x966320b, 0x317285d3, 0x3800010},
6549{0x3800000, 0x317285d3, 0xb26bddee, 0xb22f3c7a, 0x3800010},
6550{0x3800000, 0x317285d3, 0xb5c8e5d3, 0xb5c86c91, 0x3800010},
6551{0x3800000, 0x317285d3, 0x317285d3, 0x31f285d3, 0x3800000},
6552{0x3800000, 0x317285d3, 0x3c9623b1, 0x3c9623b2, 0x3800010},
6553{0x3800000, 0x317285d3, 0x51fd2c7c, 0x51fd2c7c, 0x3800010},
6554{0x3800000, 0x317285d3, 0x7b906a6c, 0x7b906a6c, 0x3800010},
6555{0x3800000, 0x3c9623b1, 0x0, 0x3c9623b1, 0x3800000},
6556{0x3800000, 0x3c9623b1, 0x1, 0x3c9623b1, 0x3800080},
6557{0x3800000, 0x3c9623b1, 0x76, 0x3c9623b1, 0x3800080},
6558{0x3800000, 0x3c9623b1, 0x2b94, 0x3c9623b1, 0x3800080},
6559{0x3800000, 0x3c9623b1, 0x636d24, 0x3c9623b1, 0x3800080},
6560{0x3800000, 0x3c9623b1, 0x7fffff, 0x3c9623b1, 0x3800080},
6561{0x3800000, 0x3c9623b1, 0x800000, 0x3c9623b1, 0x3800010},
6562{0x3800000, 0x3c9623b1, 0x800002, 0x3c9623b1, 0x3800010},
6563{0x3800000, 0x3c9623b1, 0x1398437, 0x3c9623b1, 0x3800010},
6564{0x3800000, 0x3c9623b1, 0xba98d27, 0x3c9623b1, 0x3800010},
6565{0x3800000, 0x3c9623b1, 0xba98d7a, 0x3c9623b1, 0x3800010},
6566{0x3800000, 0x3c9623b1, 0x751f853a, 0x751f853a, 0x3800010},
6567{0x3800000, 0x3c9623b1, 0x7f7ffff0, 0x7f7ffff0, 0x3800010},
6568{0x3800000, 0x3c9623b1, 0x7f7fffff, 0x7f7fffff, 0x3800010},
6569{0x3800000, 0x3c9623b1, 0x7f800000, 0x7f800000, 0x3800000},
6570{0x3800000, 0x3c9623b1, 0x7f800001, 0x7fc00000, 0x3800001},
6571{0x3800000, 0x3c9623b1, 0x7f984a37, 0x7fc00000, 0x3800001},
6572{0x3800000, 0x3c9623b1, 0x7fbfffff, 0x7fc00000, 0x3800001},
6573{0x3800000, 0x3c9623b1, 0x7fc00000, 0x7fc00000, 0x3800000},
6574{0x3800000, 0x3c9623b1, 0x7fd9ba98, 0x7fc00000, 0x3800000},
6575{0x3800000, 0x3c9623b1, 0x7fffffff, 0x7fc00000, 0x3800000},
6576{0x3800000, 0x3c9623b1, 0x80000000, 0x3c9623b1, 0x3800000},
6577{0x3800000, 0x3c9623b1, 0x80000001, 0x3c9623b1, 0x3800080},
6578{0x3800000, 0x3c9623b1, 0x80000076, 0x3c9623b1, 0x3800080},
6579{0x3800000, 0x3c9623b1, 0x80002b94, 0x3c9623b1, 0x3800080},
6580{0x3800000, 0x3c9623b1, 0x80636d24, 0x3c9623b1, 0x3800080},
6581{0x3800000, 0x3c9623b1, 0x807fffff, 0x3c9623b1, 0x3800080},
6582{0x3800000, 0x3c9623b1, 0x80800000, 0x3c9623b0, 0x3800010},
6583{0x3800000, 0x3c9623b1, 0x80800002, 0x3c9623b0, 0x3800010},
6584{0x3800000, 0x3c9623b1, 0x81398437, 0x3c9623b0, 0x3800010},
6585{0x3800000, 0x3c9623b1, 0x8ba98d27, 0x3c9623b0, 0x3800010},
6586{0x3800000, 0x3c9623b1, 0x8ba98d7a, 0x3c9623b0, 0x3800010},
6587{0x3800000, 0x3c9623b1, 0xf51f853a, 0xf51f853a, 0x3800010},
6588{0x3800000, 0x3c9623b1, 0xff7ffff0, 0xff7ffff0, 0x3800010},
6589{0x3800000, 0x3c9623b1, 0xff7fffff, 0xff7fffff, 0x3800010},
6590{0x3800000, 0x3c9623b1, 0xff800000, 0xff800000, 0x3800000},
6591{0x3800000, 0x3c9623b1, 0xff800001, 0x7fc00000, 0x3800001},
6592{0x3800000, 0x3c9623b1, 0xff984a37, 0x7fc00000, 0x3800001},
6593{0x3800000, 0x3c9623b1, 0xffbfffff, 0x7fc00000, 0x3800001},
6594{0x3800000, 0x3c9623b1, 0xffc00000, 0x7fc00000, 0x3800000},
6595{0x3800000, 0x3c9623b1, 0xffd9ba98, 0x7fc00000, 0x3800000},
6596{0x3800000, 0x3c9623b1, 0xffffffff, 0x7fc00000, 0x3800000},
6597{0x3800000, 0x3c9623b1, 0x4f3495cb, 0x4f3495cb, 0x3800010},
6598{0x3800000, 0x3c9623b1, 0xe73a5134, 0xe73a5134, 0x3800010},
6599{0x3800000, 0x3c9623b1, 0x7c994e9e, 0x7c994e9e, 0x3800010},
6600{0x3800000, 0x3c9623b1, 0x6164bd6c, 0x6164bd6c, 0x3800010},
6601{0x3800000, 0x3c9623b1, 0x9503366, 0x3c9623b1, 0x3800010},
6602{0x3800000, 0x3c9623b1, 0xbf5a97c9, 0xbf55e6ac, 0x3800010},
6603{0x3800000, 0x3c9623b1, 0xe6ff1a14, 0xe6ff1a14, 0x3800010},
6604{0x3800000, 0x3c9623b1, 0x77f31e2f, 0x77f31e2f, 0x3800010},
6605{0x3800000, 0x3c9623b1, 0xaab4d7d8, 0x3c9623b0, 0x3800010},
6606{0x3800000, 0x3c9623b1, 0x966320b, 0x3c9623b1, 0x3800010},
6607{0x3800000, 0x3c9623b1, 0xb26bddee, 0x3c9623a9, 0x3800010},
6608{0x3800000, 0x3c9623b1, 0xb5c8e5d3, 0x3c96208d, 0x3800010},
6609{0x3800000, 0x3c9623b1, 0x317285d3, 0x3c9623b2, 0x3800010},
6610{0x3800000, 0x3c9623b1, 0x3c9623b1, 0x3d1623b1, 0x3800000},
6611{0x3800000, 0x3c9623b1, 0x51fd2c7c, 0x51fd2c7c, 0x3800010},
6612{0x3800000, 0x3c9623b1, 0x7b906a6c, 0x7b906a6c, 0x3800010},
6613{0x3800000, 0x51fd2c7c, 0x0, 0x51fd2c7c, 0x3800000},
6614{0x3800000, 0x51fd2c7c, 0x1, 0x51fd2c7c, 0x3800080},
6615{0x3800000, 0x51fd2c7c, 0x76, 0x51fd2c7c, 0x3800080},
6616{0x3800000, 0x51fd2c7c, 0x2b94, 0x51fd2c7c, 0x3800080},
6617{0x3800000, 0x51fd2c7c, 0x636d24, 0x51fd2c7c, 0x3800080},
6618{0x3800000, 0x51fd2c7c, 0x7fffff, 0x51fd2c7c, 0x3800080},
6619{0x3800000, 0x51fd2c7c, 0x800000, 0x51fd2c7c, 0x3800010},
6620{0x3800000, 0x51fd2c7c, 0x800002, 0x51fd2c7c, 0x3800010},
6621{0x3800000, 0x51fd2c7c, 0x1398437, 0x51fd2c7c, 0x3800010},
6622{0x3800000, 0x51fd2c7c, 0xba98d27, 0x51fd2c7c, 0x3800010},
6623{0x3800000, 0x51fd2c7c, 0xba98d7a, 0x51fd2c7c, 0x3800010},
6624{0x3800000, 0x51fd2c7c, 0x751f853a, 0x751f853a, 0x3800010},
6625{0x3800000, 0x51fd2c7c, 0x7f7ffff0, 0x7f7ffff0, 0x3800010},
6626{0x3800000, 0x51fd2c7c, 0x7f7fffff, 0x7f7fffff, 0x3800010},
6627{0x3800000, 0x51fd2c7c, 0x7f800000, 0x7f800000, 0x3800000},
6628{0x3800000, 0x51fd2c7c, 0x7f800001, 0x7fc00000, 0x3800001},
6629{0x3800000, 0x51fd2c7c, 0x7f984a37, 0x7fc00000, 0x3800001},
6630{0x3800000, 0x51fd2c7c, 0x7fbfffff, 0x7fc00000, 0x3800001},
6631{0x3800000, 0x51fd2c7c, 0x7fc00000, 0x7fc00000, 0x3800000},
6632{0x3800000, 0x51fd2c7c, 0x7fd9ba98, 0x7fc00000, 0x3800000},
6633{0x3800000, 0x51fd2c7c, 0x7fffffff, 0x7fc00000, 0x3800000},
6634{0x3800000, 0x51fd2c7c, 0x80000000, 0x51fd2c7c, 0x3800000},
6635{0x3800000, 0x51fd2c7c, 0x80000001, 0x51fd2c7c, 0x3800080},
6636{0x3800000, 0x51fd2c7c, 0x80000076, 0x51fd2c7c, 0x3800080},
6637{0x3800000, 0x51fd2c7c, 0x80002b94, 0x51fd2c7c, 0x3800080},
6638{0x3800000, 0x51fd2c7c, 0x80636d24, 0x51fd2c7c, 0x3800080},
6639{0x3800000, 0x51fd2c7c, 0x807fffff, 0x51fd2c7c, 0x3800080},
6640{0x3800000, 0x51fd2c7c, 0x80800000, 0x51fd2c7b, 0x3800010},
6641{0x3800000, 0x51fd2c7c, 0x80800002, 0x51fd2c7b, 0x3800010},
6642{0x3800000, 0x51fd2c7c, 0x81398437, 0x51fd2c7b, 0x3800010},
6643{0x3800000, 0x51fd2c7c, 0x8ba98d27, 0x51fd2c7b, 0x3800010},
6644{0x3800000, 0x51fd2c7c, 0x8ba98d7a, 0x51fd2c7b, 0x3800010},
6645{0x3800000, 0x51fd2c7c, 0xf51f853a, 0xf51f853a, 0x3800010},
6646{0x3800000, 0x51fd2c7c, 0xff7ffff0, 0xff7ffff0, 0x3800010},
6647{0x3800000, 0x51fd2c7c, 0xff7fffff, 0xff7fffff, 0x3800010},
6648{0x3800000, 0x51fd2c7c, 0xff800000, 0xff800000, 0x3800000},
6649{0x3800000, 0x51fd2c7c, 0xff800001, 0x7fc00000, 0x3800001},
6650{0x3800000, 0x51fd2c7c, 0xff984a37, 0x7fc00000, 0x3800001},
6651{0x3800000, 0x51fd2c7c, 0xffbfffff, 0x7fc00000, 0x3800001},
6652{0x3800000, 0x51fd2c7c, 0xffc00000, 0x7fc00000, 0x3800000},
6653{0x3800000, 0x51fd2c7c, 0xffd9ba98, 0x7fc00000, 0x3800000},
6654{0x3800000, 0x51fd2c7c, 0xffffffff, 0x7fc00000, 0x3800000},
6655{0x3800000, 0x51fd2c7c, 0x4f3495cb, 0x52016895, 0x3800010},
6656{0x3800000, 0x51fd2c7c, 0xe73a5134, 0xe73a5134, 0x3800010},
6657{0x3800000, 0x51fd2c7c, 0x7c994e9e, 0x7c994e9e, 0x3800010},
6658{0x3800000, 0x51fd2c7c, 0x6164bd6c, 0x6164bd6c, 0x3800010},
6659{0x3800000, 0x51fd2c7c, 0x9503366, 0x51fd2c7c, 0x3800010},
6660{0x3800000, 0x51fd2c7c, 0xbf5a97c9, 0x51fd2c7b, 0x3800010},
6661{0x3800000, 0x51fd2c7c, 0xe6ff1a14, 0xe6ff1a14, 0x3800010},
6662{0x3800000, 0x51fd2c7c, 0x77f31e2f, 0x77f31e2f, 0x3800010},
6663{0x3800000, 0x51fd2c7c, 0xaab4d7d8, 0x51fd2c7b, 0x3800010},
6664{0x3800000, 0x51fd2c7c, 0x966320b, 0x51fd2c7c, 0x3800010},
6665{0x3800000, 0x51fd2c7c, 0xb26bddee, 0x51fd2c7b, 0x3800010},
6666{0x3800000, 0x51fd2c7c, 0xb5c8e5d3, 0x51fd2c7b, 0x3800010},
6667{0x3800000, 0x51fd2c7c, 0x317285d3, 0x51fd2c7c, 0x3800010},
6668{0x3800000, 0x51fd2c7c, 0x3c9623b1, 0x51fd2c7c, 0x3800010},
6669{0x3800000, 0x51fd2c7c, 0x51fd2c7c, 0x527d2c7c, 0x3800000},
6670{0x3800000, 0x51fd2c7c, 0x7b906a6c, 0x7b906a6c, 0x3800010},
6671{0x3800000, 0x7b906a6c, 0x0, 0x7b906a6c, 0x3800000},
6672{0x3800000, 0x7b906a6c, 0x1, 0x7b906a6c, 0x3800080},
6673{0x3800000, 0x7b906a6c, 0x76, 0x7b906a6c, 0x3800080},
6674{0x3800000, 0x7b906a6c, 0x2b94, 0x7b906a6c, 0x3800080},
6675{0x3800000, 0x7b906a6c, 0x636d24, 0x7b906a6c, 0x3800080},
6676{0x3800000, 0x7b906a6c, 0x7fffff, 0x7b906a6c, 0x3800080},
6677{0x3800000, 0x7b906a6c, 0x800000, 0x7b906a6c, 0x3800010},
6678{0x3800000, 0x7b906a6c, 0x800002, 0x7b906a6c, 0x3800010},
6679{0x3800000, 0x7b906a6c, 0x1398437, 0x7b906a6c, 0x3800010},
6680{0x3800000, 0x7b906a6c, 0xba98d27, 0x7b906a6c, 0x3800010},
6681{0x3800000, 0x7b906a6c, 0xba98d7a, 0x7b906a6c, 0x3800010},
6682{0x3800000, 0x7b906a6c, 0x751f853a, 0x7b906f68, 0x3800010},
6683{0x3800000, 0x7b906a6c, 0x7f7ffff0, 0x7f7fffff, 0x3800014},
6684{0x3800000, 0x7b906a6c, 0x7f7fffff, 0x7f7fffff, 0x3800014},
6685{0x3800000, 0x7b906a6c, 0x7f800000, 0x7f800000, 0x3800000},
6686{0x3800000, 0x7b906a6c, 0x7f800001, 0x7fc00000, 0x3800001},
6687{0x3800000, 0x7b906a6c, 0x7f984a37, 0x7fc00000, 0x3800001},
6688{0x3800000, 0x7b906a6c, 0x7fbfffff, 0x7fc00000, 0x3800001},
6689{0x3800000, 0x7b906a6c, 0x7fc00000, 0x7fc00000, 0x3800000},
6690{0x3800000, 0x7b906a6c, 0x7fd9ba98, 0x7fc00000, 0x3800000},
6691{0x3800000, 0x7b906a6c, 0x7fffffff, 0x7fc00000, 0x3800000},
6692{0x3800000, 0x7b906a6c, 0x80000000, 0x7b906a6c, 0x3800000},
6693{0x3800000, 0x7b906a6c, 0x80000001, 0x7b906a6c, 0x3800080},
6694{0x3800000, 0x7b906a6c, 0x80000076, 0x7b906a6c, 0x3800080},
6695{0x3800000, 0x7b906a6c, 0x80002b94, 0x7b906a6c, 0x3800080},
6696{0x3800000, 0x7b906a6c, 0x80636d24, 0x7b906a6c, 0x3800080},
6697{0x3800000, 0x7b906a6c, 0x807fffff, 0x7b906a6c, 0x3800080},
6698{0x3800000, 0x7b906a6c, 0x80800000, 0x7b906a6b, 0x3800010},
6699{0x3800000, 0x7b906a6c, 0x80800002, 0x7b906a6b, 0x3800010},
6700{0x3800000, 0x7b906a6c, 0x81398437, 0x7b906a6b, 0x3800010},
6701{0x3800000, 0x7b906a6c, 0x8ba98d27, 0x7b906a6b, 0x3800010},
6702{0x3800000, 0x7b906a6c, 0x8ba98d7a, 0x7b906a6b, 0x3800010},
6703{0x3800000, 0x7b906a6c, 0xf51f853a, 0x7b90656f, 0x3800010},
6704{0x3800000, 0x7b906a6c, 0xff7ffff0, 0xff7edf1c, 0x3800010},
6705{0x3800000, 0x7b906a6c, 0xff7fffff, 0xff7edf2b, 0x3800010},
6706{0x3800000, 0x7b906a6c, 0xff800000, 0xff800000, 0x3800000},
6707{0x3800000, 0x7b906a6c, 0xff800001, 0x7fc00000, 0x3800001},
6708{0x3800000, 0x7b906a6c, 0xff984a37, 0x7fc00000, 0x3800001},
6709{0x3800000, 0x7b906a6c, 0xffbfffff, 0x7fc00000, 0x3800001},
6710{0x3800000, 0x7b906a6c, 0xffc00000, 0x7fc00000, 0x3800000},
6711{0x3800000, 0x7b906a6c, 0xffd9ba98, 0x7fc00000, 0x3800000},
6712{0x3800000, 0x7b906a6c, 0xffffffff, 0x7fc00000, 0x3800000},
6713{0x3800000, 0x7b906a6c, 0x4f3495cb, 0x7b906a6c, 0x3800010},
6714{0x3800000, 0x7b906a6c, 0xe73a5134, 0x7b906a6b, 0x3800010},
6715{0x3800000, 0x7b906a6c, 0x7c994e9e, 0x7cbd6939, 0x3800000},
6716{0x3800000, 0x7b906a6c, 0x6164bd6c, 0x7b906a6c, 0x3800010},
6717{0x3800000, 0x7b906a6c, 0x9503366, 0x7b906a6c, 0x3800010},
6718{0x3800000, 0x7b906a6c, 0xbf5a97c9, 0x7b906a6b, 0x3800010},
6719{0x3800000, 0x7b906a6c, 0xe6ff1a14, 0x7b906a6b, 0x3800010},
6720{0x3800000, 0x7b906a6c, 0x77f31e2f, 0x7b915d8a, 0x3800010},
6721{0x3800000, 0x7b906a6c, 0xaab4d7d8, 0x7b906a6b, 0x3800010},
6722{0x3800000, 0x7b906a6c, 0x966320b, 0x7b906a6c, 0x3800010},
6723{0x3800000, 0x7b906a6c, 0xb26bddee, 0x7b906a6b, 0x3800010},
6724{0x3800000, 0x7b906a6c, 0xb5c8e5d3, 0x7b906a6b, 0x3800010},
6725{0x3800000, 0x7b906a6c, 0x317285d3, 0x7b906a6c, 0x3800010},
6726{0x3800000, 0x7b906a6c, 0x3c9623b1, 0x7b906a6c, 0x3800010},
6727{0x3800000, 0x7b906a6c, 0x51fd2c7c, 0x7b906a6c, 0x3800010},
6728{0x3800000, 0x7b906a6c, 0x7b906a6c, 0x7c106a6c, 0x3800000},
6729{0x3400000, 0x0, 0x0, 0x0, 0x3400000},
6730{0x3400000, 0x0, 0x1, 0x0, 0x3400080},
6731{0x3400000, 0x0, 0x76, 0x0, 0x3400080},
6732{0x3400000, 0x0, 0x2b94, 0x0, 0x3400080},
6733{0x3400000, 0x0, 0x636d24, 0x0, 0x3400080},
6734{0x3400000, 0x0, 0x7fffff, 0x0, 0x3400080},
6735{0x3400000, 0x0, 0x800000, 0x800000, 0x3400000},
6736{0x3400000, 0x0, 0x800002, 0x800002, 0x3400000},
6737{0x3400000, 0x0, 0x1398437, 0x1398437, 0x3400000},
6738{0x3400000, 0x0, 0xba98d27, 0xba98d27, 0x3400000},
6739{0x3400000, 0x0, 0xba98d7a, 0xba98d7a, 0x3400000},
6740{0x3400000, 0x0, 0x751f853a, 0x751f853a, 0x3400000},
6741{0x3400000, 0x0, 0x7f7ffff0, 0x7f7ffff0, 0x3400000},
6742{0x3400000, 0x0, 0x7f7fffff, 0x7f7fffff, 0x3400000},
6743{0x3400000, 0x0, 0x7f800000, 0x7f800000, 0x3400000},
6744{0x3400000, 0x0, 0x7f800001, 0x7fc00000, 0x3400001},
6745{0x3400000, 0x0, 0x7f984a37, 0x7fc00000, 0x3400001},
6746{0x3400000, 0x0, 0x7fbfffff, 0x7fc00000, 0x3400001},
6747{0x3400000, 0x0, 0x7fc00000, 0x7fc00000, 0x3400000},
6748{0x3400000, 0x0, 0x7fd9ba98, 0x7fc00000, 0x3400000},
6749{0x3400000, 0x0, 0x7fffffff, 0x7fc00000, 0x3400000},
6750{0x3400000, 0x0, 0x80000000, 0x0, 0x3400000},
6751{0x3400000, 0x0, 0x80000001, 0x0, 0x3400080},
6752{0x3400000, 0x0, 0x80000076, 0x0, 0x3400080},
6753{0x3400000, 0x0, 0x80002b94, 0x0, 0x3400080},
6754{0x3400000, 0x0, 0x80636d24, 0x0, 0x3400080},
6755{0x3400000, 0x0, 0x807fffff, 0x0, 0x3400080},
6756{0x3400000, 0x0, 0x80800000, 0x80800000, 0x3400000},
6757{0x3400000, 0x0, 0x80800002, 0x80800002, 0x3400000},
6758{0x3400000, 0x0, 0x81398437, 0x81398437, 0x3400000},
6759{0x3400000, 0x0, 0x8ba98d27, 0x8ba98d27, 0x3400000},
6760{0x3400000, 0x0, 0x8ba98d7a, 0x8ba98d7a, 0x3400000},
6761{0x3400000, 0x0, 0xf51f853a, 0xf51f853a, 0x3400000},
6762{0x3400000, 0x0, 0xff7ffff0, 0xff7ffff0, 0x3400000},
6763{0x3400000, 0x0, 0xff7fffff, 0xff7fffff, 0x3400000},
6764{0x3400000, 0x0, 0xff800000, 0xff800000, 0x3400000},
6765{0x3400000, 0x0, 0xff800001, 0x7fc00000, 0x3400001},
6766{0x3400000, 0x0, 0xff984a37, 0x7fc00000, 0x3400001},
6767{0x3400000, 0x0, 0xffbfffff, 0x7fc00000, 0x3400001},
6768{0x3400000, 0x0, 0xffc00000, 0x7fc00000, 0x3400000},
6769{0x3400000, 0x0, 0xffd9ba98, 0x7fc00000, 0x3400000},
6770{0x3400000, 0x0, 0xffffffff, 0x7fc00000, 0x3400000},
6771{0x3400000, 0x0, 0x4f3495cb, 0x4f3495cb, 0x3400000},
6772{0x3400000, 0x0, 0xe73a5134, 0xe73a5134, 0x3400000},
6773{0x3400000, 0x0, 0x7c994e9e, 0x7c994e9e, 0x3400000},
6774{0x3400000, 0x0, 0x6164bd6c, 0x6164bd6c, 0x3400000},
6775{0x3400000, 0x0, 0x9503366, 0x9503366, 0x3400000},
6776{0x3400000, 0x0, 0xbf5a97c9, 0xbf5a97c9, 0x3400000},
6777{0x3400000, 0x0, 0xe6ff1a14, 0xe6ff1a14, 0x3400000},
6778{0x3400000, 0x0, 0x77f31e2f, 0x77f31e2f, 0x3400000},
6779{0x3400000, 0x0, 0xaab4d7d8, 0xaab4d7d8, 0x3400000},
6780{0x3400000, 0x0, 0x966320b, 0x966320b, 0x3400000},
6781{0x3400000, 0x0, 0xb26bddee, 0xb26bddee, 0x3400000},
6782{0x3400000, 0x0, 0xb5c8e5d3, 0xb5c8e5d3, 0x3400000},
6783{0x3400000, 0x0, 0x317285d3, 0x317285d3, 0x3400000},
6784{0x3400000, 0x0, 0x3c9623b1, 0x3c9623b1, 0x3400000},
6785{0x3400000, 0x0, 0x51fd2c7c, 0x51fd2c7c, 0x3400000},
6786{0x3400000, 0x0, 0x7b906a6c, 0x7b906a6c, 0x3400000},
6787{0x3400000, 0x1, 0x0, 0x0, 0x3400080},
6788{0x3400000, 0x1, 0x1, 0x0, 0x3400080},
6789{0x3400000, 0x1, 0x76, 0x0, 0x3400080},
6790{0x3400000, 0x1, 0x2b94, 0x0, 0x3400080},
6791{0x3400000, 0x1, 0x636d24, 0x0, 0x3400080},
6792{0x3400000, 0x1, 0x7fffff, 0x0, 0x3400080},
6793{0x3400000, 0x1, 0x800000, 0x800000, 0x3400080},
6794{0x3400000, 0x1, 0x800002, 0x800002, 0x3400080},
6795{0x3400000, 0x1, 0x1398437, 0x1398437, 0x3400080},
6796{0x3400000, 0x1, 0xba98d27, 0xba98d27, 0x3400080},
6797{0x3400000, 0x1, 0xba98d7a, 0xba98d7a, 0x3400080},
6798{0x3400000, 0x1, 0x751f853a, 0x751f853a, 0x3400080},
6799{0x3400000, 0x1, 0x7f7ffff0, 0x7f7ffff0, 0x3400080},
6800{0x3400000, 0x1, 0x7f7fffff, 0x7f7fffff, 0x3400080},
6801{0x3400000, 0x1, 0x7f800000, 0x7f800000, 0x3400080},
6802{0x3400000, 0x1, 0x7f800001, 0x7fc00000, 0x3400081},
6803{0x3400000, 0x1, 0x7f984a37, 0x7fc00000, 0x3400081},
6804{0x3400000, 0x1, 0x7fbfffff, 0x7fc00000, 0x3400081},
6805{0x3400000, 0x1, 0x7fc00000, 0x7fc00000, 0x3400080},
6806{0x3400000, 0x1, 0x7fd9ba98, 0x7fc00000, 0x3400080},
6807{0x3400000, 0x1, 0x7fffffff, 0x7fc00000, 0x3400080},
6808{0x3400000, 0x1, 0x80000000, 0x0, 0x3400080},
6809{0x3400000, 0x1, 0x80000001, 0x0, 0x3400080},
6810{0x3400000, 0x1, 0x80000076, 0x0, 0x3400080},
6811{0x3400000, 0x1, 0x80002b94, 0x0, 0x3400080},
6812{0x3400000, 0x1, 0x80636d24, 0x0, 0x3400080},
6813{0x3400000, 0x1, 0x807fffff, 0x0, 0x3400080},
6814{0x3400000, 0x1, 0x80800000, 0x80800000, 0x3400080},
6815{0x3400000, 0x1, 0x80800002, 0x80800002, 0x3400080},
6816{0x3400000, 0x1, 0x81398437, 0x81398437, 0x3400080},
6817{0x3400000, 0x1, 0x8ba98d27, 0x8ba98d27, 0x3400080},
6818{0x3400000, 0x1, 0x8ba98d7a, 0x8ba98d7a, 0x3400080},
6819{0x3400000, 0x1, 0xf51f853a, 0xf51f853a, 0x3400080},
6820{0x3400000, 0x1, 0xff7ffff0, 0xff7ffff0, 0x3400080},
6821{0x3400000, 0x1, 0xff7fffff, 0xff7fffff, 0x3400080},
6822{0x3400000, 0x1, 0xff800000, 0xff800000, 0x3400080},
6823{0x3400000, 0x1, 0xff800001, 0x7fc00000, 0x3400081},
6824{0x3400000, 0x1, 0xff984a37, 0x7fc00000, 0x3400081},
6825{0x3400000, 0x1, 0xffbfffff, 0x7fc00000, 0x3400081},
6826{0x3400000, 0x1, 0xffc00000, 0x7fc00000, 0x3400080},
6827{0x3400000, 0x1, 0xffd9ba98, 0x7fc00000, 0x3400080},
6828{0x3400000, 0x1, 0xffffffff, 0x7fc00000, 0x3400080},
6829{0x3400000, 0x1, 0x4f3495cb, 0x4f3495cb, 0x3400080},
6830{0x3400000, 0x1, 0xe73a5134, 0xe73a5134, 0x3400080},
6831{0x3400000, 0x1, 0x7c994e9e, 0x7c994e9e, 0x3400080},
6832{0x3400000, 0x1, 0x6164bd6c, 0x6164bd6c, 0x3400080},
6833{0x3400000, 0x1, 0x9503366, 0x9503366, 0x3400080},
6834{0x3400000, 0x1, 0xbf5a97c9, 0xbf5a97c9, 0x3400080},
6835{0x3400000, 0x1, 0xe6ff1a14, 0xe6ff1a14, 0x3400080},
6836{0x3400000, 0x1, 0x77f31e2f, 0x77f31e2f, 0x3400080},
6837{0x3400000, 0x1, 0xaab4d7d8, 0xaab4d7d8, 0x3400080},
6838{0x3400000, 0x1, 0x966320b, 0x966320b, 0x3400080},
6839{0x3400000, 0x1, 0xb26bddee, 0xb26bddee, 0x3400080},
6840{0x3400000, 0x1, 0xb5c8e5d3, 0xb5c8e5d3, 0x3400080},
6841{0x3400000, 0x1, 0x317285d3, 0x317285d3, 0x3400080},
6842{0x3400000, 0x1, 0x3c9623b1, 0x3c9623b1, 0x3400080},
6843{0x3400000, 0x1, 0x51fd2c7c, 0x51fd2c7c, 0x3400080},
6844{0x3400000, 0x1, 0x7b906a6c, 0x7b906a6c, 0x3400080},
6845{0x3400000, 0x76, 0x0, 0x0, 0x3400080},
6846{0x3400000, 0x76, 0x1, 0x0, 0x3400080},
6847{0x3400000, 0x76, 0x76, 0x0, 0x3400080},
6848{0x3400000, 0x76, 0x2b94, 0x0, 0x3400080},
6849{0x3400000, 0x76, 0x636d24, 0x0, 0x3400080},
6850{0x3400000, 0x76, 0x7fffff, 0x0, 0x3400080},
6851{0x3400000, 0x76, 0x800000, 0x800000, 0x3400080},
6852{0x3400000, 0x76, 0x800002, 0x800002, 0x3400080},
6853{0x3400000, 0x76, 0x1398437, 0x1398437, 0x3400080},
6854{0x3400000, 0x76, 0xba98d27, 0xba98d27, 0x3400080},
6855{0x3400000, 0x76, 0xba98d7a, 0xba98d7a, 0x3400080},
6856{0x3400000, 0x76, 0x751f853a, 0x751f853a, 0x3400080},
6857{0x3400000, 0x76, 0x7f7ffff0, 0x7f7ffff0, 0x3400080},
6858{0x3400000, 0x76, 0x7f7fffff, 0x7f7fffff, 0x3400080},
6859{0x3400000, 0x76, 0x7f800000, 0x7f800000, 0x3400080},
6860{0x3400000, 0x76, 0x7f800001, 0x7fc00000, 0x3400081},
6861{0x3400000, 0x76, 0x7f984a37, 0x7fc00000, 0x3400081},
6862{0x3400000, 0x76, 0x7fbfffff, 0x7fc00000, 0x3400081},
6863{0x3400000, 0x76, 0x7fc00000, 0x7fc00000, 0x3400080},
6864{0x3400000, 0x76, 0x7fd9ba98, 0x7fc00000, 0x3400080},
6865{0x3400000, 0x76, 0x7fffffff, 0x7fc00000, 0x3400080},
6866{0x3400000, 0x76, 0x80000000, 0x0, 0x3400080},
6867{0x3400000, 0x76, 0x80000001, 0x0, 0x3400080},
6868{0x3400000, 0x76, 0x80000076, 0x0, 0x3400080},
6869{0x3400000, 0x76, 0x80002b94, 0x0, 0x3400080},
6870{0x3400000, 0x76, 0x80636d24, 0x0, 0x3400080},
6871{0x3400000, 0x76, 0x807fffff, 0x0, 0x3400080},
6872{0x3400000, 0x76, 0x80800000, 0x80800000, 0x3400080},
6873{0x3400000, 0x76, 0x80800002, 0x80800002, 0x3400080},
6874{0x3400000, 0x76, 0x81398437, 0x81398437, 0x3400080},
6875{0x3400000, 0x76, 0x8ba98d27, 0x8ba98d27, 0x3400080},
6876{0x3400000, 0x76, 0x8ba98d7a, 0x8ba98d7a, 0x3400080},
6877{0x3400000, 0x76, 0xf51f853a, 0xf51f853a, 0x3400080},
6878{0x3400000, 0x76, 0xff7ffff0, 0xff7ffff0, 0x3400080},
6879{0x3400000, 0x76, 0xff7fffff, 0xff7fffff, 0x3400080},
6880{0x3400000, 0x76, 0xff800000, 0xff800000, 0x3400080},
6881{0x3400000, 0x76, 0xff800001, 0x7fc00000, 0x3400081},
6882{0x3400000, 0x76, 0xff984a37, 0x7fc00000, 0x3400081},
6883{0x3400000, 0x76, 0xffbfffff, 0x7fc00000, 0x3400081},
6884{0x3400000, 0x76, 0xffc00000, 0x7fc00000, 0x3400080},
6885{0x3400000, 0x76, 0xffd9ba98, 0x7fc00000, 0x3400080},
6886{0x3400000, 0x76, 0xffffffff, 0x7fc00000, 0x3400080},
6887{0x3400000, 0x76, 0x4f3495cb, 0x4f3495cb, 0x3400080},
6888{0x3400000, 0x76, 0xe73a5134, 0xe73a5134, 0x3400080},
6889{0x3400000, 0x76, 0x7c994e9e, 0x7c994e9e, 0x3400080},
6890{0x3400000, 0x76, 0x6164bd6c, 0x6164bd6c, 0x3400080},
6891{0x3400000, 0x76, 0x9503366, 0x9503366, 0x3400080},
6892{0x3400000, 0x76, 0xbf5a97c9, 0xbf5a97c9, 0x3400080},
6893{0x3400000, 0x76, 0xe6ff1a14, 0xe6ff1a14, 0x3400080},
6894{0x3400000, 0x76, 0x77f31e2f, 0x77f31e2f, 0x3400080},
6895{0x3400000, 0x76, 0xaab4d7d8, 0xaab4d7d8, 0x3400080},
6896{0x3400000, 0x76, 0x966320b, 0x966320b, 0x3400080},
6897{0x3400000, 0x76, 0xb26bddee, 0xb26bddee, 0x3400080},
6898{0x3400000, 0x76, 0xb5c8e5d3, 0xb5c8e5d3, 0x3400080},
6899{0x3400000, 0x76, 0x317285d3, 0x317285d3, 0x3400080},
6900{0x3400000, 0x76, 0x3c9623b1, 0x3c9623b1, 0x3400080},
6901{0x3400000, 0x76, 0x51fd2c7c, 0x51fd2c7c, 0x3400080},
6902{0x3400000, 0x76, 0x7b906a6c, 0x7b906a6c, 0x3400080},
6903{0x3400000, 0x2b94, 0x0, 0x0, 0x3400080},
6904{0x3400000, 0x2b94, 0x1, 0x0, 0x3400080},
6905{0x3400000, 0x2b94, 0x76, 0x0, 0x3400080},
6906{0x3400000, 0x2b94, 0x2b94, 0x0, 0x3400080},
6907{0x3400000, 0x2b94, 0x636d24, 0x0, 0x3400080},
6908{0x3400000, 0x2b94, 0x7fffff, 0x0, 0x3400080},
6909{0x3400000, 0x2b94, 0x800000, 0x800000, 0x3400080},
6910{0x3400000, 0x2b94, 0x800002, 0x800002, 0x3400080},
6911{0x3400000, 0x2b94, 0x1398437, 0x1398437, 0x3400080},
6912{0x3400000, 0x2b94, 0xba98d27, 0xba98d27, 0x3400080},
6913{0x3400000, 0x2b94, 0xba98d7a, 0xba98d7a, 0x3400080},
6914{0x3400000, 0x2b94, 0x751f853a, 0x751f853a, 0x3400080},
6915{0x3400000, 0x2b94, 0x7f7ffff0, 0x7f7ffff0, 0x3400080},
6916{0x3400000, 0x2b94, 0x7f7fffff, 0x7f7fffff, 0x3400080},
6917{0x3400000, 0x2b94, 0x7f800000, 0x7f800000, 0x3400080},
6918{0x3400000, 0x2b94, 0x7f800001, 0x7fc00000, 0x3400081},
6919{0x3400000, 0x2b94, 0x7f984a37, 0x7fc00000, 0x3400081},
6920{0x3400000, 0x2b94, 0x7fbfffff, 0x7fc00000, 0x3400081},
6921{0x3400000, 0x2b94, 0x7fc00000, 0x7fc00000, 0x3400080},
6922{0x3400000, 0x2b94, 0x7fd9ba98, 0x7fc00000, 0x3400080},
6923{0x3400000, 0x2b94, 0x7fffffff, 0x7fc00000, 0x3400080},
6924{0x3400000, 0x2b94, 0x80000000, 0x0, 0x3400080},
6925{0x3400000, 0x2b94, 0x80000001, 0x0, 0x3400080},
6926{0x3400000, 0x2b94, 0x80000076, 0x0, 0x3400080},
6927{0x3400000, 0x2b94, 0x80002b94, 0x0, 0x3400080},
6928{0x3400000, 0x2b94, 0x80636d24, 0x0, 0x3400080},
6929{0x3400000, 0x2b94, 0x807fffff, 0x0, 0x3400080},
6930{0x3400000, 0x2b94, 0x80800000, 0x80800000, 0x3400080},
6931{0x3400000, 0x2b94, 0x80800002, 0x80800002, 0x3400080},
6932{0x3400000, 0x2b94, 0x81398437, 0x81398437, 0x3400080},
6933{0x3400000, 0x2b94, 0x8ba98d27, 0x8ba98d27, 0x3400080},
6934{0x3400000, 0x2b94, 0x8ba98d7a, 0x8ba98d7a, 0x3400080},
6935{0x3400000, 0x2b94, 0xf51f853a, 0xf51f853a, 0x3400080},
6936{0x3400000, 0x2b94, 0xff7ffff0, 0xff7ffff0, 0x3400080},
6937{0x3400000, 0x2b94, 0xff7fffff, 0xff7fffff, 0x3400080},
6938{0x3400000, 0x2b94, 0xff800000, 0xff800000, 0x3400080},
6939{0x3400000, 0x2b94, 0xff800001, 0x7fc00000, 0x3400081},
6940{0x3400000, 0x2b94, 0xff984a37, 0x7fc00000, 0x3400081},
6941{0x3400000, 0x2b94, 0xffbfffff, 0x7fc00000, 0x3400081},
6942{0x3400000, 0x2b94, 0xffc00000, 0x7fc00000, 0x3400080},
6943{0x3400000, 0x2b94, 0xffd9ba98, 0x7fc00000, 0x3400080},
6944{0x3400000, 0x2b94, 0xffffffff, 0x7fc00000, 0x3400080},
6945{0x3400000, 0x2b94, 0x4f3495cb, 0x4f3495cb, 0x3400080},
6946{0x3400000, 0x2b94, 0xe73a5134, 0xe73a5134, 0x3400080},
6947{0x3400000, 0x2b94, 0x7c994e9e, 0x7c994e9e, 0x3400080},
6948{0x3400000, 0x2b94, 0x6164bd6c, 0x6164bd6c, 0x3400080},
6949{0x3400000, 0x2b94, 0x9503366, 0x9503366, 0x3400080},
6950{0x3400000, 0x2b94, 0xbf5a97c9, 0xbf5a97c9, 0x3400080},
6951{0x3400000, 0x2b94, 0xe6ff1a14, 0xe6ff1a14, 0x3400080},
6952{0x3400000, 0x2b94, 0x77f31e2f, 0x77f31e2f, 0x3400080},
6953{0x3400000, 0x2b94, 0xaab4d7d8, 0xaab4d7d8, 0x3400080},
6954{0x3400000, 0x2b94, 0x966320b, 0x966320b, 0x3400080},
6955{0x3400000, 0x2b94, 0xb26bddee, 0xb26bddee, 0x3400080},
6956{0x3400000, 0x2b94, 0xb5c8e5d3, 0xb5c8e5d3, 0x3400080},
6957{0x3400000, 0x2b94, 0x317285d3, 0x317285d3, 0x3400080},
6958{0x3400000, 0x2b94, 0x3c9623b1, 0x3c9623b1, 0x3400080},
6959{0x3400000, 0x2b94, 0x51fd2c7c, 0x51fd2c7c, 0x3400080},
6960{0x3400000, 0x2b94, 0x7b906a6c, 0x7b906a6c, 0x3400080},
6961{0x3400000, 0x636d24, 0x0, 0x0, 0x3400080},
6962{0x3400000, 0x636d24, 0x1, 0x0, 0x3400080},
6963{0x3400000, 0x636d24, 0x76, 0x0, 0x3400080},
6964{0x3400000, 0x636d24, 0x2b94, 0x0, 0x3400080},
6965{0x3400000, 0x636d24, 0x636d24, 0x0, 0x3400080},
6966{0x3400000, 0x636d24, 0x7fffff, 0x0, 0x3400080},
6967{0x3400000, 0x636d24, 0x800000, 0x800000, 0x3400080},
6968{0x3400000, 0x636d24, 0x800002, 0x800002, 0x3400080},
6969{0x3400000, 0x636d24, 0x1398437, 0x1398437, 0x3400080},
6970{0x3400000, 0x636d24, 0xba98d27, 0xba98d27, 0x3400080},
6971{0x3400000, 0x636d24, 0xba98d7a, 0xba98d7a, 0x3400080},
6972{0x3400000, 0x636d24, 0x751f853a, 0x751f853a, 0x3400080},
6973{0x3400000, 0x636d24, 0x7f7ffff0, 0x7f7ffff0, 0x3400080},
6974{0x3400000, 0x636d24, 0x7f7fffff, 0x7f7fffff, 0x3400080},
6975{0x3400000, 0x636d24, 0x7f800000, 0x7f800000, 0x3400080},
6976{0x3400000, 0x636d24, 0x7f800001, 0x7fc00000, 0x3400081},
6977{0x3400000, 0x636d24, 0x7f984a37, 0x7fc00000, 0x3400081},
6978{0x3400000, 0x636d24, 0x7fbfffff, 0x7fc00000, 0x3400081},
6979{0x3400000, 0x636d24, 0x7fc00000, 0x7fc00000, 0x3400080},
6980{0x3400000, 0x636d24, 0x7fd9ba98, 0x7fc00000, 0x3400080},
6981{0x3400000, 0x636d24, 0x7fffffff, 0x7fc00000, 0x3400080},
6982{0x3400000, 0x636d24, 0x80000000, 0x0, 0x3400080},
6983{0x3400000, 0x636d24, 0x80000001, 0x0, 0x3400080},
6984{0x3400000, 0x636d24, 0x80000076, 0x0, 0x3400080},
6985{0x3400000, 0x636d24, 0x80002b94, 0x0, 0x3400080},
6986{0x3400000, 0x636d24, 0x80636d24, 0x0, 0x3400080},
6987{0x3400000, 0x636d24, 0x807fffff, 0x0, 0x3400080},
6988{0x3400000, 0x636d24, 0x80800000, 0x80800000, 0x3400080},
6989{0x3400000, 0x636d24, 0x80800002, 0x80800002, 0x3400080},
6990{0x3400000, 0x636d24, 0x81398437, 0x81398437, 0x3400080},
6991{0x3400000, 0x636d24, 0x8ba98d27, 0x8ba98d27, 0x3400080},
6992{0x3400000, 0x636d24, 0x8ba98d7a, 0x8ba98d7a, 0x3400080},
6993{0x3400000, 0x636d24, 0xf51f853a, 0xf51f853a, 0x3400080},
6994{0x3400000, 0x636d24, 0xff7ffff0, 0xff7ffff0, 0x3400080},
6995{0x3400000, 0x636d24, 0xff7fffff, 0xff7fffff, 0x3400080},
6996{0x3400000, 0x636d24, 0xff800000, 0xff800000, 0x3400080},
6997{0x3400000, 0x636d24, 0xff800001, 0x7fc00000, 0x3400081},
6998{0x3400000, 0x636d24, 0xff984a37, 0x7fc00000, 0x3400081},
6999{0x3400000, 0x636d24, 0xffbfffff, 0x7fc00000, 0x3400081},
7000{0x3400000, 0x636d24, 0xffc00000, 0x7fc00000, 0x3400080},
7001{0x3400000, 0x636d24, 0xffd9ba98, 0x7fc00000, 0x3400080},
7002{0x3400000, 0x636d24, 0xffffffff, 0x7fc00000, 0x3400080},
7003{0x3400000, 0x636d24, 0x4f3495cb, 0x4f3495cb, 0x3400080},
7004{0x3400000, 0x636d24, 0xe73a5134, 0xe73a5134, 0x3400080},
7005{0x3400000, 0x636d24, 0x7c994e9e, 0x7c994e9e, 0x3400080},
7006{0x3400000, 0x636d24, 0x6164bd6c, 0x6164bd6c, 0x3400080},
7007{0x3400000, 0x636d24, 0x9503366, 0x9503366, 0x3400080},
7008{0x3400000, 0x636d24, 0xbf5a97c9, 0xbf5a97c9, 0x3400080},
7009{0x3400000, 0x636d24, 0xe6ff1a14, 0xe6ff1a14, 0x3400080},
7010{0x3400000, 0x636d24, 0x77f31e2f, 0x77f31e2f, 0x3400080},
7011{0x3400000, 0x636d24, 0xaab4d7d8, 0xaab4d7d8, 0x3400080},
7012{0x3400000, 0x636d24, 0x966320b, 0x966320b, 0x3400080},
7013{0x3400000, 0x636d24, 0xb26bddee, 0xb26bddee, 0x3400080},
7014{0x3400000, 0x636d24, 0xb5c8e5d3, 0xb5c8e5d3, 0x3400080},
7015{0x3400000, 0x636d24, 0x317285d3, 0x317285d3, 0x3400080},
7016{0x3400000, 0x636d24, 0x3c9623b1, 0x3c9623b1, 0x3400080},
7017{0x3400000, 0x636d24, 0x51fd2c7c, 0x51fd2c7c, 0x3400080},
7018{0x3400000, 0x636d24, 0x7b906a6c, 0x7b906a6c, 0x3400080},
7019{0x3400000, 0x7fffff, 0x0, 0x0, 0x3400080},
7020{0x3400000, 0x7fffff, 0x1, 0x0, 0x3400080},
7021{0x3400000, 0x7fffff, 0x76, 0x0, 0x3400080},
7022{0x3400000, 0x7fffff, 0x2b94, 0x0, 0x3400080},
7023{0x3400000, 0x7fffff, 0x636d24, 0x0, 0x3400080},
7024{0x3400000, 0x7fffff, 0x7fffff, 0x0, 0x3400080},
7025{0x3400000, 0x7fffff, 0x800000, 0x800000, 0x3400080},
7026{0x3400000, 0x7fffff, 0x800002, 0x800002, 0x3400080},
7027{0x3400000, 0x7fffff, 0x1398437, 0x1398437, 0x3400080},
7028{0x3400000, 0x7fffff, 0xba98d27, 0xba98d27, 0x3400080},
7029{0x3400000, 0x7fffff, 0xba98d7a, 0xba98d7a, 0x3400080},
7030{0x3400000, 0x7fffff, 0x751f853a, 0x751f853a, 0x3400080},
7031{0x3400000, 0x7fffff, 0x7f7ffff0, 0x7f7ffff0, 0x3400080},
7032{0x3400000, 0x7fffff, 0x7f7fffff, 0x7f7fffff, 0x3400080},
7033{0x3400000, 0x7fffff, 0x7f800000, 0x7f800000, 0x3400080},
7034{0x3400000, 0x7fffff, 0x7f800001, 0x7fc00000, 0x3400081},
7035{0x3400000, 0x7fffff, 0x7f984a37, 0x7fc00000, 0x3400081},
7036{0x3400000, 0x7fffff, 0x7fbfffff, 0x7fc00000, 0x3400081},
7037{0x3400000, 0x7fffff, 0x7fc00000, 0x7fc00000, 0x3400080},
7038{0x3400000, 0x7fffff, 0x7fd9ba98, 0x7fc00000, 0x3400080},
7039{0x3400000, 0x7fffff, 0x7fffffff, 0x7fc00000, 0x3400080},
7040{0x3400000, 0x7fffff, 0x80000000, 0x0, 0x3400080},
7041{0x3400000, 0x7fffff, 0x80000001, 0x0, 0x3400080},
7042{0x3400000, 0x7fffff, 0x80000076, 0x0, 0x3400080},
7043{0x3400000, 0x7fffff, 0x80002b94, 0x0, 0x3400080},
7044{0x3400000, 0x7fffff, 0x80636d24, 0x0, 0x3400080},
7045{0x3400000, 0x7fffff, 0x807fffff, 0x0, 0x3400080},
7046{0x3400000, 0x7fffff, 0x80800000, 0x80800000, 0x3400080},
7047{0x3400000, 0x7fffff, 0x80800002, 0x80800002, 0x3400080},
7048{0x3400000, 0x7fffff, 0x81398437, 0x81398437, 0x3400080},
7049{0x3400000, 0x7fffff, 0x8ba98d27, 0x8ba98d27, 0x3400080},
7050{0x3400000, 0x7fffff, 0x8ba98d7a, 0x8ba98d7a, 0x3400080},
7051{0x3400000, 0x7fffff, 0xf51f853a, 0xf51f853a, 0x3400080},
7052{0x3400000, 0x7fffff, 0xff7ffff0, 0xff7ffff0, 0x3400080},
7053{0x3400000, 0x7fffff, 0xff7fffff, 0xff7fffff, 0x3400080},
7054{0x3400000, 0x7fffff, 0xff800000, 0xff800000, 0x3400080},
7055{0x3400000, 0x7fffff, 0xff800001, 0x7fc00000, 0x3400081},
7056{0x3400000, 0x7fffff, 0xff984a37, 0x7fc00000, 0x3400081},
7057{0x3400000, 0x7fffff, 0xffbfffff, 0x7fc00000, 0x3400081},
7058{0x3400000, 0x7fffff, 0xffc00000, 0x7fc00000, 0x3400080},
7059{0x3400000, 0x7fffff, 0xffd9ba98, 0x7fc00000, 0x3400080},
7060{0x3400000, 0x7fffff, 0xffffffff, 0x7fc00000, 0x3400080},
7061{0x3400000, 0x7fffff, 0x4f3495cb, 0x4f3495cb, 0x3400080},
7062{0x3400000, 0x7fffff, 0xe73a5134, 0xe73a5134, 0x3400080},
7063{0x3400000, 0x7fffff, 0x7c994e9e, 0x7c994e9e, 0x3400080},
7064{0x3400000, 0x7fffff, 0x6164bd6c, 0x6164bd6c, 0x3400080},
7065{0x3400000, 0x7fffff, 0x9503366, 0x9503366, 0x3400080},
7066{0x3400000, 0x7fffff, 0xbf5a97c9, 0xbf5a97c9, 0x3400080},
7067{0x3400000, 0x7fffff, 0xe6ff1a14, 0xe6ff1a14, 0x3400080},
7068{0x3400000, 0x7fffff, 0x77f31e2f, 0x77f31e2f, 0x3400080},
7069{0x3400000, 0x7fffff, 0xaab4d7d8, 0xaab4d7d8, 0x3400080},
7070{0x3400000, 0x7fffff, 0x966320b, 0x966320b, 0x3400080},
7071{0x3400000, 0x7fffff, 0xb26bddee, 0xb26bddee, 0x3400080},
7072{0x3400000, 0x7fffff, 0xb5c8e5d3, 0xb5c8e5d3, 0x3400080},
7073{0x3400000, 0x7fffff, 0x317285d3, 0x317285d3, 0x3400080},
7074{0x3400000, 0x7fffff, 0x3c9623b1, 0x3c9623b1, 0x3400080},
7075{0x3400000, 0x7fffff, 0x51fd2c7c, 0x51fd2c7c, 0x3400080},
7076{0x3400000, 0x7fffff, 0x7b906a6c, 0x7b906a6c, 0x3400080},
7077{0x3400000, 0x800000, 0x0, 0x800000, 0x3400000},
7078{0x3400000, 0x800000, 0x1, 0x800000, 0x3400080},
7079{0x3400000, 0x800000, 0x76, 0x800000, 0x3400080},
7080{0x3400000, 0x800000, 0x2b94, 0x800000, 0x3400080},
7081{0x3400000, 0x800000, 0x636d24, 0x800000, 0x3400080},
7082{0x3400000, 0x800000, 0x7fffff, 0x800000, 0x3400080},
7083{0x3400000, 0x800000, 0x800000, 0x1000000, 0x3400000},
7084{0x3400000, 0x800000, 0x800002, 0x1000001, 0x3400000},
7085{0x3400000, 0x800000, 0x1398437, 0x1798437, 0x3400000},
7086{0x3400000, 0x800000, 0xba98d27, 0xba98d29, 0x3400000},
7087{0x3400000, 0x800000, 0xba98d7a, 0xba98d7c, 0x3400000},
7088{0x3400000, 0x800000, 0x751f853a, 0x751f853b, 0x3400010},
7089{0x3400000, 0x800000, 0x7f7ffff0, 0x7f7ffff1, 0x3400010},
7090{0x3400000, 0x800000, 0x7f7fffff, 0x7f800000, 0x3400014},
7091{0x3400000, 0x800000, 0x7f800000, 0x7f800000, 0x3400000},
7092{0x3400000, 0x800000, 0x7f800001, 0x7fc00000, 0x3400001},
7093{0x3400000, 0x800000, 0x7f984a37, 0x7fc00000, 0x3400001},
7094{0x3400000, 0x800000, 0x7fbfffff, 0x7fc00000, 0x3400001},
7095{0x3400000, 0x800000, 0x7fc00000, 0x7fc00000, 0x3400000},
7096{0x3400000, 0x800000, 0x7fd9ba98, 0x7fc00000, 0x3400000},
7097{0x3400000, 0x800000, 0x7fffffff, 0x7fc00000, 0x3400000},
7098{0x3400000, 0x800000, 0x80000000, 0x800000, 0x3400000},
7099{0x3400000, 0x800000, 0x80000001, 0x800000, 0x3400080},
7100{0x3400000, 0x800000, 0x80000076, 0x800000, 0x3400080},
7101{0x3400000, 0x800000, 0x80002b94, 0x800000, 0x3400080},
7102{0x3400000, 0x800000, 0x80636d24, 0x800000, 0x3400080},
7103{0x3400000, 0x800000, 0x807fffff, 0x800000, 0x3400080},
7104{0x3400000, 0x800000, 0x80800000, 0x0, 0x3400000},
7105{0x3400000, 0x800000, 0x80800002, 0x0, 0x3400008},
7106{0x3400000, 0x800000, 0x81398437, 0x80f3086e, 0x3400000},
7107{0x3400000, 0x800000, 0x8ba98d27, 0x8ba98d25, 0x3400000},
7108{0x3400000, 0x800000, 0x8ba98d7a, 0x8ba98d78, 0x3400000},
7109{0x3400000, 0x800000, 0xf51f853a, 0xf51f8539, 0x3400010},
7110{0x3400000, 0x800000, 0xff7ffff0, 0xff7fffef, 0x3400010},
7111{0x3400000, 0x800000, 0xff7fffff, 0xff7ffffe, 0x3400010},
7112{0x3400000, 0x800000, 0xff800000, 0xff800000, 0x3400000},
7113{0x3400000, 0x800000, 0xff800001, 0x7fc00000, 0x3400001},
7114{0x3400000, 0x800000, 0xff984a37, 0x7fc00000, 0x3400001},
7115{0x3400000, 0x800000, 0xffbfffff, 0x7fc00000, 0x3400001},
7116{0x3400000, 0x800000, 0xffc00000, 0x7fc00000, 0x3400000},
7117{0x3400000, 0x800000, 0xffd9ba98, 0x7fc00000, 0x3400000},
7118{0x3400000, 0x800000, 0xffffffff, 0x7fc00000, 0x3400000},
7119{0x3400000, 0x800000, 0x4f3495cb, 0x4f3495cc, 0x3400010},
7120{0x3400000, 0x800000, 0xe73a5134, 0xe73a5133, 0x3400010},
7121{0x3400000, 0x800000, 0x7c994e9e, 0x7c994e9f, 0x3400010},
7122{0x3400000, 0x800000, 0x6164bd6c, 0x6164bd6d, 0x3400010},
7123{0x3400000, 0x800000, 0x9503366, 0x95033a6, 0x3400000},
7124{0x3400000, 0x800000, 0xbf5a97c9, 0xbf5a97c8, 0x3400010},
7125{0x3400000, 0x800000, 0xe6ff1a14, 0xe6ff1a13, 0x3400010},
7126{0x3400000, 0x800000, 0x77f31e2f, 0x77f31e30, 0x3400010},
7127{0x3400000, 0x800000, 0xaab4d7d8, 0xaab4d7d7, 0x3400010},
7128{0x3400000, 0x800000, 0x966320b, 0x966324b, 0x3400000},
7129{0x3400000, 0x800000, 0xb26bddee, 0xb26bdded, 0x3400010},
7130{0x3400000, 0x800000, 0xb5c8e5d3, 0xb5c8e5d2, 0x3400010},
7131{0x3400000, 0x800000, 0x317285d3, 0x317285d4, 0x3400010},
7132{0x3400000, 0x800000, 0x3c9623b1, 0x3c9623b2, 0x3400010},
7133{0x3400000, 0x800000, 0x51fd2c7c, 0x51fd2c7d, 0x3400010},
7134{0x3400000, 0x800000, 0x7b906a6c, 0x7b906a6d, 0x3400010},
7135{0x3400000, 0x800002, 0x0, 0x800002, 0x3400000},
7136{0x3400000, 0x800002, 0x1, 0x800002, 0x3400080},
7137{0x3400000, 0x800002, 0x76, 0x800002, 0x3400080},
7138{0x3400000, 0x800002, 0x2b94, 0x800002, 0x3400080},
7139{0x3400000, 0x800002, 0x636d24, 0x800002, 0x3400080},
7140{0x3400000, 0x800002, 0x7fffff, 0x800002, 0x3400080},
7141{0x3400000, 0x800002, 0x800000, 0x1000001, 0x3400000},
7142{0x3400000, 0x800002, 0x800002, 0x1000002, 0x3400000},
7143{0x3400000, 0x800002, 0x1398437, 0x1798438, 0x3400000},
7144{0x3400000, 0x800002, 0xba98d27, 0xba98d2a, 0x3400010},
7145{0x3400000, 0x800002, 0xba98d7a, 0xba98d7d, 0x3400010},
7146{0x3400000, 0x800002, 0x751f853a, 0x751f853b, 0x3400010},
7147{0x3400000, 0x800002, 0x7f7ffff0, 0x7f7ffff1, 0x3400010},
7148{0x3400000, 0x800002, 0x7f7fffff, 0x7f800000, 0x3400014},
7149{0x3400000, 0x800002, 0x7f800000, 0x7f800000, 0x3400000},
7150{0x3400000, 0x800002, 0x7f800001, 0x7fc00000, 0x3400001},
7151{0x3400000, 0x800002, 0x7f984a37, 0x7fc00000, 0x3400001},
7152{0x3400000, 0x800002, 0x7fbfffff, 0x7fc00000, 0x3400001},
7153{0x3400000, 0x800002, 0x7fc00000, 0x7fc00000, 0x3400000},
7154{0x3400000, 0x800002, 0x7fd9ba98, 0x7fc00000, 0x3400000},
7155{0x3400000, 0x800002, 0x7fffffff, 0x7fc00000, 0x3400000},
7156{0x3400000, 0x800002, 0x80000000, 0x800002, 0x3400000},
7157{0x3400000, 0x800002, 0x80000001, 0x800002, 0x3400080},
7158{0x3400000, 0x800002, 0x80000076, 0x800002, 0x3400080},
7159{0x3400000, 0x800002, 0x80002b94, 0x800002, 0x3400080},
7160{0x3400000, 0x800002, 0x80636d24, 0x800002, 0x3400080},
7161{0x3400000, 0x800002, 0x807fffff, 0x800002, 0x3400080},
7162{0x3400000, 0x800002, 0x80800000, 0x0, 0x3400008},
7163{0x3400000, 0x800002, 0x80800002, 0x0, 0x3400000},
7164{0x3400000, 0x800002, 0x81398437, 0x80f3086c, 0x3400000},
7165{0x3400000, 0x800002, 0x8ba98d27, 0x8ba98d24, 0x3400010},
7166{0x3400000, 0x800002, 0x8ba98d7a, 0x8ba98d77, 0x3400010},
7167{0x3400000, 0x800002, 0xf51f853a, 0xf51f8539, 0x3400010},
7168{0x3400000, 0x800002, 0xff7ffff0, 0xff7fffef, 0x3400010},
7169{0x3400000, 0x800002, 0xff7fffff, 0xff7ffffe, 0x3400010},
7170{0x3400000, 0x800002, 0xff800000, 0xff800000, 0x3400000},
7171{0x3400000, 0x800002, 0xff800001, 0x7fc00000, 0x3400001},
7172{0x3400000, 0x800002, 0xff984a37, 0x7fc00000, 0x3400001},
7173{0x3400000, 0x800002, 0xffbfffff, 0x7fc00000, 0x3400001},
7174{0x3400000, 0x800002, 0xffc00000, 0x7fc00000, 0x3400000},
7175{0x3400000, 0x800002, 0xffd9ba98, 0x7fc00000, 0x3400000},
7176{0x3400000, 0x800002, 0xffffffff, 0x7fc00000, 0x3400000},
7177{0x3400000, 0x800002, 0x4f3495cb, 0x4f3495cc, 0x3400010},
7178{0x3400000, 0x800002, 0xe73a5134, 0xe73a5133, 0x3400010},
7179{0x3400000, 0x800002, 0x7c994e9e, 0x7c994e9f, 0x3400010},
7180{0x3400000, 0x800002, 0x6164bd6c, 0x6164bd6d, 0x3400010},
7181{0x3400000, 0x800002, 0x9503366, 0x95033a7, 0x3400010},
7182{0x3400000, 0x800002, 0xbf5a97c9, 0xbf5a97c8, 0x3400010},
7183{0x3400000, 0x800002, 0xe6ff1a14, 0xe6ff1a13, 0x3400010},
7184{0x3400000, 0x800002, 0x77f31e2f, 0x77f31e30, 0x3400010},
7185{0x3400000, 0x800002, 0xaab4d7d8, 0xaab4d7d7, 0x3400010},
7186{0x3400000, 0x800002, 0x966320b, 0x966324c, 0x3400010},
7187{0x3400000, 0x800002, 0xb26bddee, 0xb26bdded, 0x3400010},
7188{0x3400000, 0x800002, 0xb5c8e5d3, 0xb5c8e5d2, 0x3400010},
7189{0x3400000, 0x800002, 0x317285d3, 0x317285d4, 0x3400010},
7190{0x3400000, 0x800002, 0x3c9623b1, 0x3c9623b2, 0x3400010},
7191{0x3400000, 0x800002, 0x51fd2c7c, 0x51fd2c7d, 0x3400010},
7192{0x3400000, 0x800002, 0x7b906a6c, 0x7b906a6d, 0x3400010},
7193{0x3400000, 0x1398437, 0x0, 0x1398437, 0x3400000},
7194{0x3400000, 0x1398437, 0x1, 0x1398437, 0x3400080},
7195{0x3400000, 0x1398437, 0x76, 0x1398437, 0x3400080},
7196{0x3400000, 0x1398437, 0x2b94, 0x1398437, 0x3400080},
7197{0x3400000, 0x1398437, 0x636d24, 0x1398437, 0x3400080},
7198{0x3400000, 0x1398437, 0x7fffff, 0x1398437, 0x3400080},
7199{0x3400000, 0x1398437, 0x800000, 0x1798437, 0x3400000},
7200{0x3400000, 0x1398437, 0x800002, 0x1798438, 0x3400000},
7201{0x3400000, 0x1398437, 0x1398437, 0x1b98437, 0x3400000},
7202{0x3400000, 0x1398437, 0xba98d27, 0xba98d2d, 0x3400010},
7203{0x3400000, 0x1398437, 0xba98d7a, 0xba98d80, 0x3400010},
7204{0x3400000, 0x1398437, 0x751f853a, 0x751f853b, 0x3400010},
7205{0x3400000, 0x1398437, 0x7f7ffff0, 0x7f7ffff1, 0x3400010},
7206{0x3400000, 0x1398437, 0x7f7fffff, 0x7f800000, 0x3400014},
7207{0x3400000, 0x1398437, 0x7f800000, 0x7f800000, 0x3400000},
7208{0x3400000, 0x1398437, 0x7f800001, 0x7fc00000, 0x3400001},
7209{0x3400000, 0x1398437, 0x7f984a37, 0x7fc00000, 0x3400001},
7210{0x3400000, 0x1398437, 0x7fbfffff, 0x7fc00000, 0x3400001},
7211{0x3400000, 0x1398437, 0x7fc00000, 0x7fc00000, 0x3400000},
7212{0x3400000, 0x1398437, 0x7fd9ba98, 0x7fc00000, 0x3400000},
7213{0x3400000, 0x1398437, 0x7fffffff, 0x7fc00000, 0x3400000},
7214{0x3400000, 0x1398437, 0x80000000, 0x1398437, 0x3400000},
7215{0x3400000, 0x1398437, 0x80000001, 0x1398437, 0x3400080},
7216{0x3400000, 0x1398437, 0x80000076, 0x1398437, 0x3400080},
7217{0x3400000, 0x1398437, 0x80002b94, 0x1398437, 0x3400080},
7218{0x3400000, 0x1398437, 0x80636d24, 0x1398437, 0x3400080},
7219{0x3400000, 0x1398437, 0x807fffff, 0x1398437, 0x3400080},
7220{0x3400000, 0x1398437, 0x80800000, 0xf3086e, 0x3400000},
7221{0x3400000, 0x1398437, 0x80800002, 0xf3086c, 0x3400000},
7222{0x3400000, 0x1398437, 0x81398437, 0x0, 0x3400000},
7223{0x3400000, 0x1398437, 0x8ba98d27, 0x8ba98d21, 0x3400010},
7224{0x3400000, 0x1398437, 0x8ba98d7a, 0x8ba98d74, 0x3400010},
7225{0x3400000, 0x1398437, 0xf51f853a, 0xf51f8539, 0x3400010},
7226{0x3400000, 0x1398437, 0xff7ffff0, 0xff7fffef, 0x3400010},
7227{0x3400000, 0x1398437, 0xff7fffff, 0xff7ffffe, 0x3400010},
7228{0x3400000, 0x1398437, 0xff800000, 0xff800000, 0x3400000},
7229{0x3400000, 0x1398437, 0xff800001, 0x7fc00000, 0x3400001},
7230{0x3400000, 0x1398437, 0xff984a37, 0x7fc00000, 0x3400001},
7231{0x3400000, 0x1398437, 0xffbfffff, 0x7fc00000, 0x3400001},
7232{0x3400000, 0x1398437, 0xffc00000, 0x7fc00000, 0x3400000},
7233{0x3400000, 0x1398437, 0xffd9ba98, 0x7fc00000, 0x3400000},
7234{0x3400000, 0x1398437, 0xffffffff, 0x7fc00000, 0x3400000},
7235{0x3400000, 0x1398437, 0x4f3495cb, 0x4f3495cc, 0x3400010},
7236{0x3400000, 0x1398437, 0xe73a5134, 0xe73a5133, 0x3400010},
7237{0x3400000, 0x1398437, 0x7c994e9e, 0x7c994e9f, 0x3400010},
7238{0x3400000, 0x1398437, 0x6164bd6c, 0x6164bd6d, 0x3400010},
7239{0x3400000, 0x1398437, 0x9503366, 0x9503420, 0x3400010},
7240{0x3400000, 0x1398437, 0xbf5a97c9, 0xbf5a97c8, 0x3400010},
7241{0x3400000, 0x1398437, 0xe6ff1a14, 0xe6ff1a13, 0x3400010},
7242{0x3400000, 0x1398437, 0x77f31e2f, 0x77f31e30, 0x3400010},
7243{0x3400000, 0x1398437, 0xaab4d7d8, 0xaab4d7d7, 0x3400010},
7244{0x3400000, 0x1398437, 0x966320b, 0x96632c5, 0x3400010},
7245{0x3400000, 0x1398437, 0xb26bddee, 0xb26bdded, 0x3400010},
7246{0x3400000, 0x1398437, 0xb5c8e5d3, 0xb5c8e5d2, 0x3400010},
7247{0x3400000, 0x1398437, 0x317285d3, 0x317285d4, 0x3400010},
7248{0x3400000, 0x1398437, 0x3c9623b1, 0x3c9623b2, 0x3400010},
7249{0x3400000, 0x1398437, 0x51fd2c7c, 0x51fd2c7d, 0x3400010},
7250{0x3400000, 0x1398437, 0x7b906a6c, 0x7b906a6d, 0x3400010},
7251{0x3400000, 0xba98d27, 0x0, 0xba98d27, 0x3400000},
7252{0x3400000, 0xba98d27, 0x1, 0xba98d27, 0x3400080},
7253{0x3400000, 0xba98d27, 0x76, 0xba98d27, 0x3400080},
7254{0x3400000, 0xba98d27, 0x2b94, 0xba98d27, 0x3400080},
7255{0x3400000, 0xba98d27, 0x636d24, 0xba98d27, 0x3400080},
7256{0x3400000, 0xba98d27, 0x7fffff, 0xba98d27, 0x3400080},
7257{0x3400000, 0xba98d27, 0x800000, 0xba98d29, 0x3400000},
7258{0x3400000, 0xba98d27, 0x800002, 0xba98d2a, 0x3400010},
7259{0x3400000, 0xba98d27, 0x1398437, 0xba98d2d, 0x3400010},
7260{0x3400000, 0xba98d27, 0xba98d27, 0xc298d27, 0x3400000},
7261{0x3400000, 0xba98d27, 0xba98d7a, 0xc298d51, 0x3400010},
7262{0x3400000, 0xba98d27, 0x751f853a, 0x751f853b, 0x3400010},
7263{0x3400000, 0xba98d27, 0x7f7ffff0, 0x7f7ffff1, 0x3400010},
7264{0x3400000, 0xba98d27, 0x7f7fffff, 0x7f800000, 0x3400014},
7265{0x3400000, 0xba98d27, 0x7f800000, 0x7f800000, 0x3400000},
7266{0x3400000, 0xba98d27, 0x7f800001, 0x7fc00000, 0x3400001},
7267{0x3400000, 0xba98d27, 0x7f984a37, 0x7fc00000, 0x3400001},
7268{0x3400000, 0xba98d27, 0x7fbfffff, 0x7fc00000, 0x3400001},
7269{0x3400000, 0xba98d27, 0x7fc00000, 0x7fc00000, 0x3400000},
7270{0x3400000, 0xba98d27, 0x7fd9ba98, 0x7fc00000, 0x3400000},
7271{0x3400000, 0xba98d27, 0x7fffffff, 0x7fc00000, 0x3400000},
7272{0x3400000, 0xba98d27, 0x80000000, 0xba98d27, 0x3400000},
7273{0x3400000, 0xba98d27, 0x80000001, 0xba98d27, 0x3400080},
7274{0x3400000, 0xba98d27, 0x80000076, 0xba98d27, 0x3400080},
7275{0x3400000, 0xba98d27, 0x80002b94, 0xba98d27, 0x3400080},
7276{0x3400000, 0xba98d27, 0x80636d24, 0xba98d27, 0x3400080},
7277{0x3400000, 0xba98d27, 0x807fffff, 0xba98d27, 0x3400080},
7278{0x3400000, 0xba98d27, 0x80800000, 0xba98d25, 0x3400000},
7279{0x3400000, 0xba98d27, 0x80800002, 0xba98d25, 0x3400010},
7280{0x3400000, 0xba98d27, 0x81398437, 0xba98d22, 0x3400010},
7281{0x3400000, 0xba98d27, 0x8ba98d27, 0x0, 0x3400000},
7282{0x3400000, 0xba98d27, 0x8ba98d7a, 0x83260000, 0x3400000},
7283{0x3400000, 0xba98d27, 0xf51f853a, 0xf51f8539, 0x3400010},
7284{0x3400000, 0xba98d27, 0xff7ffff0, 0xff7fffef, 0x3400010},
7285{0x3400000, 0xba98d27, 0xff7fffff, 0xff7ffffe, 0x3400010},
7286{0x3400000, 0xba98d27, 0xff800000, 0xff800000, 0x3400000},
7287{0x3400000, 0xba98d27, 0xff800001, 0x7fc00000, 0x3400001},
7288{0x3400000, 0xba98d27, 0xff984a37, 0x7fc00000, 0x3400001},
7289{0x3400000, 0xba98d27, 0xffbfffff, 0x7fc00000, 0x3400001},
7290{0x3400000, 0xba98d27, 0xffc00000, 0x7fc00000, 0x3400000},
7291{0x3400000, 0xba98d27, 0xffd9ba98, 0x7fc00000, 0x3400000},
7292{0x3400000, 0xba98d27, 0xffffffff, 0x7fc00000, 0x3400000},
7293{0x3400000, 0xba98d27, 0x4f3495cb, 0x4f3495cc, 0x3400010},
7294{0x3400000, 0xba98d27, 0xe73a5134, 0xe73a5133, 0x3400010},
7295{0x3400000, 0xba98d27, 0x7c994e9e, 0x7c994e9f, 0x3400010},
7296{0x3400000, 0xba98d27, 0x6164bd6c, 0x6164bd6d, 0x3400010},
7297{0x3400000, 0xba98d27, 0x9503366, 0xbb00ec3, 0x3400010},
7298{0x3400000, 0xba98d27, 0xbf5a97c9, 0xbf5a97c8, 0x3400010},
7299{0x3400000, 0xba98d27, 0xe6ff1a14, 0xe6ff1a13, 0x3400010},
7300{0x3400000, 0xba98d27, 0x77f31e2f, 0x77f31e30, 0x3400010},
7301{0x3400000, 0xba98d27, 0xaab4d7d8, 0xaab4d7d7, 0x3400010},
7302{0x3400000, 0xba98d27, 0x966320b, 0xbb0beb8, 0x3400010},
7303{0x3400000, 0xba98d27, 0xb26bddee, 0xb26bdded, 0x3400010},
7304{0x3400000, 0xba98d27, 0xb5c8e5d3, 0xb5c8e5d2, 0x3400010},
7305{0x3400000, 0xba98d27, 0x317285d3, 0x317285d4, 0x3400010},
7306{0x3400000, 0xba98d27, 0x3c9623b1, 0x3c9623b2, 0x3400010},
7307{0x3400000, 0xba98d27, 0x51fd2c7c, 0x51fd2c7d, 0x3400010},
7308{0x3400000, 0xba98d27, 0x7b906a6c, 0x7b906a6d, 0x3400010},
7309{0x3400000, 0xba98d7a, 0x0, 0xba98d7a, 0x3400000},
7310{0x3400000, 0xba98d7a, 0x1, 0xba98d7a, 0x3400080},
7311{0x3400000, 0xba98d7a, 0x76, 0xba98d7a, 0x3400080},
7312{0x3400000, 0xba98d7a, 0x2b94, 0xba98d7a, 0x3400080},
7313{0x3400000, 0xba98d7a, 0x636d24, 0xba98d7a, 0x3400080},
7314{0x3400000, 0xba98d7a, 0x7fffff, 0xba98d7a, 0x3400080},
7315{0x3400000, 0xba98d7a, 0x800000, 0xba98d7c, 0x3400000},
7316{0x3400000, 0xba98d7a, 0x800002, 0xba98d7d, 0x3400010},
7317{0x3400000, 0xba98d7a, 0x1398437, 0xba98d80, 0x3400010},
7318{0x3400000, 0xba98d7a, 0xba98d27, 0xc298d51, 0x3400010},
7319{0x3400000, 0xba98d7a, 0xba98d7a, 0xc298d7a, 0x3400000},
7320{0x3400000, 0xba98d7a, 0x751f853a, 0x751f853b, 0x3400010},
7321{0x3400000, 0xba98d7a, 0x7f7ffff0, 0x7f7ffff1, 0x3400010},
7322{0x3400000, 0xba98d7a, 0x7f7fffff, 0x7f800000, 0x3400014},
7323{0x3400000, 0xba98d7a, 0x7f800000, 0x7f800000, 0x3400000},
7324{0x3400000, 0xba98d7a, 0x7f800001, 0x7fc00000, 0x3400001},
7325{0x3400000, 0xba98d7a, 0x7f984a37, 0x7fc00000, 0x3400001},
7326{0x3400000, 0xba98d7a, 0x7fbfffff, 0x7fc00000, 0x3400001},
7327{0x3400000, 0xba98d7a, 0x7fc00000, 0x7fc00000, 0x3400000},
7328{0x3400000, 0xba98d7a, 0x7fd9ba98, 0x7fc00000, 0x3400000},
7329{0x3400000, 0xba98d7a, 0x7fffffff, 0x7fc00000, 0x3400000},
7330{0x3400000, 0xba98d7a, 0x80000000, 0xba98d7a, 0x3400000},
7331{0x3400000, 0xba98d7a, 0x80000001, 0xba98d7a, 0x3400080},
7332{0x3400000, 0xba98d7a, 0x80000076, 0xba98d7a, 0x3400080},
7333{0x3400000, 0xba98d7a, 0x80002b94, 0xba98d7a, 0x3400080},
7334{0x3400000, 0xba98d7a, 0x80636d24, 0xba98d7a, 0x3400080},
7335{0x3400000, 0xba98d7a, 0x807fffff, 0xba98d7a, 0x3400080},
7336{0x3400000, 0xba98d7a, 0x80800000, 0xba98d78, 0x3400000},
7337{0x3400000, 0xba98d7a, 0x80800002, 0xba98d78, 0x3400010},
7338{0x3400000, 0xba98d7a, 0x81398437, 0xba98d75, 0x3400010},
7339{0x3400000, 0xba98d7a, 0x8ba98d27, 0x3260000, 0x3400000},
7340{0x3400000, 0xba98d7a, 0x8ba98d7a, 0x0, 0x3400000},
7341{0x3400000, 0xba98d7a, 0xf51f853a, 0xf51f8539, 0x3400010},
7342{0x3400000, 0xba98d7a, 0xff7ffff0, 0xff7fffef, 0x3400010},
7343{0x3400000, 0xba98d7a, 0xff7fffff, 0xff7ffffe, 0x3400010},
7344{0x3400000, 0xba98d7a, 0xff800000, 0xff800000, 0x3400000},
7345{0x3400000, 0xba98d7a, 0xff800001, 0x7fc00000, 0x3400001},
7346{0x3400000, 0xba98d7a, 0xff984a37, 0x7fc00000, 0x3400001},
7347{0x3400000, 0xba98d7a, 0xffbfffff, 0x7fc00000, 0x3400001},
7348{0x3400000, 0xba98d7a, 0xffc00000, 0x7fc00000, 0x3400000},
7349{0x3400000, 0xba98d7a, 0xffd9ba98, 0x7fc00000, 0x3400000},
7350{0x3400000, 0xba98d7a, 0xffffffff, 0x7fc00000, 0x3400000},
7351{0x3400000, 0xba98d7a, 0x4f3495cb, 0x4f3495cc, 0x3400010},
7352{0x3400000, 0xba98d7a, 0xe73a5134, 0xe73a5133, 0x3400010},
7353{0x3400000, 0xba98d7a, 0x7c994e9e, 0x7c994e9f, 0x3400010},
7354{0x3400000, 0xba98d7a, 0x6164bd6c, 0x6164bd6d, 0x3400010},
7355{0x3400000, 0xba98d7a, 0x9503366, 0xbb00f16, 0x3400010},
7356{0x3400000, 0xba98d7a, 0xbf5a97c9, 0xbf5a97c8, 0x3400010},
7357{0x3400000, 0xba98d7a, 0xe6ff1a14, 0xe6ff1a13, 0x3400010},
7358{0x3400000, 0xba98d7a, 0x77f31e2f, 0x77f31e30, 0x3400010},
7359{0x3400000, 0xba98d7a, 0xaab4d7d8, 0xaab4d7d7, 0x3400010},
7360{0x3400000, 0xba98d7a, 0x966320b, 0xbb0bf0b, 0x3400010},
7361{0x3400000, 0xba98d7a, 0xb26bddee, 0xb26bdded, 0x3400010},
7362{0x3400000, 0xba98d7a, 0xb5c8e5d3, 0xb5c8e5d2, 0x3400010},
7363{0x3400000, 0xba98d7a, 0x317285d3, 0x317285d4, 0x3400010},
7364{0x3400000, 0xba98d7a, 0x3c9623b1, 0x3c9623b2, 0x3400010},
7365{0x3400000, 0xba98d7a, 0x51fd2c7c, 0x51fd2c7d, 0x3400010},
7366{0x3400000, 0xba98d7a, 0x7b906a6c, 0x7b906a6d, 0x3400010},
7367{0x3400000, 0x751f853a, 0x0, 0x751f853a, 0x3400000},
7368{0x3400000, 0x751f853a, 0x1, 0x751f853a, 0x3400080},
7369{0x3400000, 0x751f853a, 0x76, 0x751f853a, 0x3400080},
7370{0x3400000, 0x751f853a, 0x2b94, 0x751f853a, 0x3400080},
7371{0x3400000, 0x751f853a, 0x636d24, 0x751f853a, 0x3400080},
7372{0x3400000, 0x751f853a, 0x7fffff, 0x751f853a, 0x3400080},
7373{0x3400000, 0x751f853a, 0x800000, 0x751f853b, 0x3400010},
7374{0x3400000, 0x751f853a, 0x800002, 0x751f853b, 0x3400010},
7375{0x3400000, 0x751f853a, 0x1398437, 0x751f853b, 0x3400010},
7376{0x3400000, 0x751f853a, 0xba98d27, 0x751f853b, 0x3400010},
7377{0x3400000, 0x751f853a, 0xba98d7a, 0x751f853b, 0x3400010},
7378{0x3400000, 0x751f853a, 0x751f853a, 0x759f853a, 0x3400000},
7379{0x3400000, 0x751f853a, 0x7f7ffff0, 0x7f7ffffa, 0x3400010},
7380{0x3400000, 0x751f853a, 0x7f7fffff, 0x7f800000, 0x3400014},
7381{0x3400000, 0x751f853a, 0x7f800000, 0x7f800000, 0x3400000},
7382{0x3400000, 0x751f853a, 0x7f800001, 0x7fc00000, 0x3400001},
7383{0x3400000, 0x751f853a, 0x7f984a37, 0x7fc00000, 0x3400001},
7384{0x3400000, 0x751f853a, 0x7fbfffff, 0x7fc00000, 0x3400001},
7385{0x3400000, 0x751f853a, 0x7fc00000, 0x7fc00000, 0x3400000},
7386{0x3400000, 0x751f853a, 0x7fd9ba98, 0x7fc00000, 0x3400000},
7387{0x3400000, 0x751f853a, 0x7fffffff, 0x7fc00000, 0x3400000},
7388{0x3400000, 0x751f853a, 0x80000000, 0x751f853a, 0x3400000},
7389{0x3400000, 0x751f853a, 0x80000001, 0x751f853a, 0x3400080},
7390{0x3400000, 0x751f853a, 0x80000076, 0x751f853a, 0x3400080},
7391{0x3400000, 0x751f853a, 0x80002b94, 0x751f853a, 0x3400080},
7392{0x3400000, 0x751f853a, 0x80636d24, 0x751f853a, 0x3400080},
7393{0x3400000, 0x751f853a, 0x807fffff, 0x751f853a, 0x3400080},
7394{0x3400000, 0x751f853a, 0x80800000, 0x751f853a, 0x3400010},
7395{0x3400000, 0x751f853a, 0x80800002, 0x751f853a, 0x3400010},
7396{0x3400000, 0x751f853a, 0x81398437, 0x751f853a, 0x3400010},
7397{0x3400000, 0x751f853a, 0x8ba98d27, 0x751f853a, 0x3400010},
7398{0x3400000, 0x751f853a, 0x8ba98d7a, 0x751f853a, 0x3400010},
7399{0x3400000, 0x751f853a, 0xf51f853a, 0x0, 0x3400000},
7400{0x3400000, 0x751f853a, 0xff7ffff0, 0xff7fffe6, 0x3400010},
7401{0x3400000, 0x751f853a, 0xff7fffff, 0xff7ffff5, 0x3400010},
7402{0x3400000, 0x751f853a, 0xff800000, 0xff800000, 0x3400000},
7403{0x3400000, 0x751f853a, 0xff800001, 0x7fc00000, 0x3400001},
7404{0x3400000, 0x751f853a, 0xff984a37, 0x7fc00000, 0x3400001},
7405{0x3400000, 0x751f853a, 0xffbfffff, 0x7fc00000, 0x3400001},
7406{0x3400000, 0x751f853a, 0xffc00000, 0x7fc00000, 0x3400000},
7407{0x3400000, 0x751f853a, 0xffd9ba98, 0x7fc00000, 0x3400000},
7408{0x3400000, 0x751f853a, 0xffffffff, 0x7fc00000, 0x3400000},
7409{0x3400000, 0x751f853a, 0x4f3495cb, 0x751f853b, 0x3400010},
7410{0x3400000, 0x751f853a, 0xe73a5134, 0x751f853a, 0x3400010},
7411{0x3400000, 0x751f853a, 0x7c994e9e, 0x7c994fde, 0x3400010},
7412{0x3400000, 0x751f853a, 0x6164bd6c, 0x751f853b, 0x3400010},
7413{0x3400000, 0x751f853a, 0x9503366, 0x751f853b, 0x3400010},
7414{0x3400000, 0x751f853a, 0xbf5a97c9, 0x751f853a, 0x3400010},
7415{0x3400000, 0x751f853a, 0xe6ff1a14, 0x751f853a, 0x3400010},
7416{0x3400000, 0x751f853a, 0x77f31e2f, 0x77f81a59, 0x3400010},
7417{0x3400000, 0x751f853a, 0xaab4d7d8, 0x751f853a, 0x3400010},
7418{0x3400000, 0x751f853a, 0x966320b, 0x751f853b, 0x3400010},
7419{0x3400000, 0x751f853a, 0xb26bddee, 0x751f853a, 0x3400010},
7420{0x3400000, 0x751f853a, 0xb5c8e5d3, 0x751f853a, 0x3400010},
7421{0x3400000, 0x751f853a, 0x317285d3, 0x751f853b, 0x3400010},
7422{0x3400000, 0x751f853a, 0x3c9623b1, 0x751f853b, 0x3400010},
7423{0x3400000, 0x751f853a, 0x51fd2c7c, 0x751f853b, 0x3400010},
7424{0x3400000, 0x751f853a, 0x7b906a6c, 0x7b906f69, 0x3400010},
7425{0x3400000, 0x7f7ffff0, 0x0, 0x7f7ffff0, 0x3400000},
7426{0x3400000, 0x7f7ffff0, 0x1, 0x7f7ffff0, 0x3400080},
7427{0x3400000, 0x7f7ffff0, 0x76, 0x7f7ffff0, 0x3400080},
7428{0x3400000, 0x7f7ffff0, 0x2b94, 0x7f7ffff0, 0x3400080},
7429{0x3400000, 0x7f7ffff0, 0x636d24, 0x7f7ffff0, 0x3400080},
7430{0x3400000, 0x7f7ffff0, 0x7fffff, 0x7f7ffff0, 0x3400080},
7431{0x3400000, 0x7f7ffff0, 0x800000, 0x7f7ffff1, 0x3400010},
7432{0x3400000, 0x7f7ffff0, 0x800002, 0x7f7ffff1, 0x3400010},
7433{0x3400000, 0x7f7ffff0, 0x1398437, 0x7f7ffff1, 0x3400010},
7434{0x3400000, 0x7f7ffff0, 0xba98d27, 0x7f7ffff1, 0x3400010},
7435{0x3400000, 0x7f7ffff0, 0xba98d7a, 0x7f7ffff1, 0x3400010},
7436{0x3400000, 0x7f7ffff0, 0x751f853a, 0x7f7ffffa, 0x3400010},
7437{0x3400000, 0x7f7ffff0, 0x7f7ffff0, 0x7f800000, 0x3400014},
7438{0x3400000, 0x7f7ffff0, 0x7f7fffff, 0x7f800000, 0x3400014},
7439{0x3400000, 0x7f7ffff0, 0x7f800000, 0x7f800000, 0x3400000},
7440{0x3400000, 0x7f7ffff0, 0x7f800001, 0x7fc00000, 0x3400001},
7441{0x3400000, 0x7f7ffff0, 0x7f984a37, 0x7fc00000, 0x3400001},
7442{0x3400000, 0x7f7ffff0, 0x7fbfffff, 0x7fc00000, 0x3400001},
7443{0x3400000, 0x7f7ffff0, 0x7fc00000, 0x7fc00000, 0x3400000},
7444{0x3400000, 0x7f7ffff0, 0x7fd9ba98, 0x7fc00000, 0x3400000},
7445{0x3400000, 0x7f7ffff0, 0x7fffffff, 0x7fc00000, 0x3400000},
7446{0x3400000, 0x7f7ffff0, 0x80000000, 0x7f7ffff0, 0x3400000},
7447{0x3400000, 0x7f7ffff0, 0x80000001, 0x7f7ffff0, 0x3400080},
7448{0x3400000, 0x7f7ffff0, 0x80000076, 0x7f7ffff0, 0x3400080},
7449{0x3400000, 0x7f7ffff0, 0x80002b94, 0x7f7ffff0, 0x3400080},
7450{0x3400000, 0x7f7ffff0, 0x80636d24, 0x7f7ffff0, 0x3400080},
7451{0x3400000, 0x7f7ffff0, 0x807fffff, 0x7f7ffff0, 0x3400080},
7452{0x3400000, 0x7f7ffff0, 0x80800000, 0x7f7ffff0, 0x3400010},
7453{0x3400000, 0x7f7ffff0, 0x80800002, 0x7f7ffff0, 0x3400010},
7454{0x3400000, 0x7f7ffff0, 0x81398437, 0x7f7ffff0, 0x3400010},
7455{0x3400000, 0x7f7ffff0, 0x8ba98d27, 0x7f7ffff0, 0x3400010},
7456{0x3400000, 0x7f7ffff0, 0x8ba98d7a, 0x7f7ffff0, 0x3400010},
7457{0x3400000, 0x7f7ffff0, 0xf51f853a, 0x7f7fffe7, 0x3400010},
7458{0x3400000, 0x7f7ffff0, 0xff7ffff0, 0x0, 0x3400000},
7459{0x3400000, 0x7f7ffff0, 0xff7fffff, 0xf5700000, 0x3400000},
7460{0x3400000, 0x7f7ffff0, 0xff800000, 0xff800000, 0x3400000},
7461{0x3400000, 0x7f7ffff0, 0xff800001, 0x7fc00000, 0x3400001},
7462{0x3400000, 0x7f7ffff0, 0xff984a37, 0x7fc00000, 0x3400001},
7463{0x3400000, 0x7f7ffff0, 0xffbfffff, 0x7fc00000, 0x3400001},
7464{0x3400000, 0x7f7ffff0, 0xffc00000, 0x7fc00000, 0x3400000},
7465{0x3400000, 0x7f7ffff0, 0xffd9ba98, 0x7fc00000, 0x3400000},
7466{0x3400000, 0x7f7ffff0, 0xffffffff, 0x7fc00000, 0x3400000},
7467{0x3400000, 0x7f7ffff0, 0x4f3495cb, 0x7f7ffff1, 0x3400010},
7468{0x3400000, 0x7f7ffff0, 0xe73a5134, 0x7f7ffff0, 0x3400010},
7469{0x3400000, 0x7f7ffff0, 0x7c994e9e, 0x7f800000, 0x3400014},
7470{0x3400000, 0x7f7ffff0, 0x6164bd6c, 0x7f7ffff1, 0x3400010},
7471{0x3400000, 0x7f7ffff0, 0x9503366, 0x7f7ffff1, 0x3400010},
7472{0x3400000, 0x7f7ffff0, 0xbf5a97c9, 0x7f7ffff0, 0x3400010},
7473{0x3400000, 0x7f7ffff0, 0xe6ff1a14, 0x7f7ffff0, 0x3400010},
7474{0x3400000, 0x7f7ffff0, 0x77f31e2f, 0x7f800000, 0x3400014},
7475{0x3400000, 0x7f7ffff0, 0xaab4d7d8, 0x7f7ffff0, 0x3400010},
7476{0x3400000, 0x7f7ffff0, 0x966320b, 0x7f7ffff1, 0x3400010},
7477{0x3400000, 0x7f7ffff0, 0xb26bddee, 0x7f7ffff0, 0x3400010},
7478{0x3400000, 0x7f7ffff0, 0xb5c8e5d3, 0x7f7ffff0, 0x3400010},
7479{0x3400000, 0x7f7ffff0, 0x317285d3, 0x7f7ffff1, 0x3400010},
7480{0x3400000, 0x7f7ffff0, 0x3c9623b1, 0x7f7ffff1, 0x3400010},
7481{0x3400000, 0x7f7ffff0, 0x51fd2c7c, 0x7f7ffff1, 0x3400010},
7482{0x3400000, 0x7f7ffff0, 0x7b906a6c, 0x7f800000, 0x3400014},
7483{0x3400000, 0x7f7fffff, 0x0, 0x7f7fffff, 0x3400000},
7484{0x3400000, 0x7f7fffff, 0x1, 0x7f7fffff, 0x3400080},
7485{0x3400000, 0x7f7fffff, 0x76, 0x7f7fffff, 0x3400080},
7486{0x3400000, 0x7f7fffff, 0x2b94, 0x7f7fffff, 0x3400080},
7487{0x3400000, 0x7f7fffff, 0x636d24, 0x7f7fffff, 0x3400080},
7488{0x3400000, 0x7f7fffff, 0x7fffff, 0x7f7fffff, 0x3400080},
7489{0x3400000, 0x7f7fffff, 0x800000, 0x7f800000, 0x3400014},
7490{0x3400000, 0x7f7fffff, 0x800002, 0x7f800000, 0x3400014},
7491{0x3400000, 0x7f7fffff, 0x1398437, 0x7f800000, 0x3400014},
7492{0x3400000, 0x7f7fffff, 0xba98d27, 0x7f800000, 0x3400014},
7493{0x3400000, 0x7f7fffff, 0xba98d7a, 0x7f800000, 0x3400014},
7494{0x3400000, 0x7f7fffff, 0x751f853a, 0x7f800000, 0x3400014},
7495{0x3400000, 0x7f7fffff, 0x7f7ffff0, 0x7f800000, 0x3400014},
7496{0x3400000, 0x7f7fffff, 0x7f7fffff, 0x7f800000, 0x3400014},
7497{0x3400000, 0x7f7fffff, 0x7f800000, 0x7f800000, 0x3400000},
7498{0x3400000, 0x7f7fffff, 0x7f800001, 0x7fc00000, 0x3400001},
7499{0x3400000, 0x7f7fffff, 0x7f984a37, 0x7fc00000, 0x3400001},
7500{0x3400000, 0x7f7fffff, 0x7fbfffff, 0x7fc00000, 0x3400001},
7501{0x3400000, 0x7f7fffff, 0x7fc00000, 0x7fc00000, 0x3400000},
7502{0x3400000, 0x7f7fffff, 0x7fd9ba98, 0x7fc00000, 0x3400000},
7503{0x3400000, 0x7f7fffff, 0x7fffffff, 0x7fc00000, 0x3400000},
7504{0x3400000, 0x7f7fffff, 0x80000000, 0x7f7fffff, 0x3400000},
7505{0x3400000, 0x7f7fffff, 0x80000001, 0x7f7fffff, 0x3400080},
7506{0x3400000, 0x7f7fffff, 0x80000076, 0x7f7fffff, 0x3400080},
7507{0x3400000, 0x7f7fffff, 0x80002b94, 0x7f7fffff, 0x3400080},
7508{0x3400000, 0x7f7fffff, 0x80636d24, 0x7f7fffff, 0x3400080},
7509{0x3400000, 0x7f7fffff, 0x807fffff, 0x7f7fffff, 0x3400080},
7510{0x3400000, 0x7f7fffff, 0x80800000, 0x7f7fffff, 0x3400010},
7511{0x3400000, 0x7f7fffff, 0x80800002, 0x7f7fffff, 0x3400010},
7512{0x3400000, 0x7f7fffff, 0x81398437, 0x7f7fffff, 0x3400010},
7513{0x3400000, 0x7f7fffff, 0x8ba98d27, 0x7f7fffff, 0x3400010},
7514{0x3400000, 0x7f7fffff, 0x8ba98d7a, 0x7f7fffff, 0x3400010},
7515{0x3400000, 0x7f7fffff, 0xf51f853a, 0x7f7ffff6, 0x3400010},
7516{0x3400000, 0x7f7fffff, 0xff7ffff0, 0x75700000, 0x3400000},
7517{0x3400000, 0x7f7fffff, 0xff7fffff, 0x0, 0x3400000},
7518{0x3400000, 0x7f7fffff, 0xff800000, 0xff800000, 0x3400000},
7519{0x3400000, 0x7f7fffff, 0xff800001, 0x7fc00000, 0x3400001},
7520{0x3400000, 0x7f7fffff, 0xff984a37, 0x7fc00000, 0x3400001},
7521{0x3400000, 0x7f7fffff, 0xffbfffff, 0x7fc00000, 0x3400001},
7522{0x3400000, 0x7f7fffff, 0xffc00000, 0x7fc00000, 0x3400000},
7523{0x3400000, 0x7f7fffff, 0xffd9ba98, 0x7fc00000, 0x3400000},
7524{0x3400000, 0x7f7fffff, 0xffffffff, 0x7fc00000, 0x3400000},
7525{0x3400000, 0x7f7fffff, 0x4f3495cb, 0x7f800000, 0x3400014},
7526{0x3400000, 0x7f7fffff, 0xe73a5134, 0x7f7fffff, 0x3400010},
7527{0x3400000, 0x7f7fffff, 0x7c994e9e, 0x7f800000, 0x3400014},
7528{0x3400000, 0x7f7fffff, 0x6164bd6c, 0x7f800000, 0x3400014},
7529{0x3400000, 0x7f7fffff, 0x9503366, 0x7f800000, 0x3400014},
7530{0x3400000, 0x7f7fffff, 0xbf5a97c9, 0x7f7fffff, 0x3400010},
7531{0x3400000, 0x7f7fffff, 0xe6ff1a14, 0x7f7fffff, 0x3400010},
7532{0x3400000, 0x7f7fffff, 0x77f31e2f, 0x7f800000, 0x3400014},
7533{0x3400000, 0x7f7fffff, 0xaab4d7d8, 0x7f7fffff, 0x3400010},
7534{0x3400000, 0x7f7fffff, 0x966320b, 0x7f800000, 0x3400014},
7535{0x3400000, 0x7f7fffff, 0xb26bddee, 0x7f7fffff, 0x3400010},
7536{0x3400000, 0x7f7fffff, 0xb5c8e5d3, 0x7f7fffff, 0x3400010},
7537{0x3400000, 0x7f7fffff, 0x317285d3, 0x7f800000, 0x3400014},
7538{0x3400000, 0x7f7fffff, 0x3c9623b1, 0x7f800000, 0x3400014},
7539{0x3400000, 0x7f7fffff, 0x51fd2c7c, 0x7f800000, 0x3400014},
7540{0x3400000, 0x7f7fffff, 0x7b906a6c, 0x7f800000, 0x3400014},
7541{0x3400000, 0x7f800000, 0x0, 0x7f800000, 0x3400000},
7542{0x3400000, 0x7f800000, 0x1, 0x7f800000, 0x3400080},
7543{0x3400000, 0x7f800000, 0x76, 0x7f800000, 0x3400080},
7544{0x3400000, 0x7f800000, 0x2b94, 0x7f800000, 0x3400080},
7545{0x3400000, 0x7f800000, 0x636d24, 0x7f800000, 0x3400080},
7546{0x3400000, 0x7f800000, 0x7fffff, 0x7f800000, 0x3400080},
7547{0x3400000, 0x7f800000, 0x800000, 0x7f800000, 0x3400000},
7548{0x3400000, 0x7f800000, 0x800002, 0x7f800000, 0x3400000},
7549{0x3400000, 0x7f800000, 0x1398437, 0x7f800000, 0x3400000},
7550{0x3400000, 0x7f800000, 0xba98d27, 0x7f800000, 0x3400000},
7551{0x3400000, 0x7f800000, 0xba98d7a, 0x7f800000, 0x3400000},
7552{0x3400000, 0x7f800000, 0x751f853a, 0x7f800000, 0x3400000},
7553{0x3400000, 0x7f800000, 0x7f7ffff0, 0x7f800000, 0x3400000},
7554{0x3400000, 0x7f800000, 0x7f7fffff, 0x7f800000, 0x3400000},
7555{0x3400000, 0x7f800000, 0x7f800000, 0x7f800000, 0x3400000},
7556{0x3400000, 0x7f800000, 0x7f800001, 0x7fc00000, 0x3400001},
7557{0x3400000, 0x7f800000, 0x7f984a37, 0x7fc00000, 0x3400001},
7558{0x3400000, 0x7f800000, 0x7fbfffff, 0x7fc00000, 0x3400001},
7559{0x3400000, 0x7f800000, 0x7fc00000, 0x7fc00000, 0x3400000},
7560{0x3400000, 0x7f800000, 0x7fd9ba98, 0x7fc00000, 0x3400000},
7561{0x3400000, 0x7f800000, 0x7fffffff, 0x7fc00000, 0x3400000},
7562{0x3400000, 0x7f800000, 0x80000000, 0x7f800000, 0x3400000},
7563{0x3400000, 0x7f800000, 0x80000001, 0x7f800000, 0x3400080},
7564{0x3400000, 0x7f800000, 0x80000076, 0x7f800000, 0x3400080},
7565{0x3400000, 0x7f800000, 0x80002b94, 0x7f800000, 0x3400080},
7566{0x3400000, 0x7f800000, 0x80636d24, 0x7f800000, 0x3400080},
7567{0x3400000, 0x7f800000, 0x807fffff, 0x7f800000, 0x3400080},
7568{0x3400000, 0x7f800000, 0x80800000, 0x7f800000, 0x3400000},
7569{0x3400000, 0x7f800000, 0x80800002, 0x7f800000, 0x3400000},
7570{0x3400000, 0x7f800000, 0x81398437, 0x7f800000, 0x3400000},
7571{0x3400000, 0x7f800000, 0x8ba98d27, 0x7f800000, 0x3400000},
7572{0x3400000, 0x7f800000, 0x8ba98d7a, 0x7f800000, 0x3400000},
7573{0x3400000, 0x7f800000, 0xf51f853a, 0x7f800000, 0x3400000},
7574{0x3400000, 0x7f800000, 0xff7ffff0, 0x7f800000, 0x3400000},
7575{0x3400000, 0x7f800000, 0xff7fffff, 0x7f800000, 0x3400000},
7576{0x3400000, 0x7f800000, 0xff800000, 0x7fc00000, 0x3400001},
7577{0x3400000, 0x7f800000, 0xff800001, 0x7fc00000, 0x3400001},
7578{0x3400000, 0x7f800000, 0xff984a37, 0x7fc00000, 0x3400001},
7579{0x3400000, 0x7f800000, 0xffbfffff, 0x7fc00000, 0x3400001},
7580{0x3400000, 0x7f800000, 0xffc00000, 0x7fc00000, 0x3400000},
7581{0x3400000, 0x7f800000, 0xffd9ba98, 0x7fc00000, 0x3400000},
7582{0x3400000, 0x7f800000, 0xffffffff, 0x7fc00000, 0x3400000},
7583{0x3400000, 0x7f800000, 0x4f3495cb, 0x7f800000, 0x3400000},
7584{0x3400000, 0x7f800000, 0xe73a5134, 0x7f800000, 0x3400000},
7585{0x3400000, 0x7f800000, 0x7c994e9e, 0x7f800000, 0x3400000},
7586{0x3400000, 0x7f800000, 0x6164bd6c, 0x7f800000, 0x3400000},
7587{0x3400000, 0x7f800000, 0x9503366, 0x7f800000, 0x3400000},
7588{0x3400000, 0x7f800000, 0xbf5a97c9, 0x7f800000, 0x3400000},
7589{0x3400000, 0x7f800000, 0xe6ff1a14, 0x7f800000, 0x3400000},
7590{0x3400000, 0x7f800000, 0x77f31e2f, 0x7f800000, 0x3400000},
7591{0x3400000, 0x7f800000, 0xaab4d7d8, 0x7f800000, 0x3400000},
7592{0x3400000, 0x7f800000, 0x966320b, 0x7f800000, 0x3400000},
7593{0x3400000, 0x7f800000, 0xb26bddee, 0x7f800000, 0x3400000},
7594{0x3400000, 0x7f800000, 0xb5c8e5d3, 0x7f800000, 0x3400000},
7595{0x3400000, 0x7f800000, 0x317285d3, 0x7f800000, 0x3400000},
7596{0x3400000, 0x7f800000, 0x3c9623b1, 0x7f800000, 0x3400000},
7597{0x3400000, 0x7f800000, 0x51fd2c7c, 0x7f800000, 0x3400000},
7598{0x3400000, 0x7f800000, 0x7b906a6c, 0x7f800000, 0x3400000},
7599{0x3400000, 0x7f800001, 0x0, 0x7fc00000, 0x3400001},
7600{0x3400000, 0x7f800001, 0x1, 0x7fc00000, 0x3400081},
7601{0x3400000, 0x7f800001, 0x76, 0x7fc00000, 0x3400081},
7602{0x3400000, 0x7f800001, 0x2b94, 0x7fc00000, 0x3400081},
7603{0x3400000, 0x7f800001, 0x636d24, 0x7fc00000, 0x3400081},
7604{0x3400000, 0x7f800001, 0x7fffff, 0x7fc00000, 0x3400081},
7605{0x3400000, 0x7f800001, 0x800000, 0x7fc00000, 0x3400001},
7606{0x3400000, 0x7f800001, 0x800002, 0x7fc00000, 0x3400001},
7607{0x3400000, 0x7f800001, 0x1398437, 0x7fc00000, 0x3400001},
7608{0x3400000, 0x7f800001, 0xba98d27, 0x7fc00000, 0x3400001},
7609{0x3400000, 0x7f800001, 0xba98d7a, 0x7fc00000, 0x3400001},
7610{0x3400000, 0x7f800001, 0x751f853a, 0x7fc00000, 0x3400001},
7611{0x3400000, 0x7f800001, 0x7f7ffff0, 0x7fc00000, 0x3400001},
7612{0x3400000, 0x7f800001, 0x7f7fffff, 0x7fc00000, 0x3400001},
7613{0x3400000, 0x7f800001, 0x7f800000, 0x7fc00000, 0x3400001},
7614{0x3400000, 0x7f800001, 0x7f800001, 0x7fc00000, 0x3400001},
7615{0x3400000, 0x7f800001, 0x7f984a37, 0x7fc00000, 0x3400001},
7616{0x3400000, 0x7f800001, 0x7fbfffff, 0x7fc00000, 0x3400001},
7617{0x3400000, 0x7f800001, 0x7fc00000, 0x7fc00000, 0x3400001},
7618{0x3400000, 0x7f800001, 0x7fd9ba98, 0x7fc00000, 0x3400001},
7619{0x3400000, 0x7f800001, 0x7fffffff, 0x7fc00000, 0x3400001},
7620{0x3400000, 0x7f800001, 0x80000000, 0x7fc00000, 0x3400001},
7621{0x3400000, 0x7f800001, 0x80000001, 0x7fc00000, 0x3400081},
7622{0x3400000, 0x7f800001, 0x80000076, 0x7fc00000, 0x3400081},
7623{0x3400000, 0x7f800001, 0x80002b94, 0x7fc00000, 0x3400081},
7624{0x3400000, 0x7f800001, 0x80636d24, 0x7fc00000, 0x3400081},
7625{0x3400000, 0x7f800001, 0x807fffff, 0x7fc00000, 0x3400081},
7626{0x3400000, 0x7f800001, 0x80800000, 0x7fc00000, 0x3400001},
7627{0x3400000, 0x7f800001, 0x80800002, 0x7fc00000, 0x3400001},
7628{0x3400000, 0x7f800001, 0x81398437, 0x7fc00000, 0x3400001},
7629{0x3400000, 0x7f800001, 0x8ba98d27, 0x7fc00000, 0x3400001},
7630{0x3400000, 0x7f800001, 0x8ba98d7a, 0x7fc00000, 0x3400001},
7631{0x3400000, 0x7f800001, 0xf51f853a, 0x7fc00000, 0x3400001},
7632{0x3400000, 0x7f800001, 0xff7ffff0, 0x7fc00000, 0x3400001},
7633{0x3400000, 0x7f800001, 0xff7fffff, 0x7fc00000, 0x3400001},
7634{0x3400000, 0x7f800001, 0xff800000, 0x7fc00000, 0x3400001},
7635{0x3400000, 0x7f800001, 0xff800001, 0x7fc00000, 0x3400001},
7636{0x3400000, 0x7f800001, 0xff984a37, 0x7fc00000, 0x3400001},
7637{0x3400000, 0x7f800001, 0xffbfffff, 0x7fc00000, 0x3400001},
7638{0x3400000, 0x7f800001, 0xffc00000, 0x7fc00000, 0x3400001},
7639{0x3400000, 0x7f800001, 0xffd9ba98, 0x7fc00000, 0x3400001},
7640{0x3400000, 0x7f800001, 0xffffffff, 0x7fc00000, 0x3400001},
7641{0x3400000, 0x7f800001, 0x4f3495cb, 0x7fc00000, 0x3400001},
7642{0x3400000, 0x7f800001, 0xe73a5134, 0x7fc00000, 0x3400001},
7643{0x3400000, 0x7f800001, 0x7c994e9e, 0x7fc00000, 0x3400001},
7644{0x3400000, 0x7f800001, 0x6164bd6c, 0x7fc00000, 0x3400001},
7645{0x3400000, 0x7f800001, 0x9503366, 0x7fc00000, 0x3400001},
7646{0x3400000, 0x7f800001, 0xbf5a97c9, 0x7fc00000, 0x3400001},
7647{0x3400000, 0x7f800001, 0xe6ff1a14, 0x7fc00000, 0x3400001},
7648{0x3400000, 0x7f800001, 0x77f31e2f, 0x7fc00000, 0x3400001},
7649{0x3400000, 0x7f800001, 0xaab4d7d8, 0x7fc00000, 0x3400001},
7650{0x3400000, 0x7f800001, 0x966320b, 0x7fc00000, 0x3400001},
7651{0x3400000, 0x7f800001, 0xb26bddee, 0x7fc00000, 0x3400001},
7652{0x3400000, 0x7f800001, 0xb5c8e5d3, 0x7fc00000, 0x3400001},
7653{0x3400000, 0x7f800001, 0x317285d3, 0x7fc00000, 0x3400001},
7654{0x3400000, 0x7f800001, 0x3c9623b1, 0x7fc00000, 0x3400001},
7655{0x3400000, 0x7f800001, 0x51fd2c7c, 0x7fc00000, 0x3400001},
7656{0x3400000, 0x7f800001, 0x7b906a6c, 0x7fc00000, 0x3400001},
7657{0x3400000, 0x7f984a37, 0x0, 0x7fc00000, 0x3400001},
7658{0x3400000, 0x7f984a37, 0x1, 0x7fc00000, 0x3400081},
7659{0x3400000, 0x7f984a37, 0x76, 0x7fc00000, 0x3400081},
7660{0x3400000, 0x7f984a37, 0x2b94, 0x7fc00000, 0x3400081},
7661{0x3400000, 0x7f984a37, 0x636d24, 0x7fc00000, 0x3400081},
7662{0x3400000, 0x7f984a37, 0x7fffff, 0x7fc00000, 0x3400081},
7663{0x3400000, 0x7f984a37, 0x800000, 0x7fc00000, 0x3400001},
7664{0x3400000, 0x7f984a37, 0x800002, 0x7fc00000, 0x3400001},
7665{0x3400000, 0x7f984a37, 0x1398437, 0x7fc00000, 0x3400001},
7666{0x3400000, 0x7f984a37, 0xba98d27, 0x7fc00000, 0x3400001},
7667{0x3400000, 0x7f984a37, 0xba98d7a, 0x7fc00000, 0x3400001},
7668{0x3400000, 0x7f984a37, 0x751f853a, 0x7fc00000, 0x3400001},
7669{0x3400000, 0x7f984a37, 0x7f7ffff0, 0x7fc00000, 0x3400001},
7670{0x3400000, 0x7f984a37, 0x7f7fffff, 0x7fc00000, 0x3400001},
7671{0x3400000, 0x7f984a37, 0x7f800000, 0x7fc00000, 0x3400001},
7672{0x3400000, 0x7f984a37, 0x7f800001, 0x7fc00000, 0x3400001},
7673{0x3400000, 0x7f984a37, 0x7f984a37, 0x7fc00000, 0x3400001},
7674{0x3400000, 0x7f984a37, 0x7fbfffff, 0x7fc00000, 0x3400001},
7675{0x3400000, 0x7f984a37, 0x7fc00000, 0x7fc00000, 0x3400001},
7676{0x3400000, 0x7f984a37, 0x7fd9ba98, 0x7fc00000, 0x3400001},
7677{0x3400000, 0x7f984a37, 0x7fffffff, 0x7fc00000, 0x3400001},
7678{0x3400000, 0x7f984a37, 0x80000000, 0x7fc00000, 0x3400001},
7679{0x3400000, 0x7f984a37, 0x80000001, 0x7fc00000, 0x3400081},
7680{0x3400000, 0x7f984a37, 0x80000076, 0x7fc00000, 0x3400081},
7681{0x3400000, 0x7f984a37, 0x80002b94, 0x7fc00000, 0x3400081},
7682{0x3400000, 0x7f984a37, 0x80636d24, 0x7fc00000, 0x3400081},
7683{0x3400000, 0x7f984a37, 0x807fffff, 0x7fc00000, 0x3400081},
7684{0x3400000, 0x7f984a37, 0x80800000, 0x7fc00000, 0x3400001},
7685{0x3400000, 0x7f984a37, 0x80800002, 0x7fc00000, 0x3400001},
7686{0x3400000, 0x7f984a37, 0x81398437, 0x7fc00000, 0x3400001},
7687{0x3400000, 0x7f984a37, 0x8ba98d27, 0x7fc00000, 0x3400001},
7688{0x3400000, 0x7f984a37, 0x8ba98d7a, 0x7fc00000, 0x3400001},
7689{0x3400000, 0x7f984a37, 0xf51f853a, 0x7fc00000, 0x3400001},
7690{0x3400000, 0x7f984a37, 0xff7ffff0, 0x7fc00000, 0x3400001},
7691{0x3400000, 0x7f984a37, 0xff7fffff, 0x7fc00000, 0x3400001},
7692{0x3400000, 0x7f984a37, 0xff800000, 0x7fc00000, 0x3400001},
7693{0x3400000, 0x7f984a37, 0xff800001, 0x7fc00000, 0x3400001},
7694{0x3400000, 0x7f984a37, 0xff984a37, 0x7fc00000, 0x3400001},
7695{0x3400000, 0x7f984a37, 0xffbfffff, 0x7fc00000, 0x3400001},
7696{0x3400000, 0x7f984a37, 0xffc00000, 0x7fc00000, 0x3400001},
7697{0x3400000, 0x7f984a37, 0xffd9ba98, 0x7fc00000, 0x3400001},
7698{0x3400000, 0x7f984a37, 0xffffffff, 0x7fc00000, 0x3400001},
7699{0x3400000, 0x7f984a37, 0x4f3495cb, 0x7fc00000, 0x3400001},
7700{0x3400000, 0x7f984a37, 0xe73a5134, 0x7fc00000, 0x3400001},
7701{0x3400000, 0x7f984a37, 0x7c994e9e, 0x7fc00000, 0x3400001},
7702{0x3400000, 0x7f984a37, 0x6164bd6c, 0x7fc00000, 0x3400001},
7703{0x3400000, 0x7f984a37, 0x9503366, 0x7fc00000, 0x3400001},
7704{0x3400000, 0x7f984a37, 0xbf5a97c9, 0x7fc00000, 0x3400001},
7705{0x3400000, 0x7f984a37, 0xe6ff1a14, 0x7fc00000, 0x3400001},
7706{0x3400000, 0x7f984a37, 0x77f31e2f, 0x7fc00000, 0x3400001},
7707{0x3400000, 0x7f984a37, 0xaab4d7d8, 0x7fc00000, 0x3400001},
7708{0x3400000, 0x7f984a37, 0x966320b, 0x7fc00000, 0x3400001},
7709{0x3400000, 0x7f984a37, 0xb26bddee, 0x7fc00000, 0x3400001},
7710{0x3400000, 0x7f984a37, 0xb5c8e5d3, 0x7fc00000, 0x3400001},
7711{0x3400000, 0x7f984a37, 0x317285d3, 0x7fc00000, 0x3400001},
7712{0x3400000, 0x7f984a37, 0x3c9623b1, 0x7fc00000, 0x3400001},
7713{0x3400000, 0x7f984a37, 0x51fd2c7c, 0x7fc00000, 0x3400001},
7714{0x3400000, 0x7f984a37, 0x7b906a6c, 0x7fc00000, 0x3400001},
7715{0x3400000, 0x7fbfffff, 0x0, 0x7fc00000, 0x3400001},
7716{0x3400000, 0x7fbfffff, 0x1, 0x7fc00000, 0x3400081},
7717{0x3400000, 0x7fbfffff, 0x76, 0x7fc00000, 0x3400081},
7718{0x3400000, 0x7fbfffff, 0x2b94, 0x7fc00000, 0x3400081},
7719{0x3400000, 0x7fbfffff, 0x636d24, 0x7fc00000, 0x3400081},
7720{0x3400000, 0x7fbfffff, 0x7fffff, 0x7fc00000, 0x3400081},
7721{0x3400000, 0x7fbfffff, 0x800000, 0x7fc00000, 0x3400001},
7722{0x3400000, 0x7fbfffff, 0x800002, 0x7fc00000, 0x3400001},
7723{0x3400000, 0x7fbfffff, 0x1398437, 0x7fc00000, 0x3400001},
7724{0x3400000, 0x7fbfffff, 0xba98d27, 0x7fc00000, 0x3400001},
7725{0x3400000, 0x7fbfffff, 0xba98d7a, 0x7fc00000, 0x3400001},
7726{0x3400000, 0x7fbfffff, 0x751f853a, 0x7fc00000, 0x3400001},
7727{0x3400000, 0x7fbfffff, 0x7f7ffff0, 0x7fc00000, 0x3400001},
7728{0x3400000, 0x7fbfffff, 0x7f7fffff, 0x7fc00000, 0x3400001},
7729{0x3400000, 0x7fbfffff, 0x7f800000, 0x7fc00000, 0x3400001},
7730{0x3400000, 0x7fbfffff, 0x7f800001, 0x7fc00000, 0x3400001},
7731{0x3400000, 0x7fbfffff, 0x7f984a37, 0x7fc00000, 0x3400001},
7732{0x3400000, 0x7fbfffff, 0x7fbfffff, 0x7fc00000, 0x3400001},
7733{0x3400000, 0x7fbfffff, 0x7fc00000, 0x7fc00000, 0x3400001},
7734{0x3400000, 0x7fbfffff, 0x7fd9ba98, 0x7fc00000, 0x3400001},
7735{0x3400000, 0x7fbfffff, 0x7fffffff, 0x7fc00000, 0x3400001},
7736{0x3400000, 0x7fbfffff, 0x80000000, 0x7fc00000, 0x3400001},
7737{0x3400000, 0x7fbfffff, 0x80000001, 0x7fc00000, 0x3400081},
7738{0x3400000, 0x7fbfffff, 0x80000076, 0x7fc00000, 0x3400081},
7739{0x3400000, 0x7fbfffff, 0x80002b94, 0x7fc00000, 0x3400081},
7740{0x3400000, 0x7fbfffff, 0x80636d24, 0x7fc00000, 0x3400081},
7741{0x3400000, 0x7fbfffff, 0x807fffff, 0x7fc00000, 0x3400081},
7742{0x3400000, 0x7fbfffff, 0x80800000, 0x7fc00000, 0x3400001},
7743{0x3400000, 0x7fbfffff, 0x80800002, 0x7fc00000, 0x3400001},
7744{0x3400000, 0x7fbfffff, 0x81398437, 0x7fc00000, 0x3400001},
7745{0x3400000, 0x7fbfffff, 0x8ba98d27, 0x7fc00000, 0x3400001},
7746{0x3400000, 0x7fbfffff, 0x8ba98d7a, 0x7fc00000, 0x3400001},
7747{0x3400000, 0x7fbfffff, 0xf51f853a, 0x7fc00000, 0x3400001},
7748{0x3400000, 0x7fbfffff, 0xff7ffff0, 0x7fc00000, 0x3400001},
7749{0x3400000, 0x7fbfffff, 0xff7fffff, 0x7fc00000, 0x3400001},
7750{0x3400000, 0x7fbfffff, 0xff800000, 0x7fc00000, 0x3400001},
7751{0x3400000, 0x7fbfffff, 0xff800001, 0x7fc00000, 0x3400001},
7752{0x3400000, 0x7fbfffff, 0xff984a37, 0x7fc00000, 0x3400001},
7753{0x3400000, 0x7fbfffff, 0xffbfffff, 0x7fc00000, 0x3400001},
7754{0x3400000, 0x7fbfffff, 0xffc00000, 0x7fc00000, 0x3400001},
7755{0x3400000, 0x7fbfffff, 0xffd9ba98, 0x7fc00000, 0x3400001},
7756{0x3400000, 0x7fbfffff, 0xffffffff, 0x7fc00000, 0x3400001},
7757{0x3400000, 0x7fbfffff, 0x4f3495cb, 0x7fc00000, 0x3400001},
7758{0x3400000, 0x7fbfffff, 0xe73a5134, 0x7fc00000, 0x3400001},
7759{0x3400000, 0x7fbfffff, 0x7c994e9e, 0x7fc00000, 0x3400001},
7760{0x3400000, 0x7fbfffff, 0x6164bd6c, 0x7fc00000, 0x3400001},
7761{0x3400000, 0x7fbfffff, 0x9503366, 0x7fc00000, 0x3400001},
7762{0x3400000, 0x7fbfffff, 0xbf5a97c9, 0x7fc00000, 0x3400001},
7763{0x3400000, 0x7fbfffff, 0xe6ff1a14, 0x7fc00000, 0x3400001},
7764{0x3400000, 0x7fbfffff, 0x77f31e2f, 0x7fc00000, 0x3400001},
7765{0x3400000, 0x7fbfffff, 0xaab4d7d8, 0x7fc00000, 0x3400001},
7766{0x3400000, 0x7fbfffff, 0x966320b, 0x7fc00000, 0x3400001},
7767{0x3400000, 0x7fbfffff, 0xb26bddee, 0x7fc00000, 0x3400001},
7768{0x3400000, 0x7fbfffff, 0xb5c8e5d3, 0x7fc00000, 0x3400001},
7769{0x3400000, 0x7fbfffff, 0x317285d3, 0x7fc00000, 0x3400001},
7770{0x3400000, 0x7fbfffff, 0x3c9623b1, 0x7fc00000, 0x3400001},
7771{0x3400000, 0x7fbfffff, 0x51fd2c7c, 0x7fc00000, 0x3400001},
7772{0x3400000, 0x7fbfffff, 0x7b906a6c, 0x7fc00000, 0x3400001},
7773{0x3400000, 0x7fc00000, 0x0, 0x7fc00000, 0x3400000},
7774{0x3400000, 0x7fc00000, 0x1, 0x7fc00000, 0x3400080},
7775{0x3400000, 0x7fc00000, 0x76, 0x7fc00000, 0x3400080},
7776{0x3400000, 0x7fc00000, 0x2b94, 0x7fc00000, 0x3400080},
7777{0x3400000, 0x7fc00000, 0x636d24, 0x7fc00000, 0x3400080},
7778{0x3400000, 0x7fc00000, 0x7fffff, 0x7fc00000, 0x3400080},
7779{0x3400000, 0x7fc00000, 0x800000, 0x7fc00000, 0x3400000},
7780{0x3400000, 0x7fc00000, 0x800002, 0x7fc00000, 0x3400000},
7781{0x3400000, 0x7fc00000, 0x1398437, 0x7fc00000, 0x3400000},
7782{0x3400000, 0x7fc00000, 0xba98d27, 0x7fc00000, 0x3400000},
7783{0x3400000, 0x7fc00000, 0xba98d7a, 0x7fc00000, 0x3400000},
7784{0x3400000, 0x7fc00000, 0x751f853a, 0x7fc00000, 0x3400000},
7785{0x3400000, 0x7fc00000, 0x7f7ffff0, 0x7fc00000, 0x3400000},
7786{0x3400000, 0x7fc00000, 0x7f7fffff, 0x7fc00000, 0x3400000},
7787{0x3400000, 0x7fc00000, 0x7f800000, 0x7fc00000, 0x3400000},
7788{0x3400000, 0x7fc00000, 0x7f800001, 0x7fc00000, 0x3400001},
7789{0x3400000, 0x7fc00000, 0x7f984a37, 0x7fc00000, 0x3400001},
7790{0x3400000, 0x7fc00000, 0x7fbfffff, 0x7fc00000, 0x3400001},
7791{0x3400000, 0x7fc00000, 0x7fc00000, 0x7fc00000, 0x3400000},
7792{0x3400000, 0x7fc00000, 0x7fd9ba98, 0x7fc00000, 0x3400000},
7793{0x3400000, 0x7fc00000, 0x7fffffff, 0x7fc00000, 0x3400000},
7794{0x3400000, 0x7fc00000, 0x80000000, 0x7fc00000, 0x3400000},
7795{0x3400000, 0x7fc00000, 0x80000001, 0x7fc00000, 0x3400080},
7796{0x3400000, 0x7fc00000, 0x80000076, 0x7fc00000, 0x3400080},
7797{0x3400000, 0x7fc00000, 0x80002b94, 0x7fc00000, 0x3400080},
7798{0x3400000, 0x7fc00000, 0x80636d24, 0x7fc00000, 0x3400080},
7799{0x3400000, 0x7fc00000, 0x807fffff, 0x7fc00000, 0x3400080},
7800{0x3400000, 0x7fc00000, 0x80800000, 0x7fc00000, 0x3400000},
7801{0x3400000, 0x7fc00000, 0x80800002, 0x7fc00000, 0x3400000},
7802{0x3400000, 0x7fc00000, 0x81398437, 0x7fc00000, 0x3400000},
7803{0x3400000, 0x7fc00000, 0x8ba98d27, 0x7fc00000, 0x3400000},
7804{0x3400000, 0x7fc00000, 0x8ba98d7a, 0x7fc00000, 0x3400000},
7805{0x3400000, 0x7fc00000, 0xf51f853a, 0x7fc00000, 0x3400000},
7806{0x3400000, 0x7fc00000, 0xff7ffff0, 0x7fc00000, 0x3400000},
7807{0x3400000, 0x7fc00000, 0xff7fffff, 0x7fc00000, 0x3400000},
7808{0x3400000, 0x7fc00000, 0xff800000, 0x7fc00000, 0x3400000},
7809{0x3400000, 0x7fc00000, 0xff800001, 0x7fc00000, 0x3400001},
7810{0x3400000, 0x7fc00000, 0xff984a37, 0x7fc00000, 0x3400001},
7811{0x3400000, 0x7fc00000, 0xffbfffff, 0x7fc00000, 0x3400001},
7812{0x3400000, 0x7fc00000, 0xffc00000, 0x7fc00000, 0x3400000},
7813{0x3400000, 0x7fc00000, 0xffd9ba98, 0x7fc00000, 0x3400000},
7814{0x3400000, 0x7fc00000, 0xffffffff, 0x7fc00000, 0x3400000},
7815{0x3400000, 0x7fc00000, 0x4f3495cb, 0x7fc00000, 0x3400000},
7816{0x3400000, 0x7fc00000, 0xe73a5134, 0x7fc00000, 0x3400000},
7817{0x3400000, 0x7fc00000, 0x7c994e9e, 0x7fc00000, 0x3400000},
7818{0x3400000, 0x7fc00000, 0x6164bd6c, 0x7fc00000, 0x3400000},
7819{0x3400000, 0x7fc00000, 0x9503366, 0x7fc00000, 0x3400000},
7820{0x3400000, 0x7fc00000, 0xbf5a97c9, 0x7fc00000, 0x3400000},
7821{0x3400000, 0x7fc00000, 0xe6ff1a14, 0x7fc00000, 0x3400000},
7822{0x3400000, 0x7fc00000, 0x77f31e2f, 0x7fc00000, 0x3400000},
7823{0x3400000, 0x7fc00000, 0xaab4d7d8, 0x7fc00000, 0x3400000},
7824{0x3400000, 0x7fc00000, 0x966320b, 0x7fc00000, 0x3400000},
7825{0x3400000, 0x7fc00000, 0xb26bddee, 0x7fc00000, 0x3400000},
7826{0x3400000, 0x7fc00000, 0xb5c8e5d3, 0x7fc00000, 0x3400000},
7827{0x3400000, 0x7fc00000, 0x317285d3, 0x7fc00000, 0x3400000},
7828{0x3400000, 0x7fc00000, 0x3c9623b1, 0x7fc00000, 0x3400000},
7829{0x3400000, 0x7fc00000, 0x51fd2c7c, 0x7fc00000, 0x3400000},
7830{0x3400000, 0x7fc00000, 0x7b906a6c, 0x7fc00000, 0x3400000},
7831{0x3400000, 0x7fd9ba98, 0x0, 0x7fc00000, 0x3400000},
7832{0x3400000, 0x7fd9ba98, 0x1, 0x7fc00000, 0x3400080},
7833{0x3400000, 0x7fd9ba98, 0x76, 0x7fc00000, 0x3400080},
7834{0x3400000, 0x7fd9ba98, 0x2b94, 0x7fc00000, 0x3400080},
7835{0x3400000, 0x7fd9ba98, 0x636d24, 0x7fc00000, 0x3400080},
7836{0x3400000, 0x7fd9ba98, 0x7fffff, 0x7fc00000, 0x3400080},
7837{0x3400000, 0x7fd9ba98, 0x800000, 0x7fc00000, 0x3400000},
7838{0x3400000, 0x7fd9ba98, 0x800002, 0x7fc00000, 0x3400000},
7839{0x3400000, 0x7fd9ba98, 0x1398437, 0x7fc00000, 0x3400000},
7840{0x3400000, 0x7fd9ba98, 0xba98d27, 0x7fc00000, 0x3400000},
7841{0x3400000, 0x7fd9ba98, 0xba98d7a, 0x7fc00000, 0x3400000},
7842{0x3400000, 0x7fd9ba98, 0x751f853a, 0x7fc00000, 0x3400000},
7843{0x3400000, 0x7fd9ba98, 0x7f7ffff0, 0x7fc00000, 0x3400000},
7844{0x3400000, 0x7fd9ba98, 0x7f7fffff, 0x7fc00000, 0x3400000},
7845{0x3400000, 0x7fd9ba98, 0x7f800000, 0x7fc00000, 0x3400000},
7846{0x3400000, 0x7fd9ba98, 0x7f800001, 0x7fc00000, 0x3400001},
7847{0x3400000, 0x7fd9ba98, 0x7f984a37, 0x7fc00000, 0x3400001},
7848{0x3400000, 0x7fd9ba98, 0x7fbfffff, 0x7fc00000, 0x3400001},
7849{0x3400000, 0x7fd9ba98, 0x7fc00000, 0x7fc00000, 0x3400000},
7850{0x3400000, 0x7fd9ba98, 0x7fd9ba98, 0x7fc00000, 0x3400000},
7851{0x3400000, 0x7fd9ba98, 0x7fffffff, 0x7fc00000, 0x3400000},
7852{0x3400000, 0x7fd9ba98, 0x80000000, 0x7fc00000, 0x3400000},
7853{0x3400000, 0x7fd9ba98, 0x80000001, 0x7fc00000, 0x3400080},
7854{0x3400000, 0x7fd9ba98, 0x80000076, 0x7fc00000, 0x3400080},
7855{0x3400000, 0x7fd9ba98, 0x80002b94, 0x7fc00000, 0x3400080},
7856{0x3400000, 0x7fd9ba98, 0x80636d24, 0x7fc00000, 0x3400080},
7857{0x3400000, 0x7fd9ba98, 0x807fffff, 0x7fc00000, 0x3400080},
7858{0x3400000, 0x7fd9ba98, 0x80800000, 0x7fc00000, 0x3400000},
7859{0x3400000, 0x7fd9ba98, 0x80800002, 0x7fc00000, 0x3400000},
7860{0x3400000, 0x7fd9ba98, 0x81398437, 0x7fc00000, 0x3400000},
7861{0x3400000, 0x7fd9ba98, 0x8ba98d27, 0x7fc00000, 0x3400000},
7862{0x3400000, 0x7fd9ba98, 0x8ba98d7a, 0x7fc00000, 0x3400000},
7863{0x3400000, 0x7fd9ba98, 0xf51f853a, 0x7fc00000, 0x3400000},
7864{0x3400000, 0x7fd9ba98, 0xff7ffff0, 0x7fc00000, 0x3400000},
7865{0x3400000, 0x7fd9ba98, 0xff7fffff, 0x7fc00000, 0x3400000},
7866{0x3400000, 0x7fd9ba98, 0xff800000, 0x7fc00000, 0x3400000},
7867{0x3400000, 0x7fd9ba98, 0xff800001, 0x7fc00000, 0x3400001},
7868{0x3400000, 0x7fd9ba98, 0xff984a37, 0x7fc00000, 0x3400001},
7869{0x3400000, 0x7fd9ba98, 0xffbfffff, 0x7fc00000, 0x3400001},
7870{0x3400000, 0x7fd9ba98, 0xffc00000, 0x7fc00000, 0x3400000},
7871{0x3400000, 0x7fd9ba98, 0xffd9ba98, 0x7fc00000, 0x3400000},
7872{0x3400000, 0x7fd9ba98, 0xffffffff, 0x7fc00000, 0x3400000},
7873{0x3400000, 0x7fd9ba98, 0x4f3495cb, 0x7fc00000, 0x3400000},
7874{0x3400000, 0x7fd9ba98, 0xe73a5134, 0x7fc00000, 0x3400000},
7875{0x3400000, 0x7fd9ba98, 0x7c994e9e, 0x7fc00000, 0x3400000},
7876{0x3400000, 0x7fd9ba98, 0x6164bd6c, 0x7fc00000, 0x3400000},
7877{0x3400000, 0x7fd9ba98, 0x9503366, 0x7fc00000, 0x3400000},
7878{0x3400000, 0x7fd9ba98, 0xbf5a97c9, 0x7fc00000, 0x3400000},
7879{0x3400000, 0x7fd9ba98, 0xe6ff1a14, 0x7fc00000, 0x3400000},
7880{0x3400000, 0x7fd9ba98, 0x77f31e2f, 0x7fc00000, 0x3400000},
7881{0x3400000, 0x7fd9ba98, 0xaab4d7d8, 0x7fc00000, 0x3400000},
7882{0x3400000, 0x7fd9ba98, 0x966320b, 0x7fc00000, 0x3400000},
7883{0x3400000, 0x7fd9ba98, 0xb26bddee, 0x7fc00000, 0x3400000},
7884{0x3400000, 0x7fd9ba98, 0xb5c8e5d3, 0x7fc00000, 0x3400000},
7885{0x3400000, 0x7fd9ba98, 0x317285d3, 0x7fc00000, 0x3400000},
7886{0x3400000, 0x7fd9ba98, 0x3c9623b1, 0x7fc00000, 0x3400000},
7887{0x3400000, 0x7fd9ba98, 0x51fd2c7c, 0x7fc00000, 0x3400000},
7888{0x3400000, 0x7fd9ba98, 0x7b906a6c, 0x7fc00000, 0x3400000},
7889{0x3400000, 0x7fffffff, 0x0, 0x7fc00000, 0x3400000},
7890{0x3400000, 0x7fffffff, 0x1, 0x7fc00000, 0x3400080},
7891{0x3400000, 0x7fffffff, 0x76, 0x7fc00000, 0x3400080},
7892{0x3400000, 0x7fffffff, 0x2b94, 0x7fc00000, 0x3400080},
7893{0x3400000, 0x7fffffff, 0x636d24, 0x7fc00000, 0x3400080},
7894{0x3400000, 0x7fffffff, 0x7fffff, 0x7fc00000, 0x3400080},
7895{0x3400000, 0x7fffffff, 0x800000, 0x7fc00000, 0x3400000},
7896{0x3400000, 0x7fffffff, 0x800002, 0x7fc00000, 0x3400000},
7897{0x3400000, 0x7fffffff, 0x1398437, 0x7fc00000, 0x3400000},
7898{0x3400000, 0x7fffffff, 0xba98d27, 0x7fc00000, 0x3400000},
7899{0x3400000, 0x7fffffff, 0xba98d7a, 0x7fc00000, 0x3400000},
7900{0x3400000, 0x7fffffff, 0x751f853a, 0x7fc00000, 0x3400000},
7901{0x3400000, 0x7fffffff, 0x7f7ffff0, 0x7fc00000, 0x3400000},
7902{0x3400000, 0x7fffffff, 0x7f7fffff, 0x7fc00000, 0x3400000},
7903{0x3400000, 0x7fffffff, 0x7f800000, 0x7fc00000, 0x3400000},
7904{0x3400000, 0x7fffffff, 0x7f800001, 0x7fc00000, 0x3400001},
7905{0x3400000, 0x7fffffff, 0x7f984a37, 0x7fc00000, 0x3400001},
7906{0x3400000, 0x7fffffff, 0x7fbfffff, 0x7fc00000, 0x3400001},
7907{0x3400000, 0x7fffffff, 0x7fc00000, 0x7fc00000, 0x3400000},
7908{0x3400000, 0x7fffffff, 0x7fd9ba98, 0x7fc00000, 0x3400000},
7909{0x3400000, 0x7fffffff, 0x7fffffff, 0x7fc00000, 0x3400000},
7910{0x3400000, 0x7fffffff, 0x80000000, 0x7fc00000, 0x3400000},
7911{0x3400000, 0x7fffffff, 0x80000001, 0x7fc00000, 0x3400080},
7912{0x3400000, 0x7fffffff, 0x80000076, 0x7fc00000, 0x3400080},
7913{0x3400000, 0x7fffffff, 0x80002b94, 0x7fc00000, 0x3400080},
7914{0x3400000, 0x7fffffff, 0x80636d24, 0x7fc00000, 0x3400080},
7915{0x3400000, 0x7fffffff, 0x807fffff, 0x7fc00000, 0x3400080},
7916{0x3400000, 0x7fffffff, 0x80800000, 0x7fc00000, 0x3400000},
7917{0x3400000, 0x7fffffff, 0x80800002, 0x7fc00000, 0x3400000},
7918{0x3400000, 0x7fffffff, 0x81398437, 0x7fc00000, 0x3400000},
7919{0x3400000, 0x7fffffff, 0x8ba98d27, 0x7fc00000, 0x3400000},
7920{0x3400000, 0x7fffffff, 0x8ba98d7a, 0x7fc00000, 0x3400000},
7921{0x3400000, 0x7fffffff, 0xf51f853a, 0x7fc00000, 0x3400000},
7922{0x3400000, 0x7fffffff, 0xff7ffff0, 0x7fc00000, 0x3400000},
7923{0x3400000, 0x7fffffff, 0xff7fffff, 0x7fc00000, 0x3400000},
7924{0x3400000, 0x7fffffff, 0xff800000, 0x7fc00000, 0x3400000},
7925{0x3400000, 0x7fffffff, 0xff800001, 0x7fc00000, 0x3400001},
7926{0x3400000, 0x7fffffff, 0xff984a37, 0x7fc00000, 0x3400001},
7927{0x3400000, 0x7fffffff, 0xffbfffff, 0x7fc00000, 0x3400001},
7928{0x3400000, 0x7fffffff, 0xffc00000, 0x7fc00000, 0x3400000},
7929{0x3400000, 0x7fffffff, 0xffd9ba98, 0x7fc00000, 0x3400000},
7930{0x3400000, 0x7fffffff, 0xffffffff, 0x7fc00000, 0x3400000},
7931{0x3400000, 0x7fffffff, 0x4f3495cb, 0x7fc00000, 0x3400000},
7932{0x3400000, 0x7fffffff, 0xe73a5134, 0x7fc00000, 0x3400000},
7933{0x3400000, 0x7fffffff, 0x7c994e9e, 0x7fc00000, 0x3400000},
7934{0x3400000, 0x7fffffff, 0x6164bd6c, 0x7fc00000, 0x3400000},
7935{0x3400000, 0x7fffffff, 0x9503366, 0x7fc00000, 0x3400000},
7936{0x3400000, 0x7fffffff, 0xbf5a97c9, 0x7fc00000, 0x3400000},
7937{0x3400000, 0x7fffffff, 0xe6ff1a14, 0x7fc00000, 0x3400000},
7938{0x3400000, 0x7fffffff, 0x77f31e2f, 0x7fc00000, 0x3400000},
7939{0x3400000, 0x7fffffff, 0xaab4d7d8, 0x7fc00000, 0x3400000},
7940{0x3400000, 0x7fffffff, 0x966320b, 0x7fc00000, 0x3400000},
7941{0x3400000, 0x7fffffff, 0xb26bddee, 0x7fc00000, 0x3400000},
7942{0x3400000, 0x7fffffff, 0xb5c8e5d3, 0x7fc00000, 0x3400000},
7943{0x3400000, 0x7fffffff, 0x317285d3, 0x7fc00000, 0x3400000},
7944{0x3400000, 0x7fffffff, 0x3c9623b1, 0x7fc00000, 0x3400000},
7945{0x3400000, 0x7fffffff, 0x51fd2c7c, 0x7fc00000, 0x3400000},
7946{0x3400000, 0x7fffffff, 0x7b906a6c, 0x7fc00000, 0x3400000},
7947{0x3400000, 0x80000000, 0x0, 0x0, 0x3400000},
7948{0x3400000, 0x80000000, 0x1, 0x0, 0x3400080},
7949{0x3400000, 0x80000000, 0x76, 0x0, 0x3400080},
7950{0x3400000, 0x80000000, 0x2b94, 0x0, 0x3400080},
7951{0x3400000, 0x80000000, 0x636d24, 0x0, 0x3400080},
7952{0x3400000, 0x80000000, 0x7fffff, 0x0, 0x3400080},
7953{0x3400000, 0x80000000, 0x800000, 0x800000, 0x3400000},
7954{0x3400000, 0x80000000, 0x800002, 0x800002, 0x3400000},
7955{0x3400000, 0x80000000, 0x1398437, 0x1398437, 0x3400000},
7956{0x3400000, 0x80000000, 0xba98d27, 0xba98d27, 0x3400000},
7957{0x3400000, 0x80000000, 0xba98d7a, 0xba98d7a, 0x3400000},
7958{0x3400000, 0x80000000, 0x751f853a, 0x751f853a, 0x3400000},
7959{0x3400000, 0x80000000, 0x7f7ffff0, 0x7f7ffff0, 0x3400000},
7960{0x3400000, 0x80000000, 0x7f7fffff, 0x7f7fffff, 0x3400000},
7961{0x3400000, 0x80000000, 0x7f800000, 0x7f800000, 0x3400000},
7962{0x3400000, 0x80000000, 0x7f800001, 0x7fc00000, 0x3400001},
7963{0x3400000, 0x80000000, 0x7f984a37, 0x7fc00000, 0x3400001},
7964{0x3400000, 0x80000000, 0x7fbfffff, 0x7fc00000, 0x3400001},
7965{0x3400000, 0x80000000, 0x7fc00000, 0x7fc00000, 0x3400000},
7966{0x3400000, 0x80000000, 0x7fd9ba98, 0x7fc00000, 0x3400000},
7967{0x3400000, 0x80000000, 0x7fffffff, 0x7fc00000, 0x3400000},
7968{0x3400000, 0x80000000, 0x80000000, 0x80000000, 0x3400000},
7969{0x3400000, 0x80000000, 0x80000001, 0x0, 0x3400080},
7970{0x3400000, 0x80000000, 0x80000076, 0x0, 0x3400080},
7971{0x3400000, 0x80000000, 0x80002b94, 0x0, 0x3400080},
7972{0x3400000, 0x80000000, 0x80636d24, 0x0, 0x3400080},
7973{0x3400000, 0x80000000, 0x807fffff, 0x0, 0x3400080},
7974{0x3400000, 0x80000000, 0x80800000, 0x80800000, 0x3400000},
7975{0x3400000, 0x80000000, 0x80800002, 0x80800002, 0x3400000},
7976{0x3400000, 0x80000000, 0x81398437, 0x81398437, 0x3400000},
7977{0x3400000, 0x80000000, 0x8ba98d27, 0x8ba98d27, 0x3400000},
7978{0x3400000, 0x80000000, 0x8ba98d7a, 0x8ba98d7a, 0x3400000},
7979{0x3400000, 0x80000000, 0xf51f853a, 0xf51f853a, 0x3400000},
7980{0x3400000, 0x80000000, 0xff7ffff0, 0xff7ffff0, 0x3400000},
7981{0x3400000, 0x80000000, 0xff7fffff, 0xff7fffff, 0x3400000},
7982{0x3400000, 0x80000000, 0xff800000, 0xff800000, 0x3400000},
7983{0x3400000, 0x80000000, 0xff800001, 0x7fc00000, 0x3400001},
7984{0x3400000, 0x80000000, 0xff984a37, 0x7fc00000, 0x3400001},
7985{0x3400000, 0x80000000, 0xffbfffff, 0x7fc00000, 0x3400001},
7986{0x3400000, 0x80000000, 0xffc00000, 0x7fc00000, 0x3400000},
7987{0x3400000, 0x80000000, 0xffd9ba98, 0x7fc00000, 0x3400000},
7988{0x3400000, 0x80000000, 0xffffffff, 0x7fc00000, 0x3400000},
7989{0x3400000, 0x80000000, 0x4f3495cb, 0x4f3495cb, 0x3400000},
7990{0x3400000, 0x80000000, 0xe73a5134, 0xe73a5134, 0x3400000},
7991{0x3400000, 0x80000000, 0x7c994e9e, 0x7c994e9e, 0x3400000},
7992{0x3400000, 0x80000000, 0x6164bd6c, 0x6164bd6c, 0x3400000},
7993{0x3400000, 0x80000000, 0x9503366, 0x9503366, 0x3400000},
7994{0x3400000, 0x80000000, 0xbf5a97c9, 0xbf5a97c9, 0x3400000},
7995{0x3400000, 0x80000000, 0xe6ff1a14, 0xe6ff1a14, 0x3400000},
7996{0x3400000, 0x80000000, 0x77f31e2f, 0x77f31e2f, 0x3400000},
7997{0x3400000, 0x80000000, 0xaab4d7d8, 0xaab4d7d8, 0x3400000},
7998{0x3400000, 0x80000000, 0x966320b, 0x966320b, 0x3400000},
7999{0x3400000, 0x80000000, 0xb26bddee, 0xb26bddee, 0x3400000},
8000{0x3400000, 0x80000000, 0xb5c8e5d3, 0xb5c8e5d3, 0x3400000},
8001{0x3400000, 0x80000000, 0x317285d3, 0x317285d3, 0x3400000},
8002{0x3400000, 0x80000000, 0x3c9623b1, 0x3c9623b1, 0x3400000},
8003{0x3400000, 0x80000000, 0x51fd2c7c, 0x51fd2c7c, 0x3400000},
8004{0x3400000, 0x80000000, 0x7b906a6c, 0x7b906a6c, 0x3400000},
8005{0x3400000, 0x80000001, 0x0, 0x0, 0x3400080},
8006{0x3400000, 0x80000001, 0x1, 0x0, 0x3400080},
8007{0x3400000, 0x80000001, 0x76, 0x0, 0x3400080},
8008{0x3400000, 0x80000001, 0x2b94, 0x0, 0x3400080},
8009{0x3400000, 0x80000001, 0x636d24, 0x0, 0x3400080},
8010{0x3400000, 0x80000001, 0x7fffff, 0x0, 0x3400080},
8011{0x3400000, 0x80000001, 0x800000, 0x800000, 0x3400080},
8012{0x3400000, 0x80000001, 0x800002, 0x800002, 0x3400080},
8013{0x3400000, 0x80000001, 0x1398437, 0x1398437, 0x3400080},
8014{0x3400000, 0x80000001, 0xba98d27, 0xba98d27, 0x3400080},
8015{0x3400000, 0x80000001, 0xba98d7a, 0xba98d7a, 0x3400080},
8016{0x3400000, 0x80000001, 0x751f853a, 0x751f853a, 0x3400080},
8017{0x3400000, 0x80000001, 0x7f7ffff0, 0x7f7ffff0, 0x3400080},
8018{0x3400000, 0x80000001, 0x7f7fffff, 0x7f7fffff, 0x3400080},
8019{0x3400000, 0x80000001, 0x7f800000, 0x7f800000, 0x3400080},
8020{0x3400000, 0x80000001, 0x7f800001, 0x7fc00000, 0x3400081},
8021{0x3400000, 0x80000001, 0x7f984a37, 0x7fc00000, 0x3400081},
8022{0x3400000, 0x80000001, 0x7fbfffff, 0x7fc00000, 0x3400081},
8023{0x3400000, 0x80000001, 0x7fc00000, 0x7fc00000, 0x3400080},
8024{0x3400000, 0x80000001, 0x7fd9ba98, 0x7fc00000, 0x3400080},
8025{0x3400000, 0x80000001, 0x7fffffff, 0x7fc00000, 0x3400080},
8026{0x3400000, 0x80000001, 0x80000000, 0x0, 0x3400080},
8027{0x3400000, 0x80000001, 0x80000001, 0x0, 0x3400080},
8028{0x3400000, 0x80000001, 0x80000076, 0x0, 0x3400080},
8029{0x3400000, 0x80000001, 0x80002b94, 0x0, 0x3400080},
8030{0x3400000, 0x80000001, 0x80636d24, 0x0, 0x3400080},
8031{0x3400000, 0x80000001, 0x807fffff, 0x0, 0x3400080},
8032{0x3400000, 0x80000001, 0x80800000, 0x80800000, 0x3400080},
8033{0x3400000, 0x80000001, 0x80800002, 0x80800002, 0x3400080},
8034{0x3400000, 0x80000001, 0x81398437, 0x81398437, 0x3400080},
8035{0x3400000, 0x80000001, 0x8ba98d27, 0x8ba98d27, 0x3400080},
8036{0x3400000, 0x80000001, 0x8ba98d7a, 0x8ba98d7a, 0x3400080},
8037{0x3400000, 0x80000001, 0xf51f853a, 0xf51f853a, 0x3400080},
8038{0x3400000, 0x80000001, 0xff7ffff0, 0xff7ffff0, 0x3400080},
8039{0x3400000, 0x80000001, 0xff7fffff, 0xff7fffff, 0x3400080},
8040{0x3400000, 0x80000001, 0xff800000, 0xff800000, 0x3400080},
8041{0x3400000, 0x80000001, 0xff800001, 0x7fc00000, 0x3400081},
8042{0x3400000, 0x80000001, 0xff984a37, 0x7fc00000, 0x3400081},
8043{0x3400000, 0x80000001, 0xffbfffff, 0x7fc00000, 0x3400081},
8044{0x3400000, 0x80000001, 0xffc00000, 0x7fc00000, 0x3400080},
8045{0x3400000, 0x80000001, 0xffd9ba98, 0x7fc00000, 0x3400080},
8046{0x3400000, 0x80000001, 0xffffffff, 0x7fc00000, 0x3400080},
8047{0x3400000, 0x80000001, 0x4f3495cb, 0x4f3495cb, 0x3400080},
8048{0x3400000, 0x80000001, 0xe73a5134, 0xe73a5134, 0x3400080},
8049{0x3400000, 0x80000001, 0x7c994e9e, 0x7c994e9e, 0x3400080},
8050{0x3400000, 0x80000001, 0x6164bd6c, 0x6164bd6c, 0x3400080},
8051{0x3400000, 0x80000001, 0x9503366, 0x9503366, 0x3400080},
8052{0x3400000, 0x80000001, 0xbf5a97c9, 0xbf5a97c9, 0x3400080},
8053{0x3400000, 0x80000001, 0xe6ff1a14, 0xe6ff1a14, 0x3400080},
8054{0x3400000, 0x80000001, 0x77f31e2f, 0x77f31e2f, 0x3400080},
8055{0x3400000, 0x80000001, 0xaab4d7d8, 0xaab4d7d8, 0x3400080},
8056{0x3400000, 0x80000001, 0x966320b, 0x966320b, 0x3400080},
8057{0x3400000, 0x80000001, 0xb26bddee, 0xb26bddee, 0x3400080},
8058{0x3400000, 0x80000001, 0xb5c8e5d3, 0xb5c8e5d3, 0x3400080},
8059{0x3400000, 0x80000001, 0x317285d3, 0x317285d3, 0x3400080},
8060{0x3400000, 0x80000001, 0x3c9623b1, 0x3c9623b1, 0x3400080},
8061{0x3400000, 0x80000001, 0x51fd2c7c, 0x51fd2c7c, 0x3400080},
8062{0x3400000, 0x80000001, 0x7b906a6c, 0x7b906a6c, 0x3400080},
8063{0x3400000, 0x80000076, 0x0, 0x0, 0x3400080},
8064{0x3400000, 0x80000076, 0x1, 0x0, 0x3400080},
8065{0x3400000, 0x80000076, 0x76, 0x0, 0x3400080},
8066{0x3400000, 0x80000076, 0x2b94, 0x0, 0x3400080},
8067{0x3400000, 0x80000076, 0x636d24, 0x0, 0x3400080},
8068{0x3400000, 0x80000076, 0x7fffff, 0x0, 0x3400080},
8069{0x3400000, 0x80000076, 0x800000, 0x800000, 0x3400080},
8070{0x3400000, 0x80000076, 0x800002, 0x800002, 0x3400080},
8071{0x3400000, 0x80000076, 0x1398437, 0x1398437, 0x3400080},
8072{0x3400000, 0x80000076, 0xba98d27, 0xba98d27, 0x3400080},
8073{0x3400000, 0x80000076, 0xba98d7a, 0xba98d7a, 0x3400080},
8074{0x3400000, 0x80000076, 0x751f853a, 0x751f853a, 0x3400080},
8075{0x3400000, 0x80000076, 0x7f7ffff0, 0x7f7ffff0, 0x3400080},
8076{0x3400000, 0x80000076, 0x7f7fffff, 0x7f7fffff, 0x3400080},
8077{0x3400000, 0x80000076, 0x7f800000, 0x7f800000, 0x3400080},
8078{0x3400000, 0x80000076, 0x7f800001, 0x7fc00000, 0x3400081},
8079{0x3400000, 0x80000076, 0x7f984a37, 0x7fc00000, 0x3400081},
8080{0x3400000, 0x80000076, 0x7fbfffff, 0x7fc00000, 0x3400081},
8081{0x3400000, 0x80000076, 0x7fc00000, 0x7fc00000, 0x3400080},
8082{0x3400000, 0x80000076, 0x7fd9ba98, 0x7fc00000, 0x3400080},
8083{0x3400000, 0x80000076, 0x7fffffff, 0x7fc00000, 0x3400080},
8084{0x3400000, 0x80000076, 0x80000000, 0x0, 0x3400080},
8085{0x3400000, 0x80000076, 0x80000001, 0x0, 0x3400080},
8086{0x3400000, 0x80000076, 0x80000076, 0x0, 0x3400080},
8087{0x3400000, 0x80000076, 0x80002b94, 0x0, 0x3400080},
8088{0x3400000, 0x80000076, 0x80636d24, 0x0, 0x3400080},
8089{0x3400000, 0x80000076, 0x807fffff, 0x0, 0x3400080},
8090{0x3400000, 0x80000076, 0x80800000, 0x80800000, 0x3400080},
8091{0x3400000, 0x80000076, 0x80800002, 0x80800002, 0x3400080},
8092{0x3400000, 0x80000076, 0x81398437, 0x81398437, 0x3400080},
8093{0x3400000, 0x80000076, 0x8ba98d27, 0x8ba98d27, 0x3400080},
8094{0x3400000, 0x80000076, 0x8ba98d7a, 0x8ba98d7a, 0x3400080},
8095{0x3400000, 0x80000076, 0xf51f853a, 0xf51f853a, 0x3400080},
8096{0x3400000, 0x80000076, 0xff7ffff0, 0xff7ffff0, 0x3400080},
8097{0x3400000, 0x80000076, 0xff7fffff, 0xff7fffff, 0x3400080},
8098{0x3400000, 0x80000076, 0xff800000, 0xff800000, 0x3400080},
8099{0x3400000, 0x80000076, 0xff800001, 0x7fc00000, 0x3400081},
8100{0x3400000, 0x80000076, 0xff984a37, 0x7fc00000, 0x3400081},
8101{0x3400000, 0x80000076, 0xffbfffff, 0x7fc00000, 0x3400081},
8102{0x3400000, 0x80000076, 0xffc00000, 0x7fc00000, 0x3400080},
8103{0x3400000, 0x80000076, 0xffd9ba98, 0x7fc00000, 0x3400080},
8104{0x3400000, 0x80000076, 0xffffffff, 0x7fc00000, 0x3400080},
8105{0x3400000, 0x80000076, 0x4f3495cb, 0x4f3495cb, 0x3400080},
8106{0x3400000, 0x80000076, 0xe73a5134, 0xe73a5134, 0x3400080},
8107{0x3400000, 0x80000076, 0x7c994e9e, 0x7c994e9e, 0x3400080},
8108{0x3400000, 0x80000076, 0x6164bd6c, 0x6164bd6c, 0x3400080},
8109{0x3400000, 0x80000076, 0x9503366, 0x9503366, 0x3400080},
8110{0x3400000, 0x80000076, 0xbf5a97c9, 0xbf5a97c9, 0x3400080},
8111{0x3400000, 0x80000076, 0xe6ff1a14, 0xe6ff1a14, 0x3400080},
8112{0x3400000, 0x80000076, 0x77f31e2f, 0x77f31e2f, 0x3400080},
8113{0x3400000, 0x80000076, 0xaab4d7d8, 0xaab4d7d8, 0x3400080},
8114{0x3400000, 0x80000076, 0x966320b, 0x966320b, 0x3400080},
8115{0x3400000, 0x80000076, 0xb26bddee, 0xb26bddee, 0x3400080},
8116{0x3400000, 0x80000076, 0xb5c8e5d3, 0xb5c8e5d3, 0x3400080},
8117{0x3400000, 0x80000076, 0x317285d3, 0x317285d3, 0x3400080},
8118{0x3400000, 0x80000076, 0x3c9623b1, 0x3c9623b1, 0x3400080},
8119{0x3400000, 0x80000076, 0x51fd2c7c, 0x51fd2c7c, 0x3400080},
8120{0x3400000, 0x80000076, 0x7b906a6c, 0x7b906a6c, 0x3400080},
8121{0x3400000, 0x80002b94, 0x0, 0x0, 0x3400080},
8122{0x3400000, 0x80002b94, 0x1, 0x0, 0x3400080},
8123{0x3400000, 0x80002b94, 0x76, 0x0, 0x3400080},
8124{0x3400000, 0x80002b94, 0x2b94, 0x0, 0x3400080},
8125{0x3400000, 0x80002b94, 0x636d24, 0x0, 0x3400080},
8126{0x3400000, 0x80002b94, 0x7fffff, 0x0, 0x3400080},
8127{0x3400000, 0x80002b94, 0x800000, 0x800000, 0x3400080},
8128{0x3400000, 0x80002b94, 0x800002, 0x800002, 0x3400080},
8129{0x3400000, 0x80002b94, 0x1398437, 0x1398437, 0x3400080},
8130{0x3400000, 0x80002b94, 0xba98d27, 0xba98d27, 0x3400080},
8131{0x3400000, 0x80002b94, 0xba98d7a, 0xba98d7a, 0x3400080},
8132{0x3400000, 0x80002b94, 0x751f853a, 0x751f853a, 0x3400080},
8133{0x3400000, 0x80002b94, 0x7f7ffff0, 0x7f7ffff0, 0x3400080},
8134{0x3400000, 0x80002b94, 0x7f7fffff, 0x7f7fffff, 0x3400080},
8135{0x3400000, 0x80002b94, 0x7f800000, 0x7f800000, 0x3400080},
8136{0x3400000, 0x80002b94, 0x7f800001, 0x7fc00000, 0x3400081},
8137{0x3400000, 0x80002b94, 0x7f984a37, 0x7fc00000, 0x3400081},
8138{0x3400000, 0x80002b94, 0x7fbfffff, 0x7fc00000, 0x3400081},
8139{0x3400000, 0x80002b94, 0x7fc00000, 0x7fc00000, 0x3400080},
8140{0x3400000, 0x80002b94, 0x7fd9ba98, 0x7fc00000, 0x3400080},
8141{0x3400000, 0x80002b94, 0x7fffffff, 0x7fc00000, 0x3400080},
8142{0x3400000, 0x80002b94, 0x80000000, 0x0, 0x3400080},
8143{0x3400000, 0x80002b94, 0x80000001, 0x0, 0x3400080},
8144{0x3400000, 0x80002b94, 0x80000076, 0x0, 0x3400080},
8145{0x3400000, 0x80002b94, 0x80002b94, 0x0, 0x3400080},
8146{0x3400000, 0x80002b94, 0x80636d24, 0x0, 0x3400080},
8147{0x3400000, 0x80002b94, 0x807fffff, 0x0, 0x3400080},
8148{0x3400000, 0x80002b94, 0x80800000, 0x80800000, 0x3400080},
8149{0x3400000, 0x80002b94, 0x80800002, 0x80800002, 0x3400080},
8150{0x3400000, 0x80002b94, 0x81398437, 0x81398437, 0x3400080},
8151{0x3400000, 0x80002b94, 0x8ba98d27, 0x8ba98d27, 0x3400080},
8152{0x3400000, 0x80002b94, 0x8ba98d7a, 0x8ba98d7a, 0x3400080},
8153{0x3400000, 0x80002b94, 0xf51f853a, 0xf51f853a, 0x3400080},
8154{0x3400000, 0x80002b94, 0xff7ffff0, 0xff7ffff0, 0x3400080},
8155{0x3400000, 0x80002b94, 0xff7fffff, 0xff7fffff, 0x3400080},
8156{0x3400000, 0x80002b94, 0xff800000, 0xff800000, 0x3400080},
8157{0x3400000, 0x80002b94, 0xff800001, 0x7fc00000, 0x3400081},
8158{0x3400000, 0x80002b94, 0xff984a37, 0x7fc00000, 0x3400081},
8159{0x3400000, 0x80002b94, 0xffbfffff, 0x7fc00000, 0x3400081},
8160{0x3400000, 0x80002b94, 0xffc00000, 0x7fc00000, 0x3400080},
8161{0x3400000, 0x80002b94, 0xffd9ba98, 0x7fc00000, 0x3400080},
8162{0x3400000, 0x80002b94, 0xffffffff, 0x7fc00000, 0x3400080},
8163{0x3400000, 0x80002b94, 0x4f3495cb, 0x4f3495cb, 0x3400080},
8164{0x3400000, 0x80002b94, 0xe73a5134, 0xe73a5134, 0x3400080},
8165{0x3400000, 0x80002b94, 0x7c994e9e, 0x7c994e9e, 0x3400080},
8166{0x3400000, 0x80002b94, 0x6164bd6c, 0x6164bd6c, 0x3400080},
8167{0x3400000, 0x80002b94, 0x9503366, 0x9503366, 0x3400080},
8168{0x3400000, 0x80002b94, 0xbf5a97c9, 0xbf5a97c9, 0x3400080},
8169{0x3400000, 0x80002b94, 0xe6ff1a14, 0xe6ff1a14, 0x3400080},
8170{0x3400000, 0x80002b94, 0x77f31e2f, 0x77f31e2f, 0x3400080},
8171{0x3400000, 0x80002b94, 0xaab4d7d8, 0xaab4d7d8, 0x3400080},
8172{0x3400000, 0x80002b94, 0x966320b, 0x966320b, 0x3400080},
8173{0x3400000, 0x80002b94, 0xb26bddee, 0xb26bddee, 0x3400080},
8174{0x3400000, 0x80002b94, 0xb5c8e5d3, 0xb5c8e5d3, 0x3400080},
8175{0x3400000, 0x80002b94, 0x317285d3, 0x317285d3, 0x3400080},
8176{0x3400000, 0x80002b94, 0x3c9623b1, 0x3c9623b1, 0x3400080},
8177{0x3400000, 0x80002b94, 0x51fd2c7c, 0x51fd2c7c, 0x3400080},
8178{0x3400000, 0x80002b94, 0x7b906a6c, 0x7b906a6c, 0x3400080},
8179{0x3400000, 0x80636d24, 0x0, 0x0, 0x3400080},
8180{0x3400000, 0x80636d24, 0x1, 0x0, 0x3400080},
8181{0x3400000, 0x80636d24, 0x76, 0x0, 0x3400080},
8182{0x3400000, 0x80636d24, 0x2b94, 0x0, 0x3400080},
8183{0x3400000, 0x80636d24, 0x636d24, 0x0, 0x3400080},
8184{0x3400000, 0x80636d24, 0x7fffff, 0x0, 0x3400080},
8185{0x3400000, 0x80636d24, 0x800000, 0x800000, 0x3400080},
8186{0x3400000, 0x80636d24, 0x800002, 0x800002, 0x3400080},
8187{0x3400000, 0x80636d24, 0x1398437, 0x1398437, 0x3400080},
8188{0x3400000, 0x80636d24, 0xba98d27, 0xba98d27, 0x3400080},
8189{0x3400000, 0x80636d24, 0xba98d7a, 0xba98d7a, 0x3400080},
8190{0x3400000, 0x80636d24, 0x751f853a, 0x751f853a, 0x3400080},
8191{0x3400000, 0x80636d24, 0x7f7ffff0, 0x7f7ffff0, 0x3400080},
8192{0x3400000, 0x80636d24, 0x7f7fffff, 0x7f7fffff, 0x3400080},
8193{0x3400000, 0x80636d24, 0x7f800000, 0x7f800000, 0x3400080},
8194{0x3400000, 0x80636d24, 0x7f800001, 0x7fc00000, 0x3400081},
8195{0x3400000, 0x80636d24, 0x7f984a37, 0x7fc00000, 0x3400081},
8196{0x3400000, 0x80636d24, 0x7fbfffff, 0x7fc00000, 0x3400081},
8197{0x3400000, 0x80636d24, 0x7fc00000, 0x7fc00000, 0x3400080},
8198{0x3400000, 0x80636d24, 0x7fd9ba98, 0x7fc00000, 0x3400080},
8199{0x3400000, 0x80636d24, 0x7fffffff, 0x7fc00000, 0x3400080},
8200{0x3400000, 0x80636d24, 0x80000000, 0x0, 0x3400080},
8201{0x3400000, 0x80636d24, 0x80000001, 0x0, 0x3400080},
8202{0x3400000, 0x80636d24, 0x80000076, 0x0, 0x3400080},
8203{0x3400000, 0x80636d24, 0x80002b94, 0x0, 0x3400080},
8204{0x3400000, 0x80636d24, 0x80636d24, 0x0, 0x3400080},
8205{0x3400000, 0x80636d24, 0x807fffff, 0x0, 0x3400080},
8206{0x3400000, 0x80636d24, 0x80800000, 0x80800000, 0x3400080},
8207{0x3400000, 0x80636d24, 0x80800002, 0x80800002, 0x3400080},
8208{0x3400000, 0x80636d24, 0x81398437, 0x81398437, 0x3400080},
8209{0x3400000, 0x80636d24, 0x8ba98d27, 0x8ba98d27, 0x3400080},
8210{0x3400000, 0x80636d24, 0x8ba98d7a, 0x8ba98d7a, 0x3400080},
8211{0x3400000, 0x80636d24, 0xf51f853a, 0xf51f853a, 0x3400080},
8212{0x3400000, 0x80636d24, 0xff7ffff0, 0xff7ffff0, 0x3400080},
8213{0x3400000, 0x80636d24, 0xff7fffff, 0xff7fffff, 0x3400080},
8214{0x3400000, 0x80636d24, 0xff800000, 0xff800000, 0x3400080},
8215{0x3400000, 0x80636d24, 0xff800001, 0x7fc00000, 0x3400081},
8216{0x3400000, 0x80636d24, 0xff984a37, 0x7fc00000, 0x3400081},
8217{0x3400000, 0x80636d24, 0xffbfffff, 0x7fc00000, 0x3400081},
8218{0x3400000, 0x80636d24, 0xffc00000, 0x7fc00000, 0x3400080},
8219{0x3400000, 0x80636d24, 0xffd9ba98, 0x7fc00000, 0x3400080},
8220{0x3400000, 0x80636d24, 0xffffffff, 0x7fc00000, 0x3400080},
8221{0x3400000, 0x80636d24, 0x4f3495cb, 0x4f3495cb, 0x3400080},
8222{0x3400000, 0x80636d24, 0xe73a5134, 0xe73a5134, 0x3400080},
8223{0x3400000, 0x80636d24, 0x7c994e9e, 0x7c994e9e, 0x3400080},
8224{0x3400000, 0x80636d24, 0x6164bd6c, 0x6164bd6c, 0x3400080},
8225{0x3400000, 0x80636d24, 0x9503366, 0x9503366, 0x3400080},
8226{0x3400000, 0x80636d24, 0xbf5a97c9, 0xbf5a97c9, 0x3400080},
8227{0x3400000, 0x80636d24, 0xe6ff1a14, 0xe6ff1a14, 0x3400080},
8228{0x3400000, 0x80636d24, 0x77f31e2f, 0x77f31e2f, 0x3400080},
8229{0x3400000, 0x80636d24, 0xaab4d7d8, 0xaab4d7d8, 0x3400080},
8230{0x3400000, 0x80636d24, 0x966320b, 0x966320b, 0x3400080},
8231{0x3400000, 0x80636d24, 0xb26bddee, 0xb26bddee, 0x3400080},
8232{0x3400000, 0x80636d24, 0xb5c8e5d3, 0xb5c8e5d3, 0x3400080},
8233{0x3400000, 0x80636d24, 0x317285d3, 0x317285d3, 0x3400080},
8234{0x3400000, 0x80636d24, 0x3c9623b1, 0x3c9623b1, 0x3400080},
8235{0x3400000, 0x80636d24, 0x51fd2c7c, 0x51fd2c7c, 0x3400080},
8236{0x3400000, 0x80636d24, 0x7b906a6c, 0x7b906a6c, 0x3400080},
8237{0x3400000, 0x807fffff, 0x0, 0x0, 0x3400080},
8238{0x3400000, 0x807fffff, 0x1, 0x0, 0x3400080},
8239{0x3400000, 0x807fffff, 0x76, 0x0, 0x3400080},
8240{0x3400000, 0x807fffff, 0x2b94, 0x0, 0x3400080},
8241{0x3400000, 0x807fffff, 0x636d24, 0x0, 0x3400080},
8242{0x3400000, 0x807fffff, 0x7fffff, 0x0, 0x3400080},
8243{0x3400000, 0x807fffff, 0x800000, 0x800000, 0x3400080},
8244{0x3400000, 0x807fffff, 0x800002, 0x800002, 0x3400080},
8245{0x3400000, 0x807fffff, 0x1398437, 0x1398437, 0x3400080},
8246{0x3400000, 0x807fffff, 0xba98d27, 0xba98d27, 0x3400080},
8247{0x3400000, 0x807fffff, 0xba98d7a, 0xba98d7a, 0x3400080},
8248{0x3400000, 0x807fffff, 0x751f853a, 0x751f853a, 0x3400080},
8249{0x3400000, 0x807fffff, 0x7f7ffff0, 0x7f7ffff0, 0x3400080},
8250{0x3400000, 0x807fffff, 0x7f7fffff, 0x7f7fffff, 0x3400080},
8251{0x3400000, 0x807fffff, 0x7f800000, 0x7f800000, 0x3400080},
8252{0x3400000, 0x807fffff, 0x7f800001, 0x7fc00000, 0x3400081},
8253{0x3400000, 0x807fffff, 0x7f984a37, 0x7fc00000, 0x3400081},
8254{0x3400000, 0x807fffff, 0x7fbfffff, 0x7fc00000, 0x3400081},
8255{0x3400000, 0x807fffff, 0x7fc00000, 0x7fc00000, 0x3400080},
8256{0x3400000, 0x807fffff, 0x7fd9ba98, 0x7fc00000, 0x3400080},
8257{0x3400000, 0x807fffff, 0x7fffffff, 0x7fc00000, 0x3400080},
8258{0x3400000, 0x807fffff, 0x80000000, 0x0, 0x3400080},
8259{0x3400000, 0x807fffff, 0x80000001, 0x0, 0x3400080},
8260{0x3400000, 0x807fffff, 0x80000076, 0x0, 0x3400080},
8261{0x3400000, 0x807fffff, 0x80002b94, 0x0, 0x3400080},
8262{0x3400000, 0x807fffff, 0x80636d24, 0x0, 0x3400080},
8263{0x3400000, 0x807fffff, 0x807fffff, 0x0, 0x3400080},
8264{0x3400000, 0x807fffff, 0x80800000, 0x80800000, 0x3400080},
8265{0x3400000, 0x807fffff, 0x80800002, 0x80800002, 0x3400080},
8266{0x3400000, 0x807fffff, 0x81398437, 0x81398437, 0x3400080},
8267{0x3400000, 0x807fffff, 0x8ba98d27, 0x8ba98d27, 0x3400080},
8268{0x3400000, 0x807fffff, 0x8ba98d7a, 0x8ba98d7a, 0x3400080},
8269{0x3400000, 0x807fffff, 0xf51f853a, 0xf51f853a, 0x3400080},
8270{0x3400000, 0x807fffff, 0xff7ffff0, 0xff7ffff0, 0x3400080},
8271{0x3400000, 0x807fffff, 0xff7fffff, 0xff7fffff, 0x3400080},
8272{0x3400000, 0x807fffff, 0xff800000, 0xff800000, 0x3400080},
8273{0x3400000, 0x807fffff, 0xff800001, 0x7fc00000, 0x3400081},
8274{0x3400000, 0x807fffff, 0xff984a37, 0x7fc00000, 0x3400081},
8275{0x3400000, 0x807fffff, 0xffbfffff, 0x7fc00000, 0x3400081},
8276{0x3400000, 0x807fffff, 0xffc00000, 0x7fc00000, 0x3400080},
8277{0x3400000, 0x807fffff, 0xffd9ba98, 0x7fc00000, 0x3400080},
8278{0x3400000, 0x807fffff, 0xffffffff, 0x7fc00000, 0x3400080},
8279{0x3400000, 0x807fffff, 0x4f3495cb, 0x4f3495cb, 0x3400080},
8280{0x3400000, 0x807fffff, 0xe73a5134, 0xe73a5134, 0x3400080},
8281{0x3400000, 0x807fffff, 0x7c994e9e, 0x7c994e9e, 0x3400080},
8282{0x3400000, 0x807fffff, 0x6164bd6c, 0x6164bd6c, 0x3400080},
8283{0x3400000, 0x807fffff, 0x9503366, 0x9503366, 0x3400080},
8284{0x3400000, 0x807fffff, 0xbf5a97c9, 0xbf5a97c9, 0x3400080},
8285{0x3400000, 0x807fffff, 0xe6ff1a14, 0xe6ff1a14, 0x3400080},
8286{0x3400000, 0x807fffff, 0x77f31e2f, 0x77f31e2f, 0x3400080},
8287{0x3400000, 0x807fffff, 0xaab4d7d8, 0xaab4d7d8, 0x3400080},
8288{0x3400000, 0x807fffff, 0x966320b, 0x966320b, 0x3400080},
8289{0x3400000, 0x807fffff, 0xb26bddee, 0xb26bddee, 0x3400080},
8290{0x3400000, 0x807fffff, 0xb5c8e5d3, 0xb5c8e5d3, 0x3400080},
8291{0x3400000, 0x807fffff, 0x317285d3, 0x317285d3, 0x3400080},
8292{0x3400000, 0x807fffff, 0x3c9623b1, 0x3c9623b1, 0x3400080},
8293{0x3400000, 0x807fffff, 0x51fd2c7c, 0x51fd2c7c, 0x3400080},
8294{0x3400000, 0x807fffff, 0x7b906a6c, 0x7b906a6c, 0x3400080},
8295{0x3400000, 0x80800000, 0x0, 0x80800000, 0x3400000},
8296{0x3400000, 0x80800000, 0x1, 0x80800000, 0x3400080},
8297{0x3400000, 0x80800000, 0x76, 0x80800000, 0x3400080},
8298{0x3400000, 0x80800000, 0x2b94, 0x80800000, 0x3400080},
8299{0x3400000, 0x80800000, 0x636d24, 0x80800000, 0x3400080},
8300{0x3400000, 0x80800000, 0x7fffff, 0x80800000, 0x3400080},
8301{0x3400000, 0x80800000, 0x800000, 0x0, 0x3400000},
8302{0x3400000, 0x80800000, 0x800002, 0x0, 0x3400008},
8303{0x3400000, 0x80800000, 0x1398437, 0xf3086e, 0x3400000},
8304{0x3400000, 0x80800000, 0xba98d27, 0xba98d25, 0x3400000},
8305{0x3400000, 0x80800000, 0xba98d7a, 0xba98d78, 0x3400000},
8306{0x3400000, 0x80800000, 0x751f853a, 0x751f853a, 0x3400010},
8307{0x3400000, 0x80800000, 0x7f7ffff0, 0x7f7ffff0, 0x3400010},
8308{0x3400000, 0x80800000, 0x7f7fffff, 0x7f7fffff, 0x3400010},
8309{0x3400000, 0x80800000, 0x7f800000, 0x7f800000, 0x3400000},
8310{0x3400000, 0x80800000, 0x7f800001, 0x7fc00000, 0x3400001},
8311{0x3400000, 0x80800000, 0x7f984a37, 0x7fc00000, 0x3400001},
8312{0x3400000, 0x80800000, 0x7fbfffff, 0x7fc00000, 0x3400001},
8313{0x3400000, 0x80800000, 0x7fc00000, 0x7fc00000, 0x3400000},
8314{0x3400000, 0x80800000, 0x7fd9ba98, 0x7fc00000, 0x3400000},
8315{0x3400000, 0x80800000, 0x7fffffff, 0x7fc00000, 0x3400000},
8316{0x3400000, 0x80800000, 0x80000000, 0x80800000, 0x3400000},
8317{0x3400000, 0x80800000, 0x80000001, 0x80800000, 0x3400080},
8318{0x3400000, 0x80800000, 0x80000076, 0x80800000, 0x3400080},
8319{0x3400000, 0x80800000, 0x80002b94, 0x80800000, 0x3400080},
8320{0x3400000, 0x80800000, 0x80636d24, 0x80800000, 0x3400080},
8321{0x3400000, 0x80800000, 0x807fffff, 0x80800000, 0x3400080},
8322{0x3400000, 0x80800000, 0x80800000, 0x81000000, 0x3400000},
8323{0x3400000, 0x80800000, 0x80800002, 0x81000001, 0x3400000},
8324{0x3400000, 0x80800000, 0x81398437, 0x81798437, 0x3400000},
8325{0x3400000, 0x80800000, 0x8ba98d27, 0x8ba98d29, 0x3400000},
8326{0x3400000, 0x80800000, 0x8ba98d7a, 0x8ba98d7c, 0x3400000},
8327{0x3400000, 0x80800000, 0xf51f853a, 0xf51f853a, 0x3400010},
8328{0x3400000, 0x80800000, 0xff7ffff0, 0xff7ffff0, 0x3400010},
8329{0x3400000, 0x80800000, 0xff7fffff, 0xff7fffff, 0x3400010},
8330{0x3400000, 0x80800000, 0xff800000, 0xff800000, 0x3400000},
8331{0x3400000, 0x80800000, 0xff800001, 0x7fc00000, 0x3400001},
8332{0x3400000, 0x80800000, 0xff984a37, 0x7fc00000, 0x3400001},
8333{0x3400000, 0x80800000, 0xffbfffff, 0x7fc00000, 0x3400001},
8334{0x3400000, 0x80800000, 0xffc00000, 0x7fc00000, 0x3400000},
8335{0x3400000, 0x80800000, 0xffd9ba98, 0x7fc00000, 0x3400000},
8336{0x3400000, 0x80800000, 0xffffffff, 0x7fc00000, 0x3400000},
8337{0x3400000, 0x80800000, 0x4f3495cb, 0x4f3495cb, 0x3400010},
8338{0x3400000, 0x80800000, 0xe73a5134, 0xe73a5134, 0x3400010},
8339{0x3400000, 0x80800000, 0x7c994e9e, 0x7c994e9e, 0x3400010},
8340{0x3400000, 0x80800000, 0x6164bd6c, 0x6164bd6c, 0x3400010},
8341{0x3400000, 0x80800000, 0x9503366, 0x9503326, 0x3400000},
8342{0x3400000, 0x80800000, 0xbf5a97c9, 0xbf5a97c9, 0x3400010},
8343{0x3400000, 0x80800000, 0xe6ff1a14, 0xe6ff1a14, 0x3400010},
8344{0x3400000, 0x80800000, 0x77f31e2f, 0x77f31e2f, 0x3400010},
8345{0x3400000, 0x80800000, 0xaab4d7d8, 0xaab4d7d8, 0x3400010},
8346{0x3400000, 0x80800000, 0x966320b, 0x96631cb, 0x3400000},
8347{0x3400000, 0x80800000, 0xb26bddee, 0xb26bddee, 0x3400010},
8348{0x3400000, 0x80800000, 0xb5c8e5d3, 0xb5c8e5d3, 0x3400010},
8349{0x3400000, 0x80800000, 0x317285d3, 0x317285d3, 0x3400010},
8350{0x3400000, 0x80800000, 0x3c9623b1, 0x3c9623b1, 0x3400010},
8351{0x3400000, 0x80800000, 0x51fd2c7c, 0x51fd2c7c, 0x3400010},
8352{0x3400000, 0x80800000, 0x7b906a6c, 0x7b906a6c, 0x3400010},
8353{0x3400000, 0x80800002, 0x0, 0x80800002, 0x3400000},
8354{0x3400000, 0x80800002, 0x1, 0x80800002, 0x3400080},
8355{0x3400000, 0x80800002, 0x76, 0x80800002, 0x3400080},
8356{0x3400000, 0x80800002, 0x2b94, 0x80800002, 0x3400080},
8357{0x3400000, 0x80800002, 0x636d24, 0x80800002, 0x3400080},
8358{0x3400000, 0x80800002, 0x7fffff, 0x80800002, 0x3400080},
8359{0x3400000, 0x80800002, 0x800000, 0x0, 0x3400008},
8360{0x3400000, 0x80800002, 0x800002, 0x0, 0x3400000},
8361{0x3400000, 0x80800002, 0x1398437, 0xf3086c, 0x3400000},
8362{0x3400000, 0x80800002, 0xba98d27, 0xba98d25, 0x3400010},
8363{0x3400000, 0x80800002, 0xba98d7a, 0xba98d78, 0x3400010},
8364{0x3400000, 0x80800002, 0x751f853a, 0x751f853a, 0x3400010},
8365{0x3400000, 0x80800002, 0x7f7ffff0, 0x7f7ffff0, 0x3400010},
8366{0x3400000, 0x80800002, 0x7f7fffff, 0x7f7fffff, 0x3400010},
8367{0x3400000, 0x80800002, 0x7f800000, 0x7f800000, 0x3400000},
8368{0x3400000, 0x80800002, 0x7f800001, 0x7fc00000, 0x3400001},
8369{0x3400000, 0x80800002, 0x7f984a37, 0x7fc00000, 0x3400001},
8370{0x3400000, 0x80800002, 0x7fbfffff, 0x7fc00000, 0x3400001},
8371{0x3400000, 0x80800002, 0x7fc00000, 0x7fc00000, 0x3400000},
8372{0x3400000, 0x80800002, 0x7fd9ba98, 0x7fc00000, 0x3400000},
8373{0x3400000, 0x80800002, 0x7fffffff, 0x7fc00000, 0x3400000},
8374{0x3400000, 0x80800002, 0x80000000, 0x80800002, 0x3400000},
8375{0x3400000, 0x80800002, 0x80000001, 0x80800002, 0x3400080},
8376{0x3400000, 0x80800002, 0x80000076, 0x80800002, 0x3400080},
8377{0x3400000, 0x80800002, 0x80002b94, 0x80800002, 0x3400080},
8378{0x3400000, 0x80800002, 0x80636d24, 0x80800002, 0x3400080},
8379{0x3400000, 0x80800002, 0x807fffff, 0x80800002, 0x3400080},
8380{0x3400000, 0x80800002, 0x80800000, 0x81000001, 0x3400000},
8381{0x3400000, 0x80800002, 0x80800002, 0x81000002, 0x3400000},
8382{0x3400000, 0x80800002, 0x81398437, 0x81798438, 0x3400000},
8383{0x3400000, 0x80800002, 0x8ba98d27, 0x8ba98d29, 0x3400010},
8384{0x3400000, 0x80800002, 0x8ba98d7a, 0x8ba98d7c, 0x3400010},
8385{0x3400000, 0x80800002, 0xf51f853a, 0xf51f853a, 0x3400010},
8386{0x3400000, 0x80800002, 0xff7ffff0, 0xff7ffff0, 0x3400010},
8387{0x3400000, 0x80800002, 0xff7fffff, 0xff7fffff, 0x3400010},
8388{0x3400000, 0x80800002, 0xff800000, 0xff800000, 0x3400000},
8389{0x3400000, 0x80800002, 0xff800001, 0x7fc00000, 0x3400001},
8390{0x3400000, 0x80800002, 0xff984a37, 0x7fc00000, 0x3400001},
8391{0x3400000, 0x80800002, 0xffbfffff, 0x7fc00000, 0x3400001},
8392{0x3400000, 0x80800002, 0xffc00000, 0x7fc00000, 0x3400000},
8393{0x3400000, 0x80800002, 0xffd9ba98, 0x7fc00000, 0x3400000},
8394{0x3400000, 0x80800002, 0xffffffff, 0x7fc00000, 0x3400000},
8395{0x3400000, 0x80800002, 0x4f3495cb, 0x4f3495cb, 0x3400010},
8396{0x3400000, 0x80800002, 0xe73a5134, 0xe73a5134, 0x3400010},
8397{0x3400000, 0x80800002, 0x7c994e9e, 0x7c994e9e, 0x3400010},
8398{0x3400000, 0x80800002, 0x6164bd6c, 0x6164bd6c, 0x3400010},
8399{0x3400000, 0x80800002, 0x9503366, 0x9503326, 0x3400010},
8400{0x3400000, 0x80800002, 0xbf5a97c9, 0xbf5a97c9, 0x3400010},
8401{0x3400000, 0x80800002, 0xe6ff1a14, 0xe6ff1a14, 0x3400010},
8402{0x3400000, 0x80800002, 0x77f31e2f, 0x77f31e2f, 0x3400010},
8403{0x3400000, 0x80800002, 0xaab4d7d8, 0xaab4d7d8, 0x3400010},
8404{0x3400000, 0x80800002, 0x966320b, 0x96631cb, 0x3400010},
8405{0x3400000, 0x80800002, 0xb26bddee, 0xb26bddee, 0x3400010},
8406{0x3400000, 0x80800002, 0xb5c8e5d3, 0xb5c8e5d3, 0x3400010},
8407{0x3400000, 0x80800002, 0x317285d3, 0x317285d3, 0x3400010},
8408{0x3400000, 0x80800002, 0x3c9623b1, 0x3c9623b1, 0x3400010},
8409{0x3400000, 0x80800002, 0x51fd2c7c, 0x51fd2c7c, 0x3400010},
8410{0x3400000, 0x80800002, 0x7b906a6c, 0x7b906a6c, 0x3400010},
8411{0x3400000, 0x81398437, 0x0, 0x81398437, 0x3400000},
8412{0x3400000, 0x81398437, 0x1, 0x81398437, 0x3400080},
8413{0x3400000, 0x81398437, 0x76, 0x81398437, 0x3400080},
8414{0x3400000, 0x81398437, 0x2b94, 0x81398437, 0x3400080},
8415{0x3400000, 0x81398437, 0x636d24, 0x81398437, 0x3400080},
8416{0x3400000, 0x81398437, 0x7fffff, 0x81398437, 0x3400080},
8417{0x3400000, 0x81398437, 0x800000, 0x80f3086e, 0x3400000},
8418{0x3400000, 0x81398437, 0x800002, 0x80f3086c, 0x3400000},
8419{0x3400000, 0x81398437, 0x1398437, 0x0, 0x3400000},
8420{0x3400000, 0x81398437, 0xba98d27, 0xba98d22, 0x3400010},
8421{0x3400000, 0x81398437, 0xba98d7a, 0xba98d75, 0x3400010},
8422{0x3400000, 0x81398437, 0x751f853a, 0x751f853a, 0x3400010},
8423{0x3400000, 0x81398437, 0x7f7ffff0, 0x7f7ffff0, 0x3400010},
8424{0x3400000, 0x81398437, 0x7f7fffff, 0x7f7fffff, 0x3400010},
8425{0x3400000, 0x81398437, 0x7f800000, 0x7f800000, 0x3400000},
8426{0x3400000, 0x81398437, 0x7f800001, 0x7fc00000, 0x3400001},
8427{0x3400000, 0x81398437, 0x7f984a37, 0x7fc00000, 0x3400001},
8428{0x3400000, 0x81398437, 0x7fbfffff, 0x7fc00000, 0x3400001},
8429{0x3400000, 0x81398437, 0x7fc00000, 0x7fc00000, 0x3400000},
8430{0x3400000, 0x81398437, 0x7fd9ba98, 0x7fc00000, 0x3400000},
8431{0x3400000, 0x81398437, 0x7fffffff, 0x7fc00000, 0x3400000},
8432{0x3400000, 0x81398437, 0x80000000, 0x81398437, 0x3400000},
8433{0x3400000, 0x81398437, 0x80000001, 0x81398437, 0x3400080},
8434{0x3400000, 0x81398437, 0x80000076, 0x81398437, 0x3400080},
8435{0x3400000, 0x81398437, 0x80002b94, 0x81398437, 0x3400080},
8436{0x3400000, 0x81398437, 0x80636d24, 0x81398437, 0x3400080},
8437{0x3400000, 0x81398437, 0x807fffff, 0x81398437, 0x3400080},
8438{0x3400000, 0x81398437, 0x80800000, 0x81798437, 0x3400000},
8439{0x3400000, 0x81398437, 0x80800002, 0x81798438, 0x3400000},
8440{0x3400000, 0x81398437, 0x81398437, 0x81b98437, 0x3400000},
8441{0x3400000, 0x81398437, 0x8ba98d27, 0x8ba98d2c, 0x3400010},
8442{0x3400000, 0x81398437, 0x8ba98d7a, 0x8ba98d7f, 0x3400010},
8443{0x3400000, 0x81398437, 0xf51f853a, 0xf51f853a, 0x3400010},
8444{0x3400000, 0x81398437, 0xff7ffff0, 0xff7ffff0, 0x3400010},
8445{0x3400000, 0x81398437, 0xff7fffff, 0xff7fffff, 0x3400010},
8446{0x3400000, 0x81398437, 0xff800000, 0xff800000, 0x3400000},
8447{0x3400000, 0x81398437, 0xff800001, 0x7fc00000, 0x3400001},
8448{0x3400000, 0x81398437, 0xff984a37, 0x7fc00000, 0x3400001},
8449{0x3400000, 0x81398437, 0xffbfffff, 0x7fc00000, 0x3400001},
8450{0x3400000, 0x81398437, 0xffc00000, 0x7fc00000, 0x3400000},
8451{0x3400000, 0x81398437, 0xffd9ba98, 0x7fc00000, 0x3400000},
8452{0x3400000, 0x81398437, 0xffffffff, 0x7fc00000, 0x3400000},
8453{0x3400000, 0x81398437, 0x4f3495cb, 0x4f3495cb, 0x3400010},
8454{0x3400000, 0x81398437, 0xe73a5134, 0xe73a5134, 0x3400010},
8455{0x3400000, 0x81398437, 0x7c994e9e, 0x7c994e9e, 0x3400010},
8456{0x3400000, 0x81398437, 0x6164bd6c, 0x6164bd6c, 0x3400010},
8457{0x3400000, 0x81398437, 0x9503366, 0x95032ad, 0x3400010},
8458{0x3400000, 0x81398437, 0xbf5a97c9, 0xbf5a97c9, 0x3400010},
8459{0x3400000, 0x81398437, 0xe6ff1a14, 0xe6ff1a14, 0x3400010},
8460{0x3400000, 0x81398437, 0x77f31e2f, 0x77f31e2f, 0x3400010},
8461{0x3400000, 0x81398437, 0xaab4d7d8, 0xaab4d7d8, 0x3400010},
8462{0x3400000, 0x81398437, 0x966320b, 0x9663152, 0x3400010},
8463{0x3400000, 0x81398437, 0xb26bddee, 0xb26bddee, 0x3400010},
8464{0x3400000, 0x81398437, 0xb5c8e5d3, 0xb5c8e5d3, 0x3400010},
8465{0x3400000, 0x81398437, 0x317285d3, 0x317285d3, 0x3400010},
8466{0x3400000, 0x81398437, 0x3c9623b1, 0x3c9623b1, 0x3400010},
8467{0x3400000, 0x81398437, 0x51fd2c7c, 0x51fd2c7c, 0x3400010},
8468{0x3400000, 0x81398437, 0x7b906a6c, 0x7b906a6c, 0x3400010},
8469{0x3400000, 0x8ba98d27, 0x0, 0x8ba98d27, 0x3400000},
8470{0x3400000, 0x8ba98d27, 0x1, 0x8ba98d27, 0x3400080},
8471{0x3400000, 0x8ba98d27, 0x76, 0x8ba98d27, 0x3400080},
8472{0x3400000, 0x8ba98d27, 0x2b94, 0x8ba98d27, 0x3400080},
8473{0x3400000, 0x8ba98d27, 0x636d24, 0x8ba98d27, 0x3400080},
8474{0x3400000, 0x8ba98d27, 0x7fffff, 0x8ba98d27, 0x3400080},
8475{0x3400000, 0x8ba98d27, 0x800000, 0x8ba98d25, 0x3400000},
8476{0x3400000, 0x8ba98d27, 0x800002, 0x8ba98d24, 0x3400010},
8477{0x3400000, 0x8ba98d27, 0x1398437, 0x8ba98d21, 0x3400010},
8478{0x3400000, 0x8ba98d27, 0xba98d27, 0x0, 0x3400000},
8479{0x3400000, 0x8ba98d27, 0xba98d7a, 0x3260000, 0x3400000},
8480{0x3400000, 0x8ba98d27, 0x751f853a, 0x751f853a, 0x3400010},
8481{0x3400000, 0x8ba98d27, 0x7f7ffff0, 0x7f7ffff0, 0x3400010},
8482{0x3400000, 0x8ba98d27, 0x7f7fffff, 0x7f7fffff, 0x3400010},
8483{0x3400000, 0x8ba98d27, 0x7f800000, 0x7f800000, 0x3400000},
8484{0x3400000, 0x8ba98d27, 0x7f800001, 0x7fc00000, 0x3400001},
8485{0x3400000, 0x8ba98d27, 0x7f984a37, 0x7fc00000, 0x3400001},
8486{0x3400000, 0x8ba98d27, 0x7fbfffff, 0x7fc00000, 0x3400001},
8487{0x3400000, 0x8ba98d27, 0x7fc00000, 0x7fc00000, 0x3400000},
8488{0x3400000, 0x8ba98d27, 0x7fd9ba98, 0x7fc00000, 0x3400000},
8489{0x3400000, 0x8ba98d27, 0x7fffffff, 0x7fc00000, 0x3400000},
8490{0x3400000, 0x8ba98d27, 0x80000000, 0x8ba98d27, 0x3400000},
8491{0x3400000, 0x8ba98d27, 0x80000001, 0x8ba98d27, 0x3400080},
8492{0x3400000, 0x8ba98d27, 0x80000076, 0x8ba98d27, 0x3400080},
8493{0x3400000, 0x8ba98d27, 0x80002b94, 0x8ba98d27, 0x3400080},
8494{0x3400000, 0x8ba98d27, 0x80636d24, 0x8ba98d27, 0x3400080},
8495{0x3400000, 0x8ba98d27, 0x807fffff, 0x8ba98d27, 0x3400080},
8496{0x3400000, 0x8ba98d27, 0x80800000, 0x8ba98d29, 0x3400000},
8497{0x3400000, 0x8ba98d27, 0x80800002, 0x8ba98d29, 0x3400010},
8498{0x3400000, 0x8ba98d27, 0x81398437, 0x8ba98d2c, 0x3400010},
8499{0x3400000, 0x8ba98d27, 0x8ba98d27, 0x8c298d27, 0x3400000},
8500{0x3400000, 0x8ba98d27, 0x8ba98d7a, 0x8c298d50, 0x3400010},
8501{0x3400000, 0x8ba98d27, 0xf51f853a, 0xf51f853a, 0x3400010},
8502{0x3400000, 0x8ba98d27, 0xff7ffff0, 0xff7ffff0, 0x3400010},
8503{0x3400000, 0x8ba98d27, 0xff7fffff, 0xff7fffff, 0x3400010},
8504{0x3400000, 0x8ba98d27, 0xff800000, 0xff800000, 0x3400000},
8505{0x3400000, 0x8ba98d27, 0xff800001, 0x7fc00000, 0x3400001},
8506{0x3400000, 0x8ba98d27, 0xff984a37, 0x7fc00000, 0x3400001},
8507{0x3400000, 0x8ba98d27, 0xffbfffff, 0x7fc00000, 0x3400001},
8508{0x3400000, 0x8ba98d27, 0xffc00000, 0x7fc00000, 0x3400000},
8509{0x3400000, 0x8ba98d27, 0xffd9ba98, 0x7fc00000, 0x3400000},
8510{0x3400000, 0x8ba98d27, 0xffffffff, 0x7fc00000, 0x3400000},
8511{0x3400000, 0x8ba98d27, 0x4f3495cb, 0x4f3495cb, 0x3400010},
8512{0x3400000, 0x8ba98d27, 0xe73a5134, 0xe73a5134, 0x3400010},
8513{0x3400000, 0x8ba98d27, 0x7c994e9e, 0x7c994e9e, 0x3400010},
8514{0x3400000, 0x8ba98d27, 0x6164bd6c, 0x6164bd6c, 0x3400010},
8515{0x3400000, 0x8ba98d27, 0x9503366, 0x8ba30b8b, 0x3400010},
8516{0x3400000, 0x8ba98d27, 0xbf5a97c9, 0xbf5a97c9, 0x3400010},
8517{0x3400000, 0x8ba98d27, 0xe6ff1a14, 0xe6ff1a14, 0x3400010},
8518{0x3400000, 0x8ba98d27, 0x77f31e2f, 0x77f31e2f, 0x3400010},
8519{0x3400000, 0x8ba98d27, 0xaab4d7d8, 0xaab4d7d8, 0x3400010},
8520{0x3400000, 0x8ba98d27, 0x966320b, 0x8ba25b96, 0x3400010},
8521{0x3400000, 0x8ba98d27, 0xb26bddee, 0xb26bddee, 0x3400010},
8522{0x3400000, 0x8ba98d27, 0xb5c8e5d3, 0xb5c8e5d3, 0x3400010},
8523{0x3400000, 0x8ba98d27, 0x317285d3, 0x317285d3, 0x3400010},
8524{0x3400000, 0x8ba98d27, 0x3c9623b1, 0x3c9623b1, 0x3400010},
8525{0x3400000, 0x8ba98d27, 0x51fd2c7c, 0x51fd2c7c, 0x3400010},
8526{0x3400000, 0x8ba98d27, 0x7b906a6c, 0x7b906a6c, 0x3400010},
8527{0x3400000, 0x8ba98d7a, 0x0, 0x8ba98d7a, 0x3400000},
8528{0x3400000, 0x8ba98d7a, 0x1, 0x8ba98d7a, 0x3400080},
8529{0x3400000, 0x8ba98d7a, 0x76, 0x8ba98d7a, 0x3400080},
8530{0x3400000, 0x8ba98d7a, 0x2b94, 0x8ba98d7a, 0x3400080},
8531{0x3400000, 0x8ba98d7a, 0x636d24, 0x8ba98d7a, 0x3400080},
8532{0x3400000, 0x8ba98d7a, 0x7fffff, 0x8ba98d7a, 0x3400080},
8533{0x3400000, 0x8ba98d7a, 0x800000, 0x8ba98d78, 0x3400000},
8534{0x3400000, 0x8ba98d7a, 0x800002, 0x8ba98d77, 0x3400010},
8535{0x3400000, 0x8ba98d7a, 0x1398437, 0x8ba98d74, 0x3400010},
8536{0x3400000, 0x8ba98d7a, 0xba98d27, 0x83260000, 0x3400000},
8537{0x3400000, 0x8ba98d7a, 0xba98d7a, 0x0, 0x3400000},
8538{0x3400000, 0x8ba98d7a, 0x751f853a, 0x751f853a, 0x3400010},
8539{0x3400000, 0x8ba98d7a, 0x7f7ffff0, 0x7f7ffff0, 0x3400010},
8540{0x3400000, 0x8ba98d7a, 0x7f7fffff, 0x7f7fffff, 0x3400010},
8541{0x3400000, 0x8ba98d7a, 0x7f800000, 0x7f800000, 0x3400000},
8542{0x3400000, 0x8ba98d7a, 0x7f800001, 0x7fc00000, 0x3400001},
8543{0x3400000, 0x8ba98d7a, 0x7f984a37, 0x7fc00000, 0x3400001},
8544{0x3400000, 0x8ba98d7a, 0x7fbfffff, 0x7fc00000, 0x3400001},
8545{0x3400000, 0x8ba98d7a, 0x7fc00000, 0x7fc00000, 0x3400000},
8546{0x3400000, 0x8ba98d7a, 0x7fd9ba98, 0x7fc00000, 0x3400000},
8547{0x3400000, 0x8ba98d7a, 0x7fffffff, 0x7fc00000, 0x3400000},
8548{0x3400000, 0x8ba98d7a, 0x80000000, 0x8ba98d7a, 0x3400000},
8549{0x3400000, 0x8ba98d7a, 0x80000001, 0x8ba98d7a, 0x3400080},
8550{0x3400000, 0x8ba98d7a, 0x80000076, 0x8ba98d7a, 0x3400080},
8551{0x3400000, 0x8ba98d7a, 0x80002b94, 0x8ba98d7a, 0x3400080},
8552{0x3400000, 0x8ba98d7a, 0x80636d24, 0x8ba98d7a, 0x3400080},
8553{0x3400000, 0x8ba98d7a, 0x807fffff, 0x8ba98d7a, 0x3400080},
8554{0x3400000, 0x8ba98d7a, 0x80800000, 0x8ba98d7c, 0x3400000},
8555{0x3400000, 0x8ba98d7a, 0x80800002, 0x8ba98d7c, 0x3400010},
8556{0x3400000, 0x8ba98d7a, 0x81398437, 0x8ba98d7f, 0x3400010},
8557{0x3400000, 0x8ba98d7a, 0x8ba98d27, 0x8c298d50, 0x3400010},
8558{0x3400000, 0x8ba98d7a, 0x8ba98d7a, 0x8c298d7a, 0x3400000},
8559{0x3400000, 0x8ba98d7a, 0xf51f853a, 0xf51f853a, 0x3400010},
8560{0x3400000, 0x8ba98d7a, 0xff7ffff0, 0xff7ffff0, 0x3400010},
8561{0x3400000, 0x8ba98d7a, 0xff7fffff, 0xff7fffff, 0x3400010},
8562{0x3400000, 0x8ba98d7a, 0xff800000, 0xff800000, 0x3400000},
8563{0x3400000, 0x8ba98d7a, 0xff800001, 0x7fc00000, 0x3400001},
8564{0x3400000, 0x8ba98d7a, 0xff984a37, 0x7fc00000, 0x3400001},
8565{0x3400000, 0x8ba98d7a, 0xffbfffff, 0x7fc00000, 0x3400001},
8566{0x3400000, 0x8ba98d7a, 0xffc00000, 0x7fc00000, 0x3400000},
8567{0x3400000, 0x8ba98d7a, 0xffd9ba98, 0x7fc00000, 0x3400000},
8568{0x3400000, 0x8ba98d7a, 0xffffffff, 0x7fc00000, 0x3400000},
8569{0x3400000, 0x8ba98d7a, 0x4f3495cb, 0x4f3495cb, 0x3400010},
8570{0x3400000, 0x8ba98d7a, 0xe73a5134, 0xe73a5134, 0x3400010},
8571{0x3400000, 0x8ba98d7a, 0x7c994e9e, 0x7c994e9e, 0x3400010},
8572{0x3400000, 0x8ba98d7a, 0x6164bd6c, 0x6164bd6c, 0x3400010},
8573{0x3400000, 0x8ba98d7a, 0x9503366, 0x8ba30bde, 0x3400010},
8574{0x3400000, 0x8ba98d7a, 0xbf5a97c9, 0xbf5a97c9, 0x3400010},
8575{0x3400000, 0x8ba98d7a, 0xe6ff1a14, 0xe6ff1a14, 0x3400010},
8576{0x3400000, 0x8ba98d7a, 0x77f31e2f, 0x77f31e2f, 0x3400010},
8577{0x3400000, 0x8ba98d7a, 0xaab4d7d8, 0xaab4d7d8, 0x3400010},
8578{0x3400000, 0x8ba98d7a, 0x966320b, 0x8ba25be9, 0x3400010},
8579{0x3400000, 0x8ba98d7a, 0xb26bddee, 0xb26bddee, 0x3400010},
8580{0x3400000, 0x8ba98d7a, 0xb5c8e5d3, 0xb5c8e5d3, 0x3400010},
8581{0x3400000, 0x8ba98d7a, 0x317285d3, 0x317285d3, 0x3400010},
8582{0x3400000, 0x8ba98d7a, 0x3c9623b1, 0x3c9623b1, 0x3400010},
8583{0x3400000, 0x8ba98d7a, 0x51fd2c7c, 0x51fd2c7c, 0x3400010},
8584{0x3400000, 0x8ba98d7a, 0x7b906a6c, 0x7b906a6c, 0x3400010},
8585{0x3400000, 0xf51f853a, 0x0, 0xf51f853a, 0x3400000},
8586{0x3400000, 0xf51f853a, 0x1, 0xf51f853a, 0x3400080},
8587{0x3400000, 0xf51f853a, 0x76, 0xf51f853a, 0x3400080},
8588{0x3400000, 0xf51f853a, 0x2b94, 0xf51f853a, 0x3400080},
8589{0x3400000, 0xf51f853a, 0x636d24, 0xf51f853a, 0x3400080},
8590{0x3400000, 0xf51f853a, 0x7fffff, 0xf51f853a, 0x3400080},
8591{0x3400000, 0xf51f853a, 0x800000, 0xf51f8539, 0x3400010},
8592{0x3400000, 0xf51f853a, 0x800002, 0xf51f8539, 0x3400010},
8593{0x3400000, 0xf51f853a, 0x1398437, 0xf51f8539, 0x3400010},
8594{0x3400000, 0xf51f853a, 0xba98d27, 0xf51f8539, 0x3400010},
8595{0x3400000, 0xf51f853a, 0xba98d7a, 0xf51f8539, 0x3400010},
8596{0x3400000, 0xf51f853a, 0x751f853a, 0x0, 0x3400000},
8597{0x3400000, 0xf51f853a, 0x7f7ffff0, 0x7f7fffe7, 0x3400010},
8598{0x3400000, 0xf51f853a, 0x7f7fffff, 0x7f7ffff6, 0x3400010},
8599{0x3400000, 0xf51f853a, 0x7f800000, 0x7f800000, 0x3400000},
8600{0x3400000, 0xf51f853a, 0x7f800001, 0x7fc00000, 0x3400001},
8601{0x3400000, 0xf51f853a, 0x7f984a37, 0x7fc00000, 0x3400001},
8602{0x3400000, 0xf51f853a, 0x7fbfffff, 0x7fc00000, 0x3400001},
8603{0x3400000, 0xf51f853a, 0x7fc00000, 0x7fc00000, 0x3400000},
8604{0x3400000, 0xf51f853a, 0x7fd9ba98, 0x7fc00000, 0x3400000},
8605{0x3400000, 0xf51f853a, 0x7fffffff, 0x7fc00000, 0x3400000},
8606{0x3400000, 0xf51f853a, 0x80000000, 0xf51f853a, 0x3400000},
8607{0x3400000, 0xf51f853a, 0x80000001, 0xf51f853a, 0x3400080},
8608{0x3400000, 0xf51f853a, 0x80000076, 0xf51f853a, 0x3400080},
8609{0x3400000, 0xf51f853a, 0x80002b94, 0xf51f853a, 0x3400080},
8610{0x3400000, 0xf51f853a, 0x80636d24, 0xf51f853a, 0x3400080},
8611{0x3400000, 0xf51f853a, 0x807fffff, 0xf51f853a, 0x3400080},
8612{0x3400000, 0xf51f853a, 0x80800000, 0xf51f853a, 0x3400010},
8613{0x3400000, 0xf51f853a, 0x80800002, 0xf51f853a, 0x3400010},
8614{0x3400000, 0xf51f853a, 0x81398437, 0xf51f853a, 0x3400010},
8615{0x3400000, 0xf51f853a, 0x8ba98d27, 0xf51f853a, 0x3400010},
8616{0x3400000, 0xf51f853a, 0x8ba98d7a, 0xf51f853a, 0x3400010},
8617{0x3400000, 0xf51f853a, 0xf51f853a, 0xf59f853a, 0x3400000},
8618{0x3400000, 0xf51f853a, 0xff7ffff0, 0xff7ffff9, 0x3400010},
8619{0x3400000, 0xf51f853a, 0xff7fffff, 0xff7fffff, 0x3400014},
8620{0x3400000, 0xf51f853a, 0xff800000, 0xff800000, 0x3400000},
8621{0x3400000, 0xf51f853a, 0xff800001, 0x7fc00000, 0x3400001},
8622{0x3400000, 0xf51f853a, 0xff984a37, 0x7fc00000, 0x3400001},
8623{0x3400000, 0xf51f853a, 0xffbfffff, 0x7fc00000, 0x3400001},
8624{0x3400000, 0xf51f853a, 0xffc00000, 0x7fc00000, 0x3400000},
8625{0x3400000, 0xf51f853a, 0xffd9ba98, 0x7fc00000, 0x3400000},
8626{0x3400000, 0xf51f853a, 0xffffffff, 0x7fc00000, 0x3400000},
8627{0x3400000, 0xf51f853a, 0x4f3495cb, 0xf51f8539, 0x3400010},
8628{0x3400000, 0xf51f853a, 0xe73a5134, 0xf51f853a, 0x3400010},
8629{0x3400000, 0xf51f853a, 0x7c994e9e, 0x7c994d5f, 0x3400010},
8630{0x3400000, 0xf51f853a, 0x6164bd6c, 0xf51f8539, 0x3400010},
8631{0x3400000, 0xf51f853a, 0x9503366, 0xf51f8539, 0x3400010},
8632{0x3400000, 0xf51f853a, 0xbf5a97c9, 0xf51f853a, 0x3400010},
8633{0x3400000, 0xf51f853a, 0xe6ff1a14, 0xf51f853a, 0x3400010},
8634{0x3400000, 0xf51f853a, 0x77f31e2f, 0x77ee2206, 0x3400010},
8635{0x3400000, 0xf51f853a, 0xaab4d7d8, 0xf51f853a, 0x3400010},
8636{0x3400000, 0xf51f853a, 0x966320b, 0xf51f8539, 0x3400010},
8637{0x3400000, 0xf51f853a, 0xb26bddee, 0xf51f853a, 0x3400010},
8638{0x3400000, 0xf51f853a, 0xb5c8e5d3, 0xf51f853a, 0x3400010},
8639{0x3400000, 0xf51f853a, 0x317285d3, 0xf51f8539, 0x3400010},
8640{0x3400000, 0xf51f853a, 0x3c9623b1, 0xf51f8539, 0x3400010},
8641{0x3400000, 0xf51f853a, 0x51fd2c7c, 0xf51f8539, 0x3400010},
8642{0x3400000, 0xf51f853a, 0x7b906a6c, 0x7b906570, 0x3400010},
8643{0x3400000, 0xff7ffff0, 0x0, 0xff7ffff0, 0x3400000},
8644{0x3400000, 0xff7ffff0, 0x1, 0xff7ffff0, 0x3400080},
8645{0x3400000, 0xff7ffff0, 0x76, 0xff7ffff0, 0x3400080},
8646{0x3400000, 0xff7ffff0, 0x2b94, 0xff7ffff0, 0x3400080},
8647{0x3400000, 0xff7ffff0, 0x636d24, 0xff7ffff0, 0x3400080},
8648{0x3400000, 0xff7ffff0, 0x7fffff, 0xff7ffff0, 0x3400080},
8649{0x3400000, 0xff7ffff0, 0x800000, 0xff7fffef, 0x3400010},
8650{0x3400000, 0xff7ffff0, 0x800002, 0xff7fffef, 0x3400010},
8651{0x3400000, 0xff7ffff0, 0x1398437, 0xff7fffef, 0x3400010},
8652{0x3400000, 0xff7ffff0, 0xba98d27, 0xff7fffef, 0x3400010},
8653{0x3400000, 0xff7ffff0, 0xba98d7a, 0xff7fffef, 0x3400010},
8654{0x3400000, 0xff7ffff0, 0x751f853a, 0xff7fffe6, 0x3400010},
8655{0x3400000, 0xff7ffff0, 0x7f7ffff0, 0x0, 0x3400000},
8656{0x3400000, 0xff7ffff0, 0x7f7fffff, 0x75700000, 0x3400000},
8657{0x3400000, 0xff7ffff0, 0x7f800000, 0x7f800000, 0x3400000},
8658{0x3400000, 0xff7ffff0, 0x7f800001, 0x7fc00000, 0x3400001},
8659{0x3400000, 0xff7ffff0, 0x7f984a37, 0x7fc00000, 0x3400001},
8660{0x3400000, 0xff7ffff0, 0x7fbfffff, 0x7fc00000, 0x3400001},
8661{0x3400000, 0xff7ffff0, 0x7fc00000, 0x7fc00000, 0x3400000},
8662{0x3400000, 0xff7ffff0, 0x7fd9ba98, 0x7fc00000, 0x3400000},
8663{0x3400000, 0xff7ffff0, 0x7fffffff, 0x7fc00000, 0x3400000},
8664{0x3400000, 0xff7ffff0, 0x80000000, 0xff7ffff0, 0x3400000},
8665{0x3400000, 0xff7ffff0, 0x80000001, 0xff7ffff0, 0x3400080},
8666{0x3400000, 0xff7ffff0, 0x80000076, 0xff7ffff0, 0x3400080},
8667{0x3400000, 0xff7ffff0, 0x80002b94, 0xff7ffff0, 0x3400080},
8668{0x3400000, 0xff7ffff0, 0x80636d24, 0xff7ffff0, 0x3400080},
8669{0x3400000, 0xff7ffff0, 0x807fffff, 0xff7ffff0, 0x3400080},
8670{0x3400000, 0xff7ffff0, 0x80800000, 0xff7ffff0, 0x3400010},
8671{0x3400000, 0xff7ffff0, 0x80800002, 0xff7ffff0, 0x3400010},
8672{0x3400000, 0xff7ffff0, 0x81398437, 0xff7ffff0, 0x3400010},
8673{0x3400000, 0xff7ffff0, 0x8ba98d27, 0xff7ffff0, 0x3400010},
8674{0x3400000, 0xff7ffff0, 0x8ba98d7a, 0xff7ffff0, 0x3400010},
8675{0x3400000, 0xff7ffff0, 0xf51f853a, 0xff7ffff9, 0x3400010},
8676{0x3400000, 0xff7ffff0, 0xff7ffff0, 0xff7fffff, 0x3400014},
8677{0x3400000, 0xff7ffff0, 0xff7fffff, 0xff7fffff, 0x3400014},
8678{0x3400000, 0xff7ffff0, 0xff800000, 0xff800000, 0x3400000},
8679{0x3400000, 0xff7ffff0, 0xff800001, 0x7fc00000, 0x3400001},
8680{0x3400000, 0xff7ffff0, 0xff984a37, 0x7fc00000, 0x3400001},
8681{0x3400000, 0xff7ffff0, 0xffbfffff, 0x7fc00000, 0x3400001},
8682{0x3400000, 0xff7ffff0, 0xffc00000, 0x7fc00000, 0x3400000},
8683{0x3400000, 0xff7ffff0, 0xffd9ba98, 0x7fc00000, 0x3400000},
8684{0x3400000, 0xff7ffff0, 0xffffffff, 0x7fc00000, 0x3400000},
8685{0x3400000, 0xff7ffff0, 0x4f3495cb, 0xff7fffef, 0x3400010},
8686{0x3400000, 0xff7ffff0, 0xe73a5134, 0xff7ffff0, 0x3400010},
8687{0x3400000, 0xff7ffff0, 0x7c994e9e, 0xff7b357b, 0x3400010},
8688{0x3400000, 0xff7ffff0, 0x6164bd6c, 0xff7fffef, 0x3400010},
8689{0x3400000, 0xff7ffff0, 0x9503366, 0xff7fffef, 0x3400010},
8690{0x3400000, 0xff7ffff0, 0xbf5a97c9, 0xff7ffff0, 0x3400010},
8691{0x3400000, 0xff7ffff0, 0xe6ff1a14, 0xff7ffff0, 0x3400010},
8692{0x3400000, 0xff7ffff0, 0x77f31e2f, 0xff7ffe09, 0x3400010},
8693{0x3400000, 0xff7ffff0, 0xaab4d7d8, 0xff7ffff0, 0x3400010},
8694{0x3400000, 0xff7ffff0, 0x966320b, 0xff7fffef, 0x3400010},
8695{0x3400000, 0xff7ffff0, 0xb26bddee, 0xff7ffff0, 0x3400010},
8696{0x3400000, 0xff7ffff0, 0xb5c8e5d3, 0xff7ffff0, 0x3400010},
8697{0x3400000, 0xff7ffff0, 0x317285d3, 0xff7fffef, 0x3400010},
8698{0x3400000, 0xff7ffff0, 0x3c9623b1, 0xff7fffef, 0x3400010},
8699{0x3400000, 0xff7ffff0, 0x51fd2c7c, 0xff7fffef, 0x3400010},
8700{0x3400000, 0xff7ffff0, 0x7b906a6c, 0xff7edf1b, 0x3400010},
8701{0x3400000, 0xff7fffff, 0x0, 0xff7fffff, 0x3400000},
8702{0x3400000, 0xff7fffff, 0x1, 0xff7fffff, 0x3400080},
8703{0x3400000, 0xff7fffff, 0x76, 0xff7fffff, 0x3400080},
8704{0x3400000, 0xff7fffff, 0x2b94, 0xff7fffff, 0x3400080},
8705{0x3400000, 0xff7fffff, 0x636d24, 0xff7fffff, 0x3400080},
8706{0x3400000, 0xff7fffff, 0x7fffff, 0xff7fffff, 0x3400080},
8707{0x3400000, 0xff7fffff, 0x800000, 0xff7ffffe, 0x3400010},
8708{0x3400000, 0xff7fffff, 0x800002, 0xff7ffffe, 0x3400010},
8709{0x3400000, 0xff7fffff, 0x1398437, 0xff7ffffe, 0x3400010},
8710{0x3400000, 0xff7fffff, 0xba98d27, 0xff7ffffe, 0x3400010},
8711{0x3400000, 0xff7fffff, 0xba98d7a, 0xff7ffffe, 0x3400010},
8712{0x3400000, 0xff7fffff, 0x751f853a, 0xff7ffff5, 0x3400010},
8713{0x3400000, 0xff7fffff, 0x7f7ffff0, 0xf5700000, 0x3400000},
8714{0x3400000, 0xff7fffff, 0x7f7fffff, 0x0, 0x3400000},
8715{0x3400000, 0xff7fffff, 0x7f800000, 0x7f800000, 0x3400000},
8716{0x3400000, 0xff7fffff, 0x7f800001, 0x7fc00000, 0x3400001},
8717{0x3400000, 0xff7fffff, 0x7f984a37, 0x7fc00000, 0x3400001},
8718{0x3400000, 0xff7fffff, 0x7fbfffff, 0x7fc00000, 0x3400001},
8719{0x3400000, 0xff7fffff, 0x7fc00000, 0x7fc00000, 0x3400000},
8720{0x3400000, 0xff7fffff, 0x7fd9ba98, 0x7fc00000, 0x3400000},
8721{0x3400000, 0xff7fffff, 0x7fffffff, 0x7fc00000, 0x3400000},
8722{0x3400000, 0xff7fffff, 0x80000000, 0xff7fffff, 0x3400000},
8723{0x3400000, 0xff7fffff, 0x80000001, 0xff7fffff, 0x3400080},
8724{0x3400000, 0xff7fffff, 0x80000076, 0xff7fffff, 0x3400080},
8725{0x3400000, 0xff7fffff, 0x80002b94, 0xff7fffff, 0x3400080},
8726{0x3400000, 0xff7fffff, 0x80636d24, 0xff7fffff, 0x3400080},
8727{0x3400000, 0xff7fffff, 0x807fffff, 0xff7fffff, 0x3400080},
8728{0x3400000, 0xff7fffff, 0x80800000, 0xff7fffff, 0x3400010},
8729{0x3400000, 0xff7fffff, 0x80800002, 0xff7fffff, 0x3400010},
8730{0x3400000, 0xff7fffff, 0x81398437, 0xff7fffff, 0x3400010},
8731{0x3400000, 0xff7fffff, 0x8ba98d27, 0xff7fffff, 0x3400010},
8732{0x3400000, 0xff7fffff, 0x8ba98d7a, 0xff7fffff, 0x3400010},
8733{0x3400000, 0xff7fffff, 0xf51f853a, 0xff7fffff, 0x3400014},
8734{0x3400000, 0xff7fffff, 0xff7ffff0, 0xff7fffff, 0x3400014},
8735{0x3400000, 0xff7fffff, 0xff7fffff, 0xff7fffff, 0x3400014},
8736{0x3400000, 0xff7fffff, 0xff800000, 0xff800000, 0x3400000},
8737{0x3400000, 0xff7fffff, 0xff800001, 0x7fc00000, 0x3400001},
8738{0x3400000, 0xff7fffff, 0xff984a37, 0x7fc00000, 0x3400001},
8739{0x3400000, 0xff7fffff, 0xffbfffff, 0x7fc00000, 0x3400001},
8740{0x3400000, 0xff7fffff, 0xffc00000, 0x7fc00000, 0x3400000},
8741{0x3400000, 0xff7fffff, 0xffd9ba98, 0x7fc00000, 0x3400000},
8742{0x3400000, 0xff7fffff, 0xffffffff, 0x7fc00000, 0x3400000},
8743{0x3400000, 0xff7fffff, 0x4f3495cb, 0xff7ffffe, 0x3400010},
8744{0x3400000, 0xff7fffff, 0xe73a5134, 0xff7fffff, 0x3400010},
8745{0x3400000, 0xff7fffff, 0x7c994e9e, 0xff7b358a, 0x3400010},
8746{0x3400000, 0xff7fffff, 0x6164bd6c, 0xff7ffffe, 0x3400010},
8747{0x3400000, 0xff7fffff, 0x9503366, 0xff7ffffe, 0x3400010},
8748{0x3400000, 0xff7fffff, 0xbf5a97c9, 0xff7fffff, 0x3400010},
8749{0x3400000, 0xff7fffff, 0xe6ff1a14, 0xff7fffff, 0x3400010},
8750{0x3400000, 0xff7fffff, 0x77f31e2f, 0xff7ffe18, 0x3400010},
8751{0x3400000, 0xff7fffff, 0xaab4d7d8, 0xff7fffff, 0x3400010},
8752{0x3400000, 0xff7fffff, 0x966320b, 0xff7ffffe, 0x3400010},
8753{0x3400000, 0xff7fffff, 0xb26bddee, 0xff7fffff, 0x3400010},
8754{0x3400000, 0xff7fffff, 0xb5c8e5d3, 0xff7fffff, 0x3400010},
8755{0x3400000, 0xff7fffff, 0x317285d3, 0xff7ffffe, 0x3400010},
8756{0x3400000, 0xff7fffff, 0x3c9623b1, 0xff7ffffe, 0x3400010},
8757{0x3400000, 0xff7fffff, 0x51fd2c7c, 0xff7ffffe, 0x3400010},
8758{0x3400000, 0xff7fffff, 0x7b906a6c, 0xff7edf2a, 0x3400010},
8759{0x3400000, 0xff800000, 0x0, 0xff800000, 0x3400000},
8760{0x3400000, 0xff800000, 0x1, 0xff800000, 0x3400080},
8761{0x3400000, 0xff800000, 0x76, 0xff800000, 0x3400080},
8762{0x3400000, 0xff800000, 0x2b94, 0xff800000, 0x3400080},
8763{0x3400000, 0xff800000, 0x636d24, 0xff800000, 0x3400080},
8764{0x3400000, 0xff800000, 0x7fffff, 0xff800000, 0x3400080},
8765{0x3400000, 0xff800000, 0x800000, 0xff800000, 0x3400000},
8766{0x3400000, 0xff800000, 0x800002, 0xff800000, 0x3400000},
8767{0x3400000, 0xff800000, 0x1398437, 0xff800000, 0x3400000},
8768{0x3400000, 0xff800000, 0xba98d27, 0xff800000, 0x3400000},
8769{0x3400000, 0xff800000, 0xba98d7a, 0xff800000, 0x3400000},
8770{0x3400000, 0xff800000, 0x751f853a, 0xff800000, 0x3400000},
8771{0x3400000, 0xff800000, 0x7f7ffff0, 0xff800000, 0x3400000},
8772{0x3400000, 0xff800000, 0x7f7fffff, 0xff800000, 0x3400000},
8773{0x3400000, 0xff800000, 0x7f800000, 0x7fc00000, 0x3400001},
8774{0x3400000, 0xff800000, 0x7f800001, 0x7fc00000, 0x3400001},
8775{0x3400000, 0xff800000, 0x7f984a37, 0x7fc00000, 0x3400001},
8776{0x3400000, 0xff800000, 0x7fbfffff, 0x7fc00000, 0x3400001},
8777{0x3400000, 0xff800000, 0x7fc00000, 0x7fc00000, 0x3400000},
8778{0x3400000, 0xff800000, 0x7fd9ba98, 0x7fc00000, 0x3400000},
8779{0x3400000, 0xff800000, 0x7fffffff, 0x7fc00000, 0x3400000},
8780{0x3400000, 0xff800000, 0x80000000, 0xff800000, 0x3400000},
8781{0x3400000, 0xff800000, 0x80000001, 0xff800000, 0x3400080},
8782{0x3400000, 0xff800000, 0x80000076, 0xff800000, 0x3400080},
8783{0x3400000, 0xff800000, 0x80002b94, 0xff800000, 0x3400080},
8784{0x3400000, 0xff800000, 0x80636d24, 0xff800000, 0x3400080},
8785{0x3400000, 0xff800000, 0x807fffff, 0xff800000, 0x3400080},
8786{0x3400000, 0xff800000, 0x80800000, 0xff800000, 0x3400000},
8787{0x3400000, 0xff800000, 0x80800002, 0xff800000, 0x3400000},
8788{0x3400000, 0xff800000, 0x81398437, 0xff800000, 0x3400000},
8789{0x3400000, 0xff800000, 0x8ba98d27, 0xff800000, 0x3400000},
8790{0x3400000, 0xff800000, 0x8ba98d7a, 0xff800000, 0x3400000},
8791{0x3400000, 0xff800000, 0xf51f853a, 0xff800000, 0x3400000},
8792{0x3400000, 0xff800000, 0xff7ffff0, 0xff800000, 0x3400000},
8793{0x3400000, 0xff800000, 0xff7fffff, 0xff800000, 0x3400000},
8794{0x3400000, 0xff800000, 0xff800000, 0xff800000, 0x3400000},
8795{0x3400000, 0xff800000, 0xff800001, 0x7fc00000, 0x3400001},
8796{0x3400000, 0xff800000, 0xff984a37, 0x7fc00000, 0x3400001},
8797{0x3400000, 0xff800000, 0xffbfffff, 0x7fc00000, 0x3400001},
8798{0x3400000, 0xff800000, 0xffc00000, 0x7fc00000, 0x3400000},
8799{0x3400000, 0xff800000, 0xffd9ba98, 0x7fc00000, 0x3400000},
8800{0x3400000, 0xff800000, 0xffffffff, 0x7fc00000, 0x3400000},
8801{0x3400000, 0xff800000, 0x4f3495cb, 0xff800000, 0x3400000},
8802{0x3400000, 0xff800000, 0xe73a5134, 0xff800000, 0x3400000},
8803{0x3400000, 0xff800000, 0x7c994e9e, 0xff800000, 0x3400000},
8804{0x3400000, 0xff800000, 0x6164bd6c, 0xff800000, 0x3400000},
8805{0x3400000, 0xff800000, 0x9503366, 0xff800000, 0x3400000},
8806{0x3400000, 0xff800000, 0xbf5a97c9, 0xff800000, 0x3400000},
8807{0x3400000, 0xff800000, 0xe6ff1a14, 0xff800000, 0x3400000},
8808{0x3400000, 0xff800000, 0x77f31e2f, 0xff800000, 0x3400000},
8809{0x3400000, 0xff800000, 0xaab4d7d8, 0xff800000, 0x3400000},
8810{0x3400000, 0xff800000, 0x966320b, 0xff800000, 0x3400000},
8811{0x3400000, 0xff800000, 0xb26bddee, 0xff800000, 0x3400000},
8812{0x3400000, 0xff800000, 0xb5c8e5d3, 0xff800000, 0x3400000},
8813{0x3400000, 0xff800000, 0x317285d3, 0xff800000, 0x3400000},
8814{0x3400000, 0xff800000, 0x3c9623b1, 0xff800000, 0x3400000},
8815{0x3400000, 0xff800000, 0x51fd2c7c, 0xff800000, 0x3400000},
8816{0x3400000, 0xff800000, 0x7b906a6c, 0xff800000, 0x3400000},
8817{0x3400000, 0xff800001, 0x0, 0x7fc00000, 0x3400001},
8818{0x3400000, 0xff800001, 0x1, 0x7fc00000, 0x3400081},
8819{0x3400000, 0xff800001, 0x76, 0x7fc00000, 0x3400081},
8820{0x3400000, 0xff800001, 0x2b94, 0x7fc00000, 0x3400081},
8821{0x3400000, 0xff800001, 0x636d24, 0x7fc00000, 0x3400081},
8822{0x3400000, 0xff800001, 0x7fffff, 0x7fc00000, 0x3400081},
8823{0x3400000, 0xff800001, 0x800000, 0x7fc00000, 0x3400001},
8824{0x3400000, 0xff800001, 0x800002, 0x7fc00000, 0x3400001},
8825{0x3400000, 0xff800001, 0x1398437, 0x7fc00000, 0x3400001},
8826{0x3400000, 0xff800001, 0xba98d27, 0x7fc00000, 0x3400001},
8827{0x3400000, 0xff800001, 0xba98d7a, 0x7fc00000, 0x3400001},
8828{0x3400000, 0xff800001, 0x751f853a, 0x7fc00000, 0x3400001},
8829{0x3400000, 0xff800001, 0x7f7ffff0, 0x7fc00000, 0x3400001},
8830{0x3400000, 0xff800001, 0x7f7fffff, 0x7fc00000, 0x3400001},
8831{0x3400000, 0xff800001, 0x7f800000, 0x7fc00000, 0x3400001},
8832{0x3400000, 0xff800001, 0x7f800001, 0x7fc00000, 0x3400001},
8833{0x3400000, 0xff800001, 0x7f984a37, 0x7fc00000, 0x3400001},
8834{0x3400000, 0xff800001, 0x7fbfffff, 0x7fc00000, 0x3400001},
8835{0x3400000, 0xff800001, 0x7fc00000, 0x7fc00000, 0x3400001},
8836{0x3400000, 0xff800001, 0x7fd9ba98, 0x7fc00000, 0x3400001},
8837{0x3400000, 0xff800001, 0x7fffffff, 0x7fc00000, 0x3400001},
8838{0x3400000, 0xff800001, 0x80000000, 0x7fc00000, 0x3400001},
8839{0x3400000, 0xff800001, 0x80000001, 0x7fc00000, 0x3400081},
8840{0x3400000, 0xff800001, 0x80000076, 0x7fc00000, 0x3400081},
8841{0x3400000, 0xff800001, 0x80002b94, 0x7fc00000, 0x3400081},
8842{0x3400000, 0xff800001, 0x80636d24, 0x7fc00000, 0x3400081},
8843{0x3400000, 0xff800001, 0x807fffff, 0x7fc00000, 0x3400081},
8844{0x3400000, 0xff800001, 0x80800000, 0x7fc00000, 0x3400001},
8845{0x3400000, 0xff800001, 0x80800002, 0x7fc00000, 0x3400001},
8846{0x3400000, 0xff800001, 0x81398437, 0x7fc00000, 0x3400001},
8847{0x3400000, 0xff800001, 0x8ba98d27, 0x7fc00000, 0x3400001},
8848{0x3400000, 0xff800001, 0x8ba98d7a, 0x7fc00000, 0x3400001},
8849{0x3400000, 0xff800001, 0xf51f853a, 0x7fc00000, 0x3400001},
8850{0x3400000, 0xff800001, 0xff7ffff0, 0x7fc00000, 0x3400001},
8851{0x3400000, 0xff800001, 0xff7fffff, 0x7fc00000, 0x3400001},
8852{0x3400000, 0xff800001, 0xff800000, 0x7fc00000, 0x3400001},
8853{0x3400000, 0xff800001, 0xff800001, 0x7fc00000, 0x3400001},
8854{0x3400000, 0xff800001, 0xff984a37, 0x7fc00000, 0x3400001},
8855{0x3400000, 0xff800001, 0xffbfffff, 0x7fc00000, 0x3400001},
8856{0x3400000, 0xff800001, 0xffc00000, 0x7fc00000, 0x3400001},
8857{0x3400000, 0xff800001, 0xffd9ba98, 0x7fc00000, 0x3400001},
8858{0x3400000, 0xff800001, 0xffffffff, 0x7fc00000, 0x3400001},
8859{0x3400000, 0xff800001, 0x4f3495cb, 0x7fc00000, 0x3400001},
8860{0x3400000, 0xff800001, 0xe73a5134, 0x7fc00000, 0x3400001},
8861{0x3400000, 0xff800001, 0x7c994e9e, 0x7fc00000, 0x3400001},
8862{0x3400000, 0xff800001, 0x6164bd6c, 0x7fc00000, 0x3400001},
8863{0x3400000, 0xff800001, 0x9503366, 0x7fc00000, 0x3400001},
8864{0x3400000, 0xff800001, 0xbf5a97c9, 0x7fc00000, 0x3400001},
8865{0x3400000, 0xff800001, 0xe6ff1a14, 0x7fc00000, 0x3400001},
8866{0x3400000, 0xff800001, 0x77f31e2f, 0x7fc00000, 0x3400001},
8867{0x3400000, 0xff800001, 0xaab4d7d8, 0x7fc00000, 0x3400001},
8868{0x3400000, 0xff800001, 0x966320b, 0x7fc00000, 0x3400001},
8869{0x3400000, 0xff800001, 0xb26bddee, 0x7fc00000, 0x3400001},
8870{0x3400000, 0xff800001, 0xb5c8e5d3, 0x7fc00000, 0x3400001},
8871{0x3400000, 0xff800001, 0x317285d3, 0x7fc00000, 0x3400001},
8872{0x3400000, 0xff800001, 0x3c9623b1, 0x7fc00000, 0x3400001},
8873{0x3400000, 0xff800001, 0x51fd2c7c, 0x7fc00000, 0x3400001},
8874{0x3400000, 0xff800001, 0x7b906a6c, 0x7fc00000, 0x3400001},
8875{0x3400000, 0xff984a37, 0x0, 0x7fc00000, 0x3400001},
8876{0x3400000, 0xff984a37, 0x1, 0x7fc00000, 0x3400081},
8877{0x3400000, 0xff984a37, 0x76, 0x7fc00000, 0x3400081},
8878{0x3400000, 0xff984a37, 0x2b94, 0x7fc00000, 0x3400081},
8879{0x3400000, 0xff984a37, 0x636d24, 0x7fc00000, 0x3400081},
8880{0x3400000, 0xff984a37, 0x7fffff, 0x7fc00000, 0x3400081},
8881{0x3400000, 0xff984a37, 0x800000, 0x7fc00000, 0x3400001},
8882{0x3400000, 0xff984a37, 0x800002, 0x7fc00000, 0x3400001},
8883{0x3400000, 0xff984a37, 0x1398437, 0x7fc00000, 0x3400001},
8884{0x3400000, 0xff984a37, 0xba98d27, 0x7fc00000, 0x3400001},
8885{0x3400000, 0xff984a37, 0xba98d7a, 0x7fc00000, 0x3400001},
8886{0x3400000, 0xff984a37, 0x751f853a, 0x7fc00000, 0x3400001},
8887{0x3400000, 0xff984a37, 0x7f7ffff0, 0x7fc00000, 0x3400001},
8888{0x3400000, 0xff984a37, 0x7f7fffff, 0x7fc00000, 0x3400001},
8889{0x3400000, 0xff984a37, 0x7f800000, 0x7fc00000, 0x3400001},
8890{0x3400000, 0xff984a37, 0x7f800001, 0x7fc00000, 0x3400001},
8891{0x3400000, 0xff984a37, 0x7f984a37, 0x7fc00000, 0x3400001},
8892{0x3400000, 0xff984a37, 0x7fbfffff, 0x7fc00000, 0x3400001},
8893{0x3400000, 0xff984a37, 0x7fc00000, 0x7fc00000, 0x3400001},
8894{0x3400000, 0xff984a37, 0x7fd9ba98, 0x7fc00000, 0x3400001},
8895{0x3400000, 0xff984a37, 0x7fffffff, 0x7fc00000, 0x3400001},
8896{0x3400000, 0xff984a37, 0x80000000, 0x7fc00000, 0x3400001},
8897{0x3400000, 0xff984a37, 0x80000001, 0x7fc00000, 0x3400081},
8898{0x3400000, 0xff984a37, 0x80000076, 0x7fc00000, 0x3400081},
8899{0x3400000, 0xff984a37, 0x80002b94, 0x7fc00000, 0x3400081},
8900{0x3400000, 0xff984a37, 0x80636d24, 0x7fc00000, 0x3400081},
8901{0x3400000, 0xff984a37, 0x807fffff, 0x7fc00000, 0x3400081},
8902{0x3400000, 0xff984a37, 0x80800000, 0x7fc00000, 0x3400001},
8903{0x3400000, 0xff984a37, 0x80800002, 0x7fc00000, 0x3400001},
8904{0x3400000, 0xff984a37, 0x81398437, 0x7fc00000, 0x3400001},
8905{0x3400000, 0xff984a37, 0x8ba98d27, 0x7fc00000, 0x3400001},
8906{0x3400000, 0xff984a37, 0x8ba98d7a, 0x7fc00000, 0x3400001},
8907{0x3400000, 0xff984a37, 0xf51f853a, 0x7fc00000, 0x3400001},
8908{0x3400000, 0xff984a37, 0xff7ffff0, 0x7fc00000, 0x3400001},
8909{0x3400000, 0xff984a37, 0xff7fffff, 0x7fc00000, 0x3400001},
8910{0x3400000, 0xff984a37, 0xff800000, 0x7fc00000, 0x3400001},
8911{0x3400000, 0xff984a37, 0xff800001, 0x7fc00000, 0x3400001},
8912{0x3400000, 0xff984a37, 0xff984a37, 0x7fc00000, 0x3400001},
8913{0x3400000, 0xff984a37, 0xffbfffff, 0x7fc00000, 0x3400001},
8914{0x3400000, 0xff984a37, 0xffc00000, 0x7fc00000, 0x3400001},
8915{0x3400000, 0xff984a37, 0xffd9ba98, 0x7fc00000, 0x3400001},
8916{0x3400000, 0xff984a37, 0xffffffff, 0x7fc00000, 0x3400001},
8917{0x3400000, 0xff984a37, 0x4f3495cb, 0x7fc00000, 0x3400001},
8918{0x3400000, 0xff984a37, 0xe73a5134, 0x7fc00000, 0x3400001},
8919{0x3400000, 0xff984a37, 0x7c994e9e, 0x7fc00000, 0x3400001},
8920{0x3400000, 0xff984a37, 0x6164bd6c, 0x7fc00000, 0x3400001},
8921{0x3400000, 0xff984a37, 0x9503366, 0x7fc00000, 0x3400001},
8922{0x3400000, 0xff984a37, 0xbf5a97c9, 0x7fc00000, 0x3400001},
8923{0x3400000, 0xff984a37, 0xe6ff1a14, 0x7fc00000, 0x3400001},
8924{0x3400000, 0xff984a37, 0x77f31e2f, 0x7fc00000, 0x3400001},
8925{0x3400000, 0xff984a37, 0xaab4d7d8, 0x7fc00000, 0x3400001},
8926{0x3400000, 0xff984a37, 0x966320b, 0x7fc00000, 0x3400001},
8927{0x3400000, 0xff984a37, 0xb26bddee, 0x7fc00000, 0x3400001},
8928{0x3400000, 0xff984a37, 0xb5c8e5d3, 0x7fc00000, 0x3400001},
8929{0x3400000, 0xff984a37, 0x317285d3, 0x7fc00000, 0x3400001},
8930{0x3400000, 0xff984a37, 0x3c9623b1, 0x7fc00000, 0x3400001},
8931{0x3400000, 0xff984a37, 0x51fd2c7c, 0x7fc00000, 0x3400001},
8932{0x3400000, 0xff984a37, 0x7b906a6c, 0x7fc00000, 0x3400001},
8933{0x3400000, 0xffbfffff, 0x0, 0x7fc00000, 0x3400001},
8934{0x3400000, 0xffbfffff, 0x1, 0x7fc00000, 0x3400081},
8935{0x3400000, 0xffbfffff, 0x76, 0x7fc00000, 0x3400081},
8936{0x3400000, 0xffbfffff, 0x2b94, 0x7fc00000, 0x3400081},
8937{0x3400000, 0xffbfffff, 0x636d24, 0x7fc00000, 0x3400081},
8938{0x3400000, 0xffbfffff, 0x7fffff, 0x7fc00000, 0x3400081},
8939{0x3400000, 0xffbfffff, 0x800000, 0x7fc00000, 0x3400001},
8940{0x3400000, 0xffbfffff, 0x800002, 0x7fc00000, 0x3400001},
8941{0x3400000, 0xffbfffff, 0x1398437, 0x7fc00000, 0x3400001},
8942{0x3400000, 0xffbfffff, 0xba98d27, 0x7fc00000, 0x3400001},
8943{0x3400000, 0xffbfffff, 0xba98d7a, 0x7fc00000, 0x3400001},
8944{0x3400000, 0xffbfffff, 0x751f853a, 0x7fc00000, 0x3400001},
8945{0x3400000, 0xffbfffff, 0x7f7ffff0, 0x7fc00000, 0x3400001},
8946{0x3400000, 0xffbfffff, 0x7f7fffff, 0x7fc00000, 0x3400001},
8947{0x3400000, 0xffbfffff, 0x7f800000, 0x7fc00000, 0x3400001},
8948{0x3400000, 0xffbfffff, 0x7f800001, 0x7fc00000, 0x3400001},
8949{0x3400000, 0xffbfffff, 0x7f984a37, 0x7fc00000, 0x3400001},
8950{0x3400000, 0xffbfffff, 0x7fbfffff, 0x7fc00000, 0x3400001},
8951{0x3400000, 0xffbfffff, 0x7fc00000, 0x7fc00000, 0x3400001},
8952{0x3400000, 0xffbfffff, 0x7fd9ba98, 0x7fc00000, 0x3400001},
8953{0x3400000, 0xffbfffff, 0x7fffffff, 0x7fc00000, 0x3400001},
8954{0x3400000, 0xffbfffff, 0x80000000, 0x7fc00000, 0x3400001},
8955{0x3400000, 0xffbfffff, 0x80000001, 0x7fc00000, 0x3400081},
8956{0x3400000, 0xffbfffff, 0x80000076, 0x7fc00000, 0x3400081},
8957{0x3400000, 0xffbfffff, 0x80002b94, 0x7fc00000, 0x3400081},
8958{0x3400000, 0xffbfffff, 0x80636d24, 0x7fc00000, 0x3400081},
8959{0x3400000, 0xffbfffff, 0x807fffff, 0x7fc00000, 0x3400081},
8960{0x3400000, 0xffbfffff, 0x80800000, 0x7fc00000, 0x3400001},
8961{0x3400000, 0xffbfffff, 0x80800002, 0x7fc00000, 0x3400001},
8962{0x3400000, 0xffbfffff, 0x81398437, 0x7fc00000, 0x3400001},
8963{0x3400000, 0xffbfffff, 0x8ba98d27, 0x7fc00000, 0x3400001},
8964{0x3400000, 0xffbfffff, 0x8ba98d7a, 0x7fc00000, 0x3400001},
8965{0x3400000, 0xffbfffff, 0xf51f853a, 0x7fc00000, 0x3400001},
8966{0x3400000, 0xffbfffff, 0xff7ffff0, 0x7fc00000, 0x3400001},
8967{0x3400000, 0xffbfffff, 0xff7fffff, 0x7fc00000, 0x3400001},
8968{0x3400000, 0xffbfffff, 0xff800000, 0x7fc00000, 0x3400001},
8969{0x3400000, 0xffbfffff, 0xff800001, 0x7fc00000, 0x3400001},
8970{0x3400000, 0xffbfffff, 0xff984a37, 0x7fc00000, 0x3400001},
8971{0x3400000, 0xffbfffff, 0xffbfffff, 0x7fc00000, 0x3400001},
8972{0x3400000, 0xffbfffff, 0xffc00000, 0x7fc00000, 0x3400001},
8973{0x3400000, 0xffbfffff, 0xffd9ba98, 0x7fc00000, 0x3400001},
8974{0x3400000, 0xffbfffff, 0xffffffff, 0x7fc00000, 0x3400001},
8975{0x3400000, 0xffbfffff, 0x4f3495cb, 0x7fc00000, 0x3400001},
8976{0x3400000, 0xffbfffff, 0xe73a5134, 0x7fc00000, 0x3400001},
8977{0x3400000, 0xffbfffff, 0x7c994e9e, 0x7fc00000, 0x3400001},
8978{0x3400000, 0xffbfffff, 0x6164bd6c, 0x7fc00000, 0x3400001},
8979{0x3400000, 0xffbfffff, 0x9503366, 0x7fc00000, 0x3400001},
8980{0x3400000, 0xffbfffff, 0xbf5a97c9, 0x7fc00000, 0x3400001},
8981{0x3400000, 0xffbfffff, 0xe6ff1a14, 0x7fc00000, 0x3400001},
8982{0x3400000, 0xffbfffff, 0x77f31e2f, 0x7fc00000, 0x3400001},
8983{0x3400000, 0xffbfffff, 0xaab4d7d8, 0x7fc00000, 0x3400001},
8984{0x3400000, 0xffbfffff, 0x966320b, 0x7fc00000, 0x3400001},
8985{0x3400000, 0xffbfffff, 0xb26bddee, 0x7fc00000, 0x3400001},
8986{0x3400000, 0xffbfffff, 0xb5c8e5d3, 0x7fc00000, 0x3400001},
8987{0x3400000, 0xffbfffff, 0x317285d3, 0x7fc00000, 0x3400001},
8988{0x3400000, 0xffbfffff, 0x3c9623b1, 0x7fc00000, 0x3400001},
8989{0x3400000, 0xffbfffff, 0x51fd2c7c, 0x7fc00000, 0x3400001},
8990{0x3400000, 0xffbfffff, 0x7b906a6c, 0x7fc00000, 0x3400001},
8991{0x3400000, 0xffc00000, 0x0, 0x7fc00000, 0x3400000},
8992{0x3400000, 0xffc00000, 0x1, 0x7fc00000, 0x3400080},
8993{0x3400000, 0xffc00000, 0x76, 0x7fc00000, 0x3400080},
8994{0x3400000, 0xffc00000, 0x2b94, 0x7fc00000, 0x3400080},
8995{0x3400000, 0xffc00000, 0x636d24, 0x7fc00000, 0x3400080},
8996{0x3400000, 0xffc00000, 0x7fffff, 0x7fc00000, 0x3400080},
8997{0x3400000, 0xffc00000, 0x800000, 0x7fc00000, 0x3400000},
8998{0x3400000, 0xffc00000, 0x800002, 0x7fc00000, 0x3400000},
8999{0x3400000, 0xffc00000, 0x1398437, 0x7fc00000, 0x3400000},
9000{0x3400000, 0xffc00000, 0xba98d27, 0x7fc00000, 0x3400000},
9001{0x3400000, 0xffc00000, 0xba98d7a, 0x7fc00000, 0x3400000},
9002{0x3400000, 0xffc00000, 0x751f853a, 0x7fc00000, 0x3400000},
9003{0x3400000, 0xffc00000, 0x7f7ffff0, 0x7fc00000, 0x3400000},
9004{0x3400000, 0xffc00000, 0x7f7fffff, 0x7fc00000, 0x3400000},
9005{0x3400000, 0xffc00000, 0x7f800000, 0x7fc00000, 0x3400000},
9006{0x3400000, 0xffc00000, 0x7f800001, 0x7fc00000, 0x3400001},
9007{0x3400000, 0xffc00000, 0x7f984a37, 0x7fc00000, 0x3400001},
9008{0x3400000, 0xffc00000, 0x7fbfffff, 0x7fc00000, 0x3400001},
9009{0x3400000, 0xffc00000, 0x7fc00000, 0x7fc00000, 0x3400000},
9010{0x3400000, 0xffc00000, 0x7fd9ba98, 0x7fc00000, 0x3400000},
9011{0x3400000, 0xffc00000, 0x7fffffff, 0x7fc00000, 0x3400000},
9012{0x3400000, 0xffc00000, 0x80000000, 0x7fc00000, 0x3400000},
9013{0x3400000, 0xffc00000, 0x80000001, 0x7fc00000, 0x3400080},
9014{0x3400000, 0xffc00000, 0x80000076, 0x7fc00000, 0x3400080},
9015{0x3400000, 0xffc00000, 0x80002b94, 0x7fc00000, 0x3400080},
9016{0x3400000, 0xffc00000, 0x80636d24, 0x7fc00000, 0x3400080},
9017{0x3400000, 0xffc00000, 0x807fffff, 0x7fc00000, 0x3400080},
9018{0x3400000, 0xffc00000, 0x80800000, 0x7fc00000, 0x3400000},
9019{0x3400000, 0xffc00000, 0x80800002, 0x7fc00000, 0x3400000},
9020{0x3400000, 0xffc00000, 0x81398437, 0x7fc00000, 0x3400000},
9021{0x3400000, 0xffc00000, 0x8ba98d27, 0x7fc00000, 0x3400000},
9022{0x3400000, 0xffc00000, 0x8ba98d7a, 0x7fc00000, 0x3400000},
9023{0x3400000, 0xffc00000, 0xf51f853a, 0x7fc00000, 0x3400000},
9024{0x3400000, 0xffc00000, 0xff7ffff0, 0x7fc00000, 0x3400000},
9025{0x3400000, 0xffc00000, 0xff7fffff, 0x7fc00000, 0x3400000},
9026{0x3400000, 0xffc00000, 0xff800000, 0x7fc00000, 0x3400000},
9027{0x3400000, 0xffc00000, 0xff800001, 0x7fc00000, 0x3400001},
9028{0x3400000, 0xffc00000, 0xff984a37, 0x7fc00000, 0x3400001},
9029{0x3400000, 0xffc00000, 0xffbfffff, 0x7fc00000, 0x3400001},
9030{0x3400000, 0xffc00000, 0xffc00000, 0x7fc00000, 0x3400000},
9031{0x3400000, 0xffc00000, 0xffd9ba98, 0x7fc00000, 0x3400000},
9032{0x3400000, 0xffc00000, 0xffffffff, 0x7fc00000, 0x3400000},
9033{0x3400000, 0xffc00000, 0x4f3495cb, 0x7fc00000, 0x3400000},
9034{0x3400000, 0xffc00000, 0xe73a5134, 0x7fc00000, 0x3400000},
9035{0x3400000, 0xffc00000, 0x7c994e9e, 0x7fc00000, 0x3400000},
9036{0x3400000, 0xffc00000, 0x6164bd6c, 0x7fc00000, 0x3400000},
9037{0x3400000, 0xffc00000, 0x9503366, 0x7fc00000, 0x3400000},
9038{0x3400000, 0xffc00000, 0xbf5a97c9, 0x7fc00000, 0x3400000},
9039{0x3400000, 0xffc00000, 0xe6ff1a14, 0x7fc00000, 0x3400000},
9040{0x3400000, 0xffc00000, 0x77f31e2f, 0x7fc00000, 0x3400000},
9041{0x3400000, 0xffc00000, 0xaab4d7d8, 0x7fc00000, 0x3400000},
9042{0x3400000, 0xffc00000, 0x966320b, 0x7fc00000, 0x3400000},
9043{0x3400000, 0xffc00000, 0xb26bddee, 0x7fc00000, 0x3400000},
9044{0x3400000, 0xffc00000, 0xb5c8e5d3, 0x7fc00000, 0x3400000},
9045{0x3400000, 0xffc00000, 0x317285d3, 0x7fc00000, 0x3400000},
9046{0x3400000, 0xffc00000, 0x3c9623b1, 0x7fc00000, 0x3400000},
9047{0x3400000, 0xffc00000, 0x51fd2c7c, 0x7fc00000, 0x3400000},
9048{0x3400000, 0xffc00000, 0x7b906a6c, 0x7fc00000, 0x3400000},
9049{0x3400000, 0xffd9ba98, 0x0, 0x7fc00000, 0x3400000},
9050{0x3400000, 0xffd9ba98, 0x1, 0x7fc00000, 0x3400080},
9051{0x3400000, 0xffd9ba98, 0x76, 0x7fc00000, 0x3400080},
9052{0x3400000, 0xffd9ba98, 0x2b94, 0x7fc00000, 0x3400080},
9053{0x3400000, 0xffd9ba98, 0x636d24, 0x7fc00000, 0x3400080},
9054{0x3400000, 0xffd9ba98, 0x7fffff, 0x7fc00000, 0x3400080},
9055{0x3400000, 0xffd9ba98, 0x800000, 0x7fc00000, 0x3400000},
9056{0x3400000, 0xffd9ba98, 0x800002, 0x7fc00000, 0x3400000},
9057{0x3400000, 0xffd9ba98, 0x1398437, 0x7fc00000, 0x3400000},
9058{0x3400000, 0xffd9ba98, 0xba98d27, 0x7fc00000, 0x3400000},
9059{0x3400000, 0xffd9ba98, 0xba98d7a, 0x7fc00000, 0x3400000},
9060{0x3400000, 0xffd9ba98, 0x751f853a, 0x7fc00000, 0x3400000},
9061{0x3400000, 0xffd9ba98, 0x7f7ffff0, 0x7fc00000, 0x3400000},
9062{0x3400000, 0xffd9ba98, 0x7f7fffff, 0x7fc00000, 0x3400000},
9063{0x3400000, 0xffd9ba98, 0x7f800000, 0x7fc00000, 0x3400000},
9064{0x3400000, 0xffd9ba98, 0x7f800001, 0x7fc00000, 0x3400001},
9065{0x3400000, 0xffd9ba98, 0x7f984a37, 0x7fc00000, 0x3400001},
9066{0x3400000, 0xffd9ba98, 0x7fbfffff, 0x7fc00000, 0x3400001},
9067{0x3400000, 0xffd9ba98, 0x7fc00000, 0x7fc00000, 0x3400000},
9068{0x3400000, 0xffd9ba98, 0x7fd9ba98, 0x7fc00000, 0x3400000},
9069{0x3400000, 0xffd9ba98, 0x7fffffff, 0x7fc00000, 0x3400000},
9070{0x3400000, 0xffd9ba98, 0x80000000, 0x7fc00000, 0x3400000},
9071{0x3400000, 0xffd9ba98, 0x80000001, 0x7fc00000, 0x3400080},
9072{0x3400000, 0xffd9ba98, 0x80000076, 0x7fc00000, 0x3400080},
9073{0x3400000, 0xffd9ba98, 0x80002b94, 0x7fc00000, 0x3400080},
9074{0x3400000, 0xffd9ba98, 0x80636d24, 0x7fc00000, 0x3400080},
9075{0x3400000, 0xffd9ba98, 0x807fffff, 0x7fc00000, 0x3400080},
9076{0x3400000, 0xffd9ba98, 0x80800000, 0x7fc00000, 0x3400000},
9077{0x3400000, 0xffd9ba98, 0x80800002, 0x7fc00000, 0x3400000},
9078{0x3400000, 0xffd9ba98, 0x81398437, 0x7fc00000, 0x3400000},
9079{0x3400000, 0xffd9ba98, 0x8ba98d27, 0x7fc00000, 0x3400000},
9080{0x3400000, 0xffd9ba98, 0x8ba98d7a, 0x7fc00000, 0x3400000},
9081{0x3400000, 0xffd9ba98, 0xf51f853a, 0x7fc00000, 0x3400000},
9082{0x3400000, 0xffd9ba98, 0xff7ffff0, 0x7fc00000, 0x3400000},
9083{0x3400000, 0xffd9ba98, 0xff7fffff, 0x7fc00000, 0x3400000},
9084{0x3400000, 0xffd9ba98, 0xff800000, 0x7fc00000, 0x3400000},
9085{0x3400000, 0xffd9ba98, 0xff800001, 0x7fc00000, 0x3400001},
9086{0x3400000, 0xffd9ba98, 0xff984a37, 0x7fc00000, 0x3400001},
9087{0x3400000, 0xffd9ba98, 0xffbfffff, 0x7fc00000, 0x3400001},
9088{0x3400000, 0xffd9ba98, 0xffc00000, 0x7fc00000, 0x3400000},
9089{0x3400000, 0xffd9ba98, 0xffd9ba98, 0x7fc00000, 0x3400000},
9090{0x3400000, 0xffd9ba98, 0xffffffff, 0x7fc00000, 0x3400000},
9091{0x3400000, 0xffd9ba98, 0x4f3495cb, 0x7fc00000, 0x3400000},
9092{0x3400000, 0xffd9ba98, 0xe73a5134, 0x7fc00000, 0x3400000},
9093{0x3400000, 0xffd9ba98, 0x7c994e9e, 0x7fc00000, 0x3400000},
9094{0x3400000, 0xffd9ba98, 0x6164bd6c, 0x7fc00000, 0x3400000},
9095{0x3400000, 0xffd9ba98, 0x9503366, 0x7fc00000, 0x3400000},
9096{0x3400000, 0xffd9ba98, 0xbf5a97c9, 0x7fc00000, 0x3400000},
9097{0x3400000, 0xffd9ba98, 0xe6ff1a14, 0x7fc00000, 0x3400000},
9098{0x3400000, 0xffd9ba98, 0x77f31e2f, 0x7fc00000, 0x3400000},
9099{0x3400000, 0xffd9ba98, 0xaab4d7d8, 0x7fc00000, 0x3400000},
9100{0x3400000, 0xffd9ba98, 0x966320b, 0x7fc00000, 0x3400000},
9101{0x3400000, 0xffd9ba98, 0xb26bddee, 0x7fc00000, 0x3400000},
9102{0x3400000, 0xffd9ba98, 0xb5c8e5d3, 0x7fc00000, 0x3400000},
9103{0x3400000, 0xffd9ba98, 0x317285d3, 0x7fc00000, 0x3400000},
9104{0x3400000, 0xffd9ba98, 0x3c9623b1, 0x7fc00000, 0x3400000},
9105{0x3400000, 0xffd9ba98, 0x51fd2c7c, 0x7fc00000, 0x3400000},
9106{0x3400000, 0xffd9ba98, 0x7b906a6c, 0x7fc00000, 0x3400000},
9107{0x3400000, 0xffffffff, 0x0, 0x7fc00000, 0x3400000},
9108{0x3400000, 0xffffffff, 0x1, 0x7fc00000, 0x3400080},
9109{0x3400000, 0xffffffff, 0x76, 0x7fc00000, 0x3400080},
9110{0x3400000, 0xffffffff, 0x2b94, 0x7fc00000, 0x3400080},
9111{0x3400000, 0xffffffff, 0x636d24, 0x7fc00000, 0x3400080},
9112{0x3400000, 0xffffffff, 0x7fffff, 0x7fc00000, 0x3400080},
9113{0x3400000, 0xffffffff, 0x800000, 0x7fc00000, 0x3400000},
9114{0x3400000, 0xffffffff, 0x800002, 0x7fc00000, 0x3400000},
9115{0x3400000, 0xffffffff, 0x1398437, 0x7fc00000, 0x3400000},
9116{0x3400000, 0xffffffff, 0xba98d27, 0x7fc00000, 0x3400000},
9117{0x3400000, 0xffffffff, 0xba98d7a, 0x7fc00000, 0x3400000},
9118{0x3400000, 0xffffffff, 0x751f853a, 0x7fc00000, 0x3400000},
9119{0x3400000, 0xffffffff, 0x7f7ffff0, 0x7fc00000, 0x3400000},
9120{0x3400000, 0xffffffff, 0x7f7fffff, 0x7fc00000, 0x3400000},
9121{0x3400000, 0xffffffff, 0x7f800000, 0x7fc00000, 0x3400000},
9122{0x3400000, 0xffffffff, 0x7f800001, 0x7fc00000, 0x3400001},
9123{0x3400000, 0xffffffff, 0x7f984a37, 0x7fc00000, 0x3400001},
9124{0x3400000, 0xffffffff, 0x7fbfffff, 0x7fc00000, 0x3400001},
9125{0x3400000, 0xffffffff, 0x7fc00000, 0x7fc00000, 0x3400000},
9126{0x3400000, 0xffffffff, 0x7fd9ba98, 0x7fc00000, 0x3400000},
9127{0x3400000, 0xffffffff, 0x7fffffff, 0x7fc00000, 0x3400000},
9128{0x3400000, 0xffffffff, 0x80000000, 0x7fc00000, 0x3400000},
9129{0x3400000, 0xffffffff, 0x80000001, 0x7fc00000, 0x3400080},
9130{0x3400000, 0xffffffff, 0x80000076, 0x7fc00000, 0x3400080},
9131{0x3400000, 0xffffffff, 0x80002b94, 0x7fc00000, 0x3400080},
9132{0x3400000, 0xffffffff, 0x80636d24, 0x7fc00000, 0x3400080},
9133{0x3400000, 0xffffffff, 0x807fffff, 0x7fc00000, 0x3400080},
9134{0x3400000, 0xffffffff, 0x80800000, 0x7fc00000, 0x3400000},
9135{0x3400000, 0xffffffff, 0x80800002, 0x7fc00000, 0x3400000},
9136{0x3400000, 0xffffffff, 0x81398437, 0x7fc00000, 0x3400000},
9137{0x3400000, 0xffffffff, 0x8ba98d27, 0x7fc00000, 0x3400000},
9138{0x3400000, 0xffffffff, 0x8ba98d7a, 0x7fc00000, 0x3400000},
9139{0x3400000, 0xffffffff, 0xf51f853a, 0x7fc00000, 0x3400000},
9140{0x3400000, 0xffffffff, 0xff7ffff0, 0x7fc00000, 0x3400000},
9141{0x3400000, 0xffffffff, 0xff7fffff, 0x7fc00000, 0x3400000},
9142{0x3400000, 0xffffffff, 0xff800000, 0x7fc00000, 0x3400000},
9143{0x3400000, 0xffffffff, 0xff800001, 0x7fc00000, 0x3400001},
9144{0x3400000, 0xffffffff, 0xff984a37, 0x7fc00000, 0x3400001},
9145{0x3400000, 0xffffffff, 0xffbfffff, 0x7fc00000, 0x3400001},
9146{0x3400000, 0xffffffff, 0xffc00000, 0x7fc00000, 0x3400000},
9147{0x3400000, 0xffffffff, 0xffd9ba98, 0x7fc00000, 0x3400000},
9148{0x3400000, 0xffffffff, 0xffffffff, 0x7fc00000, 0x3400000},
9149{0x3400000, 0xffffffff, 0x4f3495cb, 0x7fc00000, 0x3400000},
9150{0x3400000, 0xffffffff, 0xe73a5134, 0x7fc00000, 0x3400000},
9151{0x3400000, 0xffffffff, 0x7c994e9e, 0x7fc00000, 0x3400000},
9152{0x3400000, 0xffffffff, 0x6164bd6c, 0x7fc00000, 0x3400000},
9153{0x3400000, 0xffffffff, 0x9503366, 0x7fc00000, 0x3400000},
9154{0x3400000, 0xffffffff, 0xbf5a97c9, 0x7fc00000, 0x3400000},
9155{0x3400000, 0xffffffff, 0xe6ff1a14, 0x7fc00000, 0x3400000},
9156{0x3400000, 0xffffffff, 0x77f31e2f, 0x7fc00000, 0x3400000},
9157{0x3400000, 0xffffffff, 0xaab4d7d8, 0x7fc00000, 0x3400000},
9158{0x3400000, 0xffffffff, 0x966320b, 0x7fc00000, 0x3400000},
9159{0x3400000, 0xffffffff, 0xb26bddee, 0x7fc00000, 0x3400000},
9160{0x3400000, 0xffffffff, 0xb5c8e5d3, 0x7fc00000, 0x3400000},
9161{0x3400000, 0xffffffff, 0x317285d3, 0x7fc00000, 0x3400000},
9162{0x3400000, 0xffffffff, 0x3c9623b1, 0x7fc00000, 0x3400000},
9163{0x3400000, 0xffffffff, 0x51fd2c7c, 0x7fc00000, 0x3400000},
9164{0x3400000, 0xffffffff, 0x7b906a6c, 0x7fc00000, 0x3400000},
9165{0x3400000, 0x4f3495cb, 0x0, 0x4f3495cb, 0x3400000},
9166{0x3400000, 0x4f3495cb, 0x1, 0x4f3495cb, 0x3400080},
9167{0x3400000, 0x4f3495cb, 0x76, 0x4f3495cb, 0x3400080},
9168{0x3400000, 0x4f3495cb, 0x2b94, 0x4f3495cb, 0x3400080},
9169{0x3400000, 0x4f3495cb, 0x636d24, 0x4f3495cb, 0x3400080},
9170{0x3400000, 0x4f3495cb, 0x7fffff, 0x4f3495cb, 0x3400080},
9171{0x3400000, 0x4f3495cb, 0x800000, 0x4f3495cc, 0x3400010},
9172{0x3400000, 0x4f3495cb, 0x800002, 0x4f3495cc, 0x3400010},
9173{0x3400000, 0x4f3495cb, 0x1398437, 0x4f3495cc, 0x3400010},
9174{0x3400000, 0x4f3495cb, 0xba98d27, 0x4f3495cc, 0x3400010},
9175{0x3400000, 0x4f3495cb, 0xba98d7a, 0x4f3495cc, 0x3400010},
9176{0x3400000, 0x4f3495cb, 0x751f853a, 0x751f853b, 0x3400010},
9177{0x3400000, 0x4f3495cb, 0x7f7ffff0, 0x7f7ffff1, 0x3400010},
9178{0x3400000, 0x4f3495cb, 0x7f7fffff, 0x7f800000, 0x3400014},
9179{0x3400000, 0x4f3495cb, 0x7f800000, 0x7f800000, 0x3400000},
9180{0x3400000, 0x4f3495cb, 0x7f800001, 0x7fc00000, 0x3400001},
9181{0x3400000, 0x4f3495cb, 0x7f984a37, 0x7fc00000, 0x3400001},
9182{0x3400000, 0x4f3495cb, 0x7fbfffff, 0x7fc00000, 0x3400001},
9183{0x3400000, 0x4f3495cb, 0x7fc00000, 0x7fc00000, 0x3400000},
9184{0x3400000, 0x4f3495cb, 0x7fd9ba98, 0x7fc00000, 0x3400000},
9185{0x3400000, 0x4f3495cb, 0x7fffffff, 0x7fc00000, 0x3400000},
9186{0x3400000, 0x4f3495cb, 0x80000000, 0x4f3495cb, 0x3400000},
9187{0x3400000, 0x4f3495cb, 0x80000001, 0x4f3495cb, 0x3400080},
9188{0x3400000, 0x4f3495cb, 0x80000076, 0x4f3495cb, 0x3400080},
9189{0x3400000, 0x4f3495cb, 0x80002b94, 0x4f3495cb, 0x3400080},
9190{0x3400000, 0x4f3495cb, 0x80636d24, 0x4f3495cb, 0x3400080},
9191{0x3400000, 0x4f3495cb, 0x807fffff, 0x4f3495cb, 0x3400080},
9192{0x3400000, 0x4f3495cb, 0x80800000, 0x4f3495cb, 0x3400010},
9193{0x3400000, 0x4f3495cb, 0x80800002, 0x4f3495cb, 0x3400010},
9194{0x3400000, 0x4f3495cb, 0x81398437, 0x4f3495cb, 0x3400010},
9195{0x3400000, 0x4f3495cb, 0x8ba98d27, 0x4f3495cb, 0x3400010},
9196{0x3400000, 0x4f3495cb, 0x8ba98d7a, 0x4f3495cb, 0x3400010},
9197{0x3400000, 0x4f3495cb, 0xf51f853a, 0xf51f8539, 0x3400010},
9198{0x3400000, 0x4f3495cb, 0xff7ffff0, 0xff7fffef, 0x3400010},
9199{0x3400000, 0x4f3495cb, 0xff7fffff, 0xff7ffffe, 0x3400010},
9200{0x3400000, 0x4f3495cb, 0xff800000, 0xff800000, 0x3400000},
9201{0x3400000, 0x4f3495cb, 0xff800001, 0x7fc00000, 0x3400001},
9202{0x3400000, 0x4f3495cb, 0xff984a37, 0x7fc00000, 0x3400001},
9203{0x3400000, 0x4f3495cb, 0xffbfffff, 0x7fc00000, 0x3400001},
9204{0x3400000, 0x4f3495cb, 0xffc00000, 0x7fc00000, 0x3400000},
9205{0x3400000, 0x4f3495cb, 0xffd9ba98, 0x7fc00000, 0x3400000},
9206{0x3400000, 0x4f3495cb, 0xffffffff, 0x7fc00000, 0x3400000},
9207{0x3400000, 0x4f3495cb, 0x4f3495cb, 0x4fb495cb, 0x3400000},
9208{0x3400000, 0x4f3495cb, 0xe73a5134, 0xe73a5133, 0x3400010},
9209{0x3400000, 0x4f3495cb, 0x7c994e9e, 0x7c994e9f, 0x3400010},
9210{0x3400000, 0x4f3495cb, 0x6164bd6c, 0x6164bd6d, 0x3400010},
9211{0x3400000, 0x4f3495cb, 0x9503366, 0x4f3495cc, 0x3400010},
9212{0x3400000, 0x4f3495cb, 0xbf5a97c9, 0x4f3495cb, 0x3400010},
9213{0x3400000, 0x4f3495cb, 0xe6ff1a14, 0xe6ff1a13, 0x3400010},
9214{0x3400000, 0x4f3495cb, 0x77f31e2f, 0x77f31e30, 0x3400010},
9215{0x3400000, 0x4f3495cb, 0xaab4d7d8, 0x4f3495cb, 0x3400010},
9216{0x3400000, 0x4f3495cb, 0x966320b, 0x4f3495cc, 0x3400010},
9217{0x3400000, 0x4f3495cb, 0xb26bddee, 0x4f3495cb, 0x3400010},
9218{0x3400000, 0x4f3495cb, 0xb5c8e5d3, 0x4f3495cb, 0x3400010},
9219{0x3400000, 0x4f3495cb, 0x317285d3, 0x4f3495cc, 0x3400010},
9220{0x3400000, 0x4f3495cb, 0x3c9623b1, 0x4f3495cc, 0x3400010},
9221{0x3400000, 0x4f3495cb, 0x51fd2c7c, 0x52016896, 0x3400010},
9222{0x3400000, 0x4f3495cb, 0x7b906a6c, 0x7b906a6d, 0x3400010},
9223{0x3400000, 0xe73a5134, 0x0, 0xe73a5134, 0x3400000},
9224{0x3400000, 0xe73a5134, 0x1, 0xe73a5134, 0x3400080},
9225{0x3400000, 0xe73a5134, 0x76, 0xe73a5134, 0x3400080},
9226{0x3400000, 0xe73a5134, 0x2b94, 0xe73a5134, 0x3400080},
9227{0x3400000, 0xe73a5134, 0x636d24, 0xe73a5134, 0x3400080},
9228{0x3400000, 0xe73a5134, 0x7fffff, 0xe73a5134, 0x3400080},
9229{0x3400000, 0xe73a5134, 0x800000, 0xe73a5133, 0x3400010},
9230{0x3400000, 0xe73a5134, 0x800002, 0xe73a5133, 0x3400010},
9231{0x3400000, 0xe73a5134, 0x1398437, 0xe73a5133, 0x3400010},
9232{0x3400000, 0xe73a5134, 0xba98d27, 0xe73a5133, 0x3400010},
9233{0x3400000, 0xe73a5134, 0xba98d7a, 0xe73a5133, 0x3400010},
9234{0x3400000, 0xe73a5134, 0x751f853a, 0x751f853a, 0x3400010},
9235{0x3400000, 0xe73a5134, 0x7f7ffff0, 0x7f7ffff0, 0x3400010},
9236{0x3400000, 0xe73a5134, 0x7f7fffff, 0x7f7fffff, 0x3400010},
9237{0x3400000, 0xe73a5134, 0x7f800000, 0x7f800000, 0x3400000},
9238{0x3400000, 0xe73a5134, 0x7f800001, 0x7fc00000, 0x3400001},
9239{0x3400000, 0xe73a5134, 0x7f984a37, 0x7fc00000, 0x3400001},
9240{0x3400000, 0xe73a5134, 0x7fbfffff, 0x7fc00000, 0x3400001},
9241{0x3400000, 0xe73a5134, 0x7fc00000, 0x7fc00000, 0x3400000},
9242{0x3400000, 0xe73a5134, 0x7fd9ba98, 0x7fc00000, 0x3400000},
9243{0x3400000, 0xe73a5134, 0x7fffffff, 0x7fc00000, 0x3400000},
9244{0x3400000, 0xe73a5134, 0x80000000, 0xe73a5134, 0x3400000},
9245{0x3400000, 0xe73a5134, 0x80000001, 0xe73a5134, 0x3400080},
9246{0x3400000, 0xe73a5134, 0x80000076, 0xe73a5134, 0x3400080},
9247{0x3400000, 0xe73a5134, 0x80002b94, 0xe73a5134, 0x3400080},
9248{0x3400000, 0xe73a5134, 0x80636d24, 0xe73a5134, 0x3400080},
9249{0x3400000, 0xe73a5134, 0x807fffff, 0xe73a5134, 0x3400080},
9250{0x3400000, 0xe73a5134, 0x80800000, 0xe73a5134, 0x3400010},
9251{0x3400000, 0xe73a5134, 0x80800002, 0xe73a5134, 0x3400010},
9252{0x3400000, 0xe73a5134, 0x81398437, 0xe73a5134, 0x3400010},
9253{0x3400000, 0xe73a5134, 0x8ba98d27, 0xe73a5134, 0x3400010},
9254{0x3400000, 0xe73a5134, 0x8ba98d7a, 0xe73a5134, 0x3400010},
9255{0x3400000, 0xe73a5134, 0xf51f853a, 0xf51f853a, 0x3400010},
9256{0x3400000, 0xe73a5134, 0xff7ffff0, 0xff7ffff0, 0x3400010},
9257{0x3400000, 0xe73a5134, 0xff7fffff, 0xff7fffff, 0x3400010},
9258{0x3400000, 0xe73a5134, 0xff800000, 0xff800000, 0x3400000},
9259{0x3400000, 0xe73a5134, 0xff800001, 0x7fc00000, 0x3400001},
9260{0x3400000, 0xe73a5134, 0xff984a37, 0x7fc00000, 0x3400001},
9261{0x3400000, 0xe73a5134, 0xffbfffff, 0x7fc00000, 0x3400001},
9262{0x3400000, 0xe73a5134, 0xffc00000, 0x7fc00000, 0x3400000},
9263{0x3400000, 0xe73a5134, 0xffd9ba98, 0x7fc00000, 0x3400000},
9264{0x3400000, 0xe73a5134, 0xffffffff, 0x7fc00000, 0x3400000},
9265{0x3400000, 0xe73a5134, 0x4f3495cb, 0xe73a5133, 0x3400010},
9266{0x3400000, 0xe73a5134, 0xe73a5134, 0xe7ba5134, 0x3400000},
9267{0x3400000, 0xe73a5134, 0x7c994e9e, 0x7c994e9e, 0x3400010},
9268{0x3400000, 0xe73a5134, 0x6164bd6c, 0xe73a42e8, 0x3400010},
9269{0x3400000, 0xe73a5134, 0x9503366, 0xe73a5133, 0x3400010},
9270{0x3400000, 0xe73a5134, 0xbf5a97c9, 0xe73a5134, 0x3400010},
9271{0x3400000, 0xe73a5134, 0xe6ff1a14, 0xe79cef1f, 0x3400000},
9272{0x3400000, 0xe73a5134, 0x77f31e2f, 0x77f31e2f, 0x3400010},
9273{0x3400000, 0xe73a5134, 0xaab4d7d8, 0xe73a5134, 0x3400010},
9274{0x3400000, 0xe73a5134, 0x966320b, 0xe73a5133, 0x3400010},
9275{0x3400000, 0xe73a5134, 0xb26bddee, 0xe73a5134, 0x3400010},
9276{0x3400000, 0xe73a5134, 0xb5c8e5d3, 0xe73a5134, 0x3400010},
9277{0x3400000, 0xe73a5134, 0x317285d3, 0xe73a5133, 0x3400010},
9278{0x3400000, 0xe73a5134, 0x3c9623b1, 0xe73a5133, 0x3400010},
9279{0x3400000, 0xe73a5134, 0x51fd2c7c, 0xe73a5133, 0x3400010},
9280{0x3400000, 0xe73a5134, 0x7b906a6c, 0x7b906a6c, 0x3400010},
9281{0x3400000, 0x7c994e9e, 0x0, 0x7c994e9e, 0x3400000},
9282{0x3400000, 0x7c994e9e, 0x1, 0x7c994e9e, 0x3400080},
9283{0x3400000, 0x7c994e9e, 0x76, 0x7c994e9e, 0x3400080},
9284{0x3400000, 0x7c994e9e, 0x2b94, 0x7c994e9e, 0x3400080},
9285{0x3400000, 0x7c994e9e, 0x636d24, 0x7c994e9e, 0x3400080},
9286{0x3400000, 0x7c994e9e, 0x7fffff, 0x7c994e9e, 0x3400080},
9287{0x3400000, 0x7c994e9e, 0x800000, 0x7c994e9f, 0x3400010},
9288{0x3400000, 0x7c994e9e, 0x800002, 0x7c994e9f, 0x3400010},
9289{0x3400000, 0x7c994e9e, 0x1398437, 0x7c994e9f, 0x3400010},
9290{0x3400000, 0x7c994e9e, 0xba98d27, 0x7c994e9f, 0x3400010},
9291{0x3400000, 0x7c994e9e, 0xba98d7a, 0x7c994e9f, 0x3400010},
9292{0x3400000, 0x7c994e9e, 0x751f853a, 0x7c994fde, 0x3400010},
9293{0x3400000, 0x7c994e9e, 0x7f7ffff0, 0x7f800000, 0x3400014},
9294{0x3400000, 0x7c994e9e, 0x7f7fffff, 0x7f800000, 0x3400014},
9295{0x3400000, 0x7c994e9e, 0x7f800000, 0x7f800000, 0x3400000},
9296{0x3400000, 0x7c994e9e, 0x7f800001, 0x7fc00000, 0x3400001},
9297{0x3400000, 0x7c994e9e, 0x7f984a37, 0x7fc00000, 0x3400001},
9298{0x3400000, 0x7c994e9e, 0x7fbfffff, 0x7fc00000, 0x3400001},
9299{0x3400000, 0x7c994e9e, 0x7fc00000, 0x7fc00000, 0x3400000},
9300{0x3400000, 0x7c994e9e, 0x7fd9ba98, 0x7fc00000, 0x3400000},
9301{0x3400000, 0x7c994e9e, 0x7fffffff, 0x7fc00000, 0x3400000},
9302{0x3400000, 0x7c994e9e, 0x80000000, 0x7c994e9e, 0x3400000},
9303{0x3400000, 0x7c994e9e, 0x80000001, 0x7c994e9e, 0x3400080},
9304{0x3400000, 0x7c994e9e, 0x80000076, 0x7c994e9e, 0x3400080},
9305{0x3400000, 0x7c994e9e, 0x80002b94, 0x7c994e9e, 0x3400080},
9306{0x3400000, 0x7c994e9e, 0x80636d24, 0x7c994e9e, 0x3400080},
9307{0x3400000, 0x7c994e9e, 0x807fffff, 0x7c994e9e, 0x3400080},
9308{0x3400000, 0x7c994e9e, 0x80800000, 0x7c994e9e, 0x3400010},
9309{0x3400000, 0x7c994e9e, 0x80800002, 0x7c994e9e, 0x3400010},
9310{0x3400000, 0x7c994e9e, 0x81398437, 0x7c994e9e, 0x3400010},
9311{0x3400000, 0x7c994e9e, 0x8ba98d27, 0x7c994e9e, 0x3400010},
9312{0x3400000, 0x7c994e9e, 0x8ba98d7a, 0x7c994e9e, 0x3400010},
9313{0x3400000, 0x7c994e9e, 0xf51f853a, 0x7c994d5f, 0x3400010},
9314{0x3400000, 0x7c994e9e, 0xff7ffff0, 0xff7b357b, 0x3400010},
9315{0x3400000, 0x7c994e9e, 0xff7fffff, 0xff7b358a, 0x3400010},
9316{0x3400000, 0x7c994e9e, 0xff800000, 0xff800000, 0x3400000},
9317{0x3400000, 0x7c994e9e, 0xff800001, 0x7fc00000, 0x3400001},
9318{0x3400000, 0x7c994e9e, 0xff984a37, 0x7fc00000, 0x3400001},
9319{0x3400000, 0x7c994e9e, 0xffbfffff, 0x7fc00000, 0x3400001},
9320{0x3400000, 0x7c994e9e, 0xffc00000, 0x7fc00000, 0x3400000},
9321{0x3400000, 0x7c994e9e, 0xffd9ba98, 0x7fc00000, 0x3400000},
9322{0x3400000, 0x7c994e9e, 0xffffffff, 0x7fc00000, 0x3400000},
9323{0x3400000, 0x7c994e9e, 0x4f3495cb, 0x7c994e9f, 0x3400010},
9324{0x3400000, 0x7c994e9e, 0xe73a5134, 0x7c994e9e, 0x3400010},
9325{0x3400000, 0x7c994e9e, 0x7c994e9e, 0x7d194e9e, 0x3400000},
9326{0x3400000, 0x7c994e9e, 0x6164bd6c, 0x7c994e9f, 0x3400010},
9327{0x3400000, 0x7c994e9e, 0x9503366, 0x7c994e9f, 0x3400010},
9328{0x3400000, 0x7c994e9e, 0xbf5a97c9, 0x7c994e9e, 0x3400010},
9329{0x3400000, 0x7c994e9e, 0xe6ff1a14, 0x7c994e9e, 0x3400010},
9330{0x3400000, 0x7c994e9e, 0x77f31e2f, 0x7c998b66, 0x3400010},
9331{0x3400000, 0x7c994e9e, 0xaab4d7d8, 0x7c994e9e, 0x3400010},
9332{0x3400000, 0x7c994e9e, 0x966320b, 0x7c994e9f, 0x3400010},
9333{0x3400000, 0x7c994e9e, 0xb26bddee, 0x7c994e9e, 0x3400010},
9334{0x3400000, 0x7c994e9e, 0xb5c8e5d3, 0x7c994e9e, 0x3400010},
9335{0x3400000, 0x7c994e9e, 0x317285d3, 0x7c994e9f, 0x3400010},
9336{0x3400000, 0x7c994e9e, 0x3c9623b1, 0x7c994e9f, 0x3400010},
9337{0x3400000, 0x7c994e9e, 0x51fd2c7c, 0x7c994e9f, 0x3400010},
9338{0x3400000, 0x7c994e9e, 0x7b906a6c, 0x7cbd6939, 0x3400000},
9339{0x3400000, 0x6164bd6c, 0x0, 0x6164bd6c, 0x3400000},
9340{0x3400000, 0x6164bd6c, 0x1, 0x6164bd6c, 0x3400080},
9341{0x3400000, 0x6164bd6c, 0x76, 0x6164bd6c, 0x3400080},
9342{0x3400000, 0x6164bd6c, 0x2b94, 0x6164bd6c, 0x3400080},
9343{0x3400000, 0x6164bd6c, 0x636d24, 0x6164bd6c, 0x3400080},
9344{0x3400000, 0x6164bd6c, 0x7fffff, 0x6164bd6c, 0x3400080},
9345{0x3400000, 0x6164bd6c, 0x800000, 0x6164bd6d, 0x3400010},
9346{0x3400000, 0x6164bd6c, 0x800002, 0x6164bd6d, 0x3400010},
9347{0x3400000, 0x6164bd6c, 0x1398437, 0x6164bd6d, 0x3400010},
9348{0x3400000, 0x6164bd6c, 0xba98d27, 0x6164bd6d, 0x3400010},
9349{0x3400000, 0x6164bd6c, 0xba98d7a, 0x6164bd6d, 0x3400010},
9350{0x3400000, 0x6164bd6c, 0x751f853a, 0x751f853b, 0x3400010},
9351{0x3400000, 0x6164bd6c, 0x7f7ffff0, 0x7f7ffff1, 0x3400010},
9352{0x3400000, 0x6164bd6c, 0x7f7fffff, 0x7f800000, 0x3400014},
9353{0x3400000, 0x6164bd6c, 0x7f800000, 0x7f800000, 0x3400000},
9354{0x3400000, 0x6164bd6c, 0x7f800001, 0x7fc00000, 0x3400001},
9355{0x3400000, 0x6164bd6c, 0x7f984a37, 0x7fc00000, 0x3400001},
9356{0x3400000, 0x6164bd6c, 0x7fbfffff, 0x7fc00000, 0x3400001},
9357{0x3400000, 0x6164bd6c, 0x7fc00000, 0x7fc00000, 0x3400000},
9358{0x3400000, 0x6164bd6c, 0x7fd9ba98, 0x7fc00000, 0x3400000},
9359{0x3400000, 0x6164bd6c, 0x7fffffff, 0x7fc00000, 0x3400000},
9360{0x3400000, 0x6164bd6c, 0x80000000, 0x6164bd6c, 0x3400000},
9361{0x3400000, 0x6164bd6c, 0x80000001, 0x6164bd6c, 0x3400080},
9362{0x3400000, 0x6164bd6c, 0x80000076, 0x6164bd6c, 0x3400080},
9363{0x3400000, 0x6164bd6c, 0x80002b94, 0x6164bd6c, 0x3400080},
9364{0x3400000, 0x6164bd6c, 0x80636d24, 0x6164bd6c, 0x3400080},
9365{0x3400000, 0x6164bd6c, 0x807fffff, 0x6164bd6c, 0x3400080},
9366{0x3400000, 0x6164bd6c, 0x80800000, 0x6164bd6c, 0x3400010},
9367{0x3400000, 0x6164bd6c, 0x80800002, 0x6164bd6c, 0x3400010},
9368{0x3400000, 0x6164bd6c, 0x81398437, 0x6164bd6c, 0x3400010},
9369{0x3400000, 0x6164bd6c, 0x8ba98d27, 0x6164bd6c, 0x3400010},
9370{0x3400000, 0x6164bd6c, 0x8ba98d7a, 0x6164bd6c, 0x3400010},
9371{0x3400000, 0x6164bd6c, 0xf51f853a, 0xf51f8539, 0x3400010},
9372{0x3400000, 0x6164bd6c, 0xff7ffff0, 0xff7fffef, 0x3400010},
9373{0x3400000, 0x6164bd6c, 0xff7fffff, 0xff7ffffe, 0x3400010},
9374{0x3400000, 0x6164bd6c, 0xff800000, 0xff800000, 0x3400000},
9375{0x3400000, 0x6164bd6c, 0xff800001, 0x7fc00000, 0x3400001},
9376{0x3400000, 0x6164bd6c, 0xff984a37, 0x7fc00000, 0x3400001},
9377{0x3400000, 0x6164bd6c, 0xffbfffff, 0x7fc00000, 0x3400001},
9378{0x3400000, 0x6164bd6c, 0xffc00000, 0x7fc00000, 0x3400000},
9379{0x3400000, 0x6164bd6c, 0xffd9ba98, 0x7fc00000, 0x3400000},
9380{0x3400000, 0x6164bd6c, 0xffffffff, 0x7fc00000, 0x3400000},
9381{0x3400000, 0x6164bd6c, 0x4f3495cb, 0x6164bd6d, 0x3400010},
9382{0x3400000, 0x6164bd6c, 0xe73a5134, 0xe73a42e8, 0x3400010},
9383{0x3400000, 0x6164bd6c, 0x7c994e9e, 0x7c994e9f, 0x3400010},
9384{0x3400000, 0x6164bd6c, 0x6164bd6c, 0x61e4bd6c, 0x3400000},
9385{0x3400000, 0x6164bd6c, 0x9503366, 0x6164bd6d, 0x3400010},
9386{0x3400000, 0x6164bd6c, 0xbf5a97c9, 0x6164bd6c, 0x3400010},
9387{0x3400000, 0x6164bd6c, 0xe6ff1a14, 0xe6fefd7c, 0x3400010},
9388{0x3400000, 0x6164bd6c, 0x77f31e2f, 0x77f31e30, 0x3400010},
9389{0x3400000, 0x6164bd6c, 0xaab4d7d8, 0x6164bd6c, 0x3400010},
9390{0x3400000, 0x6164bd6c, 0x966320b, 0x6164bd6d, 0x3400010},
9391{0x3400000, 0x6164bd6c, 0xb26bddee, 0x6164bd6c, 0x3400010},
9392{0x3400000, 0x6164bd6c, 0xb5c8e5d3, 0x6164bd6c, 0x3400010},
9393{0x3400000, 0x6164bd6c, 0x317285d3, 0x6164bd6d, 0x3400010},
9394{0x3400000, 0x6164bd6c, 0x3c9623b1, 0x6164bd6d, 0x3400010},
9395{0x3400000, 0x6164bd6c, 0x51fd2c7c, 0x6164bd6d, 0x3400010},
9396{0x3400000, 0x6164bd6c, 0x7b906a6c, 0x7b906a6d, 0x3400010},
9397{0x3400000, 0x9503366, 0x0, 0x9503366, 0x3400000},
9398{0x3400000, 0x9503366, 0x1, 0x9503366, 0x3400080},
9399{0x3400000, 0x9503366, 0x76, 0x9503366, 0x3400080},
9400{0x3400000, 0x9503366, 0x2b94, 0x9503366, 0x3400080},
9401{0x3400000, 0x9503366, 0x636d24, 0x9503366, 0x3400080},
9402{0x3400000, 0x9503366, 0x7fffff, 0x9503366, 0x3400080},
9403{0x3400000, 0x9503366, 0x800000, 0x95033a6, 0x3400000},
9404{0x3400000, 0x9503366, 0x800002, 0x95033a7, 0x3400010},
9405{0x3400000, 0x9503366, 0x1398437, 0x9503420, 0x3400010},
9406{0x3400000, 0x9503366, 0xba98d27, 0xbb00ec3, 0x3400010},
9407{0x3400000, 0x9503366, 0xba98d7a, 0xbb00f16, 0x3400010},
9408{0x3400000, 0x9503366, 0x751f853a, 0x751f853b, 0x3400010},
9409{0x3400000, 0x9503366, 0x7f7ffff0, 0x7f7ffff1, 0x3400010},
9410{0x3400000, 0x9503366, 0x7f7fffff, 0x7f800000, 0x3400014},
9411{0x3400000, 0x9503366, 0x7f800000, 0x7f800000, 0x3400000},
9412{0x3400000, 0x9503366, 0x7f800001, 0x7fc00000, 0x3400001},
9413{0x3400000, 0x9503366, 0x7f984a37, 0x7fc00000, 0x3400001},
9414{0x3400000, 0x9503366, 0x7fbfffff, 0x7fc00000, 0x3400001},
9415{0x3400000, 0x9503366, 0x7fc00000, 0x7fc00000, 0x3400000},
9416{0x3400000, 0x9503366, 0x7fd9ba98, 0x7fc00000, 0x3400000},
9417{0x3400000, 0x9503366, 0x7fffffff, 0x7fc00000, 0x3400000},
9418{0x3400000, 0x9503366, 0x80000000, 0x9503366, 0x3400000},
9419{0x3400000, 0x9503366, 0x80000001, 0x9503366, 0x3400080},
9420{0x3400000, 0x9503366, 0x80000076, 0x9503366, 0x3400080},
9421{0x3400000, 0x9503366, 0x80002b94, 0x9503366, 0x3400080},
9422{0x3400000, 0x9503366, 0x80636d24, 0x9503366, 0x3400080},
9423{0x3400000, 0x9503366, 0x807fffff, 0x9503366, 0x3400080},
9424{0x3400000, 0x9503366, 0x80800000, 0x9503326, 0x3400000},
9425{0x3400000, 0x9503366, 0x80800002, 0x9503326, 0x3400010},
9426{0x3400000, 0x9503366, 0x81398437, 0x95032ad, 0x3400010},
9427{0x3400000, 0x9503366, 0x8ba98d27, 0x8ba30b8b, 0x3400010},
9428{0x3400000, 0x9503366, 0x8ba98d7a, 0x8ba30bde, 0x3400010},
9429{0x3400000, 0x9503366, 0xf51f853a, 0xf51f8539, 0x3400010},
9430{0x3400000, 0x9503366, 0xff7ffff0, 0xff7fffef, 0x3400010},
9431{0x3400000, 0x9503366, 0xff7fffff, 0xff7ffffe, 0x3400010},
9432{0x3400000, 0x9503366, 0xff800000, 0xff800000, 0x3400000},
9433{0x3400000, 0x9503366, 0xff800001, 0x7fc00000, 0x3400001},
9434{0x3400000, 0x9503366, 0xff984a37, 0x7fc00000, 0x3400001},
9435{0x3400000, 0x9503366, 0xffbfffff, 0x7fc00000, 0x3400001},
9436{0x3400000, 0x9503366, 0xffc00000, 0x7fc00000, 0x3400000},
9437{0x3400000, 0x9503366, 0xffd9ba98, 0x7fc00000, 0x3400000},
9438{0x3400000, 0x9503366, 0xffffffff, 0x7fc00000, 0x3400000},
9439{0x3400000, 0x9503366, 0x4f3495cb, 0x4f3495cc, 0x3400010},
9440{0x3400000, 0x9503366, 0xe73a5134, 0xe73a5133, 0x3400010},
9441{0x3400000, 0x9503366, 0x7c994e9e, 0x7c994e9f, 0x3400010},
9442{0x3400000, 0x9503366, 0x6164bd6c, 0x6164bd6d, 0x3400010},
9443{0x3400000, 0x9503366, 0x9503366, 0x9d03366, 0x3400000},
9444{0x3400000, 0x9503366, 0xbf5a97c9, 0xbf5a97c8, 0x3400010},
9445{0x3400000, 0x9503366, 0xe6ff1a14, 0xe6ff1a13, 0x3400010},
9446{0x3400000, 0x9503366, 0x77f31e2f, 0x77f31e30, 0x3400010},
9447{0x3400000, 0x9503366, 0xaab4d7d8, 0xaab4d7d7, 0x3400010},
9448{0x3400000, 0x9503366, 0x966320b, 0x9db32b9, 0x3400010},
9449{0x3400000, 0x9503366, 0xb26bddee, 0xb26bdded, 0x3400010},
9450{0x3400000, 0x9503366, 0xb5c8e5d3, 0xb5c8e5d2, 0x3400010},
9451{0x3400000, 0x9503366, 0x317285d3, 0x317285d4, 0x3400010},
9452{0x3400000, 0x9503366, 0x3c9623b1, 0x3c9623b2, 0x3400010},
9453{0x3400000, 0x9503366, 0x51fd2c7c, 0x51fd2c7d, 0x3400010},
9454{0x3400000, 0x9503366, 0x7b906a6c, 0x7b906a6d, 0x3400010},
9455{0x3400000, 0xbf5a97c9, 0x0, 0xbf5a97c9, 0x3400000},
9456{0x3400000, 0xbf5a97c9, 0x1, 0xbf5a97c9, 0x3400080},
9457{0x3400000, 0xbf5a97c9, 0x76, 0xbf5a97c9, 0x3400080},
9458{0x3400000, 0xbf5a97c9, 0x2b94, 0xbf5a97c9, 0x3400080},
9459{0x3400000, 0xbf5a97c9, 0x636d24, 0xbf5a97c9, 0x3400080},
9460{0x3400000, 0xbf5a97c9, 0x7fffff, 0xbf5a97c9, 0x3400080},
9461{0x3400000, 0xbf5a97c9, 0x800000, 0xbf5a97c8, 0x3400010},
9462{0x3400000, 0xbf5a97c9, 0x800002, 0xbf5a97c8, 0x3400010},
9463{0x3400000, 0xbf5a97c9, 0x1398437, 0xbf5a97c8, 0x3400010},
9464{0x3400000, 0xbf5a97c9, 0xba98d27, 0xbf5a97c8, 0x3400010},
9465{0x3400000, 0xbf5a97c9, 0xba98d7a, 0xbf5a97c8, 0x3400010},
9466{0x3400000, 0xbf5a97c9, 0x751f853a, 0x751f853a, 0x3400010},
9467{0x3400000, 0xbf5a97c9, 0x7f7ffff0, 0x7f7ffff0, 0x3400010},
9468{0x3400000, 0xbf5a97c9, 0x7f7fffff, 0x7f7fffff, 0x3400010},
9469{0x3400000, 0xbf5a97c9, 0x7f800000, 0x7f800000, 0x3400000},
9470{0x3400000, 0xbf5a97c9, 0x7f800001, 0x7fc00000, 0x3400001},
9471{0x3400000, 0xbf5a97c9, 0x7f984a37, 0x7fc00000, 0x3400001},
9472{0x3400000, 0xbf5a97c9, 0x7fbfffff, 0x7fc00000, 0x3400001},
9473{0x3400000, 0xbf5a97c9, 0x7fc00000, 0x7fc00000, 0x3400000},
9474{0x3400000, 0xbf5a97c9, 0x7fd9ba98, 0x7fc00000, 0x3400000},
9475{0x3400000, 0xbf5a97c9, 0x7fffffff, 0x7fc00000, 0x3400000},
9476{0x3400000, 0xbf5a97c9, 0x80000000, 0xbf5a97c9, 0x3400000},
9477{0x3400000, 0xbf5a97c9, 0x80000001, 0xbf5a97c9, 0x3400080},
9478{0x3400000, 0xbf5a97c9, 0x80000076, 0xbf5a97c9, 0x3400080},
9479{0x3400000, 0xbf5a97c9, 0x80002b94, 0xbf5a97c9, 0x3400080},
9480{0x3400000, 0xbf5a97c9, 0x80636d24, 0xbf5a97c9, 0x3400080},
9481{0x3400000, 0xbf5a97c9, 0x807fffff, 0xbf5a97c9, 0x3400080},
9482{0x3400000, 0xbf5a97c9, 0x80800000, 0xbf5a97c9, 0x3400010},
9483{0x3400000, 0xbf5a97c9, 0x80800002, 0xbf5a97c9, 0x3400010},
9484{0x3400000, 0xbf5a97c9, 0x81398437, 0xbf5a97c9, 0x3400010},
9485{0x3400000, 0xbf5a97c9, 0x8ba98d27, 0xbf5a97c9, 0x3400010},
9486{0x3400000, 0xbf5a97c9, 0x8ba98d7a, 0xbf5a97c9, 0x3400010},
9487{0x3400000, 0xbf5a97c9, 0xf51f853a, 0xf51f853a, 0x3400010},
9488{0x3400000, 0xbf5a97c9, 0xff7ffff0, 0xff7ffff0, 0x3400010},
9489{0x3400000, 0xbf5a97c9, 0xff7fffff, 0xff7fffff, 0x3400010},
9490{0x3400000, 0xbf5a97c9, 0xff800000, 0xff800000, 0x3400000},
9491{0x3400000, 0xbf5a97c9, 0xff800001, 0x7fc00000, 0x3400001},
9492{0x3400000, 0xbf5a97c9, 0xff984a37, 0x7fc00000, 0x3400001},
9493{0x3400000, 0xbf5a97c9, 0xffbfffff, 0x7fc00000, 0x3400001},
9494{0x3400000, 0xbf5a97c9, 0xffc00000, 0x7fc00000, 0x3400000},
9495{0x3400000, 0xbf5a97c9, 0xffd9ba98, 0x7fc00000, 0x3400000},
9496{0x3400000, 0xbf5a97c9, 0xffffffff, 0x7fc00000, 0x3400000},
9497{0x3400000, 0xbf5a97c9, 0x4f3495cb, 0x4f3495cb, 0x3400010},
9498{0x3400000, 0xbf5a97c9, 0xe73a5134, 0xe73a5134, 0x3400010},
9499{0x3400000, 0xbf5a97c9, 0x7c994e9e, 0x7c994e9e, 0x3400010},
9500{0x3400000, 0xbf5a97c9, 0x6164bd6c, 0x6164bd6c, 0x3400010},
9501{0x3400000, 0xbf5a97c9, 0x9503366, 0xbf5a97c8, 0x3400010},
9502{0x3400000, 0xbf5a97c9, 0xbf5a97c9, 0xbfda97c9, 0x3400000},
9503{0x3400000, 0xbf5a97c9, 0xe6ff1a14, 0xe6ff1a14, 0x3400010},
9504{0x3400000, 0xbf5a97c9, 0x77f31e2f, 0x77f31e2f, 0x3400010},
9505{0x3400000, 0xbf5a97c9, 0xaab4d7d8, 0xbf5a97c9, 0x3400010},
9506{0x3400000, 0xbf5a97c9, 0x966320b, 0xbf5a97c8, 0x3400010},
9507{0x3400000, 0xbf5a97c9, 0xb26bddee, 0xbf5a97c9, 0x3400010},
9508{0x3400000, 0xbf5a97c9, 0xb5c8e5d3, 0xbf5a97e2, 0x3400010},
9509{0x3400000, 0xbf5a97c9, 0x317285d3, 0xbf5a97c8, 0x3400010},
9510{0x3400000, 0xbf5a97c9, 0x3c9623b1, 0xbf55e6ab, 0x3400010},
9511{0x3400000, 0xbf5a97c9, 0x51fd2c7c, 0x51fd2c7c, 0x3400010},
9512{0x3400000, 0xbf5a97c9, 0x7b906a6c, 0x7b906a6c, 0x3400010},
9513{0x3400000, 0xe6ff1a14, 0x0, 0xe6ff1a14, 0x3400000},
9514{0x3400000, 0xe6ff1a14, 0x1, 0xe6ff1a14, 0x3400080},
9515{0x3400000, 0xe6ff1a14, 0x76, 0xe6ff1a14, 0x3400080},
9516{0x3400000, 0xe6ff1a14, 0x2b94, 0xe6ff1a14, 0x3400080},
9517{0x3400000, 0xe6ff1a14, 0x636d24, 0xe6ff1a14, 0x3400080},
9518{0x3400000, 0xe6ff1a14, 0x7fffff, 0xe6ff1a14, 0x3400080},
9519{0x3400000, 0xe6ff1a14, 0x800000, 0xe6ff1a13, 0x3400010},
9520{0x3400000, 0xe6ff1a14, 0x800002, 0xe6ff1a13, 0x3400010},
9521{0x3400000, 0xe6ff1a14, 0x1398437, 0xe6ff1a13, 0x3400010},
9522{0x3400000, 0xe6ff1a14, 0xba98d27, 0xe6ff1a13, 0x3400010},
9523{0x3400000, 0xe6ff1a14, 0xba98d7a, 0xe6ff1a13, 0x3400010},
9524{0x3400000, 0xe6ff1a14, 0x751f853a, 0x751f853a, 0x3400010},
9525{0x3400000, 0xe6ff1a14, 0x7f7ffff0, 0x7f7ffff0, 0x3400010},
9526{0x3400000, 0xe6ff1a14, 0x7f7fffff, 0x7f7fffff, 0x3400010},
9527{0x3400000, 0xe6ff1a14, 0x7f800000, 0x7f800000, 0x3400000},
9528{0x3400000, 0xe6ff1a14, 0x7f800001, 0x7fc00000, 0x3400001},
9529{0x3400000, 0xe6ff1a14, 0x7f984a37, 0x7fc00000, 0x3400001},
9530{0x3400000, 0xe6ff1a14, 0x7fbfffff, 0x7fc00000, 0x3400001},
9531{0x3400000, 0xe6ff1a14, 0x7fc00000, 0x7fc00000, 0x3400000},
9532{0x3400000, 0xe6ff1a14, 0x7fd9ba98, 0x7fc00000, 0x3400000},
9533{0x3400000, 0xe6ff1a14, 0x7fffffff, 0x7fc00000, 0x3400000},
9534{0x3400000, 0xe6ff1a14, 0x80000000, 0xe6ff1a14, 0x3400000},
9535{0x3400000, 0xe6ff1a14, 0x80000001, 0xe6ff1a14, 0x3400080},
9536{0x3400000, 0xe6ff1a14, 0x80000076, 0xe6ff1a14, 0x3400080},
9537{0x3400000, 0xe6ff1a14, 0x80002b94, 0xe6ff1a14, 0x3400080},
9538{0x3400000, 0xe6ff1a14, 0x80636d24, 0xe6ff1a14, 0x3400080},
9539{0x3400000, 0xe6ff1a14, 0x807fffff, 0xe6ff1a14, 0x3400080},
9540{0x3400000, 0xe6ff1a14, 0x80800000, 0xe6ff1a14, 0x3400010},
9541{0x3400000, 0xe6ff1a14, 0x80800002, 0xe6ff1a14, 0x3400010},
9542{0x3400000, 0xe6ff1a14, 0x81398437, 0xe6ff1a14, 0x3400010},
9543{0x3400000, 0xe6ff1a14, 0x8ba98d27, 0xe6ff1a14, 0x3400010},
9544{0x3400000, 0xe6ff1a14, 0x8ba98d7a, 0xe6ff1a14, 0x3400010},
9545{0x3400000, 0xe6ff1a14, 0xf51f853a, 0xf51f853a, 0x3400010},
9546{0x3400000, 0xe6ff1a14, 0xff7ffff0, 0xff7ffff0, 0x3400010},
9547{0x3400000, 0xe6ff1a14, 0xff7fffff, 0xff7fffff, 0x3400010},
9548{0x3400000, 0xe6ff1a14, 0xff800000, 0xff800000, 0x3400000},
9549{0x3400000, 0xe6ff1a14, 0xff800001, 0x7fc00000, 0x3400001},
9550{0x3400000, 0xe6ff1a14, 0xff984a37, 0x7fc00000, 0x3400001},
9551{0x3400000, 0xe6ff1a14, 0xffbfffff, 0x7fc00000, 0x3400001},
9552{0x3400000, 0xe6ff1a14, 0xffc00000, 0x7fc00000, 0x3400000},
9553{0x3400000, 0xe6ff1a14, 0xffd9ba98, 0x7fc00000, 0x3400000},
9554{0x3400000, 0xe6ff1a14, 0xffffffff, 0x7fc00000, 0x3400000},
9555{0x3400000, 0xe6ff1a14, 0x4f3495cb, 0xe6ff1a13, 0x3400010},
9556{0x3400000, 0xe6ff1a14, 0xe73a5134, 0xe79cef1f, 0x3400000},
9557{0x3400000, 0xe6ff1a14, 0x7c994e9e, 0x7c994e9e, 0x3400010},
9558{0x3400000, 0xe6ff1a14, 0x6164bd6c, 0xe6fefd7c, 0x3400010},
9559{0x3400000, 0xe6ff1a14, 0x9503366, 0xe6ff1a13, 0x3400010},
9560{0x3400000, 0xe6ff1a14, 0xbf5a97c9, 0xe6ff1a14, 0x3400010},
9561{0x3400000, 0xe6ff1a14, 0xe6ff1a14, 0xe77f1a14, 0x3400000},
9562{0x3400000, 0xe6ff1a14, 0x77f31e2f, 0x77f31e2f, 0x3400010},
9563{0x3400000, 0xe6ff1a14, 0xaab4d7d8, 0xe6ff1a14, 0x3400010},
9564{0x3400000, 0xe6ff1a14, 0x966320b, 0xe6ff1a13, 0x3400010},
9565{0x3400000, 0xe6ff1a14, 0xb26bddee, 0xe6ff1a14, 0x3400010},
9566{0x3400000, 0xe6ff1a14, 0xb5c8e5d3, 0xe6ff1a14, 0x3400010},
9567{0x3400000, 0xe6ff1a14, 0x317285d3, 0xe6ff1a13, 0x3400010},
9568{0x3400000, 0xe6ff1a14, 0x3c9623b1, 0xe6ff1a13, 0x3400010},
9569{0x3400000, 0xe6ff1a14, 0x51fd2c7c, 0xe6ff1a13, 0x3400010},
9570{0x3400000, 0xe6ff1a14, 0x7b906a6c, 0x7b906a6c, 0x3400010},
9571{0x3400000, 0x77f31e2f, 0x0, 0x77f31e2f, 0x3400000},
9572{0x3400000, 0x77f31e2f, 0x1, 0x77f31e2f, 0x3400080},
9573{0x3400000, 0x77f31e2f, 0x76, 0x77f31e2f, 0x3400080},
9574{0x3400000, 0x77f31e2f, 0x2b94, 0x77f31e2f, 0x3400080},
9575{0x3400000, 0x77f31e2f, 0x636d24, 0x77f31e2f, 0x3400080},
9576{0x3400000, 0x77f31e2f, 0x7fffff, 0x77f31e2f, 0x3400080},
9577{0x3400000, 0x77f31e2f, 0x800000, 0x77f31e30, 0x3400010},
9578{0x3400000, 0x77f31e2f, 0x800002, 0x77f31e30, 0x3400010},
9579{0x3400000, 0x77f31e2f, 0x1398437, 0x77f31e30, 0x3400010},
9580{0x3400000, 0x77f31e2f, 0xba98d27, 0x77f31e30, 0x3400010},
9581{0x3400000, 0x77f31e2f, 0xba98d7a, 0x77f31e30, 0x3400010},
9582{0x3400000, 0x77f31e2f, 0x751f853a, 0x77f81a59, 0x3400010},
9583{0x3400000, 0x77f31e2f, 0x7f7ffff0, 0x7f800000, 0x3400014},
9584{0x3400000, 0x77f31e2f, 0x7f7fffff, 0x7f800000, 0x3400014},
9585{0x3400000, 0x77f31e2f, 0x7f800000, 0x7f800000, 0x3400000},
9586{0x3400000, 0x77f31e2f, 0x7f800001, 0x7fc00000, 0x3400001},
9587{0x3400000, 0x77f31e2f, 0x7f984a37, 0x7fc00000, 0x3400001},
9588{0x3400000, 0x77f31e2f, 0x7fbfffff, 0x7fc00000, 0x3400001},
9589{0x3400000, 0x77f31e2f, 0x7fc00000, 0x7fc00000, 0x3400000},
9590{0x3400000, 0x77f31e2f, 0x7fd9ba98, 0x7fc00000, 0x3400000},
9591{0x3400000, 0x77f31e2f, 0x7fffffff, 0x7fc00000, 0x3400000},
9592{0x3400000, 0x77f31e2f, 0x80000000, 0x77f31e2f, 0x3400000},
9593{0x3400000, 0x77f31e2f, 0x80000001, 0x77f31e2f, 0x3400080},
9594{0x3400000, 0x77f31e2f, 0x80000076, 0x77f31e2f, 0x3400080},
9595{0x3400000, 0x77f31e2f, 0x80002b94, 0x77f31e2f, 0x3400080},
9596{0x3400000, 0x77f31e2f, 0x80636d24, 0x77f31e2f, 0x3400080},
9597{0x3400000, 0x77f31e2f, 0x807fffff, 0x77f31e2f, 0x3400080},
9598{0x3400000, 0x77f31e2f, 0x80800000, 0x77f31e2f, 0x3400010},
9599{0x3400000, 0x77f31e2f, 0x80800002, 0x77f31e2f, 0x3400010},
9600{0x3400000, 0x77f31e2f, 0x81398437, 0x77f31e2f, 0x3400010},
9601{0x3400000, 0x77f31e2f, 0x8ba98d27, 0x77f31e2f, 0x3400010},
9602{0x3400000, 0x77f31e2f, 0x8ba98d7a, 0x77f31e2f, 0x3400010},
9603{0x3400000, 0x77f31e2f, 0xf51f853a, 0x77ee2206, 0x3400010},
9604{0x3400000, 0x77f31e2f, 0xff7ffff0, 0xff7ffe09, 0x3400010},
9605{0x3400000, 0x77f31e2f, 0xff7fffff, 0xff7ffe18, 0x3400010},
9606{0x3400000, 0x77f31e2f, 0xff800000, 0xff800000, 0x3400000},
9607{0x3400000, 0x77f31e2f, 0xff800001, 0x7fc00000, 0x3400001},
9608{0x3400000, 0x77f31e2f, 0xff984a37, 0x7fc00000, 0x3400001},
9609{0x3400000, 0x77f31e2f, 0xffbfffff, 0x7fc00000, 0x3400001},
9610{0x3400000, 0x77f31e2f, 0xffc00000, 0x7fc00000, 0x3400000},
9611{0x3400000, 0x77f31e2f, 0xffd9ba98, 0x7fc00000, 0x3400000},
9612{0x3400000, 0x77f31e2f, 0xffffffff, 0x7fc00000, 0x3400000},
9613{0x3400000, 0x77f31e2f, 0x4f3495cb, 0x77f31e30, 0x3400010},
9614{0x3400000, 0x77f31e2f, 0xe73a5134, 0x77f31e2f, 0x3400010},
9615{0x3400000, 0x77f31e2f, 0x7c994e9e, 0x7c998b66, 0x3400010},
9616{0x3400000, 0x77f31e2f, 0x6164bd6c, 0x77f31e30, 0x3400010},
9617{0x3400000, 0x77f31e2f, 0x9503366, 0x77f31e30, 0x3400010},
9618{0x3400000, 0x77f31e2f, 0xbf5a97c9, 0x77f31e2f, 0x3400010},
9619{0x3400000, 0x77f31e2f, 0xe6ff1a14, 0x77f31e2f, 0x3400010},
9620{0x3400000, 0x77f31e2f, 0x77f31e2f, 0x78731e2f, 0x3400000},
9621{0x3400000, 0x77f31e2f, 0xaab4d7d8, 0x77f31e2f, 0x3400010},
9622{0x3400000, 0x77f31e2f, 0x966320b, 0x77f31e30, 0x3400010},
9623{0x3400000, 0x77f31e2f, 0xb26bddee, 0x77f31e2f, 0x3400010},
9624{0x3400000, 0x77f31e2f, 0xb5c8e5d3, 0x77f31e2f, 0x3400010},
9625{0x3400000, 0x77f31e2f, 0x317285d3, 0x77f31e30, 0x3400010},
9626{0x3400000, 0x77f31e2f, 0x3c9623b1, 0x77f31e30, 0x3400010},
9627{0x3400000, 0x77f31e2f, 0x51fd2c7c, 0x77f31e30, 0x3400010},
9628{0x3400000, 0x77f31e2f, 0x7b906a6c, 0x7b915d8b, 0x3400010},
9629{0x3400000, 0xaab4d7d8, 0x0, 0xaab4d7d8, 0x3400000},
9630{0x3400000, 0xaab4d7d8, 0x1, 0xaab4d7d8, 0x3400080},
9631{0x3400000, 0xaab4d7d8, 0x76, 0xaab4d7d8, 0x3400080},
9632{0x3400000, 0xaab4d7d8, 0x2b94, 0xaab4d7d8, 0x3400080},
9633{0x3400000, 0xaab4d7d8, 0x636d24, 0xaab4d7d8, 0x3400080},
9634{0x3400000, 0xaab4d7d8, 0x7fffff, 0xaab4d7d8, 0x3400080},
9635{0x3400000, 0xaab4d7d8, 0x800000, 0xaab4d7d7, 0x3400010},
9636{0x3400000, 0xaab4d7d8, 0x800002, 0xaab4d7d7, 0x3400010},
9637{0x3400000, 0xaab4d7d8, 0x1398437, 0xaab4d7d7, 0x3400010},
9638{0x3400000, 0xaab4d7d8, 0xba98d27, 0xaab4d7d7, 0x3400010},
9639{0x3400000, 0xaab4d7d8, 0xba98d7a, 0xaab4d7d7, 0x3400010},
9640{0x3400000, 0xaab4d7d8, 0x751f853a, 0x751f853a, 0x3400010},
9641{0x3400000, 0xaab4d7d8, 0x7f7ffff0, 0x7f7ffff0, 0x3400010},
9642{0x3400000, 0xaab4d7d8, 0x7f7fffff, 0x7f7fffff, 0x3400010},
9643{0x3400000, 0xaab4d7d8, 0x7f800000, 0x7f800000, 0x3400000},
9644{0x3400000, 0xaab4d7d8, 0x7f800001, 0x7fc00000, 0x3400001},
9645{0x3400000, 0xaab4d7d8, 0x7f984a37, 0x7fc00000, 0x3400001},
9646{0x3400000, 0xaab4d7d8, 0x7fbfffff, 0x7fc00000, 0x3400001},
9647{0x3400000, 0xaab4d7d8, 0x7fc00000, 0x7fc00000, 0x3400000},
9648{0x3400000, 0xaab4d7d8, 0x7fd9ba98, 0x7fc00000, 0x3400000},
9649{0x3400000, 0xaab4d7d8, 0x7fffffff, 0x7fc00000, 0x3400000},
9650{0x3400000, 0xaab4d7d8, 0x80000000, 0xaab4d7d8, 0x3400000},
9651{0x3400000, 0xaab4d7d8, 0x80000001, 0xaab4d7d8, 0x3400080},
9652{0x3400000, 0xaab4d7d8, 0x80000076, 0xaab4d7d8, 0x3400080},
9653{0x3400000, 0xaab4d7d8, 0x80002b94, 0xaab4d7d8, 0x3400080},
9654{0x3400000, 0xaab4d7d8, 0x80636d24, 0xaab4d7d8, 0x3400080},
9655{0x3400000, 0xaab4d7d8, 0x807fffff, 0xaab4d7d8, 0x3400080},
9656{0x3400000, 0xaab4d7d8, 0x80800000, 0xaab4d7d8, 0x3400010},
9657{0x3400000, 0xaab4d7d8, 0x80800002, 0xaab4d7d8, 0x3400010},
9658{0x3400000, 0xaab4d7d8, 0x81398437, 0xaab4d7d8, 0x3400010},
9659{0x3400000, 0xaab4d7d8, 0x8ba98d27, 0xaab4d7d8, 0x3400010},
9660{0x3400000, 0xaab4d7d8, 0x8ba98d7a, 0xaab4d7d8, 0x3400010},
9661{0x3400000, 0xaab4d7d8, 0xf51f853a, 0xf51f853a, 0x3400010},
9662{0x3400000, 0xaab4d7d8, 0xff7ffff0, 0xff7ffff0, 0x3400010},
9663{0x3400000, 0xaab4d7d8, 0xff7fffff, 0xff7fffff, 0x3400010},
9664{0x3400000, 0xaab4d7d8, 0xff800000, 0xff800000, 0x3400000},
9665{0x3400000, 0xaab4d7d8, 0xff800001, 0x7fc00000, 0x3400001},
9666{0x3400000, 0xaab4d7d8, 0xff984a37, 0x7fc00000, 0x3400001},
9667{0x3400000, 0xaab4d7d8, 0xffbfffff, 0x7fc00000, 0x3400001},
9668{0x3400000, 0xaab4d7d8, 0xffc00000, 0x7fc00000, 0x3400000},
9669{0x3400000, 0xaab4d7d8, 0xffd9ba98, 0x7fc00000, 0x3400000},
9670{0x3400000, 0xaab4d7d8, 0xffffffff, 0x7fc00000, 0x3400000},
9671{0x3400000, 0xaab4d7d8, 0x4f3495cb, 0x4f3495cb, 0x3400010},
9672{0x3400000, 0xaab4d7d8, 0xe73a5134, 0xe73a5134, 0x3400010},
9673{0x3400000, 0xaab4d7d8, 0x7c994e9e, 0x7c994e9e, 0x3400010},
9674{0x3400000, 0xaab4d7d8, 0x6164bd6c, 0x6164bd6c, 0x3400010},
9675{0x3400000, 0xaab4d7d8, 0x9503366, 0xaab4d7d7, 0x3400010},
9676{0x3400000, 0xaab4d7d8, 0xbf5a97c9, 0xbf5a97c9, 0x3400010},
9677{0x3400000, 0xaab4d7d8, 0xe6ff1a14, 0xe6ff1a14, 0x3400010},
9678{0x3400000, 0xaab4d7d8, 0x77f31e2f, 0x77f31e2f, 0x3400010},
9679{0x3400000, 0xaab4d7d8, 0xaab4d7d8, 0xab34d7d8, 0x3400000},
9680{0x3400000, 0xaab4d7d8, 0x966320b, 0xaab4d7d7, 0x3400010},
9681{0x3400000, 0xaab4d7d8, 0xb26bddee, 0xb26bdf57, 0x3400010},
9682{0x3400000, 0xaab4d7d8, 0xb5c8e5d3, 0xb5c8e5d5, 0x3400010},
9683{0x3400000, 0xaab4d7d8, 0x317285d3, 0x3172802d, 0x3400010},
9684{0x3400000, 0xaab4d7d8, 0x3c9623b1, 0x3c9623b1, 0x3400010},
9685{0x3400000, 0xaab4d7d8, 0x51fd2c7c, 0x51fd2c7c, 0x3400010},
9686{0x3400000, 0xaab4d7d8, 0x7b906a6c, 0x7b906a6c, 0x3400010},
9687{0x3400000, 0x966320b, 0x0, 0x966320b, 0x3400000},
9688{0x3400000, 0x966320b, 0x1, 0x966320b, 0x3400080},
9689{0x3400000, 0x966320b, 0x76, 0x966320b, 0x3400080},
9690{0x3400000, 0x966320b, 0x2b94, 0x966320b, 0x3400080},
9691{0x3400000, 0x966320b, 0x636d24, 0x966320b, 0x3400080},
9692{0x3400000, 0x966320b, 0x7fffff, 0x966320b, 0x3400080},
9693{0x3400000, 0x966320b, 0x800000, 0x966324b, 0x3400000},
9694{0x3400000, 0x966320b, 0x800002, 0x966324c, 0x3400010},
9695{0x3400000, 0x966320b, 0x1398437, 0x96632c5, 0x3400010},
9696{0x3400000, 0x966320b, 0xba98d27, 0xbb0beb8, 0x3400010},
9697{0x3400000, 0x966320b, 0xba98d7a, 0xbb0bf0b, 0x3400010},
9698{0x3400000, 0x966320b, 0x751f853a, 0x751f853b, 0x3400010},
9699{0x3400000, 0x966320b, 0x7f7ffff0, 0x7f7ffff1, 0x3400010},
9700{0x3400000, 0x966320b, 0x7f7fffff, 0x7f800000, 0x3400014},
9701{0x3400000, 0x966320b, 0x7f800000, 0x7f800000, 0x3400000},
9702{0x3400000, 0x966320b, 0x7f800001, 0x7fc00000, 0x3400001},
9703{0x3400000, 0x966320b, 0x7f984a37, 0x7fc00000, 0x3400001},
9704{0x3400000, 0x966320b, 0x7fbfffff, 0x7fc00000, 0x3400001},
9705{0x3400000, 0x966320b, 0x7fc00000, 0x7fc00000, 0x3400000},
9706{0x3400000, 0x966320b, 0x7fd9ba98, 0x7fc00000, 0x3400000},
9707{0x3400000, 0x966320b, 0x7fffffff, 0x7fc00000, 0x3400000},
9708{0x3400000, 0x966320b, 0x80000000, 0x966320b, 0x3400000},
9709{0x3400000, 0x966320b, 0x80000001, 0x966320b, 0x3400080},
9710{0x3400000, 0x966320b, 0x80000076, 0x966320b, 0x3400080},
9711{0x3400000, 0x966320b, 0x80002b94, 0x966320b, 0x3400080},
9712{0x3400000, 0x966320b, 0x80636d24, 0x966320b, 0x3400080},
9713{0x3400000, 0x966320b, 0x807fffff, 0x966320b, 0x3400080},
9714{0x3400000, 0x966320b, 0x80800000, 0x96631cb, 0x3400000},
9715{0x3400000, 0x966320b, 0x80800002, 0x96631cb, 0x3400010},
9716{0x3400000, 0x966320b, 0x81398437, 0x9663152, 0x3400010},
9717{0x3400000, 0x966320b, 0x8ba98d27, 0x8ba25b96, 0x3400010},
9718{0x3400000, 0x966320b, 0x8ba98d7a, 0x8ba25be9, 0x3400010},
9719{0x3400000, 0x966320b, 0xf51f853a, 0xf51f8539, 0x3400010},
9720{0x3400000, 0x966320b, 0xff7ffff0, 0xff7fffef, 0x3400010},
9721{0x3400000, 0x966320b, 0xff7fffff, 0xff7ffffe, 0x3400010},
9722{0x3400000, 0x966320b, 0xff800000, 0xff800000, 0x3400000},
9723{0x3400000, 0x966320b, 0xff800001, 0x7fc00000, 0x3400001},
9724{0x3400000, 0x966320b, 0xff984a37, 0x7fc00000, 0x3400001},
9725{0x3400000, 0x966320b, 0xffbfffff, 0x7fc00000, 0x3400001},
9726{0x3400000, 0x966320b, 0xffc00000, 0x7fc00000, 0x3400000},
9727{0x3400000, 0x966320b, 0xffd9ba98, 0x7fc00000, 0x3400000},
9728{0x3400000, 0x966320b, 0xffffffff, 0x7fc00000, 0x3400000},
9729{0x3400000, 0x966320b, 0x4f3495cb, 0x4f3495cc, 0x3400010},
9730{0x3400000, 0x966320b, 0xe73a5134, 0xe73a5133, 0x3400010},
9731{0x3400000, 0x966320b, 0x7c994e9e, 0x7c994e9f, 0x3400010},
9732{0x3400000, 0x966320b, 0x6164bd6c, 0x6164bd6d, 0x3400010},
9733{0x3400000, 0x966320b, 0x9503366, 0x9db32b9, 0x3400010},
9734{0x3400000, 0x966320b, 0xbf5a97c9, 0xbf5a97c8, 0x3400010},
9735{0x3400000, 0x966320b, 0xe6ff1a14, 0xe6ff1a13, 0x3400010},
9736{0x3400000, 0x966320b, 0x77f31e2f, 0x77f31e30, 0x3400010},
9737{0x3400000, 0x966320b, 0xaab4d7d8, 0xaab4d7d7, 0x3400010},
9738{0x3400000, 0x966320b, 0x966320b, 0x9e6320b, 0x3400000},
9739{0x3400000, 0x966320b, 0xb26bddee, 0xb26bdded, 0x3400010},
9740{0x3400000, 0x966320b, 0xb5c8e5d3, 0xb5c8e5d2, 0x3400010},
9741{0x3400000, 0x966320b, 0x317285d3, 0x317285d4, 0x3400010},
9742{0x3400000, 0x966320b, 0x3c9623b1, 0x3c9623b2, 0x3400010},
9743{0x3400000, 0x966320b, 0x51fd2c7c, 0x51fd2c7d, 0x3400010},
9744{0x3400000, 0x966320b, 0x7b906a6c, 0x7b906a6d, 0x3400010},
9745{0x3400000, 0xb26bddee, 0x0, 0xb26bddee, 0x3400000},
9746{0x3400000, 0xb26bddee, 0x1, 0xb26bddee, 0x3400080},
9747{0x3400000, 0xb26bddee, 0x76, 0xb26bddee, 0x3400080},
9748{0x3400000, 0xb26bddee, 0x2b94, 0xb26bddee, 0x3400080},
9749{0x3400000, 0xb26bddee, 0x636d24, 0xb26bddee, 0x3400080},
9750{0x3400000, 0xb26bddee, 0x7fffff, 0xb26bddee, 0x3400080},
9751{0x3400000, 0xb26bddee, 0x800000, 0xb26bdded, 0x3400010},
9752{0x3400000, 0xb26bddee, 0x800002, 0xb26bdded, 0x3400010},
9753{0x3400000, 0xb26bddee, 0x1398437, 0xb26bdded, 0x3400010},
9754{0x3400000, 0xb26bddee, 0xba98d27, 0xb26bdded, 0x3400010},
9755{0x3400000, 0xb26bddee, 0xba98d7a, 0xb26bdded, 0x3400010},
9756{0x3400000, 0xb26bddee, 0x751f853a, 0x751f853a, 0x3400010},
9757{0x3400000, 0xb26bddee, 0x7f7ffff0, 0x7f7ffff0, 0x3400010},
9758{0x3400000, 0xb26bddee, 0x7f7fffff, 0x7f7fffff, 0x3400010},
9759{0x3400000, 0xb26bddee, 0x7f800000, 0x7f800000, 0x3400000},
9760{0x3400000, 0xb26bddee, 0x7f800001, 0x7fc00000, 0x3400001},
9761{0x3400000, 0xb26bddee, 0x7f984a37, 0x7fc00000, 0x3400001},
9762{0x3400000, 0xb26bddee, 0x7fbfffff, 0x7fc00000, 0x3400001},
9763{0x3400000, 0xb26bddee, 0x7fc00000, 0x7fc00000, 0x3400000},
9764{0x3400000, 0xb26bddee, 0x7fd9ba98, 0x7fc00000, 0x3400000},
9765{0x3400000, 0xb26bddee, 0x7fffffff, 0x7fc00000, 0x3400000},
9766{0x3400000, 0xb26bddee, 0x80000000, 0xb26bddee, 0x3400000},
9767{0x3400000, 0xb26bddee, 0x80000001, 0xb26bddee, 0x3400080},
9768{0x3400000, 0xb26bddee, 0x80000076, 0xb26bddee, 0x3400080},
9769{0x3400000, 0xb26bddee, 0x80002b94, 0xb26bddee, 0x3400080},
9770{0x3400000, 0xb26bddee, 0x80636d24, 0xb26bddee, 0x3400080},
9771{0x3400000, 0xb26bddee, 0x807fffff, 0xb26bddee, 0x3400080},
9772{0x3400000, 0xb26bddee, 0x80800000, 0xb26bddee, 0x3400010},
9773{0x3400000, 0xb26bddee, 0x80800002, 0xb26bddee, 0x3400010},
9774{0x3400000, 0xb26bddee, 0x81398437, 0xb26bddee, 0x3400010},
9775{0x3400000, 0xb26bddee, 0x8ba98d27, 0xb26bddee, 0x3400010},
9776{0x3400000, 0xb26bddee, 0x8ba98d7a, 0xb26bddee, 0x3400010},
9777{0x3400000, 0xb26bddee, 0xf51f853a, 0xf51f853a, 0x3400010},
9778{0x3400000, 0xb26bddee, 0xff7ffff0, 0xff7ffff0, 0x3400010},
9779{0x3400000, 0xb26bddee, 0xff7fffff, 0xff7fffff, 0x3400010},
9780{0x3400000, 0xb26bddee, 0xff800000, 0xff800000, 0x3400000},
9781{0x3400000, 0xb26bddee, 0xff800001, 0x7fc00000, 0x3400001},
9782{0x3400000, 0xb26bddee, 0xff984a37, 0x7fc00000, 0x3400001},
9783{0x3400000, 0xb26bddee, 0xffbfffff, 0x7fc00000, 0x3400001},
9784{0x3400000, 0xb26bddee, 0xffc00000, 0x7fc00000, 0x3400000},
9785{0x3400000, 0xb26bddee, 0xffd9ba98, 0x7fc00000, 0x3400000},
9786{0x3400000, 0xb26bddee, 0xffffffff, 0x7fc00000, 0x3400000},
9787{0x3400000, 0xb26bddee, 0x4f3495cb, 0x4f3495cb, 0x3400010},
9788{0x3400000, 0xb26bddee, 0xe73a5134, 0xe73a5134, 0x3400010},
9789{0x3400000, 0xb26bddee, 0x7c994e9e, 0x7c994e9e, 0x3400010},
9790{0x3400000, 0xb26bddee, 0x6164bd6c, 0x6164bd6c, 0x3400010},
9791{0x3400000, 0xb26bddee, 0x9503366, 0xb26bdded, 0x3400010},
9792{0x3400000, 0xb26bddee, 0xbf5a97c9, 0xbf5a97c9, 0x3400010},
9793{0x3400000, 0xb26bddee, 0xe6ff1a14, 0xe6ff1a14, 0x3400010},
9794{0x3400000, 0xb26bddee, 0x77f31e2f, 0x77f31e2f, 0x3400010},
9795{0x3400000, 0xb26bddee, 0xaab4d7d8, 0xb26bdf57, 0x3400010},
9796{0x3400000, 0xb26bddee, 0x966320b, 0xb26bdded, 0x3400010},
9797{0x3400000, 0xb26bddee, 0xb26bddee, 0xb2ebddee, 0x3400000},
9798{0x3400000, 0xb26bddee, 0xb5c8e5d3, 0xb5cabd8e, 0x3400010},
9799{0x3400000, 0xb26bddee, 0x317285d3, 0xb22f3c79, 0x3400010},
9800{0x3400000, 0xb26bddee, 0x3c9623b1, 0x3c9623aa, 0x3400010},
9801{0x3400000, 0xb26bddee, 0x51fd2c7c, 0x51fd2c7c, 0x3400010},
9802{0x3400000, 0xb26bddee, 0x7b906a6c, 0x7b906a6c, 0x3400010},
9803{0x3400000, 0xb5c8e5d3, 0x0, 0xb5c8e5d3, 0x3400000},
9804{0x3400000, 0xb5c8e5d3, 0x1, 0xb5c8e5d3, 0x3400080},
9805{0x3400000, 0xb5c8e5d3, 0x76, 0xb5c8e5d3, 0x3400080},
9806{0x3400000, 0xb5c8e5d3, 0x2b94, 0xb5c8e5d3, 0x3400080},
9807{0x3400000, 0xb5c8e5d3, 0x636d24, 0xb5c8e5d3, 0x3400080},
9808{0x3400000, 0xb5c8e5d3, 0x7fffff, 0xb5c8e5d3, 0x3400080},
9809{0x3400000, 0xb5c8e5d3, 0x800000, 0xb5c8e5d2, 0x3400010},
9810{0x3400000, 0xb5c8e5d3, 0x800002, 0xb5c8e5d2, 0x3400010},
9811{0x3400000, 0xb5c8e5d3, 0x1398437, 0xb5c8e5d2, 0x3400010},
9812{0x3400000, 0xb5c8e5d3, 0xba98d27, 0xb5c8e5d2, 0x3400010},
9813{0x3400000, 0xb5c8e5d3, 0xba98d7a, 0xb5c8e5d2, 0x3400010},
9814{0x3400000, 0xb5c8e5d3, 0x751f853a, 0x751f853a, 0x3400010},
9815{0x3400000, 0xb5c8e5d3, 0x7f7ffff0, 0x7f7ffff0, 0x3400010},
9816{0x3400000, 0xb5c8e5d3, 0x7f7fffff, 0x7f7fffff, 0x3400010},
9817{0x3400000, 0xb5c8e5d3, 0x7f800000, 0x7f800000, 0x3400000},
9818{0x3400000, 0xb5c8e5d3, 0x7f800001, 0x7fc00000, 0x3400001},
9819{0x3400000, 0xb5c8e5d3, 0x7f984a37, 0x7fc00000, 0x3400001},
9820{0x3400000, 0xb5c8e5d3, 0x7fbfffff, 0x7fc00000, 0x3400001},
9821{0x3400000, 0xb5c8e5d3, 0x7fc00000, 0x7fc00000, 0x3400000},
9822{0x3400000, 0xb5c8e5d3, 0x7fd9ba98, 0x7fc00000, 0x3400000},
9823{0x3400000, 0xb5c8e5d3, 0x7fffffff, 0x7fc00000, 0x3400000},
9824{0x3400000, 0xb5c8e5d3, 0x80000000, 0xb5c8e5d3, 0x3400000},
9825{0x3400000, 0xb5c8e5d3, 0x80000001, 0xb5c8e5d3, 0x3400080},
9826{0x3400000, 0xb5c8e5d3, 0x80000076, 0xb5c8e5d3, 0x3400080},
9827{0x3400000, 0xb5c8e5d3, 0x80002b94, 0xb5c8e5d3, 0x3400080},
9828{0x3400000, 0xb5c8e5d3, 0x80636d24, 0xb5c8e5d3, 0x3400080},
9829{0x3400000, 0xb5c8e5d3, 0x807fffff, 0xb5c8e5d3, 0x3400080},
9830{0x3400000, 0xb5c8e5d3, 0x80800000, 0xb5c8e5d3, 0x3400010},
9831{0x3400000, 0xb5c8e5d3, 0x80800002, 0xb5c8e5d3, 0x3400010},
9832{0x3400000, 0xb5c8e5d3, 0x81398437, 0xb5c8e5d3, 0x3400010},
9833{0x3400000, 0xb5c8e5d3, 0x8ba98d27, 0xb5c8e5d3, 0x3400010},
9834{0x3400000, 0xb5c8e5d3, 0x8ba98d7a, 0xb5c8e5d3, 0x3400010},
9835{0x3400000, 0xb5c8e5d3, 0xf51f853a, 0xf51f853a, 0x3400010},
9836{0x3400000, 0xb5c8e5d3, 0xff7ffff0, 0xff7ffff0, 0x3400010},
9837{0x3400000, 0xb5c8e5d3, 0xff7fffff, 0xff7fffff, 0x3400010},
9838{0x3400000, 0xb5c8e5d3, 0xff800000, 0xff800000, 0x3400000},
9839{0x3400000, 0xb5c8e5d3, 0xff800001, 0x7fc00000, 0x3400001},
9840{0x3400000, 0xb5c8e5d3, 0xff984a37, 0x7fc00000, 0x3400001},
9841{0x3400000, 0xb5c8e5d3, 0xffbfffff, 0x7fc00000, 0x3400001},
9842{0x3400000, 0xb5c8e5d3, 0xffc00000, 0x7fc00000, 0x3400000},
9843{0x3400000, 0xb5c8e5d3, 0xffd9ba98, 0x7fc00000, 0x3400000},
9844{0x3400000, 0xb5c8e5d3, 0xffffffff, 0x7fc00000, 0x3400000},
9845{0x3400000, 0xb5c8e5d3, 0x4f3495cb, 0x4f3495cb, 0x3400010},
9846{0x3400000, 0xb5c8e5d3, 0xe73a5134, 0xe73a5134, 0x3400010},
9847{0x3400000, 0xb5c8e5d3, 0x7c994e9e, 0x7c994e9e, 0x3400010},
9848{0x3400000, 0xb5c8e5d3, 0x6164bd6c, 0x6164bd6c, 0x3400010},
9849{0x3400000, 0xb5c8e5d3, 0x9503366, 0xb5c8e5d2, 0x3400010},
9850{0x3400000, 0xb5c8e5d3, 0xbf5a97c9, 0xbf5a97e2, 0x3400010},
9851{0x3400000, 0xb5c8e5d3, 0xe6ff1a14, 0xe6ff1a14, 0x3400010},
9852{0x3400000, 0xb5c8e5d3, 0x77f31e2f, 0x77f31e2f, 0x3400010},
9853{0x3400000, 0xb5c8e5d3, 0xaab4d7d8, 0xb5c8e5d5, 0x3400010},
9854{0x3400000, 0xb5c8e5d3, 0x966320b, 0xb5c8e5d2, 0x3400010},
9855{0x3400000, 0xb5c8e5d3, 0xb26bddee, 0xb5cabd8e, 0x3400010},
9856{0x3400000, 0xb5c8e5d3, 0xb5c8e5d3, 0xb648e5d3, 0x3400000},
9857{0x3400000, 0xb5c8e5d3, 0x317285d3, 0xb5c86c90, 0x3400010},
9858{0x3400000, 0xb5c8e5d3, 0x3c9623b1, 0x3c96208e, 0x3400010},
9859{0x3400000, 0xb5c8e5d3, 0x51fd2c7c, 0x51fd2c7c, 0x3400010},
9860{0x3400000, 0xb5c8e5d3, 0x7b906a6c, 0x7b906a6c, 0x3400010},
9861{0x3400000, 0x317285d3, 0x0, 0x317285d3, 0x3400000},
9862{0x3400000, 0x317285d3, 0x1, 0x317285d3, 0x3400080},
9863{0x3400000, 0x317285d3, 0x76, 0x317285d3, 0x3400080},
9864{0x3400000, 0x317285d3, 0x2b94, 0x317285d3, 0x3400080},
9865{0x3400000, 0x317285d3, 0x636d24, 0x317285d3, 0x3400080},
9866{0x3400000, 0x317285d3, 0x7fffff, 0x317285d3, 0x3400080},
9867{0x3400000, 0x317285d3, 0x800000, 0x317285d4, 0x3400010},
9868{0x3400000, 0x317285d3, 0x800002, 0x317285d4, 0x3400010},
9869{0x3400000, 0x317285d3, 0x1398437, 0x317285d4, 0x3400010},
9870{0x3400000, 0x317285d3, 0xba98d27, 0x317285d4, 0x3400010},
9871{0x3400000, 0x317285d3, 0xba98d7a, 0x317285d4, 0x3400010},
9872{0x3400000, 0x317285d3, 0x751f853a, 0x751f853b, 0x3400010},
9873{0x3400000, 0x317285d3, 0x7f7ffff0, 0x7f7ffff1, 0x3400010},
9874{0x3400000, 0x317285d3, 0x7f7fffff, 0x7f800000, 0x3400014},
9875{0x3400000, 0x317285d3, 0x7f800000, 0x7f800000, 0x3400000},
9876{0x3400000, 0x317285d3, 0x7f800001, 0x7fc00000, 0x3400001},
9877{0x3400000, 0x317285d3, 0x7f984a37, 0x7fc00000, 0x3400001},
9878{0x3400000, 0x317285d3, 0x7fbfffff, 0x7fc00000, 0x3400001},
9879{0x3400000, 0x317285d3, 0x7fc00000, 0x7fc00000, 0x3400000},
9880{0x3400000, 0x317285d3, 0x7fd9ba98, 0x7fc00000, 0x3400000},
9881{0x3400000, 0x317285d3, 0x7fffffff, 0x7fc00000, 0x3400000},
9882{0x3400000, 0x317285d3, 0x80000000, 0x317285d3, 0x3400000},
9883{0x3400000, 0x317285d3, 0x80000001, 0x317285d3, 0x3400080},
9884{0x3400000, 0x317285d3, 0x80000076, 0x317285d3, 0x3400080},
9885{0x3400000, 0x317285d3, 0x80002b94, 0x317285d3, 0x3400080},
9886{0x3400000, 0x317285d3, 0x80636d24, 0x317285d3, 0x3400080},
9887{0x3400000, 0x317285d3, 0x807fffff, 0x317285d3, 0x3400080},
9888{0x3400000, 0x317285d3, 0x80800000, 0x317285d3, 0x3400010},
9889{0x3400000, 0x317285d3, 0x80800002, 0x317285d3, 0x3400010},
9890{0x3400000, 0x317285d3, 0x81398437, 0x317285d3, 0x3400010},
9891{0x3400000, 0x317285d3, 0x8ba98d27, 0x317285d3, 0x3400010},
9892{0x3400000, 0x317285d3, 0x8ba98d7a, 0x317285d3, 0x3400010},
9893{0x3400000, 0x317285d3, 0xf51f853a, 0xf51f8539, 0x3400010},
9894{0x3400000, 0x317285d3, 0xff7ffff0, 0xff7fffef, 0x3400010},
9895{0x3400000, 0x317285d3, 0xff7fffff, 0xff7ffffe, 0x3400010},
9896{0x3400000, 0x317285d3, 0xff800000, 0xff800000, 0x3400000},
9897{0x3400000, 0x317285d3, 0xff800001, 0x7fc00000, 0x3400001},
9898{0x3400000, 0x317285d3, 0xff984a37, 0x7fc00000, 0x3400001},
9899{0x3400000, 0x317285d3, 0xffbfffff, 0x7fc00000, 0x3400001},
9900{0x3400000, 0x317285d3, 0xffc00000, 0x7fc00000, 0x3400000},
9901{0x3400000, 0x317285d3, 0xffd9ba98, 0x7fc00000, 0x3400000},
9902{0x3400000, 0x317285d3, 0xffffffff, 0x7fc00000, 0x3400000},
9903{0x3400000, 0x317285d3, 0x4f3495cb, 0x4f3495cc, 0x3400010},
9904{0x3400000, 0x317285d3, 0xe73a5134, 0xe73a5133, 0x3400010},
9905{0x3400000, 0x317285d3, 0x7c994e9e, 0x7c994e9f, 0x3400010},
9906{0x3400000, 0x317285d3, 0x6164bd6c, 0x6164bd6d, 0x3400010},
9907{0x3400000, 0x317285d3, 0x9503366, 0x317285d4, 0x3400010},
9908{0x3400000, 0x317285d3, 0xbf5a97c9, 0xbf5a97c8, 0x3400010},
9909{0x3400000, 0x317285d3, 0xe6ff1a14, 0xe6ff1a13, 0x3400010},
9910{0x3400000, 0x317285d3, 0x77f31e2f, 0x77f31e30, 0x3400010},
9911{0x3400000, 0x317285d3, 0xaab4d7d8, 0x3172802d, 0x3400010},
9912{0x3400000, 0x317285d3, 0x966320b, 0x317285d4, 0x3400010},
9913{0x3400000, 0x317285d3, 0xb26bddee, 0xb22f3c79, 0x3400010},
9914{0x3400000, 0x317285d3, 0xb5c8e5d3, 0xb5c86c90, 0x3400010},
9915{0x3400000, 0x317285d3, 0x317285d3, 0x31f285d3, 0x3400000},
9916{0x3400000, 0x317285d3, 0x3c9623b1, 0x3c9623b3, 0x3400010},
9917{0x3400000, 0x317285d3, 0x51fd2c7c, 0x51fd2c7d, 0x3400010},
9918{0x3400000, 0x317285d3, 0x7b906a6c, 0x7b906a6d, 0x3400010},
9919{0x3400000, 0x3c9623b1, 0x0, 0x3c9623b1, 0x3400000},
9920{0x3400000, 0x3c9623b1, 0x1, 0x3c9623b1, 0x3400080},
9921{0x3400000, 0x3c9623b1, 0x76, 0x3c9623b1, 0x3400080},
9922{0x3400000, 0x3c9623b1, 0x2b94, 0x3c9623b1, 0x3400080},
9923{0x3400000, 0x3c9623b1, 0x636d24, 0x3c9623b1, 0x3400080},
9924{0x3400000, 0x3c9623b1, 0x7fffff, 0x3c9623b1, 0x3400080},
9925{0x3400000, 0x3c9623b1, 0x800000, 0x3c9623b2, 0x3400010},
9926{0x3400000, 0x3c9623b1, 0x800002, 0x3c9623b2, 0x3400010},
9927{0x3400000, 0x3c9623b1, 0x1398437, 0x3c9623b2, 0x3400010},
9928{0x3400000, 0x3c9623b1, 0xba98d27, 0x3c9623b2, 0x3400010},
9929{0x3400000, 0x3c9623b1, 0xba98d7a, 0x3c9623b2, 0x3400010},
9930{0x3400000, 0x3c9623b1, 0x751f853a, 0x751f853b, 0x3400010},
9931{0x3400000, 0x3c9623b1, 0x7f7ffff0, 0x7f7ffff1, 0x3400010},
9932{0x3400000, 0x3c9623b1, 0x7f7fffff, 0x7f800000, 0x3400014},
9933{0x3400000, 0x3c9623b1, 0x7f800000, 0x7f800000, 0x3400000},
9934{0x3400000, 0x3c9623b1, 0x7f800001, 0x7fc00000, 0x3400001},
9935{0x3400000, 0x3c9623b1, 0x7f984a37, 0x7fc00000, 0x3400001},
9936{0x3400000, 0x3c9623b1, 0x7fbfffff, 0x7fc00000, 0x3400001},
9937{0x3400000, 0x3c9623b1, 0x7fc00000, 0x7fc00000, 0x3400000},
9938{0x3400000, 0x3c9623b1, 0x7fd9ba98, 0x7fc00000, 0x3400000},
9939{0x3400000, 0x3c9623b1, 0x7fffffff, 0x7fc00000, 0x3400000},
9940{0x3400000, 0x3c9623b1, 0x80000000, 0x3c9623b1, 0x3400000},
9941{0x3400000, 0x3c9623b1, 0x80000001, 0x3c9623b1, 0x3400080},
9942{0x3400000, 0x3c9623b1, 0x80000076, 0x3c9623b1, 0x3400080},
9943{0x3400000, 0x3c9623b1, 0x80002b94, 0x3c9623b1, 0x3400080},
9944{0x3400000, 0x3c9623b1, 0x80636d24, 0x3c9623b1, 0x3400080},
9945{0x3400000, 0x3c9623b1, 0x807fffff, 0x3c9623b1, 0x3400080},
9946{0x3400000, 0x3c9623b1, 0x80800000, 0x3c9623b1, 0x3400010},
9947{0x3400000, 0x3c9623b1, 0x80800002, 0x3c9623b1, 0x3400010},
9948{0x3400000, 0x3c9623b1, 0x81398437, 0x3c9623b1, 0x3400010},
9949{0x3400000, 0x3c9623b1, 0x8ba98d27, 0x3c9623b1, 0x3400010},
9950{0x3400000, 0x3c9623b1, 0x8ba98d7a, 0x3c9623b1, 0x3400010},
9951{0x3400000, 0x3c9623b1, 0xf51f853a, 0xf51f8539, 0x3400010},
9952{0x3400000, 0x3c9623b1, 0xff7ffff0, 0xff7fffef, 0x3400010},
9953{0x3400000, 0x3c9623b1, 0xff7fffff, 0xff7ffffe, 0x3400010},
9954{0x3400000, 0x3c9623b1, 0xff800000, 0xff800000, 0x3400000},
9955{0x3400000, 0x3c9623b1, 0xff800001, 0x7fc00000, 0x3400001},
9956{0x3400000, 0x3c9623b1, 0xff984a37, 0x7fc00000, 0x3400001},
9957{0x3400000, 0x3c9623b1, 0xffbfffff, 0x7fc00000, 0x3400001},
9958{0x3400000, 0x3c9623b1, 0xffc00000, 0x7fc00000, 0x3400000},
9959{0x3400000, 0x3c9623b1, 0xffd9ba98, 0x7fc00000, 0x3400000},
9960{0x3400000, 0x3c9623b1, 0xffffffff, 0x7fc00000, 0x3400000},
9961{0x3400000, 0x3c9623b1, 0x4f3495cb, 0x4f3495cc, 0x3400010},
9962{0x3400000, 0x3c9623b1, 0xe73a5134, 0xe73a5133, 0x3400010},
9963{0x3400000, 0x3c9623b1, 0x7c994e9e, 0x7c994e9f, 0x3400010},
9964{0x3400000, 0x3c9623b1, 0x6164bd6c, 0x6164bd6d, 0x3400010},
9965{0x3400000, 0x3c9623b1, 0x9503366, 0x3c9623b2, 0x3400010},
9966{0x3400000, 0x3c9623b1, 0xbf5a97c9, 0xbf55e6ab, 0x3400010},
9967{0x3400000, 0x3c9623b1, 0xe6ff1a14, 0xe6ff1a13, 0x3400010},
9968{0x3400000, 0x3c9623b1, 0x77f31e2f, 0x77f31e30, 0x3400010},
9969{0x3400000, 0x3c9623b1, 0xaab4d7d8, 0x3c9623b1, 0x3400010},
9970{0x3400000, 0x3c9623b1, 0x966320b, 0x3c9623b2, 0x3400010},
9971{0x3400000, 0x3c9623b1, 0xb26bddee, 0x3c9623aa, 0x3400010},
9972{0x3400000, 0x3c9623b1, 0xb5c8e5d3, 0x3c96208e, 0x3400010},
9973{0x3400000, 0x3c9623b1, 0x317285d3, 0x3c9623b3, 0x3400010},
9974{0x3400000, 0x3c9623b1, 0x3c9623b1, 0x3d1623b1, 0x3400000},
9975{0x3400000, 0x3c9623b1, 0x51fd2c7c, 0x51fd2c7d, 0x3400010},
9976{0x3400000, 0x3c9623b1, 0x7b906a6c, 0x7b906a6d, 0x3400010},
9977{0x3400000, 0x51fd2c7c, 0x0, 0x51fd2c7c, 0x3400000},
9978{0x3400000, 0x51fd2c7c, 0x1, 0x51fd2c7c, 0x3400080},
9979{0x3400000, 0x51fd2c7c, 0x76, 0x51fd2c7c, 0x3400080},
9980{0x3400000, 0x51fd2c7c, 0x2b94, 0x51fd2c7c, 0x3400080},
9981{0x3400000, 0x51fd2c7c, 0x636d24, 0x51fd2c7c, 0x3400080},
9982{0x3400000, 0x51fd2c7c, 0x7fffff, 0x51fd2c7c, 0x3400080},
9983{0x3400000, 0x51fd2c7c, 0x800000, 0x51fd2c7d, 0x3400010},
9984{0x3400000, 0x51fd2c7c, 0x800002, 0x51fd2c7d, 0x3400010},
9985{0x3400000, 0x51fd2c7c, 0x1398437, 0x51fd2c7d, 0x3400010},
9986{0x3400000, 0x51fd2c7c, 0xba98d27, 0x51fd2c7d, 0x3400010},
9987{0x3400000, 0x51fd2c7c, 0xba98d7a, 0x51fd2c7d, 0x3400010},
9988{0x3400000, 0x51fd2c7c, 0x751f853a, 0x751f853b, 0x3400010},
9989{0x3400000, 0x51fd2c7c, 0x7f7ffff0, 0x7f7ffff1, 0x3400010},
9990{0x3400000, 0x51fd2c7c, 0x7f7fffff, 0x7f800000, 0x3400014},
9991{0x3400000, 0x51fd2c7c, 0x7f800000, 0x7f800000, 0x3400000},
9992{0x3400000, 0x51fd2c7c, 0x7f800001, 0x7fc00000, 0x3400001},
9993{0x3400000, 0x51fd2c7c, 0x7f984a37, 0x7fc00000, 0x3400001},
9994{0x3400000, 0x51fd2c7c, 0x7fbfffff, 0x7fc00000, 0x3400001},
9995{0x3400000, 0x51fd2c7c, 0x7fc00000, 0x7fc00000, 0x3400000},
9996{0x3400000, 0x51fd2c7c, 0x7fd9ba98, 0x7fc00000, 0x3400000},
9997{0x3400000, 0x51fd2c7c, 0x7fffffff, 0x7fc00000, 0x3400000},
9998{0x3400000, 0x51fd2c7c, 0x80000000, 0x51fd2c7c, 0x3400000},
9999{0x3400000, 0x51fd2c7c, 0x80000001, 0x51fd2c7c, 0x3400080},
10000{0x3400000, 0x51fd2c7c, 0x80000076, 0x51fd2c7c, 0x3400080},
10001{0x3400000, 0x51fd2c7c, 0x80002b94, 0x51fd2c7c, 0x3400080},
10002{0x3400000, 0x51fd2c7c, 0x80636d24, 0x51fd2c7c, 0x3400080},
10003{0x3400000, 0x51fd2c7c, 0x807fffff, 0x51fd2c7c, 0x3400080},
10004{0x3400000, 0x51fd2c7c, 0x80800000, 0x51fd2c7c, 0x3400010},
10005{0x3400000, 0x51fd2c7c, 0x80800002, 0x51fd2c7c, 0x3400010},
10006{0x3400000, 0x51fd2c7c, 0x81398437, 0x51fd2c7c, 0x3400010},
10007{0x3400000, 0x51fd2c7c, 0x8ba98d27, 0x51fd2c7c, 0x3400010},
10008{0x3400000, 0x51fd2c7c, 0x8ba98d7a, 0x51fd2c7c, 0x3400010},
10009{0x3400000, 0x51fd2c7c, 0xf51f853a, 0xf51f8539, 0x3400010},
10010{0x3400000, 0x51fd2c7c, 0xff7ffff0, 0xff7fffef, 0x3400010},
10011{0x3400000, 0x51fd2c7c, 0xff7fffff, 0xff7ffffe, 0x3400010},
10012{0x3400000, 0x51fd2c7c, 0xff800000, 0xff800000, 0x3400000},
10013{0x3400000, 0x51fd2c7c, 0xff800001, 0x7fc00000, 0x3400001},
10014{0x3400000, 0x51fd2c7c, 0xff984a37, 0x7fc00000, 0x3400001},
10015{0x3400000, 0x51fd2c7c, 0xffbfffff, 0x7fc00000, 0x3400001},
10016{0x3400000, 0x51fd2c7c, 0xffc00000, 0x7fc00000, 0x3400000},
10017{0x3400000, 0x51fd2c7c, 0xffd9ba98, 0x7fc00000, 0x3400000},
10018{0x3400000, 0x51fd2c7c, 0xffffffff, 0x7fc00000, 0x3400000},
10019{0x3400000, 0x51fd2c7c, 0x4f3495cb, 0x52016896, 0x3400010},
10020{0x3400000, 0x51fd2c7c, 0xe73a5134, 0xe73a5133, 0x3400010},
10021{0x3400000, 0x51fd2c7c, 0x7c994e9e, 0x7c994e9f, 0x3400010},
10022{0x3400000, 0x51fd2c7c, 0x6164bd6c, 0x6164bd6d, 0x3400010},
10023{0x3400000, 0x51fd2c7c, 0x9503366, 0x51fd2c7d, 0x3400010},
10024{0x3400000, 0x51fd2c7c, 0xbf5a97c9, 0x51fd2c7c, 0x3400010},
10025{0x3400000, 0x51fd2c7c, 0xe6ff1a14, 0xe6ff1a13, 0x3400010},
10026{0x3400000, 0x51fd2c7c, 0x77f31e2f, 0x77f31e30, 0x3400010},
10027{0x3400000, 0x51fd2c7c, 0xaab4d7d8, 0x51fd2c7c, 0x3400010},
10028{0x3400000, 0x51fd2c7c, 0x966320b, 0x51fd2c7d, 0x3400010},
10029{0x3400000, 0x51fd2c7c, 0xb26bddee, 0x51fd2c7c, 0x3400010},
10030{0x3400000, 0x51fd2c7c, 0xb5c8e5d3, 0x51fd2c7c, 0x3400010},
10031{0x3400000, 0x51fd2c7c, 0x317285d3, 0x51fd2c7d, 0x3400010},
10032{0x3400000, 0x51fd2c7c, 0x3c9623b1, 0x51fd2c7d, 0x3400010},
10033{0x3400000, 0x51fd2c7c, 0x51fd2c7c, 0x527d2c7c, 0x3400000},
10034{0x3400000, 0x51fd2c7c, 0x7b906a6c, 0x7b906a6d, 0x3400010},
10035{0x3400000, 0x7b906a6c, 0x0, 0x7b906a6c, 0x3400000},
10036{0x3400000, 0x7b906a6c, 0x1, 0x7b906a6c, 0x3400080},
10037{0x3400000, 0x7b906a6c, 0x76, 0x7b906a6c, 0x3400080},
10038{0x3400000, 0x7b906a6c, 0x2b94, 0x7b906a6c, 0x3400080},
10039{0x3400000, 0x7b906a6c, 0x636d24, 0x7b906a6c, 0x3400080},
10040{0x3400000, 0x7b906a6c, 0x7fffff, 0x7b906a6c, 0x3400080},
10041{0x3400000, 0x7b906a6c, 0x800000, 0x7b906a6d, 0x3400010},
10042{0x3400000, 0x7b906a6c, 0x800002, 0x7b906a6d, 0x3400010},
10043{0x3400000, 0x7b906a6c, 0x1398437, 0x7b906a6d, 0x3400010},
10044{0x3400000, 0x7b906a6c, 0xba98d27, 0x7b906a6d, 0x3400010},
10045{0x3400000, 0x7b906a6c, 0xba98d7a, 0x7b906a6d, 0x3400010},
10046{0x3400000, 0x7b906a6c, 0x751f853a, 0x7b906f69, 0x3400010},
10047{0x3400000, 0x7b906a6c, 0x7f7ffff0, 0x7f800000, 0x3400014},
10048{0x3400000, 0x7b906a6c, 0x7f7fffff, 0x7f800000, 0x3400014},
10049{0x3400000, 0x7b906a6c, 0x7f800000, 0x7f800000, 0x3400000},
10050{0x3400000, 0x7b906a6c, 0x7f800001, 0x7fc00000, 0x3400001},
10051{0x3400000, 0x7b906a6c, 0x7f984a37, 0x7fc00000, 0x3400001},
10052{0x3400000, 0x7b906a6c, 0x7fbfffff, 0x7fc00000, 0x3400001},
10053{0x3400000, 0x7b906a6c, 0x7fc00000, 0x7fc00000, 0x3400000},
10054{0x3400000, 0x7b906a6c, 0x7fd9ba98, 0x7fc00000, 0x3400000},
10055{0x3400000, 0x7b906a6c, 0x7fffffff, 0x7fc00000, 0x3400000},
10056{0x3400000, 0x7b906a6c, 0x80000000, 0x7b906a6c, 0x3400000},
10057{0x3400000, 0x7b906a6c, 0x80000001, 0x7b906a6c, 0x3400080},
10058{0x3400000, 0x7b906a6c, 0x80000076, 0x7b906a6c, 0x3400080},
10059{0x3400000, 0x7b906a6c, 0x80002b94, 0x7b906a6c, 0x3400080},
10060{0x3400000, 0x7b906a6c, 0x80636d24, 0x7b906a6c, 0x3400080},
10061{0x3400000, 0x7b906a6c, 0x807fffff, 0x7b906a6c, 0x3400080},
10062{0x3400000, 0x7b906a6c, 0x80800000, 0x7b906a6c, 0x3400010},
10063{0x3400000, 0x7b906a6c, 0x80800002, 0x7b906a6c, 0x3400010},
10064{0x3400000, 0x7b906a6c, 0x81398437, 0x7b906a6c, 0x3400010},
10065{0x3400000, 0x7b906a6c, 0x8ba98d27, 0x7b906a6c, 0x3400010},
10066{0x3400000, 0x7b906a6c, 0x8ba98d7a, 0x7b906a6c, 0x3400010},
10067{0x3400000, 0x7b906a6c, 0xf51f853a, 0x7b906570, 0x3400010},
10068{0x3400000, 0x7b906a6c, 0xff7ffff0, 0xff7edf1b, 0x3400010},
10069{0x3400000, 0x7b906a6c, 0xff7fffff, 0xff7edf2a, 0x3400010},
10070{0x3400000, 0x7b906a6c, 0xff800000, 0xff800000, 0x3400000},
10071{0x3400000, 0x7b906a6c, 0xff800001, 0x7fc00000, 0x3400001},
10072{0x3400000, 0x7b906a6c, 0xff984a37, 0x7fc00000, 0x3400001},
10073{0x3400000, 0x7b906a6c, 0xffbfffff, 0x7fc00000, 0x3400001},
10074{0x3400000, 0x7b906a6c, 0xffc00000, 0x7fc00000, 0x3400000},
10075{0x3400000, 0x7b906a6c, 0xffd9ba98, 0x7fc00000, 0x3400000},
10076{0x3400000, 0x7b906a6c, 0xffffffff, 0x7fc00000, 0x3400000},
10077{0x3400000, 0x7b906a6c, 0x4f3495cb, 0x7b906a6d, 0x3400010},
10078{0x3400000, 0x7b906a6c, 0xe73a5134, 0x7b906a6c, 0x3400010},
10079{0x3400000, 0x7b906a6c, 0x7c994e9e, 0x7cbd6939, 0x3400000},
10080{0x3400000, 0x7b906a6c, 0x6164bd6c, 0x7b906a6d, 0x3400010},
10081{0x3400000, 0x7b906a6c, 0x9503366, 0x7b906a6d, 0x3400010},
10082{0x3400000, 0x7b906a6c, 0xbf5a97c9, 0x7b906a6c, 0x3400010},
10083{0x3400000, 0x7b906a6c, 0xe6ff1a14, 0x7b906a6c, 0x3400010},
10084{0x3400000, 0x7b906a6c, 0x77f31e2f, 0x7b915d8b, 0x3400010},
10085{0x3400000, 0x7b906a6c, 0xaab4d7d8, 0x7b906a6c, 0x3400010},
10086{0x3400000, 0x7b906a6c, 0x966320b, 0x7b906a6d, 0x3400010},
10087{0x3400000, 0x7b906a6c, 0xb26bddee, 0x7b906a6c, 0x3400010},
10088{0x3400000, 0x7b906a6c, 0xb5c8e5d3, 0x7b906a6c, 0x3400010},
10089{0x3400000, 0x7b906a6c, 0x317285d3, 0x7b906a6d, 0x3400010},
10090{0x3400000, 0x7b906a6c, 0x3c9623b1, 0x7b906a6d, 0x3400010},
10091{0x3400000, 0x7b906a6c, 0x51fd2c7c, 0x7b906a6d, 0x3400010},
10092{0x3400000, 0x7b906a6c, 0x7b906a6c, 0x7c106a6c, 0x3400000},
10093{0x3000000, 0x0, 0x0, 0x0, 0x3000000},
10094{0x3000000, 0x0, 0x1, 0x0, 0x3000080},
10095{0x3000000, 0x0, 0x76, 0x0, 0x3000080},
10096{0x3000000, 0x0, 0x2b94, 0x0, 0x3000080},
10097{0x3000000, 0x0, 0x636d24, 0x0, 0x3000080},
10098{0x3000000, 0x0, 0x7fffff, 0x0, 0x3000080},
10099{0x3000000, 0x0, 0x800000, 0x800000, 0x3000000},
10100{0x3000000, 0x0, 0x800002, 0x800002, 0x3000000},
10101{0x3000000, 0x0, 0x1398437, 0x1398437, 0x3000000},
10102{0x3000000, 0x0, 0xba98d27, 0xba98d27, 0x3000000},
10103{0x3000000, 0x0, 0xba98d7a, 0xba98d7a, 0x3000000},
10104{0x3000000, 0x0, 0x751f853a, 0x751f853a, 0x3000000},
10105{0x3000000, 0x0, 0x7f7ffff0, 0x7f7ffff0, 0x3000000},
10106{0x3000000, 0x0, 0x7f7fffff, 0x7f7fffff, 0x3000000},
10107{0x3000000, 0x0, 0x7f800000, 0x7f800000, 0x3000000},
10108{0x3000000, 0x0, 0x7f800001, 0x7fc00000, 0x3000001},
10109{0x3000000, 0x0, 0x7f984a37, 0x7fc00000, 0x3000001},
10110{0x3000000, 0x0, 0x7fbfffff, 0x7fc00000, 0x3000001},
10111{0x3000000, 0x0, 0x7fc00000, 0x7fc00000, 0x3000000},
10112{0x3000000, 0x0, 0x7fd9ba98, 0x7fc00000, 0x3000000},
10113{0x3000000, 0x0, 0x7fffffff, 0x7fc00000, 0x3000000},
10114{0x3000000, 0x0, 0x80000000, 0x0, 0x3000000},
10115{0x3000000, 0x0, 0x80000001, 0x0, 0x3000080},
10116{0x3000000, 0x0, 0x80000076, 0x0, 0x3000080},
10117{0x3000000, 0x0, 0x80002b94, 0x0, 0x3000080},
10118{0x3000000, 0x0, 0x80636d24, 0x0, 0x3000080},
10119{0x3000000, 0x0, 0x807fffff, 0x0, 0x3000080},
10120{0x3000000, 0x0, 0x80800000, 0x80800000, 0x3000000},
10121{0x3000000, 0x0, 0x80800002, 0x80800002, 0x3000000},
10122{0x3000000, 0x0, 0x81398437, 0x81398437, 0x3000000},
10123{0x3000000, 0x0, 0x8ba98d27, 0x8ba98d27, 0x3000000},
10124{0x3000000, 0x0, 0x8ba98d7a, 0x8ba98d7a, 0x3000000},
10125{0x3000000, 0x0, 0xf51f853a, 0xf51f853a, 0x3000000},
10126{0x3000000, 0x0, 0xff7ffff0, 0xff7ffff0, 0x3000000},
10127{0x3000000, 0x0, 0xff7fffff, 0xff7fffff, 0x3000000},
10128{0x3000000, 0x0, 0xff800000, 0xff800000, 0x3000000},
10129{0x3000000, 0x0, 0xff800001, 0x7fc00000, 0x3000001},
10130{0x3000000, 0x0, 0xff984a37, 0x7fc00000, 0x3000001},
10131{0x3000000, 0x0, 0xffbfffff, 0x7fc00000, 0x3000001},
10132{0x3000000, 0x0, 0xffc00000, 0x7fc00000, 0x3000000},
10133{0x3000000, 0x0, 0xffd9ba98, 0x7fc00000, 0x3000000},
10134{0x3000000, 0x0, 0xffffffff, 0x7fc00000, 0x3000000},
10135{0x3000000, 0x0, 0x4f3495cb, 0x4f3495cb, 0x3000000},
10136{0x3000000, 0x0, 0xe73a5134, 0xe73a5134, 0x3000000},
10137{0x3000000, 0x0, 0x7c994e9e, 0x7c994e9e, 0x3000000},
10138{0x3000000, 0x0, 0x6164bd6c, 0x6164bd6c, 0x3000000},
10139{0x3000000, 0x0, 0x9503366, 0x9503366, 0x3000000},
10140{0x3000000, 0x0, 0xbf5a97c9, 0xbf5a97c9, 0x3000000},
10141{0x3000000, 0x0, 0xe6ff1a14, 0xe6ff1a14, 0x3000000},
10142{0x3000000, 0x0, 0x77f31e2f, 0x77f31e2f, 0x3000000},
10143{0x3000000, 0x0, 0xaab4d7d8, 0xaab4d7d8, 0x3000000},
10144{0x3000000, 0x0, 0x966320b, 0x966320b, 0x3000000},
10145{0x3000000, 0x0, 0xb26bddee, 0xb26bddee, 0x3000000},
10146{0x3000000, 0x0, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000000},
10147{0x3000000, 0x0, 0x317285d3, 0x317285d3, 0x3000000},
10148{0x3000000, 0x0, 0x3c9623b1, 0x3c9623b1, 0x3000000},
10149{0x3000000, 0x0, 0x51fd2c7c, 0x51fd2c7c, 0x3000000},
10150{0x3000000, 0x0, 0x7b906a6c, 0x7b906a6c, 0x3000000},
10151{0x3000000, 0x1, 0x0, 0x0, 0x3000080},
10152{0x3000000, 0x1, 0x1, 0x0, 0x3000080},
10153{0x3000000, 0x1, 0x76, 0x0, 0x3000080},
10154{0x3000000, 0x1, 0x2b94, 0x0, 0x3000080},
10155{0x3000000, 0x1, 0x636d24, 0x0, 0x3000080},
10156{0x3000000, 0x1, 0x7fffff, 0x0, 0x3000080},
10157{0x3000000, 0x1, 0x800000, 0x800000, 0x3000080},
10158{0x3000000, 0x1, 0x800002, 0x800002, 0x3000080},
10159{0x3000000, 0x1, 0x1398437, 0x1398437, 0x3000080},
10160{0x3000000, 0x1, 0xba98d27, 0xba98d27, 0x3000080},
10161{0x3000000, 0x1, 0xba98d7a, 0xba98d7a, 0x3000080},
10162{0x3000000, 0x1, 0x751f853a, 0x751f853a, 0x3000080},
10163{0x3000000, 0x1, 0x7f7ffff0, 0x7f7ffff0, 0x3000080},
10164{0x3000000, 0x1, 0x7f7fffff, 0x7f7fffff, 0x3000080},
10165{0x3000000, 0x1, 0x7f800000, 0x7f800000, 0x3000080},
10166{0x3000000, 0x1, 0x7f800001, 0x7fc00000, 0x3000081},
10167{0x3000000, 0x1, 0x7f984a37, 0x7fc00000, 0x3000081},
10168{0x3000000, 0x1, 0x7fbfffff, 0x7fc00000, 0x3000081},
10169{0x3000000, 0x1, 0x7fc00000, 0x7fc00000, 0x3000080},
10170{0x3000000, 0x1, 0x7fd9ba98, 0x7fc00000, 0x3000080},
10171{0x3000000, 0x1, 0x7fffffff, 0x7fc00000, 0x3000080},
10172{0x3000000, 0x1, 0x80000000, 0x0, 0x3000080},
10173{0x3000000, 0x1, 0x80000001, 0x0, 0x3000080},
10174{0x3000000, 0x1, 0x80000076, 0x0, 0x3000080},
10175{0x3000000, 0x1, 0x80002b94, 0x0, 0x3000080},
10176{0x3000000, 0x1, 0x80636d24, 0x0, 0x3000080},
10177{0x3000000, 0x1, 0x807fffff, 0x0, 0x3000080},
10178{0x3000000, 0x1, 0x80800000, 0x80800000, 0x3000080},
10179{0x3000000, 0x1, 0x80800002, 0x80800002, 0x3000080},
10180{0x3000000, 0x1, 0x81398437, 0x81398437, 0x3000080},
10181{0x3000000, 0x1, 0x8ba98d27, 0x8ba98d27, 0x3000080},
10182{0x3000000, 0x1, 0x8ba98d7a, 0x8ba98d7a, 0x3000080},
10183{0x3000000, 0x1, 0xf51f853a, 0xf51f853a, 0x3000080},
10184{0x3000000, 0x1, 0xff7ffff0, 0xff7ffff0, 0x3000080},
10185{0x3000000, 0x1, 0xff7fffff, 0xff7fffff, 0x3000080},
10186{0x3000000, 0x1, 0xff800000, 0xff800000, 0x3000080},
10187{0x3000000, 0x1, 0xff800001, 0x7fc00000, 0x3000081},
10188{0x3000000, 0x1, 0xff984a37, 0x7fc00000, 0x3000081},
10189{0x3000000, 0x1, 0xffbfffff, 0x7fc00000, 0x3000081},
10190{0x3000000, 0x1, 0xffc00000, 0x7fc00000, 0x3000080},
10191{0x3000000, 0x1, 0xffd9ba98, 0x7fc00000, 0x3000080},
10192{0x3000000, 0x1, 0xffffffff, 0x7fc00000, 0x3000080},
10193{0x3000000, 0x1, 0x4f3495cb, 0x4f3495cb, 0x3000080},
10194{0x3000000, 0x1, 0xe73a5134, 0xe73a5134, 0x3000080},
10195{0x3000000, 0x1, 0x7c994e9e, 0x7c994e9e, 0x3000080},
10196{0x3000000, 0x1, 0x6164bd6c, 0x6164bd6c, 0x3000080},
10197{0x3000000, 0x1, 0x9503366, 0x9503366, 0x3000080},
10198{0x3000000, 0x1, 0xbf5a97c9, 0xbf5a97c9, 0x3000080},
10199{0x3000000, 0x1, 0xe6ff1a14, 0xe6ff1a14, 0x3000080},
10200{0x3000000, 0x1, 0x77f31e2f, 0x77f31e2f, 0x3000080},
10201{0x3000000, 0x1, 0xaab4d7d8, 0xaab4d7d8, 0x3000080},
10202{0x3000000, 0x1, 0x966320b, 0x966320b, 0x3000080},
10203{0x3000000, 0x1, 0xb26bddee, 0xb26bddee, 0x3000080},
10204{0x3000000, 0x1, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000080},
10205{0x3000000, 0x1, 0x317285d3, 0x317285d3, 0x3000080},
10206{0x3000000, 0x1, 0x3c9623b1, 0x3c9623b1, 0x3000080},
10207{0x3000000, 0x1, 0x51fd2c7c, 0x51fd2c7c, 0x3000080},
10208{0x3000000, 0x1, 0x7b906a6c, 0x7b906a6c, 0x3000080},
10209{0x3000000, 0x76, 0x0, 0x0, 0x3000080},
10210{0x3000000, 0x76, 0x1, 0x0, 0x3000080},
10211{0x3000000, 0x76, 0x76, 0x0, 0x3000080},
10212{0x3000000, 0x76, 0x2b94, 0x0, 0x3000080},
10213{0x3000000, 0x76, 0x636d24, 0x0, 0x3000080},
10214{0x3000000, 0x76, 0x7fffff, 0x0, 0x3000080},
10215{0x3000000, 0x76, 0x800000, 0x800000, 0x3000080},
10216{0x3000000, 0x76, 0x800002, 0x800002, 0x3000080},
10217{0x3000000, 0x76, 0x1398437, 0x1398437, 0x3000080},
10218{0x3000000, 0x76, 0xba98d27, 0xba98d27, 0x3000080},
10219{0x3000000, 0x76, 0xba98d7a, 0xba98d7a, 0x3000080},
10220{0x3000000, 0x76, 0x751f853a, 0x751f853a, 0x3000080},
10221{0x3000000, 0x76, 0x7f7ffff0, 0x7f7ffff0, 0x3000080},
10222{0x3000000, 0x76, 0x7f7fffff, 0x7f7fffff, 0x3000080},
10223{0x3000000, 0x76, 0x7f800000, 0x7f800000, 0x3000080},
10224{0x3000000, 0x76, 0x7f800001, 0x7fc00000, 0x3000081},
10225{0x3000000, 0x76, 0x7f984a37, 0x7fc00000, 0x3000081},
10226{0x3000000, 0x76, 0x7fbfffff, 0x7fc00000, 0x3000081},
10227{0x3000000, 0x76, 0x7fc00000, 0x7fc00000, 0x3000080},
10228{0x3000000, 0x76, 0x7fd9ba98, 0x7fc00000, 0x3000080},
10229{0x3000000, 0x76, 0x7fffffff, 0x7fc00000, 0x3000080},
10230{0x3000000, 0x76, 0x80000000, 0x0, 0x3000080},
10231{0x3000000, 0x76, 0x80000001, 0x0, 0x3000080},
10232{0x3000000, 0x76, 0x80000076, 0x0, 0x3000080},
10233{0x3000000, 0x76, 0x80002b94, 0x0, 0x3000080},
10234{0x3000000, 0x76, 0x80636d24, 0x0, 0x3000080},
10235{0x3000000, 0x76, 0x807fffff, 0x0, 0x3000080},
10236{0x3000000, 0x76, 0x80800000, 0x80800000, 0x3000080},
10237{0x3000000, 0x76, 0x80800002, 0x80800002, 0x3000080},
10238{0x3000000, 0x76, 0x81398437, 0x81398437, 0x3000080},
10239{0x3000000, 0x76, 0x8ba98d27, 0x8ba98d27, 0x3000080},
10240{0x3000000, 0x76, 0x8ba98d7a, 0x8ba98d7a, 0x3000080},
10241{0x3000000, 0x76, 0xf51f853a, 0xf51f853a, 0x3000080},
10242{0x3000000, 0x76, 0xff7ffff0, 0xff7ffff0, 0x3000080},
10243{0x3000000, 0x76, 0xff7fffff, 0xff7fffff, 0x3000080},
10244{0x3000000, 0x76, 0xff800000, 0xff800000, 0x3000080},
10245{0x3000000, 0x76, 0xff800001, 0x7fc00000, 0x3000081},
10246{0x3000000, 0x76, 0xff984a37, 0x7fc00000, 0x3000081},
10247{0x3000000, 0x76, 0xffbfffff, 0x7fc00000, 0x3000081},
10248{0x3000000, 0x76, 0xffc00000, 0x7fc00000, 0x3000080},
10249{0x3000000, 0x76, 0xffd9ba98, 0x7fc00000, 0x3000080},
10250{0x3000000, 0x76, 0xffffffff, 0x7fc00000, 0x3000080},
10251{0x3000000, 0x76, 0x4f3495cb, 0x4f3495cb, 0x3000080},
10252{0x3000000, 0x76, 0xe73a5134, 0xe73a5134, 0x3000080},
10253{0x3000000, 0x76, 0x7c994e9e, 0x7c994e9e, 0x3000080},
10254{0x3000000, 0x76, 0x6164bd6c, 0x6164bd6c, 0x3000080},
10255{0x3000000, 0x76, 0x9503366, 0x9503366, 0x3000080},
10256{0x3000000, 0x76, 0xbf5a97c9, 0xbf5a97c9, 0x3000080},
10257{0x3000000, 0x76, 0xe6ff1a14, 0xe6ff1a14, 0x3000080},
10258{0x3000000, 0x76, 0x77f31e2f, 0x77f31e2f, 0x3000080},
10259{0x3000000, 0x76, 0xaab4d7d8, 0xaab4d7d8, 0x3000080},
10260{0x3000000, 0x76, 0x966320b, 0x966320b, 0x3000080},
10261{0x3000000, 0x76, 0xb26bddee, 0xb26bddee, 0x3000080},
10262{0x3000000, 0x76, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000080},
10263{0x3000000, 0x76, 0x317285d3, 0x317285d3, 0x3000080},
10264{0x3000000, 0x76, 0x3c9623b1, 0x3c9623b1, 0x3000080},
10265{0x3000000, 0x76, 0x51fd2c7c, 0x51fd2c7c, 0x3000080},
10266{0x3000000, 0x76, 0x7b906a6c, 0x7b906a6c, 0x3000080},
10267{0x3000000, 0x2b94, 0x0, 0x0, 0x3000080},
10268{0x3000000, 0x2b94, 0x1, 0x0, 0x3000080},
10269{0x3000000, 0x2b94, 0x76, 0x0, 0x3000080},
10270{0x3000000, 0x2b94, 0x2b94, 0x0, 0x3000080},
10271{0x3000000, 0x2b94, 0x636d24, 0x0, 0x3000080},
10272{0x3000000, 0x2b94, 0x7fffff, 0x0, 0x3000080},
10273{0x3000000, 0x2b94, 0x800000, 0x800000, 0x3000080},
10274{0x3000000, 0x2b94, 0x800002, 0x800002, 0x3000080},
10275{0x3000000, 0x2b94, 0x1398437, 0x1398437, 0x3000080},
10276{0x3000000, 0x2b94, 0xba98d27, 0xba98d27, 0x3000080},
10277{0x3000000, 0x2b94, 0xba98d7a, 0xba98d7a, 0x3000080},
10278{0x3000000, 0x2b94, 0x751f853a, 0x751f853a, 0x3000080},
10279{0x3000000, 0x2b94, 0x7f7ffff0, 0x7f7ffff0, 0x3000080},
10280{0x3000000, 0x2b94, 0x7f7fffff, 0x7f7fffff, 0x3000080},
10281{0x3000000, 0x2b94, 0x7f800000, 0x7f800000, 0x3000080},
10282{0x3000000, 0x2b94, 0x7f800001, 0x7fc00000, 0x3000081},
10283{0x3000000, 0x2b94, 0x7f984a37, 0x7fc00000, 0x3000081},
10284{0x3000000, 0x2b94, 0x7fbfffff, 0x7fc00000, 0x3000081},
10285{0x3000000, 0x2b94, 0x7fc00000, 0x7fc00000, 0x3000080},
10286{0x3000000, 0x2b94, 0x7fd9ba98, 0x7fc00000, 0x3000080},
10287{0x3000000, 0x2b94, 0x7fffffff, 0x7fc00000, 0x3000080},
10288{0x3000000, 0x2b94, 0x80000000, 0x0, 0x3000080},
10289{0x3000000, 0x2b94, 0x80000001, 0x0, 0x3000080},
10290{0x3000000, 0x2b94, 0x80000076, 0x0, 0x3000080},
10291{0x3000000, 0x2b94, 0x80002b94, 0x0, 0x3000080},
10292{0x3000000, 0x2b94, 0x80636d24, 0x0, 0x3000080},
10293{0x3000000, 0x2b94, 0x807fffff, 0x0, 0x3000080},
10294{0x3000000, 0x2b94, 0x80800000, 0x80800000, 0x3000080},
10295{0x3000000, 0x2b94, 0x80800002, 0x80800002, 0x3000080},
10296{0x3000000, 0x2b94, 0x81398437, 0x81398437, 0x3000080},
10297{0x3000000, 0x2b94, 0x8ba98d27, 0x8ba98d27, 0x3000080},
10298{0x3000000, 0x2b94, 0x8ba98d7a, 0x8ba98d7a, 0x3000080},
10299{0x3000000, 0x2b94, 0xf51f853a, 0xf51f853a, 0x3000080},
10300{0x3000000, 0x2b94, 0xff7ffff0, 0xff7ffff0, 0x3000080},
10301{0x3000000, 0x2b94, 0xff7fffff, 0xff7fffff, 0x3000080},
10302{0x3000000, 0x2b94, 0xff800000, 0xff800000, 0x3000080},
10303{0x3000000, 0x2b94, 0xff800001, 0x7fc00000, 0x3000081},
10304{0x3000000, 0x2b94, 0xff984a37, 0x7fc00000, 0x3000081},
10305{0x3000000, 0x2b94, 0xffbfffff, 0x7fc00000, 0x3000081},
10306{0x3000000, 0x2b94, 0xffc00000, 0x7fc00000, 0x3000080},
10307{0x3000000, 0x2b94, 0xffd9ba98, 0x7fc00000, 0x3000080},
10308{0x3000000, 0x2b94, 0xffffffff, 0x7fc00000, 0x3000080},
10309{0x3000000, 0x2b94, 0x4f3495cb, 0x4f3495cb, 0x3000080},
10310{0x3000000, 0x2b94, 0xe73a5134, 0xe73a5134, 0x3000080},
10311{0x3000000, 0x2b94, 0x7c994e9e, 0x7c994e9e, 0x3000080},
10312{0x3000000, 0x2b94, 0x6164bd6c, 0x6164bd6c, 0x3000080},
10313{0x3000000, 0x2b94, 0x9503366, 0x9503366, 0x3000080},
10314{0x3000000, 0x2b94, 0xbf5a97c9, 0xbf5a97c9, 0x3000080},
10315{0x3000000, 0x2b94, 0xe6ff1a14, 0xe6ff1a14, 0x3000080},
10316{0x3000000, 0x2b94, 0x77f31e2f, 0x77f31e2f, 0x3000080},
10317{0x3000000, 0x2b94, 0xaab4d7d8, 0xaab4d7d8, 0x3000080},
10318{0x3000000, 0x2b94, 0x966320b, 0x966320b, 0x3000080},
10319{0x3000000, 0x2b94, 0xb26bddee, 0xb26bddee, 0x3000080},
10320{0x3000000, 0x2b94, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000080},
10321{0x3000000, 0x2b94, 0x317285d3, 0x317285d3, 0x3000080},
10322{0x3000000, 0x2b94, 0x3c9623b1, 0x3c9623b1, 0x3000080},
10323{0x3000000, 0x2b94, 0x51fd2c7c, 0x51fd2c7c, 0x3000080},
10324{0x3000000, 0x2b94, 0x7b906a6c, 0x7b906a6c, 0x3000080},
10325{0x3000000, 0x636d24, 0x0, 0x0, 0x3000080},
10326{0x3000000, 0x636d24, 0x1, 0x0, 0x3000080},
10327{0x3000000, 0x636d24, 0x76, 0x0, 0x3000080},
10328{0x3000000, 0x636d24, 0x2b94, 0x0, 0x3000080},
10329{0x3000000, 0x636d24, 0x636d24, 0x0, 0x3000080},
10330{0x3000000, 0x636d24, 0x7fffff, 0x0, 0x3000080},
10331{0x3000000, 0x636d24, 0x800000, 0x800000, 0x3000080},
10332{0x3000000, 0x636d24, 0x800002, 0x800002, 0x3000080},
10333{0x3000000, 0x636d24, 0x1398437, 0x1398437, 0x3000080},
10334{0x3000000, 0x636d24, 0xba98d27, 0xba98d27, 0x3000080},
10335{0x3000000, 0x636d24, 0xba98d7a, 0xba98d7a, 0x3000080},
10336{0x3000000, 0x636d24, 0x751f853a, 0x751f853a, 0x3000080},
10337{0x3000000, 0x636d24, 0x7f7ffff0, 0x7f7ffff0, 0x3000080},
10338{0x3000000, 0x636d24, 0x7f7fffff, 0x7f7fffff, 0x3000080},
10339{0x3000000, 0x636d24, 0x7f800000, 0x7f800000, 0x3000080},
10340{0x3000000, 0x636d24, 0x7f800001, 0x7fc00000, 0x3000081},
10341{0x3000000, 0x636d24, 0x7f984a37, 0x7fc00000, 0x3000081},
10342{0x3000000, 0x636d24, 0x7fbfffff, 0x7fc00000, 0x3000081},
10343{0x3000000, 0x636d24, 0x7fc00000, 0x7fc00000, 0x3000080},
10344{0x3000000, 0x636d24, 0x7fd9ba98, 0x7fc00000, 0x3000080},
10345{0x3000000, 0x636d24, 0x7fffffff, 0x7fc00000, 0x3000080},
10346{0x3000000, 0x636d24, 0x80000000, 0x0, 0x3000080},
10347{0x3000000, 0x636d24, 0x80000001, 0x0, 0x3000080},
10348{0x3000000, 0x636d24, 0x80000076, 0x0, 0x3000080},
10349{0x3000000, 0x636d24, 0x80002b94, 0x0, 0x3000080},
10350{0x3000000, 0x636d24, 0x80636d24, 0x0, 0x3000080},
10351{0x3000000, 0x636d24, 0x807fffff, 0x0, 0x3000080},
10352{0x3000000, 0x636d24, 0x80800000, 0x80800000, 0x3000080},
10353{0x3000000, 0x636d24, 0x80800002, 0x80800002, 0x3000080},
10354{0x3000000, 0x636d24, 0x81398437, 0x81398437, 0x3000080},
10355{0x3000000, 0x636d24, 0x8ba98d27, 0x8ba98d27, 0x3000080},
10356{0x3000000, 0x636d24, 0x8ba98d7a, 0x8ba98d7a, 0x3000080},
10357{0x3000000, 0x636d24, 0xf51f853a, 0xf51f853a, 0x3000080},
10358{0x3000000, 0x636d24, 0xff7ffff0, 0xff7ffff0, 0x3000080},
10359{0x3000000, 0x636d24, 0xff7fffff, 0xff7fffff, 0x3000080},
10360{0x3000000, 0x636d24, 0xff800000, 0xff800000, 0x3000080},
10361{0x3000000, 0x636d24, 0xff800001, 0x7fc00000, 0x3000081},
10362{0x3000000, 0x636d24, 0xff984a37, 0x7fc00000, 0x3000081},
10363{0x3000000, 0x636d24, 0xffbfffff, 0x7fc00000, 0x3000081},
10364{0x3000000, 0x636d24, 0xffc00000, 0x7fc00000, 0x3000080},
10365{0x3000000, 0x636d24, 0xffd9ba98, 0x7fc00000, 0x3000080},
10366{0x3000000, 0x636d24, 0xffffffff, 0x7fc00000, 0x3000080},
10367{0x3000000, 0x636d24, 0x4f3495cb, 0x4f3495cb, 0x3000080},
10368{0x3000000, 0x636d24, 0xe73a5134, 0xe73a5134, 0x3000080},
10369{0x3000000, 0x636d24, 0x7c994e9e, 0x7c994e9e, 0x3000080},
10370{0x3000000, 0x636d24, 0x6164bd6c, 0x6164bd6c, 0x3000080},
10371{0x3000000, 0x636d24, 0x9503366, 0x9503366, 0x3000080},
10372{0x3000000, 0x636d24, 0xbf5a97c9, 0xbf5a97c9, 0x3000080},
10373{0x3000000, 0x636d24, 0xe6ff1a14, 0xe6ff1a14, 0x3000080},
10374{0x3000000, 0x636d24, 0x77f31e2f, 0x77f31e2f, 0x3000080},
10375{0x3000000, 0x636d24, 0xaab4d7d8, 0xaab4d7d8, 0x3000080},
10376{0x3000000, 0x636d24, 0x966320b, 0x966320b, 0x3000080},
10377{0x3000000, 0x636d24, 0xb26bddee, 0xb26bddee, 0x3000080},
10378{0x3000000, 0x636d24, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000080},
10379{0x3000000, 0x636d24, 0x317285d3, 0x317285d3, 0x3000080},
10380{0x3000000, 0x636d24, 0x3c9623b1, 0x3c9623b1, 0x3000080},
10381{0x3000000, 0x636d24, 0x51fd2c7c, 0x51fd2c7c, 0x3000080},
10382{0x3000000, 0x636d24, 0x7b906a6c, 0x7b906a6c, 0x3000080},
10383{0x3000000, 0x7fffff, 0x0, 0x0, 0x3000080},
10384{0x3000000, 0x7fffff, 0x1, 0x0, 0x3000080},
10385{0x3000000, 0x7fffff, 0x76, 0x0, 0x3000080},
10386{0x3000000, 0x7fffff, 0x2b94, 0x0, 0x3000080},
10387{0x3000000, 0x7fffff, 0x636d24, 0x0, 0x3000080},
10388{0x3000000, 0x7fffff, 0x7fffff, 0x0, 0x3000080},
10389{0x3000000, 0x7fffff, 0x800000, 0x800000, 0x3000080},
10390{0x3000000, 0x7fffff, 0x800002, 0x800002, 0x3000080},
10391{0x3000000, 0x7fffff, 0x1398437, 0x1398437, 0x3000080},
10392{0x3000000, 0x7fffff, 0xba98d27, 0xba98d27, 0x3000080},
10393{0x3000000, 0x7fffff, 0xba98d7a, 0xba98d7a, 0x3000080},
10394{0x3000000, 0x7fffff, 0x751f853a, 0x751f853a, 0x3000080},
10395{0x3000000, 0x7fffff, 0x7f7ffff0, 0x7f7ffff0, 0x3000080},
10396{0x3000000, 0x7fffff, 0x7f7fffff, 0x7f7fffff, 0x3000080},
10397{0x3000000, 0x7fffff, 0x7f800000, 0x7f800000, 0x3000080},
10398{0x3000000, 0x7fffff, 0x7f800001, 0x7fc00000, 0x3000081},
10399{0x3000000, 0x7fffff, 0x7f984a37, 0x7fc00000, 0x3000081},
10400{0x3000000, 0x7fffff, 0x7fbfffff, 0x7fc00000, 0x3000081},
10401{0x3000000, 0x7fffff, 0x7fc00000, 0x7fc00000, 0x3000080},
10402{0x3000000, 0x7fffff, 0x7fd9ba98, 0x7fc00000, 0x3000080},
10403{0x3000000, 0x7fffff, 0x7fffffff, 0x7fc00000, 0x3000080},
10404{0x3000000, 0x7fffff, 0x80000000, 0x0, 0x3000080},
10405{0x3000000, 0x7fffff, 0x80000001, 0x0, 0x3000080},
10406{0x3000000, 0x7fffff, 0x80000076, 0x0, 0x3000080},
10407{0x3000000, 0x7fffff, 0x80002b94, 0x0, 0x3000080},
10408{0x3000000, 0x7fffff, 0x80636d24, 0x0, 0x3000080},
10409{0x3000000, 0x7fffff, 0x807fffff, 0x0, 0x3000080},
10410{0x3000000, 0x7fffff, 0x80800000, 0x80800000, 0x3000080},
10411{0x3000000, 0x7fffff, 0x80800002, 0x80800002, 0x3000080},
10412{0x3000000, 0x7fffff, 0x81398437, 0x81398437, 0x3000080},
10413{0x3000000, 0x7fffff, 0x8ba98d27, 0x8ba98d27, 0x3000080},
10414{0x3000000, 0x7fffff, 0x8ba98d7a, 0x8ba98d7a, 0x3000080},
10415{0x3000000, 0x7fffff, 0xf51f853a, 0xf51f853a, 0x3000080},
10416{0x3000000, 0x7fffff, 0xff7ffff0, 0xff7ffff0, 0x3000080},
10417{0x3000000, 0x7fffff, 0xff7fffff, 0xff7fffff, 0x3000080},
10418{0x3000000, 0x7fffff, 0xff800000, 0xff800000, 0x3000080},
10419{0x3000000, 0x7fffff, 0xff800001, 0x7fc00000, 0x3000081},
10420{0x3000000, 0x7fffff, 0xff984a37, 0x7fc00000, 0x3000081},
10421{0x3000000, 0x7fffff, 0xffbfffff, 0x7fc00000, 0x3000081},
10422{0x3000000, 0x7fffff, 0xffc00000, 0x7fc00000, 0x3000080},
10423{0x3000000, 0x7fffff, 0xffd9ba98, 0x7fc00000, 0x3000080},
10424{0x3000000, 0x7fffff, 0xffffffff, 0x7fc00000, 0x3000080},
10425{0x3000000, 0x7fffff, 0x4f3495cb, 0x4f3495cb, 0x3000080},
10426{0x3000000, 0x7fffff, 0xe73a5134, 0xe73a5134, 0x3000080},
10427{0x3000000, 0x7fffff, 0x7c994e9e, 0x7c994e9e, 0x3000080},
10428{0x3000000, 0x7fffff, 0x6164bd6c, 0x6164bd6c, 0x3000080},
10429{0x3000000, 0x7fffff, 0x9503366, 0x9503366, 0x3000080},
10430{0x3000000, 0x7fffff, 0xbf5a97c9, 0xbf5a97c9, 0x3000080},
10431{0x3000000, 0x7fffff, 0xe6ff1a14, 0xe6ff1a14, 0x3000080},
10432{0x3000000, 0x7fffff, 0x77f31e2f, 0x77f31e2f, 0x3000080},
10433{0x3000000, 0x7fffff, 0xaab4d7d8, 0xaab4d7d8, 0x3000080},
10434{0x3000000, 0x7fffff, 0x966320b, 0x966320b, 0x3000080},
10435{0x3000000, 0x7fffff, 0xb26bddee, 0xb26bddee, 0x3000080},
10436{0x3000000, 0x7fffff, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000080},
10437{0x3000000, 0x7fffff, 0x317285d3, 0x317285d3, 0x3000080},
10438{0x3000000, 0x7fffff, 0x3c9623b1, 0x3c9623b1, 0x3000080},
10439{0x3000000, 0x7fffff, 0x51fd2c7c, 0x51fd2c7c, 0x3000080},
10440{0x3000000, 0x7fffff, 0x7b906a6c, 0x7b906a6c, 0x3000080},
10441{0x3000000, 0x800000, 0x0, 0x800000, 0x3000000},
10442{0x3000000, 0x800000, 0x1, 0x800000, 0x3000080},
10443{0x3000000, 0x800000, 0x76, 0x800000, 0x3000080},
10444{0x3000000, 0x800000, 0x2b94, 0x800000, 0x3000080},
10445{0x3000000, 0x800000, 0x636d24, 0x800000, 0x3000080},
10446{0x3000000, 0x800000, 0x7fffff, 0x800000, 0x3000080},
10447{0x3000000, 0x800000, 0x800000, 0x1000000, 0x3000000},
10448{0x3000000, 0x800000, 0x800002, 0x1000001, 0x3000000},
10449{0x3000000, 0x800000, 0x1398437, 0x1798437, 0x3000000},
10450{0x3000000, 0x800000, 0xba98d27, 0xba98d29, 0x3000000},
10451{0x3000000, 0x800000, 0xba98d7a, 0xba98d7c, 0x3000000},
10452{0x3000000, 0x800000, 0x751f853a, 0x751f853a, 0x3000010},
10453{0x3000000, 0x800000, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
10454{0x3000000, 0x800000, 0x7f7fffff, 0x7f7fffff, 0x3000010},
10455{0x3000000, 0x800000, 0x7f800000, 0x7f800000, 0x3000000},
10456{0x3000000, 0x800000, 0x7f800001, 0x7fc00000, 0x3000001},
10457{0x3000000, 0x800000, 0x7f984a37, 0x7fc00000, 0x3000001},
10458{0x3000000, 0x800000, 0x7fbfffff, 0x7fc00000, 0x3000001},
10459{0x3000000, 0x800000, 0x7fc00000, 0x7fc00000, 0x3000000},
10460{0x3000000, 0x800000, 0x7fd9ba98, 0x7fc00000, 0x3000000},
10461{0x3000000, 0x800000, 0x7fffffff, 0x7fc00000, 0x3000000},
10462{0x3000000, 0x800000, 0x80000000, 0x800000, 0x3000000},
10463{0x3000000, 0x800000, 0x80000001, 0x800000, 0x3000080},
10464{0x3000000, 0x800000, 0x80000076, 0x800000, 0x3000080},
10465{0x3000000, 0x800000, 0x80002b94, 0x800000, 0x3000080},
10466{0x3000000, 0x800000, 0x80636d24, 0x800000, 0x3000080},
10467{0x3000000, 0x800000, 0x807fffff, 0x800000, 0x3000080},
10468{0x3000000, 0x800000, 0x80800000, 0x0, 0x3000000},
10469{0x3000000, 0x800000, 0x80800002, 0x0, 0x3000008},
10470{0x3000000, 0x800000, 0x81398437, 0x80f3086e, 0x3000000},
10471{0x3000000, 0x800000, 0x8ba98d27, 0x8ba98d25, 0x3000000},
10472{0x3000000, 0x800000, 0x8ba98d7a, 0x8ba98d78, 0x3000000},
10473{0x3000000, 0x800000, 0xf51f853a, 0xf51f853a, 0x3000010},
10474{0x3000000, 0x800000, 0xff7ffff0, 0xff7ffff0, 0x3000010},
10475{0x3000000, 0x800000, 0xff7fffff, 0xff7fffff, 0x3000010},
10476{0x3000000, 0x800000, 0xff800000, 0xff800000, 0x3000000},
10477{0x3000000, 0x800000, 0xff800001, 0x7fc00000, 0x3000001},
10478{0x3000000, 0x800000, 0xff984a37, 0x7fc00000, 0x3000001},
10479{0x3000000, 0x800000, 0xffbfffff, 0x7fc00000, 0x3000001},
10480{0x3000000, 0x800000, 0xffc00000, 0x7fc00000, 0x3000000},
10481{0x3000000, 0x800000, 0xffd9ba98, 0x7fc00000, 0x3000000},
10482{0x3000000, 0x800000, 0xffffffff, 0x7fc00000, 0x3000000},
10483{0x3000000, 0x800000, 0x4f3495cb, 0x4f3495cb, 0x3000010},
10484{0x3000000, 0x800000, 0xe73a5134, 0xe73a5134, 0x3000010},
10485{0x3000000, 0x800000, 0x7c994e9e, 0x7c994e9e, 0x3000010},
10486{0x3000000, 0x800000, 0x6164bd6c, 0x6164bd6c, 0x3000010},
10487{0x3000000, 0x800000, 0x9503366, 0x95033a6, 0x3000000},
10488{0x3000000, 0x800000, 0xbf5a97c9, 0xbf5a97c9, 0x3000010},
10489{0x3000000, 0x800000, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
10490{0x3000000, 0x800000, 0x77f31e2f, 0x77f31e2f, 0x3000010},
10491{0x3000000, 0x800000, 0xaab4d7d8, 0xaab4d7d8, 0x3000010},
10492{0x3000000, 0x800000, 0x966320b, 0x966324b, 0x3000000},
10493{0x3000000, 0x800000, 0xb26bddee, 0xb26bddee, 0x3000010},
10494{0x3000000, 0x800000, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000010},
10495{0x3000000, 0x800000, 0x317285d3, 0x317285d3, 0x3000010},
10496{0x3000000, 0x800000, 0x3c9623b1, 0x3c9623b1, 0x3000010},
10497{0x3000000, 0x800000, 0x51fd2c7c, 0x51fd2c7c, 0x3000010},
10498{0x3000000, 0x800000, 0x7b906a6c, 0x7b906a6c, 0x3000010},
10499{0x3000000, 0x800002, 0x0, 0x800002, 0x3000000},
10500{0x3000000, 0x800002, 0x1, 0x800002, 0x3000080},
10501{0x3000000, 0x800002, 0x76, 0x800002, 0x3000080},
10502{0x3000000, 0x800002, 0x2b94, 0x800002, 0x3000080},
10503{0x3000000, 0x800002, 0x636d24, 0x800002, 0x3000080},
10504{0x3000000, 0x800002, 0x7fffff, 0x800002, 0x3000080},
10505{0x3000000, 0x800002, 0x800000, 0x1000001, 0x3000000},
10506{0x3000000, 0x800002, 0x800002, 0x1000002, 0x3000000},
10507{0x3000000, 0x800002, 0x1398437, 0x1798438, 0x3000000},
10508{0x3000000, 0x800002, 0xba98d27, 0xba98d29, 0x3000010},
10509{0x3000000, 0x800002, 0xba98d7a, 0xba98d7c, 0x3000010},
10510{0x3000000, 0x800002, 0x751f853a, 0x751f853a, 0x3000010},
10511{0x3000000, 0x800002, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
10512{0x3000000, 0x800002, 0x7f7fffff, 0x7f7fffff, 0x3000010},
10513{0x3000000, 0x800002, 0x7f800000, 0x7f800000, 0x3000000},
10514{0x3000000, 0x800002, 0x7f800001, 0x7fc00000, 0x3000001},
10515{0x3000000, 0x800002, 0x7f984a37, 0x7fc00000, 0x3000001},
10516{0x3000000, 0x800002, 0x7fbfffff, 0x7fc00000, 0x3000001},
10517{0x3000000, 0x800002, 0x7fc00000, 0x7fc00000, 0x3000000},
10518{0x3000000, 0x800002, 0x7fd9ba98, 0x7fc00000, 0x3000000},
10519{0x3000000, 0x800002, 0x7fffffff, 0x7fc00000, 0x3000000},
10520{0x3000000, 0x800002, 0x80000000, 0x800002, 0x3000000},
10521{0x3000000, 0x800002, 0x80000001, 0x800002, 0x3000080},
10522{0x3000000, 0x800002, 0x80000076, 0x800002, 0x3000080},
10523{0x3000000, 0x800002, 0x80002b94, 0x800002, 0x3000080},
10524{0x3000000, 0x800002, 0x80636d24, 0x800002, 0x3000080},
10525{0x3000000, 0x800002, 0x807fffff, 0x800002, 0x3000080},
10526{0x3000000, 0x800002, 0x80800000, 0x0, 0x3000008},
10527{0x3000000, 0x800002, 0x80800002, 0x0, 0x3000000},
10528{0x3000000, 0x800002, 0x81398437, 0x80f3086c, 0x3000000},
10529{0x3000000, 0x800002, 0x8ba98d27, 0x8ba98d25, 0x3000010},
10530{0x3000000, 0x800002, 0x8ba98d7a, 0x8ba98d78, 0x3000010},
10531{0x3000000, 0x800002, 0xf51f853a, 0xf51f853a, 0x3000010},
10532{0x3000000, 0x800002, 0xff7ffff0, 0xff7ffff0, 0x3000010},
10533{0x3000000, 0x800002, 0xff7fffff, 0xff7fffff, 0x3000010},
10534{0x3000000, 0x800002, 0xff800000, 0xff800000, 0x3000000},
10535{0x3000000, 0x800002, 0xff800001, 0x7fc00000, 0x3000001},
10536{0x3000000, 0x800002, 0xff984a37, 0x7fc00000, 0x3000001},
10537{0x3000000, 0x800002, 0xffbfffff, 0x7fc00000, 0x3000001},
10538{0x3000000, 0x800002, 0xffc00000, 0x7fc00000, 0x3000000},
10539{0x3000000, 0x800002, 0xffd9ba98, 0x7fc00000, 0x3000000},
10540{0x3000000, 0x800002, 0xffffffff, 0x7fc00000, 0x3000000},
10541{0x3000000, 0x800002, 0x4f3495cb, 0x4f3495cb, 0x3000010},
10542{0x3000000, 0x800002, 0xe73a5134, 0xe73a5134, 0x3000010},
10543{0x3000000, 0x800002, 0x7c994e9e, 0x7c994e9e, 0x3000010},
10544{0x3000000, 0x800002, 0x6164bd6c, 0x6164bd6c, 0x3000010},
10545{0x3000000, 0x800002, 0x9503366, 0x95033a6, 0x3000010},
10546{0x3000000, 0x800002, 0xbf5a97c9, 0xbf5a97c9, 0x3000010},
10547{0x3000000, 0x800002, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
10548{0x3000000, 0x800002, 0x77f31e2f, 0x77f31e2f, 0x3000010},
10549{0x3000000, 0x800002, 0xaab4d7d8, 0xaab4d7d8, 0x3000010},
10550{0x3000000, 0x800002, 0x966320b, 0x966324b, 0x3000010},
10551{0x3000000, 0x800002, 0xb26bddee, 0xb26bddee, 0x3000010},
10552{0x3000000, 0x800002, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000010},
10553{0x3000000, 0x800002, 0x317285d3, 0x317285d3, 0x3000010},
10554{0x3000000, 0x800002, 0x3c9623b1, 0x3c9623b1, 0x3000010},
10555{0x3000000, 0x800002, 0x51fd2c7c, 0x51fd2c7c, 0x3000010},
10556{0x3000000, 0x800002, 0x7b906a6c, 0x7b906a6c, 0x3000010},
10557{0x3000000, 0x1398437, 0x0, 0x1398437, 0x3000000},
10558{0x3000000, 0x1398437, 0x1, 0x1398437, 0x3000080},
10559{0x3000000, 0x1398437, 0x76, 0x1398437, 0x3000080},
10560{0x3000000, 0x1398437, 0x2b94, 0x1398437, 0x3000080},
10561{0x3000000, 0x1398437, 0x636d24, 0x1398437, 0x3000080},
10562{0x3000000, 0x1398437, 0x7fffff, 0x1398437, 0x3000080},
10563{0x3000000, 0x1398437, 0x800000, 0x1798437, 0x3000000},
10564{0x3000000, 0x1398437, 0x800002, 0x1798438, 0x3000000},
10565{0x3000000, 0x1398437, 0x1398437, 0x1b98437, 0x3000000},
10566{0x3000000, 0x1398437, 0xba98d27, 0xba98d2d, 0x3000010},
10567{0x3000000, 0x1398437, 0xba98d7a, 0xba98d80, 0x3000010},
10568{0x3000000, 0x1398437, 0x751f853a, 0x751f853a, 0x3000010},
10569{0x3000000, 0x1398437, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
10570{0x3000000, 0x1398437, 0x7f7fffff, 0x7f7fffff, 0x3000010},
10571{0x3000000, 0x1398437, 0x7f800000, 0x7f800000, 0x3000000},
10572{0x3000000, 0x1398437, 0x7f800001, 0x7fc00000, 0x3000001},
10573{0x3000000, 0x1398437, 0x7f984a37, 0x7fc00000, 0x3000001},
10574{0x3000000, 0x1398437, 0x7fbfffff, 0x7fc00000, 0x3000001},
10575{0x3000000, 0x1398437, 0x7fc00000, 0x7fc00000, 0x3000000},
10576{0x3000000, 0x1398437, 0x7fd9ba98, 0x7fc00000, 0x3000000},
10577{0x3000000, 0x1398437, 0x7fffffff, 0x7fc00000, 0x3000000},
10578{0x3000000, 0x1398437, 0x80000000, 0x1398437, 0x3000000},
10579{0x3000000, 0x1398437, 0x80000001, 0x1398437, 0x3000080},
10580{0x3000000, 0x1398437, 0x80000076, 0x1398437, 0x3000080},
10581{0x3000000, 0x1398437, 0x80002b94, 0x1398437, 0x3000080},
10582{0x3000000, 0x1398437, 0x80636d24, 0x1398437, 0x3000080},
10583{0x3000000, 0x1398437, 0x807fffff, 0x1398437, 0x3000080},
10584{0x3000000, 0x1398437, 0x80800000, 0xf3086e, 0x3000000},
10585{0x3000000, 0x1398437, 0x80800002, 0xf3086c, 0x3000000},
10586{0x3000000, 0x1398437, 0x81398437, 0x0, 0x3000000},
10587{0x3000000, 0x1398437, 0x8ba98d27, 0x8ba98d21, 0x3000010},
10588{0x3000000, 0x1398437, 0x8ba98d7a, 0x8ba98d74, 0x3000010},
10589{0x3000000, 0x1398437, 0xf51f853a, 0xf51f853a, 0x3000010},
10590{0x3000000, 0x1398437, 0xff7ffff0, 0xff7ffff0, 0x3000010},
10591{0x3000000, 0x1398437, 0xff7fffff, 0xff7fffff, 0x3000010},
10592{0x3000000, 0x1398437, 0xff800000, 0xff800000, 0x3000000},
10593{0x3000000, 0x1398437, 0xff800001, 0x7fc00000, 0x3000001},
10594{0x3000000, 0x1398437, 0xff984a37, 0x7fc00000, 0x3000001},
10595{0x3000000, 0x1398437, 0xffbfffff, 0x7fc00000, 0x3000001},
10596{0x3000000, 0x1398437, 0xffc00000, 0x7fc00000, 0x3000000},
10597{0x3000000, 0x1398437, 0xffd9ba98, 0x7fc00000, 0x3000000},
10598{0x3000000, 0x1398437, 0xffffffff, 0x7fc00000, 0x3000000},
10599{0x3000000, 0x1398437, 0x4f3495cb, 0x4f3495cb, 0x3000010},
10600{0x3000000, 0x1398437, 0xe73a5134, 0xe73a5134, 0x3000010},
10601{0x3000000, 0x1398437, 0x7c994e9e, 0x7c994e9e, 0x3000010},
10602{0x3000000, 0x1398437, 0x6164bd6c, 0x6164bd6c, 0x3000010},
10603{0x3000000, 0x1398437, 0x9503366, 0x9503420, 0x3000010},
10604{0x3000000, 0x1398437, 0xbf5a97c9, 0xbf5a97c9, 0x3000010},
10605{0x3000000, 0x1398437, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
10606{0x3000000, 0x1398437, 0x77f31e2f, 0x77f31e2f, 0x3000010},
10607{0x3000000, 0x1398437, 0xaab4d7d8, 0xaab4d7d8, 0x3000010},
10608{0x3000000, 0x1398437, 0x966320b, 0x96632c5, 0x3000010},
10609{0x3000000, 0x1398437, 0xb26bddee, 0xb26bddee, 0x3000010},
10610{0x3000000, 0x1398437, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000010},
10611{0x3000000, 0x1398437, 0x317285d3, 0x317285d3, 0x3000010},
10612{0x3000000, 0x1398437, 0x3c9623b1, 0x3c9623b1, 0x3000010},
10613{0x3000000, 0x1398437, 0x51fd2c7c, 0x51fd2c7c, 0x3000010},
10614{0x3000000, 0x1398437, 0x7b906a6c, 0x7b906a6c, 0x3000010},
10615{0x3000000, 0xba98d27, 0x0, 0xba98d27, 0x3000000},
10616{0x3000000, 0xba98d27, 0x1, 0xba98d27, 0x3000080},
10617{0x3000000, 0xba98d27, 0x76, 0xba98d27, 0x3000080},
10618{0x3000000, 0xba98d27, 0x2b94, 0xba98d27, 0x3000080},
10619{0x3000000, 0xba98d27, 0x636d24, 0xba98d27, 0x3000080},
10620{0x3000000, 0xba98d27, 0x7fffff, 0xba98d27, 0x3000080},
10621{0x3000000, 0xba98d27, 0x800000, 0xba98d29, 0x3000000},
10622{0x3000000, 0xba98d27, 0x800002, 0xba98d29, 0x3000010},
10623{0x3000000, 0xba98d27, 0x1398437, 0xba98d2d, 0x3000010},
10624{0x3000000, 0xba98d27, 0xba98d27, 0xc298d27, 0x3000000},
10625{0x3000000, 0xba98d27, 0xba98d7a, 0xc298d50, 0x3000010},
10626{0x3000000, 0xba98d27, 0x751f853a, 0x751f853a, 0x3000010},
10627{0x3000000, 0xba98d27, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
10628{0x3000000, 0xba98d27, 0x7f7fffff, 0x7f7fffff, 0x3000010},
10629{0x3000000, 0xba98d27, 0x7f800000, 0x7f800000, 0x3000000},
10630{0x3000000, 0xba98d27, 0x7f800001, 0x7fc00000, 0x3000001},
10631{0x3000000, 0xba98d27, 0x7f984a37, 0x7fc00000, 0x3000001},
10632{0x3000000, 0xba98d27, 0x7fbfffff, 0x7fc00000, 0x3000001},
10633{0x3000000, 0xba98d27, 0x7fc00000, 0x7fc00000, 0x3000000},
10634{0x3000000, 0xba98d27, 0x7fd9ba98, 0x7fc00000, 0x3000000},
10635{0x3000000, 0xba98d27, 0x7fffffff, 0x7fc00000, 0x3000000},
10636{0x3000000, 0xba98d27, 0x80000000, 0xba98d27, 0x3000000},
10637{0x3000000, 0xba98d27, 0x80000001, 0xba98d27, 0x3000080},
10638{0x3000000, 0xba98d27, 0x80000076, 0xba98d27, 0x3000080},
10639{0x3000000, 0xba98d27, 0x80002b94, 0xba98d27, 0x3000080},
10640{0x3000000, 0xba98d27, 0x80636d24, 0xba98d27, 0x3000080},
10641{0x3000000, 0xba98d27, 0x807fffff, 0xba98d27, 0x3000080},
10642{0x3000000, 0xba98d27, 0x80800000, 0xba98d25, 0x3000000},
10643{0x3000000, 0xba98d27, 0x80800002, 0xba98d25, 0x3000010},
10644{0x3000000, 0xba98d27, 0x81398437, 0xba98d21, 0x3000010},
10645{0x3000000, 0xba98d27, 0x8ba98d27, 0x0, 0x3000000},
10646{0x3000000, 0xba98d27, 0x8ba98d7a, 0x83260000, 0x3000000},
10647{0x3000000, 0xba98d27, 0xf51f853a, 0xf51f853a, 0x3000010},
10648{0x3000000, 0xba98d27, 0xff7ffff0, 0xff7ffff0, 0x3000010},
10649{0x3000000, 0xba98d27, 0xff7fffff, 0xff7fffff, 0x3000010},
10650{0x3000000, 0xba98d27, 0xff800000, 0xff800000, 0x3000000},
10651{0x3000000, 0xba98d27, 0xff800001, 0x7fc00000, 0x3000001},
10652{0x3000000, 0xba98d27, 0xff984a37, 0x7fc00000, 0x3000001},
10653{0x3000000, 0xba98d27, 0xffbfffff, 0x7fc00000, 0x3000001},
10654{0x3000000, 0xba98d27, 0xffc00000, 0x7fc00000, 0x3000000},
10655{0x3000000, 0xba98d27, 0xffd9ba98, 0x7fc00000, 0x3000000},
10656{0x3000000, 0xba98d27, 0xffffffff, 0x7fc00000, 0x3000000},
10657{0x3000000, 0xba98d27, 0x4f3495cb, 0x4f3495cb, 0x3000010},
10658{0x3000000, 0xba98d27, 0xe73a5134, 0xe73a5134, 0x3000010},
10659{0x3000000, 0xba98d27, 0x7c994e9e, 0x7c994e9e, 0x3000010},
10660{0x3000000, 0xba98d27, 0x6164bd6c, 0x6164bd6c, 0x3000010},
10661{0x3000000, 0xba98d27, 0x9503366, 0xbb00ec2, 0x3000010},
10662{0x3000000, 0xba98d27, 0xbf5a97c9, 0xbf5a97c9, 0x3000010},
10663{0x3000000, 0xba98d27, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
10664{0x3000000, 0xba98d27, 0x77f31e2f, 0x77f31e2f, 0x3000010},
10665{0x3000000, 0xba98d27, 0xaab4d7d8, 0xaab4d7d8, 0x3000010},
10666{0x3000000, 0xba98d27, 0x966320b, 0xbb0beb7, 0x3000010},
10667{0x3000000, 0xba98d27, 0xb26bddee, 0xb26bddee, 0x3000010},
10668{0x3000000, 0xba98d27, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000010},
10669{0x3000000, 0xba98d27, 0x317285d3, 0x317285d3, 0x3000010},
10670{0x3000000, 0xba98d27, 0x3c9623b1, 0x3c9623b1, 0x3000010},
10671{0x3000000, 0xba98d27, 0x51fd2c7c, 0x51fd2c7c, 0x3000010},
10672{0x3000000, 0xba98d27, 0x7b906a6c, 0x7b906a6c, 0x3000010},
10673{0x3000000, 0xba98d7a, 0x0, 0xba98d7a, 0x3000000},
10674{0x3000000, 0xba98d7a, 0x1, 0xba98d7a, 0x3000080},
10675{0x3000000, 0xba98d7a, 0x76, 0xba98d7a, 0x3000080},
10676{0x3000000, 0xba98d7a, 0x2b94, 0xba98d7a, 0x3000080},
10677{0x3000000, 0xba98d7a, 0x636d24, 0xba98d7a, 0x3000080},
10678{0x3000000, 0xba98d7a, 0x7fffff, 0xba98d7a, 0x3000080},
10679{0x3000000, 0xba98d7a, 0x800000, 0xba98d7c, 0x3000000},
10680{0x3000000, 0xba98d7a, 0x800002, 0xba98d7c, 0x3000010},
10681{0x3000000, 0xba98d7a, 0x1398437, 0xba98d80, 0x3000010},
10682{0x3000000, 0xba98d7a, 0xba98d27, 0xc298d50, 0x3000010},
10683{0x3000000, 0xba98d7a, 0xba98d7a, 0xc298d7a, 0x3000000},
10684{0x3000000, 0xba98d7a, 0x751f853a, 0x751f853a, 0x3000010},
10685{0x3000000, 0xba98d7a, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
10686{0x3000000, 0xba98d7a, 0x7f7fffff, 0x7f7fffff, 0x3000010},
10687{0x3000000, 0xba98d7a, 0x7f800000, 0x7f800000, 0x3000000},
10688{0x3000000, 0xba98d7a, 0x7f800001, 0x7fc00000, 0x3000001},
10689{0x3000000, 0xba98d7a, 0x7f984a37, 0x7fc00000, 0x3000001},
10690{0x3000000, 0xba98d7a, 0x7fbfffff, 0x7fc00000, 0x3000001},
10691{0x3000000, 0xba98d7a, 0x7fc00000, 0x7fc00000, 0x3000000},
10692{0x3000000, 0xba98d7a, 0x7fd9ba98, 0x7fc00000, 0x3000000},
10693{0x3000000, 0xba98d7a, 0x7fffffff, 0x7fc00000, 0x3000000},
10694{0x3000000, 0xba98d7a, 0x80000000, 0xba98d7a, 0x3000000},
10695{0x3000000, 0xba98d7a, 0x80000001, 0xba98d7a, 0x3000080},
10696{0x3000000, 0xba98d7a, 0x80000076, 0xba98d7a, 0x3000080},
10697{0x3000000, 0xba98d7a, 0x80002b94, 0xba98d7a, 0x3000080},
10698{0x3000000, 0xba98d7a, 0x80636d24, 0xba98d7a, 0x3000080},
10699{0x3000000, 0xba98d7a, 0x807fffff, 0xba98d7a, 0x3000080},
10700{0x3000000, 0xba98d7a, 0x80800000, 0xba98d78, 0x3000000},
10701{0x3000000, 0xba98d7a, 0x80800002, 0xba98d78, 0x3000010},
10702{0x3000000, 0xba98d7a, 0x81398437, 0xba98d74, 0x3000010},
10703{0x3000000, 0xba98d7a, 0x8ba98d27, 0x3260000, 0x3000000},
10704{0x3000000, 0xba98d7a, 0x8ba98d7a, 0x0, 0x3000000},
10705{0x3000000, 0xba98d7a, 0xf51f853a, 0xf51f853a, 0x3000010},
10706{0x3000000, 0xba98d7a, 0xff7ffff0, 0xff7ffff0, 0x3000010},
10707{0x3000000, 0xba98d7a, 0xff7fffff, 0xff7fffff, 0x3000010},
10708{0x3000000, 0xba98d7a, 0xff800000, 0xff800000, 0x3000000},
10709{0x3000000, 0xba98d7a, 0xff800001, 0x7fc00000, 0x3000001},
10710{0x3000000, 0xba98d7a, 0xff984a37, 0x7fc00000, 0x3000001},
10711{0x3000000, 0xba98d7a, 0xffbfffff, 0x7fc00000, 0x3000001},
10712{0x3000000, 0xba98d7a, 0xffc00000, 0x7fc00000, 0x3000000},
10713{0x3000000, 0xba98d7a, 0xffd9ba98, 0x7fc00000, 0x3000000},
10714{0x3000000, 0xba98d7a, 0xffffffff, 0x7fc00000, 0x3000000},
10715{0x3000000, 0xba98d7a, 0x4f3495cb, 0x4f3495cb, 0x3000010},
10716{0x3000000, 0xba98d7a, 0xe73a5134, 0xe73a5134, 0x3000010},
10717{0x3000000, 0xba98d7a, 0x7c994e9e, 0x7c994e9e, 0x3000010},
10718{0x3000000, 0xba98d7a, 0x6164bd6c, 0x6164bd6c, 0x3000010},
10719{0x3000000, 0xba98d7a, 0x9503366, 0xbb00f15, 0x3000010},
10720{0x3000000, 0xba98d7a, 0xbf5a97c9, 0xbf5a97c9, 0x3000010},
10721{0x3000000, 0xba98d7a, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
10722{0x3000000, 0xba98d7a, 0x77f31e2f, 0x77f31e2f, 0x3000010},
10723{0x3000000, 0xba98d7a, 0xaab4d7d8, 0xaab4d7d8, 0x3000010},
10724{0x3000000, 0xba98d7a, 0x966320b, 0xbb0bf0a, 0x3000010},
10725{0x3000000, 0xba98d7a, 0xb26bddee, 0xb26bddee, 0x3000010},
10726{0x3000000, 0xba98d7a, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000010},
10727{0x3000000, 0xba98d7a, 0x317285d3, 0x317285d3, 0x3000010},
10728{0x3000000, 0xba98d7a, 0x3c9623b1, 0x3c9623b1, 0x3000010},
10729{0x3000000, 0xba98d7a, 0x51fd2c7c, 0x51fd2c7c, 0x3000010},
10730{0x3000000, 0xba98d7a, 0x7b906a6c, 0x7b906a6c, 0x3000010},
10731{0x3000000, 0x751f853a, 0x0, 0x751f853a, 0x3000000},
10732{0x3000000, 0x751f853a, 0x1, 0x751f853a, 0x3000080},
10733{0x3000000, 0x751f853a, 0x76, 0x751f853a, 0x3000080},
10734{0x3000000, 0x751f853a, 0x2b94, 0x751f853a, 0x3000080},
10735{0x3000000, 0x751f853a, 0x636d24, 0x751f853a, 0x3000080},
10736{0x3000000, 0x751f853a, 0x7fffff, 0x751f853a, 0x3000080},
10737{0x3000000, 0x751f853a, 0x800000, 0x751f853a, 0x3000010},
10738{0x3000000, 0x751f853a, 0x800002, 0x751f853a, 0x3000010},
10739{0x3000000, 0x751f853a, 0x1398437, 0x751f853a, 0x3000010},
10740{0x3000000, 0x751f853a, 0xba98d27, 0x751f853a, 0x3000010},
10741{0x3000000, 0x751f853a, 0xba98d7a, 0x751f853a, 0x3000010},
10742{0x3000000, 0x751f853a, 0x751f853a, 0x759f853a, 0x3000000},
10743{0x3000000, 0x751f853a, 0x7f7ffff0, 0x7f7ffffa, 0x3000010},
10744{0x3000000, 0x751f853a, 0x7f7fffff, 0x7f800000, 0x3000014},
10745{0x3000000, 0x751f853a, 0x7f800000, 0x7f800000, 0x3000000},
10746{0x3000000, 0x751f853a, 0x7f800001, 0x7fc00000, 0x3000001},
10747{0x3000000, 0x751f853a, 0x7f984a37, 0x7fc00000, 0x3000001},
10748{0x3000000, 0x751f853a, 0x7fbfffff, 0x7fc00000, 0x3000001},
10749{0x3000000, 0x751f853a, 0x7fc00000, 0x7fc00000, 0x3000000},
10750{0x3000000, 0x751f853a, 0x7fd9ba98, 0x7fc00000, 0x3000000},
10751{0x3000000, 0x751f853a, 0x7fffffff, 0x7fc00000, 0x3000000},
10752{0x3000000, 0x751f853a, 0x80000000, 0x751f853a, 0x3000000},
10753{0x3000000, 0x751f853a, 0x80000001, 0x751f853a, 0x3000080},
10754{0x3000000, 0x751f853a, 0x80000076, 0x751f853a, 0x3000080},
10755{0x3000000, 0x751f853a, 0x80002b94, 0x751f853a, 0x3000080},
10756{0x3000000, 0x751f853a, 0x80636d24, 0x751f853a, 0x3000080},
10757{0x3000000, 0x751f853a, 0x807fffff, 0x751f853a, 0x3000080},
10758{0x3000000, 0x751f853a, 0x80800000, 0x751f853a, 0x3000010},
10759{0x3000000, 0x751f853a, 0x80800002, 0x751f853a, 0x3000010},
10760{0x3000000, 0x751f853a, 0x81398437, 0x751f853a, 0x3000010},
10761{0x3000000, 0x751f853a, 0x8ba98d27, 0x751f853a, 0x3000010},
10762{0x3000000, 0x751f853a, 0x8ba98d7a, 0x751f853a, 0x3000010},
10763{0x3000000, 0x751f853a, 0xf51f853a, 0x0, 0x3000000},
10764{0x3000000, 0x751f853a, 0xff7ffff0, 0xff7fffe6, 0x3000010},
10765{0x3000000, 0x751f853a, 0xff7fffff, 0xff7ffff5, 0x3000010},
10766{0x3000000, 0x751f853a, 0xff800000, 0xff800000, 0x3000000},
10767{0x3000000, 0x751f853a, 0xff800001, 0x7fc00000, 0x3000001},
10768{0x3000000, 0x751f853a, 0xff984a37, 0x7fc00000, 0x3000001},
10769{0x3000000, 0x751f853a, 0xffbfffff, 0x7fc00000, 0x3000001},
10770{0x3000000, 0x751f853a, 0xffc00000, 0x7fc00000, 0x3000000},
10771{0x3000000, 0x751f853a, 0xffd9ba98, 0x7fc00000, 0x3000000},
10772{0x3000000, 0x751f853a, 0xffffffff, 0x7fc00000, 0x3000000},
10773{0x3000000, 0x751f853a, 0x4f3495cb, 0x751f853a, 0x3000010},
10774{0x3000000, 0x751f853a, 0xe73a5134, 0x751f853a, 0x3000010},
10775{0x3000000, 0x751f853a, 0x7c994e9e, 0x7c994fdd, 0x3000010},
10776{0x3000000, 0x751f853a, 0x6164bd6c, 0x751f853a, 0x3000010},
10777{0x3000000, 0x751f853a, 0x9503366, 0x751f853a, 0x3000010},
10778{0x3000000, 0x751f853a, 0xbf5a97c9, 0x751f853a, 0x3000010},
10779{0x3000000, 0x751f853a, 0xe6ff1a14, 0x751f853a, 0x3000010},
10780{0x3000000, 0x751f853a, 0x77f31e2f, 0x77f81a59, 0x3000010},
10781{0x3000000, 0x751f853a, 0xaab4d7d8, 0x751f853a, 0x3000010},
10782{0x3000000, 0x751f853a, 0x966320b, 0x751f853a, 0x3000010},
10783{0x3000000, 0x751f853a, 0xb26bddee, 0x751f853a, 0x3000010},
10784{0x3000000, 0x751f853a, 0xb5c8e5d3, 0x751f853a, 0x3000010},
10785{0x3000000, 0x751f853a, 0x317285d3, 0x751f853a, 0x3000010},
10786{0x3000000, 0x751f853a, 0x3c9623b1, 0x751f853a, 0x3000010},
10787{0x3000000, 0x751f853a, 0x51fd2c7c, 0x751f853a, 0x3000010},
10788{0x3000000, 0x751f853a, 0x7b906a6c, 0x7b906f68, 0x3000010},
10789{0x3000000, 0x7f7ffff0, 0x0, 0x7f7ffff0, 0x3000000},
10790{0x3000000, 0x7f7ffff0, 0x1, 0x7f7ffff0, 0x3000080},
10791{0x3000000, 0x7f7ffff0, 0x76, 0x7f7ffff0, 0x3000080},
10792{0x3000000, 0x7f7ffff0, 0x2b94, 0x7f7ffff0, 0x3000080},
10793{0x3000000, 0x7f7ffff0, 0x636d24, 0x7f7ffff0, 0x3000080},
10794{0x3000000, 0x7f7ffff0, 0x7fffff, 0x7f7ffff0, 0x3000080},
10795{0x3000000, 0x7f7ffff0, 0x800000, 0x7f7ffff0, 0x3000010},
10796{0x3000000, 0x7f7ffff0, 0x800002, 0x7f7ffff0, 0x3000010},
10797{0x3000000, 0x7f7ffff0, 0x1398437, 0x7f7ffff0, 0x3000010},
10798{0x3000000, 0x7f7ffff0, 0xba98d27, 0x7f7ffff0, 0x3000010},
10799{0x3000000, 0x7f7ffff0, 0xba98d7a, 0x7f7ffff0, 0x3000010},
10800{0x3000000, 0x7f7ffff0, 0x751f853a, 0x7f7ffffa, 0x3000010},
10801{0x3000000, 0x7f7ffff0, 0x7f7ffff0, 0x7f800000, 0x3000014},
10802{0x3000000, 0x7f7ffff0, 0x7f7fffff, 0x7f800000, 0x3000014},
10803{0x3000000, 0x7f7ffff0, 0x7f800000, 0x7f800000, 0x3000000},
10804{0x3000000, 0x7f7ffff0, 0x7f800001, 0x7fc00000, 0x3000001},
10805{0x3000000, 0x7f7ffff0, 0x7f984a37, 0x7fc00000, 0x3000001},
10806{0x3000000, 0x7f7ffff0, 0x7fbfffff, 0x7fc00000, 0x3000001},
10807{0x3000000, 0x7f7ffff0, 0x7fc00000, 0x7fc00000, 0x3000000},
10808{0x3000000, 0x7f7ffff0, 0x7fd9ba98, 0x7fc00000, 0x3000000},
10809{0x3000000, 0x7f7ffff0, 0x7fffffff, 0x7fc00000, 0x3000000},
10810{0x3000000, 0x7f7ffff0, 0x80000000, 0x7f7ffff0, 0x3000000},
10811{0x3000000, 0x7f7ffff0, 0x80000001, 0x7f7ffff0, 0x3000080},
10812{0x3000000, 0x7f7ffff0, 0x80000076, 0x7f7ffff0, 0x3000080},
10813{0x3000000, 0x7f7ffff0, 0x80002b94, 0x7f7ffff0, 0x3000080},
10814{0x3000000, 0x7f7ffff0, 0x80636d24, 0x7f7ffff0, 0x3000080},
10815{0x3000000, 0x7f7ffff0, 0x807fffff, 0x7f7ffff0, 0x3000080},
10816{0x3000000, 0x7f7ffff0, 0x80800000, 0x7f7ffff0, 0x3000010},
10817{0x3000000, 0x7f7ffff0, 0x80800002, 0x7f7ffff0, 0x3000010},
10818{0x3000000, 0x7f7ffff0, 0x81398437, 0x7f7ffff0, 0x3000010},
10819{0x3000000, 0x7f7ffff0, 0x8ba98d27, 0x7f7ffff0, 0x3000010},
10820{0x3000000, 0x7f7ffff0, 0x8ba98d7a, 0x7f7ffff0, 0x3000010},
10821{0x3000000, 0x7f7ffff0, 0xf51f853a, 0x7f7fffe6, 0x3000010},
10822{0x3000000, 0x7f7ffff0, 0xff7ffff0, 0x0, 0x3000000},
10823{0x3000000, 0x7f7ffff0, 0xff7fffff, 0xf5700000, 0x3000000},
10824{0x3000000, 0x7f7ffff0, 0xff800000, 0xff800000, 0x3000000},
10825{0x3000000, 0x7f7ffff0, 0xff800001, 0x7fc00000, 0x3000001},
10826{0x3000000, 0x7f7ffff0, 0xff984a37, 0x7fc00000, 0x3000001},
10827{0x3000000, 0x7f7ffff0, 0xffbfffff, 0x7fc00000, 0x3000001},
10828{0x3000000, 0x7f7ffff0, 0xffc00000, 0x7fc00000, 0x3000000},
10829{0x3000000, 0x7f7ffff0, 0xffd9ba98, 0x7fc00000, 0x3000000},
10830{0x3000000, 0x7f7ffff0, 0xffffffff, 0x7fc00000, 0x3000000},
10831{0x3000000, 0x7f7ffff0, 0x4f3495cb, 0x7f7ffff0, 0x3000010},
10832{0x3000000, 0x7f7ffff0, 0xe73a5134, 0x7f7ffff0, 0x3000010},
10833{0x3000000, 0x7f7ffff0, 0x7c994e9e, 0x7f800000, 0x3000014},
10834{0x3000000, 0x7f7ffff0, 0x6164bd6c, 0x7f7ffff0, 0x3000010},
10835{0x3000000, 0x7f7ffff0, 0x9503366, 0x7f7ffff0, 0x3000010},
10836{0x3000000, 0x7f7ffff0, 0xbf5a97c9, 0x7f7ffff0, 0x3000010},
10837{0x3000000, 0x7f7ffff0, 0xe6ff1a14, 0x7f7ffff0, 0x3000010},
10838{0x3000000, 0x7f7ffff0, 0x77f31e2f, 0x7f800000, 0x3000014},
10839{0x3000000, 0x7f7ffff0, 0xaab4d7d8, 0x7f7ffff0, 0x3000010},
10840{0x3000000, 0x7f7ffff0, 0x966320b, 0x7f7ffff0, 0x3000010},
10841{0x3000000, 0x7f7ffff0, 0xb26bddee, 0x7f7ffff0, 0x3000010},
10842{0x3000000, 0x7f7ffff0, 0xb5c8e5d3, 0x7f7ffff0, 0x3000010},
10843{0x3000000, 0x7f7ffff0, 0x317285d3, 0x7f7ffff0, 0x3000010},
10844{0x3000000, 0x7f7ffff0, 0x3c9623b1, 0x7f7ffff0, 0x3000010},
10845{0x3000000, 0x7f7ffff0, 0x51fd2c7c, 0x7f7ffff0, 0x3000010},
10846{0x3000000, 0x7f7ffff0, 0x7b906a6c, 0x7f800000, 0x3000014},
10847{0x3000000, 0x7f7fffff, 0x0, 0x7f7fffff, 0x3000000},
10848{0x3000000, 0x7f7fffff, 0x1, 0x7f7fffff, 0x3000080},
10849{0x3000000, 0x7f7fffff, 0x76, 0x7f7fffff, 0x3000080},
10850{0x3000000, 0x7f7fffff, 0x2b94, 0x7f7fffff, 0x3000080},
10851{0x3000000, 0x7f7fffff, 0x636d24, 0x7f7fffff, 0x3000080},
10852{0x3000000, 0x7f7fffff, 0x7fffff, 0x7f7fffff, 0x3000080},
10853{0x3000000, 0x7f7fffff, 0x800000, 0x7f7fffff, 0x3000010},
10854{0x3000000, 0x7f7fffff, 0x800002, 0x7f7fffff, 0x3000010},
10855{0x3000000, 0x7f7fffff, 0x1398437, 0x7f7fffff, 0x3000010},
10856{0x3000000, 0x7f7fffff, 0xba98d27, 0x7f7fffff, 0x3000010},
10857{0x3000000, 0x7f7fffff, 0xba98d7a, 0x7f7fffff, 0x3000010},
10858{0x3000000, 0x7f7fffff, 0x751f853a, 0x7f800000, 0x3000014},
10859{0x3000000, 0x7f7fffff, 0x7f7ffff0, 0x7f800000, 0x3000014},
10860{0x3000000, 0x7f7fffff, 0x7f7fffff, 0x7f800000, 0x3000014},
10861{0x3000000, 0x7f7fffff, 0x7f800000, 0x7f800000, 0x3000000},
10862{0x3000000, 0x7f7fffff, 0x7f800001, 0x7fc00000, 0x3000001},
10863{0x3000000, 0x7f7fffff, 0x7f984a37, 0x7fc00000, 0x3000001},
10864{0x3000000, 0x7f7fffff, 0x7fbfffff, 0x7fc00000, 0x3000001},
10865{0x3000000, 0x7f7fffff, 0x7fc00000, 0x7fc00000, 0x3000000},
10866{0x3000000, 0x7f7fffff, 0x7fd9ba98, 0x7fc00000, 0x3000000},
10867{0x3000000, 0x7f7fffff, 0x7fffffff, 0x7fc00000, 0x3000000},
10868{0x3000000, 0x7f7fffff, 0x80000000, 0x7f7fffff, 0x3000000},
10869{0x3000000, 0x7f7fffff, 0x80000001, 0x7f7fffff, 0x3000080},
10870{0x3000000, 0x7f7fffff, 0x80000076, 0x7f7fffff, 0x3000080},
10871{0x3000000, 0x7f7fffff, 0x80002b94, 0x7f7fffff, 0x3000080},
10872{0x3000000, 0x7f7fffff, 0x80636d24, 0x7f7fffff, 0x3000080},
10873{0x3000000, 0x7f7fffff, 0x807fffff, 0x7f7fffff, 0x3000080},
10874{0x3000000, 0x7f7fffff, 0x80800000, 0x7f7fffff, 0x3000010},
10875{0x3000000, 0x7f7fffff, 0x80800002, 0x7f7fffff, 0x3000010},
10876{0x3000000, 0x7f7fffff, 0x81398437, 0x7f7fffff, 0x3000010},
10877{0x3000000, 0x7f7fffff, 0x8ba98d27, 0x7f7fffff, 0x3000010},
10878{0x3000000, 0x7f7fffff, 0x8ba98d7a, 0x7f7fffff, 0x3000010},
10879{0x3000000, 0x7f7fffff, 0xf51f853a, 0x7f7ffff5, 0x3000010},
10880{0x3000000, 0x7f7fffff, 0xff7ffff0, 0x75700000, 0x3000000},
10881{0x3000000, 0x7f7fffff, 0xff7fffff, 0x0, 0x3000000},
10882{0x3000000, 0x7f7fffff, 0xff800000, 0xff800000, 0x3000000},
10883{0x3000000, 0x7f7fffff, 0xff800001, 0x7fc00000, 0x3000001},
10884{0x3000000, 0x7f7fffff, 0xff984a37, 0x7fc00000, 0x3000001},
10885{0x3000000, 0x7f7fffff, 0xffbfffff, 0x7fc00000, 0x3000001},
10886{0x3000000, 0x7f7fffff, 0xffc00000, 0x7fc00000, 0x3000000},
10887{0x3000000, 0x7f7fffff, 0xffd9ba98, 0x7fc00000, 0x3000000},
10888{0x3000000, 0x7f7fffff, 0xffffffff, 0x7fc00000, 0x3000000},
10889{0x3000000, 0x7f7fffff, 0x4f3495cb, 0x7f7fffff, 0x3000010},
10890{0x3000000, 0x7f7fffff, 0xe73a5134, 0x7f7fffff, 0x3000010},
10891{0x3000000, 0x7f7fffff, 0x7c994e9e, 0x7f800000, 0x3000014},
10892{0x3000000, 0x7f7fffff, 0x6164bd6c, 0x7f7fffff, 0x3000010},
10893{0x3000000, 0x7f7fffff, 0x9503366, 0x7f7fffff, 0x3000010},
10894{0x3000000, 0x7f7fffff, 0xbf5a97c9, 0x7f7fffff, 0x3000010},
10895{0x3000000, 0x7f7fffff, 0xe6ff1a14, 0x7f7fffff, 0x3000010},
10896{0x3000000, 0x7f7fffff, 0x77f31e2f, 0x7f800000, 0x3000014},
10897{0x3000000, 0x7f7fffff, 0xaab4d7d8, 0x7f7fffff, 0x3000010},
10898{0x3000000, 0x7f7fffff, 0x966320b, 0x7f7fffff, 0x3000010},
10899{0x3000000, 0x7f7fffff, 0xb26bddee, 0x7f7fffff, 0x3000010},
10900{0x3000000, 0x7f7fffff, 0xb5c8e5d3, 0x7f7fffff, 0x3000010},
10901{0x3000000, 0x7f7fffff, 0x317285d3, 0x7f7fffff, 0x3000010},
10902{0x3000000, 0x7f7fffff, 0x3c9623b1, 0x7f7fffff, 0x3000010},
10903{0x3000000, 0x7f7fffff, 0x51fd2c7c, 0x7f7fffff, 0x3000010},
10904{0x3000000, 0x7f7fffff, 0x7b906a6c, 0x7f800000, 0x3000014},
10905{0x3000000, 0x7f800000, 0x0, 0x7f800000, 0x3000000},
10906{0x3000000, 0x7f800000, 0x1, 0x7f800000, 0x3000080},
10907{0x3000000, 0x7f800000, 0x76, 0x7f800000, 0x3000080},
10908{0x3000000, 0x7f800000, 0x2b94, 0x7f800000, 0x3000080},
10909{0x3000000, 0x7f800000, 0x636d24, 0x7f800000, 0x3000080},
10910{0x3000000, 0x7f800000, 0x7fffff, 0x7f800000, 0x3000080},
10911{0x3000000, 0x7f800000, 0x800000, 0x7f800000, 0x3000000},
10912{0x3000000, 0x7f800000, 0x800002, 0x7f800000, 0x3000000},
10913{0x3000000, 0x7f800000, 0x1398437, 0x7f800000, 0x3000000},
10914{0x3000000, 0x7f800000, 0xba98d27, 0x7f800000, 0x3000000},
10915{0x3000000, 0x7f800000, 0xba98d7a, 0x7f800000, 0x3000000},
10916{0x3000000, 0x7f800000, 0x751f853a, 0x7f800000, 0x3000000},
10917{0x3000000, 0x7f800000, 0x7f7ffff0, 0x7f800000, 0x3000000},
10918{0x3000000, 0x7f800000, 0x7f7fffff, 0x7f800000, 0x3000000},
10919{0x3000000, 0x7f800000, 0x7f800000, 0x7f800000, 0x3000000},
10920{0x3000000, 0x7f800000, 0x7f800001, 0x7fc00000, 0x3000001},
10921{0x3000000, 0x7f800000, 0x7f984a37, 0x7fc00000, 0x3000001},
10922{0x3000000, 0x7f800000, 0x7fbfffff, 0x7fc00000, 0x3000001},
10923{0x3000000, 0x7f800000, 0x7fc00000, 0x7fc00000, 0x3000000},
10924{0x3000000, 0x7f800000, 0x7fd9ba98, 0x7fc00000, 0x3000000},
10925{0x3000000, 0x7f800000, 0x7fffffff, 0x7fc00000, 0x3000000},
10926{0x3000000, 0x7f800000, 0x80000000, 0x7f800000, 0x3000000},
10927{0x3000000, 0x7f800000, 0x80000001, 0x7f800000, 0x3000080},
10928{0x3000000, 0x7f800000, 0x80000076, 0x7f800000, 0x3000080},
10929{0x3000000, 0x7f800000, 0x80002b94, 0x7f800000, 0x3000080},
10930{0x3000000, 0x7f800000, 0x80636d24, 0x7f800000, 0x3000080},
10931{0x3000000, 0x7f800000, 0x807fffff, 0x7f800000, 0x3000080},
10932{0x3000000, 0x7f800000, 0x80800000, 0x7f800000, 0x3000000},
10933{0x3000000, 0x7f800000, 0x80800002, 0x7f800000, 0x3000000},
10934{0x3000000, 0x7f800000, 0x81398437, 0x7f800000, 0x3000000},
10935{0x3000000, 0x7f800000, 0x8ba98d27, 0x7f800000, 0x3000000},
10936{0x3000000, 0x7f800000, 0x8ba98d7a, 0x7f800000, 0x3000000},
10937{0x3000000, 0x7f800000, 0xf51f853a, 0x7f800000, 0x3000000},
10938{0x3000000, 0x7f800000, 0xff7ffff0, 0x7f800000, 0x3000000},
10939{0x3000000, 0x7f800000, 0xff7fffff, 0x7f800000, 0x3000000},
10940{0x3000000, 0x7f800000, 0xff800000, 0x7fc00000, 0x3000001},
10941{0x3000000, 0x7f800000, 0xff800001, 0x7fc00000, 0x3000001},
10942{0x3000000, 0x7f800000, 0xff984a37, 0x7fc00000, 0x3000001},
10943{0x3000000, 0x7f800000, 0xffbfffff, 0x7fc00000, 0x3000001},
10944{0x3000000, 0x7f800000, 0xffc00000, 0x7fc00000, 0x3000000},
10945{0x3000000, 0x7f800000, 0xffd9ba98, 0x7fc00000, 0x3000000},
10946{0x3000000, 0x7f800000, 0xffffffff, 0x7fc00000, 0x3000000},
10947{0x3000000, 0x7f800000, 0x4f3495cb, 0x7f800000, 0x3000000},
10948{0x3000000, 0x7f800000, 0xe73a5134, 0x7f800000, 0x3000000},
10949{0x3000000, 0x7f800000, 0x7c994e9e, 0x7f800000, 0x3000000},
10950{0x3000000, 0x7f800000, 0x6164bd6c, 0x7f800000, 0x3000000},
10951{0x3000000, 0x7f800000, 0x9503366, 0x7f800000, 0x3000000},
10952{0x3000000, 0x7f800000, 0xbf5a97c9, 0x7f800000, 0x3000000},
10953{0x3000000, 0x7f800000, 0xe6ff1a14, 0x7f800000, 0x3000000},
10954{0x3000000, 0x7f800000, 0x77f31e2f, 0x7f800000, 0x3000000},
10955{0x3000000, 0x7f800000, 0xaab4d7d8, 0x7f800000, 0x3000000},
10956{0x3000000, 0x7f800000, 0x966320b, 0x7f800000, 0x3000000},
10957{0x3000000, 0x7f800000, 0xb26bddee, 0x7f800000, 0x3000000},
10958{0x3000000, 0x7f800000, 0xb5c8e5d3, 0x7f800000, 0x3000000},
10959{0x3000000, 0x7f800000, 0x317285d3, 0x7f800000, 0x3000000},
10960{0x3000000, 0x7f800000, 0x3c9623b1, 0x7f800000, 0x3000000},
10961{0x3000000, 0x7f800000, 0x51fd2c7c, 0x7f800000, 0x3000000},
10962{0x3000000, 0x7f800000, 0x7b906a6c, 0x7f800000, 0x3000000},
10963{0x3000000, 0x7f800001, 0x0, 0x7fc00000, 0x3000001},
10964{0x3000000, 0x7f800001, 0x1, 0x7fc00000, 0x3000081},
10965{0x3000000, 0x7f800001, 0x76, 0x7fc00000, 0x3000081},
10966{0x3000000, 0x7f800001, 0x2b94, 0x7fc00000, 0x3000081},
10967{0x3000000, 0x7f800001, 0x636d24, 0x7fc00000, 0x3000081},
10968{0x3000000, 0x7f800001, 0x7fffff, 0x7fc00000, 0x3000081},
10969{0x3000000, 0x7f800001, 0x800000, 0x7fc00000, 0x3000001},
10970{0x3000000, 0x7f800001, 0x800002, 0x7fc00000, 0x3000001},
10971{0x3000000, 0x7f800001, 0x1398437, 0x7fc00000, 0x3000001},
10972{0x3000000, 0x7f800001, 0xba98d27, 0x7fc00000, 0x3000001},
10973{0x3000000, 0x7f800001, 0xba98d7a, 0x7fc00000, 0x3000001},
10974{0x3000000, 0x7f800001, 0x751f853a, 0x7fc00000, 0x3000001},
10975{0x3000000, 0x7f800001, 0x7f7ffff0, 0x7fc00000, 0x3000001},
10976{0x3000000, 0x7f800001, 0x7f7fffff, 0x7fc00000, 0x3000001},
10977{0x3000000, 0x7f800001, 0x7f800000, 0x7fc00000, 0x3000001},
10978{0x3000000, 0x7f800001, 0x7f800001, 0x7fc00000, 0x3000001},
10979{0x3000000, 0x7f800001, 0x7f984a37, 0x7fc00000, 0x3000001},
10980{0x3000000, 0x7f800001, 0x7fbfffff, 0x7fc00000, 0x3000001},
10981{0x3000000, 0x7f800001, 0x7fc00000, 0x7fc00000, 0x3000001},
10982{0x3000000, 0x7f800001, 0x7fd9ba98, 0x7fc00000, 0x3000001},
10983{0x3000000, 0x7f800001, 0x7fffffff, 0x7fc00000, 0x3000001},
10984{0x3000000, 0x7f800001, 0x80000000, 0x7fc00000, 0x3000001},
10985{0x3000000, 0x7f800001, 0x80000001, 0x7fc00000, 0x3000081},
10986{0x3000000, 0x7f800001, 0x80000076, 0x7fc00000, 0x3000081},
10987{0x3000000, 0x7f800001, 0x80002b94, 0x7fc00000, 0x3000081},
10988{0x3000000, 0x7f800001, 0x80636d24, 0x7fc00000, 0x3000081},
10989{0x3000000, 0x7f800001, 0x807fffff, 0x7fc00000, 0x3000081},
10990{0x3000000, 0x7f800001, 0x80800000, 0x7fc00000, 0x3000001},
10991{0x3000000, 0x7f800001, 0x80800002, 0x7fc00000, 0x3000001},
10992{0x3000000, 0x7f800001, 0x81398437, 0x7fc00000, 0x3000001},
10993{0x3000000, 0x7f800001, 0x8ba98d27, 0x7fc00000, 0x3000001},
10994{0x3000000, 0x7f800001, 0x8ba98d7a, 0x7fc00000, 0x3000001},
10995{0x3000000, 0x7f800001, 0xf51f853a, 0x7fc00000, 0x3000001},
10996{0x3000000, 0x7f800001, 0xff7ffff0, 0x7fc00000, 0x3000001},
10997{0x3000000, 0x7f800001, 0xff7fffff, 0x7fc00000, 0x3000001},
10998{0x3000000, 0x7f800001, 0xff800000, 0x7fc00000, 0x3000001},
10999{0x3000000, 0x7f800001, 0xff800001, 0x7fc00000, 0x3000001},
11000{0x3000000, 0x7f800001, 0xff984a37, 0x7fc00000, 0x3000001},
11001{0x3000000, 0x7f800001, 0xffbfffff, 0x7fc00000, 0x3000001},
11002{0x3000000, 0x7f800001, 0xffc00000, 0x7fc00000, 0x3000001},
11003{0x3000000, 0x7f800001, 0xffd9ba98, 0x7fc00000, 0x3000001},
11004{0x3000000, 0x7f800001, 0xffffffff, 0x7fc00000, 0x3000001},
11005{0x3000000, 0x7f800001, 0x4f3495cb, 0x7fc00000, 0x3000001},
11006{0x3000000, 0x7f800001, 0xe73a5134, 0x7fc00000, 0x3000001},
11007{0x3000000, 0x7f800001, 0x7c994e9e, 0x7fc00000, 0x3000001},
11008{0x3000000, 0x7f800001, 0x6164bd6c, 0x7fc00000, 0x3000001},
11009{0x3000000, 0x7f800001, 0x9503366, 0x7fc00000, 0x3000001},
11010{0x3000000, 0x7f800001, 0xbf5a97c9, 0x7fc00000, 0x3000001},
11011{0x3000000, 0x7f800001, 0xe6ff1a14, 0x7fc00000, 0x3000001},
11012{0x3000000, 0x7f800001, 0x77f31e2f, 0x7fc00000, 0x3000001},
11013{0x3000000, 0x7f800001, 0xaab4d7d8, 0x7fc00000, 0x3000001},
11014{0x3000000, 0x7f800001, 0x966320b, 0x7fc00000, 0x3000001},
11015{0x3000000, 0x7f800001, 0xb26bddee, 0x7fc00000, 0x3000001},
11016{0x3000000, 0x7f800001, 0xb5c8e5d3, 0x7fc00000, 0x3000001},
11017{0x3000000, 0x7f800001, 0x317285d3, 0x7fc00000, 0x3000001},
11018{0x3000000, 0x7f800001, 0x3c9623b1, 0x7fc00000, 0x3000001},
11019{0x3000000, 0x7f800001, 0x51fd2c7c, 0x7fc00000, 0x3000001},
11020{0x3000000, 0x7f800001, 0x7b906a6c, 0x7fc00000, 0x3000001},
11021{0x3000000, 0x7f984a37, 0x0, 0x7fc00000, 0x3000001},
11022{0x3000000, 0x7f984a37, 0x1, 0x7fc00000, 0x3000081},
11023{0x3000000, 0x7f984a37, 0x76, 0x7fc00000, 0x3000081},
11024{0x3000000, 0x7f984a37, 0x2b94, 0x7fc00000, 0x3000081},
11025{0x3000000, 0x7f984a37, 0x636d24, 0x7fc00000, 0x3000081},
11026{0x3000000, 0x7f984a37, 0x7fffff, 0x7fc00000, 0x3000081},
11027{0x3000000, 0x7f984a37, 0x800000, 0x7fc00000, 0x3000001},
11028{0x3000000, 0x7f984a37, 0x800002, 0x7fc00000, 0x3000001},
11029{0x3000000, 0x7f984a37, 0x1398437, 0x7fc00000, 0x3000001},
11030{0x3000000, 0x7f984a37, 0xba98d27, 0x7fc00000, 0x3000001},
11031{0x3000000, 0x7f984a37, 0xba98d7a, 0x7fc00000, 0x3000001},
11032{0x3000000, 0x7f984a37, 0x751f853a, 0x7fc00000, 0x3000001},
11033{0x3000000, 0x7f984a37, 0x7f7ffff0, 0x7fc00000, 0x3000001},
11034{0x3000000, 0x7f984a37, 0x7f7fffff, 0x7fc00000, 0x3000001},
11035{0x3000000, 0x7f984a37, 0x7f800000, 0x7fc00000, 0x3000001},
11036{0x3000000, 0x7f984a37, 0x7f800001, 0x7fc00000, 0x3000001},
11037{0x3000000, 0x7f984a37, 0x7f984a37, 0x7fc00000, 0x3000001},
11038{0x3000000, 0x7f984a37, 0x7fbfffff, 0x7fc00000, 0x3000001},
11039{0x3000000, 0x7f984a37, 0x7fc00000, 0x7fc00000, 0x3000001},
11040{0x3000000, 0x7f984a37, 0x7fd9ba98, 0x7fc00000, 0x3000001},
11041{0x3000000, 0x7f984a37, 0x7fffffff, 0x7fc00000, 0x3000001},
11042{0x3000000, 0x7f984a37, 0x80000000, 0x7fc00000, 0x3000001},
11043{0x3000000, 0x7f984a37, 0x80000001, 0x7fc00000, 0x3000081},
11044{0x3000000, 0x7f984a37, 0x80000076, 0x7fc00000, 0x3000081},
11045{0x3000000, 0x7f984a37, 0x80002b94, 0x7fc00000, 0x3000081},
11046{0x3000000, 0x7f984a37, 0x80636d24, 0x7fc00000, 0x3000081},
11047{0x3000000, 0x7f984a37, 0x807fffff, 0x7fc00000, 0x3000081},
11048{0x3000000, 0x7f984a37, 0x80800000, 0x7fc00000, 0x3000001},
11049{0x3000000, 0x7f984a37, 0x80800002, 0x7fc00000, 0x3000001},
11050{0x3000000, 0x7f984a37, 0x81398437, 0x7fc00000, 0x3000001},
11051{0x3000000, 0x7f984a37, 0x8ba98d27, 0x7fc00000, 0x3000001},
11052{0x3000000, 0x7f984a37, 0x8ba98d7a, 0x7fc00000, 0x3000001},
11053{0x3000000, 0x7f984a37, 0xf51f853a, 0x7fc00000, 0x3000001},
11054{0x3000000, 0x7f984a37, 0xff7ffff0, 0x7fc00000, 0x3000001},
11055{0x3000000, 0x7f984a37, 0xff7fffff, 0x7fc00000, 0x3000001},
11056{0x3000000, 0x7f984a37, 0xff800000, 0x7fc00000, 0x3000001},
11057{0x3000000, 0x7f984a37, 0xff800001, 0x7fc00000, 0x3000001},
11058{0x3000000, 0x7f984a37, 0xff984a37, 0x7fc00000, 0x3000001},
11059{0x3000000, 0x7f984a37, 0xffbfffff, 0x7fc00000, 0x3000001},
11060{0x3000000, 0x7f984a37, 0xffc00000, 0x7fc00000, 0x3000001},
11061{0x3000000, 0x7f984a37, 0xffd9ba98, 0x7fc00000, 0x3000001},
11062{0x3000000, 0x7f984a37, 0xffffffff, 0x7fc00000, 0x3000001},
11063{0x3000000, 0x7f984a37, 0x4f3495cb, 0x7fc00000, 0x3000001},
11064{0x3000000, 0x7f984a37, 0xe73a5134, 0x7fc00000, 0x3000001},
11065{0x3000000, 0x7f984a37, 0x7c994e9e, 0x7fc00000, 0x3000001},
11066{0x3000000, 0x7f984a37, 0x6164bd6c, 0x7fc00000, 0x3000001},
11067{0x3000000, 0x7f984a37, 0x9503366, 0x7fc00000, 0x3000001},
11068{0x3000000, 0x7f984a37, 0xbf5a97c9, 0x7fc00000, 0x3000001},
11069{0x3000000, 0x7f984a37, 0xe6ff1a14, 0x7fc00000, 0x3000001},
11070{0x3000000, 0x7f984a37, 0x77f31e2f, 0x7fc00000, 0x3000001},
11071{0x3000000, 0x7f984a37, 0xaab4d7d8, 0x7fc00000, 0x3000001},
11072{0x3000000, 0x7f984a37, 0x966320b, 0x7fc00000, 0x3000001},
11073{0x3000000, 0x7f984a37, 0xb26bddee, 0x7fc00000, 0x3000001},
11074{0x3000000, 0x7f984a37, 0xb5c8e5d3, 0x7fc00000, 0x3000001},
11075{0x3000000, 0x7f984a37, 0x317285d3, 0x7fc00000, 0x3000001},
11076{0x3000000, 0x7f984a37, 0x3c9623b1, 0x7fc00000, 0x3000001},
11077{0x3000000, 0x7f984a37, 0x51fd2c7c, 0x7fc00000, 0x3000001},
11078{0x3000000, 0x7f984a37, 0x7b906a6c, 0x7fc00000, 0x3000001},
11079{0x3000000, 0x7fbfffff, 0x0, 0x7fc00000, 0x3000001},
11080{0x3000000, 0x7fbfffff, 0x1, 0x7fc00000, 0x3000081},
11081{0x3000000, 0x7fbfffff, 0x76, 0x7fc00000, 0x3000081},
11082{0x3000000, 0x7fbfffff, 0x2b94, 0x7fc00000, 0x3000081},
11083{0x3000000, 0x7fbfffff, 0x636d24, 0x7fc00000, 0x3000081},
11084{0x3000000, 0x7fbfffff, 0x7fffff, 0x7fc00000, 0x3000081},
11085{0x3000000, 0x7fbfffff, 0x800000, 0x7fc00000, 0x3000001},
11086{0x3000000, 0x7fbfffff, 0x800002, 0x7fc00000, 0x3000001},
11087{0x3000000, 0x7fbfffff, 0x1398437, 0x7fc00000, 0x3000001},
11088{0x3000000, 0x7fbfffff, 0xba98d27, 0x7fc00000, 0x3000001},
11089{0x3000000, 0x7fbfffff, 0xba98d7a, 0x7fc00000, 0x3000001},
11090{0x3000000, 0x7fbfffff, 0x751f853a, 0x7fc00000, 0x3000001},
11091{0x3000000, 0x7fbfffff, 0x7f7ffff0, 0x7fc00000, 0x3000001},
11092{0x3000000, 0x7fbfffff, 0x7f7fffff, 0x7fc00000, 0x3000001},
11093{0x3000000, 0x7fbfffff, 0x7f800000, 0x7fc00000, 0x3000001},
11094{0x3000000, 0x7fbfffff, 0x7f800001, 0x7fc00000, 0x3000001},
11095{0x3000000, 0x7fbfffff, 0x7f984a37, 0x7fc00000, 0x3000001},
11096{0x3000000, 0x7fbfffff, 0x7fbfffff, 0x7fc00000, 0x3000001},
11097{0x3000000, 0x7fbfffff, 0x7fc00000, 0x7fc00000, 0x3000001},
11098{0x3000000, 0x7fbfffff, 0x7fd9ba98, 0x7fc00000, 0x3000001},
11099{0x3000000, 0x7fbfffff, 0x7fffffff, 0x7fc00000, 0x3000001},
11100{0x3000000, 0x7fbfffff, 0x80000000, 0x7fc00000, 0x3000001},
11101{0x3000000, 0x7fbfffff, 0x80000001, 0x7fc00000, 0x3000081},
11102{0x3000000, 0x7fbfffff, 0x80000076, 0x7fc00000, 0x3000081},
11103{0x3000000, 0x7fbfffff, 0x80002b94, 0x7fc00000, 0x3000081},
11104{0x3000000, 0x7fbfffff, 0x80636d24, 0x7fc00000, 0x3000081},
11105{0x3000000, 0x7fbfffff, 0x807fffff, 0x7fc00000, 0x3000081},
11106{0x3000000, 0x7fbfffff, 0x80800000, 0x7fc00000, 0x3000001},
11107{0x3000000, 0x7fbfffff, 0x80800002, 0x7fc00000, 0x3000001},
11108{0x3000000, 0x7fbfffff, 0x81398437, 0x7fc00000, 0x3000001},
11109{0x3000000, 0x7fbfffff, 0x8ba98d27, 0x7fc00000, 0x3000001},
11110{0x3000000, 0x7fbfffff, 0x8ba98d7a, 0x7fc00000, 0x3000001},
11111{0x3000000, 0x7fbfffff, 0xf51f853a, 0x7fc00000, 0x3000001},
11112{0x3000000, 0x7fbfffff, 0xff7ffff0, 0x7fc00000, 0x3000001},
11113{0x3000000, 0x7fbfffff, 0xff7fffff, 0x7fc00000, 0x3000001},
11114{0x3000000, 0x7fbfffff, 0xff800000, 0x7fc00000, 0x3000001},
11115{0x3000000, 0x7fbfffff, 0xff800001, 0x7fc00000, 0x3000001},
11116{0x3000000, 0x7fbfffff, 0xff984a37, 0x7fc00000, 0x3000001},
11117{0x3000000, 0x7fbfffff, 0xffbfffff, 0x7fc00000, 0x3000001},
11118{0x3000000, 0x7fbfffff, 0xffc00000, 0x7fc00000, 0x3000001},
11119{0x3000000, 0x7fbfffff, 0xffd9ba98, 0x7fc00000, 0x3000001},
11120{0x3000000, 0x7fbfffff, 0xffffffff, 0x7fc00000, 0x3000001},
11121{0x3000000, 0x7fbfffff, 0x4f3495cb, 0x7fc00000, 0x3000001},
11122{0x3000000, 0x7fbfffff, 0xe73a5134, 0x7fc00000, 0x3000001},
11123{0x3000000, 0x7fbfffff, 0x7c994e9e, 0x7fc00000, 0x3000001},
11124{0x3000000, 0x7fbfffff, 0x6164bd6c, 0x7fc00000, 0x3000001},
11125{0x3000000, 0x7fbfffff, 0x9503366, 0x7fc00000, 0x3000001},
11126{0x3000000, 0x7fbfffff, 0xbf5a97c9, 0x7fc00000, 0x3000001},
11127{0x3000000, 0x7fbfffff, 0xe6ff1a14, 0x7fc00000, 0x3000001},
11128{0x3000000, 0x7fbfffff, 0x77f31e2f, 0x7fc00000, 0x3000001},
11129{0x3000000, 0x7fbfffff, 0xaab4d7d8, 0x7fc00000, 0x3000001},
11130{0x3000000, 0x7fbfffff, 0x966320b, 0x7fc00000, 0x3000001},
11131{0x3000000, 0x7fbfffff, 0xb26bddee, 0x7fc00000, 0x3000001},
11132{0x3000000, 0x7fbfffff, 0xb5c8e5d3, 0x7fc00000, 0x3000001},
11133{0x3000000, 0x7fbfffff, 0x317285d3, 0x7fc00000, 0x3000001},
11134{0x3000000, 0x7fbfffff, 0x3c9623b1, 0x7fc00000, 0x3000001},
11135{0x3000000, 0x7fbfffff, 0x51fd2c7c, 0x7fc00000, 0x3000001},
11136{0x3000000, 0x7fbfffff, 0x7b906a6c, 0x7fc00000, 0x3000001},
11137{0x3000000, 0x7fc00000, 0x0, 0x7fc00000, 0x3000000},
11138{0x3000000, 0x7fc00000, 0x1, 0x7fc00000, 0x3000080},
11139{0x3000000, 0x7fc00000, 0x76, 0x7fc00000, 0x3000080},
11140{0x3000000, 0x7fc00000, 0x2b94, 0x7fc00000, 0x3000080},
11141{0x3000000, 0x7fc00000, 0x636d24, 0x7fc00000, 0x3000080},
11142{0x3000000, 0x7fc00000, 0x7fffff, 0x7fc00000, 0x3000080},
11143{0x3000000, 0x7fc00000, 0x800000, 0x7fc00000, 0x3000000},
11144{0x3000000, 0x7fc00000, 0x800002, 0x7fc00000, 0x3000000},
11145{0x3000000, 0x7fc00000, 0x1398437, 0x7fc00000, 0x3000000},
11146{0x3000000, 0x7fc00000, 0xba98d27, 0x7fc00000, 0x3000000},
11147{0x3000000, 0x7fc00000, 0xba98d7a, 0x7fc00000, 0x3000000},
11148{0x3000000, 0x7fc00000, 0x751f853a, 0x7fc00000, 0x3000000},
11149{0x3000000, 0x7fc00000, 0x7f7ffff0, 0x7fc00000, 0x3000000},
11150{0x3000000, 0x7fc00000, 0x7f7fffff, 0x7fc00000, 0x3000000},
11151{0x3000000, 0x7fc00000, 0x7f800000, 0x7fc00000, 0x3000000},
11152{0x3000000, 0x7fc00000, 0x7f800001, 0x7fc00000, 0x3000001},
11153{0x3000000, 0x7fc00000, 0x7f984a37, 0x7fc00000, 0x3000001},
11154{0x3000000, 0x7fc00000, 0x7fbfffff, 0x7fc00000, 0x3000001},
11155{0x3000000, 0x7fc00000, 0x7fc00000, 0x7fc00000, 0x3000000},
11156{0x3000000, 0x7fc00000, 0x7fd9ba98, 0x7fc00000, 0x3000000},
11157{0x3000000, 0x7fc00000, 0x7fffffff, 0x7fc00000, 0x3000000},
11158{0x3000000, 0x7fc00000, 0x80000000, 0x7fc00000, 0x3000000},
11159{0x3000000, 0x7fc00000, 0x80000001, 0x7fc00000, 0x3000080},
11160{0x3000000, 0x7fc00000, 0x80000076, 0x7fc00000, 0x3000080},
11161{0x3000000, 0x7fc00000, 0x80002b94, 0x7fc00000, 0x3000080},
11162{0x3000000, 0x7fc00000, 0x80636d24, 0x7fc00000, 0x3000080},
11163{0x3000000, 0x7fc00000, 0x807fffff, 0x7fc00000, 0x3000080},
11164{0x3000000, 0x7fc00000, 0x80800000, 0x7fc00000, 0x3000000},
11165{0x3000000, 0x7fc00000, 0x80800002, 0x7fc00000, 0x3000000},
11166{0x3000000, 0x7fc00000, 0x81398437, 0x7fc00000, 0x3000000},
11167{0x3000000, 0x7fc00000, 0x8ba98d27, 0x7fc00000, 0x3000000},
11168{0x3000000, 0x7fc00000, 0x8ba98d7a, 0x7fc00000, 0x3000000},
11169{0x3000000, 0x7fc00000, 0xf51f853a, 0x7fc00000, 0x3000000},
11170{0x3000000, 0x7fc00000, 0xff7ffff0, 0x7fc00000, 0x3000000},
11171{0x3000000, 0x7fc00000, 0xff7fffff, 0x7fc00000, 0x3000000},
11172{0x3000000, 0x7fc00000, 0xff800000, 0x7fc00000, 0x3000000},
11173{0x3000000, 0x7fc00000, 0xff800001, 0x7fc00000, 0x3000001},
11174{0x3000000, 0x7fc00000, 0xff984a37, 0x7fc00000, 0x3000001},
11175{0x3000000, 0x7fc00000, 0xffbfffff, 0x7fc00000, 0x3000001},
11176{0x3000000, 0x7fc00000, 0xffc00000, 0x7fc00000, 0x3000000},
11177{0x3000000, 0x7fc00000, 0xffd9ba98, 0x7fc00000, 0x3000000},
11178{0x3000000, 0x7fc00000, 0xffffffff, 0x7fc00000, 0x3000000},
11179{0x3000000, 0x7fc00000, 0x4f3495cb, 0x7fc00000, 0x3000000},
11180{0x3000000, 0x7fc00000, 0xe73a5134, 0x7fc00000, 0x3000000},
11181{0x3000000, 0x7fc00000, 0x7c994e9e, 0x7fc00000, 0x3000000},
11182{0x3000000, 0x7fc00000, 0x6164bd6c, 0x7fc00000, 0x3000000},
11183{0x3000000, 0x7fc00000, 0x9503366, 0x7fc00000, 0x3000000},
11184{0x3000000, 0x7fc00000, 0xbf5a97c9, 0x7fc00000, 0x3000000},
11185{0x3000000, 0x7fc00000, 0xe6ff1a14, 0x7fc00000, 0x3000000},
11186{0x3000000, 0x7fc00000, 0x77f31e2f, 0x7fc00000, 0x3000000},
11187{0x3000000, 0x7fc00000, 0xaab4d7d8, 0x7fc00000, 0x3000000},
11188{0x3000000, 0x7fc00000, 0x966320b, 0x7fc00000, 0x3000000},
11189{0x3000000, 0x7fc00000, 0xb26bddee, 0x7fc00000, 0x3000000},
11190{0x3000000, 0x7fc00000, 0xb5c8e5d3, 0x7fc00000, 0x3000000},
11191{0x3000000, 0x7fc00000, 0x317285d3, 0x7fc00000, 0x3000000},
11192{0x3000000, 0x7fc00000, 0x3c9623b1, 0x7fc00000, 0x3000000},
11193{0x3000000, 0x7fc00000, 0x51fd2c7c, 0x7fc00000, 0x3000000},
11194{0x3000000, 0x7fc00000, 0x7b906a6c, 0x7fc00000, 0x3000000},
11195{0x3000000, 0x7fd9ba98, 0x0, 0x7fc00000, 0x3000000},
11196{0x3000000, 0x7fd9ba98, 0x1, 0x7fc00000, 0x3000080},
11197{0x3000000, 0x7fd9ba98, 0x76, 0x7fc00000, 0x3000080},
11198{0x3000000, 0x7fd9ba98, 0x2b94, 0x7fc00000, 0x3000080},
11199{0x3000000, 0x7fd9ba98, 0x636d24, 0x7fc00000, 0x3000080},
11200{0x3000000, 0x7fd9ba98, 0x7fffff, 0x7fc00000, 0x3000080},
11201{0x3000000, 0x7fd9ba98, 0x800000, 0x7fc00000, 0x3000000},
11202{0x3000000, 0x7fd9ba98, 0x800002, 0x7fc00000, 0x3000000},
11203{0x3000000, 0x7fd9ba98, 0x1398437, 0x7fc00000, 0x3000000},
11204{0x3000000, 0x7fd9ba98, 0xba98d27, 0x7fc00000, 0x3000000},
11205{0x3000000, 0x7fd9ba98, 0xba98d7a, 0x7fc00000, 0x3000000},
11206{0x3000000, 0x7fd9ba98, 0x751f853a, 0x7fc00000, 0x3000000},
11207{0x3000000, 0x7fd9ba98, 0x7f7ffff0, 0x7fc00000, 0x3000000},
11208{0x3000000, 0x7fd9ba98, 0x7f7fffff, 0x7fc00000, 0x3000000},
11209{0x3000000, 0x7fd9ba98, 0x7f800000, 0x7fc00000, 0x3000000},
11210{0x3000000, 0x7fd9ba98, 0x7f800001, 0x7fc00000, 0x3000001},
11211{0x3000000, 0x7fd9ba98, 0x7f984a37, 0x7fc00000, 0x3000001},
11212{0x3000000, 0x7fd9ba98, 0x7fbfffff, 0x7fc00000, 0x3000001},
11213{0x3000000, 0x7fd9ba98, 0x7fc00000, 0x7fc00000, 0x3000000},
11214{0x3000000, 0x7fd9ba98, 0x7fd9ba98, 0x7fc00000, 0x3000000},
11215{0x3000000, 0x7fd9ba98, 0x7fffffff, 0x7fc00000, 0x3000000},
11216{0x3000000, 0x7fd9ba98, 0x80000000, 0x7fc00000, 0x3000000},
11217{0x3000000, 0x7fd9ba98, 0x80000001, 0x7fc00000, 0x3000080},
11218{0x3000000, 0x7fd9ba98, 0x80000076, 0x7fc00000, 0x3000080},
11219{0x3000000, 0x7fd9ba98, 0x80002b94, 0x7fc00000, 0x3000080},
11220{0x3000000, 0x7fd9ba98, 0x80636d24, 0x7fc00000, 0x3000080},
11221{0x3000000, 0x7fd9ba98, 0x807fffff, 0x7fc00000, 0x3000080},
11222{0x3000000, 0x7fd9ba98, 0x80800000, 0x7fc00000, 0x3000000},
11223{0x3000000, 0x7fd9ba98, 0x80800002, 0x7fc00000, 0x3000000},
11224{0x3000000, 0x7fd9ba98, 0x81398437, 0x7fc00000, 0x3000000},
11225{0x3000000, 0x7fd9ba98, 0x8ba98d27, 0x7fc00000, 0x3000000},
11226{0x3000000, 0x7fd9ba98, 0x8ba98d7a, 0x7fc00000, 0x3000000},
11227{0x3000000, 0x7fd9ba98, 0xf51f853a, 0x7fc00000, 0x3000000},
11228{0x3000000, 0x7fd9ba98, 0xff7ffff0, 0x7fc00000, 0x3000000},
11229{0x3000000, 0x7fd9ba98, 0xff7fffff, 0x7fc00000, 0x3000000},
11230{0x3000000, 0x7fd9ba98, 0xff800000, 0x7fc00000, 0x3000000},
11231{0x3000000, 0x7fd9ba98, 0xff800001, 0x7fc00000, 0x3000001},
11232{0x3000000, 0x7fd9ba98, 0xff984a37, 0x7fc00000, 0x3000001},
11233{0x3000000, 0x7fd9ba98, 0xffbfffff, 0x7fc00000, 0x3000001},
11234{0x3000000, 0x7fd9ba98, 0xffc00000, 0x7fc00000, 0x3000000},
11235{0x3000000, 0x7fd9ba98, 0xffd9ba98, 0x7fc00000, 0x3000000},
11236{0x3000000, 0x7fd9ba98, 0xffffffff, 0x7fc00000, 0x3000000},
11237{0x3000000, 0x7fd9ba98, 0x4f3495cb, 0x7fc00000, 0x3000000},
11238{0x3000000, 0x7fd9ba98, 0xe73a5134, 0x7fc00000, 0x3000000},
11239{0x3000000, 0x7fd9ba98, 0x7c994e9e, 0x7fc00000, 0x3000000},
11240{0x3000000, 0x7fd9ba98, 0x6164bd6c, 0x7fc00000, 0x3000000},
11241{0x3000000, 0x7fd9ba98, 0x9503366, 0x7fc00000, 0x3000000},
11242{0x3000000, 0x7fd9ba98, 0xbf5a97c9, 0x7fc00000, 0x3000000},
11243{0x3000000, 0x7fd9ba98, 0xe6ff1a14, 0x7fc00000, 0x3000000},
11244{0x3000000, 0x7fd9ba98, 0x77f31e2f, 0x7fc00000, 0x3000000},
11245{0x3000000, 0x7fd9ba98, 0xaab4d7d8, 0x7fc00000, 0x3000000},
11246{0x3000000, 0x7fd9ba98, 0x966320b, 0x7fc00000, 0x3000000},
11247{0x3000000, 0x7fd9ba98, 0xb26bddee, 0x7fc00000, 0x3000000},
11248{0x3000000, 0x7fd9ba98, 0xb5c8e5d3, 0x7fc00000, 0x3000000},
11249{0x3000000, 0x7fd9ba98, 0x317285d3, 0x7fc00000, 0x3000000},
11250{0x3000000, 0x7fd9ba98, 0x3c9623b1, 0x7fc00000, 0x3000000},
11251{0x3000000, 0x7fd9ba98, 0x51fd2c7c, 0x7fc00000, 0x3000000},
11252{0x3000000, 0x7fd9ba98, 0x7b906a6c, 0x7fc00000, 0x3000000},
11253{0x3000000, 0x7fffffff, 0x0, 0x7fc00000, 0x3000000},
11254{0x3000000, 0x7fffffff, 0x1, 0x7fc00000, 0x3000080},
11255{0x3000000, 0x7fffffff, 0x76, 0x7fc00000, 0x3000080},
11256{0x3000000, 0x7fffffff, 0x2b94, 0x7fc00000, 0x3000080},
11257{0x3000000, 0x7fffffff, 0x636d24, 0x7fc00000, 0x3000080},
11258{0x3000000, 0x7fffffff, 0x7fffff, 0x7fc00000, 0x3000080},
11259{0x3000000, 0x7fffffff, 0x800000, 0x7fc00000, 0x3000000},
11260{0x3000000, 0x7fffffff, 0x800002, 0x7fc00000, 0x3000000},
11261{0x3000000, 0x7fffffff, 0x1398437, 0x7fc00000, 0x3000000},
11262{0x3000000, 0x7fffffff, 0xba98d27, 0x7fc00000, 0x3000000},
11263{0x3000000, 0x7fffffff, 0xba98d7a, 0x7fc00000, 0x3000000},
11264{0x3000000, 0x7fffffff, 0x751f853a, 0x7fc00000, 0x3000000},
11265{0x3000000, 0x7fffffff, 0x7f7ffff0, 0x7fc00000, 0x3000000},
11266{0x3000000, 0x7fffffff, 0x7f7fffff, 0x7fc00000, 0x3000000},
11267{0x3000000, 0x7fffffff, 0x7f800000, 0x7fc00000, 0x3000000},
11268{0x3000000, 0x7fffffff, 0x7f800001, 0x7fc00000, 0x3000001},
11269{0x3000000, 0x7fffffff, 0x7f984a37, 0x7fc00000, 0x3000001},
11270{0x3000000, 0x7fffffff, 0x7fbfffff, 0x7fc00000, 0x3000001},
11271{0x3000000, 0x7fffffff, 0x7fc00000, 0x7fc00000, 0x3000000},
11272{0x3000000, 0x7fffffff, 0x7fd9ba98, 0x7fc00000, 0x3000000},
11273{0x3000000, 0x7fffffff, 0x7fffffff, 0x7fc00000, 0x3000000},
11274{0x3000000, 0x7fffffff, 0x80000000, 0x7fc00000, 0x3000000},
11275{0x3000000, 0x7fffffff, 0x80000001, 0x7fc00000, 0x3000080},
11276{0x3000000, 0x7fffffff, 0x80000076, 0x7fc00000, 0x3000080},
11277{0x3000000, 0x7fffffff, 0x80002b94, 0x7fc00000, 0x3000080},
11278{0x3000000, 0x7fffffff, 0x80636d24, 0x7fc00000, 0x3000080},
11279{0x3000000, 0x7fffffff, 0x807fffff, 0x7fc00000, 0x3000080},
11280{0x3000000, 0x7fffffff, 0x80800000, 0x7fc00000, 0x3000000},
11281{0x3000000, 0x7fffffff, 0x80800002, 0x7fc00000, 0x3000000},
11282{0x3000000, 0x7fffffff, 0x81398437, 0x7fc00000, 0x3000000},
11283{0x3000000, 0x7fffffff, 0x8ba98d27, 0x7fc00000, 0x3000000},
11284{0x3000000, 0x7fffffff, 0x8ba98d7a, 0x7fc00000, 0x3000000},
11285{0x3000000, 0x7fffffff, 0xf51f853a, 0x7fc00000, 0x3000000},
11286{0x3000000, 0x7fffffff, 0xff7ffff0, 0x7fc00000, 0x3000000},
11287{0x3000000, 0x7fffffff, 0xff7fffff, 0x7fc00000, 0x3000000},
11288{0x3000000, 0x7fffffff, 0xff800000, 0x7fc00000, 0x3000000},
11289{0x3000000, 0x7fffffff, 0xff800001, 0x7fc00000, 0x3000001},
11290{0x3000000, 0x7fffffff, 0xff984a37, 0x7fc00000, 0x3000001},
11291{0x3000000, 0x7fffffff, 0xffbfffff, 0x7fc00000, 0x3000001},
11292{0x3000000, 0x7fffffff, 0xffc00000, 0x7fc00000, 0x3000000},
11293{0x3000000, 0x7fffffff, 0xffd9ba98, 0x7fc00000, 0x3000000},
11294{0x3000000, 0x7fffffff, 0xffffffff, 0x7fc00000, 0x3000000},
11295{0x3000000, 0x7fffffff, 0x4f3495cb, 0x7fc00000, 0x3000000},
11296{0x3000000, 0x7fffffff, 0xe73a5134, 0x7fc00000, 0x3000000},
11297{0x3000000, 0x7fffffff, 0x7c994e9e, 0x7fc00000, 0x3000000},
11298{0x3000000, 0x7fffffff, 0x6164bd6c, 0x7fc00000, 0x3000000},
11299{0x3000000, 0x7fffffff, 0x9503366, 0x7fc00000, 0x3000000},
11300{0x3000000, 0x7fffffff, 0xbf5a97c9, 0x7fc00000, 0x3000000},
11301{0x3000000, 0x7fffffff, 0xe6ff1a14, 0x7fc00000, 0x3000000},
11302{0x3000000, 0x7fffffff, 0x77f31e2f, 0x7fc00000, 0x3000000},
11303{0x3000000, 0x7fffffff, 0xaab4d7d8, 0x7fc00000, 0x3000000},
11304{0x3000000, 0x7fffffff, 0x966320b, 0x7fc00000, 0x3000000},
11305{0x3000000, 0x7fffffff, 0xb26bddee, 0x7fc00000, 0x3000000},
11306{0x3000000, 0x7fffffff, 0xb5c8e5d3, 0x7fc00000, 0x3000000},
11307{0x3000000, 0x7fffffff, 0x317285d3, 0x7fc00000, 0x3000000},
11308{0x3000000, 0x7fffffff, 0x3c9623b1, 0x7fc00000, 0x3000000},
11309{0x3000000, 0x7fffffff, 0x51fd2c7c, 0x7fc00000, 0x3000000},
11310{0x3000000, 0x7fffffff, 0x7b906a6c, 0x7fc00000, 0x3000000},
11311{0x3000000, 0x80000000, 0x0, 0x0, 0x3000000},
11312{0x3000000, 0x80000000, 0x1, 0x0, 0x3000080},
11313{0x3000000, 0x80000000, 0x76, 0x0, 0x3000080},
11314{0x3000000, 0x80000000, 0x2b94, 0x0, 0x3000080},
11315{0x3000000, 0x80000000, 0x636d24, 0x0, 0x3000080},
11316{0x3000000, 0x80000000, 0x7fffff, 0x0, 0x3000080},
11317{0x3000000, 0x80000000, 0x800000, 0x800000, 0x3000000},
11318{0x3000000, 0x80000000, 0x800002, 0x800002, 0x3000000},
11319{0x3000000, 0x80000000, 0x1398437, 0x1398437, 0x3000000},
11320{0x3000000, 0x80000000, 0xba98d27, 0xba98d27, 0x3000000},
11321{0x3000000, 0x80000000, 0xba98d7a, 0xba98d7a, 0x3000000},
11322{0x3000000, 0x80000000, 0x751f853a, 0x751f853a, 0x3000000},
11323{0x3000000, 0x80000000, 0x7f7ffff0, 0x7f7ffff0, 0x3000000},
11324{0x3000000, 0x80000000, 0x7f7fffff, 0x7f7fffff, 0x3000000},
11325{0x3000000, 0x80000000, 0x7f800000, 0x7f800000, 0x3000000},
11326{0x3000000, 0x80000000, 0x7f800001, 0x7fc00000, 0x3000001},
11327{0x3000000, 0x80000000, 0x7f984a37, 0x7fc00000, 0x3000001},
11328{0x3000000, 0x80000000, 0x7fbfffff, 0x7fc00000, 0x3000001},
11329{0x3000000, 0x80000000, 0x7fc00000, 0x7fc00000, 0x3000000},
11330{0x3000000, 0x80000000, 0x7fd9ba98, 0x7fc00000, 0x3000000},
11331{0x3000000, 0x80000000, 0x7fffffff, 0x7fc00000, 0x3000000},
11332{0x3000000, 0x80000000, 0x80000000, 0x80000000, 0x3000000},
11333{0x3000000, 0x80000000, 0x80000001, 0x0, 0x3000080},
11334{0x3000000, 0x80000000, 0x80000076, 0x0, 0x3000080},
11335{0x3000000, 0x80000000, 0x80002b94, 0x0, 0x3000080},
11336{0x3000000, 0x80000000, 0x80636d24, 0x0, 0x3000080},
11337{0x3000000, 0x80000000, 0x807fffff, 0x0, 0x3000080},
11338{0x3000000, 0x80000000, 0x80800000, 0x80800000, 0x3000000},
11339{0x3000000, 0x80000000, 0x80800002, 0x80800002, 0x3000000},
11340{0x3000000, 0x80000000, 0x81398437, 0x81398437, 0x3000000},
11341{0x3000000, 0x80000000, 0x8ba98d27, 0x8ba98d27, 0x3000000},
11342{0x3000000, 0x80000000, 0x8ba98d7a, 0x8ba98d7a, 0x3000000},
11343{0x3000000, 0x80000000, 0xf51f853a, 0xf51f853a, 0x3000000},
11344{0x3000000, 0x80000000, 0xff7ffff0, 0xff7ffff0, 0x3000000},
11345{0x3000000, 0x80000000, 0xff7fffff, 0xff7fffff, 0x3000000},
11346{0x3000000, 0x80000000, 0xff800000, 0xff800000, 0x3000000},
11347{0x3000000, 0x80000000, 0xff800001, 0x7fc00000, 0x3000001},
11348{0x3000000, 0x80000000, 0xff984a37, 0x7fc00000, 0x3000001},
11349{0x3000000, 0x80000000, 0xffbfffff, 0x7fc00000, 0x3000001},
11350{0x3000000, 0x80000000, 0xffc00000, 0x7fc00000, 0x3000000},
11351{0x3000000, 0x80000000, 0xffd9ba98, 0x7fc00000, 0x3000000},
11352{0x3000000, 0x80000000, 0xffffffff, 0x7fc00000, 0x3000000},
11353{0x3000000, 0x80000000, 0x4f3495cb, 0x4f3495cb, 0x3000000},
11354{0x3000000, 0x80000000, 0xe73a5134, 0xe73a5134, 0x3000000},
11355{0x3000000, 0x80000000, 0x7c994e9e, 0x7c994e9e, 0x3000000},
11356{0x3000000, 0x80000000, 0x6164bd6c, 0x6164bd6c, 0x3000000},
11357{0x3000000, 0x80000000, 0x9503366, 0x9503366, 0x3000000},
11358{0x3000000, 0x80000000, 0xbf5a97c9, 0xbf5a97c9, 0x3000000},
11359{0x3000000, 0x80000000, 0xe6ff1a14, 0xe6ff1a14, 0x3000000},
11360{0x3000000, 0x80000000, 0x77f31e2f, 0x77f31e2f, 0x3000000},
11361{0x3000000, 0x80000000, 0xaab4d7d8, 0xaab4d7d8, 0x3000000},
11362{0x3000000, 0x80000000, 0x966320b, 0x966320b, 0x3000000},
11363{0x3000000, 0x80000000, 0xb26bddee, 0xb26bddee, 0x3000000},
11364{0x3000000, 0x80000000, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000000},
11365{0x3000000, 0x80000000, 0x317285d3, 0x317285d3, 0x3000000},
11366{0x3000000, 0x80000000, 0x3c9623b1, 0x3c9623b1, 0x3000000},
11367{0x3000000, 0x80000000, 0x51fd2c7c, 0x51fd2c7c, 0x3000000},
11368{0x3000000, 0x80000000, 0x7b906a6c, 0x7b906a6c, 0x3000000},
11369{0x3000000, 0x80000001, 0x0, 0x0, 0x3000080},
11370{0x3000000, 0x80000001, 0x1, 0x0, 0x3000080},
11371{0x3000000, 0x80000001, 0x76, 0x0, 0x3000080},
11372{0x3000000, 0x80000001, 0x2b94, 0x0, 0x3000080},
11373{0x3000000, 0x80000001, 0x636d24, 0x0, 0x3000080},
11374{0x3000000, 0x80000001, 0x7fffff, 0x0, 0x3000080},
11375{0x3000000, 0x80000001, 0x800000, 0x800000, 0x3000080},
11376{0x3000000, 0x80000001, 0x800002, 0x800002, 0x3000080},
11377{0x3000000, 0x80000001, 0x1398437, 0x1398437, 0x3000080},
11378{0x3000000, 0x80000001, 0xba98d27, 0xba98d27, 0x3000080},
11379{0x3000000, 0x80000001, 0xba98d7a, 0xba98d7a, 0x3000080},
11380{0x3000000, 0x80000001, 0x751f853a, 0x751f853a, 0x3000080},
11381{0x3000000, 0x80000001, 0x7f7ffff0, 0x7f7ffff0, 0x3000080},
11382{0x3000000, 0x80000001, 0x7f7fffff, 0x7f7fffff, 0x3000080},
11383{0x3000000, 0x80000001, 0x7f800000, 0x7f800000, 0x3000080},
11384{0x3000000, 0x80000001, 0x7f800001, 0x7fc00000, 0x3000081},
11385{0x3000000, 0x80000001, 0x7f984a37, 0x7fc00000, 0x3000081},
11386{0x3000000, 0x80000001, 0x7fbfffff, 0x7fc00000, 0x3000081},
11387{0x3000000, 0x80000001, 0x7fc00000, 0x7fc00000, 0x3000080},
11388{0x3000000, 0x80000001, 0x7fd9ba98, 0x7fc00000, 0x3000080},
11389{0x3000000, 0x80000001, 0x7fffffff, 0x7fc00000, 0x3000080},
11390{0x3000000, 0x80000001, 0x80000000, 0x0, 0x3000080},
11391{0x3000000, 0x80000001, 0x80000001, 0x0, 0x3000080},
11392{0x3000000, 0x80000001, 0x80000076, 0x0, 0x3000080},
11393{0x3000000, 0x80000001, 0x80002b94, 0x0, 0x3000080},
11394{0x3000000, 0x80000001, 0x80636d24, 0x0, 0x3000080},
11395{0x3000000, 0x80000001, 0x807fffff, 0x0, 0x3000080},
11396{0x3000000, 0x80000001, 0x80800000, 0x80800000, 0x3000080},
11397{0x3000000, 0x80000001, 0x80800002, 0x80800002, 0x3000080},
11398{0x3000000, 0x80000001, 0x81398437, 0x81398437, 0x3000080},
11399{0x3000000, 0x80000001, 0x8ba98d27, 0x8ba98d27, 0x3000080},
11400{0x3000000, 0x80000001, 0x8ba98d7a, 0x8ba98d7a, 0x3000080},
11401{0x3000000, 0x80000001, 0xf51f853a, 0xf51f853a, 0x3000080},
11402{0x3000000, 0x80000001, 0xff7ffff0, 0xff7ffff0, 0x3000080},
11403{0x3000000, 0x80000001, 0xff7fffff, 0xff7fffff, 0x3000080},
11404{0x3000000, 0x80000001, 0xff800000, 0xff800000, 0x3000080},
11405{0x3000000, 0x80000001, 0xff800001, 0x7fc00000, 0x3000081},
11406{0x3000000, 0x80000001, 0xff984a37, 0x7fc00000, 0x3000081},
11407{0x3000000, 0x80000001, 0xffbfffff, 0x7fc00000, 0x3000081},
11408{0x3000000, 0x80000001, 0xffc00000, 0x7fc00000, 0x3000080},
11409{0x3000000, 0x80000001, 0xffd9ba98, 0x7fc00000, 0x3000080},
11410{0x3000000, 0x80000001, 0xffffffff, 0x7fc00000, 0x3000080},
11411{0x3000000, 0x80000001, 0x4f3495cb, 0x4f3495cb, 0x3000080},
11412{0x3000000, 0x80000001, 0xe73a5134, 0xe73a5134, 0x3000080},
11413{0x3000000, 0x80000001, 0x7c994e9e, 0x7c994e9e, 0x3000080},
11414{0x3000000, 0x80000001, 0x6164bd6c, 0x6164bd6c, 0x3000080},
11415{0x3000000, 0x80000001, 0x9503366, 0x9503366, 0x3000080},
11416{0x3000000, 0x80000001, 0xbf5a97c9, 0xbf5a97c9, 0x3000080},
11417{0x3000000, 0x80000001, 0xe6ff1a14, 0xe6ff1a14, 0x3000080},
11418{0x3000000, 0x80000001, 0x77f31e2f, 0x77f31e2f, 0x3000080},
11419{0x3000000, 0x80000001, 0xaab4d7d8, 0xaab4d7d8, 0x3000080},
11420{0x3000000, 0x80000001, 0x966320b, 0x966320b, 0x3000080},
11421{0x3000000, 0x80000001, 0xb26bddee, 0xb26bddee, 0x3000080},
11422{0x3000000, 0x80000001, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000080},
11423{0x3000000, 0x80000001, 0x317285d3, 0x317285d3, 0x3000080},
11424{0x3000000, 0x80000001, 0x3c9623b1, 0x3c9623b1, 0x3000080},
11425{0x3000000, 0x80000001, 0x51fd2c7c, 0x51fd2c7c, 0x3000080},
11426{0x3000000, 0x80000001, 0x7b906a6c, 0x7b906a6c, 0x3000080},
11427{0x3000000, 0x80000076, 0x0, 0x0, 0x3000080},
11428{0x3000000, 0x80000076, 0x1, 0x0, 0x3000080},
11429{0x3000000, 0x80000076, 0x76, 0x0, 0x3000080},
11430{0x3000000, 0x80000076, 0x2b94, 0x0, 0x3000080},
11431{0x3000000, 0x80000076, 0x636d24, 0x0, 0x3000080},
11432{0x3000000, 0x80000076, 0x7fffff, 0x0, 0x3000080},
11433{0x3000000, 0x80000076, 0x800000, 0x800000, 0x3000080},
11434{0x3000000, 0x80000076, 0x800002, 0x800002, 0x3000080},
11435{0x3000000, 0x80000076, 0x1398437, 0x1398437, 0x3000080},
11436{0x3000000, 0x80000076, 0xba98d27, 0xba98d27, 0x3000080},
11437{0x3000000, 0x80000076, 0xba98d7a, 0xba98d7a, 0x3000080},
11438{0x3000000, 0x80000076, 0x751f853a, 0x751f853a, 0x3000080},
11439{0x3000000, 0x80000076, 0x7f7ffff0, 0x7f7ffff0, 0x3000080},
11440{0x3000000, 0x80000076, 0x7f7fffff, 0x7f7fffff, 0x3000080},
11441{0x3000000, 0x80000076, 0x7f800000, 0x7f800000, 0x3000080},
11442{0x3000000, 0x80000076, 0x7f800001, 0x7fc00000, 0x3000081},
11443{0x3000000, 0x80000076, 0x7f984a37, 0x7fc00000, 0x3000081},
11444{0x3000000, 0x80000076, 0x7fbfffff, 0x7fc00000, 0x3000081},
11445{0x3000000, 0x80000076, 0x7fc00000, 0x7fc00000, 0x3000080},
11446{0x3000000, 0x80000076, 0x7fd9ba98, 0x7fc00000, 0x3000080},
11447{0x3000000, 0x80000076, 0x7fffffff, 0x7fc00000, 0x3000080},
11448{0x3000000, 0x80000076, 0x80000000, 0x0, 0x3000080},
11449{0x3000000, 0x80000076, 0x80000001, 0x0, 0x3000080},
11450{0x3000000, 0x80000076, 0x80000076, 0x0, 0x3000080},
11451{0x3000000, 0x80000076, 0x80002b94, 0x0, 0x3000080},
11452{0x3000000, 0x80000076, 0x80636d24, 0x0, 0x3000080},
11453{0x3000000, 0x80000076, 0x807fffff, 0x0, 0x3000080},
11454{0x3000000, 0x80000076, 0x80800000, 0x80800000, 0x3000080},
11455{0x3000000, 0x80000076, 0x80800002, 0x80800002, 0x3000080},
11456{0x3000000, 0x80000076, 0x81398437, 0x81398437, 0x3000080},
11457{0x3000000, 0x80000076, 0x8ba98d27, 0x8ba98d27, 0x3000080},
11458{0x3000000, 0x80000076, 0x8ba98d7a, 0x8ba98d7a, 0x3000080},
11459{0x3000000, 0x80000076, 0xf51f853a, 0xf51f853a, 0x3000080},
11460{0x3000000, 0x80000076, 0xff7ffff0, 0xff7ffff0, 0x3000080},
11461{0x3000000, 0x80000076, 0xff7fffff, 0xff7fffff, 0x3000080},
11462{0x3000000, 0x80000076, 0xff800000, 0xff800000, 0x3000080},
11463{0x3000000, 0x80000076, 0xff800001, 0x7fc00000, 0x3000081},
11464{0x3000000, 0x80000076, 0xff984a37, 0x7fc00000, 0x3000081},
11465{0x3000000, 0x80000076, 0xffbfffff, 0x7fc00000, 0x3000081},
11466{0x3000000, 0x80000076, 0xffc00000, 0x7fc00000, 0x3000080},
11467{0x3000000, 0x80000076, 0xffd9ba98, 0x7fc00000, 0x3000080},
11468{0x3000000, 0x80000076, 0xffffffff, 0x7fc00000, 0x3000080},
11469{0x3000000, 0x80000076, 0x4f3495cb, 0x4f3495cb, 0x3000080},
11470{0x3000000, 0x80000076, 0xe73a5134, 0xe73a5134, 0x3000080},
11471{0x3000000, 0x80000076, 0x7c994e9e, 0x7c994e9e, 0x3000080},
11472{0x3000000, 0x80000076, 0x6164bd6c, 0x6164bd6c, 0x3000080},
11473{0x3000000, 0x80000076, 0x9503366, 0x9503366, 0x3000080},
11474{0x3000000, 0x80000076, 0xbf5a97c9, 0xbf5a97c9, 0x3000080},
11475{0x3000000, 0x80000076, 0xe6ff1a14, 0xe6ff1a14, 0x3000080},
11476{0x3000000, 0x80000076, 0x77f31e2f, 0x77f31e2f, 0x3000080},
11477{0x3000000, 0x80000076, 0xaab4d7d8, 0xaab4d7d8, 0x3000080},
11478{0x3000000, 0x80000076, 0x966320b, 0x966320b, 0x3000080},
11479{0x3000000, 0x80000076, 0xb26bddee, 0xb26bddee, 0x3000080},
11480{0x3000000, 0x80000076, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000080},
11481{0x3000000, 0x80000076, 0x317285d3, 0x317285d3, 0x3000080},
11482{0x3000000, 0x80000076, 0x3c9623b1, 0x3c9623b1, 0x3000080},
11483{0x3000000, 0x80000076, 0x51fd2c7c, 0x51fd2c7c, 0x3000080},
11484{0x3000000, 0x80000076, 0x7b906a6c, 0x7b906a6c, 0x3000080},
11485{0x3000000, 0x80002b94, 0x0, 0x0, 0x3000080},
11486{0x3000000, 0x80002b94, 0x1, 0x0, 0x3000080},
11487{0x3000000, 0x80002b94, 0x76, 0x0, 0x3000080},
11488{0x3000000, 0x80002b94, 0x2b94, 0x0, 0x3000080},
11489{0x3000000, 0x80002b94, 0x636d24, 0x0, 0x3000080},
11490{0x3000000, 0x80002b94, 0x7fffff, 0x0, 0x3000080},
11491{0x3000000, 0x80002b94, 0x800000, 0x800000, 0x3000080},
11492{0x3000000, 0x80002b94, 0x800002, 0x800002, 0x3000080},
11493{0x3000000, 0x80002b94, 0x1398437, 0x1398437, 0x3000080},
11494{0x3000000, 0x80002b94, 0xba98d27, 0xba98d27, 0x3000080},
11495{0x3000000, 0x80002b94, 0xba98d7a, 0xba98d7a, 0x3000080},
11496{0x3000000, 0x80002b94, 0x751f853a, 0x751f853a, 0x3000080},
11497{0x3000000, 0x80002b94, 0x7f7ffff0, 0x7f7ffff0, 0x3000080},
11498{0x3000000, 0x80002b94, 0x7f7fffff, 0x7f7fffff, 0x3000080},
11499{0x3000000, 0x80002b94, 0x7f800000, 0x7f800000, 0x3000080},
11500{0x3000000, 0x80002b94, 0x7f800001, 0x7fc00000, 0x3000081},
11501{0x3000000, 0x80002b94, 0x7f984a37, 0x7fc00000, 0x3000081},
11502{0x3000000, 0x80002b94, 0x7fbfffff, 0x7fc00000, 0x3000081},
11503{0x3000000, 0x80002b94, 0x7fc00000, 0x7fc00000, 0x3000080},
11504{0x3000000, 0x80002b94, 0x7fd9ba98, 0x7fc00000, 0x3000080},
11505{0x3000000, 0x80002b94, 0x7fffffff, 0x7fc00000, 0x3000080},
11506{0x3000000, 0x80002b94, 0x80000000, 0x0, 0x3000080},
11507{0x3000000, 0x80002b94, 0x80000001, 0x0, 0x3000080},
11508{0x3000000, 0x80002b94, 0x80000076, 0x0, 0x3000080},
11509{0x3000000, 0x80002b94, 0x80002b94, 0x0, 0x3000080},
11510{0x3000000, 0x80002b94, 0x80636d24, 0x0, 0x3000080},
11511{0x3000000, 0x80002b94, 0x807fffff, 0x0, 0x3000080},
11512{0x3000000, 0x80002b94, 0x80800000, 0x80800000, 0x3000080},
11513{0x3000000, 0x80002b94, 0x80800002, 0x80800002, 0x3000080},
11514{0x3000000, 0x80002b94, 0x81398437, 0x81398437, 0x3000080},
11515{0x3000000, 0x80002b94, 0x8ba98d27, 0x8ba98d27, 0x3000080},
11516{0x3000000, 0x80002b94, 0x8ba98d7a, 0x8ba98d7a, 0x3000080},
11517{0x3000000, 0x80002b94, 0xf51f853a, 0xf51f853a, 0x3000080},
11518{0x3000000, 0x80002b94, 0xff7ffff0, 0xff7ffff0, 0x3000080},
11519{0x3000000, 0x80002b94, 0xff7fffff, 0xff7fffff, 0x3000080},
11520{0x3000000, 0x80002b94, 0xff800000, 0xff800000, 0x3000080},
11521{0x3000000, 0x80002b94, 0xff800001, 0x7fc00000, 0x3000081},
11522{0x3000000, 0x80002b94, 0xff984a37, 0x7fc00000, 0x3000081},
11523{0x3000000, 0x80002b94, 0xffbfffff, 0x7fc00000, 0x3000081},
11524{0x3000000, 0x80002b94, 0xffc00000, 0x7fc00000, 0x3000080},
11525{0x3000000, 0x80002b94, 0xffd9ba98, 0x7fc00000, 0x3000080},
11526{0x3000000, 0x80002b94, 0xffffffff, 0x7fc00000, 0x3000080},
11527{0x3000000, 0x80002b94, 0x4f3495cb, 0x4f3495cb, 0x3000080},
11528{0x3000000, 0x80002b94, 0xe73a5134, 0xe73a5134, 0x3000080},
11529{0x3000000, 0x80002b94, 0x7c994e9e, 0x7c994e9e, 0x3000080},
11530{0x3000000, 0x80002b94, 0x6164bd6c, 0x6164bd6c, 0x3000080},
11531{0x3000000, 0x80002b94, 0x9503366, 0x9503366, 0x3000080},
11532{0x3000000, 0x80002b94, 0xbf5a97c9, 0xbf5a97c9, 0x3000080},
11533{0x3000000, 0x80002b94, 0xe6ff1a14, 0xe6ff1a14, 0x3000080},
11534{0x3000000, 0x80002b94, 0x77f31e2f, 0x77f31e2f, 0x3000080},
11535{0x3000000, 0x80002b94, 0xaab4d7d8, 0xaab4d7d8, 0x3000080},
11536{0x3000000, 0x80002b94, 0x966320b, 0x966320b, 0x3000080},
11537{0x3000000, 0x80002b94, 0xb26bddee, 0xb26bddee, 0x3000080},
11538{0x3000000, 0x80002b94, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000080},
11539{0x3000000, 0x80002b94, 0x317285d3, 0x317285d3, 0x3000080},
11540{0x3000000, 0x80002b94, 0x3c9623b1, 0x3c9623b1, 0x3000080},
11541{0x3000000, 0x80002b94, 0x51fd2c7c, 0x51fd2c7c, 0x3000080},
11542{0x3000000, 0x80002b94, 0x7b906a6c, 0x7b906a6c, 0x3000080},
11543{0x3000000, 0x80636d24, 0x0, 0x0, 0x3000080},
11544{0x3000000, 0x80636d24, 0x1, 0x0, 0x3000080},
11545{0x3000000, 0x80636d24, 0x76, 0x0, 0x3000080},
11546{0x3000000, 0x80636d24, 0x2b94, 0x0, 0x3000080},
11547{0x3000000, 0x80636d24, 0x636d24, 0x0, 0x3000080},
11548{0x3000000, 0x80636d24, 0x7fffff, 0x0, 0x3000080},
11549{0x3000000, 0x80636d24, 0x800000, 0x800000, 0x3000080},
11550{0x3000000, 0x80636d24, 0x800002, 0x800002, 0x3000080},
11551{0x3000000, 0x80636d24, 0x1398437, 0x1398437, 0x3000080},
11552{0x3000000, 0x80636d24, 0xba98d27, 0xba98d27, 0x3000080},
11553{0x3000000, 0x80636d24, 0xba98d7a, 0xba98d7a, 0x3000080},
11554{0x3000000, 0x80636d24, 0x751f853a, 0x751f853a, 0x3000080},
11555{0x3000000, 0x80636d24, 0x7f7ffff0, 0x7f7ffff0, 0x3000080},
11556{0x3000000, 0x80636d24, 0x7f7fffff, 0x7f7fffff, 0x3000080},
11557{0x3000000, 0x80636d24, 0x7f800000, 0x7f800000, 0x3000080},
11558{0x3000000, 0x80636d24, 0x7f800001, 0x7fc00000, 0x3000081},
11559{0x3000000, 0x80636d24, 0x7f984a37, 0x7fc00000, 0x3000081},
11560{0x3000000, 0x80636d24, 0x7fbfffff, 0x7fc00000, 0x3000081},
11561{0x3000000, 0x80636d24, 0x7fc00000, 0x7fc00000, 0x3000080},
11562{0x3000000, 0x80636d24, 0x7fd9ba98, 0x7fc00000, 0x3000080},
11563{0x3000000, 0x80636d24, 0x7fffffff, 0x7fc00000, 0x3000080},
11564{0x3000000, 0x80636d24, 0x80000000, 0x0, 0x3000080},
11565{0x3000000, 0x80636d24, 0x80000001, 0x0, 0x3000080},
11566{0x3000000, 0x80636d24, 0x80000076, 0x0, 0x3000080},
11567{0x3000000, 0x80636d24, 0x80002b94, 0x0, 0x3000080},
11568{0x3000000, 0x80636d24, 0x80636d24, 0x0, 0x3000080},
11569{0x3000000, 0x80636d24, 0x807fffff, 0x0, 0x3000080},
11570{0x3000000, 0x80636d24, 0x80800000, 0x80800000, 0x3000080},
11571{0x3000000, 0x80636d24, 0x80800002, 0x80800002, 0x3000080},
11572{0x3000000, 0x80636d24, 0x81398437, 0x81398437, 0x3000080},
11573{0x3000000, 0x80636d24, 0x8ba98d27, 0x8ba98d27, 0x3000080},
11574{0x3000000, 0x80636d24, 0x8ba98d7a, 0x8ba98d7a, 0x3000080},
11575{0x3000000, 0x80636d24, 0xf51f853a, 0xf51f853a, 0x3000080},
11576{0x3000000, 0x80636d24, 0xff7ffff0, 0xff7ffff0, 0x3000080},
11577{0x3000000, 0x80636d24, 0xff7fffff, 0xff7fffff, 0x3000080},
11578{0x3000000, 0x80636d24, 0xff800000, 0xff800000, 0x3000080},
11579{0x3000000, 0x80636d24, 0xff800001, 0x7fc00000, 0x3000081},
11580{0x3000000, 0x80636d24, 0xff984a37, 0x7fc00000, 0x3000081},
11581{0x3000000, 0x80636d24, 0xffbfffff, 0x7fc00000, 0x3000081},
11582{0x3000000, 0x80636d24, 0xffc00000, 0x7fc00000, 0x3000080},
11583{0x3000000, 0x80636d24, 0xffd9ba98, 0x7fc00000, 0x3000080},
11584{0x3000000, 0x80636d24, 0xffffffff, 0x7fc00000, 0x3000080},
11585{0x3000000, 0x80636d24, 0x4f3495cb, 0x4f3495cb, 0x3000080},
11586{0x3000000, 0x80636d24, 0xe73a5134, 0xe73a5134, 0x3000080},
11587{0x3000000, 0x80636d24, 0x7c994e9e, 0x7c994e9e, 0x3000080},
11588{0x3000000, 0x80636d24, 0x6164bd6c, 0x6164bd6c, 0x3000080},
11589{0x3000000, 0x80636d24, 0x9503366, 0x9503366, 0x3000080},
11590{0x3000000, 0x80636d24, 0xbf5a97c9, 0xbf5a97c9, 0x3000080},
11591{0x3000000, 0x80636d24, 0xe6ff1a14, 0xe6ff1a14, 0x3000080},
11592{0x3000000, 0x80636d24, 0x77f31e2f, 0x77f31e2f, 0x3000080},
11593{0x3000000, 0x80636d24, 0xaab4d7d8, 0xaab4d7d8, 0x3000080},
11594{0x3000000, 0x80636d24, 0x966320b, 0x966320b, 0x3000080},
11595{0x3000000, 0x80636d24, 0xb26bddee, 0xb26bddee, 0x3000080},
11596{0x3000000, 0x80636d24, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000080},
11597{0x3000000, 0x80636d24, 0x317285d3, 0x317285d3, 0x3000080},
11598{0x3000000, 0x80636d24, 0x3c9623b1, 0x3c9623b1, 0x3000080},
11599{0x3000000, 0x80636d24, 0x51fd2c7c, 0x51fd2c7c, 0x3000080},
11600{0x3000000, 0x80636d24, 0x7b906a6c, 0x7b906a6c, 0x3000080},
11601{0x3000000, 0x807fffff, 0x0, 0x0, 0x3000080},
11602{0x3000000, 0x807fffff, 0x1, 0x0, 0x3000080},
11603{0x3000000, 0x807fffff, 0x76, 0x0, 0x3000080},
11604{0x3000000, 0x807fffff, 0x2b94, 0x0, 0x3000080},
11605{0x3000000, 0x807fffff, 0x636d24, 0x0, 0x3000080},
11606{0x3000000, 0x807fffff, 0x7fffff, 0x0, 0x3000080},
11607{0x3000000, 0x807fffff, 0x800000, 0x800000, 0x3000080},
11608{0x3000000, 0x807fffff, 0x800002, 0x800002, 0x3000080},
11609{0x3000000, 0x807fffff, 0x1398437, 0x1398437, 0x3000080},
11610{0x3000000, 0x807fffff, 0xba98d27, 0xba98d27, 0x3000080},
11611{0x3000000, 0x807fffff, 0xba98d7a, 0xba98d7a, 0x3000080},
11612{0x3000000, 0x807fffff, 0x751f853a, 0x751f853a, 0x3000080},
11613{0x3000000, 0x807fffff, 0x7f7ffff0, 0x7f7ffff0, 0x3000080},
11614{0x3000000, 0x807fffff, 0x7f7fffff, 0x7f7fffff, 0x3000080},
11615{0x3000000, 0x807fffff, 0x7f800000, 0x7f800000, 0x3000080},
11616{0x3000000, 0x807fffff, 0x7f800001, 0x7fc00000, 0x3000081},
11617{0x3000000, 0x807fffff, 0x7f984a37, 0x7fc00000, 0x3000081},
11618{0x3000000, 0x807fffff, 0x7fbfffff, 0x7fc00000, 0x3000081},
11619{0x3000000, 0x807fffff, 0x7fc00000, 0x7fc00000, 0x3000080},
11620{0x3000000, 0x807fffff, 0x7fd9ba98, 0x7fc00000, 0x3000080},
11621{0x3000000, 0x807fffff, 0x7fffffff, 0x7fc00000, 0x3000080},
11622{0x3000000, 0x807fffff, 0x80000000, 0x0, 0x3000080},
11623{0x3000000, 0x807fffff, 0x80000001, 0x0, 0x3000080},
11624{0x3000000, 0x807fffff, 0x80000076, 0x0, 0x3000080},
11625{0x3000000, 0x807fffff, 0x80002b94, 0x0, 0x3000080},
11626{0x3000000, 0x807fffff, 0x80636d24, 0x0, 0x3000080},
11627{0x3000000, 0x807fffff, 0x807fffff, 0x0, 0x3000080},
11628{0x3000000, 0x807fffff, 0x80800000, 0x80800000, 0x3000080},
11629{0x3000000, 0x807fffff, 0x80800002, 0x80800002, 0x3000080},
11630{0x3000000, 0x807fffff, 0x81398437, 0x81398437, 0x3000080},
11631{0x3000000, 0x807fffff, 0x8ba98d27, 0x8ba98d27, 0x3000080},
11632{0x3000000, 0x807fffff, 0x8ba98d7a, 0x8ba98d7a, 0x3000080},
11633{0x3000000, 0x807fffff, 0xf51f853a, 0xf51f853a, 0x3000080},
11634{0x3000000, 0x807fffff, 0xff7ffff0, 0xff7ffff0, 0x3000080},
11635{0x3000000, 0x807fffff, 0xff7fffff, 0xff7fffff, 0x3000080},
11636{0x3000000, 0x807fffff, 0xff800000, 0xff800000, 0x3000080},
11637{0x3000000, 0x807fffff, 0xff800001, 0x7fc00000, 0x3000081},
11638{0x3000000, 0x807fffff, 0xff984a37, 0x7fc00000, 0x3000081},
11639{0x3000000, 0x807fffff, 0xffbfffff, 0x7fc00000, 0x3000081},
11640{0x3000000, 0x807fffff, 0xffc00000, 0x7fc00000, 0x3000080},
11641{0x3000000, 0x807fffff, 0xffd9ba98, 0x7fc00000, 0x3000080},
11642{0x3000000, 0x807fffff, 0xffffffff, 0x7fc00000, 0x3000080},
11643{0x3000000, 0x807fffff, 0x4f3495cb, 0x4f3495cb, 0x3000080},
11644{0x3000000, 0x807fffff, 0xe73a5134, 0xe73a5134, 0x3000080},
11645{0x3000000, 0x807fffff, 0x7c994e9e, 0x7c994e9e, 0x3000080},
11646{0x3000000, 0x807fffff, 0x6164bd6c, 0x6164bd6c, 0x3000080},
11647{0x3000000, 0x807fffff, 0x9503366, 0x9503366, 0x3000080},
11648{0x3000000, 0x807fffff, 0xbf5a97c9, 0xbf5a97c9, 0x3000080},
11649{0x3000000, 0x807fffff, 0xe6ff1a14, 0xe6ff1a14, 0x3000080},
11650{0x3000000, 0x807fffff, 0x77f31e2f, 0x77f31e2f, 0x3000080},
11651{0x3000000, 0x807fffff, 0xaab4d7d8, 0xaab4d7d8, 0x3000080},
11652{0x3000000, 0x807fffff, 0x966320b, 0x966320b, 0x3000080},
11653{0x3000000, 0x807fffff, 0xb26bddee, 0xb26bddee, 0x3000080},
11654{0x3000000, 0x807fffff, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000080},
11655{0x3000000, 0x807fffff, 0x317285d3, 0x317285d3, 0x3000080},
11656{0x3000000, 0x807fffff, 0x3c9623b1, 0x3c9623b1, 0x3000080},
11657{0x3000000, 0x807fffff, 0x51fd2c7c, 0x51fd2c7c, 0x3000080},
11658{0x3000000, 0x807fffff, 0x7b906a6c, 0x7b906a6c, 0x3000080},
11659{0x3000000, 0x80800000, 0x0, 0x80800000, 0x3000000},
11660{0x3000000, 0x80800000, 0x1, 0x80800000, 0x3000080},
11661{0x3000000, 0x80800000, 0x76, 0x80800000, 0x3000080},
11662{0x3000000, 0x80800000, 0x2b94, 0x80800000, 0x3000080},
11663{0x3000000, 0x80800000, 0x636d24, 0x80800000, 0x3000080},
11664{0x3000000, 0x80800000, 0x7fffff, 0x80800000, 0x3000080},
11665{0x3000000, 0x80800000, 0x800000, 0x0, 0x3000000},
11666{0x3000000, 0x80800000, 0x800002, 0x0, 0x3000008},
11667{0x3000000, 0x80800000, 0x1398437, 0xf3086e, 0x3000000},
11668{0x3000000, 0x80800000, 0xba98d27, 0xba98d25, 0x3000000},
11669{0x3000000, 0x80800000, 0xba98d7a, 0xba98d78, 0x3000000},
11670{0x3000000, 0x80800000, 0x751f853a, 0x751f853a, 0x3000010},
11671{0x3000000, 0x80800000, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
11672{0x3000000, 0x80800000, 0x7f7fffff, 0x7f7fffff, 0x3000010},
11673{0x3000000, 0x80800000, 0x7f800000, 0x7f800000, 0x3000000},
11674{0x3000000, 0x80800000, 0x7f800001, 0x7fc00000, 0x3000001},
11675{0x3000000, 0x80800000, 0x7f984a37, 0x7fc00000, 0x3000001},
11676{0x3000000, 0x80800000, 0x7fbfffff, 0x7fc00000, 0x3000001},
11677{0x3000000, 0x80800000, 0x7fc00000, 0x7fc00000, 0x3000000},
11678{0x3000000, 0x80800000, 0x7fd9ba98, 0x7fc00000, 0x3000000},
11679{0x3000000, 0x80800000, 0x7fffffff, 0x7fc00000, 0x3000000},
11680{0x3000000, 0x80800000, 0x80000000, 0x80800000, 0x3000000},
11681{0x3000000, 0x80800000, 0x80000001, 0x80800000, 0x3000080},
11682{0x3000000, 0x80800000, 0x80000076, 0x80800000, 0x3000080},
11683{0x3000000, 0x80800000, 0x80002b94, 0x80800000, 0x3000080},
11684{0x3000000, 0x80800000, 0x80636d24, 0x80800000, 0x3000080},
11685{0x3000000, 0x80800000, 0x807fffff, 0x80800000, 0x3000080},
11686{0x3000000, 0x80800000, 0x80800000, 0x81000000, 0x3000000},
11687{0x3000000, 0x80800000, 0x80800002, 0x81000001, 0x3000000},
11688{0x3000000, 0x80800000, 0x81398437, 0x81798437, 0x3000000},
11689{0x3000000, 0x80800000, 0x8ba98d27, 0x8ba98d29, 0x3000000},
11690{0x3000000, 0x80800000, 0x8ba98d7a, 0x8ba98d7c, 0x3000000},
11691{0x3000000, 0x80800000, 0xf51f853a, 0xf51f853a, 0x3000010},
11692{0x3000000, 0x80800000, 0xff7ffff0, 0xff7ffff0, 0x3000010},
11693{0x3000000, 0x80800000, 0xff7fffff, 0xff7fffff, 0x3000010},
11694{0x3000000, 0x80800000, 0xff800000, 0xff800000, 0x3000000},
11695{0x3000000, 0x80800000, 0xff800001, 0x7fc00000, 0x3000001},
11696{0x3000000, 0x80800000, 0xff984a37, 0x7fc00000, 0x3000001},
11697{0x3000000, 0x80800000, 0xffbfffff, 0x7fc00000, 0x3000001},
11698{0x3000000, 0x80800000, 0xffc00000, 0x7fc00000, 0x3000000},
11699{0x3000000, 0x80800000, 0xffd9ba98, 0x7fc00000, 0x3000000},
11700{0x3000000, 0x80800000, 0xffffffff, 0x7fc00000, 0x3000000},
11701{0x3000000, 0x80800000, 0x4f3495cb, 0x4f3495cb, 0x3000010},
11702{0x3000000, 0x80800000, 0xe73a5134, 0xe73a5134, 0x3000010},
11703{0x3000000, 0x80800000, 0x7c994e9e, 0x7c994e9e, 0x3000010},
11704{0x3000000, 0x80800000, 0x6164bd6c, 0x6164bd6c, 0x3000010},
11705{0x3000000, 0x80800000, 0x9503366, 0x9503326, 0x3000000},
11706{0x3000000, 0x80800000, 0xbf5a97c9, 0xbf5a97c9, 0x3000010},
11707{0x3000000, 0x80800000, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
11708{0x3000000, 0x80800000, 0x77f31e2f, 0x77f31e2f, 0x3000010},
11709{0x3000000, 0x80800000, 0xaab4d7d8, 0xaab4d7d8, 0x3000010},
11710{0x3000000, 0x80800000, 0x966320b, 0x96631cb, 0x3000000},
11711{0x3000000, 0x80800000, 0xb26bddee, 0xb26bddee, 0x3000010},
11712{0x3000000, 0x80800000, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000010},
11713{0x3000000, 0x80800000, 0x317285d3, 0x317285d3, 0x3000010},
11714{0x3000000, 0x80800000, 0x3c9623b1, 0x3c9623b1, 0x3000010},
11715{0x3000000, 0x80800000, 0x51fd2c7c, 0x51fd2c7c, 0x3000010},
11716{0x3000000, 0x80800000, 0x7b906a6c, 0x7b906a6c, 0x3000010},
11717{0x3000000, 0x80800002, 0x0, 0x80800002, 0x3000000},
11718{0x3000000, 0x80800002, 0x1, 0x80800002, 0x3000080},
11719{0x3000000, 0x80800002, 0x76, 0x80800002, 0x3000080},
11720{0x3000000, 0x80800002, 0x2b94, 0x80800002, 0x3000080},
11721{0x3000000, 0x80800002, 0x636d24, 0x80800002, 0x3000080},
11722{0x3000000, 0x80800002, 0x7fffff, 0x80800002, 0x3000080},
11723{0x3000000, 0x80800002, 0x800000, 0x0, 0x3000008},
11724{0x3000000, 0x80800002, 0x800002, 0x0, 0x3000000},
11725{0x3000000, 0x80800002, 0x1398437, 0xf3086c, 0x3000000},
11726{0x3000000, 0x80800002, 0xba98d27, 0xba98d25, 0x3000010},
11727{0x3000000, 0x80800002, 0xba98d7a, 0xba98d78, 0x3000010},
11728{0x3000000, 0x80800002, 0x751f853a, 0x751f853a, 0x3000010},
11729{0x3000000, 0x80800002, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
11730{0x3000000, 0x80800002, 0x7f7fffff, 0x7f7fffff, 0x3000010},
11731{0x3000000, 0x80800002, 0x7f800000, 0x7f800000, 0x3000000},
11732{0x3000000, 0x80800002, 0x7f800001, 0x7fc00000, 0x3000001},
11733{0x3000000, 0x80800002, 0x7f984a37, 0x7fc00000, 0x3000001},
11734{0x3000000, 0x80800002, 0x7fbfffff, 0x7fc00000, 0x3000001},
11735{0x3000000, 0x80800002, 0x7fc00000, 0x7fc00000, 0x3000000},
11736{0x3000000, 0x80800002, 0x7fd9ba98, 0x7fc00000, 0x3000000},
11737{0x3000000, 0x80800002, 0x7fffffff, 0x7fc00000, 0x3000000},
11738{0x3000000, 0x80800002, 0x80000000, 0x80800002, 0x3000000},
11739{0x3000000, 0x80800002, 0x80000001, 0x80800002, 0x3000080},
11740{0x3000000, 0x80800002, 0x80000076, 0x80800002, 0x3000080},
11741{0x3000000, 0x80800002, 0x80002b94, 0x80800002, 0x3000080},
11742{0x3000000, 0x80800002, 0x80636d24, 0x80800002, 0x3000080},
11743{0x3000000, 0x80800002, 0x807fffff, 0x80800002, 0x3000080},
11744{0x3000000, 0x80800002, 0x80800000, 0x81000001, 0x3000000},
11745{0x3000000, 0x80800002, 0x80800002, 0x81000002, 0x3000000},
11746{0x3000000, 0x80800002, 0x81398437, 0x81798438, 0x3000000},
11747{0x3000000, 0x80800002, 0x8ba98d27, 0x8ba98d29, 0x3000010},
11748{0x3000000, 0x80800002, 0x8ba98d7a, 0x8ba98d7c, 0x3000010},
11749{0x3000000, 0x80800002, 0xf51f853a, 0xf51f853a, 0x3000010},
11750{0x3000000, 0x80800002, 0xff7ffff0, 0xff7ffff0, 0x3000010},
11751{0x3000000, 0x80800002, 0xff7fffff, 0xff7fffff, 0x3000010},
11752{0x3000000, 0x80800002, 0xff800000, 0xff800000, 0x3000000},
11753{0x3000000, 0x80800002, 0xff800001, 0x7fc00000, 0x3000001},
11754{0x3000000, 0x80800002, 0xff984a37, 0x7fc00000, 0x3000001},
11755{0x3000000, 0x80800002, 0xffbfffff, 0x7fc00000, 0x3000001},
11756{0x3000000, 0x80800002, 0xffc00000, 0x7fc00000, 0x3000000},
11757{0x3000000, 0x80800002, 0xffd9ba98, 0x7fc00000, 0x3000000},
11758{0x3000000, 0x80800002, 0xffffffff, 0x7fc00000, 0x3000000},
11759{0x3000000, 0x80800002, 0x4f3495cb, 0x4f3495cb, 0x3000010},
11760{0x3000000, 0x80800002, 0xe73a5134, 0xe73a5134, 0x3000010},
11761{0x3000000, 0x80800002, 0x7c994e9e, 0x7c994e9e, 0x3000010},
11762{0x3000000, 0x80800002, 0x6164bd6c, 0x6164bd6c, 0x3000010},
11763{0x3000000, 0x80800002, 0x9503366, 0x9503326, 0x3000010},
11764{0x3000000, 0x80800002, 0xbf5a97c9, 0xbf5a97c9, 0x3000010},
11765{0x3000000, 0x80800002, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
11766{0x3000000, 0x80800002, 0x77f31e2f, 0x77f31e2f, 0x3000010},
11767{0x3000000, 0x80800002, 0xaab4d7d8, 0xaab4d7d8, 0x3000010},
11768{0x3000000, 0x80800002, 0x966320b, 0x96631cb, 0x3000010},
11769{0x3000000, 0x80800002, 0xb26bddee, 0xb26bddee, 0x3000010},
11770{0x3000000, 0x80800002, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000010},
11771{0x3000000, 0x80800002, 0x317285d3, 0x317285d3, 0x3000010},
11772{0x3000000, 0x80800002, 0x3c9623b1, 0x3c9623b1, 0x3000010},
11773{0x3000000, 0x80800002, 0x51fd2c7c, 0x51fd2c7c, 0x3000010},
11774{0x3000000, 0x80800002, 0x7b906a6c, 0x7b906a6c, 0x3000010},
11775{0x3000000, 0x81398437, 0x0, 0x81398437, 0x3000000},
11776{0x3000000, 0x81398437, 0x1, 0x81398437, 0x3000080},
11777{0x3000000, 0x81398437, 0x76, 0x81398437, 0x3000080},
11778{0x3000000, 0x81398437, 0x2b94, 0x81398437, 0x3000080},
11779{0x3000000, 0x81398437, 0x636d24, 0x81398437, 0x3000080},
11780{0x3000000, 0x81398437, 0x7fffff, 0x81398437, 0x3000080},
11781{0x3000000, 0x81398437, 0x800000, 0x80f3086e, 0x3000000},
11782{0x3000000, 0x81398437, 0x800002, 0x80f3086c, 0x3000000},
11783{0x3000000, 0x81398437, 0x1398437, 0x0, 0x3000000},
11784{0x3000000, 0x81398437, 0xba98d27, 0xba98d21, 0x3000010},
11785{0x3000000, 0x81398437, 0xba98d7a, 0xba98d74, 0x3000010},
11786{0x3000000, 0x81398437, 0x751f853a, 0x751f853a, 0x3000010},
11787{0x3000000, 0x81398437, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
11788{0x3000000, 0x81398437, 0x7f7fffff, 0x7f7fffff, 0x3000010},
11789{0x3000000, 0x81398437, 0x7f800000, 0x7f800000, 0x3000000},
11790{0x3000000, 0x81398437, 0x7f800001, 0x7fc00000, 0x3000001},
11791{0x3000000, 0x81398437, 0x7f984a37, 0x7fc00000, 0x3000001},
11792{0x3000000, 0x81398437, 0x7fbfffff, 0x7fc00000, 0x3000001},
11793{0x3000000, 0x81398437, 0x7fc00000, 0x7fc00000, 0x3000000},
11794{0x3000000, 0x81398437, 0x7fd9ba98, 0x7fc00000, 0x3000000},
11795{0x3000000, 0x81398437, 0x7fffffff, 0x7fc00000, 0x3000000},
11796{0x3000000, 0x81398437, 0x80000000, 0x81398437, 0x3000000},
11797{0x3000000, 0x81398437, 0x80000001, 0x81398437, 0x3000080},
11798{0x3000000, 0x81398437, 0x80000076, 0x81398437, 0x3000080},
11799{0x3000000, 0x81398437, 0x80002b94, 0x81398437, 0x3000080},
11800{0x3000000, 0x81398437, 0x80636d24, 0x81398437, 0x3000080},
11801{0x3000000, 0x81398437, 0x807fffff, 0x81398437, 0x3000080},
11802{0x3000000, 0x81398437, 0x80800000, 0x81798437, 0x3000000},
11803{0x3000000, 0x81398437, 0x80800002, 0x81798438, 0x3000000},
11804{0x3000000, 0x81398437, 0x81398437, 0x81b98437, 0x3000000},
11805{0x3000000, 0x81398437, 0x8ba98d27, 0x8ba98d2d, 0x3000010},
11806{0x3000000, 0x81398437, 0x8ba98d7a, 0x8ba98d80, 0x3000010},
11807{0x3000000, 0x81398437, 0xf51f853a, 0xf51f853a, 0x3000010},
11808{0x3000000, 0x81398437, 0xff7ffff0, 0xff7ffff0, 0x3000010},
11809{0x3000000, 0x81398437, 0xff7fffff, 0xff7fffff, 0x3000010},
11810{0x3000000, 0x81398437, 0xff800000, 0xff800000, 0x3000000},
11811{0x3000000, 0x81398437, 0xff800001, 0x7fc00000, 0x3000001},
11812{0x3000000, 0x81398437, 0xff984a37, 0x7fc00000, 0x3000001},
11813{0x3000000, 0x81398437, 0xffbfffff, 0x7fc00000, 0x3000001},
11814{0x3000000, 0x81398437, 0xffc00000, 0x7fc00000, 0x3000000},
11815{0x3000000, 0x81398437, 0xffd9ba98, 0x7fc00000, 0x3000000},
11816{0x3000000, 0x81398437, 0xffffffff, 0x7fc00000, 0x3000000},
11817{0x3000000, 0x81398437, 0x4f3495cb, 0x4f3495cb, 0x3000010},
11818{0x3000000, 0x81398437, 0xe73a5134, 0xe73a5134, 0x3000010},
11819{0x3000000, 0x81398437, 0x7c994e9e, 0x7c994e9e, 0x3000010},
11820{0x3000000, 0x81398437, 0x6164bd6c, 0x6164bd6c, 0x3000010},
11821{0x3000000, 0x81398437, 0x9503366, 0x95032ac, 0x3000010},
11822{0x3000000, 0x81398437, 0xbf5a97c9, 0xbf5a97c9, 0x3000010},
11823{0x3000000, 0x81398437, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
11824{0x3000000, 0x81398437, 0x77f31e2f, 0x77f31e2f, 0x3000010},
11825{0x3000000, 0x81398437, 0xaab4d7d8, 0xaab4d7d8, 0x3000010},
11826{0x3000000, 0x81398437, 0x966320b, 0x9663151, 0x3000010},
11827{0x3000000, 0x81398437, 0xb26bddee, 0xb26bddee, 0x3000010},
11828{0x3000000, 0x81398437, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000010},
11829{0x3000000, 0x81398437, 0x317285d3, 0x317285d3, 0x3000010},
11830{0x3000000, 0x81398437, 0x3c9623b1, 0x3c9623b1, 0x3000010},
11831{0x3000000, 0x81398437, 0x51fd2c7c, 0x51fd2c7c, 0x3000010},
11832{0x3000000, 0x81398437, 0x7b906a6c, 0x7b906a6c, 0x3000010},
11833{0x3000000, 0x8ba98d27, 0x0, 0x8ba98d27, 0x3000000},
11834{0x3000000, 0x8ba98d27, 0x1, 0x8ba98d27, 0x3000080},
11835{0x3000000, 0x8ba98d27, 0x76, 0x8ba98d27, 0x3000080},
11836{0x3000000, 0x8ba98d27, 0x2b94, 0x8ba98d27, 0x3000080},
11837{0x3000000, 0x8ba98d27, 0x636d24, 0x8ba98d27, 0x3000080},
11838{0x3000000, 0x8ba98d27, 0x7fffff, 0x8ba98d27, 0x3000080},
11839{0x3000000, 0x8ba98d27, 0x800000, 0x8ba98d25, 0x3000000},
11840{0x3000000, 0x8ba98d27, 0x800002, 0x8ba98d25, 0x3000010},
11841{0x3000000, 0x8ba98d27, 0x1398437, 0x8ba98d21, 0x3000010},
11842{0x3000000, 0x8ba98d27, 0xba98d27, 0x0, 0x3000000},
11843{0x3000000, 0x8ba98d27, 0xba98d7a, 0x3260000, 0x3000000},
11844{0x3000000, 0x8ba98d27, 0x751f853a, 0x751f853a, 0x3000010},
11845{0x3000000, 0x8ba98d27, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
11846{0x3000000, 0x8ba98d27, 0x7f7fffff, 0x7f7fffff, 0x3000010},
11847{0x3000000, 0x8ba98d27, 0x7f800000, 0x7f800000, 0x3000000},
11848{0x3000000, 0x8ba98d27, 0x7f800001, 0x7fc00000, 0x3000001},
11849{0x3000000, 0x8ba98d27, 0x7f984a37, 0x7fc00000, 0x3000001},
11850{0x3000000, 0x8ba98d27, 0x7fbfffff, 0x7fc00000, 0x3000001},
11851{0x3000000, 0x8ba98d27, 0x7fc00000, 0x7fc00000, 0x3000000},
11852{0x3000000, 0x8ba98d27, 0x7fd9ba98, 0x7fc00000, 0x3000000},
11853{0x3000000, 0x8ba98d27, 0x7fffffff, 0x7fc00000, 0x3000000},
11854{0x3000000, 0x8ba98d27, 0x80000000, 0x8ba98d27, 0x3000000},
11855{0x3000000, 0x8ba98d27, 0x80000001, 0x8ba98d27, 0x3000080},
11856{0x3000000, 0x8ba98d27, 0x80000076, 0x8ba98d27, 0x3000080},
11857{0x3000000, 0x8ba98d27, 0x80002b94, 0x8ba98d27, 0x3000080},
11858{0x3000000, 0x8ba98d27, 0x80636d24, 0x8ba98d27, 0x3000080},
11859{0x3000000, 0x8ba98d27, 0x807fffff, 0x8ba98d27, 0x3000080},
11860{0x3000000, 0x8ba98d27, 0x80800000, 0x8ba98d29, 0x3000000},
11861{0x3000000, 0x8ba98d27, 0x80800002, 0x8ba98d29, 0x3000010},
11862{0x3000000, 0x8ba98d27, 0x81398437, 0x8ba98d2d, 0x3000010},
11863{0x3000000, 0x8ba98d27, 0x8ba98d27, 0x8c298d27, 0x3000000},
11864{0x3000000, 0x8ba98d27, 0x8ba98d7a, 0x8c298d50, 0x3000010},
11865{0x3000000, 0x8ba98d27, 0xf51f853a, 0xf51f853a, 0x3000010},
11866{0x3000000, 0x8ba98d27, 0xff7ffff0, 0xff7ffff0, 0x3000010},
11867{0x3000000, 0x8ba98d27, 0xff7fffff, 0xff7fffff, 0x3000010},
11868{0x3000000, 0x8ba98d27, 0xff800000, 0xff800000, 0x3000000},
11869{0x3000000, 0x8ba98d27, 0xff800001, 0x7fc00000, 0x3000001},
11870{0x3000000, 0x8ba98d27, 0xff984a37, 0x7fc00000, 0x3000001},
11871{0x3000000, 0x8ba98d27, 0xffbfffff, 0x7fc00000, 0x3000001},
11872{0x3000000, 0x8ba98d27, 0xffc00000, 0x7fc00000, 0x3000000},
11873{0x3000000, 0x8ba98d27, 0xffd9ba98, 0x7fc00000, 0x3000000},
11874{0x3000000, 0x8ba98d27, 0xffffffff, 0x7fc00000, 0x3000000},
11875{0x3000000, 0x8ba98d27, 0x4f3495cb, 0x4f3495cb, 0x3000010},
11876{0x3000000, 0x8ba98d27, 0xe73a5134, 0xe73a5134, 0x3000010},
11877{0x3000000, 0x8ba98d27, 0x7c994e9e, 0x7c994e9e, 0x3000010},
11878{0x3000000, 0x8ba98d27, 0x6164bd6c, 0x6164bd6c, 0x3000010},
11879{0x3000000, 0x8ba98d27, 0x9503366, 0x8ba30b8c, 0x3000010},
11880{0x3000000, 0x8ba98d27, 0xbf5a97c9, 0xbf5a97c9, 0x3000010},
11881{0x3000000, 0x8ba98d27, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
11882{0x3000000, 0x8ba98d27, 0x77f31e2f, 0x77f31e2f, 0x3000010},
11883{0x3000000, 0x8ba98d27, 0xaab4d7d8, 0xaab4d7d8, 0x3000010},
11884{0x3000000, 0x8ba98d27, 0x966320b, 0x8ba25b97, 0x3000010},
11885{0x3000000, 0x8ba98d27, 0xb26bddee, 0xb26bddee, 0x3000010},
11886{0x3000000, 0x8ba98d27, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000010},
11887{0x3000000, 0x8ba98d27, 0x317285d3, 0x317285d3, 0x3000010},
11888{0x3000000, 0x8ba98d27, 0x3c9623b1, 0x3c9623b1, 0x3000010},
11889{0x3000000, 0x8ba98d27, 0x51fd2c7c, 0x51fd2c7c, 0x3000010},
11890{0x3000000, 0x8ba98d27, 0x7b906a6c, 0x7b906a6c, 0x3000010},
11891{0x3000000, 0x8ba98d7a, 0x0, 0x8ba98d7a, 0x3000000},
11892{0x3000000, 0x8ba98d7a, 0x1, 0x8ba98d7a, 0x3000080},
11893{0x3000000, 0x8ba98d7a, 0x76, 0x8ba98d7a, 0x3000080},
11894{0x3000000, 0x8ba98d7a, 0x2b94, 0x8ba98d7a, 0x3000080},
11895{0x3000000, 0x8ba98d7a, 0x636d24, 0x8ba98d7a, 0x3000080},
11896{0x3000000, 0x8ba98d7a, 0x7fffff, 0x8ba98d7a, 0x3000080},
11897{0x3000000, 0x8ba98d7a, 0x800000, 0x8ba98d78, 0x3000000},
11898{0x3000000, 0x8ba98d7a, 0x800002, 0x8ba98d78, 0x3000010},
11899{0x3000000, 0x8ba98d7a, 0x1398437, 0x8ba98d74, 0x3000010},
11900{0x3000000, 0x8ba98d7a, 0xba98d27, 0x83260000, 0x3000000},
11901{0x3000000, 0x8ba98d7a, 0xba98d7a, 0x0, 0x3000000},
11902{0x3000000, 0x8ba98d7a, 0x751f853a, 0x751f853a, 0x3000010},
11903{0x3000000, 0x8ba98d7a, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
11904{0x3000000, 0x8ba98d7a, 0x7f7fffff, 0x7f7fffff, 0x3000010},
11905{0x3000000, 0x8ba98d7a, 0x7f800000, 0x7f800000, 0x3000000},
11906{0x3000000, 0x8ba98d7a, 0x7f800001, 0x7fc00000, 0x3000001},
11907{0x3000000, 0x8ba98d7a, 0x7f984a37, 0x7fc00000, 0x3000001},
11908{0x3000000, 0x8ba98d7a, 0x7fbfffff, 0x7fc00000, 0x3000001},
11909{0x3000000, 0x8ba98d7a, 0x7fc00000, 0x7fc00000, 0x3000000},
11910{0x3000000, 0x8ba98d7a, 0x7fd9ba98, 0x7fc00000, 0x3000000},
11911{0x3000000, 0x8ba98d7a, 0x7fffffff, 0x7fc00000, 0x3000000},
11912{0x3000000, 0x8ba98d7a, 0x80000000, 0x8ba98d7a, 0x3000000},
11913{0x3000000, 0x8ba98d7a, 0x80000001, 0x8ba98d7a, 0x3000080},
11914{0x3000000, 0x8ba98d7a, 0x80000076, 0x8ba98d7a, 0x3000080},
11915{0x3000000, 0x8ba98d7a, 0x80002b94, 0x8ba98d7a, 0x3000080},
11916{0x3000000, 0x8ba98d7a, 0x80636d24, 0x8ba98d7a, 0x3000080},
11917{0x3000000, 0x8ba98d7a, 0x807fffff, 0x8ba98d7a, 0x3000080},
11918{0x3000000, 0x8ba98d7a, 0x80800000, 0x8ba98d7c, 0x3000000},
11919{0x3000000, 0x8ba98d7a, 0x80800002, 0x8ba98d7c, 0x3000010},
11920{0x3000000, 0x8ba98d7a, 0x81398437, 0x8ba98d80, 0x3000010},
11921{0x3000000, 0x8ba98d7a, 0x8ba98d27, 0x8c298d50, 0x3000010},
11922{0x3000000, 0x8ba98d7a, 0x8ba98d7a, 0x8c298d7a, 0x3000000},
11923{0x3000000, 0x8ba98d7a, 0xf51f853a, 0xf51f853a, 0x3000010},
11924{0x3000000, 0x8ba98d7a, 0xff7ffff0, 0xff7ffff0, 0x3000010},
11925{0x3000000, 0x8ba98d7a, 0xff7fffff, 0xff7fffff, 0x3000010},
11926{0x3000000, 0x8ba98d7a, 0xff800000, 0xff800000, 0x3000000},
11927{0x3000000, 0x8ba98d7a, 0xff800001, 0x7fc00000, 0x3000001},
11928{0x3000000, 0x8ba98d7a, 0xff984a37, 0x7fc00000, 0x3000001},
11929{0x3000000, 0x8ba98d7a, 0xffbfffff, 0x7fc00000, 0x3000001},
11930{0x3000000, 0x8ba98d7a, 0xffc00000, 0x7fc00000, 0x3000000},
11931{0x3000000, 0x8ba98d7a, 0xffd9ba98, 0x7fc00000, 0x3000000},
11932{0x3000000, 0x8ba98d7a, 0xffffffff, 0x7fc00000, 0x3000000},
11933{0x3000000, 0x8ba98d7a, 0x4f3495cb, 0x4f3495cb, 0x3000010},
11934{0x3000000, 0x8ba98d7a, 0xe73a5134, 0xe73a5134, 0x3000010},
11935{0x3000000, 0x8ba98d7a, 0x7c994e9e, 0x7c994e9e, 0x3000010},
11936{0x3000000, 0x8ba98d7a, 0x6164bd6c, 0x6164bd6c, 0x3000010},
11937{0x3000000, 0x8ba98d7a, 0x9503366, 0x8ba30bdf, 0x3000010},
11938{0x3000000, 0x8ba98d7a, 0xbf5a97c9, 0xbf5a97c9, 0x3000010},
11939{0x3000000, 0x8ba98d7a, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
11940{0x3000000, 0x8ba98d7a, 0x77f31e2f, 0x77f31e2f, 0x3000010},
11941{0x3000000, 0x8ba98d7a, 0xaab4d7d8, 0xaab4d7d8, 0x3000010},
11942{0x3000000, 0x8ba98d7a, 0x966320b, 0x8ba25bea, 0x3000010},
11943{0x3000000, 0x8ba98d7a, 0xb26bddee, 0xb26bddee, 0x3000010},
11944{0x3000000, 0x8ba98d7a, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000010},
11945{0x3000000, 0x8ba98d7a, 0x317285d3, 0x317285d3, 0x3000010},
11946{0x3000000, 0x8ba98d7a, 0x3c9623b1, 0x3c9623b1, 0x3000010},
11947{0x3000000, 0x8ba98d7a, 0x51fd2c7c, 0x51fd2c7c, 0x3000010},
11948{0x3000000, 0x8ba98d7a, 0x7b906a6c, 0x7b906a6c, 0x3000010},
11949{0x3000000, 0xf51f853a, 0x0, 0xf51f853a, 0x3000000},
11950{0x3000000, 0xf51f853a, 0x1, 0xf51f853a, 0x3000080},
11951{0x3000000, 0xf51f853a, 0x76, 0xf51f853a, 0x3000080},
11952{0x3000000, 0xf51f853a, 0x2b94, 0xf51f853a, 0x3000080},
11953{0x3000000, 0xf51f853a, 0x636d24, 0xf51f853a, 0x3000080},
11954{0x3000000, 0xf51f853a, 0x7fffff, 0xf51f853a, 0x3000080},
11955{0x3000000, 0xf51f853a, 0x800000, 0xf51f853a, 0x3000010},
11956{0x3000000, 0xf51f853a, 0x800002, 0xf51f853a, 0x3000010},
11957{0x3000000, 0xf51f853a, 0x1398437, 0xf51f853a, 0x3000010},
11958{0x3000000, 0xf51f853a, 0xba98d27, 0xf51f853a, 0x3000010},
11959{0x3000000, 0xf51f853a, 0xba98d7a, 0xf51f853a, 0x3000010},
11960{0x3000000, 0xf51f853a, 0x751f853a, 0x0, 0x3000000},
11961{0x3000000, 0xf51f853a, 0x7f7ffff0, 0x7f7fffe6, 0x3000010},
11962{0x3000000, 0xf51f853a, 0x7f7fffff, 0x7f7ffff5, 0x3000010},
11963{0x3000000, 0xf51f853a, 0x7f800000, 0x7f800000, 0x3000000},
11964{0x3000000, 0xf51f853a, 0x7f800001, 0x7fc00000, 0x3000001},
11965{0x3000000, 0xf51f853a, 0x7f984a37, 0x7fc00000, 0x3000001},
11966{0x3000000, 0xf51f853a, 0x7fbfffff, 0x7fc00000, 0x3000001},
11967{0x3000000, 0xf51f853a, 0x7fc00000, 0x7fc00000, 0x3000000},
11968{0x3000000, 0xf51f853a, 0x7fd9ba98, 0x7fc00000, 0x3000000},
11969{0x3000000, 0xf51f853a, 0x7fffffff, 0x7fc00000, 0x3000000},
11970{0x3000000, 0xf51f853a, 0x80000000, 0xf51f853a, 0x3000000},
11971{0x3000000, 0xf51f853a, 0x80000001, 0xf51f853a, 0x3000080},
11972{0x3000000, 0xf51f853a, 0x80000076, 0xf51f853a, 0x3000080},
11973{0x3000000, 0xf51f853a, 0x80002b94, 0xf51f853a, 0x3000080},
11974{0x3000000, 0xf51f853a, 0x80636d24, 0xf51f853a, 0x3000080},
11975{0x3000000, 0xf51f853a, 0x807fffff, 0xf51f853a, 0x3000080},
11976{0x3000000, 0xf51f853a, 0x80800000, 0xf51f853a, 0x3000010},
11977{0x3000000, 0xf51f853a, 0x80800002, 0xf51f853a, 0x3000010},
11978{0x3000000, 0xf51f853a, 0x81398437, 0xf51f853a, 0x3000010},
11979{0x3000000, 0xf51f853a, 0x8ba98d27, 0xf51f853a, 0x3000010},
11980{0x3000000, 0xf51f853a, 0x8ba98d7a, 0xf51f853a, 0x3000010},
11981{0x3000000, 0xf51f853a, 0xf51f853a, 0xf59f853a, 0x3000000},
11982{0x3000000, 0xf51f853a, 0xff7ffff0, 0xff7ffffa, 0x3000010},
11983{0x3000000, 0xf51f853a, 0xff7fffff, 0xff800000, 0x3000014},
11984{0x3000000, 0xf51f853a, 0xff800000, 0xff800000, 0x3000000},
11985{0x3000000, 0xf51f853a, 0xff800001, 0x7fc00000, 0x3000001},
11986{0x3000000, 0xf51f853a, 0xff984a37, 0x7fc00000, 0x3000001},
11987{0x3000000, 0xf51f853a, 0xffbfffff, 0x7fc00000, 0x3000001},
11988{0x3000000, 0xf51f853a, 0xffc00000, 0x7fc00000, 0x3000000},
11989{0x3000000, 0xf51f853a, 0xffd9ba98, 0x7fc00000, 0x3000000},
11990{0x3000000, 0xf51f853a, 0xffffffff, 0x7fc00000, 0x3000000},
11991{0x3000000, 0xf51f853a, 0x4f3495cb, 0xf51f853a, 0x3000010},
11992{0x3000000, 0xf51f853a, 0xe73a5134, 0xf51f853a, 0x3000010},
11993{0x3000000, 0xf51f853a, 0x7c994e9e, 0x7c994d5f, 0x3000010},
11994{0x3000000, 0xf51f853a, 0x6164bd6c, 0xf51f853a, 0x3000010},
11995{0x3000000, 0xf51f853a, 0x9503366, 0xf51f853a, 0x3000010},
11996{0x3000000, 0xf51f853a, 0xbf5a97c9, 0xf51f853a, 0x3000010},
11997{0x3000000, 0xf51f853a, 0xe6ff1a14, 0xf51f853a, 0x3000010},
11998{0x3000000, 0xf51f853a, 0x77f31e2f, 0x77ee2205, 0x3000010},
11999{0x3000000, 0xf51f853a, 0xaab4d7d8, 0xf51f853a, 0x3000010},
12000{0x3000000, 0xf51f853a, 0x966320b, 0xf51f853a, 0x3000010},
12001{0x3000000, 0xf51f853a, 0xb26bddee, 0xf51f853a, 0x3000010},
12002{0x3000000, 0xf51f853a, 0xb5c8e5d3, 0xf51f853a, 0x3000010},
12003{0x3000000, 0xf51f853a, 0x317285d3, 0xf51f853a, 0x3000010},
12004{0x3000000, 0xf51f853a, 0x3c9623b1, 0xf51f853a, 0x3000010},
12005{0x3000000, 0xf51f853a, 0x51fd2c7c, 0xf51f853a, 0x3000010},
12006{0x3000000, 0xf51f853a, 0x7b906a6c, 0x7b906570, 0x3000010},
12007{0x3000000, 0xff7ffff0, 0x0, 0xff7ffff0, 0x3000000},
12008{0x3000000, 0xff7ffff0, 0x1, 0xff7ffff0, 0x3000080},
12009{0x3000000, 0xff7ffff0, 0x76, 0xff7ffff0, 0x3000080},
12010{0x3000000, 0xff7ffff0, 0x2b94, 0xff7ffff0, 0x3000080},
12011{0x3000000, 0xff7ffff0, 0x636d24, 0xff7ffff0, 0x3000080},
12012{0x3000000, 0xff7ffff0, 0x7fffff, 0xff7ffff0, 0x3000080},
12013{0x3000000, 0xff7ffff0, 0x800000, 0xff7ffff0, 0x3000010},
12014{0x3000000, 0xff7ffff0, 0x800002, 0xff7ffff0, 0x3000010},
12015{0x3000000, 0xff7ffff0, 0x1398437, 0xff7ffff0, 0x3000010},
12016{0x3000000, 0xff7ffff0, 0xba98d27, 0xff7ffff0, 0x3000010},
12017{0x3000000, 0xff7ffff0, 0xba98d7a, 0xff7ffff0, 0x3000010},
12018{0x3000000, 0xff7ffff0, 0x751f853a, 0xff7fffe6, 0x3000010},
12019{0x3000000, 0xff7ffff0, 0x7f7ffff0, 0x0, 0x3000000},
12020{0x3000000, 0xff7ffff0, 0x7f7fffff, 0x75700000, 0x3000000},
12021{0x3000000, 0xff7ffff0, 0x7f800000, 0x7f800000, 0x3000000},
12022{0x3000000, 0xff7ffff0, 0x7f800001, 0x7fc00000, 0x3000001},
12023{0x3000000, 0xff7ffff0, 0x7f984a37, 0x7fc00000, 0x3000001},
12024{0x3000000, 0xff7ffff0, 0x7fbfffff, 0x7fc00000, 0x3000001},
12025{0x3000000, 0xff7ffff0, 0x7fc00000, 0x7fc00000, 0x3000000},
12026{0x3000000, 0xff7ffff0, 0x7fd9ba98, 0x7fc00000, 0x3000000},
12027{0x3000000, 0xff7ffff0, 0x7fffffff, 0x7fc00000, 0x3000000},
12028{0x3000000, 0xff7ffff0, 0x80000000, 0xff7ffff0, 0x3000000},
12029{0x3000000, 0xff7ffff0, 0x80000001, 0xff7ffff0, 0x3000080},
12030{0x3000000, 0xff7ffff0, 0x80000076, 0xff7ffff0, 0x3000080},
12031{0x3000000, 0xff7ffff0, 0x80002b94, 0xff7ffff0, 0x3000080},
12032{0x3000000, 0xff7ffff0, 0x80636d24, 0xff7ffff0, 0x3000080},
12033{0x3000000, 0xff7ffff0, 0x807fffff, 0xff7ffff0, 0x3000080},
12034{0x3000000, 0xff7ffff0, 0x80800000, 0xff7ffff0, 0x3000010},
12035{0x3000000, 0xff7ffff0, 0x80800002, 0xff7ffff0, 0x3000010},
12036{0x3000000, 0xff7ffff0, 0x81398437, 0xff7ffff0, 0x3000010},
12037{0x3000000, 0xff7ffff0, 0x8ba98d27, 0xff7ffff0, 0x3000010},
12038{0x3000000, 0xff7ffff0, 0x8ba98d7a, 0xff7ffff0, 0x3000010},
12039{0x3000000, 0xff7ffff0, 0xf51f853a, 0xff7ffffa, 0x3000010},
12040{0x3000000, 0xff7ffff0, 0xff7ffff0, 0xff800000, 0x3000014},
12041{0x3000000, 0xff7ffff0, 0xff7fffff, 0xff800000, 0x3000014},
12042{0x3000000, 0xff7ffff0, 0xff800000, 0xff800000, 0x3000000},
12043{0x3000000, 0xff7ffff0, 0xff800001, 0x7fc00000, 0x3000001},
12044{0x3000000, 0xff7ffff0, 0xff984a37, 0x7fc00000, 0x3000001},
12045{0x3000000, 0xff7ffff0, 0xffbfffff, 0x7fc00000, 0x3000001},
12046{0x3000000, 0xff7ffff0, 0xffc00000, 0x7fc00000, 0x3000000},
12047{0x3000000, 0xff7ffff0, 0xffd9ba98, 0x7fc00000, 0x3000000},
12048{0x3000000, 0xff7ffff0, 0xffffffff, 0x7fc00000, 0x3000000},
12049{0x3000000, 0xff7ffff0, 0x4f3495cb, 0xff7ffff0, 0x3000010},
12050{0x3000000, 0xff7ffff0, 0xe73a5134, 0xff7ffff0, 0x3000010},
12051{0x3000000, 0xff7ffff0, 0x7c994e9e, 0xff7b357b, 0x3000010},
12052{0x3000000, 0xff7ffff0, 0x6164bd6c, 0xff7ffff0, 0x3000010},
12053{0x3000000, 0xff7ffff0, 0x9503366, 0xff7ffff0, 0x3000010},
12054{0x3000000, 0xff7ffff0, 0xbf5a97c9, 0xff7ffff0, 0x3000010},
12055{0x3000000, 0xff7ffff0, 0xe6ff1a14, 0xff7ffff0, 0x3000010},
12056{0x3000000, 0xff7ffff0, 0x77f31e2f, 0xff7ffe0a, 0x3000010},
12057{0x3000000, 0xff7ffff0, 0xaab4d7d8, 0xff7ffff0, 0x3000010},
12058{0x3000000, 0xff7ffff0, 0x966320b, 0xff7ffff0, 0x3000010},
12059{0x3000000, 0xff7ffff0, 0xb26bddee, 0xff7ffff0, 0x3000010},
12060{0x3000000, 0xff7ffff0, 0xb5c8e5d3, 0xff7ffff0, 0x3000010},
12061{0x3000000, 0xff7ffff0, 0x317285d3, 0xff7ffff0, 0x3000010},
12062{0x3000000, 0xff7ffff0, 0x3c9623b1, 0xff7ffff0, 0x3000010},
12063{0x3000000, 0xff7ffff0, 0x51fd2c7c, 0xff7ffff0, 0x3000010},
12064{0x3000000, 0xff7ffff0, 0x7b906a6c, 0xff7edf1b, 0x3000010},
12065{0x3000000, 0xff7fffff, 0x0, 0xff7fffff, 0x3000000},
12066{0x3000000, 0xff7fffff, 0x1, 0xff7fffff, 0x3000080},
12067{0x3000000, 0xff7fffff, 0x76, 0xff7fffff, 0x3000080},
12068{0x3000000, 0xff7fffff, 0x2b94, 0xff7fffff, 0x3000080},
12069{0x3000000, 0xff7fffff, 0x636d24, 0xff7fffff, 0x3000080},
12070{0x3000000, 0xff7fffff, 0x7fffff, 0xff7fffff, 0x3000080},
12071{0x3000000, 0xff7fffff, 0x800000, 0xff7fffff, 0x3000010},
12072{0x3000000, 0xff7fffff, 0x800002, 0xff7fffff, 0x3000010},
12073{0x3000000, 0xff7fffff, 0x1398437, 0xff7fffff, 0x3000010},
12074{0x3000000, 0xff7fffff, 0xba98d27, 0xff7fffff, 0x3000010},
12075{0x3000000, 0xff7fffff, 0xba98d7a, 0xff7fffff, 0x3000010},
12076{0x3000000, 0xff7fffff, 0x751f853a, 0xff7ffff5, 0x3000010},
12077{0x3000000, 0xff7fffff, 0x7f7ffff0, 0xf5700000, 0x3000000},
12078{0x3000000, 0xff7fffff, 0x7f7fffff, 0x0, 0x3000000},
12079{0x3000000, 0xff7fffff, 0x7f800000, 0x7f800000, 0x3000000},
12080{0x3000000, 0xff7fffff, 0x7f800001, 0x7fc00000, 0x3000001},
12081{0x3000000, 0xff7fffff, 0x7f984a37, 0x7fc00000, 0x3000001},
12082{0x3000000, 0xff7fffff, 0x7fbfffff, 0x7fc00000, 0x3000001},
12083{0x3000000, 0xff7fffff, 0x7fc00000, 0x7fc00000, 0x3000000},
12084{0x3000000, 0xff7fffff, 0x7fd9ba98, 0x7fc00000, 0x3000000},
12085{0x3000000, 0xff7fffff, 0x7fffffff, 0x7fc00000, 0x3000000},
12086{0x3000000, 0xff7fffff, 0x80000000, 0xff7fffff, 0x3000000},
12087{0x3000000, 0xff7fffff, 0x80000001, 0xff7fffff, 0x3000080},
12088{0x3000000, 0xff7fffff, 0x80000076, 0xff7fffff, 0x3000080},
12089{0x3000000, 0xff7fffff, 0x80002b94, 0xff7fffff, 0x3000080},
12090{0x3000000, 0xff7fffff, 0x80636d24, 0xff7fffff, 0x3000080},
12091{0x3000000, 0xff7fffff, 0x807fffff, 0xff7fffff, 0x3000080},
12092{0x3000000, 0xff7fffff, 0x80800000, 0xff7fffff, 0x3000010},
12093{0x3000000, 0xff7fffff, 0x80800002, 0xff7fffff, 0x3000010},
12094{0x3000000, 0xff7fffff, 0x81398437, 0xff7fffff, 0x3000010},
12095{0x3000000, 0xff7fffff, 0x8ba98d27, 0xff7fffff, 0x3000010},
12096{0x3000000, 0xff7fffff, 0x8ba98d7a, 0xff7fffff, 0x3000010},
12097{0x3000000, 0xff7fffff, 0xf51f853a, 0xff800000, 0x3000014},
12098{0x3000000, 0xff7fffff, 0xff7ffff0, 0xff800000, 0x3000014},
12099{0x3000000, 0xff7fffff, 0xff7fffff, 0xff800000, 0x3000014},
12100{0x3000000, 0xff7fffff, 0xff800000, 0xff800000, 0x3000000},
12101{0x3000000, 0xff7fffff, 0xff800001, 0x7fc00000, 0x3000001},
12102{0x3000000, 0xff7fffff, 0xff984a37, 0x7fc00000, 0x3000001},
12103{0x3000000, 0xff7fffff, 0xffbfffff, 0x7fc00000, 0x3000001},
12104{0x3000000, 0xff7fffff, 0xffc00000, 0x7fc00000, 0x3000000},
12105{0x3000000, 0xff7fffff, 0xffd9ba98, 0x7fc00000, 0x3000000},
12106{0x3000000, 0xff7fffff, 0xffffffff, 0x7fc00000, 0x3000000},
12107{0x3000000, 0xff7fffff, 0x4f3495cb, 0xff7fffff, 0x3000010},
12108{0x3000000, 0xff7fffff, 0xe73a5134, 0xff7fffff, 0x3000010},
12109{0x3000000, 0xff7fffff, 0x7c994e9e, 0xff7b358a, 0x3000010},
12110{0x3000000, 0xff7fffff, 0x6164bd6c, 0xff7fffff, 0x3000010},
12111{0x3000000, 0xff7fffff, 0x9503366, 0xff7fffff, 0x3000010},
12112{0x3000000, 0xff7fffff, 0xbf5a97c9, 0xff7fffff, 0x3000010},
12113{0x3000000, 0xff7fffff, 0xe6ff1a14, 0xff7fffff, 0x3000010},
12114{0x3000000, 0xff7fffff, 0x77f31e2f, 0xff7ffe19, 0x3000010},
12115{0x3000000, 0xff7fffff, 0xaab4d7d8, 0xff7fffff, 0x3000010},
12116{0x3000000, 0xff7fffff, 0x966320b, 0xff7fffff, 0x3000010},
12117{0x3000000, 0xff7fffff, 0xb26bddee, 0xff7fffff, 0x3000010},
12118{0x3000000, 0xff7fffff, 0xb5c8e5d3, 0xff7fffff, 0x3000010},
12119{0x3000000, 0xff7fffff, 0x317285d3, 0xff7fffff, 0x3000010},
12120{0x3000000, 0xff7fffff, 0x3c9623b1, 0xff7fffff, 0x3000010},
12121{0x3000000, 0xff7fffff, 0x51fd2c7c, 0xff7fffff, 0x3000010},
12122{0x3000000, 0xff7fffff, 0x7b906a6c, 0xff7edf2a, 0x3000010},
12123{0x3000000, 0xff800000, 0x0, 0xff800000, 0x3000000},
12124{0x3000000, 0xff800000, 0x1, 0xff800000, 0x3000080},
12125{0x3000000, 0xff800000, 0x76, 0xff800000, 0x3000080},
12126{0x3000000, 0xff800000, 0x2b94, 0xff800000, 0x3000080},
12127{0x3000000, 0xff800000, 0x636d24, 0xff800000, 0x3000080},
12128{0x3000000, 0xff800000, 0x7fffff, 0xff800000, 0x3000080},
12129{0x3000000, 0xff800000, 0x800000, 0xff800000, 0x3000000},
12130{0x3000000, 0xff800000, 0x800002, 0xff800000, 0x3000000},
12131{0x3000000, 0xff800000, 0x1398437, 0xff800000, 0x3000000},
12132{0x3000000, 0xff800000, 0xba98d27, 0xff800000, 0x3000000},
12133{0x3000000, 0xff800000, 0xba98d7a, 0xff800000, 0x3000000},
12134{0x3000000, 0xff800000, 0x751f853a, 0xff800000, 0x3000000},
12135{0x3000000, 0xff800000, 0x7f7ffff0, 0xff800000, 0x3000000},
12136{0x3000000, 0xff800000, 0x7f7fffff, 0xff800000, 0x3000000},
12137{0x3000000, 0xff800000, 0x7f800000, 0x7fc00000, 0x3000001},
12138{0x3000000, 0xff800000, 0x7f800001, 0x7fc00000, 0x3000001},
12139{0x3000000, 0xff800000, 0x7f984a37, 0x7fc00000, 0x3000001},
12140{0x3000000, 0xff800000, 0x7fbfffff, 0x7fc00000, 0x3000001},
12141{0x3000000, 0xff800000, 0x7fc00000, 0x7fc00000, 0x3000000},
12142{0x3000000, 0xff800000, 0x7fd9ba98, 0x7fc00000, 0x3000000},
12143{0x3000000, 0xff800000, 0x7fffffff, 0x7fc00000, 0x3000000},
12144{0x3000000, 0xff800000, 0x80000000, 0xff800000, 0x3000000},
12145{0x3000000, 0xff800000, 0x80000001, 0xff800000, 0x3000080},
12146{0x3000000, 0xff800000, 0x80000076, 0xff800000, 0x3000080},
12147{0x3000000, 0xff800000, 0x80002b94, 0xff800000, 0x3000080},
12148{0x3000000, 0xff800000, 0x80636d24, 0xff800000, 0x3000080},
12149{0x3000000, 0xff800000, 0x807fffff, 0xff800000, 0x3000080},
12150{0x3000000, 0xff800000, 0x80800000, 0xff800000, 0x3000000},
12151{0x3000000, 0xff800000, 0x80800002, 0xff800000, 0x3000000},
12152{0x3000000, 0xff800000, 0x81398437, 0xff800000, 0x3000000},
12153{0x3000000, 0xff800000, 0x8ba98d27, 0xff800000, 0x3000000},
12154{0x3000000, 0xff800000, 0x8ba98d7a, 0xff800000, 0x3000000},
12155{0x3000000, 0xff800000, 0xf51f853a, 0xff800000, 0x3000000},
12156{0x3000000, 0xff800000, 0xff7ffff0, 0xff800000, 0x3000000},
12157{0x3000000, 0xff800000, 0xff7fffff, 0xff800000, 0x3000000},
12158{0x3000000, 0xff800000, 0xff800000, 0xff800000, 0x3000000},
12159{0x3000000, 0xff800000, 0xff800001, 0x7fc00000, 0x3000001},
12160{0x3000000, 0xff800000, 0xff984a37, 0x7fc00000, 0x3000001},
12161{0x3000000, 0xff800000, 0xffbfffff, 0x7fc00000, 0x3000001},
12162{0x3000000, 0xff800000, 0xffc00000, 0x7fc00000, 0x3000000},
12163{0x3000000, 0xff800000, 0xffd9ba98, 0x7fc00000, 0x3000000},
12164{0x3000000, 0xff800000, 0xffffffff, 0x7fc00000, 0x3000000},
12165{0x3000000, 0xff800000, 0x4f3495cb, 0xff800000, 0x3000000},
12166{0x3000000, 0xff800000, 0xe73a5134, 0xff800000, 0x3000000},
12167{0x3000000, 0xff800000, 0x7c994e9e, 0xff800000, 0x3000000},
12168{0x3000000, 0xff800000, 0x6164bd6c, 0xff800000, 0x3000000},
12169{0x3000000, 0xff800000, 0x9503366, 0xff800000, 0x3000000},
12170{0x3000000, 0xff800000, 0xbf5a97c9, 0xff800000, 0x3000000},
12171{0x3000000, 0xff800000, 0xe6ff1a14, 0xff800000, 0x3000000},
12172{0x3000000, 0xff800000, 0x77f31e2f, 0xff800000, 0x3000000},
12173{0x3000000, 0xff800000, 0xaab4d7d8, 0xff800000, 0x3000000},
12174{0x3000000, 0xff800000, 0x966320b, 0xff800000, 0x3000000},
12175{0x3000000, 0xff800000, 0xb26bddee, 0xff800000, 0x3000000},
12176{0x3000000, 0xff800000, 0xb5c8e5d3, 0xff800000, 0x3000000},
12177{0x3000000, 0xff800000, 0x317285d3, 0xff800000, 0x3000000},
12178{0x3000000, 0xff800000, 0x3c9623b1, 0xff800000, 0x3000000},
12179{0x3000000, 0xff800000, 0x51fd2c7c, 0xff800000, 0x3000000},
12180{0x3000000, 0xff800000, 0x7b906a6c, 0xff800000, 0x3000000},
12181{0x3000000, 0xff800001, 0x0, 0x7fc00000, 0x3000001},
12182{0x3000000, 0xff800001, 0x1, 0x7fc00000, 0x3000081},
12183{0x3000000, 0xff800001, 0x76, 0x7fc00000, 0x3000081},
12184{0x3000000, 0xff800001, 0x2b94, 0x7fc00000, 0x3000081},
12185{0x3000000, 0xff800001, 0x636d24, 0x7fc00000, 0x3000081},
12186{0x3000000, 0xff800001, 0x7fffff, 0x7fc00000, 0x3000081},
12187{0x3000000, 0xff800001, 0x800000, 0x7fc00000, 0x3000001},
12188{0x3000000, 0xff800001, 0x800002, 0x7fc00000, 0x3000001},
12189{0x3000000, 0xff800001, 0x1398437, 0x7fc00000, 0x3000001},
12190{0x3000000, 0xff800001, 0xba98d27, 0x7fc00000, 0x3000001},
12191{0x3000000, 0xff800001, 0xba98d7a, 0x7fc00000, 0x3000001},
12192{0x3000000, 0xff800001, 0x751f853a, 0x7fc00000, 0x3000001},
12193{0x3000000, 0xff800001, 0x7f7ffff0, 0x7fc00000, 0x3000001},
12194{0x3000000, 0xff800001, 0x7f7fffff, 0x7fc00000, 0x3000001},
12195{0x3000000, 0xff800001, 0x7f800000, 0x7fc00000, 0x3000001},
12196{0x3000000, 0xff800001, 0x7f800001, 0x7fc00000, 0x3000001},
12197{0x3000000, 0xff800001, 0x7f984a37, 0x7fc00000, 0x3000001},
12198{0x3000000, 0xff800001, 0x7fbfffff, 0x7fc00000, 0x3000001},
12199{0x3000000, 0xff800001, 0x7fc00000, 0x7fc00000, 0x3000001},
12200{0x3000000, 0xff800001, 0x7fd9ba98, 0x7fc00000, 0x3000001},
12201{0x3000000, 0xff800001, 0x7fffffff, 0x7fc00000, 0x3000001},
12202{0x3000000, 0xff800001, 0x80000000, 0x7fc00000, 0x3000001},
12203{0x3000000, 0xff800001, 0x80000001, 0x7fc00000, 0x3000081},
12204{0x3000000, 0xff800001, 0x80000076, 0x7fc00000, 0x3000081},
12205{0x3000000, 0xff800001, 0x80002b94, 0x7fc00000, 0x3000081},
12206{0x3000000, 0xff800001, 0x80636d24, 0x7fc00000, 0x3000081},
12207{0x3000000, 0xff800001, 0x807fffff, 0x7fc00000, 0x3000081},
12208{0x3000000, 0xff800001, 0x80800000, 0x7fc00000, 0x3000001},
12209{0x3000000, 0xff800001, 0x80800002, 0x7fc00000, 0x3000001},
12210{0x3000000, 0xff800001, 0x81398437, 0x7fc00000, 0x3000001},
12211{0x3000000, 0xff800001, 0x8ba98d27, 0x7fc00000, 0x3000001},
12212{0x3000000, 0xff800001, 0x8ba98d7a, 0x7fc00000, 0x3000001},
12213{0x3000000, 0xff800001, 0xf51f853a, 0x7fc00000, 0x3000001},
12214{0x3000000, 0xff800001, 0xff7ffff0, 0x7fc00000, 0x3000001},
12215{0x3000000, 0xff800001, 0xff7fffff, 0x7fc00000, 0x3000001},
12216{0x3000000, 0xff800001, 0xff800000, 0x7fc00000, 0x3000001},
12217{0x3000000, 0xff800001, 0xff800001, 0x7fc00000, 0x3000001},
12218{0x3000000, 0xff800001, 0xff984a37, 0x7fc00000, 0x3000001},
12219{0x3000000, 0xff800001, 0xffbfffff, 0x7fc00000, 0x3000001},
12220{0x3000000, 0xff800001, 0xffc00000, 0x7fc00000, 0x3000001},
12221{0x3000000, 0xff800001, 0xffd9ba98, 0x7fc00000, 0x3000001},
12222{0x3000000, 0xff800001, 0xffffffff, 0x7fc00000, 0x3000001},
12223{0x3000000, 0xff800001, 0x4f3495cb, 0x7fc00000, 0x3000001},
12224{0x3000000, 0xff800001, 0xe73a5134, 0x7fc00000, 0x3000001},
12225{0x3000000, 0xff800001, 0x7c994e9e, 0x7fc00000, 0x3000001},
12226{0x3000000, 0xff800001, 0x6164bd6c, 0x7fc00000, 0x3000001},
12227{0x3000000, 0xff800001, 0x9503366, 0x7fc00000, 0x3000001},
12228{0x3000000, 0xff800001, 0xbf5a97c9, 0x7fc00000, 0x3000001},
12229{0x3000000, 0xff800001, 0xe6ff1a14, 0x7fc00000, 0x3000001},
12230{0x3000000, 0xff800001, 0x77f31e2f, 0x7fc00000, 0x3000001},
12231{0x3000000, 0xff800001, 0xaab4d7d8, 0x7fc00000, 0x3000001},
12232{0x3000000, 0xff800001, 0x966320b, 0x7fc00000, 0x3000001},
12233{0x3000000, 0xff800001, 0xb26bddee, 0x7fc00000, 0x3000001},
12234{0x3000000, 0xff800001, 0xb5c8e5d3, 0x7fc00000, 0x3000001},
12235{0x3000000, 0xff800001, 0x317285d3, 0x7fc00000, 0x3000001},
12236{0x3000000, 0xff800001, 0x3c9623b1, 0x7fc00000, 0x3000001},
12237{0x3000000, 0xff800001, 0x51fd2c7c, 0x7fc00000, 0x3000001},
12238{0x3000000, 0xff800001, 0x7b906a6c, 0x7fc00000, 0x3000001},
12239{0x3000000, 0xff984a37, 0x0, 0x7fc00000, 0x3000001},
12240{0x3000000, 0xff984a37, 0x1, 0x7fc00000, 0x3000081},
12241{0x3000000, 0xff984a37, 0x76, 0x7fc00000, 0x3000081},
12242{0x3000000, 0xff984a37, 0x2b94, 0x7fc00000, 0x3000081},
12243{0x3000000, 0xff984a37, 0x636d24, 0x7fc00000, 0x3000081},
12244{0x3000000, 0xff984a37, 0x7fffff, 0x7fc00000, 0x3000081},
12245{0x3000000, 0xff984a37, 0x800000, 0x7fc00000, 0x3000001},
12246{0x3000000, 0xff984a37, 0x800002, 0x7fc00000, 0x3000001},
12247{0x3000000, 0xff984a37, 0x1398437, 0x7fc00000, 0x3000001},
12248{0x3000000, 0xff984a37, 0xba98d27, 0x7fc00000, 0x3000001},
12249{0x3000000, 0xff984a37, 0xba98d7a, 0x7fc00000, 0x3000001},
12250{0x3000000, 0xff984a37, 0x751f853a, 0x7fc00000, 0x3000001},
12251{0x3000000, 0xff984a37, 0x7f7ffff0, 0x7fc00000, 0x3000001},
12252{0x3000000, 0xff984a37, 0x7f7fffff, 0x7fc00000, 0x3000001},
12253{0x3000000, 0xff984a37, 0x7f800000, 0x7fc00000, 0x3000001},
12254{0x3000000, 0xff984a37, 0x7f800001, 0x7fc00000, 0x3000001},
12255{0x3000000, 0xff984a37, 0x7f984a37, 0x7fc00000, 0x3000001},
12256{0x3000000, 0xff984a37, 0x7fbfffff, 0x7fc00000, 0x3000001},
12257{0x3000000, 0xff984a37, 0x7fc00000, 0x7fc00000, 0x3000001},
12258{0x3000000, 0xff984a37, 0x7fd9ba98, 0x7fc00000, 0x3000001},
12259{0x3000000, 0xff984a37, 0x7fffffff, 0x7fc00000, 0x3000001},
12260{0x3000000, 0xff984a37, 0x80000000, 0x7fc00000, 0x3000001},
12261{0x3000000, 0xff984a37, 0x80000001, 0x7fc00000, 0x3000081},
12262{0x3000000, 0xff984a37, 0x80000076, 0x7fc00000, 0x3000081},
12263{0x3000000, 0xff984a37, 0x80002b94, 0x7fc00000, 0x3000081},
12264{0x3000000, 0xff984a37, 0x80636d24, 0x7fc00000, 0x3000081},
12265{0x3000000, 0xff984a37, 0x807fffff, 0x7fc00000, 0x3000081},
12266{0x3000000, 0xff984a37, 0x80800000, 0x7fc00000, 0x3000001},
12267{0x3000000, 0xff984a37, 0x80800002, 0x7fc00000, 0x3000001},
12268{0x3000000, 0xff984a37, 0x81398437, 0x7fc00000, 0x3000001},
12269{0x3000000, 0xff984a37, 0x8ba98d27, 0x7fc00000, 0x3000001},
12270{0x3000000, 0xff984a37, 0x8ba98d7a, 0x7fc00000, 0x3000001},
12271{0x3000000, 0xff984a37, 0xf51f853a, 0x7fc00000, 0x3000001},
12272{0x3000000, 0xff984a37, 0xff7ffff0, 0x7fc00000, 0x3000001},
12273{0x3000000, 0xff984a37, 0xff7fffff, 0x7fc00000, 0x3000001},
12274{0x3000000, 0xff984a37, 0xff800000, 0x7fc00000, 0x3000001},
12275{0x3000000, 0xff984a37, 0xff800001, 0x7fc00000, 0x3000001},
12276{0x3000000, 0xff984a37, 0xff984a37, 0x7fc00000, 0x3000001},
12277{0x3000000, 0xff984a37, 0xffbfffff, 0x7fc00000, 0x3000001},
12278{0x3000000, 0xff984a37, 0xffc00000, 0x7fc00000, 0x3000001},
12279{0x3000000, 0xff984a37, 0xffd9ba98, 0x7fc00000, 0x3000001},
12280{0x3000000, 0xff984a37, 0xffffffff, 0x7fc00000, 0x3000001},
12281{0x3000000, 0xff984a37, 0x4f3495cb, 0x7fc00000, 0x3000001},
12282{0x3000000, 0xff984a37, 0xe73a5134, 0x7fc00000, 0x3000001},
12283{0x3000000, 0xff984a37, 0x7c994e9e, 0x7fc00000, 0x3000001},
12284{0x3000000, 0xff984a37, 0x6164bd6c, 0x7fc00000, 0x3000001},
12285{0x3000000, 0xff984a37, 0x9503366, 0x7fc00000, 0x3000001},
12286{0x3000000, 0xff984a37, 0xbf5a97c9, 0x7fc00000, 0x3000001},
12287{0x3000000, 0xff984a37, 0xe6ff1a14, 0x7fc00000, 0x3000001},
12288{0x3000000, 0xff984a37, 0x77f31e2f, 0x7fc00000, 0x3000001},
12289{0x3000000, 0xff984a37, 0xaab4d7d8, 0x7fc00000, 0x3000001},
12290{0x3000000, 0xff984a37, 0x966320b, 0x7fc00000, 0x3000001},
12291{0x3000000, 0xff984a37, 0xb26bddee, 0x7fc00000, 0x3000001},
12292{0x3000000, 0xff984a37, 0xb5c8e5d3, 0x7fc00000, 0x3000001},
12293{0x3000000, 0xff984a37, 0x317285d3, 0x7fc00000, 0x3000001},
12294{0x3000000, 0xff984a37, 0x3c9623b1, 0x7fc00000, 0x3000001},
12295{0x3000000, 0xff984a37, 0x51fd2c7c, 0x7fc00000, 0x3000001},
12296{0x3000000, 0xff984a37, 0x7b906a6c, 0x7fc00000, 0x3000001},
12297{0x3000000, 0xffbfffff, 0x0, 0x7fc00000, 0x3000001},
12298{0x3000000, 0xffbfffff, 0x1, 0x7fc00000, 0x3000081},
12299{0x3000000, 0xffbfffff, 0x76, 0x7fc00000, 0x3000081},
12300{0x3000000, 0xffbfffff, 0x2b94, 0x7fc00000, 0x3000081},
12301{0x3000000, 0xffbfffff, 0x636d24, 0x7fc00000, 0x3000081},
12302{0x3000000, 0xffbfffff, 0x7fffff, 0x7fc00000, 0x3000081},
12303{0x3000000, 0xffbfffff, 0x800000, 0x7fc00000, 0x3000001},
12304{0x3000000, 0xffbfffff, 0x800002, 0x7fc00000, 0x3000001},
12305{0x3000000, 0xffbfffff, 0x1398437, 0x7fc00000, 0x3000001},
12306{0x3000000, 0xffbfffff, 0xba98d27, 0x7fc00000, 0x3000001},
12307{0x3000000, 0xffbfffff, 0xba98d7a, 0x7fc00000, 0x3000001},
12308{0x3000000, 0xffbfffff, 0x751f853a, 0x7fc00000, 0x3000001},
12309{0x3000000, 0xffbfffff, 0x7f7ffff0, 0x7fc00000, 0x3000001},
12310{0x3000000, 0xffbfffff, 0x7f7fffff, 0x7fc00000, 0x3000001},
12311{0x3000000, 0xffbfffff, 0x7f800000, 0x7fc00000, 0x3000001},
12312{0x3000000, 0xffbfffff, 0x7f800001, 0x7fc00000, 0x3000001},
12313{0x3000000, 0xffbfffff, 0x7f984a37, 0x7fc00000, 0x3000001},
12314{0x3000000, 0xffbfffff, 0x7fbfffff, 0x7fc00000, 0x3000001},
12315{0x3000000, 0xffbfffff, 0x7fc00000, 0x7fc00000, 0x3000001},
12316{0x3000000, 0xffbfffff, 0x7fd9ba98, 0x7fc00000, 0x3000001},
12317{0x3000000, 0xffbfffff, 0x7fffffff, 0x7fc00000, 0x3000001},
12318{0x3000000, 0xffbfffff, 0x80000000, 0x7fc00000, 0x3000001},
12319{0x3000000, 0xffbfffff, 0x80000001, 0x7fc00000, 0x3000081},
12320{0x3000000, 0xffbfffff, 0x80000076, 0x7fc00000, 0x3000081},
12321{0x3000000, 0xffbfffff, 0x80002b94, 0x7fc00000, 0x3000081},
12322{0x3000000, 0xffbfffff, 0x80636d24, 0x7fc00000, 0x3000081},
12323{0x3000000, 0xffbfffff, 0x807fffff, 0x7fc00000, 0x3000081},
12324{0x3000000, 0xffbfffff, 0x80800000, 0x7fc00000, 0x3000001},
12325{0x3000000, 0xffbfffff, 0x80800002, 0x7fc00000, 0x3000001},
12326{0x3000000, 0xffbfffff, 0x81398437, 0x7fc00000, 0x3000001},
12327{0x3000000, 0xffbfffff, 0x8ba98d27, 0x7fc00000, 0x3000001},
12328{0x3000000, 0xffbfffff, 0x8ba98d7a, 0x7fc00000, 0x3000001},
12329{0x3000000, 0xffbfffff, 0xf51f853a, 0x7fc00000, 0x3000001},
12330{0x3000000, 0xffbfffff, 0xff7ffff0, 0x7fc00000, 0x3000001},
12331{0x3000000, 0xffbfffff, 0xff7fffff, 0x7fc00000, 0x3000001},
12332{0x3000000, 0xffbfffff, 0xff800000, 0x7fc00000, 0x3000001},
12333{0x3000000, 0xffbfffff, 0xff800001, 0x7fc00000, 0x3000001},
12334{0x3000000, 0xffbfffff, 0xff984a37, 0x7fc00000, 0x3000001},
12335{0x3000000, 0xffbfffff, 0xffbfffff, 0x7fc00000, 0x3000001},
12336{0x3000000, 0xffbfffff, 0xffc00000, 0x7fc00000, 0x3000001},
12337{0x3000000, 0xffbfffff, 0xffd9ba98, 0x7fc00000, 0x3000001},
12338{0x3000000, 0xffbfffff, 0xffffffff, 0x7fc00000, 0x3000001},
12339{0x3000000, 0xffbfffff, 0x4f3495cb, 0x7fc00000, 0x3000001},
12340{0x3000000, 0xffbfffff, 0xe73a5134, 0x7fc00000, 0x3000001},
12341{0x3000000, 0xffbfffff, 0x7c994e9e, 0x7fc00000, 0x3000001},
12342{0x3000000, 0xffbfffff, 0x6164bd6c, 0x7fc00000, 0x3000001},
12343{0x3000000, 0xffbfffff, 0x9503366, 0x7fc00000, 0x3000001},
12344{0x3000000, 0xffbfffff, 0xbf5a97c9, 0x7fc00000, 0x3000001},
12345{0x3000000, 0xffbfffff, 0xe6ff1a14, 0x7fc00000, 0x3000001},
12346{0x3000000, 0xffbfffff, 0x77f31e2f, 0x7fc00000, 0x3000001},
12347{0x3000000, 0xffbfffff, 0xaab4d7d8, 0x7fc00000, 0x3000001},
12348{0x3000000, 0xffbfffff, 0x966320b, 0x7fc00000, 0x3000001},
12349{0x3000000, 0xffbfffff, 0xb26bddee, 0x7fc00000, 0x3000001},
12350{0x3000000, 0xffbfffff, 0xb5c8e5d3, 0x7fc00000, 0x3000001},
12351{0x3000000, 0xffbfffff, 0x317285d3, 0x7fc00000, 0x3000001},
12352{0x3000000, 0xffbfffff, 0x3c9623b1, 0x7fc00000, 0x3000001},
12353{0x3000000, 0xffbfffff, 0x51fd2c7c, 0x7fc00000, 0x3000001},
12354{0x3000000, 0xffbfffff, 0x7b906a6c, 0x7fc00000, 0x3000001},
12355{0x3000000, 0xffc00000, 0x0, 0x7fc00000, 0x3000000},
12356{0x3000000, 0xffc00000, 0x1, 0x7fc00000, 0x3000080},
12357{0x3000000, 0xffc00000, 0x76, 0x7fc00000, 0x3000080},
12358{0x3000000, 0xffc00000, 0x2b94, 0x7fc00000, 0x3000080},
12359{0x3000000, 0xffc00000, 0x636d24, 0x7fc00000, 0x3000080},
12360{0x3000000, 0xffc00000, 0x7fffff, 0x7fc00000, 0x3000080},
12361{0x3000000, 0xffc00000, 0x800000, 0x7fc00000, 0x3000000},
12362{0x3000000, 0xffc00000, 0x800002, 0x7fc00000, 0x3000000},
12363{0x3000000, 0xffc00000, 0x1398437, 0x7fc00000, 0x3000000},
12364{0x3000000, 0xffc00000, 0xba98d27, 0x7fc00000, 0x3000000},
12365{0x3000000, 0xffc00000, 0xba98d7a, 0x7fc00000, 0x3000000},
12366{0x3000000, 0xffc00000, 0x751f853a, 0x7fc00000, 0x3000000},
12367{0x3000000, 0xffc00000, 0x7f7ffff0, 0x7fc00000, 0x3000000},
12368{0x3000000, 0xffc00000, 0x7f7fffff, 0x7fc00000, 0x3000000},
12369{0x3000000, 0xffc00000, 0x7f800000, 0x7fc00000, 0x3000000},
12370{0x3000000, 0xffc00000, 0x7f800001, 0x7fc00000, 0x3000001},
12371{0x3000000, 0xffc00000, 0x7f984a37, 0x7fc00000, 0x3000001},
12372{0x3000000, 0xffc00000, 0x7fbfffff, 0x7fc00000, 0x3000001},
12373{0x3000000, 0xffc00000, 0x7fc00000, 0x7fc00000, 0x3000000},
12374{0x3000000, 0xffc00000, 0x7fd9ba98, 0x7fc00000, 0x3000000},
12375{0x3000000, 0xffc00000, 0x7fffffff, 0x7fc00000, 0x3000000},
12376{0x3000000, 0xffc00000, 0x80000000, 0x7fc00000, 0x3000000},
12377{0x3000000, 0xffc00000, 0x80000001, 0x7fc00000, 0x3000080},
12378{0x3000000, 0xffc00000, 0x80000076, 0x7fc00000, 0x3000080},
12379{0x3000000, 0xffc00000, 0x80002b94, 0x7fc00000, 0x3000080},
12380{0x3000000, 0xffc00000, 0x80636d24, 0x7fc00000, 0x3000080},
12381{0x3000000, 0xffc00000, 0x807fffff, 0x7fc00000, 0x3000080},
12382{0x3000000, 0xffc00000, 0x80800000, 0x7fc00000, 0x3000000},
12383{0x3000000, 0xffc00000, 0x80800002, 0x7fc00000, 0x3000000},
12384{0x3000000, 0xffc00000, 0x81398437, 0x7fc00000, 0x3000000},
12385{0x3000000, 0xffc00000, 0x8ba98d27, 0x7fc00000, 0x3000000},
12386{0x3000000, 0xffc00000, 0x8ba98d7a, 0x7fc00000, 0x3000000},
12387{0x3000000, 0xffc00000, 0xf51f853a, 0x7fc00000, 0x3000000},
12388{0x3000000, 0xffc00000, 0xff7ffff0, 0x7fc00000, 0x3000000},
12389{0x3000000, 0xffc00000, 0xff7fffff, 0x7fc00000, 0x3000000},
12390{0x3000000, 0xffc00000, 0xff800000, 0x7fc00000, 0x3000000},
12391{0x3000000, 0xffc00000, 0xff800001, 0x7fc00000, 0x3000001},
12392{0x3000000, 0xffc00000, 0xff984a37, 0x7fc00000, 0x3000001},
12393{0x3000000, 0xffc00000, 0xffbfffff, 0x7fc00000, 0x3000001},
12394{0x3000000, 0xffc00000, 0xffc00000, 0x7fc00000, 0x3000000},
12395{0x3000000, 0xffc00000, 0xffd9ba98, 0x7fc00000, 0x3000000},
12396{0x3000000, 0xffc00000, 0xffffffff, 0x7fc00000, 0x3000000},
12397{0x3000000, 0xffc00000, 0x4f3495cb, 0x7fc00000, 0x3000000},
12398{0x3000000, 0xffc00000, 0xe73a5134, 0x7fc00000, 0x3000000},
12399{0x3000000, 0xffc00000, 0x7c994e9e, 0x7fc00000, 0x3000000},
12400{0x3000000, 0xffc00000, 0x6164bd6c, 0x7fc00000, 0x3000000},
12401{0x3000000, 0xffc00000, 0x9503366, 0x7fc00000, 0x3000000},
12402{0x3000000, 0xffc00000, 0xbf5a97c9, 0x7fc00000, 0x3000000},
12403{0x3000000, 0xffc00000, 0xe6ff1a14, 0x7fc00000, 0x3000000},
12404{0x3000000, 0xffc00000, 0x77f31e2f, 0x7fc00000, 0x3000000},
12405{0x3000000, 0xffc00000, 0xaab4d7d8, 0x7fc00000, 0x3000000},
12406{0x3000000, 0xffc00000, 0x966320b, 0x7fc00000, 0x3000000},
12407{0x3000000, 0xffc00000, 0xb26bddee, 0x7fc00000, 0x3000000},
12408{0x3000000, 0xffc00000, 0xb5c8e5d3, 0x7fc00000, 0x3000000},
12409{0x3000000, 0xffc00000, 0x317285d3, 0x7fc00000, 0x3000000},
12410{0x3000000, 0xffc00000, 0x3c9623b1, 0x7fc00000, 0x3000000},
12411{0x3000000, 0xffc00000, 0x51fd2c7c, 0x7fc00000, 0x3000000},
12412{0x3000000, 0xffc00000, 0x7b906a6c, 0x7fc00000, 0x3000000},
12413{0x3000000, 0xffd9ba98, 0x0, 0x7fc00000, 0x3000000},
12414{0x3000000, 0xffd9ba98, 0x1, 0x7fc00000, 0x3000080},
12415{0x3000000, 0xffd9ba98, 0x76, 0x7fc00000, 0x3000080},
12416{0x3000000, 0xffd9ba98, 0x2b94, 0x7fc00000, 0x3000080},
12417{0x3000000, 0xffd9ba98, 0x636d24, 0x7fc00000, 0x3000080},
12418{0x3000000, 0xffd9ba98, 0x7fffff, 0x7fc00000, 0x3000080},
12419{0x3000000, 0xffd9ba98, 0x800000, 0x7fc00000, 0x3000000},
12420{0x3000000, 0xffd9ba98, 0x800002, 0x7fc00000, 0x3000000},
12421{0x3000000, 0xffd9ba98, 0x1398437, 0x7fc00000, 0x3000000},
12422{0x3000000, 0xffd9ba98, 0xba98d27, 0x7fc00000, 0x3000000},
12423{0x3000000, 0xffd9ba98, 0xba98d7a, 0x7fc00000, 0x3000000},
12424{0x3000000, 0xffd9ba98, 0x751f853a, 0x7fc00000, 0x3000000},
12425{0x3000000, 0xffd9ba98, 0x7f7ffff0, 0x7fc00000, 0x3000000},
12426{0x3000000, 0xffd9ba98, 0x7f7fffff, 0x7fc00000, 0x3000000},
12427{0x3000000, 0xffd9ba98, 0x7f800000, 0x7fc00000, 0x3000000},
12428{0x3000000, 0xffd9ba98, 0x7f800001, 0x7fc00000, 0x3000001},
12429{0x3000000, 0xffd9ba98, 0x7f984a37, 0x7fc00000, 0x3000001},
12430{0x3000000, 0xffd9ba98, 0x7fbfffff, 0x7fc00000, 0x3000001},
12431{0x3000000, 0xffd9ba98, 0x7fc00000, 0x7fc00000, 0x3000000},
12432{0x3000000, 0xffd9ba98, 0x7fd9ba98, 0x7fc00000, 0x3000000},
12433{0x3000000, 0xffd9ba98, 0x7fffffff, 0x7fc00000, 0x3000000},
12434{0x3000000, 0xffd9ba98, 0x80000000, 0x7fc00000, 0x3000000},
12435{0x3000000, 0xffd9ba98, 0x80000001, 0x7fc00000, 0x3000080},
12436{0x3000000, 0xffd9ba98, 0x80000076, 0x7fc00000, 0x3000080},
12437{0x3000000, 0xffd9ba98, 0x80002b94, 0x7fc00000, 0x3000080},
12438{0x3000000, 0xffd9ba98, 0x80636d24, 0x7fc00000, 0x3000080},
12439{0x3000000, 0xffd9ba98, 0x807fffff, 0x7fc00000, 0x3000080},
12440{0x3000000, 0xffd9ba98, 0x80800000, 0x7fc00000, 0x3000000},
12441{0x3000000, 0xffd9ba98, 0x80800002, 0x7fc00000, 0x3000000},
12442{0x3000000, 0xffd9ba98, 0x81398437, 0x7fc00000, 0x3000000},
12443{0x3000000, 0xffd9ba98, 0x8ba98d27, 0x7fc00000, 0x3000000},
12444{0x3000000, 0xffd9ba98, 0x8ba98d7a, 0x7fc00000, 0x3000000},
12445{0x3000000, 0xffd9ba98, 0xf51f853a, 0x7fc00000, 0x3000000},
12446{0x3000000, 0xffd9ba98, 0xff7ffff0, 0x7fc00000, 0x3000000},
12447{0x3000000, 0xffd9ba98, 0xff7fffff, 0x7fc00000, 0x3000000},
12448{0x3000000, 0xffd9ba98, 0xff800000, 0x7fc00000, 0x3000000},
12449{0x3000000, 0xffd9ba98, 0xff800001, 0x7fc00000, 0x3000001},
12450{0x3000000, 0xffd9ba98, 0xff984a37, 0x7fc00000, 0x3000001},
12451{0x3000000, 0xffd9ba98, 0xffbfffff, 0x7fc00000, 0x3000001},
12452{0x3000000, 0xffd9ba98, 0xffc00000, 0x7fc00000, 0x3000000},
12453{0x3000000, 0xffd9ba98, 0xffd9ba98, 0x7fc00000, 0x3000000},
12454{0x3000000, 0xffd9ba98, 0xffffffff, 0x7fc00000, 0x3000000},
12455{0x3000000, 0xffd9ba98, 0x4f3495cb, 0x7fc00000, 0x3000000},
12456{0x3000000, 0xffd9ba98, 0xe73a5134, 0x7fc00000, 0x3000000},
12457{0x3000000, 0xffd9ba98, 0x7c994e9e, 0x7fc00000, 0x3000000},
12458{0x3000000, 0xffd9ba98, 0x6164bd6c, 0x7fc00000, 0x3000000},
12459{0x3000000, 0xffd9ba98, 0x9503366, 0x7fc00000, 0x3000000},
12460{0x3000000, 0xffd9ba98, 0xbf5a97c9, 0x7fc00000, 0x3000000},
12461{0x3000000, 0xffd9ba98, 0xe6ff1a14, 0x7fc00000, 0x3000000},
12462{0x3000000, 0xffd9ba98, 0x77f31e2f, 0x7fc00000, 0x3000000},
12463{0x3000000, 0xffd9ba98, 0xaab4d7d8, 0x7fc00000, 0x3000000},
12464{0x3000000, 0xffd9ba98, 0x966320b, 0x7fc00000, 0x3000000},
12465{0x3000000, 0xffd9ba98, 0xb26bddee, 0x7fc00000, 0x3000000},
12466{0x3000000, 0xffd9ba98, 0xb5c8e5d3, 0x7fc00000, 0x3000000},
12467{0x3000000, 0xffd9ba98, 0x317285d3, 0x7fc00000, 0x3000000},
12468{0x3000000, 0xffd9ba98, 0x3c9623b1, 0x7fc00000, 0x3000000},
12469{0x3000000, 0xffd9ba98, 0x51fd2c7c, 0x7fc00000, 0x3000000},
12470{0x3000000, 0xffd9ba98, 0x7b906a6c, 0x7fc00000, 0x3000000},
12471{0x3000000, 0xffffffff, 0x0, 0x7fc00000, 0x3000000},
12472{0x3000000, 0xffffffff, 0x1, 0x7fc00000, 0x3000080},
12473{0x3000000, 0xffffffff, 0x76, 0x7fc00000, 0x3000080},
12474{0x3000000, 0xffffffff, 0x2b94, 0x7fc00000, 0x3000080},
12475{0x3000000, 0xffffffff, 0x636d24, 0x7fc00000, 0x3000080},
12476{0x3000000, 0xffffffff, 0x7fffff, 0x7fc00000, 0x3000080},
12477{0x3000000, 0xffffffff, 0x800000, 0x7fc00000, 0x3000000},
12478{0x3000000, 0xffffffff, 0x800002, 0x7fc00000, 0x3000000},
12479{0x3000000, 0xffffffff, 0x1398437, 0x7fc00000, 0x3000000},
12480{0x3000000, 0xffffffff, 0xba98d27, 0x7fc00000, 0x3000000},
12481{0x3000000, 0xffffffff, 0xba98d7a, 0x7fc00000, 0x3000000},
12482{0x3000000, 0xffffffff, 0x751f853a, 0x7fc00000, 0x3000000},
12483{0x3000000, 0xffffffff, 0x7f7ffff0, 0x7fc00000, 0x3000000},
12484{0x3000000, 0xffffffff, 0x7f7fffff, 0x7fc00000, 0x3000000},
12485{0x3000000, 0xffffffff, 0x7f800000, 0x7fc00000, 0x3000000},
12486{0x3000000, 0xffffffff, 0x7f800001, 0x7fc00000, 0x3000001},
12487{0x3000000, 0xffffffff, 0x7f984a37, 0x7fc00000, 0x3000001},
12488{0x3000000, 0xffffffff, 0x7fbfffff, 0x7fc00000, 0x3000001},
12489{0x3000000, 0xffffffff, 0x7fc00000, 0x7fc00000, 0x3000000},
12490{0x3000000, 0xffffffff, 0x7fd9ba98, 0x7fc00000, 0x3000000},
12491{0x3000000, 0xffffffff, 0x7fffffff, 0x7fc00000, 0x3000000},
12492{0x3000000, 0xffffffff, 0x80000000, 0x7fc00000, 0x3000000},
12493{0x3000000, 0xffffffff, 0x80000001, 0x7fc00000, 0x3000080},
12494{0x3000000, 0xffffffff, 0x80000076, 0x7fc00000, 0x3000080},
12495{0x3000000, 0xffffffff, 0x80002b94, 0x7fc00000, 0x3000080},
12496{0x3000000, 0xffffffff, 0x80636d24, 0x7fc00000, 0x3000080},
12497{0x3000000, 0xffffffff, 0x807fffff, 0x7fc00000, 0x3000080},
12498{0x3000000, 0xffffffff, 0x80800000, 0x7fc00000, 0x3000000},
12499{0x3000000, 0xffffffff, 0x80800002, 0x7fc00000, 0x3000000},
12500{0x3000000, 0xffffffff, 0x81398437, 0x7fc00000, 0x3000000},
12501{0x3000000, 0xffffffff, 0x8ba98d27, 0x7fc00000, 0x3000000},
12502{0x3000000, 0xffffffff, 0x8ba98d7a, 0x7fc00000, 0x3000000},
12503{0x3000000, 0xffffffff, 0xf51f853a, 0x7fc00000, 0x3000000},
12504{0x3000000, 0xffffffff, 0xff7ffff0, 0x7fc00000, 0x3000000},
12505{0x3000000, 0xffffffff, 0xff7fffff, 0x7fc00000, 0x3000000},
12506{0x3000000, 0xffffffff, 0xff800000, 0x7fc00000, 0x3000000},
12507{0x3000000, 0xffffffff, 0xff800001, 0x7fc00000, 0x3000001},
12508{0x3000000, 0xffffffff, 0xff984a37, 0x7fc00000, 0x3000001},
12509{0x3000000, 0xffffffff, 0xffbfffff, 0x7fc00000, 0x3000001},
12510{0x3000000, 0xffffffff, 0xffc00000, 0x7fc00000, 0x3000000},
12511{0x3000000, 0xffffffff, 0xffd9ba98, 0x7fc00000, 0x3000000},
12512{0x3000000, 0xffffffff, 0xffffffff, 0x7fc00000, 0x3000000},
12513{0x3000000, 0xffffffff, 0x4f3495cb, 0x7fc00000, 0x3000000},
12514{0x3000000, 0xffffffff, 0xe73a5134, 0x7fc00000, 0x3000000},
12515{0x3000000, 0xffffffff, 0x7c994e9e, 0x7fc00000, 0x3000000},
12516{0x3000000, 0xffffffff, 0x6164bd6c, 0x7fc00000, 0x3000000},
12517{0x3000000, 0xffffffff, 0x9503366, 0x7fc00000, 0x3000000},
12518{0x3000000, 0xffffffff, 0xbf5a97c9, 0x7fc00000, 0x3000000},
12519{0x3000000, 0xffffffff, 0xe6ff1a14, 0x7fc00000, 0x3000000},
12520{0x3000000, 0xffffffff, 0x77f31e2f, 0x7fc00000, 0x3000000},
12521{0x3000000, 0xffffffff, 0xaab4d7d8, 0x7fc00000, 0x3000000},
12522{0x3000000, 0xffffffff, 0x966320b, 0x7fc00000, 0x3000000},
12523{0x3000000, 0xffffffff, 0xb26bddee, 0x7fc00000, 0x3000000},
12524{0x3000000, 0xffffffff, 0xb5c8e5d3, 0x7fc00000, 0x3000000},
12525{0x3000000, 0xffffffff, 0x317285d3, 0x7fc00000, 0x3000000},
12526{0x3000000, 0xffffffff, 0x3c9623b1, 0x7fc00000, 0x3000000},
12527{0x3000000, 0xffffffff, 0x51fd2c7c, 0x7fc00000, 0x3000000},
12528{0x3000000, 0xffffffff, 0x7b906a6c, 0x7fc00000, 0x3000000},
12529{0x3000000, 0x4f3495cb, 0x0, 0x4f3495cb, 0x3000000},
12530{0x3000000, 0x4f3495cb, 0x1, 0x4f3495cb, 0x3000080},
12531{0x3000000, 0x4f3495cb, 0x76, 0x4f3495cb, 0x3000080},
12532{0x3000000, 0x4f3495cb, 0x2b94, 0x4f3495cb, 0x3000080},
12533{0x3000000, 0x4f3495cb, 0x636d24, 0x4f3495cb, 0x3000080},
12534{0x3000000, 0x4f3495cb, 0x7fffff, 0x4f3495cb, 0x3000080},
12535{0x3000000, 0x4f3495cb, 0x800000, 0x4f3495cb, 0x3000010},
12536{0x3000000, 0x4f3495cb, 0x800002, 0x4f3495cb, 0x3000010},
12537{0x3000000, 0x4f3495cb, 0x1398437, 0x4f3495cb, 0x3000010},
12538{0x3000000, 0x4f3495cb, 0xba98d27, 0x4f3495cb, 0x3000010},
12539{0x3000000, 0x4f3495cb, 0xba98d7a, 0x4f3495cb, 0x3000010},
12540{0x3000000, 0x4f3495cb, 0x751f853a, 0x751f853a, 0x3000010},
12541{0x3000000, 0x4f3495cb, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
12542{0x3000000, 0x4f3495cb, 0x7f7fffff, 0x7f7fffff, 0x3000010},
12543{0x3000000, 0x4f3495cb, 0x7f800000, 0x7f800000, 0x3000000},
12544{0x3000000, 0x4f3495cb, 0x7f800001, 0x7fc00000, 0x3000001},
12545{0x3000000, 0x4f3495cb, 0x7f984a37, 0x7fc00000, 0x3000001},
12546{0x3000000, 0x4f3495cb, 0x7fbfffff, 0x7fc00000, 0x3000001},
12547{0x3000000, 0x4f3495cb, 0x7fc00000, 0x7fc00000, 0x3000000},
12548{0x3000000, 0x4f3495cb, 0x7fd9ba98, 0x7fc00000, 0x3000000},
12549{0x3000000, 0x4f3495cb, 0x7fffffff, 0x7fc00000, 0x3000000},
12550{0x3000000, 0x4f3495cb, 0x80000000, 0x4f3495cb, 0x3000000},
12551{0x3000000, 0x4f3495cb, 0x80000001, 0x4f3495cb, 0x3000080},
12552{0x3000000, 0x4f3495cb, 0x80000076, 0x4f3495cb, 0x3000080},
12553{0x3000000, 0x4f3495cb, 0x80002b94, 0x4f3495cb, 0x3000080},
12554{0x3000000, 0x4f3495cb, 0x80636d24, 0x4f3495cb, 0x3000080},
12555{0x3000000, 0x4f3495cb, 0x807fffff, 0x4f3495cb, 0x3000080},
12556{0x3000000, 0x4f3495cb, 0x80800000, 0x4f3495cb, 0x3000010},
12557{0x3000000, 0x4f3495cb, 0x80800002, 0x4f3495cb, 0x3000010},
12558{0x3000000, 0x4f3495cb, 0x81398437, 0x4f3495cb, 0x3000010},
12559{0x3000000, 0x4f3495cb, 0x8ba98d27, 0x4f3495cb, 0x3000010},
12560{0x3000000, 0x4f3495cb, 0x8ba98d7a, 0x4f3495cb, 0x3000010},
12561{0x3000000, 0x4f3495cb, 0xf51f853a, 0xf51f853a, 0x3000010},
12562{0x3000000, 0x4f3495cb, 0xff7ffff0, 0xff7ffff0, 0x3000010},
12563{0x3000000, 0x4f3495cb, 0xff7fffff, 0xff7fffff, 0x3000010},
12564{0x3000000, 0x4f3495cb, 0xff800000, 0xff800000, 0x3000000},
12565{0x3000000, 0x4f3495cb, 0xff800001, 0x7fc00000, 0x3000001},
12566{0x3000000, 0x4f3495cb, 0xff984a37, 0x7fc00000, 0x3000001},
12567{0x3000000, 0x4f3495cb, 0xffbfffff, 0x7fc00000, 0x3000001},
12568{0x3000000, 0x4f3495cb, 0xffc00000, 0x7fc00000, 0x3000000},
12569{0x3000000, 0x4f3495cb, 0xffd9ba98, 0x7fc00000, 0x3000000},
12570{0x3000000, 0x4f3495cb, 0xffffffff, 0x7fc00000, 0x3000000},
12571{0x3000000, 0x4f3495cb, 0x4f3495cb, 0x4fb495cb, 0x3000000},
12572{0x3000000, 0x4f3495cb, 0xe73a5134, 0xe73a5134, 0x3000010},
12573{0x3000000, 0x4f3495cb, 0x7c994e9e, 0x7c994e9e, 0x3000010},
12574{0x3000000, 0x4f3495cb, 0x6164bd6c, 0x6164bd6c, 0x3000010},
12575{0x3000000, 0x4f3495cb, 0x9503366, 0x4f3495cb, 0x3000010},
12576{0x3000000, 0x4f3495cb, 0xbf5a97c9, 0x4f3495cb, 0x3000010},
12577{0x3000000, 0x4f3495cb, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
12578{0x3000000, 0x4f3495cb, 0x77f31e2f, 0x77f31e2f, 0x3000010},
12579{0x3000000, 0x4f3495cb, 0xaab4d7d8, 0x4f3495cb, 0x3000010},
12580{0x3000000, 0x4f3495cb, 0x966320b, 0x4f3495cb, 0x3000010},
12581{0x3000000, 0x4f3495cb, 0xb26bddee, 0x4f3495cb, 0x3000010},
12582{0x3000000, 0x4f3495cb, 0xb5c8e5d3, 0x4f3495cb, 0x3000010},
12583{0x3000000, 0x4f3495cb, 0x317285d3, 0x4f3495cb, 0x3000010},
12584{0x3000000, 0x4f3495cb, 0x3c9623b1, 0x4f3495cb, 0x3000010},
12585{0x3000000, 0x4f3495cb, 0x51fd2c7c, 0x52016895, 0x3000010},
12586{0x3000000, 0x4f3495cb, 0x7b906a6c, 0x7b906a6c, 0x3000010},
12587{0x3000000, 0xe73a5134, 0x0, 0xe73a5134, 0x3000000},
12588{0x3000000, 0xe73a5134, 0x1, 0xe73a5134, 0x3000080},
12589{0x3000000, 0xe73a5134, 0x76, 0xe73a5134, 0x3000080},
12590{0x3000000, 0xe73a5134, 0x2b94, 0xe73a5134, 0x3000080},
12591{0x3000000, 0xe73a5134, 0x636d24, 0xe73a5134, 0x3000080},
12592{0x3000000, 0xe73a5134, 0x7fffff, 0xe73a5134, 0x3000080},
12593{0x3000000, 0xe73a5134, 0x800000, 0xe73a5134, 0x3000010},
12594{0x3000000, 0xe73a5134, 0x800002, 0xe73a5134, 0x3000010},
12595{0x3000000, 0xe73a5134, 0x1398437, 0xe73a5134, 0x3000010},
12596{0x3000000, 0xe73a5134, 0xba98d27, 0xe73a5134, 0x3000010},
12597{0x3000000, 0xe73a5134, 0xba98d7a, 0xe73a5134, 0x3000010},
12598{0x3000000, 0xe73a5134, 0x751f853a, 0x751f853a, 0x3000010},
12599{0x3000000, 0xe73a5134, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
12600{0x3000000, 0xe73a5134, 0x7f7fffff, 0x7f7fffff, 0x3000010},
12601{0x3000000, 0xe73a5134, 0x7f800000, 0x7f800000, 0x3000000},
12602{0x3000000, 0xe73a5134, 0x7f800001, 0x7fc00000, 0x3000001},
12603{0x3000000, 0xe73a5134, 0x7f984a37, 0x7fc00000, 0x3000001},
12604{0x3000000, 0xe73a5134, 0x7fbfffff, 0x7fc00000, 0x3000001},
12605{0x3000000, 0xe73a5134, 0x7fc00000, 0x7fc00000, 0x3000000},
12606{0x3000000, 0xe73a5134, 0x7fd9ba98, 0x7fc00000, 0x3000000},
12607{0x3000000, 0xe73a5134, 0x7fffffff, 0x7fc00000, 0x3000000},
12608{0x3000000, 0xe73a5134, 0x80000000, 0xe73a5134, 0x3000000},
12609{0x3000000, 0xe73a5134, 0x80000001, 0xe73a5134, 0x3000080},
12610{0x3000000, 0xe73a5134, 0x80000076, 0xe73a5134, 0x3000080},
12611{0x3000000, 0xe73a5134, 0x80002b94, 0xe73a5134, 0x3000080},
12612{0x3000000, 0xe73a5134, 0x80636d24, 0xe73a5134, 0x3000080},
12613{0x3000000, 0xe73a5134, 0x807fffff, 0xe73a5134, 0x3000080},
12614{0x3000000, 0xe73a5134, 0x80800000, 0xe73a5134, 0x3000010},
12615{0x3000000, 0xe73a5134, 0x80800002, 0xe73a5134, 0x3000010},
12616{0x3000000, 0xe73a5134, 0x81398437, 0xe73a5134, 0x3000010},
12617{0x3000000, 0xe73a5134, 0x8ba98d27, 0xe73a5134, 0x3000010},
12618{0x3000000, 0xe73a5134, 0x8ba98d7a, 0xe73a5134, 0x3000010},
12619{0x3000000, 0xe73a5134, 0xf51f853a, 0xf51f853a, 0x3000010},
12620{0x3000000, 0xe73a5134, 0xff7ffff0, 0xff7ffff0, 0x3000010},
12621{0x3000000, 0xe73a5134, 0xff7fffff, 0xff7fffff, 0x3000010},
12622{0x3000000, 0xe73a5134, 0xff800000, 0xff800000, 0x3000000},
12623{0x3000000, 0xe73a5134, 0xff800001, 0x7fc00000, 0x3000001},
12624{0x3000000, 0xe73a5134, 0xff984a37, 0x7fc00000, 0x3000001},
12625{0x3000000, 0xe73a5134, 0xffbfffff, 0x7fc00000, 0x3000001},
12626{0x3000000, 0xe73a5134, 0xffc00000, 0x7fc00000, 0x3000000},
12627{0x3000000, 0xe73a5134, 0xffd9ba98, 0x7fc00000, 0x3000000},
12628{0x3000000, 0xe73a5134, 0xffffffff, 0x7fc00000, 0x3000000},
12629{0x3000000, 0xe73a5134, 0x4f3495cb, 0xe73a5134, 0x3000010},
12630{0x3000000, 0xe73a5134, 0xe73a5134, 0xe7ba5134, 0x3000000},
12631{0x3000000, 0xe73a5134, 0x7c994e9e, 0x7c994e9e, 0x3000010},
12632{0x3000000, 0xe73a5134, 0x6164bd6c, 0xe73a42e8, 0x3000010},
12633{0x3000000, 0xe73a5134, 0x9503366, 0xe73a5134, 0x3000010},
12634{0x3000000, 0xe73a5134, 0xbf5a97c9, 0xe73a5134, 0x3000010},
12635{0x3000000, 0xe73a5134, 0xe6ff1a14, 0xe79cef1f, 0x3000000},
12636{0x3000000, 0xe73a5134, 0x77f31e2f, 0x77f31e2f, 0x3000010},
12637{0x3000000, 0xe73a5134, 0xaab4d7d8, 0xe73a5134, 0x3000010},
12638{0x3000000, 0xe73a5134, 0x966320b, 0xe73a5134, 0x3000010},
12639{0x3000000, 0xe73a5134, 0xb26bddee, 0xe73a5134, 0x3000010},
12640{0x3000000, 0xe73a5134, 0xb5c8e5d3, 0xe73a5134, 0x3000010},
12641{0x3000000, 0xe73a5134, 0x317285d3, 0xe73a5134, 0x3000010},
12642{0x3000000, 0xe73a5134, 0x3c9623b1, 0xe73a5134, 0x3000010},
12643{0x3000000, 0xe73a5134, 0x51fd2c7c, 0xe73a5134, 0x3000010},
12644{0x3000000, 0xe73a5134, 0x7b906a6c, 0x7b906a6c, 0x3000010},
12645{0x3000000, 0x7c994e9e, 0x0, 0x7c994e9e, 0x3000000},
12646{0x3000000, 0x7c994e9e, 0x1, 0x7c994e9e, 0x3000080},
12647{0x3000000, 0x7c994e9e, 0x76, 0x7c994e9e, 0x3000080},
12648{0x3000000, 0x7c994e9e, 0x2b94, 0x7c994e9e, 0x3000080},
12649{0x3000000, 0x7c994e9e, 0x636d24, 0x7c994e9e, 0x3000080},
12650{0x3000000, 0x7c994e9e, 0x7fffff, 0x7c994e9e, 0x3000080},
12651{0x3000000, 0x7c994e9e, 0x800000, 0x7c994e9e, 0x3000010},
12652{0x3000000, 0x7c994e9e, 0x800002, 0x7c994e9e, 0x3000010},
12653{0x3000000, 0x7c994e9e, 0x1398437, 0x7c994e9e, 0x3000010},
12654{0x3000000, 0x7c994e9e, 0xba98d27, 0x7c994e9e, 0x3000010},
12655{0x3000000, 0x7c994e9e, 0xba98d7a, 0x7c994e9e, 0x3000010},
12656{0x3000000, 0x7c994e9e, 0x751f853a, 0x7c994fdd, 0x3000010},
12657{0x3000000, 0x7c994e9e, 0x7f7ffff0, 0x7f800000, 0x3000014},
12658{0x3000000, 0x7c994e9e, 0x7f7fffff, 0x7f800000, 0x3000014},
12659{0x3000000, 0x7c994e9e, 0x7f800000, 0x7f800000, 0x3000000},
12660{0x3000000, 0x7c994e9e, 0x7f800001, 0x7fc00000, 0x3000001},
12661{0x3000000, 0x7c994e9e, 0x7f984a37, 0x7fc00000, 0x3000001},
12662{0x3000000, 0x7c994e9e, 0x7fbfffff, 0x7fc00000, 0x3000001},
12663{0x3000000, 0x7c994e9e, 0x7fc00000, 0x7fc00000, 0x3000000},
12664{0x3000000, 0x7c994e9e, 0x7fd9ba98, 0x7fc00000, 0x3000000},
12665{0x3000000, 0x7c994e9e, 0x7fffffff, 0x7fc00000, 0x3000000},
12666{0x3000000, 0x7c994e9e, 0x80000000, 0x7c994e9e, 0x3000000},
12667{0x3000000, 0x7c994e9e, 0x80000001, 0x7c994e9e, 0x3000080},
12668{0x3000000, 0x7c994e9e, 0x80000076, 0x7c994e9e, 0x3000080},
12669{0x3000000, 0x7c994e9e, 0x80002b94, 0x7c994e9e, 0x3000080},
12670{0x3000000, 0x7c994e9e, 0x80636d24, 0x7c994e9e, 0x3000080},
12671{0x3000000, 0x7c994e9e, 0x807fffff, 0x7c994e9e, 0x3000080},
12672{0x3000000, 0x7c994e9e, 0x80800000, 0x7c994e9e, 0x3000010},
12673{0x3000000, 0x7c994e9e, 0x80800002, 0x7c994e9e, 0x3000010},
12674{0x3000000, 0x7c994e9e, 0x81398437, 0x7c994e9e, 0x3000010},
12675{0x3000000, 0x7c994e9e, 0x8ba98d27, 0x7c994e9e, 0x3000010},
12676{0x3000000, 0x7c994e9e, 0x8ba98d7a, 0x7c994e9e, 0x3000010},
12677{0x3000000, 0x7c994e9e, 0xf51f853a, 0x7c994d5f, 0x3000010},
12678{0x3000000, 0x7c994e9e, 0xff7ffff0, 0xff7b357b, 0x3000010},
12679{0x3000000, 0x7c994e9e, 0xff7fffff, 0xff7b358a, 0x3000010},
12680{0x3000000, 0x7c994e9e, 0xff800000, 0xff800000, 0x3000000},
12681{0x3000000, 0x7c994e9e, 0xff800001, 0x7fc00000, 0x3000001},
12682{0x3000000, 0x7c994e9e, 0xff984a37, 0x7fc00000, 0x3000001},
12683{0x3000000, 0x7c994e9e, 0xffbfffff, 0x7fc00000, 0x3000001},
12684{0x3000000, 0x7c994e9e, 0xffc00000, 0x7fc00000, 0x3000000},
12685{0x3000000, 0x7c994e9e, 0xffd9ba98, 0x7fc00000, 0x3000000},
12686{0x3000000, 0x7c994e9e, 0xffffffff, 0x7fc00000, 0x3000000},
12687{0x3000000, 0x7c994e9e, 0x4f3495cb, 0x7c994e9e, 0x3000010},
12688{0x3000000, 0x7c994e9e, 0xe73a5134, 0x7c994e9e, 0x3000010},
12689{0x3000000, 0x7c994e9e, 0x7c994e9e, 0x7d194e9e, 0x3000000},
12690{0x3000000, 0x7c994e9e, 0x6164bd6c, 0x7c994e9e, 0x3000010},
12691{0x3000000, 0x7c994e9e, 0x9503366, 0x7c994e9e, 0x3000010},
12692{0x3000000, 0x7c994e9e, 0xbf5a97c9, 0x7c994e9e, 0x3000010},
12693{0x3000000, 0x7c994e9e, 0xe6ff1a14, 0x7c994e9e, 0x3000010},
12694{0x3000000, 0x7c994e9e, 0x77f31e2f, 0x7c998b66, 0x3000010},
12695{0x3000000, 0x7c994e9e, 0xaab4d7d8, 0x7c994e9e, 0x3000010},
12696{0x3000000, 0x7c994e9e, 0x966320b, 0x7c994e9e, 0x3000010},
12697{0x3000000, 0x7c994e9e, 0xb26bddee, 0x7c994e9e, 0x3000010},
12698{0x3000000, 0x7c994e9e, 0xb5c8e5d3, 0x7c994e9e, 0x3000010},
12699{0x3000000, 0x7c994e9e, 0x317285d3, 0x7c994e9e, 0x3000010},
12700{0x3000000, 0x7c994e9e, 0x3c9623b1, 0x7c994e9e, 0x3000010},
12701{0x3000000, 0x7c994e9e, 0x51fd2c7c, 0x7c994e9e, 0x3000010},
12702{0x3000000, 0x7c994e9e, 0x7b906a6c, 0x7cbd6939, 0x3000000},
12703{0x3000000, 0x6164bd6c, 0x0, 0x6164bd6c, 0x3000000},
12704{0x3000000, 0x6164bd6c, 0x1, 0x6164bd6c, 0x3000080},
12705{0x3000000, 0x6164bd6c, 0x76, 0x6164bd6c, 0x3000080},
12706{0x3000000, 0x6164bd6c, 0x2b94, 0x6164bd6c, 0x3000080},
12707{0x3000000, 0x6164bd6c, 0x636d24, 0x6164bd6c, 0x3000080},
12708{0x3000000, 0x6164bd6c, 0x7fffff, 0x6164bd6c, 0x3000080},
12709{0x3000000, 0x6164bd6c, 0x800000, 0x6164bd6c, 0x3000010},
12710{0x3000000, 0x6164bd6c, 0x800002, 0x6164bd6c, 0x3000010},
12711{0x3000000, 0x6164bd6c, 0x1398437, 0x6164bd6c, 0x3000010},
12712{0x3000000, 0x6164bd6c, 0xba98d27, 0x6164bd6c, 0x3000010},
12713{0x3000000, 0x6164bd6c, 0xba98d7a, 0x6164bd6c, 0x3000010},
12714{0x3000000, 0x6164bd6c, 0x751f853a, 0x751f853a, 0x3000010},
12715{0x3000000, 0x6164bd6c, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
12716{0x3000000, 0x6164bd6c, 0x7f7fffff, 0x7f7fffff, 0x3000010},
12717{0x3000000, 0x6164bd6c, 0x7f800000, 0x7f800000, 0x3000000},
12718{0x3000000, 0x6164bd6c, 0x7f800001, 0x7fc00000, 0x3000001},
12719{0x3000000, 0x6164bd6c, 0x7f984a37, 0x7fc00000, 0x3000001},
12720{0x3000000, 0x6164bd6c, 0x7fbfffff, 0x7fc00000, 0x3000001},
12721{0x3000000, 0x6164bd6c, 0x7fc00000, 0x7fc00000, 0x3000000},
12722{0x3000000, 0x6164bd6c, 0x7fd9ba98, 0x7fc00000, 0x3000000},
12723{0x3000000, 0x6164bd6c, 0x7fffffff, 0x7fc00000, 0x3000000},
12724{0x3000000, 0x6164bd6c, 0x80000000, 0x6164bd6c, 0x3000000},
12725{0x3000000, 0x6164bd6c, 0x80000001, 0x6164bd6c, 0x3000080},
12726{0x3000000, 0x6164bd6c, 0x80000076, 0x6164bd6c, 0x3000080},
12727{0x3000000, 0x6164bd6c, 0x80002b94, 0x6164bd6c, 0x3000080},
12728{0x3000000, 0x6164bd6c, 0x80636d24, 0x6164bd6c, 0x3000080},
12729{0x3000000, 0x6164bd6c, 0x807fffff, 0x6164bd6c, 0x3000080},
12730{0x3000000, 0x6164bd6c, 0x80800000, 0x6164bd6c, 0x3000010},
12731{0x3000000, 0x6164bd6c, 0x80800002, 0x6164bd6c, 0x3000010},
12732{0x3000000, 0x6164bd6c, 0x81398437, 0x6164bd6c, 0x3000010},
12733{0x3000000, 0x6164bd6c, 0x8ba98d27, 0x6164bd6c, 0x3000010},
12734{0x3000000, 0x6164bd6c, 0x8ba98d7a, 0x6164bd6c, 0x3000010},
12735{0x3000000, 0x6164bd6c, 0xf51f853a, 0xf51f853a, 0x3000010},
12736{0x3000000, 0x6164bd6c, 0xff7ffff0, 0xff7ffff0, 0x3000010},
12737{0x3000000, 0x6164bd6c, 0xff7fffff, 0xff7fffff, 0x3000010},
12738{0x3000000, 0x6164bd6c, 0xff800000, 0xff800000, 0x3000000},
12739{0x3000000, 0x6164bd6c, 0xff800001, 0x7fc00000, 0x3000001},
12740{0x3000000, 0x6164bd6c, 0xff984a37, 0x7fc00000, 0x3000001},
12741{0x3000000, 0x6164bd6c, 0xffbfffff, 0x7fc00000, 0x3000001},
12742{0x3000000, 0x6164bd6c, 0xffc00000, 0x7fc00000, 0x3000000},
12743{0x3000000, 0x6164bd6c, 0xffd9ba98, 0x7fc00000, 0x3000000},
12744{0x3000000, 0x6164bd6c, 0xffffffff, 0x7fc00000, 0x3000000},
12745{0x3000000, 0x6164bd6c, 0x4f3495cb, 0x6164bd6c, 0x3000010},
12746{0x3000000, 0x6164bd6c, 0xe73a5134, 0xe73a42e8, 0x3000010},
12747{0x3000000, 0x6164bd6c, 0x7c994e9e, 0x7c994e9e, 0x3000010},
12748{0x3000000, 0x6164bd6c, 0x6164bd6c, 0x61e4bd6c, 0x3000000},
12749{0x3000000, 0x6164bd6c, 0x9503366, 0x6164bd6c, 0x3000010},
12750{0x3000000, 0x6164bd6c, 0xbf5a97c9, 0x6164bd6c, 0x3000010},
12751{0x3000000, 0x6164bd6c, 0xe6ff1a14, 0xe6fefd7c, 0x3000010},
12752{0x3000000, 0x6164bd6c, 0x77f31e2f, 0x77f31e2f, 0x3000010},
12753{0x3000000, 0x6164bd6c, 0xaab4d7d8, 0x6164bd6c, 0x3000010},
12754{0x3000000, 0x6164bd6c, 0x966320b, 0x6164bd6c, 0x3000010},
12755{0x3000000, 0x6164bd6c, 0xb26bddee, 0x6164bd6c, 0x3000010},
12756{0x3000000, 0x6164bd6c, 0xb5c8e5d3, 0x6164bd6c, 0x3000010},
12757{0x3000000, 0x6164bd6c, 0x317285d3, 0x6164bd6c, 0x3000010},
12758{0x3000000, 0x6164bd6c, 0x3c9623b1, 0x6164bd6c, 0x3000010},
12759{0x3000000, 0x6164bd6c, 0x51fd2c7c, 0x6164bd6c, 0x3000010},
12760{0x3000000, 0x6164bd6c, 0x7b906a6c, 0x7b906a6c, 0x3000010},
12761{0x3000000, 0x9503366, 0x0, 0x9503366, 0x3000000},
12762{0x3000000, 0x9503366, 0x1, 0x9503366, 0x3000080},
12763{0x3000000, 0x9503366, 0x76, 0x9503366, 0x3000080},
12764{0x3000000, 0x9503366, 0x2b94, 0x9503366, 0x3000080},
12765{0x3000000, 0x9503366, 0x636d24, 0x9503366, 0x3000080},
12766{0x3000000, 0x9503366, 0x7fffff, 0x9503366, 0x3000080},
12767{0x3000000, 0x9503366, 0x800000, 0x95033a6, 0x3000000},
12768{0x3000000, 0x9503366, 0x800002, 0x95033a6, 0x3000010},
12769{0x3000000, 0x9503366, 0x1398437, 0x9503420, 0x3000010},
12770{0x3000000, 0x9503366, 0xba98d27, 0xbb00ec2, 0x3000010},
12771{0x3000000, 0x9503366, 0xba98d7a, 0xbb00f15, 0x3000010},
12772{0x3000000, 0x9503366, 0x751f853a, 0x751f853a, 0x3000010},
12773{0x3000000, 0x9503366, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
12774{0x3000000, 0x9503366, 0x7f7fffff, 0x7f7fffff, 0x3000010},
12775{0x3000000, 0x9503366, 0x7f800000, 0x7f800000, 0x3000000},
12776{0x3000000, 0x9503366, 0x7f800001, 0x7fc00000, 0x3000001},
12777{0x3000000, 0x9503366, 0x7f984a37, 0x7fc00000, 0x3000001},
12778{0x3000000, 0x9503366, 0x7fbfffff, 0x7fc00000, 0x3000001},
12779{0x3000000, 0x9503366, 0x7fc00000, 0x7fc00000, 0x3000000},
12780{0x3000000, 0x9503366, 0x7fd9ba98, 0x7fc00000, 0x3000000},
12781{0x3000000, 0x9503366, 0x7fffffff, 0x7fc00000, 0x3000000},
12782{0x3000000, 0x9503366, 0x80000000, 0x9503366, 0x3000000},
12783{0x3000000, 0x9503366, 0x80000001, 0x9503366, 0x3000080},
12784{0x3000000, 0x9503366, 0x80000076, 0x9503366, 0x3000080},
12785{0x3000000, 0x9503366, 0x80002b94, 0x9503366, 0x3000080},
12786{0x3000000, 0x9503366, 0x80636d24, 0x9503366, 0x3000080},
12787{0x3000000, 0x9503366, 0x807fffff, 0x9503366, 0x3000080},
12788{0x3000000, 0x9503366, 0x80800000, 0x9503326, 0x3000000},
12789{0x3000000, 0x9503366, 0x80800002, 0x9503326, 0x3000010},
12790{0x3000000, 0x9503366, 0x81398437, 0x95032ac, 0x3000010},
12791{0x3000000, 0x9503366, 0x8ba98d27, 0x8ba30b8c, 0x3000010},
12792{0x3000000, 0x9503366, 0x8ba98d7a, 0x8ba30bdf, 0x3000010},
12793{0x3000000, 0x9503366, 0xf51f853a, 0xf51f853a, 0x3000010},
12794{0x3000000, 0x9503366, 0xff7ffff0, 0xff7ffff0, 0x3000010},
12795{0x3000000, 0x9503366, 0xff7fffff, 0xff7fffff, 0x3000010},
12796{0x3000000, 0x9503366, 0xff800000, 0xff800000, 0x3000000},
12797{0x3000000, 0x9503366, 0xff800001, 0x7fc00000, 0x3000001},
12798{0x3000000, 0x9503366, 0xff984a37, 0x7fc00000, 0x3000001},
12799{0x3000000, 0x9503366, 0xffbfffff, 0x7fc00000, 0x3000001},
12800{0x3000000, 0x9503366, 0xffc00000, 0x7fc00000, 0x3000000},
12801{0x3000000, 0x9503366, 0xffd9ba98, 0x7fc00000, 0x3000000},
12802{0x3000000, 0x9503366, 0xffffffff, 0x7fc00000, 0x3000000},
12803{0x3000000, 0x9503366, 0x4f3495cb, 0x4f3495cb, 0x3000010},
12804{0x3000000, 0x9503366, 0xe73a5134, 0xe73a5134, 0x3000010},
12805{0x3000000, 0x9503366, 0x7c994e9e, 0x7c994e9e, 0x3000010},
12806{0x3000000, 0x9503366, 0x6164bd6c, 0x6164bd6c, 0x3000010},
12807{0x3000000, 0x9503366, 0x9503366, 0x9d03366, 0x3000000},
12808{0x3000000, 0x9503366, 0xbf5a97c9, 0xbf5a97c9, 0x3000010},
12809{0x3000000, 0x9503366, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
12810{0x3000000, 0x9503366, 0x77f31e2f, 0x77f31e2f, 0x3000010},
12811{0x3000000, 0x9503366, 0xaab4d7d8, 0xaab4d7d8, 0x3000010},
12812{0x3000000, 0x9503366, 0x966320b, 0x9db32b8, 0x3000010},
12813{0x3000000, 0x9503366, 0xb26bddee, 0xb26bddee, 0x3000010},
12814{0x3000000, 0x9503366, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000010},
12815{0x3000000, 0x9503366, 0x317285d3, 0x317285d3, 0x3000010},
12816{0x3000000, 0x9503366, 0x3c9623b1, 0x3c9623b1, 0x3000010},
12817{0x3000000, 0x9503366, 0x51fd2c7c, 0x51fd2c7c, 0x3000010},
12818{0x3000000, 0x9503366, 0x7b906a6c, 0x7b906a6c, 0x3000010},
12819{0x3000000, 0xbf5a97c9, 0x0, 0xbf5a97c9, 0x3000000},
12820{0x3000000, 0xbf5a97c9, 0x1, 0xbf5a97c9, 0x3000080},
12821{0x3000000, 0xbf5a97c9, 0x76, 0xbf5a97c9, 0x3000080},
12822{0x3000000, 0xbf5a97c9, 0x2b94, 0xbf5a97c9, 0x3000080},
12823{0x3000000, 0xbf5a97c9, 0x636d24, 0xbf5a97c9, 0x3000080},
12824{0x3000000, 0xbf5a97c9, 0x7fffff, 0xbf5a97c9, 0x3000080},
12825{0x3000000, 0xbf5a97c9, 0x800000, 0xbf5a97c9, 0x3000010},
12826{0x3000000, 0xbf5a97c9, 0x800002, 0xbf5a97c9, 0x3000010},
12827{0x3000000, 0xbf5a97c9, 0x1398437, 0xbf5a97c9, 0x3000010},
12828{0x3000000, 0xbf5a97c9, 0xba98d27, 0xbf5a97c9, 0x3000010},
12829{0x3000000, 0xbf5a97c9, 0xba98d7a, 0xbf5a97c9, 0x3000010},
12830{0x3000000, 0xbf5a97c9, 0x751f853a, 0x751f853a, 0x3000010},
12831{0x3000000, 0xbf5a97c9, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
12832{0x3000000, 0xbf5a97c9, 0x7f7fffff, 0x7f7fffff, 0x3000010},
12833{0x3000000, 0xbf5a97c9, 0x7f800000, 0x7f800000, 0x3000000},
12834{0x3000000, 0xbf5a97c9, 0x7f800001, 0x7fc00000, 0x3000001},
12835{0x3000000, 0xbf5a97c9, 0x7f984a37, 0x7fc00000, 0x3000001},
12836{0x3000000, 0xbf5a97c9, 0x7fbfffff, 0x7fc00000, 0x3000001},
12837{0x3000000, 0xbf5a97c9, 0x7fc00000, 0x7fc00000, 0x3000000},
12838{0x3000000, 0xbf5a97c9, 0x7fd9ba98, 0x7fc00000, 0x3000000},
12839{0x3000000, 0xbf5a97c9, 0x7fffffff, 0x7fc00000, 0x3000000},
12840{0x3000000, 0xbf5a97c9, 0x80000000, 0xbf5a97c9, 0x3000000},
12841{0x3000000, 0xbf5a97c9, 0x80000001, 0xbf5a97c9, 0x3000080},
12842{0x3000000, 0xbf5a97c9, 0x80000076, 0xbf5a97c9, 0x3000080},
12843{0x3000000, 0xbf5a97c9, 0x80002b94, 0xbf5a97c9, 0x3000080},
12844{0x3000000, 0xbf5a97c9, 0x80636d24, 0xbf5a97c9, 0x3000080},
12845{0x3000000, 0xbf5a97c9, 0x807fffff, 0xbf5a97c9, 0x3000080},
12846{0x3000000, 0xbf5a97c9, 0x80800000, 0xbf5a97c9, 0x3000010},
12847{0x3000000, 0xbf5a97c9, 0x80800002, 0xbf5a97c9, 0x3000010},
12848{0x3000000, 0xbf5a97c9, 0x81398437, 0xbf5a97c9, 0x3000010},
12849{0x3000000, 0xbf5a97c9, 0x8ba98d27, 0xbf5a97c9, 0x3000010},
12850{0x3000000, 0xbf5a97c9, 0x8ba98d7a, 0xbf5a97c9, 0x3000010},
12851{0x3000000, 0xbf5a97c9, 0xf51f853a, 0xf51f853a, 0x3000010},
12852{0x3000000, 0xbf5a97c9, 0xff7ffff0, 0xff7ffff0, 0x3000010},
12853{0x3000000, 0xbf5a97c9, 0xff7fffff, 0xff7fffff, 0x3000010},
12854{0x3000000, 0xbf5a97c9, 0xff800000, 0xff800000, 0x3000000},
12855{0x3000000, 0xbf5a97c9, 0xff800001, 0x7fc00000, 0x3000001},
12856{0x3000000, 0xbf5a97c9, 0xff984a37, 0x7fc00000, 0x3000001},
12857{0x3000000, 0xbf5a97c9, 0xffbfffff, 0x7fc00000, 0x3000001},
12858{0x3000000, 0xbf5a97c9, 0xffc00000, 0x7fc00000, 0x3000000},
12859{0x3000000, 0xbf5a97c9, 0xffd9ba98, 0x7fc00000, 0x3000000},
12860{0x3000000, 0xbf5a97c9, 0xffffffff, 0x7fc00000, 0x3000000},
12861{0x3000000, 0xbf5a97c9, 0x4f3495cb, 0x4f3495cb, 0x3000010},
12862{0x3000000, 0xbf5a97c9, 0xe73a5134, 0xe73a5134, 0x3000010},
12863{0x3000000, 0xbf5a97c9, 0x7c994e9e, 0x7c994e9e, 0x3000010},
12864{0x3000000, 0xbf5a97c9, 0x6164bd6c, 0x6164bd6c, 0x3000010},
12865{0x3000000, 0xbf5a97c9, 0x9503366, 0xbf5a97c9, 0x3000010},
12866{0x3000000, 0xbf5a97c9, 0xbf5a97c9, 0xbfda97c9, 0x3000000},
12867{0x3000000, 0xbf5a97c9, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
12868{0x3000000, 0xbf5a97c9, 0x77f31e2f, 0x77f31e2f, 0x3000010},
12869{0x3000000, 0xbf5a97c9, 0xaab4d7d8, 0xbf5a97c9, 0x3000010},
12870{0x3000000, 0xbf5a97c9, 0x966320b, 0xbf5a97c9, 0x3000010},
12871{0x3000000, 0xbf5a97c9, 0xb26bddee, 0xbf5a97c9, 0x3000010},
12872{0x3000000, 0xbf5a97c9, 0xb5c8e5d3, 0xbf5a97e2, 0x3000010},
12873{0x3000000, 0xbf5a97c9, 0x317285d3, 0xbf5a97c9, 0x3000010},
12874{0x3000000, 0xbf5a97c9, 0x3c9623b1, 0xbf55e6ab, 0x3000010},
12875{0x3000000, 0xbf5a97c9, 0x51fd2c7c, 0x51fd2c7c, 0x3000010},
12876{0x3000000, 0xbf5a97c9, 0x7b906a6c, 0x7b906a6c, 0x3000010},
12877{0x3000000, 0xe6ff1a14, 0x0, 0xe6ff1a14, 0x3000000},
12878{0x3000000, 0xe6ff1a14, 0x1, 0xe6ff1a14, 0x3000080},
12879{0x3000000, 0xe6ff1a14, 0x76, 0xe6ff1a14, 0x3000080},
12880{0x3000000, 0xe6ff1a14, 0x2b94, 0xe6ff1a14, 0x3000080},
12881{0x3000000, 0xe6ff1a14, 0x636d24, 0xe6ff1a14, 0x3000080},
12882{0x3000000, 0xe6ff1a14, 0x7fffff, 0xe6ff1a14, 0x3000080},
12883{0x3000000, 0xe6ff1a14, 0x800000, 0xe6ff1a14, 0x3000010},
12884{0x3000000, 0xe6ff1a14, 0x800002, 0xe6ff1a14, 0x3000010},
12885{0x3000000, 0xe6ff1a14, 0x1398437, 0xe6ff1a14, 0x3000010},
12886{0x3000000, 0xe6ff1a14, 0xba98d27, 0xe6ff1a14, 0x3000010},
12887{0x3000000, 0xe6ff1a14, 0xba98d7a, 0xe6ff1a14, 0x3000010},
12888{0x3000000, 0xe6ff1a14, 0x751f853a, 0x751f853a, 0x3000010},
12889{0x3000000, 0xe6ff1a14, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
12890{0x3000000, 0xe6ff1a14, 0x7f7fffff, 0x7f7fffff, 0x3000010},
12891{0x3000000, 0xe6ff1a14, 0x7f800000, 0x7f800000, 0x3000000},
12892{0x3000000, 0xe6ff1a14, 0x7f800001, 0x7fc00000, 0x3000001},
12893{0x3000000, 0xe6ff1a14, 0x7f984a37, 0x7fc00000, 0x3000001},
12894{0x3000000, 0xe6ff1a14, 0x7fbfffff, 0x7fc00000, 0x3000001},
12895{0x3000000, 0xe6ff1a14, 0x7fc00000, 0x7fc00000, 0x3000000},
12896{0x3000000, 0xe6ff1a14, 0x7fd9ba98, 0x7fc00000, 0x3000000},
12897{0x3000000, 0xe6ff1a14, 0x7fffffff, 0x7fc00000, 0x3000000},
12898{0x3000000, 0xe6ff1a14, 0x80000000, 0xe6ff1a14, 0x3000000},
12899{0x3000000, 0xe6ff1a14, 0x80000001, 0xe6ff1a14, 0x3000080},
12900{0x3000000, 0xe6ff1a14, 0x80000076, 0xe6ff1a14, 0x3000080},
12901{0x3000000, 0xe6ff1a14, 0x80002b94, 0xe6ff1a14, 0x3000080},
12902{0x3000000, 0xe6ff1a14, 0x80636d24, 0xe6ff1a14, 0x3000080},
12903{0x3000000, 0xe6ff1a14, 0x807fffff, 0xe6ff1a14, 0x3000080},
12904{0x3000000, 0xe6ff1a14, 0x80800000, 0xe6ff1a14, 0x3000010},
12905{0x3000000, 0xe6ff1a14, 0x80800002, 0xe6ff1a14, 0x3000010},
12906{0x3000000, 0xe6ff1a14, 0x81398437, 0xe6ff1a14, 0x3000010},
12907{0x3000000, 0xe6ff1a14, 0x8ba98d27, 0xe6ff1a14, 0x3000010},
12908{0x3000000, 0xe6ff1a14, 0x8ba98d7a, 0xe6ff1a14, 0x3000010},
12909{0x3000000, 0xe6ff1a14, 0xf51f853a, 0xf51f853a, 0x3000010},
12910{0x3000000, 0xe6ff1a14, 0xff7ffff0, 0xff7ffff0, 0x3000010},
12911{0x3000000, 0xe6ff1a14, 0xff7fffff, 0xff7fffff, 0x3000010},
12912{0x3000000, 0xe6ff1a14, 0xff800000, 0xff800000, 0x3000000},
12913{0x3000000, 0xe6ff1a14, 0xff800001, 0x7fc00000, 0x3000001},
12914{0x3000000, 0xe6ff1a14, 0xff984a37, 0x7fc00000, 0x3000001},
12915{0x3000000, 0xe6ff1a14, 0xffbfffff, 0x7fc00000, 0x3000001},
12916{0x3000000, 0xe6ff1a14, 0xffc00000, 0x7fc00000, 0x3000000},
12917{0x3000000, 0xe6ff1a14, 0xffd9ba98, 0x7fc00000, 0x3000000},
12918{0x3000000, 0xe6ff1a14, 0xffffffff, 0x7fc00000, 0x3000000},
12919{0x3000000, 0xe6ff1a14, 0x4f3495cb, 0xe6ff1a14, 0x3000010},
12920{0x3000000, 0xe6ff1a14, 0xe73a5134, 0xe79cef1f, 0x3000000},
12921{0x3000000, 0xe6ff1a14, 0x7c994e9e, 0x7c994e9e, 0x3000010},
12922{0x3000000, 0xe6ff1a14, 0x6164bd6c, 0xe6fefd7c, 0x3000010},
12923{0x3000000, 0xe6ff1a14, 0x9503366, 0xe6ff1a14, 0x3000010},
12924{0x3000000, 0xe6ff1a14, 0xbf5a97c9, 0xe6ff1a14, 0x3000010},
12925{0x3000000, 0xe6ff1a14, 0xe6ff1a14, 0xe77f1a14, 0x3000000},
12926{0x3000000, 0xe6ff1a14, 0x77f31e2f, 0x77f31e2f, 0x3000010},
12927{0x3000000, 0xe6ff1a14, 0xaab4d7d8, 0xe6ff1a14, 0x3000010},
12928{0x3000000, 0xe6ff1a14, 0x966320b, 0xe6ff1a14, 0x3000010},
12929{0x3000000, 0xe6ff1a14, 0xb26bddee, 0xe6ff1a14, 0x3000010},
12930{0x3000000, 0xe6ff1a14, 0xb5c8e5d3, 0xe6ff1a14, 0x3000010},
12931{0x3000000, 0xe6ff1a14, 0x317285d3, 0xe6ff1a14, 0x3000010},
12932{0x3000000, 0xe6ff1a14, 0x3c9623b1, 0xe6ff1a14, 0x3000010},
12933{0x3000000, 0xe6ff1a14, 0x51fd2c7c, 0xe6ff1a14, 0x3000010},
12934{0x3000000, 0xe6ff1a14, 0x7b906a6c, 0x7b906a6c, 0x3000010},
12935{0x3000000, 0x77f31e2f, 0x0, 0x77f31e2f, 0x3000000},
12936{0x3000000, 0x77f31e2f, 0x1, 0x77f31e2f, 0x3000080},
12937{0x3000000, 0x77f31e2f, 0x76, 0x77f31e2f, 0x3000080},
12938{0x3000000, 0x77f31e2f, 0x2b94, 0x77f31e2f, 0x3000080},
12939{0x3000000, 0x77f31e2f, 0x636d24, 0x77f31e2f, 0x3000080},
12940{0x3000000, 0x77f31e2f, 0x7fffff, 0x77f31e2f, 0x3000080},
12941{0x3000000, 0x77f31e2f, 0x800000, 0x77f31e2f, 0x3000010},
12942{0x3000000, 0x77f31e2f, 0x800002, 0x77f31e2f, 0x3000010},
12943{0x3000000, 0x77f31e2f, 0x1398437, 0x77f31e2f, 0x3000010},
12944{0x3000000, 0x77f31e2f, 0xba98d27, 0x77f31e2f, 0x3000010},
12945{0x3000000, 0x77f31e2f, 0xba98d7a, 0x77f31e2f, 0x3000010},
12946{0x3000000, 0x77f31e2f, 0x751f853a, 0x77f81a59, 0x3000010},
12947{0x3000000, 0x77f31e2f, 0x7f7ffff0, 0x7f800000, 0x3000014},
12948{0x3000000, 0x77f31e2f, 0x7f7fffff, 0x7f800000, 0x3000014},
12949{0x3000000, 0x77f31e2f, 0x7f800000, 0x7f800000, 0x3000000},
12950{0x3000000, 0x77f31e2f, 0x7f800001, 0x7fc00000, 0x3000001},
12951{0x3000000, 0x77f31e2f, 0x7f984a37, 0x7fc00000, 0x3000001},
12952{0x3000000, 0x77f31e2f, 0x7fbfffff, 0x7fc00000, 0x3000001},
12953{0x3000000, 0x77f31e2f, 0x7fc00000, 0x7fc00000, 0x3000000},
12954{0x3000000, 0x77f31e2f, 0x7fd9ba98, 0x7fc00000, 0x3000000},
12955{0x3000000, 0x77f31e2f, 0x7fffffff, 0x7fc00000, 0x3000000},
12956{0x3000000, 0x77f31e2f, 0x80000000, 0x77f31e2f, 0x3000000},
12957{0x3000000, 0x77f31e2f, 0x80000001, 0x77f31e2f, 0x3000080},
12958{0x3000000, 0x77f31e2f, 0x80000076, 0x77f31e2f, 0x3000080},
12959{0x3000000, 0x77f31e2f, 0x80002b94, 0x77f31e2f, 0x3000080},
12960{0x3000000, 0x77f31e2f, 0x80636d24, 0x77f31e2f, 0x3000080},
12961{0x3000000, 0x77f31e2f, 0x807fffff, 0x77f31e2f, 0x3000080},
12962{0x3000000, 0x77f31e2f, 0x80800000, 0x77f31e2f, 0x3000010},
12963{0x3000000, 0x77f31e2f, 0x80800002, 0x77f31e2f, 0x3000010},
12964{0x3000000, 0x77f31e2f, 0x81398437, 0x77f31e2f, 0x3000010},
12965{0x3000000, 0x77f31e2f, 0x8ba98d27, 0x77f31e2f, 0x3000010},
12966{0x3000000, 0x77f31e2f, 0x8ba98d7a, 0x77f31e2f, 0x3000010},
12967{0x3000000, 0x77f31e2f, 0xf51f853a, 0x77ee2205, 0x3000010},
12968{0x3000000, 0x77f31e2f, 0xff7ffff0, 0xff7ffe0a, 0x3000010},
12969{0x3000000, 0x77f31e2f, 0xff7fffff, 0xff7ffe19, 0x3000010},
12970{0x3000000, 0x77f31e2f, 0xff800000, 0xff800000, 0x3000000},
12971{0x3000000, 0x77f31e2f, 0xff800001, 0x7fc00000, 0x3000001},
12972{0x3000000, 0x77f31e2f, 0xff984a37, 0x7fc00000, 0x3000001},
12973{0x3000000, 0x77f31e2f, 0xffbfffff, 0x7fc00000, 0x3000001},
12974{0x3000000, 0x77f31e2f, 0xffc00000, 0x7fc00000, 0x3000000},
12975{0x3000000, 0x77f31e2f, 0xffd9ba98, 0x7fc00000, 0x3000000},
12976{0x3000000, 0x77f31e2f, 0xffffffff, 0x7fc00000, 0x3000000},
12977{0x3000000, 0x77f31e2f, 0x4f3495cb, 0x77f31e2f, 0x3000010},
12978{0x3000000, 0x77f31e2f, 0xe73a5134, 0x77f31e2f, 0x3000010},
12979{0x3000000, 0x77f31e2f, 0x7c994e9e, 0x7c998b66, 0x3000010},
12980{0x3000000, 0x77f31e2f, 0x6164bd6c, 0x77f31e2f, 0x3000010},
12981{0x3000000, 0x77f31e2f, 0x9503366, 0x77f31e2f, 0x3000010},
12982{0x3000000, 0x77f31e2f, 0xbf5a97c9, 0x77f31e2f, 0x3000010},
12983{0x3000000, 0x77f31e2f, 0xe6ff1a14, 0x77f31e2f, 0x3000010},
12984{0x3000000, 0x77f31e2f, 0x77f31e2f, 0x78731e2f, 0x3000000},
12985{0x3000000, 0x77f31e2f, 0xaab4d7d8, 0x77f31e2f, 0x3000010},
12986{0x3000000, 0x77f31e2f, 0x966320b, 0x77f31e2f, 0x3000010},
12987{0x3000000, 0x77f31e2f, 0xb26bddee, 0x77f31e2f, 0x3000010},
12988{0x3000000, 0x77f31e2f, 0xb5c8e5d3, 0x77f31e2f, 0x3000010},
12989{0x3000000, 0x77f31e2f, 0x317285d3, 0x77f31e2f, 0x3000010},
12990{0x3000000, 0x77f31e2f, 0x3c9623b1, 0x77f31e2f, 0x3000010},
12991{0x3000000, 0x77f31e2f, 0x51fd2c7c, 0x77f31e2f, 0x3000010},
12992{0x3000000, 0x77f31e2f, 0x7b906a6c, 0x7b915d8a, 0x3000010},
12993{0x3000000, 0xaab4d7d8, 0x0, 0xaab4d7d8, 0x3000000},
12994{0x3000000, 0xaab4d7d8, 0x1, 0xaab4d7d8, 0x3000080},
12995{0x3000000, 0xaab4d7d8, 0x76, 0xaab4d7d8, 0x3000080},
12996{0x3000000, 0xaab4d7d8, 0x2b94, 0xaab4d7d8, 0x3000080},
12997{0x3000000, 0xaab4d7d8, 0x636d24, 0xaab4d7d8, 0x3000080},
12998{0x3000000, 0xaab4d7d8, 0x7fffff, 0xaab4d7d8, 0x3000080},
12999{0x3000000, 0xaab4d7d8, 0x800000, 0xaab4d7d8, 0x3000010},
13000{0x3000000, 0xaab4d7d8, 0x800002, 0xaab4d7d8, 0x3000010},
13001{0x3000000, 0xaab4d7d8, 0x1398437, 0xaab4d7d8, 0x3000010},
13002{0x3000000, 0xaab4d7d8, 0xba98d27, 0xaab4d7d8, 0x3000010},
13003{0x3000000, 0xaab4d7d8, 0xba98d7a, 0xaab4d7d8, 0x3000010},
13004{0x3000000, 0xaab4d7d8, 0x751f853a, 0x751f853a, 0x3000010},
13005{0x3000000, 0xaab4d7d8, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
13006{0x3000000, 0xaab4d7d8, 0x7f7fffff, 0x7f7fffff, 0x3000010},
13007{0x3000000, 0xaab4d7d8, 0x7f800000, 0x7f800000, 0x3000000},
13008{0x3000000, 0xaab4d7d8, 0x7f800001, 0x7fc00000, 0x3000001},
13009{0x3000000, 0xaab4d7d8, 0x7f984a37, 0x7fc00000, 0x3000001},
13010{0x3000000, 0xaab4d7d8, 0x7fbfffff, 0x7fc00000, 0x3000001},
13011{0x3000000, 0xaab4d7d8, 0x7fc00000, 0x7fc00000, 0x3000000},
13012{0x3000000, 0xaab4d7d8, 0x7fd9ba98, 0x7fc00000, 0x3000000},
13013{0x3000000, 0xaab4d7d8, 0x7fffffff, 0x7fc00000, 0x3000000},
13014{0x3000000, 0xaab4d7d8, 0x80000000, 0xaab4d7d8, 0x3000000},
13015{0x3000000, 0xaab4d7d8, 0x80000001, 0xaab4d7d8, 0x3000080},
13016{0x3000000, 0xaab4d7d8, 0x80000076, 0xaab4d7d8, 0x3000080},
13017{0x3000000, 0xaab4d7d8, 0x80002b94, 0xaab4d7d8, 0x3000080},
13018{0x3000000, 0xaab4d7d8, 0x80636d24, 0xaab4d7d8, 0x3000080},
13019{0x3000000, 0xaab4d7d8, 0x807fffff, 0xaab4d7d8, 0x3000080},
13020{0x3000000, 0xaab4d7d8, 0x80800000, 0xaab4d7d8, 0x3000010},
13021{0x3000000, 0xaab4d7d8, 0x80800002, 0xaab4d7d8, 0x3000010},
13022{0x3000000, 0xaab4d7d8, 0x81398437, 0xaab4d7d8, 0x3000010},
13023{0x3000000, 0xaab4d7d8, 0x8ba98d27, 0xaab4d7d8, 0x3000010},
13024{0x3000000, 0xaab4d7d8, 0x8ba98d7a, 0xaab4d7d8, 0x3000010},
13025{0x3000000, 0xaab4d7d8, 0xf51f853a, 0xf51f853a, 0x3000010},
13026{0x3000000, 0xaab4d7d8, 0xff7ffff0, 0xff7ffff0, 0x3000010},
13027{0x3000000, 0xaab4d7d8, 0xff7fffff, 0xff7fffff, 0x3000010},
13028{0x3000000, 0xaab4d7d8, 0xff800000, 0xff800000, 0x3000000},
13029{0x3000000, 0xaab4d7d8, 0xff800001, 0x7fc00000, 0x3000001},
13030{0x3000000, 0xaab4d7d8, 0xff984a37, 0x7fc00000, 0x3000001},
13031{0x3000000, 0xaab4d7d8, 0xffbfffff, 0x7fc00000, 0x3000001},
13032{0x3000000, 0xaab4d7d8, 0xffc00000, 0x7fc00000, 0x3000000},
13033{0x3000000, 0xaab4d7d8, 0xffd9ba98, 0x7fc00000, 0x3000000},
13034{0x3000000, 0xaab4d7d8, 0xffffffff, 0x7fc00000, 0x3000000},
13035{0x3000000, 0xaab4d7d8, 0x4f3495cb, 0x4f3495cb, 0x3000010},
13036{0x3000000, 0xaab4d7d8, 0xe73a5134, 0xe73a5134, 0x3000010},
13037{0x3000000, 0xaab4d7d8, 0x7c994e9e, 0x7c994e9e, 0x3000010},
13038{0x3000000, 0xaab4d7d8, 0x6164bd6c, 0x6164bd6c, 0x3000010},
13039{0x3000000, 0xaab4d7d8, 0x9503366, 0xaab4d7d8, 0x3000010},
13040{0x3000000, 0xaab4d7d8, 0xbf5a97c9, 0xbf5a97c9, 0x3000010},
13041{0x3000000, 0xaab4d7d8, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
13042{0x3000000, 0xaab4d7d8, 0x77f31e2f, 0x77f31e2f, 0x3000010},
13043{0x3000000, 0xaab4d7d8, 0xaab4d7d8, 0xab34d7d8, 0x3000000},
13044{0x3000000, 0xaab4d7d8, 0x966320b, 0xaab4d7d8, 0x3000010},
13045{0x3000000, 0xaab4d7d8, 0xb26bddee, 0xb26bdf58, 0x3000010},
13046{0x3000000, 0xaab4d7d8, 0xb5c8e5d3, 0xb5c8e5d6, 0x3000010},
13047{0x3000000, 0xaab4d7d8, 0x317285d3, 0x3172802c, 0x3000010},
13048{0x3000000, 0xaab4d7d8, 0x3c9623b1, 0x3c9623b1, 0x3000010},
13049{0x3000000, 0xaab4d7d8, 0x51fd2c7c, 0x51fd2c7c, 0x3000010},
13050{0x3000000, 0xaab4d7d8, 0x7b906a6c, 0x7b906a6c, 0x3000010},
13051{0x3000000, 0x966320b, 0x0, 0x966320b, 0x3000000},
13052{0x3000000, 0x966320b, 0x1, 0x966320b, 0x3000080},
13053{0x3000000, 0x966320b, 0x76, 0x966320b, 0x3000080},
13054{0x3000000, 0x966320b, 0x2b94, 0x966320b, 0x3000080},
13055{0x3000000, 0x966320b, 0x636d24, 0x966320b, 0x3000080},
13056{0x3000000, 0x966320b, 0x7fffff, 0x966320b, 0x3000080},
13057{0x3000000, 0x966320b, 0x800000, 0x966324b, 0x3000000},
13058{0x3000000, 0x966320b, 0x800002, 0x966324b, 0x3000010},
13059{0x3000000, 0x966320b, 0x1398437, 0x96632c5, 0x3000010},
13060{0x3000000, 0x966320b, 0xba98d27, 0xbb0beb7, 0x3000010},
13061{0x3000000, 0x966320b, 0xba98d7a, 0xbb0bf0a, 0x3000010},
13062{0x3000000, 0x966320b, 0x751f853a, 0x751f853a, 0x3000010},
13063{0x3000000, 0x966320b, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
13064{0x3000000, 0x966320b, 0x7f7fffff, 0x7f7fffff, 0x3000010},
13065{0x3000000, 0x966320b, 0x7f800000, 0x7f800000, 0x3000000},
13066{0x3000000, 0x966320b, 0x7f800001, 0x7fc00000, 0x3000001},
13067{0x3000000, 0x966320b, 0x7f984a37, 0x7fc00000, 0x3000001},
13068{0x3000000, 0x966320b, 0x7fbfffff, 0x7fc00000, 0x3000001},
13069{0x3000000, 0x966320b, 0x7fc00000, 0x7fc00000, 0x3000000},
13070{0x3000000, 0x966320b, 0x7fd9ba98, 0x7fc00000, 0x3000000},
13071{0x3000000, 0x966320b, 0x7fffffff, 0x7fc00000, 0x3000000},
13072{0x3000000, 0x966320b, 0x80000000, 0x966320b, 0x3000000},
13073{0x3000000, 0x966320b, 0x80000001, 0x966320b, 0x3000080},
13074{0x3000000, 0x966320b, 0x80000076, 0x966320b, 0x3000080},
13075{0x3000000, 0x966320b, 0x80002b94, 0x966320b, 0x3000080},
13076{0x3000000, 0x966320b, 0x80636d24, 0x966320b, 0x3000080},
13077{0x3000000, 0x966320b, 0x807fffff, 0x966320b, 0x3000080},
13078{0x3000000, 0x966320b, 0x80800000, 0x96631cb, 0x3000000},
13079{0x3000000, 0x966320b, 0x80800002, 0x96631cb, 0x3000010},
13080{0x3000000, 0x966320b, 0x81398437, 0x9663151, 0x3000010},
13081{0x3000000, 0x966320b, 0x8ba98d27, 0x8ba25b97, 0x3000010},
13082{0x3000000, 0x966320b, 0x8ba98d7a, 0x8ba25bea, 0x3000010},
13083{0x3000000, 0x966320b, 0xf51f853a, 0xf51f853a, 0x3000010},
13084{0x3000000, 0x966320b, 0xff7ffff0, 0xff7ffff0, 0x3000010},
13085{0x3000000, 0x966320b, 0xff7fffff, 0xff7fffff, 0x3000010},
13086{0x3000000, 0x966320b, 0xff800000, 0xff800000, 0x3000000},
13087{0x3000000, 0x966320b, 0xff800001, 0x7fc00000, 0x3000001},
13088{0x3000000, 0x966320b, 0xff984a37, 0x7fc00000, 0x3000001},
13089{0x3000000, 0x966320b, 0xffbfffff, 0x7fc00000, 0x3000001},
13090{0x3000000, 0x966320b, 0xffc00000, 0x7fc00000, 0x3000000},
13091{0x3000000, 0x966320b, 0xffd9ba98, 0x7fc00000, 0x3000000},
13092{0x3000000, 0x966320b, 0xffffffff, 0x7fc00000, 0x3000000},
13093{0x3000000, 0x966320b, 0x4f3495cb, 0x4f3495cb, 0x3000010},
13094{0x3000000, 0x966320b, 0xe73a5134, 0xe73a5134, 0x3000010},
13095{0x3000000, 0x966320b, 0x7c994e9e, 0x7c994e9e, 0x3000010},
13096{0x3000000, 0x966320b, 0x6164bd6c, 0x6164bd6c, 0x3000010},
13097{0x3000000, 0x966320b, 0x9503366, 0x9db32b8, 0x3000010},
13098{0x3000000, 0x966320b, 0xbf5a97c9, 0xbf5a97c9, 0x3000010},
13099{0x3000000, 0x966320b, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
13100{0x3000000, 0x966320b, 0x77f31e2f, 0x77f31e2f, 0x3000010},
13101{0x3000000, 0x966320b, 0xaab4d7d8, 0xaab4d7d8, 0x3000010},
13102{0x3000000, 0x966320b, 0x966320b, 0x9e6320b, 0x3000000},
13103{0x3000000, 0x966320b, 0xb26bddee, 0xb26bddee, 0x3000010},
13104{0x3000000, 0x966320b, 0xb5c8e5d3, 0xb5c8e5d3, 0x3000010},
13105{0x3000000, 0x966320b, 0x317285d3, 0x317285d3, 0x3000010},
13106{0x3000000, 0x966320b, 0x3c9623b1, 0x3c9623b1, 0x3000010},
13107{0x3000000, 0x966320b, 0x51fd2c7c, 0x51fd2c7c, 0x3000010},
13108{0x3000000, 0x966320b, 0x7b906a6c, 0x7b906a6c, 0x3000010},
13109{0x3000000, 0xb26bddee, 0x0, 0xb26bddee, 0x3000000},
13110{0x3000000, 0xb26bddee, 0x1, 0xb26bddee, 0x3000080},
13111{0x3000000, 0xb26bddee, 0x76, 0xb26bddee, 0x3000080},
13112{0x3000000, 0xb26bddee, 0x2b94, 0xb26bddee, 0x3000080},
13113{0x3000000, 0xb26bddee, 0x636d24, 0xb26bddee, 0x3000080},
13114{0x3000000, 0xb26bddee, 0x7fffff, 0xb26bddee, 0x3000080},
13115{0x3000000, 0xb26bddee, 0x800000, 0xb26bddee, 0x3000010},
13116{0x3000000, 0xb26bddee, 0x800002, 0xb26bddee, 0x3000010},
13117{0x3000000, 0xb26bddee, 0x1398437, 0xb26bddee, 0x3000010},
13118{0x3000000, 0xb26bddee, 0xba98d27, 0xb26bddee, 0x3000010},
13119{0x3000000, 0xb26bddee, 0xba98d7a, 0xb26bddee, 0x3000010},
13120{0x3000000, 0xb26bddee, 0x751f853a, 0x751f853a, 0x3000010},
13121{0x3000000, 0xb26bddee, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
13122{0x3000000, 0xb26bddee, 0x7f7fffff, 0x7f7fffff, 0x3000010},
13123{0x3000000, 0xb26bddee, 0x7f800000, 0x7f800000, 0x3000000},
13124{0x3000000, 0xb26bddee, 0x7f800001, 0x7fc00000, 0x3000001},
13125{0x3000000, 0xb26bddee, 0x7f984a37, 0x7fc00000, 0x3000001},
13126{0x3000000, 0xb26bddee, 0x7fbfffff, 0x7fc00000, 0x3000001},
13127{0x3000000, 0xb26bddee, 0x7fc00000, 0x7fc00000, 0x3000000},
13128{0x3000000, 0xb26bddee, 0x7fd9ba98, 0x7fc00000, 0x3000000},
13129{0x3000000, 0xb26bddee, 0x7fffffff, 0x7fc00000, 0x3000000},
13130{0x3000000, 0xb26bddee, 0x80000000, 0xb26bddee, 0x3000000},
13131{0x3000000, 0xb26bddee, 0x80000001, 0xb26bddee, 0x3000080},
13132{0x3000000, 0xb26bddee, 0x80000076, 0xb26bddee, 0x3000080},
13133{0x3000000, 0xb26bddee, 0x80002b94, 0xb26bddee, 0x3000080},
13134{0x3000000, 0xb26bddee, 0x80636d24, 0xb26bddee, 0x3000080},
13135{0x3000000, 0xb26bddee, 0x807fffff, 0xb26bddee, 0x3000080},
13136{0x3000000, 0xb26bddee, 0x80800000, 0xb26bddee, 0x3000010},
13137{0x3000000, 0xb26bddee, 0x80800002, 0xb26bddee, 0x3000010},
13138{0x3000000, 0xb26bddee, 0x81398437, 0xb26bddee, 0x3000010},
13139{0x3000000, 0xb26bddee, 0x8ba98d27, 0xb26bddee, 0x3000010},
13140{0x3000000, 0xb26bddee, 0x8ba98d7a, 0xb26bddee, 0x3000010},
13141{0x3000000, 0xb26bddee, 0xf51f853a, 0xf51f853a, 0x3000010},
13142{0x3000000, 0xb26bddee, 0xff7ffff0, 0xff7ffff0, 0x3000010},
13143{0x3000000, 0xb26bddee, 0xff7fffff, 0xff7fffff, 0x3000010},
13144{0x3000000, 0xb26bddee, 0xff800000, 0xff800000, 0x3000000},
13145{0x3000000, 0xb26bddee, 0xff800001, 0x7fc00000, 0x3000001},
13146{0x3000000, 0xb26bddee, 0xff984a37, 0x7fc00000, 0x3000001},
13147{0x3000000, 0xb26bddee, 0xffbfffff, 0x7fc00000, 0x3000001},
13148{0x3000000, 0xb26bddee, 0xffc00000, 0x7fc00000, 0x3000000},
13149{0x3000000, 0xb26bddee, 0xffd9ba98, 0x7fc00000, 0x3000000},
13150{0x3000000, 0xb26bddee, 0xffffffff, 0x7fc00000, 0x3000000},
13151{0x3000000, 0xb26bddee, 0x4f3495cb, 0x4f3495cb, 0x3000010},
13152{0x3000000, 0xb26bddee, 0xe73a5134, 0xe73a5134, 0x3000010},
13153{0x3000000, 0xb26bddee, 0x7c994e9e, 0x7c994e9e, 0x3000010},
13154{0x3000000, 0xb26bddee, 0x6164bd6c, 0x6164bd6c, 0x3000010},
13155{0x3000000, 0xb26bddee, 0x9503366, 0xb26bddee, 0x3000010},
13156{0x3000000, 0xb26bddee, 0xbf5a97c9, 0xbf5a97c9, 0x3000010},
13157{0x3000000, 0xb26bddee, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
13158{0x3000000, 0xb26bddee, 0x77f31e2f, 0x77f31e2f, 0x3000010},
13159{0x3000000, 0xb26bddee, 0xaab4d7d8, 0xb26bdf58, 0x3000010},
13160{0x3000000, 0xb26bddee, 0x966320b, 0xb26bddee, 0x3000010},
13161{0x3000000, 0xb26bddee, 0xb26bddee, 0xb2ebddee, 0x3000000},
13162{0x3000000, 0xb26bddee, 0xb5c8e5d3, 0xb5cabd8f, 0x3000010},
13163{0x3000000, 0xb26bddee, 0x317285d3, 0xb22f3c79, 0x3000010},
13164{0x3000000, 0xb26bddee, 0x3c9623b1, 0x3c9623aa, 0x3000010},
13165{0x3000000, 0xb26bddee, 0x51fd2c7c, 0x51fd2c7c, 0x3000010},
13166{0x3000000, 0xb26bddee, 0x7b906a6c, 0x7b906a6c, 0x3000010},
13167{0x3000000, 0xb5c8e5d3, 0x0, 0xb5c8e5d3, 0x3000000},
13168{0x3000000, 0xb5c8e5d3, 0x1, 0xb5c8e5d3, 0x3000080},
13169{0x3000000, 0xb5c8e5d3, 0x76, 0xb5c8e5d3, 0x3000080},
13170{0x3000000, 0xb5c8e5d3, 0x2b94, 0xb5c8e5d3, 0x3000080},
13171{0x3000000, 0xb5c8e5d3, 0x636d24, 0xb5c8e5d3, 0x3000080},
13172{0x3000000, 0xb5c8e5d3, 0x7fffff, 0xb5c8e5d3, 0x3000080},
13173{0x3000000, 0xb5c8e5d3, 0x800000, 0xb5c8e5d3, 0x3000010},
13174{0x3000000, 0xb5c8e5d3, 0x800002, 0xb5c8e5d3, 0x3000010},
13175{0x3000000, 0xb5c8e5d3, 0x1398437, 0xb5c8e5d3, 0x3000010},
13176{0x3000000, 0xb5c8e5d3, 0xba98d27, 0xb5c8e5d3, 0x3000010},
13177{0x3000000, 0xb5c8e5d3, 0xba98d7a, 0xb5c8e5d3, 0x3000010},
13178{0x3000000, 0xb5c8e5d3, 0x751f853a, 0x751f853a, 0x3000010},
13179{0x3000000, 0xb5c8e5d3, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
13180{0x3000000, 0xb5c8e5d3, 0x7f7fffff, 0x7f7fffff, 0x3000010},
13181{0x3000000, 0xb5c8e5d3, 0x7f800000, 0x7f800000, 0x3000000},
13182{0x3000000, 0xb5c8e5d3, 0x7f800001, 0x7fc00000, 0x3000001},
13183{0x3000000, 0xb5c8e5d3, 0x7f984a37, 0x7fc00000, 0x3000001},
13184{0x3000000, 0xb5c8e5d3, 0x7fbfffff, 0x7fc00000, 0x3000001},
13185{0x3000000, 0xb5c8e5d3, 0x7fc00000, 0x7fc00000, 0x3000000},
13186{0x3000000, 0xb5c8e5d3, 0x7fd9ba98, 0x7fc00000, 0x3000000},
13187{0x3000000, 0xb5c8e5d3, 0x7fffffff, 0x7fc00000, 0x3000000},
13188{0x3000000, 0xb5c8e5d3, 0x80000000, 0xb5c8e5d3, 0x3000000},
13189{0x3000000, 0xb5c8e5d3, 0x80000001, 0xb5c8e5d3, 0x3000080},
13190{0x3000000, 0xb5c8e5d3, 0x80000076, 0xb5c8e5d3, 0x3000080},
13191{0x3000000, 0xb5c8e5d3, 0x80002b94, 0xb5c8e5d3, 0x3000080},
13192{0x3000000, 0xb5c8e5d3, 0x80636d24, 0xb5c8e5d3, 0x3000080},
13193{0x3000000, 0xb5c8e5d3, 0x807fffff, 0xb5c8e5d3, 0x3000080},
13194{0x3000000, 0xb5c8e5d3, 0x80800000, 0xb5c8e5d3, 0x3000010},
13195{0x3000000, 0xb5c8e5d3, 0x80800002, 0xb5c8e5d3, 0x3000010},
13196{0x3000000, 0xb5c8e5d3, 0x81398437, 0xb5c8e5d3, 0x3000010},
13197{0x3000000, 0xb5c8e5d3, 0x8ba98d27, 0xb5c8e5d3, 0x3000010},
13198{0x3000000, 0xb5c8e5d3, 0x8ba98d7a, 0xb5c8e5d3, 0x3000010},
13199{0x3000000, 0xb5c8e5d3, 0xf51f853a, 0xf51f853a, 0x3000010},
13200{0x3000000, 0xb5c8e5d3, 0xff7ffff0, 0xff7ffff0, 0x3000010},
13201{0x3000000, 0xb5c8e5d3, 0xff7fffff, 0xff7fffff, 0x3000010},
13202{0x3000000, 0xb5c8e5d3, 0xff800000, 0xff800000, 0x3000000},
13203{0x3000000, 0xb5c8e5d3, 0xff800001, 0x7fc00000, 0x3000001},
13204{0x3000000, 0xb5c8e5d3, 0xff984a37, 0x7fc00000, 0x3000001},
13205{0x3000000, 0xb5c8e5d3, 0xffbfffff, 0x7fc00000, 0x3000001},
13206{0x3000000, 0xb5c8e5d3, 0xffc00000, 0x7fc00000, 0x3000000},
13207{0x3000000, 0xb5c8e5d3, 0xffd9ba98, 0x7fc00000, 0x3000000},
13208{0x3000000, 0xb5c8e5d3, 0xffffffff, 0x7fc00000, 0x3000000},
13209{0x3000000, 0xb5c8e5d3, 0x4f3495cb, 0x4f3495cb, 0x3000010},
13210{0x3000000, 0xb5c8e5d3, 0xe73a5134, 0xe73a5134, 0x3000010},
13211{0x3000000, 0xb5c8e5d3, 0x7c994e9e, 0x7c994e9e, 0x3000010},
13212{0x3000000, 0xb5c8e5d3, 0x6164bd6c, 0x6164bd6c, 0x3000010},
13213{0x3000000, 0xb5c8e5d3, 0x9503366, 0xb5c8e5d3, 0x3000010},
13214{0x3000000, 0xb5c8e5d3, 0xbf5a97c9, 0xbf5a97e2, 0x3000010},
13215{0x3000000, 0xb5c8e5d3, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
13216{0x3000000, 0xb5c8e5d3, 0x77f31e2f, 0x77f31e2f, 0x3000010},
13217{0x3000000, 0xb5c8e5d3, 0xaab4d7d8, 0xb5c8e5d6, 0x3000010},
13218{0x3000000, 0xb5c8e5d3, 0x966320b, 0xb5c8e5d3, 0x3000010},
13219{0x3000000, 0xb5c8e5d3, 0xb26bddee, 0xb5cabd8f, 0x3000010},
13220{0x3000000, 0xb5c8e5d3, 0xb5c8e5d3, 0xb648e5d3, 0x3000000},
13221{0x3000000, 0xb5c8e5d3, 0x317285d3, 0xb5c86c90, 0x3000010},
13222{0x3000000, 0xb5c8e5d3, 0x3c9623b1, 0x3c96208d, 0x3000010},
13223{0x3000000, 0xb5c8e5d3, 0x51fd2c7c, 0x51fd2c7c, 0x3000010},
13224{0x3000000, 0xb5c8e5d3, 0x7b906a6c, 0x7b906a6c, 0x3000010},
13225{0x3000000, 0x317285d3, 0x0, 0x317285d3, 0x3000000},
13226{0x3000000, 0x317285d3, 0x1, 0x317285d3, 0x3000080},
13227{0x3000000, 0x317285d3, 0x76, 0x317285d3, 0x3000080},
13228{0x3000000, 0x317285d3, 0x2b94, 0x317285d3, 0x3000080},
13229{0x3000000, 0x317285d3, 0x636d24, 0x317285d3, 0x3000080},
13230{0x3000000, 0x317285d3, 0x7fffff, 0x317285d3, 0x3000080},
13231{0x3000000, 0x317285d3, 0x800000, 0x317285d3, 0x3000010},
13232{0x3000000, 0x317285d3, 0x800002, 0x317285d3, 0x3000010},
13233{0x3000000, 0x317285d3, 0x1398437, 0x317285d3, 0x3000010},
13234{0x3000000, 0x317285d3, 0xba98d27, 0x317285d3, 0x3000010},
13235{0x3000000, 0x317285d3, 0xba98d7a, 0x317285d3, 0x3000010},
13236{0x3000000, 0x317285d3, 0x751f853a, 0x751f853a, 0x3000010},
13237{0x3000000, 0x317285d3, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
13238{0x3000000, 0x317285d3, 0x7f7fffff, 0x7f7fffff, 0x3000010},
13239{0x3000000, 0x317285d3, 0x7f800000, 0x7f800000, 0x3000000},
13240{0x3000000, 0x317285d3, 0x7f800001, 0x7fc00000, 0x3000001},
13241{0x3000000, 0x317285d3, 0x7f984a37, 0x7fc00000, 0x3000001},
13242{0x3000000, 0x317285d3, 0x7fbfffff, 0x7fc00000, 0x3000001},
13243{0x3000000, 0x317285d3, 0x7fc00000, 0x7fc00000, 0x3000000},
13244{0x3000000, 0x317285d3, 0x7fd9ba98, 0x7fc00000, 0x3000000},
13245{0x3000000, 0x317285d3, 0x7fffffff, 0x7fc00000, 0x3000000},
13246{0x3000000, 0x317285d3, 0x80000000, 0x317285d3, 0x3000000},
13247{0x3000000, 0x317285d3, 0x80000001, 0x317285d3, 0x3000080},
13248{0x3000000, 0x317285d3, 0x80000076, 0x317285d3, 0x3000080},
13249{0x3000000, 0x317285d3, 0x80002b94, 0x317285d3, 0x3000080},
13250{0x3000000, 0x317285d3, 0x80636d24, 0x317285d3, 0x3000080},
13251{0x3000000, 0x317285d3, 0x807fffff, 0x317285d3, 0x3000080},
13252{0x3000000, 0x317285d3, 0x80800000, 0x317285d3, 0x3000010},
13253{0x3000000, 0x317285d3, 0x80800002, 0x317285d3, 0x3000010},
13254{0x3000000, 0x317285d3, 0x81398437, 0x317285d3, 0x3000010},
13255{0x3000000, 0x317285d3, 0x8ba98d27, 0x317285d3, 0x3000010},
13256{0x3000000, 0x317285d3, 0x8ba98d7a, 0x317285d3, 0x3000010},
13257{0x3000000, 0x317285d3, 0xf51f853a, 0xf51f853a, 0x3000010},
13258{0x3000000, 0x317285d3, 0xff7ffff0, 0xff7ffff0, 0x3000010},
13259{0x3000000, 0x317285d3, 0xff7fffff, 0xff7fffff, 0x3000010},
13260{0x3000000, 0x317285d3, 0xff800000, 0xff800000, 0x3000000},
13261{0x3000000, 0x317285d3, 0xff800001, 0x7fc00000, 0x3000001},
13262{0x3000000, 0x317285d3, 0xff984a37, 0x7fc00000, 0x3000001},
13263{0x3000000, 0x317285d3, 0xffbfffff, 0x7fc00000, 0x3000001},
13264{0x3000000, 0x317285d3, 0xffc00000, 0x7fc00000, 0x3000000},
13265{0x3000000, 0x317285d3, 0xffd9ba98, 0x7fc00000, 0x3000000},
13266{0x3000000, 0x317285d3, 0xffffffff, 0x7fc00000, 0x3000000},
13267{0x3000000, 0x317285d3, 0x4f3495cb, 0x4f3495cb, 0x3000010},
13268{0x3000000, 0x317285d3, 0xe73a5134, 0xe73a5134, 0x3000010},
13269{0x3000000, 0x317285d3, 0x7c994e9e, 0x7c994e9e, 0x3000010},
13270{0x3000000, 0x317285d3, 0x6164bd6c, 0x6164bd6c, 0x3000010},
13271{0x3000000, 0x317285d3, 0x9503366, 0x317285d3, 0x3000010},
13272{0x3000000, 0x317285d3, 0xbf5a97c9, 0xbf5a97c9, 0x3000010},
13273{0x3000000, 0x317285d3, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
13274{0x3000000, 0x317285d3, 0x77f31e2f, 0x77f31e2f, 0x3000010},
13275{0x3000000, 0x317285d3, 0xaab4d7d8, 0x3172802c, 0x3000010},
13276{0x3000000, 0x317285d3, 0x966320b, 0x317285d3, 0x3000010},
13277{0x3000000, 0x317285d3, 0xb26bddee, 0xb22f3c79, 0x3000010},
13278{0x3000000, 0x317285d3, 0xb5c8e5d3, 0xb5c86c90, 0x3000010},
13279{0x3000000, 0x317285d3, 0x317285d3, 0x31f285d3, 0x3000000},
13280{0x3000000, 0x317285d3, 0x3c9623b1, 0x3c9623b3, 0x3000010},
13281{0x3000000, 0x317285d3, 0x51fd2c7c, 0x51fd2c7c, 0x3000010},
13282{0x3000000, 0x317285d3, 0x7b906a6c, 0x7b906a6c, 0x3000010},
13283{0x3000000, 0x3c9623b1, 0x0, 0x3c9623b1, 0x3000000},
13284{0x3000000, 0x3c9623b1, 0x1, 0x3c9623b1, 0x3000080},
13285{0x3000000, 0x3c9623b1, 0x76, 0x3c9623b1, 0x3000080},
13286{0x3000000, 0x3c9623b1, 0x2b94, 0x3c9623b1, 0x3000080},
13287{0x3000000, 0x3c9623b1, 0x636d24, 0x3c9623b1, 0x3000080},
13288{0x3000000, 0x3c9623b1, 0x7fffff, 0x3c9623b1, 0x3000080},
13289{0x3000000, 0x3c9623b1, 0x800000, 0x3c9623b1, 0x3000010},
13290{0x3000000, 0x3c9623b1, 0x800002, 0x3c9623b1, 0x3000010},
13291{0x3000000, 0x3c9623b1, 0x1398437, 0x3c9623b1, 0x3000010},
13292{0x3000000, 0x3c9623b1, 0xba98d27, 0x3c9623b1, 0x3000010},
13293{0x3000000, 0x3c9623b1, 0xba98d7a, 0x3c9623b1, 0x3000010},
13294{0x3000000, 0x3c9623b1, 0x751f853a, 0x751f853a, 0x3000010},
13295{0x3000000, 0x3c9623b1, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
13296{0x3000000, 0x3c9623b1, 0x7f7fffff, 0x7f7fffff, 0x3000010},
13297{0x3000000, 0x3c9623b1, 0x7f800000, 0x7f800000, 0x3000000},
13298{0x3000000, 0x3c9623b1, 0x7f800001, 0x7fc00000, 0x3000001},
13299{0x3000000, 0x3c9623b1, 0x7f984a37, 0x7fc00000, 0x3000001},
13300{0x3000000, 0x3c9623b1, 0x7fbfffff, 0x7fc00000, 0x3000001},
13301{0x3000000, 0x3c9623b1, 0x7fc00000, 0x7fc00000, 0x3000000},
13302{0x3000000, 0x3c9623b1, 0x7fd9ba98, 0x7fc00000, 0x3000000},
13303{0x3000000, 0x3c9623b1, 0x7fffffff, 0x7fc00000, 0x3000000},
13304{0x3000000, 0x3c9623b1, 0x80000000, 0x3c9623b1, 0x3000000},
13305{0x3000000, 0x3c9623b1, 0x80000001, 0x3c9623b1, 0x3000080},
13306{0x3000000, 0x3c9623b1, 0x80000076, 0x3c9623b1, 0x3000080},
13307{0x3000000, 0x3c9623b1, 0x80002b94, 0x3c9623b1, 0x3000080},
13308{0x3000000, 0x3c9623b1, 0x80636d24, 0x3c9623b1, 0x3000080},
13309{0x3000000, 0x3c9623b1, 0x807fffff, 0x3c9623b1, 0x3000080},
13310{0x3000000, 0x3c9623b1, 0x80800000, 0x3c9623b1, 0x3000010},
13311{0x3000000, 0x3c9623b1, 0x80800002, 0x3c9623b1, 0x3000010},
13312{0x3000000, 0x3c9623b1, 0x81398437, 0x3c9623b1, 0x3000010},
13313{0x3000000, 0x3c9623b1, 0x8ba98d27, 0x3c9623b1, 0x3000010},
13314{0x3000000, 0x3c9623b1, 0x8ba98d7a, 0x3c9623b1, 0x3000010},
13315{0x3000000, 0x3c9623b1, 0xf51f853a, 0xf51f853a, 0x3000010},
13316{0x3000000, 0x3c9623b1, 0xff7ffff0, 0xff7ffff0, 0x3000010},
13317{0x3000000, 0x3c9623b1, 0xff7fffff, 0xff7fffff, 0x3000010},
13318{0x3000000, 0x3c9623b1, 0xff800000, 0xff800000, 0x3000000},
13319{0x3000000, 0x3c9623b1, 0xff800001, 0x7fc00000, 0x3000001},
13320{0x3000000, 0x3c9623b1, 0xff984a37, 0x7fc00000, 0x3000001},
13321{0x3000000, 0x3c9623b1, 0xffbfffff, 0x7fc00000, 0x3000001},
13322{0x3000000, 0x3c9623b1, 0xffc00000, 0x7fc00000, 0x3000000},
13323{0x3000000, 0x3c9623b1, 0xffd9ba98, 0x7fc00000, 0x3000000},
13324{0x3000000, 0x3c9623b1, 0xffffffff, 0x7fc00000, 0x3000000},
13325{0x3000000, 0x3c9623b1, 0x4f3495cb, 0x4f3495cb, 0x3000010},
13326{0x3000000, 0x3c9623b1, 0xe73a5134, 0xe73a5134, 0x3000010},
13327{0x3000000, 0x3c9623b1, 0x7c994e9e, 0x7c994e9e, 0x3000010},
13328{0x3000000, 0x3c9623b1, 0x6164bd6c, 0x6164bd6c, 0x3000010},
13329{0x3000000, 0x3c9623b1, 0x9503366, 0x3c9623b1, 0x3000010},
13330{0x3000000, 0x3c9623b1, 0xbf5a97c9, 0xbf55e6ab, 0x3000010},
13331{0x3000000, 0x3c9623b1, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
13332{0x3000000, 0x3c9623b1, 0x77f31e2f, 0x77f31e2f, 0x3000010},
13333{0x3000000, 0x3c9623b1, 0xaab4d7d8, 0x3c9623b1, 0x3000010},
13334{0x3000000, 0x3c9623b1, 0x966320b, 0x3c9623b1, 0x3000010},
13335{0x3000000, 0x3c9623b1, 0xb26bddee, 0x3c9623aa, 0x3000010},
13336{0x3000000, 0x3c9623b1, 0xb5c8e5d3, 0x3c96208d, 0x3000010},
13337{0x3000000, 0x3c9623b1, 0x317285d3, 0x3c9623b3, 0x3000010},
13338{0x3000000, 0x3c9623b1, 0x3c9623b1, 0x3d1623b1, 0x3000000},
13339{0x3000000, 0x3c9623b1, 0x51fd2c7c, 0x51fd2c7c, 0x3000010},
13340{0x3000000, 0x3c9623b1, 0x7b906a6c, 0x7b906a6c, 0x3000010},
13341{0x3000000, 0x51fd2c7c, 0x0, 0x51fd2c7c, 0x3000000},
13342{0x3000000, 0x51fd2c7c, 0x1, 0x51fd2c7c, 0x3000080},
13343{0x3000000, 0x51fd2c7c, 0x76, 0x51fd2c7c, 0x3000080},
13344{0x3000000, 0x51fd2c7c, 0x2b94, 0x51fd2c7c, 0x3000080},
13345{0x3000000, 0x51fd2c7c, 0x636d24, 0x51fd2c7c, 0x3000080},
13346{0x3000000, 0x51fd2c7c, 0x7fffff, 0x51fd2c7c, 0x3000080},
13347{0x3000000, 0x51fd2c7c, 0x800000, 0x51fd2c7c, 0x3000010},
13348{0x3000000, 0x51fd2c7c, 0x800002, 0x51fd2c7c, 0x3000010},
13349{0x3000000, 0x51fd2c7c, 0x1398437, 0x51fd2c7c, 0x3000010},
13350{0x3000000, 0x51fd2c7c, 0xba98d27, 0x51fd2c7c, 0x3000010},
13351{0x3000000, 0x51fd2c7c, 0xba98d7a, 0x51fd2c7c, 0x3000010},
13352{0x3000000, 0x51fd2c7c, 0x751f853a, 0x751f853a, 0x3000010},
13353{0x3000000, 0x51fd2c7c, 0x7f7ffff0, 0x7f7ffff0, 0x3000010},
13354{0x3000000, 0x51fd2c7c, 0x7f7fffff, 0x7f7fffff, 0x3000010},
13355{0x3000000, 0x51fd2c7c, 0x7f800000, 0x7f800000, 0x3000000},
13356{0x3000000, 0x51fd2c7c, 0x7f800001, 0x7fc00000, 0x3000001},
13357{0x3000000, 0x51fd2c7c, 0x7f984a37, 0x7fc00000, 0x3000001},
13358{0x3000000, 0x51fd2c7c, 0x7fbfffff, 0x7fc00000, 0x3000001},
13359{0x3000000, 0x51fd2c7c, 0x7fc00000, 0x7fc00000, 0x3000000},
13360{0x3000000, 0x51fd2c7c, 0x7fd9ba98, 0x7fc00000, 0x3000000},
13361{0x3000000, 0x51fd2c7c, 0x7fffffff, 0x7fc00000, 0x3000000},
13362{0x3000000, 0x51fd2c7c, 0x80000000, 0x51fd2c7c, 0x3000000},
13363{0x3000000, 0x51fd2c7c, 0x80000001, 0x51fd2c7c, 0x3000080},
13364{0x3000000, 0x51fd2c7c, 0x80000076, 0x51fd2c7c, 0x3000080},
13365{0x3000000, 0x51fd2c7c, 0x80002b94, 0x51fd2c7c, 0x3000080},
13366{0x3000000, 0x51fd2c7c, 0x80636d24, 0x51fd2c7c, 0x3000080},
13367{0x3000000, 0x51fd2c7c, 0x807fffff, 0x51fd2c7c, 0x3000080},
13368{0x3000000, 0x51fd2c7c, 0x80800000, 0x51fd2c7c, 0x3000010},
13369{0x3000000, 0x51fd2c7c, 0x80800002, 0x51fd2c7c, 0x3000010},
13370{0x3000000, 0x51fd2c7c, 0x81398437, 0x51fd2c7c, 0x3000010},
13371{0x3000000, 0x51fd2c7c, 0x8ba98d27, 0x51fd2c7c, 0x3000010},
13372{0x3000000, 0x51fd2c7c, 0x8ba98d7a, 0x51fd2c7c, 0x3000010},
13373{0x3000000, 0x51fd2c7c, 0xf51f853a, 0xf51f853a, 0x3000010},
13374{0x3000000, 0x51fd2c7c, 0xff7ffff0, 0xff7ffff0, 0x3000010},
13375{0x3000000, 0x51fd2c7c, 0xff7fffff, 0xff7fffff, 0x3000010},
13376{0x3000000, 0x51fd2c7c, 0xff800000, 0xff800000, 0x3000000},
13377{0x3000000, 0x51fd2c7c, 0xff800001, 0x7fc00000, 0x3000001},
13378{0x3000000, 0x51fd2c7c, 0xff984a37, 0x7fc00000, 0x3000001},
13379{0x3000000, 0x51fd2c7c, 0xffbfffff, 0x7fc00000, 0x3000001},
13380{0x3000000, 0x51fd2c7c, 0xffc00000, 0x7fc00000, 0x3000000},
13381{0x3000000, 0x51fd2c7c, 0xffd9ba98, 0x7fc00000, 0x3000000},
13382{0x3000000, 0x51fd2c7c, 0xffffffff, 0x7fc00000, 0x3000000},
13383{0x3000000, 0x51fd2c7c, 0x4f3495cb, 0x52016895, 0x3000010},
13384{0x3000000, 0x51fd2c7c, 0xe73a5134, 0xe73a5134, 0x3000010},
13385{0x3000000, 0x51fd2c7c, 0x7c994e9e, 0x7c994e9e, 0x3000010},
13386{0x3000000, 0x51fd2c7c, 0x6164bd6c, 0x6164bd6c, 0x3000010},
13387{0x3000000, 0x51fd2c7c, 0x9503366, 0x51fd2c7c, 0x3000010},
13388{0x3000000, 0x51fd2c7c, 0xbf5a97c9, 0x51fd2c7c, 0x3000010},
13389{0x3000000, 0x51fd2c7c, 0xe6ff1a14, 0xe6ff1a14, 0x3000010},
13390{0x3000000, 0x51fd2c7c, 0x77f31e2f, 0x77f31e2f, 0x3000010},
13391{0x3000000, 0x51fd2c7c, 0xaab4d7d8, 0x51fd2c7c, 0x3000010},
13392{0x3000000, 0x51fd2c7c, 0x966320b, 0x51fd2c7c, 0x3000010},
13393{0x3000000, 0x51fd2c7c, 0xb26bddee, 0x51fd2c7c, 0x3000010},
13394{0x3000000, 0x51fd2c7c, 0xb5c8e5d3, 0x51fd2c7c, 0x3000010},
13395{0x3000000, 0x51fd2c7c, 0x317285d3, 0x51fd2c7c, 0x3000010},
13396{0x3000000, 0x51fd2c7c, 0x3c9623b1, 0x51fd2c7c, 0x3000010},
13397{0x3000000, 0x51fd2c7c, 0x51fd2c7c, 0x527d2c7c, 0x3000000},
13398{0x3000000, 0x51fd2c7c, 0x7b906a6c, 0x7b906a6c, 0x3000010},
13399{0x3000000, 0x7b906a6c, 0x0, 0x7b906a6c, 0x3000000},
13400{0x3000000, 0x7b906a6c, 0x1, 0x7b906a6c, 0x3000080},
13401{0x3000000, 0x7b906a6c, 0x76, 0x7b906a6c, 0x3000080},
13402{0x3000000, 0x7b906a6c, 0x2b94, 0x7b906a6c, 0x3000080},
13403{0x3000000, 0x7b906a6c, 0x636d24, 0x7b906a6c, 0x3000080},
13404{0x3000000, 0x7b906a6c, 0x7fffff, 0x7b906a6c, 0x3000080},
13405{0x3000000, 0x7b906a6c, 0x800000, 0x7b906a6c, 0x3000010},
13406{0x3000000, 0x7b906a6c, 0x800002, 0x7b906a6c, 0x3000010},
13407{0x3000000, 0x7b906a6c, 0x1398437, 0x7b906a6c, 0x3000010},
13408{0x3000000, 0x7b906a6c, 0xba98d27, 0x7b906a6c, 0x3000010},
13409{0x3000000, 0x7b906a6c, 0xba98d7a, 0x7b906a6c, 0x3000010},
13410{0x3000000, 0x7b906a6c, 0x751f853a, 0x7b906f68, 0x3000010},
13411{0x3000000, 0x7b906a6c, 0x7f7ffff0, 0x7f800000, 0x3000014},
13412{0x3000000, 0x7b906a6c, 0x7f7fffff, 0x7f800000, 0x3000014},
13413{0x3000000, 0x7b906a6c, 0x7f800000, 0x7f800000, 0x3000000},
13414{0x3000000, 0x7b906a6c, 0x7f800001, 0x7fc00000, 0x3000001},
13415{0x3000000, 0x7b906a6c, 0x7f984a37, 0x7fc00000, 0x3000001},
13416{0x3000000, 0x7b906a6c, 0x7fbfffff, 0x7fc00000, 0x3000001},
13417{0x3000000, 0x7b906a6c, 0x7fc00000, 0x7fc00000, 0x3000000},
13418{0x3000000, 0x7b906a6c, 0x7fd9ba98, 0x7fc00000, 0x3000000},
13419{0x3000000, 0x7b906a6c, 0x7fffffff, 0x7fc00000, 0x3000000},
13420{0x3000000, 0x7b906a6c, 0x80000000, 0x7b906a6c, 0x3000000},
13421{0x3000000, 0x7b906a6c, 0x80000001, 0x7b906a6c, 0x3000080},
13422{0x3000000, 0x7b906a6c, 0x80000076, 0x7b906a6c, 0x3000080},
13423{0x3000000, 0x7b906a6c, 0x80002b94, 0x7b906a6c, 0x3000080},
13424{0x3000000, 0x7b906a6c, 0x80636d24, 0x7b906a6c, 0x3000080},
13425{0x3000000, 0x7b906a6c, 0x807fffff, 0x7b906a6c, 0x3000080},
13426{0x3000000, 0x7b906a6c, 0x80800000, 0x7b906a6c, 0x3000010},
13427{0x3000000, 0x7b906a6c, 0x80800002, 0x7b906a6c, 0x3000010},
13428{0x3000000, 0x7b906a6c, 0x81398437, 0x7b906a6c, 0x3000010},
13429{0x3000000, 0x7b906a6c, 0x8ba98d27, 0x7b906a6c, 0x3000010},
13430{0x3000000, 0x7b906a6c, 0x8ba98d7a, 0x7b906a6c, 0x3000010},
13431{0x3000000, 0x7b906a6c, 0xf51f853a, 0x7b906570, 0x3000010},
13432{0x3000000, 0x7b906a6c, 0xff7ffff0, 0xff7edf1b, 0x3000010},
13433{0x3000000, 0x7b906a6c, 0xff7fffff, 0xff7edf2a, 0x3000010},
13434{0x3000000, 0x7b906a6c, 0xff800000, 0xff800000, 0x3000000},
13435{0x3000000, 0x7b906a6c, 0xff800001, 0x7fc00000, 0x3000001},
13436{0x3000000, 0x7b906a6c, 0xff984a37, 0x7fc00000, 0x3000001},
13437{0x3000000, 0x7b906a6c, 0xffbfffff, 0x7fc00000, 0x3000001},
13438{0x3000000, 0x7b906a6c, 0xffc00000, 0x7fc00000, 0x3000000},
13439{0x3000000, 0x7b906a6c, 0xffd9ba98, 0x7fc00000, 0x3000000},
13440{0x3000000, 0x7b906a6c, 0xffffffff, 0x7fc00000, 0x3000000},
13441{0x3000000, 0x7b906a6c, 0x4f3495cb, 0x7b906a6c, 0x3000010},
13442{0x3000000, 0x7b906a6c, 0xe73a5134, 0x7b906a6c, 0x3000010},
13443{0x3000000, 0x7b906a6c, 0x7c994e9e, 0x7cbd6939, 0x3000000},
13444{0x3000000, 0x7b906a6c, 0x6164bd6c, 0x7b906a6c, 0x3000010},
13445{0x3000000, 0x7b906a6c, 0x9503366, 0x7b906a6c, 0x3000010},
13446{0x3000000, 0x7b906a6c, 0xbf5a97c9, 0x7b906a6c, 0x3000010},
13447{0x3000000, 0x7b906a6c, 0xe6ff1a14, 0x7b906a6c, 0x3000010},
13448{0x3000000, 0x7b906a6c, 0x77f31e2f, 0x7b915d8a, 0x3000010},
13449{0x3000000, 0x7b906a6c, 0xaab4d7d8, 0x7b906a6c, 0x3000010},
13450{0x3000000, 0x7b906a6c, 0x966320b, 0x7b906a6c, 0x3000010},
13451{0x3000000, 0x7b906a6c, 0xb26bddee, 0x7b906a6c, 0x3000010},
13452{0x3000000, 0x7b906a6c, 0xb5c8e5d3, 0x7b906a6c, 0x3000010},
13453{0x3000000, 0x7b906a6c, 0x317285d3, 0x7b906a6c, 0x3000010},
13454{0x3000000, 0x7b906a6c, 0x3c9623b1, 0x7b906a6c, 0x3000010},
13455{0x3000000, 0x7b906a6c, 0x51fd2c7c, 0x7b906a6c, 0x3000010},
13456{0x3000000, 0x7b906a6c, 0x7b906a6c, 0x7c106a6c, 0x3000000},