<?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>234086</bug_id>
          
          <creation_ts>2021-12-09 08:42:41 -0800</creation_ts>
          <short_desc>[GPU Process] [Filters] Add the encoding and decoding for LightSource</short_desc>
          <delta_ts>2021-12-09 13:08:37 -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>Layout and Rendering</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>231253</blocked>
    
    <blocked>233989</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Said Abou-Hallawa">sabouhallawa</reporter>
          <assigned_to name="Said Abou-Hallawa">sabouhallawa</assigned_to>
          <cc>annulen</cc>
    
    <cc>bfulgham</cc>
    
    <cc>dino</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1822142</commentid>
    <comment_count>0</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-12-09 08:42:41 -0800</bug_when>
    <thetext>This will allow encoding and decoding FEDiffuseLighting and FESpecularLighting.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1822149</commentid>
    <comment_count>1</comment_count>
      <attachid>446556</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-12-09 09:00:33 -0800</bug_when>
    <thetext>Created attachment 446556
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1822151</commentid>
    <comment_count>2</comment_count>
      <attachid>446556</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-12-09 09:05:52 -0800</bug_when>
    <thetext>Comment on attachment 446556
Patch

r=mews</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1822258</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-12-09 12:26:26 -0800</bug_when>
    <thetext>Committed r286796 (245036@main): &lt;https://commits.webkit.org/245036@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 446556.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1822288</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-12-09 13:08:37 -0800</bug_when>
    <thetext>&lt;rdar://problem/86287196&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>446556</attachid>
            <date>2021-12-09 09:00:33 -0800</date>
            <delta_ts>2021-12-09 12:26:29 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-234086-20211209090032.patch</filename>
            <type>text/plain</type>
            <size>25274</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg2NzY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjhhYjc2NjE0NTA2YTBk
