<?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>210638</bug_id>
          
          <creation_ts>2020-04-16 22:36:27 -0700</creation_ts>
          <short_desc>Cleanup the macros for video fullscreen and picture-in-picture</short_desc>
          <delta_ts>2020-04-17 15:41:09 -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>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Peng Liu">peng.liu6</reporter>
          <assigned_to name="Peng Liu">peng.liu6</assigned_to>
          <cc>benjamin</cc>
    
    <cc>calvaris</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1642581</commentid>
    <comment_count>0</comment_count>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2020-04-16 22:36:27 -0700</bug_when>
    <thetext>Cleanup the macros for video fullscreen and picture-in-picture</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642582</commentid>
    <comment_count>1</comment_count>
      <attachid>396740</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2020-04-16 22:45:31 -0700</bug_when>
    <thetext>Created attachment 396740
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642724</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-04-17 10:13:48 -0700</bug_when>
    <thetext>Committed r260259: &lt;https://trac.webkit.org/changeset/260259&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 396740.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642725</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-04-17 10:14:13 -0700</bug_when>
    <thetext>&lt;rdar://problem/61940134&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642823</commentid>
    <comment_count>4</comment_count>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2020-04-17 14:04:23 -0700</bug_when>
    <thetext>Reopen this bug to fix a build failure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642826</commentid>
    <comment_count>5</comment_count>
      <attachid>396796</attachid>
    <who name="Peng Liu">peng.liu6</who>
    <bug_when>2020-04-17 14:11:17 -0700</bug_when>
    <thetext>Created attachment 396796
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642874</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-04-17 15:41:08 -0700</bug_when>
    <thetext>Committed r260293: &lt;https://trac.webkit.org/changeset/260293&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 396796.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396740</attachid>
            <date>2020-04-16 22:45:31 -0700</date>
            <delta_ts>2020-04-17 14:11:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210638-20200416224530.patch</filename>
            <type>text/plain</type>
            <size>33770</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwMTU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGUwMzk0YjdiZTViNWJiMDE4YjRlZmJj
