<?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>219647</bug_id>
          
          <creation_ts>2020-12-08 10:12:24 -0800</creation_ts>
          <short_desc>Make ScrollingPerformanceLoggingEnabled an internal debug preference</short_desc>
          <delta_ts>2020-12-08 15: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>Scrolling</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>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fred.wang</cc>
    
    <cc>glenn</cc>
    
    <cc>jamesr</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>luiz</cc>
    
    <cc>mifenton</cc>
    
    <cc>pdr</cc>
    
    <cc>sam</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1712824</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-12-08 10:12:24 -0800</bug_when>
    <thetext>Make ScrollingPerformanceLoggingEnabled an internal debug preference</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712833</commentid>
    <comment_count>1</comment_count>
      <attachid>415654</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-12-08 10:39:14 -0800</bug_when>
    <thetext>Created attachment 415654
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712835</commentid>
    <comment_count>2</comment_count>
      <attachid>415654</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2020-12-08 11:01:00 -0800</bug_when>
    <thetext>Comment on attachment 415654
Patch

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

&gt; Source/WebCore/page/Settings.yaml:158
&gt; +ForceUpdateScrollbarsOnMainThreadForPerformanceTesting:
&gt; +  type: bool
&gt; +  defaultValue:
&gt; +    WebCore:
&gt; +      default: false

Please don&apos;t add this here. I have been removing things from this file and moving them to WebPreferences.yaml with the goal of removing this file soon.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712920</commentid>
    <comment_count>3</comment_count>
      <attachid>415675</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-12-08 13:57:44 -0800</bug_when>
    <thetext>Created attachment 415675
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712940</commentid>
    <comment_count>4</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-12-08 14:59:29 -0800</bug_when>
    <thetext>https://trac.webkit.org/r270557</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1712941</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-12-08 15:00:20 -0800</bug_when>
    <thetext>&lt;rdar://problem/72111227&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>415654</attachid>
            <date>2020-12-08 10:39:14 -0800</date>
            <delta_ts>2020-12-08 13:57:42 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219647-20201208103913.patch</filename>
            <type>text/plain</type>
            <size>6078</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwNDk0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDU3ODA1NDJmZGMzMTdhZDAyMmNiNWUx
ZmEwYmUxNDEyN2ZmN2I0NGMuLmYyYTBhNmEzYmMyNzFjMDA5ODU1MzViYjM5NjI1MWU4ZjQ5ZmVm
YzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMjAtMTItMDggIFNpbW9uIEZyYXNlciAgPHNpbW9u
LmZyYXNlckBhcHBsZS5jb20+CisKKyAgICAgICAgTWFrZSBTY3JvbGxpbmdQZXJmb3JtYW5jZUxv
Z2dpbmdFbmFibGVkIGFuIGludGVybmFsIGRlYnVnIHByZWZlcmVuY2UKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxOTY0NworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFNjcm9sbGluZ1BlcmZvcm1hbmNlTG9n
Z2luZ0VuYWJsZWQgaXMgdXNlZCBieSBhIFNhZmFyaSBwZXJmb3JtYW5jZSB0ZXN0LCBzbyBpdCBu
ZWVkcworICAgICAgICB0byBiZSBlYXNpbHkgdG9nZ2xlYWJsZSBmcm9tIGEgc2NyaXB0LiBUaGF0
J3MgZWFzaWVyIGlmIGl0J3MgYW4gSW50ZXJuYWwgRGVidWcgcHJlZmVyZW5jZS4KKyAgICAgICAg
CisgICAgICAgIFRlc3RpbmcgYWxzbyBzZXRzIEZvcmNlVXBkYXRlU2Nyb2xsYmFyc09uTWFpblRo
cmVhZEZvclBlcmZvcm1hbmNlVGVzdGluZyBidXQgd2UgY2FuIGp1c3QKKyAgICAgICAgdW5jb25k
aXRpb25hbGx5IGRvIHRoYXQgd2hlbiBTY3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVk
IGlzIGVuYWJsZWQuCisKKyAgICAgICAgKiBTY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVu
Y2VzLnlhbWw6CisgICAgICAgICogU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0lu
dGVybmFsLnlhbWw6CisKIDIwMjAtMTItMDYgIFNhbXVlbCBUaGliYXVsdCAgPHNhbXVlbC50aGli
YXVsdEBlbnMtbHlvbi5vcmc+CiAKICAgICAgICAgW1dURl0gQWRkIFVuaXgtZ2VuZXJpYyB3YXkg
b2YgZGV0ZXJtaW5pbmcgdGhlIGF2YWlsYWJsZSBSQU0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA3YTEwNjY5NWQy
ZDA2ZDg5NDMyMDM0ODNkYmUzOWQ0N2E4NWRiZjNhLi5hODYwM2Q2NzgxYTM0NTFlMGI2NTMxM2Iy
YzgzMzdhYTQ5MmI5NmIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMjAtMTItMDgg
IFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAgICAgICAgTWFrZSBT
Y3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVkIGFuIGludGVybmFsIGRlYnVnIHByZWZl
cmVuY2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIx
OTY0NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFNj
cm9sbGluZ1BlcmZvcm1hbmNlTG9nZ2luZ0VuYWJsZWQgaXMgdXNlZCBieSBhIFNhZmFyaSBwZXJm
b3JtYW5jZSB0ZXN0LCBzbyBpdCBuZWVkcworICAgICAgICB0byBiZSBlYXNpbHkgdG9nZ2xlYWJs
ZSBmcm9tIGEgc2NyaXB0LiBUaGF0J3MgZWFzaWVyIGlmIGl0J3MgYW4gSW50ZXJuYWwgRGVidWcg
cHJlZmVyZW5jZS4KKyAgICAgICAgCisgICAgICAgIFRlc3RpbmcgYWxzbyBzZXRzIEZvcmNlVXBk
YXRlU2Nyb2xsYmFyc09uTWFpblRocmVhZEZvclBlcmZvcm1hbmNlVGVzdGluZyBidXQgd2UgY2Fu
IGp1c3QKKyAgICAgICAgdW5jb25kaXRpb25hbGx5IGRvIHRoYXQgd2hlbiBTY3JvbGxpbmdQZXJm
b3JtYW5jZUxvZ2dpbmdFbmFibGVkIGlzIGVuYWJsZWQuCisKKyAgICAgICAgKiBwYWdlL1NldHRp
bmdzLnlhbWw6CisgICAgICAgICogcGFnZS9TZXR0aW5nc0Jhc2UuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6U2V0dGluZ3NCYXNlOjpzY3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVkQ2hh
bmdlZCk6CisKIDIwMjAtMTItMDYgIEpvb25naHVuIFBhcmsgIDxqaDcxOC5wYXJrQHNhbXN1bmcu
Y29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQuIFJlbW92ZSB0aGUgYnVpbGQgd2FybmluZyBiZWxv
dyBzaW5jZSByMjcwNDE0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVu
Y2VzL1dlYlByZWZlcmVuY2VzLnlhbWwgYi9Tb3VyY2UvV1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMv
V2ViUHJlZmVyZW5jZXMueWFtbAppbmRleCBmNmQ3MGY4MjhmYmExN2I1NjRlYTk4OWMyMzFlNDQ5
YjA2ZGI5MWZhLi5kMWQ2MWY4YjQ4NGVhNzIyNWI3ZGIzOGExYzdiZDViZTlmMzE0MDU4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXMueWFt
bAorKysgYi9Tb3VyY2UvV1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXMueWFt
bApAQCAtODAyLDE2ICs4MDIsNiBAQCBGb3JjZUZUUERpcmVjdG9yeUxpc3RpbmdzOgogICAgIFdl
YkNvcmU6CiAgICAgICBkZWZhdWx0OiBmYWxzZQogCi1Gb3JjZVVwZGF0ZVNjcm9sbGJhcnNPbk1h
aW5UaHJlYWRGb3JQZXJmb3JtYW5jZVRlc3Rpbmc6Ci0gIHR5cGU6IGJvb2wKLSAgZGVmYXVsdFZh
bHVlOgotICAgIFdlYktpdExlZ2FjeToKLSAgICAgIGRlZmF1bHQ6IGZhbHNlCi0gICAgV2ViS2l0
OgotICAgICAgZGVmYXVsdDogZmFsc2UKLSAgICBXZWJDb3JlOgotICAgICAgZGVmYXVsdDogZmFs
c2UKLQogRm9yY2VXZWJHTFVzZXNMb3dQb3dlcjoKICAgdHlwZTogYm9vbAogICBkZWZhdWx0VmFs
dWU6CkBAIC0xODQ2LDE4ICsxODM2LDYgQEAgU2Nyb2xsQW5pbWF0b3JFbmFibGVkOgogICAgIFdl
YkNvcmU6CiAgICAgICBkZWZhdWx0OiB0cnVlCiAKLSMgRklYTUU6IElzIHRoaXMgaW1wbGVtZW50
ZWQgZm9yIFdlYktpdExlZ2FjeT8gSWYgbm90LCB0aGlzIHNob3VsZCBiZSBleGNsdWRlZCBmcm9t
IFdlYktpdExlZ2FjeSBlbnRpcmVseSAodGhvdWdoIHdlIHNob3VsZCBzdGlsbCBzZXQgdGhlIGRl
ZmF1bHQgdmFsdWUgdG8gZmFsc2Ugd2hlbiBpbml0aWFsaXppbmcgc2V0dGluZ3MpLgotU2Nyb2xs
aW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZDoKLSAgdHlwZTogYm9vbAotICB3ZWJjb3JlT25D
aGFuZ2U6IHNjcm9sbGluZ1BlcmZvcm1hbmNlTG9nZ2luZ0VuYWJsZWRDaGFuZ2VkCi0gIGRlZmF1
bHRWYWx1ZToKLSAgICBXZWJLaXRMZWdhY3k6Ci0gICAgICBkZWZhdWx0OiBmYWxzZQotICAgIFdl
YktpdDoKLSAgICAgIGRlZmF1bHQ6IGZhbHNlCi0gICAgV2ViQ29yZToKLSAgICAgIGRlZmF1bHQ6
IGZhbHNlCi0KICMgRklYTUU6IFRoaXMgaXMgaGFuZGxlZCB2aWEgV2ViVmlldyBTUEkgcmF0aGVy
IHRoYW4gV2ViUHJlZmVyZW5jZXMgZm9yIFdlYktpdExlZ2FjeS4gV2Ugc2hvdWxkIGNoYW5nZSB0
aGUgU1BJIHRvIGxvb2t1cCB0aGUgV2ViUHJlZmVyZW5jZXMgdmFsdWUgaW5zdGVhZC4KIFNlbGVj
dFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQ6CiAgIHR5cGU6IGJvb2wKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0ludGVybmFsLnlhbWwg
Yi9Tb3VyY2UvV1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNJbnRlcm5hbC55
YW1sCmluZGV4IDVmMDg4ZDVlMjQ2ZDA0N2FjNTRjNGRlMGM3MmYzMDZiMDlhMmNjZGQuLjE5ZWMy
Mjk3Y2I5ZGUyNWM2OTFhNmE4MWI4ZTIxYTJjNzlkM2E3MzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
VEYvU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlc0ludGVybmFsLnlhbWwKKysrIGIv
U291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2VzSW50ZXJuYWwueWFt
bApAQCAtNjEwLDYgKzYxMCwyMCBAQCBSZXN0cmljdGVkSFRUUFJlc3BvbnNlQWNjZXNzOgogICAg
IFdlYktpdDoKICAgICAgIGRlZmF1bHQ6IHRydWUKIAorU2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dn
aW5nRW5hYmxlZDoKKyAgdHlwZTogYm9vbAorICBodW1hblJlYWRhYmxlTmFtZTogIlNjcm9sbCBQ
ZXJmb3JtYW5jZSBMb2dnaW5nIEVuYWJsZWQiCisgIGh1bWFuUmVhZGFibGVEZXNjcmlwdGlvbjog
IkVuYWJsZSBsb2dnaW5nIHVzZWQgYnkgc2Nyb2xsaW5nIHBlcmZvcm1hbmNlIHRlc3RzIgorICB3
ZWJjb3JlT25DaGFuZ2U6IHNjcm9sbGluZ1BlcmZvcm1hbmNlTG9nZ2luZ0VuYWJsZWRDaGFuZ2Vk
CisgIGV4cG9zZWQ6IFsgV2ViS2l0IF0KKyAgZGVmYXVsdFZhbHVlOgorICAgIFdlYktpdExlZ2Fj
eToKKyAgICAgIGRlZmF1bHQ6IGZhbHNlCisgICAgV2ViS2l0OgorICAgICAgZGVmYXVsdDogZmFs
c2UKKyAgICBXZWJDb3JlOgorICAgICAgZGVmYXVsdDogZmFsc2UKKwogU2VjdXJlQ29udGV4dENo
ZWNrc0VuYWJsZWQ6CiAgIHR5cGU6IGJvb2wKICAgaHVtYW5SZWFkYWJsZU5hbWU6ICJTZWN1cmUg
Q29udGV4dCBDaGVja3MiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdz
LnlhbWwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLnlhbWwKaW5kZXggYmI2MDg0Yjg4
MWIxOTljNTUzM2YxN2M5ZjBhNmVmMTc4Zjk0OTNlMS4uYjQxNjViM2QyZTIwYjRhN2U5MGRmOTlj
N2ViZmUxZDI4MTk4YjkzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5n
cy55YW1sCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MueWFtbApAQCAtMTUxLDYg
KzE1MSwxMiBAQCBGaXhlZEVsZW1lbnRzTGF5b3V0UmVsYXRpdmVUb0ZyYW1lOgogICAgIFdlYkNv
cmU6CiAgICAgICBkZWZhdWx0OiBmYWxzZQogCitGb3JjZVVwZGF0ZVNjcm9sbGJhcnNPbk1haW5U
aHJlYWRGb3JQZXJmb3JtYW5jZVRlc3Rpbmc6CisgIHR5cGU6IGJvb2wKKyAgZGVmYXVsdFZhbHVl
OgorICAgIFdlYkNvcmU6CisgICAgICBkZWZhdWx0OiBmYWxzZQorCiBGb250RmFsbGJhY2tQcmVm
ZXJzUGljdG9ncmFwaHM6CiAgIHR5cGU6IGJvb2wKICAgd2ViY29yZU9uQ2hhbmdlOiBzZXROZWVk
c1JlY2FsY1N0eWxlSW5BbGxGcmFtZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
U2V0dGluZ3NCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3NCYXNlLmNwcApp
bmRleCBiZThkMmZiNTUwYjZjMzdmNzJlNzVkMDdiN2E3Y2M3ODk5YmRlZTFlLi44NTFjY2IwOTAx
YjhkMjRlZjM5MTgzYjUxM2ZlMTdlNzFkOTIyYTY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1NldHRpbmdzQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5n
c0Jhc2UuY3BwCkBAIC0zNDEsOCArMzQxLDEwIEBAIHZvaWQgU2V0dGluZ3NCYXNlOjpiYWNrZ3Jv
dW5kU2hvdWxkRXh0ZW5kQmV5b25kUGFnZUNoYW5nZWQoKQogCiB2b2lkIFNldHRpbmdzQmFzZTo6
c2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZENoYW5nZWQoKQogeworICAgIGF1dG8g
ZW5hYmxlZCA9IG1fcGFnZS0+c2V0dGluZ3MoKS5zY3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdF
bmFibGVkKCk7CisgICAgbV9wYWdlLT5zZXR0aW5ncygpLnNldEZvcmNlVXBkYXRlU2Nyb2xsYmFy
c09uTWFpblRocmVhZEZvclBlcmZvcm1hbmNlVGVzdGluZyhlbmFibGVkKTsKICAgICBpZiAobV9w
YWdlICYmIG1fcGFnZS0+bWFpbkZyYW1lKCkudmlldygpKQotICAgICAgICBtX3BhZ2UtPm1haW5G
cmFtZSgpLnZpZXcoKS0+c2V0U2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZChtX3Bh
Z2UtPnNldHRpbmdzKCkuc2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZCgpKTsKKyAg
ICAgICAgbV9wYWdlLT5tYWluRnJhbWUoKS52aWV3KCktPnNldFNjcm9sbGluZ1BlcmZvcm1hbmNl
TG9nZ2luZ0VuYWJsZWQoZW5hYmxlZCk7CiB9CiAKIHZvaWQgU2V0dGluZ3NCYXNlOjpoaWRkZW5Q
YWdlRE9NVGltZXJUaHJvdHRsaW5nU3RhdGVDaGFuZ2VkKCkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>415675</attachid>
            <date>2020-12-08 13:57:44 -0800</date>
            <delta_ts>2020-12-08 14:21:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-219647-20201208135743.patch</filename>
            <type>text/plain</type>
            <size>39794</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcwNDk0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDU3ODA1NDJmZGMzMTdhZDAyMmNiNWUx
