<?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>64495</bug_id>
          
          <creation_ts>2011-07-13 17:48:56 -0700</creation_ts>
          <short_desc>gardening server should have an API for parsing changelogs</short_desc>
          <delta_ts>2011-07-13 18:39:20 -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>Unspecified</rep_platform>
          <op_sys>Unspecified</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>
          
          <blocked>64183</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Barth">abarth</reporter>
          <assigned_to name="Adam Barth">abarth</assigned_to>
          <cc>eric</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>436796</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-07-13 17:48:56 -0700</bug_when>
    <thetext>gardening server should have an API for parsing changelogs</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>436799</commentid>
    <comment_count>1</comment_count>
      <attachid>100741</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-07-13 17:51:00 -0700</bug_when>
    <thetext>Created attachment 100741
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>436800</commentid>
    <comment_count>2</comment_count>
      <attachid>100741</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-07-13 17:52:42 -0700</bug_when>
    <thetext>Comment on attachment 100741
Patch

I wonder why you wouldn&apos;t want to add a to_json() method to CommitInfo instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>436815</commentid>
    <comment_count>3</comment_count>
      <attachid>100745</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-07-13 18:10:50 -0700</bug_when>
    <thetext>Created attachment 100745
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>436822</commentid>
    <comment_count>4</comment_count>
      <attachid>100745</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-07-13 18:17:51 -0700</bug_when>
    <thetext>Comment on attachment 100745
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=100745&amp;action=review

Seems OK.

&gt; Tools/Scripts/webkitpy/tool/servers/gardeningserver.py:61
&gt; +        head_revision = self.server.tool.scm().head_svn_revision()
&gt; +        if revision &gt; head_revision:

Seems like we want some sort of &quot;includes_revision()&quot; check somewhere here.  Either on this class, or preferably on SCM itself. This is OK, but such code sharing might be better.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>436824</commentid>
    <comment_count>5</comment_count>
      <attachid>100745</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-07-13 18:19:59 -0700</bug_when>
    <thetext>Comment on attachment 100745
Patch

I&apos;m not going to worry about the includes_revision thing now.  These are easy to find later by grepping for head_svn_revision.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>436833</commentid>
    <comment_count>6</comment_count>
      <attachid>100745</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-07-13 18:39:16 -0700</bug_when>
    <thetext>Comment on attachment 100745
Patch

Clearing flags on attachment: 100745

Committed r90968: &lt;http://trac.webkit.org/changeset/90968&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>436834</commentid>
    <comment_count>7</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-07-13 18:39:20 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>100741</attachid>
            <date>2011-07-13 17:51:00 -0700</date>
            <delta_ts>2011-07-13 18:10:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-64495-20110713175059.patch</filename>
            <type>text/plain</type>
            <size>15260</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTA5NTkKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBi
