<?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>223909</bug_id>
          
          <creation_ts>2021-03-29 18:46:34 -0700</creation_ts>
          <short_desc>Limit the number of buttons shown in media controls</short_desc>
          <delta_ts>2021-04-01 08:06:15 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Devin Rousso">hi</reporter>
          <assigned_to name="Devin Rousso">hi</assigned_to>
          <cc>calvaris</cc>
    
    <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>graouts</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>hi</cc>
    
    <cc>jer.noble</cc>
    
    <cc>joepeck</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1745010</commentid>
    <comment_count>0</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2021-03-29 18:46:34 -0700</bug_when>
    <thetext>When in fullscreen, it&apos;s possible to have five different buttons showing at once in the area to the right of the Play button:
 - AirPlay
 - Enter Picture in Picture
 - Audio/Languages
 - Exit Full Screen
 - More...
This is kinda busy/overkill, especially now that we have a mechanism for collapsing controls into a contextmenu (via the overflow button).

This will match AVKit behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1745011</commentid>
    <comment_count>1</comment_count>
      <attachid>424609</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2021-03-29 18:53:46 -0700</bug_when>
    <thetext>Created attachment 424609
[Patch] test for EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1745101</commentid>
    <comment_count>2</comment_count>
      <attachid>424609</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2021-03-30 06:47:36 -0700</bug_when>
    <thetext>Comment on attachment 424609
[Patch] test for EWS

r=me once the bots are ok with the changes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1745798</commentid>
    <comment_count>3</comment_count>
      <attachid>424824</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2021-03-31 15:03:10 -0700</bug_when>
    <thetext>Created attachment 424824
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1746024</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-01 08:05:29 -0700</bug_when>
    <thetext>Committed r275358: &lt;https://commits.webkit.org/r275358&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 424824.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1746026</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-04-01 08:06:15 -0700</bug_when>
    <thetext>&lt;rdar://problem/76103920&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>424609</attachid>
            <date>2021-03-29 18:53:46 -0700</date>
            <delta_ts>2021-03-31 15:03:10 -0700</delta_ts>
            <desc>[Patch] test for EWS</desc>
            <filename>223909.diff</filename>
            <type>text/plain</type>
            <size>13856</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA2MjY5MTY5MGNjYTAuLjNhZTYzYzUzYzNjMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDQxIEBACisyMDIxLTAzLTI5ICBEZXZpbiBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNv
