(ITS#8173)
by Adrian.Raemy@vtg.admin.ch
--_000_BE8E19527611BA409D68FF6EA186AF9002A2A6AABEREXMBX19ifc1i_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Dear Howard,
Below the bt full with Openldap 2.4.40 built with "-g" flag.
Let me know if you need more...hope you have a solution for the problem bec=
ause it is really a Problem for us..
slapd of backend ldap crashes 4-5 times per day.
Regards
Adrian
warning: Could not load shared library symbols for stics.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `/usr/lib/openldap/slapd -h ldap://0.0.0.0:389 ldap=
s://0.0.0.0:636 -f /etc/op'.
Program terminated with signal 11, Segmentation fault.
#0 0x00007fcbb60572c6 in ldap_back_bind (op=3D0x7fcbb6c0dc00, rs=3D0x7fcba=
d881a30) at bind.c:319
319 bind.c: No such file or directory.
(gdb) bt full
#0 0x00007fcbb60572c6 in ldap_back_bind (op=3D0x7fcbb6c0dc00, rs=3D0x7fcba=
d881a30) at bind.c:319
li =3D 0x7fcbb6443e40
lc =3D 0x0
ctrls =3D 0x0
save_o_dn =3D {bv_len =3D 0, bv_val =3D 0x0}
save_o_do_not_cache =3D 0
rc =3D 52
msgid =3D 2
retrying =3D LDAP_BACK_DONTSEND
__PRETTY_FUNCTION__ =3D "ldap_back_bind"
#1 0x00007fcbb5f47fcb in fe_op_bind (op=3D0x7fcbb6c0dc00, rs=3D0x7fcbad881=
a30) at bind.c:383
bd =3D 0x7fcbad881750
#2 0x00007fcbb5fb66fd in overlay_op_walk (op=3D0x7fcbb6c0dc00, rs=3D0x7fcb=
ad881a30, which=3Dop_bind, oi=3D0x7fcbb6443430, on=3D0x0) at backover.c:671
func =3D 0x7fcbb6343ad8 <slap_frontendInfo+88>
rc =3D 32768
#3 0x00007fcbb5fb6956 in over_op_func (op=3D0x7fcbb6c0dc00, rs=3D0x7fcbad8=
81a30, which=3Dop_bind) at backover.c:723
oi =3D 0x7fcbb6443430
on =3D 0x7fcbb6443610
be =3D 0x7fcbb6343c40 <slap_frontendDB>
db =3D {bd_info =3D 0x7fcbb6343a80 <slap_frontendInfo>, bd_self =3D=
0x7fcbb6343c40 <slap_frontendDB>, be_ctrls =3D "\000", '\001' <repeats 18 =
times>, '\000' <repeats 13 times>,
be_flags =3D 768, be_restrictops =3D 0, be_requires =3D 0, be_ssf=
_set =3D {sss_ssf =3D 112, sss_transport =3D 0, sss_tls =3D 56, sss_sasl =
=3D 0, sss_update_ssf =3D 112, sss_update_transport =3D 0,
sss_update_tls =3D 0, sss_update_sasl =3D 0, sss_simple_bind =
=3D 0}, be_suffix =3D 0x7fcbb643bd50, be_nsuffix =3D 0x7fcbb643bda0, be_sch=
emadn =3D {bv_len =3D 12,
bv_val =3D 0x7fcbb6474530 "cn=3DSubschema"}, be_schemandn =3D {=
bv_len =3D 12, bv_val =3D 0x7fcbb6474670 "cn=3Dsubschema"}, be_rootdn =3D {=
bv_len =3D 0, bv_val =3D 0x0}, be_rootndn =3D {bv_len =3D 0,
bv_val =3D 0x0}, be_rootpw =3D {bv_len =3D 0, bv_val =3D 0x0}, =
be_max_deref_depth =3D 0, be_def_limit =3D {lms_t_soft =3D 3600, lms_t_hard=
=3D 0, lms_s_soft =3D -1, lms_s_hard =3D 0,
lms_s_unchecked =3D -1, lms_s_pr =3D 0, lms_s_pr_hide =3D 0, lms=
_s_pr_total =3D 0}, be_limits =3D 0x0, be_acl =3D 0x0, be_dfltaccess =3D AC=
L_READ, be_extra_anlist =3D 0x0, be_update_ndn =3D {
bv_len =3D 0, bv_val =3D 0x0}, be_update_refs =3D 0x0, be_pendi=
ng_csn_list =3D 0x0, be_pcl_mutex =3D {__data =3D {__lock =3D 0, __count =
=3D 0, __owner =3D 0, __nusers =3D 0, __kind =3D 0,
__spins =3D 0, __list =3D {__prev =3D 0x0, __next =3D 0x0}}, =
__size =3D '\000' <repeats 39 times>, __align =3D 0}, be_syncinfo =3D 0x0, =
be_pb =3D 0x0,
be_cf_ocs =3D 0x7fcbb63355a0 <cf_ocs+448>, be_private =3D 0x0, be=
_next =3D {stqe_next =3D 0x7fcbb643fa00}}
cb =3D {sc_next =3D 0x0, sc_response =3D 0x7fcbb5fb5629 <over_back_=
response>, sc_cleanup =3D 0x0, sc_writewait =3D 0x0, sc_private =3D 0x7fcbb=
6443430}
sc =3D 0x7fcbb6c0dc38
rc =3D 32768
__PRETTY_FUNCTION__ =3D "over_op_func"
#4 0x00007fcbb5fb69de in over_op_bind (op=3D0x7fcbb6c0dc00, rs=3D0x7fcbad8=
81a30) at backover.c:738
No locals.
#5 0x00007fcbb5f47697 in do_bind (op=3D0x7fcbb6c0dc00, rs=3D0x7fcbad881a30=
) at bind.c:205
ber =3D 0x7fcb8c1a9510
version =3D 3
method =3D 128
mech =3D {bv_len =3D 0, bv_val =3D 0x0}
dn =3D {bv_len =3D 41, bv_val =3D 0x7fcb88344a3a "cn=3Dxxxxbnd,ou=
=3Dbind,dc=3Dxxxx,dc=3Dxxxx.xx"}
tag =3D 128
be =3D 0x0
#6 0x00007fcbb5f1df19 in connection_operation (ctx=3D0x7fcbad881b80, arg_v=
=3D0x7fcbb6c0dc00) at connection.c:1155
rc =3D 80
cancel =3D 0
op =3D 0x7fcbb6c0dc00
rs =3D {sr_type =3D REP_RESULT, sr_tag =3D 97, sr_msgid =3D 2, sr_e=
rr =3D 52, sr_matched =3D 0x0, sr_text =3D 0x7fcbb60e698a "Start TLS failed=
", sr_ref =3D 0x0, sr_ctrls =3D 0x0, sr_un =3D {
sru_search =3D {r_entry =3D 0x0, r_attr_flags =3D 0, r_operatio=
nal_attrs =3D 0x0, r_attrs =3D 0x0, r_nentries =3D 0, r_v2ref =3D 0x0}, sru=
_sasl =3D {r_sasldata =3D 0x0}, sru_extended =3D {
r_rspoid =3D 0x0, r_rspdata =3D 0x0}}, sr_flags =3D 0}
tag =3D 96
opidx =3D SLAP_OP_BIND
conn =3D 0x7fcbae0f22d0
memctx =3D 0x7fcbb64fada0
memctx_null =3D 0x0
memsiz =3D 1048576
__PRETTY_FUNCTION__ =3D "connection_operation"
#7 0x00007fcbb5f1e4e1 in connection_read_thread (ctx=3D0x7fcbad881b80, arg=
v=3D0x281) at connection.c:1291
rc =3D 0
cri =3D {op =3D 0x7fcbb6c0dc00, func =3D 0x0, arg =3D 0x0, ctx =3D =
0x7fcbad881b80, nullop =3D 0}
s =3D 641
#8 0x00007fcbb5a53c3c in ldap_int_thread_pool_wrapper (xpool=3D0x7fcbb640a=
f70) at tpool.c:688
pool =3D 0x7fcbb640af70
task =3D 0x7fcba8787f80
work_list =3D 0x7fcbb640b008
ctx =3D {ltu_id =3D 140512766469888, ltu_key =3D {{ltk_key =3D 0x7f=
cbb5f1da15 <conn_counter_init>, ltk_data =3D 0x7fcbb64fac90, ltk_free =3D 0=
x7fcbb5f1d817 <conn_counter_destroy>}, {
ltk_key =3D 0x7fcbb5f95b15 <slap_sl_mem_init>, ltk_data =3D 0=
x7fcbb64fada0, ltk_free =3D 0x7fcbb5f95944 <slap_sl_mem_destroy>}, {ltk_key=
=3D 0x7fcbb5f3991c <slap_op_free>,
ltk_data =3D 0x7fcbb6c0ce30, ltk_free =3D 0x7fcbb5f39874 <sla=
p_op_q_destroy>}, {ltk_key =3D 0x0, ltk_data =3D 0x0, ltk_free =3D 0x0} <re=
peats 29 times>}}
kctx =3D 0x0
i =3D 32
keyslot =3D 838
hash =3D 2545024838
__PRETTY_FUNCTION__ =3D "ldap_int_thread_pool_wrapper"
#9 0x00007fcbb4e6c806 in start_thread (arg=3D<optimized out>) at pthread_c=
reate.c:301
__res =3D <optimized out>
pd =3D 0x7fcbad882700
unwind_buf =3D {cancel_jmp_buf =3D {{jmp_buf =3D {140512766469888, =
-3966806835471793915, 140512774851584, 140512766468096, 0, 8388608, 3991395=
584477806853, 3991451503570501893},
mask_was_saved =3D 0}}, priv =3D {pad =3D {0x0, 0x0, 0x0, 0x0=
}, data =3D {prev =3D 0x0, cleanup =3D 0x0, canceltype =3D 0}}}
not_first_call =3D <optimized out>
robust =3D <optimized out>
freesize =3D <optimized out>
__PRETTY_FUNCTION__ =3D "start_thread"
#10 0x00007fcbb36b702d in gnu_dev_makedev (major=3D3066092544, minor=3D<opt=
imized out>) at ../sysdeps/unix/sysv/linux/makedev.c:37
No locals.
#11 0x0000000000000000 in ?? ()
No symbol table info available.
--_000_BE8E19527611BA409D68FF6EA186AF9002A2A6AABEREXMBX19ifc1i_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri","sans-serif";
mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
span.E-MailFormatvorlage17
{mso-style-type:personal-compose;
font-family:"Calibri","sans-serif";
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri","sans-serif";
mso-fareast-language:EN-US;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3D"DE-CH" link=3D"blue" vlink=3D"purple">
<div class=3D"WordSection1">
<p class=3D"MsoNormal"><span lang=3D"EN-US">Dear Howard,<o:p></o:p></span><=
/p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p> </o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Below the bt full with Openldap=
2.4.40 built with “-g” flag.<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p> </o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Let me know if you need more=
230;hope you have a solution for the problem because it is really a Problem=
for us..<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">slapd of backend ldap crashes 4=
-5 times per day.<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p> </o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Regards<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Adrian<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p> </o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">warning: Could not load shared =
library symbols for stics.<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Do you need "set solib-sea=
rch-path" or "set sysroot"?
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">[Thread debugging using libthre=
ad_db enabled] &=
nbsp;
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Using host libthread_db library=
"/lib64/libthread_db.so.1".<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Core was generated by `/usr/lib=
/openldap/slapd -h ldap://0.0.0.0:389 ldaps://0.0.0.0:636 =
-f /etc/op'.<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Program terminated with signal =
11, Segmentation fault. &nbs=
p; &=
nbsp; &nbs=
p; &=
nbsp;
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">#0 0x00007fcbb60572c6 in =
ldap_back_bind (op=3D0x7fcbb6c0dc00, rs=3D0x7fcbad881a30) at bind.c:319&nbs=
p;
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">319 bin=
d.c: No such file or directory. &n=
bsp;  =
; &n=
bsp;  =
; &n=
bsp;
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">(gdb) bt full =
&nb=
sp; =
&nb=
sp; =
&nb=
sp; =
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">#0 0x00007fcbb60572c6 in =
ldap_back_bind (op=3D0x7fcbb6c0dc00, rs=3D0x7fcbad881a30) at bind.c:319<o:p=
></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; </span><span lang=3D"IT">li =3D 0x7fcbb6443e40<o:p></o:p></span=
></p>
<p class=3D"MsoNormal"><span lang=3D"IT"> &nbs=
p; lc =3D 0x0<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"IT"> &nbs=
p; ctrls =3D 0x0<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"IT"> &nbs=
p; </span><span lang=3D"EN-US">save_o_dn =3D {bv_len =3D 0, bv_val =
=3D 0x0}<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; save_o_do_not_cache =3D 0<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; rc =3D 52<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; msgid =3D 2<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; retrying =3D LDAP_BACK_DONTSEND<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; __PRETTY_FUNCTION__ =3D "ldap_back_bind"<o:p></o:p></=
span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">#1 0x00007fcbb5f47fcb in =
fe_op_bind (op=3D0x7fcbb6c0dc00, rs=3D0x7fcbad881a30) at bind.c:383<o:p></o=
:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; bd =3D 0x7fcbad881750<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">#2 0x00007fcbb5fb66fd in =
overlay_op_walk (op=3D0x7fcbb6c0dc00, rs=3D0x7fcbad881a30, which=3Dop_bind,=
oi=3D0x7fcbb6443430, on=3D0x0) at backover.c:671<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; func =3D 0x7fcbb6343ad8 <slap_frontendInfo+88><o:p></=
o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; rc =3D 32768<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">#3 0x00007fcbb5fb6956 in =
over_op_func (op=3D0x7fcbb6c0dc00, rs=3D0x7fcbad881a30, which=3Dop_bind) at=
backover.c:723<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; oi =3D 0x7fcbb6443430<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; on =3D 0x7fcbb6443610<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; be =3D 0x7fcbb6343c40 <slap_frontendDB><o:p></o:p></span>=
</p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; db =3D {bd_info =3D 0x7fcbb6343a80 <slap_frontendInfo>, b=
d_self =3D 0x7fcbb6343c40 <slap_frontendDB>, be_ctrls =3D "\000&=
quot;, '\001' <repeats 18 times>, '\000' <repeats 13 times>,<o:=
p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; be_flags =3D 768, be_restrictops =3D 0, be_requires=
=3D 0, be_ssf_set =3D {sss_ssf =3D 112, sss_transport =3D 0, sss_tls =3D 5=
6, sss_sasl =3D 0, sss_update_ssf =3D 112, sss_update_transport =3D 0,<o:p>=
</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; sss_update_tls =3D 0, sss_update_sasl =
=3D 0, sss_simple_bind =3D 0}, be_suffix =3D 0x7fcbb643bd50, be_nsuffix =3D=
0x7fcbb643bda0, be_schemadn =3D {bv_len =3D 12,<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; bv_val =3D 0x7fcbb6474530 "cn=3DSu=
bschema"}, be_schemandn =3D {bv_len =3D 12, bv_val =3D 0x7fcbb6474670 =
"cn=3Dsubschema"}, be_rootdn =3D {bv_len =3D 0, bv_val =3D 0x0}, =
be_rootndn =3D {bv_len =3D 0,<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; bv_val =3D 0x0}, be_rootpw =3D {bv_len =
=3D 0, bv_val =3D 0x0}, be_max_deref_depth =3D 0, be_def_limit =3D {lms_t_s=
oft =3D 3600, lms_t_hard =3D 0, lms_s_soft =3D -1, lms_s_hard =3D 0,<o:p></=
o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; lms_s_unchecked =3D -1, lms_s_pr =3D 0, =
lms_s_pr_hide =3D 0, lms_s_pr_total =3D 0}, be_limits =3D 0x0, be_acl =3D 0=
x0, be_dfltaccess =3D ACL_READ, be_extra_anlist =3D 0x0, be_update_ndn =3D =
{<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; bv_len =3D 0, bv_val =3D 0x0}, be_updat=
e_refs =3D 0x0, be_pending_csn_list =3D 0x0, be_pcl_mutex =3D {__data =3D {=
__lock =3D 0, __count =3D 0, __owner =3D 0, __nusers =3D 0, __kind =3D 0,<o=
:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; __spins =3D 0, __list =3D {=
__prev =3D 0x0, __next =3D 0x0}}, __size =3D '\000' <repeats 39 times>=
;, __align =3D 0}, be_syncinfo =3D 0x0, be_pb =3D 0x0,<o:p></o:p></span></p=
>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; be_cf_ocs =3D 0x7fcbb63355a0 <cf_ocs+448>=
, be_private =3D 0x0, be_next =3D {stqe_next =3D 0x7fcbb643fa00}}<o:p></o:p=
></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; cb =3D {sc_next =3D 0x0, sc_response =3D 0x7fcbb5fb5629 <ove=
r_back_response>, sc_cleanup =3D 0x0, sc_writewait =3D 0x0, sc_private =
=3D 0x7fcbb6443430}<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; sc =3D 0x7fcbb6c0dc38<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; rc =3D 32768<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; __PRETTY_FUNCTION__ =3D "over_op_func"<o:p></o:p></sp=
an></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">#4 0x00007fcbb5fb69de in =
over_op_bind (op=3D0x7fcbb6c0dc00, rs=3D0x7fcbad881a30) at backover.c:738<o=
:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">No locals.<o:p></o:p></span></p=
>
<p class=3D"MsoNormal"><span lang=3D"EN-US">#5 0x00007fcbb5f47697 in =
do_bind (op=3D0x7fcbb6c0dc00, rs=3D0x7fcbad881a30) at bind.c:205<o:p></o:p>=
</span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; ber =3D 0x7fcb8c1a9510<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; version =3D 3<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; method =3D 128<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; mech =3D {bv_len =3D 0, bv_val =3D 0x0}<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; dn =3D {bv_len =3D 41, bv_val =3D 0x7fcb88344a3a "cn=3Dxxx=
xbnd,ou=3Dbind,dc=3Dxxxx,dc=3Dxxxx.xx"}<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; tag =3D 128<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; be =3D 0x0<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">#6 0x00007fcbb5f1df19 in =
connection_operation (ctx=3D0x7fcbad881b80, arg_v=3D0x7fcbb6c0dc00) at conn=
ection.c:1155<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; rc =3D 80<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; cancel =3D 0<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; op =3D 0x7fcbb6c0dc00<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; rs =3D {sr_type =3D REP_RESULT, sr_tag =3D 97, sr_msgid =3D 2, =
sr_err =3D 52, sr_matched =3D 0x0, sr_text =3D 0x7fcbb60e698a "Start T=
LS failed", sr_ref =3D 0x0, sr_ctrls =3D 0x0, sr_un =3D {<o:p></o:p></=
span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; sru_search =3D {r_entry =3D 0x0, r_attr=
_flags =3D 0, r_operational_attrs =3D 0x0, r_attrs =3D 0x0, r_nentries =3D =
0, r_v2ref =3D 0x0}, sru_sasl =3D {r_sasldata =3D 0x0}, sru_extended =3D {<=
o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; r_rspoid =3D 0x0, r_rspdata=
=3D 0x0}}, sr_flags =3D 0}<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; tag =3D 96<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; opidx =3D SLAP_OP_BIND<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; conn =3D 0x7fcbae0f22d0<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; memctx =3D 0x7fcbb64fada0<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; memctx_null =3D 0x0<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; memsiz =3D 1048576<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; __PRETTY_FUNCTION__ =3D "connection_operation"<o:p></=
o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">#7 0x00007fcbb5f1e4e1 in =
connection_read_thread (ctx=3D0x7fcbad881b80, argv=3D0x281) at connection.c=
:1291<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; rc =3D 0<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; cri =3D {op =3D 0x7fcbb6c0dc00, func =3D 0x0, arg =3D 0x0, ctx =
=3D 0x7fcbad881b80, nullop =3D 0}<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; s =3D 641<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">#8 0x00007fcbb5a53c3c in =
ldap_int_thread_pool_wrapper (xpool=3D0x7fcbb640af70) at tpool.c:688<o:p></=
o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; pool =3D 0x7fcbb640af70<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; task =3D 0x7fcba8787f80<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; work_list =3D 0x7fcbb640b008<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; ctx =3D {ltu_id =3D 140512766469888, ltu_key =3D {{ltk_key =3D =
0x7fcbb5f1da15 <conn_counter_init>, ltk_data =3D 0x7fcbb64fac90, ltk_=
free =3D 0x7fcbb5f1d817 <conn_counter_destroy>}, {<o:p></o:p></span><=
/p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; ltk_key =3D 0x7fcbb5f95b15 =
<slap_sl_mem_init>, ltk_data =3D 0x7fcbb64fada0, ltk_free =3D 0x7fcbb=
5f95944 <slap_sl_mem_destroy>}, {ltk_key =3D 0x7fcbb5f3991c <slap_=
op_free>,<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; ltk_data =3D 0x7fcbb6c0ce30=
, ltk_free =3D 0x7fcbb5f39874 <slap_op_q_destroy>}, {ltk_key =3D 0x0,=
ltk_data =3D 0x0, ltk_free =3D 0x0} <repeats 29 times>}}<o:p></o:p><=
/span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; kctx =3D 0x0<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; i =3D 32<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; keyslot =3D 838<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; hash =3D 2545024838<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; __PRETTY_FUNCTION__ =3D "ldap_int_thread_pool_wrapper"=
;<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">#9 0x00007fcbb4e6c806 in =
start_thread (arg=3D<optimized out>) at pthread_create.c:301<o:p></o:=
p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; __res =3D <optimized out><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; pd =3D 0x7fcbad882700<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; unwind_buf =3D {cancel_jmp_buf =3D {{jmp_buf =3D {1405127664698=
88, -3966806835471793915, 140512774851584, 140512766468096, 0, 8388608, 399=
1395584477806853, 3991451503570501893},<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> =
mask_was_saved =3D 0}}, pri=
v =3D {pad =3D {0x0, 0x0, 0x0, 0x0}, data =3D {prev =3D 0x0, cleanup =3D 0x=
0, canceltype =3D 0}}}<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; not_first_call =3D <optimized out><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; robust =3D <optimized out><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; freesize =3D <optimized out><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"> &=
nbsp; __PRETTY_FUNCTION__ =3D "start_thread"<o:p></o:p></sp=
an></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">#10 0x00007fcbb36b702d in gnu_d=
ev_makedev (major=3D3066092544, minor=3D<optimized out>) at ../sysdep=
s/unix/sysv/linux/makedev.c:37<o:p></o:p></span></p>
<p class=3D"MsoNormal">No locals.<o:p></o:p></p>
<p class=3D"MsoNormal">#11 0x0000000000000000 in ?? ()<o:p></o:p></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">No symbol table info available.=
<o:p></o:p></span></p>
</div>
</body>
</html>
--_000_BE8E19527611BA409D68FF6EA186AF9002A2A6AABEREXMBX19ifc1i_--
8 years, 4 months
(ITS#8200) Potential use of freed data after mdb_midl_shrink()
by h.b.furuseth@usit.uio.no
Full_Name: Hallvard B Furuseth
Version: LMDB_0.9.15
OS:
URL:
Submission from: (NULL) (81.191.45.5)
Submitted by: hallvard
This code is wrong if the realloc in mdb_midl_shrink fails:
if (mdb_midl_shrink(&txn->mt_free_pgs))
env->me_free_pgs = txn->mt_free_pgs;
env->me_free_pgs is left pointing as an old, freed IDL.
(Freed when mt_free_pgs was originally grown.)
It should be:
mdb_midl_shrink(&txn->mt_free_pgs);
env->me_free_pgs = txn->mt_free_pgs;
So mdb_midl_shrink() can return void.
8 years, 4 months
(ITS#8199) Crash when modifying the first olcAttributeTypes element in olcSchemaConfig objectClass
by luca.bruno@rocket-internet.de
Full_Name: Luca BRUNO
Version: 2.4.40
OS: Debian
URL:
Submission from: (NULL) (217.110.53.72)
Hi,
slapd 2.4.40 realiably crashes when modifying the 0th olcAttributeTypes element
in a olcSchemaConfig object.
This is a stacktrace captured when trying to change the "DESC" field of the
"gecos" attribute in the "nis" schema (this is just an easier/dumb reproducer,
the crash was first seen in production with a custom schema).
Short stacktrace first:
"""
#0 0x00007f804d028d78 in at_next (at=at@entry=0x7f8040842318) at
../../../../servers/slapd/at.c:368
#1 0x00007f804cfd1a2a in config_generic (c=0x7f8040845650) at
../../../../servers/slapd/bconfig.c:1686
#2 0x00007f804cfd7a4b in config_set_vals (Conf=0x7f804d2d4ca0,
c=0x7f8040845650) at ../../../../servers/slapd/config.c:353
#3 0x00007f804cfd846d in config_parse_add (ct=ct@entry=0x7f804d2d4ca0,
c=c@entry=0x7f8040845650, valx=<optimized out>)
at ../../../../servers/slapd/config.c:697
#4 0x00007f804cfcb977 in config_modify_add (ct=ct@entry=0x7f804d2d4ca0,
ca=ca@entry=0x7f8040845650, i=i@entry=0,
ad=<error reading variable: Unhandled dwarf expression opcode 0xfa>) at
../../../../servers/slapd/bconfig.c:5504
#5 0x00007f804cfcc86d in config_modify_internal (ca=0x7f8040845650,
rs=0x7f8040847a50, op=0x7f804d2d9fc0, ce=<optimized out>)
at ../../../../servers/slapd/bconfig.c:5761
#6 config_back_modify (op=0x7f804d2d9fc0, rs=0x7f8040847a50) at
../../../../servers/slapd/bconfig.c:5906
#7 0x00007f804cffa7f9 in fe_op_modify (op=0x7f80380008b0, rs=0x7f8040847a50) at
../../%2/../servers/slapd/modify.c:303
#8 0x00007f804cffc6bd in do_modify (op=0x7f80380008b0, rs=0x7f8040847a50) at
../../../../servers/slapd/modify.c:177
#9 0x00007f804cfe2d81 in connection_operation (ctx=ctx@entry=0x7f8040847ba0,
arg_v=arg_v@entry=0x7f80380008b0)
at ../../../../servers/slapd/connection.c:1155
#10 0x00007f804cfe30a4 in connection_read_thread (ctx=0x7f8040847ba0,
argv=<optimized out>) at ../../../../servers/slapd/connection.c:1291
#11 0x00007f804cb43f83 in ldap_int_thread_pool_wrapper (opool=0x7f804dfedfd0) at
../../../../libraries/libldap_r/tpool.c:688
#12 0x00007f804af53b50 in start_thread () from
/lib/x86_64-linux-gnu/libpthread.so.0
#13 0x00007f804ac9d95d in clone () from /lib/x86_64-linux-gnu/libc.so.6
#14 0x0000000000000000 in ?? ()222""
Detailed trace:
"""
#0 0x00007f804d028d78 in at_next (at=at@entry=0x7f8040842318) at
../../../../servers/slapd/at.c:368
__PRETTY_FUNCTION__ = "at_next"
#1 0x00007f804cfd1a2a in config_generic (c=0x7f8040845650) at
../../../../servers/slapd/bconfig.c:1686
%3= <optimized out>
at = 0x0
prev = 0x0
i = <optimized out>
__PRETTY_FUNCTION__ = "config_generic"
#2 0x00007f804cfd7a4b in config_set_vals (Conf=0x7f804d2d4ca0,
c=0x7f8040845650) at ../../../../servers/slapd/config.c:353
rc = <optimized out>
arg_type = <optimized out>
ptr = 0x0
#3 0x00007f804cfd846d in config_parse_add (ct=ct@entry=0x7f804d2d4ca0,
c=c@entry=0x7f8040845650, valx=<optimized out>)
at ../../../../servers/slapd/config.c:697
rc = 0
#4 0x00007f804cfcb977 in config_modify_add (ct=ct@entry=0x7f804d2d4ca0,
ca=ca@entry=0x7f8040845650, i=i@entry=0,
ad=<error reading variable: Unhandled dwarf expression opcode 0xfa>) at
../../../../servers/slapd/bconfig.3A3A5504
rc = <optimized out>
#5 0x00007f804cfcc86d in config_modify_internal (ca=0x7f8040845650,
rs=0x7f8040847a50, op=0x7f804d2d9fc0, ce=<optimized out>)
at ../../../../servers/slapd/bconfig.c:5761
e = 0x7f804e00ae18
save_attrs = 0x7f804e01fa30
a = 0x7f804e40b858
colst = 0x7f804e07f120
i = <optimized out>
dels = 0x0
rc = <optimized out>
oc_at = <optimized out>
ct = 0x7f804d2d4ca0
nocs = 2
ptr = <optimized out>
s = <optimized out>
deltail = 0x7f8040846818
ml = <optimized out>
#6 config_back_modify (op=0x7f804d2d9fc0, rs=0x7f8040847a50) at
../../../../servers/slapd/bconfig.c:5906
cfb = 0x7f8040847a50
ce = <optimized out>
last = <optimized out>
ml = <optimized out>
ca = {argc = 18, argv = 0x7f804e99cfa0, argv_size = 513,
line = 0x7f804e058993 "( 1.3.6.1.1.1.1.4 NAME 'loginShell' DESC 'The d
to the login shell' EQUALITY caseExactIA5Match SYNTAX
1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )", tline = 0x7f804e99a340 "(", fname
= 0x7f804d071961 "slapd", lineno = 0,
log = "olcAttributeTypes: value #0", '\000' <repeats 4096 times>,
reply = {err = 0, msg = '\000' <repeats 255 times>}, depth = 0, valx = 1,
values = {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_ber_t = 0,
v_string = 0x0, v_bv = {bv_len = 0, bv_val = 0x0}, v_dn = {vdn_dn = {
bv_len = 0, bv_val = 0x0}, vdn_ndn = {bv_len = 0, bv_val =
0x0}}, v_ad = 0x0}, rvalue_vals = 0x0, rvalue_nvals = 0x0, op = 0, type = 25,
ca_op = 0x7f80380008b0, be = 0x7f804d2dbbe0, bi = 0x0, ca_entry =
0x7f804e00ae18, ca_private = 0x7f804e04f8e0, cleanup = 0, table = Cft_Schema}
rdn % % {bv_len = 2, bv_val = 0x7f804e081ef0
"cn={2}nis,cn=schema,cn=config"}
ptr = <optimized out>
rad = 0x7f804dfeada0
do_pause = <optimized out>
#7 0x00007f804cffa7f9 in fe_op_modify (op=0x7f80380008b0, rs=0x7f8040847a50) at
../../../../servers/slapd/modify.c:303
update = <optimized out>
repl_user = <optimized out>
op_be = <optimized out>
bd = 0x7f804d2dbbe0
textbuf = "\002\000\000\000\000\000\000\000\214\311\303J\200\177\000\000\260\370\231N\200\177\000\000\345\375\377L\200\177\000\000\320\001\000\000\000\000\000\000\240\255\201N\200\177\000\000
\342\375M\200\177\000\000b\366\231N\200\177\000\000\277\000\000\000\000\000\000\000\200șN\200\177\000\000\003\000\000\000\000\000\000\000`\366\231N\200\177\000\000\001\000\000\000\000\000\000\000a\366\231N\200\177\000\000\360h\204@\200\177\000\000\031\000\000\000\000\000\000\000\000\266\005N\200\177\000\000p%\377M\200\177",
'\000' <repeats 18 times>"\220,
\001\000P000\000\000\000\000ߵ\377L\200\177\000\000\020\017\000\070\200\177\000\000\020\025\000\070\200\177\000\000\340i\204@\200\177\000\000pz\204@\200\177\000\000\000\001\000\000\000\000\000\000\260\b\000\070\200\177\000\000\025\000\000\000\000\000\000\000m\210\377L\200\177\000\000\000\000\000\000\000\000\000\000\020\025\000\070\200\177\000"
#8 0x00007f804cffc6bd in do_modify (op=0x7f80380008b0, rs=0x7f8040847a50) at
../../../../servers/slapd/modify.c:177
dn = {bv_len = 29, bv_val = 0x7f804e99b569
"cn={2}nis,cn=schema,cn=config"}
textbuf = "olcAttributeTypes\000jectClass\000amp\000%F\217\067\260\264l\221c`=\bX\302J5\347\343\001\255\064\336\002!\036\322\326L\350\304'\245\234\026\016dJ'\315:\225\034\310f\245ӌuV.\234&F\233c\324\023'\022\236\236\370\"!C\307\065\246\067\363\302\373\021\205\207k\030\037\211d݉\213\213\226\243G\324\345R\323Ӹ\277Lo\270v\031ccEc\215\227\031\244?\222\245\037.\302\303tO\210\211\250\255\ayg\316w(\317U4\210\274\372LJ\246`]\250\230\000!N\372\305\376\365\220\222\264)\004J\353\305^m\325\366\372\361\060ӝ\203Sy\341\302\026M\333\027\252\002\370\234e\370M҅;k\275\266L\200\177\000\000\000\000\000\000\000\000\000\000\b\000\000\000\022\020\204M0S\201N\200\177\000\000\341ؒL\200\177\000"
tmp = 0x0
#9 0000007f804cfe8181 in connection_operation (ctx=ctx@entry=0x7f8040847ba0,
arg_v=arg_v@entry=0x7f80380008b0)
at ../../../../servers/slapd/connection.c:1155
rc = 80
cancel = <optimized out>
op = 0x7f80380008b0
rs = {sr_type = REP_RESULT, sr_tag = 0, sr_msgid = 0, sr_err = 0,
sr_matched = 0x0, sr_text = 0x0, sr_ref = 0x0, sr_ctrls = 0x0, sr_un = {
sru_search = {r_entry = 0x0, r_attr_flags = 0, r_operational_attrs =
0x0, r_attrs = 0x0, r_nentries = 0, r_v2ref 0x0x0}, sru_sasl = {
r_sasldata = 0x0}, sru_extended = {r_rspoid = 0x0, r_rspdata =
0x0}}, sr_flags = 0}
tag = 102
opidx = SLAP_OP_MODIFY
conn = 0x7f804e11a250
memctx = 0x7f8038000f10
memctx_null = 0x0
memsiz = 1048576
__PRETTY_FUNCTION__ = "connection_operation"
#10 0x00007f804cfe30a4 in connection_read_thread (ctx=0x7f8040847ba0,
argv=<optimized out>) at ../../../../servers/slapd/connection.c:1291
rc = <optimized out>
cri = {op = 0x7f80380008b0, func = 0, arg = 0x0, ctx = <optimized out>,
nullop = <optimized out>}
s = <optimized out>
#11 0x00007f804cb43f83 in ldap_int_thread_pool_wrapper (xpool=0x7f804dfedfd0) at
../../../../libraries/libldap_r/tpool.ch688
pool = 0x7f804dfedfd0
task = 0x7f804e3ea890
work_list = <optimized out>
ctx = {ltu_id = 140188814968576, ltu_key = {{ltk_key = 0x7f804cfe0ec0,
ltk_data = 0x7f8038000e00,
ltk_free = 0x7f804cfe0f90 <conn_counter_destroy>}, {ltk_key =
0x7f804d03a760, ltk_data = 0x7f8038000f10,
ltk_free = 0x7f804d03a780 <slap_sl_mem_destroy>}, {ltk_key =
0x7f804cff6cb0, ltk_data = 0x0,
ltk_free = 0x7f804cff6c10 <slap_op_q_destroy>}, {ltk_key =
0x7f804e3e65d0, ltk_data = 0x7f804e81aab0,
ltk_free = 0x7f8047be4540 <bdb_reader_free>}, {ltk_key = 0x0,
ltk_data = 0x0, ltk_free = 0} <repeats 28 times>}}
kctx = <optimized out>
keyslot = <optimized out>
hash = <optimized out>
__PRETTY_FUNCTION__ = "ldap_int_thread_pool_wrapper"
#12 0x00007f804af53b50 in start_thread () from
/lib/x86_64-linux-gnu/libpthread.so.0
No symbol table info available.
#13 0x00007f804ac9d95d in clone () from /lib/x86_64-linux-gnu/libc.so.6
No symbol table info available.
#14 0x0000000000000000 in ?? ()
No symbol table info available.
"""
8 years, 4 months
PRNG from ITS#7027 (shuffling DNS SRV records) is poorly seeded
by Sergio.Gelato@astro.su.se
Full_Name: Sergio Gelato
Version: 2.4.40
OS: Linux
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (85.225.123.131)
As part of ITS#7027, a simple PRNG was added to libraries/libldap/dnssrv.c in
order to implement shuffling of SRV RRs as per RFC2782.
I see two shortcomings with the way this generator is being seeded.
(1) The seed is a very slowly varying function of time: (float)time(NULL) /
(2**32-1). The mantissa of an IEEE754 float has 24 bits, so one only gets a new
seed every 2**7 seconds with the current seeding method.
(2) At any given time, all clients areikikely to use the same seed and therefore
pick the same SRV record. This means the load on individual servers will
fluctuate a lot more than if the clients picked records in an uncorrelated
fashion.
To fix (1) I think we need to hash the seed so that it is much more sensitive to
the least significant bit of the current time value. (2) can be addressed by
mixing in some value that varies from client to client; maybe the 16-bit DNS
query ID is most readily available (as the first two bytes of the reply buffer;
I hope all implementations of res_query() return it). Come to think of it,
shifting the query ID up by 15 bits and XORing with the current time might be
good enough.
8 years, 4 months
RE: (ITS#8194) Service slapd falldown in a search with client ldapsearch
by ludovic.brochard@cgi.com
SGVsbG8sIHRoaXMgaXMgdGhlIGZ1bGwgc3RhY2t0cmFjZSA6DQoNCihnZGIpIGJ0IGZ1bGwNCiMw
ICAweDAwMDAwMDAwMDA0OWUyNTEgaW4gbWRiX2hhc1N1Ym9yZGluYXRlcyAob3A9MHg3ZjYxYTE0
MGQ0NjAsIGU9PHZhbHVlIG9wdGltaXplZCBvdXQ+LCBoYXNTdWJvcmRpbmF0ZXM9MHg3ZjYxYTA5
MGUwMTApIGF0IG9wZXJhdGlvbmFsLmM6NzgNCiAgICAgICAgbWRiID0gPHZhbHVlIG9wdGltaXpl
ZCBvdXQ+DQogICAgICAgIHJ0eG4gPSA8dmFsdWUgb3B0aW1pemVkIG91dD4NCiAgICAgICAgb3Bp
bmZvID0ge21vaV9vZSA9IHtvZV9uZXh0ID0ge3NsZV9uZXh0ID0gMHg3MzZ9LCBvZV9rZXkgPSAw
eDdmNjE5ODAwMTkyOH0sIG1vaV90eG4gPSAweDgsIG1vaV9yZWYgPSAtMTc0NDgyNTcyMCwgbW9p
X2ZsYWcgPSA5NyAnYSd9DQogICAgICAgIG1vaSA9IDB4N2Y2MTk4MTAyNTgwDQogICAgICAgIHJj
ID0gLTE1OTEyMjU1NjgNCiAgICAgICAgX19QUkVUVFlfRlVOQ1RJT05fXyA9ICJtZGJfaGFzU3Vi
b3JkaW5hdGVzIg0KIzEgIDB4MDAwMDAwMDAwMDRhMDhhYyBpbiBtZGJfc2VhcmNoIChvcD0weDdm
NjFhMTQwZWEzMCwgcnM9PHZhbHVlIG9wdGltaXplZCBvdXQ+KSBhdCBzZWFyY2guYzo5NTANCiAg
ICAgICAgc2NvcGVvayA9IDx2YWx1ZSBvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBlZGF0YSA9IHtt
dl9zaXplID0gODE4NywgbXZfZGF0YSA9IDB4N2Y4YzNiZWNmMTIyfQ0KICAgICAgICBtZGIgPSA8
dmFsdWUgb3B0aW1pemVkIG91dD4NCiAgICAgICAgaWQgPSAxNDAwNTcyOTM5MzU4NTYNCiAgICAg
ICAgY3Vyc29yID0gODE5Mg0KICAgICAgICBuc3VicyA9IDE0MDA4MzcxMTU3NDc1Mg0KICAgICAg
ICBuY2FuZCA9IDE0MDA1NzEzOTc1MDI3Mg0KICAgICAgICBjc2NvcGUgPSAwDQogICAgICAgIGxh
c3RpZCA9IDg0OA0KICAgICAgICBjYW5kaWRhdGVzID0gezE4NDQ2NzQ0MDczNzA5NTUxNjE1LCAx
LCAxNzgyMDg2LCAzMiwgMCwgMjcwMzc0MzE5MiwgMjcwMzc0MzQyNCwgMTQwMDU3MjkyMjk3NTIw
LCAxODQ0Njc0NDA3MzcwOTU1MTYxNSwgMTQwMDU3MjkyMjk4NjU2LCAwLCAwLCAyNzAzNzQzNTMy
LCAxNDAwNTcyOTIyOTg1MjAsIA0KICAgICAgICAgIDI3MDM3NDMxOTEsIDE0MDA1NzI5MjI5ODI3
MiwgMTAwLCAwLCAxMDA2MTE3NTc1LCAyNDc5LCAwLCAwLCAxNDAwNTQ1ODg1NTUyNjQsIDg1ODk5
MzQ1OTIsIDE4NDQ2NzQ0MDczNzA5NTUxNjE1LCAxNDAwNTg4ODM1MjI1NTksIDAsIDE0MDA1NzI5
MjI5ODUyMCwgNDg4MTc3Nzc5LCAwLCA1Mjk3NTE4LCANCiAgICAgICAgICAyNzAzNzQyNzUyLCAw
LCAyMjk4MDgwMCwgMTE2MTI0ODk0MTEwNTc5MTUyNTksIDQyOTQ5Njc1NDM5LCAwLCA0NzkyMDQy
LCAxNDAwNTcyOTIyOTg2NDcsIDg1ODk5MzQ1OTIsIDE4NTg3Nzc2LCAxNDAwNTcyOTIyOTg2NDcs
IDIwNjE1ODQzMDIyNCwgMTQwMDU3MjkyMjk4NjQ4LCANCiAgICAgICAgICAxNDAwNTcyOTIyOTc4
MjgsIDAsIDU0MDU4NzAsIDIyOTgwNjU2LCAwLCAyLCAxNDAwNTcyOTIyOTgyNTYsIDE1NTg4NjQ0
ODE2LCAyNzAzNzQyNTY2LCAwLCAzNzYwNTY1MjgyMzgzODQ0OTQ0LCAxNDAyNDAyNzc1Mzc0ODYs
IDE0MDI0MDI4MDU4MDgzMiwgMTQwMDU3MjkyMjk4MjIzLCAxODU4Nzc3NiwgDQogICAgICAgICAg
MTQwMDU3MjkyMjk3NzQ0LCAyMDYxNTg0MzAyMjQsIDIsIDE0MDA1NzI5MjI5ODM1MiwgMTM4OTAy
ODU4NTgsIDI3MDM3NDI2NjIsIDE0MDA1NDU4ODU1NTI2NCwgMzc2MDU2NTI4MjM4Mzg0NTA0MCwg
MTQwMDU3MjkyMjk3OTI2LCAxNDAyNDAyODA1ODA4MzIsIDE0MDA1NzI5MjI5ODMxOSwgDQogICAg
ICAgICAgMTg1ODc3NzYsIDE0MDA1NzI5MjI5Nzg0MCwgMjA2MTU4NDMwMjI0LCAxNDAwNTcyOTIy
OTgzMzYsIDE0MDA1NzI5MjI5ODE0NCwgMTQwMjQwMjc3NTM3NDg2LCAxNDAwNTcxMzk3NTE0MzYs
IDE0MDA1NzEzOTc1MTQzNiwgMTQwMjQwMjgwNTgyODQ4LCA3LCA4MTg3LCAyLCAxNDAwNTcyOTIy
OTg1MTIsIA0KICAgICAgICAgIDEyODg0OTAxODg4LCA1NjI4ODI1MDE1NjkwMiwgMTQwMjM5Mjcy
MTQ4OTkyLCAzNzYwNTY1MjgyMzgzODQ1MjAwLCAxNDAwNTcyOTIyOTgwODYsIDE0MDI0MDI4MDU4
MDgzMiwgMTQwMDU3MjkyMjk4NDc5LCAxODU4Nzc3NiwgMTQwMDU3MjkyMjk4MDAwLCAyMDYxNTg0
MzAyMjQsIA0KICAgICAgICAgIDE0MDA1NzI5MjI5ODQ5NiwgMTQwMDU3MjkyMjk4MzA0LCAxNDAw
NTQ1ODg1NTUyNjQsIDE0MDA1NzI5MjI5ODIyOSwgMTQwMjM5MjcyMTQ4OTkyLCAyNzAzNzQyOTY1
LCAxNDAyNDAyNzc1Mzc0ODYsIDIwNjE1ODQzMDIyNCwgMTQwMDU3MjkyMjk4ODE2LCAxNDAwNTcy
OTIyOTg2MjQsIA0KICAgICAgICAgIDE0MDA1NzEzOTc1MTQwOCwgNTYyODU1NDY0MTQxODEsIDIs
IDE0MDA1NzI5MjI5ODcwNCwgMTM4OTEwMTk0NTksIDE0MDA1NzI5MjI5ODI3OCwgMTQwMDU0NTg4
NTU1MjY0LCAzNzYwNTY1MjgyMzgzODQ1MzkyLCAxNDAyNDAyNzc1Mzc0ODYsIDE0MDI0MDI4MDU4
MDgzMiwgMTQwMDU3MjkyMjk4NjcxLCANCiAgICAgICAgICAxODU4Nzc3NiwgMTQwMDU3MjkyMjk4
MTkyLCAyMDYxNTg0MzAyMjQsIDIsIDE0MDA1NzI5MjI5ODgwMCwgMTQwMjQwMjc3NTM3NDg2LCAy
MDg4NjIxNzMzMTgsIDE0MDA1NDU4ODU1NTI2NCwgMzc2MDU2NTI4MjM4Mzg0NTQ4OCwgMTQwMDU3
MjkyMjk4Mzc0LCAxNDAyNDAyODA1ODA4MzIsIDIsIA0KICAgICAgICAgIDE0MDA1NzI5MjI5ODg2
NCwgMTU1ODg2NDQ5MTIsIDIwODg2MjE3MzM4MiwgMTQwMDU0NTg4NTU1MjY0LCAzNzYwNTY1Mjgy
MzgzODQ1NTUyLCAxNDAwNTcyOTIyOTg0MzgsIDE0MDI0MDI4MDU4MDgzMiwgMTQwMDU3MjkyMjk4
ODMxLCAxODU4Nzc3NiwgMTQwMDU3MjkyMjk4MzUyLCANCiAgICAgICAgICAyMDYxNTg0MzAyMjQs
IDE0MDA1NzI5MjI5ODg0OCwgMTQwMDU3MjkyMjk4NjU2LCAxNDAwNTQ1ODg1NTUyNjQsIDU2Mjg4
MjUwMTU3Mzk3LCAyLCAxNDAwNTcyOTIyOTg5OTIsIDEzODkxMDE5NDU5LCAxNDAwNTcyOTIyOTg1
NjYsIDE0MDA1NDU4ODU1NTI2NCwgMzc2MDU2NTI4MjM4Mzg0NTY4MCwgDQogICAgICAgICAgMTQw
MDU3MjkyMjk4NTY2LCA1NjI4NjU1NDg0NTkyMCwgMTQwMDU3MjkyMjk4OTU5LCAxODU4Nzc3Niwg
MTQwMjQwMjc4MjY2NTYzLCAxNDAwNTcxMzk3NTE0MzYsIDE0MDA1NzEzOTc1MTQzNiwgMTQwMjQw
MjgwNTgyODQ4LCA3LCA3ODc3NzkyLCAxOTI2NTI2NCwgMTA5OTUyODQ3MDc4NCwgDQogICAgICAg
ICAgMjgxNDc5Mjg4NDU1MTY5LCAyNTYsIDAsIDEsIDIzMTIsIDAsIDAsIDAsIDAsIDAsIDAsIDAs
IDE4ODkxMzEyLCAxOTI1OTM5MiwgMCwgMCwgMCwgMCwgMzEsIDE5MjY2MjA4LCAzMSwgMTkyNTk1
MjAsIDAsIDAsIDE1NDYxODgyMjY1NjE1LCAyMTQ3NDgzNjQ4MDAwLCANCiAgICAgICAgICAxODQ0
Njc0NDA2OTQxNDU4NDMyMCwgMCwgMCwgMCwgMCwgNSwgMCwgMCwgMCwgMCwgMjE5MzEzNjAsIDAs
IDAsIDAsIDAuLi59DQogICAgICAgIGlzY29wZXMgPSB7MCA8cmVwZWF0cyA2NTUzNiB0aW1lcz59
DQogICAgICAgIHNjb3BlcyA9IDB4N2Y2MWEwOTBlMDEwDQogICAgICAgIGUgPSAweDdmNjE5ODAw
MGU0OA0KICAgICAgICBiYXNlID0gMHgyOQ0KICAgICAgICBtYXRjaGVkID0gMHg3ZjYxOTgwMDEy
NTANCiAgICAgICAgYXR0cnMgPSA8dmFsdWUgb3B0aW1pemVkIG91dD4NCiAgICAgICAgbWFzayA9
IDx2YWx1ZSBvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICBzdG9wdGltZSA9IDE0MDA1NzEzOTc5MTA3
Mw0KICAgICAgICBtYW5hZ2VEU0FpdCA9IDx2YWx1ZSBvcHRpbWl6ZWQgb3V0Pg0KICAgICAgICB0
ZW50cmllcyA9IDE3ODIwODYNCiAgICAgICAgaXNjID0ge210ID0gMHg3ZjYxOTgxMDJjMDAsIG1j
ID0gMHg3ZjYxOTgxMDQ4ODAsIGlkID0gMTY2NDY0NCwgc2NvcGVzID0gMHg3ZjYxYTA5MGUwMTAs
IG51bXJkbnMgPSAtMTgyODcyMDYyNCwgbnNjb3BlID0gMzI2MDksIG9zY29wZSA9IDEsIHJkbnMg
PSB7e2J2X2xlbiA9IDIsIA0KICAgICAgICAgICAgICBidl92YWwgPSAweGUgPEFkZHJlc3MgMHhl
IG91dCBvZiBib3VuZHM+fSwge2J2X2xlbiA9IDE0MDA4MDUwNjU2Njc2OSwgYnZfdmFsID0gMHgw
fSwge2J2X2xlbiA9IDAsIGJ2X3ZhbCA9IDB4MH0gPHJlcGVhdHMgMTQ0IHRpbWVzPiwge2J2X2xl
biA9IDE0MDA1NzEzOTc0Mjk5MiwgDQogICAgICAgICAgICAgIGJ2X3ZhbCA9IDB4N2Y2MTk4MTAy
NDIwICJcYiJ9LCB7YnZfbGVuID0gMCwgYnZfdmFsID0gMHg3ZjYxYTA5MGUwMTAgIm1cMzM1XHIi
fSwge2J2X2xlbiA9IDE0MDA1NzA1NDgwMTkzNiwgYnZfdmFsID0gMHgwfSwge2J2X2xlbiA9IDEs
IGJ2X3ZhbCA9IDB4MH0sIHtidl9sZW4gPSAwLCANCiAgICAgICAgICAgICAgYnZfdmFsID0gMHgw
fSA8cmVwZWF0cyAxODk4IHRpbWVzPn0sIG5yZG5zID0ge3tidl9sZW4gPSAwLCBidl92YWwgPSAw
eGUgPEFkZHJlc3MgMHhlIG91dCBvZiBib3VuZHM+fSwge2J2X2xlbiA9IDE0MDA4MDUwNjU2Njc1
NCwgYnZfdmFsID0gMHgwfSwge2J2X2xlbiA9IDAsIA0KICAgICAgICAgICAgICBidl92YWwgPSAw
eDB9IDxyZXBlYXRzIDE2NTQgdGltZXM+LCB7YnZfbGVuID0gMTQwMDU3MTM5NzUxMjMyLCBidl92
YWwgPSAweDdmNjFhMTQwYzJjMCAiXDAyMCAifSwge2J2X2xlbiA9IDYsIGJ2X3ZhbCA9IDB4N2Y2
MWExNDBjMmQwICJcMDIwICJ9LCB7DQogICAgICAgICAgICAgIGJ2X2xlbiA9IDE0MDI0MDI3ODI2
NjU2OSwgYnZfdmFsID0gMHg3ZjhjM2JlNmY0NjcgPEFkZHJlc3MgMHg3ZjhjM2JlNmY0Njcgb3V0
IG9mIGJvdW5kcz59LCB7YnZfbGVuID0gMTQwMjQwMjc4MjY2NTcwLCBidl92YWwgPSAweDEgPEFk
ZHJlc3MgMHgxIG91dCBvZiBib3VuZHM+fSwgew0KICAgICAgICAgICAgICBidl9sZW4gPSAxLCBi
dl92YWwgPSAweDB9LCB7YnZfbGVuID0gMCwgYnZfdmFsID0gMHgwfSwge2J2X2xlbiA9IDAsIGJ2
X3ZhbCA9IDB4MH0sIHtidl9sZW4gPSAxNDAwNTcyOTM5MzA5MjgsIGJ2X3ZhbCA9IDB4MH0sIHti
dl9sZW4gPSAxNDAyNDAyNzgyNjY1NjYsIGJ2X3ZhbCA9IDB4MH0sIHsNCiAgICAgICAgICAgICAg
YnZfbGVuID0gMCwgYnZfdmFsID0gMHgwfSwge2J2X2xlbiA9IDE0MDA1NzI5MzkzMTAzNiwgYnZf
dmFsID0gMHg3ZjYxYTE0MGMyMzggIlwyMTRFXDAyMFwyMzBhXDE3NyJ9LCB7YnZfbGVuID0gMCwg
YnZfdmFsID0gMHg3ZjYxYTE0MGMyNTggIlwiXDM2MVwzNTQ7XDIxNFwxNzcifSwgew0KICAgICAg
ICAgICAgICBidl9sZW4gPSAwLCBidl92YWwgPSAweDB9LCB7YnZfbGVuID0gMCwgYnZfdmFsID0g
MHg3ZjhjM2JlOWY5NWUgPEFkZHJlc3MgMHg3ZjhjM2JlOWY5NWUgb3V0IG9mIGJvdW5kcz59LCB7
YnZfbGVuID0gMTQwMDU3MTM5NzUxMjMyLCANCiAgICAgICAgICAgICAgYnZfdmFsID0gMHg3ZjYx
YTE0MGMzYTAgIlwyNjBcMzA0QFwyNDFhXDE3NyJ9LCB7YnZfbGVuID0gMjQsIGJ2X3ZhbCA9IDB4
N2Y2MWExNDBjNGIwICJcMDA2In0sIHtidl9sZW4gPSA1NDI5ODk1LCANCiAgICAgICAgICAgICAg
YnZfdmFsID0gMHg3ZjhjM2JlNmY0NjcgPEFkZHJlc3MgMHg3ZjhjM2JlNmY0Njcgb3V0IG9mIGJv
dW5kcz59LCB7YnZfbGVuID0gNTQyOTg5NiwgYnZfdmFsID0gMHgxIDxBZGRyZXNzIDB4MSBvdXQg
b2YgYm91bmRzPn0sIHtidl9sZW4gPSAxLCANCiAgICAgICAgICAgICAgYnZfdmFsID0gMHg3ZjYx
YTE0MGMxODggIlwwMjZcMzAyQFwyNDFhXDE3NyJ9LCB7YnZfbGVuID0gMCwgYnZfdmFsID0gMHgy
MCA8QWRkcmVzcyAweDIwIG91dCBvZiBib3VuZHM+fSwge2J2X2xlbiA9IDAsIGJ2X3ZhbCA9IDB4
MH0sIHtidl9sZW4gPSAxNDAwNTcyOTM5MzExNTIsIA0KICAgICAgICAgICAgICBidl92YWwgPSAw
eGEwMDAwMDlhZiA8QWRkcmVzcyAweGEwMDAwMDlhZiBvdXQgb2YgYm91bmRzPn0sIHtidl9sZW4g
PSA1NDI5ODY5LCBidl92YWwgPSAweDB9LCB7YnZfbGVuID0gMTQwMDU3MjkzOTMwODgzLCBidl92
YWwgPSAweDB9LCB7YnZfbGVuID0gMTQwMDU3MjkzOTMxMjYwLCANCiAgICAgICAgICAgICAgYnZf
dmFsID0gMHg3ZjYxYTE0MGMzMTggIlwzMjVtXDM1MjtcMjE0XDE3NyJ9LCB7YnZfbGVuID0gMCwg
YnZfdmFsID0gMHg3ZjYxYTE0MGMzMzggIkApXDAyMFwyMzAifSwge2J2X2xlbiA9IDAsIGJ2X3Zh
bCA9IDB4MH0sIHtidl9sZW4gPSAxNDAyNDAyNzgyNjY1NjcsIGJ2X3ZhbCA9IDB4MH0sIA0KICAg
ICAgICAgICAge2J2X2xlbiA9IDAsIGJ2X3ZhbCA9IDB4YjAwMDAwMDAwIDxBZGRyZXNzIDB4YjAw
MDAwMDAwIG91dCBvZiBib3VuZHM+fSwge2J2X2xlbiA9IDExNjE5NTAwNzg2MjUzMjk5NzEyLCBi
dl92YWwgPSAweDdmNjFhMTQwYmU4MCAiIn0sIHtidl9sZW4gPSAxODQ0Njc0NDA3MzcwOTU1MTYx
NSwgDQogICAgICAgICAgICAgIGJ2X3ZhbCA9IDB4N2Y2MWExNDBjMmYwICIgIn0sIHtidl9sZW4g
PSAwLCBidl92YWwgPSAweDB9LCB7YnZfbGVuID0gMCwgYnZfdmFsID0gMHg3ZjYxYTE0MGMyNjgg
IiJ9LCB7YnZfbGVuID0gMCwgYnZfdmFsID0gMHgyMCA8QWRkcmVzcyAweDIwIG91dCBvZiBib3Vu
ZHM+fSwgew0KICAgICAgICAgICAgICBidl9sZW4gPSAwLCBidl92YWwgPSAweDB9LCB7YnZfbGVu
ID0gMTE2MTk1MDA3OTA1NDgyNjcwMDgsIGJ2X3ZhbCA9IDB4MTAwMDAwMDlhZiA8QWRkcmVzcyAw
eDEwMDAwMDA5YWYgb3V0IG9mIGJvdW5kcz59LCB7YnZfbGVuID0gNCwgYnZfdmFsID0gMHgwfSwg
ew0KICAgICAgICAgICAgICBidl9sZW4gPSAxNDAwNTcyOTM5MzExMTEsIGJ2X3ZhbCA9IDB4MH0s
IHtidl9sZW4gPSAwLCBidl92YWwgPSAweDdmNjFhMTQwYzI2NyAiNCJ9LCB7YnZfbGVuID0gMCwg
YnZfdmFsID0gMHg3ZjYxYTE0MGMyNjggIiJ9LCB7YnZfbGVuID0gMTIwLCBidl92YWwgPSAweDB9
LCB7DQogICAgICAgICAgICAgIGJ2X2xlbiA9IDU0Mjk4OTIsIGJ2X3ZhbCA9IDB4MH0sIHtidl9s
ZW4gPSAwLCBidl92YWwgPSAweGIwMDAwMDAwMCA8QWRkcmVzcyAweGIwMDAwMDAwMCBvdXQgb2Yg
Ym91bmRzPn0sIHtidl9sZW4gPSAwLCBidl92YWwgPSAweDB9IDxyZXBlYXRzIDM0IHRpbWVzPiwg
e2J2X2xlbiA9IDAsIA0KICAgICAgICAgICAgICBidl92YWwgPSAweDQ4ZWI0ZSAiXDMyMEhcMjEx
XDMwN1wzNTBxTFwzNjdcMzc3SFwyMDVcMzMzSFwyMTFcMzMwdVwyNjdJXDMwN1wwMDYifSwge2J2
X2xlbiA9IDAsIGJ2X3ZhbCA9IDB4MH0sIHtidl9sZW4gPSA0NzgyMjg4LCANCiAgICAgICAgICAg
ICAgYnZfdmFsID0gMHg3ZjYxYTE0MGMwZTAgIlwzNDBcMDIzLlwwMDEifSwge2J2X2xlbiA9IDg1
ODk5MzQ1OTIsIGJ2X3ZhbCA9IDB4N2Y2MWExNDBjMTRjICIifSwge2J2X2xlbiA9IDE5Nzk2OTYw
LCBidl92YWwgPSAweDB9LCB7YnZfbGVuID0gMCwgDQogICAgICAgICAgICAgIGJ2X3ZhbCA9IDB4
N2Y2MWExNDBjMzcwICJcdiJ9LCB7YnZfbGVuID0gMSwgYnZfdmFsID0gMHg3ZjYxYTE0MGMxNDAg
IiJ9LCB7YnZfbGVuID0gMCwgYnZfdmFsID0gMHgwfSwge2J2X2xlbiA9IDAsIA0KICAgICAgICAg
ICAgICBidl92YWwgPSAweDdmOGMzYmVkMDJjZSA8QWRkcmVzcyAweDdmOGMzYmVkMDJjZSBvdXQg
b2YgYm91bmRzPn0sIHtidl9sZW4gPSAwLCBidl92YWwgPSAweDEzZTE1ZDAgIlwwMDQifSwge2J2
X2xlbiA9IDE0MDA4MDU3MDM1NTcxMiwgYnZfdmFsID0gMHgwfSwge2J2X2xlbiA9IDAsIA0KICAg
ICAgICAgICAgICBidl92YWwgPSAweDIgPEFkZHJlc3MgMHgyIG91dCBvZiBib3VuZHM+fSwge2J2
X2xlbiA9IDE0MDA1NzI5MzkzMTQ1NiwgYnZfdmFsID0gMHgzMDEzZTE1ZDAgPEFkZHJlc3MgMHgz
MDEzZTE1ZDAgb3V0IG9mIGJvdW5kcz59LCB7YnZfbGVuID0gMjcwNTM3NTc2NiwgDQogICAgICAg
ICAgICAgIGJ2X3ZhbCA9IDB4N2Y2MTAwMDAwMDAwIDxBZGRyZXNzIDB4N2Y2MTAwMDAwMDAwIG91
dCBvZiBib3VuZHM+fSwge2J2X2xlbiA9IDM3NjA1NjUyODIzODU0NzgxNDQsIGJ2X3ZhbCA9IDB4
N2Y2MWExNDBjMjE2ICIifSwge2J2X2xlbiA9IDE0MDI0MDI4MDU4MDgzMiwgDQogICAgICAgICAg
ICAgIGJ2X3ZhbCA9IDB4N2Y2MWExNDBjMzlmICJcMzc3XDI2MFwzMDRAXDI0MWFcMTc3In0sIHti
dl9sZW4gPSAxODU4Nzc3NiwgYnZfdmFsID0gMHg3ZjYxYTE0MGMxYzAgIlwzNjBcMzAyQFwyNDFh
XDE3NyJ9LCB7YnZfbGVuID0gMjA2MTU4NDMwMjI0LCANCiAgICAgICAgICAgICAgYnZfdmFsID0g
MHg3ZjYxYTE0MGMzYjAgIlwwMDIifSwge2J2X2xlbiA9IDE0MDA1NzI5MzkzMTI0OCwgYnZfdmFs
ID0gMHgwfSwge2J2X2xlbiA9IDAsIGJ2X3ZhbCA9IDB4MH0sIHtidl9sZW4gPSAwLCBidl92YWwg
PSAweDB9LCB7YnZfbGVuID0gMCwgYnZfdmFsID0gMHgwfSwgew0KICAgICAgICAgICAgICBidl9s
ZW4gPSAxNDAwNTcyOTM5NDAxOTIsIGJ2X3ZhbCA9IDB4NDhlYjRlICJcMzIwSFwyMTFcMzA3XDM1
MHFMXDM2N1wzNzdIXDIwNVwzMzNIXDIxMVwzMzB1XDI2N0lcMzA3XDAwNiJ9LCB7YnZfbGVuID0g
NTczOTM2NDc5NzY0NDgsIA0KICAgICAgICAgICAgICBidl92YWwgPSAweDdmNjcxNzZmM2ZlOCA8
QWRkcmVzcyAweDdmNjcxNzZmM2ZlOCBvdXQgb2YgYm91bmRzPn0sIHtidl9sZW4gPSA0Nzc4MzUy
LCBidl92YWwgPSAweDdmOGMzYmY4MjJjMyA8QWRkcmVzcyAweDdmOGMzYmY4MjJjMyBvdXQgb2Yg
Ym91bmRzPn0sIHsNCiAgICAgICAgICAgICAgYnZfbGVuID0gMTQwMDU3MTM5NzU4NDc2LCBidl92
YWwgPSAweDdmNjE5ODEwNDU4YyAiIn0sIHtidl9sZW4gPSAxNDAyNDAyODA1ODI4NDgsIGJ2X3Zh
bCA9IDB4NyA8QWRkcmVzcyAweDcgb3V0IG9mIGJvdW5kcz59LCB7YnZfbGVuID0gODE4NywgDQog
ICAgICAgICAgICAgIGJ2X3ZhbCA9IDB4N2Y4YzNiZWNmMTIyIDxBZGRyZXNzIDB4N2Y4YzNiZWNm
MTIyIG91dCBvZiBib3VuZHM+fSwge2J2X2xlbiA9IDM3NDY5OTQ4ODk5NzIyNjA4NjQsIGJ2X3Zh
bCA9IDB4N2Y2MTAwMDAwMDAwIDxBZGRyZXNzIDB4N2Y2MTAwMDAwMDAwIG91dCBvZiBib3VuZHM+
fSwgew0KICAgICAgICAgICAgICBidl9sZW4gPSAxNDAwNTcyOTM5MzEzMzMsIGJ2X3ZhbCA9IDB4
N2Y4YzAwMDAwMDAwIDxBZGRyZXNzIDB4N2Y4YzAwMDAwMDAwIG91dCBvZiBib3VuZHM+fSwge2J2
X2xlbiA9IDI3MDUzNzYwNjksIA0KICAgICAgICAgICAgICBidl92YWwgPSAweDEwMDAwMDAwMSA8
QWRkcmVzcyAweDEwMDAwMDAwMSBvdXQgb2YgYm91bmRzPn0sIHtidl9sZW4gPSAyMDYxNTg0MzAy
MjQsIGJ2X3ZhbCA9IDB4N2Y2MWExNDBjNTkwICJcMDAxIn0sIHtidl9sZW4gPSAxNDAwNTcyOTM5
MzE3MjgsIA0KICAgICAgICAgICAgICBidl92YWwgPSAweDdmNjE5ODEwNDU3MCAiIn0sIHtidl9s
ZW4gPSA4NSwgYnZfdmFsID0gMHg3ZjYxOTgwMDAwMjAgIiJ9LCB7YnZfbGVuID0gODIwOCwgYnZf
dmFsID0gMHg3ZjYxOTgxMDY1ODAgIiJ9LCB7YnZfbGVuID0gODIwOCwgDQogICAgICAgICAgICAg
IGJ2X3ZhbCA9IDB4N2Y4YzNiZWE2YTBlIDxBZGRyZXNzIDB4N2Y4YzNiZWE2YTBlIG91dCBvZiBi
b3VuZHM+fSwge2J2X2xlbiA9IDE0MDA1NzI5MzkzMTI0OCwgYnZfdmFsID0gMHgxZmY0IDxBZGRy
ZXNzIDB4MWZmNCBvdXQgb2YgYm91bmRzPn0sIHtidl9sZW4gPSAxNDAwNTcxMzg2OTIxMjgsIA0K
ICAgICAgICAgICAgICBidl92YWwgPSAweDdmNjE5ODEwNDU4MCAiIn0sIHtidl9sZW4gPSA2MSwg
YnZfdmFsID0gMHg3ZjYxOTgxMDQ1NzAgIiJ9LCB7YnZfbGVuID0gODAsIGJ2X3ZhbCA9IDB4N2Y4
YzNiZWE2ZGQ1IDxBZGRyZXNzIDB4N2Y4YzNiZWE2ZGQ1IG91dCBvZiBib3VuZHM+fSwgew0KICAg
ICAgICAgICAgICBidl9sZW4gPSAxNDAyNDAyODA1OTYwOTYsIGJ2X3ZhbCA9IDB4OGEgPEFkZHJl
c3MgMHg4YSBvdXQgb2YgYm91bmRzPn0sIHtidl9sZW4gPSAwLCBidl92YWwgPSAweDk4MTAyOTQw
IDxBZGRyZXNzIDB4OTgxMDI5NDAgb3V0IG9mIGJvdW5kcz59LCB7YnZfbGVuID0gMTQwMDU3Mjkz
OTMxNjE2LCANCiAgICAgICAgICAgICAgYnZfdmFsID0gMHhmZmZmZmZmZiA8QWRkcmVzcyAweGZm
ZmZmZmZmIG91dCBvZiBib3VuZHM+fSwge2J2X2xlbiA9IDExLCBidl92YWwgPSAweDk4MTAyOTQw
IDxBZGRyZXNzIDB4OTgxMDI5NDAgb3V0IG9mIGJvdW5kcz59LCB7YnZfbGVuID0gMCwgDQogICAg
ICAgICAgICAgIGJ2X3ZhbCA9IDB4ZmZmZmZmZmYgPEFkZHJlc3MgMHhmZmZmZmZmZiBvdXQgb2Yg
Ym91bmRzPn0sIHtidl9sZW4gPSAxMSwgYnZfdmFsID0gMHg3ZjYxOTgxMDI5NDAgIngifSwge2J2
X2xlbiA9IDIxLCANCiAgICAgICAgICAgICAgYnZfdmFsID0gMHhmZmZmZmZmZiA8QWRkcmVzcyAw
eGZmZmZmZmZmIG91dCBvZiBib3VuZHM+fSwge2J2X2xlbiA9IDExLCBidl92YWwgPSAweGZmZmZm
ZmZmZmZmZmZmYTggPEFkZHJlc3MgMHhmZmZmZmZmZmZmZmZmZmE4IG91dCBvZiBib3VuZHM+fSwg
ew0KICAgICAgICAgICAgICBidl9sZW4gPSAxNDAwNTcyOTM5MzE2OTYsIGJ2X3ZhbCA9IDB4N2Y4
YzNiZjBmZWFkIDxBZGRyZXNzIDB4N2Y4YzNiZjBmZWFkIG91dCBvZiBib3VuZHM+fSwge2J2X2xl
biA9IDQyOTUwMzI4MzQsIA0KICAgICAgICAgICAgICBidl92YWwgPSAweDUyZGE2ZCAiJ3JlcVJl
ZmVycmFsJyBERVNDICdSZWZlcnJhbHMgcmV0dXJuZWQgZm9yIHJlcXVlc3QnIFNVUCBsYWJlbGVk
VVJJICkifSwge2J2X2xlbiA9IDE0NjAyODg4ODA5OCwgDQogICAgICAgICAgICAgIGJ2X3ZhbCA9
IDB4OTAwMDAwMDBmIDxBZGRyZXNzIDB4OTAwMDAwMDBmIG91dCBvZiBib3VuZHM+fSwge2J2X2xl
biA9IDQ5MzkyMTIzOTA0NiwgYnZfdmFsID0gMHhiZDAwMDAwMDA0IDxBZGRyZXNzIDB4YmQwMDAw
MDAwNCBvdXQgb2YgYm91bmRzPn0sIHtidl9sZW4gPSAxLCANCiAgICAgICAgICAgICAgYnZfdmFs
ID0gMHgxYzIwIDxBZGRyZXNzIDB4MWMyMCBvdXQgb2YgYm91bmRzPn0sIHtidl9sZW4gPSAxODU4
Nzc3NiwgYnZfdmFsID0gMHgwfSwge2J2X2xlbiA9IDAsIGJ2X3ZhbCA9IDB4MH0sIHtidl9sZW4g
PSAwLCBidl92YWwgPSAweDB9LCB7YnZfbGVuID0gMCwgYnZfdmFsID0gMHgwfSwgew0KICAgICAg
ICAgICAgICBidl9sZW4gPSAwLCBidl92YWwgPSAweDB9LCB7YnZfbGVuID0gMTQwMDU3MTM5NzU4
NDY0LCBidl92YWwgPSAweDB9LCB7YnZfbGVuID0gMCwgYnZfdmFsID0gMHgzYyA8QWRkcmVzcyAw
eDNjIG91dCBvZiBib3VuZHM+fSwge2J2X2xlbiA9IDE0MDA1NzEzOTc1ODQ2NCwgDQogICAgICAg
ICAgICAgIGJ2X3ZhbCA9IDB4NTU5ZTc4NmEgPEFkZHJlc3MgMHg1NTllNzg2YSBvdXQgb2YgYm91
bmRzPn0sIHtidl9sZW4gPSA0MiwgYnZfdmFsID0gMHg3ZjYxYTE0MGU2NzAgIlwzMjBcMzUwQFwy
NDFhXDE3NyJ9LCB7YnZfbGVuID0gMTQwMDU3MTM4Njk1NDI0LCANCiAgICAgICAgICAgICAgYnZf
dmFsID0gMHhiIDxBZGRyZXNzIDB4YiBvdXQgb2YgYm91bmRzPn0sIHtidl9sZW4gPSAxNDAwNTcx
Mzg2OTU0MjQsIGJ2X3ZhbCA9IDB4N2Y2MTk4MDAwY2EwICI5In0sIHtidl9sZW4gPSAxNDAwNTcx
Mzk3NTEyMzIsIGJ2X3ZhbCA9IDB4N2Y2MWExNDBjYjkwICJcMDIwICJ9LCB7DQogICAgICAgICAg
ICAgIGJ2X2xlbiA9IDYsIGJ2X3ZhbCA9IDB4N2Y2MWExNDBjYmEwICJcMDIwICJ9LCB7YnZfbGVu
ID0gMTQwMjQwMjc4MjY2NTY5LCBidl92YWwgPSAweDdmOGMzYmU2ZjQ2NyA8QWRkcmVzcyAweDdm
OGMzYmU2ZjQ2NyBvdXQgb2YgYm91bmRzPn0sIHtidl9sZW4gPSAxNDAyNDAyNzgyNjY1NzAsIA0K
ICAgICAgICAgICAgICBidl92YWwgPSAweDEgPEFkZHJlc3MgMHgxIG91dCBvZiBib3VuZHM+fSwg
e2J2X2xlbiA9IDEsIGJ2X3ZhbCA9IDB4MH0sIHtidl9sZW4gPSAwLCBidl92YWwgPSAweDB9LCB7
YnZfbGVuID0gNDgsIA0KICAgICAgICAgICAgICBidl92YWwgPSAweDEwY2EyZGM5MiA8QWRkcmVz
cyAweDEwY2EyZGM5MiBvdXQgb2YgYm91bmRzPn0sIHtidl9sZW4gPSAxNDAwNTcyOTM5MzMxODQs
IGJ2X3ZhbCA9IDB4N2Y2MTk4MTA0NWUwICIifSwge2J2X2xlbiA9IDE0MDI0MDI3ODI2NjU2Niwg
DQogICAgICAgICAgICAgIGJ2X3ZhbCA9IDB4N2Y2MWExNDBlNWUwICJcMjAwXDI0MFwwMzNcMDAx
In0sIHtidl9sZW4gPSAxNDAwNTcxMzg2OTU0MjQsIGJ2X3ZhbCA9IDB4MH0sIHtidl9sZW4gPSAx
NDAwNTcyOTM5MzMyOTIsIGJ2X3ZhbCA9IDB4N2Y2MWExNDBjYjA4ICJcMjI2XDMxM0BcMjQxYVwx
NzcifSwgew0KICAgICAgICAgICAgICBidl9sZW4gPSAxNDAwNTcxMzk3NTEyMzIsIGJ2X3ZhbCA9
IDB4N2Y2MWExNDBjYzQwICJQXDMzMUBcMjQxYVwxNzcifSwge2J2X2xlbiA9IDYsIGJ2X3ZhbCA9
IDB4N2Y2MWExNDBjYzUwICI4XDMzMUBcMjQxYVwxNzcifSwge2J2X2xlbiA9IDE0MDI0MDI3ODI2
NjU2OSwgDQogICAgICAgICAgICAgIGJ2X3ZhbCA9IDB4N2Y4YzNiZTZmNDY3IDxBZGRyZXNzIDB4
N2Y4YzNiZTZmNDY3IG91dCBvZiBib3VuZHM+fSwge2J2X2xlbiA9IDE0MDI0MDI3ODI2NjU3MCwg
YnZfdmFsID0gMHgxIDxBZGRyZXNzIDB4MSBvdXQgb2YgYm91bmRzPn0sIHtidl9sZW4gPSAxLCAN
CiAgICAgICAgICAgICAgYnZfdmFsID0gMHg3ZjYxYTE0MGNkODAgIiAifSwge2J2X2xlbiA9IDUz
MDc2MDMsIGJ2X3ZhbCA9IDB4N2Y4YzNiZTZmNDY3IDxBZGRyZXNzIDB4N2Y4YzNiZTZmNDY3IG91
dCBvZiBib3VuZHM+fSwge2J2X2xlbiA9IDUzMDc2MDQsIA0KICAgICAgICAgICAgICBidl92YWwg
PSAweDEgPEFkZHJlc3MgMHgxIG91dCBvZiBib3VuZHM+fSwge2J2X2xlbiA9IDE0MDA1NzI5Mzkz
MzM2MCwgYnZfdmFsID0gMHg3ZjYxYTE0MGNhNTggIlwzNDZcMzEyQFwyNDFhXDE3NyJ9LCB7YnZf
bGVuID0gMTQwMjQwMjc4MjY2NTY2LCANCiAgICAgICAgICAgICAgYnZfdmFsID0gMHgyMCA8QWRk
cmVzcyAweDIwIG91dCBvZiBib3VuZHM+fSwge2J2X2xlbiA9IDAsIGJ2X3ZhbCA9IDB4MH0sIHti
dl9sZW4gPSAxNDAwNTcyOTM5MzM0NjgsIGJ2X3ZhbCA9IDB4N2Y2MWExNDBjYmI4ICIhVk0ifSwg
e2J2X2xlbiA9IDUzMDc1NzksIA0KICAgICAgICAgICAgICBidl92YWwgPSAweDdmNjFhMTQwY2Jk
OCAiXDMyNFwzNjJFIn0sIHtidl9sZW4gPSAxNDAwNTcyOTM5MzMwNTYsIGJ2X3ZhbCA9IDB4MH0s
IHtidl9sZW4gPSAxNDAwNTcyOTM5MzM1MTYsIA0KICAgICAgICAgICAgICBidl92YWwgPSAweDdm
OGMzYmU5Zjk1ZSA8QWRkcmVzcyAweDdmOGMzYmU5Zjk1ZSBvdXQgb2YgYm91bmRzPn0sIHtidl9s
ZW4gPSAxNDAwNTcxMzk3NTEyMzIsIGJ2X3ZhbCA9IDB4N2Y2MWExNDBjZDIwICIwXDMxNkBcMjQx
YVwxNzcifSwge2J2X2xlbiA9IDU5LCANCiAgICAgICAgICAgICAgYnZfdmFsID0gMHg3ZjYxYTE0
MGNlMzAgIigifSwge2J2X2xlbiA9IDUzMDk2MDIsIGJ2X3ZhbCA9IDB4N2Y4YzNiZTZmNDY3IDxB
ZGRyZXNzIDB4N2Y4YzNiZTZmNDY3IG91dCBvZiBib3VuZHM+fSwge2J2X2xlbiA9IDUzMDk2MDMs
IA0KICAgICAgICAgICAgICBidl92YWwgPSAweDEgPEFkZHJlc3MgMHgxIG91dCBvZiBib3VuZHM+
fSwge2J2X2xlbiA9IDEsIGJ2X3ZhbCA9IDB4N2Y2MWExNDBjYjA4ICJcMjI2XDMxM0BcMjQxYVwx
NzcifSwge2J2X2xlbiA9IDAsIA0KICAgICAgICAgICAgICBidl92YWwgPSAweDdmNjEwMDAwMDAy
MCA8QWRkcmVzcyAweDdmNjEwMDAwMDAyMCBvdXQgb2YgYm91bmRzPn0sIHtidl9sZW4gPSAwLCBi
dl92YWwgPSAweDB9LCB7YnZfbGVuID0gMTQwMDU3MjkzOTMzNTg0LCANCiAgICAgICAgICAgICAg
YnZfdmFsID0gMHhhMDAwMDA5YWYgPEFkZHJlc3MgMHhhMDAwMDA5YWYgb3V0IG9mIGJvdW5kcz59
LCB7YnZfbGVuID0gNTMwOTU2MCwgYnZfdmFsID0gMHgyMCA8QWRkcmVzcyAweDIwIG91dCBvZiBi
b3VuZHM+fSwge2J2X2xlbiA9IDE0MDA1NzI5MzkzMzMxNSwgYnZfdmFsID0gMHgwfSwgew0KICAg
ICAgICAgICAgICBidl9sZW4gPSAxNDAwNTcyOTM5MzM2OTIsIGJ2X3ZhbCA9IDB4N2Y2MWExNDBj
Yzk4ICIhVk0ifSwge2J2X2xlbiA9IDAsIGJ2X3ZhbCA9IDB4N2Y2MWExNDBjY2I4ICJcMzI0XDM2
MkUifSwge2J2X2xlbiA9IDE0MDA1NDU4ODU1NTI2NCwgYnZfdmFsID0gMHgwfSwgew0KICAgICAg
ICAgICAgICBidl9sZW4gPSAxNDAyNDAyNzgyNjY1NjcsIGJ2X3ZhbCA9IDB4ZmZmZmZmZmYgPEFk
ZHJlc3MgMHhmZmZmZmZmZiBvdXQgb2YgYm91bmRzPn0sIHtidl9sZW4gPSAwLCBidl92YWwgPSAw
eGJhMTQwY2IzOCA8QWRkcmVzcyAweGJhMTQwY2IzOCBvdXQgb2YgYm91bmRzPn0sIHsNCiAgICAg
ICAgICAgICAgYnZfbGVuID0gMTE1LCBidl92YWwgPSAweDdmNjFhMTQwYzgwMCAiIn0sIHtidl9s
ZW4gPSAxODQ0Njc0NDA3MzcwOTU1MTYxNSwgYnZfdmFsID0gMHg3ZjYxYTE0MGNjNzAgIiAifSwg
e2J2X2xlbiA9IDAsIA0KICAgICAgICAgICAgICBidl92YWwgPSAweGIwMDAwMDAwMCA8QWRkcmVz
cyAweGIwMDAwMDAwMCBvdXQgb2YgYm91bmRzPn0sIHtidl9sZW4gPSAwLCBidl92YWwgPSAweDdm
NjFhMTQwY2JlOCAiXDMxNFwzMzJFIn0sIHtidl9sZW4gPSAwLCBidl92YWwgPSAweDIwIDxBZGRy
ZXNzIDB4MjAgb3V0IG9mIGJvdW5kcz59LCB7DQogICAgICAgICAgICAgIGJ2X2xlbiA9IDAsIGJ2
X3ZhbCA9IDB4MH0sIHtidl9sZW4gPSAwLCBidl92YWwgPSAweDlhZiA8QWRkcmVzcyAweDlhZiBv
dXQgb2YgYm91bmRzPn0sIHtidl9sZW4gPSAwLCBidl92YWwgPSAweDB9LCB7YnZfbGVuID0gMTQw
MDU0NTg4NTU1MjY0LCANCiAgICAgICAgICAgICAgYnZfdmFsID0gMHgyMDAwMDAwMDAgPEFkZHJl
c3MgMHgyMDAwMDAwMDAgb3V0IG9mIGJvdW5kcz59LCB7YnZfbGVuID0gMCwgYnZfdmFsID0gMHg3
ZjYxZmZmZmZmZmYgPEFkZHJlc3MgMHg3ZjYxZmZmZmZmZmYgb3V0IG9mIGJvdW5kcz59LCB7YnZf
bGVuID0gMCwgDQogICAgICAgICAgICAgIGJ2X3ZhbCA9IDB4N2Y2MWExNDBjYmU4ICJcMzE0XDMz
MkUifSwge2J2X2xlbiA9IDExNSwgYnZfdmFsID0gMHgwfSwge2J2X2xlbiA9IDUzMDk1ODQsIGJ2
X3ZhbCA9IDB4MH0sIHtidl9sZW4gPSAwLCANCiAgICAgICAgICAgICAgYnZfdmFsID0gMHhiMDAw
MDAwMDAgPEFkZHJlc3MgMHhiMDAwMDAwMDAgb3V0IG9mIGJvdW5kcz59LCB7YnZfbGVuID0gMCwg
YnZfdmFsID0gMHgwfSA8cmVwZWF0cyAxMiB0aW1lcz4sIHtidl9sZW4gPSAyNCwgYnZfdmFsID0g
MHg3ZjYxYTE0MGM5NDAgIiJ9LCB7DQogICAgICAgICAgICAgIGJ2X2xlbiA9IDE0MDA1NzI5Mzkz
Mjc4NCwgYnZfdmFsID0gMHgwfSwge2J2X2xlbiA9IDI0LCBidl92YWwgPSAweDdmNjFhMTQwYzk2
MCAiIn0sIHtidl9sZW4gPSAxNDAwNTcyOTM5MzI4MTYsIGJ2X3ZhbCA9IDB4MH0sIHtidl9sZW4g
PSAxNDAyMzk4NzYyNTI3NTIsIGJ2X3ZhbCA9IDB4MH0sIHsNCiAgICAgICAgICAgICAgYnZfbGVu
ID0gMCwgYnZfdmFsID0gMHgwfSwge2J2X2xlbiA9IDIwNTAsIGJ2X3ZhbCA9IDB4MTMgPEFkZHJl
c3MgMHgxMyBvdXQgb2YgYm91bmRzPn0uLi59fQ0KICAgICAgICBtY2kgPSAweDdmOGMzYmY4MjJj
Mw0KICAgICAgICBtY2QgPSAweDMwMDAwMDAwMTANCiAgICAgICAgb3BpbmZvID0ge21vaV9vZSA9
IHtvZV9uZXh0ID0ge3NsZV9uZXh0ID0gMHg3ZjYxOTgwMDIwNjh9LCBvZV9rZXkgPSAweDB9LCBt
b2lfdHhuID0gMHgwLCBtb2lfcmVmID0gMCwgbW9pX2ZsYWcgPSAwICdcMDAwJ30NCiAgICAgICAg
bW9pID0gMHgxMDAwMDAwMDENCiAgICAgICAgbHRpZCA9IDx2YWx1ZSBvcHRpbWl6ZWQgb3V0Pg0K
IzIgIDB4MDAwMDAwMDAwMDAwMDAwMCBpbiA/PyAoKQ0KTm8gc3ltYm9sIHRhYmxlIGluZm8gYXZh
aWxhYmxlLg0KDQotLS0tLU1lc3NhZ2UgZCdvcmlnaW5lLS0tLS0NCkRlwqA6IExBUlJJRVUtTUFO
QU4sIFJpY2hhcmQgDQpFbnZvecOpwqA6IHZlbmRyZWRpIDEwIGp1aWxsZXQgMjAxNSAxMTozOQ0K
w4DCoDogSG93YXJkIENodTsgb3BlbmxkYXAtaXRzQE9wZW5MREFQLm9yZw0KQ2PCoDogQnJvY2hh
cmQsIEx1ZG92aWM7IFZBU1NBVVgsIFBhc2NhbA0KT2JqZXTCoDogUkU6IChJVFMjODE5NCkgU2Vy
dmljZSBzbGFwZCBmYWxsZG93biBpbiBhIHNlYXJjaCB3aXRoIGNsaWVudCBsZGFwc2VhcmNoDQoN
CkhlbGxvLA0KDQpCZWxvdyB0aGUgY29yZSBkdW1wIGxvZ3MgOg0KQ29yZSB3YXMgZ2VuZXJhdGVk
IGJ5IGAvb3B0L29wZW5sZGFwL2xpYmV4ZWMvc2xhcGQgLWggbGRhcDovLzAuMC4wLjA6Mzg5IGxk
YXBpOi8vJTJmdmFyJTJmcnVuJTJmc2xhcGQlJy4NClByb2dyYW0gdGVybWluYXRlZCB3aXRoIHNp
Z25hbCAxMSwgU2VnbWVudGF0aW9uIGZhdWx0Lg0KIzAgIDB4MDAwMDAwMDAwMDQ5ZTI1MSBpbiBt
ZGJfaGFzU3Vib3JkaW5hdGVzIChvcD0weDdmNjFhMTQwZDQ2MCwgZT08dmFsdWUgb3B0aW1pemVk
IG91dD4sIGhhc1N1Ym9yZGluYXRlcz0weDdmNjFhMDkwZTAxMCkgYXQgb3BlcmF0aW9uYWwuYzo3
OA0KNzggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTERBUF9TTElT
VF9SRU1PVkUoICZvcC0+b19leHRyYSwgJm1vaS0+bW9pX29lLCBPcEV4dHJhLCBvZV9uZXh0ICk7
DQooZ2RiKSBidA0KIzAgIDB4MDAwMDAwMDAwMDQ5ZTI1MSBpbiBtZGJfaGFzU3Vib3JkaW5hdGVz
IChvcD0weDdmNjFhMTQwZDQ2MCwgZT08dmFsdWUgb3B0aW1pemVkIG91dD4sIGhhc1N1Ym9yZGlu
YXRlcz0weDdmNjFhMDkwZTAxMCkgYXQgb3BlcmF0aW9uYWwuYzo3OA0KIzEgIDB4MDAwMDAwMDAw
MDRhMDhhYyBpbiBtZGJfc2VhcmNoIChvcD0weDdmNjFhMTQwZWEzMCwgcnM9PHZhbHVlIG9wdGlt
aXplZCBvdXQ+KSBhdCBzZWFyY2guYzo5NTANCiMyICAweDAwMDAwMDAwMDAwMDAwMDAgaW4gPz8g
KCkNCg0KQmVsb3cgc2xhcGQuY29uZiBmaWxlIDoNCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
DQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KIyBDb25maWd1cmF0aW9uIGNvbW11bmUNCg0K
IyBTY2hlbWEgYW5kIG9iamVjdENsYXNzIGRlZmluaXRpb25zDQppbmNsdWRlICAgICAgICAgL2Fw
cGxpL2xkYXAvY29uZi9zY2hlbWEvY29yZS5zY2hlbWENCmluY2x1ZGUgICAgICAgICAvYXBwbGkv
bGRhcC9jb25mL3NjaGVtYS9jb3NpbmUuc2NoZW1hDQppbmNsdWRlICAgICAgICAgL2FwcGxpL2xk
YXAvY29uZi9zY2hlbWEvbmlzLnNjaGVtYQ0KaW5jbHVkZSAgICAgICAgIC9hcHBsaS9sZGFwL2Nv
bmYvc2NoZW1hL2luZXRvcmdwZXJzb24uc2NoZW1hDQoNCiMgU2NoZW1hIGRlIGwgYW5udWFpcmUg
ZGVmaW5pIGRhbnMgbGUgU0RFVCBkZXMgRU5UDQppbmNsdWRlICAgICAgICAgL2FwcGxpL2xkYXAv
Y29uZi9zY2hlbWEvc2RldC5zY2hlbWENCmluY2x1ZGUgICAgICAgICAvYXBwbGkvbGRhcC9jb25m
L3NjaGVtYS9lbnQuc2NoZW1hDQoNCiMgV2hlcmUgdGhlIHBpZCBmaWxlIGlzIHB1dC4gVGhlIGlu
aXQuZCBzY3JpcHQgIyB3aWxsIG5vdCBzdG9wIHRoZSBzZXJ2ZXIgaWYgeW91IGNoYW5nZSB0aGlz
Lg0KcGlkZmlsZSAgICAgICAgIC9hcHBsaS9sZGFwL3RtcC9zbGFwZC5waWQNCg0KIyBMaXN0IG9m
IGFyZ3VtZW50cyB0aGF0IHdlcmUgcGFzc2VkIHRvIHRoZSBzZXJ2ZXINCmFyZ3NmaWxlICAgICAg
ICAvYXBwbGkvbGRhcC90bXAvc2xhcGQuYXJncw0KDQojIFJlYWQgc2xhcGQuY29uZig1KSBmb3Ig
cG9zc2libGUgdmFsdWVzDQpsb2dsZXZlbAlzdGF0cyBzeW5jDQpsb2dmaWxlICAgICAgICAgL2Fw
cGxpL2xkYXAvbG9ncy9zbGRhcC5sb2cNCg0KIyBXaGVyZSB0aGUgZHluYW1pY2FsbHkgbG9hZGVk
IG1vZHVsZXMgYXJlIHN0b3JlZCAjIE5vIG1vZHVsZSBpcyBuZWVkZWQgOiB0aGVyZSBhcmUgc3Rh
dGljYWxseSBsb2FkZWQNCg0KU2VydmVySUQJMDAxDQoNCiMgVGhlIHRvb2wtdGhyZWFkcyBwYXJh
bWV0ZXIgc2V0cyB0aGUgYWN0dWFsIGFtb3VudCBvZiBjcHUncyB0aGF0IGlzIHVzZWQgZm9yIGlu
ZGV4aW5nLg0KdG9vbC10aHJlYWRzIDMNCnRocmVhZHMgMTYNCmNvbmN1cnJlbmN5IDE2DQoNCiNj
b25uX21heF9wZW5kaW5nIDEwMDANCiNjb25uX21heF9wZW5kaW5nX2F1dGggMTAwMDANCg0KYmFj
a2VuZCAgICAgICAgIG1kYg0KDQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KIyBDb25maWd1
cmF0aW9uIGR1IGJhY2stZW5kDQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KIyBEYXRhYmFz
ZSBFTlQgDQpkYXRhYmFzZSAgICAgICAgbWRiDQoNCiMgVGhlIGJhc2Ugb2YgeW91ciBkaXJlY3Rv
cnkgaW4gZGF0YWJhc2UgIzENCnN1ZmZpeCAgICAgICAgICAiZGM9ZW50LGRjPWZyIg0KZGlyZWN0
b3J5ICAgICAgIC9hcHBsaS9sZGFwL2RhdGEvc2xhcGQNCnJvb3RkbiAgICAgICAgICAiY249YWRt
aW4sb3U9c3lzdGVtLGRjPWVudCxkYz1mciINCnJvb3RwdwkJe01ENX1YWmtTSUtCK1pldDZ1RlEw
RnBIS2ZRPT0NCnBhc3N3b3JkLWhhc2ggICB7TUQ1fQ0KDQojIFBhcmFtZXRyZXMgTURCDQptYXhy
ZWFkZXJzIDEyNg0KbW9kZSAwNjAwDQojIFNob3VsZCBiZSBtb3JlIHRoYW4gZW5vdWdoLi4uDQpz
ZWFyY2hzdGFjayAxNg0KIzMyIEdiIHNob3VsZCBiZSBlbm91Z2guLi4NCiMgU2V0IHRvIDMyIEdv
DQptYXhzaXplIDE2MTA2MTI3MzYwMA0KIyBkZWZhdWx0IHZhbHVlcw0KbGFzdG1vZCBUUlVFDQpt
YXhkZXJlZmRlcHRoIDE1DQpyZWFkb25seSBGQUxTRQ0Kc3luY191c2Vfc3ViZW50cnkgRkFMU0UN
Cg0KIyBBdCBzb21lIHBvaW50LCB0byBnZXQgc29tZSBzdGF0cywgaXQgY291bGQgYmUgaW50ZXJl
c3RlZCB0byB0dXJuIHRoaXMgb24gbW9uaXRvcmluZyBGQUxTRQ0KDQojIGVjcml0dXJlIGRpZmbD
qXLDqWUNCmRibm9zeW5jIFRSVUUNCiMgZWNyaXR1cmUgdG91cyBsZXMgMTUgbWludXRlcw0KY2hl
Y2twb2ludCAwIDE1DQoNCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQojIENvbmZpZ3VyYXRpb24g
SU5ERVgNCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQoNCiNHbG9iYXV4DQppbmRleAlvYmplY3RD
bGFzcwkJCQkJCWVxDQppbmRleAlhY3RpdmUJCQkJCQkJZXENCmluZGV4CW91CQkJCQkJCWVxDQpp
bmRleAljbix1aWQJCQkJCQkJZXENCmluZGV4CXNuCQkJCQkJCXByZXMsc3ViLGVxDQppbmRleAll
bnRyeUNTTixlbnRyeVVVSUQgCQkJCQllcQ0KI1BlcnNvbm5lcw0KaW5kZXgJRU5UUGVyc29uSm9p
bnR1cmUJCQkJCXN1YixlcQ0KaW5kZXgJRU5UUGVyc29uTG9naW4JCQkJCQllcQ0KaW5kZXgJbWFp
bAkJCQkJCQllcQ0KaW5kZXgJc25Ob3JtYWxpc2UJCQkJCQlwcmVzLHN1YixlcQ0KaW5kZXgJRU5U
UGVyc29ubmVETgkJCQkJCWVxLHByZXMNCmluZGV4CUVOVFBlcnNvblByb2ZpbHMJCQkJCWVxDQpp
bmRleAlFTlRQZXJzb25BbGlhcwkJCQkJCWVxDQppbmRleAlnaXZlbk5hbWVOb3JtYWxpc2UJCQkJ
CXN1YixlcQ0KaW5kZXgJRU5UQ29kZUFjdGl2YXRpb25QYXJlbnQJCQkJCWVxDQppbmRleAljbk5v
cm1hbGlzZQkJCQkJCXByZXMsc3ViLGVxDQppbmRleAlFTlRBdXhQZXJzb25Jbml0CQkJCQllcQ0K
aW5kZXgJRU5URWxldmVTdHJ1Y3RSYXR0YWNoSWQJCQkJCWVxDQppbmRleAlFTlRBdXhQZXJzb25D
b21wdGVBQUYJCQkJCWVxDQppbmRleAlFTlRBdXhQZXJzUmVsRWxldmVFbGV2ZQkJCQkJZXENCmlu
ZGV4CUVOVFBlcnNvblN0cnVjdFJhdHRhY2gJCQkJCWVxDQppbmRleAlFTlRBdXhPdGhlckV0YWIJ
CQkJCQllcQ0KaW5kZXgJRU5UUGVyc29uQ29kZVBvc3RhbAkJCQkJZXENCmluZGV4CUVOVENvZGVB
Y3RpdmF0aW9uRWxldmUJCQkJCWVxDQppbmRleAlFTlRBdXhQZXJzb25EZWxldGVEYXRlCQkJCQlw
cmVzLGVxDQppbmRleAlFTlRFbGV2ZUNsYXNzZXMJCQkJCQllcQ0KaW5kZXgJRU5URWxldmVNRUYJ
CQkJCQllcQ0KaW5kZXgJRU5UR3JvdXBlQW5udWFpcmVGaWxpZXJlCQkJCWVxDQppbmRleAl1c2Vy
UGFzc3dvcmQJCQkJCQllcQ0KI2luZGV4CUVOVFBlcnNvbk5vbVBhdHJvCQkJCQllcQ0KaW5kZXgJ
Z2l2ZW5OYW1lCQkJCQkJcHJlcyxzdWIsZXENCmluZGV4ICAgRU5URWxldmVSZWxhdGlvblZhbGlk
ZWUgICAgICAgICAgICAgCQkJZXEgDQoNCiNTdHJ1Y3R1cmVzDQppbmRleAlFTlRTdHJ1Y3R1cmVK
b2ludHVyZQkJCQkJZXENCmluZGV4CUVOVFBvcnRldXJDb2RlCQkJCQkJZXENCmluZGV4CUVOVEV0
YWJsaXNzZW1lbnRTdHJ1Y3RSYXR0YWNoRmN0bAkJCWVxDQppbmRleAlFTlRTdHJ1Y3R1cmVOb21D
b3VyYW50CQkJCQlwcmVzLHN1YixlcQ0KaW5kZXggICBFTlRTdHJ1Y3R1cmVVQUkJCQkJCQllcSAN
CiNHcm91cGVzDQppbmRleAlkZXNjcmlwdGlvbgkJCQkJCXByZXMsc3ViLGVxDQppbmRleAlkZXNj
cmlwdGlvbk5vcm1hbGlzZQkJCQkJcHJlcyxzdWIsZXENCmluZGV4CUVOVEdyb3VwZUFubnVhaXJl
VGl0cmVOb3JtYWxpc2UJCQkJcHJlcyxzdWIsZXENCmluZGV4CW1lbWJlcgkJCQkJCQlwcmVzLGVx
DQppbmRleAlvd25lcgkJCQkJCQllcQ0KaW5kZXgJRU5UR3JvdXBlQWRtaW5Mb2NhbAkJCQkJZXEN
CmluZGV4CUVOVFByb2ZpbEROCQkJCQkJcHJlcyxlcQ0KaW5kZXgJRU5UUmVmZXJlbnRpZWxDb2Rl
CQkJCQllcQ0KaW5kZXgJRU5UR3JvdXBlQW5udWFpcmVGb25jdGlvbgkJCQlwcmVzLGVxDQppbmRl
eAlFTlRHcm91cGVBbm51YWlyZUNsYXNzZUlkCQkJCWVxDQppbmRleAlFTlRHcm91cGVBbm51YWly
ZVR5cGUJCQkJCWVxDQppbmRleAlFTlRHcm91cGVBbm51YWlyZU1lZklkCQkJCQllcQ0KaW5kZXgJ
RU5UR3JvdXBlQW5udWFpcmVGaWxpZXJlSWQJCQkJZXENCmluZGV4CUVOVERpc2NpcGxpbmVETgkJ
CQkJCWVxDQppbmRleAlFTlRHcm91cGVBZG1pblBlcmUJCQkJCWVxDQppbmRleAlFTlRGb25jdGlv
bkROCQkJCQkJZXENCmluZGV4CUVOVENsYXNzZUROCQkJCQkJZXENCmluZGV4CUVOVEdyb3VwZUFu
bnVhaXJlQ2xhc3NlCQkJCQlwcmVzLGVxDQppbmRleAlFTlRBZG1pbkxvY2FsRXRhYgkJCQkJZXEN
CiNTeW5jaHJvIHBvcnRhaWwNCmluZGV4ICAgRU5UU3VpdmlTeW5jaHJvRWZmZWN0dWVlCQkJCWVx
IA0KIyBOZXcgQU1FVSAyMDEzMDgyNw0KaW5kZXggICBFTlRHcm91cGVBZG1pbkxpZW5Hcm91cGVB
bm51YWlyZVBhcnRlbmFyaWF0ICAgICAgICAgICAgIGVxDQppbmRleCAgIEVOVFBlcnNvbkZvbmN0
aW9ucyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXENCmluZGV4ICAgRU5U
R3JvdXBlQW5udWFpcmVHcm91cGVFbnNlaWduZW1lbnQgICAgICAgICAgICAgICAgICAgICBlcQ0K
aW5kZXggICBFTlRQZXJzb25Ob21QYXRybyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHByZXMsc3ViLGVxDQppbmRleCAgIEVOVFN0cnVjdHVyZUFjYWRlbWllICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgZXENCmluZGV4ICAgRU5UU3RydWN0dXJlQ29tbXVu
ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcQ0KaW5kZXggICBFTlRHcm91
cGVBZG1pbkxpZW5Hcm91cGVBbm51YWlyZSAgICAgICAgICAgICAgICAgICAgICAgIGVxDQojIE5l
dyBSTEFSIDIwMTMwOTA0DQppbmRleCAgIEVOVEdyb3VwZUFubnVhaXJlRm9uY3Rpb25JZCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgZXENCiMgTmV3IDIwMTMwOTE0IMOgIDIwaDAwDQppbmRl
eAlFTlRBdXhQZXJzb25FdGFiQWNjZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGVxDQojIE5ldyAyMDEzMDkxNyDDoCAxN2gzOCBjb25mY2FsbCBTZXJnZXMgQmFyYm9zYSAvIFBy
b2PDqGR1cmUgZXhwb3J0IGRlIGpldSBkZSBkb25uw6llcw0KaW5kZXggICBtb2RpZnlUaW1lc3Rh
bXAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVxDQoNCiMgVE1BLTg1
ODUgMDQvMTEvMjAxMw0KaW5kZXggICBFTlRHcm91cGVBbm51YWlyZU1lZiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGVxDQppbmRleCAgIEVOVENvZGVBY3RpdmF0aW9uQ29kZSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXENCmluZGV4ICAgRU5URWxldmVQYXJl
bnRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcQ0KDQojMi4xLjFS
QzQNCmluZGV4ICAgRU5UQWRtaW5Mb2NhbENyZWF0ZXVyICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBlcQ0KDQoNCiMgU2F2ZSB0aGUgdGltZSB0aGF0IHRoZSBlbnRyeSBnZXRzIG1v
ZGlmaWVkLCBmb3IgZGF0YWJhc2UgIzENCmxhc3Rtb2QgICAgICAgICBvbg0KDQojIFRoZSBhZG1p
biBkbiBoYXMgZnVsbCB3cml0ZSBhY2Nlc3MsIGV2ZXJ5b25lIGVsc2UgIyBjYW4gcmVhZCBldmVy
eXRoaW5nLg0KYWNjZXNzIHRvICoNCiAgICAgICAgYnkgKiByZWFkDQoNCiMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMNCiMgQ29uZmlndXJhdGlvbiBTWU5DSFJPDQojIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
Iw0KDQojIE1VTFRJIE1BU1RFUiBFTiBTRSBTWU5DSFJPTklTQU5UIEFWRUMgTEUgTERBUDAyIFRQ
ICMgc3luY3JlcGwgcmlkPTIwMQ0KCXByb3ZpZGVyPWxkYXA6Ly9sZGFwcDAyOjM4OQ0KCXR5cGU9
cmVmcmVzaEFuZFBlcnNpc3QNCglyZXRyeT0iNSA1IDMwMCArIg0KCXNlYXJjaGJhc2U9ImRjPWVu
dCxkYz1mciINCglhdHRycz0iKiwrIg0KCWJpbmRtZXRob2Q9c2ltcGxlDQoJYmluZGRuPSJjbj1h
ZG1pbixvdT1zeXN0ZW0sZGM9ZW50LGRjPWZyIg0KCWNyZWRlbnRpYWxzPWp1bmdsZQ0KCWxvZ2Jh
c2U9ImNuPWRlbHRhLXN5bmMiDQoJbG9nZmlsdGVyPSIoJihvYmplY3RDbGFzcz1hdWRpdFdyaXRl
T2JqZWN0KShyZXFSZXN1bHQ9MCkpIg0KCXN5bmNkYXRhPWFjY2Vzc2xvZw0KDQptaXJyb3Jtb2Rl
IG9uDQoNCiMgT3ZlcmxheSBjb25maWd1cmF0aW9uIHNob3VsZCBiZSBhZGRlZCBhZnRlciB0aGUg
ZGF0YWJhc2UgY29uZmlndXJhdGlvbiAjIETDqWZpbml0aW9uIGRlIGwnb3ZlcmxheSBsacOpIMOg
IGxhIHLDqXBsaWNhdGlvbiBtYWl0cmUgb3ZlcmxheSBzeW5jcHJvdg0KDQpzeW5jcHJvdi1jaGVj
a3BvaW50IDEwMCAxMA0KIyBEw6lmaW5pdGlvbiBkZSBsJ292ZXJsYXkgbGnDqSDDoCBsYSByw6lw
bGljYXRpb24gbWFpdHJlIGVuIGRlbHRhLXN5bmMgb3ZlcmxheSBhY2Nlc3Nsb2cgbG9nZGIgImNu
PWRlbHRhLXN5bmMiDQpsb2dvcHMgd3JpdGVzDQpsb2dzdWNjZXNzIFRSVUUNCmxvZ3B1cmdlIDMr
MDA6MDAgMSswMDowMA0KDQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KIyBDb25maWd1cmF0aW9u
IGRlIGzigJlhY2Nlc3Nsb2cNCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQojIERhdGFiYXNlIGRl
bHRhLXN5bmMgOg0KZGF0YWJhc2UgbWRiDQpzdWZmaXggImNuPWRlbHRhLXN5bmMiDQpkaXJlY3Rv
cnkgL2FwcGxpL2xkYXAvZGF0YS9jbj1kZWx0YS1zeW5jIHJvb3RkbiAiY249YWRtaW4sb3U9c3lz
dGVtLGRjPWVudCxkYz1mciINCg0KI1NvbWUgb3B0aW9ucyB0byBvcHRpbWl6ZSBhY2Nlc2xvZyA6
DQppbmRleCBkZWZhdWx0LHJlcUROIGVxDQppbmRleCBlbnRyeUNTTixvYmplY3RDbGFzcyxyZXFF
bmQscmVxUmVzdWx0LHJlcVN0YXJ0IGVxDQoNCiNQYXJhbWV0cmVzIE1EQg0KbWF4cmVhZGVycyAx
MjYNCm1vZGUgMDYwMA0Kc2VhcmNoc3RhY2sgMTYNCiMgc2V0IHRvIDEwIEdvDQptYXhzaXplIDIx
NDc0ODM2NDgwDQpsYXN0bW9kIFRSVUUNCm1heGRlcmVmZGVwdGggMTUNCnJlYWRvbmx5IEZBTFNF
DQpkYm5vc3luYyBUUlVFDQpjaGVja3BvaW50IDAgMTUNCg0Kb3ZlcmxheSBzeW5jcHJvdg0Kc3lu
Y3Byb3Ytbm9wcmVzZW50IFRSVUUNCnN5bmNwcm92LXJlbG9hZGhpbnQgVFJVRQ0KDQoNCi0tLS0t
TWVzc2FnZSBkJ29yaWdpbmUtLS0tLQ0KRGXCoDogSG93YXJkIENodSBbbWFpbHRvOmh5Y0BzeW1h
cy5jb21dDQpFbnZvecOpwqA6IGpldWRpIDkganVpbGxldCAyMDE1IDE3OjEzDQrDgMKgOiBMQVJS
SUVVLU1BTkFOLCBSaWNoYXJkOyBvcGVubGRhcC1pdHNAT3BlbkxEQVAub3JnIE9iamV0wqA6IFJl
OiAoSVRTIzgxOTQpIFNlcnZpY2Ugc2xhcGQgZmFsbGRvd24gaW4gYSBzZWFyY2ggd2l0aCBjbGll
bnQgbGRhcHNlYXJjaA0KDQpyaWNoYXJkLmxhcnJpZXUtbWFuYW5AY2dpLmNvbSB3cm90ZToNCj4g
RnVsbF9OYW1lOiBDR0kgLSBSaWNoYXJkIExhcnJpZXUtTWFuYW4NCj4gVmVyc2lvbjogMi40LjQx
DQo+IE9TOiBSZWQgSGF0IDQuNC43LTQNCj4gVVJMOiBmdHA6Ly9mdHAub3BlbmxkYXAub3JnL2lu
Y29taW5nL0NHSV8yMDE1MDcwOS5jb3JlLjMzNjA0LnRneg0KPiBTdWJtaXNzaW9uIGZyb206IChO
VUxMKSAoMTk1LjYuMTI3LjEwOCkNCj4NCj4NCj4gSGVsbG8sDQo+DQo+IFdoZW4gc2VhcmNoaW5n
IGluIHRoZSBkaXJlY3RvcnkgbGRhcCAyLjQuNDEgd2l0aCBsZGFwc2VhcmNoIGNsaWVudCwgMSAN
Cj4gb3V0IG9mIDQgbGRhcCBzZXJ2aWNlIGZhbGxkb3duLiBTbyBJIGhhdmUgcHJvdmlkZWQgeW91
IGEgY29yZSBkdW1wDQo+IChmdHA6Ly9mdHAub3BlbmxkYXAub3JnL2luY29taW5nL0NHSV8yMDE1
MDcwOS5jb3JlLjMzNjA0LnRneikgZHVyaW5nIA0KPiB0aGUgYnVnLiBJbg0KPiAyLjQuMzggdmVy
c2lvbiBvZiB0aGUgcHJvYmxlbSBkb2VzIG5vdCBhcmlzZS4NCg0KVGhhbmtzIGZvciB0aGUgcmVw
b3J0IGJ1dCB3ZSBjYW5ub3QgdXNlIHlvdXIgY29yZSBmaWxlLiBQbGVhc2Ugc2VuZCB5b3VyIHNs
YXBkIGNvbmZpZ3VyYXRpb24gYW5kIHRoZSBzdGFjayB0cmFjZSBmcm9tIHRoZSBjb3JlLg0KDQpo
dHRwOi8vd3d3Lm9wZW5sZGFwLm9yZy9mYXEvZGF0YS9jYWNoZS81OS5odG1sDQoNCi0tIA0KICAg
LS0gSG93YXJkIENodQ0KICAgQ1RPLCBTeW1hcyBDb3JwLiAgICAgICAgICAgaHR0cDovL3d3dy5z
eW1hcy5jb20NCiAgIERpcmVjdG9yLCBIaWdobGFuZCBTdW4gICAgIGh0dHA6Ly9oaWdobGFuZHN1
bi5jb20vaHljLw0KICAgQ2hpZWYgQXJjaGl0ZWN0LCBPcGVuTERBUCAgaHR0cDovL3d3dy5vcGVu
bGRhcC5vcmcvcHJvamVjdC8NCg==
8 years, 4 months