<?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>39562</bug_id>
          
          <creation_ts>2010-05-23 01:48:30 -0700</creation_ts>
          <short_desc>QueueStatusServer needs better queue-status pages</short_desc>
          <delta_ts>2010-08-05 14:29:10 -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="Eric Seidel (no email)">eric</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>tonyg</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>229425</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-23 01:48:30 -0700</bug_when>
    <thetext>QueueStatusServer needs better queue-status pages</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>229426</commentid>
    <comment_count>1</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-23 01:49:17 -0700</bug_when>
    <thetext>Work in progress demo visible at http://webkit-commit-queue.appspot.com/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>229427</commentid>
    <comment_count>2</comment_count>
      <attachid>56814</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-23 01:51:57 -0700</bug_when>
    <thetext>Created attachment 56814
work in progress</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>229430</commentid>
    <comment_count>3</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-23 01:57:03 -0700</bug_when>
    <thetext>As soon as this patch is finished and landed I will remove the &quot;empty queue&quot; logs, since they&apos;re now redundant with the WorkItems updates that every queue posts.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>229431</commentid>
    <comment_count>4</comment_count>
      <attachid>56815</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-23 02:00:58 -0700</bug_when>
    <thetext>Created attachment 56815
work in progress</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>260850</commentid>
    <comment_count>5</comment_count>
      <attachid>63634</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-08-05 14:19:58 -0700</bug_when>
    <thetext>Created attachment 63634
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>260856</commentid>
    <comment_count>6</comment_count>
      <attachid>63634</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-08-05 14:24:25 -0700</bug_when>
    <thetext>Comment on attachment 63634
Patch

Your templates generate ugly HTML, but ok.  We need haml.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>260863</commentid>
    <comment_count>7</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-08-05 14:29:10 -0700</bug_when>
    <thetext>Committed r64787: &lt;http://trac.webkit.org/changeset/64787&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>56814</attachid>
            <date>2010-05-23 01:51:57 -0700</date>
            <delta_ts>2010-05-23 02:00:38 -0700</delta_ts>
            <desc>work in progress</desc>
            <filename>bug-39562-20100523015155.patch</filename>
            <type>text/plain</type>
            <size>9245</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBkMDUzNjM0ZWEyMDI4YTc1M2U3MzdlNTBlOTQ4MDhhMDYzZjVkOTM3Li4yYWIwOTdj
