<?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>221937</bug_id>
          
          <creation_ts>2021-02-15 16:38:08 -0800</creation_ts>
          <short_desc>[iOS] Add an overflow button that&apos;s shown when controls are dropped so that it&apos;s still possible to trigger the dropped button&apos;s actions</short_desc>
          <delta_ts>2021-02-19 11:15:08 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Media</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>221938</blocked>
          <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>hi</cc>
    
    <cc>jer.noble</cc>
    
    <cc>joepeck</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>pdr</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>tsavell</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1729457</commentid>
    <comment_count>0</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2021-02-15 16:38:08 -0800</bug_when>
    <thetext>e.g. if the tracks button is dropped, there&apos;s no way to change the language/subtitles (unless you make the video larger to un-drop the tracks button)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729463</commentid>
    <comment_count>1</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2021-02-15 16:44:17 -0800</bug_when>
    <thetext>&lt;rdar://problem/20968078&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729464</commentid>
    <comment_count>2</comment_count>
      <attachid>420395</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2021-02-15 16:52:07 -0800</bug_when>
    <thetext>Created attachment 420395
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729836</commentid>
    <comment_count>3</comment_count>
      <attachid>420512</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2021-02-16 11:47:27 -0800</bug_when>
    <thetext>Created attachment 420512
Patch

add Overflow.svg for macOS too</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730025</commentid>
    <comment_count>4</comment_count>
      <attachid>420560</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2021-02-16 16:56:18 -0800</bug_when>
    <thetext>Created attachment 420560
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730316</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-02-17 09:32:17 -0800</bug_when>
    <thetext>Committed r273004: &lt;https://commits.webkit.org/r273004&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 420560.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1731453</commentid>
    <comment_count>6</comment_count>
    <who name="Truitt Savell">tsavell</who>
    <bug_when>2021-02-19 11:15:08 -0800</bug_when>
    <thetext>It looks like the changes in https://trac.webkit.org/changeset/273004/webkit

broke media/modern-media-controls/volume-support/volume-support-click.html

tracking in https://bugs.webkit.org/show_bug.cgi?id=222181</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420395</attachid>
            <date>2021-02-15 16:52:07 -0800</date>
            <delta_ts>2021-02-16 11:47:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221937-20210215175206.patch</filename>
            <type>text/plain</type>
            <size>36248</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAyODdkMzFhMmJmMGFmMTdlODA2OGMxZTNjY2NjNjQ1ZDFkMjcyZGYwLi5j
