<?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>205975</bug_id>
          
          <creation_ts>2020-01-08 17:24:27 -0800</creation_ts>
          <short_desc>Use HAVE(TOUCH_BAR) instead of PLATFORM(COCOA) in more places</short_desc>
          <delta_ts>2020-01-09 15:50:20 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</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="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1604397</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-01-08 17:24:27 -0800</bug_when>
    <thetext>Use HAVE(TOUCH_BAR) instead of PLATFORM(COCOA) in more places</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1604399</commentid>
    <comment_count>1</comment_count>
      <attachid>387168</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-01-08 17:25:58 -0800</bug_when>
    <thetext>Created attachment 387168
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1604400</commentid>
    <comment_count>2</comment_count>
      <attachid>387168</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-01-08 17:27:39 -0800</bug_when>
    <thetext>Comment on attachment 387168
Patch

Nice. r=mews</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1604409</commentid>
    <comment_count>3</comment_count>
      <attachid>387170</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-01-08 17:36:44 -0800</bug_when>
    <thetext>Created attachment 387170
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1604908</commentid>
    <comment_count>4</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-01-09 15:49:03 -0800</bug_when>
    <thetext>https://trac.webkit.org/changeset/254312/webkit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1604911</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-01-09 15:50:20 -0800</bug_when>
    <thetext>&lt;rdar://problem/58461102&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>387168</attachid>
            <date>2020-01-08 17:25:58 -0800</date>
            <delta_ts>2020-01-08 17:36:43 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-205975-20200108172557.patch</filename>
            <type>text/plain</type>
            <size>16820</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU0MTY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGFhNjU5YWIyYmY4MDE2MWI2
