<?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>129539</bug_id>
          
          <creation_ts>2014-03-01 02:16:06 -0800</creation_ts>
          <short_desc>Fix srcset related bugs</short_desc>
          <delta_ts>2014-03-11 01:52:23 -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>
          <dependson>129570</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yoav Weiss">yoav</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>985905</commentid>
    <comment_count>0</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2014-03-01 02:16:06 -0800</bug_when>
    <thetext>Fix srcset related bugs</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>985910</commentid>
    <comment_count>1</comment_count>
      <attachid>225547</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2014-03-01 02:27:15 -0800</bug_when>
    <thetext>Created attachment 225547
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>985911</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-03-01 02:28:50 -0800</bug_when>
    <thetext>Attachment 225547 did not pass style-queue:


ERROR: LayoutTests/ChangeLog:7:  Need whitespace between colon and description  [changelog/filechangedescriptionwhitespace] [5]
ERROR: LayoutTests/ChangeLog:8:  Need whitespace between colon and description  [changelog/filechangedescriptionwhitespace] [5]
ERROR: Source/WebCore/ChangeLog:6:  Line contains tab character.  [whitespace/tab] [5]
ERROR: Source/WebCore/ChangeLog:9:  Line contains tab character.  [whitespace/tab] [5]
ERROR: Source/WebCore/ChangeLog:10:  Line contains tab character.  [whitespace/tab] [5]
Total errors found: 5 in 9 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>985912</commentid>
    <comment_count>3</comment_count>
      <attachid>225548</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2014-03-01 02:35:39 -0800</bug_when>
    <thetext>Created attachment 225548
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>985985</commentid>
    <comment_count>4</comment_count>
      <attachid>225548</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-03-01 14:24:02 -0800</bug_when>
    <thetext>Comment on attachment 225548
Patch

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

r=me!

&gt; Source/WebCore/html/parser/HTMLParserIdioms.cpp:-401
&gt; -    for (size_t i = 0; i &lt; imageCandidates.size() - 1; ++i) {
&gt; +    for (size_t i = 0; i &lt; imageCandidates.size() - 1; ++i)
&gt;          if (imageCandidates[i].scaleFactor() &gt;= deviceScaleFactor)
&gt;              return imageCandidates[i];
&gt; -    }

WebKit style is to keep the { } braces here since there is more than one line inside the for loop.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>985989</commentid>
    <comment_count>5</comment_count>
      <attachid>225570</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2014-03-01 14:42:21 -0800</bug_when>
    <thetext>Created attachment 225570
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>985995</commentid>
    <comment_count>6</comment_count>
      <attachid>225570</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-03-01 15:23:07 -0800</bug_when>
    <thetext>Comment on attachment 225570
Patch

Clearing flags on attachment: 225570

Committed r164929: &lt;http://trac.webkit.org/changeset/164929&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>985996</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-03-01 15:23:09 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>986022</commentid>
    <comment_count>8</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-03-01 17:29:20 -0800</bug_when>
    <thetext>Two tests are crashing after this change:

fast/hidpi/image-srcset-invalid-inputs-except-one.html
fast/hidpi/image-srcset-invalid-inputs.html

http://build.webkit.org/results/Apple%20Mavericks%20Debug%20WK2%20(Tests)/r164933%20(3016)/fast/hidpi/image-srcset-invalid-inputs-except-one-crash-log.txt</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>986036</commentid>
    <comment_count>9</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-03-01 19:49:30 -0800</bug_when>
    <thetext>I&apos;ll roll out for now. Please note that there was a build fix, &lt;http://trac.webkit.org/changeset/164934&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>986038</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-03-01 19:50:02 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 129570</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>986067</commentid>
    <comment_count>11</comment_count>
      <attachid>225592</attachid>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2014-03-02 06:17:20 -0800</bug_when>
    <thetext>Created attachment 225592
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>986078</commentid>
    <comment_count>12</comment_count>
    <who name="Yoav Weiss">yoav</who>
    <bug_when>2014-03-02 07:55:58 -0800</bug_when>
    <thetext>Fixed the ASSERTs. (removed the ASSERT and added an if instead)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>986162</commentid>
    <comment_count>13</comment_count>
      <attachid>225592</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-03-02 14:16:34 -0800</bug_when>
    <thetext>Comment on attachment 225592
Patch

Clearing flags on attachment: 225592

Committed r164949: &lt;http://trac.webkit.org/changeset/164949&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>986163</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-03-02 14:16:37 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>225547</attachid>
            <date>2014-03-01 02:27:15 -0800</date>
            <delta_ts>2014-03-01 02:35:32 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-129539-20140301112715.patch</filename>
            <type>text/plain</type>
            <size>14378</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY0ODYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTE4ZDc1OWFlYjIzMDgw
