<?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>124937</bug_id>
          
          <creation_ts>2013-11-27 06:42:32 -0800</creation_ts>
          <short_desc>Move PrettyPatch related code to prettypatch.py</short_desc>
          <delta_ts>2013-12-07 06:51:22 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</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>
          <dependson>124974</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dániel Bátyai">dbatyai.u-szeged</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>glenn</cc>
    
    <cc>ossy</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>954528</commentid>
    <comment_count>0</comment_count>
    <who name="Dániel Bátyai">dbatyai.u-szeged</who>
    <bug_when>2013-11-27 06:42:32 -0800</bug_when>
    <thetext>Moved all PrettyPatch related code from base.py to prettypatch.py</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954529</commentid>
    <comment_count>1</comment_count>
      <attachid>217947</attachid>
    <who name="Dániel Bátyai">dbatyai.u-szeged</who>
    <bug_when>2013-11-27 06:43:28 -0800</bug_when>
    <thetext>Created attachment 217947
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954685</commentid>
    <comment_count>2</comment_count>
      <attachid>217947</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-11-28 02:37:18 -0800</bug_when>
    <thetext>Comment on attachment 217947
Proposed patch

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

&gt; Tools/ChangeLog:7
&gt; +

Please explain why we&apos;re making this change. r- due to the lack of descriptions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954696</commentid>
    <comment_count>3</comment_count>
    <who name="Dániel Bátyai">dbatyai.u-szeged</who>
    <bug_when>2013-11-28 05:17:36 -0800</bug_when>
    <thetext>
&gt; Please explain why we&apos;re making this change. r- due to the lack of descriptions.

Sorry for not describing the change more clearly. The point of it was to unify the usage of prettypatch, for example tool/steps/confirmdiff.py already used it like this. Plus there was a FIXME in base.py regarding prettypatch path, which stated that prettypatch.py already had this information, so this code seems to have a better place in PrettyPatch, than in Port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954698</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-11-28 05:19:16 -0800</bug_when>
    <thetext>Please mention that in the change log.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954700</commentid>
    <comment_count>5</comment_count>
      <attachid>217992</attachid>
    <who name="Dániel Bátyai">dbatyai.u-szeged</who>
    <bug_when>2013-11-28 05:35:25 -0800</bug_when>
    <thetext>Created attachment 217992
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954703</commentid>
    <comment_count>6</comment_count>
      <attachid>217992</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-11-28 05:39:54 -0800</bug_when>
    <thetext>Comment on attachment 217992
Proposed patch

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

&gt; Tools/Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:200
&gt; +        if self._port._pretty_patch.pretty_patch_available():
&gt; +            pretty_patch = self._port._pretty_patch.pretty_patch_text(diff_filename)

We shouldn&apos;t be accessing port object&apos;s &quot;private&quot; variables like this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954708</commentid>
    <comment_count>7</comment_count>
    <who name="Dániel Bátyai">dbatyai.u-szeged</who>
    <bug_when>2013-11-28 05:56:22 -0800</bug_when>
    <thetext>&gt; We shouldn&apos;t be accessing port object&apos;s &quot;private&quot; variables like this.

Which one would be more preferable: if I change it to public, or if I write a getter function for prettypatch?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954709</commentid>
    <comment_count>8</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-11-28 06:04:20 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; &gt; We shouldn&apos;t be accessing port object&apos;s &quot;private&quot; variables like this.
&gt; 
&gt; Which one would be more preferable: if I change it to public, or if I write a getter function for prettypatch?

Either.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954715</commentid>
    <comment_count>9</comment_count>
      <attachid>217997</attachid>
    <who name="Dániel Bátyai">dbatyai.u-szeged</who>
    <bug_when>2013-11-28 06:31:16 -0800</bug_when>
    <thetext>Created attachment 217997
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954724</commentid>
    <comment_count>10</comment_count>
      <attachid>217997</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-11-28 07:12:04 -0800</bug_when>
    <thetext>Comment on attachment 217997
Proposed patch

Clearing flags on attachment: 217997

Committed r159839: &lt;http://trac.webkit.org/changeset/159839&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954725</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-11-28 07:12:07 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954748</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-11-28 08:50:06 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 124974</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>956367</commentid>
    <comment_count>13</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-12-04 05:40:06 -0800</bug_when>
    <thetext>It was rolled out by http://trac.webkit.org/changeset/159847, 
because it broke run-webkit-tests. After this change run-webkit-tests
didn&apos;t generate pretty diffs anymore. Could you check and fix it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>956855</commentid>
    <comment_count>14</comment_count>
      <attachid>218501</attachid>
    <who name="Dániel Bátyai">dbatyai.u-szeged</who>
    <bug_when>2013-12-05 04:50:41 -0800</bug_when>
    <thetext>Created attachment 218501
Proposed patch

run-webkit-tests should correctly generate pretty diffs now</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>957509</commentid>
    <comment_count>15</comment_count>
      <attachid>218501</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-12-07 06:51:20 -0800</bug_when>
    <thetext>Comment on attachment 218501
Proposed patch

Clearing flags on attachment: 218501

Committed r160271: &lt;http://trac.webkit.org/changeset/160271&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>957510</commentid>
    <comment_count>16</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-12-07 06:51:22 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>217947</attachid>
            <date>2013-11-27 06:43:28 -0800</date>
            <delta_ts>2013-11-28 05:34:25 -0800</delta_ts>
            <desc>Proposed patch</desc>
            <filename>proposedpatch.patch</filename>
            <type>text/plain</type>
            <size>14276</size>
            <attacher name="Dániel Bátyai">dbatyai.u-szeged</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA0Y2Nj