bT4KKworICAgICAgICBMaW1pdCB0aGUgbnVtYmVyIG9mIGJ1dHRvbnMgc2hvd24gaW4gbWVkaWEg
Y29udHJvbHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIyMzkwOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFdoZW4gaW4gZnVsbHNjcmVlbiwgaXQncyBwb3NzaWJsZSB0byBoYXZlIGZpdmUgZGlmZmVyZW50
IGJ1dHRvbnMgdG8gdGhlIHJpZ2h0IG9mICJQbGF5IjoKKyAgICAgICAgIC0gQWlyUGxheQorICAg
ICAgICAgLSBFbnRlciBQaWN0dXJlIGluIFBpY3R1cmUKKyAgICAgICAgIC0gQXVkaW8vTGFuZ3Vh
Z2VzCisgICAgICAgICAtIEV4aXQgRnVsbCBTY3JlZW4KKyAgICAgICAgIC0gTW9yZS4uLgorICAg
ICAgICBUaGlzIHR1cm5zIHRoZSBVSSBpbnRvIHNvbWV0aGluZyBvZiBhbiAiaWNvbiBzb3VwIiBh
bmQgc2hvdWxkIHJlYWxseSBiZSBhdm9pZGVkLCBlc3BlY2lhbGx5CisgICAgICAgIG5vdyB0aGF0
IGBPdmVyZmxvd0J1dHRvbmAgYWxsb3dzIGZvciBhIHNpbmdsZSBidXR0b24gdG8gaGF2ZSBtdWx0
aXBsZSBhY3Rpb25zICh2aWEgYSBuYXRpdmUKKyAgICAgICAgY29udGV4dG1lbnUpLiBUaGlzIG1h
dGNoZXMgQVZLaXQgYmVoYXZpb3IuCisKKyAgICAgICAgKiBNb2R1bGVzL21vZGVybi1tZWRpYS1j
b250cm9scy9jb250cm9scy9pbmxpbmUtbWVkaWEtY29udHJvbHMuanM6CisgICAgICAgIChJbmxp
bmVNZWRpYUNvbnRyb2xzLnByb3RvdHlwZS5sYXlvdXQpOgorICAgICAgICAoSW5saW5lTWVkaWFD
b250cm9scy5wcm90b3R5cGUuX2Ryb3BwYWJsZUJ1dHRvbnMpOgorICAgICAgICAoSW5saW5lTWVk
aWFDb250cm9scy5wcm90b3R5cGUuX2NvbGxhcHNhYmxlQnV0dG9ucyk6IEFkZGVkLgorICAgICAg
ICAqIE1vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL21hY29zLWZ1bGxzY3Jl
ZW4tbWVkaWEtY29udHJvbHMuanM6CisgICAgICAgIChNYWNPU0Z1bGxzY3JlZW5NZWRpYUNvbnRy
b2xzKToKKyAgICAgICAgKE1hY09TRnVsbHNjcmVlbk1lZGlhQ29udHJvbHMucHJvdG90eXBlLmxh
eW91dCk6CisgICAgICAgIChNYWNPU0Z1bGxzY3JlZW5NZWRpYUNvbnRyb2xzLnByb3RvdHlwZS5f
Y29sbGFwc2FibGVCdXR0b25zKTogQWRkZWQuCisgICAgICAgIExpbWl0IHRoZSBudW1iZXIgb2Yg
YHZpc2libGVgIGJ1dHRvbnMgaW4gYHJpZ2h0Q29udGFpbmVyLmNoaWxkcmVuYCBieSBpdGVyYXRp
dmVseSBtYXJraW5nCisgICAgICAgIGBkcm9wcGVkID0gdHJ1ZWAgb24gYnV0dG9ucyB0aGF0IGFy
ZSBhbHNvIGluIGBfY29sbGFwc2FibGVCdXR0b25zYCB1bnRpbCBlaXRoZXIgdGhlcmUgYXJlCisg
ICAgICAgIG5vIGl0ZXJhdGlvbnMgbGVmdCAoYGkgPCAwYCkgb3IgdGhlIG51bWJlciBvZiB2aXNp
YmxlIGJ1dHRvbnMgaXMgYmVsb3cgdGhlIG1heGltdW0gKDIgZm9yCisgICAgICAgIGlubGluZSBh
bmQgMyBmb3IgZnVsbHNjcmVlbikuCisKKyAgICAgICAgKiBNb2R1bGVzL21vZGVybi1tZWRpYS1j
b250cm9scy9jb250cm9scy9waXAtYnV0dG9uLmpzOgorICAgICAgICAoUGlQQnV0dG9uLnByb3Rv
dHlwZS5nZXQgY29udGV4dE1lbnVPcHRpb25zKTogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy9t
ZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1l
ZGlhQ29udHJvbHNIb3N0OjpzaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KToKKyAgICAgICAg
QWRkIHN1cHBvcnQgZm9yIGBpbmNsdWRlUGljdHVyZUluUGljdHVyZWAgdG8gdGhlIG5hdGl2ZSBj
b250ZXh0bWVudS4KKworICAgICAgICAqIGVuLmxwcm9qL0xvY2FsaXphYmxlLnN0cmluZ3M6CisK
IDIwMjEtMDMtMjkgIEVyaWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+CiAKICAg
ICAgICAgW21hY09TXSBBZGQgcmVtb3RlIE1lZGlhU2Vzc2lvbkNvb3JkaW5hdG9yCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hv
c3QuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJv
bHNIb3N0LmNwcAppbmRleCA3NWRmMzY0MzgxMmMuLjZmZWJjNzZlODg4ZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9s
c0hvc3QuY3BwCkBAIC00NSw2ICs0NSw3IEBACiAjaW5jbHVkZSAiRmxvYXRSZWN0LmgiCiAjaW5j
bHVkZSAiSFRNTEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTWVkaWFFbGVtZW50LmgiCisjaW5j
bHVkZSAiSFRNTFZpZGVvRWxlbWVudC5oIgogI2luY2x1ZGUgIkxvY2FsaXplZFN0cmluZ3MuaCIK
ICNpbmNsdWRlICJMb2dnaW5nLmgiCiAjaW5jbHVkZSAiTWVkaWFDb250cm9sVGV4dFRyYWNrQ29u
dGFpbmVyRWxlbWVudC5oIgpAQCAtNTUsNiArNTYsNyBAQAogI2luY2x1ZGUgIlJlbmRlclRoZW1l
LmgiCiAjaW5jbHVkZSAiVGV4dFRyYWNrLmgiCiAjaW5jbHVkZSAiVGV4dFRyYWNrTGlzdC5oIgor
I2luY2x1ZGUgIlVzZXJHZXN0dXJlSW5kaWNhdG9yLmgiCiAjaW5jbHVkZSAiVm9pZENhbGxiYWNr
LmgiCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNDSlNWYWx1ZUlubGluZXMuaD4KICNpbmNs
dWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KQEAgLTUwMCw3ICs1MDIsMTggQEAgYm9vbCBN
ZWRpYUNvbnRyb2xzSG9zdDo6c2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudShIVE1MRWxlbWVu
dCYgdGFyZ2V0LCBTdHJpbmcKICAgICBjb25zdGV4cHIgYXV0byBpbnZhbGlkTWVudUl0ZW1JZGVu
dGlmaWVyID0gQ29udGV4dE1lbnVJdGVtVGFnTm9BY3Rpb247CiAjZW5kaWYKIAotICAgIHVzaW5n
IE1lbnVEYXRhID0gVmFyaWFudDxSZWZQdHI8QXVkaW9UcmFjaz4sIFJlZlB0cjxUZXh0VHJhY2s+
IE1lZGlhQ29udHJvbHNIb3N0QWRkaXRpb25zX3Nob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnVf
TWVudURhdGE+OworI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKyAgICBlbnVt
IGNsYXNzIFBpY3R1cmVJblBpY3R1cmVUYWcgeyBJbmNsdWRlUGljdHVyZUluUGljdHVyZSB9Owor
I2VuZGlmIC8vIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKworICAgIHVzaW5nIE1l
bnVEYXRhID0gVmFyaWFudDwKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisg
ICAgICAgIFBpY3R1cmVJblBpY3R1cmVUYWcsCisjZW5kaWYgLy8gRU5BQkxFKFZJREVPX1BSRVNF
TlRBVElPTl9NT0RFKQorICAgICAgICBSZWZQdHI8QXVkaW9UcmFjaz4sCisgICAgICAgIFJlZlB0
cjxUZXh0VHJhY2s+CisgICAgICAgIE1lZGlhQ29udHJvbHNIb3N0QWRkaXRpb25zX3Nob3dNZWRp
YUNvbnRyb2xzQ29udGV4dE1lbnVfTWVudURhdGEKKyAgICA+OwogICAgIEhhc2hNYXA8TWVudUl0
ZW1JZGVudGlmaWVyLCBNZW51RGF0YT4gaWRNYXA7CiAKICAgICBhdXRvIGNyZWF0ZVN1Ym1lbnUg
PSBbXSAoY29uc3QgU3RyaW5nJiB0aXRsZSwgY29uc3QgU3RyaW5nJiBpY29uLCBWZWN0b3I8TWVu
dUl0ZW0+JiYgY2hpbGRyZW4pIC0+IE1lbnVJdGVtIHsKQEAgLTUxMiwxOSArNTI1LDI4IEBAIGJv
b2wgTWVkaWFDb250cm9sc0hvc3Q6OnNob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnUoSFRNTEVs
ZW1lbnQmIHRhcmdldCwgU3RyaW5nCiAjZW5kaWYKICAgICB9OwogCi0gICAgYXV0byBjcmVhdGVN
ZW51SXRlbSA9IFsmXSAoTWVudURhdGEgZGF0YSwgY29uc3QgU3RyaW5nJiB0aXRsZSwgYm9vbCBj
aGVja2VkID0gZmFsc2UpIC0+IE1lbnVJdGVtIHsKKyAgICBhdXRvIGNyZWF0ZU1lbnVJdGVtID0g
WyZdIChNZW51RGF0YSBkYXRhLCBjb25zdCBTdHJpbmcmIHRpdGxlLCBib29sIGNoZWNrZWQgPSBm
YWxzZSwgY29uc3QgU3RyaW5nJiBpY29uID0gbnVsbFN0cmluZygpKSAtPiBNZW51SXRlbSB7CiAg
ICAgICAgIGF1dG8gaWQgPSBpZE1hcC5zaXplKCkgKyAxOwogICAgICAgICBpZE1hcC5hZGQoaWQs
IGRhdGEpOwogCiAjaWYgVVNFKFVJQ09OVEVYVE1FTlUpCi0gICAgICAgIHJldHVybiB7IGlkLCB0
aXRsZSwgLyogaWNvbiAqLyBudWxsU3RyaW5nKCksIGNoZWNrZWQsIC8qIGNoaWxkcmVuICovIHsg
fSB9OworICAgICAgICByZXR1cm4geyBpZCwgdGl0bGUsIGljb24sIGNoZWNrZWQsIC8qIGNoaWxk
cmVuICovIHsgfSB9OwogI2VsaWYgRU5BQkxFKENPTlRFWFRfTUVOVVMpICYmIFVTRShBQ0NFU1NJ
QklMSVRZX0NPTlRFWFRfTUVOVVMpCisgICAgICAgIFVOVVNFRF9QQVJBTShpY29uKTsKICAgICAg
ICAgcmV0dXJuIHsgQ2hlY2thYmxlQWN0aW9uVHlwZSwgc3RhdGljX2Nhc3Q8Q29udGV4dE1lbnVB
Y3Rpb24+KENvbnRleHRNZW51SXRlbUJhc2VDdXN0b21UYWcgKyBpZCksIHRpdGxlLCAvKiBlbmFi
bGVkICovIHRydWUsIGNoZWNrZWQgfTsKICNlbmRpZgogICAgIH07CiAKICAgICBWZWN0b3I8TWVu
dUl0ZW0+IGl0ZW1zOwogCisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQorICAg
IGlmIChvcHRpb25zSlNPTk9iamVjdC0+Z2V0Qm9vbGVhbigiaW5jbHVkZVBpY3R1cmVJblBpY3R1
cmUiX3MpLnZhbHVlT3IoZmFsc2UpKSB7CisgICAgICAgIEFTU0VSVChpczxIVE1MVmlkZW9FbGVt
ZW50PihtZWRpYUVsZW1lbnQpKTsKKyAgICAgICAgQVNTRVJUKGRvd25jYXN0PEhUTUxWaWRlb0Vs
ZW1lbnQ+KG1lZGlhRWxlbWVudCkud2Via2l0U3VwcG9ydHNQcmVzZW50YXRpb25Nb2RlKEhUTUxW
aWRlb0VsZW1lbnQ6OlZpZGVvUHJlc2VudGF0aW9uTW9kZTo6UGljdHVyZUluUGljdHVyZSkpOwor
ICAgICAgICBpdGVtcy5hcHBlbmQoY3JlYXRlTWVudUl0ZW0oUGljdHVyZUluUGljdHVyZVRhZzo6
SW5jbHVkZVBpY3R1cmVJblBpY3R1cmUsIFdFQl9VSV9TVFJJTkdfS0VZKCJQaWN0dXJlIGluIFBp
Y3R1cmUiLCAiUGljdHVyZSBpbiBQaWN0dXJlIChNZWRpYSBDb250cm9scyBNZW51KSIsICJQaWN0
dXJlIGluIFBpY3R1cmUgbWVkaWEgY29udHJvbHMgY29udGV4dCBtZW51IHRpdGxlIiksIGZhbHNl
LCAicGlwLmVudGVyIl9zKSk7CisgICAgfQorI2VuZGlmIC8vIEVOQUJMRShWSURFT19QUkVTRU5U
QVRJT05fTU9ERSkKKwogICAgIGlmIChvcHRpb25zSlNPTk9iamVjdC0+Z2V0Qm9vbGVhbigiaW5j
bHVkZUxhbmd1YWdlcyJfcykudmFsdWVPcihmYWxzZSkpIHsKICAgICAgICAgaWYgKGF1dG8qIGF1
ZGlvVHJhY2tzID0gbWVkaWFFbGVtZW50LmF1ZGlvVHJhY2tzKCk7IGF1ZGlvVHJhY2tzICYmIGF1
ZGlvVHJhY2tzLT5sZW5ndGgoKSA+IDEpIHsKICAgICAgICAgICAgIFZlY3RvcjxNZW51SXRlbT4g
bGFuZ3VhZ2VNZW51SXRlbXM7CkBAIC02MDEsOCArNjIzLDE2IEBAIGJvb2wgTWVkaWFDb250cm9s
c0hvc3Q6OnNob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnUoSFRNTEVsZW1lbnQmIHRhcmdldCwg
U3RyaW5nCiAKICAgICAgICAgYXV0byYgbWVkaWFFbGVtZW50ID0gKndlYWtNZWRpYUVsZW1lbnQ7
CiAKKyAgICAgICAgVXNlckdlc3R1cmVJbmRpY2F0b3IgZ2VzdHVyZUluZGljYXRvcihQcm9jZXNz
aW5nVXNlckdlc3R1cmUsICZtZWRpYUVsZW1lbnQuZG9jdW1lbnQoKSk7CisKICAgICAgICAgYXV0
byBzZWxlY3RlZEl0ZW0gPSBpZE1hcC5nZXQoc2VsZWN0ZWRJdGVtSUQpOwogICAgICAgICBXVEY6
OnN3aXRjaE9uKHNlbGVjdGVkSXRlbSwKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01P
REUpCisgICAgICAgICAgICBbJl0gKFBpY3R1cmVJblBpY3R1cmVUYWcpIHsKKyAgICAgICAgICAg
ICAgICAvLyBNZWRpYSBjb250cm9scyBhcmUgbm90IHNob3duIHdoZW4gaW4gUGlQIHNvIHdlIGNh
biBhc3N1bWUgdGhhdCB3ZSdyZSBub3QgaW4gUGlQLgorICAgICAgICAgICAgICAgIGRvd25jYXN0
PEhUTUxWaWRlb0VsZW1lbnQ+KG1lZGlhRWxlbWVudCkud2Via2l0U2V0UHJlc2VudGF0aW9uTW9k
ZShIVE1MVmlkZW9FbGVtZW50OjpWaWRlb1ByZXNlbnRhdGlvbk1vZGU6OlBpY3R1cmVJblBpY3R1
cmUpOworICAgICAgICAgICAgfSwKKyNlbmRpZiAvLyBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9O
X01PREUpCiAgICAgICAgICAgICBbJl0gKFJlZlB0cjxBdWRpb1RyYWNrPiYgc2VsZWN0ZWRBdWRp
b1RyYWNrKSB7CiAgICAgICAgICAgICAgICAgZm9yIChhdXRvJiB0cmFjayA6IGlkTWFwLnZhbHVl
cygpKSB7CiAgICAgICAgICAgICAgICAgICAgIGlmIChhdXRvKiBhdWRpb1RyYWNrID0gV1RGOjpn
ZXRfaWY8UmVmUHRyPEF1ZGlvVHJhY2s+Pih0cmFjaykpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9pbmxpbmUtbWVkaWEt
Y29udHJvbHMuanMgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9s
cy9jb250cm9scy9pbmxpbmUtbWVkaWEtY29udHJvbHMuanMKaW5kZXggMTY3ZjkyYjNmZWVmLi40
NjNjZGRmZmNiZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1l
ZGlhLWNvbnRyb2xzL2NvbnRyb2xzL2lubGluZS1tZWRpYS1jb250cm9scy5qcworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9pbmxpbmUt
bWVkaWEtY29udHJvbHMuanMKQEAgLTE4NCw2ICsxODQsMTggQEAgY2xhc3MgSW5saW5lTWVkaWFD
b250cm9scyBleHRlbmRzIE1lZGlhQ29udHJvbHMKICAgICAgICAgICAgICAgICB0aGlzLm92ZXJm
bG93QnV0dG9uLmFkZENvbnRleHRNZW51T3B0aW9ucyhidXR0b24uY29udGV4dE1lbnVPcHRpb25z
KTsKICAgICAgICAgfQogCisgICAgICAgIGxldCBjb2xsYXBzYWJsZUJ1dHRvbnMgPSB0aGlzLl9j
b2xsYXBzYWJsZUJ1dHRvbnMoKTsKKyAgICAgICAgbGV0IHNob3duUmlnaHRDb250YWluZXJCdXR0
b25zID0gdGhpcy5yaWdodENvbnRhaW5lci5jaGlsZHJlbi5maWx0ZXIoYnV0dG9uID0+IGJ1dHRv
bi5lbmFibGVkICYmICFidXR0b24uZHJvcHBlZCk7CisgICAgICAgIGNvbnN0IG1heGltdW1SaWdo
dENvbnRhaW5lckJ1dHRvbnMgPSAyOyAvLyBBbGxvdyBBaXJQbGF5IGFuZCBvdmVyZmxvdyBpZiBh
bGwgYnV0dG9ucyBhcmUgc2hvd24uCisgICAgICAgIGZvciAobGV0IGkgPSBzaG93blJpZ2h0Q29u
dGFpbmVyQnV0dG9ucy5sZW5ndGggLSAxOyBpID49IDAgJiYgc2hvd25SaWdodENvbnRhaW5lckJ1
dHRvbnMubGVuZ3RoID4gbWF4aW11bVJpZ2h0Q29udGFpbmVyQnV0dG9uczsgLS1pKSB7CisgICAg
ICAgICAgICBsZXQgYnV0dG9uID0gc2hvd25SaWdodENvbnRhaW5lckJ1dHRvbnNbaV07CisgICAg
ICAgICAgICBpZiAoIWNvbGxhcHNhYmxlQnV0dG9ucy5oYXMoYnV0dG9uKSkKKyAgICAgICAgICAg
ICAgICBjb250aW51ZTsKKworICAgICAgICAgICAgYnV0dG9uLmRyb3BwZWQgPSB0cnVlOworICAg
ICAgICAgICAgdGhpcy5vdmVyZmxvd0J1dHRvbi5hZGRDb250ZXh0TWVudU9wdGlvbnMoYnV0dG9u
LmNvbnRleHRNZW51T3B0aW9ucyk7CisgICAgICAgIH0KKwogICAgICAgICAvLyBVcGRhdGUgbGF5
b3V0cyBvbmNlIG1vcmUuCiAgICAgICAgIHRoaXMubGVmdENvbnRhaW5lci5sYXlvdXQoKTsKICAg
ICAgICAgdGhpcy5yaWdodENvbnRhaW5lci5sYXlvdXQoKTsKQEAgLTI2OSwxMyArMjgxLDI1IEBA
IGNsYXNzIElubGluZU1lZGlhQ29udHJvbHMgZXh0ZW5kcyBNZWRpYUNvbnRyb2xzCiAKICAgICBf
ZHJvcHBhYmxlQnV0dG9ucygpCiAgICAgewotICAgICAgICBpZiAodGhpcy5fc2hvdWxkVXNlU2lu
Z2xlQmFyTGF5b3V0KQotICAgICAgICAgICAgcmV0dXJuIFt0aGlzLnNraXBGb3J3YXJkQnV0dG9u
LCB0aGlzLnNraXBCYWNrQnV0dG9uLCB0aGlzLmFpcnBsYXlCdXR0b24sIHRoaXMudHJhY2tzQnV0
dG9uLCB0aGlzLnBpcEJ1dHRvbiwgdGhpcy5tdXRlQnV0dG9uLCB0aGlzLmZ1bGxzY3JlZW5CdXR0
b24sIHRoaXMub3ZlcmZsb3dCdXR0b25dOworICAgICAgICBsZXQgYnV0dG9ucyA9IHRoaXMuX2Nv
bGxhcHNhYmxlQnV0dG9ucygpOworICAgICAgICBidXR0b25zLmFkZCh0aGlzLnNraXBGb3J3YXJk
QnV0dG9uKTsKKyAgICAgICAgYnV0dG9ucy5hZGQodGhpcy5za2lwQmFja0J1dHRvbik7CisgICAg
ICAgIGlmICh0aGlzLl9zaG91bGRVc2VTaW5nbGVCYXJMYXlvdXQgfHwgdGhpcy5wcmVmZXJyZWRN
dXRlQnV0dG9uU3R5bGUgPT09IEJ1dHRvbi5TdHlsZXMuQmFyKQorICAgICAgICAgICAgYnV0dG9u
cy5hZGQodGhpcy5tdXRlQnV0dG9uKTsKKyAgICAgICAgYnV0dG9ucy5hZGQodGhpcy5haXJwbGF5
QnV0dG9uKTsKKyAgICAgICAgYnV0dG9ucy5hZGQodGhpcy5vdmVyZmxvd0J1dHRvbik7CisgICAg
ICAgIHJldHVybiBidXR0b25zOworICAgIH0KIAotICAgICAgICBjb25zdCBidXR0b25zID0gW3Ro
aXMuc2tpcEZvcndhcmRCdXR0b24sIHRoaXMuc2tpcEJhY2tCdXR0b24sIHRoaXMuYWlycGxheUJ1
dHRvbiwgdGhpcy50cmFja3NCdXR0b25dOwotICAgICAgICBpZiAodGhpcy5wcmVmZXJyZWRNdXRl
QnV0dG9uU3R5bGUgPT09IEJ1dHRvbi5TdHlsZXMuQmFyKQotICAgICAgICAgICAgYnV0dG9ucy5w
dXNoKHRoaXMubXV0ZUJ1dHRvbik7Ci0gICAgICAgIGJ1dHRvbnMucHVzaCh0aGlzLm92ZXJmbG93
QnV0dG9uKTsKKyAgICBfY29sbGFwc2FibGVCdXR0b25zKCkKKyAgICB7CisgICAgICAgIGxldCBi
dXR0b25zID0gbmV3IFNldChbCisgICAgICAgICAgICB0aGlzLnRyYWNrc0J1dHRvbiwKKyAgICAg
ICAgXSk7CisgICAgICAgIGlmICh0aGlzLl9zaG91bGRVc2VTaW5nbGVCYXJMYXlvdXQpIHsKKyAg
ICAgICAgICAgIGJ1dHRvbnMuYWRkKHRoaXMucGlwQnV0dG9uKTsKKyAgICAgICAgICAgIGJ1dHRv
bnMuYWRkKHRoaXMuZnVsbHNjcmVlbkJ1dHRvbik7CisgICAgICAgIH0KICAgICAgICAgcmV0dXJu
IGJ1dHRvbnM7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21v
ZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRy
b2xzLmpzIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29u
dHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250cm9scy5qcwppbmRleCBkMjlhMzJmODJh
NDUuLmY1YjQyMjlmOTg1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rl
cm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250cm9s
cy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9j
b250cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzLmpzCkBAIC0yMyw5ICsyMyw2
IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLWNvbnN0IEJ1dHRvbk1hcmdpbkZvclRocmVlQnV0
dG9uc09yTGVzcyA9IDI0OwotY29uc3QgQnV0dG9uTWFyZ2luRm9yRm91ckJ1dHRvbnMgPSAxNjsK
LWNvbnN0IEJ1dHRvbk1hcmdpbkZvckZpdmVCdXR0b25zID0gMTI7CiBjb25zdCBGdWxsc2NyZWVu
VGltZUNvbnRyb2xXaWR0aCA9IDQ0ODsKIAogY2xhc3MgTWFjT1NGdWxsc2NyZWVuTWVkaWFDb250
cm9scyBleHRlbmRzIE1lZGlhQ29udHJvbHMKQEAgLTY4LDcgKzY1LDggQEAgY2xhc3MgTWFjT1NG
dWxsc2NyZWVuTWVkaWFDb250cm9scyBleHRlbmRzIE1lZGlhQ29udHJvbHMKICAgICAgICAgICAg
IGNoaWxkcmVuOiBbdGhpcy5haXJwbGF5QnV0dG9uLCB0aGlzLnBpcEJ1dHRvbiwgdGhpcy50cmFj
a3NCdXR0b24sIHRoaXMuZnVsbHNjcmVlbkJ1dHRvbiwgdGhpcy5vdmVyZmxvd0J1dHRvbl0sCiAg
ICAgICAgICAgICBjc3NDbGFzc05hbWU6ICJyaWdodCIsCiAgICAgICAgICAgICBsZWZ0TWFyZ2lu
OiAxMiwKLSAgICAgICAgICAgIHJpZ2h0TWFyZ2luOiAxMgorICAgICAgICAgICAgcmlnaHRNYXJn
aW46IDEyLAorICAgICAgICAgICAgYnV0dG9uTWFyZ2luOiAyNAogICAgICAgICB9KTsKIAogICAg
ICAgICB0aGlzLmJvdHRvbUNvbnRyb2xzQmFyLmNoaWxkcmVuID0gW3RoaXMuX2xlZnRDb250YWlu
ZXIsIHRoaXMuX2NlbnRlckNvbnRhaW5lciwgdGhpcy5fcmlnaHRDb250YWluZXJdOwpAQCAtMTEx
LDE5ICsxMDksMjQgQEAgY2xhc3MgTWFjT1NGdWxsc2NyZWVuTWVkaWFDb250cm9scyBleHRlbmRz
IE1lZGlhQ29udHJvbHMKICAgICAgICAgaWYgKCF0aGlzLl9yaWdodENvbnRhaW5lcikKICAgICAg
ICAgICAgIHJldHVybjsKIAotICAgICAgICBjb25zdCBudW1iZXJPZkVuYWJsZWRCdXR0b25zID0g
dGhpcy5fcmlnaHRDb250YWluZXIuY2hpbGRyZW4uZmlsdGVyKGJ1dHRvbiA9PiBidXR0b24uZW5h
YmxlZCkubGVuZ3RoOwotCi0gICAgICAgIGxldCBidXR0b25NYXJnaW4gPSBCdXR0b25NYXJnaW5G
b3JGaXZlQnV0dG9uczsKLSAgICAgICAgaWYgKG51bWJlck9mRW5hYmxlZEJ1dHRvbnMgPT09IDQp
Ci0gICAgICAgICAgICBidXR0b25NYXJnaW4gPSBCdXR0b25NYXJnaW5Gb3JGb3VyQnV0dG9uczsK
LSAgICAgICAgZWxzZSBpZiAobnVtYmVyT2ZFbmFibGVkQnV0dG9ucyA8PSAzKQotICAgICAgICAg
ICAgYnV0dG9uTWFyZ2luID0gQnV0dG9uTWFyZ2luRm9yVGhyZWVCdXR0b25zT3JMZXNzOwotCi0g
ICAgICAgIHRoaXMuX3JpZ2h0Q29udGFpbmVyLmJ1dHRvbk1hcmdpbiA9IGJ1dHRvbk1hcmdpbjsK
KyAgICAgICAgdGhpcy5fcmlnaHRDb250YWluZXIuY2hpbGRyZW4uZm9yRWFjaChidXR0b24gPT4g
ZGVsZXRlIGJ1dHRvbi5kcm9wcGVkKQorICAgICAgICB0aGlzLm92ZXJmbG93QnV0dG9uLmNsZWFy
Q29udGV4dE1lbnVPcHRpb25zKCk7CiAKICAgICAgICAgdGhpcy5fbGVmdENvbnRhaW5lci52aXNp
YmxlID0gdGhpcy5tdXRlQnV0dG9uLmVuYWJsZWQ7CiAgICAgICAgIHRoaXMuX2xlZnRDb250YWlu
ZXIuY2hpbGRyZW4gPSB0aGlzLl92b2x1bWVDb250cm9sc0ZvckN1cnJlbnREaXJlY3Rpb24oKTsK
IAorICAgICAgICBsZXQgY29sbGFwc2FibGVCdXR0b25zID0gdGhpcy5fY29sbGFwc2FibGVCdXR0
b25zKCk7CisgICAgICAgIGxldCBzaG93blJpZ2h0Q29udGFpbmVyQnV0dG9ucyA9IHRoaXMuX3Jp
Z2h0Q29udGFpbmVyLmNoaWxkcmVuLmZpbHRlcihidXR0b24gPT4gYnV0dG9uLmVuYWJsZWQgJiYg
IWJ1dHRvbi5kcm9wcGVkKTsKKyAgICAgICAgY29uc3QgbWF4aW11bVJpZ2h0Q29udGFpbmVyQnV0
dG9ucyA9IDM7IC8vIEFsbG93IEFpclBsYXksIEV4aXQgRnVsbHNjcmVlbiwgYW5kIG92ZXJmbG93
IGlmIGFsbCBidXR0b25zIGFyZSBzaG93bi4KKyAgICAgICAgZm9yIChsZXQgaSA9IHNob3duUmln
aHRDb250YWluZXJCdXR0b25zLmxlbmd0aCAtIDE7IGkgPj0gMCAmJiBzaG93blJpZ2h0Q29udGFp
bmVyQnV0dG9ucy5sZW5ndGggPiBtYXhpbXVtUmlnaHRDb250YWluZXJCdXR0b25zOyAtLWkpIHsK
KyAgICAgICAgICAgIGxldCBidXR0b24gPSBzaG93blJpZ2h0Q29udGFpbmVyQnV0dG9uc1tpXTsK
KyAgICAgICAgICAgIGlmICghY29sbGFwc2FibGVCdXR0b25zLmhhcyhidXR0b24pKQorICAgICAg
ICAgICAgICAgIGNvbnRpbnVlOworCisgICAgICAgICAgICBidXR0b24uZHJvcHBlZCA9IHRydWU7
CisgICAgICAgICAgICB0aGlzLm92ZXJmbG93QnV0dG9uLmFkZENvbnRleHRNZW51T3B0aW9ucyhi
dXR0b24uY29udGV4dE1lbnVPcHRpb25zKTsKKyAgICAgICAgfQorCiAgICAgICAgIHRoaXMuX2xl
ZnRDb250YWluZXIubGF5b3V0KCk7CiAgICAgICAgIHRoaXMuX2NlbnRlckNvbnRhaW5lci5sYXlv
dXQoKTsKICAgICAgICAgdGhpcy5fcmlnaHRDb250YWluZXIubGF5b3V0KCk7CkBAIC0xNDcsNiAr
MTUwLDE0IEBAIGNsYXNzIE1hY09TRnVsbHNjcmVlbk1lZGlhQ29udHJvbHMgZXh0ZW5kcyBNZWRp
YUNvbnRyb2xzCiAgICAgICAgIHJldHVybiB0aGlzLnVzZXNMVFJVc2VySW50ZXJmYWNlTGF5b3V0
RGlyZWN0aW9uID8gW3RoaXMubXV0ZUJ1dHRvbiwgdGhpcy52b2x1bWVTbGlkZXJdIDogW3RoaXMu
dm9sdW1lU2xpZGVyLCB0aGlzLm11dGVCdXR0b25dOwogICAgIH0KIAorICAgIF9jb2xsYXBzYWJs
ZUJ1dHRvbnMoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIG5ldyBTZXQoWworICAgICAgICAgICAg
dGhpcy50cmFja3NCdXR0b24sCisgICAgICAgICAgICB0aGlzLnBpcEJ1dHRvbiwKKyAgICAgICAg
XSk7CisgICAgfQorCiAgICAgX2hhbmRsZU1vdXNlZG93bihldmVudCkKICAgICB7CiAgICAgICAg
IC8vIFdlIGRvbid0IGFsbG93IGRyYWdnaW5nIHdoZW4gdGhlIGludGVyYWN0aW9uIGlzIGluaXRp
YXRlZCBvbiBhbiBpbnRlcmFjdGl2ZSBlbGVtZW50LiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL3BpcC1idXR0b24uanMg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9w
aXAtYnV0dG9uLmpzCmluZGV4IGRlNWMyNzBjOWQyMC4uNzFiYjRhZjhmNjU0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9w
aXAtYnV0dG9uLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNv
bnRyb2xzL2NvbnRyb2xzL3BpcC1idXR0b24uanMKQEAgLTM1LDQgKzM1LDEzIEBAIGNsYXNzIFBp
UEJ1dHRvbiBleHRlbmRzIEJ1dHRvbgogICAgICAgICB9KTsKICAgICB9CiAKKyAgICAvLyBQdWJs
aWMKKworICAgIGdldCBjb250ZXh0TWVudU9wdGlvbnMoKQorICAgIHsKKyAgICAgICAgcmV0dXJu
IHsKKyAgICAgICAgICAgIGluY2x1ZGVQaWN0dXJlSW5QaWN0dXJlOiB0cnVlLAorICAgICAgICB9
OworICAgIH0KKwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZW4ubHByb2ovTG9jYWxp
emFibGUuc3RyaW5ncyBiL1NvdXJjZS9XZWJDb3JlL2VuLmxwcm9qL0xvY2FsaXphYmxlLnN0cmlu
Z3MKaW5kZXggNjA0NTIwZDI2MDVkLi4yNTkyOWExNGE4N2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2VuLmxwcm9qL0xvY2FsaXphYmxlLnN0cmluZ3MKKysrIGIvU291cmNlL1dlYkNvcmUv
ZW4ubHByb2ovTG9jYWxpemFibGUuc3RyaW5ncwpAQCAtNjYxLDYgKzY2MSw5IEBACiAvKiBGaWxl
IFVwbG9hZCBhbGVydCBzaGVldCBidXR0b24gc3RyaW5nIGZvciBjaG9vc2luZyBhbiBleGlzdGlu
ZyBtZWRpYSBpdGVtIGZyb20gdGhlIFBob3RvIExpYnJhcnkgKi8KICJQaG90byBMaWJyYXJ5IChm
aWxlIHVwbG9hZCBhY3Rpb24gc2hlZXQpIiA9ICJQaG90byBMaWJyYXJ5IjsKIAorLyogUGljdHVy
ZSBpbiBQaWN0dXJlIG1lZGlhIGNvbnRyb2xzIGNvbnRleHQgbWVudSB0aXRsZSAqLworIlBpY3R1
cmUgaW4gUGljdHVyZSAoTWVkaWEgQ29udHJvbHMgTWVudSkiID0gIlBpY3R1cmUgaW4gUGljdHVy
ZSI7CisKIC8qIE1lZGlhIFBsYXkgY29udGV4dCBtZW51IGl0ZW0gKi8KICJQbGF5IiA9ICJQbGF5
IjsKIAo=
</data>
<flag name="review"
          id="444324"
          type_id="1"
          status="+"
          setter="eric.carlson"
    />
    <flag name="commit-queue"
          id="444332"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>424824</attachid>
            <date>2021-03-31 15:03:10 -0700</date>
            <delta_ts>2021-04-01 08:05:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>223909.diff</filename>
            <type>text/plain</type>
            <size>46525</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAzNmNlYzJmMGVlNmYuLjQ1OWZmMjljNWY0OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBA
