<?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>236083</bug_id>
          
          <creation_ts>2022-02-03 08:34:36 -0800</creation_ts>
          <short_desc>Add plumbing to inform WebPageProxy when videos play, pause, seek, and enter or exit fullscreen</short_desc>
          <delta_ts>2022-02-03 17:09:18 -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>Media</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>236100</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>bdakin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1836951</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2022-02-03 08:34:36 -0800</bug_when>
    <thetext>.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1836958</commentid>
    <comment_count>1</comment_count>
      <attachid>450776</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2022-02-03 08:58:37 -0800</bug_when>
    <thetext>Created attachment 450776
For EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1836982</commentid>
    <comment_count>2</comment_count>
      <attachid>450786</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2022-02-03 09:41:50 -0800</bug_when>
    <thetext>Created attachment 450786
Rebase on trunk</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1837002</commentid>
    <comment_count>3</comment_count>
      <attachid>450793</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2022-02-03 10:41:55 -0800</bug_when>
    <thetext>Created attachment 450793
Fix tvOS build</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1837092</commentid>
    <comment_count>4</comment_count>
      <attachid>450813</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2022-02-03 13:42:46 -0800</bug_when>
    <thetext>Created attachment 450813
Fix Win/GTK/WPE builds</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1837127</commentid>
    <comment_count>5</comment_count>
      <attachid>450813</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2022-02-03 14:58:08 -0800</bug_when>
    <thetext>Comment on attachment 450813
Fix Win/GTK/WPE builds

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

&gt; Source/WebKit/ChangeLog:9
&gt; +        PlaybackSessionManagerProxy; in future patches, this will be used to detect when a fullscreen video has been

s/this/these/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1837157</commentid>
    <comment_count>6</comment_count>
      <attachid>450813</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2022-02-03 16:10:32 -0800</bug_when>
    <thetext>Comment on attachment 450813
Fix Win/GTK/WPE builds

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

Thanks for the review!

&gt;&gt; Source/WebKit/ChangeLog:9
&gt;&gt; +        PlaybackSessionManagerProxy; in future patches, this will be used to detect when a fullscreen video has been
&gt; 
&gt; s/this/these/

Fixed the typo.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1837159</commentid>
    <comment_count>7</comment_count>
      <attachid>450835</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2022-02-03 16:18:43 -0800</bug_when>
    <thetext>Created attachment 450835
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1837177</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-02-03 17:08:05 -0800</bug_when>
    <thetext>Committed r289090 (246790@main): &lt;https://commits.webkit.org/246790@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 450835.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1837179</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-02-03 17:09:18 -0800</bug_when>
    <thetext>&lt;rdar://problem/88464056&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>450776</attachid>
            <date>2022-02-03 08:58:37 -0800</date>
            <delta_ts>2022-02-03 09:41:49 -0800</delta_ts>
            <desc>For EWS</desc>
            <filename>bug-236083-20220203085836.patch</filename>
            <type>text/plain</type>
            <size>25457</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg4OTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDEyOTE4MjE1YmRmN2JjODgw
NmJhYWVhMmJmYzhmNjA1NWIxMmFiYmIuLjJmNWNiZDIzMjFjYTkwZjM2NzdjOTdjNWNiOGNkMDU0
ZGZiZWI0ZGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTEgQEAKKzIwMjItMDItMDMgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHBsdW1iaW5nIHRv
IGluZm9ybSBXZWJQYWdlUHJveHkgd2hlbiB2aWRlb3MgcGxheSwgcGF1c2UsIHNlZWssIGFuZCBl
bnRlciBvciBleGl0IGZ1bGxzY3JlZW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIzNjA4MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEFkZCBzZXZlcmFsIG1ldGhvZHMgb24gV2ViUGFnZVByb3h5IHdoaWNo
IGFyZSBjYWxsZWQgZnJvbSBib3RoIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eSBhcyB3ZWxs
IGFzCisgICAgICAgIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eTsgaW4gZnV0dXJlIHBhdGNo
ZXMsIHRoaXMgd2lsbCBiZSB1c2VkIHRvIGRldGVjdCB3aGVuIGEgZnVsbHNjcmVlbiB2aWRlbyBo
YXMgYmVlbgorICAgICAgICBwYXVzZWQgZm9yIGF0IGxlYXN0IDI1MCBtcywgYW5kIGNhbGwgb3V0
IHRvIHRoZSBwYWdlIGNsaWVudCB0byBwZXJmb3JtICJ2aWRlbyBmcmFtZSBleHRyYWN0aW9uIi4K
KworICAgICAgICBObyBjaGFuZ2UgaW4gYmVoYXZpb3IgKHlldCkuCisKKyAgICAgICAgKiBTaGFy
ZWQvQ29jb2EvUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaDogUmVuYW1lZCBmcm9t
IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9QbGF5YmFja1Nlc3Npb25Db250ZXh0SWRl
bnRpZmllci5oLgorCisgICAgICAgIE1vdmUgdGhpcyBmcm9tIFNvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9jb2NvYSB0byBTaGFyZWQvQ29jb2EuIFRoaXMgZW51bSB0eXBlIGlzIHBhc3NlZCBhcm91
bmQgaW4gbWVkaWEgY29kZSBpbgorICAgICAgICBib3RoIHRoZSBVSSBhbmQgd2ViIHByb2Nlc3Nl
cywgc28gaXQgc2hvdWxkIGJlIGluIHRoZSBTaGFyZWQgZm9sZGVyIGluc3RlYWQgb2YgdGhlIFdl
YlByb2Nlc3MgZm9sZGVyLgorCisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vz
c2lvbk1hbmFnZXJQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9QbGF5YmFja1Nl
c3Npb25NYW5hZ2VyUHJveHkubW06CisgICAgICAgIChXZWJLaXQ6OlBsYXliYWNrU2Vzc2lvbk1h
bmFnZXJQcm94eTo6Y3VycmVudFRpbWVDaGFuZ2VkKToKKyAgICAgICAgKFdlYktpdDo6UGxheWJh
Y2tTZXNzaW9uTWFuYWdlclByb3h5OjpyYXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJLaXQ6OlBs
YXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eTo6aXNQYXVzZWQgY29uc3QpOgorCisgICAgICAgIEFk
ZCBhIGhlbHBlciBtZXRob2QgdG8gcmV0dXJuIHdoZXRoZXIgb3Igbm90IHRoZSBzZXNzaW9uIGZv
ciBhIGdpdmVuIFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyIGlzIHBhdXNlZAorICAg
ICAgICAodGhhdCBpcywgbmVpdGhlciBwbGF5aW5nIG5vciBzdGFsbGVkKS4KKworICAgICAgICAq
IFVJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaDoKKworICAgICAg
ICBEcml2ZS1ieSBmaXg6IHJlbW92ZSBhbiB1bnVzZWQgbWVtYmVyIHZhcmlhYmxlLgorCisgICAg
ICAgICogVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbToKKyAg
ICAgICAgKFdlYktpdDo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjplbnRlckZ1bGxzY3Jl
ZW4pOgorICAgICAgICAoV2ViS2l0OjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmV4aXRG
dWxsc2NyZWVuKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvV2ViUGFnZVByb3h5Q29jb2Eu
bW06CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZGlkRW50ZXJGdWxsc2NyZWVuVmlk
ZW8pOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmRpZEV4aXRGdWxsc2NyZWVuVmlk
ZW8pOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmRpZENoYW5nZVBsYXliYWNrUmF0
ZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZGlkQ2hhbmdlQ3VycmVudFRpbWUp
OgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OnVwZGF0ZUZ1bGxzY3JlZW5WaWRlb0V4
dHJhY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmZ1bGxzY3JlZW5WaWRl
b0V4dHJhY3Rpb25UaW1lckZpcmVkKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6bV9mdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uVGltZXIp
OgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OnJlc2V0U3RhdGVBZnRlclByb2Nlc3NF
eGl0ZWQpOgorICAgICAgICAoV2ViS2l0OjptX25vdGlmaWNhdGlvbk1hbmFnZXJNZXNzYWdlSGFu
ZGxlcik6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oOgorICAg
ICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorCiAyMDIyLTAyLTAyICBX
ZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3
ZWQsIGZpeCB0aGUgbWFjT1MgYnVpbGQgYWZ0ZXIgcjI4ODk1NgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9TaGFyZWQvQ29jb2EvUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaCBi
L1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1BsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlm
aWVyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uMzc3ZjE3YzUzMGJiNWViMjEyNzlkNmE4ZmE3OTY1ZWI1YzI3NWY4
YwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1BsYXliYWNr
U2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLmgKQEAgLTAsMCArMSwzNSBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09O
VFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisg
KiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
IElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICog
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisK
KyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL09iamVjdElkZW50aWZpZXIuaD4KKworbmFt
ZXNwYWNlIFdlYktpdCB7CisKK2VudW0gUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXJU
eXBlIHsgfTsKK3VzaW5nIFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyID0gT2JqZWN0
SWRlbnRpZmllcjxQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllclR5cGU+OworCit9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9QbGF5YmFja1Nlc3Npb25N
YW5hZ2VyUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vz
c2lvbk1hbmFnZXJQcm94eS5oCmluZGV4IDUyN2M2NzczYjM2NGEyY2ZkYmQ0ZjJmMGFiZDgwMTNi
NDBjZmQ0M2IuLjViMGIzMTk0YzBjNTVlMzI2YmM5ZmExNzY0NDBhODg0ZjVjYTk1MGIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFn
ZXJQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vz
c2lvbk1hbmFnZXJQcm94eS5oCkBAIC05Miw2ICs5Miw3IEBAIHB1YmxpYzoKICAgICBib29sIHdp
cmVsZXNzVmlkZW9QbGF5YmFja0Rpc2FibGVkKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV93aXJl
bGVzc1ZpZGVvUGxheWJhY2tEaXNhYmxlZDsgfQogCiBwcml2YXRlOgorICAgIGZyaWVuZCBjbGFz
cyBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHk7CiAgICAgZnJpZW5kIGNsYXNzIFZpZGVvRnVs
bHNjcmVlbk1vZGVsQ29udGV4dDsKIAogICAgIFBsYXliYWNrU2Vzc2lvbk1vZGVsQ29udGV4dChQ
bGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHkmIG1hbmFnZXIsIFBsYXliYWNrU2Vzc2lvbkNvbnRl
eHRJZGVudGlmaWVyIGNvbnRleHRJZCkKQEAgLTE4Nyw2ICsxODgsOCBAQCBwdWJsaWM6CiAgICAg
UGxhdGZvcm1QbGF5YmFja1Nlc3Npb25JbnRlcmZhY2UqIGNvbnRyb2xzTWFuYWdlckludGVyZmFj
ZSgpOwogICAgIHZvaWQgcmVxdWVzdENvbnRyb2xsZWRFbGVtZW50SUQoKTsKIAorICAgIGJvb2wg
aXNQYXVzZWQoUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIpIGNvbnN0OworCiAgICAg
Ly8gRm9yIHRlc3RpbmcuCiAgICAgYm9vbCB3aXJlbGVzc1ZpZGVvUGxheWJhY2tEaXNhYmxlZCgp
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9QbGF5YmFja1Nl
c3Npb25NYW5hZ2VyUHJveHkubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9QbGF5
YmFja1Nlc3Npb25NYW5hZ2VyUHJveHkubW0KaW5kZXggZmQ2MGI4YjEzOGQ1ZGI5YzZkOTQ5OWFi
NGIzMmM2NTM0YmRlZDQyNy4uMjRkYzM2NjBkOWI4NmIzNjcxZGI2MGJkMDI0N2RmNGU0NmUzMjlm
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvUGxheWJhY2tTZXNz
aW9uTWFuYWdlclByb3h5Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1Bs
YXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eS5tbQpAQCAtNDExLDYgKzQxMSw3IEBAIHZvaWQgUGxh
eWJhY2tTZXNzaW9uTWFuYWdlclByb3h5OjpjbGVhclBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKCkK
IHZvaWQgUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5OjpjdXJyZW50VGltZUNoYW5nZWQoUGxh
eWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgY29udGV4dElkLCBkb3VibGUgY3VycmVudFRp
bWUsIGRvdWJsZSBob3N0VGltZSkKIHsKICAgICBlbnN1cmVNb2RlbChjb250ZXh0SWQpLmN1cnJl
bnRUaW1lQ2hhbmdlZChjdXJyZW50VGltZSk7CisgICAgbV9wYWdlLT5kaWRDaGFuZ2VDdXJyZW50
VGltZShjb250ZXh0SWQpOwogfQogCiB2b2lkIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eTo6
YnVmZmVyZWRUaW1lQ2hhbmdlZChQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciBjb250
ZXh0SWQsIGRvdWJsZSBidWZmZXJlZFRpbWUpCkBAIC00OTEsNiArNDkyLDcgQEAgdm9pZCBQbGF5
YmFja1Nlc3Npb25NYW5hZ2VyUHJveHk6OnBsYXliYWNrU3RhcnRlZFRpbWVDaGFuZ2VkKFBsYXli
YWNrU2Vzc2lvbkNvbnQKIHZvaWQgUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5OjpyYXRlQ2hh
bmdlZChQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciBjb250ZXh0SWQsIE9wdGlvblNl
dDxXZWJDb3JlOjpQbGF5YmFja1Nlc3Npb25Nb2RlbDo6UGxheWJhY2tTdGF0ZT4gcGxheWJhY2tT
dGF0ZSwgZG91YmxlIHJhdGUsIGRvdWJsZSBkZWZhdWx0UGxheWJhY2tSYXRlKQogewogICAgIGVu
c3VyZU1vZGVsKGNvbnRleHRJZCkucmF0ZUNoYW5nZWQocGxheWJhY2tTdGF0ZSwgcmF0ZSwgZGVm
YXVsdFBsYXliYWNrUmF0ZSk7CisgICAgbV9wYWdlLT5kaWRDaGFuZ2VQbGF5YmFja1JhdGUoY29u
dGV4dElkKTsKIH0KIAogdm9pZCBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHk6OnBpY3R1cmVJ
blBpY3R1cmVTdXBwb3J0ZWRDaGFuZ2VkKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVy
IGNvbnRleHRJZCwgYm9vbCBzdXBwb3J0ZWQpCkBAIC02MzgsNiArNjQwLDE2IEBAIFBsYXRmb3Jt
UGxheWJhY2tTZXNzaW9uSW50ZXJmYWNlKiBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHk6OmNv
bnRyb2xzTWFuYWdlckluCiAgICAgcmV0dXJuICZpbnRlcmZhY2U7CiB9CiAKK2Jvb2wgUGxheWJh
Y2tTZXNzaW9uTWFuYWdlclByb3h5Ojppc1BhdXNlZChQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRl
bnRpZmllciBpZGVudGlmaWVyKSBjb25zdAoreworICAgIGF1dG8gaXRlcmF0b3IgPSBtX2NvbnRl
eHRNYXAuZmluZChpZGVudGlmaWVyKTsKKyAgICBpZiAoaXRlcmF0b3IgPT0gbV9jb250ZXh0TWFw
LmVuZCgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBhdXRvJiBtb2RlbCA9ICpzdGQ6
OmdldDwwPihpdGVyYXRvci0+dmFsdWUpOworICAgIHJldHVybiAhbW9kZWwuaXNQbGF5aW5nKCkg
JiYgIW1vZGVsLmlzU3RhbGxlZCgpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKIAogI2Vu
ZGlmIC8vIFBMQVRGT1JNKElPU19GQU1JTFkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShW
SURFT19QUkVTRU5UQVRJT05fTU9ERSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oCmluZGV4IGM3ZTBh
MGFkMTg1ODcyZjU1ZjhlNGViNTQ3ZTdkMDIxZjkyYzg2ZGYuLjRkN2QyYjlkMjdmYTUwY2U2NDE1
MjNmMmFjNjUxMGYwZDFiMDUwYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oCkBAIC0yMDUsNyAr
MjA1LDYgQEAgcHJpdmF0ZToKICAgICBXZWJQYWdlUHJveHkqIG1fcGFnZTsKICAgICBSZWY8UGxh
eWJhY2tTZXNzaW9uTWFuYWdlclByb3h5PiBtX3BsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eTsK
ICAgICBIYXNoTWFwPFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLCBNb2RlbEludGVy
ZmFjZVR1cGxlPiBtX2NvbnRleHRNYXA7Ci0gICAgUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50
aWZpZXIgbV9jb250cm9sc01hbmFnZXJDb250ZXh0SWQ7CiAgICAgSGFzaE1hcDxQbGF5YmFja1Nl
c3Npb25Db250ZXh0SWRlbnRpZmllciwgaW50PiBtX2NsaWVudENvdW50czsKICAgICBWZWN0b3I8
Q29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPj4gbV9jbG9zZUNvbXBsZXRpb25IYW5kbGVyczsKICAg
ICBXZWFrSGFzaFNldDxWaWRlb0luUGljdHVyZUluUGljdHVyZURpZENoYW5nZU9ic2VydmVyPiBt
X3BpcENoYW5nZU9ic2VydmVyczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbQppbmRleCAzOWEwZGVl
Nzg0OWJkMGMyZmQ1OTc1NjAxMmIzYjA1YjljNTczYzhkLi5mOTFjZWMxNDAzNDM0MzBiZGIyNzc2
NDllZDY4OTMwZTQzNGI2YzEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9D
b2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0KKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1tCkBAIC02MTcsNiAr
NjE3LDggQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmVudGVyRnVsbHNjcmVl
bihQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmkKICAgICAgICAgaWYgKG90aGVySW50ZXJm
YWNlLT5oYXNNb2RlKGludGVyZmFjZS5tb2RlKCkpKQogICAgICAgICAgICAgb3RoZXJJbnRlcmZh
Y2UtPnJlcXVlc3RIaWRlQW5kRXhpdEZ1bGxzY3JlZW4oKTsKICAgICB9CisKKyAgICBtX3BhZ2Ut
PmRpZEVudGVyRnVsbHNjcmVlblZpZGVvKGNvbnRleHRJZCk7CiB9CiAKIHZvaWQgVmlkZW9GdWxs
c2NyZWVuTWFuYWdlclByb3h5OjpleGl0RnVsbHNjcmVlbihQbGF5YmFja1Nlc3Npb25Db250ZXh0
SWRlbnRpZmllciBjb250ZXh0SWQsIFdlYkNvcmU6OkZsb2F0UmVjdCBmaW5hbFJlY3QsIENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCkBAIC02NTAsNiAr
NjUyLDggQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmV4aXRGdWxsc2NyZWVu
KFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWUKICNlbHNlCiAgICAgY29tcGxldGlvbkhh
bmRsZXIoZW5zdXJlSW50ZXJmYWNlKGNvbnRleHRJZCkuZXhpdEZ1bGxzY3JlZW4oZmluYWxXaW5k
b3dSZWN0LCBtX3BhZ2UtPnBsYXRmb3JtV2luZG93KCkpKTsKICNlbmRpZgorCisgICAgbV9wYWdl
LT5kaWRFeGl0RnVsbHNjcmVlblZpZGVvKGNvbnRleHRJZCk7CiB9CiAKIHZvaWQgVmlkZW9GdWxs
c2NyZWVuTWFuYWdlclByb3h5OjpleGl0RnVsbHNjcmVlbldpdGhvdXRBbmltYXRpb25Ub01vZGUo
UGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgY29udGV4dElkLCBXZWJDb3JlOjpIVE1M
TWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUgdGFyZ2V0TW9kZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlBhZ2VQcm94eUNvY29hLm1t
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW0KaW5k
ZXggYjBkZDE5YThmZTI4NGY0OGNlMDdlMmRhNjA0NjEyMDc3NjE5YTBjMy4uNzk4ZmU4MjNmMjgz
ZDdhMThiZjIxMmZmMDVmYmEwZTllZjJkNDFiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQ29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQ29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW0KQEAgLTQ2MSw2ICs0NjEsNTUgQEAg
dm9pZCBXZWJQYWdlUHJveHk6OnJlbW92ZU1lZGlhVXNhZ2VNYW5hZ2VyU2Vzc2lvbihXZWJDb3Jl
OjpNZWRpYVNlc3Npb25JZGVudGlmaWUKIH0KICNlbmRpZgogCisjaWYgRU5BQkxFKFZJREVPX1BS
RVNFTlRBVElPTl9NT0RFKQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkRW50ZXJGdWxsc2NyZWVu
VmlkZW8oUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgaWRlbnRpZmllcikKK3sKKyAg
ICBtX2N1cnJlbnRGdWxsc2NyZWVuVmlkZW9TZXNzaW9uSWRlbnRpZmllciA9IGlkZW50aWZpZXI7
CisgICAgdXBkYXRlRnVsbHNjcmVlblZpZGVvRXh0cmFjdGlvbihpZGVudGlmaWVyKTsKK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6OmRpZEV4aXRGdWxsc2NyZWVuVmlkZW8oUGxheWJhY2tTZXNzaW9u
Q29udGV4dElkZW50aWZpZXIgaWRlbnRpZmllcikKK3sKKyAgICBpZiAobV9jdXJyZW50RnVsbHNj
cmVlblZpZGVvU2Vzc2lvbklkZW50aWZpZXIgIT0gaWRlbnRpZmllcikKKyAgICAgICAgcmV0dXJu
OworCisgICAgbV9jdXJyZW50RnVsbHNjcmVlblZpZGVvU2Vzc2lvbklkZW50aWZpZXIgPSBzdGQ6
Om51bGxvcHQ7CisgICAgdXBkYXRlRnVsbHNjcmVlblZpZGVvRXh0cmFjdGlvbihpZGVudGlmaWVy
KTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZENoYW5nZVBsYXliYWNrUmF0ZShQbGF5YmFj
a1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciBpZGVudGlmaWVyKQoreworICAgIGlmIChtX2N1cnJl
bnRGdWxsc2NyZWVuVmlkZW9TZXNzaW9uSWRlbnRpZmllciA9PSBpZGVudGlmaWVyKQorICAgICAg
ICB1cGRhdGVGdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uKGlkZW50aWZpZXIpOworfQorCit2b2lk
IFdlYlBhZ2VQcm94eTo6ZGlkQ2hhbmdlQ3VycmVudFRpbWUoUGxheWJhY2tTZXNzaW9uQ29udGV4
dElkZW50aWZpZXIgaWRlbnRpZmllcikKK3sKKyAgICBpZiAobV9jdXJyZW50RnVsbHNjcmVlblZp
ZGVvU2Vzc2lvbklkZW50aWZpZXIgPT0gaWRlbnRpZmllcikKKyAgICAgICAgdXBkYXRlRnVsbHNj
cmVlblZpZGVvRXh0cmFjdGlvbihpZGVudGlmaWVyKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6
OnVwZGF0ZUZ1bGxzY3JlZW5WaWRlb0V4dHJhY3Rpb24oUGxheWJhY2tTZXNzaW9uQ29udGV4dElk
ZW50aWZpZXIgaWRlbnRpZmllcikKK3sKKyAgICBpZiAobV9wbGF5YmFja1Nlc3Npb25NYW5hZ2Vy
ICYmIG1fcGxheWJhY2tTZXNzaW9uTWFuYWdlci0+aXNQYXVzZWQoaWRlbnRpZmllcikpIHsKKyAg
ICAgICAgbV9mdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uVGltZXIuc3RhcnRPbmVTaG90KDI1MF9t
cyk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBtX2Z1bGxzY3JlZW5WaWRlb0V4dHJh
Y3Rpb25UaW1lci5zdG9wKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpmdWxsc2NyZWVuVmlk
ZW9FeHRyYWN0aW9uVGltZXJGaXJlZCgpCit7CisgICAgaWYgKCFtX2N1cnJlbnRGdWxsc2NyZWVu
VmlkZW9TZXNzaW9uSWRlbnRpZmllcikKKyAgICAgICAgcmV0dXJuOworCisgICAgLy8gRklYTUU6
IEFkZCBsb2dpYyB0byBwZXJmb3JtIHZpZGVvIGZyYW1lIGV4dHJhY3Rpb24uCit9CisKKyNlbmRp
ZiAvLyBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisKICNpZiBIQVZFKFFVSUNLTE9P
S19USFVNQk5BSUxJTkcpCiAKIHN0YXRpYyBSZWZQdHI8V2ViS2l0OjpTaGFyZWFibGVCaXRtYXA+
IGNvbnZlcnRQbGF0Zm9ybUltYWdlVG9CaXRtYXAoQ29jb2FJbWFnZSAqaW1hZ2UsIGNvbnN0IFdl
YkNvcmU6OkludFNpemUmIGZpdHRpbmdTaXplKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBh
Z2VQcm94eS5jcHAKaW5kZXggZTQ5OTM1YzMyNWY2OWYzNDM0NDBjYWEwYWRkN2JmZmUxYzAwNTI4
Mi4uZWZhM2M5MzIxNzE5Y2ZhYjMwYzM2MDVhMzEzNzIwNzRlNWQ5MDc3ZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC01MTYsNiArNTE2LDkgQEAgV2ViUGFn
ZVByb3h5OjpXZWJQYWdlUHJveHkoUGFnZUNsaWVudCYgcGFnZUNsaWVudCwgV2ViUHJvY2Vzc1By
b3h5JiBwcm9jZXNzLCBSZWYKICAgICAsIG1fbGltaXRzTmF2aWdhdGlvbnNUb0FwcEJvdW5kRG9t
YWlucyhtX2NvbmZpZ3VyYXRpb24tPmxpbWl0c05hdmlnYXRpb25zVG9BcHBCb3VuZERvbWFpbnMo
KSkKICNlbmRpZgogICAgICwgbV9ub3RpZmljYXRpb25NYW5hZ2VyTWVzc2FnZUhhbmRsZXIoKnRo
aXMpCisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQorICAgICwgbV9mdWxsc2Ny
ZWVuVmlkZW9FeHRyYWN0aW9uVGltZXIoUnVuTG9vcDo6bWFpbigpLCB0aGlzLCAmV2ViUGFnZVBy
b3h5OjpmdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uVGltZXJGaXJlZCkKKyNlbmRpZgogewogICAg
IFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAiY29uc3RydWN0b3I6Iik7CiAKQEAg
LTgxMDEsNiArODEwNCwxMSBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6cmVzZXRTdGF0ZUFmdGVyUHJv
Y2Vzc0V4aXRlZChQcm9jZXNzVGVybWluYXRpb25SZWFzb24gdGVybWluYQogCiAgICAgdXBkYXRl
UGxheWluZ01lZGlhRGlkQ2hhbmdlKE1lZGlhUHJvZHVjZXI6OklzTm90UGxheWluZyk7CiAKKyNp
ZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisgICAgbV9mdWxsc2NyZWVuVmlkZW9F
eHRyYWN0aW9uVGltZXIuc3RvcCgpOworICAgIG1fY3VycmVudEZ1bGxzY3JlZW5WaWRlb1Nlc3Np
b25JZGVudGlmaWVyID0gc3RkOjpudWxsb3B0OworI2VuZGlmCisKICAgICAvLyBGSVhNRTogPHJk
YXI6Ly9wcm9ibGVtLzM4Njc2NjA0PiBJbiBjYXNlIG9mIHByb2Nlc3Mgc3dhcHMsIHRoZSBvbGQg
cHJvY2VzcyBzaG91bGQgZ3JhY2VmdWxseSBzdXNwZW5kIGluc3RlYWQgb2YgdGVybWluYXRpbmcu
CiAgICAgbV9wcm9jZXNzLT5wcm9jZXNzVGVybWluYXRlZCgpOwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQYWdlUHJveHkuaAppbmRleCA1MDdlYWM4YTk2NTJhZTBmZTBhMTNiMjI2ZGVmZjg4
MmRlYzM4ZjMxLi44MTk4MmM1MGFhOTNkN2MxN2UxMWNiMzhiOWMwMzNhOGNmNWFhMDZlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAtMTU3LDYgKzE1Nyw3IEBACiAj
ZW5kaWYKIAogI2lmIFBMQVRGT1JNKENPQ09BKQorI2luY2x1ZGUgIlBsYXliYWNrU2Vzc2lvbkNv
bnRleHRJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVtb3RlTGF5ZXJUcmVlTm9kZS5oIgogI2lu
Y2x1ZGUgPHd0Zi9XZWFrT2JqQ1B0ci5oPgogI2VuZGlmCkBAIC0xOTM1LDYgKzE5MzYsMTMgQEAg
cHVibGljOgogICAgIHZvaWQgcmVtb3ZlTWVkaWFVc2FnZU1hbmFnZXJTZXNzaW9uKFdlYkNvcmU6
Ok1lZGlhU2Vzc2lvbklkZW50aWZpZXIpOwogI2VuZGlmCiAKKyNpZiBFTkFCTEUoVklERU9fUFJF
U0VOVEFUSU9OX01PREUpCisgICAgdm9pZCBkaWRFbnRlckZ1bGxzY3JlZW5WaWRlbyhQbGF5YmFj
a1Nlc3Npb25Db250ZXh0SWRlbnRpZmllcik7CisgICAgdm9pZCBkaWRFeGl0RnVsbHNjcmVlblZp
ZGVvKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyKTsKKyAgICB2b2lkIGRpZENoYW5n
ZVBsYXliYWNrUmF0ZShQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllcik7CisgICAgdm9p
ZCBkaWRDaGFuZ2VDdXJyZW50VGltZShQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllcik7
CisjZW5kaWYKKwogICAgIHZvaWQgc2V0SGFzRXhlY3V0ZWRBcHBCb3VuZEJlaGF2aW9yQmVmb3Jl
TmF2aWdhdGlvbigpIHsgbV9oYXNFeGVjdXRlZEFwcEJvdW5kQmVoYXZpb3JCZWZvcmVOYXZpZ2F0
aW9uID0gdHJ1ZTsgfQogCiAgICAgV2ViUG9wdXBNZW51UHJveHkqIGFjdGl2ZVBvcHVwTWVudSgp
IGNvbnN0IHsgcmV0dXJuIG1fYWN0aXZlUG9wdXBNZW51LmdldCgpOyB9CkBAIC0yNTk4LDYgKzI2
MDYsMTEgQEAgcHJpdmF0ZToKICAgICB2b2lkIHNldFVwSGlnaGxpZ2h0c09ic2VydmVyKCk7CiAj
ZW5kaWYKIAorI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKyAgICB2b2lkIHVw
ZGF0ZUZ1bGxzY3JlZW5WaWRlb0V4dHJhY3Rpb24oUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50
aWZpZXIpOworICAgIHZvaWQgZnVsbHNjcmVlblZpZGVvRXh0cmFjdGlvblRpbWVyRmlyZWQoKTsK
KyNlbmRpZgorCiAgICAgY29uc3QgSWRlbnRpZmllciBtX2lkZW50aWZpZXI7CiAgICAgV2ViQ29y
ZTo6UGFnZUlkZW50aWZpZXIgbV93ZWJQYWdlSUQ7CiAgICAgV2Vha1B0cjxQYWdlQ2xpZW50PiBt
X3BhZ2VDbGllbnQ7CkBAIC0zMTczLDYgKzMxODYsMTEgQEAgcHJpdmF0ZToKICAgICBzdGQ6Om9w
dGlvbmFsPFNjcm9sbGluZ0FjY2VsZXJhdGlvbkN1cnZlPiBtX3Njcm9sbGluZ0FjY2VsZXJhdGlv
bkN1cnZlOwogICAgIHN0ZDo6b3B0aW9uYWw8U2Nyb2xsaW5nQWNjZWxlcmF0aW9uQ3VydmU+IG1f
bGFzdFNlbnRTY3JvbGxpbmdBY2NlbGVyYXRpb25DdXJ2ZTsKICNlbmRpZgorCisjaWYgRU5BQkxF
KFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQorICAgIHN0ZDo6b3B0aW9uYWw8UGxheWJhY2tTZXNz
aW9uQ29udGV4dElkZW50aWZpZXI+IG1fY3VycmVudEZ1bGxzY3JlZW5WaWRlb1Nlc3Npb25JZGVu
dGlmaWVyOworICAgIFJ1bkxvb3A6OlRpbWVyPFdlYlBhZ2VQcm94eT4gbV9mdWxsc2NyZWVuVmlk
ZW9FeHRyYWN0aW9uVGltZXI7CisjZW5kaWYKIH07CiAKICNpZmRlZiBfX09CSkNfXwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1Nv
dXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggN2E4YzJi
ODNhMmQwZjgyY2M0N2NjZjEzNWVjN2IxNmMwN2ExYTc4YS4uY2IyNTU0YjliMTc2ZmU1ZjhhZDIw
MmY5MjNiMjUyZGIzMjI4Mzc1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCkBAIC04NjQsNyArODY0LDYgQEAKIAkJNDFGQUY1RjUxRTNDMDY0
OTAwMUFFNjc4IC8qIFdlYlJUQ1Jlc29sdmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA0MUZBRjVGNDFFM0MwNjQxMDAxQUU2NzggLyogV2ViUlRDUmVz
b2x2ZXIuaCAqLzsgfTsKIAkJNDFGQUY1RjgxRTNDMTAyMTAwMUFFNjc4IC8qIExpYldlYlJUQ1Jl
c29sdmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
MUZBRjVGNjFFM0MwQjQ3MDAxQUU2NzggLyogTGliV2ViUlRDUmVzb2x2ZXIuaCAqLzsgfTsKIAkJ
NDQ1OTk4NDIyMjgzM0U4NzAwRTYxMzczIC8qIFN5bnRoZXRpY0VkaXRpbmdDb21tYW5kVHlwZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDQ1OTk4NDEy
MjgzM0U2MDAwRTYxMzczIC8qIFN5bnRoZXRpY0VkaXRpbmdDb21tYW5kVHlwZS5oICovOyB9Owot
CQk0NDZEQzY0QzI0QTJEOEU1MDA2MUYzOTAgLyogUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50
aWZpZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0
NkRDNjRCMjRBMkQ4QUQwMDYxRjM5MCAvKiBQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmll
ci5oICovOyB9OwogCQk0NDc2RUYwOTI1QkZDOEI3MDA0QTA1ODcgLyogX1dLQXBwSGlnaGxpZ2h0
RGVsZWdhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDQ0NzZFRjA4MjVCRkM4QjcwMDRBMDU4NyAvKiBfV0tBcHBIaWdobGlnaHREZWxlZ2F0ZS5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTQ0ODI3MzQ3
MjQ1MjhGNjAwMEE5NTQ5MyAvKiBDb2NvYUltYWdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NDgyNzM0NjI0NTI4RjYwMDBBOTU0OTMgLyogQ29jb2FJ
bWFnZS5oICovOyB9OwogCQk0NDhBQzI0RTI2NzEzNUE3MDBCMjg5MjEgLyogU3luYXBzZVNQSS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDQ4QUMyNEQy
NjcxMzVBNjAwQjI4OTIxIC8qIFN5bmFwc2VTUEkuaCAqLzsgfTsKQEAgLTIwMjcsNiArMjAyNiw3
IEBACiAJCUY0OTc0RTc2MjY1RUNCQkMwMEI0OUI4QyAvKiBXS1JldmVhbEl0ZW1QcmVzZW50ZXIu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0NDZFREVG
MjY1RUIyQjAwMDMxREE4RiAvKiBXS1JldmVhbEl0ZW1QcmVzZW50ZXIuaCAqLzsgfTsKIAkJRjQ5
NzVDRjIyNjI0QjgwQTAwM0M2MjZFIC8qIFdLUXVpY2tMb29rUHJldmlld0NvbnRyb2xsZXIuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0OTc1Q0YxMjYy
NEI4MEEwMDNDNjI2RSAvKiBXS1F1aWNrTG9va1ByZXZpZXdDb250cm9sbGVyLmggKi87IH07CiAJ
CUY0QkEzM0YyMjU3NTdFODkwMDBBM0NFOCAvKiBXS0ltYWdlQW5hbHlzaXNHZXN0dXJlUmVjb2du
aXplci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjRC
QTMzRjAyNTc1N0U4OTAwMEEzQ0U4IC8qIFdLSW1hZ2VBbmFseXNpc0dlc3R1cmVSZWNvZ25pemVy
LmggKi87IH07CisJCUY0QkUwRDc3MjdBQUUxQ0IwMDVGMDMyMyAvKiBQbGF5YmFja1Nlc3Npb25D
b250ZXh0SWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRjRCRTBENzYyN0FBRTFDQjAwNUYwMzIzIC8qIFBsYXliYWNrU2Vzc2lvbkNvbnRl
eHRJZGVudGlmaWVyLmggKi87IH07CiAJCUY0Q0IwOUU1MjI1RDVBMDkwMDg5MTQ4NyAvKiBXZWJz
aXRlTWVkaWFTb3VyY2VQb2xpY3kuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEY0Q0IwOUU0MjI1RDVBMDMwMDg5MTQ4NyAvKiBXZWJzaXRlTWVkaWFTb3Vy
Y2VQb2xpY3kuaCAqLzsgfTsKIAkJRjRDRjFFOUQyNUU0MERDQzAwMEY5RDczIC8qIEdlc3R1cmVS
ZWNvZ25pemVyQ29uc2lzdGVuY3lFbmZvcmNlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRjRDRjFFOUIyNUU0MERDQzAwMEY5RDczIC8qIEdlc3R1cmVS
ZWNvZ25pemVyQ29uc2lzdGVuY3lFbmZvcmNlci5oICovOyB9OwogCQlGNEQ1RjUxRDIwNjA4N0Ex
MDAzOEJCQTggLyogV0tUZXh0SW5wdXRMaXN0Vmlld0NvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0RDVGNTE5MjA2MDg3QTAwMDM4QkJB
OCAvKiBXS1RleHRJbnB1dExpc3RWaWV3Q29udHJvbGxlci5oICovOyB9OwpAQCAtNDIwMiw3ICs0
MjAyLDYgQEAKIAkJNDFGRkQyREMyNzVBNkE5NDAwNTAxQkJGIC8qIFNlcnZpY2VXb3JrZXJEb3du
bG9hZFRhc2subWVzc2FnZXMuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU2VydmljZVdvcmtlckRvd25sb2FkVGFzay5tZXNz
YWdlcy5pbjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDQ1MEFFQkYxREMzRkFFNTAw
OTk0M0YyIC8qIFNoYXJlZE1lbW9yeUNvY29hLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IFNoYXJlZE1lbW9yeUNvY29hLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNDQ1OTk4NDEyMjgzM0U2MDAwRTYxMzczIC8qIFN5bnRoZXRpY0VkaXRpbmdDb21t
YW5kVHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTeW50aGV0aWNFZGl0aW5nQ29tbWFuZFR5cGUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNDQ2REM2NEIyNEEyRDhBRDAwNjFGMzkwIC8q
IFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ0NzZFRjA4MjVCRkM4QjcwMDRBMDU4NyAvKiBfV0tBcHBI
aWdobGlnaHREZWxlZ2F0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBfV0tB
cHBIaWdobGlnaHREZWxlZ2F0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0NDgy
NzM0NjI0NTI4RjYwMDBBOTU0OTMgLyogQ29jb2FJbWFnZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBDb2NvYUltYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTQ0OEFDMjREMjY3MTM1QTYwMEIyODkyMSAvKiBTeW5hcHNlU1BJLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFN5bmFwc2VTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTY1MDYsNiArNjUwNSw3IEBACiAJCUY0QjM3OEQwMjFEREJCQUIwMDk1QTM3OCAvKiBX
ZWJVbmRvU3RlcElELmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlVuZG9TdGVwSUQuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRjRCQTMzRjAyNTc1N0U4OTAwMEEzQ0U4IC8qIFdLSW1hZ2VB
bmFseXNpc0dlc3R1cmVSZWNvZ25pemVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFdLSW1hZ2VBbmFseXNp
c0dlc3R1cmVSZWNvZ25pemVyLmg7IHBhdGggPSBpb3MvV0tJbWFnZUFuYWx5c2lzR2VzdHVyZVJl
Y29nbml6ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRjRCQTMzRjEyNTc1N0U4
OTAwMEEzQ0U4IC8qIFdLSW1hZ2VBbmFseXNpc0dlc3R1cmVSZWNvZ25pemVyLm1tICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBuYW1lID0gV0tJbWFnZUFuYWx5c2lzR2VzdHVyZVJlY29nbml6ZXIubW07IHBhdGgg
PSBpb3MvV0tJbWFnZUFuYWx5c2lzR2VzdHVyZVJlY29nbml6ZXIubW07IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCUY0QkUwRDc2MjdBQUUxQ0IwMDVGMDMyMyAvKiBQbGF5YmFja1Nlc3Np
b25Db250ZXh0SWRlbnRpZmllci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQ
bGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlGNENCMDlFNDIyNUQ1QTAzMDA4OTE0ODcgLyogV2Vic2l0ZU1lZGlhU291cmNlUG9s
aWN5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYnNpdGVNZWRpYVNvdXJjZVBvbGljeS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlGNENGMUU5QjI1RTQwRENDMDAwRjlENzMgLyogR2VzdHVy
ZVJlY29nbml6ZXJDb25zaXN0ZW5jeUVuZm9yY2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgbmFtZSA9IEdlc3R1cmVSZWNvZ25pemVyQ29uc2lzdGVuY3lFbmZvcmNlci5oOyBwYXRoID0g
aW9zL0dlc3R1cmVSZWNvZ25pemVyQ29uc2lzdGVuY3lFbmZvcmNlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlGNENGMUU5QzI1RTQwRENDMDAwRjlENzMgLyogR2VzdHVyZVJlY29n
bml6ZXJDb25zaXN0ZW5jeUVuZm9yY2VyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2Jq
Y3BwOyBuYW1lID0gR2VzdHVyZVJlY29nbml6ZXJDb25zaXN0ZW5jeUVuZm9yY2VyLm1tOyBwYXRo
ID0gaW9zL0dlc3R1cmVSZWNvZ25pemVyQ29uc2lzdGVuY3lFbmZvcmNlci5tbTsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTcyMTYsNiArNzIxNiw3IEBACiAJCQkJN0FGQkQzNkUyMUU1
NDZFMzAwNURCQUNCIC8qIFBlcnNpc3RlbmN5VXRpbHMuY3BwICovLAogCQkJCTdBRkJEMzZEMjFF
NTQ2RTMwMDVEQkFDQiAvKiBQZXJzaXN0ZW5jeVV0aWxzLmggKi8sCiAJCQkJQkNDNDNBQjgxMjdC
OTVEQzAwMzE3RjE2IC8qIFBsYXRmb3JtUG9wdXBNZW51RGF0YS5jcHAgKi8sCisJCQkJQkNDNDNB
QjkxMjdCOTVEQzAwMzE3RjE2IC8qIFBsYXRmb3JtUG9wdXBNZW51RGF0YS5oICovLAogCQkJCTQ5
RUNBNDFCMjNGQ0E0ODYwMDIzMzU4RCAvKiBQb2xpY3lEZWNpc2lvbi5oICovLAogCQkJCUUxOEM5
MkYzMTJEQjlFNzEwMENGMkFFQiAvKiBQcmludEluZm8uY3BwICovLAogCQkJCUUxQ0MxQjhFMTJE
N0VBREYwMDYyNTgzOCAvKiBQcmludEluZm8uaCAqLywKQEAgLTcyMzUsNyArNzIzNiw2IEBACiAJ
CQkJMkQ2NUQxOTYyNzRCOEU4NDAwOUM0MTAxIC8qIFNjcm9sbGluZ0FjY2VsZXJhdGlvbkN1cnZl
LmNwcCAqLywKIAkJCQkyRDY1RDE5NTI3NEI4RTg0MDA5QzQxMDEgLyogU2Nyb2xsaW5nQWNjZWxl
cmF0aW9uQ3VydmUuaCAqLywKIAkJCQk1QzgwQjNERDIzNjkwRjEwMDA4NkU2REUgLyogU2Vydmlj
ZVdvcmtlckluaXRpYWxpemF0aW9uRGF0YS5jcHAgKi8sCi0JCQkJQkNDNDNBQjkxMjdCOTVEQzAw
MzE3RjE2IC8qIFBsYXRmb3JtUG9wdXBNZW51RGF0YS5oICovLAogCQkJCTVDODBCM0RCMjM2OTBE
OEQwMDg2RTZERSAvKiBTZXJ2aWNlV29ya2VySW5pdGlhbGl6YXRpb25EYXRhLmggKi8sCiAJCQkJ
MUFGREU2NTcxOTU0QTQyQjAwQzQ4RkZBIC8qIFNlc3Npb25TdGF0ZS5jcHAgKi8sCiAJCQkJMUFG
REU2NTgxOTU0QTQyQjAwQzQ4RkZBIC8qIFNlc3Npb25TdGF0ZS5oICovLApAQCAtOTAzNCw2ICs5
MDM0LDcgQEAKIAkJCQkyRDEwODc2MjFEMkM2NDFCMDBCODVGODIgLyogTG9hZFBhcmFtZXRlcnND
b2NvYS5tbSAqLywKIAkJCQkyRDQ0MEI4MzI1RUYyMzVFMDBBOThEODcgLyogUERGS2l0U29mdExp
bmsuaCAqLywKIAkJCQkyRDQ0MEI4MjI1RUYyMzVFMDBBOThEODcgLyogUERGS2l0U29mdExpbmsu
bW0gKi8sCisJCQkJRjRCRTBENzYyN0FBRTFDQjAwNUYwMzIzIC8qIFBsYXliYWNrU2Vzc2lvbkNv
bnRleHRJZGVudGlmaWVyLmggKi8sCiAJCQkJN0FCNEVBM0YyMjc3N0M0NjAwODVCQkFBIC8qIFNh
bmRib3hFeHRlbnNpb25Db2NvYS5tbSAqLywKIAkJCQk3QUI0RUE0MTIyNzc3RkM3MDA4NUJCQUEg
LyogU2FuZGJveEluaXRpYWxpYXRpb25QYXJhbWV0ZXJzQ29jb2EubW0gKi8sCiAJCQkJRTE5QkRB
ODgxOTM2ODZBNDAwQjk3RjU3IC8qIFNhbmRib3hVdGlsaXRpZXMuaCAqLywKQEAgLTEwMjM1LDcg
KzEwMjM2LDYgQEAKIAkJCQlDMUExNTJENjI0RTVBMjlBMDA5NzhDOEIgLyogSGFuZGxlWFBDRW5k
cG9pbnRNZXNzYWdlcy5tbSAqLywKIAkJCQlDMTREMzdGQzI0QUNERjQ1MDA3RkYwMTQgLyogTGF1
bmNoU2VydmljZXNEYXRhYmFzZU1hbmFnZXIuaCAqLywKIAkJCQlDMTREMzdGRDI0QUNFMDg2MDA3
RkYwMTQgLyogTGF1bmNoU2VydmljZXNEYXRhYmFzZU1hbmFnZXIubW0gKi8sCi0JCQkJNDQ2REM2
NEIyNEEyRDhBRDAwNjFGMzkwIC8qIFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLmgg
Ki8sCiAJCQkJQ0RBMjlBMTkxQ0JEQkY0MTAwOTAxQ0NGIC8qIFBsYXliYWNrU2Vzc2lvbk1hbmFn
ZXIuaCAqLywKIAkJCQlDREEyOUExQzFDQkRCRjVCMDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9u
TWFuYWdlci5tZXNzYWdlcy5pbiAqLywKIAkJCQlDREEyOUExODFDQkRCRjQxMDA5MDFDQ0YgLyog
UGxheWJhY2tTZXNzaW9uTWFuYWdlci5tbSAqLywKQEAgLTEzMjAxLDcgKzEzMjAxLDcgQEAKIAkJ
CQkyRDg3MTAxNzE4Mjg0MTVEMDAxOEZBMDEgLyogUGxhdGZvcm1DQUxheWVyUmVtb3RlQ3VzdG9t
LmggaW4gSGVhZGVycyAqLywKIAkJCQkyRDg5NDlGMTE4MjA0NEY2MDBFODk4QUEgLyogUGxhdGZv
cm1DQUxheWVyUmVtb3RlVGlsZWRCYWNraW5nLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0M0M0FC
QjEyN0I5NURDMDAzMTdGMTYgLyogUGxhdGZvcm1Qb3B1cE1lbnVEYXRhLmggaW4gSGVhZGVycyAq
LywKLQkJCQk0NDZEQzY0QzI0QTJEOEU1MDA2MUYzOTAgLyogUGxheWJhY2tTZXNzaW9uQ29udGV4
dElkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovLAorCQkJCUY0QkUwRDc3MjdBQUUxQ0IwMDVGMDMy
MyAvKiBQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJQ0RBMjlBMUIxQ0JEQkY0MTAwOTAxQ0NGIC8qIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXIuaCBp
biBIZWFkZXJzICovLAogCQkJCUNEQTI5QTI5MUNCRUI2N0EwMDkwMUNDRiAvKiBQbGF5YmFja1Nl
c3Npb25NYW5hZ2VyTWVzc2FnZXMuaCBpbiBIZWFkZXJzICovLAogCQkJCUNEQTI5QTIwMUNCRUI1
RkIwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHkuaCBpbiBIZWFkZXJzICov
LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1BsYXliYWNrU2Vz
c2lvbkNvbnRleHRJZGVudGlmaWVyLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2Ev
UGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMzc3ZjE3YzUzMGJiNWViMjEyNzlkNmE4ZmE3OTY1ZWI1YzI3NWY4Yy4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvY29jb2EvUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaAorKysgL2Rl
di9udWxsCkBAIC0xLDM1ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
Ci0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0g
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycK
LSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0g
KiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jcHJhZ21hIG9uY2UKLQotI2lu
Y2x1ZGUgPHd0Zi9PYmplY3RJZGVudGlmaWVyLmg+Ci0KLW5hbWVzcGFjZSBXZWJLaXQgewotCi1l
bnVtIFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyVHlwZSB7IH07Ci11c2luZyBQbGF5
YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciA9IE9iamVjdElkZW50aWZpZXI8UGxheWJhY2tT
ZXNzaW9uQ29udGV4dElkZW50aWZpZXJUeXBlPjsKLQotfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>450786</attachid>
            <date>2022-02-03 09:41:50 -0800</date>
            <delta_ts>2022-02-03 10:47:22 -0800</delta_ts>
            <desc>Rebase on trunk</desc>
            <filename>bug-236083-20220203094149.patch</filename>
            <type>text/plain</type>
            <size>24651</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg5MDU3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDE1NzcyNTBhNmE5NTZmOGQx
