<?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>220345</bug_id>
          
          <creation_ts>2021-01-05 16:04:06 -0800</creation_ts>
          <short_desc>Refactor some logic around touch event deferring gesture recognizers</short_desc>
          <delta_ts>2021-01-05 22:00: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>UI Events</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>
          
          <blocked>220256</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>hi</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1717527</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-01-05 16:04:06 -0800</bug_when>
    <thetext>Some cleanup before I make things more complicated in #220256.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1717529</commentid>
    <comment_count>1</comment_count>
      <attachid>417048</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-01-05 16:19:23 -0800</bug_when>
    <thetext>Created attachment 417048
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1717539</commentid>
    <comment_count>2</comment_count>
      <attachid>417052</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-01-05 16:45:12 -0800</bug_when>
    <thetext>Created attachment 417052
Fix bug title in ChangeLog</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1717583</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-01-05 21:59:50 -0800</bug_when>
    <thetext>Committed r271193: &lt;https://trac.webkit.org/changeset/271193&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 417052.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1717584</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-01-05 22:00:20 -0800</bug_when>
    <thetext>&lt;rdar://problem/72841203&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417048</attachid>
            <date>2021-01-05 16:19:23 -0800</date>
            <delta_ts>2021-01-05 16:45:11 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220345-20210105161922.patch</filename>
            <type>text/plain</type>
            <size>21083</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxMTQ2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDdlYmQyZDZkMDBmOTkyYmE0