OTA5N2M5YjMzNjYxZmNiNDVkMDQ2MTNiODAyMDQxMmYyODUyOTAwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsNjQgQEAKKzIwMjEtMDItMTUgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29t
PgorCisgICAgICAgIFtpT1NdIEFkZCBhbiBvdmVyZmxvdyBidXR0b24gdGhhdCdzIHNob3duIHdo
ZW4gY29udHJvbHMgYXJlIGRyb3BwZWQgc28gdGhhdCBpdCdzIHN0aWxsIHBvc3NpYmxlIHRvIHRy
aWdnZXIgdGhlIGRyb3BwZWQgYnV0dG9uJ3MgYWN0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxOTM3CisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS8yMDk2ODA3OD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIE1vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5pZGw6CisgICAg
ICAgICogTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmNwcDoKKyAgICAg
ICAgKiBNb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuaDoKKyAgICAgICAg
KFdlYkNvcmU6Ok1lZGlhQ29udHJvbHNIb3N0OjpzaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51
KToKKyAgICAgICAgVXNlIGEgSlNPTiBgb3B0aW9uc2AgYXJndW1lbnQgaW5zdGVhZCBvZiBhIGRl
ZmluZWQgYGRpY3Rpb25hcnlgIHNvIHRoYXQgaXQncyBlYXNpZXIgdG8gYWRkCisgICAgICAgIG5l
dyB2YWx1ZXMgYW5kIGlzIG1vcmUgZmxleGlibGUgd2l0aCB0aGUgdHlwZXMgb2YgdmFsdWVzLgor
CisgICAgICAgICogTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvb3ZlcmZs
b3ctYnV0dG9uLmpzOiBBZGRlZC4KKyAgICAgICAgKE92ZXJmbG93QnV0dG9uKToKKyAgICAgICAg
KE92ZXJmbG93QnV0dG9uLnByb3RvdHlwZS5nZXQgdmlzaWJsZSk6CisgICAgICAgIChPdmVyZmxv
d0J1dHRvbi5wcm90b3R5cGUuc2V0IHZpc2libGUpOgorICAgICAgICAoT3ZlcmZsb3dCdXR0b24u
cHJvdG90eXBlLmdldCBjb250ZXh0TWVudU9wdGlvbnMpOgorICAgICAgICAoT3ZlcmZsb3dCdXR0
b24ucHJvdG90eXBlLmFkZENvbnRleHRNZW51T3B0aW9ucyk6CisgICAgICAgIChPdmVyZmxvd0J1
dHRvbi5wcm90b3R5cGUuY2xlYXJDb250ZXh0TWVudU9wdGlvbnMpOgorICAgICAgICAoT3ZlcmZs
b3dCdXR0b24ucHJvdG90eXBlLnNldCBkZWZhdWx0Q29udGV4dE1lbnVPcHRpb25zKToKKyAgICAg
ICAgKiBNb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS9vdmVyZmxvdy1zdXBwb3J0
LmpzOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250
cm9scy9jb250cm9scy90cmFja3MtYnV0dG9uLmpzLgorICAgICAgICAoT3ZlcmZsb3dTdXBwb3J0
LnByb3RvdHlwZS5nZXQgbWVkaWFFdmVudHMpOgorICAgICAgICAoT3ZlcmZsb3dTdXBwb3J0LnBy
b3RvdHlwZS5nZXQgY29udHJvbCk6CisgICAgICAgIChPdmVyZmxvd1N1cHBvcnQucHJvdG90eXBl
LmJ1dHRvbldhc1ByZXNzZWQpOgorICAgICAgICAoT3ZlcmZsb3dTdXBwb3J0LnByb3RvdHlwZS5z
eW5jQ29udHJvbCk6CisgICAgICAgICogTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29u
dHJvbHMvaW5saW5lLW1lZGlhLWNvbnRyb2xzLmpzOgorICAgICAgICAoSW5saW5lTWVkaWFDb250
cm9scy5wcm90b3R5cGUubGF5b3V0KToKKyAgICAgICAgKElubGluZU1lZGlhQ29udHJvbHMucHJv
dG90eXBlLl9yaWdodENvbnRhaW5lckJ1dHRvbnMpOgorICAgICAgICAoSW5saW5lTWVkaWFDb250
cm9scy5wcm90b3R5cGUuX2Ryb3BwYWJsZUJ1dHRvbnMpOgorICAgICAgICBDcmVhdGUgYW4gYE92
ZXJmbG93QnV0dG9uYCB0aGF0IG1haW5haW5zIGEgSlNPTiBvYmplY3Qgb2YgYGNvbnRleHRNZW51
T3B0aW9uc2Agd2hpY2ggYXJlCisgICAgICAgIHBhc3NlZCB0byBgTWVkaWFDb250cm9sc0hvc3Q6
OnNob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnVgLiBXaGVuZXZlciBhIGBCdXR0b25gIGlzIGRy
b3BwZWQsCisgICAgICAgIGFkZCBpdHMgYGdldCBjb250ZXh0TWVudU9wdGlvbnNgIHRvIHRoZSBg
T3ZlcmZsb3dCdXR0b25gJ3MgYGNvbnRleHRNZW51T3B0aW9uc2Agc28gdGhhdCB3aGVuCisgICAg
ICAgIHRoZSBgT3ZlcmZsb3dCdXR0b25gIGlzIHByZXNzZWQgaXQgc2hvd3MgYSBjb250ZXh0bWVu
dSB3aXRoIGFjdGlvbnMgZm9yIGFsbCBkcm9wcGVkIGJ1dHRvbnMuCisKKyAgICAgICAgKiBNb2R1
bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9idXR0b24uanM6CisgICAgICAgIChC
dXR0b24ucHJvdG90eXBlLmdldCBjb250ZXh0TWVudU9wdGlvbnMpOiBBZGRlZC4KKyAgICAgICAg
KiBNb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy90cmFja3MtYnV0dG9uLmpz
OgorICAgICAgICAoVHJhY2tzQnV0dG9uLnByb3RvdHlwZS5nZXQgY29udGV4dE1lbnVPcHRpb25z
KTogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWVkaWEv
dHJhY2tzLXN1cHBvcnQuanM6CisgICAgICAgIChUcmFja3NTdXBwb3J0LnByb3RvdHlwZS5idXR0
b25XYXNQcmVzc2VkKToKKyAgICAgICAgQWRkIGEgYGdldCBjb250ZXh0TWVudU9wdGlvbnNgIHRv
IHRoZSBiYXNlIGBCdXR0b25gIGNsYXNzIHNvIHRoYXQgYWxsIGJ1dHRvbnMgYXJlIGFibGUgdG8K
KyAgICAgICAgYmUgbWVyZ2VkIGludG8gYE92ZXJmbG93QnV0dG9uYC4KKworICAgICAgICAqIE1v
ZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL21lZGlhLWNvbnRyb2xzLmpzOgor
ICAgICAgICAoTWVkaWFDb250cm9scyk6CisgICAgICAgICogTW9kdWxlcy9tb2Rlcm4tbWVkaWEt
Y29udHJvbHMvbWVkaWEvbWVkaWEtY29udHJvbGxlci5qczoKKyAgICAgICAgKE1lZGlhQ29udHJv
bGxlci5wcm90b3R5cGUuX3N1cHBvcnRpbmdPYmplY3RDbGFzc2VzKToKKworICAgICAgICAqIHJl
bmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1l
SU9TOjptZWRpYUNvbnRyb2xzU2NyaXB0KToKKworICAgICAgICAqIGVuLmxwcm9qL21vZGVybi1t
ZWRpYS1jb250cm9scy1sb2NhbGl6ZWQtc3RyaW5ncy5qczoKKyAgICAgICAgKiBNb2R1bGVzL21v
ZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9pY29uLXNlcnZpY2UuanM6CisgICAgICAgICog
TW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvaW1hZ2VzL2lPUy9PdmVyZmxvdy5zdmc6IEFk
ZGVkLgorICAgICAgICAqIE1vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2pzLWZpbGVzOgor
ICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgQWRk
IG5ldyBmaWxlcywgaWNvbnMsIGFuZCB0ZXh0LgorCiAyMDIxLTAyLTExICBaYWxhbiBCdWp0YXMg
IDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW0xGQ11bSW50ZWdyYXRpb25dIFRoZSByb290
IGJveCdzIGRpc3BsYXkgdHlwZSBzaG91bGQgc3RheSBEaXNwbGF5OjpCbG9jawpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xz
SG9zdC5jcHAKaW5kZXggMGM4M2EzNDU1ZGUxNmUwNmZhY2VjYzk5YTc4ZmE1ZTY3ZDJiNWQ3OC4u
NThmMTExM2E5OWNkZjBjNWZhODFkMGY5NTEzYjhkYzkyYTEzMWQzYyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hv
c3QuY3BwCkBAIC00NSwxMSArNDUsMTYgQEAKICNpbmNsdWRlICJUZXh0VHJhY2suaCIKICNpbmNs
dWRlICJUZXh0VHJhY2tMaXN0LmgiCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNDSlNWYWx1
ZUlubGluZXMuaD4KKyNpbmNsdWRlIDx3dGYvSlNPTlZhbHVlcy5oPgogI2luY2x1ZGUgPHd0Zi9V
VUlELmg+CiAjaW5jbHVkZSA8d3RmL1ZhcmlhbnQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
CisjaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKKyNpbmNsdWRlIDxXZWJLaXRBZGRpdGlvbnMv
TWVkaWFDb250cm9sc0hvc3RBZGRpdGlvbnMuY3BwPgorI2VuZGlmCisKIGNvbnN0IEF0b21TdHJp
bmcmIE1lZGlhQ29udHJvbHNIb3N0OjphdXRvbWF0aWNLZXl3b3JkKCkKIHsKICAgICBzdGF0aWMg
TWFpblRocmVhZE5ldmVyRGVzdHJveWVkPGNvbnN0IEF0b21TdHJpbmc+IGF1dG9tYXRpYygiYXV0
b21hdGljIiwgQXRvbVN0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpOwpAQCAtMzEzLDcgKzMx
OCwxNSBAQCBTdHJpbmcgTWVkaWFDb250cm9sc0hvc3Q6OmZvcm1hdHRlZFN0cmluZ0ZvckR1cmF0
aW9uKGRvdWJsZSBkdXJhdGlvbkluU2Vjb25kcykKIAogI2lmIEVOQUJMRShNRURJQV9DT05UUk9M
U19DT05URVhUX01FTlVTKQogCi12b2lkIE1lZGlhQ29udHJvbHNIb3N0OjpzaG93TWVkaWFDb250
cm9sc0NvbnRleHRNZW51KEhUTUxFbGVtZW50JiB0YXJnZXQsIENvbnRleHRNZW51T3B0aW9ucyYm
IG9wdGlvbnMpCisjaWYgIWRlZmluZWQoTWVkaWFDb250cm9sc0hvc3RBZGRpdGlvbnNfc2hvd01l
ZGlhQ29udHJvbHNDb250ZXh0TWVudV9NZW51RGF0YSkKKyNkZWZpbmUgTWVkaWFDb250cm9sc0hv
c3RBZGRpdGlvbnNfc2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudV9NZW51RGF0YQorI2VuZGlm
CisKKyNpZiAhZGVmaW5lZChNZWRpYUNvbnRyb2xzSG9zdEFkZGl0aW9uc19zaG93TWVkaWFDb250
cm9sc0NvbnRleHRNZW51X01lbnVEYXRhX3N3aXRjaE9uKQorI2RlZmluZSBNZWRpYUNvbnRyb2xz
SG9zdEFkZGl0aW9uc19zaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51X01lbnVEYXRhX3N3aXRj
aE9uCisjZW5kaWYKKwordm9pZCBNZWRpYUNvbnRyb2xzSG9zdDo6c2hvd01lZGlhQ29udHJvbHND
b250ZXh0TWVudShIVE1MRWxlbWVudCYgdGFyZ2V0LCBTdHJpbmcmJiBvcHRpb25zSlNPTlN0cmlu
ZykKIHsKICAgICBpZiAoIW1fbWVkaWFFbGVtZW50KQogICAgICAgICByZXR1cm47CkBAIC0zMjQs
MTIgKzMzNywyNSBAQCB2b2lkIE1lZGlhQ29udHJvbHNIb3N0OjpzaG93TWVkaWFDb250cm9sc0Nv
bnRleHRNZW51KEhUTUxFbGVtZW50JiB0YXJnZXQsIENvbnRleAogICAgIGlmICghcGFnZSkKICAg
ICAgICAgcmV0dXJuOwogCi0gICAgdXNpbmcgTWVudVRyYWNrSXRlbSA9IFZhcmlhbnQ8UmVmUHRy
PEF1ZGlvVHJhY2s+LCBSZWZQdHI8VGV4dFRyYWNrPj47Ci0gICAgSGFzaE1hcDxNZWRpYUNvbnRy
b2xzQ29udGV4dE1lbnVJdGVtOjpJRCwgTWVudVRyYWNrSXRlbT4gaWRNYXA7CisgICAgYXV0byBv
cHRpb25zSlNPTiA9IEpTT046OlZhbHVlOjpwYXJzZUpTT04ob3B0aW9uc0pTT05TdHJpbmcpOwor
ICAgIGlmICghb3B0aW9uc0pTT04pCisgICAgICAgIHJldHVybjsKKworICAgIGF1dG8gb3B0aW9u
c0pTT05PYmplY3QgPSBvcHRpb25zSlNPTi0+YXNPYmplY3QoKTsKKyAgICBpZiAoIW9wdGlvbnNK
U09OT2JqZWN0KQorICAgICAgICByZXR1cm47CisKKyAgICB1c2luZyBNZW51RGF0YSA9IFZhcmlh
bnQ8UmVmUHRyPEF1ZGlvVHJhY2s+LCBSZWZQdHI8VGV4dFRyYWNrPiBNZWRpYUNvbnRyb2xzSG9z
dEFkZGl0aW9uc19zaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51X01lbnVEYXRhPjsKKyAgICBI
YXNoTWFwPE1lZGlhQ29udHJvbHNDb250ZXh0TWVudUl0ZW06OklELCBNZW51RGF0YT4gaWRNYXA7
CisgICAgYXV0byBnZW5lcmF0ZUlEID0gWyZdIChNZW51RGF0YSBkYXRhKSB7CisgICAgICAgIGF1
dG8gaWQgPSBpZE1hcC5zaXplKCkgKyAxOworICAgICAgICBpZE1hcC5hZGQoaWQsIGRhdGEpOwor
ICAgICAgICByZXR1cm4gaWQ7CisgICAgfTsKIAogICAgIFZlY3RvcjxNZWRpYUNvbnRyb2xzQ29u
dGV4dE1lbnVJdGVtPiBpdGVtczsKIAotICAgIGlmIChvcHRpb25zLmluY2x1ZGVBdWRpb1RyYWNr
cykgeworICAgIGlmIChvcHRpb25zSlNPTk9iamVjdC0+Z2V0Qm9vbGVhbigiaW5jbHVkZUF1ZGlv
VHJhY2tzIl9zKS52YWx1ZU9yKGZhbHNlKSkgewogICAgICAgICBpZiAoYXV0byogYXVkaW9UcmFj
a3MgPSBtZWRpYUVsZW1lbnQuYXVkaW9UcmFja3MoKTsgYXVkaW9UcmFja3MgJiYgYXVkaW9UcmFj
a3MtPmxlbmd0aCgpID4gMSkgewogICAgICAgICAgICAgTWVkaWFDb250cm9sc0NvbnRleHRNZW51
SXRlbSBhdWRpb1RyYWNrc0l0ZW07CiAgICAgICAgICAgICBhdWRpb1RyYWNrc0l0ZW0udGl0bGUg
PSBXRUJfVUlfU1RSSU5HX0tFWSgiTGFuZ3VhZ2VzIiwgIkxhbmd1YWdlcyAoTWVkaWEgQ29udHJv
bHMgTWVudSkiLCAiTGFuZ3VhZ2VzIG1lZGlhIGNvbnRyb2xzIGNvbnRleHQgbWVudSB0aXRsZSIp
OwpAQCAtMzQwLDEyICszNjYsOSBAQCB2b2lkIE1lZGlhQ29udHJvbHNIb3N0OjpzaG93TWVkaWFD
b250cm9sc0NvbnRleHRNZW51KEhUTUxFbGVtZW50JiB0YXJnZXQsIENvbnRleAogCiAgICAgICAg
ICAgICBmb3IgKGF1dG8mIGF1ZGlvVHJhY2sgOiBjYXB0aW9uUHJlZmVyZW5jZXMuc29ydGVkVHJh
Y2tMaXN0Rm9yTWVudShhdWRpb1RyYWNrcykpIHsKICAgICAgICAgICAgICAgICBNZWRpYUNvbnRy
b2xzQ29udGV4dE1lbnVJdGVtIGF1ZGlvVHJhY2tJdGVtOwotICAgICAgICAgICAgICAgIGF1ZGlv
VHJhY2tJdGVtLmlkID0gaWRNYXAuc2l6ZSgpICsgMTsKKyAgICAgICAgICAgICAgICBhdWRpb1Ry
YWNrSXRlbS5pZCA9IGdlbmVyYXRlSUQoYXVkaW9UcmFjayk7CiAgICAgICAgICAgICAgICAgYXVk
aW9UcmFja0l0ZW0udGl0bGUgPSBjYXB0aW9uUHJlZmVyZW5jZXMuZGlzcGxheU5hbWVGb3JUcmFj
ayhhdWRpb1RyYWNrLmdldCgpKTsKICAgICAgICAgICAgICAgICBhdWRpb1RyYWNrSXRlbS5pc0No
ZWNrZWQgPSBhdWRpb1RyYWNrLT5lbmFibGVkKCk7Ci0KLSAgICAgICAgICAgICAgICBpZE1hcC5h
ZGQoYXVkaW9UcmFja0l0ZW0uaWQsIGF1ZGlvVHJhY2spOwotCiAgICAgICAgICAgICAgICAgYXVk
aW9UcmFja3NJdGVtLmNoaWxkcmVuLmFwcGVuZChXVEZNb3ZlKGF1ZGlvVHJhY2tJdGVtKSk7CiAg
ICAgICAgICAgICB9CiAKQEAgLTM1NCw3ICszNzcsNyBAQCB2b2lkIE1lZGlhQ29udHJvbHNIb3N0
OjpzaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KEhUTUxFbGVtZW50JiB0YXJnZXQsIENvbnRl
eAogICAgICAgICB9CiAgICAgfQogCi0gICAgaWYgKG9wdGlvbnMuaW5jbHVkZVRleHRUcmFja3Mp
IHsKKyAgICBpZiAob3B0aW9uc0pTT05PYmplY3QtPmdldEJvb2xlYW4oImluY2x1ZGVUZXh0VHJh
Y2tzIl9zKS52YWx1ZU9yKGZhbHNlKSkgewogICAgICAgICBpZiAoYXV0byogdGV4dFRyYWNrcyA9
IG1lZGlhRWxlbWVudC50ZXh0VHJhY2tzKCk7IHRleHRUcmFja3MgJiYgdGV4dFRyYWNrcy0+bGVu
Z3RoKCkpIHsKICAgICAgICAgICAgIE1lZGlhQ29udHJvbHNDb250ZXh0TWVudUl0ZW0gdGV4dFRy
YWNrc0l0ZW07CiAgICAgICAgICAgICB0ZXh0VHJhY2tzSXRlbS50aXRsZSA9IFdFQl9VSV9TVFJJ
TkdfS0VZKCJTdWJ0aXRsZXMiLCAiU3VidGl0bGVzIChNZWRpYSBDb250cm9scyBNZW51KSIsICJT
dWJ0aXRsZXMgbWVkaWEgY29udHJvbHMgY29udGV4dCBtZW51IHRpdGxlIik7CkBAIC0zNzAsNyAr
MzkzLDcgQEAgdm9pZCBNZWRpYUNvbnRyb2xzSG9zdDo6c2hvd01lZGlhQ29udHJvbHNDb250ZXh0
TWVudShIVE1MRWxlbWVudCYgdGFyZ2V0LCBDb250ZXgKIAogICAgICAgICAgICAgZm9yIChhdXRv
JiB0ZXh0VHJhY2sgOiBzb3J0ZWRUZXh0VHJhY2tzKSB7CiAgICAgICAgICAgICAgICAgTWVkaWFD
b250cm9sc0NvbnRleHRNZW51SXRlbSB0ZXh0VHJhY2tJdGVtOwotICAgICAgICAgICAgICAgIHRl
eHRUcmFja0l0ZW0uaWQgPSBpZE1hcC5zaXplKCkgKyAxOworICAgICAgICAgICAgICAgIHRleHRU
cmFja0l0ZW0uaWQgPSBnZW5lcmF0ZUlEKHRleHRUcmFjayk7CiAgICAgICAgICAgICAgICAgdGV4
dFRyYWNrSXRlbS50aXRsZSA9IGNhcHRpb25QcmVmZXJlbmNlcy5kaXNwbGF5TmFtZUZvclRyYWNr
KHRleHRUcmFjay5nZXQoKSk7CiAgICAgICAgICAgICAgICAgaWYgKGFsbFRyYWNrc0Rpc2FibGVk
ICYmIHRleHRUcmFjayA9PSAmVGV4dFRyYWNrOjpjYXB0aW9uTWVudU9mZkl0ZW0oKSAmJiAoY2Fw
dGlvblByZWZlcmVuY2VzLmNhcHRpb25EaXNwbGF5TW9kZSgpID09IENhcHRpb25Vc2VyUHJlZmVy
ZW5jZXM6OkZvcmNlZE9ubHkgfHwgY2FwdGlvblByZWZlcmVuY2VzLmNhcHRpb25EaXNwbGF5TW9k
ZSgpID09IENhcHRpb25Vc2VyUHJlZmVyZW5jZXM6Ok1hbnVhbCkpCiAgICAgICAgICAgICAgICAg
ICAgIHRleHRUcmFja0l0ZW0uaXNDaGVja2VkID0gdHJ1ZTsKQEAgLTM4MCw5ICs0MDMsNiBAQCB2
b2lkIE1lZGlhQ29udHJvbHNIb3N0OjpzaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KEhUTUxF
bGVtZW50JiB0YXJnZXQsIENvbnRleAogICAgICAgICAgICAgICAgICAgICB0ZXh0VHJhY2tJdGVt
LmlzQ2hlY2tlZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAg
ICAgICB0ZXh0VHJhY2tJdGVtLmlzQ2hlY2tlZCA9IGZhbHNlOwotCi0gICAgICAgICAgICAgICAg
aWRNYXAuYWRkKHRleHRUcmFja0l0ZW0uaWQsIHRleHRUcmFjayk7Ci0KICAgICAgICAgICAgICAg
ICB0ZXh0VHJhY2tzSXRlbS5jaGlsZHJlbi5hcHBlbmQoV1RGTW92ZSh0ZXh0VHJhY2tJdGVtKSk7
CiAgICAgICAgICAgICB9CiAKQEAgLTM5MSwxMyArNDExLDE2IEBAIHZvaWQgTWVkaWFDb250cm9s
c0hvc3Q6OnNob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnUoSFRNTEVsZW1lbnQmIHRhcmdldCwg
Q29udGV4CiAgICAgICAgIH0KICAgICB9CiAKKyNpZiBkZWZpbmVkKE1lZGlhQ29udHJvbHNIb3N0
QWRkaXRpb25zX3Nob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnVfb3B0aW9ucykKKyAgICBNZWRp
YUNvbnRyb2xzSG9zdEFkZGl0aW9uc19zaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51X29wdGlv
bnMKKyNlbmRpZgorCiAgICAgaWYgKGl0ZW1zLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwog
CiAgICAgQVNTRVJUKCFpZE1hcC5pc0VtcHR5KCkpOwogCiAgICAgcGFnZS0+Y2hyb21lKCkuY2xp
ZW50KCkuc2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudSh0YXJnZXQuYm91bmRzSW5Sb290Vmll
d1NwYWNlKCksIFdURk1vdmUoaXRlbXMpLCBbd2Vha01lZGlhRWxlbWVudCA9IG1ha2VXZWFrUHRy
KG1lZGlhRWxlbWVudCksIGlkTWFwID0gV1RGTW92ZShpZE1hcCldIChNZWRpYUNvbnRyb2xzQ29u
dGV4dE1lbnVJdGVtOjpJRCBzZWxlY3RlZEl0ZW1JRCkgewotCiAgICAgICAgIGlmIChzZWxlY3Rl
ZEl0ZW1JRCA9PSBNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnVJdGVtOjppbnZhbGlkSUQpCiAgICAg
ICAgICAgICByZXR1cm47CiAKQEAgLTQyMSw2ICs0NDQsNyBAQCB2b2lkIE1lZGlhQ29udHJvbHNI
b3N0OjpzaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KEhUTUxFbGVtZW50JiB0YXJnZXQsIENv
bnRleAogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBtZWRpYUVsZW1lbnQuc2V0
U2VsZWN0ZWRUZXh0VHJhY2soc2VsZWN0ZWRUZXh0VHJhY2suZ2V0KCkpOwogICAgICAgICAgICAg
fQorICAgICAgICAgICAgTWVkaWFDb250cm9sc0hvc3RBZGRpdGlvbnNfc2hvd01lZGlhQ29udHJv
bHNDb250ZXh0TWVudV9NZW51RGF0YV9zd2l0Y2hPbgogICAgICAgICApOwogICAgIH0pOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29u
dHJvbHNIb3N0LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFD
b250cm9sc0hvc3QuaAppbmRleCAyZTczZGNlNjdkYzJmNzc0MDkxZDM0MDg1N2IxODMzOGM3YmJm
NTk4Li4zOGNmMWRhMmExMjMyYTZmNzQwOGQ3NmE0ZTk4NzBkODQ4MTJkODUzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3Qu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9s
c0hvc3QuaApAQCAtMjYsNiArMjYsNyBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYv
UmVmQ291bnRlZC5oPgorI2luY2x1ZGUgPHd0Zi9SZWYuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRy
Lmg+CiAjaW5jbHVkZSA8d3RmL1ZhcmlhbnQuaD4KICNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgpA
QCAtOTIsMTEgKzkzLDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBTdHJpbmcgZm9ybWF0dGVkU3Ry
aW5nRm9yRHVyYXRpb24oZG91YmxlKTsKIAogI2lmIEVOQUJMRShNRURJQV9DT05UUk9MU19DT05U
RVhUX01FTlVTKQotICAgIHN0cnVjdCBDb250ZXh0TWVudU9wdGlvbnMgewotICAgICAgICBib29s
IGluY2x1ZGVBdWRpb1RyYWNrcyB7IGZhbHNlIH07Ci0gICAgICAgIGJvb2wgaW5jbHVkZVRleHRU
cmFja3MgeyBmYWxzZSB9OwotICAgIH07Ci0gICAgdm9pZCBzaG93TWVkaWFDb250cm9sc0NvbnRl
eHRNZW51KEhUTUxFbGVtZW50JiwgQ29udGV4dE1lbnVPcHRpb25zJiYpOworICAgIHZvaWQgc2hv
d01lZGlhQ29udHJvbHNDb250ZXh0TWVudShIVE1MRWxlbWVudCYsIFN0cmluZyYmIG9wdGlvbnNK
U09OU3RyaW5nKTsKICNlbmRpZiAvLyBFTkFCTEUoTUVESUFfQ09OVFJPTFNfQ09OVEVYVF9NRU5V
UykKIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFj
b250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuaWRsCmluZGV4IDFmNzQ0YTA0MDZhODUwOWQ2
OGQ1NDQxNGVmZTNiZDUzMTQyNGNlNzAuLjRjMDgzYzkwOWVkYjgzZTk2MDBlOTY2OTE3OTIzOTg4
OWQ1Y2I1OWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9s
cy9NZWRpYUNvbnRyb2xzSG9zdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmlkbApAQCAtNjUsMTIgKzY1LDUgQEAgZW51bSBE
ZXZpY2VUeXBlIHsKICAgICBbRW5hYmxlZEF0UnVudGltZT1Nb2Rlcm5NZWRpYUNvbnRyb2xzXSBE
T01TdHJpbmcgYmFzZTY0U3RyaW5nRm9ySWNvbk5hbWVBbmRUeXBlKERPTVN0cmluZyBpY29uTmFt
ZSwgRE9NU3RyaW5nIGljb25UeXBlKTsKICAgICBbRW5hYmxlZEF0UnVudGltZT1Nb2Rlcm5NZWRp
YUNvbnRyb2xzXSBET01TdHJpbmcgZm9ybWF0dGVkU3RyaW5nRm9yRHVyYXRpb24odW5yZXN0cmlj
dGVkIGRvdWJsZSBkdXJhdGlvbkluU2Vjb25kcyk7CiAKLSAgICBbQ29uZGl0aW9uYWw9TUVESUFf
Q09OVFJPTFNfQ09OVEVYVF9NRU5VUywgRW5hYmxlZEJ5U2V0dGluZz1NZWRpYUNvbnRyb2xzQ29u
dGV4dE1lbnVzLCBFbmFibGVkQXRSdW50aW1lPU1vZGVybk1lZGlhQ29udHJvbHNdIHVuZGVmaW5l
ZCBzaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KEhUTUxFbGVtZW50IHRhcmdldCwgQ29udGV4
dE1lbnVPcHRpb25zIG9wdGlvbnMpOwotfTsKLQotWwotICAgIENvbmRpdGlvbmFsPU1FRElBX0NP
TlRST0xTX0NPTlRFWFRfTUVOVVMsCi1dIGRpY3Rpb25hcnkgQ29udGV4dE1lbnVPcHRpb25zIHsK
LSAgICBib29sZWFuIGluY2x1ZGVBdWRpb1RyYWNrczsKLSAgICBib29sZWFuIGluY2x1ZGVUZXh0
VHJhY2tzOworICAgIFtDb25kaXRpb25hbD1NRURJQV9DT05UUk9MU19DT05URVhUX01FTlVTLCBF
bmFibGVkQnlTZXR0aW5nPU1lZGlhQ29udHJvbHNDb250ZXh0TWVudXMsIEVuYWJsZWRBdFJ1bnRp
bWU9TW9kZXJuTWVkaWFDb250cm9sc10gdW5kZWZpbmVkIHNob3dNZWRpYUNvbnRyb2xzQ29udGV4
dE1lbnUoSFRNTEVsZW1lbnQgdGFyZ2V0LCBKU09OIG9wdGlvbnMpOwogfTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL2J1
dHRvbi5qcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2Nv
bnRyb2xzL2J1dHRvbi5qcwppbmRleCAwZjY2YmQzYzNhMDJlNmQ2OWNlNGFjNTFjZWQ1NzBlYmE5
NWIxMjM0Li5jNmM2NzUyYTA3YzY5MjczMDJkZGU4N2Y5ZWM1OWMyM2JiMTU4MzU1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9s
cy9idXR0b24uanMKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29u
dHJvbHMvY29udHJvbHMvYnV0dG9uLmpzCkBAIC0xMjksNiArMTI5LDEyIEBAIGNsYXNzIEJ1dHRv
biBleHRlbmRzIExheW91dEl0ZW0KICAgICAgICAgdGhpcy5fdXBkYXRlSW1hZ2VNZXRyaWNzKCk7
CiAgICAgfQogCisgICAgZ2V0IGNvbnRleHRNZW51T3B0aW9ucygpCisgICAgeworICAgICAgICAv
LyBJbXBsZW1lbnRlZCBieSBzdWJjbGFzc2VzLgorICAgICAgICByZXR1cm4ge307CisgICAgfQor
CiAgICAgLy8gUHJvdGVjdGVkCiAKICAgICBoYW5kbGVFdmVudChldmVudCkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL2lj
b24tc2VydmljZS5qcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRy
b2xzL2NvbnRyb2xzL2ljb24tc2VydmljZS5qcwppbmRleCA1NjIwNjAxNDBiZjk4NWE3MDRhODQw
ODYyZWE3MDcxNDg0MzE3MzUzLi5iMTM1ZTY0OTg1YTg0ODM0OWE1ZTMxMWNlZDAxZTE0MDdmZmZj
NjkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250
cm9scy9jb250cm9scy9pY29uLXNlcnZpY2UuanMKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvaWNvbi1zZXJ2aWNlLmpzCkBAIC0zMiw2
ICszMiw3IEBAIGNvbnN0IEljb25zID0gewogICAgIEZvcndhcmQgICAgICAgICA6IHsgbmFtZTog
IkZvcndhcmQiLCB0eXBlOiAic3ZnIiwgbGFiZWw6IFVJU3RyaW5nKCJGb3J3YXJkIikgfSwKICAg
ICBJbnZhbGlkQ29tcGFjdCAgOiB7IG5hbWU6ICJJbnZhbGlkQ29tcGFjdCIsIHR5cGU6ICJwZGYi
LCBsYWJlbDogVUlTdHJpbmcoIkludmFsaWQiKSB9LAogICAgIEludmFsaWRQbGFjYXJkICA6IHsg
bmFtZTogImludmFsaWQtcGxhY2FyZCIsIHR5cGU6ICJwbmciLCBsYWJlbDogVUlTdHJpbmcoIklu
dmFsaWQiKSB9LAorICAgIE92ZXJmbG93ICAgICAgICA6IHsgbmFtZTogIk92ZXJmbG93IiwgdHlw
ZTogInN2ZyIsIGxhYmVsOiBVSVN0cmluZygiTW9yZS4uLiIpIH0sCiAgICAgUGF1c2UgICAgICAg
ICAgIDogeyBuYW1lOiAiUGF1c2UiLCB0eXBlOiAic3ZnIiwgbGFiZWw6IFVJU3RyaW5nKCJQYXVz
ZSIpIH0sCiAgICAgUGlQUGxhY2FyZCAgICAgIDogeyBuYW1lOiAicGlwLXBsYWNhcmQiLCB0eXBl
OiAicG5nIiwgbGFiZWw6IFVJU3RyaW5nKCJQaWN0dXJlIGluIFBpY3R1cmUiKSB9LAogICAgIFBs
YXkgICAgICAgICAgICA6IHsgbmFtZTogIlBsYXkiLCB0eXBlOiAic3ZnIiwgbGFiZWw6IFVJU3Ry
aW5nKCJQbGF5IikgfSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJu
LW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL2lubGluZS1tZWRpYS1jb250cm9scy5qcyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL2lubGluZS1t
ZWRpYS1jb250cm9scy5qcwppbmRleCAyNDFkZjJhZjE0ZGMxNjk0ODc2MzQ2NTExYmZmNDk0MTYx
NmU2MDA1Li42NmI3NjllY2Q1MjBlNzRjNjYzYzgwMGFmNTZmYjk3NDMzY2ZkZmJhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9s
cy9pbmxpbmUtbWVkaWEtY29udHJvbHMuanMKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
b2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvaW5saW5lLW1lZGlhLWNvbnRyb2xzLmpzCkBA
IC0xNjYsNiArMTY2LDcgQEAgY2xhc3MgSW5saW5lTWVkaWFDb250cm9scyBleHRlbmRzIE1lZGlh
Q29udHJvbHMKICAgICAgICAgdGhpcy5yaWdodENvbnRhaW5lci5jaGlsZHJlbiA9IHRoaXMuX3Jp
Z2h0Q29udGFpbmVyQnV0dG9ucygpOwogICAgICAgICB0aGlzLnJpZ2h0Q29udGFpbmVyLmNoaWxk
cmVuLmNvbmNhdCh0aGlzLmxlZnRDb250YWluZXIuY2hpbGRyZW4pLmZvckVhY2goYnV0dG9uID0+
IGRlbGV0ZSBidXR0b24uZHJvcHBlZCk7CiAgICAgICAgIHRoaXMubXV0ZUJ1dHRvbi5zdHlsZSA9
IHRoaXMucHJlZmVycmVkTXV0ZUJ1dHRvblN0eWxlOworICAgICAgICB0aGlzLm92ZXJmbG93QnV0
dG9uLmNsZWFyQ29udGV4dE1lbnVPcHRpb25zKCk7CiAKICAgICAgICAgZm9yIChsZXQgYnV0dG9u
IG9mIHRoaXMuX2Ryb3BwYWJsZUJ1dHRvbnMoKSkgewogICAgICAgICAgICAgLy8gSWYgdGhlIGJ1
dHRvbiBpcyBub3QgZW5hYmxlZCwgd2UgY2FuIHNraXAgaXQuCkBAIC0xODIsNiArMTgzLDkgQEAg
Y2xhc3MgSW5saW5lTWVkaWFDb250cm9scyBleHRlbmRzIE1lZGlhQ29udHJvbHMKIAogICAgICAg
ICAgICAgLy8gVGhpcyBidXR0b24gbXVzdCBub3cgYmUgZHJvcHBlZC4KICAgICAgICAgICAgIGJ1
dHRvbi5kcm9wcGVkID0gdHJ1ZTsKKworICAgICAgICAgICAgaWYgKGJ1dHRvbiAhPT0gdGhpcy5v
dmVyZmxvd0J1dHRvbikKKyAgICAgICAgICAgICAgICB0aGlzLm92ZXJmbG93QnV0dG9uLmFkZENv
bnRleHRNZW51T3B0aW9ucyhidXR0b24uY29udGV4dE1lbnVPcHRpb25zKTsKICAgICAgICAgfQog
CiAgICAgICAgIC8vIFVwZGF0ZSBsYXlvdXRzIG9uY2UgbW9yZS4KQEAgLTI1NSwyNCArMjU5LDI0
IEBAIGNsYXNzIElubGluZU1lZGlhQ29udHJvbHMgZXh0ZW5kcyBNZWRpYUNvbnRyb2xzCiAgICAg
X3JpZ2h0Q29udGFpbmVyQnV0dG9ucygpCiAgICAgewogICAgICAgICBpZiAodGhpcy5fc2hvdWxk
VXNlQXVkaW9MYXlvdXQpCi0gICAgICAgICAgICByZXR1cm4gW3RoaXMubXV0ZUJ1dHRvbiwgdGhp
cy5haXJwbGF5QnV0dG9uXTsKKyAgICAgICAgICAgIHJldHVybiBbdGhpcy5tdXRlQnV0dG9uLCB0
aGlzLmFpcnBsYXlCdXR0b24sIHRoaXMub3ZlcmZsb3dCdXR0b25dOwogCiAgICAgICAgIGlmICh0
aGlzLl9zaG91bGRVc2VTaW5nbGVCYXJMYXlvdXQpCi0gICAgICAgICAgICByZXR1cm4gW3RoaXMu
bXV0ZUJ1dHRvbiwgdGhpcy5haXJwbGF5QnV0dG9uLCB0aGlzLnBpcEJ1dHRvbiwgdGhpcy50cmFj
a3NCdXR0b24sIHRoaXMuZnVsbHNjcmVlbkJ1dHRvbl07CisgICAgICAgICAgICByZXR1cm4gW3Ro
aXMubXV0ZUJ1dHRvbiwgdGhpcy5haXJwbGF5QnV0dG9uLCB0aGlzLnBpcEJ1dHRvbiwgdGhpcy50
cmFja3NCdXR0b24sIHRoaXMub3ZlcmZsb3dCdXR0b24sIHRoaXMuZnVsbHNjcmVlbkJ1dHRvbl07
CiAKICAgICAgICAgY29uc3QgYnV0dG9ucyA9IFtdOwogICAgICAgICBpZiAodGhpcy5wcmVmZXJy
ZWRNdXRlQnV0dG9uU3R5bGUgPT09IEJ1dHRvbi5TdHlsZXMuQmFyKQogICAgICAgICAgICAgYnV0
dG9ucy5wdXNoKHRoaXMubXV0ZUJ1dHRvbik7Ci0gICAgICAgIGJ1dHRvbnMucHVzaCh0aGlzLmFp
cnBsYXlCdXR0b24sIHRoaXMudHJhY2tzQnV0dG9uKTsKKyAgICAgICAgYnV0dG9ucy5wdXNoKHRo
aXMuYWlycGxheUJ1dHRvbiwgdGhpcy50cmFja3NCdXR0b24sIHRoaXMub3ZlcmZsb3dCdXR0b24p
OwogICAgICAgICByZXR1cm4gYnV0dG9uczsKICAgICB9CiAKICAgICBfZHJvcHBhYmxlQnV0dG9u
cygpCiAgICAgewogICAgICAgICBpZiAodGhpcy5fc2hvdWxkVXNlU2luZ2xlQmFyTGF5b3V0KQot
ICAgICAgICAgICAgcmV0dXJuIFt0aGlzLnNraXBGb3J3YXJkQnV0dG9uLCB0aGlzLnNraXBCYWNr
QnV0dG9uLCB0aGlzLmFpcnBsYXlCdXR0b24sIHRoaXMudHJhY2tzQnV0dG9uLCB0aGlzLnBpcEJ1
dHRvbiwgdGhpcy5mdWxsc2NyZWVuQnV0dG9uLCB0aGlzLm11dGVCdXR0b25dOworICAgICAgICAg
ICAgcmV0dXJuIFt0aGlzLnNraXBGb3J3YXJkQnV0dG9uLCB0aGlzLnNraXBCYWNrQnV0dG9uLCB0
aGlzLmFpcnBsYXlCdXR0b24sIHRoaXMudHJhY2tzQnV0dG9uLCB0aGlzLm92ZXJmbG93QnV0dG9u
LCB0aGlzLnBpcEJ1dHRvbiwgdGhpcy5mdWxsc2NyZWVuQnV0dG9uLCB0aGlzLm11dGVCdXR0b25d
OwogCi0gICAgICAgIGNvbnN0IGJ1dHRvbnMgPSBbdGhpcy5za2lwRm9yd2FyZEJ1dHRvbiwgdGhp
cy5za2lwQmFja0J1dHRvbiwgdGhpcy5haXJwbGF5QnV0dG9uLCB0aGlzLnRyYWNrc0J1dHRvbl07
CisgICAgICAgIGNvbnN0IGJ1dHRvbnMgPSBbdGhpcy5za2lwRm9yd2FyZEJ1dHRvbiwgdGhpcy5z
a2lwQmFja0J1dHRvbiwgdGhpcy5haXJwbGF5QnV0dG9uLCB0aGlzLnRyYWNrc0J1dHRvbiwgdGhp
cy5vdmVyZmxvd0J1dHRvbl07CiAgICAgICAgIGlmICh0aGlzLnByZWZlcnJlZE11dGVCdXR0b25T
dHlsZSA9PT0gQnV0dG9uLlN0eWxlcy5CYXIpCiAgICAgICAgICAgICBidXR0b25zLnB1c2godGhp
cy5tdXRlQnV0dG9uKTsKICAgICAgICAgcmV0dXJuIGJ1dHRvbnM7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9tZWRpYS1j
b250cm9scy5qcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xz
L2NvbnRyb2xzL21lZGlhLWNvbnRyb2xzLmpzCmluZGV4IDlmMjNmNTZmMGFmY2Y5YzFiYzdmOTU2
OGFiODdlYjc1MjBiZTM2MGIuLjFhYmE4ZDQyNzAyNzEyZWRiNTY3Y2I5Y2Q1ODNkZDliMmM3ZGY5
MmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRy
b2xzL2NvbnRyb2xzL21lZGlhLWNvbnRyb2xzLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL21lZGlhLWNvbnRyb2xzLmpzCkBAIC00
Myw2ICs0Myw3IEBAIGNsYXNzIE1lZGlhQ29udHJvbHMgZXh0ZW5kcyBMYXlvdXROb2RlCiAgICAg
ICAgIHRoaXMuZnVsbHNjcmVlbkJ1dHRvbiA9IG5ldyBGdWxsc2NyZWVuQnV0dG9uKHRoaXMpOwog
ICAgICAgICB0aGlzLm11dGVCdXR0b24gPSBuZXcgTXV0ZUJ1dHRvbih0aGlzKTsKICAgICAgICAg
dGhpcy50cmFja3NCdXR0b24gPSBuZXcgVHJhY2tzQnV0dG9uKHRoaXMpOworICAgICAgICB0aGlz
Lm92ZXJmbG93QnV0dG9uID0gbmV3IE92ZXJmbG93QnV0dG9uKHRoaXMpOwogCiAgICAgICAgIHRo
aXMuc3RhdHVzTGFiZWwgPSBuZXcgU3RhdHVzTGFiZWwodGhpcyk7CiAgICAgICAgIHRoaXMudGlt
ZUNvbnRyb2wgPSBuZXcgVGltZUNvbnRyb2wodGhpcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9vdmVyZmxvdy1idXR0
b24uanMgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250
cm9scy9vdmVyZmxvdy1idXR0b24uanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODBiMzUxZjExZTNhYTY3ZDNhNGI1
NTgwMGNkYzExZmZjN2YyMGE1OQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL292ZXJmbG93LWJ1dHRvbi5qcwpA
QCAtMCwwICsxLDk0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxs
IFJpZ2h0cyBSZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgor
ICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworY2xhc3MgT3ZlcmZsb3dCdXR0b24gZXh0ZW5kcyBCdXR0b24KK3sKKworICAgIGNvbnN0
cnVjdG9yKGxheW91dERlbGVnYXRlKQorICAgIHsKKyAgICAgICAgc3VwZXIoeworICAgICAgICAg
ICAgY3NzQ2xhc3NOYW1lOiAib3ZlcmZsb3ciLAorICAgICAgICAgICAgaWNvbk5hbWU6IEljb25z
Lk92ZXJmbG93LAorICAgICAgICAgICAgbGF5b3V0RGVsZWdhdGUsCisgICAgICAgIH0pOworCisg
ICAgICAgIHRoaXMuY2xlYXJDb250ZXh0TWVudU9wdGlvbnMoKTsKKyAgICAgICAgdGhpcy5fZGVm
YXVsdENvbnRleHRNZW51T3B0aW9ucyA9IHt9OworICAgIH0KKworICAgIC8vIFB1YmxpYworCisg
ICAgZ2V0IHZpc2libGUoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHN1cGVyLnZpc2libGU7Cisg
ICAgfQorCisgICAgc2V0IHZpc2libGUoZmxhZykKKyAgICB7CisgICAgICAgIGxldCBoYXNDb250
ZXh0TWVudU9wdGlvbnMgPSBmYWxzZTsKKyAgICAgICAgZm9yIChsZXQga2V5IGluIHRoaXMuX2Nv
bnRleHRNZW51T3B0aW9ucykgeworICAgICAgICAgICAgaGFzQ29udGV4dE1lbnVPcHRpb25zID0g
dHJ1ZTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisKKyAgICAgICAgc3VwZXIudmlz
aWJsZSA9IGZsYWcgJiYgaGFzQ29udGV4dE1lbnVPcHRpb25zOworICAgIH0KKworICAgIGdldCBj
b250ZXh0TWVudU9wdGlvbnMoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMuX2NvbnRleHRN
ZW51T3B0aW9uczsKKyAgICB9CisKKyAgICBhZGRDb250ZXh0TWVudU9wdGlvbnMoY29udGV4dE1l
bnVPcHRpb25zKQorICAgIHsKKyAgICAgICAgaWYgKCF0aGlzLmVuYWJsZWQpCisgICAgICAgICAg
ICByZXR1cm47CisKKyAgICAgICAgZm9yIChsZXQga2V5IGluIGNvbnRleHRNZW51T3B0aW9ucykK
KyAgICAgICAgICAgIHRoaXMuX2NvbnRleHRNZW51T3B0aW9uc1trZXldID0gY29udGV4dE1lbnVP
cHRpb25zW2tleV07CisKKyAgICAgICAgdGhpcy52aXNpYmxlID0gdHJ1ZTsKKyAgICB9CisKKyAg
ICBjbGVhckNvbnRleHRNZW51T3B0aW9ucygpCisgICAgeworICAgICAgICB0aGlzLl9jb250ZXh0
TWVudU9wdGlvbnMgPSB7fTsKKworICAgICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTsKKworICAg
ICAgICB0aGlzLmFkZENvbnRleHRNZW51T3B0aW9ucyh0aGlzLl9kZWZhdWx0Q29udGV4dE1lbnVP
cHRpb25zKTsKKyAgICB9CisKKyAgICBzZXQgZGVmYXVsdENvbnRleHRNZW51T3B0aW9ucyhkZWZh
dWx0Q29udGV4dE1lbnVPcHRpb25zKQorICAgIHsKKyAgICAgICAgdGhpcy5fZGVmYXVsdENvbnRl
eHRNZW51T3B0aW9ucyA9IGRlZmF1bHRDb250ZXh0TWVudU9wdGlvbnMgfHwge307CisKKyAgICAg
ICAgdGhpcy5jbGVhckNvbnRleHRNZW51T3B0aW9ucygpOworCisgICAgICAgIGlmICh0aGlzLmxh
eW91dERlbGVnYXRlKQorICAgICAgICAgICAgdGhpcy5sYXlvdXREZWxlZ2F0ZS5uZWVkc0xheW91
dCA9IHRydWU7CisgICAgfQorCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy90cmFja3MtYnV0dG9uLmpzIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvdHJhY2tzLWJ1
dHRvbi5qcwppbmRleCBhYWY5NDBmZjNlMzkyMWZiOTY2MmU0NWIwYjJiODI5ODQzNjM2NjVmLi4z
NWFkNWRhODQ4NDIwMTM4OWRmYTY3MDA5OTM5MzA0MmY0YjM3NWFjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy90cmFja3Mt
YnV0dG9uLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRy
b2xzL2NvbnRyb2xzL3RyYWNrcy1idXR0b24uanMKQEAgLTM1LDQgKzM1LDE0IEBAIGNsYXNzIFRy
YWNrc0J1dHRvbiBleHRlbmRzIEJ1dHRvbgogICAgICAgICB9KTsKICAgICB9CiAKKyAgICAvLyBQ
dWJsaWMKKworICAgIGdldCBjb250ZXh0TWVudU9wdGlvbnMoKQorICAgIHsKKyAgICAgICAgcmV0
dXJuIHsKKyAgICAgICAgICAgIGluY2x1ZGVBdWRpb1RyYWNrczogdHJ1ZSwKKyAgICAgICAgICAg
IGluY2x1ZGVUZXh0VHJhY2tzOiB0cnVlLAorICAgICAgICB9OworICAgIH0KKwogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvaW1hZ2Vz
L2lPUy9PdmVyZmxvdy5zdmcgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1j
b250cm9scy9pbWFnZXMvaU9TL092ZXJmbG93LnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lY2YxYjI0OGM1OGRj
ZmI5OGRjYzU3NmFiYjNhNjcyZTg2NmJhZGQ2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvaW1hZ2VzL2lPUy9PdmVyZmxvdy5z
dmcKQEAgLTAsMCArMSw0IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/
PgorPHN2ZyB3aWR0aD0iMTZweCIgaGVpZ2h0PSIxM3B4IiB2aWV3Qm94PSIwIDAgMTYgMTMiIHZl
cnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KKyAgICA8cGF0
aCBkPSJNMy40NjU0MjI4LDYuNTAwMTAzMjMgQzMuNDY1NDIyOCw1LjU2NzY0NzMxIDIuNzA5MzYy
NTgsNC44MiAxLjc2MDExNTI3LDQuODIgQzAuODM2MDU1MDU0LDQuODIgMC4wOCw1LjU2NzY0NzMx
IDAuMDgsNi41MDAxMDMyMyBDMC4wOCw3LjQzMjU1OTE0IDAuODM2MDU1MDU0LDguMTgwMjA2NDUg
MS43NjAxMTUyNyw4LjE4MDIwNjQ1IEMyLjcwOTM2MjU4LDguMTgwMjA2NDUgMy40NjU0MjI4LDcu
NDMyNTU5MTQgMy40NjU0MjI4LDYuNTAwMTAzMjMgWiBNOS42ODE4MTg0OSw2LjUwMDEwMzIzIEM5
LjY4MTgxODQ5LDUuNTY3NjQ3MzEgOC45MzQxNzExOCw0LjgyIDguMDAxNzE1MjcsNC44MiBDNy4w
Nzc2NTUwNSw0LjgyIDYuMzMwMDA3NzQsNS41Njc2NDczMSA2LjMzMDAwNzc0LDYuNTAwMTAzMjMg
QzYuMzMwMDA3NzQsNy40MzI1NTkxNCA3LjA3NzY1NTA1LDguMTgwMjA2NDUgOC4wMDE3MTUyNyw4
LjE4MDIwNjQ1IEM4LjkzNDE3MTE4LDguMTgwMjA2NDUgOS42ODE4MTg0OSw3LjQzMjU1OTE0IDku
NjgxODE4NDksNi41MDAxMDMyMyBaIE0xNS45MjM0MDEzLDYuNTAwMTAzMjMgQzE1LjkyMzQwMTMs
NS41Njc2NDczMSAxNS4xNzU3NzEyLDQuODIgMTQuMjQzMzE1Myw0LjgyIEMxMy4yOTQwNTA4LDQu
ODIgMTIuNTQ2NDAzNCw1LjU2NzY0NzMxIDEyLjU0NjQwMzQsNi41MDAxMDMyMyBDMTIuNTQ2NDAz
NCw3LjQzMjU1OTE0IDEzLjI5NDA1MDgsOC4xODAyMDY0NSAxNC4yNDMzMTUzLDguMTgwMjA2NDUg
QzE1LjE3NTc3MTIsOC4xODAyMDY0NSAxNS45MjM0MDEzLDcuNDMyNTU5MTQgMTUuOTIzNDAxMyw2
LjUwMDEwMzIzIFoiLz4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvanMtZmlsZXMgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21vZGVybi1tZWRpYS1jb250cm9scy9qcy1maWxlcwppbmRleCBiNjY0OTRhYjAyY2UyYTJiMTRl
YTk5MjQzZmRkMDAzYmY1NDBiYWJmLi4xZWI5ZTRhM2NjZWEwYzdiY2Q1YmQxMGRkY2M5OTQ2MjM1
YmNjYWEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1j
b250cm9scy9qcy1maWxlcworKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRp
YS1jb250cm9scy9qcy1maWxlcwpAQCAtMjIsNiArMjIsNyBAQCBjb250cm9scy9mdWxsc2NyZWVu
LWJ1dHRvbi5qcwogY29udHJvbHMvc2Vlay1idXR0b24uanMKIGNvbnRyb2xzL3Jld2luZC1idXR0
b24uanMKIGNvbnRyb2xzL2ZvcndhcmQtYnV0dG9uLmpzCitjb250cm9scy9vdmVyZmxvdy1idXR0
b24uanMKIGNvbnRyb2xzL2J1dHRvbnMtY29udGFpbmVyLmpzCiBjb250cm9scy9zdGF0dXMtbGFi
ZWwuanMKIGNvbnRyb2xzL2NvbnRyb2xzLWJhci5qcwpAQCAtNDUsNiArNDYsNyBAQCBtZWRpYS9h
dWRpby1zdXBwb3J0LmpzCiBtZWRpYS9jb250cm9scy12aXNpYmlsaXR5LXN1cHBvcnQuanMKIG1l
ZGlhL2Z1bGxzY3JlZW4tc3VwcG9ydC5qcwogbWVkaWEvbXV0ZS1zdXBwb3J0LmpzCittZWRpYS9v
dmVyZmxvdy1zdXBwb3J0LmpzCiBtZWRpYS9waXAtc3VwcG9ydC5qcwogbWVkaWEvcGxhY2FyZC1z
dXBwb3J0LmpzCiBtZWRpYS9wbGF5YmFjay1zdXBwb3J0LmpzCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS9tZWRpYS1jb250cm9s
bGVyLmpzIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWVk
aWEvbWVkaWEtY29udHJvbGxlci5qcwppbmRleCBiZTdmYmRmZjMxOTg3OGE2ZjA0NjZhZjY3OTYx
Y2Y3MTQ2ZjljOWU1Li5kN2RhZWFkMTA1YzllZDBhZjRhOGJhMTU0Y2EwNDJhZmNhMmM1ZWU3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9t
ZWRpYS9tZWRpYS1jb250cm9sbGVyLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9k
ZXJuLW1lZGlhLWNvbnRyb2xzL21lZGlhL21lZGlhLWNvbnRyb2xsZXIuanMKQEAgLTE4Niw3ICsx
ODYsNyBAQCBjbGFzcyBNZWRpYUNvbnRyb2xsZXIKICAgICAgICAgaWYgKHRoaXMubGF5b3V0VHJh
aXRzICYgTGF5b3V0VHJhaXRzLkNvbXBhY3QpCiAgICAgICAgICAgICByZXR1cm4gW0NvbXBhY3RN
ZWRpYUNvbnRyb2xzU3VwcG9ydF07CiAKLSAgICAgICAgcmV0dXJuIFtBaXJwbGF5U3VwcG9ydCwg
QXVkaW9TdXBwb3J0LCBDb250cm9sc1Zpc2liaWxpdHlTdXBwb3J0LCBGdWxsc2NyZWVuU3VwcG9y
dCwgTXV0ZVN1cHBvcnQsIFBpUFN1cHBvcnQsIFBsYWNhcmRTdXBwb3J0LCBQbGF5YmFja1N1cHBv
cnQsIFNjcnViYmluZ1N1cHBvcnQsIFNlZWtCYWNrd2FyZFN1cHBvcnQsIFNlZWtGb3J3YXJkU3Vw
cG9ydCwgU2tpcEJhY2tTdXBwb3J0LCBTa2lwRm9yd2FyZFN1cHBvcnQsIFN0YXJ0U3VwcG9ydCwg
U3RhdHVzU3VwcG9ydCwgVGltZUNvbnRyb2xTdXBwb3J0LCBUcmFja3NTdXBwb3J0LCBWb2x1bWVT
dXBwb3J0XTsKKyAgICAgICAgcmV0dXJuIFtBaXJwbGF5U3VwcG9ydCwgQXVkaW9TdXBwb3J0LCBD
b250cm9sc1Zpc2liaWxpdHlTdXBwb3J0LCBGdWxsc2NyZWVuU3VwcG9ydCwgTXV0ZVN1cHBvcnQs
IE92ZXJmbG93U3VwcG9ydCwgUGlQU3VwcG9ydCwgUGxhY2FyZFN1cHBvcnQsIFBsYXliYWNrU3Vw
cG9ydCwgU2NydWJiaW5nU3VwcG9ydCwgU2Vla0JhY2t3YXJkU3VwcG9ydCwgU2Vla0ZvcndhcmRT
dXBwb3J0LCBTa2lwQmFja1N1cHBvcnQsIFNraXBGb3J3YXJkU3VwcG9ydCwgU3RhcnRTdXBwb3J0
LCBTdGF0dXNTdXBwb3J0LCBUaW1lQ29udHJvbFN1cHBvcnQsIFRyYWNrc1N1cHBvcnQsIFZvbHVt
ZVN1cHBvcnRdOwogICAgIH0KIAogICAgIF91cGRhdGVDb250cm9sc0lmTmVlZGVkKCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21lZGlh
L292ZXJmbG93LXN1cHBvcnQuanMgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRp
YS1jb250cm9scy9tZWRpYS9vdmVyZmxvdy1zdXBwb3J0LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQwMDE4MDMz
NDJlNTA4NzkwMGE1MjQwZmVmODcyNzcyMzZkNGZlYWUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS9vdmVyZmxvdy1z
dXBwb3J0LmpzCkBAIC0wLDAgKzEsNTggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBw
bGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5U
IFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyAqLworCitjbGFzcyBPdmVyZmxvd1N1cHBvcnQgZXh0ZW5kcyBNZWRpYUNvbnRy
b2xsZXJTdXBwb3J0Cit7CisKKyAgICAvLyBQcm90ZWN0ZWQKKworICAgIGdldCBtZWRpYUV2ZW50
cygpCisgICAgeworICAgICAgICBsZXQgbWVkaWFFdmVudHMgPSBbXTsKKyAgICAgICAgd2luZG93
WyJXZWJLaXRBZGRpdGlvbnMuT3ZlcmZsb3dTdXBwb3J0LnByb3RvdHlwZS5nZXRfbWVkaWFFdmVu
dHMiXT8uKHRoaXMsIG1lZGlhRXZlbnRzKTsKKyAgICAgICAgcmV0dXJuIG1lZGlhRXZlbnRzOwor
ICAgIH0KKworICAgIGdldCBjb250cm9sKCkKKyAgICB7CisgICAgICAgIHJldHVybiB0aGlzLm1l
ZGlhQ29udHJvbGxlci5jb250cm9scy5vdmVyZmxvd0J1dHRvbjsKKyAgICB9CisKKyAgICBidXR0
b25XYXNQcmVzc2VkKGNvbnRyb2wpCisgICAgeworICAgICAgICBpZiAodGhpcy5tZWRpYUNvbnRy
b2xsZXIuaG9zdD8uc2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudSkKKyAgICAgICAgICAgIHRo
aXMubWVkaWFDb250cm9sbGVyLmhvc3Quc2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudShjb250
cm9sLmVsZW1lbnQsIGNvbnRyb2wuY29udGV4dE1lbnVPcHRpb25zKTsKKyAgICB9CisKKyAgICBz
eW5jQ29udHJvbCgpCisgICAgeworICAgICAgICB0aGlzLmNvbnRyb2wuZW5hYmxlZCA9IHRoaXMu
bWVkaWFDb250cm9sbGVyLmxheW91dFRyYWl0cyAmIExheW91dFRyYWl0cy5pT1MgJiYgdGhpcy5t
ZWRpYUNvbnRyb2xsZXIuaG9zdD8uc2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudTsKKworICAg
ICAgICBsZXQgZGVmYXVsdENvbnRleHRNZW51T3B0aW9ucyA9IHt9OworICAgICAgICB3aW5kb3db
IldlYktpdEFkZGl0aW9ucy5PdmVyZmxvd1N1cHBvcnQucHJvdG90eXBlLnN5bmNDb250cm9sIl0/
Lih0aGlzLCBkZWZhdWx0Q29udGV4dE1lbnVPcHRpb25zKTsKKyAgICAgICAgdGhpcy5jb250cm9s
LmRlZmF1bHRDb250ZXh0TWVudU9wdGlvbnMgPSBkZWZhdWx0Q29udGV4dE1lbnVPcHRpb25zOwor
ICAgIH0KKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVk
aWEtY29udHJvbHMvbWVkaWEvdHJhY2tzLXN1cHBvcnQuanMgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS90cmFja3Mtc3VwcG9ydC5qcwppbmRleCA4
NTllMmRhOTgxYjU0Mjk2NzdjNmE4MzZiZDYzZTQ3OGE2YWE1YmUxLi5lNzdhMGRjNGI4Mjg4NTI4
OTY4MzNiODE5MDM3OWQ5MDFkZDFmZTFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS90cmFja3Mtc3VwcG9ydC5qcworKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS90cmFja3Mt
c3VwcG9ydC5qcwpAQCAtNTcsNyArNTcsNyBAQCBjbGFzcyBUcmFja3NTdXBwb3J0IGV4dGVuZHMg
TWVkaWFDb250cm9sbGVyU3VwcG9ydAogICAgIGJ1dHRvbldhc1ByZXNzZWQoY29udHJvbCkKICAg
ICB7CiAgICAgICAgIGlmICh0aGlzLm1lZGlhQ29udHJvbGxlci5ob3N0Py5zaG93TWVkaWFDb250
cm9sc0NvbnRleHRNZW51KQotICAgICAgICAgICAgdGhpcy5tZWRpYUNvbnRyb2xsZXIuaG9zdC5z
aG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KGNvbnRyb2wuZWxlbWVudCwge2luY2x1ZGVBdWRp
b1RyYWNrczogdHJ1ZSwgaW5jbHVkZVRleHRUcmFja3M6IHRydWV9KTsKKyAgICAgICAgICAgIHRo
aXMubWVkaWFDb250cm9sbGVyLmhvc3Quc2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudShjb250
cm9sLmVsZW1lbnQsIGNvbnRyb2wuY29udGV4dE1lbnVPcHRpb25zKTsKICAgICAgICAgZWxzZQog
ICAgICAgICAgICAgdGhpcy5tZWRpYUNvbnRyb2xsZXIuY29udHJvbHMuc2hvd1RyYWNrc1BhbmVs
KCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCmluZGV4IDhjMTVlYjY0ODAzNzMwNTgwN2I3MDNkMGJkYmFiM2YzYmZhNTcxNWIu
LmY5ODQzZTE5MzE2OWY4YjgwNzEwYTliMWVlNmMzNjY4ZTBiZjFlMTMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTEwMDI4LDEw
ICsxMDAyOCw2IEBACiAJCTcxNUFENzFEMjA1MDUxMjQwMEQ1OTJEQyAvKiBEZWNsYXJhdGl2ZUFu
aW1hdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEZWNsYXJhdGl2ZUFu
aW1hdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3MTVBRDcxRjIwNTA1MTI0
MDBENTkyREMgLyogRGVjbGFyYXRpdmVBbmltYXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gRGVjbGFyYXRpdmVBbmltYXRpb24uY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk3MTVEQTVEMzIwMUJCOTAyMDAyRUYyQjAgLyogSlNXZWJBbmltYXRp
b25DdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJB
bmltYXRpb25DdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk3MTZDOERG
MTFFNDhCMjY5MDA1QkQwREEgLyogdm9sdW1lLWRvd24tc3VwcG9ydC5qcyAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9ICJ2b2x1bWUtZG93bi1zdXBwb3J0LmpzIjsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNzE2QzhERjIxRTQ4QjI2OTAwNUJEMERBIC8qIHZv
bHVtZS11cC1zdXBwb3J0LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRo
ID0gInZvbHVtZS11cC1zdXBwb3J0LmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJ
NzE2QzhERjMxRTQ4QjI4NDAwNUJEMERBIC8qIHZvbHVtZS1kb3duLWJ1dHRvbi5qcyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9ICJ2b2x1bWUtZG93bi1idXR0b24uanMi
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk3MTZDOERGNDFFNDhCMjg0MDA1QkQwREEg
Lyogdm9sdW1lLXVwLWJ1dHRvbi5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsg
cGF0aCA9ICJ2b2x1bWUtdXAtYnV0dG9uLmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNzE2RkEwRDgxREIyNjU5MTAwNzMyM0NDIC8qIGFpcnBsYXktYnV0dG9uLmNzcyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQuY3NzOyBwYXRoID0gImFpcnBsYXktYnV0dG9uLmNzcyI7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTcxNkZBMEQ5MURCMjY1OTEwMDczMjNDQyAvKiBhaXJwbGF5LWJ1dHRv
bi5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9ICJhaXJwbGF5LWJ1
dHRvbi5qcyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTcxNkZBMERBMURCMjY1OTEw
MDczMjNDQyAvKiBhaXJwbGF5LXBsYWNhcmQuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFz
Y3JpcHQ7IHBhdGggPSAiYWlycGxheS1wbGFjYXJkLmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKQEAgLTExNzU4LDYgKzExNzU0LDggQEAKIAkJOTRFODM5NTAxREZCMjlBNDAwN0JDNkE3
IC8qIENTU05hbWVzcGFjZVJ1bGUuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENTU05hbWVz
cGFjZVJ1bGUuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5NEU4Mzk1MzFERkIy
QkE2MDA3QkM2QTcgLyogSlNDU1NOYW1lc3BhY2VSdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ1NTTmFtZXNwYWNlUnVsZS5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTk0RTgzOTU0MURGQjJCQTYwMDdCQzZBNyAvKiBKU0NTU05hbWVzcGFj
ZVJ1bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDU1NOYW1lc3BhY2VS
dWxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk1MEM0ODQ5MjVENjc3NDIwMEFC
M0Q5QyAvKiBvdmVyZmxvdy1zdXBwb3J0LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gIm92ZXJm
bG93LXN1cHBvcnQuanMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NTBDNDg0QjI1
RDY3NzRFMDBBQjNEOUMgLyogb3ZlcmZsb3ctYnV0dG9uLmpzICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRo
ID0gIm92ZXJmbG93LWJ1dHRvbi5qcyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk1
MEM0QzAyQkVEODkzNkY4MThFMkY5OSAvKiBKU1NWR0dyYXBoaWNzRWxlbWVudC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTVkdHcmFwaGljc0VsZW1lbnQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTUyMDc2MDAxRjI2NzVGOTAwN0QyQUFCIC8qIENhbGxU
cmFjZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2FsbFRyYWNlci5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTk1MjA3NjAxMUYyNjc1RjkwMDdEMkFBQiAvKiBDYWxsVHJhY2Vy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IENhbGxUcmFjZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTIyNTU4LDYgKzIyNTU2LDcgQEAKIAkJCQk3MTZGQTBFQTFEQjI2NTkxMDA3MzIzQ0Mg
LyogbWVkaWEtY29udHJvbHMuY3NzICovLAogCQkJCTcxNkZBMEVCMURCMjY1OTEwMDczMjNDQyAv
KiBtZWRpYS1jb250cm9scy5qcyAqLywKIAkJCQk3MTZGQTBFQzFEQjI2NTkxMDA3MzIzQ0MgLyog
bXV0ZS1idXR0b24uanMgKi8sCisJCQkJOTUwQzQ4NEIyNUQ2Nzc0RTAwQUIzRDlDIC8qIG92ZXJm
bG93LWJ1dHRvbi5qcyAqLywKIAkJCQk3MTZGQTBFRDFEQjI2NTkxMDA3MzIzQ0MgLyogcGlwLWJ1
dHRvbi5qcyAqLywKIAkJCQk3MTZGQTBFRTFEQjI2NTkxMDA3MzIzQ0MgLyogcGlwLXBsYWNhcmQu
anMgKi8sCiAJCQkJNzE2RkEwRUYxREIyNjU5MTAwNzMyM0NDIC8qIHBsYWNhcmQuY3NzICovLApA
QCAtMjI1NzgsOCArMjI1NzcsNiBAQAogCQkJCTcxNkZBMEZFMURCMjY1OTEwMDczMjNDQyAvKiB0
cmFja3MtYnV0dG9uLmpzICovLAogCQkJCTcxNDZERjhCMURFRkMyRUQwMDQ2Rjk4QiAvKiB0cmFj
a3MtcGFuZWwuY3NzICovLAogCQkJCTcxNDZERjhDMURFRkMyRUQwMDQ2Rjk4QiAvKiB0cmFja3Mt
cGFuZWwuanMgKi8sCi0JCQkJNzE2QzhERjMxRTQ4QjI4NDAwNUJEMERBIC8qIHZvbHVtZS1kb3du
LWJ1dHRvbi5qcyAqLywKLQkJCQk3MTZDOERGNDFFNDhCMjg0MDA1QkQwREEgLyogdm9sdW1lLXVw
LWJ1dHRvbi5qcyAqLywKIAkJCSk7CiAJCQluYW1lID0gY29udHJvbHM7CiAJCQlwYXRoID0gIk1v
ZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzIjsKQEAgLTIyNTk0LDYgKzIyNTkx
LDcgQEAKIAkJCQk3MTc3RTI0NjFEQjgwRDJGMDA5MTlBMEIgLyogbWVkaWEtY29udHJvbGxlci1z
dXBwb3J0LmpzICovLAogCQkJCTcxRDAyRDkyMURCNTVDNEUwMERENUNGNSAvKiBtZWRpYS1jb250
cm9sbGVyLmpzICovLAogCQkJCTcxNzdFMjQ3MURCODBEMkYwMDkxOUEwQiAvKiBtdXRlLXN1cHBv
cnQuanMgKi8sCisJCQkJOTUwQzQ4NDkyNUQ2Nzc0MjAwQUIzRDlDIC8qIG92ZXJmbG93LXN1cHBv
cnQuanMgKi8sCiAJCQkJNzEzMDE0MUQxREM5QzA4NjAwQ0EzQTg4IC8qIHBpcC1zdXBwb3J0Lmpz
ICovLAogCQkJCTcxMUZCMDc1MURDNzY4OEYwMEM0QzcwOCAvKiBwbGFjYXJkLXN1cHBvcnQuanMg
Ki8sCiAJCQkJNzEwMDRCOUQxREMxMzk4ODAwQTUyQTM4IC8qIHBsYXliYWNrLXN1cHBvcnQuanMg
Ki8sCkBAIC0yMjYwNSw5ICsyMjYwMyw3IEBACiAJCQkJNzE3N0UyNDgxREI4MEQyRjAwOTE5QTBC
IC8qIHN0YXJ0LXN1cHBvcnQuanMgKi8sCiAJCQkJNzFCMDQ2MEExREQzQzJFRTAwRUUxOUNGIC8q
IHN0YXR1cy1zdXBwb3J0LmpzICovLAogCQkJCTcxRjkzNkY3MURENEY5OUIwMDkyMkNDNyAvKiB0
cmFja3Mtc3VwcG9ydC5qcyAqLywKLQkJCQk3MTZDOERGMTFFNDhCMjY5MDA1QkQwREEgLyogdm9s
dW1lLWRvd24tc3VwcG9ydC5qcyAqLywKIAkJCQk3MTdGOTA1NzFEQzQwRUQ2MDAwNkY1MjAgLyog
dm9sdW1lLXN1cHBvcnQuanMgKi8sCi0JCQkJNzE2QzhERjIxRTQ4QjI2OTAwNUJEMERBIC8qIHZv
bHVtZS11cC1zdXBwb3J0LmpzICovLAogCQkJKTsKIAkJCXBhdGggPSBtZWRpYTsKIAkJCXNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lbi5scHJvai9t
b2Rlcm4tbWVkaWEtY29udHJvbHMtbG9jYWxpemVkLXN0cmluZ3MuanMgYi9Tb3VyY2UvV2ViQ29y
ZS9lbi5scHJvai9tb2Rlcm4tbWVkaWEtY29udHJvbHMtbG9jYWxpemVkLXN0cmluZ3MuanMKaW5k
ZXggOTFjODU0NDJjNjM4YmE4NDVlM2Q5MTdjZWJiODBjMjBjYzQ4ZmRjNS4uMjg5MGNlNDBiNTM3
ZTNmNjViMWQ3ZThlYjdjNTJkNDQ3OTQ1YzYzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
ZW4ubHByb2ovbW9kZXJuLW1lZGlhLWNvbnRyb2xzLWxvY2FsaXplZC1zdHJpbmdzLmpzCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2VuLmxwcm9qL21vZGVybi1tZWRpYS1jb250cm9scy1sb2NhbGl6ZWQt
c3RyaW5ncy5qcwpAQCAtMTMsNiArMTMsNyBAQCBjb25zdCBVSVN0cmluZ3MgPSB7CiAgICAgIklu
dmFsaWQiOiAiSW52YWxpZCIsCiAgICAgIkxpdmUgQnJvYWRjYXN0IjogIkxpdmUgQnJvYWRjYXN0
IiwKICAgICAiTWVkaWEgU2VsZWN0aW9uIjogIk1lZGlhIFNlbGVjdGlvbiIsCisgICAgIk1vcmUu
Li4iOiAiTW9yZS4uLiIsCiAgICAgIk11dGUiOiAiTXV0ZSIsCiAgICAgIlBhdXNlIjogIlBhdXNl
IiwKICAgICAiUGljdHVyZSBpbiBQaWN0dXJlIjogIlBpY3R1cmUgaW4gUGljdHVyZSIsCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1MubW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1MubW0KaW5kZXggMTgyNGVkNzRkMTZh
MzNjNWRhZTVhZjQ5ZTUwZWE5OTQ4NzA2YTgyNC4uZmFiMTIwNjNjMjYzMzZhNjI0MWFmMTdmM2Rj
ODA2ZjM2MTkzNzIxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clRoZW1lSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUlP
Uy5tbQpAQCAtOTQsNiArOTQsMTAgQEAgQGVuZAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKKyNp
ZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQorI2luY2x1ZGUgPFdlYktpdEFkZGl0aW9ucy9SZW5k
ZXJUaGVtZUlPU0FkZGl0aW9ucy5jcHA+CisjZW5kaWYKKwogdXNpbmcgbmFtZXNwYWNlIEhUTUxO
YW1lczsKIAogY29uc3QgZmxvYXQgQ29udHJvbEJhc2VIZWlnaHQgPSAyMDsKQEAgLTEyODUsOSAr
MTI4OSwxMiBAQCBTdHJpbmcgUmVuZGVyVGhlbWVJT1M6Om1lZGlhQ29udHJvbHNTY3JpcHQoKQog
ICAgICAgICAgICAgTlNCdW5kbGUgKmJ1bmRsZSA9IFtOU0J1bmRsZSBidW5kbGVGb3JDbGFzczpb
V2ViQ29yZVJlbmRlclRoZW1lQnVuZGxlIGNsYXNzXV07CiAKICAgICAgICAgICAgIFN0cmluZ0J1
aWxkZXIgc2NyaXB0QnVpbGRlcjsKLSAgICAgICAgICAgIHNjcmlwdEJ1aWxkZXIuYXBwZW5kKCJ3
aW5kb3cuaXNJT1NGYW1pbHkgPSB0cnVlOyIpOworICAgICAgICAgICAgc2NyaXB0QnVpbGRlci5h
cHBlbmQoIndpbmRvdy5pc0lPU0ZhbWlseSA9IHRydWU7XG4iKTsKICAgICAgICAgICAgIHNjcmlw
dEJ1aWxkZXIuYXBwZW5kKFtOU1N0cmluZyBzdHJpbmdXaXRoQ29udGVudHNPZkZpbGU6W2J1bmRs
ZSBwYXRoRm9yUmVzb3VyY2U6QCJtb2Rlcm4tbWVkaWEtY29udHJvbHMtbG9jYWxpemVkLXN0cmlu
Z3MiIG9mVHlwZTpAImpzIl0gZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2RpbmcgZXJyb3I6bmls
XSk7CiAgICAgICAgICAgICBzY3JpcHRCdWlsZGVyLmFwcGVuZChbTlNTdHJpbmcgc3RyaW5nV2l0
aENvbnRlbnRzT2ZGaWxlOltidW5kbGUgcGF0aEZvclJlc291cmNlOkAibW9kZXJuLW1lZGlhLWNv
bnRyb2xzIiBvZlR5cGU6QCJqcyIgaW5EaXJlY3Rvcnk6QCJtb2Rlcm4tbWVkaWEtY29udHJvbHMi
XSBlbmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGluZyBlcnJvcjpuaWxdKTsKKyNpZiBkZWZpbmVk
KFJlbmRlclRoZW1lSU9TQWRkaXRpb25zX21lZGlhQ29udHJvbHNTY3JpcHQpCisgICAgICAgICAg
ICBSZW5kZXJUaGVtZUlPU0FkZGl0aW9uc19tZWRpYUNvbnRyb2xzU2NyaXB0CisjZW5kaWYKICAg
ICAgICAgICAgIG1fbWVkaWFDb250cm9sc1NjcmlwdCA9IHNjcmlwdEJ1aWxkZXIudG9TdHJpbmco
KTsKICAgICAgICAgfQogICAgICAgICByZXR1cm4gbV9tZWRpYUNvbnRyb2xzU2NyaXB0Owo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420512</attachid>
            <date>2021-02-16 11:47:27 -0800</date>
            <delta_ts>2021-02-16 16:56:15 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221937-20210216124726.patch</filename>
            <type>text/plain</type>
            <size>37597</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAyOGU1N2ZkZjE5MTY5MjAyNWNhOGMyMjNhYjcwMTMxZDAxYmVkNDk1Li43