OWQyNzczNDFiZWNjNDBlZjEwZGU4N2IuLjg0Y2VlOTA4ZWZiZWJhYzE1MDA3ZjdmZjJjNThkYTgw
NTg1MTYyZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTEgQEAKKzIwMjItMDItMDMgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHBsdW1iaW5nIHRv
IGluZm9ybSBXZWJQYWdlUHJveHkgd2hlbiB2aWRlb3MgcGxheSwgcGF1c2UsIHNlZWssIGFuZCBl
bnRlciBvciBleGl0IGZ1bGxzY3JlZW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIzNjA4MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEFkZCBzZXZlcmFsIG1ldGhvZHMgb24gV2ViUGFnZVByb3h5IHdoaWNo
IGFyZSBjYWxsZWQgZnJvbSBib3RoIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eSBhcyB3ZWxs
IGFzCisgICAgICAgIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eTsgaW4gZnV0dXJlIHBhdGNo
ZXMsIHRoaXMgd2lsbCBiZSB1c2VkIHRvIGRldGVjdCB3aGVuIGEgZnVsbHNjcmVlbiB2aWRlbyBo
YXMgYmVlbgorICAgICAgICBwYXVzZWQgZm9yIGF0IGxlYXN0IDI1MCBtcywgYW5kIGNhbGwgb3V0
IHRvIHRoZSBwYWdlIGNsaWVudCB0byBwZXJmb3JtICJ2aWRlbyBmcmFtZSBleHRyYWN0aW9uIi4K
KworICAgICAgICBObyBjaGFuZ2UgaW4gYmVoYXZpb3IgKHlldCkuCisKKyAgICAgICAgKiBTaGFy
ZWQvQ29jb2EvUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaDogUmVuYW1lZCBmcm9t
IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9QbGF5YmFja1Nlc3Npb25Db250ZXh0SWRl
bnRpZmllci5oLgorCisgICAgICAgIE1vdmUgdGhpcyBmcm9tIFNvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9jb2NvYSB0byBTaGFyZWQvQ29jb2EuIFRoaXMgZW51bSB0eXBlIGlzIHBhc3NlZCBhcm91
bmQgaW4gbWVkaWEgY29kZSBpbgorICAgICAgICBib3RoIHRoZSBVSSBhbmQgd2ViIHByb2Nlc3Nl
cywgc28gaXQgc2hvdWxkIGJlIGluIHRoZSBTaGFyZWQgZm9sZGVyIGluc3RlYWQgb2YgdGhlIFdl
YlByb2Nlc3MgZm9sZGVyLgorCisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vz
c2lvbk1hbmFnZXJQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9QbGF5YmFja1Nl
c3Npb25NYW5hZ2VyUHJveHkubW06CisgICAgICAgIChXZWJLaXQ6OlBsYXliYWNrU2Vzc2lvbk1h
bmFnZXJQcm94eTo6Y3VycmVudFRpbWVDaGFuZ2VkKToKKyAgICAgICAgKFdlYktpdDo6UGxheWJh
Y2tTZXNzaW9uTWFuYWdlclByb3h5OjpyYXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJLaXQ6OlBs
YXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eTo6aXNQYXVzZWQgY29uc3QpOgorCisgICAgICAgIEFk
ZCBhIGhlbHBlciBtZXRob2QgdG8gcmV0dXJuIHdoZXRoZXIgb3Igbm90IHRoZSBzZXNzaW9uIGZv
ciBhIGdpdmVuIFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyIGlzIHBhdXNlZAorICAg
ICAgICAodGhhdCBpcywgbmVpdGhlciBwbGF5aW5nIG5vciBzdGFsbGVkKS4KKworICAgICAgICAq
IFVJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaDoKKworICAgICAg
ICBEcml2ZS1ieSBmaXg6IHJlbW92ZSBhbiB1bnVzZWQgbWVtYmVyIHZhcmlhYmxlLgorCisgICAg
ICAgICogVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbToKKyAg
ICAgICAgKFdlYktpdDo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjplbnRlckZ1bGxzY3Jl
ZW4pOgorICAgICAgICAoV2ViS2l0OjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmV4aXRG
dWxsc2NyZWVuKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvV2ViUGFnZVByb3h5Q29jb2Eu
bW06CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZGlkRW50ZXJGdWxsc2NyZWVuVmlk
ZW8pOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmRpZEV4aXRGdWxsc2NyZWVuVmlk
ZW8pOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmRpZENoYW5nZVBsYXliYWNrUmF0
ZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZGlkQ2hhbmdlQ3VycmVudFRpbWUp
OgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OnVwZGF0ZUZ1bGxzY3JlZW5WaWRlb0V4
dHJhY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmZ1bGxzY3JlZW5WaWRl
b0V4dHJhY3Rpb25UaW1lckZpcmVkKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6bV9mdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uVGltZXIp
OgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OnJlc2V0U3RhdGVBZnRlclByb2Nlc3NF
eGl0ZWQpOgorICAgICAgICAoV2ViS2l0OjptX25vdGlmaWNhdGlvbk1hbmFnZXJNZXNzYWdlSGFu
ZGxlcik6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oOgorICAg
ICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorCiAyMDIyLTAyLTAzICBQ
ZXIgQXJuZSBWb2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXVtXUF0g
QWRkIGZpbGUtaW9jdGwgdGVsZW1ldHJ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9Db2NvYS9QbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5oIGIvU291cmNlL1dlYktp
dC9TaGFyZWQvQ29jb2EvUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4zNzdmMTdjNTMwYmI1ZWIyMTI3OWQ2YThmYTc5NjVlYjVjMjc1ZjhjCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvUGxheWJhY2tTZXNzaW9uQ29udGV4
dElkZW50aWZpZXIuaApAQCAtMCwwICsxLDM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIw
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
CisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNl
CisKKyNpbmNsdWRlIDx3dGYvT2JqZWN0SWRlbnRpZmllci5oPgorCituYW1lc3BhY2UgV2ViS2l0
IHsKKworZW51bSBQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllclR5cGUgeyB9OwordXNp
bmcgUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgPSBPYmplY3RJZGVudGlmaWVyPFBs
YXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyVHlwZT47CisKK30KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eS5o
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvUGxheWJhY2tTZXNzaW9uTWFuYWdlclBy
b3h5LmgKaW5kZXggNTI3YzY3NzNiMzY0YTJjZmRiZDRmMmYwYWJkODAxM2I0MGNmZDQzYi4uNWIw
YjMxOTRjMGM1NWUzMjZiYzlmYTE3NjQ0MGE4ODRmNWNhOTUwYiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5LmgKKysr
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvUGxheWJhY2tTZXNzaW9uTWFuYWdlclBy
b3h5LmgKQEAgLTkyLDYgKzkyLDcgQEAgcHVibGljOgogICAgIGJvb2wgd2lyZWxlc3NWaWRlb1Bs
YXliYWNrRGlzYWJsZWQoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX3dpcmVsZXNzVmlkZW9QbGF5
YmFja0Rpc2FibGVkOyB9CiAKIHByaXZhdGU6CisgICAgZnJpZW5kIGNsYXNzIFBsYXliYWNrU2Vz
c2lvbk1hbmFnZXJQcm94eTsKICAgICBmcmllbmQgY2xhc3MgVmlkZW9GdWxsc2NyZWVuTW9kZWxD
b250ZXh0OwogCiAgICAgUGxheWJhY2tTZXNzaW9uTW9kZWxDb250ZXh0KFBsYXliYWNrU2Vzc2lv
bk1hbmFnZXJQcm94eSYgbWFuYWdlciwgUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIg
Y29udGV4dElkKQpAQCAtMTg3LDYgKzE4OCw4IEBAIHB1YmxpYzoKICAgICBQbGF0Zm9ybVBsYXli
YWNrU2Vzc2lvbkludGVyZmFjZSogY29udHJvbHNNYW5hZ2VySW50ZXJmYWNlKCk7CiAgICAgdm9p
ZCByZXF1ZXN0Q29udHJvbGxlZEVsZW1lbnRJRCgpOwogCisgICAgYm9vbCBpc1BhdXNlZChQbGF5
YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllcikgY29uc3Q7CisKICAgICAvLyBGb3IgdGVzdGlu
Zy4KICAgICBib29sIHdpcmVsZXNzVmlkZW9QbGF5YmFja0Rpc2FibGVkKCk7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXJQ
cm94eS5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vzc2lvbk1h
bmFnZXJQcm94eS5tbQppbmRleCBmZDYwYjhiMTM4ZDVkYjljNmQ5NDk5YWI0YjMyYzY1MzRiZGVk
NDI3Li40NzRiYjliODk4NGI0OTBmMzc5ODZiYjU0ZjU4MmY4ZDUwNmNhOTg5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJv
eHkubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvUGxheWJhY2tTZXNzaW9u
TWFuYWdlclByb3h5Lm1tCkBAIC00MTEsNiArNDExLDkgQEAgdm9pZCBQbGF5YmFja1Nlc3Npb25N
YW5hZ2VyUHJveHk6OmNsZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIoKQogdm9pZCBQbGF5YmFj
a1Nlc3Npb25NYW5hZ2VyUHJveHk6OmN1cnJlbnRUaW1lQ2hhbmdlZChQbGF5YmFja1Nlc3Npb25D
b250ZXh0SWRlbnRpZmllciBjb250ZXh0SWQsIGRvdWJsZSBjdXJyZW50VGltZSwgZG91YmxlIGhv
c3RUaW1lKQogewogICAgIGVuc3VyZU1vZGVsKGNvbnRleHRJZCkuY3VycmVudFRpbWVDaGFuZ2Vk
KGN1cnJlbnRUaW1lKTsKKworICAgIGlmIChtX3BhZ2UpCisgICAgICAgIG1fcGFnZS0+ZGlkQ2hh
bmdlQ3VycmVudFRpbWUoY29udGV4dElkKTsKIH0KIAogdm9pZCBQbGF5YmFja1Nlc3Npb25NYW5h
Z2VyUHJveHk6OmJ1ZmZlcmVkVGltZUNoYW5nZWQoUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50
aWZpZXIgY29udGV4dElkLCBkb3VibGUgYnVmZmVyZWRUaW1lKQpAQCAtNDkxLDYgKzQ5NCw5IEBA
IHZvaWQgUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5OjpwbGF5YmFja1N0YXJ0ZWRUaW1lQ2hh
bmdlZChQbGF5YmFja1Nlc3Npb25Db250CiB2b2lkIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94
eTo6cmF0ZUNoYW5nZWQoUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgY29udGV4dElk
LCBPcHRpb25TZXQ8V2ViQ29yZTo6UGxheWJhY2tTZXNzaW9uTW9kZWw6OlBsYXliYWNrU3RhdGU+
IHBsYXliYWNrU3RhdGUsIGRvdWJsZSByYXRlLCBkb3VibGUgZGVmYXVsdFBsYXliYWNrUmF0ZSkK
IHsKICAgICBlbnN1cmVNb2RlbChjb250ZXh0SWQpLnJhdGVDaGFuZ2VkKHBsYXliYWNrU3RhdGUs
IHJhdGUsIGRlZmF1bHRQbGF5YmFja1JhdGUpOworCisgICAgaWYgKG1fcGFnZSkKKyAgICAgICAg
bV9wYWdlLT5kaWRDaGFuZ2VQbGF5YmFja1JhdGUoY29udGV4dElkKTsKIH0KIAogdm9pZCBQbGF5
YmFja1Nlc3Npb25NYW5hZ2VyUHJveHk6OnBpY3R1cmVJblBpY3R1cmVTdXBwb3J0ZWRDaGFuZ2Vk
KFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyIGNvbnRleHRJZCwgYm9vbCBzdXBwb3J0
ZWQpCkBAIC02MzgsNiArNjQ0LDE2IEBAIFBsYXRmb3JtUGxheWJhY2tTZXNzaW9uSW50ZXJmYWNl
KiBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHk6OmNvbnRyb2xzTWFuYWdlckluCiAgICAgcmV0
dXJuICZpbnRlcmZhY2U7CiB9CiAKK2Jvb2wgUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5Ojpp
c1BhdXNlZChQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciBpZGVudGlmaWVyKSBjb25z
dAoreworICAgIGF1dG8gaXRlcmF0b3IgPSBtX2NvbnRleHRNYXAuZmluZChpZGVudGlmaWVyKTsK
KyAgICBpZiAoaXRlcmF0b3IgPT0gbV9jb250ZXh0TWFwLmVuZCgpKQorICAgICAgICByZXR1cm4g
ZmFsc2U7CisKKyAgICBhdXRvJiBtb2RlbCA9ICpzdGQ6OmdldDwwPihpdGVyYXRvci0+dmFsdWUp
OworICAgIHJldHVybiAhbW9kZWwuaXNQbGF5aW5nKCkgJiYgIW1vZGVsLmlzU3RhbGxlZCgpOwor
fQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKIAogI2VuZGlmIC8vIFBMQVRGT1JNKElPU19GQU1J
TFkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3Jl
ZW5NYW5hZ2VyUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVs
bHNjcmVlbk1hbmFnZXJQcm94eS5oCmluZGV4IGM3ZTBhMGFkMTg1ODcyZjU1ZjhlNGViNTQ3ZTdk
MDIxZjkyYzg2ZGYuLjRkN2QyYjlkMjdmYTUwY2U2NDE1MjNmMmFjNjUxMGYwZDFiMDUwYjIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1h
bmFnZXJQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVs
bHNjcmVlbk1hbmFnZXJQcm94eS5oCkBAIC0yMDUsNyArMjA1LDYgQEAgcHJpdmF0ZToKICAgICBX
ZWJQYWdlUHJveHkqIG1fcGFnZTsKICAgICBSZWY8UGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5
PiBtX3BsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eTsKICAgICBIYXNoTWFwPFBsYXliYWNrU2Vz
c2lvbkNvbnRleHRJZGVudGlmaWVyLCBNb2RlbEludGVyZmFjZVR1cGxlPiBtX2NvbnRleHRNYXA7
Ci0gICAgUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgbV9jb250cm9sc01hbmFnZXJD
b250ZXh0SWQ7CiAgICAgSGFzaE1hcDxQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciwg
aW50PiBtX2NsaWVudENvdW50czsKICAgICBWZWN0b3I8Q29tcGxldGlvbkhhbmRsZXI8dm9pZCgp
Pj4gbV9jbG9zZUNvbXBsZXRpb25IYW5kbGVyczsKICAgICBXZWFrSGFzaFNldDxWaWRlb0luUGlj
dHVyZUluUGljdHVyZURpZENoYW5nZU9ic2VydmVyPiBtX3BpcENoYW5nZU9ic2VydmVyczsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1h
bmFnZXJQcm94eS5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNj
cmVlbk1hbmFnZXJQcm94eS5tbQppbmRleCAzOWEwZGVlNzg0OWJkMGMyZmQ1OTc1NjAxMmIzYjA1
YjljNTczYzhkLi4wZmZhMWJjZjE2ZDdiY2Q2OTFlMDcwM2Y2YjA3NWE2NjE4YjdmNGE5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5h
Z2VyUHJveHkubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxs
c2NyZWVuTWFuYWdlclByb3h5Lm1tCkBAIC02MTcsNiArNjE3LDkgQEAgdm9pZCBWaWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyUHJveHk6OmVudGVyRnVsbHNjcmVlbihQbGF5YmFja1Nlc3Npb25Db250ZXh0
SWRlbnRpZmkKICAgICAgICAgaWYgKG90aGVySW50ZXJmYWNlLT5oYXNNb2RlKGludGVyZmFjZS5t
b2RlKCkpKQogICAgICAgICAgICAgb3RoZXJJbnRlcmZhY2UtPnJlcXVlc3RIaWRlQW5kRXhpdEZ1
bGxzY3JlZW4oKTsKICAgICB9CisKKyAgICBpZiAobV9wYWdlKQorICAgICAgICBtX3BhZ2UtPmRp
ZEVudGVyRnVsbHNjcmVlblZpZGVvKGNvbnRleHRJZCk7CiB9CiAKIHZvaWQgVmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlclByb3h5OjpleGl0RnVsbHNjcmVlbihQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRl
bnRpZmllciBjb250ZXh0SWQsIFdlYkNvcmU6OkZsb2F0UmVjdCBmaW5hbFJlY3QsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCkBAIC02NTAsNiArNjUz
LDkgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmV4aXRGdWxsc2NyZWVuKFBs
YXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWUKICNlbHNlCiAgICAgY29tcGxldGlvbkhhbmRs
ZXIoZW5zdXJlSW50ZXJmYWNlKGNvbnRleHRJZCkuZXhpdEZ1bGxzY3JlZW4oZmluYWxXaW5kb3dS
ZWN0LCBtX3BhZ2UtPnBsYXRmb3JtV2luZG93KCkpKTsKICNlbmRpZgorCisgICAgaWYgKG1fcGFn
ZSkKKyAgICAgICAgbV9wYWdlLT5kaWRFeGl0RnVsbHNjcmVlblZpZGVvKGNvbnRleHRJZCk7CiB9
CiAKIHZvaWQgVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpleGl0RnVsbHNjcmVlbldpdGhv
dXRBbmltYXRpb25Ub01vZGUoUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgY29udGV4
dElkLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUg
dGFyZ2V0TW9kZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dl
YlBhZ2VQcm94eUNvY29hLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUGFn
ZVByb3h5Q29jb2EubW0KaW5kZXggYjBkZDE5YThmZTI4NGY0OGNlMDdlMmRhNjA0NjEyMDc3NjE5
YTBjMy4uNzk4ZmU4MjNmMjgzZDdhMThiZjIxMmZmMDVmYmEwZTllZjJkNDFiYSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW0KKysr
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW0KQEAg
LTQ2MSw2ICs0NjEsNTUgQEAgdm9pZCBXZWJQYWdlUHJveHk6OnJlbW92ZU1lZGlhVXNhZ2VNYW5h
Z2VyU2Vzc2lvbihXZWJDb3JlOjpNZWRpYVNlc3Npb25JZGVudGlmaWUKIH0KICNlbmRpZgogCisj
aWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQorCit2b2lkIFdlYlBhZ2VQcm94eTo6
ZGlkRW50ZXJGdWxsc2NyZWVuVmlkZW8oUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIg
aWRlbnRpZmllcikKK3sKKyAgICBtX2N1cnJlbnRGdWxsc2NyZWVuVmlkZW9TZXNzaW9uSWRlbnRp
ZmllciA9IGlkZW50aWZpZXI7CisgICAgdXBkYXRlRnVsbHNjcmVlblZpZGVvRXh0cmFjdGlvbihp
ZGVudGlmaWVyKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZEV4aXRGdWxsc2NyZWVuVmlk
ZW8oUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgaWRlbnRpZmllcikKK3sKKyAgICBp
ZiAobV9jdXJyZW50RnVsbHNjcmVlblZpZGVvU2Vzc2lvbklkZW50aWZpZXIgIT0gaWRlbnRpZmll
cikKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9jdXJyZW50RnVsbHNjcmVlblZpZGVvU2Vzc2lv
bklkZW50aWZpZXIgPSBzdGQ6Om51bGxvcHQ7CisgICAgdXBkYXRlRnVsbHNjcmVlblZpZGVvRXh0
cmFjdGlvbihpZGVudGlmaWVyKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmRpZENoYW5nZVBs
YXliYWNrUmF0ZShQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciBpZGVudGlmaWVyKQor
eworICAgIGlmIChtX2N1cnJlbnRGdWxsc2NyZWVuVmlkZW9TZXNzaW9uSWRlbnRpZmllciA9PSBp
ZGVudGlmaWVyKQorICAgICAgICB1cGRhdGVGdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uKGlkZW50
aWZpZXIpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkQ2hhbmdlQ3VycmVudFRpbWUoUGxh
eWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgaWRlbnRpZmllcikKK3sKKyAgICBpZiAobV9j
dXJyZW50RnVsbHNjcmVlblZpZGVvU2Vzc2lvbklkZW50aWZpZXIgPT0gaWRlbnRpZmllcikKKyAg
ICAgICAgdXBkYXRlRnVsbHNjcmVlblZpZGVvRXh0cmFjdGlvbihpZGVudGlmaWVyKTsKK30KKwor
dm9pZCBXZWJQYWdlUHJveHk6OnVwZGF0ZUZ1bGxzY3JlZW5WaWRlb0V4dHJhY3Rpb24oUGxheWJh
Y2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgaWRlbnRpZmllcikKK3sKKyAgICBpZiAobV9wbGF5
YmFja1Nlc3Npb25NYW5hZ2VyICYmIG1fcGxheWJhY2tTZXNzaW9uTWFuYWdlci0+aXNQYXVzZWQo
aWRlbnRpZmllcikpIHsKKyAgICAgICAgbV9mdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uVGltZXIu
c3RhcnRPbmVTaG90KDI1MF9tcyk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBtX2Z1
bGxzY3JlZW5WaWRlb0V4dHJhY3Rpb25UaW1lci5zdG9wKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVBy
b3h5OjpmdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uVGltZXJGaXJlZCgpCit7CisgICAgaWYgKCFt
X2N1cnJlbnRGdWxsc2NyZWVuVmlkZW9TZXNzaW9uSWRlbnRpZmllcikKKyAgICAgICAgcmV0dXJu
OworCisgICAgLy8gRklYTUU6IEFkZCBsb2dpYyB0byBwZXJmb3JtIHZpZGVvIGZyYW1lIGV4dHJh
Y3Rpb24uCit9CisKKyNlbmRpZiAvLyBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisK
ICNpZiBIQVZFKFFVSUNLTE9PS19USFVNQk5BSUxJTkcpCiAKIHN0YXRpYyBSZWZQdHI8V2ViS2l0
OjpTaGFyZWFibGVCaXRtYXA+IGNvbnZlcnRQbGF0Zm9ybUltYWdlVG9CaXRtYXAoQ29jb2FJbWFn
ZSAqaW1hZ2UsIGNvbnN0IFdlYkNvcmU6OkludFNpemUmIGZpdHRpbmdTaXplKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggZTQ5OTM1YzMyNWY2OWYzNDM0NDBj
YWEwYWRkN2JmZmUxYzAwNTI4Mi4uZWZhM2M5MzIxNzE5Y2ZhYjMwYzM2MDVhMzEzNzIwNzRlNWQ5
MDc3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC01MTYs
NiArNTE2LDkgQEAgV2ViUGFnZVByb3h5OjpXZWJQYWdlUHJveHkoUGFnZUNsaWVudCYgcGFnZUNs
aWVudCwgV2ViUHJvY2Vzc1Byb3h5JiBwcm9jZXNzLCBSZWYKICAgICAsIG1fbGltaXRzTmF2aWdh
dGlvbnNUb0FwcEJvdW5kRG9tYWlucyhtX2NvbmZpZ3VyYXRpb24tPmxpbWl0c05hdmlnYXRpb25z
VG9BcHBCb3VuZERvbWFpbnMoKSkKICNlbmRpZgogICAgICwgbV9ub3RpZmljYXRpb25NYW5hZ2Vy
TWVzc2FnZUhhbmRsZXIoKnRoaXMpCisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RF
KQorICAgICwgbV9mdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uVGltZXIoUnVuTG9vcDo6bWFpbigp
LCB0aGlzLCAmV2ViUGFnZVByb3h5OjpmdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uVGltZXJGaXJl
ZCkKKyNlbmRpZgogewogICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAiY29u
c3RydWN0b3I6Iik7CiAKQEAgLTgxMDEsNiArODEwNCwxMSBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6
cmVzZXRTdGF0ZUFmdGVyUHJvY2Vzc0V4aXRlZChQcm9jZXNzVGVybWluYXRpb25SZWFzb24gdGVy
bWluYQogCiAgICAgdXBkYXRlUGxheWluZ01lZGlhRGlkQ2hhbmdlKE1lZGlhUHJvZHVjZXI6Oklz
Tm90UGxheWluZyk7CiAKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisgICAg
bV9mdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uVGltZXIuc3RvcCgpOworICAgIG1fY3VycmVudEZ1
bGxzY3JlZW5WaWRlb1Nlc3Npb25JZGVudGlmaWVyID0gc3RkOjpudWxsb3B0OworI2VuZGlmCisK
ICAgICAvLyBGSVhNRTogPHJkYXI6Ly9wcm9ibGVtLzM4Njc2NjA0PiBJbiBjYXNlIG9mIHByb2Nl
c3Mgc3dhcHMsIHRoZSBvbGQgcHJvY2VzcyBzaG91bGQgZ3JhY2VmdWxseSBzdXNwZW5kIGluc3Rl
YWQgb2YgdGVybWluYXRpbmcuCiAgICAgbV9wcm9jZXNzLT5wcm9jZXNzVGVybWluYXRlZCgpOwog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmggYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAppbmRleCA1MDdlYWM4YTk2NTJh
ZTBmZTBhMTNiMjI2ZGVmZjg4MmRlYzM4ZjMxLi44MTk4MmM1MGFhOTNkN2MxN2UxMWNiMzhiOWMw
MzNhOGNmNWFhMDZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdl
UHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaApAQCAt
MTU3LDYgKzE1Nyw3IEBACiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKENPQ09BKQorI2luY2x1ZGUg
IlBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUmVtb3RlTGF5
ZXJUcmVlTm9kZS5oIgogI2luY2x1ZGUgPHd0Zi9XZWFrT2JqQ1B0ci5oPgogI2VuZGlmCkBAIC0x
OTM1LDYgKzE5MzYsMTMgQEAgcHVibGljOgogICAgIHZvaWQgcmVtb3ZlTWVkaWFVc2FnZU1hbmFn
ZXJTZXNzaW9uKFdlYkNvcmU6Ok1lZGlhU2Vzc2lvbklkZW50aWZpZXIpOwogI2VuZGlmCiAKKyNp
ZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisgICAgdm9pZCBkaWRFbnRlckZ1bGxz
Y3JlZW5WaWRlbyhQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllcik7CisgICAgdm9pZCBk
aWRFeGl0RnVsbHNjcmVlblZpZGVvKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyKTsK
KyAgICB2b2lkIGRpZENoYW5nZVBsYXliYWNrUmF0ZShQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRl
bnRpZmllcik7CisgICAgdm9pZCBkaWRDaGFuZ2VDdXJyZW50VGltZShQbGF5YmFja1Nlc3Npb25D
b250ZXh0SWRlbnRpZmllcik7CisjZW5kaWYKKwogICAgIHZvaWQgc2V0SGFzRXhlY3V0ZWRBcHBC
b3VuZEJlaGF2aW9yQmVmb3JlTmF2aWdhdGlvbigpIHsgbV9oYXNFeGVjdXRlZEFwcEJvdW5kQmVo
YXZpb3JCZWZvcmVOYXZpZ2F0aW9uID0gdHJ1ZTsgfQogCiAgICAgV2ViUG9wdXBNZW51UHJveHkq
IGFjdGl2ZVBvcHVwTWVudSgpIGNvbnN0IHsgcmV0dXJuIG1fYWN0aXZlUG9wdXBNZW51LmdldCgp
OyB9CkBAIC0yNTk4LDYgKzI2MDYsMTEgQEAgcHJpdmF0ZToKICAgICB2b2lkIHNldFVwSGlnaGxp
Z2h0c09ic2VydmVyKCk7CiAjZW5kaWYKIAorI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05f
TU9ERSkKKyAgICB2b2lkIHVwZGF0ZUZ1bGxzY3JlZW5WaWRlb0V4dHJhY3Rpb24oUGxheWJhY2tT
ZXNzaW9uQ29udGV4dElkZW50aWZpZXIpOworICAgIHZvaWQgZnVsbHNjcmVlblZpZGVvRXh0cmFj
dGlvblRpbWVyRmlyZWQoKTsKKyNlbmRpZgorCiAgICAgY29uc3QgSWRlbnRpZmllciBtX2lkZW50
aWZpZXI7CiAgICAgV2ViQ29yZTo6UGFnZUlkZW50aWZpZXIgbV93ZWJQYWdlSUQ7CiAgICAgV2Vh
a1B0cjxQYWdlQ2xpZW50PiBtX3BhZ2VDbGllbnQ7CkBAIC0zMTczLDYgKzMxODYsMTEgQEAgcHJp
dmF0ZToKICAgICBzdGQ6Om9wdGlvbmFsPFNjcm9sbGluZ0FjY2VsZXJhdGlvbkN1cnZlPiBtX3Nj
cm9sbGluZ0FjY2VsZXJhdGlvbkN1cnZlOwogICAgIHN0ZDo6b3B0aW9uYWw8U2Nyb2xsaW5nQWNj
ZWxlcmF0aW9uQ3VydmU+IG1fbGFzdFNlbnRTY3JvbGxpbmdBY2NlbGVyYXRpb25DdXJ2ZTsKICNl
bmRpZgorCisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQorICAgIHN0ZDo6b3B0
aW9uYWw8UGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXI+IG1fY3VycmVudEZ1bGxzY3Jl
ZW5WaWRlb1Nlc3Npb25JZGVudGlmaWVyOworICAgIFJ1bkxvb3A6OlRpbWVyPFdlYlBhZ2VQcm94
eT4gbV9mdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uVGltZXI7CisjZW5kaWYKIH07CiAKICNpZmRl
ZiBfX09CSkNfXwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKaW5kZXggNzdlMGE5ZmQ0NmM2Y2IzYmU4MGNjZTdiOGZmMWI0MTlmM2UzYzI2NS4uZDhj
NWYzNDFhOWRjODI3N2ZlNzRhYjA4MWM0YmY1ZTMxMDhmODY3MiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2Vi
S2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC04NjQsNyArODY0LDYgQEAK
IAkJNDFGQUY1RjUxRTNDMDY0OTAwMUFFNjc4IC8qIFdlYlJUQ1Jlc29sdmVyLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MUZBRjVGNDFFM0MwNjQxMDAx
QUU2NzggLyogV2ViUlRDUmVzb2x2ZXIuaCAqLzsgfTsKIAkJNDFGQUY1RjgxRTNDMTAyMTAwMUFF
Njc4IC8qIExpYldlYlJUQ1Jlc29sdmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0MUZBRjVGNjFFM0MwQjQ3MDAxQUU2NzggLyogTGliV2ViUlRDUmVz
b2x2ZXIuaCAqLzsgfTsKIAkJNDQ1OTk4NDIyMjgzM0U4NzAwRTYxMzczIC8qIFN5bnRoZXRpY0Vk
aXRpbmdDb21tYW5kVHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNDQ1OTk4NDEyMjgzM0U2MDAwRTYxMzczIC8qIFN5bnRoZXRpY0VkaXRpbmdDb21t
YW5kVHlwZS5oICovOyB9OwotCQk0NDZEQzY0QzI0QTJEOEU1MDA2MUYzOTAgLyogUGxheWJhY2tT
ZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDQ0NkRDNjRCMjRBMkQ4QUQwMDYxRjM5MCAvKiBQbGF5YmFja1Nlc3Np
b25Db250ZXh0SWRlbnRpZmllci5oICovOyB9OwogCQk0NDc2RUYwOTI1QkZDOEI3MDA0QTA1ODcg
LyogX1dLQXBwSGlnaGxpZ2h0RGVsZWdhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDQ0NzZFRjA4MjVCRkM4QjcwMDRBMDU4NyAvKiBfV0tBcHBIaWdo
bGlnaHREZWxlZ2F0ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CiAJCTQ0ODI3MzQ3MjQ1MjhGNjAwMEE5NTQ5MyAvKiBDb2NvYUltYWdlLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NDgyNzM0NjI0NTI4RjYw
MDBBOTU0OTMgLyogQ29jb2FJbWFnZS5oICovOyB9OwogCQk0NDhBQzI0RTI2NzEzNUE3MDBCMjg5
MjEgLyogU3luYXBzZVNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNDQ4QUMyNEQyNjcxMzVBNjAwQjI4OTIxIC8qIFN5bmFwc2VTUEkuaCAqLzsgfTsK
QEAgLTIwMzEsNiArMjAzMCw3IEBACiAJCUY0OTc0RTc2MjY1RUNCQkMwMEI0OUI4QyAvKiBXS1Jl
dmVhbEl0ZW1QcmVzZW50ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEY0NDZFREVGMjY1RUIyQjAwMDMxREE4RiAvKiBXS1JldmVhbEl0ZW1QcmVzZW50
ZXIuaCAqLzsgfTsKIAkJRjQ5NzVDRjIyNjI0QjgwQTAwM0M2MjZFIC8qIFdLUXVpY2tMb29rUHJl
dmlld0NvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEY0OTc1Q0YxMjYyNEI4MEEwMDNDNjI2RSAvKiBXS1F1aWNrTG9va1ByZXZpZXdDb250
cm9sbGVyLmggKi87IH07CiAJCUY0QkEzM0YyMjU3NTdFODkwMDBBM0NFOCAvKiBXS0ltYWdlQW5h
bHlzaXNHZXN0dXJlUmVjb2duaXplci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRjRCQTMzRjAyNTc1N0U4OTAwMEEzQ0U4IC8qIFdLSW1hZ2VBbmFseXNp
c0dlc3R1cmVSZWNvZ25pemVyLmggKi87IH07CisJCUY0QkUwRDc3MjdBQUUxQ0IwMDVGMDMyMyAv
KiBQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjRCRTBENzYyN0FBRTFDQjAwNUYwMzIzIC8qIFBs
YXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLmggKi87IH07CiAJCUY0Q0IwOUU1MjI1RDVB
MDkwMDg5MTQ4NyAvKiBXZWJzaXRlTWVkaWFTb3VyY2VQb2xpY3kuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0Q0IwOUU0MjI1RDVBMDMwMDg5MTQ4NyAv
KiBXZWJzaXRlTWVkaWFTb3VyY2VQb2xpY3kuaCAqLzsgfTsKIAkJRjRDRjFFOUQyNUU0MERDQzAw
MEY5RDczIC8qIEdlc3R1cmVSZWNvZ25pemVyQ29uc2lzdGVuY3lFbmZvcmNlci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjRDRjFFOUIyNUU0MERDQzAw
MEY5RDczIC8qIEdlc3R1cmVSZWNvZ25pemVyQ29uc2lzdGVuY3lFbmZvcmNlci5oICovOyB9Owog
CQlGNEQ1RjUxRDIwNjA4N0ExMDAzOEJCQTggLyogV0tUZXh0SW5wdXRMaXN0Vmlld0NvbnRyb2xs
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0RDVG
NTE5MjA2MDg3QTAwMDM4QkJBOCAvKiBXS1RleHRJbnB1dExpc3RWaWV3Q29udHJvbGxlci5oICov
OyB9OwpAQCAtNDIwNiw3ICs0MjA2LDYgQEAKIAkJNDFGRkQyREMyNzVBNkE5NDAwNTAxQkJGIC8q
IFNlcnZpY2VXb3JrZXJEb3dubG9hZFRhc2subWVzc2FnZXMuaW4gKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU2VydmljZVdvcmtl
ckRvd25sb2FkVGFzay5tZXNzYWdlcy5pbjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NDQ1MEFFQkYxREMzRkFFNTAwOTk0M0YyIC8qIFNoYXJlZE1lbW9yeUNvY29hLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNoYXJlZE1lbW9yeUNvY29hLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDQ1OTk4NDEyMjgzM0U2MDAwRTYxMzczIC8qIFN5
bnRoZXRpY0VkaXRpbmdDb21tYW5kVHlwZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTeW50aGV0aWNFZGl0
aW5nQ29tbWFuZFR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNDQ2REM2NEIy
NEEyRDhBRDAwNjFGMzkwIC8qIFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVu
dGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ0NzZFRjA4MjVCRkM4Qjcw
MDRBMDU4NyAvKiBfV0tBcHBIaWdobGlnaHREZWxlZ2F0ZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBfV0tBcHBIaWdobGlnaHREZWxlZ2F0ZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk0NDgyNzM0NjI0NTI4RjYwMDBBOTU0OTMgLyogQ29jb2FJbWFnZS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDb2NvYUltYWdlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTQ0OEFDMjREMjY3MTM1QTYwMEIyODkyMSAvKiBTeW5hcHNlU1BJ
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN5bmFwc2VTUEkuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTY1MTgsNiArNjUxNyw3IEBACiAJCUY0QjM3OEQwMjFE
REJCQUIwMDk1QTM3OCAvKiBXZWJVbmRvU3RlcElELmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlVuZG9T
dGVwSUQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRjRCQTMzRjAyNTc1N0U4OTAw
MEEzQ0U4IC8qIFdLSW1hZ2VBbmFseXNpc0dlc3R1cmVSZWNvZ25pemVyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFt
ZSA9IFdLSW1hZ2VBbmFseXNpc0dlc3R1cmVSZWNvZ25pemVyLmg7IHBhdGggPSBpb3MvV0tJbWFn
ZUFuYWx5c2lzR2VzdHVyZVJlY29nbml6ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJRjRCQTMzRjEyNTc1N0U4OTAwMEEzQ0U4IC8qIFdLSW1hZ2VBbmFseXNpc0dlc3R1cmVSZWNv
Z25pemVyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gV0tJbWFnZUFuYWx5c2lzR2VzdHVyZVJl
Y29nbml6ZXIubW07IHBhdGggPSBpb3MvV0tJbWFnZUFuYWx5c2lzR2VzdHVyZVJlY29nbml6ZXIu
bW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUY0QkUwRDc2MjdBQUUxQ0IwMDVGMDMy
MyAvKiBQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNENCMDlFNDIyNUQ1QTAzMDA4OTE0ODcgLyogV2Vi
c2l0ZU1lZGlhU291cmNlUG9saWN5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYnNpdGVNZWRpYVNvdXJj
ZVBvbGljeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNENGMUU5QjI1RTQwREND
MDAwRjlENzMgLyogR2VzdHVyZVJlY29nbml6ZXJDb25zaXN0ZW5jeUVuZm9yY2VyLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEdlc3R1cmVSZWNvZ25pemVyQ29uc2lzdGVuY3lF
bmZvcmNlci5oOyBwYXRoID0gaW9zL0dlc3R1cmVSZWNvZ25pemVyQ29uc2lzdGVuY3lFbmZvcmNl
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNENGMUU5QzI1RTQwRENDMDAwRjlE
NzMgLyogR2VzdHVyZVJlY29nbml6ZXJDb25zaXN0ZW5jeUVuZm9yY2VyLm1tICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gR2VzdHVyZVJlY29nbml6ZXJDb25zaXN0ZW5j
eUVuZm9yY2VyLm1tOyBwYXRoID0gaW9zL0dlc3R1cmVSZWNvZ25pemVyQ29uc2lzdGVuY3lFbmZv
cmNlci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTkwNDcsNiArOTA0Nyw3IEBA
CiAJCQkJMkQxMDg3NjIxRDJDNjQxQjAwQjg1RjgyIC8qIExvYWRQYXJhbWV0ZXJzQ29jb2EubW0g
Ki8sCiAJCQkJMkQ0NDBCODMyNUVGMjM1RTAwQTk4RDg3IC8qIFBERktpdFNvZnRMaW5rLmggKi8s
CiAJCQkJMkQ0NDBCODIyNUVGMjM1RTAwQTk4RDg3IC8qIFBERktpdFNvZnRMaW5rLm1tICovLAor
CQkJCUY0QkUwRDc2MjdBQUUxQ0IwMDVGMDMyMyAvKiBQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRl
bnRpZmllci5oICovLAogCQkJCTdBQjRFQTNGMjI3NzdDNDYwMDg1QkJBQSAvKiBTYW5kYm94RXh0
ZW5zaW9uQ29jb2EubW0gKi8sCiAJCQkJN0FCNEVBNDEyMjc3N0ZDNzAwODVCQkFBIC8qIFNhbmRi
b3hJbml0aWFsaWF0aW9uUGFyYW1ldGVyc0NvY29hLm1tICovLAogCQkJCUUxOUJEQTg4MTkzNjg2
QTQwMEI5N0Y1NyAvKiBTYW5kYm94VXRpbGl0aWVzLmggKi8sCkBAIC0xMDI1NSw3ICsxMDI1Niw2
IEBACiAJCQkJQzFBMTUyRDYyNEU1QTI5QTAwOTc4QzhCIC8qIEhhbmRsZVhQQ0VuZHBvaW50TWVz
c2FnZXMubW0gKi8sCiAJCQkJQzE0RDM3RkMyNEFDREY0NTAwN0ZGMDE0IC8qIExhdW5jaFNlcnZp
Y2VzRGF0YWJhc2VNYW5hZ2VyLmggKi8sCiAJCQkJQzE0RDM3RkQyNEFDRTA4NjAwN0ZGMDE0IC8q
IExhdW5jaFNlcnZpY2VzRGF0YWJhc2VNYW5hZ2VyLm1tICovLAotCQkJCTQ0NkRDNjRCMjRBMkQ4
QUQwMDYxRjM5MCAvKiBQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5oICovLAogCQkJ
CUNEQTI5QTE5MUNCREJGNDEwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyLmggKi8s
CiAJCQkJQ0RBMjlBMUMxQ0JEQkY1QjAwOTAxQ0NGIC8qIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXIu
bWVzc2FnZXMuaW4gKi8sCiAJCQkJQ0RBMjlBMTgxQ0JEQkY0MTAwOTAxQ0NGIC8qIFBsYXliYWNr
U2Vzc2lvbk1hbmFnZXIubW0gKi8sCkBAIC0xMzIyMSw3ICsxMzIyMSw3IEBACiAJCQkJMkQ4NzEw
MTcxODI4NDE1RDAwMThGQTAxIC8qIFBsYXRmb3JtQ0FMYXllclJlbW90ZUN1c3RvbS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMkQ4OTQ5RjExODIwNDRGNjAwRTg5OEFBIC8qIFBsYXRmb3JtQ0FMYXll
clJlbW90ZVRpbGVkQmFja2luZy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNDNDNBQkIxMjdCOTVE
QzAwMzE3RjE2IC8qIFBsYXRmb3JtUG9wdXBNZW51RGF0YS5oIGluIEhlYWRlcnMgKi8sCi0JCQkJ
NDQ2REM2NEMyNEEyRDhFNTAwNjFGMzkwIC8qIFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlm
aWVyLmggaW4gSGVhZGVycyAqLywKKwkJCQlGNEJFMEQ3NzI3QUFFMUNCMDA1RjAzMjMgLyogUGxh
eWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUNEQTI5
QTFCMUNCREJGNDEwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyLmggaW4gSGVhZGVy
cyAqLywKIAkJCQlDREEyOUEyOTFDQkVCNjdBMDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9uTWFu
YWdlck1lc3NhZ2VzLmggaW4gSGVhZGVycyAqLywKIAkJCQlDREEyOUEyMDFDQkVCNUZCMDA5MDFD
Q0YgLyogUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5LmggaW4gSGVhZGVycyAqLywKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9QbGF5YmFja1Nlc3Npb25Db250
ZXh0SWRlbnRpZmllci5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1BsYXliYWNr
U2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDM3N2YxN2M1MzBiYjVlYjIxMjc5ZDZhOGZhNzk2NWViNWMyNzVmOGMuLjAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L2NvY29hL1BsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLmgKKysrIC9kZXYvbnVsbApA
QCAtMSwzNSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJl
IG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI3ByYWdtYSBvbmNlCi0KLSNpbmNsdWRlIDx3
dGYvT2JqZWN0SWRlbnRpZmllci5oPgotCi1uYW1lc3BhY2UgV2ViS2l0IHsKLQotZW51bSBQbGF5
YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllclR5cGUgeyB9OwotdXNpbmcgUGxheWJhY2tTZXNz
aW9uQ29udGV4dElkZW50aWZpZXIgPSBPYmplY3RJZGVudGlmaWVyPFBsYXliYWNrU2Vzc2lvbkNv
bnRleHRJZGVudGlmaWVyVHlwZT47Ci0KLX0K
</data>
<flag name="commit-queue"
          id="477309"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>450793</attachid>
            <date>2022-02-03 10:41:55 -0800</date>
            <delta_ts>2022-02-03 13:42:44 -0800</delta_ts>
            <desc>Fix tvOS build</desc>
            <filename>bug-236083-20220203104155.patch</filename>
            <type>text/plain</type>
            <size>25216</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg5MDU3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDE1NzcyNTBhNmE5NTZmOGQx
