<?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>210076</bug_id>
          
          <creation_ts>2020-04-06 14:54:47 -0700</creation_ts>
          <short_desc>Merge DependencyAssertion into ProcessAssertion</short_desc>
          <delta_ts>2020-04-07 15:10:15 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</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>
          <dependson>210065</dependson>
          <blocked>209990</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>beidson</cc>
    
    <cc>benjamin</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>jer.noble</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1638331</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-04-06 14:54:47 -0700</bug_when>
    <thetext>Merge DependencyAssertion into ProcessAssertion. After Bug 210065, ProcessAssertion can use RunningBoard assertions so there is no longer any need to a separate DependencyAssertion class. We can simply introduce a new assertion type to ProcessAssertion.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638369</commentid>
    <comment_count>1</comment_count>
      <attachid>395630</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-04-06 16:38:08 -0700</bug_when>
    <thetext>Created attachment 395630
WIP Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638409</commentid>
    <comment_count>2</comment_count>
      <attachid>395643</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-04-06 18:37:10 -0700</bug_when>
    <thetext>Created attachment 395643
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638807</commentid>
    <comment_count>3</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-04-07 14:36:03 -0700</bug_when>
    <thetext>Ping review?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638830</commentid>
    <comment_count>4</comment_count>
      <attachid>395643</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-04-07 15:09:42 -0700</bug_when>
    <thetext>Comment on attachment 395643
Patch

Clearing flags on attachment: 395643

Committed r259674: &lt;https://trac.webkit.org/changeset/259674&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638831</commentid>
    <comment_count>5</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-04-07 15:09:44 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638832</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-04-07 15:10:15 -0700</bug_when>
    <thetext>&lt;rdar://problem/61412585&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395630</attachid>
            <date>2020-04-06 16:38:08 -0700</date>
            <delta_ts>2020-04-06 18:37:09 -0700</delta_ts>
            <desc>WIP Patch</desc>
            <filename>210076_wip.patch</filename>
            <type>text/plain</type>
            <size>18423</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtSGF2ZS5oIGIvU291cmNlL1dURi93