YzA4NWY3NzhjNzUwNmU5YTAxMzFmNDQuLmQ5NDlhYjE2MzcwMWI0YWQyOWQwODgyMzQwMjg4YWI0
N2MzNDk1ZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTYgQEAKKzIwMjEtMDEtMDUgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgUmVuYW1lIHRvdWNoIGV2
ZW50IGRlZmVycmluZyBnZXN0dXJlIHJlY29nbml6ZXJzIChhbG9uZ3NpZGUgYWRqYWNlbnQgbG9n
aWMpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjAz
NDUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW5h
bWUgYF9kZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplckZvckZvb2AgdG8gYF90b3VjaFN0YXJ0RGVm
ZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJGb3JGb29gLCB0byBtYWtlIGl0IGNsZWFyCisgICAgICAg
IHRoYXQgdGhlc2UgZGVmZXJyaW5nIGdlc3R1cmVzIGFyZSBvbmx5IGludGVuZGVkIHRvIGRlZmVy
IG5hdGl2ZSBnZXN0dXJlcyB1bnRpbCB0aGUgInRvdWNoc3RhcnQiIGV2ZW50IGhhcyBiZWVuCisg
ICAgICAgIGhhbmRsZWQuCisKKyAgICAgICAgVGhpcyBkaXN0aW5jdGlvbiBiZWNvbWVzIGltcG9y
dGFudCBvbmNlIEkgaW50cm9kdWNlIGRlZmVycmluZyBnZXN0dXJlIHJlY29nbml6ZXJzIHRoYXQg
ZGVmZXIgdGhlICJ0b3VjaGVuZCIKKyAgICAgICAgZXZlbnQsIGFuZCBwcmV2ZW50IGdlc3R1cmVz
IHRoYXQgYWN0aXZhdGUgdXBvbiB0b3VjaCBlbmQgKGkuZS4gdmFyaW91cyB0eXBlcyBvZiB0YXAg
Z2VzdHVyZSByZWNvZ25pemVycykuCisKKyAgICAgICAgU2VlIGJlbG93IGZvciBtb3JlIGRldGFp
bHMuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvUGFnZUNsaWVudC5oOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6Omhh
bmRsZVByZXZlbnRhYmxlVG91Y2hFdmVudCk6CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9QYWdl
Q2xpZW50SW1wbElPUy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvUGFnZUNsaWVudEltcGxJ
T1MubW06CisgICAgICAgIChXZWJLaXQ6OlBhZ2VDbGllbnRJbXBsOjpkb25lRGVmZXJyaW5nVG91
Y2hTdGFydCk6CisgICAgICAgIChXZWJLaXQ6OlBhZ2VDbGllbnRJbXBsOjpkb25lRGVmZXJyaW5n
TmF0aXZlR2VzdHVyZXMpOiBEZWxldGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tDb250
ZW50Vmlld0ludGVyYWN0aW9uLmg6CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRW
aWV3SW50ZXJhY3Rpb24ubW06CisgICAgICAgICgtW1dLQ29udGVudFZpZXcgc2V0VXBJbnRlcmFj
dGlvbl0pOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IGNsZWFuVXBJbnRlcmFjdGlvbl0pOgor
ICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IF9yZW1vdmVEZWZhdWx0R2VzdHVyZVJlY29nbml6ZXJz
XSk6CisgICAgICAgICgtW1dLQ29udGVudFZpZXcgX2FkZERlZmF1bHRHZXN0dXJlUmVjb2duaXpl
cnNdKToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBfd2ViVG91Y2hFdmVudHNSZWNvZ25pemVk
Ol0pOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IF90b3VjaFN0YXJ0RGVmZXJyaW5nR2VzdHVy
ZXNdKToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBfZG9uZURlZmVycmluZ1RvdWNoU3RhcnQ6
XSk6CisgICAgICAgICgtW1dLQ29udGVudFZpZXcgZ2VzdHVyZVJlY29nbml6ZXI6c2hvdWxkUmVj
b2duaXplU2ltdWx0YW5lb3VzbHlXaXRoR2VzdHVyZVJlY29nbml6ZXI6XSk6CisgICAgICAgICgt
W1dLQ29udGVudFZpZXcgZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXI6c2hvdWxkRGVmZXJPdGhl
ckdlc3R1cmVSZWNvZ25pemVyOl0pOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IF9kZWZlcnJp
bmdHZXN0dXJlUmVjb2duaXplcnNdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV0tDb250ZW50Vmll
dyBfZG9uZURlZmVycmluZ05hdGl2ZUdlc3R1cmVzOl0pOiBEZWxldGVkLgorCisgICAgICAgIFJl
bmFtZSB0aGlzIHRvIGAtX2RvbmVEZWZlcnJpbmdUb3VjaFN0YXJ0OmAuCisKKyAgICAgICAgKC1b
V0tDb250ZW50VmlldyBkZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplcjpzaG91bGREZWZlckdlc3R1
cmVzQWZ0ZXJFbmRpbmdUb3VjaGVzV2l0aEV2ZW50Ol0pOgorCisgICAgICAgIERlbGV0ZWQuIFRo
aXMgbG9naWMgaGFzIGJlZW4gbW92ZWQgdG8gV0tDb250ZW50VmlldyAoc2VlIGJlbG93KS4KKwor
ICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplci5oOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplci5tbToK
KyAgICAgICAgKC1bV0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciB0b3VjaGVzRW5kZWQ6d2l0
aEV2ZW50Ol0pOiBEZWxldGVkLgorCisgICAgICAgIEFkZGl0aW9uYWxseSByZWZhY3RvciB0aGlz
IGNvZGUgc28gdGhhdCB0aGlzIGZhbGxiYWNrIGxvZ2ljIGZvciBsaWZ0aW5nIHRoZSBnZXN0dXJl
IGdhdGUgZXhpc3RzIGluc2lkZQorICAgICAgICBgV0tDb250ZW50Vmlld2AgKGFmdGVyIGVuZGlu
ZyBhbGwgdG91Y2hlcyksIHJhdGhlciB0aGFuIGluc2lkZSB0aGUgZGVmZXJyaW5nIGdlc3R1cmUg
cmVjb2duaXplci4gV2hpbGUgdGhpcworICAgICAgICBkb2Vzbid0IGFmZmVjdCB0aGUgZXh0YW50
IHRvdWNoIHN0YXJ0IGRlZmVycmluZyBnZXN0dXJlcywgaXQgd2lsbCBlbnN1cmUgdGhhdCB0b3Vj
aCBlbmQgZGVmZXJyaW5nIGdlc3R1cmVzIHdvbid0CisgICAgICAgIGdldCByZXNldCBwcmVtYXR1
cmVseSBkdWUgdG8gdGhlIHdlYiB0b3VjaCBldmVudHMgZ2VzdHVyZSByZWNvZ25pemVyIGVuZGlu
ZyBiZWZvcmUgdGhlIHRvdWNoIGVuZCBkZWZlcnJpbmcKKyAgICAgICAgZ2VzdHVyZS4KKwogMjAy
MC0xMi0yOCAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbQ29uY3VycmVudCBEaXNwbGF5IExpc3RzXSBHUFUgcHJvY2VzcyBzaG91bGQgbm90IGltbWVk
aWF0ZWx5IHNsZWVwIGFmdGVyIHJlYWRpbmcgYWxsIGF2YWlsYWJsZSBkaXNwbGF5IGxpc3QgaXRl
bXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1BhZ2VDbGllbnQuaCBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1BhZ2VDbGllbnQuaAppbmRleCA1MTgzNzc0ZTdiN2RkMjQx
ODNiNGZkMGRkNTJlMGU0OTIwMDdjM2NjLi42NzJiMDE1ZGNmNWFhZDhmNzhhYTMzMzAyNGI2OTlh
OWE0ODIwNDBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9QYWdlQ2xpZW50
LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUGFnZUNsaWVudC5oCkBAIC0zMzksNyAr
MzM5LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBkb25lV2l0aFRvdWNoRXZlbnQoY29u
c3QgTmF0aXZlV2ViVG91Y2hFdmVudCYsIGJvb2wgd2FzRXZlbnRIYW5kbGVkKSA9IDA7CiAjZW5k
aWYKICNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykKLSAgICB2aXJ0dWFsIHZvaWQgZG9uZURl
ZmVycmluZ05hdGl2ZUdlc3R1cmVzKGJvb2wgcHJldmVudE5hdGl2ZUdlc3R1cmVzKSA9IDA7Cisg
ICAgdmlydHVhbCB2b2lkIGRvbmVEZWZlcnJpbmdUb3VjaFN0YXJ0KGJvb2wgcHJldmVudE5hdGl2
ZUdlc3R1cmVzKSA9IDA7CiAjZW5kaWYKIAogICAgIHZpcnR1YWwgUmVmUHRyPFdlYlBvcHVwTWVu
dVByb3h5PiBjcmVhdGVQb3B1cE1lbnVQcm94eShXZWJQYWdlUHJveHkmKSA9IDA7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAppbmRleCA1NzE2ZDY3ZDcwMGUyZDFhOTdi
MzA0YTI5NDlhYWJjYTI0MzU4ZDVjLi4xMWIyY2VlNTA1OWE3M2U4NjlhMzNmZGFmMDc0ZWQ5MGM3
YjE5MjEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHku
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKQEAgLTI5
MDIsNyArMjkwMiw3IEBAIHZvaWQgV2ViUGFnZVByb3h5OjpoYW5kbGVQcmV2ZW50YWJsZVRvdWNo
RXZlbnQoTmF0aXZlV2ViVG91Y2hFdmVudCYgZXZlbnQpCiAgICAgVHJhY2tpbmdUeXBlIHRvdWNo
RXZlbnRzVHJhY2tpbmdUeXBlID0gdG91Y2hFdmVudFRyYWNraW5nVHlwZShldmVudCk7CiAgICAg
aWYgKHRvdWNoRXZlbnRzVHJhY2tpbmdUeXBlID09IFRyYWNraW5nVHlwZTo6Tm90VHJhY2tpbmcp
IHsKICAgICAgICAgaWYgKCFpc0hhbmRsaW5nUHJldmVudGFibGVUb3VjaFN0YXJ0KCkpCi0gICAg
ICAgICAgICBwYWdlQ2xpZW50KCkuZG9uZURlZmVycmluZ05hdGl2ZUdlc3R1cmVzKGZhbHNlKTsK
KyAgICAgICAgICAgIHBhZ2VDbGllbnQoKS5kb25lRGVmZXJyaW5nVG91Y2hTdGFydChmYWxzZSk7
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKQEAgLTI5MTcsMTYgKzI5MTcsMTcgQEAgdm9pZCBX
ZWJQYWdlUHJveHk6OmhhbmRsZVByZXZlbnRhYmxlVG91Y2hFdmVudChOYXRpdmVXZWJUb3VjaEV2
ZW50JiBldmVudCkKICAgICAgICAgaGFuZGxlVW5wcmV2ZW50YWJsZVRvdWNoRXZlbnQoZXZlbnQp
OwogICAgICAgICBkaWRSZWNlaXZlRXZlbnQoZXZlbnQudHlwZSgpLCBmYWxzZSk7CiAgICAgICAg
IGlmICghaXNIYW5kbGluZ1ByZXZlbnRhYmxlVG91Y2hTdGFydCgpKQotICAgICAgICAgICAgcGFn
ZUNsaWVudCgpLmRvbmVEZWZlcnJpbmdOYXRpdmVHZXN0dXJlcyhmYWxzZSk7CisgICAgICAgICAg
ICBwYWdlQ2xpZW50KCkuZG9uZURlZmVycmluZ1RvdWNoU3RhcnQoZmFsc2UpOwogICAgICAgICBy
ZXR1cm47CiAgICAgfQogCiAgICAgaWYgKGV2ZW50LnR5cGUoKSA9PSBXZWJFdmVudDo6VG91Y2hT
dGFydCkgewogICAgICAgICArK21faGFuZGxpbmdQcmV2ZW50YWJsZVRvdWNoU3RhcnRDb3VudDsK
ICAgICAgICAgRnVuY3Rpb248dm9pZChib29sLCBDYWxsYmFja0Jhc2U6OkVycm9yKT4gY29tcGxl
dGlvbkhhbmRsZXIgPSBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBldmVu
dF0oYm9vbCBoYW5kbGVkLCBDYWxsYmFja0Jhc2U6OkVycm9yIGVycm9yKSB7Ci0gICAgICAgICAg
ICBBU1NFUlQobV9oYW5kbGluZ1ByZXZlbnRhYmxlVG91Y2hTdGFydENvdW50KTsKLSAgICAgICAg
ICAgIGlmIChtX2hhbmRsaW5nUHJldmVudGFibGVUb3VjaFN0YXJ0Q291bnQpCi0gICAgICAgICAg
ICAgICAgLS1tX2hhbmRsaW5nUHJldmVudGFibGVUb3VjaFN0YXJ0Q291bnQ7CisgICAgICAgICAg
ICBib29sIGRpZEZpbmlzaERlZmVycmluZ1RvdWNoU3RhcnQgPSBmYWxzZTsKKyAgICAgICAgICAg
IEFTU0VSVF9JTVBMSUVTKGV2ZW50LnR5cGUoKSA9PSBXZWJFdmVudDo6VG91Y2hTdGFydCwgbV9o
YW5kbGluZ1ByZXZlbnRhYmxlVG91Y2hTdGFydENvdW50KTsKKyAgICAgICAgICAgIGlmIChldmVu
dC50eXBlKCkgPT0gV2ViRXZlbnQ6OlRvdWNoU3RhcnQgJiYgbV9oYW5kbGluZ1ByZXZlbnRhYmxl
VG91Y2hTdGFydENvdW50KQorICAgICAgICAgICAgICAgIGRpZEZpbmlzaERlZmVycmluZ1RvdWNo
U3RhcnQgPSAhLS1tX2hhbmRsaW5nUHJldmVudGFibGVUb3VjaFN0YXJ0Q291bnQ7CiAKICAgICAg
ICAgICAgIGJvb2wgaGFuZGxlZE9yRmFpbGVkV2l0aEVycm9yID0gaGFuZGxlZCB8fCBlcnJvciAh
PSBDYWxsYmFja0Jhc2U6OkVycm9yOjpOb25lIHx8IG1faGFuZGxlZFN5bmNocm9ub3VzVG91Y2hF
dmVudFdoaWxlRGlzcGF0Y2hpbmdQcmV2ZW50YWJsZVRvdWNoU3RhcnQ7CiAgICAgICAgICAgICBp
ZiAoIWlzSGFuZGxpbmdQcmV2ZW50YWJsZVRvdWNoU3RhcnQoKSkKQEAgLTI5MzcsOCArMjkzOCw5
IEBAIHZvaWQgV2ViUGFnZVByb3h5OjpoYW5kbGVQcmV2ZW50YWJsZVRvdWNoRXZlbnQoTmF0aXZl
V2ViVG91Y2hFdmVudCYgZXZlbnQpCiAKICAgICAgICAgICAgIGRpZFJlY2VpdmVFdmVudChldmVu
dC50eXBlKCksIGhhbmRsZWRPckZhaWxlZFdpdGhFcnJvcik7CiAgICAgICAgICAgICBwYWdlQ2xp
ZW50KCkuZG9uZVdpdGhUb3VjaEV2ZW50KGV2ZW50LCBoYW5kbGVkT3JGYWlsZWRXaXRoRXJyb3Ip
OwotICAgICAgICAgICAgaWYgKCFpc0hhbmRsaW5nUHJldmVudGFibGVUb3VjaFN0YXJ0KCkpCi0g
ICAgICAgICAgICAgICAgcGFnZUNsaWVudCgpLmRvbmVEZWZlcnJpbmdOYXRpdmVHZXN0dXJlcyho
YW5kbGVkT3JGYWlsZWRXaXRoRXJyb3IpOworCisgICAgICAgICAgICBpZiAoZGlkRmluaXNoRGVm
ZXJyaW5nVG91Y2hTdGFydCkKKyAgICAgICAgICAgICAgICBwYWdlQ2xpZW50KCkuZG9uZURlZmVy
cmluZ1RvdWNoU3RhcnQoaGFuZGxlZE9yRmFpbGVkV2l0aEVycm9yKTsKICAgICAgICAgfTsKIAog
ICAgICAgICBhdXRvIGNhbGxiYWNrSUQgPSBtX2NhbGxiYWNrcy5wdXQoV1RGTW92ZShjb21wbGV0
aW9uSGFuZGxlciksIG1fcHJvY2Vzcy0+dGhyb3R0bGVyKCkuYmFja2dyb3VuZEFjdGl2aXR5KCJX
ZWJQYWdlUHJveHk6OmhhbmRsZVByZXZlbnRhYmxlVG91Y2hFdmVudCJfcykpOwpAQCAtMjk1NSw3
ICsyOTU3LDcgQEAgdm9pZCBXZWJQYWdlUHJveHk6OmhhbmRsZVByZXZlbnRhYmxlVG91Y2hFdmVu
dChOYXRpdmVXZWJUb3VjaEV2ZW50JiBldmVudCkKICAgICBkaWRSZWNlaXZlRXZlbnQoZXZlbnQu
dHlwZSgpLCBoYW5kbGVkKTsKICAgICBwYWdlQ2xpZW50KCkuZG9uZVdpdGhUb3VjaEV2ZW50KGV2
ZW50LCBoYW5kbGVkKTsKICAgICBpZiAoIWlzSGFuZGxpbmdQcmV2ZW50YWJsZVRvdWNoU3RhcnQo
KSkKLSAgICAgICAgcGFnZUNsaWVudCgpLmRvbmVEZWZlcnJpbmdOYXRpdmVHZXN0dXJlcyhoYW5k
bGVkKTsKKyAgICAgICAgcGFnZUNsaWVudCgpLmRvbmVEZWZlcnJpbmdUb3VjaFN0YXJ0KGhhbmRs
ZWQpOwogICAgIGVsc2UgaWYgKGhhbmRsZWQpCiAgICAgICAgIG1faGFuZGxlZFN5bmNocm9ub3Vz
VG91Y2hFdmVudFdoaWxlRGlzcGF0Y2hpbmdQcmV2ZW50YWJsZVRvdWNoU3RhcnQgPSB0cnVlOwog
ICAgIG1fcHJvY2Vzcy0+c3RvcFJlc3BvbnNpdmVuZXNzVGltZXIoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5oIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLmgKaW5kZXggOGZkOGRjMzU4ZDMz
MTkxZWMzNjYxY2YyYThmZTRjZDc0Yjc3MTVlNC4uOGFiYjE2ODc5NTE1YWU3ZTQ0OTU1MzViMzM5
M2VmYjNiNmZhNzAwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1Bh
Z2VDbGllbnRJbXBsSU9TLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1BhZ2VD
bGllbnRJbXBsSU9TLmgKQEAgLTExMiw3ICsxMTIsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZG9u
ZVdpdGhUb3VjaEV2ZW50KGNvbnN0IE5hdGl2ZVdlYlRvdWNoRXZlbnQmLCBib29sIHdhc0V2ZW50
SGFuZGxlZCkgb3ZlcnJpZGU7CiAjZW5kaWYKICNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykK
LSAgICB2b2lkIGRvbmVEZWZlcnJpbmdOYXRpdmVHZXN0dXJlcyhib29sIHByZXZlbnROYXRpdmVH
ZXN0dXJlcykgb3ZlcnJpZGU7CisgICAgdm9pZCBkb25lRGVmZXJyaW5nVG91Y2hTdGFydChib29s
IHByZXZlbnROYXRpdmVHZXN0dXJlcykgb3ZlcnJpZGU7CiAjZW5kaWYKICAgICBSZWZQdHI8V2Vi
UG9wdXBNZW51UHJveHk+IGNyZWF0ZVBvcHVwTWVudVByb3h5KFdlYlBhZ2VQcm94eSYpIG92ZXJy
aWRlOwogICAgIFJlZjxXZWJDb3JlOjpWYWxpZGF0aW9uQnViYmxlPiBjcmVhdGVWYWxpZGF0aW9u
QnViYmxlKGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgV2ViQ29yZTo6VmFsaWRhdGlvbkJ1
YmJsZTo6U2V0dGluZ3MmKSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lv
cy9QYWdlQ2xpZW50SW1wbElPUy5tbQppbmRleCA0MWJjNTc0YTJjZjUxMTdiNDQ1M2QyZWVmZjlm
MTM1ZjQwYzZhN2Y3Li45YzUzOWVlZjg0M2IyNDhiMjRkODkyN2FhZmEzY2FmZDc5YmIzNGE0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUGFnZUNsaWVudEltcGxJT1Mu
bW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLm1t
CkBAIC00NDcsOSArNDQ3LDkgQEAgdm9pZCBQYWdlQ2xpZW50SW1wbDo6ZG9uZVdpdGhUb3VjaEV2
ZW50KGNvbnN0IE5hdGl2ZVdlYlRvdWNoRXZlbnQmIG5hdGl2ZVdlYlRvdWMKIAogI2lmIEVOQUJM
RShJT1NfVE9VQ0hfRVZFTlRTKQogCi12b2lkIFBhZ2VDbGllbnRJbXBsOjpkb25lRGVmZXJyaW5n
TmF0aXZlR2VzdHVyZXMoYm9vbCBwcmV2ZW50TmF0aXZlR2VzdHVyZXMpCit2b2lkIFBhZ2VDbGll
bnRJbXBsOjpkb25lRGVmZXJyaW5nVG91Y2hTdGFydChib29sIHByZXZlbnROYXRpdmVHZXN0dXJl
cykKIHsKLSAgICBbbV9jb250ZW50VmlldyBfZG9uZURlZmVycmluZ05hdGl2ZUdlc3R1cmVzOnBy
ZXZlbnROYXRpdmVHZXN0dXJlc107CisgICAgW21fY29udGVudFZpZXcgX2RvbmVEZWZlcnJpbmdU
b3VjaFN0YXJ0OnByZXZlbnROYXRpdmVHZXN0dXJlc107CiB9CiAKICNlbmRpZiAvLyBFTkFCTEUo
SU9TX1RPVUNIX0VWRU5UUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lv
cy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lv
cy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24uaAppbmRleCA0MzAxYTA5MTllODg2ZTIyMDAyZWZj
OGE0MGZjNTViODgxZDcxYWY4Li40MTQ2YTlmZjkzOWEzMDZiYjE2Y2VkNmFlOWE4ZTYzZGE0MGYw
MGUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmll
d0ludGVyYWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVu
dFZpZXdJbnRlcmFjdGlvbi5oCkBAIC0yNDIsOSArMjQyLDkgQEAgcHJpdmF0ZToKIAogQGludGVy
ZmFjZSBXS0NvbnRlbnRWaWV3ICgpIHsKICNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykKLSAg
ICBSZXRhaW5QdHI8V0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplcj4gX2RlZmVycmluZ0dlc3R1
cmVSZWNvZ25pemVyRm9ySW1tZWRpYXRlbHlSZXNldHRhYmxlR2VzdHVyZXM7Ci0gICAgUmV0YWlu
UHRyPFdLRGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXI+IF9kZWZlcnJpbmdHZXN0dXJlUmVjb2du
aXplckZvckRlbGF5ZWRSZXNldHRhYmxlR2VzdHVyZXM7Ci0gICAgUmV0YWluUHRyPFdLRGVmZXJy
aW5nR2VzdHVyZVJlY29nbml6ZXI+IF9kZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplckZvclN5bnRo
ZXRpY1RhcEdlc3R1cmVzOworICAgIFJldGFpblB0cjxXS0RlZmVycmluZ0dlc3R1cmVSZWNvZ25p
emVyPiBfdG91Y2hTdGFydERlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyRm9ySW1tZWRpYXRlbHlS
ZXNldHRhYmxlR2VzdHVyZXM7CisgICAgUmV0YWluUHRyPFdLRGVmZXJyaW5nR2VzdHVyZVJlY29n
bml6ZXI+IF90b3VjaFN0YXJ0RGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJGb3JEZWxheWVkUmVz
ZXR0YWJsZUdlc3R1cmVzOworICAgIFJldGFpblB0cjxXS0RlZmVycmluZ0dlc3R1cmVSZWNvZ25p
emVyPiBfdG91Y2hTdGFydERlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyRm9yU3ludGhldGljVGFw
R2VzdHVyZXM7CiAjZW5kaWYKICAgICBSZXRhaW5QdHI8VUlXZWJUb3VjaEV2ZW50c0dlc3R1cmVS
ZWNvZ25pemVyPiBfdG91Y2hFdmVudEdlc3R1cmVSZWNvZ25pemVyOwogCkBAIC01MzksNyArNTM5
LDcgQEAgRk9SX0VBQ0hfUFJJVkFURV9XS0NPTlRFTlRWSUVXX0FDVElPTihERUNMQVJFX1dLQ09O
VEVOVFZJRVdfQUNUSU9OX0ZPUl9XRUJfVklFVykKIC0gKHZvaWQpX3dlYlRvdWNoRXZlbnQ6KGNv
bnN0IFdlYktpdDo6TmF0aXZlV2ViVG91Y2hFdmVudCYpdG91Y2hFdmVudCBwcmV2ZW50c05hdGl2
ZUdlc3R1cmVzOihCT09MKXByZXZlbnRzRGVmYXVsdDsKICNlbmRpZgogI2lmIEVOQUJMRShJT1Nf
VE9VQ0hfRVZFTlRTKQotLSAodm9pZClfZG9uZURlZmVycmluZ05hdGl2ZUdlc3R1cmVzOihCT09M
KXByZXZlbnROYXRpdmVHZXN0dXJlczsKKy0gKHZvaWQpX2RvbmVEZWZlcnJpbmdUb3VjaFN0YXJ0
OihCT09MKXByZXZlbnROYXRpdmVHZXN0dXJlczsKICNlbmRpZgogLSAodm9pZClfY29tbWl0UG90
ZW50aWFsVGFwRmFpbGVkOwogLSAodm9pZClfZGlkTm90SGFuZGxlVGFwQXNDbGljazooY29uc3Qg
V2ViQ29yZTo6SW50UG9pbnQmKXBvaW50OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KaW5kZXggMTM2MTgyZGI0N2Q0
M2U2OTkwMmVmODNmMThjZTZkZmRiMzM4YjNjZS4uMWIwOTllYWM3MjY5NzIzMDYxNzA5NGRlMmJi
ZTkxY2M3MmNlMDBkYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dL
Q29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9p
b3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCkBAIC03NjQsMjAgKzc2NCwyMCBAQCAtICh2
b2lkKXNldFVwSW50ZXJhY3Rpb24KICAgICBbc2VsZiBhZGRHZXN0dXJlUmVjb2duaXplcjpfdG91
Y2hBY3Rpb25Eb3duU3dpcGVHZXN0dXJlUmVjb2duaXplci5nZXQoKV07CiAKICNpZiBFTkFCTEUo
SU9TX1RPVUNIX0VWRU5UUykKLSAgICBfZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJGb3JJbW1l
ZGlhdGVseVJlc2V0dGFibGVHZXN0dXJlcyA9IGFkb3B0TlMoW1tXS0RlZmVycmluZ0dlc3R1cmVS
ZWNvZ25pemVyIGFsbG9jXSBpbml0V2l0aERlZmVycmluZ0dlc3R1cmVEZWxlZ2F0ZTpzZWxmXSk7
Ci0gICAgW19kZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplckZvckltbWVkaWF0ZWx5UmVzZXR0YWJs
ZUdlc3R1cmVzIHNldE5hbWU6QCJUb3VjaCBldmVudCBkZWZlcnJlciAoaW1tZWRpYXRlIHJlc2V0
KSJdOworICAgIF90b3VjaFN0YXJ0RGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJGb3JJbW1lZGlh
dGVseVJlc2V0dGFibGVHZXN0dXJlcyA9IGFkb3B0TlMoW1tXS0RlZmVycmluZ0dlc3R1cmVSZWNv
Z25pemVyIGFsbG9jXSBpbml0V2l0aERlZmVycmluZ0dlc3R1cmVEZWxlZ2F0ZTpzZWxmXSk7Cisg
ICAgW190b3VjaFN0YXJ0RGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJGb3JJbW1lZGlhdGVseVJl
c2V0dGFibGVHZXN0dXJlcyBzZXROYW1lOkAiVG91Y2ggc3RhcnQgZGVmZXJyZXIgKGltbWVkaWF0
ZSByZXNldCkiXTsKIAotICAgIF9kZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplckZvckRlbGF5ZWRS
ZXNldHRhYmxlR2VzdHVyZXMgPSBhZG9wdE5TKFtbV0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXpl
ciBhbGxvY10gaW5pdFdpdGhEZWZlcnJpbmdHZXN0dXJlRGVsZWdhdGU6c2VsZl0pOwotICAgIFtf
ZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJGb3JEZWxheWVkUmVzZXR0YWJsZUdlc3R1cmVzIHNl
dE5hbWU6QCJUb3VjaCBldmVudCBkZWZlcnJlciAoZGVsYXllZCByZXNldCkiXTsKKyAgICBfdG91
Y2hTdGFydERlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyRm9yRGVsYXllZFJlc2V0dGFibGVHZXN0
dXJlcyA9IGFkb3B0TlMoW1tXS0RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyIGFsbG9jXSBpbml0
V2l0aERlZmVycmluZ0dlc3R1cmVEZWxlZ2F0ZTpzZWxmXSk7CisgICAgW190b3VjaFN0YXJ0RGVm
ZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJGb3JEZWxheWVkUmVzZXR0YWJsZUdlc3R1cmVzIHNldE5h
bWU6QCJUb3VjaCBzdGFydCBkZWZlcnJlciAoZGVsYXllZCByZXNldCkiXTsKIAotICAgIF9kZWZl
cnJpbmdHZXN0dXJlUmVjb2duaXplckZvclN5bnRoZXRpY1RhcEdlc3R1cmVzID0gYWRvcHROUyhb
W1dLRGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIgYWxsb2NdIGluaXRXaXRoRGVmZXJyaW5nR2Vz
dHVyZURlbGVnYXRlOnNlbGZdKTsKLSAgICBbX2RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyRm9y
U3ludGhldGljVGFwR2VzdHVyZXMgc2V0TmFtZTpAIlRvdWNoIGV2ZW50IGRlZmVycmVyIChzeW50
aGV0aWMgdGFwKSJdOworICAgIF90b3VjaFN0YXJ0RGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJG
b3JTeW50aGV0aWNUYXBHZXN0dXJlcyA9IGFkb3B0TlMoW1tXS0RlZmVycmluZ0dlc3R1cmVSZWNv
Z25pemVyIGFsbG9jXSBpbml0V2l0aERlZmVycmluZ0dlc3R1cmVEZWxlZ2F0ZTpzZWxmXSk7Cisg
ICAgW190b3VjaFN0YXJ0RGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJGb3JTeW50aGV0aWNUYXBH
ZXN0dXJlcyBzZXROYW1lOkAiVG91Y2ggc3RhcnQgZGVmZXJyZXIgKHN5bnRoZXRpYyB0YXApIl07
CiAKLSAgICBmb3IgKFdLRGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIgKmdlc3R1cmUgaW4gc2Vs
Zi5fZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJzKSB7CisgICAgZm9yIChXS0RlZmVycmluZ0dl
c3R1cmVSZWNvZ25pemVyICpnZXN0dXJlIGluIHNlbGYuX3RvdWNoU3RhcnREZWZlcnJpbmdHZXN0
dXJlcykgewogICAgICAgICBnZXN0dXJlLmRlbGVnYXRlID0gc2VsZjsKICAgICAgICAgW3NlbGYg
YWRkR2VzdHVyZVJlY29nbml6ZXI6Z2VzdHVyZV07CiAgICAgfQotI2VuZGlmCisjZW5kaWYgLy8g
RU5BQkxFKElPU19UT1VDSF9FVkVOVFMpCiAKICAgICBfdG91Y2hFdmVudEdlc3R1cmVSZWNvZ25p
emVyID0gYWRvcHROUyhbW1VJV2ViVG91Y2hFdmVudHNHZXN0dXJlUmVjb2duaXplciBhbGxvY10g
aW5pdFdpdGhUYXJnZXQ6c2VsZiBhY3Rpb246QHNlbGVjdG9yKF93ZWJUb3VjaEV2ZW50c1JlY29n
bml6ZWQ6KSB0b3VjaERlbGVnYXRlOnNlbGZdKTsKICAgICBbX3RvdWNoRXZlbnRHZXN0dXJlUmVj
b2duaXplciBzZXREZWxlZ2F0ZTpzZWxmXTsKQEAgLTk1Myw3ICs5NTMsNyBAQCAtICh2b2lkKWNs
ZWFuVXBJbnRlcmFjdGlvbgogICAgIFtzZWxmIHJlbW92ZUdlc3R1cmVSZWNvZ25pemVyOl90b3Vj
aEV2ZW50R2VzdHVyZVJlY29nbml6ZXIuZ2V0KCldOwogCiAjaWYgRU5BQkxFKElPU19UT1VDSF9F
VkVOVFMpCi0gICAgZm9yIChXS0RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyICpnZXN0dXJlIGlu
IHNlbGYuX2RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVycykgeworICAgIGZvciAoV0tEZWZlcnJp
bmdHZXN0dXJlUmVjb2duaXplciAqZ2VzdHVyZSBpbiBzZWxmLl90b3VjaFN0YXJ0RGVmZXJyaW5n
R2VzdHVyZXMpIHsKICAgICAgICAgZ2VzdHVyZS5kZWxlZ2F0ZSA9IG5pbDsKICAgICAgICAgW3Nl
bGYgcmVtb3ZlR2VzdHVyZVJlY29nbml6ZXI6Z2VzdHVyZV07CiAgICAgfQpAQCAtMTA4NCw3ICsx
MDg0LDcgQEAgLSAodm9pZClfY2FuY2VsUGVuZGluZ0tleUV2ZW50SGFuZGxlcgogLSAodm9pZClf
cmVtb3ZlRGVmYXVsdEdlc3R1cmVSZWNvZ25pemVycwogewogI2lmIEVOQUJMRShJT1NfVE9VQ0hf
RVZFTlRTKQotICAgIGZvciAoV0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciAqZ2VzdHVyZSBp
biBzZWxmLl9kZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplcnMpCisgICAgZm9yIChXS0RlZmVycmlu
Z0dlc3R1cmVSZWNvZ25pemVyICpnZXN0dXJlIGluIHNlbGYuX3RvdWNoU3RhcnREZWZlcnJpbmdH
ZXN0dXJlcykKICAgICAgICAgW3NlbGYgcmVtb3ZlR2VzdHVyZVJlY29nbml6ZXI6Z2VzdHVyZV07
CiAjZW5kaWYKICAgICBbc2VsZiByZW1vdmVHZXN0dXJlUmVjb2duaXplcjpfdG91Y2hFdmVudEdl
c3R1cmVSZWNvZ25pemVyLmdldCgpXTsKQEAgLTExMTEsNyArMTExMSw3IEBAIC0gKHZvaWQpX3Jl
bW92ZURlZmF1bHRHZXN0dXJlUmVjb2duaXplcnMKIC0gKHZvaWQpX2FkZERlZmF1bHRHZXN0dXJl
UmVjb2duaXplcnMKIHsKICNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykKLSAgICBmb3IgKFdL
RGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIgKmdlc3R1cmUgaW4gc2VsZi5fZGVmZXJyaW5nR2Vz
dHVyZVJlY29nbml6ZXJzKQorICAgIGZvciAoV0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciAq
Z2VzdHVyZSBpbiBzZWxmLl90b3VjaFN0YXJ0RGVmZXJyaW5nR2VzdHVyZXMpCiAgICAgICAgIFtz
ZWxmIGFkZEdlc3R1cmVSZWNvZ25pemVyOmdlc3R1cmVdOwogI2VuZGlmCiAgICAgW3NlbGYgYWRk
R2VzdHVyZVJlY29nbml6ZXI6X3RvdWNoRXZlbnRHZXN0dXJlUmVjb2duaXplci5nZXQoKV07CkBA
IC0xNTQ4LDggKzE1NDgsMTcgQEAgLSAodm9pZClfd2ViVG91Y2hFdmVudHNSZWNvZ25pemVkOihV
SVdlYlRvdWNoRXZlbnRzR2VzdHVyZVJlY29nbml6ZXIgKilnZXN0dXJlUmUKIAogICAgICAgICBp
ZiAobmF0aXZlV2ViVG91Y2hFdmVudC5pc1BvdGVudGlhbFRhcCgpICYmIHNlbGYuaGFzSGlkZGVu
Q29udGVudEVkaXRhYmxlICYmIHNlbGYuX2hhc0ZvY3VzZWRFbGVtZW50ICYmICFzZWxmLndpbmRv
dy5rZXlXaW5kb3cpCiAgICAgICAgICAgICBbc2VsZi53aW5kb3cgbWFrZUtleVdpbmRvd107CisK
KyNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykKKyAgICAgICAgaWYgKCFfcGFnZS0+aXNIYW5k
bGluZ1ByZXZlbnRhYmxlVG91Y2hTdGFydCgpKSB7CisgICAgICAgICAgICBmb3IgKFdLRGVmZXJy
aW5nR2VzdHVyZVJlY29nbml6ZXIgKmdlc3R1cmUgaW4gc2VsZi5fdG91Y2hTdGFydERlZmVycmlu
Z0dlc3R1cmVzKSB7CisgICAgICAgICAgICAgICAgaWYgKGdlc3R1cmUuc3RhdGUgPT0gVUlHZXN0
dXJlUmVjb2duaXplclN0YXRlUG9zc2libGUpCisgICAgICAgICAgICAgICAgICAgIGdlc3R1cmUu
c3RhdGUgPSBVSUdlc3R1cmVSZWNvZ25pemVyU3RhdGVGYWlsZWQ7CisgICAgICAgICAgICB9Cisg
ICAgICAgIH0KKyNlbmRpZiAvLyBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykKICAgICB9Ci0jZW5k
aWYKKyNlbmRpZiAvLyBFTkFCTEUoVE9VQ0hfRVZFTlRTKQogfQogCiAjaWYgRU5BQkxFKFRPVUNI
X0VWRU5UUykKQEAgLTE3MjcsNyArMTczNiw3IEBAIC0gKHZvaWQpX3dlYlRvdWNoRXZlbnQ6KGNv
bnN0IFdlYktpdDo6TmF0aXZlV2ViVG91Y2hFdmVudCYpdG91Y2hFdmVudCBwcmV2ZW50c05hCiAK
ICNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykKIAotLSAoTlNBcnJheTxXS0RlZmVycmluZ0dl
c3R1cmVSZWNvZ25pemVyICo+ICopX2RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVycworLSAoTlNB
cnJheTxXS0RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyICo+ICopX3RvdWNoU3RhcnREZWZlcnJp
bmdHZXN0dXJlcwogewogICAgIFdLRGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIgKnJlY29nbml6
ZXJzWzNdOwogICAgIE5TVUludGVnZXIgY291bnQgPSAwOwpAQCAtMTczNSwxNSArMTc0NCwxNSBA
QCAtIChOU0FycmF5PFdLRGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIgKj4gKilfZGVmZXJyaW5n
R2VzdHVyZVJlY29nbml6ZXJzCiAgICAgICAgIGlmIChyZWNvZ25pemVyKQogICAgICAgICAgICAg
cmVjb2duaXplcnNbY291bnQrK10gPSByZWNvZ25pemVyLmdldCgpOwogICAgIH07Ci0gICAgYWRk
KF9kZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplckZvckltbWVkaWF0ZWx5UmVzZXR0YWJsZUdlc3R1
cmVzKTsKLSAgICBhZGQoX2RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyRm9yRGVsYXllZFJlc2V0
dGFibGVHZXN0dXJlcyk7Ci0gICAgYWRkKF9kZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplckZvclN5
bnRoZXRpY1RhcEdlc3R1cmVzKTsKKyAgICBhZGQoX3RvdWNoU3RhcnREZWZlcnJpbmdHZXN0dXJl
UmVjb2duaXplckZvckltbWVkaWF0ZWx5UmVzZXR0YWJsZUdlc3R1cmVzKTsKKyAgICBhZGQoX3Rv
dWNoU3RhcnREZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplckZvckRlbGF5ZWRSZXNldHRhYmxlR2Vz
dHVyZXMpOworICAgIGFkZChfdG91Y2hTdGFydERlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyRm9y
U3ludGhldGljVGFwR2VzdHVyZXMpOwogICAgIHJldHVybiBbTlNBcnJheSBhcnJheVdpdGhPYmpl
Y3RzOnJlY29nbml6ZXJzIGNvdW50OmNvdW50XTsKIH0KIAotLSAodm9pZClfZG9uZURlZmVycmlu
Z05hdGl2ZUdlc3R1cmVzOihCT09MKXByZXZlbnROYXRpdmVHZXN0dXJlcworLSAodm9pZClfZG9u
ZURlZmVycmluZ1RvdWNoU3RhcnQ6KEJPT0wpcHJldmVudE5hdGl2ZUdlc3R1cmVzCiB7Ci0gICAg
Zm9yIChXS0RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyICpnZXN0dXJlIGluIHNlbGYuX2RlZmVy
cmluZ0dlc3R1cmVSZWNvZ25pemVycykKKyAgICBmb3IgKFdLRGVmZXJyaW5nR2VzdHVyZVJlY29n
bml6ZXIgKmdlc3R1cmUgaW4gc2VsZi5fdG91Y2hTdGFydERlZmVycmluZ0dlc3R1cmVzKQogICAg
ICAgICBbZ2VzdHVyZSBzZXREZWZhdWx0UHJldmVudGVkOnByZXZlbnROYXRpdmVHZXN0dXJlc107
CiB9CiAKQEAgLTIxMjgsNyArMjEzNyw3IEBAIHN0YXRpYyBDbGFzcyB0YXBBbmRBSGFsZlJlY29n
bml6ZXJDbGFzcygpCiAtIChCT09MKWdlc3R1cmVSZWNvZ25pemVyOihVSUdlc3R1cmVSZWNvZ25p
emVyICopZ2VzdHVyZVJlY29nbml6ZXIgc2hvdWxkUmVjb2duaXplU2ltdWx0YW5lb3VzbHlXaXRo
R2VzdHVyZVJlY29nbml6ZXI6KFVJR2VzdHVyZVJlY29nbml6ZXIqKW90aGVyR2VzdHVyZVJlY29n
bml6ZXIKIHsKICNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykKLSAgICBmb3IgKFdLRGVmZXJy
aW5nR2VzdHVyZVJlY29nbml6ZXIgKmdlc3R1cmUgaW4gc2VsZi5fZGVmZXJyaW5nR2VzdHVyZVJl
Y29nbml6ZXJzKSB7CisgICAgZm9yIChXS0RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyICpnZXN0
dXJlIGluIHNlbGYuX3RvdWNoU3RhcnREZWZlcnJpbmdHZXN0dXJlcykgewogICAgICAgICBpZiAo
aXNTYW1lUGFpcihnZXN0dXJlUmVjb2duaXplciwgb3RoZXJHZXN0dXJlUmVjb2duaXplciwgX3Rv
dWNoRXZlbnRHZXN0dXJlUmVjb2duaXplci5nZXQoKSwgZ2VzdHVyZSkpCiAgICAgICAgICAgICBy
ZXR1cm4gWUVTOwogICAgIH0KQEAgLTczMDcsMTEgKzczMTYsNiBAQCAtIChCT09MKWRlZmVycmlu
Z0dlc3R1cmVSZWNvZ25pemVyOihXS0RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyICopZGVmZXJy
aW5nR2VzdAogICAgIHJldHVybiAhW3NlbGYgZ2VzdHVyZVJlY29nbml6ZXI6ZGVmZXJyaW5nR2Vz
dHVyZVJlY29nbml6ZXIgaXNJbnRlcnJ1cHRpbmdNb21lbnR1bVNjcm9sbGluZ1dpdGhFdmVudDpl
dmVudF07CiB9CiAKLS0gKEJPT0wpZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXI6KFdLRGVmZXJy
aW5nR2VzdHVyZVJlY29nbml6ZXIgKilkZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciBzaG91bGRE
ZWZlckdlc3R1cmVzQWZ0ZXJFbmRpbmdUb3VjaGVzV2l0aEV2ZW50OihVSUV2ZW50ICopZXZlbnQK
LXsKLSAgICByZXR1cm4gX3BhZ2UtPmlzSGFuZGxpbmdQcmV2ZW50YWJsZVRvdWNoU3RhcnQoKTsK
LX0KLQogLSAoQk9PTClkZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplcjooV0tEZWZlcnJpbmdHZXN0
dXJlUmVjb2duaXplciAqKWRlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyIHNob3VsZERlZmVyT3Ro
ZXJHZXN0dXJlUmVjb2duaXplcjooVUlHZXN0dXJlUmVjb2duaXplciAqKWdlc3R1cmVSZWNvZ25p
emVyCiB7CiAjaWYgRU5BQkxFKElPU19UT1VDSF9FVkVOVFMpCkBAIC03MzYzLDEzICs3MzY3LDEz
IEBAIC0gKEJPT0wpZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXI6KFdLRGVmZXJyaW5nR2VzdHVy
ZVJlY29nbml6ZXIgKilkZWZlcnJpbmdHZXN0CiAgICAgICAgIHJldHVybiBOTzsKICAgICB9Owog
Ci0gICAgaWYgKGdlc3R1cmVSZWNvZ25pemVyID09IF9kb3VibGVUYXBHZXN0dXJlUmVjb2duaXpl
ciB8fCBnZXN0dXJlUmVjb2duaXplciA9PSBfc2luZ2xlVGFwR2VzdHVyZVJlY29nbml6ZXIpCi0g
ICAgICAgIHJldHVybiBkZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciA9PSBfZGVmZXJyaW5nR2Vz
dHVyZVJlY29nbml6ZXJGb3JTeW50aGV0aWNUYXBHZXN0dXJlczsKKyAgICBpZiAoW2dlc3R1cmVS
ZWNvZ25pemVyIGlzS2luZE9mQ2xhc3M6V0tTeW50aGV0aWNUYXBHZXN0dXJlUmVjb2duaXplci5j
bGFzc10pCisgICAgICAgIHJldHVybiBkZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciA9PSBfdG91
Y2hTdGFydERlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyRm9yU3ludGhldGljVGFwR2VzdHVyZXM7
CiAKICAgICBpZiAobWF5RGVsYXlSZXNldE9mQ29udGFpbmluZ1N1YmdyYXBoKGdlc3R1cmVSZWNv
Z25pemVyKSkKLSAgICAgICAgcmV0dXJuIGRlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyID09IF9k
ZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplckZvckRlbGF5ZWRSZXNldHRhYmxlR2VzdHVyZXM7Cisg
ICAgICAgIHJldHVybiBkZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciA9PSBfdG91Y2hTdGFydERl
ZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyRm9yRGVsYXllZFJlc2V0dGFibGVHZXN0dXJlczsKIAot
ICAgIHJldHVybiBkZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciA9PSBfZGVmZXJyaW5nR2VzdHVy
ZVJlY29nbml6ZXJGb3JJbW1lZGlhdGVseVJlc2V0dGFibGVHZXN0dXJlczsKKyAgICByZXR1cm4g
ZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIgPT0gX3RvdWNoU3RhcnREZWZlcnJpbmdHZXN0dXJl
UmVjb2duaXplckZvckltbWVkaWF0ZWx5UmVzZXR0YWJsZUdlc3R1cmVzOwogI2Vsc2UKICAgICBV
TlVTRURfUEFSQU0oZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIpOwogICAgIFVOVVNFRF9QQVJB
TShnZXN0dXJlUmVjb2duaXplcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9pb3MvV0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplci5oIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvaW9zL1dLRGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIuaAppbmRleCA1OTExMDllM2U0
ZjMxZWIzZTJkZjFhMWJhNTA0YjE3ZThjYjY4ZGZlLi5mNGM3ZmIzYmY3ZDJkMjA4MDRjY2ZmOTY3
ZjVmZWNmMTVkNzAxYTQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3Mv
V0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL2lvcy9XS0RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyLmgKQEAgLTMwLDcgKzMwLDYgQEAK
IEBjbGFzcyBXS0RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyOwogCiBAcHJvdG9jb2wgV0tEZWZl
cnJpbmdHZXN0dXJlUmVjb2duaXplckRlbGVnYXRlCi0tIChCT09MKWRlZmVycmluZ0dlc3R1cmVS
ZWNvZ25pemVyOihXS0RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyICopZGVmZXJyaW5nR2VzdHVy
ZVJlY29nbml6ZXIgc2hvdWxkRGVmZXJHZXN0dXJlc0FmdGVyRW5kaW5nVG91Y2hlc1dpdGhFdmVu
dDooVUlFdmVudCAqKWV2ZW50OwogLSAoQk9PTClkZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplcjoo
V0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciAqKWRlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVy
IHNob3VsZERlZmVyR2VzdHVyZXNBZnRlckJlZ2lubmluZ1RvdWNoZXNXaXRoRXZlbnQ6KFVJRXZl
bnQgKilldmVudDsKIC0gKEJPT0wpZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXI6KFdLRGVmZXJy
aW5nR2VzdHVyZVJlY29nbml6ZXIgKilkZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciBzaG91bGRE
ZWZlck90aGVyR2VzdHVyZVJlY29nbml6ZXI6KFVJR2VzdHVyZVJlY29nbml6ZXIgKilnZXN0dXJl
UmVjb2duaXplcjsKIEBlbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lv
cy9XS0RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvaW9zL1dLRGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIubW0KaW5kZXggMTBhYzVhNzk3OTg4
Njk0OGM5MjY1OWNjODI1NDViNmNkNzNjZjMzOC4uNjhlZDcyNzcwNGI3ZmQ2NjVkYjI1MjU2NjY4
N2E5ODdmNmM0ZjUwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dL
RGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvaW9zL1dLRGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIubW0KQEAgLTU1LDE5ICs1NSw2IEBA
IC0gKHZvaWQpdG91Y2hlc0JlZ2FuOihOU1NldDxVSVRvdWNoICo+ICopdG91Y2hlcyB3aXRoRXZl
bnQ6KFVJRXZlbnQgKilldmVudAogICAgIHNlbGYuc3RhdGUgPSBVSUdlc3R1cmVSZWNvZ25pemVy
U3RhdGVGYWlsZWQ7CiB9CiAKLS0gKHZvaWQpdG91Y2hlc0VuZGVkOihOU1NldDxVSVRvdWNoICo+
ICopdG91Y2hlcyB3aXRoRXZlbnQ6KFVJRXZlbnQgKilldmVudAotewotICAgIFtzdXBlciB0b3Vj
aGVzRW5kZWQ6dG91Y2hlcyB3aXRoRXZlbnQ6ZXZlbnRdOwotCi0gICAgaWYgKHNlbGYuc3RhdGUg
IT0gVUlHZXN0dXJlUmVjb2duaXplclN0YXRlUG9zc2libGUpCi0gICAgICAgIHJldHVybjsKLQot
ICAgIGlmIChbX2RlZmVycmluZ0dlc3R1cmVEZWxlZ2F0ZSBkZWZlcnJpbmdHZXN0dXJlUmVjb2du
aXplcjpzZWxmIHNob3VsZERlZmVyR2VzdHVyZXNBZnRlckVuZGluZ1RvdWNoZXNXaXRoRXZlbnQ6
ZXZlbnRdKQotICAgICAgICByZXR1cm47Ci0KLSAgICBzZWxmLnN0YXRlID0gVUlHZXN0dXJlUmVj
b2duaXplclN0YXRlRmFpbGVkOwotfQotCiAtICh2b2lkKXRvdWNoZXNDYW5jZWxsZWQ6KE5TU2V0
PFVJVG91Y2ggKj4gKil0b3VjaGVzIHdpdGhFdmVudDooVUlFdmVudCAqKWV2ZW50CiB7CiAgICAg
W3N1cGVyIHRvdWNoZXNDYW5jZWxsZWQ6dG91Y2hlcyB3aXRoRXZlbnQ6ZXZlbnRdOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417052</attachid>
            <date>2021-01-05 16:45:12 -0800</date>
            <delta_ts>2021-01-05 21:59:50 -0800</delta_ts>
            <desc>Fix bug title in ChangeLog</desc>
            <filename>bug-220345-20210105164512.patch</filename>
            <type>text/plain</type>
            <size>21072</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxMTQ2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDdlYmQyZDZkMDBmOTkyYmE0