OWQyNzczNDFiZWNjNDBlZjEwZGU4N2IuLjU3NzJjMGM2YTM0M2VmMjFjODgwYjhhNGU2YzViYWI1
NGM4OGYxNzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTcgQEAKKzIwMjItMDItMDMgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHBsdW1iaW5nIHRv
IGluZm9ybSBXZWJQYWdlUHJveHkgd2hlbiB2aWRlb3MgcGxheSwgcGF1c2UsIHNlZWssIGFuZCBl
bnRlciBvciBleGl0IGZ1bGxzY3JlZW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIzNjA4MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEFkZCBzZXZlcmFsIG1ldGhvZHMgb24gV2ViUGFnZVByb3h5IHdoaWNo
IGFyZSBjYWxsZWQgZnJvbSBib3RoIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eSBhcyB3ZWxs
IGFzCisgICAgICAgIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eTsgaW4gZnV0dXJlIHBhdGNo
ZXMsIHRoaXMgd2lsbCBiZSB1c2VkIHRvIGRldGVjdCB3aGVuIGEgZnVsbHNjcmVlbiB2aWRlbyBo
YXMgYmVlbgorICAgICAgICBwYXVzZWQgZm9yIGF0IGxlYXN0IDI1MCBtcywgYW5kIGNhbGwgb3V0
IHRvIHRoZSBwYWdlIGNsaWVudCB0byBwZXJmb3JtICJ2aWRlbyBmcmFtZSBleHRyYWN0aW9uIi4K
KworICAgICAgICBObyBjaGFuZ2UgaW4gYmVoYXZpb3IgKHlldCkuCisKKyAgICAgICAgKiBTaGFy
ZWQvQ29jb2EvUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaDogUmVuYW1lZCBmcm9t
IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9QbGF5YmFja1Nlc3Npb25Db250ZXh0SWRl
bnRpZmllci5oLgorCisgICAgICAgIE1vdmUgdGhpcyBmcm9tIFNvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9jb2NvYSB0byBTaGFyZWQvQ29jb2EuIFRoaXMgZW51bSB0eXBlIGlzIHBhc3NlZCBhcm91
bmQgaW4gbWVkaWEgY29kZSBpbgorICAgICAgICBib3RoIHRoZSBVSSBhbmQgd2ViIHByb2Nlc3Nl
cywgc28gaXQgc2hvdWxkIGJlIGluIHRoZSBTaGFyZWQgZm9sZGVyIGluc3RlYWQgb2YgdGhlIFdl
YlByb2Nlc3MgZm9sZGVyLgorCisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vz
c2lvbk1hbmFnZXJQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9QbGF5YmFja1Nl
c3Npb25NYW5hZ2VyUHJveHkubW06CisgICAgICAgIChXZWJLaXQ6OlBsYXliYWNrU2Vzc2lvbk1h
bmFnZXJQcm94eTo6Y3VycmVudFRpbWVDaGFuZ2VkKToKKyAgICAgICAgKFdlYktpdDo6UGxheWJh
Y2tTZXNzaW9uTWFuYWdlclByb3h5OjpyYXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJLaXQ6OlBs
YXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eTo6aXNQYXVzZWQgY29uc3QpOgorCisgICAgICAgIEFk
ZCBhIGhlbHBlciBtZXRob2QgdG8gcmV0dXJuIHdoZXRoZXIgb3Igbm90IHRoZSBzZXNzaW9uIGZv
ciBhIGdpdmVuIFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyIGlzIHBhdXNlZAorICAg
ICAgICAodGhhdCBpcywgbmVpdGhlciBwbGF5aW5nIG5vciBzdGFsbGVkKS4KKworICAgICAgICAq
IFVJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaDoKKworICAgICAg
ICBEcml2ZS1ieSBmaXg6IHJlbW92ZSBhbiB1bnVzZWQgbWVtYmVyIHZhcmlhYmxlLgorCisgICAg
ICAgICogVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbToKKyAg
ICAgICAgKFdlYktpdDo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpkaWRFeGl0RnVsbHNj
cmVlbik6CisgICAgICAgIChXZWJLaXQ6OlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6ZGlk
RW50ZXJGdWxsc2NyZWVuKToKKworICAgICAgICBBZGRpdGlvbmFsbHkgcGFzcyB0aGUgc2Vzc2lv
biBjb250ZXh0IElEIHRvIFdlYlBhZ2VQcm94eSBpbiB0aGVzZSBtZXRob2RzLgorCisgICAgICAg
ICogVUlQcm9jZXNzL0NvY29hL1dlYlBhZ2VQcm94eUNvY29hLm1tOgorICAgICAgICAoV2ViS2l0
OjpXZWJQYWdlUHJveHk6OmRpZENoYW5nZVBsYXliYWNrUmF0ZSk6CisgICAgICAgIChXZWJLaXQ6
OldlYlBhZ2VQcm94eTo6ZGlkQ2hhbmdlQ3VycmVudFRpbWUpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJQYWdlUHJveHk6OnVwZGF0ZUZ1bGxzY3JlZW5WaWRlb0V4dHJhY3Rpb24pOgorICAgICAgICAo
V2ViS2l0OjpXZWJQYWdlUHJveHk6OmZ1bGxzY3JlZW5WaWRlb0V4dHJhY3Rpb25UaW1lckZpcmVk
KToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktp
dDo6bV9mdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uVGltZXIpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJQYWdlUHJveHk6OmRpZEVudGVyRnVsbHNjcmVlbik6CisgICAgICAgIChXZWJLaXQ6OldlYlBh
Z2VQcm94eTo6ZGlkRXhpdEZ1bGxzY3JlZW4pOgorCisgICAgICAgIEFkZCBhIFBsYXliYWNrU2Vz
c2lvbkNvbnRleHRJZGVudGlmaWVyIGFyZ3VtZW50IHRvIHRoZXNlIGV4aXN0aW5nIG1ldGhvZHMu
CisKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpyZXNldFN0YXRlQWZ0ZXJQcm9jZXNz
RXhpdGVkKToKKyAgICAgICAgKFdlYktpdDo6bV9ub3RpZmljYXRpb25NYW5hZ2VyTWVzc2FnZUhh
bmRsZXIpOiBEZWxldGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaDoKKyAg
ICAgICAgKiBXZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKwogMjAyMi0wMi0wMyAg
UGVyIEFybmUgVm9sbGFuICA8cHZvbGxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW2lPU11bV1Bd
IEFkZCBmaWxlLWlvY3RsIHRlbGVtZXRyeQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFy
ZWQvQ29jb2EvUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaCBiL1NvdXJjZS9XZWJL
aXQvU2hhcmVkL0NvY29hL1BsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLmgKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMzc3ZjE3YzUzMGJiNWViMjEyNzlkNmE4ZmE3OTY1ZWI1YzI3NWY4YwotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1BsYXliYWNrU2Vzc2lvbkNvbnRl
eHRJZGVudGlmaWVyLmgKQEAgLTAsMCArMSwzNSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAy
MCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBg
QVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklC
VVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25j
ZQorCisjaW5jbHVkZSA8d3RmL09iamVjdElkZW50aWZpZXIuaD4KKworbmFtZXNwYWNlIFdlYktp
dCB7CisKK2VudW0gUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXJUeXBlIHsgfTsKK3Vz
aW5nIFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyID0gT2JqZWN0SWRlbnRpZmllcjxQ
bGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllclR5cGU+OworCit9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHku
aCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXJQ
cm94eS5oCmluZGV4IDUyN2M2NzczYjM2NGEyY2ZkYmQ0ZjJmMGFiZDgwMTNiNDBjZmQ0M2IuLjVi
MGIzMTk0YzBjNTVlMzI2YmM5ZmExNzY0NDBhODg0ZjVjYTk1MGIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eS5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXJQ
cm94eS5oCkBAIC05Miw2ICs5Miw3IEBAIHB1YmxpYzoKICAgICBib29sIHdpcmVsZXNzVmlkZW9Q
bGF5YmFja0Rpc2FibGVkKCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV93aXJlbGVzc1ZpZGVvUGxh
eWJhY2tEaXNhYmxlZDsgfQogCiBwcml2YXRlOgorICAgIGZyaWVuZCBjbGFzcyBQbGF5YmFja1Nl
c3Npb25NYW5hZ2VyUHJveHk7CiAgICAgZnJpZW5kIGNsYXNzIFZpZGVvRnVsbHNjcmVlbk1vZGVs
Q29udGV4dDsKIAogICAgIFBsYXliYWNrU2Vzc2lvbk1vZGVsQ29udGV4dChQbGF5YmFja1Nlc3Np
b25NYW5hZ2VyUHJveHkmIG1hbmFnZXIsIFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVy
IGNvbnRleHRJZCkKQEAgLTE4Nyw2ICsxODgsOCBAQCBwdWJsaWM6CiAgICAgUGxhdGZvcm1QbGF5
YmFja1Nlc3Npb25JbnRlcmZhY2UqIGNvbnRyb2xzTWFuYWdlckludGVyZmFjZSgpOwogICAgIHZv
aWQgcmVxdWVzdENvbnRyb2xsZWRFbGVtZW50SUQoKTsKIAorICAgIGJvb2wgaXNQYXVzZWQoUGxh
eWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIpIGNvbnN0OworCiAgICAgLy8gRm9yIHRlc3Rp
bmcuCiAgICAgYm9vbCB3aXJlbGVzc1ZpZGVvUGxheWJhY2tEaXNhYmxlZCgpOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9QbGF5YmFja1Nlc3Npb25NYW5hZ2Vy
UHJveHkubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9QbGF5YmFja1Nlc3Npb25N
YW5hZ2VyUHJveHkubW0KaW5kZXggZmQ2MGI4YjEzOGQ1ZGI5YzZkOTQ5OWFiNGIzMmM2NTM0YmRl
ZDQyNy4uN2ZlM2IwZjZiYTM5YjdmZGYxMjA1Y2Y2OWZjNDc5MzI0MDM3ZTMxNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvUGxheWJhY2tTZXNzaW9uTWFuYWdlclBy
b3h5Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vzc2lv
bk1hbmFnZXJQcm94eS5tbQpAQCAtNDExLDYgKzQxMSwxMSBAQCB2b2lkIFBsYXliYWNrU2Vzc2lv
bk1hbmFnZXJQcm94eTo6Y2xlYXJQbGF5YmFja0NvbnRyb2xzTWFuYWdlcigpCiB2b2lkIFBsYXli
YWNrU2Vzc2lvbk1hbmFnZXJQcm94eTo6Y3VycmVudFRpbWVDaGFuZ2VkKFBsYXliYWNrU2Vzc2lv
bkNvbnRleHRJZGVudGlmaWVyIGNvbnRleHRJZCwgZG91YmxlIGN1cnJlbnRUaW1lLCBkb3VibGUg
aG9zdFRpbWUpCiB7CiAgICAgZW5zdXJlTW9kZWwoY29udGV4dElkKS5jdXJyZW50VGltZUNoYW5n
ZWQoY3VycmVudFRpbWUpOworCisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQor
ICAgIGlmIChtX3BhZ2UpCisgICAgICAgIG1fcGFnZS0+ZGlkQ2hhbmdlQ3VycmVudFRpbWUoY29u
dGV4dElkKTsKKyNlbmRpZgogfQogCiB2b2lkIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eTo6
YnVmZmVyZWRUaW1lQ2hhbmdlZChQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciBjb250
ZXh0SWQsIGRvdWJsZSBidWZmZXJlZFRpbWUpCkBAIC00OTEsNiArNDk2LDExIEBAIHZvaWQgUGxh
eWJhY2tTZXNzaW9uTWFuYWdlclByb3h5OjpwbGF5YmFja1N0YXJ0ZWRUaW1lQ2hhbmdlZChQbGF5
YmFja1Nlc3Npb25Db250CiB2b2lkIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eTo6cmF0ZUNo
YW5nZWQoUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgY29udGV4dElkLCBPcHRpb25T
ZXQ8V2ViQ29yZTo6UGxheWJhY2tTZXNzaW9uTW9kZWw6OlBsYXliYWNrU3RhdGU+IHBsYXliYWNr
U3RhdGUsIGRvdWJsZSByYXRlLCBkb3VibGUgZGVmYXVsdFBsYXliYWNrUmF0ZSkKIHsKICAgICBl
bnN1cmVNb2RlbChjb250ZXh0SWQpLnJhdGVDaGFuZ2VkKHBsYXliYWNrU3RhdGUsIHJhdGUsIGRl
ZmF1bHRQbGF5YmFja1JhdGUpOworCisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RF
KQorICAgIGlmIChtX3BhZ2UpCisgICAgICAgIG1fcGFnZS0+ZGlkQ2hhbmdlUGxheWJhY2tSYXRl
KGNvbnRleHRJZCk7CisjZW5kaWYKIH0KIAogdm9pZCBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJv
eHk6OnBpY3R1cmVJblBpY3R1cmVTdXBwb3J0ZWRDaGFuZ2VkKFBsYXliYWNrU2Vzc2lvbkNvbnRl
eHRJZGVudGlmaWVyIGNvbnRleHRJZCwgYm9vbCBzdXBwb3J0ZWQpCkBAIC02MzgsNiArNjQ4LDE2
IEBAIFBsYXRmb3JtUGxheWJhY2tTZXNzaW9uSW50ZXJmYWNlKiBQbGF5YmFja1Nlc3Npb25NYW5h
Z2VyUHJveHk6OmNvbnRyb2xzTWFuYWdlckluCiAgICAgcmV0dXJuICZpbnRlcmZhY2U7CiB9CiAK
K2Jvb2wgUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5Ojppc1BhdXNlZChQbGF5YmFja1Nlc3Np
b25Db250ZXh0SWRlbnRpZmllciBpZGVudGlmaWVyKSBjb25zdAoreworICAgIGF1dG8gaXRlcmF0
b3IgPSBtX2NvbnRleHRNYXAuZmluZChpZGVudGlmaWVyKTsKKyAgICBpZiAoaXRlcmF0b3IgPT0g
bV9jb250ZXh0TWFwLmVuZCgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBhdXRvJiBt
b2RlbCA9ICpzdGQ6OmdldDwwPihpdGVyYXRvci0+dmFsdWUpOworICAgIHJldHVybiAhbW9kZWwu
aXNQbGF5aW5nKCkgJiYgIW1vZGVsLmlzU3RhbGxlZCgpOworfQorCiB9IC8vIG5hbWVzcGFjZSBX
ZWJLaXQKIAogI2VuZGlmIC8vIFBMQVRGT1JNKElPU19GQU1JTFkpIHx8IChQTEFURk9STShNQUMp
ICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaCBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5o
CmluZGV4IGM3ZTBhMGFkMTg1ODcyZjU1ZjhlNGViNTQ3ZTdkMDIxZjkyYzg2ZGYuLjRkN2QyYjlk
MjdmYTUwY2U2NDE1MjNmMmFjNjUxMGYwZDFiMDUwYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5o
CkBAIC0yMDUsNyArMjA1LDYgQEAgcHJpdmF0ZToKICAgICBXZWJQYWdlUHJveHkqIG1fcGFnZTsK
ICAgICBSZWY8UGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5PiBtX3BsYXliYWNrU2Vzc2lvbk1h
bmFnZXJQcm94eTsKICAgICBIYXNoTWFwPFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVy
LCBNb2RlbEludGVyZmFjZVR1cGxlPiBtX2NvbnRleHRNYXA7Ci0gICAgUGxheWJhY2tTZXNzaW9u
Q29udGV4dElkZW50aWZpZXIgbV9jb250cm9sc01hbmFnZXJDb250ZXh0SWQ7CiAgICAgSGFzaE1h
cDxQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciwgaW50PiBtX2NsaWVudENvdW50czsK
ICAgICBWZWN0b3I8Q29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPj4gbV9jbG9zZUNvbXBsZXRpb25I
YW5kbGVyczsKICAgICBXZWFrSGFzaFNldDxWaWRlb0luUGljdHVyZUluUGljdHVyZURpZENoYW5n
ZU9ic2VydmVyPiBtX3BpcENoYW5nZU9ic2VydmVyczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbSBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbQpp
bmRleCAzOWEwZGVlNzg0OWJkMGMyZmQ1OTc1NjAxMmIzYjA1YjljNTczYzhkLi5lYWIxMzc0MjM2
NjU2ODY0MDExYjgxZWU1YTFmYWNjNzQ0NDhmOGExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0KKysrIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1t
CkBAIC04MTIsNyArODEyLDcgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmRp
ZEV4aXRGdWxsc2NyZWVuKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGkKICAgICAgICAgcmV0
dXJuOwogICAgIH0KICNlbmRpZgotICAgIG1fcGFnZS0+ZGlkRXhpdEZ1bGxzY3JlZW4oKTsKKyAg
ICBtX3BhZ2UtPmRpZEV4aXRGdWxsc2NyZWVuKGNvbnRleHRJZCk7CiAgICAgY2FsbENsb3NlQ29t
cGxldGlvbkhhbmRsZXJzKCk7CiB9CiAKQEAgLTgyOCw3ICs4MjgsNyBAQCB2b2lkIFZpZGVvRnVs
bHNjcmVlbk1hbmFnZXJQcm94eTo6ZGlkRW50ZXJGdWxsc2NyZWVuKFBsYXliYWNrU2Vzc2lvbkNv
bnRleHRJZGVudAogICAgIGlmIChlbnN1cmVJbnRlcmZhY2UoY29udGV4dElkKS5jaGFuZ2luZ1N0
YW5kYnlPbmx5KCkpCiAgICAgICAgIHJldHVybjsKICNlbmRpZgotICAgIG1fcGFnZS0+ZGlkRW50
ZXJGdWxsc2NyZWVuKCk7CisgICAgbV9wYWdlLT5kaWRFbnRlckZ1bGxzY3JlZW4oY29udGV4dElk
KTsKIH0KIAogdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmRpZENsZWFudXBGdWxs
c2NyZWVuKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyIGNvbnRleHRJZCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlBhZ2VQcm94eUNvY29hLm1t
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW0KaW5k
ZXggYjBkZDE5YThmZTI4NGY0OGNlMDdlMmRhNjA0NjEyMDc3NjE5YTBjMy4uNmE5NThhOGUxMDc3
MTgxZjk4MGNlYWY4OTVhMGFmMmE3MzAyYjlmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQ29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQ29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW0KQEAgLTQ2MSw2ICs0NjEsNDAgQEAg
dm9pZCBXZWJQYWdlUHJveHk6OnJlbW92ZU1lZGlhVXNhZ2VNYW5hZ2VyU2Vzc2lvbihXZWJDb3Jl
OjpNZWRpYVNlc3Npb25JZGVudGlmaWUKIH0KICNlbmRpZgogCisjaWYgRU5BQkxFKFZJREVPX1BS
RVNFTlRBVElPTl9NT0RFKQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkQ2hhbmdlUGxheWJhY2tS
YXRlKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyIGlkZW50aWZpZXIpCit7CisgICAg
aWYgKG1fY3VycmVudEZ1bGxzY3JlZW5WaWRlb1Nlc3Npb25JZGVudGlmaWVyID09IGlkZW50aWZp
ZXIpCisgICAgICAgIHVwZGF0ZUZ1bGxzY3JlZW5WaWRlb0V4dHJhY3Rpb24oKTsKK30KKwordm9p
ZCBXZWJQYWdlUHJveHk6OmRpZENoYW5nZUN1cnJlbnRUaW1lKFBsYXliYWNrU2Vzc2lvbkNvbnRl
eHRJZGVudGlmaWVyIGlkZW50aWZpZXIpCit7CisgICAgaWYgKG1fY3VycmVudEZ1bGxzY3JlZW5W
aWRlb1Nlc3Npb25JZGVudGlmaWVyID09IGlkZW50aWZpZXIpCisgICAgICAgIHVwZGF0ZUZ1bGxz
Y3JlZW5WaWRlb0V4dHJhY3Rpb24oKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OnVwZGF0ZUZ1
bGxzY3JlZW5WaWRlb0V4dHJhY3Rpb24oKQoreworICAgIGlmIChtX2N1cnJlbnRGdWxsc2NyZWVu
VmlkZW9TZXNzaW9uSWRlbnRpZmllciAmJiBtX3BsYXliYWNrU2Vzc2lvbk1hbmFnZXIgJiYgbV9w
bGF5YmFja1Nlc3Npb25NYW5hZ2VyLT5pc1BhdXNlZCgqbV9jdXJyZW50RnVsbHNjcmVlblZpZGVv
U2Vzc2lvbklkZW50aWZpZXIpKSB7CisgICAgICAgIG1fZnVsbHNjcmVlblZpZGVvRXh0cmFjdGlv
blRpbWVyLnN0YXJ0T25lU2hvdCgyNTBfbXMpOworICAgICAgICByZXR1cm47CisgICAgfQorCisg
ICAgbV9mdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uVGltZXIuc3RvcCgpOworfQorCit2b2lkIFdl
YlBhZ2VQcm94eTo6ZnVsbHNjcmVlblZpZGVvRXh0cmFjdGlvblRpbWVyRmlyZWQoKQoreworICAg
IGlmICghbV9jdXJyZW50RnVsbHNjcmVlblZpZGVvU2Vzc2lvbklkZW50aWZpZXIpCisgICAgICAg
IHJldHVybjsKKworICAgIC8vIEZJWE1FOiBBZGQgbG9naWMgdG8gcGVyZm9ybSB2aWRlbyBmcmFt
ZSBleHRyYWN0aW9uLgorfQorCisjZW5kaWYgLy8gRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9N
T0RFKQorCiAjaWYgSEFWRShRVUlDS0xPT0tfVEhVTUJOQUlMSU5HKQogCiBzdGF0aWMgUmVmUHRy
PFdlYktpdDo6U2hhcmVhYmxlQml0bWFwPiBjb252ZXJ0UGxhdGZvcm1JbWFnZVRvQml0bWFwKENv
Y29hSW1hZ2UgKmltYWdlLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBmaXR0aW5nU2l6ZSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IGU0OTkzNWMzMjVmNjlm
MzQzNDQwY2FhMGFkZDdiZmZlMWMwMDUyODIuLmY1MDE4ZTVhYWJiNzNlYmRmZjJmMjg3Y2YyNzgz
OGNhYTMwODQ2Y2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcApA
QCAtNTE2LDYgKzUxNiw5IEBAIFdlYlBhZ2VQcm94eTo6V2ViUGFnZVByb3h5KFBhZ2VDbGllbnQm
IHBhZ2VDbGllbnQsIFdlYlByb2Nlc3NQcm94eSYgcHJvY2VzcywgUmVmCiAgICAgLCBtX2xpbWl0
c05hdmlnYXRpb25zVG9BcHBCb3VuZERvbWFpbnMobV9jb25maWd1cmF0aW9uLT5saW1pdHNOYXZp
Z2F0aW9uc1RvQXBwQm91bmREb21haW5zKCkpCiAjZW5kaWYKICAgICAsIG1fbm90aWZpY2F0aW9u
TWFuYWdlck1lc3NhZ2VIYW5kbGVyKCp0aGlzKQorI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJ
T05fTU9ERSkKKyAgICAsIG1fZnVsbHNjcmVlblZpZGVvRXh0cmFjdGlvblRpbWVyKFJ1bkxvb3A6
Om1haW4oKSwgdGhpcywgJldlYlBhZ2VQcm94eTo6ZnVsbHNjcmVlblZpZGVvRXh0cmFjdGlvblRp
bWVyRmlyZWQpCisjZW5kaWYKIHsKICAgICBXRUJQQUdFUFJPWFlfUkVMRUFTRV9MT0coTG9hZGlu
ZywgImNvbnN0cnVjdG9yOiIpOwogCkBAIC01OTY1LDE0ICs1OTY4LDI2IEBAIHZvaWQgV2ViUGFn
ZVByb3h5OjpmdWxsc2NyZWVuTWF5UmV0dXJuVG9JbmxpbmUoKQogICAgIG1fdWlDbGllbnQtPmZ1
bGxzY3JlZW5NYXlSZXR1cm5Ub0lubGluZSh0aGlzKTsKIH0KIAotdm9pZCBXZWJQYWdlUHJveHk6
OmRpZEVudGVyRnVsbHNjcmVlbigpCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkRW50ZXJGdWxsc2Ny
ZWVuKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAg
bV91aUNsaWVudC0+ZGlkRW50ZXJGdWxsc2NyZWVuKHRoaXMpOworCisjaWYgRU5BQkxFKFZJREVP
X1BSRVNFTlRBVElPTl9NT0RFKQorICAgIG1fY3VycmVudEZ1bGxzY3JlZW5WaWRlb1Nlc3Npb25J
ZGVudGlmaWVyID0gaWRlbnRpZmllcjsKKyAgICB1cGRhdGVGdWxsc2NyZWVuVmlkZW9FeHRyYWN0
aW9uKCk7CisjZW5kaWYKIH0KIAotdm9pZCBXZWJQYWdlUHJveHk6OmRpZEV4aXRGdWxsc2NyZWVu
KCkKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRFeGl0RnVsbHNjcmVlbihQbGF5YmFja1Nlc3Npb25D
b250ZXh0SWRlbnRpZmllciBpZGVudGlmaWVyKQogewogICAgIG1fdWlDbGllbnQtPmRpZEV4aXRG
dWxsc2NyZWVuKHRoaXMpOworCisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQor
ICAgIGlmIChtX2N1cnJlbnRGdWxsc2NyZWVuVmlkZW9TZXNzaW9uSWRlbnRpZmllciA9PSBpZGVu
dGlmaWVyKSB7CisgICAgICAgIG1fY3VycmVudEZ1bGxzY3JlZW5WaWRlb1Nlc3Npb25JZGVudGlm
aWVyID0gc3RkOjpudWxsb3B0OworICAgICAgICB1cGRhdGVGdWxsc2NyZWVuVmlkZW9FeHRyYWN0
aW9uKCk7CisgICAgfQorI2VuZGlmCiB9CiAKIHZvaWQgV2ViUGFnZVByb3h5OjpjbG9zZVBhZ2Uo
KQpAQCAtODEwMSw2ICs4MTE2LDExIEBAIHZvaWQgV2ViUGFnZVByb3h5OjpyZXNldFN0YXRlQWZ0
ZXJQcm9jZXNzRXhpdGVkKFByb2Nlc3NUZXJtaW5hdGlvblJlYXNvbiB0ZXJtaW5hCiAKICAgICB1
cGRhdGVQbGF5aW5nTWVkaWFEaWRDaGFuZ2UoTWVkaWFQcm9kdWNlcjo6SXNOb3RQbGF5aW5nKTsK
IAorI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKyAgICBtX2Z1bGxzY3JlZW5W
aWRlb0V4dHJhY3Rpb25UaW1lci5zdG9wKCk7CisgICAgbV9jdXJyZW50RnVsbHNjcmVlblZpZGVv
U2Vzc2lvbklkZW50aWZpZXIgPSBzdGQ6Om51bGxvcHQ7CisjZW5kaWYKKwogICAgIC8vIEZJWE1F
OiA8cmRhcjovL3Byb2JsZW0vMzg2NzY2MDQ+IEluIGNhc2Ugb2YgcHJvY2VzcyBzd2FwcywgdGhl
IG9sZCBwcm9jZXNzIHNob3VsZCBncmFjZWZ1bGx5IHN1c3BlbmQgaW5zdGVhZCBvZiB0ZXJtaW5h
dGluZy4KICAgICBtX3Byb2Nlc3MtPnByb2Nlc3NUZXJtaW5hdGVkKCk7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCmluZGV4IDUwN2VhYzhhOTY1MmFlMGZlMGExM2IyMjZk
ZWZmODgyZGVjMzhmMzEuLmIyNDE4OTE4NjgyMjdiNzBjMzc4ZTk0NTQ3NTdmYzY2YTgyNDQ3M2Ig
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCkBAIC0xNTcsNiArMTU3LDcg
QEAKICNlbmRpZgogCiAjaWYgUExBVEZPUk0oQ09DT0EpCisjaW5jbHVkZSAiUGxheWJhY2tTZXNz
aW9uQ29udGV4dElkZW50aWZpZXIuaCIKICNpbmNsdWRlICJSZW1vdGVMYXllclRyZWVOb2RlLmgi
CiAjaW5jbHVkZSA8d3RmL1dlYWtPYmpDUHRyLmg+CiAjZW5kaWYKQEAgLTUxOCw4ICs1MTksOCBA
QCBwdWJsaWM6CiAKICAgICB2b2lkIGV4aXRGdWxsc2NyZWVuSW1tZWRpYXRlbHkoKTsKICAgICB2
b2lkIGZ1bGxzY3JlZW5NYXlSZXR1cm5Ub0lubGluZSgpOwotICAgIHZvaWQgZGlkRW50ZXJGdWxs
c2NyZWVuKCk7Ci0gICAgdm9pZCBkaWRFeGl0RnVsbHNjcmVlbigpOworICAgIHZvaWQgZGlkRW50
ZXJGdWxsc2NyZWVuKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyKTsKKyAgICB2b2lk
IGRpZEV4aXRGdWxsc2NyZWVuKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyKTsKIAog
ICAgIHZvaWQgc3VzcGVuZChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKICAgICB2
b2lkIHJlc3VtZShDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKQEAgLTE5MzUsNiAr
MTkzNiwxMSBAQCBwdWJsaWM6CiAgICAgdm9pZCByZW1vdmVNZWRpYVVzYWdlTWFuYWdlclNlc3Np
b24oV2ViQ29yZTo6TWVkaWFTZXNzaW9uSWRlbnRpZmllcik7CiAjZW5kaWYKIAorI2lmIEVOQUJM
RShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKyAgICB2b2lkIGRpZENoYW5nZVBsYXliYWNrUmF0
ZShQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllcik7CisgICAgdm9pZCBkaWRDaGFuZ2VD
dXJyZW50VGltZShQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllcik7CisjZW5kaWYKKwog
ICAgIHZvaWQgc2V0SGFzRXhlY3V0ZWRBcHBCb3VuZEJlaGF2aW9yQmVmb3JlTmF2aWdhdGlvbigp
IHsgbV9oYXNFeGVjdXRlZEFwcEJvdW5kQmVoYXZpb3JCZWZvcmVOYXZpZ2F0aW9uID0gdHJ1ZTsg
fQogCiAgICAgV2ViUG9wdXBNZW51UHJveHkqIGFjdGl2ZVBvcHVwTWVudSgpIGNvbnN0IHsgcmV0
dXJuIG1fYWN0aXZlUG9wdXBNZW51LmdldCgpOyB9CkBAIC0yNTk4LDYgKzI2MDQsMTEgQEAgcHJp
dmF0ZToKICAgICB2b2lkIHNldFVwSGlnaGxpZ2h0c09ic2VydmVyKCk7CiAjZW5kaWYKIAorI2lm
IEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKyAgICB2b2lkIHVwZGF0ZUZ1bGxzY3Jl
ZW5WaWRlb0V4dHJhY3Rpb24oKTsKKyAgICB2b2lkIGZ1bGxzY3JlZW5WaWRlb0V4dHJhY3Rpb25U
aW1lckZpcmVkKCk7CisjZW5kaWYKKwogICAgIGNvbnN0IElkZW50aWZpZXIgbV9pZGVudGlmaWVy
OwogICAgIFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIG1fd2ViUGFnZUlEOwogICAgIFdlYWtQdHI8
UGFnZUNsaWVudD4gbV9wYWdlQ2xpZW50OwpAQCAtMzE3Myw2ICszMTg0LDExIEBAIHByaXZhdGU6
CiAgICAgc3RkOjpvcHRpb25hbDxTY3JvbGxpbmdBY2NlbGVyYXRpb25DdXJ2ZT4gbV9zY3JvbGxp
bmdBY2NlbGVyYXRpb25DdXJ2ZTsKICAgICBzdGQ6Om9wdGlvbmFsPFNjcm9sbGluZ0FjY2VsZXJh
dGlvbkN1cnZlPiBtX2xhc3RTZW50U2Nyb2xsaW5nQWNjZWxlcmF0aW9uQ3VydmU7CiAjZW5kaWYK
KworI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKyAgICBzdGQ6Om9wdGlvbmFs
PFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyPiBtX2N1cnJlbnRGdWxsc2NyZWVuVmlk
ZW9TZXNzaW9uSWRlbnRpZmllcjsKKyAgICBSdW5Mb29wOjpUaW1lcjxXZWJQYWdlUHJveHk+IG1f
ZnVsbHNjcmVlblZpZGVvRXh0cmFjdGlvblRpbWVyOworI2VuZGlmCiB9OwogCiAjaWZkZWYgX19P
QkpDX18KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2ogYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CmluZGV4IDc3ZTBhOWZkNDZjNmNiM2JlODBjY2U3YjhmZjFiNDE5ZjNlM2MyNjUuLmQ4YzVmMzQx
YTlkYzgyNzdmZTc0YWIwODFjNGJmNWUzMTA4Zjg2NzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9X
ZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtODY0LDcgKzg2NCw2IEBACiAJCTQx
RkFGNUY1MUUzQzA2NDkwMDFBRTY3OCAvKiBXZWJSVENSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDFGQUY1RjQxRTNDMDY0MTAwMUFFNjc4
IC8qIFdlYlJUQ1Jlc29sdmVyLmggKi87IH07CiAJCTQxRkFGNUY4MUUzQzEwMjEwMDFBRTY3OCAv
KiBMaWJXZWJSVENSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNDFGQUY1RjYxRTNDMEI0NzAwMUFFNjc4IC8qIExpYldlYlJUQ1Jlc29sdmVy
LmggKi87IH07CiAJCTQ0NTk5ODQyMjI4MzNFODcwMEU2MTM3MyAvKiBTeW50aGV0aWNFZGl0aW5n
Q29tbWFuZFR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDQ0NTk5ODQxMjI4MzNFNjAwMEU2MTM3MyAvKiBTeW50aGV0aWNFZGl0aW5nQ29tbWFuZFR5
cGUuaCAqLzsgfTsKLQkJNDQ2REM2NEMyNEEyRDhFNTAwNjFGMzkwIC8qIFBsYXliYWNrU2Vzc2lv
bkNvbnRleHRJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA0NDZEQzY0QjI0QTJEOEFEMDA2MUYzOTAgLyogUGxheWJhY2tTZXNzaW9uQ29u
dGV4dElkZW50aWZpZXIuaCAqLzsgfTsKIAkJNDQ3NkVGMDkyNUJGQzhCNzAwNEEwNTg3IC8qIF9X
S0FwcEhpZ2hsaWdodERlbGVnYXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA0NDc2RUYwODI1QkZDOEI3MDA0QTA1ODcgLyogX1dLQXBwSGlnaGxpZ2h0
RGVsZWdhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwogCQk0NDgyNzM0NzI0NTI4RjYwMDBBOTU0OTMgLyogQ29jb2FJbWFnZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDQ4MjczNDYyNDUyOEY2MDAwQTk1
NDkzIC8qIENvY29hSW1hZ2UuaCAqLzsgfTsKIAkJNDQ4QUMyNEUyNjcxMzVBNzAwQjI4OTIxIC8q
IFN5bmFwc2VTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDQ0OEFDMjREMjY3MTM1QTYwMEIyODkyMSAvKiBTeW5hcHNlU1BJLmggKi87IH07CkBAIC0y
MDMxLDYgKzIwMzAsNyBAQAogCQlGNDk3NEU3NjI2NUVDQkJDMDBCNDlCOEMgLyogV0tSZXZlYWxJ
dGVtUHJlc2VudGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBGNDQ2RURFRjI2NUVCMkIwMDAzMURBOEYgLyogV0tSZXZlYWxJdGVtUHJlc2VudGVyLmgg
Ki87IH07CiAJCUY0OTc1Q0YyMjYyNEI4MEEwMDNDNjI2RSAvKiBXS1F1aWNrTG9va1ByZXZpZXdD
b250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBGNDk3NUNGMTI2MjRCODBBMDAzQzYyNkUgLyogV0tRdWlja0xvb2tQcmV2aWV3Q29udHJvbGxl
ci5oICovOyB9OwogCQlGNEJBMzNGMjI1NzU3RTg5MDAwQTNDRTggLyogV0tJbWFnZUFuYWx5c2lz
R2VzdHVyZVJlY29nbml6ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEY0QkEzM0YwMjU3NTdFODkwMDBBM0NFOCAvKiBXS0ltYWdlQW5hbHlzaXNHZXN0
dXJlUmVjb2duaXplci5oICovOyB9OworCQlGNEJFMEQ3NzI3QUFFMUNCMDA1RjAzMjMgLyogUGxh
eWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0QkUwRDc2MjdBQUUxQ0IwMDVGMDMyMyAvKiBQbGF5YmFj
a1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5oICovOyB9OwogCQlGNENCMDlFNTIyNUQ1QTA5MDA4
OTE0ODcgLyogV2Vic2l0ZU1lZGlhU291cmNlUG9saWN5LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNENCMDlFNDIyNUQ1QTAzMDA4OTE0ODcgLyogV2Vi
c2l0ZU1lZGlhU291cmNlUG9saWN5LmggKi87IH07CiAJCUY0Q0YxRTlEMjVFNDBEQ0MwMDBGOUQ3
MyAvKiBHZXN0dXJlUmVjb2duaXplckNvbnNpc3RlbmN5RW5mb3JjZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0Q0YxRTlCMjVFNDBEQ0MwMDBGOUQ3
MyAvKiBHZXN0dXJlUmVjb2duaXplckNvbnNpc3RlbmN5RW5mb3JjZXIuaCAqLzsgfTsKIAkJRjRE
NUY1MUQyMDYwODdBMTAwMzhCQkE4IC8qIFdLVGV4dElucHV0TGlzdFZpZXdDb250cm9sbGVyLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNEQ1RjUxOTIw
NjA4N0EwMDAzOEJCQTggLyogV0tUZXh0SW5wdXRMaXN0Vmlld0NvbnRyb2xsZXIuaCAqLzsgfTsK
QEAgLTQyMDYsNyArNDIwNiw2IEBACiAJCTQxRkZEMkRDMjc1QTZBOTQwMDUwMUJCRiAvKiBTZXJ2
aWNlV29ya2VyRG93bmxvYWRUYXNrLm1lc3NhZ2VzLmluICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNlcnZpY2VXb3JrZXJEb3du
bG9hZFRhc2subWVzc2FnZXMuaW47IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ0NTBB
RUJGMURDM0ZBRTUwMDk5NDNGMiAvKiBTaGFyZWRNZW1vcnlDb2NvYS5jcHAgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTaGFyZWRNZW1vcnlDb2NvYS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ0NTk5ODQxMjI4MzNFNjAwMEU2MTM3MyAvKiBTeW50aGV0
aWNFZGl0aW5nQ29tbWFuZFR5cGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3ludGhldGljRWRpdGluZ0Nv
bW1hbmRUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTQ0NkRDNjRCMjRBMkQ4
QUQwMDYxRjM5MCAvKiBQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmll
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0NDc2RUYwODI1QkZDOEI3MDA0QTA1
ODcgLyogX1dLQXBwSGlnaGxpZ2h0RGVsZWdhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gX1dLQXBwSGlnaGxpZ2h0RGVsZWdhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNDQ4MjczNDYyNDUyOEY2MDAwQTk1NDkzIC8qIENvY29hSW1hZ2UuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29jb2FJbWFnZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk0NDhBQzI0RDI2NzEzNUE2MDBCMjg5MjEgLyogU3luYXBzZVNQSS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTeW5hcHNlU1BJLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC02NTE4LDYgKzY1MTcsNyBAQAogCQlGNEIzNzhEMDIxRERCQkFC
MDA5NUEzNzggLyogV2ViVW5kb1N0ZXBJRC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJVbmRvU3RlcElE
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUY0QkEzM0YwMjU3NTdFODkwMDBBM0NF
OCAvKiBXS0ltYWdlQW5hbHlzaXNHZXN0dXJlUmVjb2duaXplci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBX
S0ltYWdlQW5hbHlzaXNHZXN0dXJlUmVjb2duaXplci5oOyBwYXRoID0gaW9zL1dLSW1hZ2VBbmFs
eXNpc0dlc3R1cmVSZWNvZ25pemVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUY0
QkEzM0YxMjU3NTdFODkwMDBBM0NFOCAvKiBXS0ltYWdlQW5hbHlzaXNHZXN0dXJlUmVjb2duaXpl
ci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9IFdLSW1hZ2VBbmFseXNpc0dlc3R1cmVSZWNvZ25p
emVyLm1tOyBwYXRoID0gaW9zL1dLSW1hZ2VBbmFseXNpc0dlc3R1cmVSZWNvZ25pemVyLm1tOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGNEJFMEQ3NjI3QUFFMUNCMDA1RjAzMjMgLyog
UGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRjRDQjA5RTQyMjVENUEwMzAwODkxNDg3IC8qIFdlYnNpdGVN
ZWRpYVNvdXJjZVBvbGljeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJzaXRlTWVkaWFTb3VyY2VQb2xp
Y3kuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRjRDRjFFOUIyNUU0MERDQzAwMEY5
RDczIC8qIEdlc3R1cmVSZWNvZ25pemVyQ29uc2lzdGVuY3lFbmZvcmNlci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IG5hbWUgPSBHZXN0dXJlUmVjb2duaXplckNvbnNpc3RlbmN5RW5mb3Jj
ZXIuaDsgcGF0aCA9IGlvcy9HZXN0dXJlUmVjb2duaXplckNvbnNpc3RlbmN5RW5mb3JjZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRjRDRjFFOUMyNUU0MERDQzAwMEY5RDczIC8q
IEdlc3R1cmVSZWNvZ25pemVyQ29uc2lzdGVuY3lFbmZvcmNlci5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9IEdlc3R1cmVSZWNvZ25pemVyQ29uc2lzdGVuY3lFbmZv
cmNlci5tbTsgcGF0aCA9IGlvcy9HZXN0dXJlUmVjb2duaXplckNvbnNpc3RlbmN5RW5mb3JjZXIu
bW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC05MDQ3LDYgKzkwNDcsNyBAQAogCQkJ
CTJEMTA4NzYyMUQyQzY0MUIwMEI4NUY4MiAvKiBMb2FkUGFyYW1ldGVyc0NvY29hLm1tICovLAog
CQkJCTJENDQwQjgzMjVFRjIzNUUwMEE5OEQ4NyAvKiBQREZLaXRTb2Z0TGluay5oICovLAogCQkJ
CTJENDQwQjgyMjVFRjIzNUUwMEE5OEQ4NyAvKiBQREZLaXRTb2Z0TGluay5tbSAqLywKKwkJCQlG
NEJFMEQ3NjI3QUFFMUNCMDA1RjAzMjMgLyogUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZp
ZXIuaCAqLywKIAkJCQk3QUI0RUEzRjIyNzc3QzQ2MDA4NUJCQUEgLyogU2FuZGJveEV4dGVuc2lv
bkNvY29hLm1tICovLAogCQkJCTdBQjRFQTQxMjI3NzdGQzcwMDg1QkJBQSAvKiBTYW5kYm94SW5p
dGlhbGlhdGlvblBhcmFtZXRlcnNDb2NvYS5tbSAqLywKIAkJCQlFMTlCREE4ODE5MzY4NkE0MDBC
OTdGNTcgLyogU2FuZGJveFV0aWxpdGllcy5oICovLApAQCAtMTAyNTUsNyArMTAyNTYsNiBAQAog
CQkJCUMxQTE1MkQ2MjRFNUEyOUEwMDk3OEM4QiAvKiBIYW5kbGVYUENFbmRwb2ludE1lc3NhZ2Vz
Lm1tICovLAogCQkJCUMxNEQzN0ZDMjRBQ0RGNDUwMDdGRjAxNCAvKiBMYXVuY2hTZXJ2aWNlc0Rh
dGFiYXNlTWFuYWdlci5oICovLAogCQkJCUMxNEQzN0ZEMjRBQ0UwODYwMDdGRjAxNCAvKiBMYXVu
Y2hTZXJ2aWNlc0RhdGFiYXNlTWFuYWdlci5tbSAqLywKLQkJCQk0NDZEQzY0QjI0QTJEOEFEMDA2
MUYzOTAgLyogUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaCAqLywKIAkJCQlDREEy
OUExOTFDQkRCRjQxMDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9uTWFuYWdlci5oICovLAogCQkJ
CUNEQTI5QTFDMUNCREJGNUIwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyLm1lc3Nh
Z2VzLmluICovLAogCQkJCUNEQTI5QTE4MUNCREJGNDEwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Np
b25NYW5hZ2VyLm1tICovLApAQCAtMTMyMjEsNyArMTMyMjEsNyBAQAogCQkJCTJEODcxMDE3MTgy
ODQxNUQwMDE4RkEwMSAvKiBQbGF0Zm9ybUNBTGF5ZXJSZW1vdGVDdXN0b20uaCBpbiBIZWFkZXJz
ICovLAogCQkJCTJEODk0OUYxMTgyMDQ0RjYwMEU4OThBQSAvKiBQbGF0Zm9ybUNBTGF5ZXJSZW1v
dGVUaWxlZEJhY2tpbmcuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDQzQzQUJCMTI3Qjk1REMwMDMx
N0YxNiAvKiBQbGF0Zm9ybVBvcHVwTWVudURhdGEuaCBpbiBIZWFkZXJzICovLAotCQkJCTQ0NkRD
NjRDMjRBMkQ4RTUwMDYxRjM5MCAvKiBQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5o
IGluIEhlYWRlcnMgKi8sCisJCQkJRjRCRTBENzcyN0FBRTFDQjAwNUYwMzIzIC8qIFBsYXliYWNr
U2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlDREEyOUExQjFD
QkRCRjQxMDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9uTWFuYWdlci5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJQ0RBMjlBMjkxQ0JFQjY3QTAwOTAxQ0NGIC8qIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJN
ZXNzYWdlcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0RBMjlBMjAxQ0JFQjVGQjAwOTAxQ0NGIC8q
IFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eS5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvUGxheWJhY2tTZXNzaW9uQ29udGV4dElk
ZW50aWZpZXIuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9QbGF5YmFja1Nlc3Np
b25Db250ZXh0SWRlbnRpZmllci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzNzdm
MTdjNTMwYmI1ZWIyMTI3OWQ2YThmYTc5NjVlYjVjMjc1ZjhjLi4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2Nv
YS9QbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5oCisrKyAvZGV2L251bGwKQEAgLTEs
MzUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6
Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
Ci0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNwcmFnbWEgb25jZQotCi0jaW5jbHVkZSA8d3RmL09i
amVjdElkZW50aWZpZXIuaD4KLQotbmFtZXNwYWNlIFdlYktpdCB7Ci0KLWVudW0gUGxheWJhY2tT
ZXNzaW9uQ29udGV4dElkZW50aWZpZXJUeXBlIHsgfTsKLXVzaW5nIFBsYXliYWNrU2Vzc2lvbkNv
bnRleHRJZGVudGlmaWVyID0gT2JqZWN0SWRlbnRpZmllcjxQbGF5YmFja1Nlc3Npb25Db250ZXh0
SWRlbnRpZmllclR5cGU+OwotCi19Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>450813</attachid>
            <date>2022-02-03 13:42:46 -0800</date>
            <delta_ts>2022-02-03 14:58:08 -0800</delta_ts>
            <desc>Fix Win/GTK/WPE builds</desc>
            <filename>bug-236083-20220203134245.patch</filename>
            <type>text/plain</type>
            <size>24926</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg5MDU3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDE1NzcyNTBhNmE5NTZmOGQx