L1Rvb2xzL0NoYW5nZUxvZwppbmRleCA3ZWI3ZmYxNjQyZGJiM2JjMjI3YTRiYzQ5YmRhYTcwMTY2
MDlhMWI0Li4yMDYxZjAxNWYzY2Q4YzI5MTA4ZDY0ZjVmMDQyMDdiOTNlYjczODFiIDEwMDY0NAot
LS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEg
QEAKKzIwMTEtMDctMTMgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKworICAgICAg
ICBnYXJkZW5pbmcgc2VydmVyIHNob3VsZCBoYXZlIGFuIEFQSSBmb3IgcGFyc2luZyBjaGFuZ2Vs
b2dzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NDQ5
NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMg
cGF0Y2ggZXhwb3NlcyBtdWNoIG9mIHRoZSBzYW1lIGluZm9ybWF0aW9uIGZyb20gQ29tbWl0SW5m
byBpbiBhCisgICAgICAgIGRpY3Rpb25hcnkgZm9ybSwgd2hpY2ggaXMgZWFzaWVyIHRvIHNlbmQg
b3Zlci10aGUtd2lyZSBhcyBKU09OIHRvIHRoZQorICAgICAgICBmcm9udGVuZC4KKworICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L2NoZWNrb3V0LnB5OgorICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L2NoZWNrb3V0X3VuaXR0ZXN0LnB5
OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9tb2NrdG9vbC5weToKKyAgICAgICAg
KiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc2VydmVycy9nYXJkZW5pbmdzZXJ2ZXIucHk6CisgICAg
ICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL3NlcnZlcnMvZ2FyZGVuaW5nc2VydmVyX3VuaXR0
ZXN0LnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9zZXJ2ZXJzL3JlZmxlY3Rp
b25oYW5kbGVyLnB5OgorCiAyMDExLTA3LTEzICBYYW4gTG9wZXogIDx4bG9wZXpAaWdhbGlhLmNv
bT4KIAogICAgICAgICBbR1RLXSBGaXggZGlzdGNoZWNrCmRpZmYgLS1naXQgYS9Ub29scy9TY3Jp
cHRzL3dlYmtpdHB5L2NvbW1vbi9jaGVja291dC9jaGVja291dC5weSBiL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L2NoZWNrb3V0LnB5CmluZGV4IDA0M2VkZDE1M2ZhNzE0
NWYyZTFmNWQwZjM0MDAzZjE1N2MxNzlhMmQuLmRiMzMyZWU4Yjk1NjE2NjEwNmVhZjA1ZTIzYzgz
NGJiYTZkZjM0MmMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL2No
ZWNrb3V0L2NoZWNrb3V0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL2No
ZWNrb3V0L2NoZWNrb3V0LnB5CkBAIC01OCw4ICs1OCw5IEBAIGNsYXNzIENoZWNrb3V0KG9iamVj
dCk6CiAgICAgICAgIGNoYW5nZWxvZ19maWxlID0gU3RyaW5nSU8uU3RyaW5nSU8oY2hhbmdlbG9n
X2NvbnRlbnRzLmRlY29kZSgidXRmLTgiLCAiaWdub3JlIikpCiAgICAgICAgIHJldHVybiBDaGFu
Z2VMb2cucGFyc2VfbGF0ZXN0X2VudHJ5X2Zyb21fZmlsZShjaGFuZ2Vsb2dfZmlsZSkKIAotICAg
IGRlZiBjaGFuZ2Vsb2dfZW50cmllc19mb3JfcmV2aXNpb24oc2VsZiwgcmV2aXNpb24pOgotICAg
ICAgICBjaGFuZ2VkX2ZpbGVzID0gc2VsZi5fc2NtLmNoYW5nZWRfZmlsZXNfZm9yX3JldmlzaW9u
KHJldmlzaW9uKQorICAgIGRlZiBjaGFuZ2Vsb2dfZW50cmllc19mb3JfcmV2aXNpb24oc2VsZiwg
cmV2aXNpb24sIGNoYW5nZWRfZmlsZXM9Tm9uZSk6CisgICAgICAgIGlmIG5vdCBjaGFuZ2VkX2Zp
bGVzOgorICAgICAgICAgICAgY2hhbmdlZF9maWxlcyA9IHNlbGYuX3NjbS5jaGFuZ2VkX2ZpbGVz
X2Zvcl9yZXZpc2lvbihyZXZpc2lvbikKICAgICAgICAgIyBGSVhNRTogVGhpcyBnZXRzIGNvbmZ1
c2VkIGlmIENoYW5nZUxvZyBmaWxlcyBhcmUgbW92ZWQsIGFzCiAgICAgICAgICMgZGVsZXRlcyBh
cmUgc3RpbGwgImNoYW5nZWQgZmlsZXMiIHBlciBjaGFuZ2VkX2ZpbGVzX2Zvcl9yZXZpc2lvbi4K
ICAgICAgICAgIyBGSVhNRTogRm9yIG5vdyB3ZSBoYWNrIGFyb3VuZCB0aGlzIGJ5IGNhY2hpbmcg
YW55IGV4Y2VwdGlvbnMKQEAgLTc1LDI3ICs3Niw0OSBAQCBjbGFzcyBDaGVja291dChvYmplY3Qp
OgogICAgICAgICByZXR1cm4gY2hhbmdlbG9nX2VudHJpZXMKIAogICAgIEBtZW1vaXplZAotICAg
IGRlZiBjb21taXRfaW5mb19mb3JfcmV2aXNpb24oc2VsZiwgcmV2aXNpb24pOgotICAgICAgICBj
b21taXR0ZXJfZW1haWwgPSBzZWxmLl9zY20uY29tbWl0dGVyX2VtYWlsX2Zvcl9yZXZpc2lvbihy
ZXZpc2lvbikKLSAgICAgICAgY2hhbmdlbG9nX2VudHJpZXMgPSBzZWxmLmNoYW5nZWxvZ19lbnRy
aWVzX2Zvcl9yZXZpc2lvbihyZXZpc2lvbikKKyAgICBkZWYgX2NoYW5nZWxvZ19kYXRhX2Zvcl9y
ZXZpc2lvbihzZWxmLCByZXZpc2lvbik6CisgICAgICAgIGNoYW5nZWRfZmlsZXMgPSBzZWxmLl9z
Y20uY2hhbmdlZF9maWxlc19mb3JfcmV2aXNpb24ocmV2aXNpb24pCisgICAgICAgIGNoYW5nZWxv
Z19lbnRyaWVzID0gc2VsZi5jaGFuZ2Vsb2dfZW50cmllc19mb3JfcmV2aXNpb24ocmV2aXNpb24s
IGNoYW5nZWRfZmlsZXM9Y2hhbmdlZF9maWxlcykKICAgICAgICAgIyBBc3N1bWUgZm9yIG5vdyB0
aGF0IHRoZSBmaXJzdCBlbnRyeSBoYXMgZXZlcnl0aGluZyB3ZSBuZWVkOgogICAgICAgICAjIEZJ
WE1FOiBUaGlzIHdpbGwgdGhyb3cgYW4gZXhjZXB0aW9uIGlmIHRoZXJlIHdlcmUgbm8gQ2hhbmdl
TG9ncy4KICAgICAgICAgaWYgbm90IGxlbihjaGFuZ2Vsb2dfZW50cmllcyk6CiAgICAgICAgICAg
ICByZXR1cm4gTm9uZQogICAgICAgICBjaGFuZ2Vsb2dfZW50cnkgPSBjaGFuZ2Vsb2dfZW50cmll
c1swXQotICAgICAgICBjaGFuZ2Vsb2dfZGF0YSA9IHsKKyAgICAgICAgcmV0dXJuIHsKICAgICAg
ICAgICAgICJidWdfaWQiOiBwYXJzZV9idWdfaWRfZnJvbV9jaGFuZ2Vsb2coY2hhbmdlbG9nX2Vu
dHJ5LmNvbnRlbnRzKCkpLAogICAgICAgICAgICAgImF1dGhvcl9uYW1lIjogY2hhbmdlbG9nX2Vu
dHJ5LmF1dGhvcl9uYW1lKCksCiAgICAgICAgICAgICAiYXV0aG9yX2VtYWlsIjogY2hhbmdlbG9n
X2VudHJ5LmF1dGhvcl9lbWFpbCgpLAogICAgICAgICAgICAgImF1dGhvciI6IGNoYW5nZWxvZ19l
bnRyeS5hdXRob3IoKSwKICAgICAgICAgICAgICJyZXZpZXdlcl90ZXh0IjogY2hhbmdlbG9nX2Vu
dHJ5LnJldmlld2VyX3RleHQoKSwKICAgICAgICAgICAgICJyZXZpZXdlciI6IGNoYW5nZWxvZ19l
bnRyeS5yZXZpZXdlcigpLAorICAgICAgICAgICAgImNvbnRlbnRzIjogY2hhbmdlbG9nX2VudHJ5
LmNvbnRlbnRzKCksCisgICAgICAgICAgICAiY2hhbmdlZF9maWxlcyI6IGNoYW5nZWRfZmlsZXMs
CiAgICAgICAgIH0KKworICAgIGRlZiBjb21taXRfaW5mb19mb3JfcmV2aXNpb24oc2VsZiwgcmV2
aXNpb24pOgorICAgICAgICBjb21taXR0ZXJfZW1haWwgPSBzZWxmLl9zY20uY29tbWl0dGVyX2Vt
YWlsX2Zvcl9yZXZpc2lvbihyZXZpc2lvbikKKyAgICAgICAgY2hhbmdlbG9nX2RhdGEgPSBzZWxm
Ll9jaGFuZ2Vsb2dfZGF0YV9mb3JfcmV2aXNpb24ocmV2aXNpb24pCisgICAgICAgIGlmIG5vdCBj
aGFuZ2Vsb2dfZGF0YToKKyAgICAgICAgICAgIHJldHVybiBOb25lCiAgICAgICAgICMgV2UgY291
bGQgcGFzcyB0aGUgY2hhbmdlbG9nX2VudHJ5IGluc3RlYWQgb2YgYSBkaWN0aW9uYXJ5IGhlcmUs
IGJ1dCB0aGF0IG1ha2VzCiAgICAgICAgICMgbW9ja2luZyBzbGlnaHRseSBtb3JlIGludm9sdmVk
LCBhbmQgd291bGQgbWFrZSBhZ2dyZWdhdGluZyBkYXRhIGZyb20gbXVsdGlwbGUKICAgICAgICAg
IyBlbnRyaWVzIG1vcmUgZGlmZmljdWx0IHRvIHdpcmUgaW4gaWYgd2UgbmVlZCB0byBkbyB0aGF0
IGluIHRoZSBmdXR1cmUuCiAgICAgICAgIHJldHVybiBDb21taXRJbmZvKHJldmlzaW9uLCBjb21t
aXR0ZXJfZW1haWwsIGNoYW5nZWxvZ19kYXRhKQogCisgICAgIyBSZXR1cm5zIGEgcHVyZS1kYXRh
IHN1YnNldCBvZiBjaGFuZ2Vsb2dfZGF0YS4KKyAgICBkZWYgY2hhbmdlbG9nX2FzX2pzb25fZm9y
X3JldmlzaW9uKHNlbGYsIHJldmlzaW9uKToKKyAgICAgICAgY2hhbmdlbG9nX2RhdGEgPSBzZWxm
Ll9jaGFuZ2Vsb2dfZGF0YV9mb3JfcmV2aXNpb24ocmV2aXNpb24pCisgICAgICAgIGlmIG5vdCBj
aGFuZ2Vsb2dfZGF0YToKKyAgICAgICAgICAgIHJldHVybiB7fQorICAgICAgICByZXR1cm4gewor
ICAgICAgICAgICAgImJ1Z19pZCI6IGNoYW5nZWxvZ19kYXRhWyJidWdfaWQiXSwKKyAgICAgICAg
ICAgICJhdXRob3JfbmFtZSI6IGNoYW5nZWxvZ19kYXRhWyJhdXRob3JfbmFtZSJdLAorICAgICAg
ICAgICAgImF1dGhvcl9lbWFpbCI6IGNoYW5nZWxvZ19kYXRhWyJhdXRob3JfZW1haWwiXSwKKyAg
ICAgICAgICAgICJyZXZpZXdlcl90ZXh0IjogY2hhbmdlbG9nX2RhdGFbInJldmlld2VyX3RleHQi
XSwKKyAgICAgICAgICAgICJjb250ZW50cyI6IGNoYW5nZWxvZ19kYXRhWyJjb250ZW50cyJdLAor
ICAgICAgICAgICAgImNoYW5nZWRfZmlsZXMiOiBjaGFuZ2Vsb2dfZGF0YVsiY2hhbmdlZF9maWxl
cyJdLAorICAgICAgICB9CisKICAgICBkZWYgYnVnX2lkX2Zvcl9yZXZpc2lvbihzZWxmLCByZXZp
c2lvbik6CiAgICAgICAgIHJldHVybiBzZWxmLmNvbW1pdF9pbmZvX2Zvcl9yZXZpc2lvbihyZXZp
c2lvbikuYnVnX2lkKCkKIApkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21t
b24vY2hlY2tvdXQvY2hlY2tvdXRfdW5pdHRlc3QucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L2NvbW1vbi9jaGVja291dC9jaGVja291dF91bml0dGVzdC5weQppbmRleCBlNjdmYzE2MWIxYmU1
YjRiMDNjMmFhNGEwZTVmNGVjMzhjODFmYWY3Li4xZjYyN2E2OTc3ZGM5OTRjN2RkMTJmMDQ2YjBi
ZTA5N2EyMDdmNTM2IDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9j
aGVja291dC9jaGVja291dF91bml0dGVzdC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L2NvbW1vbi9jaGVja291dC9jaGVja291dF91bml0dGVzdC5weQpAQCAtMTc4LDkgKzE3OCw5IEBA
IGNsYXNzIENoZWNrb3V0VGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAKICAgICBkZWYgdGVzdF9j
b21taXRfaW5mb19mb3JfcmV2aXNpb24oc2VsZik6CiAgICAgICAgIHNjbSA9IE1vY2soKQotICAg
ICAgICBzY20uY29tbWl0dGVyX2VtYWlsX2Zvcl9yZXZpc2lvbiA9IGxhbWJkYSByZXZpc2lvbjog
ImNvbW1pdHRlckBleGFtcGxlLmNvbSIKKyAgICAgICAgc2NtLmNvbW1pdHRlcl9lbWFpbF9mb3Jf
cmV2aXNpb24gPSBsYW1iZGEgcmV2aXNpb24sIGNoYW5nZWRfZmlsZXM9Tm9uZTogImNvbW1pdHRl
ckBleGFtcGxlLmNvbSIKICAgICAgICAgY2hlY2tvdXQgPSBDaGVja291dChzY20pCi0gICAgICAg
IGNoZWNrb3V0LmNoYW5nZWxvZ19lbnRyaWVzX2Zvcl9yZXZpc2lvbiA9IGxhbWJkYSByZXZpc2lv
bjogW0NoYW5nZUxvZ0VudHJ5KF9jaGFuZ2Vsb2cxZW50cnkxKV0KKyAgICAgICAgY2hlY2tvdXQu
Y2hhbmdlbG9nX2VudHJpZXNfZm9yX3JldmlzaW9uID0gbGFtYmRhIHJldmlzaW9uLCBjaGFuZ2Vk
X2ZpbGVzPU5vbmU6IFtDaGFuZ2VMb2dFbnRyeShfY2hhbmdlbG9nMWVudHJ5MSldCiAgICAgICAg
IGNvbW1pdGluZm8gPSBjaGVja291dC5jb21taXRfaW5mb19mb3JfcmV2aXNpb24oNCkKICAgICAg
ICAgc2VsZi5hc3NlcnRFcXVhbChjb21taXRpbmZvLmJ1Z19pZCgpLCAzNjYyOSkKICAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbChjb21taXRpbmZvLmF1dGhvcl9uYW1lKCksIHUiVG9yIEFybmUgVmVz
dGJcdTAwZjgiKQpAQCAtMTkwLDE0ICsxOTAsMzMgQEAgY2xhc3MgQ2hlY2tvdXRUZXN0KHVuaXR0
ZXN0LlRlc3RDYXNlKToKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjb21taXRpbmZvLmNvbW1p
dHRlcl9lbWFpbCgpLCAiY29tbWl0dGVyQGV4YW1wbGUuY29tIikKICAgICAgICAgc2VsZi5hc3Nl
cnRFcXVhbChjb21taXRpbmZvLmNvbW1pdHRlcigpLCBOb25lKQogCi0gICAgICAgIGNoZWNrb3V0
LmNoYW5nZWxvZ19lbnRyaWVzX2Zvcl9yZXZpc2lvbiA9IGxhbWJkYSByZXZpc2lvbjogW10KKyAg
ICAgICAgY2hlY2tvdXQuY2hhbmdlbG9nX2VudHJpZXNfZm9yX3JldmlzaW9uID0gbGFtYmRhIHJl
dmlzaW9uLCBjaGFuZ2VkX2ZpbGVzPU5vbmU6IFtdCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
Y2hlY2tvdXQuY29tbWl0X2luZm9fZm9yX3JldmlzaW9uKDEpLCBOb25lKQogCisgICAgZGVmIHRl
c3RfY2hhbmdlbG9nX2FzX2pzb25fZm9yX3JldmlzaW9uKHNlbGYpOgorICAgICAgICBzY20gPSBN
b2NrKCkKKyAgICAgICAgc2NtLmNoYW5nZWRfZmlsZXNfZm9yX3JldmlzaW9uID0gbGFtYmRhIHJl
dmlzaW9uOiBbJ3BhdGgvdG8vZmlsZScsICdhbm90aGVyL2ZpbGUnXQorICAgICAgICBzY20uY29t
bWl0dGVyX2VtYWlsX2Zvcl9yZXZpc2lvbiA9IGxhbWJkYSByZXZpc2lvbiwgY2hhbmdlZF9maWxl
cz1Ob25lOiAiY29tbWl0dGVyQGV4YW1wbGUuY29tIgorICAgICAgICBjaGVja291dCA9IENoZWNr
b3V0KHNjbSkKKyAgICAgICAgY2hlY2tvdXQuY2hhbmdlbG9nX2VudHJpZXNfZm9yX3JldmlzaW9u
ID0gbGFtYmRhIHJldmlzaW9uLCBjaGFuZ2VkX2ZpbGVzPU5vbmU6IFtDaGFuZ2VMb2dFbnRyeShf
Y2hhbmdlbG9nMWVudHJ5MSldCisgICAgICAgIGNoYW5nZWxvZ19hc19qc29uID0gY2hlY2tvdXQu
Y2hhbmdlbG9nX2FzX2pzb25fZm9yX3JldmlzaW9uKDQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1
YWwoY2hhbmdlbG9nX2FzX2pzb24sIHsKKyAgICAgICAgICAgICdidWdfaWQnOiAzNjYyOSwKKyAg
ICAgICAgICAgICdjb250ZW50cyc6IHUnMjAxMC0wMy0yNSAgVG9yIEFybmUgVmVzdGJceGY4ICA8
dmVzdGJvQHdlYmtpdC5vcmc+XG5cbiAgICAgICAgVW5yZXZpZXdlZCBidWlsZCBmaXggdG8gdW4t
YnJlYWsgd2Via2l0LXBhdGNoIGxhbmQuXG5cbiAgICAgICAgTW92ZSBjb21taXRfbWVzc2FnZV9m
b3JfdGhpc19jb21taXQgZnJvbSBzY20gdG8gY2hlY2tvdXRcbiAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM2NjI5XG5cbiAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L2NvbW1vbi9jaGVja291dC9hcGkucHk6IGltcG9ydCBzY20uQ29tbWl0TWVzc2FnZVxu
JywKKyAgICAgICAgICAgICdhdXRob3JfZW1haWwnOiAndmVzdGJvQHdlYmtpdC5vcmcnLAorICAg
ICAgICAgICAgJ2NoYW5nZWRfZmlsZXMnOiBbCisgICAgICAgICAgICAgICAgJ3BhdGgvdG8vZmls
ZScsCisgICAgICAgICAgICAgICAgJ2Fub3RoZXIvZmlsZScsCisgICAgICAgICAgICBdLAorICAg
ICAgICAgICAgJ3Jldmlld2VyX3RleHQnOiBOb25lLAorICAgICAgICAgICAgJ2F1dGhvcl9uYW1l
JzogdSdUb3IgQXJuZSBWZXN0Ylx4ZjgnLAorICAgICAgICB9KQorCiAgICAgZGVmIHRlc3RfYnVn
X2lkX2Zvcl9yZXZpc2lvbihzZWxmKToKICAgICAgICAgc2NtID0gTW9jaygpCiAgICAgICAgIHNj
bS5jb21taXR0ZXJfZW1haWxfZm9yX3JldmlzaW9uID0gbGFtYmRhIHJldmlzaW9uOiAiY29tbWl0
dGVyQGV4YW1wbGUuY29tIgogICAgICAgICBjaGVja291dCA9IENoZWNrb3V0KHNjbSkKLSAgICAg
ICAgY2hlY2tvdXQuY2hhbmdlbG9nX2VudHJpZXNfZm9yX3JldmlzaW9uID0gbGFtYmRhIHJldmlz
aW9uOiBbQ2hhbmdlTG9nRW50cnkoX2NoYW5nZWxvZzFlbnRyeTEpXQorICAgICAgICBjaGVja291
dC5jaGFuZ2Vsb2dfZW50cmllc19mb3JfcmV2aXNpb24gPSBsYW1iZGEgcmV2aXNpb24sIGNoYW5n
ZWRfZmlsZXM9Tm9uZTogW0NoYW5nZUxvZ0VudHJ5KF9jaGFuZ2Vsb2cxZW50cnkxKV0KICAgICAg
ICAgc2VsZi5hc3NlcnRFcXVhbChjaGVja291dC5idWdfaWRfZm9yX3JldmlzaW9uKDQpLCAzNjYy
OSkKIAogICAgIGRlZiB0ZXN0X2J1Z19pZF9mb3JfdGhpc19jb21taXQoc2VsZik6CkBAIC0yMTUs
NyArMjM0LDcgQEAgY2xhc3MgQ2hlY2tvdXRUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAg
ICAgc2VsZi5hc3NlcnRFcXVhbChjaGVja291dC5tb2RpZmllZF9jaGFuZ2Vsb2dzKGdpdF9jb21t
aXQ9Tm9uZSksIGV4cGVjdGVkX2NoYW5nbG9ncykKIAogICAgIGRlZiB0ZXN0X3N1Z2dlc3RlZF9y
ZXZpZXdlcnMoc2VsZik6Ci0gICAgICAgIGRlZiBtb2NrX2NoYW5nZWxvZ19lbnRyaWVzX2Zvcl9y
ZXZpc2lvbihyZXZpc2lvbik6CisgICAgICAgIGRlZiBtb2NrX2NoYW5nZWxvZ19lbnRyaWVzX2Zv
cl9yZXZpc2lvbihyZXZpc2lvbiwgY2hhbmdlZF9maWxlcz1Ob25lKToKICAgICAgICAgICAgIGlm
IHJldmlzaW9uICUgMiA9PSAwOgogICAgICAgICAgICAgICAgIHJldHVybiBbQ2hhbmdlTG9nRW50
cnkoX2NoYW5nZWxvZzFlbnRyeTEpXQogICAgICAgICAgICAgcmV0dXJuIFtDaGFuZ2VMb2dFbnRy
eShfY2hhbmdlbG9nMWVudHJ5MildCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L3Rvb2wvbW9ja3Rvb2wucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvbW9ja3Rvb2wu
cHkKaW5kZXggYTg1YjZmNmRlYjY3NmMxYTdlYzVkNzhhNDliZDEzMmI1YzY3MDhkYS4uYTEzZTJm
ODQyZDM2ZTA4OGJmMGI5NGFhNmFlODE4ZGExOTUyMmZkNyAxMDA2NDQKLS0tIGEvVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS90b29sL21vY2t0b29sLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvdG9vbC9tb2NrdG9vbC5weQpAQCAtNTQ1LDYgKzU0NSwxOSBAQCBjbGFzcyBNb2NrQ2hlY2tv
dXQob2JqZWN0KToKICAgICAgICAgICAgICJyZXZpZXdlciI6IHNlbGYuX2NvbW1pdHRlcl9saXN0
LmNvbW1pdHRlcl9ieV9uYW1lKCJEYXJpbiBBZGxlciIpLAogICAgICAgICB9KQogCisgICAgZGVm
IGNoYW5nZWxvZ19hc19qc29uX2Zvcl9yZXZpc2lvbihzZWxmLCBzdm5fcmV2aXNpb24pOgorICAg
ICAgICByZXR1cm4geworICAgICAgICAgICAgJ2J1Z19pZCc6IDM2NjI5LAorICAgICAgICAgICAg
J2NvbnRlbnRzJzogdScyMDEwLTAzLTI1ICBUb3IgQXJuZSBWZXN0Ylx4ZjggIDx2ZXN0Ym9Ad2Vi
a2l0Lm9yZz5cblxuICAgICAgICBVbnJldmlld2VkIGJ1aWxkIGZpeCB0byB1bi1icmVhayB3ZWJr
aXQtcGF0Y2ggbGFuZC5cblxuICAgICAgICBNb3ZlIGNvbW1pdF9tZXNzYWdlX2Zvcl90aGlzX2Nv
bW1pdCBmcm9tIHNjbSB0byBjaGVja291dFxuICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MzY2MjlcblxuICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvY29t
bW9uL2NoZWNrb3V0L2FwaS5weTogaW1wb3J0IHNjbS5Db21taXRNZXNzYWdlXG4nLAorICAgICAg
ICAgICAgJ2F1dGhvcl9lbWFpbCc6ICd2ZXN0Ym9Ad2Via2l0Lm9yZycsCisgICAgICAgICAgICAn
Y2hhbmdlZF9maWxlcyc6IFsKKyAgICAgICAgICAgICAgICAncGF0aC90by9maWxlJywKKyAgICAg
ICAgICAgICAgICAnYW5vdGhlci9maWxlJywKKyAgICAgICAgICAgIF0sCisgICAgICAgICAgICAn
cmV2aWV3ZXJfdGV4dCc6IE5vbmUsCisgICAgICAgICAgICAnYXV0aG9yX25hbWUnOiB1J1RvciBB
cm5lIFZlc3RiXHhmOCcsCisgICAgICAgIH0KKwogICAgIGRlZiBpc19wYXRoX3RvX2NoYW5nZWxv
ZyhzZWxmLCBwYXRoKToKICAgICAgICAgcmV0dXJuIG9zLnBhdGguYmFzZW5hbWUocGF0aCkgPT0g
IkNoYW5nZUxvZyIKIApkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3Nl
cnZlcnMvZ2FyZGVuaW5nc2VydmVyLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3Nl
cnZlcnMvZ2FyZGVuaW5nc2VydmVyLnB5CmluZGV4IGUyMDJjYzViODEzZTEyZTVkYzIzMmFlY2Iz
NTVlYWM0NDgyOTE4NTkuLjYxOTVkNTFlNTBkYzgzNzczZjMwYWM3ZGIxNzE4ZTU4NGM4Y2JiNjQg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zZXJ2ZXJzL2dhcmRlbmlu
Z3NlcnZlci5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc2VydmVycy9nYXJk
ZW5pbmdzZXJ2ZXIucHkKQEAgLTU1LDYgKzU1LDE2IEBAIGNsYXNzIEdhcmRlbmluZ0hUVFBSZXF1
ZXN0SGFuZGxlcihSZWZsZWN0aW9uSGFuZGxlcik6CiAgICAgZGVmIF9ydW5fd2Via2l0X3BhdGNo
KHNlbGYsIGFyZ3MpOgogICAgICAgICByZXR1cm4gc2VsZi5zZXJ2ZXIudG9vbC5leGVjdXRpdmUu
cnVuX2NvbW1hbmQoW3NlbGYuc2VydmVyLnRvb2wucGF0aCgpXSArIGFyZ3MpCiAKKyAgICBkZWYg
Y2hhbmdlbG9nKHNlbGYpOgorICAgICAgICByZXZpc2lvbiA9IHNlbGYucXVlcnlbJ3JldmlzaW9u
J11bMF0KKyAgICAgICAgaGVhZF9yZXZpc2lvbiA9IHNlbGYuc2VydmVyLnRvb2wuc2NtKCkuaGVh
ZF9zdm5fcmV2aXNpb24oKQorICAgICAgICBpZiByZXZpc2lvbiA+IGhlYWRfcmV2aXNpb246Cisg
ICAgICAgICAgICAjIFVwZGF0aW5nIHRoZSB3b3JraW5nIGNvcHkgY291bGQgY29uZmxpY3Qgd2l0
aCBhbnkgcmViYXNlbGluZXMgd2UgaGF2ZSBpbiBwcm9ncmVzcy4KKyAgICAgICAgICAgIHVwZGF0
ZV93ZWJraXRfY29tbWFuZCA9IHNlbGYuc2VydmVyLnRvb2wucG9ydCgpLnVwZGF0ZV93ZWJraXRf
Y29tbWFuZCgpCisgICAgICAgICAgICBzZWxmLnNlcnZlci50b29sLmV4ZWN1dGl2ZS5ydW5fYW5k
X3Rocm93X2lmX2ZhaWwodXBkYXRlX3dlYmtpdF9jb21tYW5kLCBxdWlldD1UcnVlKQorICAgICAg
ICBjaGFuZ2Vsb2dfYXNfanNvbiA9IHNlbGYuc2VydmVyLnRvb2wuY2hlY2tvdXQoKS5jaGFuZ2Vs
b2dfYXNfanNvbl9mb3JfcmV2aXNpb24ocmV2aXNpb24pCisgICAgICAgIHNlbGYuX3NlcnZlX2pz
b24oY2hhbmdlbG9nX2FzX2pzb24pCisKICAgICBkZWYgcm9sbG91dChzZWxmKToKICAgICAgICAg
cmV2aXNpb24gPSBzZWxmLnF1ZXJ5WydyZXZpc2lvbiddWzBdCiAgICAgICAgIHJlYXNvbiA9IHNl
bGYucXVlcnlbJ3JlYXNvbiddWzBdCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L3Rvb2wvc2VydmVycy9nYXJkZW5pbmdzZXJ2ZXJfdW5pdHRlc3QucHkgYi9Ub29scy9TY3JpcHRz
L3dlYmtpdHB5L3Rvb2wvc2VydmVycy9nYXJkZW5pbmdzZXJ2ZXJfdW5pdHRlc3QucHkKaW5kZXgg
ZTYwYmM5YTFjODA3MDY0ZDE4N2EzODIxZDIxYWRhOTY3MWUyNThkMC4uMmVhNGU0OTQyOTcyNGUz
MzBkMTI2ODQ5NGExNWVkYTdhNDdmOWM5YyAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS90b29sL3NlcnZlcnMvZ2FyZGVuaW5nc2VydmVyX3VuaXR0ZXN0LnB5CisrKyBiL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zZXJ2ZXJzL2dhcmRlbmluZ3NlcnZlcl91bml0dGVzdC5w
eQpAQCAtMjYsNiArMjYsMTIgQEAKICMgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiAjIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAKK3Ry
eToKKyAgICBpbXBvcnQganNvbgorZXhjZXB0IEltcG9ydEVycm9yOgorICAgICMgcHl0aG9uIDIu
NSBjb21wYXRpYmlsaXR5CisgICAgaW1wb3J0IHdlYmtpdHB5LnRoaXJkcGFydHkuc2ltcGxlanNv
biBhcyBqc29uCisKIGltcG9ydCB1bml0dGVzdAogCiBmcm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0
ZW0ub3V0cHV0Y2FwdHVyZSBpbXBvcnQgT3V0cHV0Q2FwdHVyZQpAQCAtNTEsNiArNTcsMTEgQEAg
Y2xhc3MgVGVzdEdhcmRlbmluZ0hUVFBSZXF1ZXN0SGFuZGxlcihHYXJkZW5pbmdIVFRQUmVxdWVz
dEhhbmRsZXIpOgogICAgICAgICBwcmludCB0ZXh0CiAgICAgICAgIHByaW50ICI9PSBFbmQgUmVz
cG9uc2UgPT0iCiAKKyAgICBkZWYgX3NlcnZlX2pzb24oc2VsZiwganNvbl9vYmplY3QpOgorICAg
ICAgICBwcmludCAiPT0gQmVnaW4gSlNPTiBSZXNwb25zZSA9PSIKKyAgICAgICAgcHJpbnQganNv
bi5kdW1wcyhqc29uX29iamVjdCkKKyAgICAgICAgcHJpbnQgIj09IEVuZCBKU09OIFJlc3BvbnNl
ID09IgorCiAKIGNsYXNzIEdhcmRlbmluZ1NlcnZlclRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgog
ICAgIGRlZiBfcG9zdF90b19wYXRoKHNlbGYsIHBhdGgsIGV4cGVjdGVkX3N0ZGVycj1Ob25lLCBl
eHBlY3RlZF9zdGRvdXQ9Tm9uZSk6CkBAIC01OCwxMiArNjksMjAgQEAgY2xhc3MgR2FyZGVuaW5n
U2VydmVyVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgICAgIGhhbmRsZXIucGF0aCA9IHBh
dGgKICAgICAgICAgT3V0cHV0Q2FwdHVyZSgpLmFzc2VydF9vdXRwdXRzKHNlbGYsIGhhbmRsZXIu
ZG9fUE9TVCwgZXhwZWN0ZWRfc3RkZXJyPWV4cGVjdGVkX3N0ZGVyciwgZXhwZWN0ZWRfc3Rkb3V0
PWV4cGVjdGVkX3N0ZG91dCkKIAorICAgIGRlZiB0ZXN0X2NoYW5nZWxvZyhzZWxmKToKKyAgICAg
ICAgZXhwZWN0ZWRfc3RkZXJyID0gIk1PQ0sgcnVuX2FuZF90aHJvd19pZl9mYWlsOiBbJ21vY2st
dXBkYXRlLXdlYmtpdCddXG4iCisgICAgICAgIGV4cGVjdGVkX3N0ZG91dCA9ICIiIj09IEJlZ2lu
IEpTT04gUmVzcG9uc2UgPT0KK3siYXV0aG9yX2VtYWlsIjogInZlc3Rib0B3ZWJraXQub3JnIiwg
ImNoYW5nZWRfZmlsZXMiOiBbInBhdGgvdG8vZmlsZSIsICJhbm90aGVyL2ZpbGUiXSwgInJldmll
d2VyX3RleHQiOiBudWxsLCAiYXV0aG9yX25hbWUiOiAiVG9yIEFybmUgVmVzdGJcXHUwMGY4Iiwg
ImJ1Z19pZCI6IDM2NjI5LCAiY29udGVudHMiOiAiMjAxMC0wMy0yNSAgVG9yIEFybmUgVmVzdGJc
XHUwMGY4ICA8dmVzdGJvQHdlYmtpdC5vcmc+XFxuXFxuICAgICAgICBVbnJldmlld2VkIGJ1aWxk
IGZpeCB0byB1bi1icmVhayB3ZWJraXQtcGF0Y2ggbGFuZC5cXG5cXG4gICAgICAgIE1vdmUgY29t
bWl0X21lc3NhZ2VfZm9yX3RoaXNfY29tbWl0IGZyb20gc2NtIHRvIGNoZWNrb3V0XFxuICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzY2MjlcXG5cXG4gICAg
ICAgICogU2NyaXB0cy93ZWJraXRweS9jb21tb24vY2hlY2tvdXQvYXBpLnB5OiBpbXBvcnQgc2Nt
LkNvbW1pdE1lc3NhZ2VcXG4ifQorPT0gRW5kIEpTT04gUmVzcG9uc2UgPT0KKyIiIgorICAgICAg
ICBzZWxmLl9wb3N0X3RvX3BhdGgoIi9jaGFuZ2Vsb2c/cmV2aXNpb249MjMxNCIsIGV4cGVjdGVk
X3N0ZGVycj1leHBlY3RlZF9zdGRlcnIsIGV4cGVjdGVkX3N0ZG91dD1leHBlY3RlZF9zdGRvdXQp
CisKICAgICBkZWYgdGVzdF9yb2xsb3V0KHNlbGYpOgogICAgICAgICBleHBlY3RlZF9zdGRlcnIg
PSAiTU9DSyBydW5fY29tbWFuZDogWydlY2hvJywgJ3JvbGxvdXQnLCAnLS1mb3JjZS1jbGVhbics
ICctLW5vbi1pbnRlcmFjdGl2ZScsICcyMzE0JywgJ01PQ0sgcm9sbG91dCByZWFzb24nXVxuIgog
ICAgICAgICBleHBlY3RlZF9zdGRvdXQgPSAiPT0gQmVnaW4gUmVzcG9uc2UgPT1cbnN1Y2Nlc3Nc
bj09IEVuZCBSZXNwb25zZSA9PVxuIgogICAgICAgICBzZWxmLl9wb3N0X3RvX3BhdGgoIi9yb2xs
b3V0P3JldmlzaW9uPTIzMTQmcmVhc29uPU1PQ0srcm9sbG91dCtyZWFzb24iLCBleHBlY3RlZF9z
dGRlcnI9ZXhwZWN0ZWRfc3RkZXJyLCBleHBlY3RlZF9zdGRvdXQ9ZXhwZWN0ZWRfc3Rkb3V0KQog
Ci0gICAgZGVmIHRlc3RfcmViYXNlbGluZV90ZXN0KHNlbGYpOgorICAgIGRlZiB0ZXN0X3JlYmFz
ZWxpbmUoc2VsZik6CiAgICAgICAgIGV4cGVjdGVkX3N0ZGVyciA9ICJNT0NLIHJ1bl9jb21tYW5k
OiBbJ2VjaG8nLCAncmViYXNlbGluZS10ZXN0JywgJ01PQ0sgYnVpbGRlcicsICd1c2VyLXNjcmlw
dHMvYW5vdGhlci10ZXN0Lmh0bWwnLCAndHh0J11cbiIKICAgICAgICAgZXhwZWN0ZWRfc3Rkb3V0
ID0gIj09IEJlZ2luIFJlc3BvbnNlID09XG5zdWNjZXNzXG49PSBFbmQgUmVzcG9uc2UgPT1cbiIK
ICAgICAgICAgc2VsZi5fcG9zdF90b19wYXRoKCIvcmViYXNlbGluZT9idWlsZGVyPU1PQ0srYnVp
bGRlciZ0ZXN0PXVzZXItc2NyaXB0cy9hbm90aGVyLXRlc3QuaHRtbCZzdWZmaXg9dHh0IiwgZXhw
ZWN0ZWRfc3RkZXJyPWV4cGVjdGVkX3N0ZGVyciwgZXhwZWN0ZWRfc3Rkb3V0PWV4cGVjdGVkX3N0
ZG91dCkKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zZXJ2ZXJzL3Jl
ZmxlY3Rpb25oYW5kbGVyLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3NlcnZlcnMv
cmVmbGVjdGlvbmhhbmRsZXIucHkKaW5kZXggNzUwMzVmOTExZmE5Zjk0NDE2ZmU0MjEwZWZmNTU1
ZjBmNTMwZmNiNi4uOTZiODU0NzMxMjMwM2Y4MTA3NTE2MTkyZDBhMzc3YTA0Mzk0ODAwMiAxMDA2
NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3NlcnZlcnMvcmVmbGVjdGlvbmhh
bmRsZXIucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3NlcnZlcnMvcmVmbGVj
dGlvbmhhbmRsZXIucHkKQEAgLTI4LDYgKzI4LDEyIEBACiAKIGZyb20gX19mdXR1cmVfXyBpbXBv
cnQgd2l0aF9zdGF0ZW1lbnQKIAordHJ5OgorICAgIGltcG9ydCBqc29uCitleGNlcHQgSW1wb3J0
RXJyb3I6CisgICAgIyBweXRob24gMi41IGNvbXBhdGliaWxpdHkKKyAgICBpbXBvcnQgd2Via2l0
cHkudGhpcmRwYXJ0eS5zaW1wbGVqc29uIGFzIGpzb24KKwogaW1wb3J0IEJhc2VIVFRQU2VydmVy
CiAKIGltcG9ydCBjb2RlY3MKQEAgLTkyLDExICs5OCwxMSBAQCBjbGFzcyBSZWZsZWN0aW9uSGFu
ZGxlcihCYXNlSFRUUFNlcnZlci5CYXNlSFRUUFJlcXVlc3RIYW5kbGVyKToKICAgICAgICAgc2Vs
Zi5lbmRfaGVhZGVycygpCiAgICAgICAgIHNlbGYud2ZpbGUud3JpdGUodGV4dCkKIAotICAgIGRl
ZiBfc2VydmVfanNvbihzZWxmLCBqc29uKToKKyAgICBkZWYgX3NlcnZlX2pzb24oc2VsZiwganNv
bl9vYmplY3QpOgogICAgICAgICBzZWxmLnNlbmRfcmVzcG9uc2UoMjAwKQogICAgICAgICBzZWxm
LnNlbmRfaGVhZGVyKCdDb250ZW50LXR5cGUnLCAnYXBwbGljYXRpb24vanNvbicpCiAgICAgICAg
IHNlbGYuZW5kX2hlYWRlcnMoKQotICAgICAgICBzaW1wbGVqc29uLmR1bXAoanNvbiwgc2VsZi53
ZmlsZSkKKyAgICAgICAganNvbi5kdW1wKGpzb25fb2JqZWN0LCBzZWxmLndmaWxlKQogCiAgICAg
ZGVmIF9zZXJ2ZV9maWxlKHNlbGYsIGZpbGVfcGF0aCwgY2FjaGVhYmxlX3NlY29uZHM9MCk6CiAg
ICAgICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyhmaWxlX3BhdGgpOgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>100745</attachid>
            <date>2011-07-13 18:10:50 -0700</date>
            <delta_ts>2011-07-13 18:39:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-64495-20110713181049.patch</filename>
            <type>text/plain</type>
            <size>15501</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTA5NTkKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBi
L1Rvb2xzL0NoYW5nZUxvZwppbmRleCA3ZWI3ZmYxNjQyZGJiM2JjMjI3YTRiYzQ5YmRhYTcwMTY2
MDlhMWI0Li4yMDYxZjAxNWYzY2Q4YzI5MTA4ZDY0ZjVmMDQyMDdiOTNlYjczODFiIDEwMDY0NAot
LS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEg
QEAKKzIwMTEtMDctMTMgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKworICAgICAg
ICBnYXJkZW5pbmcgc2VydmVyIHNob3VsZCBoYXZlIGFuIEFQSSBmb3IgcGFyc2luZyBjaGFuZ2Vs
b2dzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NDQ5
NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMg
cGF0Y2ggZXhwb3NlcyBtdWNoIG9mIHRoZSBzYW1lIGluZm9ybWF0aW9uIGZyb20gQ29tbWl0SW5m
byBpbiBhCisgICAgICAgIGRpY3Rpb25hcnkgZm9ybSwgd2hpY2ggaXMgZWFzaWVyIHRvIHNlbmQg
b3Zlci10aGUtd2lyZSBhcyBKU09OIHRvIHRoZQorICAgICAgICBmcm9udGVuZC4KKworICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L2NoZWNrb3V0LnB5OgorICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L2NoZWNrb3V0X3VuaXR0ZXN0LnB5
OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9tb2NrdG9vbC5weToKKyAgICAgICAg
KiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc2VydmVycy9nYXJkZW5pbmdzZXJ2ZXIucHk6CisgICAg
ICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL3NlcnZlcnMvZ2FyZGVuaW5nc2VydmVyX3VuaXR0
ZXN0LnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9zZXJ2ZXJzL3JlZmxlY3Rp
b25oYW5kbGVyLnB5OgorCiAyMDExLTA3LTEzICBYYW4gTG9wZXogIDx4bG9wZXpAaWdhbGlhLmNv
bT4KIAogICAgICAgICBbR1RLXSBGaXggZGlzdGNoZWNrCmRpZmYgLS1naXQgYS9Ub29scy9TY3Jp
cHRzL3dlYmtpdHB5L2NvbW1vbi9jaGVja291dC9jaGVja291dC5weSBiL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L2NoZWNrb3V0LnB5CmluZGV4IDA0M2VkZDE1M2ZhNzE0
NWYyZTFmNWQwZjM0MDAzZjE1N2MxNzlhMmQuLmU5MjM1YmI5MDY2MTE3MDYxNGI1MTI4ZWFiNjg1
MjZhODZmZTY5OTUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL2No
ZWNrb3V0L2NoZWNrb3V0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL2No
ZWNrb3V0L2NoZWNrb3V0LnB5CkBAIC01OCw4ICs1OCw5IEBAIGNsYXNzIENoZWNrb3V0KG9iamVj
dCk6CiAgICAgICAgIGNoYW5nZWxvZ19maWxlID0gU3RyaW5nSU8uU3RyaW5nSU8oY2hhbmdlbG9n
X2NvbnRlbnRzLmRlY29kZSgidXRmLTgiLCAiaWdub3JlIikpCiAgICAgICAgIHJldHVybiBDaGFu
Z2VMb2cucGFyc2VfbGF0ZXN0X2VudHJ5X2Zyb21fZmlsZShjaGFuZ2Vsb2dfZmlsZSkKIAotICAg
IGRlZiBjaGFuZ2Vsb2dfZW50cmllc19mb3JfcmV2aXNpb24oc2VsZiwgcmV2aXNpb24pOgotICAg
ICAgICBjaGFuZ2VkX2ZpbGVzID0gc2VsZi5fc2NtLmNoYW5nZWRfZmlsZXNfZm9yX3JldmlzaW9u
KHJldmlzaW9uKQorICAgIGRlZiBjaGFuZ2Vsb2dfZW50cmllc19mb3JfcmV2aXNpb24oc2VsZiwg
cmV2aXNpb24sIGNoYW5nZWRfZmlsZXM9Tm9uZSk6CisgICAgICAgIGlmIG5vdCBjaGFuZ2VkX2Zp
bGVzOgorICAgICAgICAgICAgY2hhbmdlZF9maWxlcyA9IHNlbGYuX3NjbS5jaGFuZ2VkX2ZpbGVz
X2Zvcl9yZXZpc2lvbihyZXZpc2lvbikKICAgICAgICAgIyBGSVhNRTogVGhpcyBnZXRzIGNvbmZ1
c2VkIGlmIENoYW5nZUxvZyBmaWxlcyBhcmUgbW92ZWQsIGFzCiAgICAgICAgICMgZGVsZXRlcyBh
cmUgc3RpbGwgImNoYW5nZWQgZmlsZXMiIHBlciBjaGFuZ2VkX2ZpbGVzX2Zvcl9yZXZpc2lvbi4K
ICAgICAgICAgIyBGSVhNRTogRm9yIG5vdyB3ZSBoYWNrIGFyb3VuZCB0aGlzIGJ5IGNhY2hpbmcg
YW55IGV4Y2VwdGlvbnMKQEAgLTc0LDI2ICs3NSwzMSBAQCBjbGFzcyBDaGVja291dChvYmplY3Qp
OgogICAgICAgICAgICAgICAgIHBhc3MKICAgICAgICAgcmV0dXJuIGNoYW5nZWxvZ19lbnRyaWVz
CiAKLSAgICBAbWVtb2l6ZWQKLSAgICBkZWYgY29tbWl0X2luZm9fZm9yX3JldmlzaW9uKHNlbGYs
IHJldmlzaW9uKToKLSAgICAgICAgY29tbWl0dGVyX2VtYWlsID0gc2VsZi5fc2NtLmNvbW1pdHRl
cl9lbWFpbF9mb3JfcmV2aXNpb24ocmV2aXNpb24pCi0gICAgICAgIGNoYW5nZWxvZ19lbnRyaWVz
ID0gc2VsZi5jaGFuZ2Vsb2dfZW50cmllc19mb3JfcmV2aXNpb24ocmV2aXNpb24pCisgICAgZGVm
IF9jaGFuZ2Vsb2dfZGF0YV9mb3JfcmV2aXNpb24oc2VsZiwgcmV2aXNpb24pOgorICAgICAgICBj
aGFuZ2VkX2ZpbGVzID0gc2VsZi5fc2NtLmNoYW5nZWRfZmlsZXNfZm9yX3JldmlzaW9uKHJldmlz
aW9uKQorICAgICAgICBjaGFuZ2Vsb2dfZW50cmllcyA9IHNlbGYuY2hhbmdlbG9nX2VudHJpZXNf
Zm9yX3JldmlzaW9uKHJldmlzaW9uLCBjaGFuZ2VkX2ZpbGVzPWNoYW5nZWRfZmlsZXMpCiAgICAg
ICAgICMgQXNzdW1lIGZvciBub3cgdGhhdCB0aGUgZmlyc3QgZW50cnkgaGFzIGV2ZXJ5dGhpbmcg
d2UgbmVlZDoKICAgICAgICAgIyBGSVhNRTogVGhpcyB3aWxsIHRocm93IGFuIGV4Y2VwdGlvbiBp
ZiB0aGVyZSB3ZXJlIG5vIENoYW5nZUxvZ3MuCiAgICAgICAgIGlmIG5vdCBsZW4oY2hhbmdlbG9n
X2VudHJpZXMpOgogICAgICAgICAgICAgcmV0dXJuIE5vbmUKICAgICAgICAgY2hhbmdlbG9nX2Vu
dHJ5ID0gY2hhbmdlbG9nX2VudHJpZXNbMF0KLSAgICAgICAgY2hhbmdlbG9nX2RhdGEgPSB7Cisg
ICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAiYnVnX2lkIjogcGFyc2VfYnVnX2lkX2Zyb21f
Y2hhbmdlbG9nKGNoYW5nZWxvZ19lbnRyeS5jb250ZW50cygpKSwKICAgICAgICAgICAgICJhdXRo
b3JfbmFtZSI6IGNoYW5nZWxvZ19lbnRyeS5hdXRob3JfbmFtZSgpLAogICAgICAgICAgICAgImF1
dGhvcl9lbWFpbCI6IGNoYW5nZWxvZ19lbnRyeS5hdXRob3JfZW1haWwoKSwKICAgICAgICAgICAg
ICJhdXRob3IiOiBjaGFuZ2Vsb2dfZW50cnkuYXV0aG9yKCksCiAgICAgICAgICAgICAicmV2aWV3
ZXJfdGV4dCI6IGNoYW5nZWxvZ19lbnRyeS5yZXZpZXdlcl90ZXh0KCksCiAgICAgICAgICAgICAi
cmV2aWV3ZXIiOiBjaGFuZ2Vsb2dfZW50cnkucmV2aWV3ZXIoKSwKKyAgICAgICAgICAgICJjb250
ZW50cyI6IGNoYW5nZWxvZ19lbnRyeS5jb250ZW50cygpLAorICAgICAgICAgICAgImNoYW5nZWRf
ZmlsZXMiOiBjaGFuZ2VkX2ZpbGVzLAogICAgICAgICB9Ci0gICAgICAgICMgV2UgY291bGQgcGFz
cyB0aGUgY2hhbmdlbG9nX2VudHJ5IGluc3RlYWQgb2YgYSBkaWN0aW9uYXJ5IGhlcmUsIGJ1dCB0
aGF0IG1ha2VzCi0gICAgICAgICMgbW9ja2luZyBzbGlnaHRseSBtb3JlIGludm9sdmVkLCBhbmQg
d291bGQgbWFrZSBhZ2dyZWdhdGluZyBkYXRhIGZyb20gbXVsdGlwbGUKLSAgICAgICAgIyBlbnRy
aWVzIG1vcmUgZGlmZmljdWx0IHRvIHdpcmUgaW4gaWYgd2UgbmVlZCB0byBkbyB0aGF0IGluIHRo
ZSBmdXR1cmUuCisKKyAgICBAbWVtb2l6ZWQKKyAgICBkZWYgY29tbWl0X2luZm9fZm9yX3Jldmlz
aW9uKHNlbGYsIHJldmlzaW9uKToKKyAgICAgICAgY29tbWl0dGVyX2VtYWlsID0gc2VsZi5fc2Nt
LmNvbW1pdHRlcl9lbWFpbF9mb3JfcmV2aXNpb24ocmV2aXNpb24pCisgICAgICAgIGNoYW5nZWxv
Z19kYXRhID0gc2VsZi5fY2hhbmdlbG9nX2RhdGFfZm9yX3JldmlzaW9uKHJldmlzaW9uKQorICAg
ICAgICBpZiBub3QgY2hhbmdlbG9nX2RhdGE6CisgICAgICAgICAgICByZXR1cm4gTm9uZQogICAg
ICAgICByZXR1cm4gQ29tbWl0SW5mbyhyZXZpc2lvbiwgY29tbWl0dGVyX2VtYWlsLCBjaGFuZ2Vs
b2dfZGF0YSkKIAogICAgIGRlZiBidWdfaWRfZm9yX3JldmlzaW9uKHNlbGYsIHJldmlzaW9uKToK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L2NoZWNr
b3V0X3VuaXR0ZXN0LnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vY2hlY2tvdXQv
Y2hlY2tvdXRfdW5pdHRlc3QucHkKaW5kZXggZTY3ZmMxNjFiMWJlNWI0YjAzYzJhYTRhMGU1ZjRl
YzM4YzgxZmFmNy4uYjI4MmY2N2NjZTViZjM3Njk1Y2I1NWU1N2FmNjE2YTk4ZWYwNTk3NSAxMDA2
NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vY2hlY2tvdXQvY2hlY2tvdXRf
dW5pdHRlc3QucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vY2hlY2tvdXQv
Y2hlY2tvdXRfdW5pdHRlc3QucHkKQEAgLTE3OCw5ICsxNzgsMTAgQEAgY2xhc3MgQ2hlY2tvdXRU
ZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKIAogICAgIGRlZiB0ZXN0X2NvbW1pdF9pbmZvX2Zvcl9y
ZXZpc2lvbihzZWxmKToKICAgICAgICAgc2NtID0gTW9jaygpCi0gICAgICAgIHNjbS5jb21taXR0
ZXJfZW1haWxfZm9yX3JldmlzaW9uID0gbGFtYmRhIHJldmlzaW9uOiAiY29tbWl0dGVyQGV4YW1w
bGUuY29tIgorICAgICAgICBzY20uY2hhbmdlZF9maWxlc19mb3JfcmV2aXNpb24gPSBsYW1iZGEg
cmV2aXNpb246IFsncGF0aC90by9maWxlJywgJ2Fub3RoZXIvZmlsZSddCisgICAgICAgIHNjbS5j
b21taXR0ZXJfZW1haWxfZm9yX3JldmlzaW9uID0gbGFtYmRhIHJldmlzaW9uLCBjaGFuZ2VkX2Zp
bGVzPU5vbmU6ICJjb21taXR0ZXJAZXhhbXBsZS5jb20iCiAgICAgICAgIGNoZWNrb3V0ID0gQ2hl
Y2tvdXQoc2NtKQotICAgICAgICBjaGVja291dC5jaGFuZ2Vsb2dfZW50cmllc19mb3JfcmV2aXNp
b24gPSBsYW1iZGEgcmV2aXNpb246IFtDaGFuZ2VMb2dFbnRyeShfY2hhbmdlbG9nMWVudHJ5MSld
CisgICAgICAgIGNoZWNrb3V0LmNoYW5nZWxvZ19lbnRyaWVzX2Zvcl9yZXZpc2lvbiA9IGxhbWJk
YSByZXZpc2lvbiwgY2hhbmdlZF9maWxlcz1Ob25lOiBbQ2hhbmdlTG9nRW50cnkoX2NoYW5nZWxv
ZzFlbnRyeTEpXQogICAgICAgICBjb21taXRpbmZvID0gY2hlY2tvdXQuY29tbWl0X2luZm9fZm9y
X3JldmlzaW9uKDQpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29tbWl0aW5mby5idWdfaWQo
KSwgMzY2MjkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29tbWl0aW5mby5hdXRob3JfbmFt
ZSgpLCB1IlRvciBBcm5lIFZlc3RiXHUwMGY4IikKQEAgLTE4OSwxNSArMTkwLDI1IEBAIGNsYXNz
IENoZWNrb3V0VGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1
YWwoY29tbWl0aW5mby5yZXZpZXdlcigpLCBOb25lKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFs
KGNvbW1pdGluZm8uY29tbWl0dGVyX2VtYWlsKCksICJjb21taXR0ZXJAZXhhbXBsZS5jb20iKQog
ICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbW1pdGluZm8uY29tbWl0dGVyKCksIE5vbmUpCi0K
LSAgICAgICAgY2hlY2tvdXQuY2hhbmdlbG9nX2VudHJpZXNfZm9yX3JldmlzaW9uID0gbGFtYmRh
IHJldmlzaW9uOiBbXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbW1pdGluZm8udG9fanNv
bigpLCB7CisgICAgICAgICAgICAnYnVnX2lkJzogMzY2MjksCisgICAgICAgICAgICAnYXV0aG9y
X2VtYWlsJzogJ3Zlc3Rib0B3ZWJraXQub3JnJywKKyAgICAgICAgICAgICdjaGFuZ2VkX2ZpbGVz
JzogWworICAgICAgICAgICAgICAgICdwYXRoL3RvL2ZpbGUnLAorICAgICAgICAgICAgICAgICdh
bm90aGVyL2ZpbGUnLAorICAgICAgICAgICAgXSwKKyAgICAgICAgICAgICdyZXZpZXdlcl90ZXh0
JzogTm9uZSwKKyAgICAgICAgICAgICdhdXRob3JfbmFtZSc6IHUnVG9yIEFybmUgVmVzdGJceGY4
JywKKyAgICAgICAgfSkKKworICAgICAgICBjaGVja291dC5jaGFuZ2Vsb2dfZW50cmllc19mb3Jf
cmV2aXNpb24gPSBsYW1iZGEgcmV2aXNpb24sIGNoYW5nZWRfZmlsZXM9Tm9uZTogW10KICAgICAg
ICAgc2VsZi5hc3NlcnRFcXVhbChjaGVja291dC5jb21taXRfaW5mb19mb3JfcmV2aXNpb24oMSks
IE5vbmUpCiAKICAgICBkZWYgdGVzdF9idWdfaWRfZm9yX3JldmlzaW9uKHNlbGYpOgogICAgICAg
ICBzY20gPSBNb2NrKCkKICAgICAgICAgc2NtLmNvbW1pdHRlcl9lbWFpbF9mb3JfcmV2aXNpb24g
PSBsYW1iZGEgcmV2aXNpb246ICJjb21taXR0ZXJAZXhhbXBsZS5jb20iCiAgICAgICAgIGNoZWNr
b3V0ID0gQ2hlY2tvdXQoc2NtKQotICAgICAgICBjaGVja291dC5jaGFuZ2Vsb2dfZW50cmllc19m
b3JfcmV2aXNpb24gPSBsYW1iZGEgcmV2aXNpb246IFtDaGFuZ2VMb2dFbnRyeShfY2hhbmdlbG9n
MWVudHJ5MSldCisgICAgICAgIGNoZWNrb3V0LmNoYW5nZWxvZ19lbnRyaWVzX2Zvcl9yZXZpc2lv
biA9IGxhbWJkYSByZXZpc2lvbiwgY2hhbmdlZF9maWxlcz1Ob25lOiBbQ2hhbmdlTG9nRW50cnko
X2NoYW5nZWxvZzFlbnRyeTEpXQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNoZWNrb3V0LmJ1
Z19pZF9mb3JfcmV2aXNpb24oNCksIDM2NjI5KQogCiAgICAgZGVmIHRlc3RfYnVnX2lkX2Zvcl90
aGlzX2NvbW1pdChzZWxmKToKQEAgLTIxNSw3ICsyMjYsNyBAQCBjbGFzcyBDaGVja291dFRlc3Qo
dW5pdHRlc3QuVGVzdENhc2UpOgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNoZWNrb3V0Lm1v
ZGlmaWVkX2NoYW5nZWxvZ3MoZ2l0X2NvbW1pdD1Ob25lKSwgZXhwZWN0ZWRfY2hhbmdsb2dzKQog
CiAgICAgZGVmIHRlc3Rfc3VnZ2VzdGVkX3Jldmlld2VycyhzZWxmKToKLSAgICAgICAgZGVmIG1v
Y2tfY2hhbmdlbG9nX2VudHJpZXNfZm9yX3JldmlzaW9uKHJldmlzaW9uKToKKyAgICAgICAgZGVm
IG1vY2tfY2hhbmdlbG9nX2VudHJpZXNfZm9yX3JldmlzaW9uKHJldmlzaW9uLCBjaGFuZ2VkX2Zp
bGVzPU5vbmUpOgogICAgICAgICAgICAgaWYgcmV2aXNpb24gJSAyID09IDA6CiAgICAgICAgICAg
ICAgICAgcmV0dXJuIFtDaGFuZ2VMb2dFbnRyeShfY2hhbmdlbG9nMWVudHJ5MSldCiAgICAgICAg
ICAgICByZXR1cm4gW0NoYW5nZUxvZ0VudHJ5KF9jaGFuZ2Vsb2cxZW50cnkyKV0KZGlmZiAtLWdp
dCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L2NvbW1pdGluZm8ucHkg
Yi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9jaGVja291dC9jb21taXRpbmZvLnB5Cmlu
ZGV4IGYxMjFmMzY4MmE3ZWZhZWExOTIzOGRmYTIyOWUwMjUzNTc3MGNiZjYuLmNiYTNmZGQ2NDc2
YWVhYTFiZThiZWQwNTcwZmM1YzBiNjU0NDNjZTkgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L2NvbW1pdGluZm8ucHkKKysrIGIvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9jb21tb24vY2hlY2tvdXQvY29tbWl0aW5mby5weQpAQCAtMzYsMTIgKzM2LDcg
QEAgY2xhc3MgQ29tbWl0SW5mbyhvYmplY3QpOgogICAgIGRlZiBfX2luaXRfXyhzZWxmLCByZXZp
c2lvbiwgY29tbWl0dGVyX2VtYWlsLCBjaGFuZ2Vsb2dfZGF0YSwgY29tbWl0dGVyX2xpc3Q9Q29t
bWl0dGVyTGlzdCgpKToKICAgICAgICAgc2VsZi5fcmV2aXNpb24gPSByZXZpc2lvbgogICAgICAg
ICBzZWxmLl9jb21taXR0ZXJfZW1haWwgPSBjb21taXR0ZXJfZW1haWwKLSAgICAgICAgc2VsZi5f
YnVnX2lkID0gY2hhbmdlbG9nX2RhdGFbImJ1Z19pZCJdCi0gICAgICAgIHNlbGYuX2F1dGhvcl9u
YW1lID0gY2hhbmdlbG9nX2RhdGFbImF1dGhvcl9uYW1lIl0KLSAgICAgICAgc2VsZi5fYXV0aG9y
X2VtYWlsID0gY2hhbmdlbG9nX2RhdGFbImF1dGhvcl9lbWFpbCJdCi0gICAgICAgIHNlbGYuX2F1
dGhvciA9IGNoYW5nZWxvZ19kYXRhWyJhdXRob3IiXQotICAgICAgICBzZWxmLl9yZXZpZXdlcl90
ZXh0ID0gY2hhbmdlbG9nX2RhdGFbInJldmlld2VyX3RleHQiXQotICAgICAgICBzZWxmLl9yZXZp
ZXdlciA9IGNoYW5nZWxvZ19kYXRhWyJyZXZpZXdlciJdCisgICAgICAgIHNlbGYuX2NoYW5nZWxv
Z19kYXRhID0gY2hhbmdlbG9nX2RhdGEKIAogICAgICAgICAjIERlcml2ZWQgdmFsdWVzOgogICAg
ICAgICBzZWxmLl9jb21taXR0ZXIgPSBjb21taXR0ZXJfbGlzdC5jb21taXR0ZXJfYnlfZW1haWwo
Y29tbWl0dGVyX2VtYWlsKQpAQCAtNTYsMjIgKzUxLDM0IEBAIGNsYXNzIENvbW1pdEluZm8ob2Jq
ZWN0KToKICAgICAgICAgcmV0dXJuIHNlbGYuX2NvbW1pdHRlcl9lbWFpbAogCiAgICAgZGVmIGJ1
Z19pZChzZWxmKToKLSAgICAgICAgcmV0dXJuIHNlbGYuX2J1Z19pZCAgIyBNYXkgYmUgTm9uZQor
ICAgICAgICByZXR1cm4gc2VsZi5fY2hhbmdlbG9nX2RhdGFbImJ1Z19pZCJdICAjIE1heSBiZSBO
b25lCiAKICAgICBkZWYgYXV0aG9yKHNlbGYpOgotICAgICAgICByZXR1cm4gc2VsZi5fYXV0aG9y
ICAjIE1heSBiZSBOb25lCisgICAgICAgIHJldHVybiBzZWxmLl9jaGFuZ2Vsb2dfZGF0YVsiYXV0
aG9yIl0gICMgTWF5IGJlIE5vbmUKIAogICAgIGRlZiBhdXRob3JfbmFtZShzZWxmKToKLSAgICAg
ICAgcmV0dXJuIHNlbGYuX2F1dGhvcl9uYW1lCisgICAgICAgIHJldHVybiBzZWxmLl9jaGFuZ2Vs
b2dfZGF0YVsiYXV0aG9yX25hbWUiXQogCiAgICAgZGVmIGF1dGhvcl9lbWFpbChzZWxmKToKLSAg
ICAgICAgcmV0dXJuIHNlbGYuX2F1dGhvcl9lbWFpbAorICAgICAgICByZXR1cm4gc2VsZi5fY2hh
bmdlbG9nX2RhdGFbImF1dGhvcl9lbWFpbCJdCiAKICAgICBkZWYgcmV2aWV3ZXIoc2VsZik6Ci0g
ICAgICAgIHJldHVybiBzZWxmLl9yZXZpZXdlciAjIE1heSBiZSBOb25lCisgICAgICAgIHJldHVy
biBzZWxmLl9jaGFuZ2Vsb2dfZGF0YVsicmV2aWV3ZXIiXSAgIyBNYXkgYmUgTm9uZQogCiAgICAg
ZGVmIHJldmlld2VyX3RleHQoc2VsZik6Ci0gICAgICAgIHJldHVybiBzZWxmLl9yZXZpZXdlcl90
ZXh0ICMgTWF5IGJlIE5vbmUKKyAgICAgICAgcmV0dXJuIHNlbGYuX2NoYW5nZWxvZ19kYXRhWyJy
ZXZpZXdlcl90ZXh0Il0gICMgTWF5IGJlIE5vbmUKKworICAgIGRlZiBjaGFuZ2VkX2ZpbGVzKHNl
bGYpOgorICAgICAgICByZXR1cm4gc2VsZi5fY2hhbmdlbG9nX2RhdGFbImNoYW5nZWRfZmlsZXMi
XQorCisgICAgZGVmIHRvX2pzb24oc2VsZik6CisgICAgICAgIHJldHVybiB7CisgICAgICAgICAg
ICAiYnVnX2lkIjogc2VsZi5idWdfaWQoKSwKKyAgICAgICAgICAgICJhdXRob3JfbmFtZSI6IHNl
bGYuYXV0aG9yX25hbWUoKSwKKyAgICAgICAgICAgICJhdXRob3JfZW1haWwiOiBzZWxmLmF1dGhv
cl9lbWFpbCgpLAorICAgICAgICAgICAgInJldmlld2VyX3RleHQiOiBzZWxmLnJldmlld2VyX3Rl
eHQoKSwKKyAgICAgICAgICAgICJjaGFuZ2VkX2ZpbGVzIjogc2VsZi5jaGFuZ2VkX2ZpbGVzKCks
CisgICAgICAgIH0KIAogICAgIGRlZiByZXNwb25zaWJsZV9wYXJ0aWVzKHNlbGYpOgogICAgICAg
ICByZXNwb25zaWJsZV9wYXJ0aWVzID0gWwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS90b29sL21vY2t0b29sLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL21vY2t0
b29sLnB5CmluZGV4IGE4NWI2ZjZkZWI2NzZjMWE3ZWM1ZDc4YTQ5YmQxMzJiNWM2NzA4ZGEuLjEz
YWRjMjI1NTI4NGY0ZWIwYWJlNTlkMDliYmExMzJlYjVmZjk5NjMgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvdG9vbC9tb2NrdG9vbC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dl
YmtpdHB5L3Rvb2wvbW9ja3Rvb2wucHkKQEAgLTU0Myw2ICs1NDMsMTAgQEAgY2xhc3MgTW9ja0No
ZWNrb3V0KG9iamVjdCk6CiAgICAgICAgICAgICAiYXV0aG9yIjogc2VsZi5fY29tbWl0dGVyX2xp
c3QuY29udHJpYnV0b3JfYnlfZW1haWwoImFiYXJ0aEB3ZWJraXQub3JnIiksCiAgICAgICAgICAg
ICAicmV2aWV3ZXJfdGV4dCI6ICJEYXJpbiBBZGxlciIsCiAgICAgICAgICAgICAicmV2aWV3ZXIi
OiBzZWxmLl9jb21taXR0ZXJfbGlzdC5jb21taXR0ZXJfYnlfbmFtZSgiRGFyaW4gQWRsZXIiKSwK
KyAgICAgICAgICAgICJjaGFuZ2VkX2ZpbGVzIjogWworICAgICAgICAgICAgICAgICJwYXRoL3Rv
L2ZpbGUiLAorICAgICAgICAgICAgICAgICJhbm90aGVyL2ZpbGUiLAorICAgICAgICAgICAgXSwK
ICAgICAgICAgfSkKIAogICAgIGRlZiBpc19wYXRoX3RvX2NoYW5nZWxvZyhzZWxmLCBwYXRoKToK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zZXJ2ZXJzL2dhcmRlbmlu
Z3NlcnZlci5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zZXJ2ZXJzL2dhcmRlbmlu
Z3NlcnZlci5weQppbmRleCBlMjAyY2M1YjgxM2UxMmU1ZGMyMzJhZWNiMzU1ZWFjNDQ4MjkxODU5
Li5mZjhlZGJiMDcyNDdjZjIzMmFlNzZhYjEzNGRmMzk4ZGI0ZWUxYmEzIDEwMDY0NAotLS0gYS9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc2VydmVycy9nYXJkZW5pbmdzZXJ2ZXIucHkKKysr
IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3NlcnZlcnMvZ2FyZGVuaW5nc2VydmVyLnB5
CkBAIC01NSw2ICs1NSwxOSBAQCBjbGFzcyBHYXJkZW5pbmdIVFRQUmVxdWVzdEhhbmRsZXIoUmVm
bGVjdGlvbkhhbmRsZXIpOgogICAgIGRlZiBfcnVuX3dlYmtpdF9wYXRjaChzZWxmLCBhcmdzKToK
ICAgICAgICAgcmV0dXJuIHNlbGYuc2VydmVyLnRvb2wuZXhlY3V0aXZlLnJ1bl9jb21tYW5kKFtz
ZWxmLnNlcnZlci50b29sLnBhdGgoKV0gKyBhcmdzKQogCisgICAgZGVmIGNoYW5nZWxvZyhzZWxm
KToKKyAgICAgICAgcmV2aXNpb24gPSBzZWxmLnF1ZXJ5WydyZXZpc2lvbiddWzBdCisgICAgICAg
IGhlYWRfcmV2aXNpb24gPSBzZWxmLnNlcnZlci50b29sLnNjbSgpLmhlYWRfc3ZuX3JldmlzaW9u
KCkKKyAgICAgICAgaWYgcmV2aXNpb24gPiBoZWFkX3JldmlzaW9uOgorICAgICAgICAgICAgIyBV
cGRhdGluZyB0aGUgd29ya2luZyBjb3B5IGNvdWxkIGNvbmZsaWN0IHdpdGggYW55IHJlYmFzZWxp
bmVzIHdlIGhhdmUgaW4gcHJvZ3Jlc3MuCisgICAgICAgICAgICB1cGRhdGVfd2Via2l0X2NvbW1h
bmQgPSBzZWxmLnNlcnZlci50b29sLnBvcnQoKS51cGRhdGVfd2Via2l0X2NvbW1hbmQoKQorICAg
ICAgICAgICAgc2VsZi5zZXJ2ZXIudG9vbC5leGVjdXRpdmUucnVuX2FuZF90aHJvd19pZl9mYWls
KHVwZGF0ZV93ZWJraXRfY29tbWFuZCwgcXVpZXQ9VHJ1ZSkKKyAgICAgICAgY29tbWl0X2luZm8g
PSBzZWxmLnNlcnZlci50b29sLmNoZWNrb3V0KCkuY29tbWl0X2luZm9fZm9yX3JldmlzaW9uKHJl
dmlzaW9uKQorICAgICAgICBpZiBub3QgY29tbWl0X2luZm86CisgICAgICAgICAgICBzZWxmLnNl
bmRfZXJyb3IoNDA0LCAiRmlsZSBub3QgZm91bmQiKQorICAgICAgICBlbHNlOgorICAgICAgICAg
ICAgc2VsZi5fc2VydmVfanNvbihjb21taXRfaW5mby50b19qc29uKCkpCisKICAgICBkZWYgcm9s
bG91dChzZWxmKToKICAgICAgICAgcmV2aXNpb24gPSBzZWxmLnF1ZXJ5WydyZXZpc2lvbiddWzBd
CiAgICAgICAgIHJlYXNvbiA9IHNlbGYucXVlcnlbJ3JlYXNvbiddWzBdCmRpZmYgLS1naXQgYS9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc2VydmVycy9nYXJkZW5pbmdzZXJ2ZXJfdW5pdHRl
c3QucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc2VydmVycy9nYXJkZW5pbmdzZXJ2
ZXJfdW5pdHRlc3QucHkKaW5kZXggZTYwYmM5YTFjODA3MDY0ZDE4N2EzODIxZDIxYWRhOTY3MWUy
NThkMC4uNDU0NWI5YTYwNmZiYjMwZGI0Y2QzY2U2NWQwNDM2ODc3YWIyNTk0MyAxMDA2NDQKLS0t
IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS90b29sL3NlcnZlcnMvZ2FyZGVuaW5nc2VydmVyX3Vu
aXR0ZXN0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zZXJ2ZXJzL2dhcmRl
bmluZ3NlcnZlcl91bml0dGVzdC5weQpAQCAtMjYsNiArMjYsMTIgQEAKICMgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
CiAjIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCiAKK3RyeToKKyAgICBpbXBvcnQganNvbgorZXhjZXB0IEltcG9ydEVy
cm9yOgorICAgICMgcHl0aG9uIDIuNSBjb21wYXRpYmlsaXR5CisgICAgaW1wb3J0IHdlYmtpdHB5
LnRoaXJkcGFydHkuc2ltcGxlanNvbiBhcyBqc29uCisKIGltcG9ydCB1bml0dGVzdAogCiBmcm9t
IHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0ub3V0cHV0Y2FwdHVyZSBpbXBvcnQgT3V0cHV0Q2FwdHVy
ZQpAQCAtNTEsNiArNTcsMTEgQEAgY2xhc3MgVGVzdEdhcmRlbmluZ0hUVFBSZXF1ZXN0SGFuZGxl
cihHYXJkZW5pbmdIVFRQUmVxdWVzdEhhbmRsZXIpOgogICAgICAgICBwcmludCB0ZXh0CiAgICAg
ICAgIHByaW50ICI9PSBFbmQgUmVzcG9uc2UgPT0iCiAKKyAgICBkZWYgX3NlcnZlX2pzb24oc2Vs
ZiwganNvbl9vYmplY3QpOgorICAgICAgICBwcmludCAiPT0gQmVnaW4gSlNPTiBSZXNwb25zZSA9
PSIKKyAgICAgICAgcHJpbnQganNvbi5kdW1wcyhqc29uX29iamVjdCkKKyAgICAgICAgcHJpbnQg
Ij09IEVuZCBKU09OIFJlc3BvbnNlID09IgorCiAKIGNsYXNzIEdhcmRlbmluZ1NlcnZlclRlc3Qo
dW5pdHRlc3QuVGVzdENhc2UpOgogICAgIGRlZiBfcG9zdF90b19wYXRoKHNlbGYsIHBhdGgsIGV4
cGVjdGVkX3N0ZGVycj1Ob25lLCBleHBlY3RlZF9zdGRvdXQ9Tm9uZSk6CkBAIC01OCwxMiArNjks
MjAgQEAgY2xhc3MgR2FyZGVuaW5nU2VydmVyVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAg
ICAgIGhhbmRsZXIucGF0aCA9IHBhdGgKICAgICAgICAgT3V0cHV0Q2FwdHVyZSgpLmFzc2VydF9v
dXRwdXRzKHNlbGYsIGhhbmRsZXIuZG9fUE9TVCwgZXhwZWN0ZWRfc3RkZXJyPWV4cGVjdGVkX3N0
ZGVyciwgZXhwZWN0ZWRfc3Rkb3V0PWV4cGVjdGVkX3N0ZG91dCkKIAorICAgIGRlZiB0ZXN0X2No
YW5nZWxvZyhzZWxmKToKKyAgICAgICAgZXhwZWN0ZWRfc3RkZXJyID0gIk1PQ0sgcnVuX2FuZF90
aHJvd19pZl9mYWlsOiBbJ21vY2stdXBkYXRlLXdlYmtpdCddXG4iCisgICAgICAgIGV4cGVjdGVk
X3N0ZG91dCA9ICIiIj09IEJlZ2luIEpTT04gUmVzcG9uc2UgPT0KK3siYnVnX2lkIjogNDIsICJh
dXRob3JfZW1haWwiOiAiYWJhcnRoQHdlYmtpdC5vcmciLCAicmV2aWV3ZXJfdGV4dCI6ICJEYXJp
biBBZGxlciIsICJhdXRob3JfbmFtZSI6ICJBZGFtIEJhcnRoIiwgImNoYW5nZWRfZmlsZXMiOiBb
InBhdGgvdG8vZmlsZSIsICJhbm90aGVyL2ZpbGUiXX0KKz09IEVuZCBKU09OIFJlc3BvbnNlID09
CisiIiIKKyAgICAgICAgc2VsZi5fcG9zdF90b19wYXRoKCIvY2hhbmdlbG9nP3JldmlzaW9uPTIz
MTQiLCBleHBlY3RlZF9zdGRlcnI9ZXhwZWN0ZWRfc3RkZXJyLCBleHBlY3RlZF9zdGRvdXQ9ZXhw
ZWN0ZWRfc3Rkb3V0KQorCiAgICAgZGVmIHRlc3Rfcm9sbG91dChzZWxmKToKICAgICAgICAgZXhw
ZWN0ZWRfc3RkZXJyID0gIk1PQ0sgcnVuX2NvbW1hbmQ6IFsnZWNobycsICdyb2xsb3V0JywgJy0t
Zm9yY2UtY2xlYW4nLCAnLS1ub24taW50ZXJhY3RpdmUnLCAnMjMxNCcsICdNT0NLIHJvbGxvdXQg
cmVhc29uJ11cbiIKICAgICAgICAgZXhwZWN0ZWRfc3Rkb3V0ID0gIj09IEJlZ2luIFJlc3BvbnNl
ID09XG5zdWNjZXNzXG49PSBFbmQgUmVzcG9uc2UgPT1cbiIKICAgICAgICAgc2VsZi5fcG9zdF90
b19wYXRoKCIvcm9sbG91dD9yZXZpc2lvbj0yMzE0JnJlYXNvbj1NT0NLK3JvbGxvdXQrcmVhc29u
IiwgZXhwZWN0ZWRfc3RkZXJyPWV4cGVjdGVkX3N0ZGVyciwgZXhwZWN0ZWRfc3Rkb3V0PWV4cGVj
dGVkX3N0ZG91dCkKIAotICAgIGRlZiB0ZXN0X3JlYmFzZWxpbmVfdGVzdChzZWxmKToKKyAgICBk
ZWYgdGVzdF9yZWJhc2VsaW5lKHNlbGYpOgogICAgICAgICBleHBlY3RlZF9zdGRlcnIgPSAiTU9D
SyBydW5fY29tbWFuZDogWydlY2hvJywgJ3JlYmFzZWxpbmUtdGVzdCcsICdNT0NLIGJ1aWxkZXIn
LCAndXNlci1zY3JpcHRzL2Fub3RoZXItdGVzdC5odG1sJywgJ3R4dCddXG4iCiAgICAgICAgIGV4
cGVjdGVkX3N0ZG91dCA9ICI9PSBCZWdpbiBSZXNwb25zZSA9PVxuc3VjY2Vzc1xuPT0gRW5kIFJl
c3BvbnNlID09XG4iCiAgICAgICAgIHNlbGYuX3Bvc3RfdG9fcGF0aCgiL3JlYmFzZWxpbmU/YnVp
bGRlcj1NT0NLK2J1aWxkZXImdGVzdD11c2VyLXNjcmlwdHMvYW5vdGhlci10ZXN0Lmh0bWwmc3Vm
Zml4PXR4dCIsIGV4cGVjdGVkX3N0ZGVycj1leHBlY3RlZF9zdGRlcnIsIGV4cGVjdGVkX3N0ZG91
dD1leHBlY3RlZF9zdGRvdXQpCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Rv
b2wvc2VydmVycy9yZWZsZWN0aW9uaGFuZGxlci5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkv
dG9vbC9zZXJ2ZXJzL3JlZmxlY3Rpb25oYW5kbGVyLnB5CmluZGV4IDc1MDM1ZjkxMWZhOWY5NDQx
NmZlNDIxMGVmZjU1NWYwZjUzMGZjYjYuLjk2Yjg1NDczMTIzMDNmODEwNzUxNjE5MmQwYTM3N2Ew
NDM5NDgwMDIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9zZXJ2ZXJz
L3JlZmxlY3Rpb25oYW5kbGVyLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvdG9vbC9z
ZXJ2ZXJzL3JlZmxlY3Rpb25oYW5kbGVyLnB5CkBAIC0yOCw2ICsyOCwxMiBAQAogCiBmcm9tIF9f
ZnV0dXJlX18gaW1wb3J0IHdpdGhfc3RhdGVtZW50CiAKK3RyeToKKyAgICBpbXBvcnQganNvbgor
ZXhjZXB0IEltcG9ydEVycm9yOgorICAgICMgcHl0aG9uIDIuNSBjb21wYXRpYmlsaXR5CisgICAg
aW1wb3J0IHdlYmtpdHB5LnRoaXJkcGFydHkuc2ltcGxlanNvbiBhcyBqc29uCisKIGltcG9ydCBC
YXNlSFRUUFNlcnZlcgogCiBpbXBvcnQgY29kZWNzCkBAIC05MiwxMSArOTgsMTEgQEAgY2xhc3Mg
UmVmbGVjdGlvbkhhbmRsZXIoQmFzZUhUVFBTZXJ2ZXIuQmFzZUhUVFBSZXF1ZXN0SGFuZGxlcik6
CiAgICAgICAgIHNlbGYuZW5kX2hlYWRlcnMoKQogICAgICAgICBzZWxmLndmaWxlLndyaXRlKHRl
eHQpCiAKLSAgICBkZWYgX3NlcnZlX2pzb24oc2VsZiwganNvbik6CisgICAgZGVmIF9zZXJ2ZV9q
c29uKHNlbGYsIGpzb25fb2JqZWN0KToKICAgICAgICAgc2VsZi5zZW5kX3Jlc3BvbnNlKDIwMCkK
ICAgICAgICAgc2VsZi5zZW5kX2hlYWRlcignQ29udGVudC10eXBlJywgJ2FwcGxpY2F0aW9uL2pz
b24nKQogICAgICAgICBzZWxmLmVuZF9oZWFkZXJzKCkKLSAgICAgICAgc2ltcGxlanNvbi5kdW1w
KGpzb24sIHNlbGYud2ZpbGUpCisgICAgICAgIGpzb24uZHVtcChqc29uX29iamVjdCwgc2VsZi53
ZmlsZSkKIAogICAgIGRlZiBfc2VydmVfZmlsZShzZWxmLCBmaWxlX3BhdGgsIGNhY2hlYWJsZV9z
ZWNvbmRzPTApOgogICAgICAgICBpZiBub3Qgb3MucGF0aC5leGlzdHMoZmlsZV9wYXRoKToK
</data>

          </attachment>
      

    </bug>

</bugzilla>