-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathpeg_nested_comments_0.2.5.txt
210 lines (208 loc) · 14.5 KB
/
peg_nested_comments_0.2.5.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
# Name: peg_nested_comments v0.2.5
# Type: Admin/Public/AJAX plugin
# Enable comments replies
# Author: Egypt Urnash
# URL: http://egypt.urnash.com/
# Recommended load order: 5
# .....................................................................
# This is a plugin for Textpattern CMS - http://textpattern.com/
# To install: textpattern > admin > plugins
# Paste the following text into the 'Install plugin' box:
# .....................................................................
YToxMTp7czo0OiJuYW1lIjtzOjE5OiJwZWdfbmVzdGVkX2NvbW1lbnRzIjtzOjY6ImF1dGhv
ciI7czoxMjoiRWd5cHQgVXJuYXNoIjtzOjEwOiJhdXRob3JfdXJpIjtzOjI0OiJodHRwOi8v
ZWd5cHQudXJuYXNoLmNvbS8iO3M6NzoidmVyc2lvbiI7czo1OiIwLjIuNSI7czoxMToiZGVz
Y3JpcHRpb24iO3M6MjM6IkVuYWJsZSBjb21tZW50cyByZXBsaWVzIjtzOjQ6ImNvZGUiO3M6
Njk1ODoiVHhwOjpnZXQoJ1xUZXh0cGF0dGVyblxUYWdcUmVnaXN0cnknKS0+cmVnaXN0ZXIo
J3BlZ19jb21tZW50cycpDQogICAgLT5yZWdpc3RlcigncGVnX3JlcGx5X3RvJykNCiAgICAt
PnJlZ2lzdGVyKCdwZWdfcmVwbHlfbGluaycpOw0KDQpyZWdpc3Rlcl9jYWxsYmFjaygncGVn
X3NhdmVDb21tZW50TGlua3MnLCdjb21tZW50LnNhdmUnKTsNCnJlZ2lzdGVyX2NhbGxiYWNr
KCdwZWdfY29tbWVudHNfaW5zdGFsbCcsICdwbHVnaW5fbGlmZWN5Y2xlLnBlZ19uZXN0ZWRf
Y29tbWVudHMnKTsNCg0KZnVuY3Rpb24gcGVnX2NvbW1lbnRzX2luc3RhbGwoJGV2ZW50PScn
LCAkc3RlcD0nJykgew0KCSRycyA9IHNhZmVfcXVlcnkoInNob3cgY29sdW1ucyBmcm9tIHR4
cF9kaXNjdXNzIGxpa2UgJ3BlZ19jaGlsZHJlbiciKTsvLyBvciBkaWUoIkVycm9yIGNoZWNr
aW5nIHRhYmxlcy4iKTsNCglpZigkc3RlcCA9PSAnZGVsZXRlZCcpIHsNCgkJaWYgKG51bVJv
d3MoJHJzKSA+IDApICRycyA9IHNhZmVfYWx0ZXIgKCd0eHBfZGlzY3VzcycsIkRST1AgcGVn
X2NoaWxkcmVuIikgb3IgZGllKCJFcnJvciBhbHRlcmluZyB0YWJsZXMuIik7DQoJCXJldHVy
bjsNCgl9DQoJaWYoJHN0ZXAgPT0gJ2luc3RhbGxlZCcpIHsNCgkJaWYgKG51bVJvd3MoJHJz
KSA9PSAwKSB7DQoJCQkkcnMgPSBzYWZlX2FsdGVyICgndHhwX2Rpc2N1c3MnLCJBREQgcGVn
X2NoaWxkcmVuIHRleHQgbm90IG51bGwiKSBvciBkaWUoIkVycm9yIGFsdGVyaW5nIHRhYmxl
cy4iKTsNCgkJfQ0KCQlyZXR1cm47DQoJfQ0KfQ0KDQovKg0KaWYgKEB0eHBpbnRlcmZhY2Ug
PT0gJ3B1YmxpYycpIHsNCgkvLyBwdWJsaWMgcGFnZSBzdHVmZiB3b3VsZCBnbyBoZXJlDQp9
IGVsc2Ugew0KCS8vIGFkbWluIHBhZ2Ugc3R1ZmYgd291bGQgZ28gaGVyZQ0KfQ0KKi8NCg0K
Ly8gY3V0IGFuZCBwYXN0ZSBmcm9tIHR4cCdzIHBhcnNlX2Zvcm0NCi8vIHdpdGggdGhlIGFu
dGktcmVjdXJzaW9uIGJpdHMgcmVtb3ZlZA0KZnVuY3Rpb24gcGVnX3BhcnNlX2Zvcm1fcmVj
dXJzaXZlbHkoJG5hbWUpIHsNCgkkZiA9IGZldGNoX2Zvcm0oJG5hbWUpOw0KCWlmICgkZikg
ew0KCQkvLyBhcnJheV9wdXNoKCRzdGFjaywgJG5hbWUpOw0KCQkkb3V0ID0gcGFyc2UoJGYp
Ow0KCQkvLyBhcnJheV9wb3AoJHN0YWNrKTsNCgkJcmV0dXJuICRvdXQ7DQoJfQ0KfQ0KDQov
LyBwcm92aWRlcyBhIG5lc3RlZCBsaXN0IG9mIGNvbW1lbnRzDQovLyB0aGlzIHN0YXJ0ZWQg
YXMgYSBkaXJlY3QgY3V0LWFuZC1wYXN0ZSBvZiB0eHAncyAnY29tbWVudHMnIGZ1bmN0aW9u
Li4uDQoNCmZ1bmN0aW9uIHBlZ19jb21tZW50cygkYXR0cykgew0KICBnbG9iYWwgJHRoaXNh
cnRpY2xlLCAkdGhpc2NvbW1lbnQsICRwcmVmczsNCg0KICBleHRyYWN0KGxBdHRzKGFycmF5
KA0KCQknZm9ybScgICAgICAgPT4gJ2NvbW1lbnRzJywNCgkJJ3dyYXB0YWcnICAgID0+ICgk
cHJlZnNbJ2NvbW1lbnRzX2FyZV9vbCddID8gJ29sJyA6ICcnKSwNCgkJJ2JyZWFrJyAgICAg
ID0+ICgkcHJlZnNbJ2NvbW1lbnRzX2FyZV9vbCddID8gJ2xpJyA6ICdkaXYnKSwNCgkJJ2Ns
YXNzJyAgICAgID0+ICdjb21tZW50cycsDQoJCSdicmVha2NsYXNzJyA9PiAnJywNCgkJJ2xp
bWl0JyAgICAgID0+IDAsDQoJCSdvZmZzZXQnICAgICA9PiAwLA0KCQknc29ydCcgICAgICAg
PT4gJ3Bvc3RlZCBBU0MnLA0KCSksJGF0dHMpKTsNCg0KCWFzc2VydF9hcnRpY2xlKCk7DQov
LwlleHRyYWN0KCR0aGlzYXJ0aWNsZSk7DQoNCglpZiAoISR0aGlzYXJ0aWNsZVsnY29tbWVu
dHNfY291bnQnXSkgcmV0dXJuICcnOw0KCSR0aGlzaWQgPSBpbnR2YWwoJHRoaXNhcnRpY2xl
Wyd0aGlzaWQnXSk7DQoNCi8vCSR0eHBfZGlzY3VzcyA9IHNhZmVfcGZ4KCd0eHBfZGlzY3Vz
cycpOw0KLy8JJHBlZ19kaXNjdXNzID0gc2FmZV9wZngoJ3BlZ19kaXNjdXNzJyk7DQoJaWYo
IWVtcHR5KCR0aGlzY29tbWVudCkpIHsNCgkJJHBlZ19jaGlsZHJlbiA9ICR0aGlzY29tbWVu
dFsncGVnX2NoaWxkcmVuJ107DQoJfSBlbHNlIHsNCi8vCQlzYWZlX3F1ZXJ5KCJDUkVBVEUg
VEVNUE9SQVJZIFRBQkxFICRwZWdfZGlzY3VzcyAoU0VMRUNUICogRlJPTSAkdHhwX2Rpc2N1
c3MgV0hFUkUgcGFyZW50aWQ9JHRoaXNpZCBBTkQgdmlzaWJsZT0iLlZJU0lCTEUuIikiKTsN
CgkJJHJzID0gc2FmZV9yb3dzKCdkaXNjdXNzaWQsIHBlZ19jaGlsZHJlbicsICd0eHBfZGlz
Y3VzcycsICJwYXJlbnRpZD0kdGhpc2lkIEFORCB2aXNpYmxlPSIuVklTSUJMRSk7DQoJCSRw
ZWdfY2hpbGRyZW4gPSAkcm93cyA9IGFycmF5KCk7DQoJCWZvcmVhY2goJHJzIGFzICR2YXJz
KSB7DQoJCQkkcm93c1tdID0gJHZhcnNbJ2Rpc2N1c3NpZCddOw0KCQkJaWYoJHZhcnNbJ3Bl
Z19jaGlsZHJlbiddKSAkcGVnX2NoaWxkcmVuID0gYXJyYXlfbWVyZ2UoJHBlZ19jaGlsZHJl
biwgZXhwbG9kZSgnLCcsICR2YXJzWydwZWdfY2hpbGRyZW4nXSkpOw0KCQl9DQoJCSRwZWdf
Y2hpbGRyZW4gPSBpbXBsb2RlKCcsJywgJHBlZ19jaGlsZHJlbiA/IGFycmF5X2RpZmYoJHJv
d3MsICRwZWdfY2hpbGRyZW4pIDogJHJvd3MpOw0KCX0NCglpZihlbXB0eSgkcGVnX2NoaWxk
cmVuKSkgcmV0dXJuICcnOw0KDQoJJHFwYXJ0cyA9ICJkaXNjdXNzaWQgSU4oJHBlZ19jaGls
ZHJlbikgQU5EIHBhcmVudGlkPSR0aGlzaWQgQU5EIHZpc2libGU9Ii5WSVNJQkxFLg0KCSgk
c29ydCA/ICIgT1JERVIgQlkgJHNvcnQiIDogJycpLg0KCSgkbGltaXQgfHwgJG9mZnNldCA/
ICcgTElNSVQgJy5pbnR2YWwoJG9mZnNldCkuJywgJy5pbnR2YWwoJGxpbWl0KSA6ICcnKTsN
Cg0KCSRycyA9IHNhZmVfcm93cygnKiwgdW5peF90aW1lc3RhbXAocG9zdGVkKSBhcyB0aW1l
JywgJ3R4cF9kaXNjdXNzJywgJHFwYXJ0cyk7DQoJJG91dCA9ICcnOw0KDQoJaWYgKCRycykg
ew0KDQoJCWZvcmVhY2ggKCRycyBhcyAkdmFycykgew0KCQkJJEdMT0JBTFNbJ3RoaXNjb21t
ZW50J10gPSAkdmFyczsNCgkJCSRjb21tZW50c1tdID0gcGVnX3BhcnNlX2Zvcm1fcmVjdXJz
aXZlbHkoJGZvcm0pLm47DQoJCQl1bnNldCgkR0xPQkFMU1sndGhpc2NvbW1lbnQnXSk7DQoJ
CX0NCg0KCQkkb3V0IC49IGRvV3JhcCgkY29tbWVudHMsJHdyYXB0YWcsJGJyZWFrLCRjbGFz
cywkYnJlYWtjbGFzcyk7DQoJfQ0KDQoJcmV0dXJuICRvdXQ7DQp9DQoNCmZ1bmN0aW9uIHBl
Z19jaGlsZF9jb21tZW50cygkYXR0cykgey8vbGVnYWNpdHkgc3R1ZmYNCglyZXR1cm4gcGVn
X2NvbW1lbnRzKCRhdHRzKTsNCn0NCg0KZnVuY3Rpb24gcGVnX3NhdmVDb21tZW50TGlua3Mo
JGV2ZW50LCAkc3RlcD0nJykgew0KCSRyZXBseV90byA9IGh0bWxzcGVjaWFsY2hhcnMocHMo
J3BlZ19yZXBseXRvJykpOw0KCWVjaG8gJHJlcGx5X3RvOw0KCWlmICgkcmVwbHlfdG8gIT0g
J0FydGljbGUnICYmICRyZXBseV90byAhPSAnJykgew0KCQkkbmV4dElEID0gJ2xwYWQoIicu
cGVnX2dldE5leHRBdXRvSUQoc2FmZV9wZngoJ3R4cF9kaXNjdXNzJykpLiciLDYsIjAiKSc7
DQoJCSRycyA9IHNhZmVfdXBkYXRlKCd0eHBfZGlzY3VzcycsJ3BlZ19jaGlsZHJlbiA9IGlm
IChwZWdfY2hpbGRyZW4gPSAiIiwgJy4kbmV4dElELicsICBjb25jYXRfd3MoIiwiLHBlZ19j
aGlsZHJlbiwnLiRuZXh0SUQuJykpJywnZGlzY3Vzc2lkPScuJHJlcGx5X3RvKTsNCgl9DQp9
DQoNCi8vIHRoaXMgb25lIGlzIHN0cmFpZ2h0IG91dCBvZiBjaGFfY29tbWVudF9yZXBseQ0K
ZnVuY3Rpb24gcGVnX2dldE5leHRBdXRvSUQoJHRuYW1lKSB7DQoJLyoNCgkgKiBSZXR1cm4g
dGhlIG5leHQgaWQgdG8gYmUgdXNlZCBvbiBhdXRvX2luY3JlbWVudCBpbiB0YWJsZSAkdG5h
bWUNCgkgKi8NCg0KCSRzdGF0dXMgPSBnZXRSb3coJ3Nob3cgdGFibGUgc3RhdHVzIGxpa2Ug
XCcnLiR0bmFtZS4nXCcnKTsNCglpZiAoaXNfYXJyYXkoJHN0YXR1cykpIHsNCgkJJHJldCA9
ICRzdGF0dXNbJ0F1dG9faW5jcmVtZW50J107DQoJfSBlbHNlIHsNCgkJJHJldCA9IEZhbHNl
Ow0KCX0NCg0KCXJldHVybiAkcmV0Ow0KfQ0KDQovLyBhZGRzIGFuIGludmlzaWJsZSB2YWx1
ZSB0byB0aGUgcmVwbHkgZm9ybQ0KLy8gdGVsbGluZyB1cyB3aGF0IGNvbW1lbnQgaXMgYmVp
bmcgcmVwbGllZCB0bw0KLy8gcHJldHR5IG11Y2ggc3dpcGVkIGZyb20gY2hhX2NvbW1lbnRf
cmVwbHkNCg0KZnVuY3Rpb24gcGVnX3JlcGx5X3RvKCRhdHRzKSB7DQoJZXh0cmFjdChsQXR0
cyhhcnJheSgNCgkJJ2xhYmVsJyAgICA9PiAnJywNCgkJJ3dyYXB0YWcnICA9PiAnc3Bhbics
DQoJCSdjbGFzcycgICAgPT4gJycsDQoJCSdiYWNrJyAgICAgPT4gJyMnLA0KCQknY2xvc2Un
ICAgID0+ICcmdGltZXM7JywNCgkJJ3NpemUnICAgICA9PiAyNQ0KCSksJGF0dHMpKTsNCg0K
CSRyZXBseV90byA9IGh0bWxzcGVjaWFsY2hhcnMocHMoJ3BlZ19yZXBseXRvJykpOw0KCSRy
ZXBseV90b19pbnB1dCA9IGh0bWxzcGVjaWFsY2hhcnMocHMoJ3BlZ19yZXBseXRvX2lucHV0
JykpOw0KDQoJcmV0dXJuDQoJJzwnLiR3cmFwdGFnLicgaWQ9InBlZ19yZXBseXRvX3dyYXAi
IGNsYXNzPSInLiRjbGFzcy4gKCRyZXBseV90bz8ncGVnX3JlcGx5dG9fYWN0aXZlJzoncGVn
X3JlcGx5dG9faW5hY3RpdmUnKS4nIj4nLm4uDQoJJzxsYWJlbCBmb3I9InBlZ19yZXBseXRv
X2lucHV0IiBpZD0icGVnX3JlcGx5dG9fbGFiZWwiPicuJGxhYmVsLic8L2xhYmVsPjxpbnB1
dCB0eXBlPSJ0ZXh0IiBuYW1lPSJwZWdfcmVwbHl0b19pbnB1dCIgaWQ9InBlZ19yZXBseXRv
X2lucHV0IiB2YWx1ZT0iJy4kcmVwbHlfdG9faW5wdXQuJyIgcmVhZG9ubHkgc2l6ZT0iJy4k
c2l6ZS4nIiAvPicubi4NCgknPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0icGVnX3JlcGx5
dG8iIGlkPSJwZWdfcmVwbHl0byIgdmFsdWU9IicuJHJlcGx5X3RvLiciIC8+Jy5uLg0KICAJ
KCRiYWNrID8gJzxhIGlkPSJwZWdfcmVwbHl0b19iYWNrbGluayIgaHJlZj0nLigkcmVwbHlf
dG8/IiNjJHJlcGx5X3RvIjoiIyIpLic+Jy4kYmFjay4nPC9hPicgOiAnJykubi4NCiAgCSgk
Y2xvc2UgPyAnPGEgaWQ9InBlZ19yZXBseXRvX2Nsb3NlbGluayIgaHJlZj0iI3BlZ19yZXBs
eXRvX2lucHV0IiB0aXRsZT0iRW1wdHkiIG9uY2xpY2s9InJldHVybiBwZWdfc2VsZWN0Q29t
bWVudChudWxsLG51bGwsbnVsbCx0aGlzKTsiPicuJGNsb3NlLic8L2E+JyA6ICcnKS4nPC8n
LiR3cmFwdGFnLic+Jy5uLg0KDQoJJzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4N
CgkJZnVuY3Rpb24gcGVnX3NlbGVjdENvbW1lbnQoZGlzY3Vzc2lkLG5hbWUsdGl0bGUsdGFy
Z2V0KSB7DQoJCQl2YXIgcGVnU2VsZWN0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBl
Z19yZXBseXRvIik7DQoJCQl2YXIgcGVnU2VsZWN0V3JhcCA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJwZWdfcmVwbHl0b193cmFwIik7DQoJCQl2YXIgcGVnU2VsZWN0SW5wdXQgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgicGVnX3JlcGx5dG9faW5wdXQiKTsNCgkJCXZhciBw
ZWdTZWxlY3RCYWNrID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBlZ19yZXBseXRvX2Jh
Y2tsaW5rIik7DQoNCgkJCWlmKHBlZ1NlbGVjdCkgcGVnU2VsZWN0LnZhbHVlID0gZGlzY3Vz
c2lkOw0KCQkJaWYocGVnU2VsZWN0V3JhcCkgew0KCQkJCXBlZ1NlbGVjdFdyYXAuY2xhc3NO
YW1lID0gKGRpc2N1c3NpZD8icGVnX3JlcGx5dG9fYWN0aXZlIjoicGVnX3JlcGx5dG9faW5h
Y3RpdmUiKTsNCgkJCX0NCgkJCWlmKHBlZ1NlbGVjdElucHV0KSB7DQoJCQkJcGVnU2VsZWN0
SW5wdXQudmFsdWUgPSAobmFtZT9uYW1lOiIiKTsNCgkJCQlwZWdTZWxlY3RJbnB1dC50aXRs
ZSA9ICh0aXRsZT90aXRsZToiIik7DQoJCQl9DQoJCQlpZihwZWdTZWxlY3RCYWNrKSB7DQoJ
CQkJcGVnU2VsZWN0QmFjay5ocmVmID0gKGRpc2N1c3NpZD8iI2MiK2Rpc2N1c3NpZDpudWxs
KTsNCgkJCQlwZWdTZWxlY3RCYWNrLnRpdGxlID0gKGRpc2N1c3NpZD9kaXNjdXNzaWQ6IiIp
Ow0KCQkJfQ0KCQkJcmV0dXJuICEhZGlzY3Vzc2lkOw0KCQl9DQoJPC9zY3JpcHQ+JzsNCn0N
Cg0KZnVuY3Rpb24gcGVnX3JlcGx5X2xpbmsoJGF0dHMpIHsNCgkvLyBvdXIgY3VycmVudCBj
b21tZW50DQoJZ2xvYmFsICR0aGlzYXJ0aWNsZSwgJHRoaXNjb21tZW50LCAkY29tbWVudHNf
ZGF0ZWZvcm1hdDsNCiAgICAvLwlpZiAoIWNoZWNrQ29tbWVudHNBbGxvd2VkKCR0aGlzYXJ0
aWNsZVsndGhpc2lkJ10pKSByZXR1cm47DQoJZXh0cmFjdChsQXR0cyhhcnJheSgNCgkJJ2xh
YmVsJyAgICA9PiAnUmVwbHknLA0KCQknc2l6ZScgICAgID0+IDgwDQoJKSwkYXR0cykpOw0K
DQoJJGhyZWYgPSAiI3R4cENvbW1lbnRJbnB1dEZvcm0iOw0KDQoJaWYoJHNpemUpIHsNCgkJ
JHRpdGxlID0gcHJlZ19yZXBsYWNlKCcvXHMrL3MnLCAnICcsIHN1YnN0cih0cmltKHN0cmlw
X3RhZ3MoJHRoaXNjb21tZW50WydtZXNzYWdlJ10pKSwgMCwgJHNpemUrMTYpKTsNCgkJaWYo
c3RybGVuKCR0aXRsZSkgPiAkc2l6ZSs4KSB7DQoJCQkkdGl0bGUgPSBzdWJzdHIoJHRpdGxl
LCAwLCAkc2l6ZSk7DQoJCQkkdGl0bGUgPSBzdWJzdHIoJHRpdGxlLCAwLCBzdHJycG9zKCR0
aXRsZSwiICIpKTsNCgkJCSR0aXRsZSA9ICR0aXRsZS4nLi4uJzsNCgkJfQ0KCX0gZWxzZSAk
dGl0bGU9Jyc7DQoNCgkkb25jbGljayA9ICJyZXR1cm4gcGVnX3NlbGVjdENvbW1lbnQoJyIu
JHRoaXNjb21tZW50WydkaXNjdXNzaWQnXS4iJywnIi5odG1sc3BlY2lhbGNoYXJzKCR0aGlz
Y29tbWVudFsnbmFtZSddKS4iICYjMTgzOyAiLnNhZmVfc3RyZnRpbWUoJGNvbW1lbnRzX2Rh
dGVmb3JtYXQsICR0aGlzY29tbWVudFsndGltZSddKS4iJywnJHRpdGxlJywgdGhpcykiOw0K
DQoJJG91dCA9ICI8YSBjbGFzcz1cInBlZ19yZXBseXRvXCIgaHJlZj1cIiRocmVmXCIgb25j
bGljaz1cIiRvbmNsaWNrXCI+JGxhYmVsPC9hPiI7DQoNCglyZXR1cm4gJG91dDsNCn0NCiI7
czo0OiJ0eXBlIjtzOjE6IjUiO3M6NToib3JkZXIiO3M6MToiNSI7czo1OiJmbGFncyI7czox
OiIyIjtzOjQ6ImhlbHAiO3M6MzMxMjoiPGgxPnBlZ19uZXN0ZWRfY29tbWVudHM8L2gxPgoK
PGgyPkluc3RhbGxhdGlvbiwgdXBncmFkaW5nIGFuZCB1bmluc3RhbGxhdGlvbjwvaDI+Cgo8
cD5Eb3dubG9hZCB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhlIHBsdWdpbiwgcGFzdGUgdGhl
IGNvZGUgaW50byB0aGUgVGV4dHBhdHRlcm4gQWRtaW4g4oaSIFBsdWdpbnMgcGFuZWwsIGlu
c3RhbGwgYW5kIGVuYWJsZSB0aGUgcGx1Z2luLjwvcD4KCjxwPlRvIHVuaW5zdGFsbCwgZGVs
ZXRlIGZyb20gdGhlIEFkbWluIOKGkiBQbHVnaW5zIHBhbmVsLjwvcD4KCjxoMj5UYWdzPC9o
Mj4KCjxoMz5wZWdfY29tbWVudHMgdGFnPC9oMz4KCjxwcmU+PGNvZGU+Jmx0O3R4cDpwZWdf
Y29tbWVudHMgLyZndDs8L2NvZGU+PC9wcmU+Cgo8cD5JbiB0aGUgPGNvZGU+Y29tbWVudHNf
ZGlzcGxheTwvY29kZT4gZm9ybSwgcmVwbGFjZSB5b3VyIDxjb2RlPiZsdDt0eHA6Y29tbWVu
dHMgLyZndDs8L2NvZGU+IHdpdGggPGNvZGU+Jmx0O3R4cDpwZWdfY29tbWVudHMgLyZndDs8
L2NvZGU+LjwvcD4KCjxoND5BdHRyaWJ1dGVzPC9oND4KCjxwPkF0dHJpYnV0ZXMgYXJlIHRo
ZSBzYW1lIGFzIDxjb2RlPiZsdDt0eHA6Y29tbWVudHMgLyZndDs8L2NvZGU+LjxiciAvPgpT
ZWUgPGEgaHJlZj0iaHR0cDovL3d3dy50ZXh0cGF0dGVybi5uZXQvd2lraS9pbmRleC5waHA/
dGl0bGU9Y29tbWVudHMiIHJlbD0ibm9mb2xsb3ciPmhlcmU8L2E+IGZvciBtb3JlIGluZm9y
bWF0aW9ucy48L3A+Cgo8aDM+cGVnX2NoaWxkX2NvbW1lbnRzIHRhZzwvaDM+Cgo8cHJlPjxj
b2RlPiZsdDt0eHA6cGVnX2NoaWxkX2NvbW1lbnRzIC8mZ3Q7PC9jb2RlPjwvcHJlPgoKPHA+
aW4geW91ciA8Y29kZT5jb21tZW50czwvY29kZT4gZm9ybSwgYWRkIDxjb2RlPiZsdDt0eHA6
cGVnX2NoaWxkX2NvbW1lbnRzIC8mZ3Q7PC9jb2RlPiBhdCB0aGUgZW5kLiBEdXBsaWNhdGUg
d2hhdGV2ZXIgYXR0cmlidXRlcyB5b3UgdXNlZCBmb3IgPGNvZGU+Jmx0O3R4cDpwZWdfY29t
bWVudHMgLyZndDs8L2NvZGU+LjwvcD4KCjxoMz5wZWdfcmVwbHlfbGluayB0YWc8L2gzPgoK
PHByZT48Y29kZT4mbHQ7dHhwOnBlZ19yZXBseV9saW5rIC8mZ3Q7PC9jb2RlPjwvcHJlPgoK
PHA+QWxzbyBhZGQgPGNvZGU+Jmx0O3R4cDpwZWdfcmVwbHlfbGluayAvJmd0OzwvY29kZT4g
d2hlcmV2ZXIgeW91IHNlZSBmaXQ7IHRoaXMgZ2VuZXJhdGVzIHRoZSBsaW5rIHRvIHJlcGx5
IHRvIHRoZSBjb21tZW50LjwvcD4KCjxoMz5wZWdfcmVwbHlfdG8gdGFnPC9oMz4KCjxwcmU+
PGNvZGU+Jmx0O3R4cDpwZWdfcmVwbHlfdG8gLyZndDs8L2NvZGU+PC9wcmU+Cgo8cD5maW5h
bGx5LCBpbnNlcnQgPGNvZGU+Jmx0O3R4cDpwZWdfcmVwbHlfdG8gLyZndDs8L2NvZGU+IHNv
bWV3aGVyZSBpbiB5b3VyIDxjb2RlPmNvbW1lbnRfZm9ybTwvY29kZT4gZm9ybS48L3A+Cgo8
aDQ+QXR0cmlidXRlczwvaDQ+Cgo8dWw+Cgk8bGk+PGNvZGU+d3JhcHRhZz0mcXVvdDtzcGFu
JnF1b3Q7PC9jb2RlPiAgPGVtPihkZWZhdWx0OiBzcGFuKTwvZW0+Cgk8dWw+CgkJPGxpPnVz
ZWQgdG8gd3JhcCB0aGUgZ2VuZXJhdGVkIGxhYmVsLCBpbnB1dCBhbmQgbGlua3M7PC9saT4K
CTwvdWw+PC9saT4KCTxsaT48Y29kZT5jbGFzcz0mcXVvdDsmcXVvdDs8L2NvZGU+Cgk8dWw+
CgkJPGxpPmFwcGxpZWQgdG8gdGhlIHdyYXB0YWc7PC9saT4KCTwvdWw+PC9saT4KCTxsaT48
Y29kZT5sYWJlbD0mcXVvdDtZb3VyIGxhYmVsJnF1b3Q7PC9jb2RlPiA8ZW0+KGRlZmF1bHQ6
IFJlcGx5aW5nIHRvKTwvZW0+Cgk8dWw+CgkJPGxpPnVzZWQgYXMgdGhlIHZhbHVlIG9mIHRo
ZSA8Y29kZT4mbHQ7bGFiZWwmZ3Q7PC9jb2RlPiA8c3BhbiBjbGFzcz0iY2FwcyI+SFRNTDwv
c3Bhbj4gdGFnOzwvbGk+Cgk8L3VsPjwvbGk+Cgk8bGk+PGNvZGU+YmFjaz0mcXVvdDtHbyB0
aGUgaW5pdGlhbCBjb21tZW50JnF1b3Q7PC9jb2RlPiA8ZW0+KGRlZmF1bHQ6ICMpPC9lbT4K
CTx1bD4KCQk8bGk+dXNlZCBhcyBhIGxpbmsgdG8gdGhlIGNvbW1lbnQgeW91IGFyZSByZXBs
eWluZyB0bzs8L2xpPgoJPC91bD48L2xpPgoJPGxpPjxjb2RlPmNsb3NlPSZxdW90O1VuY2hh
aW4mcXVvdDs8L2NvZGU+IDxlbT4oZGVmYXVsdDogw5cpPC9lbT4KCTx1bD4KCQk8bGk+dXNl
ZCBhcyBmb3IgbGluayB3aGljaCBhbGxvdyB0byBicmVhayB0aGUgbGluayB0byB0aGUgY29t
bWVudCB5b3Ugd2VyZSByZXBseWluZyB0bzs8L2xpPgoJCTxsaT5hZGQgdGhlIDxjb2RlPi5w
ZWdfcmVwbHl0b19pbmFjdGl2ZTwvY29kZT4gdG8gI3BlZ19yZXBseXRvX3dyYXAuPC9saT4K
CTwvdWw+PC9saT4KCTwvdWw+Cgo8aDQ+U3R5bGluZzwvaDQ+Cgo8cD5Vc2UgPGNvZGU+LnBl
Z19yZXBseXRvX2FjdGl2ZTwvY29kZT4gYW5kIDxjb2RlPi5wZWdfcmVwbHl0b19pbmFjdGl2
ZTwvY29kZT4gY2xhc3NlcyB0byB0byBoaWRlIG9yIGFsdGVyIHRoZSBkaXNwbGF5IG9mIHRo
aXMgdGFnIGNvbnRlbnQgaW4geW91ciBjb21tZW50IGZvcm0uIDxjb2RlPi5wZWdfcmVwbHl0
b19hY3RpdmU8L2NvZGU+IGlzIHVzZWQgb24gcmVwbHksIDxjb2RlPi5wZWdfcmVwbHl0b19p
bmFjdGl2ZTwvY29kZT4gb24gc2ltcGxlIGNvbW1lbnQ7IHRoZSBzZWNvbmQgb25lIHNob3Vs
ZCBiZSBlbm91Z2ggdG8gZG8gdGhlIGZvbGxvd2luZy48L3A+Cgo8aDU+RXhlbXBsZXM8L2g1
PgoKPHA+Qmx1ciB0aGUgY29udGVudCBvbiBzaW1wbGUgY29tbWVudCAobm90IGEgcmVwbHkp
4oCmPC9wPgoKPHByZT48Y29kZT4ucGVnX3JlcGx5dG9faW5hY3RpdmUgeyBvcGFjaXR5OiAw
LjY7IH08L2NvZGU+PC9wcmU+Cgo8cD7igKZvciBoaWRlIGl0IHdpdGjigKY8L3A+Cgo8cHJl
Pjxjb2RlPi5wZWdfcmVwbHl0b19pbmFjdGl2ZSB7IGRpc3BsYXk6IG5vbmU7IH08L2NvZGU+
PC9wcmU+Cgo8cD7igKZvcuKApjwvcD4KCjxwcmU+PGNvZGU+LnBlZ19yZXBseXRvX2luYWN0
aXZlIHsgdmlzaWJpbGl0eTogaGlkZGVuOyB9PC9jb2RlPjwvcHJlPgoKPGgyPkF1dGhvcnMv
Y3JlZGl0czwvaDI+Cgo8cD5NYWRlIFR4cDQuNSBjb21wYXRpYmxlIGJ5IDxhIGhyZWY9Imh0
dHA6Ly93d3cuaXV0LWZibGVhdS5mci9wcm9qZXQvZXRjLyIgcmVsPSJub2ZvbGxvdyI+T2xl
ZyBMb3VraWFub3Y8L2E+IGZyb20gYSBNYXJnYXJldCBUcmF1dGgmIzgyMTc7cyBjb2RlLjxi
ciAvPgpNYW55IHRoYW5rcyB0byA8YSBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vYmxvYXR3
YXJlL3BlZ19uZXN0ZWRfY29tbWVudHMvZ3JhcGhzL2NvbnRyaWJ1dG9ycyIgcmVsPSJub2Zv
bGxvdyI+YWxsIGFkZGl0aW9uYWwgY29udHJpYnV0b3JzPC9hPi48L3A+IjtzOjM6Im1kNSI7
czozMjoiNTczZmNhOGEyZGVkZmI4OGQyMjJhMmJmODRjYmVjNTMiO30=