NmVlMTNkNjZhZDg0NDZiNTgwNGMyMDQwMC4uODdjMDFhOGU0NDAyMDdkNmZkNGFmZTI5OTU2MDVk
NTAyNTEwZTQ2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE0LTAzLTAxICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEZpeCBzcmNzZXQgcmVsYXRlZCBidWdz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjk1MzkK
KworCQlGaXhlZCBhIGJ1ZyByZXBvcnRlZCBhZ2FpbnN0IEJsaW5rJ3Mgc3Jjc2V0IGltcGxlbWVu
dGF0aW9uIGF0IGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3AvY2hyb21pdW0vaXNzdWVzL2RldGFp
bD9pZD0zNDc5OTgKKyAgICAgICAgV2hlbiBib3RoIHNyYyBhbmQgc3Jjc2V0IGhhZCBvbmx5IDF4
IGRlc2NyaXB0b3JzIGFuZCB0aGUgRFBSIHdhcyBoaWdoZXIgdGhhbiAxLCB0aGUgc3JjJ3MgcmVz
b3VyY2Ugd2FzIHBpY2tlZC4KKworCQlBbHNvIGZpeGVkIHRoZSBpbnZhbGlkIGRlc2NyaXB0b3Ig
aGFuZGxpbmcsIHdoaWNoIHdhc24ndCBhbGlnbmVkIHdpdGggdGhlIHNwZWMsIGFuZCB0aGVyZWZv
cmUgd2FzIG5vdCBhcyBmb3J3YXJkIGNvbXBhdGlibGUgYXMgaXQgc2hvdWxkIGJlLgorCQlJbnZh
bGlkIGRlc2NyaXB0b3JzIGNhdXNlZCB0aGUgZW50aXJlIHJlc291cmNlIHRvIGJlIGlnbm9yZWQs
IHJhdGhlciB0aGFuIGp1c3QgdGhlIGRlc2NyaXB0b3JzIHRoZW1zZWx2ZXMuCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGVzdHM6IGZhc3QvaGlkcGkv
aW1hZ2Utc3Jjc2V0LWludmFsaWQtZGVzY3JpcHRvci5odG1sCisgICAgICAgICAgICAgICBmYXN0
L2hpZHBpL2ltYWdlLXNyY3NldC1zcmMtc2VsZWN0aW9uLTF4LWJvdGguaHRtbAorCisgICAgICAg
ICogaHRtbC9wYXJzZXIvSFRNTFBhcnNlcklkaW9tcy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpw
YXJzZURlc2NyaXB0b3JzKToKKyAgICAgICAgKFdlYkNvcmU6OnBhcnNlSW1hZ2VzV2l0aFNjYWxl
RnJvbVNyY3NldEF0dHJpYnV0ZSk6CisgICAgICAgIChXZWJDb3JlOjpiZXN0Rml0U291cmNlRm9y
SW1hZ2VBdHRyaWJ1dGVzKToKKwogMjAxNC0wMi0yOCAgTWFydGluIEhvZG92YW4gIDxtaG9kb3Zh
bkBpbmYudS1zemVnZWQuaHU+CiAKICAgICAgICAgQVNTRVJUSU9OIEZBSUxFRDogcm91bmRlZElu
dFBvaW50KHJlbmRlcmVyTWFwcGVkUmVzdWx0KSA9PSByb3VuZGVkSW50UG9pbnQocmVzdWx0KSBp
biBXZWJDb3JlOjpSZW5kZXJHZW9tZXRyeU1hcDo6bWFwVG9Db250YWluZXIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQYXJzZXJJZGlvbXMuY3BwIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFBhcnNlcklkaW9tcy5jcHAKaW5kZXggZTllYjM5OTZh
NmIzMmRkZDk3NWRkYTAzOGY5ZmRjNzEyNjg0NzExNi4uNzI3ZTMxNTQyY2Y4ODI4YjA2OTNlNzU3
Y2Y5YzU4NzIyMTQxMTcxMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIv
SFRNTFBhcnNlcklkaW9tcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRN
TFBhcnNlcklkaW9tcy5jcHAKQEAgLTMwMiw2ICszMDIsNDAgQEAgc3RhdGljIGlubGluZSBib29s
IGlzSFRNTFNwYWNlT3JDb21tYShVQ2hhciBjaGFyYWN0ZXIpCiAgICAgcmV0dXJuIGlzSFRNTFNw
YWNlKGNoYXJhY3RlcikgfHwgY2hhcmFjdGVyID09ICcsJzsKIH0KIAorc3RhdGljIGJvb2wgcGFy
c2VEZXNjcmlwdG9ycyhjb25zdCBTdHJpbmcmIGF0dHJpYnV0ZSwgc2l6ZV90IHN0YXJ0LCBzaXpl
X3QgZW5kLCBmbG9hdCYgaW1hZ2VTY2FsZUZhY3RvcikKK3sKKyAgICBzaXplX3QgZGVzY3JpcHRv
clN0YXJ0OworICAgIHNpemVfdCBkZXNjcmlwdG9yRW5kOworICAgIHNpemVfdCBwb3NpdGlvbiA9
IHN0YXJ0OworICAgIGJvb2wgaXNGb3VuZFNjYWxlRmFjdG9yID0gZmFsc2U7CisgICAgYm9vbCBp
c0VtcHR5RGVzY3JpcHRvciA9ICEoZW5kID4gc3RhcnQpOworICAgIGJvb2wgaXNWYWxpZCA9IGZh
bHNlOworCisgICAgd2hpbGUgKHBvc2l0aW9uIDwgZW5kKSB7CisgICAgICAgIHdoaWxlIChpc0hU
TUxTcGFjZShhdHRyaWJ1dGVbcG9zaXRpb25dKSAmJiBwb3NpdGlvbiA8IGVuZCkKKyAgICAgICAg
ICAgICsrcG9zaXRpb247CisgICAgICAgIGRlc2NyaXB0b3JTdGFydCA9IHBvc2l0aW9uOworICAg
ICAgICB3aGlsZSAoaXNOb3RIVE1MU3BhY2UoYXR0cmlidXRlW3Bvc2l0aW9uXSkgJiYgcG9zaXRp
b24gPCBlbmQpCisgICAgICAgICAgICArK3Bvc2l0aW9uOworICAgICAgICBkZXNjcmlwdG9yRW5k
ID0gcG9zaXRpb247CisKKyAgICAgICAgQVNTRVJUKGRlc2NyaXB0b3JFbmQgPiBkZXNjcmlwdG9y
U3RhcnQpOworICAgICAgICAtLWRlc2NyaXB0b3JFbmQ7CisgICAgICAgIC8vIFRoaXMgcGFydCBk
aWZmZXJzIGZyb20gdGhlIHNwZWMgYXMgdGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gb25seSBz
dXBwb3J0cyBwaXhlbCBkZW5zaXR5IGRlc2NyaXB0b3JzLgorICAgICAgICBpZiAoYXR0cmlidXRl
W2Rlc2NyaXB0b3JFbmRdICE9ICd4JykKKyAgICAgICAgICAgIGNvbnRpbnVlOworCisgICAgICAg
IGlmIChpc0ZvdW5kU2NhbGVGYWN0b3IpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAg
ICAgICAgaW1hZ2VTY2FsZUZhY3RvciA9IGNoYXJhY3RlcnNUb0Zsb2F0KGF0dHJpYnV0ZS5kZXBy
ZWNhdGVkQ2hhcmFjdGVycygpICsgZGVzY3JpcHRvclN0YXJ0LCBkZXNjcmlwdG9yRW5kIC0gZGVz
Y3JpcHRvclN0YXJ0LCAmaXNWYWxpZCk7CisgICAgICAgIGlzRm91bmRTY2FsZUZhY3RvciA9IHRy
dWU7CisKKyAgICB9CisKKyAgICByZXR1cm4gaXNFbXB0eURlc2NyaXB0b3IgfHwgaXNWYWxpZDsK
K30KKwogLy8gU2VlIHRoZSBzcGVjaWZpY2F0aW9ucyBmb3IgbW9yZSBkZXRhaWxzIGFib3V0IHRo
ZSBhbGdvcml0aG0gdG8gZm9sbG93LgogLy8gaHR0cDovL3d3dy53My5vcmcvVFIvMjAxMy9XRC1o
dG1sLXNyY3NldC0yMDEzMDIyOC8jcHJvY2Vzc2luZy10aGUtaW1hZ2UtY2FuZGlkYXRlcy4KIHN0
YXRpYyB2b2lkIHBhcnNlSW1hZ2VzV2l0aFNjYWxlRnJvbVNyY3NldEF0dHJpYnV0ZShjb25zdCBT
dHJpbmcmIHNyY3NldEF0dHJpYnV0ZSwgSW1hZ2VDYW5kaWRhdGVzJiBpbWFnZUNhbmRpZGF0ZXMp
CkBAIC0zMzUsNDIgKzM2OSwxNSBAQCBzdGF0aWMgdm9pZCBwYXJzZUltYWdlc1dpdGhTY2FsZUZy
b21TcmNzZXRBdHRyaWJ1dGUoY29uc3QgU3RyaW5nJiBzcmNzZXRBdHRyaWJ1dAogICAgICAgICB9
IGVsc2UgewogICAgICAgICAgICAgLy8gNy4gQ29sbGVjdCBhIHNlcXVlbmNlIG9mIGNoYXJhY3Rl
cnMgdGhhdCBhcmUgbm90ICIsIiAoVSswMDJDKSBjaGFyYWN0ZXJzLCBhbmQgbGV0IHRoYXQgYmUg
ZGVzY3JpcHRvcnMuCiAgICAgICAgICAgICBzaXplX3QgaW1hZ2VTY2FsZVN0YXJ0ID0gc3Jjc2V0
QXR0cmlidXRlLmZpbmQoaXNOb3RIVE1MU3BhY2UsIGltYWdlVVJMRW5kICsgMSk7Ci0gICAgICAg
ICAgICBpZiAoaW1hZ2VTY2FsZVN0YXJ0ID09IG5vdEZvdW5kKQotICAgICAgICAgICAgICAgIHNl
cGFyYXRvciA9IHNyY3NldEF0dHJpYnV0ZUxlbmd0aDsKLSAgICAgICAgICAgIGVsc2UgaWYgKHNy
Y3NldEF0dHJpYnV0ZVtpbWFnZVNjYWxlU3RhcnRdID09ICcsJykKLSAgICAgICAgICAgICAgICBz
ZXBhcmF0b3IgPSBpbWFnZVNjYWxlU3RhcnQ7Ci0gICAgICAgICAgICBlbHNlIHsKLSAgICAgICAg
ICAgICAgICAvLyBUaGlzIHBhcnQgZGlmZmVycyBmcm9tIHRoZSBzcGVjIGFzIHRoZSBjdXJyZW50
IGltcGxlbWVudGF0aW9uIG9ubHkgc3VwcG9ydHMgcGl4ZWwgZGVuc2l0eSBkZXNjcmlwdG9ycyBm
b3Igbm93LgotICAgICAgICAgICAgICAgIHNpemVfdCBpbWFnZVNjYWxlRW5kID0gc3Jjc2V0QXR0
cmlidXRlLmZpbmQoaXNIVE1MU3BhY2VPckNvbW1hLCBpbWFnZVNjYWxlU3RhcnQgKyAxKTsKLSAg
ICAgICAgICAgICAgICBpbWFnZVNjYWxlRW5kID0gKGltYWdlU2NhbGVFbmQgPT0gbm90Rm91bmQp
ID8gc3Jjc2V0QXR0cmlidXRlTGVuZ3RoIDogaW1hZ2VTY2FsZUVuZDsKLSAgICAgICAgICAgICAg
ICBzaXplX3QgY29tbWFQb3NpdGlvbiA9IGltYWdlU2NhbGVFbmQ7Ci0gICAgICAgICAgICAgICAg
Ly8gTWFrZSBzdXJlIHRoZXJlIGFyZSBubyBvdGhlciBkZXNjcmlwdG9ycy4KLSAgICAgICAgICAg
ICAgICB3aGlsZSAoKGNvbW1hUG9zaXRpb24gPCBzcmNzZXRBdHRyaWJ1dGVMZW5ndGggLSAxKSAm
JiBpc0hUTUxTcGFjZShzcmNzZXRBdHRyaWJ1dGVbY29tbWFQb3NpdGlvbl0pKQotICAgICAgICAg
ICAgICAgICAgICArK2NvbW1hUG9zaXRpb247Ci0gICAgICAgICAgICAgICAgLy8gSWYgdGhlIGZp
cnN0IG5vdCBodG1sIHNwYWNlIGNoYXJhY3RlciBhZnRlciB0aGUgc2NhbGUgbW9kaWZpZXIgaXMg
bm90IGEgY29tbWEsCi0gICAgICAgICAgICAgICAgLy8gdGhlIGN1cnJlbnQgY2FuZGlkYXRlIGlz
IGFuIGludmFsaWQgaW5wdXQuCi0gICAgICAgICAgICAgICAgaWYgKChjb21tYVBvc2l0aW9uIDwg
c3Jjc2V0QXR0cmlidXRlTGVuZ3RoIC0gMSkgJiYgc3Jjc2V0QXR0cmlidXRlW2NvbW1hUG9zaXRp
b25dICE9ICcsJykgewotICAgICAgICAgICAgICAgICAgICAvLyBGaW5kIHRoZSBuZWFyZXN0IGNv
bW1hIGFuZCBza2lwIHRoZSBpbnB1dC4KLSAgICAgICAgICAgICAgICAgICAgY29tbWFQb3NpdGlv
biA9IHNyY3NldEF0dHJpYnV0ZS5maW5kKCcsJywgY29tbWFQb3NpdGlvbiArIDEpOwotICAgICAg
ICAgICAgICAgICAgICBpZiAoY29tbWFQb3NpdGlvbiA9PSBub3RGb3VuZCkKLSAgICAgICAgICAg
ICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgICAgICBpbWFnZUNhbmRpZGF0ZVN0
YXJ0ID0gY29tbWFQb3NpdGlvbiArIDE7Ci0gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwot
ICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBzZXBhcmF0b3IgPSBjb21tYVBvc2l0
aW9uOwotICAgICAgICAgICAgICAgIGlmIChzcmNzZXRBdHRyaWJ1dGVbaW1hZ2VTY2FsZUVuZCAt
IDFdICE9ICd4JykgewotICAgICAgICAgICAgICAgICAgICBpbWFnZUNhbmRpZGF0ZVN0YXJ0ID0g
c2VwYXJhdG9yICsgMTsKLSAgICAgICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAg
ICAgICAgfQotICAgICAgICAgICAgICAgIGJvb2wgdmFsaWRTY2FsZUZhY3RvciA9IGZhbHNlOwot
ICAgICAgICAgICAgICAgIHNpemVfdCBzY2FsZUZhY3Rvckxlbmd0aFdpdGhvdXRVbml0ID0gaW1h
Z2VTY2FsZUVuZCAtIGltYWdlU2NhbGVTdGFydCAtIDE7Ci0gICAgICAgICAgICAgICAgaW1hZ2VT
Y2FsZUZhY3RvciA9IGNoYXJhY3RlcnNUb0Zsb2F0KHNyY3NldEF0dHJpYnV0ZS5kZXByZWNhdGVk
Q2hhcmFjdGVycygpICsgaW1hZ2VTY2FsZVN0YXJ0LCBzY2FsZUZhY3Rvckxlbmd0aFdpdGhvdXRV
bml0LCAmdmFsaWRTY2FsZUZhY3Rvcik7Ci0KLSAgICAgICAgICAgICAgICBpZiAoIXZhbGlkU2Nh
bGVGYWN0b3IpIHsKLSAgICAgICAgICAgICAgICAgICAgaW1hZ2VDYW5kaWRhdGVTdGFydCA9IHNl
cGFyYXRvciArIDE7Ci0gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIGltYWdlU2NhbGVTdGFydCA9IChpbWFnZVNjYWxlU3RhcnQgPT0g
bm90Rm91bmQpID8gc3Jjc2V0QXR0cmlidXRlTGVuZ3RoIDogaW1hZ2VTY2FsZVN0YXJ0OworICAg
ICAgICAgICAgc2l6ZV90IGltYWdlU2NhbGVFbmQgPSBzcmNzZXRBdHRyaWJ1dGUuZmluZCgnLCcg
LCBpbWFnZVNjYWxlU3RhcnQgKyAxKTsKKyAgICAgICAgICAgIGltYWdlU2NhbGVFbmQgPSAoaW1h
Z2VTY2FsZUVuZCA9PSBub3RGb3VuZCkgPyBzcmNzZXRBdHRyaWJ1dGVMZW5ndGggOiBpbWFnZVNj
YWxlRW5kOworCisgICAgICAgICAgICBpZiAoIXBhcnNlRGVzY3JpcHRvcnMoc3Jjc2V0QXR0cmli
dXRlLCBpbWFnZVNjYWxlU3RhcnQsIGltYWdlU2NhbGVFbmQsIGltYWdlU2NhbGVGYWN0b3IpKSB7
CisgICAgICAgICAgICAgICAgaW1hZ2VDYW5kaWRhdGVTdGFydCA9IGltYWdlU2NhbGVFbmQgKyAx
OworICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgfQorICAgICAgICAgICAg
c2VwYXJhdG9yID0gaW1hZ2VTY2FsZUVuZDsKICAgICAgICAgfQogICAgICAgICBJbWFnZVdpdGhT
Y2FsZSBpbWFnZShpbWFnZVVSTFN0YXJ0LCBpbWFnZVVSTEVuZCAtIGltYWdlVVJMU3RhcnQsIGlt
YWdlU2NhbGVGYWN0b3IpOwogICAgICAgICBpbWFnZUNhbmRpZGF0ZXMuYXBwZW5kKGltYWdlKTsK
QEAgLTM5NSwxMiArNDAyLDE5IEBAIEltYWdlV2l0aFNjYWxlIGJlc3RGaXRTb3VyY2VGb3JJbWFn
ZUF0dHJpYnV0ZXMoZmxvYXQgZGV2aWNlU2NhbGVGYWN0b3IsIGNvbnN0IFN0CiAKICAgICBzdGQ6
OnN0YWJsZV9zb3J0KGltYWdlQ2FuZGlkYXRlcy5iZWdpbigpLCBpbWFnZUNhbmRpZGF0ZXMuZW5k
KCksIGNvbXBhcmVCeVNjYWxlRmFjdG9yKTsKIAotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwg
aW1hZ2VDYW5kaWRhdGVzLnNpemUoKSAtIDE7ICsraSkgeworICAgIGZvciAoc2l6ZV90IGkgPSAw
OyBpIDwgaW1hZ2VDYW5kaWRhdGVzLnNpemUoKSAtIDE7ICsraSkKICAgICAgICAgaWYgKGltYWdl
Q2FuZGlkYXRlc1tpXS5zY2FsZUZhY3RvcigpID49IGRldmljZVNjYWxlRmFjdG9yKQogICAgICAg
ICAgICAgcmV0dXJuIGltYWdlQ2FuZGlkYXRlc1tpXTsKLSAgICB9Ci0gICAgY29uc3QgSW1hZ2VX
aXRoU2NhbGUmIGxhc3RDYW5kaWRhdGUgPSBpbWFnZUNhbmRpZGF0ZXMubGFzdCgpOwotICAgIHJl
dHVybiBsYXN0Q2FuZGlkYXRlOworCisgICAgLy8gMTYuIElmIGFuIGVudHJ5IGIgaW4gY2FuZGlk
YXRlcyBoYXMgdGhlIHNhbWUgYXNzb2NpYXRlZCAuLi4gcGl4ZWwgZGVuc2l0eSBhcyBhbiBlYXJs
aWVyIGVudHJ5IGEgaW4gY2FuZGlkYXRlcywKKyAgICAvLyB0aGVuIHJlbW92ZSBlbnRyeSBiCisg
ICAgc2l6ZV90IHdpbm5lciA9IGltYWdlQ2FuZGlkYXRlcy5zaXplKCkgLSAxOworICAgIHNpemVf
dCBwcmV2aW91c0NhbmRpZGF0ZSA9IHdpbm5lcjsKKyAgICBmbG9hdCB3aW5uaW5nU2NhbGVGYWN0
b3IgPSBpbWFnZUNhbmRpZGF0ZXMubGFzdCgpLnNjYWxlRmFjdG9yKCk7CisgICAgd2hpbGUgKChw
cmV2aW91c0NhbmRpZGF0ZSA+IDApICYmIChpbWFnZUNhbmRpZGF0ZXNbLS1wcmV2aW91c0NhbmRp
ZGF0ZV0uc2NhbGVGYWN0b3IoKSA9PSB3aW5uaW5nU2NhbGVGYWN0b3IpKQorICAgICAgICB3aW5u
ZXIgPSBwcmV2aW91c0NhbmRpZGF0ZTsKKworICAgIHJldHVybiBpbWFnZUNhbmRpZGF0ZXNbd2lu
bmVyXTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDNiMjY0OGU1MTljNzQ2NmNmMTgxYWM2MWRkMWNhYjMyYWIy
MzA3YzEuLmRkNDA0NDRkMTY0ZjliN2E3NjM4ZjVkNzg3N2QwZjFlMzFlOGE2MDIgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyNCBAQAorMjAxNC0wMy0wMSAgWW9hdiBXZWlzcyAgPHlvYXZAeW9hdi53cz4KKwor
ICAgICAgICBGaXggc3Jjc2V0IHJlbGF0ZWQgYnVncworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI5NTM5CisKKyAgICAgICAgVGhlc2UgdGVzdHMgbWFr
ZSBzdXJlIHRoYXQ6CisgICAgICAgICogSW52YWxpZCBzcmNzZXQgZGVzY3JpcHRvcnMgYXJlIGhh
bmRsZWQgYWNjb3JkaW5nIHRvIHRoZSBzcGVjLiBUaGUgaW52YWxpZCBkZXNjcmlwdG9ycyBhcmUg
aWdub3JlZCwgYnV0IHRoZSByZXNvdXJjZSBpcyBub3QuCisgICAgICAgICogV2hlbiBib3RoIHNy
YyBhbmQgc3Jjc2V0IGhhdmUgb25seSAxeCBkZXNjcmlwdG9ycyBhbmQgdGhlIERQUiBpcyBoaWdo
ZXIgdGhhbiAxLCB0aGUgc3Jjc2V0J3MgcmVzb3VyY2UgaXMgcGlja2VkLgorCisgICAgICAgIEkn
dmUgYWxzbyBmaXhlZCB0aGUgaW52YWxpZCBpbnB1dHMgdGVzdCwgd2hpY2ggd2FzIGZhdWx0eS4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGZhc3Qv
aGlkcGkvaW1hZ2Utc3Jjc2V0LWludmFsaWQtZGVzY3JpcHRvci1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIGZhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0LWludmFsaWQtZGVzY3JpcHRvci5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2hpZHBpL2ltYWdlLXNyY3NldC1pbnZhbGlkLWlu
cHV0cy1jb3JyZWN0LXNyYy5odG1sOgorICAgICAgICAqIGZhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0
LXNyYy1zZWxlY3Rpb24tMXgtYm90aC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZh
c3QvaGlkcGkvaW1hZ2Utc3Jjc2V0LXNyYy1zZWxlY3Rpb24tMXgtYm90aC5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBmYXN0L2hpZHBpL3Jlc291cmNlcy9zcmNzZXQtaGVscGVyLmpzOgorICAgICAg
ICAocnVuVGVzdCk6CisKIDIwMTQtMDItMjggIE1hcnRpbiBIb2RvdmFuICA8bWhvZG92YW5AaW5m
LnUtc3plZ2VkLmh1PgogCiAgICAgICAgIEFTU0VSVElPTiBGQUlMRUQ6IHJvdW5kZWRJbnRQb2lu
dChyZW5kZXJlck1hcHBlZFJlc3VsdCkgPT0gcm91bmRlZEludFBvaW50KHJlc3VsdCkgaW4gV2Vi
Q29yZTo6UmVuZGVyR2VvbWV0cnlNYXA6Om1hcFRvQ29udGFpbmVyCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNyY3NldC1pbnZhbGlkLWRlc2NyaXB0b3ItZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtaW52YWxpZC1kZXNj
cmlwdG9yLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ZGI1YmMxNGJhZTRlNDg5OWQ4M2JkNjYz
NjBiODYxNTMxNDBlNzhmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9oaWRw
aS9pbWFnZS1zcmNzZXQtaW52YWxpZC1kZXNjcmlwdG9yLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDggQEAKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQor
UEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9vIikuY2xpZW50V2lkdGg9PTEwMCBpcyB0
cnVlCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb28yIikuY2xpZW50V2lkdGg9PTIw
MCBpcyB0cnVlCitUaGlzIHRlc3QgcGFzc2VzIGlmIHRoZSBpbWFnZSBiZWxvdyBpcyBhIDEwMHB4
IGJsdWUgc3F1YXJlIHdoZW4gdGhlIGRldmljZVNjYWxlRmFjdG9yIGlzIDEuCitJdCB0ZXN0cyB0
aGF0IGV2ZW4gdGhvdWdoIHRoZSAxeCByZXNvdXJjZSBjb250YWlucyBtYW55IGludmFsaWQgZGVz
Y3JpcHRvcnMsIG9ubHkgdGhlIGludmFsaWQgZGVzY3JpcHRvcnMgYXJlIGlnbm9yZWQgKGFjY29y
ZGluZyB0byB0aGUgc3BlYykuCisgIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9oaWRw
aS9pbWFnZS1zcmNzZXQtaW52YWxpZC1kZXNjcmlwdG9yLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L2hpZHBpL2ltYWdlLXNyY3NldC1pbnZhbGlkLWRlc2NyaXB0b3IuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5i
MWMwMmU4NzU5YWQ3OTVkODAwNDVlMmI0ZWYxNDcxMjg2MDEzMTU4Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtaW52YWxpZC1kZXNjcmlwdG9y
Lmh0bWwKQEAgLTAsMCArMSwyMyBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CisgICAgd2lu
ZG93LnRhcmdldFNjYWxlRmFjdG9yID0gMTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291
cmNlcy9zcmNzZXQtaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNv
dXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorICAgIGFkZEV2ZW50TGlzdGVu
ZXIoImxvYWQiLCBmdW5jdGlvbigpIHsKKyAgICAgICAgc2hvdWxkQmVUcnVlKCdkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZm9vIikuY2xpZW50V2lkdGg9PTEwMCcpOworICAgICAgICBzaG91bGRC
ZVRydWUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb28yIikuY2xpZW50V2lkdGg9PTIwMCcp
OworICAgIH0sIGZhbHNlKTsKKzwvc2NyaXB0PgorPC9oZWFkPgorCis8Ym9keSBpZD0iYm9keSI+
CisgICAgPGRpdj5UaGlzIHRlc3QgcGFzc2VzIGlmIHRoZSBpbWFnZSBiZWxvdyBpcyBhIDEwMHB4
IGJsdWUgc3F1YXJlIHdoZW4gdGhlIGRldmljZVNjYWxlRmFjdG9yIGlzIDEuPC9kaXY+CisgICAg
PGRpdj4gSXQgdGVzdHMgdGhhdCBldmVuIHRob3VnaCB0aGUgMXggcmVzb3VyY2UgY29udGFpbnMg
bWFueSBpbnZhbGlkIGRlc2NyaXB0b3JzLAorICAgICAgICBvbmx5IHRoZSBpbnZhbGlkIGRlc2Ny
aXB0b3JzIGFyZSBpZ25vcmVkIChhY2NvcmRpbmcgdG8gdGhlIHNwZWMpLjwvZGl2PgorICAgIDxp
bWcgaWQ9ImZvbyIgc3JjPSIiIHNyY3NldD0icmVzb3VyY2VzL2JsdWUtMTAwLXB4LXNxdWFyZS5w
bmcgNDNxIDF4IGRmcyAzZGQsIHJlc291cmNlcy9ncmVlbi00MDAtcHgtc3F1YXJlLnBuZyAyeCI+
CisgICAgPGltZyBpZD0iZm9vMiIgc3JjPSIiIHNyY3NldD0icmVzb3VyY2VzL2JsdWUtMTAwLXB4
LXNxdWFyZS5wbmcgMzAwcSwgcmVzb3VyY2VzL2dyZWVuLTQwMC1weC1zcXVhcmUucG5nIDJ4Ij4K
KzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaGlkcGkvaW1h
Z2Utc3Jjc2V0LWludmFsaWQtaW5wdXRzLWNvcnJlY3Qtc3JjLmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L2hpZHBpL2ltYWdlLXNyY3NldC1pbnZhbGlkLWlucHV0cy1jb3JyZWN0LXNyYy5odG1sCmlu
ZGV4IGE5NDliMWFiYThhMjBhMmRjODA3ZGU1ZTg5MDdiZjRiYTY4YTlkY2UuLjc3MGJjMjFmNTQx
NDVhNjFkN2I5ZGQ2OWRiYjNlMmU0M2VkNzJiNzYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zh
c3QvaGlkcGkvaW1hZ2Utc3Jjc2V0LWludmFsaWQtaW5wdXRzLWNvcnJlY3Qtc3JjLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtaW52YWxpZC1pbnB1dHMtY29y
cmVjdC1zcmMuaHRtbApAQCAtMTYsNiArMTYsNiBAQAogPGJvZHkgaWQ9ImJvZHkiPgogICAgIDxk
aXY+VGhpcyB0ZXN0IHBhc3NlcyBpZiB0aGlzIGltZyB0YWcgYmVsb3cgaXMgYSBncmVlbiBzcXVh
cmUgcmVnYXJkbGVzcyBvZiB0aGUgc2NhbGUgZmFjdG9yLiBJdCBlbnN1cmVzIHRoYXQgaW52YWxp
ZCBpbnB1dHMKICAgICBmcm9tIHNyY3NldCBhcmUgaWdub3JlZCwgYW5kIHNyYyBpcyBzZWxlY3Rl
ZCAoc2luY2UgaXQncyB0aGUgb25seSBjYW5kaWRhdGUgbGVmdCk8L2Rpdj4KLSAgICA8aW1nIGlk
PSJmb28iIHNyYz0icmVzb3VyY2VzL2dyZWVuLTQwMC1weC1zcXVhcmUucG5nIiBzcmNzZXQ9IjF4
LCwgICwgICAgICAsIDJ4ICwsIj4KKyAgICA8aW1nIGlkPSJmb28iIHNyYz0icmVzb3VyY2VzL2dy
ZWVuLTQwMC1weC1zcXVhcmUucG5nIiBzcmNzZXQ9IjF4IDV3LCwgICwgICAgICAsIDJ4ICA2MDBo
LCwiPgogPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9oaWRw
aS9pbWFnZS1zcmNzZXQtc3JjLXNlbGVjdGlvbi0xeC1ib3RoLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0LXNyYy1zZWxlY3Rpb24tMXgtYm90aC1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNDkyM2U1YzY0ZDUzNGY1ZWZmOThmOGM3M2NjNDY2OWU5OTYy
NGZiYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaGlkcGkvaW1hZ2Utc3Jj
c2V0LXNyYy1zZWxlY3Rpb24tMXgtYm90aC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw2IEBACitQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK1BBU1MgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbyIpLmNsaWVudFdpZHRoPT00MDAgaXMgdHJ1ZQorVGhp
cyB0ZXN0IHBhc3NlcyBpZiB0aGUgZGl2IGJlbG93IGlzIGEgYmx1ZSAxMDBweCBzcXVhcmUgd2hl
biB0aGUgZGV2aWNlU2NhbGVGYWN0b3IgaXMgMS4gSXQgc2ltcGx5IGVuc3VyZXMgdGhhdCB3aGVu
IGJvdGggc3JjIGFuZCBzcmNzZXQgYXJlIHNwZWNpZmllZCBmb3IgdGhlIHNhbWUgRFBSLCBzcmNz
ZXQgd2lucy4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1zcmNz
ZXQtc3JjLXNlbGVjdGlvbi0xeC1ib3RoLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2lt
YWdlLXNyY3NldC1zcmMtc2VsZWN0aW9uLTF4LWJvdGguaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hYWVhZDJi
NTgwMDUwNzgxMDc4OGFkZTA1NTc1NDhiZjM3YTA1NGI4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtc3JjLXNlbGVjdGlvbi0xeC1ib3RoLmh0
bWwKQEAgLTAsMCArMSwyNCBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CisgICAgd2luZG93
LnRhcmdldFNjYWxlRmFjdG9yID0gMjsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNl
cy9zcmNzZXQtaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikgeworICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB9CisKKyAgICBh
ZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24oKSB7CisgICAgICAgIHNob3VsZEJlVHJ1
ZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbyIpLmNsaWVudFdpZHRoPT00MDAnKTsKKyAg
ICB9LCBmYWxzZSk7Cis8L3NjcmlwdD4KKzwvaGVhZD4KKworPGJvZHkgaWQ9ImJvZHkiPgorICAg
IDxkaXY+VGhpcyB0ZXN0IHBhc3NlcyBpZiB0aGUgZGl2IGJlbG93IGlzIGEgYmx1ZSAxMDBweCBz
cXVhcmUgd2hlbiB0aGUgZGV2aWNlU2NhbGVGYWN0b3IgaXMgMS4gCisgICAgICAgIEl0IHNpbXBs
eSBlbnN1cmVzIHRoYXQgd2hlbiBib3RoIHNyYyBhbmQgc3Jjc2V0IGFyZSBzcGVjaWZpZWQgZm9y
IHRoZSBzYW1lIERQUiwgc3Jjc2V0IHdpbnMuPC9kaXY+CisgICAgPGltZyBpZD0iZm9vIiBzcmM9
InJlc291cmNlcy9ibHVlLTEwMC1weC1zcXVhcmUucG5nIiBzcmNzZXQ9InJlc291cmNlcy9ncmVl
bi00MDAtcHgtc3F1YXJlLnBuZyAxeCI+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2hpZHBpL3Jlc291cmNlcy9zcmNzZXQtaGVscGVyLmpzIGIvTGF5b3V0
VGVzdHMvZmFzdC9oaWRwaS9yZXNvdXJjZXMvc3Jjc2V0LWhlbHBlci5qcwppbmRleCA2YzgxODJl
M2NlOGExNDU4YTM5NjM0MzEzZjQxMjgwM2I2ODY0YjM4Li5kYjhkZWI4ZmU3YmI4YjNjYzk1NzZk
ZjBiMzE0YTJhZDg3MzgwMTE3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2hpZHBpL3Jl
c291cmNlcy9zcmNzZXQtaGVscGVyLmpzCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaGlkcGkvcmVz
b3VyY2VzL3NyY3NldC1oZWxwZXIuanMKQEAgLTUsNiArNSw5IEBAIGZ1bmN0aW9uIHJ1blRlc3Qo
KSB7CiAgICAgaWYgKCF3aW5kb3cudGFyZ2V0U2NhbGVGYWN0b3IpCiAgICAgICAgIHdpbmRvdy50
YXJnZXRTY2FsZUZhY3RvciA9IDI7CiAKKyAgICBpZighc2Vzc2lvblN0b3JhZ2UucGFnZVJlbG9h
ZGVkICYmIHdpbmRvdy50YXJnZXRTY2FsZUZhY3RvciA9PSB3aW5kb3cuZGV2aWNlU2NhbGVGYWN0
b3IpCisgICAgICAgIHJldHVybjsKKwogICAgIGlmICghc2Vzc2lvblN0b3JhZ2Uuc2NhbGVGYWN0
b3JJc1NldCkgewogICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKICAgICAgICAg
dGVzdFJ1bm5lci5zZXRCYWNraW5nU2NhbGVGYWN0b3IodGFyZ2V0U2NhbGVGYWN0b3IsIHNjYWxl
RmFjdG9ySXNTZXQpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>225548</attachid>
            <date>2014-03-01 02:35:39 -0800</date>
            <delta_ts>2014-03-01 14:42:11 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-129539-20140301113539.patch</filename>
            <type>text/plain</type>
            <size>14398</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY0ODYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTE4ZDc1OWFlYjIzMDgw
