<?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>167134</bug_id>
          
          <creation_ts>2017-01-17 13:08:03 -0800</creation_ts>
          <short_desc>Pointer lock events should be delivered directly to the target element</short_desc>
          <delta_ts>2017-02-06 10:53:00 -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>WebCore Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=167511</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jeremy Jones">jeremyj-wk</reporter>
          <assigned_to name="Jeremy Jones">jeremyj-wk</assigned_to>
          <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jer.noble</cc>
    
    <cc>jonlee</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1267466</commentid>
    <comment_count>0</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-01-17 13:08:03 -0800</bug_when>
    <thetext>Pointer lock events should be delivered directly to the target element</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267467</commentid>
    <comment_count>1</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-01-17 13:08:39 -0800</bug_when>
    <thetext>rdar://problem/30058933</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267473</commentid>
    <comment_count>2</comment_count>
      <attachid>299055</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-01-17 13:16:36 -0800</bug_when>
    <thetext>Created attachment 299055
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270066</commentid>
    <comment_count>3</comment_count>
      <attachid>299055</attachid>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2017-01-25 17:36:55 -0800</bug_when>
    <thetext>Comment on attachment 299055
Patch

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

&gt; LayoutTests/pointer-lock/mouse-event-delivery.html:50
&gt; +                window.eventSender.mouseMoveTo(20,20);

why does this need to be added?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270101</commentid>
    <comment_count>4</comment_count>
      <attachid>299785</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-01-25 19:09:38 -0800</bug_when>
    <thetext>Created attachment 299785
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270145</commentid>
    <comment_count>5</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-01-25 23:30:45 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Comment on attachment 299055 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=299055&amp;action=review
&gt; 
&gt; &gt; LayoutTests/pointer-lock/mouse-event-delivery.html:50
&gt; &gt; +                window.eventSender.mouseMoveTo(20,20);
&gt; 
&gt; why does this need to be added?

        The pointer-lock/mouse-event-delivery.html test is modified to explicitly move the mouse pointer to a valid
        location before sending mouse actions. Without this, the test infrastructure doesn&apos;t know that the pointer
        is over the web view and doesn&apos;t deliver events.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270248</commentid>
    <comment_count>6</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-01-26 11:13:30 -0800</bug_when>
    <thetext>*** Bug 167133 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270396</commentid>
    <comment_count>7</comment_count>
      <attachid>299785</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-26 15:49:13 -0800</bug_when>
    <thetext>Comment on attachment 299785
Patch

Clearing flags on attachment: 299785

Committed r211235: &lt;http://trac.webkit.org/changeset/211235&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270397</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-26 15:49:18 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1271310</commentid>
    <comment_count>9</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2017-01-30 10:20:35 -0800</bug_when>
    <thetext>*** Bug 167511 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1271311</commentid>
    <comment_count>10</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2017-01-30 10:21:10 -0800</bug_when>
    <thetext>Rolled out the change in http://trac.webkit.org/projects/webkit/changeset/211375 due to frequent LayoutTest failures.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1272708</commentid>
    <comment_count>11</comment_count>
      <attachid>300467</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-02-02 16:15:54 -0800</bug_when>
    <thetext>Created attachment 300467
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1272711</commentid>
    <comment_count>12</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-02-02 16:17:27 -0800</bug_when>
    <thetext>rdar://problem/30268004</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1272712</commentid>
    <comment_count>13</comment_count>
      <attachid>300470</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-02-02 16:19:20 -0800</bug_when>
    <thetext>Created attachment 300470
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1272999</commentid>
    <comment_count>14</comment_count>
      <attachid>300470</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2017-02-03 11:58:51 -0800</bug_when>
    <thetext>Comment on attachment 300470
Patch

I assume this is adding the same things that we do for touchmove and related events?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1273047</commentid>
    <comment_count>15</comment_count>
      <attachid>300470</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-02-03 13:58:10 -0800</bug_when>
    <thetext>Comment on attachment 300470
Patch

Clearing flags on attachment: 300470

Committed r211650: &lt;http://trac.webkit.org/changeset/211650&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1273048</commentid>
    <comment_count>16</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-02-03 13:58:15 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1273634</commentid>
    <comment_count>17</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2017-02-06 10:53:00 -0800</bug_when>
    <thetext>The test for this change still appears to be a flaky failure: 

https://build.webkit.org/results/Apple%20Sierra%20Debug%20WK2%20(Tests)/r211723%20(1910)/results.html

https://webkit-test-results.webkit.org/dashboards/flakiness_dashboard.html#showAllRuns=true&amp;tests=pointer-lock%2Fmouse-event-delivery.html</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>299055</attachid>
            <date>2017-01-17 13:16:36 -0800</date>
            <delta_ts>2017-01-25 19:09:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167134-20170117131448.patch</filename>
            <type>text/plain</type>
            <size>8478</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwODIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTQxMzBhNjY1NzI5Zjhh
NjIzNDNkMWJkODBkMTMyODZiNDU4OTQzOS4uNzYyYzI5ZWI2OGRkYTdmYzdjY2ZmMTIxOGJhZDhi
Mzg4N2NmMjBhNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDE3LTAxLTE3ICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBQb2ludGVyIGxvY2sgZXZl
bnRzIHNob3VsZCBiZSBkZWxpdmVyZWQgZGlyZWN0bHkgdG8gdGhlIHRhcmdldCBlbGVtZW50Cisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcxMzQKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBwb2ludGVyLWxv
Y2svbW91c2UtZXZlbnQtZGVsaXZlcnkuaHRtbDogRW5hYmxlZCBmb3IgV0syCisKKyAgICAgICAg
V2hlbiBwb2ludGVyIGlzIGxvY2tlZCBvbiBhbiBlbGVtZW50LCByb3V0ZSBtb3VzZSBldmVudHMg
ZGlyZWN0bHkgdG8gdGhlIHRhcmdldCBlbGVtZW50LCBpbnN0ZWFkIG9mIAorICAgICAgICBkb2lu
ZyB0aGUgbm9ybWFsIGV2ZW50IGRpc3B0YWNoLgorCisgICAgICAgIFRlc3QgaXMgbm90IGVuYWJs
ZWQgb24gV0sxIGJlY3Vhc2Ugc29tZSBldmVudHMgYXJlIG5vdCBiZWluZyBzeW50aGVzaXplZCBw
cm9wZXJ0bHkuCisgICAgICAgIHBlciBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTY3MTMzCisKKyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmhhbmRsZU1vdXNlUHJlc3NFdmVudCk6CisgICAgICAg
IChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmhhbmRsZU1vdXNlTW92ZUV2ZW50KToKKyAgICAgICAg
KFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6aGFuZGxlTW91c2VSZWxlYXNlRXZlbnQpOgorICAgICAg
ICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpoYW5kbGVNb3VzZUZvcmNlRXZlbnQpOgorICAgICAg
ICAqIHBhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBv
aW50ZXJMb2NrQ29udHJvbGxlcjo6aXNMb2NrZWQpOiBBZGRlZC4KKyAgICAgICAgKiBwYWdlL1Bv
aW50ZXJMb2NrQ29udHJvbGxlci5oOgorCiAyMDE3LTAxLTE3ICBKb3NlcGggUGVjb3Jhcm8gIDxw
ZWNvcmFyb0BhcHBsZS5jb20+CiAKICAgICAgICAgQ3Jhc2ggd2hlbiBjbG9zaW5nIHRhYiB3aXRo
IGRlYnVnZ2VyIHBhdXNlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhh
bmRsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCmluZGV4IDky
M2U0MTY5Zjc4ZDBhZmYwYWNiMzNkYzY5MWI4YTlhNTgwZDMwZWQuLjA2NTBhMTQ2OTIwMTllZjU2
YTRmYzE5ZmM4ODJkMzQ5MTJiN2YyZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
RXZlbnRIYW5kbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5j
cHAKQEAgLTE2MzEsNiArMTYzMSwxMSBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlTW91c2VQ
cmVzc0V2ZW50KGNvbnN0IFBsYXRmb3JtTW91c2VFdmVudCYgcGxhdGZvcm1Nb3VzZQogICAgICAg
ICByZXR1cm4gdHJ1ZTsKICAgICB9CiAKKyAgICBpZiAobV9mcmFtZS5wYWdlKCktPnBvaW50ZXJM
b2NrQ29udHJvbGxlcigpLmlzTG9ja2VkKCkpIHsKKyAgICAgICAgbV9mcmFtZS5wYWdlKCktPnBv
aW50ZXJMb2NrQ29udHJvbGxlcigpLmRpc3BhdGNoTG9ja2VkTW91c2VFdmVudChwbGF0Zm9ybU1v
dXNlRXZlbnQsIGV2ZW50TmFtZXMoKS5tb3VzZWRvd25FdmVudCk7CisgICAgICAgIHJldHVybiB0
cnVlOworICAgIH0KKwogICAgIGlmIChtX2ZyYW1lLm1haW5GcmFtZSgpLnBhZ2VPdmVybGF5Q29u
dHJvbGxlcigpLmhhbmRsZU1vdXNlRXZlbnQocGxhdGZvcm1Nb3VzZUV2ZW50KSkKICAgICAgICAg
cmV0dXJuIHRydWU7CiAKQEAgLTE4NjUsNiArMTg3MCwxMSBAQCBib29sIEV2ZW50SGFuZGxlcjo6
aGFuZGxlTW91c2VNb3ZlRXZlbnQoY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiBwbGF0Zm9ybU1v
dXNlRQogCiAgICAgUmVmPEZyYW1lPiBwcm90ZWN0ZWRGcmFtZShtX2ZyYW1lKTsKICAgICBSZWZQ
dHI8RnJhbWVWaWV3PiBwcm90ZWN0b3IobV9mcmFtZS52aWV3KCkpOworCisgICAgaWYgKG1fZnJh
bWUucGFnZSgpLT5wb2ludGVyTG9ja0NvbnRyb2xsZXIoKS5pc0xvY2tlZCgpKSB7CisgICAgICAg
IG1fZnJhbWUucGFnZSgpLT5wb2ludGVyTG9ja0NvbnRyb2xsZXIoKS5kaXNwYXRjaExvY2tlZE1v
dXNlRXZlbnQocGxhdGZvcm1Nb3VzZUV2ZW50LCBldmVudE5hbWVzKCkubW91c2Vtb3ZlRXZlbnQp
OworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CiAgICAgCiAgICAgc2V0TGFzdEtub3duTW91
c2VQb3NpdGlvbihwbGF0Zm9ybU1vdXNlRXZlbnQpOwogCkBAIC0yMDA0LDYgKzIwMTQsMTEgQEAg
Ym9vbCBFdmVudEhhbmRsZXI6OmhhbmRsZU1vdXNlUmVsZWFzZUV2ZW50KGNvbnN0IFBsYXRmb3Jt
TW91c2VFdmVudCYgcGxhdGZvcm1Nb3UKIAogICAgIG1fZnJhbWUuc2VsZWN0aW9uKCkuc2V0Q2Fy
ZXRCbGlua2luZ1N1c3BlbmRlZChmYWxzZSk7CiAKKyAgICBpZiAobV9mcmFtZS5wYWdlKCktPnBv
aW50ZXJMb2NrQ29udHJvbGxlcigpLmlzTG9ja2VkKCkpIHsKKyAgICAgICAgbV9mcmFtZS5wYWdl
KCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmRpc3BhdGNoTG9ja2VkTW91c2VFdmVudChwbGF0
Zm9ybU1vdXNlRXZlbnQsIGV2ZW50TmFtZXMoKS5tb3VzZXVwRXZlbnQpOworICAgICAgICByZXR1
cm4gdHJ1ZTsKKyAgICB9CisKICAgICBpZiAobV9mcmFtZS5tYWluRnJhbWUoKS5wYWdlT3Zlcmxh
eUNvbnRyb2xsZXIoKS5oYW5kbGVNb3VzZUV2ZW50KHBsYXRmb3JtTW91c2VFdmVudCkpCiAgICAg
ICAgIHJldHVybiB0cnVlOwogCkBAIC0yMDgyLDYgKzIwOTcsMTUgQEAgYm9vbCBFdmVudEhhbmRs
ZXI6OmhhbmRsZU1vdXNlRm9yY2VFdmVudChjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQmIGV2ZW50
KQogICAgIFJlZjxGcmFtZT4gcHJvdGVjdGVkRnJhbWUobV9mcmFtZSk7CiAgICAgUmVmUHRyPEZy
YW1lVmlldz4gcHJvdGVjdG9yKG1fZnJhbWUudmlldygpKTsKIAorICAgIGlmIChtX2ZyYW1lLnBh
Z2UoKS0+cG9pbnRlckxvY2tDb250cm9sbGVyKCkuaXNMb2NrZWQoKSkgeworICAgICAgICBtX2Zy
YW1lLnBhZ2UoKS0+cG9pbnRlckxvY2tDb250cm9sbGVyKCkuZGlzcGF0Y2hMb2NrZWRNb3VzZUV2
ZW50KGV2ZW50LCBldmVudE5hbWVzKCkud2Via2l0bW91c2Vmb3JjZWNoYW5nZWRFdmVudCk7Cisg
ICAgICAgIGlmIChldmVudC50eXBlKCkgPT0gUGxhdGZvcm1FdmVudDo6TW91c2VGb3JjZURvd24p
CisgICAgICAgICAgICBtX2ZyYW1lLnBhZ2UoKS0+cG9pbnRlckxvY2tDb250cm9sbGVyKCkuZGlz
cGF0Y2hMb2NrZWRNb3VzZUV2ZW50KGV2ZW50LCBldmVudE5hbWVzKCkud2Via2l0bW91c2Vmb3Jj
ZWRvd25FdmVudCk7CisgICAgICAgIGlmIChldmVudC50eXBlKCkgPT0gUGxhdGZvcm1FdmVudDo6
TW91c2VGb3JjZVVwKQorICAgICAgICAgICAgbV9mcmFtZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29u
dHJvbGxlcigpLmRpc3BhdGNoTG9ja2VkTW91c2VFdmVudChldmVudCwgZXZlbnROYW1lcygpLndl
YmtpdG1vdXNlZm9yY2V1cEV2ZW50KTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorCiAg
ICAgc2V0TGFzdEtub3duTW91c2VQb3NpdGlvbihldmVudCk7CiAKICAgICBIaXRUZXN0UmVxdWVz
dDo6SGl0VGVzdFJlcXVlc3RUeXBlIGhpdFR5cGUgPSBIaXRUZXN0UmVxdWVzdDo6RGlzYWxsb3dV
c2VyQWdlbnRTaGFkb3dDb250ZW50IHwgSGl0VGVzdFJlcXVlc3Q6OkFjdGl2ZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmNwcAppbmRleCA1NzAwMWM1YzBh
YTMyOWRlMDYzNzBiZDhiNTc0Zjg1MjMyODc4MjdmLi5iZGVjN2JkMDEzMGU0ZGI0YjQ1YWMzZDQ3
MjliNTRmOGY5OTZhMjVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJM
b2NrQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9ja0Nv
bnRyb2xsZXIuY3BwCkBAIC0xMjEsNiArMTIxLDExIEBAIHZvaWQgUG9pbnRlckxvY2tDb250cm9s
bGVyOjpkb2N1bWVudERldGFjaGVkKERvY3VtZW50JiBkb2N1bWVudCkKICAgICB9CiB9CiAKK2Jv
b2wgUG9pbnRlckxvY2tDb250cm9sbGVyOjppc0xvY2tlZCgpIGNvbnN0Cit7CisgICAgcmV0dXJu
IG1fZWxlbWVudCAmJiAhbV9sb2NrUGVuZGluZzsKK30KKwogYm9vbCBQb2ludGVyTG9ja0NvbnRy
b2xsZXI6OmxvY2tQZW5kaW5nKCkgY29uc3QKIHsKICAgICByZXR1cm4gbV9sb2NrUGVuZGluZzsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5oCmluZGV4IGNiNmIw
Zjk4ZjhmNWFlYWIwNjFkOWE4M2EzNjUyYzUyYjdkNzc1MjQuLmY2YzczMDNmZmE2MWU0MDc3OWU2
OTUyOWU1ZDVjN2E1ZTRkYTg4NmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9p
bnRlckxvY2tDb250cm9sbGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9j
a0NvbnRyb2xsZXIuaApAQCAtNDgsNiArNDgsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCByZXF1ZXN0
UG9pbnRlclVubG9ja0FuZEZvcmNlQ3Vyc29yVmlzaWJsZSgpOwogICAgIHZvaWQgZWxlbWVudFJl
bW92ZWQoRWxlbWVudCYpOwogICAgIHZvaWQgZG9jdW1lbnREZXRhY2hlZChEb2N1bWVudCYpOwor
ICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgaXNMb2NrZWQoKSBjb25zdDsKICAgICBXRUJDT1JFX0VY
UE9SVCBib29sIGxvY2tQZW5kaW5nKCkgY29uc3Q7CiAgICAgV0VCQ09SRV9FWFBPUlQgRWxlbWVu
dCogZWxlbWVudCgpIGNvbnN0OwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNTk1MTMxZGVkNGRjZWVlYWIzYjlkMzU0ODAy
NThlODFhYTJiMjU1ZC4uY2U2MDU5NWE0YjdmM2E3ODVmZDlmMTNiNzQ0ODg0ZmRkYWI2MTM5OSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE3LTAxLTE3ICBKZXJlbXkgSm9uZXMgIDxqZXJlbXlq
QGFwcGxlLmNvbT4KKworICAgICAgICBQb2ludGVyIGxvY2sgZXZlbnRzIHNob3VsZCBiZSBkZWxp
dmVyZWQgZGlyZWN0bHkgdG8gdGhlIHRhcmdldCBlbGVtZW50CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcxMzQKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0IGlzIGVuYWJsZWQgZm9yIFdLMiBvbmx5
LCBzaW5jZSBzb21lIGV2ZW50cyBhcmUgbm90IHN5bnRoZXNpemVkL2RlbGl2ZXJlZCBwcm9wZXJ0
bHkgaW4gV0sxIGZvciBub3csCisgICAgICAgIHBlciBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTY3MTMzCisKKyAgICAgICAgVGhlIHBvaW50ZXItbG9jay9tb3VzZS1l
dmVudC1kZWxpdmVyeS5odG1sIHRlc3QgaXMgbW9kaWZpZWQgdG8gZXhwbGljaXRseSBtb3ZlIHRo
ZSBtb3VzZSBwb2ludGVyIHRvIGEgdmFsaWQKKyAgICAgICAgbG9jYXRpb24gYmVmb3JlIHNlbmRp
bmcgbW91c2UgYWN0aW9ucy4gV2l0aG91dCB0aGlzLCB0aGUgdGVzdCBpbmZyYXN0cnVjdHVyZSBk
b2Vzbid0IGtub3cgdGhhdCB0aGUgcG9pbnRlcgorICAgICAgICBpcyBvdmVyIHRoZSB3ZWIgdmll
dyBhbmQgZG9lc24ndCBkZWxpdmVyIGV2ZW50cy4KKworICAgICAgICAqIHBsYXRmb3JtL21hYy13
azEvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0
aW9uczoKKyAgICAgICAgKiBwb2ludGVyLWxvY2svbW91c2UtZXZlbnQtZGVsaXZlcnkuaHRtbDoK
KwogMjAxNy0wMS0xNiAgQ2FybG9zIEFsYmVydG8gTG9wZXogUGVyZXogIDxjbG9wZXpAaWdhbGlh
LmNvbT4KIAogICAgICAgICBbR1RLXVtNU0VdIFVwZGF0ZSBsaXN0IG9mIG1lZGlhLXNvdXJjZSB0
ZXN0cyB0aGF0IGZhaWwuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sx
L1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL1Rlc3RFeHBl
Y3RhdGlvbnMKaW5kZXggZmU2NDY1ODZjZmM0MmFjZWMxNzZkZjI0ZjkxYTJjYzQwOTNiYzNkZi4u
ZmNhNzljNWJjYTVjODY3MWUwMWJkNDYzNzI2MmI4M2JlMjU4YzM1OSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL21hYy13azEvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjkzLDMgKzI5Myw0IEBA
IHdlYmtpdC5vcmcvYi8xNjU1NDEgY29tcG9zaXRpbmcvbGF5ZXItY3JlYXRpb24vZml4ZWQtb3Zl
cmxhcC1leHRlbnQtcnRsLmh0bWwgWyBGCiB3ZWJraXQub3JnL2IvMTY1NTQxIGNvbXBvc2l0aW5n
L3J0bC9ydGwtZml4ZWQtb3ZlcmZsb3cuaHRtbCBbIEZhaWx1cmUgXQogCiB3ZWJraXQub3JnL2Iv
MTY1NTg5IHBvaW50ZXItbG9jay9sb2NrLWxvc3Qtb24tZXNjLWluLWZ1bGxzY3JlZW4uaHRtbCBb
IFNraXAgXQord2Via2l0Lm9yZy9iLzE2NzEzMyBwb2ludGVyLWxvY2svbW91c2UtZXZlbnQtZGVs
aXZlcnkuaHRtbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBl
Y3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucwppbmRl
eCAyZmM2NDJiYTQ1NTRjNTkwNzFiMzVjNjIwNDVlOGQ3MTE2Mzc5ZjRhLi40ZmM4OGIyMjU3OTgy
YjJmM2U0NjYxY2E5ZmY5NjViM2I3YTYwYTAxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMv
VGVzdEV4cGVjdGF0aW9ucwpAQCAtMjgxLDcgKzI4MSw2IEBAIGZhc3QvZXZlbnRzL3BsYXRmb3Jt
LXdoZWVsZXZlbnQtcGFnaW5nLXktaW4tc2Nyb2xsaW5nLXBhZ2UuaHRtbAogcG9pbnRlci1sb2Nr
L2J1ZzkwMzkxLW1vdmUtdGhlbi13aW5kb3ctb3Blbi1jcmFzaC5odG1sCiBwb2ludGVyLWxvY2sv
bG9ja2VkLWVsZW1lbnQtaWZyYW1lLXJlbW92ZWQtZnJvbS1kb20uaHRtbAogcG9pbnRlci1sb2Nr
L2xvY2tlZC1lbGVtZW50LXJlbW92ZWQtZnJvbS1kb20uaHRtbAotcG9pbnRlci1sb2NrL21vdXNl
LWV2ZW50LWRlbGl2ZXJ5Lmh0bWwKIHBvaW50ZXItbG9jay9wb2ludGVybG9ja2NoYW5nZS1ldmVu
dC1vbi1sb2NrLWxvc3QuaHRtbAogcG9pbnRlci1sb2NrL3BvaW50ZXJsb2NrY2hhbmdlLXBvaW50
ZXJsb2NrZXJyb3ItZXZlbnRzLmh0bWwKIHBvaW50ZXItbG9jay9wb2ludGVybG9ja2VsZW1lbnQt
bnVsbC13aGVuLXBlbmRpbmcuaHRtbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcG9pbnRlci1s
b2NrL21vdXNlLWV2ZW50LWRlbGl2ZXJ5Lmh0bWwgYi9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2sv
bW91c2UtZXZlbnQtZGVsaXZlcnkuaHRtbAppbmRleCBlNWI5YzQ5MGNhODFmYTQ1NzE2M2VlNDNj
ZTRkYjU0MDUxOWZkMTE5Li42OWJkZjRhNDZmOTI5NzRlMjU5NmYyZTllYzUyNmZlMTcyNTZjMDY4
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2svbW91c2UtZXZlbnQtZGVsaXZl
cnkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2svbW91c2UtZXZlbnQtZGVsaXZl
cnkuaHRtbApAQCAtNDcsNiArNDcsNyBAQAogICAgICAgICAgICAgdGFyZ2V0ZGl2Mi5vbm1vdXNl
ZG93biA9IGV2ZW50Tm90RXhwZWN0ZWQ7CiAgICAgICAgICAgICBkb2N1bWVudC5ib2R5Lm9ubW91
c2Vkb3duID0gZXZlbnRFeHBlY3RlZDsKICAgICAgICAgICAgIGlmICh3aW5kb3cuZXZlbnRTZW5k
ZXIpIHsKKyAgICAgICAgICAgICAgICB3aW5kb3cuZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oMjAs
MjApOwogICAgICAgICAgICAgICAgIHdpbmRvdy5ldmVudFNlbmRlci5sZWFwRm9yd2FyZCgxMDAw
KTsKICAgICAgICAgICAgICAgICB3aW5kb3cuZXZlbnRTZW5kZXIubW91c2VEb3duKCk7CiAgICAg
ICAgICAgICAgICAgd2luZG93LmV2ZW50U2VuZGVyLm1vdXNlVXAoKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>299785</attachid>
            <date>2017-01-25 19:09:38 -0800</date>
            <delta_ts>2017-02-02 20:58:20 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167134-20170125190736.patch</filename>
            <type>text/plain</type>
            <size>12450</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwODIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTQxMzBhNjY1NzI5Zjhh