NmNjZDRmYzlkMGUzMDExMjc1OTBjMGE3Ni4uYTFhNjczZGY1MTdiNDEyMzc3ZGYwMTg0NDg5ZjA1
NTY2NGM0YWZiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYxIEBACisyMDIxLTEyLTA5ICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhaWRAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUgUHJvY2Vzc10g
W0ZpbHRlcnNdIEFkZCB0aGUgZW5jb2RpbmcgYW5kIGRlY29kaW5nIGZvciBMaWdodFNvdXJjZQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0MDg2CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyB3aWxs
IGFsbG93IGVuY29kaW5nIGFuZCBkZWNvZGluZyBGRURpZmZ1c2VMaWdodGluZyBhbmQgRkVTcGVj
dWxhckxpZ2h0aW5nLgorCisgICAgICAgIFRoZSBjcmVhdGUoKSBhbmQgdGhlIGNvbnN0cnVjdG9y
IG9mIHRoZSBMaWdodFNvdXJjZSBzdXBlciBjbGFzc2VzIGhhdmUKKyAgICAgICAgdG8gYmUgbm9u
LWlubGluZSB0byBvdmVyY29tZSBhICJtaXNzaW5nIHZ0YWJsZSIgbGlua2luZyBpc3N1ZS4KKwor
ICAgICAgICBOZXcgY29uc3RydWN0b3JzIGFyZSBhZGRlZCB0byBGRURpZmZ1c2VMaWdodGluZyBh
bmQgRkVTcGVjdWxhckxpZ2h0aW5nCisgICAgICAgIHRvIGFsbG93IGNyZWF0aW5nIHRoZXNlIHN1
cGVyIGNsYXNzZXMgZnJvbSB0aGUgY29tYmluZWQgZGF0YSBtZW1iZXJzIG9mCisgICAgICAgIEZF
TGlnaHRpbmcuCisKKyAgICAgICAgbV9idWZmZXJQb3NpdGlvbiBvZiBQb2ludExpZ2h0U291cmNl
IGFuZCBTcG90TGlnaHRTb3VyY2UgYXJlIHVzZWQgdG8gY2FjaGUKKyAgICAgICAgdGhlIGFic29s
dXRlIHZhbHVlIG9mIG1fdXNlclNwYWNlUG9zaXRpb24gcmVsYXRpdmUgdG8gdGhlIHJlc3VsdCBG
aWx0ZXJJbWFnZS4KKyAgICAgICAgU28gaXQgZG9lcyBub3QgbmVlZCB0byBiZSBlbmNvZGVkL2Rl
Y29kZWQgc2luY2UgaXQgaXMgaW5pdGlhbGl6ZWQgYnkKKyAgICAgICAgRkVMaWdodGluZ1NvZnR3
YXJlQXBwbGllci4KKworICAgICAgICAqIEhlYWRlcnMuY21ha2U6CisgICAgICAgICogV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvRGlzdGFudExpZ2h0U291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRpc3Rh
bnRMaWdodFNvdXJjZTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkRpc3RhbnRMaWdodFNv
dXJjZTo6RGlzdGFudExpZ2h0U291cmNlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0Rpc3RhbnRMaWdodFNvdXJjZS5oOgorICAgICAgICAoV2ViQ29yZTo6RGlzdGFudExp
Z2h0U291cmNlOjplbmNvZGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6RGlzdGFudExpZ2h0
U291cmNlOjpkZWNvZGUpOgorICAgICAgICAoV2ViQ29yZTo6RGlzdGFudExpZ2h0U291cmNlOjpj
cmVhdGUpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzdGFudExpZ2h0U291cmNlOjpE
aXN0YW50TGlnaHRTb3VyY2UpOiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvRkVEaWZmdXNlTGlnaHRpbmcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RkVEaWZm
dXNlTGlnaHRpbmc6OmNyZWF0ZSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9GRURpZmZ1c2VMaWdodGluZy5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRl
cnMvRkVMaWdodGluZy5oOgorICAgICAgICAoV2ViQ29yZTo6RkVMaWdodGluZzo6ZW5jb2RlIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZFTGlnaHRpbmc6OmRlY29kZSk6CisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRVNwZWN1bGFyTGlnaHRpbmcuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RkVTcGVjdWxhckxpZ2h0aW5nOjpjcmVhdGUpOgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVTcGVjdWxhckxpZ2h0aW5nLmg6CisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9MaWdodFNvdXJjZS5oOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL2ZpbHRlcnMvUG9pbnRMaWdodFNvdXJjZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpQb2ludExpZ2h0U291cmNlOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6UG9pbnRMaWdo
dFNvdXJjZTo6UG9pbnRMaWdodFNvdXJjZSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
ZmlsdGVycy9Qb2ludExpZ2h0U291cmNlLmg6CisgICAgICAgIChXZWJDb3JlOjpQb2ludExpZ2h0
U291cmNlOjplbmNvZGUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UG9pbnRMaWdodFNvdXJj
ZTo6ZGVjb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OlBvaW50TGlnaHRTb3VyY2U6OmNyZWF0ZSk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpQb2ludExpZ2h0U291cmNlOjpQb2ludExpZ2h0
U291cmNlKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1Nw
b3RMaWdodFNvdXJjZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTcG90TGlnaHRTb3VyY2U6OmNy
ZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpTcG90TGlnaHRTb3VyY2U6OlNwb3RMaWdodFNvdXJj
ZSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9TcG90TGlnaHRTb3VyY2Uu
aDoKKyAgICAgICAgKFdlYkNvcmU6OlNwb3RMaWdodFNvdXJjZTo6ZW5jb2RlIGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlNwb3RMaWdodFNvdXJjZTo6ZGVjb2RlKToKKyAgICAgICAgKFdlYkNv
cmU6OlNwb3RMaWdodFNvdXJjZTo6Y3JlYXRlKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OlNwb3RMaWdodFNvdXJjZTo6U3BvdExpZ2h0U291cmNlKTogRGVsZXRlZC4KKwogMjAyMS0xMi0w
OCAgU2FpZCBBYm91LUhhbGxhd2EgIDxzYWlkQGFwcGxlLmNvbT4KIAogICAgICAgICBbR1BVIFBy
b2Nlc3NdIFtGaWx0ZXJzXSBNYWtlIEZpbHRlcjo6YXBwbHkoKSBhbmQgRmlsdGVyRWZmZWN0OmFw
cGx5KCkgdGFrZSBGaWx0ZXJJbWFnZVZlY3RvciBmb3IgdGhlIGlucHV0cwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21h
a2UKaW5kZXggYzhiNjEyMzU1ZmNjMGZhMDY3NDlkNzAxY2Q0MWNkMWZlZWM0OGJkYS4uMmVlZGQ2
MzI3YjdlNGUxYWY5YTk0MGQ2NzI2NjMwNWM4Mzk1ZjYzYyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBA
IC0xNTc0LDYgKzE1NzQsNyBAQCBzZXQoV2ViQ29yZV9QUklWQVRFX0ZSQU1FV09SS19IRUFERVJT
CiAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9jdi9JbWFnZVRyYW5zZmVyU2Vzc2lvblZULmgKIAor
ICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRGlzdGFudExpZ2h0U291cmNlLmgKICAgICBw
bGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQmxlbmQuaAogICAgIHBsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvRkVDb2xvck1hdHJpeC5oCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9G
RUNvbXBvbmVudFRyYW5zZmVyLmgKQEAgLTE2MDEsOCArMTYwMiwxMCBAQCBzZXQoV2ViQ29yZV9Q
UklWQVRFX0ZSQU1FV09SS19IRUFERVJTCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9G
aWx0ZXJPcGVyYXRpb24uaAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRmlsdGVyT3Bl
cmF0aW9ucy5oCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9MaWdodFNvdXJjZS5oCisg
ICAgcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9Qb2ludExpZ2h0U291cmNlLmgKICAgICBwbGF0
Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1NvdXJjZUFscGhhLmgKICAgICBwbGF0Zm9ybS9ncmFwaGlj
cy9maWx0ZXJzL1NvdXJjZUdyYXBoaWMuaAorICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
U3BvdExpZ2h0U291cmNlLmgKIAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL2lzby9JU09Cb3guaAog
ICAgIHBsYXRmb3JtL2dyYXBoaWNzL2lzby9JU09PcmlnaW5hbEZvcm1hdEJveC5oCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMWU5
NmVlNjU3MmFhNDI1ODU5ZGQxZWU5MzAzMmU2ODlmYjBiODU1MS4uYzRkNGJlZDJiZDliZTRhM2Y1
MjA5YjgzODhhMTA2Njg2MWViZjZmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjczMSw3ICsyNzMxLDcgQEAKIAkJODQ1RTcy
RjgwRkQyNjFFRTAwQTg3RDc5IC8qIEZpbHRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gODQ1RTcyRjcwRkQyNjFFRTAwQTg3RDc5IC8qIEZpbHRlci5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTg0NUU3
MkZDMEZEMjYyMzkwMEE4N0Q3OSAvKiBTVkdGaWx0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0NUU3MkZBMEZEMjYyMzkwMEE4N0Q3OSAvKiBTVkdG
aWx0ZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owog
CQk4NDY1MEU3RTIzODdBRDdEMDA2MjY2RTIgLyogTWVkaWFRdWVyeUxpc3RFdmVudC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ2NTBFN0MyMzg3QUQ3
QzAwNjI2NkUyIC8qIE1lZGlhUXVlcnlMaXN0RXZlbnQuaCAqLzsgfTsKLQkJODQ3MzBENzcxMjQ4
RjBCMzAwRDNBOUM5IC8qIERpc3RhbnRMaWdodFNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ3MzBENUExMjQ4RjBCMzAwRDNBOUM5IC8qIERp
c3RhbnRMaWdodFNvdXJjZS5oICovOyB9OworCQk4NDczMEQ3NzEyNDhGMEIzMDBEM0E5QzkgLyog
RGlzdGFudExpZ2h0U291cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4NDczMEQ1QTEyNDhGMEIzMDBEM0E5QzkgLyogRGlzdGFudExpZ2h0U291cmNl
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJODQ3
MzBENzkxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFQ29udm9sdmVNYXRyaXguaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0NzMwRDVDMTI0OEYwQjMwMEQzQTlD
OSAvKiBGRUNvbnZvbHZlTWF0cml4LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKIAkJODQ3MzBEN0IxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFRGlmZnVzZUxp
Z2h0aW5nLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4
NDczMEQ1RTEyNDhGMEIzMDBEM0E5QzkgLyogRkVEaWZmdXNlTGlnaHRpbmcuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk4NDczMEQ3RDEyNDhGMEIz
MDBEM0E5QzkgLyogRkVEaXNwbGFjZW1lbnRNYXAuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0NzMwRDYwMTI0OEYwQjMwMEQzQTlDOSAvKiBGRURpc3Bs
YWNlbWVudE1hcC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CkBAIC0yNzQ0LDggKzI3NDQsOCBAQAogCQk4NDczMEQ4QjEyNDhGMEIzMDBEM0E5QzkgLyog
RkVUaWxlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4
NDczMEQ2RTEyNDhGMEIzMDBEM0E5QzkgLyogRkVUaWxlLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJODQ3MzBEOEQxMjQ4RjBCMzAwRDNBOUM5IC8q
IEZFVHVyYnVsZW5jZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gODQ3MzBENzAxMjQ4RjBCMzAwRDNBOUM5IC8qIEZFVHVyYnVsZW5jZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTg0NzMwRDkxMTI0OEYw
QjMwMEQzQTlDOSAvKiBMaWdodFNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gODQ3MzBENzQxMjQ4RjBCMzAwRDNBOUM5IC8qIExpZ2h0U291cmNl
LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJODQ3
MzBEOTIxMjQ4RjBCMzAwRDNBOUM5IC8qIFBvaW50TGlnaHRTb3VyY2UuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0NzMwRDc1MTI0OEYwQjMwMEQzQTlD
OSAvKiBQb2ludExpZ2h0U291cmNlLmggKi87IH07Ci0JCTg0NzMwRDkzMTI0OEYwQjMwMEQzQTlD
OSAvKiBTcG90TGlnaHRTb3VyY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDg0NzMwRDc2MTI0OEYwQjMwMEQzQTlDOSAvKiBTcG90TGlnaHRTb3VyY2Uu
aCAqLzsgfTsKKwkJODQ3MzBEOTIxMjQ4RjBCMzAwRDNBOUM5IC8qIFBvaW50TGlnaHRTb3VyY2Uu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0NzMwRDc1
MTI0OEYwQjMwMEQzQTlDOSAvKiBQb2ludExpZ2h0U291cmNlLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJODQ3MzBEOTMxMjQ4RjBCMzAwRDNBOUM5
IC8qIFNwb3RMaWdodFNvdXJjZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gODQ3MzBENzYxMjQ4RjBCMzAwRDNBOUM5IC8qIFNwb3RMaWdodFNvdXJjZS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTg0NzZD
OUU2MTFERjZBMEIwMDU1NUIwMiAvKiBTVkdQYXRoU2VnTGlzdEJ1aWxkZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg0NzZDOUU0MTFERjZBMEIwMDU1
NUIwMiAvKiBTVkdQYXRoU2VnTGlzdEJ1aWxkZXIuaCAqLzsgfTsKIAkJODQ3NkM5RUIxMURGNkEy
OTAwNTU1QjAyIC8qIFNWR1BhdGhCdWlsZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA4NDc2QzlFODExREY2QTI5MDA1NTVCMDIgLyogU1ZHUGF0aEJ1
aWxkZXIuaCAqLzsgfTsKIAkJODQ3NkM5RUMxMURGNkEyOTAwNTU1QjAyIC8qIFNWR1BhdGhDb25z
dW1lci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODQ3
NkM5RTkxMURGNkEyOTAwNTU1QjAyIC8qIFNWR1BhdGhDb25zdW1lci5oICovOyB9OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9EaXN0YW50TGln
aHRTb3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9E
aXN0YW50TGlnaHRTb3VyY2UuY3BwCmluZGV4IDBiNWJiYzRlYmE1NzY4Y2NmYTkyYzhiMjA5NmE3
Y2IzZDk5YjhkMGQuLjY1NWVlNTY0Y2UzNWI4YjU1MTAyZWE2YTcyODEwZjFlYTUyYjE4NjggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRGlzdGFu
dExpZ2h0U291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0Rpc3RhbnRMaWdodFNvdXJjZS5jcHAKQEAgLTM1LDYgKzM1LDE4IEBACiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAorUmVmPERpc3RhbnRMaWdodFNvdXJjZT4gRGlzdGFudExpZ2h0U291
cmNlOjpjcmVhdGUoZmxvYXQgYXppbXV0aCwgZmxvYXQgZWxldmF0aW9uKQoreworICAgIHJldHVy
biBhZG9wdFJlZigqbmV3IERpc3RhbnRMaWdodFNvdXJjZShhemltdXRoLCBlbGV2YXRpb24pKTsK
K30KKworRGlzdGFudExpZ2h0U291cmNlOjpEaXN0YW50TGlnaHRTb3VyY2UoZmxvYXQgYXppbXV0
aCwgZmxvYXQgZWxldmF0aW9uKQorICAgIDogTGlnaHRTb3VyY2UoTFNfRElTVEFOVCkKKyAgICAs
IG1fYXppbXV0aChhemltdXRoKQorICAgICwgbV9lbGV2YXRpb24oZWxldmF0aW9uKQoreworfQor
CiB2b2lkIERpc3RhbnRMaWdodFNvdXJjZTo6aW5pdFBhaW50aW5nRGF0YShjb25zdCBGaWx0ZXIm
LCBjb25zdCBGaWx0ZXJJbWFnZSYsIFBhaW50aW5nRGF0YSYgcGFpbnRpbmdEYXRhKSBjb25zdAog
ewogICAgIGZsb2F0IGF6aW11dGggPSBkZWcycmFkKG1fYXppbXV0aCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0Rpc3RhbnRMaWdodFNvdXJj
ZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9EaXN0YW50TGln
aHRTb3VyY2UuaAppbmRleCBiZWRhNTA1ZjI4Mjk5M2E4ZWNlOTk5NDgyMzVkZTIyZmIwNWM2Zjkz
Li4wNjYwMTQzZmMxY2Y4MWRmMWMzMDMxZGJjMDM5YWFlYzJjYzQ4NTRmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0Rpc3RhbnRMaWdodFNvdXJj
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRGlzdGFu
dExpZ2h0U291cmNlLmgKQEAgLTI5LDEwICsyOSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
Y2xhc3MgRGlzdGFudExpZ2h0U291cmNlIDogcHVibGljIExpZ2h0U291cmNlIHsKIHB1YmxpYzoK
LSAgICBzdGF0aWMgUmVmPERpc3RhbnRMaWdodFNvdXJjZT4gY3JlYXRlKGZsb2F0IGF6aW11dGgs
IGZsb2F0IGVsZXZhdGlvbikKLSAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IERp
c3RhbnRMaWdodFNvdXJjZShhemltdXRoLCBlbGV2YXRpb24pKTsKLSAgICB9CisgICAgV0VCQ09S
RV9FWFBPUlQgc3RhdGljIFJlZjxEaXN0YW50TGlnaHRTb3VyY2U+IGNyZWF0ZShmbG9hdCBhemlt
dXRoLCBmbG9hdCBlbGV2YXRpb24pOwogCiAgICAgLy8gVGhlc2UgYXJlIGluIGRlZ3JlZXMuCiAg
ICAgZmxvYXQgYXppbXV0aCgpIGNvbnN0IHsgcmV0dXJuIG1fYXppbXV0aDsgfQpAQCAtNDYsMTgg
KzQzLDM5IEBAIHB1YmxpYzoKIAogICAgIFdURjo6VGV4dFN0cmVhbSYgZXh0ZXJuYWxSZXByZXNl
bnRhdGlvbihXVEY6OlRleHRTdHJlYW0mKSBjb25zdCBvdmVycmlkZTsKIAorICAgIHRlbXBsYXRl
PGNsYXNzIEVuY29kZXI+IHZvaWQgZW5jb2RlKEVuY29kZXImKSBjb25zdDsKKyAgICB0ZW1wbGF0
ZTxjbGFzcyBEZWNvZGVyPiBzdGF0aWMgc3RkOjpvcHRpb25hbDxSZWY8RGlzdGFudExpZ2h0U291
cmNlPj4gZGVjb2RlKERlY29kZXImKTsKKwogcHJpdmF0ZToKLSAgICBEaXN0YW50TGlnaHRTb3Vy
Y2UoZmxvYXQgYXppbXV0aCwgZmxvYXQgZWxldmF0aW9uKQotICAgICAgICA6IExpZ2h0U291cmNl
KExTX0RJU1RBTlQpCi0gICAgICAgICwgbV9hemltdXRoKGF6aW11dGgpCi0gICAgICAgICwgbV9l
bGV2YXRpb24oZWxldmF0aW9uKQotICAgIHsKLSAgICB9CisgICAgRGlzdGFudExpZ2h0U291cmNl
KGZsb2F0IGF6aW11dGgsIGZsb2F0IGVsZXZhdGlvbik7CiAKICAgICBmbG9hdCBtX2F6aW11dGg7
CiAgICAgZmxvYXQgbV9lbGV2YXRpb247CiB9OwogCit0ZW1wbGF0ZTxjbGFzcyBFbmNvZGVyPgor
dm9pZCBEaXN0YW50TGlnaHRTb3VyY2U6OmVuY29kZShFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAor
eworICAgIGVuY29kZXIgPDwgbV9hemltdXRoOworICAgIGVuY29kZXIgPDwgbV9lbGV2YXRpb247
Cit9CisKK3RlbXBsYXRlPGNsYXNzIERlY29kZXI+CitzdGQ6Om9wdGlvbmFsPFJlZjxEaXN0YW50
TGlnaHRTb3VyY2U+PiBEaXN0YW50TGlnaHRTb3VyY2U6OmRlY29kZShEZWNvZGVyJiBkZWNvZGVy
KQoreworICAgIHN0ZDo6b3B0aW9uYWw8ZmxvYXQ+IGF6aW11dGg7CisgICAgZGVjb2RlciA+PiBh
emltdXRoOworICAgIGlmICghYXppbXV0aCkKKyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsK
KworICAgIHN0ZDo6b3B0aW9uYWw8ZmxvYXQ+IGVsZXZhdGlvbjsKKyAgICBkZWNvZGVyID4+IGVs
ZXZhdGlvbjsKKyAgICBpZiAoIWVsZXZhdGlvbikKKyAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9w
dDsKKworICAgIHJldHVybiBEaXN0YW50TGlnaHRTb3VyY2U6OmNyZWF0ZSgqYXppbXV0aCwgKmVs
ZXZhdGlvbik7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogU1BFQ0lBTElaRV9UWVBF
X1RSQUlUU19MSUdIVFNPVVJDRShEaXN0YW50TGlnaHRTb3VyY2UsIExTX0RJU1RBTlQpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFRGlmZnVz
ZUxpZ2h0aW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
RkVEaWZmdXNlTGlnaHRpbmcuY3BwCmluZGV4IGI4ZjFhY2Q1ZmI4N2RlNGE0YzllNWYwNmNlOGEy
YzYyNjllZjk0MjIuLjIwZDAxM2M4NTNmMTEyMGI0YmJmNzgwZGZmMWY1MDg4NGI5MmYwMWQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVEaWZm
dXNlTGlnaHRpbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Zp
bHRlcnMvRkVEaWZmdXNlTGlnaHRpbmcuY3BwCkBAIC0yOSw2ICsyOSwxMSBAQAogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKK1JlZjxGRURpZmZ1c2VMaWdodGluZz4gRkVEaWZmdXNlTGlnaHRpbmc6
OmNyZWF0ZShjb25zdCBDb2xvciYgbGlnaHRpbmdDb2xvciwgZmxvYXQgc3VyZmFjZVNjYWxlLCBm
bG9hdCBkaWZmdXNlQ29uc3RhbnQsIGZsb2F0LCBmbG9hdCwgZmxvYXQga2VybmVsVW5pdExlbmd0
aFgsIGZsb2F0IGtlcm5lbFVuaXRMZW5ndGhZLCBSZWY8TGlnaHRTb3VyY2U+JiYgbGlnaHRTb3Vy
Y2UpCit7CisgICAgcmV0dXJuIGNyZWF0ZShsaWdodGluZ0NvbG9yLCBzdXJmYWNlU2NhbGUsIGRp
ZmZ1c2VDb25zdGFudCwga2VybmVsVW5pdExlbmd0aFgsIGtlcm5lbFVuaXRMZW5ndGhZLCBXVEZN
b3ZlKGxpZ2h0U291cmNlKSk7Cit9CisKIFJlZjxGRURpZmZ1c2VMaWdodGluZz4gRkVEaWZmdXNl
TGlnaHRpbmc6OmNyZWF0ZShjb25zdCBDb2xvciYgbGlnaHRpbmdDb2xvciwgZmxvYXQgc3VyZmFj
ZVNjYWxlLCBmbG9hdCBkaWZmdXNlQ29uc3RhbnQsIGZsb2F0IGtlcm5lbFVuaXRMZW5ndGhYLCBm
bG9hdCBrZXJuZWxVbml0TGVuZ3RoWSwgUmVmPExpZ2h0U291cmNlPiYmIGxpZ2h0U291cmNlKQog
ewogICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZFRGlmZnVzZUxpZ2h0aW5nKGxpZ2h0aW5nQ29s
b3IsIHN1cmZhY2VTY2FsZSwgZGlmZnVzZUNvbnN0YW50LCBrZXJuZWxVbml0TGVuZ3RoWCwga2Vy
bmVsVW5pdExlbmd0aFksIFdURk1vdmUobGlnaHRTb3VyY2UpKSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFRGlmZnVzZUxpZ2h0aW5nLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFRGlmZnVzZUxpZ2h0
aW5nLmgKaW5kZXggMjI3YWY4ZTIxZjIyNmNiNTRkYWY1NWMyODUwNDY4MTRkM2JhOTBlYS4uYjJk
ZjJkMTUxY2YwZDAzY2Y1NTkwMDVhM2ZiMjQyYzI2NjdhZTczMiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRURpZmZ1c2VMaWdodGluZy5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVEaWZmdXNlTGln
aHRpbmcuaApAQCAtMzAsNiArMzAsNyBAQCBjbGFzcyBMaWdodFNvdXJjZTsKIAogY2xhc3MgRkVE
aWZmdXNlTGlnaHRpbmcgOiBwdWJsaWMgRkVMaWdodGluZyB7CiBwdWJsaWM6CisgICAgV0VCQ09S
RV9FWFBPUlQgc3RhdGljIFJlZjxGRURpZmZ1c2VMaWdodGluZz4gY3JlYXRlKGNvbnN0IENvbG9y
JiBsaWdodGluZ0NvbG9yLCBmbG9hdCBzdXJmYWNlU2NhbGUsIGZsb2F0IGRpZmZ1c2VDb25zdGFu
dCwgZmxvYXQsIGZsb2F0LCBmbG9hdCBrZXJuZWxVbml0TGVuZ3RoWCwgZmxvYXQga2VybmVsVW5p
dExlbmd0aFksIFJlZjxMaWdodFNvdXJjZT4mJik7CiAgICAgc3RhdGljIFJlZjxGRURpZmZ1c2VM
aWdodGluZz4gY3JlYXRlKGNvbnN0IENvbG9yJiBsaWdodGluZ0NvbG9yLCBmbG9hdCBzdXJmYWNl
U2NhbGUsIGZsb2F0IGRpZmZ1c2VDb25zdGFudCwgZmxvYXQga2VybmVsVW5pdExlbmd0aFgsIGZs
b2F0IGtlcm5lbFVuaXRMZW5ndGhZLCBSZWY8TGlnaHRTb3VyY2U+JiYpOwogCiAgICAgZmxvYXQg
ZGlmZnVzZUNvbnN0YW50KCkgY29uc3QgeyByZXR1cm4gbV9kaWZmdXNlQ29uc3RhbnQ7IH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVMaWdo
dGluZy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUxpZ2h0
aW5nLmgKaW5kZXggMzFjMmFhYWJkM2M1YjE4YzBkY2I2MDIxOTg5YjFhMGIxNmQ3NzEwZi4uY2M4
YjZkYTFlN2RmZmUzN2E3NGIzZDNhODU2NWZlZDMyZGRjMDhkYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUxpZ2h0aW5nLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUxpZ2h0aW5nLmgKQEAgLTI4
LDggKzI4LDEwIEBACiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIkNvbG9yLmgiCisjaW5jbHVk
ZSAiRGlzdGFudExpZ2h0U291cmNlLmgiCiAjaW5jbHVkZSAiRmlsdGVyRWZmZWN0LmgiCi0jaW5j
bHVkZSAiTGlnaHRTb3VyY2UuaCIKKyNpbmNsdWRlICJQb2ludExpZ2h0U291cmNlLmgiCisjaW5j
bHVkZSAiU3BvdExpZ2h0U291cmNlLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtOTAs
NyArOTIsMTkgQEAgdm9pZCBGRUxpZ2h0aW5nOjplbmNvZGUoRW5jb2RlciYgZW5jb2RlcikgY29u
c3QKICAgICBlbmNvZGVyIDw8IG1fc3BlY3VsYXJFeHBvbmVudDsKICAgICBlbmNvZGVyIDw8IG1f
a2VybmVsVW5pdExlbmd0aFg7CiAgICAgZW5jb2RlciA8PCBtX2tlcm5lbFVuaXRMZW5ndGhZOwot
ICAgIC8vIEZJWE1FOiBlbmNvZGUgbV9saWdodFNvdXJjZS4KKyAgICAKKyAgICBlbmNvZGVyIDw8
IG1fbGlnaHRTb3VyY2UtPnR5cGUoKTsKKyAgICBzd2l0Y2ggKG1fbGlnaHRTb3VyY2UtPnR5cGUo
KSkgeworICAgIGNhc2UgTFNfRElTVEFOVDoKKyAgICAgICAgZG93bmNhc3Q8RGlzdGFudExpZ2h0
U291cmNlPihtX2xpZ2h0U291cmNlLmdldCgpKS5lbmNvZGUoZW5jb2Rlcik7CisgICAgICAgIGJy
ZWFrOworICAgIGNhc2UgTFNfUE9JTlQ6CisgICAgICAgIGRvd25jYXN0PFBvaW50TGlnaHRTb3Vy
Y2U+KG1fbGlnaHRTb3VyY2UuZ2V0KCkpLmVuY29kZShlbmNvZGVyKTsKKyAgICAgICAgYnJlYWs7
CisgICAgY2FzZSBMU19TUE9UOgorICAgICAgICBkb3duY2FzdDxTcG90TGlnaHRTb3VyY2U+KG1f
bGlnaHRTb3VyY2UuZ2V0KCkpLmVuY29kZShlbmNvZGVyKTsKKyAgICAgICAgYnJlYWs7CisgICAg
fQogfQogCiB0ZW1wbGF0ZTxjbGFzcyBEZWNvZGVyLCBjbGFzcyBDbGFzc05hbWU+CkBAIC0xMzEs
OCArMTQ1LDI4IEBAIHN0ZDo6b3B0aW9uYWw8UmVmPENsYXNzTmFtZT4+IEZFTGlnaHRpbmc6OmRl
Y29kZShEZWNvZGVyJiBkZWNvZGVyKQogICAgIGlmICgha2VybmVsVW5pdExlbmd0aFkpCiAgICAg
ICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CiAKLSAgICAvLyBGSVhNRTogZGVjb2RlIG1fbGlnaHRT
b3VyY2UuCi0gICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKKyAgICBzdGQ6Om9wdGlvbmFsPExpZ2h0
VHlwZT4gbGlnaHRTb3VyY2VUeXBlOworICAgIGRlY29kZXIgPj4gbGlnaHRTb3VyY2VUeXBlOwor
ICAgIGlmICghbGlnaHRTb3VyY2VUeXBlKQorICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0Owor
CisgICAgc3RkOjpvcHRpb25hbDxSZWY8TGlnaHRTb3VyY2U+PiBsaWdodFNvdXJjZTsKKyAgICBz
d2l0Y2ggKCpsaWdodFNvdXJjZVR5cGUpIHsKKyAgICBjYXNlIExTX0RJU1RBTlQ6CisgICAgICAg
IGxpZ2h0U291cmNlID0gRGlzdGFudExpZ2h0U291cmNlOjpkZWNvZGUoZGVjb2Rlcik7CisgICAg
ICAgIGJyZWFrOworICAgIGNhc2UgTFNfUE9JTlQ6CisgICAgICAgIGxpZ2h0U291cmNlID0gUG9p
bnRMaWdodFNvdXJjZTo6ZGVjb2RlKGRlY29kZXIpOworICAgICAgICBicmVhazsKKyAgICBjYXNl
IExTX1NQT1Q6CisgICAgICAgIGxpZ2h0U291cmNlID0gU3BvdExpZ2h0U291cmNlOjpkZWNvZGUo
ZGVjb2Rlcik7CisgICAgICAgIGJyZWFrOworICAgIH0KKworICAgIGlmICghbGlnaHRTb3VyY2Up
CisgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisKKyAgICByZXR1cm4gQ2xhc3NOYW1lOjpj
cmVhdGUoKmxpZ2h0aW5nQ29sb3IsICpzdXJmYWNlU2NhbGUsICpkaWZmdXNlQ29uc3RhbnQsICpz
cGVjdWxhckNvbnN0YW50LCAqc3BlY3VsYXJFeHBvbmVudCwgKmtlcm5lbFVuaXRMZW5ndGhYLCAq
a2VybmVsVW5pdExlbmd0aFksIFdURk1vdmUoKmxpZ2h0U291cmNlKSk7CiB9CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2ZpbHRlcnMvRkVTcGVjdWxhckxpZ2h0aW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVTcGVjdWxhckxpZ2h0aW5nLmNwcAppbmRleCA2ZTQyZDM0
OWZjMTRjZjg2MzMzMmNjYmM3MTQ5MGY1YTU3YzVjYzBmLi45ODQ5MmQ4MmYwYTRkYWI3OGMzNDQz
Mjg0M2FkOTA1ZTdiY2Q1MDM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9maWx0ZXJzL0ZFU3BlY3VsYXJMaWdodGluZy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRVNwZWN1bGFyTGlnaHRpbmcuY3BwCkBAIC0y
OSw2ICsyOSwxMSBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK1JlZjxGRVNwZWN1bGFyTGln
aHRpbmc+IEZFU3BlY3VsYXJMaWdodGluZzo6Y3JlYXRlKGNvbnN0IENvbG9yJiBsaWdodGluZ0Nv
bG9yLCBmbG9hdCBzdXJmYWNlU2NhbGUsIGZsb2F0LCBmbG9hdCBzcGVjdWxhckNvbnN0YW50LCBm
bG9hdCBzcGVjdWxhckV4cG9uZW50LCBmbG9hdCBrZXJuZWxVbml0TGVuZ3RoWCwgZmxvYXQga2Vy
bmVsVW5pdExlbmd0aFksIFJlZjxMaWdodFNvdXJjZT4mJiBsaWdodFNvdXJjZSkKK3sKKyAgICBy
ZXR1cm4gY3JlYXRlKGxpZ2h0aW5nQ29sb3IsIHN1cmZhY2VTY2FsZSwgc3BlY3VsYXJDb25zdGFu
dCwgc3BlY3VsYXJFeHBvbmVudCwga2VybmVsVW5pdExlbmd0aFgsIGtlcm5lbFVuaXRMZW5ndGhZ
LCBXVEZNb3ZlKGxpZ2h0U291cmNlKSk7Cit9CisKIFJlZjxGRVNwZWN1bGFyTGlnaHRpbmc+IEZF
U3BlY3VsYXJMaWdodGluZzo6Y3JlYXRlKGNvbnN0IENvbG9yJiBsaWdodGluZ0NvbG9yLCBmbG9h
dCBzdXJmYWNlU2NhbGUsIGZsb2F0IHNwZWN1bGFyQ29uc3RhbnQsIGZsb2F0IHNwZWN1bGFyRXhw
b25lbnQsIGZsb2F0IGtlcm5lbFVuaXRMZW5ndGhYLCBmbG9hdCBrZXJuZWxVbml0TGVuZ3RoWSwg
UmVmPExpZ2h0U291cmNlPiYmIGxpZ2h0U291cmNlKQogewogICAgIHJldHVybiBhZG9wdFJlZigq
bmV3IEZFU3BlY3VsYXJMaWdodGluZyhsaWdodGluZ0NvbG9yLCBzdXJmYWNlU2NhbGUsIHNwZWN1
bGFyQ29uc3RhbnQsIHNwZWN1bGFyRXhwb25lbnQsIGtlcm5lbFVuaXRMZW5ndGhYLCBrZXJuZWxV
bml0TGVuZ3RoWSwgV1RGTW92ZShsaWdodFNvdXJjZSkpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVTcGVjdWxhckxpZ2h0aW5nLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFU3BlY3VsYXJMaWdodGlu
Zy5oCmluZGV4IGFhY2YwOTM5M2IzY2I5NTBiMGZkOWEyYjBiM2VhYjQ2Y2I5MTJhOTcuLjEyNGRi
M2NlZTBmOTExOTNjY2MyMjNhNzFjOWEzYWI3MzMwMzQ4ZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvRkVTcGVjdWxhckxpZ2h0aW5nLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRVNwZWN1bGFyTGln
aHRpbmcuaApAQCAtMjgsNiArMjgsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIEZF
U3BlY3VsYXJMaWdodGluZyA6IHB1YmxpYyBGRUxpZ2h0aW5nIHsKIHB1YmxpYzoKKyAgICBXRUJD
T1JFX0VYUE9SVCBzdGF0aWMgUmVmPEZFU3BlY3VsYXJMaWdodGluZz4gY3JlYXRlKGNvbnN0IENv
bG9yJiBsaWdodGluZ0NvbG9yLCBmbG9hdCBzdXJmYWNlU2NhbGUsIGZsb2F0LCBmbG9hdCBzcGVj
dWxhckNvbnN0YW50LCBmbG9hdCBzcGVjdWxhckV4cG9uZW50LCBmbG9hdCBrZXJuZWxVbml0TGVu
Z3RoWCwgZmxvYXQga2VybmVsVW5pdExlbmd0aFksIFJlZjxMaWdodFNvdXJjZT4mJik7CiAgICAg
c3RhdGljIFJlZjxGRVNwZWN1bGFyTGlnaHRpbmc+IGNyZWF0ZShjb25zdCBDb2xvciYgbGlnaHRp
bmdDb2xvciwgZmxvYXQgc3VyZmFjZVNjYWxlLCBmbG9hdCBzcGVjdWxhckNvbnN0YW50LCBmbG9h
dCBzcGVjdWxhckV4cG9uZW50LCBmbG9hdCBrZXJuZWxVbml0TGVuZ3RoWCwgZmxvYXQga2VybmVs
VW5pdExlbmd0aFksIFJlZjxMaWdodFNvdXJjZT4mJik7CiAKICAgICBmbG9hdCBzcGVjdWxhckNv
bnN0YW50KCkgY29uc3QgeyByZXR1cm4gbV9zcGVjdWxhckNvbnN0YW50OyB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0xpZ2h0U291cmNlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0xpZ2h0U291cmNlLmgK
aW5kZXggNWVkMjdhYjJlZTBmNzM3NzdmN2JlYmE4ZGU3ZTdiYzgyOTdkNzdmNC4uOTQ2ZDJkZTQ2
YWRjZTU5ZDU2NTA5ZjA2NGUzOTJkMmYzODFjNDE1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9MaWdodFNvdXJjZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvTGlnaHRTb3VyY2UuaApAQCAtOTMsNiAr
OTMsMjAgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCituYW1lc3BhY2Ug
V1RGIHsKKwordGVtcGxhdGU8PiBzdHJ1Y3QgRW51bVRyYWl0czxXZWJDb3JlOjpMaWdodFR5cGU+
IHsKKyAgICB1c2luZyB2YWx1ZXMgPSBFbnVtVmFsdWVzPAorICAgICAgICBXZWJDb3JlOjpMaWdo
dFR5cGUsCisKKyAgICAgICAgV2ViQ29yZTo6TFNfRElTVEFOVCwKKyAgICAgICAgV2ViQ29yZTo6
TFNfUE9JTlQsCisgICAgICAgIFdlYkNvcmU6OkxTX1NQT1QKKyAgICA+OworfTsKKworfSAvLyBu
YW1lc3BhY2UgV1RGCisKICNkZWZpbmUgU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19MSUdIVFNPVVJD
RShDbGFzc05hbWUsIFR5cGUpIFwKIFNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29y
ZTo6Q2xhc3NOYW1lKSBcCiAgICAgc3RhdGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6Okxp
Z2h0U291cmNlJiBzb3VyY2UpIHsgcmV0dXJuIHNvdXJjZS50eXBlKCkgPT0gV2ViQ29yZTo6VHlw
ZTsgfSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL1BvaW50TGlnaHRTb3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZmlsdGVycy9Qb2ludExpZ2h0U291cmNlLmNwcAppbmRleCAwZTZjMmNiMTFiODMyYTQxNmQy
ZDIyMzViYTUwNGZhMzM3OTMxODEwLi5lZWQ3OTVmZGZlMWI2NmQxYTg0Y2RjNWUzNmZhNzQwNzM0
YWI3OWUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL1BvaW50TGlnaHRTb3VyY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvUG9pbnRMaWdodFNvdXJjZS5jcHAKQEAgLTM4LDYgKzM4LDE3IEBACiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorUmVmPFBvaW50TGlnaHRTb3VyY2U+IFBvaW50TGlnaHRT
b3VyY2U6OmNyZWF0ZShjb25zdCBGbG9hdFBvaW50M0QmIHBvc2l0aW9uKQoreworICAgIHJldHVy
biBhZG9wdFJlZigqbmV3IFBvaW50TGlnaHRTb3VyY2UocG9zaXRpb24pKTsKK30KKworUG9pbnRM
aWdodFNvdXJjZTo6UG9pbnRMaWdodFNvdXJjZShjb25zdCBGbG9hdFBvaW50M0QmIHBvc2l0aW9u
KQorICAgIDogTGlnaHRTb3VyY2UoTFNfUE9JTlQpCisgICAgLCBtX3VzZXJTcGFjZVBvc2l0aW9u
KHBvc2l0aW9uKQoreworfQorCiB2b2lkIFBvaW50TGlnaHRTb3VyY2U6OmluaXRQYWludGluZ0Rh
dGEoY29uc3QgRmlsdGVyJiBmaWx0ZXIsIGNvbnN0IEZpbHRlckltYWdlJiByZXN1bHQsIFBhaW50
aW5nRGF0YSYpIGNvbnN0CiB7CiAgICAgYXV0byBhYnNvbHV0ZVBvc2l0aW9uID0gZmlsdGVyLnNj
YWxlZEJ5RmlsdGVyU2NhbGUobV91c2VyU3BhY2VQb3NpdGlvbi54eSgpKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvUG9pbnRMaWdodFNvdXJj
ZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9Qb2ludExpZ2h0
U291cmNlLmgKaW5kZXggMjM1NTkxMzhiODg0YjNmZTcyMGI3ZGM4ZjAxNzdhYzVmOWNkMmU4ZC4u
NWM5YzdmYjc4M2U2NmU3MWY1ZjI5YjhmNThjOTIwOGYyNTMzZGZjZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9Qb2ludExpZ2h0U291cmNlLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9Qb2ludExpZ2h0
U291cmNlLmgKQEAgLTMwLDEwICszMCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3Mg
UG9pbnRMaWdodFNvdXJjZSA6IHB1YmxpYyBMaWdodFNvdXJjZSB7CiBwdWJsaWM6Ci0gICAgc3Rh
dGljIFJlZjxQb2ludExpZ2h0U291cmNlPiBjcmVhdGUoY29uc3QgRmxvYXRQb2ludDNEJiBwb3Np
dGlvbikKLSAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFBvaW50TGlnaHRTb3Vy
Y2UocG9zaXRpb24pKTsKLSAgICB9CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJlZjxQb2lu
dExpZ2h0U291cmNlPiBjcmVhdGUoY29uc3QgRmxvYXRQb2ludDNEJiBwb3NpdGlvbik7CiAKICAg
ICBjb25zdCBGbG9hdFBvaW50M0QmIHBvc2l0aW9uKCkgY29uc3QgeyByZXR1cm4gbV91c2VyU3Bh
Y2VQb3NpdGlvbjsgfQogICAgIGJvb2wgc2V0WChmbG9hdCkgb3ZlcnJpZGU7CkBAIC00NSwxNyAr
NDIsMzMgQEAgcHVibGljOgogCiAgICAgV1RGOjpUZXh0U3RyZWFtJiBleHRlcm5hbFJlcHJlc2Vu
dGF0aW9uKFdURjo6VGV4dFN0cmVhbSYpIGNvbnN0IG92ZXJyaWRlOwogCisgICAgdGVtcGxhdGU8
Y2xhc3MgRW5jb2Rlcj4gdm9pZCBlbmNvZGUoRW5jb2RlciYpIGNvbnN0OworICAgIHRlbXBsYXRl
PGNsYXNzIERlY29kZXI+IHN0YXRpYyBzdGQ6Om9wdGlvbmFsPFJlZjxQb2ludExpZ2h0U291cmNl
Pj4gZGVjb2RlKERlY29kZXImKTsKKwogcHJpdmF0ZToKLSAgICBQb2ludExpZ2h0U291cmNlKGNv
bnN0IEZsb2F0UG9pbnQzRCYgcG9zaXRpb24pCi0gICAgICAgIDogTGlnaHRTb3VyY2UoTFNfUE9J
TlQpCi0gICAgICAgICwgbV91c2VyU3BhY2VQb3NpdGlvbihwb3NpdGlvbikKLSAgICB7Ci0gICAg
fQorICAgIFBvaW50TGlnaHRTb3VyY2UoY29uc3QgRmxvYXRQb2ludDNEJiBwb3NpdGlvbik7CiAK
ICAgICBGbG9hdFBvaW50M0QgbV91c2VyU3BhY2VQb3NpdGlvbjsKICAgICBtdXRhYmxlIEZsb2F0
UG9pbnQzRCBtX2J1ZmZlclBvc2l0aW9uOwogfTsKIAordGVtcGxhdGU8Y2xhc3MgRW5jb2Rlcj4K
K3ZvaWQgUG9pbnRMaWdodFNvdXJjZTo6ZW5jb2RlKEVuY29kZXImIGVuY29kZXIpIGNvbnN0Cit7
CisgICAgZW5jb2RlciA8PCBtX3VzZXJTcGFjZVBvc2l0aW9uOworfQorCit0ZW1wbGF0ZTxjbGFz
cyBEZWNvZGVyPgorc3RkOjpvcHRpb25hbDxSZWY8UG9pbnRMaWdodFNvdXJjZT4+IFBvaW50TGln
aHRTb3VyY2U6OmRlY29kZShEZWNvZGVyJiBkZWNvZGVyKQoreworICAgIHN0ZDo6b3B0aW9uYWw8
RmxvYXRQb2ludDNEPiB1c2VyU3BhY2VQb3NpdGlvbjsKKyAgICBkZWNvZGVyID4+IHVzZXJTcGFj
ZVBvc2l0aW9uOworICAgIGlmICghdXNlclNwYWNlUG9zaXRpb24pCisgICAgICAgIHJldHVybiBz
dGQ6Om51bGxvcHQ7CisKKyAgICByZXR1cm4gUG9pbnRMaWdodFNvdXJjZTo6Y3JlYXRlKCp1c2Vy
U3BhY2VQb3NpdGlvbik7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogU1BFQ0lBTEla
RV9UWVBFX1RSQUlUU19MSUdIVFNPVVJDRShQb2ludExpZ2h0U291cmNlLCBMU19QT0lOVCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvU3BvdExp
Z2h0U291cmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMv
U3BvdExpZ2h0U291cmNlLmNwcAppbmRleCBmNmI2MmRjMjYyNWY5ZjU1ZDMxMTEzOWVlNDVjYTUx
NGIzYTYyZTU3Li4wNzRiZDkzNzIxZDhmNTc3ZTkxNDFiZWFiNzAwMDE5NGVlNDRjYjhiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL1Nwb3RMaWdo
dFNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVy
cy9TcG90TGlnaHRTb3VyY2UuY3BwCkBAIC00Myw2ICs0MywyMCBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAvLyBhY2NvcmRpbmcgdG8gdGhlIFNWRyAxLjEgU0UgbGlnaHQgcmVncmVzc2lvbiB0ZXN0
cwogc3RhdGljIGNvbnN0IGZsb2F0IGFudGlhbGlhc1RocmVzaG9sZCA9IDAuMDE2ZjsKIAorUmVm
PFNwb3RMaWdodFNvdXJjZT4gU3BvdExpZ2h0U291cmNlOjpjcmVhdGUoY29uc3QgRmxvYXRQb2lu
dDNEJiBwb3NpdGlvbiwgY29uc3QgRmxvYXRQb2ludDNEJiBkaXJlY3Rpb24sIGZsb2F0IHNwZWN1
bGFyRXhwb25lbnQsIGZsb2F0IGxpbWl0aW5nQ29uZUFuZ2xlKQoreworICAgIHJldHVybiBhZG9w
dFJlZigqbmV3IFNwb3RMaWdodFNvdXJjZShwb3NpdGlvbiwgZGlyZWN0aW9uLCBzcGVjdWxhckV4
cG9uZW50LCBsaW1pdGluZ0NvbmVBbmdsZSkpOworfQorCitTcG90TGlnaHRTb3VyY2U6OlNwb3RM
aWdodFNvdXJjZShjb25zdCBGbG9hdFBvaW50M0QmIHBvc2l0aW9uLCBjb25zdCBGbG9hdFBvaW50
M0QmIGRpcmVjdGlvbiwgZmxvYXQgc3BlY3VsYXJFeHBvbmVudCwgZmxvYXQgbGltaXRpbmdDb25l
QW5nbGUpCisgICAgOiBMaWdodFNvdXJjZShMU19TUE9UKQorICAgICwgbV91c2VyU3BhY2VQb3Np
dGlvbihwb3NpdGlvbikKKyAgICAsIG1fdXNlclNwYWNlUG9pbnRzQXQoZGlyZWN0aW9uKQorICAg
ICwgbV9zcGVjdWxhckV4cG9uZW50KHNwZWN1bGFyRXhwb25lbnQpCisgICAgLCBtX2xpbWl0aW5n
Q29uZUFuZ2xlKGxpbWl0aW5nQ29uZUFuZ2xlKQoreworfQorCiB2b2lkIFNwb3RMaWdodFNvdXJj
ZTo6aW5pdFBhaW50aW5nRGF0YShjb25zdCBGaWx0ZXImIGZpbHRlciwgY29uc3QgRmlsdGVySW1h
Z2UmIHJlc3VsdCwgUGFpbnRpbmdEYXRhJiBwYWludGluZ0RhdGEpIGNvbnN0CiB7CiAgICAgYXV0
byBhYnNvbHV0ZVBvc2l0aW9uID0gZmlsdGVyLnNjYWxlZEJ5RmlsdGVyU2NhbGUobV91c2VyU3Bh
Y2VQb3NpdGlvbi54eSgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZpbHRlcnMvU3BvdExpZ2h0U291cmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9maWx0ZXJzL1Nwb3RMaWdodFNvdXJjZS5oCmluZGV4IGViYzYzNDk3YmMxOTA3
ZGNmZjI3YjE4MGE2NGNhMmRiMzA2MjY4NGQuLjA0ZTMzMWVjNGVjMDhhZDBiM2NjNWE4MDFkNWNj
ZDI3ZTU5NjI0ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvU3BvdExpZ2h0U291cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZmlsdGVycy9TcG90TGlnaHRTb3VyY2UuaApAQCAtMzAsMTEgKzMwLDcgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBTcG90TGlnaHRTb3VyY2UgOiBwdWJsaWMgTGlnaHRT
b3VyY2UgewogcHVibGljOgotICAgIHN0YXRpYyBSZWY8U3BvdExpZ2h0U291cmNlPiBjcmVhdGUo
Y29uc3QgRmxvYXRQb2ludDNEJiBwb3NpdGlvbiwKLSAgICAgICAgY29uc3QgRmxvYXRQb2ludDNE
JiBkaXJlY3Rpb24sIGZsb2F0IHNwZWN1bGFyRXhwb25lbnQsIGZsb2F0IGxpbWl0aW5nQ29uZUFu
Z2xlKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgU3BvdExpZ2h0U291cmNl
KHBvc2l0aW9uLCBkaXJlY3Rpb24sIHNwZWN1bGFyRXhwb25lbnQsIGxpbWl0aW5nQ29uZUFuZ2xl
KSk7Ci0gICAgfQorICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBSZWY8U3BvdExpZ2h0U291cmNl
PiBjcmVhdGUoY29uc3QgRmxvYXRQb2ludDNEJiBwb3NpdGlvbiwgY29uc3QgRmxvYXRQb2ludDNE
JiBkaXJlY3Rpb24sIGZsb2F0IHNwZWN1bGFyRXhwb25lbnQsIGZsb2F0IGxpbWl0aW5nQ29uZUFu
Z2xlKTsKIAogICAgIGNvbnN0IEZsb2F0UG9pbnQzRCYgcG9zaXRpb24oKSBjb25zdCB7IHJldHVy
biBtX3VzZXJTcGFjZVBvc2l0aW9uOyB9CiAgICAgY29uc3QgRmxvYXRQb2ludDNEJiBkaXJlY3Rp
b24oKSBjb25zdCB7IHJldHVybiBtX3VzZXJTcGFjZVBvaW50c0F0OyB9CkBAIC01NiwxNSArNTIs
MTEgQEAgcHVibGljOgogCiAgICAgV1RGOjpUZXh0U3RyZWFtJiBleHRlcm5hbFJlcHJlc2VudGF0
aW9uKFdURjo6VGV4dFN0cmVhbSYpIGNvbnN0IG92ZXJyaWRlOwogCisgICAgdGVtcGxhdGU8Y2xh
c3MgRW5jb2Rlcj4gdm9pZCBlbmNvZGUoRW5jb2RlciYpIGNvbnN0OworICAgIHRlbXBsYXRlPGNs
YXNzIERlY29kZXI+IHN0YXRpYyBzdGQ6Om9wdGlvbmFsPFJlZjxTcG90TGlnaHRTb3VyY2U+PiBk
ZWNvZGUoRGVjb2RlciYpOworCiBwcml2YXRlOgotICAgIFNwb3RMaWdodFNvdXJjZShjb25zdCBG
bG9hdFBvaW50M0QmIHBvc2l0aW9uLCBjb25zdCBGbG9hdFBvaW50M0QmIGRpcmVjdGlvbiwgZmxv
YXQgc3BlY3VsYXJFeHBvbmVudCwgZmxvYXQgbGltaXRpbmdDb25lQW5nbGUpCi0gICAgICAgIDog
TGlnaHRTb3VyY2UoTFNfU1BPVCkKLSAgICAgICAgLCBtX3VzZXJTcGFjZVBvc2l0aW9uKHBvc2l0
aW9uKQotICAgICAgICAsIG1fdXNlclNwYWNlUG9pbnRzQXQoZGlyZWN0aW9uKQotICAgICAgICAs
IG1fc3BlY3VsYXJFeHBvbmVudChzcGVjdWxhckV4cG9uZW50KQotICAgICAgICAsIG1fbGltaXRp
bmdDb25lQW5nbGUobGltaXRpbmdDb25lQW5nbGUpCi0gICAgewotICAgIH0KKyAgICBTcG90TGln
aHRTb3VyY2UoY29uc3QgRmxvYXRQb2ludDNEJiBwb3NpdGlvbiwgY29uc3QgRmxvYXRQb2ludDNE
JiBkaXJlY3Rpb24sIGZsb2F0IHNwZWN1bGFyRXhwb25lbnQsIGZsb2F0IGxpbWl0aW5nQ29uZUFu
Z2xlKTsKIAogICAgIEZsb2F0UG9pbnQzRCBtX3VzZXJTcGFjZVBvc2l0aW9uOwogICAgIEZsb2F0
UG9pbnQzRCBtX3VzZXJTcGFjZVBvaW50c0F0OwpAQCAtNzUsNiArNjcsNDEgQEAgcHJpdmF0ZToK
ICAgICBmbG9hdCBtX2xpbWl0aW5nQ29uZUFuZ2xlOwogfTsKIAordGVtcGxhdGU8Y2xhc3MgRW5j
b2Rlcj4KK3ZvaWQgU3BvdExpZ2h0U291cmNlOjplbmNvZGUoRW5jb2RlciYgZW5jb2RlcikgY29u
c3QKK3sKKyAgICBlbmNvZGVyIDw8IG1fdXNlclNwYWNlUG9zaXRpb247CisgICAgZW5jb2RlciA8
PCBtX3VzZXJTcGFjZVBvaW50c0F0OworICAgIGVuY29kZXIgPDwgbV9zcGVjdWxhckV4cG9uZW50
OworICAgIGVuY29kZXIgPDwgbV9saW1pdGluZ0NvbmVBbmdsZTsKK30KKwordGVtcGxhdGU8Y2xh
c3MgRGVjb2Rlcj4KK3N0ZDo6b3B0aW9uYWw8UmVmPFNwb3RMaWdodFNvdXJjZT4+IFNwb3RMaWdo
dFNvdXJjZTo6ZGVjb2RlKERlY29kZXImIGRlY29kZXIpCit7CisgICAgc3RkOjpvcHRpb25hbDxG
bG9hdFBvaW50M0Q+IHVzZXJTcGFjZVBvc2l0aW9uOworICAgIGRlY29kZXIgPj4gdXNlclNwYWNl
UG9zaXRpb247CisgICAgaWYgKCF1c2VyU3BhY2VQb3NpdGlvbikKKyAgICAgICAgcmV0dXJuIHN0
ZDo6bnVsbG9wdDsKKworICAgIHN0ZDo6b3B0aW9uYWw8RmxvYXRQb2ludDNEPiB1c2VyU3BhY2VQ
b2ludHNBdDsKKyAgICBkZWNvZGVyID4+IHVzZXJTcGFjZVBvaW50c0F0OworICAgIGlmICghdXNl
clNwYWNlUG9pbnRzQXQpCisgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisKKyAgICBzdGQ6
Om9wdGlvbmFsPGZsb2F0PiBzcGVjdWxhckV4cG9uZW50OworICAgIGRlY29kZXIgPj4gc3BlY3Vs
YXJFeHBvbmVudDsKKyAgICBpZiAoIXNwZWN1bGFyRXhwb25lbnQpCisgICAgICAgIHJldHVybiBz
dGQ6Om51bGxvcHQ7CisKKyAgICBzdGQ6Om9wdGlvbmFsPGZsb2F0PiBsaW1pdGluZ0NvbmVBbmds
ZTsKKyAgICBkZWNvZGVyID4+IGxpbWl0aW5nQ29uZUFuZ2xlOworICAgIGlmICghbGltaXRpbmdD
b25lQW5nbGUpCisgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CisKKyAgICByZXR1cm4gU3Bv
dExpZ2h0U291cmNlOjpjcmVhdGUoKnVzZXJTcGFjZVBvc2l0aW9uLCAqdXNlclNwYWNlUG9pbnRz
QXQsICpzcGVjdWxhckV4cG9uZW50LCAqbGltaXRpbmdDb25lQW5nbGUpOworfQorCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCiAKIFNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfTElHSFRTT1VSQ0UoU3Bv
dExpZ2h0U291cmNlLCBMU19TUE9UKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>