CisyMDIxLTAzLTMxICBEZXZpbiBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAgICAg
ICBMaW1pdCB0aGUgbnVtYmVyIG9mIGJ1dHRvbnMgc2hvd24gaW4gbWVkaWEgY29udHJvbHMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMzkwOQorCisg
ICAgICAgIFJldmlld2VkIGJ5IEVyaWMgQ2FybHNvbi4KKworICAgICAgICAqIG1lZGlhL21vZGVy
bi1tZWRpYS1jb250cm9scy9pb3MtaW5saW5lLW1lZGlhLWNvbnRyb2xzL2lvcy1pbmxpbmUtbWVk
aWEtZHJvcHBpbmctY29udHJvbHMuaHRtbDoKKyAgICAgICAgKiBtZWRpYS9tb2Rlcm4tbWVkaWEt
Y29udHJvbHMvaW9zLWlubGluZS1tZWRpYS1jb250cm9scy9pb3MtaW5saW5lLW1lZGlhLWRyb3Bw
aW5nLWNvbnRyb2xzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBtZWRpYS9tb2Rlcm4tbWVkaWEt
Y29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250cm9scy9tYWNvcy1mdWxsc2NyZWVu
LW1lZGlhLWNvbnRyb2xzLWJ1dHRvbnMtY29udGFpbmVycy1zdHlsZXMuaHRtbDoKKyAgICAgICAg
KiBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250
cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzLWJ1dHRvbnMtY29udGFpbmVycy1z
dHlsZXMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIG1lZGlhL21vZGVybi1tZWRpYS1jb250cm9s
cy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzL21hY29zLWZ1bGxzY3JlZW4tbWVkaWEt
Y29udHJvbHMtYnV0dG9ucy1zdHlsZXMuaHRtbDoKKyAgICAgICAgKiBtZWRpYS9tb2Rlcm4tbWVk
aWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250cm9scy9tYWNvcy1mdWxsc2Ny
ZWVuLW1lZGlhLWNvbnRyb2xzLWJ1dHRvbnMtc3R5bGVzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3MtaW5saW5lLW1lZGlhLWNvbnRyb2xz
L21hY29zLWlubGluZS1tZWRpYS1kcm9wcGluZy1jb250cm9scy5odG1sOgorICAgICAgICAqIG1l
ZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tYWNvcy1pbmxpbmUtbWVkaWEtY29udHJvbHMvbWFj
b3MtaW5saW5lLW1lZGlhLWRyb3BwaW5nLWNvbnRyb2xzLWV4cGVjdGVkLnR4dDoKKworICAgICAg
ICAqIG1lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNv
bnRyb2xzL21hY29zLWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMtY29uc3RydWN0b3IuaHRtbDoK
KyAgICAgICAgKiBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1t
ZWRpYS1jb250cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzLWNvbnN0cnVjdG9y
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFj
b3MtZnVsbHNjcmVlbi1tZWRpYS1jb250cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRy
b2xzLXJpZ2h0LWNvbnRhaW5lci1tYXJnaW4uaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBtZWRp
YS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250cm9scy9t
YWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzLXJpZ2h0LWNvbnRhaW5lci1tYXJnaW4tZXhw
ZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICBtYWNPUyBmdWxsc2NyZWVuIGNvbnRyb2xzIGRv
bid0IGFkanVzdCB0aGUgYGJ1dHRvbk1hcmdpbmAgYW55bW9yZSBhcyBidXR0b25zIGFyZSBtb3Zl
ZCBpbnRvCisgICAgICAgIHRoZSBvdmVyZmxvdyBtZW51IGluc3RlYWQuCisKKyAgICAgICAgKiBt
ZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvdHJhY2tzLXN1cHBvcnQvYXV0by10ZXh0LXRyYWNr
Lmh0bWw6CisgICAgICAgICogbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL3RyYWNrcy1zdXBw
b3J0L2NsaWNrLXRyYWNrLWluLWNvbnRleHRtZW51Lmh0bWw6CisgICAgICAgICogbWVkaWEvbW9k
ZXJuLW1lZGlhLWNvbnRyb2xzL3RyYWNrcy1zdXBwb3J0L2hpZGRlbi10cmFja3MuaHRtbDoKKyAg
ICAgICAgKiBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvdHJhY2tzLXN1cHBvcnQvb2ZmLXRl
eHQtdHJhY2suaHRtbDoKKyAgICAgICAgKiBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvdHJh
Y2tzLXN1cHBvcnQvc2hvdy1jb250ZXh0bWVudS10aGVuLWRvdWJsZS1jbGljay1vbi10cmFja3Mt
YnV0dG9uLmh0bWw6CisgICAgICAgICogbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL3RyYWNr
cy1zdXBwb3J0L3RleHQtdHJhY2stc2VsZWN0ZWQtdmlhLW1lZGlhLWFwaS5odG1sOgorICAgICAg
ICBPdmVycmlkZSB0aGUgZGVmYXVsdCBtYXhpbXVtIHJpZ2h0IGNvbnRhaW5lciBidXR0b24gY291
bnQgc28gdGhhdCB0aGUgdHJhY2tzIGJ1dHRvbiBpcyBzaG93bi4KKwogMjAyMS0wMy0zMCAgUm9i
ZXJ0IEplbm5lciAgPGplbm5lckBhcHBsZS5jb20+CiAKICAgICAgICAgWyBtYWNPUyBpT1MgXSBj
cnlwdG8vY3J5cHRvLXJhbmRvbS12YWx1ZXMtb29tLmh0bWwgaXMgYSBmbGFrZXkgdGltZW91dApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2lvcy1p
bmxpbmUtbWVkaWEtY29udHJvbHMvaW9zLWlubGluZS1tZWRpYS1kcm9wcGluZy1jb250cm9scy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvaW9z
LWlubGluZS1tZWRpYS1jb250cm9scy9pb3MtaW5saW5lLW1lZGlhLWRyb3BwaW5nLWNvbnRyb2xz
LWV4cGVjdGVkLnR4dAppbmRleCBhZjYyYWEyZTgxNjYuLjEzYmVhZDcyOTNlOSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2lvcy1pbmxpbmUtbWVk
aWEtY29udHJvbHMvaW9zLWlubGluZS1tZWRpYS1kcm9wcGluZy1jb250cm9scy1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2lvcy1pbmxp
bmUtbWVkaWEtY29udHJvbHMvaW9zLWlubGluZS1tZWRpYS1kcm9wcGluZy1jb250cm9scy1leHBl
Y3RlZC50eHQKQEAgLTUsMTAgKzUsMTQgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUKIAogUEFT
UyByZWFkeSgpIGJlY2FtZSB0cnVlCiAKLVNraXBGb3J3YXJkQnV0dG9uIHdhcyBkcm9wcGVkIGF0
IDM4NC4KLVNraXBCYWNrQnV0dG9uIHdhcyBkcm9wcGVkIGF0IDM1NS4KLUFpcnBsYXlCdXR0b24g
d2FzIGRyb3BwZWQgYXQgMzI2LgotVHJhY2tzQnV0dG9uIHdhcyBkcm9wcGVkIGF0IDI5NC4KK1Ry
YWNrc0J1dHRvbiB3YXMgZHJvcHBlZCBhdCA2ODEuCitQaVBCdXR0b24gd2FzIGRyb3BwZWQgYXQg
NjgxLgorU2tpcEZvcndhcmRCdXR0b24gd2FzIGRyb3BwZWQgYXQgNDUzLgorU2tpcEJhY2tCdXR0
b24gd2FzIGRyb3BwZWQgYXQgNDI0LgorTXV0ZUJ1dHRvbiB3YXMgZHJvcHBlZCBhdCAzOTUuCitB
aXJwbGF5QnV0dG9uIHdhcyBkcm9wcGVkIGF0IDM1Ny4KK0Z1bGxzY3JlZW5CdXR0b24gd2FzIGRy
b3BwZWQgYXQgMzI1LgorT3ZlcmZsb3dCdXR0b24gd2FzIGRyb3BwZWQgYXQgMjk0LgogCiBQQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21l
ZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9pb3MtaW5saW5lLW1lZGlhLWNvbnRyb2xzL2lvcy1p
bmxpbmUtbWVkaWEtZHJvcHBpbmctY29udHJvbHMuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL21v
ZGVybi1tZWRpYS1jb250cm9scy9pb3MtaW5saW5lLW1lZGlhLWNvbnRyb2xzL2lvcy1pbmxpbmUt
bWVkaWEtZHJvcHBpbmctY29udHJvbHMuaHRtbAppbmRleCA0MmUzNjhmYjdkYjguLjUyZTdhNzI3
ZGQzYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xz
L2lvcy1pbmxpbmUtbWVkaWEtY29udHJvbHMvaW9zLWlubGluZS1tZWRpYS1kcm9wcGluZy1jb250
cm9scy5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9p
b3MtaW5saW5lLW1lZGlhLWNvbnRyb2xzL2lvcy1pbmxpbmUtbWVkaWEtZHJvcHBpbmctY29udHJv
bHMuaHRtbApAQCAtOSwxMiArOSwxNyBAQCBkZXNjcmlwdGlvbigiVGVzdGluZyA8Y29kZT5JT1NJ
bmxpbmVNZWRpYUNvbnRyb2xzPC9jb2RlPiBhbmQgZHJvcHBpbmcgY29udHJvbHMuIgogd2luZG93
LmpzVGVzdElzQXN5bmMgPSB0cnVlOwogCiBjb25zdCBtZWRpYUNvbnRyb2xzID0gbmV3IElPU0lu
bGluZU1lZGlhQ29udHJvbHMoeyB3aWR0aDogNjgwLCBoZWlnaHQ6IDMwMCB9KTsKK21lZGlhQ29u
dHJvbHMuc2hvdWxkVXNlU2luZ2xlQmFyTGF5b3V0ID0gdHJ1ZTsKIAogY29uc3QgZHJvcHBhYmxl
Q29udHJvbHMgPSBbCi0gICAgbWVkaWFDb250cm9scy5za2lwRm9yd2FyZEJ1dHRvbiwKLSAgICBt
ZWRpYUNvbnRyb2xzLnNraXBCYWNrQnV0dG9uLAorICAgIG1lZGlhQ29udHJvbHMub3ZlcmZsb3dC
dXR0b24sCisgICAgbWVkaWFDb250cm9scy5mdWxsc2NyZWVuQnV0dG9uLAogICAgIG1lZGlhQ29u
dHJvbHMuYWlycGxheUJ1dHRvbiwKLSAgICBtZWRpYUNvbnRyb2xzLnRyYWNrc0J1dHRvbgorICAg
IG1lZGlhQ29udHJvbHMubXV0ZUJ1dHRvbiwKKyAgICBtZWRpYUNvbnRyb2xzLnNraXBCYWNrQnV0
dG9uLAorICAgIG1lZGlhQ29udHJvbHMuc2tpcEZvcndhcmRCdXR0b24sCisgICAgbWVkaWFDb250
cm9scy5waXBCdXR0b24sCisgICAgbWVkaWFDb250cm9scy50cmFja3NCdXR0b24sCiBdOwogCiBm
dW5jdGlvbiByZWFkeSgpCkBAIC0yNCwxMSArMjksMTYgQEAgZnVuY3Rpb24gcmVhZHkoKQogCiBz
aG91bGRCZWNvbWVFcXVhbCgicmVhZHkoKSIsICJ0cnVlIiwgKCkgPT4gewogICAgIGRlYnVnKCIi
KTsKLSAgICBkcm9wcGFibGVDb250cm9scy5mb3JFYWNoKGNvbnRyb2wgPT4gewotICAgICAgICB3
aGlsZSAoY29udHJvbC52aXNpYmxlKQotICAgICAgICAgICAgbWVkaWFDb250cm9scy53aWR0aC0t
OwotICAgICAgICBkZWJ1ZyhgJHtjb250cm9sLmNvbnN0cnVjdG9yLm5hbWV9IHdhcyBkcm9wcGVk
IGF0ICR7bWVkaWFDb250cm9scy53aWR0aCArIDF9LmApOwotICAgIH0pOworICAgIHdoaWxlIChk
cm9wcGFibGVDb250cm9scy5sZW5ndGgpIHsKKyAgICAgICAgZm9yIChsZXQgaSA9IGRyb3BwYWJs
ZUNvbnRyb2xzLmxlbmd0aCAtIDE7IGkgPj0gMDsgLS1pKSB7CisgICAgICAgICAgICBpZiAoIWRy
b3BwYWJsZUNvbnRyb2xzW2ldLnZpc2libGUpIHsKKyAgICAgICAgICAgICAgICBkZWJ1ZyhgJHtk
cm9wcGFibGVDb250cm9sc1tpXS5jb25zdHJ1Y3Rvci5uYW1lfSB3YXMgZHJvcHBlZCBhdCAke21l
ZGlhQ29udHJvbHMud2lkdGggKyAxfS5gKTsKKyAgICAgICAgICAgICAgICBkcm9wcGFibGVDb250
cm9scy5zcGxpY2UoaSwgMSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICBt
ZWRpYUNvbnRyb2xzLndpZHRoLS07CisgICAgfQogICAgIGRlYnVnKCIiKTsKICAgICBmaW5pc2hK
U1Rlc3QoKTsKIH0pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlh
LWNvbnRyb2xzL21hY29zLWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVl
bi1tZWRpYS1jb250cm9scy1idXR0b25zLWNvbnRhaW5lcnMtc3R5bGVzLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tYWNvcy1mdWxsc2NyZWVu
LW1lZGlhLWNvbnRyb2xzL21hY29zLWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMtYnV0dG9ucy1j
b250YWluZXJzLXN0eWxlcy1leHBlY3RlZC50eHQKaW5kZXggMTAyMzUyMzg0MmZmLi42NTJiYzg3
MGQzMTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9s
cy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzL21hY29zLWZ1bGxzY3JlZW4tbWVkaWEt
Y29udHJvbHMtYnV0dG9ucy1jb250YWluZXJzLXN0eWxlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21hY29zLWZ1bGxzY3JlZW4tbWVk
aWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250cm9scy1idXR0b25zLWNvbnRh
aW5lcnMtc3R5bGVzLWV4cGVjdGVkLnR4dApAQCAtOCw4ICs4LDggQEAgUEFTUyBjZW50ZXJDb250
YWluZXIuZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0IGlzIDMxMQogUEFTUyBj
ZW50ZXJDb250YWluZXIuZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3AgaXMgNTAz
CiBQQVNTIGNlbnRlckNvbnRhaW5lci5lbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhl
aWdodCBpcyA0NAogCi1QQVNTIE1hdGguZmxvb3IocmlnaHRDb250YWluZXIuZWxlbWVudC5nZXRC
b3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCkgYmVjYW1lIDEzMQotUEFTUyByaWdodENvbnRhaW5l
ci5lbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmxlZnQgaXMgd2l0aGluIDAuNSBvZiA1
MDMKK1BBU1MgTWF0aC5mbG9vcihyaWdodENvbnRhaW5lci5lbGVtZW50LmdldEJvdW5kaW5nQ2xp
ZW50UmVjdCgpLndpZHRoKSBiZWNhbWUgMTIzCitQQVNTIHJpZ2h0Q29udGFpbmVyLmVsZW1lbnQu
Z2V0Qm91bmRpbmdDbGllbnRSZWN0KCkubGVmdCBpcyB3aXRoaW4gMC41IG9mIDUxMQogUEFTUyBy
aWdodENvbnRhaW5lci5lbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcCBpcyA1MDAK
IFBBU1MgcmlnaHRDb250YWluZXIuZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWln
aHQgaXMgNDQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNv
bnRyb2xzL21hY29zLWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1t
ZWRpYS1jb250cm9scy1idXR0b25zLWNvbnRhaW5lcnMtc3R5bGVzLmh0bWwgYi9MYXlvdXRUZXN0
cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250
cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzLWJ1dHRvbnMtY29udGFpbmVycy1z
dHlsZXMuaHRtbAppbmRleCBmNGM5ODI5MzUyZDMuLjQwOWE5YmJhZWI2NiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21hY29zLWZ1bGxzY3JlZW4t
bWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250cm9scy1idXR0b25zLWNv
bnRhaW5lcnMtc3R5bGVzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlh
LWNvbnRyb2xzL21hY29zLWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVl
bi1tZWRpYS1jb250cm9scy1idXR0b25zLWNvbnRhaW5lcnMtc3R5bGVzLmh0bWwKQEAgLTQxLDgg
KzQxLDggQEAgc2hvdWxkQmVjb21lRXF1YWwoImNlbnRlckNvbnRhaW5lci5lbGVtZW50LmdldEJv
dW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoIiwgIjE3OCIKICAgICBzaG91bGRCZSgiY2VudGVyQ29u
dGFpbmVyLmVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0IiwgIjQ0Iik7CiAK
ICAgICBkZWJ1ZygiIik7Ci0gICAgc2hvdWxkQmVjb21lRXF1YWwoIk1hdGguZmxvb3IocmlnaHRD
b250YWluZXIuZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCkiLCAiMTMxIiwg
KCkgPT4gewotICAgICAgICBzaG91bGRCZUNsb3NlVG8oInJpZ2h0Q29udGFpbmVyLmVsZW1lbnQu
Z2V0Qm91bmRpbmdDbGllbnRSZWN0KCkubGVmdCIsIDUwMywgMC41KTsKKyAgICBzaG91bGRCZWNv
bWVFcXVhbCgiTWF0aC5mbG9vcihyaWdodENvbnRhaW5lci5lbGVtZW50LmdldEJvdW5kaW5nQ2xp
ZW50UmVjdCgpLndpZHRoKSIsICIxMjMiLCAoKSA9PiB7CisgICAgICAgIHNob3VsZEJlQ2xvc2VU
bygicmlnaHRDb250YWluZXIuZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0Iiwg
NTExLCAwLjUpOwogICAgICAgICBzaG91bGRCZSgicmlnaHRDb250YWluZXIuZWxlbWVudC5nZXRC
b3VuZGluZ0NsaWVudFJlY3QoKS50b3AiLCAiNTAwIik7CiAgICAgICAgIHNob3VsZEJlKCJyaWdo
dENvbnRhaW5lci5lbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodCIsICI0NCIp
OwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMv
bWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNv
bnRyb2xzLWJ1dHRvbnMtc3R5bGVzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL21v
ZGVybi1tZWRpYS1jb250cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzL21hY29z
LWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMtYnV0dG9ucy1zdHlsZXMtZXhwZWN0ZWQudHh0Cmlu
ZGV4IDY4YmEyMTg5NGJmZC4uNTkwMzk1NjdmYWI0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9t
ZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250cm9s
cy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzLWJ1dHRvbnMtc3R5bGVzLWV4cGVjdGVk
LnR4dAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3Mt
ZnVsbHNjcmVlbi1tZWRpYS1jb250cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xz
LWJ1dHRvbnMtc3R5bGVzLWV4cGVjdGVkLnR4dApAQCAtMjYsMTcgKzI2LDE3IEBAIFBBU1MgZ2V0
Q29tcHV0ZWRTdHlsZShidXR0b24uZWxlbWVudCkuaGVpZ2h0IGlzICIxNnB4IgogCiBQaVBCdXR0
b24KIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShidXR0b24uZWxlbWVudCkudG9wIGJlY2FtZSAiMThw
eCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShidXR0b24uZWxlbWVudCkubGVmdCBpcyAiNDNweCIK
K1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShidXR0b24uZWxlbWVudCkubGVmdCBpcyAiMzZweCIKIFBB
U1MgZ2V0Q29tcHV0ZWRTdHlsZShidXR0b24uZWxlbWVudCkuaGVpZ2h0IGlzICIxNnB4IgogCiBU
cmFja3NCdXR0b24KIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShidXR0b24uZWxlbWVudCkudG9wIGJl
Y2FtZSAiMThweCIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShidXR0b24uZWxlbWVudCkubGVmdCBp
cyAiNzRweCIKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShidXR0b24uZWxlbWVudCkubGVmdCBpcyAi
NjBweCIKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZShidXR0b24uZWxlbWVudCkuaGVpZ2h0IGlzICIx
NnB4IgogCiBGdWxsc2NyZWVuQnV0dG9uCiBQQVNTIGdldENvbXB1dGVkU3R5bGUoYnV0dG9uLmVs
ZW1lbnQpLnRvcCBiZWNhbWUgIjE4cHgiCi1QQVNTIGdldENvbXB1dGVkU3R5bGUoYnV0dG9uLmVs
ZW1lbnQpLmxlZnQgaXMgIjEwM3B4IgorUEFTUyBnZXRDb21wdXRlZFN0eWxlKGJ1dHRvbi5lbGVt
ZW50KS5sZWZ0IGlzICI1NXB4IgogUEFTUyBnZXRDb21wdXRlZFN0eWxlKGJ1dHRvbi5lbGVtZW50
KS5oZWlnaHQgaXMgIjE2cHgiCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tYWNvcy1m
dWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzL21hY29zLWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMt
YnV0dG9ucy1zdHlsZXMuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250
cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzL21hY29zLWZ1bGxzY3JlZW4tbWVk
aWEtY29udHJvbHMtYnV0dG9ucy1zdHlsZXMuaHRtbAppbmRleCBhZTZlMDAwZmMzZjEuLjI3ODVh
MDA4M2QwZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRy
b2xzL21hY29zLWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRp
YS1jb250cm9scy1idXR0b25zLXN0eWxlcy5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL21v
ZGVybi1tZWRpYS1jb250cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzL21hY29z
LWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMtYnV0dG9ucy1zdHlsZXMuaHRtbApAQCAtMTYsOSAr
MTYsOSBAQCBjb25zdCBidXR0b25Qb3NpdGlvbnMgPSBbCiAgICAgW21lZGlhQ29udHJvbHMucGxh
eVBhdXNlQnV0dG9uLCA3OCwgOSwgMjZdLAogICAgIFttZWRpYUNvbnRyb2xzLmZvcndhcmRCdXR0
b24sIDEyNywgMTQsIDE2XSwKICAgICBbbWVkaWFDb250cm9scy5haXJwbGF5QnV0dG9uLCAxMiwg
MTgsIDE2XSwKLSAgICBbbWVkaWFDb250cm9scy5waXBCdXR0b24sIDQzLCAxOCwgMTZdLAotICAg
IFttZWRpYUNvbnRyb2xzLnRyYWNrc0J1dHRvbiwgNzQsIDE4LCAxNl0sCi0gICAgW21lZGlhQ29u
dHJvbHMuZnVsbHNjcmVlbkJ1dHRvbiwgMTAzLCAxOCwgMTZdLAorICAgIFttZWRpYUNvbnRyb2xz
LnBpcEJ1dHRvbiwgMzYsIDE4LCAxNl0sCisgICAgW21lZGlhQ29udHJvbHMudHJhY2tzQnV0dG9u
LCA2MCwgMTgsIDE2XSwKKyAgICBbbWVkaWFDb250cm9scy5mdWxsc2NyZWVuQnV0dG9uLCA1NSwg
MTgsIDE2XSwKIF07CiAKIGxldCBidXR0b24sIHgsIHk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250
cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzLWNvbnN0cnVjdG9yLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tYWNvcy1mdWxs
c2NyZWVuLW1lZGlhLWNvbnRyb2xzL21hY29zLWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMtY29u
c3RydWN0b3ItZXhwZWN0ZWQudHh0CmluZGV4IDc1ZjdlMzcwNmUyMS4uOGY0NjQ5ZmFkOWEyIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3Mt
ZnVsbHNjcmVlbi1tZWRpYS1jb250cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xz
LWNvbnN0cnVjdG9yLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS9tb2Rlcm4t
bWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250cm9scy9tYWNvcy1mdWxs
c2NyZWVuLW1lZGlhLWNvbnRyb2xzLWNvbnN0cnVjdG9yLWV4cGVjdGVkLnR4dApAQCAtMzIsNyAr
MzIsNyBAQCBQQVNTIG1lZGlhQ29udHJvbHMuYm90dG9tQ29udHJvbHNCYXIuY2hpbGRyZW5bM10u
Y2hpbGRyZW4gaXMgW21lZGlhQ29udHJvbHMuYWlycAogUEFTUyBtZWRpYUNvbnRyb2xzLmJvdHRv
bUNvbnRyb2xzQmFyLmNoaWxkcmVuWzNdLmVsZW1lbnQuY2xhc3NOYW1lIGlzICJidXR0b25zLWNv
bnRhaW5lciByaWdodCIKIFBBU1MgbWVkaWFDb250cm9scy5ib3R0b21Db250cm9sc0Jhci5jaGls
ZHJlblszXS5sZWZ0TWFyZ2luIGlzIDEyCiBQQVNTIG1lZGlhQ29udHJvbHMuYm90dG9tQ29udHJv
bHNCYXIuY2hpbGRyZW5bM10ucmlnaHRNYXJnaW4gaXMgMTIKLVBBU1MgbWVkaWFDb250cm9scy5i
b3R0b21Db250cm9sc0Jhci5jaGlsZHJlblszXS5idXR0b25NYXJnaW4gaXMgMTYKK1BBU1MgbWVk
aWFDb250cm9scy5ib3R0b21Db250cm9sc0Jhci5jaGlsZHJlblszXS5idXR0b25NYXJnaW4gaXMg
MjQKIAogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRp
YS1jb250cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzLWNvbnN0cnVjdG9yLmh0
bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNj
cmVlbi1tZWRpYS1jb250cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzLWNvbnN0
cnVjdG9yLmh0bWwKaW5kZXggYTliNTk1ZDlhYjJmLi5lM2FlOGI0MDllN2IgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tYWNvcy1mdWxsc2NyZWVu
LW1lZGlhLWNvbnRyb2xzL21hY29zLWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMtY29uc3RydWN0
b3IuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFj
b3MtZnVsbHNjcmVlbi1tZWRpYS1jb250cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRy
b2xzLWNvbnN0cnVjdG9yLmh0bWwKQEAgLTQwLDcgKzQwLDcgQEAgc2hvdWxkQmUoIm1lZGlhQ29u
dHJvbHMuYm90dG9tQ29udHJvbHNCYXIuY2hpbGRyZW5bM10uY2hpbGRyZW4iLCAiW21lZGlhQ29u
dHJvbHMKIHNob3VsZEJlRXF1YWxUb1N0cmluZygibWVkaWFDb250cm9scy5ib3R0b21Db250cm9s
c0Jhci5jaGlsZHJlblszXS5lbGVtZW50LmNsYXNzTmFtZSIsICJidXR0b25zLWNvbnRhaW5lciBy
aWdodCIpOwogc2hvdWxkQmUoIm1lZGlhQ29udHJvbHMuYm90dG9tQ29udHJvbHNCYXIuY2hpbGRy
ZW5bM10ubGVmdE1hcmdpbiIsICIxMiIpOwogc2hvdWxkQmUoIm1lZGlhQ29udHJvbHMuYm90dG9t
Q29udHJvbHNCYXIuY2hpbGRyZW5bM10ucmlnaHRNYXJnaW4iLCAiMTIiKTsKLXNob3VsZEJlKCJt
ZWRpYUNvbnRyb2xzLmJvdHRvbUNvbnRyb2xzQmFyLmNoaWxkcmVuWzNdLmJ1dHRvbk1hcmdpbiIs
ICIxNiIpOworc2hvdWxkQmUoIm1lZGlhQ29udHJvbHMuYm90dG9tQ29udHJvbHNCYXIuY2hpbGRy
ZW5bM10uYnV0dG9uTWFyZ2luIiwgIjI0Iik7CiAKIGRlYnVnKCIiKTsKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21hY29zLWZ1bGxzY3JlZW4t
bWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250cm9scy1yaWdodC1jb250
YWluZXItbWFyZ2luLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRp
YS1jb250cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzL21hY29zLWZ1bGxzY3Jl
ZW4tbWVkaWEtY29udHJvbHMtcmlnaHQtY29udGFpbmVyLW1hcmdpbi1leHBlY3RlZC50eHQKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVjNDM3M2E3ZmM1Mi4uMDAwMDAwMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tYWNvcy1mdWxsc2Ny
ZWVuLW1lZGlhLWNvbnRyb2xzL21hY29zLWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMtcmlnaHQt
Y29udGFpbmVyLW1hcmdpbi1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxOCArMCww
IEBACi1UZXN0aW5nIHRoZSBNYWNPU0Z1bGxzY3JlZW5NZWRpYUNvbnRyb2xzIHJpZ2h0IGNvbnRh
aW5lciBidXR0b25NYXJnaW4uCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBv
ZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi00IGVu
YWJsZWQgYnV0dG9ucwotUEFTUyByaWdodENvbnRhaW5lci5idXR0b25NYXJnaW4gaXMgMTIKLQot
MyBlbmFibGVkIGJ1dHRvbnMKLVBBU1MgcmlnaHRDb250YWluZXIuYnV0dG9uTWFyZ2luIGlzIDE2
Ci0KLTIgZW5hYmxlZCBidXR0b25zCi1QQVNTIHJpZ2h0Q29udGFpbmVyLmJ1dHRvbk1hcmdpbiBp
cyAyNAotCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUK
LQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21h
Y29zLWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250
cm9scy1yaWdodC1jb250YWluZXItbWFyZ2luLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS9tb2Rl
cm4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250cm9scy9tYWNvcy1m
dWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzLXJpZ2h0LWNvbnRhaW5lci1tYXJnaW4uaHRtbApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWY0Y2MwZDNiMDUxLi4wMDAwMDAwMDAwMDAKLS0t
IGEvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21hY29zLWZ1bGxzY3Jl
ZW4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250cm9scy1yaWdodC1j
b250YWluZXItbWFyZ2luLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwzOSArMCwwIEBACi08c2Ny
aXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTxz
Y3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvbWVkaWEtY29udHJvbHMtdXRpbHMuanMiIHR5cGU9InRl
eHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL21lZGlh
LWNvbnRyb2xzLWxvYWRlci5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KLTxi
b2R5PgotPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgotCi1kZXNjcmlwdGlvbigiVGVz
dGluZyB0aGUgPGNvZGU+TWFjT1NGdWxsc2NyZWVuTWVkaWFDb250cm9sczwvY29kZT4gcmlnaHQg
Y29udGFpbmVyIGJ1dHRvbk1hcmdpbi4iKTsKLQotd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVl
OwotCi1jb25zdCBtZWRpYUNvbnRyb2xzID0gbmV3IE1hY09TRnVsbHNjcmVlbk1lZGlhQ29udHJv
bHM7Ci1jb25zdCByaWdodENvbnRhaW5lciA9IG1lZGlhQ29udHJvbHMuYm90dG9tQ29udHJvbHNC
YXIuY2hpbGRyZW5bM107Ci0KLWxldCBudW1iZXJPZkZyYW1lcyA9IDA7Ci1zY2hlZHVsZXIuZnJh
bWVEaWRGaXJlID0gZnVuY3Rpb24oKQotewotICAgIG51bWJlck9mRnJhbWVzKys7Ci0KLSAgICBp
ZiAobnVtYmVyT2ZGcmFtZXMgPT0gMSkgewotICAgICAgICBkZWJ1ZygiNCBlbmFibGVkIGJ1dHRv
bnMiKQotICAgICAgICBzaG91bGRCZSgicmlnaHRDb250YWluZXIuYnV0dG9uTWFyZ2luIiwgIjEy
Iik7Ci0gICAgICAgIGRlYnVnKCIiKTsKLSAgICAgICAgbWVkaWFDb250cm9scy50cmFja3NCdXR0
b24uZW5hYmxlZCA9IGZhbHNlOwotICAgIH0gZWxzZSBpZiAobnVtYmVyT2ZGcmFtZXMgPT0gMikg
ewotICAgICAgICBkZWJ1ZygiMyBlbmFibGVkIGJ1dHRvbnMiKQotICAgICAgICBzaG91bGRCZSgi
cmlnaHRDb250YWluZXIuYnV0dG9uTWFyZ2luIiwgIjE2Iik7Ci0gICAgICAgIG1lZGlhQ29udHJv
bHMucGlwQnV0dG9uLmVuYWJsZWQgPSBmYWxzZTsKLSAgICAgICAgZGVidWcoIiIpOwotICAgIH0g
ZWxzZSBpZiAobnVtYmVyT2ZGcmFtZXMgPT0gMykgewotICAgICAgICBkZWJ1ZygiMiBlbmFibGVk
IGJ1dHRvbnMiKQotICAgICAgICBzaG91bGRCZSgicmlnaHRDb250YWluZXIuYnV0dG9uTWFyZ2lu
IiwgIjI0Iik7Ci0gICAgICAgIGRlYnVnKCIiKTsKLSAgICAgICAgZmluaXNoTWVkaWFDb250cm9s
c1Rlc3QoKTsKLSAgICB9Ci19OwotCi08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tYWNvcy1pbmxpbmUtbWVk
aWEtY29udHJvbHMvbWFjb3MtaW5saW5lLW1lZGlhLWRyb3BwaW5nLWNvbnRyb2xzLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tYWNvcy1pbmxp
bmUtbWVkaWEtY29udHJvbHMvbWFjb3MtaW5saW5lLW1lZGlhLWRyb3BwaW5nLWNvbnRyb2xzLWV4
cGVjdGVkLnR4dAppbmRleCBhMDA5MjQ0ODU5MzkuLjlkYWQ3Y2NlMWZhOCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21hY29zLWlubGluZS1tZWRp
YS1jb250cm9scy9tYWNvcy1pbmxpbmUtbWVkaWEtZHJvcHBpbmctY29udHJvbHMtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tYWNvcy1p
bmxpbmUtbWVkaWEtY29udHJvbHMvbWFjb3MtaW5saW5lLW1lZGlhLWRyb3BwaW5nLWNvbnRyb2xz
LWV4cGVjdGVkLnR4dApAQCAtNSwxMyArNSwxNCBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURQog
CiBQQVNTIHJlYWR5KCkgYmVjYW1lIHRydWUKIAotU2tpcEZvcndhcmRCdXR0b24gd2FzIGRyb3Bw
ZWQgYXQgNDgyLgotU2tpcEJhY2tCdXR0b24gd2FzIGRyb3BwZWQgYXQgNDUzLgotQWlycGxheUJ1
dHRvbiB3YXMgZHJvcHBlZCBhdCA0MjQuCi1UcmFja3NCdXR0b24gd2FzIGRyb3BwZWQgYXQgMzky
LgotUGlQQnV0dG9uIHdhcyBkcm9wcGVkIGF0IDM5Mi4KK1RyYWNrc0J1dHRvbiB3YXMgZHJvcHBl
ZCBhdCA2ODEuCitQaVBCdXR0b24gd2FzIGRyb3BwZWQgYXQgNjgxLgorU2tpcEZvcndhcmRCdXR0
b24gd2FzIGRyb3BwZWQgYXQgNDQ3LgorU2tpcEJhY2tCdXR0b24gd2FzIGRyb3BwZWQgYXQgNDE4
LgorTXV0ZUJ1dHRvbiB3YXMgZHJvcHBlZCBhdCAzODkuCitBaXJwbGF5QnV0dG9uIHdhcyBkcm9w
cGVkIGF0IDM1MS4KIEZ1bGxzY3JlZW5CdXR0b24gd2FzIGRyb3BwZWQgYXQgMzE5LgotTXV0ZUJ1
dHRvbiB3YXMgZHJvcHBlZCBhdCAzMTkuCitPdmVyZmxvd0J1dHRvbiB3YXMgZHJvcHBlZCBhdCAy
ODguCiAKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21hY29zLWlubGluZS1tZWRpYS1j
b250cm9scy9tYWNvcy1pbmxpbmUtbWVkaWEtZHJvcHBpbmctY29udHJvbHMuaHRtbCBiL0xheW91
dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tYWNvcy1pbmxpbmUtbWVkaWEtY29u
dHJvbHMvbWFjb3MtaW5saW5lLW1lZGlhLWRyb3BwaW5nLWNvbnRyb2xzLmh0bWwKaW5kZXggNDYz
NjM5NjYwNzNjLi5mZmQwYzMyZTNhNDcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL21v
ZGVybi1tZWRpYS1jb250cm9scy9tYWNvcy1pbmxpbmUtbWVkaWEtY29udHJvbHMvbWFjb3MtaW5s
aW5lLW1lZGlhLWRyb3BwaW5nLWNvbnRyb2xzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEv
bW9kZXJuLW1lZGlhLWNvbnRyb2xzL21hY29zLWlubGluZS1tZWRpYS1jb250cm9scy9tYWNvcy1p
bmxpbmUtbWVkaWEtZHJvcHBpbmctY29udHJvbHMuaHRtbApAQCAtMTIsMTMgKzEyLDE0IEBAIGNv
bnN0IG1lZGlhQ29udHJvbHMgPSBuZXcgTWFjT1NJbmxpbmVNZWRpYUNvbnRyb2xzKHsgd2lkdGg6
IDY4MCwgaGVpZ2h0OiAzMDAgfSk7CiBtZWRpYUNvbnRyb2xzLnNob3VsZFVzZVNpbmdsZUJhckxh
eW91dCA9IHRydWU7CiAKIGNvbnN0IGRyb3BwYWJsZUNvbnRyb2xzID0gWwotICAgIG1lZGlhQ29u
dHJvbHMuc2tpcEZvcndhcmRCdXR0b24sCi0gICAgbWVkaWFDb250cm9scy5za2lwQmFja0J1dHRv
biwKLSAgICBtZWRpYUNvbnRyb2xzLmFpcnBsYXlCdXR0b24sCi0gICAgbWVkaWFDb250cm9scy50
cmFja3NCdXR0b24sCi0gICAgbWVkaWFDb250cm9scy5waXBCdXR0b24sCisgICAgbWVkaWFDb250
cm9scy5vdmVyZmxvd0J1dHRvbiwKICAgICBtZWRpYUNvbnRyb2xzLmZ1bGxzY3JlZW5CdXR0b24s
Ci0gICAgbWVkaWFDb250cm9scy5tdXRlQnV0dG9uCisgICAgbWVkaWFDb250cm9scy5haXJwbGF5
QnV0dG9uLAorICAgIG1lZGlhQ29udHJvbHMubXV0ZUJ1dHRvbiwKKyAgICBtZWRpYUNvbnRyb2xz
LnNraXBCYWNrQnV0dG9uLAorICAgIG1lZGlhQ29udHJvbHMuc2tpcEZvcndhcmRCdXR0b24sCisg
ICAgbWVkaWFDb250cm9scy5waXBCdXR0b24sCisgICAgbWVkaWFDb250cm9scy50cmFja3NCdXR0
b24sCiBdOwogCiBmdW5jdGlvbiByZWFkeSgpCkBAIC0yOCwxMSArMjksMTYgQEAgZnVuY3Rpb24g
cmVhZHkoKQogCiBzaG91bGRCZWNvbWVFcXVhbCgicmVhZHkoKSIsICJ0cnVlIiwgKCkgPT4gewog
ICAgIGRlYnVnKCIiKTsKLSAgICBkcm9wcGFibGVDb250cm9scy5mb3JFYWNoKGNvbnRyb2wgPT4g
ewotICAgICAgICB3aGlsZSAoY29udHJvbC52aXNpYmxlKQotICAgICAgICAgICAgbWVkaWFDb250
cm9scy53aWR0aC0tOwotICAgICAgICBkZWJ1ZyhgJHtjb250cm9sLmNvbnN0cnVjdG9yLm5hbWV9
IHdhcyBkcm9wcGVkIGF0ICR7bWVkaWFDb250cm9scy53aWR0aCArIDF9LmApOwotICAgIH0pOwor
ICAgIHdoaWxlIChkcm9wcGFibGVDb250cm9scy5sZW5ndGgpIHsKKyAgICAgICAgZm9yIChsZXQg
aSA9IGRyb3BwYWJsZUNvbnRyb2xzLmxlbmd0aCAtIDE7IGkgPj0gMDsgLS1pKSB7CisgICAgICAg
ICAgICBpZiAoIWRyb3BwYWJsZUNvbnRyb2xzW2ldLnZpc2libGUpIHsKKyAgICAgICAgICAgICAg
ICBkZWJ1ZyhgJHtkcm9wcGFibGVDb250cm9sc1tpXS5jb25zdHJ1Y3Rvci5uYW1lfSB3YXMgZHJv
cHBlZCBhdCAke21lZGlhQ29udHJvbHMud2lkdGggKyAxfS5gKTsKKyAgICAgICAgICAgICAgICBk
cm9wcGFibGVDb250cm9scy5zcGxpY2UoaSwgMSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0K
KworICAgICAgICBtZWRpYUNvbnRyb2xzLndpZHRoLS07CisgICAgfQogICAgIGRlYnVnKCIiKTsK
ICAgICBmaW5pc2hKU1Rlc3QoKTsKIH0pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEv
bW9kZXJuLW1lZGlhLWNvbnRyb2xzL3RyYWNrcy1zdXBwb3J0L2F1dG8tdGV4dC10cmFjay5odG1s
IGIvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL3RyYWNrcy1zdXBwb3J0
L2F1dG8tdGV4dC10cmFjay5odG1sCmluZGV4IGQzY2YyNDg2Y2IzZC4uZDZlNzI3NTM4ZDBlIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvdHJhY2tz
LXN1cHBvcnQvYXV0by10ZXh0LXRyYWNrLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvbW9k
ZXJuLW1lZGlhLWNvbnRyb2xzL3RyYWNrcy1zdXBwb3J0L2F1dG8tdGV4dC10cmFjay5odG1sCkBA
IC0zLDcgKzMsNyBAQAogPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy91aS1oZWxwZXIu
anMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBy
ZS5qcyI+PC9zY3JpcHQ+CiA8Ym9keT4KLTx2aWRlbyBzcmM9Ii4uLy4uL2NvbnRlbnQvY291bnRp
bmctc3VidGl0bGVkLm00diIgc3R5bGU9InBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMDsgdG9w
OiAwOyB3aWR0aDogNDAwcHg7IiBhdXRvcGxheSBjb250cm9scyBtdXRlZCBwbGF5c2lubGluZT48
L3ZpZGVvPgorPHZpZGVvIHNyYz0iLi4vLi4vY29udGVudC9jb3VudGluZy1zdWJ0aXRsZWQubTR2
IiBzdHlsZT0icG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwOyB0b3A6IDA7IHdpZHRoOiA2MDBw
eDsiIGF1dG9wbGF5IGNvbnRyb2xzIG11dGVkIHBsYXlzaW5saW5lPjwvdmlkZW8+CiA8c2NyaXB0
IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CiAKIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsK
QEAgLTEzLDYgKzEzLDggQEAgZGVzY3JpcHRpb24oIkVuc3VyZSB3ZSBoYXZlIHRoZSBBdXRvIHRl
eHQgdHJhY2sgc2VsZWN0ZWQgYnkgZGVmYXVsdC4iKTsKIGNvbnN0IG1lZGlhID0gZG9jdW1lbnQu
cXVlcnlTZWxlY3RvcigidmlkZW8iKTsKIGNvbnN0IHNoYWRvd1Jvb3QgPSB3aW5kb3cuaW50ZXJu
YWxzLnNoYWRvd1Jvb3QobWVkaWEpOwogCit3aW5kb3cuaW50ZXJuYWxzLnNldE1lZGlhQ29udHJv
bHNNYXhpbXVtUmlnaHRDb250YWluZXJCdXR0b25Db3VudE92ZXJyaWRlKG1lZGlhLCAxMDApOyAv
LyBBIGZpbml0ZSB2YWx1ZSBsYXJnZXIgdGhhbiBhbnl0aGluZyBsaWtlbHkuCisKIGxldCBjaGVj
a2VkSXRlbXMgPSBudWxsOwogCiBtZWRpYS5hZGRFdmVudExpc3RlbmVyKCJwbGF5IiwgKCkgPT4g
ewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL3Ry
YWNrcy1zdXBwb3J0L2NsaWNrLXRyYWNrLWluLWNvbnRleHRtZW51Lmh0bWwgYi9MYXlvdXRUZXN0
cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvdHJhY2tzLXN1cHBvcnQvY2xpY2stdHJhY2st
aW4tY29udGV4dG1lbnUuaHRtbAppbmRleCA5OTcxMDQzM2FkOTIuLmE1YmM1MTE5OTZmMyAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL3RyYWNrcy1z
dXBwb3J0L2NsaWNrLXRyYWNrLWluLWNvbnRleHRtZW51Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
bWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL3RyYWNrcy1zdXBwb3J0L2NsaWNrLXRyYWNrLWlu
LWNvbnRleHRtZW51Lmh0bWwKQEAgLTMsNyArMyw3IEBACiA8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
cmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KIDxib2R5PgotPHZpZGVvIHNyYz0i
Li4vLi4vY29udGVudC9hdWRpby10cmFja3MubXA0IiBzdHlsZT0icG9zaXRpb246IGFic29sdXRl
OyBsZWZ0OiAwOyB0b3A6IDA7IHdpZHRoOiA0MDBweDsiIGNvbnRyb2xzIGF1dG9wbGF5IG11dGVk
IHBsYXlzaW5saW5lPjwvdmlkZW8+Cis8dmlkZW8gc3JjPSIuLi8uLi9jb250ZW50L2F1ZGlvLXRy
YWNrcy5tcDQiIHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDA7IHRvcDogMDsgd2lk
dGg6IDYwMHB4OyIgY29udHJvbHMgYXV0b3BsYXkgbXV0ZWQgcGxheXNpbmxpbmU+PC92aWRlbz4K
IDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KIAogd2luZG93LmpzVGVzdElzQXN5bmMg
PSB0cnVlOwpAQCAtMTMsNiArMTMsOCBAQCBkZXNjcmlwdGlvbigiQ2xpY2tpbmcgb24gYSB0cmFj
ayBpbiB0aGUgdHJhY2tzIGNvbnRleHRtZW51LiIpOwogY29uc3QgbWVkaWEgPSBkb2N1bWVudC5x
dWVyeVNlbGVjdG9yKCJ2aWRlbyIpOwogY29uc3Qgc2hhZG93Um9vdCA9IHdpbmRvdy5pbnRlcm5h
bHMuc2hhZG93Um9vdChtZWRpYSk7CiAKK3dpbmRvdy5pbnRlcm5hbHMuc2V0TWVkaWFDb250cm9s
c01heGltdW1SaWdodENvbnRhaW5lckJ1dHRvbkNvdW50T3ZlcnJpZGUobWVkaWEsIDEwMCk7IC8v
IEEgZmluaXRlIHZhbHVlIGxhcmdlciB0aGFuIGFueXRoaW5nIGxpa2VseS4KKwogbGV0IHNlbGVj
dGVkVHJhY2sgPSBudWxsOwogCiBtZWRpYS5hZGRFdmVudExpc3RlbmVyKCJwbGF5IiwgKCkgPT4g
ewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL3Ry
YWNrcy1zdXBwb3J0L2hpZGRlbi10cmFja3MuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL21vZGVy
bi1tZWRpYS1jb250cm9scy90cmFja3Mtc3VwcG9ydC9oaWRkZW4tdHJhY2tzLmh0bWwKaW5kZXgg
ZjYxM2ZjOGU2ZTMwLi5kNmEzMTk4ZGFmYWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlh
L21vZGVybi1tZWRpYS1jb250cm9scy90cmFja3Mtc3VwcG9ydC9oaWRkZW4tdHJhY2tzLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL3RyYWNrcy1zdXBw
b3J0L2hpZGRlbi10cmFja3MuaHRtbApAQCAtMyw3ICszLDcgQEAKIDxzY3JpcHQgc3JjPSIuLi8u
Li8uLi9yZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIuLi8u
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgogPGJvZHk+Ci08dmlkZW8g
c3JjPSIuLi8uLi9jb250ZW50L2NvdW50aW5nLXN1YnRpdGxlZC5tNHYiIHN0eWxlPSJwb3NpdGlv
bjogYWJzb2x1dGU7IGxlZnQ6IDA7IHRvcDogMDsgd2lkdGg6IDQwMHB4OyIgY29udHJvbHMgYXV0
b3BsYXkgbXV0ZWQgcGxheXNpbmxpbmU+PC92aWRlbz4KKzx2aWRlbyBzcmM9Ii4uLy4uL2NvbnRl
bnQvY291bnRpbmctc3VidGl0bGVkLm00diIgc3R5bGU9InBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVm
dDogMDsgdG9wOiAwOyB3aWR0aDogNjAwcHg7IiBjb250cm9scyBhdXRvcGxheSBtdXRlZCBwbGF5
c2lubGluZT48L3ZpZGVvPgogPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogCiB3aW5k
b3cuanNUZXN0SXNBc3luYyA9IHRydWU7CkBAIC0xMyw2ICsxMyw4IEBAIGRlc2NyaXB0aW9uKGBU
aGlzIHRlc3QgY2hlY2tzIHRoYXQgdGhlIHRyYWNrcyBjb250ZXh0bWVudSBkb2Vzbid0IHNob3cg
YW55IHRyYWNrCiBjb25zdCBtZWRpYSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoInZpZGVvIik7
CiBjb25zdCBzaGFkb3dSb290ID0gd2luZG93LmludGVybmFscy5zaGFkb3dSb290KG1lZGlhKTsK
IAord2luZG93LmludGVybmFscy5zZXRNZWRpYUNvbnRyb2xzTWF4aW11bVJpZ2h0Q29udGFpbmVy
QnV0dG9uQ291bnRPdmVycmlkZShtZWRpYSwgMTAwKTsgLy8gQSBmaW5pdGUgdmFsdWUgbGFyZ2Vy
IHRoYW4gYW55dGhpbmcgbGlrZWx5LgorCiBsZXQgY2hlY2tlZEl0ZW1zID0gbnVsbDsKIAogbWVk
aWEuYWRkRXZlbnRMaXN0ZW5lcigicGxheSIsICgpID0+IHsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy90cmFja3Mtc3VwcG9ydC9vZmYtdGV4dC10
cmFjay5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL3RyYWNr
cy1zdXBwb3J0L29mZi10ZXh0LXRyYWNrLmh0bWwKaW5kZXggOGI3MDNhMDA2YTgwLi41YTkwMjlj
ZjJhYmMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9s
cy90cmFja3Mtc3VwcG9ydC9vZmYtdGV4dC10cmFjay5odG1sCisrKyBiL0xheW91dFRlc3RzL21l
ZGlhL21vZGVybi1tZWRpYS1jb250cm9scy90cmFja3Mtc3VwcG9ydC9vZmYtdGV4dC10cmFjay5o
dG1sCkBAIC0zLDcgKzMsNyBAQAogPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy91aS1o
ZWxwZXIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CiA8Ym9keT4KLTx2aWRlbyBzcmM9Ii4uLy4uL2NvbnRlbnQv
Y291bnRpbmctc3VidGl0bGVkLm00diIgc3R5bGU9InBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDog
MDsgdG9wOiAwOyB3aWR0aDogNDAwcHg7IiBhdXRvcGxheSBjb250cm9scyBtdXRlZCBwbGF5c2lu
bGluZT48L3ZpZGVvPgorPHZpZGVvIHNyYz0iLi4vLi4vY29udGVudC9jb3VudGluZy1zdWJ0aXRs
ZWQubTR2IiBzdHlsZT0icG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwOyB0b3A6IDA7IHdpZHRo
OiA2MDBweDsiIGF1dG9wbGF5IGNvbnRyb2xzIG11dGVkIHBsYXlzaW5saW5lPjwvdmlkZW8+CiA8
c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CiAKIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0g
dHJ1ZTsKQEAgLTEzLDYgKzEzLDggQEAgZGVzY3JpcHRpb24oIkVuc3VyZSB3ZSBoYXZlIHRoZSBP
ZmYgdGV4dCB0cmFjayBzZWxlY3RlZCBieSBkZWZhdWx0LiIpOwogY29uc3QgbWVkaWEgPSBkb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCJ2aWRlbyIpOwogY29uc3Qgc2hhZG93Um9vdCA9IHdpbmRvdy5p
bnRlcm5hbHMuc2hhZG93Um9vdChtZWRpYSk7CiAKK3dpbmRvdy5pbnRlcm5hbHMuc2V0TWVkaWFD
b250cm9sc01heGltdW1SaWdodENvbnRhaW5lckJ1dHRvbkNvdW50T3ZlcnJpZGUobWVkaWEsIDEw
MCk7IC8vIEEgZmluaXRlIHZhbHVlIGxhcmdlciB0aGFuIGFueXRoaW5nIGxpa2VseS4KKwogbGV0
IGNoZWNrZWRJdGVtcyA9IG51bGw7CiAKIG1lZGlhLmFkZEV2ZW50TGlzdGVuZXIoInBsYXkiLCAo
KSA9PiB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJv
bHMvdHJhY2tzLXN1cHBvcnQvc2hvdy1jb250ZXh0bWVudS10aGVuLWRvdWJsZS1jbGljay1vbi10
cmFja3MtYnV0dG9uLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJv
bHMvdHJhY2tzLXN1cHBvcnQvc2hvdy1jb250ZXh0bWVudS10aGVuLWRvdWJsZS1jbGljay1vbi10
cmFja3MtYnV0dG9uLmh0bWwKaW5kZXggMjkwM2IxMDYzMTNiLi45OTY1N2MyZDEyYWEgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy90cmFja3Mtc3Vw
cG9ydC9zaG93LWNvbnRleHRtZW51LXRoZW4tZG91YmxlLWNsaWNrLW9uLXRyYWNrcy1idXR0b24u
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvdHJhY2tz
LXN1cHBvcnQvc2hvdy1jb250ZXh0bWVudS10aGVuLWRvdWJsZS1jbGljay1vbi10cmFja3MtYnV0
dG9uLmh0bWwKQEAgLTMsNyArMyw3IEBACiA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2Vz
L3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KIDxib2R5PgotPHZpZGVvIHNyYz0iLi4vLi4vY29u
dGVudC9DQytTdWJ0aXRsZXMubW92IiBzdHlsZT0icG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAw
OyB0b3A6IDA7IHdpZHRoOiA0MDBweDsiIGF1dG9wbGF5IGNvbnRyb2xzIG11dGVkIHBsYXlzaW5s
aW5lPjwvdmlkZW8+Cis8dmlkZW8gc3JjPSIuLi8uLi9jb250ZW50L0NDK1N1YnRpdGxlcy5tb3Yi
IHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDA7IHRvcDogMDsgd2lkdGg6IDYwMHB4
OyIgYXV0b3BsYXkgY29udHJvbHMgbXV0ZWQgcGxheXNpbmxpbmU+PC92aWRlbz4KIDxzY3JpcHQg
dHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KIAogd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwpA
QCAtMTMsNiArMTMsOCBAQCBkZXNjcmlwdGlvbigiRW5zdXJlIHRoYXQgY2xpY2tpbmcgdGhlIHRy
YWNrcyBidXR0b24gd2hlbiB0aGUgdHJhY2tzIGNvbnRleHRtZW51CiBjb25zdCBtZWRpYSA9IGRv
Y3VtZW50LnF1ZXJ5U2VsZWN0b3IoInZpZGVvIik7CiBjb25zdCBzaGFkb3dSb290ID0gd2luZG93
LmludGVybmFscy5zaGFkb3dSb290KG1lZGlhKTsKIAord2luZG93LmludGVybmFscy5zZXRNZWRp
YUNvbnRyb2xzTWF4aW11bVJpZ2h0Q29udGFpbmVyQnV0dG9uQ291bnRPdmVycmlkZShtZWRpYSwg
MTAwKTsgLy8gQSBmaW5pdGUgdmFsdWUgbGFyZ2VyIHRoYW4gYW55dGhpbmcgbGlrZWx5LgorCiBt
ZWRpYS5hZGRFdmVudExpc3RlbmVyKCJwbGF5IiwgKCkgPT4gewogICAgIG1lZGlhLnBhdXNlKCk7
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy90
cmFja3Mtc3VwcG9ydC90ZXh0LXRyYWNrLXNlbGVjdGVkLXZpYS1tZWRpYS1hcGkuaHRtbCBiL0xh
eW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy90cmFja3Mtc3VwcG9ydC90ZXh0
LXRyYWNrLXNlbGVjdGVkLXZpYS1tZWRpYS1hcGkuaHRtbAppbmRleCAwYWZjMTMzZDRlM2QuLjdh
MzRlY2RhY2IwYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNv
bnRyb2xzL3RyYWNrcy1zdXBwb3J0L3RleHQtdHJhY2stc2VsZWN0ZWQtdmlhLW1lZGlhLWFwaS5o
dG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy90cmFja3Mt
c3VwcG9ydC90ZXh0LXRyYWNrLXNlbGVjdGVkLXZpYS1tZWRpYS1hcGkuaHRtbApAQCAtMyw3ICsz
LDcgQEAKIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgogPGJvZHk+Ci08dmlkZW8gc3JjPSIuLi8uLi9jb250ZW50L2NvdW50aW5nLXN1YnRp
dGxlZC5tNHYiIHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDA7IHRvcDogMDsgd2lk
dGg6IDQwMHB4OyIgYXV0b3BsYXkgY29udHJvbHMgbXV0ZWQgcGxheXNpbmxpbmU+PC92aWRlbz4K
Kzx2aWRlbyBzcmM9Ii4uLy4uL2NvbnRlbnQvY291bnRpbmctc3VidGl0bGVkLm00diIgc3R5bGU9
InBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMDsgdG9wOiAwOyB3aWR0aDogNjAwcHg7IiBhdXRv
cGxheSBjb250cm9scyBtdXRlZCBwbGF5c2lubGluZT48L3ZpZGVvPgogPHNjcmlwdCB0eXBlPSJ0
ZXh0L2phdmFzY3JpcHQiPgogCiB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CkBAIC0xNCw2
ICsxNCw4IEBAIGRlc2NyaXB0aW9uKGBUaGlzIHRlc3QgY2hlY2tzIHRoYXQgc2V0dGluZyBhbiBl
bWJlZGRlZCB0ZXh0IHRyYWNrIGFzIHNlbGVjdGVkIHZpCiBjb25zdCBtZWRpYSA9IGRvY3VtZW50
LnF1ZXJ5U2VsZWN0b3IoInZpZGVvIik7CiBjb25zdCBzaGFkb3dSb290ID0gd2luZG93LmludGVy
bmFscy5zaGFkb3dSb290KG1lZGlhKTsKIAord2luZG93LmludGVybmFscy5zZXRNZWRpYUNvbnRy
b2xzTWF4aW11bVJpZ2h0Q29udGFpbmVyQnV0dG9uQ291bnRPdmVycmlkZShtZWRpYSwgMTAwKTsg
Ly8gQSBmaW5pdGUgdmFsdWUgbGFyZ2VyIHRoYW4gYW55dGhpbmcgbGlrZWx5LgorCiBsZXQgY29u
dGV4dG1lbnUgPSBudWxsOwogCiBmdW5jdGlvbiBzdWJ0aXRsZVRyYWNrKGxhbmd1YWdlKSB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cKaW5kZXggYWZmNGYxNzU2YTVjLi44ZDZjMTU2YzI4YWMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw2MSBAQAorMjAyMS0wMy0zMSAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+
CisKKyAgICAgICAgTGltaXQgdGhlIG51bWJlciBvZiBidXR0b25zIHNob3duIGluIG1lZGlhIGNv
bnRyb2xzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MjM5MDkKKworICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxzb24uCisKKyAgICAgICAgV2hl
biBpbiBmdWxsc2NyZWVuLCBpdCdzIHBvc3NpYmxlIHRvIGhhdmUgZml2ZSBkaWZmZXJlbnQgYnV0
dG9ucyB0byB0aGUgcmlnaHQgb2YgIlBsYXkiOgorICAgICAgICAgLSBBaXJQbGF5CisgICAgICAg
ICAtIEVudGVyIFBpY3R1cmUgaW4gUGljdHVyZQorICAgICAgICAgLSBBdWRpby9MYW5ndWFnZXMK
KyAgICAgICAgIC0gRXhpdCBGdWxsIFNjcmVlbgorICAgICAgICAgLSBNb3JlLi4uCisgICAgICAg
IFRoaXMgdHVybnMgdGhlIFVJIGludG8gc29tZXRoaW5nIG9mIGFuICJpY29uIHNvdXAiIGFuZCBz
aG91bGQgcmVhbGx5IGJlIGF2b2lkZWQsIGVzcGVjaWFsbHkKKyAgICAgICAgbm93IHRoYXQgYE92
ZXJmbG93QnV0dG9uYCBhbGxvd3MgZm9yIGEgc2luZ2xlIGJ1dHRvbiB0byBoYXZlIG11bHRpcGxl
IGFjdGlvbnMgKHZpYSBhIG5hdGl2ZQorICAgICAgICBjb250ZXh0bWVudSkuIFRoaXMgbWF0Y2hl
cyBBVktpdCBiZWhhdmlvci4KKworICAgICAgICBUZXN0czogbWVkaWEvbW9kZXJuLW1lZGlhLWNv
bnRyb2xzL2lvcy1pbmxpbmUtbWVkaWEtY29udHJvbHMvaW9zLWlubGluZS1tZWRpYS1kcm9wcGlu
Zy1jb250cm9scy5odG1sOgorICAgICAgICAgICAgICAgbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRy
b2xzL21hY29zLWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRp
YS1jb250cm9scy1idXR0b25zLWNvbnRhaW5lcnMtc3R5bGVzLmh0bWw6CisgICAgICAgICAgICAg
ICBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250
cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzLWJ1dHRvbnMtc3R5bGVzLmh0bWw6
CisgICAgICAgICAgICAgICBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNj
cmVlbi1tZWRpYS1jb250cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlhLWNvbnRyb2xzLWNvbnN0
cnVjdG9yLmh0bWw6CisgICAgICAgICAgICAgICBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMv
bWFjb3MtaW5saW5lLW1lZGlhLWNvbnRyb2xzL21hY29zLWlubGluZS1tZWRpYS1kcm9wcGluZy1j
b250cm9scy5odG1sOgorCisgICAgICAgICogTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMv
Y29udHJvbHMvaW5saW5lLW1lZGlhLWNvbnRyb2xzLmpzOgorICAgICAgICAoSW5saW5lTWVkaWFD
b250cm9scy5wcm90b3R5cGUubGF5b3V0KToKKyAgICAgICAgKElubGluZU1lZGlhQ29udHJvbHMu
cHJvdG90eXBlLl9kcm9wcGFibGVCdXR0b25zKToKKyAgICAgICAgKElubGluZU1lZGlhQ29udHJv
bHMucHJvdG90eXBlLl9jb2xsYXBzYWJsZUJ1dHRvbnMpOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1
bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9tYWNvcy1mdWxsc2NyZWVuLW1lZGlh
LWNvbnRyb2xzLmpzOgorICAgICAgICAoTWFjT1NGdWxsc2NyZWVuTWVkaWFDb250cm9scyk6Cisg
ICAgICAgIChNYWNPU0Z1bGxzY3JlZW5NZWRpYUNvbnRyb2xzLnByb3RvdHlwZS5sYXlvdXQpOgor
ICAgICAgICAoTWFjT1NGdWxsc2NyZWVuTWVkaWFDb250cm9scy5wcm90b3R5cGUuX2NvbGxhcHNh
YmxlQnV0dG9ucyk6IEFkZGVkLgorICAgICAgICBMaW1pdCB0aGUgbnVtYmVyIG9mIGB2aXNpYmxl
YCBidXR0b25zIGluIGByaWdodENvbnRhaW5lci5jaGlsZHJlbmAgYnkgaXRlcmF0aXZlbHkgbWFy
a2luZworICAgICAgICBgZHJvcHBlZCA9IHRydWVgIG9uIGJ1dHRvbnMgdGhhdCBhcmUgYWxzbyBp
biBgX2NvbGxhcHNhYmxlQnV0dG9uc2AgdW50aWwgZWl0aGVyIHRoZXJlIGFyZQorICAgICAgICBu
byBpdGVyYXRpb25zIGxlZnQgKGBpIDwgMGApIG9yIHRoZSBudW1iZXIgb2YgdmlzaWJsZSBidXR0
b25zIGlzIGJlbG93IHRoZSBtYXhpbXVtICgyIGZvcgorICAgICAgICBpbmxpbmUgYW5kIDMgZm9y
IGZ1bGxzY3JlZW4pLgorCisgICAgICAgICogTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMv
Y29udHJvbHMvcGlwLWJ1dHRvbi5qczoKKyAgICAgICAgKFBpUEJ1dHRvbi5wcm90b3R5cGUuZ2V0
IGNvbnRleHRNZW51T3B0aW9ucyk6IEFkZGVkLgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFjb250
cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRy
b2xzSG9zdDo6c2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudSk6CisgICAgICAgIEFkZCBzdXBw
b3J0IGZvciBgaW5jbHVkZVBpY3R1cmVJblBpY3R1cmVgIHRvIHRoZSBuYXRpdmUgY29udGV4dG1l
bnUuCisKKyAgICAgICAgKiBlbi5scHJvai9Mb2NhbGl6YWJsZS5zdHJpbmdzOgorCisgICAgICAg
ICogdGVzdGluZy9JbnRlcm5hbHMuaWRsOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmg6
CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW50
ZXJuYWxzOjpzZXRNZWRpYUNvbnRyb2xzTWF4aW11bVJpZ2h0Q29udGFpbmVyQnV0dG9uQ291bnRP
dmVycmlkZSk6IEFkZGVkLgorICAgICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5oOgorICAg
ICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1M
TWVkaWFFbGVtZW50OjpzZXRNZWRpYUNvbnRyb2xzTWF4aW11bVJpZ2h0Q29udGFpbmVyQnV0dG9u
Q291bnRPdmVycmlkZSk6IEFkZGVkLgorICAgICAgICAqIE1vZHVsZXMvbW9kZXJuLW1lZGlhLWNv
bnRyb2xzL21lZGlhL21lZGlhLWNvbnRyb2xsZXIuanM6CisgICAgICAgIChNZWRpYUNvbnRyb2xs
ZXIucHJvdG90eXBlLnNldCBtYXhpbXVtUmlnaHRDb250YWluZXJCdXR0b25Db3VudE92ZXJyaWRl
KTogQWRkZWQuCisgICAgICAgIEFkZCBhIHdheSB0byBvdmVycmlkZSB0aGUgZGVmYXVsdCBtYXhp
bXVtIHJpZ2h0IGNvbnRhaW5lciBidXR0b24gY291bnQgZm9yIHRlc3RpbmcuIFRoaXMgaXMKKyAg
ICAgICAgdXNlZnVsIGZvciB0ZXN0aW5nIHRoZSBmdW5jdGlvbmFsaXR5IG9mIGEgc3BlY2lmaWMg
YnV0dG9uIHdoZW4gbm90IGluIHRoZSBjb2xsYXBzZWQgc3RhdGUsCisgICAgICAgIGFsbG93aW5n
IGZvciB0ZXN0cyB0byBub3QgaGF2ZSB0byB3b3JyeSBhYm91dCBvdGhlciBzdGF0ZSB0aGF0IG1h
eSBhZmZlY3QgY29sbGFwc2luZyAoZS5nLgorICAgICAgICB0aGUgQWlyUGxheSBidXR0b24gaXMg
c2hvd24gd2hlbiB0aGVyZSBhcmUgQWlyUGxheSB0YXJnZXRzKS4KKwogMjAyMS0wMy0zMCAgUnlv
c3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBPY2Nhc2lvbmFsIGRlYnVn
IGFzc2VydCBpbiBHZW5lcmljVGFza1F1ZXVlOjp+R2VuZXJpY1Rhc2tRdWV1ZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xz
SG9zdC5jcHAKaW5kZXggOTk3MDVhYzMwMzBhLi40YzRmZTU0YjIwNWIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNI
b3N0LmNwcApAQCAtNDUsNiArNDUsNyBAQAogI2luY2x1ZGUgIkZsb2F0UmVjdC5oIgogI2luY2x1
ZGUgIkhUTUxFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTE1lZGlhRWxlbWVudC5oIgorI2luY2x1
ZGUgIkhUTUxWaWRlb0VsZW1lbnQuaCIKICNpbmNsdWRlICJMb2NhbGl6ZWRTdHJpbmdzLmgiCiAj
aW5jbHVkZSAiTG9nZ2luZy5oIgogI2luY2x1ZGUgIk1lZGlhQ29udHJvbFRleHRUcmFja0NvbnRh
aW5lckVsZW1lbnQuaCIKQEAgLTU1LDYgKzU2LDcgQEAKICNpbmNsdWRlICJSZW5kZXJUaGVtZS5o
IgogI2luY2x1ZGUgIlRleHRUcmFjay5oIgogI2luY2x1ZGUgIlRleHRUcmFja0xpc3QuaCIKKyNp
bmNsdWRlICJVc2VyR2VzdHVyZUluZGljYXRvci5oIgogI2luY2x1ZGUgIlZvaWRDYWxsYmFjay5o
IgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pTQ0pTVmFsdWVJbmxpbmVzLmg+CiAjaW5jbHVk
ZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+CkBAIC01MDAsNyArNTAyLDE4IEBAIGJvb2wgTWVk
aWFDb250cm9sc0hvc3Q6OnNob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnUoSFRNTEVsZW1lbnQm
IHRhcmdldCwgU3RyaW5nCiAgICAgY29uc3RleHByIGF1dG8gaW52YWxpZE1lbnVJdGVtSWRlbnRp
ZmllciA9IENvbnRleHRNZW51SXRlbVRhZ05vQWN0aW9uOwogI2VuZGlmCiAKLSAgICB1c2luZyBN
ZW51RGF0YSA9IFZhcmlhbnQ8UmVmUHRyPEF1ZGlvVHJhY2s+LCBSZWZQdHI8VGV4dFRyYWNrPiBN
ZWRpYUNvbnRyb2xzSG9zdEFkZGl0aW9uc19zaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51X01l
bnVEYXRhPjsKKyNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisgICAgZW51bSBj
bGFzcyBQaWN0dXJlSW5QaWN0dXJlVGFnIHsgSW5jbHVkZVBpY3R1cmVJblBpY3R1cmUgfTsKKyNl
bmRpZiAvLyBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCisKKyAgICB1c2luZyBNZW51
RGF0YSA9IFZhcmlhbnQ8CisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQorICAg
ICAgICBQaWN0dXJlSW5QaWN0dXJlVGFnLAorI2VuZGlmIC8vIEVOQUJMRShWSURFT19QUkVTRU5U
QVRJT05fTU9ERSkKKyAgICAgICAgUmVmUHRyPEF1ZGlvVHJhY2s+LAorICAgICAgICBSZWZQdHI8
VGV4dFRyYWNrPgorICAgICAgICBNZWRpYUNvbnRyb2xzSG9zdEFkZGl0aW9uc19zaG93TWVkaWFD
b250cm9sc0NvbnRleHRNZW51X01lbnVEYXRhCisgICAgPjsKICAgICBIYXNoTWFwPE1lbnVJdGVt
SWRlbnRpZmllciwgTWVudURhdGE+IGlkTWFwOwogCiAgICAgYXV0byBjcmVhdGVTdWJtZW51ID0g
W10gKGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0cmluZyYgaWNvbiwgVmVjdG9yPE1lbnVJ
dGVtPiYmIGNoaWxkcmVuKSAtPiBNZW51SXRlbSB7CkBAIC01MTIsMTkgKzUyNSwyOCBAQCBib29s
IE1lZGlhQ29udHJvbHNIb3N0OjpzaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KEhUTUxFbGVt
ZW50JiB0YXJnZXQsIFN0cmluZwogI2VuZGlmCiAgICAgfTsKIAotICAgIGF1dG8gY3JlYXRlTWVu
dUl0ZW0gPSBbJl0gKE1lbnVEYXRhIGRhdGEsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGJvb2wgY2hl
Y2tlZCA9IGZhbHNlKSAtPiBNZW51SXRlbSB7CisgICAgYXV0byBjcmVhdGVNZW51SXRlbSA9IFsm
XSAoTWVudURhdGEgZGF0YSwgY29uc3QgU3RyaW5nJiB0aXRsZSwgYm9vbCBjaGVja2VkID0gZmFs
c2UsIGNvbnN0IFN0cmluZyYgaWNvbiA9IG51bGxTdHJpbmcoKSkgLT4gTWVudUl0ZW0gewogICAg
ICAgICBhdXRvIGlkID0gaWRNYXAuc2l6ZSgpICsgMTsKICAgICAgICAgaWRNYXAuYWRkKGlkLCBk
YXRhKTsKIAogI2lmIFVTRShVSUNPTlRFWFRNRU5VKQotICAgICAgICByZXR1cm4geyBpZCwgdGl0
bGUsIC8qIGljb24gKi8gbnVsbFN0cmluZygpLCBjaGVja2VkLCAvKiBjaGlsZHJlbiAqLyB7IH0g
fTsKKyAgICAgICAgcmV0dXJuIHsgaWQsIHRpdGxlLCBpY29uLCBjaGVja2VkLCAvKiBjaGlsZHJl
biAqLyB7IH0gfTsKICNlbGlmIEVOQUJMRShDT05URVhUX01FTlVTKSAmJiBVU0UoQUNDRVNTSUJJ
TElUWV9DT05URVhUX01FTlVTKQorICAgICAgICBVTlVTRURfUEFSQU0oaWNvbik7CiAgICAgICAg
IHJldHVybiB7IENoZWNrYWJsZUFjdGlvblR5cGUsIHN0YXRpY19jYXN0PENvbnRleHRNZW51QWN0
aW9uPihDb250ZXh0TWVudUl0ZW1CYXNlQ3VzdG9tVGFnICsgaWQpLCB0aXRsZSwgLyogZW5hYmxl
ZCAqLyB0cnVlLCBjaGVja2VkIH07CiAjZW5kaWYKICAgICB9OwogCiAgICAgVmVjdG9yPE1lbnVJ
dGVtPiBpdGVtczsKIAorI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkKKyAgICBp
ZiAob3B0aW9uc0pTT05PYmplY3QtPmdldEJvb2xlYW4oImluY2x1ZGVQaWN0dXJlSW5QaWN0dXJl
Il9zKS52YWx1ZU9yKGZhbHNlKSkgeworICAgICAgICBBU1NFUlQoaXM8SFRNTFZpZGVvRWxlbWVu
dD4obWVkaWFFbGVtZW50KSk7CisgICAgICAgIEFTU0VSVChkb3duY2FzdDxIVE1MVmlkZW9FbGVt
ZW50PihtZWRpYUVsZW1lbnQpLndlYmtpdFN1cHBvcnRzUHJlc2VudGF0aW9uTW9kZShIVE1MVmlk
ZW9FbGVtZW50OjpWaWRlb1ByZXNlbnRhdGlvbk1vZGU6OlBpY3R1cmVJblBpY3R1cmUpKTsKKyAg
ICAgICAgaXRlbXMuYXBwZW5kKGNyZWF0ZU1lbnVJdGVtKFBpY3R1cmVJblBpY3R1cmVUYWc6Oklu
Y2x1ZGVQaWN0dXJlSW5QaWN0dXJlLCBXRUJfVUlfU1RSSU5HX0tFWSgiUGljdHVyZSBpbiBQaWN0
dXJlIiwgIlBpY3R1cmUgaW4gUGljdHVyZSAoTWVkaWEgQ29udHJvbHMgTWVudSkiLCAiUGljdHVy
ZSBpbiBQaWN0dXJlIG1lZGlhIGNvbnRyb2xzIGNvbnRleHQgbWVudSB0aXRsZSIpLCBmYWxzZSwg
InBpcC5lbnRlciJfcykpOworICAgIH0KKyNlbmRpZiAvLyBFTkFCTEUoVklERU9fUFJFU0VOVEFU
SU9OX01PREUpCisKICAgICBpZiAob3B0aW9uc0pTT05PYmplY3QtPmdldEJvb2xlYW4oImluY2x1
ZGVMYW5ndWFnZXMiX3MpLnZhbHVlT3IoZmFsc2UpKSB7CiAgICAgICAgIGlmIChhdXRvKiBhdWRp
b1RyYWNrcyA9IG1lZGlhRWxlbWVudC5hdWRpb1RyYWNrcygpOyBhdWRpb1RyYWNrcyAmJiBhdWRp
b1RyYWNrcy0+bGVuZ3RoKCkgPiAxKSB7CiAgICAgICAgICAgICBWZWN0b3I8TWVudUl0ZW0+IGxh
bmd1YWdlTWVudUl0ZW1zOwpAQCAtNjAxLDggKzYyMywxNiBAQCBib29sIE1lZGlhQ29udHJvbHNI
b3N0OjpzaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KEhUTUxFbGVtZW50JiB0YXJnZXQsIFN0
cmluZwogCiAgICAgICAgIGF1dG8mIG1lZGlhRWxlbWVudCA9ICp3ZWFrTWVkaWFFbGVtZW50Owog
CisgICAgICAgIFVzZXJHZXN0dXJlSW5kaWNhdG9yIGdlc3R1cmVJbmRpY2F0b3IoUHJvY2Vzc2lu
Z1VzZXJHZXN0dXJlLCAmbWVkaWFFbGVtZW50LmRvY3VtZW50KCkpOworCiAgICAgICAgIGF1dG8g
c2VsZWN0ZWRJdGVtID0gaWRNYXAuZ2V0KHNlbGVjdGVkSXRlbUlEKTsKICAgICAgICAgV1RGOjpz
d2l0Y2hPbihzZWxlY3RlZEl0ZW0sCisjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RF
KQorICAgICAgICAgICAgWyZdIChQaWN0dXJlSW5QaWN0dXJlVGFnKSB7CisgICAgICAgICAgICAg
ICAgLy8gTWVkaWEgY29udHJvbHMgYXJlIG5vdCBzaG93biB3aGVuIGluIFBpUCBzbyB3ZSBjYW4g
YXNzdW1lIHRoYXQgd2UncmUgbm90IGluIFBpUC4KKyAgICAgICAgICAgICAgICBkb3duY2FzdDxI
VE1MVmlkZW9FbGVtZW50PihtZWRpYUVsZW1lbnQpLndlYmtpdFNldFByZXNlbnRhdGlvbk1vZGUo
SFRNTFZpZGVvRWxlbWVudDo6VmlkZW9QcmVzZW50YXRpb25Nb2RlOjpQaWN0dXJlSW5QaWN0dXJl
KTsKKyAgICAgICAgICAgIH0sCisjZW5kaWYgLy8gRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9N
T0RFKQogICAgICAgICAgICAgWyZdIChSZWZQdHI8QXVkaW9UcmFjaz4mIHNlbGVjdGVkQXVkaW9U
cmFjaykgewogICAgICAgICAgICAgICAgIGZvciAoYXV0byYgdHJhY2sgOiBpZE1hcC52YWx1ZXMo
KSkgewogICAgICAgICAgICAgICAgICAgICBpZiAoYXV0byogYXVkaW9UcmFjayA9IFdURjo6Z2V0
X2lmPFJlZlB0cjxBdWRpb1RyYWNrPj4odHJhY2spKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvaW5saW5lLW1lZGlhLWNv
bnRyb2xzLmpzIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMv
Y29udHJvbHMvaW5saW5lLW1lZGlhLWNvbnRyb2xzLmpzCmluZGV4IDE2N2Y5MmIzZmVlZi4uNmIy
YzY1YWNlMGViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRp
YS1jb250cm9scy9jb250cm9scy9pbmxpbmUtbWVkaWEtY29udHJvbHMuanMKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvaW5saW5lLW1l
ZGlhLWNvbnRyb2xzLmpzCkBAIC0xODQsNiArMTg0LDE4IEBAIGNsYXNzIElubGluZU1lZGlhQ29u
dHJvbHMgZXh0ZW5kcyBNZWRpYUNvbnRyb2xzCiAgICAgICAgICAgICAgICAgdGhpcy5vdmVyZmxv
d0J1dHRvbi5hZGRDb250ZXh0TWVudU9wdGlvbnMoYnV0dG9uLmNvbnRleHRNZW51T3B0aW9ucyk7
CiAgICAgICAgIH0KIAorICAgICAgICBsZXQgY29sbGFwc2FibGVCdXR0b25zID0gdGhpcy5fY29s
bGFwc2FibGVCdXR0b25zKCk7CisgICAgICAgIGxldCBzaG93blJpZ2h0Q29udGFpbmVyQnV0dG9u
cyA9IHRoaXMucmlnaHRDb250YWluZXIuY2hpbGRyZW4uZmlsdGVyKGJ1dHRvbiA9PiBidXR0b24u
ZW5hYmxlZCAmJiAhYnV0dG9uLmRyb3BwZWQpOworICAgICAgICBsZXQgbWF4aW11bVJpZ2h0Q29u
dGFpbmVyQnV0dG9uQ291bnQgPSB0aGlzLm1heGltdW1SaWdodENvbnRhaW5lckJ1dHRvbkNvdW50
T3ZlcnJpZGUgPz8gMjsgLy8gQWxsb3cgQWlyUGxheSBhbmQgb3ZlcmZsb3cgaWYgYWxsIGJ1dHRv
bnMgYXJlIHNob3duLgorICAgICAgICBmb3IgKGxldCBpID0gc2hvd25SaWdodENvbnRhaW5lckJ1
dHRvbnMubGVuZ3RoIC0gMTsgaSA+PSAwICYmIHNob3duUmlnaHRDb250YWluZXJCdXR0b25zLmxl
bmd0aCA+IG1heGltdW1SaWdodENvbnRhaW5lckJ1dHRvbkNvdW50OyAtLWkpIHsKKyAgICAgICAg
ICAgIGxldCBidXR0b24gPSBzaG93blJpZ2h0Q29udGFpbmVyQnV0dG9uc1tpXTsKKyAgICAgICAg
ICAgIGlmICghY29sbGFwc2FibGVCdXR0b25zLmhhcyhidXR0b24pKQorICAgICAgICAgICAgICAg
IGNvbnRpbnVlOworCisgICAgICAgICAgICBidXR0b24uZHJvcHBlZCA9IHRydWU7CisgICAgICAg
ICAgICB0aGlzLm92ZXJmbG93QnV0dG9uLmFkZENvbnRleHRNZW51T3B0aW9ucyhidXR0b24uY29u
dGV4dE1lbnVPcHRpb25zKTsKKyAgICAgICAgfQorCiAgICAgICAgIC8vIFVwZGF0ZSBsYXlvdXRz
IG9uY2UgbW9yZS4KICAgICAgICAgdGhpcy5sZWZ0Q29udGFpbmVyLmxheW91dCgpOwogICAgICAg
ICB0aGlzLnJpZ2h0Q29udGFpbmVyLmxheW91dCgpOwpAQCAtMjY5LDEzICsyODEsMjUgQEAgY2xh
c3MgSW5saW5lTWVkaWFDb250cm9scyBleHRlbmRzIE1lZGlhQ29udHJvbHMKIAogICAgIF9kcm9w
cGFibGVCdXR0b25zKCkKICAgICB7CisgICAgICAgIGxldCBidXR0b25zID0gdGhpcy5fY29sbGFw
c2FibGVCdXR0b25zKCk7CisgICAgICAgIGJ1dHRvbnMuYWRkKHRoaXMuc2tpcEZvcndhcmRCdXR0
b24pOworICAgICAgICBidXR0b25zLmFkZCh0aGlzLnNraXBCYWNrQnV0dG9uKTsKKyAgICAgICAg
aWYgKHRoaXMuX3Nob3VsZFVzZVNpbmdsZUJhckxheW91dCB8fCB0aGlzLnByZWZlcnJlZE11dGVC
dXR0b25TdHlsZSA9PT0gQnV0dG9uLlN0eWxlcy5CYXIpCisgICAgICAgICAgICBidXR0b25zLmFk
ZCh0aGlzLm11dGVCdXR0b24pOworICAgICAgICBidXR0b25zLmFkZCh0aGlzLmFpcnBsYXlCdXR0
b24pOwogICAgICAgICBpZiAodGhpcy5fc2hvdWxkVXNlU2luZ2xlQmFyTGF5b3V0KQotICAgICAg
ICAgICAgcmV0dXJuIFt0aGlzLnNraXBGb3J3YXJkQnV0dG9uLCB0aGlzLnNraXBCYWNrQnV0dG9u
LCB0aGlzLmFpcnBsYXlCdXR0b24sIHRoaXMudHJhY2tzQnV0dG9uLCB0aGlzLnBpcEJ1dHRvbiwg
dGhpcy5tdXRlQnV0dG9uLCB0aGlzLmZ1bGxzY3JlZW5CdXR0b24sIHRoaXMub3ZlcmZsb3dCdXR0
b25dOworICAgICAgICAgICAgYnV0dG9ucy5hZGQodGhpcy5mdWxsc2NyZWVuQnV0dG9uKTsKKyAg
ICAgICAgYnV0dG9ucy5hZGQodGhpcy5vdmVyZmxvd0J1dHRvbik7CisgICAgICAgIHJldHVybiBi
dXR0b25zOworICAgIH0KIAotICAgICAgICBjb25zdCBidXR0b25zID0gW3RoaXMuc2tpcEZvcndh
cmRCdXR0b24sIHRoaXMuc2tpcEJhY2tCdXR0b24sIHRoaXMuYWlycGxheUJ1dHRvbiwgdGhpcy50
cmFja3NCdXR0b25dOwotICAgICAgICBpZiAodGhpcy5wcmVmZXJyZWRNdXRlQnV0dG9uU3R5bGUg
PT09IEJ1dHRvbi5TdHlsZXMuQmFyKQotICAgICAgICAgICAgYnV0dG9ucy5wdXNoKHRoaXMubXV0
ZUJ1dHRvbik7Ci0gICAgICAgIGJ1dHRvbnMucHVzaCh0aGlzLm92ZXJmbG93QnV0dG9uKTsKKyAg
ICBfY29sbGFwc2FibGVCdXR0b25zKCkKKyAgICB7CisgICAgICAgIGxldCBidXR0b25zID0gbmV3
IFNldChbCisgICAgICAgICAgICB0aGlzLnRyYWNrc0J1dHRvbiwKKyAgICAgICAgXSk7CisgICAg
ICAgIGlmICh0aGlzLl9zaG91bGRVc2VTaW5nbGVCYXJMYXlvdXQpCisgICAgICAgICAgICBidXR0
b25zLmFkZCh0aGlzLnBpcEJ1dHRvbik7CiAgICAgICAgIHJldHVybiBidXR0b25zOwogICAgIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJv
bHMvY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1jb250cm9scy5qcyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL21hY29zLWZ1bGxz
Y3JlZW4tbWVkaWEtY29udHJvbHMuanMKaW5kZXggZDI5YTMyZjgyYTQ1Li5mYzJmZjZkZTM2YTYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xz
L2NvbnRyb2xzL21hY29zLWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMuanMKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvbWFjb3MtZnVs
bHNjcmVlbi1tZWRpYS1jb250cm9scy5qcwpAQCAtMjMsOSArMjMsNiBAQAogICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KICAqLwogCi1jb25zdCBCdXR0b25NYXJnaW5Gb3JUaHJlZUJ1dHRvbnNPckxlc3MgPSAyNDsK
LWNvbnN0IEJ1dHRvbk1hcmdpbkZvckZvdXJCdXR0b25zID0gMTY7Ci1jb25zdCBCdXR0b25NYXJn
aW5Gb3JGaXZlQnV0dG9ucyA9IDEyOwogY29uc3QgRnVsbHNjcmVlblRpbWVDb250cm9sV2lkdGgg
PSA0NDg7CiAKIGNsYXNzIE1hY09TRnVsbHNjcmVlbk1lZGlhQ29udHJvbHMgZXh0ZW5kcyBNZWRp
YUNvbnRyb2xzCkBAIC02OCw3ICs2NSw4IEBAIGNsYXNzIE1hY09TRnVsbHNjcmVlbk1lZGlhQ29u
dHJvbHMgZXh0ZW5kcyBNZWRpYUNvbnRyb2xzCiAgICAgICAgICAgICBjaGlsZHJlbjogW3RoaXMu
YWlycGxheUJ1dHRvbiwgdGhpcy5waXBCdXR0b24sIHRoaXMudHJhY2tzQnV0dG9uLCB0aGlzLmZ1
bGxzY3JlZW5CdXR0b24sIHRoaXMub3ZlcmZsb3dCdXR0b25dLAogICAgICAgICAgICAgY3NzQ2xh
c3NOYW1lOiAicmlnaHQiLAogICAgICAgICAgICAgbGVmdE1hcmdpbjogMTIsCi0gICAgICAgICAg
ICByaWdodE1hcmdpbjogMTIKKyAgICAgICAgICAgIHJpZ2h0TWFyZ2luOiAxMiwKKyAgICAgICAg
ICAgIGJ1dHRvbk1hcmdpbjogMjQKICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5ib3R0b21D
b250cm9sc0Jhci5jaGlsZHJlbiA9IFt0aGlzLl9sZWZ0Q29udGFpbmVyLCB0aGlzLl9jZW50ZXJD
b250YWluZXIsIHRoaXMuX3JpZ2h0Q29udGFpbmVyXTsKQEAgLTExMSwxOSArMTA5LDI0IEBAIGNs
YXNzIE1hY09TRnVsbHNjcmVlbk1lZGlhQ29udHJvbHMgZXh0ZW5kcyBNZWRpYUNvbnRyb2xzCiAg
ICAgICAgIGlmICghdGhpcy5fcmlnaHRDb250YWluZXIpCiAgICAgICAgICAgICByZXR1cm47CiAK
LSAgICAgICAgY29uc3QgbnVtYmVyT2ZFbmFibGVkQnV0dG9ucyA9IHRoaXMuX3JpZ2h0Q29udGFp
bmVyLmNoaWxkcmVuLmZpbHRlcihidXR0b24gPT4gYnV0dG9uLmVuYWJsZWQpLmxlbmd0aDsKLQot
ICAgICAgICBsZXQgYnV0dG9uTWFyZ2luID0gQnV0dG9uTWFyZ2luRm9yRml2ZUJ1dHRvbnM7Ci0g
ICAgICAgIGlmIChudW1iZXJPZkVuYWJsZWRCdXR0b25zID09PSA0KQotICAgICAgICAgICAgYnV0
dG9uTWFyZ2luID0gQnV0dG9uTWFyZ2luRm9yRm91ckJ1dHRvbnM7Ci0gICAgICAgIGVsc2UgaWYg
KG51bWJlck9mRW5hYmxlZEJ1dHRvbnMgPD0gMykKLSAgICAgICAgICAgIGJ1dHRvbk1hcmdpbiA9
IEJ1dHRvbk1hcmdpbkZvclRocmVlQnV0dG9uc09yTGVzczsKLQotICAgICAgICB0aGlzLl9yaWdo
dENvbnRhaW5lci5idXR0b25NYXJnaW4gPSBidXR0b25NYXJnaW47CisgICAgICAgIHRoaXMuX3Jp
Z2h0Q29udGFpbmVyLmNoaWxkcmVuLmZvckVhY2goYnV0dG9uID0+IGRlbGV0ZSBidXR0b24uZHJv
cHBlZCkKKyAgICAgICAgdGhpcy5vdmVyZmxvd0J1dHRvbi5jbGVhckNvbnRleHRNZW51T3B0aW9u
cygpOwogCiAgICAgICAgIHRoaXMuX2xlZnRDb250YWluZXIudmlzaWJsZSA9IHRoaXMubXV0ZUJ1
dHRvbi5lbmFibGVkOwogICAgICAgICB0aGlzLl9sZWZ0Q29udGFpbmVyLmNoaWxkcmVuID0gdGhp
cy5fdm9sdW1lQ29udHJvbHNGb3JDdXJyZW50RGlyZWN0aW9uKCk7CiAKKyAgICAgICAgbGV0IGNv
bGxhcHNhYmxlQnV0dG9ucyA9IHRoaXMuX2NvbGxhcHNhYmxlQnV0dG9ucygpOworICAgICAgICBs
ZXQgc2hvd25SaWdodENvbnRhaW5lckJ1dHRvbnMgPSB0aGlzLl9yaWdodENvbnRhaW5lci5jaGls
ZHJlbi5maWx0ZXIoYnV0dG9uID0+IGJ1dHRvbi5lbmFibGVkICYmICFidXR0b24uZHJvcHBlZCk7
CisgICAgICAgIGxldCBtYXhpbXVtUmlnaHRDb250YWluZXJCdXR0b25Db3VudCA9IHRoaXMubWF4
aW11bVJpZ2h0Q29udGFpbmVyQnV0dG9uQ291bnRPdmVycmlkZSA/PyAzOyAvLyBBbGxvdyBBaXJQ
bGF5LCBFeGl0IEZ1bGxzY3JlZW4sIGFuZCBvdmVyZmxvdyBpZiBhbGwgYnV0dG9ucyBhcmUgc2hv
d24uCisgICAgICAgIGZvciAobGV0IGkgPSBzaG93blJpZ2h0Q29udGFpbmVyQnV0dG9ucy5sZW5n
dGggLSAxOyBpID49IDAgJiYgc2hvd25SaWdodENvbnRhaW5lckJ1dHRvbnMubGVuZ3RoID4gbWF4
aW11bVJpZ2h0Q29udGFpbmVyQnV0dG9uQ291bnQ7IC0taSkgeworICAgICAgICAgICAgbGV0IGJ1
dHRvbiA9IHNob3duUmlnaHRDb250YWluZXJCdXR0b25zW2ldOworICAgICAgICAgICAgaWYgKCFj
b2xsYXBzYWJsZUJ1dHRvbnMuaGFzKGJ1dHRvbikpCisgICAgICAgICAgICAgICAgY29udGludWU7
CisKKyAgICAgICAgICAgIGJ1dHRvbi5kcm9wcGVkID0gdHJ1ZTsKKyAgICAgICAgICAgIHRoaXMu
b3ZlcmZsb3dCdXR0b24uYWRkQ29udGV4dE1lbnVPcHRpb25zKGJ1dHRvbi5jb250ZXh0TWVudU9w
dGlvbnMpOworICAgICAgICB9CisKICAgICAgICAgdGhpcy5fbGVmdENvbnRhaW5lci5sYXlvdXQo
KTsKICAgICAgICAgdGhpcy5fY2VudGVyQ29udGFpbmVyLmxheW91dCgpOwogICAgICAgICB0aGlz
Ll9yaWdodENvbnRhaW5lci5sYXlvdXQoKTsKQEAgLTE0Nyw2ICsxNTAsMTQgQEAgY2xhc3MgTWFj
T1NGdWxsc2NyZWVuTWVkaWFDb250cm9scyBleHRlbmRzIE1lZGlhQ29udHJvbHMKICAgICAgICAg
cmV0dXJuIHRoaXMudXNlc0xUUlVzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb24gPyBbdGhpcy5t
dXRlQnV0dG9uLCB0aGlzLnZvbHVtZVNsaWRlcl0gOiBbdGhpcy52b2x1bWVTbGlkZXIsIHRoaXMu
bXV0ZUJ1dHRvbl07CiAgICAgfQogCisgICAgX2NvbGxhcHNhYmxlQnV0dG9ucygpCisgICAgewor
ICAgICAgICByZXR1cm4gbmV3IFNldChbCisgICAgICAgICAgICB0aGlzLnRyYWNrc0J1dHRvbiwK
KyAgICAgICAgICAgIHRoaXMucGlwQnV0dG9uLAorICAgICAgICBdKTsKKyAgICB9CisKICAgICBf
aGFuZGxlTW91c2Vkb3duKGV2ZW50KQogICAgIHsKICAgICAgICAgLy8gV2UgZG9uJ3QgYWxsb3cg
ZHJhZ2dpbmcgd2hlbiB0aGUgaW50ZXJhY3Rpb24gaXMgaW5pdGlhdGVkIG9uIGFuIGludGVyYWN0
aXZlIGVsZW1lbnQuIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4t
bWVkaWEtY29udHJvbHMvY29udHJvbHMvcGlwLWJ1dHRvbi5qcyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL3BpcC1idXR0b24uanMKaW5kZXgg
ZGU1YzI3MGM5ZDIwLi43MWJiNGFmOGY2NTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL3BpcC1idXR0b24uanMKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvcGlw
LWJ1dHRvbi5qcwpAQCAtMzUsNCArMzUsMTMgQEAgY2xhc3MgUGlQQnV0dG9uIGV4dGVuZHMgQnV0
dG9uCiAgICAgICAgIH0pOwogICAgIH0KIAorICAgIC8vIFB1YmxpYworCisgICAgZ2V0IGNvbnRl
eHRNZW51T3B0aW9ucygpCisgICAgeworICAgICAgICByZXR1cm4geworICAgICAgICAgICAgaW5j
bHVkZVBpY3R1cmVJblBpY3R1cmU6IHRydWUsCisgICAgICAgIH07CisgICAgfQorCiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRp
YS9tZWRpYS1jb250cm9sbGVyLmpzIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVk
aWEtY29udHJvbHMvbWVkaWEvbWVkaWEtY29udHJvbGxlci5qcwppbmRleCBmZjZhZGZkOGIzZmYu
LmNjZmVjZGM2YjViZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4t
bWVkaWEtY29udHJvbHMvbWVkaWEvbWVkaWEtY29udHJvbGxlci5qcworKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS9tZWRpYS1jb250cm9sbGVy
LmpzCkBAIC0zNzMsNCArMzczLDExIEBAIGNsYXNzIE1lZGlhQ29udHJvbGxlcgogICAgICAgICB0
aGlzLmNvbnRyb2xzLnZpc2libGUgPSBzaG91bGRDb250cm9sc0JlQXZhaWxhYmxlOwogICAgIH0K
IAorICAgIC8vIFRlc3RpbmcKKworICAgIHNldCBtYXhpbXVtUmlnaHRDb250YWluZXJCdXR0b25D
b3VudE92ZXJyaWRlKGNvdW50KQorICAgIHsKKyAgICAgICAgdGhpcy5jb250cm9scy5tYXhpbXVt
UmlnaHRDb250YWluZXJCdXR0b25Db3VudE92ZXJyaWRlID0gY291bnQ7CisgICAgfQorCiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lbi5scHJvai9Mb2NhbGl6YWJsZS5zdHJpbmdzIGIv
U291cmNlL1dlYkNvcmUvZW4ubHByb2ovTG9jYWxpemFibGUuc3RyaW5ncwppbmRleCA2MDQ1MjBk
MjYwNWQuLjI1OTI5YTE0YTg3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZW4ubHByb2ov
TG9jYWxpemFibGUuc3RyaW5ncworKysgYi9Tb3VyY2UvV2ViQ29yZS9lbi5scHJvai9Mb2NhbGl6
YWJsZS5zdHJpbmdzCkBAIC02NjEsNiArNjYxLDkgQEAKIC8qIEZpbGUgVXBsb2FkIGFsZXJ0IHNo
ZWV0IGJ1dHRvbiBzdHJpbmcgZm9yIGNob29zaW5nIGFuIGV4aXN0aW5nIG1lZGlhIGl0ZW0gZnJv
bSB0aGUgUGhvdG8gTGlicmFyeSAqLwogIlBob3RvIExpYnJhcnkgKGZpbGUgdXBsb2FkIGFjdGlv
biBzaGVldCkiID0gIlBob3RvIExpYnJhcnkiOwogCisvKiBQaWN0dXJlIGluIFBpY3R1cmUgbWVk
aWEgY29udHJvbHMgY29udGV4dCBtZW51IHRpdGxlICovCisiUGljdHVyZSBpbiBQaWN0dXJlIChN
ZWRpYSBDb250cm9scyBNZW51KSIgPSAiUGljdHVyZSBpbiBQaWN0dXJlIjsKKwogLyogTWVkaWEg
UGxheSBjb250ZXh0IG1lbnUgaXRlbSAqLwogIlBsYXkiID0gIlBsYXkiOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAppbmRleCA1YjFkYzNiNGU3NDEuLmVhOGNkZTc4
MTBkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCkBAIC03Mzkx
LDYgKzczOTEsMTEgQEAgU3RyaW5nIEhUTUxNZWRpYUVsZW1lbnQ6OmdldEN1cnJlbnRNZWRpYUNv
bnRyb2xzU3RhdHVzKCkKICAgICByZXR1cm4gc3RhdHVzOwogfQogCit2b2lkIEhUTUxNZWRpYUVs
ZW1lbnQ6OnNldE1lZGlhQ29udHJvbHNNYXhpbXVtUmlnaHRDb250YWluZXJCdXR0b25Db3VudE92
ZXJyaWRlKHNpemVfdCBjb3VudCkKK3sKKyAgICBzZXRDb250cm9sbGVySlNQcm9wZXJ0eSgibWF4
aW11bVJpZ2h0Q29udGFpbmVyQnV0dG9uQ291bnRPdmVycmlkZSIsIEpTQzo6anNOdW1iZXIoY291
bnQpKTsKK30KKwogdW5zaWduZWQgbG9uZyBsb25nIEhUTUxNZWRpYUVsZW1lbnQ6OmZpbGVTaXpl
KCkgY29uc3QKIHsKICAgICBpZiAobV9wbGF5ZXIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlh
RWxlbWVudC5oCmluZGV4IDMwNmM2ZmE2YWJiNS4uODc1MzY0OWM0NDVkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaApAQCAtNDk0LDYgKzQ5NCw3IEBAIHB1YmxpYzoKICAg
ICB2b2lkIHBhZ2VTY2FsZUZhY3RvckNoYW5nZWQoKTsKICAgICB2b2lkIHVzZXJJbnRlcmZhY2VM
YXlvdXREaXJlY3Rpb25DaGFuZ2VkKCk7CiAgICAgV0VCQ09SRV9FWFBPUlQgU3RyaW5nIGdldEN1
cnJlbnRNZWRpYUNvbnRyb2xzU3RhdHVzKCk7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRN
ZWRpYUNvbnRyb2xzTWF4aW11bVJpZ2h0Q29udGFpbmVyQnV0dG9uQ291bnRPdmVycmlkZShzaXpl
X3QpOwogICAgIE1lZGlhQ29udHJvbHNIb3N0KiBtZWRpYUNvbnRyb2xzSG9zdCgpIHsgcmV0dXJu
IG1fbWVkaWFDb250cm9sc0hvc3QuZ2V0KCk7IH0KIAogICAgIGJvb2wgaXNEaXNhYmxpbmdTbGVl
cCgpIGNvbnN0IHsgcmV0dXJuIG1fc2xlZXBEaXNhYmxlci5nZXQoKTsgfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIvU291cmNlL1dlYkNvcmUvdGVz
dGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IDhjMTJkZGExNTQxOS4uNWZkZmQ1NzQxNTNiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCkBAIC00NzY0LDE2ICs0NzY0LDIwIEBAIHZv
aWQgSW50ZXJuYWxzOjpzeXN0ZW1CZWVwKCkKICAgICBTeXN0ZW1Tb3VuZE1hbmFnZXI6OnNpbmds
ZXRvbigpLnN5c3RlbUJlZXAoKTsKIH0KIAorI2lmIEVOQUJMRShWSURFTykKKwogU3RyaW5nIElu
dGVybmFsczo6Z2V0Q3VycmVudE1lZGlhQ29udHJvbHNTdGF0dXNGb3JFbGVtZW50KEhUTUxNZWRp
YUVsZW1lbnQmIG1lZGlhRWxlbWVudCkKIHsKLSNpZiBFTkFCTEUoVklERU8pCiAgICAgcmV0dXJu
IG1lZGlhRWxlbWVudC5nZXRDdXJyZW50TWVkaWFDb250cm9sc1N0YXR1cygpOwotI2Vsc2UKLSAg
ICBVTlVTRURfUEFSQU0obWVkaWFFbGVtZW50KTsKLSAgICByZXR1cm4geyB9OwotI2VuZGlmCiB9
CiAKK3ZvaWQgSW50ZXJuYWxzOjpzZXRNZWRpYUNvbnRyb2xzTWF4aW11bVJpZ2h0Q29udGFpbmVy
QnV0dG9uQ291bnRPdmVycmlkZShIVE1MTWVkaWFFbGVtZW50JiBtZWRpYUVsZW1lbnQsIHNpemVf
dCBjb3VudCkKK3sKKyAgICBtZWRpYUVsZW1lbnQuc2V0TWVkaWFDb250cm9sc01heGltdW1SaWdo
dENvbnRhaW5lckJ1dHRvbkNvdW50T3ZlcnJpZGUoY291bnQpOworfQorCisjZW5kaWYgLy8gRU5B
QkxFKFZJREVPKQorCiAjaWYgIVBMQVRGT1JNKENPQ09BKQogCiBTdHJpbmcgSW50ZXJuYWxzOjp1
c2VyVmlzaWJsZVN0cmluZyhjb25zdCBET01VUkwmIHVybCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5oCmluZGV4IDQ2MTE5ODY5NmY3YS4uOTk4ZDY3MzYyZTk5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmgKQEAgLTcyOCw3ICs3MjgsMTAgQEAgcHVibGljOgogCiAgICAgRXhjZXB0
aW9uT3I8U3RyaW5nPiBwYXRoU3RyaW5nV2l0aFNocmlua1dyYXBwZWRSZWN0cyhjb25zdCBWZWN0
b3I8ZG91YmxlPiYgcmVjdENvbXBvbmVudHMsIGRvdWJsZSByYWRpdXMpOwogCisjaWYgRU5BQkxF
KFZJREVPKQogICAgIFN0cmluZyBnZXRDdXJyZW50TWVkaWFDb250cm9sc1N0YXR1c0ZvckVsZW1l
bnQoSFRNTE1lZGlhRWxlbWVudCYpOworICAgIHZvaWQgc2V0TWVkaWFDb250cm9sc01heGltdW1S
aWdodENvbnRhaW5lckJ1dHRvbkNvdW50T3ZlcnJpZGUoSFRNTE1lZGlhRWxlbWVudCYsIHNpemVf
dCk7CisjZW5kaWYgLy8gRU5BQkxFKFZJREVPKQogCiAgICAgU3RyaW5nIHVzZXJWaXNpYmxlU3Ry
aW5nKGNvbnN0IERPTVVSTCYpOwogICAgIHZvaWQgc2V0U2hvd0FsbFBsdWdpbnMoYm9vbCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKaW5kZXggMDFlM2E4NmNmYjQzLi4yMTdiOGZm
NWJhMzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKQEAgLTc2Myw2ICs3NjMs
NyBAQCBlbnVtIFRyZWVUeXBlIHsKICAgICBET01TdHJpbmcgcGF0aFN0cmluZ1dpdGhTaHJpbmtX
cmFwcGVkUmVjdHMoc2VxdWVuY2U8ZG91YmxlPiByZWN0Q29tcG9uZW50cywgZG91YmxlIHJhZGl1
cyk7CiAKICAgICBbQ29uZGl0aW9uYWw9VklERU9dIERPTVN0cmluZyBnZXRDdXJyZW50TWVkaWFD
b250cm9sc1N0YXR1c0ZvckVsZW1lbnQoSFRNTE1lZGlhRWxlbWVudCBlbGVtZW50KTsKKyAgICBb
Q29uZGl0aW9uYWw9VklERU9dIHVuZGVmaW5lZCBzZXRNZWRpYUNvbnRyb2xzTWF4aW11bVJpZ2h0
Q29udGFpbmVyQnV0dG9uQ291bnRPdmVycmlkZShIVE1MTWVkaWFFbGVtZW50IGVsZW1lbnQsIHVu
c2lnbmVkIGxvbmcgY291bnQpOwogCiAgICAgRE9NU3RyaW5nIHVzZXJWaXNpYmxlU3RyaW5nKERP
TVVSTCB1cmwpOwogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>