<?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>158949</bug_id>
          
          <creation_ts>2016-06-20 12:15:10 -0700</creation_ts>
          <short_desc>Adopt commitPriority to get rid of the 2 AVPL solution for PiP</short_desc>
          <delta_ts>2016-06-22 14:19:32 -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>Media</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>REOPENED</bug_status>
          <resolution></resolution>
          
          
          <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>
          <dependson>158974</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jeremy Jones">jeremyj-wk</reporter>
          <assigned_to name="Jeremy Jones">jeremyj-wk</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>jer.noble</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1203827</commentid>
    <comment_count>0</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2016-06-20 12:15:10 -0700</bug_when>
    <thetext>Adopt commitPriority to get rid of the 2 AVPL solution for PiP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1203829</commentid>
    <comment_count>1</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2016-06-20 12:16:43 -0700</bug_when>
    <thetext>rdar://problem/26867866</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1203830</commentid>
    <comment_count>2</comment_count>
      <attachid>281660</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2016-06-20 12:23:26 -0700</bug_when>
    <thetext>Created attachment 281660
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1203837</commentid>
    <comment_count>3</comment_count>
      <attachid>281664</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2016-06-20 12:29:14 -0700</bug_when>
    <thetext>Created attachment 281664
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1203922</commentid>
    <comment_count>4</comment_count>
      <attachid>281664</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2016-06-20 15:42:49 -0700</bug_when>
    <thetext>Comment on attachment 281664
Patch

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

&gt; Source/WebCore/platform/graphics/avfoundation/objc/VideoFullscreenLayerManager.mm:116
&gt; +            [oldContext setCommitPriority:0];
&gt; +            [newContext setCommitPriority:1];

Are these persistent on the context, or do they just affect the next commit?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1203924</commentid>
    <comment_count>5</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2016-06-20 15:51:09 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; Comment on attachment 281664 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=281664&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/graphics/avfoundation/objc/VideoFullscreenLayerManager.mm:116
&gt; &gt; +            [oldContext setCommitPriority:0];
&gt; &gt; +            [newContext setCommitPriority:1];
&gt; 
&gt; Are these persistent on the context, or do they just affect the next commit?

As far as I can tell they are persistent.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1203926</commentid>
    <comment_count>6</comment_count>
      <attachid>281664</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-20 15:55:24 -0700</bug_when>
    <thetext>Comment on attachment 281664
Patch

Rejecting attachment 281664 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-02&apos;, &apos;validate-changelog&apos;, &apos;--check-oops&apos;, &apos;--non-interactive&apos;, 281664, &apos;--port=mac&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

/Volumes/Data/EWS/WebKit/LayoutTests/ChangeLog neither lists a valid reviewer nor contains the string &quot;Unreviewed&quot; or &quot;Rubber stamp&quot; (case insensitive).