ZGQ4NzAyNjYzMGI1YTBiMTg4NjAyZWIuLjI1NDVmNzJiMGJiMzIyOTAwMDlmYjE3ZDkzYzk2Mzgy
MjQ0NDMwYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMjAtMDEtMDggIFNpbW9uIEZy
YXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAgICAgICAgVXNlIEhBVkUoVE9VQ0hf
QkFSKSBpbnN0ZWFkIG9mIFBMQVRGT1JNKENPQ09BKSBpbiBtb3JlIHBsYWNlcworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA1OTc1CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUHJvdGVjdCBUb3VjaCBCYXIt
cmVsYXRlZCBjb2RlIHdpdGggSEFWRShUT1VDSF9CQVIpIGluc3RlYWQgb2YgUExBVEZPUk0oQ09D
T0EpLgorCisgICAgICAgICogU2hhcmVkL1RvdWNoQmFyTWVudURhdGEuY3BwOgorICAgICAgICAq
IFNoYXJlZC9Ub3VjaEJhck1lbnVEYXRhLmg6CisgICAgICAgICogU2hhcmVkL1RvdWNoQmFyTWVu
dUl0ZW1EYXRhLmNwcDoKKyAgICAgICAgKiBTaGFyZWQvVG91Y2hCYXJNZW51SXRlbURhdGEuaDoK
KyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvV2ViVmlld0ltcGwubW06CisgICAgICAgIChXZWJL
aXQ6OldlYlZpZXdJbXBsOjpmb3JjZVJlcXVlc3RDYW5kaWRhdGVzRm9yVGVzdGluZyk6CisgICAg
ICAgIChXZWJLaXQ6OldlYlZpZXdJbXBsOjpzZXRFZGl0YWJsZUVsZW1lbnRJc0ZvY3VzZWQpOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAqIFVJUHJvY2Vz
cy9XZWJQYWdlUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3Nh
Z2VzLmluOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViUGFnZTo6ZGlkU3RhcnRQYWdlVHJhbnNpdGlvbik6CisgICAgICAgIChX
ZWJLaXQ6OldlYlBhZ2U6OmRpZENoYW5nZVNlbGVjdGlvbk9yT3ZlcmZsb3dTY3JvbGxQb3NpdGlv
bik6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmRpZEluc2VydE1lbnVFbGVtZW50KToKKyAg
ICAgICAgKFdlYktpdDo6V2ViUGFnZTo6ZGlkUmVtb3ZlTWVudUVsZW1lbnQpOgorICAgICAgICAo
V2ViS2l0OjpXZWJQYWdlOjpkaWRJbnNlcnRNZW51SXRlbUVsZW1lbnQpOgorICAgICAgICAoV2Vi
S2l0OjpXZWJQYWdlOjpkaWRSZW1vdmVNZW51SXRlbUVsZW1lbnQpOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmg6CisKIDIwMjAtMDEtMDcgIERhbmllbCBCYXRlcyAgPGRh
YmF0ZXNAYXBwbGUuY29tPgogCiAgICAgICAgIEZpcnN0IGNoYXJhY3RlciBpbiBlYWNoIHdvcmQt
d3JhcHBlZCBsaW5lIGhhcyBpbmNvcnJlY3QgY2hhcmFjdGVyIHJlY3Qgd2hlbiByZXF1ZXN0ZWQg
cmFuZ2Ugc3BhbnMgbXVsdGlwbGUgbGluZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hh
cmVkL1RvdWNoQmFyTWVudURhdGEuY3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvVG91Y2hCYXJN
ZW51RGF0YS5jcHAKaW5kZXggNzUyNDc2M2UzNWFiMTdlMmI1ZDRjNWNiZmMyMzMwNDNmMDA0M2Qy
MS4uMTM2ZTJiY2JkM2FlNDg0NDdiZGQ3MmJmYmJiZmQ1ZmYxNGJjNDc5NyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9TaGFyZWQvVG91Y2hCYXJNZW51RGF0YS5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9TaGFyZWQvVG91Y2hCYXJNZW51RGF0YS5jcHAKQEAgLTI0LDYgKzI0LDkgQEAKICAqLwog
CiAjaW5jbHVkZSAiY29uZmlnLmgiCisKKyNpZiBIQVZFKFRPVUNIX0JBUikKKwogI2luY2x1ZGUg
IlRvdWNoQmFyTWVudURhdGEuaCIKIAogI2luY2x1ZGUgIkRlY29kZXIuaCIKQEAgLTY4LDMgKzcx
LDUgQEAgYm9vbCBUb3VjaEJhck1lbnVEYXRhOjpkZWNvZGUoSVBDOjpEZWNvZGVyJiBkZWNvZGVy
LCBUb3VjaEJhck1lbnVEYXRhJiBkYXRhKQogfQogICAgIAogfQorCisjZW5kaWYgLy8gSEFWRShU
T1VDSF9CQVIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Ub3VjaEJhck1lbnVE
YXRhLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Ub3VjaEJhck1lbnVEYXRhLmgKaW5kZXggOGZj
MjI5YmE4MGM4MWI4MDkwYzIyMTdjZmJkZWRmYjBiZjQ0ODljMy4uYjdiOWIxNzkyYTAzOWNmN2Jm
OWE5MjY5NzYxMTMzMjhlNDMzOTgyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQv
VG91Y2hCYXJNZW51RGF0YS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1RvdWNoQmFyTWVu
dURhdGEuaApAQCAtMjQsNiArMjQsOSBAQAogICovCiAKICNwcmFnbWEgb25jZQorCisjaWYgSEFW
RShUT1VDSF9CQVIpCisKICNpbmNsdWRlICJBcmd1bWVudENvZGVycy5oIgogI2luY2x1ZGUgIlRv
dWNoQmFyTWVudUl0ZW1EYXRhLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CkBA
IC02Myw1ICs2Niw3IEBAIHByaXZhdGU6CiAgICAgCiAgICAgYm9vbCBtX2lzUGFnZUN1c3RvbWl6
ZWQgeyBmYWxzZSB9OwogfTsKLSAgICAKKwogfQorCisjZW5kaWYgLy8gSEFWRShUT1VDSF9CQVIp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Ub3VjaEJhck1lbnVJdGVtRGF0YS5j
cHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Ub3VjaEJhck1lbnVJdGVtRGF0YS5jcHAKaW5kZXgg
NmI3MDg2YjY4NTVhOGI2M2VhYTVkOGI5YmMyZTcwNTU3YjVkZDI5YS4uOTRhMDM2ZjkwYTAyYzM5
ODlhZmU2YmVhODQ3NjZjMWQ4YWZjZmFhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFy
ZWQvVG91Y2hCYXJNZW51SXRlbURhdGEuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1Rv
dWNoQmFyTWVudUl0ZW1EYXRhLmNwcApAQCAtMjIsNyArMjIsMTEgQEAKICAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLworCiAjaW5jbHVkZSAi
Y29uZmlnLmgiCisKKyNpZiBIQVZFKFRPVUNIX0JBUikKKwogI2luY2x1ZGUgIlRvdWNoQmFyTWVu
dUl0ZW1EYXRhLmgiCiAKICNpbmNsdWRlICJEZWNvZGVyLmgiCkBAIC02OSwzICs3Myw1IEBAIE9w
dGlvbmFsPFRvdWNoQmFyTWVudUl0ZW1EYXRhPiBUb3VjaEJhck1lbnVJdGVtRGF0YTo6ZGVjb2Rl
KElQQzo6RGVjb2RlciYgZGVjb2RlCiB9CiAKIH0KKworI2VuZGlmIC8vIEhBVkUoVE9VQ0hfQkFS
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvVG91Y2hCYXJNZW51SXRlbURhdGEu
aCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1RvdWNoQmFyTWVudUl0ZW1EYXRhLmgKaW5kZXggMmQ2
ODE5YzRlMWM2MDM3NGMzMWNiYTkzNzdkMWJlMzVlMmI0ZGQ2Mi4uY2JhNjkxN2UzYzkzNzhhNWMw
NjNjOWNlMTUyZmNmZTViOTU4NTQ1MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQv
VG91Y2hCYXJNZW51SXRlbURhdGEuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Ub3VjaEJh
ck1lbnVJdGVtRGF0YS5oCkBAIC0yNCw2ICsyNCw5IEBACiAgKi8KIAogI3ByYWdtYSBvbmNlCisK
KyNpZiBIQVZFKFRPVUNIX0JBUikKKwogI2luY2x1ZGUgIkFyZ3VtZW50Q29kZXJzLmgiCiAjaW5j
bHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKQEAgLTkxLDMgKzk0LDUgQEAgaW5saW5lIGJv
b2wgb3BlcmF0b3IhPShjb25zdCBUb3VjaEJhck1lbnVJdGVtRGF0YSYgbGhzLCBjb25zdCBUb3Vj
aEJhck1lbnVJdGVtRGEKIH0KIAogfQorCisjZW5kaWYgLy8gSEFWRShUT1VDSF9CQVIpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJWaWV3SW1wbC5tbSBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlZpZXdJbXBsLm1tCmluZGV4IDcxMzhlZmM5
NDE1ZjhhNjE0ZjIzYWZiYTJhNGM2YTE1NTNlYzNkODguLjRlOWRlMmM2NWNlNjg0MjVjNDFkMmNj
YTA3MjIxY2YyNTBiYmRmYWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0Nv
Y29hL1dlYlZpZXdJbXBsLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dl
YlZpZXdJbXBsLm1tCkBAIC0xMjkzLDggKzEyOTMsNiBAQCB2b2lkIFdlYlZpZXdJbXBsOjp1cGRh
dGVNZWRpYVRvdWNoQmFyKCkKICNlbmRpZgogfQogCi0jaWYgSEFWRShUT1VDSF9CQVIpCi0KIGJv
b2wgV2ViVmlld0ltcGw6OmNhblRvZ2dsZVBpY3R1cmVJblBpY3R1cmUoKQogewogI2lmIEVOQUJM
RShXRUJfUExBWUJBQ0tfQ09OVFJPTFNfTUFOQUdFUikKQEAgLTEzMDQsMTQgKzEzMDIsMTAgQEAg
Ym9vbCBXZWJWaWV3SW1wbDo6Y2FuVG9nZ2xlUGljdHVyZUluUGljdHVyZSgpCiAjZW5kaWYKIH0K
IAotI2VuZGlmIC8vIEhBVkUoVE9VQ0hfQkFSKQotCiB2b2lkIFdlYlZpZXdJbXBsOjpmb3JjZVJl
cXVlc3RDYW5kaWRhdGVzRm9yVGVzdGluZygpCiB7CiAgICAgbV9jYW5DcmVhdGVUb3VjaEJhcnMg
PSB0cnVlOwotI2lmIEhBVkUoVE9VQ0hfQkFSKQogICAgIHVwZGF0ZVRvdWNoQmFyKCk7Ci0jZW5k
aWYKIH0KIAogYm9vbCBXZWJWaWV3SW1wbDo6c2hvdWxkUmVxdWVzdENhbmRpZGF0ZXMoKSBjb25z
dApAQCAtMTMyMywxNSArMTMxNywxNSBAQCB2b2lkIFdlYlZpZXdJbXBsOjpzZXRFZGl0YWJsZUVs
ZW1lbnRJc0ZvY3VzZWQoYm9vbCBlZGl0YWJsZUVsZW1lbnRJc0ZvY3VzZWQpCiB7CiAgICAgbV9l
ZGl0YWJsZUVsZW1lbnRJc0ZvY3VzZWQgPSBlZGl0YWJsZUVsZW1lbnRJc0ZvY3VzZWQ7CiAKLSNp
ZiBIQVZFKFRPVUNIX0JBUikKICAgICAvLyBJZiB0aGUgZWRpdGFibGUgZWxlbWVudHMgaGF2ZSBi
bHVycmVkLCB0aGVuIHdlIG1pZ2h0IG5lZWQgdG8gZ2V0IHJpZCBvZiB0aGUgZWRpdGluZyBmdW5j
dGlvbiBiYXIuCiAgICAgaWYgKCFtX2VkaXRhYmxlRWxlbWVudElzRm9jdXNlZCkKICAgICAgICAg
dXBkYXRlVG91Y2hCYXIoKTsKLSNlbmRpZgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKwog
I2Vsc2UgLy8gIUhBVkUoVE9VQ0hfQkFSKQorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogdm9pZCBX
ZWJWaWV3SW1wbDo6Zm9yY2VSZXF1ZXN0Q2FuZGlkYXRlc0ZvclRlc3RpbmcoKQpAQCAtMTM0OSw2
ICsxMzQzLDcgQEAgdm9pZCBXZWJWaWV3SW1wbDo6c2V0RWRpdGFibGVFbGVtZW50SXNGb2N1c2Vk
KGJvb2wgZWRpdGFibGVFbGVtZW50SXNGb2N1c2VkKQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJL
aXQKKwogI2VuZGlmIC8vIEhBVkUoVE9VQ0hfQkFSKQogCiBuYW1lc3BhY2UgV2ViS2l0IHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDYxZmQ5MWNmZDkxMjM5
ODg2ZDA3MWY4MGRhOWJkNzZhODMxYTEyYzQuLmIyZjk5NjY0NzQ0ZDdiM2U0MTQyZGY4MTA4OWYy
ZGYzNGEyMDZkMjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApA
QCAtMTk1LDggKzE5NSw2IEBACiAjaW5jbHVkZSAiSW5zZXJ0VGV4dE9wdGlvbnMuaCIKICNpbmNs
dWRlICJSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYVByb3h5LmgiCiAjaW5jbHVkZSAiUmVtb3Rl
TGF5ZXJUcmVlU2Nyb2xsaW5nUGVyZm9ybWFuY2VEYXRhLmgiCi0jaW5jbHVkZSAiVG91Y2hCYXJN
ZW51RGF0YS5oIgotI2luY2x1ZGUgIlRvdWNoQmFyTWVudUl0ZW1EYXRhLmgiCiAjaW5jbHVkZSAi
VXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eS5oIgogI2luY2x1ZGUgIlZlcnNpb25DaGVja3Mu
aCIKICNpbmNsdWRlICJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaCIKQEAgLTIwNiw2ICsy
MDQsMTEgQEAKICNpbmNsdWRlIDx3dGYvTWFjaFNlbmRSaWdodC5oPgogI2VuZGlmCiAKKyNpZiBI
QVZFKFRPVUNIX0JBUikKKyNpbmNsdWRlICJUb3VjaEJhck1lbnVEYXRhLmgiCisjaW5jbHVkZSAi
VG91Y2hCYXJNZW51SXRlbURhdGEuaCIKKyNlbmRpZgorCiAjaWYgUExBVEZPUk0oQ09DT0EpIHx8
IFBMQVRGT1JNKEdUSykKICNpbmNsdWRlICJWaWV3U25hcHNob3RTdG9yZS5oIgogI2VuZGlmCkBA
IC01OTU2LDYgKzU5NTksOCBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6c2V0SGFzSGFkU2VsZWN0aW9u
Q2hhbmdlc0Zyb21Vc2VySW50ZXJhY3Rpb24oYm9vbCBoYXNIYWRVc2VyUwogICAgIG1faGFzSGFk
U2VsZWN0aW9uQ2hhbmdlc0Zyb21Vc2VySW50ZXJhY3Rpb24gPSBoYXNIYWRVc2VyU2VsZWN0aW9u
Q2hhbmdlczsKIH0KIAorI2lmIEhBVkUoVE9VQ0hfQkFSKQorCiB2b2lkIFdlYlBhZ2VQcm94eTo6
c2V0SXNUb3VjaEJhclVwZGF0ZVN1cHJlc3NlZEZvckhpZGRlbkNvbnRlbnRFZGl0YWJsZShib29s
IGlnbm9yZVRvdWNoQmFyVXBkYXRlKQogewogICAgIG1faXNUb3VjaEJhclVwZGF0ZVN1cHJlc3Nl
ZEZvckhpZGRlbkNvbnRlbnRFZGl0YWJsZSA9IGlnbm9yZVRvdWNoQmFyVXBkYXRlOwpAQCAtNTk2
Niw2ICs1OTcxLDggQEAgdm9pZCBXZWJQYWdlUHJveHk6OnNldElzTmV2ZXJSaWNobHlFZGl0YWJs
ZUZvclRvdWNoQmFyKGJvb2wgaXNOZXZlclJpY2hseUVkaXRhYmwKICAgICBtX2lzTmV2ZXJSaWNo
bHlFZGl0YWJsZUZvclRvdWNoQmFyID0gaXNOZXZlclJpY2hseUVkaXRhYmxlOwogfQogCisjZW5k
aWYKKwogdm9pZCBXZWJQYWdlUHJveHk6OnJlcXVlc3RET01QYXN0ZUFjY2Vzcyhjb25zdCBXZWJD
b3JlOjpJbnRSZWN0JiBlbGVtZW50UmVjdCwgY29uc3QgU3RyaW5nJiBvcmlnaW5JZGVudGlmaWVy
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkRPTVBhc3RlQWNjZXNzUmVzcG9uc2Up
PiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIG1fcGFnZUNsaWVudC0+cmVxdWVzdERPTVBh
c3RlQWNjZXNzKGVsZW1lbnRSZWN0LCBvcmlnaW5JZGVudGlmaWVyLCBXVEZNb3ZlKGNvbXBsZXRp
b25IYW5kbGVyKSk7CkBAIC05MDQ5LDcgKzkwNTYsOCBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6ZWZm
ZWN0aXZlQXBwZWFyYW5jZURpZENoYW5nZSgpCiAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6
RWZmZWN0aXZlQXBwZWFyYW5jZURpZENoYW5nZSh1c2VEYXJrQXBwZWFyYW5jZSgpLCB1c2VFbGV2
YXRlZFVzZXJJbnRlcmZhY2VMZXZlbCgpKSk7CiB9CiAKLSNpZiBQTEFURk9STShDT0NPQSkKKyNp
ZiBIQVZFKFRPVUNIX0JBUikKKwogdm9pZCBXZWJQYWdlUHJveHk6OnRvdWNoQmFyTWVudURhdGFD
aGFuZ2VkKGNvbnN0IFRvdWNoQmFyTWVudURhdGEmIHRvdWNoQmFyTWVudURhdGEpCiB7CiAgICAg
bV90b3VjaEJhck1lbnVEYXRhID0gdG91Y2hCYXJNZW51RGF0YTsKQEAgLTkwNjQsNiArOTA3Miw3
IEBAIHZvaWQgV2ViUGFnZVByb3h5Ojp0b3VjaEJhck1lbnVJdGVtRGF0YVJlbW92ZWQoY29uc3Qg
VG91Y2hCYXJNZW51SXRlbURhdGEmIHRvdWNoCiB7CiAgICAgbV90b3VjaEJhck1lbnVEYXRhLnJl
bW92ZU1lbnVJdGVtKHRvdWNoQmFyTWVudUl0ZW1EYXRhKTsKIH0KKwogI2VuZGlmCiAKICNpZiBF
TkFCTEUoQVRUQUNITUVOVF9FTEVNRU5UKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuaAppbmRleCBlNjM0YTA2NTViYjE5MTM1OGQwNmNmM2M5NTQ3NTIxYTkxMmVlMTg3Li44YjE2
ZTA4NmM5NDVlYmM4YThhZjc1MGRmMWU3Mjc3MjI3MGU2M2M1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtMTM0LDYgKzEzNCw5IEBAIE9CSkNfQ0xBU1MgX1dLUmVt
b3RlT2JqZWN0UmVnaXN0cnk7CiAjaWYgUExBVEZPUk0oQ09DT0EpCiAjaW5jbHVkZSAiRHluYW1p
Y1ZpZXdwb3J0U2l6ZVVwZGF0ZS5oIgogI2luY2x1ZGUgIlJlbW90ZUxheWVyVHJlZU5vZGUuaCIK
KyNlbmRpZgorCisjaWYgSEFWRShUT1VDSF9CQVIpCiAjaW5jbHVkZSAiVG91Y2hCYXJNZW51RGF0
YS5oIgogI2luY2x1ZGUgIlRvdWNoQmFyTWVudUl0ZW1EYXRhLmgiCiAjZW5kaWYKQEAgLTY1NSw3
ICs2NTgsNyBAQCBwdWJsaWM6CiAKICAgICBPcHRpb25hbDxXZWJDb3JlOjpGb250QXR0cmlidXRl
cz4gY2FjaGVkRm9udEF0dHJpYnV0ZXNBdFNlbGVjdGlvblN0YXJ0KCkgY29uc3QgeyByZXR1cm4g
bV9jYWNoZWRGb250QXR0cmlidXRlc0F0U2VsZWN0aW9uU3RhcnQ7IH0KIAotI2lmIFBMQVRGT1JN
KENPQ09BKQorI2lmIEhBVkUoVE9VQ0hfQkFSKQogICAgIGNvbnN0IFRvdWNoQmFyTWVudURhdGEm
IHRvdWNoQmFyTWVudURhdGEoKSBjb25zdCB7IHJldHVybiBtX3RvdWNoQmFyTWVudURhdGE7IH0K
ICNlbmRpZgogCkBAIC0xNDczLDggKzE0NzYsMTEgQEAgcHVibGljOgogICAgIHZvaWQgc2V0VXNl
ckludGVyZmFjZUxheW91dERpcmVjdGlvbihXZWJDb3JlOjpVc2VySW50ZXJmYWNlTGF5b3V0RGly
ZWN0aW9uKTsKIAogICAgIGJvb2wgaGFzSGFkU2VsZWN0aW9uQ2hhbmdlc0Zyb21Vc2VySW50ZXJh
Y3Rpb24oKSBjb25zdCB7IHJldHVybiBtX2hhc0hhZFNlbGVjdGlvbkNoYW5nZXNGcm9tVXNlcklu
dGVyYWN0aW9uOyB9CisKKyNpZiBIQVZFKFRPVUNIX0JBUikKICAgICBib29sIGlzVG91Y2hCYXJV
cGRhdGVTdXByZXNzZWRGb3JIaWRkZW5Db250ZW50RWRpdGFibGUoKSBjb25zdCB7IHJldHVybiBt
X2lzVG91Y2hCYXJVcGRhdGVTdXByZXNzZWRGb3JIaWRkZW5Db250ZW50RWRpdGFibGU7IH0KICAg
ICBib29sIGlzTmV2ZXJSaWNobHlFZGl0YWJsZUZvclRvdWNoQmFyKCkgY29uc3QgeyByZXR1cm4g
bV9pc05ldmVyUmljaGx5RWRpdGFibGVGb3JUb3VjaEJhcjsgfQorI2VuZGlmCiAKICAgICBib29s
IGlzQWx3YXlzT25Mb2dnaW5nQWxsb3dlZCgpIGNvbnN0OwogCkBAIC0xNDk5LDcgKzE1MDUsNyBA
QCBwdWJsaWM6CiAgICAgdm9pZCBzY2hlZHVsZUZ1bGxFZGl0b3JTdGF0ZVVwZGF0ZSgpOwogICAg
IHZvaWQgZGlzcGF0Y2hEaWRSZWNlaXZlRWRpdG9yU3RhdGVBZnRlckZvY3VzKCk7CiAKLSNpZiBQ
TEFURk9STShDT0NPQSkKKyNpZiBIQVZFKFRPVUNIX0JBUikKICAgICB2b2lkIHRvdWNoQmFyTWVu
dURhdGFSZW1vdmVkKCk7CiAgICAgdm9pZCB0b3VjaEJhck1lbnVEYXRhQ2hhbmdlZChjb25zdCBU
b3VjaEJhck1lbnVEYXRhJik7CiAgICAgdm9pZCB0b3VjaEJhck1lbnVJdGVtRGF0YUFkZGVkKGNv
bnN0IFRvdWNoQmFyTWVudUl0ZW1EYXRhJik7CkBAIC0xODUxLDggKzE4NTcsMTEgQEAgcHJpdmF0
ZToKIAogICAgIHZvaWQgY29tcG9zaXRpb25XYXNDYW5jZWxlZCgpOwogICAgIHZvaWQgc2V0SGFz
SGFkU2VsZWN0aW9uQ2hhbmdlc0Zyb21Vc2VySW50ZXJhY3Rpb24oYm9vbCk7CisKKyNpZiBIQVZF
KFRPVUNIX0JBUikKICAgICB2b2lkIHNldElzVG91Y2hCYXJVcGRhdGVTdXByZXNzZWRGb3JIaWRk
ZW5Db250ZW50RWRpdGFibGUoYm9vbCk7CiAgICAgdm9pZCBzZXRJc05ldmVyUmljaGx5RWRpdGFi
bGVGb3JUb3VjaEJhcihib29sKTsKKyNlbmRpZgogCiAgICAgdm9pZCByZXF1ZXN0RE9NUGFzdGVB
Y2Nlc3MoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYsIGNvbnN0IFN0cmluZyYsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoV2ViQ29yZTo6RE9NUGFzdGVBY2Nlc3NSZXNwb25zZSk+JiYpOwogCkBAIC0y
NTU1LDggKzI1NjQsMTEgQEAgcHJpdmF0ZToKICAgICBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpN
ZWRpYVN0YXRlRmxhZ3MgbV9tZWRpYVN0YXRlIHsgV2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6SXNO
b3RQbGF5aW5nIH07CiAKICAgICBib29sIG1faGFzSGFkU2VsZWN0aW9uQ2hhbmdlc0Zyb21Vc2Vy
SW50ZXJhY3Rpb24geyBmYWxzZSB9OworCisjaWYgSEFWRShUT1VDSF9CQVIpCiAgICAgYm9vbCBt
X2lzVG91Y2hCYXJVcGRhdGVTdXByZXNzZWRGb3JIaWRkZW5Db250ZW50RWRpdGFibGUgeyBmYWxz
ZSB9OwogICAgIGJvb2wgbV9pc05ldmVyUmljaGx5RWRpdGFibGVGb3JUb3VjaEJhciB7IGZhbHNl
IH07CisjZW5kaWYKIAogI2lmIEVOQUJMRShNRURJQV9TRVNTSU9OKQogICAgIGJvb2wgbV9oYXNN
ZWRpYVNlc3Npb25XaXRoQWN0aXZlTWVkaWFFbGVtZW50cyB7IGZhbHNlIH07CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4gYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4KaW5kZXggOTU0Zjk3
NGEzMDg1MGI5ZWY1N2M5NDViZWQ0ODRhZGFmZjlmNjJlZC4uMmE3YWJlZjk2ZDc1NjI3MzFiNTY3
ZWQ5ODA5ZTAzMzNmOGMzNWZlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5tZXNzYWdlcy5pbgpAQCAtMjUyLDggKzI1MiwxMiBAQCBtZXNzYWdlcyAtPiBX
ZWJQYWdlUHJveHkgewogICAgIEVkaXRvclN0YXRlQ2hhbmdlZChzdHJ1Y3QgV2ViS2l0OjpFZGl0
b3JTdGF0ZSBlZGl0b3JTdGF0ZSkKICAgICBDb21wb3NpdGlvbldhc0NhbmNlbGVkKCkKICAgICBT
ZXRIYXNIYWRTZWxlY3Rpb25DaGFuZ2VzRnJvbVVzZXJJbnRlcmFjdGlvbihib29sIGhhc0hhZFVz
ZXJTZWxlY3Rpb25DaGFuZ2VzKQorCisjaWYgSEFWRShUT1VDSF9CQVIpCiAgICAgU2V0SXNUb3Vj
aEJhclVwZGF0ZVN1cHJlc3NlZEZvckhpZGRlbkNvbnRlbnRFZGl0YWJsZShib29sIGlzVG91Y2hC
YXJVcGRhdGVTdXByZXNzZWQpCiAgICAgU2V0SXNOZXZlclJpY2hseUVkaXRhYmxlRm9yVG91Y2hC
YXIoYm9vbCBpc05ldmVyUmljaGx5RWRpdGFibGUpCisjZW5kaWYKKwogICAgIFJlcXVlc3RET01Q
YXN0ZUFjY2VzcyhXZWJDb3JlOjpJbnRSZWN0IGVsZW1lbnRSZWN0LCBTdHJpbmcgb3JpZ2luSWRl
bnRpZmllcikgLT4gKGVudW06dWludDhfdCBXZWJDb3JlOjpET01QYXN0ZUFjY2Vzc1Jlc3BvbnNl
IHJlc3BvbnNlKSBTeW5jaHJvbm91cwogCiAgICAgIyBGaW5kIG1lc3NhZ2VzCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IDFlM2VmNzc5NGYwMTdm
MGU2YjhhZDQ2YzkwMjJmZGUzMjNkMDViNzkuLjQ5Mzk0ZmZjMzliZjNkOWIyYTQyYjI5OGMwMDdh
MDMwZmFmYWMwMTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuY3BwCkBAIC0yNjEsOCArMjYxLDYgQEAKICNpbmNsdWRlICJSZW1vdGVMYXllclRyZWVUcmFu
c2FjdGlvbi5oIgogI2luY2x1ZGUgIlJlbW90ZU9iamVjdFJlZ2lzdHJ5TWVzc2FnZXMuaCIKICNp
bmNsdWRlICJUZXh0Q2hlY2tpbmdDb250cm9sbGVyUHJveHkuaCIKLSNpbmNsdWRlICJUb3VjaEJh
ck1lbnVEYXRhLmgiCi0jaW5jbHVkZSAiVG91Y2hCYXJNZW51SXRlbURhdGEuaCIKICNpbmNsdWRl
ICJVc2VyTWVkaWFDYXB0dXJlTWFuYWdlci5oIgogI2luY2x1ZGUgIlZpZGVvRnVsbHNjcmVlbk1h
bmFnZXIuaCIKICNpbmNsdWRlICJXS1N0cmluZ0NGLmgiCkBAIC0yNzIsNiArMjcwLDExIEBACiAj
aW5jbHVkZSA8d3RmL01hY2hTZW5kUmlnaHQuaD4KICNlbmRpZgogCisjaWYgSEFWRShUT1VDSF9C
QVIpCisjaW5jbHVkZSAiVG91Y2hCYXJNZW51RGF0YS5oIgorI2luY2x1ZGUgIlRvdWNoQmFyTWVu
dUl0ZW1EYXRhLmgiCisjZW5kaWYKKwogI2lmIFBMQVRGT1JNKEdUSykKICNpbmNsdWRlICJXZWJQ
cmludE9wZXJhdGlvbkd0ay5oIgogI2luY2x1ZGUgIldlYlNlbGVjdGlvbkRhdGEuaCIKQEAgLTMy
NjQsMTggKzMyNjcsMjQgQEAgdm9pZCBXZWJQYWdlOjpkaWRTdGFydFBhZ2VUcmFuc2l0aW9uKCkK
ICNlbmRpZgogICAgIG1faGFzRXZlckZvY3VzZWRFbGVtZW50RHVlVG9Vc2VySW50ZXJhY3Rpb25T
aW5jZVBhZ2VUcmFuc2l0aW9uID0gZmFsc2U7CiAgICAgbV9sYXN0RWRpdG9yU3RhdGVXYXNDb250
ZW50RWRpdGFibGUgPSBFZGl0b3JTdGF0ZUlzQ29udGVudEVkaXRhYmxlOjpVbnNldDsKKwogI2lm
IFBMQVRGT1JNKE1BQykKICAgICBpZiAoaGFzUHJldmlvdXNseUZvY3VzZWREdWVUb1VzZXJJbnRl
cmFjdGlvbikKICAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRIYXNIYWRT
ZWxlY3Rpb25DaGFuZ2VzRnJvbVVzZXJJbnRlcmFjdGlvbihtX2hhc0V2ZXJGb2N1c2VkRWxlbWVu
dER1ZVRvVXNlckludGVyYWN0aW9uU2luY2VQYWdlVHJhbnNpdGlvbikpOworI2VuZGlmCisKKyNp
ZiBIQVZFKFRPVUNIX0JBUikKICAgICBpZiAobV9pc1RvdWNoQmFyVXBkYXRlU3VwcmVzc2VkRm9y
SGlkZGVuQ29udGVudEVkaXRhYmxlKSB7CiAgICAgICAgIG1faXNUb3VjaEJhclVwZGF0ZVN1cHJl
c3NlZEZvckhpZGRlbkNvbnRlbnRFZGl0YWJsZSA9IGZhbHNlOwogICAgICAgICBzZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OlNldElzVG91Y2hCYXJVcGRhdGVTdXByZXNzZWRGb3JIaWRkZW5D
b250ZW50RWRpdGFibGUobV9pc1RvdWNoQmFyVXBkYXRlU3VwcmVzc2VkRm9ySGlkZGVuQ29udGVu
dEVkaXRhYmxlKSk7CiAgICAgfQorCiAgICAgaWYgKG1faXNOZXZlclJpY2hseUVkaXRhYmxlRm9y
VG91Y2hCYXIpIHsKICAgICAgICAgbV9pc05ldmVyUmljaGx5RWRpdGFibGVGb3JUb3VjaEJhciA9
IGZhbHNlOwogICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldElzTmV2ZXJS
aWNobHlFZGl0YWJsZUZvclRvdWNoQmFyKG1faXNOZXZlclJpY2hseUVkaXRhYmxlRm9yVG91Y2hC
YXIpKTsKICAgICB9CiAjZW5kaWYKKwogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgbV9p
c1Nob3dpbmdJbnB1dFZpZXdGb3JGb2N1c2VkRWxlbWVudCA9IGZhbHNlOwogI2VuZGlmCkBAIC01
NDMzLDYgKzU0NDIsNyBAQCB2b2lkIFdlYlBhZ2U6OmRpZENoYW5nZVNlbGVjdGlvbk9yT3ZlcmZs
b3dTY3JvbGxQb3NpdGlvbigpCiAgICAgbV9oYXNFdmVyRm9jdXNlZEVsZW1lbnREdWVUb1VzZXJJ
bnRlcmFjdGlvblNpbmNlUGFnZVRyYW5zaXRpb24gfD0gbV91c2VySXNJbnRlcmFjdGluZzsKIAog
ICAgIGlmICghaGFzUHJldmlvdXNseUZvY3VzZWREdWVUb1VzZXJJbnRlcmFjdGlvbiAmJiBtX2hh
c0V2ZXJGb2N1c2VkRWxlbWVudER1ZVRvVXNlckludGVyYWN0aW9uU2luY2VQYWdlVHJhbnNpdGlv
bikgeworI2lmIEhBVkUoVE9VQ0hfQkFSKQogICAgICAgICBpZiAoZnJhbWUuZG9jdW1lbnQoKS0+
cXVpcmtzKCkuaXNUb3VjaEJhclVwZGF0ZVN1cHJlc3NlZEZvckhpZGRlbkNvbnRlbnRFZGl0YWJs
ZSgpKSB7CiAgICAgICAgICAgICBtX2lzVG91Y2hCYXJVcGRhdGVTdXByZXNzZWRGb3JIaWRkZW5D
b250ZW50RWRpdGFibGUgPSB0cnVlOwogICAgICAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFn
ZVByb3h5OjpTZXRJc1RvdWNoQmFyVXBkYXRlU3VwcmVzc2VkRm9ySGlkZGVuQ29udGVudEVkaXRh
YmxlKG1faXNUb3VjaEJhclVwZGF0ZVN1cHJlc3NlZEZvckhpZGRlbkNvbnRlbnRFZGl0YWJsZSkp
OwpAQCAtNTQ0Miw2ICs1NDUyLDcgQEAgdm9pZCBXZWJQYWdlOjpkaWRDaGFuZ2VTZWxlY3Rpb25P
ck92ZXJmbG93U2Nyb2xsUG9zaXRpb24oKQogICAgICAgICAgICAgbV9pc05ldmVyUmljaGx5RWRp
dGFibGVGb3JUb3VjaEJhciA9IHRydWU7CiAgICAgICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OlNldElzTmV2ZXJSaWNobHlFZGl0YWJsZUZvclRvdWNoQmFyKG1faXNOZXZlclJp
Y2hseUVkaXRhYmxlRm9yVG91Y2hCYXIpKTsKICAgICAgICAgfQorI2VuZGlmCiAKICAgICAgICAg
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRIYXNIYWRTZWxlY3Rpb25DaGFuZ2VzRnJv
bVVzZXJJbnRlcmFjdGlvbihtX2hhc0V2ZXJGb2N1c2VkRWxlbWVudER1ZVRvVXNlckludGVyYWN0
aW9uU2luY2VQYWdlVHJhbnNpdGlvbikpOwogICAgIH0KQEAgLTU4ODEsNyArNTg5Miw3IEBAIHZv
aWQgV2ViUGFnZTo6ZGlkRmluaXNoTG9hZChXZWJGcmFtZSYgZnJhbWUpCiAKIHZvaWQgV2ViUGFn
ZTo6ZGlkSW5zZXJ0TWVudUVsZW1lbnQoSFRNTE1lbnVFbGVtZW50JiBlbGVtZW50KQogewotI2lm
IFBMQVRGT1JNKENPQ09BKQorI2lmIEhBVkUoVE9VQ0hfQkFSKQogICAgIHNlbmRUb3VjaEJhck1l
bnVEYXRhQWRkZWRVcGRhdGUoZWxlbWVudCk7CiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTShlbGVt
ZW50KTsKQEAgLTU4OTAsNyArNTkwMSw3IEBAIHZvaWQgV2ViUGFnZTo6ZGlkSW5zZXJ0TWVudUVs
ZW1lbnQoSFRNTE1lbnVFbGVtZW50JiBlbGVtZW50KQogCiB2b2lkIFdlYlBhZ2U6OmRpZFJlbW92
ZU1lbnVFbGVtZW50KEhUTUxNZW51RWxlbWVudCYgZWxlbWVudCkKIHsKLSNpZiBQTEFURk9STShD
T0NPQSkKKyNpZiBIQVZFKFRPVUNIX0JBUikKICAgICBzZW5kVG91Y2hCYXJNZW51RGF0YVJlbW92
ZWRVcGRhdGUoZWxlbWVudCk7CiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTShlbGVtZW50KTsKQEAg
LTU4OTksNyArNTkxMCw3IEBAIHZvaWQgV2ViUGFnZTo6ZGlkUmVtb3ZlTWVudUVsZW1lbnQoSFRN
TE1lbnVFbGVtZW50JiBlbGVtZW50KQogCiB2b2lkIFdlYlBhZ2U6OmRpZEluc2VydE1lbnVJdGVt
RWxlbWVudChIVE1MTWVudUl0ZW1FbGVtZW50JiBlbGVtZW50KQogewotI2lmIFBMQVRGT1JNKENP
Q09BKQorI2lmIEhBVkUoVE9VQ0hfQkFSKQogICAgIHNlbmRUb3VjaEJhck1lbnVJdGVtRGF0YUFk
ZGVkVXBkYXRlKGVsZW1lbnQpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0oZWxlbWVudCk7CkBA
IC01OTA4LDcgKzU5MTksNyBAQCB2b2lkIFdlYlBhZ2U6OmRpZEluc2VydE1lbnVJdGVtRWxlbWVu
dChIVE1MTWVudUl0ZW1FbGVtZW50JiBlbGVtZW50KQogCiB2b2lkIFdlYlBhZ2U6OmRpZFJlbW92
ZU1lbnVJdGVtRWxlbWVudChIVE1MTWVudUl0ZW1FbGVtZW50JiBlbGVtZW50KQogewotI2lmIFBM
QVRGT1JNKENPQ09BKQorI2lmIEhBVkUoVE9VQ0hfQkFSKQogICAgIHNlbmRUb3VjaEJhck1lbnVJ
dGVtRGF0YVJlbW92ZWRVcGRhdGUoZWxlbWVudCk7CiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTShl
bGVtZW50KTsKQEAgLTYxNTYsNyArNjE2Nyw3IEBAIHZvaWQgV2ViUGFnZTo6c2NoZWR1bGVGdWxs
RWRpdG9yU3RhdGVVcGRhdGUoKQogICAgIG1fZHJhd2luZ0FyZWEtPnNjaGVkdWxlQ29tcG9zaXRp
bmdMYXllckZsdXNoKCk7CiB9CiAKLSNpZiBQTEFURk9STShDT0NPQSkKKyNpZiBIQVZFKFRPVUNI
X0JBUikKIHZvaWQgV2ViUGFnZTo6c2VuZFRvdWNoQmFyTWVudURhdGFSZW1vdmVkVXBkYXRlKEhU
TUxNZW51RWxlbWVudCYgZWxlbWVudCkKIHsKICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6OlRvdWNoQmFyTWVudURhdGFDaGFuZ2VkKFRvdWNoQmFyTWVudURhdGEgeyB9KSk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggM2E1OTVmOGY1MjU5
ZmI0N2QyNmFhMDk4MWQ2NDEzN2QwOGMxZWE1Yy4uM2EwMjViYzBmZjRhNjdmOWE5NWExZmU2MmE0
MzlhNWIxZmQ4ZGY1OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuaApAQCAtMTI3MSw3ICsxMjcxLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHBsYXRmb3JtV2ls
bFBlcmZvcm1FZGl0aW5nQ29tbWFuZCgpOwogICAgIHZvaWQgc2VuZEVkaXRvclN0YXRlVXBkYXRl
KCk7CiAKLSNpZiBQTEFURk9STShDT0NPQSkKKyNpZiBIQVZFKFRPVUNIX0JBUikKICAgICB2b2lk
IHNlbmRUb3VjaEJhck1lbnVEYXRhQWRkZWRVcGRhdGUoV2ViQ29yZTo6SFRNTE1lbnVFbGVtZW50
Jik7CiAgICAgdm9pZCBzZW5kVG91Y2hCYXJNZW51RGF0YVJlbW92ZWRVcGRhdGUoV2ViQ29yZTo6
SFRNTE1lbnVFbGVtZW50Jik7CiAgICAgdm9pZCBzZW5kVG91Y2hCYXJNZW51SXRlbURhdGFBZGRl
ZFVwZGF0ZShXZWJDb3JlOjpIVE1MTWVudUl0ZW1FbGVtZW50Jik7CkBAIC0xODY1LDggKzE4NjUs
MTEgQEAgcHJpdmF0ZToKIAogICAgIGJvb2wgbV91c2VySXNJbnRlcmFjdGluZyB7IGZhbHNlIH07
CiAgICAgYm9vbCBtX2hhc0V2ZXJGb2N1c2VkRWxlbWVudER1ZVRvVXNlckludGVyYWN0aW9uU2lu
Y2VQYWdlVHJhbnNpdGlvbiB7IGZhbHNlIH07CisKKyNpZiBIQVZFKFRPVUNIX0JBUikKICAgICBi
b29sIG1faXNUb3VjaEJhclVwZGF0ZVN1cHJlc3NlZEZvckhpZGRlbkNvbnRlbnRFZGl0YWJsZSB7
IGZhbHNlIH07CiAgICAgYm9vbCBtX2lzTmV2ZXJSaWNobHlFZGl0YWJsZUZvclRvdWNoQmFyIHsg
ZmFsc2UgfTsKKyNlbmRpZgogICAgIE9wdGlvblNldDxXZWJDb3JlOjpBY3Rpdml0eVN0YXRlOjpG
bGFnPiBtX2xhc3RBY3Rpdml0eVN0YXRlQ2hhbmdlczsKIAogI2lmIEVOQUJMRShDT05URVhUX01F
TlVTKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>387170</attachid>
            <date>2020-01-08 17:36:44 -0800</date>
            <delta_ts>2020-01-08 17:48:50 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-205975-20200108173643.patch</filename>
            <type>text/plain</type>
            <size>17201</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU0MTY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGFhNjU5YWIyYmY4MDE2MWI2