NmVlMTNkNjZhZDg0NDZiNTgwNGMyMDQwMC4uZWUwMjViZjc0YjNkZjUxYWFjM2Y1ZTRlZDRkMDcw
Y2QxZGQ0MGFkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE0LTAzLTAxICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEZpeCBzcmNzZXQgcmVsYXRlZCBidWdz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjk1MzkK
KworICAgICAgICBGaXhlZCBhIGJ1ZyByZXBvcnRlZCBhZ2FpbnN0IEJsaW5rJ3Mgc3Jjc2V0IGlt
cGxlbWVudGF0aW9uIGF0IGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3AvY2hyb21pdW0vaXNzdWVz
L2RldGFpbD9pZD0zNDc5OTgKKyAgICAgICAgV2hlbiBib3RoIHNyYyBhbmQgc3Jjc2V0IGhhZCBv
bmx5IDF4IGRlc2NyaXB0b3JzIGFuZCB0aGUgRFBSIHdhcyBoaWdoZXIgdGhhbiAxLCB0aGUgc3Jj
J3MgcmVzb3VyY2Ugd2FzIHBpY2tlZC4KKworICAgICAgICBBbHNvIGZpeGVkIHRoZSBpbnZhbGlk
IGRlc2NyaXB0b3IgaGFuZGxpbmcsIHdoaWNoIHdhc24ndCBhbGlnbmVkIHdpdGggdGhlIHNwZWMs
IGFuZCB0aGVyZWZvcmUgd2FzIG5vdCBhcyBmb3J3YXJkIGNvbXBhdGlibGUgYXMgaXQgc2hvdWxk
IGJlLgorICAgICAgICBJbnZhbGlkIGRlc2NyaXB0b3JzIGNhdXNlZCB0aGUgZW50aXJlIHJlc291
cmNlIHRvIGJlIGlnbm9yZWQsIHJhdGhlciB0aGFuIGp1c3QgdGhlIGRlc2NyaXB0b3JzIHRoZW1z
ZWx2ZXMuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
VGVzdHM6IGZhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0LWludmFsaWQtZGVzY3JpcHRvci5odG1sCisg
ICAgICAgICAgICAgICBmYXN0L2hpZHBpL2ltYWdlLXNyY3NldC1zcmMtc2VsZWN0aW9uLTF4LWJv
dGguaHRtbAorCisgICAgICAgICogaHRtbC9wYXJzZXIvSFRNTFBhcnNlcklkaW9tcy5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpwYXJzZURlc2NyaXB0b3JzKToKKyAgICAgICAgKFdlYkNvcmU6OnBh
cnNlSW1hZ2VzV2l0aFNjYWxlRnJvbVNyY3NldEF0dHJpYnV0ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpiZXN0Rml0U291cmNlRm9ySW1hZ2VBdHRyaWJ1dGVzKToKKwogMjAxNC0wMi0yOCAgTWFydGlu
IEhvZG92YW4gIDxtaG9kb3ZhbkBpbmYudS1zemVnZWQuaHU+CiAKICAgICAgICAgQVNTRVJUSU9O
IEZBSUxFRDogcm91bmRlZEludFBvaW50KHJlbmRlcmVyTWFwcGVkUmVzdWx0KSA9PSByb3VuZGVk
SW50UG9pbnQocmVzdWx0KSBpbiBXZWJDb3JlOjpSZW5kZXJHZW9tZXRyeU1hcDo6bWFwVG9Db250
YWluZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQYXJzZXJJ
ZGlvbXMuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFBhcnNlcklkaW9tcy5j
cHAKaW5kZXggZTllYjM5OTZhNmIzMmRkZDk3NWRkYTAzOGY5ZmRjNzEyNjg0NzExNi4uNzI3ZTMx
NTQyY2Y4ODI4YjA2OTNlNzU3Y2Y5YzU4NzIyMTQxMTcxMCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9wYXJzZXIvSFRNTFBhcnNlcklkaW9tcy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9wYXJzZXIvSFRNTFBhcnNlcklkaW9tcy5jcHAKQEAgLTMwMiw2ICszMDIsNDAgQEAg
c3RhdGljIGlubGluZSBib29sIGlzSFRNTFNwYWNlT3JDb21tYShVQ2hhciBjaGFyYWN0ZXIpCiAg
ICAgcmV0dXJuIGlzSFRNTFNwYWNlKGNoYXJhY3RlcikgfHwgY2hhcmFjdGVyID09ICcsJzsKIH0K
IAorc3RhdGljIGJvb2wgcGFyc2VEZXNjcmlwdG9ycyhjb25zdCBTdHJpbmcmIGF0dHJpYnV0ZSwg
c2l6ZV90IHN0YXJ0LCBzaXplX3QgZW5kLCBmbG9hdCYgaW1hZ2VTY2FsZUZhY3RvcikKK3sKKyAg
ICBzaXplX3QgZGVzY3JpcHRvclN0YXJ0OworICAgIHNpemVfdCBkZXNjcmlwdG9yRW5kOworICAg
IHNpemVfdCBwb3NpdGlvbiA9IHN0YXJ0OworICAgIGJvb2wgaXNGb3VuZFNjYWxlRmFjdG9yID0g
ZmFsc2U7CisgICAgYm9vbCBpc0VtcHR5RGVzY3JpcHRvciA9ICEoZW5kID4gc3RhcnQpOworICAg
IGJvb2wgaXNWYWxpZCA9IGZhbHNlOworCisgICAgd2hpbGUgKHBvc2l0aW9uIDwgZW5kKSB7Cisg
ICAgICAgIHdoaWxlIChpc0hUTUxTcGFjZShhdHRyaWJ1dGVbcG9zaXRpb25dKSAmJiBwb3NpdGlv
biA8IGVuZCkKKyAgICAgICAgICAgICsrcG9zaXRpb247CisgICAgICAgIGRlc2NyaXB0b3JTdGFy
dCA9IHBvc2l0aW9uOworICAgICAgICB3aGlsZSAoaXNOb3RIVE1MU3BhY2UoYXR0cmlidXRlW3Bv
c2l0aW9uXSkgJiYgcG9zaXRpb24gPCBlbmQpCisgICAgICAgICAgICArK3Bvc2l0aW9uOworICAg
ICAgICBkZXNjcmlwdG9yRW5kID0gcG9zaXRpb247CisKKyAgICAgICAgQVNTRVJUKGRlc2NyaXB0
b3JFbmQgPiBkZXNjcmlwdG9yU3RhcnQpOworICAgICAgICAtLWRlc2NyaXB0b3JFbmQ7CisgICAg
ICAgIC8vIFRoaXMgcGFydCBkaWZmZXJzIGZyb20gdGhlIHNwZWMgYXMgdGhlIGN1cnJlbnQgaW1w
bGVtZW50YXRpb24gb25seSBzdXBwb3J0cyBwaXhlbCBkZW5zaXR5IGRlc2NyaXB0b3JzLgorICAg
ICAgICBpZiAoYXR0cmlidXRlW2Rlc2NyaXB0b3JFbmRdICE9ICd4JykKKyAgICAgICAgICAgIGNv
bnRpbnVlOworCisgICAgICAgIGlmIChpc0ZvdW5kU2NhbGVGYWN0b3IpCisgICAgICAgICAgICBy
ZXR1cm4gZmFsc2U7CisKKyAgICAgICAgaW1hZ2VTY2FsZUZhY3RvciA9IGNoYXJhY3RlcnNUb0Zs
b2F0KGF0dHJpYnV0ZS5kZXByZWNhdGVkQ2hhcmFjdGVycygpICsgZGVzY3JpcHRvclN0YXJ0LCBk
ZXNjcmlwdG9yRW5kIC0gZGVzY3JpcHRvclN0YXJ0LCAmaXNWYWxpZCk7CisgICAgICAgIGlzRm91
bmRTY2FsZUZhY3RvciA9IHRydWU7CisKKyAgICB9CisKKyAgICByZXR1cm4gaXNFbXB0eURlc2Ny
aXB0b3IgfHwgaXNWYWxpZDsKK30KKwogLy8gU2VlIHRoZSBzcGVjaWZpY2F0aW9ucyBmb3IgbW9y
ZSBkZXRhaWxzIGFib3V0IHRoZSBhbGdvcml0aG0gdG8gZm9sbG93LgogLy8gaHR0cDovL3d3dy53
My5vcmcvVFIvMjAxMy9XRC1odG1sLXNyY3NldC0yMDEzMDIyOC8jcHJvY2Vzc2luZy10aGUtaW1h
Z2UtY2FuZGlkYXRlcy4KIHN0YXRpYyB2b2lkIHBhcnNlSW1hZ2VzV2l0aFNjYWxlRnJvbVNyY3Nl
dEF0dHJpYnV0ZShjb25zdCBTdHJpbmcmIHNyY3NldEF0dHJpYnV0ZSwgSW1hZ2VDYW5kaWRhdGVz
JiBpbWFnZUNhbmRpZGF0ZXMpCkBAIC0zMzUsNDIgKzM2OSwxNSBAQCBzdGF0aWMgdm9pZCBwYXJz
ZUltYWdlc1dpdGhTY2FsZUZyb21TcmNzZXRBdHRyaWJ1dGUoY29uc3QgU3RyaW5nJiBzcmNzZXRB
dHRyaWJ1dAogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLy8gNy4gQ29sbGVjdCBhIHNl
cXVlbmNlIG9mIGNoYXJhY3RlcnMgdGhhdCBhcmUgbm90ICIsIiAoVSswMDJDKSBjaGFyYWN0ZXJz
LCBhbmQgbGV0IHRoYXQgYmUgZGVzY3JpcHRvcnMuCiAgICAgICAgICAgICBzaXplX3QgaW1hZ2VT
Y2FsZVN0YXJ0ID0gc3Jjc2V0QXR0cmlidXRlLmZpbmQoaXNOb3RIVE1MU3BhY2UsIGltYWdlVVJM
RW5kICsgMSk7Ci0gICAgICAgICAgICBpZiAoaW1hZ2VTY2FsZVN0YXJ0ID09IG5vdEZvdW5kKQot
ICAgICAgICAgICAgICAgIHNlcGFyYXRvciA9IHNyY3NldEF0dHJpYnV0ZUxlbmd0aDsKLSAgICAg
ICAgICAgIGVsc2UgaWYgKHNyY3NldEF0dHJpYnV0ZVtpbWFnZVNjYWxlU3RhcnRdID09ICcsJykK
LSAgICAgICAgICAgICAgICBzZXBhcmF0b3IgPSBpbWFnZVNjYWxlU3RhcnQ7Ci0gICAgICAgICAg
ICBlbHNlIHsKLSAgICAgICAgICAgICAgICAvLyBUaGlzIHBhcnQgZGlmZmVycyBmcm9tIHRoZSBz
cGVjIGFzIHRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uIG9ubHkgc3VwcG9ydHMgcGl4ZWwgZGVu
c2l0eSBkZXNjcmlwdG9ycyBmb3Igbm93LgotICAgICAgICAgICAgICAgIHNpemVfdCBpbWFnZVNj
YWxlRW5kID0gc3Jjc2V0QXR0cmlidXRlLmZpbmQoaXNIVE1MU3BhY2VPckNvbW1hLCBpbWFnZVNj
YWxlU3RhcnQgKyAxKTsKLSAgICAgICAgICAgICAgICBpbWFnZVNjYWxlRW5kID0gKGltYWdlU2Nh
bGVFbmQgPT0gbm90Rm91bmQpID8gc3Jjc2V0QXR0cmlidXRlTGVuZ3RoIDogaW1hZ2VTY2FsZUVu
ZDsKLSAgICAgICAgICAgICAgICBzaXplX3QgY29tbWFQb3NpdGlvbiA9IGltYWdlU2NhbGVFbmQ7
Ci0gICAgICAgICAgICAgICAgLy8gTWFrZSBzdXJlIHRoZXJlIGFyZSBubyBvdGhlciBkZXNjcmlw
dG9ycy4KLSAgICAgICAgICAgICAgICB3aGlsZSAoKGNvbW1hUG9zaXRpb24gPCBzcmNzZXRBdHRy
aWJ1dGVMZW5ndGggLSAxKSAmJiBpc0hUTUxTcGFjZShzcmNzZXRBdHRyaWJ1dGVbY29tbWFQb3Np
dGlvbl0pKQotICAgICAgICAgICAgICAgICAgICArK2NvbW1hUG9zaXRpb247Ci0gICAgICAgICAg
ICAgICAgLy8gSWYgdGhlIGZpcnN0IG5vdCBodG1sIHNwYWNlIGNoYXJhY3RlciBhZnRlciB0aGUg
c2NhbGUgbW9kaWZpZXIgaXMgbm90IGEgY29tbWEsCi0gICAgICAgICAgICAgICAgLy8gdGhlIGN1
cnJlbnQgY2FuZGlkYXRlIGlzIGFuIGludmFsaWQgaW5wdXQuCi0gICAgICAgICAgICAgICAgaWYg
KChjb21tYVBvc2l0aW9uIDwgc3Jjc2V0QXR0cmlidXRlTGVuZ3RoIC0gMSkgJiYgc3Jjc2V0QXR0
cmlidXRlW2NvbW1hUG9zaXRpb25dICE9ICcsJykgewotICAgICAgICAgICAgICAgICAgICAvLyBG
aW5kIHRoZSBuZWFyZXN0IGNvbW1hIGFuZCBza2lwIHRoZSBpbnB1dC4KLSAgICAgICAgICAgICAg
ICAgICAgY29tbWFQb3NpdGlvbiA9IHNyY3NldEF0dHJpYnV0ZS5maW5kKCcsJywgY29tbWFQb3Np
dGlvbiArIDEpOwotICAgICAgICAgICAgICAgICAgICBpZiAoY29tbWFQb3NpdGlvbiA9PSBub3RG
b3VuZCkKLSAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgICAg
ICBpbWFnZUNhbmRpZGF0ZVN0YXJ0ID0gY29tbWFQb3NpdGlvbiArIDE7Ci0gICAgICAgICAgICAg
ICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBzZXBh
cmF0b3IgPSBjb21tYVBvc2l0aW9uOwotICAgICAgICAgICAgICAgIGlmIChzcmNzZXRBdHRyaWJ1
dGVbaW1hZ2VTY2FsZUVuZCAtIDFdICE9ICd4JykgewotICAgICAgICAgICAgICAgICAgICBpbWFn
ZUNhbmRpZGF0ZVN0YXJ0ID0gc2VwYXJhdG9yICsgMTsKLSAgICAgICAgICAgICAgICAgICAgY29u
dGludWU7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGJvb2wgdmFsaWRTY2Fs
ZUZhY3RvciA9IGZhbHNlOwotICAgICAgICAgICAgICAgIHNpemVfdCBzY2FsZUZhY3Rvckxlbmd0
aFdpdGhvdXRVbml0ID0gaW1hZ2VTY2FsZUVuZCAtIGltYWdlU2NhbGVTdGFydCAtIDE7Ci0gICAg
ICAgICAgICAgICAgaW1hZ2VTY2FsZUZhY3RvciA9IGNoYXJhY3RlcnNUb0Zsb2F0KHNyY3NldEF0
dHJpYnV0ZS5kZXByZWNhdGVkQ2hhcmFjdGVycygpICsgaW1hZ2VTY2FsZVN0YXJ0LCBzY2FsZUZh
Y3Rvckxlbmd0aFdpdGhvdXRVbml0LCAmdmFsaWRTY2FsZUZhY3Rvcik7Ci0KLSAgICAgICAgICAg
ICAgICBpZiAoIXZhbGlkU2NhbGVGYWN0b3IpIHsKLSAgICAgICAgICAgICAgICAgICAgaW1hZ2VD
YW5kaWRhdGVTdGFydCA9IHNlcGFyYXRvciArIDE7Ci0gICAgICAgICAgICAgICAgICAgIGNvbnRp
bnVlOwotICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGltYWdlU2NhbGVTdGFydCA9IChp
bWFnZVNjYWxlU3RhcnQgPT0gbm90Rm91bmQpID8gc3Jjc2V0QXR0cmlidXRlTGVuZ3RoIDogaW1h
Z2VTY2FsZVN0YXJ0OworICAgICAgICAgICAgc2l6ZV90IGltYWdlU2NhbGVFbmQgPSBzcmNzZXRB
dHRyaWJ1dGUuZmluZCgnLCcgLCBpbWFnZVNjYWxlU3RhcnQgKyAxKTsKKyAgICAgICAgICAgIGlt
YWdlU2NhbGVFbmQgPSAoaW1hZ2VTY2FsZUVuZCA9PSBub3RGb3VuZCkgPyBzcmNzZXRBdHRyaWJ1
dGVMZW5ndGggOiBpbWFnZVNjYWxlRW5kOworCisgICAgICAgICAgICBpZiAoIXBhcnNlRGVzY3Jp
cHRvcnMoc3Jjc2V0QXR0cmlidXRlLCBpbWFnZVNjYWxlU3RhcnQsIGltYWdlU2NhbGVFbmQsIGlt
YWdlU2NhbGVGYWN0b3IpKSB7CisgICAgICAgICAgICAgICAgaW1hZ2VDYW5kaWRhdGVTdGFydCA9
IGltYWdlU2NhbGVFbmQgKyAxOworICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAg
ICAgfQorICAgICAgICAgICAgc2VwYXJhdG9yID0gaW1hZ2VTY2FsZUVuZDsKICAgICAgICAgfQog
ICAgICAgICBJbWFnZVdpdGhTY2FsZSBpbWFnZShpbWFnZVVSTFN0YXJ0LCBpbWFnZVVSTEVuZCAt
IGltYWdlVVJMU3RhcnQsIGltYWdlU2NhbGVGYWN0b3IpOwogICAgICAgICBpbWFnZUNhbmRpZGF0
ZXMuYXBwZW5kKGltYWdlKTsKQEAgLTM5NSwxMiArNDAyLDE5IEBAIEltYWdlV2l0aFNjYWxlIGJl
c3RGaXRTb3VyY2VGb3JJbWFnZUF0dHJpYnV0ZXMoZmxvYXQgZGV2aWNlU2NhbGVGYWN0b3IsIGNv
bnN0IFN0CiAKICAgICBzdGQ6OnN0YWJsZV9zb3J0KGltYWdlQ2FuZGlkYXRlcy5iZWdpbigpLCBp
bWFnZUNhbmRpZGF0ZXMuZW5kKCksIGNvbXBhcmVCeVNjYWxlRmFjdG9yKTsKIAotICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgaW1hZ2VDYW5kaWRhdGVzLnNpemUoKSAtIDE7ICsraSkgeworICAg
IGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgaW1hZ2VDYW5kaWRhdGVzLnNpemUoKSAtIDE7ICsraSkK
ICAgICAgICAgaWYgKGltYWdlQ2FuZGlkYXRlc1tpXS5zY2FsZUZhY3RvcigpID49IGRldmljZVNj
YWxlRmFjdG9yKQogICAgICAgICAgICAgcmV0dXJuIGltYWdlQ2FuZGlkYXRlc1tpXTsKLSAgICB9
Ci0gICAgY29uc3QgSW1hZ2VXaXRoU2NhbGUmIGxhc3RDYW5kaWRhdGUgPSBpbWFnZUNhbmRpZGF0
ZXMubGFzdCgpOwotICAgIHJldHVybiBsYXN0Q2FuZGlkYXRlOworCisgICAgLy8gMTYuIElmIGFu
IGVudHJ5IGIgaW4gY2FuZGlkYXRlcyBoYXMgdGhlIHNhbWUgYXNzb2NpYXRlZCAuLi4gcGl4ZWwg
ZGVuc2l0eSBhcyBhbiBlYXJsaWVyIGVudHJ5IGEgaW4gY2FuZGlkYXRlcywKKyAgICAvLyB0aGVu
IHJlbW92ZSBlbnRyeSBiCisgICAgc2l6ZV90IHdpbm5lciA9IGltYWdlQ2FuZGlkYXRlcy5zaXpl
KCkgLSAxOworICAgIHNpemVfdCBwcmV2aW91c0NhbmRpZGF0ZSA9IHdpbm5lcjsKKyAgICBmbG9h
dCB3aW5uaW5nU2NhbGVGYWN0b3IgPSBpbWFnZUNhbmRpZGF0ZXMubGFzdCgpLnNjYWxlRmFjdG9y
KCk7CisgICAgd2hpbGUgKChwcmV2aW91c0NhbmRpZGF0ZSA+IDApICYmIChpbWFnZUNhbmRpZGF0
ZXNbLS1wcmV2aW91c0NhbmRpZGF0ZV0uc2NhbGVGYWN0b3IoKSA9PSB3aW5uaW5nU2NhbGVGYWN0
b3IpKQorICAgICAgICB3aW5uZXIgPSBwcmV2aW91c0NhbmRpZGF0ZTsKKworICAgIHJldHVybiBp
bWFnZUNhbmRpZGF0ZXNbd2lubmVyXTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDNiMjY0OGU1MTljNzQ2NmNm
MTgxYWM2MWRkMWNhYjMyYWIyMzA3YzEuLmY0YzhmYjA2YzllNWM5NjQ0YjA4OGVmZjI2MDViMTFh
NDVkMzc4NDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAxNC0wMy0wMSAgWW9hdiBXZWlzcyAg
PHlvYXZAeW9hdi53cz4KKworICAgICAgICBGaXggc3Jjc2V0IHJlbGF0ZWQgYnVncworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI5NTM5CisKKyAgICAg
ICAgVGhlc2UgdGVzdHMgbWFrZSBzdXJlIHRoYXQ6CisgICAgICAgIDEuIEludmFsaWQgc3Jjc2V0
IGRlc2NyaXB0b3JzIGFyZSBoYW5kbGVkIGFjY29yZGluZyB0byB0aGUgc3BlYy4gVGhlIGludmFs
aWQgZGVzY3JpcHRvcnMgYXJlIGlnbm9yZWQsIGJ1dCB0aGUgcmVzb3VyY2UgaXMgbm90LgorICAg
ICAgICAyLiBXaGVuIGJvdGggc3JjIGFuZCBzcmNzZXQgaGF2ZSBvbmx5IDF4IGRlc2NyaXB0b3Jz
IGFuZCB0aGUgRFBSIGlzIGhpZ2hlciB0aGFuIDEsIHRoZSBzcmNzZXQncyByZXNvdXJjZSBpcyBw
aWNrZWQuCisKKyAgICAgICAgSSd2ZSBhbHNvIGZpeGVkIHRoZSBpbnZhbGlkIGlucHV0cyB0ZXN0
LCB3aGljaCB3YXMgZmF1bHR5LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtaW52YWxpZC1kZXNjcmlwdG9y
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQt
aW52YWxpZC1kZXNjcmlwdG9yLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvaGlkcGkvaW1h
Z2Utc3Jjc2V0LWludmFsaWQtaW5wdXRzLWNvcnJlY3Qtc3JjLmh0bWw6CisgICAgICAgICogZmFz
dC9oaWRwaS9pbWFnZS1zcmNzZXQtc3JjLXNlbGVjdGlvbi0xeC1ib3RoLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtc3JjLXNlbGVjdGlvbi0x
eC1ib3RoLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvaGlkcGkvcmVzb3VyY2VzL3NyY3Nl
dC1oZWxwZXIuanM6CisgICAgICAgIChydW5UZXN0KToKKwogMjAxNC0wMi0yOCAgTWFydGluIEhv
ZG92YW4gIDxtaG9kb3ZhbkBpbmYudS1zemVnZWQuaHU+CiAKICAgICAgICAgQVNTRVJUSU9OIEZB
SUxFRDogcm91bmRlZEludFBvaW50KHJlbmRlcmVyTWFwcGVkUmVzdWx0KSA9PSByb3VuZGVkSW50
UG9pbnQocmVzdWx0KSBpbiBXZWJDb3JlOjpSZW5kZXJHZW9tZXRyeU1hcDo6bWFwVG9Db250YWlu
ZXIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0LWludmFs
aWQtZGVzY3JpcHRvci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdl
LXNyY3NldC1pbnZhbGlkLWRlc2NyaXB0b3ItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZkYjVi
YzE0YmFlNGU0ODk5ZDgzYmQ2NjM2MGI4NjE1MzE0MGU3OGYKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNyY3NldC1pbnZhbGlkLWRlc2NyaXB0b3ItZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1
ZQorCitURVNUIENPTVBMRVRFCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb28iKS5j
bGllbnRXaWR0aD09MTAwIGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZv
bzIiKS5jbGllbnRXaWR0aD09MjAwIGlzIHRydWUKK1RoaXMgdGVzdCBwYXNzZXMgaWYgdGhlIGlt
YWdlIGJlbG93IGlzIGEgMTAwcHggYmx1ZSBzcXVhcmUgd2hlbiB0aGUgZGV2aWNlU2NhbGVGYWN0
b3IgaXMgMS4KK0l0IHRlc3RzIHRoYXQgZXZlbiB0aG91Z2ggdGhlIDF4IHJlc291cmNlIGNvbnRh
aW5zIG1hbnkgaW52YWxpZCBkZXNjcmlwdG9ycywgb25seSB0aGUgaW52YWxpZCBkZXNjcmlwdG9y
cyBhcmUgaWdub3JlZCAoYWNjb3JkaW5nIHRvIHRoZSBzcGVjKS4KKyAgCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNyY3NldC1pbnZhbGlkLWRlc2NyaXB0b3IuaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0LWludmFsaWQtZGVzY3JpcHRv
ci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmIxYzAyZTg3NTlhZDc5NWQ4MDA0NWUyYjRlZjE0NzEyODYwMTMx
NTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNyY3Nl
dC1pbnZhbGlkLWRlc2NyaXB0b3IuaHRtbApAQCAtMCwwICsxLDIzIEBACis8aHRtbD4KKzxoZWFk
PgorPHNjcmlwdD4KKyAgICB3aW5kb3cudGFyZ2V0U2NhbGVGYWN0b3IgPSAxOworPC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3NyY3NldC1oZWxwZXIuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+
CisgICAgYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGZ1bmN0aW9uKCkgeworICAgICAgICBzaG91
bGRCZVRydWUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb28iKS5jbGllbnRXaWR0aD09MTAw
Jyk7CisgICAgICAgIHNob3VsZEJlVHJ1ZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbzIi
KS5jbGllbnRXaWR0aD09MjAwJyk7CisgICAgfSwgZmFsc2UpOworPC9zY3JpcHQ+Cis8L2hlYWQ+
CisKKzxib2R5IGlkPSJib2R5Ij4KKyAgICA8ZGl2PlRoaXMgdGVzdCBwYXNzZXMgaWYgdGhlIGlt
YWdlIGJlbG93IGlzIGEgMTAwcHggYmx1ZSBzcXVhcmUgd2hlbiB0aGUgZGV2aWNlU2NhbGVGYWN0
b3IgaXMgMS48L2Rpdj4KKyAgICA8ZGl2PiBJdCB0ZXN0cyB0aGF0IGV2ZW4gdGhvdWdoIHRoZSAx
eCByZXNvdXJjZSBjb250YWlucyBtYW55IGludmFsaWQgZGVzY3JpcHRvcnMsCisgICAgICAgIG9u
bHkgdGhlIGludmFsaWQgZGVzY3JpcHRvcnMgYXJlIGlnbm9yZWQgKGFjY29yZGluZyB0byB0aGUg
c3BlYykuPC9kaXY+CisgICAgPGltZyBpZD0iZm9vIiBzcmM9IiIgc3Jjc2V0PSJyZXNvdXJjZXMv
Ymx1ZS0xMDAtcHgtc3F1YXJlLnBuZyA0M3EgMXggZGZzIDNkZCwgcmVzb3VyY2VzL2dyZWVuLTQw
MC1weC1zcXVhcmUucG5nIDJ4Ij4KKyAgICA8aW1nIGlkPSJmb28yIiBzcmM9IiIgc3Jjc2V0PSJy
ZXNvdXJjZXMvYmx1ZS0xMDAtcHgtc3F1YXJlLnBuZyAzMDBxLCByZXNvdXJjZXMvZ3JlZW4tNDAw
LXB4LXNxdWFyZS5wbmcgMngiPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtaW52YWxpZC1pbnB1dHMtY29ycmVjdC1zcmMu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0LWludmFsaWQtaW5wdXRz
LWNvcnJlY3Qtc3JjLmh0bWwKaW5kZXggYTk0OWIxYWJhOGEyMGEyZGM4MDdkZTVlODkwN2JmNGJh
NjhhOWRjZS4uNzcwYmMyMWY1NDE0NWE2MWQ3YjlkZDY5ZGJiM2UyZTQzZWQ3MmI3NiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtaW52YWxpZC1pbnB1dHMt
Y29ycmVjdC1zcmMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNyY3Nl
dC1pbnZhbGlkLWlucHV0cy1jb3JyZWN0LXNyYy5odG1sCkBAIC0xNiw2ICsxNiw2IEBACiA8Ym9k
eSBpZD0iYm9keSI+CiAgICAgPGRpdj5UaGlzIHRlc3QgcGFzc2VzIGlmIHRoaXMgaW1nIHRhZyBi
ZWxvdyBpcyBhIGdyZWVuIHNxdWFyZSByZWdhcmRsZXNzIG9mIHRoZSBzY2FsZSBmYWN0b3IuIEl0
IGVuc3VyZXMgdGhhdCBpbnZhbGlkIGlucHV0cwogICAgIGZyb20gc3Jjc2V0IGFyZSBpZ25vcmVk
LCBhbmQgc3JjIGlzIHNlbGVjdGVkIChzaW5jZSBpdCdzIHRoZSBvbmx5IGNhbmRpZGF0ZSBsZWZ0
KTwvZGl2PgotICAgIDxpbWcgaWQ9ImZvbyIgc3JjPSJyZXNvdXJjZXMvZ3JlZW4tNDAwLXB4LXNx
dWFyZS5wbmciIHNyY3NldD0iMXgsLCAgLCAgICAgICwgMnggLCwiPgorICAgIDxpbWcgaWQ9ImZv
byIgc3JjPSJyZXNvdXJjZXMvZ3JlZW4tNDAwLXB4LXNxdWFyZS5wbmciIHNyY3NldD0iMXggNXcs
LCAgLCAgICAgICwgMnggIDYwMGgsLCI+CiA8L2JvZHk+CiA8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNyY3NldC1zcmMtc2VsZWN0aW9uLTF4LWJvdGgt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtc3JjLXNl
bGVjdGlvbi0xeC1ib3RoLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40OTIzZTVjNjRkNTM0ZjVl
ZmY5OGY4YzczY2M0NjY5ZTk5NjI0ZmJhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtc3JjLXNlbGVjdGlvbi0xeC1ib3RoLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDYgQEAKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVT
VCBDT01QTEVURQorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9vIikuY2xpZW50V2lk
dGg9PTQwMCBpcyB0cnVlCitUaGlzIHRlc3QgcGFzc2VzIGlmIHRoZSBkaXYgYmVsb3cgaXMgYSBi
bHVlIDEwMHB4IHNxdWFyZSB3aGVuIHRoZSBkZXZpY2VTY2FsZUZhY3RvciBpcyAxLiBJdCBzaW1w
bHkgZW5zdXJlcyB0aGF0IHdoZW4gYm90aCBzcmMgYW5kIHNyY3NldCBhcmUgc3BlY2lmaWVkIGZv
ciB0aGUgc2FtZSBEUFIsIHNyY3NldCB3aW5zLgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L2hpZHBpL2ltYWdlLXNyY3NldC1zcmMtc2VsZWN0aW9uLTF4LWJvdGguaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0LXNyYy1zZWxlY3Rpb24tMXgtYm90aC5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmFhZWFkMmI1ODAwNTA3ODEwNzg4YWRlMDU1NzU0OGJmMzdhMDU0YjgKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNyY3NldC1zcmMt
c2VsZWN0aW9uLTF4LWJvdGguaHRtbApAQCAtMCwwICsxLDI0IEBACis8aHRtbD4KKzxoZWFkPgor
PHNjcmlwdD4KKyAgICB3aW5kb3cudGFyZ2V0U2NhbGVGYWN0b3IgPSAyOworPC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0icmVzb3VyY2VzL3NyY3NldC1oZWxwZXIuanMiPjwvc2NyaXB0PgorPHNjcmlw
dCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+Cisg
ICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4
dCgpOworICAgIH0KKworICAgIGFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlvbigpIHsK
KyAgICAgICAgc2hvdWxkQmVUcnVlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9vIikuY2xp
ZW50V2lkdGg9PTQwMCcpOworICAgIH0sIGZhbHNlKTsKKzwvc2NyaXB0PgorPC9oZWFkPgorCis8
Ym9keSBpZD0iYm9keSI+CisgICAgPGRpdj5UaGlzIHRlc3QgcGFzc2VzIGlmIHRoZSBkaXYgYmVs
b3cgaXMgYSBibHVlIDEwMHB4IHNxdWFyZSB3aGVuIHRoZSBkZXZpY2VTY2FsZUZhY3RvciBpcyAx
LiAKKyAgICAgICAgSXQgc2ltcGx5IGVuc3VyZXMgdGhhdCB3aGVuIGJvdGggc3JjIGFuZCBzcmNz
ZXQgYXJlIHNwZWNpZmllZCBmb3IgdGhlIHNhbWUgRFBSLCBzcmNzZXQgd2lucy48L2Rpdj4KKyAg
ICA8aW1nIGlkPSJmb28iIHNyYz0icmVzb3VyY2VzL2JsdWUtMTAwLXB4LXNxdWFyZS5wbmciIHNy
Y3NldD0icmVzb3VyY2VzL2dyZWVuLTQwMC1weC1zcXVhcmUucG5nIDF4Ij4KKzwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaGlkcGkvcmVzb3VyY2VzL3NyY3Nl
dC1oZWxwZXIuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2hpZHBpL3Jlc291cmNlcy9zcmNzZXQtaGVs
cGVyLmpzCmluZGV4IDZjODE4MmUzY2U4YTE0NThhMzk2MzQzMTNmNDEyODAzYjY4NjRiMzguLmRi
OGRlYjhmZTdiYjhiM2NjOTU3NmRmMGIzMTRhMmFkODczODAxMTcgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvaGlkcGkvcmVzb3VyY2VzL3NyY3NldC1oZWxwZXIuanMKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9oaWRwaS9yZXNvdXJjZXMvc3Jjc2V0LWhlbHBlci5qcwpAQCAtNSw2ICs1LDkg
QEAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKICAgICBpZiAoIXdpbmRvdy50YXJnZXRTY2FsZUZhY3Rv
cikKICAgICAgICAgd2luZG93LnRhcmdldFNjYWxlRmFjdG9yID0gMjsKIAorICAgIGlmKCFzZXNz
aW9uU3RvcmFnZS5wYWdlUmVsb2FkZWQgJiYgd2luZG93LnRhcmdldFNjYWxlRmFjdG9yID09IHdp
bmRvdy5kZXZpY2VTY2FsZUZhY3RvcikKKyAgICAgICAgcmV0dXJuOworCiAgICAgaWYgKCFzZXNz
aW9uU3RvcmFnZS5zY2FsZUZhY3RvcklzU2V0KSB7CiAgICAgICAgIHRlc3RSdW5uZXIud2FpdFVu
dGlsRG9uZSgpOwogICAgICAgICB0ZXN0UnVubmVyLnNldEJhY2tpbmdTY2FsZUZhY3Rvcih0YXJn
ZXRTY2FsZUZhY3Rvciwgc2NhbGVGYWN0b3JJc1NldCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>225570</attachid>
            <date>2014-03-01 14:42:21 -0800</date>
            <delta_ts>2014-03-02 06:17:11 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-129539-20140301234219.patch</filename>
            <type>text/plain</type>
            <size>14176</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY0ODYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTE4ZDc1OWFlYjIzMDgw