MTI2MGFhYThjMzM0ZDRmMjRmOWE4ZDY2MmUxZTkxODQ2Njc4YjE2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsNjUgQEAKKzIwMjEtMDItMTUgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29t
PgorCisgICAgICAgIFtpT1NdIEFkZCBhbiBvdmVyZmxvdyBidXR0b24gdGhhdCdzIHNob3duIHdo
ZW4gY29udHJvbHMgYXJlIGRyb3BwZWQgc28gdGhhdCBpdCdzIHN0aWxsIHBvc3NpYmxlIHRvIHRy
aWdnZXIgdGhlIGRyb3BwZWQgYnV0dG9uJ3MgYWN0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxOTM3CisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS8yMDk2ODA3OD4KKworICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxzb24uCisKKyAgICAg
ICAgKiBNb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuaWRsOgorICAgICAg
ICAqIE1vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5jcHA6CisgICAgICAg
ICogTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0Lmg6CisgICAgICAgIChX
ZWJDb3JlOjpNZWRpYUNvbnRyb2xzSG9zdDo6c2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudSk6
CisgICAgICAgIFVzZSBhIEpTT04gYG9wdGlvbnNgIGFyZ3VtZW50IGluc3RlYWQgb2YgYSBkZWZp
bmVkIGBkaWN0aW9uYXJ5YCBzbyB0aGF0IGl0J3MgZWFzaWVyIHRvIGFkZAorICAgICAgICBuZXcg
dmFsdWVzIGFuZCBpcyBtb3JlIGZsZXhpYmxlIHdpdGggdGhlIHR5cGVzIG9mIHZhbHVlcy4KKwor
ICAgICAgICAqIE1vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL292ZXJmbG93
LWJ1dHRvbi5qczogQWRkZWQuCisgICAgICAgIChPdmVyZmxvd0J1dHRvbik6CisgICAgICAgIChP
dmVyZmxvd0J1dHRvbi5wcm90b3R5cGUuZ2V0IHZpc2libGUpOgorICAgICAgICAoT3ZlcmZsb3dC
dXR0b24ucHJvdG90eXBlLnNldCB2aXNpYmxlKToKKyAgICAgICAgKE92ZXJmbG93QnV0dG9uLnBy
b3RvdHlwZS5nZXQgY29udGV4dE1lbnVPcHRpb25zKToKKyAgICAgICAgKE92ZXJmbG93QnV0dG9u
LnByb3RvdHlwZS5hZGRDb250ZXh0TWVudU9wdGlvbnMpOgorICAgICAgICAoT3ZlcmZsb3dCdXR0
b24ucHJvdG90eXBlLmNsZWFyQ29udGV4dE1lbnVPcHRpb25zKToKKyAgICAgICAgKE92ZXJmbG93
QnV0dG9uLnByb3RvdHlwZS5zZXQgZGVmYXVsdENvbnRleHRNZW51T3B0aW9ucyk6CisgICAgICAg
ICogTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWVkaWEvb3ZlcmZsb3ctc3VwcG9ydC5q
czogQ29waWVkIGZyb20gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJv
bHMvY29udHJvbHMvdHJhY2tzLWJ1dHRvbi5qcy4KKyAgICAgICAgKE92ZXJmbG93U3VwcG9ydC5w
cm90b3R5cGUuZ2V0IG1lZGlhRXZlbnRzKToKKyAgICAgICAgKE92ZXJmbG93U3VwcG9ydC5wcm90
b3R5cGUuZ2V0IGNvbnRyb2wpOgorICAgICAgICAoT3ZlcmZsb3dTdXBwb3J0LnByb3RvdHlwZS5i
dXR0b25XYXNQcmVzc2VkKToKKyAgICAgICAgKE92ZXJmbG93U3VwcG9ydC5wcm90b3R5cGUuc3lu
Y0NvbnRyb2wpOgorICAgICAgICAqIE1vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRy
b2xzL2lubGluZS1tZWRpYS1jb250cm9scy5qczoKKyAgICAgICAgKElubGluZU1lZGlhQ29udHJv
bHMucHJvdG90eXBlLmxheW91dCk6CisgICAgICAgIChJbmxpbmVNZWRpYUNvbnRyb2xzLnByb3Rv
dHlwZS5fcmlnaHRDb250YWluZXJCdXR0b25zKToKKyAgICAgICAgKElubGluZU1lZGlhQ29udHJv
bHMucHJvdG90eXBlLl9kcm9wcGFibGVCdXR0b25zKToKKyAgICAgICAgQ3JlYXRlIGFuIGBPdmVy
Zmxvd0J1dHRvbmAgdGhhdCBtYWluYWlucyBhIEpTT04gb2JqZWN0IG9mIGBjb250ZXh0TWVudU9w
dGlvbnNgIHdoaWNoIGFyZQorICAgICAgICBwYXNzZWQgdG8gYE1lZGlhQ29udHJvbHNIb3N0Ojpz
aG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51YC4gV2hlbmV2ZXIgYSBgQnV0dG9uYCBpcyBkcm9w
cGVkLAorICAgICAgICBhZGQgaXRzIGBnZXQgY29udGV4dE1lbnVPcHRpb25zYCB0byB0aGUgYE92
ZXJmbG93QnV0dG9uYCdzIGBjb250ZXh0TWVudU9wdGlvbnNgIHNvIHRoYXQgd2hlbgorICAgICAg
ICB0aGUgYE92ZXJmbG93QnV0dG9uYCBpcyBwcmVzc2VkIGl0IHNob3dzIGEgY29udGV4dG1lbnUg
d2l0aCBhY3Rpb25zIGZvciBhbGwgZHJvcHBlZCBidXR0b25zLgorCisgICAgICAgICogTW9kdWxl
cy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvYnV0dG9uLmpzOgorICAgICAgICAoQnV0
dG9uLnByb3RvdHlwZS5nZXQgY29udGV4dE1lbnVPcHRpb25zKTogQWRkZWQuCisgICAgICAgICog
TW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvdHJhY2tzLWJ1dHRvbi5qczoK
KyAgICAgICAgKFRyYWNrc0J1dHRvbi5wcm90b3R5cGUuZ2V0IGNvbnRleHRNZW51T3B0aW9ucyk6
IEFkZGVkLgorICAgICAgICAqIE1vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21lZGlhL3Ry
YWNrcy1zdXBwb3J0LmpzOgorICAgICAgICAoVHJhY2tzU3VwcG9ydC5wcm90b3R5cGUuYnV0dG9u
V2FzUHJlc3NlZCk6CisgICAgICAgIEFkZCBhIGBnZXQgY29udGV4dE1lbnVPcHRpb25zYCB0byB0
aGUgYmFzZSBgQnV0dG9uYCBjbGFzcyBzbyB0aGF0IGFsbCBidXR0b25zIGFyZSBhYmxlIHRvCisg
ICAgICAgIGJlIG1lcmdlZCBpbnRvIGBPdmVyZmxvd0J1dHRvbmAuCisKKyAgICAgICAgKiBNb2R1
bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9tZWRpYS1jb250cm9scy5qczoKKyAg
ICAgICAgKE1lZGlhQ29udHJvbHMpOgorICAgICAgICAqIE1vZHVsZXMvbW9kZXJuLW1lZGlhLWNv
bnRyb2xzL21lZGlhL21lZGlhLWNvbnRyb2xsZXIuanM6CisgICAgICAgIChNZWRpYUNvbnRyb2xs
ZXIucHJvdG90eXBlLl9zdXBwb3J0aW5nT2JqZWN0Q2xhc3Nlcyk6CisKKyAgICAgICAgKiByZW5k
ZXJpbmcvUmVuZGVyVGhlbWVJT1MubW06CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZUlP
Uzo6bWVkaWFDb250cm9sc1NjcmlwdCk6CisKKyAgICAgICAgKiBlbi5scHJvai9tb2Rlcm4tbWVk
aWEtY29udHJvbHMtbG9jYWxpemVkLXN0cmluZ3MuanM6CisgICAgICAgICogTW9kdWxlcy9tb2Rl
cm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvaWNvbi1zZXJ2aWNlLmpzOgorICAgICAgICAqIE1v
ZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2ltYWdlcy9pT1MvT3ZlcmZsb3cuc3ZnOiBBZGRl
ZC4KKyAgICAgICAgKiBNb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9pbWFnZXMvbWFjT1Mv
T3ZlcmZsb3cuc3ZnOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL21vZGVybi1tZWRpYS1jb250
cm9scy9qcy1maWxlczoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2o6CisgICAgICAgIEFkZCBuZXcgZmlsZXMsIGljb25zLCBhbmQgdGV4dC4KKwogMjAyMS0wMi0x
NiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgbGlid2VicnRj
IGluc3RhbGxzIHNvbWUgZmlsZXMgaW50byBpbmNvcnJlY3QgbG9jYXRpb25zIGluIC91c3IvbG9j
YWwvaW5jbHVkZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRy
b2xzL01lZGlhQ29udHJvbHNIb3N0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFj
b250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5jcHAKaW5kZXggMGM4M2EzNDU1ZGUxNmUwNmZhY2Vj
Yzk5YTc4ZmE1ZTY3ZDJiNWQ3OC4uNThmMTExM2E5OWNkZjBjNWZhODFkMGY5NTEzYjhkYzkyYTEz
MWQzYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01l
ZGlhQ29udHJvbHNIb3N0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29u
dHJvbHMvTWVkaWFDb250cm9sc0hvc3QuY3BwCkBAIC00NSwxMSArNDUsMTYgQEAKICNpbmNsdWRl
ICJUZXh0VHJhY2suaCIKICNpbmNsdWRlICJUZXh0VHJhY2tMaXN0LmgiCiAjaW5jbHVkZSA8SmF2
YVNjcmlwdENvcmUvSlNDSlNWYWx1ZUlubGluZXMuaD4KKyNpbmNsdWRlIDx3dGYvSlNPTlZhbHVl
cy5oPgogI2luY2x1ZGUgPHd0Zi9VVUlELmg+CiAjaW5jbHVkZSA8d3RmL1ZhcmlhbnQuaD4KIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCisjaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKKyNpbmNs
dWRlIDxXZWJLaXRBZGRpdGlvbnMvTWVkaWFDb250cm9sc0hvc3RBZGRpdGlvbnMuY3BwPgorI2Vu
ZGlmCisKIGNvbnN0IEF0b21TdHJpbmcmIE1lZGlhQ29udHJvbHNIb3N0OjphdXRvbWF0aWNLZXl3
b3JkKCkKIHsKICAgICBzdGF0aWMgTWFpblRocmVhZE5ldmVyRGVzdHJveWVkPGNvbnN0IEF0b21T
dHJpbmc+IGF1dG9tYXRpYygiYXV0b21hdGljIiwgQXRvbVN0cmluZzo6Q29uc3RydWN0RnJvbUxp
dGVyYWwpOwpAQCAtMzEzLDcgKzMxOCwxNSBAQCBTdHJpbmcgTWVkaWFDb250cm9sc0hvc3Q6OmZv
cm1hdHRlZFN0cmluZ0ZvckR1cmF0aW9uKGRvdWJsZSBkdXJhdGlvbkluU2Vjb25kcykKIAogI2lm
IEVOQUJMRShNRURJQV9DT05UUk9MU19DT05URVhUX01FTlVTKQogCi12b2lkIE1lZGlhQ29udHJv
bHNIb3N0OjpzaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KEhUTUxFbGVtZW50JiB0YXJnZXQs
IENvbnRleHRNZW51T3B0aW9ucyYmIG9wdGlvbnMpCisjaWYgIWRlZmluZWQoTWVkaWFDb250cm9s
c0hvc3RBZGRpdGlvbnNfc2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudV9NZW51RGF0YSkKKyNk
ZWZpbmUgTWVkaWFDb250cm9sc0hvc3RBZGRpdGlvbnNfc2hvd01lZGlhQ29udHJvbHNDb250ZXh0
TWVudV9NZW51RGF0YQorI2VuZGlmCisKKyNpZiAhZGVmaW5lZChNZWRpYUNvbnRyb2xzSG9zdEFk
ZGl0aW9uc19zaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51X01lbnVEYXRhX3N3aXRjaE9uKQor
I2RlZmluZSBNZWRpYUNvbnRyb2xzSG9zdEFkZGl0aW9uc19zaG93TWVkaWFDb250cm9sc0NvbnRl
eHRNZW51X01lbnVEYXRhX3N3aXRjaE9uCisjZW5kaWYKKwordm9pZCBNZWRpYUNvbnRyb2xzSG9z
dDo6c2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudShIVE1MRWxlbWVudCYgdGFyZ2V0LCBTdHJp
bmcmJiBvcHRpb25zSlNPTlN0cmluZykKIHsKICAgICBpZiAoIW1fbWVkaWFFbGVtZW50KQogICAg
ICAgICByZXR1cm47CkBAIC0zMjQsMTIgKzMzNywyNSBAQCB2b2lkIE1lZGlhQ29udHJvbHNIb3N0
OjpzaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KEhUTUxFbGVtZW50JiB0YXJnZXQsIENvbnRl
eAogICAgIGlmICghcGFnZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgdXNpbmcgTWVudVRyYWNr
SXRlbSA9IFZhcmlhbnQ8UmVmUHRyPEF1ZGlvVHJhY2s+LCBSZWZQdHI8VGV4dFRyYWNrPj47Ci0g
ICAgSGFzaE1hcDxNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnVJdGVtOjpJRCwgTWVudVRyYWNrSXRl
bT4gaWRNYXA7CisgICAgYXV0byBvcHRpb25zSlNPTiA9IEpTT046OlZhbHVlOjpwYXJzZUpTT04o
b3B0aW9uc0pTT05TdHJpbmcpOworICAgIGlmICghb3B0aW9uc0pTT04pCisgICAgICAgIHJldHVy
bjsKKworICAgIGF1dG8gb3B0aW9uc0pTT05PYmplY3QgPSBvcHRpb25zSlNPTi0+YXNPYmplY3Qo
KTsKKyAgICBpZiAoIW9wdGlvbnNKU09OT2JqZWN0KQorICAgICAgICByZXR1cm47CisKKyAgICB1
c2luZyBNZW51RGF0YSA9IFZhcmlhbnQ8UmVmUHRyPEF1ZGlvVHJhY2s+LCBSZWZQdHI8VGV4dFRy
YWNrPiBNZWRpYUNvbnRyb2xzSG9zdEFkZGl0aW9uc19zaG93TWVkaWFDb250cm9sc0NvbnRleHRN
ZW51X01lbnVEYXRhPjsKKyAgICBIYXNoTWFwPE1lZGlhQ29udHJvbHNDb250ZXh0TWVudUl0ZW06
OklELCBNZW51RGF0YT4gaWRNYXA7CisgICAgYXV0byBnZW5lcmF0ZUlEID0gWyZdIChNZW51RGF0
YSBkYXRhKSB7CisgICAgICAgIGF1dG8gaWQgPSBpZE1hcC5zaXplKCkgKyAxOworICAgICAgICBp
ZE1hcC5hZGQoaWQsIGRhdGEpOworICAgICAgICByZXR1cm4gaWQ7CisgICAgfTsKIAogICAgIFZl
Y3RvcjxNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnVJdGVtPiBpdGVtczsKIAotICAgIGlmIChvcHRp
b25zLmluY2x1ZGVBdWRpb1RyYWNrcykgeworICAgIGlmIChvcHRpb25zSlNPTk9iamVjdC0+Z2V0
Qm9vbGVhbigiaW5jbHVkZUF1ZGlvVHJhY2tzIl9zKS52YWx1ZU9yKGZhbHNlKSkgewogICAgICAg
ICBpZiAoYXV0byogYXVkaW9UcmFja3MgPSBtZWRpYUVsZW1lbnQuYXVkaW9UcmFja3MoKTsgYXVk
aW9UcmFja3MgJiYgYXVkaW9UcmFja3MtPmxlbmd0aCgpID4gMSkgewogICAgICAgICAgICAgTWVk
aWFDb250cm9sc0NvbnRleHRNZW51SXRlbSBhdWRpb1RyYWNrc0l0ZW07CiAgICAgICAgICAgICBh
dWRpb1RyYWNrc0l0ZW0udGl0bGUgPSBXRUJfVUlfU1RSSU5HX0tFWSgiTGFuZ3VhZ2VzIiwgIkxh
bmd1YWdlcyAoTWVkaWEgQ29udHJvbHMgTWVudSkiLCAiTGFuZ3VhZ2VzIG1lZGlhIGNvbnRyb2xz
IGNvbnRleHQgbWVudSB0aXRsZSIpOwpAQCAtMzQwLDEyICszNjYsOSBAQCB2b2lkIE1lZGlhQ29u
dHJvbHNIb3N0OjpzaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KEhUTUxFbGVtZW50JiB0YXJn
ZXQsIENvbnRleAogCiAgICAgICAgICAgICBmb3IgKGF1dG8mIGF1ZGlvVHJhY2sgOiBjYXB0aW9u
UHJlZmVyZW5jZXMuc29ydGVkVHJhY2tMaXN0Rm9yTWVudShhdWRpb1RyYWNrcykpIHsKICAgICAg
ICAgICAgICAgICBNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnVJdGVtIGF1ZGlvVHJhY2tJdGVtOwot
ICAgICAgICAgICAgICAgIGF1ZGlvVHJhY2tJdGVtLmlkID0gaWRNYXAuc2l6ZSgpICsgMTsKKyAg
ICAgICAgICAgICAgICBhdWRpb1RyYWNrSXRlbS5pZCA9IGdlbmVyYXRlSUQoYXVkaW9UcmFjayk7
CiAgICAgICAgICAgICAgICAgYXVkaW9UcmFja0l0ZW0udGl0bGUgPSBjYXB0aW9uUHJlZmVyZW5j
ZXMuZGlzcGxheU5hbWVGb3JUcmFjayhhdWRpb1RyYWNrLmdldCgpKTsKICAgICAgICAgICAgICAg
ICBhdWRpb1RyYWNrSXRlbS5pc0NoZWNrZWQgPSBhdWRpb1RyYWNrLT5lbmFibGVkKCk7Ci0KLSAg
ICAgICAgICAgICAgICBpZE1hcC5hZGQoYXVkaW9UcmFja0l0ZW0uaWQsIGF1ZGlvVHJhY2spOwot
CiAgICAgICAgICAgICAgICAgYXVkaW9UcmFja3NJdGVtLmNoaWxkcmVuLmFwcGVuZChXVEZNb3Zl
KGF1ZGlvVHJhY2tJdGVtKSk7CiAgICAgICAgICAgICB9CiAKQEAgLTM1NCw3ICszNzcsNyBAQCB2
b2lkIE1lZGlhQ29udHJvbHNIb3N0OjpzaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KEhUTUxF
bGVtZW50JiB0YXJnZXQsIENvbnRleAogICAgICAgICB9CiAgICAgfQogCi0gICAgaWYgKG9wdGlv
bnMuaW5jbHVkZVRleHRUcmFja3MpIHsKKyAgICBpZiAob3B0aW9uc0pTT05PYmplY3QtPmdldEJv
b2xlYW4oImluY2x1ZGVUZXh0VHJhY2tzIl9zKS52YWx1ZU9yKGZhbHNlKSkgewogICAgICAgICBp
ZiAoYXV0byogdGV4dFRyYWNrcyA9IG1lZGlhRWxlbWVudC50ZXh0VHJhY2tzKCk7IHRleHRUcmFj
a3MgJiYgdGV4dFRyYWNrcy0+bGVuZ3RoKCkpIHsKICAgICAgICAgICAgIE1lZGlhQ29udHJvbHND
b250ZXh0TWVudUl0ZW0gdGV4dFRyYWNrc0l0ZW07CiAgICAgICAgICAgICB0ZXh0VHJhY2tzSXRl
bS50aXRsZSA9IFdFQl9VSV9TVFJJTkdfS0VZKCJTdWJ0aXRsZXMiLCAiU3VidGl0bGVzIChNZWRp
YSBDb250cm9scyBNZW51KSIsICJTdWJ0aXRsZXMgbWVkaWEgY29udHJvbHMgY29udGV4dCBtZW51
IHRpdGxlIik7CkBAIC0zNzAsNyArMzkzLDcgQEAgdm9pZCBNZWRpYUNvbnRyb2xzSG9zdDo6c2hv
d01lZGlhQ29udHJvbHNDb250ZXh0TWVudShIVE1MRWxlbWVudCYgdGFyZ2V0LCBDb250ZXgKIAog
ICAgICAgICAgICAgZm9yIChhdXRvJiB0ZXh0VHJhY2sgOiBzb3J0ZWRUZXh0VHJhY2tzKSB7CiAg
ICAgICAgICAgICAgICAgTWVkaWFDb250cm9sc0NvbnRleHRNZW51SXRlbSB0ZXh0VHJhY2tJdGVt
OwotICAgICAgICAgICAgICAgIHRleHRUcmFja0l0ZW0uaWQgPSBpZE1hcC5zaXplKCkgKyAxOwor
ICAgICAgICAgICAgICAgIHRleHRUcmFja0l0ZW0uaWQgPSBnZW5lcmF0ZUlEKHRleHRUcmFjayk7
CiAgICAgICAgICAgICAgICAgdGV4dFRyYWNrSXRlbS50aXRsZSA9IGNhcHRpb25QcmVmZXJlbmNl
cy5kaXNwbGF5TmFtZUZvclRyYWNrKHRleHRUcmFjay5nZXQoKSk7CiAgICAgICAgICAgICAgICAg
aWYgKGFsbFRyYWNrc0Rpc2FibGVkICYmIHRleHRUcmFjayA9PSAmVGV4dFRyYWNrOjpjYXB0aW9u
TWVudU9mZkl0ZW0oKSAmJiAoY2FwdGlvblByZWZlcmVuY2VzLmNhcHRpb25EaXNwbGF5TW9kZSgp
ID09IENhcHRpb25Vc2VyUHJlZmVyZW5jZXM6OkZvcmNlZE9ubHkgfHwgY2FwdGlvblByZWZlcmVu
Y2VzLmNhcHRpb25EaXNwbGF5TW9kZSgpID09IENhcHRpb25Vc2VyUHJlZmVyZW5jZXM6Ok1hbnVh
bCkpCiAgICAgICAgICAgICAgICAgICAgIHRleHRUcmFja0l0ZW0uaXNDaGVja2VkID0gdHJ1ZTsK
QEAgLTM4MCw5ICs0MDMsNiBAQCB2b2lkIE1lZGlhQ29udHJvbHNIb3N0OjpzaG93TWVkaWFDb250
cm9sc0NvbnRleHRNZW51KEhUTUxFbGVtZW50JiB0YXJnZXQsIENvbnRleAogICAgICAgICAgICAg
ICAgICAgICB0ZXh0VHJhY2tJdGVtLmlzQ2hlY2tlZCA9IHRydWU7CiAgICAgICAgICAgICAgICAg
ZWxzZQogICAgICAgICAgICAgICAgICAgICB0ZXh0VHJhY2tJdGVtLmlzQ2hlY2tlZCA9IGZhbHNl
OwotCi0gICAgICAgICAgICAgICAgaWRNYXAuYWRkKHRleHRUcmFja0l0ZW0uaWQsIHRleHRUcmFj
ayk7Ci0KICAgICAgICAgICAgICAgICB0ZXh0VHJhY2tzSXRlbS5jaGlsZHJlbi5hcHBlbmQoV1RG
TW92ZSh0ZXh0VHJhY2tJdGVtKSk7CiAgICAgICAgICAgICB9CiAKQEAgLTM5MSwxMyArNDExLDE2
IEBAIHZvaWQgTWVkaWFDb250cm9sc0hvc3Q6OnNob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnUo
SFRNTEVsZW1lbnQmIHRhcmdldCwgQ29udGV4CiAgICAgICAgIH0KICAgICB9CiAKKyNpZiBkZWZp
bmVkKE1lZGlhQ29udHJvbHNIb3N0QWRkaXRpb25zX3Nob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1l
bnVfb3B0aW9ucykKKyAgICBNZWRpYUNvbnRyb2xzSG9zdEFkZGl0aW9uc19zaG93TWVkaWFDb250
cm9sc0NvbnRleHRNZW51X29wdGlvbnMKKyNlbmRpZgorCiAgICAgaWYgKGl0ZW1zLmlzRW1wdHko
KSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgQVNTRVJUKCFpZE1hcC5pc0VtcHR5KCkpOwogCiAg
ICAgcGFnZS0+Y2hyb21lKCkuY2xpZW50KCkuc2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudSh0
YXJnZXQuYm91bmRzSW5Sb290Vmlld1NwYWNlKCksIFdURk1vdmUoaXRlbXMpLCBbd2Vha01lZGlh
RWxlbWVudCA9IG1ha2VXZWFrUHRyKG1lZGlhRWxlbWVudCksIGlkTWFwID0gV1RGTW92ZShpZE1h
cCldIChNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnVJdGVtOjpJRCBzZWxlY3RlZEl0ZW1JRCkgewot
CiAgICAgICAgIGlmIChzZWxlY3RlZEl0ZW1JRCA9PSBNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnVJ
dGVtOjppbnZhbGlkSUQpCiAgICAgICAgICAgICByZXR1cm47CiAKQEAgLTQyMSw2ICs0NDQsNyBA
QCB2b2lkIE1lZGlhQ29udHJvbHNIb3N0OjpzaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KEhU
TUxFbGVtZW50JiB0YXJnZXQsIENvbnRleAogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg
ICAgICBtZWRpYUVsZW1lbnQuc2V0U2VsZWN0ZWRUZXh0VHJhY2soc2VsZWN0ZWRUZXh0VHJhY2su
Z2V0KCkpOwogICAgICAgICAgICAgfQorICAgICAgICAgICAgTWVkaWFDb250cm9sc0hvc3RBZGRp
dGlvbnNfc2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudV9NZW51RGF0YV9zd2l0Y2hPbgogICAg
ICAgICApOwogICAgIH0pOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuaAppbmRleCAyZTczZGNlNjdkYzJmNzc0
MDkxZDM0MDg1N2IxODMzOGM3YmJmNTk4Li5kYTFkMmYwMDkyMWMxMzEyMjFkODk1MGFkZDNjN2Y5
MjZhZGZmMGJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJv
bHMvTWVkaWFDb250cm9sc0hvc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
Y29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuaApAQCAtMjUsNiArMjUsNyBAQAogCiAjcHJhZ21h
IG9uY2UKIAorI2luY2x1ZGUgPHd0Zi9SZWYuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5o
PgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvVmFyaWFudC5oPgpAQCAt
OTIsMTEgKzkzLDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBTdHJpbmcgZm9ybWF0dGVkU3RyaW5n
Rm9yRHVyYXRpb24oZG91YmxlKTsKIAogI2lmIEVOQUJMRShNRURJQV9DT05UUk9MU19DT05URVhU
X01FTlVTKQotICAgIHN0cnVjdCBDb250ZXh0TWVudU9wdGlvbnMgewotICAgICAgICBib29sIGlu
Y2x1ZGVBdWRpb1RyYWNrcyB7IGZhbHNlIH07Ci0gICAgICAgIGJvb2wgaW5jbHVkZVRleHRUcmFj
a3MgeyBmYWxzZSB9OwotICAgIH07Ci0gICAgdm9pZCBzaG93TWVkaWFDb250cm9sc0NvbnRleHRN
ZW51KEhUTUxFbGVtZW50JiwgQ29udGV4dE1lbnVPcHRpb25zJiYpOworICAgIHZvaWQgc2hvd01l
ZGlhQ29udHJvbHNDb250ZXh0TWVudShIVE1MRWxlbWVudCYsIFN0cmluZyYmIG9wdGlvbnNKU09O
U3RyaW5nKTsKICNlbmRpZiAvLyBFTkFCTEUoTUVESUFfQ09OVFJPTFNfQ09OVEVYVF9NRU5VUykK
IAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250
cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
Y29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuaWRsCmluZGV4IDFmNzQ0YTA0MDZhODUwOWQ2OGQ1
NDQxNGVmZTNiZDUzMTQyNGNlNzAuLjRjMDgzYzkwOWVkYjgzZTk2MDBlOTY2OTE3OTIzOTg4OWQ1
Y2I1OWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9N
ZWRpYUNvbnRyb2xzSG9zdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNv
bnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmlkbApAQCAtNjUsMTIgKzY1LDUgQEAgZW51bSBEZXZp
Y2VUeXBlIHsKICAgICBbRW5hYmxlZEF0UnVudGltZT1Nb2Rlcm5NZWRpYUNvbnRyb2xzXSBET01T
dHJpbmcgYmFzZTY0U3RyaW5nRm9ySWNvbk5hbWVBbmRUeXBlKERPTVN0cmluZyBpY29uTmFtZSwg
RE9NU3RyaW5nIGljb25UeXBlKTsKICAgICBbRW5hYmxlZEF0UnVudGltZT1Nb2Rlcm5NZWRpYUNv
bnRyb2xzXSBET01TdHJpbmcgZm9ybWF0dGVkU3RyaW5nRm9yRHVyYXRpb24odW5yZXN0cmljdGVk
IGRvdWJsZSBkdXJhdGlvbkluU2Vjb25kcyk7CiAKLSAgICBbQ29uZGl0aW9uYWw9TUVESUFfQ09O
VFJPTFNfQ09OVEVYVF9NRU5VUywgRW5hYmxlZEJ5U2V0dGluZz1NZWRpYUNvbnRyb2xzQ29udGV4
dE1lbnVzLCBFbmFibGVkQXRSdW50aW1lPU1vZGVybk1lZGlhQ29udHJvbHNdIHVuZGVmaW5lZCBz
aG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KEhUTUxFbGVtZW50IHRhcmdldCwgQ29udGV4dE1l
bnVPcHRpb25zIG9wdGlvbnMpOwotfTsKLQotWwotICAgIENvbmRpdGlvbmFsPU1FRElBX0NPTlRS
T0xTX0NPTlRFWFRfTUVOVVMsCi1dIGRpY3Rpb25hcnkgQ29udGV4dE1lbnVPcHRpb25zIHsKLSAg
ICBib29sZWFuIGluY2x1ZGVBdWRpb1RyYWNrczsKLSAgICBib29sZWFuIGluY2x1ZGVUZXh0VHJh
Y2tzOworICAgIFtDb25kaXRpb25hbD1NRURJQV9DT05UUk9MU19DT05URVhUX01FTlVTLCBFbmFi
bGVkQnlTZXR0aW5nPU1lZGlhQ29udHJvbHNDb250ZXh0TWVudXMsIEVuYWJsZWRBdFJ1bnRpbWU9
TW9kZXJuTWVkaWFDb250cm9sc10gdW5kZWZpbmVkIHNob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1l
bnUoSFRNTEVsZW1lbnQgdGFyZ2V0LCBKU09OIG9wdGlvbnMpOwogfTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL2J1dHRv
bi5qcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRy
b2xzL2J1dHRvbi5qcwppbmRleCAwZjY2YmQzYzNhMDJlNmQ2OWNlNGFjNTFjZWQ1NzBlYmE5NWIx
MjM0Li5jNmM2NzUyYTA3YzY5MjczMDJkZGU4N2Y5ZWM1OWMyM2JiMTU4MzU1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9i
dXR0b24uanMKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJv
bHMvY29udHJvbHMvYnV0dG9uLmpzCkBAIC0xMjksNiArMTI5LDEyIEBAIGNsYXNzIEJ1dHRvbiBl
eHRlbmRzIExheW91dEl0ZW0KICAgICAgICAgdGhpcy5fdXBkYXRlSW1hZ2VNZXRyaWNzKCk7CiAg
ICAgfQogCisgICAgZ2V0IGNvbnRleHRNZW51T3B0aW9ucygpCisgICAgeworICAgICAgICAvLyBJ
bXBsZW1lbnRlZCBieSBzdWJjbGFzc2VzLgorICAgICAgICByZXR1cm4ge307CisgICAgfQorCiAg
ICAgLy8gUHJvdGVjdGVkCiAKICAgICBoYW5kbGVFdmVudChldmVudCkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL2ljb24t
c2VydmljZS5qcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xz
L2NvbnRyb2xzL2ljb24tc2VydmljZS5qcwppbmRleCA1NjIwNjAxNDBiZjk4NWE3MDRhODQwODYy
ZWE3MDcxNDg0MzE3MzUzLi5iMTM1ZTY0OTg1YTg0ODM0OWE1ZTMxMWNlZDAxZTE0MDdmZmZjNjky
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9s
cy9jb250cm9scy9pY29uLXNlcnZpY2UuanMKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
b2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvaWNvbi1zZXJ2aWNlLmpzCkBAIC0zMiw2ICsz
Miw3IEBAIGNvbnN0IEljb25zID0gewogICAgIEZvcndhcmQgICAgICAgICA6IHsgbmFtZTogIkZv
cndhcmQiLCB0eXBlOiAic3ZnIiwgbGFiZWw6IFVJU3RyaW5nKCJGb3J3YXJkIikgfSwKICAgICBJ
bnZhbGlkQ29tcGFjdCAgOiB7IG5hbWU6ICJJbnZhbGlkQ29tcGFjdCIsIHR5cGU6ICJwZGYiLCBs
YWJlbDogVUlTdHJpbmcoIkludmFsaWQiKSB9LAogICAgIEludmFsaWRQbGFjYXJkICA6IHsgbmFt
ZTogImludmFsaWQtcGxhY2FyZCIsIHR5cGU6ICJwbmciLCBsYWJlbDogVUlTdHJpbmcoIkludmFs
aWQiKSB9LAorICAgIE92ZXJmbG93ICAgICAgICA6IHsgbmFtZTogIk92ZXJmbG93IiwgdHlwZTog
InN2ZyIsIGxhYmVsOiBVSVN0cmluZygiTW9yZS4uLiIpIH0sCiAgICAgUGF1c2UgICAgICAgICAg
IDogeyBuYW1lOiAiUGF1c2UiLCB0eXBlOiAic3ZnIiwgbGFiZWw6IFVJU3RyaW5nKCJQYXVzZSIp
IH0sCiAgICAgUGlQUGxhY2FyZCAgICAgIDogeyBuYW1lOiAicGlwLXBsYWNhcmQiLCB0eXBlOiAi
cG5nIiwgbGFiZWw6IFVJU3RyaW5nKCJQaWN0dXJlIGluIFBpY3R1cmUiKSB9LAogICAgIFBsYXkg
ICAgICAgICAgICA6IHsgbmFtZTogIlBsYXkiLCB0eXBlOiAic3ZnIiwgbGFiZWw6IFVJU3RyaW5n
KCJQbGF5IikgfSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1l
ZGlhLWNvbnRyb2xzL2NvbnRyb2xzL2lubGluZS1tZWRpYS1jb250cm9scy5qcyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL2lubGluZS1tZWRp
YS1jb250cm9scy5qcwppbmRleCAyNDFkZjJhZjE0ZGMxNjk0ODc2MzQ2NTExYmZmNDk0MTYxNmU2
MDA1Li42NmI3NjllY2Q1MjBlNzRjNjYzYzgwMGFmNTZmYjk3NDMzY2ZkZmJhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9p
bmxpbmUtbWVkaWEtY29udHJvbHMuanMKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rl
cm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvaW5saW5lLW1lZGlhLWNvbnRyb2xzLmpzCkBAIC0x
NjYsNiArMTY2LDcgQEAgY2xhc3MgSW5saW5lTWVkaWFDb250cm9scyBleHRlbmRzIE1lZGlhQ29u
dHJvbHMKICAgICAgICAgdGhpcy5yaWdodENvbnRhaW5lci5jaGlsZHJlbiA9IHRoaXMuX3JpZ2h0
Q29udGFpbmVyQnV0dG9ucygpOwogICAgICAgICB0aGlzLnJpZ2h0Q29udGFpbmVyLmNoaWxkcmVu
LmNvbmNhdCh0aGlzLmxlZnRDb250YWluZXIuY2hpbGRyZW4pLmZvckVhY2goYnV0dG9uID0+IGRl
bGV0ZSBidXR0b24uZHJvcHBlZCk7CiAgICAgICAgIHRoaXMubXV0ZUJ1dHRvbi5zdHlsZSA9IHRo
aXMucHJlZmVycmVkTXV0ZUJ1dHRvblN0eWxlOworICAgICAgICB0aGlzLm92ZXJmbG93QnV0dG9u
LmNsZWFyQ29udGV4dE1lbnVPcHRpb25zKCk7CiAKICAgICAgICAgZm9yIChsZXQgYnV0dG9uIG9m
IHRoaXMuX2Ryb3BwYWJsZUJ1dHRvbnMoKSkgewogICAgICAgICAgICAgLy8gSWYgdGhlIGJ1dHRv
biBpcyBub3QgZW5hYmxlZCwgd2UgY2FuIHNraXAgaXQuCkBAIC0xODIsNiArMTgzLDkgQEAgY2xh
c3MgSW5saW5lTWVkaWFDb250cm9scyBleHRlbmRzIE1lZGlhQ29udHJvbHMKIAogICAgICAgICAg
ICAgLy8gVGhpcyBidXR0b24gbXVzdCBub3cgYmUgZHJvcHBlZC4KICAgICAgICAgICAgIGJ1dHRv
bi5kcm9wcGVkID0gdHJ1ZTsKKworICAgICAgICAgICAgaWYgKGJ1dHRvbiAhPT0gdGhpcy5vdmVy
Zmxvd0J1dHRvbikKKyAgICAgICAgICAgICAgICB0aGlzLm92ZXJmbG93QnV0dG9uLmFkZENvbnRl
eHRNZW51T3B0aW9ucyhidXR0b24uY29udGV4dE1lbnVPcHRpb25zKTsKICAgICAgICAgfQogCiAg
ICAgICAgIC8vIFVwZGF0ZSBsYXlvdXRzIG9uY2UgbW9yZS4KQEAgLTI1NSwyNCArMjU5LDI0IEBA
IGNsYXNzIElubGluZU1lZGlhQ29udHJvbHMgZXh0ZW5kcyBNZWRpYUNvbnRyb2xzCiAgICAgX3Jp
Z2h0Q29udGFpbmVyQnV0dG9ucygpCiAgICAgewogICAgICAgICBpZiAodGhpcy5fc2hvdWxkVXNl
QXVkaW9MYXlvdXQpCi0gICAgICAgICAgICByZXR1cm4gW3RoaXMubXV0ZUJ1dHRvbiwgdGhpcy5h
aXJwbGF5QnV0dG9uXTsKKyAgICAgICAgICAgIHJldHVybiBbdGhpcy5tdXRlQnV0dG9uLCB0aGlz
LmFpcnBsYXlCdXR0b24sIHRoaXMub3ZlcmZsb3dCdXR0b25dOwogCiAgICAgICAgIGlmICh0aGlz
Ll9zaG91bGRVc2VTaW5nbGVCYXJMYXlvdXQpCi0gICAgICAgICAgICByZXR1cm4gW3RoaXMubXV0
ZUJ1dHRvbiwgdGhpcy5haXJwbGF5QnV0dG9uLCB0aGlzLnBpcEJ1dHRvbiwgdGhpcy50cmFja3NC
dXR0b24sIHRoaXMuZnVsbHNjcmVlbkJ1dHRvbl07CisgICAgICAgICAgICByZXR1cm4gW3RoaXMu
bXV0ZUJ1dHRvbiwgdGhpcy5haXJwbGF5QnV0dG9uLCB0aGlzLnBpcEJ1dHRvbiwgdGhpcy50cmFj
a3NCdXR0b24sIHRoaXMub3ZlcmZsb3dCdXR0b24sIHRoaXMuZnVsbHNjcmVlbkJ1dHRvbl07CiAK
ICAgICAgICAgY29uc3QgYnV0dG9ucyA9IFtdOwogICAgICAgICBpZiAodGhpcy5wcmVmZXJyZWRN
dXRlQnV0dG9uU3R5bGUgPT09IEJ1dHRvbi5TdHlsZXMuQmFyKQogICAgICAgICAgICAgYnV0dG9u
cy5wdXNoKHRoaXMubXV0ZUJ1dHRvbik7Ci0gICAgICAgIGJ1dHRvbnMucHVzaCh0aGlzLmFpcnBs
YXlCdXR0b24sIHRoaXMudHJhY2tzQnV0dG9uKTsKKyAgICAgICAgYnV0dG9ucy5wdXNoKHRoaXMu
YWlycGxheUJ1dHRvbiwgdGhpcy50cmFja3NCdXR0b24sIHRoaXMub3ZlcmZsb3dCdXR0b24pOwog
ICAgICAgICByZXR1cm4gYnV0dG9uczsKICAgICB9CiAKICAgICBfZHJvcHBhYmxlQnV0dG9ucygp
CiAgICAgewogICAgICAgICBpZiAodGhpcy5fc2hvdWxkVXNlU2luZ2xlQmFyTGF5b3V0KQotICAg
ICAgICAgICAgcmV0dXJuIFt0aGlzLnNraXBGb3J3YXJkQnV0dG9uLCB0aGlzLnNraXBCYWNrQnV0
dG9uLCB0aGlzLmFpcnBsYXlCdXR0b24sIHRoaXMudHJhY2tzQnV0dG9uLCB0aGlzLnBpcEJ1dHRv
biwgdGhpcy5mdWxsc2NyZWVuQnV0dG9uLCB0aGlzLm11dGVCdXR0b25dOworICAgICAgICAgICAg
cmV0dXJuIFt0aGlzLnNraXBGb3J3YXJkQnV0dG9uLCB0aGlzLnNraXBCYWNrQnV0dG9uLCB0aGlz
LmFpcnBsYXlCdXR0b24sIHRoaXMudHJhY2tzQnV0dG9uLCB0aGlzLm92ZXJmbG93QnV0dG9uLCB0
aGlzLnBpcEJ1dHRvbiwgdGhpcy5mdWxsc2NyZWVuQnV0dG9uLCB0aGlzLm11dGVCdXR0b25dOwog
Ci0gICAgICAgIGNvbnN0IGJ1dHRvbnMgPSBbdGhpcy5za2lwRm9yd2FyZEJ1dHRvbiwgdGhpcy5z
a2lwQmFja0J1dHRvbiwgdGhpcy5haXJwbGF5QnV0dG9uLCB0aGlzLnRyYWNrc0J1dHRvbl07Cisg
ICAgICAgIGNvbnN0IGJ1dHRvbnMgPSBbdGhpcy5za2lwRm9yd2FyZEJ1dHRvbiwgdGhpcy5za2lw
QmFja0J1dHRvbiwgdGhpcy5haXJwbGF5QnV0dG9uLCB0aGlzLnRyYWNrc0J1dHRvbiwgdGhpcy5v
dmVyZmxvd0J1dHRvbl07CiAgICAgICAgIGlmICh0aGlzLnByZWZlcnJlZE11dGVCdXR0b25TdHls
ZSA9PT0gQnV0dG9uLlN0eWxlcy5CYXIpCiAgICAgICAgICAgICBidXR0b25zLnB1c2godGhpcy5t
dXRlQnV0dG9uKTsKICAgICAgICAgcmV0dXJuIGJ1dHRvbnM7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9tZWRpYS1jb250
cm9scy5qcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2Nv
bnRyb2xzL21lZGlhLWNvbnRyb2xzLmpzCmluZGV4IDlmMjNmNTZmMGFmY2Y5YzFiYzdmOTU2OGFi
ODdlYjc1MjBiZTM2MGIuLjFhYmE4ZDQyNzAyNzEyZWRiNTY3Y2I5Y2Q1ODNkZDliMmM3ZGY5MmQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xz
L2NvbnRyb2xzL21lZGlhLWNvbnRyb2xzLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL21lZGlhLWNvbnRyb2xzLmpzCkBAIC00Myw2
ICs0Myw3IEBAIGNsYXNzIE1lZGlhQ29udHJvbHMgZXh0ZW5kcyBMYXlvdXROb2RlCiAgICAgICAg
IHRoaXMuZnVsbHNjcmVlbkJ1dHRvbiA9IG5ldyBGdWxsc2NyZWVuQnV0dG9uKHRoaXMpOwogICAg
ICAgICB0aGlzLm11dGVCdXR0b24gPSBuZXcgTXV0ZUJ1dHRvbih0aGlzKTsKICAgICAgICAgdGhp
cy50cmFja3NCdXR0b24gPSBuZXcgVHJhY2tzQnV0dG9uKHRoaXMpOworICAgICAgICB0aGlzLm92
ZXJmbG93QnV0dG9uID0gbmV3IE92ZXJmbG93QnV0dG9uKHRoaXMpOwogCiAgICAgICAgIHRoaXMu
c3RhdHVzTGFiZWwgPSBuZXcgU3RhdHVzTGFiZWwodGhpcyk7CiAgICAgICAgIHRoaXMudGltZUNv
bnRyb2wgPSBuZXcgVGltZUNvbnRyb2wodGhpcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9vdmVyZmxvdy1idXR0b24u
anMgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9s
cy9vdmVyZmxvdy1idXR0b24uanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODBiMzUxZjExZTNhYTY3ZDNhNGI1NTgw
MGNkYzExZmZjN2YyMGE1OQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL292ZXJmbG93LWJ1dHRvbi5qcwpAQCAt
MCwwICsxLDk0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIFJp
Z2h0cyBSZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1l
dDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICog
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8K
KworY2xhc3MgT3ZlcmZsb3dCdXR0b24gZXh0ZW5kcyBCdXR0b24KK3sKKworICAgIGNvbnN0cnVj
dG9yKGxheW91dERlbGVnYXRlKQorICAgIHsKKyAgICAgICAgc3VwZXIoeworICAgICAgICAgICAg
Y3NzQ2xhc3NOYW1lOiAib3ZlcmZsb3ciLAorICAgICAgICAgICAgaWNvbk5hbWU6IEljb25zLk92
ZXJmbG93LAorICAgICAgICAgICAgbGF5b3V0RGVsZWdhdGUsCisgICAgICAgIH0pOworCisgICAg
ICAgIHRoaXMuY2xlYXJDb250ZXh0TWVudU9wdGlvbnMoKTsKKyAgICAgICAgdGhpcy5fZGVmYXVs
dENvbnRleHRNZW51T3B0aW9ucyA9IHt9OworICAgIH0KKworICAgIC8vIFB1YmxpYworCisgICAg
Z2V0IHZpc2libGUoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHN1cGVyLnZpc2libGU7CisgICAg
fQorCisgICAgc2V0IHZpc2libGUoZmxhZykKKyAgICB7CisgICAgICAgIGxldCBoYXNDb250ZXh0
TWVudU9wdGlvbnMgPSBmYWxzZTsKKyAgICAgICAgZm9yIChsZXQga2V5IGluIHRoaXMuX2NvbnRl
eHRNZW51T3B0aW9ucykgeworICAgICAgICAgICAgaGFzQ29udGV4dE1lbnVPcHRpb25zID0gdHJ1
ZTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisKKyAgICAgICAgc3VwZXIudmlzaWJs
ZSA9IGZsYWcgJiYgaGFzQ29udGV4dE1lbnVPcHRpb25zOworICAgIH0KKworICAgIGdldCBjb250
ZXh0TWVudU9wdGlvbnMoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMuX2NvbnRleHRNZW51
T3B0aW9uczsKKyAgICB9CisKKyAgICBhZGRDb250ZXh0TWVudU9wdGlvbnMoY29udGV4dE1lbnVP
cHRpb25zKQorICAgIHsKKyAgICAgICAgaWYgKCF0aGlzLmVuYWJsZWQpCisgICAgICAgICAgICBy
ZXR1cm47CisKKyAgICAgICAgZm9yIChsZXQga2V5IGluIGNvbnRleHRNZW51T3B0aW9ucykKKyAg
ICAgICAgICAgIHRoaXMuX2NvbnRleHRNZW51T3B0aW9uc1trZXldID0gY29udGV4dE1lbnVPcHRp
b25zW2tleV07CisKKyAgICAgICAgdGhpcy52aXNpYmxlID0gdHJ1ZTsKKyAgICB9CisKKyAgICBj
bGVhckNvbnRleHRNZW51T3B0aW9ucygpCisgICAgeworICAgICAgICB0aGlzLl9jb250ZXh0TWVu
dU9wdGlvbnMgPSB7fTsKKworICAgICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTsKKworICAgICAg
ICB0aGlzLmFkZENvbnRleHRNZW51T3B0aW9ucyh0aGlzLl9kZWZhdWx0Q29udGV4dE1lbnVPcHRp
b25zKTsKKyAgICB9CisKKyAgICBzZXQgZGVmYXVsdENvbnRleHRNZW51T3B0aW9ucyhkZWZhdWx0
Q29udGV4dE1lbnVPcHRpb25zKQorICAgIHsKKyAgICAgICAgdGhpcy5fZGVmYXVsdENvbnRleHRN
ZW51T3B0aW9ucyA9IGRlZmF1bHRDb250ZXh0TWVudU9wdGlvbnMgfHwge307CisKKyAgICAgICAg
dGhpcy5jbGVhckNvbnRleHRNZW51T3B0aW9ucygpOworCisgICAgICAgIGlmICh0aGlzLmxheW91
dERlbGVnYXRlKQorICAgICAgICAgICAgdGhpcy5sYXlvdXREZWxlZ2F0ZS5uZWVkc0xheW91dCA9
IHRydWU7CisgICAgfQorCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21v
ZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy90cmFja3MtYnV0dG9uLmpzIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvdHJhY2tzLWJ1dHRv
bi5qcwppbmRleCBhYWY5NDBmZjNlMzkyMWZiOTY2MmU0NWIwYjJiODI5ODQzNjM2NjVmLi4zNWFk
NWRhODQ4NDIwMTM4OWRmYTY3MDA5OTM5MzA0MmY0YjM3NWFjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy90cmFja3MtYnV0
dG9uLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xz
L2NvbnRyb2xzL3RyYWNrcy1idXR0b24uanMKQEAgLTM1LDQgKzM1LDE0IEBAIGNsYXNzIFRyYWNr
c0J1dHRvbiBleHRlbmRzIEJ1dHRvbgogICAgICAgICB9KTsKICAgICB9CiAKKyAgICAvLyBQdWJs
aWMKKworICAgIGdldCBjb250ZXh0TWVudU9wdGlvbnMoKQorICAgIHsKKyAgICAgICAgcmV0dXJu
IHsKKyAgICAgICAgICAgIGluY2x1ZGVBdWRpb1RyYWNrczogdHJ1ZSwKKyAgICAgICAgICAgIGlu
Y2x1ZGVUZXh0VHJhY2tzOiB0cnVlLAorICAgICAgICB9OworICAgIH0KKwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvaW1hZ2VzL2lP
Uy9PdmVyZmxvdy5zdmcgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250
cm9scy9pbWFnZXMvaU9TL092ZXJmbG93LnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lY2YxYjI0OGM1OGRjZmI5
OGRjYzU3NmFiYjNhNjcyZTg2NmJhZGQ2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvaW1hZ2VzL2lPUy9PdmVyZmxvdy5zdmcK
QEAgLTAsMCArMSw0IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/Pgor
PHN2ZyB3aWR0aD0iMTZweCIgaGVpZ2h0PSIxM3B4IiB2aWV3Qm94PSIwIDAgMTYgMTMiIHZlcnNp
b249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KKyAgICA8cGF0aCBk
PSJNMy40NjU0MjI4LDYuNTAwMTAzMjMgQzMuNDY1NDIyOCw1LjU2NzY0NzMxIDIuNzA5MzYyNTgs
NC44MiAxLjc2MDExNTI3LDQuODIgQzAuODM2MDU1MDU0LDQuODIgMC4wOCw1LjU2NzY0NzMxIDAu
MDgsNi41MDAxMDMyMyBDMC4wOCw3LjQzMjU1OTE0IDAuODM2MDU1MDU0LDguMTgwMjA2NDUgMS43
NjAxMTUyNyw4LjE4MDIwNjQ1IEMyLjcwOTM2MjU4LDguMTgwMjA2NDUgMy40NjU0MjI4LDcuNDMy
NTU5MTQgMy40NjU0MjI4LDYuNTAwMTAzMjMgWiBNOS42ODE4MTg0OSw2LjUwMDEwMzIzIEM5LjY4
MTgxODQ5LDUuNTY3NjQ3MzEgOC45MzQxNzExOCw0LjgyIDguMDAxNzE1MjcsNC44MiBDNy4wNzc2
NTUwNSw0LjgyIDYuMzMwMDA3NzQsNS41Njc2NDczMSA2LjMzMDAwNzc0LDYuNTAwMTAzMjMgQzYu
MzMwMDA3NzQsNy40MzI1NTkxNCA3LjA3NzY1NTA1LDguMTgwMjA2NDUgOC4wMDE3MTUyNyw4LjE4
MDIwNjQ1IEM4LjkzNDE3MTE4LDguMTgwMjA2NDUgOS42ODE4MTg0OSw3LjQzMjU1OTE0IDkuNjgx
ODE4NDksNi41MDAxMDMyMyBaIE0xNS45MjM0MDEzLDYuNTAwMTAzMjMgQzE1LjkyMzQwMTMsNS41
Njc2NDczMSAxNS4xNzU3NzEyLDQuODIgMTQuMjQzMzE1Myw0LjgyIEMxMy4yOTQwNTA4LDQuODIg
MTIuNTQ2NDAzNCw1LjU2NzY0NzMxIDEyLjU0NjQwMzQsNi41MDAxMDMyMyBDMTIuNTQ2NDAzNCw3
LjQzMjU1OTE0IDEzLjI5NDA1MDgsOC4xODAyMDY0NSAxNC4yNDMzMTUzLDguMTgwMjA2NDUgQzE1
LjE3NTc3MTIsOC4xODAyMDY0NSAxNS45MjM0MDEzLDcuNDMyNTU5MTQgMTUuOTIzNDAxMyw2LjUw
MDEwMzIzIFoiLz4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
b2Rlcm4tbWVkaWEtY29udHJvbHMvaW1hZ2VzL21hY09TL092ZXJmbG93LnN2ZyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2ltYWdlcy9tYWNPUy9PdmVyZmxv
dy5zdmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uZWNmMWIyNDhjNThkY2ZiOThkY2M1NzZhYmIzYTY3MmU4NjZiYWRk
NgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlh
LWNvbnRyb2xzL2ltYWdlcy9tYWNPUy9PdmVyZmxvdy5zdmcKQEAgLTAsMCArMSw0IEBACis8P3ht
bCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCI/PgorPHN2ZyB3aWR0aD0iMTZweCIgaGVp
Z2h0PSIxM3B4IiB2aWV3Qm94PSIwIDAgMTYgMTMiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6
Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KKyAgICA8cGF0aCBkPSJNMy40NjU0MjI4LDYuNTAwMTAz
MjMgQzMuNDY1NDIyOCw1LjU2NzY0NzMxIDIuNzA5MzYyNTgsNC44MiAxLjc2MDExNTI3LDQuODIg
QzAuODM2MDU1MDU0LDQuODIgMC4wOCw1LjU2NzY0NzMxIDAuMDgsNi41MDAxMDMyMyBDMC4wOCw3
LjQzMjU1OTE0IDAuODM2MDU1MDU0LDguMTgwMjA2NDUgMS43NjAxMTUyNyw4LjE4MDIwNjQ1IEMy
LjcwOTM2MjU4LDguMTgwMjA2NDUgMy40NjU0MjI4LDcuNDMyNTU5MTQgMy40NjU0MjI4LDYuNTAw
MTAzMjMgWiBNOS42ODE4MTg0OSw2LjUwMDEwMzIzIEM5LjY4MTgxODQ5LDUuNTY3NjQ3MzEgOC45
MzQxNzExOCw0LjgyIDguMDAxNzE1MjcsNC44MiBDNy4wNzc2NTUwNSw0LjgyIDYuMzMwMDA3NzQs
NS41Njc2NDczMSA2LjMzMDAwNzc0LDYuNTAwMTAzMjMgQzYuMzMwMDA3NzQsNy40MzI1NTkxNCA3
LjA3NzY1NTA1LDguMTgwMjA2NDUgOC4wMDE3MTUyNyw4LjE4MDIwNjQ1IEM4LjkzNDE3MTE4LDgu
MTgwMjA2NDUgOS42ODE4MTg0OSw3LjQzMjU1OTE0IDkuNjgxODE4NDksNi41MDAxMDMyMyBaIE0x
NS45MjM0MDEzLDYuNTAwMTAzMjMgQzE1LjkyMzQwMTMsNS41Njc2NDczMSAxNS4xNzU3NzEyLDQu
ODIgMTQuMjQzMzE1Myw0LjgyIEMxMy4yOTQwNTA4LDQuODIgMTIuNTQ2NDAzNCw1LjU2NzY0NzMx
IDEyLjU0NjQwMzQsNi41MDAxMDMyMyBDMTIuNTQ2NDAzNCw3LjQzMjU1OTE0IDEzLjI5NDA1MDgs
OC4xODAyMDY0NSAxNC4yNDMzMTUzLDguMTgwMjA2NDUgQzE1LjE3NTc3MTIsOC4xODAyMDY0NSAx
NS45MjM0MDEzLDcuNDMyNTU5MTQgMTUuOTIzNDAxMyw2LjUwMDEwMzIzIFoiLz4KKzwvc3ZnPgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMv
anMtZmlsZXMgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9q
cy1maWxlcwppbmRleCBiNjY0OTRhYjAyY2UyYTJiMTRlYTk5MjQzZmRkMDAzYmY1NDBiYWJmLi4x
ZWI5ZTRhM2NjZWEwYzdiY2Q1YmQxMGRkY2M5OTQ2MjM1YmNjYWEyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9qcy1maWxlcworKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9qcy1maWxlcwpAQCAt
MjIsNiArMjIsNyBAQCBjb250cm9scy9mdWxsc2NyZWVuLWJ1dHRvbi5qcwogY29udHJvbHMvc2Vl
ay1idXR0b24uanMKIGNvbnRyb2xzL3Jld2luZC1idXR0b24uanMKIGNvbnRyb2xzL2ZvcndhcmQt
YnV0dG9uLmpzCitjb250cm9scy9vdmVyZmxvdy1idXR0b24uanMKIGNvbnRyb2xzL2J1dHRvbnMt
Y29udGFpbmVyLmpzCiBjb250cm9scy9zdGF0dXMtbGFiZWwuanMKIGNvbnRyb2xzL2NvbnRyb2xz
LWJhci5qcwpAQCAtNDUsNiArNDYsNyBAQCBtZWRpYS9hdWRpby1zdXBwb3J0LmpzCiBtZWRpYS9j
b250cm9scy12aXNpYmlsaXR5LXN1cHBvcnQuanMKIG1lZGlhL2Z1bGxzY3JlZW4tc3VwcG9ydC5q
cwogbWVkaWEvbXV0ZS1zdXBwb3J0LmpzCittZWRpYS9vdmVyZmxvdy1zdXBwb3J0LmpzCiBtZWRp
YS9waXAtc3VwcG9ydC5qcwogbWVkaWEvcGxhY2FyZC1zdXBwb3J0LmpzCiBtZWRpYS9wbGF5YmFj
ay1zdXBwb3J0LmpzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1t
ZWRpYS1jb250cm9scy9tZWRpYS9tZWRpYS1jb250cm9sbGVyLmpzIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWVkaWEvbWVkaWEtY29udHJvbGxlci5qcwpp
bmRleCBiZTdmYmRmZjMxOTg3OGE2ZjA0NjZhZjY3OTYxY2Y3MTQ2ZjljOWU1Li5kN2RhZWFkMTA1
YzllZDBhZjRhOGJhMTU0Y2EwNDJhZmNhMmM1ZWU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS9tZWRpYS1jb250cm9sbGVyLmpz
CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21lZGlh
L21lZGlhLWNvbnRyb2xsZXIuanMKQEAgLTE4Niw3ICsxODYsNyBAQCBjbGFzcyBNZWRpYUNvbnRy
b2xsZXIKICAgICAgICAgaWYgKHRoaXMubGF5b3V0VHJhaXRzICYgTGF5b3V0VHJhaXRzLkNvbXBh
Y3QpCiAgICAgICAgICAgICByZXR1cm4gW0NvbXBhY3RNZWRpYUNvbnRyb2xzU3VwcG9ydF07CiAK
LSAgICAgICAgcmV0dXJuIFtBaXJwbGF5U3VwcG9ydCwgQXVkaW9TdXBwb3J0LCBDb250cm9sc1Zp
c2liaWxpdHlTdXBwb3J0LCBGdWxsc2NyZWVuU3VwcG9ydCwgTXV0ZVN1cHBvcnQsIFBpUFN1cHBv
cnQsIFBsYWNhcmRTdXBwb3J0LCBQbGF5YmFja1N1cHBvcnQsIFNjcnViYmluZ1N1cHBvcnQsIFNl
ZWtCYWNrd2FyZFN1cHBvcnQsIFNlZWtGb3J3YXJkU3VwcG9ydCwgU2tpcEJhY2tTdXBwb3J0LCBT
a2lwRm9yd2FyZFN1cHBvcnQsIFN0YXJ0U3VwcG9ydCwgU3RhdHVzU3VwcG9ydCwgVGltZUNvbnRy
b2xTdXBwb3J0LCBUcmFja3NTdXBwb3J0LCBWb2x1bWVTdXBwb3J0XTsKKyAgICAgICAgcmV0dXJu
IFtBaXJwbGF5U3VwcG9ydCwgQXVkaW9TdXBwb3J0LCBDb250cm9sc1Zpc2liaWxpdHlTdXBwb3J0
LCBGdWxsc2NyZWVuU3VwcG9ydCwgTXV0ZVN1cHBvcnQsIE92ZXJmbG93U3VwcG9ydCwgUGlQU3Vw
cG9ydCwgUGxhY2FyZFN1cHBvcnQsIFBsYXliYWNrU3VwcG9ydCwgU2NydWJiaW5nU3VwcG9ydCwg
U2Vla0JhY2t3YXJkU3VwcG9ydCwgU2Vla0ZvcndhcmRTdXBwb3J0LCBTa2lwQmFja1N1cHBvcnQs
IFNraXBGb3J3YXJkU3VwcG9ydCwgU3RhcnRTdXBwb3J0LCBTdGF0dXNTdXBwb3J0LCBUaW1lQ29u
dHJvbFN1cHBvcnQsIFRyYWNrc1N1cHBvcnQsIFZvbHVtZVN1cHBvcnRdOwogICAgIH0KIAogICAg
IF91cGRhdGVDb250cm9sc0lmTmVlZGVkKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21lZGlhL292ZXJmbG93LXN1cHBvcnQuanMgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS9vdmVyZmxv
dy1zdXBwb3J0LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM2M2EyNzY4ZGJhZjZlN2M1ZTY5MDg4ZjdhYzU4Yzk4
MjUyYmIwMDEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVy
bi1tZWRpYS1jb250cm9scy9tZWRpYS9vdmVyZmxvdy1zdXBwb3J0LmpzCkBAIC0wLDAgKzEsNTgg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAq
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
CisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCitjbGFzcyBP
dmVyZmxvd1N1cHBvcnQgZXh0ZW5kcyBNZWRpYUNvbnRyb2xsZXJTdXBwb3J0Cit7CisKKyAgICAv
LyBQcm90ZWN0ZWQKKworICAgIGdldCBtZWRpYUV2ZW50cygpCisgICAgeworICAgICAgICBsZXQg
bWVkaWFFdmVudHMgPSBbXTsKKyAgICAgICAgd2luZG93WyJXZWJLaXRBZGRpdGlvbnMuT3ZlcmZs
b3dTdXBwb3J0LnByb3RvdHlwZS5nZXRfbWVkaWFFdmVudHMiXT8uKHRoaXMsIG1lZGlhRXZlbnRz
KTsKKyAgICAgICAgcmV0dXJuIG1lZGlhRXZlbnRzOworICAgIH0KKworICAgIGdldCBjb250cm9s
KCkKKyAgICB7CisgICAgICAgIHJldHVybiB0aGlzLm1lZGlhQ29udHJvbGxlci5jb250cm9scy5v
dmVyZmxvd0J1dHRvbjsKKyAgICB9CisKKyAgICBidXR0b25XYXNQcmVzc2VkKGNvbnRyb2wpCisg
ICAgeworICAgICAgICBpZiAodGhpcy5tZWRpYUNvbnRyb2xsZXIuaG9zdD8uc2hvd01lZGlhQ29u
dHJvbHNDb250ZXh0TWVudSkKKyAgICAgICAgICAgIHRoaXMubWVkaWFDb250cm9sbGVyLmhvc3Qu
c2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudShjb250cm9sLmVsZW1lbnQsIGNvbnRyb2wuY29u
dGV4dE1lbnVPcHRpb25zKTsKKyAgICB9CisKKyAgICBzeW5jQ29udHJvbCgpCisgICAgeworICAg
ICAgICB0aGlzLmNvbnRyb2wuZW5hYmxlZCA9ICEhdGhpcy5tZWRpYUNvbnRyb2xsZXIuaG9zdD8u
c2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudTsKKworICAgICAgICBsZXQgZGVmYXVsdENvbnRl
eHRNZW51T3B0aW9ucyA9IHt9OworICAgICAgICB3aW5kb3dbIldlYktpdEFkZGl0aW9ucy5PdmVy
Zmxvd1N1cHBvcnQucHJvdG90eXBlLnN5bmNDb250cm9sIl0/Lih0aGlzLCBkZWZhdWx0Q29udGV4
dE1lbnVPcHRpb25zKTsKKyAgICAgICAgdGhpcy5jb250cm9sLmRlZmF1bHRDb250ZXh0TWVudU9w
dGlvbnMgPSBkZWZhdWx0Q29udGV4dE1lbnVPcHRpb25zOworICAgIH0KKworfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWVkaWEvdHJh
Y2tzLXN1cHBvcnQuanMgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250
cm9scy9tZWRpYS90cmFja3Mtc3VwcG9ydC5qcwppbmRleCA4NTllMmRhOTgxYjU0Mjk2NzdjNmE4
MzZiZDYzZTQ3OGE2YWE1YmUxLi5lNzdhMGRjNGI4Mjg4NTI4OTY4MzNiODE5MDM3OWQ5MDFkZDFm
ZTFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250
cm9scy9tZWRpYS90cmFja3Mtc3VwcG9ydC5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS90cmFja3Mtc3VwcG9ydC5qcwpAQCAtNTcsNyAr
NTcsNyBAQCBjbGFzcyBUcmFja3NTdXBwb3J0IGV4dGVuZHMgTWVkaWFDb250cm9sbGVyU3VwcG9y
dAogICAgIGJ1dHRvbldhc1ByZXNzZWQoY29udHJvbCkKICAgICB7CiAgICAgICAgIGlmICh0aGlz
Lm1lZGlhQ29udHJvbGxlci5ob3N0Py5zaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KQotICAg
ICAgICAgICAgdGhpcy5tZWRpYUNvbnRyb2xsZXIuaG9zdC5zaG93TWVkaWFDb250cm9sc0NvbnRl
eHRNZW51KGNvbnRyb2wuZWxlbWVudCwge2luY2x1ZGVBdWRpb1RyYWNrczogdHJ1ZSwgaW5jbHVk
ZVRleHRUcmFja3M6IHRydWV9KTsKKyAgICAgICAgICAgIHRoaXMubWVkaWFDb250cm9sbGVyLmhv
c3Quc2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudShjb250cm9sLmVsZW1lbnQsIGNvbnRyb2wu
Y29udGV4dE1lbnVPcHRpb25zKTsKICAgICAgICAgZWxzZQogICAgICAgICAgICAgdGhpcy5tZWRp
YUNvbnRyb2xsZXIuY29udHJvbHMuc2hvd1RyYWNrc1BhbmVsKCk7CiAgICAgfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGU0YmRk
MTkwMWU4MmNkMDc4YTNmNzQzNjIwNTZmMGM5NDA3NmIxY2MuLjI0NzNjMzFhOGMzNTE0MDU5NTFm
MjUyOTg0Mjc3MThjYWM1MmI0OWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTEwMDM4LDEwICsxMDAzOCw2IEBACiAJCTcxNUFE
NzFEMjA1MDUxMjQwMEQ1OTJEQyAvKiBEZWNsYXJhdGl2ZUFuaW1hdGlvbi5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBEZWNsYXJhdGl2ZUFuaW1hdGlvbi5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk3MTVBRDcxRjIwNTA1MTI0MDBENTkyREMgLyogRGVjbGFyYXRp
dmVBbmltYXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRGVj
bGFyYXRpdmVBbmltYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3MTVE
QTVEMzIwMUJCOTAyMDAyRUYyQjAgLyogSlNXZWJBbmltYXRpb25DdXN0b20uY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNXZWJBbmltYXRpb25DdXN0b20uY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk3MTZDOERGMTFFNDhCMjY5MDA1QkQwREEgLyog
dm9sdW1lLWRvd24tc3VwcG9ydC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsg
cGF0aCA9ICJ2b2x1bWUtZG93bi1zdXBwb3J0LmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKLQkJNzE2QzhERjIxRTQ4QjI2OTAwNUJEMERBIC8qIHZvbHVtZS11cC1zdXBwb3J0LmpzICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gInZvbHVtZS11cC1zdXBwb3J0
LmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNzE2QzhERjMxRTQ4QjI4NDAwNUJE
MERBIC8qIHZvbHVtZS1kb3duLWJ1dHRvbi5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNj
cmlwdDsgcGF0aCA9ICJ2b2x1bWUtZG93bi1idXR0b24uanMiOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwotCQk3MTZDOERGNDFFNDhCMjg0MDA1QkQwREEgLyogdm9sdW1lLXVwLWJ1dHRvbi5q
cyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9ICJ2b2x1bWUtdXAtYnV0
dG9uLmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNzE2RkEwRDgxREIyNjU5MTAw
NzMyM0NDIC8qIGFpcnBsYXktYnV0dG9uLmNzcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuY3NzOyBwYXRoID0g
ImFpcnBsYXktYnV0dG9uLmNzcyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTcxNkZB
MEQ5MURCMjY1OTEwMDczMjNDQyAvKiBhaXJwbGF5LWJ1dHRvbi5qcyAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9ICJhaXJwbGF5LWJ1dHRvbi5qcyI7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTcxNkZBMERBMURCMjY1OTEwMDczMjNDQyAvKiBhaXJwbGF5LXBs
YWNhcmQuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSAiYWlycGxh
eS1wbGFjYXJkLmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTExNzY4LDYgKzEx
NzY0LDggQEAKIAkJOTRFODM5NTAxREZCMjlBNDAwN0JDNkE3IC8qIENTU05hbWVzcGFjZVJ1bGUu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENTU05hbWVzcGFjZVJ1bGUuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk5NEU4Mzk1MzFERkIyQkE2MDA3QkM2QTcgLyogSlNDU1NO
YW1lc3BhY2VSdWxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
Q1NTTmFtZXNwYWNlUnVsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk0RTgz
OTU0MURGQjJCQTYwMDdCQzZBNyAvKiBKU0NTU05hbWVzcGFjZVJ1bGUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gSlNDU1NOYW1lc3BhY2VSdWxlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CisJCTk1MEM0ODQ5MjVENjc3NDIwMEFCM0Q5QyAvKiBvdmVyZmxvdy1zdXBw
b3J0LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gIm92ZXJmbG93LXN1cHBvcnQuanMiOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NTBDNDg0QjI1RDY3NzRFMDBBQjNEOUMgLyogb3Zl
cmZsb3ctYnV0dG9uLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gIm92ZXJmbG93LWJ1dHRvbi5q
cyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk1MEM0QzAyQkVEODkzNkY4MThFMkY5
OSAvKiBKU1NWR0dyYXBoaWNzRWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNTVkdHcmFwaGljc0VsZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJOTUyMDc2MDAxRjI2NzVGOTAwN0QyQUFCIC8qIENhbGxUcmFjZXIuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQ2FsbFRyYWNlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk1
MjA3NjAxMUYyNjc1RjkwMDdEMkFBQiAvKiBDYWxsVHJhY2VyLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENh
bGxUcmFjZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIyNTY5LDYgKzIyNTY3
LDcgQEAKIAkJCQk3MTZGQTBFQTFEQjI2NTkxMDA3MzIzQ0MgLyogbWVkaWEtY29udHJvbHMuY3Nz
ICovLAogCQkJCTcxNkZBMEVCMURCMjY1OTEwMDczMjNDQyAvKiBtZWRpYS1jb250cm9scy5qcyAq
LywKIAkJCQk3MTZGQTBFQzFEQjI2NTkxMDA3MzIzQ0MgLyogbXV0ZS1idXR0b24uanMgKi8sCisJ
CQkJOTUwQzQ4NEIyNUQ2Nzc0RTAwQUIzRDlDIC8qIG92ZXJmbG93LWJ1dHRvbi5qcyAqLywKIAkJ
CQk3MTZGQTBFRDFEQjI2NTkxMDA3MzIzQ0MgLyogcGlwLWJ1dHRvbi5qcyAqLywKIAkJCQk3MTZG
QTBFRTFEQjI2NTkxMDA3MzIzQ0MgLyogcGlwLXBsYWNhcmQuanMgKi8sCiAJCQkJNzE2RkEwRUYx
REIyNjU5MTAwNzMyM0NDIC8qIHBsYWNhcmQuY3NzICovLApAQCAtMjI1ODksOCArMjI1ODgsNiBA
QAogCQkJCTcxNkZBMEZFMURCMjY1OTEwMDczMjNDQyAvKiB0cmFja3MtYnV0dG9uLmpzICovLAog
CQkJCTcxNDZERjhCMURFRkMyRUQwMDQ2Rjk4QiAvKiB0cmFja3MtcGFuZWwuY3NzICovLAogCQkJ
CTcxNDZERjhDMURFRkMyRUQwMDQ2Rjk4QiAvKiB0cmFja3MtcGFuZWwuanMgKi8sCi0JCQkJNzE2
QzhERjMxRTQ4QjI4NDAwNUJEMERBIC8qIHZvbHVtZS1kb3duLWJ1dHRvbi5qcyAqLywKLQkJCQk3
MTZDOERGNDFFNDhCMjg0MDA1QkQwREEgLyogdm9sdW1lLXVwLWJ1dHRvbi5qcyAqLywKIAkJCSk7
CiAJCQluYW1lID0gY29udHJvbHM7CiAJCQlwYXRoID0gIk1vZHVsZXMvbW9kZXJuLW1lZGlhLWNv
bnRyb2xzL2NvbnRyb2xzIjsKQEAgLTIyNjA1LDYgKzIyNjAyLDcgQEAKIAkJCQk3MTc3RTI0NjFE
QjgwRDJGMDA5MTlBMEIgLyogbWVkaWEtY29udHJvbGxlci1zdXBwb3J0LmpzICovLAogCQkJCTcx
RDAyRDkyMURCNTVDNEUwMERENUNGNSAvKiBtZWRpYS1jb250cm9sbGVyLmpzICovLAogCQkJCTcx
NzdFMjQ3MURCODBEMkYwMDkxOUEwQiAvKiBtdXRlLXN1cHBvcnQuanMgKi8sCisJCQkJOTUwQzQ4
NDkyNUQ2Nzc0MjAwQUIzRDlDIC8qIG92ZXJmbG93LXN1cHBvcnQuanMgKi8sCiAJCQkJNzEzMDE0
MUQxREM5QzA4NjAwQ0EzQTg4IC8qIHBpcC1zdXBwb3J0LmpzICovLAogCQkJCTcxMUZCMDc1MURD
NzY4OEYwMEM0QzcwOCAvKiBwbGFjYXJkLXN1cHBvcnQuanMgKi8sCiAJCQkJNzEwMDRCOUQxREMx
Mzk4ODAwQTUyQTM4IC8qIHBsYXliYWNrLXN1cHBvcnQuanMgKi8sCkBAIC0yMjYxNiw5ICsyMjYx
NCw3IEBACiAJCQkJNzE3N0UyNDgxREI4MEQyRjAwOTE5QTBCIC8qIHN0YXJ0LXN1cHBvcnQuanMg
Ki8sCiAJCQkJNzFCMDQ2MEExREQzQzJFRTAwRUUxOUNGIC8qIHN0YXR1cy1zdXBwb3J0LmpzICov
LAogCQkJCTcxRjkzNkY3MURENEY5OUIwMDkyMkNDNyAvKiB0cmFja3Mtc3VwcG9ydC5qcyAqLywK
LQkJCQk3MTZDOERGMTFFNDhCMjY5MDA1QkQwREEgLyogdm9sdW1lLWRvd24tc3VwcG9ydC5qcyAq
LywKIAkJCQk3MTdGOTA1NzFEQzQwRUQ2MDAwNkY1MjAgLyogdm9sdW1lLXN1cHBvcnQuanMgKi8s
Ci0JCQkJNzE2QzhERjIxRTQ4QjI2OTAwNUJEMERBIC8qIHZvbHVtZS11cC1zdXBwb3J0LmpzICov
LAogCQkJKTsKIAkJCXBhdGggPSBtZWRpYTsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lbi5scHJvai9tb2Rlcm4tbWVkaWEtY29udHJvbHMt
bG9jYWxpemVkLXN0cmluZ3MuanMgYi9Tb3VyY2UvV2ViQ29yZS9lbi5scHJvai9tb2Rlcm4tbWVk
aWEtY29udHJvbHMtbG9jYWxpemVkLXN0cmluZ3MuanMKaW5kZXggOTFjODU0NDJjNjM4YmE4NDVl
M2Q5MTdjZWJiODBjMjBjYzQ4ZmRjNS4uMjg5MGNlNDBiNTM3ZTNmNjViMWQ3ZThlYjdjNTJkNDQ3
OTQ1YzYzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZW4ubHByb2ovbW9kZXJuLW1lZGlh
LWNvbnRyb2xzLWxvY2FsaXplZC1zdHJpbmdzLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VuLmxw
cm9qL21vZGVybi1tZWRpYS1jb250cm9scy1sb2NhbGl6ZWQtc3RyaW5ncy5qcwpAQCAtMTMsNiAr
MTMsNyBAQCBjb25zdCBVSVN0cmluZ3MgPSB7CiAgICAgIkludmFsaWQiOiAiSW52YWxpZCIsCiAg
ICAgIkxpdmUgQnJvYWRjYXN0IjogIkxpdmUgQnJvYWRjYXN0IiwKICAgICAiTWVkaWEgU2VsZWN0
aW9uIjogIk1lZGlhIFNlbGVjdGlvbiIsCisgICAgIk1vcmUuLi4iOiAiTW9yZS4uLiIsCiAgICAg
Ik11dGUiOiAiTXV0ZSIsCiAgICAgIlBhdXNlIjogIlBhdXNlIiwKICAgICAiUGljdHVyZSBpbiBQ
aWN0dXJlIjogIlBpY3R1cmUgaW4gUGljdHVyZSIsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1MubW0gYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyVGhlbWVJT1MubW0KaW5kZXggMGRiYzY4YjJlNTIxNGQ2NGZlOTFlNmM4OGNjMGFiYTI1
ZGI5YWVkYS4uNGNkZTEzNTQyYzQ2YWEyNmVjYzQ1Y2NhOGRkZDE3MjJiZTI0MWIwZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lSU9TLm1tCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbQpAQCAtMTAwLDYgKzEwMCwx
MCBAQCBAZW5kCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorI2lmIFVTRShBUFBMRV9JTlRFUk5B
TF9TREspCisjaW5jbHVkZSA8V2ViS2l0QWRkaXRpb25zL1JlbmRlclRoZW1lSU9TQWRkaXRpb25z
LmNwcD4KKyNlbmRpZgorCiB1c2luZyBuYW1lc3BhY2UgSFRNTE5hbWVzOwogCiBjb25zdCBmbG9h
dCBDb250cm9sQmFzZUhlaWdodCA9IDIwOwpAQCAtMTI5MSw5ICsxMjk1LDEyIEBAIFN0cmluZyBS
ZW5kZXJUaGVtZUlPUzo6bWVkaWFDb250cm9sc1NjcmlwdCgpCiAgICAgICAgICAgICBOU0J1bmRs
ZSAqYnVuZGxlID0gW05TQnVuZGxlIGJ1bmRsZUZvckNsYXNzOltXZWJDb3JlUmVuZGVyVGhlbWVC
dW5kbGUgY2xhc3NdXTsKIAogICAgICAgICAgICAgU3RyaW5nQnVpbGRlciBzY3JpcHRCdWlsZGVy
OwotICAgICAgICAgICAgc2NyaXB0QnVpbGRlci5hcHBlbmQoIndpbmRvdy5pc0lPU0ZhbWlseSA9
IHRydWU7Iik7CisgICAgICAgICAgICBzY3JpcHRCdWlsZGVyLmFwcGVuZCgid2luZG93LmlzSU9T
RmFtaWx5ID0gdHJ1ZTtcbiIpOwogICAgICAgICAgICAgc2NyaXB0QnVpbGRlci5hcHBlbmQoW05T
U3RyaW5nIHN0cmluZ1dpdGhDb250ZW50c09mRmlsZTpbYnVuZGxlIHBhdGhGb3JSZXNvdXJjZTpA
Im1vZGVybi1tZWRpYS1jb250cm9scy1sb2NhbGl6ZWQtc3RyaW5ncyIgb2ZUeXBlOkAianMiXSBl
bmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGluZyBlcnJvcjpuaWxdKTsKICAgICAgICAgICAgIHNj
cmlwdEJ1aWxkZXIuYXBwZW5kKFtOU1N0cmluZyBzdHJpbmdXaXRoQ29udGVudHNPZkZpbGU6W2J1
bmRsZSBwYXRoRm9yUmVzb3VyY2U6QCJtb2Rlcm4tbWVkaWEtY29udHJvbHMiIG9mVHlwZTpAImpz
IiBpbkRpcmVjdG9yeTpAIm1vZGVybi1tZWRpYS1jb250cm9scyJdIGVuY29kaW5nOk5TVVRGOFN0
cmluZ0VuY29kaW5nIGVycm9yOm5pbF0pOworI2lmIGRlZmluZWQoUmVuZGVyVGhlbWVJT1NBZGRp
dGlvbnNfbWVkaWFDb250cm9sc1NjcmlwdCkKKyAgICAgICAgICAgIFJlbmRlclRoZW1lSU9TQWRk
aXRpb25zX21lZGlhQ29udHJvbHNTY3JpcHQKKyNlbmRpZgogICAgICAgICAgICAgbV9tZWRpYUNv
bnRyb2xzU2NyaXB0ID0gc2NyaXB0QnVpbGRlci50b1N0cmluZygpOwogICAgICAgICB9CiAgICAg
ICAgIHJldHVybiBtX21lZGlhQ29udHJvbHNTY3JpcHQ7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420560</attachid>
            <date>2021-02-16 16:56:18 -0800</date>
            <delta_ts>2021-02-17 09:32:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221937-20210216175617.patch</filename>
            <type>text/plain</type>
            <size>45897</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBhOTg0NGJjZGI3OGIwNmMzYzVjMzc1MjIyN2QxMmU5Yzk2YmY1NGFmLi41
