1 /**
2  * Copyright © 2019 IBM Corporation
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 #include "elog_entry.hpp"
17 #include "extensions/openpower-pels/pel.hpp"
18 #include "pel_utils.hpp"
19 
20 #include <filesystem>
21 #include <fstream>
22 
23 #include <gtest/gtest.h>
24 
25 namespace fs = std::filesystem;
26 using namespace openpower::pels;
27 
28 class PELTest : public CleanLogID
29 {
30 };
31 
32 // A PEL from a real system
33 const std::vector<uint8_t> realPELData{
34     0x50, 0x48, 0x0,  0x30, 0x1,  0x0,  0xA8, 0x0,  0x20, 0x19, 0x6,  0x14,
35     0x12, 0x0,  0x41, 0x51, 0x20, 0x19, 0x6,  0x14, 0x12, 0x0,  0x41, 0x56,
36     0x45, 0x0,  0x1,  0x14, 0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,
37     0x0,  0x0,  0x0,  0x0,  0x50, 0x1,  0xF,  0xA5, 0x50, 0x1,  0xF,  0xA5,
38     0x55, 0x48, 0x0,  0x18, 0x1,  0x0,  0xF1, 0x0,  0x81, 0x3,  0x0,  0x1,
39     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x60, 0x0,  0x0,  0x1,  0x44, 0x0,
40     0x50, 0x53, 0x0,  0x74, 0x1,  0x1,  0xA8, 0x0,  0x2,  0x1,  0x0,  0x9,
41     0x0,  0x0,  0x0,  0x6C, 0x3,  0x1,  0x0,  0xF0, 0x2C, 0xC6, 0x1B, 0x10,
42     0xC1, 0x39, 0x20, 0x0,  0x40, 0x0,  0x0,  0xFF, 0x10, 0x69, 0x14, 0xD8,
43     0x0,  0x0,  0x0,  0x1,  0x0,  0x0,  0x0,  0x3,  0x0,  0x0,  0x0,  0x0,
44     0x42, 0x31, 0x38, 0x31, 0x41, 0x38, 0x30, 0x45, 0x20, 0x20, 0x20, 0x20,
45     0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
46     0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0xC0, 0x0,  0x0,  0x9,
47     0x10, 0x28, 0x48, 0x0,  0x49, 0x44, 0xC,  0x42, 0x46, 0x53, 0x50, 0x53,
48     0x50, 0x30, 0x34, 0x0,  0x10, 0x28, 0x4C, 0x0,  0x49, 0x44, 0xC,  0x42,
49     0x46, 0x53, 0x50, 0x53, 0x50, 0x30, 0x36, 0x0,  0x45, 0x48, 0x0,  0x60,
50     0x1,  0x0,  0x31, 0x0,  0x38, 0x34, 0x30, 0x38, 0x2D, 0x45, 0x38, 0x45,
51     0x31, 0x30, 0x36, 0x37, 0x41, 0x44, 0x56, 0x0,  0x0,  0x0,  0x0,  0x0,
52     0x54, 0x56, 0x38, 0x36, 0x30, 0x5F, 0x32, 0x30, 0x37, 0x0,  0x0,  0x0,
53     0x0,  0x0,  0x0,  0x0,  0x62, 0x30, 0x36, 0x31, 0x33, 0x61, 0x5F, 0x31,
54     0x39, 0x32, 0x34, 0x2E, 0x38, 0x36, 0x31, 0x0,  0x0,  0x0,  0x0,  0x0,
55     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x14,
56     0x42, 0x31, 0x38, 0x31, 0x41, 0x38, 0x30, 0x45, 0x5F, 0x32, 0x43, 0x43,
57     0x36, 0x31, 0x42, 0x31, 0x30, 0x0,  0x0,  0x0,  0x55, 0x44, 0x0,  0x9C,
58     0x2,  0x4,  0x31, 0x0,  0x0,  0x0,  0xB,  0x53, 0x2F, 0x6F, 0x70, 0x74,
59     0x2F, 0x66, 0x69, 0x70, 0x73, 0x2F, 0x62, 0x69, 0x6E, 0x2F, 0x66, 0x77,
60     0x64, 0x62, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x0,  0x0,  0x0,  0x0,
61     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,
62     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,
63     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,
64     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,
65     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x66, 0x69, 0x70, 0x73,
66     0x38, 0x36, 0x31, 0x2F, 0x62, 0x30, 0x36, 0x31, 0x33, 0x61, 0x5F, 0x31,
67     0x39, 0x32, 0x34, 0x2E, 0x38, 0x36, 0x31, 0x0,  0x0,  0x0,  0x0,  0x0,
68     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x1,  0x0,  0x0,  0x0,  0x2,
69     0x50, 0x0,  0x0,  0x2,  0x20, 0x0,  0x1,  0xC,  0x0,  0x0,  0x0,  0x9,
70     0x0,  0x4,  0x70, 0xD0, 0x0,  0x0,  0x0,  0x0,  0x4D, 0x54, 0x0,  0x1C,
71     0x1,  0x0,  0x31, 0x0,  0x38, 0x34, 0x30, 0x38, 0x2D, 0x45, 0x38, 0x45,
72     0x31, 0x30, 0x36, 0x37, 0x41, 0x44, 0x56, 0x0,  0x0,  0x0,  0x0,  0x0,
73     0x55, 0x44, 0x1,  0xF8, 0x1,  0xC,  0x31, 0x0,  0x1,  0x28, 0x4,  0x42,
74     0x46, 0x57, 0x44, 0x42, 0x45, 0x52, 0x52, 0x0,  0x0,  0x0,  0x0,  0x0,
75     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x1,  0xF0, 0x0,  0x0,  0x0,  0x0,
76     0x0,  0x0,  0x1,  0xF0, 0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x7,
77     0x0,  0x0,  0x5,  0x1C, 0x2D, 0x86, 0x75, 0xD0, 0x0,  0x0,  0xC,  0x9B,
78     0x0,  0x30, 0x43, 0x4F, 0x27, 0x67, 0x44, 0xB7, 0x0,  0x0,  0x0,  0xB5,
79     0x66, 0x77, 0x64, 0x62, 0x54, 0x72, 0x61, 0x63, 0x45, 0x72, 0x72, 0x49,
80     0x6E, 0x66, 0x6F, 0x0,  0x73, 0x65, 0x74, 0x42, 0x75, 0x73, 0x79, 0x54,
81     0x69, 0x6D, 0x65, 0x6F, 0x75, 0x74, 0x0,  0x0,  0x0,  0x0,  0x0,  0x1A,
82     0x0,  0x0,  0xA8, 0x9,  0x50, 0x1,  0xE,  0xE3, 0x0,  0x0,  0x0,  0x0,
83     0x0,  0x0,  0x0,  0x4C, 0x0,  0x0,  0x5,  0x33, 0x1F, 0xEA, 0xE7, 0x12,
84     0x0,  0x0,  0xD,  0x9D, 0x0,  0x30, 0x43, 0x4F, 0x27, 0x67, 0x44, 0xB7,
85     0x0,  0x0,  0x0,  0xB5, 0x66, 0x77, 0x64, 0x62, 0x54, 0x72, 0x61, 0x63,
86     0x45, 0x72, 0x72, 0x49, 0x6E, 0x66, 0x6F, 0x0,  0x73, 0x65, 0x74, 0x42,
87     0x75, 0x73, 0x79, 0x54, 0x69, 0x6D, 0x65, 0x6F, 0x75, 0x74, 0x0,  0x0,
88     0x0,  0x0,  0x0,  0x1A, 0x0,  0x0,  0xA8, 0x9,  0x50, 0x1,  0xF,  0xA,
89     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x4C, 0x0,  0x0,  0x5,  0x38,
90     0x26, 0x43, 0xFB, 0x66, 0x0,  0x0,  0xB,  0x7D, 0x0,  0x30, 0x43, 0x4F,
91     0x27, 0x67, 0x44, 0xB7, 0x0,  0x0,  0x0,  0xB5, 0x66, 0x77, 0x64, 0x62,
92     0x54, 0x72, 0x61, 0x63, 0x45, 0x72, 0x72, 0x49, 0x6E, 0x66, 0x6F, 0x0,
93     0x73, 0x65, 0x74, 0x42, 0x75, 0x73, 0x79, 0x54, 0x69, 0x6D, 0x65, 0x6F,
94     0x75, 0x74, 0x0,  0x0,  0x0,  0x0,  0x0,  0x1A, 0x0,  0x0,  0xA8, 0x9,
95     0x50, 0x1,  0xF,  0xE,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x4C,
96     0x0,  0x0,  0x5,  0x72, 0x13, 0xB8, 0x3D, 0x1C, 0x0,  0x0,  0x23, 0x33,
97     0x0,  0x30, 0x43, 0x4F, 0x27, 0x67, 0x44, 0xB7, 0x0,  0x0,  0x0,  0xB5,
98     0x66, 0x77, 0x64, 0x62, 0x54, 0x72, 0x61, 0x63, 0x45, 0x72, 0x72, 0x49,
99     0x6E, 0x66, 0x6F, 0x0,  0x73, 0x65, 0x74, 0x42, 0x75, 0x73, 0x79, 0x54,
100     0x69, 0x6D, 0x65, 0x6F, 0x75, 0x74, 0x0,  0x0,  0x0,  0x0,  0x0,  0x1A,
101     0x0,  0x0,  0xA8, 0x9,  0x50, 0x1,  0xF,  0x5D, 0x0,  0x0,  0x0,  0x0,
102     0x0,  0x0,  0x0,  0x4C, 0x0,  0x0,  0x5,  0x88, 0x20, 0xE1, 0xE0, 0x7,
103     0x0,  0x0,  0xD,  0x82, 0x0,  0x30, 0x43, 0x4F, 0x27, 0x67, 0x44, 0xB7,
104     0x0,  0x0,  0x0,  0xB5, 0x66, 0x77, 0x64, 0x62, 0x54, 0x72, 0x61, 0x63,
105     0x45, 0x72, 0x72, 0x49, 0x6E, 0x66, 0x6F, 0x0,  0x73, 0x65, 0x74, 0x42,
106     0x75, 0x73, 0x79, 0x54, 0x69, 0x6D, 0x65, 0x6F, 0x75, 0x74, 0x0,  0x0,
107     0x0,  0x0,  0x0,  0x1A, 0x0,  0x0,  0xA8, 0x9,  0x50, 0x1,  0xF,  0x9B,
108     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x4C, 0x0,  0x0,  0x5,  0x89,
109     0x12, 0xE,  0xFE, 0x6E, 0x0,  0x0,  0xB,  0x69, 0x0,  0x30, 0x43, 0x4F,
110     0x27, 0x67, 0x44, 0xB7, 0x0,  0x0,  0x0,  0xB5, 0x66, 0x77, 0x64, 0x62,
111     0x54, 0x72, 0x61, 0x63, 0x45, 0x72, 0x72, 0x49, 0x6E, 0x66, 0x6F, 0x0,
112     0x73, 0x65, 0x74, 0x42, 0x75, 0x73, 0x79, 0x54, 0x69, 0x6D, 0x65, 0x6F,
113     0x75, 0x74, 0x0,  0x0,  0x0,  0x0,  0x0,  0x1A, 0x0,  0x0,  0xA8, 0x9,
114     0x50, 0x1,  0xF,  0xA4, 0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x4C,
115     0x55, 0x44, 0x0,  0x40, 0x1,  0x1,  0xA8, 0x0,  0x6E, 0x6F, 0x20, 0x73,
116     0x75, 0x63, 0x68, 0x20, 0x74, 0x61, 0x62, 0x6C, 0x65, 0x3A, 0x20, 0x63,
117     0x62, 0x6C, 0x76, 0x5F, 0x63, 0x61, 0x62, 0x6C, 0x65, 0x5F, 0x63, 0x6F,
118     0x6E, 0x6E, 0x65, 0x63, 0x74, 0x69, 0x6F, 0x6E, 0x5F, 0x73, 0x74, 0x61,
119     0x74, 0x75, 0x73, 0x5F, 0x70, 0x75, 0x62, 0x6C, 0x69, 0x63, 0x5F, 0x76,
120     0x69, 0x65, 0x77, 0x0,  0x55, 0x44, 0x1,  0xE8, 0x1,  0xC,  0x31, 0x0,
121     0x1,  0x28, 0x4,  0x42, 0x46, 0x57, 0x44, 0x42, 0x53, 0x52, 0x56, 0x0,
122     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x1,  0xE0,
123     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x1,  0xE0, 0x0,  0x0,  0x0,  0x0,
124     0x0,  0x0,  0x0,  0xB,  0x0,  0x0,  0x5,  0x89, 0x11, 0x9B, 0xBA, 0x9,
125     0x0,  0x0,  0x23, 0x88, 0x0,  0x18, 0x43, 0x4F, 0x80, 0x10, 0xFA, 0x28,
126     0x0,  0x0,  0xC,  0xFD, 0x73, 0x65, 0x74, 0x42, 0x75, 0x73, 0x79, 0x54,
127     0x69, 0x6D, 0x65, 0x6F, 0x75, 0x74, 0x0,  0x0,  0xDB, 0xFB, 0xCB, 0x98,
128     0x0,  0x1,  0xD4, 0xC0, 0x0,  0x0,  0x0,  0x34, 0x0,  0x0,  0x5,  0x89,
129     0x12, 0x4,  0x1A, 0xF1, 0x0,  0x0,  0x23, 0x88, 0x0,  0x18, 0x43, 0x4F,
130     0xCB, 0x1C, 0xBA, 0x66, 0x0,  0x0,  0x1F, 0x6D, 0x63, 0x68, 0x61, 0x6E,
131     0x67, 0x65, 0x55, 0x73, 0x65, 0x43, 0x6E, 0x74, 0x0,  0x0,  0x0,  0x0,
132     0x0,  0x0,  0x0,  0xC,  0xDB, 0xFB, 0xCB, 0x98, 0x0,  0x0,  0x0,  0x34,
133     0x0,  0x0,  0x5,  0x89, 0x12, 0x36, 0x78, 0xA9, 0x0,  0x0,  0x23, 0x88,
134     0x0,  0x0,  0x43, 0x4F, 0xCB, 0x12, 0xB6, 0x5D, 0x0,  0x0,  0x9,  0xF2,
135     0x0,  0x0,  0x0,  0x1C, 0x0,  0x0,  0x5,  0x89, 0x12, 0x36, 0xB8, 0x93,
136     0x0,  0x0,  0x23, 0x88, 0x0,  0x10, 0x43, 0x4F, 0x89, 0x7D, 0x0,  0x8C,
137     0x0,  0x0,  0x23, 0x5D, 0x73, 0x65, 0x72, 0x76, 0x44, 0x65, 0x74, 0x61,
138     0x63, 0x68, 0x0,  0x0,  0xDB, 0xFB, 0xCB, 0x98, 0x0,  0x0,  0x0,  0x2C,
139     0x0,  0x0,  0x5,  0x89, 0x12, 0x36, 0xD2, 0x7A, 0x0,  0x0,  0x23, 0x88,
140     0x0,  0x0,  0x43, 0x4F, 0xBD, 0xF0, 0x6E, 0xE3, 0x0,  0x0,  0x9,  0xF4,
141     0x0,  0x0,  0x0,  0x1C, 0x0,  0x0,  0x5,  0x89, 0x12, 0xAA, 0x51, 0x96,
142     0x0,  0x0,  0x23, 0x88, 0x0,  0x0,  0x43, 0x4F, 0x8F, 0x6A, 0x83, 0x3,
143     0x0,  0x0,  0x9,  0xA9, 0x0,  0x0,  0x0,  0x1C, 0x0,  0x0,  0x5,  0x89,
144     0x12, 0xAE, 0x7B, 0x85, 0x0,  0x0,  0x23, 0x88, 0x0,  0x10, 0x43, 0x4F,
145     0xF3, 0x35, 0x3F, 0x8D, 0x0,  0x0,  0x22, 0x35, 0x73, 0x65, 0x72, 0x76,
146     0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x0,  0x0,  0x9D, 0x86, 0xE6, 0xD3,
147     0x0,  0x0,  0x0,  0x2C, 0x0,  0x0,  0x5,  0x89, 0x13, 0xA5, 0x23, 0xFA,
148     0x0,  0x0,  0x23, 0x88, 0x0,  0x0,  0x43, 0x4F, 0xFC, 0x5A, 0x7F, 0x97,
149     0x0,  0x0,  0x9,  0xB3, 0x0,  0x0,  0x0,  0x1C, 0x0,  0x0,  0x5,  0x89,
150     0x14, 0x5B, 0x57, 0xCE, 0x0,  0x0,  0x23, 0x88, 0x0,  0x0,  0x43, 0x4F,
151     0x4,  0x88, 0x89, 0x7B, 0x0,  0x0,  0x9,  0x3B, 0x0,  0x0,  0x0,  0x1C,
152     0x0,  0x0,  0x5,  0x89, 0x14, 0x5F, 0xCC, 0x54, 0x0,  0x0,  0x23, 0x88,
153     0x0,  0x50, 0x43, 0x4F, 0x94, 0xA2, 0x26, 0x7C, 0x0,  0x0,  0x14, 0xE1,
154     0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x53, 0x74, 0x6D, 0x74, 0x0,
155     0x0,  0x0,  0x0,  0x1,  0x6E, 0x6F, 0x20, 0x73, 0x75, 0x63, 0x68, 0x20,
156     0x74, 0x61, 0x62, 0x6C, 0x65, 0x3A, 0x20, 0x63, 0x62, 0x6C, 0x76, 0x5F,
157     0x63, 0x61, 0x62, 0x6C, 0x65, 0x5F, 0x63, 0x6F, 0x6E, 0x6E, 0x65, 0x63,
158     0x74, 0x69, 0x6F, 0x6E, 0x5F, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5F,
159     0x70, 0x75, 0x62, 0x6C, 0x69, 0x63, 0x5F, 0x76, 0x69, 0x65, 0x77, 0x0,
160     0x10, 0x69, 0x14, 0xD8, 0x0,  0x0,  0x0,  0x3,  0x0,  0x0,  0x0,  0x6C,
161     0x55, 0x44, 0x3,  0xC0, 0x1,  0xC,  0x31, 0x0,  0x1,  0x28, 0x4,  0x42,
162     0x46, 0x57, 0x44, 0x42, 0x53, 0x51, 0x4C, 0x0,  0x0,  0x0,  0x0,  0x0,
163     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x3,  0xB8, 0x0,  0x0,  0x0,  0x0,
164     0x0,  0x0,  0x3,  0xB8, 0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0xB,
165     0x0,  0x0,  0x5,  0x89, 0x5,  0xFC, 0x1E, 0x6C, 0x0,  0x0,  0x23, 0x88,
166     0x0,  0x40, 0x43, 0x4F, 0x92, 0x41, 0x1B, 0xD4, 0x0,  0x0,  0x21, 0x6,
167     0x14, 0x9,  0xC2, 0x11, 0x73, 0x65, 0x6C, 0x65, 0x63, 0x74, 0x20, 0x2A,
168     0x20, 0x66, 0x72, 0x6F, 0x6D, 0x20, 0x73, 0x79, 0x73, 0x2E, 0x70, 0x6F,
169     0x6C, 0x69, 0x63, 0x79, 0x20, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x6E,
170     0x61, 0x6D, 0x65, 0x20, 0x3D, 0x20, 0x27, 0x70, 0x6F, 0x77, 0x65, 0x72,
171     0x2D, 0x64, 0x65, 0x66, 0x2D, 0x66, 0x69, 0x6C, 0x65, 0x6E, 0x61, 0x6D,
172     0x65, 0x73, 0x27, 0x0,  0x0,  0x0,  0x0,  0x5C, 0x0,  0x0,  0x5,  0x89,
173     0x6,  0xB1, 0x42, 0x3B, 0x0,  0x0,  0x23, 0x88, 0x0,  0x40, 0x43, 0x4F,
174     0x92, 0x41, 0x1B, 0xD4, 0x0,  0x0,  0x21, 0x6,  0x14, 0x9,  0xC2, 0x11,
175     0x73, 0x65, 0x6C, 0x65, 0x63, 0x74, 0x20, 0x2A, 0x20, 0x66, 0x72, 0x6F,
176     0x6D, 0x20, 0x73, 0x79, 0x73, 0x2E, 0x70, 0x6F, 0x6C, 0x69, 0x63, 0x79,
177     0x20, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x20,
178     0x3D, 0x20, 0x27, 0x70, 0x6F, 0x77, 0x65, 0x72, 0x2D, 0x64, 0x65, 0x66,
179     0x2D, 0x66, 0x69, 0x6C, 0x65, 0x6E, 0x61, 0x6D, 0x65, 0x73, 0x27, 0x0,
180     0x0,  0x0,  0x0,  0x5C, 0x0,  0x0,  0x5,  0x89, 0x7,  0x14, 0xD2, 0x68,
181     0x0,  0x0,  0x23, 0x88, 0x0,  0x40, 0x43, 0x4F, 0x92, 0x41, 0x1B, 0xD4,
182     0x0,  0x0,  0x21, 0x6,  0x14, 0x9,  0xC2, 0x11, 0x73, 0x65, 0x6C, 0x65,
183     0x63, 0x74, 0x20, 0x2A, 0x20, 0x66, 0x72, 0x6F, 0x6D, 0x20, 0x73, 0x79,
184     0x73, 0x2E, 0x70, 0x6F, 0x6C, 0x69, 0x63, 0x79, 0x20, 0x77, 0x68, 0x65,
185     0x72, 0x65, 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x20, 0x3D, 0x20, 0x27, 0x70,
186     0x6F, 0x77, 0x65, 0x72, 0x2D, 0x64, 0x65, 0x66, 0x2D, 0x66, 0x69, 0x6C,
187     0x65, 0x6E, 0x61, 0x6D, 0x65, 0x73, 0x27, 0x0,  0x0,  0x0,  0x0,  0x5C,
188     0x0,  0x0,  0x5,  0x89, 0x7,  0x9A, 0x9D, 0x6F, 0x0,  0x0,  0x23, 0x88,
189     0x0,  0x40, 0x43, 0x4F, 0x92, 0x41, 0x1B, 0xD4, 0x0,  0x0,  0x21, 0x6,
190     0x14, 0x9,  0xC2, 0x11, 0x73, 0x65, 0x6C, 0x65, 0x63, 0x74, 0x20, 0x2A,
191     0x20, 0x66, 0x72, 0x6F, 0x6D, 0x20, 0x73, 0x79, 0x73, 0x2E, 0x70, 0x6F,
192     0x6C, 0x69, 0x63, 0x79, 0x20, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x6E,
193     0x61, 0x6D, 0x65, 0x20, 0x3D, 0x20, 0x27, 0x70, 0x6F, 0x77, 0x65, 0x72,
194     0x2D, 0x64, 0x65, 0x66, 0x2D, 0x66, 0x69, 0x6C, 0x65, 0x6E, 0x61, 0x6D,
195     0x65, 0x73, 0x27, 0x0,  0x0,  0x0,  0x0,  0x5C, 0x0,  0x0,  0x5,  0x89,
196     0x7,  0xD4, 0xF8, 0x2D, 0x0,  0x0,  0x23, 0x88, 0x0,  0x40, 0x43, 0x4F,
197     0x92, 0x41, 0x1B, 0xD4, 0x0,  0x0,  0x21, 0x6,  0x14, 0x9,  0xC2, 0x11,
198     0x73, 0x65, 0x6C, 0x65, 0x63, 0x74, 0x20, 0x2A, 0x20, 0x66, 0x72, 0x6F,
199     0x6D, 0x20, 0x73, 0x79, 0x73, 0x2E, 0x70, 0x6F, 0x6C, 0x69, 0x63, 0x79,
200     0x20, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x20,
201     0x3D, 0x20, 0x27, 0x70, 0x6F, 0x77, 0x65, 0x72, 0x2D, 0x64, 0x65, 0x66,
202     0x2D, 0x66, 0x69, 0x6C, 0x65, 0x6E, 0x61, 0x6D, 0x65, 0x73, 0x27, 0x0,
203     0x0,  0x0,  0x0,  0x5C, 0x0,  0x0,  0x5,  0x89, 0x12, 0xB4, 0xBC, 0xA6,
204     0x0,  0x0,  0x23, 0x88, 0x0,  0x38, 0x43, 0x4F, 0x92, 0x41, 0x1B, 0xD4,
205     0x0,  0x0,  0x21, 0x6,  0x9D, 0x86, 0xE6, 0xD3, 0x41, 0x54, 0x54, 0x41,
206     0x43, 0x48, 0x20, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x20,
207     0x27, 0x2F, 0x6F, 0x70, 0x74, 0x2F, 0x70, 0x31, 0x2F, 0x66, 0x77, 0x73,
208     0x6D, 0x2F, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6D, 0x2E, 0x73, 0x79, 0x73,
209     0x27, 0x20, 0x41, 0x53, 0x20, 0x73, 0x79, 0x73, 0x3B, 0xA,  0x0,  0x0,
210     0x0,  0x0,  0x0,  0x54, 0x0,  0x0,  0x5,  0x89, 0x12, 0xBC, 0xD8, 0x8A,
211     0x0,  0x0,  0x23, 0x88, 0x0,  0x38, 0x43, 0x4F, 0x92, 0x41, 0x1B, 0xD4,
212     0x0,  0x0,  0x21, 0x6,  0x9D, 0x86, 0xE6, 0xD3, 0x41, 0x54, 0x54, 0x41,
213     0x43, 0x48, 0x20, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x20,
214     0x27, 0x2F, 0x6F, 0x70, 0x74, 0x2F, 0x70, 0x30, 0x2F, 0x66, 0x77, 0x73,
215     0x6D, 0x2F, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6D, 0x2E, 0x70, 0x30, 0x27,
216     0x20, 0x41, 0x53, 0x20, 0x70, 0x30, 0x3B, 0xA,  0x0,  0x0,  0x0,  0x0,
217     0x0,  0x0,  0x0,  0x54, 0x0,  0x0,  0x5,  0x89, 0x13, 0x97, 0x51, 0x64,
218     0x0,  0x0,  0x23, 0x88, 0x0,  0x38, 0x43, 0x4F, 0x92, 0x41, 0x1B, 0xD4,
219     0x0,  0x0,  0x21, 0x6,  0x9D, 0x86, 0xE6, 0xD3, 0x41, 0x54, 0x54, 0x41,
220     0x43, 0x48, 0x20, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x20,
221     0x27, 0x2F, 0x6F, 0x70, 0x74, 0x2F, 0x70, 0x31, 0x2F, 0x66, 0x77, 0x73,
222     0x6D, 0x2F, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6D, 0x2E, 0x70, 0x31, 0x27,
223     0x20, 0x41, 0x53, 0x20, 0x70, 0x31, 0x3B, 0xA,  0x0,  0x0,  0x0,  0x0,
224     0x0,  0x0,  0x0,  0x54, 0x0,  0x0,  0x5,  0x89, 0x13, 0xA2, 0x85, 0x51,
225     0x0,  0x0,  0x23, 0x88, 0x0,  0x38, 0x43, 0x4F, 0x92, 0x41, 0x1B, 0xD4,
226     0x0,  0x0,  0x21, 0x6,  0x9D, 0x86, 0xE6, 0xD3, 0x41, 0x54, 0x54, 0x41,
227     0x43, 0x48, 0x20, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x20,
228     0x27, 0x2F, 0x6F, 0x70, 0x74, 0x2F, 0x70, 0x33, 0x2F, 0x66, 0x77, 0x73,
229     0x6D, 0x2F, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6D, 0x2E, 0x70, 0x33, 0x27,
230     0x20, 0x41, 0x53, 0x20, 0x70, 0x33, 0x3B, 0xA,  0x0,  0x0,  0x0,  0x0,
231     0x0,  0x0,  0x0,  0x54, 0x0,  0x0,  0x5,  0x89, 0x14, 0x5B, 0x84, 0x7B,
232     0x0,  0x0,  0x23, 0x88, 0x0,  0x58, 0x43, 0x4F, 0x92, 0x41, 0x1B, 0xD4,
233     0x0,  0x0,  0x21, 0x6,  0x9D, 0x86, 0xE6, 0xD3, 0x73, 0x65, 0x6C, 0x65,
234     0x63, 0x74, 0x20, 0x65, 0x72, 0x72, 0x6F, 0x72, 0x5F, 0x65, 0x69, 0x64,
235     0x20, 0x66, 0x72, 0x6F, 0x6D, 0x20, 0x63, 0x62, 0x6C, 0x76, 0x5F, 0x63,
236     0x61, 0x62, 0x6C, 0x65, 0x5F, 0x63, 0x6F, 0x6E, 0x6E, 0x65, 0x63, 0x74,
237     0x69, 0x6F, 0x6E, 0x5F, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5F, 0x70,
238     0x75, 0x62, 0x6C, 0x69, 0x63, 0x5F, 0x76, 0x69, 0x65, 0x77, 0x20, 0x77,
239     0x68, 0x65, 0x72, 0x65, 0x20, 0x65, 0x72, 0x72, 0x6F, 0x72, 0x5F, 0x65,
240     0x69, 0x64, 0x20, 0x21, 0x3D, 0x20, 0x30, 0x0,  0x0,  0x0,  0x0,  0x74,
241     0x55, 0x44, 0x0,  0xC,  0x1,  0xC,  0x31, 0x0,  0x0,  0x0,  0x0,  0x0,
242     0x53, 0x53, 0x0,  0x50, 0x1,  0x1,  0xA8, 0x0,  0x2,  0x0,  0x0,  0x9,
243     0x0,  0x0,  0x0,  0x48, 0x3,  0x1,  0x0,  0xF0, 0x2C, 0xC6, 0x19, 0x10,
244     0xC1, 0x39, 0x20, 0x0,  0x40, 0x0,  0x0,  0xFF, 0x9D, 0x86, 0xE6, 0xD3,
245     0x0,  0x0,  0x0,  0x3,  0x10, 0x69, 0x14, 0xD8, 0x0,  0x0,  0x0,  0x0,
246     0x42, 0x31, 0x38, 0x31, 0x41, 0x38, 0x30, 0x45, 0x20, 0x20, 0x20, 0x20,
247     0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
248     0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x44, 0x1,  0xF4,
249     0x1,  0xC,  0x31, 0x0,  0x1,  0x28, 0x4,  0x42, 0x46, 0x57, 0x44, 0x42,
250     0x45, 0x52, 0x52, 0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,
251     0x0,  0x0,  0x1,  0xEC, 0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x1,  0xEC,
252     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x7,  0x0,  0x0,  0x5,  0x33,
253     0x1F, 0xEA, 0xE7, 0x12, 0x0,  0x0,  0xD,  0x9D, 0x0,  0x30, 0x43, 0x4F,
254     0x27, 0x67, 0x44, 0xB7, 0x0,  0x0,  0x0,  0xB5, 0x66, 0x77, 0x64, 0x62,
255     0x54, 0x72, 0x61, 0x63, 0x45, 0x72, 0x72, 0x49, 0x6E, 0x66, 0x6F, 0x0,
256     0x73, 0x65, 0x74, 0x42, 0x75, 0x73, 0x79, 0x54, 0x69, 0x6D, 0x65, 0x6F,
257     0x75, 0x74, 0x0,  0x0,  0x0,  0x0,  0x0,  0x1A, 0x0,  0x0,  0xA8, 0x9,
258     0x50, 0x1,  0xF,  0xA,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x4C,
259     0x0,  0x0,  0x5,  0x38, 0x26, 0x43, 0xFB, 0x66, 0x0,  0x0,  0xB,  0x7D,
260     0x0,  0x30, 0x43, 0x4F, 0x27, 0x67, 0x44, 0xB7, 0x0,  0x0,  0x0,  0xB5,
261     0x66, 0x77, 0x64, 0x62, 0x54, 0x72, 0x61, 0x63, 0x45, 0x72, 0x72, 0x49,
262     0x6E, 0x66, 0x6F, 0x0,  0x73, 0x65, 0x74, 0x42, 0x75, 0x73, 0x79, 0x54,
263     0x69, 0x6D, 0x65, 0x6F, 0x75, 0x74, 0x0,  0x0,  0x0,  0x0,  0x0,  0x1A,
264     0x0,  0x0,  0xA8, 0x9,  0x50, 0x1,  0xF,  0xE,  0x0,  0x0,  0x0,  0x0,
265     0x0,  0x0,  0x0,  0x4C, 0x0,  0x0,  0x5,  0x72, 0x13, 0xB8, 0x3D, 0x1C,
266     0x0,  0x0,  0x23, 0x33, 0x0,  0x30, 0x43, 0x4F, 0x27, 0x67, 0x44, 0xB7,
267     0x0,  0x0,  0x0,  0xB5, 0x66, 0x77, 0x64, 0x62, 0x54, 0x72, 0x61, 0x63,
268     0x45, 0x72, 0x72, 0x49, 0x6E, 0x66, 0x6F, 0x0,  0x73, 0x65, 0x74, 0x42,
269     0x75, 0x73, 0x79, 0x54, 0x69, 0x6D, 0x65, 0x6F, 0x75, 0x74, 0x0,  0x0,
270     0x0,  0x0,  0x0,  0x1A, 0x0,  0x0,  0xA8, 0x9,  0x50, 0x1,  0xF,  0x5D,
271     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x4C, 0x0,  0x0,  0x5,  0x88,
272     0x20, 0xE1, 0xE0, 0x7,  0x0,  0x0,  0xD,  0x82, 0x0,  0x30, 0x43, 0x4F,
273     0x27, 0x67, 0x44, 0xB7, 0x0,  0x0,  0x0,  0xB5, 0x66, 0x77, 0x64, 0x62,
274     0x54, 0x72, 0x61, 0x63, 0x45, 0x72, 0x72, 0x49, 0x6E, 0x66, 0x6F, 0x0,
275     0x73, 0x65, 0x74, 0x42, 0x75, 0x73, 0x79, 0x54, 0x69, 0x6D, 0x65, 0x6F,
276     0x75, 0x74, 0x0,  0x0,  0x0,  0x0,  0x0,  0x1A, 0x0,  0x0,  0xA8, 0x9,
277     0x50, 0x1,  0xF,  0x9B, 0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x4C,
278     0x0,  0x0,  0x5,  0x89, 0x12, 0xE,  0xFE, 0x6E, 0x0,  0x0,  0xB,  0x69,
279     0x0,  0x30, 0x43, 0x4F, 0x27, 0x67, 0x44, 0xB7, 0x0,  0x0,  0x0,  0xB5,
280     0x66, 0x77, 0x64, 0x62, 0x54, 0x72, 0x61, 0x63, 0x45, 0x72, 0x72, 0x49,
281     0x6E, 0x66, 0x6F, 0x0,  0x73, 0x65, 0x74, 0x42, 0x75, 0x73, 0x79, 0x54,
282     0x69, 0x6D, 0x65, 0x6F, 0x75, 0x74, 0x0,  0x0,  0x0,  0x0,  0x0,  0x1A,
283     0x0,  0x0,  0xA8, 0x9,  0x50, 0x1,  0xF,  0xA4, 0x0,  0x0,  0x0,  0x0,
284     0x0,  0x0,  0x0,  0x4C, 0x0,  0x0,  0x5,  0x89, 0x15, 0x7A, 0x13, 0xA4,
285     0x0,  0x0,  0x23, 0x88, 0x0,  0x2C, 0x43, 0x4F, 0x27, 0x67, 0x44, 0xB7,
286     0x0,  0x0,  0x0,  0xB5, 0x66, 0x77, 0x64, 0x62, 0x54, 0x72, 0x61, 0x63,
287     0x45, 0x72, 0x72, 0x49, 0x6E, 0x66, 0x6F, 0x0,  0x73, 0x65, 0x72, 0x76,
288     0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x0,  0x0,  0x0,  0x0,  0x1B,
289     0x0,  0x0,  0xA8, 0xE,  0x50, 0x1,  0xF,  0xA5, 0x0,  0x0,  0x0,  0x0,
290     0x0,  0x0,  0x0,  0x48, 0x55, 0x44, 0x1,  0xE8, 0x1,  0xC,  0x31, 0x0,
291     0x1,  0x28, 0x4,  0x42, 0x46, 0x57, 0x44, 0x42, 0x53, 0x52, 0x56, 0x0,
292     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x1,  0xE0,
293     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x1,  0xE0, 0x0,  0x0,  0x0,  0x0,
294     0x0,  0x0,  0x0,  0x9,  0x0,  0x0,  0x5,  0x89, 0x12, 0x36, 0xB8, 0x93,
295     0x0,  0x0,  0x23, 0x88, 0x0,  0x10, 0x43, 0x4F, 0x89, 0x7D, 0x0,  0x8C,
296     0x0,  0x0,  0x23, 0x5D, 0x73, 0x65, 0x72, 0x76, 0x44, 0x65, 0x74, 0x61,
297     0x63, 0x68, 0x0,  0x0,  0xDB, 0xFB, 0xCB, 0x98, 0x0,  0x0,  0x0,  0x2C,
298     0x0,  0x0,  0x5,  0x89, 0x12, 0x36, 0xD2, 0x7A, 0x0,  0x0,  0x23, 0x88,
299     0x0,  0x0,  0x43, 0x4F, 0xBD, 0xF0, 0x6E, 0xE3, 0x0,  0x0,  0x9,  0xF4,
300     0x0,  0x0,  0x0,  0x1C, 0x0,  0x0,  0x5,  0x89, 0x12, 0xAA, 0x51, 0x96,
301     0x0,  0x0,  0x23, 0x88, 0x0,  0x0,  0x43, 0x4F, 0x8F, 0x6A, 0x83, 0x3,
302     0x0,  0x0,  0x9,  0xA9, 0x0,  0x0,  0x0,  0x1C, 0x0,  0x0,  0x5,  0x89,
303     0x12, 0xAE, 0x7B, 0x85, 0x0,  0x0,  0x23, 0x88, 0x0,  0x10, 0x43, 0x4F,
304     0xF3, 0x35, 0x3F, 0x8D, 0x0,  0x0,  0x22, 0x35, 0x73, 0x65, 0x72, 0x76,
305     0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x0,  0x0,  0x9D, 0x86, 0xE6, 0xD3,
306     0x0,  0x0,  0x0,  0x2C, 0x0,  0x0,  0x5,  0x89, 0x13, 0xA5, 0x23, 0xFA,
307     0x0,  0x0,  0x23, 0x88, 0x0,  0x0,  0x43, 0x4F, 0xFC, 0x5A, 0x7F, 0x97,
308     0x0,  0x0,  0x9,  0xB3, 0x0,  0x0,  0x0,  0x1C, 0x0,  0x0,  0x5,  0x89,
309     0x14, 0x5B, 0x57, 0xCE, 0x0,  0x0,  0x23, 0x88, 0x0,  0x0,  0x43, 0x4F,
310     0x4,  0x88, 0x89, 0x7B, 0x0,  0x0,  0x9,  0x3B, 0x0,  0x0,  0x0,  0x1C,
311     0x0,  0x0,  0x5,  0x89, 0x14, 0x5F, 0xCC, 0x54, 0x0,  0x0,  0x23, 0x88,
312     0x0,  0x50, 0x43, 0x4F, 0x94, 0xA2, 0x26, 0x7C, 0x0,  0x0,  0x14, 0xE1,
313     0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x53, 0x74, 0x6D, 0x74, 0x0,
314     0x0,  0x0,  0x0,  0x1,  0x6E, 0x6F, 0x20, 0x73, 0x75, 0x63, 0x68, 0x20,
315     0x74, 0x61, 0x62, 0x6C, 0x65, 0x3A, 0x20, 0x63, 0x62, 0x6C, 0x76, 0x5F,
316     0x63, 0x61, 0x62, 0x6C, 0x65, 0x5F, 0x63, 0x6F, 0x6E, 0x6E, 0x65, 0x63,
317     0x74, 0x69, 0x6F, 0x6E, 0x5F, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5F,
318     0x70, 0x75, 0x62, 0x6C, 0x69, 0x63, 0x5F, 0x76, 0x69, 0x65, 0x77, 0x0,
319     0x10, 0x69, 0x14, 0xD8, 0x0,  0x0,  0x0,  0x3,  0x0,  0x0,  0x0,  0x6C,
320     0x0,  0x0,  0x5,  0x89, 0x15, 0x79, 0xCE, 0xB1, 0x0,  0x0,  0x23, 0x88,
321     0x0,  0x68, 0x43, 0x4F, 0xF9, 0xB,  0x8E, 0x3C, 0x0,  0x0,  0x21, 0x3E,
322     0x73, 0x65, 0x72, 0x76, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x0,
323     0x9D, 0x86, 0xE6, 0xD3, 0x0,  0x0,  0x0,  0x3,  0x73, 0x65, 0x6C, 0x65,
324     0x63, 0x74, 0x20, 0x65, 0x72, 0x72, 0x6F, 0x72, 0x5F, 0x65, 0x69, 0x64,
325     0x20, 0x66, 0x72, 0x6F, 0x6D, 0x20, 0x63, 0x62, 0x6C, 0x76, 0x5F, 0x63,
326     0x61, 0x62, 0x6C, 0x65, 0x5F, 0x63, 0x6F, 0x6E, 0x6E, 0x65, 0x63, 0x74,
327     0x69, 0x6F, 0x6E, 0x5F, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5F, 0x70,
328     0x75, 0x62, 0x6C, 0x69, 0x63, 0x5F, 0x76, 0x69, 0x65, 0x77, 0x20, 0x77,
329     0x68, 0x65, 0x72, 0x65, 0x20, 0x65, 0x72, 0x72, 0x6F, 0x72, 0x5F, 0x65,
330     0x69, 0x64, 0x20, 0x21, 0x3D, 0x20, 0x30, 0x0,  0x0,  0x0,  0x0,  0x84,
331     0x55, 0x44, 0x3,  0xC0, 0x1,  0xC,  0x31, 0x0,  0x1,  0x28, 0x4,  0x42,
332     0x46, 0x57, 0x44, 0x42, 0x53, 0x51, 0x4C, 0x0,  0x0,  0x0,  0x0,  0x0,
333     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x3,  0xB8, 0x0,  0x0,  0x0,  0x0,
334     0x0,  0x0,  0x3,  0xB8, 0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0xB,
335     0x0,  0x0,  0x5,  0x89, 0x5,  0xFC, 0x1E, 0x6C, 0x0,  0x0,  0x23, 0x88,
336     0x0,  0x40, 0x43, 0x4F, 0x92, 0x41, 0x1B, 0xD4, 0x0,  0x0,  0x21, 0x6,
337     0x14, 0x9,  0xC2, 0x11, 0x73, 0x65, 0x6C, 0x65, 0x63, 0x74, 0x20, 0x2A,
338     0x20, 0x66, 0x72, 0x6F, 0x6D, 0x20, 0x73, 0x79, 0x73, 0x2E, 0x70, 0x6F,
339     0x6C, 0x69, 0x63, 0x79, 0x20, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x6E,
340     0x61, 0x6D, 0x65, 0x20, 0x3D, 0x20, 0x27, 0x70, 0x6F, 0x77, 0x65, 0x72,
341     0x2D, 0x64, 0x65, 0x66, 0x2D, 0x66, 0x69, 0x6C, 0x65, 0x6E, 0x61, 0x6D,
342     0x65, 0x73, 0x27, 0x0,  0x0,  0x0,  0x0,  0x5C, 0x0,  0x0,  0x5,  0x89,
343     0x6,  0xB1, 0x42, 0x3B, 0x0,  0x0,  0x23, 0x88, 0x0,  0x40, 0x43, 0x4F,
344     0x92, 0x41, 0x1B, 0xD4, 0x0,  0x0,  0x21, 0x6,  0x14, 0x9,  0xC2, 0x11,
345     0x73, 0x65, 0x6C, 0x65, 0x63, 0x74, 0x20, 0x2A, 0x20, 0x66, 0x72, 0x6F,
346     0x6D, 0x20, 0x73, 0x79, 0x73, 0x2E, 0x70, 0x6F, 0x6C, 0x69, 0x63, 0x79,
347     0x20, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x20,
348     0x3D, 0x20, 0x27, 0x70, 0x6F, 0x77, 0x65, 0x72, 0x2D, 0x64, 0x65, 0x66,
349     0x2D, 0x66, 0x69, 0x6C, 0x65, 0x6E, 0x61, 0x6D, 0x65, 0x73, 0x27, 0x0,
350     0x0,  0x0,  0x0,  0x5C, 0x0,  0x0,  0x5,  0x89, 0x7,  0x14, 0xD2, 0x68,
351     0x0,  0x0,  0x23, 0x88, 0x0,  0x40, 0x43, 0x4F, 0x92, 0x41, 0x1B, 0xD4,
352     0x0,  0x0,  0x21, 0x6,  0x14, 0x9,  0xC2, 0x11, 0x73, 0x65, 0x6C, 0x65,
353     0x63, 0x74, 0x20, 0x2A, 0x20, 0x66, 0x72, 0x6F, 0x6D, 0x20, 0x73, 0x79,
354     0x73, 0x2E, 0x70, 0x6F, 0x6C, 0x69, 0x63, 0x79, 0x20, 0x77, 0x68, 0x65,
355     0x72, 0x65, 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x20, 0x3D, 0x20, 0x27, 0x70,
356     0x6F, 0x77, 0x65, 0x72, 0x2D, 0x64, 0x65, 0x66, 0x2D, 0x66, 0x69, 0x6C,
357     0x65, 0x6E, 0x61, 0x6D, 0x65, 0x73, 0x27, 0x0,  0x0,  0x0,  0x0,  0x5C,
358     0x0,  0x0,  0x5,  0x89, 0x7,  0x9A, 0x9D, 0x6F, 0x0,  0x0,  0x23, 0x88,
359     0x0,  0x40, 0x43, 0x4F, 0x92, 0x41, 0x1B, 0xD4, 0x0,  0x0,  0x21, 0x6,
360     0x14, 0x9,  0xC2, 0x11, 0x73, 0x65, 0x6C, 0x65, 0x63, 0x74, 0x20, 0x2A,
361     0x20, 0x66, 0x72, 0x6F, 0x6D, 0x20, 0x73, 0x79, 0x73, 0x2E, 0x70, 0x6F,
362     0x6C, 0x69, 0x63, 0x79, 0x20, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x6E,
363     0x61, 0x6D, 0x65, 0x20, 0x3D, 0x20, 0x27, 0x70, 0x6F, 0x77, 0x65, 0x72,
364     0x2D, 0x64, 0x65, 0x66, 0x2D, 0x66, 0x69, 0x6C, 0x65, 0x6E, 0x61, 0x6D,
365     0x65, 0x73, 0x27, 0x0,  0x0,  0x0,  0x0,  0x5C, 0x0,  0x0,  0x5,  0x89,
366     0x7,  0xD4, 0xF8, 0x2D, 0x0,  0x0,  0x23, 0x88, 0x0,  0x40, 0x43, 0x4F,
367     0x92, 0x41, 0x1B, 0xD4, 0x0,  0x0,  0x21, 0x6,  0x14, 0x9,  0xC2, 0x11,
368     0x73, 0x65, 0x6C, 0x65, 0x63, 0x74, 0x20, 0x2A, 0x20, 0x66, 0x72, 0x6F,
369     0x6D, 0x20, 0x73, 0x79, 0x73, 0x2E, 0x70, 0x6F, 0x6C, 0x69, 0x63, 0x79,
370     0x20, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x6E, 0x61, 0x6D, 0x65, 0x20,
371     0x3D, 0x20, 0x27, 0x70, 0x6F, 0x77, 0x65, 0x72, 0x2D, 0x64, 0x65, 0x66,
372     0x2D, 0x66, 0x69, 0x6C, 0x65, 0x6E, 0x61, 0x6D, 0x65, 0x73, 0x27, 0x0,
373     0x0,  0x0,  0x0,  0x5C, 0x0,  0x0,  0x5,  0x89, 0x12, 0xB4, 0xBC, 0xA6,
374     0x0,  0x0,  0x23, 0x88, 0x0,  0x38, 0x43, 0x4F, 0x92, 0x41, 0x1B, 0xD4,
375     0x0,  0x0,  0x21, 0x6,  0x9D, 0x86, 0xE6, 0xD3, 0x41, 0x54, 0x54, 0x41,
376     0x43, 0x48, 0x20, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x20,
377     0x27, 0x2F, 0x6F, 0x70, 0x74, 0x2F, 0x70, 0x31, 0x2F, 0x66, 0x77, 0x73,
378     0x6D, 0x2F, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6D, 0x2E, 0x73, 0x79, 0x73,
379     0x27, 0x20, 0x41, 0x53, 0x20, 0x73, 0x79, 0x73, 0x3B, 0xA,  0x0,  0x0,
380     0x0,  0x0,  0x0,  0x54, 0x0,  0x0,  0x5,  0x89, 0x12, 0xBC, 0xD8, 0x8A,
381     0x0,  0x0,  0x23, 0x88, 0x0,  0x38, 0x43, 0x4F, 0x92, 0x41, 0x1B, 0xD4,
382     0x0,  0x0,  0x21, 0x6,  0x9D, 0x86, 0xE6, 0xD3, 0x41, 0x54, 0x54, 0x41,
383     0x43, 0x48, 0x20, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x20,
384     0x27, 0x2F, 0x6F, 0x70, 0x74, 0x2F, 0x70, 0x30, 0x2F, 0x66, 0x77, 0x73,
385     0x6D, 0x2F, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6D, 0x2E, 0x70, 0x30, 0x27,
386     0x20, 0x41, 0x53, 0x20, 0x70, 0x30, 0x3B, 0xA,  0x0,  0x0,  0x0,  0x0,
387     0x0,  0x0,  0x0,  0x54, 0x0,  0x0,  0x5,  0x89, 0x13, 0x97, 0x51, 0x64,
388     0x0,  0x0,  0x23, 0x88, 0x0,  0x38, 0x43, 0x4F, 0x92, 0x41, 0x1B, 0xD4,
389     0x0,  0x0,  0x21, 0x6,  0x9D, 0x86, 0xE6, 0xD3, 0x41, 0x54, 0x54, 0x41,
390     0x43, 0x48, 0x20, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x20,
391     0x27, 0x2F, 0x6F, 0x70, 0x74, 0x2F, 0x70, 0x31, 0x2F, 0x66, 0x77, 0x73,
392     0x6D, 0x2F, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6D, 0x2E, 0x70, 0x31, 0x27,
393     0x20, 0x41, 0x53, 0x20, 0x70, 0x31, 0x3B, 0xA,  0x0,  0x0,  0x0,  0x0,
394     0x0,  0x0,  0x0,  0x54, 0x0,  0x0,  0x5,  0x89, 0x13, 0xA2, 0x85, 0x51,
395     0x0,  0x0,  0x23, 0x88, 0x0,  0x38, 0x43, 0x4F, 0x92, 0x41, 0x1B, 0xD4,
396     0x0,  0x0,  0x21, 0x6,  0x9D, 0x86, 0xE6, 0xD3, 0x41, 0x54, 0x54, 0x41,
397     0x43, 0x48, 0x20, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x20,
398     0x27, 0x2F, 0x6F, 0x70, 0x74, 0x2F, 0x70, 0x33, 0x2F, 0x66, 0x77, 0x73,
399     0x6D, 0x2F, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6D, 0x2E, 0x70, 0x33, 0x27,
400     0x20, 0x41, 0x53, 0x20, 0x70, 0x33, 0x3B, 0xA,  0x0,  0x0,  0x0,  0x0,
401     0x0,  0x0,  0x0,  0x54, 0x0,  0x0,  0x5,  0x89, 0x14, 0x5B, 0x84, 0x7B,
402     0x0,  0x0,  0x23, 0x88, 0x0,  0x58, 0x43, 0x4F, 0x92, 0x41, 0x1B, 0xD4,
403     0x0,  0x0,  0x21, 0x6,  0x9D, 0x86, 0xE6, 0xD3, 0x73, 0x65, 0x6C, 0x65,
404     0x63, 0x74, 0x20, 0x65, 0x72, 0x72, 0x6F, 0x72, 0x5F, 0x65, 0x69, 0x64,
405     0x20, 0x66, 0x72, 0x6F, 0x6D, 0x20, 0x63, 0x62, 0x6C, 0x76, 0x5F, 0x63,
406     0x61, 0x62, 0x6C, 0x65, 0x5F, 0x63, 0x6F, 0x6E, 0x6E, 0x65, 0x63, 0x74,
407     0x69, 0x6F, 0x6E, 0x5F, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5F, 0x70,
408     0x75, 0x62, 0x6C, 0x69, 0x63, 0x5F, 0x76, 0x69, 0x65, 0x77, 0x20, 0x77,
409     0x68, 0x65, 0x72, 0x65, 0x20, 0x65, 0x72, 0x72, 0x6F, 0x72, 0x5F, 0x65,
410     0x69, 0x64, 0x20, 0x21, 0x3D, 0x20, 0x30, 0x0,  0x0,  0x0,  0x0,  0x74,
411     0x55, 0x44, 0x0,  0xC,  0x1,  0xC,  0x31, 0x0,  0x0,  0x0,  0x0,  0x0,
412     0x53, 0x53, 0x0,  0x50, 0x1,  0x1,  0xA8, 0x0,  0x2,  0x0,  0x0,  0x9,
413     0x0,  0x0,  0x0,  0x48, 0x3,  0x1,  0x0,  0xF0, 0x2C, 0xC6, 0x67, 0x10,
414     0xC1, 0x39, 0x20, 0x0,  0x40, 0x0,  0x0,  0xFF, 0x0,  0x0,  0x0,  0x3,
415     0x9D, 0x86, 0xE6, 0xD3, 0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,
416     0x42, 0x31, 0x38, 0x31, 0x41, 0x38, 0x30, 0x35, 0x20, 0x20, 0x20, 0x20,
417     0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
418     0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x55, 0x44, 0x1,  0xF4,
419     0x1,  0xC,  0x31, 0x0,  0x1,  0x28, 0x4,  0x42, 0x46, 0x57, 0x44, 0x42,
420     0x45, 0x52, 0x52, 0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,
421     0x0,  0x0,  0x1,  0xEC, 0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x1,  0xEC,
422     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x7,  0x0,  0x0,  0x5,  0x38,
423     0x26, 0x43, 0xFB, 0x66, 0x0,  0x0,  0xB,  0x7D, 0x0,  0x30, 0x43, 0x4F,
424     0x27, 0x67, 0x44, 0xB7, 0x0,  0x0,  0x0,  0xB5, 0x66, 0x77, 0x64, 0x62,
425     0x54, 0x72, 0x61, 0x63, 0x45, 0x72, 0x72, 0x49, 0x6E, 0x66, 0x6F, 0x0,
426     0x73, 0x65, 0x74, 0x42, 0x75, 0x73, 0x79, 0x54, 0x69, 0x6D, 0x65, 0x6F,
427     0x75, 0x74, 0x0,  0x0,  0x0,  0x0,  0x0,  0x1A, 0x0,  0x0,  0xA8, 0x9,
428     0x50, 0x1,  0xF,  0xE,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x4C,
429     0x0,  0x0,  0x5,  0x72, 0x13, 0xB8, 0x3D, 0x1C, 0x0,  0x0,  0x23, 0x33,
430     0x0,  0x30, 0x43, 0x4F, 0x27, 0x67, 0x44, 0xB7, 0x0,  0x0,  0x0,  0xB5,
431     0x66, 0x77, 0x64, 0x62, 0x54, 0x72, 0x61, 0x63, 0x45, 0x72, 0x72, 0x49,
432     0x6E, 0x66, 0x6F, 0x0,  0x73, 0x65, 0x74, 0x42, 0x75, 0x73, 0x79, 0x54,
433     0x69, 0x6D, 0x65, 0x6F, 0x75, 0x74, 0x0,  0x0,  0x0,  0x0,  0x0,  0x1A,
434     0x0,  0x0,  0xA8, 0x9,  0x50, 0x1,  0xF,  0x5D, 0x0,  0x0,  0x0,  0x0,
435     0x0,  0x0,  0x0,  0x4C, 0x0,  0x0,  0x5,  0x88, 0x20, 0xE1, 0xE0, 0x7,
436     0x0,  0x0,  0xD,  0x82, 0x0,  0x30, 0x43, 0x4F, 0x27, 0x67, 0x44, 0xB7,
437     0x0,  0x0,  0x0,  0xB5, 0x66, 0x77, 0x64, 0x62, 0x54, 0x72, 0x61, 0x63,
438     0x45, 0x72, 0x72, 0x49, 0x6E, 0x66, 0x6F, 0x0,  0x73, 0x65, 0x74, 0x42,
439     0x75, 0x73, 0x79, 0x54, 0x69, 0x6D, 0x65, 0x6F, 0x75, 0x74, 0x0,  0x0,
440     0x0,  0x0,  0x0,  0x1A, 0x0,  0x0,  0xA8, 0x9,  0x50, 0x1,  0xF,  0x9B,
441     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x4C, 0x0,  0x0,  0x5,  0x89,
442     0x12, 0xE,  0xFE, 0x6E, 0x0,  0x0,  0xB,  0x69, 0x0,  0x30, 0x43, 0x4F,
443     0x27, 0x67, 0x44, 0xB7, 0x0,  0x0,  0x0,  0xB5, 0x66, 0x77, 0x64, 0x62,
444     0x54, 0x72, 0x61, 0x63, 0x45, 0x72, 0x72, 0x49, 0x6E, 0x66, 0x6F, 0x0,
445     0x73, 0x65, 0x74, 0x42, 0x75, 0x73, 0x79, 0x54, 0x69, 0x6D, 0x65, 0x6F,
446     0x75, 0x74, 0x0,  0x0,  0x0,  0x0,  0x0,  0x1A, 0x0,  0x0,  0xA8, 0x9,
447     0x50, 0x1,  0xF,  0xA4, 0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x4C,
448     0x0,  0x0,  0x5,  0x89, 0x15, 0x7A, 0x13, 0xA4, 0x0,  0x0,  0x23, 0x88,
449     0x0,  0x2C, 0x43, 0x4F, 0x27, 0x67, 0x44, 0xB7, 0x0,  0x0,  0x0,  0xB5,
450     0x66, 0x77, 0x64, 0x62, 0x54, 0x72, 0x61, 0x63, 0x45, 0x72, 0x72, 0x49,
451     0x6E, 0x66, 0x6F, 0x0,  0x73, 0x65, 0x72, 0x76, 0x45, 0x78, 0x65, 0x63,
452     0x75, 0x74, 0x65, 0x0,  0x0,  0x0,  0x0,  0x1B, 0x0,  0x0,  0xA8, 0xE,
453     0x50, 0x1,  0xF,  0xA5, 0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x48,
454     0x0,  0x0,  0x5,  0x89, 0x16, 0xA5, 0xF7, 0xAC, 0x0,  0x0,  0xB,  0x69,
455     0x0,  0x30, 0x43, 0x4F, 0x27, 0x67, 0x44, 0xB7, 0x0,  0x0,  0x0,  0xB5,
456     0x66, 0x77, 0x64, 0x62, 0x54, 0x72, 0x61, 0x63, 0x45, 0x72, 0x72, 0x49,
457     0x6E, 0x66, 0x6F, 0x0,  0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x4E,
458     0x6F, 0x46, 0x6D, 0x74, 0x53, 0x74, 0x72, 0x0,  0x0,  0x0,  0x0,  0x1B,
459     0x0,  0x0,  0xA8, 0xE,  0x50, 0x1,  0xF,  0xA5, 0x0,  0x0,  0x0,  0x0,
460     0x0,  0x0,  0x0,  0x4C, 0x55, 0x44, 0x1,  0xEC, 0x1,  0xC,  0x31, 0x0,
461     0x1,  0x28, 0x4,  0x42, 0x46, 0x57, 0x44, 0x42, 0x43, 0x4D, 0x44, 0x0,
462     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x1,  0xE4,
463     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x1,  0xE4, 0x0,  0x0,  0x0,  0x0,
464     0x0,  0x0,  0x0,  0xD,  0x0,  0x0,  0x5,  0x89, 0x5,  0xF9, 0x4B, 0x5C,
465     0x0,  0x0,  0x23, 0x72, 0x0,  0x0,  0x43, 0x4F, 0x32, 0x5F, 0xF6, 0x1,
466     0x0,  0x0,  0x1,  0x59, 0x0,  0x0,  0x0,  0x1C, 0x0,  0x0,  0x5,  0x89,
467     0x6,  0x36, 0xBE, 0xE8, 0x0,  0x0,  0x23, 0x72, 0x0,  0x0,  0x43, 0x4F,
468     0xC9, 0x49, 0xE2, 0x7E, 0x0,  0x0,  0x1,  0xD6, 0x0,  0x0,  0x0,  0x1C,
469     0x0,  0x0,  0x5,  0x89, 0x6,  0xAE, 0x6C, 0x5C, 0x0,  0x0,  0x23, 0x72,
470     0x0,  0x0,  0x43, 0x4F, 0x32, 0x5F, 0xF6, 0x1,  0x0,  0x0,  0x1,  0x59,
471     0x0,  0x0,  0x0,  0x1C, 0x0,  0x0,  0x5,  0x89, 0x6,  0xC3, 0x48, 0x7A,
472     0x0,  0x0,  0x23, 0x72, 0x0,  0x0,  0x43, 0x4F, 0xC9, 0x49, 0xE2, 0x7E,
473     0x0,  0x0,  0x1,  0xD6, 0x0,  0x0,  0x0,  0x1C, 0x0,  0x0,  0x5,  0x89,
474     0x7,  0x12, 0x50, 0xB6, 0x0,  0x0,  0x23, 0x72, 0x0,  0x0,  0x43, 0x4F,
475     0x32, 0x5F, 0xF6, 0x1,  0x0,  0x0,  0x1,  0x59, 0x0,  0x0,  0x0,  0x1C,
476     0x0,  0x0,  0x5,  0x89, 0x7,  0x2C, 0x43, 0xFE, 0x0,  0x0,  0x23, 0x72,
477     0x0,  0x0,  0x43, 0x4F, 0xC9, 0x49, 0xE2, 0x7E, 0x0,  0x0,  0x1,  0xD6,
478     0x0,  0x0,  0x0,  0x1C, 0x0,  0x0,  0x5,  0x89, 0x7,  0x97, 0x92, 0x5F,
479     0x0,  0x0,  0x23, 0x72, 0x0,  0x0,  0x43, 0x4F, 0x32, 0x5F, 0xF6, 0x1,
480     0x0,  0x0,  0x1,  0x59, 0x0,  0x0,  0x0,  0x1C, 0x0,  0x0,  0x5,  0x89,
481     0x7,  0xAF, 0x7C, 0xC6, 0x0,  0x0,  0x23, 0x72, 0x0,  0x0,  0x43, 0x4F,
482     0xC9, 0x49, 0xE2, 0x7E, 0x0,  0x0,  0x1,  0xD6, 0x0,  0x0,  0x0,  0x1C,
483     0x0,  0x0,  0x5,  0x89, 0x7,  0xD2, 0x84, 0xF,  0x0,  0x0,  0x23, 0x72,
484     0x0,  0x0,  0x43, 0x4F, 0x32, 0x5F, 0xF6, 0x1,  0x0,  0x0,  0x1,  0x59,
485     0x0,  0x0,  0x0,  0x1C, 0x0,  0x0,  0x5,  0x89, 0x8,  0x6E, 0xBC, 0x17,
486     0x0,  0x0,  0x23, 0x72, 0x0,  0x0,  0x43, 0x4F, 0xC9, 0x49, 0xE2, 0x7E,
487     0x0,  0x0,  0x1,  0xD6, 0x0,  0x0,  0x0,  0x1C, 0x0,  0x0,  0x5,  0x89,
488     0x13, 0xA8, 0x5C, 0x6F, 0x0,  0x0,  0xB,  0x69, 0x0,  0x0,  0x43, 0x4F,
489     0x32, 0x5F, 0xF6, 0x1,  0x0,  0x0,  0x1,  0x59, 0x0,  0x0,  0x0,  0x1C,
490     0x0,  0x0,  0x5,  0x89, 0x16, 0xA5, 0x8F, 0x96, 0x0,  0x0,  0xB,  0x69,
491     0x0,  0x6C, 0x43, 0x4F, 0x9A, 0x1E, 0xAD, 0xA5, 0x0,  0x0,  0x1,  0x9D,
492     0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x4E, 0x6F, 0x46, 0x6D, 0x74,
493     0x53, 0x74, 0x72, 0x0,  0x0,  0x0,  0x0,  0x3,  0x73, 0x65, 0x6C, 0x65,
494     0x63, 0x74, 0x20, 0x65, 0x72, 0x72, 0x6F, 0x72, 0x5F, 0x65, 0x69, 0x64,
495     0x20, 0x66, 0x72, 0x6F, 0x6D, 0x20, 0x63, 0x62, 0x6C, 0x76, 0x5F, 0x63,
496     0x61, 0x62, 0x6C, 0x65, 0x5F, 0x63, 0x6F, 0x6E, 0x6E, 0x65, 0x63, 0x74,
497     0x69, 0x6F, 0x6E, 0x5F, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5F, 0x70,
498     0x75, 0x62, 0x6C, 0x69, 0x63, 0x5F, 0x76, 0x69, 0x65, 0x77, 0x20, 0x77,
499     0x68, 0x65, 0x72, 0x65, 0x20, 0x65, 0x72, 0x72, 0x6F, 0x72, 0x5F, 0x65,
500     0x69, 0x64, 0x20, 0x21, 0x3D, 0x20, 0x30, 0x0,  0x9D, 0x86, 0xE6, 0xD3,
501     0x0,  0x0,  0x0,  0x88, 0x55, 0x44, 0x1,  0xD0, 0x1,  0xC,  0x31, 0x0,
502     0x1,  0x28, 0x4,  0x42, 0x46, 0x57, 0x44, 0x42, 0x55, 0x54, 0x49, 0x4C,
503     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x1,  0xC8,
504     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x1,  0xC8, 0x0,  0x0,  0x0,  0x0,
505     0x0,  0x0,  0x0,  0x4,  0x0,  0x0,  0x5,  0x89, 0x13, 0xA7, 0xC0, 0xB6,
506     0x0,  0x0,  0xB,  0x69, 0x0,  0x3C, 0x43, 0x4F, 0x4C, 0x53, 0x3A, 0xE0,
507     0x0,  0x0,  0x1,  0xF7, 0x45, 0x58, 0x49, 0x54, 0x0,  0x0,  0x0,  0x0,
508     0x41, 0x54, 0x54, 0x41, 0x43, 0x48, 0x0,  0x0,  0x9D, 0x86, 0xE6, 0xD3,
509     0x0,  0x0,  0xB,  0x60, 0x0,  0x0,  0xB,  0x69, 0x2F, 0x6F, 0x70, 0x74,
510     0x2F, 0x66, 0x69, 0x70, 0x73, 0x2F, 0x62, 0x69, 0x6E, 0x2F, 0x68, 0x65,
511     0x61, 0x6C, 0x74, 0x68, 0x6D, 0x6F, 0x6E, 0x0,  0x0,  0x0,  0x0,  0x0,
512     0x0,  0x0,  0x43, 0x8F, 0x0,  0x0,  0x0,  0x58, 0x0,  0x0,  0x5,  0x89,
513     0x13, 0xA8, 0xF8, 0x3A, 0x0,  0x0,  0xB,  0x69, 0x0,  0x88, 0x43, 0x4F,
514     0x4C, 0x53, 0x3A, 0xE0, 0x0,  0x0,  0x1,  0xF7, 0x45, 0x4E, 0x54, 0x52,
515     0x0,  0x0,  0x0,  0x0,  0x73, 0x65, 0x6C, 0x65, 0x63, 0x74, 0x20, 0x65,
516     0x72, 0x72, 0x6F, 0x72, 0x5F, 0x65, 0x69, 0x64, 0x20, 0x66, 0x72, 0x6F,
517     0x6D, 0x20, 0x63, 0x62, 0x6C, 0x76, 0x5F, 0x63, 0x61, 0x62, 0x6C, 0x65,
518     0x5F, 0x63, 0x6F, 0x6E, 0x6E, 0x65, 0x63, 0x74, 0x69, 0x6F, 0x6E, 0x5F,
519     0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5F, 0x70, 0x75, 0x62, 0x6C, 0x69,
520     0x63, 0x5F, 0x76, 0x69, 0x65, 0x77, 0x20, 0x77, 0x68, 0x65, 0x72, 0x65,
521     0x20, 0x65, 0x72, 0x72, 0x6F, 0x72, 0x5F, 0x65, 0x69, 0x64, 0x20, 0x21,
522     0x3D, 0x20, 0x30, 0x0,  0x9D, 0x86, 0xE6, 0xD3, 0x0,  0x0,  0xB,  0x60,
523     0x0,  0x0,  0xB,  0x69, 0x2F, 0x6F, 0x70, 0x74, 0x2F, 0x66, 0x69, 0x70,
524     0x73, 0x2F, 0x62, 0x69, 0x6E, 0x2F, 0x68, 0x65, 0x61, 0x6C, 0x74, 0x68,
525     0x6D, 0x6F, 0x6E, 0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0x0,
526     0x0,  0x0,  0x0,  0xA4, 0x0,  0x0,  0x5,  0x89, 0x16, 0xA5, 0x62, 0xFB,
527     0x0,  0x0,  0xB,  0x69, 0x0,  0x88, 0x43, 0x4F, 0x4C, 0x53, 0x3A, 0xE0,
528     0x0,  0x0,  0x1,  0xF7, 0x45, 0x58, 0x49, 0x54, 0x0,  0x0,  0x0,  0x0,
529     0x73, 0x65, 0x6C, 0x65, 0x63, 0x74, 0x20, 0x65, 0x72, 0x72, 0x6F, 0x72,
530     0x5F, 0x65, 0x69, 0x64, 0x20, 0x66, 0x72, 0x6F, 0x6D, 0x20, 0x63, 0x62,
531     0x6C, 0x76, 0x5F, 0x63, 0x61, 0x62, 0x6C, 0x65, 0x5F, 0x63, 0x6F, 0x6E,
532     0x6E, 0x65, 0x63, 0x74, 0x69, 0x6F, 0x6E, 0x5F, 0x73, 0x74, 0x61, 0x74,
533     0x75, 0x73, 0x5F, 0x70, 0x75, 0x62, 0x6C, 0x69, 0x63, 0x5F, 0x76, 0x69,
534     0x65, 0x77, 0x20, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x65, 0x72, 0x72,
535     0x6F, 0x72, 0x5F, 0x65, 0x69, 0x64, 0x20, 0x21, 0x3D, 0x20, 0x30, 0x0,
536     0x9D, 0x86, 0xE6, 0xD3, 0x0,  0x0,  0xB,  0x60, 0x0,  0x0,  0xB,  0x69,
537     0x2F, 0x6F, 0x70, 0x74, 0x2F, 0x66, 0x69, 0x70, 0x73, 0x2F, 0x62, 0x69,
538     0x6E, 0x2F, 0x68, 0x65, 0x61, 0x6C, 0x74, 0x68, 0x6D, 0x6F, 0x6E, 0x0,
539     0x0,  0x0,  0x0,  0x0,  0x0,  0x0,  0xC5, 0x63, 0x0,  0x0,  0x0,  0xA4};
540 
541 TEST_F(PELTest, RealPELTest)
542 {
543     auto origData = realPELData;
544     PEL pel{origData};
545 
546     EXPECT_TRUE(pel.valid());
547 
548     // Check that the flat data is correct
549     auto flat = pel.data();
550     EXPECT_EQ(realPELData, flat);
551     EXPECT_EQ(realPELData.size(), pel.size());
552 
553     // Check that the code can extract an object for every section.
554     //(The PrivateHeader and UserHeader account for the + 2 below.)
555     const auto& sections = pel.optionalSections();
556     EXPECT_EQ(pel.privateHeader().sectionCount(), sections.size() + 2);
557 
558     auto src = pel.primarySRC();
559     EXPECT_EQ(src.value()->asciiString(), "B181A80E                        ");
560 
561     // Check that the last section (a 'UD' section) is indeed the last
562     // section object by checking the ID and the last byte.
563     auto& last = pel.optionalSections().back();
564     EXPECT_EQ(last->header().id, 0x5544); // "UD"
565 
566     std::vector<uint8_t> lastSectionData;
567     Stream stream{lastSectionData};
568     last->flatten(stream);
569     EXPECT_EQ(lastSectionData.back(), 0xA4);
570 }
571