YzA4NWY3NzhjNzUwNmU5YTAxMzFmNDQuLjhjZGE3YzI4NjdhOGZkMGVmZjdjMzRkNDYzY2QxYTVh
OWYwOGVlM2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTYgQEAKKzIwMjEtMDEtMDUgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgUmVmYWN0b3Igc29tZSBs
b2dpYyBhcm91bmQgdG91Y2ggZXZlbnQgZGVmZXJyaW5nIGdlc3R1cmUgcmVjb2duaXplcnMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDM0NQorCisg
ICAgICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24uCisKKyAgICAgICAgUmVuYW1lIGBfZGVmZXJy
aW5nR2VzdHVyZVJlY29nbml6ZXJGb3JGb29gIHRvIGBfdG91Y2hTdGFydERlZmVycmluZ0dlc3R1
cmVSZWNvZ25pemVyRm9yRm9vYCwgdG8gbWFrZSBpdCBjbGVhcgorICAgICAgICB0aGF0IHRoZXNl
IGRlZmVycmluZyBnZXN0dXJlcyBhcmUgb25seSBpbnRlbmRlZCB0byBkZWZlciBuYXRpdmUgZ2Vz
dHVyZXMgdW50aWwgdGhlICJ0b3VjaHN0YXJ0IiBldmVudCBoYXMgYmVlbgorICAgICAgICBoYW5k
bGVkLgorCisgICAgICAgIFRoaXMgZGlzdGluY3Rpb24gYmVjb21lcyBpbXBvcnRhbnQgb25jZSBJ
IGludHJvZHVjZSBkZWZlcnJpbmcgZ2VzdHVyZSByZWNvZ25pemVycyB0aGF0IGRlZmVyIHRoZSAi
dG91Y2hlbmQiCisgICAgICAgIGV2ZW50LCBhbmQgcHJldmVudCBnZXN0dXJlcyB0aGF0IGFjdGl2
YXRlIHVwb24gdG91Y2ggZW5kIChpLmUuIHZhcmlvdXMgdHlwZXMgb2YgdGFwIGdlc3R1cmUgcmVj
b2duaXplcnMpLgorCisgICAgICAgIFNlZSBiZWxvdyBmb3IgbW9yZSBkZXRhaWxzLgorCisgICAg
ICAgICogVUlQcm9jZXNzL1BhZ2VDbGllbnQuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFn
ZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpoYW5kbGVQcmV2ZW50
YWJsZVRvdWNoRXZlbnQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvUGFnZUNsaWVudEltcGxJ
T1MuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLm1tOgorICAg
ICAgICAoV2ViS2l0OjpQYWdlQ2xpZW50SW1wbDo6ZG9uZURlZmVycmluZ1RvdWNoU3RhcnQpOgor
ICAgICAgICAoV2ViS2l0OjpQYWdlQ2xpZW50SW1wbDo6ZG9uZURlZmVycmluZ05hdGl2ZUdlc3R1
cmVzKTogRGVsZXRlZC4KKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRl
cmFjdGlvbi5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0
aW9uLm1tOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IHNldFVwSW50ZXJhY3Rpb25dKToKKyAg
ICAgICAgKC1bV0tDb250ZW50VmlldyBjbGVhblVwSW50ZXJhY3Rpb25dKToKKyAgICAgICAgKC1b
V0tDb250ZW50VmlldyBfcmVtb3ZlRGVmYXVsdEdlc3R1cmVSZWNvZ25pemVyc10pOgorICAgICAg
ICAoLVtXS0NvbnRlbnRWaWV3IF9hZGREZWZhdWx0R2VzdHVyZVJlY29nbml6ZXJzXSk6CisgICAg
ICAgICgtW1dLQ29udGVudFZpZXcgX3dlYlRvdWNoRXZlbnRzUmVjb2duaXplZDpdKToKKyAgICAg
ICAgKC1bV0tDb250ZW50VmlldyBfdG91Y2hTdGFydERlZmVycmluZ0dlc3R1cmVzXSk6CisgICAg
ICAgICgtW1dLQ29udGVudFZpZXcgX2RvbmVEZWZlcnJpbmdUb3VjaFN0YXJ0Ol0pOgorICAgICAg
ICAoLVtXS0NvbnRlbnRWaWV3IGdlc3R1cmVSZWNvZ25pemVyOnNob3VsZFJlY29nbml6ZVNpbXVs
dGFuZW91c2x5V2l0aEdlc3R1cmVSZWNvZ25pemVyOl0pOgorICAgICAgICAoLVtXS0NvbnRlbnRW
aWV3IGRlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyOnNob3VsZERlZmVyT3RoZXJHZXN0dXJlUmVj
b2duaXplcjpdKToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBfZGVmZXJyaW5nR2VzdHVyZVJl
Y29nbml6ZXJzXSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dLQ29udGVudFZpZXcgX2RvbmVEZWZl
cnJpbmdOYXRpdmVHZXN0dXJlczpdKTogRGVsZXRlZC4KKworICAgICAgICBSZW5hbWUgdGhpcyB0
byBgLV9kb25lRGVmZXJyaW5nVG91Y2hTdGFydDpgLgorCisgICAgICAgICgtW1dLQ29udGVudFZp
ZXcgZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXI6c2hvdWxkRGVmZXJHZXN0dXJlc0FmdGVyRW5k
aW5nVG91Y2hlc1dpdGhFdmVudDpdKToKKworICAgICAgICBEZWxldGVkLiBUaGlzIGxvZ2ljIGhh
cyBiZWVuIG1vdmVkIHRvIFdLQ29udGVudFZpZXcgKHNlZSBiZWxvdykuCisKKyAgICAgICAgKiBV
SVByb2Nlc3MvaW9zL1dLRGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIuaDoKKyAgICAgICAgKiBV
SVByb2Nlc3MvaW9zL1dLRGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIubW06CisgICAgICAgICgt
W1dLRGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIgdG91Y2hlc0VuZGVkOndpdGhFdmVudDpdKTog
RGVsZXRlZC4KKworICAgICAgICBBZGRpdGlvbmFsbHkgcmVmYWN0b3IgdGhpcyBjb2RlIHNvIHRo
YXQgdGhpcyBmYWxsYmFjayBsb2dpYyBmb3IgbGlmdGluZyB0aGUgZ2VzdHVyZSBnYXRlIGV4aXN0
cyBpbnNpZGUKKyAgICAgICAgYFdLQ29udGVudFZpZXdgIChhZnRlciBlbmRpbmcgYWxsIHRvdWNo
ZXMpLCByYXRoZXIgdGhhbiBpbnNpZGUgdGhlIGRlZmVycmluZyBnZXN0dXJlIHJlY29nbml6ZXIu
IFdoaWxlIHRoaXMKKyAgICAgICAgZG9lc24ndCBhZmZlY3QgdGhlIGV4dGFudCB0b3VjaCBzdGFy
dCBkZWZlcnJpbmcgZ2VzdHVyZXMsIGl0IHdpbGwgZW5zdXJlIHRoYXQgdG91Y2ggZW5kIGRlZmVy
cmluZyBnZXN0dXJlcyB3b24ndAorICAgICAgICBnZXQgcmVzZXQgcHJlbWF0dXJlbHkgZHVlIHRv
IHRoZSB3ZWIgdG91Y2ggZXZlbnRzIGdlc3R1cmUgcmVjb2duaXplciBlbmRpbmcgYmVmb3JlIHRo
ZSB0b3VjaCBlbmQgZGVmZXJyaW5nCisgICAgICAgIGdlc3R1cmUuCisKIDIwMjAtMTItMjggIFdl
bnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgW0NvbmN1cnJl
bnQgRGlzcGxheSBMaXN0c10gR1BVIHByb2Nlc3Mgc2hvdWxkIG5vdCBpbW1lZGlhdGVseSBzbGVl
cCBhZnRlciByZWFkaW5nIGFsbCBhdmFpbGFibGUgZGlzcGxheSBsaXN0IGl0ZW1zCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9QYWdlQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9QYWdlQ2xpZW50LmgKaW5kZXggNTE4Mzc3NGU3YjdkZDI0MTgzYjRmZDBkZDUy
ZTBlNDkyMDA3YzNjYy4uNjcyYjAxNWRjZjVhYWQ4Zjc4YWEzMzMwMjRiNjk5YTlhNDgyMDQwZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUGFnZUNsaWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1BhZ2VDbGllbnQuaApAQCAtMzM5LDcgKzMzOSw3IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZG9uZVdpdGhUb3VjaEV2ZW50KGNvbnN0IE5hdGl2ZVdl
YlRvdWNoRXZlbnQmLCBib29sIHdhc0V2ZW50SGFuZGxlZCkgPSAwOwogI2VuZGlmCiAjaWYgRU5B
QkxFKElPU19UT1VDSF9FVkVOVFMpCi0gICAgdmlydHVhbCB2b2lkIGRvbmVEZWZlcnJpbmdOYXRp
dmVHZXN0dXJlcyhib29sIHByZXZlbnROYXRpdmVHZXN0dXJlcykgPSAwOworICAgIHZpcnR1YWwg
dm9pZCBkb25lRGVmZXJyaW5nVG91Y2hTdGFydChib29sIHByZXZlbnROYXRpdmVHZXN0dXJlcykg
PSAwOwogI2VuZGlmCiAKICAgICB2aXJ0dWFsIFJlZlB0cjxXZWJQb3B1cE1lbnVQcm94eT4gY3Jl
YXRlUG9wdXBNZW51UHJveHkoV2ViUGFnZVByb3h5JikgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggNTcxNmQ2N2Q3MDBlMmQxYTk3YjMwNGEyOTQ5YWFi
Y2EyNDM1OGQ1Yy4uMTFiMmNlZTUwNTlhNzNlODY5YTMzZmRhZjA3NGVkOTBjN2IxOTIxMiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC0yOTAyLDcgKzI5MDIs
NyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6aGFuZGxlUHJldmVudGFibGVUb3VjaEV2ZW50KE5hdGl2
ZVdlYlRvdWNoRXZlbnQmIGV2ZW50KQogICAgIFRyYWNraW5nVHlwZSB0b3VjaEV2ZW50c1RyYWNr
aW5nVHlwZSA9IHRvdWNoRXZlbnRUcmFja2luZ1R5cGUoZXZlbnQpOwogICAgIGlmICh0b3VjaEV2
ZW50c1RyYWNraW5nVHlwZSA9PSBUcmFja2luZ1R5cGU6Ok5vdFRyYWNraW5nKSB7CiAgICAgICAg
IGlmICghaXNIYW5kbGluZ1ByZXZlbnRhYmxlVG91Y2hTdGFydCgpKQotICAgICAgICAgICAgcGFn
ZUNsaWVudCgpLmRvbmVEZWZlcnJpbmdOYXRpdmVHZXN0dXJlcyhmYWxzZSk7CisgICAgICAgICAg
ICBwYWdlQ2xpZW50KCkuZG9uZURlZmVycmluZ1RvdWNoU3RhcnQoZmFsc2UpOwogICAgICAgICBy
ZXR1cm47CiAgICAgfQogCkBAIC0yOTE3LDE2ICsyOTE3LDE3IEBAIHZvaWQgV2ViUGFnZVByb3h5
OjpoYW5kbGVQcmV2ZW50YWJsZVRvdWNoRXZlbnQoTmF0aXZlV2ViVG91Y2hFdmVudCYgZXZlbnQp
CiAgICAgICAgIGhhbmRsZVVucHJldmVudGFibGVUb3VjaEV2ZW50KGV2ZW50KTsKICAgICAgICAg
ZGlkUmVjZWl2ZUV2ZW50KGV2ZW50LnR5cGUoKSwgZmFsc2UpOwogICAgICAgICBpZiAoIWlzSGFu
ZGxpbmdQcmV2ZW50YWJsZVRvdWNoU3RhcnQoKSkKLSAgICAgICAgICAgIHBhZ2VDbGllbnQoKS5k
b25lRGVmZXJyaW5nTmF0aXZlR2VzdHVyZXMoZmFsc2UpOworICAgICAgICAgICAgcGFnZUNsaWVu
dCgpLmRvbmVEZWZlcnJpbmdUb3VjaFN0YXJ0KGZhbHNlKTsKICAgICAgICAgcmV0dXJuOwogICAg
IH0KIAogICAgIGlmIChldmVudC50eXBlKCkgPT0gV2ViRXZlbnQ6OlRvdWNoU3RhcnQpIHsKICAg
ICAgICAgKyttX2hhbmRsaW5nUHJldmVudGFibGVUb3VjaFN0YXJ0Q291bnQ7CiAgICAgICAgIEZ1
bmN0aW9uPHZvaWQoYm9vbCwgQ2FsbGJhY2tCYXNlOjpFcnJvcik+IGNvbXBsZXRpb25IYW5kbGVy
ID0gW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlzKSwgZXZlbnRdKGJvb2wgaGFu
ZGxlZCwgQ2FsbGJhY2tCYXNlOjpFcnJvciBlcnJvcikgewotICAgICAgICAgICAgQVNTRVJUKG1f
aGFuZGxpbmdQcmV2ZW50YWJsZVRvdWNoU3RhcnRDb3VudCk7Ci0gICAgICAgICAgICBpZiAobV9o
YW5kbGluZ1ByZXZlbnRhYmxlVG91Y2hTdGFydENvdW50KQotICAgICAgICAgICAgICAgIC0tbV9o
YW5kbGluZ1ByZXZlbnRhYmxlVG91Y2hTdGFydENvdW50OworICAgICAgICAgICAgYm9vbCBkaWRG
aW5pc2hEZWZlcnJpbmdUb3VjaFN0YXJ0ID0gZmFsc2U7CisgICAgICAgICAgICBBU1NFUlRfSU1Q
TElFUyhldmVudC50eXBlKCkgPT0gV2ViRXZlbnQ6OlRvdWNoU3RhcnQsIG1faGFuZGxpbmdQcmV2
ZW50YWJsZVRvdWNoU3RhcnRDb3VudCk7CisgICAgICAgICAgICBpZiAoZXZlbnQudHlwZSgpID09
IFdlYkV2ZW50OjpUb3VjaFN0YXJ0ICYmIG1faGFuZGxpbmdQcmV2ZW50YWJsZVRvdWNoU3RhcnRD
b3VudCkKKyAgICAgICAgICAgICAgICBkaWRGaW5pc2hEZWZlcnJpbmdUb3VjaFN0YXJ0ID0gIS0t
bV9oYW5kbGluZ1ByZXZlbnRhYmxlVG91Y2hTdGFydENvdW50OwogCiAgICAgICAgICAgICBib29s
IGhhbmRsZWRPckZhaWxlZFdpdGhFcnJvciA9IGhhbmRsZWQgfHwgZXJyb3IgIT0gQ2FsbGJhY2tC
YXNlOjpFcnJvcjo6Tm9uZSB8fCBtX2hhbmRsZWRTeW5jaHJvbm91c1RvdWNoRXZlbnRXaGlsZURp
c3BhdGNoaW5nUHJldmVudGFibGVUb3VjaFN0YXJ0OwogICAgICAgICAgICAgaWYgKCFpc0hhbmRs
aW5nUHJldmVudGFibGVUb3VjaFN0YXJ0KCkpCkBAIC0yOTM3LDggKzI5MzgsOSBAQCB2b2lkIFdl
YlBhZ2VQcm94eTo6aGFuZGxlUHJldmVudGFibGVUb3VjaEV2ZW50KE5hdGl2ZVdlYlRvdWNoRXZl
bnQmIGV2ZW50KQogCiAgICAgICAgICAgICBkaWRSZWNlaXZlRXZlbnQoZXZlbnQudHlwZSgpLCBo
YW5kbGVkT3JGYWlsZWRXaXRoRXJyb3IpOwogICAgICAgICAgICAgcGFnZUNsaWVudCgpLmRvbmVX
aXRoVG91Y2hFdmVudChldmVudCwgaGFuZGxlZE9yRmFpbGVkV2l0aEVycm9yKTsKLSAgICAgICAg
ICAgIGlmICghaXNIYW5kbGluZ1ByZXZlbnRhYmxlVG91Y2hTdGFydCgpKQotICAgICAgICAgICAg
ICAgIHBhZ2VDbGllbnQoKS5kb25lRGVmZXJyaW5nTmF0aXZlR2VzdHVyZXMoaGFuZGxlZE9yRmFp
bGVkV2l0aEVycm9yKTsKKworICAgICAgICAgICAgaWYgKGRpZEZpbmlzaERlZmVycmluZ1RvdWNo
U3RhcnQpCisgICAgICAgICAgICAgICAgcGFnZUNsaWVudCgpLmRvbmVEZWZlcnJpbmdUb3VjaFN0
YXJ0KGhhbmRsZWRPckZhaWxlZFdpdGhFcnJvcik7CiAgICAgICAgIH07CiAKICAgICAgICAgYXV0
byBjYWxsYmFja0lEID0gbV9jYWxsYmFja3MucHV0KFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIp
LCBtX3Byb2Nlc3MtPnRocm90dGxlcigpLmJhY2tncm91bmRBY3Rpdml0eSgiV2ViUGFnZVByb3h5
OjpoYW5kbGVQcmV2ZW50YWJsZVRvdWNoRXZlbnQiX3MpKTsKQEAgLTI5NTUsNyArMjk1Nyw3IEBA
IHZvaWQgV2ViUGFnZVByb3h5OjpoYW5kbGVQcmV2ZW50YWJsZVRvdWNoRXZlbnQoTmF0aXZlV2Vi
VG91Y2hFdmVudCYgZXZlbnQpCiAgICAgZGlkUmVjZWl2ZUV2ZW50KGV2ZW50LnR5cGUoKSwgaGFu
ZGxlZCk7CiAgICAgcGFnZUNsaWVudCgpLmRvbmVXaXRoVG91Y2hFdmVudChldmVudCwgaGFuZGxl
ZCk7CiAgICAgaWYgKCFpc0hhbmRsaW5nUHJldmVudGFibGVUb3VjaFN0YXJ0KCkpCi0gICAgICAg
IHBhZ2VDbGllbnQoKS5kb25lRGVmZXJyaW5nTmF0aXZlR2VzdHVyZXMoaGFuZGxlZCk7CisgICAg
ICAgIHBhZ2VDbGllbnQoKS5kb25lRGVmZXJyaW5nVG91Y2hTdGFydChoYW5kbGVkKTsKICAgICBl
bHNlIGlmIChoYW5kbGVkKQogICAgICAgICBtX2hhbmRsZWRTeW5jaHJvbm91c1RvdWNoRXZlbnRX
aGlsZURpc3BhdGNoaW5nUHJldmVudGFibGVUb3VjaFN0YXJ0ID0gdHJ1ZTsKICAgICBtX3Byb2Nl
c3MtPnN0b3BSZXNwb25zaXZlbmVzc1RpbWVyKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9pb3MvUGFnZUNsaWVudEltcGxJT1MuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5oCmluZGV4IDhmZDhkYzM1OGQzMzE5MWVjMzY2MWNm
MmE4ZmU0Y2Q3NGI3NzE1ZTQuLjhhYmIxNjg3OTUxNWFlN2U0NDk1NTM1YjMzOTNlZmIzYjZmYTcw
MGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1w
bElPUy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElP
Uy5oCkBAIC0xMTIsNyArMTEyLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGRvbmVXaXRoVG91Y2hF
dmVudChjb25zdCBOYXRpdmVXZWJUb3VjaEV2ZW50JiwgYm9vbCB3YXNFdmVudEhhbmRsZWQpIG92
ZXJyaWRlOwogI2VuZGlmCiAjaWYgRU5BQkxFKElPU19UT1VDSF9FVkVOVFMpCi0gICAgdm9pZCBk
b25lRGVmZXJyaW5nTmF0aXZlR2VzdHVyZXMoYm9vbCBwcmV2ZW50TmF0aXZlR2VzdHVyZXMpIG92
ZXJyaWRlOworICAgIHZvaWQgZG9uZURlZmVycmluZ1RvdWNoU3RhcnQoYm9vbCBwcmV2ZW50TmF0
aXZlR2VzdHVyZXMpIG92ZXJyaWRlOwogI2VuZGlmCiAgICAgUmVmUHRyPFdlYlBvcHVwTWVudVBy
b3h5PiBjcmVhdGVQb3B1cE1lbnVQcm94eShXZWJQYWdlUHJveHkmKSBvdmVycmlkZTsKICAgICBS
ZWY8V2ViQ29yZTo6VmFsaWRhdGlvbkJ1YmJsZT4gY3JlYXRlVmFsaWRhdGlvbkJ1YmJsZShjb25z
dCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFdlYkNvcmU6OlZhbGlkYXRpb25CdWJibGU6OlNldHRp
bmdzJikgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUGFn
ZUNsaWVudEltcGxJT1MubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvUGFnZUNsaWVu
dEltcGxJT1MubW0KaW5kZXggNDFiYzU3NGEyY2Y1MTE3YjQ0NTNkMmVlZmY5ZjEzNWY0MGM2YTdm
Ny4uOWM1MzllZWY4NDNiMjQ4YjI0ZDg5MjdhYWZhM2NhZmQ3OWJiMzRhNCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1BhZ2VDbGllbnRJbXBsSU9TLm1tCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9QYWdlQ2xpZW50SW1wbElPUy5tbQpAQCAtNDQ3LDkg
KzQ0Nyw5IEBAIHZvaWQgUGFnZUNsaWVudEltcGw6OmRvbmVXaXRoVG91Y2hFdmVudChjb25zdCBO
YXRpdmVXZWJUb3VjaEV2ZW50JiBuYXRpdmVXZWJUb3VjCiAKICNpZiBFTkFCTEUoSU9TX1RPVUNI
X0VWRU5UUykKIAotdm9pZCBQYWdlQ2xpZW50SW1wbDo6ZG9uZURlZmVycmluZ05hdGl2ZUdlc3R1
cmVzKGJvb2wgcHJldmVudE5hdGl2ZUdlc3R1cmVzKQordm9pZCBQYWdlQ2xpZW50SW1wbDo6ZG9u
ZURlZmVycmluZ1RvdWNoU3RhcnQoYm9vbCBwcmV2ZW50TmF0aXZlR2VzdHVyZXMpCiB7Ci0gICAg
W21fY29udGVudFZpZXcgX2RvbmVEZWZlcnJpbmdOYXRpdmVHZXN0dXJlczpwcmV2ZW50TmF0aXZl
R2VzdHVyZXNdOworICAgIFttX2NvbnRlbnRWaWV3IF9kb25lRGVmZXJyaW5nVG91Y2hTdGFydDpw
cmV2ZW50TmF0aXZlR2VzdHVyZXNdOwogfQogCiAjZW5kaWYgLy8gRU5BQkxFKElPU19UT1VDSF9F
VkVOVFMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50
Vmlld0ludGVyYWN0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50
Vmlld0ludGVyYWN0aW9uLmgKaW5kZXggNDMwMWEwOTE5ZTg4NmUyMjAwMmVmYzhhNDBmYzU1Yjg4
MWQ3MWFmOC4uNDE0NmE5ZmY5MzlhMzA2YmIxNmNlZDZhZTlhOGU2M2RhNDBmMDBlMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlv
bi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJh
Y3Rpb24uaApAQCAtMjQyLDkgKzI0Miw5IEBAIHByaXZhdGU6CiAKIEBpbnRlcmZhY2UgV0tDb250
ZW50VmlldyAoKSB7CiAjaWYgRU5BQkxFKElPU19UT1VDSF9FVkVOVFMpCi0gICAgUmV0YWluUHRy
PFdLRGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXI+IF9kZWZlcnJpbmdHZXN0dXJlUmVjb2duaXpl
ckZvckltbWVkaWF0ZWx5UmVzZXR0YWJsZUdlc3R1cmVzOwotICAgIFJldGFpblB0cjxXS0RlZmVy
cmluZ0dlc3R1cmVSZWNvZ25pemVyPiBfZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJGb3JEZWxh
eWVkUmVzZXR0YWJsZUdlc3R1cmVzOwotICAgIFJldGFpblB0cjxXS0RlZmVycmluZ0dlc3R1cmVS
ZWNvZ25pemVyPiBfZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJGb3JTeW50aGV0aWNUYXBHZXN0
dXJlczsKKyAgICBSZXRhaW5QdHI8V0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplcj4gX3RvdWNo
U3RhcnREZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplckZvckltbWVkaWF0ZWx5UmVzZXR0YWJsZUdl
c3R1cmVzOworICAgIFJldGFpblB0cjxXS0RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyPiBfdG91
Y2hTdGFydERlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyRm9yRGVsYXllZFJlc2V0dGFibGVHZXN0
dXJlczsKKyAgICBSZXRhaW5QdHI8V0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplcj4gX3RvdWNo
U3RhcnREZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplckZvclN5bnRoZXRpY1RhcEdlc3R1cmVzOwog
I2VuZGlmCiAgICAgUmV0YWluUHRyPFVJV2ViVG91Y2hFdmVudHNHZXN0dXJlUmVjb2duaXplcj4g
X3RvdWNoRXZlbnRHZXN0dXJlUmVjb2duaXplcjsKIApAQCAtNTM5LDcgKzUzOSw3IEBAIEZPUl9F
QUNIX1BSSVZBVEVfV0tDT05URU5UVklFV19BQ1RJT04oREVDTEFSRV9XS0NPTlRFTlRWSUVXX0FD
VElPTl9GT1JfV0VCX1ZJRVcpCiAtICh2b2lkKV93ZWJUb3VjaEV2ZW50Oihjb25zdCBXZWJLaXQ6
Ok5hdGl2ZVdlYlRvdWNoRXZlbnQmKXRvdWNoRXZlbnQgcHJldmVudHNOYXRpdmVHZXN0dXJlczoo
Qk9PTClwcmV2ZW50c0RlZmF1bHQ7CiAjZW5kaWYKICNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5U
UykKLS0gKHZvaWQpX2RvbmVEZWZlcnJpbmdOYXRpdmVHZXN0dXJlczooQk9PTClwcmV2ZW50TmF0
aXZlR2VzdHVyZXM7CistICh2b2lkKV9kb25lRGVmZXJyaW5nVG91Y2hTdGFydDooQk9PTClwcmV2
ZW50TmF0aXZlR2VzdHVyZXM7CiAjZW5kaWYKIC0gKHZvaWQpX2NvbW1pdFBvdGVudGlhbFRhcEZh
aWxlZDsKIC0gKHZvaWQpX2RpZE5vdEhhbmRsZVRhcEFzQ2xpY2s6KGNvbnN0IFdlYkNvcmU6Oklu
dFBvaW50Jilwb2ludDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9X
S0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3Mv
V0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCmluZGV4IDEzNjE4MmRiNDdkNDNlNjk5MDJlZjgz
ZjE4Y2U2ZGZkYjMzOGIzY2UuLjFiMDk5ZWFjNzI2OTcyMzA2MTcwOTRkZTJiYmU5MWNjNzJjZTAw
ZGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3
SW50ZXJhY3Rpb24ubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVu
dFZpZXdJbnRlcmFjdGlvbi5tbQpAQCAtNzY0LDIwICs3NjQsMjAgQEAgLSAodm9pZClzZXRVcElu
dGVyYWN0aW9uCiAgICAgW3NlbGYgYWRkR2VzdHVyZVJlY29nbml6ZXI6X3RvdWNoQWN0aW9uRG93
blN3aXBlR2VzdHVyZVJlY29nbml6ZXIuZ2V0KCldOwogCiAjaWYgRU5BQkxFKElPU19UT1VDSF9F
VkVOVFMpCi0gICAgX2RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyRm9ySW1tZWRpYXRlbHlSZXNl
dHRhYmxlR2VzdHVyZXMgPSBhZG9wdE5TKFtbV0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciBh
bGxvY10gaW5pdFdpdGhEZWZlcnJpbmdHZXN0dXJlRGVsZWdhdGU6c2VsZl0pOwotICAgIFtfZGVm
ZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJGb3JJbW1lZGlhdGVseVJlc2V0dGFibGVHZXN0dXJlcyBz
ZXROYW1lOkAiVG91Y2ggZXZlbnQgZGVmZXJyZXIgKGltbWVkaWF0ZSByZXNldCkiXTsKKyAgICBf
dG91Y2hTdGFydERlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyRm9ySW1tZWRpYXRlbHlSZXNldHRh
YmxlR2VzdHVyZXMgPSBhZG9wdE5TKFtbV0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciBhbGxv
Y10gaW5pdFdpdGhEZWZlcnJpbmdHZXN0dXJlRGVsZWdhdGU6c2VsZl0pOworICAgIFtfdG91Y2hT
dGFydERlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyRm9ySW1tZWRpYXRlbHlSZXNldHRhYmxlR2Vz
dHVyZXMgc2V0TmFtZTpAIlRvdWNoIHN0YXJ0IGRlZmVycmVyIChpbW1lZGlhdGUgcmVzZXQpIl07
CiAKLSAgICBfZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJGb3JEZWxheWVkUmVzZXR0YWJsZUdl
c3R1cmVzID0gYWRvcHROUyhbW1dLRGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIgYWxsb2NdIGlu
aXRXaXRoRGVmZXJyaW5nR2VzdHVyZURlbGVnYXRlOnNlbGZdKTsKLSAgICBbX2RlZmVycmluZ0dl
c3R1cmVSZWNvZ25pemVyRm9yRGVsYXllZFJlc2V0dGFibGVHZXN0dXJlcyBzZXROYW1lOkAiVG91
Y2ggZXZlbnQgZGVmZXJyZXIgKGRlbGF5ZWQgcmVzZXQpIl07CisgICAgX3RvdWNoU3RhcnREZWZl
cnJpbmdHZXN0dXJlUmVjb2duaXplckZvckRlbGF5ZWRSZXNldHRhYmxlR2VzdHVyZXMgPSBhZG9w
dE5TKFtbV0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciBhbGxvY10gaW5pdFdpdGhEZWZlcnJp
bmdHZXN0dXJlRGVsZWdhdGU6c2VsZl0pOworICAgIFtfdG91Y2hTdGFydERlZmVycmluZ0dlc3R1
cmVSZWNvZ25pemVyRm9yRGVsYXllZFJlc2V0dGFibGVHZXN0dXJlcyBzZXROYW1lOkAiVG91Y2gg
c3RhcnQgZGVmZXJyZXIgKGRlbGF5ZWQgcmVzZXQpIl07CiAKLSAgICBfZGVmZXJyaW5nR2VzdHVy
ZVJlY29nbml6ZXJGb3JTeW50aGV0aWNUYXBHZXN0dXJlcyA9IGFkb3B0TlMoW1tXS0RlZmVycmlu
Z0dlc3R1cmVSZWNvZ25pemVyIGFsbG9jXSBpbml0V2l0aERlZmVycmluZ0dlc3R1cmVEZWxlZ2F0
ZTpzZWxmXSk7Ci0gICAgW19kZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplckZvclN5bnRoZXRpY1Rh
cEdlc3R1cmVzIHNldE5hbWU6QCJUb3VjaCBldmVudCBkZWZlcnJlciAoc3ludGhldGljIHRhcCki
XTsKKyAgICBfdG91Y2hTdGFydERlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyRm9yU3ludGhldGlj
VGFwR2VzdHVyZXMgPSBhZG9wdE5TKFtbV0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciBhbGxv
Y10gaW5pdFdpdGhEZWZlcnJpbmdHZXN0dXJlRGVsZWdhdGU6c2VsZl0pOworICAgIFtfdG91Y2hT
dGFydERlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyRm9yU3ludGhldGljVGFwR2VzdHVyZXMgc2V0
TmFtZTpAIlRvdWNoIHN0YXJ0IGRlZmVycmVyIChzeW50aGV0aWMgdGFwKSJdOwogCi0gICAgZm9y
IChXS0RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyICpnZXN0dXJlIGluIHNlbGYuX2RlZmVycmlu
Z0dlc3R1cmVSZWNvZ25pemVycykgeworICAgIGZvciAoV0tEZWZlcnJpbmdHZXN0dXJlUmVjb2du
aXplciAqZ2VzdHVyZSBpbiBzZWxmLl90b3VjaFN0YXJ0RGVmZXJyaW5nR2VzdHVyZXMpIHsKICAg
ICAgICAgZ2VzdHVyZS5kZWxlZ2F0ZSA9IHNlbGY7CiAgICAgICAgIFtzZWxmIGFkZEdlc3R1cmVS
ZWNvZ25pemVyOmdlc3R1cmVdOwogICAgIH0KLSNlbmRpZgorI2VuZGlmIC8vIEVOQUJMRShJT1Nf
VE9VQ0hfRVZFTlRTKQogCiAgICAgX3RvdWNoRXZlbnRHZXN0dXJlUmVjb2duaXplciA9IGFkb3B0
TlMoW1tVSVdlYlRvdWNoRXZlbnRzR2VzdHVyZVJlY29nbml6ZXIgYWxsb2NdIGluaXRXaXRoVGFy
Z2V0OnNlbGYgYWN0aW9uOkBzZWxlY3Rvcihfd2ViVG91Y2hFdmVudHNSZWNvZ25pemVkOikgdG91
Y2hEZWxlZ2F0ZTpzZWxmXSk7CiAgICAgW190b3VjaEV2ZW50R2VzdHVyZVJlY29nbml6ZXIgc2V0
RGVsZWdhdGU6c2VsZl07CkBAIC05NTMsNyArOTUzLDcgQEAgLSAodm9pZCljbGVhblVwSW50ZXJh
Y3Rpb24KICAgICBbc2VsZiByZW1vdmVHZXN0dXJlUmVjb2duaXplcjpfdG91Y2hFdmVudEdlc3R1
cmVSZWNvZ25pemVyLmdldCgpXTsKIAogI2lmIEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQotICAg
IGZvciAoV0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciAqZ2VzdHVyZSBpbiBzZWxmLl9kZWZl
cnJpbmdHZXN0dXJlUmVjb2duaXplcnMpIHsKKyAgICBmb3IgKFdLRGVmZXJyaW5nR2VzdHVyZVJl
Y29nbml6ZXIgKmdlc3R1cmUgaW4gc2VsZi5fdG91Y2hTdGFydERlZmVycmluZ0dlc3R1cmVzKSB7
CiAgICAgICAgIGdlc3R1cmUuZGVsZWdhdGUgPSBuaWw7CiAgICAgICAgIFtzZWxmIHJlbW92ZUdl
c3R1cmVSZWNvZ25pemVyOmdlc3R1cmVdOwogICAgIH0KQEAgLTEwODQsNyArMTA4NCw3IEBAIC0g
KHZvaWQpX2NhbmNlbFBlbmRpbmdLZXlFdmVudEhhbmRsZXIKIC0gKHZvaWQpX3JlbW92ZURlZmF1
bHRHZXN0dXJlUmVjb2duaXplcnMKIHsKICNpZiBFTkFCTEUoSU9TX1RPVUNIX0VWRU5UUykKLSAg
ICBmb3IgKFdLRGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIgKmdlc3R1cmUgaW4gc2VsZi5fZGVm
ZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJzKQorICAgIGZvciAoV0tEZWZlcnJpbmdHZXN0dXJlUmVj
b2duaXplciAqZ2VzdHVyZSBpbiBzZWxmLl90b3VjaFN0YXJ0RGVmZXJyaW5nR2VzdHVyZXMpCiAg
ICAgICAgIFtzZWxmIHJlbW92ZUdlc3R1cmVSZWNvZ25pemVyOmdlc3R1cmVdOwogI2VuZGlmCiAg
ICAgW3NlbGYgcmVtb3ZlR2VzdHVyZVJlY29nbml6ZXI6X3RvdWNoRXZlbnRHZXN0dXJlUmVjb2du
aXplci5nZXQoKV07CkBAIC0xMTExLDcgKzExMTEsNyBAQCAtICh2b2lkKV9yZW1vdmVEZWZhdWx0
R2VzdHVyZVJlY29nbml6ZXJzCiAtICh2b2lkKV9hZGREZWZhdWx0R2VzdHVyZVJlY29nbml6ZXJz
CiB7CiAjaWYgRU5BQkxFKElPU19UT1VDSF9FVkVOVFMpCi0gICAgZm9yIChXS0RlZmVycmluZ0dl
c3R1cmVSZWNvZ25pemVyICpnZXN0dXJlIGluIHNlbGYuX2RlZmVycmluZ0dlc3R1cmVSZWNvZ25p
emVycykKKyAgICBmb3IgKFdLRGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIgKmdlc3R1cmUgaW4g
c2VsZi5fdG91Y2hTdGFydERlZmVycmluZ0dlc3R1cmVzKQogICAgICAgICBbc2VsZiBhZGRHZXN0
dXJlUmVjb2duaXplcjpnZXN0dXJlXTsKICNlbmRpZgogICAgIFtzZWxmIGFkZEdlc3R1cmVSZWNv
Z25pemVyOl90b3VjaEV2ZW50R2VzdHVyZVJlY29nbml6ZXIuZ2V0KCldOwpAQCAtMTU0OCw4ICsx
NTQ4LDE3IEBAIC0gKHZvaWQpX3dlYlRvdWNoRXZlbnRzUmVjb2duaXplZDooVUlXZWJUb3VjaEV2
ZW50c0dlc3R1cmVSZWNvZ25pemVyICopZ2VzdHVyZVJlCiAKICAgICAgICAgaWYgKG5hdGl2ZVdl
YlRvdWNoRXZlbnQuaXNQb3RlbnRpYWxUYXAoKSAmJiBzZWxmLmhhc0hpZGRlbkNvbnRlbnRFZGl0
YWJsZSAmJiBzZWxmLl9oYXNGb2N1c2VkRWxlbWVudCAmJiAhc2VsZi53aW5kb3cua2V5V2luZG93
KQogICAgICAgICAgICAgW3NlbGYud2luZG93IG1ha2VLZXlXaW5kb3ddOworCisjaWYgRU5BQkxF
KElPU19UT1VDSF9FVkVOVFMpCisgICAgICAgIGlmICghX3BhZ2UtPmlzSGFuZGxpbmdQcmV2ZW50
YWJsZVRvdWNoU3RhcnQoKSkgeworICAgICAgICAgICAgZm9yIChXS0RlZmVycmluZ0dlc3R1cmVS
ZWNvZ25pemVyICpnZXN0dXJlIGluIHNlbGYuX3RvdWNoU3RhcnREZWZlcnJpbmdHZXN0dXJlcykg
eworICAgICAgICAgICAgICAgIGlmIChnZXN0dXJlLnN0YXRlID09IFVJR2VzdHVyZVJlY29nbml6
ZXJTdGF0ZVBvc3NpYmxlKQorICAgICAgICAgICAgICAgICAgICBnZXN0dXJlLnN0YXRlID0gVUlH
ZXN0dXJlUmVjb2duaXplclN0YXRlRmFpbGVkOworICAgICAgICAgICAgfQorICAgICAgICB9Cisj
ZW5kaWYgLy8gRU5BQkxFKElPU19UT1VDSF9FVkVOVFMpCiAgICAgfQotI2VuZGlmCisjZW5kaWYg
Ly8gRU5BQkxFKFRPVUNIX0VWRU5UUykKIH0KIAogI2lmIEVOQUJMRShUT1VDSF9FVkVOVFMpCkBA
IC0xNzI3LDcgKzE3MzYsNyBAQCAtICh2b2lkKV93ZWJUb3VjaEV2ZW50Oihjb25zdCBXZWJLaXQ6
Ok5hdGl2ZVdlYlRvdWNoRXZlbnQmKXRvdWNoRXZlbnQgcHJldmVudHNOYQogCiAjaWYgRU5BQkxF
KElPU19UT1VDSF9FVkVOVFMpCiAKLS0gKE5TQXJyYXk8V0tEZWZlcnJpbmdHZXN0dXJlUmVjb2du
aXplciAqPiAqKV9kZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplcnMKKy0gKE5TQXJyYXk8V0tEZWZl
cnJpbmdHZXN0dXJlUmVjb2duaXplciAqPiAqKV90b3VjaFN0YXJ0RGVmZXJyaW5nR2VzdHVyZXMK
IHsKICAgICBXS0RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyICpyZWNvZ25pemVyc1szXTsKICAg
ICBOU1VJbnRlZ2VyIGNvdW50ID0gMDsKQEAgLTE3MzUsMTUgKzE3NDQsMTUgQEAgLSAoTlNBcnJh
eTxXS0RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyICo+ICopX2RlZmVycmluZ0dlc3R1cmVSZWNv
Z25pemVycwogICAgICAgICBpZiAocmVjb2duaXplcikKICAgICAgICAgICAgIHJlY29nbml6ZXJz
W2NvdW50KytdID0gcmVjb2duaXplci5nZXQoKTsKICAgICB9OwotICAgIGFkZChfZGVmZXJyaW5n
R2VzdHVyZVJlY29nbml6ZXJGb3JJbW1lZGlhdGVseVJlc2V0dGFibGVHZXN0dXJlcyk7Ci0gICAg
YWRkKF9kZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplckZvckRlbGF5ZWRSZXNldHRhYmxlR2VzdHVy
ZXMpOwotICAgIGFkZChfZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJGb3JTeW50aGV0aWNUYXBH
ZXN0dXJlcyk7CisgICAgYWRkKF90b3VjaFN0YXJ0RGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJG
b3JJbW1lZGlhdGVseVJlc2V0dGFibGVHZXN0dXJlcyk7CisgICAgYWRkKF90b3VjaFN0YXJ0RGVm
ZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJGb3JEZWxheWVkUmVzZXR0YWJsZUdlc3R1cmVzKTsKKyAg
ICBhZGQoX3RvdWNoU3RhcnREZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplckZvclN5bnRoZXRpY1Rh
cEdlc3R1cmVzKTsKICAgICByZXR1cm4gW05TQXJyYXkgYXJyYXlXaXRoT2JqZWN0czpyZWNvZ25p
emVycyBjb3VudDpjb3VudF07CiB9CiAKLS0gKHZvaWQpX2RvbmVEZWZlcnJpbmdOYXRpdmVHZXN0
dXJlczooQk9PTClwcmV2ZW50TmF0aXZlR2VzdHVyZXMKKy0gKHZvaWQpX2RvbmVEZWZlcnJpbmdU
b3VjaFN0YXJ0OihCT09MKXByZXZlbnROYXRpdmVHZXN0dXJlcwogewotICAgIGZvciAoV0tEZWZl
cnJpbmdHZXN0dXJlUmVjb2duaXplciAqZ2VzdHVyZSBpbiBzZWxmLl9kZWZlcnJpbmdHZXN0dXJl
UmVjb2duaXplcnMpCisgICAgZm9yIChXS0RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyICpnZXN0
dXJlIGluIHNlbGYuX3RvdWNoU3RhcnREZWZlcnJpbmdHZXN0dXJlcykKICAgICAgICAgW2dlc3R1
cmUgc2V0RGVmYXVsdFByZXZlbnRlZDpwcmV2ZW50TmF0aXZlR2VzdHVyZXNdOwogfQogCkBAIC0y
MTI4LDcgKzIxMzcsNyBAQCBzdGF0aWMgQ2xhc3MgdGFwQW5kQUhhbGZSZWNvZ25pemVyQ2xhc3Mo
KQogLSAoQk9PTClnZXN0dXJlUmVjb2duaXplcjooVUlHZXN0dXJlUmVjb2duaXplciAqKWdlc3R1
cmVSZWNvZ25pemVyIHNob3VsZFJlY29nbml6ZVNpbXVsdGFuZW91c2x5V2l0aEdlc3R1cmVSZWNv
Z25pemVyOihVSUdlc3R1cmVSZWNvZ25pemVyKilvdGhlckdlc3R1cmVSZWNvZ25pemVyCiB7CiAj
aWYgRU5BQkxFKElPU19UT1VDSF9FVkVOVFMpCi0gICAgZm9yIChXS0RlZmVycmluZ0dlc3R1cmVS
ZWNvZ25pemVyICpnZXN0dXJlIGluIHNlbGYuX2RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVycykg
eworICAgIGZvciAoV0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciAqZ2VzdHVyZSBpbiBzZWxm
Ll90b3VjaFN0YXJ0RGVmZXJyaW5nR2VzdHVyZXMpIHsKICAgICAgICAgaWYgKGlzU2FtZVBhaXIo
Z2VzdHVyZVJlY29nbml6ZXIsIG90aGVyR2VzdHVyZVJlY29nbml6ZXIsIF90b3VjaEV2ZW50R2Vz
dHVyZVJlY29nbml6ZXIuZ2V0KCksIGdlc3R1cmUpKQogICAgICAgICAgICAgcmV0dXJuIFlFUzsK
ICAgICB9CkBAIC03MzA3LDExICs3MzE2LDYgQEAgLSAoQk9PTClkZWZlcnJpbmdHZXN0dXJlUmVj
b2duaXplcjooV0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciAqKWRlZmVycmluZ0dlc3QKICAg
ICByZXR1cm4gIVtzZWxmIGdlc3R1cmVSZWNvZ25pemVyOmRlZmVycmluZ0dlc3R1cmVSZWNvZ25p
emVyIGlzSW50ZXJydXB0aW5nTW9tZW50dW1TY3JvbGxpbmdXaXRoRXZlbnQ6ZXZlbnRdOwogfQog
Ci0tIChCT09MKWRlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyOihXS0RlZmVycmluZ0dlc3R1cmVS
ZWNvZ25pemVyICopZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIgc2hvdWxkRGVmZXJHZXN0dXJl
c0FmdGVyRW5kaW5nVG91Y2hlc1dpdGhFdmVudDooVUlFdmVudCAqKWV2ZW50Ci17Ci0gICAgcmV0
dXJuIF9wYWdlLT5pc0hhbmRsaW5nUHJldmVudGFibGVUb3VjaFN0YXJ0KCk7Ci19Ci0KIC0gKEJP
T0wpZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXI6KFdLRGVmZXJyaW5nR2VzdHVyZVJlY29nbml6
ZXIgKilkZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciBzaG91bGREZWZlck90aGVyR2VzdHVyZVJl
Y29nbml6ZXI6KFVJR2VzdHVyZVJlY29nbml6ZXIgKilnZXN0dXJlUmVjb2duaXplcgogewogI2lm
IEVOQUJMRShJT1NfVE9VQ0hfRVZFTlRTKQpAQCAtNzM2MywxMyArNzM2NywxMyBAQCAtIChCT09M
KWRlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyOihXS0RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVy
ICopZGVmZXJyaW5nR2VzdAogICAgICAgICByZXR1cm4gTk87CiAgICAgfTsKIAotICAgIGlmIChn
ZXN0dXJlUmVjb2duaXplciA9PSBfZG91YmxlVGFwR2VzdHVyZVJlY29nbml6ZXIgfHwgZ2VzdHVy
ZVJlY29nbml6ZXIgPT0gX3NpbmdsZVRhcEdlc3R1cmVSZWNvZ25pemVyKQotICAgICAgICByZXR1
cm4gZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIgPT0gX2RlZmVycmluZ0dlc3R1cmVSZWNvZ25p
emVyRm9yU3ludGhldGljVGFwR2VzdHVyZXM7CisgICAgaWYgKFtnZXN0dXJlUmVjb2duaXplciBp
c0tpbmRPZkNsYXNzOldLU3ludGhldGljVGFwR2VzdHVyZVJlY29nbml6ZXIuY2xhc3NdKQorICAg
ICAgICByZXR1cm4gZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIgPT0gX3RvdWNoU3RhcnREZWZl
cnJpbmdHZXN0dXJlUmVjb2duaXplckZvclN5bnRoZXRpY1RhcEdlc3R1cmVzOwogCiAgICAgaWYg
KG1heURlbGF5UmVzZXRPZkNvbnRhaW5pbmdTdWJncmFwaChnZXN0dXJlUmVjb2duaXplcikpCi0g
ICAgICAgIHJldHVybiBkZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciA9PSBfZGVmZXJyaW5nR2Vz
dHVyZVJlY29nbml6ZXJGb3JEZWxheWVkUmVzZXR0YWJsZUdlc3R1cmVzOworICAgICAgICByZXR1
cm4gZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIgPT0gX3RvdWNoU3RhcnREZWZlcnJpbmdHZXN0
dXJlUmVjb2duaXplckZvckRlbGF5ZWRSZXNldHRhYmxlR2VzdHVyZXM7CiAKLSAgICByZXR1cm4g
ZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIgPT0gX2RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVy
Rm9ySW1tZWRpYXRlbHlSZXNldHRhYmxlR2VzdHVyZXM7CisgICAgcmV0dXJuIGRlZmVycmluZ0dl
c3R1cmVSZWNvZ25pemVyID09IF90b3VjaFN0YXJ0RGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXJG
b3JJbW1lZGlhdGVseVJlc2V0dGFibGVHZXN0dXJlczsKICNlbHNlCiAgICAgVU5VU0VEX1BBUkFN
KGRlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyKTsKICAgICBVTlVTRURfUEFSQU0oZ2VzdHVyZVJl
Y29nbml6ZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLRGVm
ZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9X
S0RlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyLmgKaW5kZXggNTkxMTA5ZTNlNGYzMWViM2UyZGYx
YTFiYTUwNGIxN2U4Y2I2OGRmZS4uZjRjN2ZiM2JmN2QyZDIwODA0Y2NmZjk2N2Y1ZmVjZjE1ZDcw
MWE0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLRGVmZXJyaW5n
R2VzdHVyZVJlY29nbml6ZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tE
ZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplci5oCkBAIC0zMCw3ICszMCw2IEBACiBAY2xhc3MgV0tE
ZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplcjsKIAogQHByb3RvY29sIFdLRGVmZXJyaW5nR2VzdHVy
ZVJlY29nbml6ZXJEZWxlZ2F0ZQotLSAoQk9PTClkZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplcjoo
V0tEZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciAqKWRlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVy
IHNob3VsZERlZmVyR2VzdHVyZXNBZnRlckVuZGluZ1RvdWNoZXNXaXRoRXZlbnQ6KFVJRXZlbnQg
KilldmVudDsKIC0gKEJPT0wpZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXI6KFdLRGVmZXJyaW5n
R2VzdHVyZVJlY29nbml6ZXIgKilkZWZlcnJpbmdHZXN0dXJlUmVjb2duaXplciBzaG91bGREZWZl
ckdlc3R1cmVzQWZ0ZXJCZWdpbm5pbmdUb3VjaGVzV2l0aEV2ZW50OihVSUV2ZW50ICopZXZlbnQ7
CiAtIChCT09MKWRlZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyOihXS0RlZmVycmluZ0dlc3R1cmVS
ZWNvZ25pemVyICopZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXIgc2hvdWxkRGVmZXJPdGhlckdl
c3R1cmVSZWNvZ25pemVyOihVSUdlc3R1cmVSZWNvZ25pemVyICopZ2VzdHVyZVJlY29nbml6ZXI7
CiBAZW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tEZWZlcnJp
bmdHZXN0dXJlUmVjb2duaXplci5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0Rl
ZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyLm1tCmluZGV4IDEwYWM1YTc5Nzk4ODY5NDhjOTI2NTlj
YzgyNTQ1YjZjZDczY2YzMzguLjY4ZWQ3Mjc3MDRiN2ZkNjY1ZGIyNTI1NjY2ODdhOTg3ZjZjNGY1
MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0RlZmVycmluZ0dl
c3R1cmVSZWNvZ25pemVyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0Rl
ZmVycmluZ0dlc3R1cmVSZWNvZ25pemVyLm1tCkBAIC01NSwxOSArNTUsNiBAQCAtICh2b2lkKXRv
dWNoZXNCZWdhbjooTlNTZXQ8VUlUb3VjaCAqPiAqKXRvdWNoZXMgd2l0aEV2ZW50OihVSUV2ZW50
ICopZXZlbnQKICAgICBzZWxmLnN0YXRlID0gVUlHZXN0dXJlUmVjb2duaXplclN0YXRlRmFpbGVk
OwogfQogCi0tICh2b2lkKXRvdWNoZXNFbmRlZDooTlNTZXQ8VUlUb3VjaCAqPiAqKXRvdWNoZXMg
d2l0aEV2ZW50OihVSUV2ZW50ICopZXZlbnQKLXsKLSAgICBbc3VwZXIgdG91Y2hlc0VuZGVkOnRv
dWNoZXMgd2l0aEV2ZW50OmV2ZW50XTsKLQotICAgIGlmIChzZWxmLnN0YXRlICE9IFVJR2VzdHVy
ZVJlY29nbml6ZXJTdGF0ZVBvc3NpYmxlKQotICAgICAgICByZXR1cm47Ci0KLSAgICBpZiAoW19k
ZWZlcnJpbmdHZXN0dXJlRGVsZWdhdGUgZGVmZXJyaW5nR2VzdHVyZVJlY29nbml6ZXI6c2VsZiBz
aG91bGREZWZlckdlc3R1cmVzQWZ0ZXJFbmRpbmdUb3VjaGVzV2l0aEV2ZW50OmV2ZW50XSkKLSAg
ICAgICAgcmV0dXJuOwotCi0gICAgc2VsZi5zdGF0ZSA9IFVJR2VzdHVyZVJlY29nbml6ZXJTdGF0
ZUZhaWxlZDsKLX0KLQogLSAodm9pZCl0b3VjaGVzQ2FuY2VsbGVkOihOU1NldDxVSVRvdWNoICo+
ICopdG91Y2hlcyB3aXRoRXZlbnQ6KFVJRXZlbnQgKilldmVudAogewogICAgIFtzdXBlciB0b3Vj
aGVzQ2FuY2VsbGVkOnRvdWNoZXMgd2l0aEV2ZW50OmV2ZW50XTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>