NmVlMTNkNjZhZDg0NDZiNTgwNGMyMDQwMC4uZWUwMjViZjc0YjNkZjUxYWFjM2Y1ZTRlZDRkMDcw
Y2QxZGQ0MGFkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE0LTAzLTAxICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEZpeCBzcmNzZXQgcmVsYXRlZCBidWdz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjk1MzkK
KworICAgICAgICBGaXhlZCBhIGJ1ZyByZXBvcnRlZCBhZ2FpbnN0IEJsaW5rJ3Mgc3Jjc2V0IGlt
cGxlbWVudGF0aW9uIGF0IGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3AvY2hyb21pdW0vaXNzdWVz
L2RldGFpbD9pZD0zNDc5OTgKKyAgICAgICAgV2hlbiBib3RoIHNyYyBhbmQgc3Jjc2V0IGhhZCBv
bmx5IDF4IGRlc2NyaXB0b3JzIGFuZCB0aGUgRFBSIHdhcyBoaWdoZXIgdGhhbiAxLCB0aGUgc3Jj
J3MgcmVzb3VyY2Ugd2FzIHBpY2tlZC4KKworICAgICAgICBBbHNvIGZpeGVkIHRoZSBpbnZhbGlk
IGRlc2NyaXB0b3IgaGFuZGxpbmcsIHdoaWNoIHdhc24ndCBhbGlnbmVkIHdpdGggdGhlIHNwZWMs
IGFuZCB0aGVyZWZvcmUgd2FzIG5vdCBhcyBmb3J3YXJkIGNvbXBhdGlibGUgYXMgaXQgc2hvdWxk
IGJlLgorICAgICAgICBJbnZhbGlkIGRlc2NyaXB0b3JzIGNhdXNlZCB0aGUgZW50aXJlIHJlc291
cmNlIHRvIGJlIGlnbm9yZWQsIHJhdGhlciB0aGFuIGp1c3QgdGhlIGRlc2NyaXB0b3JzIHRoZW1z
ZWx2ZXMuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
VGVzdHM6IGZhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0LWludmFsaWQtZGVzY3JpcHRvci5odG1sCisg
ICAgICAgICAgICAgICBmYXN0L2hpZHBpL2ltYWdlLXNyY3NldC1zcmMtc2VsZWN0aW9uLTF4LWJv
dGguaHRtbAorCisgICAgICAgICogaHRtbC9wYXJzZXIvSFRNTFBhcnNlcklkaW9tcy5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpwYXJzZURlc2NyaXB0b3JzKToKKyAgICAgICAgKFdlYkNvcmU6OnBh
cnNlSW1hZ2VzV2l0aFNjYWxlRnJvbVNyY3NldEF0dHJpYnV0ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpiZXN0Rml0U291cmNlRm9ySW1hZ2VBdHRyaWJ1dGVzKToKKwogMjAxNC0wMi0yOCAgTWFydGlu
IEhvZG92YW4gIDxtaG9kb3ZhbkBpbmYudS1zemVnZWQuaHU+CiAKICAgICAgICAgQVNTRVJUSU9O
IEZBSUxFRDogcm91bmRlZEludFBvaW50KHJlbmRlcmVyTWFwcGVkUmVzdWx0KSA9PSByb3VuZGVk
SW50UG9pbnQocmVzdWx0KSBpbiBXZWJDb3JlOjpSZW5kZXJHZW9tZXRyeU1hcDo6bWFwVG9Db250
YWluZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQYXJzZXJJ
ZGlvbXMuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFBhcnNlcklkaW9tcy5j
cHAKaW5kZXggZTllYjM5OTZhNmIzMmRkZDk3NWRkYTAzOGY5ZmRjNzEyNjg0NzExNi4uYmQ5ZDY2
MGNjMDE5NjIwMGMxMjk4OGEzMWE1ZmZkNjg3YjdiMWNiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9wYXJzZXIvSFRNTFBhcnNlcklkaW9tcy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9wYXJzZXIvSFRNTFBhcnNlcklkaW9tcy5jcHAKQEAgLTMwMiw2ICszMDIsNDAgQEAg
c3RhdGljIGlubGluZSBib29sIGlzSFRNTFNwYWNlT3JDb21tYShVQ2hhciBjaGFyYWN0ZXIpCiAg
ICAgcmV0dXJuIGlzSFRNTFNwYWNlKGNoYXJhY3RlcikgfHwgY2hhcmFjdGVyID09ICcsJzsKIH0K
IAorc3RhdGljIGJvb2wgcGFyc2VEZXNjcmlwdG9ycyhjb25zdCBTdHJpbmcmIGF0dHJpYnV0ZSwg
c2l6ZV90IHN0YXJ0LCBzaXplX3QgZW5kLCBmbG9hdCYgaW1hZ2VTY2FsZUZhY3RvcikKK3sKKyAg
ICBzaXplX3QgZGVzY3JpcHRvclN0YXJ0OworICAgIHNpemVfdCBkZXNjcmlwdG9yRW5kOworICAg
IHNpemVfdCBwb3NpdGlvbiA9IHN0YXJ0OworICAgIGJvb2wgaXNGb3VuZFNjYWxlRmFjdG9yID0g
ZmFsc2U7CisgICAgYm9vbCBpc0VtcHR5RGVzY3JpcHRvciA9ICEoZW5kID4gc3RhcnQpOworICAg
IGJvb2wgaXNWYWxpZCA9IGZhbHNlOworCisgICAgd2hpbGUgKHBvc2l0aW9uIDwgZW5kKSB7Cisg
ICAgICAgIHdoaWxlIChpc0hUTUxTcGFjZShhdHRyaWJ1dGVbcG9zaXRpb25dKSAmJiBwb3NpdGlv
biA8IGVuZCkKKyAgICAgICAgICAgICsrcG9zaXRpb247CisgICAgICAgIGRlc2NyaXB0b3JTdGFy
dCA9IHBvc2l0aW9uOworICAgICAgICB3aGlsZSAoaXNOb3RIVE1MU3BhY2UoYXR0cmlidXRlW3Bv
c2l0aW9uXSkgJiYgcG9zaXRpb24gPCBlbmQpCisgICAgICAgICAgICArK3Bvc2l0aW9uOworICAg
ICAgICBkZXNjcmlwdG9yRW5kID0gcG9zaXRpb247CisKKyAgICAgICAgQVNTRVJUKGRlc2NyaXB0
b3JFbmQgPiBkZXNjcmlwdG9yU3RhcnQpOworICAgICAgICAtLWRlc2NyaXB0b3JFbmQ7CisgICAg
ICAgIC8vIFRoaXMgcGFydCBkaWZmZXJzIGZyb20gdGhlIHNwZWMgYXMgdGhlIGN1cnJlbnQgaW1w
bGVtZW50YXRpb24gb25seSBzdXBwb3J0cyBwaXhlbCBkZW5zaXR5IGRlc2NyaXB0b3JzLgorICAg
ICAgICBpZiAoYXR0cmlidXRlW2Rlc2NyaXB0b3JFbmRdICE9ICd4JykKKyAgICAgICAgICAgIGNv
bnRpbnVlOworCisgICAgICAgIGlmIChpc0ZvdW5kU2NhbGVGYWN0b3IpCisgICAgICAgICAgICBy
ZXR1cm4gZmFsc2U7CisKKyAgICAgICAgaW1hZ2VTY2FsZUZhY3RvciA9IGNoYXJhY3RlcnNUb0Zs
b2F0KGF0dHJpYnV0ZS5kZXByZWNhdGVkQ2hhcmFjdGVycygpICsgZGVzY3JpcHRvclN0YXJ0LCBk
ZXNjcmlwdG9yRW5kIC0gZGVzY3JpcHRvclN0YXJ0LCAmaXNWYWxpZCk7CisgICAgICAgIGlzRm91
bmRTY2FsZUZhY3RvciA9IHRydWU7CisKKyAgICB9CisKKyAgICByZXR1cm4gaXNFbXB0eURlc2Ny
aXB0b3IgfHwgaXNWYWxpZDsKK30KKwogLy8gU2VlIHRoZSBzcGVjaWZpY2F0aW9ucyBmb3IgbW9y
ZSBkZXRhaWxzIGFib3V0IHRoZSBhbGdvcml0aG0gdG8gZm9sbG93LgogLy8gaHR0cDovL3d3dy53
My5vcmcvVFIvMjAxMy9XRC1odG1sLXNyY3NldC0yMDEzMDIyOC8jcHJvY2Vzc2luZy10aGUtaW1h
Z2UtY2FuZGlkYXRlcy4KIHN0YXRpYyB2b2lkIHBhcnNlSW1hZ2VzV2l0aFNjYWxlRnJvbVNyY3Nl
dEF0dHJpYnV0ZShjb25zdCBTdHJpbmcmIHNyY3NldEF0dHJpYnV0ZSwgSW1hZ2VDYW5kaWRhdGVz
JiBpbWFnZUNhbmRpZGF0ZXMpCkBAIC0zMzUsNDIgKzM2OSwxNSBAQCBzdGF0aWMgdm9pZCBwYXJz
ZUltYWdlc1dpdGhTY2FsZUZyb21TcmNzZXRBdHRyaWJ1dGUoY29uc3QgU3RyaW5nJiBzcmNzZXRB
dHRyaWJ1dAogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLy8gNy4gQ29sbGVjdCBhIHNl
cXVlbmNlIG9mIGNoYXJhY3RlcnMgdGhhdCBhcmUgbm90ICIsIiAoVSswMDJDKSBjaGFyYWN0ZXJz
LCBhbmQgbGV0IHRoYXQgYmUgZGVzY3JpcHRvcnMuCiAgICAgICAgICAgICBzaXplX3QgaW1hZ2VT
Y2FsZVN0YXJ0ID0gc3Jjc2V0QXR0cmlidXRlLmZpbmQoaXNOb3RIVE1MU3BhY2UsIGltYWdlVVJM
RW5kICsgMSk7Ci0gICAgICAgICAgICBpZiAoaW1hZ2VTY2FsZVN0YXJ0ID09IG5vdEZvdW5kKQot
ICAgICAgICAgICAgICAgIHNlcGFyYXRvciA9IHNyY3NldEF0dHJpYnV0ZUxlbmd0aDsKLSAgICAg
ICAgICAgIGVsc2UgaWYgKHNyY3NldEF0dHJpYnV0ZVtpbWFnZVNjYWxlU3RhcnRdID09ICcsJykK
LSAgICAgICAgICAgICAgICBzZXBhcmF0b3IgPSBpbWFnZVNjYWxlU3RhcnQ7Ci0gICAgICAgICAg
ICBlbHNlIHsKLSAgICAgICAgICAgICAgICAvLyBUaGlzIHBhcnQgZGlmZmVycyBmcm9tIHRoZSBz
cGVjIGFzIHRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uIG9ubHkgc3VwcG9ydHMgcGl4ZWwgZGVu
c2l0eSBkZXNjcmlwdG9ycyBmb3Igbm93LgotICAgICAgICAgICAgICAgIHNpemVfdCBpbWFnZVNj
YWxlRW5kID0gc3Jjc2V0QXR0cmlidXRlLmZpbmQoaXNIVE1MU3BhY2VPckNvbW1hLCBpbWFnZVNj
YWxlU3RhcnQgKyAxKTsKLSAgICAgICAgICAgICAgICBpbWFnZVNjYWxlRW5kID0gKGltYWdlU2Nh
bGVFbmQgPT0gbm90Rm91bmQpID8gc3Jjc2V0QXR0cmlidXRlTGVuZ3RoIDogaW1hZ2VTY2FsZUVu
ZDsKLSAgICAgICAgICAgICAgICBzaXplX3QgY29tbWFQb3NpdGlvbiA9IGltYWdlU2NhbGVFbmQ7
Ci0gICAgICAgICAgICAgICAgLy8gTWFrZSBzdXJlIHRoZXJlIGFyZSBubyBvdGhlciBkZXNjcmlw
dG9ycy4KLSAgICAgICAgICAgICAgICB3aGlsZSAoKGNvbW1hUG9zaXRpb24gPCBzcmNzZXRBdHRy
aWJ1dGVMZW5ndGggLSAxKSAmJiBpc0hUTUxTcGFjZShzcmNzZXRBdHRyaWJ1dGVbY29tbWFQb3Np
dGlvbl0pKQotICAgICAgICAgICAgICAgICAgICArK2NvbW1hUG9zaXRpb247Ci0gICAgICAgICAg
ICAgICAgLy8gSWYgdGhlIGZpcnN0IG5vdCBodG1sIHNwYWNlIGNoYXJhY3RlciBhZnRlciB0aGUg
c2NhbGUgbW9kaWZpZXIgaXMgbm90IGEgY29tbWEsCi0gICAgICAgICAgICAgICAgLy8gdGhlIGN1
cnJlbnQgY2FuZGlkYXRlIGlzIGFuIGludmFsaWQgaW5wdXQuCi0gICAgICAgICAgICAgICAgaWYg
KChjb21tYVBvc2l0aW9uIDwgc3Jjc2V0QXR0cmlidXRlTGVuZ3RoIC0gMSkgJiYgc3Jjc2V0QXR0
cmlidXRlW2NvbW1hUG9zaXRpb25dICE9ICcsJykgewotICAgICAgICAgICAgICAgICAgICAvLyBG
aW5kIHRoZSBuZWFyZXN0IGNvbW1hIGFuZCBza2lwIHRoZSBpbnB1dC4KLSAgICAgICAgICAgICAg
ICAgICAgY29tbWFQb3NpdGlvbiA9IHNyY3NldEF0dHJpYnV0ZS5maW5kKCcsJywgY29tbWFQb3Np
dGlvbiArIDEpOwotICAgICAgICAgICAgICAgICAgICBpZiAoY29tbWFQb3NpdGlvbiA9PSBub3RG
b3VuZCkKLSAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgICAg
ICBpbWFnZUNhbmRpZGF0ZVN0YXJ0ID0gY29tbWFQb3NpdGlvbiArIDE7Ci0gICAgICAgICAgICAg
ICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBzZXBh
cmF0b3IgPSBjb21tYVBvc2l0aW9uOwotICAgICAgICAgICAgICAgIGlmIChzcmNzZXRBdHRyaWJ1
dGVbaW1hZ2VTY2FsZUVuZCAtIDFdICE9ICd4JykgewotICAgICAgICAgICAgICAgICAgICBpbWFn
ZUNhbmRpZGF0ZVN0YXJ0ID0gc2VwYXJhdG9yICsgMTsKLSAgICAgICAgICAgICAgICAgICAgY29u
dGludWU7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGJvb2wgdmFsaWRTY2Fs
ZUZhY3RvciA9IGZhbHNlOwotICAgICAgICAgICAgICAgIHNpemVfdCBzY2FsZUZhY3Rvckxlbmd0
aFdpdGhvdXRVbml0ID0gaW1hZ2VTY2FsZUVuZCAtIGltYWdlU2NhbGVTdGFydCAtIDE7Ci0gICAg
ICAgICAgICAgICAgaW1hZ2VTY2FsZUZhY3RvciA9IGNoYXJhY3RlcnNUb0Zsb2F0KHNyY3NldEF0
dHJpYnV0ZS5kZXByZWNhdGVkQ2hhcmFjdGVycygpICsgaW1hZ2VTY2FsZVN0YXJ0LCBzY2FsZUZh
Y3Rvckxlbmd0aFdpdGhvdXRVbml0LCAmdmFsaWRTY2FsZUZhY3Rvcik7Ci0KLSAgICAgICAgICAg
ICAgICBpZiAoIXZhbGlkU2NhbGVGYWN0b3IpIHsKLSAgICAgICAgICAgICAgICAgICAgaW1hZ2VD
YW5kaWRhdGVTdGFydCA9IHNlcGFyYXRvciArIDE7Ci0gICAgICAgICAgICAgICAgICAgIGNvbnRp
bnVlOwotICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGltYWdlU2NhbGVTdGFydCA9IChp
bWFnZVNjYWxlU3RhcnQgPT0gbm90Rm91bmQpID8gc3Jjc2V0QXR0cmlidXRlTGVuZ3RoIDogaW1h
Z2VTY2FsZVN0YXJ0OworICAgICAgICAgICAgc2l6ZV90IGltYWdlU2NhbGVFbmQgPSBzcmNzZXRB
dHRyaWJ1dGUuZmluZCgnLCcgLCBpbWFnZVNjYWxlU3RhcnQgKyAxKTsKKyAgICAgICAgICAgIGlt
YWdlU2NhbGVFbmQgPSAoaW1hZ2VTY2FsZUVuZCA9PSBub3RGb3VuZCkgPyBzcmNzZXRBdHRyaWJ1
dGVMZW5ndGggOiBpbWFnZVNjYWxlRW5kOworCisgICAgICAgICAgICBpZiAoIXBhcnNlRGVzY3Jp
cHRvcnMoc3Jjc2V0QXR0cmlidXRlLCBpbWFnZVNjYWxlU3RhcnQsIGltYWdlU2NhbGVFbmQsIGlt
YWdlU2NhbGVGYWN0b3IpKSB7CisgICAgICAgICAgICAgICAgaW1hZ2VDYW5kaWRhdGVTdGFydCA9
IGltYWdlU2NhbGVFbmQgKyAxOworICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAg
ICAgfQorICAgICAgICAgICAgc2VwYXJhdG9yID0gaW1hZ2VTY2FsZUVuZDsKICAgICAgICAgfQog
ICAgICAgICBJbWFnZVdpdGhTY2FsZSBpbWFnZShpbWFnZVVSTFN0YXJ0LCBpbWFnZVVSTEVuZCAt
IGltYWdlVVJMU3RhcnQsIGltYWdlU2NhbGVGYWN0b3IpOwogICAgICAgICBpbWFnZUNhbmRpZGF0
ZXMuYXBwZW5kKGltYWdlKTsKQEAgLTM5OSw4ICs0MDYsMTYgQEAgSW1hZ2VXaXRoU2NhbGUgYmVz
dEZpdFNvdXJjZUZvckltYWdlQXR0cmlidXRlcyhmbG9hdCBkZXZpY2VTY2FsZUZhY3RvciwgY29u
c3QgU3QKICAgICAgICAgaWYgKGltYWdlQ2FuZGlkYXRlc1tpXS5zY2FsZUZhY3RvcigpID49IGRl
dmljZVNjYWxlRmFjdG9yKQogICAgICAgICAgICAgcmV0dXJuIGltYWdlQ2FuZGlkYXRlc1tpXTsK
ICAgICB9Ci0gICAgY29uc3QgSW1hZ2VXaXRoU2NhbGUmIGxhc3RDYW5kaWRhdGUgPSBpbWFnZUNh
bmRpZGF0ZXMubGFzdCgpOwotICAgIHJldHVybiBsYXN0Q2FuZGlkYXRlOworCisgICAgLy8gMTYu
IElmIGFuIGVudHJ5IGIgaW4gY2FuZGlkYXRlcyBoYXMgdGhlIHNhbWUgYXNzb2NpYXRlZCAuLi4g
cGl4ZWwgZGVuc2l0eSBhcyBhbiBlYXJsaWVyIGVudHJ5IGEgaW4gY2FuZGlkYXRlcywKKyAgICAv
LyB0aGVuIHJlbW92ZSBlbnRyeSBiCisgICAgc2l6ZV90IHdpbm5lciA9IGltYWdlQ2FuZGlkYXRl
cy5zaXplKCkgLSAxOworICAgIHNpemVfdCBwcmV2aW91c0NhbmRpZGF0ZSA9IHdpbm5lcjsKKyAg
ICBmbG9hdCB3aW5uaW5nU2NhbGVGYWN0b3IgPSBpbWFnZUNhbmRpZGF0ZXMubGFzdCgpLnNjYWxl
RmFjdG9yKCk7CisgICAgd2hpbGUgKChwcmV2aW91c0NhbmRpZGF0ZSA+IDApICYmIChpbWFnZUNh
bmRpZGF0ZXNbLS1wcmV2aW91c0NhbmRpZGF0ZV0uc2NhbGVGYWN0b3IoKSA9PSB3aW5uaW5nU2Nh
bGVGYWN0b3IpKQorICAgICAgICB3aW5uZXIgPSBwcmV2aW91c0NhbmRpZGF0ZTsKKworICAgIHJl
dHVybiBpbWFnZUNhbmRpZGF0ZXNbd2lubmVyXTsKIH0KIAogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDNiMjY0OGU1MTlj
NzQ2NmNmMTgxYWM2MWRkMWNhYjMyYWIyMzA3YzEuLmY0YzhmYjA2YzllNWM5NjQ0YjA4OGVmZjI2
MDViMTFhNDVkMzc4NDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAxNC0wMy0wMSAgWW9hdiBX
ZWlzcyAgPHlvYXZAeW9hdi53cz4KKworICAgICAgICBGaXggc3Jjc2V0IHJlbGF0ZWQgYnVncwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI5NTM5CisK
KyAgICAgICAgVGhlc2UgdGVzdHMgbWFrZSBzdXJlIHRoYXQ6CisgICAgICAgIDEuIEludmFsaWQg
c3Jjc2V0IGRlc2NyaXB0b3JzIGFyZSBoYW5kbGVkIGFjY29yZGluZyB0byB0aGUgc3BlYy4gVGhl
IGludmFsaWQgZGVzY3JpcHRvcnMgYXJlIGlnbm9yZWQsIGJ1dCB0aGUgcmVzb3VyY2UgaXMgbm90
LgorICAgICAgICAyLiBXaGVuIGJvdGggc3JjIGFuZCBzcmNzZXQgaGF2ZSBvbmx5IDF4IGRlc2Ny
aXB0b3JzIGFuZCB0aGUgRFBSIGlzIGhpZ2hlciB0aGFuIDEsIHRoZSBzcmNzZXQncyByZXNvdXJj
ZSBpcyBwaWNrZWQuCisKKyAgICAgICAgSSd2ZSBhbHNvIGZpeGVkIHRoZSBpbnZhbGlkIGlucHV0
cyB0ZXN0LCB3aGljaCB3YXMgZmF1bHR5LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtaW52YWxpZC1kZXNj
cmlwdG9yLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9oaWRwaS9pbWFnZS1z
cmNzZXQtaW52YWxpZC1kZXNjcmlwdG9yLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvaGlk
cGkvaW1hZ2Utc3Jjc2V0LWludmFsaWQtaW5wdXRzLWNvcnJlY3Qtc3JjLmh0bWw6CisgICAgICAg
ICogZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtc3JjLXNlbGVjdGlvbi0xeC1ib3RoLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtc3JjLXNlbGVj
dGlvbi0xeC1ib3RoLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvaGlkcGkvcmVzb3VyY2Vz
L3NyY3NldC1oZWxwZXIuanM6CisgICAgICAgIChydW5UZXN0KToKKwogMjAxNC0wMi0yOCAgTWFy
dGluIEhvZG92YW4gIDxtaG9kb3ZhbkBpbmYudS1zemVnZWQuaHU+CiAKICAgICAgICAgQVNTRVJU
SU9OIEZBSUxFRDogcm91bmRlZEludFBvaW50KHJlbmRlcmVyTWFwcGVkUmVzdWx0KSA9PSByb3Vu
ZGVkSW50UG9pbnQocmVzdWx0KSBpbiBXZWJDb3JlOjpSZW5kZXJHZW9tZXRyeU1hcDo6bWFwVG9D
b250YWluZXIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0
LWludmFsaWQtZGVzY3JpcHRvci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2hpZHBp
L2ltYWdlLXNyY3NldC1pbnZhbGlkLWRlc2NyaXB0b3ItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjZkYjViYzE0YmFlNGU0ODk5ZDgzYmQ2NjM2MGI4NjE1MzE0MGU3OGYKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNyY3NldC1pbnZhbGlkLWRlc2NyaXB0
b3ItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJm
b28iKS5jbGllbnRXaWR0aD09MTAwIGlzIHRydWUKK1BBU1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImZvbzIiKS5jbGllbnRXaWR0aD09MjAwIGlzIHRydWUKK1RoaXMgdGVzdCBwYXNzZXMgaWYg
dGhlIGltYWdlIGJlbG93IGlzIGEgMTAwcHggYmx1ZSBzcXVhcmUgd2hlbiB0aGUgZGV2aWNlU2Nh
bGVGYWN0b3IgaXMgMS4KK0l0IHRlc3RzIHRoYXQgZXZlbiB0aG91Z2ggdGhlIDF4IHJlc291cmNl
IGNvbnRhaW5zIG1hbnkgaW52YWxpZCBkZXNjcmlwdG9ycywgb25seSB0aGUgaW52YWxpZCBkZXNj
cmlwdG9ycyBhcmUgaWdub3JlZCAoYWNjb3JkaW5nIHRvIHRoZSBzcGVjKS4KKyAgCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNyY3NldC1pbnZhbGlkLWRlc2NyaXB0
b3IuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0LWludmFsaWQtZGVz
Y3JpcHRvci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIxYzAyZTg3NTlhZDc5NWQ4MDA0NWUyYjRlZjE0NzEy
ODYwMTMxNTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdl
LXNyY3NldC1pbnZhbGlkLWRlc2NyaXB0b3IuaHRtbApAQCAtMCwwICsxLDIzIEBACis8aHRtbD4K
KzxoZWFkPgorPHNjcmlwdD4KKyAgICB3aW5kb3cudGFyZ2V0U2NhbGVGYWN0b3IgPSAxOworPC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3NyY3NldC1oZWxwZXIuanMiPjwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKzxz
Y3JpcHQ+CisgICAgYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGZ1bmN0aW9uKCkgeworICAgICAg
ICBzaG91bGRCZVRydWUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb28iKS5jbGllbnRXaWR0
aD09MTAwJyk7CisgICAgICAgIHNob3VsZEJlVHJ1ZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImZvbzIiKS5jbGllbnRXaWR0aD09MjAwJyk7CisgICAgfSwgZmFsc2UpOworPC9zY3JpcHQ+Cis8
L2hlYWQ+CisKKzxib2R5IGlkPSJib2R5Ij4KKyAgICA8ZGl2PlRoaXMgdGVzdCBwYXNzZXMgaWYg
dGhlIGltYWdlIGJlbG93IGlzIGEgMTAwcHggYmx1ZSBzcXVhcmUgd2hlbiB0aGUgZGV2aWNlU2Nh
bGVGYWN0b3IgaXMgMS48L2Rpdj4KKyAgICA8ZGl2PiBJdCB0ZXN0cyB0aGF0IGV2ZW4gdGhvdWdo
IHRoZSAxeCByZXNvdXJjZSBjb250YWlucyBtYW55IGludmFsaWQgZGVzY3JpcHRvcnMsCisgICAg
ICAgIG9ubHkgdGhlIGludmFsaWQgZGVzY3JpcHRvcnMgYXJlIGlnbm9yZWQgKGFjY29yZGluZyB0
byB0aGUgc3BlYykuPC9kaXY+CisgICAgPGltZyBpZD0iZm9vIiBzcmM9IiIgc3Jjc2V0PSJyZXNv
dXJjZXMvYmx1ZS0xMDAtcHgtc3F1YXJlLnBuZyA0M3EgMXggZGZzIDNkZCwgcmVzb3VyY2VzL2dy
ZWVuLTQwMC1weC1zcXVhcmUucG5nIDJ4Ij4KKyAgICA8aW1nIGlkPSJmb28yIiBzcmM9IiIgc3Jj
c2V0PSJyZXNvdXJjZXMvYmx1ZS0xMDAtcHgtc3F1YXJlLnBuZyAzMDBxLCByZXNvdXJjZXMvZ3Jl
ZW4tNDAwLXB4LXNxdWFyZS5wbmcgMngiPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtaW52YWxpZC1pbnB1dHMtY29ycmVj
dC1zcmMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0LWludmFsaWQt
aW5wdXRzLWNvcnJlY3Qtc3JjLmh0bWwKaW5kZXggYTk0OWIxYWJhOGEyMGEyZGM4MDdkZTVlODkw
N2JmNGJhNjhhOWRjZS4uNzcwYmMyMWY1NDE0NWE2MWQ3YjlkZDY5ZGJiM2UyZTQzZWQ3MmI3NiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtaW52YWxpZC1p
bnB1dHMtY29ycmVjdC1zcmMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdl
LXNyY3NldC1pbnZhbGlkLWlucHV0cy1jb3JyZWN0LXNyYy5odG1sCkBAIC0xNiw2ICsxNiw2IEBA
CiA8Ym9keSBpZD0iYm9keSI+CiAgICAgPGRpdj5UaGlzIHRlc3QgcGFzc2VzIGlmIHRoaXMgaW1n
IHRhZyBiZWxvdyBpcyBhIGdyZWVuIHNxdWFyZSByZWdhcmRsZXNzIG9mIHRoZSBzY2FsZSBmYWN0
b3IuIEl0IGVuc3VyZXMgdGhhdCBpbnZhbGlkIGlucHV0cwogICAgIGZyb20gc3Jjc2V0IGFyZSBp
Z25vcmVkLCBhbmQgc3JjIGlzIHNlbGVjdGVkIChzaW5jZSBpdCdzIHRoZSBvbmx5IGNhbmRpZGF0
ZSBsZWZ0KTwvZGl2PgotICAgIDxpbWcgaWQ9ImZvbyIgc3JjPSJyZXNvdXJjZXMvZ3JlZW4tNDAw
LXB4LXNxdWFyZS5wbmciIHNyY3NldD0iMXgsLCAgLCAgICAgICwgMnggLCwiPgorICAgIDxpbWcg
aWQ9ImZvbyIgc3JjPSJyZXNvdXJjZXMvZ3JlZW4tNDAwLXB4LXNxdWFyZS5wbmciIHNyY3NldD0i
MXggNXcsLCAgLCAgICAgICwgMnggIDYwMGgsLCI+CiA8L2JvZHk+CiA8L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNyY3NldC1zcmMtc2VsZWN0aW9uLTF4
LWJvdGgtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQt
c3JjLXNlbGVjdGlvbi0xeC1ib3RoLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40OTIzZTVjNjRk
NTM0ZjVlZmY5OGY4YzczY2M0NjY5ZTk5NjI0ZmJhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtc3JjLXNlbGVjdGlvbi0xeC1ib3RoLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDYgQEAKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
KworVEVTVCBDT01QTEVURQorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9vIikuY2xp
ZW50V2lkdGg9PTQwMCBpcyB0cnVlCitUaGlzIHRlc3QgcGFzc2VzIGlmIHRoZSBkaXYgYmVsb3cg
aXMgYSBibHVlIDEwMHB4IHNxdWFyZSB3aGVuIHRoZSBkZXZpY2VTY2FsZUZhY3RvciBpcyAxLiBJ
dCBzaW1wbHkgZW5zdXJlcyB0aGF0IHdoZW4gYm90aCBzcmMgYW5kIHNyY3NldCBhcmUgc3BlY2lm
aWVkIGZvciB0aGUgc2FtZSBEUFIsIHNyY3NldCB3aW5zLgorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNyY3NldC1zcmMtc2VsZWN0aW9uLTF4LWJvdGguaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0LXNyYy1zZWxlY3Rpb24tMXgtYm90
aC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmFhZWFkMmI1ODAwNTA3ODEwNzg4YWRlMDU1NzU0OGJmMzdhMDU0
YjgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNyY3Nl
dC1zcmMtc2VsZWN0aW9uLTF4LWJvdGguaHRtbApAQCAtMCwwICsxLDI0IEBACis8aHRtbD4KKzxo
ZWFkPgorPHNjcmlwdD4KKyAgICB3aW5kb3cudGFyZ2V0U2NhbGVGYWN0b3IgPSAyOworPC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3NyY3NldC1oZWxwZXIuanMiPjwvc2NyaXB0Pgor
PHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKzxzY3Jp
cHQ+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgIHRlc3RSdW5uZXIuZHVt
cEFzVGV4dCgpOworICAgIH0KKworICAgIGFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlv
bigpIHsKKyAgICAgICAgc2hvdWxkQmVUcnVlKCdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9v
IikuY2xpZW50V2lkdGg9PTQwMCcpOworICAgIH0sIGZhbHNlKTsKKzwvc2NyaXB0PgorPC9oZWFk
PgorCis8Ym9keSBpZD0iYm9keSI+CisgICAgPGRpdj5UaGlzIHRlc3QgcGFzc2VzIGlmIHRoZSBk
aXYgYmVsb3cgaXMgYSBibHVlIDEwMHB4IHNxdWFyZSB3aGVuIHRoZSBkZXZpY2VTY2FsZUZhY3Rv
ciBpcyAxLiAKKyAgICAgICAgSXQgc2ltcGx5IGVuc3VyZXMgdGhhdCB3aGVuIGJvdGggc3JjIGFu
ZCBzcmNzZXQgYXJlIHNwZWNpZmllZCBmb3IgdGhlIHNhbWUgRFBSLCBzcmNzZXQgd2lucy48L2Rp
dj4KKyAgICA8aW1nIGlkPSJmb28iIHNyYz0icmVzb3VyY2VzL2JsdWUtMTAwLXB4LXNxdWFyZS5w
bmciIHNyY3NldD0icmVzb3VyY2VzL2dyZWVuLTQwMC1weC1zcXVhcmUucG5nIDF4Ij4KKzwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaGlkcGkvcmVzb3VyY2Vz
L3NyY3NldC1oZWxwZXIuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2hpZHBpL3Jlc291cmNlcy9zcmNz
ZXQtaGVscGVyLmpzCmluZGV4IDZjODE4MmUzY2U4YTE0NThhMzk2MzQzMTNmNDEyODAzYjY4NjRi
MzguLmRiOGRlYjhmZTdiYjhiM2NjOTU3NmRmMGIzMTRhMmFkODczODAxMTcgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvaGlkcGkvcmVzb3VyY2VzL3NyY3NldC1oZWxwZXIuanMKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9yZXNvdXJjZXMvc3Jjc2V0LWhlbHBlci5qcwpAQCAtNSw2
ICs1LDkgQEAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKICAgICBpZiAoIXdpbmRvdy50YXJnZXRTY2Fs
ZUZhY3RvcikKICAgICAgICAgd2luZG93LnRhcmdldFNjYWxlRmFjdG9yID0gMjsKIAorICAgIGlm
KCFzZXNzaW9uU3RvcmFnZS5wYWdlUmVsb2FkZWQgJiYgd2luZG93LnRhcmdldFNjYWxlRmFjdG9y
ID09IHdpbmRvdy5kZXZpY2VTY2FsZUZhY3RvcikKKyAgICAgICAgcmV0dXJuOworCiAgICAgaWYg
KCFzZXNzaW9uU3RvcmFnZS5zY2FsZUZhY3RvcklzU2V0KSB7CiAgICAgICAgIHRlc3RSdW5uZXIu
d2FpdFVudGlsRG9uZSgpOwogICAgICAgICB0ZXN0UnVubmVyLnNldEJhY2tpbmdTY2FsZUZhY3Rv
cih0YXJnZXRTY2FsZUZhY3Rvciwgc2NhbGVGYWN0b3JJc1NldCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>225592</attachid>
            <date>2014-03-02 06:17:20 -0800</date>
            <delta_ts>2014-03-02 14:16:34 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-129539-20140302151721.patch</filename>
            <type>text/plain</type>
            <size>14042</size>
            <attacher name="Yoav Weiss">yoav</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY0OTM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzdkM2Y2YzlmYWI4ODJm