OGI2Li44NDAwZDljIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMzAgQEAKKzIwMTMtMTEtMjcgIETDoW5pZWwgQsOhdHlhaSAgPEJh
dHlhaS5EYW5pZWxAc3R1ZC51LXN6ZWdlZC5odT4KKworICAgICAgICBNb3ZlIFByZXR0eVBhdGNo
IHJlbGF0ZWQgY29kZSB0byBwcmV0dHlwYXRjaC5weQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI0OTM3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9wcmV0dHlw
YXRjaC5weToKKyAgICAgICAgKFByZXR0eVBhdGNoLl9faW5pdF9fKToKKyAgICAgICAgKFByZXR0
eVBhdGNoLnByZXR0eV9kaWZmKToKKyAgICAgICAgKFByZXR0eVBhdGNoKToKKyAgICAgICAgKFBy
ZXR0eVBhdGNoLnByZXR0eV9wYXRjaF9hdmFpbGFibGUpOgorICAgICAgICAoUHJldHR5UGF0Y2gu
Y2hlY2tfcHJldHR5X3BhdGNoKToKKyAgICAgICAgKFByZXR0eVBhdGNoLnByZXR0eV9wYXRjaF90
ZXh0KToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVy
cy90ZXN0X3Jlc3VsdF93cml0ZXIucHk6CisgICAgICAgIChUZXN0UmVzdWx0V3JpdGVyLmNyZWF0
ZV90ZXh0X2RpZmZfYW5kX3dyaXRlX3Jlc3VsdCk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRw
eS9sYXlvdXRfdGVzdHMvbW9kZWxzL3Rlc3RfcnVuX3Jlc3VsdHMucHk6CisgICAgICAgIChzdW1t
YXJpemVfcmVzdWx0cyk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9wb3J0L2Jhc2UucHk6
CisgICAgICAgIChQb3J0Ll9faW5pdF9fKToKKyAgICAgICAgKFBvcnQud2RpZmZfYXZhaWxhYmxl
KToKKyAgICAgICAgKFBvcnQuY2hlY2tfaW1hZ2VfZGlmZik6CisgICAgICAgIChQb3J0LndkaWZm
X3RleHQpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvcG9ydC9iYXNlX3VuaXR0ZXN0LnB5
OgorICAgICAgICAoUG9ydFRlc3QudGVzdF9wcmV0dHlfcGF0Y2hfb3NfZXJyb3IpOgorICAgICAg
ICAoUG9ydFRlc3QudGVzdF9wcmV0dHlfcGF0Y2hfc2NyaXB0X2Vycm9yKToKKwogMjAxMy0xMS0y
MiAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CiAKICAgICAgICAgU3BlY3VsYXRpdmUg
TW91bnRhaW4gTGlvbiBidWlsZCBmaXguCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtp
dHB5L2NvbW1vbi9wcmV0dHlwYXRjaC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9u
L3ByZXR0eXBhdGNoLnB5CmluZGV4IGU4YTkxM2EuLjliYWI0ZWQgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3ByZXR0eXBhdGNoLnB5CisrKyBiL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvY29tbW9uL3ByZXR0eXBhdGNoLnB5CkBAIC0yNiwxNSArMjYsMjUgQEAKICMg
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFCiAjIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAKK2ltcG9ydCBlcnJubworaW1wb3J0IGxvZ2dp
bmcKIGltcG9ydCBvcwogaW1wb3J0IHRlbXBmaWxlCitmcm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0
ZW0uZXhlY3V0aXZlIGltcG9ydCBTY3JpcHRFcnJvcgorCitfbG9nID0gbG9nZ2luZy5nZXRMb2dn
ZXIoX19uYW1lX18pCiAKIAogY2xhc3MgUHJldHR5UGF0Y2gob2JqZWN0KToKICAgICAjIEZJWE1F
OiBQcmV0dHlQYXRjaCBzaG91bGQgbm90IHJlcXVpcmUgY2hlY2tvdXRfcm9vdC4KLSAgICBkZWYg
X19pbml0X18oc2VsZiwgZXhlY3V0aXZlLCBjaGVja291dF9yb290KToKKyAgICBkZWYgX19pbml0
X18oc2VsZiwgZXhlY3V0aXZlLCBjaGVja291dF9yb290LCBmaWxlc3lzdGVtPU5vbmUpOgogICAg
ICAgICBzZWxmLl9leGVjdXRpdmUgPSBleGVjdXRpdmUKKyAgICAgICAgc2VsZi5fZmlsZXN5c3Rl
bSA9IGZpbGVzeXN0ZW0KICAgICAgICAgc2VsZi5fY2hlY2tvdXRfcm9vdCA9IGNoZWNrb3V0X3Jv
b3QKKyAgICAgICAgc2VsZi5fcHJldHR5X3BhdGNoX2Vycm9yX2h0bWwgPSAiRmFpbGVkIHRvIHJ1
biBQcmV0dHlQYXRjaCwgc2VlIGVycm9yIGxvZy4iCisgICAgICAgIHNlbGYuX3ByZXR0eV9wYXRj
aF9wYXRoID0gb3MucGF0aC5qb2luKHNlbGYuX2NoZWNrb3V0X3Jvb3QsICJXZWJzaXRlcyIsICJi
dWdzLndlYmtpdC5vcmciLCAiUHJldHR5UGF0Y2giKQorICAgICAgICBzZWxmLl9wcmV0dGlmeV9w
YXRoID0gb3MucGF0aC5qb2luKHNlbGYuX3ByZXR0eV9wYXRjaF9wYXRoLCAicHJldHRpZnkucmIi
KQorICAgICAgICBzZWxmLl9wcmV0dHlfcGF0Y2hfYXZhaWxhYmxlID0gTm9uZQogCiAgICAgZGVm
IHByZXR0eV9kaWZmX2ZpbGUoc2VsZiwgZGlmZik6CiAgICAgICAgICMgRGlmZnMgY2FuIGNvbnRh
aW4gbXVsdGlwbGUgdGV4dCBmaWxlcyBvZiBkaWZmZXJlbnQgZW5jb2RpbmdzCkBAIC01MiwxNiAr
NjIsNTkgQEAgY2xhc3MgUHJldHR5UGF0Y2gob2JqZWN0KToKICAgICAgICAgaWYgbm90IGRpZmY6
CiAgICAgICAgICAgICByZXR1cm4gIiIKIAotICAgICAgICBwcmV0dHlfcGF0Y2hfcGF0aCA9IG9z
LnBhdGguam9pbihzZWxmLl9jaGVja291dF9yb290LAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAiV2Vic2l0ZXMiLCAiYnVncy53ZWJraXQub3JnIiwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlByZXR0eVBhdGNoIikKLSAgICAgICAg
cHJldHRpZnlfcGF0aCA9IG9zLnBhdGguam9pbihwcmV0dHlfcGF0Y2hfcGF0aCwgInByZXR0aWZ5
LnJiIikKICAgICAgICAgYXJncyA9IFsKICAgICAgICAgICAgICJydWJ5IiwKICAgICAgICAgICAg
ICItSSIsCi0gICAgICAgICAgICBwcmV0dHlfcGF0Y2hfcGF0aCwKLSAgICAgICAgICAgIHByZXR0
aWZ5X3BhdGgsCisgICAgICAgICAgICBzZWxmLl9wcmV0dHlfcGF0Y2hfcGF0aCwKKyAgICAgICAg
ICAgIHNlbGYuX3ByZXR0aWZ5X3BhdGgsCiAgICAgICAgIF0KICAgICAgICAgIyBQcmV0dHlQYXRj
aCBkb2VzIG5vdCBtb2RpZnkgdGhlIGVuY29kaW5nIG9mIHRoZSBkaWZmIG91dHB1dAogICAgICAg
ICAjIHNvIHdlIGNhbid0IGV4cGVjdCBpdCB0byBiZSB1dGYtOC4KICAgICAgICAgcmV0dXJuIHNl
bGYuX2V4ZWN1dGl2ZS5ydW5fY29tbWFuZChhcmdzLCBpbnB1dD1kaWZmLCBkZWNvZGVfb3V0cHV0
PUZhbHNlKQorCisgICAgZGVmIHByZXR0eV9wYXRjaF9hdmFpbGFibGUoc2VsZik6CisgICAgICAg
IGlmIHNlbGYuX3ByZXR0eV9wYXRjaF9hdmFpbGFibGUgaXMgTm9uZToKKyAgICAgICAgICAgIHNl
bGYuX3ByZXR0eV9wYXRjaF9hdmFpbGFibGUgPSBzZWxmLmNoZWNrX3ByZXR0eV9wYXRjaChsb2dn
aW5nPUZhbHNlKQorICAgICAgICByZXR1cm4gc2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZQor
CisgICAgZGVmIGNoZWNrX3ByZXR0eV9wYXRjaChzZWxmLCBsb2dnaW5nPVRydWUpOgorICAgICAg
ICAiIiJDaGVja3Mgd2hldGhlciB3ZSBjYW4gdXNlIHRoZSBQcmV0dHlQYXRjaCBydWJ5IHNjcmlw
dC4iIiIKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgXyA9IHNlbGYuX2V4ZWN1dGl2ZS5ydW5f
Y29tbWFuZChbJ3J1YnknLCAnLS12ZXJzaW9uJ10pCisgICAgICAgIGV4Y2VwdCBPU0Vycm9yLCBl
OgorICAgICAgICAgICAgaWYgZS5lcnJubyBpbiBbZXJybm8uRU5PRU5ULCBlcnJuby5FQUNDRVMs
IGVycm5vLkVDSElMRF06CisgICAgICAgICAgICAgICAgaWYgbG9nZ2luZzoKKyAgICAgICAgICAg
ICAgICAgICAgX2xvZy53YXJuaW5nKCJSdWJ5IGlzIG5vdCBpbnN0YWxsZWQ7IGNhbid0IGdlbmVy
YXRlIHByZXR0eSBwYXRjaGVzLiIpCisgICAgICAgICAgICAgICAgICAgIF9sb2cud2FybmluZygn
JykKKyAgICAgICAgICAgICAgICByZXR1cm4gRmFsc2UKKworICAgICAgICBpZiBub3Qgc2VsZi5f
ZmlsZXN5c3RlbS5leGlzdHMoc2VsZi5fcHJldHR5X3BhdGNoX3BhdGgpOgorICAgICAgICAgICAg
aWYgbG9nZ2luZzoKKyAgICAgICAgICAgICAgICBfbG9nLndhcm5pbmcoIlVuYWJsZSB0byBmaW5k
ICVzOyBjYW4ndCBnZW5lcmF0ZSBwcmV0dHkgcGF0Y2hlcy4iICUgc2VsZi5fcHJldHR5X3BhdGNo
X3BhdGgpCisgICAgICAgICAgICAgICAgX2xvZy53YXJuaW5nKCcnKQorICAgICAgICAgICAgcmV0
dXJuIEZhbHNlCisKKyAgICAgICAgcmV0dXJuIFRydWUKKworICAgIGRlZiBwcmV0dHlfcGF0Y2hf
dGV4dChzZWxmLCBkaWZmX3BhdGgpOgorICAgICAgICBpZiBzZWxmLl9wcmV0dHlfcGF0Y2hfYXZh
aWxhYmxlIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLl9wcmV0dHlfcGF0Y2hfYXZhaWxhYmxl
ID0gc2VsZi5jaGVja19wcmV0dHlfcGF0Y2gobG9nZ2luZz1GYWxzZSkKKyAgICAgICAgaWYgbm90
IHNlbGYuX3ByZXR0eV9wYXRjaF9hdmFpbGFibGU6CisgICAgICAgICAgICByZXR1cm4gc2VsZi5f
cHJldHR5X3BhdGNoX2Vycm9yX2h0bWwKKyAgICAgICAgY29tbWFuZCA9ICgicnVieSIsICItSSIs
IHNlbGYuX2ZpbGVzeXN0ZW0uZGlybmFtZShzZWxmLl9wcmV0dHlfcGF0Y2hfcGF0aCksCisgICAg
ICAgICAgICAgICAgICAgc2VsZi5fcHJldHR5X3BhdGNoX3BhdGgsIGRpZmZfcGF0aCkKKyAgICAg
ICAgdHJ5OgorICAgICAgICAgICAgIyBEaWZmcyBhcmUgdHJlYXRlZCBhcyBiaW5hcnkgKHdlIHBh
c3MgZGVjb2RlX291dHB1dD1GYWxzZSkgYXMgdGhleQorICAgICAgICAgICAgIyBtYXkgY29udGFp
biBtdWx0aXBsZSBmaWxlcyBvZiBjb25mbGljdGluZyBlbmNvZGluZ3MuCisgICAgICAgICAgICBy
ZXR1cm4gc2VsZi5fZXhlY3V0aXZlLnJ1bl9jb21tYW5kKGNvbW1hbmQsIGRlY29kZV9vdXRwdXQ9
RmFsc2UpCisgICAgICAgIGV4Y2VwdCBPU0Vycm9yLCBlOgorICAgICAgICAgICAgIyBJZiB0aGUg
c3lzdGVtIGlzIG1pc3NpbmcgcnVieSBsb2cgdGhlIGVycm9yIGFuZCBzdG9wIHRyeWluZy4KKyAg
ICAgICAgICAgIHNlbGYuX3ByZXR0eV9wYXRjaF9hdmFpbGFibGUgPSBGYWxzZQorICAgICAgICAg
ICAgX2xvZy5lcnJvcigiRmFpbGVkIHRvIHJ1biBQcmV0dHlQYXRjaCAoJXMpOiAlcyIgJSAoY29t
bWFuZCwgZSkpCisgICAgICAgICAgICByZXR1cm4gc2VsZi5fcHJldHR5X3BhdGNoX2Vycm9yX2h0
bWwKKyAgICAgICAgZXhjZXB0IFNjcmlwdEVycm9yLCBlOgorICAgICAgICAgICAgIyBJZiBydWJ5
IGZhaWxlZCB0byBydW4gZm9yIHNvbWUgcmVhc29uLCBsb2cgdGhlIGNvbW1hbmQKKyAgICAgICAg
ICAgICMgb3V0cHV0IGFuZCBzdG9wIHRyeWluZy4KKyAgICAgICAgICAgIHNlbGYuX3ByZXR0eV9w
YXRjaF9hdmFpbGFibGUgPSBGYWxzZQorICAgICAgICAgICAgX2xvZy5lcnJvcigiRmFpbGVkIHRv
IHJ1biBQcmV0dHlQYXRjaCAoJXMpOlxuJXMiICUgKGNvbW1hbmQsIGUubWVzc2FnZV93aXRoX291
dHB1dCgpKSkKKyAgICAgICAgICAgIHJldHVybiBzZWxmLl9wcmV0dHlfcGF0Y2hfZXJyb3JfaHRt
bApkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJv
bGxlcnMvdGVzdF9yZXN1bHRfd3JpdGVyLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlv
dXRfdGVzdHMvY29udHJvbGxlcnMvdGVzdF9yZXN1bHRfd3JpdGVyLnB5CmluZGV4IDIzZTQ0ZDUu
Ljc0ZTRlNGYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L2NvbnRyb2xsZXJzL3Rlc3RfcmVzdWx0X3dyaXRlci5weQorKysgYi9Ub29scy9TY3JpcHRzL3dl
YmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy90ZXN0X3Jlc3VsdF93cml0ZXIucHkKQEAg
LTE5Niw4ICsxOTYsOCBAQCBjbGFzcyBUZXN0UmVzdWx0V3JpdGVyKG9iamVjdCk6CiAgICAgICAg
ICAgICBzZWxmLl93cml0ZV9iaW5hcnlfZmlsZSh3ZGlmZl9maWxlbmFtZSwgd2RpZmYpCiAKICAg
ICAgICAgIyBVc2UgV2ViS2l0J3MgUHJldHR5UGF0Y2gucmIgdG8gZ2V0IGFuIEhUTUwgZGlmZi4K
LSAgICAgICAgaWYgc2VsZi5fcG9ydC5wcmV0dHlfcGF0Y2hfYXZhaWxhYmxlKCk6Ci0gICAgICAg
ICAgICBwcmV0dHlfcGF0Y2ggPSBzZWxmLl9wb3J0LnByZXR0eV9wYXRjaF90ZXh0KGRpZmZfZmls
ZW5hbWUpCisgICAgICAgIGlmIHNlbGYuX3BvcnQuX3ByZXR0eV9wYXRjaC5wcmV0dHlfcGF0Y2hf
YXZhaWxhYmxlKCk6CisgICAgICAgICAgICBwcmV0dHlfcGF0Y2ggPSBzZWxmLl9wb3J0Ll9wcmV0
dHlfcGF0Y2gucHJldHR5X3BhdGNoX3RleHQoZGlmZl9maWxlbmFtZSkKICAgICAgICAgICAgIHBy
ZXR0eV9wYXRjaF9maWxlbmFtZSA9IHNlbGYub3V0cHV0X2ZpbGVuYW1lKHNlbGYuRklMRU5BTUVf
U1VGRklYX1BSRVRUWV9QQVRDSCkKICAgICAgICAgICAgIHNlbGYuX3dyaXRlX2JpbmFyeV9maWxl
KHByZXR0eV9wYXRjaF9maWxlbmFtZSwgcHJldHR5X3BhdGNoKQogCmRpZmYgLS1naXQgYS9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9tb2RlbHMvdGVzdF9ydW5fcmVzdWx0cy5w
eSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL21vZGVscy90ZXN0X3J1bl9y
ZXN1bHRzLnB5CmluZGV4IDc2MzIzNjQuLmRiZDM2ODggMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL21vZGVscy90ZXN0X3J1bl9yZXN1bHRzLnB5CisrKyBi
L1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL21vZGVscy90ZXN0X3J1bl9yZXN1
bHRzLnB5CkBAIC0yNDMsNyArMjQzLDcgQEAgZGVmIHN1bW1hcml6ZV9yZXN1bHRzKHBvcnRfb2Jq
LCBleHBlY3RhdGlvbnMsIGluaXRpYWxfcmVzdWx0cywgcmV0cnlfcmVzdWx0cywgZW4KICAgICBy
ZXN1bHRzWydpbnRlcnJ1cHRlZCddID0gaW5pdGlhbF9yZXN1bHRzLmludGVycnVwdGVkICAjIERv
ZXMgcmVzdWx0cy5odG1sIGhhdmUgZW5vdWdoIGluZm9ybWF0aW9uIHRvIGNvbXB1dGUgdGhpcyBp
dHNlbGY/IChieSBjaGVja2luZyB0b3RhbCBudW1iZXIgb2YgcmVzdWx0cyB2cy4gdG90YWwgbnVt
YmVyIG9mIHRlc3RzPykKICAgICByZXN1bHRzWydsYXlvdXRfdGVzdHNfZGlyJ10gPSBwb3J0X29i
ai5sYXlvdXRfdGVzdHNfZGlyKCkKICAgICByZXN1bHRzWydoYXNfd2RpZmYnXSA9IHBvcnRfb2Jq
LndkaWZmX2F2YWlsYWJsZSgpCi0gICAgcmVzdWx0c1snaGFzX3ByZXR0eV9wYXRjaCddID0gcG9y
dF9vYmoucHJldHR5X3BhdGNoX2F2YWlsYWJsZSgpCisgICAgcmVzdWx0c1snaGFzX3ByZXR0eV9w
YXRjaCddID0gcG9ydF9vYmouX3ByZXR0eV9wYXRjaC5wcmV0dHlfcGF0Y2hfYXZhaWxhYmxlKCkK
ICAgICByZXN1bHRzWydwaXhlbF90ZXN0c19lbmFibGVkJ10gPSBwb3J0X29iai5nZXRfb3B0aW9u
KCdwaXhlbF90ZXN0cycpCiAKICAgICB0cnk6CmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dl
YmtpdHB5L3BvcnQvYmFzZS5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9iYXNlLnB5
CmluZGV4IDMxMThiMzMuLmJlNGU4ZmYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvcG9ydC9iYXNlLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9iYXNlLnB5
CkBAIC01MSw2ICs1MSw3IEBAIGV4Y2VwdCBJbXBvcnRFcnJvcjoKIGZyb20gd2Via2l0cHkuY29t
bW9uIGltcG9ydCBmaW5kX2ZpbGVzCiBmcm9tIHdlYmtpdHB5LmNvbW1vbiBpbXBvcnQgcmVhZF9j
aGVja3N1bV9mcm9tX3BuZwogZnJvbSB3ZWJraXRweS5jb21tb24ubWVtb2l6ZWQgaW1wb3J0IG1l
bW9pemVkCitmcm9tIHdlYmtpdHB5LmNvbW1vbi5wcmV0dHlwYXRjaCBpbXBvcnQgUHJldHR5UGF0
Y2gKIGZyb20gd2Via2l0cHkuY29tbW9uLnN5c3RlbSBpbXBvcnQgcGF0aAogZnJvbSB3ZWJraXRw
eS5jb21tb24uc3lzdGVtLmV4ZWN1dGl2ZSBpbXBvcnQgU2NyaXB0RXJyb3IKIGZyb20gd2Via2l0
cHkuY29tbW9uLnN5c3RlbS5zeXN0ZW1ob3N0IGltcG9ydCBTeXN0ZW1Ib3N0CkBAIC0xMTYsNiAr
MTE3LDcgQEAgY2xhc3MgUG9ydChvYmplY3QpOgogICAgICAgICBzZWxmLl9maWxlc3lzdGVtID0g
aG9zdC5maWxlc3lzdGVtCiAgICAgICAgIHNlbGYuX3dlYmtpdF9maW5kZXIgPSBXZWJLaXRGaW5k
ZXIoaG9zdC5maWxlc3lzdGVtKQogICAgICAgICBzZWxmLl9jb25maWcgPSBwb3J0X2NvbmZpZy5D
b25maWcoc2VsZi5fZXhlY3V0aXZlLCBzZWxmLl9maWxlc3lzdGVtLCBzZWxmLnBvcnRfbmFtZSkK
KyAgICAgICAgc2VsZi5fcHJldHR5X3BhdGNoID0gUHJldHR5UGF0Y2goc2VsZi5fZXhlY3V0aXZl
LCBzZWxmLnBhdGhfZnJvbV93ZWJraXRfYmFzZSgpLCBzZWxmLl9maWxlc3lzdGVtKQogCiAgICAg
ICAgIHNlbGYuX2hlbHBlciA9IE5vbmUKICAgICAgICAgc2VsZi5faHR0cF9zZXJ2ZXIgPSBOb25l
CkBAIC0xMzksMTAgKzE0MSw2IEBAIGNsYXNzIFBvcnQob2JqZWN0KToKICAgICAgICAgIyBodHRw
Oi8vYnVncy5weXRob24ub3JnL2lzc3VlMzIxMAogICAgICAgICBzZWxmLl93ZGlmZl9hdmFpbGFi
bGUgPSBOb25lCiAKLSAgICAgICAgIyBGSVhNRTogcHJldHR5cGF0Y2gucHkga25vd3MgdGhpcyBw
YXRoLCB3aHkgaXMgaXQgY29waWVkIGhlcmU/Ci0gICAgICAgIHNlbGYuX3ByZXR0eV9wYXRjaF9w
YXRoID0gc2VsZi5wYXRoX2Zyb21fd2Via2l0X2Jhc2UoIldlYnNpdGVzIiwgImJ1Z3Mud2Via2l0
Lm9yZyIsICJQcmV0dHlQYXRjaCIsICJwcmV0dGlmeS5yYiIpCi0gICAgICAgIHNlbGYuX3ByZXR0
eV9wYXRjaF9hdmFpbGFibGUgPSBOb25lCi0KICAgICAgICAgaWYgbm90IGhhc2F0dHIob3B0aW9u
cywgJ2NvbmZpZ3VyYXRpb24nKSBvciBub3Qgb3B0aW9ucy5jb25maWd1cmF0aW9uOgogICAgICAg
ICAgICAgc2VsZi5zZXRfb3B0aW9uX2RlZmF1bHQoJ2NvbmZpZ3VyYXRpb24nLCBzZWxmLmRlZmF1
bHRfY29uZmlndXJhdGlvbigpKQogICAgICAgICBzZWxmLl90ZXN0X2NvbmZpZ3VyYXRpb24gPSBO
b25lCkBAIC0xNzgsMTEgKzE3Niw2IEBAIGNsYXNzIFBvcnQob2JqZWN0KToKICAgICAgICAgICAg
IHNlbGYuX3dkaWZmX2F2YWlsYWJsZSA9IHNlbGYuY2hlY2tfd2RpZmYobG9nZ2luZz1GYWxzZSkK
ICAgICAgICAgcmV0dXJuIHNlbGYuX3dkaWZmX2F2YWlsYWJsZQogCi0gICAgZGVmIHByZXR0eV9w
YXRjaF9hdmFpbGFibGUoc2VsZik6Ci0gICAgICAgIGlmIHNlbGYuX3ByZXR0eV9wYXRjaF9hdmFp
bGFibGUgaXMgTm9uZToKLSAgICAgICAgICAgIHNlbGYuX3ByZXR0eV9wYXRjaF9hdmFpbGFibGUg
PSBzZWxmLmNoZWNrX3ByZXR0eV9wYXRjaChsb2dnaW5nPUZhbHNlKQotICAgICAgICByZXR1cm4g
c2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZQotCiAgICAgZGVmIHNob3VsZF9yZXRyeV9jcmFz
aGVzKHNlbGYpOgogICAgICAgICByZXR1cm4gRmFsc2UKIApAQCAtMjgxLDI1ICsyNzQsNiBAQCBj
bGFzcyBQb3J0KG9iamVjdCk6CiAgICAgICAgICAgICByZXR1cm4gRmFsc2UKICAgICAgICAgcmV0
dXJuIFRydWUKIAotICAgIGRlZiBjaGVja19wcmV0dHlfcGF0Y2goc2VsZiwgbG9nZ2luZz1UcnVl
KToKLSAgICAgICAgIiIiQ2hlY2tzIHdoZXRoZXIgd2UgY2FuIHVzZSB0aGUgUHJldHR5UGF0Y2gg
cnVieSBzY3JpcHQuIiIiCi0gICAgICAgIHRyeToKLSAgICAgICAgICAgIF8gPSBzZWxmLl9leGVj
dXRpdmUucnVuX2NvbW1hbmQoWydydWJ5JywgJy0tdmVyc2lvbiddKQotICAgICAgICBleGNlcHQg
T1NFcnJvciwgZToKLSAgICAgICAgICAgIGlmIGUuZXJybm8gaW4gW2Vycm5vLkVOT0VOVCwgZXJy
bm8uRUFDQ0VTLCBlcnJuby5FQ0hJTERdOgotICAgICAgICAgICAgICAgIGlmIGxvZ2dpbmc6Ci0g
ICAgICAgICAgICAgICAgICAgIF9sb2cud2FybmluZygiUnVieSBpcyBub3QgaW5zdGFsbGVkOyBj
YW4ndCBnZW5lcmF0ZSBwcmV0dHkgcGF0Y2hlcy4iKQotICAgICAgICAgICAgICAgICAgICBfbG9n
Lndhcm5pbmcoJycpCi0gICAgICAgICAgICAgICAgcmV0dXJuIEZhbHNlCi0KLSAgICAgICAgaWYg
bm90IHNlbGYuX2ZpbGVzeXN0ZW0uZXhpc3RzKHNlbGYuX3ByZXR0eV9wYXRjaF9wYXRoKToKLSAg
ICAgICAgICAgIGlmIGxvZ2dpbmc6Ci0gICAgICAgICAgICAgICAgX2xvZy53YXJuaW5nKCJVbmFi
bGUgdG8gZmluZCAlczsgY2FuJ3QgZ2VuZXJhdGUgcHJldHR5IHBhdGNoZXMuIiAlIHNlbGYuX3By
ZXR0eV9wYXRjaF9wYXRoKQotICAgICAgICAgICAgICAgIF9sb2cud2FybmluZygnJykKLSAgICAg
ICAgICAgIHJldHVybiBGYWxzZQotCi0gICAgICAgIHJldHVybiBUcnVlCi0KICAgICBkZWYgY2hl
Y2tfd2RpZmYoc2VsZiwgbG9nZ2luZz1UcnVlKToKICAgICAgICAgaWYgbm90IHNlbGYuX3BhdGhf
dG9fd2RpZmYoKToKICAgICAgICAgICAgICMgRG9uJ3QgbmVlZCB0byBsb2cgaGVyZSBzaW5jZSB0
aGlzIGlzIHRoZSBwb3J0IGNob29zaW5nIG5vdCB0byB1c2Ugd2RpZmYuCkBAIC0xMTU0LDMyICsx
MTI4LDYgQEAgY2xhc3MgUG9ydChvYmplY3QpOgogICAgICAgICAgICAgICAgIHJldHVybiAiIgog
ICAgICAgICAgICAgcmFpc2UKIAotICAgICMgVGhpcyBpcyBhIGNsYXNzIHZhcmlhYmxlIHNvIHdl
IGNhbiB0ZXN0IGVycm9yIG91dHB1dCBlYXNpbHkuCi0gICAgX3ByZXR0eV9wYXRjaF9lcnJvcl9o
dG1sID0gIkZhaWxlZCB0byBydW4gUHJldHR5UGF0Y2gsIHNlZSBlcnJvciBsb2cuIgotCi0gICAg
ZGVmIHByZXR0eV9wYXRjaF90ZXh0KHNlbGYsIGRpZmZfcGF0aCk6Ci0gICAgICAgIGlmIHNlbGYu
X3ByZXR0eV9wYXRjaF9hdmFpbGFibGUgaXMgTm9uZToKLSAgICAgICAgICAgIHNlbGYuX3ByZXR0
eV9wYXRjaF9hdmFpbGFibGUgPSBzZWxmLmNoZWNrX3ByZXR0eV9wYXRjaChsb2dnaW5nPUZhbHNl
KQotICAgICAgICBpZiBub3Qgc2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZToKLSAgICAgICAg
ICAgIHJldHVybiBzZWxmLl9wcmV0dHlfcGF0Y2hfZXJyb3JfaHRtbAotICAgICAgICBjb21tYW5k
ID0gKCJydWJ5IiwgIi1JIiwgc2VsZi5fZmlsZXN5c3RlbS5kaXJuYW1lKHNlbGYuX3ByZXR0eV9w
YXRjaF9wYXRoKSwKLSAgICAgICAgICAgICAgICAgICBzZWxmLl9wcmV0dHlfcGF0Y2hfcGF0aCwg
ZGlmZl9wYXRoKQotICAgICAgICB0cnk6Ci0gICAgICAgICAgICAjIERpZmZzIGFyZSB0cmVhdGVk
IGFzIGJpbmFyeSAod2UgcGFzcyBkZWNvZGVfb3V0cHV0PUZhbHNlKSBhcyB0aGV5Ci0gICAgICAg
ICAgICAjIG1heSBjb250YWluIG11bHRpcGxlIGZpbGVzIG9mIGNvbmZsaWN0aW5nIGVuY29kaW5n
cy4KLSAgICAgICAgICAgIHJldHVybiBzZWxmLl9leGVjdXRpdmUucnVuX2NvbW1hbmQoY29tbWFu
ZCwgZGVjb2RlX291dHB1dD1GYWxzZSkKLSAgICAgICAgZXhjZXB0IE9TRXJyb3IsIGU6Ci0gICAg
ICAgICAgICAjIElmIHRoZSBzeXN0ZW0gaXMgbWlzc2luZyBydWJ5IGxvZyB0aGUgZXJyb3IgYW5k
IHN0b3AgdHJ5aW5nLgotICAgICAgICAgICAgc2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZSA9
IEZhbHNlCi0gICAgICAgICAgICBfbG9nLmVycm9yKCJGYWlsZWQgdG8gcnVuIFByZXR0eVBhdGNo
ICglcyk6ICVzIiAlIChjb21tYW5kLCBlKSkKLSAgICAgICAgICAgIHJldHVybiBzZWxmLl9wcmV0
dHlfcGF0Y2hfZXJyb3JfaHRtbAotICAgICAgICBleGNlcHQgU2NyaXB0RXJyb3IsIGU6Ci0gICAg
ICAgICAgICAjIElmIHJ1YnkgZmFpbGVkIHRvIHJ1biBmb3Igc29tZSByZWFzb24sIGxvZyB0aGUg
Y29tbWFuZAotICAgICAgICAgICAgIyBvdXRwdXQgYW5kIHN0b3AgdHJ5aW5nLgotICAgICAgICAg
ICAgc2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZSA9IEZhbHNlCi0gICAgICAgICAgICBfbG9n
LmVycm9yKCJGYWlsZWQgdG8gcnVuIFByZXR0eVBhdGNoICglcyk6XG4lcyIgJSAoY29tbWFuZCwg
ZS5tZXNzYWdlX3dpdGhfb3V0cHV0KCkpKQotICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3ByZXR0
eV9wYXRjaF9lcnJvcl9odG1sCi0KICAgICBkZWYgZGVmYXVsdF9jb25maWd1cmF0aW9uKHNlbGYp
OgogICAgICAgICByZXR1cm4gc2VsZi5fY29uZmlnLmRlZmF1bHRfY29uZmlndXJhdGlvbigpCiAK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9iYXNlX3VuaXR0ZXN0LnB5
IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L2Jhc2VfdW5pdHRlc3QucHkKaW5kZXggYzA0
Y2FlMC4uMmFhZWMwZCAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L2Jh
c2VfdW5pdHRlc3QucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L2Jhc2VfdW5p
dHRlc3QucHkKQEAgLTkwLDI0ICs5MCwyNCBAQCBjbGFzcyBQb3J0VGVzdCh1bml0dGVzdC5UZXN0
Q2FzZSk6CiAgICAgICAgIHBvcnQgPSBzZWxmLm1ha2VfcG9ydChleGVjdXRpdmU9ZXhlY3V0aXZl
X21vY2suTW9ja0V4ZWN1dGl2ZTIoZXhjZXB0aW9uPU9TRXJyb3IpKQogICAgICAgICBvYyA9IE91
dHB1dENhcHR1cmUoKQogICAgICAgICBvYy5jYXB0dXJlX291dHB1dCgpCi0gICAgICAgIHNlbGYu
YXNzZXJ0RXF1YWwocG9ydC5wcmV0dHlfcGF0Y2hfdGV4dCgicGF0Y2gudHh0IiksCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgcG9ydC5fcHJldHR5X3BhdGNoX2Vycm9yX2h0bWwpCisgICAgICAg
IHNlbGYuYXNzZXJ0RXF1YWwocG9ydC5fcHJldHR5X3BhdGNoLnByZXR0eV9wYXRjaF90ZXh0KCJw
YXRjaC50eHQiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBwb3J0Ll9wcmV0dHlfcGF0Y2gu
X3ByZXR0eV9wYXRjaF9lcnJvcl9odG1sKQogCiAgICAgICAgICMgVGhpcyB0ZXN0cyByZXBlYXRl
ZCBjYWxscyB0byBtYWtlIHN1cmUgd2UgY2FjaGUgdGhlIHJlc3VsdC4KLSAgICAgICAgc2VsZi5h
c3NlcnRFcXVhbChwb3J0LnByZXR0eV9wYXRjaF90ZXh0KCJwYXRjaC50eHQiKSwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICBwb3J0Ll9wcmV0dHlfcGF0Y2hfZXJyb3JfaHRtbCkKKyAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbChwb3J0Ll9wcmV0dHlfcGF0Y2gucHJldHR5X3BhdGNoX3RleHQoInBh
dGNoLnR4dCIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIHBvcnQuX3ByZXR0eV9wYXRjaC5f
cHJldHR5X3BhdGNoX2Vycm9yX2h0bWwpCiAgICAgICAgIG9jLnJlc3RvcmVfb3V0cHV0KCkKIAog
ICAgIGRlZiB0ZXN0X3ByZXR0eV9wYXRjaF9zY3JpcHRfZXJyb3Ioc2VsZik6CiAgICAgICAgICMg
RklYTUU6IFRoaXMgaXMgc29tZSB1Z2x5IHdoaXRlLWJveCB0ZXN0IGhhY2tpbmcgLi4uCiAgICAg
ICAgIHBvcnQgPSBzZWxmLm1ha2VfcG9ydChleGVjdXRpdmU9ZXhlY3V0aXZlX21vY2suTW9ja0V4
ZWN1dGl2ZTIoZXhjZXB0aW9uPVNjcmlwdEVycm9yKSkKLSAgICAgICAgcG9ydC5fcHJldHR5X3Bh
dGNoX2F2YWlsYWJsZSA9IFRydWUKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwb3J0LnByZXR0
eV9wYXRjaF90ZXh0KCJwYXRjaC50eHQiKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBwb3J0
Ll9wcmV0dHlfcGF0Y2hfZXJyb3JfaHRtbCkKKyAgICAgICAgcG9ydC5fcHJldHR5X3BhdGNoLl9w
cmV0dHlfcGF0Y2hfYXZhaWxhYmxlID0gVHJ1ZQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBv
cnQuX3ByZXR0eV9wYXRjaC5wcmV0dHlfcGF0Y2hfdGV4dCgicGF0Y2gudHh0IiksCisgICAgICAg
ICAgICAgICAgICAgICAgICAgcG9ydC5fcHJldHR5X3BhdGNoLl9wcmV0dHlfcGF0Y2hfZXJyb3Jf
aHRtbCkKIAogICAgICAgICAjIFRoaXMgdGVzdHMgcmVwZWF0ZWQgY2FsbHMgdG8gbWFrZSBzdXJl
IHdlIGNhY2hlIHRoZSByZXN1bHQuCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocG9ydC5wcmV0
dHlfcGF0Y2hfdGV4dCgicGF0Y2gudHh0IiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgcG9y
dC5fcHJldHR5X3BhdGNoX2Vycm9yX2h0bWwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocG9y
dC5fcHJldHR5X3BhdGNoLnByZXR0eV9wYXRjaF90ZXh0KCJwYXRjaC50eHQiKSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICBwb3J0Ll9wcmV0dHlfcGF0Y2guX3ByZXR0eV9wYXRjaF9lcnJvcl9o
dG1sKQogCiAgICAgZGVmIGludGVncmF0aW9uX3Rlc3RfcnVuX3dkaWZmKHNlbGYpOgogICAgICAg
ICBleGVjdXRpdmUgPSBFeGVjdXRpdmUoKQo=
</data>
<flag name="review"
          id="241197"
          type_id="1"
          status="-"
          setter="rniwa"
    />
    <flag name="commit-queue"
          id="241198"
          type_id="3"
          status="-"
          setter="rniwa"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>217992</attachid>
            <date>2013-11-28 05:35:25 -0800</date>
            <delta_ts>2013-11-28 06:29:58 -0800</delta_ts>
            <desc>Proposed patch</desc>
            <filename>proposedpatch.patch</filename>
            <type>text/plain</type>
            <size>14458</size>
            <attacher name="Dániel Bátyai">dbatyai.u-szeged</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBlNmE5