OWQyNzczNDFiZWNjNDBlZjEwZGU4N2IuLjViZDJlMDNlNGY3NzIzNWQyYjc3OTMxNTMxZjdlMjdl
M2MyZDFkYTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTQgQEAKKzIwMjItMDItMDMgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHBsdW1iaW5nIHRv
IGluZm9ybSBXZWJQYWdlUHJveHkgd2hlbiB2aWRlb3MgcGxheSwgcGF1c2UsIHNlZWssIGFuZCBl
bnRlciBvciBleGl0IGZ1bGxzY3JlZW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIzNjA4MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEFkZCBzZXZlcmFsIG1ldGhvZHMgb24gV2ViUGFnZVByb3h5IHdoaWNo
IGFyZSBjYWxsZWQgZnJvbSBib3RoIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eSBhcyB3ZWxs
IGFzCisgICAgICAgIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eTsgaW4gZnV0dXJlIHBhdGNo
ZXMsIHRoaXMgd2lsbCBiZSB1c2VkIHRvIGRldGVjdCB3aGVuIGEgZnVsbHNjcmVlbiB2aWRlbyBo
YXMgYmVlbgorICAgICAgICBwYXVzZWQgZm9yIGF0IGxlYXN0IDI1MCBtcywgYW5kIGNhbGwgb3V0
IHRvIHRoZSBwYWdlIGNsaWVudCB0byBwZXJmb3JtICJ2aWRlbyBmcmFtZSBleHRyYWN0aW9uIi4K
KworICAgICAgICBObyBjaGFuZ2UgaW4gYmVoYXZpb3IgKHlldCkuCisKKyAgICAgICAgKiBTaGFy
ZWQvQ29jb2EvUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaDogUmVuYW1lZCBmcm9t
IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9QbGF5YmFja1Nlc3Npb25Db250ZXh0SWRl
bnRpZmllci5oLgorCisgICAgICAgIE1vdmUgdGhpcyBmcm9tIFNvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9jb2NvYSB0byBTaGFyZWQvQ29jb2EuIFRoaXMgZW51bSB0eXBlIGlzIHBhc3NlZCBhcm91
bmQgaW4gbWVkaWEgY29kZSBpbgorICAgICAgICBib3RoIHRoZSBVSSBhbmQgd2ViIHByb2Nlc3Nl
cywgc28gaXQgc2hvdWxkIGJlIGluIHRoZSBTaGFyZWQgZm9sZGVyIGluc3RlYWQgb2YgdGhlIFdl
YlByb2Nlc3MgZm9sZGVyLgorCisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vz
c2lvbk1hbmFnZXJQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9QbGF5YmFja1Nl
c3Npb25NYW5hZ2VyUHJveHkubW06CisgICAgICAgIChXZWJLaXQ6OlBsYXliYWNrU2Vzc2lvbk1h
bmFnZXJQcm94eTo6Y3VycmVudFRpbWVDaGFuZ2VkKToKKyAgICAgICAgKFdlYktpdDo6UGxheWJh
Y2tTZXNzaW9uTWFuYWdlclByb3h5OjpyYXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJLaXQ6OlBs
YXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eTo6aXNQYXVzZWQgY29uc3QpOgorCisgICAgICAgIEFk
ZCBhIGhlbHBlciBtZXRob2QgdG8gcmV0dXJuIHdoZXRoZXIgb3Igbm90IHRoZSBzZXNzaW9uIGZv
ciBhIGdpdmVuIFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyIGlzIHBhdXNlZAorICAg
ICAgICAodGhhdCBpcywgbmVpdGhlciBwbGF5aW5nIG5vciBzdGFsbGVkKS4KKworICAgICAgICAq
IFVJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaDoKKworICAgICAg
ICBEcml2ZS1ieSBmaXg6IHJlbW92ZSBhbiB1bnVzZWQgbWVtYmVyIHZhcmlhYmxlLgorCisgICAg
ICAgICogVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbToKKyAg
ICAgICAgKFdlYktpdDo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpkaWRFeGl0RnVsbHNj
cmVlbik6CisgICAgICAgIChXZWJLaXQ6OlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6ZGlk
RW50ZXJGdWxsc2NyZWVuKToKKworICAgICAgICBBZGQgYW5vdGhlciB2ZXJzaW9uIG9mIHRoZXNl
IG1ldGhvZHMgdGhhdCBpbmNsdWRlcyB0aGUgc2Vzc2lvbiBjb250ZXh0IElEIGFzIGFuIGFyZ3Vt
ZW50LgorCisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1dlYlBhZ2VQcm94eUNvY29hLm1tOgor
ICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmRpZENoYW5nZVBsYXliYWNrUmF0ZSk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZGlkQ2hhbmdlQ3VycmVudFRpbWUpOgorICAg
ICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OnVwZGF0ZUZ1bGxzY3JlZW5WaWRlb0V4dHJhY3Rp
b24pOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmZ1bGxzY3JlZW5WaWRlb0V4dHJh
Y3Rpb25UaW1lckZpcmVkKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoK
KyAgICAgICAgKFdlYktpdDo6bV9mdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uVGltZXIpOgorICAg
ICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmRpZEVudGVyRnVsbHNjcmVlbik6CisgICAgICAg
IChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZGlkRXhpdEZ1bGxzY3JlZW4pOgorICAgICAgICAoV2Vi
S2l0OjpXZWJQYWdlUHJveHk6OnJlc2V0U3RhdGVBZnRlclByb2Nlc3NFeGl0ZWQpOgorICAgICAg
ICAoV2ViS2l0OjptX25vdGlmaWNhdGlvbk1hbmFnZXJNZXNzYWdlSGFuZGxlcik6IERlbGV0ZWQu
CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oOgorICAgICAgICAqIFdlYktpdC54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorCiAyMDIyLTAyLTAzICBQZXIgQXJuZSBWb2xsYW4g
IDxwdm9sbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXVtXUF0gQWRkIGZpbGUtaW9jdGwg
dGVsZW1ldHJ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9QbGF5YmFj
a1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2Ev
UGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zNzdmMTdjNTMw
YmI1ZWIyMTI3OWQ2YThmYTc5NjVlYjVjMjc1ZjhjCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYktpdC9TaGFyZWQvQ29jb2EvUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaApA
QCAtMCwwICsxLDM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDx3
dGYvT2JqZWN0SWRlbnRpZmllci5oPgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworZW51bSBQbGF5
YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllclR5cGUgeyB9OwordXNpbmcgUGxheWJhY2tTZXNz
aW9uQ29udGV4dElkZW50aWZpZXIgPSBPYmplY3RJZGVudGlmaWVyPFBsYXliYWNrU2Vzc2lvbkNv
bnRleHRJZGVudGlmaWVyVHlwZT47CisKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eS5oIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQ29jb2EvUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5LmgKaW5kZXggNTI3
YzY3NzNiMzY0YTJjZmRiZDRmMmYwYWJkODAxM2I0MGNmZDQzYi4uNWIwYjMxOTRjMGM1NWUzMjZi
YzlmYTE3NjQ0MGE4ODRmNWNhOTUwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQ29jb2EvUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5LmgKKysrIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQ29jb2EvUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5LmgKQEAgLTkyLDYg
KzkyLDcgQEAgcHVibGljOgogICAgIGJvb2wgd2lyZWxlc3NWaWRlb1BsYXliYWNrRGlzYWJsZWQo
KSBjb25zdCBmaW5hbCB7IHJldHVybiBtX3dpcmVsZXNzVmlkZW9QbGF5YmFja0Rpc2FibGVkOyB9
CiAKIHByaXZhdGU6CisgICAgZnJpZW5kIGNsYXNzIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94
eTsKICAgICBmcmllbmQgY2xhc3MgVmlkZW9GdWxsc2NyZWVuTW9kZWxDb250ZXh0OwogCiAgICAg
UGxheWJhY2tTZXNzaW9uTW9kZWxDb250ZXh0KFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eSYg
bWFuYWdlciwgUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgY29udGV4dElkKQpAQCAt
MTg3LDYgKzE4OCw4IEBAIHB1YmxpYzoKICAgICBQbGF0Zm9ybVBsYXliYWNrU2Vzc2lvbkludGVy
ZmFjZSogY29udHJvbHNNYW5hZ2VySW50ZXJmYWNlKCk7CiAgICAgdm9pZCByZXF1ZXN0Q29udHJv
bGxlZEVsZW1lbnRJRCgpOwogCisgICAgYm9vbCBpc1BhdXNlZChQbGF5YmFja1Nlc3Npb25Db250
ZXh0SWRlbnRpZmllcikgY29uc3Q7CisKICAgICAvLyBGb3IgdGVzdGluZy4KICAgICBib29sIHdp
cmVsZXNzVmlkZW9QbGF5YmFja0Rpc2FibGVkKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eS5tbSBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eS5tbQpp
bmRleCBmZDYwYjhiMTM4ZDVkYjljNmQ5NDk5YWI0YjMyYzY1MzRiZGVkNDI3Li43ZmUzYjBmNmJh
MzliN2ZkZjEyMDVjZjY5ZmM0NzkzMjQwMzdlMzE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Db2NvYS9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHkubW0KKysrIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5Lm1t
CkBAIC00MTEsNiArNDExLDExIEBAIHZvaWQgUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5Ojpj
bGVhclBsYXliYWNrQ29udHJvbHNNYW5hZ2VyKCkKIHZvaWQgUGxheWJhY2tTZXNzaW9uTWFuYWdl
clByb3h5OjpjdXJyZW50VGltZUNoYW5nZWQoUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZp
ZXIgY29udGV4dElkLCBkb3VibGUgY3VycmVudFRpbWUsIGRvdWJsZSBob3N0VGltZSkKIHsKICAg
ICBlbnN1cmVNb2RlbChjb250ZXh0SWQpLmN1cnJlbnRUaW1lQ2hhbmdlZChjdXJyZW50VGltZSk7
CisKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisgICAgaWYgKG1fcGFnZSkK
KyAgICAgICAgbV9wYWdlLT5kaWRDaGFuZ2VDdXJyZW50VGltZShjb250ZXh0SWQpOworI2VuZGlm
CiB9CiAKIHZvaWQgUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5OjpidWZmZXJlZFRpbWVDaGFu
Z2VkKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyIGNvbnRleHRJZCwgZG91YmxlIGJ1
ZmZlcmVkVGltZSkKQEAgLTQ5MSw2ICs0OTYsMTEgQEAgdm9pZCBQbGF5YmFja1Nlc3Npb25NYW5h
Z2VyUHJveHk6OnBsYXliYWNrU3RhcnRlZFRpbWVDaGFuZ2VkKFBsYXliYWNrU2Vzc2lvbkNvbnQK
IHZvaWQgUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5OjpyYXRlQ2hhbmdlZChQbGF5YmFja1Nl
c3Npb25Db250ZXh0SWRlbnRpZmllciBjb250ZXh0SWQsIE9wdGlvblNldDxXZWJDb3JlOjpQbGF5
YmFja1Nlc3Npb25Nb2RlbDo6UGxheWJhY2tTdGF0ZT4gcGxheWJhY2tTdGF0ZSwgZG91YmxlIHJh
dGUsIGRvdWJsZSBkZWZhdWx0UGxheWJhY2tSYXRlKQogewogICAgIGVuc3VyZU1vZGVsKGNvbnRl
eHRJZCkucmF0ZUNoYW5nZWQocGxheWJhY2tTdGF0ZSwgcmF0ZSwgZGVmYXVsdFBsYXliYWNrUmF0
ZSk7CisKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisgICAgaWYgKG1fcGFn
ZSkKKyAgICAgICAgbV9wYWdlLT5kaWRDaGFuZ2VQbGF5YmFja1JhdGUoY29udGV4dElkKTsKKyNl
bmRpZgogfQogCiB2b2lkIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eTo6cGljdHVyZUluUGlj
dHVyZVN1cHBvcnRlZENoYW5nZWQoUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgY29u
dGV4dElkLCBib29sIHN1cHBvcnRlZCkKQEAgLTYzOCw2ICs2NDgsMTYgQEAgUGxhdGZvcm1QbGF5
YmFja1Nlc3Npb25JbnRlcmZhY2UqIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eTo6Y29udHJv
bHNNYW5hZ2VySW4KICAgICByZXR1cm4gJmludGVyZmFjZTsKIH0KIAorYm9vbCBQbGF5YmFja1Nl
c3Npb25NYW5hZ2VyUHJveHk6OmlzUGF1c2VkKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlm
aWVyIGlkZW50aWZpZXIpIGNvbnN0Cit7CisgICAgYXV0byBpdGVyYXRvciA9IG1fY29udGV4dE1h
cC5maW5kKGlkZW50aWZpZXIpOworICAgIGlmIChpdGVyYXRvciA9PSBtX2NvbnRleHRNYXAuZW5k
KCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGF1dG8mIG1vZGVsID0gKnN0ZDo6Z2V0
PDA+KGl0ZXJhdG9yLT52YWx1ZSk7CisgICAgcmV0dXJuICFtb2RlbC5pc1BsYXlpbmcoKSAmJiAh
bW9kZWwuaXNTdGFsbGVkKCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAogCiAjZW5kaWYg
Ly8gUExBVEZPUk0oSU9TX0ZBTUlMWSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVP
X1BSRVNFTlRBVElPTl9NT0RFKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmgKaW5kZXggYzdlMGEwYWQx
ODU4NzJmNTVmOGU0ZWI1NDdlN2QwMjFmOTJjODZkZi4uNGQ3ZDJiOWQyN2ZhNTBjZTY0MTUyM2Yy
YWM2NTEwZjBkMWIwNTBiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29j
b2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmgKQEAgLTIwNSw3ICsyMDUs
NiBAQCBwcml2YXRlOgogICAgIFdlYlBhZ2VQcm94eSogbV9wYWdlOwogICAgIFJlZjxQbGF5YmFj
a1Nlc3Npb25NYW5hZ2VyUHJveHk+IG1fcGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5OwogICAg
IEhhc2hNYXA8UGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIsIE1vZGVsSW50ZXJmYWNl
VHVwbGU+IG1fY29udGV4dE1hcDsKLSAgICBQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmll
ciBtX2NvbnRyb2xzTWFuYWdlckNvbnRleHRJZDsKICAgICBIYXNoTWFwPFBsYXliYWNrU2Vzc2lv
bkNvbnRleHRJZGVudGlmaWVyLCBpbnQ+IG1fY2xpZW50Q291bnRzOwogICAgIFZlY3RvcjxDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKCk+PiBtX2Nsb3NlQ29tcGxldGlvbkhhbmRsZXJzOwogICAgIFdl
YWtIYXNoU2V0PFZpZGVvSW5QaWN0dXJlSW5QaWN0dXJlRGlkQ2hhbmdlT2JzZXJ2ZXI+IG1fcGlw
Q2hhbmdlT2JzZXJ2ZXJzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29j
b2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1tCmluZGV4IDM5YTBkZWU3ODQ5
YmQwYzJmZDU5NzU2MDEyYjNiMDViOWM1NzNjOGQuLmVhYjEzNzQyMzY2NTY4NjQwMTFiODFlZTVh
MWZhY2M3NDQ0OGY4YTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29h
L1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0KQEAgLTgxMiw3ICs4MTIs
NyBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6ZGlkRXhpdEZ1bGxzY3JlZW4o
UGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aQogICAgICAgICByZXR1cm47CiAgICAgfQogI2Vu
ZGlmCi0gICAgbV9wYWdlLT5kaWRFeGl0RnVsbHNjcmVlbigpOworICAgIG1fcGFnZS0+ZGlkRXhp
dEZ1bGxzY3JlZW4oY29udGV4dElkKTsKICAgICBjYWxsQ2xvc2VDb21wbGV0aW9uSGFuZGxlcnMo
KTsKIH0KIApAQCAtODI4LDcgKzgyOCw3IEBAIHZvaWQgVmlkZW9GdWxsc2NyZWVuTWFuYWdlclBy
b3h5OjpkaWRFbnRlckZ1bGxzY3JlZW4oUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50CiAgICAg
aWYgKGVuc3VyZUludGVyZmFjZShjb250ZXh0SWQpLmNoYW5naW5nU3RhbmRieU9ubHkoKSkKICAg
ICAgICAgcmV0dXJuOwogI2VuZGlmCi0gICAgbV9wYWdlLT5kaWRFbnRlckZ1bGxzY3JlZW4oKTsK
KyAgICBtX3BhZ2UtPmRpZEVudGVyRnVsbHNjcmVlbihjb250ZXh0SWQpOwogfQogCiB2b2lkIFZp
ZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6ZGlkQ2xlYW51cEZ1bGxzY3JlZW4oUGxheWJhY2tT
ZXNzaW9uQ29udGV4dElkZW50aWZpZXIgY29udGV4dElkKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Db2NvYS9XZWJQYWdlUHJveHlDb2NvYS5tbQppbmRleCBiMGRkMTlhOGZlMjg0
ZjQ4Y2UwN2UyZGE2MDQ2MTIwNzc2MTlhMGMzLi42YTk1OGE4ZTEwNzcxODFmOTgwY2VhZjg5NWEw
YWYyYTczMDJiOWZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9X
ZWJQYWdlUHJveHlDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9X
ZWJQYWdlUHJveHlDb2NvYS5tbQpAQCAtNDYxLDYgKzQ2MSw0MCBAQCB2b2lkIFdlYlBhZ2VQcm94
eTo6cmVtb3ZlTWVkaWFVc2FnZU1hbmFnZXJTZXNzaW9uKFdlYkNvcmU6Ok1lZGlhU2Vzc2lvbklk
ZW50aWZpZQogfQogI2VuZGlmCiAKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUp
CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRDaGFuZ2VQbGF5YmFja1JhdGUoUGxheWJhY2tTZXNz
aW9uQ29udGV4dElkZW50aWZpZXIgaWRlbnRpZmllcikKK3sKKyAgICBpZiAobV9jdXJyZW50RnVs
bHNjcmVlblZpZGVvU2Vzc2lvbklkZW50aWZpZXIgPT0gaWRlbnRpZmllcikKKyAgICAgICAgdXBk
YXRlRnVsbHNjcmVlblZpZGVvRXh0cmFjdGlvbigpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6
ZGlkQ2hhbmdlQ3VycmVudFRpbWUoUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgaWRl
bnRpZmllcikKK3sKKyAgICBpZiAobV9jdXJyZW50RnVsbHNjcmVlblZpZGVvU2Vzc2lvbklkZW50
aWZpZXIgPT0gaWRlbnRpZmllcikKKyAgICAgICAgdXBkYXRlRnVsbHNjcmVlblZpZGVvRXh0cmFj
dGlvbigpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6dXBkYXRlRnVsbHNjcmVlblZpZGVvRXh0
cmFjdGlvbigpCit7CisgICAgaWYgKG1fY3VycmVudEZ1bGxzY3JlZW5WaWRlb1Nlc3Npb25JZGVu
dGlmaWVyICYmIG1fcGxheWJhY2tTZXNzaW9uTWFuYWdlciAmJiBtX3BsYXliYWNrU2Vzc2lvbk1h
bmFnZXItPmlzUGF1c2VkKCptX2N1cnJlbnRGdWxsc2NyZWVuVmlkZW9TZXNzaW9uSWRlbnRpZmll
cikpIHsKKyAgICAgICAgbV9mdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uVGltZXIuc3RhcnRPbmVT
aG90KDI1MF9tcyk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBtX2Z1bGxzY3JlZW5W
aWRlb0V4dHJhY3Rpb25UaW1lci5zdG9wKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpmdWxs
c2NyZWVuVmlkZW9FeHRyYWN0aW9uVGltZXJGaXJlZCgpCit7CisgICAgaWYgKCFtX2N1cnJlbnRG
dWxsc2NyZWVuVmlkZW9TZXNzaW9uSWRlbnRpZmllcikKKyAgICAgICAgcmV0dXJuOworCisgICAg
Ly8gRklYTUU6IEFkZCBsb2dpYyB0byBwZXJmb3JtIHZpZGVvIGZyYW1lIGV4dHJhY3Rpb24uCit9
CisKKyNlbmRpZiAvLyBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisKICNpZiBIQVZF
KFFVSUNLTE9PS19USFVNQk5BSUxJTkcpCiAKIHN0YXRpYyBSZWZQdHI8V2ViS2l0OjpTaGFyZWFi
bGVCaXRtYXA+IGNvbnZlcnRQbGF0Zm9ybUltYWdlVG9CaXRtYXAoQ29jb2FJbWFnZSAqaW1hZ2Us
IGNvbnN0IFdlYkNvcmU6OkludFNpemUmIGZpdHRpbmdTaXplKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggZTQ5OTM1YzMyNWY2OWYzNDM0NDBjYWEwYWRkN2Jm
ZmUxYzAwNTI4Mi4uYmI0MWMxMTFhMzM1OWUwYTIzM2YzNDRkMmY5ZGU2ZDAxYzI4YTU3MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC01MTYsNiArNTE2LDkg
QEAgV2ViUGFnZVByb3h5OjpXZWJQYWdlUHJveHkoUGFnZUNsaWVudCYgcGFnZUNsaWVudCwgV2Vi
UHJvY2Vzc1Byb3h5JiBwcm9jZXNzLCBSZWYKICAgICAsIG1fbGltaXRzTmF2aWdhdGlvbnNUb0Fw
cEJvdW5kRG9tYWlucyhtX2NvbmZpZ3VyYXRpb24tPmxpbWl0c05hdmlnYXRpb25zVG9BcHBCb3Vu
ZERvbWFpbnMoKSkKICNlbmRpZgogICAgICwgbV9ub3RpZmljYXRpb25NYW5hZ2VyTWVzc2FnZUhh
bmRsZXIoKnRoaXMpCisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQorICAgICwg
bV9mdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uVGltZXIoUnVuTG9vcDo6bWFpbigpLCB0aGlzLCAm
V2ViUGFnZVByb3h5OjpmdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uVGltZXJGaXJlZCkKKyNlbmRp
ZgogewogICAgIFdFQlBBR0VQUk9YWV9SRUxFQVNFX0xPRyhMb2FkaW5nLCAiY29uc3RydWN0b3I6
Iik7CiAKQEAgLTU5NzUsNiArNTk3OCwyOCBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkRXhpdEZ1
bGxzY3JlZW4oKQogICAgIG1fdWlDbGllbnQtPmRpZEV4aXRGdWxsc2NyZWVuKHRoaXMpOwogfQog
CisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQorCit2b2lkIFdlYlBhZ2VQcm94
eTo6ZGlkRW50ZXJGdWxsc2NyZWVuKFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyIGlk
ZW50aWZpZXIpCit7CisgICAgZGlkRW50ZXJGdWxsc2NyZWVuKCk7CisKKyAgICBtX2N1cnJlbnRG
dWxsc2NyZWVuVmlkZW9TZXNzaW9uSWRlbnRpZmllciA9IGlkZW50aWZpZXI7CisgICAgdXBkYXRl
RnVsbHNjcmVlblZpZGVvRXh0cmFjdGlvbigpOworfQorCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlk
RXhpdEZ1bGxzY3JlZW4oUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgaWRlbnRpZmll
cikKK3sKKyAgICBkaWRFeGl0RnVsbHNjcmVlbigpOworCisgICAgaWYgKG1fY3VycmVudEZ1bGxz
Y3JlZW5WaWRlb1Nlc3Npb25JZGVudGlmaWVyID09IGlkZW50aWZpZXIpIHsKKyAgICAgICAgbV9j
dXJyZW50RnVsbHNjcmVlblZpZGVvU2Vzc2lvbklkZW50aWZpZXIgPSBzdGQ6Om51bGxvcHQ7Cisg
ICAgICAgIHVwZGF0ZUZ1bGxzY3JlZW5WaWRlb0V4dHJhY3Rpb24oKTsKKyAgICB9Cit9CisKKyNl
bmRpZiAvLyBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisKIHZvaWQgV2ViUGFnZVBy
b3h5OjpjbG9zZVBhZ2UoKQogewogICAgIGlmIChpc0Nsb3NlZCgpKQpAQCAtODEwMSw2ICs4MTI2
LDExIEBAIHZvaWQgV2ViUGFnZVByb3h5OjpyZXNldFN0YXRlQWZ0ZXJQcm9jZXNzRXhpdGVkKFBy
b2Nlc3NUZXJtaW5hdGlvblJlYXNvbiB0ZXJtaW5hCiAKICAgICB1cGRhdGVQbGF5aW5nTWVkaWFE
aWRDaGFuZ2UoTWVkaWFQcm9kdWNlcjo6SXNOb3RQbGF5aW5nKTsKIAorI2lmIEVOQUJMRShWSURF
T19QUkVTRU5UQVRJT05fTU9ERSkKKyAgICBtX2Z1bGxzY3JlZW5WaWRlb0V4dHJhY3Rpb25UaW1l
ci5zdG9wKCk7CisgICAgbV9jdXJyZW50RnVsbHNjcmVlblZpZGVvU2Vzc2lvbklkZW50aWZpZXIg
PSBzdGQ6Om51bGxvcHQ7CisjZW5kaWYKKwogICAgIC8vIEZJWE1FOiA8cmRhcjovL3Byb2JsZW0v
Mzg2NzY2MDQ+IEluIGNhc2Ugb2YgcHJvY2VzcyBzd2FwcywgdGhlIG9sZCBwcm9jZXNzIHNob3Vs
ZCBncmFjZWZ1bGx5IHN1c3BlbmQgaW5zdGVhZCBvZiB0ZXJtaW5hdGluZy4KICAgICBtX3Byb2Nl
c3MtPnByb2Nlc3NUZXJtaW5hdGVkKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5oCmluZGV4IDUwN2VhYzhhOTY1MmFlMGZlMGExM2IyMjZkZWZmODgyZGVjMzhmMzEuLmE0
NDdjNzBjMDg0MDYxNDkwYzFiNDk1ZWZiMTg3ZjE2NWExZWNjYjIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYlBhZ2VQcm94eS5oCkBAIC0xNTcsNiArMTU3LDcgQEAKICNlbmRpZgogCiAjaWYg
UExBVEZPUk0oQ09DT0EpCisjaW5jbHVkZSAiUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZp
ZXIuaCIKICNpbmNsdWRlICJSZW1vdGVMYXllclRyZWVOb2RlLmgiCiAjaW5jbHVkZSA8d3RmL1dl
YWtPYmpDUHRyLmg+CiAjZW5kaWYKQEAgLTUxOCw2ICs1MTksNyBAQCBwdWJsaWM6CiAKICAgICB2
b2lkIGV4aXRGdWxsc2NyZWVuSW1tZWRpYXRlbHkoKTsKICAgICB2b2lkIGZ1bGxzY3JlZW5NYXlS
ZXR1cm5Ub0lubGluZSgpOworCiAgICAgdm9pZCBkaWRFbnRlckZ1bGxzY3JlZW4oKTsKICAgICB2
b2lkIGRpZEV4aXRGdWxsc2NyZWVuKCk7CiAKQEAgLTE5MzUsNiArMTkzNywxMyBAQCBwdWJsaWM6
CiAgICAgdm9pZCByZW1vdmVNZWRpYVVzYWdlTWFuYWdlclNlc3Npb24oV2ViQ29yZTo6TWVkaWFT
ZXNzaW9uSWRlbnRpZmllcik7CiAjZW5kaWYKIAorI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJ
T05fTU9ERSkKKyAgICB2b2lkIGRpZEVudGVyRnVsbHNjcmVlbihQbGF5YmFja1Nlc3Npb25Db250
ZXh0SWRlbnRpZmllcik7CisgICAgdm9pZCBkaWRFeGl0RnVsbHNjcmVlbihQbGF5YmFja1Nlc3Np
b25Db250ZXh0SWRlbnRpZmllcik7CisgICAgdm9pZCBkaWRDaGFuZ2VQbGF5YmFja1JhdGUoUGxh
eWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIpOworICAgIHZvaWQgZGlkQ2hhbmdlQ3VycmVu
dFRpbWUoUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIpOworI2VuZGlmCisKICAgICB2
b2lkIHNldEhhc0V4ZWN1dGVkQXBwQm91bmRCZWhhdmlvckJlZm9yZU5hdmlnYXRpb24oKSB7IG1f
aGFzRXhlY3V0ZWRBcHBCb3VuZEJlaGF2aW9yQmVmb3JlTmF2aWdhdGlvbiA9IHRydWU7IH0KIAog
ICAgIFdlYlBvcHVwTWVudVByb3h5KiBhY3RpdmVQb3B1cE1lbnUoKSBjb25zdCB7IHJldHVybiBt
X2FjdGl2ZVBvcHVwTWVudS5nZXQoKTsgfQpAQCAtMjU5OCw2ICsyNjA3LDExIEBAIHByaXZhdGU6
CiAgICAgdm9pZCBzZXRVcEhpZ2hsaWdodHNPYnNlcnZlcigpOwogI2VuZGlmCiAKKyNpZiBFTkFC
TEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisgICAgdm9pZCB1cGRhdGVGdWxsc2NyZWVuVmlk
ZW9FeHRyYWN0aW9uKCk7CisgICAgdm9pZCBmdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uVGltZXJG
aXJlZCgpOworI2VuZGlmCisKICAgICBjb25zdCBJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKICAg
ICBXZWJDb3JlOjpQYWdlSWRlbnRpZmllciBtX3dlYlBhZ2VJRDsKICAgICBXZWFrUHRyPFBhZ2VD
bGllbnQ+IG1fcGFnZUNsaWVudDsKQEAgLTMxNzMsNiArMzE4NywxMSBAQCBwcml2YXRlOgogICAg
IHN0ZDo6b3B0aW9uYWw8U2Nyb2xsaW5nQWNjZWxlcmF0aW9uQ3VydmU+IG1fc2Nyb2xsaW5nQWNj
ZWxlcmF0aW9uQ3VydmU7CiAgICAgc3RkOjpvcHRpb25hbDxTY3JvbGxpbmdBY2NlbGVyYXRpb25D
dXJ2ZT4gbV9sYXN0U2VudFNjcm9sbGluZ0FjY2VsZXJhdGlvbkN1cnZlOwogI2VuZGlmCisKKyNp
ZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisgICAgc3RkOjpvcHRpb25hbDxQbGF5
YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllcj4gbV9jdXJyZW50RnVsbHNjcmVlblZpZGVvU2Vz
c2lvbklkZW50aWZpZXI7CisgICAgUnVuTG9vcDo6VGltZXI8V2ViUGFnZVByb3h5PiBtX2Z1bGxz
Y3JlZW5WaWRlb0V4dHJhY3Rpb25UaW1lcjsKKyNlbmRpZgogfTsKIAogI2lmZGVmIF9fT0JKQ19f
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRl
eCA3N2UwYTlmZDQ2YzZjYjNiZTgwY2NlN2I4ZmYxYjQxOWYzZTNjMjY1Li5kOGM1ZjM0MWE5ZGM4
Mjc3ZmU3NGFiMDgxYzRiZjVlMzEwOGY4NjcyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dl
YktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTg2NCw3ICs4NjQsNiBAQAogCQk0MUZBRjVG
NTFFM0MwNjQ5MDAxQUU2NzggLyogV2ViUlRDUmVzb2x2ZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxRkFGNUY0MUUzQzA2NDEwMDFBRTY3OCAvKiBX
ZWJSVENSZXNvbHZlci5oICovOyB9OwogCQk0MUZBRjVGODFFM0MxMDIxMDAxQUU2NzggLyogTGli
V2ViUlRDUmVzb2x2ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDQxRkFGNUY2MUUzQzBCNDcwMDFBRTY3OCAvKiBMaWJXZWJSVENSZXNvbHZlci5oICov
OyB9OwogCQk0NDU5OTg0MjIyODMzRTg3MDBFNjEzNzMgLyogU3ludGhldGljRWRpdGluZ0NvbW1h
bmRUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
NDU5OTg0MTIyODMzRTYwMDBFNjEzNzMgLyogU3ludGhldGljRWRpdGluZ0NvbW1hbmRUeXBlLmgg
Ki87IH07Ci0JCTQ0NkRDNjRDMjRBMkQ4RTUwMDYxRjM5MCAvKiBQbGF5YmFja1Nlc3Npb25Db250
ZXh0SWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNDQ2REM2NEIyNEEyRDhBRDAwNjFGMzkwIC8qIFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJ
ZGVudGlmaWVyLmggKi87IH07CiAJCTQ0NzZFRjA5MjVCRkM4QjcwMDRBMDU4NyAvKiBfV0tBcHBI
aWdobGlnaHREZWxlZ2F0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNDQ3NkVGMDgyNUJGQzhCNzAwNEEwNTg3IC8qIF9XS0FwcEhpZ2hsaWdodERlbGVn
YXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
NDQ4MjczNDcyNDUyOEY2MDAwQTk1NDkzIC8qIENvY29hSW1hZ2UuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0ODI3MzQ2MjQ1MjhGNjAwMEE5NTQ5MyAv
KiBDb2NvYUltYWdlLmggKi87IH07CiAJCTQ0OEFDMjRFMjY3MTM1QTcwMEIyODkyMSAvKiBTeW5h
cHNlU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
NDhBQzI0RDI2NzEzNUE2MDBCMjg5MjEgLyogU3luYXBzZVNQSS5oICovOyB9OwpAQCAtMjAzMSw2
ICsyMDMwLDcgQEAKIAkJRjQ5NzRFNzYyNjVFQ0JCQzAwQjQ5QjhDIC8qIFdLUmV2ZWFsSXRlbVBy
ZXNlbnRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RjQ0NkVERUYyNjVFQjJCMDAwMzFEQThGIC8qIFdLUmV2ZWFsSXRlbVByZXNlbnRlci5oICovOyB9
OwogCQlGNDk3NUNGMjI2MjRCODBBMDAzQzYyNkUgLyogV0tRdWlja0xvb2tQcmV2aWV3Q29udHJv
bGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjQ5
NzVDRjEyNjI0QjgwQTAwM0M2MjZFIC8qIFdLUXVpY2tMb29rUHJldmlld0NvbnRyb2xsZXIuaCAq
LzsgfTsKIAkJRjRCQTMzRjIyNTc1N0U4OTAwMEEzQ0U4IC8qIFdLSW1hZ2VBbmFseXNpc0dlc3R1
cmVSZWNvZ25pemVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBGNEJBMzNGMDI1NzU3RTg5MDAwQTNDRTggLyogV0tJbWFnZUFuYWx5c2lzR2VzdHVyZVJl
Y29nbml6ZXIuaCAqLzsgfTsKKwkJRjRCRTBENzcyN0FBRTFDQjAwNUYwMzIzIC8qIFBsYXliYWNr
U2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBGNEJFMEQ3NjI3QUFFMUNCMDA1RjAzMjMgLyogUGxheWJhY2tTZXNz
aW9uQ29udGV4dElkZW50aWZpZXIuaCAqLzsgfTsKIAkJRjRDQjA5RTUyMjVENUEwOTAwODkxNDg3
IC8qIFdlYnNpdGVNZWRpYVNvdXJjZVBvbGljeS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRjRDQjA5RTQyMjVENUEwMzAwODkxNDg3IC8qIFdlYnNpdGVN
ZWRpYVNvdXJjZVBvbGljeS5oICovOyB9OwogCQlGNENGMUU5RDI1RTQwRENDMDAwRjlENzMgLyog
R2VzdHVyZVJlY29nbml6ZXJDb25zaXN0ZW5jeUVuZm9yY2VyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNENGMUU5QjI1RTQwRENDMDAwRjlENzMgLyog
R2VzdHVyZVJlY29nbml6ZXJDb25zaXN0ZW5jeUVuZm9yY2VyLmggKi87IH07CiAJCUY0RDVGNTFE
MjA2MDg3QTEwMDM4QkJBOCAvKiBXS1RleHRJbnB1dExpc3RWaWV3Q29udHJvbGxlci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRjRENUY1MTkyMDYwODdB
MDAwMzhCQkE4IC8qIFdLVGV4dElucHV0TGlzdFZpZXdDb250cm9sbGVyLmggKi87IH07CkBAIC00
MjA2LDcgKzQyMDYsNiBAQAogCQk0MUZGRDJEQzI3NUE2QTk0MDA1MDFCQkYgLyogU2VydmljZVdv
cmtlckRvd25sb2FkVGFzay5tZXNzYWdlcy5pbiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTZXJ2aWNlV29ya2VyRG93bmxvYWRU
YXNrLm1lc3NhZ2VzLmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0NDUwQUVCRjFE
QzNGQUU1MDA5OTQzRjIgLyogU2hhcmVkTWVtb3J5Q29jb2EuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gU2hhcmVkTWVtb3J5Q29jb2EuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk0NDU5OTg0MTIyODMzRTYwMDBFNjEzNzMgLyogU3ludGhldGljRWRp
dGluZ0NvbW1hbmRUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN5bnRoZXRpY0VkaXRpbmdDb21tYW5k
VHlwZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk0NDZEQzY0QjI0QTJEOEFEMDA2
MUYzOTAgLyogUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDQ3NkVGMDgyNUJGQzhCNzAwNEEwNTg3IC8q
IF9XS0FwcEhpZ2hsaWdodERlbGVnYXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IF9XS0FwcEhpZ2hsaWdodERlbGVnYXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTQ0ODI3MzQ2MjQ1MjhGNjAwMEE5NTQ5MyAvKiBDb2NvYUltYWdlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENvY29hSW1hZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJNDQ4QUMyNEQyNjcxMzVBNjAwQjI4OTIxIC8qIFN5bmFwc2VTUEkuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3luYXBzZVNQSS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwpAQCAtNjUxOCw2ICs2NTE3LDcgQEAKIAkJRjRCMzc4RDAyMUREQkJBQjAwOTVB
Mzc4IC8qIFdlYlVuZG9TdGVwSUQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViVW5kb1N0ZXBJRC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNEJBMzNGMDI1NzU3RTg5MDAwQTNDRTggLyog
V0tJbWFnZUFuYWx5c2lzR2VzdHVyZVJlY29nbml6ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gV0tJbWFn
ZUFuYWx5c2lzR2VzdHVyZVJlY29nbml6ZXIuaDsgcGF0aCA9IGlvcy9XS0ltYWdlQW5hbHlzaXNH
ZXN0dXJlUmVjb2duaXplci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGNEJBMzNG
MTI1NzU3RTg5MDAwQTNDRTggLyogV0tJbWFnZUFuYWx5c2lzR2VzdHVyZVJlY29nbml6ZXIubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5vYmpjcHA7IG5hbWUgPSBXS0ltYWdlQW5hbHlzaXNHZXN0dXJlUmVjb2duaXplci5t
bTsgcGF0aCA9IGlvcy9XS0ltYWdlQW5hbHlzaXNHZXN0dXJlUmVjb2duaXplci5tbTsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRjRCRTBENzYyN0FBRTFDQjAwNUYwMzIzIC8qIFBsYXli
YWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUY0Q0IwOUU0MjI1RDVBMDMwMDg5MTQ4NyAvKiBXZWJzaXRlTWVkaWFT
b3VyY2VQb2xpY3kuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2Vic2l0ZU1lZGlhU291cmNlUG9saWN5Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUY0Q0YxRTlCMjVFNDBEQ0MwMDBGOUQ3MyAv
KiBHZXN0dXJlUmVjb2duaXplckNvbnNpc3RlbmN5RW5mb3JjZXIuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBuYW1lID0gR2VzdHVyZVJlY29nbml6ZXJDb25zaXN0ZW5jeUVuZm9yY2VyLmg7
IHBhdGggPSBpb3MvR2VzdHVyZVJlY29nbml6ZXJDb25zaXN0ZW5jeUVuZm9yY2VyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUY0Q0YxRTlDMjVFNDBEQ0MwMDBGOUQ3MyAvKiBHZXN0
dXJlUmVjb2duaXplckNvbnNpc3RlbmN5RW5mb3JjZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5vYmpjcHA7IG5hbWUgPSBHZXN0dXJlUmVjb2duaXplckNvbnNpc3RlbmN5RW5mb3JjZXIu
bW07IHBhdGggPSBpb3MvR2VzdHVyZVJlY29nbml6ZXJDb25zaXN0ZW5jeUVuZm9yY2VyLm1tOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtOTA0Nyw2ICs5MDQ3LDcgQEAKIAkJCQkyRDEw
ODc2MjFEMkM2NDFCMDBCODVGODIgLyogTG9hZFBhcmFtZXRlcnNDb2NvYS5tbSAqLywKIAkJCQky
RDQ0MEI4MzI1RUYyMzVFMDBBOThEODcgLyogUERGS2l0U29mdExpbmsuaCAqLywKIAkJCQkyRDQ0
MEI4MjI1RUYyMzVFMDBBOThEODcgLyogUERGS2l0U29mdExpbmsubW0gKi8sCisJCQkJRjRCRTBE
NzYyN0FBRTFDQjAwNUYwMzIzIC8qIFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLmgg
Ki8sCiAJCQkJN0FCNEVBM0YyMjc3N0M0NjAwODVCQkFBIC8qIFNhbmRib3hFeHRlbnNpb25Db2Nv
YS5tbSAqLywKIAkJCQk3QUI0RUE0MTIyNzc3RkM3MDA4NUJCQUEgLyogU2FuZGJveEluaXRpYWxp
YXRpb25QYXJhbWV0ZXJzQ29jb2EubW0gKi8sCiAJCQkJRTE5QkRBODgxOTM2ODZBNDAwQjk3RjU3
IC8qIFNhbmRib3hVdGlsaXRpZXMuaCAqLywKQEAgLTEwMjU1LDcgKzEwMjU2LDYgQEAKIAkJCQlD
MUExNTJENjI0RTVBMjlBMDA5NzhDOEIgLyogSGFuZGxlWFBDRW5kcG9pbnRNZXNzYWdlcy5tbSAq
LywKIAkJCQlDMTREMzdGQzI0QUNERjQ1MDA3RkYwMTQgLyogTGF1bmNoU2VydmljZXNEYXRhYmFz
ZU1hbmFnZXIuaCAqLywKIAkJCQlDMTREMzdGRDI0QUNFMDg2MDA3RkYwMTQgLyogTGF1bmNoU2Vy
dmljZXNEYXRhYmFzZU1hbmFnZXIubW0gKi8sCi0JCQkJNDQ2REM2NEIyNEEyRDhBRDAwNjFGMzkw
IC8qIFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLmggKi8sCiAJCQkJQ0RBMjlBMTkx
Q0JEQkY0MTAwOTAxQ0NGIC8qIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXIuaCAqLywKIAkJCQlDREEy
OUExQzFDQkRCRjVCMDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9uTWFuYWdlci5tZXNzYWdlcy5p
biAqLywKIAkJCQlDREEyOUExODFDQkRCRjQxMDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9uTWFu
YWdlci5tbSAqLywKQEAgLTEzMjIxLDcgKzEzMjIxLDcgQEAKIAkJCQkyRDg3MTAxNzE4Mjg0MTVE
MDAxOEZBMDEgLyogUGxhdGZvcm1DQUxheWVyUmVtb3RlQ3VzdG9tLmggaW4gSGVhZGVycyAqLywK
IAkJCQkyRDg5NDlGMTE4MjA0NEY2MDBFODk4QUEgLyogUGxhdGZvcm1DQUxheWVyUmVtb3RlVGls
ZWRCYWNraW5nLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0M0M0FCQjEyN0I5NURDMDAzMTdGMTYg
LyogUGxhdGZvcm1Qb3B1cE1lbnVEYXRhLmggaW4gSGVhZGVycyAqLywKLQkJCQk0NDZEQzY0QzI0
QTJEOEU1MDA2MUYzOTAgLyogUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaCBpbiBI
ZWFkZXJzICovLAorCQkJCUY0QkUwRDc3MjdBQUUxQ0IwMDVGMDMyMyAvKiBQbGF5YmFja1Nlc3Np
b25Db250ZXh0SWRlbnRpZmllci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0RBMjlBMUIxQ0JEQkY0
MTAwOTAxQ0NGIC8qIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXIuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUNEQTI5QTI5MUNCRUI2N0EwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyTWVzc2Fn
ZXMuaCBpbiBIZWFkZXJzICovLAogCQkJCUNEQTI5QTIwMUNCRUI1RkIwMDkwMUNDRiAvKiBQbGF5
YmFja1Nlc3Npb25NYW5hZ2VyUHJveHkuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1BsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlm
aWVyLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvUGxheWJhY2tTZXNzaW9uQ29u
dGV4dElkZW50aWZpZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzc3ZjE3YzUz
MGJiNWViMjEyNzlkNmE4ZmE3OTY1ZWI1YzI3NWY4Yy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvUGxh
eWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDM1ICsw
LDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0g
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAot
ICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0g
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICog
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KLSAqLwotCi0jcHJhZ21hIG9uY2UKLQotI2luY2x1ZGUgPHd0Zi9PYmplY3RJ
ZGVudGlmaWVyLmg+Ci0KLW5hbWVzcGFjZSBXZWJLaXQgewotCi1lbnVtIFBsYXliYWNrU2Vzc2lv
bkNvbnRleHRJZGVudGlmaWVyVHlwZSB7IH07Ci11c2luZyBQbGF5YmFja1Nlc3Npb25Db250ZXh0
SWRlbnRpZmllciA9IE9iamVjdElkZW50aWZpZXI8UGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50
aWZpZXJUeXBlPjsKLQotfQo=
</data>
<flag name="review"
          id="477329"
          type_id="1"
          status="+"
          setter="eric.carlson"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>450835</attachid>
            <date>2022-02-03 16:18:43 -0800</date>
            <delta_ts>2022-02-03 17:08:08 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-236083-20220203161842.patch</filename>
            <type>text/plain</type>
            <size>24925</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg5MDU3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDE1NzcyNTBhNmE5NTZmOGQx
