1 /*
2 * Library file_system_btree type test program
3 *
4 * Copyright (C) 2018-2021, Joachim Metz <joachim.metz@gmail.com>
5 *
6 * Refer to AUTHORS for acknowledgements.
7 *
8 * This program is free software: you can redistribute it and/or modify
9 * it under the terms of the GNU Lesser General Public License as published by
10 * the Free Software Foundation, either version 3 of the License, or
11 * (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU Lesser General Public License
19 * along with this program. If not, see <https://www.gnu.org/licenses/>.
20 */
21
22 #include <common.h>
23 #include <file_stream.h>
24 #include <types.h>
25
26 #if defined( HAVE_STDLIB_H ) || defined( WINAPI )
27 #include <stdlib.h>
28 #endif
29
30 #include "fsapfs_test_functions.h"
31 #include "fsapfs_test_libcerror.h"
32 #include "fsapfs_test_libfsapfs.h"
33 #include "fsapfs_test_macros.h"
34 #include "fsapfs_test_memory.h"
35 #include "fsapfs_test_unused.h"
36
37 #include "../libfsapfs/libfsapfs_file_system_btree.h"
38
39 uint8_t fsapfs_test_file_system_btree_data1[ 4096 ] = {
40 0xf0, 0xac, 0xe4, 0x68, 0xe9, 0xb0, 0xe2, 0x5a, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
41 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00,
42 0x03, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x0d, 0x01, 0x5b, 0x07,
43 0xff, 0xff, 0x00, 0x00, 0xb8, 0x05, 0x74, 0x02, 0x19, 0x00, 0x18, 0x00, 0x90, 0x00, 0x12, 0x00,
44 0x00, 0x00, 0x11, 0x00, 0x12, 0x00, 0x12, 0x00, 0x11, 0x00, 0x08, 0x00, 0x7e, 0x00, 0x6c, 0x00,
45 0x39, 0x00, 0x17, 0x00, 0x16, 0x01, 0x12, 0x00, 0x31, 0x00, 0x08, 0x00, 0x04, 0x01, 0x74, 0x00,
46 0x50, 0x00, 0x08, 0x00, 0x8a, 0x01, 0x74, 0x00, 0x58, 0x00, 0x1b, 0x00, 0x9c, 0x01, 0x12, 0x00,
47 0x93, 0x00, 0x1d, 0x00, 0xd8, 0x02, 0x12, 0x00, 0xd0, 0x00, 0x1d, 0x00, 0x44, 0x04, 0x12, 0x00,
48 0x73, 0x00, 0x08, 0x00, 0x90, 0x03, 0xa0, 0x00, 0x7b, 0x00, 0x08, 0x00, 0x14, 0x02, 0x04, 0x00,
49 0x83, 0x00, 0x10, 0x00, 0x2c, 0x02, 0x18, 0x00, 0xb0, 0x00, 0x08, 0x00, 0x04, 0x05, 0xa8, 0x00,
50 0xb8, 0x00, 0x08, 0x00, 0x4a, 0x02, 0x04, 0x00, 0xc0, 0x00, 0x10, 0x00, 0x46, 0x02, 0x18, 0x00,
51 0xed, 0x00, 0x08, 0x00, 0x78, 0x06, 0xa8, 0x00, 0xf5, 0x00, 0x08, 0x00, 0xb6, 0x03, 0x04, 0x00,
52 0xfd, 0x00, 0x10, 0x00, 0xb2, 0x03, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
53 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
54 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
55 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90,
56 0x05, 0xe4, 0x71, 0xb6, 0x72, 0x6f, 0x6f, 0x74, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
57 0x30, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x0c, 0x8c, 0xa6, 0xac, 0x70, 0x72, 0x69,
58 0x76, 0x61, 0x74, 0x65, 0x2d, 0x64, 0x69, 0x72, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
59 0x30, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x0b, 0x14, 0xbe, 0x9c, 0x2e, 0x66, 0x73,
60 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x64, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30,
61 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x0f, 0x14, 0x12, 0x11, 0x66, 0x73, 0x65, 0x76,
62 0x65, 0x6e, 0x74, 0x73, 0x64, 0x2d, 0x75, 0x75, 0x69, 0x64, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00,
63 0x00, 0x00, 0x30, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x11, 0x00, 0x00, 0x00, 0x00,
64 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00,
65 0x00, 0x00, 0x90, 0x11, 0x08, 0xef, 0x5f, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
66 0x30, 0x37, 0x37, 0x37, 0x32, 0x30, 0x35, 0x00, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30,
67 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
68 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90,
69 0x11, 0xec, 0xcb, 0xd5, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x37, 0x37,
70 0x37, 0x32, 0x30, 0x36, 0x00, 0x13, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x13, 0x00, 0x00,
71 0x00, 0x00, 0x00, 0x00, 0x60, 0x13, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00,
72 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
73 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
74 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
75 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
76 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
77 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
78 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
79 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
80 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
81 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
82 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
83 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
84 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
85 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
86 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
87 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
88 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
89 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
90 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
91 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
92 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
93 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
94 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
95 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
96 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
97 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
98 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
99 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
100 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
101 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
102 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
103 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
104 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
105 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
106 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
107 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
108 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
109 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
110 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
111 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
112 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
113 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
114 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
115 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
116 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
117 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
118 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
119 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
120 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
121 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
122 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
123 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
124 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
125 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
126 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
127 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
128 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
129 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
130 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
131 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
132 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
133 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
134 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
135 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
136 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
137 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
138 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
139 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
140 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
141 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
142 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
143 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
144 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
145 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
146 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
147 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
148 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
149 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
150 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
151 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
152 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
153 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
154 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
155 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
156 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
157 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
158 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
159 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
160 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
161 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
162 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
163 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
164 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
165 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
166 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
167 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
168 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
169 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
170 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
171 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
172 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
173 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
174 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
175 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
176 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
177 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
178 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
179 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
180 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
181 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
182 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
183 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
184 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
185 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
186 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
187 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
188 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
189 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
190 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
191 0xf3, 0x5e, 0x44, 0x06, 0x5a, 0x23, 0x52, 0x15, 0xe1, 0x50, 0x45, 0x06, 0x5a, 0x23, 0x52, 0x15,
192 0xe1, 0x50, 0x45, 0x06, 0x5a, 0x23, 0x52, 0x15, 0xf3, 0x5e, 0x44, 0x06, 0x5a, 0x23, 0x52, 0x15,
193 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
194 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x63, 0x00, 0x00, 0x00, 0x63, 0x00, 0x00, 0x00,
195 0x80, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x40, 0x00,
196 0x04, 0x02, 0x11, 0x00, 0x08, 0x20, 0x28, 0x00, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
197 0x30, 0x30, 0x37, 0x37, 0x37, 0x32, 0x30, 0x36, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
198 0x47, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
199 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
200 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x04, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00,
201 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
202 0xd0, 0x05, 0xb4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
203 0xf3, 0x5e, 0x44, 0x06, 0x5a, 0x23, 0x52, 0x15, 0xe1, 0x50, 0x45, 0x06, 0x5a, 0x23, 0x52, 0x15,
204 0xe1, 0x50, 0x45, 0x06, 0x5a, 0x23, 0x52, 0x15, 0xf3, 0x5e, 0x44, 0x06, 0x5a, 0x23, 0x52, 0x15,
205 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
206 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x63, 0x00, 0x00, 0x00, 0x63, 0x00, 0x00, 0x00,
207 0x80, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x48, 0x00,
208 0x04, 0x02, 0x11, 0x00, 0x08, 0x20, 0x28, 0x00, 0x05, 0x00, 0x08, 0x00, 0x30, 0x30, 0x30, 0x30,
209 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x37, 0x37, 0x37, 0x32, 0x30, 0x36, 0x00, 0x00, 0x00, 0x00,
210 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00,
211 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x00, 0x00,
212 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
213 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00,
214 0x00, 0x00, 0x00, 0x00, 0xd4, 0x69, 0x40, 0x06, 0x5a, 0x23, 0x52, 0x15, 0xe5, 0xa2, 0x42, 0x06,
215 0x5a, 0x23, 0x52, 0x15, 0xe5, 0xa2, 0x42, 0x06, 0x5a, 0x23, 0x52, 0x15, 0xd4, 0x69, 0x40, 0x06,
216 0x5a, 0x23, 0x52, 0x15, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
217 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x63, 0x00, 0x00, 0x00,
218 0x63, 0x00, 0x00, 0x00, 0x80, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
219 0x02, 0x00, 0x40, 0x00, 0x04, 0x02, 0x11, 0x00, 0x08, 0x20, 0x28, 0x00, 0x30, 0x30, 0x30, 0x30,
220 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x37, 0x37, 0x37, 0x32, 0x30, 0x35, 0x00, 0x00, 0x00, 0x00,
221 0x00, 0x00, 0x00, 0x00, 0x2e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00,
222 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2e, 0x00, 0x00, 0x00,
223 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0x02, 0x18, 0x00,
224 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
225 0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf3, 0x5e, 0x44, 0x06,
226 0x5a, 0x23, 0x52, 0x15, 0x08, 0x00, 0x9a, 0x03, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13, 0x00,
227 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf3, 0x5e, 0x44, 0x06, 0x5a, 0x23, 0x52, 0x15, 0xf3, 0x5e,
228 0x44, 0x06, 0x5a, 0x23, 0x52, 0x15, 0xf3, 0x5e, 0x44, 0x06, 0x5a, 0x23, 0x52, 0x15, 0xf3, 0x5e,
229 0x44, 0x06, 0x5a, 0x23, 0x52, 0x15, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
230 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x63, 0x00,
231 0x00, 0x00, 0x63, 0x00, 0x00, 0x00, 0x80, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
232 0x00, 0x00, 0x01, 0x00, 0x18, 0x00, 0x04, 0x02, 0x11, 0x00, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
233 0x30, 0x30, 0x30, 0x30, 0x37, 0x37, 0x37, 0x32, 0x30, 0x36, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
234 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x67, 0x00,
235 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5c, 0x04,
236 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
237 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x72, 0xc6, 0x73, 0x56, 0x55, 0x23, 0x52, 0x15,
238 0x40, 0xc1, 0x45, 0x06, 0x5a, 0x23, 0x52, 0x15, 0x1b, 0xf8, 0x45, 0x06, 0x5a, 0x23, 0x52, 0x15,
239 0x40, 0xc1, 0x45, 0x06, 0x5a, 0x23, 0x52, 0x15, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
240 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
241 0x63, 0x00, 0x00, 0x00, 0x63, 0x00, 0x00, 0x00, 0x80, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
242 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x38, 0x00, 0x04, 0x02, 0x0f, 0x00, 0x08, 0x20, 0x28, 0x00,
243 0x66, 0x73, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x64, 0x2d, 0x75, 0x75, 0x69, 0x64, 0x00, 0x00,
244 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
245 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
246 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x02, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00,
247 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
248 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x69, 0x40, 0x06, 0x5a, 0x23, 0x52, 0x15,
249 0x08, 0x00, 0xf0, 0x02, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00,
250 0x00, 0x00, 0xd4, 0x69, 0x40, 0x06, 0x5a, 0x23, 0x52, 0x15, 0xd4, 0x69, 0x40, 0x06, 0x5a, 0x23,
251 0x52, 0x15, 0xd4, 0x69, 0x40, 0x06, 0x5a, 0x23, 0x52, 0x15, 0xd4, 0x69, 0x40, 0x06, 0x5a, 0x23,
252 0x52, 0x15, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
253 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x63, 0x00, 0x00, 0x00, 0x63, 0x00,
254 0x00, 0x00, 0x80, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
255 0x18, 0x00, 0x04, 0x02, 0x11, 0x00, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
256 0x37, 0x37, 0x37, 0x32, 0x30, 0x35, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
257 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00,
258 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00,
259 0x00, 0x00, 0x00, 0x00, 0x5d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
260 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xff, 0xff, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00,
261 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x72, 0xc6, 0x73, 0x56, 0x55, 0x23, 0x52, 0x15,
262 0x72, 0xc6, 0x73, 0x56, 0x55, 0x23, 0x52, 0x15, 0x72, 0xc6, 0x73, 0x56, 0x55, 0x23, 0x52, 0x15,
263 0x72, 0xc6, 0x73, 0x56, 0x55, 0x23, 0x52, 0x15, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
264 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
265 0x63, 0x00, 0x00, 0x00, 0x63, 0x00, 0x00, 0x00, 0x80, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
266 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x10, 0x00, 0x04, 0x02, 0x0f, 0x00, 0x66, 0x73, 0x65, 0x76,
267 0x65, 0x6e, 0x74, 0x73, 0x64, 0x2d, 0x75, 0x75, 0x69, 0x64, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00,
268 0x00, 0x00, 0x00, 0x00, 0x72, 0xc6, 0x73, 0x56, 0x55, 0x23, 0x52, 0x15, 0x08, 0x00, 0x02, 0x00,
269 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x0f,
270 0x71, 0x56, 0x55, 0x23, 0x52, 0x15, 0xfc, 0x68, 0x44, 0x06, 0x5a, 0x23, 0x52, 0x15, 0xfc, 0x68,
271 0x44, 0x06, 0x5a, 0x23, 0x52, 0x15, 0xc1, 0xd6, 0x73, 0x56, 0x55, 0x23, 0x52, 0x15, 0x00, 0x80,
272 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00,
273 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x63, 0x00, 0x00, 0x00, 0x63, 0x00, 0x00, 0x00, 0xc0, 0x41,
274 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x10, 0x00, 0x04, 0x02,
275 0x0b, 0x00, 0x2e, 0x66, 0x73, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x64, 0x00, 0x00, 0x00, 0x00,
276 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x0f, 0x71, 0x56, 0x55, 0x23,
277 0x52, 0x15, 0x04, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
278 0x00, 0x00, 0x00, 0x00, 0x6b, 0x5b, 0xb8, 0x12, 0x55, 0x23, 0x52, 0x15, 0x6b, 0x5b, 0xb8, 0x12,
279 0x55, 0x23, 0x52, 0x15, 0x6b, 0x5b, 0xb8, 0x12, 0x55, 0x23, 0x52, 0x15, 0x6b, 0x5b, 0xb8, 0x12,
280 0x55, 0x23, 0x52, 0x15, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
281 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
282 0x00, 0x00, 0x00, 0x00, 0xa4, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
283 0x01, 0x00, 0x10, 0x00, 0x04, 0x02, 0x0c, 0x00, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x2d,
284 0x64, 0x69, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
285 0x6b, 0x5b, 0xb8, 0x12, 0x55, 0x23, 0x52, 0x15, 0x04, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
286 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xda, 0x41, 0xb8, 0x12, 0x55, 0x23,
287 0x52, 0x15, 0x85, 0x2b, 0x71, 0x56, 0x55, 0x23, 0x52, 0x15, 0x85, 0x2b, 0x71, 0x56, 0x55, 0x23,
288 0x52, 0x15, 0xda, 0x41, 0xb8, 0x12, 0x55, 0x23, 0x52, 0x15, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00,
289 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
290 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfd, 0x41, 0x00, 0x00, 0x00, 0x00,
291 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x08, 0x00, 0x04, 0x02, 0x05, 0x00, 0x72, 0x6f,
292 0x6f, 0x74, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xda, 0x41,
293 0xb8, 0x12, 0x55, 0x23, 0x52, 0x15, 0x04, 0x00, 0x42, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00,
294 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1d, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00,
295 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
296
297 #if defined( __GNUC__ ) && !defined( LIBFSAPFS_DLL_IMPORT )
298
299 /* Tests the libfsapfs_file_system_btree_initialize function
300 * Returns 1 if successful or 0 if not
301 */
fsapfs_test_file_system_btree_initialize(void)302 int fsapfs_test_file_system_btree_initialize(
303 void )
304 {
305 libcerror_error_t *error = NULL;
306 libfsapfs_file_system_btree_t *file_system_btree = NULL;
307 int result = 0;
308
309 #if defined( HAVE_FSAPFS_TEST_MEMORY )
310 int number_of_malloc_fail_tests = 1;
311 int number_of_memset_fail_tests = 1;
312 int test_number = 0;
313 #endif
314
315 /* Test regular cases
316 */
317 result = libfsapfs_file_system_btree_initialize(
318 &file_system_btree,
319 NULL,
320 NULL,
321 NULL,
322 NULL,
323 0,
324 0,
325 &error );
326
327 FSAPFS_TEST_ASSERT_EQUAL_INT(
328 "result",
329 result,
330 1 );
331
332 FSAPFS_TEST_ASSERT_IS_NOT_NULL(
333 "file_system_btree",
334 file_system_btree );
335
336 FSAPFS_TEST_ASSERT_IS_NULL(
337 "error",
338 error );
339
340 result = libfsapfs_file_system_btree_free(
341 &file_system_btree,
342 &error );
343
344 FSAPFS_TEST_ASSERT_EQUAL_INT(
345 "result",
346 result,
347 1 );
348
349 FSAPFS_TEST_ASSERT_IS_NULL(
350 "file_system_btree",
351 file_system_btree );
352
353 FSAPFS_TEST_ASSERT_IS_NULL(
354 "error",
355 error );
356
357 /* Test error cases
358 */
359 result = libfsapfs_file_system_btree_initialize(
360 NULL,
361 NULL,
362 NULL,
363 NULL,
364 NULL,
365 0,
366 0,
367 &error );
368
369 FSAPFS_TEST_ASSERT_EQUAL_INT(
370 "result",
371 result,
372 -1 );
373
374 FSAPFS_TEST_ASSERT_IS_NOT_NULL(
375 "error",
376 error );
377
378 libcerror_error_free(
379 &error );
380
381 file_system_btree = (libfsapfs_file_system_btree_t *) 0x12345678UL;
382
383 result = libfsapfs_file_system_btree_initialize(
384 &file_system_btree,
385 NULL,
386 NULL,
387 NULL,
388 NULL,
389 0,
390 0,
391 &error );
392
393 file_system_btree = NULL;
394
395 FSAPFS_TEST_ASSERT_EQUAL_INT(
396 "result",
397 result,
398 -1 );
399
400 FSAPFS_TEST_ASSERT_IS_NOT_NULL(
401 "error",
402 error );
403
404 libcerror_error_free(
405 &error );
406
407 #if defined( HAVE_FSAPFS_TEST_MEMORY )
408
409 for( test_number = 0;
410 test_number < number_of_malloc_fail_tests;
411 test_number++ )
412 {
413 /* Test libfsapfs_file_system_btree_initialize with malloc failing
414 */
415 fsapfs_test_malloc_attempts_before_fail = test_number;
416
417 result = libfsapfs_file_system_btree_initialize(
418 &file_system_btree,
419 NULL,
420 NULL,
421 NULL,
422 NULL,
423 0,
424 0,
425 &error );
426
427 if( fsapfs_test_malloc_attempts_before_fail != -1 )
428 {
429 fsapfs_test_malloc_attempts_before_fail = -1;
430
431 if( file_system_btree != NULL )
432 {
433 libfsapfs_file_system_btree_free(
434 &file_system_btree,
435 NULL );
436 }
437 }
438 else
439 {
440 FSAPFS_TEST_ASSERT_EQUAL_INT(
441 "result",
442 result,
443 -1 );
444
445 FSAPFS_TEST_ASSERT_IS_NULL(
446 "file_system_btree",
447 file_system_btree );
448
449 FSAPFS_TEST_ASSERT_IS_NOT_NULL(
450 "error",
451 error );
452
453 libcerror_error_free(
454 &error );
455 }
456 }
457 for( test_number = 0;
458 test_number < number_of_memset_fail_tests;
459 test_number++ )
460 {
461 /* Test libfsapfs_file_system_btree_initialize with memset failing
462 */
463 fsapfs_test_memset_attempts_before_fail = test_number;
464
465 result = libfsapfs_file_system_btree_initialize(
466 &file_system_btree,
467 NULL,
468 NULL,
469 NULL,
470 NULL,
471 0,
472 0,
473 &error );
474
475 if( fsapfs_test_memset_attempts_before_fail != -1 )
476 {
477 fsapfs_test_memset_attempts_before_fail = -1;
478
479 if( file_system_btree != NULL )
480 {
481 libfsapfs_file_system_btree_free(
482 &file_system_btree,
483 NULL );
484 }
485 }
486 else
487 {
488 FSAPFS_TEST_ASSERT_EQUAL_INT(
489 "result",
490 result,
491 -1 );
492
493 FSAPFS_TEST_ASSERT_IS_NULL(
494 "file_system_btree",
495 file_system_btree );
496
497 FSAPFS_TEST_ASSERT_IS_NOT_NULL(
498 "error",
499 error );
500
501 libcerror_error_free(
502 &error );
503 }
504 }
505 #endif /* defined( HAVE_FSAPFS_TEST_MEMORY ) */
506
507 return( 1 );
508
509 on_error:
510 if( error != NULL )
511 {
512 libcerror_error_free(
513 &error );
514 }
515 if( file_system_btree != NULL )
516 {
517 libfsapfs_file_system_btree_free(
518 &file_system_btree,
519 NULL );
520 }
521 return( 0 );
522 }
523
524 /* Tests the libfsapfs_file_system_btree_free function
525 * Returns 1 if successful or 0 if not
526 */
fsapfs_test_file_system_btree_free(void)527 int fsapfs_test_file_system_btree_free(
528 void )
529 {
530 libcerror_error_t *error = NULL;
531 int result = 0;
532
533 /* Test error cases
534 */
535 result = libfsapfs_file_system_btree_free(
536 NULL,
537 &error );
538
539 FSAPFS_TEST_ASSERT_EQUAL_INT(
540 "result",
541 result,
542 -1 );
543
544 FSAPFS_TEST_ASSERT_IS_NOT_NULL(
545 "error",
546 error );
547
548 libcerror_error_free(
549 &error );
550
551 return( 1 );
552
553 on_error:
554 if( error != NULL )
555 {
556 libcerror_error_free(
557 &error );
558 }
559 return( 0 );
560 }
561
562 #endif /* defined( __GNUC__ ) && !defined( LIBFSAPFS_DLL_IMPORT ) */
563
564 /* The main program
565 */
566 #if defined( HAVE_WIDE_SYSTEM_CHARACTER )
wmain(int argc FSAPFS_TEST_ATTRIBUTE_UNUSED,wchar_t * const argv[]FSAPFS_TEST_ATTRIBUTE_UNUSED)567 int wmain(
568 int argc FSAPFS_TEST_ATTRIBUTE_UNUSED,
569 wchar_t * const argv[] FSAPFS_TEST_ATTRIBUTE_UNUSED )
570 #else
571 int main(
572 int argc FSAPFS_TEST_ATTRIBUTE_UNUSED,
573 char * const argv[] FSAPFS_TEST_ATTRIBUTE_UNUSED )
574 #endif
575 {
576 FSAPFS_TEST_UNREFERENCED_PARAMETER( argc )
577 FSAPFS_TEST_UNREFERENCED_PARAMETER( argv )
578
579 #if defined( __GNUC__ ) && !defined( LIBFSAPFS_DLL_IMPORT )
580
581 FSAPFS_TEST_RUN(
582 "libfsapfs_file_system_btree_initialize",
583 fsapfs_test_file_system_btree_initialize );
584
585 FSAPFS_TEST_RUN(
586 "libfsapfs_file_system_btree_free",
587 fsapfs_test_file_system_btree_free );
588
589 /* TODO add tests for libfsapfs_file_system_btree_get_root_node */
590
591 /* TODO add tests for libfsapfs_file_system_btree_get_sub_node */
592
593 /* TODO add tests for libfsapfs_file_system_btree_get_entry_from_node_by_identifier */
594
595 /* TODO add tests for libfsapfs_file_system_btree_get_directory_record_from_node_by_utf8_name */
596
597 /* TODO add tests for libfsapfs_file_system_btree_get_directory_record_from_node_by_utf16_name */
598
599 /* TODO add tests for libfsapfs_file_system_btree_get_directory_entries */
600
601 /* TODO add tests for libfsapfs_file_system_btree_get_directory_entries_from_node */
602
603 /* TODO add tests for libfsapfs_file_system_btree_get_file_extents */
604
605 /* TODO add tests for libfsapfs_file_system_btree_get_file_extents_from_node */
606
607 /* TODO add tests for libfsapfs_file_system_btree_get_inode_by_identifier */
608
609 /* TODO add tests for libfsapfs_file_system_btree_get_inode_by_utf8_path */
610
611 /* TODO add tests for libfsapfs_file_system_btree_get_inode_by_utf16_path */
612
613 #endif /* defined( __GNUC__ ) && !defined( LIBFSAPFS_DLL_IMPORT ) */
614
615 return( EXIT_SUCCESS );
616
617 on_error:
618 return( EXIT_FAILURE );
619 }
620
621