<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>36684</bug_id>
          
          <creation_ts>2010-03-26 16:28:22 -0700</creation_ts>
          <short_desc>Add some basic IRC commands to sheriffbot</short_desc>
          <delta_ts>2010-03-26 22:45:15 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Barth">abarth</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>eric</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>204855</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-03-26 16:28:22 -0700</bug_when>
    <thetext>Add some basic IRC commands to sheriffbot</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>204856</commentid>
    <comment_count>1</comment_count>
      <attachid>51794</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-03-26 16:33:46 -0700</bug_when>
    <thetext>Created attachment 51794
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>204857</commentid>
    <comment_count>2</comment_count>
      <attachid>51795</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-03-26 16:35:01 -0700</bug_when>
    <thetext>Created attachment 51795
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>204878</commentid>
    <comment_count>3</comment_count>
      <attachid>51795</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-03-26 17:54:24 -0700</bug_when>
    <thetext>Comment on attachment 51795
Patch

You scared me off with your claims of &quot;duplicating command&quot; before I even reallly looked.  :)  this is fantastic!  We might consider relying via privmsg to the person talking to the Not. At least in the failed lookupbcase.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>204938</commentid>
    <comment_count>4</comment_count>
      <attachid>51795</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-03-26 22:45:09 -0700</bug_when>
    <thetext>Comment on attachment 51795
Patch

Clearing flags on attachment: 51795

Committed r56658: &lt;http://trac.webkit.org/changeset/56658&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>204939</commentid>
    <comment_count>5</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-03-26 22:45:15 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>51794</attachid>
            <date>2010-03-26 16:33:46 -0700</date>
            <delta_ts>2010-03-26 16:34:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-36684-20100326163344.patch</filename>
            <type>text/plain</type>
            <size>16785</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBlMmNiNWE5Li4zZWI1M2FjIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTAtMDMt
MjYgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgc29tZSBiYXNpYyBJUkMgY29tbWFuZHMg
dG8gc2hlcmlmZmJvdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MzY2ODQKKworICAgICAgICBBZGRzIHN1cHBvcnQgZm9yIHNoZXJpZmZib3QgdG8gcmVz
cG9uZCB0byBhICJoaSIgY29tbWFuZCBhbmQgYQorICAgICAgICAibGFzdC1ncmVlbi1yZXZpc2lv
biIgY29tbWFuZC4gIEl0J3MgbGFtZSB0aGF0IHdlJ3JlIHJlYnVpbGRpbmcKKyAgICAgICAgTXVs
dGlDb21tYW5kVG9vbCwgYnV0IGFzIGRpc2N1c3NlZCBpbiBwZXJzb24gd2UnbGwgaW50ZXJncmF0
ZSB0aGUgdHdvCisgICAgICAgIG9uY2Ugd2Ugc2VlIHdoYXQgdGhlIHJlcXVpcmVtZW50cyBhcmUu
CisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L2lyY19jb21tYW5kLnB5OiBB
ZGRlZC4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L3F1ZXVlZW5naW5lLnB5
OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvcXVldWVlbmdpbmVfdW5pdHRl
c3QucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9zaGVyaWZmaXJjYm90
LnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3Qvc2hlcmlmZmlyY2JvdF91
bml0dGVzdC5weTogQWRkZWQuCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1h
bmRzL3F1ZXVlcy5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMv
cXVldWVzdGVzdC5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMv
c2hlcmlmZmJvdC5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvbWFpbi5weToK
KyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvbW9ja3Rvb2wucHk6CisgICAgICAgICog
U2NyaXB0cy93ZWJraXRweS90b29sL3VuaXR0ZXN0cy5weToKKwogMjAxMC0wMy0yNiAgU2VyZ2lv
IFZpbGxhciBTZW5pbiAgPHN2aWxsYXJAaWdhbGlhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBi
eSBFcmljIFNlaWRlbC4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkv
dG9vbC9ib3QvaXJjX2NvbW1hbmQucHkgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rv
b2wvYm90L2lyY19jb21tYW5kLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LmZiMWU3OWMKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5
L3Rvb2wvYm90L2lyY19jb21tYW5kLnB5CkBAIC0wLDAgKzEsNDIgQEAKKyMgQ29weXJpZ2h0IChj
KSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisjCisjIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
IyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMgYXJlCisjIG1ldDoKKyMKKyMgICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorIyAgICAg
KiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
CisjIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIKKyMgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorIyBkaXN0cmlidXRpb24uCisjICAgICAqIE5laXRo
ZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyMgY29udHJp
YnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
IGZyb20KKyMgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KKyMKKyMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworIyAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorIyBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyMg
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRI
RSBDT1BZUklHSFQKKyMgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisjIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyMgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisj
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWQorIyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisjIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorIyBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorCisjIEZJWE1FOiBNZXJnZSB3aXRoIENvbW1hbmQ/CitjbGFzcyBJUkNDb21tYW5kKG9iamVj
dCk6CisgICAgZGVmIGV4ZWN1dGUoc2VsZiwgYXJncywgdG9vbCk6CisgICAgICAgIHJhaXNlIE5v
dEltcGxlbWVudGVkRXJyb3IsICJzdWJjbGFzc2VzIG11c3QgaW1wbGVtZW50IgorCisKK2NsYXNz
IExhc3RHcmVlblJldmlzaW9uKElSQ0NvbW1hbmQpOgorICAgIGRlZiBleGVjdXRlKHNlbGYsIGFy
Z3MsIHRvb2wpOgorICAgICAgICByZXR1cm4gdG9vbC5idWlsZGJvdC5sYXN0X2dyZWVuX3Jldmlz
aW9uKCkKKworCitjbGFzcyBIaShJUkNDb21tYW5kKToKKyAgICBkZWYgZXhlY3V0ZShzZWxmLCBh
cmdzLCB0b29sKToKKyAgICAgICAgcmV0dXJuICciT25seSB5b3UgY2FuIHByZXZlbnQgZm9yZXN0
IGZpcmVzLiIgLS0gU21va2V5IHRoZSBCZWFyJwpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2Ny
aXB0cy93ZWJraXRweS90b29sL2JvdC9xdWV1ZWVuZ2luZS5weSBiL1dlYktpdFRvb2xzL1Njcmlw
dHMvd2Via2l0cHkvdG9vbC9ib3QvcXVldWVlbmdpbmUucHkKaW5kZXggNDg2NjhhZi4uYmQ0ZDBj
MyAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9xdWV1
ZWVuZ2luZS5weQorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L3F1
ZXVlZW5naW5lLnB5CkBAIC02NSwxMCArNjUsMTAgQEAgY2xhc3MgUXVldWVFbmdpbmVEZWxlZ2F0
ZToKIAogCiBjbGFzcyBRdWV1ZUVuZ2luZToKLSAgICBkZWYgX19pbml0X18oc2VsZiwgbmFtZSwg
ZGVsZWdhdGUsIG1lc3NhZ2VfcXVldWU9Tm9uZSk6CisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG5h
bWUsIGRlbGVnYXRlLCB3YWtldXBfZXZlbnQpOgogICAgICAgICBzZWxmLl9uYW1lID0gbmFtZQog
ICAgICAgICBzZWxmLl9kZWxlZ2F0ZSA9IGRlbGVnYXRlCi0gICAgICAgIHNlbGYuX21lc3NhZ2Vf
cXVldWUgPSBtZXNzYWdlX3F1ZXVlCisgICAgICAgIHNlbGYuX3dha2V1cF9ldmVudCA9IHdha2V1
cF9ldmVudAogICAgICAgICBzZWxmLl9vdXRwdXRfdGVlID0gT3V0cHV0VGVlKCkKIAogICAgIGxv
Z19kYXRlX2Zvcm1hdCA9ICIlWS0lbS0lZCAlSDolTTolUyIKQEAgLTEzOSw3ICsxMzksNSBAQCBj
bGFzcyBRdWV1ZUVuZ2luZToKIAogICAgIGRlZiBfc2xlZXAoc2VsZiwgbWVzc2FnZSk6CiAgICAg
ICAgIGxvZyhzZWxmLl9zbGVlcF9tZXNzYWdlKG1lc3NhZ2UpKQotICAgICAgICBpZiBzZWxmLl9t
ZXNzYWdlX3F1ZXVlOgotICAgICAgICAgICAgc2VsZi5fbWVzc2FnZV9xdWV1ZS53YWl0KHNlbGYu
c2Vjb25kc190b19zbGVlcCkKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHRpbWUuc2xlZXAo
c2VsZi5zZWNvbmRzX3RvX3NsZWVwKQorICAgICAgICBpZiBzZWxmLl93YWtldXBfZXZlbnQud2Fp
dChzZWxmLnNlY29uZHNfdG9fc2xlZXApOgorICAgICAgICAgICAgc2VsZi5fd2FrZXVwX2V2ZW50
LmNsZWFyKCkKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9i
b3QvcXVldWVlbmdpbmVfdW5pdHRlc3QucHkgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5
L3Rvb2wvYm90L3F1ZXVlZW5naW5lX3VuaXR0ZXN0LnB5CmluZGV4IDkwNDhhZjQuLjM1YTc2MzMg
MTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvcXVldWVl
bmdpbmVfdW5pdHRlc3QucHkKKysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29s
L2JvdC9xdWV1ZWVuZ2luZV91bml0dGVzdC5weQpAQCAtMjksNiArMjksNyBAQAogaW1wb3J0IG9z
CiBpbXBvcnQgc2h1dGlsCiBpbXBvcnQgdGVtcGZpbGUKK2ltcG9ydCB0aHJlYWRpbmcKIGltcG9y
dCB1bml0dGVzdAogCiBmcm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0uZXhlY3V0aXZlIGltcG9y
dCBTY3JpcHRFcnJvcgpAQCAtMTEwLDcgKzExMSw3IEBAIGNsYXNzIE5vdFNhZmVUb1Byb2NlZWRE
ZWxlZ2F0ZShMb2dnaW5nRGVsZWdhdGUpOgogCiBjbGFzcyBGYXN0UXVldWVFbmdpbmUoUXVldWVF
bmdpbmUpOgogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBkZWxlZ2F0ZSk6Ci0gICAgICAgIFF1ZXVl
RW5naW5lLl9faW5pdF9fKHNlbGYsICJmYXN0LXF1ZXVlIiwgZGVsZWdhdGUpCisgICAgICAgIFF1
ZXVlRW5naW5lLl9faW5pdF9fKHNlbGYsICJmYXN0LXF1ZXVlIiwgZGVsZWdhdGUsIHRocmVhZGlu
Zy5FdmVudCgpKQogCiAgICAgIyBObyBzbGVlcCBmb3IgdGhlIHdpY2tlZC4KICAgICBzZWNvbmRz
X3RvX3NsZWVwID0gMApAQCAtMTIyLDcgKzEyMyw3IEBAIGNsYXNzIEZhc3RRdWV1ZUVuZ2luZShR
dWV1ZUVuZ2luZSk6CiBjbGFzcyBRdWV1ZUVuZ2luZVRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgog
ICAgIGRlZiB0ZXN0X3RyaXZpYWwoc2VsZik6CiAgICAgICAgIGRlbGVnYXRlID0gTG9nZ2luZ0Rl
bGVnYXRlKHNlbGYpCi0gICAgICAgIHdvcmtfcXVldWUgPSBRdWV1ZUVuZ2luZSgidHJpdmlhbC1x
dWV1ZSIsIGRlbGVnYXRlKQorICAgICAgICB3b3JrX3F1ZXVlID0gUXVldWVFbmdpbmUoInRyaXZp
YWwtcXVldWUiLCBkZWxlZ2F0ZSwgdGhyZWFkaW5nLkV2ZW50KCkpCiAgICAgICAgIHdvcmtfcXVl
dWUucnVuKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMoZGVsZWdhdGUuX2NhbGxiYWNrcywg
TG9nZ2luZ0RlbGVnYXRlLmV4cGVjdGVkX2NhbGxiYWNrcykKICAgICAgICAgc2VsZi5hc3NlcnRU
cnVlKG9zLnBhdGguZXhpc3RzKG9zLnBhdGguam9pbihzZWxmLnRlbXBfZGlyLCAicXVldWVfbG9n
X3BhdGgiKSkpCkBAIC0xMzAsNyArMTMxLDcgQEAgY2xhc3MgUXVldWVFbmdpbmVUZXN0KHVuaXR0
ZXN0LlRlc3RDYXNlKToKIAogICAgIGRlZiB0ZXN0X3VuZXhwZWN0ZWRfZXJyb3Ioc2VsZik6CiAg
ICAgICAgIGRlbGVnYXRlID0gVGhyb3dFcnJvckRlbGVnYXRlKHNlbGYsIDMpCi0gICAgICAgIHdv
cmtfcXVldWUgPSBRdWV1ZUVuZ2luZSgiZXJyb3ItcXVldWUiLCBkZWxlZ2F0ZSkKKyAgICAgICAg
d29ya19xdWV1ZSA9IFF1ZXVlRW5naW5lKCJlcnJvci1xdWV1ZSIsIGRlbGVnYXRlLCB0aHJlYWRp
bmcuRXZlbnQoKSkKICAgICAgICAgd29ya19xdWV1ZS5ydW4oKQogICAgICAgICBleHBlY3RlZF9j
YWxsYmFja3MgPSBMb2dnaW5nRGVsZWdhdGUuZXhwZWN0ZWRfY2FsbGJhY2tzWzpdCiAgICAgICAg
IHdvcmtfaXRlbV9pbmRleCA9IGV4cGVjdGVkX2NhbGxiYWNrcy5pbmRleCgncHJvY2Vzc193b3Jr
X2l0ZW0nKQpAQCAtMTQxLDcgKzE0Miw3IEBAIGNsYXNzIFF1ZXVlRW5naW5lVGVzdCh1bml0dGVz
dC5UZXN0Q2FzZSk6CiAKICAgICBkZWYgdGVzdF9oYW5kbGVkX2Vycm9yKHNlbGYpOgogICAgICAg
ICBkZWxlZ2F0ZSA9IFRocm93RXJyb3JEZWxlZ2F0ZShzZWxmLCBRdWV1ZUVuZ2luZS5oYW5kbGVk
X2Vycm9yX2NvZGUpCi0gICAgICAgIHdvcmtfcXVldWUgPSBRdWV1ZUVuZ2luZSgiaGFuZGxlZC1l
cnJvci1xdWV1ZSIsIGRlbGVnYXRlKQorICAgICAgICB3b3JrX3F1ZXVlID0gUXVldWVFbmdpbmUo
ImhhbmRsZWQtZXJyb3ItcXVldWUiLCBkZWxlZ2F0ZSwgdGhyZWFkaW5nLkV2ZW50KCkpCiAgICAg
ICAgIHdvcmtfcXVldWUucnVuKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMoZGVsZWdhdGUu
X2NhbGxiYWNrcywgTG9nZ2luZ0RlbGVnYXRlLmV4cGVjdGVkX2NhbGxiYWNrcykKIApkaWZmIC0t
Z2l0IGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9zaGVyaWZmaXJjYm90
LnB5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9zaGVyaWZmaXJjYm90
LnB5CmluZGV4IGMwMTE0MTAuLmY1ZGM2NDQgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1Njcmlw
dHMvd2Via2l0cHkvdG9vbC9ib3Qvc2hlcmlmZmlyY2JvdC5weQorKysgYi9XZWJLaXRUb29scy9T
Y3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L3NoZXJpZmZpcmNib3QucHkKQEAgLTI2LDE5ICsyNiw1
OCBAQAogIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UKICMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAoraW1wb3J0IHdlYmtpdHB5LnRv
b2wuYm90LmlyY19jb21tYW5kIGFzIGlyY19jb21tYW5kCisKIGZyb20gd2Via2l0cHkuY29tbW9u
Lm5ldC5pcmMuaXJjYm90IGltcG9ydCBJUkNCb3REZWxlZ2F0ZQorZnJvbSB3ZWJraXRweS5jb21t
b24udGhyZWFkLnRocmVhZGVkbWVzc2FnZXF1ZXVlIGltcG9ydCBUaHJlYWRlZE1lc3NhZ2VRdWV1
ZQogCi1jbGFzcyBTaGVyaWZmSVJDQm90KElSQ0JvdERlbGVnYXRlKToKLSAgICBkZWYgX19pbml0
X18oc2VsZiwgcGFzc3dvcmQpOgorCitjbGFzcyBfSVJDVGhyZWFkVGVhcm9mZihvYmplY3QpOgor
ICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwYXNzd29yZCwgbWVzc2FnZV9xdWV1ZSwgd2FrZXVwX2V2
ZW50KToKICAgICAgICAgc2VsZi5fcGFzc3dvcmQgPSBwYXNzd29yZAorICAgICAgICBzZWxmLl9t
ZXNzYWdlX3F1ZXVlID0gbWVzc2FnZV9xdWV1ZQorICAgICAgICBzZWxmLl93YWtldXBfZXZlbnQg
PSB3YWtldXBfZXZlbnQKIAogICAgICMgSVJDQm90RGVsZWdhdGUgbWV0aG9kcwogCiAgICAgZGVm
IGlyY19tZXNzYWdlX3JlY2VpdmVkKHNlbGYsIG1lc3NhZ2UpOgotICAgICAgICByZXR1cm4gJyJP
bmx5IHlvdSBjYW4gcHJldmVudCBmb3Jlc3QgZmlyZXMuIiAtLSBTbW9rZXkgdGhlIEJlYXInCisg
ICAgICAgIHNlbGYuX21lc3NhZ2VfcXVldWUucG9zdChtZXNzYWdlKQorICAgICAgICBzZWxmLl93
YWtldXBfZXZlbnQuc2V0KCkKIAogICAgIGRlZiBpcmNfbmlja25hbWUoc2VsZik6CiAgICAgICAg
IHJldHVybiAic2hlcmlmZmJvdCIKIAogICAgIGRlZiBpcmNfcGFzc3dvcmQoc2VsZik6CiAgICAg
ICAgIHJldHVybiBzZWxmLl9wYXNzd29yZAorCisKK2NsYXNzIFNoZXJpZmZJUkNCb3QoSVJDQm90
RGVsZWdhdGUpOgorICAgICMgRklYTUU6IExhbWUuICBXZSBzaG91bGQgaGF2ZSBhbiBhdXRvLXJl
Z2lzdGVyaW5nIENvbW1hbmRDZW50ZXIuCisgICAgY29tbWFuZHMgPSB7CisgICAgICAgICJsYXN0
LWdyZWVuLXJldmlzaW9uIjogaXJjX2NvbW1hbmQuTGFzdEdyZWVuUmV2aXNpb24sCisgICAgICAg
ICJoaSI6IGlyY19jb21tYW5kLkhpLAorICAgIH0KKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCB0
b29sKToKKyAgICAgICAgc2VsZi5fdG9vbCA9IHRvb2wKKyAgICAgICAgc2VsZi5fbWVzc2FnZV9x
dWV1ZSA9IFRocmVhZGVkTWVzc2FnZVF1ZXVlKCkKKworICAgIGRlZiBpcmNfZGVsZWdhdGUoc2Vs
Zik6CisgICAgICAgIHJldHVybiBfSVJDVGhyZWFkVGVhcm9mZihzZWxmLl90b29sLmlyY19wYXNz
d29yZCwgc2VsZi5fbWVzc2FnZV9xdWV1ZSwgc2VsZi5fdG9vbC53YWtldXBfZXZlbnQpCisKKyAg
ICBkZWYgcHJvY2Vzc19tZXNzYWdlKHNlbGYsIG1lc3NhZ2UpOgorICAgICAgICB0b2tlbml6ZWRf
bWVzc2FnZSA9IG1lc3NhZ2Uuc3RyaXAoKS5zcGxpdCgiICIpCisgICAgICAgIGlmIG5vdCB0b2tl
bml6ZWRfbWVzc2FnZToKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICBjb21tYW5kID0gc2Vs
Zi5jb21tYW5kcy5nZXQodG9rZW5pemVkX21lc3NhZ2VbMF0pCisgICAgICAgIGlmIG5vdCBjb21t
YW5kOgorICAgICAgICAgICAgc2VsZi5fdG9vbC5pcmMoKS5wb3N0KCJBdmFpbGFibGUgY29tbWFu
ZHM6ICVzIiAlICIsICIuam9pbihzZWxmLmNvbW1hbmRzLmtleXMoKSkpCisgICAgICAgICAgICBy
ZXR1cm4KKyAgICAgICAgcmVzcG9uc2UgPSBjb21tYW5kKCkuZXhlY3V0ZSh0b2tlbml6ZWRfbWVz
c2FnZVsxOl0sIHNlbGYuX3Rvb2wpCisgICAgICAgIGlmIHJlc3BvbnNlOgorICAgICAgICAgICAg
c2VsZi5fdG9vbC5pcmMoKS5wb3N0KHJlc3BvbnNlKQorCisgICAgZGVmIHByb2Nlc3NfcGVuZGlu
Z19tZXNzYWdlcyhzZWxmKToKKyAgICAgICAgKG1lc3NhZ2VzLCBpc19ydW5uaW5nKSA9IHNlbGYu
X21lc3NhZ2VfcXVldWUudGFrZV9hbGwoKQorICAgICAgICBmb3IgbWVzc2FnZSBpbiBtZXNzYWdl
czoKKyAgICAgICAgICAgIHNlbGYucHJvY2Vzc19tZXNzYWdlKG1lc3NhZ2UpCmRpZmYgLS1naXQg
YS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L3NoZXJpZmZpcmNib3RfdW5p
dHRlc3QucHkgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L3NoZXJpZmZp
cmNib3RfdW5pdHRlc3QucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmRm
MjZiNgotLS0gL2Rldi9udWxsCisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9v
bC9ib3Qvc2hlcmlmZmlyY2JvdF91bml0dGVzdC5weQpAQCAtMCwwICsxLDUzIEBACisjIENvcHly
aWdodCAoYykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorIworIyBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zIGFyZQorIyBtZXQ6CisjIAorIyAgICAgKiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorIyBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisjICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUKKyMgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorIyBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisjIGRpc3RyaWJ1dGlvbi4KKyMgICAg
ICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwor
IyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3Rz
IGRlcml2ZWQgZnJvbQorIyB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3Jp
dHRlbiBwZXJtaXNzaW9uLgorIyAKKyMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworIyAiQVMgSVMiIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorIyBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IKKyMgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBDT1BZUklHSFQKKyMgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisjIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyMgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsCisjIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorIyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisjIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorIyBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorCitpbXBvcnQgdW5pdHRlc3QKKworZnJvbSB3ZWJraXRweS5jb21tb24uc3lz
dGVtLm91dHB1dGNhcHR1cmUgaW1wb3J0IE91dHB1dENhcHR1cmUKK2Zyb20gd2Via2l0cHkudG9v
bC5ib3Quc2hlcmlmZmlyY2JvdCBpbXBvcnQgU2hlcmlmZklSQ0JvdAorZnJvbSB3ZWJraXRweS50
b29sLm1vY2t0b29sIGltcG9ydCBNb2NrVG9vbAorCitkZWYgcnVuKG1lc3NhZ2UpOgorICAgIHRv
b2wgPSBNb2NrVG9vbCgpCisgICAgdG9vbC5lbnN1cmVfaXJjX2Nvbm5lY3RlZChOb25lKQorICAg
IGJvdCA9IFNoZXJpZmZJUkNCb3QodG9vbCkKKyAgICBib3QuX21lc3NhZ2VfcXVldWUucG9zdCht
ZXNzYWdlKQorICAgIGJvdC5wcm9jZXNzX3BlbmRpbmdfbWVzc2FnZXMoKQorCitjbGFzcyBTaGVy
aWZmSVJDQm90VGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgZGVmIHRlc3RfaGkoc2VsZik6
CisgICAgICAgIGV4cGVjdGVkX3N0ZGVyciA9ICdNT0NLOiBpcmMucG9zdDogIk9ubHkgeW91IGNh
biBwcmV2ZW50IGZvcmVzdCBmaXJlcy4iIC0tIFNtb2tleSB0aGUgQmVhclxuJworICAgICAgICBP
dXRwdXRDYXB0dXJlKCkuYXNzZXJ0X291dHB1dHMoc2VsZiwgcnVuLCBhcmdzPVsiaGkiXSwgZXhw
ZWN0ZWRfc3RkZXJyPWV4cGVjdGVkX3N0ZGVycikKKworICAgIGRlZiB0ZXN0X2JvZ3VzKHNlbGYp
OgorICAgICAgICBleHBlY3RlZF9zdGRlcnIgPSAiTU9DSzogaXJjLnBvc3Q6IEF2YWlsYWJsZSBj
b21tYW5kczogaGksIGxhc3QtZ3JlZW4tcmV2aXNpb25cbiIKKyAgICAgICAgT3V0cHV0Q2FwdHVy
ZSgpLmFzc2VydF9vdXRwdXRzKHNlbGYsIHJ1biwgYXJncz1bImJvZ3VzIl0sIGV4cGVjdGVkX3N0
ZGVycj1leHBlY3RlZF9zdGRlcnIpCisKKyAgICBkZWYgdGVzdF9sZ3Ioc2VsZik6CisgICAgICAg
IGV4cGVjdGVkX3N0ZGVyciA9ICJNT0NLOiBpcmMucG9zdDogOTQ3OVxuIgorICAgICAgICBPdXRw
dXRDYXB0dXJlKCkuYXNzZXJ0X291dHB1dHMoc2VsZiwgcnVuLCBhcmdzPVsibGFzdC1ncmVlbi1y
ZXZpc2lvbiJdLCBleHBlY3RlZF9zdGRlcnI9ZXhwZWN0ZWRfc3RkZXJyKQpkaWZmIC0tZ2l0IGEv
V2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3F1ZXVlcy5weSBiL1dl
YktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9xdWV1ZXMucHkKaW5kZXgg
ZGMzZjY0OC4uOWJjNTNkMyAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRw
eS90b29sL2NvbW1hbmRzL3F1ZXVlcy5weQorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtp
dHB5L3Rvb2wvY29tbWFuZHMvcXVldWVzLnB5CkBAIC0xMTIsNyArMTEyLDcgQEAgY2xhc3MgQWJz
dHJhY3RRdWV1ZShDb21tYW5kLCBRdWV1ZUVuZ2luZURlbGVnYXRlKToKICAgICBkZWYgZXhlY3V0
ZShzZWxmLCBvcHRpb25zLCBhcmdzLCB0b29sLCBlbmdpbmU9UXVldWVFbmdpbmUpOgogICAgICAg
ICBzZWxmLm9wdGlvbnMgPSBvcHRpb25zCiAgICAgICAgIHNlbGYudG9vbCA9IHRvb2wKLSAgICAg
ICAgcmV0dXJuIGVuZ2luZShzZWxmLm5hbWUsIHNlbGYpLnJ1bigpCisgICAgICAgIHJldHVybiBl
bmdpbmUoc2VsZi5uYW1lLCBzZWxmLCBzZWxmLnRvb2wud2FrZXVwX2V2ZW50KS5ydW4oKQogCiAg
ICAgQGNsYXNzbWV0aG9kCiAgICAgZGVmIF91cGRhdGVfc3RhdHVzX2Zvcl9zY3JpcHRfZXJyb3Io
Y2xzLCB0b29sLCBzdGF0ZSwgc2NyaXB0X2Vycm9yLCBpc19lcnJvcj1GYWxzZSk6CmRpZmYgLS1n
aXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvcXVldWVzdGVz
dC5weSBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9xdWV1ZXN0
ZXN0LnB5CmluZGV4IDhmMTY1ODguLjkyNjRiMmEgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9xdWV1ZXN0ZXN0LnB5CisrKyBiL1dlYktpdFRv
b2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9xdWV1ZXN0ZXN0LnB5CkBAIC0zNSw3
ICszNSw3IEBAIGZyb20gd2Via2l0cHkudG9vbC5tb2NrdG9vbCBpbXBvcnQgTW9ja1Rvb2wKIAog
CiBjbGFzcyBNb2NrUXVldWVFbmdpbmUob2JqZWN0KToKLSAgICBkZWYgX19pbml0X18oc2VsZiwg
bmFtZSwgcXVldWUpOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBuYW1lLCBxdWV1ZSwgd2FrZXVw
X2V2ZW50KToKICAgICAgICAgcGFzcwogCiAgICAgZGVmIHJ1bihzZWxmKToKZGlmZiAtLWdpdCBh
L1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9zaGVyaWZmYm90LnB5
IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3NoZXJpZmZib3Qu
cHkKaW5kZXggYmYxMThiOC4uZmE0M2E3MSAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0
cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3NoZXJpZmZib3QucHkKKysrIGIvV2ViS2l0VG9vbHMv
U2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3NoZXJpZmZib3QucHkKQEAgLTQzLDggKzQz
LDggQEAgY2xhc3MgU2hlcmlmZkJvdChBYnN0cmFjdFF1ZXVlKToKIAogICAgIGRlZiBiZWdpbl93
b3JrX3F1ZXVlKHNlbGYpOgogICAgICAgICBBYnN0cmFjdFF1ZXVlLmJlZ2luX3dvcmtfcXVldWUo
c2VsZikKLSAgICAgICAgc2VsZi5faXJjX2RlbGVnYXRlID0gU2hlcmlmZklSQ0JvdChzZWxmLnRv
b2wuaXJjX3Bhc3N3b3JkKQotICAgICAgICBzZWxmLnRvb2wuZW5zdXJlX2lyY19jb25uZWN0ZWQo
c2VsZi5faXJjX2RlbGVnYXRlKQorICAgICAgICBzZWxmLl9pcmNfYm90ID0gU2hlcmlmZklSQ0Jv
dChzZWxmLnRvb2wpCisgICAgICAgIHNlbGYudG9vbC5lbnN1cmVfaXJjX2Nvbm5lY3RlZChzZWxm
Ll9pcmNfYm90LmlyY19kZWxlZ2F0ZSgpKQogCiAgICAgZGVmIHdvcmtfaXRlbV9sb2dfcGF0aChz
ZWxmLCBmYWlsdXJlX2luZm8pOgogICAgICAgICByZXR1cm4gb3MucGF0aC5qb2luKCIlcy1sb2dz
IiAlIHNlbGYubmFtZSwgIiVzLmxvZyIgJSBmYWlsdXJlX2luZm9bInN2bl9yZXZpc2lvbiJdKQpk
aWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL21haW4ucHkgYi9X
ZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvbWFpbi5weQppbmRleCAwMzI3NDZlLi42
MjllODZmIDEwMDc1NQotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvbWFp
bi5weQorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvbWFpbi5weQpAQCAt
MzAsNiArMzAsNyBAQAogIyBBIHRvb2wgZm9yIGF1dG9tYXRpbmcgZGVhbGluZyB3aXRoIGJ1Z3pp
bGxhLCBwb3N0aW5nIHBhdGNoZXMsIGNvbW1pdHRpbmcgcGF0Y2hlcywgZXRjLgogCiBpbXBvcnQg
b3MKK2ltcG9ydCB0aHJlYWRpbmcKIAogZnJvbSB3ZWJraXRweS5jb21tb24uY2hlY2tvdXQuYXBp
IGltcG9ydCBDaGVja291dAogZnJvbSB3ZWJraXRweS5jb21tb24uY2hlY2tvdXQuc2NtIGltcG9y
dCBkZXRlY3Rfc2NtX3N5c3RlbQpAQCAtNjAsNiArNjEsNyBAQCBjbGFzcyBXZWJLaXRQYXRjaChN
dWx0aUNvbW1hbmRUb29sKToKICAgICAgICAgTXVsdGlDb21tYW5kVG9vbC5fX2luaXRfXyhzZWxm
KQogCiAgICAgICAgIHNlbGYuX3BhdGggPSBwYXRoCisgICAgICAgIHNlbGYud2FrZXVwX2V2ZW50
ID0gdGhyZWFkaW5nLkV2ZW50KCkKICAgICAgICAgc2VsZi5idWdzID0gQnVnemlsbGEoKQogICAg
ICAgICBzZWxmLmJ1aWxkYm90ID0gQnVpbGRCb3QoKQogICAgICAgICBzZWxmLmV4ZWN1dGl2ZSA9
IEV4ZWN1dGl2ZSgpCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rv
b2wvbW9ja3Rvb2wucHkgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvbW9ja3Rv
b2wucHkKaW5kZXggMjNiYjM4Ni4uMWRkMjdlZCAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvU2Ny
aXB0cy93ZWJraXRweS90b29sL21vY2t0b29sLnB5CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMv
d2Via2l0cHkvdG9vbC9tb2NrdG9vbC5weQpAQCAtMjcsNiArMjcsNyBAQAogIyBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgogCiBpbXBvcnQgb3MKK2ltcG9ydCB0aHJlYWRpbmcKIAogZnJvbSB3ZWJraXRweS5jb21tb24u
Y29uZmlnLmNvbW1pdHRlcnMgaW1wb3J0IENvbW1pdHRlckxpc3QsIFJldmlld2VyCiBmcm9tIHdl
YmtpdHB5LmNvbW1vbi5jaGVja291dC5jb21taXRpbmZvIGltcG9ydCBDb21taXRJbmZvCkBAIC0z
MTAsNiArMzExLDkgQEAgY2xhc3MgTW9ja0J1aWxkQm90KG9iamVjdCk6CiAgICAgICAgICAgICBy
ZXR1cm4gIkJ1aWxkZXIyIgogICAgICAgICByZXR1cm4gW10KIAorICAgIGRlZiBsYXN0X2dyZWVu
X3JldmlzaW9uKHNlbGYpOgorICAgICAgICByZXR1cm4gOTQ3OQorCiAgICAgZGVmIGxpZ2h0X3Ry
ZWVfb25fZmlyZShzZWxmKToKICAgICAgICAgc2VsZi5fdHJlZV9pc19vbl9maXJlID0gVHJ1ZQog
CkBAIC0zMTgsNiArMzIyLDcgQEAgY2xhc3MgTW9ja0J1aWxkQm90KG9iamVjdCk6CiAgICAgICAg
ICAgICAiMjk4MzciOiBbbW9ja19idWlsZGVyXQogICAgICAgICB9CiAKKwogY2xhc3MgTW9ja1ND
TShNb2NrKToKIAogICAgIGZha2VfY2hlY2tvdXRfcm9vdCA9IG9zLnBhdGgucmVhbHBhdGgoIi90
bXAiKSAjIHJlYWxwYXRoIGlzIG5lZWRlZCB0byBhbGxvdyBmb3IgTWFjIE9TIFgncyAvcHJpdmF0
ZS90bXAKQEAgLTQzNyw2ICs0NDIsNyBAQCBjbGFzcyBNb2NrU3RhdHVzU2VydmVyKG9iamVjdCk6
CiBjbGFzcyBNb2NrVG9vbCgpOgogCiAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgorICAgICAgICBz
ZWxmLndha2V1cF9ldmVudCA9IHRocmVhZGluZy5FdmVudCgpCiAgICAgICAgIHNlbGYuYnVncyA9
IE1vY2tCdWd6aWxsYSgpCiAgICAgICAgIHNlbGYuYnVpbGRib3QgPSBNb2NrQnVpbGRCb3QoKQog
ICAgICAgICBzZWxmLmV4ZWN1dGl2ZSA9IE1vY2soKQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMv
U2NyaXB0cy93ZWJraXRweS90b29sL3VuaXR0ZXN0cy5weSBiL1dlYktpdFRvb2xzL1NjcmlwdHMv
d2Via2l0cHkvdG9vbC91bml0dGVzdHMucHkKaW5kZXggZGIyZjU2OS4uNzdmOTk3NyAxMDA2NDQK
LS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3VuaXR0ZXN0cy5weQorKysg
Yi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvdW5pdHRlc3RzLnB5CkBAIC0yNiw2
ICsyNiw3IEBACiAKIGZyb20gd2Via2l0cHkudG9vbC5ib3QucGF0Y2hjb2xsZWN0aW9uX3VuaXR0
ZXN0IGltcG9ydCAqCiBmcm9tIHdlYmtpdHB5LnRvb2wuYm90LnF1ZXVlZW5naW5lX3VuaXR0ZXN0
IGltcG9ydCAqCitmcm9tIHdlYmtpdHB5LnRvb2wuYm90LnNoZXJpZmZpcmNib3RfdW5pdHRlc3Qg
aW1wb3J0ICoKIGZyb20gd2Via2l0cHkudG9vbC5jb21tYW5kcy5kb3dubG9hZF91bml0dGVzdCBp
bXBvcnQgKgogZnJvbSB3ZWJraXRweS50b29sLmNvbW1hbmRzLmVhcmx5d2FybmluZ3N5c3RlbV91
bml0dGVzdCBpbXBvcnQgKgogZnJvbSB3ZWJraXRweS50b29sLmNvbW1hbmRzLm9wZW5idWdzX3Vu
aXR0ZXN0IGltcG9ydCBPcGVuQnVnc1Rlc3QK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>51795</attachid>
            <date>2010-03-26 16:35:01 -0700</date>
            <delta_ts>2010-03-26 22:45:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-36684-20100326163500.patch</filename>
            <type>text/plain</type>
            <size>16787</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBlMmNiNWE5Li4zZWI1M2FjIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTAtMDMt
MjYgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgc29tZSBiYXNpYyBJUkMgY29tbWFuZHMg
dG8gc2hlcmlmZmJvdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MzY2ODQKKworICAgICAgICBBZGRzIHN1cHBvcnQgZm9yIHNoZXJpZmZib3QgdG8gcmVz
cG9uZCB0byBhICJoaSIgY29tbWFuZCBhbmQgYQorICAgICAgICAibGFzdC1ncmVlbi1yZXZpc2lv
biIgY29tbWFuZC4gIEl0J3MgbGFtZSB0aGF0IHdlJ3JlIHJlYnVpbGRpbmcKKyAgICAgICAgTXVs
dGlDb21tYW5kVG9vbCwgYnV0IGFzIGRpc2N1c3NlZCBpbiBwZXJzb24gd2UnbGwgaW50ZXJncmF0
ZSB0aGUgdHdvCisgICAgICAgIG9uY2Ugd2Ugc2VlIHdoYXQgdGhlIHJlcXVpcmVtZW50cyBhcmUu
CisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L2lyY19jb21tYW5kLnB5OiBB
ZGRlZC4KKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L3F1ZXVlZW5naW5lLnB5
OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvcXVldWVlbmdpbmVfdW5pdHRl
c3QucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9zaGVyaWZmaXJjYm90
LnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3Qvc2hlcmlmZmlyY2JvdF91
bml0dGVzdC5weTogQWRkZWQuCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1h
bmRzL3F1ZXVlcy5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMv
cXVldWVzdGVzdC5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMv
c2hlcmlmZmJvdC5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvbWFpbi5weToK
KyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvbW9ja3Rvb2wucHk6CisgICAgICAgICog
U2NyaXB0cy93ZWJraXRweS90b29sL3VuaXR0ZXN0cy5weToKKwogMjAxMC0wMy0yNiAgU2VyZ2lv
IFZpbGxhciBTZW5pbiAgPHN2aWxsYXJAaWdhbGlhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBi
eSBFcmljIFNlaWRlbC4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkv
dG9vbC9ib3QvaXJjX2NvbW1hbmQucHkgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rv
b2wvYm90L2lyY19jb21tYW5kLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LmZiMWU3OWMKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5
L3Rvb2wvYm90L2lyY19jb21tYW5kLnB5CkBAIC0wLDAgKzEsNDIgQEAKKyMgQ29weXJpZ2h0IChj
KSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisjCisjIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
IyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMgYXJlCisjIG1ldDoKKyMKKyMgICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorIyAgICAg
KiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
CisjIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIKKyMgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorIyBkaXN0cmlidXRpb24uCisjICAgICAqIE5laXRo
ZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyMgY29udHJp
YnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
IGZyb20KKyMgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KKyMKKyMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworIyAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorIyBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyMg
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRI
RSBDT1BZUklHSFQKKyMgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisjIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyMgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisj
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWQorIyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisjIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorIyBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorCisjIEZJWE1FOiBNZXJnZSB3aXRoIENvbW1hbmQ/CitjbGFzcyBJUkNDb21tYW5kKG9iamVj
dCk6CisgICAgZGVmIGV4ZWN1dGUoc2VsZiwgYXJncywgdG9vbCk6CisgICAgICAgIHJhaXNlIE5v
dEltcGxlbWVudGVkRXJyb3IsICJzdWJjbGFzc2VzIG11c3QgaW1wbGVtZW50IgorCisKK2NsYXNz
IExhc3RHcmVlblJldmlzaW9uKElSQ0NvbW1hbmQpOgorICAgIGRlZiBleGVjdXRlKHNlbGYsIGFy
Z3MsIHRvb2wpOgorICAgICAgICByZXR1cm4gdG9vbC5idWlsZGJvdC5sYXN0X2dyZWVuX3Jldmlz
aW9uKCkKKworCitjbGFzcyBIaShJUkNDb21tYW5kKToKKyAgICBkZWYgZXhlY3V0ZShzZWxmLCBh
cmdzLCB0b29sKToKKyAgICAgICAgcmV0dXJuICciT25seSB5b3UgY2FuIHByZXZlbnQgZm9yZXN0
IGZpcmVzLiIgLS0gU21va2V5IHRoZSBCZWFyJwpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2Ny
aXB0cy93ZWJraXRweS90b29sL2JvdC9xdWV1ZWVuZ2luZS5weSBiL1dlYktpdFRvb2xzL1Njcmlw
dHMvd2Via2l0cHkvdG9vbC9ib3QvcXVldWVlbmdpbmUucHkKaW5kZXggNDg2NjhhZi4uYmQ0ZDBj
MyAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9xdWV1
ZWVuZ2luZS5weQorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L3F1
ZXVlZW5naW5lLnB5CkBAIC02NSwxMCArNjUsMTAgQEAgY2xhc3MgUXVldWVFbmdpbmVEZWxlZ2F0
ZToKIAogCiBjbGFzcyBRdWV1ZUVuZ2luZToKLSAgICBkZWYgX19pbml0X18oc2VsZiwgbmFtZSwg
ZGVsZWdhdGUsIG1lc3NhZ2VfcXVldWU9Tm9uZSk6CisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG5h
bWUsIGRlbGVnYXRlLCB3YWtldXBfZXZlbnQpOgogICAgICAgICBzZWxmLl9uYW1lID0gbmFtZQog
ICAgICAgICBzZWxmLl9kZWxlZ2F0ZSA9IGRlbGVnYXRlCi0gICAgICAgIHNlbGYuX21lc3NhZ2Vf
cXVldWUgPSBtZXNzYWdlX3F1ZXVlCisgICAgICAgIHNlbGYuX3dha2V1cF9ldmVudCA9IHdha2V1
cF9ldmVudAogICAgICAgICBzZWxmLl9vdXRwdXRfdGVlID0gT3V0cHV0VGVlKCkKIAogICAgIGxv
Z19kYXRlX2Zvcm1hdCA9ICIlWS0lbS0lZCAlSDolTTolUyIKQEAgLTEzOSw3ICsxMzksNSBAQCBj
bGFzcyBRdWV1ZUVuZ2luZToKIAogICAgIGRlZiBfc2xlZXAoc2VsZiwgbWVzc2FnZSk6CiAgICAg
ICAgIGxvZyhzZWxmLl9zbGVlcF9tZXNzYWdlKG1lc3NhZ2UpKQotICAgICAgICBpZiBzZWxmLl9t
ZXNzYWdlX3F1ZXVlOgotICAgICAgICAgICAgc2VsZi5fbWVzc2FnZV9xdWV1ZS53YWl0KHNlbGYu
c2Vjb25kc190b19zbGVlcCkKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHRpbWUuc2xlZXAo
c2VsZi5zZWNvbmRzX3RvX3NsZWVwKQorICAgICAgICBpZiBzZWxmLl93YWtldXBfZXZlbnQud2Fp
dChzZWxmLnNlY29uZHNfdG9fc2xlZXApOgorICAgICAgICAgICAgc2VsZi5fd2FrZXVwX2V2ZW50
LmNsZWFyKCkKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9i
b3QvcXVldWVlbmdpbmVfdW5pdHRlc3QucHkgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5
L3Rvb2wvYm90L3F1ZXVlZW5naW5lX3VuaXR0ZXN0LnB5CmluZGV4IDkwNDhhZjQuLjM1YTc2MzMg
MTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvcXVldWVl
bmdpbmVfdW5pdHRlc3QucHkKKysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29s
L2JvdC9xdWV1ZWVuZ2luZV91bml0dGVzdC5weQpAQCAtMjksNiArMjksNyBAQAogaW1wb3J0IG9z
CiBpbXBvcnQgc2h1dGlsCiBpbXBvcnQgdGVtcGZpbGUKK2ltcG9ydCB0aHJlYWRpbmcKIGltcG9y
dCB1bml0dGVzdAogCiBmcm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0uZXhlY3V0aXZlIGltcG9y
dCBTY3JpcHRFcnJvcgpAQCAtMTEwLDcgKzExMSw3IEBAIGNsYXNzIE5vdFNhZmVUb1Byb2NlZWRE
ZWxlZ2F0ZShMb2dnaW5nRGVsZWdhdGUpOgogCiBjbGFzcyBGYXN0UXVldWVFbmdpbmUoUXVldWVF
bmdpbmUpOgogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBkZWxlZ2F0ZSk6Ci0gICAgICAgIFF1ZXVl
RW5naW5lLl9faW5pdF9fKHNlbGYsICJmYXN0LXF1ZXVlIiwgZGVsZWdhdGUpCisgICAgICAgIFF1
ZXVlRW5naW5lLl9faW5pdF9fKHNlbGYsICJmYXN0LXF1ZXVlIiwgZGVsZWdhdGUsIHRocmVhZGlu
Zy5FdmVudCgpKQogCiAgICAgIyBObyBzbGVlcCBmb3IgdGhlIHdpY2tlZC4KICAgICBzZWNvbmRz
X3RvX3NsZWVwID0gMApAQCAtMTIyLDcgKzEyMyw3IEBAIGNsYXNzIEZhc3RRdWV1ZUVuZ2luZShR
dWV1ZUVuZ2luZSk6CiBjbGFzcyBRdWV1ZUVuZ2luZVRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgog
ICAgIGRlZiB0ZXN0X3RyaXZpYWwoc2VsZik6CiAgICAgICAgIGRlbGVnYXRlID0gTG9nZ2luZ0Rl
bGVnYXRlKHNlbGYpCi0gICAgICAgIHdvcmtfcXVldWUgPSBRdWV1ZUVuZ2luZSgidHJpdmlhbC1x
dWV1ZSIsIGRlbGVnYXRlKQorICAgICAgICB3b3JrX3F1ZXVlID0gUXVldWVFbmdpbmUoInRyaXZp
YWwtcXVldWUiLCBkZWxlZ2F0ZSwgdGhyZWFkaW5nLkV2ZW50KCkpCiAgICAgICAgIHdvcmtfcXVl
dWUucnVuKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMoZGVsZWdhdGUuX2NhbGxiYWNrcywg
TG9nZ2luZ0RlbGVnYXRlLmV4cGVjdGVkX2NhbGxiYWNrcykKICAgICAgICAgc2VsZi5hc3NlcnRU
cnVlKG9zLnBhdGguZXhpc3RzKG9zLnBhdGguam9pbihzZWxmLnRlbXBfZGlyLCAicXVldWVfbG9n
X3BhdGgiKSkpCkBAIC0xMzAsNyArMTMxLDcgQEAgY2xhc3MgUXVldWVFbmdpbmVUZXN0KHVuaXR0
ZXN0LlRlc3RDYXNlKToKIAogICAgIGRlZiB0ZXN0X3VuZXhwZWN0ZWRfZXJyb3Ioc2VsZik6CiAg
ICAgICAgIGRlbGVnYXRlID0gVGhyb3dFcnJvckRlbGVnYXRlKHNlbGYsIDMpCi0gICAgICAgIHdv
cmtfcXVldWUgPSBRdWV1ZUVuZ2luZSgiZXJyb3ItcXVldWUiLCBkZWxlZ2F0ZSkKKyAgICAgICAg
d29ya19xdWV1ZSA9IFF1ZXVlRW5naW5lKCJlcnJvci1xdWV1ZSIsIGRlbGVnYXRlLCB0aHJlYWRp
bmcuRXZlbnQoKSkKICAgICAgICAgd29ya19xdWV1ZS5ydW4oKQogICAgICAgICBleHBlY3RlZF9j
YWxsYmFja3MgPSBMb2dnaW5nRGVsZWdhdGUuZXhwZWN0ZWRfY2FsbGJhY2tzWzpdCiAgICAgICAg
IHdvcmtfaXRlbV9pbmRleCA9IGV4cGVjdGVkX2NhbGxiYWNrcy5pbmRleCgncHJvY2Vzc193b3Jr
X2l0ZW0nKQpAQCAtMTQxLDcgKzE0Miw3IEBAIGNsYXNzIFF1ZXVlRW5naW5lVGVzdCh1bml0dGVz
dC5UZXN0Q2FzZSk6CiAKICAgICBkZWYgdGVzdF9oYW5kbGVkX2Vycm9yKHNlbGYpOgogICAgICAg
ICBkZWxlZ2F0ZSA9IFRocm93RXJyb3JEZWxlZ2F0ZShzZWxmLCBRdWV1ZUVuZ2luZS5oYW5kbGVk
X2Vycm9yX2NvZGUpCi0gICAgICAgIHdvcmtfcXVldWUgPSBRdWV1ZUVuZ2luZSgiaGFuZGxlZC1l
cnJvci1xdWV1ZSIsIGRlbGVnYXRlKQorICAgICAgICB3b3JrX3F1ZXVlID0gUXVldWVFbmdpbmUo
ImhhbmRsZWQtZXJyb3ItcXVldWUiLCBkZWxlZ2F0ZSwgdGhyZWFkaW5nLkV2ZW50KCkpCiAgICAg
ICAgIHdvcmtfcXVldWUucnVuKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMoZGVsZWdhdGUu
X2NhbGxiYWNrcywgTG9nZ2luZ0RlbGVnYXRlLmV4cGVjdGVkX2NhbGxiYWNrcykKIApkaWZmIC0t
Z2l0IGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9zaGVyaWZmaXJjYm90
LnB5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9zaGVyaWZmaXJjYm90
LnB5CmluZGV4IGMwMTE0MTAuLmY1ZGM2NDQgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1Njcmlw
dHMvd2Via2l0cHkvdG9vbC9ib3Qvc2hlcmlmZmlyY2JvdC5weQorKysgYi9XZWJLaXRUb29scy9T
Y3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L3NoZXJpZmZpcmNib3QucHkKQEAgLTI2LDE5ICsyNiw1
OCBAQAogIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UKICMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAoraW1wb3J0IHdlYmtpdHB5LnRv
b2wuYm90LmlyY19jb21tYW5kIGFzIGlyY19jb21tYW5kCisKIGZyb20gd2Via2l0cHkuY29tbW9u
Lm5ldC5pcmMuaXJjYm90IGltcG9ydCBJUkNCb3REZWxlZ2F0ZQorZnJvbSB3ZWJraXRweS5jb21t
b24udGhyZWFkLnRocmVhZGVkbWVzc2FnZXF1ZXVlIGltcG9ydCBUaHJlYWRlZE1lc3NhZ2VRdWV1
ZQogCi1jbGFzcyBTaGVyaWZmSVJDQm90KElSQ0JvdERlbGVnYXRlKToKLSAgICBkZWYgX19pbml0
X18oc2VsZiwgcGFzc3dvcmQpOgorCitjbGFzcyBfSVJDVGhyZWFkVGVhcm9mZihvYmplY3QpOgor
ICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwYXNzd29yZCwgbWVzc2FnZV9xdWV1ZSwgd2FrZXVwX2V2
ZW50KToKICAgICAgICAgc2VsZi5fcGFzc3dvcmQgPSBwYXNzd29yZAorICAgICAgICBzZWxmLl9t
ZXNzYWdlX3F1ZXVlID0gbWVzc2FnZV9xdWV1ZQorICAgICAgICBzZWxmLl93YWtldXBfZXZlbnQg
PSB3YWtldXBfZXZlbnQKIAogICAgICMgSVJDQm90RGVsZWdhdGUgbWV0aG9kcwogCiAgICAgZGVm
IGlyY19tZXNzYWdlX3JlY2VpdmVkKHNlbGYsIG1lc3NhZ2UpOgotICAgICAgICByZXR1cm4gJyJP
bmx5IHlvdSBjYW4gcHJldmVudCBmb3Jlc3QgZmlyZXMuIiAtLSBTbW9rZXkgdGhlIEJlYXInCisg
ICAgICAgIHNlbGYuX21lc3NhZ2VfcXVldWUucG9zdChtZXNzYWdlKQorICAgICAgICBzZWxmLl93
YWtldXBfZXZlbnQuc2V0KCkKIAogICAgIGRlZiBpcmNfbmlja25hbWUoc2VsZik6CiAgICAgICAg
IHJldHVybiAic2hlcmlmZmJvdCIKIAogICAgIGRlZiBpcmNfcGFzc3dvcmQoc2VsZik6CiAgICAg
ICAgIHJldHVybiBzZWxmLl9wYXNzd29yZAorCisKK2NsYXNzIFNoZXJpZmZJUkNCb3QoSVJDQm90
RGVsZWdhdGUpOgorICAgICMgRklYTUU6IExhbWUuICBXZSBzaG91bGQgaGF2ZSBhbiBhdXRvLXJl
Z2lzdGVyaW5nIENvbW1hbmRDZW50ZXIuCisgICAgY29tbWFuZHMgPSB7CisgICAgICAgICJsYXN0
LWdyZWVuLXJldmlzaW9uIjogaXJjX2NvbW1hbmQuTGFzdEdyZWVuUmV2aXNpb24sCisgICAgICAg
ICJoaSI6IGlyY19jb21tYW5kLkhpLAorICAgIH0KKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCB0
b29sKToKKyAgICAgICAgc2VsZi5fdG9vbCA9IHRvb2wKKyAgICAgICAgc2VsZi5fbWVzc2FnZV9x
dWV1ZSA9IFRocmVhZGVkTWVzc2FnZVF1ZXVlKCkKKworICAgIGRlZiBpcmNfZGVsZWdhdGUoc2Vs
Zik6CisgICAgICAgIHJldHVybiBfSVJDVGhyZWFkVGVhcm9mZihzZWxmLl90b29sLmlyY19wYXNz
d29yZCwgc2VsZi5fbWVzc2FnZV9xdWV1ZSwgc2VsZi5fdG9vbC53YWtldXBfZXZlbnQpCisKKyAg
ICBkZWYgcHJvY2Vzc19tZXNzYWdlKHNlbGYsIG1lc3NhZ2UpOgorICAgICAgICB0b2tlbml6ZWRf
bWVzc2FnZSA9IG1lc3NhZ2Uuc3RyaXAoKS5zcGxpdCgiICIpCisgICAgICAgIGlmIG5vdCB0b2tl
bml6ZWRfbWVzc2FnZToKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICBjb21tYW5kID0gc2Vs
Zi5jb21tYW5kcy5nZXQodG9rZW5pemVkX21lc3NhZ2VbMF0pCisgICAgICAgIGlmIG5vdCBjb21t
YW5kOgorICAgICAgICAgICAgc2VsZi5fdG9vbC5pcmMoKS5wb3N0KCJBdmFpbGFibGUgY29tbWFu
ZHM6ICVzIiAlICIsICIuam9pbihzZWxmLmNvbW1hbmRzLmtleXMoKSkpCisgICAgICAgICAgICBy
ZXR1cm4KKyAgICAgICAgcmVzcG9uc2UgPSBjb21tYW5kKCkuZXhlY3V0ZSh0b2tlbml6ZWRfbWVz
c2FnZVsxOl0sIHNlbGYuX3Rvb2wpCisgICAgICAgIGlmIHJlc3BvbnNlOgorICAgICAgICAgICAg
c2VsZi5fdG9vbC5pcmMoKS5wb3N0KHJlc3BvbnNlKQorCisgICAgZGVmIHByb2Nlc3NfcGVuZGlu
Z19tZXNzYWdlcyhzZWxmKToKKyAgICAgICAgKG1lc3NhZ2VzLCBpc19ydW5uaW5nKSA9IHNlbGYu
X21lc3NhZ2VfcXVldWUudGFrZV9hbGwoKQorICAgICAgICBmb3IgbWVzc2FnZSBpbiBtZXNzYWdl
czoKKyAgICAgICAgICAgIHNlbGYucHJvY2Vzc19tZXNzYWdlKG1lc3NhZ2UpCmRpZmYgLS1naXQg
YS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L3NoZXJpZmZpcmNib3RfdW5p
dHRlc3QucHkgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L3NoZXJpZmZp
cmNib3RfdW5pdHRlc3QucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2Fi
ZDFhMAotLS0gL2Rldi9udWxsCisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9v
bC9ib3Qvc2hlcmlmZmlyY2JvdF91bml0dGVzdC5weQpAQCAtMCwwICsxLDU0IEBACisjIENvcHly
aWdodCAoYykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorIworIyBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zIGFyZQorIyBtZXQ6CisjIAorIyAgICAgKiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorIyBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisjICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUKKyMgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorIyBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisjIGRpc3RyaWJ1dGlvbi4KKyMgICAg
ICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwor
IyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3Rz
IGRlcml2ZWQgZnJvbQorIyB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3Jp
dHRlbiBwZXJtaXNzaW9uLgorIyAKKyMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworIyAiQVMgSVMiIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorIyBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IKKyMgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIFRIRSBDT1BZUklHSFQKKyMgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisjIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyMgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsCisjIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorIyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisjIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorIyBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorCitpbXBvcnQgdW5pdHRlc3QKKworZnJvbSB3ZWJraXRweS5jb21tb24uc3lz
dGVtLm91dHB1dGNhcHR1cmUgaW1wb3J0IE91dHB1dENhcHR1cmUKK2Zyb20gd2Via2l0cHkudG9v
bC5ib3Quc2hlcmlmZmlyY2JvdCBpbXBvcnQgU2hlcmlmZklSQ0JvdAorZnJvbSB3ZWJraXRweS50
b29sLm1vY2t0b29sIGltcG9ydCBNb2NrVG9vbAorCitkZWYgcnVuKG1lc3NhZ2UpOgorICAgIHRv
b2wgPSBNb2NrVG9vbCgpCisgICAgdG9vbC5lbnN1cmVfaXJjX2Nvbm5lY3RlZChOb25lKQorICAg
IGJvdCA9IFNoZXJpZmZJUkNCb3QodG9vbCkKKyAgICBib3QuX21lc3NhZ2VfcXVldWUucG9zdCht
ZXNzYWdlKQorICAgIGJvdC5wcm9jZXNzX3BlbmRpbmdfbWVzc2FnZXMoKQorCisKK2NsYXNzIFNo
ZXJpZmZJUkNCb3RUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICBkZWYgdGVzdF9oaShzZWxm
KToKKyAgICAgICAgZXhwZWN0ZWRfc3RkZXJyID0gJ01PQ0s6IGlyYy5wb3N0OiAiT25seSB5b3Ug
Y2FuIHByZXZlbnQgZm9yZXN0IGZpcmVzLiIgLS0gU21va2V5IHRoZSBCZWFyXG4nCisgICAgICAg
IE91dHB1dENhcHR1cmUoKS5hc3NlcnRfb3V0cHV0cyhzZWxmLCBydW4sIGFyZ3M9WyJoaSJdLCBl
eHBlY3RlZF9zdGRlcnI9ZXhwZWN0ZWRfc3RkZXJyKQorCisgICAgZGVmIHRlc3RfYm9ndXMoc2Vs
Zik6CisgICAgICAgIGV4cGVjdGVkX3N0ZGVyciA9ICJNT0NLOiBpcmMucG9zdDogQXZhaWxhYmxl
IGNvbW1hbmRzOiBoaSwgbGFzdC1ncmVlbi1yZXZpc2lvblxuIgorICAgICAgICBPdXRwdXRDYXB0
dXJlKCkuYXNzZXJ0X291dHB1dHMoc2VsZiwgcnVuLCBhcmdzPVsiYm9ndXMiXSwgZXhwZWN0ZWRf
c3RkZXJyPWV4cGVjdGVkX3N0ZGVycikKKworICAgIGRlZiB0ZXN0X2xncihzZWxmKToKKyAgICAg
ICAgZXhwZWN0ZWRfc3RkZXJyID0gIk1PQ0s6IGlyYy5wb3N0OiA5NDc5XG4iCisgICAgICAgIE91
dHB1dENhcHR1cmUoKS5hc3NlcnRfb3V0cHV0cyhzZWxmLCBydW4sIGFyZ3M9WyJsYXN0LWdyZWVu
LXJldmlzaW9uIl0sIGV4cGVjdGVkX3N0ZGVycj1leHBlY3RlZF9zdGRlcnIpCmRpZmYgLS1naXQg
YS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvcXVldWVzLnB5IGIv
V2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3F1ZXVlcy5weQppbmRl
eCBkYzNmNjQ4Li45YmM1M2QzIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtp
dHB5L3Rvb2wvY29tbWFuZHMvcXVldWVzLnB5CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvdG9vbC9jb21tYW5kcy9xdWV1ZXMucHkKQEAgLTExMiw3ICsxMTIsNyBAQCBjbGFzcyBB
YnN0cmFjdFF1ZXVlKENvbW1hbmQsIFF1ZXVlRW5naW5lRGVsZWdhdGUpOgogICAgIGRlZiBleGVj
dXRlKHNlbGYsIG9wdGlvbnMsIGFyZ3MsIHRvb2wsIGVuZ2luZT1RdWV1ZUVuZ2luZSk6CiAgICAg
ICAgIHNlbGYub3B0aW9ucyA9IG9wdGlvbnMKICAgICAgICAgc2VsZi50b29sID0gdG9vbAotICAg
ICAgICByZXR1cm4gZW5naW5lKHNlbGYubmFtZSwgc2VsZikucnVuKCkKKyAgICAgICAgcmV0dXJu
IGVuZ2luZShzZWxmLm5hbWUsIHNlbGYsIHNlbGYudG9vbC53YWtldXBfZXZlbnQpLnJ1bigpCiAK
ICAgICBAY2xhc3NtZXRob2QKICAgICBkZWYgX3VwZGF0ZV9zdGF0dXNfZm9yX3NjcmlwdF9lcnJv
cihjbHMsIHRvb2wsIHN0YXRlLCBzY3JpcHRfZXJyb3IsIGlzX2Vycm9yPUZhbHNlKToKZGlmZiAt
LWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9jb21tYW5kcy9xdWV1ZXN0
ZXN0LnB5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3F1ZXVl
c3Rlc3QucHkKaW5kZXggOGYxNjU4OC4uOTI2NGIyYSAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMv
U2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3F1ZXVlc3Rlc3QucHkKKysrIGIvV2ViS2l0
VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3F1ZXVlc3Rlc3QucHkKQEAgLTM1
LDcgKzM1LDcgQEAgZnJvbSB3ZWJraXRweS50b29sLm1vY2t0b29sIGltcG9ydCBNb2NrVG9vbAog
CiAKIGNsYXNzIE1vY2tRdWV1ZUVuZ2luZShvYmplY3QpOgotICAgIGRlZiBfX2luaXRfXyhzZWxm
LCBuYW1lLCBxdWV1ZSk6CisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG5hbWUsIHF1ZXVlLCB3YWtl
dXBfZXZlbnQpOgogICAgICAgICBwYXNzCiAKICAgICBkZWYgcnVuKHNlbGYpOgpkaWZmIC0tZ2l0
IGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL3NoZXJpZmZib3Qu
cHkgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvc2hlcmlmZmJv
dC5weQppbmRleCBiZjExOGI4Li5mYTQzYTcxIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9TY3Jp
cHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvc2hlcmlmZmJvdC5weQorKysgYi9XZWJLaXRUb29s
cy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvY29tbWFuZHMvc2hlcmlmZmJvdC5weQpAQCAtNDMsOCAr
NDMsOCBAQCBjbGFzcyBTaGVyaWZmQm90KEFic3RyYWN0UXVldWUpOgogCiAgICAgZGVmIGJlZ2lu
X3dvcmtfcXVldWUoc2VsZik6CiAgICAgICAgIEFic3RyYWN0UXVldWUuYmVnaW5fd29ya19xdWV1
ZShzZWxmKQotICAgICAgICBzZWxmLl9pcmNfZGVsZWdhdGUgPSBTaGVyaWZmSVJDQm90KHNlbGYu
dG9vbC5pcmNfcGFzc3dvcmQpCi0gICAgICAgIHNlbGYudG9vbC5lbnN1cmVfaXJjX2Nvbm5lY3Rl
ZChzZWxmLl9pcmNfZGVsZWdhdGUpCisgICAgICAgIHNlbGYuX2lyY19ib3QgPSBTaGVyaWZmSVJD
Qm90KHNlbGYudG9vbCkKKyAgICAgICAgc2VsZi50b29sLmVuc3VyZV9pcmNfY29ubmVjdGVkKHNl
bGYuX2lyY19ib3QuaXJjX2RlbGVnYXRlKCkpCiAKICAgICBkZWYgd29ya19pdGVtX2xvZ19wYXRo
KHNlbGYsIGZhaWx1cmVfaW5mbyk6CiAgICAgICAgIHJldHVybiBvcy5wYXRoLmpvaW4oIiVzLWxv
Z3MiICUgc2VsZi5uYW1lLCAiJXMubG9nIiAlIGZhaWx1cmVfaW5mb1sic3ZuX3JldmlzaW9uIl0p
CmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvbWFpbi5weSBi
L1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9tYWluLnB5CmluZGV4IDAzMjc0NmUu
LjYyOWU4NmYgMTAwNzU1Ci0tLSBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9t
YWluLnB5CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9tYWluLnB5CkBA
IC0zMCw2ICszMCw3IEBACiAjIEEgdG9vbCBmb3IgYXV0b21hdGluZyBkZWFsaW5nIHdpdGggYnVn
emlsbGEsIHBvc3RpbmcgcGF0Y2hlcywgY29tbWl0dGluZyBwYXRjaGVzLCBldGMuCiAKIGltcG9y
dCBvcworaW1wb3J0IHRocmVhZGluZwogCiBmcm9tIHdlYmtpdHB5LmNvbW1vbi5jaGVja291dC5h
cGkgaW1wb3J0IENoZWNrb3V0CiBmcm9tIHdlYmtpdHB5LmNvbW1vbi5jaGVja291dC5zY20gaW1w
b3J0IGRldGVjdF9zY21fc3lzdGVtCkBAIC02MCw2ICs2MSw3IEBAIGNsYXNzIFdlYktpdFBhdGNo
KE11bHRpQ29tbWFuZFRvb2wpOgogICAgICAgICBNdWx0aUNvbW1hbmRUb29sLl9faW5pdF9fKHNl
bGYpCiAKICAgICAgICAgc2VsZi5fcGF0aCA9IHBhdGgKKyAgICAgICAgc2VsZi53YWtldXBfZXZl
bnQgPSB0aHJlYWRpbmcuRXZlbnQoKQogICAgICAgICBzZWxmLmJ1Z3MgPSBCdWd6aWxsYSgpCiAg
ICAgICAgIHNlbGYuYnVpbGRib3QgPSBCdWlsZEJvdCgpCiAgICAgICAgIHNlbGYuZXhlY3V0aXZl
ID0gRXhlY3V0aXZlKCkKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkv
dG9vbC9tb2NrdG9vbC5weSBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9tb2Nr
dG9vbC5weQppbmRleCAyM2JiMzg2Li4xZGQyN2VkIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9T
Y3JpcHRzL3dlYmtpdHB5L3Rvb2wvbW9ja3Rvb2wucHkKKysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0
cy93ZWJraXRweS90b29sL21vY2t0b29sLnB5CkBAIC0yNyw2ICsyNyw3IEBACiAjIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCiAKIGltcG9ydCBvcworaW1wb3J0IHRocmVhZGluZwogCiBmcm9tIHdlYmtpdHB5LmNvbW1v
bi5jb25maWcuY29tbWl0dGVycyBpbXBvcnQgQ29tbWl0dGVyTGlzdCwgUmV2aWV3ZXIKIGZyb20g
d2Via2l0cHkuY29tbW9uLmNoZWNrb3V0LmNvbW1pdGluZm8gaW1wb3J0IENvbW1pdEluZm8KQEAg
LTMxMCw2ICszMTEsOSBAQCBjbGFzcyBNb2NrQnVpbGRCb3Qob2JqZWN0KToKICAgICAgICAgICAg
IHJldHVybiAiQnVpbGRlcjIiCiAgICAgICAgIHJldHVybiBbXQogCisgICAgZGVmIGxhc3RfZ3Jl
ZW5fcmV2aXNpb24oc2VsZik6CisgICAgICAgIHJldHVybiA5NDc5CisKICAgICBkZWYgbGlnaHRf
dHJlZV9vbl9maXJlKHNlbGYpOgogICAgICAgICBzZWxmLl90cmVlX2lzX29uX2ZpcmUgPSBUcnVl
CiAKQEAgLTMxOCw2ICszMjIsNyBAQCBjbGFzcyBNb2NrQnVpbGRCb3Qob2JqZWN0KToKICAgICAg
ICAgICAgICIyOTgzNyI6IFttb2NrX2J1aWxkZXJdCiAgICAgICAgIH0KIAorCiBjbGFzcyBNb2Nr
U0NNKE1vY2spOgogCiAgICAgZmFrZV9jaGVja291dF9yb290ID0gb3MucGF0aC5yZWFscGF0aCgi
L3RtcCIpICMgcmVhbHBhdGggaXMgbmVlZGVkIHRvIGFsbG93IGZvciBNYWMgT1MgWCdzIC9wcml2
YXRlL3RtcApAQCAtNDM3LDYgKzQ0Miw3IEBAIGNsYXNzIE1vY2tTdGF0dXNTZXJ2ZXIob2JqZWN0
KToKIGNsYXNzIE1vY2tUb29sKCk6CiAKICAgICBkZWYgX19pbml0X18oc2VsZik6CisgICAgICAg
IHNlbGYud2FrZXVwX2V2ZW50ID0gdGhyZWFkaW5nLkV2ZW50KCkKICAgICAgICAgc2VsZi5idWdz
ID0gTW9ja0J1Z3ppbGxhKCkKICAgICAgICAgc2VsZi5idWlsZGJvdCA9IE1vY2tCdWlsZEJvdCgp
CiAgICAgICAgIHNlbGYuZXhlY3V0aXZlID0gTW9jaygpCmRpZmYgLS1naXQgYS9XZWJLaXRUb29s
cy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvdW5pdHRlc3RzLnB5IGIvV2ViS2l0VG9vbHMvU2NyaXB0
cy93ZWJraXRweS90b29sL3VuaXR0ZXN0cy5weQppbmRleCBkYjJmNTY5Li43N2Y5OTc3IDEwMDY0
NAotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvdW5pdHRlc3RzLnB5Cisr
KyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC91bml0dGVzdHMucHkKQEAgLTI2
LDYgKzI2LDcgQEAKIAogZnJvbSB3ZWJraXRweS50b29sLmJvdC5wYXRjaGNvbGxlY3Rpb25fdW5p
dHRlc3QgaW1wb3J0ICoKIGZyb20gd2Via2l0cHkudG9vbC5ib3QucXVldWVlbmdpbmVfdW5pdHRl
c3QgaW1wb3J0ICoKK2Zyb20gd2Via2l0cHkudG9vbC5ib3Quc2hlcmlmZmlyY2JvdF91bml0dGVz
dCBpbXBvcnQgKgogZnJvbSB3ZWJraXRweS50b29sLmNvbW1hbmRzLmRvd25sb2FkX3VuaXR0ZXN0
IGltcG9ydCAqCiBmcm9tIHdlYmtpdHB5LnRvb2wuY29tbWFuZHMuZWFybHl3YXJuaW5nc3lzdGVt
X3VuaXR0ZXN0IGltcG9ydCAqCiBmcm9tIHdlYmtpdHB5LnRvb2wuY29tbWFuZHMub3BlbmJ1Z3Nf
dW5pdHRlc3QgaW1wb3J0IE9wZW5CdWdzVGVzdAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>