Full output: http://webkit-queues.webkit.org/results/1538621</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1203939</commentid>
    <comment_count>7</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2016-06-20 16:30:20 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/202252</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1204021</commentid>
    <comment_count>8</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2016-06-20 20:22:15 -0700</bug_when>
    <thetext>Rolling out (see rdar://problem/26867866 for details).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1204024</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-20 20:23:36 -0700</bug_when>
    <thetext>Re-opened since this is blocked by bug 158974</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1204664</commentid>
    <comment_count>10</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2016-06-22 14:19:32 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/202350</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>281660</attachid>
            <date>2016-06-20 12:23:26 -0700</date>
            <delta_ts>2016-06-20 12:29:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-158949-20160620122320.patch</filename>
            <type>text/plain</type>
            <size>17718</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAyMTQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTg5M2M5MWEwMDc0ZTZl
OWQwOWE2ZjBiZDM4NjY1Y2NjNGRiMmRkOC4uMzgzZGQzNDNiMzQwYTY3MDMzNGJmYTFjYzg2ZWZk
MTYwYWFmMjdkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE2LTA2LTIwICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBBZG9wdCBjb21taXRQcmlv
cml0eSB0byBnZXQgcmlkIG9mIHRoZSAyIEFWUEwgc29sdXRpb24gZm9yIFBpUAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4OTQ5CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1
c2UgdGhlcmUgaXMgbm8gYmVoYXZpb3IgY2hhbmdlLiBUaGlzIHJldmVydHMgY2hhbmdlcyBmcm9t
IAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4MTQ4
IGFuZCBpbnN0ZWFkIHVzZXMgLVtDQUNvbnRleHQgY29tbWl0UHJpb3JpdHk6XQorICAgICAgICB0
byBwcmV2ZW50IGZsaWNrZXIgd2hlbiBtb3ZpbmcgYSBsYXllciBiZXR3ZWVuIGNvbnRleHRzLiAK
KyAgICAgICAgY29tbWl0UHJpb3JpdHkgYWxsb3dzIHRoZSBsYXllciB0byBiZSBhZGRlZCB0byB0
aGUgZGVzdGluYXRpb24gY29udGV4dCBiZWZvcmUgaXQgaXMgCisgICAgICAgIHJlbW92ZWQgZnJv
bSB0aGUgc291cmNlIGNvbnRleHQuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLmg6IHJlbW92
ZSBtX3NlY29uZGFyeVZpZGVvTGF5ZXIuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZm
b3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbTogZGl0
dG8KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6
OnNldFZpZGVvRnVsbHNjcmVlbkdyYXZpdHkpOiBkaXR0by4KKyAgICAgICAgKFdlYkNvcmU6Ok1l
ZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OnN5bmNUZXh0VHJhY2tCb3VuZHMpOiBk
aXR0by4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9i
akM6OmRlc3Ryb3lWaWRlb0xheWVyKTogZGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBs
YXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjp1cGRhdGVWaWRlb0xheWVyR3Jhdml0eSk6IGRp
dHRvLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlh
UGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5tbTogZGl0dG8KKyAgICAgICAgKFdlYkNv
cmU6Ok1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQzo6YWRkRGlzcGxheUxheWVy
KTogZGl0dG8KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9N
ZWRpYVBsYXllclByaXZhdGVNZWRpYVN0cmVhbUFWRk9iakMubW06IGRpdHRvCisgICAgICAgIChX
ZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVNZWRpYVN0cmVhbUFWRk9iakM6OmNyZWF0ZVByZXZp
ZXdMYXllcnMpOmRpdHRvCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9u
L29iamMvVmlkZW9GdWxsc2NyZWVuTGF5ZXJNYW5hZ2VyLmg6IGRpdHRvCisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvVmlkZW9GdWxsc2NyZWVuTGF5ZXJNYW5h
Z2VyLm1tOiBkaXR0bworICAgICAgICAoV2ViQ29yZTo6VmlkZW9GdWxsc2NyZWVuTGF5ZXJNYW5h
Z2VyOjpzZXRWaWRlb0xheWVyKTogZGl0dG8KKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvRnVsbHNj
cmVlbkxheWVyTWFuYWdlcjo6c2V0VmlkZW9GdWxsc2NyZWVuTGF5ZXIpOiBkaXR0byBhbmQgYWRv
cHQgY29tbWl0UHJpb3JpdHkuCisgICAgICAgIChXZWJDb3JlOjpWaWRlb0Z1bGxzY3JlZW5MYXll
ck1hbmFnZXI6OnNldFZpZGVvRnVsbHNjcmVlbkZyYW1lKTogZGl0dG8KKyAgICAgICAgKFdlYkNv
cmU6OlZpZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdlcjo6c2V0VmlkZW9MYXllcnMpOiBEZWxldGVk
LiAKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdlcjo6ZGlkRGVz
dHJveVZpZGVvTGF5ZXIpOiByZW1vdmUgbV9zZWNvbmRhcnlWaWRlb0xheWVyLgorICAgICAgICAq
IHBsYXRmb3JtL3NwaS9jb2NvYS9RdWFydHpDb3JlU1BJLmg6IEFkZCBjb21taXRQcmlvcml0eS4K
KwogMjAxNi0wNi0xNiAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAog
ICAgICAgICBbaU9TXSBGb2N1cyBldmVudCBkaXNwYXRjaGVkIGluIGlmcmFtZSBjYXVzZXMgcGFy
ZW50IGRvY3VtZW50IHRvIHNjcm9sbCBpbmNvcnJlY3RseQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2
YXRlQVZGb3VuZGF0aW9uT2JqQy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
YXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5oCmlu
ZGV4IDk4ZTU1N2U2ZjI2YTdhYzdhM2I5ZjUxMDM3MjVlZDUyZjI5MmZjNzEuLmI1Mzg5N2ZkMjRj
ZTY4N2VkYzA1OTQwYzA4ZDBiZTlmZjMyMzE5YjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFW
Rm91bmRhdGlvbk9iakMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLmgKQEAg
LTM0MCw3ICszNDAsNiBAQCBwcml2YXRlOgogICAgIFJldGFpblB0cjxBVlBsYXllcj4gbV9hdlBs
YXllcjsKICAgICBSZXRhaW5QdHI8QVZQbGF5ZXJJdGVtPiBtX2F2UGxheWVySXRlbTsKICAgICBS
ZXRhaW5QdHI8QVZQbGF5ZXJMYXllcj4gbV92aWRlb0xheWVyOwotICAgIFJldGFpblB0cjxBVlBs
YXllckxheWVyPiBtX3NlY29uZGFyeVZpZGVvTGF5ZXI7CiAjaWYgUExBVEZPUk0oSU9TKSB8fCAo
UExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQogICAgIHN0
ZDo6dW5pcXVlX3B0cjxWaWRlb0Z1bGxzY3JlZW5MYXllck1hbmFnZXI+IG1fdmlkZW9GdWxsc2Ny
ZWVuTGF5ZXJNYW5hZ2VyOwogICAgIE1lZGlhUGxheWVyOjpWaWRlb0dyYXZpdHkgbV92aWRlb0Z1
bGxzY3JlZW5HcmF2aXR5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2Jq
Qy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpj
L01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMubW0KaW5kZXggMWY5MDYyM2E0YTgy
Mzg2NmRjYjUzM2MzZTBhOWRkMjhlMTk5NmEwYy4uYTJmMjg2MDc0YWFhZDNlYWE0NmMxY2RjMzI2
NzBhZjFmMmJjZTEyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5t
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2Jq
Yy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tCkBAIC03MzQsMjUgKzczNCwx
NyBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OmNyZWF0ZUFWUGxh
eWVyTGF5ZXIoKQogICAgIFttX3ZpZGVvTGF5ZXIgc2V0UGxheWVyOm1fYXZQbGF5ZXIuZ2V0KCld
OwogICAgIFttX3ZpZGVvTGF5ZXIgc2V0QmFja2dyb3VuZENvbG9yOmNhY2hlZENHQ29sb3IoQ29s
b3I6OmJsYWNrKV07CiAKLSNpZiBQTEFURk9STShNQUMpCi0gICAgbV9zZWNvbmRhcnlWaWRlb0xh
eWVyID0gYWRvcHROUyhbYWxsb2NBVlBsYXllckxheWVySW5zdGFuY2UoKSBpbml0XSk7Ci0gICAg
W21fc2Vjb25kYXJ5VmlkZW9MYXllciBzZXRQbGF5ZXI6bV9hdlBsYXllci5nZXQoKV07Ci0gICAg
W21fc2Vjb25kYXJ5VmlkZW9MYXllciBzZXRCYWNrZ3JvdW5kQ29sb3I6Y2FjaGVkQ0dDb2xvcihD
b2xvcjo6YmxhY2spXTsKLSNlbmRpZgotCiAjaWZuZGVmIE5ERUJVRwogICAgIFttX3ZpZGVvTGF5
ZXIgc2V0TmFtZTpAIk1lZGlhUGxheWVyUHJpdmF0ZSBBVlBsYXllckxheWVyIl07Ci0gICAgW21f
c2Vjb25kYXJ5VmlkZW9MYXllciBzZXROYW1lOkAiTWVkaWFQbGF5ZXJQcml2YXRlIEFWUGxheWVy
TGF5ZXIgc2Vjb25kYXJ5Il07CiAjZW5kaWYKICAgICBbbV92aWRlb0xheWVyIGFkZE9ic2VydmVy
Om1fb2JqY09ic2VydmVyLmdldCgpIGZvcktleVBhdGg6QCJyZWFkeUZvckRpc3BsYXkiIG9wdGlv
bnM6TlNLZXlWYWx1ZU9ic2VydmluZ09wdGlvbk5ldyBjb250ZXh0Oih2b2lkICopTWVkaWFQbGF5
ZXJBVkZvdW5kYXRpb25PYnNlcnZhdGlvbkNvbnRleHRBVlBsYXllckxheWVyXTsKICAgICB1cGRh
dGVWaWRlb0xheWVyR3Jhdml0eSgpOwogICAgIFttX3ZpZGVvTGF5ZXIgc2V0Q29udGVudHNTY2Fs
ZTpwbGF5ZXIoKS0+Y2xpZW50KCkubWVkaWFQbGF5ZXJDb250ZW50c1NjYWxlKCldOwotICAgIFtt
X3NlY29uZGFyeVZpZGVvTGF5ZXIgc2V0Q29udGVudHNTY2FsZTpwbGF5ZXIoKS0+Y2xpZW50KCku
bWVkaWFQbGF5ZXJDb250ZW50c1NjYWxlKCldOwogICAgIEludFNpemUgZGVmYXVsdFNpemUgPSBz
bmFwcGVkSW50UmVjdChwbGF5ZXIoKS0+Y2xpZW50KCkubWVkaWFQbGF5ZXJDb250ZW50Qm94UmVj
dCgpKS5zaXplKCk7CiAgICAgTE9HKE1lZGlhLCAiTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0
aW9uT2JqQzo6Y3JlYXRlVmlkZW9MYXllciglcCkgLSByZXR1cm5pbmcgJXAiLCB0aGlzLCBtX3Zp
ZGVvTGF5ZXIuZ2V0KCkpOwogCiAjaWYgUExBVEZPUk0oSU9TKSB8fCAoUExBVEZPUk0oTUFDKSAm
JiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQotICAgIG1fdmlkZW9GdWxsc2NyZWVu
TGF5ZXJNYW5hZ2VyLT5zZXRWaWRlb0xheWVycyhtX3ZpZGVvTGF5ZXIuZ2V0KCksIG1fc2Vjb25k
YXJ5VmlkZW9MYXllci5nZXQoKSwgZGVmYXVsdFNpemUpOworICAgIG1fdmlkZW9GdWxsc2NyZWVu
TGF5ZXJNYW5hZ2VyLT5zZXRWaWRlb0xheWVyKG1fdmlkZW9MYXllci5nZXQoKSwgZGVmYXVsdFNp
emUpOwogCiAjaWYgUExBVEZPUk0oSU9TKQogICAgIGlmIChbbV92aWRlb0xheWVyIHJlc3BvbmRz
VG9TZWxlY3RvcjpAc2VsZWN0b3Ioc2V0UElQTW9kZUVuYWJsZWQ6KV0pCkBAIC03NjAsNyArNzUy
LDYgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjpjcmVhdGVBVlBs
YXllckxheWVyKCkKICNlbmRpZgogI2Vsc2UKICAgICBbbV92aWRlb0xheWVyIHNldEZyYW1lOkNH
UmVjdE1ha2UoMCwgMCwgZGVmYXVsdFNpemUud2lkdGgoKSwgZGVmYXVsdFNpemUuaGVpZ2h0KCkp
XTsKLSAgICBbbV9zZWNvbmRhcnlWaWRlb0xheWVyIHNldEZyYW1lOkNHUmVjdE1ha2UoMCwgMCwg
ZGVmYXVsdFNpemUud2lkdGgoKSwgZGVmYXVsdFNpemUuaGVpZ2h0KCkpXTsKICNlbmRpZgogfQog
CkBAIC03NzMsMTQgKzc2NCwxMiBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlv
bk9iakM6OmRlc3Ryb3lWaWRlb0xheWVyKCkKIAogICAgIFttX3ZpZGVvTGF5ZXIgcmVtb3ZlT2Jz
ZXJ2ZXI6bV9vYmpjT2JzZXJ2ZXIuZ2V0KCkgZm9yS2V5UGF0aDpAInJlYWR5Rm9yRGlzcGxheSJd
OwogICAgIFttX3ZpZGVvTGF5ZXIgc2V0UGxheWVyOm5pbF07Ci0gICAgW21fc2Vjb25kYXJ5Vmlk
ZW9MYXllciBzZXRQbGF5ZXI6bmlsXTsKIAogI2lmIFBMQVRGT1JNKElPUykgfHwgKFBMQVRGT1JN
KE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKICAgICBtX3ZpZGVvRnVs
bHNjcmVlbkxheWVyTWFuYWdlci0+ZGlkRGVzdHJveVZpZGVvTGF5ZXIoKTsKICNlbmRpZgogCiAg
ICAgbV92aWRlb0xheWVyID0gbmlsOwotICAgIG1fc2Vjb25kYXJ5VmlkZW9MYXllciA9IG5pbDsK
IH0KIAogTWVkaWFUaW1lIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OmdldFN0
YXJ0RGF0ZSgpIGNvbnN0CkBAIC0xMjMxLDggKzEyMjAsNyBAQCB2b2lkIE1lZGlhUGxheWVyUHJp
dmF0ZUFWRm91bmRhdGlvbk9iakM6OnNldFZpZGVvRnVsbHNjcmVlbkdyYXZpdHkoTWVkaWFQbGF5
ZXI6OgogewogICAgIG1fdmlkZW9GdWxsc2NyZWVuR3Jhdml0eSA9IGdyYXZpdHk7CiAKLSAgICBh
dXRvIGFjdGl2ZUxheWVyID0gbV9zZWNvbmRhcnlWaWRlb0xheWVyLmdldCgpID86IG1fdmlkZW9M
YXllci5nZXQoKTsKLSAgICBpZiAoIWFjdGl2ZUxheWVyKQorICAgIGlmICghbV92aWRlb0xheWVy
KQogICAgICAgICByZXR1cm47CiAKICAgICBOU1N0cmluZyAqdmlkZW9HcmF2aXR5ID0gQVZMYXll
clZpZGVvR3Jhdml0eVJlc2l6ZUFzcGVjdDsKQEAgLTEyNDUsMTAgKzEyMzMsMTAgQEAgdm9pZCBN
ZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjpzZXRWaWRlb0Z1bGxzY3JlZW5HcmF2
aXR5KE1lZGlhUGxheWVyOjoKICAgICBlbHNlCiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OwogICAgIAotICAgIGlmIChbYWN0aXZlTGF5ZXIgdmlkZW9HcmF2aXR5XSA9PSB2aWRlb0dyYXZp
dHkpCisgICAgaWYgKFttX3ZpZGVvTGF5ZXIgdmlkZW9HcmF2aXR5XSA9PSB2aWRlb0dyYXZpdHkp
CiAgICAgICAgIHJldHVybjsKIAotICAgIFthY3RpdmVMYXllciBzZXRWaWRlb0dyYXZpdHk6dmlk
ZW9HcmF2aXR5XTsKKyAgICBbbV92aWRlb0xheWVyIHNldFZpZGVvR3Jhdml0eTp2aWRlb0dyYXZp
dHldOwogICAgIHN5bmNUZXh0VHJhY2tCb3VuZHMoKTsKIH0KIApAQCAtMTkwMSw3ICsxODg5LDYg
QEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjp1cGRhdGVWaWRlb0xh
eWVyR3Jhdml0eSgpCiAgICAgW0NBVHJhbnNhY3Rpb24gc2V0RGlzYWJsZUFjdGlvbnM6WUVTXTsg
ICAgCiAgICAgTlNTdHJpbmcqIGdyYXZpdHkgPSBzaG91bGRNYWludGFpbkFzcGVjdFJhdGlvKCkg
PyBBVkxheWVyVmlkZW9HcmF2aXR5UmVzaXplQXNwZWN0IDogQVZMYXllclZpZGVvR3Jhdml0eVJl
c2l6ZTsKICAgICBbbV92aWRlb0xheWVyLmdldCgpIHNldFZpZGVvR3Jhdml0eTpncmF2aXR5XTsK
LSAgICBbbV9zZWNvbmRhcnlWaWRlb0xheWVyLmdldCgpIHNldFZpZGVvR3Jhdml0eTpncmF2aXR5
XTsKICAgICBbQ0FUcmFuc2FjdGlvbiBjb21taXRdOwogfQogCkBAIC0yMTk3LDggKzIxODQsNyBA
QCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OnN5bmNUZXh0VHJhY2tC
b3VuZHMoKQogICAgICAgICByZXR1cm47CiAKICAgICBGbG9hdFJlY3QgdmlkZW9GdWxsc2NyZWVu
RnJhbWUgPSBtX3ZpZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdlci0+dmlkZW9GdWxsc2NyZWVuRnJh
bWUoKTsKLSAgICBhdXRvIGFjdGl2ZUxheWVyID0gbV9zZWNvbmRhcnlWaWRlb0xheWVyLmdldCgp
ID86IG1fdmlkZW9MYXllci5nZXQoKTsKLSAgICBDR1JlY3QgdGV4dEZyYW1lID0gYWN0aXZlTGF5
ZXIgPyBbYWN0aXZlTGF5ZXIgdmlkZW9SZWN0XSA6IENHUmVjdE1ha2UoMCwgMCwgdmlkZW9GdWxs
c2NyZWVuRnJhbWUud2lkdGgoKSwgdmlkZW9GdWxsc2NyZWVuRnJhbWUuaGVpZ2h0KCkpOworICAg
IENHUmVjdCB0ZXh0RnJhbWUgPSBtX3ZpZGVvTGF5ZXIgPyBbbV92aWRlb0xheWVyIHZpZGVvUmVj
dF0gOiBDR1JlY3RNYWtlKDAsIDAsIHZpZGVvRnVsbHNjcmVlbkZyYW1lLndpZHRoKCksIHZpZGVv
RnVsbHNjcmVlbkZyYW1lLmhlaWdodCgpKTsKICAgICBbbV90ZXh0VHJhY2tSZXByZXNlbnRhdGlv
bkxheWVyIHNldEZyYW1lOnRleHRGcmFtZV07CiAjZW5kaWYKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVy
UHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZG
T2JqQy5tbQppbmRleCAwNWFiMjBkMGYxOWI3NTAwYTQ0NzhhZDQ2ZDQ4N2QwMDY0NmRhODU2Li42
ZTEzNjJiMmE0MDFkZTlmYzg2NDJiYzBhMDI5YzQ2NGFmMDkxYzYwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXll
clByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3Vy
Y2VBVkZPYmpDLm1tCkBAIC03NTUsNyArNzU1LDcgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVN
ZWRpYVNvdXJjZUFWRk9iakM6OmFkZERpc3BsYXlMYXllcihBVlNhbXBsZUJ1ZmZlckRpc3BsYXkK
ICAgICBtX3BsYXllci0+Zmlyc3RWaWRlb0ZyYW1lQXZhaWxhYmxlKCk7CiAKICNpZiBQTEFURk9S
TShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKLSAgICBtX3ZpZGVvRnVs
bHNjcmVlbkxheWVyTWFuYWdlci0+c2V0VmlkZW9MYXllcnMobV9zYW1wbGVCdWZmZXJEaXNwbGF5
TGF5ZXIuZ2V0KCksIG5pbCwgc25hcHBlZEludFJlY3QobV9wbGF5ZXItPmNsaWVudCgpLm1lZGlh
UGxheWVyQ29udGVudEJveFJlY3QoKSkuc2l6ZSgpKTsKKyAgICBtX3ZpZGVvRnVsbHNjcmVlbkxh
eWVyTWFuYWdlci0+c2V0VmlkZW9MYXllcihtX3NhbXBsZUJ1ZmZlckRpc3BsYXlMYXllci5nZXQo
KSwgc25hcHBlZEludFJlY3QobV9wbGF5ZXItPmNsaWVudCgpLm1lZGlhUGxheWVyQ29udGVudEJv
eFJlY3QoKSkuc2l6ZSgpKTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVN
ZWRpYVN0cmVhbUFWRk9iakMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVN0cmVhbUFWRk9iakMubW0K
aW5kZXggODRjN2Q2MjMyNGY2NDcxMWUxNjVlNTI0M2RmODhmMjFhNTBlZDdlOS4uODgxYzNlMDQ4
NzFkY2M1NDYwNTU0Y2Q0YmZlZmI2NjM2ZDRiNDk5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRl
TWVkaWFTdHJlYW1BVkZPYmpDLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU3RyZWFtQVZGT2Jq
Qy5tbQpAQCAtNDA0LDcgKzQwNCw3IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTdHJl
YW1BVkZPYmpDOjpjcmVhdGVQcmV2aWV3TGF5ZXJzKCkKICAgICAgICAgbV92aWRlb0JhY2tncm91
bmRMYXllci5nZXQoKS5uYW1lID0gQCJNZWRpYVBsYXllclByaXZhdGVNZWRpYVN0cmVhbUFWRk9i
akMgcHJldmlldyBiYWNrZ3JvdW5kIGxheWVyIjsKIAogI2lmIFBMQVRGT1JNKE1BQykgJiYgRU5B
QkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQotICAgICAgICBtX3ZpZGVvRnVsbHNjcmVlbkxh
eWVyTWFuYWdlci0+c2V0VmlkZW9MYXllcnMobV92aWRlb0JhY2tncm91bmRMYXllci5nZXQoKSwg
bmlsLCBzbmFwcGVkSW50UmVjdChtX3BsYXllci0+Y2xpZW50KCkubWVkaWFQbGF5ZXJDb250ZW50
Qm94UmVjdCgpKS5zaXplKCkpOworICAgICAgICBtX3ZpZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdl
ci0+c2V0VmlkZW9MYXllcihtX3ZpZGVvQmFja2dyb3VuZExheWVyLmdldCgpLCBzbmFwcGVkSW50
UmVjdChtX3BsYXllci0+Y2xpZW50KCkubWVkaWFQbGF5ZXJDb250ZW50Qm94UmVjdCgpKS5zaXpl
KCkpOwogI2VuZGlmCiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9WaWRlb0Z1bGxzY3JlZW5MYXllck1hbmFnZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1Zp
ZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdlci5oCmluZGV4IGZlNDAwN2VlOTkyNWVmNjQ1MWI0YjAx
OWYxYzZhMzVjMWFhZmNjNmYuLjI3ZDU2ZGZlY2ZlN2UxODE1OTg3MjJhZDQ3YTNkODU3Y2I1NTU2
MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRh
dGlvbi9vYmpjL1ZpZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1ZpZGVvRnVsbHNjcmVlbkxh
eWVyTWFuYWdlci5oCkBAIC00NCw3ICs0NCw3IEBAIHB1YmxpYzoKICAgICBQbGF0Zm9ybUxheWVy
ICp2aWRlb0lubGluZUxheWVyKCkgY29uc3QgeyByZXR1cm4gbV92aWRlb0lubGluZUxheWVyLmdl
dCgpOyB9CiAgICAgUGxhdGZvcm1MYXllciAqdmlkZW9GdWxsc2NyZWVuTGF5ZXIoKSBjb25zdCB7
IHJldHVybiBtX3ZpZGVvRnVsbHNjcmVlbkxheWVyLmdldCgpOyB9CiAgICAgRmxvYXRSZWN0IHZp
ZGVvRnVsbHNjcmVlbkZyYW1lKCkgY29uc3QgeyByZXR1cm4gbV92aWRlb0Z1bGxzY3JlZW5GcmFt
ZTsgfQotICAgIHZvaWQgc2V0VmlkZW9MYXllcnMoUGxhdGZvcm1MYXllciAqLCBQbGF0Zm9ybUxh
eWVyICosIEludFNpemUgY29udGVudFNpemUpOworICAgIHZvaWQgc2V0VmlkZW9MYXllcihQbGF0
Zm9ybUxheWVyICosIEludFNpemUgY29udGVudFNpemUpOwogICAgIHZvaWQgc2V0VmlkZW9GdWxs
c2NyZWVuTGF5ZXIoUGxhdGZvcm1MYXllciAqLCBzdGQ6OmZ1bmN0aW9uPHZvaWQoKT4gY29tcGxl
dGlvbkhhbmRsZXIpOwogICAgIHZvaWQgc2V0VmlkZW9GdWxsc2NyZWVuRnJhbWUoRmxvYXRSZWN0
KTsKICAgICB2b2lkIGRpZERlc3Ryb3lWaWRlb0xheWVyKCk7CkBAIC01NSw3ICs1NSw2IEBAIHBy
aXZhdGU6CiAgICAgUmV0YWluUHRyPFBsYXRmb3JtTGF5ZXI+IG1fdmlkZW9JbmxpbmVMYXllcjsK
ICAgICBSZXRhaW5QdHI8UGxhdGZvcm1MYXllcj4gbV92aWRlb0Z1bGxzY3JlZW5MYXllcjsKICAg
ICBSZXRhaW5QdHI8UGxhdGZvcm1MYXllcj4gbV92aWRlb0xheWVyOwotICAgIFJldGFpblB0cjxQ
bGF0Zm9ybUxheWVyPiBtX3NlY29uZGFyeVZpZGVvTGF5ZXI7CiAgICAgRmxvYXRSZWN0IG1fdmlk
ZW9GdWxsc2NyZWVuRnJhbWU7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9WaWRlb0Z1bGxzY3JlZW5MYXllck1hbmFn
ZXIubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2Jq
Yy9WaWRlb0Z1bGxzY3JlZW5MYXllck1hbmFnZXIubW0KaW5kZXggMGNkMTcyZjFjODNjZjUzYmVm
ZDRiZTEyN2FmYTA5YWYzOGMwNDdhYS4uOGFmMjEwYjgzOGU0NzUyNGRlNzU1MGM4YTI5MGMxMWUy
NDFiZDJkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZm
b3VuZGF0aW9uL29iamMvVmlkZW9GdWxsc2NyZWVuTGF5ZXJNYW5hZ2VyLm1tCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1ZpZGVvRnVsbHNj
cmVlbkxheWVyTWFuYWdlci5tbQpAQCAtNjYsMjcgKzY2LDIyIEBAIFZpZGVvRnVsbHNjcmVlbkxh
eWVyTWFuYWdlcjo6VmlkZW9GdWxsc2NyZWVuTGF5ZXJNYW5hZ2VyKCkKIHsKIH0KIAotdm9pZCBW
aWRlb0Z1bGxzY3JlZW5MYXllck1hbmFnZXI6OnNldFZpZGVvTGF5ZXJzKFBsYXRmb3JtTGF5ZXIg
KnZpZGVvTGF5ZXIsIFBsYXRmb3JtTGF5ZXIgKnNlY29uZGFyeVZpZGVvTGF5ZXIsIEludFNpemUg
Y29udGVudFNpemUpCit2b2lkIFZpZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdlcjo6c2V0VmlkZW9M
YXllcihQbGF0Zm9ybUxheWVyICp2aWRlb0xheWVyLCBJbnRTaXplIGNvbnRlbnRTaXplKQogewog
ICAgIG1fdmlkZW9MYXllciA9IHZpZGVvTGF5ZXI7Ci0gICAgbV9zZWNvbmRhcnlWaWRlb0xheWVy
ID0gc2Vjb25kYXJ5VmlkZW9MYXllcjsKIAogICAgIFttX3ZpZGVvTGF5ZXIgd2ViX2Rpc2FibGVB
bGxBY3Rpb25zXTsKLSAgICBbbV9zZWNvbmRhcnlWaWRlb0xheWVyIHdlYl9kaXNhYmxlQWxsQWN0
aW9uc107CiAgICAgbV92aWRlb0lubGluZUxheWVyID0gYWRvcHROUyhbW1dlYlZpZGVvQ29udGFp
bmVyTGF5ZXIgYWxsb2NdIGluaXRdKTsKICNpZm5kZWYgTkRFQlVHCiAgICAgW21fdmlkZW9Jbmxp
bmVMYXllciBzZXROYW1lOkAiV2ViVmlkZW9Db250YWluZXJMYXllciJdOwogI2VuZGlmCiAgICAg
W21fdmlkZW9JbmxpbmVMYXllciBzZXRGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIGNvbnRlbnRTaXpl
LndpZHRoKCksIGNvbnRlbnRTaXplLmhlaWdodCgpKV07CiAgICAgaWYgKG1fdmlkZW9GdWxsc2Ny
ZWVuTGF5ZXIpIHsKLSAgICAgICAgW21fdmlkZW9MYXllciByZW1vdmVGcm9tU3VwZXJsYXllcl07
Ci0gICAgICAgIFBsYXRmb3JtTGF5ZXIgKmFjdGl2ZUxheWVyID0gc2Vjb25kYXJ5VmlkZW9MYXll
ciA/IHNlY29uZGFyeVZpZGVvTGF5ZXIgOiB2aWRlb0xheWVyOwotICAgICAgICBbYWN0aXZlTGF5
ZXIgc2V0RnJhbWU6Q0dSZWN0TWFrZSgwLCAwLCBtX3ZpZGVvRnVsbHNjcmVlbkZyYW1lLndpZHRo
KCksIG1fdmlkZW9GdWxsc2NyZWVuRnJhbWUuaGVpZ2h0KCkpXTsKLSAgICAgICAgW21fdmlkZW9G
dWxsc2NyZWVuTGF5ZXIgaW5zZXJ0U3VibGF5ZXI6YWN0aXZlTGF5ZXIgYXRJbmRleDowXTsKKyAg
ICAgICAgW21fdmlkZW9MYXllciBzZXRGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIG1fdmlkZW9GdWxs
c2NyZWVuRnJhbWUud2lkdGgoKSwgbV92aWRlb0Z1bGxzY3JlZW5GcmFtZS5oZWlnaHQoKSldOwor
ICAgICAgICBbbV92aWRlb0Z1bGxzY3JlZW5MYXllciBpbnNlcnRTdWJsYXllcjptX3ZpZGVvTGF5
ZXIuZ2V0KCkgYXRJbmRleDowXTsKICAgICB9IGVsc2UgewogICAgICAgICBbbV92aWRlb0lubGlu
ZUxheWVyIGluc2VydFN1YmxheWVyOm1fdmlkZW9MYXllci5nZXQoKSBhdEluZGV4OjBdOwogICAg
ICAgICBbbV92aWRlb0xheWVyIHNldEZyYW1lOm1fdmlkZW9JbmxpbmVMYXllci5nZXQoKS5ib3Vu
ZHNdOwotICAgICAgICBbbV9zZWNvbmRhcnlWaWRlb0xheWVyIHJlbW92ZUZyb21TdXBlcmxheWVy
XTsKICAgICB9CiB9CiAKQEAgLTEwMiw0NyArOTcsMjQgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5M
YXllck1hbmFnZXI6OnNldFZpZGVvRnVsbHNjcmVlbkxheWVyKFBsYXRmb3JtTGF5ZXIgKnZpZGVv
RnUKICAgICBbQ0FUcmFuc2FjdGlvbiBiZWdpbl07CiAgICAgW0NBVHJhbnNhY3Rpb24gc2V0RGlz
YWJsZUFjdGlvbnM6WUVTXTsKIAotICAgIGlmIChtX3NlY29uZGFyeVZpZGVvTGF5ZXIgJiYgbV92
aWRlb0xheWVyKSB7Ci0gICAgICAgIGlmIChtX3ZpZGVvRnVsbHNjcmVlbkxheWVyKSB7Ci0gICAg
ICAgICAgICBbbV92aWRlb0Z1bGxzY3JlZW5MYXllciBpbnNlcnRTdWJsYXllcjptX3NlY29uZGFy
eVZpZGVvTGF5ZXIuZ2V0KCkgYXRJbmRleDowXTsKLSAgICAgICAgICAgIFttX3NlY29uZGFyeVZp
ZGVvTGF5ZXIgc2V0RnJhbWU6Q0dSZWN0TWFrZSgwLCAwLCBtX3ZpZGVvRnVsbHNjcmVlbkZyYW1l
LndpZHRoKCksIG1fdmlkZW9GdWxsc2NyZWVuRnJhbWUuaGVpZ2h0KCkpXTsKLSAgICAgICAgfSBl
bHNlIGlmIChtX3ZpZGVvSW5saW5lTGF5ZXIpIHsKLSAgICAgICAgICAgIFttX3ZpZGVvTGF5ZXIg
c2V0RnJhbWU6W21fdmlkZW9JbmxpbmVMYXllciBib3VuZHNdXTsKLSAgICAgICAgICAgIFttX3Zp
ZGVvSW5saW5lTGF5ZXIgaW5zZXJ0U3VibGF5ZXI6bV92aWRlb0xheWVyLmdldCgpIGF0SW5kZXg6
MF07Ci0gICAgICAgIH0KKyAgICBpZiAobV92aWRlb0xheWVyKSB7CisgICAgICAgIENBQ29udGV4
dCAqb2xkQ29udGV4dCA9IFttX3ZpZGVvTGF5ZXIgY29udGV4dF07CiAKLSAgICAgICAgUmV0YWlu
UHRyPFBsYXRmb3JtTGF5ZXI+IGZ1bGxzY3JlZW5MYXllciA9IG1fdmlkZW9GdWxsc2NyZWVuTGF5
ZXI7Ci0gICAgICAgIFJldGFpblB0cjxQbGF0Zm9ybUxheWVyPiB2aWRlb0xheWVyID0gbV92aWRl
b0xheWVyOwotICAgICAgICBSZXRhaW5QdHI8UGxhdGZvcm1MYXllcj4gc2Vjb25kYXJ5VmlkZW9M
YXllciA9IG1fc2Vjb25kYXJ5VmlkZW9MYXllcjsKLQotICAgICAgICBbQ0FUcmFuc2FjdGlvbiBz
ZXRDb21wbGV0aW9uQmxvY2s6W2NvbXBsZXRpb25IYW5kbGVyLCBmdWxsc2NyZWVuTGF5ZXIsIHZp
ZGVvTGF5ZXIsIHNlY29uZGFyeVZpZGVvTGF5ZXJdIHsKLSAgICAgICAgICAgIFtDQVRyYW5zYWN0
aW9uIGJlZ2luXTsKLSAgICAgICAgICAgIFtDQVRyYW5zYWN0aW9uIHNldERpc2FibGVBY3Rpb25z
OllFU107Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGlmIChmdWxsc2NyZWVuTGF5ZXIpCi0g
ICAgICAgICAgICAgICAgW3ZpZGVvTGF5ZXIgcmVtb3ZlRnJvbVN1cGVybGF5ZXJdOwotICAgICAg
ICAgICAgZWxzZQotICAgICAgICAgICAgICAgIFtzZWNvbmRhcnlWaWRlb0xheWVyIHJlbW92ZUZy
b21TdXBlcmxheWVyXTsKLQotICAgICAgICAgICAgW0NBVHJhbnNhY3Rpb24gc2V0Q29tcGxldGlv
bkJsb2NrOltjb21wbGV0aW9uSGFuZGxlcl0gewotICAgICAgICAgICAgICAgIGNvbXBsZXRpb25I
YW5kbGVyKCk7Ci0gICAgICAgICAgICB9XTsKLSAgICAgICAgICAgIFtDQVRyYW5zYWN0aW9uIGNv
bW1pdF07Ci0gICAgICAgIH1dOwotICAgIH0gZWxzZSBpZiAobV92aWRlb0xheWVyKSB7CiAgICAg
ICAgIGlmIChtX3ZpZGVvRnVsbHNjcmVlbkxheWVyKSB7CiAgICAgICAgICAgICBbbV92aWRlb0Z1
bGxzY3JlZW5MYXllciBpbnNlcnRTdWJsYXllcjptX3ZpZGVvTGF5ZXIuZ2V0KCkgYXRJbmRleDow
XTsKICAgICAgICAgICAgIFttX3ZpZGVvTGF5ZXIgc2V0RnJhbWU6Q0dSZWN0TWFrZSgwLCAwLCBt
X3ZpZGVvRnVsbHNjcmVlbkZyYW1lLndpZHRoKCksIG1fdmlkZW9GdWxsc2NyZWVuRnJhbWUuaGVp
Z2h0KCkpXTsKICAgICAgICAgfSBlbHNlIGlmIChtX3ZpZGVvSW5saW5lTGF5ZXIpIHsKICAgICAg
ICAgICAgIFttX3ZpZGVvTGF5ZXIgc2V0RnJhbWU6W21fdmlkZW9JbmxpbmVMYXllciBib3VuZHNd
XTsKLSAgICAgICAgICAgIFttX3ZpZGVvTGF5ZXIgcmVtb3ZlRnJvbVN1cGVybGF5ZXJdOwogICAg
ICAgICAgICAgW21fdmlkZW9JbmxpbmVMYXllciBpbnNlcnRTdWJsYXllcjptX3ZpZGVvTGF5ZXIu
Z2V0KCkgYXRJbmRleDowXTsKICAgICAgICAgfSBlbHNlCiAgICAgICAgICAgICBbbV92aWRlb0xh
eWVyIHJlbW92ZUZyb21TdXBlcmxheWVyXTsKIAotICAgICAgICBDQUNvbnRleHQgKm9sZENvbnRl
eHQgPSBbbV92aWRlb0Z1bGxzY3JlZW5MYXllciBjb250ZXh0XTsKLSAgICAgICAgQ0FDb250ZXh0
ICpuZXdDb250ZXh0ID0gW21fdmlkZW9JbmxpbmVMYXllciBjb250ZXh0XTsKKyAgICAgICAgQ0FD
b250ZXh0ICpuZXdDb250ZXh0ID0gW21fdmlkZW9MYXllciBjb250ZXh0XTsKICAgICAgICAgaWYg
KG9sZENvbnRleHQgJiYgbmV3Q29udGV4dCAmJiBvbGRDb250ZXh0ICE9IG5ld0NvbnRleHQpIHsK
KyNpZiBQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0g
MTAxMjAwCisgICAgICAgICAgICBbb2xkQ29udGV4dCBzZXRDb21taXRQcmlvcml0eTowXTsKKyAg
ICAgICAgICAgIFtuZXdDb250ZXh0IHNldENvbW1pdFByaW9yaXR5OjFdOworI2VuZGlmCiAgICAg
ICAgICAgICBtYWNoX3BvcnRfdCBmZW5jZVBvcnQgPSBbb2xkQ29udGV4dCBjcmVhdGVGZW5jZVBv
cnRdOwogICAgICAgICAgICAgW25ld0NvbnRleHQgc2V0RmVuY2VQb3J0OmZlbmNlUG9ydF07CiAg
ICAgICAgICAgICBtYWNoX3BvcnRfZGVhbGxvY2F0ZShtYWNoX3Rhc2tfc2VsZigpLCBmZW5jZVBv
cnQpOwpAQCAtMTY2LDE4ICsxMzgsMTUgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5MYXllck1hbmFn
ZXI6OnNldFZpZGVvRnVsbHNjcmVlbkZyYW1lKEZsb2F0UmVjdCB2aWRlb0Z1bGxzY3IKICAgICBp
ZiAoIW1fdmlkZW9GdWxsc2NyZWVuTGF5ZXIpCiAgICAgICAgIHJldHVybjsKIAotICAgIFBsYXRm
b3JtTGF5ZXIgKmFjdGl2ZUxheWVyID0gbV9zZWNvbmRhcnlWaWRlb0xheWVyLmdldCgpID8gbV9z
ZWNvbmRhcnlWaWRlb0xheWVyLmdldCgpIDogbV92aWRlb0xheWVyLmdldCgpOwotICAgIFthY3Rp
dmVMYXllciBzZXRGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIHZpZGVvRnVsbHNjcmVlbkZyYW1lLndp
ZHRoKCksIHZpZGVvRnVsbHNjcmVlbkZyYW1lLmhlaWdodCgpKV07CisgICAgW21fdmlkZW9MYXll
ciBzZXRGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIHZpZGVvRnVsbHNjcmVlbkZyYW1lLndpZHRoKCks
IHZpZGVvRnVsbHNjcmVlbkZyYW1lLmhlaWdodCgpKV07CiB9CiAKIHZvaWQgVmlkZW9GdWxsc2Ny
ZWVuTGF5ZXJNYW5hZ2VyOjpkaWREZXN0cm95VmlkZW9MYXllcigpCiB7CiAgICAgW21fdmlkZW9M
YXllciByZW1vdmVGcm9tU3VwZXJsYXllcl07Ci0gICAgW21fc2Vjb25kYXJ5VmlkZW9MYXllciBy
ZW1vdmVGcm9tU3VwZXJsYXllcl07CiAKICAgICBtX3ZpZGVvSW5saW5lTGF5ZXIgPSBuaWw7CiAg
ICAgbV92aWRlb0xheWVyID0gbmlsOwotICAgIG1fc2Vjb25kYXJ5VmlkZW9MYXllciA9IG5pbDsK
IH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vc3BpL2NvY29hL1F1
YXJ0ekNvcmVTUEkuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NwaS9jb2NvYS9RdWFydHpD
b3JlU1BJLmgKaW5kZXggMTI0YjBlOWExYTdjMmViYmUxMTI1ZDZmZDhhOGRkNDc4YTYyOWFkZC4u
YjFlOGNlOTY4MjQxNzQzZDgwN2M5MTBhNDIwZGFmMmU2YmZlMGMyMSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vc3BpL2NvY29hL1F1YXJ0ekNvcmVTUEkuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9zcGkvY29jb2EvUXVhcnR6Q29yZVNQSS5oCkBAIC01OSw2ICs1
OSw5IEBACiAtIChtYWNoX3BvcnRfdCljcmVhdGVGZW5jZVBvcnQ7CiAtICh2b2lkKXNldEZlbmNl
UG9ydDoobWFjaF9wb3J0X3QpcG9ydDsKIC0gKHZvaWQpc2V0RmVuY2VQb3J0OihtYWNoX3BvcnRf
dClwb3J0IGNvbW1pdEhhbmRsZXI6KHZvaWQoXikodm9pZCkpYmxvY2s7CisjaWYgUExBVEZPUk0o
TUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTIwMAorQHByb3Bl
cnR5IHVpbnQzMl90IGNvbW1pdFByaW9yaXR5OworI2VuZAogI2lmIFBMQVRGT1JNKE1BQykKIEBw
cm9wZXJ0eSBCT09MIGNvbG9yTWF0Y2hVbnRhZ2dlZENvbnRlbnQ7CiAjZW5kaWYK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>281664</attachid>
            <date>2016-06-20 12:29:14 -0700</date>
            <delta_ts>2016-06-20 15:55:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-158949-20160620122907.patch</filename>
            <type>text/plain</type>
            <size>17720</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAyMTQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTg5M2M5MWEwMDc0ZTZl
OWQwOWE2ZjBiZDM4NjY1Y2NjNGRiMmRkOC4uMzgzZGQzNDNiMzQwYTY3MDMzNGJmYTFjYzg2ZWZk
MTYwYWFmMjdkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE2LTA2LTIwICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBBZG9wdCBjb21taXRQcmlv
cml0eSB0byBnZXQgcmlkIG9mIHRoZSAyIEFWUEwgc29sdXRpb24gZm9yIFBpUAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4OTQ5CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1
c2UgdGhlcmUgaXMgbm8gYmVoYXZpb3IgY2hhbmdlLiBUaGlzIHJldmVydHMgY2hhbmdlcyBmcm9t
IAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4MTQ4
IGFuZCBpbnN0ZWFkIHVzZXMgLVtDQUNvbnRleHQgY29tbWl0UHJpb3JpdHk6XQorICAgICAgICB0
byBwcmV2ZW50IGZsaWNrZXIgd2hlbiBtb3ZpbmcgYSBsYXllciBiZXR3ZWVuIGNvbnRleHRzLiAK
KyAgICAgICAgY29tbWl0UHJpb3JpdHkgYWxsb3dzIHRoZSBsYXllciB0byBiZSBhZGRlZCB0byB0
aGUgZGVzdGluYXRpb24gY29udGV4dCBiZWZvcmUgaXQgaXMgCisgICAgICAgIHJlbW92ZWQgZnJv
bSB0aGUgc291cmNlIGNvbnRleHQuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLmg6IHJlbW92
ZSBtX3NlY29uZGFyeVZpZGVvTGF5ZXIuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZm
b3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbTogZGl0
dG8KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6
OnNldFZpZGVvRnVsbHNjcmVlbkdyYXZpdHkpOiBkaXR0by4KKyAgICAgICAgKFdlYkNvcmU6Ok1l
ZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OnN5bmNUZXh0VHJhY2tCb3VuZHMpOiBk
aXR0by4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9i
akM6OmRlc3Ryb3lWaWRlb0xheWVyKTogZGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBs
YXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjp1cGRhdGVWaWRlb0xheWVyR3Jhdml0eSk6IGRp
dHRvLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlh
UGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5tbTogZGl0dG8KKyAgICAgICAgKFdlYkNv
cmU6Ok1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQzo6YWRkRGlzcGxheUxheWVy
KTogZGl0dG8KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9N
ZWRpYVBsYXllclByaXZhdGVNZWRpYVN0cmVhbUFWRk9iakMubW06IGRpdHRvCisgICAgICAgIChX
ZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVNZWRpYVN0cmVhbUFWRk9iakM6OmNyZWF0ZVByZXZp
ZXdMYXllcnMpOmRpdHRvCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9u
L29iamMvVmlkZW9GdWxsc2NyZWVuTGF5ZXJNYW5hZ2VyLmg6IGRpdHRvCisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvVmlkZW9GdWxsc2NyZWVuTGF5ZXJNYW5h
Z2VyLm1tOiBkaXR0bworICAgICAgICAoV2ViQ29yZTo6VmlkZW9GdWxsc2NyZWVuTGF5ZXJNYW5h
Z2VyOjpzZXRWaWRlb0xheWVyKTogZGl0dG8KKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvRnVsbHNj
cmVlbkxheWVyTWFuYWdlcjo6c2V0VmlkZW9GdWxsc2NyZWVuTGF5ZXIpOiBkaXR0byBhbmQgYWRv
cHQgY29tbWl0UHJpb3JpdHkuCisgICAgICAgIChXZWJDb3JlOjpWaWRlb0Z1bGxzY3JlZW5MYXll
ck1hbmFnZXI6OnNldFZpZGVvRnVsbHNjcmVlbkZyYW1lKTogZGl0dG8KKyAgICAgICAgKFdlYkNv
cmU6OlZpZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdlcjo6c2V0VmlkZW9MYXllcnMpOiBEZWxldGVk
LiAKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdlcjo6ZGlkRGVz
dHJveVZpZGVvTGF5ZXIpOiByZW1vdmUgbV9zZWNvbmRhcnlWaWRlb0xheWVyLgorICAgICAgICAq
IHBsYXRmb3JtL3NwaS9jb2NvYS9RdWFydHpDb3JlU1BJLmg6IEFkZCBjb21taXRQcmlvcml0eS4K
KwogMjAxNi0wNi0xNiAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAog
ICAgICAgICBbaU9TXSBGb2N1cyBldmVudCBkaXNwYXRjaGVkIGluIGlmcmFtZSBjYXVzZXMgcGFy
ZW50IGRvY3VtZW50IHRvIHNjcm9sbCBpbmNvcnJlY3RseQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2
YXRlQVZGb3VuZGF0aW9uT2JqQy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
YXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5oCmlu
ZGV4IDk4ZTU1N2U2ZjI2YTdhYzdhM2I5ZjUxMDM3MjVlZDUyZjI5MmZjNzEuLmI1Mzg5N2ZkMjRj
ZTY4N2VkYzA1OTQwYzA4ZDBiZTlmZjMyMzE5YjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFW
Rm91bmRhdGlvbk9iakMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLmgKQEAg
LTM0MCw3ICszNDAsNiBAQCBwcml2YXRlOgogICAgIFJldGFpblB0cjxBVlBsYXllcj4gbV9hdlBs
YXllcjsKICAgICBSZXRhaW5QdHI8QVZQbGF5ZXJJdGVtPiBtX2F2UGxheWVySXRlbTsKICAgICBS
ZXRhaW5QdHI8QVZQbGF5ZXJMYXllcj4gbV92aWRlb0xheWVyOwotICAgIFJldGFpblB0cjxBVlBs
YXllckxheWVyPiBtX3NlY29uZGFyeVZpZGVvTGF5ZXI7CiAjaWYgUExBVEZPUk0oSU9TKSB8fCAo
UExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQogICAgIHN0
ZDo6dW5pcXVlX3B0cjxWaWRlb0Z1bGxzY3JlZW5MYXllck1hbmFnZXI+IG1fdmlkZW9GdWxsc2Ny
ZWVuTGF5ZXJNYW5hZ2VyOwogICAgIE1lZGlhUGxheWVyOjpWaWRlb0dyYXZpdHkgbV92aWRlb0Z1
bGxzY3JlZW5HcmF2aXR5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2Jq
Qy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpj
L01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMubW0KaW5kZXggMWY5MDYyM2E0YTgy
Mzg2NmRjYjUzM2MzZTBhOWRkMjhlMTk5NmEwYy4uYTJmMjg2MDc0YWFhZDNlYWE0NmMxY2RjMzI2
NzBhZjFmMmJjZTEyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5t
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2Jq
Yy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tCkBAIC03MzQsMjUgKzczNCwx
NyBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OmNyZWF0ZUFWUGxh
eWVyTGF5ZXIoKQogICAgIFttX3ZpZGVvTGF5ZXIgc2V0UGxheWVyOm1fYXZQbGF5ZXIuZ2V0KCld
OwogICAgIFttX3ZpZGVvTGF5ZXIgc2V0QmFja2dyb3VuZENvbG9yOmNhY2hlZENHQ29sb3IoQ29s
b3I6OmJsYWNrKV07CiAKLSNpZiBQTEFURk9STShNQUMpCi0gICAgbV9zZWNvbmRhcnlWaWRlb0xh
eWVyID0gYWRvcHROUyhbYWxsb2NBVlBsYXllckxheWVySW5zdGFuY2UoKSBpbml0XSk7Ci0gICAg
W21fc2Vjb25kYXJ5VmlkZW9MYXllciBzZXRQbGF5ZXI6bV9hdlBsYXllci5nZXQoKV07Ci0gICAg
W21fc2Vjb25kYXJ5VmlkZW9MYXllciBzZXRCYWNrZ3JvdW5kQ29sb3I6Y2FjaGVkQ0dDb2xvcihD
b2xvcjo6YmxhY2spXTsKLSNlbmRpZgotCiAjaWZuZGVmIE5ERUJVRwogICAgIFttX3ZpZGVvTGF5
ZXIgc2V0TmFtZTpAIk1lZGlhUGxheWVyUHJpdmF0ZSBBVlBsYXllckxheWVyIl07Ci0gICAgW21f
c2Vjb25kYXJ5VmlkZW9MYXllciBzZXROYW1lOkAiTWVkaWFQbGF5ZXJQcml2YXRlIEFWUGxheWVy
TGF5ZXIgc2Vjb25kYXJ5Il07CiAjZW5kaWYKICAgICBbbV92aWRlb0xheWVyIGFkZE9ic2VydmVy
Om1fb2JqY09ic2VydmVyLmdldCgpIGZvcktleVBhdGg6QCJyZWFkeUZvckRpc3BsYXkiIG9wdGlv
bnM6TlNLZXlWYWx1ZU9ic2VydmluZ09wdGlvbk5ldyBjb250ZXh0Oih2b2lkICopTWVkaWFQbGF5
ZXJBVkZvdW5kYXRpb25PYnNlcnZhdGlvbkNvbnRleHRBVlBsYXllckxheWVyXTsKICAgICB1cGRh
dGVWaWRlb0xheWVyR3Jhdml0eSgpOwogICAgIFttX3ZpZGVvTGF5ZXIgc2V0Q29udGVudHNTY2Fs
ZTpwbGF5ZXIoKS0+Y2xpZW50KCkubWVkaWFQbGF5ZXJDb250ZW50c1NjYWxlKCldOwotICAgIFtt
X3NlY29uZGFyeVZpZGVvTGF5ZXIgc2V0Q29udGVudHNTY2FsZTpwbGF5ZXIoKS0+Y2xpZW50KCku
bWVkaWFQbGF5ZXJDb250ZW50c1NjYWxlKCldOwogICAgIEludFNpemUgZGVmYXVsdFNpemUgPSBz
bmFwcGVkSW50UmVjdChwbGF5ZXIoKS0+Y2xpZW50KCkubWVkaWFQbGF5ZXJDb250ZW50Qm94UmVj
dCgpKS5zaXplKCk7CiAgICAgTE9HKE1lZGlhLCAiTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0
aW9uT2JqQzo6Y3JlYXRlVmlkZW9MYXllciglcCkgLSByZXR1cm5pbmcgJXAiLCB0aGlzLCBtX3Zp
ZGVvTGF5ZXIuZ2V0KCkpOwogCiAjaWYgUExBVEZPUk0oSU9TKSB8fCAoUExBVEZPUk0oTUFDKSAm
JiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQotICAgIG1fdmlkZW9GdWxsc2NyZWVu
TGF5ZXJNYW5hZ2VyLT5zZXRWaWRlb0xheWVycyhtX3ZpZGVvTGF5ZXIuZ2V0KCksIG1fc2Vjb25k
YXJ5VmlkZW9MYXllci5nZXQoKSwgZGVmYXVsdFNpemUpOworICAgIG1fdmlkZW9GdWxsc2NyZWVu
TGF5ZXJNYW5hZ2VyLT5zZXRWaWRlb0xheWVyKG1fdmlkZW9MYXllci5nZXQoKSwgZGVmYXVsdFNp
emUpOwogCiAjaWYgUExBVEZPUk0oSU9TKQogICAgIGlmIChbbV92aWRlb0xheWVyIHJlc3BvbmRz
VG9TZWxlY3RvcjpAc2VsZWN0b3Ioc2V0UElQTW9kZUVuYWJsZWQ6KV0pCkBAIC03NjAsNyArNzUy
LDYgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjpjcmVhdGVBVlBs
YXllckxheWVyKCkKICNlbmRpZgogI2Vsc2UKICAgICBbbV92aWRlb0xheWVyIHNldEZyYW1lOkNH
UmVjdE1ha2UoMCwgMCwgZGVmYXVsdFNpemUud2lkdGgoKSwgZGVmYXVsdFNpemUuaGVpZ2h0KCkp
XTsKLSAgICBbbV9zZWNvbmRhcnlWaWRlb0xheWVyIHNldEZyYW1lOkNHUmVjdE1ha2UoMCwgMCwg
ZGVmYXVsdFNpemUud2lkdGgoKSwgZGVmYXVsdFNpemUuaGVpZ2h0KCkpXTsKICNlbmRpZgogfQog
CkBAIC03NzMsMTQgKzc2NCwxMiBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlv
bk9iakM6OmRlc3Ryb3lWaWRlb0xheWVyKCkKIAogICAgIFttX3ZpZGVvTGF5ZXIgcmVtb3ZlT2Jz
ZXJ2ZXI6bV9vYmpjT2JzZXJ2ZXIuZ2V0KCkgZm9yS2V5UGF0aDpAInJlYWR5Rm9yRGlzcGxheSJd
OwogICAgIFttX3ZpZGVvTGF5ZXIgc2V0UGxheWVyOm5pbF07Ci0gICAgW21fc2Vjb25kYXJ5Vmlk
ZW9MYXllciBzZXRQbGF5ZXI6bmlsXTsKIAogI2lmIFBMQVRGT1JNKElPUykgfHwgKFBMQVRGT1JN
KE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKICAgICBtX3ZpZGVvRnVs
bHNjcmVlbkxheWVyTWFuYWdlci0+ZGlkRGVzdHJveVZpZGVvTGF5ZXIoKTsKICNlbmRpZgogCiAg
ICAgbV92aWRlb0xheWVyID0gbmlsOwotICAgIG1fc2Vjb25kYXJ5VmlkZW9MYXllciA9IG5pbDsK
IH0KIAogTWVkaWFUaW1lIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OmdldFN0
YXJ0RGF0ZSgpIGNvbnN0CkBAIC0xMjMxLDggKzEyMjAsNyBAQCB2b2lkIE1lZGlhUGxheWVyUHJp
dmF0ZUFWRm91bmRhdGlvbk9iakM6OnNldFZpZGVvRnVsbHNjcmVlbkdyYXZpdHkoTWVkaWFQbGF5
ZXI6OgogewogICAgIG1fdmlkZW9GdWxsc2NyZWVuR3Jhdml0eSA9IGdyYXZpdHk7CiAKLSAgICBh
dXRvIGFjdGl2ZUxheWVyID0gbV9zZWNvbmRhcnlWaWRlb0xheWVyLmdldCgpID86IG1fdmlkZW9M
YXllci5nZXQoKTsKLSAgICBpZiAoIWFjdGl2ZUxheWVyKQorICAgIGlmICghbV92aWRlb0xheWVy
KQogICAgICAgICByZXR1cm47CiAKICAgICBOU1N0cmluZyAqdmlkZW9HcmF2aXR5ID0gQVZMYXll
clZpZGVvR3Jhdml0eVJlc2l6ZUFzcGVjdDsKQEAgLTEyNDUsMTAgKzEyMzMsMTAgQEAgdm9pZCBN
ZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjpzZXRWaWRlb0Z1bGxzY3JlZW5HcmF2
aXR5KE1lZGlhUGxheWVyOjoKICAgICBlbHNlCiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OwogICAgIAotICAgIGlmIChbYWN0aXZlTGF5ZXIgdmlkZW9HcmF2aXR5XSA9PSB2aWRlb0dyYXZp
dHkpCisgICAgaWYgKFttX3ZpZGVvTGF5ZXIgdmlkZW9HcmF2aXR5XSA9PSB2aWRlb0dyYXZpdHkp
CiAgICAgICAgIHJldHVybjsKIAotICAgIFthY3RpdmVMYXllciBzZXRWaWRlb0dyYXZpdHk6dmlk
ZW9HcmF2aXR5XTsKKyAgICBbbV92aWRlb0xheWVyIHNldFZpZGVvR3Jhdml0eTp2aWRlb0dyYXZp
dHldOwogICAgIHN5bmNUZXh0VHJhY2tCb3VuZHMoKTsKIH0KIApAQCAtMTkwMSw3ICsxODg5LDYg
QEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjp1cGRhdGVWaWRlb0xh
eWVyR3Jhdml0eSgpCiAgICAgW0NBVHJhbnNhY3Rpb24gc2V0RGlzYWJsZUFjdGlvbnM6WUVTXTsg
ICAgCiAgICAgTlNTdHJpbmcqIGdyYXZpdHkgPSBzaG91bGRNYWludGFpbkFzcGVjdFJhdGlvKCkg
PyBBVkxheWVyVmlkZW9HcmF2aXR5UmVzaXplQXNwZWN0IDogQVZMYXllclZpZGVvR3Jhdml0eVJl
c2l6ZTsKICAgICBbbV92aWRlb0xheWVyLmdldCgpIHNldFZpZGVvR3Jhdml0eTpncmF2aXR5XTsK
LSAgICBbbV9zZWNvbmRhcnlWaWRlb0xheWVyLmdldCgpIHNldFZpZGVvR3Jhdml0eTpncmF2aXR5
XTsKICAgICBbQ0FUcmFuc2FjdGlvbiBjb21taXRdOwogfQogCkBAIC0yMTk3LDggKzIxODQsNyBA
QCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OnN5bmNUZXh0VHJhY2tC
b3VuZHMoKQogICAgICAgICByZXR1cm47CiAKICAgICBGbG9hdFJlY3QgdmlkZW9GdWxsc2NyZWVu
RnJhbWUgPSBtX3ZpZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdlci0+dmlkZW9GdWxsc2NyZWVuRnJh
bWUoKTsKLSAgICBhdXRvIGFjdGl2ZUxheWVyID0gbV9zZWNvbmRhcnlWaWRlb0xheWVyLmdldCgp
ID86IG1fdmlkZW9MYXllci5nZXQoKTsKLSAgICBDR1JlY3QgdGV4dEZyYW1lID0gYWN0aXZlTGF5
ZXIgPyBbYWN0aXZlTGF5ZXIgdmlkZW9SZWN0XSA6IENHUmVjdE1ha2UoMCwgMCwgdmlkZW9GdWxs
c2NyZWVuRnJhbWUud2lkdGgoKSwgdmlkZW9GdWxsc2NyZWVuRnJhbWUuaGVpZ2h0KCkpOworICAg
IENHUmVjdCB0ZXh0RnJhbWUgPSBtX3ZpZGVvTGF5ZXIgPyBbbV92aWRlb0xheWVyIHZpZGVvUmVj
dF0gOiBDR1JlY3RNYWtlKDAsIDAsIHZpZGVvRnVsbHNjcmVlbkZyYW1lLndpZHRoKCksIHZpZGVv
RnVsbHNjcmVlbkZyYW1lLmhlaWdodCgpKTsKICAgICBbbV90ZXh0VHJhY2tSZXByZXNlbnRhdGlv
bkxheWVyIHNldEZyYW1lOnRleHRGcmFtZV07CiAjZW5kaWYKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVy
UHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cmNlQVZG
T2JqQy5tbQppbmRleCAwNWFiMjBkMGYxOWI3NTAwYTQ0NzhhZDQ2ZDQ4N2QwMDY0NmRhODU2Li42
ZTEzNjJiMmE0MDFkZTlmYzg2NDJiYzBhMDI5YzQ2NGFmMDkxYzYwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXll
clByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3Vy
Y2VBVkZPYmpDLm1tCkBAIC03NTUsNyArNzU1LDcgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVN
ZWRpYVNvdXJjZUFWRk9iakM6OmFkZERpc3BsYXlMYXllcihBVlNhbXBsZUJ1ZmZlckRpc3BsYXkK
ICAgICBtX3BsYXllci0+Zmlyc3RWaWRlb0ZyYW1lQXZhaWxhYmxlKCk7CiAKICNpZiBQTEFURk9S
TShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKLSAgICBtX3ZpZGVvRnVs
bHNjcmVlbkxheWVyTWFuYWdlci0+c2V0VmlkZW9MYXllcnMobV9zYW1wbGVCdWZmZXJEaXNwbGF5
TGF5ZXIuZ2V0KCksIG5pbCwgc25hcHBlZEludFJlY3QobV9wbGF5ZXItPmNsaWVudCgpLm1lZGlh
UGxheWVyQ29udGVudEJveFJlY3QoKSkuc2l6ZSgpKTsKKyAgICBtX3ZpZGVvRnVsbHNjcmVlbkxh
eWVyTWFuYWdlci0+c2V0VmlkZW9MYXllcihtX3NhbXBsZUJ1ZmZlckRpc3BsYXlMYXllci5nZXQo
KSwgc25hcHBlZEludFJlY3QobV9wbGF5ZXItPmNsaWVudCgpLm1lZGlhUGxheWVyQ29udGVudEJv
eFJlY3QoKSkuc2l6ZSgpKTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVN
ZWRpYVN0cmVhbUFWRk9iakMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVNZWRpYVN0cmVhbUFWRk9iakMubW0K
aW5kZXggODRjN2Q2MjMyNGY2NDcxMWUxNjVlNTI0M2RmODhmMjFhNTBlZDdlOS4uODgxYzNlMDQ4
NzFkY2M1NDYwNTU0Y2Q0YmZlZmI2NjM2ZDRiNDk5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRl
TWVkaWFTdHJlYW1BVkZPYmpDLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU3RyZWFtQVZGT2Jq
Qy5tbQpAQCAtNDA0LDcgKzQwNCw3IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTdHJl
YW1BVkZPYmpDOjpjcmVhdGVQcmV2aWV3TGF5ZXJzKCkKICAgICAgICAgbV92aWRlb0JhY2tncm91
bmRMYXllci5nZXQoKS5uYW1lID0gQCJNZWRpYVBsYXllclByaXZhdGVNZWRpYVN0cmVhbUFWRk9i
akMgcHJldmlldyBiYWNrZ3JvdW5kIGxheWVyIjsKIAogI2lmIFBMQVRGT1JNKE1BQykgJiYgRU5B
QkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQotICAgICAgICBtX3ZpZGVvRnVsbHNjcmVlbkxh
eWVyTWFuYWdlci0+c2V0VmlkZW9MYXllcnMobV92aWRlb0JhY2tncm91bmRMYXllci5nZXQoKSwg
bmlsLCBzbmFwcGVkSW50UmVjdChtX3BsYXllci0+Y2xpZW50KCkubWVkaWFQbGF5ZXJDb250ZW50
Qm94UmVjdCgpKS5zaXplKCkpOworICAgICAgICBtX3ZpZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdl
ci0+c2V0VmlkZW9MYXllcihtX3ZpZGVvQmFja2dyb3VuZExheWVyLmdldCgpLCBzbmFwcGVkSW50
UmVjdChtX3BsYXllci0+Y2xpZW50KCkubWVkaWFQbGF5ZXJDb250ZW50Qm94UmVjdCgpKS5zaXpl
KCkpOwogI2VuZGlmCiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9WaWRlb0Z1bGxzY3JlZW5MYXllck1hbmFnZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1Zp
ZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdlci5oCmluZGV4IGZlNDAwN2VlOTkyNWVmNjQ1MWI0YjAx
OWYxYzZhMzVjMWFhZmNjNmYuLjI3ZDU2ZGZlY2ZlN2UxODE1OTg3MjJhZDQ3YTNkODU3Y2I1NTU2
MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRh
dGlvbi9vYmpjL1ZpZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1ZpZGVvRnVsbHNjcmVlbkxh
eWVyTWFuYWdlci5oCkBAIC00NCw3ICs0NCw3IEBAIHB1YmxpYzoKICAgICBQbGF0Zm9ybUxheWVy
ICp2aWRlb0lubGluZUxheWVyKCkgY29uc3QgeyByZXR1cm4gbV92aWRlb0lubGluZUxheWVyLmdl
dCgpOyB9CiAgICAgUGxhdGZvcm1MYXllciAqdmlkZW9GdWxsc2NyZWVuTGF5ZXIoKSBjb25zdCB7
IHJldHVybiBtX3ZpZGVvRnVsbHNjcmVlbkxheWVyLmdldCgpOyB9CiAgICAgRmxvYXRSZWN0IHZp
ZGVvRnVsbHNjcmVlbkZyYW1lKCkgY29uc3QgeyByZXR1cm4gbV92aWRlb0Z1bGxzY3JlZW5GcmFt
ZTsgfQotICAgIHZvaWQgc2V0VmlkZW9MYXllcnMoUGxhdGZvcm1MYXllciAqLCBQbGF0Zm9ybUxh
eWVyICosIEludFNpemUgY29udGVudFNpemUpOworICAgIHZvaWQgc2V0VmlkZW9MYXllcihQbGF0
Zm9ybUxheWVyICosIEludFNpemUgY29udGVudFNpemUpOwogICAgIHZvaWQgc2V0VmlkZW9GdWxs
c2NyZWVuTGF5ZXIoUGxhdGZvcm1MYXllciAqLCBzdGQ6OmZ1bmN0aW9uPHZvaWQoKT4gY29tcGxl
dGlvbkhhbmRsZXIpOwogICAgIHZvaWQgc2V0VmlkZW9GdWxsc2NyZWVuRnJhbWUoRmxvYXRSZWN0
KTsKICAgICB2b2lkIGRpZERlc3Ryb3lWaWRlb0xheWVyKCk7CkBAIC01NSw3ICs1NSw2IEBAIHBy
aXZhdGU6CiAgICAgUmV0YWluUHRyPFBsYXRmb3JtTGF5ZXI+IG1fdmlkZW9JbmxpbmVMYXllcjsK
ICAgICBSZXRhaW5QdHI8UGxhdGZvcm1MYXllcj4gbV92aWRlb0Z1bGxzY3JlZW5MYXllcjsKICAg
ICBSZXRhaW5QdHI8UGxhdGZvcm1MYXllcj4gbV92aWRlb0xheWVyOwotICAgIFJldGFpblB0cjxQ
bGF0Zm9ybUxheWVyPiBtX3NlY29uZGFyeVZpZGVvTGF5ZXI7CiAgICAgRmxvYXRSZWN0IG1fdmlk
ZW9GdWxsc2NyZWVuRnJhbWU7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9WaWRlb0Z1bGxzY3JlZW5MYXllck1hbmFn
ZXIubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2Jq
Yy9WaWRlb0Z1bGxzY3JlZW5MYXllck1hbmFnZXIubW0KaW5kZXggMGNkMTcyZjFjODNjZjUzYmVm
ZDRiZTEyN2FmYTA5YWYzOGMwNDdhYS4uOGFmMjEwYjgzOGU0NzUyNGRlNzU1MGM4YTI5MGMxMWUy
NDFiZDJkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZm
b3VuZGF0aW9uL29iamMvVmlkZW9GdWxsc2NyZWVuTGF5ZXJNYW5hZ2VyLm1tCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1ZpZGVvRnVsbHNj
cmVlbkxheWVyTWFuYWdlci5tbQpAQCAtNjYsMjcgKzY2LDIyIEBAIFZpZGVvRnVsbHNjcmVlbkxh
eWVyTWFuYWdlcjo6VmlkZW9GdWxsc2NyZWVuTGF5ZXJNYW5hZ2VyKCkKIHsKIH0KIAotdm9pZCBW
aWRlb0Z1bGxzY3JlZW5MYXllck1hbmFnZXI6OnNldFZpZGVvTGF5ZXJzKFBsYXRmb3JtTGF5ZXIg
KnZpZGVvTGF5ZXIsIFBsYXRmb3JtTGF5ZXIgKnNlY29uZGFyeVZpZGVvTGF5ZXIsIEludFNpemUg
Y29udGVudFNpemUpCit2b2lkIFZpZGVvRnVsbHNjcmVlbkxheWVyTWFuYWdlcjo6c2V0VmlkZW9M
YXllcihQbGF0Zm9ybUxheWVyICp2aWRlb0xheWVyLCBJbnRTaXplIGNvbnRlbnRTaXplKQogewog
ICAgIG1fdmlkZW9MYXllciA9IHZpZGVvTGF5ZXI7Ci0gICAgbV9zZWNvbmRhcnlWaWRlb0xheWVy
ID0gc2Vjb25kYXJ5VmlkZW9MYXllcjsKIAogICAgIFttX3ZpZGVvTGF5ZXIgd2ViX2Rpc2FibGVB
bGxBY3Rpb25zXTsKLSAgICBbbV9zZWNvbmRhcnlWaWRlb0xheWVyIHdlYl9kaXNhYmxlQWxsQWN0
aW9uc107CiAgICAgbV92aWRlb0lubGluZUxheWVyID0gYWRvcHROUyhbW1dlYlZpZGVvQ29udGFp
bmVyTGF5ZXIgYWxsb2NdIGluaXRdKTsKICNpZm5kZWYgTkRFQlVHCiAgICAgW21fdmlkZW9Jbmxp
bmVMYXllciBzZXROYW1lOkAiV2ViVmlkZW9Db250YWluZXJMYXllciJdOwogI2VuZGlmCiAgICAg
W21fdmlkZW9JbmxpbmVMYXllciBzZXRGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIGNvbnRlbnRTaXpl
LndpZHRoKCksIGNvbnRlbnRTaXplLmhlaWdodCgpKV07CiAgICAgaWYgKG1fdmlkZW9GdWxsc2Ny
ZWVuTGF5ZXIpIHsKLSAgICAgICAgW21fdmlkZW9MYXllciByZW1vdmVGcm9tU3VwZXJsYXllcl07
Ci0gICAgICAgIFBsYXRmb3JtTGF5ZXIgKmFjdGl2ZUxheWVyID0gc2Vjb25kYXJ5VmlkZW9MYXll
ciA/IHNlY29uZGFyeVZpZGVvTGF5ZXIgOiB2aWRlb0xheWVyOwotICAgICAgICBbYWN0aXZlTGF5
ZXIgc2V0RnJhbWU6Q0dSZWN0TWFrZSgwLCAwLCBtX3ZpZGVvRnVsbHNjcmVlbkZyYW1lLndpZHRo
KCksIG1fdmlkZW9GdWxsc2NyZWVuRnJhbWUuaGVpZ2h0KCkpXTsKLSAgICAgICAgW21fdmlkZW9G
dWxsc2NyZWVuTGF5ZXIgaW5zZXJ0U3VibGF5ZXI6YWN0aXZlTGF5ZXIgYXRJbmRleDowXTsKKyAg
ICAgICAgW21fdmlkZW9MYXllciBzZXRGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIG1fdmlkZW9GdWxs
c2NyZWVuRnJhbWUud2lkdGgoKSwgbV92aWRlb0Z1bGxzY3JlZW5GcmFtZS5oZWlnaHQoKSldOwor
ICAgICAgICBbbV92aWRlb0Z1bGxzY3JlZW5MYXllciBpbnNlcnRTdWJsYXllcjptX3ZpZGVvTGF5
ZXIuZ2V0KCkgYXRJbmRleDowXTsKICAgICB9IGVsc2UgewogICAgICAgICBbbV92aWRlb0lubGlu
ZUxheWVyIGluc2VydFN1YmxheWVyOm1fdmlkZW9MYXllci5nZXQoKSBhdEluZGV4OjBdOwogICAg
ICAgICBbbV92aWRlb0xheWVyIHNldEZyYW1lOm1fdmlkZW9JbmxpbmVMYXllci5nZXQoKS5ib3Vu
ZHNdOwotICAgICAgICBbbV9zZWNvbmRhcnlWaWRlb0xheWVyIHJlbW92ZUZyb21TdXBlcmxheWVy
XTsKICAgICB9CiB9CiAKQEAgLTEwMiw0NyArOTcsMjQgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5M
YXllck1hbmFnZXI6OnNldFZpZGVvRnVsbHNjcmVlbkxheWVyKFBsYXRmb3JtTGF5ZXIgKnZpZGVv
RnUKICAgICBbQ0FUcmFuc2FjdGlvbiBiZWdpbl07CiAgICAgW0NBVHJhbnNhY3Rpb24gc2V0RGlz
YWJsZUFjdGlvbnM6WUVTXTsKIAotICAgIGlmIChtX3NlY29uZGFyeVZpZGVvTGF5ZXIgJiYgbV92
aWRlb0xheWVyKSB7Ci0gICAgICAgIGlmIChtX3ZpZGVvRnVsbHNjcmVlbkxheWVyKSB7Ci0gICAg
ICAgICAgICBbbV92aWRlb0Z1bGxzY3JlZW5MYXllciBpbnNlcnRTdWJsYXllcjptX3NlY29uZGFy
eVZpZGVvTGF5ZXIuZ2V0KCkgYXRJbmRleDowXTsKLSAgICAgICAgICAgIFttX3NlY29uZGFyeVZp
ZGVvTGF5ZXIgc2V0RnJhbWU6Q0dSZWN0TWFrZSgwLCAwLCBtX3ZpZGVvRnVsbHNjcmVlbkZyYW1l
LndpZHRoKCksIG1fdmlkZW9GdWxsc2NyZWVuRnJhbWUuaGVpZ2h0KCkpXTsKLSAgICAgICAgfSBl
bHNlIGlmIChtX3ZpZGVvSW5saW5lTGF5ZXIpIHsKLSAgICAgICAgICAgIFttX3ZpZGVvTGF5ZXIg
c2V0RnJhbWU6W21fdmlkZW9JbmxpbmVMYXllciBib3VuZHNdXTsKLSAgICAgICAgICAgIFttX3Zp
ZGVvSW5saW5lTGF5ZXIgaW5zZXJ0U3VibGF5ZXI6bV92aWRlb0xheWVyLmdldCgpIGF0SW5kZXg6
MF07Ci0gICAgICAgIH0KKyAgICBpZiAobV92aWRlb0xheWVyKSB7CisgICAgICAgIENBQ29udGV4
dCAqb2xkQ29udGV4dCA9IFttX3ZpZGVvTGF5ZXIgY29udGV4dF07CiAKLSAgICAgICAgUmV0YWlu
UHRyPFBsYXRmb3JtTGF5ZXI+IGZ1bGxzY3JlZW5MYXllciA9IG1fdmlkZW9GdWxsc2NyZWVuTGF5
ZXI7Ci0gICAgICAgIFJldGFpblB0cjxQbGF0Zm9ybUxheWVyPiB2aWRlb0xheWVyID0gbV92aWRl
b0xheWVyOwotICAgICAgICBSZXRhaW5QdHI8UGxhdGZvcm1MYXllcj4gc2Vjb25kYXJ5VmlkZW9M
YXllciA9IG1fc2Vjb25kYXJ5VmlkZW9MYXllcjsKLQotICAgICAgICBbQ0FUcmFuc2FjdGlvbiBz
ZXRDb21wbGV0aW9uQmxvY2s6W2NvbXBsZXRpb25IYW5kbGVyLCBmdWxsc2NyZWVuTGF5ZXIsIHZp
ZGVvTGF5ZXIsIHNlY29uZGFyeVZpZGVvTGF5ZXJdIHsKLSAgICAgICAgICAgIFtDQVRyYW5zYWN0
aW9uIGJlZ2luXTsKLSAgICAgICAgICAgIFtDQVRyYW5zYWN0aW9uIHNldERpc2FibGVBY3Rpb25z
OllFU107Ci0gICAgICAgICAgICAKLSAgICAgICAgICAgIGlmIChmdWxsc2NyZWVuTGF5ZXIpCi0g
ICAgICAgICAgICAgICAgW3ZpZGVvTGF5ZXIgcmVtb3ZlRnJvbVN1cGVybGF5ZXJdOwotICAgICAg
ICAgICAgZWxzZQotICAgICAgICAgICAgICAgIFtzZWNvbmRhcnlWaWRlb0xheWVyIHJlbW92ZUZy
b21TdXBlcmxheWVyXTsKLQotICAgICAgICAgICAgW0NBVHJhbnNhY3Rpb24gc2V0Q29tcGxldGlv
bkJsb2NrOltjb21wbGV0aW9uSGFuZGxlcl0gewotICAgICAgICAgICAgICAgIGNvbXBsZXRpb25I
YW5kbGVyKCk7Ci0gICAgICAgICAgICB9XTsKLSAgICAgICAgICAgIFtDQVRyYW5zYWN0aW9uIGNv
bW1pdF07Ci0gICAgICAgIH1dOwotICAgIH0gZWxzZSBpZiAobV92aWRlb0xheWVyKSB7CiAgICAg
ICAgIGlmIChtX3ZpZGVvRnVsbHNjcmVlbkxheWVyKSB7CiAgICAgICAgICAgICBbbV92aWRlb0Z1
bGxzY3JlZW5MYXllciBpbnNlcnRTdWJsYXllcjptX3ZpZGVvTGF5ZXIuZ2V0KCkgYXRJbmRleDow
XTsKICAgICAgICAgICAgIFttX3ZpZGVvTGF5ZXIgc2V0RnJhbWU6Q0dSZWN0TWFrZSgwLCAwLCBt
X3ZpZGVvRnVsbHNjcmVlbkZyYW1lLndpZHRoKCksIG1fdmlkZW9GdWxsc2NyZWVuRnJhbWUuaGVp
Z2h0KCkpXTsKICAgICAgICAgfSBlbHNlIGlmIChtX3ZpZGVvSW5saW5lTGF5ZXIpIHsKICAgICAg
ICAgICAgIFttX3ZpZGVvTGF5ZXIgc2V0RnJhbWU6W21fdmlkZW9JbmxpbmVMYXllciBib3VuZHNd
XTsKLSAgICAgICAgICAgIFttX3ZpZGVvTGF5ZXIgcmVtb3ZlRnJvbVN1cGVybGF5ZXJdOwogICAg
ICAgICAgICAgW21fdmlkZW9JbmxpbmVMYXllciBpbnNlcnRTdWJsYXllcjptX3ZpZGVvTGF5ZXIu
Z2V0KCkgYXRJbmRleDowXTsKICAgICAgICAgfSBlbHNlCiAgICAgICAgICAgICBbbV92aWRlb0xh
eWVyIHJlbW92ZUZyb21TdXBlcmxheWVyXTsKIAotICAgICAgICBDQUNvbnRleHQgKm9sZENvbnRl
eHQgPSBbbV92aWRlb0Z1bGxzY3JlZW5MYXllciBjb250ZXh0XTsKLSAgICAgICAgQ0FDb250ZXh0
ICpuZXdDb250ZXh0ID0gW21fdmlkZW9JbmxpbmVMYXllciBjb250ZXh0XTsKKyAgICAgICAgQ0FD
b250ZXh0ICpuZXdDb250ZXh0ID0gW21fdmlkZW9MYXllciBjb250ZXh0XTsKICAgICAgICAgaWYg
KG9sZENvbnRleHQgJiYgbmV3Q29udGV4dCAmJiBvbGRDb250ZXh0ICE9IG5ld0NvbnRleHQpIHsK
KyNpZiBQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0g
MTAxMjAwCisgICAgICAgICAgICBbb2xkQ29udGV4dCBzZXRDb21taXRQcmlvcml0eTowXTsKKyAg
ICAgICAgICAgIFtuZXdDb250ZXh0IHNldENvbW1pdFByaW9yaXR5OjFdOworI2VuZGlmCiAgICAg
ICAgICAgICBtYWNoX3BvcnRfdCBmZW5jZVBvcnQgPSBbb2xkQ29udGV4dCBjcmVhdGVGZW5jZVBv
cnRdOwogICAgICAgICAgICAgW25ld0NvbnRleHQgc2V0RmVuY2VQb3J0OmZlbmNlUG9ydF07CiAg
ICAgICAgICAgICBtYWNoX3BvcnRfZGVhbGxvY2F0ZShtYWNoX3Rhc2tfc2VsZigpLCBmZW5jZVBv
cnQpOwpAQCAtMTY2LDE4ICsxMzgsMTUgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5MYXllck1hbmFn
ZXI6OnNldFZpZGVvRnVsbHNjcmVlbkZyYW1lKEZsb2F0UmVjdCB2aWRlb0Z1bGxzY3IKICAgICBp
ZiAoIW1fdmlkZW9GdWxsc2NyZWVuTGF5ZXIpCiAgICAgICAgIHJldHVybjsKIAotICAgIFBsYXRm
b3JtTGF5ZXIgKmFjdGl2ZUxheWVyID0gbV9zZWNvbmRhcnlWaWRlb0xheWVyLmdldCgpID8gbV9z
ZWNvbmRhcnlWaWRlb0xheWVyLmdldCgpIDogbV92aWRlb0xheWVyLmdldCgpOwotICAgIFthY3Rp
dmVMYXllciBzZXRGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIHZpZGVvRnVsbHNjcmVlbkZyYW1lLndp
ZHRoKCksIHZpZGVvRnVsbHNjcmVlbkZyYW1lLmhlaWdodCgpKV07CisgICAgW21fdmlkZW9MYXll
ciBzZXRGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIHZpZGVvRnVsbHNjcmVlbkZyYW1lLndpZHRoKCks
IHZpZGVvRnVsbHNjcmVlbkZyYW1lLmhlaWdodCgpKV07CiB9CiAKIHZvaWQgVmlkZW9GdWxsc2Ny
ZWVuTGF5ZXJNYW5hZ2VyOjpkaWREZXN0cm95VmlkZW9MYXllcigpCiB7CiAgICAgW21fdmlkZW9M
YXllciByZW1vdmVGcm9tU3VwZXJsYXllcl07Ci0gICAgW21fc2Vjb25kYXJ5VmlkZW9MYXllciBy
ZW1vdmVGcm9tU3VwZXJsYXllcl07CiAKICAgICBtX3ZpZGVvSW5saW5lTGF5ZXIgPSBuaWw7CiAg
ICAgbV92aWRlb0xheWVyID0gbmlsOwotICAgIG1fc2Vjb25kYXJ5VmlkZW9MYXllciA9IG5pbDsK
IH0KIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vc3BpL2NvY29hL1F1
YXJ0ekNvcmVTUEkuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NwaS9jb2NvYS9RdWFydHpD
b3JlU1BJLmgKaW5kZXggMTI0YjBlOWExYTdjMmViYmUxMTI1ZDZmZDhhOGRkNDc4YTYyOWFkZC4u
NGU3NjZhZDljYWM4MzEzZjViYWY5MTYyZjIyN2NkOGMxNjg3MjJjYyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vc3BpL2NvY29hL1F1YXJ0ekNvcmVTUEkuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9zcGkvY29jb2EvUXVhcnR6Q29yZVNQSS5oCkBAIC01OSw2ICs1
OSw5IEBACiAtIChtYWNoX3BvcnRfdCljcmVhdGVGZW5jZVBvcnQ7CiAtICh2b2lkKXNldEZlbmNl
UG9ydDoobWFjaF9wb3J0X3QpcG9ydDsKIC0gKHZvaWQpc2V0RmVuY2VQb3J0OihtYWNoX3BvcnRf
dClwb3J0IGNvbW1pdEhhbmRsZXI6KHZvaWQoXikodm9pZCkpYmxvY2s7CisjaWYgUExBVEZPUk0o
TUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTIwMAorQHByb3Bl
cnR5IHVpbnQzMl90IGNvbW1pdFByaW9yaXR5OworI2VuZGlmCiAjaWYgUExBVEZPUk0oTUFDKQog
QHByb3BlcnR5IEJPT0wgY29sb3JNYXRjaFVudGFnZ2VkQ29udGVudDsKICNlbmRpZgo=
</data>
<flag name="review"
          id="305488"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
    <flag name="commit-queue"
          id="305509"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
      

    </bug>

</bugzilla>