NTU3NzUxYjI3NGQ5OGI5YWExYzFjYmIzNi4uYzYxYmJmNmM1NWY2NzFhZmM5MTk1ZWEzY2YyODJh
MjI5ZjZhN2FlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE0LTAzLTAxICBZb2F2
IFdlaXNzICA8eW9hdkB5b2F2LndzPgorCisgICAgICAgIEZpeCBzcmNzZXQgcmVsYXRlZCBidWdz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjk1MzkK
KworICAgICAgICBGaXhlZCBhIGJ1ZyByZXBvcnRlZCBhZ2FpbnN0IEJsaW5rJ3Mgc3Jjc2V0IGlt
cGxlbWVudGF0aW9uIGF0IGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3AvY2hyb21pdW0vaXNzdWVz
L2RldGFpbD9pZD0zNDc5OTgKKyAgICAgICAgV2hlbiBib3RoIHNyYyBhbmQgc3Jjc2V0IGhhZCBv
bmx5IDF4IGRlc2NyaXB0b3JzIGFuZCB0aGUgRFBSIHdhcyBoaWdoZXIgdGhhbiAxLCB0aGUgc3Jj
J3MgcmVzb3VyY2Ugd2FzIHBpY2tlZC4KKworICAgICAgICBBbHNvIGZpeGVkIHRoZSBpbnZhbGlk
IGRlc2NyaXB0b3IgaGFuZGxpbmcsIHdoaWNoIHdhc24ndCBhbGlnbmVkIHdpdGggdGhlIHNwZWMs
IGFuZCB0aGVyZWZvcmUgd2FzIG5vdCBhcyBmb3J3YXJkIGNvbXBhdGlibGUgYXMgaXQgc2hvdWxk
IGJlLgorICAgICAgICBJbnZhbGlkIGRlc2NyaXB0b3JzIGNhdXNlZCB0aGUgZW50aXJlIHJlc291
cmNlIHRvIGJlIGlnbm9yZWQsIHJhdGhlciB0aGFuIGp1c3QgdGhlIGRlc2NyaXB0b3JzIHRoZW1z
ZWx2ZXMuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
VGVzdHM6IGZhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0LWludmFsaWQtZGVzY3JpcHRvci5odG1sCisg
ICAgICAgICAgICAgICBmYXN0L2hpZHBpL2ltYWdlLXNyY3NldC1zcmMtc2VsZWN0aW9uLTF4LWJv
dGguaHRtbAorCisgICAgICAgICogaHRtbC9wYXJzZXIvSFRNTFBhcnNlcklkaW9tcy5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpwYXJzZURlc2NyaXB0b3JzKToKKyAgICAgICAgKFdlYkNvcmU6OnBh
cnNlSW1hZ2VzV2l0aFNjYWxlRnJvbVNyY3NldEF0dHJpYnV0ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpiZXN0Rml0U291cmNlRm9ySW1hZ2VBdHRyaWJ1dGVzKToKKwogMjAxNC0wMy0wMSAgVGltIEhv
cnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KIAogICAgICAgICBXZWJLaXQyIFZpZXcg
R2VzdHVyZXMgKFNtYXJ0IE1hZ25pZmljYXRpb24pOiBTdXBwb3J0IGZvciBpT1MKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQYXJzZXJJZGlvbXMuY3BwIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFBhcnNlcklkaW9tcy5jcHAKaW5kZXggZTllYjM5
OTZhNmIzMmRkZDk3NWRkYTAzOGY5ZmRjNzEyNjg0NzExNi4uNmM5OWIyNTVmYjczMTRjM2M4YjIx
YzRmMWRkZDZjNjE1NDIyOGQ1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJz
ZXIvSFRNTFBhcnNlcklkaW9tcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIv
SFRNTFBhcnNlcklkaW9tcy5jcHAKQEAgLTI5Nyw5ICsyOTcsNDAgQEAgc3RhdGljIGlubGluZSBi
b29sIGNvbXBhcmVCeVNjYWxlRmFjdG9yKGNvbnN0IEltYWdlV2l0aFNjYWxlJiBmaXJzdCwgY29u
c3QgSW1hZ2UKICAgICByZXR1cm4gZmlyc3Quc2NhbGVGYWN0b3IoKSA8IHNlY29uZC5zY2FsZUZh
Y3RvcigpOwogfQogCi1zdGF0aWMgaW5saW5lIGJvb2wgaXNIVE1MU3BhY2VPckNvbW1hKFVDaGFy
IGNoYXJhY3RlcikKK3N0YXRpYyBib29sIHBhcnNlRGVzY3JpcHRvcnMoY29uc3QgU3RyaW5nJiBh
dHRyaWJ1dGUsIHNpemVfdCBzdGFydCwgc2l6ZV90IGVuZCwgZmxvYXQmIGltYWdlU2NhbGVGYWN0
b3IpCiB7Ci0gICAgcmV0dXJuIGlzSFRNTFNwYWNlKGNoYXJhY3RlcikgfHwgY2hhcmFjdGVyID09
ICcsJzsKKyAgICBzaXplX3QgZGVzY3JpcHRvclN0YXJ0OworICAgIHNpemVfdCBkZXNjcmlwdG9y
RW5kOworICAgIHNpemVfdCBwb3NpdGlvbiA9IHN0YXJ0OworICAgIGJvb2wgaXNGb3VuZFNjYWxl
RmFjdG9yID0gZmFsc2U7CisgICAgYm9vbCBpc0VtcHR5RGVzY3JpcHRvciA9ICEoZW5kID4gc3Rh
cnQpOworICAgIGJvb2wgaXNWYWxpZCA9IGZhbHNlOworCisgICAgd2hpbGUgKHBvc2l0aW9uIDwg
ZW5kKSB7CisgICAgICAgIHdoaWxlIChpc0hUTUxTcGFjZShhdHRyaWJ1dGVbcG9zaXRpb25dKSAm
JiBwb3NpdGlvbiA8IGVuZCkKKyAgICAgICAgICAgICsrcG9zaXRpb247CisgICAgICAgIGRlc2Ny
aXB0b3JTdGFydCA9IHBvc2l0aW9uOworICAgICAgICB3aGlsZSAoaXNOb3RIVE1MU3BhY2UoYXR0
cmlidXRlW3Bvc2l0aW9uXSkgJiYgcG9zaXRpb24gPCBlbmQpCisgICAgICAgICAgICArK3Bvc2l0
aW9uOworICAgICAgICBkZXNjcmlwdG9yRW5kID0gcG9zaXRpb247CisKKyAgICAgICAgLy8gTGVh
dmUgaWYgdGhlcmUgaXMgb25seSB3aGl0ZXNwYWNlIGF0IHRoZSBlbmQgb2YgdGhlIGRlc2NyaXB0
b3JzCisgICAgICAgIGlmIChkZXNjcmlwdG9yRW5kIDw9IGRlc2NyaXB0b3JTdGFydCkKKyAgICAg
ICAgICAgIGJyZWFrOworCisgICAgICAgIC0tZGVzY3JpcHRvckVuZDsKKyAgICAgICAgLy8gVGhp
cyBwYXJ0IGRpZmZlcnMgZnJvbSB0aGUgc3BlYyBhcyB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlv
biBvbmx5IHN1cHBvcnRzIHBpeGVsIGRlbnNpdHkgZGVzY3JpcHRvcnMuCisgICAgICAgIGlmIChh
dHRyaWJ1dGVbZGVzY3JpcHRvckVuZF0gIT0gJ3gnKQorICAgICAgICAgICAgY29udGludWU7CisK
KyAgICAgICAgaWYgKGlzRm91bmRTY2FsZUZhY3RvcikKKyAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKKworICAgICAgICBpbWFnZVNjYWxlRmFjdG9yID0gY2hhcmFjdGVyc1RvRmxvYXQoYXR0cmli
dXRlLmRlcHJlY2F0ZWRDaGFyYWN0ZXJzKCkgKyBkZXNjcmlwdG9yU3RhcnQsIGRlc2NyaXB0b3JF
bmQgLSBkZXNjcmlwdG9yU3RhcnQsICZpc1ZhbGlkKTsKKyAgICAgICAgaXNGb3VuZFNjYWxlRmFj
dG9yID0gdHJ1ZTsKKyAgICB9CisKKyAgICByZXR1cm4gaXNFbXB0eURlc2NyaXB0b3IgfHwgaXNW
YWxpZDsKIH0KIAogLy8gU2VlIHRoZSBzcGVjaWZpY2F0aW9ucyBmb3IgbW9yZSBkZXRhaWxzIGFi
b3V0IHRoZSBhbGdvcml0aG0gdG8gZm9sbG93LgpAQCAtMzM1LDQyICszNjYsMTUgQEAgc3RhdGlj
IHZvaWQgcGFyc2VJbWFnZXNXaXRoU2NhbGVGcm9tU3Jjc2V0QXR0cmlidXRlKGNvbnN0IFN0cmlu
ZyYgc3Jjc2V0QXR0cmlidXQKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIC8vIDcuIENv
bGxlY3QgYSBzZXF1ZW5jZSBvZiBjaGFyYWN0ZXJzIHRoYXQgYXJlIG5vdCAiLCIgKFUrMDAyQykg
Y2hhcmFjdGVycywgYW5kIGxldCB0aGF0IGJlIGRlc2NyaXB0b3JzLgogICAgICAgICAgICAgc2l6
ZV90IGltYWdlU2NhbGVTdGFydCA9IHNyY3NldEF0dHJpYnV0ZS5maW5kKGlzTm90SFRNTFNwYWNl
LCBpbWFnZVVSTEVuZCArIDEpOwotICAgICAgICAgICAgaWYgKGltYWdlU2NhbGVTdGFydCA9PSBu
b3RGb3VuZCkKLSAgICAgICAgICAgICAgICBzZXBhcmF0b3IgPSBzcmNzZXRBdHRyaWJ1dGVMZW5n
dGg7Ci0gICAgICAgICAgICBlbHNlIGlmIChzcmNzZXRBdHRyaWJ1dGVbaW1hZ2VTY2FsZVN0YXJ0
XSA9PSAnLCcpCi0gICAgICAgICAgICAgICAgc2VwYXJhdG9yID0gaW1hZ2VTY2FsZVN0YXJ0Owot
ICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgLy8gVGhpcyBwYXJ0IGRpZmZlcnMg
ZnJvbSB0aGUgc3BlYyBhcyB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiBvbmx5IHN1cHBvcnRz
IHBpeGVsIGRlbnNpdHkgZGVzY3JpcHRvcnMgZm9yIG5vdy4KLSAgICAgICAgICAgICAgICBzaXpl
X3QgaW1hZ2VTY2FsZUVuZCA9IHNyY3NldEF0dHJpYnV0ZS5maW5kKGlzSFRNTFNwYWNlT3JDb21t
YSwgaW1hZ2VTY2FsZVN0YXJ0ICsgMSk7Ci0gICAgICAgICAgICAgICAgaW1hZ2VTY2FsZUVuZCA9
IChpbWFnZVNjYWxlRW5kID09IG5vdEZvdW5kKSA/IHNyY3NldEF0dHJpYnV0ZUxlbmd0aCA6IGlt
YWdlU2NhbGVFbmQ7Ci0gICAgICAgICAgICAgICAgc2l6ZV90IGNvbW1hUG9zaXRpb24gPSBpbWFn
ZVNjYWxlRW5kOwotICAgICAgICAgICAgICAgIC8vIE1ha2Ugc3VyZSB0aGVyZSBhcmUgbm8gb3Ro
ZXIgZGVzY3JpcHRvcnMuCi0gICAgICAgICAgICAgICAgd2hpbGUgKChjb21tYVBvc2l0aW9uIDwg
c3Jjc2V0QXR0cmlidXRlTGVuZ3RoIC0gMSkgJiYgaXNIVE1MU3BhY2Uoc3Jjc2V0QXR0cmlidXRl
W2NvbW1hUG9zaXRpb25dKSkKLSAgICAgICAgICAgICAgICAgICAgKytjb21tYVBvc2l0aW9uOwot
ICAgICAgICAgICAgICAgIC8vIElmIHRoZSBmaXJzdCBub3QgaHRtbCBzcGFjZSBjaGFyYWN0ZXIg
YWZ0ZXIgdGhlIHNjYWxlIG1vZGlmaWVyIGlzIG5vdCBhIGNvbW1hLAotICAgICAgICAgICAgICAg
IC8vIHRoZSBjdXJyZW50IGNhbmRpZGF0ZSBpcyBhbiBpbnZhbGlkIGlucHV0LgotICAgICAgICAg
ICAgICAgIGlmICgoY29tbWFQb3NpdGlvbiA8IHNyY3NldEF0dHJpYnV0ZUxlbmd0aCAtIDEpICYm
IHNyY3NldEF0dHJpYnV0ZVtjb21tYVBvc2l0aW9uXSAhPSAnLCcpIHsKLSAgICAgICAgICAgICAg
ICAgICAgLy8gRmluZCB0aGUgbmVhcmVzdCBjb21tYSBhbmQgc2tpcCB0aGUgaW5wdXQuCi0gICAg
ICAgICAgICAgICAgICAgIGNvbW1hUG9zaXRpb24gPSBzcmNzZXRBdHRyaWJ1dGUuZmluZCgnLCcs
IGNvbW1hUG9zaXRpb24gKyAxKTsKLSAgICAgICAgICAgICAgICAgICAgaWYgKGNvbW1hUG9zaXRp
b24gPT0gbm90Rm91bmQpCi0gICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAg
ICAgICAgICAgICAgaW1hZ2VDYW5kaWRhdGVTdGFydCA9IGNvbW1hUG9zaXRpb24gKyAxOwotICAg
ICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAg
ICAgICAgc2VwYXJhdG9yID0gY29tbWFQb3NpdGlvbjsKLSAgICAgICAgICAgICAgICBpZiAoc3Jj
c2V0QXR0cmlidXRlW2ltYWdlU2NhbGVFbmQgLSAxXSAhPSAneCcpIHsKLSAgICAgICAgICAgICAg
ICAgICAgaW1hZ2VDYW5kaWRhdGVTdGFydCA9IHNlcGFyYXRvciArIDE7Ci0gICAgICAgICAgICAg
ICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBib29s
IHZhbGlkU2NhbGVGYWN0b3IgPSBmYWxzZTsKLSAgICAgICAgICAgICAgICBzaXplX3Qgc2NhbGVG
YWN0b3JMZW5ndGhXaXRob3V0VW5pdCA9IGltYWdlU2NhbGVFbmQgLSBpbWFnZVNjYWxlU3RhcnQg
LSAxOwotICAgICAgICAgICAgICAgIGltYWdlU2NhbGVGYWN0b3IgPSBjaGFyYWN0ZXJzVG9GbG9h
dChzcmNzZXRBdHRyaWJ1dGUuZGVwcmVjYXRlZENoYXJhY3RlcnMoKSArIGltYWdlU2NhbGVTdGFy
dCwgc2NhbGVGYWN0b3JMZW5ndGhXaXRob3V0VW5pdCwgJnZhbGlkU2NhbGVGYWN0b3IpOwotCi0g
ICAgICAgICAgICAgICAgaWYgKCF2YWxpZFNjYWxlRmFjdG9yKSB7Ci0gICAgICAgICAgICAgICAg
ICAgIGltYWdlQ2FuZGlkYXRlU3RhcnQgPSBzZXBhcmF0b3IgKyAxOwotICAgICAgICAgICAgICAg
ICAgICBjb250aW51ZTsKLSAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICBpbWFnZVNjYWxl
U3RhcnQgPSAoaW1hZ2VTY2FsZVN0YXJ0ID09IG5vdEZvdW5kKSA/IHNyY3NldEF0dHJpYnV0ZUxl
bmd0aCA6IGltYWdlU2NhbGVTdGFydDsKKyAgICAgICAgICAgIHNpemVfdCBpbWFnZVNjYWxlRW5k
ID0gc3Jjc2V0QXR0cmlidXRlLmZpbmQoJywnICwgaW1hZ2VTY2FsZVN0YXJ0ICsgMSk7CisgICAg
ICAgICAgICBpbWFnZVNjYWxlRW5kID0gKGltYWdlU2NhbGVFbmQgPT0gbm90Rm91bmQpID8gc3Jj
c2V0QXR0cmlidXRlTGVuZ3RoIDogaW1hZ2VTY2FsZUVuZDsKKworICAgICAgICAgICAgaWYgKCFw
YXJzZURlc2NyaXB0b3JzKHNyY3NldEF0dHJpYnV0ZSwgaW1hZ2VTY2FsZVN0YXJ0LCBpbWFnZVNj
YWxlRW5kLCBpbWFnZVNjYWxlRmFjdG9yKSkgeworICAgICAgICAgICAgICAgIGltYWdlQ2FuZGlk
YXRlU3RhcnQgPSBpbWFnZVNjYWxlRW5kICsgMTsKKyAgICAgICAgICAgICAgICBjb250aW51ZTsK
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHNlcGFyYXRvciA9IGltYWdlU2NhbGVFbmQ7CiAg
ICAgICAgIH0KICAgICAgICAgSW1hZ2VXaXRoU2NhbGUgaW1hZ2UoaW1hZ2VVUkxTdGFydCwgaW1h
Z2VVUkxFbmQgLSBpbWFnZVVSTFN0YXJ0LCBpbWFnZVNjYWxlRmFjdG9yKTsKICAgICAgICAgaW1h
Z2VDYW5kaWRhdGVzLmFwcGVuZChpbWFnZSk7CkBAIC0zOTksOCArNDAzLDE2IEBAIEltYWdlV2l0
aFNjYWxlIGJlc3RGaXRTb3VyY2VGb3JJbWFnZUF0dHJpYnV0ZXMoZmxvYXQgZGV2aWNlU2NhbGVG
YWN0b3IsIGNvbnN0IFN0CiAgICAgICAgIGlmIChpbWFnZUNhbmRpZGF0ZXNbaV0uc2NhbGVGYWN0
b3IoKSA+PSBkZXZpY2VTY2FsZUZhY3RvcikKICAgICAgICAgICAgIHJldHVybiBpbWFnZUNhbmRp
ZGF0ZXNbaV07CiAgICAgfQotICAgIGNvbnN0IEltYWdlV2l0aFNjYWxlJiBsYXN0Q2FuZGlkYXRl
ID0gaW1hZ2VDYW5kaWRhdGVzLmxhc3QoKTsKLSAgICByZXR1cm4gbGFzdENhbmRpZGF0ZTsKKwor
ICAgIC8vIDE2LiBJZiBhbiBlbnRyeSBiIGluIGNhbmRpZGF0ZXMgaGFzIHRoZSBzYW1lIGFzc29j
aWF0ZWQgLi4uIHBpeGVsIGRlbnNpdHkgYXMgYW4gZWFybGllciBlbnRyeSBhIGluIGNhbmRpZGF0
ZXMsCisgICAgLy8gdGhlbiByZW1vdmUgZW50cnkgYgorICAgIHNpemVfdCB3aW5uZXIgPSBpbWFn
ZUNhbmRpZGF0ZXMuc2l6ZSgpIC0gMTsKKyAgICBzaXplX3QgcHJldmlvdXNDYW5kaWRhdGUgPSB3
aW5uZXI7CisgICAgZmxvYXQgd2lubmluZ1NjYWxlRmFjdG9yID0gaW1hZ2VDYW5kaWRhdGVzLmxh
c3QoKS5zY2FsZUZhY3RvcigpOworICAgIHdoaWxlICgocHJldmlvdXNDYW5kaWRhdGUgPiAwKSAm
JiAoaW1hZ2VDYW5kaWRhdGVzWy0tcHJldmlvdXNDYW5kaWRhdGVdLnNjYWxlRmFjdG9yKCkgPT0g
d2lubmluZ1NjYWxlRmFjdG9yKSkKKyAgICAgICAgd2lubmVyID0gcHJldmlvdXNDYW5kaWRhdGU7
CisKKyAgICByZXR1cm4gaW1hZ2VDYW5kaWRhdGVzW3dpbm5lcl07CiB9CiAKIH0KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBj
ZjI5OWJmNTI0OGQwOGZhNGQ0MjJiOTY0MTg0NmRmYzNmNWFjYmQ2Li45MjY0MjAxZDEwM2ZjYWE1
MDk2YzA0ZWY2ZDkyYjQyNTQxYjZiMGQ1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTQtMDMt
MDEgIFlvYXYgV2Vpc3MgIDx5b2F2QHlvYXYud3M+CisKKyAgICAgICAgRml4IHNyY3NldCByZWxh
dGVkIGJ1Z3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEyOTUzOQorCisgICAgICAgIFRoZXNlIHRlc3RzIG1ha2Ugc3VyZSB0aGF0OgorICAgICAgICAx
LiBJbnZhbGlkIHNyY3NldCBkZXNjcmlwdG9ycyBhcmUgaGFuZGxlZCBhY2NvcmRpbmcgdG8gdGhl
IHNwZWMuIFRoZSBpbnZhbGlkIGRlc2NyaXB0b3JzIGFyZSBpZ25vcmVkLCBidXQgdGhlIHJlc291
cmNlIGlzIG5vdC4KKyAgICAgICAgMi4gV2hlbiBib3RoIHNyYyBhbmQgc3Jjc2V0IGhhdmUgb25s
eSAxeCBkZXNjcmlwdG9ycyBhbmQgdGhlIERQUiBpcyBoaWdoZXIgdGhhbiAxLCB0aGUgc3Jjc2V0
J3MgcmVzb3VyY2UgaXMgcGlja2VkLgorCisgICAgICAgIEkndmUgYWxzbyBmaXhlZCB0aGUgaW52
YWxpZCBpbnB1dHMgdGVzdCwgd2hpY2ggd2FzIGZhdWx0eS4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGZhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0LWlu
dmFsaWQtZGVzY3JpcHRvci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvaGlk
cGkvaW1hZ2Utc3Jjc2V0LWludmFsaWQtZGVzY3JpcHRvci5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2hpZHBpL2ltYWdlLXNyY3NldC1pbnZhbGlkLWlucHV0cy1jb3JyZWN0LXNyYy5odG1s
OgorICAgICAgICAqIGZhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0LXNyYy1zZWxlY3Rpb24tMXgtYm90
aC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0
LXNyYy1zZWxlY3Rpb24tMXgtYm90aC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2hpZHBp
L3Jlc291cmNlcy9zcmNzZXQtaGVscGVyLmpzOgorICAgICAgICAocnVuVGVzdCk6CisKIDIwMTQt
MDMtMDEgIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgogCiAgICAgICAg
IFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxNjQ5MjkgYW5kIHIxNjQ5MzQuCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNyY3NldC1pbnZhbGlkLWRlc2NyaXB0b3It
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtaW52YWxp
ZC1kZXNjcmlwdG9yLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ZGI1YmMxNGJhZTRlNDg5OWQ4
M2JkNjYzNjBiODYxNTMxNDBlNzhmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9oaWRwaS9pbWFnZS1zcmNzZXQtaW52YWxpZC1kZXNjcmlwdG9yLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDggQEAKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01Q
TEVURQorUEFTUyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9vIikuY2xpZW50V2lkdGg9PTEw
MCBpcyB0cnVlCitQQVNTIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb28yIikuY2xpZW50V2lk
dGg9PTIwMCBpcyB0cnVlCitUaGlzIHRlc3QgcGFzc2VzIGlmIHRoZSBpbWFnZSBiZWxvdyBpcyBh
IDEwMHB4IGJsdWUgc3F1YXJlIHdoZW4gdGhlIGRldmljZVNjYWxlRmFjdG9yIGlzIDEuCitJdCB0
ZXN0cyB0aGF0IGV2ZW4gdGhvdWdoIHRoZSAxeCByZXNvdXJjZSBjb250YWlucyBtYW55IGludmFs
aWQgZGVzY3JpcHRvcnMsIG9ubHkgdGhlIGludmFsaWQgZGVzY3JpcHRvcnMgYXJlIGlnbm9yZWQg
KGFjY29yZGluZyB0byB0aGUgc3BlYykuCisgIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9oaWRwaS9pbWFnZS1zcmNzZXQtaW52YWxpZC1kZXNjcmlwdG9yLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L2hpZHBpL2ltYWdlLXNyY3NldC1pbnZhbGlkLWRlc2NyaXB0b3IuaHRtbApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5iMWMwMmU4NzU5YWQ3OTVkODAwNDVlMmI0ZWYxNDcxMjg2MDEzMTU4Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtaW52YWxpZC1kZXNj
cmlwdG9yLmh0bWwKQEAgLTAsMCArMSwyMyBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+Cisg
ICAgd2luZG93LnRhcmdldFNjYWxlRmFjdG9yID0gMTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9
InJlc291cmNlcy9zcmNzZXQtaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8u
Li9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorICAgIGFkZEV2ZW50
TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlvbigpIHsKKyAgICAgICAgc2hvdWxkQmVUcnVlKCdkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiZm9vIikuY2xpZW50V2lkdGg9PTEwMCcpOworICAgICAgICBz
aG91bGRCZVRydWUoJ2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb28yIikuY2xpZW50V2lkdGg9
PTIwMCcpOworICAgIH0sIGZhbHNlKTsKKzwvc2NyaXB0PgorPC9oZWFkPgorCis8Ym9keSBpZD0i
Ym9keSI+CisgICAgPGRpdj5UaGlzIHRlc3QgcGFzc2VzIGlmIHRoZSBpbWFnZSBiZWxvdyBpcyBh
IDEwMHB4IGJsdWUgc3F1YXJlIHdoZW4gdGhlIGRldmljZVNjYWxlRmFjdG9yIGlzIDEuPC9kaXY+
CisgICAgPGRpdj4gSXQgdGVzdHMgdGhhdCBldmVuIHRob3VnaCB0aGUgMXggcmVzb3VyY2UgY29u
dGFpbnMgbWFueSBpbnZhbGlkIGRlc2NyaXB0b3JzLAorICAgICAgICBvbmx5IHRoZSBpbnZhbGlk
IGRlc2NyaXB0b3JzIGFyZSBpZ25vcmVkIChhY2NvcmRpbmcgdG8gdGhlIHNwZWMpLjwvZGl2Pgor
ICAgIDxpbWcgaWQ9ImZvbyIgc3JjPSIiIHNyY3NldD0icmVzb3VyY2VzL2JsdWUtMTAwLXB4LXNx
dWFyZS5wbmcgNDNxIDF4IGRmcyAzZGQsIHJlc291cmNlcy9ncmVlbi00MDAtcHgtc3F1YXJlLnBu
ZyAyeCI+CisgICAgPGltZyBpZD0iZm9vMiIgc3JjPSIiIHNyY3NldD0icmVzb3VyY2VzL2JsdWUt
MTAwLXB4LXNxdWFyZS5wbmcgMzAwcSwgcmVzb3VyY2VzL2dyZWVuLTQwMC1weC1zcXVhcmUucG5n
IDJ4Ij4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaGlk
cGkvaW1hZ2Utc3Jjc2V0LWludmFsaWQtaW5wdXRzLWNvcnJlY3Qtc3JjLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L2hpZHBpL2ltYWdlLXNyY3NldC1pbnZhbGlkLWlucHV0cy1jb3JyZWN0LXNyYy5o
dG1sCmluZGV4IGE5NDliMWFiYThhMjBhMmRjODA3ZGU1ZTg5MDdiZjRiYTY4YTlkY2UuLjc3MGJj
MjFmNTQxNDVhNjFkN2I5ZGQ2OWRiYjNlMmU0M2VkNzJiNzYgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0LWludmFsaWQtaW5wdXRzLWNvcnJlY3Qtc3JjLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtaW52YWxpZC1pbnB1
dHMtY29ycmVjdC1zcmMuaHRtbApAQCAtMTYsNiArMTYsNiBAQAogPGJvZHkgaWQ9ImJvZHkiPgog
ICAgIDxkaXY+VGhpcyB0ZXN0IHBhc3NlcyBpZiB0aGlzIGltZyB0YWcgYmVsb3cgaXMgYSBncmVl
biBzcXVhcmUgcmVnYXJkbGVzcyBvZiB0aGUgc2NhbGUgZmFjdG9yLiBJdCBlbnN1cmVzIHRoYXQg
aW52YWxpZCBpbnB1dHMKICAgICBmcm9tIHNyY3NldCBhcmUgaWdub3JlZCwgYW5kIHNyYyBpcyBz
ZWxlY3RlZCAoc2luY2UgaXQncyB0aGUgb25seSBjYW5kaWRhdGUgbGVmdCk8L2Rpdj4KLSAgICA8
aW1nIGlkPSJmb28iIHNyYz0icmVzb3VyY2VzL2dyZWVuLTQwMC1weC1zcXVhcmUucG5nIiBzcmNz
ZXQ9IjF4LCwgICwgICAgICAsIDJ4ICwsIj4KKyAgICA8aW1nIGlkPSJmb28iIHNyYz0icmVzb3Vy
Y2VzL2dyZWVuLTQwMC1weC1zcXVhcmUucG5nIiBzcmNzZXQ9IjF4IDV3LCwgICwgICAgICAsIDJ4
ICA2MDBoLCwiPgogPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9oaWRwaS9pbWFnZS1zcmNzZXQtc3JjLXNlbGVjdGlvbi0xeC1ib3RoLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2Zhc3QvaGlkcGkvaW1hZ2Utc3Jjc2V0LXNyYy1zZWxlY3Rpb24tMXgtYm90
aC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDkyM2U1YzY0ZDUzNGY1ZWZmOThmOGM3M2NjNDY2
OWU5OTYyNGZiYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaGlkcGkvaW1h
Z2Utc3Jjc2V0LXNyYy1zZWxlY3Rpb24tMXgtYm90aC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw2
IEBACitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKK1BB
U1MgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbyIpLmNsaWVudFdpZHRoPT00MDAgaXMgdHJ1
ZQorVGhpcyB0ZXN0IHBhc3NlcyBpZiB0aGUgZGl2IGJlbG93IGlzIGEgYmx1ZSAxMDBweCBzcXVh
cmUgd2hlbiB0aGUgZGV2aWNlU2NhbGVGYWN0b3IgaXMgMS4gSXQgc2ltcGx5IGVuc3VyZXMgdGhh
dCB3aGVuIGJvdGggc3JjIGFuZCBzcmNzZXQgYXJlIHNwZWNpZmllZCBmb3IgdGhlIHNhbWUgRFBS
LCBzcmNzZXQgd2lucy4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFn
ZS1zcmNzZXQtc3JjLXNlbGVjdGlvbi0xeC1ib3RoLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2hp
ZHBpL2ltYWdlLXNyY3NldC1zcmMtc2VsZWN0aW9uLTF4LWJvdGguaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5h
YWVhZDJiNTgwMDUwNzgxMDc4OGFkZTA1NTc1NDhiZjM3YTA1NGI4Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9pbWFnZS1zcmNzZXQtc3JjLXNlbGVjdGlvbi0xeC1i
b3RoLmh0bWwKQEAgLTAsMCArMSwyNCBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CisgICAg
d2luZG93LnRhcmdldFNjYWxlRmFjdG9yID0gMjsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJl
c291cmNlcy9zcmNzZXQtaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorICAgIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikgeworICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICB9CisK
KyAgICBhZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24oKSB7CisgICAgICAgIHNob3Vs
ZEJlVHJ1ZSgnZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbyIpLmNsaWVudFdpZHRoPT00MDAn
KTsKKyAgICB9LCBmYWxzZSk7Cis8L3NjcmlwdD4KKzwvaGVhZD4KKworPGJvZHkgaWQ9ImJvZHki
PgorICAgIDxkaXY+VGhpcyB0ZXN0IHBhc3NlcyBpZiB0aGUgZGl2IGJlbG93IGlzIGEgYmx1ZSAx
MDBweCBzcXVhcmUgd2hlbiB0aGUgZGV2aWNlU2NhbGVGYWN0b3IgaXMgMS4gCisgICAgICAgIEl0
IHNpbXBseSBlbnN1cmVzIHRoYXQgd2hlbiBib3RoIHNyYyBhbmQgc3Jjc2V0IGFyZSBzcGVjaWZp
ZWQgZm9yIHRoZSBzYW1lIERQUiwgc3Jjc2V0IHdpbnMuPC9kaXY+CisgICAgPGltZyBpZD0iZm9v
IiBzcmM9InJlc291cmNlcy9ibHVlLTEwMC1weC1zcXVhcmUucG5nIiBzcmNzZXQ9InJlc291cmNl
cy9ncmVlbi00MDAtcHgtc3F1YXJlLnBuZyAxeCI+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2hpZHBpL3Jlc291cmNlcy9zcmNzZXQtaGVscGVyLmpzIGIv
TGF5b3V0VGVzdHMvZmFzdC9oaWRwaS9yZXNvdXJjZXMvc3Jjc2V0LWhlbHBlci5qcwppbmRleCA2
YzgxODJlM2NlOGExNDU4YTM5NjM0MzEzZjQxMjgwM2I2ODY0YjM4Li5kYjhkZWI4ZmU3YmI4YjNj
Yzk1NzZkZjBiMzE0YTJhZDg3MzgwMTE3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2hp
ZHBpL3Jlc291cmNlcy9zcmNzZXQtaGVscGVyLmpzCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaGlk
cGkvcmVzb3VyY2VzL3NyY3NldC1oZWxwZXIuanMKQEAgLTUsNiArNSw5IEBAIGZ1bmN0aW9uIHJ1
blRlc3QoKSB7CiAgICAgaWYgKCF3aW5kb3cudGFyZ2V0U2NhbGVGYWN0b3IpCiAgICAgICAgIHdp
bmRvdy50YXJnZXRTY2FsZUZhY3RvciA9IDI7CiAKKyAgICBpZighc2Vzc2lvblN0b3JhZ2UucGFn
ZVJlbG9hZGVkICYmIHdpbmRvdy50YXJnZXRTY2FsZUZhY3RvciA9PSB3aW5kb3cuZGV2aWNlU2Nh
bGVGYWN0b3IpCisgICAgICAgIHJldHVybjsKKwogICAgIGlmICghc2Vzc2lvblN0b3JhZ2Uuc2Nh
bGVGYWN0b3JJc1NldCkgewogICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKICAg
ICAgICAgdGVzdFJ1bm5lci5zZXRCYWNraW5nU2NhbGVGYWN0b3IodGFyZ2V0U2NhbGVGYWN0b3Is
IHNjYWxlRmFjdG9ySXNTZXQpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>