Yzk4NWY1Yjc4ZGEyMjY4NmQuLjVmMTk3NDNkZDQzNTFjNDdjZDU2ZDA4MzNlMzg4NTY0NDM3MjUz
MTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjAtMDQtMTYgIFBlbmcgTGl1ICA8cGVuZy5saXU2
QGFwcGxlLmNvbT4KKworICAgICAgICBDbGVhbnVwIHRoZSBtYWNyb3MgZm9yIHZpZGVvIGZ1bGxz
Y3JlZW4gYW5kIHBpY3R1cmUtaW4tcGljdHVyZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwNjM4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQWRkIG1hY3JvIEVOQUJMRV9WSURFT19QUkVTRU5UQVRJT05f
TU9ERS4KKworICAgICAgICAqIHd0Zi9QbGF0Zm9ybUVuYWJsZS5oOgorCiAyMDIwLTA0LTE0ICBQ
ZW5nIExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CiAKICAgICAgICAgQWRvcHQgaW50ZXJmYWNl
IEFWQXVkaW9Sb3V0aW5nQXJiaXRlciBmb3IgTWFjCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTJmNTQ0MThjZDBh
OTViNmNkMTdjNDljNzNhMDc2NTBhNWRiMzAwYi4uMTljZmIyMmJmNDEyNTJiZDQzMjMzMWYzZjIy
YWM1YWYyOTg3MWMzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIwLTA0LTE2ICBQ
ZW5nIExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CisKKyAgICAgICAgQ2xlYW51cCB0aGUgbWFj
cm9zIGZvciB2aWRlbyBmdWxsc2NyZWVuIGFuZCBwaWN0dXJlLWluLXBpY3R1cmUKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDYzOAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlcGxhY2Ugc29tZSAiI2lm
IFBMQVRGT1JNKElPU19GQU1JTFkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19Q
UkVTRU5UQVRJT05fTU9ERSkpIgorICAgICAgICBhbmQgYWxsICIjaWYgKFBMQVRGT1JNKElPU19G
QU1JTFkpICYmIEhBVkUoQVZLSVQpKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9f
UFJFU0VOVEFUSU9OX01PREUpKSIKKyAgICAgICAgd2l0aCAiI2lmIEVOQUJMRShWSURFT19QUkVT
RU5UQVRJT05fTU9ERSkiLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgbm8gZnVuY3Rpb25hbCBj
aGFuZ2UuCisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6bWVkaWFFbmdpbmVXYXNVcGRhdGVkKToKKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnNldFZpZGVvRnVsbHNjcmVlblN0YW5kYnkp
OgorICAgICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRN
TFZpZGVvRWxlbWVudC5jcHA6CisgICAgICAgICogaHRtbC9IVE1MVmlkZW9FbGVtZW50Lmg6Cisg
ICAgICAgICogcGxhdGZvcm0vUGljdHVyZUluUGljdHVyZVN1cHBvcnQuaDoKKyAgICAgICAgKiBw
bGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5DaGFuZ2VPYnNlcnZlci5oOgorICAgICAgICAq
IHBsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsLmg6CisgICAgICAgICogcGxhdGZv
cm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQuaDoKKyAgICAgICAgKiBw
bGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5tbToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHA6CisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9N
ZWRpYVBsYXllclByaXZhdGUuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2Ny
ZWVuSW50ZXJmYWNlQVZLaXQubW06CisgICAgICAgIChXZWJDb3JlOjpzdXBwb3J0c1BpY3R1cmVJ
blBpY3R1cmUpOgorCiAyMDIwLTA0LTE1ICBKYWNrIExlZSAgPHNoaWhjaGllaF9sZWVAYXBwbGUu
Y29tPgogCiAgICAgICAgIEFTU0VSVElPTiBGQUlMRUQ6ICFzZWxlY3Rpb25Ub0RlbGV0ZS5pc05v
bmUoKSBpbiBUeXBpbmdDb21tYW5kOjpmb3J3YXJkRGVsZXRlS2V5UHJlc3NlZApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRl
eCBkZTI3OWZmZjIwODIyMzAxYWJiNTZkZmY0YmJiNDhjOTg5YTliZDU1Li5jNTBhNTgxN2UyMWMx
OGI3NDhlZTNhOTQ3NjM0MGRmNDhmYjU3YzZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDM5IEBACisy
MDIwLTA0LTE2ICBQZW5nIExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CisKKyAgICAgICAgQ2xl
YW51cCB0aGUgbWFjcm9zIGZvciB2aWRlbyBmdWxsc2NyZWVuIGFuZCBwaWN0dXJlLWluLXBpY3R1
cmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDYz
OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlcGxh
Y2Ugc29tZSAiI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpIHx8IChQTEFURk9STShNQUMpICYmIEVO
QUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpIgorICAgICAgICBhbmQgYWxsICIjaWYgKFBM
QVRGT1JNKElPU19GQU1JTFkpICYmIEhBVkUoQVZLSVQpKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBF
TkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKSIKKyAgICAgICAgd2l0aCAiI2lmIEVOQUJM
RShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkiLgorCisgICAgICAgICogR1BVUHJvY2Vzcy9tZWRp
YS9SZW1vdGVNZWRpYVBsYXllclByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTWVk
aWFQbGF5ZXJQcm94eTo6c2V0VmlkZW9GdWxsc2NyZWVuR3Jhdml0eSk6CisgICAgICAgIChXZWJL
aXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6OnVwZGF0ZVZpZGVvRnVsbHNjcmVlbklubGluZUlt
YWdlKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTWVkaWFQbGF5ZXJQcm94eTo6c2V0VmlkZW9G
dWxsc2NyZWVuTW9kZSk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZU1lZGlhUGxheWVyUHJveHk6
OnZpZGVvRnVsbHNjcmVlblN0YW5kYnlDaGFuZ2VkKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29j
b2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0Nv
Y29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBV
SVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1tOgorICAgICAgICAq
IFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJv
eHk6OmRpZEF0dGFjaFRvUnVubmluZ1Byb2Nlc3MpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdl
UHJveHk6OnZpZXdEaWRMZWF2ZVdpbmRvdyk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94
eTo6ZXhpdEZ1bGxzY3JlZW5JbW1lZGlhdGVseSk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJp
dmF0ZVJlbW90ZS5jcHA6CisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5
ZXJQcml2YXRlUmVtb3RlLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEvY29jb2Ev
TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlQ29jb2EubW06CisgICAgICAgICogV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwOgorICAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp+V2ViUGFnZSk6
CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaDoKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubWVzc2FnZXMuaW46CisgICAgICAgICog
V2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tOgorCiAyMDIwLTA0LTE1
ICBQZW5nIExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CiAKICAgICAgICAgVmlkZW8gZWxlbWVu
dHMgZG9uJ3QgcmV0dXJuIHRvIHRoZSBjb3JyZWN0IHBvc2l0aW9uIHdoZW4gZXhpdGluZyBmdWxs
c2NyZWVuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZS5oIGIvU291
cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGUuaAppbmRleCAwNmExNzU3ZjZlYzY3NWYwOTY4YjRm
MGRmMWMwMGQzY2FmOTllNjM3Li5kY2Y1MTEwZjNkMzU4ODdhOWZhMmM0OWU1YWU1M2Y2NDRiNWY3
ZDc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZS5oCisrKyBiL1Nv
dXJjZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlLmgKQEAgLTI3MCw2ICsyNzAsMTIgQEAKICNkZWZp
bmUgRU5BQkxFX0ZVTExTQ1JFRU5fQVBJIDAKICNlbmRpZgogCisjaWYgKFBMQVRGT1JNKElPU19G
QU1JTFkpICYmIEhBVkUoQVZLSVQpKSB8fCBQTEFURk9STShNQUMpCisjZGVmaW5lIEVOQUJMRV9W
SURFT19QUkVTRU5UQVRJT05fTU9ERSAxCisjZWxzZQorI2RlZmluZSBFTkFCTEVfVklERU9fUFJF
U0VOVEFUSU9OX01PREUgMAorI2VuZGlmCisKICNpZiAhZGVmaW5lZChFTkFCTEVfR0FNRVBBRCkK
ICNkZWZpbmUgRU5BQkxFX0dBTUVQQUQgMAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
TWVkaWFFbGVtZW50LmNwcAppbmRleCAxMDFkMTdjYzk4MjYyYjVhOGFjNWJkNGMzY2ZiZTYzMGE5
OTdmYTk2Li4wNjU5OTU3OTBmMmUwZGFmYjgyMTA3NDQ5YTAwYWJmMzUwYThlMzhkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKQEAgLTE2Niw3ICsxNjYsNyBAQAog
I2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCiAjZW5kaWYKIAotI2lmIFBMQVRGT1JNKElPU19G
QU1JTFkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9E
RSkpCisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQogI2luY2x1ZGUgIlZpZGVv
RnVsbHNjcmVlbk1vZGVsLmgiCiAjZW5kaWYKIApAQCAtNTAzNSw3ICs1MDM1LDcgQEAgdm9pZCBI
VE1MTWVkaWFFbGVtZW50OjptZWRpYUVuZ2luZVdhc1VwZGF0ZWQoKQogICAgICAgICBtX3BsYXll
ci0+c2V0Q0RNKCZtX3dlYktpdE1lZGlhS2V5cy0+Y2RtKCkpOwogI2VuZGlmCiAKLSNpZiBQTEFU
Rk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VO
VEFUSU9OX01PREUpKQorI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKICAgICBp
ZiAoIW1fcGxheWVyKQogICAgICAgICByZXR1cm47CiAgICAgbV9wbGF5ZXItPnNldFZpZGVvRnVs
bHNjcmVlbkZyYW1lKG1fdmlkZW9GdWxsc2NyZWVuRnJhbWUpOwpAQCAtNjA4OCw3ICs2MDg4LDcg
QEAgV0VCQ09SRV9FWFBPUlQgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpzZXRWaWRlb0Z1bGxzY3Jl
ZW5TdGFuZGJ5KGJvb2wgdmFsdWUpCiAKICAgICBtX3ZpZGVvRnVsbHNjcmVlblN0YW5kYnkgPSB2
YWx1ZTsKICAgICAKLSNpZiBQTEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFDKSAm
JiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQorI2lmIEVOQUJMRShWSURFT19QUkVT
RU5UQVRJT05fTU9ERSkKICAgICBpZiAobV9wbGF5ZXIpCiAgICAgICAgIG1fcGxheWVyLT52aWRl
b0Z1bGxzY3JlZW5TdGFuZGJ5Q2hhbmdlZCgpOwogI2VuZGlmCkBAIC02MTYzLDcgKzYxNjMsNyBA
QCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OndhaXRGb3JQcmVwYXJlZEZvcklubGluZVRoZW4oV1RG
OjpGdW5jdGlvbjx2b2lkKCk+JiYgY29tcAogICAgIG1fcHJlcGFyZWRGb3JJbmxpbmVDb21wbGV0
aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpOwogfQogCi0jaWYgUExBVEZP
Uk0oSU9TX0ZBTUlMWSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRB
VElPTl9NT0RFKSkKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCiAKIHZvaWQg
SFRNTE1lZGlhRWxlbWVudDo6d2lsbEV4aXRGdWxsc2NyZWVuKCkKIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MTWVkaWFFbGVtZW50LmgKaW5kZXggMWE3MjlmNDA5MWFjZGZjZjc2NWMwYmY1NjkxNjYy
NWMyNWEyM2ZkZC4uYjBiM2IwYmI2MjNhNTMzMWIzN2Q0NGFlNDI5NDAzYWE0YjlmYzFlZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKQEAgLTE3Niw3ICsxNzYsNyBAQCBw
dWJsaWM6CiAgICAgYm9vbCBpc1ZpZGVvTGF5ZXJJbmxpbmUoKTsKICAgICB2b2lkIHNldFByZXBh
cmVkVG9SZXR1cm5WaWRlb0xheWVyVG9JbmxpbmUoYm9vbCk7CiAgICAgdm9pZCB3YWl0Rm9yUHJl
cGFyZWRGb3JJbmxpbmVUaGVuKFdURjo6RnVuY3Rpb248dm9pZCgpPiYmIGNvbXBsZXRpb25IYW5k
bGVyID0gW10geyB9KTsKLSNpZiBQTEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFD
KSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQorI2lmIEVOQUJMRShWSURFT19Q
UkVTRU5UQVRJT05fTU9ERSkKICAgICBSZXRhaW5QdHI8UGxhdGZvcm1MYXllcj4gY3JlYXRlVmlk
ZW9GdWxsc2NyZWVuTGF5ZXIoKTsKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldFZpZGVvRnVs
bHNjcmVlbkxheWVyKFBsYXRmb3JtTGF5ZXIqLCBXVEY6OkZ1bmN0aW9uPHZvaWQoKT4mJiBjb21w
bGV0aW9uSGFuZGxlciA9IFtdIHsgfSk7CiAjaWZkZWYgX19PQkpDX18KQEAgLTEwMjEsNyArMTAy
MSw3IEBAIHByaXZhdGU6CiAKICAgICBib29sIG1fdGVtcG9yYXJpbHlBbGxvd2luZ0lubGluZVBs
YXliYWNrQWZ0ZXJGdWxsc2NyZWVuIHsgZmFsc2UgfTsKIAotI2lmIFBMQVRGT1JNKElPU19GQU1J
TFkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkp
CisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQogICAgIFJldGFpblB0cjxQbGF0
Zm9ybUxheWVyPiBtX3ZpZGVvRnVsbHNjcmVlbkxheWVyOwogICAgIEZsb2F0UmVjdCBtX3ZpZGVv
RnVsbHNjcmVlbkZyYW1lOwogICAgIE1lZGlhUGxheWVyOjpWaWRlb0dyYXZpdHkgbV92aWRlb0Z1
bGxzY3JlZW5HcmF2aXR5IHsgTWVkaWFQbGF5ZXI6OlZpZGVvR3Jhdml0eTo6UmVzaXplQXNwZWN0
IH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcAppbmRleCAyYzMwNzFj
Yzk2M2Q3NGE1MjM2MGIwNzllZGQwNjkxYzIzZTlmYzkxLi4xYjY0ZmIyOGJjZWMyMDE2N2I0ZGU1
NTVmY2JhY2I1ZmQ0M2MyNWEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxW
aWRlb0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVu
dC5jcHAKQEAgLTU0NCw3ICs1NDQsNyBAQCB2b2lkIEhUTUxWaWRlb0VsZW1lbnQ6OnNldFBpY3R1
cmVJblBpY3R1cmVBUElUZXN0RW5hYmxlZChib29sIGVuYWJsZWQpCiAKICNlbmRpZgogCi0jaWYg
UExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BS
RVNFTlRBVElPTl9NT0RFKSkKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCiB2
b2lkIEhUTUxWaWRlb0VsZW1lbnQ6OnNldFZpZGVvRnVsbHNjcmVlbkZyYW1lKEZsb2F0UmVjdCBm
cmFtZSkKIHsKICAgICBIVE1MTWVkaWFFbGVtZW50OjpzZXRWaWRlb0Z1bGxzY3JlZW5GcmFtZShm
cmFtZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQu
aCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5oCmluZGV4IDM0ZGY5NDY3
YTY2MjFkMzE0MGNlYzNhNThmMWJjYTMxOTZhZjEwMDMuLmVkOTIxODNkNDdiYmMzZWIxMjEwMDMz
ZjliZmVjN2IyNmMwNTZlYmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZp
ZGVvRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5o
CkBAIC05Niw3ICs5Niw3IEBAIHB1YmxpYzoKICNlbmRpZgogI2VuZGlmCiAKLSNpZiBQTEFURk9S
TShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFU
SU9OX01PREUpKQorI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKICAgICB2b2lk
IHNldFZpZGVvRnVsbHNjcmVlbkZyYW1lKEZsb2F0UmVjdCkgZmluYWw7CiAjZW5kaWYKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUGljdHVyZUluUGljdHVyZVN1cHBvcnQu
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BpY3R1cmVJblBpY3R1cmVTdXBwb3J0LmgKaW5k
ZXggYmM0ZjY0YjAwOTViYzE2OTZmNTRiYzY3YmQyNjc1OTNlNWYyNDIxZC4uOTlhYWEzMzdmYTY3
YzcyMTU3NWQwNzE1M2M4NGRkMTRlYWFjZjg3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vUGljdHVyZUluUGljdHVyZVN1cHBvcnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9QaWN0dXJlSW5QaWN0dXJlU3VwcG9ydC5oCkBAIC0yNyw3ICsyNyw3IEBACiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAotI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpIHx8IChQTEFURk9S
TShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCisjaWYgRU5BQkxFKFZJ
REVPX1BSRVNFTlRBVElPTl9NT0RFKQogV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRTdXBwb3J0c1Bp
Y3R1cmVJblBpY3R1cmUoYm9vbCk7CiBXRUJDT1JFX0VYUE9SVCBib29sIHN1cHBvcnRzUGljdHVy
ZUluUGljdHVyZSgpOwogI2Vsc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2NvY29hL1ZpZGVvRnVsbHNjcmVlbkNoYW5nZU9ic2VydmVyLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5DaGFuZ2VPYnNlcnZlci5oCmluZGV4IDZlODE1
MmRlMDFiOThmM2RjYzdkYjI3YjllMzRmNWNmMDNkODczMGYuLjM1NDhlNTNiMzczYjRkOTlkNzg3
YTg5NDQyYjNjMDliOGQ4Mjg2NGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2NvY29hL1ZpZGVvRnVsbHNjcmVlbkNoYW5nZU9ic2VydmVyLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuQ2hhbmdlT2JzZXJ2ZXIuaApAQCAtMjYs
NyArMjYsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpIHx8
IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCisjaWYg
RU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVl
bk1vZGVsLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5N
b2RlbC5oCmluZGV4IDFmYmI5OWQxMWI1ZDU2ODVkMGU0N2IyYzkwNTBlNWM5NzM3NjNlNGMuLmZk
MjE0YzQ3NmRhZWVmYmM3ODU5YTg4Y2E4MzU5MGQ2NjIxZTE3MDAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWwuaApAQCAtMjYs
NyArMjYsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpIHx8
IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCisjaWYg
RU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQogCiAjaW5jbHVkZSAiQXVkaW9TZXNzaW9u
LmgiCiAjaW5jbHVkZSAiRmxvYXRSZWN0LmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQu
aAppbmRleCAzYjYwYjMyZmExZmU4ZTNhYTAxODk4ZjllYTFjYzc2ODEyYTg4ZTI3Li4yYzUxZDgz
YjFiODc1NTFhY2ViMGMzNDIzMDlhZGNmZDU4OTEzMDU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsVmlk
ZW9FbGVtZW50LmgKQEAgLTI2LDcgKzI2LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBQTEFU
Rk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VO
VEFUSU9OX01PREUpKQorI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKIAogI2lu
Y2x1ZGUgIkV2ZW50TGlzdGVuZXIuaCIKICNpbmNsdWRlICJGbG9hdFJlY3QuaCIKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsVmlk
ZW9FbGVtZW50Lm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2Ny
ZWVuTW9kZWxWaWRlb0VsZW1lbnQubW0KaW5kZXggMzY5ZmEwMDAxMjNjZDM2MTYyMWI4NDk5M2Jm
YTllYjFiOWJlNWE4Yy4uZThlMzljOTI2M2Q3YTU4NzNiYTljMTc0YjU4ZTQxZmY4M2Q3N2Q0MCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVu
TW9kZWxWaWRlb0VsZW1lbnQubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2Ev
VmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQubW0KQEAgLTI0LDEwICsyNCwxMCBAQAog
ICovCiAKICNpbXBvcnQgImNvbmZpZy5oIgotCi0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwg
KFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKICNpbXBv
cnQgIlZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50LmgiCiAKKyNpZiBFTkFCTEUoVklE
RU9fUFJFU0VOVEFUSU9OX01PREUpCisKICNpbXBvcnQgIkRPTVdpbmRvdy5oIgogI2ltcG9ydCAi
RXZlbnQuaCIKICNpbXBvcnQgIkV2ZW50TGlzdGVuZXIuaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcAppbmRleCBlOWE0MjNhZTkyOTlkYWFm
N2JkOGJjNGFlY2FjMjA0MmZlNzhhMzEzLi5hYjdlNjA1NDJiMDE4MmNmYWI2YmYyMjA2ZjQ4Nzg4
ZjE4NDFjNjM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9N
ZWRpYVBsYXllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVk
aWFQbGF5ZXIuY3BwCkBAIC03NTUsNyArNzU1LDcgQEAgUGxhdGZvcm1MYXllciogTWVkaWFQbGF5
ZXI6OnBsYXRmb3JtTGF5ZXIoKSBjb25zdAogICAgIHJldHVybiBtX3ByaXZhdGUtPnBsYXRmb3Jt
TGF5ZXIoKTsKIH0KICAgICAKLSNpZiBQTEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0o
TUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQorI2lmIEVOQUJMRShWSURF
T19QUkVTRU5UQVRJT05fTU9ERSkKIAogUmV0YWluUHRyPFBsYXRmb3JtTGF5ZXI+IE1lZGlhUGxh
eWVyOjpjcmVhdGVWaWRlb0Z1bGxzY3JlZW5MYXllcigpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaAppbmRleCBkMjhlNTk0ZjNjZDU1ZTlmMDE1
N2I0NGFiNzdkYmE3MjUwMmU5MGM0Li44NmE3ZDQ1OTBiZWFjY2RmYWE0NGU5NDk4NjYwMjIwMjJl
MTVmNTNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRp
YVBsYXllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxh
eWVyLmgKQEAgLTMwOCw3ICszMDgsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBkb2VzSGF2ZUF0dHJp
YnV0ZShjb25zdCBBdG9tU3RyaW5nJiwgQXRvbVN0cmluZyogdmFsdWUgPSBudWxscHRyKSBjb25z
dDsKICAgICBQbGF0Zm9ybUxheWVyKiBwbGF0Zm9ybUxheWVyKCkgY29uc3Q7CiAKLSNpZiBQTEFU
Rk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VO
VEFUSU9OX01PREUpKQorI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKICAgICBS
ZXRhaW5QdHI8UGxhdGZvcm1MYXllcj4gY3JlYXRlVmlkZW9GdWxsc2NyZWVuTGF5ZXIoKTsKICAg
ICB2b2lkIHNldFZpZGVvRnVsbHNjcmVlbkxheWVyKFBsYXRmb3JtTGF5ZXIqLCBXVEY6OkZ1bmN0
aW9uPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlciA9IFtdIHsgfSk7CiAgICAgdm9pZCBzZXRW
aWRlb0Z1bGxzY3JlZW5GcmFtZShGbG9hdFJlY3QpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllclByaXZhdGUuaAppbmRleCAzZTc0ZDQyZDg3
ZTVjZWEyNmRhZTJjYjJhNzAwZWY5MjA2OWM3OGFlLi5iYWEwYjYzOTdiZGUxYzkwMzljNzMyZmQ2
NGVmNDVmMmE1MjIzMWNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9NZWRpYVBsYXllclByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9NZWRpYVBsYXllclByaXZhdGUuaApAQCAtNjEsNyArNjEsNyBAQCBwdWJsaWM6CiAg
ICAgdmlydHVhbCB2b2lkIHByZXBhcmVUb1BsYXkoKSB7IH0KICAgICB2aXJ0dWFsIFBsYXRmb3Jt
TGF5ZXIqIHBsYXRmb3JtTGF5ZXIoKSBjb25zdCB7IHJldHVybiBudWxscHRyOyB9CiAKLSNpZiBQ
TEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJF
U0VOVEFUSU9OX01PREUpKQorI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKICAg
ICB2aXJ0dWFsIFJldGFpblB0cjxQbGF0Zm9ybUxheWVyPiBjcmVhdGVWaWRlb0Z1bGxzY3JlZW5M
YXllcigpIHsgcmV0dXJuIG51bGxwdHI7IH0KICAgICB2aXJ0dWFsIHZvaWQgc2V0VmlkZW9GdWxs
c2NyZWVuTGF5ZXIoUGxhdGZvcm1MYXllciosIFdURjo6RnVuY3Rpb248dm9pZCgpPiYmIGNvbXBs
ZXRpb25IYW5kbGVyKSB7IGNvbXBsZXRpb25IYW5kbGVyKCk7IH0KICAgICB2aXJ0dWFsIHZvaWQg
dXBkYXRlVmlkZW9GdWxsc2NyZWVuSW5saW5lSW1hZ2UoKSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbSBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktp
dC5tbQppbmRleCA2YzM4MGU4ZDhhN2E2NjI1OWRkMTEzMGJhNmI0Yzk4MTM4MjNlMDUxLi40ODFl
YjY5OGUzOTMzNWRhNjAxMmUyYzFiMDhjNDgxODgzNmY4OTFmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFW
S2l0Lm1tCkBAIC0yNCw5ICsyNCw5IEBACiAgKi8KIAogI2ltcG9ydCAiY29uZmlnLmgiCisjaW1w
b3J0ICJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oIgogCiAjaWYgUExBVEZPUk0oSU9T
X0ZBTUlMWSkKLSNpbXBvcnQgIlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0LmgiCiAKICNp
bXBvcnQgIlBpY3R1cmVJblBpY3R1cmVTdXBwb3J0LmgiCiAKQEAgLTE1NjIsNyArMTU2Miw3IEBA
IHZvaWQgV2ViQ29yZTo6c2V0U3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlKGJvb2wgaXNTdXBwb3J0
ZWQpCiAKIGJvb2wgV2ViQ29yZTo6c3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlKCkKIHsKLSNpZiBQ
TEFURk9STShJT1NfRkFNSUxZKSAmJiBIQVZFKEFWS0lUKSAmJiAhUExBVEZPUk0oV0FUQ0hPUykK
KyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpICYmICFQTEFURk9STShXQVRDSE9T
KQogICAgIGlmIChpc1BpY3R1cmVJblBpY3R1cmVTdXBwb3J0ZWQuaGFzVmFsdWUoKSkKICAgICAg
ICAgcmV0dXJuICppc1BpY3R1cmVJblBpY3R1cmVTdXBwb3J0ZWQ7CiAgICAgcmV0dXJuIFtnZXRB
VlBpY3R1cmVJblBpY3R1cmVDb250cm9sbGVyQ2xhc3MoKSBpc1BpY3R1cmVJblBpY3R1cmVTdXBw
b3J0ZWRdOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90
ZU1lZGlhUGxheWVyUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1Jl
bW90ZU1lZGlhUGxheWVyUHJveHkuY3BwCmluZGV4IGY2NDI5ZjJiZDE1NDIxNjQxZWZkYTc2NzZk
MDAzODc5ZGE3MDJjY2MuLjM4ZGViZDQwMmFhN2YzNjc0Yzc5YTBmYzcyYTlhMjk2MzViMzkwYjcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVNZWRpYVBs
YXllclByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3Rl
TWVkaWFQbGF5ZXJQcm94eS5jcHAKQEAgLTIwMyw3ICsyMDMsNyBAQCB2b2lkIFJlbW90ZU1lZGlh
UGxheWVyUHJveHk6OnNldFNob3VsZE1haW50YWluQXNwZWN0UmF0aW8oYm9vbCBtYWludGFpblJh
dGlvKQogCiB2b2lkIFJlbW90ZU1lZGlhUGxheWVyUHJveHk6OnNldFZpZGVvRnVsbHNjcmVlbkdy
YXZpdHkoV2ViQ29yZTo6TWVkaWFQbGF5ZXJFbnVtczo6VmlkZW9HcmF2aXR5IGdyYXZpdHkpCiB7
Ci0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJ
REVPX1BSRVNFTlRBVElPTl9NT0RFKSkKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01P
REUpCiAgICAgbV9wbGF5ZXItPnNldFZpZGVvRnVsbHNjcmVlbkdyYXZpdHkoZ3Jhdml0eSk7CiAj
ZW5kaWYKIH0KQEAgLTI0NiwxNCArMjQ2LDE0IEBAIHZvaWQgUmVtb3RlTWVkaWFQbGF5ZXJQcm94
eTo6cmVtb3ZlUmVzb3VyY2UoUmVtb3RlTWVkaWFSZXNvdXJjZUlkZW50aWZpZXIgcmVtb3RlCiAv
LyBNZWRpYVBsYXllckNsaWVudAogdm9pZCBSZW1vdGVNZWRpYVBsYXllclByb3h5Ojp1cGRhdGVW
aWRlb0Z1bGxzY3JlZW5JbmxpbmVJbWFnZSgpCiB7Ci0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkg
fHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKKyNp
ZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCiAgICAgbV9wbGF5ZXItPnVwZGF0ZVZp
ZGVvRnVsbHNjcmVlbklubGluZUltYWdlKCk7CiAjZW5kaWYKIH0KIAogdm9pZCBSZW1vdGVNZWRp
YVBsYXllclByb3h5OjpzZXRWaWRlb0Z1bGxzY3JlZW5Nb2RlKE1lZGlhUGxheWVyOjpWaWRlb0Z1
bGxzY3JlZW5Nb2RlIG1vZGUpCiB7Ci0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwgKFBMQVRG
T1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKKyNpZiBFTkFCTEUo
VklERU9fUFJFU0VOVEFUSU9OX01PREUpCiAgICAgbV9wbGF5ZXItPnNldFZpZGVvRnVsbHNjcmVl
bk1vZGUobW9kZSk7CiAjZW5kaWYKIH0KQEAgLTI2NSw3ICsyNjUsNyBAQCB2b2lkIFJlbW90ZU1l
ZGlhUGxheWVyUHJveHk6OnNldEJ1ZmZlcmluZ1BvbGljeShNZWRpYVBsYXllcjo6QnVmZmVyaW5n
UG9saWN5IHBvbAogCiB2b2lkIFJlbW90ZU1lZGlhUGxheWVyUHJveHk6OnZpZGVvRnVsbHNjcmVl
blN0YW5kYnlDaGFuZ2VkKCkKIHsKLSNpZiBQTEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZP
Uk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQorI2lmIEVOQUJMRShW
SURFT19QUkVTRU5UQVRJT05fTU9ERSkKICAgICBtX3BsYXllci0+dmlkZW9GdWxsc2NyZWVuU3Rh
bmRieUNoYW5nZWQoKTsKICNlbmRpZgogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmggYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaAppbmRleCBkZWY3
ODkyMzUxNjM0ZDk4M2UwZDE1YmQ1OTNmZTVhMjkyMThkMGM2Li40ZGZjOWYxMDVhMmYzMGQ2MzQz
ZmFlYTdmNjc2OWFlYzM1ZGQyNzkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaApAQCAtMjUsNyAr
MjUsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIChQTEFURk9STShJT1NfRkFNSUxZKSAmJiBI
QVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElP
Tl9NT0RFKSkKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCiAKICNpbmNsdWRl
ICJNZXNzYWdlUmVjZWl2ZXIuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0F1ZGlvU2Vzc2lvbi5oPgpA
QCAtMTkzLDUgKzE5Myw0IEBAIHByaXZhdGU6CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAogCi0j
ZW5kaWYgLy8gUExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxF
KFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKLQorI2VuZGlmIC8vIEVOQUJMRShWSURFT19QUkVT
RU5UQVRJT05fTU9ERSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29h
L1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tZXNzYWdlcy5pbgpp
bmRleCAzZjVmNzI5YTJkMzU5MTgwN2E3ZDEwZWYyMjliN2Q3OTdkNzU5Y2VmLi4xYTNhNzY2MWJm
ZmRkZWUzYTM4ODcyNTgzN2QwZTMzYWY0NmVmMDZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubWVzc2FnZXMuaW4K
KysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdl
clByb3h5Lm1lc3NhZ2VzLmluCkBAIC0yMCw3ICsyMCw3IEBACiAjIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFCiAjIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAKLSNpZiAoUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgSEFWRShB
VktJVCkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9E
RSkpCisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQogbWVzc2FnZXMgLT4gVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5IHsKICAgICBTZXRIYXNWaWRlbyh1aW50NjRfdCBjb250
ZXh0SWQsIGJvb2wgaGFzVmlkZW8pCiAgICAgU2V0VmlkZW9EaW1lbnNpb25zKHVpbnQ2NF90IGNv
bnRleHRJZCwgV2ViQ29yZTo6RmxvYXRTaXplIHZpZGVvRGltZW5zaW9ucykKQEAgLTMyLDcgKzMy
LDcgQEAgbWVzc2FnZXMgLT4gVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5IHsKICAgICBDbGVh
bnVwRnVsbHNjcmVlbih1aW50NjRfdCBjb250ZXh0SWQpCiAgICAgUHJlcGFyZWRUb1JldHVyblRv
SW5saW5lKHVpbnQ2NF90IGNvbnRleHRJZCwgYm9vbCB2aXNpYmxlLCBXZWJDb3JlOjpJbnRSZWN0
IGlubGluZVJlY3QpCiAgICAgUHJlcGFyZWRUb0V4aXRGdWxsc2NyZWVuKHVpbnQ2NF90IGNvbnRl
eHRJZCkKLSNpZiBQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9E
RSkKKyNpZiBQTEFURk9STShNQUMpCiAgICAgRXhpdEZ1bGxzY3JlZW5XaXRob3V0QW5pbWF0aW9u
VG9Nb2RlKHVpbnQ2NF90IGNvbnRleHRJZCwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1z
OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHZpZGVvRnVsbHNjcmVlbk1vZGUpCiAjZW5kaWYKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1h
bmFnZXJQcm94eS5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNj
cmVlbk1hbmFnZXJQcm94eS5tbQppbmRleCA4MmRlOTMyOGI4ZDc3ZjQ2Zjc3MzI5YzZhZThmMTFh
YWEwZTE0NDg5Li4zMTYxZDliZDg5NTVmOTFjNTBmM2YyZjRhYTQ5OGE1MDE1OTNjMmY2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5h
Z2VyUHJveHkubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxs
c2NyZWVuTWFuYWdlclByb3h5Lm1tCkBAIC0yNiw3ICsyNiw3IEBACiAjaW1wb3J0ICJjb25maWcu
aCIKICNpbXBvcnQgIlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oIgogCi0jaWYgUExBVEZP
Uk0oSU9TX0ZBTUlMWSkgJiYgSEFWRShBVktJVCkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxF
KFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9O
X01PREUpCiAKICNpbXBvcnQgIkFQSVVJQ2xpZW50LmgiCiAjaW1wb3J0ICJEcmF3aW5nQXJlYVBy
b3h5LmgiCkBAIC03MzEsNCArNzMxLDQgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJv
eHk6OmZ1bGxzY3JlZW5NYXlSZXR1cm5Ub0lubGluZSh1aW50NjRfdCBjb250ZXh0SWQKICN1bmRl
ZiBNRVNTQUdFX0NIRUNLX0NPTlRFWFRJRAogI3VuZGVmIE1FU1NBR0VfQ0hFQ0sKIAotI2VuZGlm
IC8vIFBMQVRGT1JNKElPU19GQU1JTFkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURF
T19QUkVTRU5UQVRJT05fTU9ERSkpCisjZW5kaWYgLy8gRU5BQkxFKFZJREVPX1BSRVNFTlRBVElP
Tl9NT0RFKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggYTY3
M2VjYjczZjU1MDAyMDM3YTE1ZDI5ZmIwMjIyZGIxNTA3MGVlNS4uZmExYzc4ZjYzNGUxNDk0OGI3
MWNmOWUwM2MxZTIxYmNhMjMxZDYxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViUGFnZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdl
UHJveHkuY3BwCkBAIC05NDcsNyArOTQ3LDcgQEAgdm9pZCBXZWJQYWdlUHJveHk6OmRpZEF0dGFj
aFRvUnVubmluZ1Byb2Nlc3MoKQogICAgIEFTU0VSVCghbV9mdWxsU2NyZWVuTWFuYWdlcik7CiAg
ICAgbV9mdWxsU2NyZWVuTWFuYWdlciA9IG1ha2VVbmlxdWU8V2ViRnVsbFNjcmVlbk1hbmFnZXJQ
cm94eT4oKnRoaXMsIHBhZ2VDbGllbnQoKS5mdWxsU2NyZWVuTWFuYWdlclByb3h5Q2xpZW50KCkp
OwogI2VuZGlmCi0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgSEFWRShBVktJVCkgfHwgKFBM
QVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKKyNpZiBFTkFC
TEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCiAgICAgQVNTRVJUKCFtX3BsYXliYWNrU2Vzc2lv
bk1hbmFnZXIpOwogICAgIG1fcGxheWJhY2tTZXNzaW9uTWFuYWdlciA9IFBsYXliYWNrU2Vzc2lv
bk1hbmFnZXJQcm94eTo6Y3JlYXRlKCp0aGlzKTsKICAgICBBU1NFUlQoIW1fdmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlcik7CkBAIC0xOTI3LDcgKzE5MjcsNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6YWN0
aXZpdHlTdGF0ZURpZENoYW5nZShPcHRpb25TZXQ8QWN0aXZpdHlTdGF0ZTo6RmxhZz4gbWF5SGF2
ZQogdm9pZCBXZWJQYWdlUHJveHk6OnZpZXdEaWRMZWF2ZVdpbmRvdygpCiB7CiAgICAgY2xvc2VP
dmVybGF5ZWRWaWV3cygpOwotI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpICYmIEhBVkUoQVZLSVQp
IHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCisj
aWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQogICAgIC8vIFdoZW4gbGVhdmluZyB0
aGUgY3VycmVudCBwYWdlLCBjbG9zZSB0aGUgdmlkZW8gZnVsbHNjcmVlbi4KICAgICBpZiAobV92
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyICYmIG1fdmlkZW9GdWxsc2NyZWVuTWFuYWdlci0+aGFzTW9k
ZShXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGVTdGFu
ZGFyZCkpCiAgICAgICAgIG1fdmlkZW9GdWxsc2NyZWVuTWFuYWdlci0+cmVxdWVzdEhpZGVBbmRF
eGl0RnVsbHNjcmVlbigpOwpAQCAtNTU0MCw3ICs1NTQwLDcgQEAgdm9pZCBXZWJQYWdlUHJveHk6
OmV4aXRGdWxsc2NyZWVuSW1tZWRpYXRlbHkoKQogICAgICAgICBmdWxsU2NyZWVuTWFuYWdlcigp
LT5jbG9zZSgpOwogI2VuZGlmCiAKLSNpZiAoUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgSEFWRShB
VktJVCkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9E
RSkpCisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQogICAgIGlmICh2aWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyKCkpCiAgICAgICAgIHZpZGVvRnVsbHNjcmVlbk1hbmFnZXIoKS0+cmVx
dWVzdEhpZGVBbmRFeGl0RnVsbHNjcmVlbigpOwogI2VuZGlmCkBAIC02MTQ0LDcgKzYxNDQsNyBA
QCB2b2lkIFdlYlBhZ2VQcm94eTo6c2V0RnVsbHNjcmVlbkNsaWVudChzdGQ6OnVuaXF1ZV9wdHI8
QVBJOjpGdWxsc2NyZWVuQ2xpZW50PiYmCiB9CiAjZW5kaWYKICAgICAKLSNpZiAoUExBVEZPUk0o
SU9TX0ZBTUlMWSkgJiYgSEFWRShBVktJVCkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShW
SURFT19QUkVTRU5UQVRJT05fTU9ERSkpCisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9N
T0RFKQogUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5KiBXZWJQYWdlUHJveHk6OnBsYXliYWNr
U2Vzc2lvbk1hbmFnZXIoKQogewogICAgIHJldHVybiBtX3BsYXliYWNrU2Vzc2lvbk1hbmFnZXIu
Z2V0KCk7CkBAIC03NDk0LDcgKzc0OTQsNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6cmVzZXRTdGF0
ZShSZXNldFN0YXRlUmVhc29uIHJlc2V0U3RhdGVSZWFzb24pCiAKICAgICBtX3Zpc2libGVTY3Jv
bGxlclRodW1iUmVjdCA9IEludFJlY3QoKTsKIAotI2lmIChQTEFURk9STShJT1NfRkFNSUxZKSAm
JiBIQVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRB
VElPTl9NT0RFKSkKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCiAgICAgaWYg
KG1fcGxheWJhY2tTZXNzaW9uTWFuYWdlcikgewogICAgICAgICBtX3BsYXliYWNrU2Vzc2lvbk1h
bmFnZXItPmludmFsaWRhdGUoKTsKICAgICAgICAgbV9wbGF5YmFja1Nlc3Npb25NYW5hZ2VyID0g
bnVsbHB0cjsKQEAgLTg4OTIsNyArODg5Miw3IEBAIHZvaWQgV2ViUGFnZVByb3h5Ojp2aWRlb0Nv
bnRyb2xzTWFuYWdlckRpZENoYW5nZSgpCiAKIGJvb2wgV2ViUGFnZVByb3h5OjpoYXNBY3RpdmVW
aWRlb0ZvckNvbnRyb2xzTWFuYWdlcigpIGNvbnN0CiB7Ci0jaWYgKFBMQVRGT1JNKElPU19GQU1J
TFkpICYmIEhBVkUoQVZLSVQpKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJF
U0VOVEFUSU9OX01PREUpKQorI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKICAg
ICByZXR1cm4gbV9wbGF5YmFja1Nlc3Npb25NYW5hZ2VyICYmIG1fcGxheWJhY2tTZXNzaW9uTWFu
YWdlci0+Y29udHJvbHNNYW5hZ2VySW50ZXJmYWNlKCk7CiAjZWxzZQogICAgIHJldHVybiBmYWxz
ZTsKQEAgLTg5MDEsNyArODkwMSw3IEBAIGJvb2wgV2ViUGFnZVByb3h5OjpoYXNBY3RpdmVWaWRl
b0ZvckNvbnRyb2xzTWFuYWdlcigpIGNvbnN0CiAKIHZvaWQgV2ViUGFnZVByb3h5OjpyZXF1ZXN0
Q29udHJvbGxlZEVsZW1lbnRJRCgpIGNvbnN0CiB7Ci0jaWYgKFBMQVRGT1JNKElPU19GQU1JTFkp
ICYmIEhBVkUoQVZLSVQpKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VO
VEFUSU9OX01PREUpKQorI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKICAgICBp
ZiAobV9wbGF5YmFja1Nlc3Npb25NYW5hZ2VyKQogICAgICAgICBtX3BsYXliYWNrU2Vzc2lvbk1h
bmFnZXItPnJlcXVlc3RDb250cm9sbGVkRWxlbWVudElEKCk7CiAjZW5kaWYKQEAgLTg5MTYsNyAr
ODkxNiw3IEBAIHZvaWQgV2ViUGFnZVByb3h5OjpoYW5kbGVDb250cm9sbGVkRWxlbWVudElEUmVz
cG9uc2UoY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyKSBjCiAKIGJvb2wgV2ViUGFnZVByb3h5Ojpp
c1BsYXlpbmdWaWRlb0luRW5oYW5jZWRGdWxsc2NyZWVuKCkgY29uc3QKIHsKLSNpZiAoUExBVEZP
Uk0oSU9TX0ZBTUlMWSkgJiYgSEFWRShBVktJVCkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJM
RShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElP
Tl9NT0RFKQogICAgIHJldHVybiBtX3ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIgJiYgbV92aWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyLT5pc1BsYXlpbmdWaWRlb0luRW5oYW5jZWRGdWxsc2NyZWVuKCk7CiAj
ZWxzZQogICAgIHJldHVybiBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmgKaW5kZXggYmE3ODQ4NWQ2MzIwNTNjOWZjMTNmZTM1NzQyZWM3ZDg5YmQ4OTYzNy4uYjIzZWQw
NzI4MWI5ZWUyZjk1ZWRiNDYyODI5ZWZlZDFmNTIxZmM5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViUGFnZVByb3h5LmgKQEAgLTUxNiw3ICs1MTYsNyBAQCBwdWJsaWM6CiAgICAgQVBJOjpG
dWxsc2NyZWVuQ2xpZW50JiBmdWxsc2NyZWVuQ2xpZW50KCkgY29uc3QgeyByZXR1cm4gKm1fZnVs
bHNjcmVlbkNsaWVudDsgfQogICAgIHZvaWQgc2V0RnVsbHNjcmVlbkNsaWVudChzdGQ6OnVuaXF1
ZV9wdHI8QVBJOjpGdWxsc2NyZWVuQ2xpZW50PiYmKTsKICNlbmRpZgotI2lmIChQTEFURk9STShJ
T1NfRkFNSUxZKSAmJiBIQVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJ
REVPX1BSRVNFTlRBVElPTl9NT0RFKSkKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01P
REUpCiAgICAgUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5KiBwbGF5YmFja1Nlc3Npb25NYW5h
Z2VyKCk7CiAgICAgVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5KiB2aWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyKCk7CiAjZW5kaWYKQEAgLTIzNDksNyArMjM0OSw3IEBAIHByaXZhdGU6CiAgICAgc3Rk
Ojp1bmlxdWVfcHRyPEFQSTo6RnVsbHNjcmVlbkNsaWVudD4gbV9mdWxsc2NyZWVuQ2xpZW50Owog
I2VuZGlmCiAKLSNpZiAoUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgSEFWRShBVktJVCkpIHx8IChQ
TEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCisjaWYgRU5B
QkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQogICAgIFJlZlB0cjxQbGF5YmFja1Nlc3Npb25N
YW5hZ2VyUHJveHk+IG1fcGxheWJhY2tTZXNzaW9uTWFuYWdlcjsKICAgICBSZWZQdHI8VmlkZW9G
dWxsc2NyZWVuTWFuYWdlclByb3h5PiBtX3ZpZGVvRnVsbHNjcmVlbk1hbmFnZXI7CiAjZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5
ZXJQcml2YXRlUmVtb3RlLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEv
TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmNwcAppbmRleCA2ODhjNDcxZWM4Mjc3MGNhZmIyYWEw
OWNjOTg4ZGUwMGNlODljYWJmLi5jNGU3NjVlMThhM2UzMjExYjBiOTQ2ZjUzNjRhYWFmY2MyZWQx
MTBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlh
UGxheWVyUHJpdmF0ZVJlbW90ZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQ
VS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUuY3BwCkBAIC02NDQsNyArNjQ0LDcgQEAg
UGxhdGZvcm1MYXllciogTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpwbGF0Zm9ybUxheWVyKCkg
Y29uc3QKICAgICByZXR1cm4gbV92aWRlb0lubGluZUxheWVyLmdldCgpOwogfQogCi0jaWYgUExB
VEZPUk0oSU9TX0ZBTUlMWSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNF
TlRBVElPTl9NT0RFKSkKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCiAKIHZv
aWQgTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlOjpzZXRWaWRlb0Z1bGxzY3JlZW5MYXllcihQbGF0
Zm9ybUxheWVyKiB2aWRlb0Z1bGxzY3JlZW5MYXllciwgV1RGOjpGdW5jdGlvbjx2b2lkKCk+JiYg
Y29tcGxldGlvbkhhbmRsZXIpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5oIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGUuaAppbmRleCA3ZWM4
YjhlYTIxZWM5N2E0NDcwMGFhNmQ2MjU1ZGViMDMyYjRmYWY0Li5mMTljOTdmZDgwOWViNzA0YTNh
MDUxMjE3MDJjMDIwZDc4YzE2Njk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLmgKQEAgLTE4
Miw3ICsxODIsNyBAQCBwcml2YXRlOgogCiAgICAgUGxhdGZvcm1MYXllciogcGxhdGZvcm1MYXll
cigpIGNvbnN0IGZpbmFsOwogCi0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwgKFBMQVRGT1JN
KE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKKyNpZiBFTkFCTEUoVklE
RU9fUFJFU0VOVEFUSU9OX01PREUpCiAgICAgUGxhdGZvcm1MYXllckNvbnRhaW5lciBjcmVhdGVW
aWRlb0Z1bGxzY3JlZW5MYXllcigpIGZpbmFsOwogICAgIHZvaWQgc2V0VmlkZW9GdWxsc2NyZWVu
TGF5ZXIoUGxhdGZvcm1MYXllciosIFdURjo6RnVuY3Rpb248dm9pZCgpPiYmIGNvbXBsZXRpb25I
YW5kbGVyKSBmaW5hbDsKICAgICB2b2lkIHVwZGF0ZVZpZGVvRnVsbHNjcmVlbklubGluZUltYWdl
KCkgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlh
L2NvY29hL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZUNvY29hLm1tIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL0dQVS9tZWRpYS9jb2NvYS9NZWRpYVBsYXllclByaXZhdGVSZW1vdGVDb2NvYS5t
bQppbmRleCA2MmI1YTNjYTVkN2Y2ZTc5Njg2MWY5MDE0ZDA3NDgyMTIyMmQ1ODgwLi41NTI0Nzk3
MjljODk3YjA2NTRiM2FkNGE0MzBmMmEyYmUxYmNmYTk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL2NvY29hL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZUNv
Y29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvY29jb2EvTWVk
aWFQbGF5ZXJQcml2YXRlUmVtb3RlQ29jb2EubW0KQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNw
YWNlIFdlYktpdCB7CiAKLSNpZiBQTEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFD
KSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQorI2lmIEVOQUJMRShWSURFT19Q
UkVTRU5UQVRJT05fTU9ERSkKIAogUGxhdGZvcm1MYXllckNvbnRhaW5lciBNZWRpYVBsYXllclBy
aXZhdGVSZW1vdGU6OmNyZWF0ZVZpZGVvRnVsbHNjcmVlbkxheWVyKCkKIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQu
Y3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudC5jcHAKaW5kZXggNTQzZGUyM2RhODllMWI3NGRiYTk3YWExYTM5NTNmMmNmNjlhNGQxYy4u
YWI5YThlODJiMDQ2ZjNiNzVlMGYyMWEzOGVlMWUyNDA2ZTRmOTQ3NCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudC5jcHAKQEAgLTg2LDYgKzg2LDkgQEAKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpIHx8
IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCiAjaW5j
bHVkZSAiUGxheWJhY2tTZXNzaW9uTWFuYWdlci5oIgorI2VuZGlmCisKKyNpZiBFTkFCTEUoVklE
RU9fUFJFU0VOVEFUSU9OX01PREUpCiAjaW5jbHVkZSAiVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5o
IgogI2VuZGlmCiAKQEAgLTk3Miw3ICs5NzUsNyBAQCBSZWZQdHI8U2Nyb2xsaW5nQ29vcmRpbmF0
b3I+IFdlYkNocm9tZUNsaWVudDo6Y3JlYXRlU2Nyb2xsaW5nQ29vcmRpbmF0b3IoUGFnZSYgcAog
CiAjZW5kaWYKIAotI2lmIChQTEFURk9STShJT1NfRkFNSUxZKSAmJiBIQVZFKEFWS0lUKSkgfHwg
KFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKKyNpZiBF
TkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCiAKIGJvb2wgV2ViQ2hyb21lQ2xpZW50Ojpz
dXBwb3J0c1ZpZGVvRnVsbHNjcmVlbihIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNj
cmVlbk1vZGUgbW9kZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAppbmRleCBhODU5MzFjNzEwNmZjYjQ2
MDFjY2NkYzlkNTIzNjU0NjA4Yzg2Njg3Li5kM2RiODZjMDc0YWJmMzUzYWQ0Nzk1NmQ3YzNmMGQ0
NDU2YjgwYzhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCkBAIC0yNjEsNyArMjYxLDcgQEAgcHJpdmF0
ZToKICAgICBSZWZQdHI8V2ViQ29yZTo6U2Nyb2xsaW5nQ29vcmRpbmF0b3I+IGNyZWF0ZVNjcm9s
bGluZ0Nvb3JkaW5hdG9yKFdlYkNvcmU6OlBhZ2UmKSBjb25zdCBmaW5hbDsKICNlbmRpZgogCi0j
aWYgKFBMQVRGT1JNKElPU19GQU1JTFkpICYmIEhBVkUoQVZLSVQpKSB8fCAoUExBVEZPUk0oTUFD
KSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQorI2lmIEVOQUJMRShWSURFT19Q
UkVTRU5UQVRJT05fTU9ERSkKICAgICBib29sIHN1cHBvcnRzVmlkZW9GdWxsc2NyZWVuKFdlYkNv
cmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSkgZmluYWw7CiAg
ICAgYm9vbCBzdXBwb3J0c1ZpZGVvRnVsbHNjcmVlblN0YW5kYnkoKSBmaW5hbDsKICAgICB2b2lk
IHNldFVwUGxheWJhY2tDb250cm9sc01hbmFnZXIoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudCYp
IGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApp
bmRleCA5ZTg3ZDU1M2Q5YWJlNzlhMDNkMWQ2Y2RhYjNmOWYzYzUwZGY2MGM2Li40MjI5ODdjYTdj
NTA1OTdhMWUyZTFjMjFjMWQ1Y2ExYTQyNDU4NWNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtODcyLDcgKzg3Miw3IEBAIFdlYlBhZ2U6On5X
ZWJQYWdlKCkKICAgICB3ZWJQYWdlQ291bnRlci5kZWNyZW1lbnQoKTsKICNlbmRpZgogICAgIAot
I2lmIChQTEFURk9STShJT1NfRkFNSUxZKSAmJiBIQVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1B
QykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKKyNpZiBFTkFCTEUoVklERU9f
UFJFU0VOVEFUSU9OX01PREUpCiAgICAgaWYgKG1fcGxheWJhY2tTZXNzaW9uTWFuYWdlcikKICAg
ICAgICAgbV9wbGF5YmFja1Nlc3Npb25NYW5hZ2VyLT5pbnZhbGlkYXRlKCk7CiAKQEAgLTM4Mzks
NyArMzgzOSw3IEBAIHZvaWQgV2ViUGFnZTo6aW5zcGVjdG9yRnJvbnRlbmRDb3VudENoYW5nZWQo
dW5zaWduZWQgY291bnQpCiAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRDaGFu
Z2VJbnNwZWN0b3JGcm9udGVuZENvdW50KGNvdW50KSk7CiB9CiAKLSNpZiAoUExBVEZPUk0oSU9T
X0ZBTUlMWSkgJiYgSEFWRShBVktJVCkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURF
T19QUkVTRU5UQVRJT05fTU9ERSkpCisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RF
KQogUGxheWJhY2tTZXNzaW9uTWFuYWdlciYgV2ViUGFnZTo6cGxheWJhY2tTZXNzaW9uTWFuYWdl
cigpCiB7CiAgICAgaWYgKCFtX3BsYXliYWNrU2Vzc2lvbk1hbmFnZXIpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggN2I2ZTFiNjg3NDA1NDRkNjIwNTE0
ZTUwYWZlZmI2ZmI5NWFkOGFlNC4uYjA3NDdkNzQ4OTQ1NGI1ZjI3MjFlMzUwNWQ2MzEyZTQzMDcz
NzExZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFn
ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaApAQCAt
MzU2LDEwICszNTYsMTMgQEAgcHVibGljOgogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwg
KFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKICAgICBQ
bGF5YmFja1Nlc3Npb25NYW5hZ2VyJiBwbGF5YmFja1Nlc3Npb25NYW5hZ2VyKCk7Ci0gICAgVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlciYgdmlkZW9GdWxsc2NyZWVuTWFuYWdlcigpOwogICAgIHZvaWQg
dmlkZW9Db250cm9sc01hbmFnZXJEaWRDaGFuZ2UoKTsKICNlbmRpZgogCisjaWYgRU5BQkxFKFZJ
REVPX1BSRVNFTlRBVElPTl9NT0RFKQorICAgIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXImIHZpZGVv
RnVsbHNjcmVlbk1hbmFnZXIoKTsKKyNlbmRpZgorCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkK
ICAgICB2b2lkIHNldEFsbG93c01lZGlhRG9jdW1lbnRJbmxpbmVQbGF5YmFjayhib29sKTsKICAg
ICBib29sIGFsbG93c01lZGlhRG9jdW1lbnRJbmxpbmVQbGF5YmFjaygpIGNvbnN0IHsgcmV0dXJu
IG1fYWxsb3dzTWVkaWFEb2N1bWVudElubGluZVBsYXliYWNrOyB9CkBAIC0xODMxLDcgKzE4MzQs
NyBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxSZW1vdGVXZWJJbnNwZWN0b3JVST4gbV9yZW1vdGVJ
bnNwZWN0b3JVSTsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViUGFnZUluc3BlY3RvclRhcmdldENv
bnRyb2xsZXI+IG1faW5zcGVjdG9yVGFyZ2V0Q29udHJvbGxlcjsKIAotI2lmIChQTEFURk9STShJ
T1NfRkFNSUxZKSAmJiBIQVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJ
REVPX1BSRVNFTlRBVElPTl9NT0RFKSkKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01P
REUpCiAgICAgUmVmUHRyPFBsYXliYWNrU2Vzc2lvbk1hbmFnZXI+IG1fcGxheWJhY2tTZXNzaW9u
TWFuYWdlcjsKICAgICBSZWZQdHI8VmlkZW9GdWxsc2NyZWVuTWFuYWdlcj4gbV92aWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaAppbmRleCBkMDQwMTYxNTQxMzJmYzRi
Yjg4MGE5NTkzODg1ODMxZjNjYTU5YTYyLi5mMTM2ZWNiOWRkM2VhY2VmYWRkOTc0YmRjZGJkNDJj
YWVmZjYyN2NmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2Nv
YS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmgKQEAgLTI1LDcgKzI1LDcgQEAKIAogI3ByYWdtYSBv
bmNlCiAKLSNpZiAoUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgSEFWRShBVktJVCkpIHx8IChQTEFU
Rk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCisjaWYgRU5BQkxF
KFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQogCiAjaW5jbHVkZSAiQ29ubmVjdGlvbi5oIgogI2lu
Y2x1ZGUgIk1lc3NhZ2VSZWNlaXZlci5oIgpAQCAtMTY2LDUgKzE2Niw1IEBAIHByb3RlY3RlZDoK
ICAgICAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAogCi0jZW5kaWYgLy8gUExBVEZPUk0oSU9TX0ZB
TUlMWSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RF
KSkKKyNlbmRpZiAvLyBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2Vy
Lm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNj
cmVlbk1hbmFnZXIubWVzc2FnZXMuaW4KaW5kZXggN2M1NmVkMDRhYTgyZjgxZjdjNjc4ZWFjNWQ3
MTg4YWZiNjc3MjM2Mi4uNGY5YWUzYWYwYzgwYmVmNGM0YTdjNWU5YzM1ZGZiNzExNDBkNmJiMSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVl
bk1hbmFnZXIubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29h
L1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubWVzc2FnZXMuaW4KQEAgLTIwLDcgKzIwLDcgQEAKICMg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UKICMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAotI2lmIChQTEFURk9STShJT1Nf
RkFNSUxZKSAmJiBIQVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVP
X1BSRVNFTlRBVElPTl9NT0RFKSkKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUp
CiBtZXNzYWdlcyAtPiBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyIHsKICAgICBSZXF1ZXN0RnVsbHNj
cmVlbk1vZGUodWludDY0X3QgY29udGV4dElkLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51
bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUgdmlkZW9GdWxsc2NyZWVuTW9kZSwgYm9vbCBmaW5pc2hl
ZFdpdGhNZWRpYSkKICAgICBSZXF1ZXN0VXBkYXRlSW5saW5lUmVjdCh1aW50NjRfdCBjb250ZXh0
SWQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxs
c2NyZWVuTWFuYWdlci5tbSBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyLm1tCmluZGV4IDQxODFkYjVkZjk3YTAyMzRiZTU1NmZjNzJkMmI0MTZk
NjVlYWViOWYuLmZmNGEyZDNlOTE2YjUwMDJmNjdmMzlmZjdlOWUxMTg1OWIzNjdlNDUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5h
Z2VyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3Jl
ZW5NYW5hZ2VyLm1tCkBAIC0yNSw3ICsyNSw3IEBACiAjaW1wb3J0ICJjb25maWcuaCIKICNpbXBv
cnQgIlZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaCIKIAotI2lmIChQTEFURk9STShJT1NfRkFNSUxZ
KSAmJiBIQVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNF
TlRBVElPTl9NT0RFKSkKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCiAKICNp
bXBvcnQgIkF0dGFjaG1lbnQuaCIKICNpbXBvcnQgIkxheWVySG9zdGluZ0NvbnRleHQuaCIKQEAg
LTU3MCw0ICs1NzAsNCBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OnNldFZpZGVvTGF5
ZXJGcmFtZUZlbmNlZCh1aW50NjRfdCBjb250ZXh0SWQsIFdlYkNvcgogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJLaXQKIAotI2VuZGlmIC8vIFBMQVRGT1JNKElPU19GQU1JTFkpIHx8IChQTEFURk9STShN
QUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCisjZW5kaWYgLy8gRU5BQkxF
KFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396796</attachid>
            <date>2020-04-17 14:11:17 -0700</date>
            <delta_ts>2020-04-17 15:41:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210638-20200417141117.patch</filename>
            <type>text/plain</type>
            <size>3389</size>
            <attacher name="Peng Liu">peng.liu6</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwMjU5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMmU5YzUxZDlmYzUyMDky