NjIzNDNkMWJkODBkMTMyODZiNDU4OTQzOS4uNDRjMWI3OTU3OThlY2FmYzFhYmJlZTU3ODgzMjcw
OGEyZTU2MTc0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDE3LTAxLTE3ICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBQb2ludGVyIGxvY2sgZXZl
bnRzIHNob3VsZCBiZSBkZWxpdmVyZWQgZGlyZWN0bHkgdG8gdGhlIHRhcmdldCBlbGVtZW50Cisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcxMzQKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBwb2ludGVyLWxv
Y2svbW91c2UtZXZlbnQtZGVsaXZlcnkuaHRtbDogRW5hYmxlZCBmb3IgbWFjLCBhZGRlZCB3aGVl
bCBldmVudCB0ZXN0cy4KKworICAgICAgICBXaGVuIHBvaW50ZXIgaXMgbG9ja2VkIG9uIGFuIGVs
ZW1lbnQsIHJvdXRlIG1vdXNlIGV2ZW50cyBkaXJlY3RseSB0byB0aGUgdGFyZ2V0IGVsZW1lbnQs
IGluc3RlYWQgb2YgCisgICAgICAgIGRvaW5nIHRoZSBub3JtYWwgZXZlbnQgZGlzcHRhY2guCisK
KyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVu
dEhhbmRsZXI6OmhhbmRsZU1vdXNlUHJlc3NFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpFdmVu
dEhhbmRsZXI6OmhhbmRsZU1vdXNlRG91YmxlQ2xpY2tFdmVudCk6CisgICAgICAgIChXZWJDb3Jl
OjpFdmVudEhhbmRsZXI6OmhhbmRsZU1vdXNlTW92ZUV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6
OkV2ZW50SGFuZGxlcjo6aGFuZGxlTW91c2VSZWxlYXNlRXZlbnQpOgorICAgICAgICAoV2ViQ29y
ZTo6RXZlbnRIYW5kbGVyOjpoYW5kbGVNb3VzZUZvcmNlRXZlbnQpOgorICAgICAgICAoV2ViQ29y
ZTo6RXZlbnRIYW5kbGVyOjpoYW5kbGVXaGVlbEV2ZW50KToKKyAgICAgICAgKiBwYWdlL1BvaW50
ZXJMb2NrQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9ja0NvbnRy
b2xsZXI6OmlzTG9ja2VkKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9ja0Nv
bnRyb2xsZXI6OmRpc3BhdGNoTG9ja2VkV2hlZWxFdmVudCk6IEFkZGVkLgorICAgICAgICAqIHBh
Z2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmg6CisKIDIwMTctMDEtMTcgIEpvc2VwaCBQZWNvcmFy
byAgPHBlY29yYXJvQGFwcGxlLmNvbT4KIAogICAgICAgICBDcmFzaCB3aGVuIGNsb3NpbmcgdGFi
IHdpdGggZGVidWdnZXIgcGF1c2VkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2
ZW50SGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKaW5k
ZXggOTIzZTQxNjlmNzhkMGFmZjBhY2IzM2RjNjkxYjhhOWE1ODBkMzBlZC4uM2ZmN2I4OTY2NDRm
ZjhiOTRmMmI2YzQ2NDBiNTcyZDJlYjdlYTM1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9FdmVudEhhbmRsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5k
bGVyLmNwcApAQCAtMTYzMSw2ICsxNjMxLDEzIEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVN
b3VzZVByZXNzRXZlbnQoY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiBwbGF0Zm9ybU1vdXNlCiAg
ICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KIAorI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCisg
ICAgaWYgKG1fZnJhbWUucGFnZSgpLT5wb2ludGVyTG9ja0NvbnRyb2xsZXIoKS5pc0xvY2tlZCgp
KSB7CisgICAgICAgIG1fZnJhbWUucGFnZSgpLT5wb2ludGVyTG9ja0NvbnRyb2xsZXIoKS5kaXNw
YXRjaExvY2tlZE1vdXNlRXZlbnQocGxhdGZvcm1Nb3VzZUV2ZW50LCBldmVudE5hbWVzKCkubW91
c2Vkb3duRXZlbnQpOworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisjZW5kaWYKKwogICAg
IGlmIChtX2ZyYW1lLm1haW5GcmFtZSgpLnBhZ2VPdmVybGF5Q29udHJvbGxlcigpLmhhbmRsZU1v
dXNlRXZlbnQocGxhdGZvcm1Nb3VzZUV2ZW50KSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKQEAg
LTE3NzEsNiArMTc3OCwxMyBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlTW91c2VEb3VibGVD
bGlja0V2ZW50KGNvbnN0IFBsYXRmb3JtTW91c2VFdmVudCYgcGxhdGZvcgogCiAgICAgVXNlckdl
c3R1cmVJbmRpY2F0b3IgZ2VzdHVyZUluZGljYXRvcihQcm9jZXNzaW5nVXNlckdlc3R1cmUsIG1f
ZnJhbWUuZG9jdW1lbnQoKSk7CiAKKyNpZiBFTkFCTEUoUE9JTlRFUl9MT0NLKQorICAgIGlmICht
X2ZyYW1lLnBhZ2UoKS0+cG9pbnRlckxvY2tDb250cm9sbGVyKCkuaXNMb2NrZWQoKSkgeworICAg
ICAgICBtX2ZyYW1lLnBhZ2UoKS0+cG9pbnRlckxvY2tDb250cm9sbGVyKCkuZGlzcGF0Y2hMb2Nr
ZWRNb3VzZUV2ZW50KHBsYXRmb3JtTW91c2VFdmVudCwgZXZlbnROYW1lcygpLm1vdXNldXBFdmVu
dCk7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyNlbmRpZgorCiAgICAgLy8gV2UgZ2V0
IHRoaXMgaW5zdGVhZCBvZiBhIHNlY29uZCBtb3VzZS11cCAKICAgICBtX21vdXNlUHJlc3NlZCA9
IGZhbHNlOwogICAgIHNldExhc3RLbm93bk1vdXNlUG9zaXRpb24ocGxhdGZvcm1Nb3VzZUV2ZW50
KTsKQEAgLTE4NjUsNyArMTg3OSwxNCBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlTW91c2VN
b3ZlRXZlbnQoY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiBwbGF0Zm9ybU1vdXNlRQogCiAgICAg
UmVmPEZyYW1lPiBwcm90ZWN0ZWRGcmFtZShtX2ZyYW1lKTsKICAgICBSZWZQdHI8RnJhbWVWaWV3
PiBwcm90ZWN0b3IobV9mcmFtZS52aWV3KCkpOwotICAgIAorCisjaWYgRU5BQkxFKFBPSU5URVJf
TE9DSykKKyAgICBpZiAobV9mcmFtZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmlz
TG9ja2VkKCkpIHsKKyAgICAgICAgbV9mcmFtZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxl
cigpLmRpc3BhdGNoTG9ja2VkTW91c2VFdmVudChwbGF0Zm9ybU1vdXNlRXZlbnQsIGV2ZW50TmFt
ZXMoKS5tb3VzZW1vdmVFdmVudCk7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyNlbmRp
ZgorCiAgICAgc2V0TGFzdEtub3duTW91c2VQb3NpdGlvbihwbGF0Zm9ybU1vdXNlRXZlbnQpOwog
CiAgICAgaWYgKG1faG92ZXJUaW1lci5pc0FjdGl2ZSgpKQpAQCAtMjAwNCw2ICsyMDI1LDEzIEBA
IGJvb2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVNb3VzZVJlbGVhc2VFdmVudChjb25zdCBQbGF0Zm9y
bU1vdXNlRXZlbnQmIHBsYXRmb3JtTW91CiAKICAgICBtX2ZyYW1lLnNlbGVjdGlvbigpLnNldENh
cmV0QmxpbmtpbmdTdXNwZW5kZWQoZmFsc2UpOwogCisjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykK
KyAgICBpZiAobV9mcmFtZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmlzTG9ja2Vk
KCkpIHsKKyAgICAgICAgbV9mcmFtZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmRp
c3BhdGNoTG9ja2VkTW91c2VFdmVudChwbGF0Zm9ybU1vdXNlRXZlbnQsIGV2ZW50TmFtZXMoKS5t
b3VzZXVwRXZlbnQpOworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisjZW5kaWYKKwogICAg
IGlmIChtX2ZyYW1lLm1haW5GcmFtZSgpLnBhZ2VPdmVybGF5Q29udHJvbGxlcigpLmhhbmRsZU1v
dXNlRXZlbnQocGxhdGZvcm1Nb3VzZUV2ZW50KSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKQEAg
LTIwODIsNiArMjExMCwxNyBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlTW91c2VGb3JjZUV2
ZW50KGNvbnN0IFBsYXRmb3JtTW91c2VFdmVudCYgZXZlbnQpCiAgICAgUmVmPEZyYW1lPiBwcm90
ZWN0ZWRGcmFtZShtX2ZyYW1lKTsKICAgICBSZWZQdHI8RnJhbWVWaWV3PiBwcm90ZWN0b3IobV9m
cmFtZS52aWV3KCkpOwogCisjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKKyAgICBpZiAobV9mcmFt
ZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmlzTG9ja2VkKCkpIHsKKyAgICAgICAg
bV9mcmFtZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmRpc3BhdGNoTG9ja2VkTW91
c2VFdmVudChldmVudCwgZXZlbnROYW1lcygpLndlYmtpdG1vdXNlZm9yY2VjaGFuZ2VkRXZlbnQp
OworICAgICAgICBpZiAoZXZlbnQudHlwZSgpID09IFBsYXRmb3JtRXZlbnQ6Ok1vdXNlRm9yY2VE
b3duKQorICAgICAgICAgICAgbV9mcmFtZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigp
LmRpc3BhdGNoTG9ja2VkTW91c2VFdmVudChldmVudCwgZXZlbnROYW1lcygpLndlYmtpdG1vdXNl
Zm9yY2Vkb3duRXZlbnQpOworICAgICAgICBpZiAoZXZlbnQudHlwZSgpID09IFBsYXRmb3JtRXZl
bnQ6Ok1vdXNlRm9yY2VVcCkKKyAgICAgICAgICAgIG1fZnJhbWUucGFnZSgpLT5wb2ludGVyTG9j
a0NvbnRyb2xsZXIoKS5kaXNwYXRjaExvY2tlZE1vdXNlRXZlbnQoZXZlbnQsIGV2ZW50TmFtZXMo
KS53ZWJraXRtb3VzZWZvcmNldXBFdmVudCk7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0K
KyNlbmRpZgorCiAgICAgc2V0TGFzdEtub3duTW91c2VQb3NpdGlvbihldmVudCk7CiAKICAgICBI
aXRUZXN0UmVxdWVzdDo6SGl0VGVzdFJlcXVlc3RUeXBlIGhpdFR5cGUgPSBIaXRUZXN0UmVxdWVz
dDo6RGlzYWxsb3dVc2VyQWdlbnRTaGFkb3dDb250ZW50IHwgSGl0VGVzdFJlcXVlc3Q6OkFjdGl2
ZTsKQEAgLTI2ODYsNiArMjcyNSwxMyBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlV2hlZWxF
dmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIGV2ZW50KQogICAgIGlmICghdmlldykKICAg
ICAgICAgcmV0dXJuIGZhbHNlOwogCisjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKKyAgICBpZiAo
bV9mcmFtZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmlzTG9ja2VkKCkpIHsKKyAg
ICAgICAgbV9mcmFtZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmRpc3BhdGNoTG9j
a2VkV2hlZWxFdmVudChldmVudCk7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyNlbmRp
ZgorCiAgICAgbV9pc0hhbmRsaW5nV2hlZWxFdmVudCA9IHRydWU7CiAgICAgc2V0RnJhbWVXYXNT
Y3JvbGxlZEJ5VXNlcigpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50
ZXJMb2NrQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrQ29u
dHJvbGxlci5jcHAKaW5kZXggNTcwMDFjNWMwYWEzMjlkZTA2MzcwYmQ4YjU3NGY4NTIzMjg3ODI3
Zi4uMTVjODY2YWIyODhlNGYxODQyMTE1NjMxOGFmZTUzY2VhNjU1OGQyZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9ja0NvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmNwcApAQCAtMTIxLDYgKzEyMSwx
MSBAQCB2b2lkIFBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZG9jdW1lbnREZXRhY2hlZChEb2N1bWVu
dCYgZG9jdW1lbnQpCiAgICAgfQogfQogCitib29sIFBvaW50ZXJMb2NrQ29udHJvbGxlcjo6aXNM
b2NrZWQoKSBjb25zdAoreworICAgIHJldHVybiBtX2VsZW1lbnQgJiYgIW1fbG9ja1BlbmRpbmc7
Cit9CisKIGJvb2wgUG9pbnRlckxvY2tDb250cm9sbGVyOjpsb2NrUGVuZGluZygpIGNvbnN0CiB7
CiAgICAgcmV0dXJuIG1fbG9ja1BlbmRpbmc7CkBAIC0xNjYsNiArMTcxLDE0IEBAIHZvaWQgUG9p
bnRlckxvY2tDb250cm9sbGVyOjpkaXNwYXRjaExvY2tlZE1vdXNlRXZlbnQoY29uc3QgUGxhdGZv
cm1Nb3VzZUV2ZW50JiBlCiAgICAgICAgIG1fZWxlbWVudC0+ZGlzcGF0Y2hNb3VzZUV2ZW50KGV2
ZW50LCBldmVudE5hbWVzKCkuY2xpY2tFdmVudCwgZXZlbnQuY2xpY2tDb3VudCgpKTsKIH0KIAor
dm9pZCBQb2ludGVyTG9ja0NvbnRyb2xsZXI6OmRpc3BhdGNoTG9ja2VkV2hlZWxFdmVudChjb25z
dCBQbGF0Zm9ybVdoZWVsRXZlbnQmIGV2ZW50KQoreworICAgIGlmICghbV9lbGVtZW50IHx8ICFt
X2VsZW1lbnQtPmRvY3VtZW50KCkuZnJhbWUoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9l
bGVtZW50LT5kaXNwYXRjaFdoZWVsRXZlbnQoZXZlbnQpOworfQorCiB2b2lkIFBvaW50ZXJMb2Nr
Q29udHJvbGxlcjo6Y2xlYXJFbGVtZW50KCkKIHsKICAgICBtX2xvY2tQZW5kaW5nID0gZmFsc2U7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5o
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9ja0NvbnRyb2xsZXIuaAppbmRleCBjYjZi
MGY5OGY4ZjVhZWFiMDYxZDlhODNhMzY1MmM1MmI3ZDc3NTI0Li5kZTcwYjRmMmI0YWE3ZGFhOGEx
ZmJlY2JkNzJiZjRiZGE0ZTVjNzNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Bv
aW50ZXJMb2NrQ29udHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxv
Y2tDb250cm9sbGVyLmgKQEAgLTM1LDYgKzM1LDcgQEAgY2xhc3MgRWxlbWVudDsKIGNsYXNzIERv
Y3VtZW50OwogY2xhc3MgUGFnZTsKIGNsYXNzIFBsYXRmb3JtTW91c2VFdmVudDsKK2NsYXNzIFBs
YXRmb3JtV2hlZWxFdmVudDsKIGNsYXNzIFZvaWRDYWxsYmFjazsKIAogY2xhc3MgUG9pbnRlckxv
Y2tDb250cm9sbGVyIHsKQEAgLTQ4LDYgKzQ5LDcgQEAgcHVibGljOgogICAgIHZvaWQgcmVxdWVz
dFBvaW50ZXJVbmxvY2tBbmRGb3JjZUN1cnNvclZpc2libGUoKTsKICAgICB2b2lkIGVsZW1lbnRS
ZW1vdmVkKEVsZW1lbnQmKTsKICAgICB2b2lkIGRvY3VtZW50RGV0YWNoZWQoRG9jdW1lbnQmKTsK
KyAgICBib29sIGlzTG9ja2VkKCkgY29uc3Q7CiAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBsb2Nr
UGVuZGluZygpIGNvbnN0OwogICAgIFdFQkNPUkVfRVhQT1JUIEVsZW1lbnQqIGVsZW1lbnQoKSBj
b25zdDsKIApAQCAtNTUsNiArNTcsNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9p
ZCBkaWROb3RBY3F1aXJlUG9pbnRlckxvY2soKTsKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGRp
ZExvc2VQb2ludGVyTG9jaygpOwogICAgIHZvaWQgZGlzcGF0Y2hMb2NrZWRNb3VzZUV2ZW50KGNv
bnN0IFBsYXRmb3JtTW91c2VFdmVudCYsIGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlKTsK
KyAgICB2b2lkIGRpc3BhdGNoTG9ja2VkV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZl
bnQmKTsKIAogcHJpdmF0ZToKICAgICB2b2lkIGNsZWFyRWxlbWVudCgpOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDU5NTEz
MWRlZDRkY2VlZWFiM2I5ZDM1NDgwMjU4ZTgxYWEyYjI1NWQuLjhmYjdjODk1ZjU0MjAzYzU0ZWQ3
N2ZjNWFlNDYxNjdmN2M2MjhkYTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAxNy0wMS0xNyAg
SmVyZW15IEpvbmVzICA8amVyZW15akBhcHBsZS5jb20+CisKKyAgICAgICAgUG9pbnRlciBsb2Nr
IGV2ZW50cyBzaG91bGQgYmUgZGVsaXZlcmVkIGRpcmVjdGx5IHRvIHRoZSB0YXJnZXQgZWxlbWVu
dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MTM0
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIHBv
aW50ZXItbG9jay9tb3VzZS1ldmVudC1kZWxpdmVyeS5odG1sIHRlc3QgaXMgbW9kaWZpZWQgdG8g
ZXhwbGljaXRseSBtb3ZlIHRoZSBtb3VzZSBwb2ludGVyIHRvIGEgdmFsaWQKKyAgICAgICAgbG9j
YXRpb24gYmVmb3JlIHNlbmRpbmcgbW91c2UgYWN0aW9ucy4gV2l0aG91dCB0aGlzLCB0aGUgdGVz
dCBpbmZyYXN0cnVjdHVyZSBkb2Vzbid0IGtub3cgdGhhdCB0aGUgcG9pbnRlcgorICAgICAgICBp
cyBvdmVyIHRoZSB3ZWIgdmlldyBhbmQgZG9lc24ndCBkZWxpdmVyIGV2ZW50cy4KKworICAgICAg
ICBBZGRlZCBjb2RlIHRvIHRlc3QgZm9yIHdoZWVsIGV2ZW50cy4KKworICAgICAgICAqIHBsYXRm
b3JtL21hYy9UZXN0RXhwZWN0YXRpb25zOiBlbmFibGVkIHRlc3QuCisgICAgICAgICogcG9pbnRl
ci1sb2NrL21vdXNlLWV2ZW50LWRlbGl2ZXJ5Lmh0bWw6CisgICAgICAgICogcG9pbnRlci1sb2Nr
L21vdXNlLWV2ZW50LWRlbGl2ZXJ5LWV4cGVjdGVkLnR4dDoKKwogMjAxNy0wMS0xNiAgQ2FybG9z
IEFsYmVydG8gTG9wZXogUGVyZXogIDxjbG9wZXpAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RL
XVtNU0VdIFVwZGF0ZSBsaXN0IG9mIG1lZGlhLXNvdXJjZSB0ZXN0cyB0aGF0IGZhaWwuCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDJmYzY0MmJhNDU1NGM1
OTA3MWIzNWM2MjA0NWU4ZDcxMTYzNzlmNGEuLjRmYzg4YjIyNTc5ODJiMmYzZTQ2NjFjYTlmZjk2
NWIzYjdhNjBhMDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhw
ZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25z
CkBAIC0yODEsNyArMjgxLDYgQEAgZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdp
bmcteS1pbi1zY3JvbGxpbmctcGFnZS5odG1sCiBwb2ludGVyLWxvY2svYnVnOTAzOTEtbW92ZS10
aGVuLXdpbmRvdy1vcGVuLWNyYXNoLmh0bWwKIHBvaW50ZXItbG9jay9sb2NrZWQtZWxlbWVudC1p
ZnJhbWUtcmVtb3ZlZC1mcm9tLWRvbS5odG1sCiBwb2ludGVyLWxvY2svbG9ja2VkLWVsZW1lbnQt
cmVtb3ZlZC1mcm9tLWRvbS5odG1sCi1wb2ludGVyLWxvY2svbW91c2UtZXZlbnQtZGVsaXZlcnku
aHRtbAogcG9pbnRlci1sb2NrL3BvaW50ZXJsb2NrY2hhbmdlLWV2ZW50LW9uLWxvY2stbG9zdC5o
dG1sCiBwb2ludGVyLWxvY2svcG9pbnRlcmxvY2tjaGFuZ2UtcG9pbnRlcmxvY2tlcnJvci1ldmVu
dHMuaHRtbAogcG9pbnRlci1sb2NrL3BvaW50ZXJsb2NrZWxlbWVudC1udWxsLXdoZW4tcGVuZGlu
Zy5odG1sCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2svbW91c2UtZXZlbnQt
ZGVsaXZlcnktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcG9pbnRlci1sb2NrL21vdXNlLWV2
ZW50LWRlbGl2ZXJ5LWV4cGVjdGVkLnR4dAppbmRleCA3NTY1ZTlmOTQxOWU0ZWNhMDY5NjAyZTJl
ZjMyYzRiODhhNWNlNTAzLi43ZjU0NTljNmI2MDEyNGU1M2YxYmI0NmQwODg2OGEyNTI1NDJlNzlk
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2svbW91c2UtZXZlbnQtZGVsaXZl
cnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BvaW50ZXItbG9jay9tb3VzZS1ldmVu
dC1kZWxpdmVyeS1leHBlY3RlZC50eHQKQEAgLTUsMTEgKzUsMTcgQEAgT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUKIAogUEFTUyBkb2N1bWVudC5vbnBvaW50ZXJsb2NrY2hhbmdlIGV2ZW50IHJlY2Vp
dmVkLgogUEFTUyBkb2N1bWVudC5wb2ludGVyTG9ja0VsZW1lbnQgaXMgdGFyZ2V0ZGl2MQorICAg
ICBXaXRoIGEgbG9jayBpbiBwbGFjZSBzZW5kIGEgd2hlZWwgZXZlbnQuCitQQVNTIGV2ZW50IHR5
cGU6IHdoZWVsLCB0YXJnZXQ6IHRhcmdldDEsIHJlY2VpdmVkIG9uOiB0YXJnZXQxCitQQVNTIGV2
ZW50IHR5cGU6IHdoZWVsLCB0YXJnZXQ6IHRhcmdldDEsIHJlY2VpdmVkIG9uOiBib2R5CiAgICAg
IFdpdGggYSBsb2NrIGluIHBsYWNlIHNlbmQgYSBjbGljay4KIFBBU1MgZXZlbnQgdHlwZTogbW91
c2Vkb3duLCB0YXJnZXQ6IHRhcmdldDEsIHJlY2VpdmVkIG9uOiB0YXJnZXQxCiBQQVNTIGV2ZW50
IHR5cGU6IG1vdXNlZG93biwgdGFyZ2V0OiB0YXJnZXQxLCByZWNlaXZlZCBvbjogYm9keQogUEFT
UyBkb2N1bWVudC5vbnBvaW50ZXJsb2NrY2hhbmdlIGV2ZW50IHJlY2VpdmVkLgogUEFTUyBkb2N1
bWVudC5wb2ludGVyTG9ja0VsZW1lbnQgaXMgdGFyZ2V0ZGl2MgorICAgICBXaXRoIGEgbG9jayBp
biBwbGFjZSBzZW5kIGEgd2hlZWwgZXZlbnQuCitQQVNTIGV2ZW50IHR5cGU6IHdoZWVsLCB0YXJn
ZXQ6IHRhcmdldDIsIHJlY2VpdmVkIG9uOiB0YXJnZXQyCitQQVNTIGV2ZW50IHR5cGU6IHdoZWVs
LCB0YXJnZXQ6IHRhcmdldDIsIHJlY2VpdmVkIG9uOiBib2R5CiAgICAgIFdpdGggYSBsb2NrIGlu
IHBsYWNlIHNlbmQgYSBjbGljay4KIFBBU1MgZXZlbnQgdHlwZTogbW91c2Vkb3duLCB0YXJnZXQ6
IHRhcmdldDIsIHJlY2VpdmVkIG9uOiB0YXJnZXQyCiBQQVNTIGV2ZW50IHR5cGU6IG1vdXNlZG93
biwgdGFyZ2V0OiB0YXJnZXQyLCByZWNlaXZlZCBvbjogYm9keQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvcG9pbnRlci1sb2NrL21vdXNlLWV2ZW50LWRlbGl2ZXJ5Lmh0bWwgYi9MYXlvdXRUZXN0
cy9wb2ludGVyLWxvY2svbW91c2UtZXZlbnQtZGVsaXZlcnkuaHRtbAppbmRleCBlNWI5YzQ5MGNh
ODFmYTQ1NzE2M2VlNDNjZTRkYjU0MDUxOWZkMTE5Li40ZDA3OTliMTkwN2RjY2ZjM2EwZTJmODg5
YmZhNzQ0MWQzZjAwYTAxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2svbW91
c2UtZXZlbnQtZGVsaXZlcnkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2svbW91
c2UtZXZlbnQtZGVsaXZlcnkuaHRtbApAQCAtNDIsNiArNDIsMTggQEAKICAgICAgICAgICAgIC8v
IGRvTmV4dFN0ZXAoKSBjYWxsZWQgYnkgb25wb2ludGVybG9ja2NoYW5nZSBoYW5kbGVyLgogICAg
ICAgICB9LAogICAgICAgICBmdW5jdGlvbiAoKSB7CisgICAgICAgICAgICBkZWJ1ZygiICAgICBX
aXRoIGEgbG9jayBpbiBwbGFjZSBzZW5kIGEgd2hlZWwgZXZlbnQuIikKKyAgICAgICAgICAgIHRh
cmdldGRpdjEub253aGVlbCA9IGV2ZW50RXhwZWN0ZWQ7CisgICAgICAgICAgICB0YXJnZXRkaXYy
Lm9ud2hlZWwgPSBldmVudE5vdEV4cGVjdGVkOworICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5v
bndoZWVsID0gZXZlbnRFeHBlY3RlZDsKKyAgICAgICAgICAgIGlmICh3aW5kb3cuZXZlbnRTZW5k
ZXIpIHsKKyAgICAgICAgICAgICAgICB3aW5kb3cuZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oMjAs
MjApOworICAgICAgICAgICAgICAgIHdpbmRvdy5ldmVudFNlbmRlci5sZWFwRm9yd2FyZCgxMDAw
KTsKKyAgICAgICAgICAgICAgICB3aW5kb3cuZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeSgwLDEw
KTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGRvTmV4dFN0ZXAoKTsKKyAgICAgICAgfSwK
KyAgICAgICAgZnVuY3Rpb24gKCkgewogICAgICAgICAgICAgZGVidWcoIiAgICAgV2l0aCBhIGxv
Y2sgaW4gcGxhY2Ugc2VuZCBhIGNsaWNrLiIpCiAgICAgICAgICAgICB0YXJnZXRkaXYxLm9ubW91
c2Vkb3duID0gZXZlbnRFeHBlY3RlZDsKICAgICAgICAgICAgIHRhcmdldGRpdjIub25tb3VzZWRv
d24gPSBldmVudE5vdEV4cGVjdGVkOwpAQCAtNTksNiArNzEsMTcgQEAKICAgICAgICAgICAgIC8v
IGRvTmV4dFN0ZXAoKSBjYWxsZWQgYnkgb25wb2ludGVybG9ja2NoYW5nZSBoYW5kbGVyLgogICAg
ICAgICB9LAogICAgICAgICBmdW5jdGlvbiAoKSB7CisgICAgICAgICAgICBkZWJ1ZygiICAgICBX
aXRoIGEgbG9jayBpbiBwbGFjZSBzZW5kIGEgd2hlZWwgZXZlbnQuIikKKyAgICAgICAgICAgIHRh
cmdldGRpdjEub253aGVlbCA9IGV2ZW50Tm90RXhwZWN0ZWQ7CisgICAgICAgICAgICB0YXJnZXRk
aXYyLm9ud2hlZWwgPSBldmVudEV4cGVjdGVkOworICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5v
bndoZWVsID0gZXZlbnRFeHBlY3RlZDsKKyAgICAgICAgICAgIGlmICh3aW5kb3cuZXZlbnRTZW5k
ZXIpIHsKKyAgICAgICAgICAgICAgICB3aW5kb3cuZXZlbnRTZW5kZXIubGVhcEZvcndhcmQoMTAw
MCk7CisgICAgICAgICAgICAgICAgd2luZG93LmV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnkoMCwx
MCk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBkb05leHRTdGVwKCk7CisgICAgICAgIH0s
CisgICAgICAgIGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgIGRlYnVnKCIgICAgIFdpdGggYSBs
b2NrIGluIHBsYWNlIHNlbmQgYSBjbGljay4iKQogICAgICAgICAgICAgdGFyZ2V0ZGl2MS5vbm1v
dXNlZG93biA9IGV2ZW50Tm90RXhwZWN0ZWQ7CiAgICAgICAgICAgICB0YXJnZXRkaXYyLm9ubW91
c2Vkb3duID0gZXZlbnRFeHBlY3RlZDsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>300467</attachid>
            <date>2017-02-02 16:15:54 -0800</date>
            <delta_ts>2017-02-02 16:18:01 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167134-20170202161340.patch</filename>
            <type>text/plain</type>
            <size>13085</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjExNTkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmY2YTA0ZTJmOGJmNTRi