dGYvUGxhdGZvcm1IYXZlLmgKaW5kZXggMzZhM2Y0NjRhNTkuLjkwN2UzNmEyZjlkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUhhdmUuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9Q
bGF0Zm9ybUhhdmUuaApAQCAtNDU5LDcgKzQ1OSw3IEBACiAjaWYgKFBMQVRGT1JNKElPU19GQU1J
TFkpICYmIF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDE0MDAwMCkgXAogICAg
IHx8IChQTEFURk9STShXQVRDSE9TKSAmJiBfX1dBVENIX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVE
ID49IDcwMDAwKSBcCiAgICAgfHwgKFBMQVRGT1JNKEFQUExFVFYpICYmIF9fVFZfT1NfVkVSU0lP
Tl9NSU5fUkVRVUlSRUQgPj0gMTQwMDAwKQotI2RlZmluZSBIQVZFX1JVTk5JTkdCT0FSRF9XRUJL
SVRfQVNTRVJUSU9OUyAxCisjZGVmaW5lIEhBVkVfUlVOTklOR0JPQVJEX1ZJU0lCSUxJVFlfQVNT
RVJUSU9OUyAxCiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJT
SU9OX01JTl9SRVFVSVJFRCA+PSAxMDE1MDAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hh
cmVkL0RlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVk
L0RlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggZTVkNTI1MWNjOGIuLjAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVk
L0RlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDQ0ICsw
LDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0g
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAot
ICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0g
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICog
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiRGVwZW5k
ZW5jeVByb2Nlc3NBc3NlcnRpb24uaCIKLQotI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQotCi1u
YW1lc3BhY2UgV2ViS2l0IHsKLQotRGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb246OkRlcGVuZGVu
Y3lQcm9jZXNzQXNzZXJ0aW9uKFByb2Nlc3NJRCwgQVNDSUlMaXRlcmFsIGRlc2NyaXB0aW9uKQot
ewotICAgIFVOVVNFRF9QQVJBTShkZXNjcmlwdGlvbik7Ci19Ci0KLURlcGVuZGVuY3lQcm9jZXNz
QXNzZXJ0aW9uOjp+RGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb24oKQotewotfQotCi19IC8vIG5h
bWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9EZXBlbmRlbmN5UHJvY2Vzc0Fzc2VydGlvbi5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvRGVw
ZW5kZW5jeVByb2Nlc3NBc3NlcnRpb24uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
YWEwMWFhNTI3YzAuLjAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0RlcGVu
ZGVuY3lQcm9jZXNzQXNzZXJ0aW9uLmgKKysrIC9kZXYvbnVsbApAQCAtMSw1MCArMCwwIEBACi0v
KgotICogQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
LSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
QU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCi0gKi8KLQotI3ByYWdtYSBvbmNlCi0KLSNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+Ci0j
aW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L0FTQ0lJTGl0ZXJh
bC5oPgotCi0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKLU9CSkNfQ0xBU1MgUkJTQXNzZXJ0aW9u
OwotI2VuZGlmCi0KLW5hbWVzcGFjZSBXZWJLaXQgewotCi1jbGFzcyBEZXBlbmRlbmN5UHJvY2Vz
c0Fzc2VydGlvbiB7Ci0gICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7Ci1wdWJsaWM6Ci0gICAg
RGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb24oUHJvY2Vzc0lEIHRhcmdldFBJRCwgQVNDSUlMaXRl
cmFsIGRlc2NyaXB0aW9uKTsKLSAgICB+RGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb24oKTsKLQot
cHJpdmF0ZToKLSNpZiBQTEFURk9STShJT1NfRkFNSUxZKQotICAgIFJldGFpblB0cjxSQlNBc3Nl
cnRpb24+IG1fYXNzZXJ0aW9uOwotI2VuZGlmCi19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJLaXQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL2lvcy9EZXBlbmRlbmN5UHJvY2Vzc0Fz
c2VydGlvbklPUy5tbSBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL2lvcy9EZXBlbmRlbmN5UHJvY2Vz
c0Fzc2VydGlvbklPUy5tbQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWYyMGFlY2Yx
ZGMuLjAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL2lvcy9EZXBlbmRlbmN5
UHJvY2Vzc0Fzc2VydGlvbklPUy5tbQorKysgL2Rldi9udWxsCkBAIC0xLDU2ICswLDAgQEAKLS8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
LSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KLSAqLwotCi0jaW1wb3J0ICJjb25maWcuaCIKLSNpbXBvcnQgIkRlcGVuZGVuY3lQcm9jZXNz
QXNzZXJ0aW9uLmgiCi0KLSNpZiBQTEFURk9STShJT1NfRkFNSUxZKQotCi0jaW1wb3J0ICJSdW5u
aW5nQm9hcmRTZXJ2aWNlc1NQSS5oIgotCi1uYW1lc3BhY2UgV2ViS2l0IHsKLQotRGVwZW5kZW5j
eVByb2Nlc3NBc3NlcnRpb246OkRlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uKFByb2Nlc3NJRCB0
YXJnZXRQSUQsIEFTQ0lJTGl0ZXJhbCBkZXNjcmlwdGlvbikKLXsKLSAgICBSQlNUYXJnZXQgKnRh
cmdldCA9IFtSQlNUYXJnZXQgdGFyZ2V0V2l0aFBpZDp0YXJnZXRQSURdOwotICAgIFJCU0RvbWFp
bkF0dHJpYnV0ZSAqZG9tYWluQXR0cmlidXRlID0gW1JCU0RvbWFpbkF0dHJpYnV0ZSBhdHRyaWJ1
dGVXaXRoRG9tYWluOkAiY29tLmFwcGxlLndlYmtpdCIgbmFtZTpAIkRlcGVuZGVudFByb2Nlc3NM
aW5rIl07Ci0KLSAgICBOU1N0cmluZyAqbnNEZXNjcmlwdGlvbiA9IFtOU1N0cmluZyBzdHJpbmdX
aXRoQ1N0cmluZzpkZXNjcmlwdGlvbi5jaGFyYWN0ZXJzKCkgZW5jb2Rpbmc6TlNBU0NJSVN0cmlu
Z0VuY29kaW5nXTsKLSAgICBtX2Fzc2VydGlvbiA9IGFkb3B0TlMoW1tSQlNBc3NlcnRpb24gYWxs
b2NdIGluaXRXaXRoRXhwbGFuYXRpb246bnNEZXNjcmlwdGlvbiB0YXJnZXQ6dGFyZ2V0IGF0dHJp
YnV0ZXM6QFtkb21haW5BdHRyaWJ1dGVdXSk7Ci0gICAgTlNFcnJvciAqYWNxdWlzaXRpb25FcnJv
ciA9IG5pbDsKLSAgICBpZiAoIVttX2Fzc2VydGlvbiBhY3F1aXJlV2l0aEVycm9yOiZhY3F1aXNp
dGlvbkVycm9yXSkKLSAgICAgICAgUkVMRUFTRV9MT0dfRVJST1IoUHJvY2VzcywgIkRlcGVuZGVu
Y3lQcm9jZXNzQXNzZXJ0aW9uOjpEZXBlbmRlbmN5UHJvY2Vzc0Fzc2VydGlvbjogRmFpbGVkIHRv
IGFjcXVpcmUgZGVwZW5kZW5jeSBwcm9jZXNzIGFzc2VydGlvbiAnJXtwdWJsaWN9cycsIGVycm9y
OiAle3B1YmxpY31AIiwgZGVzY3JpcHRpb24uY2hhcmFjdGVycygpLCBhY3F1aXNpdGlvbkVycm9y
KTsKLSAgICBlbHNlCi0gICAgICAgIFJFTEVBU0VfTE9HKFByb2Nlc3MsICJEZXBlbmRlbmN5UHJv
Y2Vzc0Fzc2VydGlvbjo6RGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb246IFN1Y2Nlc3NmdWxseSB0
b29rIGEgZGVwZW5kZW5jeSBwcm9jZXNzIGFzc2VydGlvbiAnJXtwdWJsaWN9cycgZm9yIHRhcmdl
dCBwcm9jZXNzIHdpdGggUElEICVkIiwgZGVzY3JpcHRpb24uY2hhcmFjdGVycygpLCB0YXJnZXRQ
SUQpOwotfQotCi1EZXBlbmRlbmN5UHJvY2Vzc0Fzc2VydGlvbjo6fkRlcGVuZGVuY3lQcm9jZXNz
QXNzZXJ0aW9uKCkKLXsKLSAgICBbbV9hc3NlcnRpb24gaW52YWxpZGF0ZV07Ci19Ci0KLX0gLy8g
bmFtZXNwYWNlIFdlYktpdAotCi0jZW5kaWYgLy8gUExBVEZPUk0oSU9TX0ZBTUlMWSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMu
dHh0CmluZGV4IGRmZGFlMmEzMzIyLi40N2NjYmVkNDUxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9Tb3VyY2VzLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0CkBAIC0xNTYs
NyArMTU2LDYgQEAgU2hhcmVkL0Jsb2JEYXRhRmlsZVJlZmVyZW5jZVdpdGhTYW5kYm94RXh0ZW5z
aW9uLmNwcCBAbm8tdW5pZnkKIFNoYXJlZC9DYWNoZU1vZGVsLmNwcAogU2hhcmVkL0NvbnRleHRN
ZW51Q29udGV4dERhdGEuY3BwCiBTaGFyZWQvRGVidWdnYWJsZUluZm9EYXRhLmNwcAotU2hhcmVk
L0RlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uLmNwcAogU2hhcmVkL0VkaXRpbmdSYW5nZS5jcHAK
IFNoYXJlZC9FZGl0b3JTdGF0ZS5jcHAKIFNoYXJlZC9Gb250SW5mby5jcHAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dCBiL1NvdXJjZS9XZWJLaXQvU291cmNlc0Nv
Y29hLnR4dAppbmRleCBhMTI0Y2RjYTc4NC4uZjkzMjNmYjkzOTYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXNDb2Nv
YS50eHQKQEAgLTE3NCw3ICsxNzQsNiBAQCBTaGFyZWQvRW50cnlQb2ludFV0aWxpdGllcy9Db2Nv
YS9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VFbnRyeVBvaW50Lm1tCiBTaGFyZWQvRW50cnlQb2ludFV0
aWxpdGllcy9Db2NvYS9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VNYWluLm1tCiAKIFNoYXJlZC9pb3Mv
QXV4aWxpYXJ5UHJvY2Vzc0lPUy5tbQotU2hhcmVkL2lvcy9EZXBlbmRlbmN5UHJvY2Vzc0Fzc2Vy
dGlvbklPUy5tbQogU2hhcmVkL2lvcy9JbnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbi5t
bQogU2hhcmVkL2lvcy9JbnRlcmFjdGlvbkluZm9ybWF0aW9uUmVxdWVzdC5jcHAKIFNoYXJlZC9p
b3MvTmF0aXZlV2ViS2V5Ym9hcmRFdmVudElPUy5tbQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
UHJvY2Vzc0Fzc2VydGlvbi5oCmluZGV4IDJjODYzYzBhYjgzLi5lZTBjOGRiNGFlOCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1Byb2Nlc3NBc3NlcnRpb24uaApAQCAtNTAsNiArNTAsNyBA
QCBlbnVtIGNsYXNzIFByb2Nlc3NBc3NlcnRpb25UeXBlIHsKICAgICBVbmJvdW5kZWROZXR3b3Jr
aW5nLAogICAgIEZvcmVncm91bmQsCiAgICAgTWVkaWFQbGF5YmFjaywKKyAgICBEZXBlbmRlbnRQ
cm9jZXNzTGluaywKIH07CiAKIGNsYXNzIFByb2Nlc3NBc3NlcnRpb24gOiBwdWJsaWMgQ2FuTWFr
ZVdlYWtQdHI8UHJvY2Vzc0Fzc2VydGlvbj4gewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvaW9zL1Byb2Nlc3NBc3NlcnRpb25JT1MubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9pb3MvUHJvY2Vzc0Fzc2VydGlvbklPUy5tbQppbmRleCA5NTU4NmU1NTI1My4uYzRlZGQ1
NDhlODggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9Qcm9jZXNzQXNz
ZXJ0aW9uSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9Qcm9jZXNzQXNz
ZXJ0aW9uSU9TLm1tCkBAIC00Niw3ICs0Niw3IEBAIHVzaW5nIFdlYktpdDo6UHJvY2Vzc0FuZFVJ
QXNzZXJ0aW9uOwogc3RhdGljIGNvbnN0IFNlY29uZHMgcmVsZWFzZUJhY2tncm91bmRUYXNrQWZ0
ZXJFeHBpcmF0aW9uRGVsYXkgeyAyX3MgfTsKIAogQGludGVyZmFjZSBXS1Byb2Nlc3NBc3NlcnRp
b25CYWNrZ3JvdW5kVGFza01hbmFnZXIKLSNpZiBIQVZFKFJVTk5JTkdCT0FSRF9XRUJLSVRfQVNT
RVJUSU9OUykKKyNpZiBIQVZFKFJVTk5JTkdCT0FSRF9WSVNJQklMSVRZX0FTU0VSVElPTlMpCiAg
ICAgOiBOU09iamVjdCA8UkJTQXNzZXJ0aW9uT2JzZXJ2aW5nPgogI2Vsc2UKICAgICA6IE5TT2Jq
ZWN0CkBAIC02MSw3ICs2MSw3IEBAIEBlbmQKIAogQGltcGxlbWVudGF0aW9uIFdLUHJvY2Vzc0Fz
c2VydGlvbkJhY2tncm91bmRUYXNrTWFuYWdlcgogewotI2lmIEhBVkUoUlVOTklOR0JPQVJEX1dF
QktJVF9BU1NFUlRJT05TKQorI2lmIEhBVkUoUlVOTklOR0JPQVJEX1ZJU0lCSUxJVFlfQVNTRVJU
SU9OUykKICAgICBSZXRhaW5QdHI8UkJTQXNzZXJ0aW9uPiBfYmFja2dyb3VuZFRhc2s7CiAjZWxz
ZQogICAgIFVJQmFja2dyb3VuZFRhc2tJZGVudGlmaWVyIF9iYWNrZ3JvdW5kVGFzazsKQEAgLTg0
LDcgKzg0LDcgQEAgLSAoaW5zdGFuY2V0eXBlKWluaXQKICAgICBpZiAoIXNlbGYpCiAgICAgICAg
IHJldHVybiBuaWw7CiAKLSNpZiAhSEFWRShSVU5OSU5HQk9BUkRfV0VCS0lUX0FTU0VSVElPTlMp
CisjaWYgIUhBVkUoUlVOTklOR0JPQVJEX1ZJU0lCSUxJVFlfQVNTRVJUSU9OUykKICAgICBfYmFj
a2dyb3VuZFRhc2sgPSBVSUJhY2tncm91bmRUYXNrSW52YWxpZDsKICNlbmRpZgogCkBAIC0xNjks
NyArMTY5LDcgQEAgLSAodm9pZClfY2FuY2VsUGVuZGluZ1JlbGVhc2VUYXNrCiAKIC0gKEJPT0wp
X2hhc0JhY2tncm91bmRUYXNrCiB7Ci0jaWYgSEFWRShSVU5OSU5HQk9BUkRfV0VCS0lUX0FTU0VS
VElPTlMpCisjaWYgSEFWRShSVU5OSU5HQk9BUkRfVklTSUJJTElUWV9BU1NFUlRJT05TKQogICAg
IHJldHVybiAhIV9iYWNrZ3JvdW5kVGFzazsKICNlbHNlCiAgICAgcmV0dXJuIF9iYWNrZ3JvdW5k
VGFzayAhPSBVSUJhY2tncm91bmRUYXNrSW52YWxpZDsKQEAgLTE4NCw3ICsxODQsNyBAQCAtICh2
b2lkKV91cGRhdGVCYWNrZ3JvdW5kVGFzawogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9
CiAgICAgICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSBXS1Byb2Nlc3NB
c3NlcnRpb25CYWNrZ3JvdW5kVGFza01hbmFnZXI6IGJlZ2luQmFja2dyb3VuZFRhc2tXaXRoTmFt
ZSIsIHNlbGYpOwotI2lmIEhBVkUoUlVOTklOR0JPQVJEX1dFQktJVF9BU1NFUlRJT05TKQorI2lm
IEhBVkUoUlVOTklOR0JPQVJEX1ZJU0lCSUxJVFlfQVNTRVJUSU9OUykKICAgICAgICAgUkJTVGFy
Z2V0ICp0YXJnZXQgPSBbUkJTVGFyZ2V0IGN1cnJlbnRQcm9jZXNzXTsKICAgICAgICAgUkJTRG9t
YWluQXR0cmlidXRlICpkb21haW5BdHRyaWJ1dGUgPSBbUkJTRG9tYWluQXR0cmlidXRlIGF0dHJp
YnV0ZVdpdGhEb21haW46QCJjb20uYXBwbGUuY29tbW9uIiBuYW1lOkAiRmluaXNoVGFza0ludGVy
cnVwdGFibGUiXTsKICAgICAgICAgX2JhY2tncm91bmRUYXNrID0gYWRvcHROUyhbW1JCU0Fzc2Vy
dGlvbiBhbGxvY10gaW5pdFdpdGhFeHBsYW5hdGlvbjpAIldlYktpdCBVSVByb2Nlc3MgYmFja2dy
b3VuZCB0YXNrIiB0YXJnZXQ6dGFyZ2V0IGF0dHJpYnV0ZXM6QFtkb21haW5BdHRyaWJ1dGVdXSk7
CkBAIC0yMDQsNyArMjA0LDcgQEAgLSAodm9pZClfdXBkYXRlQmFja2dyb3VuZFRhc2sKICAgICAg
ICAgW3NlbGYgX3JlbGVhc2VCYWNrZ3JvdW5kVGFza107CiB9CiAKLSNpZiBIQVZFKFJVTk5JTkdC
T0FSRF9XRUJLSVRfQVNTRVJUSU9OUykKKyNpZiBIQVZFKFJVTk5JTkdCT0FSRF9WSVNJQklMSVRZ
X0FTU0VSVElPTlMpCiAtICh2b2lkKWFzc2VydGlvbldpbGxJbnZhbGlkYXRlOihSQlNBc3NlcnRp
b24gKilhc3NlcnRpb24KIHsKICAgICBBU1NFUlQoYXNzZXJ0aW9uID09IF9iYWNrZ3JvdW5kVGFz
ay5nZXQoKSk7CkBAIC0yNTMsNyArMjUzLDcgQEAgLSAodm9pZClfcmVsZWFzZUJhY2tncm91bmRU
YXNrCiAgICAgaWYgKF9hcHBsaWNhdGlvbklzQmFja2dyb3VuZGVkKQogICAgICAgICBXZWJLaXQ6
OldlYlByb2Nlc3NQb29sOjpub3RpZnlQcm9jZXNzUG9vbHNBcHBsaWNhdGlvbklzQWJvdXRUb1N1
c3BlbmQoKTsKIAotI2lmIEhBVkUoUlVOTklOR0JPQVJEX1dFQktJVF9BU1NFUlRJT05TKQorI2lm
IEhBVkUoUlVOTklOR0JPQVJEX1ZJU0lCSUxJVFlfQVNTRVJUSU9OUykKICAgICBbX2JhY2tncm91
bmRUYXNrIHJlbW92ZU9ic2VydmVyOnNlbGZdOwogICAgIFtfYmFja2dyb3VuZFRhc2sgaW52YWxp
ZGF0ZV07CiAgICAgX2JhY2tncm91bmRUYXNrID0gbnVsbHB0cjsKQEAgLTI5MSw3ICsyOTEsNyBA
QCBuYW1lc3BhY2UgV2ViS2l0IHsKIAogc3RhdGljIE5TU3RyaW5nICpydW5uaW5nQm9hcmROYW1l
Rm9yQXNzZXJ0aW9uVHlwZShQcm9jZXNzQXNzZXJ0aW9uVHlwZSBhc3NlcnRpb25UeXBlKQogewot
I2lmIEhBVkUoUlVOTklOR0JPQVJEX1dFQktJVF9BU1NFUlRJT05TKQorI2lmIEhBVkUoUlVOTklO
R0JPQVJEX1ZJU0lCSUxJVFlfQVNTRVJUSU9OUykKICAgICBzd2l0Y2ggKGFzc2VydGlvblR5cGUp
IHsKICAgICBjYXNlIFByb2Nlc3NBc3NlcnRpb25UeXBlOjpTdXNwZW5kZWQ6CiAgICAgICAgIHJl
dHVybiBAIlN1c3BlbmRlZCI7CkBAIC0zMDEsMTEgKzMwMSwxNCBAQCBzdGF0aWMgTlNTdHJpbmcg
KnJ1bm5pbmdCb2FyZE5hbWVGb3JBc3NlcnRpb25UeXBlKFByb2Nlc3NBc3NlcnRpb25UeXBlIGFz
c2VydGlvbgogICAgICAgICByZXR1cm4gQCJVbmJvdW5kZWROZXR3b3JraW5nIjsKICAgICBjYXNl
IFByb2Nlc3NBc3NlcnRpb25UeXBlOjpGb3JlZ3JvdW5kOgogICAgICAgICByZXR1cm4gQCJGb3Jl
Z3JvdW5kIjsKKyAgICBjYXNlIFByb2Nlc3NBc3NlcnRpb25UeXBlOjpEZXBlbmRlbnRQcm9jZXNz
TGluazoKKyAgICAgICAgcmV0dXJuIEAiRGVwZW5kZW50UHJvY2Vzc0xpbmsiOwogICAgIGNhc2Ug
UHJvY2Vzc0Fzc2VydGlvblR5cGU6Ok1lZGlhUGxheWJhY2s6CiAgICAgICAgIHJldHVybiBuaWw7
IC8vIEZJWE1FOiBOYW1lIHRvIGJlIGRlZmluZWQgaW4gPHJkYXI6Ly9wcm9ibGVtLzYxMjYzMTQ3
Pi4KICAgICB9CiAjZWxzZQotICAgIFVOVVNFRF9QQVJBTShhc3NlcnRpb25UeXBlKTsKKyAgICBp
ZiAoYXNzZXJ0aW9uVHlwZSA9PSBQcm9jZXNzQXNzZXJ0aW9uVHlwZTo6RGVwZW5kZW50UHJvY2Vz
c0xpbmspCisgICAgICAgIHJldHVybiBAIkRlcGVuZGVudFByb2Nlc3NMaW5rIjsKICAgICByZXR1
cm4gbmlsOwogI2VuZGlmCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagppbmRleCAxYzVhMjhjNDNhNi4uMDgzYWU5Njc1YTYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291
cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzU1MSw5ICsz
NTUxLDYgQEAKIAkJNDZDRTNCMTAyM0Q4QzgzRDAwMTZBOTZBIC8qIFdlYkJhY2tGb3J3YXJkTGlz
dENvdW50cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJCYWNrRm9yd2Fy
ZExpc3RDb3VudHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDZERjA2MzkxRjM5
MDVFNTAwMTk4MEJCIC8qIE5ldHdvcmtDT1JTUHJlZmxpZ2h0Q2hlY2tlci5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOZXR3b3JrQ09SU1ByZWZsaWdodENoZWNrZXIu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0NkRGMDYzQTFGMzkwNUU1MDAxOTgw
QkIgLyogTmV0d29ya0NPUlNQcmVmbGlnaHRDaGVja2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE5ldHdvcmtDT1JTUHJlZmxpZ2h0Q2hlY2tlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwotCQk0NkYzOEU4ODI0MTZEOTYzMDA1OTM3NUEgLyogRGVwZW5kZW5jeVBy
b2Nlc3NBc3NlcnRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
RGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwotCQk0NkYzOEU4OTI0MTZEOTYzMDA1OTM3NUEgLyogRGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRp
b24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGVwZW5kZW5jeVByb2Nlc3NB
c3NlcnRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNDZGMzhFOEEyNDE2RDlB
NzAwNTkzNzVBIC8qIERlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uSU9TLm1tICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gRGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb25J
T1MubW07IHBhdGggPSBpb3MvRGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb25JT1MubW07IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ2RjM4RThCMjQxNkU2NkQwMDU5Mzc1QSAvKiBSdW5u
aW5nQm9hcmRTZXJ2aWNlc1NQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBS
dW5uaW5nQm9hcmRTZXJ2aWNlc1NQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0
NkY5QjI2MjIzNTI2RUQwMDA2RkU1RkEgLyogV2ViQmFja0ZvcndhcmRDYWNoZUVudHJ5LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkJhY2tGb3J3YXJkQ2FjaGVFbnRyeS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0OTYwQTNCQzIzQzUyODY0MDA5NjE4NDIg
LyogV2ViVmlld0NhdGVnb3J5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlZpZXdDYXRlZ29yeS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNTk2OCw4ICs1OTY1LDYgQEAKIAkJCQk5OUY2
NDJEMjFGQUJFMzc4MDA5NjIxRTkgLyogQ29vcmRpbmF0ZVN5c3RlbS5oICovLAogCQkJCTk5MDM2
QUU4MjNBOTcwODcwMDAwQjA2QSAvKiBEZWJ1Z2dhYmxlSW5mb0RhdGEuY3BwICovLAogCQkJCTk5
MDM2QUU3MjNBOTcwODcwMDAwQjA2QSAvKiBEZWJ1Z2dhYmxlSW5mb0RhdGEuaCAqLywKLQkJCQk0
NkYzOEU4ODI0MTZEOTYzMDA1OTM3NUEgLyogRGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb24uY3Bw
ICovLAotCQkJCTQ2RjM4RTg5MjQxNkQ5NjMwMDU5Mzc1QSAvKiBEZXBlbmRlbmN5UHJvY2Vzc0Fz
c2VydGlvbi5oICovLAogCQkJCTJEN0ZEMTkwMjIzQzczMEYwMDc4ODdGMSAvKiBEb2N1bWVudEVk
aXRpbmdDb250ZXh0LmggKi8sCiAJCQkJMkQ3RkQxOTEyMjNDNzMxMDAwNzg4N0YxIC8qIERvY3Vt
ZW50RWRpdGluZ0NvbnRleHQubW0gKi8sCiAJCQkJQzUxNzM4ODAxMkRGOEY0RjAwRUUzRjQ3IC8q
IERyYWdDb250cm9sbGVyQWN0aW9uLmggKi8sCkBAIC02ODk3LDcgKzY4OTIsNiBAQAogCQkJaXNh
ID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKIAkJCQlBN0U5M0NFQjE5MjUzMUFBMDBBMURD
NDggLyogQXV4aWxpYXJ5UHJvY2Vzc0lPUy5tbSAqLywKLQkJCQk0NkYzOEU4QTI0MTZEOUE3MDA1
OTM3NUEgLyogRGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb25JT1MubW0gKi8sCiAJCQkJMkRBNjcz
MTkyMEM3NTRCMTAwM0NCNDAxIC8qIER5bmFtaWNWaWV3cG9ydFNpemVVcGRhdGUuaCAqLywKIAkJ
CQkyREE5NDQ5RDE4ODRFNEYwMDBFRDg2REIgLyogR2VzdHVyZVR5cGVzLmggKi8sCiAJCQkJQzVC
Q0U1REExQzUwNzYxRDAwQ0RFM0ZBIC8qIEludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9u
LmggKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5j
cHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKaW5kZXggNDk0ZmRm
ZjA5MGMuLjkzYzNkMGVlYmM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3Mu
Y3BwCkBAIC0zMSw3ICszMSw2IEBACiAjaW5jbHVkZSAiQVBJUGFnZUhhbmRsZS5oIgogI2luY2x1
ZGUgIkF1dGhlbnRpY2F0aW9uTWFuYWdlci5oIgogI2luY2x1ZGUgIkF1eGlsaWFyeVByb2Nlc3NN
ZXNzYWdlcy5oIgotI2luY2x1ZGUgIkRlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uLmgiCiAjaW5j
bHVkZSAiRHJhd2luZ0FyZWEuaCIKICNpbmNsdWRlICJFdmVudERpc3BhdGNoZXIuaCIKICNpbmNs
dWRlICJJbmplY3RlZEJ1bmRsZS5oIgpAQCAtNDMsNiArNDIsNyBAQAogI2luY2x1ZGUgIk5ldHdv
cmtTZXNzaW9uLmgiCiAjaW5jbHVkZSAiTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnMu
aCIKICNpbmNsdWRlICJQbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbk1hbmFnZXIuaCIKKyNpbmNsdWRl
ICJQcm9jZXNzQXNzZXJ0aW9uLmgiCiAjaW5jbHVkZSAiUmVtb3RlQXVkaW9TZXNzaW9uLmgiCiAj
aW5jbHVkZSAiUmVtb3RlTGVnYWN5Q0RNRmFjdG9yeS5oIgogI2luY2x1ZGUgIlN0b3JhZ2VBcmVh
TWFwLmgiCkBAIC0yOTksNyArMjk5LDcgQEAgdm9pZCBXZWJQcm9jZXNzOjppbml0aWFsaXplQ29u
bmVjdGlvbihJUEM6OkNvbm5lY3Rpb24qIGNvbm5lY3Rpb24pCiAKICAgICBBU1NFUlQoIW1fdWlQ
cm9jZXNzRGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb24pOwogICAgIGlmIChhdXRvIHJlbW90ZVBy
b2Nlc3NJRCA9IGNvbm5lY3Rpb24tPnJlbW90ZVByb2Nlc3NJRCgpKQotICAgICAgICBtX3VpUHJv
Y2Vzc0RlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uID0gbWFrZVVuaXF1ZTxEZXBlbmRlbmN5UHJv
Y2Vzc0Fzc2VydGlvbj4ocmVtb3RlUHJvY2Vzc0lELCAiV2ViQ29udGVudCBwcm9jZXNzIGRlcGVu
ZGVuY3kgb24gVUlQcm9jZXNzIl9zKTsKKyAgICAgICAgbV91aVByb2Nlc3NEZXBlbmRlbmN5UHJv
Y2Vzc0Fzc2VydGlvbiA9IG1ha2VVbmlxdWU8UHJvY2Vzc0Fzc2VydGlvbj4ocmVtb3RlUHJvY2Vz
c0lELCAiV2ViQ29udGVudCBwcm9jZXNzIGRlcGVuZGVuY3kgb24gVUlQcm9jZXNzIl9zLCBQcm9j
ZXNzQXNzZXJ0aW9uVHlwZTo6RGVwZW5kZW50UHJvY2Vzc0xpbmspOwogICAgIGVsc2UKICAgICAg
ICAgUkVMRUFTRV9MT0dfRVJST1JfSUZfQUxMT1dFRChQcm9jZXNzU3VzcGVuc2lvbiwgIlVuYWJs
ZSB0byBjcmVhdGUgYSBwcm9jZXNzIGRlcGVuZGluZyBhc3NlcnRpb24gb24gVUlQcm9jZXNzIGJl
Y2F1c2UgcmVtb3RlUHJvY2Vzc0lEIGlzIDAiKTsKICNlbmRpZiAvLyBQTEFURk9STShJT1NfRkFN
SUxZKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaCBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmgKaW5kZXggOTNlMWVkOTgzM2Eu
LjBlM2E3MjI4NTc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJv
Y2Vzcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmgKQEAgLTk4
LDcgKzk4LDYgQEAgc3RydWN0IFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YTsKIAogbmFtZXNwYWNl
IFdlYktpdCB7CiAKLWNsYXNzIERlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uOwogY2xhc3MgRXZl
bnREaXNwYXRjaGVyOwogY2xhc3MgR2FtZXBhZERhdGE7CiBjbGFzcyBHUFVQcm9jZXNzQ29ubmVj
dGlvbjsKQEAgLTEwNyw2ICsxMDYsNyBAQCBjbGFzcyBMaWJXZWJSVENDb2RlY3M7CiBjbGFzcyBM
aWJXZWJSVENOZXR3b3JrOwogY2xhc3MgTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOwogY2xhc3Mg
T2JqQ09iamVjdEdyYXBoOworY2xhc3MgUHJvY2Vzc0Fzc2VydGlvbjsKIHN0cnVjdCBTZXJ2aWNl
V29ya2VySW5pdGlhbGl6YXRpb25EYXRhOwogY2xhc3MgU3RvcmFnZUFyZWFNYXA7CiBjbGFzcyBV
c2VyRGF0YTsKQEAgLTU3Nyw3ICs1NzcsNyBAQCBwcml2YXRlOgogCiAjaWYgUExBVEZPUk0oSU9T
X0ZBTUlMWSkKICAgICBXZWJTUUxpdGVEYXRhYmFzZVRyYWNrZXIgbV93ZWJTUUxpdGVEYXRhYmFz
ZVRyYWNrZXI7Ci0gICAgc3RkOjp1bmlxdWVfcHRyPERlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9u
PiBtX3VpUHJvY2Vzc0RlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uOworICAgIHN0ZDo6dW5pcXVl
X3B0cjxQcm9jZXNzQXNzZXJ0aW9uPiBtX3VpUHJvY2Vzc0RlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0
aW9uOwogI2VuZGlmCiAKICAgICBlbnVtIFBhZ2VNYXJraW5nTGF5ZXJzQXNWb2xhdGlsZUNvdW50
ZXJUeXBlIHsgfTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395643</attachid>
            <date>2020-04-06 18:37:10 -0700</date>
            <delta_ts>2020-04-07 15:09:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210076-20200406183709.patch</filename>
            <type>text/plain</type>
            <size>22909</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NjEwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGNlYTQ1MGVhYzIxZDU4OWI2YTk5NmI0