ZTA3NDUzNDljZTYyOTFiNzhjYWFjYmZkYi4uMGU5M2E3OGE3OTIwZGEyY2MwMjgyNmUzZWI4MmEw
NzVmYmU2Zjk3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIwLTA0LTE3ICBQZW5n
IExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CisKKyAgICAgICAgQ2xlYW51cCB0aGUgbWFjcm9z
IGZvciB2aWRlbyBmdWxsc2NyZWVuIGFuZCBwaWN0dXJlLWluLXBpY3R1cmUKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDYzOAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEEgZm9sbG93LXVwIHBhdGNoIHRv
IGZpeCBidWlsZCBmYWlsdXJlcyBvZiByMjYwMjU5LgorCisgICAgICAgICogcGxhdGZvcm0vaW9z
L1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lmg6CisgICAgICAgICogcGxhdGZvcm0vaW9z
L1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tOgorICAgICAgICAqIHBsYXRmb3JtL2lv
cy9XZWJWaWRlb0Z1bGxzY3JlZW5Db250cm9sbGVyQVZLaXQubW06CisKIDIwMjAtMDQtMTcgIFBl
bmcgTGl1ICA8cGVuZy5saXU2QGFwcGxlLmNvbT4KIAogICAgICAgICBDbGVhbnVwIHRoZSBtYWNy
b3MgZm9yIHZpZGVvIGZ1bGxzY3JlZW4gYW5kIHBpY3R1cmUtaW4tcGljdHVyZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFW
S2l0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJm
YWNlQVZLaXQuaAppbmRleCAxYTFjYjc2ZDkyOWFlNzllYjQ4MmRmODg4MDk4ODAyMTI3N2U2ZjZj
Li5kNmFjNGNhMDVmMmRkZmM4OGUzMGM4ZTFiM2JmZTZhMjdjYWU0MjM4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJm
YWNlQVZLaXQuaApAQCAtMjYsNyArMjYsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIFBMQVRG
T1JNKElPU19GQU1JTFkpCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgRU5BQkxFKFZJREVP
X1BSRVNFTlRBVElPTl9NT0RFKQogCiAjaW5jbHVkZSAiRXZlbnRMaXN0ZW5lci5oIgogI2luY2x1
ZGUgIkhUTUxNZWRpYUVsZW1lbnRFbnVtcy5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tCmluZGV4
IDQ4MWViNjk4ZTM5MzM1ZGE2MDEyZTJjMWIwOGM0ODE4ODM2Zjg5MWYuLjM2ZTkwZDZmNGRlMTQ0
MWVmMGY0YzZkOGM1YTdlN2NjMzljOGZhNjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbQorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KQEAg
LTI2LDE0ICsyNiwxMSBAQAogI2ltcG9ydCAiY29uZmlnLmgiCiAjaW1wb3J0ICJWaWRlb0Z1bGxz
Y3JlZW5JbnRlcmZhY2VBVktpdC5oIgogCi0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLQotI2lt
cG9ydCAiUGljdHVyZUluUGljdHVyZVN1cHBvcnQuaCIKLQotI2lmIEhBVkUoQVZLSVQpCisjaWYg
UExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQog
CiAjaW1wb3J0ICJHZW9tZXRyeVV0aWxpdGllcy5oIgogI2ltcG9ydCAiTG9nZ2luZy5oIgorI2lt
cG9ydCAiUGljdHVyZUluUGljdHVyZVN1cHBvcnQuaCIKICNpbXBvcnQgIlBsYXliYWNrU2Vzc2lv
bkludGVyZmFjZUFWS2l0LmgiCiAjaW1wb3J0ICJSdW50aW1lQXBwbGljYXRpb25DaGVja3MuaCIK
ICNpbXBvcnQgIlRpbWVSYW5nZXMuaCIKQEAgLTE1NTEsOCArMTU0OCw2IEBAIGJvb2wgVmlkZW9G
dWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6OmlzUGxheWluZ1ZpZGVvSW5FbmhhbmNlZEZ1bGxzY3Jl
ZW4oKSBjb25zdAogICAgIHJldHVybiBoYXNNb2RlKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRF
bnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZVBpY3R1cmVJblBpY3R1cmUpICYmIFtwbGF5ZXJDb250
cm9sbGVyKCkgaXNQbGF5aW5nXTsKIH0KIAotI2VuZGlmIC8vIEhBVkUoQVZLSVQpCi0KIHN0YXRp
YyBPcHRpb25hbDxib29sPiBpc1BpY3R1cmVJblBpY3R1cmVTdXBwb3J0ZWQ7CiAKIHZvaWQgV2Vi
Q29yZTo6c2V0U3VwcG9ydHNQaWN0dXJlSW5QaWN0dXJlKGJvb2wgaXNTdXBwb3J0ZWQpCkBAIC0x
NTcxLDQgKzE1NjYsNCBAQCBib29sIFdlYkNvcmU6OnN1cHBvcnRzUGljdHVyZUluUGljdHVyZSgp
CiAjZW5kaWYKIH0KIAotI2VuZGlmIC8vIFBMQVRGT1JNKElPU19GQU1JTFkpCisjZW5kaWYgLy8g
UExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVl
bkNvbnRyb2xsZXJBVktpdC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRl
b0Z1bGxzY3JlZW5Db250cm9sbGVyQVZLaXQubW0KaW5kZXggZTFhYTI2NjE2YTllZjdhMjQyNTQ5
OTc0ZjY4OWI4MWQzOGZkODczNC4uZmU4ZDZkMDhiMjE3ZTViNGEwNGQyYWIyNDQ3ZWY2ZDI1ZTEw
MzFlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVs
bHNjcmVlbkNvbnRyb2xsZXJBVktpdC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9p
b3MvV2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckFWS2l0Lm1tCkBAIC0yNCwxMSArMjQsMTAg
QEAKICAqLwogCiAjaW1wb3J0ICJjb25maWcuaCIKKyNpbXBvcnQgIldlYlZpZGVvRnVsbHNjcmVl
bkNvbnRyb2xsZXJBVktpdC5oIgogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKIAotI2ltcG9y
dCAiV2ViVmlkZW9GdWxsc2NyZWVuQ29udHJvbGxlckFWS2l0LmgiCi0KICNpbXBvcnQgIkxvZ2dp
bmcuaCIKICNpbXBvcnQgIk1lZGlhU2VsZWN0aW9uT3B0aW9uLmgiCiAjaW1wb3J0ICJQbGF5YmFj
a1Nlc3Npb25JbnRlcmZhY2VBVktpdC5oIgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>