NTNiMDNiNTdkMTUyNTA0MTU2NDM3Y2MyMy4uY2M5MWRjZDVmNzQ5MTg0MjZlYWI2ZDNjMDIzYmMx
ZGZhMWZiMzQxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDE3LTAxLTE3ICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBQb2ludGVyIGxvY2sgZXZl
bnRzIHNob3VsZCBiZSBkZWxpdmVyZWQgZGlyZWN0bHkgdG8gdGhlIHRhcmdldCBlbGVtZW50Cisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcxMzQKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBwb2ludGVyLWxv
Y2svbW91c2UtZXZlbnQtZGVsaXZlcnkuaHRtbDogRW5hYmxlZCBmb3IgbWFjLCBhZGRlZCB3aGVl
bCBldmVudCB0ZXN0cy4KKworICAgICAgICBXaGVuIHBvaW50ZXIgaXMgbG9ja2VkIG9uIGFuIGVs
ZW1lbnQsIHJvdXRlIG1vdXNlIGV2ZW50cyBkaXJlY3RseSB0byB0aGUgdGFyZ2V0IGVsZW1lbnQs
IGluc3RlYWQgb2YgCisgICAgICAgIGRvaW5nIHRoZSBub3JtYWwgZXZlbnQgZGlzcHRhY2guCisK
KyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVu
dEhhbmRsZXI6OmhhbmRsZU1vdXNlUHJlc3NFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpFdmVu
dEhhbmRsZXI6OmhhbmRsZU1vdXNlRG91YmxlQ2xpY2tFdmVudCk6CisgICAgICAgIChXZWJDb3Jl
OjpFdmVudEhhbmRsZXI6OmhhbmRsZU1vdXNlTW92ZUV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6
OkV2ZW50SGFuZGxlcjo6aGFuZGxlTW91c2VSZWxlYXNlRXZlbnQpOgorICAgICAgICAoV2ViQ29y
ZTo6RXZlbnRIYW5kbGVyOjpoYW5kbGVNb3VzZUZvcmNlRXZlbnQpOgorICAgICAgICAoV2ViQ29y
ZTo6RXZlbnRIYW5kbGVyOjpoYW5kbGVXaGVlbEV2ZW50KToKKyAgICAgICAgKiBwYWdlL1BvaW50
ZXJMb2NrQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9ja0NvbnRy
b2xsZXI6OmlzTG9ja2VkKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9ja0Nv
bnRyb2xsZXI6OmRpc3BhdGNoTG9ja2VkV2hlZWxFdmVudCk6IEFkZGVkLgorICAgICAgICAqIHBh
Z2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmg6CisKIDIwMTctMDItMDIgIENvbW1pdCBRdWV1ZSAg
PGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcg
b3V0IHIyMTE1NzkuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxl
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKaW5kZXggMDNkNDgz
YjU0MWMwMTk3ZDM4ZTk0MzUzODJhMzc3NWY2M2ZmZmFlMi4uYTgxZjU1ZmY0NzNkZjYzOGQ3ZTVm
YWQxZjI3YTdjODIzYmQ1NjE4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVu
dEhhbmRsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcApA
QCAtMTYyMSw2ICsxNjIxLDEzIEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVNb3VzZVByZXNz
RXZlbnQoY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiBwbGF0Zm9ybU1vdXNlCiAgICAgICAgIHJl
dHVybiB0cnVlOwogICAgIH0KIAorI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCisgICAgaWYgKG1f
ZnJhbWUucGFnZSgpLT5wb2ludGVyTG9ja0NvbnRyb2xsZXIoKS5pc0xvY2tlZCgpKSB7CisgICAg
ICAgIG1fZnJhbWUucGFnZSgpLT5wb2ludGVyTG9ja0NvbnRyb2xsZXIoKS5kaXNwYXRjaExvY2tl
ZE1vdXNlRXZlbnQocGxhdGZvcm1Nb3VzZUV2ZW50LCBldmVudE5hbWVzKCkubW91c2Vkb3duRXZl
bnQpOworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisjZW5kaWYKKwogICAgIGlmIChtX2Zy
YW1lLm1haW5GcmFtZSgpLnBhZ2VPdmVybGF5Q29udHJvbGxlcigpLmhhbmRsZU1vdXNlRXZlbnQo
cGxhdGZvcm1Nb3VzZUV2ZW50KSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKQEAgLTE3NjEsNiAr
MTc2OCwxMyBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlTW91c2VEb3VibGVDbGlja0V2ZW50
KGNvbnN0IFBsYXRmb3JtTW91c2VFdmVudCYgcGxhdGZvcgogCiAgICAgVXNlckdlc3R1cmVJbmRp
Y2F0b3IgZ2VzdHVyZUluZGljYXRvcihQcm9jZXNzaW5nVXNlckdlc3R1cmUsIG1fZnJhbWUuZG9j
dW1lbnQoKSk7CiAKKyNpZiBFTkFCTEUoUE9JTlRFUl9MT0NLKQorICAgIGlmIChtX2ZyYW1lLnBh
Z2UoKS0+cG9pbnRlckxvY2tDb250cm9sbGVyKCkuaXNMb2NrZWQoKSkgeworICAgICAgICBtX2Zy
YW1lLnBhZ2UoKS0+cG9pbnRlckxvY2tDb250cm9sbGVyKCkuZGlzcGF0Y2hMb2NrZWRNb3VzZUV2
ZW50KHBsYXRmb3JtTW91c2VFdmVudCwgZXZlbnROYW1lcygpLm1vdXNldXBFdmVudCk7CisgICAg
ICAgIHJldHVybiB0cnVlOworICAgIH0KKyNlbmRpZgorCiAgICAgLy8gV2UgZ2V0IHRoaXMgaW5z
dGVhZCBvZiBhIHNlY29uZCBtb3VzZS11cCAKICAgICBtX21vdXNlUHJlc3NlZCA9IGZhbHNlOwog
ICAgIHNldExhc3RLbm93bk1vdXNlUG9zaXRpb24ocGxhdGZvcm1Nb3VzZUV2ZW50KTsKQEAgLTE4
NTUsNyArMTg2OSwxNCBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlTW91c2VNb3ZlRXZlbnQo
Y29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiBwbGF0Zm9ybU1vdXNlRQogCiAgICAgUmVmPEZyYW1l
PiBwcm90ZWN0ZWRGcmFtZShtX2ZyYW1lKTsKICAgICBSZWZQdHI8RnJhbWVWaWV3PiBwcm90ZWN0
b3IobV9mcmFtZS52aWV3KCkpOwotICAgIAorCisjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKKyAg
ICBpZiAobV9mcmFtZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmlzTG9ja2VkKCkp
IHsKKyAgICAgICAgbV9mcmFtZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmRpc3Bh
dGNoTG9ja2VkTW91c2VFdmVudChwbGF0Zm9ybU1vdXNlRXZlbnQsIGV2ZW50TmFtZXMoKS5tb3Vz
ZW1vdmVFdmVudCk7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyNlbmRpZgorCiAgICAg
c2V0TGFzdEtub3duTW91c2VQb3NpdGlvbihwbGF0Zm9ybU1vdXNlRXZlbnQpOwogCiAgICAgaWYg
KG1faG92ZXJUaW1lci5pc0FjdGl2ZSgpKQpAQCAtMTk4OSw2ICsyMDEwLDEzIEBAIGJvb2wgRXZl
bnRIYW5kbGVyOjpoYW5kbGVNb3VzZVJlbGVhc2VFdmVudChjb25zdCBQbGF0Zm9ybU1vdXNlRXZl
bnQmIHBsYXRmb3JtTW91CiAKICAgICBtX2ZyYW1lLnNlbGVjdGlvbigpLnNldENhcmV0Qmxpbmtp
bmdTdXNwZW5kZWQoZmFsc2UpOwogCisjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKKyAgICBpZiAo
bV9mcmFtZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmlzTG9ja2VkKCkpIHsKKyAg
ICAgICAgbV9mcmFtZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmRpc3BhdGNoTG9j
a2VkTW91c2VFdmVudChwbGF0Zm9ybU1vdXNlRXZlbnQsIGV2ZW50TmFtZXMoKS5tb3VzZXVwRXZl
bnQpOworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisjZW5kaWYKKwogICAgIGlmIChtX2Zy
YW1lLm1haW5GcmFtZSgpLnBhZ2VPdmVybGF5Q29udHJvbGxlcigpLmhhbmRsZU1vdXNlRXZlbnQo
cGxhdGZvcm1Nb3VzZUV2ZW50KSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKQEAgLTIwNjcsNiAr
MjA5NSwxNyBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlTW91c2VGb3JjZUV2ZW50KGNvbnN0
IFBsYXRmb3JtTW91c2VFdmVudCYgZXZlbnQpCiAgICAgUmVmPEZyYW1lPiBwcm90ZWN0ZWRGcmFt
ZShtX2ZyYW1lKTsKICAgICBSZWZQdHI8RnJhbWVWaWV3PiBwcm90ZWN0b3IobV9mcmFtZS52aWV3
KCkpOwogCisjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKKyAgICBpZiAobV9mcmFtZS5wYWdlKCkt
PnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmlzTG9ja2VkKCkpIHsKKyAgICAgICAgbV9mcmFtZS5w
YWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmRpc3BhdGNoTG9ja2VkTW91c2VFdmVudChl
dmVudCwgZXZlbnROYW1lcygpLndlYmtpdG1vdXNlZm9yY2VjaGFuZ2VkRXZlbnQpOworICAgICAg
ICBpZiAoZXZlbnQudHlwZSgpID09IFBsYXRmb3JtRXZlbnQ6Ok1vdXNlRm9yY2VEb3duKQorICAg
ICAgICAgICAgbV9mcmFtZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmRpc3BhdGNo
TG9ja2VkTW91c2VFdmVudChldmVudCwgZXZlbnROYW1lcygpLndlYmtpdG1vdXNlZm9yY2Vkb3du
RXZlbnQpOworICAgICAgICBpZiAoZXZlbnQudHlwZSgpID09IFBsYXRmb3JtRXZlbnQ6Ok1vdXNl
Rm9yY2VVcCkKKyAgICAgICAgICAgIG1fZnJhbWUucGFnZSgpLT5wb2ludGVyTG9ja0NvbnRyb2xs
ZXIoKS5kaXNwYXRjaExvY2tlZE1vdXNlRXZlbnQoZXZlbnQsIGV2ZW50TmFtZXMoKS53ZWJraXRt
b3VzZWZvcmNldXBFdmVudCk7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyNlbmRpZgor
CiAgICAgc2V0TGFzdEtub3duTW91c2VQb3NpdGlvbihldmVudCk7CiAKICAgICBIaXRUZXN0UmVx
dWVzdDo6SGl0VGVzdFJlcXVlc3RUeXBlIGhpdFR5cGUgPSBIaXRUZXN0UmVxdWVzdDo6RGlzYWxs
b3dVc2VyQWdlbnRTaGFkb3dDb250ZW50IHwgSGl0VGVzdFJlcXVlc3Q6OkFjdGl2ZTsKQEAgLTI2
NzIsNiArMjcxMSwxMyBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlV2hlZWxFdmVudChjb25z
dCBQbGF0Zm9ybVdoZWVsRXZlbnQmIGV2ZW50KQogICAgIGlmICghdmlldykKICAgICAgICAgcmV0
dXJuIGZhbHNlOwogCisjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKKyAgICBpZiAobV9mcmFtZS5w
YWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmlzTG9ja2VkKCkpIHsKKyAgICAgICAgbV9m
cmFtZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmRpc3BhdGNoTG9ja2VkV2hlZWxF
dmVudChldmVudCk7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyNlbmRpZgorCiAgICAg
bV9pc0hhbmRsaW5nV2hlZWxFdmVudCA9IHRydWU7CiAgICAgc2V0RnJhbWVXYXNTY3JvbGxlZEJ5
VXNlcigpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrQ29u
dHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5j
cHAKaW5kZXggMjZiM2NiZmM3M2U3YjY1NDdiZThjNGY5YzczMTdiYzU3ODQ1NjQwYS4uZGVkNTUy
ZWJkYjIzMzRjNjVlMDkwMTY2ZmYxYjY4ODNhOWMxNjM4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGFnZS9Qb2ludGVyTG9ja0NvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmNwcApAQCAtMTIzLDYgKzEyMywxMSBAQCB2b2lk
IFBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZG9jdW1lbnREZXRhY2hlZChEb2N1bWVudCYgZG9jdW1l
bnQpCiAgICAgfQogfQogCitib29sIFBvaW50ZXJMb2NrQ29udHJvbGxlcjo6aXNMb2NrZWQoKSBj
b25zdAoreworICAgIHJldHVybiBtX2VsZW1lbnQgJiYgIW1fbG9ja1BlbmRpbmc7Cit9CisKIGJv
b2wgUG9pbnRlckxvY2tDb250cm9sbGVyOjpsb2NrUGVuZGluZygpIGNvbnN0CiB7CiAgICAgcmV0
dXJuIG1fbG9ja1BlbmRpbmc7CkBAIC0xNzUsNiArMTgwLDE0IEBAIHZvaWQgUG9pbnRlckxvY2tD
b250cm9sbGVyOjpkaXNwYXRjaExvY2tlZE1vdXNlRXZlbnQoY29uc3QgUGxhdGZvcm1Nb3VzZUV2
ZW50JiBlCiAgICAgICAgIG1fZWxlbWVudC0+ZGlzcGF0Y2hNb3VzZUV2ZW50KGV2ZW50LCBldmVu
dE5hbWVzKCkuY2xpY2tFdmVudCwgZXZlbnQuY2xpY2tDb3VudCgpKTsKIH0KIAordm9pZCBQb2lu
dGVyTG9ja0NvbnRyb2xsZXI6OmRpc3BhdGNoTG9ja2VkV2hlZWxFdmVudChjb25zdCBQbGF0Zm9y
bVdoZWVsRXZlbnQmIGV2ZW50KQoreworICAgIGlmICghbV9lbGVtZW50IHx8ICFtX2VsZW1lbnQt
PmRvY3VtZW50KCkuZnJhbWUoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9lbGVtZW50LT5k
aXNwYXRjaFdoZWVsRXZlbnQoZXZlbnQpOworfQorCiB2b2lkIFBvaW50ZXJMb2NrQ29udHJvbGxl
cjo6Y2xlYXJFbGVtZW50KCkKIHsKICAgICBtX2xvY2tQZW5kaW5nID0gZmFsc2U7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5oIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9ja0NvbnRyb2xsZXIuaAppbmRleCAxM2QxNjFmOWNmYjRk
YjU2MGJkYjEyYjYyNGM1OGYzNTMwOGEzYWEzLi41MDIxYWU5NzQwODA4YTcxZjk4YTA0YmRjYmI0
ZTA2ODlmM2E2OTZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2Nr
Q29udHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9s
bGVyLmgKQEAgLTM1LDYgKzM1LDcgQEAgY2xhc3MgRWxlbWVudDsKIGNsYXNzIERvY3VtZW50Owog
Y2xhc3MgUGFnZTsKIGNsYXNzIFBsYXRmb3JtTW91c2VFdmVudDsKK2NsYXNzIFBsYXRmb3JtV2hl
ZWxFdmVudDsKIGNsYXNzIFZvaWRDYWxsYmFjazsKIAogY2xhc3MgUG9pbnRlckxvY2tDb250cm9s
bGVyIHsKQEAgLTQ4LDYgKzQ5LDcgQEAgcHVibGljOgogICAgIHZvaWQgcmVxdWVzdFBvaW50ZXJV
bmxvY2tBbmRGb3JjZUN1cnNvclZpc2libGUoKTsKICAgICB2b2lkIGVsZW1lbnRSZW1vdmVkKEVs
ZW1lbnQmKTsKICAgICB2b2lkIGRvY3VtZW50RGV0YWNoZWQoRG9jdW1lbnQmKTsKKyAgICBib29s
IGlzTG9ja2VkKCkgY29uc3Q7CiAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBsb2NrUGVuZGluZygp
IGNvbnN0OwogICAgIFdFQkNPUkVfRVhQT1JUIEVsZW1lbnQqIGVsZW1lbnQoKSBjb25zdDsKIApA
QCAtNTUsNiArNTcsNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBkaWROb3RB
Y3F1aXJlUG9pbnRlckxvY2soKTsKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGRpZExvc2VQb2lu
dGVyTG9jaygpOwogICAgIHZvaWQgZGlzcGF0Y2hMb2NrZWRNb3VzZUV2ZW50KGNvbnN0IFBsYXRm
b3JtTW91c2VFdmVudCYsIGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlKTsKKyAgICB2b2lk
IGRpc3BhdGNoTG9ja2VkV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKIAog
cHJpdmF0ZToKICAgICB2b2lkIGNsZWFyRWxlbWVudCgpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDZlNGUwNjQyNjhkNGQ3
ZWMzZGI5ZDEwMTNlODM4MTVkY2VhZGJlNTQuLmVhNTk3NWQyYjBmOTA5NWYwODViZWU5MTllZTMx
ZDQyYWQ3ZGNkNmYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxNy0wMS0xNyAgSmVyZW15IEpv
bmVzICA8amVyZW15akBhcHBsZS5jb20+CisKKyAgICAgICAgUG9pbnRlciBsb2NrIGV2ZW50cyBz
aG91bGQgYmUgZGVsaXZlcmVkIGRpcmVjdGx5IHRvIHRoZSB0YXJnZXQgZWxlbWVudAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MTM0CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIHBvaW50ZXItbG9j
ay9tb3VzZS1ldmVudC1kZWxpdmVyeS5odG1sIHRlc3QgaXMgbW9kaWZpZWQgdG8gZXhwbGljaXRs
eSBtb3ZlIHRoZSBtb3VzZSBwb2ludGVyIHRvIGEgdmFsaWQKKyAgICAgICAgbG9jYXRpb24gYmVm
b3JlIHNlbmRpbmcgbW91c2UgYWN0aW9ucy4gV2l0aG91dCB0aGlzLCB0aGUgdGVzdCBpbmZyYXN0
cnVjdHVyZSBkb2Vzbid0IGtub3cgdGhhdCB0aGUgcG9pbnRlcgorICAgICAgICBpcyBvdmVyIHRo
ZSB3ZWIgdmlldyBhbmQgZG9lc24ndCBkZWxpdmVyIGV2ZW50cy4KKworICAgICAgICBUaGUgcG9p
bnRlci1sb2NrL21vdXNlLWV2ZW50LWRlbGl2ZXJ5Lmh0bWwgaXMgYWxzbyBtb2RpZmllZCB0byBl
eHBsaWNpdGx5IHdhaXQgZm9yIHRoZSBkZWxpdmVyeSBvZiB0aGUgCisgICAgICAgIHdoZWVsIGV2
ZW50IGJlZm9yZSBjb250aW51aW5nIHdpdGggdGhlIHRlc3QuIFRoaXMgcHJldmVudHMgZmxha2V5
bmVzcyB3aXRoIHRoZSBvcmRlciB0aGUgZXZlbnRzIGFyZSByZWNlaXZlZC4KKworICAgICAgICBB
ZGRlZCBjb2RlIHRvIHRlc3QgZm9yIHdoZWVsIGV2ZW50cy4KKworICAgICAgICAqIHBsYXRmb3Jt
L21hYy9UZXN0RXhwZWN0YXRpb25zOiBlbmFibGVkIHRlc3QuCisgICAgICAgICogcG9pbnRlci1s
b2NrL21vdXNlLWV2ZW50LWRlbGl2ZXJ5Lmh0bWw6CisgICAgICAgICogcG9pbnRlci1sb2NrL21v
dXNlLWV2ZW50LWRlbGl2ZXJ5LWV4cGVjdGVkLnR4dDoKKwogMjAxNy0wMi0wMiAgUnlhbiBIYWRk
YWQgIDxyeWFuaGFkZGFkQGFwcGxlLmNvbT4KIAogICAgICAgICBNYXJrIGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2hhZG93LWRvbS9zbG90Y2hhbmdlLmh0bWwgYXMgZmxha3kgb24g
bWFjT1MuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0
aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDU4
YTEzZjBmOTg4MjIxZTVmZjY2MDc1OGI0MzcwZTMzYjk5YTdlMGUuLjIzZDg5MTcyZWUzMzBkMjk4
MmQ3NTY3NmViNjQyZGI3YzFkN2I3MGEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0
RXhwZWN0YXRpb25zCkBAIC0yODAsNyArMjgwLDYgQEAgZmFzdC9ldmVudHMvcGxhdGZvcm0td2hl
ZWxldmVudC1wYWdpbmcteS1pbi1zY3JvbGxpbmctcGFnZS5odG1sCiAjIFBvaW50ZXIgTG9jayBj
YW4gb25seSBjaGVjayBzb21lIG9mIHRoZSBBUEkgYXQgdGhlIG1vbWVudC4KIHBvaW50ZXItbG9j
ay9idWc5MDM5MS1tb3ZlLXRoZW4td2luZG93LW9wZW4tY3Jhc2guaHRtbAogcG9pbnRlci1sb2Nr
L2xvY2tlZC1lbGVtZW50LWlmcmFtZS1yZW1vdmVkLWZyb20tZG9tLmh0bWwKLXBvaW50ZXItbG9j
ay9tb3VzZS1ldmVudC1kZWxpdmVyeS5odG1sCiBwb2ludGVyLWxvY2svcG9pbnRlcmxvY2tjaGFu
Z2UtZXZlbnQtb24tbG9jay1sb3N0Lmh0bWwKIHBvaW50ZXItbG9jay9wb2ludGVybG9ja2NoYW5n
ZS1wb2ludGVybG9ja2Vycm9yLWV2ZW50cy5odG1sCiBwb2ludGVyLWxvY2svcG9pbnRlcmxvY2tl
bGVtZW50LW51bGwtd2hlbi1wZW5kaW5nLmh0bWwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bv
aW50ZXItbG9jay9tb3VzZS1ldmVudC1kZWxpdmVyeS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9wb2ludGVyLWxvY2svbW91c2UtZXZlbnQtZGVsaXZlcnktZXhwZWN0ZWQudHh0CmluZGV4IDc1
NjVlOWY5NDE5ZTRlY2EwNjk2MDJlMmVmMzJjNGI4OGE1Y2U1MDMuLjdmNTQ1OWM2YjYwMTI0ZTUz
ZjFiYjQ2ZDA4ODY4YTI1MjU0MmU3OWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BvaW50ZXIt
bG9jay9tb3VzZS1ldmVudC1kZWxpdmVyeS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
cG9pbnRlci1sb2NrL21vdXNlLWV2ZW50LWRlbGl2ZXJ5LWV4cGVjdGVkLnR4dApAQCAtNSwxMSAr
NSwxNyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURQogCiBQQVNTIGRvY3VtZW50Lm9ucG9pbnRl
cmxvY2tjaGFuZ2UgZXZlbnQgcmVjZWl2ZWQuCiBQQVNTIGRvY3VtZW50LnBvaW50ZXJMb2NrRWxl
bWVudCBpcyB0YXJnZXRkaXYxCisgICAgIFdpdGggYSBsb2NrIGluIHBsYWNlIHNlbmQgYSB3aGVl
bCBldmVudC4KK1BBU1MgZXZlbnQgdHlwZTogd2hlZWwsIHRhcmdldDogdGFyZ2V0MSwgcmVjZWl2
ZWQgb246IHRhcmdldDEKK1BBU1MgZXZlbnQgdHlwZTogd2hlZWwsIHRhcmdldDogdGFyZ2V0MSwg
cmVjZWl2ZWQgb246IGJvZHkKICAgICAgV2l0aCBhIGxvY2sgaW4gcGxhY2Ugc2VuZCBhIGNsaWNr
LgogUEFTUyBldmVudCB0eXBlOiBtb3VzZWRvd24sIHRhcmdldDogdGFyZ2V0MSwgcmVjZWl2ZWQg
b246IHRhcmdldDEKIFBBU1MgZXZlbnQgdHlwZTogbW91c2Vkb3duLCB0YXJnZXQ6IHRhcmdldDEs
IHJlY2VpdmVkIG9uOiBib2R5CiBQQVNTIGRvY3VtZW50Lm9ucG9pbnRlcmxvY2tjaGFuZ2UgZXZl
bnQgcmVjZWl2ZWQuCiBQQVNTIGRvY3VtZW50LnBvaW50ZXJMb2NrRWxlbWVudCBpcyB0YXJnZXRk
aXYyCisgICAgIFdpdGggYSBsb2NrIGluIHBsYWNlIHNlbmQgYSB3aGVlbCBldmVudC4KK1BBU1Mg
ZXZlbnQgdHlwZTogd2hlZWwsIHRhcmdldDogdGFyZ2V0MiwgcmVjZWl2ZWQgb246IHRhcmdldDIK
K1BBU1MgZXZlbnQgdHlwZTogd2hlZWwsIHRhcmdldDogdGFyZ2V0MiwgcmVjZWl2ZWQgb246IGJv
ZHkKICAgICAgV2l0aCBhIGxvY2sgaW4gcGxhY2Ugc2VuZCBhIGNsaWNrLgogUEFTUyBldmVudCB0
eXBlOiBtb3VzZWRvd24sIHRhcmdldDogdGFyZ2V0MiwgcmVjZWl2ZWQgb246IHRhcmdldDIKIFBB
U1MgZXZlbnQgdHlwZTogbW91c2Vkb3duLCB0YXJnZXQ6IHRhcmdldDIsIHJlY2VpdmVkIG9uOiBi
b2R5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2svbW91c2UtZXZlbnQtZGVs
aXZlcnkuaHRtbCBiL0xheW91dFRlc3RzL3BvaW50ZXItbG9jay9tb3VzZS1ldmVudC1kZWxpdmVy
eS5odG1sCmluZGV4IGU1YjljNDkwY2E4MWZhNDU3MTYzZWU0M2NlNGRiNTQwNTE5ZmQxMTkuLjEx
ZmQxMGU0MGY3MzVkMzFhNWFhNDJmODg2OTVjZGQ4MzQwOGNhOTUgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3BvaW50ZXItbG9jay9tb3VzZS1ldmVudC1kZWxpdmVyeS5odG1sCisrKyBiL0xheW91
dFRlc3RzL3BvaW50ZXItbG9jay9tb3VzZS1ldmVudC1kZWxpdmVyeS5odG1sCkBAIC0zNCw2ICsz
NCwxMCBAQAogICAgIGZ1bmN0aW9uIGV2ZW50RXhwZWN0ZWQoZSkgewogICAgICAgdGVzdFBhc3Nl
ZCgiZXZlbnQgdHlwZTogIiArIGUudHlwZSArICIsIHRhcmdldDogIiArIGUudGFyZ2V0LmlkICsg
IiwgcmVjZWl2ZWQgb246ICIgKyBlLmN1cnJlbnRUYXJnZXQuaWQpOwogICAgIH0KKyAgICBmdW5j
dGlvbiBldmVudEV4cGVjdGVkVGhlbk5leHRTdGVwKGUpIHsKKyAgICAgIHRlc3RQYXNzZWQoImV2
ZW50IHR5cGU6ICIgKyBlLnR5cGUgKyAiLCB0YXJnZXQ6ICIgKyBlLnRhcmdldC5pZCArICIsIHJl
Y2VpdmVkIG9uOiAiICsgZS5jdXJyZW50VGFyZ2V0LmlkKTsKKyAgICAgIGRvTmV4dFN0ZXAoKTsK
KyAgICB9CiAKICAgICB0b2RvID0gWwogICAgICAgICBmdW5jdGlvbiAoKSB7CkBAIC00Miw2ICs0
NiwxNyBAQAogICAgICAgICAgICAgLy8gZG9OZXh0U3RlcCgpIGNhbGxlZCBieSBvbnBvaW50ZXJs
b2NrY2hhbmdlIGhhbmRsZXIuCiAgICAgICAgIH0sCiAgICAgICAgIGZ1bmN0aW9uICgpIHsKKyAg
ICAgICAgICAgIGRlYnVnKCIgICAgIFdpdGggYSBsb2NrIGluIHBsYWNlIHNlbmQgYSB3aGVlbCBl
dmVudC4iKQorICAgICAgICAgICAgdGFyZ2V0ZGl2MS5vbndoZWVsID0gZXZlbnRFeHBlY3RlZFRo
ZW5OZXh0U3RlcDsKKyAgICAgICAgICAgIHRhcmdldGRpdjIub253aGVlbCA9IGV2ZW50Tm90RXhw
ZWN0ZWQ7CisgICAgICAgICAgICBkb2N1bWVudC5ib2R5Lm9ud2hlZWwgPSBldmVudEV4cGVjdGVk
OworICAgICAgICAgICAgaWYgKHdpbmRvdy5ldmVudFNlbmRlcikgeworICAgICAgICAgICAgICAg
IHdpbmRvdy5ldmVudFNlbmRlci5tb3VzZU1vdmVUbygyMCwyMCk7CisgICAgICAgICAgICAgICAg
d2luZG93LmV2ZW50U2VuZGVyLmxlYXBGb3J3YXJkKDEwMDApOworICAgICAgICAgICAgICAgIHdp
bmRvdy5ldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5KDAsMTApOworICAgICAgICAgICAgfQorICAg
ICAgICB9LAorICAgICAgICBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICBkZWJ1ZygiICAgICBX
aXRoIGEgbG9jayBpbiBwbGFjZSBzZW5kIGEgY2xpY2suIikKICAgICAgICAgICAgIHRhcmdldGRp
djEub25tb3VzZWRvd24gPSBldmVudEV4cGVjdGVkOwogICAgICAgICAgICAgdGFyZ2V0ZGl2Mi5v
bm1vdXNlZG93biA9IGV2ZW50Tm90RXhwZWN0ZWQ7CkBAIC01OSw2ICs3NCwxNyBAQAogICAgICAg
ICAgICAgLy8gZG9OZXh0U3RlcCgpIGNhbGxlZCBieSBvbnBvaW50ZXJsb2NrY2hhbmdlIGhhbmRs
ZXIuCiAgICAgICAgIH0sCiAgICAgICAgIGZ1bmN0aW9uICgpIHsKKyAgICAgICAgICAgIGRlYnVn
KCIgICAgIFdpdGggYSBsb2NrIGluIHBsYWNlIHNlbmQgYSB3aGVlbCBldmVudC4iKQorICAgICAg
ICAgICAgdGFyZ2V0ZGl2MS5vbndoZWVsID0gZXZlbnROb3RFeHBlY3RlZDsKKyAgICAgICAgICAg
IHRhcmdldGRpdjIub253aGVlbCA9IGV2ZW50RXhwZWN0ZWQ7CisgICAgICAgICAgICBkb2N1bWVu
dC5ib2R5Lm9ud2hlZWwgPSBldmVudEV4cGVjdGVkOworICAgICAgICAgICAgaWYgKHdpbmRvdy5l
dmVudFNlbmRlcikgeworICAgICAgICAgICAgICAgIHdpbmRvdy5ldmVudFNlbmRlci5sZWFwRm9y
d2FyZCgxMDAwKTsKKyAgICAgICAgICAgICAgICB3aW5kb3cuZXZlbnRTZW5kZXIubW91c2VTY3Jv
bGxCeSgwLDEwKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGRvTmV4dFN0ZXAoKTsKKyAg
ICAgICAgfSwKKyAgICAgICAgZnVuY3Rpb24gKCkgewogICAgICAgICAgICAgZGVidWcoIiAgICAg
V2l0aCBhIGxvY2sgaW4gcGxhY2Ugc2VuZCBhIGNsaWNrLiIpCiAgICAgICAgICAgICB0YXJnZXRk
aXYxLm9ubW91c2Vkb3duID0gZXZlbnROb3RFeHBlY3RlZDsKICAgICAgICAgICAgIHRhcmdldGRp
djIub25tb3VzZWRvd24gPSBldmVudEV4cGVjdGVkOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>300470</attachid>
            <date>2017-02-02 16:19:20 -0800</date>
            <delta_ts>2017-02-03 13:58:10 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167134-20170202161705.patch</filename>
            <type>text/plain</type>
            <size>13151</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjExNTkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmY2YTA0ZTJmOGJmNTRi