MjFhMGMxM2RiOGQwNjZhZGY4NzM2MTg5NjRiNmI3ZTVjIDEwMDY0NAotLS0gYS9XZWJLaXRUb29s
cy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAK
KzIwMTAtMDUtMjMgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFF1ZXVlU3RhdHVzU2VydmVyIG5l
ZWRzIGJldHRlciBxdWV1ZS1zdGF0dXMgcGFnZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTM5NTYyCisKKyAgICAgICAgVGhlIHByaW1hcnkgZ29hbCBv
ZiB0aGlzIHBhdGNoIGlzIHRvIGRpc3BsYXkgcXVldWUKKyAgICAgICAgcG9zaXRpb25zIHNvbWV3
aGVyZSBvbiB0aGUgc2l0ZSBzbyB0aGF0IGl0J3MgZWFzaWVyCisgICAgICAgIGZvciBjb21taXQt
cXVldWUgdXNlcnMgdG8ga25vdyB3aGVuIHRoZWlyIHBhY2ggd2lsbAorICAgICAgICBiZSBsYW5k
ZWQuICBJIGFsc28gdHJpZWQgdG8gaW1wcm92ZSB0aGUgcm9vdCBwYWdlCisgICAgICAgIHRvIGJl
IG1vcmUgdXNlZnVsIHRoYW4gdGhlIHByZXZpb3VzIHdhbGwgb2Ygc3RhdHVzIHRleHQuCisKKyAg
ICAgICAgKiBRdWV1ZVN0YXR1c1NlcnZlci9oYW5kbGVycy9yZWNlbnRzdGF0dXMucHk6CisgICAg
ICAgICogUXVldWVTdGF0dXNTZXJ2ZXIvbWFpbi5weToKKyAgICAgICAgKiBRdWV1ZVN0YXR1c1Nl
cnZlci9tb2RlbC9xdWV1ZXMucHk6CisgICAgICAgICogUXVldWVTdGF0dXNTZXJ2ZXIvdGVtcGxh
dGVzL3JlY2VudHN0YXR1cy5odG1sOgorCiAyMDEwLTA1LTIyICBFcmljIFNlaWRlbCAgPGVyaWNA
d2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCBmaXhpbmcgdGVzdCByZXN1bHRzIG9u
bHkuCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci9oYW5kbGVycy9y
ZWNlbnRzdGF0dXMucHkgYi9XZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci9oYW5kbGVycy9y
ZWNlbnRzdGF0dXMucHkKaW5kZXggZDFkZjc4YzkwNWZiZWVlZTEyODRiNDBlZmZkYTFmNzJiMjBh
MmI1Mi4uNWE0ZGJhYTk2ZjgxOGFhMDFhMTI2N2MxMzMzOTFjZDM1YWY4NGZjNCAxMDA2NDQKLS0t
IGEvV2ViS2l0VG9vbHMvUXVldWVTdGF0dXNTZXJ2ZXIvaGFuZGxlcnMvcmVjZW50c3RhdHVzLnB5
CisrKyBiL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL2hhbmRsZXJzL3JlY2VudHN0YXR1
cy5weQpAQCAtMjYsMzIgKzI2LDY4IEBACiAjIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogIyBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgog
CitpbXBvcnQgZGF0ZXRpbWUKKwogZnJvbSBnb29nbGUuYXBwZW5naW5lLmV4dCBpbXBvcnQgd2Vi
YXBwCiBmcm9tIGdvb2dsZS5hcHBlbmdpbmUuZXh0LndlYmFwcCBpbXBvcnQgdGVtcGxhdGUKIAot
ZnJvbSBtb2RlbC5xdWV1ZXMgaW1wb3J0IHF1ZXVlcworZnJvbSBtb2RlbC5xdWV1ZXMgaW1wb3J0
IHF1ZXVlcywgZGlzcGxheV9uYW1lX2Zvcl9xdWV1ZQogZnJvbSBtb2RlbC5xdWV1ZXN0YXR1cyBp
bXBvcnQgUXVldWVTdGF0dXMKK2Zyb20gbW9kZWwud29ya2l0ZW1zIGltcG9ydCBXb3JrSXRlbXMK
KworCitjbGFzcyBRdWV1ZUJ1YmJsZShvYmplY3QpOgorICAgICIiIlZpZXcgc3VwcG9ydCBjbGFz
cyBmb3IgcmVjZW50c3RhdHVzLmh0bWwiIiIKKyAgICBkZWYgX19pbml0X18oc2VsZiwgcXVldWVf
bmFtZSk6CisgICAgICAgIHNlbGYuX3F1ZXVlX25hbWUgPSBxdWV1ZV9uYW1lCisgICAgICAgIHNl
bGYuX3dvcmtfaXRlbXMgPSBXb3JrSXRlbXMuYWxsKCkuZmlsdGVyKCJxdWV1ZV9uYW1lID0iLCBx
dWV1ZV9uYW1lKS5nZXQoKQorICAgICAgICBzZWxmLl9sYXN0X3N0YXR1cyA9IFF1ZXVlU3RhdHVz
LmFsbCgpLmZpbHRlcigicXVldWVfbmFtZSA9IiwgcXVldWVfbmFtZSkub3JkZXIoIi1kYXRlIiku
Z2V0KCkKKworICAgIGRlZiBuYW1lKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5fcXVldWVf
bmFtZQorCisgICAgZGVmIGRpc3BsYXlfbmFtZShzZWxmKToKKyAgICAgICAgcmV0dXJuIGRpc3Bs
YXlfbmFtZV9mb3JfcXVldWUoc2VsZi5fcXVldWVfbmFtZSkKKworICAgIGRlZiBfbGFzdF9zdGF0
dXNfZGF0ZShzZWxmKToKKyAgICAgICAgaWYgbm90IHNlbGYuX2xhc3Rfc3RhdHVzOgorICAgICAg
ICAgICAgcmV0dXJuIE5vbmUKKyAgICAgICAgcmV0dXJuIHNlbGYuX2xhc3Rfc3RhdHVzLmRhdGUK
KworICAgIGRlZiBsYXN0X2hlYXJkX2Zyb20oc2VsZik6CisgICAgICAgIGlmIG5vdCBzZWxmLl93
b3JrX2l0ZW1zOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuX2xhc3Rfc3RhdHVzX2RhdGUoKQor
ICAgICAgICByZXR1cm4gbWF4KHNlbGYuX2xhc3Rfc3RhdHVzX2RhdGUoKSwgc2VsZi5fd29ya19p
dGVtcy5kYXRlKQorCisgICAgZGVmIGlzX2FsaXZlKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2Vs
Zi5sYXN0X2hlYXJkX2Zyb20oKToKKyAgICAgICAgICAgIHJldHVybiBGYWxzZQorICAgICAgICBy
ZXR1cm4gc2VsZi5sYXN0X2hlYXJkX2Zyb20oKSA+IChkYXRldGltZS5kYXRldGltZS5ub3coKSAt
IGRhdGV0aW1lLnRpbWVkZWx0YShtaW51dGVzPTMwKSkKKworICAgIGRlZiBzdGF0dXNfY2xhc3Mo
c2VsZik6CisgICAgICAgIGlmIG5vdCBzZWxmLmlzX2FsaXZlKCk6CisgICAgICAgICAgICByZXR1
cm4gImRlYWQiCisgICAgICAgIGlmIHNlbGYucGVuZGluZ19pdGVtc19jb3VudCgpID4gMToKKyAg
ICAgICAgICAgIHJldHVybiAiYmVoaW5kIgorICAgICAgICByZXR1cm4gImFsaXZlIgorCisgICAg
ZGVmIHN0YXR1c190ZXh0KHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5fd29ya19pdGVtczoK
KyAgICAgICAgICAgIHJldHVybiAiRGlzY29ubmVjdGVkIgorICAgICAgICBpZiBub3Qgc2VsZi5f
d29ya19pdGVtcy5pdGVtX2lkczoKKyAgICAgICAgICAgIHJldHVybiAiSWRsZSIKKyAgICAgICAg
cmV0dXJuIHNlbGYuX2xhc3Rfc3RhdHVzLm1lc3NhZ2UKKworICAgIGRlZiBwZW5kaW5nX2l0ZW1z
X2NvdW50KHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5fd29ya19pdGVtczoKKyAgICAgICAg
ICAgIHJldHVybiAwCisgICAgICAgIHJldHVybiBsZW4oc2VsZi5fd29ya19pdGVtcy5pdGVtX2lk
cykKKwogCi1jbGFzcyBSZWNlbnRTdGF0dXMod2ViYXBwLlJlcXVlc3RIYW5kbGVyKToKLSAgICBk
ZWYgX3RpdGxlX2Nhc2Uoc2VsZiwgc3RyaW5nKToKLSAgICAgICAgd29yZHMgPSBzdHJpbmcuc3Bs
aXQoIiAiKQotICAgICAgICB3b3JkcyA9IG1hcChsYW1iZGEgd29yZDogd29yZC5jYXBpdGFsaXpl
KCksIHdvcmRzKQotICAgICAgICByZXR1cm4gIiAiLmpvaW4od29yZHMpCi0KLSAgICBkZWYgX3By
ZXR0eV9xdWV1ZV9uYW1lKHNlbGYsIHF1ZXVlX25hbWUpOgotICAgICAgICByZXR1cm4gc2VsZi5f
dGl0bGVfY2FzZShxdWV1ZV9uYW1lLnJlcGxhY2UoIi0iLCAiICIpKQotCi0gICAgIyBXZSBjb3Vs
ZCBjaGFuZ2UgIi8iIHRvIGp1c3QgcmVkaXJlY3QgdG8gL3F1ZXVlLXN0YXR1cy9jb21taXQtcXVl
dWUgaW4gdGhlIGZ1dHVyZQotICAgICMgYXQgd2hpY2ggcG9pbnQgd2Ugd291bGQgbm90IG5lZWQg
YSBkZWZhdWx0IHZhbHVlIGZvciBxdWV1ZV9uYW1lIGhlcmUuCi0gICAgZGVmIGdldChzZWxmLCBx
dWV1ZV9uYW1lPSJjb21taXQtcXVldWUiKToKLSAgICAgICAgcXVldWVfc3RhdHVzID0ge30KLSAg
ICAgICAgZm9yIHF1ZXVlIGluIHF1ZXVlczoKLSAgICAgICAgICAgIHN0YXR1c2VzID0gUXVldWVT
dGF0dXMuYWxsKCkuZmlsdGVyKCJxdWV1ZV9uYW1lID0iLCBxdWV1ZSkub3JkZXIoIi1kYXRlIiku
ZmV0Y2goNikKLSAgICAgICAgICAgIGlmIG5vdCBzdGF0dXNlczoKLSAgICAgICAgICAgICAgICBj
b250aW51ZQotICAgICAgICAgICAgcXVldWVfc3RhdHVzW3F1ZXVlXSA9IHN0YXR1c2VzCitjbGFz
cyBRdWV1ZXNPdmVydmlldyh3ZWJhcHAuUmVxdWVzdEhhbmRsZXIpOgogCisgICAgZGVmIGdldChz
ZWxmKToKICAgICAgICAgdGVtcGxhdGVfdmFsdWVzID0gewotICAgICAgICAgICAgInF1ZXVlX3N0
YXR1cyIgOiBxdWV1ZV9zdGF0dXMsCisgICAgICAgICAgICAicXVldWVzIjogW1F1ZXVlQnViYmxl
KHF1ZXVlX25hbWUpIGZvciBxdWV1ZV9uYW1lIGluIHF1ZXVlc10sCiAgICAgICAgIH0KICAgICAg
ICAgc2VsZi5yZXNwb25zZS5vdXQud3JpdGUodGVtcGxhdGUucmVuZGVyKCJ0ZW1wbGF0ZXMvcmVj
ZW50c3RhdHVzLmh0bWwiLCB0ZW1wbGF0ZV92YWx1ZXMpKQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9v
bHMvUXVldWVTdGF0dXNTZXJ2ZXIvbWFpbi5weSBiL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2Vy
dmVyL21haW4ucHkKaW5kZXggZmI2ZmM0YmY3NGYyNWQ3NTZlZmUyYmU2ZTM5ZGM4ZDA4ZDZmNDgz
Yy4uZTU1MGRjNWY0NTUzMDk3YjJmMDE1NTEyY2NmY2ExYmE0YmQxYTYyMCAxMDA2NDQKLS0tIGEv
V2ViS2l0VG9vbHMvUXVldWVTdGF0dXNTZXJ2ZXIvbWFpbi5weQorKysgYi9XZWJLaXRUb29scy9R
dWV1ZVN0YXR1c1NlcnZlci9tYWluLnB5CkBAIC0zNyw3ICszNyw4IEBAIGZyb20gaGFuZGxlcnMu
ZGFzaGJvYXJkIGltcG9ydCBEYXNoYm9hcmQKIGZyb20gaGFuZGxlcnMuZ2MgaW1wb3J0IEdDCiBm
cm9tIGhhbmRsZXJzLnBhdGNoIGltcG9ydCBQYXRjaAogZnJvbSBoYW5kbGVycy5wYXRjaHN0YXR1
cyBpbXBvcnQgUGF0Y2hTdGF0dXMKLWZyb20gaGFuZGxlcnMucmVjZW50c3RhdHVzIGltcG9ydCBS
ZWNlbnRTdGF0dXMKK2Zyb20gaGFuZGxlcnMucXVldWVzdGF0dXMgaW1wb3J0IFF1ZXVlU3RhdHVz
Citmcm9tIGhhbmRsZXJzLnJlY2VudHN0YXR1cyBpbXBvcnQgUXVldWVzT3ZlcnZpZXcKIGZyb20g
aGFuZGxlcnMuc2hvd3Jlc3VsdHMgaW1wb3J0IFNob3dSZXN1bHRzCiBmcm9tIGhhbmRsZXJzLnN0
YXR1c2J1YmJsZSBpbXBvcnQgU3RhdHVzQnViYmxlCiBmcm9tIGhhbmRsZXJzLnN2bnJldmlzaW9u
IGltcG9ydCBTVk5SZXZpc2lvbgpAQCAtNDksNyArNTAsNyBAQCBmcm9tIGhhbmRsZXJzLnVwZGF0
ZXdvcmtpdGVtcyBpbXBvcnQgVXBkYXRlV29ya0l0ZW1zCiB3ZWJhcHAudGVtcGxhdGUucmVnaXN0
ZXJfdGVtcGxhdGVfbGlicmFyeSgnZmlsdGVycy53ZWJraXRfZXh0cmFzJykKIAogcm91dGVzID0g
WwotICAgICgnLycsIFJlY2VudFN0YXR1cyksCisgICAgKCcvJywgUXVldWVzT3ZlcnZpZXcpLAog
ICAgICgnL2Rhc2hib2FyZCcsIERhc2hib2FyZCksCiAgICAgKCcvZ2MnLCBHQyksCiAgICAgKHIn
L3BhdGNoLXN0YXR1cy8oLiopLyguKiknLCBQYXRjaFN0YXR1cyksCkBAIC01Nyw3ICs1OCw3IEBA
IHJvdXRlcyA9IFsKICAgICAocicvcmVzdWx0cy8oLiopJywgU2hvd1Jlc3VsdHMpLAogICAgIChy
Jy9zdGF0dXMtYnViYmxlLyguKiknLCBTdGF0dXNCdWJibGUpLAogICAgIChyJy9zdm4tcmV2aXNp
b24vKC4qKScsIFNWTlJldmlzaW9uKSwKLSAgICAocicvcXVldWUtc3RhdHVzLyguKiknLCBSZWNl
bnRTdGF0dXMpLAorICAgIChyJy9xdWV1ZS1zdGF0dXMvKC4qKScsIFF1ZXVlU3RhdHVzKSwKICAg
ICAoJy91cGRhdGUtc3RhdHVzJywgVXBkYXRlU3RhdHVzKSwKICAgICAoJy91cGRhdGUtd29yay1p
dGVtcycsIFVwZGF0ZVdvcmtJdGVtcyksCiAgICAgKCcvdXBkYXRlLXN2bi1yZXZpc2lvbicsIFVw
ZGF0ZVNWTlJldmlzaW9uKSwKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2Vy
dmVyL21vZGVsL3F1ZXVlcy5weSBiL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL21vZGVs
L3F1ZXVlcy5weQppbmRleCA0NmYyZjE1OGY1NDk0Nzg1MWYyMmVlYjM1YmI2YzZjZjNhNGFhY2E2
Li4yZjA4ODRmNWE2M2EzZjkyNTQzMGVhYWQ1NDdlN2JkMDg4M2YzZjhmIDEwMDY0NAotLS0gYS9X
ZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci9tb2RlbC9xdWV1ZXMucHkKKysrIGIvV2ViS2l0
VG9vbHMvUXVldWVTdGF0dXNTZXJ2ZXIvbW9kZWwvcXVldWVzLnB5CkBAIC00MSw2ICs0MSwyNCBA
QCBxdWV1ZXMgPSBbCiBdCiAKIAorIyBGSVhNRTogV2UgbmVlZCBzb21lIHNvcnQgb2YgUXVldWUg
b2JqZWN0LgorZGVmIF90aXRsZV9jYXNlKHN0cmluZyk6CisgICAgd29yZHMgPSBzdHJpbmcuc3Bs
aXQoIiAiKQorICAgIHdvcmRzID0gbWFwKGxhbWJkYSB3b3JkOiB3b3JkLmNhcGl0YWxpemUoKSwg
d29yZHMpCisgICAgcmV0dXJuICIgIi5qb2luKHdvcmRzKQorCisKK2RlZiBkaXNwbGF5X25hbWVf
Zm9yX3F1ZXVlKHF1ZXVlX25hbWUpOgorICAgICMgSEFDSzogY2hyb21pdW0tZXdzIGlzIGluY29y
cmVjdGx5IG5hbWVkLgorICAgIGRpc3BsYXlfbmFtZSA9IHF1ZXVlX25hbWUucmVwbGFjZSgiY2hy
b21pdW0tZXdzIiwgImNyLWxpbnV4LWV3cyIpCisKKyAgICBkaXNwbGF5X25hbWUgPSBkaXNwbGF5
X25hbWUucmVwbGFjZSgiLSIsICIgIikKKyAgICBkaXNwbGF5X25hbWUgPSBkaXNwbGF5X25hbWUu
cmVwbGFjZSgiY3IiLCAiY2hyb21pdW0iKQorICAgIGRpc3BsYXlfbmFtZSA9IF90aXRsZV9jYXNl
KGRpc3BsYXlfbmFtZSkKKyAgICBkaXNwbGF5X25hbWUgPSBkaXNwbGF5X25hbWUucmVwbGFjZSgi
RXdzIiwgIkVXUyIpCisgICAgcmV0dXJuIGRpc3BsYXlfbmFtZQorCisKIGRlZiBuYW1lX3dpdGhf
dW5kZXJzY29yZXMoZGFzaGVkX25hbWUpOgogICAgIHJlZ2V4cCA9IHJlLmNvbXBpbGUoIi0iKQog
ICAgIHJldHVybiByZWdleHAuc3ViKCJfIiwgZGFzaGVkX25hbWUpCmRpZmYgLS1naXQgYS9XZWJL
aXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci90ZW1wbGF0ZXMvcmVjZW50c3RhdHVzLmh0bWwgYi9X
ZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci90ZW1wbGF0ZXMvcmVjZW50c3RhdHVzLmh0bWwK
aW5kZXggMmJiOWZiYmRmMjA4Yzg5Njk0Y2U5YTQ1MGZiYjBhYTZhNmJlOWIzMi4uODA4ZDhkNzA5
ZDA3N2U0YTkzZjc5YmIwNjZiYmFmZWI1NjliOTE0MCAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMv
UXVldWVTdGF0dXNTZXJ2ZXIvdGVtcGxhdGVzL3JlY2VudHN0YXR1cy5odG1sCisrKyBiL1dlYktp
dFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL3RlbXBsYXRlcy9yZWNlbnRzdGF0dXMuaHRtbApAQCAt
MywyMiArMyw1MiBAQAogPGhlYWQ+CiA8dGl0bGU+V2ViS2l0IFF1ZXVlIFN0YXR1czwvdGl0bGU+
CiA8bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvc3R5bGVzaGVl
dHMvZGFzaGJvYXJkLmNzcyIgLz4KKzxzdHlsZT4KKy5xdWV1ZV9idWJibGUgeworICAgIGJvcmRl
cjogMXB4IHNvbGlkIGJsYWNrOworICAgIG1hcmdpbi1ib3R0b206IDEwcHg7CisgICAgYm9yZGVy
LXJhZGl1czogMTBweDsKKyAgICBwYWRkaW5nOiA1cHg7Cit9CisucXVldWVfbmFtZSB7CisgICAg
ZmxvYXQ6bGVmdDsKK30KKy5sYXN0X2hlYXJkX2Zyb20geworICAgIGZsb2F0OiByaWdodDsKK30K
Ky5zdGF0dXNfdGV4dCB7CisgICAgY2xlYXI6IGJvdGg7Cit9CisuYWxpdmUgeworICAgIGJhY2tn
cm91bmQtY29sb3I6ICM4RkRGNUY7Cit9CisuYmVoaW5kIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9y
OiAjRkZGQzZDOworfQorLmRlYWQgeworICAgIGJhY2tncm91bmQtY29sb3I6ICNFOTgwODA7Cit9
Cis8L3N0eWxlPgogPC9oZWFkPgogPGJvZHk+Ci08aDE+V2ViS2l0IFF1ZXVlIFN0YXR1czwvaDE+
eyUgZm9yIHF1ZXVlX25hbWUsIHN0YXR1c2VzIGluIHF1ZXVlX3N0YXR1cy5pdGVtcyAlfQotPGRp
diBjbGFzcz0ic3RhdHVzLWRldGFpbHMiPgotICA8aDI+e3sgcXVldWVfbmFtZSB9fTwvaDI+Ci0g
IDx1bD57JSBmb3Igc3RhdHVzIGluIHN0YXR1c2VzICV9Ci0gICAgPGxpPnslIGlmIHN0YXR1cy5h
Y3RpdmVfYnVnX2lkICV9Ci0gICAgICA8c3BhbiBjbGFzcz0ic3RhdHVzLWJ1ZyI+Ci0gICAgICAg
IFBhdGNoIHt7IHN0YXR1cy5hY3RpdmVfcGF0Y2hfaWR8Zm9yY2VfZXNjYXBlfHdlYmtpdF9hdHRh
Y2htZW50X2lkfHNhZmUgfX0gZnJvbSBidWcKLSAgICAgICAge3sgc3RhdHVzLmFjdGl2ZV9idWdf
aWR8Zm9yY2VfZXNjYXBlfHdlYmtpdF9idWdfaWR8c2FmZSB9fToKLSAgICAgIDwvc3Bhbj57JSBl
bmRpZiAlfQotICAgICAgPHNwYW4gY2xhc3M9InN0YXR1cy1tZXNzYWdlIj57eyBzdGF0dXMubWVz
c2FnZXxmb3JjZV9lc2NhcGV8dXJsaXplfHdlYmtpdF9saW5raWZ5fHNhZmUgfX08L3NwYW4+eyUg
aWYgc3RhdHVzLnJlc3VsdHNfZmlsZSAlfQotICAgICAgPHNwYW4gY2xhc3M9InN0YXR1cy1yZXN1
bHRzIj5be3sgc3RhdHVzLmtleS5pZHxyZXN1bHRzX2xpbmt8c2FmZSB9fV08L3NwYW4+eyUgZW5k
aWYgJX0KLSAgICAgIDxzcGFuIGNsYXNzPSJzdGF0dXMtZGF0ZSI+e3sgc3RhdHVzLmRhdGV8dGlt
ZXNpbmNlIH19IGFnbzwvc3Bhbj4KLSAgICA8L2xpPnslIGVuZGZvciAlfQotICA8L3VsPgotPC9k
aXY+eyUgZW5kZm9yICV9Cis8aDE+V2ViS2l0IFF1ZXVlIFN0YXR1czwvaDE+Cit7JSBmb3IgcXVl
dWUgaW4gcXVldWVzICV9Cis8ZGl2IGNsYXNzPSJxdWV1ZV9idWJibGUge3sgcXVldWUuc3RhdHVz
X2NsYXNzIH19Ij4KKyAgICA8ZGl2IGNsYXNzPSJxdWV1ZV9uYW1lIj4KKyAgICAgICAgPGEgaHJl
Zj0iL3F1ZXVlLXN0YXR1cy97eyBxdWV1ZS5uYW1lIH19Ij4KKyAgICAgICAge3sgcXVldWUuZGlz
cGxheV9uYW1lIH19CisgICAgICAgIDwvYT4KKyAgICA8L2Rpdj4KKyAgICB7JSBpZiBxdWV1ZS5s
YXN0X2hlYXJkX2Zyb20gJX0KKyAgICA8ZGl2IGNsYXNzPSJsYXN0X2hlYXJkX2Zyb20iPnt7IHF1
ZXVlLmxhc3RfaGVhcmRfZnJvbXx0aW1lc2luY2UgfX0gYWdvPC9kaXY+CisgICAgeyUgZW5kaWYg
JX0KKyAgICA8ZGl2IGNsYXNzPSJzdGF0dXNfdGV4dCI+CisgICAgICAgIFN0YXR1czoge3sgcXVl
dWUuc3RhdHVzX3RleHR8Zm9yY2VfZXNjYXBlfHVybGl6ZXx3ZWJraXRfbGlua2lmeXxzYWZlIH19
CisgICAgPC9kaXY+CisgICAgPGRpdj4KKyAgICAgICAge3sgcXVldWUucGVuZGluZ19pdGVtc19j
b3VudCB9fSBwZW5kaW5nCisgICAgPC9kaXY+Cis8L2Rpdj4KK3slIGVuZGZvciAlfQogPC9ib2R5
PgogPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>56815</attachid>
            <date>2010-05-23 02:00:58 -0700</date>
            <delta_ts>2010-08-05 14:19:54 -0700</delta_ts>
            <desc>work in progress</desc>
            <filename>bug-39562-20100523020057.patch</filename>
            <type>text/plain</type>
            <size>13817</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBkMDUzNjM0ZWEyMDI4YTc1M2U3MzdlNTBlOTQ4MDhhMDYzZjVkOTM3Li4yYWIwOTdj