ZTI4NDFjZTE2ZWE1NWM0YTkuLjRiMmVjYzI4OTI2YmRlOWU0Yzg1MDNiMmQ3OGNkNGQyYmM1NjAz
NmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMjAtMDQtMDYgIENocmlzIER1bWV6ICA8Y2R1bWV6
QGFwcGxlLmNvbT4KKworICAgICAgICBNZXJnZSBEZXBlbmRlbmN5QXNzZXJ0aW9uIGludG8gUHJv
Y2Vzc0Fzc2VydGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjEwMDc2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiB3dGYvUGxhdGZvcm1IYXZlLmg6CisKIDIwMjAtMDQtMDYgIFJvc3MgS2lyc2xpbmcg
IDxyb3NzLmtpcnNsaW5nQHNvbnkuY29tPgogCiAgICAgICAgIFVwZGF0ZSBtaW5pbXVtIElDVSB2
ZXJzaW9uIHRvIDYwLjIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggNTA1YzFjNWU3MDZmZTMzMGQ0ZTIyYWQxMjg1MGQw
ZDlkNTE4NjgxYi4uYmY2NTIyMjU3ZjQxNmFiMmQxZjUwOGQxZTY3ZTViYjRlZWNlZWM2ZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwzMSBAQAorMjAyMC0wNC0wNiAgQ2hyaXMgRHVtZXogIDxjZHVtZXpA
YXBwbGUuY29tPgorCisgICAgICAgIE1lcmdlIERlcGVuZGVuY3lBc3NlcnRpb24gaW50byBQcm9j
ZXNzQXNzZXJ0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMTAwNzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBNZXJnZSBEZXBlbmRlbmN5QXNzZXJ0aW9uIGludG8gUHJvY2Vzc0Fzc2VydGlvbi4gQWZ0
ZXIgcjI1OTYxMCwgUHJvY2Vzc0Fzc2VydGlvbiBjYW4gdXNlCisgICAgICAgIFJ1bm5pbmdCb2Fy
ZCBhc3NlcnRpb25zIHNvIHRoZXJlIGlzIG5vIGxvbmdlciBhbnkgbmVlZCB0byBhIHNlcGFyYXRl
IERlcGVuZGVuY3lBc3NlcnRpb24KKyAgICAgICAgY2xhc3MuIFdlIGNhbiBzaW1wbHkgaW50cm9k
dWNlIGEgbmV3IGFzc2VydGlvbiB0eXBlIHRvIFByb2Nlc3NBc3NlcnRpb24uCisKKyAgICAgICAg
KiBTaGFyZWQvRGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb24uY3BwOiBSZW1vdmVkLgorICAgICAg
ICAqIFNoYXJlZC9EZXBlbmRlbmN5UHJvY2Vzc0Fzc2VydGlvbi5oOiBSZW1vdmVkLgorICAgICAg
ICAqIFNoYXJlZC9pb3MvRGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb25JT1MubW06IFJlbW92ZWQu
CisgICAgICAgICogU291cmNlcy50eHQ6CisgICAgICAgICogU291cmNlc0NvY29hLnR4dDoKKyAg
ICAgICAgKiBVSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oOgorICAgICAgICAqIFVJUHJvY2Vz
cy9pb3MvUHJvY2Vzc0Fzc2VydGlvbklPUy5tbToKKyAgICAgICAgKC1bV0tQcm9jZXNzQXNzZXJ0
aW9uQmFja2dyb3VuZFRhc2tNYW5hZ2VyIGluaXRdKToKKyAgICAgICAgKC1bV0tQcm9jZXNzQXNz
ZXJ0aW9uQmFja2dyb3VuZFRhc2tNYW5hZ2VyIF9oYXNCYWNrZ3JvdW5kVGFza10pOgorICAgICAg
ICAoLVtXS1Byb2Nlc3NBc3NlcnRpb25CYWNrZ3JvdW5kVGFza01hbmFnZXIgX3VwZGF0ZUJhY2tn
cm91bmRUYXNrXSk6CisgICAgICAgICgtW1dLUHJvY2Vzc0Fzc2VydGlvbkJhY2tncm91bmRUYXNr
TWFuYWdlciBfcmVsZWFzZUJhY2tncm91bmRUYXNrXSk6CisgICAgICAgIChXZWJLaXQ6OnJ1bm5p
bmdCb2FyZE5hbWVGb3JBc3NlcnRpb25UeXBlKToKKyAgICAgICAgKiBXZWJLaXQueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzOjppbml0aWFsaXplQ29ubmVjdGlvbik6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmg6CisKIDIwMjAtMDQtMDYgIENocmlzIER1bWV6
ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXSBUcmFuc2l0aW9uIG1vc3QgcHJv
Y2VzcyBhc3NlcnRpb25zIHRvIFJ1bm5pbmdCb2FyZApkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93
dGYvUGxhdGZvcm1IYXZlLmggYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUhhdmUuaAppbmRleCAz
NmEzZjQ2NGE1OTQxMjQ0YWUwZTM3YzNlNWEzODAwODJkMjQ3YzY0Li45MDdlMzZhMmY5ZDY2ODc0
NGJiZTE5MTUwOGZiYWViMzhlOWUyMzIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0
Zm9ybUhhdmUuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUhhdmUuaApAQCAtNDU5LDcg
KzQ1OSw3IEBACiAjaWYgKFBMQVRGT1JNKElPU19GQU1JTFkpICYmIF9fSVBIT05FX09TX1ZFUlNJ
T05fTUlOX1JFUVVJUkVEID49IDE0MDAwMCkgXAogICAgIHx8IChQTEFURk9STShXQVRDSE9TKSAm
JiBfX1dBVENIX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDcwMDAwKSBcCiAgICAgfHwgKFBM
QVRGT1JNKEFQUExFVFYpICYmIF9fVFZfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTQwMDAw
KQotI2RlZmluZSBIQVZFX1JVTk5JTkdCT0FSRF9XRUJLSVRfQVNTRVJUSU9OUyAxCisjZGVmaW5l
IEhBVkVfUlVOTklOR0JPQVJEX1ZJU0lCSUxJVFlfQVNTRVJUSU9OUyAxCiAjZW5kaWYKIAogI2lm
IFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE1
MDAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0RlcGVuZGVuY3lQcm9jZXNzQXNz
ZXJ0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0RlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0
aW9uLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTVkNTI1MWNjOGI2Y2RkOTY3
YmU4NTc2NTAyN2YwOWNiNDE1MDlmYS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9EZXBlbmRlbmN5UHJvY2Vzc0Fzc2Vy
dGlvbi5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw0NCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0
IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0g
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0g
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lu
Y2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkRlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uLmgi
Ci0KLSNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKLQotbmFtZXNwYWNlIFdlYktpdCB7Ci0KLURl
cGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uOjpEZXBlbmRlbmN5UHJvY2Vzc0Fzc2VydGlvbihQcm9j
ZXNzSUQsIEFTQ0lJTGl0ZXJhbCBkZXNjcmlwdGlvbikKLXsKLSAgICBVTlVTRURfUEFSQU0oZGVz
Y3JpcHRpb24pOwotfQotCi1EZXBlbmRlbmN5UHJvY2Vzc0Fzc2VydGlvbjo6fkRlcGVuZGVuY3lQ
cm9jZXNzQXNzZXJ0aW9uKCkKLXsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViS2l0Ci0KLSNlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvRGVwZW5kZW5jeVByb2Nlc3NBc3Nl
cnRpb24uaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0RlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9u
LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGFhMDFhYTUyN2MwMDYyNDk3ODE2NTI5
MTg3ZDU2ZTQ1YmIxMTcxODUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvRGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb24u
aAorKysgL2Rldi9udWxsCkBAIC0xLDUwICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBg
YEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jcHJhZ21hIG9u
Y2UKLQotI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzSUQuaD4KLSNpbmNsdWRlIDx3dGYvUmV0YWluUHRy
Lmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvQVNDSUlMaXRlcmFsLmg+Ci0KLSNpZiBQTEFURk9STShJ
T1NfRkFNSUxZKQotT0JKQ19DTEFTUyBSQlNBc3NlcnRpb247Ci0jZW5kaWYKLQotbmFtZXNwYWNl
IFdlYktpdCB7Ci0KLWNsYXNzIERlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uIHsKLSAgICBXVEZf
TUFLRV9GQVNUX0FMTE9DQVRFRDsKLXB1YmxpYzoKLSAgICBEZXBlbmRlbmN5UHJvY2Vzc0Fzc2Vy
dGlvbihQcm9jZXNzSUQgdGFyZ2V0UElELCBBU0NJSUxpdGVyYWwgZGVzY3JpcHRpb24pOwotICAg
IH5EZXBlbmRlbmN5UHJvY2Vzc0Fzc2VydGlvbigpOwotCi1wcml2YXRlOgotI2lmIFBMQVRGT1JN
KElPU19GQU1JTFkpCi0gICAgUmV0YWluUHRyPFJCU0Fzc2VydGlvbj4gbV9hc3NlcnRpb247Ci0j
ZW5kaWYKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9TaGFyZWQvaW9zL0RlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uSU9TLm1tIGIvU291cmNl
L1dlYktpdC9TaGFyZWQvaW9zL0RlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uSU9TLm1tCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5ZjIwYWVjZjFkYzY4ZGRlMDQwNDgwY2ZjMDNjMmM4
OTI2OGZiYjI4Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBh
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL2lvcy9EZXBlbmRlbmN5UHJvY2Vzc0Fzc2VydGlvbklPUy5t
bQorKysgL2Rldi9udWxsCkBAIC0xLDU2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBg
YEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW1wb3J0ICJj
b25maWcuaCIKLSNpbXBvcnQgIkRlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uLmgiCi0KLSNpZiBQ
TEFURk9STShJT1NfRkFNSUxZKQotCi0jaW1wb3J0ICJSdW5uaW5nQm9hcmRTZXJ2aWNlc1NQSS5o
IgotCi1uYW1lc3BhY2UgV2ViS2l0IHsKLQotRGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb246OkRl
cGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uKFByb2Nlc3NJRCB0YXJnZXRQSUQsIEFTQ0lJTGl0ZXJh
bCBkZXNjcmlwdGlvbikKLXsKLSAgICBSQlNUYXJnZXQgKnRhcmdldCA9IFtSQlNUYXJnZXQgdGFy
Z2V0V2l0aFBpZDp0YXJnZXRQSURdOwotICAgIFJCU0RvbWFpbkF0dHJpYnV0ZSAqZG9tYWluQXR0
cmlidXRlID0gW1JCU0RvbWFpbkF0dHJpYnV0ZSBhdHRyaWJ1dGVXaXRoRG9tYWluOkAiY29tLmFw
cGxlLndlYmtpdCIgbmFtZTpAIkRlcGVuZGVudFByb2Nlc3NMaW5rIl07Ci0KLSAgICBOU1N0cmlu
ZyAqbnNEZXNjcmlwdGlvbiA9IFtOU1N0cmluZyBzdHJpbmdXaXRoQ1N0cmluZzpkZXNjcmlwdGlv
bi5jaGFyYWN0ZXJzKCkgZW5jb2Rpbmc6TlNBU0NJSVN0cmluZ0VuY29kaW5nXTsKLSAgICBtX2Fz
c2VydGlvbiA9IGFkb3B0TlMoW1tSQlNBc3NlcnRpb24gYWxsb2NdIGluaXRXaXRoRXhwbGFuYXRp
b246bnNEZXNjcmlwdGlvbiB0YXJnZXQ6dGFyZ2V0IGF0dHJpYnV0ZXM6QFtkb21haW5BdHRyaWJ1
dGVdXSk7Ci0gICAgTlNFcnJvciAqYWNxdWlzaXRpb25FcnJvciA9IG5pbDsKLSAgICBpZiAoIVtt
X2Fzc2VydGlvbiBhY3F1aXJlV2l0aEVycm9yOiZhY3F1aXNpdGlvbkVycm9yXSkKLSAgICAgICAg
UkVMRUFTRV9MT0dfRVJST1IoUHJvY2VzcywgIkRlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uOjpE
ZXBlbmRlbmN5UHJvY2Vzc0Fzc2VydGlvbjogRmFpbGVkIHRvIGFjcXVpcmUgZGVwZW5kZW5jeSBw
cm9jZXNzIGFzc2VydGlvbiAnJXtwdWJsaWN9cycsIGVycm9yOiAle3B1YmxpY31AIiwgZGVzY3Jp
cHRpb24uY2hhcmFjdGVycygpLCBhY3F1aXNpdGlvbkVycm9yKTsKLSAgICBlbHNlCi0gICAgICAg
IFJFTEVBU0VfTE9HKFByb2Nlc3MsICJEZXBlbmRlbmN5UHJvY2Vzc0Fzc2VydGlvbjo6RGVwZW5k
ZW5jeVByb2Nlc3NBc3NlcnRpb246IFN1Y2Nlc3NmdWxseSB0b29rIGEgZGVwZW5kZW5jeSBwcm9j
ZXNzIGFzc2VydGlvbiAnJXtwdWJsaWN9cycgZm9yIHRhcmdldCBwcm9jZXNzIHdpdGggUElEICVk
IiwgZGVzY3JpcHRpb24uY2hhcmFjdGVycygpLCB0YXJnZXRQSUQpOwotfQotCi1EZXBlbmRlbmN5
UHJvY2Vzc0Fzc2VydGlvbjo6fkRlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uKCkKLXsKLSAgICBb
bV9hc3NlcnRpb24gaW52YWxpZGF0ZV07Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYktpdAotCi0j
ZW5kaWYgLy8gUExBVEZPUk0oSU9TX0ZBTUlMWSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
U291cmNlcy50eHQgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXMudHh0CmluZGV4IGRmZGFlMmEzMzIy
ZmM3ZmJhYzVjNTY2ODc3Y2EyMWUyODk0NzFlYzAuLjQ3Y2NiZWQ0NTFjM2Q4YWU1YWIwYzczZTUx
Yjg1OTllNTAyOTE1ODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU291cmNlcy50eHQKKysr
IGIvU291cmNlL1dlYktpdC9Tb3VyY2VzLnR4dApAQCAtMTU2LDcgKzE1Niw2IEBAIFNoYXJlZC9C
bG9iRGF0YUZpbGVSZWZlcmVuY2VXaXRoU2FuZGJveEV4dGVuc2lvbi5jcHAgQG5vLXVuaWZ5CiBT
aGFyZWQvQ2FjaGVNb2RlbC5jcHAKIFNoYXJlZC9Db250ZXh0TWVudUNvbnRleHREYXRhLmNwcAog
U2hhcmVkL0RlYnVnZ2FibGVJbmZvRGF0YS5jcHAKLVNoYXJlZC9EZXBlbmRlbmN5UHJvY2Vzc0Fz
c2VydGlvbi5jcHAKIFNoYXJlZC9FZGl0aW5nUmFuZ2UuY3BwCiBTaGFyZWQvRWRpdG9yU3RhdGUu
Y3BwCiBTaGFyZWQvRm9udEluZm8uY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NvdXJj
ZXNDb2NvYS50eHQgYi9Tb3VyY2UvV2ViS2l0L1NvdXJjZXNDb2NvYS50eHQKaW5kZXggYTEyNGNk
Y2E3ODQ5MjQ4YTUwMzlmYjc0ZGE0NTQxYzE4ODU3Zjk3ZS4uZjkzMjNmYjkzOTYwOThhOThkZjk2
ZjZiZDYyZDAxNjJkNmRmOGNjOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9Tb3VyY2VzQ29j
b2EudHh0CisrKyBiL1NvdXJjZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dApAQCAtMTc0LDcgKzE3
NCw2IEBAIFNoYXJlZC9FbnRyeVBvaW50VXRpbGl0aWVzL0NvY29hL1hQQ1NlcnZpY2UvWFBDU2Vy
dmljZUVudHJ5UG9pbnQubW0KIFNoYXJlZC9FbnRyeVBvaW50VXRpbGl0aWVzL0NvY29hL1hQQ1Nl
cnZpY2UvWFBDU2VydmljZU1haW4ubW0KIAogU2hhcmVkL2lvcy9BdXhpbGlhcnlQcm9jZXNzSU9T
Lm1tCi1TaGFyZWQvaW9zL0RlcGVuZGVuY3lQcm9jZXNzQXNzZXJ0aW9uSU9TLm1tCiBTaGFyZWQv
aW9zL0ludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uLm1tCiBTaGFyZWQvaW9zL0ludGVy
YWN0aW9uSW5mb3JtYXRpb25SZXF1ZXN0LmNwcAogU2hhcmVkL2lvcy9OYXRpdmVXZWJLZXlib2Fy
ZEV2ZW50SU9TLm1tCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNz
QXNzZXJ0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Qcm9jZXNzQXNzZXJ0aW9uLmgK
aW5kZXggMmM4NjNjMGFiODNlZmNlMmY1ZTg0NzE5NjA4YTg1OGFmMWE2ZTdlYi4uZWUwYzhkYjRh
ZTgwODc5YTc5ZTc4NzQ2NzcxMmYzYWZmNDg4ZGVjZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvUHJvY2Vzc0Fzc2VydGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1Byb2Nlc3NBc3NlcnRpb24uaApAQCAtNTAsNiArNTAsNyBAQCBlbnVtIGNsYXNzIFByb2Nl
c3NBc3NlcnRpb25UeXBlIHsKICAgICBVbmJvdW5kZWROZXR3b3JraW5nLAogICAgIEZvcmVncm91
bmQsCiAgICAgTWVkaWFQbGF5YmFjaywKKyAgICBEZXBlbmRlbnRQcm9jZXNzTGluaywKIH07CiAK
IGNsYXNzIFByb2Nlc3NBc3NlcnRpb24gOiBwdWJsaWMgQ2FuTWFrZVdlYWtQdHI8UHJvY2Vzc0Fz
c2VydGlvbj4gewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vz
c1Byb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHAK
aW5kZXggNzllNjBiNTBiOTA3MGJkYzVkODkwMWUwMGEwOWY3YzNhNDhlZmJmOS4uMmFlZGRhZDAx
NzRhOWU2OTk1NjVkMmZmMThlYWI1MGY2M2M4NjZlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwCkBAIC0xMzY3LDYgKzEzNjcsNyBAQCB2b2lkIFdlYlBy
b2Nlc3NQcm94eTo6ZGlkU2V0QXNzZXJ0aW9uVHlwZShQcm9jZXNzQXNzZXJ0aW9uVHlwZSB0eXBl
KQogICAgIAogICAgIGNhc2UgUHJvY2Vzc0Fzc2VydGlvblR5cGU6Ok1lZGlhUGxheWJhY2s6CiAg
ICAgY2FzZSBQcm9jZXNzQXNzZXJ0aW9uVHlwZTo6VW5ib3VuZGVkTmV0d29ya2luZzoKKyAgICBj
YXNlIFByb2Nlc3NBc3NlcnRpb25UeXBlOjpEZXBlbmRlbnRQcm9jZXNzTGluazoKICAgICAgICAg
QVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9pb3MvUHJvY2Vzc0Fzc2VydGlvbklPUy5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL2lvcy9Qcm9jZXNzQXNzZXJ0aW9uSU9TLm1tCmluZGV4IDk1NTg2ZTU1MjUzYTRhZTRm
YjVkN2NmZjY5NzgwNzAwYmI4ZWU2YjkuLjQ0NWU3MGNjZjJiODQwZDdmN2U5ZDM4NjhlNjI4MTI1
NjQ4MDQ0NzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9Qcm9jZXNz
QXNzZXJ0aW9uSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9Qcm9jZXNz
QXNzZXJ0aW9uSU9TLm1tCkBAIC00Niw3ICs0Niw3IEBAIHVzaW5nIFdlYktpdDo6UHJvY2Vzc0Fu
ZFVJQXNzZXJ0aW9uOwogc3RhdGljIGNvbnN0IFNlY29uZHMgcmVsZWFzZUJhY2tncm91bmRUYXNr
QWZ0ZXJFeHBpcmF0aW9uRGVsYXkgeyAyX3MgfTsKIAogQGludGVyZmFjZSBXS1Byb2Nlc3NBc3Nl
cnRpb25CYWNrZ3JvdW5kVGFza01hbmFnZXIKLSNpZiBIQVZFKFJVTk5JTkdCT0FSRF9XRUJLSVRf
QVNTRVJUSU9OUykKKyNpZiBIQVZFKFJVTk5JTkdCT0FSRF9WSVNJQklMSVRZX0FTU0VSVElPTlMp
CiAgICAgOiBOU09iamVjdCA8UkJTQXNzZXJ0aW9uT2JzZXJ2aW5nPgogI2Vsc2UKICAgICA6IE5T
T2JqZWN0CkBAIC02MSw3ICs2MSw3IEBAIEBlbmQKIAogQGltcGxlbWVudGF0aW9uIFdLUHJvY2Vz
c0Fzc2VydGlvbkJhY2tncm91bmRUYXNrTWFuYWdlcgogewotI2lmIEhBVkUoUlVOTklOR0JPQVJE
X1dFQktJVF9BU1NFUlRJT05TKQorI2lmIEhBVkUoUlVOTklOR0JPQVJEX1ZJU0lCSUxJVFlfQVNT
RVJUSU9OUykKICAgICBSZXRhaW5QdHI8UkJTQXNzZXJ0aW9uPiBfYmFja2dyb3VuZFRhc2s7CiAj
ZWxzZQogICAgIFVJQmFja2dyb3VuZFRhc2tJZGVudGlmaWVyIF9iYWNrZ3JvdW5kVGFzazsKQEAg
LTg0LDcgKzg0LDcgQEAgLSAoaW5zdGFuY2V0eXBlKWluaXQKICAgICBpZiAoIXNlbGYpCiAgICAg
ICAgIHJldHVybiBuaWw7CiAKLSNpZiAhSEFWRShSVU5OSU5HQk9BUkRfV0VCS0lUX0FTU0VSVElP
TlMpCisjaWYgIUhBVkUoUlVOTklOR0JPQVJEX1ZJU0lCSUxJVFlfQVNTRVJUSU9OUykKICAgICBf
YmFja2dyb3VuZFRhc2sgPSBVSUJhY2tncm91bmRUYXNrSW52YWxpZDsKICNlbmRpZgogCkBAIC0x
NjksNyArMTY5LDcgQEAgLSAodm9pZClfY2FuY2VsUGVuZGluZ1JlbGVhc2VUYXNrCiAKIC0gKEJP
T0wpX2hhc0JhY2tncm91bmRUYXNrCiB7Ci0jaWYgSEFWRShSVU5OSU5HQk9BUkRfV0VCS0lUX0FT
U0VSVElPTlMpCisjaWYgSEFWRShSVU5OSU5HQk9BUkRfVklTSUJJTElUWV9BU1NFUlRJT05TKQog
ICAgIHJldHVybiAhIV9iYWNrZ3JvdW5kVGFzazsKICNlbHNlCiAgICAgcmV0dXJuIF9iYWNrZ3Jv
dW5kVGFzayAhPSBVSUJhY2tncm91bmRUYXNrSW52YWxpZDsKQEAgLTE4NCw3ICsxODQsNyBAQCAt
ICh2b2lkKV91cGRhdGVCYWNrZ3JvdW5kVGFzawogICAgICAgICAgICAgcmV0dXJuOwogICAgICAg
ICB9CiAgICAgICAgIFJFTEVBU0VfTE9HKFByb2Nlc3NTdXNwZW5zaW9uLCAiJXAgLSBXS1Byb2Nl
c3NBc3NlcnRpb25CYWNrZ3JvdW5kVGFza01hbmFnZXI6IGJlZ2luQmFja2dyb3VuZFRhc2tXaXRo
TmFtZSIsIHNlbGYpOwotI2lmIEhBVkUoUlVOTklOR0JPQVJEX1dFQktJVF9BU1NFUlRJT05TKQor
I2lmIEhBVkUoUlVOTklOR0JPQVJEX1ZJU0lCSUxJVFlfQVNTRVJUSU9OUykKICAgICAgICAgUkJT
VGFyZ2V0ICp0YXJnZXQgPSBbUkJTVGFyZ2V0IGN1cnJlbnRQcm9jZXNzXTsKICAgICAgICAgUkJT
RG9tYWluQXR0cmlidXRlICpkb21haW5BdHRyaWJ1dGUgPSBbUkJTRG9tYWluQXR0cmlidXRlIGF0
dHJpYnV0ZVdpdGhEb21haW46QCJjb20uYXBwbGUuY29tbW9uIiBuYW1lOkAiRmluaXNoVGFza0lu
dGVycnVwdGFibGUiXTsKICAgICAgICAgX2JhY2tncm91bmRUYXNrID0gYWRvcHROUyhbW1JCU0Fz
c2VydGlvbiBhbGxvY10gaW5pdFdpdGhFeHBsYW5hdGlvbjpAIldlYktpdCBVSVByb2Nlc3MgYmFj
a2dyb3VuZCB0YXNrIiB0YXJnZXQ6dGFyZ2V0IGF0dHJpYnV0ZXM6QFtkb21haW5BdHRyaWJ1dGVd
XSk7CkBAIC0yMDQsNyArMjA0LDcgQEAgLSAodm9pZClfdXBkYXRlQmFja2dyb3VuZFRhc2sKICAg
ICAgICAgW3NlbGYgX3JlbGVhc2VCYWNrZ3JvdW5kVGFza107CiB9CiAKLSNpZiBIQVZFKFJVTk5J
TkdCT0FSRF9XRUJLSVRfQVNTRVJUSU9OUykKKyNpZiBIQVZFKFJVTk5JTkdCT0FSRF9WSVNJQklM
SVRZX0FTU0VSVElPTlMpCiAtICh2b2lkKWFzc2VydGlvbldpbGxJbnZhbGlkYXRlOihSQlNBc3Nl
cnRpb24gKilhc3NlcnRpb24KIHsKICAgICBBU1NFUlQoYXNzZXJ0aW9uID09IF9iYWNrZ3JvdW5k
VGFzay5nZXQoKSk7CkBAIC0yNTMsNyArMjUzLDcgQEAgLSAodm9pZClfcmVsZWFzZUJhY2tncm91
bmRUYXNrCiAgICAgaWYgKF9hcHBsaWNhdGlvbklzQmFja2dyb3VuZGVkKQogICAgICAgICBXZWJL
aXQ6OldlYlByb2Nlc3NQb29sOjpub3RpZnlQcm9jZXNzUG9vbHNBcHBsaWNhdGlvbklzQWJvdXRU
b1N1c3BlbmQoKTsKIAotI2lmIEhBVkUoUlVOTklOR0JPQVJEX1dFQktJVF9BU1NFUlRJT05TKQor
I2lmIEhBVkUoUlVOTklOR0JPQVJEX1ZJU0lCSUxJVFlfQVNTRVJUSU9OUykKICAgICBbX2JhY2tn
cm91bmRUYXNrIHJlbW92ZU9ic2VydmVyOnNlbGZdOwogICAgIFtfYmFja2dyb3VuZFRhc2sgaW52
YWxpZGF0ZV07CiAgICAgX2JhY2tncm91bmRUYXNrID0gbnVsbHB0cjsKQEAgLTI5MSw3ICsyOTEs
NyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIAogc3RhdGljIE5TU3RyaW5nICpydW5uaW5nQm9hcmRO
YW1lRm9yQXNzZXJ0aW9uVHlwZShQcm9jZXNzQXNzZXJ0aW9uVHlwZSBhc3NlcnRpb25UeXBlKQog
ewotI2lmIEhBVkUoUlVOTklOR0JPQVJEX1dFQktJVF9BU1NFUlRJT05TKQorI2lmIEhBVkUoUlVO
TklOR0JPQVJEX1ZJU0lCSUxJVFlfQVNTRVJUSU9OUykKICAgICBzd2l0Y2ggKGFzc2VydGlvblR5
cGUpIHsKICAgICBjYXNlIFByb2Nlc3NBc3NlcnRpb25UeXBlOjpTdXNwZW5kZWQ6CiAgICAgICAg
IHJldHVybiBAIlN1c3BlbmRlZCI7CkBAIC0zMDEsMTEgKzMwMSwxNCBAQCBzdGF0aWMgTlNTdHJp
bmcgKnJ1bm5pbmdCb2FyZE5hbWVGb3JBc3NlcnRpb25UeXBlKFByb2Nlc3NBc3NlcnRpb25UeXBl
IGFzc2VydGlvbgogICAgICAgICByZXR1cm4gQCJVbmJvdW5kZWROZXR3b3JraW5nIjsKICAgICBj
YXNlIFByb2Nlc3NBc3NlcnRpb25UeXBlOjpGb3JlZ3JvdW5kOgogICAgICAgICByZXR1cm4gQCJG
b3JlZ3JvdW5kIjsKKyAgICBjYXNlIFByb2Nlc3NBc3NlcnRpb25UeXBlOjpEZXBlbmRlbnRQcm9j
ZXNzTGluazoKKyAgICAgICAgcmV0dXJuIEAiRGVwZW5kZW50UHJvY2Vzc0xpbmsiOwogICAgIGNh
c2UgUHJvY2Vzc0Fzc2VydGlvblR5cGU6Ok1lZGlhUGxheWJhY2s6CiAgICAgICAgIHJldHVybiBu
aWw7IC8vIEZJWE1FOiBOYW1lIHRvIGJlIGRlZmluZWQgaW4gPHJkYXI6Ly9wcm9ibGVtLzYxMjYz
MTQ3Pi4KICAgICB9CiAjZWxzZQotICAgIFVOVVNFRF9QQVJBTShhc3NlcnRpb25UeXBlKTsKKyAg
ICBpZiAoYXNzZXJ0aW9uVHlwZSA9PSBQcm9jZXNzQXNzZXJ0aW9uVHlwZTo6RGVwZW5kZW50UHJv
Y2Vzc0xpbmspCisgICAgICAgIHJldHVybiBAIkRlcGVuZGVudFByb2Nlc3NMaW5rIjsKICAgICBy
ZXR1cm4gbmlsOwogI2VuZGlmCiB9CkBAIC0zMjUsNiArMzI4LDkgQEAgc3RhdGljIEJLU1Byb2Nl
c3NBc3NlcnRpb25GbGFncyBmbGFnc0ZvckFzc2VydGlvblR5cGUoUHJvY2Vzc0Fzc2VydGlvblR5
cGUgYXNzZXIKICAgICBjYXNlIFByb2Nlc3NBc3NlcnRpb25UeXBlOjpGb3JlZ3JvdW5kOgogICAg
IGNhc2UgUHJvY2Vzc0Fzc2VydGlvblR5cGU6Ok1lZGlhUGxheWJhY2s6CiAgICAgICAgIHJldHVy
biBmb3JlZ3JvdW5kVGFiRmxhZ3M7CisgICAgY2FzZSBQcm9jZXNzQXNzZXJ0aW9uVHlwZTo6RGVw
ZW5kZW50UHJvY2Vzc0xpbms6CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAg
ICByZXR1cm4gYmFja2dyb3VuZFRhYkZsYWdzOwogICAgIH0KIH0KIApAQCAtMzM5LDYgKzM0NSw5
IEBAIHN0YXRpYyBCS1NQcm9jZXNzQXNzZXJ0aW9uUmVhc29uIHRvQktTUHJvY2Vzc0Fzc2VydGlv
blJlYXNvbihQcm9jZXNzQXNzZXJ0aW9uVHlwCiAgICAgICAgIHJldHVybiBCS1NQcm9jZXNzQXNz
ZXJ0aW9uUmVhc29uRmluaXNoVGFza1VuYm91bmRlZDsKICAgICBjYXNlIFByb2Nlc3NBc3NlcnRp
b25UeXBlOjpNZWRpYVBsYXliYWNrOgogICAgICAgICByZXR1cm4gQktTUHJvY2Vzc0Fzc2VydGlv
blJlYXNvbk1lZGlhUGxheWJhY2s7CisgICAgY2FzZSBQcm9jZXNzQXNzZXJ0aW9uVHlwZTo6RGVw
ZW5kZW50UHJvY2Vzc0xpbms6CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAg
ICByZXR1cm4gQktTUHJvY2Vzc0Fzc2VydGlvblJlYXNvbkV4dGVuc2lvbjsKICAgICB9CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2ogYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4
IDFjNWEyOGM0M2E2N2YzZjY4ZjNhNGRmZmJiOTVlMGZhNzE5NzdjNTUuLjA4M2FlOTY3NWE2MjE4
OTk0NDI2ZTE0MzkwNDNlYTU2ZGFkYTU4YzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
S2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzU1MSw5ICszNTUxLDYgQEAKIAkJNDZDRTNC
MTAyM0Q4QzgzRDAwMTZBOTZBIC8qIFdlYkJhY2tGb3J3YXJkTGlzdENvdW50cy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJCYWNrRm9yd2FyZExpc3RDb3VudHMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDZERjA2MzkxRjM5MDVFNTAwMTk4MEJCIC8qIE5l
dHdvcmtDT1JTUHJlZmxpZ2h0Q2hlY2tlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBOZXR3b3JrQ09SU1ByZWZsaWdodENoZWNrZXIuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk0NkRGMDYzQTFGMzkwNUU1MDAxOTgwQkIgLyogTmV0d29ya0NPUlNQ
cmVmbGlnaHRDaGVja2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5ldHdv
cmtDT1JTUHJlZmxpZ2h0Q2hlY2tlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk0
NkYzOEU4ODI0MTZEOTYzMDA1OTM3NUEgLyogRGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb24uY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGVwZW5kZW5jeVByb2Nlc3NB
c3NlcnRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk0NkYzOEU4OTI0MTZE
OTYzMDA1OTM3NUEgLyogRGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb24uaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gRGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb24uaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNDZGMzhFOEEyNDE2RDlBNzAwNTkzNzVBIC8qIERlcGVu
ZGVuY3lQcm9jZXNzQXNzZXJ0aW9uSU9TLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2Jq
Y3BwOyBuYW1lID0gRGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb25JT1MubW07IHBhdGggPSBpb3Mv
RGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb25JT1MubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTQ2RjM4RThCMjQxNkU2NkQwMDU5Mzc1QSAvKiBSdW5uaW5nQm9hcmRTZXJ2aWNlc1NQ
SS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSdW5uaW5nQm9hcmRTZXJ2aWNl
c1NQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0NkY5QjI2MjIzNTI2RUQwMDA2
RkU1RkEgLyogV2ViQmFja0ZvcndhcmRDYWNoZUVudHJ5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFdlYkJhY2tGb3J3YXJkQ2FjaGVFbnRyeS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk0OTYwQTNCQzIzQzUyODY0MDA5NjE4NDIgLyogV2ViVmlld0NhdGVnb3J5
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlZpZXdDYXRlZ29yeS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwpAQCAtNTk2OCw4ICs1OTY1LDYgQEAKIAkJCQk5OUY2NDJEMjFGQUJFMzc4MDA5NjIx
RTkgLyogQ29vcmRpbmF0ZVN5c3RlbS5oICovLAogCQkJCTk5MDM2QUU4MjNBOTcwODcwMDAwQjA2
QSAvKiBEZWJ1Z2dhYmxlSW5mb0RhdGEuY3BwICovLAogCQkJCTk5MDM2QUU3MjNBOTcwODcwMDAw
QjA2QSAvKiBEZWJ1Z2dhYmxlSW5mb0RhdGEuaCAqLywKLQkJCQk0NkYzOEU4ODI0MTZEOTYzMDA1
OTM3NUEgLyogRGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb24uY3BwICovLAotCQkJCTQ2RjM4RTg5
MjQxNkQ5NjMwMDU5Mzc1QSAvKiBEZXBlbmRlbmN5UHJvY2Vzc0Fzc2VydGlvbi5oICovLAogCQkJ
CTJEN0ZEMTkwMjIzQzczMEYwMDc4ODdGMSAvKiBEb2N1bWVudEVkaXRpbmdDb250ZXh0LmggKi8s
CiAJCQkJMkQ3RkQxOTEyMjNDNzMxMDAwNzg4N0YxIC8qIERvY3VtZW50RWRpdGluZ0NvbnRleHQu
bW0gKi8sCiAJCQkJQzUxNzM4ODAxMkRGOEY0RjAwRUUzRjQ3IC8qIERyYWdDb250cm9sbGVyQWN0
aW9uLmggKi8sCkBAIC02ODk3LDcgKzY4OTIsNiBAQAogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQlj
aGlsZHJlbiA9ICgKIAkJCQlBN0U5M0NFQjE5MjUzMUFBMDBBMURDNDggLyogQXV4aWxpYXJ5UHJv
Y2Vzc0lPUy5tbSAqLywKLQkJCQk0NkYzOEU4QTI0MTZEOUE3MDA1OTM3NUEgLyogRGVwZW5kZW5j
eVByb2Nlc3NBc3NlcnRpb25JT1MubW0gKi8sCiAJCQkJMkRBNjczMTkyMEM3NTRCMTAwM0NCNDAx
IC8qIER5bmFtaWNWaWV3cG9ydFNpemVVcGRhdGUuaCAqLywKIAkJCQkyREE5NDQ5RDE4ODRFNEYw
MDBFRDg2REIgLyogR2VzdHVyZVR5cGVzLmggKi8sCiAJCQkJQzVCQ0U1REExQzUwNzYxRDAwQ0RF
M0ZBIC8qIEludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uLmggKi8sCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKaW5kZXggNDk0ZmRmZjA5MGNmMjI4ZjhiNGJjZjYw
ZTkzZGIzNmU2ZWUzODRjYy4uMzNlYjVhNDcyYjgxYWViMGVjYzA3Mjg0MjM2ZjA3Mzg3ZWQxMGQz
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcApAQCAtMzEsNyArMzEs
NiBAQAogI2luY2x1ZGUgIkFQSVBhZ2VIYW5kbGUuaCIKICNpbmNsdWRlICJBdXRoZW50aWNhdGlv
bk1hbmFnZXIuaCIKICNpbmNsdWRlICJBdXhpbGlhcnlQcm9jZXNzTWVzc2FnZXMuaCIKLSNpbmNs
dWRlICJEZXBlbmRlbmN5UHJvY2Vzc0Fzc2VydGlvbi5oIgogI2luY2x1ZGUgIkRyYXdpbmdBcmVh
LmgiCiAjaW5jbHVkZSAiRXZlbnREaXNwYXRjaGVyLmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5k
bGUuaCIKQEAgLTQzLDYgKzQyLDcgQEAKICNpbmNsdWRlICJOZXR3b3JrU2Vzc2lvbi5oIgogI2lu
Y2x1ZGUgIk5ldHdvcmtTZXNzaW9uQ3JlYXRpb25QYXJhbWV0ZXJzLmgiCiAjaW5jbHVkZSAiUGx1
Z2luUHJvY2Vzc0Nvbm5lY3Rpb25NYW5hZ2VyLmgiCisjaW5jbHVkZSAiUHJvY2Vzc0Fzc2VydGlv
bi5oIgogI2luY2x1ZGUgIlJlbW90ZUF1ZGlvU2Vzc2lvbi5oIgogI2luY2x1ZGUgIlJlbW90ZUxl
Z2FjeUNETUZhY3RvcnkuaCIKICNpbmNsdWRlICJTdG9yYWdlQXJlYU1hcC5oIgpAQCAtMjk5LDkg
KzI5OSw5IEBAIHZvaWQgV2ViUHJvY2Vzczo6aW5pdGlhbGl6ZUNvbm5lY3Rpb24oSVBDOjpDb25u
ZWN0aW9uKiBjb25uZWN0aW9uKQogCiAgICAgQVNTRVJUKCFtX3VpUHJvY2Vzc0RlcGVuZGVuY3lQ
cm9jZXNzQXNzZXJ0aW9uKTsKICAgICBpZiAoYXV0byByZW1vdGVQcm9jZXNzSUQgPSBjb25uZWN0
aW9uLT5yZW1vdGVQcm9jZXNzSUQoKSkKLSAgICAgICAgbV91aVByb2Nlc3NEZXBlbmRlbmN5UHJv
Y2Vzc0Fzc2VydGlvbiA9IG1ha2VVbmlxdWU8RGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb24+KHJl
bW90ZVByb2Nlc3NJRCwgIldlYkNvbnRlbnQgcHJvY2VzcyBkZXBlbmRlbmN5IG9uIFVJUHJvY2Vz
cyJfcyk7CisgICAgICAgIG1fdWlQcm9jZXNzRGVwZW5kZW5jeVByb2Nlc3NBc3NlcnRpb24gPSBt
YWtlVW5pcXVlPFByb2Nlc3NBc3NlcnRpb24+KHJlbW90ZVByb2Nlc3NJRCwgIldlYkNvbnRlbnQg
cHJvY2VzcyBkZXBlbmRlbmN5IG9uIFVJUHJvY2VzcyJfcywgUHJvY2Vzc0Fzc2VydGlvblR5cGU6
OkRlcGVuZGVudFByb2Nlc3NMaW5rKTsKICAgICBlbHNlCi0gICAgICAgIFJFTEVBU0VfTE9HX0VS
Uk9SX0lGX0FMTE9XRUQoUHJvY2Vzc1N1c3BlbnNpb24sICJVbmFibGUgdG8gY3JlYXRlIGEgcHJv
Y2VzcyBkZXBlbmRpbmcgYXNzZXJ0aW9uIG9uIFVJUHJvY2VzcyBiZWNhdXNlIHJlbW90ZVByb2Nl
c3NJRCBpcyAwIik7CisgICAgICAgIFJFTEVBU0VfTE9HX0VSUk9SX0lGX0FMTE9XRUQoUHJvY2Vz
c1N1c3BlbnNpb24sICJVbmFibGUgdG8gY3JlYXRlIGEgcHJvY2VzcyBkZXBlbmRlbmN5IGFzc2Vy
dGlvbiBvbiBVSVByb2Nlc3MgYmVjYXVzZSByZW1vdGVQcm9jZXNzSUQgaXMgMCIpOwogI2VuZGlm
IC8vIFBMQVRGT1JNKElPU19GQU1JTFkpCiAKICAgICBtX3dlYkluc3BlY3RvckludGVycnVwdERp
c3BhdGNoZXItPmluaXRpYWxpemVDb25uZWN0aW9uKGNvbm5lY3Rpb24pOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaCBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQcm9jZXNzLmgKaW5kZXggOTNlMWVkOTgzM2E1NGIxYTEwNTk5YjE2ODhlNzFm
ODNlMThmYzVmYy4uMGUzYTcyMjg1NzU0MTUxMmE3MjUwMWU3M2VmNTIxZjM0YWNiODBmYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCkBAIC05OCw3ICs5OCw2IEBAIHN0cnVj
dCBTZXJ2aWNlV29ya2VyQ29udGV4dERhdGE7CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCi1jbGFz
cyBEZXBlbmRlbmN5UHJvY2Vzc0Fzc2VydGlvbjsKIGNsYXNzIEV2ZW50RGlzcGF0Y2hlcjsKIGNs
YXNzIEdhbWVwYWREYXRhOwogY2xhc3MgR1BVUHJvY2Vzc0Nvbm5lY3Rpb247CkBAIC0xMDcsNiAr
MTA2LDcgQEAgY2xhc3MgTGliV2ViUlRDQ29kZWNzOwogY2xhc3MgTGliV2ViUlRDTmV0d29yazsK
IGNsYXNzIE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjsKIGNsYXNzIE9iakNPYmplY3RHcmFwaDsK
K2NsYXNzIFByb2Nlc3NBc3NlcnRpb247CiBzdHJ1Y3QgU2VydmljZVdvcmtlckluaXRpYWxpemF0
aW9uRGF0YTsKIGNsYXNzIFN0b3JhZ2VBcmVhTWFwOwogY2xhc3MgVXNlckRhdGE7CkBAIC01Nzcs
NyArNTc3LDcgQEAgcHJpdmF0ZToKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgV2Vi
U1FMaXRlRGF0YWJhc2VUcmFja2VyIG1fd2ViU1FMaXRlRGF0YWJhc2VUcmFja2VyOwotICAgIHN0
ZDo6dW5pcXVlX3B0cjxEZXBlbmRlbmN5UHJvY2Vzc0Fzc2VydGlvbj4gbV91aVByb2Nlc3NEZXBl
bmRlbmN5UHJvY2Vzc0Fzc2VydGlvbjsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8UHJvY2Vzc0Fzc2Vy
dGlvbj4gbV91aVByb2Nlc3NEZXBlbmRlbmN5UHJvY2Vzc0Fzc2VydGlvbjsKICNlbmRpZgogCiAg
ICAgZW51bSBQYWdlTWFya2luZ0xheWVyc0FzVm9sYXRpbGVDb3VudGVyVHlwZSB7IH07Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>