NTNiMDNiNTdkMTUyNTA0MTU2NDM3Y2MyMy4uNjQ3MmQ0NzQwNDFhODc5ZTE2NjkyOTY0MGFlMzAx
MDM3MzFiM2EyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDE3LTAxLTE3ICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBQb2ludGVyIGxvY2sgZXZl
bnRzIHNob3VsZCBiZSBkZWxpdmVyZWQgZGlyZWN0bHkgdG8gdGhlIHRhcmdldCBlbGVtZW50Cisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcxMzQKKyAg
ICAgICAgcmRhcjovL3Byb2JsZW0vMzAyNjgwMDQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBwb2ludGVyLWxvY2svbW91c2UtZXZlbnQtZGVsaXZlcnku
aHRtbDogRW5hYmxlZCBmb3IgbWFjLCBhZGRlZCB3aGVlbCBldmVudCB0ZXN0cy4KKworICAgICAg
ICBXaGVuIHBvaW50ZXIgaXMgbG9ja2VkIG9uIGFuIGVsZW1lbnQsIHJvdXRlIG1vdXNlIGV2ZW50
cyBkaXJlY3RseSB0byB0aGUgdGFyZ2V0IGVsZW1lbnQsIGluc3RlYWQgb2YgCisgICAgICAgIGRv
aW5nIHRoZSBub3JtYWwgZXZlbnQgZGlzcHRhY2guCisKKyAgICAgICAgKiBwYWdlL0V2ZW50SGFu
ZGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmhhbmRsZU1vdXNlUHJl
c3NFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmhhbmRsZU1vdXNlRG91
YmxlQ2xpY2tFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmhhbmRsZU1v
dXNlTW92ZUV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6aGFuZGxlTW91
c2VSZWxlYXNlRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpoYW5kbGVN
b3VzZUZvcmNlRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpoYW5kbGVX
aGVlbEV2ZW50KToKKyAgICAgICAgKiBwYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9ja0NvbnRyb2xsZXI6OmlzTG9ja2VkKTogQWRkZWQu
CisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9ja0NvbnRyb2xsZXI6OmRpc3BhdGNoTG9ja2Vk
V2hlZWxFdmVudCk6IEFkZGVkLgorICAgICAgICAqIHBhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVy
Lmg6CisKIDIwMTctMDItMDIgIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3Jn
PgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIyMTE1NzkuCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0V2ZW50SGFuZGxlci5jcHAKaW5kZXggMDNkNDgzYjU0MWMwMTk3ZDM4ZTk0MzUzODJhMzc3
NWY2M2ZmZmFlMi4uYTgxZjU1ZmY0NzNkZjYzOGQ3ZTVmYWQxZjI3YTdjODIzYmQ1NjE4YSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcApAQCAtMTYyMSw2ICsxNjIxLDEzIEBAIGJv
b2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVNb3VzZVByZXNzRXZlbnQoY29uc3QgUGxhdGZvcm1Nb3Vz
ZUV2ZW50JiBwbGF0Zm9ybU1vdXNlCiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KIAorI2lm
IEVOQUJMRShQT0lOVEVSX0xPQ0spCisgICAgaWYgKG1fZnJhbWUucGFnZSgpLT5wb2ludGVyTG9j
a0NvbnRyb2xsZXIoKS5pc0xvY2tlZCgpKSB7CisgICAgICAgIG1fZnJhbWUucGFnZSgpLT5wb2lu
dGVyTG9ja0NvbnRyb2xsZXIoKS5kaXNwYXRjaExvY2tlZE1vdXNlRXZlbnQocGxhdGZvcm1Nb3Vz
ZUV2ZW50LCBldmVudE5hbWVzKCkubW91c2Vkb3duRXZlbnQpOworICAgICAgICByZXR1cm4gdHJ1
ZTsKKyAgICB9CisjZW5kaWYKKwogICAgIGlmIChtX2ZyYW1lLm1haW5GcmFtZSgpLnBhZ2VPdmVy
bGF5Q29udHJvbGxlcigpLmhhbmRsZU1vdXNlRXZlbnQocGxhdGZvcm1Nb3VzZUV2ZW50KSkKICAg
ICAgICAgcmV0dXJuIHRydWU7CiAKQEAgLTE3NjEsNiArMTc2OCwxMyBAQCBib29sIEV2ZW50SGFu
ZGxlcjo6aGFuZGxlTW91c2VEb3VibGVDbGlja0V2ZW50KGNvbnN0IFBsYXRmb3JtTW91c2VFdmVu
dCYgcGxhdGZvcgogCiAgICAgVXNlckdlc3R1cmVJbmRpY2F0b3IgZ2VzdHVyZUluZGljYXRvcihQ
cm9jZXNzaW5nVXNlckdlc3R1cmUsIG1fZnJhbWUuZG9jdW1lbnQoKSk7CiAKKyNpZiBFTkFCTEUo
UE9JTlRFUl9MT0NLKQorICAgIGlmIChtX2ZyYW1lLnBhZ2UoKS0+cG9pbnRlckxvY2tDb250cm9s
bGVyKCkuaXNMb2NrZWQoKSkgeworICAgICAgICBtX2ZyYW1lLnBhZ2UoKS0+cG9pbnRlckxvY2tD
b250cm9sbGVyKCkuZGlzcGF0Y2hMb2NrZWRNb3VzZUV2ZW50KHBsYXRmb3JtTW91c2VFdmVudCwg
ZXZlbnROYW1lcygpLm1vdXNldXBFdmVudCk7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0K
KyNlbmRpZgorCiAgICAgLy8gV2UgZ2V0IHRoaXMgaW5zdGVhZCBvZiBhIHNlY29uZCBtb3VzZS11
cCAKICAgICBtX21vdXNlUHJlc3NlZCA9IGZhbHNlOwogICAgIHNldExhc3RLbm93bk1vdXNlUG9z
aXRpb24ocGxhdGZvcm1Nb3VzZUV2ZW50KTsKQEAgLTE4NTUsNyArMTg2OSwxNCBAQCBib29sIEV2
ZW50SGFuZGxlcjo6aGFuZGxlTW91c2VNb3ZlRXZlbnQoY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50
JiBwbGF0Zm9ybU1vdXNlRQogCiAgICAgUmVmPEZyYW1lPiBwcm90ZWN0ZWRGcmFtZShtX2ZyYW1l
KTsKICAgICBSZWZQdHI8RnJhbWVWaWV3PiBwcm90ZWN0b3IobV9mcmFtZS52aWV3KCkpOwotICAg
IAorCisjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKKyAgICBpZiAobV9mcmFtZS5wYWdlKCktPnBv
aW50ZXJMb2NrQ29udHJvbGxlcigpLmlzTG9ja2VkKCkpIHsKKyAgICAgICAgbV9mcmFtZS5wYWdl
KCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmRpc3BhdGNoTG9ja2VkTW91c2VFdmVudChwbGF0
Zm9ybU1vdXNlRXZlbnQsIGV2ZW50TmFtZXMoKS5tb3VzZW1vdmVFdmVudCk7CisgICAgICAgIHJl
dHVybiB0cnVlOworICAgIH0KKyNlbmRpZgorCiAgICAgc2V0TGFzdEtub3duTW91c2VQb3NpdGlv
bihwbGF0Zm9ybU1vdXNlRXZlbnQpOwogCiAgICAgaWYgKG1faG92ZXJUaW1lci5pc0FjdGl2ZSgp
KQpAQCAtMTk4OSw2ICsyMDEwLDEzIEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVNb3VzZVJl
bGVhc2VFdmVudChjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQmIHBsYXRmb3JtTW91CiAKICAgICBt
X2ZyYW1lLnNlbGVjdGlvbigpLnNldENhcmV0QmxpbmtpbmdTdXNwZW5kZWQoZmFsc2UpOwogCisj
aWYgRU5BQkxFKFBPSU5URVJfTE9DSykKKyAgICBpZiAobV9mcmFtZS5wYWdlKCktPnBvaW50ZXJM
b2NrQ29udHJvbGxlcigpLmlzTG9ja2VkKCkpIHsKKyAgICAgICAgbV9mcmFtZS5wYWdlKCktPnBv
aW50ZXJMb2NrQ29udHJvbGxlcigpLmRpc3BhdGNoTG9ja2VkTW91c2VFdmVudChwbGF0Zm9ybU1v
dXNlRXZlbnQsIGV2ZW50TmFtZXMoKS5tb3VzZXVwRXZlbnQpOworICAgICAgICByZXR1cm4gdHJ1
ZTsKKyAgICB9CisjZW5kaWYKKwogICAgIGlmIChtX2ZyYW1lLm1haW5GcmFtZSgpLnBhZ2VPdmVy
bGF5Q29udHJvbGxlcigpLmhhbmRsZU1vdXNlRXZlbnQocGxhdGZvcm1Nb3VzZUV2ZW50KSkKICAg
ICAgICAgcmV0dXJuIHRydWU7CiAKQEAgLTIwNjcsNiArMjA5NSwxNyBAQCBib29sIEV2ZW50SGFu
ZGxlcjo6aGFuZGxlTW91c2VGb3JjZUV2ZW50KGNvbnN0IFBsYXRmb3JtTW91c2VFdmVudCYgZXZl
bnQpCiAgICAgUmVmPEZyYW1lPiBwcm90ZWN0ZWRGcmFtZShtX2ZyYW1lKTsKICAgICBSZWZQdHI8
RnJhbWVWaWV3PiBwcm90ZWN0b3IobV9mcmFtZS52aWV3KCkpOwogCisjaWYgRU5BQkxFKFBPSU5U
RVJfTE9DSykKKyAgICBpZiAobV9mcmFtZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29udHJvbGxlcigp
LmlzTG9ja2VkKCkpIHsKKyAgICAgICAgbV9mcmFtZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29udHJv
bGxlcigpLmRpc3BhdGNoTG9ja2VkTW91c2VFdmVudChldmVudCwgZXZlbnROYW1lcygpLndlYmtp
dG1vdXNlZm9yY2VjaGFuZ2VkRXZlbnQpOworICAgICAgICBpZiAoZXZlbnQudHlwZSgpID09IFBs
YXRmb3JtRXZlbnQ6Ok1vdXNlRm9yY2VEb3duKQorICAgICAgICAgICAgbV9mcmFtZS5wYWdlKCkt
PnBvaW50ZXJMb2NrQ29udHJvbGxlcigpLmRpc3BhdGNoTG9ja2VkTW91c2VFdmVudChldmVudCwg
ZXZlbnROYW1lcygpLndlYmtpdG1vdXNlZm9yY2Vkb3duRXZlbnQpOworICAgICAgICBpZiAoZXZl
bnQudHlwZSgpID09IFBsYXRmb3JtRXZlbnQ6Ok1vdXNlRm9yY2VVcCkKKyAgICAgICAgICAgIG1f
ZnJhbWUucGFnZSgpLT5wb2ludGVyTG9ja0NvbnRyb2xsZXIoKS5kaXNwYXRjaExvY2tlZE1vdXNl
RXZlbnQoZXZlbnQsIGV2ZW50TmFtZXMoKS53ZWJraXRtb3VzZWZvcmNldXBFdmVudCk7CisgICAg
ICAgIHJldHVybiB0cnVlOworICAgIH0KKyNlbmRpZgorCiAgICAgc2V0TGFzdEtub3duTW91c2VQ
b3NpdGlvbihldmVudCk7CiAKICAgICBIaXRUZXN0UmVxdWVzdDo6SGl0VGVzdFJlcXVlc3RUeXBl
IGhpdFR5cGUgPSBIaXRUZXN0UmVxdWVzdDo6RGlzYWxsb3dVc2VyQWdlbnRTaGFkb3dDb250ZW50
IHwgSGl0VGVzdFJlcXVlc3Q6OkFjdGl2ZTsKQEAgLTI2NzIsNiArMjcxMSwxMyBAQCBib29sIEV2
ZW50SGFuZGxlcjo6aGFuZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIGV2
ZW50KQogICAgIGlmICghdmlldykKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCisjaWYgRU5BQkxF
KFBPSU5URVJfTE9DSykKKyAgICBpZiAobV9mcmFtZS5wYWdlKCktPnBvaW50ZXJMb2NrQ29udHJv
bGxlcigpLmlzTG9ja2VkKCkpIHsKKyAgICAgICAgbV9mcmFtZS5wYWdlKCktPnBvaW50ZXJMb2Nr
Q29udHJvbGxlcigpLmRpc3BhdGNoTG9ja2VkV2hlZWxFdmVudChldmVudCk7CisgICAgICAgIHJl
dHVybiB0cnVlOworICAgIH0KKyNlbmRpZgorCiAgICAgbV9pc0hhbmRsaW5nV2hlZWxFdmVudCA9
IHRydWU7CiAgICAgc2V0RnJhbWVXYXNTY3JvbGxlZEJ5VXNlcigpOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5jcHAKaW5kZXggMjZiM2NiZmM3M2U3YjY1
NDdiZThjNGY5YzczMTdiYzU3ODQ1NjQwYS4uZGVkNTUyZWJkYjIzMzRjNjVlMDkwMTY2ZmYxYjY4
ODNhOWMxNjM4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9ja0Nv
bnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9s
bGVyLmNwcApAQCAtMTIzLDYgKzEyMywxMSBAQCB2b2lkIFBvaW50ZXJMb2NrQ29udHJvbGxlcjo6
ZG9jdW1lbnREZXRhY2hlZChEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAgfQogfQogCitib29sIFBv
aW50ZXJMb2NrQ29udHJvbGxlcjo6aXNMb2NrZWQoKSBjb25zdAoreworICAgIHJldHVybiBtX2Vs
ZW1lbnQgJiYgIW1fbG9ja1BlbmRpbmc7Cit9CisKIGJvb2wgUG9pbnRlckxvY2tDb250cm9sbGVy
Ojpsb2NrUGVuZGluZygpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1fbG9ja1BlbmRpbmc7CkBAIC0x
NzUsNiArMTgwLDE0IEBAIHZvaWQgUG9pbnRlckxvY2tDb250cm9sbGVyOjpkaXNwYXRjaExvY2tl
ZE1vdXNlRXZlbnQoY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiBlCiAgICAgICAgIG1fZWxlbWVu
dC0+ZGlzcGF0Y2hNb3VzZUV2ZW50KGV2ZW50LCBldmVudE5hbWVzKCkuY2xpY2tFdmVudCwgZXZl
bnQuY2xpY2tDb3VudCgpKTsKIH0KIAordm9pZCBQb2ludGVyTG9ja0NvbnRyb2xsZXI6OmRpc3Bh
dGNoTG9ja2VkV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIGV2ZW50KQorewor
ICAgIGlmICghbV9lbGVtZW50IHx8ICFtX2VsZW1lbnQtPmRvY3VtZW50KCkuZnJhbWUoKSkKKyAg
ICAgICAgcmV0dXJuOworCisgICAgbV9lbGVtZW50LT5kaXNwYXRjaFdoZWVsRXZlbnQoZXZlbnQp
OworfQorCiB2b2lkIFBvaW50ZXJMb2NrQ29udHJvbGxlcjo6Y2xlYXJFbGVtZW50KCkKIHsKICAg
ICBtX2xvY2tQZW5kaW5nID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BvaW50ZXJMb2NrQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9j
a0NvbnRyb2xsZXIuaAppbmRleCAxM2QxNjFmOWNmYjRkYjU2MGJkYjEyYjYyNGM1OGYzNTMwOGEz
YWEzLi41MDIxYWU5NzQwODA4YTcxZjk4YTA0YmRjYmI0ZTA2ODlmM2E2OTZmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmgKQEAgLTM1LDYgKzM1LDcgQEAg
Y2xhc3MgRWxlbWVudDsKIGNsYXNzIERvY3VtZW50OwogY2xhc3MgUGFnZTsKIGNsYXNzIFBsYXRm
b3JtTW91c2VFdmVudDsKK2NsYXNzIFBsYXRmb3JtV2hlZWxFdmVudDsKIGNsYXNzIFZvaWRDYWxs
YmFjazsKIAogY2xhc3MgUG9pbnRlckxvY2tDb250cm9sbGVyIHsKQEAgLTQ4LDYgKzQ5LDcgQEAg
cHVibGljOgogICAgIHZvaWQgcmVxdWVzdFBvaW50ZXJVbmxvY2tBbmRGb3JjZUN1cnNvclZpc2li
bGUoKTsKICAgICB2b2lkIGVsZW1lbnRSZW1vdmVkKEVsZW1lbnQmKTsKICAgICB2b2lkIGRvY3Vt
ZW50RGV0YWNoZWQoRG9jdW1lbnQmKTsKKyAgICBib29sIGlzTG9ja2VkKCkgY29uc3Q7CiAgICAg
V0VCQ09SRV9FWFBPUlQgYm9vbCBsb2NrUGVuZGluZygpIGNvbnN0OwogICAgIFdFQkNPUkVfRVhQ
T1JUIEVsZW1lbnQqIGVsZW1lbnQoKSBjb25zdDsKIApAQCAtNTUsNiArNTcsNyBAQCBwdWJsaWM6
CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBkaWROb3RBY3F1aXJlUG9pbnRlckxvY2soKTsKICAg
ICBXRUJDT1JFX0VYUE9SVCB2b2lkIGRpZExvc2VQb2ludGVyTG9jaygpOwogICAgIHZvaWQgZGlz
cGF0Y2hMb2NrZWRNb3VzZUV2ZW50KGNvbnN0IFBsYXRmb3JtTW91c2VFdmVudCYsIGNvbnN0IEF0
b21pY1N0cmluZyYgZXZlbnRUeXBlKTsKKyAgICB2b2lkIGRpc3BhdGNoTG9ja2VkV2hlZWxFdmVu
dChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKIAogcHJpdmF0ZToKICAgICB2b2lkIGNsZWFy
RWxlbWVudCgpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCmluZGV4IDZlNGUwNjQyNjhkNGQ3ZWMzZGI5ZDEwMTNlODM4MTVkY2VhZGJl
NTQuLmU2ODRkZTU0OTVjMzM3ZjgxZGE5NjIyMjM2MjVhZTg2YTczZWUwN2QgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNCBAQAorMjAxNy0wMS0xNyAgSmVyZW15IEpvbmVzICA8amVyZW15akBhcHBsZS5jb20+
CisKKyAgICAgICAgUG9pbnRlciBsb2NrIGV2ZW50cyBzaG91bGQgYmUgZGVsaXZlcmVkIGRpcmVj
dGx5IHRvIHRoZSB0YXJnZXQgZWxlbWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MTM0CisgICAgICAgIHJkYXI6Ly9wcm9ibGVtLzMwMjY4MDA0
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIHBv
aW50ZXItbG9jay9tb3VzZS1ldmVudC1kZWxpdmVyeS5odG1sIHRlc3QgaXMgbW9kaWZpZWQgdG8g
ZXhwbGljaXRseSBtb3ZlIHRoZSBtb3VzZSBwb2ludGVyIHRvIGEgdmFsaWQKKyAgICAgICAgbG9j
YXRpb24gYmVmb3JlIHNlbmRpbmcgbW91c2UgYWN0aW9ucy4gV2l0aG91dCB0aGlzLCB0aGUgdGVz
dCBpbmZyYXN0cnVjdHVyZSBkb2Vzbid0IGtub3cgdGhhdCB0aGUgcG9pbnRlcgorICAgICAgICBp
cyBvdmVyIHRoZSB3ZWIgdmlldyBhbmQgZG9lc24ndCBkZWxpdmVyIGV2ZW50cy4KKworICAgICAg
ICBUaGUgcG9pbnRlci1sb2NrL21vdXNlLWV2ZW50LWRlbGl2ZXJ5Lmh0bWwgaXMgYWxzbyBtb2Rp
ZmllZCB0byBleHBsaWNpdGx5IHdhaXQgZm9yIHRoZSBkZWxpdmVyeSBvZiB0aGUgCisgICAgICAg
IHdoZWVsIGV2ZW50IGJlZm9yZSBjb250aW51aW5nIHdpdGggdGhlIHRlc3QuIFRoaXMgcHJldmVu
dHMgZmxha2V5bmVzcyB3aXRoIHRoZSBvcmRlciB0aGUgZXZlbnRzIGFyZSByZWNlaXZlZC4KKwor
ICAgICAgICBBZGRlZCBjb2RlIHRvIHRlc3QgZm9yIHdoZWVsIGV2ZW50cy4KKworICAgICAgICAq
IHBsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zOiBlbmFibGVkIHRlc3QuCisgICAgICAgICog
cG9pbnRlci1sb2NrL21vdXNlLWV2ZW50LWRlbGl2ZXJ5Lmh0bWw6CisgICAgICAgICogcG9pbnRl
ci1sb2NrL21vdXNlLWV2ZW50LWRlbGl2ZXJ5LWV4cGVjdGVkLnR4dDoKKwogMjAxNy0wMi0wMiAg
UnlhbiBIYWRkYWQgIDxyeWFuaGFkZGFkQGFwcGxlLmNvbT4KIAogICAgICAgICBNYXJrIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2hhZG93LWRvbS9zbG90Y2hhbmdlLmh0bWwgYXMg
Zmxha3kgb24gbWFjT1MuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVz
dEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25z
CmluZGV4IDU4YTEzZjBmOTg4MjIxZTVmZjY2MDc1OGI0MzcwZTMzYjk5YTdlMGUuLjIzZDg5MTcy
ZWUzMzBkMjk4MmQ3NTY3NmViNjQyZGI3YzFkN2I3MGEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy9UZXN0RXhwZWN0YXRpb25zCkBAIC0yODAsNyArMjgwLDYgQEAgZmFzdC9ldmVudHMvcGxh
dGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1zY3JvbGxpbmctcGFnZS5odG1sCiAjIFBvaW50
ZXIgTG9jayBjYW4gb25seSBjaGVjayBzb21lIG9mIHRoZSBBUEkgYXQgdGhlIG1vbWVudC4KIHBv
aW50ZXItbG9jay9idWc5MDM5MS1tb3ZlLXRoZW4td2luZG93LW9wZW4tY3Jhc2guaHRtbAogcG9p
bnRlci1sb2NrL2xvY2tlZC1lbGVtZW50LWlmcmFtZS1yZW1vdmVkLWZyb20tZG9tLmh0bWwKLXBv
aW50ZXItbG9jay9tb3VzZS1ldmVudC1kZWxpdmVyeS5odG1sCiBwb2ludGVyLWxvY2svcG9pbnRl
cmxvY2tjaGFuZ2UtZXZlbnQtb24tbG9jay1sb3N0Lmh0bWwKIHBvaW50ZXItbG9jay9wb2ludGVy
bG9ja2NoYW5nZS1wb2ludGVybG9ja2Vycm9yLWV2ZW50cy5odG1sCiBwb2ludGVyLWxvY2svcG9p
bnRlcmxvY2tlbGVtZW50LW51bGwtd2hlbi1wZW5kaW5nLmh0bWwKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3BvaW50ZXItbG9jay9tb3VzZS1ldmVudC1kZWxpdmVyeS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9wb2ludGVyLWxvY2svbW91c2UtZXZlbnQtZGVsaXZlcnktZXhwZWN0ZWQudHh0
CmluZGV4IDc1NjVlOWY5NDE5ZTRlY2EwNjk2MDJlMmVmMzJjNGI4OGE1Y2U1MDMuLjdmNTQ1OWM2
YjYwMTI0ZTUzZjFiYjQ2ZDA4ODY4YTI1MjU0MmU3OWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BvaW50ZXItbG9jay9tb3VzZS1ldmVudC1kZWxpdmVyeS1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvcG9pbnRlci1sb2NrL21vdXNlLWV2ZW50LWRlbGl2ZXJ5LWV4cGVjdGVkLnR4dApA
QCAtNSwxMSArNSwxNyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
U1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURQogCiBQQVNTIGRvY3VtZW50
Lm9ucG9pbnRlcmxvY2tjaGFuZ2UgZXZlbnQgcmVjZWl2ZWQuCiBQQVNTIGRvY3VtZW50LnBvaW50
ZXJMb2NrRWxlbWVudCBpcyB0YXJnZXRkaXYxCisgICAgIFdpdGggYSBsb2NrIGluIHBsYWNlIHNl
bmQgYSB3aGVlbCBldmVudC4KK1BBU1MgZXZlbnQgdHlwZTogd2hlZWwsIHRhcmdldDogdGFyZ2V0
MSwgcmVjZWl2ZWQgb246IHRhcmdldDEKK1BBU1MgZXZlbnQgdHlwZTogd2hlZWwsIHRhcmdldDog
dGFyZ2V0MSwgcmVjZWl2ZWQgb246IGJvZHkKICAgICAgV2l0aCBhIGxvY2sgaW4gcGxhY2Ugc2Vu
ZCBhIGNsaWNrLgogUEFTUyBldmVudCB0eXBlOiBtb3VzZWRvd24sIHRhcmdldDogdGFyZ2V0MSwg
cmVjZWl2ZWQgb246IHRhcmdldDEKIFBBU1MgZXZlbnQgdHlwZTogbW91c2Vkb3duLCB0YXJnZXQ6
IHRhcmdldDEsIHJlY2VpdmVkIG9uOiBib2R5CiBQQVNTIGRvY3VtZW50Lm9ucG9pbnRlcmxvY2tj
aGFuZ2UgZXZlbnQgcmVjZWl2ZWQuCiBQQVNTIGRvY3VtZW50LnBvaW50ZXJMb2NrRWxlbWVudCBp
cyB0YXJnZXRkaXYyCisgICAgIFdpdGggYSBsb2NrIGluIHBsYWNlIHNlbmQgYSB3aGVlbCBldmVu
dC4KK1BBU1MgZXZlbnQgdHlwZTogd2hlZWwsIHRhcmdldDogdGFyZ2V0MiwgcmVjZWl2ZWQgb246
IHRhcmdldDIKK1BBU1MgZXZlbnQgdHlwZTogd2hlZWwsIHRhcmdldDogdGFyZ2V0MiwgcmVjZWl2
ZWQgb246IGJvZHkKICAgICAgV2l0aCBhIGxvY2sgaW4gcGxhY2Ugc2VuZCBhIGNsaWNrLgogUEFT
UyBldmVudCB0eXBlOiBtb3VzZWRvd24sIHRhcmdldDogdGFyZ2V0MiwgcmVjZWl2ZWQgb246IHRh
cmdldDIKIFBBU1MgZXZlbnQgdHlwZTogbW91c2Vkb3duLCB0YXJnZXQ6IHRhcmdldDIsIHJlY2Vp
dmVkIG9uOiBib2R5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wb2ludGVyLWxvY2svbW91c2Ut
ZXZlbnQtZGVsaXZlcnkuaHRtbCBiL0xheW91dFRlc3RzL3BvaW50ZXItbG9jay9tb3VzZS1ldmVu
dC1kZWxpdmVyeS5odG1sCmluZGV4IGU1YjljNDkwY2E4MWZhNDU3MTYzZWU0M2NlNGRiNTQwNTE5
ZmQxMTkuLjExZmQxMGU0MGY3MzVkMzFhNWFhNDJmODg2OTVjZGQ4MzQwOGNhOTUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3BvaW50ZXItbG9jay9tb3VzZS1ldmVudC1kZWxpdmVyeS5odG1sCisr
KyBiL0xheW91dFRlc3RzL3BvaW50ZXItbG9jay9tb3VzZS1ldmVudC1kZWxpdmVyeS5odG1sCkBA
IC0zNCw2ICszNCwxMCBAQAogICAgIGZ1bmN0aW9uIGV2ZW50RXhwZWN0ZWQoZSkgewogICAgICAg
dGVzdFBhc3NlZCgiZXZlbnQgdHlwZTogIiArIGUudHlwZSArICIsIHRhcmdldDogIiArIGUudGFy
Z2V0LmlkICsgIiwgcmVjZWl2ZWQgb246ICIgKyBlLmN1cnJlbnRUYXJnZXQuaWQpOwogICAgIH0K
KyAgICBmdW5jdGlvbiBldmVudEV4cGVjdGVkVGhlbk5leHRTdGVwKGUpIHsKKyAgICAgIHRlc3RQ
YXNzZWQoImV2ZW50IHR5cGU6ICIgKyBlLnR5cGUgKyAiLCB0YXJnZXQ6ICIgKyBlLnRhcmdldC5p
ZCArICIsIHJlY2VpdmVkIG9uOiAiICsgZS5jdXJyZW50VGFyZ2V0LmlkKTsKKyAgICAgIGRvTmV4
dFN0ZXAoKTsKKyAgICB9CiAKICAgICB0b2RvID0gWwogICAgICAgICBmdW5jdGlvbiAoKSB7CkBA
IC00Miw2ICs0NiwxNyBAQAogICAgICAgICAgICAgLy8gZG9OZXh0U3RlcCgpIGNhbGxlZCBieSBv
bnBvaW50ZXJsb2NrY2hhbmdlIGhhbmRsZXIuCiAgICAgICAgIH0sCiAgICAgICAgIGZ1bmN0aW9u
ICgpIHsKKyAgICAgICAgICAgIGRlYnVnKCIgICAgIFdpdGggYSBsb2NrIGluIHBsYWNlIHNlbmQg
YSB3aGVlbCBldmVudC4iKQorICAgICAgICAgICAgdGFyZ2V0ZGl2MS5vbndoZWVsID0gZXZlbnRF
eHBlY3RlZFRoZW5OZXh0U3RlcDsKKyAgICAgICAgICAgIHRhcmdldGRpdjIub253aGVlbCA9IGV2
ZW50Tm90RXhwZWN0ZWQ7CisgICAgICAgICAgICBkb2N1bWVudC5ib2R5Lm9ud2hlZWwgPSBldmVu
dEV4cGVjdGVkOworICAgICAgICAgICAgaWYgKHdpbmRvdy5ldmVudFNlbmRlcikgeworICAgICAg
ICAgICAgICAgIHdpbmRvdy5ldmVudFNlbmRlci5tb3VzZU1vdmVUbygyMCwyMCk7CisgICAgICAg
ICAgICAgICAgd2luZG93LmV2ZW50U2VuZGVyLmxlYXBGb3J3YXJkKDEwMDApOworICAgICAgICAg
ICAgICAgIHdpbmRvdy5ldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5KDAsMTApOworICAgICAgICAg
ICAgfQorICAgICAgICB9LAorICAgICAgICBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICBkZWJ1
ZygiICAgICBXaXRoIGEgbG9jayBpbiBwbGFjZSBzZW5kIGEgY2xpY2suIikKICAgICAgICAgICAg
IHRhcmdldGRpdjEub25tb3VzZWRvd24gPSBldmVudEV4cGVjdGVkOwogICAgICAgICAgICAgdGFy
Z2V0ZGl2Mi5vbm1vdXNlZG93biA9IGV2ZW50Tm90RXhwZWN0ZWQ7CkBAIC01OSw2ICs3NCwxNyBA
QAogICAgICAgICAgICAgLy8gZG9OZXh0U3RlcCgpIGNhbGxlZCBieSBvbnBvaW50ZXJsb2NrY2hh
bmdlIGhhbmRsZXIuCiAgICAgICAgIH0sCiAgICAgICAgIGZ1bmN0aW9uICgpIHsKKyAgICAgICAg
ICAgIGRlYnVnKCIgICAgIFdpdGggYSBsb2NrIGluIHBsYWNlIHNlbmQgYSB3aGVlbCBldmVudC4i
KQorICAgICAgICAgICAgdGFyZ2V0ZGl2MS5vbndoZWVsID0gZXZlbnROb3RFeHBlY3RlZDsKKyAg
ICAgICAgICAgIHRhcmdldGRpdjIub253aGVlbCA9IGV2ZW50RXhwZWN0ZWQ7CisgICAgICAgICAg
ICBkb2N1bWVudC5ib2R5Lm9ud2hlZWwgPSBldmVudEV4cGVjdGVkOworICAgICAgICAgICAgaWYg
KHdpbmRvdy5ldmVudFNlbmRlcikgeworICAgICAgICAgICAgICAgIHdpbmRvdy5ldmVudFNlbmRl
ci5sZWFwRm9yd2FyZCgxMDAwKTsKKyAgICAgICAgICAgICAgICB3aW5kb3cuZXZlbnRTZW5kZXIu
bW91c2VTY3JvbGxCeSgwLDEwKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGRvTmV4dFN0
ZXAoKTsKKyAgICAgICAgfSwKKyAgICAgICAgZnVuY3Rpb24gKCkgewogICAgICAgICAgICAgZGVi
dWcoIiAgICAgV2l0aCBhIGxvY2sgaW4gcGxhY2Ugc2VuZCBhIGNsaWNrLiIpCiAgICAgICAgICAg
ICB0YXJnZXRkaXYxLm9ubW91c2Vkb3duID0gZXZlbnROb3RFeHBlY3RlZDsKICAgICAgICAgICAg
IHRhcmdldGRpdjIub25tb3VzZWRvd24gPSBldmVudEV4cGVjdGVkOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>