OTczOGY1MDMzZGQ5NjRmNzBlZDU1MzAxMzhhNDFlNzIwNzM2YWU2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsNjUgQEAKKzIwMjEtMDItMTYgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29t
PgorCisgICAgICAgIFtpT1NdIEFkZCBhbiBvdmVyZmxvdyBidXR0b24gdGhhdCdzIHNob3duIHdo
ZW4gY29udHJvbHMgYXJlIGRyb3BwZWQgc28gdGhhdCBpdCdzIHN0aWxsIHBvc3NpYmxlIHRvIHRy
aWdnZXIgdGhlIGRyb3BwZWQgYnV0dG9uJ3MgYWN0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxOTM3CisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS8yMDk2ODA3OD4KKworICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxzb24uCisKKyAgICAg
ICAgKiBNb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuaWRsOgorICAgICAg
ICAqIE1vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5jcHA6CisgICAgICAg
ICogTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0Lmg6CisgICAgICAgIChX
ZWJDb3JlOjpNZWRpYUNvbnRyb2xzSG9zdDo6c2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudSk6
CisgICAgICAgIFVzZSBhIEpTT04gYG9wdGlvbnNgIGFyZ3VtZW50IGluc3RlYWQgb2YgYSBkZWZp
bmVkIGBkaWN0aW9uYXJ5YCBzbyB0aGF0IGl0J3MgZWFzaWVyIHRvIGFkZAorICAgICAgICBuZXcg
dmFsdWVzIGFuZCBpcyBtb3JlIGZsZXhpYmxlIHdpdGggdGhlIHR5cGVzIG9mIHZhbHVlcy4KKwor
ICAgICAgICAqIE1vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL292ZXJmbG93
LWJ1dHRvbi5qczogQWRkZWQuCisgICAgICAgIChPdmVyZmxvd0J1dHRvbik6CisgICAgICAgIChP
dmVyZmxvd0J1dHRvbi5wcm90b3R5cGUuZ2V0IHZpc2libGUpOgorICAgICAgICAoT3ZlcmZsb3dC
dXR0b24ucHJvdG90eXBlLnNldCB2aXNpYmxlKToKKyAgICAgICAgKE92ZXJmbG93QnV0dG9uLnBy
b3RvdHlwZS5nZXQgY29udGV4dE1lbnVPcHRpb25zKToKKyAgICAgICAgKE92ZXJmbG93QnV0dG9u
LnByb3RvdHlwZS5hZGRDb250ZXh0TWVudU9wdGlvbnMpOgorICAgICAgICAoT3ZlcmZsb3dCdXR0
b24ucHJvdG90eXBlLmNsZWFyQ29udGV4dE1lbnVPcHRpb25zKToKKyAgICAgICAgKE92ZXJmbG93
QnV0dG9uLnByb3RvdHlwZS5zZXQgZGVmYXVsdENvbnRleHRNZW51T3B0aW9ucyk6CisgICAgICAg
ICogTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWVkaWEvb3ZlcmZsb3ctc3VwcG9ydC5q
czogQ29waWVkIGZyb20gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJv
bHMvY29udHJvbHMvdHJhY2tzLWJ1dHRvbi5qcy4KKyAgICAgICAgKE92ZXJmbG93U3VwcG9ydC5w
cm90b3R5cGUuZ2V0IG1lZGlhRXZlbnRzKToKKyAgICAgICAgKE92ZXJmbG93U3VwcG9ydC5wcm90
b3R5cGUuZ2V0IGNvbnRyb2wpOgorICAgICAgICAoT3ZlcmZsb3dTdXBwb3J0LnByb3RvdHlwZS5i
dXR0b25XYXNQcmVzc2VkKToKKyAgICAgICAgKE92ZXJmbG93U3VwcG9ydC5wcm90b3R5cGUuc3lu
Y0NvbnRyb2wpOgorICAgICAgICAqIE1vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRy
b2xzL2lubGluZS1tZWRpYS1jb250cm9scy5qczoKKyAgICAgICAgKElubGluZU1lZGlhQ29udHJv
bHMucHJvdG90eXBlLmxheW91dCk6CisgICAgICAgIChJbmxpbmVNZWRpYUNvbnRyb2xzLnByb3Rv
dHlwZS5fcmlnaHRDb250YWluZXJCdXR0b25zKToKKyAgICAgICAgKElubGluZU1lZGlhQ29udHJv
bHMucHJvdG90eXBlLl9kcm9wcGFibGVCdXR0b25zKToKKyAgICAgICAgQ3JlYXRlIGFuIGBPdmVy
Zmxvd0J1dHRvbmAgdGhhdCBtYWluYWlucyBhIEpTT04gb2JqZWN0IG9mIGBjb250ZXh0TWVudU9w
dGlvbnNgIHdoaWNoIGFyZQorICAgICAgICBwYXNzZWQgdG8gYE1lZGlhQ29udHJvbHNIb3N0Ojpz
aG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51YC4gV2hlbmV2ZXIgYSBgQnV0dG9uYCBpcyBkcm9w
cGVkLAorICAgICAgICBhZGQgaXRzIGBnZXQgY29udGV4dE1lbnVPcHRpb25zYCB0byB0aGUgYE92
ZXJmbG93QnV0dG9uYCdzIGBjb250ZXh0TWVudU9wdGlvbnNgIHNvIHRoYXQgd2hlbgorICAgICAg
ICB0aGUgYE92ZXJmbG93QnV0dG9uYCBpcyBwcmVzc2VkIGl0IHNob3dzIGEgY29udGV4dG1lbnUg
d2l0aCBhY3Rpb25zIGZvciBhbGwgZHJvcHBlZCBidXR0b25zLgorCisgICAgICAgICogTW9kdWxl
cy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvYnV0dG9uLmpzOgorICAgICAgICAoQnV0
dG9uLnByb3RvdHlwZS5nZXQgY29udGV4dE1lbnVPcHRpb25zKTogQWRkZWQuCisgICAgICAgICog
TW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvdHJhY2tzLWJ1dHRvbi5qczoK
KyAgICAgICAgKFRyYWNrc0J1dHRvbi5wcm90b3R5cGUuZ2V0IGNvbnRleHRNZW51T3B0aW9ucyk6
IEFkZGVkLgorICAgICAgICAqIE1vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21lZGlhL3Ry
YWNrcy1zdXBwb3J0LmpzOgorICAgICAgICAoVHJhY2tzU3VwcG9ydC5wcm90b3R5cGUuYnV0dG9u
V2FzUHJlc3NlZCk6CisgICAgICAgIEFkZCBhIGBnZXQgY29udGV4dE1lbnVPcHRpb25zYCB0byB0
aGUgYmFzZSBgQnV0dG9uYCBjbGFzcyBzbyB0aGF0IGFsbCBidXR0b25zIGFyZSBhYmxlIHRvCisg
ICAgICAgIGJlIG1lcmdlZCBpbnRvIGBPdmVyZmxvd0J1dHRvbmAuCisKKyAgICAgICAgKiBNb2R1
bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9tZWRpYS1jb250cm9scy5qczoKKyAg
ICAgICAgKE1lZGlhQ29udHJvbHMpOgorICAgICAgICAqIE1vZHVsZXMvbW9kZXJuLW1lZGlhLWNv
bnRyb2xzL21lZGlhL21lZGlhLWNvbnRyb2xsZXIuanM6CisgICAgICAgIChNZWRpYUNvbnRyb2xs
ZXIucHJvdG90eXBlLl9zdXBwb3J0aW5nT2JqZWN0Q2xhc3Nlcyk6CisKKyAgICAgICAgKiByZW5k
ZXJpbmcvUmVuZGVyVGhlbWVJT1MubW06CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZUlP
Uzo6bWVkaWFDb250cm9sc1NjcmlwdCk6CisKKyAgICAgICAgKiBlbi5scHJvai9tb2Rlcm4tbWVk
aWEtY29udHJvbHMtbG9jYWxpemVkLXN0cmluZ3MuanM6CisgICAgICAgICogTW9kdWxlcy9tb2Rl
cm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvaWNvbi1zZXJ2aWNlLmpzOgorICAgICAgICAqIE1v
ZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2ltYWdlcy9pT1MvT3ZlcmZsb3cuc3ZnOiBBZGRl
ZC4KKyAgICAgICAgKiBNb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9pbWFnZXMvbWFjT1Mv
T3ZlcmZsb3cuc3ZnOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL21vZGVybi1tZWRpYS1jb250
cm9scy9qcy1maWxlczoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2o6CisgICAgICAgIEFkZCBuZXcgZmlsZXMsIGljb25zLCBhbmQgdGV4dC4KKwogMjAyMS0wMi0x
NiAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFJlZHVjZSBleHBs
aWNpdCB1c2FnZSBvZiBbb2JqQyBhdXRvcmVsZWFzZV0gaW4gV2ViS2l0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuY3Bw
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0
LmNwcAppbmRleCAwYzgzYTM0NTVkZTE2ZTA2ZmFjZWNjOTlhNzhmYTVlNjdkMmI1ZDc4Li41OGYx
MTEzYTk5Y2RmMGM1ZmE4MWQwZjk1MTNiOGRjOTJhMTMxZDNjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5j
cHAKQEAgLTQ1LDExICs0NSwxNiBAQAogI2luY2x1ZGUgIlRleHRUcmFjay5oIgogI2luY2x1ZGUg
IlRleHRUcmFja0xpc3QuaCIKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU0NKU1ZhbHVlSW5s
aW5lcy5oPgorI2luY2x1ZGUgPHd0Zi9KU09OVmFsdWVzLmg+CiAjaW5jbHVkZSA8d3RmL1VVSUQu
aD4KICNpbmNsdWRlIDx3dGYvVmFyaWFudC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKKyNp
ZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQorI2luY2x1ZGUgPFdlYktpdEFkZGl0aW9ucy9NZWRp
YUNvbnRyb2xzSG9zdEFkZGl0aW9ucy5jcHA+CisjZW5kaWYKKwogY29uc3QgQXRvbVN0cmluZyYg
TWVkaWFDb250cm9sc0hvc3Q6OmF1dG9tYXRpY0tleXdvcmQoKQogewogICAgIHN0YXRpYyBNYWlu
VGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRvbVN0cmluZz4gYXV0b21hdGljKCJhdXRvbWF0
aWMiLCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7CkBAIC0zMTMsNyArMzE4LDE1
IEBAIFN0cmluZyBNZWRpYUNvbnRyb2xzSG9zdDo6Zm9ybWF0dGVkU3RyaW5nRm9yRHVyYXRpb24o
ZG91YmxlIGR1cmF0aW9uSW5TZWNvbmRzKQogCiAjaWYgRU5BQkxFKE1FRElBX0NPTlRST0xTX0NP
TlRFWFRfTUVOVVMpCiAKLXZvaWQgTWVkaWFDb250cm9sc0hvc3Q6OnNob3dNZWRpYUNvbnRyb2xz
Q29udGV4dE1lbnUoSFRNTEVsZW1lbnQmIHRhcmdldCwgQ29udGV4dE1lbnVPcHRpb25zJiYgb3B0
aW9ucykKKyNpZiAhZGVmaW5lZChNZWRpYUNvbnRyb2xzSG9zdEFkZGl0aW9uc19zaG93TWVkaWFD
b250cm9sc0NvbnRleHRNZW51X01lbnVEYXRhKQorI2RlZmluZSBNZWRpYUNvbnRyb2xzSG9zdEFk
ZGl0aW9uc19zaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51X01lbnVEYXRhCisjZW5kaWYKKwor
I2lmICFkZWZpbmVkKE1lZGlhQ29udHJvbHNIb3N0QWRkaXRpb25zX3Nob3dNZWRpYUNvbnRyb2xz
Q29udGV4dE1lbnVfTWVudURhdGFfc3dpdGNoT24pCisjZGVmaW5lIE1lZGlhQ29udHJvbHNIb3N0
QWRkaXRpb25zX3Nob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnVfTWVudURhdGFfc3dpdGNoT24K
KyNlbmRpZgorCit2b2lkIE1lZGlhQ29udHJvbHNIb3N0OjpzaG93TWVkaWFDb250cm9sc0NvbnRl
eHRNZW51KEhUTUxFbGVtZW50JiB0YXJnZXQsIFN0cmluZyYmIG9wdGlvbnNKU09OU3RyaW5nKQog
ewogICAgIGlmICghbV9tZWRpYUVsZW1lbnQpCiAgICAgICAgIHJldHVybjsKQEAgLTMyNCwxMiAr
MzM3LDI1IEBAIHZvaWQgTWVkaWFDb250cm9sc0hvc3Q6OnNob3dNZWRpYUNvbnRyb2xzQ29udGV4
dE1lbnUoSFRNTEVsZW1lbnQmIHRhcmdldCwgQ29udGV4CiAgICAgaWYgKCFwYWdlKQogICAgICAg
ICByZXR1cm47CiAKLSAgICB1c2luZyBNZW51VHJhY2tJdGVtID0gVmFyaWFudDxSZWZQdHI8QXVk
aW9UcmFjaz4sIFJlZlB0cjxUZXh0VHJhY2s+PjsKLSAgICBIYXNoTWFwPE1lZGlhQ29udHJvbHND
b250ZXh0TWVudUl0ZW06OklELCBNZW51VHJhY2tJdGVtPiBpZE1hcDsKKyAgICBhdXRvIG9wdGlv
bnNKU09OID0gSlNPTjo6VmFsdWU6OnBhcnNlSlNPTihvcHRpb25zSlNPTlN0cmluZyk7CisgICAg
aWYgKCFvcHRpb25zSlNPTikKKyAgICAgICAgcmV0dXJuOworCisgICAgYXV0byBvcHRpb25zSlNP
Tk9iamVjdCA9IG9wdGlvbnNKU09OLT5hc09iamVjdCgpOworICAgIGlmICghb3B0aW9uc0pTT05P
YmplY3QpCisgICAgICAgIHJldHVybjsKKworICAgIHVzaW5nIE1lbnVEYXRhID0gVmFyaWFudDxS
ZWZQdHI8QXVkaW9UcmFjaz4sIFJlZlB0cjxUZXh0VHJhY2s+IE1lZGlhQ29udHJvbHNIb3N0QWRk
aXRpb25zX3Nob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnVfTWVudURhdGE+OworICAgIEhhc2hN
YXA8TWVkaWFDb250cm9sc0NvbnRleHRNZW51SXRlbTo6SUQsIE1lbnVEYXRhPiBpZE1hcDsKKyAg
ICBhdXRvIGdlbmVyYXRlSUQgPSBbJl0gKE1lbnVEYXRhIGRhdGEpIHsKKyAgICAgICAgYXV0byBp
ZCA9IGlkTWFwLnNpemUoKSArIDE7CisgICAgICAgIGlkTWFwLmFkZChpZCwgZGF0YSk7CisgICAg
ICAgIHJldHVybiBpZDsKKyAgICB9OwogCiAgICAgVmVjdG9yPE1lZGlhQ29udHJvbHNDb250ZXh0
TWVudUl0ZW0+IGl0ZW1zOwogCi0gICAgaWYgKG9wdGlvbnMuaW5jbHVkZUF1ZGlvVHJhY2tzKSB7
CisgICAgaWYgKG9wdGlvbnNKU09OT2JqZWN0LT5nZXRCb29sZWFuKCJpbmNsdWRlQXVkaW9UcmFj
a3MiX3MpLnZhbHVlT3IoZmFsc2UpKSB7CiAgICAgICAgIGlmIChhdXRvKiBhdWRpb1RyYWNrcyA9
IG1lZGlhRWxlbWVudC5hdWRpb1RyYWNrcygpOyBhdWRpb1RyYWNrcyAmJiBhdWRpb1RyYWNrcy0+
bGVuZ3RoKCkgPiAxKSB7CiAgICAgICAgICAgICBNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnVJdGVt
IGF1ZGlvVHJhY2tzSXRlbTsKICAgICAgICAgICAgIGF1ZGlvVHJhY2tzSXRlbS50aXRsZSA9IFdF
Ql9VSV9TVFJJTkdfS0VZKCJMYW5ndWFnZXMiLCAiTGFuZ3VhZ2VzIChNZWRpYSBDb250cm9scyBN
ZW51KSIsICJMYW5ndWFnZXMgbWVkaWEgY29udHJvbHMgY29udGV4dCBtZW51IHRpdGxlIik7CkBA
IC0zNDAsMTIgKzM2Niw5IEBAIHZvaWQgTWVkaWFDb250cm9sc0hvc3Q6OnNob3dNZWRpYUNvbnRy
b2xzQ29udGV4dE1lbnUoSFRNTEVsZW1lbnQmIHRhcmdldCwgQ29udGV4CiAKICAgICAgICAgICAg
IGZvciAoYXV0byYgYXVkaW9UcmFjayA6IGNhcHRpb25QcmVmZXJlbmNlcy5zb3J0ZWRUcmFja0xp
c3RGb3JNZW51KGF1ZGlvVHJhY2tzKSkgewogICAgICAgICAgICAgICAgIE1lZGlhQ29udHJvbHND
b250ZXh0TWVudUl0ZW0gYXVkaW9UcmFja0l0ZW07Ci0gICAgICAgICAgICAgICAgYXVkaW9UcmFj
a0l0ZW0uaWQgPSBpZE1hcC5zaXplKCkgKyAxOworICAgICAgICAgICAgICAgIGF1ZGlvVHJhY2tJ
dGVtLmlkID0gZ2VuZXJhdGVJRChhdWRpb1RyYWNrKTsKICAgICAgICAgICAgICAgICBhdWRpb1Ry
YWNrSXRlbS50aXRsZSA9IGNhcHRpb25QcmVmZXJlbmNlcy5kaXNwbGF5TmFtZUZvclRyYWNrKGF1
ZGlvVHJhY2suZ2V0KCkpOwogICAgICAgICAgICAgICAgIGF1ZGlvVHJhY2tJdGVtLmlzQ2hlY2tl
ZCA9IGF1ZGlvVHJhY2stPmVuYWJsZWQoKTsKLQotICAgICAgICAgICAgICAgIGlkTWFwLmFkZChh
dWRpb1RyYWNrSXRlbS5pZCwgYXVkaW9UcmFjayk7Ci0KICAgICAgICAgICAgICAgICBhdWRpb1Ry
YWNrc0l0ZW0uY2hpbGRyZW4uYXBwZW5kKFdURk1vdmUoYXVkaW9UcmFja0l0ZW0pKTsKICAgICAg
ICAgICAgIH0KIApAQCAtMzU0LDcgKzM3Nyw3IEBAIHZvaWQgTWVkaWFDb250cm9sc0hvc3Q6OnNo
b3dNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnUoSFRNTEVsZW1lbnQmIHRhcmdldCwgQ29udGV4CiAg
ICAgICAgIH0KICAgICB9CiAKLSAgICBpZiAob3B0aW9ucy5pbmNsdWRlVGV4dFRyYWNrcykgewor
ICAgIGlmIChvcHRpb25zSlNPTk9iamVjdC0+Z2V0Qm9vbGVhbigiaW5jbHVkZVRleHRUcmFja3Mi
X3MpLnZhbHVlT3IoZmFsc2UpKSB7CiAgICAgICAgIGlmIChhdXRvKiB0ZXh0VHJhY2tzID0gbWVk
aWFFbGVtZW50LnRleHRUcmFja3MoKTsgdGV4dFRyYWNrcyAmJiB0ZXh0VHJhY2tzLT5sZW5ndGgo
KSkgewogICAgICAgICAgICAgTWVkaWFDb250cm9sc0NvbnRleHRNZW51SXRlbSB0ZXh0VHJhY2tz
SXRlbTsKICAgICAgICAgICAgIHRleHRUcmFja3NJdGVtLnRpdGxlID0gV0VCX1VJX1NUUklOR19L
RVkoIlN1YnRpdGxlcyIsICJTdWJ0aXRsZXMgKE1lZGlhIENvbnRyb2xzIE1lbnUpIiwgIlN1YnRp
dGxlcyBtZWRpYSBjb250cm9scyBjb250ZXh0IG1lbnUgdGl0bGUiKTsKQEAgLTM3MCw3ICszOTMs
NyBAQCB2b2lkIE1lZGlhQ29udHJvbHNIb3N0OjpzaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51
KEhUTUxFbGVtZW50JiB0YXJnZXQsIENvbnRleAogCiAgICAgICAgICAgICBmb3IgKGF1dG8mIHRl
eHRUcmFjayA6IHNvcnRlZFRleHRUcmFja3MpIHsKICAgICAgICAgICAgICAgICBNZWRpYUNvbnRy
b2xzQ29udGV4dE1lbnVJdGVtIHRleHRUcmFja0l0ZW07Ci0gICAgICAgICAgICAgICAgdGV4dFRy
YWNrSXRlbS5pZCA9IGlkTWFwLnNpemUoKSArIDE7CisgICAgICAgICAgICAgICAgdGV4dFRyYWNr
SXRlbS5pZCA9IGdlbmVyYXRlSUQodGV4dFRyYWNrKTsKICAgICAgICAgICAgICAgICB0ZXh0VHJh
Y2tJdGVtLnRpdGxlID0gY2FwdGlvblByZWZlcmVuY2VzLmRpc3BsYXlOYW1lRm9yVHJhY2sodGV4
dFRyYWNrLmdldCgpKTsKICAgICAgICAgICAgICAgICBpZiAoYWxsVHJhY2tzRGlzYWJsZWQgJiYg
dGV4dFRyYWNrID09ICZUZXh0VHJhY2s6OmNhcHRpb25NZW51T2ZmSXRlbSgpICYmIChjYXB0aW9u
UHJlZmVyZW5jZXMuY2FwdGlvbkRpc3BsYXlNb2RlKCkgPT0gQ2FwdGlvblVzZXJQcmVmZXJlbmNl
czo6Rm9yY2VkT25seSB8fCBjYXB0aW9uUHJlZmVyZW5jZXMuY2FwdGlvbkRpc3BsYXlNb2RlKCkg
PT0gQ2FwdGlvblVzZXJQcmVmZXJlbmNlczo6TWFudWFsKSkKICAgICAgICAgICAgICAgICAgICAg
dGV4dFRyYWNrSXRlbS5pc0NoZWNrZWQgPSB0cnVlOwpAQCAtMzgwLDkgKzQwMyw2IEBAIHZvaWQg
TWVkaWFDb250cm9sc0hvc3Q6OnNob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnUoSFRNTEVsZW1l
bnQmIHRhcmdldCwgQ29udGV4CiAgICAgICAgICAgICAgICAgICAgIHRleHRUcmFja0l0ZW0uaXND
aGVja2VkID0gdHJ1ZTsKICAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAg
IHRleHRUcmFja0l0ZW0uaXNDaGVja2VkID0gZmFsc2U7Ci0KLSAgICAgICAgICAgICAgICBpZE1h
cC5hZGQodGV4dFRyYWNrSXRlbS5pZCwgdGV4dFRyYWNrKTsKLQogICAgICAgICAgICAgICAgIHRl
eHRUcmFja3NJdGVtLmNoaWxkcmVuLmFwcGVuZChXVEZNb3ZlKHRleHRUcmFja0l0ZW0pKTsKICAg
ICAgICAgICAgIH0KIApAQCAtMzkxLDEzICs0MTEsMTYgQEAgdm9pZCBNZWRpYUNvbnRyb2xzSG9z
dDo6c2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudShIVE1MRWxlbWVudCYgdGFyZ2V0LCBDb250
ZXgKICAgICAgICAgfQogICAgIH0KIAorI2lmIGRlZmluZWQoTWVkaWFDb250cm9sc0hvc3RBZGRp
dGlvbnNfc2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudV9vcHRpb25zKQorICAgIE1lZGlhQ29u
dHJvbHNIb3N0QWRkaXRpb25zX3Nob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnVfb3B0aW9ucwor
I2VuZGlmCisKICAgICBpZiAoaXRlbXMuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47CiAKICAg
ICBBU1NFUlQoIWlkTWFwLmlzRW1wdHkoKSk7CiAKICAgICBwYWdlLT5jaHJvbWUoKS5jbGllbnQo
KS5zaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KHRhcmdldC5ib3VuZHNJblJvb3RWaWV3U3Bh
Y2UoKSwgV1RGTW92ZShpdGVtcyksIFt3ZWFrTWVkaWFFbGVtZW50ID0gbWFrZVdlYWtQdHIobWVk
aWFFbGVtZW50KSwgaWRNYXAgPSBXVEZNb3ZlKGlkTWFwKV0gKE1lZGlhQ29udHJvbHNDb250ZXh0
TWVudUl0ZW06OklEIHNlbGVjdGVkSXRlbUlEKSB7Ci0KICAgICAgICAgaWYgKHNlbGVjdGVkSXRl
bUlEID09IE1lZGlhQ29udHJvbHNDb250ZXh0TWVudUl0ZW06OmludmFsaWRJRCkKICAgICAgICAg
ICAgIHJldHVybjsKIApAQCAtNDIxLDYgKzQ0NCw3IEBAIHZvaWQgTWVkaWFDb250cm9sc0hvc3Q6
OnNob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnUoSFRNTEVsZW1lbnQmIHRhcmdldCwgQ29udGV4
CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIG1lZGlhRWxlbWVudC5zZXRTZWxl
Y3RlZFRleHRUcmFjayhzZWxlY3RlZFRleHRUcmFjay5nZXQoKSk7CiAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICBNZWRpYUNvbnRyb2xzSG9zdEFkZGl0aW9uc19zaG93TWVkaWFDb250cm9sc0Nv
bnRleHRNZW51X01lbnVEYXRhX3N3aXRjaE9uCiAgICAgICAgICk7CiAgICAgfSk7CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9s
c0hvc3QuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRy
b2xzSG9zdC5oCmluZGV4IDJlNzNkY2U2N2RjMmY3NzQwOTFkMzQwODU3YjE4MzM4YzdiYmY1OTgu
LmRhMWQyZjAwOTIxYzEzMTIyMWQ4OTUwYWRkM2M3ZjkyNmFkZmYwYmEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9z
dC5oCkBAIC0yNSw2ICsyNSw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSA8d3RmL1Jl
Zi5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5o
PgogI2luY2x1ZGUgPHd0Zi9WYXJpYW50Lmg+CkBAIC05MiwxMSArOTMsNyBAQCBwdWJsaWM6CiAg
ICAgc3RhdGljIFN0cmluZyBmb3JtYXR0ZWRTdHJpbmdGb3JEdXJhdGlvbihkb3VibGUpOwogCiAj
aWYgRU5BQkxFKE1FRElBX0NPTlRST0xTX0NPTlRFWFRfTUVOVVMpCi0gICAgc3RydWN0IENvbnRl
eHRNZW51T3B0aW9ucyB7Ci0gICAgICAgIGJvb2wgaW5jbHVkZUF1ZGlvVHJhY2tzIHsgZmFsc2Ug
fTsKLSAgICAgICAgYm9vbCBpbmNsdWRlVGV4dFRyYWNrcyB7IGZhbHNlIH07Ci0gICAgfTsKLSAg
ICB2b2lkIHNob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnUoSFRNTEVsZW1lbnQmLCBDb250ZXh0
TWVudU9wdGlvbnMmJik7CisgICAgdm9pZCBzaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KEhU
TUxFbGVtZW50JiwgU3RyaW5nJiYgb3B0aW9uc0pTT05TdHJpbmcpOwogI2VuZGlmIC8vIEVOQUJM
RShNRURJQV9DT05UUk9MU19DT05URVhUX01FTlVTKQogCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0Lmlk
bCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9z
dC5pZGwKaW5kZXggMWY3NDRhMDQwNmE4NTA5ZDY4ZDU0NDE0ZWZlM2JkNTMxNDI0Y2U3MC4uNGMw
ODNjOTA5ZWRiODNlOTYwMGU5NjY5MTc5MjM5ODg5ZDVjYjU5ZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmlkbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3Qu
aWRsCkBAIC02NSwxMiArNjUsNSBAQCBlbnVtIERldmljZVR5cGUgewogICAgIFtFbmFibGVkQXRS
dW50aW1lPU1vZGVybk1lZGlhQ29udHJvbHNdIERPTVN0cmluZyBiYXNlNjRTdHJpbmdGb3JJY29u
TmFtZUFuZFR5cGUoRE9NU3RyaW5nIGljb25OYW1lLCBET01TdHJpbmcgaWNvblR5cGUpOwogICAg
IFtFbmFibGVkQXRSdW50aW1lPU1vZGVybk1lZGlhQ29udHJvbHNdIERPTVN0cmluZyBmb3JtYXR0
ZWRTdHJpbmdGb3JEdXJhdGlvbih1bnJlc3RyaWN0ZWQgZG91YmxlIGR1cmF0aW9uSW5TZWNvbmRz
KTsKIAotICAgIFtDb25kaXRpb25hbD1NRURJQV9DT05UUk9MU19DT05URVhUX01FTlVTLCBFbmFi
bGVkQnlTZXR0aW5nPU1lZGlhQ29udHJvbHNDb250ZXh0TWVudXMsIEVuYWJsZWRBdFJ1bnRpbWU9
TW9kZXJuTWVkaWFDb250cm9sc10gdW5kZWZpbmVkIHNob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1l
bnUoSFRNTEVsZW1lbnQgdGFyZ2V0LCBDb250ZXh0TWVudU9wdGlvbnMgb3B0aW9ucyk7Ci19Owot
Ci1bCi0gICAgQ29uZGl0aW9uYWw9TUVESUFfQ09OVFJPTFNfQ09OVEVYVF9NRU5VUywKLV0gZGlj
dGlvbmFyeSBDb250ZXh0TWVudU9wdGlvbnMgewotICAgIGJvb2xlYW4gaW5jbHVkZUF1ZGlvVHJh
Y2tzOwotICAgIGJvb2xlYW4gaW5jbHVkZVRleHRUcmFja3M7CisgICAgW0NvbmRpdGlvbmFsPU1F
RElBX0NPTlRST0xTX0NPTlRFWFRfTUVOVVMsIEVuYWJsZWRCeVNldHRpbmc9TWVkaWFDb250cm9s
c0NvbnRleHRNZW51cywgRW5hYmxlZEF0UnVudGltZT1Nb2Rlcm5NZWRpYUNvbnRyb2xzXSB1bmRl
ZmluZWQgc2hvd01lZGlhQ29udHJvbHNDb250ZXh0TWVudShIVE1MRWxlbWVudCB0YXJnZXQsIEpT
T04gb3B0aW9ucyk7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rl
cm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvYnV0dG9uLmpzIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvYnV0dG9uLmpzCmluZGV4IDBmNjZi
ZDNjM2EwMmU2ZDY5Y2U0YWM1MWNlZDU3MGViYTk1YjEyMzQuLmM2YzY3NTJhMDdjNjkyNzMwMmRk
ZTg3ZjllYzU5YzIzYmIxNTgzNTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL2J1dHRvbi5qcworKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9idXR0b24uanMKQEAg
LTEyOSw2ICsxMjksMTIgQEAgY2xhc3MgQnV0dG9uIGV4dGVuZHMgTGF5b3V0SXRlbQogICAgICAg
ICB0aGlzLl91cGRhdGVJbWFnZU1ldHJpY3MoKTsKICAgICB9CiAKKyAgICBnZXQgY29udGV4dE1l
bnVPcHRpb25zKCkKKyAgICB7CisgICAgICAgIC8vIEltcGxlbWVudGVkIGJ5IHN1YmNsYXNzZXMu
CisgICAgICAgIHJldHVybiB7fTsKKyAgICB9CisKICAgICAvLyBQcm90ZWN0ZWQKIAogICAgIGhh
bmRsZUV2ZW50KGV2ZW50KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rl
cm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvaWNvbi1zZXJ2aWNlLmpzIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvaWNvbi1zZXJ2aWNlLmpz
CmluZGV4IDU2MjA2MDE0MGJmOTg1YTcwNGE4NDA4NjJlYTcwNzE0ODQzMTczNTMuLmIxMzVlNjQ5
ODVhODQ4MzQ5YTVlMzExY2VkMDFlMTQwN2ZmZmM2OTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL2ljb24tc2VydmljZS5q
cworKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250
cm9scy9pY29uLXNlcnZpY2UuanMKQEAgLTMyLDYgKzMyLDcgQEAgY29uc3QgSWNvbnMgPSB7CiAg
ICAgRm9yd2FyZCAgICAgICAgIDogeyBuYW1lOiAiRm9yd2FyZCIsIHR5cGU6ICJzdmciLCBsYWJl
bDogVUlTdHJpbmcoIkZvcndhcmQiKSB9LAogICAgIEludmFsaWRDb21wYWN0ICA6IHsgbmFtZTog
IkludmFsaWRDb21wYWN0IiwgdHlwZTogInBkZiIsIGxhYmVsOiBVSVN0cmluZygiSW52YWxpZCIp
IH0sCiAgICAgSW52YWxpZFBsYWNhcmQgIDogeyBuYW1lOiAiaW52YWxpZC1wbGFjYXJkIiwgdHlw
ZTogInBuZyIsIGxhYmVsOiBVSVN0cmluZygiSW52YWxpZCIpIH0sCisgICAgT3ZlcmZsb3cgICAg
ICAgIDogeyBuYW1lOiAiT3ZlcmZsb3ciLCB0eXBlOiAic3ZnIiwgbGFiZWw6IFVJU3RyaW5nKCJN
b3JlLi4uIikgfSwKICAgICBQYXVzZSAgICAgICAgICAgOiB7IG5hbWU6ICJQYXVzZSIsIHR5cGU6
ICJzdmciLCBsYWJlbDogVUlTdHJpbmcoIlBhdXNlIikgfSwKICAgICBQaVBQbGFjYXJkICAgICAg
OiB7IG5hbWU6ICJwaXAtcGxhY2FyZCIsIHR5cGU6ICJwbmciLCBsYWJlbDogVUlTdHJpbmcoIlBp
Y3R1cmUgaW4gUGljdHVyZSIpIH0sCiAgICAgUGxheSAgICAgICAgICAgIDogeyBuYW1lOiAiUGxh
eSIsIHR5cGU6ICJzdmciLCBsYWJlbDogVUlTdHJpbmcoIlBsYXkiKSB9LApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvaW5s
aW5lLW1lZGlhLWNvbnRyb2xzLmpzIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVk
aWEtY29udHJvbHMvY29udHJvbHMvaW5saW5lLW1lZGlhLWNvbnRyb2xzLmpzCmluZGV4IDI0MWRm
MmFmMTRkYzE2OTQ4NzYzNDY1MTFiZmY0OTQxNjE2ZTYwMDUuLjY2Yjc2OWVjZDUyMGU3NGM2NjNj
ODAwYWY1NmZiOTc0MzNjZmRmYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL2lubGluZS1tZWRpYS1jb250cm9scy5qcwor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9s
cy9pbmxpbmUtbWVkaWEtY29udHJvbHMuanMKQEAgLTE2Niw2ICsxNjYsNyBAQCBjbGFzcyBJbmxp
bmVNZWRpYUNvbnRyb2xzIGV4dGVuZHMgTWVkaWFDb250cm9scwogICAgICAgICB0aGlzLnJpZ2h0
Q29udGFpbmVyLmNoaWxkcmVuID0gdGhpcy5fcmlnaHRDb250YWluZXJCdXR0b25zKCk7CiAgICAg
ICAgIHRoaXMucmlnaHRDb250YWluZXIuY2hpbGRyZW4uY29uY2F0KHRoaXMubGVmdENvbnRhaW5l
ci5jaGlsZHJlbikuZm9yRWFjaChidXR0b24gPT4gZGVsZXRlIGJ1dHRvbi5kcm9wcGVkKTsKICAg
ICAgICAgdGhpcy5tdXRlQnV0dG9uLnN0eWxlID0gdGhpcy5wcmVmZXJyZWRNdXRlQnV0dG9uU3R5
bGU7CisgICAgICAgIHRoaXMub3ZlcmZsb3dCdXR0b24uY2xlYXJDb250ZXh0TWVudU9wdGlvbnMo
KTsKIAogICAgICAgICBmb3IgKGxldCBidXR0b24gb2YgdGhpcy5fZHJvcHBhYmxlQnV0dG9ucygp
KSB7CiAgICAgICAgICAgICAvLyBJZiB0aGUgYnV0dG9uIGlzIG5vdCBlbmFibGVkLCB3ZSBjYW4g
c2tpcCBpdC4KQEAgLTE4Miw2ICsxODMsOSBAQCBjbGFzcyBJbmxpbmVNZWRpYUNvbnRyb2xzIGV4
dGVuZHMgTWVkaWFDb250cm9scwogCiAgICAgICAgICAgICAvLyBUaGlzIGJ1dHRvbiBtdXN0IG5v
dyBiZSBkcm9wcGVkLgogICAgICAgICAgICAgYnV0dG9uLmRyb3BwZWQgPSB0cnVlOworCisgICAg
ICAgICAgICBpZiAoYnV0dG9uICE9PSB0aGlzLm92ZXJmbG93QnV0dG9uKQorICAgICAgICAgICAg
ICAgIHRoaXMub3ZlcmZsb3dCdXR0b24uYWRkQ29udGV4dE1lbnVPcHRpb25zKGJ1dHRvbi5jb250
ZXh0TWVudU9wdGlvbnMpOwogICAgICAgICB9CiAKICAgICAgICAgLy8gVXBkYXRlIGxheW91dHMg
b25jZSBtb3JlLgpAQCAtMjU1LDI0ICsyNTksMjQgQEAgY2xhc3MgSW5saW5lTWVkaWFDb250cm9s
cyBleHRlbmRzIE1lZGlhQ29udHJvbHMKICAgICBfcmlnaHRDb250YWluZXJCdXR0b25zKCkKICAg
ICB7CiAgICAgICAgIGlmICh0aGlzLl9zaG91bGRVc2VBdWRpb0xheW91dCkKLSAgICAgICAgICAg
IHJldHVybiBbdGhpcy5tdXRlQnV0dG9uLCB0aGlzLmFpcnBsYXlCdXR0b25dOworICAgICAgICAg
ICAgcmV0dXJuIFt0aGlzLm11dGVCdXR0b24sIHRoaXMuYWlycGxheUJ1dHRvbiwgdGhpcy5vdmVy
Zmxvd0J1dHRvbl07CiAKICAgICAgICAgaWYgKHRoaXMuX3Nob3VsZFVzZVNpbmdsZUJhckxheW91
dCkKLSAgICAgICAgICAgIHJldHVybiBbdGhpcy5tdXRlQnV0dG9uLCB0aGlzLmFpcnBsYXlCdXR0
b24sIHRoaXMucGlwQnV0dG9uLCB0aGlzLnRyYWNrc0J1dHRvbiwgdGhpcy5mdWxsc2NyZWVuQnV0
dG9uXTsKKyAgICAgICAgICAgIHJldHVybiBbdGhpcy5tdXRlQnV0dG9uLCB0aGlzLmFpcnBsYXlC
dXR0b24sIHRoaXMucGlwQnV0dG9uLCB0aGlzLnRyYWNrc0J1dHRvbiwgdGhpcy5vdmVyZmxvd0J1
dHRvbiwgdGhpcy5mdWxsc2NyZWVuQnV0dG9uXTsKIAogICAgICAgICBjb25zdCBidXR0b25zID0g
W107CiAgICAgICAgIGlmICh0aGlzLnByZWZlcnJlZE11dGVCdXR0b25TdHlsZSA9PT0gQnV0dG9u
LlN0eWxlcy5CYXIpCiAgICAgICAgICAgICBidXR0b25zLnB1c2godGhpcy5tdXRlQnV0dG9uKTsK
LSAgICAgICAgYnV0dG9ucy5wdXNoKHRoaXMuYWlycGxheUJ1dHRvbiwgdGhpcy50cmFja3NCdXR0
b24pOworICAgICAgICBidXR0b25zLnB1c2godGhpcy5haXJwbGF5QnV0dG9uLCB0aGlzLnRyYWNr
c0J1dHRvbiwgdGhpcy5vdmVyZmxvd0J1dHRvbik7CiAgICAgICAgIHJldHVybiBidXR0b25zOwog
ICAgIH0KIAogICAgIF9kcm9wcGFibGVCdXR0b25zKCkKICAgICB7CiAgICAgICAgIGlmICh0aGlz
Ll9zaG91bGRVc2VTaW5nbGVCYXJMYXlvdXQpCi0gICAgICAgICAgICByZXR1cm4gW3RoaXMuc2tp
cEZvcndhcmRCdXR0b24sIHRoaXMuc2tpcEJhY2tCdXR0b24sIHRoaXMuYWlycGxheUJ1dHRvbiwg
dGhpcy50cmFja3NCdXR0b24sIHRoaXMucGlwQnV0dG9uLCB0aGlzLmZ1bGxzY3JlZW5CdXR0b24s
IHRoaXMubXV0ZUJ1dHRvbl07CisgICAgICAgICAgICByZXR1cm4gW3RoaXMuc2tpcEZvcndhcmRC
dXR0b24sIHRoaXMuc2tpcEJhY2tCdXR0b24sIHRoaXMuYWlycGxheUJ1dHRvbiwgdGhpcy50cmFj
a3NCdXR0b24sIHRoaXMub3ZlcmZsb3dCdXR0b24sIHRoaXMucGlwQnV0dG9uLCB0aGlzLmZ1bGxz
Y3JlZW5CdXR0b24sIHRoaXMubXV0ZUJ1dHRvbl07CiAKLSAgICAgICAgY29uc3QgYnV0dG9ucyA9
IFt0aGlzLnNraXBGb3J3YXJkQnV0dG9uLCB0aGlzLnNraXBCYWNrQnV0dG9uLCB0aGlzLmFpcnBs
YXlCdXR0b24sIHRoaXMudHJhY2tzQnV0dG9uXTsKKyAgICAgICAgY29uc3QgYnV0dG9ucyA9IFt0
aGlzLnNraXBGb3J3YXJkQnV0dG9uLCB0aGlzLnNraXBCYWNrQnV0dG9uLCB0aGlzLmFpcnBsYXlC
dXR0b24sIHRoaXMudHJhY2tzQnV0dG9uLCB0aGlzLm92ZXJmbG93QnV0dG9uXTsKICAgICAgICAg
aWYgKHRoaXMucHJlZmVycmVkTXV0ZUJ1dHRvblN0eWxlID09PSBCdXR0b24uU3R5bGVzLkJhcikK
ICAgICAgICAgICAgIGJ1dHRvbnMucHVzaCh0aGlzLm11dGVCdXR0b24pOwogICAgICAgICByZXR1
cm4gYnV0dG9uczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1l
ZGlhLWNvbnRyb2xzL2NvbnRyb2xzL21lZGlhLWNvbnRyb2xzLmpzIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvbWVkaWEtY29udHJvbHMuanMK
aW5kZXggOWYyM2Y1NmYwYWZjZjljMWJjN2Y5NTY4YWI4N2ViNzUyMGJlMzYwYi4uMWFiYThkNDI3
MDI3MTJlZGI1NjdjYjljZDU4M2RkOWIyYzdkZjkyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvbWVkaWEtY29udHJvbHMu
anMKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29u
dHJvbHMvbWVkaWEtY29udHJvbHMuanMKQEAgLTQzLDYgKzQzLDcgQEAgY2xhc3MgTWVkaWFDb250
cm9scyBleHRlbmRzIExheW91dE5vZGUKICAgICAgICAgdGhpcy5mdWxsc2NyZWVuQnV0dG9uID0g
bmV3IEZ1bGxzY3JlZW5CdXR0b24odGhpcyk7CiAgICAgICAgIHRoaXMubXV0ZUJ1dHRvbiA9IG5l
dyBNdXRlQnV0dG9uKHRoaXMpOwogICAgICAgICB0aGlzLnRyYWNrc0J1dHRvbiA9IG5ldyBUcmFj
a3NCdXR0b24odGhpcyk7CisgICAgICAgIHRoaXMub3ZlcmZsb3dCdXR0b24gPSBuZXcgT3ZlcmZs
b3dCdXR0b24odGhpcyk7CiAKICAgICAgICAgdGhpcy5zdGF0dXNMYWJlbCA9IG5ldyBTdGF0dXNM
YWJlbCh0aGlzKTsKICAgICAgICAgdGhpcy50aW1lQ29udHJvbCA9IG5ldyBUaW1lQ29udHJvbCh0
aGlzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNv
bnRyb2xzL2NvbnRyb2xzL292ZXJmbG93LWJ1dHRvbi5qcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL292ZXJmbG93LWJ1dHRvbi5qcwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi44MGIzNTFmMTFlM2FhNjdkM2E0YjU1ODAwY2RjMTFmZmM3ZjIwYTU5Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMv
Y29udHJvbHMvb3ZlcmZsb3ctYnV0dG9uLmpzCkBAIC0wLDAgKzEsOTQgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycg
QU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAor
ICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCitjbGFzcyBPdmVyZmxvd0J1dHRvbiBl
eHRlbmRzIEJ1dHRvbgoreworCisgICAgY29uc3RydWN0b3IobGF5b3V0RGVsZWdhdGUpCisgICAg
eworICAgICAgICBzdXBlcih7CisgICAgICAgICAgICBjc3NDbGFzc05hbWU6ICJvdmVyZmxvdyIs
CisgICAgICAgICAgICBpY29uTmFtZTogSWNvbnMuT3ZlcmZsb3csCisgICAgICAgICAgICBsYXlv
dXREZWxlZ2F0ZSwKKyAgICAgICAgfSk7CisKKyAgICAgICAgdGhpcy5jbGVhckNvbnRleHRNZW51
T3B0aW9ucygpOworICAgICAgICB0aGlzLl9kZWZhdWx0Q29udGV4dE1lbnVPcHRpb25zID0ge307
CisgICAgfQorCisgICAgLy8gUHVibGljCisKKyAgICBnZXQgdmlzaWJsZSgpCisgICAgeworICAg
ICAgICByZXR1cm4gc3VwZXIudmlzaWJsZTsKKyAgICB9CisKKyAgICBzZXQgdmlzaWJsZShmbGFn
KQorICAgIHsKKyAgICAgICAgbGV0IGhhc0NvbnRleHRNZW51T3B0aW9ucyA9IGZhbHNlOworICAg
ICAgICBmb3IgKGxldCBrZXkgaW4gdGhpcy5fY29udGV4dE1lbnVPcHRpb25zKSB7CisgICAgICAg
ICAgICBoYXNDb250ZXh0TWVudU9wdGlvbnMgPSB0cnVlOworICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIH0KKworICAgICAgICBzdXBlci52aXNpYmxlID0gZmxhZyAmJiBoYXNDb250ZXh0TWVu
dU9wdGlvbnM7CisgICAgfQorCisgICAgZ2V0IGNvbnRleHRNZW51T3B0aW9ucygpCisgICAgewor
ICAgICAgICByZXR1cm4gdGhpcy5fY29udGV4dE1lbnVPcHRpb25zOworICAgIH0KKworICAgIGFk
ZENvbnRleHRNZW51T3B0aW9ucyhjb250ZXh0TWVudU9wdGlvbnMpCisgICAgeworICAgICAgICBp
ZiAoIXRoaXMuZW5hYmxlZCkKKyAgICAgICAgICAgIHJldHVybjsKKworICAgICAgICBmb3IgKGxl
dCBrZXkgaW4gY29udGV4dE1lbnVPcHRpb25zKQorICAgICAgICAgICAgdGhpcy5fY29udGV4dE1l
bnVPcHRpb25zW2tleV0gPSBjb250ZXh0TWVudU9wdGlvbnNba2V5XTsKKworICAgICAgICB0aGlz
LnZpc2libGUgPSB0cnVlOworICAgIH0KKworICAgIGNsZWFyQ29udGV4dE1lbnVPcHRpb25zKCkK
KyAgICB7CisgICAgICAgIHRoaXMuX2NvbnRleHRNZW51T3B0aW9ucyA9IHt9OworCisgICAgICAg
IHRoaXMudmlzaWJsZSA9IGZhbHNlOworCisgICAgICAgIHRoaXMuYWRkQ29udGV4dE1lbnVPcHRp
b25zKHRoaXMuX2RlZmF1bHRDb250ZXh0TWVudU9wdGlvbnMpOworICAgIH0KKworICAgIHNldCBk
ZWZhdWx0Q29udGV4dE1lbnVPcHRpb25zKGRlZmF1bHRDb250ZXh0TWVudU9wdGlvbnMpCisgICAg
eworICAgICAgICB0aGlzLl9kZWZhdWx0Q29udGV4dE1lbnVPcHRpb25zID0gZGVmYXVsdENvbnRl
eHRNZW51T3B0aW9ucyB8fCB7fTsKKworICAgICAgICB0aGlzLmNsZWFyQ29udGV4dE1lbnVPcHRp
b25zKCk7CisKKyAgICAgICAgaWYgKHRoaXMubGF5b3V0RGVsZWdhdGUpCisgICAgICAgICAgICB0
aGlzLmxheW91dERlbGVnYXRlLm5lZWRzTGF5b3V0ID0gdHJ1ZTsKKyAgICB9CisKK30KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRy
b2xzL3RyYWNrcy1idXR0b24uanMgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRp
YS1jb250cm9scy9jb250cm9scy90cmFja3MtYnV0dG9uLmpzCmluZGV4IGFhZjk0MGZmM2UzOTIx
ZmI5NjYyZTQ1YjBiMmI4Mjk4NDM2MzY2NWYuLjM1YWQ1ZGE4NDg0MjAxMzg5ZGZhNjcwMDk5Mzkz
MDQyZjRiMzc1YWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1l
ZGlhLWNvbnRyb2xzL2NvbnRyb2xzL3RyYWNrcy1idXR0b24uanMKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvdHJhY2tzLWJ1dHRvbi5q
cwpAQCAtMzUsNCArMzUsMTQgQEAgY2xhc3MgVHJhY2tzQnV0dG9uIGV4dGVuZHMgQnV0dG9uCiAg
ICAgICAgIH0pOwogICAgIH0KIAorICAgIC8vIFB1YmxpYworCisgICAgZ2V0IGNvbnRleHRNZW51
T3B0aW9ucygpCisgICAgeworICAgICAgICByZXR1cm4geworICAgICAgICAgICAgaW5jbHVkZUF1
ZGlvVHJhY2tzOiB0cnVlLAorICAgICAgICAgICAgaW5jbHVkZVRleHRUcmFja3M6IHRydWUsCisg
ICAgICAgIH07CisgICAgfQorCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21vZGVybi1tZWRpYS1jb250cm9scy9pbWFnZXMvaU9TL092ZXJmbG93LnN2ZyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2ltYWdlcy9pT1MvT3ZlcmZsb3cu
c3ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmVjZjFiMjQ4YzU4ZGNmYjk4ZGNjNTc2YWJiM2E2NzJlODY2YmFkZDYK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1j
b250cm9scy9pbWFnZXMvaU9TL092ZXJmbG93LnN2ZwpAQCAtMCwwICsxLDQgQEAKKzw/eG1sIHZl
cnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8c3ZnIHdpZHRoPSIxNnB4IiBoZWlnaHQ9
IjEzcHgiIHZpZXdCb3g9IjAgMCAxNiAxMyIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3
dy53My5vcmcvMjAwMC9zdmciPgorICAgIDxwYXRoIGQ9Ik0zLjQ2NTQyMjgsNi41MDAxMDMyMyBD
My40NjU0MjI4LDUuNTY3NjQ3MzEgMi43MDkzNjI1OCw0LjgyIDEuNzYwMTE1MjcsNC44MiBDMC44
MzYwNTUwNTQsNC44MiAwLjA4LDUuNTY3NjQ3MzEgMC4wOCw2LjUwMDEwMzIzIEMwLjA4LDcuNDMy
NTU5MTQgMC44MzYwNTUwNTQsOC4xODAyMDY0NSAxLjc2MDExNTI3LDguMTgwMjA2NDUgQzIuNzA5
MzYyNTgsOC4xODAyMDY0NSAzLjQ2NTQyMjgsNy40MzI1NTkxNCAzLjQ2NTQyMjgsNi41MDAxMDMy
MyBaIE05LjY4MTgxODQ5LDYuNTAwMTAzMjMgQzkuNjgxODE4NDksNS41Njc2NDczMSA4LjkzNDE3
MTE4LDQuODIgOC4wMDE3MTUyNyw0LjgyIEM3LjA3NzY1NTA1LDQuODIgNi4zMzAwMDc3NCw1LjU2
NzY0NzMxIDYuMzMwMDA3NzQsNi41MDAxMDMyMyBDNi4zMzAwMDc3NCw3LjQzMjU1OTE0IDcuMDc3
NjU1MDUsOC4xODAyMDY0NSA4LjAwMTcxNTI3LDguMTgwMjA2NDUgQzguOTM0MTcxMTgsOC4xODAy
MDY0NSA5LjY4MTgxODQ5LDcuNDMyNTU5MTQgOS42ODE4MTg0OSw2LjUwMDEwMzIzIFogTTE1Ljky
MzQwMTMsNi41MDAxMDMyMyBDMTUuOTIzNDAxMyw1LjU2NzY0NzMxIDE1LjE3NTc3MTIsNC44MiAx
NC4yNDMzMTUzLDQuODIgQzEzLjI5NDA1MDgsNC44MiAxMi41NDY0MDM0LDUuNTY3NjQ3MzEgMTIu
NTQ2NDAzNCw2LjUwMDEwMzIzIEMxMi41NDY0MDM0LDcuNDMyNTU5MTQgMTMuMjk0MDUwOCw4LjE4
MDIwNjQ1IDE0LjI0MzMxNTMsOC4xODAyMDY0NSBDMTUuMTc1NzcxMiw4LjE4MDIwNjQ1IDE1Ljky
MzQwMTMsNy40MzI1NTkxNCAxNS45MjM0MDEzLDYuNTAwMTAzMjMgWiIvPgorPC9zdmc+CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9pbWFn
ZXMvbWFjT1MvT3ZlcmZsb3cuc3ZnIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVk
aWEtY29udHJvbHMvaW1hZ2VzL21hY09TL092ZXJmbG93LnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lY2YxYjI0
OGM1OGRjZmI5OGRjYzU3NmFiYjNhNjcyZTg2NmJhZGQ2Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvaW1hZ2VzL21hY09TL092
ZXJmbG93LnN2ZwpAQCAtMCwwICsxLDQgQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9
IlVURi04Ij8+Cis8c3ZnIHdpZHRoPSIxNnB4IiBoZWlnaHQ9IjEzcHgiIHZpZXdCb3g9IjAgMCAx
NiAxMyIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgor
ICAgIDxwYXRoIGQ9Ik0zLjQ2NTQyMjgsNi41MDAxMDMyMyBDMy40NjU0MjI4LDUuNTY3NjQ3MzEg
Mi43MDkzNjI1OCw0LjgyIDEuNzYwMTE1MjcsNC44MiBDMC44MzYwNTUwNTQsNC44MiAwLjA4LDUu
NTY3NjQ3MzEgMC4wOCw2LjUwMDEwMzIzIEMwLjA4LDcuNDMyNTU5MTQgMC44MzYwNTUwNTQsOC4x
ODAyMDY0NSAxLjc2MDExNTI3LDguMTgwMjA2NDUgQzIuNzA5MzYyNTgsOC4xODAyMDY0NSAzLjQ2
NTQyMjgsNy40MzI1NTkxNCAzLjQ2NTQyMjgsNi41MDAxMDMyMyBaIE05LjY4MTgxODQ5LDYuNTAw
MTAzMjMgQzkuNjgxODE4NDksNS41Njc2NDczMSA4LjkzNDE3MTE4LDQuODIgOC4wMDE3MTUyNyw0
LjgyIEM3LjA3NzY1NTA1LDQuODIgNi4zMzAwMDc3NCw1LjU2NzY0NzMxIDYuMzMwMDA3NzQsNi41
MDAxMDMyMyBDNi4zMzAwMDc3NCw3LjQzMjU1OTE0IDcuMDc3NjU1MDUsOC4xODAyMDY0NSA4LjAw
MTcxNTI3LDguMTgwMjA2NDUgQzguOTM0MTcxMTgsOC4xODAyMDY0NSA5LjY4MTgxODQ5LDcuNDMy
NTU5MTQgOS42ODE4MTg0OSw2LjUwMDEwMzIzIFogTTE1LjkyMzQwMTMsNi41MDAxMDMyMyBDMTUu
OTIzNDAxMyw1LjU2NzY0NzMxIDE1LjE3NTc3MTIsNC44MiAxNC4yNDMzMTUzLDQuODIgQzEzLjI5
NDA1MDgsNC44MiAxMi41NDY0MDM0LDUuNTY3NjQ3MzEgMTIuNTQ2NDAzNCw2LjUwMDEwMzIzIEMx
Mi41NDY0MDM0LDcuNDMyNTU5MTQgMTMuMjk0MDUwOCw4LjE4MDIwNjQ1IDE0LjI0MzMxNTMsOC4x
ODAyMDY0NSBDMTUuMTc1NzcxMiw4LjE4MDIwNjQ1IDE1LjkyMzQwMTMsNy40MzI1NTkxNCAxNS45
MjM0MDEzLDYuNTAwMTAzMjMgWiIvPgorPC9zdmc+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9qcy1maWxlcyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2pzLWZpbGVzCmluZGV4IGI2NjQ5NGFiMDJj
ZTJhMmIxNGVhOTkyNDNmZGQwMDNiZjU0MGJhYmYuLjFlYjllNGEzY2NlYTBjN2JjZDViZDEwZGRj
Yzk5NDYyMzViY2NhYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJu
LW1lZGlhLWNvbnRyb2xzL2pzLWZpbGVzCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9k
ZXJuLW1lZGlhLWNvbnRyb2xzL2pzLWZpbGVzCkBAIC0yMiw2ICsyMiw3IEBAIGNvbnRyb2xzL2Z1
bGxzY3JlZW4tYnV0dG9uLmpzCiBjb250cm9scy9zZWVrLWJ1dHRvbi5qcwogY29udHJvbHMvcmV3
aW5kLWJ1dHRvbi5qcwogY29udHJvbHMvZm9yd2FyZC1idXR0b24uanMKK2NvbnRyb2xzL292ZXJm
bG93LWJ1dHRvbi5qcwogY29udHJvbHMvYnV0dG9ucy1jb250YWluZXIuanMKIGNvbnRyb2xzL3N0
YXR1cy1sYWJlbC5qcwogY29udHJvbHMvY29udHJvbHMtYmFyLmpzCkBAIC00NSw2ICs0Niw3IEBA
IG1lZGlhL2F1ZGlvLXN1cHBvcnQuanMKIG1lZGlhL2NvbnRyb2xzLXZpc2liaWxpdHktc3VwcG9y
dC5qcwogbWVkaWEvZnVsbHNjcmVlbi1zdXBwb3J0LmpzCiBtZWRpYS9tdXRlLXN1cHBvcnQuanMK
K21lZGlhL292ZXJmbG93LXN1cHBvcnQuanMKIG1lZGlhL3BpcC1zdXBwb3J0LmpzCiBtZWRpYS9w
bGFjYXJkLXN1cHBvcnQuanMKIG1lZGlhL3BsYXliYWNrLXN1cHBvcnQuanMKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21lZGlhL21lZGlh
LWNvbnRyb2xsZXIuanMgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250
cm9scy9tZWRpYS9tZWRpYS1jb250cm9sbGVyLmpzCmluZGV4IGJlN2ZiZGZmMzE5ODc4YTZmMDQ2
NmFmNjc5NjFjZjcxNDZmOWM5ZTUuLmQ3ZGFlYWQxMDVjOWVkMGFmNGE4YmExNTRjYTA0MmFmY2Ey
YzVlZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNv
bnRyb2xzL21lZGlhL21lZGlhLWNvbnRyb2xsZXIuanMKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWVkaWEvbWVkaWEtY29udHJvbGxlci5qcwpAQCAt
MTg2LDcgKzE4Niw3IEBAIGNsYXNzIE1lZGlhQ29udHJvbGxlcgogICAgICAgICBpZiAodGhpcy5s
YXlvdXRUcmFpdHMgJiBMYXlvdXRUcmFpdHMuQ29tcGFjdCkKICAgICAgICAgICAgIHJldHVybiBb
Q29tcGFjdE1lZGlhQ29udHJvbHNTdXBwb3J0XTsKIAotICAgICAgICByZXR1cm4gW0FpcnBsYXlT
dXBwb3J0LCBBdWRpb1N1cHBvcnQsIENvbnRyb2xzVmlzaWJpbGl0eVN1cHBvcnQsIEZ1bGxzY3Jl
ZW5TdXBwb3J0LCBNdXRlU3VwcG9ydCwgUGlQU3VwcG9ydCwgUGxhY2FyZFN1cHBvcnQsIFBsYXli
YWNrU3VwcG9ydCwgU2NydWJiaW5nU3VwcG9ydCwgU2Vla0JhY2t3YXJkU3VwcG9ydCwgU2Vla0Zv
cndhcmRTdXBwb3J0LCBTa2lwQmFja1N1cHBvcnQsIFNraXBGb3J3YXJkU3VwcG9ydCwgU3RhcnRT
dXBwb3J0LCBTdGF0dXNTdXBwb3J0LCBUaW1lQ29udHJvbFN1cHBvcnQsIFRyYWNrc1N1cHBvcnQs
IFZvbHVtZVN1cHBvcnRdOworICAgICAgICByZXR1cm4gW0FpcnBsYXlTdXBwb3J0LCBBdWRpb1N1
cHBvcnQsIENvbnRyb2xzVmlzaWJpbGl0eVN1cHBvcnQsIEZ1bGxzY3JlZW5TdXBwb3J0LCBNdXRl
U3VwcG9ydCwgT3ZlcmZsb3dTdXBwb3J0LCBQaVBTdXBwb3J0LCBQbGFjYXJkU3VwcG9ydCwgUGxh
eWJhY2tTdXBwb3J0LCBTY3J1YmJpbmdTdXBwb3J0LCBTZWVrQmFja3dhcmRTdXBwb3J0LCBTZWVr
Rm9yd2FyZFN1cHBvcnQsIFNraXBCYWNrU3VwcG9ydCwgU2tpcEZvcndhcmRTdXBwb3J0LCBTdGFy
dFN1cHBvcnQsIFN0YXR1c1N1cHBvcnQsIFRpbWVDb250cm9sU3VwcG9ydCwgVHJhY2tzU3VwcG9y
dCwgVm9sdW1lU3VwcG9ydF07CiAgICAgfQogCiAgICAgX3VwZGF0ZUNvbnRyb2xzSWZOZWVkZWQo
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJv
bHMvbWVkaWEvb3ZlcmZsb3ctc3VwcG9ydC5qcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9k
ZXJuLW1lZGlhLWNvbnRyb2xzL21lZGlhL292ZXJmbG93LXN1cHBvcnQuanMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
MzYzYTI3NjhkYmFmNmU3YzVlNjkwODhmN2FjNThjOTgyNTJiYjAwMQotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21lZGlhL292
ZXJmbG93LXN1cHBvcnQuanMKQEAgLTAsMCArMSw1OCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAyMSBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisg
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
CisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorICovCisKK2NsYXNzIE92ZXJmbG93U3VwcG9ydCBleHRlbmRzIE1l
ZGlhQ29udHJvbGxlclN1cHBvcnQKK3sKKworICAgIC8vIFByb3RlY3RlZAorCisgICAgZ2V0IG1l
ZGlhRXZlbnRzKCkKKyAgICB7CisgICAgICAgIGxldCBtZWRpYUV2ZW50cyA9IFtdOworICAgICAg
ICB3aW5kb3dbIldlYktpdEFkZGl0aW9ucy5PdmVyZmxvd1N1cHBvcnQucHJvdG90eXBlLmdldF9t
ZWRpYUV2ZW50cyJdPy4odGhpcywgbWVkaWFFdmVudHMpOworICAgICAgICByZXR1cm4gbWVkaWFF
dmVudHM7CisgICAgfQorCisgICAgZ2V0IGNvbnRyb2woKQorICAgIHsKKyAgICAgICAgcmV0dXJu
IHRoaXMubWVkaWFDb250cm9sbGVyLmNvbnRyb2xzLm92ZXJmbG93QnV0dG9uOworICAgIH0KKwor
ICAgIGJ1dHRvbldhc1ByZXNzZWQoY29udHJvbCkKKyAgICB7CisgICAgICAgIGlmICh0aGlzLm1l
ZGlhQ29udHJvbGxlci5ob3N0Py5zaG93TWVkaWFDb250cm9sc0NvbnRleHRNZW51KQorICAgICAg
ICAgICAgdGhpcy5tZWRpYUNvbnRyb2xsZXIuaG9zdC5zaG93TWVkaWFDb250cm9sc0NvbnRleHRN
ZW51KGNvbnRyb2wuZWxlbWVudCwgY29udHJvbC5jb250ZXh0TWVudU9wdGlvbnMpOworICAgIH0K
KworICAgIHN5bmNDb250cm9sKCkKKyAgICB7CisgICAgICAgIHRoaXMuY29udHJvbC5lbmFibGVk
ID0gISF0aGlzLm1lZGlhQ29udHJvbGxlci5ob3N0Py5zaG93TWVkaWFDb250cm9sc0NvbnRleHRN
ZW51OworCisgICAgICAgIGxldCBkZWZhdWx0Q29udGV4dE1lbnVPcHRpb25zID0ge307CisgICAg
ICAgIHdpbmRvd1siV2ViS2l0QWRkaXRpb25zLk92ZXJmbG93U3VwcG9ydC5wcm90b3R5cGUuc3lu
Y0NvbnRyb2wiXT8uKHRoaXMsIGRlZmF1bHRDb250ZXh0TWVudU9wdGlvbnMpOworICAgICAgICB0
aGlzLmNvbnRyb2wuZGVmYXVsdENvbnRleHRNZW51T3B0aW9ucyA9IGRlZmF1bHRDb250ZXh0TWVu
dU9wdGlvbnM7CisgICAgfQorCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS90cmFja3Mtc3VwcG9ydC5qcyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21lZGlhL3RyYWNrcy1zdXBwb3J0
LmpzCmluZGV4IDg1OWUyZGE5ODFiNTQyOTY3N2M2YTgzNmJkNjNlNDc4YTZhYTViZTEuLmU3N2Ew
ZGM0YjgyODg1Mjg5NjgzM2I4MTkwMzc5ZDkwMWRkMWZlMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21lZGlhL3RyYWNrcy1zdXBwb3J0
LmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21l
ZGlhL3RyYWNrcy1zdXBwb3J0LmpzCkBAIC01Nyw3ICs1Nyw3IEBAIGNsYXNzIFRyYWNrc1N1cHBv
cnQgZXh0ZW5kcyBNZWRpYUNvbnRyb2xsZXJTdXBwb3J0CiAgICAgYnV0dG9uV2FzUHJlc3NlZChj
b250cm9sKQogICAgIHsKICAgICAgICAgaWYgKHRoaXMubWVkaWFDb250cm9sbGVyLmhvc3Q/LnNo
b3dNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnUpCi0gICAgICAgICAgICB0aGlzLm1lZGlhQ29udHJv
bGxlci5ob3N0LnNob3dNZWRpYUNvbnRyb2xzQ29udGV4dE1lbnUoY29udHJvbC5lbGVtZW50LCB7
aW5jbHVkZUF1ZGlvVHJhY2tzOiB0cnVlLCBpbmNsdWRlVGV4dFRyYWNrczogdHJ1ZX0pOworICAg
ICAgICAgICAgdGhpcy5tZWRpYUNvbnRyb2xsZXIuaG9zdC5zaG93TWVkaWFDb250cm9sc0NvbnRl
eHRNZW51KGNvbnRyb2wuZWxlbWVudCwgY29udHJvbC5jb250ZXh0TWVudU9wdGlvbnMpOwogICAg
ICAgICBlbHNlCiAgICAgICAgICAgICB0aGlzLm1lZGlhQ29udHJvbGxlci5jb250cm9scy5zaG93
VHJhY2tzUGFuZWwoKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNzFhYThjNTgxYjY1ZDk0Y2I5ZjU0MzI0NzMzOWY4
MDc1YmYwYTZmMi4uYjY3MmYwYWMzNDcyODE1OTU1NTc4MzA1YmVhZjJjNTI2MThkMzZhYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpA
QCAtMTAwNDAsMTAgKzEwMDQwLDYgQEAKIAkJNzE1QUQ3MUQyMDUwNTEyNDAwRDU5MkRDIC8qIERl
Y2xhcmF0aXZlQW5pbWF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERl
Y2xhcmF0aXZlQW5pbWF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTcxNUFE
NzFGMjA1MDUxMjQwMEQ1OTJEQyAvKiBEZWNsYXJhdGl2ZUFuaW1hdGlvbi5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEZWNsYXJhdGl2ZUFuaW1hdGlvbi5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTcxNURBNUQzMjAxQkI5MDIwMDJFRjJCMCAvKiBK
U1dlYkFuaW1hdGlvbkN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBKU1dlYkFuaW1hdGlvbkN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
Ci0JCTcxNkM4REYxMUU0OEIyNjkwMDVCRDBEQSAvKiB2b2x1bWUtZG93bi1zdXBwb3J0LmpzICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gInZvbHVtZS1kb3duLXN1cHBv
cnQuanMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk3MTZDOERGMjFFNDhCMjY5MDA1
QkQwREEgLyogdm9sdW1lLXVwLXN1cHBvcnQuanMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFz
Y3JpcHQ7IHBhdGggPSAidm9sdW1lLXVwLXN1cHBvcnQuanMiOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwotCQk3MTZDOERGMzFFNDhCMjg0MDA1QkQwREEgLyogdm9sdW1lLWRvd24tYnV0dG9u
LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gInZvbHVtZS1kb3du
LWJ1dHRvbi5qcyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTcxNkM4REY0MUU0OEIy
ODQwMDVCRDBEQSAvKiB2b2x1bWUtdXAtYnV0dG9uLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5q
YXZhc2NyaXB0OyBwYXRoID0gInZvbHVtZS11cC1idXR0b24uanMiOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk3MTZGQTBEODFEQjI2NTkxMDA3MzIzQ0MgLyogYWlycGxheS1idXR0b24u
Y3NzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dC5jc3M7IHBhdGggPSAiYWlycGxheS1idXR0b24uY3NzIjsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNzE2RkEwRDkxREIyNjU5MTAwNzMyM0NDIC8qIGFp
cnBsYXktYnV0dG9uLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0g
ImFpcnBsYXktYnV0dG9uLmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNzE2RkEw
REExREIyNjU5MTAwNzMyM0NDIC8qIGFpcnBsYXktcGxhY2FyZC5qcyAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9ICJhaXJwbGF5LXBsYWNhcmQuanMiOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtMTE3NzAsNiArMTE3NjYsOCBAQAogCQk5NEU4Mzk1MDFERkIy
OUE0MDA3QkM2QTcgLyogQ1NTTmFtZXNwYWNlUnVsZS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRo
ID0gQ1NTTmFtZXNwYWNlUnVsZS5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk0
RTgzOTUzMURGQjJCQTYwMDdCQzZBNyAvKiBKU0NTU05hbWVzcGFjZVJ1bGUuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNDU1NOYW1lc3BhY2VSdWxlLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTRFODM5NTQxREZCMkJBNjAwN0JDNkE3IC8qIEpT
Q1NTTmFtZXNwYWNlUnVsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0NT
U05hbWVzcGFjZVJ1bGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTUwQzQ4NDky
NUQ2Nzc0MjAwQUIzRDlDIC8qIG92ZXJmbG93LXN1cHBvcnQuanMgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBh
dGggPSAib3ZlcmZsb3ctc3VwcG9ydC5qcyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTk1MEM0ODRCMjVENjc3NEUwMEFCM0Q5QyAvKiBvdmVyZmxvdy1idXR0b24uanMgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFz
Y3JpcHQ7IHBhdGggPSAib3ZlcmZsb3ctYnV0dG9uLmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJOTUwQzRDMDJCRUQ4OTM2RjgxOEUyRjk5IC8qIEpTU1ZHR3JhcGhpY3NFbGVtZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1NWR0dyYXBoaWNzRWxlbWVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5NTIwNzYwMDFGMjY3NUY5MDA3RDJB
QUIgLyogQ2FsbFRyYWNlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDYWxsVHJhY2VyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTUyMDc2MDExRjI2NzVGOTAwN0QyQUFCIC8q
IENhbGxUcmFjZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ2FsbFRyYWNlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwpAQCAtMjI1NzIsNiArMjI1NzAsNyBAQAogCQkJCTcxNkZBMEVBMURCMjY1
OTEwMDczMjNDQyAvKiBtZWRpYS1jb250cm9scy5jc3MgKi8sCiAJCQkJNzE2RkEwRUIxREIyNjU5
MTAwNzMyM0NDIC8qIG1lZGlhLWNvbnRyb2xzLmpzICovLAogCQkJCTcxNkZBMEVDMURCMjY1OTEw
MDczMjNDQyAvKiBtdXRlLWJ1dHRvbi5qcyAqLywKKwkJCQk5NTBDNDg0QjI1RDY3NzRFMDBBQjNE
OUMgLyogb3ZlcmZsb3ctYnV0dG9uLmpzICovLAogCQkJCTcxNkZBMEVEMURCMjY1OTEwMDczMjND
QyAvKiBwaXAtYnV0dG9uLmpzICovLAogCQkJCTcxNkZBMEVFMURCMjY1OTEwMDczMjNDQyAvKiBw
aXAtcGxhY2FyZC5qcyAqLywKIAkJCQk3MTZGQTBFRjFEQjI2NTkxMDA3MzIzQ0MgLyogcGxhY2Fy
ZC5jc3MgKi8sCkBAIC0yMjU5Miw4ICsyMjU5MSw2IEBACiAJCQkJNzE2RkEwRkUxREIyNjU5MTAw
NzMyM0NDIC8qIHRyYWNrcy1idXR0b24uanMgKi8sCiAJCQkJNzE0NkRGOEIxREVGQzJFRDAwNDZG
OThCIC8qIHRyYWNrcy1wYW5lbC5jc3MgKi8sCiAJCQkJNzE0NkRGOEMxREVGQzJFRDAwNDZGOThC
IC8qIHRyYWNrcy1wYW5lbC5qcyAqLywKLQkJCQk3MTZDOERGMzFFNDhCMjg0MDA1QkQwREEgLyog
dm9sdW1lLWRvd24tYnV0dG9uLmpzICovLAotCQkJCTcxNkM4REY0MUU0OEIyODQwMDVCRDBEQSAv
KiB2b2x1bWUtdXAtYnV0dG9uLmpzICovLAogCQkJKTsKIAkJCW5hbWUgPSBjb250cm9sczsKIAkJ
CXBhdGggPSAiTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMiOwpAQCAtMjI2
MDgsNiArMjI2MDUsNyBAQAogCQkJCTcxNzdFMjQ2MURCODBEMkYwMDkxOUEwQiAvKiBtZWRpYS1j
b250cm9sbGVyLXN1cHBvcnQuanMgKi8sCiAJCQkJNzFEMDJEOTIxREI1NUM0RTAwREQ1Q0Y1IC8q
IG1lZGlhLWNvbnRyb2xsZXIuanMgKi8sCiAJCQkJNzE3N0UyNDcxREI4MEQyRjAwOTE5QTBCIC8q
IG11dGUtc3VwcG9ydC5qcyAqLywKKwkJCQk5NTBDNDg0OTI1RDY3NzQyMDBBQjNEOUMgLyogb3Zl
cmZsb3ctc3VwcG9ydC5qcyAqLywKIAkJCQk3MTMwMTQxRDFEQzlDMDg2MDBDQTNBODggLyogcGlw
LXN1cHBvcnQuanMgKi8sCiAJCQkJNzExRkIwNzUxREM3Njg4RjAwQzRDNzA4IC8qIHBsYWNhcmQt
c3VwcG9ydC5qcyAqLywKIAkJCQk3MTAwNEI5RDFEQzEzOTg4MDBBNTJBMzggLyogcGxheWJhY2st
c3VwcG9ydC5qcyAqLywKQEAgLTIyNjE5LDkgKzIyNjE3LDcgQEAKIAkJCQk3MTc3RTI0ODFEQjgw
RDJGMDA5MTlBMEIgLyogc3RhcnQtc3VwcG9ydC5qcyAqLywKIAkJCQk3MUIwNDYwQTFERDNDMkVF
MDBFRTE5Q0YgLyogc3RhdHVzLXN1cHBvcnQuanMgKi8sCiAJCQkJNzFGOTM2RjcxREQ0Rjk5QjAw
OTIyQ0M3IC8qIHRyYWNrcy1zdXBwb3J0LmpzICovLAotCQkJCTcxNkM4REYxMUU0OEIyNjkwMDVC
RDBEQSAvKiB2b2x1bWUtZG93bi1zdXBwb3J0LmpzICovLAogCQkJCTcxN0Y5MDU3MURDNDBFRDYw
MDA2RjUyMCAvKiB2b2x1bWUtc3VwcG9ydC5qcyAqLywKLQkJCQk3MTZDOERGMjFFNDhCMjY5MDA1
QkQwREEgLyogdm9sdW1lLXVwLXN1cHBvcnQuanMgKi8sCiAJCQkpOwogCQkJcGF0aCA9IG1lZGlh
OwogCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2VuLmxwcm9qL21vZGVybi1tZWRpYS1jb250cm9scy1sb2NhbGl6ZWQtc3RyaW5ncy5qcyBiL1Nv
dXJjZS9XZWJDb3JlL2VuLmxwcm9qL21vZGVybi1tZWRpYS1jb250cm9scy1sb2NhbGl6ZWQtc3Ry
aW5ncy5qcwppbmRleCA5MWM4NTQ0MmM2MzhiYTg0NWUzZDkxN2NlYmI4MGMyMGNjNDhmZGM1Li4y
ODkwY2U0MGI1MzdlM2Y2NWIxZDdlOGViN2M1MmQ0NDc5NDVjNjNhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9lbi5scHJvai9tb2Rlcm4tbWVkaWEtY29udHJvbHMtbG9jYWxpemVkLXN0cmlu
Z3MuanMKKysrIGIvU291cmNlL1dlYkNvcmUvZW4ubHByb2ovbW9kZXJuLW1lZGlhLWNvbnRyb2xz
LWxvY2FsaXplZC1zdHJpbmdzLmpzCkBAIC0xMyw2ICsxMyw3IEBAIGNvbnN0IFVJU3RyaW5ncyA9
IHsKICAgICAiSW52YWxpZCI6ICJJbnZhbGlkIiwKICAgICAiTGl2ZSBCcm9hZGNhc3QiOiAiTGl2
ZSBCcm9hZGNhc3QiLAogICAgICJNZWRpYSBTZWxlY3Rpb24iOiAiTWVkaWEgU2VsZWN0aW9uIiwK
KyAgICAiTW9yZS4uLiI6ICJNb3JlLi4uIiwKICAgICAiTXV0ZSI6ICJNdXRlIiwKICAgICAiUGF1
c2UiOiAiUGF1c2UiLAogICAgICJQaWN0dXJlIGluIFBpY3R1cmUiOiAiUGljdHVyZSBpbiBQaWN0
dXJlIiwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUlP
Uy5tbSBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbQppbmRleCAw
ZGJjNjhiMmU1MjE0ZDY0ZmU5MWU2Yzg4Y2MwYWJhMjVkYjlhZWRhLi40Y2RlMTM1NDJjNDZhYTI2
ZWNjNDVjY2E4ZGRkMTcyMmJlMjQxYjBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyVGhlbWVJT1MubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlclRoZW1lSU9TLm1tCkBAIC0xMDAsNiArMTAwLDEwIEBAIEBlbmQKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCisjaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKKyNpbmNsdWRlIDxXZWJLaXRB
ZGRpdGlvbnMvUmVuZGVyVGhlbWVJT1NBZGRpdGlvbnMuY3BwPgorI2VuZGlmCisKIHVzaW5nIG5h
bWVzcGFjZSBIVE1MTmFtZXM7CiAKIGNvbnN0IGZsb2F0IENvbnRyb2xCYXNlSGVpZ2h0ID0gMjA7
CkBAIC0xMjkxLDkgKzEyOTUsMTIgQEAgU3RyaW5nIFJlbmRlclRoZW1lSU9TOjptZWRpYUNvbnRy
b2xzU2NyaXB0KCkKICAgICAgICAgICAgIE5TQnVuZGxlICpidW5kbGUgPSBbTlNCdW5kbGUgYnVu
ZGxlRm9yQ2xhc3M6W1dlYkNvcmVSZW5kZXJUaGVtZUJ1bmRsZSBjbGFzc11dOwogCiAgICAgICAg
ICAgICBTdHJpbmdCdWlsZGVyIHNjcmlwdEJ1aWxkZXI7Ci0gICAgICAgICAgICBzY3JpcHRCdWls
ZGVyLmFwcGVuZCgid2luZG93LmlzSU9TRmFtaWx5ID0gdHJ1ZTsiKTsKKyAgICAgICAgICAgIHNj
cmlwdEJ1aWxkZXIuYXBwZW5kKCJ3aW5kb3cuaXNJT1NGYW1pbHkgPSB0cnVlO1xuIik7CiAgICAg
ICAgICAgICBzY3JpcHRCdWlsZGVyLmFwcGVuZChbTlNTdHJpbmcgc3RyaW5nV2l0aENvbnRlbnRz
T2ZGaWxlOltidW5kbGUgcGF0aEZvclJlc291cmNlOkAibW9kZXJuLW1lZGlhLWNvbnRyb2xzLWxv
Y2FsaXplZC1zdHJpbmdzIiBvZlR5cGU6QCJqcyJdIGVuY29kaW5nOk5TVVRGOFN0cmluZ0VuY29k
aW5nIGVycm9yOm5pbF0pOwogICAgICAgICAgICAgc2NyaXB0QnVpbGRlci5hcHBlbmQoW05TU3Ry
aW5nIHN0cmluZ1dpdGhDb250ZW50c09mRmlsZTpbYnVuZGxlIHBhdGhGb3JSZXNvdXJjZTpAIm1v
ZGVybi1tZWRpYS1jb250cm9scyIgb2ZUeXBlOkAianMiIGluRGlyZWN0b3J5OkAibW9kZXJuLW1l
ZGlhLWNvbnRyb2xzIl0gZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2RpbmcgZXJyb3I6bmlsXSk7
CisjaWYgZGVmaW5lZChSZW5kZXJUaGVtZUlPU0FkZGl0aW9uc19tZWRpYUNvbnRyb2xzU2NyaXB0
KQorICAgICAgICAgICAgUmVuZGVyVGhlbWVJT1NBZGRpdGlvbnNfbWVkaWFDb250cm9sc1Njcmlw
dAorI2VuZGlmCiAgICAgICAgICAgICBtX21lZGlhQ29udHJvbHNTY3JpcHQgPSBzY3JpcHRCdWls
ZGVyLnRvU3RyaW5nKCk7CiAgICAgICAgIH0KICAgICAgICAgcmV0dXJuIG1fbWVkaWFDb250cm9s
c1NjcmlwdDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwppbmRleCBiNjIwYTk2ZTZlYjcyM2NmYzU5NDY5ZGUzYTkyN2EzM2RkYjlmODdi
Li44NTIzMTRkNzk2MDJjYWNjOTBhZjk2MWZjNzhjNGFhMDI5YjI1N2UxIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTggQEAKKzIwMjEtMDItMTYgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgor
CisgICAgICAgIFtpT1NdIEFkZCBhbiBvdmVyZmxvdyBidXR0b24gdGhhdCdzIHNob3duIHdoZW4g
Y29udHJvbHMgYXJlIGRyb3BwZWQgc28gdGhhdCBpdCdzIHN0aWxsIHBvc3NpYmxlIHRvIHRyaWdn
ZXIgdGhlIGRyb3BwZWQgYnV0dG9uJ3MgYWN0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxOTM3CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8y
MDk2ODA3OD4KKworICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxzb24uCisKKyAgICAgICAg
KiBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvYXVkaW8vYXVkaW8tY29udHJvbHMtYnV0dG9u
cy5odG1sOgorICAgICAgICAqIG1lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9hdWRpby9hdWRp
by1jb250cm9scy1idXR0b25zLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBtZWRpYS9tb2Rlcm4t
bWVkaWEtY29udHJvbHMvaW9zLWlubGluZS1tZWRpYS1jb250cm9scy9pb3MtaW5saW5lLW1lZGlh
LWNvbnRyb2xzLWxheW91dC5odG1sOgorICAgICAgICAqIG1lZGlhL21vZGVybi1tZWRpYS1jb250
cm9scy9pb3MtaW5saW5lLW1lZGlhLWNvbnRyb2xzL2lvcy1pbmxpbmUtbWVkaWEtY29udHJvbHMt
bGF5b3V0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJv
bHMvbWFjb3MtaW5saW5lLW1lZGlhLWNvbnRyb2xzL21hY29zLWlubGluZS1tZWRpYS1jb250cm9s
cy1sYXlvdXQuaHRtbDoKKyAgICAgICAgKiBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFj
b3MtaW5saW5lLW1lZGlhLWNvbnRyb2xzL21hY29zLWlubGluZS1tZWRpYS1jb250cm9scy1sYXlv
dXQtZXhwZWN0ZWQudHh0OgorCiAyMDIxLTAyLTE2ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJr
aXQub3JnPgogCiAgICAgICAgIEV2ZW50SGFuZGxlcjo6dXBkYXRlU2VsZWN0aW9uRm9yTW91c2VE
b3duRGlzcGF0Y2hpbmdTZWxlY3RTdGFydCBzaG91bGQgbm90IHVzZSBhbiBvcnBoYW5lZCBzZWxl
Y3Rpb24KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9s
cy9hdWRpby9hdWRpby1jb250cm9scy1idXR0b25zLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9hdWRpby9hdWRpby1jb250cm9scy1idXR0b25z
LWV4cGVjdGVkLnR4dAppbmRleCAwMjRlY2EwNTM1ODk1OWJiNGQyYmZiNmYyNGU5YjMxNDI0YWY2
MDkzLi40NjQ4Mzg1OTU0YmFhYTI4ZGE1YWM1NmQ4NTdmZGI0YWNhMmUyMGMxIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvYXVkaW8vYXVkaW8tY29u
dHJvbHMtYnV0dG9ucy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJu
LW1lZGlhLWNvbnRyb2xzL2F1ZGlvL2F1ZGlvLWNvbnRyb2xzLWJ1dHRvbnMtZXhwZWN0ZWQudHh0
CkBAIC01LDcgKzUsNyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
U1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURQogCiBNYWtpbmcgQWlyUGxh
eSByb3V0ZXMgYXZhaWxhYmxlLgogQWlyUGxheSByb3V0ZXMgYmVjYW1lIGF2YWlsYWJsZS4KLVBB
U1MgbWVkaWFDb250cm9sbGVyLmNvbnRyb2xzLnJpZ2h0Q29udGFpbmVyLmNoaWxkcmVuLmxlbmd0
aCBpcyAyCitQQVNTIG1lZGlhQ29udHJvbGxlci5jb250cm9scy5yaWdodENvbnRhaW5lci5jaGls
ZHJlbi5sZW5ndGggaXMgMwogUEFTUyBtZWRpYUNvbnRyb2xsZXIuY29udHJvbHMucmlnaHRDb250
YWluZXIuY2hpbGRyZW5bMF0gaXMgbWVkaWFDb250cm9sbGVyLmNvbnRyb2xzLm11dGVCdXR0b24K
IFBBU1MgbWVkaWFDb250cm9sbGVyLmNvbnRyb2xzLnJpZ2h0Q29udGFpbmVyLmNoaWxkcmVuWzFd
IGlzIG1lZGlhQ29udHJvbGxlci5jb250cm9scy5haXJwbGF5QnV0dG9uCiBQQVNTIGFjY2Vzc2li
aWxpdHlDb250cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZCgnYXVkaW8tY29udHJvbHMnKS5k
ZXNjcmlwdGlvbiBpcyAiQVhEZXNjcmlwdGlvbjogQXVkaW8gQ29udHJvbHMiCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvYXVkaW8vYXVkaW8tY29u
dHJvbHMtYnV0dG9ucy5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRy
b2xzL2F1ZGlvL2F1ZGlvLWNvbnRyb2xzLWJ1dHRvbnMuaHRtbAppbmRleCAwNjFlZTBiMTVmYWEz
YjM1ZjU3MmMyZGZiOTg2OTViOGEwNjFkMDJjLi5kYzk4MDQzMzNkNzZlZTUwZmU0ZWE2ODg3YzE1
ZWEyZmYzY2VlMDViIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS9tb2Rlcm4tbWVkaWEt
Y29udHJvbHMvYXVkaW8vYXVkaW8tY29udHJvbHMtYnV0dG9ucy5odG1sCisrKyBiL0xheW91dFRl
c3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9hdWRpby9hdWRpby1jb250cm9scy1idXR0
b25zLmh0bWwKQEAgLTQyLDcgKzQyLDcgQEAgZnVuY3Rpb24gcGxheWJhY2tUYXJnZXRBdmFpbGFi
aWxpdHlDaGFuZ2VkQWdhaW4oZXZlbnQpCiAgICAgZGVidWcoIkFpclBsYXkgcm91dGVzIGJlY2Ft
ZSBhdmFpbGFibGUuIik7CiAgICAgbWVkaWEucmVtb3ZlRXZlbnRMaXN0ZW5lcignd2Via2l0cGxh
eWJhY2t0YXJnZXRhdmFpbGFiaWxpdHljaGFuZ2VkJywgcGxheWJhY2tUYXJnZXRBdmFpbGFiaWxp
dHlDaGFuZ2VkQWdhaW4sIHRydWUpOwogCi0gICAgc2hvdWxkQmUoIm1lZGlhQ29udHJvbGxlci5j
b250cm9scy5yaWdodENvbnRhaW5lci5jaGlsZHJlbi5sZW5ndGgiLCAiMiIpOworICAgIHNob3Vs
ZEJlKCJtZWRpYUNvbnRyb2xsZXIuY29udHJvbHMucmlnaHRDb250YWluZXIuY2hpbGRyZW4ubGVu
Z3RoIiwgIjMiKTsKICAgICBzaG91bGRCZSgibWVkaWFDb250cm9sbGVyLmNvbnRyb2xzLnJpZ2h0
Q29udGFpbmVyLmNoaWxkcmVuWzBdIiwgIm1lZGlhQ29udHJvbGxlci5jb250cm9scy5tdXRlQnV0
dG9uIik7CiAgICAgc2hvdWxkQmUoIm1lZGlhQ29udHJvbGxlci5jb250cm9scy5yaWdodENvbnRh
aW5lci5jaGlsZHJlblsxXSIsICJtZWRpYUNvbnRyb2xsZXIuY29udHJvbHMuYWlycGxheUJ1dHRv
biIpOwogICAgIG1lZGlhQ29udHJvbGxlci5jb250cm9scy5ib3R0b21Db250cm9sc0Jhci5lbGVt
ZW50LnNldEF0dHJpYnV0ZSgiaWQiLCAiYXVkaW8tY29udHJvbHMiKTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9pb3MtaW5saW5lLW1lZGlhLWNv
bnRyb2xzL2lvcy1pbmxpbmUtbWVkaWEtY29udHJvbHMtbGF5b3V0LWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9pb3MtaW5saW5lLW1lZGlhLWNv
bnRyb2xzL2lvcy1pbmxpbmUtbWVkaWEtY29udHJvbHMtbGF5b3V0LWV4cGVjdGVkLnR4dAppbmRl
eCAzNWMyZTg0Y2Y4MDBmNTQ5OWMxNjJiNWVhNmU3ODZjY2Y3MmFjNGQ1Li45YjZkYzgyYjYyNGZl
YWJlYzkyMzc5OWFlOTkyNTQ2ZTBiODc3N2VkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRp
YS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvaW9zLWlubGluZS1tZWRpYS1jb250cm9scy9pb3MtaW5s
aW5lLW1lZGlhLWNvbnRyb2xzLWxheW91dC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
bWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2lvcy1pbmxpbmUtbWVkaWEtY29udHJvbHMvaW9z
LWlubGluZS1tZWRpYS1jb250cm9scy1sYXlvdXQtZXhwZWN0ZWQudHh0CkBAIC0yNiw3ICsyNiw3
IEBAIFBBU1MgbWVkaWFDb250cm9scy50aW1lQ29udHJvbC5jaGlsZHJlbi5sZW5ndGggaXMgMwog
UEFTUyBtZWRpYUNvbnRyb2xzLnRpbWVDb250cm9sLmNoaWxkcmVuWzBdIGlzIG1lZGlhQ29udHJv
bHMudGltZUNvbnRyb2wuZWxhcHNlZFRpbWVMYWJlbAogUEFTUyBtZWRpYUNvbnRyb2xzLnRpbWVD
b250cm9sLmNoaWxkcmVuWzFdIGlzIG1lZGlhQ29udHJvbHMudGltZUNvbnRyb2wuc2NydWJiZXIK
IFBBU1MgbWVkaWFDb250cm9scy50aW1lQ29udHJvbC5jaGlsZHJlblsyXSBpcyBtZWRpYUNvbnRy
b2xzLnRpbWVDb250cm9sLnJlbWFpbmluZ1RpbWVMYWJlbAotUEFTUyBtZWRpYUNvbnRyb2xzLnJp
Z2h0Q29udGFpbmVyLmNoaWxkcmVuLmxlbmd0aCBpcyAyCitQQVNTIG1lZGlhQ29udHJvbHMucmln
aHRDb250YWluZXIuY2hpbGRyZW4ubGVuZ3RoIGlzIDMKIFBBU1MgbWVkaWFDb250cm9scy5yaWdo
dENvbnRhaW5lci5jaGlsZHJlblswXSBpcyBtZWRpYUNvbnRyb2xzLmFpcnBsYXlCdXR0b24KIFBB
U1MgbWVkaWFDb250cm9scy5yaWdodENvbnRhaW5lci5jaGlsZHJlblsxXSBpcyBtZWRpYUNvbnRy
b2xzLnRyYWNrc0J1dHRvbgogUEFTUyBtZWRpYUNvbnRyb2xzLnRvcFJpZ2h0Q29udHJvbHNCYXIu
Y2hpbGRyZW4ubGVuZ3RoIGlzIDIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21vZGVy
bi1tZWRpYS1jb250cm9scy9pb3MtaW5saW5lLW1lZGlhLWNvbnRyb2xzL2lvcy1pbmxpbmUtbWVk
aWEtY29udHJvbHMtbGF5b3V0Lmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS9tb2Rlcm4tbWVkaWEt
Y29udHJvbHMvaW9zLWlubGluZS1tZWRpYS1jb250cm9scy9pb3MtaW5saW5lLW1lZGlhLWNvbnRy
b2xzLWxheW91dC5odG1sCmluZGV4IDUyZDYwNmI1ZTE4NTNmYWQxZGYzYTY1MTVmYzdhYzJkNDEw
MTJiNmUuLjIxMjIyNDZiNWJiODQ1YzE5ZmE2MzMwMDRlZjNkZTI3NWU5ZjhmOWQgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9pb3MtaW5saW5lLW1l
ZGlhLWNvbnRyb2xzL2lvcy1pbmxpbmUtbWVkaWEtY29udHJvbHMtbGF5b3V0Lmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2lvcy1pbmxpbmUtbWVkaWEt
Y29udHJvbHMvaW9zLWlubGluZS1tZWRpYS1jb250cm9scy1sYXlvdXQuaHRtbApAQCAtNTEsNyAr
NTEsNyBAQCBzY2hlZHVsZXIuZnJhbWVEaWRGaXJlID0gZnVuY3Rpb24oKQogICAgIHNob3VsZEJl
KCJtZWRpYUNvbnRyb2xzLnRpbWVDb250cm9sLmNoaWxkcmVuWzFdIiwgIm1lZGlhQ29udHJvbHMu
dGltZUNvbnRyb2wuc2NydWJiZXIiKTsKICAgICBzaG91bGRCZSgibWVkaWFDb250cm9scy50aW1l
Q29udHJvbC5jaGlsZHJlblsyXSIsICJtZWRpYUNvbnRyb2xzLnRpbWVDb250cm9sLnJlbWFpbmlu
Z1RpbWVMYWJlbCIpOwogCi0gICAgc2hvdWxkQmUoIm1lZGlhQ29udHJvbHMucmlnaHRDb250YWlu
ZXIuY2hpbGRyZW4ubGVuZ3RoIiwgIjIiKTsKKyAgICBzaG91bGRCZSgibWVkaWFDb250cm9scy5y
aWdodENvbnRhaW5lci5jaGlsZHJlbi5sZW5ndGgiLCAiMyIpOwogICAgIHNob3VsZEJlKCJtZWRp
YUNvbnRyb2xzLnJpZ2h0Q29udGFpbmVyLmNoaWxkcmVuWzBdIiwgIm1lZGlhQ29udHJvbHMuYWly
cGxheUJ1dHRvbiIpOwogICAgIHNob3VsZEJlKCJtZWRpYUNvbnRyb2xzLnJpZ2h0Q29udGFpbmVy
LmNoaWxkcmVuWzFdIiwgIm1lZGlhQ29udHJvbHMudHJhY2tzQnV0dG9uIik7CiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tYWNvcy1pbmxpbmUt
bWVkaWEtY29udHJvbHMvbWFjb3MtaW5saW5lLW1lZGlhLWNvbnRyb2xzLWxheW91dC1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3MtaW5s
aW5lLW1lZGlhLWNvbnRyb2xzL21hY29zLWlubGluZS1tZWRpYS1jb250cm9scy1sYXlvdXQtZXhw
ZWN0ZWQudHh0CmluZGV4IDkxNGFiNzJiYzg5ZjM1MjNmOGFhYzliNTQ4MzRhYWU5MTkzYWEwMDcu
LjkzZGIxNDQyZmZlNGFlMjIyMjE0MzgwOGIzNzI0NWY3M2Y5ZWQwOTcgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL21lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tYWNvcy1pbmxpbmUtbWVkaWEt
Y29udHJvbHMvbWFjb3MtaW5saW5lLW1lZGlhLWNvbnRyb2xzLWxheW91dC1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21hY29zLWlubGlu
ZS1tZWRpYS1jb250cm9scy9tYWNvcy1pbmxpbmUtbWVkaWEtY29udHJvbHMtbGF5b3V0LWV4cGVj
dGVkLnR4dApAQCAtMjUsNyArMjUsNyBAQCBQQVNTIG1lZGlhQ29udHJvbHMudGltZUNvbnRyb2wu
Y2hpbGRyZW4ubGVuZ3RoIGlzIDMKIFBBU1MgbWVkaWFDb250cm9scy50aW1lQ29udHJvbC5jaGls
ZHJlblswXSBpcyBtZWRpYUNvbnRyb2xzLnRpbWVDb250cm9sLmVsYXBzZWRUaW1lTGFiZWwKIFBB
U1MgbWVkaWFDb250cm9scy50aW1lQ29udHJvbC5jaGlsZHJlblsxXSBpcyBtZWRpYUNvbnRyb2xz
LnRpbWVDb250cm9sLnNjcnViYmVyCiBQQVNTIG1lZGlhQ29udHJvbHMudGltZUNvbnRyb2wuY2hp
bGRyZW5bMl0gaXMgbWVkaWFDb250cm9scy50aW1lQ29udHJvbC5kdXJhdGlvblRpbWVMYWJlbAot
UEFTUyBtZWRpYUNvbnRyb2xzLnJpZ2h0Q29udGFpbmVyLmNoaWxkcmVuLmxlbmd0aCBpcyAzCitQ
QVNTIG1lZGlhQ29udHJvbHMucmlnaHRDb250YWluZXIuY2hpbGRyZW4ubGVuZ3RoIGlzIDQKIFBB
U1MgbWVkaWFDb250cm9scy5yaWdodENvbnRhaW5lci5jaGlsZHJlblswXSBpcyBtZWRpYUNvbnRy
b2xzLm11dGVCdXR0b24KIFBBU1MgbWVkaWFDb250cm9scy5yaWdodENvbnRhaW5lci5jaGlsZHJl
blsxXSBpcyBtZWRpYUNvbnRyb2xzLmFpcnBsYXlCdXR0b24KIFBBU1MgbWVkaWFDb250cm9scy5y
aWdodENvbnRhaW5lci5jaGlsZHJlblsyXSBpcyBtZWRpYUNvbnRyb2xzLnRyYWNrc0J1dHRvbgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21hY29z
LWlubGluZS1tZWRpYS1jb250cm9scy9tYWNvcy1pbmxpbmUtbWVkaWEtY29udHJvbHMtbGF5b3V0
Lmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3MtaW5s
aW5lLW1lZGlhLWNvbnRyb2xzL21hY29zLWlubGluZS1tZWRpYS1jb250cm9scy1sYXlvdXQuaHRt
bAppbmRleCAyNTM1YjU5OWMwODVhOWFhY2RlYjBiOWMyZGEzNjJkOGNmNzBjYjhkLi5jODhmYTYw
NjY4OGQ2MGM4MjY2OTEyYjlhNjY2MzFhOWIwNjZjNGY1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3MtaW5saW5lLW1lZGlhLWNvbnRyb2xz
L21hY29zLWlubGluZS1tZWRpYS1jb250cm9scy1sYXlvdXQuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy9tZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3MtaW5saW5lLW1lZGlhLWNvbnRyb2xz
L21hY29zLWlubGluZS1tZWRpYS1jb250cm9scy1sYXlvdXQuaHRtbApAQCAtNTIsNyArNTIsNyBA
QCBzY2hlZHVsZXIuZnJhbWVEaWRGaXJlID0gZnVuY3Rpb24oKQogICAgIHNob3VsZEJlKCJtZWRp
YUNvbnRyb2xzLnRpbWVDb250cm9sLmNoaWxkcmVuWzFdIiwgIm1lZGlhQ29udHJvbHMudGltZUNv
bnRyb2wuc2NydWJiZXIiKTsKICAgICBzaG91bGRCZSgibWVkaWFDb250cm9scy50aW1lQ29udHJv
bC5jaGlsZHJlblsyXSIsICJtZWRpYUNvbnRyb2xzLnRpbWVDb250cm9sLmR1cmF0aW9uVGltZUxh
YmVsIik7CiAKLSAgICBzaG91bGRCZSgibWVkaWFDb250cm9scy5yaWdodENvbnRhaW5lci5jaGls
ZHJlbi5sZW5ndGgiLCAiMyIpOworICAgIHNob3VsZEJlKCJtZWRpYUNvbnRyb2xzLnJpZ2h0Q29u
dGFpbmVyLmNoaWxkcmVuLmxlbmd0aCIsICI0Iik7CiAgICAgc2hvdWxkQmUoIm1lZGlhQ29udHJv
bHMucmlnaHRDb250YWluZXIuY2hpbGRyZW5bMF0iLCAibWVkaWFDb250cm9scy5tdXRlQnV0dG9u
Iik7CiAgICAgc2hvdWxkQmUoIm1lZGlhQ29udHJvbHMucmlnaHRDb250YWluZXIuY2hpbGRyZW5b
MV0iLCAibWVkaWFDb250cm9scy5haXJwbGF5QnV0dG9uIik7CiAgICAgc2hvdWxkQmUoIm1lZGlh
Q29udHJvbHMucmlnaHRDb250YWluZXIuY2hpbGRyZW5bMl0iLCAibWVkaWFDb250cm9scy50cmFj
a3NCdXR0b24iKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>