NzM1Li4zZjkzNzlmIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMzMgQEAKKzIwMTMtMTEtMjggIETDoW5pZWwgQsOhdHlhaSAgPEJh
dHlhaS5EYW5pZWxAc3R1ZC51LXN6ZWdlZC5odT4KKworICAgICAgICBNb3ZlIFByZXR0eVBhdGNo
IHJlbGF0ZWQgY29kZSB0byBwcmV0dHlwYXRjaC5weQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI0OTM3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBjb2RlIHNlZW1zIHRvIGhhdmUgYSBiZXR0ZXIg
cGxhY2UgaGVyZSB0aGFuIGluIFBvcnQsIHNpbmNlIFByZXR0eVBhdGNoIGFscmVhZHkga25vd3MK
KyAgICAgICAgcHJldHR5X3BhdGNoX3BhdGgsIGFuZCB0aGlzIGFsc28gdW5pZmllcyB0aGUgdXNh
Z2Ugb2YgUHJldHR5UGF0Y2gKKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL3By
ZXR0eXBhdGNoLnB5OgorICAgICAgICAoUHJldHR5UGF0Y2guX19pbml0X18pOgorICAgICAgICAo
UHJldHR5UGF0Y2gucHJldHR5X2RpZmYpOgorICAgICAgICAoUHJldHR5UGF0Y2gpOgorICAgICAg
ICAoUHJldHR5UGF0Y2gucHJldHR5X3BhdGNoX2F2YWlsYWJsZSk6CisgICAgICAgIChQcmV0dHlQ
YXRjaC5jaGVja19wcmV0dHlfcGF0Y2gpOgorICAgICAgICAoUHJldHR5UGF0Y2gucHJldHR5X3Bh
dGNoX3RleHQpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRy
b2xsZXJzL3Rlc3RfcmVzdWx0X3dyaXRlci5weToKKyAgICAgICAgKFRlc3RSZXN1bHRXcml0ZXIu
Y3JlYXRlX3RleHRfZGlmZl9hbmRfd3JpdGVfcmVzdWx0KToKKyAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L2xheW91dF90ZXN0cy9tb2RlbHMvdGVzdF9ydW5fcmVzdWx0cy5weToKKyAgICAgICAg
KHN1bW1hcml6ZV9yZXN1bHRzKToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3BvcnQvYmFz
ZS5weToKKyAgICAgICAgKFBvcnQuX19pbml0X18pOgorICAgICAgICAoUG9ydC53ZGlmZl9hdmFp
bGFibGUpOgorICAgICAgICAoUG9ydC5jaGVja19pbWFnZV9kaWZmKToKKyAgICAgICAgKFBvcnQu
d2RpZmZfdGV4dCk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9wb3J0L2Jhc2VfdW5pdHRl
c3QucHk6CisgICAgICAgIChQb3J0VGVzdC50ZXN0X3ByZXR0eV9wYXRjaF9vc19lcnJvcik6Cisg
ICAgICAgIChQb3J0VGVzdC50ZXN0X3ByZXR0eV9wYXRjaF9zY3JpcHRfZXJyb3IpOgorCiAyMDEz
LTExLTI2ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CiAKICAgICAgICAgRG8gYnl0
ZWNvZGUgdmFsaWRhdGlvbiBhcyBwYXJ0IG9mIHRlc3RpbmcKZGlmZiAtLWdpdCBhL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvY29tbW9uL3ByZXR0eXBhdGNoLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9jb21tb24vcHJldHR5cGF0Y2gucHkKaW5kZXggZThhOTEzYS4uOWJhYjRlZCAxMDA2NDQK
LS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vcHJldHR5cGF0Y2gucHkKKysrIGIv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vcHJldHR5cGF0Y2gucHkKQEAgLTI2LDE1ICsy
NiwyNSBAQAogIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKICMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAoraW1wb3J0IGVycm5vCitp
bXBvcnQgbG9nZ2luZwogaW1wb3J0IG9zCiBpbXBvcnQgdGVtcGZpbGUKK2Zyb20gd2Via2l0cHku
Y29tbW9uLnN5c3RlbS5leGVjdXRpdmUgaW1wb3J0IFNjcmlwdEVycm9yCisKK19sb2cgPSBsb2dn
aW5nLmdldExvZ2dlcihfX25hbWVfXykKIAogCiBjbGFzcyBQcmV0dHlQYXRjaChvYmplY3QpOgog
ICAgICMgRklYTUU6IFByZXR0eVBhdGNoIHNob3VsZCBub3QgcmVxdWlyZSBjaGVja291dF9yb290
LgotICAgIGRlZiBfX2luaXRfXyhzZWxmLCBleGVjdXRpdmUsIGNoZWNrb3V0X3Jvb3QpOgorICAg
IGRlZiBfX2luaXRfXyhzZWxmLCBleGVjdXRpdmUsIGNoZWNrb3V0X3Jvb3QsIGZpbGVzeXN0ZW09
Tm9uZSk6CiAgICAgICAgIHNlbGYuX2V4ZWN1dGl2ZSA9IGV4ZWN1dGl2ZQorICAgICAgICBzZWxm
Ll9maWxlc3lzdGVtID0gZmlsZXN5c3RlbQogICAgICAgICBzZWxmLl9jaGVja291dF9yb290ID0g
Y2hlY2tvdXRfcm9vdAorICAgICAgICBzZWxmLl9wcmV0dHlfcGF0Y2hfZXJyb3JfaHRtbCA9ICJG
YWlsZWQgdG8gcnVuIFByZXR0eVBhdGNoLCBzZWUgZXJyb3IgbG9nLiIKKyAgICAgICAgc2VsZi5f
cHJldHR5X3BhdGNoX3BhdGggPSBvcy5wYXRoLmpvaW4oc2VsZi5fY2hlY2tvdXRfcm9vdCwgIldl
YnNpdGVzIiwgImJ1Z3Mud2Via2l0Lm9yZyIsICJQcmV0dHlQYXRjaCIpCisgICAgICAgIHNlbGYu
X3ByZXR0aWZ5X3BhdGggPSBvcy5wYXRoLmpvaW4oc2VsZi5fcHJldHR5X3BhdGNoX3BhdGgsICJw
cmV0dGlmeS5yYiIpCisgICAgICAgIHNlbGYuX3ByZXR0eV9wYXRjaF9hdmFpbGFibGUgPSBOb25l
CiAKICAgICBkZWYgcHJldHR5X2RpZmZfZmlsZShzZWxmLCBkaWZmKToKICAgICAgICAgIyBEaWZm
cyBjYW4gY29udGFpbiBtdWx0aXBsZSB0ZXh0IGZpbGVzIG9mIGRpZmZlcmVudCBlbmNvZGluZ3MK
QEAgLTUyLDE2ICs2Miw1OSBAQCBjbGFzcyBQcmV0dHlQYXRjaChvYmplY3QpOgogICAgICAgICBp
ZiBub3QgZGlmZjoKICAgICAgICAgICAgIHJldHVybiAiIgogCi0gICAgICAgIHByZXR0eV9wYXRj
aF9wYXRoID0gb3MucGF0aC5qb2luKHNlbGYuX2NoZWNrb3V0X3Jvb3QsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJXZWJzaXRlcyIsICJidWdzLndlYmtpdC5vcmci
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUHJldHR5UGF0Y2gi
KQotICAgICAgICBwcmV0dGlmeV9wYXRoID0gb3MucGF0aC5qb2luKHByZXR0eV9wYXRjaF9wYXRo
LCAicHJldHRpZnkucmIiKQogICAgICAgICBhcmdzID0gWwogICAgICAgICAgICAgInJ1YnkiLAog
ICAgICAgICAgICAgIi1JIiwKLSAgICAgICAgICAgIHByZXR0eV9wYXRjaF9wYXRoLAotICAgICAg
ICAgICAgcHJldHRpZnlfcGF0aCwKKyAgICAgICAgICAgIHNlbGYuX3ByZXR0eV9wYXRjaF9wYXRo
LAorICAgICAgICAgICAgc2VsZi5fcHJldHRpZnlfcGF0aCwKICAgICAgICAgXQogICAgICAgICAj
IFByZXR0eVBhdGNoIGRvZXMgbm90IG1vZGlmeSB0aGUgZW5jb2Rpbmcgb2YgdGhlIGRpZmYgb3V0
cHV0CiAgICAgICAgICMgc28gd2UgY2FuJ3QgZXhwZWN0IGl0IHRvIGJlIHV0Zi04LgogICAgICAg
ICByZXR1cm4gc2VsZi5fZXhlY3V0aXZlLnJ1bl9jb21tYW5kKGFyZ3MsIGlucHV0PWRpZmYsIGRl
Y29kZV9vdXRwdXQ9RmFsc2UpCisKKyAgICBkZWYgcHJldHR5X3BhdGNoX2F2YWlsYWJsZShzZWxm
KToKKyAgICAgICAgaWYgc2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZSBpcyBOb25lOgorICAg
ICAgICAgICAgc2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZSA9IHNlbGYuY2hlY2tfcHJldHR5
X3BhdGNoKGxvZ2dpbmc9RmFsc2UpCisgICAgICAgIHJldHVybiBzZWxmLl9wcmV0dHlfcGF0Y2hf
YXZhaWxhYmxlCisKKyAgICBkZWYgY2hlY2tfcHJldHR5X3BhdGNoKHNlbGYsIGxvZ2dpbmc9VHJ1
ZSk6CisgICAgICAgICIiIkNoZWNrcyB3aGV0aGVyIHdlIGNhbiB1c2UgdGhlIFByZXR0eVBhdGNo
IHJ1Ynkgc2NyaXB0LiIiIgorICAgICAgICB0cnk6CisgICAgICAgICAgICBfID0gc2VsZi5fZXhl
Y3V0aXZlLnJ1bl9jb21tYW5kKFsncnVieScsICctLXZlcnNpb24nXSkKKyAgICAgICAgZXhjZXB0
IE9TRXJyb3IsIGU6CisgICAgICAgICAgICBpZiBlLmVycm5vIGluIFtlcnJuby5FTk9FTlQsIGVy
cm5vLkVBQ0NFUywgZXJybm8uRUNISUxEXToKKyAgICAgICAgICAgICAgICBpZiBsb2dnaW5nOgor
ICAgICAgICAgICAgICAgICAgICBfbG9nLndhcm5pbmcoIlJ1YnkgaXMgbm90IGluc3RhbGxlZDsg
Y2FuJ3QgZ2VuZXJhdGUgcHJldHR5IHBhdGNoZXMuIikKKyAgICAgICAgICAgICAgICAgICAgX2xv
Zy53YXJuaW5nKCcnKQorICAgICAgICAgICAgICAgIHJldHVybiBGYWxzZQorCisgICAgICAgIGlm
IG5vdCBzZWxmLl9maWxlc3lzdGVtLmV4aXN0cyhzZWxmLl9wcmV0dHlfcGF0Y2hfcGF0aCk6Cisg
ICAgICAgICAgICBpZiBsb2dnaW5nOgorICAgICAgICAgICAgICAgIF9sb2cud2FybmluZygiVW5h
YmxlIHRvIGZpbmQgJXM7IGNhbid0IGdlbmVyYXRlIHByZXR0eSBwYXRjaGVzLiIgJSBzZWxmLl9w
cmV0dHlfcGF0Y2hfcGF0aCkKKyAgICAgICAgICAgICAgICBfbG9nLndhcm5pbmcoJycpCisgICAg
ICAgICAgICByZXR1cm4gRmFsc2UKKworICAgICAgICByZXR1cm4gVHJ1ZQorCisgICAgZGVmIHBy
ZXR0eV9wYXRjaF90ZXh0KHNlbGYsIGRpZmZfcGF0aCk6CisgICAgICAgIGlmIHNlbGYuX3ByZXR0
eV9wYXRjaF9hdmFpbGFibGUgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuX3ByZXR0eV9wYXRj
aF9hdmFpbGFibGUgPSBzZWxmLmNoZWNrX3ByZXR0eV9wYXRjaChsb2dnaW5nPUZhbHNlKQorICAg
ICAgICBpZiBub3Qgc2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZToKKyAgICAgICAgICAgIHJl
dHVybiBzZWxmLl9wcmV0dHlfcGF0Y2hfZXJyb3JfaHRtbAorICAgICAgICBjb21tYW5kID0gKCJy
dWJ5IiwgIi1JIiwgc2VsZi5fZmlsZXN5c3RlbS5kaXJuYW1lKHNlbGYuX3ByZXR0eV9wYXRjaF9w
YXRoKSwKKyAgICAgICAgICAgICAgICAgICBzZWxmLl9wcmV0dHlfcGF0Y2hfcGF0aCwgZGlmZl9w
YXRoKQorICAgICAgICB0cnk6CisgICAgICAgICAgICAjIERpZmZzIGFyZSB0cmVhdGVkIGFzIGJp
bmFyeSAod2UgcGFzcyBkZWNvZGVfb3V0cHV0PUZhbHNlKSBhcyB0aGV5CisgICAgICAgICAgICAj
IG1heSBjb250YWluIG11bHRpcGxlIGZpbGVzIG9mIGNvbmZsaWN0aW5nIGVuY29kaW5ncy4KKyAg
ICAgICAgICAgIHJldHVybiBzZWxmLl9leGVjdXRpdmUucnVuX2NvbW1hbmQoY29tbWFuZCwgZGVj
b2RlX291dHB1dD1GYWxzZSkKKyAgICAgICAgZXhjZXB0IE9TRXJyb3IsIGU6CisgICAgICAgICAg
ICAjIElmIHRoZSBzeXN0ZW0gaXMgbWlzc2luZyBydWJ5IGxvZyB0aGUgZXJyb3IgYW5kIHN0b3Ag
dHJ5aW5nLgorICAgICAgICAgICAgc2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZSA9IEZhbHNl
CisgICAgICAgICAgICBfbG9nLmVycm9yKCJGYWlsZWQgdG8gcnVuIFByZXR0eVBhdGNoICglcyk6
ICVzIiAlIChjb21tYW5kLCBlKSkKKyAgICAgICAgICAgIHJldHVybiBzZWxmLl9wcmV0dHlfcGF0
Y2hfZXJyb3JfaHRtbAorICAgICAgICBleGNlcHQgU2NyaXB0RXJyb3IsIGU6CisgICAgICAgICAg
ICAjIElmIHJ1YnkgZmFpbGVkIHRvIHJ1biBmb3Igc29tZSByZWFzb24sIGxvZyB0aGUgY29tbWFu
ZAorICAgICAgICAgICAgIyBvdXRwdXQgYW5kIHN0b3AgdHJ5aW5nLgorICAgICAgICAgICAgc2Vs
Zi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZSA9IEZhbHNlCisgICAgICAgICAgICBfbG9nLmVycm9y
KCJGYWlsZWQgdG8gcnVuIFByZXR0eVBhdGNoICglcyk6XG4lcyIgJSAoY29tbWFuZCwgZS5tZXNz
YWdlX3dpdGhfb3V0cHV0KCkpKQorICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3ByZXR0eV9wYXRj
aF9lcnJvcl9odG1sCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90
ZXN0cy9jb250cm9sbGVycy90ZXN0X3Jlc3VsdF93cml0ZXIucHkgYi9Ub29scy9TY3JpcHRzL3dl
YmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy90ZXN0X3Jlc3VsdF93cml0ZXIucHkKaW5k
ZXggMjNlNDRkNS4uNzRlNGU0ZiAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9s
YXlvdXRfdGVzdHMvY29udHJvbGxlcnMvdGVzdF9yZXN1bHRfd3JpdGVyLnB5CisrKyBiL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL3Rlc3RfcmVzdWx0X3dy
aXRlci5weQpAQCAtMTk2LDggKzE5Niw4IEBAIGNsYXNzIFRlc3RSZXN1bHRXcml0ZXIob2JqZWN0
KToKICAgICAgICAgICAgIHNlbGYuX3dyaXRlX2JpbmFyeV9maWxlKHdkaWZmX2ZpbGVuYW1lLCB3
ZGlmZikKIAogICAgICAgICAjIFVzZSBXZWJLaXQncyBQcmV0dHlQYXRjaC5yYiB0byBnZXQgYW4g
SFRNTCBkaWZmLgotICAgICAgICBpZiBzZWxmLl9wb3J0LnByZXR0eV9wYXRjaF9hdmFpbGFibGUo
KToKLSAgICAgICAgICAgIHByZXR0eV9wYXRjaCA9IHNlbGYuX3BvcnQucHJldHR5X3BhdGNoX3Rl
eHQoZGlmZl9maWxlbmFtZSkKKyAgICAgICAgaWYgc2VsZi5fcG9ydC5fcHJldHR5X3BhdGNoLnBy
ZXR0eV9wYXRjaF9hdmFpbGFibGUoKToKKyAgICAgICAgICAgIHByZXR0eV9wYXRjaCA9IHNlbGYu
X3BvcnQuX3ByZXR0eV9wYXRjaC5wcmV0dHlfcGF0Y2hfdGV4dChkaWZmX2ZpbGVuYW1lKQogICAg
ICAgICAgICAgcHJldHR5X3BhdGNoX2ZpbGVuYW1lID0gc2VsZi5vdXRwdXRfZmlsZW5hbWUoc2Vs
Zi5GSUxFTkFNRV9TVUZGSVhfUFJFVFRZX1BBVENIKQogICAgICAgICAgICAgc2VsZi5fd3JpdGVf
YmluYXJ5X2ZpbGUocHJldHR5X3BhdGNoX2ZpbGVuYW1lLCBwcmV0dHlfcGF0Y2gpCiAKZGlmZiAt
LWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL21vZGVscy90ZXN0X3J1
bl9yZXN1bHRzLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvbW9kZWxz
L3Rlc3RfcnVuX3Jlc3VsdHMucHkKaW5kZXggNzYzMjM2NC4uZGJkMzY4OCAxMDA2NDQKLS0tIGEv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvbW9kZWxzL3Rlc3RfcnVuX3Jlc3Vs
dHMucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvbW9kZWxzL3Rl
c3RfcnVuX3Jlc3VsdHMucHkKQEAgLTI0Myw3ICsyNDMsNyBAQCBkZWYgc3VtbWFyaXplX3Jlc3Vs
dHMocG9ydF9vYmosIGV4cGVjdGF0aW9ucywgaW5pdGlhbF9yZXN1bHRzLCByZXRyeV9yZXN1bHRz
LCBlbgogICAgIHJlc3VsdHNbJ2ludGVycnVwdGVkJ10gPSBpbml0aWFsX3Jlc3VsdHMuaW50ZXJy
dXB0ZWQgICMgRG9lcyByZXN1bHRzLmh0bWwgaGF2ZSBlbm91Z2ggaW5mb3JtYXRpb24gdG8gY29t
cHV0ZSB0aGlzIGl0c2VsZj8gKGJ5IGNoZWNraW5nIHRvdGFsIG51bWJlciBvZiByZXN1bHRzIHZz
LiB0b3RhbCBudW1iZXIgb2YgdGVzdHM/KQogICAgIHJlc3VsdHNbJ2xheW91dF90ZXN0c19kaXIn
XSA9IHBvcnRfb2JqLmxheW91dF90ZXN0c19kaXIoKQogICAgIHJlc3VsdHNbJ2hhc193ZGlmZidd
ID0gcG9ydF9vYmoud2RpZmZfYXZhaWxhYmxlKCkKLSAgICByZXN1bHRzWydoYXNfcHJldHR5X3Bh
dGNoJ10gPSBwb3J0X29iai5wcmV0dHlfcGF0Y2hfYXZhaWxhYmxlKCkKKyAgICByZXN1bHRzWydo
YXNfcHJldHR5X3BhdGNoJ10gPSBwb3J0X29iai5fcHJldHR5X3BhdGNoLnByZXR0eV9wYXRjaF9h
dmFpbGFibGUoKQogICAgIHJlc3VsdHNbJ3BpeGVsX3Rlc3RzX2VuYWJsZWQnXSA9IHBvcnRfb2Jq
LmdldF9vcHRpb24oJ3BpeGVsX3Rlc3RzJykKIAogICAgIHRyeToKZGlmZiAtLWdpdCBhL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvcG9ydC9iYXNlLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9w
b3J0L2Jhc2UucHkKaW5kZXggMzExOGIzMy4uYmU0ZThmZiAxMDA2NDQKLS0tIGEvVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9wb3J0L2Jhc2UucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9w
b3J0L2Jhc2UucHkKQEAgLTUxLDYgKzUxLDcgQEAgZXhjZXB0IEltcG9ydEVycm9yOgogZnJvbSB3
ZWJraXRweS5jb21tb24gaW1wb3J0IGZpbmRfZmlsZXMKIGZyb20gd2Via2l0cHkuY29tbW9uIGlt
cG9ydCByZWFkX2NoZWNrc3VtX2Zyb21fcG5nCiBmcm9tIHdlYmtpdHB5LmNvbW1vbi5tZW1vaXpl
ZCBpbXBvcnQgbWVtb2l6ZWQKK2Zyb20gd2Via2l0cHkuY29tbW9uLnByZXR0eXBhdGNoIGltcG9y
dCBQcmV0dHlQYXRjaAogZnJvbSB3ZWJraXRweS5jb21tb24uc3lzdGVtIGltcG9ydCBwYXRoCiBm
cm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0uZXhlY3V0aXZlIGltcG9ydCBTY3JpcHRFcnJvcgog
ZnJvbSB3ZWJraXRweS5jb21tb24uc3lzdGVtLnN5c3RlbWhvc3QgaW1wb3J0IFN5c3RlbUhvc3QK
QEAgLTExNiw2ICsxMTcsNyBAQCBjbGFzcyBQb3J0KG9iamVjdCk6CiAgICAgICAgIHNlbGYuX2Zp
bGVzeXN0ZW0gPSBob3N0LmZpbGVzeXN0ZW0KICAgICAgICAgc2VsZi5fd2Via2l0X2ZpbmRlciA9
IFdlYktpdEZpbmRlcihob3N0LmZpbGVzeXN0ZW0pCiAgICAgICAgIHNlbGYuX2NvbmZpZyA9IHBv
cnRfY29uZmlnLkNvbmZpZyhzZWxmLl9leGVjdXRpdmUsIHNlbGYuX2ZpbGVzeXN0ZW0sIHNlbGYu
cG9ydF9uYW1lKQorICAgICAgICBzZWxmLl9wcmV0dHlfcGF0Y2ggPSBQcmV0dHlQYXRjaChzZWxm
Ll9leGVjdXRpdmUsIHNlbGYucGF0aF9mcm9tX3dlYmtpdF9iYXNlKCksIHNlbGYuX2ZpbGVzeXN0
ZW0pCiAKICAgICAgICAgc2VsZi5faGVscGVyID0gTm9uZQogICAgICAgICBzZWxmLl9odHRwX3Nl
cnZlciA9IE5vbmUKQEAgLTEzOSwxMCArMTQxLDYgQEAgY2xhc3MgUG9ydChvYmplY3QpOgogICAg
ICAgICAjIGh0dHA6Ly9idWdzLnB5dGhvbi5vcmcvaXNzdWUzMjEwCiAgICAgICAgIHNlbGYuX3dk
aWZmX2F2YWlsYWJsZSA9IE5vbmUKIAotICAgICAgICAjIEZJWE1FOiBwcmV0dHlwYXRjaC5weSBr
bm93cyB0aGlzIHBhdGgsIHdoeSBpcyBpdCBjb3BpZWQgaGVyZT8KLSAgICAgICAgc2VsZi5fcHJl
dHR5X3BhdGNoX3BhdGggPSBzZWxmLnBhdGhfZnJvbV93ZWJraXRfYmFzZSgiV2Vic2l0ZXMiLCAi
YnVncy53ZWJraXQub3JnIiwgIlByZXR0eVBhdGNoIiwgInByZXR0aWZ5LnJiIikKLSAgICAgICAg
c2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZSA9IE5vbmUKLQogICAgICAgICBpZiBub3QgaGFz
YXR0cihvcHRpb25zLCAnY29uZmlndXJhdGlvbicpIG9yIG5vdCBvcHRpb25zLmNvbmZpZ3VyYXRp
b246CiAgICAgICAgICAgICBzZWxmLnNldF9vcHRpb25fZGVmYXVsdCgnY29uZmlndXJhdGlvbics
IHNlbGYuZGVmYXVsdF9jb25maWd1cmF0aW9uKCkpCiAgICAgICAgIHNlbGYuX3Rlc3RfY29uZmln
dXJhdGlvbiA9IE5vbmUKQEAgLTE3OCwxMSArMTc2LDYgQEAgY2xhc3MgUG9ydChvYmplY3QpOgog
ICAgICAgICAgICAgc2VsZi5fd2RpZmZfYXZhaWxhYmxlID0gc2VsZi5jaGVja193ZGlmZihsb2dn
aW5nPUZhbHNlKQogICAgICAgICByZXR1cm4gc2VsZi5fd2RpZmZfYXZhaWxhYmxlCiAKLSAgICBk
ZWYgcHJldHR5X3BhdGNoX2F2YWlsYWJsZShzZWxmKToKLSAgICAgICAgaWYgc2VsZi5fcHJldHR5
X3BhdGNoX2F2YWlsYWJsZSBpcyBOb25lOgotICAgICAgICAgICAgc2VsZi5fcHJldHR5X3BhdGNo
X2F2YWlsYWJsZSA9IHNlbGYuY2hlY2tfcHJldHR5X3BhdGNoKGxvZ2dpbmc9RmFsc2UpCi0gICAg
ICAgIHJldHVybiBzZWxmLl9wcmV0dHlfcGF0Y2hfYXZhaWxhYmxlCi0KICAgICBkZWYgc2hvdWxk
X3JldHJ5X2NyYXNoZXMoc2VsZik6CiAgICAgICAgIHJldHVybiBGYWxzZQogCkBAIC0yODEsMjUg
KzI3NCw2IEBAIGNsYXNzIFBvcnQob2JqZWN0KToKICAgICAgICAgICAgIHJldHVybiBGYWxzZQog
ICAgICAgICByZXR1cm4gVHJ1ZQogCi0gICAgZGVmIGNoZWNrX3ByZXR0eV9wYXRjaChzZWxmLCBs
b2dnaW5nPVRydWUpOgotICAgICAgICAiIiJDaGVja3Mgd2hldGhlciB3ZSBjYW4gdXNlIHRoZSBQ
cmV0dHlQYXRjaCBydWJ5IHNjcmlwdC4iIiIKLSAgICAgICAgdHJ5OgotICAgICAgICAgICAgXyA9
IHNlbGYuX2V4ZWN1dGl2ZS5ydW5fY29tbWFuZChbJ3J1YnknLCAnLS12ZXJzaW9uJ10pCi0gICAg
ICAgIGV4Y2VwdCBPU0Vycm9yLCBlOgotICAgICAgICAgICAgaWYgZS5lcnJubyBpbiBbZXJybm8u
RU5PRU5ULCBlcnJuby5FQUNDRVMsIGVycm5vLkVDSElMRF06Ci0gICAgICAgICAgICAgICAgaWYg
bG9nZ2luZzoKLSAgICAgICAgICAgICAgICAgICAgX2xvZy53YXJuaW5nKCJSdWJ5IGlzIG5vdCBp
bnN0YWxsZWQ7IGNhbid0IGdlbmVyYXRlIHByZXR0eSBwYXRjaGVzLiIpCi0gICAgICAgICAgICAg
ICAgICAgIF9sb2cud2FybmluZygnJykKLSAgICAgICAgICAgICAgICByZXR1cm4gRmFsc2UKLQot
ICAgICAgICBpZiBub3Qgc2VsZi5fZmlsZXN5c3RlbS5leGlzdHMoc2VsZi5fcHJldHR5X3BhdGNo
X3BhdGgpOgotICAgICAgICAgICAgaWYgbG9nZ2luZzoKLSAgICAgICAgICAgICAgICBfbG9nLndh
cm5pbmcoIlVuYWJsZSB0byBmaW5kICVzOyBjYW4ndCBnZW5lcmF0ZSBwcmV0dHkgcGF0Y2hlcy4i
ICUgc2VsZi5fcHJldHR5X3BhdGNoX3BhdGgpCi0gICAgICAgICAgICAgICAgX2xvZy53YXJuaW5n
KCcnKQotICAgICAgICAgICAgcmV0dXJuIEZhbHNlCi0KLSAgICAgICAgcmV0dXJuIFRydWUKLQog
ICAgIGRlZiBjaGVja193ZGlmZihzZWxmLCBsb2dnaW5nPVRydWUpOgogICAgICAgICBpZiBub3Qg
c2VsZi5fcGF0aF90b193ZGlmZigpOgogICAgICAgICAgICAgIyBEb24ndCBuZWVkIHRvIGxvZyBo
ZXJlIHNpbmNlIHRoaXMgaXMgdGhlIHBvcnQgY2hvb3Npbmcgbm90IHRvIHVzZSB3ZGlmZi4KQEAg
LTExNTQsMzIgKzExMjgsNiBAQCBjbGFzcyBQb3J0KG9iamVjdCk6CiAgICAgICAgICAgICAgICAg
cmV0dXJuICIiCiAgICAgICAgICAgICByYWlzZQogCi0gICAgIyBUaGlzIGlzIGEgY2xhc3MgdmFy
aWFibGUgc28gd2UgY2FuIHRlc3QgZXJyb3Igb3V0cHV0IGVhc2lseS4KLSAgICBfcHJldHR5X3Bh
dGNoX2Vycm9yX2h0bWwgPSAiRmFpbGVkIHRvIHJ1biBQcmV0dHlQYXRjaCwgc2VlIGVycm9yIGxv
Zy4iCi0KLSAgICBkZWYgcHJldHR5X3BhdGNoX3RleHQoc2VsZiwgZGlmZl9wYXRoKToKLSAgICAg
ICAgaWYgc2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZSBpcyBOb25lOgotICAgICAgICAgICAg
c2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZSA9IHNlbGYuY2hlY2tfcHJldHR5X3BhdGNoKGxv
Z2dpbmc9RmFsc2UpCi0gICAgICAgIGlmIG5vdCBzZWxmLl9wcmV0dHlfcGF0Y2hfYXZhaWxhYmxl
OgotICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3ByZXR0eV9wYXRjaF9lcnJvcl9odG1sCi0gICAg
ICAgIGNvbW1hbmQgPSAoInJ1YnkiLCAiLUkiLCBzZWxmLl9maWxlc3lzdGVtLmRpcm5hbWUoc2Vs
Zi5fcHJldHR5X3BhdGNoX3BhdGgpLAotICAgICAgICAgICAgICAgICAgIHNlbGYuX3ByZXR0eV9w
YXRjaF9wYXRoLCBkaWZmX3BhdGgpCi0gICAgICAgIHRyeToKLSAgICAgICAgICAgICMgRGlmZnMg
YXJlIHRyZWF0ZWQgYXMgYmluYXJ5ICh3ZSBwYXNzIGRlY29kZV9vdXRwdXQ9RmFsc2UpIGFzIHRo
ZXkKLSAgICAgICAgICAgICMgbWF5IGNvbnRhaW4gbXVsdGlwbGUgZmlsZXMgb2YgY29uZmxpY3Rp
bmcgZW5jb2RpbmdzLgotICAgICAgICAgICAgcmV0dXJuIHNlbGYuX2V4ZWN1dGl2ZS5ydW5fY29t
bWFuZChjb21tYW5kLCBkZWNvZGVfb3V0cHV0PUZhbHNlKQotICAgICAgICBleGNlcHQgT1NFcnJv
ciwgZToKLSAgICAgICAgICAgICMgSWYgdGhlIHN5c3RlbSBpcyBtaXNzaW5nIHJ1YnkgbG9nIHRo
ZSBlcnJvciBhbmQgc3RvcCB0cnlpbmcuCi0gICAgICAgICAgICBzZWxmLl9wcmV0dHlfcGF0Y2hf
YXZhaWxhYmxlID0gRmFsc2UKLSAgICAgICAgICAgIF9sb2cuZXJyb3IoIkZhaWxlZCB0byBydW4g
UHJldHR5UGF0Y2ggKCVzKTogJXMiICUgKGNvbW1hbmQsIGUpKQotICAgICAgICAgICAgcmV0dXJu
IHNlbGYuX3ByZXR0eV9wYXRjaF9lcnJvcl9odG1sCi0gICAgICAgIGV4Y2VwdCBTY3JpcHRFcnJv
ciwgZToKLSAgICAgICAgICAgICMgSWYgcnVieSBmYWlsZWQgdG8gcnVuIGZvciBzb21lIHJlYXNv
biwgbG9nIHRoZSBjb21tYW5kCi0gICAgICAgICAgICAjIG91dHB1dCBhbmQgc3RvcCB0cnlpbmcu
Ci0gICAgICAgICAgICBzZWxmLl9wcmV0dHlfcGF0Y2hfYXZhaWxhYmxlID0gRmFsc2UKLSAgICAg
ICAgICAgIF9sb2cuZXJyb3IoIkZhaWxlZCB0byBydW4gUHJldHR5UGF0Y2ggKCVzKTpcbiVzIiAl
IChjb21tYW5kLCBlLm1lc3NhZ2Vfd2l0aF9vdXRwdXQoKSkpCi0gICAgICAgICAgICByZXR1cm4g
c2VsZi5fcHJldHR5X3BhdGNoX2Vycm9yX2h0bWwKLQogICAgIGRlZiBkZWZhdWx0X2NvbmZpZ3Vy
YXRpb24oc2VsZik6CiAgICAgICAgIHJldHVybiBzZWxmLl9jb25maWcuZGVmYXVsdF9jb25maWd1
cmF0aW9uKCkKIApkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L2Jhc2Vf
dW5pdHRlc3QucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvYmFzZV91bml0dGVzdC5w
eQppbmRleCBjMDRjYWUwLi4yYWFlYzBkIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtp
dHB5L3BvcnQvYmFzZV91bml0dGVzdC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3Bv
cnQvYmFzZV91bml0dGVzdC5weQpAQCAtOTAsMjQgKzkwLDI0IEBAIGNsYXNzIFBvcnRUZXN0KHVu
aXR0ZXN0LlRlc3RDYXNlKToKICAgICAgICAgcG9ydCA9IHNlbGYubWFrZV9wb3J0KGV4ZWN1dGl2
ZT1leGVjdXRpdmVfbW9jay5Nb2NrRXhlY3V0aXZlMihleGNlcHRpb249T1NFcnJvcikpCiAgICAg
ICAgIG9jID0gT3V0cHV0Q2FwdHVyZSgpCiAgICAgICAgIG9jLmNhcHR1cmVfb3V0cHV0KCkKLSAg
ICAgICAgc2VsZi5hc3NlcnRFcXVhbChwb3J0LnByZXR0eV9wYXRjaF90ZXh0KCJwYXRjaC50eHQi
KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBwb3J0Ll9wcmV0dHlfcGF0Y2hfZXJyb3JfaHRt
bCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwb3J0Ll9wcmV0dHlfcGF0Y2gucHJldHR5X3Bh
dGNoX3RleHQoInBhdGNoLnR4dCIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIHBvcnQuX3By
ZXR0eV9wYXRjaC5fcHJldHR5X3BhdGNoX2Vycm9yX2h0bWwpCiAKICAgICAgICAgIyBUaGlzIHRl
c3RzIHJlcGVhdGVkIGNhbGxzIHRvIG1ha2Ugc3VyZSB3ZSBjYWNoZSB0aGUgcmVzdWx0LgotICAg
ICAgICBzZWxmLmFzc2VydEVxdWFsKHBvcnQucHJldHR5X3BhdGNoX3RleHQoInBhdGNoLnR4dCIp
LAotICAgICAgICAgICAgICAgICAgICAgICAgIHBvcnQuX3ByZXR0eV9wYXRjaF9lcnJvcl9odG1s
KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBvcnQuX3ByZXR0eV9wYXRjaC5wcmV0dHlfcGF0
Y2hfdGV4dCgicGF0Y2gudHh0IiksCisgICAgICAgICAgICAgICAgICAgICAgICAgcG9ydC5fcHJl
dHR5X3BhdGNoLl9wcmV0dHlfcGF0Y2hfZXJyb3JfaHRtbCkKICAgICAgICAgb2MucmVzdG9yZV9v
dXRwdXQoKQogCiAgICAgZGVmIHRlc3RfcHJldHR5X3BhdGNoX3NjcmlwdF9lcnJvcihzZWxmKToK
ICAgICAgICAgIyBGSVhNRTogVGhpcyBpcyBzb21lIHVnbHkgd2hpdGUtYm94IHRlc3QgaGFja2lu
ZyAuLi4KICAgICAgICAgcG9ydCA9IHNlbGYubWFrZV9wb3J0KGV4ZWN1dGl2ZT1leGVjdXRpdmVf
bW9jay5Nb2NrRXhlY3V0aXZlMihleGNlcHRpb249U2NyaXB0RXJyb3IpKQotICAgICAgICBwb3J0
Ll9wcmV0dHlfcGF0Y2hfYXZhaWxhYmxlID0gVHJ1ZQotICAgICAgICBzZWxmLmFzc2VydEVxdWFs
KHBvcnQucHJldHR5X3BhdGNoX3RleHQoInBhdGNoLnR4dCIpLAotICAgICAgICAgICAgICAgICAg
ICAgICAgIHBvcnQuX3ByZXR0eV9wYXRjaF9lcnJvcl9odG1sKQorICAgICAgICBwb3J0Ll9wcmV0
dHlfcGF0Y2guX3ByZXR0eV9wYXRjaF9hdmFpbGFibGUgPSBUcnVlCisgICAgICAgIHNlbGYuYXNz
ZXJ0RXF1YWwocG9ydC5fcHJldHR5X3BhdGNoLnByZXR0eV9wYXRjaF90ZXh0KCJwYXRjaC50eHQi
KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBwb3J0Ll9wcmV0dHlfcGF0Y2guX3ByZXR0eV9w
YXRjaF9lcnJvcl9odG1sKQogCiAgICAgICAgICMgVGhpcyB0ZXN0cyByZXBlYXRlZCBjYWxscyB0
byBtYWtlIHN1cmUgd2UgY2FjaGUgdGhlIHJlc3VsdC4KLSAgICAgICAgc2VsZi5hc3NlcnRFcXVh
bChwb3J0LnByZXR0eV9wYXRjaF90ZXh0KCJwYXRjaC50eHQiKSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICBwb3J0Ll9wcmV0dHlfcGF0Y2hfZXJyb3JfaHRtbCkKKyAgICAgICAgc2VsZi5hc3Nl
cnRFcXVhbChwb3J0Ll9wcmV0dHlfcGF0Y2gucHJldHR5X3BhdGNoX3RleHQoInBhdGNoLnR4dCIp
LAorICAgICAgICAgICAgICAgICAgICAgICAgIHBvcnQuX3ByZXR0eV9wYXRjaC5fcHJldHR5X3Bh
dGNoX2Vycm9yX2h0bWwpCiAKICAgICBkZWYgaW50ZWdyYXRpb25fdGVzdF9ydW5fd2RpZmYoc2Vs
Zik6CiAgICAgICAgIGV4ZWN1dGl2ZSA9IEV4ZWN1dGl2ZSgpCg==
</data>
<flag name="review"
          id="241267"
          type_id="1"
          status="-"
          setter="rniwa"
    />
    <flag name="commit-queue"
          id="241268"
          type_id="3"
          status="-"
          setter="rniwa"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>217997</attachid>
            <date>2013-11-28 06:31:16 -0800</date>
            <delta_ts>2013-11-28 07:12:04 -0800</delta_ts>
            <desc>Proposed patch</desc>
            <filename>proposedpatch.patch</filename>
            <type>text/plain</type>
            <size>14367</size>
            <attacher name="Dániel Bátyai">dbatyai.u-szeged</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBlNmE5