MjFhMGMxM2RiOGQwNjZhZGY4NzM2MTg5NjRiNmI3ZTVjIDEwMDY0NAotLS0gYS9XZWJLaXRUb29s
cy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAK
KzIwMTAtMDUtMjMgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFF1ZXVlU3RhdHVzU2VydmVyIG5l
ZWRzIGJldHRlciBxdWV1ZS1zdGF0dXMgcGFnZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTM5NTYyCisKKyAgICAgICAgVGhlIHByaW1hcnkgZ29hbCBv
ZiB0aGlzIHBhdGNoIGlzIHRvIGRpc3BsYXkgcXVldWUKKyAgICAgICAgcG9zaXRpb25zIHNvbWV3
aGVyZSBvbiB0aGUgc2l0ZSBzbyB0aGF0IGl0J3MgZWFzaWVyCisgICAgICAgIGZvciBjb21taXQt
cXVldWUgdXNlcnMgdG8ga25vdyB3aGVuIHRoZWlyIHBhY2ggd2lsbAorICAgICAgICBiZSBsYW5k
ZWQuICBJIGFsc28gdHJpZWQgdG8gaW1wcm92ZSB0aGUgcm9vdCBwYWdlCisgICAgICAgIHRvIGJl
IG1vcmUgdXNlZnVsIHRoYW4gdGhlIHByZXZpb3VzIHdhbGwgb2Ygc3RhdHVzIHRleHQuCisKKyAg
ICAgICAgKiBRdWV1ZVN0YXR1c1NlcnZlci9oYW5kbGVycy9yZWNlbnRzdGF0dXMucHk6CisgICAg
ICAgICogUXVldWVTdGF0dXNTZXJ2ZXIvbWFpbi5weToKKyAgICAgICAgKiBRdWV1ZVN0YXR1c1Nl
cnZlci9tb2RlbC9xdWV1ZXMucHk6CisgICAgICAgICogUXVldWVTdGF0dXNTZXJ2ZXIvdGVtcGxh
dGVzL3JlY2VudHN0YXR1cy5odG1sOgorCiAyMDEwLTA1LTIyICBFcmljIFNlaWRlbCAgPGVyaWNA
d2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCBmaXhpbmcgdGVzdCByZXN1bHRzIG9u
bHkuCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci9oYW5kbGVycy9x
dWV1ZXN0YXR1cy5weSBiL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL2hhbmRsZXJzL3F1
ZXVlc3RhdHVzLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjYyODJhOTgwZTcwN2JmMGZhMGVmN2MyZTI5OWEwNWM2
MmEyNWNkMjcKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZl
ci9oYW5kbGVycy9xdWV1ZXN0YXR1cy5weQpAQCAtMCwwICsxLDU4IEBACisjIENvcHlyaWdodCAo
QykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorIworIyBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zIGFyZQorIyBtZXQ6CisjCisjICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisjIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyMgICAg
ICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZQorIyBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyCisjIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyMgZGlzdHJpYnV0aW9uLgorIyAgICAgKiBOZWl0
aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisjIGNvbnRy
aWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZl
ZCBmcm9tCisjIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBl
cm1pc3Npb24uCisjCisjIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyMgIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyMgTElNSVRFRCBUTywgVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisj
IEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUCisjIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorIyBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisjIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAor
IyBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkKKyMgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyMgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKworZnJvbSBnb29nbGUuYXBwZW5naW5lLmV4dCBpbXBvcnQgd2ViYXBwCitmcm9tIGdvb2ds
ZS5hcHBlbmdpbmUuZXh0LndlYmFwcCBpbXBvcnQgdGVtcGxhdGUKKworZnJvbSBtb2RlbC5xdWV1
ZXMgaW1wb3J0IHF1ZXVlcywgZGlzcGxheV9uYW1lX2Zvcl9xdWV1ZQorZnJvbSBtb2RlbC53b3Jr
aXRlbXMgaW1wb3J0IFdvcmtJdGVtcworCitmcm9tIG1vZGVsIGltcG9ydCBxdWV1ZXN0YXR1cwor
CisKK2NsYXNzIFF1ZXVlU3RhdHVzKHdlYmFwcC5SZXF1ZXN0SGFuZGxlcik6CisgICAgZGVmIF9y
b3dzX2Zvcl93b3JrX2l0ZW1zKHNlbGYsIHdvcmtfaXRlbXMpOgorICAgICAgICBpZiBub3Qgd29y
a19pdGVtczoKKyAgICAgICAgICAgIHJldHVybiBbXQorICAgICAgICByb3dzID0gW10KKyAgICAg
ICAgZm9yIGl0ZW1faWQgaW4gd29ya19pdGVtcy5pdGVtX2lkczoKKyAgICAgICAgICAgIHJvd3Mu
YXBwZW5kKHsKKyAgICAgICAgICAgICAgICAiYXR0YWNobWVudF9pZCI6IGl0ZW1faWQsCisgICAg
ICAgICAgICAgICAgImJ1Z19pZCI6IDEsCisgICAgICAgICAgICB9KQorICAgICAgICByZXR1cm4g
cm93cworCisgICAgZGVmIGdldChzZWxmLCBxdWV1ZV9uYW1lKToKKyAgICAgICAgd29ya19pdGVt
cyA9IFdvcmtJdGVtcy5hbGwoKS5maWx0ZXIoInF1ZXVlX25hbWUgPSIsIHF1ZXVlX25hbWUpLmdl
dCgpCisgICAgICAgIHN0YXR1c2VzID0gcXVldWVzdGF0dXMuUXVldWVTdGF0dXMuYWxsKCkuZmls
dGVyKCJxdWV1ZV9uYW1lID0iLCBxdWV1ZV9uYW1lKS5vcmRlcigiLWRhdGUiKS5mZXRjaCg2KQor
ICAgICAgICB0ZW1wbGF0ZV92YWx1ZXMgPSB7CisgICAgICAgICAgICAiZGlzcGxheV9xdWV1ZV9u
YW1lIjogZGlzcGxheV9uYW1lX2Zvcl9xdWV1ZShxdWV1ZV9uYW1lKSwKKyAgICAgICAgICAgICJ3
b3JrX2l0ZW1fcm93cyI6IHNlbGYuX3Jvd3NfZm9yX3dvcmtfaXRlbXMod29ya19pdGVtcyksCisg
ICAgICAgICAgICAic3RhdHVzZXMiOiBzdGF0dXNlcywKKyAgICAgICAgfQorICAgICAgICBzZWxm
LnJlc3BvbnNlLm91dC53cml0ZSh0ZW1wbGF0ZS5yZW5kZXIoInRlbXBsYXRlcy9xdWV1ZXN0YXR1
cy5odG1sIiwgdGVtcGxhdGVfdmFsdWVzKSkKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1F1ZXVl
U3RhdHVzU2VydmVyL2hhbmRsZXJzL3JlY2VudHN0YXR1cy5weSBiL1dlYktpdFRvb2xzL1F1ZXVl
U3RhdHVzU2VydmVyL2hhbmRsZXJzL3JlY2VudHN0YXR1cy5weQppbmRleCBkMWRmNzhjOTA1ZmJl
ZWVlMTI4NGI0MGVmZmRhMWY3MmIyMGEyYjUyLi41YTRkYmFhOTZmODE4YWEwMWExMjY3YzEzMzM5
MWNkMzVhZjg0ZmM0IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci9o
YW5kbGVycy9yZWNlbnRzdGF0dXMucHkKKysrIGIvV2ViS2l0VG9vbHMvUXVldWVTdGF0dXNTZXJ2
ZXIvaGFuZGxlcnMvcmVjZW50c3RhdHVzLnB5CkBAIC0yNiwzMiArMjYsNjggQEAKICMgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFCiAjIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAKK2ltcG9ydCBkYXRldGltZQorCiBmcm9tIGdvb2dsZS5h
cHBlbmdpbmUuZXh0IGltcG9ydCB3ZWJhcHAKIGZyb20gZ29vZ2xlLmFwcGVuZ2luZS5leHQud2Vi
YXBwIGltcG9ydCB0ZW1wbGF0ZQogCi1mcm9tIG1vZGVsLnF1ZXVlcyBpbXBvcnQgcXVldWVzCitm
cm9tIG1vZGVsLnF1ZXVlcyBpbXBvcnQgcXVldWVzLCBkaXNwbGF5X25hbWVfZm9yX3F1ZXVlCiBm
cm9tIG1vZGVsLnF1ZXVlc3RhdHVzIGltcG9ydCBRdWV1ZVN0YXR1cworZnJvbSBtb2RlbC53b3Jr
aXRlbXMgaW1wb3J0IFdvcmtJdGVtcworCisKK2NsYXNzIFF1ZXVlQnViYmxlKG9iamVjdCk6Cisg
ICAgIiIiVmlldyBzdXBwb3J0IGNsYXNzIGZvciByZWNlbnRzdGF0dXMuaHRtbCIiIgorICAgIGRl
ZiBfX2luaXRfXyhzZWxmLCBxdWV1ZV9uYW1lKToKKyAgICAgICAgc2VsZi5fcXVldWVfbmFtZSA9
IHF1ZXVlX25hbWUKKyAgICAgICAgc2VsZi5fd29ya19pdGVtcyA9IFdvcmtJdGVtcy5hbGwoKS5m
aWx0ZXIoInF1ZXVlX25hbWUgPSIsIHF1ZXVlX25hbWUpLmdldCgpCisgICAgICAgIHNlbGYuX2xh
c3Rfc3RhdHVzID0gUXVldWVTdGF0dXMuYWxsKCkuZmlsdGVyKCJxdWV1ZV9uYW1lID0iLCBxdWV1
ZV9uYW1lKS5vcmRlcigiLWRhdGUiKS5nZXQoKQorCisgICAgZGVmIG5hbWUoc2VsZik6CisgICAg
ICAgIHJldHVybiBzZWxmLl9xdWV1ZV9uYW1lCisKKyAgICBkZWYgZGlzcGxheV9uYW1lKHNlbGYp
OgorICAgICAgICByZXR1cm4gZGlzcGxheV9uYW1lX2Zvcl9xdWV1ZShzZWxmLl9xdWV1ZV9uYW1l
KQorCisgICAgZGVmIF9sYXN0X3N0YXR1c19kYXRlKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2Vs
Zi5fbGFzdF9zdGF0dXM6CisgICAgICAgICAgICByZXR1cm4gTm9uZQorICAgICAgICByZXR1cm4g
c2VsZi5fbGFzdF9zdGF0dXMuZGF0ZQorCisgICAgZGVmIGxhc3RfaGVhcmRfZnJvbShzZWxmKToK
KyAgICAgICAgaWYgbm90IHNlbGYuX3dvcmtfaXRlbXM6CisgICAgICAgICAgICByZXR1cm4gc2Vs
Zi5fbGFzdF9zdGF0dXNfZGF0ZSgpCisgICAgICAgIHJldHVybiBtYXgoc2VsZi5fbGFzdF9zdGF0
dXNfZGF0ZSgpLCBzZWxmLl93b3JrX2l0ZW1zLmRhdGUpCisKKyAgICBkZWYgaXNfYWxpdmUoc2Vs
Zik6CisgICAgICAgIGlmIG5vdCBzZWxmLmxhc3RfaGVhcmRfZnJvbSgpOgorICAgICAgICAgICAg
cmV0dXJuIEZhbHNlCisgICAgICAgIHJldHVybiBzZWxmLmxhc3RfaGVhcmRfZnJvbSgpID4gKGRh
dGV0aW1lLmRhdGV0aW1lLm5vdygpIC0gZGF0ZXRpbWUudGltZWRlbHRhKG1pbnV0ZXM9MzApKQor
CisgICAgZGVmIHN0YXR1c19jbGFzcyhzZWxmKToKKyAgICAgICAgaWYgbm90IHNlbGYuaXNfYWxp
dmUoKToKKyAgICAgICAgICAgIHJldHVybiAiZGVhZCIKKyAgICAgICAgaWYgc2VsZi5wZW5kaW5n
X2l0ZW1zX2NvdW50KCkgPiAxOgorICAgICAgICAgICAgcmV0dXJuICJiZWhpbmQiCisgICAgICAg
IHJldHVybiAiYWxpdmUiCisKKyAgICBkZWYgc3RhdHVzX3RleHQoc2VsZik6CisgICAgICAgIGlm
IG5vdCBzZWxmLl93b3JrX2l0ZW1zOgorICAgICAgICAgICAgcmV0dXJuICJEaXNjb25uZWN0ZWQi
CisgICAgICAgIGlmIG5vdCBzZWxmLl93b3JrX2l0ZW1zLml0ZW1faWRzOgorICAgICAgICAgICAg
cmV0dXJuICJJZGxlIgorICAgICAgICByZXR1cm4gc2VsZi5fbGFzdF9zdGF0dXMubWVzc2FnZQor
CisgICAgZGVmIHBlbmRpbmdfaXRlbXNfY291bnQoc2VsZik6CisgICAgICAgIGlmIG5vdCBzZWxm
Ll93b3JrX2l0ZW1zOgorICAgICAgICAgICAgcmV0dXJuIDAKKyAgICAgICAgcmV0dXJuIGxlbihz
ZWxmLl93b3JrX2l0ZW1zLml0ZW1faWRzKQorCiAKLWNsYXNzIFJlY2VudFN0YXR1cyh3ZWJhcHAu
UmVxdWVzdEhhbmRsZXIpOgotICAgIGRlZiBfdGl0bGVfY2FzZShzZWxmLCBzdHJpbmcpOgotICAg
ICAgICB3b3JkcyA9IHN0cmluZy5zcGxpdCgiICIpCi0gICAgICAgIHdvcmRzID0gbWFwKGxhbWJk
YSB3b3JkOiB3b3JkLmNhcGl0YWxpemUoKSwgd29yZHMpCi0gICAgICAgIHJldHVybiAiICIuam9p
bih3b3JkcykKLQotICAgIGRlZiBfcHJldHR5X3F1ZXVlX25hbWUoc2VsZiwgcXVldWVfbmFtZSk6
Ci0gICAgICAgIHJldHVybiBzZWxmLl90aXRsZV9jYXNlKHF1ZXVlX25hbWUucmVwbGFjZSgiLSIs
ICIgIikpCi0KLSAgICAjIFdlIGNvdWxkIGNoYW5nZSAiLyIgdG8ganVzdCByZWRpcmVjdCB0byAv
cXVldWUtc3RhdHVzL2NvbW1pdC1xdWV1ZSBpbiB0aGUgZnV0dXJlCi0gICAgIyBhdCB3aGljaCBw
b2ludCB3ZSB3b3VsZCBub3QgbmVlZCBhIGRlZmF1bHQgdmFsdWUgZm9yIHF1ZXVlX25hbWUgaGVy
ZS4KLSAgICBkZWYgZ2V0KHNlbGYsIHF1ZXVlX25hbWU9ImNvbW1pdC1xdWV1ZSIpOgotICAgICAg
ICBxdWV1ZV9zdGF0dXMgPSB7fQotICAgICAgICBmb3IgcXVldWUgaW4gcXVldWVzOgotICAgICAg
ICAgICAgc3RhdHVzZXMgPSBRdWV1ZVN0YXR1cy5hbGwoKS5maWx0ZXIoInF1ZXVlX25hbWUgPSIs
IHF1ZXVlKS5vcmRlcigiLWRhdGUiKS5mZXRjaCg2KQotICAgICAgICAgICAgaWYgbm90IHN0YXR1
c2VzOgotICAgICAgICAgICAgICAgIGNvbnRpbnVlCi0gICAgICAgICAgICBxdWV1ZV9zdGF0dXNb
cXVldWVdID0gc3RhdHVzZXMKK2NsYXNzIFF1ZXVlc092ZXJ2aWV3KHdlYmFwcC5SZXF1ZXN0SGFu
ZGxlcik6CiAKKyAgICBkZWYgZ2V0KHNlbGYpOgogICAgICAgICB0ZW1wbGF0ZV92YWx1ZXMgPSB7
Ci0gICAgICAgICAgICAicXVldWVfc3RhdHVzIiA6IHF1ZXVlX3N0YXR1cywKKyAgICAgICAgICAg
ICJxdWV1ZXMiOiBbUXVldWVCdWJibGUocXVldWVfbmFtZSkgZm9yIHF1ZXVlX25hbWUgaW4gcXVl
dWVzXSwKICAgICAgICAgfQogICAgICAgICBzZWxmLnJlc3BvbnNlLm91dC53cml0ZSh0ZW1wbGF0
ZS5yZW5kZXIoInRlbXBsYXRlcy9yZWNlbnRzdGF0dXMuaHRtbCIsIHRlbXBsYXRlX3ZhbHVlcykp
CmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci9tYWluLnB5IGIvV2Vi
S2l0VG9vbHMvUXVldWVTdGF0dXNTZXJ2ZXIvbWFpbi5weQppbmRleCBmYjZmYzRiZjc0ZjI1ZDc1
NmVmZTJiZTZlMzlkYzhkMDhkNmY0ODNjLi5lNTUwZGM1ZjQ1NTMwOTdiMmYwMTU1MTJjY2ZjYTFi
YTRiZDFhNjIwIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci9tYWlu
LnB5CisrKyBiL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL21haW4ucHkKQEAgLTM3LDcg
KzM3LDggQEAgZnJvbSBoYW5kbGVycy5kYXNoYm9hcmQgaW1wb3J0IERhc2hib2FyZAogZnJvbSBo
YW5kbGVycy5nYyBpbXBvcnQgR0MKIGZyb20gaGFuZGxlcnMucGF0Y2ggaW1wb3J0IFBhdGNoCiBm
cm9tIGhhbmRsZXJzLnBhdGNoc3RhdHVzIGltcG9ydCBQYXRjaFN0YXR1cwotZnJvbSBoYW5kbGVy
cy5yZWNlbnRzdGF0dXMgaW1wb3J0IFJlY2VudFN0YXR1cworZnJvbSBoYW5kbGVycy5xdWV1ZXN0
YXR1cyBpbXBvcnQgUXVldWVTdGF0dXMKK2Zyb20gaGFuZGxlcnMucmVjZW50c3RhdHVzIGltcG9y
dCBRdWV1ZXNPdmVydmlldwogZnJvbSBoYW5kbGVycy5zaG93cmVzdWx0cyBpbXBvcnQgU2hvd1Jl
c3VsdHMKIGZyb20gaGFuZGxlcnMuc3RhdHVzYnViYmxlIGltcG9ydCBTdGF0dXNCdWJibGUKIGZy
b20gaGFuZGxlcnMuc3ZucmV2aXNpb24gaW1wb3J0IFNWTlJldmlzaW9uCkBAIC00OSw3ICs1MCw3
IEBAIGZyb20gaGFuZGxlcnMudXBkYXRld29ya2l0ZW1zIGltcG9ydCBVcGRhdGVXb3JrSXRlbXMK
IHdlYmFwcC50ZW1wbGF0ZS5yZWdpc3Rlcl90ZW1wbGF0ZV9saWJyYXJ5KCdmaWx0ZXJzLndlYmtp
dF9leHRyYXMnKQogCiByb3V0ZXMgPSBbCi0gICAgKCcvJywgUmVjZW50U3RhdHVzKSwKKyAgICAo
Jy8nLCBRdWV1ZXNPdmVydmlldyksCiAgICAgKCcvZGFzaGJvYXJkJywgRGFzaGJvYXJkKSwKICAg
ICAoJy9nYycsIEdDKSwKICAgICAocicvcGF0Y2gtc3RhdHVzLyguKikvKC4qKScsIFBhdGNoU3Rh
dHVzKSwKQEAgLTU3LDcgKzU4LDcgQEAgcm91dGVzID0gWwogICAgIChyJy9yZXN1bHRzLyguKikn
LCBTaG93UmVzdWx0cyksCiAgICAgKHInL3N0YXR1cy1idWJibGUvKC4qKScsIFN0YXR1c0J1YmJs
ZSksCiAgICAgKHInL3N2bi1yZXZpc2lvbi8oLiopJywgU1ZOUmV2aXNpb24pLAotICAgIChyJy9x
dWV1ZS1zdGF0dXMvKC4qKScsIFJlY2VudFN0YXR1cyksCisgICAgKHInL3F1ZXVlLXN0YXR1cy8o
LiopJywgUXVldWVTdGF0dXMpLAogICAgICgnL3VwZGF0ZS1zdGF0dXMnLCBVcGRhdGVTdGF0dXMp
LAogICAgICgnL3VwZGF0ZS13b3JrLWl0ZW1zJywgVXBkYXRlV29ya0l0ZW1zKSwKICAgICAoJy91
cGRhdGUtc3ZuLXJldmlzaW9uJywgVXBkYXRlU1ZOUmV2aXNpb24pLApkaWZmIC0tZ2l0IGEvV2Vi
S2l0VG9vbHMvUXVldWVTdGF0dXNTZXJ2ZXIvbW9kZWwvcXVldWVzLnB5IGIvV2ViS2l0VG9vbHMv
UXVldWVTdGF0dXNTZXJ2ZXIvbW9kZWwvcXVldWVzLnB5CmluZGV4IDQ2ZjJmMTU4ZjU0OTQ3ODUx
ZjIyZWViMzViYjZjNmNmM2E0YWFjYTYuLjJmMDg4NGY1YTYzYTNmOTI1NDMwZWFhZDU0N2U3YmQw
ODgzZjNmOGYgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL21vZGVs
L3F1ZXVlcy5weQorKysgYi9XZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci9tb2RlbC9xdWV1
ZXMucHkKQEAgLTQxLDYgKzQxLDI0IEBAIHF1ZXVlcyA9IFsKIF0KIAogCisjIEZJWE1FOiBXZSBu
ZWVkIHNvbWUgc29ydCBvZiBRdWV1ZSBvYmplY3QuCitkZWYgX3RpdGxlX2Nhc2Uoc3RyaW5nKToK
KyAgICB3b3JkcyA9IHN0cmluZy5zcGxpdCgiICIpCisgICAgd29yZHMgPSBtYXAobGFtYmRhIHdv
cmQ6IHdvcmQuY2FwaXRhbGl6ZSgpLCB3b3JkcykKKyAgICByZXR1cm4gIiAiLmpvaW4od29yZHMp
CisKKworZGVmIGRpc3BsYXlfbmFtZV9mb3JfcXVldWUocXVldWVfbmFtZSk6CisgICAgIyBIQUNL
OiBjaHJvbWl1bS1ld3MgaXMgaW5jb3JyZWN0bHkgbmFtZWQuCisgICAgZGlzcGxheV9uYW1lID0g
cXVldWVfbmFtZS5yZXBsYWNlKCJjaHJvbWl1bS1ld3MiLCAiY3ItbGludXgtZXdzIikKKworICAg
IGRpc3BsYXlfbmFtZSA9IGRpc3BsYXlfbmFtZS5yZXBsYWNlKCItIiwgIiAiKQorICAgIGRpc3Bs
YXlfbmFtZSA9IGRpc3BsYXlfbmFtZS5yZXBsYWNlKCJjciIsICJjaHJvbWl1bSIpCisgICAgZGlz
cGxheV9uYW1lID0gX3RpdGxlX2Nhc2UoZGlzcGxheV9uYW1lKQorICAgIGRpc3BsYXlfbmFtZSA9
IGRpc3BsYXlfbmFtZS5yZXBsYWNlKCJFd3MiLCAiRVdTIikKKyAgICByZXR1cm4gZGlzcGxheV9u
YW1lCisKKwogZGVmIG5hbWVfd2l0aF91bmRlcnNjb3JlcyhkYXNoZWRfbmFtZSk6CiAgICAgcmVn
ZXhwID0gcmUuY29tcGlsZSgiLSIpCiAgICAgcmV0dXJuIHJlZ2V4cC5zdWIoIl8iLCBkYXNoZWRf
bmFtZSkKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL3RlbXBsYXRl
cy9xdWV1ZXN0YXR1cy5odG1sIGIvV2ViS2l0VG9vbHMvUXVldWVTdGF0dXNTZXJ2ZXIvdGVtcGxh
dGVzL3F1ZXVlc3RhdHVzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzhjMTI1ZjJlYjYyZmFiYWQwNjVjMjFh
MTYyZjc5MWE4NDgzNzYwZAotLS0gL2Rldi9udWxsCisrKyBiL1dlYktpdFRvb2xzL1F1ZXVlU3Rh
dHVzU2VydmVyL3RlbXBsYXRlcy9xdWV1ZXN0YXR1cy5odG1sCkBAIC0wLDAgKzEsNDQgQEAKKzwh
RE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzx0aXRsZT57eyBkaXNwbGF5X3F1ZXVlX25h
bWUgfX0gU3RhdHVzPC90aXRsZT4KKzxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hl
ZXQiIGhyZWY9Ii9zdHlsZXNoZWV0cy9kYXNoYm9hcmQuY3NzIiAvPgorPC9oZWFkPgorPGJvZHk+
Cis8aDE+e3sgZGlzcGxheV9xdWV1ZV9uYW1lIH19IFN0YXR1czwvaDE+CisKKzxoMz5SZWNlbnQg
U3RhdHVzPC9oMz4KKworPGRpdiBjbGFzcz0ic3RhdHVzLWRldGFpbHMiPgorICA8dWw+CisgICAg
eyUgZm9yIHN0YXR1cyBpbiBzdGF0dXNlcyAlfQorICAgIDxsaT57JSBpZiBzdGF0dXMuYWN0aXZl
X2J1Z19pZCAlfQorICAgIDxzcGFuIGNsYXNzPSJzdGF0dXMtYnVnIj4KKyAgICAgIFBhdGNoIHt7
IHN0YXR1cy5hY3RpdmVfcGF0Y2hfaWR8Zm9yY2VfZXNjYXBlfHdlYmtpdF9hdHRhY2htZW50X2lk
fHNhZmUgfX0gZnJvbSBidWcKKyAgICAgIHt7IHN0YXR1cy5hY3RpdmVfYnVnX2lkfGZvcmNlX2Vz
Y2FwZXx3ZWJraXRfYnVnX2lkfHNhZmUgfX06CisgICAgPC9zcGFuPnslIGVuZGlmICV9CisgICAg
PHNwYW4gY2xhc3M9InN0YXR1cy1tZXNzYWdlIj57eyBzdGF0dXMubWVzc2FnZXxmb3JjZV9lc2Nh
cGV8dXJsaXplfHdlYmtpdF9saW5raWZ5fHNhZmUgfX08L3NwYW4+CisgICAgeyUgaWYgc3RhdHVz
LnJlc3VsdHNfZmlsZSAlfQorICAgIDxzcGFuIGNsYXNzPSJzdGF0dXMtcmVzdWx0cyI+W3t7IHN0
YXR1cy5rZXkuaWR8cmVzdWx0c19saW5rfHNhZmUgfX1dPC9zcGFuPgorICAgIHslIGVuZGlmICV9
CisgICAgPHNwYW4gY2xhc3M9InN0YXR1cy1kYXRlIj57eyBzdGF0dXMuZGF0ZXx0aW1lc2luY2Ug
fX0gYWdvPC9zcGFuPgorICAgIDwvbGk+CisgICAgeyUgZW5kZm9yICV9CisgIDwvdWw+Cis8L2Rp
dj4KKworPGgzPlBhdGNoZXMgaW4gcXVldWU8L2gzPgorPHRhYmxlPgorICAgIDx0cj48dGg+UG9z
aXRpb248L3RoPjx0aD5QYXRjaDwvdGg+PC90cj4KKyAgICB7JSBmb3Igcm93IGluIHdvcmtfaXRl
bV9yb3dzICV9CisgICAgPHRyPgorICAgICAgICA8dGQ+I3t7IGZvcmxvb3AuY291bnRlciB9fTwv
dGQ+CisgICAgICAgIDx0ZD4KKyAgICAgICAgICB7eyByb3cuYXR0YWNobWVudF9pZHxmb3JjZV9l
c2NhcGV8d2Via2l0X2F0dGFjaG1lbnRfaWR8c2FmZSB9fQorICAgICAgICA8L3RkPgorICAgIDwv
dHI+CisgICAgeyUgZW5kZm9yICV9Cis8L3RhYmxlPgorCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9XZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci90ZW1wbGF0ZXMvcmVjZW50c3Rh
dHVzLmh0bWwgYi9XZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci90ZW1wbGF0ZXMvcmVjZW50
c3RhdHVzLmh0bWwKaW5kZXggMmJiOWZiYmRmMjA4Yzg5Njk0Y2U5YTQ1MGZiYjBhYTZhNmJlOWIz
Mi4uODA4ZDhkNzA5ZDA3N2U0YTkzZjc5YmIwNjZiYmFmZWI1NjliOTE0MCAxMDA2NDQKLS0tIGEv
V2ViS2l0VG9vbHMvUXVldWVTdGF0dXNTZXJ2ZXIvdGVtcGxhdGVzL3JlY2VudHN0YXR1cy5odG1s
CisrKyBiL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL3RlbXBsYXRlcy9yZWNlbnRzdGF0
dXMuaHRtbApAQCAtMywyMiArMyw1MiBAQAogPGhlYWQ+CiA8dGl0bGU+V2ViS2l0IFF1ZXVlIFN0
YXR1czwvdGl0bGU+CiA8bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVm
PSIvc3R5bGVzaGVldHMvZGFzaGJvYXJkLmNzcyIgLz4KKzxzdHlsZT4KKy5xdWV1ZV9idWJibGUg
eworICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrOworICAgIG1hcmdpbi1ib3R0b206IDEwcHg7
CisgICAgYm9yZGVyLXJhZGl1czogMTBweDsKKyAgICBwYWRkaW5nOiA1cHg7Cit9CisucXVldWVf
bmFtZSB7CisgICAgZmxvYXQ6bGVmdDsKK30KKy5sYXN0X2hlYXJkX2Zyb20geworICAgIGZsb2F0
OiByaWdodDsKK30KKy5zdGF0dXNfdGV4dCB7CisgICAgY2xlYXI6IGJvdGg7Cit9CisuYWxpdmUg
eworICAgIGJhY2tncm91bmQtY29sb3I6ICM4RkRGNUY7Cit9CisuYmVoaW5kIHsKKyAgICBiYWNr
Z3JvdW5kLWNvbG9yOiAjRkZGQzZDOworfQorLmRlYWQgeworICAgIGJhY2tncm91bmQtY29sb3I6
ICNFOTgwODA7Cit9Cis8L3N0eWxlPgogPC9oZWFkPgogPGJvZHk+Ci08aDE+V2ViS2l0IFF1ZXVl
IFN0YXR1czwvaDE+eyUgZm9yIHF1ZXVlX25hbWUsIHN0YXR1c2VzIGluIHF1ZXVlX3N0YXR1cy5p
dGVtcyAlfQotPGRpdiBjbGFzcz0ic3RhdHVzLWRldGFpbHMiPgotICA8aDI+e3sgcXVldWVfbmFt
ZSB9fTwvaDI+Ci0gIDx1bD57JSBmb3Igc3RhdHVzIGluIHN0YXR1c2VzICV9Ci0gICAgPGxpPnsl
IGlmIHN0YXR1cy5hY3RpdmVfYnVnX2lkICV9Ci0gICAgICA8c3BhbiBjbGFzcz0ic3RhdHVzLWJ1
ZyI+Ci0gICAgICAgIFBhdGNoIHt7IHN0YXR1cy5hY3RpdmVfcGF0Y2hfaWR8Zm9yY2VfZXNjYXBl
fHdlYmtpdF9hdHRhY2htZW50X2lkfHNhZmUgfX0gZnJvbSBidWcKLSAgICAgICAge3sgc3RhdHVz
LmFjdGl2ZV9idWdfaWR8Zm9yY2VfZXNjYXBlfHdlYmtpdF9idWdfaWR8c2FmZSB9fToKLSAgICAg
IDwvc3Bhbj57JSBlbmRpZiAlfQotICAgICAgPHNwYW4gY2xhc3M9InN0YXR1cy1tZXNzYWdlIj57
eyBzdGF0dXMubWVzc2FnZXxmb3JjZV9lc2NhcGV8dXJsaXplfHdlYmtpdF9saW5raWZ5fHNhZmUg
fX08L3NwYW4+eyUgaWYgc3RhdHVzLnJlc3VsdHNfZmlsZSAlfQotICAgICAgPHNwYW4gY2xhc3M9
InN0YXR1cy1yZXN1bHRzIj5be3sgc3RhdHVzLmtleS5pZHxyZXN1bHRzX2xpbmt8c2FmZSB9fV08
L3NwYW4+eyUgZW5kaWYgJX0KLSAgICAgIDxzcGFuIGNsYXNzPSJzdGF0dXMtZGF0ZSI+e3sgc3Rh
dHVzLmRhdGV8dGltZXNpbmNlIH19IGFnbzwvc3Bhbj4KLSAgICA8L2xpPnslIGVuZGZvciAlfQot
ICA8L3VsPgotPC9kaXY+eyUgZW5kZm9yICV9Cis8aDE+V2ViS2l0IFF1ZXVlIFN0YXR1czwvaDE+
Cit7JSBmb3IgcXVldWUgaW4gcXVldWVzICV9Cis8ZGl2IGNsYXNzPSJxdWV1ZV9idWJibGUge3sg
cXVldWUuc3RhdHVzX2NsYXNzIH19Ij4KKyAgICA8ZGl2IGNsYXNzPSJxdWV1ZV9uYW1lIj4KKyAg
ICAgICAgPGEgaHJlZj0iL3F1ZXVlLXN0YXR1cy97eyBxdWV1ZS5uYW1lIH19Ij4KKyAgICAgICAg
e3sgcXVldWUuZGlzcGxheV9uYW1lIH19CisgICAgICAgIDwvYT4KKyAgICA8L2Rpdj4KKyAgICB7
JSBpZiBxdWV1ZS5sYXN0X2hlYXJkX2Zyb20gJX0KKyAgICA8ZGl2IGNsYXNzPSJsYXN0X2hlYXJk
X2Zyb20iPnt7IHF1ZXVlLmxhc3RfaGVhcmRfZnJvbXx0aW1lc2luY2UgfX0gYWdvPC9kaXY+Cisg
ICAgeyUgZW5kaWYgJX0KKyAgICA8ZGl2IGNsYXNzPSJzdGF0dXNfdGV4dCI+CisgICAgICAgIFN0
YXR1czoge3sgcXVldWUuc3RhdHVzX3RleHR8Zm9yY2VfZXNjYXBlfHVybGl6ZXx3ZWJraXRfbGlu
a2lmeXxzYWZlIH19CisgICAgPC9kaXY+CisgICAgPGRpdj4KKyAgICAgICAge3sgcXVldWUucGVu
ZGluZ19pdGVtc19jb3VudCB9fSBwZW5kaW5nCisgICAgPC9kaXY+Cis8L2Rpdj4KK3slIGVuZGZv
ciAlfQogPC9ib2R5PgogPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>63634</attachid>
            <date>2010-08-05 14:19:58 -0700</date>
            <delta_ts>2010-08-05 14:24:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-39562-20100805141956.patch</filename>
            <type>text/plain</type>
            <size>13799</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCA2NTZhMDc2YWJlZmJlYmUwOWQ2Mzc4ZWRkODFmZTg2NjBiOWVkZmNlLi45Y2Y1YTQz