ZmEwYmUxNDEyN2ZmN2I0NGMuLmNhYjFlODY4YjU3NTk5YzA0NjcyYjJkNWVkZWExN2U0YjM0NTE2
MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMjAtMTItMDggIFNpbW9uIEZyYXNlciAgPHNpbW9u
LmZyYXNlckBhcHBsZS5jb20+CisKKyAgICAgICAgTWFrZSBTY3JvbGxpbmdQZXJmb3JtYW5jZUxv
Z2dpbmdFbmFibGVkIGFuIGludGVybmFsIGRlYnVnIHByZWZlcmVuY2UKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxOTY0NworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbmFtZSBTY3JvbGxpbmdQZXJmb3Jt
YW5jZUxvZ2dpbmdFbmFibGVkIHRvIFNjcm9sbGluZ1BlcmZvcm1hbmNlVGVzdGluZ0VuYWJsZWQg
YW5kIG1ha2UKKyAgICAgICAgaXQgYW4gSW50ZXJuYWwgRGVidWcgcHJlZmVyZW5jZS4KKworICAg
ICAgICBSZW1vdmUgRm9yY2VVcGRhdGVTY3JvbGxiYXJzT25NYWluVGhyZWFkRm9yUGVyZm9ybWFu
Y2VUZXN0aW5nLgorCisgICAgICAgICogU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNl
cy55YW1sOgorICAgICAgICAqIFNjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXNJbnRl
cm5hbC55YW1sOgorCiAyMDIwLTEyLTA2ICBTYW11ZWwgVGhpYmF1bHQgIDxzYW11ZWwudGhpYmF1
bHRAZW5zLWx5b24ub3JnPgogCiAgICAgICAgIFtXVEZdIEFkZCBVbml4LWdlbmVyaWMgd2F5IG9m
IGRldGVybWluaW5nIHRoZSBhdmFpbGFibGUgUkFNCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2ExMDY2OTVkMmQw
NmQ4OTQzMjAzNDgzZGJlMzlkNDdhODVkYmYzYS4uNjM0ZWViY2E1NzU3NDExM2RmN2JmMzRmYjhm
NmRjN2YwYTc2Y2ZhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYyIEBACisyMDIwLTEyLTA4ICBT
aW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIE1ha2UgU2Ny
b2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZCBhbiBpbnRlcm5hbCBkZWJ1ZyBwcmVmZXJl
bmNlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTk2
NDcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTY3Jv
bGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVkIGlzIHVzZWQgYnkgYSBTYWZhcmkgcGVyZm9y
bWFuY2UgdGVzdCwgc28gaXQgbmVlZHMgdG8gYmUKKyAgICAgICAgZWFzaWx5IHRvZ2dsZWFibGUg
ZnJvbSBhIHNjcmlwdC4gVGhhdCdzIGVhc2llciBpZiBpdCdzIGFuIEludGVybmFsIERlYnVnIHBy
ZWZlcmVuY2UuCisKKyAgICAgICAgVGVzdGluZyBhbHNvIHNldHMgRm9yY2VVcGRhdGVTY3JvbGxi
YXJzT25NYWluVGhyZWFkRm9yUGVyZm9ybWFuY2VUZXN0aW5nIGJ1dCB3ZSBjYW4ganVzdCB1c2UK
KyAgICAgICAgdGhlIFNjcm9sbGluZ1BlcmZvcm1hbmNlTG9nZ2luZ0VuYWJsZWQgZmxhZywgYnV0
IGl0IG1ha2VzIG1vcmUgc2Vuc2UgdG8gcmVuYW1lCisgICAgICAgIFNjcm9sbGluZ1BlcmZvcm1h
bmNlTG9nZ2luZ0VuYWJsZWQgdG8gU2Nyb2xsaW5nUGVyZm9ybWFuY2VUZXN0aW5nRW5hYmxlZCB3
aGVuIHdlIGRvIHRoYXQuCisKKyAgICAgICAgQWxzbyBmaXggaG93IHdlIHByb3BhZ2F0ZSBTY3Jv
bGxpbmdQZXJmb3JtYW5jZVRlc3RpbmdFbmFibGVkIHRvIHRoZSBzY3JvbGxpbmcgdHJlZTsKKyAg
ICAgICAgZG8gc28gdmlhIFNjcm9sbGluZ1N0YXRlRnJhbWVTY3JvbGxpbmdOb2RlIGFzIHdlIGRv
IGZvciB0aGUgb3RoZXIgdHJlZS13aWRlIHNldHRpbmdzLAorICAgICAgICByZW1vdmluZyBjb2Rl
IGluIFRpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhOjp1cGRhdGVQcmVmZXJlbmNlcygpIHRo
YXQgZGlkIHRoaXMuCisKKyAgICAgICAgKiBwYWdlL0ZyYW1lVmlldy5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpGcmFtZVZpZXc6OmZvcmNlVXBkYXRlU2Nyb2xsYmFyc09uTWFpblRocmVhZEZvclBl
cmZvcm1hbmNlVGVzdGluZyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZVZpZXc6OnNl
dFNjcm9sbGluZ1BlcmZvcm1hbmNlVGVzdGluZ0VuYWJsZWQpOgorICAgICAgICAoV2ViQ29yZTo6
RnJhbWVWaWV3OjpzZXRTY3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVkKTogRGVsZXRl
ZC4KKyAgICAgICAgKiBwYWdlL0ZyYW1lVmlldy5oOgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3NC
YXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzQmFzZTo6c2Nyb2xsaW5nUGVyZm9y
bWFuY2VUZXN0aW5nRW5hYmxlZENoYW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3NC
YXNlOjpzY3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVkQ2hhbmdlZCk6IERlbGV0ZWQu
CisgICAgICAgICogcGFnZS9TZXR0aW5nc0Jhc2UuaDoKKyAgICAgICAgKiBwYWdlL3Njcm9sbGlu
Zy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFzeW5j
U2Nyb2xsaW5nQ29vcmRpbmF0b3I6OnNldEZyYW1lU2Nyb2xsaW5nTm9kZVN0YXRlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkFzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OmFzeW5jRnJhbWVPck92ZXJm
bG93U2Nyb2xsaW5nRW5hYmxlZCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpB
c3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yOjp3aGVlbEV2ZW50R2VzdHVyZXNCZWNvbWVOb25CbG9j
a2luZyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3Jv
bGxpbmdDb29yZGluYXRvci5oOgorICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1N0
YXRlRnJhbWVTY3JvbGxpbmdOb2RlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1N0
YXRlRnJhbWVTY3JvbGxpbmdOb2RlOjpTY3JvbGxpbmdTdGF0ZUZyYW1lU2Nyb2xsaW5nTm9kZSk6
CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdTdGF0ZUZyYW1lU2Nyb2xsaW5nTm9kZTo6YXBw
bGljYWJsZVByb3BlcnRpZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nU3Rh
dGVGcmFtZVNjcm9sbGluZ05vZGU6OnNldFNjcm9sbGluZ1BlcmZvcm1hbmNlVGVzdGluZ0VuYWJs
ZWQpOgorICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1N0YXRlRnJhbWVTY3JvbGxp
bmdOb2RlLmg6CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nU3RhdGVOb2RlLmg6
CisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpTY3JvbGxpbmdUcmVlOjpjb21taXRUcmVlU3RhdGUpOgorICAgICAgICAoV2ViQ29y
ZTo6U2Nyb2xsaW5nVHJlZTo6c2V0U2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZCk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlOjpzY3JvbGxpbmdQZXJm
b3JtYW5jZUxvZ2dpbmdFbmFibGVkKTogRGVsZXRlZC4KKyAgICAgICAgKiBwYWdlL3Njcm9sbGlu
Zy9TY3JvbGxpbmdUcmVlLmg6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlOjpzY3Jv
bGxpbmdQZXJmb3JtYW5jZVRlc3RpbmdFbmFibGVkIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OlNjcm9sbGluZ1RyZWU6OnNldFNjcm9sbGluZ1BlcmZvcm1hbmNlVGVzdGluZ0VuYWJsZWQpOgor
ICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdO
b2RlTWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5n
Tm9kZU1hYzo6Y29tbWl0U3RhdGVCZWZvcmVDaGlsZHJlbik6CisgICAgICAgIChXZWJDb3JlOjpT
Y3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjpjdXJyZW50U2Nyb2xsUG9zaXRpb25D
aGFuZ2VkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9UaWxlZEJhY2tpbmcuaDoKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9UaWxlQ29udHJvbGxlci5oOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2NhL1RpbGVHcmlkLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRp
bGVHcmlkOjpwbGF0Zm9ybUNBTGF5ZXJQYWludENvbnRlbnRzKToKKyAgICAgICAgKiByZW5kZXJp
bmcvUmVuZGVyTGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OmZvcmNl
VXBkYXRlU2Nyb2xsYmFyc09uTWFpblRocmVhZEZvclBlcmZvcm1hbmNlVGVzdGluZyBjb25zdCk6
CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJMYXllckJhY2tpbmc6OlJlbmRlckxheWVyQmFja2luZyk6CisgICAgICAg
ICogcmVuZGVyaW5nL1JlbmRlckxpc3RCb3guY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
TGlzdEJveDo6Zm9yY2VVcGRhdGVTY3JvbGxiYXJzT25NYWluVGhyZWFkRm9yUGVyZm9ybWFuY2VU
ZXN0aW5nIGNvbnN0KToKKwogMjAyMC0xMi0wNiAgSm9vbmdodW4gUGFyayAgPGpoNzE4LnBhcmtA
c2Ftc3VuZy5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gUmVtb3ZlIHRoZSBidWlsZCB3YXJu
aW5nIGJlbG93IHNpbmNlIHIyNzA0MTQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDYyMWU5OTU4OTFiYTdiMzg5MWNm
NGEyODgwNmRjYzNjNjdlMDUzZDguLjc5NjMyYjAzMjJhOWFmODJjYmZmNWU2MzFlMDNhYTdjOWNm
Zjg1MDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzIgQEAKKzIwMjAtMTItMDggIFNpbW9uIEZyYXNl
ciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAgICAgICAgTWFrZSBTY3JvbGxpbmdQZXJm
b3JtYW5jZUxvZ2dpbmdFbmFibGVkIGFuIGludGVybmFsIGRlYnVnIHByZWZlcmVuY2UKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxOTY0NworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFNjcm9sbGluZ1BlcmZv
cm1hbmNlTG9nZ2luZ0VuYWJsZWQgaXMgdXNlZCBieSBhIFNhZmFyaSBwZXJmb3JtYW5jZSB0ZXN0
LCBzbyBpdCBuZWVkcyB0byBiZQorICAgICAgICBlYXNpbHkgdG9nZ2xlYWJsZSBmcm9tIGEgc2Ny
aXB0LiBUaGF0J3MgZWFzaWVyIGlmIGl0J3MgYW4gSW50ZXJuYWwgRGVidWcgcHJlZmVyZW5jZS4K
KworICAgICAgICBUZXN0aW5nIGFsc28gc2V0cyBGb3JjZVVwZGF0ZVNjcm9sbGJhcnNPbk1haW5U
aHJlYWRGb3JQZXJmb3JtYW5jZVRlc3RpbmcgYnV0IHdlIGNhbiBqdXN0IHVzZQorICAgICAgICB0
aGUgU2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZCBmbGFnLCBidXQgaXQgbWFrZXMg
bW9yZSBzZW5zZSB0byByZW5hbWUKKyAgICAgICAgU2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5n
RW5hYmxlZCB0byBTY3JvbGxpbmdQZXJmb3JtYW5jZVRlc3RpbmdFbmFibGVkIHdoZW4gd2UgZG8g
dGhhdC4KKworICAgICAgICBBbHNvIGZpeCBob3cgd2UgcHJvcGFnYXRlIFNjcm9sbGluZ1BlcmZv
cm1hbmNlVGVzdGluZ0VuYWJsZWQgdG8gdGhlIHNjcm9sbGluZyB0cmVlOworICAgICAgICBkbyBz
byB2aWEgU2Nyb2xsaW5nU3RhdGVGcmFtZVNjcm9sbGluZ05vZGUgYXMgd2UgZG8gZm9yIHRoZSBv
dGhlciB0cmVlLXdpZGUgc2V0dGluZ3MsCisgICAgICAgIHJlbW92aW5nIGNvZGUgaW4gVGlsZWRD
b3JlQW5pbWF0aW9uRHJhd2luZ0FyZWE6OnVwZGF0ZVByZWZlcmVuY2VzKCkgdGhhdCBkaWQgdGhp
cy4KKworICAgICAgICAqIFNoYXJlZC9SZW1vdGVMYXllclRyZWUvUmVtb3RlU2Nyb2xsaW5nQ29v
cmRpbmF0b3JUcmFuc2FjdGlvbi5jcHA6CisgICAgICAgIChBcmd1bWVudENvZGVyPFNjcm9sbGlu
Z1N0YXRlRnJhbWVTY3JvbGxpbmdOb2RlPjo6ZW5jb2RlKToKKyAgICAgICAgKEFyZ3VtZW50Q29k
ZXI8U2Nyb2xsaW5nU3RhdGVGcmFtZVNjcm9sbGluZ05vZGU+OjpkZWNvZGUpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcDoKKyAgICAgICAgKFdLUHJlZmVyZW5j
ZXNTZXRTY3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVkKToKKyAgICAgICAgKFdLUHJl
ZmVyZW5jZXNHZXRTY3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVkKToKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpbi5tbToKKyAgICAgICAgKFdlYktpdDo6
UERGUGx1Z2luOjpmb3JjZVVwZGF0ZVNjcm9sbGJhcnNPbk1haW5UaHJlYWRGb3JQZXJmb3JtYW5j
ZVRlc3RpbmcgY29uc3QpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9tYWMvVGlsZWRD
b3JlQW5pbWF0aW9uRHJhd2luZ0FyZWEubW06CisgICAgICAgIChXZWJLaXQ6OlRpbGVkQ29yZUFu
aW1hdGlvbkRyYXdpbmdBcmVhOjp1cGRhdGVQcmVmZXJlbmNlcyk6CisKIDIwMjAtMTItMDYgIFNh
bXVlbCBUaGliYXVsdCAgPHNhbXVlbC50aGliYXVsdEBlbnMtbHlvbi5vcmc+CiAKICAgICAgICAg
W1dlYktpdF0gRml4IHVzZSBvZiBzdGQ6Om1heF9hbGlnbl90CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJlZmVyZW5jZXMueWFtbCBiL1NvdXJjZS9XVEYv
U2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQcmVmZXJlbmNlcy55YW1sCmluZGV4IGY2ZDcwZjgyOGZi
YTE3YjU2NGVhOTg5YzIzMWU0NDliMDZkYjkxZmEuLmQxZDYxZjhiNDg0ZWE3MjI1YjdkYjM4YTFj
N2JkNWJlOWYzMTQwNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJlbmNl
cy9XZWJQcmVmZXJlbmNlcy55YW1sCisrKyBiL1NvdXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJlbmNl
cy9XZWJQcmVmZXJlbmNlcy55YW1sCkBAIC04MDIsMTYgKzgwMiw2IEBAIEZvcmNlRlRQRGlyZWN0
b3J5TGlzdGluZ3M6CiAgICAgV2ViQ29yZToKICAgICAgIGRlZmF1bHQ6IGZhbHNlCiAKLUZvcmNl
VXBkYXRlU2Nyb2xsYmFyc09uTWFpblRocmVhZEZvclBlcmZvcm1hbmNlVGVzdGluZzoKLSAgdHlw
ZTogYm9vbAotICBkZWZhdWx0VmFsdWU6Ci0gICAgV2ViS2l0TGVnYWN5OgotICAgICAgZGVmYXVs
dDogZmFsc2UKLSAgICBXZWJLaXQ6Ci0gICAgICBkZWZhdWx0OiBmYWxzZQotICAgIFdlYkNvcmU6
Ci0gICAgICBkZWZhdWx0OiBmYWxzZQotCiBGb3JjZVdlYkdMVXNlc0xvd1Bvd2VyOgogICB0eXBl
OiBib29sCiAgIGRlZmF1bHRWYWx1ZToKQEAgLTE4NDYsMTggKzE4MzYsNiBAQCBTY3JvbGxBbmlt
YXRvckVuYWJsZWQ6CiAgICAgV2ViQ29yZToKICAgICAgIGRlZmF1bHQ6IHRydWUKIAotIyBGSVhN
RTogSXMgdGhpcyBpbXBsZW1lbnRlZCBmb3IgV2ViS2l0TGVnYWN5PyBJZiBub3QsIHRoaXMgc2hv
dWxkIGJlIGV4Y2x1ZGVkIGZyb20gV2ViS2l0TGVnYWN5IGVudGlyZWx5ICh0aG91Z2ggd2Ugc2hv
dWxkIHN0aWxsIHNldCB0aGUgZGVmYXVsdCB2YWx1ZSB0byBmYWxzZSB3aGVuIGluaXRpYWxpemlu
ZyBzZXR0aW5ncykuCi1TY3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVkOgotICB0eXBl
OiBib29sCi0gIHdlYmNvcmVPbkNoYW5nZTogc2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5h
YmxlZENoYW5nZWQKLSAgZGVmYXVsdFZhbHVlOgotICAgIFdlYktpdExlZ2FjeToKLSAgICAgIGRl
ZmF1bHQ6IGZhbHNlCi0gICAgV2ViS2l0OgotICAgICAgZGVmYXVsdDogZmFsc2UKLSAgICBXZWJD
b3JlOgotICAgICAgZGVmYXVsdDogZmFsc2UKLQogIyBGSVhNRTogVGhpcyBpcyBoYW5kbGVkIHZp
YSBXZWJWaWV3IFNQSSByYXRoZXIgdGhhbiBXZWJQcmVmZXJlbmNlcyBmb3IgV2ViS2l0TGVnYWN5
LiBXZSBzaG91bGQgY2hhbmdlIHRoZSBTUEkgdG8gbG9va3VwIHRoZSBXZWJQcmVmZXJlbmNlcyB2
YWx1ZSBpbnN0ZWFkLgogU2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5hYmxlZDoKICAgdHlwZTog
Ym9vbApkaWZmIC0tZ2l0IGEvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZl
cmVuY2VzSW50ZXJuYWwueWFtbCBiL1NvdXJjZS9XVEYvU2NyaXB0cy9QcmVmZXJlbmNlcy9XZWJQ
cmVmZXJlbmNlc0ludGVybmFsLnlhbWwKaW5kZXggNWYwODhkNWUyNDZkMDQ3YWM1NGM0ZGUwYzcy
ZjMwNmIwOWEyY2NkZC4uODdiZGJkNmZkNGVjMTMwNzg2YTI4MWFlYTE1MzAzMTc4MGRhZTBmYyAx
MDA2NDQKLS0tIGEvU291cmNlL1dURi9TY3JpcHRzL1ByZWZlcmVuY2VzL1dlYlByZWZlcmVuY2Vz
SW50ZXJuYWwueWFtbAorKysgYi9Tb3VyY2UvV1RGL1NjcmlwdHMvUHJlZmVyZW5jZXMvV2ViUHJl
ZmVyZW5jZXNJbnRlcm5hbC55YW1sCkBAIC02MTAsNiArNjEwLDIwIEBAIFJlc3RyaWN0ZWRIVFRQ
UmVzcG9uc2VBY2Nlc3M6CiAgICAgV2ViS2l0OgogICAgICAgZGVmYXVsdDogdHJ1ZQogCitTY3Jv
bGxpbmdQZXJmb3JtYW5jZVRlc3RpbmdFbmFibGVkOgorICB0eXBlOiBib29sCisgIGh1bWFuUmVh
ZGFibGVOYW1lOiAiU2Nyb2xsIFBlcmZvcm1hbmNlIFRlc3RpbmcgRW5hYmxlZCIKKyAgaHVtYW5S
ZWFkYWJsZURlc2NyaXB0aW9uOiAiRW5hYmxlIGJlaGF2aW9ycyB1c2VkIGJ5IHNjcm9sbGluZyBw
ZXJmb3JtYW5jZSB0ZXN0cyIKKyAgd2ViY29yZU9uQ2hhbmdlOiBzY3JvbGxpbmdQZXJmb3JtYW5j
ZVRlc3RpbmdFbmFibGVkQ2hhbmdlZAorICBleHBvc2VkOiBbIFdlYktpdCBdCisgIGRlZmF1bHRW
YWx1ZToKKyAgICBXZWJLaXRMZWdhY3k6CisgICAgICBkZWZhdWx0OiBmYWxzZQorICAgIFdlYktp
dDoKKyAgICAgIGRlZmF1bHQ6IGZhbHNlCisgICAgV2ViQ29yZToKKyAgICAgIGRlZmF1bHQ6IGZh
bHNlCisKIFNlY3VyZUNvbnRleHRDaGVja3NFbmFibGVkOgogICB0eXBlOiBib29sCiAgIGh1bWFu
UmVhZGFibGVOYW1lOiAiU2VjdXJlIENvbnRleHQgQ2hlY2tzIgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZp
ZXcuY3BwCmluZGV4IGM2Nzc5MWQ4NjUyZTAwY2Q2MDVkN2JhOWJlOGNiMDE5NzdjMTkxYjMuLjVh
YjY3NDAzOTg0ZGY2NzBkZjYwNjZjNTA3NGRmZGYxZDg5YzlmM2EgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0Zy
YW1lVmlldy5jcHAKQEAgLTM3NDYsNyArMzc0Niw3IEBAIGJvb2wgRnJhbWVWaWV3Ojppc0FjdGl2
ZSgpIGNvbnN0CiBib29sIEZyYW1lVmlldzo6Zm9yY2VVcGRhdGVTY3JvbGxiYXJzT25NYWluVGhy
ZWFkRm9yUGVyZm9ybWFuY2VUZXN0aW5nKCkgY29uc3QKIHsKICAgICBQYWdlKiBwYWdlID0gZnJh
bWUoKS5wYWdlKCk7Ci0gICAgcmV0dXJuIHBhZ2UgJiYgcGFnZS0+c2V0dGluZ3MoKS5mb3JjZVVw
ZGF0ZVNjcm9sbGJhcnNPbk1haW5UaHJlYWRGb3JQZXJmb3JtYW5jZVRlc3RpbmcoKTsKKyAgICBy
ZXR1cm4gcGFnZSAmJiBwYWdlLT5zZXR0aW5ncygpLnNjcm9sbGluZ1BlcmZvcm1hbmNlVGVzdGlu
Z0VuYWJsZWQoKTsKIH0KIAogdm9pZCBGcmFtZVZpZXc6OnNjcm9sbFRvKGNvbnN0IFNjcm9sbFBv
c2l0aW9uJiBuZXdQb3NpdGlvbikKQEAgLTUyMTIsMTAgKzUyMTIsMTUgQEAgdm9pZCBGcmFtZVZp
ZXc6OnNldFNjcm9sbFZlbG9jaXR5KGNvbnN0IFZlbG9jaXR5RGF0YSYgdmVsb2NpdHlEYXRhKQog
fQogI2VuZGlmIC8vIFBMQVRGT1JNKElPU19GQU1JTFkpCiAKLXZvaWQgRnJhbWVWaWV3OjpzZXRT
Y3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVkKGJvb2wgZmxhZykKK3ZvaWQgRnJhbWVW
aWV3OjpzZXRTY3JvbGxpbmdQZXJmb3JtYW5jZVRlc3RpbmdFbmFibGVkKGJvb2wgc2Nyb2xsaW5n
UGVyZm9ybWFuY2VUZXN0aW5nRW5hYmxlZCkKIHsKKyAgICBpZiAoc2Nyb2xsaW5nUGVyZm9ybWFu
Y2VUZXN0aW5nRW5hYmxlZCkgeworICAgICAgICAvLyBUaGlzIGxvZyBpcyB1c2VkIGJ5IHRlc3Rp
bmcgc2NyaXB0cyB0byBlbnN1cmUgdGhlIGZsYWcgaGFzIGJlZW4gZW5hYmxlZCB3aGVuIGV4cGVj
dGVkLgorICAgICAgICBXVEZMb2dBbHdheXMoIlNDUk9MTElORzogU2Nyb2xsaW5nUGVyZm9ybWFu
Y2VUZXN0aW5nRW5hYmxlZCBpcyB0cnVlIik7CisgICAgfQorCiAgICAgaWYgKFRpbGVkQmFja2lu
ZyogdGlsZWRCYWNraW5nID0gdGhpcy0+dGlsZWRCYWNraW5nKCkpCi0gICAgICAgIHRpbGVkQmFj
a2luZy0+c2V0U2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZChmbGFnKTsKKyAgICAg
ICAgdGlsZWRCYWNraW5nLT5zZXRTY3JvbGxpbmdQZXJmb3JtYW5jZVRlc3RpbmdFbmFibGVkKHNj
cm9sbGluZ1BlcmZvcm1hbmNlVGVzdGluZ0VuYWJsZWQpOwogfQogCiB2b2lkIEZyYW1lVmlldzo6
ZGlkQWRkU2Nyb2xsYmFyKFNjcm9sbGJhciogc2Nyb2xsYmFyLCBTY3JvbGxiYXJPcmllbnRhdGlv
biBvcmllbnRhdGlvbikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3
LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5oCmluZGV4IDhjNWI4NDgxMzliYWRj
OTJiMDQzOTJlMmU5NzgwOTlkMzc0MTZkMjcuLjA5YzhkZjY0NzRhYTFmNjgzM2Y3NTdkNGZlMTc0
NDg1ZWZmMTU5ODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuaApAQCAtNTY3LDcgKzU2Nyw3IEBA
IHB1YmxpYzoKICAgICAvLyB3ZSBuZWVkIHRoaXMgZnVuY3Rpb24gaW4gb3JkZXIgdG8gZG8gdGhl
IHNjcm9sbCBvdXJzZWx2ZXMuCiAgICAgYm9vbCBoYW5kbGVXaGVlbEV2ZW50Rm9yU2Nyb2xsaW5n
KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYsIE9wdGlvbmFsPFdoZWVsU2Nyb2xsR2VzdHVyZVN0
YXRlPikgZmluYWw7CiAKLSAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHNldFNjcm9sbGluZ1BlcmZv
cm1hbmNlTG9nZ2luZ0VuYWJsZWQoYm9vbCk7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRT
Y3JvbGxpbmdQZXJmb3JtYW5jZVRlc3RpbmdFbmFibGVkKGJvb2wpOwogCiAgICAgLy8gUGFnZSBh
bmQgRnJhbWVWaWV3IGJvdGggc3RvcmUgYSBQYWdpbmF0aW9uIHZhbHVlLiBQYWdlOjpwYWdpbmF0
aW9uKCkgaXMgc2V0IG9ubHkgYnkgQVBJLAogICAgIC8vIGFuZCBGcmFtZVZpZXc6OnBhZ2luYXRp
b24oKSBpcyBzZXQgb25seSBieSBDU1MuIFBhZ2U6OnBhZ2luYXRpb24oKSB3aWxsIGFmZmVjdCBh
bGwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3NCYXNlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3NCYXNlLmNwcAppbmRleCBiZThkMmZiNTUwYjZjMzdm
NzJlNzVkMDdiN2E3Y2M3ODk5YmRlZTFlLi5hYTdkODRiOGNjMTRjNDMyYWEwNzIxYjgwMjdjYmNj
MWUwYmM5ZDgwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzQmFzZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5nc0Jhc2UuY3BwCkBAIC0zMzksMTAg
KzMzOSwxMCBAQCB2b2lkIFNldHRpbmdzQmFzZTo6YmFja2dyb3VuZFNob3VsZEV4dGVuZEJleW9u
ZFBhZ2VDaGFuZ2VkKCkKICAgICAgICAgbV9wYWdlLT5tYWluRnJhbWUoKS52aWV3KCktPnVwZGF0
ZUV4dGVuZEJhY2tncm91bmRJZk5lY2Vzc2FyeSgpOwogfQogCi12b2lkIFNldHRpbmdzQmFzZTo6
c2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZENoYW5nZWQoKQordm9pZCBTZXR0aW5n
c0Jhc2U6OnNjcm9sbGluZ1BlcmZvcm1hbmNlVGVzdGluZ0VuYWJsZWRDaGFuZ2VkKCkKIHsKICAg
ICBpZiAobV9wYWdlICYmIG1fcGFnZS0+bWFpbkZyYW1lKCkudmlldygpKQotICAgICAgICBtX3Bh
Z2UtPm1haW5GcmFtZSgpLnZpZXcoKS0+c2V0U2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5h
YmxlZChtX3BhZ2UtPnNldHRpbmdzKCkuc2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxl
ZCgpKTsKKyAgICAgICAgbV9wYWdlLT5tYWluRnJhbWUoKS52aWV3KCktPnNldFNjcm9sbGluZ1Bl
cmZvcm1hbmNlVGVzdGluZ0VuYWJsZWQobV9wYWdlLT5zZXR0aW5ncygpLnNjcm9sbGluZ1BlcmZv
cm1hbmNlVGVzdGluZ0VuYWJsZWQoKSk7CiB9CiAKIHZvaWQgU2V0dGluZ3NCYXNlOjpoaWRkZW5Q
YWdlRE9NVGltZXJUaHJvdHRsaW5nU3RhdGVDaGFuZ2VkKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvU2V0dGluZ3NCYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdz
QmFzZS5oCmluZGV4IDI1MzQwZjliZjg3ZmMxM2Q4MWNhYTRkMDc3MWNjMTEwODgyNjY4M2MuLjEy
MDRiMGViNzIyOTIzYjAzN2VkNTdhNjY5NTVhNzg3Y2NiNTEzNjcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3NCYXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9T
ZXR0aW5nc0Jhc2UuaApAQCAtMTI1LDcgKzEyNSw3IEBAIHByb3RlY3RlZDoKICAgICB2b2lkIGRu
c1ByZWZldGNoaW5nRW5hYmxlZENoYW5nZWQoKTsKICAgICB2b2lkIHN0b3JhZ2VCbG9ja2luZ1Bv
bGljeUNoYW5nZWQoKTsKICAgICB2b2lkIGJhY2tncm91bmRTaG91bGRFeHRlbmRCZXlvbmRQYWdl
Q2hhbmdlZCgpOwotICAgIHZvaWQgc2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZENo
YW5nZWQoKTsKKyAgICB2b2lkIHNjcm9sbGluZ1BlcmZvcm1hbmNlVGVzdGluZ0VuYWJsZWRDaGFu
Z2VkKCk7CiAgICAgdm9pZCBoaWRkZW5QYWdlRE9NVGltZXJUaHJvdHRsaW5nU3RhdGVDaGFuZ2Vk
KCk7CiAgICAgdm9pZCBoaWRkZW5QYWdlQ1NTQW5pbWF0aW9uU3VzcGVuc2lvbkVuYWJsZWRDaGFu
Z2VkKCk7CiAgICAgdm9pZCByZXNvdXJjZVVzYWdlT3ZlcmxheVZpc2libGVDaGFuZ2VkKCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nv
b3JkaW5hdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xs
aW5nQ29vcmRpbmF0b3IuY3BwCmluZGV4IGRlNTQwNWUyNjRjYWNhZWMwYjM1YTUyNDg3NDcwMGY0
NzQxZjdiNDcuLmY3YzA0YjFkZTAwMjc5NTlkOGNlNjNiNjA3ZGM2MGNhMTY5YTM0YzUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29vcmRp
bmF0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xs
aW5nQ29vcmRpbmF0b3IuY3BwCkBAIC02NDUsNiArNjQ1LDcgQEAgdm9pZCBBc3luY1Njcm9sbGlu
Z0Nvb3JkaW5hdG9yOjpzZXRGcmFtZVNjcm9sbGluZ05vZGVTdGF0ZShTY3JvbGxpbmdOb2RlSUQg
bm9kZUkKICAgICBpZiAoIWlzPFNjcm9sbGluZ1N0YXRlRnJhbWVTY3JvbGxpbmdOb2RlPihzdGF0
ZU5vZGUpKQogICAgICAgICByZXR1cm47CiAKKyAgICBhdXRvJiBzZXR0aW5ncyA9IG1fcGFnZS0+
bWFpbkZyYW1lKCkuc2V0dGluZ3MoKTsKICAgICBhdXRvJiBmcmFtZVNjcm9sbGluZ05vZGUgPSBk
b3duY2FzdDxTY3JvbGxpbmdTdGF0ZUZyYW1lU2Nyb2xsaW5nTm9kZT4oKnN0YXRlTm9kZSk7CiAK
ICAgICBmcmFtZVNjcm9sbGluZ05vZGUuc2V0RnJhbWVTY2FsZUZhY3RvcihmcmFtZVZpZXcuZnJh
bWUoKS5mcmFtZVNjYWxlRmFjdG9yKCkpOwpAQCAtNjUyLDggKzY1Myw5IEBAIHZvaWQgQXN5bmNT
Y3JvbGxpbmdDb29yZGluYXRvcjo6c2V0RnJhbWVTY3JvbGxpbmdOb2RlU3RhdGUoU2Nyb2xsaW5n
Tm9kZUlEIG5vZGVJCiAgICAgZnJhbWVTY3JvbGxpbmdOb2RlLnNldEZvb3RlckhlaWdodChmcmFt
ZVZpZXcuZm9vdGVySGVpZ2h0KCkpOwogICAgIGZyYW1lU2Nyb2xsaW5nTm9kZS5zZXRUb3BDb250
ZW50SW5zZXQoZnJhbWVWaWV3LnRvcENvbnRlbnRJbnNldCgpKTsKICAgICBmcmFtZVNjcm9sbGlu
Z05vZGUuc2V0TGF5b3V0Vmlld3BvcnQoZnJhbWVWaWV3LmxheW91dFZpZXdwb3J0UmVjdCgpKTsK
LSAgICBmcmFtZVNjcm9sbGluZ05vZGUuc2V0QXN5bmNGcmFtZU9yT3ZlcmZsb3dTY3JvbGxpbmdF
bmFibGVkKGFzeW5jRnJhbWVPck92ZXJmbG93U2Nyb2xsaW5nRW5hYmxlZCgpKTsKLSAgICBmcmFt
ZVNjcm9sbGluZ05vZGUuc2V0V2hlZWxFdmVudEdlc3R1cmVzQmVjb21lTm9uQmxvY2tpbmcod2hl
ZWxFdmVudEdlc3R1cmVzQmVjb21lTm9uQmxvY2tpbmcoKSk7CisgICAgZnJhbWVTY3JvbGxpbmdO
b2RlLnNldEFzeW5jRnJhbWVPck92ZXJmbG93U2Nyb2xsaW5nRW5hYmxlZChzZXR0aW5ncy5hc3lu
Y0ZyYW1lU2Nyb2xsaW5nRW5hYmxlZCgpIHx8IHNldHRpbmdzLmFzeW5jT3ZlcmZsb3dTY3JvbGxp
bmdFbmFibGVkKCkpOworICAgIGZyYW1lU2Nyb2xsaW5nTm9kZS5zZXRTY3JvbGxpbmdQZXJmb3Jt
YW5jZVRlc3RpbmdFbmFibGVkKHNldHRpbmdzLnNjcm9sbGluZ1BlcmZvcm1hbmNlVGVzdGluZ0Vu
YWJsZWQoKSk7CisgICAgZnJhbWVTY3JvbGxpbmdOb2RlLnNldFdoZWVsRXZlbnRHZXN0dXJlc0Jl
Y29tZU5vbkJsb2NraW5nKHNldHRpbmdzLndoZWVsRXZlbnRHZXN0dXJlc0JlY29tZU5vbkJsb2Nr
aW5nKCkpOwogCiAgICAgZnJhbWVTY3JvbGxpbmdOb2RlLnNldE1pbkxheW91dFZpZXdwb3J0T3Jp
Z2luKGZyYW1lVmlldy5taW5TdGFibGVMYXlvdXRWaWV3cG9ydE9yaWdpbigpKTsKICAgICBmcmFt
ZVNjcm9sbGluZ05vZGUuc2V0TWF4TGF5b3V0Vmlld3BvcnRPcmlnaW4oZnJhbWVWaWV3Lm1heFN0
YWJsZUxheW91dFZpZXdwb3J0T3JpZ2luKCkpOwpAQCAtODMxLDE4ICs4MzMsNiBAQCB2b2lkIEFz
eW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OnNldFNjcm9sbFBpbm5pbmdCZWhhdmlvcihTY3JvbGxQ
aW5uaW5nQmVoYXZpb3IgcAogICAgIHNjcm9sbGluZ1RyZWUoKS0+c2V0U2Nyb2xsUGlubmluZ0Jl
aGF2aW9yKHBpbm5pbmcpOwogfQogCi1ib29sIEFzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OmFz
eW5jRnJhbWVPck92ZXJmbG93U2Nyb2xsaW5nRW5hYmxlZCgpIGNvbnN0Ci17Ci0gICAgYXV0byYg
c2V0dGluZ3MgPSBtX3BhZ2UtPm1haW5GcmFtZSgpLnNldHRpbmdzKCk7Ci0gICAgcmV0dXJuIHNl
dHRpbmdzLmFzeW5jRnJhbWVTY3JvbGxpbmdFbmFibGVkKCkgfHwgc2V0dGluZ3MuYXN5bmNPdmVy
Zmxvd1Njcm9sbGluZ0VuYWJsZWQoKTsKLX0KLQotYm9vbCBBc3luY1Njcm9sbGluZ0Nvb3JkaW5h
dG9yOjp3aGVlbEV2ZW50R2VzdHVyZXNCZWNvbWVOb25CbG9ja2luZygpIGNvbnN0Ci17Ci0gICAg
YXV0byYgc2V0dGluZ3MgPSBtX3BhZ2UtPm1haW5GcmFtZSgpLnNldHRpbmdzKCk7Ci0gICAgcmV0
dXJuIHNldHRpbmdzLndoZWVsRXZlbnRHZXN0dXJlc0JlY29tZU5vbkJsb2NraW5nKCk7Ci19Ci0K
IFNjcm9sbGluZ05vZGVJRCBBc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yOjpzY3JvbGxhYmxlQ29u
dGFpbmVyTm9kZUlEKGNvbnN0IFJlbmRlck9iamVjdCYgcmVuZGVyZXIpIGNvbnN0CiB7CiAgICAg
aWYgKGF1dG8gb3ZlcmZsb3dTY3JvbGxpbmdOb2RlSUQgPSByZW5kZXJlci52aWV3KCkuY29tcG9z
aXRvcigpLmFzeW5jU2Nyb2xsYWJsZUNvbnRhaW5lck5vZGVJRChyZW5kZXJlcikpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3JkaW5h
dG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9Bc3luY1Njcm9sbGluZ0Nvb3Jk
aW5hdG9yLmgKaW5kZXggOWUxMjEwYmU4ZGFjNDE2ZmM3NGVhNmY3N2IzYWJjYzU3YmY5MjE2My4u
Nzk5YTAxMjY0MThhNDYxZGE5OWU1MjgxZDdlZmNkZTZjM2Q5ZDJkMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvQXN5bmNTY3JvbGxpbmdDb29yZGluYXRvci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL0FzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0
b3IuaApAQCAtOTQsOSArOTQsNiBAQCBwcml2YXRlOgogICAgIGJvb2wgaXNBc3luY1Njcm9sbGlu
Z0Nvb3JkaW5hdG9yKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gdHJ1ZTsgfQogCiAgICAgYm9v
bCBoYXNWaXNpYmxlU2xvd1JlcGFpbnRWaWV3cG9ydENvbnN0cmFpbmVkT2JqZWN0cyhjb25zdCBG
cmFtZVZpZXcmKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBmYWxzZTsgfQotICAgIAotICAgIGJv
b2wgYXN5bmNGcmFtZU9yT3ZlcmZsb3dTY3JvbGxpbmdFbmFibGVkKCkgY29uc3Q7Ci0gICAgYm9v
bCB3aGVlbEV2ZW50R2VzdHVyZXNCZWNvbWVOb25CbG9ja2luZygpIGNvbnN0OwogCiAgICAgV0VC
Q09SRV9FWFBPUlQgU2Nyb2xsaW5nTm9kZUlEIHNjcm9sbGFibGVDb250YWluZXJOb2RlSUQoY29u
c3QgUmVuZGVyT2JqZWN0JikgY29uc3Qgb3ZlcnJpZGU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1N0YXRlRnJhbWVTY3JvbGxpbmdOb2RlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1N0YXRlRnJhbWVTY3Jv
bGxpbmdOb2RlLmNwcAppbmRleCBmOGU5NWQ4MDQ1ODg3MjY3YTU2YWIyZjc4OTU3MWI0ZGFmYTll
MTFjLi42YzVlNzE4OTVjZWQ5NjdiODIwMzA5MzlkY2MzMWMyOGNjZDc3MTY0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdTdGF0ZUZyYW1lU2Nyb2xs
aW5nTm9kZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5n
U3RhdGVGcmFtZVNjcm9sbGluZ05vZGUuY3BwCkBAIC02MCw2ICs2MCw3IEBAIFNjcm9sbGluZ1N0
YXRlRnJhbWVTY3JvbGxpbmdOb2RlOjpTY3JvbGxpbmdTdGF0ZUZyYW1lU2Nyb2xsaW5nTm9kZShj
b25zdCBTY3JvbGxpCiAgICAgLCBtX3Zpc3VhbFZpZXdwb3J0SXNTbWFsbGVyVGhhbkxheW91dFZp
ZXdwb3J0KHN0YXRlTm9kZS52aXN1YWxWaWV3cG9ydElzU21hbGxlclRoYW5MYXlvdXRWaWV3cG9y
dCgpKQogICAgICwgbV9hc3luY0ZyYW1lT3JPdmVyZmxvd1Njcm9sbGluZ0VuYWJsZWQoc3RhdGVO
b2RlLmFzeW5jRnJhbWVPck92ZXJmbG93U2Nyb2xsaW5nRW5hYmxlZCgpKQogICAgICwgbV93aGVl
bEV2ZW50R2VzdHVyZXNCZWNvbWVOb25CbG9ja2luZyhzdGF0ZU5vZGUud2hlZWxFdmVudEdlc3R1
cmVzQmVjb21lTm9uQmxvY2tpbmcoKSkKKyAgICAsIG1fc2Nyb2xsaW5nUGVyZm9ybWFuY2VUZXN0
aW5nRW5hYmxlZChzdGF0ZU5vZGUuc2Nyb2xsaW5nUGVyZm9ybWFuY2VUZXN0aW5nRW5hYmxlZCgp
KQogewogICAgIGlmIChoYXNDaGFuZ2VkUHJvcGVydHkoUHJvcGVydHk6OlJvb3RDb250ZW50c0xh
eWVyKSkKICAgICAgICAgc2V0Um9vdENvbnRlbnRzTGF5ZXIoc3RhdGVOb2RlLnJvb3RDb250ZW50
c0xheWVyKCkudG9SZXByZXNlbnRhdGlvbihhZG9wdGl2ZVRyZWUucHJlZmVycmVkTGF5ZXJSZXBy
ZXNlbnRhdGlvbigpKSk7CkBAIC0xMDYsNiArMTA3LDcgQEAgT3B0aW9uU2V0PFNjcm9sbGluZ1N0
YXRlTm9kZTo6UHJvcGVydHk+IFNjcm9sbGluZ1N0YXRlRnJhbWVTY3JvbGxpbmdOb2RlOjphcHBs
aWMKICAgICAgICAgUHJvcGVydHk6OlZpc3VhbFZpZXdwb3J0SXNTbWFsbGVyVGhhbkxheW91dFZp
ZXdwb3J0LAogICAgICAgICBQcm9wZXJ0eTo6QXN5bmNGcmFtZU9yT3ZlcmZsb3dTY3JvbGxpbmdF
bmFibGVkLAogICAgICAgICBQcm9wZXJ0eTo6V2hlZWxFdmVudEdlc3R1cmVzQmVjb21lTm9uQmxv
Y2tpbmcsCisgICAgICAgIFByb3BlcnR5OjpTY3JvbGxpbmdQZXJmb3JtYW5jZVRlc3RpbmdFbmFi
bGVkLAogICAgICAgICBQcm9wZXJ0eTo6TGF5b3V0Vmlld3BvcnQsCiAgICAgICAgIFByb3BlcnR5
OjpNaW5MYXlvdXRWaWV3cG9ydE9yaWdpbiwKICAgICAgICAgUHJvcGVydHk6Ok1heExheW91dFZp
ZXdwb3J0T3JpZ2luLApAQCAtMjk4LDYgKzMwMCwxNSBAQCB2b2lkIFNjcm9sbGluZ1N0YXRlRnJh
bWVTY3JvbGxpbmdOb2RlOjpzZXRXaGVlbEV2ZW50R2VzdHVyZXNCZWNvbWVOb25CbG9ja2luZyhi
bwogICAgIHNldFByb3BlcnR5Q2hhbmdlZChQcm9wZXJ0eTo6V2hlZWxFdmVudEdlc3R1cmVzQmVj
b21lTm9uQmxvY2tpbmcpOwogfQogCit2b2lkIFNjcm9sbGluZ1N0YXRlRnJhbWVTY3JvbGxpbmdO
b2RlOjpzZXRTY3JvbGxpbmdQZXJmb3JtYW5jZVRlc3RpbmdFbmFibGVkKGJvb2wgZW5hYmxlZCkK
K3sKKyAgICBpZiAoZW5hYmxlZCA9PSBtX3Njcm9sbGluZ1BlcmZvcm1hbmNlVGVzdGluZ0VuYWJs
ZWQpCisgICAgICAgIHJldHVybjsKKyAgICAKKyAgICBtX3Njcm9sbGluZ1BlcmZvcm1hbmNlVGVz
dGluZ0VuYWJsZWQgPSBlbmFibGVkOworICAgIHNldFByb3BlcnR5Q2hhbmdlZChQcm9wZXJ0eTo6
U2Nyb2xsaW5nUGVyZm9ybWFuY2VUZXN0aW5nRW5hYmxlZCk7Cit9CisKIHZvaWQgU2Nyb2xsaW5n
U3RhdGVGcmFtZVNjcm9sbGluZ05vZGU6OmR1bXBQcm9wZXJ0aWVzKFRleHRTdHJlYW0mIHRzLCBT
Y3JvbGxpbmdTdGF0ZVRyZWVBc1RleHRCZWhhdmlvciBiZWhhdmlvcikgY29uc3QKIHsKICAgICB0
cyA8PCAiRnJhbWUgc2Nyb2xsaW5nIG5vZGUiOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nU3RhdGVGcmFtZVNjcm9sbGluZ05vZGUuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1N0YXRlRnJhbWVTY3JvbGxpbmdOb2Rl
LmgKaW5kZXggYTIzNWEzYmJjMzRlNTg4ODlkYTE4YWQ5YWMwODc1MDk2MzQwYTViMi4uODdiMGM3
Yzc2OWZhNWIxMTNiNDVhMDg1YWUzYjNmNWI3ZTE5MTgzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nU3RhdGVGcmFtZVNjcm9sbGluZ05vZGUuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdTdGF0ZUZyYW1lU2Ny
b2xsaW5nTm9kZS5oCkBAIC0xMTEsNiArMTExLDkgQEAgcHVibGljOgogICAgIGJvb2wgYXN5bmNG
cmFtZU9yT3ZlcmZsb3dTY3JvbGxpbmdFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV9hc3luY0Zy
YW1lT3JPdmVyZmxvd1Njcm9sbGluZ0VuYWJsZWQ7IH0KICAgICB2b2lkIHNldEFzeW5jRnJhbWVP
ck92ZXJmbG93U2Nyb2xsaW5nRW5hYmxlZChib29sKTsKIAorICAgIGJvb2wgc2Nyb2xsaW5nUGVy
Zm9ybWFuY2VUZXN0aW5nRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fc2Nyb2xsaW5nUGVyZm9y
bWFuY2VUZXN0aW5nRW5hYmxlZDsgfQorICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0U2Nyb2xs
aW5nUGVyZm9ybWFuY2VUZXN0aW5nRW5hYmxlZChib29sKTsKKwogICAgIGJvb2wgd2hlZWxFdmVu
dEdlc3R1cmVzQmVjb21lTm9uQmxvY2tpbmcoKSBjb25zdCB7IHJldHVybiBtX3doZWVsRXZlbnRH
ZXN0dXJlc0JlY29tZU5vbkJsb2NraW5nOyB9CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRX
aGVlbEV2ZW50R2VzdHVyZXNCZWNvbWVOb25CbG9ja2luZyhib29sKTsKIApAQCAtMTQ1LDYgKzE0
OCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX3Zpc3VhbFZpZXdwb3J0SXNTbWFsbGVyVGhhbkxh
eW91dFZpZXdwb3J0IHsgZmFsc2UgfTsKICAgICBib29sIG1fYXN5bmNGcmFtZU9yT3ZlcmZsb3dT
Y3JvbGxpbmdFbmFibGVkIHsgZmFsc2UgfTsKICAgICBib29sIG1fd2hlZWxFdmVudEdlc3R1cmVz
QmVjb21lTm9uQmxvY2tpbmcgeyBmYWxzZSB9OworICAgIGJvb2wgbV9zY3JvbGxpbmdQZXJmb3Jt
YW5jZVRlc3RpbmdFbmFibGVkIHsgZmFsc2UgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1N0
YXRlTm9kZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nU3RhdGVO
b2RlLmgKaW5kZXggYTUxZDIzNjM0MzRiZjE2ZTQyOTE3MGJkMWM4ZTRlZmFkOGM3MGFlZi4uYjNk
NTUwYzJlNzM3NzBiZWNjNzI1MjNkMTVjOTI1ZWY1NmQ2OTNkNyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nU3RhdGVOb2RlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nU3RhdGVOb2RlLmgKQEAgLTI1OSwxNyAr
MjU5LDE4IEBAIHB1YmxpYzoKICAgICAgICAgVmlzdWFsVmlld3BvcnRJc1NtYWxsZXJUaGFuTGF5
b3V0Vmlld3BvcnQgICA9IDFMTFUgPDwgMzUsCiAgICAgICAgIEFzeW5jRnJhbWVPck92ZXJmbG93
U2Nyb2xsaW5nRW5hYmxlZCAgICAgICAgPSAxTExVIDw8IDM2LAogICAgICAgICBXaGVlbEV2ZW50
R2VzdHVyZXNCZWNvbWVOb25CbG9ja2luZyAgICAgICAgID0gMUxMVSA8PCAzNywKLSAgICAgICAg
TGF5b3V0Vmlld3BvcnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA9IDFMTFUgPDwgMzgs
Ci0gICAgICAgIE1pbkxheW91dFZpZXdwb3J0T3JpZ2luICAgICAgICAgICAgICAgICAgICAgPSAx
TExVIDw8IDM5LAotICAgICAgICBNYXhMYXlvdXRWaWV3cG9ydE9yaWdpbiAgICAgICAgICAgICAg
ICAgICAgID0gMUxMVSA8PCA0MCwKLSAgICAgICAgT3ZlcnJpZGVWaXN1YWxWaWV3cG9ydFNpemUg
ICAgICAgICAgICAgICAgICA9IDFMTFUgPDwgNDEsCisgICAgICAgIFNjcm9sbGluZ1BlcmZvcm1h
bmNlVGVzdGluZ0VuYWJsZWQgICAgICAgICAgPSAxTExVIDw8IDM4LAorICAgICAgICBMYXlvdXRW
aWV3cG9ydCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gMUxMVSA8PCAzOSwKKyAgICAg
ICAgTWluTGF5b3V0Vmlld3BvcnRPcmlnaW4gICAgICAgICAgICAgICAgICAgICA9IDFMTFUgPDwg
NDAsCisgICAgICAgIE1heExheW91dFZpZXdwb3J0T3JpZ2luICAgICAgICAgICAgICAgICAgICAg
PSAxTExVIDw8IDQxLAorICAgICAgICBPdmVycmlkZVZpc3VhbFZpZXdwb3J0U2l6ZSAgICAgICAg
ICAgICAgICAgID0gMUxMVSA8PCA0MiwKICAgICAgICAgLy8gU2Nyb2xsaW5nU3RhdGVQb3NpdGlv
bmVkTm9kZQotICAgICAgICBSZWxhdGVkT3ZlcmZsb3dTY3JvbGxpbmdOb2RlcyAgICAgICAgICAg
ICAgID0gMUxMVSA8PCA0MiwKLSAgICAgICAgTGF5b3V0Q29uc3RyYWludERhdGEgICAgICAgICAg
ICAgICAgICAgICAgICA9IDFMTFUgPDwgNDMsCisgICAgICAgIFJlbGF0ZWRPdmVyZmxvd1Njcm9s
bGluZ05vZGVzICAgICAgICAgICAgICAgPSAxTExVIDw8IDQzLAorICAgICAgICBMYXlvdXRDb25z
dHJhaW50RGF0YSAgICAgICAgICAgICAgICAgICAgICAgID0gMUxMVSA8PCA0NCwKICAgICAgICAg
Ly8gU2Nyb2xsaW5nU3RhdGVGaXhlZE5vZGUsIFNjcm9sbGluZ1N0YXRlU3RpY2t5Tm9kZQotICAg
ICAgICBWaWV3cG9ydENvbnN0cmFpbnRzICAgICAgICAgICAgICAgICAgICAgICAgID0gMUxMVSA8
PCA0NCwKKyAgICAgICAgVmlld3BvcnRDb25zdHJhaW50cyAgICAgICAgICAgICAgICAgICAgICAg
ICA9IDFMTFUgPDwgNDUsCiAgICAgICAgIC8vIFNjcm9sbGluZ1N0YXRlT3ZlcmZsb3dTY3JvbGxQ
cm94eU5vZGUKLSAgICAgICAgT3ZlcmZsb3dTY3JvbGxpbmdOb2RlICAgICAgICAgICAgICAgICAg
ICAgICA9IDFMTFUgPDwgNDUsCisgICAgICAgIE92ZXJmbG93U2Nyb2xsaW5nTm9kZSAgICAgICAg
ICAgICAgICAgICAgICAgPSAxTExVIDw8IDQ2LAogICAgIH07CiAgICAgCiAgICAgYm9vbCBoYXND
aGFuZ2VkUHJvcGVydGllcygpIGNvbnN0IHsgcmV0dXJuICFtX2NoYW5nZWRQcm9wZXJ0aWVzLmlz
RW1wdHkoKTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Ny
b2xsaW5nVHJlZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdU
cmVlLmNwcAppbmRleCBiMjA1NTMyYjIzMzU4YjI5OWI1OTk3ZDc0NzBkODNhYThlMzAzZTJhLi4x
Y2VmMzFiYjM2NjUxNmQzYjRhOGNlODFmYzE5ZGZhYjZlOTJhMGQ1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlLmNwcApAQCAtMjcyLDYgKzI3Miw3
IEBAIHZvaWQgU2Nyb2xsaW5nVHJlZTo6Y29tbWl0VHJlZVN0YXRlKHN0ZDo6dW5pcXVlX3B0cjxT
Y3JvbGxpbmdTdGF0ZVRyZWU+JiYgc2Nyb2xsCiAgICAgICAgICAgICB8fCByb290Tm9kZS0+aGFz
Q2hhbmdlZFByb3BlcnR5KFNjcm9sbGluZ1N0YXRlTm9kZTo6UHJvcGVydHk6OlNjcm9sbGVkQ29u
dGVudHNMYXllcikKICAgICAgICAgICAgIHx8IHJvb3ROb2RlLT5oYXNDaGFuZ2VkUHJvcGVydHko
U2Nyb2xsaW5nU3RhdGVOb2RlOjpQcm9wZXJ0eTo6QXN5bmNGcmFtZU9yT3ZlcmZsb3dTY3JvbGxp
bmdFbmFibGVkKQogICAgICAgICAgICAgfHwgcm9vdE5vZGUtPmhhc0NoYW5nZWRQcm9wZXJ0eShT
Y3JvbGxpbmdTdGF0ZU5vZGU6OlByb3BlcnR5OjpXaGVlbEV2ZW50R2VzdHVyZXNCZWNvbWVOb25C
bG9ja2luZykKKyAgICAgICAgICAgIHx8IHJvb3ROb2RlLT5oYXNDaGFuZ2VkUHJvcGVydHkoU2Ny
b2xsaW5nU3RhdGVOb2RlOjpQcm9wZXJ0eTo6U2Nyb2xsaW5nUGVyZm9ybWFuY2VUZXN0aW5nRW5h
YmxlZCkKICAgICAgICAgICAgIHx8IHJvb3ROb2RlLT5oYXNDaGFuZ2VkUHJvcGVydHkoU2Nyb2xs
aW5nU3RhdGVOb2RlOjpQcm9wZXJ0eTo6SXNNb25pdG9yaW5nV2hlZWxFdmVudHMpKSkgewogICAg
ICAgICBMb2NrSG9sZGVyIGxvY2sobV90cmVlU3RhdGVNdXRleCk7CiAKQEAgLTI4Nyw2ICsyODgs
OSBAQCB2b2lkIFNjcm9sbGluZ1RyZWU6OmNvbW1pdFRyZWVTdGF0ZShzdGQ6OnVuaXF1ZV9wdHI8
U2Nyb2xsaW5nU3RhdGVUcmVlPiYmIHNjcm9sbAogICAgICAgICBpZiAocm9vdFN0YXRlTm9kZUNo
YW5nZWQgfHwgcm9vdE5vZGUtPmhhc0NoYW5nZWRQcm9wZXJ0eShTY3JvbGxpbmdTdGF0ZU5vZGU6
OlByb3BlcnR5OjpXaGVlbEV2ZW50R2VzdHVyZXNCZWNvbWVOb25CbG9ja2luZykpCiAgICAgICAg
ICAgICBtX3doZWVsRXZlbnRHZXN0dXJlc0JlY29tZU5vbkJsb2NraW5nID0gc2Nyb2xsaW5nU3Rh
dGVUcmVlLT5yb290U3RhdGVOb2RlKCktPndoZWVsRXZlbnRHZXN0dXJlc0JlY29tZU5vbkJsb2Nr
aW5nKCk7CiAKKyAgICAgICAgaWYgKHJvb3RTdGF0ZU5vZGVDaGFuZ2VkIHx8IHJvb3ROb2RlLT5o
YXNDaGFuZ2VkUHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVOb2RlOjpQcm9wZXJ0eTo6U2Nyb2xsaW5n
UGVyZm9ybWFuY2VUZXN0aW5nRW5hYmxlZCkpCisgICAgICAgICAgICBtX3Njcm9sbGluZ1BlcmZv
cm1hbmNlVGVzdGluZ0VuYWJsZWQgPSBzY3JvbGxpbmdTdGF0ZVRyZWUtPnJvb3RTdGF0ZU5vZGUo
KS0+c2Nyb2xsaW5nUGVyZm9ybWFuY2VUZXN0aW5nRW5hYmxlZCgpOworCiAgICAgICAgIGlmIChy
b290U3RhdGVOb2RlQ2hhbmdlZCB8fCByb290Tm9kZS0+aGFzQ2hhbmdlZFByb3BlcnR5KFNjcm9s
bGluZ1N0YXRlTm9kZTo6UHJvcGVydHk6OklzTW9uaXRvcmluZ1doZWVsRXZlbnRzKSkKICAgICAg
ICAgICAgIG1faXNNb25pdG9yaW5nV2hlZWxFdmVudHMgPSBzY3JvbGxpbmdTdGF0ZVRyZWUtPnJv
b3RTdGF0ZU5vZGUoKS0+aXNNb25pdG9yaW5nV2hlZWxFdmVudHMoKTsKICAgICB9CkBAIC02OTYs
MTYgKzcwMCw2IEBAIE9wdGlvbmFsPHVuc2lnbmVkPiBTY3JvbGxpbmdUcmVlOjpub21pbmFsRnJh
bWVzUGVyU2Vjb25kKCkKICAgICByZXR1cm4gbV90cmVlU3RhdGUubm9taW5hbEZyYW1lc1BlclNl
Y29uZDsKIH0KIAotdm9pZCBTY3JvbGxpbmdUcmVlOjpzZXRTY3JvbGxpbmdQZXJmb3JtYW5jZUxv
Z2dpbmdFbmFibGVkKGJvb2wgZmxhZykKLXsKLSAgICBtX3Njcm9sbGluZ1BlcmZvcm1hbmNlTG9n
Z2luZ0VuYWJsZWQgPSBmbGFnOwotfQotCi1ib29sIFNjcm9sbGluZ1RyZWU6OnNjcm9sbGluZ1Bl
cmZvcm1hbmNlTG9nZ2luZ0VuYWJsZWQoKQotewotICAgIHJldHVybiBtX3Njcm9sbGluZ1BlcmZv
cm1hbmNlTG9nZ2luZ0VuYWJsZWQ7Ci19Ci0KIFN0cmluZyBTY3JvbGxpbmdUcmVlOjpzY3JvbGxp
bmdUcmVlQXNUZXh0KFNjcm9sbGluZ1N0YXRlVHJlZUFzVGV4dEJlaGF2aW9yIGJlaGF2aW9yKQog
ewogICAgIFRleHRTdHJlYW0gdHMoVGV4dFN0cmVhbTo6TGluZU1vZGU6Ok11bHRpcGxlTGluZSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVl
LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlLmgKaW5kZXgg
MTU2Y2RlMDhkMDZiMzk5MGI1NzJhYjU0MDE5ZTZmNmJmMThlMjYwYS4uODMxZjU2NmQ1YjM5MTgw
ODM3YWE0ZmI2ODQ3MGY0N2UwMWU1YmYyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Ny
b2xsaW5nL1Njcm9sbGluZ1RyZWUuaApAQCAtOTUsNiArOTUsOSBAQCBwdWJsaWM6CiAgICAgYm9v
bCB3aGVlbEV2ZW50R2VzdHVyZXNCZWNvbWVOb25CbG9ja2luZygpIGNvbnN0IHsgcmV0dXJuIG1f
d2hlZWxFdmVudEdlc3R1cmVzQmVjb21lTm9uQmxvY2tpbmc7IH0KICAgICB2b2lkIHNldFdoZWVs
RXZlbnRHZXN0dXJlc0JlY29tZU5vbkJsb2NraW5nKGJvb2wgdmFsdWUpIHsgbV93aGVlbEV2ZW50
R2VzdHVyZXNCZWNvbWVOb25CbG9ja2luZyA9IHZhbHVlOyB9CiAKKyAgICBib29sIHNjcm9sbGlu
Z1BlcmZvcm1hbmNlVGVzdGluZ0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX3Njcm9sbGluZ1Bl
cmZvcm1hbmNlVGVzdGluZ0VuYWJsZWQ7IH0KKyAgICB2b2lkIHNldFNjcm9sbGluZ1BlcmZvcm1h
bmNlVGVzdGluZ0VuYWJsZWQoYm9vbCB2YWx1ZSkgeyBtX3Njcm9sbGluZ1BlcmZvcm1hbmNlVGVz
dGluZ0VuYWJsZWQgPSB2YWx1ZTsgfQorCiAgICAgV0VCQ09SRV9FWFBPUlQgT3B0aW9uU2V0PFdo
ZWVsRXZlbnRQcm9jZXNzaW5nU3RlcHM+IGRldGVybWluZVdoZWVsRXZlbnRQcm9jZXNzaW5nKGNv
bnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOwogICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgV2hl
ZWxFdmVudEhhbmRsaW5nUmVzdWx0IGhhbmRsZVdoZWVsRXZlbnQoY29uc3QgUGxhdGZvcm1XaGVl
bEV2ZW50JiwgT3B0aW9uU2V0PFdoZWVsRXZlbnRQcm9jZXNzaW5nU3RlcHM+ID0geyB9KTsKIApA
QCAtMTc4LDkgKzE4MSw2IEBAIHB1YmxpYzoKIAogICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgd2ls
bFdoZWVsRXZlbnRTdGFydFN3aXBlR2VzdHVyZShjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsK
IAotICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0U2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5n
RW5hYmxlZChib29sIGZsYWcpOwotICAgIGJvb2wgc2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5n
RW5hYmxlZCgpOwotCiAgICAgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZSogcm9vdE5v
ZGUoKSBjb25zdCB7IHJldHVybiBtX3Jvb3ROb2RlLmdldCgpOyB9CiAgICAgT3B0aW9uYWw8U2Ny
b2xsaW5nTm9kZUlEPiBsYXRjaGVkTm9kZUlEKCkgY29uc3Q7CiAgICAgdm9pZCBjbGVhckxhdGNo
ZWROb2RlKCk7CkBAIC0zMjgsNyArMzI4LDcgQEAgcHJpdmF0ZToKICAgICB1bnNpZ25lZCBtX2Zp
eGVkT3JTdGlja3lOb2RlQ291bnQgeyAwIH07CiAgICAgYm9vbCBtX2lzSGFuZGxpbmdQcm9ncmFt
bWF0aWNTY3JvbGwgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9pc01vbml0b3JpbmdXaGVlbEV2ZW50
cyB7IGZhbHNlIH07Ci0gICAgYm9vbCBtX3Njcm9sbGluZ1BlcmZvcm1hbmNlTG9nZ2luZ0VuYWJs
ZWQgeyBmYWxzZSB9OworICAgIGJvb2wgbV9zY3JvbGxpbmdQZXJmb3JtYW5jZVRlc3RpbmdFbmFi
bGVkIHsgZmFsc2UgfTsKICAgICBib29sIG1fYXN5bmNGcmFtZU9yT3ZlcmZsb3dTY3JvbGxpbmdF
bmFibGVkIHsgZmFsc2UgfTsKICAgICBib29sIG1fd2hlZWxFdmVudEdlc3R1cmVzQmVjb21lTm9u
QmxvY2tpbmcgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9uZWVkc0FwcGx5TGF5ZXJQb3NpdGlvbnNB
ZnRlckNvbW1pdCB7IGZhbHNlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Nj
cm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5tbSBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdO
b2RlTWFjLm1tCmluZGV4IGUwYmZmYjg2YmEyODFhNzgwZTY4ZGFiNDMyOGVmYmFjMTg5NzUxNzku
LjI2ZjgyZGZkNTNkZThlZjBkYWI1ZjQ4Yzc3ZTI1MWU2YmQ0YzU3YmYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxp
bmdOb2RlTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9TY3Jv
bGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLm1tCkBAIC05MCw3ICs5MCw3IEBAIHZvaWQg
U2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6Y29tbWl0U3RhdGVCZWZvcmVDaGls
ZHJlbihjb25zdCBTY3JvbGxpCiAgICAgaWYgKHNjcm9sbGluZ1N0YXRlTm9kZS5oYXNDaGFuZ2Vk
UHJvcGVydHkoU2Nyb2xsaW5nU3RhdGVOb2RlOjpQcm9wZXJ0eTo6UmVhc29uc0ZvclN5bmNocm9u
b3VzU2Nyb2xsaW5nKSkKICAgICAgICAgbG9nU2Nyb2xsaW5nTW9kZSA9IHRydWU7CiAKLSAgICBp
ZiAobG9nU2Nyb2xsaW5nTW9kZSAmJiBpc1Jvb3ROb2RlKCkgJiYgc2Nyb2xsaW5nVHJlZSgpLnNj
cm9sbGluZ1BlcmZvcm1hbmNlTG9nZ2luZ0VuYWJsZWQoKSkKKyAgICBpZiAobG9nU2Nyb2xsaW5n
TW9kZSAmJiBpc1Jvb3ROb2RlKCkgJiYgc2Nyb2xsaW5nVHJlZSgpLnNjcm9sbGluZ1BlcmZvcm1h
bmNlVGVzdGluZ0VuYWJsZWQoKSkKICAgICAgICAgc2Nyb2xsaW5nVHJlZSgpLnJlcG9ydFN5bmNo
cm9ub3VzU2Nyb2xsaW5nUmVhc29uc0NoYW5nZWQoTW9ub3RvbmljVGltZTo6bm93KCksIHN5bmNo
cm9ub3VzU2Nyb2xsaW5nUmVhc29ucygpKTsKIAogICAgIG1fZGVsZWdhdGUudXBkYXRlRnJvbVN0
YXRlTm9kZShzY3JvbGxpbmdTdGF0ZU5vZGUpOwpAQCAtMTU1LDcgKzE1NSw3IEBAIHZvaWQgU2Ny
b2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6Y3VycmVudFNjcm9sbFBvc2l0aW9uQ2hh
bmdlZChTY3JvbGxUeXBlCiAKICAgICBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlOjpj
dXJyZW50U2Nyb2xsUG9zaXRpb25DaGFuZ2VkKHNjcm9sbFR5cGUsIGhhc1N5bmNocm9ub3VzU2Ny
b2xsaW5nUmVhc29ucygpID8gU2Nyb2xsaW5nTGF5ZXJQb3NpdGlvbkFjdGlvbjo6U2V0IDogYWN0
aW9uKTsKIAotICAgIGlmIChzY3JvbGxpbmdUcmVlKCkuc2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dn
aW5nRW5hYmxlZCgpKSB7CisgICAgaWYgKHNjcm9sbGluZ1RyZWUoKS5zY3JvbGxpbmdQZXJmb3Jt
YW5jZVRlc3RpbmdFbmFibGVkKCkpIHsKICAgICAgICAgdW5zaWduZWQgdW5maWxsZWRBcmVhID0g
ZXhwb3NlZFVuZmlsbGVkQXJlYSgpOwogICAgICAgICBpZiAodW5maWxsZWRBcmVhIHx8IG1fbGFz
dFNjcm9sbEhhZFVuZmlsbGVkUGl4ZWxzKQogICAgICAgICAgICAgc2Nyb2xsaW5nVHJlZSgpLnJl
cG9ydEV4cG9zZWRVbmZpbGxlZEFyZWEoTW9ub3RvbmljVGltZTo6bm93KCksIHVuZmlsbGVkQXJl
YSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9UaWxlZEJh
Y2tpbmcuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1RpbGVkQmFja2luZy5o
CmluZGV4IDYwODc5ODUzMzkxNGU0MDQ0ZjdiMDJhZmVmODYxNjdlNDAwNmFhYTcuLjQ2YmI2ZDQz
MTdiYTliYmY0ZWNiMTYwZDYzMGY3NzliYmQxYjc0NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL1RpbGVkQmFja2luZy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL1RpbGVkQmFja2luZy5oCkBAIC0xMDYsOCArMTA2LDggQEAgcHVi
bGljOgogICAgIHZpcnR1YWwgdm9pZCByZXZhbGlkYXRlVGlsZXMoKSA9IDA7CiAgICAgdmlydHVh
bCB2b2lkIGZvcmNlUmVwYWludCgpID0gMDsKIAotICAgIHZpcnR1YWwgdm9pZCBzZXRTY3JvbGxp
bmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVkKGJvb2wpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wg
c2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZCgpIGNvbnN0ID0gMDsKKyAgICB2aXJ0
dWFsIHZvaWQgc2V0U2Nyb2xsaW5nUGVyZm9ybWFuY2VUZXN0aW5nRW5hYmxlZChib29sKSA9IDA7
CisgICAgdmlydHVhbCBib29sIHNjcm9sbGluZ1BlcmZvcm1hbmNlVGVzdGluZ0VuYWJsZWQoKSBj
b25zdCA9IDA7CiAgICAgCiAgICAgdmlydHVhbCBkb3VibGUgcmV0YWluZWRUaWxlQmFja2luZ1N0
b3JlTWVtb3J5KCkgY29uc3QgPSAwOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jYS9UaWxlQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY2EvVGlsZUNvbnRyb2xsZXIuaAppbmRleCBjZDVjMDY4ZWJmNjMwMzA4ODc3
MDUyOTFkZTFmMTc3YzdmMjRiOTEyLi42ODg3MDkzZTNjMzEwOTUwN2IzMTllNDFjMWE4ZDM5NGRj
YWZlYTA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9U
aWxlQ29udHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nh
L1RpbGVDb250cm9sbGVyLmgKQEAgLTEyNSw3ICsxMjUsNyBAQCBwdWJsaWM6CiAgICAgRmxvYXRS
ZWN0IGFkanVzdFRpbGVDb3ZlcmFnZVJlY3QoY29uc3QgRmxvYXRSZWN0JiBjb3ZlcmFnZVJlY3Qs
IGNvbnN0IEZsb2F0UmVjdCYgcHJldmlvdXNWaXNpYmxlUmVjdCwgY29uc3QgRmxvYXRSZWN0JiBj
dXJyZW50VmlzaWJsZVJlY3QsIGJvb2wgc2l6ZUNoYW5nZWQpIGZpbmFsOwogICAgIEZsb2F0UmVj
dCBhZGp1c3RUaWxlQ292ZXJhZ2VSZWN0Rm9yU2Nyb2xsaW5nKGNvbnN0IEZsb2F0UmVjdCYgY292
ZXJhZ2VSZWN0LCBjb25zdCBGbG9hdFNpemUmIG5ld1NpemUsIGNvbnN0IEZsb2F0UmVjdCYgcHJl
dmlvdXNWaXNpYmxlUmVjdCwgY29uc3QgRmxvYXRSZWN0JiBjdXJyZW50VmlzaWJsZVJlY3QsIGZs
b2F0IGNvbnRlbnRzU2NhbGUpIGZpbmFsOwogCi0gICAgYm9vbCBzY3JvbGxpbmdQZXJmb3JtYW5j
ZUxvZ2dpbmdFbmFibGVkKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9zY3JvbGxpbmdQZXJmb3Jt
YW5jZUxvZ2dpbmdFbmFibGVkOyB9CisgICAgYm9vbCBzY3JvbGxpbmdQZXJmb3JtYW5jZVRlc3Rp
bmdFbmFibGVkKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9zY3JvbGxpbmdQZXJmb3JtYW5jZVRl
c3RpbmdFbmFibGVkOyB9CiAKICAgICBJbnRTaXplIGNvbXB1dGVUaWxlU2l6ZSgpOwogCkBAIC0x
NjksNyArMTY5LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHJldmFsaWRhdGVUaWxlcygpIGZpbmFs
OwogICAgIHZvaWQgZm9yY2VSZXBhaW50KCkgZmluYWw7CiAgICAgSW50UmVjdCB0aWxlR3JpZEV4
dGVudCgpIGNvbnN0IGZpbmFsOwotICAgIHZvaWQgc2V0U2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dn
aW5nRW5hYmxlZChib29sIGZsYWcpIGZpbmFsIHsgbV9zY3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dp
bmdFbmFibGVkID0gZmxhZzsgfQorICAgIHZvaWQgc2V0U2Nyb2xsaW5nUGVyZm9ybWFuY2VUZXN0
aW5nRW5hYmxlZChib29sIGZsYWcpIGZpbmFsIHsgbV9zY3JvbGxpbmdQZXJmb3JtYW5jZVRlc3Rp
bmdFbmFibGVkID0gZmxhZzsgfQogICAgIGRvdWJsZSByZXRhaW5lZFRpbGVCYWNraW5nU3RvcmVN
ZW1vcnkoKSBjb25zdCBmaW5hbDsKICAgICBJbnRSZWN0IHRpbGVDb3ZlcmFnZVJlY3QoKSBjb25z
dCBmaW5hbDsKICNpZiBVU0UoQ0EpCkBAIC0yMzYsNyArMjM2LDcgQEAgcHJpdmF0ZToKICAgICBS
ZWN0RWRnZXM8Ym9vbD4gbV9tYXJnaW5FZGdlczsKICAgICAKICAgICBib29sIG1faXNJbldpbmRv
dyB7IGZhbHNlIH07Ci0gICAgYm9vbCBtX3Njcm9sbGluZ1BlcmZvcm1hbmNlTG9nZ2luZ0VuYWJs
ZWQgeyBmYWxzZSB9OworICAgIGJvb2wgbV9zY3JvbGxpbmdQZXJmb3JtYW5jZVRlc3RpbmdFbmFi
bGVkIHsgZmFsc2UgfTsKICAgICBib29sIG1fYWNjZWxlcmF0ZXNEcmF3aW5nIHsgZmFsc2UgfTsK
ICAgICBib29sIG1fd2FudHNEZWVwQ29sb3JCYWNraW5nU3RvcmUgeyBmYWxzZSB9OwogICAgIGJv
b2wgbV9zdXBwb3J0c1N1YnBpeGVsQW50aWFsaWFzZWRUZXh0IHsgZmFsc2UgfTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL1RpbGVHcmlkLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL1RpbGVHcmlkLmNwcAppbmRleCA3NTZk
YWY3N2NkMjcwZjEzNjE0ZDA4MjllYTE5Zjc5NjMzMGViMWRjLi4wM2IwMGJmYmNkNWNhOWY2OTQx
OWVjNWIxMWU5MzFhY2I4MWJkM2FhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jYS9UaWxlR3JpZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2EvVGlsZUdyaWQuY3BwCkBAIC03MzcsNyArNzM3LDcgQEAgdm9pZCBUaWxlR3Jp
ZDo6cGxhdGZvcm1DQUxheWVyUGFpbnRDb250ZW50cyhQbGF0Zm9ybUNBTGF5ZXIqIHBsYXRmb3Jt
Q0FMYXllciwgR3IKICAgICBpZiAobV9jb250cm9sbGVyLnJvb3RMYXllcigpLm93bmVyKCktPnBs
YXRmb3JtQ0FMYXllclNob3dSZXBhaW50Q291bnRlcigwKSkKICAgICAgICAgUGxhdGZvcm1DQUxh
eWVyOjpkcmF3UmVwYWludEluZGljYXRvcihjb250ZXh0LCBwbGF0Zm9ybUNBTGF5ZXIsIHJlcGFp
bnRDb3VudCwgbV9jb250cm9sbGVyLnRpbGVEZWJ1Z0JvcmRlckNvbG9yKCkpOwogCi0gICAgaWYg
KG1fY29udHJvbGxlci5zY3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVkKCkpIHsKKyAg
ICBpZiAobV9jb250cm9sbGVyLnNjcm9sbGluZ1BlcmZvcm1hbmNlVGVzdGluZ0VuYWJsZWQoKSkg
ewogICAgICAgICBGbG9hdFJlY3QgdmlzaWJsZVBhcnQocGxhdGZvcm1DQUxheWVyLT5wb3NpdGlv
bigpLngoKSwgcGxhdGZvcm1DQUxheWVyLT5wb3NpdGlvbigpLnkoKSwgcGxhdGZvcm1DQUxheWVy
LT5ib3VuZHMoKS5zaXplKCkud2lkdGgoKSwgcGxhdGZvcm1DQUxheWVyLT5ib3VuZHMoKS5zaXpl
KCkuaGVpZ2h0KCkpOwogICAgICAgICB2aXNpYmxlUGFydC5pbnRlcnNlY3QobV9jb250cm9sbGVy
LnZpc2libGVSZWN0KCkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyTGF5ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNw
cAppbmRleCAyOTIwOWRjZDE5NWNhM2IwOWU5OWZlZDM1NDY2OTdjMWY0N2VkZDIxLi4wOGVjZTc2
MmQ5YmRkYzRlODE2M2QzNjQ3MWQzOGQ3OTRhMGY1YzIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJMYXllci5jcHAKQEAgLTE5MjMsNyArMTkyMyw3IEBAIGJvb2wgUmVuZGVyTGF5
ZXI6OmlzUnViYmVyQmFuZEluUHJvZ3Jlc3MoKSBjb25zdAogCiBib29sIFJlbmRlckxheWVyOjpm
b3JjZVVwZGF0ZVNjcm9sbGJhcnNPbk1haW5UaHJlYWRGb3JQZXJmb3JtYW5jZVRlc3RpbmcoKSBj
b25zdAogewotICAgIHJldHVybiByZW5kZXJlcigpLnNldHRpbmdzKCkuZm9yY2VVcGRhdGVTY3Jv
bGxiYXJzT25NYWluVGhyZWFkRm9yUGVyZm9ybWFuY2VUZXN0aW5nKCk7CisgICAgcmV0dXJuIHJl
bmRlcmVyKCkuc2V0dGluZ3MoKS5zY3JvbGxpbmdQZXJmb3JtYW5jZVRlc3RpbmdFbmFibGVkKCk7
CiB9CiAKIFJlbmRlckxheWVyKiBSZW5kZXJMYXllcjo6ZW5jbG9zaW5nVHJhbnNmb3JtZWRBbmNl
c3RvcigpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
TGF5ZXJCYWNraW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJh
Y2tpbmcuY3BwCmluZGV4IDdkMWFiZTZmNmM4MTdkZjE5NGU0YTc1MWQ3ZDI4ZWFkODU3ZmNkMGIu
LjExZDk0YTExZThjZmVkMjY3Yzg1NTEyODI2MmJmZTcyMGQzZjBjMDcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwCkBAIC0yMjcsNyArMjI3
LDcgQEAgUmVuZGVyTGF5ZXJCYWNraW5nOjpSZW5kZXJMYXllckJhY2tpbmcoUmVuZGVyTGF5ZXIm
IGxheWVyKQogICAgICAgICB0aWxlZEJhY2tpbmctPnNldElzSW5XaW5kb3cocmVuZGVyZXIoKS5w
YWdlKCkuaXNJbldpbmRvdygpKTsKIAogICAgICAgICBpZiAobV9pc0ZyYW1lTGF5ZXJXaXRoVGls
ZWRCYWNraW5nKSB7Ci0gICAgICAgICAgICB0aWxlZEJhY2tpbmctPnNldFNjcm9sbGluZ1BlcmZv
cm1hbmNlTG9nZ2luZ0VuYWJsZWQocmVuZGVyZXIoKS5zZXR0aW5ncygpLnNjcm9sbGluZ1BlcmZv
cm1hbmNlTG9nZ2luZ0VuYWJsZWQoKSk7CisgICAgICAgICAgICB0aWxlZEJhY2tpbmctPnNldFNj
cm9sbGluZ1BlcmZvcm1hbmNlVGVzdGluZ0VuYWJsZWQocmVuZGVyZXIoKS5zZXR0aW5ncygpLnNj
cm9sbGluZ1BlcmZvcm1hbmNlVGVzdGluZ0VuYWJsZWQoKSk7CiAgICAgICAgICAgICBhZGp1c3RU
aWxlZEJhY2tpbmdDb3ZlcmFnZSgpOwogICAgICAgICB9CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxpc3RCb3guY3BwIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckxpc3RCb3guY3BwCmluZGV4IDdlOWYzODMyZDM2ZWZkMTkxM2NmNzM5
NzAxMWViYjNkMjE5NDhlMjQuLjczNDQwNmM0MzA1ZDAzOWUwZjhlYjhhMTIzODE3NDIxOGE4MmIw
NWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMaXN0Qm94LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGlzdEJveC5jcHAKQEAgLTg3
Myw3ICs4NzMsNyBAQCBib29sIFJlbmRlckxpc3RCb3g6OnNob3VsZFN1c3BlbmRTY3JvbGxBbmlt
YXRpb25zKCkgY29uc3QKIAogYm9vbCBSZW5kZXJMaXN0Qm94Ojpmb3JjZVVwZGF0ZVNjcm9sbGJh
cnNPbk1haW5UaHJlYWRGb3JQZXJmb3JtYW5jZVRlc3RpbmcoKSBjb25zdAogewotICAgIHJldHVy
biBzZXR0aW5ncygpLmZvcmNlVXBkYXRlU2Nyb2xsYmFyc09uTWFpblRocmVhZEZvclBlcmZvcm1h
bmNlVGVzdGluZygpOworICAgIHJldHVybiBzZXR0aW5ncygpLnNjcm9sbGluZ1BlcmZvcm1hbmNl
VGVzdGluZ0VuYWJsZWQoKTsKIH0KIAogU2Nyb2xsYWJsZUFyZWEqIFJlbmRlckxpc3RCb3g6OmVu
Y2xvc2luZ1Njcm9sbGFibGVBcmVhKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVTY3JvbGxpbmdDb29yZGluYXRvclRyYW5zYWN0
aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1JlbW90ZUxheWVyVHJlZS9SZW1vdGVTY3Jv
bGxpbmdDb29yZGluYXRvclRyYW5zYWN0aW9uLmNwcAppbmRleCBiOGIxMThkYzU1N2I4ZDljZjkz
MWUyNTkyNjI4ZDk4OGZiZTA0MDAxLi43NGU5YjgxMzBiOGE2ZjVjNjI5OWJhZmFhY2Y3OGUyYmE0
ODdlYzNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9SZW1vdGVMYXllclRyZWUv
UmVtb3RlU2Nyb2xsaW5nQ29vcmRpbmF0b3JUcmFuc2FjdGlvbi5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9TaGFyZWQvUmVtb3RlTGF5ZXJUcmVlL1JlbW90ZVNjcm9sbGluZ0Nvb3JkaW5hdG9yVHJh
bnNhY3Rpb24uY3BwCkBAIC0xNDMsNiArMTQzLDcgQEAgdGVtcGxhdGU8PiBzdHJ1Y3QgRW51bVRy
YWl0czxXZWJDb3JlOjpTY3JvbGxpbmdTdGF0ZU5vZGU6OlByb3BlcnR5PiB7CiAgICAgICAgIFdl
YkNvcmU6OlNjcm9sbGluZ1N0YXRlTm9kZTo6UHJvcGVydHk6OlZpc3VhbFZpZXdwb3J0SXNTbWFs
bGVyVGhhbkxheW91dFZpZXdwb3J0LAogICAgICAgICBXZWJDb3JlOjpTY3JvbGxpbmdTdGF0ZU5v
ZGU6OlByb3BlcnR5OjpBc3luY0ZyYW1lT3JPdmVyZmxvd1Njcm9sbGluZ0VuYWJsZWQsCiAgICAg
ICAgIFdlYkNvcmU6OlNjcm9sbGluZ1N0YXRlTm9kZTo6UHJvcGVydHk6OldoZWVsRXZlbnRHZXN0
dXJlc0JlY29tZU5vbkJsb2NraW5nLAorICAgICAgICBXZWJDb3JlOjpTY3JvbGxpbmdTdGF0ZU5v
ZGU6OlByb3BlcnR5OjpTY3JvbGxpbmdQZXJmb3JtYW5jZVRlc3RpbmdFbmFibGVkLAogICAgICAg
ICBXZWJDb3JlOjpTY3JvbGxpbmdTdGF0ZU5vZGU6OlByb3BlcnR5OjpMYXlvdXRWaWV3cG9ydCwK
ICAgICAgICAgV2ViQ29yZTo6U2Nyb2xsaW5nU3RhdGVOb2RlOjpQcm9wZXJ0eTo6TWluTGF5b3V0
Vmlld3BvcnRPcmlnaW4sCiAgICAgICAgIFdlYkNvcmU6OlNjcm9sbGluZ1N0YXRlTm9kZTo6UHJv
cGVydHk6Ok1heExheW91dFZpZXdwb3J0T3JpZ2luLApAQCAtMjQzLDYgKzI0NCw3IEBAIHZvaWQg
QXJndW1lbnRDb2RlcjxTY3JvbGxpbmdTdGF0ZUZyYW1lU2Nyb2xsaW5nTm9kZT46OmVuY29kZShF
bmNvZGVyJiBlbmNvZGVyLCBjCiAgICAgU0NST0xMSU5HX05PREVfRU5DT0RFKFNjcm9sbGluZ1N0
YXRlTm9kZTo6UHJvcGVydHk6OlZpc3VhbFZpZXdwb3J0SXNTbWFsbGVyVGhhbkxheW91dFZpZXdw
b3J0LCB2aXN1YWxWaWV3cG9ydElzU21hbGxlclRoYW5MYXlvdXRWaWV3cG9ydCkKICAgICAvLyBB
c3luY0ZyYW1lT3JPdmVyZmxvd1Njcm9sbGluZ0VuYWJsZWQgaXMgbm90IHJlbGV2YW50IGZvciBV
SS1zaWRlIGNvbXBvc2l0aW5nLgogICAgIFNDUk9MTElOR19OT0RFX0VOQ09ERShTY3JvbGxpbmdT
dGF0ZU5vZGU6OlByb3BlcnR5OjpXaGVlbEV2ZW50R2VzdHVyZXNCZWNvbWVOb25CbG9ja2luZywg
d2hlZWxFdmVudEdlc3R1cmVzQmVjb21lTm9uQmxvY2tpbmcpCisgICAgU0NST0xMSU5HX05PREVf
RU5DT0RFKFNjcm9sbGluZ1N0YXRlTm9kZTo6UHJvcGVydHk6OlNjcm9sbGluZ1BlcmZvcm1hbmNl
VGVzdGluZ0VuYWJsZWQsIHNjcm9sbGluZ1BlcmZvcm1hbmNlVGVzdGluZ0VuYWJsZWQpCiAgICAg
U0NST0xMSU5HX05PREVfRU5DT0RFKFNjcm9sbGluZ1N0YXRlTm9kZTo6UHJvcGVydHk6OkxheW91
dFZpZXdwb3J0LCBsYXlvdXRWaWV3cG9ydCkKICAgICBTQ1JPTExJTkdfTk9ERV9FTkNPREUoU2Ny
b2xsaW5nU3RhdGVOb2RlOjpQcm9wZXJ0eTo6TWluTGF5b3V0Vmlld3BvcnRPcmlnaW4sIG1pbkxh
eW91dFZpZXdwb3J0T3JpZ2luKQogICAgIFNDUk9MTElOR19OT0RFX0VOQ09ERShTY3JvbGxpbmdT
dGF0ZU5vZGU6OlByb3BlcnR5OjpNYXhMYXlvdXRWaWV3cG9ydE9yaWdpbiwgbWF4TGF5b3V0Vmll
d3BvcnRPcmlnaW4pCkBAIC0zNjEsNiArMzYzLDcgQEAgYm9vbCBBcmd1bWVudENvZGVyPFNjcm9s
bGluZ1N0YXRlRnJhbWVTY3JvbGxpbmdOb2RlPjo6ZGVjb2RlKERlY29kZXImIGRlY29kZXIsIFMK
ICAgICBTQ1JPTExJTkdfTk9ERV9ERUNPREUoU2Nyb2xsaW5nU3RhdGVOb2RlOjpQcm9wZXJ0eTo6
VmlzdWFsVmlld3BvcnRJc1NtYWxsZXJUaGFuTGF5b3V0Vmlld3BvcnQsIGJvb2wsIHNldFZpc3Vh
bFZpZXdwb3J0SXNTbWFsbGVyVGhhbkxheW91dFZpZXdwb3J0KTsKICAgICAvLyBBc3luY0ZyYW1l
T3JPdmVyZmxvd1Njcm9sbGluZ0VuYWJsZWQgaXMgbm90IGVuY29kZWQuCiAgICAgU0NST0xMSU5H
X05PREVfREVDT0RFKFNjcm9sbGluZ1N0YXRlTm9kZTo6UHJvcGVydHk6OldoZWVsRXZlbnRHZXN0
dXJlc0JlY29tZU5vbkJsb2NraW5nLCBib29sLCBzZXRXaGVlbEV2ZW50R2VzdHVyZXNCZWNvbWVO
b25CbG9ja2luZykKKyAgICBTQ1JPTExJTkdfTk9ERV9ERUNPREUoU2Nyb2xsaW5nU3RhdGVOb2Rl
OjpQcm9wZXJ0eTo6U2Nyb2xsaW5nUGVyZm9ybWFuY2VUZXN0aW5nRW5hYmxlZCwgYm9vbCwgc2V0
U2Nyb2xsaW5nUGVyZm9ybWFuY2VUZXN0aW5nRW5hYmxlZCkKICAgICBTQ1JPTExJTkdfTk9ERV9E
RUNPREUoU2Nyb2xsaW5nU3RhdGVOb2RlOjpQcm9wZXJ0eTo6TGF5b3V0Vmlld3BvcnQsIEZsb2F0
UmVjdCwgc2V0TGF5b3V0Vmlld3BvcnQpCiAgICAgU0NST0xMSU5HX05PREVfREVDT0RFKFNjcm9s
bGluZ1N0YXRlTm9kZTo6UHJvcGVydHk6Ok1pbkxheW91dFZpZXdwb3J0T3JpZ2luLCBGbG9hdFBv
aW50LCBzZXRNaW5MYXlvdXRWaWV3cG9ydE9yaWdpbikKICAgICBTQ1JPTExJTkdfTk9ERV9ERUNP
REUoU2Nyb2xsaW5nU3RhdGVOb2RlOjpQcm9wZXJ0eTo6TWF4TGF5b3V0Vmlld3BvcnRPcmlnaW4s
IEZsb2F0UG9pbnQsIHNldE1heExheW91dFZpZXdwb3J0T3JpZ2luKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcAppbmRleCAxMjE1MjE2ZGI5ZTE1
Mzg4OTc4ZjJhZTM0MWRjZTYwZmQxOWU1NTJjLi4wZWJhZDE0OTdiMjM2MTY5YzJiMjFkNDc5MzVl
YjFkYTNkOWZkYjYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9X
S1ByZWZlcmVuY2VzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS1By
ZWZlcmVuY2VzLmNwcApAQCAtMTA1OCwxMiArMTA1OCwxMiBAQCBib29sIFdLUHJlZmVyZW5jZXNH
ZXRJbnRlcmFjdGl2ZUZvcm1WYWxpZGF0aW9uRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZl
cmVuYwogCiB2b2lkIFdLUHJlZmVyZW5jZXNTZXRTY3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdF
bmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZW5hYmxlZCkKIHsK
LSAgICB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5zZXRTY3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dp
bmdFbmFibGVkKGVuYWJsZWQpOworICAgIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnNldFNjcm9s
bGluZ1BlcmZvcm1hbmNlVGVzdGluZ0VuYWJsZWQoZW5hYmxlZCk7CiB9CiAKIGJvb2wgV0tQcmVm
ZXJlbmNlc0dldFNjcm9sbGluZ1BlcmZvcm1hbmNlTG9nZ2luZ0VuYWJsZWQoV0tQcmVmZXJlbmNl
c1JlZiBwcmVmZXJlbmNlc1JlZikKIHsKLSAgICByZXR1cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVm
KS0+c2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZCgpOworICAgIHJldHVybiB0b0lt
cGwocHJlZmVyZW5jZXNSZWYpLT5zY3JvbGxpbmdQZXJmb3JtYW5jZVRlc3RpbmdFbmFibGVkKCk7
CiB9CiAKIHZvaWQgV0tQcmVmZXJlbmNlc1NldFBsdWdJblNuYXBzaG90dGluZ0VuYWJsZWQoV0tQ
cmVmZXJlbmNlc1JlZiwgYm9vbCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9QbHVnaW5zL1BERi9QREZQbHVnaW4ubW0gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvUGx1
Z2lucy9QREYvUERGUGx1Z2luLm1tCmluZGV4IGI4MzZhMTcwMjBiMzc4MDNiNTI1MmY4ZjFlOTAz
ZTY0MjRhMGI4YTguLjVlYjg5Y2Y2ZDgzOGM2MzNmNmE5NWQ0YjdkMzQwYTRmOThmNDAxYzEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9QbHVnaW5zL1BERi9QREZQbHVnaW4u
bW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpbi5t
bQpAQCAtMTQ1Nyw3ICsxNDU3LDcgQEAgYm9vbCBQREZQbHVnaW46OmZvcmNlVXBkYXRlU2Nyb2xs
YmFyc09uTWFpblRocmVhZEZvclBlcmZvcm1hbmNlVGVzdGluZygpIGNvbnN0CiB7CiAgICAgaWYg
KGF1dG8qIGNvcmVGcmFtZSA9IG1fZnJhbWUgPyBtX2ZyYW1lLT5jb3JlRnJhbWUoKSA6IG51bGxw
dHIpIHsKICAgICAgICAgaWYgKGF1dG8qIHBhZ2UgPSBjb3JlRnJhbWUtPnBhZ2UoKSkKLSAgICAg
ICAgICAgIHJldHVybiBwYWdlLT5zZXR0aW5ncygpLmZvcmNlVXBkYXRlU2Nyb2xsYmFyc09uTWFp
blRocmVhZEZvclBlcmZvcm1hbmNlVGVzdGluZygpOworICAgICAgICAgICAgcmV0dXJuIHBhZ2Ut
PnNldHRpbmdzKCkuc2Nyb2xsaW5nUGVyZm9ybWFuY2VUZXN0aW5nRW5hYmxlZCgpOwogICAgIH0K
IAogICAgIHJldHVybiBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQYWdlL21hYy9UaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYS5tbSBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9UaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJl
YS5tbQppbmRleCAzYWZiZTIzOWNkMTE4ZTEzNGYyODVmOTljNzBlMWQxNjE2YjM0ZTQ2Li41ZWRj
MGYxZGE1ZTIzYzJhMmUzMjZlMTkyMjczYzhhODY3YmE1YmYxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0Fy
ZWEubW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1RpbGVkQ29y
ZUFuaW1hdGlvbkRyYXdpbmdBcmVhLm1tCkBAIC0yMTksMTcgKzIxOSw2IEBAIHZvaWQgVGlsZWRD
b3JlQW5pbWF0aW9uRHJhd2luZ0FyZWE6OnVwZGF0ZVByZWZlcmVuY2VzKGNvbnN0IFdlYlByZWZl
cmVuY2VzU3RvcmUmCiB7CiAgICAgU2V0dGluZ3MmIHNldHRpbmdzID0gbV93ZWJQYWdlLmNvcmVQ
YWdlKCktPnNldHRpbmdzKCk7CiAKLSNpZiBFTkFCTEUoQVNZTkNfU0NST0xMSU5HKQotICAgIGlm
IChBc3luY1Njcm9sbGluZ0Nvb3JkaW5hdG9yKiBzY3JvbGxpbmdDb29yZGluYXRvciA9IGRvd25j
YXN0PEFzeW5jU2Nyb2xsaW5nQ29vcmRpbmF0b3I+KG1fd2ViUGFnZS5jb3JlUGFnZSgpLT5zY3Jv
bGxpbmdDb29yZGluYXRvcigpKSkgewotICAgICAgICBib29sIHNjcm9sbGluZ1BlcmZvcm1hbmNl
TG9nZ2luZ0VuYWJsZWQgPSBzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNL
ZXk6OnNjcm9sbGluZ1BlcmZvcm1hbmNlTG9nZ2luZ0VuYWJsZWRLZXkoKSk7Ci0gICAgICAgIAot
ICAgICAgICBSZWZQdHI8U2Nyb2xsaW5nVHJlZT4gc2Nyb2xsaW5nVHJlZSA9IHNjcm9sbGluZ0Nv
b3JkaW5hdG9yLT5zY3JvbGxpbmdUcmVlKCk7Ci0gICAgICAgIFNjcm9sbGluZ1RocmVhZDo6ZGlz
cGF0Y2goW3Njcm9sbGluZ1RyZWUsIHNjcm9sbGluZ1BlcmZvcm1hbmNlTG9nZ2luZ0VuYWJsZWRd
IHsKLSAgICAgICAgICAgIHNjcm9sbGluZ1RyZWUtPnNldFNjcm9sbGluZ1BlcmZvcm1hbmNlTG9n
Z2luZ0VuYWJsZWQoc2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZCk7Ci0gICAgICAg
IH0pOwotICAgIH0KLSNlbmRpZgotCiAgICAgLy8gRml4ZWQgcG9zaXRpb24gZWxlbWVudHMgbmVl
ZCB0byBiZSBjb21wb3NpdGVkIGFuZCBjcmVhdGUgc3RhY2tpbmcgY29udGV4dHMKICAgICAvLyBp
biBvcmRlciB0byBiZSBzY3JvbGxlZCBieSB0aGUgU2Nyb2xsaW5nQ29vcmRpbmF0b3IuCiAgICAg
c2V0dGluZ3Muc2V0QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0ZvckZpeGVkUG9zaXRpb25FbmFibGVk
KHRydWUpOwo=
</data>
<flag name="review"
          id="432946"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>