OWQyNzczNDFiZWNjNDBlZjEwZGU4N2IuLjQxOTk2Mjc1MzlkY2RkZDczZDQ0NTYzYjFmY2M4N2Y3
NjYwMTNhOWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTQgQEAKKzIwMjItMDItMDMgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHBsdW1iaW5nIHRv
IGluZm9ybSBXZWJQYWdlUHJveHkgd2hlbiB2aWRlb3MgcGxheSwgcGF1c2UsIHNlZWssIGFuZCBl
bnRlciBvciBleGl0IGZ1bGxzY3JlZW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIzNjA4MworCisgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgQ2FybHNv
bi4KKworICAgICAgICBBZGQgc2V2ZXJhbCBtZXRob2RzIG9uIFdlYlBhZ2VQcm94eSB3aGljaCBh
cmUgY2FsbGVkIGZyb20gYm90aCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkgYXMgd2VsbCBh
cworICAgICAgICBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHk7IGluIGZ1dHVyZSBwYXRjaGVz
LCB0aGVzZSB3aWxsIGJlIHVzZWQgdG8gZGV0ZWN0IHdoZW4gYSBmdWxsc2NyZWVuIHZpZGVvIGhh
cyBiZWVuCisgICAgICAgIHBhdXNlZCBmb3IgYXQgbGVhc3QgMjUwIG1zLCBhbmQgY2FsbCBvdXQg
dG8gdGhlIHBhZ2UgY2xpZW50IHRvIHBlcmZvcm0gInZpZGVvIGZyYW1lIGV4dHJhY3Rpb24iLgor
CisgICAgICAgIE5vIGNoYW5nZSBpbiBiZWhhdmlvciAoeWV0KS4KKworICAgICAgICAqIFNoYXJl
ZC9Db2NvYS9QbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5oOiBSZW5hbWVkIGZyb20g
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1BsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVu
dGlmaWVyLmguCisKKyAgICAgICAgTW92ZSB0aGlzIGZyb20gU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL2NvY29hIHRvIFNoYXJlZC9Db2NvYS4gVGhpcyBlbnVtIHR5cGUgaXMgcGFzc2VkIGFyb3Vu
ZCBpbiBtZWRpYSBjb2RlIGluCisgICAgICAgIGJvdGggdGhlIFVJIGFuZCB3ZWIgcHJvY2Vzc2Vz
LCBzbyBpdCBzaG91bGQgYmUgaW4gdGhlIFNoYXJlZCBmb2xkZXIgaW5zdGVhZCBvZiB0aGUgV2Vi
UHJvY2VzcyBmb2xkZXIuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvUGxheWJhY2tTZXNz
aW9uTWFuYWdlclByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vz
c2lvbk1hbmFnZXJQcm94eS5tbToKKyAgICAgICAgKFdlYktpdDo6UGxheWJhY2tTZXNzaW9uTWFu
YWdlclByb3h5OjpjdXJyZW50VGltZUNoYW5nZWQpOgorICAgICAgICAoV2ViS2l0OjpQbGF5YmFj
a1Nlc3Npb25NYW5hZ2VyUHJveHk6OnJhdGVDaGFuZ2VkKToKKyAgICAgICAgKFdlYktpdDo6UGxh
eWJhY2tTZXNzaW9uTWFuYWdlclByb3h5Ojppc1BhdXNlZCBjb25zdCk6CisKKyAgICAgICAgQWRk
IGEgaGVscGVyIG1ldGhvZCB0byByZXR1cm4gd2hldGhlciBvciBub3QgdGhlIHNlc3Npb24gZm9y
IGEgZ2l2ZW4gUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgaXMgcGF1c2VkCisgICAg
ICAgICh0aGF0IGlzLCBuZWl0aGVyIHBsYXlpbmcgbm9yIHN0YWxsZWQpLgorCisgICAgICAgICog
VUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oOgorCisgICAgICAg
IERyaXZlLWJ5IGZpeDogcmVtb3ZlIGFuIHVudXNlZCBtZW1iZXIgdmFyaWFibGUuCisKKyAgICAg
ICAgKiBVSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1tOgorICAg
ICAgICAoV2ViS2l0OjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmRpZEV4aXRGdWxsc2Ny
ZWVuKToKKyAgICAgICAgKFdlYktpdDo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpkaWRF
bnRlckZ1bGxzY3JlZW4pOgorCisgICAgICAgIEFkZCBhbm90aGVyIHZlcnNpb24gb2YgdGhlc2Ug
bWV0aG9kcyB0aGF0IGluY2x1ZGVzIHRoZSBzZXNzaW9uIGNvbnRleHQgSUQgYXMgYW4gYXJndW1l
bnQuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW06Cisg
ICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZGlkQ2hhbmdlUGxheWJhY2tSYXRlKToKKyAg
ICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpkaWRDaGFuZ2VDdXJyZW50VGltZSk6CisgICAg
ICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6dXBkYXRlRnVsbHNjcmVlblZpZGVvRXh0cmFjdGlv
bik6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZnVsbHNjcmVlblZpZGVvRXh0cmFj
dGlvblRpbWVyRmlyZWQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgor
ICAgICAgICAoV2ViS2l0OjptX2Z1bGxzY3JlZW5WaWRlb0V4dHJhY3Rpb25UaW1lcik6CisgICAg
ICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZGlkRW50ZXJGdWxsc2NyZWVuKToKKyAgICAgICAg
KFdlYktpdDo6V2ViUGFnZVByb3h5OjpkaWRFeGl0RnVsbHNjcmVlbik6CisgICAgICAgIChXZWJL
aXQ6OldlYlBhZ2VQcm94eTo6cmVzZXRTdGF0ZUFmdGVyUHJvY2Vzc0V4aXRlZCk6CisgICAgICAg
IChXZWJLaXQ6Om1fbm90aWZpY2F0aW9uTWFuYWdlck1lc3NhZ2VIYW5kbGVyKTogRGVsZXRlZC4K
KyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lmg6CisgICAgICAgICogV2ViS2l0Lnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisKIDIwMjItMDItMDMgIFBlciBBcm5lIFZvbGxhbiAg
PHB2b2xsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtpT1NdW1dQXSBBZGQgZmlsZS1pb2N0bCB0
ZWxlbWV0cnkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL1BsYXliYWNr
U2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9Q
bGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM3N2YxN2M1MzBi
YjVlYjIxMjc5ZDZhOGZhNzk2NWViNWMyNzVmOGMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9Db2NvYS9QbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5oCkBA
IC0wLDAgKzEsMzUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0
Zi9PYmplY3RJZGVudGlmaWVyLmg+CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitlbnVtIFBsYXli
YWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyVHlwZSB7IH07Cit1c2luZyBQbGF5YmFja1Nlc3Np
b25Db250ZXh0SWRlbnRpZmllciA9IE9iamVjdElkZW50aWZpZXI8UGxheWJhY2tTZXNzaW9uQ29u
dGV4dElkZW50aWZpZXJUeXBlPjsKKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQ29jb2EvUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5LmggYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Db2NvYS9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHkuaAppbmRleCA1Mjdj
Njc3M2IzNjRhMmNmZGJkNGYyZjBhYmQ4MDEzYjQwY2ZkNDNiLi41YjBiMzE5NGMwYzU1ZTMyNmJj
OWZhMTc2NDQwYTg4NGY1Y2E5NTBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9Db2NvYS9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Db2NvYS9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHkuaApAQCAtOTIsNiAr
OTIsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCB3aXJlbGVzc1ZpZGVvUGxheWJhY2tEaXNhYmxlZCgp
IGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fd2lyZWxlc3NWaWRlb1BsYXliYWNrRGlzYWJsZWQ7IH0K
IAogcHJpdmF0ZToKKyAgICBmcmllbmQgY2xhc3MgUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5
OwogICAgIGZyaWVuZCBjbGFzcyBWaWRlb0Z1bGxzY3JlZW5Nb2RlbENvbnRleHQ7CiAKICAgICBQ
bGF5YmFja1Nlc3Npb25Nb2RlbENvbnRleHQoUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5JiBt
YW5hZ2VyLCBQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciBjb250ZXh0SWQpCkBAIC0x
ODcsNiArMTg4LDggQEAgcHVibGljOgogICAgIFBsYXRmb3JtUGxheWJhY2tTZXNzaW9uSW50ZXJm
YWNlKiBjb250cm9sc01hbmFnZXJJbnRlcmZhY2UoKTsKICAgICB2b2lkIHJlcXVlc3RDb250cm9s
bGVkRWxlbWVudElEKCk7CiAKKyAgICBib29sIGlzUGF1c2VkKFBsYXliYWNrU2Vzc2lvbkNvbnRl
eHRJZGVudGlmaWVyKSBjb25zdDsKKwogICAgIC8vIEZvciB0ZXN0aW5nLgogICAgIGJvb2wgd2ly
ZWxlc3NWaWRlb1BsYXliYWNrRGlzYWJsZWQoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQ29jb2EvUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5Lm1tIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5Lm1tCmlu
ZGV4IGZkNjBiOGIxMzhkNWRiOWM2ZDk0OTlhYjRiMzJjNjUzNGJkZWQ0MjcuLjdmZTNiMGY2YmEz
OWI3ZmRmMTIwNWNmNjlmYzQ3OTMyNDAzN2UzMTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0NvY29hL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eS5tbQorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHkubW0K
QEAgLTQxMSw2ICs0MTEsMTEgQEAgdm9pZCBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHk6OmNs
ZWFyUGxheWJhY2tDb250cm9sc01hbmFnZXIoKQogdm9pZCBQbGF5YmFja1Nlc3Npb25NYW5hZ2Vy
UHJveHk6OmN1cnJlbnRUaW1lQ2hhbmdlZChQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmll
ciBjb250ZXh0SWQsIGRvdWJsZSBjdXJyZW50VGltZSwgZG91YmxlIGhvc3RUaW1lKQogewogICAg
IGVuc3VyZU1vZGVsKGNvbnRleHRJZCkuY3VycmVudFRpbWVDaGFuZ2VkKGN1cnJlbnRUaW1lKTsK
KworI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKyAgICBpZiAobV9wYWdlKQor
ICAgICAgICBtX3BhZ2UtPmRpZENoYW5nZUN1cnJlbnRUaW1lKGNvbnRleHRJZCk7CisjZW5kaWYK
IH0KIAogdm9pZCBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHk6OmJ1ZmZlcmVkVGltZUNoYW5n
ZWQoUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgY29udGV4dElkLCBkb3VibGUgYnVm
ZmVyZWRUaW1lKQpAQCAtNDkxLDYgKzQ5NiwxMSBAQCB2b2lkIFBsYXliYWNrU2Vzc2lvbk1hbmFn
ZXJQcm94eTo6cGxheWJhY2tTdGFydGVkVGltZUNoYW5nZWQoUGxheWJhY2tTZXNzaW9uQ29udAog
dm9pZCBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHk6OnJhdGVDaGFuZ2VkKFBsYXliYWNrU2Vz
c2lvbkNvbnRleHRJZGVudGlmaWVyIGNvbnRleHRJZCwgT3B0aW9uU2V0PFdlYkNvcmU6OlBsYXli
YWNrU2Vzc2lvbk1vZGVsOjpQbGF5YmFja1N0YXRlPiBwbGF5YmFja1N0YXRlLCBkb3VibGUgcmF0
ZSwgZG91YmxlIGRlZmF1bHRQbGF5YmFja1JhdGUpCiB7CiAgICAgZW5zdXJlTW9kZWwoY29udGV4
dElkKS5yYXRlQ2hhbmdlZChwbGF5YmFja1N0YXRlLCByYXRlLCBkZWZhdWx0UGxheWJhY2tSYXRl
KTsKKworI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKyAgICBpZiAobV9wYWdl
KQorICAgICAgICBtX3BhZ2UtPmRpZENoYW5nZVBsYXliYWNrUmF0ZShjb250ZXh0SWQpOworI2Vu
ZGlmCiB9CiAKIHZvaWQgUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5OjpwaWN0dXJlSW5QaWN0
dXJlU3VwcG9ydGVkQ2hhbmdlZChQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciBjb250
ZXh0SWQsIGJvb2wgc3VwcG9ydGVkKQpAQCAtNjM4LDYgKzY0OCwxNiBAQCBQbGF0Zm9ybVBsYXli
YWNrU2Vzc2lvbkludGVyZmFjZSogUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5Ojpjb250cm9s
c01hbmFnZXJJbgogICAgIHJldHVybiAmaW50ZXJmYWNlOwogfQogCitib29sIFBsYXliYWNrU2Vz
c2lvbk1hbmFnZXJQcm94eTo6aXNQYXVzZWQoUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZp
ZXIgaWRlbnRpZmllcikgY29uc3QKK3sKKyAgICBhdXRvIGl0ZXJhdG9yID0gbV9jb250ZXh0TWFw
LmZpbmQoaWRlbnRpZmllcik7CisgICAgaWYgKGl0ZXJhdG9yID09IG1fY29udGV4dE1hcC5lbmQo
KSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgYXV0byYgbW9kZWwgPSAqc3RkOjpnZXQ8
MD4oaXRlcmF0b3ItPnZhbHVlKTsKKyAgICByZXR1cm4gIW1vZGVsLmlzUGxheWluZygpICYmICFt
b2RlbC5pc1N0YWxsZWQoKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CiAKICNlbmRpZiAv
LyBQTEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9f
UFJFU0VOVEFUSU9OX01PREUpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
Q29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaAppbmRleCBjN2UwYTBhZDE4
NTg3MmY1NWY4ZTRlYjU0N2U3ZDAyMWY5MmM4NmRmLi40ZDdkMmI5ZDI3ZmE1MGNlNjQxNTIzZjJh
YzY1MTBmMGQxYjA1MGIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaApAQCAtMjA1LDcgKzIwNSw2
IEBAIHByaXZhdGU6CiAgICAgV2ViUGFnZVByb3h5KiBtX3BhZ2U7CiAgICAgUmVmPFBsYXliYWNr
U2Vzc2lvbk1hbmFnZXJQcm94eT4gbV9wbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHk7CiAgICAg
SGFzaE1hcDxQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciwgTW9kZWxJbnRlcmZhY2VU
dXBsZT4gbV9jb250ZXh0TWFwOwotICAgIFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVy
IG1fY29udHJvbHNNYW5hZ2VyQ29udGV4dElkOwogICAgIEhhc2hNYXA8UGxheWJhY2tTZXNzaW9u
Q29udGV4dElkZW50aWZpZXIsIGludD4gbV9jbGllbnRDb3VudHM7CiAgICAgVmVjdG9yPENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoKT4+IG1fY2xvc2VDb21wbGV0aW9uSGFuZGxlcnM7CiAgICAgV2Vh
a0hhc2hTZXQ8VmlkZW9JblBpY3R1cmVJblBpY3R1cmVEaWRDaGFuZ2VPYnNlcnZlcj4gbV9waXBD
aGFuZ2VPYnNlcnZlcnM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0KaW5kZXggMzlhMGRlZTc4NDli
ZDBjMmZkNTk3NTYwMTJiM2IwNWI5YzU3M2M4ZC4uZWFiMTM3NDIzNjY1Njg2NDAxMWI4MWVlNWEx
ZmFjYzc0NDQ4ZjhhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2Ev
VmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbQpAQCAtODEyLDcgKzgxMiw3
IEBAIHZvaWQgVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpkaWRFeGl0RnVsbHNjcmVlbihQ
bGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpCiAgICAgICAgIHJldHVybjsKICAgICB9CiAjZW5k
aWYKLSAgICBtX3BhZ2UtPmRpZEV4aXRGdWxsc2NyZWVuKCk7CisgICAgbV9wYWdlLT5kaWRFeGl0
RnVsbHNjcmVlbihjb250ZXh0SWQpOwogICAgIGNhbGxDbG9zZUNvbXBsZXRpb25IYW5kbGVycygp
OwogfQogCkBAIC04MjgsNyArODI4LDcgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJv
eHk6OmRpZEVudGVyRnVsbHNjcmVlbihQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnQKICAgICBp
ZiAoZW5zdXJlSW50ZXJmYWNlKGNvbnRleHRJZCkuY2hhbmdpbmdTdGFuZGJ5T25seSgpKQogICAg
ICAgICByZXR1cm47CiAjZW5kaWYKLSAgICBtX3BhZ2UtPmRpZEVudGVyRnVsbHNjcmVlbigpOwor
ICAgIG1fcGFnZS0+ZGlkRW50ZXJGdWxsc2NyZWVuKGNvbnRleHRJZCk7CiB9CiAKIHZvaWQgVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpkaWRDbGVhbnVwRnVsbHNjcmVlbihQbGF5YmFja1Nl
c3Npb25Db250ZXh0SWRlbnRpZmllciBjb250ZXh0SWQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQYWdlUHJveHlDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0NvY29hL1dlYlBhZ2VQcm94eUNvY29hLm1tCmluZGV4IGIwZGQxOWE4ZmUyODRm
NDhjZTA3ZTJkYTYwNDYxMjA3NzYxOWEwYzMuLjZhOTU4YThlMTA3NzE4MWY5ODBjZWFmODk1YTBh
ZjJhNzMwMmI5ZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dl
YlBhZ2VQcm94eUNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dl
YlBhZ2VQcm94eUNvY29hLm1tCkBAIC00NjEsNiArNDYxLDQwIEBAIHZvaWQgV2ViUGFnZVByb3h5
OjpyZW1vdmVNZWRpYVVzYWdlTWFuYWdlclNlc3Npb24oV2ViQ29yZTo6TWVkaWFTZXNzaW9uSWRl
bnRpZmllCiB9CiAjZW5kaWYKIAorI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkK
Kwordm9pZCBXZWJQYWdlUHJveHk6OmRpZENoYW5nZVBsYXliYWNrUmF0ZShQbGF5YmFja1Nlc3Np
b25Db250ZXh0SWRlbnRpZmllciBpZGVudGlmaWVyKQoreworICAgIGlmIChtX2N1cnJlbnRGdWxs
c2NyZWVuVmlkZW9TZXNzaW9uSWRlbnRpZmllciA9PSBpZGVudGlmaWVyKQorICAgICAgICB1cGRh
dGVGdWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojpk
aWRDaGFuZ2VDdXJyZW50VGltZShQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciBpZGVu
dGlmaWVyKQoreworICAgIGlmIChtX2N1cnJlbnRGdWxsc2NyZWVuVmlkZW9TZXNzaW9uSWRlbnRp
ZmllciA9PSBpZGVudGlmaWVyKQorICAgICAgICB1cGRhdGVGdWxsc2NyZWVuVmlkZW9FeHRyYWN0
aW9uKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5Ojp1cGRhdGVGdWxsc2NyZWVuVmlkZW9FeHRy
YWN0aW9uKCkKK3sKKyAgICBpZiAobV9jdXJyZW50RnVsbHNjcmVlblZpZGVvU2Vzc2lvbklkZW50
aWZpZXIgJiYgbV9wbGF5YmFja1Nlc3Npb25NYW5hZ2VyICYmIG1fcGxheWJhY2tTZXNzaW9uTWFu
YWdlci0+aXNQYXVzZWQoKm1fY3VycmVudEZ1bGxzY3JlZW5WaWRlb1Nlc3Npb25JZGVudGlmaWVy
KSkgeworICAgICAgICBtX2Z1bGxzY3JlZW5WaWRlb0V4dHJhY3Rpb25UaW1lci5zdGFydE9uZVNo
b3QoMjUwX21zKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIG1fZnVsbHNjcmVlblZp
ZGVvRXh0cmFjdGlvblRpbWVyLnN0b3AoKTsKK30KKwordm9pZCBXZWJQYWdlUHJveHk6OmZ1bGxz
Y3JlZW5WaWRlb0V4dHJhY3Rpb25UaW1lckZpcmVkKCkKK3sKKyAgICBpZiAoIW1fY3VycmVudEZ1
bGxzY3JlZW5WaWRlb1Nlc3Npb25JZGVudGlmaWVyKQorICAgICAgICByZXR1cm47CisKKyAgICAv
LyBGSVhNRTogQWRkIGxvZ2ljIHRvIHBlcmZvcm0gdmlkZW8gZnJhbWUgZXh0cmFjdGlvbi4KK30K
KworI2VuZGlmIC8vIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKwogI2lmIEhBVkUo
UVVJQ0tMT09LX1RIVU1CTkFJTElORykKIAogc3RhdGljIFJlZlB0cjxXZWJLaXQ6OlNoYXJlYWJs
ZUJpdG1hcD4gY29udmVydFBsYXRmb3JtSW1hZ2VUb0JpdG1hcChDb2NvYUltYWdlICppbWFnZSwg
Y29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgZml0dGluZ1NpemUpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViUGFnZVByb3h5LmNwcAppbmRleCBlNDk5MzVjMzI1ZjY5ZjM0MzQ0MGNhYTBhZGQ3YmZm
ZTFjMDA1MjgyLi5iYjQxYzExMWEzMzU5ZTBhMjMzZjM0NGQyZjlkZTZkMDFjMjhhNTcwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKQEAgLTUxNiw2ICs1MTYsOSBA
QCBXZWJQYWdlUHJveHk6OldlYlBhZ2VQcm94eShQYWdlQ2xpZW50JiBwYWdlQ2xpZW50LCBXZWJQ
cm9jZXNzUHJveHkmIHByb2Nlc3MsIFJlZgogICAgICwgbV9saW1pdHNOYXZpZ2F0aW9uc1RvQXBw
Qm91bmREb21haW5zKG1fY29uZmlndXJhdGlvbi0+bGltaXRzTmF2aWdhdGlvbnNUb0FwcEJvdW5k
RG9tYWlucygpKQogI2VuZGlmCiAgICAgLCBtX25vdGlmaWNhdGlvbk1hbmFnZXJNZXNzYWdlSGFu
ZGxlcigqdGhpcykKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisgICAgLCBt
X2Z1bGxzY3JlZW5WaWRlb0V4dHJhY3Rpb25UaW1lcihSdW5Mb29wOjptYWluKCksIHRoaXMsICZX
ZWJQYWdlUHJveHk6OmZ1bGxzY3JlZW5WaWRlb0V4dHJhY3Rpb25UaW1lckZpcmVkKQorI2VuZGlm
CiB7CiAgICAgV0VCUEFHRVBST1hZX1JFTEVBU0VfTE9HKExvYWRpbmcsICJjb25zdHJ1Y3Rvcjoi
KTsKIApAQCAtNTk3NSw2ICs1OTc4LDI4IEBAIHZvaWQgV2ViUGFnZVByb3h5OjpkaWRFeGl0RnVs
bHNjcmVlbigpCiAgICAgbV91aUNsaWVudC0+ZGlkRXhpdEZ1bGxzY3JlZW4odGhpcyk7CiB9CiAK
KyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisKK3ZvaWQgV2ViUGFnZVByb3h5
OjpkaWRFbnRlckZ1bGxzY3JlZW4oUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIgaWRl
bnRpZmllcikKK3sKKyAgICBkaWRFbnRlckZ1bGxzY3JlZW4oKTsKKworICAgIG1fY3VycmVudEZ1
bGxzY3JlZW5WaWRlb1Nlc3Npb25JZGVudGlmaWVyID0gaWRlbnRpZmllcjsKKyAgICB1cGRhdGVG
dWxsc2NyZWVuVmlkZW9FeHRyYWN0aW9uKCk7Cit9CisKK3ZvaWQgV2ViUGFnZVByb3h5OjpkaWRF
eGl0RnVsbHNjcmVlbihQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllciBpZGVudGlmaWVy
KQoreworICAgIGRpZEV4aXRGdWxsc2NyZWVuKCk7CisKKyAgICBpZiAobV9jdXJyZW50RnVsbHNj
cmVlblZpZGVvU2Vzc2lvbklkZW50aWZpZXIgPT0gaWRlbnRpZmllcikgeworICAgICAgICBtX2N1
cnJlbnRGdWxsc2NyZWVuVmlkZW9TZXNzaW9uSWRlbnRpZmllciA9IHN0ZDo6bnVsbG9wdDsKKyAg
ICAgICAgdXBkYXRlRnVsbHNjcmVlblZpZGVvRXh0cmFjdGlvbigpOworICAgIH0KK30KKworI2Vu
ZGlmIC8vIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKwogdm9pZCBXZWJQYWdlUHJv
eHk6OmNsb3NlUGFnZSgpCiB7CiAgICAgaWYgKGlzQ2xvc2VkKCkpCkBAIC04MTAxLDYgKzgxMjYs
MTEgQEAgdm9pZCBXZWJQYWdlUHJveHk6OnJlc2V0U3RhdGVBZnRlclByb2Nlc3NFeGl0ZWQoUHJv
Y2Vzc1Rlcm1pbmF0aW9uUmVhc29uIHRlcm1pbmEKIAogICAgIHVwZGF0ZVBsYXlpbmdNZWRpYURp
ZENoYW5nZShNZWRpYVByb2R1Y2VyOjpJc05vdFBsYXlpbmcpOwogCisjaWYgRU5BQkxFKFZJREVP
X1BSRVNFTlRBVElPTl9NT0RFKQorICAgIG1fZnVsbHNjcmVlblZpZGVvRXh0cmFjdGlvblRpbWVy
LnN0b3AoKTsKKyAgICBtX2N1cnJlbnRGdWxsc2NyZWVuVmlkZW9TZXNzaW9uSWRlbnRpZmllciA9
IHN0ZDo6bnVsbG9wdDsKKyNlbmRpZgorCiAgICAgLy8gRklYTUU6IDxyZGFyOi8vcHJvYmxlbS8z
ODY3NjYwND4gSW4gY2FzZSBvZiBwcm9jZXNzIHN3YXBzLCB0aGUgb2xkIHByb2Nlc3Mgc2hvdWxk
IGdyYWNlZnVsbHkgc3VzcGVuZCBpbnN0ZWFkIG9mIHRlcm1pbmF0aW5nLgogICAgIG1fcHJvY2Vz
cy0+cHJvY2Vzc1Rlcm1pbmF0ZWQoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYlBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVBy
b3h5LmgKaW5kZXggNTA3ZWFjOGE5NjUyYWUwZmUwYTEzYjIyNmRlZmY4ODJkZWMzOGYzMS4uYTQ0
N2M3MGMwODQwNjE0OTBjMWI0OTVlZmIxODdmMTY1YTFlY2NiMiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5LmgKQEAgLTE1Nyw2ICsxNTcsNyBAQAogI2VuZGlmCiAKICNpZiBQ
TEFURk9STShDT0NPQSkKKyNpbmNsdWRlICJQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmll
ci5oIgogI2luY2x1ZGUgIlJlbW90ZUxheWVyVHJlZU5vZGUuaCIKICNpbmNsdWRlIDx3dGYvV2Vh
a09iakNQdHIuaD4KICNlbmRpZgpAQCAtNTE4LDYgKzUxOSw3IEBAIHB1YmxpYzoKIAogICAgIHZv
aWQgZXhpdEZ1bGxzY3JlZW5JbW1lZGlhdGVseSgpOwogICAgIHZvaWQgZnVsbHNjcmVlbk1heVJl
dHVyblRvSW5saW5lKCk7CisKICAgICB2b2lkIGRpZEVudGVyRnVsbHNjcmVlbigpOwogICAgIHZv
aWQgZGlkRXhpdEZ1bGxzY3JlZW4oKTsKIApAQCAtMTkzNSw2ICsxOTM3LDEzIEBAIHB1YmxpYzoK
ICAgICB2b2lkIHJlbW92ZU1lZGlhVXNhZ2VNYW5hZ2VyU2Vzc2lvbihXZWJDb3JlOjpNZWRpYVNl
c3Npb25JZGVudGlmaWVyKTsKICNlbmRpZgogCisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElP
Tl9NT0RFKQorICAgIHZvaWQgZGlkRW50ZXJGdWxsc2NyZWVuKFBsYXliYWNrU2Vzc2lvbkNvbnRl
eHRJZGVudGlmaWVyKTsKKyAgICB2b2lkIGRpZEV4aXRGdWxsc2NyZWVuKFBsYXliYWNrU2Vzc2lv
bkNvbnRleHRJZGVudGlmaWVyKTsKKyAgICB2b2lkIGRpZENoYW5nZVBsYXliYWNrUmF0ZShQbGF5
YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllcik7CisgICAgdm9pZCBkaWRDaGFuZ2VDdXJyZW50
VGltZShQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllcik7CisjZW5kaWYKKwogICAgIHZv
aWQgc2V0SGFzRXhlY3V0ZWRBcHBCb3VuZEJlaGF2aW9yQmVmb3JlTmF2aWdhdGlvbigpIHsgbV9o
YXNFeGVjdXRlZEFwcEJvdW5kQmVoYXZpb3JCZWZvcmVOYXZpZ2F0aW9uID0gdHJ1ZTsgfQogCiAg
ICAgV2ViUG9wdXBNZW51UHJveHkqIGFjdGl2ZVBvcHVwTWVudSgpIGNvbnN0IHsgcmV0dXJuIG1f
YWN0aXZlUG9wdXBNZW51LmdldCgpOyB9CkBAIC0yNTk4LDYgKzI2MDcsMTEgQEAgcHJpdmF0ZToK
ICAgICB2b2lkIHNldFVwSGlnaGxpZ2h0c09ic2VydmVyKCk7CiAjZW5kaWYKIAorI2lmIEVOQUJM
RShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKyAgICB2b2lkIHVwZGF0ZUZ1bGxzY3JlZW5WaWRl
b0V4dHJhY3Rpb24oKTsKKyAgICB2b2lkIGZ1bGxzY3JlZW5WaWRlb0V4dHJhY3Rpb25UaW1lckZp
cmVkKCk7CisjZW5kaWYKKwogICAgIGNvbnN0IElkZW50aWZpZXIgbV9pZGVudGlmaWVyOwogICAg
IFdlYkNvcmU6OlBhZ2VJZGVudGlmaWVyIG1fd2ViUGFnZUlEOwogICAgIFdlYWtQdHI8UGFnZUNs
aWVudD4gbV9wYWdlQ2xpZW50OwpAQCAtMzE3Myw2ICszMTg3LDExIEBAIHByaXZhdGU6CiAgICAg
c3RkOjpvcHRpb25hbDxTY3JvbGxpbmdBY2NlbGVyYXRpb25DdXJ2ZT4gbV9zY3JvbGxpbmdBY2Nl
bGVyYXRpb25DdXJ2ZTsKICAgICBzdGQ6Om9wdGlvbmFsPFNjcm9sbGluZ0FjY2VsZXJhdGlvbkN1
cnZlPiBtX2xhc3RTZW50U2Nyb2xsaW5nQWNjZWxlcmF0aW9uQ3VydmU7CiAjZW5kaWYKKworI2lm
IEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKyAgICBzdGQ6Om9wdGlvbmFsPFBsYXli
YWNrU2Vzc2lvbkNvbnRleHRJZGVudGlmaWVyPiBtX2N1cnJlbnRGdWxsc2NyZWVuVmlkZW9TZXNz
aW9uSWRlbnRpZmllcjsKKyAgICBSdW5Mb29wOjpUaW1lcjxXZWJQYWdlUHJveHk+IG1fZnVsbHNj
cmVlblZpZGVvRXh0cmFjdGlvblRpbWVyOworI2VuZGlmCiB9OwogCiAjaWZkZWYgX19PQkpDX18K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2ogYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4
IDc3ZTBhOWZkNDZjNmNiM2JlODBjY2U3YjhmZjFiNDE5ZjNlM2MyNjUuLmQ4YzVmMzQxYTlkYzgy
NzdmZTc0YWIwODFjNGJmNWUzMTA4Zjg2NzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
S2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtODY0LDcgKzg2NCw2IEBACiAJCTQxRkFGNUY1
MUUzQzA2NDkwMDFBRTY3OCAvKiBXZWJSVENSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDFGQUY1RjQxRTNDMDY0MTAwMUFFNjc4IC8qIFdl
YlJUQ1Jlc29sdmVyLmggKi87IH07CiAJCTQxRkFGNUY4MUUzQzEwMjEwMDFBRTY3OCAvKiBMaWJX
ZWJSVENSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNDFGQUY1RjYxRTNDMEI0NzAwMUFFNjc4IC8qIExpYldlYlJUQ1Jlc29sdmVyLmggKi87
IH07CiAJCTQ0NTk5ODQyMjI4MzNFODcwMEU2MTM3MyAvKiBTeW50aGV0aWNFZGl0aW5nQ29tbWFu
ZFR5cGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0
NTk5ODQxMjI4MzNFNjAwMEU2MTM3MyAvKiBTeW50aGV0aWNFZGl0aW5nQ29tbWFuZFR5cGUuaCAq
LzsgfTsKLQkJNDQ2REM2NEMyNEEyRDhFNTAwNjFGMzkwIC8qIFBsYXliYWNrU2Vzc2lvbkNvbnRl
eHRJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA0NDZEQzY0QjI0QTJEOEFEMDA2MUYzOTAgLyogUGxheWJhY2tTZXNzaW9uQ29udGV4dElk
ZW50aWZpZXIuaCAqLzsgfTsKIAkJNDQ3NkVGMDkyNUJGQzhCNzAwNEEwNTg3IC8qIF9XS0FwcEhp
Z2hsaWdodERlbGVnYXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA0NDc2RUYwODI1QkZDOEI3MDA0QTA1ODcgLyogX1dLQXBwSGlnaGxpZ2h0RGVsZWdh
dGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk0
NDgyNzM0NzI0NTI4RjYwMDBBOTU0OTMgLyogQ29jb2FJbWFnZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDQ4MjczNDYyNDUyOEY2MDAwQTk1NDkzIC8q
IENvY29hSW1hZ2UuaCAqLzsgfTsKIAkJNDQ4QUMyNEUyNjcxMzVBNzAwQjI4OTIxIC8qIFN5bmFw
c2VTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0
OEFDMjREMjY3MTM1QTYwMEIyODkyMSAvKiBTeW5hcHNlU1BJLmggKi87IH07CkBAIC0yMDMxLDYg
KzIwMzAsNyBAQAogCQlGNDk3NEU3NjI2NUVDQkJDMDBCNDlCOEMgLyogV0tSZXZlYWxJdGVtUHJl
c2VudGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBG
NDQ2RURFRjI2NUVCMkIwMDAzMURBOEYgLyogV0tSZXZlYWxJdGVtUHJlc2VudGVyLmggKi87IH07
CiAJCUY0OTc1Q0YyMjYyNEI4MEEwMDNDNjI2RSAvKiBXS1F1aWNrTG9va1ByZXZpZXdDb250cm9s
bGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNDk3
NUNGMTI2MjRCODBBMDAzQzYyNkUgLyogV0tRdWlja0xvb2tQcmV2aWV3Q29udHJvbGxlci5oICov
OyB9OwogCQlGNEJBMzNGMjI1NzU3RTg5MDAwQTNDRTggLyogV0tJbWFnZUFuYWx5c2lzR2VzdHVy
ZVJlY29nbml6ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEY0QkEzM0YwMjU3NTdFODkwMDBBM0NFOCAvKiBXS0ltYWdlQW5hbHlzaXNHZXN0dXJlUmVj
b2duaXplci5oICovOyB9OworCQlGNEJFMEQ3NzI3QUFFMUNCMDA1RjAzMjMgLyogUGxheWJhY2tT
ZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEY0QkUwRDc2MjdBQUUxQ0IwMDVGMDMyMyAvKiBQbGF5YmFja1Nlc3Np
b25Db250ZXh0SWRlbnRpZmllci5oICovOyB9OwogCQlGNENCMDlFNTIyNUQ1QTA5MDA4OTE0ODcg
LyogV2Vic2l0ZU1lZGlhU291cmNlUG9saWN5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBGNENCMDlFNDIyNUQ1QTAzMDA4OTE0ODcgLyogV2Vic2l0ZU1l
ZGlhU291cmNlUG9saWN5LmggKi87IH07CiAJCUY0Q0YxRTlEMjVFNDBEQ0MwMDBGOUQ3MyAvKiBH
ZXN0dXJlUmVjb2duaXplckNvbnNpc3RlbmN5RW5mb3JjZXIuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEY0Q0YxRTlCMjVFNDBEQ0MwMDBGOUQ3MyAvKiBH
ZXN0dXJlUmVjb2duaXplckNvbnNpc3RlbmN5RW5mb3JjZXIuaCAqLzsgfTsKIAkJRjRENUY1MUQy
MDYwODdBMTAwMzhCQkE4IC8qIFdLVGV4dElucHV0TGlzdFZpZXdDb250cm9sbGVyLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBGNEQ1RjUxOTIwNjA4N0Ew
MDAzOEJCQTggLyogV0tUZXh0SW5wdXRMaXN0Vmlld0NvbnRyb2xsZXIuaCAqLzsgfTsKQEAgLTQy
MDYsNyArNDIwNiw2IEBACiAJCTQxRkZEMkRDMjc1QTZBOTQwMDUwMUJCRiAvKiBTZXJ2aWNlV29y
a2VyRG93bmxvYWRUYXNrLm1lc3NhZ2VzLmluICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFNlcnZpY2VXb3JrZXJEb3dubG9hZFRh
c2subWVzc2FnZXMuaW47IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ0NTBBRUJGMURD
M0ZBRTUwMDk5NDNGMiAvKiBTaGFyZWRNZW1vcnlDb2NvYS5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBTaGFyZWRNZW1vcnlDb2NvYS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTQ0NTk5ODQxMjI4MzNFNjAwMEU2MTM3MyAvKiBTeW50aGV0aWNFZGl0
aW5nQ29tbWFuZFR5cGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3ludGhldGljRWRpdGluZ0NvbW1hbmRU
eXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTQ0NkRDNjRCMjRBMkQ4QUQwMDYx
RjM5MCAvKiBQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0NDc2RUYwODI1QkZDOEI3MDA0QTA1ODcgLyog
X1dLQXBwSGlnaGxpZ2h0RGVsZWdhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gX1dLQXBwSGlnaGxpZ2h0RGVsZWdhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNDQ4MjczNDYyNDUyOEY2MDAwQTk1NDkzIC8qIENvY29hSW1hZ2UuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gQ29jb2FJbWFnZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk0NDhBQzI0RDI2NzEzNUE2MDBCMjg5MjEgLyogU3luYXBzZVNQSS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTeW5hcHNlU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC02NTE4LDYgKzY1MTcsNyBAQAogCQlGNEIzNzhEMDIxRERCQkFCMDA5NUEz
NzggLyogV2ViVW5kb1N0ZXBJRC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJVbmRvU3RlcElELmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUY0QkEzM0YwMjU3NTdFODkwMDBBM0NFOCAvKiBX
S0ltYWdlQW5hbHlzaXNHZXN0dXJlUmVjb2duaXplci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBXS0ltYWdl
QW5hbHlzaXNHZXN0dXJlUmVjb2duaXplci5oOyBwYXRoID0gaW9zL1dLSW1hZ2VBbmFseXNpc0dl
c3R1cmVSZWNvZ25pemVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUY0QkEzM0Yx
MjU3NTdFODkwMDBBM0NFOCAvKiBXS0ltYWdlQW5hbHlzaXNHZXN0dXJlUmVjb2duaXplci5tbSAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLm9iamNwcDsgbmFtZSA9IFdLSW1hZ2VBbmFseXNpc0dlc3R1cmVSZWNvZ25pemVyLm1t
OyBwYXRoID0gaW9zL1dLSW1hZ2VBbmFseXNpc0dlc3R1cmVSZWNvZ25pemVyLm1tOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlGNEJFMEQ3NjI3QUFFMUNCMDA1RjAzMjMgLyogUGxheWJh
Y2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJRjRDQjA5RTQyMjVENUEwMzAwODkxNDg3IC8qIFdlYnNpdGVNZWRpYVNv
dXJjZVBvbGljeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJzaXRlTWVkaWFTb3VyY2VQb2xpY3kuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRjRDRjFFOUIyNUU0MERDQzAwMEY5RDczIC8q
IEdlc3R1cmVSZWNvZ25pemVyQ29uc2lzdGVuY3lFbmZvcmNlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IG5hbWUgPSBHZXN0dXJlUmVjb2duaXplckNvbnNpc3RlbmN5RW5mb3JjZXIuaDsg
cGF0aCA9IGlvcy9HZXN0dXJlUmVjb2duaXplckNvbnNpc3RlbmN5RW5mb3JjZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRjRDRjFFOUMyNUU0MERDQzAwMEY5RDczIC8qIEdlc3R1
cmVSZWNvZ25pemVyQ29uc2lzdGVuY3lFbmZvcmNlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLm9iamNwcDsgbmFtZSA9IEdlc3R1cmVSZWNvZ25pemVyQ29uc2lzdGVuY3lFbmZvcmNlci5t
bTsgcGF0aCA9IGlvcy9HZXN0dXJlUmVjb2duaXplckNvbnNpc3RlbmN5RW5mb3JjZXIubW07IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC05MDQ3LDYgKzkwNDcsNyBAQAogCQkJCTJEMTA4
NzYyMUQyQzY0MUIwMEI4NUY4MiAvKiBMb2FkUGFyYW1ldGVyc0NvY29hLm1tICovLAogCQkJCTJE
NDQwQjgzMjVFRjIzNUUwMEE5OEQ4NyAvKiBQREZLaXRTb2Z0TGluay5oICovLAogCQkJCTJENDQw
QjgyMjVFRjIzNUUwMEE5OEQ4NyAvKiBQREZLaXRTb2Z0TGluay5tbSAqLywKKwkJCQlGNEJFMEQ3
NjI3QUFFMUNCMDA1RjAzMjMgLyogUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaCAq
LywKIAkJCQk3QUI0RUEzRjIyNzc3QzQ2MDA4NUJCQUEgLyogU2FuZGJveEV4dGVuc2lvbkNvY29h
Lm1tICovLAogCQkJCTdBQjRFQTQxMjI3NzdGQzcwMDg1QkJBQSAvKiBTYW5kYm94SW5pdGlhbGlh
dGlvblBhcmFtZXRlcnNDb2NvYS5tbSAqLywKIAkJCQlFMTlCREE4ODE5MzY4NkE0MDBCOTdGNTcg
LyogU2FuZGJveFV0aWxpdGllcy5oICovLApAQCAtMTAyNTUsNyArMTAyNTYsNiBAQAogCQkJCUMx
QTE1MkQ2MjRFNUEyOUEwMDk3OEM4QiAvKiBIYW5kbGVYUENFbmRwb2ludE1lc3NhZ2VzLm1tICov
LAogCQkJCUMxNEQzN0ZDMjRBQ0RGNDUwMDdGRjAxNCAvKiBMYXVuY2hTZXJ2aWNlc0RhdGFiYXNl
TWFuYWdlci5oICovLAogCQkJCUMxNEQzN0ZEMjRBQ0UwODYwMDdGRjAxNCAvKiBMYXVuY2hTZXJ2
aWNlc0RhdGFiYXNlTWFuYWdlci5tbSAqLywKLQkJCQk0NDZEQzY0QjI0QTJEOEFEMDA2MUYzOTAg
LyogUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZpZXIuaCAqLywKIAkJCQlDREEyOUExOTFD
QkRCRjQxMDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9uTWFuYWdlci5oICovLAogCQkJCUNEQTI5
QTFDMUNCREJGNUIwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyLm1lc3NhZ2VzLmlu
ICovLAogCQkJCUNEQTI5QTE4MUNCREJGNDEwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25NYW5h
Z2VyLm1tICovLApAQCAtMTMyMjEsNyArMTMyMjEsNyBAQAogCQkJCTJEODcxMDE3MTgyODQxNUQw
MDE4RkEwMSAvKiBQbGF0Zm9ybUNBTGF5ZXJSZW1vdGVDdXN0b20uaCBpbiBIZWFkZXJzICovLAog
CQkJCTJEODk0OUYxMTgyMDQ0RjYwMEU4OThBQSAvKiBQbGF0Zm9ybUNBTGF5ZXJSZW1vdGVUaWxl
ZEJhY2tpbmcuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDQzQzQUJCMTI3Qjk1REMwMDMxN0YxNiAv
KiBQbGF0Zm9ybVBvcHVwTWVudURhdGEuaCBpbiBIZWFkZXJzICovLAotCQkJCTQ0NkRDNjRDMjRB
MkQ4RTUwMDYxRjM5MCAvKiBQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5oIGluIEhl
YWRlcnMgKi8sCisJCQkJRjRCRTBENzcyN0FBRTFDQjAwNUYwMzIzIC8qIFBsYXliYWNrU2Vzc2lv
bkNvbnRleHRJZGVudGlmaWVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlDREEyOUExQjFDQkRCRjQx
MDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9uTWFuYWdlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
Q0RBMjlBMjkxQ0JFQjY3QTAwOTAxQ0NGIC8qIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJNZXNzYWdl
cy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQ0RBMjlBMjAxQ0JFQjVGQjAwOTAxQ0NGIC8qIFBsYXli
YWNrU2Vzc2lvbk1hbmFnZXJQcm94eS5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvUGxheWJhY2tTZXNzaW9uQ29udGV4dElkZW50aWZp
ZXIuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9QbGF5YmFja1Nlc3Npb25Db250
ZXh0SWRlbnRpZmllci5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzNzdmMTdjNTMw
YmI1ZWIyMTI3OWQ2YThmYTc5NjVlYjVjMjc1ZjhjLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9QbGF5
YmFja1Nlc3Npb25Db250ZXh0SWRlbnRpZmllci5oCisrKyAvZGV2L251bGwKQEAgLTEsMzUgKzAs
MCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0g
KiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAq
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgotICovCi0KLSNwcmFnbWEgb25jZQotCi0jaW5jbHVkZSA8d3RmL09iamVjdElk
ZW50aWZpZXIuaD4KLQotbmFtZXNwYWNlIFdlYktpdCB7Ci0KLWVudW0gUGxheWJhY2tTZXNzaW9u
Q29udGV4dElkZW50aWZpZXJUeXBlIHsgfTsKLXVzaW5nIFBsYXliYWNrU2Vzc2lvbkNvbnRleHRJ
ZGVudGlmaWVyID0gT2JqZWN0SWRlbnRpZmllcjxQbGF5YmFja1Nlc3Npb25Db250ZXh0SWRlbnRp
ZmllclR5cGU+OwotCi19Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>