NjRlYWE4NjBhMTQzNGQ0NWUwNDlhMTVjNjM4MDk4MjY5IDEwMDY0NAotLS0gYS9XZWJLaXRUb29s
cy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAK
KzIwMTAtMDUtMjMgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFF1ZXVlU3RhdHVzU2VydmVyIG5l
ZWRzIGJldHRlciBxdWV1ZS1zdGF0dXMgcGFnZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTM5NTYyCisKKyAgICAgICAgVGhlIHByaW1hcnkgZ29hbCBv
ZiB0aGlzIHBhdGNoIGlzIHRvIGRpc3BsYXkgcXVldWUKKyAgICAgICAgcG9zaXRpb25zIHNvbWV3
aGVyZSBvbiB0aGUgc2l0ZSBzbyB0aGF0IGl0J3MgZWFzaWVyCisgICAgICAgIGZvciBjb21taXQt
cXVldWUgdXNlcnMgdG8ga25vdyB3aGVuIHRoZWlyIHBhY2ggd2lsbAorICAgICAgICBiZSBsYW5k
ZWQuICBJIGFsc28gdHJpZWQgdG8gaW1wcm92ZSB0aGUgcm9vdCBwYWdlCisgICAgICAgIHRvIGJl
IG1vcmUgdXNlZnVsIHRoYW4gdGhlIHByZXZpb3VzIHdhbGwgb2Ygc3RhdHVzIHRleHQuCisKKyAg
ICAgICAgKiBRdWV1ZVN0YXR1c1NlcnZlci9oYW5kbGVycy9yZWNlbnRzdGF0dXMucHk6CisgICAg
ICAgICogUXVldWVTdGF0dXNTZXJ2ZXIvbWFpbi5weToKKyAgICAgICAgKiBRdWV1ZVN0YXR1c1Nl
cnZlci9tb2RlbC9xdWV1ZXMucHk6CisgICAgICAgICogUXVldWVTdGF0dXNTZXJ2ZXIvdGVtcGxh
dGVzL3JlY2VudHN0YXR1cy5odG1sOgorCiAyMDEwLTA4LTA1ICBKaWFuIExpICA8amlhbmxpQGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXZpZCBMZXZpbi4KZGlmZiAtLWdp
dCBhL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL2hhbmRsZXJzL3F1ZXVlc3RhdHVzLnB5
IGIvV2ViS2l0VG9vbHMvUXVldWVTdGF0dXNTZXJ2ZXIvaGFuZGxlcnMvcXVldWVzdGF0dXMucHkK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNjI4MmE5ODBlNzA3YmYwZmEwZWY3YzJlMjk5YTA1YzYyYTI1Y2QyNwotLS0g
L2Rldi9udWxsCisrKyBiL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL2hhbmRsZXJzL3F1
ZXVlc3RhdHVzLnB5CkBAIC0wLDAgKzEsNTggQEAKKyMgQ29weXJpZ2h0IChDKSAyMDEwIEdvb2ds
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisjCisjIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorIyBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlCisjIG1ldDoKKyMKKyMgICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorIyAgICAgKiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisjIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIKKyMgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZQorIyBkaXN0cmlidXRpb24uCisjICAgICAqIE5laXRoZXIgdGhlIG5hbWUg
b2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyMgY29udHJpYnV0b3JzIG1heSBi
ZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyMgdGhp
cyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyMK
KyMgVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5E
IENPTlRSSUJVVE9SUworIyAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorIyBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyMgQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQK
KyMgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsCisjIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyMgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisjIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WQorIyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUCisjIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCitmcm9tIGdv
b2dsZS5hcHBlbmdpbmUuZXh0IGltcG9ydCB3ZWJhcHAKK2Zyb20gZ29vZ2xlLmFwcGVuZ2luZS5l
eHQud2ViYXBwIGltcG9ydCB0ZW1wbGF0ZQorCitmcm9tIG1vZGVsLnF1ZXVlcyBpbXBvcnQgcXVl
dWVzLCBkaXNwbGF5X25hbWVfZm9yX3F1ZXVlCitmcm9tIG1vZGVsLndvcmtpdGVtcyBpbXBvcnQg
V29ya0l0ZW1zCisKK2Zyb20gbW9kZWwgaW1wb3J0IHF1ZXVlc3RhdHVzCisKKworY2xhc3MgUXVl
dWVTdGF0dXMod2ViYXBwLlJlcXVlc3RIYW5kbGVyKToKKyAgICBkZWYgX3Jvd3NfZm9yX3dvcmtf
aXRlbXMoc2VsZiwgd29ya19pdGVtcyk6CisgICAgICAgIGlmIG5vdCB3b3JrX2l0ZW1zOgorICAg
ICAgICAgICAgcmV0dXJuIFtdCisgICAgICAgIHJvd3MgPSBbXQorICAgICAgICBmb3IgaXRlbV9p
ZCBpbiB3b3JrX2l0ZW1zLml0ZW1faWRzOgorICAgICAgICAgICAgcm93cy5hcHBlbmQoeworICAg
ICAgICAgICAgICAgICJhdHRhY2htZW50X2lkIjogaXRlbV9pZCwKKyAgICAgICAgICAgICAgICAi
YnVnX2lkIjogMSwKKyAgICAgICAgICAgIH0pCisgICAgICAgIHJldHVybiByb3dzCisKKyAgICBk
ZWYgZ2V0KHNlbGYsIHF1ZXVlX25hbWUpOgorICAgICAgICB3b3JrX2l0ZW1zID0gV29ya0l0ZW1z
LmFsbCgpLmZpbHRlcigicXVldWVfbmFtZSA9IiwgcXVldWVfbmFtZSkuZ2V0KCkKKyAgICAgICAg
c3RhdHVzZXMgPSBxdWV1ZXN0YXR1cy5RdWV1ZVN0YXR1cy5hbGwoKS5maWx0ZXIoInF1ZXVlX25h
bWUgPSIsIHF1ZXVlX25hbWUpLm9yZGVyKCItZGF0ZSIpLmZldGNoKDYpCisgICAgICAgIHRlbXBs
YXRlX3ZhbHVlcyA9IHsKKyAgICAgICAgICAgICJkaXNwbGF5X3F1ZXVlX25hbWUiOiBkaXNwbGF5
X25hbWVfZm9yX3F1ZXVlKHF1ZXVlX25hbWUpLAorICAgICAgICAgICAgIndvcmtfaXRlbV9yb3dz
Ijogc2VsZi5fcm93c19mb3Jfd29ya19pdGVtcyh3b3JrX2l0ZW1zKSwKKyAgICAgICAgICAgICJz
dGF0dXNlcyI6IHN0YXR1c2VzLAorICAgICAgICB9CisgICAgICAgIHNlbGYucmVzcG9uc2Uub3V0
LndyaXRlKHRlbXBsYXRlLnJlbmRlcigidGVtcGxhdGVzL3F1ZXVlc3RhdHVzLmh0bWwiLCB0ZW1w
bGF0ZV92YWx1ZXMpKQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvUXVldWVTdGF0dXNTZXJ2ZXIv
aGFuZGxlcnMvcmVjZW50c3RhdHVzLnB5IGIvV2ViS2l0VG9vbHMvUXVldWVTdGF0dXNTZXJ2ZXIv
aGFuZGxlcnMvcmVjZW50c3RhdHVzLnB5CmluZGV4IGQxZGY3OGM5MDVmYmVlZWUxMjg0YjQwZWZm
ZGExZjcyYjIwYTJiNTIuLmUyYjhjMmYxN2JlY2I5NGNiNjQwNDkyYWY1Zjg3YTM3ZTY3MTRjYjgg
MTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL2hhbmRsZXJzL3JlY2Vu
dHN0YXR1cy5weQorKysgYi9XZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci9oYW5kbGVycy9y
ZWNlbnRzdGF0dXMucHkKQEAgLTI2LDMyICsyNiw2OCBAQAogIyAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKICMgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KIAoraW1wb3J0IGRhdGV0aW1lCisKIGZyb20gZ29vZ2xlLmFwcGVuZ2luZS5leHQg
aW1wb3J0IHdlYmFwcAogZnJvbSBnb29nbGUuYXBwZW5naW5lLmV4dC53ZWJhcHAgaW1wb3J0IHRl
bXBsYXRlCiAKLWZyb20gbW9kZWwucXVldWVzIGltcG9ydCBxdWV1ZXMKK2Zyb20gbW9kZWwucXVl
dWVzIGltcG9ydCBxdWV1ZXMsIGRpc3BsYXlfbmFtZV9mb3JfcXVldWUKIGZyb20gbW9kZWwucXVl
dWVzdGF0dXMgaW1wb3J0IFF1ZXVlU3RhdHVzCitmcm9tIG1vZGVsLndvcmtpdGVtcyBpbXBvcnQg
V29ya0l0ZW1zCisKKworY2xhc3MgUXVldWVCdWJibGUob2JqZWN0KToKKyAgICAiIiJWaWV3IHN1
cHBvcnQgY2xhc3MgZm9yIHJlY2VudHN0YXR1cy5odG1sIiIiCisgICAgZGVmIF9faW5pdF9fKHNl
bGYsIHF1ZXVlX25hbWUpOgorICAgICAgICBzZWxmLl9xdWV1ZV9uYW1lID0gcXVldWVfbmFtZQor
ICAgICAgICBzZWxmLl93b3JrX2l0ZW1zID0gV29ya0l0ZW1zLmFsbCgpLmZpbHRlcigicXVldWVf
bmFtZSA9IiwgcXVldWVfbmFtZSkuZ2V0KCkKKyAgICAgICAgc2VsZi5fbGFzdF9zdGF0dXMgPSBR
dWV1ZVN0YXR1cy5hbGwoKS5maWx0ZXIoInF1ZXVlX25hbWUgPSIsIHF1ZXVlX25hbWUpLm9yZGVy
KCItZGF0ZSIpLmdldCgpCisKKyAgICBkZWYgbmFtZShzZWxmKToKKyAgICAgICAgcmV0dXJuIHNl
bGYuX3F1ZXVlX25hbWUKKworICAgIGRlZiBkaXNwbGF5X25hbWUoc2VsZik6CisgICAgICAgIHJl
dHVybiBkaXNwbGF5X25hbWVfZm9yX3F1ZXVlKHNlbGYuX3F1ZXVlX25hbWUpCisKKyAgICBkZWYg
X2xhc3Rfc3RhdHVzX2RhdGUoc2VsZik6CisgICAgICAgIGlmIG5vdCBzZWxmLl9sYXN0X3N0YXR1
czoKKyAgICAgICAgICAgIHJldHVybiBOb25lCisgICAgICAgIHJldHVybiBzZWxmLl9sYXN0X3N0
YXR1cy5kYXRlCisKKyAgICBkZWYgbGFzdF9oZWFyZF9mcm9tKHNlbGYpOgorICAgICAgICBpZiBu
b3Qgc2VsZi5fd29ya19pdGVtczoKKyAgICAgICAgICAgIHJldHVybiBzZWxmLl9sYXN0X3N0YXR1
c19kYXRlKCkKKyAgICAgICAgcmV0dXJuIG1heChzZWxmLl9sYXN0X3N0YXR1c19kYXRlKCksIHNl
bGYuX3dvcmtfaXRlbXMuZGF0ZSkKKworICAgIGRlZiBpc19hbGl2ZShzZWxmKToKKyAgICAgICAg
aWYgbm90IHNlbGYubGFzdF9oZWFyZF9mcm9tKCk6CisgICAgICAgICAgICByZXR1cm4gRmFsc2UK
KyAgICAgICAgcmV0dXJuIHNlbGYubGFzdF9oZWFyZF9mcm9tKCkgPiAoZGF0ZXRpbWUuZGF0ZXRp
bWUubm93KCkgLSBkYXRldGltZS50aW1lZGVsdGEobWludXRlcz0zMCkpCisKKyAgICBkZWYgc3Rh
dHVzX2NsYXNzKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5pc19hbGl2ZSgpOgorICAgICAg
ICAgICAgcmV0dXJuICJkZWFkIgorICAgICAgICBpZiBzZWxmLnBlbmRpbmdfaXRlbXNfY291bnQo
KSA+IDE6CisgICAgICAgICAgICByZXR1cm4gImJlaGluZCIKKyAgICAgICAgcmV0dXJuICJhbGl2
ZSIKKworICAgIGRlZiBzdGF0dXNfdGV4dChzZWxmKToKKyAgICAgICAgaWYgbm90IHNlbGYuX3dv
cmtfaXRlbXM6CisgICAgICAgICAgICByZXR1cm4gIk9mZmxpbmUiCisgICAgICAgIGlmIG5vdCBz
ZWxmLl93b3JrX2l0ZW1zLml0ZW1faWRzOgorICAgICAgICAgICAgcmV0dXJuICJJZGxlIgorICAg
ICAgICByZXR1cm4gc2VsZi5fbGFzdF9zdGF0dXMubWVzc2FnZQorCisgICAgZGVmIHBlbmRpbmdf
aXRlbXNfY291bnQoc2VsZik6CisgICAgICAgIGlmIG5vdCBzZWxmLl93b3JrX2l0ZW1zOgorICAg
ICAgICAgICAgcmV0dXJuIDAKKyAgICAgICAgcmV0dXJuIGxlbihzZWxmLl93b3JrX2l0ZW1zLml0
ZW1faWRzKQorCiAKLWNsYXNzIFJlY2VudFN0YXR1cyh3ZWJhcHAuUmVxdWVzdEhhbmRsZXIpOgot
ICAgIGRlZiBfdGl0bGVfY2FzZShzZWxmLCBzdHJpbmcpOgotICAgICAgICB3b3JkcyA9IHN0cmlu
Zy5zcGxpdCgiICIpCi0gICAgICAgIHdvcmRzID0gbWFwKGxhbWJkYSB3b3JkOiB3b3JkLmNhcGl0
YWxpemUoKSwgd29yZHMpCi0gICAgICAgIHJldHVybiAiICIuam9pbih3b3JkcykKLQotICAgIGRl
ZiBfcHJldHR5X3F1ZXVlX25hbWUoc2VsZiwgcXVldWVfbmFtZSk6Ci0gICAgICAgIHJldHVybiBz
ZWxmLl90aXRsZV9jYXNlKHF1ZXVlX25hbWUucmVwbGFjZSgiLSIsICIgIikpCi0KLSAgICAjIFdl
IGNvdWxkIGNoYW5nZSAiLyIgdG8ganVzdCByZWRpcmVjdCB0byAvcXVldWUtc3RhdHVzL2NvbW1p
dC1xdWV1ZSBpbiB0aGUgZnV0dXJlCi0gICAgIyBhdCB3aGljaCBwb2ludCB3ZSB3b3VsZCBub3Qg
bmVlZCBhIGRlZmF1bHQgdmFsdWUgZm9yIHF1ZXVlX25hbWUgaGVyZS4KLSAgICBkZWYgZ2V0KHNl
bGYsIHF1ZXVlX25hbWU9ImNvbW1pdC1xdWV1ZSIpOgotICAgICAgICBxdWV1ZV9zdGF0dXMgPSB7
fQotICAgICAgICBmb3IgcXVldWUgaW4gcXVldWVzOgotICAgICAgICAgICAgc3RhdHVzZXMgPSBR
dWV1ZVN0YXR1cy5hbGwoKS5maWx0ZXIoInF1ZXVlX25hbWUgPSIsIHF1ZXVlKS5vcmRlcigiLWRh
dGUiKS5mZXRjaCg2KQotICAgICAgICAgICAgaWYgbm90IHN0YXR1c2VzOgotICAgICAgICAgICAg
ICAgIGNvbnRpbnVlCi0gICAgICAgICAgICBxdWV1ZV9zdGF0dXNbcXVldWVdID0gc3RhdHVzZXMK
K2NsYXNzIFF1ZXVlc092ZXJ2aWV3KHdlYmFwcC5SZXF1ZXN0SGFuZGxlcik6CiAKKyAgICBkZWYg
Z2V0KHNlbGYpOgogICAgICAgICB0ZW1wbGF0ZV92YWx1ZXMgPSB7Ci0gICAgICAgICAgICAicXVl
dWVfc3RhdHVzIiA6IHF1ZXVlX3N0YXR1cywKKyAgICAgICAgICAgICJxdWV1ZXMiOiBbUXVldWVC
dWJibGUocXVldWVfbmFtZSkgZm9yIHF1ZXVlX25hbWUgaW4gcXVldWVzXSwKICAgICAgICAgfQog
ICAgICAgICBzZWxmLnJlc3BvbnNlLm91dC53cml0ZSh0ZW1wbGF0ZS5yZW5kZXIoInRlbXBsYXRl
cy9yZWNlbnRzdGF0dXMuaHRtbCIsIHRlbXBsYXRlX3ZhbHVlcykpCmRpZmYgLS1naXQgYS9XZWJL
aXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci9tYWluLnB5IGIvV2ViS2l0VG9vbHMvUXVldWVTdGF0
dXNTZXJ2ZXIvbWFpbi5weQppbmRleCBmYjZmYzRiZjc0ZjI1ZDc1NmVmZTJiZTZlMzlkYzhkMDhk
NmY0ODNjLi5lNTUwZGM1ZjQ1NTMwOTdiMmYwMTU1MTJjY2ZjYTFiYTRiZDFhNjIwIDEwMDY0NAot
LS0gYS9XZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci9tYWluLnB5CisrKyBiL1dlYktpdFRv
b2xzL1F1ZXVlU3RhdHVzU2VydmVyL21haW4ucHkKQEAgLTM3LDcgKzM3LDggQEAgZnJvbSBoYW5k
bGVycy5kYXNoYm9hcmQgaW1wb3J0IERhc2hib2FyZAogZnJvbSBoYW5kbGVycy5nYyBpbXBvcnQg
R0MKIGZyb20gaGFuZGxlcnMucGF0Y2ggaW1wb3J0IFBhdGNoCiBmcm9tIGhhbmRsZXJzLnBhdGNo
c3RhdHVzIGltcG9ydCBQYXRjaFN0YXR1cwotZnJvbSBoYW5kbGVycy5yZWNlbnRzdGF0dXMgaW1w
b3J0IFJlY2VudFN0YXR1cworZnJvbSBoYW5kbGVycy5xdWV1ZXN0YXR1cyBpbXBvcnQgUXVldWVT
dGF0dXMKK2Zyb20gaGFuZGxlcnMucmVjZW50c3RhdHVzIGltcG9ydCBRdWV1ZXNPdmVydmlldwog
ZnJvbSBoYW5kbGVycy5zaG93cmVzdWx0cyBpbXBvcnQgU2hvd1Jlc3VsdHMKIGZyb20gaGFuZGxl
cnMuc3RhdHVzYnViYmxlIGltcG9ydCBTdGF0dXNCdWJibGUKIGZyb20gaGFuZGxlcnMuc3ZucmV2
aXNpb24gaW1wb3J0IFNWTlJldmlzaW9uCkBAIC00OSw3ICs1MCw3IEBAIGZyb20gaGFuZGxlcnMu
dXBkYXRld29ya2l0ZW1zIGltcG9ydCBVcGRhdGVXb3JrSXRlbXMKIHdlYmFwcC50ZW1wbGF0ZS5y
ZWdpc3Rlcl90ZW1wbGF0ZV9saWJyYXJ5KCdmaWx0ZXJzLndlYmtpdF9leHRyYXMnKQogCiByb3V0
ZXMgPSBbCi0gICAgKCcvJywgUmVjZW50U3RhdHVzKSwKKyAgICAoJy8nLCBRdWV1ZXNPdmVydmll
dyksCiAgICAgKCcvZGFzaGJvYXJkJywgRGFzaGJvYXJkKSwKICAgICAoJy9nYycsIEdDKSwKICAg
ICAocicvcGF0Y2gtc3RhdHVzLyguKikvKC4qKScsIFBhdGNoU3RhdHVzKSwKQEAgLTU3LDcgKzU4
LDcgQEAgcm91dGVzID0gWwogICAgIChyJy9yZXN1bHRzLyguKiknLCBTaG93UmVzdWx0cyksCiAg
ICAgKHInL3N0YXR1cy1idWJibGUvKC4qKScsIFN0YXR1c0J1YmJsZSksCiAgICAgKHInL3N2bi1y
ZXZpc2lvbi8oLiopJywgU1ZOUmV2aXNpb24pLAotICAgIChyJy9xdWV1ZS1zdGF0dXMvKC4qKScs
IFJlY2VudFN0YXR1cyksCisgICAgKHInL3F1ZXVlLXN0YXR1cy8oLiopJywgUXVldWVTdGF0dXMp
LAogICAgICgnL3VwZGF0ZS1zdGF0dXMnLCBVcGRhdGVTdGF0dXMpLAogICAgICgnL3VwZGF0ZS13
b3JrLWl0ZW1zJywgVXBkYXRlV29ya0l0ZW1zKSwKICAgICAoJy91cGRhdGUtc3ZuLXJldmlzaW9u
JywgVXBkYXRlU1ZOUmV2aXNpb24pLApkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvUXVldWVTdGF0
dXNTZXJ2ZXIvbW9kZWwvcXVldWVzLnB5IGIvV2ViS2l0VG9vbHMvUXVldWVTdGF0dXNTZXJ2ZXIv
bW9kZWwvcXVldWVzLnB5CmluZGV4IDQ2ZjJmMTU4ZjU0OTQ3ODUxZjIyZWViMzViYjZjNmNmM2E0
YWFjYTYuLjJmMDg4NGY1YTYzYTNmOTI1NDMwZWFhZDU0N2U3YmQwODgzZjNmOGYgMTAwNjQ0Ci0t
LSBhL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL21vZGVsL3F1ZXVlcy5weQorKysgYi9X
ZWJLaXRUb29scy9RdWV1ZVN0YXR1c1NlcnZlci9tb2RlbC9xdWV1ZXMucHkKQEAgLTQxLDYgKzQx
LDI0IEBAIHF1ZXVlcyA9IFsKIF0KIAogCisjIEZJWE1FOiBXZSBuZWVkIHNvbWUgc29ydCBvZiBR
dWV1ZSBvYmplY3QuCitkZWYgX3RpdGxlX2Nhc2Uoc3RyaW5nKToKKyAgICB3b3JkcyA9IHN0cmlu
Zy5zcGxpdCgiICIpCisgICAgd29yZHMgPSBtYXAobGFtYmRhIHdvcmQ6IHdvcmQuY2FwaXRhbGl6
ZSgpLCB3b3JkcykKKyAgICByZXR1cm4gIiAiLmpvaW4od29yZHMpCisKKworZGVmIGRpc3BsYXlf
bmFtZV9mb3JfcXVldWUocXVldWVfbmFtZSk6CisgICAgIyBIQUNLOiBjaHJvbWl1bS1ld3MgaXMg
aW5jb3JyZWN0bHkgbmFtZWQuCisgICAgZGlzcGxheV9uYW1lID0gcXVldWVfbmFtZS5yZXBsYWNl
KCJjaHJvbWl1bS1ld3MiLCAiY3ItbGludXgtZXdzIikKKworICAgIGRpc3BsYXlfbmFtZSA9IGRp
c3BsYXlfbmFtZS5yZXBsYWNlKCItIiwgIiAiKQorICAgIGRpc3BsYXlfbmFtZSA9IGRpc3BsYXlf
bmFtZS5yZXBsYWNlKCJjciIsICJjaHJvbWl1bSIpCisgICAgZGlzcGxheV9uYW1lID0gX3RpdGxl
X2Nhc2UoZGlzcGxheV9uYW1lKQorICAgIGRpc3BsYXlfbmFtZSA9IGRpc3BsYXlfbmFtZS5yZXBs
YWNlKCJFd3MiLCAiRVdTIikKKyAgICByZXR1cm4gZGlzcGxheV9uYW1lCisKKwogZGVmIG5hbWVf
d2l0aF91bmRlcnNjb3JlcyhkYXNoZWRfbmFtZSk6CiAgICAgcmVnZXhwID0gcmUuY29tcGlsZSgi
LSIpCiAgICAgcmV0dXJuIHJlZ2V4cC5zdWIoIl8iLCBkYXNoZWRfbmFtZSkKZGlmZiAtLWdpdCBh
L1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL3RlbXBsYXRlcy9xdWV1ZXN0YXR1cy5odG1s
IGIvV2ViS2l0VG9vbHMvUXVldWVTdGF0dXNTZXJ2ZXIvdGVtcGxhdGVzL3F1ZXVlc3RhdHVzLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMzhjMTI1ZjJlYjYyZmFiYWQwNjVjMjFhMTYyZjc5MWE4NDgzNzYwZAot
LS0gL2Rldi9udWxsCisrKyBiL1dlYktpdFRvb2xzL1F1ZXVlU3RhdHVzU2VydmVyL3RlbXBsYXRl
cy9xdWV1ZXN0YXR1cy5odG1sCkBAIC0wLDAgKzEsNDQgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0
bWw+Cis8aGVhZD4KKzx0aXRsZT57eyBkaXNwbGF5X3F1ZXVlX25hbWUgfX0gU3RhdHVzPC90aXRs
ZT4KKzxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9zdHlsZXNo
ZWV0cy9kYXNoYm9hcmQuY3NzIiAvPgorPC9oZWFkPgorPGJvZHk+Cis8aDE+e3sgZGlzcGxheV9x
dWV1ZV9uYW1lIH19IFN0YXR1czwvaDE+CisKKzxoMz5SZWNlbnQgU3RhdHVzPC9oMz4KKworPGRp
diBjbGFzcz0ic3RhdHVzLWRldGFpbHMiPgorICA8dWw+CisgICAgeyUgZm9yIHN0YXR1cyBpbiBz
dGF0dXNlcyAlfQorICAgIDxsaT57JSBpZiBzdGF0dXMuYWN0aXZlX2J1Z19pZCAlfQorICAgIDxz
cGFuIGNsYXNzPSJzdGF0dXMtYnVnIj4KKyAgICAgIFBhdGNoIHt7IHN0YXR1cy5hY3RpdmVfcGF0
Y2hfaWR8Zm9yY2VfZXNjYXBlfHdlYmtpdF9hdHRhY2htZW50X2lkfHNhZmUgfX0gZnJvbSBidWcK
KyAgICAgIHt7IHN0YXR1cy5hY3RpdmVfYnVnX2lkfGZvcmNlX2VzY2FwZXx3ZWJraXRfYnVnX2lk
fHNhZmUgfX06CisgICAgPC9zcGFuPnslIGVuZGlmICV9CisgICAgPHNwYW4gY2xhc3M9InN0YXR1
cy1tZXNzYWdlIj57eyBzdGF0dXMubWVzc2FnZXxmb3JjZV9lc2NhcGV8dXJsaXplfHdlYmtpdF9s
aW5raWZ5fHNhZmUgfX08L3NwYW4+CisgICAgeyUgaWYgc3RhdHVzLnJlc3VsdHNfZmlsZSAlfQor
ICAgIDxzcGFuIGNsYXNzPSJzdGF0dXMtcmVzdWx0cyI+W3t7IHN0YXR1cy5rZXkuaWR8cmVzdWx0
c19saW5rfHNhZmUgfX1dPC9zcGFuPgorICAgIHslIGVuZGlmICV9CisgICAgPHNwYW4gY2xhc3M9
InN0YXR1cy1kYXRlIj57eyBzdGF0dXMuZGF0ZXx0aW1lc2luY2UgfX0gYWdvPC9zcGFuPgorICAg
IDwvbGk+CisgICAgeyUgZW5kZm9yICV9CisgIDwvdWw+Cis8L2Rpdj4KKworPGgzPlBhdGNoZXMg
aW4gcXVldWU8L2gzPgorPHRhYmxlPgorICAgIDx0cj48dGg+UG9zaXRpb248L3RoPjx0aD5QYXRj
aDwvdGg+PC90cj4KKyAgICB7JSBmb3Igcm93IGluIHdvcmtfaXRlbV9yb3dzICV9CisgICAgPHRy
PgorICAgICAgICA8dGQ+I3t7IGZvcmxvb3AuY291bnRlciB9fTwvdGQ+CisgICAgICAgIDx0ZD4K
KyAgICAgICAgICB7eyByb3cuYXR0YWNobWVudF9pZHxmb3JjZV9lc2NhcGV8d2Via2l0X2F0dGFj
aG1lbnRfaWR8c2FmZSB9fQorICAgICAgICA8L3RkPgorICAgIDwvdHI+CisgICAgeyUgZW5kZm9y
ICV9Cis8L3RhYmxlPgorCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9XZWJLaXRUb29s
cy9RdWV1ZVN0YXR1c1NlcnZlci90ZW1wbGF0ZXMvcmVjZW50c3RhdHVzLmh0bWwgYi9XZWJLaXRU
b29scy9RdWV1ZVN0YXR1c1NlcnZlci90ZW1wbGF0ZXMvcmVjZW50c3RhdHVzLmh0bWwKaW5kZXgg
MmJiOWZiYmRmMjA4Yzg5Njk0Y2U5YTQ1MGZiYjBhYTZhNmJlOWIzMi4uODA4ZDhkNzA5ZDA3N2U0
YTkzZjc5YmIwNjZiYmFmZWI1NjliOTE0MCAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvUXVldWVT
dGF0dXNTZXJ2ZXIvdGVtcGxhdGVzL3JlY2VudHN0YXR1cy5odG1sCisrKyBiL1dlYktpdFRvb2xz
L1F1ZXVlU3RhdHVzU2VydmVyL3RlbXBsYXRlcy9yZWNlbnRzdGF0dXMuaHRtbApAQCAtMywyMiAr
Myw1MiBAQAogPGhlYWQ+CiA8dGl0bGU+V2ViS2l0IFF1ZXVlIFN0YXR1czwvdGl0bGU+CiA8bGlu
ayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvc3R5bGVzaGVldHMvZGFz
aGJvYXJkLmNzcyIgLz4KKzxzdHlsZT4KKy5xdWV1ZV9idWJibGUgeworICAgIGJvcmRlcjogMXB4
IHNvbGlkIGJsYWNrOworICAgIG1hcmdpbi1ib3R0b206IDEwcHg7CisgICAgYm9yZGVyLXJhZGl1
czogMTBweDsKKyAgICBwYWRkaW5nOiA1cHg7Cit9CisucXVldWVfbmFtZSB7CisgICAgZmxvYXQ6
bGVmdDsKK30KKy5sYXN0X2hlYXJkX2Zyb20geworICAgIGZsb2F0OiByaWdodDsKK30KKy5zdGF0
dXNfdGV4dCB7CisgICAgY2xlYXI6IGJvdGg7Cit9CisuYWxpdmUgeworICAgIGJhY2tncm91bmQt
Y29sb3I6ICM4RkRGNUY7Cit9CisuYmVoaW5kIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZG
QzZDOworfQorLmRlYWQgeworICAgIGJhY2tncm91bmQtY29sb3I6ICNFOTgwODA7Cit9Cis8L3N0
eWxlPgogPC9oZWFkPgogPGJvZHk+Ci08aDE+V2ViS2l0IFF1ZXVlIFN0YXR1czwvaDE+eyUgZm9y
IHF1ZXVlX25hbWUsIHN0YXR1c2VzIGluIHF1ZXVlX3N0YXR1cy5pdGVtcyAlfQotPGRpdiBjbGFz
cz0ic3RhdHVzLWRldGFpbHMiPgotICA8aDI+e3sgcXVldWVfbmFtZSB9fTwvaDI+Ci0gIDx1bD57
JSBmb3Igc3RhdHVzIGluIHN0YXR1c2VzICV9Ci0gICAgPGxpPnslIGlmIHN0YXR1cy5hY3RpdmVf
YnVnX2lkICV9Ci0gICAgICA8c3BhbiBjbGFzcz0ic3RhdHVzLWJ1ZyI+Ci0gICAgICAgIFBhdGNo
IHt7IHN0YXR1cy5hY3RpdmVfcGF0Y2hfaWR8Zm9yY2VfZXNjYXBlfHdlYmtpdF9hdHRhY2htZW50
X2lkfHNhZmUgfX0gZnJvbSBidWcKLSAgICAgICAge3sgc3RhdHVzLmFjdGl2ZV9idWdfaWR8Zm9y
Y2VfZXNjYXBlfHdlYmtpdF9idWdfaWR8c2FmZSB9fToKLSAgICAgIDwvc3Bhbj57JSBlbmRpZiAl
fQotICAgICAgPHNwYW4gY2xhc3M9InN0YXR1cy1tZXNzYWdlIj57eyBzdGF0dXMubWVzc2FnZXxm
b3JjZV9lc2NhcGV8dXJsaXplfHdlYmtpdF9saW5raWZ5fHNhZmUgfX08L3NwYW4+eyUgaWYgc3Rh
dHVzLnJlc3VsdHNfZmlsZSAlfQotICAgICAgPHNwYW4gY2xhc3M9InN0YXR1cy1yZXN1bHRzIj5b
e3sgc3RhdHVzLmtleS5pZHxyZXN1bHRzX2xpbmt8c2FmZSB9fV08L3NwYW4+eyUgZW5kaWYgJX0K
LSAgICAgIDxzcGFuIGNsYXNzPSJzdGF0dXMtZGF0ZSI+e3sgc3RhdHVzLmRhdGV8dGltZXNpbmNl
IH19IGFnbzwvc3Bhbj4KLSAgICA8L2xpPnslIGVuZGZvciAlfQotICA8L3VsPgotPC9kaXY+eyUg
ZW5kZm9yICV9Cis8aDE+V2ViS2l0IFF1ZXVlIFN0YXR1czwvaDE+Cit7JSBmb3IgcXVldWUgaW4g
cXVldWVzICV9Cis8ZGl2IGNsYXNzPSJxdWV1ZV9idWJibGUge3sgcXVldWUuc3RhdHVzX2NsYXNz
IH19Ij4KKyAgICA8ZGl2IGNsYXNzPSJxdWV1ZV9uYW1lIj4KKyAgICAgICAgPGEgaHJlZj0iL3F1
ZXVlLXN0YXR1cy97eyBxdWV1ZS5uYW1lIH19Ij4KKyAgICAgICAge3sgcXVldWUuZGlzcGxheV9u
YW1lIH19CisgICAgICAgIDwvYT4KKyAgICA8L2Rpdj4KKyAgICB7JSBpZiBxdWV1ZS5sYXN0X2hl
YXJkX2Zyb20gJX0KKyAgICA8ZGl2IGNsYXNzPSJsYXN0X2hlYXJkX2Zyb20iPnt7IHF1ZXVlLmxh
c3RfaGVhcmRfZnJvbXx0aW1lc2luY2UgfX0gYWdvPC9kaXY+CisgICAgeyUgZW5kaWYgJX0KKyAg
ICA8ZGl2IGNsYXNzPSJzdGF0dXNfdGV4dCI+CisgICAgICAgIFN0YXR1czoge3sgcXVldWUuc3Rh
dHVzX3RleHR8Zm9yY2VfZXNjYXBlfHVybGl6ZXx3ZWJraXRfbGlua2lmeXxzYWZlIH19CisgICAg
PC9kaXY+CisgICAgPGRpdj4KKyAgICAgICAge3sgcXVldWUucGVuZGluZ19pdGVtc19jb3VudCB9
fSBwZW5kaW5nCisgICAgPC9kaXY+Cis8L2Rpdj4KK3slIGVuZGZvciAlfQogPC9ib2R5PgogPC9o
dG1sPgo=
</data>
<flag name="review"
          id="52030"
          type_id="1"
          status="+"
          setter="abarth"
    />
          </attachment>
      

    </bug>

</bugzilla>