NzM1Li4zZjkzNzlmIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMzMgQEAKKzIwMTMtMTEtMjggIETDoW5pZWwgQsOhdHlhaSAgPEJh
dHlhaS5EYW5pZWxAc3R1ZC51LXN6ZWdlZC5odT4KKworICAgICAgICBNb3ZlIFByZXR0eVBhdGNo
IHJlbGF0ZWQgY29kZSB0byBwcmV0dHlwYXRjaC5weQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI0OTM3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBjb2RlIHNlZW1zIHRvIGhhdmUgYSBiZXR0ZXIg
cGxhY2UgaGVyZSB0aGFuIGluIFBvcnQsIHNpbmNlIFByZXR0eVBhdGNoIGFscmVhZHkga25vd3MK
KyAgICAgICAgcHJldHR5X3BhdGNoX3BhdGgsIGFuZCB0aGlzIGFsc28gdW5pZmllcyB0aGUgdXNh
Z2Ugb2YgUHJldHR5UGF0Y2gKKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL3By
ZXR0eXBhdGNoLnB5OgorICAgICAgICAoUHJldHR5UGF0Y2guX19pbml0X18pOgorICAgICAgICAo
UHJldHR5UGF0Y2gucHJldHR5X2RpZmYpOgorICAgICAgICAoUHJldHR5UGF0Y2gpOgorICAgICAg
ICAoUHJldHR5UGF0Y2gucHJldHR5X3BhdGNoX2F2YWlsYWJsZSk6CisgICAgICAgIChQcmV0dHlQ
YXRjaC5jaGVja19wcmV0dHlfcGF0Y2gpOgorICAgICAgICAoUHJldHR5UGF0Y2gucHJldHR5X3Bh
dGNoX3RleHQpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRy
b2xsZXJzL3Rlc3RfcmVzdWx0X3dyaXRlci5weToKKyAgICAgICAgKFRlc3RSZXN1bHRXcml0ZXIu
Y3JlYXRlX3RleHRfZGlmZl9hbmRfd3JpdGVfcmVzdWx0KToKKyAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L2xheW91dF90ZXN0cy9tb2RlbHMvdGVzdF9ydW5fcmVzdWx0cy5weToKKyAgICAgICAg
KHN1bW1hcml6ZV9yZXN1bHRzKToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3BvcnQvYmFz
ZS5weToKKyAgICAgICAgKFBvcnQuX19pbml0X18pOgorICAgICAgICAoUG9ydC53ZGlmZl9hdmFp
bGFibGUpOgorICAgICAgICAoUG9ydC5jaGVja19pbWFnZV9kaWZmKToKKyAgICAgICAgKFBvcnQu
d2RpZmZfdGV4dCk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9wb3J0L2Jhc2VfdW5pdHRl
c3QucHk6CisgICAgICAgIChQb3J0VGVzdC50ZXN0X3ByZXR0eV9wYXRjaF9vc19lcnJvcik6Cisg
ICAgICAgIChQb3J0VGVzdC50ZXN0X3ByZXR0eV9wYXRjaF9zY3JpcHRfZXJyb3IpOgorCiAyMDEz
LTExLTI2ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CiAKICAgICAgICAgRG8gYnl0
ZWNvZGUgdmFsaWRhdGlvbiBhcyBwYXJ0IG9mIHRlc3RpbmcKZGlmZiAtLWdpdCBhL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvY29tbW9uL3ByZXR0eXBhdGNoLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9jb21tb24vcHJldHR5cGF0Y2gucHkKaW5kZXggZThhOTEzYS4uNzg2OGE1ZiAxMDA2NDQK
LS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vcHJldHR5cGF0Y2gucHkKKysrIGIv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vcHJldHR5cGF0Y2gucHkKQEAgLTI2LDE1ICsy
NiwyNSBAQAogIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKICMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAoraW1wb3J0IGVycm5vCitp
bXBvcnQgbG9nZ2luZwogaW1wb3J0IG9zCiBpbXBvcnQgdGVtcGZpbGUKK2Zyb20gd2Via2l0cHku
Y29tbW9uLnN5c3RlbS5leGVjdXRpdmUgaW1wb3J0IFNjcmlwdEVycm9yCisKK19sb2cgPSBsb2dn
aW5nLmdldExvZ2dlcihfX25hbWVfXykKIAogCiBjbGFzcyBQcmV0dHlQYXRjaChvYmplY3QpOgog
ICAgICMgRklYTUU6IFByZXR0eVBhdGNoIHNob3VsZCBub3QgcmVxdWlyZSBjaGVja291dF9yb290
LgotICAgIGRlZiBfX2luaXRfXyhzZWxmLCBleGVjdXRpdmUsIGNoZWNrb3V0X3Jvb3QpOgorICAg
IGRlZiBfX2luaXRfXyhzZWxmLCBleGVjdXRpdmUsIGNoZWNrb3V0X3Jvb3QsIGZpbGVzeXN0ZW09
Tm9uZSk6CiAgICAgICAgIHNlbGYuX2V4ZWN1dGl2ZSA9IGV4ZWN1dGl2ZQorICAgICAgICBzZWxm
Ll9maWxlc3lzdGVtID0gZmlsZXN5c3RlbQogICAgICAgICBzZWxmLl9jaGVja291dF9yb290ID0g
Y2hlY2tvdXRfcm9vdAorICAgICAgICBzZWxmLl9wcmV0dHlfcGF0Y2hfcGF0aCA9IG9zLnBhdGgu
am9pbihzZWxmLl9jaGVja291dF9yb290LCAiV2Vic2l0ZXMiLCAiYnVncy53ZWJraXQub3JnIiwg
IlByZXR0eVBhdGNoIikKKyAgICAgICAgc2VsZi5fcHJldHRpZnlfcGF0aCA9IG9zLnBhdGguam9p
bihzZWxmLl9wcmV0dHlfcGF0Y2hfcGF0aCwgInByZXR0aWZ5LnJiIikKKyAgICAgICAgc2VsZi5w
cmV0dHlfcGF0Y2hfZXJyb3JfaHRtbCA9ICJGYWlsZWQgdG8gcnVuIFByZXR0eVBhdGNoLCBzZWUg
ZXJyb3IgbG9nLiIKKyAgICAgICAgc2VsZi5wcGF0Y2hfYXZhaWxhYmxlID0gTm9uZQogCiAgICAg
ZGVmIHByZXR0eV9kaWZmX2ZpbGUoc2VsZiwgZGlmZik6CiAgICAgICAgICMgRGlmZnMgY2FuIGNv
bnRhaW4gbXVsdGlwbGUgdGV4dCBmaWxlcyBvZiBkaWZmZXJlbnQgZW5jb2RpbmdzCkBAIC01Miwx
NiArNjIsNTkgQEAgY2xhc3MgUHJldHR5UGF0Y2gob2JqZWN0KToKICAgICAgICAgaWYgbm90IGRp
ZmY6CiAgICAgICAgICAgICByZXR1cm4gIiIKIAotICAgICAgICBwcmV0dHlfcGF0Y2hfcGF0aCA9
IG9zLnBhdGguam9pbihzZWxmLl9jaGVja291dF9yb290LAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAiV2Vic2l0ZXMiLCAiYnVncy53ZWJraXQub3JnIiwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlByZXR0eVBhdGNoIikKLSAgICAg
ICAgcHJldHRpZnlfcGF0aCA9IG9zLnBhdGguam9pbihwcmV0dHlfcGF0Y2hfcGF0aCwgInByZXR0
aWZ5LnJiIikKICAgICAgICAgYXJncyA9IFsKICAgICAgICAgICAgICJydWJ5IiwKICAgICAgICAg
ICAgICItSSIsCi0gICAgICAgICAgICBwcmV0dHlfcGF0Y2hfcGF0aCwKLSAgICAgICAgICAgIHBy
ZXR0aWZ5X3BhdGgsCisgICAgICAgICAgICBzZWxmLl9wcmV0dHlfcGF0Y2hfcGF0aCwKKyAgICAg
ICAgICAgIHNlbGYuX3ByZXR0aWZ5X3BhdGgsCiAgICAgICAgIF0KICAgICAgICAgIyBQcmV0dHlQ
YXRjaCBkb2VzIG5vdCBtb2RpZnkgdGhlIGVuY29kaW5nIG9mIHRoZSBkaWZmIG91dHB1dAogICAg
ICAgICAjIHNvIHdlIGNhbid0IGV4cGVjdCBpdCB0byBiZSB1dGYtOC4KICAgICAgICAgcmV0dXJu
IHNlbGYuX2V4ZWN1dGl2ZS5ydW5fY29tbWFuZChhcmdzLCBpbnB1dD1kaWZmLCBkZWNvZGVfb3V0
cHV0PUZhbHNlKQorCisgICAgZGVmIHByZXR0eV9wYXRjaF9hdmFpbGFibGUoc2VsZik6CisgICAg
ICAgIGlmIHNlbGYucHBhdGNoX2F2YWlsYWJsZSBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5w
cGF0Y2hfYXZhaWxhYmxlID0gc2VsZi5jaGVja19wcmV0dHlfcGF0Y2gobG9nZ2luZz1GYWxzZSkK
KyAgICAgICAgcmV0dXJuIHNlbGYucHBhdGNoX2F2YWlsYWJsZQorCisgICAgZGVmIGNoZWNrX3By
ZXR0eV9wYXRjaChzZWxmLCBsb2dnaW5nPVRydWUpOgorICAgICAgICAiIiJDaGVja3Mgd2hldGhl
ciB3ZSBjYW4gdXNlIHRoZSBQcmV0dHlQYXRjaCBydWJ5IHNjcmlwdC4iIiIKKyAgICAgICAgdHJ5
OgorICAgICAgICAgICAgXyA9IHNlbGYuX2V4ZWN1dGl2ZS5ydW5fY29tbWFuZChbJ3J1YnknLCAn
LS12ZXJzaW9uJ10pCisgICAgICAgIGV4Y2VwdCBPU0Vycm9yLCBlOgorICAgICAgICAgICAgaWYg
ZS5lcnJubyBpbiBbZXJybm8uRU5PRU5ULCBlcnJuby5FQUNDRVMsIGVycm5vLkVDSElMRF06Cisg
ICAgICAgICAgICAgICAgaWYgbG9nZ2luZzoKKyAgICAgICAgICAgICAgICAgICAgX2xvZy53YXJu
aW5nKCJSdWJ5IGlzIG5vdCBpbnN0YWxsZWQ7IGNhbid0IGdlbmVyYXRlIHByZXR0eSBwYXRjaGVz
LiIpCisgICAgICAgICAgICAgICAgICAgIF9sb2cud2FybmluZygnJykKKyAgICAgICAgICAgICAg
ICByZXR1cm4gRmFsc2UKKworICAgICAgICBpZiBub3Qgc2VsZi5fZmlsZXN5c3RlbS5leGlzdHMo
c2VsZi5fcHJldHR5X3BhdGNoX3BhdGgpOgorICAgICAgICAgICAgaWYgbG9nZ2luZzoKKyAgICAg
ICAgICAgICAgICBfbG9nLndhcm5pbmcoIlVuYWJsZSB0byBmaW5kICVzOyBjYW4ndCBnZW5lcmF0
ZSBwcmV0dHkgcGF0Y2hlcy4iICUgc2VsZi5fcHJldHR5X3BhdGNoX3BhdGgpCisgICAgICAgICAg
ICAgICAgX2xvZy53YXJuaW5nKCcnKQorICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisKKyAgICAg
ICAgcmV0dXJuIFRydWUKKworICAgIGRlZiBwcmV0dHlfcGF0Y2hfdGV4dChzZWxmLCBkaWZmX3Bh
dGgpOgorICAgICAgICBpZiBzZWxmLnBwYXRjaF9hdmFpbGFibGUgaXMgTm9uZToKKyAgICAgICAg
ICAgIHNlbGYucHBhdGNoX2F2YWlsYWJsZSA9IHNlbGYuY2hlY2tfcHJldHR5X3BhdGNoKGxvZ2dp
bmc9RmFsc2UpCisgICAgICAgIGlmIG5vdCBzZWxmLnBwYXRjaF9hdmFpbGFibGU6CisgICAgICAg
ICAgICByZXR1cm4gc2VsZi5wcmV0dHlfcGF0Y2hfZXJyb3JfaHRtbAorICAgICAgICBjb21tYW5k
ID0gKCJydWJ5IiwgIi1JIiwgc2VsZi5fZmlsZXN5c3RlbS5kaXJuYW1lKHNlbGYuX3ByZXR0eV9w
YXRjaF9wYXRoKSwKKyAgICAgICAgICAgICAgICAgICBzZWxmLl9wcmV0dHlfcGF0Y2hfcGF0aCwg
ZGlmZl9wYXRoKQorICAgICAgICB0cnk6CisgICAgICAgICAgICAjIERpZmZzIGFyZSB0cmVhdGVk
IGFzIGJpbmFyeSAod2UgcGFzcyBkZWNvZGVfb3V0cHV0PUZhbHNlKSBhcyB0aGV5CisgICAgICAg
ICAgICAjIG1heSBjb250YWluIG11bHRpcGxlIGZpbGVzIG9mIGNvbmZsaWN0aW5nIGVuY29kaW5n
cy4KKyAgICAgICAgICAgIHJldHVybiBzZWxmLl9leGVjdXRpdmUucnVuX2NvbW1hbmQoY29tbWFu
ZCwgZGVjb2RlX291dHB1dD1GYWxzZSkKKyAgICAgICAgZXhjZXB0IE9TRXJyb3IsIGU6CisgICAg
ICAgICAgICAjIElmIHRoZSBzeXN0ZW0gaXMgbWlzc2luZyBydWJ5IGxvZyB0aGUgZXJyb3IgYW5k
IHN0b3AgdHJ5aW5nLgorICAgICAgICAgICAgc2VsZi5wcGF0Y2hfYXZhaWxhYmxlID0gRmFsc2UK
KyAgICAgICAgICAgIF9sb2cuZXJyb3IoIkZhaWxlZCB0byBydW4gUHJldHR5UGF0Y2ggKCVzKTog
JXMiICUgKGNvbW1hbmQsIGUpKQorICAgICAgICAgICAgcmV0dXJuIHNlbGYucHJldHR5X3BhdGNo
X2Vycm9yX2h0bWwKKyAgICAgICAgZXhjZXB0IFNjcmlwdEVycm9yLCBlOgorICAgICAgICAgICAg
IyBJZiBydWJ5IGZhaWxlZCB0byBydW4gZm9yIHNvbWUgcmVhc29uLCBsb2cgdGhlIGNvbW1hbmQK
KyAgICAgICAgICAgICMgb3V0cHV0IGFuZCBzdG9wIHRyeWluZy4KKyAgICAgICAgICAgIHNlbGYu
cHBhdGNoX2F2YWlsYWJsZSA9IEZhbHNlCisgICAgICAgICAgICBfbG9nLmVycm9yKCJGYWlsZWQg
dG8gcnVuIFByZXR0eVBhdGNoICglcyk6XG4lcyIgJSAoY29tbWFuZCwgZS5tZXNzYWdlX3dpdGhf
b3V0cHV0KCkpKQorICAgICAgICAgICAgcmV0dXJuIHNlbGYucHJldHR5X3BhdGNoX2Vycm9yX2h0
bWwKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRy
b2xsZXJzL3Rlc3RfcmVzdWx0X3dyaXRlci5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL3Rlc3RfcmVzdWx0X3dyaXRlci5weQppbmRleCAyM2U0NGQ1
Li4wMDVjNzAyIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0
cy9jb250cm9sbGVycy90ZXN0X3Jlc3VsdF93cml0ZXIucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvdGVzdF9yZXN1bHRfd3JpdGVyLnB5CkBA
IC0xOTYsOCArMTk2LDggQEAgY2xhc3MgVGVzdFJlc3VsdFdyaXRlcihvYmplY3QpOgogICAgICAg
ICAgICAgc2VsZi5fd3JpdGVfYmluYXJ5X2ZpbGUod2RpZmZfZmlsZW5hbWUsIHdkaWZmKQogCiAg
ICAgICAgICMgVXNlIFdlYktpdCdzIFByZXR0eVBhdGNoLnJiIHRvIGdldCBhbiBIVE1MIGRpZmYu
Ci0gICAgICAgIGlmIHNlbGYuX3BvcnQucHJldHR5X3BhdGNoX2F2YWlsYWJsZSgpOgotICAgICAg
ICAgICAgcHJldHR5X3BhdGNoID0gc2VsZi5fcG9ydC5wcmV0dHlfcGF0Y2hfdGV4dChkaWZmX2Zp
bGVuYW1lKQorICAgICAgICBpZiBzZWxmLl9wb3J0LnByZXR0eV9wYXRjaC5wcmV0dHlfcGF0Y2hf
YXZhaWxhYmxlKCk6CisgICAgICAgICAgICBwcmV0dHlfcGF0Y2ggPSBzZWxmLl9wb3J0LnByZXR0
eV9wYXRjaC5wcmV0dHlfcGF0Y2hfdGV4dChkaWZmX2ZpbGVuYW1lKQogICAgICAgICAgICAgcHJl
dHR5X3BhdGNoX2ZpbGVuYW1lID0gc2VsZi5vdXRwdXRfZmlsZW5hbWUoc2VsZi5GSUxFTkFNRV9T
VUZGSVhfUFJFVFRZX1BBVENIKQogICAgICAgICAgICAgc2VsZi5fd3JpdGVfYmluYXJ5X2ZpbGUo
cHJldHR5X3BhdGNoX2ZpbGVuYW1lLCBwcmV0dHlfcGF0Y2gpCiAKZGlmZiAtLWdpdCBhL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL21vZGVscy90ZXN0X3J1bl9yZXN1bHRzLnB5
IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvbW9kZWxzL3Rlc3RfcnVuX3Jl
c3VsdHMucHkKaW5kZXggNzYzMjM2NC4uYzQ2MGY1YiAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvbW9kZWxzL3Rlc3RfcnVuX3Jlc3VsdHMucHkKKysrIGIv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvbW9kZWxzL3Rlc3RfcnVuX3Jlc3Vs
dHMucHkKQEAgLTI0Myw3ICsyNDMsNyBAQCBkZWYgc3VtbWFyaXplX3Jlc3VsdHMocG9ydF9vYmos
IGV4cGVjdGF0aW9ucywgaW5pdGlhbF9yZXN1bHRzLCByZXRyeV9yZXN1bHRzLCBlbgogICAgIHJl
c3VsdHNbJ2ludGVycnVwdGVkJ10gPSBpbml0aWFsX3Jlc3VsdHMuaW50ZXJydXB0ZWQgICMgRG9l
cyByZXN1bHRzLmh0bWwgaGF2ZSBlbm91Z2ggaW5mb3JtYXRpb24gdG8gY29tcHV0ZSB0aGlzIGl0
c2VsZj8gKGJ5IGNoZWNraW5nIHRvdGFsIG51bWJlciBvZiByZXN1bHRzIHZzLiB0b3RhbCBudW1i
ZXIgb2YgdGVzdHM/KQogICAgIHJlc3VsdHNbJ2xheW91dF90ZXN0c19kaXInXSA9IHBvcnRfb2Jq
LmxheW91dF90ZXN0c19kaXIoKQogICAgIHJlc3VsdHNbJ2hhc193ZGlmZiddID0gcG9ydF9vYmou
d2RpZmZfYXZhaWxhYmxlKCkKLSAgICByZXN1bHRzWydoYXNfcHJldHR5X3BhdGNoJ10gPSBwb3J0
X29iai5wcmV0dHlfcGF0Y2hfYXZhaWxhYmxlKCkKKyAgICByZXN1bHRzWydoYXNfcHJldHR5X3Bh
dGNoJ10gPSBwb3J0X29iai5wcmV0dHlfcGF0Y2gucHJldHR5X3BhdGNoX2F2YWlsYWJsZSgpCiAg
ICAgcmVzdWx0c1sncGl4ZWxfdGVzdHNfZW5hYmxlZCddID0gcG9ydF9vYmouZ2V0X29wdGlvbign
cGl4ZWxfdGVzdHMnKQogCiAgICAgdHJ5OgpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9wb3J0L2Jhc2UucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvYmFzZS5weQpp
bmRleCAzMTE4YjMzLi5mYjY3MjZlIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L3BvcnQvYmFzZS5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvYmFzZS5weQpA
QCAtNTEsNiArNTEsNyBAQCBleGNlcHQgSW1wb3J0RXJyb3I6CiBmcm9tIHdlYmtpdHB5LmNvbW1v
biBpbXBvcnQgZmluZF9maWxlcwogZnJvbSB3ZWJraXRweS5jb21tb24gaW1wb3J0IHJlYWRfY2hl
Y2tzdW1fZnJvbV9wbmcKIGZyb20gd2Via2l0cHkuY29tbW9uLm1lbW9pemVkIGltcG9ydCBtZW1v
aXplZAorZnJvbSB3ZWJraXRweS5jb21tb24ucHJldHR5cGF0Y2ggaW1wb3J0IFByZXR0eVBhdGNo
CiBmcm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0gaW1wb3J0IHBhdGgKIGZyb20gd2Via2l0cHku
Y29tbW9uLnN5c3RlbS5leGVjdXRpdmUgaW1wb3J0IFNjcmlwdEVycm9yCiBmcm9tIHdlYmtpdHB5
LmNvbW1vbi5zeXN0ZW0uc3lzdGVtaG9zdCBpbXBvcnQgU3lzdGVtSG9zdApAQCAtMTE2LDYgKzEx
Nyw3IEBAIGNsYXNzIFBvcnQob2JqZWN0KToKICAgICAgICAgc2VsZi5fZmlsZXN5c3RlbSA9IGhv
c3QuZmlsZXN5c3RlbQogICAgICAgICBzZWxmLl93ZWJraXRfZmluZGVyID0gV2ViS2l0RmluZGVy
KGhvc3QuZmlsZXN5c3RlbSkKICAgICAgICAgc2VsZi5fY29uZmlnID0gcG9ydF9jb25maWcuQ29u
ZmlnKHNlbGYuX2V4ZWN1dGl2ZSwgc2VsZi5fZmlsZXN5c3RlbSwgc2VsZi5wb3J0X25hbWUpCisg
ICAgICAgIHNlbGYucHJldHR5X3BhdGNoID0gUHJldHR5UGF0Y2goc2VsZi5fZXhlY3V0aXZlLCBz
ZWxmLnBhdGhfZnJvbV93ZWJraXRfYmFzZSgpLCBzZWxmLl9maWxlc3lzdGVtKQogCiAgICAgICAg
IHNlbGYuX2hlbHBlciA9IE5vbmUKICAgICAgICAgc2VsZi5faHR0cF9zZXJ2ZXIgPSBOb25lCkBA
IC0xMzksMTAgKzE0MSw2IEBAIGNsYXNzIFBvcnQob2JqZWN0KToKICAgICAgICAgIyBodHRwOi8v
YnVncy5weXRob24ub3JnL2lzc3VlMzIxMAogICAgICAgICBzZWxmLl93ZGlmZl9hdmFpbGFibGUg
PSBOb25lCiAKLSAgICAgICAgIyBGSVhNRTogcHJldHR5cGF0Y2gucHkga25vd3MgdGhpcyBwYXRo
LCB3aHkgaXMgaXQgY29waWVkIGhlcmU/Ci0gICAgICAgIHNlbGYuX3ByZXR0eV9wYXRjaF9wYXRo
ID0gc2VsZi5wYXRoX2Zyb21fd2Via2l0X2Jhc2UoIldlYnNpdGVzIiwgImJ1Z3Mud2Via2l0Lm9y
ZyIsICJQcmV0dHlQYXRjaCIsICJwcmV0dGlmeS5yYiIpCi0gICAgICAgIHNlbGYuX3ByZXR0eV9w
YXRjaF9hdmFpbGFibGUgPSBOb25lCi0KICAgICAgICAgaWYgbm90IGhhc2F0dHIob3B0aW9ucywg
J2NvbmZpZ3VyYXRpb24nKSBvciBub3Qgb3B0aW9ucy5jb25maWd1cmF0aW9uOgogICAgICAgICAg
ICAgc2VsZi5zZXRfb3B0aW9uX2RlZmF1bHQoJ2NvbmZpZ3VyYXRpb24nLCBzZWxmLmRlZmF1bHRf
Y29uZmlndXJhdGlvbigpKQogICAgICAgICBzZWxmLl90ZXN0X2NvbmZpZ3VyYXRpb24gPSBOb25l
CkBAIC0xNzgsMTEgKzE3Niw2IEBAIGNsYXNzIFBvcnQob2JqZWN0KToKICAgICAgICAgICAgIHNl
bGYuX3dkaWZmX2F2YWlsYWJsZSA9IHNlbGYuY2hlY2tfd2RpZmYobG9nZ2luZz1GYWxzZSkKICAg
ICAgICAgcmV0dXJuIHNlbGYuX3dkaWZmX2F2YWlsYWJsZQogCi0gICAgZGVmIHByZXR0eV9wYXRj
aF9hdmFpbGFibGUoc2VsZik6Ci0gICAgICAgIGlmIHNlbGYuX3ByZXR0eV9wYXRjaF9hdmFpbGFi
bGUgaXMgTm9uZToKLSAgICAgICAgICAgIHNlbGYuX3ByZXR0eV9wYXRjaF9hdmFpbGFibGUgPSBz
ZWxmLmNoZWNrX3ByZXR0eV9wYXRjaChsb2dnaW5nPUZhbHNlKQotICAgICAgICByZXR1cm4gc2Vs
Zi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZQotCiAgICAgZGVmIHNob3VsZF9yZXRyeV9jcmFzaGVz
KHNlbGYpOgogICAgICAgICByZXR1cm4gRmFsc2UKIApAQCAtMjgxLDI1ICsyNzQsNiBAQCBjbGFz
cyBQb3J0KG9iamVjdCk6CiAgICAgICAgICAgICByZXR1cm4gRmFsc2UKICAgICAgICAgcmV0dXJu
IFRydWUKIAotICAgIGRlZiBjaGVja19wcmV0dHlfcGF0Y2goc2VsZiwgbG9nZ2luZz1UcnVlKToK
LSAgICAgICAgIiIiQ2hlY2tzIHdoZXRoZXIgd2UgY2FuIHVzZSB0aGUgUHJldHR5UGF0Y2ggcnVi
eSBzY3JpcHQuIiIiCi0gICAgICAgIHRyeToKLSAgICAgICAgICAgIF8gPSBzZWxmLl9leGVjdXRp
dmUucnVuX2NvbW1hbmQoWydydWJ5JywgJy0tdmVyc2lvbiddKQotICAgICAgICBleGNlcHQgT1NF
cnJvciwgZToKLSAgICAgICAgICAgIGlmIGUuZXJybm8gaW4gW2Vycm5vLkVOT0VOVCwgZXJybm8u
RUFDQ0VTLCBlcnJuby5FQ0hJTERdOgotICAgICAgICAgICAgICAgIGlmIGxvZ2dpbmc6Ci0gICAg
ICAgICAgICAgICAgICAgIF9sb2cud2FybmluZygiUnVieSBpcyBub3QgaW5zdGFsbGVkOyBjYW4n
dCBnZW5lcmF0ZSBwcmV0dHkgcGF0Y2hlcy4iKQotICAgICAgICAgICAgICAgICAgICBfbG9nLndh
cm5pbmcoJycpCi0gICAgICAgICAgICAgICAgcmV0dXJuIEZhbHNlCi0KLSAgICAgICAgaWYgbm90
IHNlbGYuX2ZpbGVzeXN0ZW0uZXhpc3RzKHNlbGYuX3ByZXR0eV9wYXRjaF9wYXRoKToKLSAgICAg
ICAgICAgIGlmIGxvZ2dpbmc6Ci0gICAgICAgICAgICAgICAgX2xvZy53YXJuaW5nKCJVbmFibGUg
dG8gZmluZCAlczsgY2FuJ3QgZ2VuZXJhdGUgcHJldHR5IHBhdGNoZXMuIiAlIHNlbGYuX3ByZXR0
eV9wYXRjaF9wYXRoKQotICAgICAgICAgICAgICAgIF9sb2cud2FybmluZygnJykKLSAgICAgICAg
ICAgIHJldHVybiBGYWxzZQotCi0gICAgICAgIHJldHVybiBUcnVlCi0KICAgICBkZWYgY2hlY2tf
d2RpZmYoc2VsZiwgbG9nZ2luZz1UcnVlKToKICAgICAgICAgaWYgbm90IHNlbGYuX3BhdGhfdG9f
d2RpZmYoKToKICAgICAgICAgICAgICMgRG9uJ3QgbmVlZCB0byBsb2cgaGVyZSBzaW5jZSB0aGlz
IGlzIHRoZSBwb3J0IGNob29zaW5nIG5vdCB0byB1c2Ugd2RpZmYuCkBAIC0xMTU0LDMyICsxMTI4
LDYgQEAgY2xhc3MgUG9ydChvYmplY3QpOgogICAgICAgICAgICAgICAgIHJldHVybiAiIgogICAg
ICAgICAgICAgcmFpc2UKIAotICAgICMgVGhpcyBpcyBhIGNsYXNzIHZhcmlhYmxlIHNvIHdlIGNh
biB0ZXN0IGVycm9yIG91dHB1dCBlYXNpbHkuCi0gICAgX3ByZXR0eV9wYXRjaF9lcnJvcl9odG1s
ID0gIkZhaWxlZCB0byBydW4gUHJldHR5UGF0Y2gsIHNlZSBlcnJvciBsb2cuIgotCi0gICAgZGVm
IHByZXR0eV9wYXRjaF90ZXh0KHNlbGYsIGRpZmZfcGF0aCk6Ci0gICAgICAgIGlmIHNlbGYuX3By
ZXR0eV9wYXRjaF9hdmFpbGFibGUgaXMgTm9uZToKLSAgICAgICAgICAgIHNlbGYuX3ByZXR0eV9w
YXRjaF9hdmFpbGFibGUgPSBzZWxmLmNoZWNrX3ByZXR0eV9wYXRjaChsb2dnaW5nPUZhbHNlKQot
ICAgICAgICBpZiBub3Qgc2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZToKLSAgICAgICAgICAg
IHJldHVybiBzZWxmLl9wcmV0dHlfcGF0Y2hfZXJyb3JfaHRtbAotICAgICAgICBjb21tYW5kID0g
KCJydWJ5IiwgIi1JIiwgc2VsZi5fZmlsZXN5c3RlbS5kaXJuYW1lKHNlbGYuX3ByZXR0eV9wYXRj
aF9wYXRoKSwKLSAgICAgICAgICAgICAgICAgICBzZWxmLl9wcmV0dHlfcGF0Y2hfcGF0aCwgZGlm
Zl9wYXRoKQotICAgICAgICB0cnk6Ci0gICAgICAgICAgICAjIERpZmZzIGFyZSB0cmVhdGVkIGFz
IGJpbmFyeSAod2UgcGFzcyBkZWNvZGVfb3V0cHV0PUZhbHNlKSBhcyB0aGV5Ci0gICAgICAgICAg
ICAjIG1heSBjb250YWluIG11bHRpcGxlIGZpbGVzIG9mIGNvbmZsaWN0aW5nIGVuY29kaW5ncy4K
LSAgICAgICAgICAgIHJldHVybiBzZWxmLl9leGVjdXRpdmUucnVuX2NvbW1hbmQoY29tbWFuZCwg
ZGVjb2RlX291dHB1dD1GYWxzZSkKLSAgICAgICAgZXhjZXB0IE9TRXJyb3IsIGU6Ci0gICAgICAg
ICAgICAjIElmIHRoZSBzeXN0ZW0gaXMgbWlzc2luZyBydWJ5IGxvZyB0aGUgZXJyb3IgYW5kIHN0
b3AgdHJ5aW5nLgotICAgICAgICAgICAgc2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZSA9IEZh
bHNlCi0gICAgICAgICAgICBfbG9nLmVycm9yKCJGYWlsZWQgdG8gcnVuIFByZXR0eVBhdGNoICgl
cyk6ICVzIiAlIChjb21tYW5kLCBlKSkKLSAgICAgICAgICAgIHJldHVybiBzZWxmLl9wcmV0dHlf
cGF0Y2hfZXJyb3JfaHRtbAotICAgICAgICBleGNlcHQgU2NyaXB0RXJyb3IsIGU6Ci0gICAgICAg
ICAgICAjIElmIHJ1YnkgZmFpbGVkIHRvIHJ1biBmb3Igc29tZSByZWFzb24sIGxvZyB0aGUgY29t
bWFuZAotICAgICAgICAgICAgIyBvdXRwdXQgYW5kIHN0b3AgdHJ5aW5nLgotICAgICAgICAgICAg
c2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZSA9IEZhbHNlCi0gICAgICAgICAgICBfbG9nLmVy
cm9yKCJGYWlsZWQgdG8gcnVuIFByZXR0eVBhdGNoICglcyk6XG4lcyIgJSAoY29tbWFuZCwgZS5t
ZXNzYWdlX3dpdGhfb3V0cHV0KCkpKQotICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3ByZXR0eV9w
YXRjaF9lcnJvcl9odG1sCi0KICAgICBkZWYgZGVmYXVsdF9jb25maWd1cmF0aW9uKHNlbGYpOgog
ICAgICAgICByZXR1cm4gc2VsZi5fY29uZmlnLmRlZmF1bHRfY29uZmlndXJhdGlvbigpCiAKZGlm
ZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9iYXNlX3VuaXR0ZXN0LnB5IGIv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L2Jhc2VfdW5pdHRlc3QucHkKaW5kZXggYzA0Y2Fl
MC4uZTJkYTVjNiAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L2Jhc2Vf
dW5pdHRlc3QucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L2Jhc2VfdW5pdHRl
c3QucHkKQEAgLTkwLDI0ICs5MCwyNCBAQCBjbGFzcyBQb3J0VGVzdCh1bml0dGVzdC5UZXN0Q2Fz
ZSk6CiAgICAgICAgIHBvcnQgPSBzZWxmLm1ha2VfcG9ydChleGVjdXRpdmU9ZXhlY3V0aXZlX21v
Y2suTW9ja0V4ZWN1dGl2ZTIoZXhjZXB0aW9uPU9TRXJyb3IpKQogICAgICAgICBvYyA9IE91dHB1
dENhcHR1cmUoKQogICAgICAgICBvYy5jYXB0dXJlX291dHB1dCgpCi0gICAgICAgIHNlbGYuYXNz
ZXJ0RXF1YWwocG9ydC5wcmV0dHlfcGF0Y2hfdGV4dCgicGF0Y2gudHh0IiksCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgcG9ydC5fcHJldHR5X3BhdGNoX2Vycm9yX2h0bWwpCisgICAgICAgIHNl
bGYuYXNzZXJ0RXF1YWwocG9ydC5wcmV0dHlfcGF0Y2gucHJldHR5X3BhdGNoX3RleHQoInBhdGNo
LnR4dCIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIHBvcnQucHJldHR5X3BhdGNoLnByZXR0
eV9wYXRjaF9lcnJvcl9odG1sKQogCiAgICAgICAgICMgVGhpcyB0ZXN0cyByZXBlYXRlZCBjYWxs
cyB0byBtYWtlIHN1cmUgd2UgY2FjaGUgdGhlIHJlc3VsdC4KLSAgICAgICAgc2VsZi5hc3NlcnRF
cXVhbChwb3J0LnByZXR0eV9wYXRjaF90ZXh0KCJwYXRjaC50eHQiKSwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICBwb3J0Ll9wcmV0dHlfcGF0Y2hfZXJyb3JfaHRtbCkKKyAgICAgICAgc2VsZi5h
c3NlcnRFcXVhbChwb3J0LnByZXR0eV9wYXRjaC5wcmV0dHlfcGF0Y2hfdGV4dCgicGF0Y2gudHh0
IiksCisgICAgICAgICAgICAgICAgICAgICAgICAgcG9ydC5wcmV0dHlfcGF0Y2gucHJldHR5X3Bh
dGNoX2Vycm9yX2h0bWwpCiAgICAgICAgIG9jLnJlc3RvcmVfb3V0cHV0KCkKIAogICAgIGRlZiB0
ZXN0X3ByZXR0eV9wYXRjaF9zY3JpcHRfZXJyb3Ioc2VsZik6CiAgICAgICAgICMgRklYTUU6IFRo
aXMgaXMgc29tZSB1Z2x5IHdoaXRlLWJveCB0ZXN0IGhhY2tpbmcgLi4uCiAgICAgICAgIHBvcnQg
PSBzZWxmLm1ha2VfcG9ydChleGVjdXRpdmU9ZXhlY3V0aXZlX21vY2suTW9ja0V4ZWN1dGl2ZTIo
ZXhjZXB0aW9uPVNjcmlwdEVycm9yKSkKLSAgICAgICAgcG9ydC5fcHJldHR5X3BhdGNoX2F2YWls
YWJsZSA9IFRydWUKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwb3J0LnByZXR0eV9wYXRjaF90
ZXh0KCJwYXRjaC50eHQiKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBwb3J0Ll9wcmV0dHlf
cGF0Y2hfZXJyb3JfaHRtbCkKKyAgICAgICAgcG9ydC5wcmV0dHlfcGF0Y2gucHBhdGNoX2F2YWls
YWJsZSA9IFRydWUKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwb3J0LnByZXR0eV9wYXRjaC5w
cmV0dHlfcGF0Y2hfdGV4dCgicGF0Y2gudHh0IiksCisgICAgICAgICAgICAgICAgICAgICAgICAg
cG9ydC5wcmV0dHlfcGF0Y2gucHJldHR5X3BhdGNoX2Vycm9yX2h0bWwpCiAKICAgICAgICAgIyBU
aGlzIHRlc3RzIHJlcGVhdGVkIGNhbGxzIHRvIG1ha2Ugc3VyZSB3ZSBjYWNoZSB0aGUgcmVzdWx0
LgotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBvcnQucHJldHR5X3BhdGNoX3RleHQoInBhdGNo
LnR4dCIpLAotICAgICAgICAgICAgICAgICAgICAgICAgIHBvcnQuX3ByZXR0eV9wYXRjaF9lcnJv
cl9odG1sKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBvcnQucHJldHR5X3BhdGNoLnByZXR0
eV9wYXRjaF90ZXh0KCJwYXRjaC50eHQiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBwb3J0
LnByZXR0eV9wYXRjaC5wcmV0dHlfcGF0Y2hfZXJyb3JfaHRtbCkKIAogICAgIGRlZiBpbnRlZ3Jh
dGlvbl90ZXN0X3J1bl93ZGlmZihzZWxmKToKICAgICAgICAgZXhlY3V0aXZlID0gRXhlY3V0aXZl
KCkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>218501</attachid>
            <date>2013-12-05 04:50:41 -0800</date>
            <delta_ts>2013-12-07 06:51:20 -0800</delta_ts>
            <desc>Proposed patch</desc>
            <filename>proposedpatch.patch</filename>
            <type>text/plain</type>
            <size>14373</size>
            <attacher name="Dániel Bátyai">dbatyai.u-szeged</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCAzYmNk
MTcxLi42MGUxMjRjIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMzMgQEAKKzIwMTMtMTItMDUgIETDoW5pZWwgQsOhdHlhaSAgPEJh
dHlhaS5EYW5pZWxAc3R1ZC51LXN6ZWdlZC5odT4KKworICAgICAgICBNb3ZlIFByZXR0eVBhdGNo
IHJlbGF0ZWQgY29kZSB0byBwcmV0dHlwYXRjaC5weQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI0OTM3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBjb2RlIHNlZW1zIHRvIGhhdmUgYSBiZXR0ZXIg
cGxhY2UgaGVyZSB0aGFuIGluIFBvcnQsIHNpbmNlIFByZXR0eVBhdGNoIGFscmVhZHkga25vd3MK
KyAgICAgICAgcHJldHR5X3BhdGNoX3BhdGgsIGFuZCB0aGlzIGFsc28gdW5pZmllcyB0aGUgdXNh
Z2Ugb2YgUHJldHR5UGF0Y2gKKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL3By
ZXR0eXBhdGNoLnB5OgorICAgICAgICAoUHJldHR5UGF0Y2guX19pbml0X18pOgorICAgICAgICAo
UHJldHR5UGF0Y2gucHJldHR5X2RpZmYpOgorICAgICAgICAoUHJldHR5UGF0Y2gpOgorICAgICAg
ICAoUHJldHR5UGF0Y2gucHJldHR5X3BhdGNoX2F2YWlsYWJsZSk6CisgICAgICAgIChQcmV0dHlQ
YXRjaC5jaGVja19wcmV0dHlfcGF0Y2gpOgorICAgICAgICAoUHJldHR5UGF0Y2gucHJldHR5X3Bh
dGNoX3RleHQpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRy
b2xsZXJzL3Rlc3RfcmVzdWx0X3dyaXRlci5weToKKyAgICAgICAgKFRlc3RSZXN1bHRXcml0ZXIu
Y3JlYXRlX3RleHRfZGlmZl9hbmRfd3JpdGVfcmVzdWx0KToKKyAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L2xheW91dF90ZXN0cy9tb2RlbHMvdGVzdF9ydW5fcmVzdWx0cy5weToKKyAgICAgICAg
KHN1bW1hcml6ZV9yZXN1bHRzKToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3BvcnQvYmFz
ZS5weToKKyAgICAgICAgKFBvcnQuX19pbml0X18pOgorICAgICAgICAoUG9ydC53ZGlmZl9hdmFp
bGFibGUpOgorICAgICAgICAoUG9ydC5jaGVja19pbWFnZV9kaWZmKToKKyAgICAgICAgKFBvcnQu
d2RpZmZfdGV4dCk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9wb3J0L2Jhc2VfdW5pdHRl
c3QucHk6CisgICAgICAgIChQb3J0VGVzdC50ZXN0X3ByZXR0eV9wYXRjaF9vc19lcnJvcik6Cisg
ICAgICAgIChQb3J0VGVzdC50ZXN0X3ByZXR0eV9wYXRjaF9zY3JpcHRfZXJyb3IpOgorCiAyMDEz
LTEyLTA1ICBMw6FzemzDsyBMYW5nw7MgIDxsYW5nb0BpbmYudS1zemVnZWQuaHU+CiAKICAgICAg
ICAgUmVtb3ZlIFNjcmlwdHMvZ2VuZXJhdGUtcXQtaW5zcGVjdG9yLXJlc291cmNlLgpkaWZmIC0t
Z2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vcHJldHR5cGF0Y2gucHkgYi9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9wcmV0dHlwYXRjaC5weQppbmRleCBlOGE5MTNhLi5k
YmM1Y2VhIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9wcmV0dHlw
YXRjaC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9wcmV0dHlwYXRjaC5w
eQpAQCAtMjYsMTUgKzI2LDI1IEBACiAjIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogIyBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCitp
bXBvcnQgZXJybm8KK2ltcG9ydCBsb2dnaW5nCiBpbXBvcnQgb3MKIGltcG9ydCB0ZW1wZmlsZQor
ZnJvbSB3ZWJraXRweS5jb21tb24uc3lzdGVtLmV4ZWN1dGl2ZSBpbXBvcnQgU2NyaXB0RXJyb3IK
KworX2xvZyA9IGxvZ2dpbmcuZ2V0TG9nZ2VyKF9fbmFtZV9fKQogCiAKIGNsYXNzIFByZXR0eVBh
dGNoKG9iamVjdCk6CiAgICAgIyBGSVhNRTogUHJldHR5UGF0Y2ggc2hvdWxkIG5vdCByZXF1aXJl
IGNoZWNrb3V0X3Jvb3QuCi0gICAgZGVmIF9faW5pdF9fKHNlbGYsIGV4ZWN1dGl2ZSwgY2hlY2tv
dXRfcm9vdCk6CisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGV4ZWN1dGl2ZSwgY2hlY2tvdXRfcm9v
dCwgZmlsZXN5c3RlbT1Ob25lKToKICAgICAgICAgc2VsZi5fZXhlY3V0aXZlID0gZXhlY3V0aXZl
CisgICAgICAgIHNlbGYuX2ZpbGVzeXN0ZW0gPSBmaWxlc3lzdGVtCiAgICAgICAgIHNlbGYuX2No
ZWNrb3V0X3Jvb3QgPSBjaGVja291dF9yb290CisgICAgICAgIHNlbGYuX3ByZXR0eV9wYXRjaF9w
YXRoID0gb3MucGF0aC5qb2luKHNlbGYuX2NoZWNrb3V0X3Jvb3QsICJXZWJzaXRlcyIsICJidWdz
LndlYmtpdC5vcmciLCAiUHJldHR5UGF0Y2giKQorICAgICAgICBzZWxmLl9wcmV0dGlmeV9wYXRo
ID0gb3MucGF0aC5qb2luKHNlbGYuX3ByZXR0eV9wYXRjaF9wYXRoLCAicHJldHRpZnkucmIiKQor
ICAgICAgICBzZWxmLnByZXR0eV9wYXRjaF9lcnJvcl9odG1sID0gIkZhaWxlZCB0byBydW4gUHJl
dHR5UGF0Y2gsIHNlZSBlcnJvciBsb2cuIgorICAgICAgICBzZWxmLnBwYXRjaF9hdmFpbGFibGUg
PSBOb25lCiAKICAgICBkZWYgcHJldHR5X2RpZmZfZmlsZShzZWxmLCBkaWZmKToKICAgICAgICAg
IyBEaWZmcyBjYW4gY29udGFpbiBtdWx0aXBsZSB0ZXh0IGZpbGVzIG9mIGRpZmZlcmVudCBlbmNv
ZGluZ3MKQEAgLTUyLDE2ICs2Miw1OSBAQCBjbGFzcyBQcmV0dHlQYXRjaChvYmplY3QpOgogICAg
ICAgICBpZiBub3QgZGlmZjoKICAgICAgICAgICAgIHJldHVybiAiIgogCi0gICAgICAgIHByZXR0
eV9wYXRjaF9wYXRoID0gb3MucGF0aC5qb2luKHNlbGYuX2NoZWNrb3V0X3Jvb3QsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJXZWJzaXRlcyIsICJidWdzLndlYmtp
dC5vcmciLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUHJldHR5
UGF0Y2giKQotICAgICAgICBwcmV0dGlmeV9wYXRoID0gb3MucGF0aC5qb2luKHByZXR0eV9wYXRj
aF9wYXRoLCAicHJldHRpZnkucmIiKQogICAgICAgICBhcmdzID0gWwogICAgICAgICAgICAgInJ1
YnkiLAogICAgICAgICAgICAgIi1JIiwKLSAgICAgICAgICAgIHByZXR0eV9wYXRjaF9wYXRoLAot
ICAgICAgICAgICAgcHJldHRpZnlfcGF0aCwKKyAgICAgICAgICAgIHNlbGYuX3ByZXR0eV9wYXRj
aF9wYXRoLAorICAgICAgICAgICAgc2VsZi5fcHJldHRpZnlfcGF0aCwKICAgICAgICAgXQogICAg
ICAgICAjIFByZXR0eVBhdGNoIGRvZXMgbm90IG1vZGlmeSB0aGUgZW5jb2Rpbmcgb2YgdGhlIGRp
ZmYgb3V0cHV0CiAgICAgICAgICMgc28gd2UgY2FuJ3QgZXhwZWN0IGl0IHRvIGJlIHV0Zi04Lgog
ICAgICAgICByZXR1cm4gc2VsZi5fZXhlY3V0aXZlLnJ1bl9jb21tYW5kKGFyZ3MsIGlucHV0PWRp
ZmYsIGRlY29kZV9vdXRwdXQ9RmFsc2UpCisKKyAgICBkZWYgcHJldHR5X3BhdGNoX2F2YWlsYWJs
ZShzZWxmKToKKyAgICAgICAgaWYgc2VsZi5wcGF0Y2hfYXZhaWxhYmxlIGlzIE5vbmU6CisgICAg
ICAgICAgICBzZWxmLnBwYXRjaF9hdmFpbGFibGUgPSBzZWxmLmNoZWNrX3ByZXR0eV9wYXRjaChs
b2dnaW5nPUZhbHNlKQorICAgICAgICByZXR1cm4gc2VsZi5wcGF0Y2hfYXZhaWxhYmxlCisKKyAg
ICBkZWYgY2hlY2tfcHJldHR5X3BhdGNoKHNlbGYsIGxvZ2dpbmc9VHJ1ZSk6CisgICAgICAgICIi
IkNoZWNrcyB3aGV0aGVyIHdlIGNhbiB1c2UgdGhlIFByZXR0eVBhdGNoIHJ1Ynkgc2NyaXB0LiIi
IgorICAgICAgICB0cnk6CisgICAgICAgICAgICBfID0gc2VsZi5fZXhlY3V0aXZlLnJ1bl9jb21t
YW5kKFsncnVieScsICctLXZlcnNpb24nXSkKKyAgICAgICAgZXhjZXB0IE9TRXJyb3IsIGU6Cisg
ICAgICAgICAgICBpZiBlLmVycm5vIGluIFtlcnJuby5FTk9FTlQsIGVycm5vLkVBQ0NFUywgZXJy
bm8uRUNISUxEXToKKyAgICAgICAgICAgICAgICBpZiBsb2dnaW5nOgorICAgICAgICAgICAgICAg
ICAgICBfbG9nLndhcm5pbmcoIlJ1YnkgaXMgbm90IGluc3RhbGxlZDsgY2FuJ3QgZ2VuZXJhdGUg
cHJldHR5IHBhdGNoZXMuIikKKyAgICAgICAgICAgICAgICAgICAgX2xvZy53YXJuaW5nKCcnKQor
ICAgICAgICAgICAgICAgIHJldHVybiBGYWxzZQorCisgICAgICAgIGlmIG5vdCBzZWxmLl9maWxl
c3lzdGVtLmV4aXN0cyhzZWxmLl9wcmV0dHlfcGF0Y2hfcGF0aCk6CisgICAgICAgICAgICBpZiBs
b2dnaW5nOgorICAgICAgICAgICAgICAgIF9sb2cud2FybmluZygiVW5hYmxlIHRvIGZpbmQgJXM7
IGNhbid0IGdlbmVyYXRlIHByZXR0eSBwYXRjaGVzLiIgJSBzZWxmLl9wcmV0dHlfcGF0Y2hfcGF0
aCkKKyAgICAgICAgICAgICAgICBfbG9nLndhcm5pbmcoJycpCisgICAgICAgICAgICByZXR1cm4g
RmFsc2UKKworICAgICAgICByZXR1cm4gVHJ1ZQorCisgICAgZGVmIHByZXR0eV9wYXRjaF90ZXh0
KHNlbGYsIGRpZmZfcGF0aCk6CisgICAgICAgIGlmIHNlbGYucHBhdGNoX2F2YWlsYWJsZSBpcyBO
b25lOgorICAgICAgICAgICAgc2VsZi5wcGF0Y2hfYXZhaWxhYmxlID0gc2VsZi5jaGVja19wcmV0
dHlfcGF0Y2gobG9nZ2luZz1GYWxzZSkKKyAgICAgICAgaWYgbm90IHNlbGYucHBhdGNoX2F2YWls
YWJsZToKKyAgICAgICAgICAgIHJldHVybiBzZWxmLnByZXR0eV9wYXRjaF9lcnJvcl9odG1sCisg
ICAgICAgIGNvbW1hbmQgPSAoInJ1YnkiLCAiLUkiLCBzZWxmLl9maWxlc3lzdGVtLmRpcm5hbWUo
c2VsZi5fcHJldHRpZnlfcGF0aCksCisgICAgICAgICAgICAgICAgICAgc2VsZi5fcHJldHRpZnlf
cGF0aCwgZGlmZl9wYXRoKQorICAgICAgICB0cnk6CisgICAgICAgICAgICAjIERpZmZzIGFyZSB0
cmVhdGVkIGFzIGJpbmFyeSAod2UgcGFzcyBkZWNvZGVfb3V0cHV0PUZhbHNlKSBhcyB0aGV5Cisg
ICAgICAgICAgICAjIG1heSBjb250YWluIG11bHRpcGxlIGZpbGVzIG9mIGNvbmZsaWN0aW5nIGVu
Y29kaW5ncy4KKyAgICAgICAgICAgIHJldHVybiBzZWxmLl9leGVjdXRpdmUucnVuX2NvbW1hbmQo
Y29tbWFuZCwgZGVjb2RlX291dHB1dD1GYWxzZSkKKyAgICAgICAgZXhjZXB0IE9TRXJyb3IsIGU6
CisgICAgICAgICAgICAjIElmIHRoZSBzeXN0ZW0gaXMgbWlzc2luZyBydWJ5IGxvZyB0aGUgZXJy
b3IgYW5kIHN0b3AgdHJ5aW5nLgorICAgICAgICAgICAgc2VsZi5wcGF0Y2hfYXZhaWxhYmxlID0g
RmFsc2UKKyAgICAgICAgICAgIF9sb2cuZXJyb3IoIkZhaWxlZCB0byBydW4gUHJldHR5UGF0Y2gg
KCVzKTogJXMiICUgKGNvbW1hbmQsIGUpKQorICAgICAgICAgICAgcmV0dXJuIHNlbGYucHJldHR5
X3BhdGNoX2Vycm9yX2h0bWwKKyAgICAgICAgZXhjZXB0IFNjcmlwdEVycm9yLCBlOgorICAgICAg
ICAgICAgIyBJZiBydWJ5IGZhaWxlZCB0byBydW4gZm9yIHNvbWUgcmVhc29uLCBsb2cgdGhlIGNv
bW1hbmQKKyAgICAgICAgICAgICMgb3V0cHV0IGFuZCBzdG9wIHRyeWluZy4KKyAgICAgICAgICAg
IHNlbGYucHBhdGNoX2F2YWlsYWJsZSA9IEZhbHNlCisgICAgICAgICAgICBfbG9nLmVycm9yKCJG
YWlsZWQgdG8gcnVuIFByZXR0eVBhdGNoICglcyk6XG4lcyIgJSAoY29tbWFuZCwgZS5tZXNzYWdl
X3dpdGhfb3V0cHV0KCkpKQorICAgICAgICAgICAgcmV0dXJuIHNlbGYucHJldHR5X3BhdGNoX2Vy
cm9yX2h0bWwKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L2NvbnRyb2xsZXJzL3Rlc3RfcmVzdWx0X3dyaXRlci5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL3Rlc3RfcmVzdWx0X3dyaXRlci5weQppbmRleCA5
Zjg3M2Y2Li5iNWFkOWIxIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91
dF90ZXN0cy9jb250cm9sbGVycy90ZXN0X3Jlc3VsdF93cml0ZXIucHkKKysrIGIvVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvdGVzdF9yZXN1bHRfd3JpdGVy
LnB5CkBAIC0xNjAsOCArMTYwLDggQEAgY2xhc3MgVGVzdFJlc3VsdFdyaXRlcihvYmplY3QpOgog
ICAgICAgICAgICAgc2VsZi5fd3JpdGVfYmluYXJ5X2ZpbGUod2RpZmZfZmlsZW5hbWUsIHdkaWZm
KQogCiAgICAgICAgICMgVXNlIFdlYktpdCdzIFByZXR0eVBhdGNoLnJiIHRvIGdldCBhbiBIVE1M
IGRpZmYuCi0gICAgICAgIGlmIHNlbGYuX3BvcnQucHJldHR5X3BhdGNoX2F2YWlsYWJsZSgpOgot
ICAgICAgICAgICAgcHJldHR5X3BhdGNoID0gc2VsZi5fcG9ydC5wcmV0dHlfcGF0Y2hfdGV4dChk
aWZmX2ZpbGVuYW1lKQorICAgICAgICBpZiBzZWxmLl9wb3J0LnByZXR0eV9wYXRjaC5wcmV0dHlf
cGF0Y2hfYXZhaWxhYmxlKCk6CisgICAgICAgICAgICBwcmV0dHlfcGF0Y2ggPSBzZWxmLl9wb3J0
LnByZXR0eV9wYXRjaC5wcmV0dHlfcGF0Y2hfdGV4dChkaWZmX2ZpbGVuYW1lKQogICAgICAgICAg
ICAgcHJldHR5X3BhdGNoX2ZpbGVuYW1lID0gc2VsZi5vdXRwdXRfZmlsZW5hbWUoc2VsZi5GSUxF
TkFNRV9TVUZGSVhfUFJFVFRZX1BBVENIKQogICAgICAgICAgICAgc2VsZi5fd3JpdGVfYmluYXJ5
X2ZpbGUocHJldHR5X3BhdGNoX2ZpbGVuYW1lLCBwcmV0dHlfcGF0Y2gpCiAKZGlmZiAtLWdpdCBh
L1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL21vZGVscy90ZXN0X3J1bl9yZXN1
bHRzLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvbW9kZWxzL3Rlc3Rf
cnVuX3Jlc3VsdHMucHkKaW5kZXggNzczYzI2ZS4uYjZjZDI1OCAxMDA2NDQKLS0tIGEvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvbW9kZWxzL3Rlc3RfcnVuX3Jlc3VsdHMucHkK
KysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvbW9kZWxzL3Rlc3RfcnVu
X3Jlc3VsdHMucHkKQEAgLTI0Myw3ICsyNDMsNyBAQCBkZWYgc3VtbWFyaXplX3Jlc3VsdHMocG9y
dF9vYmosIGV4cGVjdGF0aW9ucywgaW5pdGlhbF9yZXN1bHRzLCByZXRyeV9yZXN1bHRzLCBlbgog
ICAgIHJlc3VsdHNbJ2ludGVycnVwdGVkJ10gPSBpbml0aWFsX3Jlc3VsdHMuaW50ZXJydXB0ZWQg
ICMgRG9lcyByZXN1bHRzLmh0bWwgaGF2ZSBlbm91Z2ggaW5mb3JtYXRpb24gdG8gY29tcHV0ZSB0
aGlzIGl0c2VsZj8gKGJ5IGNoZWNraW5nIHRvdGFsIG51bWJlciBvZiByZXN1bHRzIHZzLiB0b3Rh
bCBudW1iZXIgb2YgdGVzdHM/KQogICAgIHJlc3VsdHNbJ2xheW91dF90ZXN0c19kaXInXSA9IHBv
cnRfb2JqLmxheW91dF90ZXN0c19kaXIoKQogICAgIHJlc3VsdHNbJ2hhc193ZGlmZiddID0gcG9y
dF9vYmoud2RpZmZfYXZhaWxhYmxlKCkKLSAgICByZXN1bHRzWydoYXNfcHJldHR5X3BhdGNoJ10g
PSBwb3J0X29iai5wcmV0dHlfcGF0Y2hfYXZhaWxhYmxlKCkKKyAgICByZXN1bHRzWydoYXNfcHJl
dHR5X3BhdGNoJ10gPSBwb3J0X29iai5wcmV0dHlfcGF0Y2gucHJldHR5X3BhdGNoX2F2YWlsYWJs
ZSgpCiAgICAgcmVzdWx0c1sncGl4ZWxfdGVzdHNfZW5hYmxlZCddID0gcG9ydF9vYmouZ2V0X29w
dGlvbigncGl4ZWxfdGVzdHMnKQogCiAgICAgdHJ5OgpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9wb3J0L2Jhc2UucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvYmFz
ZS5weQppbmRleCAzMTE4YjMzLi5mYjY3MjZlIDEwMDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dl
YmtpdHB5L3BvcnQvYmFzZS5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L3BvcnQvYmFz
ZS5weQpAQCAtNTEsNiArNTEsNyBAQCBleGNlcHQgSW1wb3J0RXJyb3I6CiBmcm9tIHdlYmtpdHB5
LmNvbW1vbiBpbXBvcnQgZmluZF9maWxlcwogZnJvbSB3ZWJraXRweS5jb21tb24gaW1wb3J0IHJl
YWRfY2hlY2tzdW1fZnJvbV9wbmcKIGZyb20gd2Via2l0cHkuY29tbW9uLm1lbW9pemVkIGltcG9y
dCBtZW1vaXplZAorZnJvbSB3ZWJraXRweS5jb21tb24ucHJldHR5cGF0Y2ggaW1wb3J0IFByZXR0
eVBhdGNoCiBmcm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0gaW1wb3J0IHBhdGgKIGZyb20gd2Vi
a2l0cHkuY29tbW9uLnN5c3RlbS5leGVjdXRpdmUgaW1wb3J0IFNjcmlwdEVycm9yCiBmcm9tIHdl
YmtpdHB5LmNvbW1vbi5zeXN0ZW0uc3lzdGVtaG9zdCBpbXBvcnQgU3lzdGVtSG9zdApAQCAtMTE2
LDYgKzExNyw3IEBAIGNsYXNzIFBvcnQob2JqZWN0KToKICAgICAgICAgc2VsZi5fZmlsZXN5c3Rl
bSA9IGhvc3QuZmlsZXN5c3RlbQogICAgICAgICBzZWxmLl93ZWJraXRfZmluZGVyID0gV2ViS2l0
RmluZGVyKGhvc3QuZmlsZXN5c3RlbSkKICAgICAgICAgc2VsZi5fY29uZmlnID0gcG9ydF9jb25m
aWcuQ29uZmlnKHNlbGYuX2V4ZWN1dGl2ZSwgc2VsZi5fZmlsZXN5c3RlbSwgc2VsZi5wb3J0X25h
bWUpCisgICAgICAgIHNlbGYucHJldHR5X3BhdGNoID0gUHJldHR5UGF0Y2goc2VsZi5fZXhlY3V0
aXZlLCBzZWxmLnBhdGhfZnJvbV93ZWJraXRfYmFzZSgpLCBzZWxmLl9maWxlc3lzdGVtKQogCiAg
ICAgICAgIHNlbGYuX2hlbHBlciA9IE5vbmUKICAgICAgICAgc2VsZi5faHR0cF9zZXJ2ZXIgPSBO
b25lCkBAIC0xMzksMTAgKzE0MSw2IEBAIGNsYXNzIFBvcnQob2JqZWN0KToKICAgICAgICAgIyBo
dHRwOi8vYnVncy5weXRob24ub3JnL2lzc3VlMzIxMAogICAgICAgICBzZWxmLl93ZGlmZl9hdmFp
bGFibGUgPSBOb25lCiAKLSAgICAgICAgIyBGSVhNRTogcHJldHR5cGF0Y2gucHkga25vd3MgdGhp
cyBwYXRoLCB3aHkgaXMgaXQgY29waWVkIGhlcmU/Ci0gICAgICAgIHNlbGYuX3ByZXR0eV9wYXRj
aF9wYXRoID0gc2VsZi5wYXRoX2Zyb21fd2Via2l0X2Jhc2UoIldlYnNpdGVzIiwgImJ1Z3Mud2Vi
a2l0Lm9yZyIsICJQcmV0dHlQYXRjaCIsICJwcmV0dGlmeS5yYiIpCi0gICAgICAgIHNlbGYuX3By
ZXR0eV9wYXRjaF9hdmFpbGFibGUgPSBOb25lCi0KICAgICAgICAgaWYgbm90IGhhc2F0dHIob3B0
aW9ucywgJ2NvbmZpZ3VyYXRpb24nKSBvciBub3Qgb3B0aW9ucy5jb25maWd1cmF0aW9uOgogICAg
ICAgICAgICAgc2VsZi5zZXRfb3B0aW9uX2RlZmF1bHQoJ2NvbmZpZ3VyYXRpb24nLCBzZWxmLmRl
ZmF1bHRfY29uZmlndXJhdGlvbigpKQogICAgICAgICBzZWxmLl90ZXN0X2NvbmZpZ3VyYXRpb24g
PSBOb25lCkBAIC0xNzgsMTEgKzE3Niw2IEBAIGNsYXNzIFBvcnQob2JqZWN0KToKICAgICAgICAg
ICAgIHNlbGYuX3dkaWZmX2F2YWlsYWJsZSA9IHNlbGYuY2hlY2tfd2RpZmYobG9nZ2luZz1GYWxz
ZSkKICAgICAgICAgcmV0dXJuIHNlbGYuX3dkaWZmX2F2YWlsYWJsZQogCi0gICAgZGVmIHByZXR0
eV9wYXRjaF9hdmFpbGFibGUoc2VsZik6Ci0gICAgICAgIGlmIHNlbGYuX3ByZXR0eV9wYXRjaF9h
dmFpbGFibGUgaXMgTm9uZToKLSAgICAgICAgICAgIHNlbGYuX3ByZXR0eV9wYXRjaF9hdmFpbGFi
bGUgPSBzZWxmLmNoZWNrX3ByZXR0eV9wYXRjaChsb2dnaW5nPUZhbHNlKQotICAgICAgICByZXR1
cm4gc2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZQotCiAgICAgZGVmIHNob3VsZF9yZXRyeV9j
cmFzaGVzKHNlbGYpOgogICAgICAgICByZXR1cm4gRmFsc2UKIApAQCAtMjgxLDI1ICsyNzQsNiBA
QCBjbGFzcyBQb3J0KG9iamVjdCk6CiAgICAgICAgICAgICByZXR1cm4gRmFsc2UKICAgICAgICAg
cmV0dXJuIFRydWUKIAotICAgIGRlZiBjaGVja19wcmV0dHlfcGF0Y2goc2VsZiwgbG9nZ2luZz1U
cnVlKToKLSAgICAgICAgIiIiQ2hlY2tzIHdoZXRoZXIgd2UgY2FuIHVzZSB0aGUgUHJldHR5UGF0
Y2ggcnVieSBzY3JpcHQuIiIiCi0gICAgICAgIHRyeToKLSAgICAgICAgICAgIF8gPSBzZWxmLl9l
eGVjdXRpdmUucnVuX2NvbW1hbmQoWydydWJ5JywgJy0tdmVyc2lvbiddKQotICAgICAgICBleGNl
cHQgT1NFcnJvciwgZToKLSAgICAgICAgICAgIGlmIGUuZXJybm8gaW4gW2Vycm5vLkVOT0VOVCwg
ZXJybm8uRUFDQ0VTLCBlcnJuby5FQ0hJTERdOgotICAgICAgICAgICAgICAgIGlmIGxvZ2dpbmc6
Ci0gICAgICAgICAgICAgICAgICAgIF9sb2cud2FybmluZygiUnVieSBpcyBub3QgaW5zdGFsbGVk
OyBjYW4ndCBnZW5lcmF0ZSBwcmV0dHkgcGF0Y2hlcy4iKQotICAgICAgICAgICAgICAgICAgICBf
bG9nLndhcm5pbmcoJycpCi0gICAgICAgICAgICAgICAgcmV0dXJuIEZhbHNlCi0KLSAgICAgICAg
aWYgbm90IHNlbGYuX2ZpbGVzeXN0ZW0uZXhpc3RzKHNlbGYuX3ByZXR0eV9wYXRjaF9wYXRoKToK
LSAgICAgICAgICAgIGlmIGxvZ2dpbmc6Ci0gICAgICAgICAgICAgICAgX2xvZy53YXJuaW5nKCJV
bmFibGUgdG8gZmluZCAlczsgY2FuJ3QgZ2VuZXJhdGUgcHJldHR5IHBhdGNoZXMuIiAlIHNlbGYu
X3ByZXR0eV9wYXRjaF9wYXRoKQotICAgICAgICAgICAgICAgIF9sb2cud2FybmluZygnJykKLSAg
ICAgICAgICAgIHJldHVybiBGYWxzZQotCi0gICAgICAgIHJldHVybiBUcnVlCi0KICAgICBkZWYg
Y2hlY2tfd2RpZmYoc2VsZiwgbG9nZ2luZz1UcnVlKToKICAgICAgICAgaWYgbm90IHNlbGYuX3Bh
dGhfdG9fd2RpZmYoKToKICAgICAgICAgICAgICMgRG9uJ3QgbmVlZCB0byBsb2cgaGVyZSBzaW5j
ZSB0aGlzIGlzIHRoZSBwb3J0IGNob29zaW5nIG5vdCB0byB1c2Ugd2RpZmYuCkBAIC0xMTU0LDMy
ICsxMTI4LDYgQEAgY2xhc3MgUG9ydChvYmplY3QpOgogICAgICAgICAgICAgICAgIHJldHVybiAi
IgogICAgICAgICAgICAgcmFpc2UKIAotICAgICMgVGhpcyBpcyBhIGNsYXNzIHZhcmlhYmxlIHNv
IHdlIGNhbiB0ZXN0IGVycm9yIG91dHB1dCBlYXNpbHkuCi0gICAgX3ByZXR0eV9wYXRjaF9lcnJv
cl9odG1sID0gIkZhaWxlZCB0byBydW4gUHJldHR5UGF0Y2gsIHNlZSBlcnJvciBsb2cuIgotCi0g
ICAgZGVmIHByZXR0eV9wYXRjaF90ZXh0KHNlbGYsIGRpZmZfcGF0aCk6Ci0gICAgICAgIGlmIHNl
bGYuX3ByZXR0eV9wYXRjaF9hdmFpbGFibGUgaXMgTm9uZToKLSAgICAgICAgICAgIHNlbGYuX3By
ZXR0eV9wYXRjaF9hdmFpbGFibGUgPSBzZWxmLmNoZWNrX3ByZXR0eV9wYXRjaChsb2dnaW5nPUZh
bHNlKQotICAgICAgICBpZiBub3Qgc2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZToKLSAgICAg
ICAgICAgIHJldHVybiBzZWxmLl9wcmV0dHlfcGF0Y2hfZXJyb3JfaHRtbAotICAgICAgICBjb21t
YW5kID0gKCJydWJ5IiwgIi1JIiwgc2VsZi5fZmlsZXN5c3RlbS5kaXJuYW1lKHNlbGYuX3ByZXR0
eV9wYXRjaF9wYXRoKSwKLSAgICAgICAgICAgICAgICAgICBzZWxmLl9wcmV0dHlfcGF0Y2hfcGF0
aCwgZGlmZl9wYXRoKQotICAgICAgICB0cnk6Ci0gICAgICAgICAgICAjIERpZmZzIGFyZSB0cmVh
dGVkIGFzIGJpbmFyeSAod2UgcGFzcyBkZWNvZGVfb3V0cHV0PUZhbHNlKSBhcyB0aGV5Ci0gICAg
ICAgICAgICAjIG1heSBjb250YWluIG11bHRpcGxlIGZpbGVzIG9mIGNvbmZsaWN0aW5nIGVuY29k
aW5ncy4KLSAgICAgICAgICAgIHJldHVybiBzZWxmLl9leGVjdXRpdmUucnVuX2NvbW1hbmQoY29t
bWFuZCwgZGVjb2RlX291dHB1dD1GYWxzZSkKLSAgICAgICAgZXhjZXB0IE9TRXJyb3IsIGU6Ci0g
ICAgICAgICAgICAjIElmIHRoZSBzeXN0ZW0gaXMgbWlzc2luZyBydWJ5IGxvZyB0aGUgZXJyb3Ig
YW5kIHN0b3AgdHJ5aW5nLgotICAgICAgICAgICAgc2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJs
ZSA9IEZhbHNlCi0gICAgICAgICAgICBfbG9nLmVycm9yKCJGYWlsZWQgdG8gcnVuIFByZXR0eVBh
dGNoICglcyk6ICVzIiAlIChjb21tYW5kLCBlKSkKLSAgICAgICAgICAgIHJldHVybiBzZWxmLl9w
cmV0dHlfcGF0Y2hfZXJyb3JfaHRtbAotICAgICAgICBleGNlcHQgU2NyaXB0RXJyb3IsIGU6Ci0g
ICAgICAgICAgICAjIElmIHJ1YnkgZmFpbGVkIHRvIHJ1biBmb3Igc29tZSByZWFzb24sIGxvZyB0
aGUgY29tbWFuZAotICAgICAgICAgICAgIyBvdXRwdXQgYW5kIHN0b3AgdHJ5aW5nLgotICAgICAg
ICAgICAgc2VsZi5fcHJldHR5X3BhdGNoX2F2YWlsYWJsZSA9IEZhbHNlCi0gICAgICAgICAgICBf
bG9nLmVycm9yKCJGYWlsZWQgdG8gcnVuIFByZXR0eVBhdGNoICglcyk6XG4lcyIgJSAoY29tbWFu
ZCwgZS5tZXNzYWdlX3dpdGhfb3V0cHV0KCkpKQotICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3By
ZXR0eV9wYXRjaF9lcnJvcl9odG1sCi0KICAgICBkZWYgZGVmYXVsdF9jb25maWd1cmF0aW9uKHNl
bGYpOgogICAgICAgICByZXR1cm4gc2VsZi5fY29uZmlnLmRlZmF1bHRfY29uZmlndXJhdGlvbigp
CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvcG9ydC9iYXNlX3VuaXR0ZXN0
LnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L2Jhc2VfdW5pdHRlc3QucHkKaW5kZXgg
YzA0Y2FlMC4uZTJkYTVjNiAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0
L2Jhc2VfdW5pdHRlc3QucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wb3J0L2Jhc2Vf
dW5pdHRlc3QucHkKQEAgLTkwLDI0ICs5MCwyNCBAQCBjbGFzcyBQb3J0VGVzdCh1bml0dGVzdC5U
ZXN0Q2FzZSk6CiAgICAgICAgIHBvcnQgPSBzZWxmLm1ha2VfcG9ydChleGVjdXRpdmU9ZXhlY3V0
aXZlX21vY2suTW9ja0V4ZWN1dGl2ZTIoZXhjZXB0aW9uPU9TRXJyb3IpKQogICAgICAgICBvYyA9
IE91dHB1dENhcHR1cmUoKQogICAgICAgICBvYy5jYXB0dXJlX291dHB1dCgpCi0gICAgICAgIHNl
bGYuYXNzZXJ0RXF1YWwocG9ydC5wcmV0dHlfcGF0Y2hfdGV4dCgicGF0Y2gudHh0IiksCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgcG9ydC5fcHJldHR5X3BhdGNoX2Vycm9yX2h0bWwpCisgICAg
ICAgIHNlbGYuYXNzZXJ0RXF1YWwocG9ydC5wcmV0dHlfcGF0Y2gucHJldHR5X3BhdGNoX3RleHQo
InBhdGNoLnR4dCIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIHBvcnQucHJldHR5X3BhdGNo
LnByZXR0eV9wYXRjaF9lcnJvcl9odG1sKQogCiAgICAgICAgICMgVGhpcyB0ZXN0cyByZXBlYXRl
ZCBjYWxscyB0byBtYWtlIHN1cmUgd2UgY2FjaGUgdGhlIHJlc3VsdC4KLSAgICAgICAgc2VsZi5h
c3NlcnRFcXVhbChwb3J0LnByZXR0eV9wYXRjaF90ZXh0KCJwYXRjaC50eHQiKSwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICBwb3J0Ll9wcmV0dHlfcGF0Y2hfZXJyb3JfaHRtbCkKKyAgICAgICAg
c2VsZi5hc3NlcnRFcXVhbChwb3J0LnByZXR0eV9wYXRjaC5wcmV0dHlfcGF0Y2hfdGV4dCgicGF0
Y2gudHh0IiksCisgICAgICAgICAgICAgICAgICAgICAgICAgcG9ydC5wcmV0dHlfcGF0Y2gucHJl
dHR5X3BhdGNoX2Vycm9yX2h0bWwpCiAgICAgICAgIG9jLnJlc3RvcmVfb3V0cHV0KCkKIAogICAg
IGRlZiB0ZXN0X3ByZXR0eV9wYXRjaF9zY3JpcHRfZXJyb3Ioc2VsZik6CiAgICAgICAgICMgRklY
TUU6IFRoaXMgaXMgc29tZSB1Z2x5IHdoaXRlLWJveCB0ZXN0IGhhY2tpbmcgLi4uCiAgICAgICAg
IHBvcnQgPSBzZWxmLm1ha2VfcG9ydChleGVjdXRpdmU9ZXhlY3V0aXZlX21vY2suTW9ja0V4ZWN1
dGl2ZTIoZXhjZXB0aW9uPVNjcmlwdEVycm9yKSkKLSAgICAgICAgcG9ydC5fcHJldHR5X3BhdGNo
X2F2YWlsYWJsZSA9IFRydWUKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwb3J0LnByZXR0eV9w
YXRjaF90ZXh0KCJwYXRjaC50eHQiKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBwb3J0Ll9w
cmV0dHlfcGF0Y2hfZXJyb3JfaHRtbCkKKyAgICAgICAgcG9ydC5wcmV0dHlfcGF0Y2gucHBhdGNo
X2F2YWlsYWJsZSA9IFRydWUKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwb3J0LnByZXR0eV9w
YXRjaC5wcmV0dHlfcGF0Y2hfdGV4dCgicGF0Y2gudHh0IiksCisgICAgICAgICAgICAgICAgICAg
ICAgICAgcG9ydC5wcmV0dHlfcGF0Y2gucHJldHR5X3BhdGNoX2Vycm9yX2h0bWwpCiAKICAgICAg
ICAgIyBUaGlzIHRlc3RzIHJlcGVhdGVkIGNhbGxzIHRvIG1ha2Ugc3VyZSB3ZSBjYWNoZSB0aGUg
cmVzdWx0LgotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBvcnQucHJldHR5X3BhdGNoX3RleHQo
InBhdGNoLnR4dCIpLAotICAgICAgICAgICAgICAgICAgICAgICAgIHBvcnQuX3ByZXR0eV9wYXRj
aF9lcnJvcl9odG1sKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBvcnQucHJldHR5X3BhdGNo
LnByZXR0eV9wYXRjaF90ZXh0KCJwYXRjaC50eHQiKSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICBwb3J0LnByZXR0eV9wYXRjaC5wcmV0dHlfcGF0Y2hfZXJyb3JfaHRtbCkKIAogICAgIGRlZiBp
bnRlZ3JhdGlvbl90ZXN0X3J1bl93ZGlmZihzZWxmKToKICAgICAgICAgZXhlY3V0aXZlID0gRXhl
Y3V0aXZlKCkK
</data>

          </attachment>
      

    </bug>

</bugzilla>