ZGQ4NzAyNjYzMGI1YTBiMTg4NjAyZWIuLjI1NDVmNzJiMGJiMzIyOTAwMDlmYjE3ZDkzYzk2Mzgy
MjQ0NDMwYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMjAtMDEtMDggIFNpbW9uIEZy
YXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAgICAgICAgVXNlIEhBVkUoVE9VQ0hf
QkFSKSBpbnN0ZWFkIG9mIFBMQVRGT1JNKENPQ09BKSBpbiBtb3JlIHBsYWNlcworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA1OTc1CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUHJvdGVjdCBUb3VjaCBCYXIt
cmVsYXRlZCBjb2RlIHdpdGggSEFWRShUT1VDSF9CQVIpIGluc3RlYWQgb2YgUExBVEZPUk0oQ09D
T0EpLgorCisgICAgICAgICogU2hhcmVkL1RvdWNoQmFyTWVudURhdGEuY3BwOgorICAgICAgICAq
IFNoYXJlZC9Ub3VjaEJhck1lbnVEYXRhLmg6CisgICAgICAgICogU2hhcmVkL1RvdWNoQmFyTWVu
dUl0ZW1EYXRhLmNwcDoKKyAgICAgICAgKiBTaGFyZWQvVG91Y2hCYXJNZW51SXRlbURhdGEuaDoK
KyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvV2ViVmlld0ltcGwubW06CisgICAgICAgIChXZWJL
aXQ6OldlYlZpZXdJbXBsOjpmb3JjZVJlcXVlc3RDYW5kaWRhdGVzRm9yVGVzdGluZyk6CisgICAg
ICAgIChXZWJLaXQ6OldlYlZpZXdJbXBsOjpzZXRFZGl0YWJsZUVsZW1lbnRJc0ZvY3VzZWQpOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAqIFVJUHJvY2Vz
cy9XZWJQYWdlUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3Nh
Z2VzLmluOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViUGFnZTo6ZGlkU3RhcnRQYWdlVHJhbnNpdGlvbik6CisgICAgICAgIChX
ZWJLaXQ6OldlYlBhZ2U6OmRpZENoYW5nZVNlbGVjdGlvbk9yT3ZlcmZsb3dTY3JvbGxQb3NpdGlv
bik6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmRpZEluc2VydE1lbnVFbGVtZW50KToKKyAg
ICAgICAgKFdlYktpdDo6V2ViUGFnZTo6ZGlkUmVtb3ZlTWVudUVsZW1lbnQpOgorICAgICAgICAo
V2ViS2l0OjpXZWJQYWdlOjpkaWRJbnNlcnRNZW51SXRlbUVsZW1lbnQpOgorICAgICAgICAoV2Vi
S2l0OjpXZWJQYWdlOjpkaWRSZW1vdmVNZW51SXRlbUVsZW1lbnQpOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmg6CisKIDIwMjAtMDEtMDcgIERhbmllbCBCYXRlcyAgPGRh
YmF0ZXNAYXBwbGUuY29tPgogCiAgICAgICAgIEZpcnN0IGNoYXJhY3RlciBpbiBlYWNoIHdvcmQt
d3JhcHBlZCBsaW5lIGhhcyBpbmNvcnJlY3QgY2hhcmFjdGVyIHJlY3Qgd2hlbiByZXF1ZXN0ZWQg
cmFuZ2Ugc3BhbnMgbXVsdGlwbGUgbGluZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hh
cmVkL1RvdWNoQmFyTWVudURhdGEuY3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvVG91Y2hCYXJN
ZW51RGF0YS5jcHAKaW5kZXggNzUyNDc2M2UzNWFiMTdlMmI1ZDRjNWNiZmMyMzMwNDNmMDA0M2Qy
MS4uMTM2ZTJiY2JkM2FlNDg0NDdiZGQ3MmJmYmJiZmQ1ZmYxNGJjNDc5NyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9TaGFyZWQvVG91Y2hCYXJNZW51RGF0YS5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9TaGFyZWQvVG91Y2hCYXJNZW51RGF0YS5jcHAKQEAgLTI0LDYgKzI0LDkgQEAKICAqLwog
CiAjaW5jbHVkZSAiY29uZmlnLmgiCisKKyNpZiBIQVZFKFRPVUNIX0JBUikKKwogI2luY2x1ZGUg
IlRvdWNoQmFyTWVudURhdGEuaCIKIAogI2luY2x1ZGUgIkRlY29kZXIuaCIKQEAgLTY4LDMgKzcx
LDUgQEAgYm9vbCBUb3VjaEJhck1lbnVEYXRhOjpkZWNvZGUoSVBDOjpEZWNvZGVyJiBkZWNvZGVy
LCBUb3VjaEJhck1lbnVEYXRhJiBkYXRhKQogfQogICAgIAogfQorCisjZW5kaWYgLy8gSEFWRShU
T1VDSF9CQVIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Ub3VjaEJhck1lbnVE
YXRhLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Ub3VjaEJhck1lbnVEYXRhLmgKaW5kZXggOGZj
MjI5YmE4MGM4MWI4MDkwYzIyMTdjZmJkZWRmYjBiZjQ0ODljMy4uYjdiOWIxNzkyYTAzOWNmN2Jm
OWE5MjY5NzYxMTMzMjhlNDMzOTgyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQv
VG91Y2hCYXJNZW51RGF0YS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1RvdWNoQmFyTWVu
dURhdGEuaApAQCAtMjQsNiArMjQsOSBAQAogICovCiAKICNwcmFnbWEgb25jZQorCisjaWYgSEFW
RShUT1VDSF9CQVIpCisKICNpbmNsdWRlICJBcmd1bWVudENvZGVycy5oIgogI2luY2x1ZGUgIlRv
dWNoQmFyTWVudUl0ZW1EYXRhLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CkBA
IC02Myw1ICs2Niw3IEBAIHByaXZhdGU6CiAgICAgCiAgICAgYm9vbCBtX2lzUGFnZUN1c3RvbWl6
ZWQgeyBmYWxzZSB9OwogfTsKLSAgICAKKwogfQorCisjZW5kaWYgLy8gSEFWRShUT1VDSF9CQVIp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Ub3VjaEJhck1lbnVJdGVtRGF0YS5j
cHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Ub3VjaEJhck1lbnVJdGVtRGF0YS5jcHAKaW5kZXgg
NmI3MDg2YjY4NTVhOGI2M2VhYTVkOGI5YmMyZTcwNTU3YjVkZDI5YS4uOTRhMDM2ZjkwYTAyYzM5
ODlhZmU2YmVhODQ3NjZjMWQ4YWZjZmFhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFy
ZWQvVG91Y2hCYXJNZW51SXRlbURhdGEuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1Rv
dWNoQmFyTWVudUl0ZW1EYXRhLmNwcApAQCAtMjIsNyArMjIsMTEgQEAKICAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLworCiAjaW5jbHVkZSAi
Y29uZmlnLmgiCisKKyNpZiBIQVZFKFRPVUNIX0JBUikKKwogI2luY2x1ZGUgIlRvdWNoQmFyTWVu
dUl0ZW1EYXRhLmgiCiAKICNpbmNsdWRlICJEZWNvZGVyLmgiCkBAIC02OSwzICs3Myw1IEBAIE9w
dGlvbmFsPFRvdWNoQmFyTWVudUl0ZW1EYXRhPiBUb3VjaEJhck1lbnVJdGVtRGF0YTo6ZGVjb2Rl
KElQQzo6RGVjb2RlciYgZGVjb2RlCiB9CiAKIH0KKworI2VuZGlmIC8vIEhBVkUoVE9VQ0hfQkFS
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvVG91Y2hCYXJNZW51SXRlbURhdGEu
aCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1RvdWNoQmFyTWVudUl0ZW1EYXRhLmgKaW5kZXggMmQ2
ODE5YzRlMWM2MDM3NGMzMWNiYTkzNzdkMWJlMzVlMmI0ZGQ2Mi4uY2JhNjkxN2UzYzkzNzhhNWMw
NjNjOWNlMTUyZmNmZTViOTU4NTQ1MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQv
VG91Y2hCYXJNZW51SXRlbURhdGEuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Ub3VjaEJh
ck1lbnVJdGVtRGF0YS5oCkBAIC0yNCw2ICsyNCw5IEBACiAgKi8KIAogI3ByYWdtYSBvbmNlCisK
KyNpZiBIQVZFKFRPVUNIX0JBUikKKwogI2luY2x1ZGUgIkFyZ3VtZW50Q29kZXJzLmgiCiAjaW5j
bHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKQEAgLTkxLDMgKzk0LDUgQEAgaW5saW5lIGJv
b2wgb3BlcmF0b3IhPShjb25zdCBUb3VjaEJhck1lbnVJdGVtRGF0YSYgbGhzLCBjb25zdCBUb3Vj
aEJhck1lbnVJdGVtRGEKIH0KIAogfQorCisjZW5kaWYgLy8gSEFWRShUT1VDSF9CQVIpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJWaWV3SW1wbC5tbSBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlZpZXdJbXBsLm1tCmluZGV4IDcxMzhlZmM5
NDE1ZjhhNjE0ZjIzYWZiYTJhNGM2YTE1NTNlYzNkODguLjRlOWRlMmM2NWNlNjg0MjVjNDFkMmNj
YTA3MjIxY2YyNTBiYmRmYWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0Nv
Y29hL1dlYlZpZXdJbXBsLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dl
YlZpZXdJbXBsLm1tCkBAIC0xMjkzLDggKzEyOTMsNiBAQCB2b2lkIFdlYlZpZXdJbXBsOjp1cGRh
dGVNZWRpYVRvdWNoQmFyKCkKICNlbmRpZgogfQogCi0jaWYgSEFWRShUT1VDSF9CQVIpCi0KIGJv
b2wgV2ViVmlld0ltcGw6OmNhblRvZ2dsZVBpY3R1cmVJblBpY3R1cmUoKQogewogI2lmIEVOQUJM
RShXRUJfUExBWUJBQ0tfQ09OVFJPTFNfTUFOQUdFUikKQEAgLTEzMDQsMTQgKzEzMDIsMTAgQEAg
Ym9vbCBXZWJWaWV3SW1wbDo6Y2FuVG9nZ2xlUGljdHVyZUluUGljdHVyZSgpCiAjZW5kaWYKIH0K
IAotI2VuZGlmIC8vIEhBVkUoVE9VQ0hfQkFSKQotCiB2b2lkIFdlYlZpZXdJbXBsOjpmb3JjZVJl
cXVlc3RDYW5kaWRhdGVzRm9yVGVzdGluZygpCiB7CiAgICAgbV9jYW5DcmVhdGVUb3VjaEJhcnMg
PSB0cnVlOwotI2lmIEhBVkUoVE9VQ0hfQkFSKQogICAgIHVwZGF0ZVRvdWNoQmFyKCk7Ci0jZW5k
aWYKIH0KIAogYm9vbCBXZWJWaWV3SW1wbDo6c2hvdWxkUmVxdWVzdENhbmRpZGF0ZXMoKSBjb25z
dApAQCAtMTMyMywxNSArMTMxNywxNSBAQCB2b2lkIFdlYlZpZXdJbXBsOjpzZXRFZGl0YWJsZUVs
ZW1lbnRJc0ZvY3VzZWQoYm9vbCBlZGl0YWJsZUVsZW1lbnRJc0ZvY3VzZWQpCiB7CiAgICAgbV9l
ZGl0YWJsZUVsZW1lbnRJc0ZvY3VzZWQgPSBlZGl0YWJsZUVsZW1lbnRJc0ZvY3VzZWQ7CiAKLSNp
ZiBIQVZFKFRPVUNIX0JBUikKICAgICAvLyBJZiB0aGUgZWRpdGFibGUgZWxlbWVudHMgaGF2ZSBi
bHVycmVkLCB0aGVuIHdlIG1pZ2h0IG5lZWQgdG8gZ2V0IHJpZCBvZiB0aGUgZWRpdGluZyBmdW5j
dGlvbiBiYXIuCiAgICAgaWYgKCFtX2VkaXRhYmxlRWxlbWVudElzRm9jdXNlZCkKICAgICAgICAg
dXBkYXRlVG91Y2hCYXIoKTsKLSNlbmRpZgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKKwog
I2Vsc2UgLy8gIUhBVkUoVE9VQ0hfQkFSKQorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogdm9pZCBX
ZWJWaWV3SW1wbDo6Zm9yY2VSZXF1ZXN0Q2FuZGlkYXRlc0ZvclRlc3RpbmcoKQpAQCAtMTM0OSw2
ICsxMzQzLDcgQEAgdm9pZCBXZWJWaWV3SW1wbDo6c2V0RWRpdGFibGVFbGVtZW50SXNGb2N1c2Vk
KGJvb2wgZWRpdGFibGVFbGVtZW50SXNGb2N1c2VkKQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJL
aXQKKwogI2VuZGlmIC8vIEhBVkUoVE9VQ0hfQkFSKQogCiBuYW1lc3BhY2UgV2ViS2l0IHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDYxZmQ5MWNmZDkxMjM5
ODg2ZDA3MWY4MGRhOWJkNzZhODMxYTEyYzQuLmE5N2Q5MTc5ZmUzMWY3ZmMzZTU4MTFkZmFiMmUw
Mjk4NzJiMGM4ZDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApA
QCAtMTk1LDggKzE5NSw2IEBACiAjaW5jbHVkZSAiSW5zZXJ0VGV4dE9wdGlvbnMuaCIKICNpbmNs
dWRlICJSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYVByb3h5LmgiCiAjaW5jbHVkZSAiUmVtb3Rl
TGF5ZXJUcmVlU2Nyb2xsaW5nUGVyZm9ybWFuY2VEYXRhLmgiCi0jaW5jbHVkZSAiVG91Y2hCYXJN
ZW51RGF0YS5oIgotI2luY2x1ZGUgIlRvdWNoQmFyTWVudUl0ZW1EYXRhLmgiCiAjaW5jbHVkZSAi
VXNlck1lZGlhQ2FwdHVyZU1hbmFnZXJQcm94eS5oIgogI2luY2x1ZGUgIlZlcnNpb25DaGVja3Mu
aCIKICNpbmNsdWRlICJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaCIKQEAgLTIwNiw2ICsy
MDQsMTEgQEAKICNpbmNsdWRlIDx3dGYvTWFjaFNlbmRSaWdodC5oPgogI2VuZGlmCiAKKyNpZiBI
QVZFKFRPVUNIX0JBUikKKyNpbmNsdWRlICJUb3VjaEJhck1lbnVEYXRhLmgiCisjaW5jbHVkZSAi
VG91Y2hCYXJNZW51SXRlbURhdGEuaCIKKyNlbmRpZgorCiAjaWYgUExBVEZPUk0oQ09DT0EpIHx8
IFBMQVRGT1JNKEdUSykKICNpbmNsdWRlICJWaWV3U25hcHNob3RTdG9yZS5oIgogI2VuZGlmCkBA
IC01OTU2LDYgKzU5NTksOCBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6c2V0SGFzSGFkU2VsZWN0aW9u
Q2hhbmdlc0Zyb21Vc2VySW50ZXJhY3Rpb24oYm9vbCBoYXNIYWRVc2VyUwogICAgIG1faGFzSGFk
U2VsZWN0aW9uQ2hhbmdlc0Zyb21Vc2VySW50ZXJhY3Rpb24gPSBoYXNIYWRVc2VyU2VsZWN0aW9u
Q2hhbmdlczsKIH0KIAorI2lmIEhBVkUoVE9VQ0hfQkFSKQorCiB2b2lkIFdlYlBhZ2VQcm94eTo6
c2V0SXNUb3VjaEJhclVwZGF0ZVN1cHJlc3NlZEZvckhpZGRlbkNvbnRlbnRFZGl0YWJsZShib29s
IGlnbm9yZVRvdWNoQmFyVXBkYXRlKQogewogICAgIG1faXNUb3VjaEJhclVwZGF0ZVN1cHJlc3Nl
ZEZvckhpZGRlbkNvbnRlbnRFZGl0YWJsZSA9IGlnbm9yZVRvdWNoQmFyVXBkYXRlOwpAQCAtNTk2
Niw2ICs1OTcxLDggQEAgdm9pZCBXZWJQYWdlUHJveHk6OnNldElzTmV2ZXJSaWNobHlFZGl0YWJs
ZUZvclRvdWNoQmFyKGJvb2wgaXNOZXZlclJpY2hseUVkaXRhYmwKICAgICBtX2lzTmV2ZXJSaWNo
bHlFZGl0YWJsZUZvclRvdWNoQmFyID0gaXNOZXZlclJpY2hseUVkaXRhYmxlOwogfQogCisjZW5k
aWYKKwogdm9pZCBXZWJQYWdlUHJveHk6OnJlcXVlc3RET01QYXN0ZUFjY2Vzcyhjb25zdCBXZWJD
b3JlOjpJbnRSZWN0JiBlbGVtZW50UmVjdCwgY29uc3QgU3RyaW5nJiBvcmlnaW5JZGVudGlmaWVy
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OkRPTVBhc3RlQWNjZXNzUmVzcG9uc2Up
PiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIG1fcGFnZUNsaWVudC0+cmVxdWVzdERPTVBh
c3RlQWNjZXNzKGVsZW1lbnRSZWN0LCBvcmlnaW5JZGVudGlmaWVyLCBXVEZNb3ZlKGNvbXBsZXRp
b25IYW5kbGVyKSk7CkBAIC05MDQ5LDcgKzkwNTYsNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6ZWZm
ZWN0aXZlQXBwZWFyYW5jZURpZENoYW5nZSgpCiAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6
RWZmZWN0aXZlQXBwZWFyYW5jZURpZENoYW5nZSh1c2VEYXJrQXBwZWFyYW5jZSgpLCB1c2VFbGV2
YXRlZFVzZXJJbnRlcmZhY2VMZXZlbCgpKSk7CiB9CiAKLSNpZiBQTEFURk9STShDT0NPQSkKKyNp
ZiBIQVZFKFRPVUNIX0JBUikKIHZvaWQgV2ViUGFnZVByb3h5Ojp0b3VjaEJhck1lbnVEYXRhQ2hh
bmdlZChjb25zdCBUb3VjaEJhck1lbnVEYXRhJiB0b3VjaEJhck1lbnVEYXRhKQogewogICAgIG1f
dG91Y2hCYXJNZW51RGF0YSA9IHRvdWNoQmFyTWVudURhdGE7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYlBhZ2VQcm94eS5oCmluZGV4IGU2MzRhMDY1NWJiMTkxMzU4ZDA2Y2YzYzk1NDc1MjFhOTEy
ZWUxODcuLjViODhkNDdiMzQ2ZjYzOThhNWRmYjM4YTFmZjRmN2FmZjdkMTg5ZWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCkBAIC0xMzQsNiArMTM0LDkgQEAgT0JKQ19D
TEFTUyBfV0tSZW1vdGVPYmplY3RSZWdpc3RyeTsKICNpZiBQTEFURk9STShDT0NPQSkKICNpbmNs
dWRlICJEeW5hbWljVmlld3BvcnRTaXplVXBkYXRlLmgiCiAjaW5jbHVkZSAiUmVtb3RlTGF5ZXJU
cmVlTm9kZS5oIgorI2VuZGlmCisKKyNpZiBIQVZFKFRPVUNIX0JBUikKICNpbmNsdWRlICJUb3Vj
aEJhck1lbnVEYXRhLmgiCiAjaW5jbHVkZSAiVG91Y2hCYXJNZW51SXRlbURhdGEuaCIKICNlbmRp
ZgpAQCAtNjU1LDcgKzY1OCw3IEBAIHB1YmxpYzoKIAogICAgIE9wdGlvbmFsPFdlYkNvcmU6OkZv
bnRBdHRyaWJ1dGVzPiBjYWNoZWRGb250QXR0cmlidXRlc0F0U2VsZWN0aW9uU3RhcnQoKSBjb25z
dCB7IHJldHVybiBtX2NhY2hlZEZvbnRBdHRyaWJ1dGVzQXRTZWxlY3Rpb25TdGFydDsgfQogCi0j
aWYgUExBVEZPUk0oQ09DT0EpCisjaWYgSEFWRShUT1VDSF9CQVIpCiAgICAgY29uc3QgVG91Y2hC
YXJNZW51RGF0YSYgdG91Y2hCYXJNZW51RGF0YSgpIGNvbnN0IHsgcmV0dXJuIG1fdG91Y2hCYXJN
ZW51RGF0YTsgfQogI2VuZGlmCiAKQEAgLTE0NzMsOCArMTQ3NiwxMSBAQCBwdWJsaWM6CiAgICAg
dm9pZCBzZXRVc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uKFdlYkNvcmU6OlVzZXJJbnRlcmZh
Y2VMYXlvdXREaXJlY3Rpb24pOwogCiAgICAgYm9vbCBoYXNIYWRTZWxlY3Rpb25DaGFuZ2VzRnJv
bVVzZXJJbnRlcmFjdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1faGFzSGFkU2VsZWN0aW9uQ2hhbmdl
c0Zyb21Vc2VySW50ZXJhY3Rpb247IH0KKworI2lmIEhBVkUoVE9VQ0hfQkFSKQogICAgIGJvb2wg
aXNUb3VjaEJhclVwZGF0ZVN1cHJlc3NlZEZvckhpZGRlbkNvbnRlbnRFZGl0YWJsZSgpIGNvbnN0
IHsgcmV0dXJuIG1faXNUb3VjaEJhclVwZGF0ZVN1cHJlc3NlZEZvckhpZGRlbkNvbnRlbnRFZGl0
YWJsZTsgfQogICAgIGJvb2wgaXNOZXZlclJpY2hseUVkaXRhYmxlRm9yVG91Y2hCYXIoKSBjb25z
dCB7IHJldHVybiBtX2lzTmV2ZXJSaWNobHlFZGl0YWJsZUZvclRvdWNoQmFyOyB9CisjZW5kaWYK
IAogICAgIGJvb2wgaXNBbHdheXNPbkxvZ2dpbmdBbGxvd2VkKCkgY29uc3Q7CiAKQEAgLTE0OTks
NyArMTUwNSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNjaGVkdWxlRnVsbEVkaXRvclN0YXRlVXBk
YXRlKCk7CiAgICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVFZGl0b3JTdGF0ZUFmdGVyRm9jdXMo
KTsKIAotI2lmIFBMQVRGT1JNKENPQ09BKQorI2lmIEhBVkUoVE9VQ0hfQkFSKQogICAgIHZvaWQg
dG91Y2hCYXJNZW51RGF0YVJlbW92ZWQoKTsKICAgICB2b2lkIHRvdWNoQmFyTWVudURhdGFDaGFu
Z2VkKGNvbnN0IFRvdWNoQmFyTWVudURhdGEmKTsKICAgICB2b2lkIHRvdWNoQmFyTWVudUl0ZW1E
YXRhQWRkZWQoY29uc3QgVG91Y2hCYXJNZW51SXRlbURhdGEmKTsKQEAgLTE4NTEsOCArMTg1Nywx
MSBAQCBwcml2YXRlOgogCiAgICAgdm9pZCBjb21wb3NpdGlvbldhc0NhbmNlbGVkKCk7CiAgICAg
dm9pZCBzZXRIYXNIYWRTZWxlY3Rpb25DaGFuZ2VzRnJvbVVzZXJJbnRlcmFjdGlvbihib29sKTsK
KworI2lmIEhBVkUoVE9VQ0hfQkFSKQogICAgIHZvaWQgc2V0SXNUb3VjaEJhclVwZGF0ZVN1cHJl
c3NlZEZvckhpZGRlbkNvbnRlbnRFZGl0YWJsZShib29sKTsKICAgICB2b2lkIHNldElzTmV2ZXJS
aWNobHlFZGl0YWJsZUZvclRvdWNoQmFyKGJvb2wpOworI2VuZGlmCiAKICAgICB2b2lkIHJlcXVl
c3RET01QYXN0ZUFjY2Vzcyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiwgY29uc3QgU3RyaW5nJiwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpET01QYXN0ZUFjY2Vzc1Jlc3BvbnNlKT4m
Jik7CiAKQEAgLTIzMzgsNyArMjM0Nyw3IEBAIHByaXZhdGU6CiAgICAgRWRpdG9yU3RhdGUgbV9l
ZGl0b3JTdGF0ZTsKICAgICBib29sIG1faXNFZGl0YWJsZSB7IGZhbHNlIH07CiAKLSNpZiBQTEFU
Rk9STShDT0NPQSkKKyNpZiBIQVZFKFRPVUNIX0JBUikKICAgICBUb3VjaEJhck1lbnVEYXRhIG1f
dG91Y2hCYXJNZW51RGF0YTsKICNlbmRpZgogCkBAIC0yNTU1LDggKzI1NjQsMTEgQEAgcHJpdmF0
ZToKICAgICBXZWJDb3JlOjpNZWRpYVByb2R1Y2VyOjpNZWRpYVN0YXRlRmxhZ3MgbV9tZWRpYVN0
YXRlIHsgV2ViQ29yZTo6TWVkaWFQcm9kdWNlcjo6SXNOb3RQbGF5aW5nIH07CiAKICAgICBib29s
IG1faGFzSGFkU2VsZWN0aW9uQ2hhbmdlc0Zyb21Vc2VySW50ZXJhY3Rpb24geyBmYWxzZSB9Owor
CisjaWYgSEFWRShUT1VDSF9CQVIpCiAgICAgYm9vbCBtX2lzVG91Y2hCYXJVcGRhdGVTdXByZXNz
ZWRGb3JIaWRkZW5Db250ZW50RWRpdGFibGUgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9pc05ldmVy
UmljaGx5RWRpdGFibGVGb3JUb3VjaEJhciB7IGZhbHNlIH07CisjZW5kaWYKIAogI2lmIEVOQUJM
RShNRURJQV9TRVNTSU9OKQogICAgIGJvb2wgbV9oYXNNZWRpYVNlc3Npb25XaXRoQWN0aXZlTWVk
aWFFbGVtZW50cyB7IGZhbHNlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkubWVzc2FnZXMuaW4KaW5kZXggOTU0Zjk3NGEzMDg1MGI5ZWY1N2M5NDViZWQ0ODRh
ZGFmZjlmNjJlZC4uM2E3NDYwMTFlYThkYThlZThjY2FmN2I3N2Y5NTRiMDA3NzgzYzM0MiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmlu
CisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgpA
QCAtMjUyLDggKzI1MiwxMiBAQCBtZXNzYWdlcyAtPiBXZWJQYWdlUHJveHkgewogICAgIEVkaXRv
clN0YXRlQ2hhbmdlZChzdHJ1Y3QgV2ViS2l0OjpFZGl0b3JTdGF0ZSBlZGl0b3JTdGF0ZSkKICAg
ICBDb21wb3NpdGlvbldhc0NhbmNlbGVkKCkKICAgICBTZXRIYXNIYWRTZWxlY3Rpb25DaGFuZ2Vz
RnJvbVVzZXJJbnRlcmFjdGlvbihib29sIGhhc0hhZFVzZXJTZWxlY3Rpb25DaGFuZ2VzKQorCisj
aWYgSEFWRShUT1VDSF9CQVIpCiAgICAgU2V0SXNUb3VjaEJhclVwZGF0ZVN1cHJlc3NlZEZvckhp
ZGRlbkNvbnRlbnRFZGl0YWJsZShib29sIGlzVG91Y2hCYXJVcGRhdGVTdXByZXNzZWQpCiAgICAg
U2V0SXNOZXZlclJpY2hseUVkaXRhYmxlRm9yVG91Y2hCYXIoYm9vbCBpc05ldmVyUmljaGx5RWRp
dGFibGUpCisjZW5kaWYKKwogICAgIFJlcXVlc3RET01QYXN0ZUFjY2VzcyhXZWJDb3JlOjpJbnRS
ZWN0IGVsZW1lbnRSZWN0LCBTdHJpbmcgb3JpZ2luSWRlbnRpZmllcikgLT4gKGVudW06dWludDhf
dCBXZWJDb3JlOjpET01QYXN0ZUFjY2Vzc1Jlc3BvbnNlIHJlc3BvbnNlKSBTeW5jaHJvbm91cwog
CiAgICAgIyBGaW5kIG1lc3NhZ2VzCkBAIC0zNjAsNyArMzY0LDkgQEAgbWVzc2FnZXMgLT4gV2Vi
UGFnZVByb3h5IHsKICAgICBTZWFyY2hXaXRoU3BvdGxpZ2h0KFN0cmluZyBzdHJpbmcpCiAKICAg
ICBTZWFyY2hUaGVXZWIoU3RyaW5nIHN0cmluZykKKyNlbmRpZgogCisjaWYgSEFWRShUT1VDSF9C
QVIpCiAgICAgVG91Y2hCYXJNZW51RGF0YUNoYW5nZWQoV2ViS2l0OjpUb3VjaEJhck1lbnVEYXRh
IHRvdWNoQmFyTWVudURhdGEpCiAgICAgVG91Y2hCYXJNZW51SXRlbURhdGFBZGRlZChzdHJ1Y3Qg
V2ViS2l0OjpUb3VjaEJhck1lbnVJdGVtRGF0YSB0b3VjaEJhck1lbnVJdGVtRGF0YSkKICAgICBU
b3VjaEJhck1lbnVJdGVtRGF0YVJlbW92ZWQoc3RydWN0IFdlYktpdDo6VG91Y2hCYXJNZW51SXRl
bURhdGEgdG91Y2hCYXJNZW51SXRlbURhdGEpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IDFlM2VmNzc5NGYwMTdmMGU2YjhhZDQ2YzkwMjJmZGUz
MjNkMDViNzkuLjQ5Mzk0ZmZjMzliZjNkOWIyYTQyYjI5OGMwMDdhMDMwZmFmYWMwMTggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0yNjEsOCAr
MjYxLDYgQEAKICNpbmNsdWRlICJSZW1vdGVMYXllclRyZWVUcmFuc2FjdGlvbi5oIgogI2luY2x1
ZGUgIlJlbW90ZU9iamVjdFJlZ2lzdHJ5TWVzc2FnZXMuaCIKICNpbmNsdWRlICJUZXh0Q2hlY2tp
bmdDb250cm9sbGVyUHJveHkuaCIKLSNpbmNsdWRlICJUb3VjaEJhck1lbnVEYXRhLmgiCi0jaW5j
bHVkZSAiVG91Y2hCYXJNZW51SXRlbURhdGEuaCIKICNpbmNsdWRlICJVc2VyTWVkaWFDYXB0dXJl
TWFuYWdlci5oIgogI2luY2x1ZGUgIlZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaCIKICNpbmNsdWRl
ICJXS1N0cmluZ0NGLmgiCkBAIC0yNzIsNiArMjcwLDExIEBACiAjaW5jbHVkZSA8d3RmL01hY2hT
ZW5kUmlnaHQuaD4KICNlbmRpZgogCisjaWYgSEFWRShUT1VDSF9CQVIpCisjaW5jbHVkZSAiVG91
Y2hCYXJNZW51RGF0YS5oIgorI2luY2x1ZGUgIlRvdWNoQmFyTWVudUl0ZW1EYXRhLmgiCisjZW5k
aWYKKwogI2lmIFBMQVRGT1JNKEdUSykKICNpbmNsdWRlICJXZWJQcmludE9wZXJhdGlvbkd0ay5o
IgogI2luY2x1ZGUgIldlYlNlbGVjdGlvbkRhdGEuaCIKQEAgLTMyNjQsMTggKzMyNjcsMjQgQEAg
dm9pZCBXZWJQYWdlOjpkaWRTdGFydFBhZ2VUcmFuc2l0aW9uKCkKICNlbmRpZgogICAgIG1faGFz
RXZlckZvY3VzZWRFbGVtZW50RHVlVG9Vc2VySW50ZXJhY3Rpb25TaW5jZVBhZ2VUcmFuc2l0aW9u
ID0gZmFsc2U7CiAgICAgbV9sYXN0RWRpdG9yU3RhdGVXYXNDb250ZW50RWRpdGFibGUgPSBFZGl0
b3JTdGF0ZUlzQ29udGVudEVkaXRhYmxlOjpVbnNldDsKKwogI2lmIFBMQVRGT1JNKE1BQykKICAg
ICBpZiAoaGFzUHJldmlvdXNseUZvY3VzZWREdWVUb1VzZXJJbnRlcmFjdGlvbikKICAgICAgICAg
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRIYXNIYWRTZWxlY3Rpb25DaGFuZ2VzRnJv
bVVzZXJJbnRlcmFjdGlvbihtX2hhc0V2ZXJGb2N1c2VkRWxlbWVudER1ZVRvVXNlckludGVyYWN0
aW9uU2luY2VQYWdlVHJhbnNpdGlvbikpOworI2VuZGlmCisKKyNpZiBIQVZFKFRPVUNIX0JBUikK
ICAgICBpZiAobV9pc1RvdWNoQmFyVXBkYXRlU3VwcmVzc2VkRm9ySGlkZGVuQ29udGVudEVkaXRh
YmxlKSB7CiAgICAgICAgIG1faXNUb3VjaEJhclVwZGF0ZVN1cHJlc3NlZEZvckhpZGRlbkNvbnRl
bnRFZGl0YWJsZSA9IGZhbHNlOwogICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
OlNldElzVG91Y2hCYXJVcGRhdGVTdXByZXNzZWRGb3JIaWRkZW5Db250ZW50RWRpdGFibGUobV9p
c1RvdWNoQmFyVXBkYXRlU3VwcmVzc2VkRm9ySGlkZGVuQ29udGVudEVkaXRhYmxlKSk7CiAgICAg
fQorCiAgICAgaWYgKG1faXNOZXZlclJpY2hseUVkaXRhYmxlRm9yVG91Y2hCYXIpIHsKICAgICAg
ICAgbV9pc05ldmVyUmljaGx5RWRpdGFibGVGb3JUb3VjaEJhciA9IGZhbHNlOwogICAgICAgICBz
ZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldElzTmV2ZXJSaWNobHlFZGl0YWJsZUZvclRv
dWNoQmFyKG1faXNOZXZlclJpY2hseUVkaXRhYmxlRm9yVG91Y2hCYXIpKTsKICAgICB9CiAjZW5k
aWYKKwogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgbV9pc1Nob3dpbmdJbnB1dFZpZXdG
b3JGb2N1c2VkRWxlbWVudCA9IGZhbHNlOwogI2VuZGlmCkBAIC01NDMzLDYgKzU0NDIsNyBAQCB2
b2lkIFdlYlBhZ2U6OmRpZENoYW5nZVNlbGVjdGlvbk9yT3ZlcmZsb3dTY3JvbGxQb3NpdGlvbigp
CiAgICAgbV9oYXNFdmVyRm9jdXNlZEVsZW1lbnREdWVUb1VzZXJJbnRlcmFjdGlvblNpbmNlUGFn
ZVRyYW5zaXRpb24gfD0gbV91c2VySXNJbnRlcmFjdGluZzsKIAogICAgIGlmICghaGFzUHJldmlv
dXNseUZvY3VzZWREdWVUb1VzZXJJbnRlcmFjdGlvbiAmJiBtX2hhc0V2ZXJGb2N1c2VkRWxlbWVu
dER1ZVRvVXNlckludGVyYWN0aW9uU2luY2VQYWdlVHJhbnNpdGlvbikgeworI2lmIEhBVkUoVE9V
Q0hfQkFSKQogICAgICAgICBpZiAoZnJhbWUuZG9jdW1lbnQoKS0+cXVpcmtzKCkuaXNUb3VjaEJh
clVwZGF0ZVN1cHJlc3NlZEZvckhpZGRlbkNvbnRlbnRFZGl0YWJsZSgpKSB7CiAgICAgICAgICAg
ICBtX2lzVG91Y2hCYXJVcGRhdGVTdXByZXNzZWRGb3JIaWRkZW5Db250ZW50RWRpdGFibGUgPSB0
cnVlOwogICAgICAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpTZXRJc1RvdWNo
QmFyVXBkYXRlU3VwcmVzc2VkRm9ySGlkZGVuQ29udGVudEVkaXRhYmxlKG1faXNUb3VjaEJhclVw
ZGF0ZVN1cHJlc3NlZEZvckhpZGRlbkNvbnRlbnRFZGl0YWJsZSkpOwpAQCAtNTQ0Miw2ICs1NDUy
LDcgQEAgdm9pZCBXZWJQYWdlOjpkaWRDaGFuZ2VTZWxlY3Rpb25Pck92ZXJmbG93U2Nyb2xsUG9z
aXRpb24oKQogICAgICAgICAgICAgbV9pc05ldmVyUmljaGx5RWRpdGFibGVGb3JUb3VjaEJhciA9
IHRydWU7CiAgICAgICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlNldElzTmV2
ZXJSaWNobHlFZGl0YWJsZUZvclRvdWNoQmFyKG1faXNOZXZlclJpY2hseUVkaXRhYmxlRm9yVG91
Y2hCYXIpKTsKICAgICAgICAgfQorI2VuZGlmCiAKICAgICAgICAgc2VuZChNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjpTZXRIYXNIYWRTZWxlY3Rpb25DaGFuZ2VzRnJvbVVzZXJJbnRlcmFjdGlvbiht
X2hhc0V2ZXJGb2N1c2VkRWxlbWVudER1ZVRvVXNlckludGVyYWN0aW9uU2luY2VQYWdlVHJhbnNp
dGlvbikpOwogICAgIH0KQEAgLTU4ODEsNyArNTg5Miw3IEBAIHZvaWQgV2ViUGFnZTo6ZGlkRmlu
aXNoTG9hZChXZWJGcmFtZSYgZnJhbWUpCiAKIHZvaWQgV2ViUGFnZTo6ZGlkSW5zZXJ0TWVudUVs
ZW1lbnQoSFRNTE1lbnVFbGVtZW50JiBlbGVtZW50KQogewotI2lmIFBMQVRGT1JNKENPQ09BKQor
I2lmIEhBVkUoVE9VQ0hfQkFSKQogICAgIHNlbmRUb3VjaEJhck1lbnVEYXRhQWRkZWRVcGRhdGUo
ZWxlbWVudCk7CiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTShlbGVtZW50KTsKQEAgLTU4OTAsNyAr
NTkwMSw3IEBAIHZvaWQgV2ViUGFnZTo6ZGlkSW5zZXJ0TWVudUVsZW1lbnQoSFRNTE1lbnVFbGVt
ZW50JiBlbGVtZW50KQogCiB2b2lkIFdlYlBhZ2U6OmRpZFJlbW92ZU1lbnVFbGVtZW50KEhUTUxN
ZW51RWxlbWVudCYgZWxlbWVudCkKIHsKLSNpZiBQTEFURk9STShDT0NPQSkKKyNpZiBIQVZFKFRP
VUNIX0JBUikKICAgICBzZW5kVG91Y2hCYXJNZW51RGF0YVJlbW92ZWRVcGRhdGUoZWxlbWVudCk7
CiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTShlbGVtZW50KTsKQEAgLTU4OTksNyArNTkxMCw3IEBA
IHZvaWQgV2ViUGFnZTo6ZGlkUmVtb3ZlTWVudUVsZW1lbnQoSFRNTE1lbnVFbGVtZW50JiBlbGVt
ZW50KQogCiB2b2lkIFdlYlBhZ2U6OmRpZEluc2VydE1lbnVJdGVtRWxlbWVudChIVE1MTWVudUl0
ZW1FbGVtZW50JiBlbGVtZW50KQogewotI2lmIFBMQVRGT1JNKENPQ09BKQorI2lmIEhBVkUoVE9V
Q0hfQkFSKQogICAgIHNlbmRUb3VjaEJhck1lbnVJdGVtRGF0YUFkZGVkVXBkYXRlKGVsZW1lbnQp
OwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0oZWxlbWVudCk7CkBAIC01OTA4LDcgKzU5MTksNyBA
QCB2b2lkIFdlYlBhZ2U6OmRpZEluc2VydE1lbnVJdGVtRWxlbWVudChIVE1MTWVudUl0ZW1FbGVt
ZW50JiBlbGVtZW50KQogCiB2b2lkIFdlYlBhZ2U6OmRpZFJlbW92ZU1lbnVJdGVtRWxlbWVudChI
VE1MTWVudUl0ZW1FbGVtZW50JiBlbGVtZW50KQogewotI2lmIFBMQVRGT1JNKENPQ09BKQorI2lm
IEhBVkUoVE9VQ0hfQkFSKQogICAgIHNlbmRUb3VjaEJhck1lbnVJdGVtRGF0YVJlbW92ZWRVcGRh
dGUoZWxlbWVudCk7CiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTShlbGVtZW50KTsKQEAgLTYxNTYs
NyArNjE2Nyw3IEBAIHZvaWQgV2ViUGFnZTo6c2NoZWR1bGVGdWxsRWRpdG9yU3RhdGVVcGRhdGUo
KQogICAgIG1fZHJhd2luZ0FyZWEtPnNjaGVkdWxlQ29tcG9zaXRpbmdMYXllckZsdXNoKCk7CiB9
CiAKLSNpZiBQTEFURk9STShDT0NPQSkKKyNpZiBIQVZFKFRPVUNIX0JBUikKIHZvaWQgV2ViUGFn
ZTo6c2VuZFRvdWNoQmFyTWVudURhdGFSZW1vdmVkVXBkYXRlKEhUTUxNZW51RWxlbWVudCYgZWxl
bWVudCkKIHsKICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlRvdWNoQmFyTWVudURh
dGFDaGFuZ2VkKFRvdWNoQmFyTWVudURhdGEgeyB9KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggM2E1OTVmOGY1MjU5ZmI0N2QyNmFhMDk4MWQ2NDEz
N2QwOGMxZWE1Yy4uM2EwMjViYzBmZjRhNjdmOWE5NWExZmU2MmE0MzlhNWIxZmQ4ZGY1OCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaApAQCAtMTI3MSw3ICsx
MjcxLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHBsYXRmb3JtV2lsbFBlcmZvcm1FZGl0aW5nQ29t
bWFuZCgpOwogICAgIHZvaWQgc2VuZEVkaXRvclN0YXRlVXBkYXRlKCk7CiAKLSNpZiBQTEFURk9S
TShDT0NPQSkKKyNpZiBIQVZFKFRPVUNIX0JBUikKICAgICB2b2lkIHNlbmRUb3VjaEJhck1lbnVE
YXRhQWRkZWRVcGRhdGUoV2ViQ29yZTo6SFRNTE1lbnVFbGVtZW50Jik7CiAgICAgdm9pZCBzZW5k
VG91Y2hCYXJNZW51RGF0YVJlbW92ZWRVcGRhdGUoV2ViQ29yZTo6SFRNTE1lbnVFbGVtZW50Jik7
CiAgICAgdm9pZCBzZW5kVG91Y2hCYXJNZW51SXRlbURhdGFBZGRlZFVwZGF0ZShXZWJDb3JlOjpI
VE1MTWVudUl0ZW1FbGVtZW50Jik7CkBAIC0xODY1LDggKzE4NjUsMTEgQEAgcHJpdmF0ZToKIAog
ICAgIGJvb2wgbV91c2VySXNJbnRlcmFjdGluZyB7IGZhbHNlIH07CiAgICAgYm9vbCBtX2hhc0V2
ZXJGb2N1c2VkRWxlbWVudER1ZVRvVXNlckludGVyYWN0aW9uU2luY2VQYWdlVHJhbnNpdGlvbiB7
IGZhbHNlIH07CisKKyNpZiBIQVZFKFRPVUNIX0JBUikKICAgICBib29sIG1faXNUb3VjaEJhclVw
ZGF0ZVN1cHJlc3NlZEZvckhpZGRlbkNvbnRlbnRFZGl0YWJsZSB7IGZhbHNlIH07CiAgICAgYm9v
bCBtX2lzTmV2ZXJSaWNobHlFZGl0YWJsZUZvclRvdWNoQmFyIHsgZmFsc2UgfTsKKyNlbmRpZgog
ICAgIE9wdGlvblNldDxXZWJDb3JlOjpBY3Rpdml0eVN0YXRlOjpGbGFnPiBtX2xhc3RBY3Rpdml0
eVN0YXRlQ2hhbmdlczsKIAogI2lmIEVOQUJMRShDT05URVhUX01FTlVTKQo=
</data>
<flag name="review"
          id="402956"
          type_id="1"
          status="+"
          setter="wenson_hsieh"
    />
          </attachment>
      

    </bug>

</bugzilla>