<?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>231203</bug_id>
          
          <creation_ts>2021-10-04 18:06:30 -0700</creation_ts>
          <short_desc>Add support for &apos;-webkit-appearance: auto&apos;</short_desc>
          <delta_ts>2021-10-08 18:39:43 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>CSS</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>231383</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Aditya Keerthi">akeerthi</reporter>
          <assigned_to name="Aditya Keerthi">akeerthi</assigned_to>
          <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>joepeck</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>mifenton</cc>
    
    <cc>pdr</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1800327</commentid>
    <comment_count>0</comment_count>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2021-10-04 18:06:30 -0700</bug_when>
    <thetext>https://www.w3.org/TR/css-ui-4/#valdef-appearance-auto</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800329</commentid>
    <comment_count>1</comment_count>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2021-10-04 18:06:42 -0700</bug_when>
    <thetext>rdar://83696133</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800331</commentid>
    <comment_count>2</comment_count>
      <attachid>440134</attachid>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2021-10-04 18:10:36 -0700</bug_when>
    <thetext>Created attachment 440134
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800349</commentid>
    <comment_count>3</comment_count>
      <attachid>440143</attachid>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2021-10-04 18:53:39 -0700</bug_when>
    <thetext>Created attachment 440143
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1800700</commentid>
    <comment_count>4</comment_count>
      <attachid>440245</attachid>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2021-10-05 12:16:37 -0700</bug_when>
    <thetext>Created attachment 440245
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801707</commentid>
    <comment_count>5</comment_count>
      <attachid>440522</attachid>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2021-10-07 12:15:31 -0700</bug_when>
    <thetext>Created attachment 440522
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802248</commentid>
    <comment_count>6</comment_count>
      <attachid>440522</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-10-08 14:24:54 -0700</bug_when>
    <thetext>Comment on attachment 440522
Patch

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

&gt; Source/WebCore/rendering/RenderTheme.cpp:294
&gt; +    auto&amp; element = *elementPtr;

Nit - I think current guidelines (https://lists.webkit.org/pipermail/webkit-dev/2020-September/031386.html) recommend storing this as a `Ref` instead of a raw reference.

&gt; Source/WebCore/rendering/RenderTheme.cpp:300
&gt; +            return PushButtonPart;

Just as an aside — we should consider making these strongly typed `enum class` at some point.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802272</commentid>
    <comment_count>7</comment_count>
      <attachid>440680</attachid>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2021-10-08 15:08:24 -0700</bug_when>
    <thetext>Created attachment 440680
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802274</commentid>
    <comment_count>8</comment_count>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2021-10-08 15:10:58 -0700</bug_when>
    <thetext>(In reply to Wenson Hsieh from comment #6)
&gt; Comment on attachment 440522 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=440522&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/rendering/RenderTheme.cpp:294
&gt; &gt; +    auto&amp; element = *elementPtr;
&gt; 
&gt; Nit - I think current guidelines
&gt; (https://lists.webkit.org/pipermail/webkit-dev/2020-September/031386.html)
&gt; recommend storing this as a `Ref` instead of a raw reference.

Done.
 
&gt; &gt; Source/WebCore/rendering/RenderTheme.cpp:300
&gt; &gt; +            return PushButtonPart;
&gt; 
&gt; Just as an aside — we should consider making these strongly typed `enum
&gt; class` at some point.

Filed https://bugs.webkit.org/show_bug.cgi?id=231457 to do this cleanup.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802275</commentid>
    <comment_count>9</comment_count>
      <attachid>440681</attachid>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2021-10-08 15:13:11 -0700</bug_when>
    <thetext>Created attachment 440681
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802347</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-10-08 18:39:38 -0700</bug_when>
    <thetext>Committed r283858 (242736@main): &lt;https://commits.webkit.org/242736@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 440681.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440134</attachid>
            <date>2021-10-04 18:10:36 -0700</date>
            <delta_ts>2021-10-04 18:56:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231203-20211004181035.patch</filename>
            <type>text/plain</type>
            <size>32954</size>
            <attacher name="Aditya Keerthi">akeerthi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzNDg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDdhODhiY2UyNjc0ZjZh
YmY3NGU4NmIwMDU3NDNjYjk4Y2YxYTgwNi4uNTNlNzg0MTI0MTJhMDZkMjY5MmU2OWUyNDk4Zjc5
ZDQxNzBlODg0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDc1IEBACisyMDIxLTEwLTA0ICBBZGl0
eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgc3VwcG9ydCBm
b3IgJy13ZWJraXQtYXBwZWFyYW5jZTogYXV0bycKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTIwMworICAgICAgICByZGFyOi8vODM2OTYxMzMKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgJ2FwcGVh
cmFuY2UnIHByb3BlcnR5IGFsbG93cyBhdXRob3JzIHRvIHVzZSB0aGUgJ2F1dG8nIGtleXdvcmQK
KyAgICAgICAgdG8gb3B0IHdpZGdldHMgKGFueSBlbGVtZW50IHRoYXQgY2FuIGhhdmUgYSBuYXRp
dmUgYXBwZWFyYW5jZSkgaW50bworICAgICAgICBhIG5hdGl2ZSBhcHBlYXJhbmNlIFsxXS4gRWxl
bWVudHMgb3RoZXIgdGhhbiB3aWRnZXRzIGFyZSByZW5kZXJlZAorICAgICAgICBhcyBpZiBub25l
IGhhZCBiZWVuIHNwZWNpZmllZC4KKworICAgICAgICBTaW5jZSAnLXdlYmtpdC1hcHBlYXJhbmNl
JyBpcyBhIHBhcnNlIHRpbWUgYWxpYXMgb2YgJ2FwcGVhcmFuY2UnLAorICAgICAgICBzdXBwb3J0
ICctd2Via2l0LWFwcGVhcmFuY2U6IGF1dG8nIHByaW9yIHRvIHVucHJlZml4aW5nLgorCisgICAg
ICAgIFRoZSB1c2VkLXZhbHVlIGZvciBhcHBlYXJhbmNlIChlZmZlY3RpdmVBcHBlYXJhbmNlKSBp
cyBkZXRlcm1pbmVkIGJ5CisgICAgICAgIHRoZSBlbGVtZW50IHRhZyBhbmQgdHlwZS4gSW4gdGhl
IGNhc2Ugb2YgZWxlbWVudHMgaW4gdGhlIFVBIHNoYWRvdworICAgICAgICB0cmVlLCB0aGUgcHNl
dWRvIGlkIGlzIHVzZWQgdG8gZGV0ZXJtaW5lIHRoZSBlZmZlY3RpdmUgYXBwZWFyYW5jZS4gVGhl
CisgICAgICAgIHVzZWQtdmFsdWVzIHdoZW4gc3BlY2lmeWluZyAnYXV0bycgbWF0Y2ggdGhlIGRl
ZmF1bHQgc3BlY2lmaWVkIHZhbHVlcworICAgICAgICBpbiB0aGUgVUEgc3R5bGUgc2hlZXQuCisK
KyAgICAgICAgTm90ZSB0aGF0IGFkZGl0aW9uYWwgdGVzdCBjb3ZlcmFnZSBleGlzdHMgaW4gdGhl
IGZvcm0gb2Ygd2ViIHBsYXRmb3JtCisgICAgICAgIHdlYiBwbGF0Zm9ybSB0ZXN0cywgYW5kIGlz
IGRlcGVuZGVudCBvbiB1bnByZWZpeGluZy4KKworICAgICAgICBbMV0gaHR0cHM6Ly93d3cudzMu
b3JnL1RSL2Nzcy11aS00LyN2YWxkZWYtYXBwZWFyYW5jZS1hdXRvCisKKyAgICAgICAgKiBjc3Mv
Q1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0
aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ByaW1p
dGl2ZVZhbHVlOjpvcGVyYXRvciBDb250cm9sUGFydCBjb25zdCk6CisgICAgICAgICogY3NzL0NT
U1Byb3BlcnRpZXMuanNvbjoKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1BhcnNlckZhc3RQYXRo
cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXJGYXN0UGF0aHM6OmlzVmFsaWRLZXl3
b3JkUHJvcGVydHlBbmRWYWx1ZSk6CisgICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNwcDoK
KyAgICAgICAgKiBodG1sL1NlYXJjaElucHV0VHlwZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp1
cGRhdGVSZXN1bHRCdXR0b25Qc2V1ZG9UeXBlKToKKyAgICAgICAgKiBodG1sL1RleHRGaWVsZElu
cHV0VHlwZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUZXh0RmllbGRJbnB1dFR5cGU6OmNyZWF0
ZVNoYWRvd1N1YnRyZWVBbmRVcGRhdGVJbm5lclRleHRFbGVtZW50RWRpdGFiaWxpdHkpOgorICAg
ICAgICAoV2ViQ29yZTo6VGV4dEZpZWxkSW5wdXRUeXBlOjpjcmVhdGVEYXRhTGlzdERyb3Bkb3du
SW5kaWNhdG9yKToKKyAgICAgICAgKiBodG1sL1RleHRGaWVsZElucHV0VHlwZS5oOgorICAgICAg
ICAqIGh0bWwvc2hhZG93L0RhdGFMaXN0QnV0dG9uRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpEYXRhTGlzdEJ1dHRvbkVsZW1lbnQ6Omxpc3RCdXR0b25Qc2V1ZG9JZCk6CisgICAgICAg
IChXZWJDb3JlOjpEYXRhTGlzdEJ1dHRvbkVsZW1lbnQ6OmNyZWF0ZSk6CisgICAgICAgICogaHRt
bC9zaGFkb3cvRGF0YUxpc3RCdXR0b25FbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9zaGFkb3cv
U2xpZGVyVGh1bWJFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNsaWRlclRodW1iRWxl
bWVudDo6c2xpZGVyVGh1bWJQc2V1ZG9JZCk6CisgICAgICAgIChXZWJDb3JlOjpTbGlkZXJUaHVt
YkVsZW1lbnQ6Om1lZGlhU2xpZGVyVGh1bWJQc2V1ZG9JZCk6CisgICAgICAgIChXZWJDb3JlOjpT
bGlkZXJUaHVtYkVsZW1lbnQ6OnJlc29sdmVDdXN0b21TdHlsZSk6CisgICAgICAgICogaHRtbC9z
aGFkb3cvU2xpZGVyVGh1bWJFbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9zaGFkb3cvU3BpbkJ1
dHRvbkVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3BpbkJ1dHRvbkVsZW1lbnQ6OnNw
aW5CdXR0b25Qc2V1ZG9JZCk6CisgICAgICAgIChXZWJDb3JlOjpTcGluQnV0dG9uRWxlbWVudDo6
Y3JlYXRlKToKKyAgICAgICAgKiBodG1sL3NoYWRvdy9TcGluQnV0dG9uRWxlbWVudC5oOgorICAg
ICAgICAqIGh0bWwvc2hhZG93L1RleHRDb250cm9sSW5uZXJFbGVtZW50cy5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50OjpzZWFyY2hEZWNvcmF0
aW9uUHNldWRvSWQpOgorICAgICAgICAoV2ViQ29yZTo6U2VhcmNoRmllbGRSZXN1bHRzQnV0dG9u
RWxlbWVudDo6c2VhcmNoUmVzdWx0c0RlY29yYXRpb25Qc2V1ZG9JZCk6CisgICAgICAgIChXZWJD
b3JlOjpTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50OjpzZWFyY2hSZXN1bHRzQnV0dG9u
UHNldWRvSWQpOgorICAgICAgICAoV2ViQ29yZTo6U2VhcmNoRmllbGRDYW5jZWxCdXR0b25FbGVt
ZW50OjpzZWFyY2hGaWVsZENhbmNlbEJ1dHRvblBzZXVkb0lkKToKKyAgICAgICAgKFdlYkNvcmU6
OlNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uRWxlbWVudDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNv
cmU6OkNhcHNMb2NrSW5kaWNhdG9yRWxlbWVudDo6Q2Fwc0xvY2tJbmRpY2F0b3JFbGVtZW50KToK
KyAgICAgICAgKFdlYkNvcmU6OkNhcHNMb2NrSW5kaWNhdG9yRWxlbWVudDo6Y2Fwc0xvY2tJbmRp
Y2F0b3JQc2V1ZG9JZCk6CisgICAgICAgIChXZWJDb3JlOjpDYXBzTG9ja0luZGljYXRvckVsZW1l
bnQ6OmNyZWF0ZSk6CisgICAgICAgICogaHRtbC9zaGFkb3cvVGV4dENvbnRyb2xJbm5lckVsZW1l
bnRzLmg6CisgICAgICAgICogcGxhdGZvcm0vVGhlbWVUeXBlcy5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpvcGVyYXRvcjw8KToKKyAgICAgICAgKiBwbGF0Zm9ybS9UaGVtZVR5cGVzLmg6CisgICAg
ICAgICogcmVuZGVyaW5nL1JlbmRlclRoZW1lLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
clRoZW1lOjphZGp1c3RTdHlsZSk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZTo6YXV0
b0FwcGVhcmFuY2VGb3JFbGVtZW50IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRo
ZW1lOjphZGp1c3RBcHBlYXJhbmNlIGNvbnN0KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVy
VGhlbWUuaDoKKwogMjAyMS0wOS0yMiAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5j
b20+CiAKICAgICAgICAgW2lPU10gVHJhbnNjb2RlIHZpZGVvcyBzZWxlY3RlZCBmcm9tIFVJSW1h
Z2VQaWNrZXJDb250cm9sbGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJp
bWl0aXZlVmFsdWVNYXBwaW5ncy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZh
bHVlTWFwcGluZ3MuaAppbmRleCBjNDNkYjBiZDI5NTUyYjU4YTM0MTNlOTg4OWM5YWM3NTA4OTJh
MGZhLi5mNjRiYjE2NGI5NjNlYzE4MjhkMDRlOTc2MjljNTNlMjRjMDdjMDk5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKQEAgLTQyMyw2ICs0
MjMsOSBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZl
VmFsdWUoQ29udHJvbFBhcnQgZSkKICAgICBjYXNlIE5vQ29udHJvbFBhcnQ6CiAgICAgICAgIG1f
dmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlTm9uZTsKICAgICAgICAgYnJlYWs7CisgICAgY2FzZSBB
dXRvUGFydDoKKyAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVBdXRvOworICAgICAg
ICBicmVhazsKICAgICBjYXNlIENoZWNrYm94UGFydDoKICAgICAgICAgbV92YWx1ZS52YWx1ZUlE
ID0gQ1NTVmFsdWVDaGVja2JveDsKICAgICAgICAgYnJlYWs7CkBAIC02MjksNyArNjMyLDExIEBA
IHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBDb250cm9sUGFy
dCgpIGNvbnN0CiAKICAgICBpZiAobV92YWx1ZS52YWx1ZUlEID09IENTU1ZhbHVlTm9uZSkKICAg
ICAgICAgcmV0dXJuIE5vQ29udHJvbFBhcnQ7Ci0gICAgcmV0dXJuIENvbnRyb2xQYXJ0KG1fdmFs
dWUudmFsdWVJRCAtIENTU1ZhbHVlQ2hlY2tib3ggKyAxKTsKKworICAgIGlmIChtX3ZhbHVlLnZh
bHVlSUQgPT0gQ1NTVmFsdWVBdXRvKQorICAgICAgICByZXR1cm4gQXV0b1BhcnQ7CisKKyAgICBy
ZXR1cm4gQ29udHJvbFBhcnQobV92YWx1ZS52YWx1ZUlEIC0gQ1NTVmFsdWVDaGVja2JveCArIENo
ZWNrYm94UGFydCk7CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpD
U1NQcmltaXRpdmVWYWx1ZShCYWNrZmFjZVZpc2liaWxpdHkgZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24gYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UHJvcGVydGllcy5qc29uCmluZGV4IDA2MWYzOWE1YjFiNzJlNmUxYWM3ZWMxODE1NWM5ZmZkYmI1
NjJlODIuLmUwZjAzZWY1N2JmYjdiNmUwZDNjNzYxMTFiNTk2NjY3YzAzZTM1YWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24KKysrIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgpAQCAtNDk4OCw2ICs0OTg4LDcgQEAKICAgICAg
ICAgICAgICAgICAiY2Fwcy1sb2NrLWluZGljYXRvciIsCiAgICAgICAgICAgICAgICAgImNvbG9y
LXdlbGwiLAogICAgICAgICAgICAgICAgICJsaXN0LWJ1dHRvbiIsCisgICAgICAgICAgICAgICAg
ImF1dG8iLAogICAgICAgICAgICAgICAgICJub25lIgogICAgICAgICAgICAgXSwKICAgICAgICAg
ICAgICJzdGF0dXMiOiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NT
U1BhcnNlckZhc3RQYXRocy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1BhcnNl
ckZhc3RQYXRocy5jcHAKaW5kZXggMjJkZmNjMzNkM2I3OGViNzIyYjVjMDg1ODdkOTVjNTI2Yzcz
OWNlYy4uZTZjMTAwNWE2ZjQ1OGU3NTU4NmYyMjA5ZGJiZTk2MjVkMDYzMTVlNCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQYXJzZXJGYXN0UGF0aHMuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUGFyc2VyRmFzdFBhdGhzLmNwcApAQCAtNzU0
LDcgKzc1NCw3IEBAIGJvb2wgQ1NTUGFyc2VyRmFzdFBhdGhzOjppc1ZhbGlkS2V5d29yZFByb3Bl
cnR5QW5kVmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlkCiAgICAgY2FzZSBDU1NQcm9wZXJ0
eVZpc2liaWxpdHk6IC8vIHZpc2libGUgfCBoaWRkZW4gfCBjb2xsYXBzZQogICAgICAgICByZXR1
cm4gdmFsdWVJRCA9PSBDU1NWYWx1ZVZpc2libGUgfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZUhpZGRl
biB8fCB2YWx1ZUlEID09IENTU1ZhbHVlQ29sbGFwc2U7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdl
YmtpdEFwcGVhcmFuY2U6Ci0gICAgICAgIHJldHVybiAodmFsdWVJRCA+PSBDU1NWYWx1ZUNoZWNr
Ym94ICYmIHZhbHVlSUQgPD0gQ1NTVmFsdWVDYXBzTG9ja0luZGljYXRvcikgfHwgdmFsdWVJRCA9
PSBDU1NWYWx1ZU5vbmU7CisgICAgICAgIHJldHVybiAodmFsdWVJRCA+PSBDU1NWYWx1ZUNoZWNr
Ym94ICYmIHZhbHVlSUQgPD0gQ1NTVmFsdWVDYXBzTG9ja0luZGljYXRvcikgfHwgdmFsdWVJRCA9
PSBDU1NWYWx1ZU5vbmUgfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZUF1dG87CiAgICAgY2FzZSBDU1NQ
cm9wZXJ0eUJhY2tmYWNlVmlzaWJpbGl0eToKICAgICAgICAgcmV0dXJuIHZhbHVlSUQgPT0gQ1NT
VmFsdWVWaXNpYmxlIHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVIaWRkZW47CiAjaWYgRU5BQkxFKENT
U19DT01QT1NJVElORykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0
VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwCmluZGV4IGUw
ZmY1Mzk2M2I1NzBjYjFkZmZkMzA0OTE5Y2RhZjdjNGExMzc0MDQuLmQwZjFhOTVhMWJkYzlhMDQ4
ODJmYjMwMTE1MWFmNTQxMGYwNmQ2MzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
RmlsZUlucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBl
LmNwcApAQCAtNjYsNiArNjYsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHVzaW5nIG5hbWVz
cGFjZSBIVE1MTmFtZXM7CiAKKy8vIEZJWE1FOiBUaGlzIGNhbiBsaWtlbHkgYmUgYW4gSFRNTERp
dkVsZW1lbnQuCiBjbGFzcyBVcGxvYWRCdXR0b25FbGVtZW50IGZpbmFsIDogcHVibGljIEhUTUxJ
bnB1dEVsZW1lbnQgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU5MSU5FKFVwbG9hZEJ1
dHRvbkVsZW1lbnQpOwogcHVibGljOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9T
ZWFyY2hJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9TZWFyY2hJbnB1dFR5cGUu
Y3BwCmluZGV4IGI1NWEwZjU3OWFmMGQ2ZjU5M2RjYjI5ZWRmM2I5MWJhNzBjOGJhMjUuLjE2OTg0
ZDk0MTE4NmI5YTFhYTlhMDk3MjA5MjMzYzEwNDUwMzRiNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvU2VhcmNoSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L1NlYXJjaElucHV0VHlwZS5jcHAKQEAgLTY5LDExICs2OSwxMSBAQCBzdGF0aWMgdm9pZCB1cGRh
dGVSZXN1bHRCdXR0b25Qc2V1ZG9UeXBlKFNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQm
IHJlc3VsdAogICAgIHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRvbVN0
cmluZz4gd2Via2l0U2VhcmNoUmVzdWx0c0RlY29yYXRpb25OYW1lKCItd2Via2l0LXNlYXJjaC1y
ZXN1bHRzLWRlY29yYXRpb24iLCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7CiAg
ICAgc3RhdGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiB3ZWJr
aXRTZWFyY2hSZXN1bHRzQnV0dG9uTmFtZSgiLXdlYmtpdC1zZWFyY2gtcmVzdWx0cy1idXR0b24i
LCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7CiAgICAgaWYgKCFtYXhSZXN1bHRz
KQotICAgICAgICByZXN1bHRCdXR0b24uc2V0UHNldWRvKHdlYmtpdFNlYXJjaFJlc3VsdHNEZWNv
cmF0aW9uTmFtZSk7CisgICAgICAgIHJlc3VsdEJ1dHRvbi5zZXRQc2V1ZG8oU2VhcmNoRmllbGRS
ZXN1bHRzQnV0dG9uRWxlbWVudDo6c2VhcmNoUmVzdWx0c0RlY29yYXRpb25Qc2V1ZG9JZCgpKTsK
ICAgICBlbHNlIGlmIChtYXhSZXN1bHRzIDwgMCkKLSAgICAgICAgcmVzdWx0QnV0dG9uLnNldFBz
ZXVkbyh3ZWJraXRTZWFyY2hEZWNvcmF0aW9uTmFtZSk7CisgICAgICAgIHJlc3VsdEJ1dHRvbi5z
ZXRQc2V1ZG8oU2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudDo6c2VhcmNoRGVjb3JhdGlv
blBzZXVkb0lkKCkpOwogICAgIGVsc2UKLSAgICAgICAgcmVzdWx0QnV0dG9uLnNldFBzZXVkbyh3
ZWJraXRTZWFyY2hSZXN1bHRzQnV0dG9uTmFtZSk7CisgICAgICAgIHJlc3VsdEJ1dHRvbi5zZXRQ
c2V1ZG8oU2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudDo6c2VhcmNoUmVzdWx0c0J1dHRv
blBzZXVkb0lkKCkpOwogfQogCiB2b2lkIFNlYXJjaElucHV0VHlwZTo6YXR0cmlidXRlQ2hhbmdl
ZChjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9UZXh0RmllbGRJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9UZXh0Rmll
bGRJbnB1dFR5cGUuY3BwCmluZGV4IDFlNTM1ZTdiMTExZmIyNGYzY2ZiNThkZjUwOWE5ZDEwMDIz
MmI0MTEuLmVjZTgyNTUxMTEwNjVlYWY3ODU3Y2U3M2RkMjBhNGJmMGYxZmY2MmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL1RleHRGaWVsZElucHV0VHlwZS5jcHAKQEAgLTM0OCw5ICszNDgsNyBA
QCB2b2lkIFRleHRGaWVsZElucHV0VHlwZTo6Y3JlYXRlU2hhZG93U3VidHJlZUFuZFVwZGF0ZUlu
bmVyVGV4dEVsZW1lbnRFZGl0YWJpbGl0eQogICAgIH0KIAogICAgIGlmIChzaG91bGRIYXZlQ2Fw
c0xvY2tJbmRpY2F0b3IpIHsKLSAgICAgICAgc3RhdGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3ll
ZDxjb25zdCBBdG9tU3RyaW5nPiB3ZWJraXRDYXBzTG9ja0luZGljYXRvck5hbWUoIi13ZWJraXQt
Y2Fwcy1sb2NrLWluZGljYXRvciIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsK
LSAgICAgICAgbV9jYXBzTG9ja0luZGljYXRvciA9IEhUTUxEaXZFbGVtZW50OjpjcmVhdGUoZG9j
dW1lbnQpOwotICAgICAgICBtX2NhcHNMb2NrSW5kaWNhdG9yLT5zZXRQc2V1ZG8od2Via2l0Q2Fw
c0xvY2tJbmRpY2F0b3JOYW1lKTsKKyAgICAgICAgbV9jYXBzTG9ja0luZGljYXRvciA9IENhcHNM
b2NrSW5kaWNhdG9yRWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50KTsKIAogICAgICAgICBib29sIHNo
b3VsZERyYXdDYXBzTG9ja0luZGljYXRvciA9IHRoaXMtPnNob3VsZERyYXdDYXBzTG9ja0luZGlj
YXRvcigpOwogICAgICAgICBtX2NhcHNMb2NrSW5kaWNhdG9yLT5zZXRJbmxpbmVTdHlsZVByb3Bl
cnR5KENTU1Byb3BlcnR5RGlzcGxheSwgc2hvdWxkRHJhd0NhcHNMb2NrSW5kaWNhdG9yID8gQ1NT
VmFsdWVCbG9jayA6IENTU1ZhbHVlTm9uZSwgdHJ1ZSk7CkBAIC00NTYsMTEgKzQ1NCw5IEBAIHZv
aWQgVGV4dEZpZWxkSW5wdXRUeXBlOjpjcmVhdGVEYXRhTGlzdERyb3Bkb3duSW5kaWNhdG9yKCkK
ICAgICBpZiAoIW1fY29udGFpbmVyKQogICAgICAgICBjcmVhdGVDb250YWluZXIoKTsKIAotICAg
IHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRvbVN0cmluZz4gd2Via2l0
TGlzdEJ1dHRvbk5hbWUoIi13ZWJraXQtbGlzdC1idXR0b24iLCBBdG9tU3RyaW5nOjpDb25zdHJ1
Y3RGcm9tTGl0ZXJhbCk7CiAgICAgU2NyaXB0RGlzYWxsb3dlZFNjb3BlOjpFdmVudEFsbG93ZWRT
Y29wZSBhbGxvd2VkU2NvcGUoKm1fY29udGFpbmVyKTsKICAgICBtX2RhdGFMaXN0RHJvcGRvd25J
bmRpY2F0b3IgPSBEYXRhTGlzdEJ1dHRvbkVsZW1lbnQ6OmNyZWF0ZShlbGVtZW50KCktPmRvY3Vt
ZW50KCksICp0aGlzKTsKICAgICBtX2NvbnRhaW5lci0+YXBwZW5kQ2hpbGQoKm1fZGF0YUxpc3RE
cm9wZG93bkluZGljYXRvcik7Ci0gICAgbV9kYXRhTGlzdERyb3Bkb3duSW5kaWNhdG9yLT5zZXRQ
c2V1ZG8od2Via2l0TGlzdEJ1dHRvbk5hbWUpOwogICAgIG1fZGF0YUxpc3REcm9wZG93bkluZGlj
YXRvci0+c2V0SW5saW5lU3R5bGVQcm9wZXJ0eShDU1NQcm9wZXJ0eURpc3BsYXksIENTU1ZhbHVl
Tm9uZSwgdHJ1ZSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZp
ZWxkSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1RleHRGaWVsZElucHV0VHlwZS5o
CmluZGV4IDY1NWRhNzc3ZWVmZjQwOTdkOTM0MmViNjJjYWNjZjJjNTFmNjAwMTMuLjIxOWUyNjZj
ZjgwN2IwZTkzMjBlZjllMjQwZmNlMTg5YTMzZGQxN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9U
ZXh0RmllbGRJbnB1dFR5cGUuaApAQCAtNDAsNiArNDAsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKK2NsYXNzIENhcHNMb2NrSW5kaWNhdG9yRWxlbWVudDsKIGNsYXNzIERPTUZvcm1EYXRh
OwogY2xhc3MgVGV4dENvbnRyb2xJbm5lclRleHRFbGVtZW50OwogCkBAIC0xNTEsNyArMTUyLDcg
QEAgcHJpdmF0ZToKICAgICBSZWZQdHI8VGV4dENvbnRyb2xJbm5lclRleHRFbGVtZW50PiBtX2lu
bmVyVGV4dDsKICAgICBSZWZQdHI8SFRNTEVsZW1lbnQ+IG1fcGxhY2Vob2xkZXI7CiAgICAgUmVm
UHRyPFNwaW5CdXR0b25FbGVtZW50PiBtX2lubmVyU3BpbkJ1dHRvbjsKLSAgICBSZWZQdHI8SFRN
TEVsZW1lbnQ+IG1fY2Fwc0xvY2tJbmRpY2F0b3I7CisgICAgUmVmUHRyPENhcHNMb2NrSW5kaWNh
dG9yRWxlbWVudD4gbV9jYXBzTG9ja0luZGljYXRvcjsKICAgICBSZWZQdHI8SFRNTEVsZW1lbnQ+
IG1fYXV0b0ZpbGxCdXR0b247CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L3NoYWRvdy9EYXRhTGlzdEJ1dHRvbkVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9z
aGFkb3cvRGF0YUxpc3RCdXR0b25FbGVtZW50LmNwcAppbmRleCA3OTJjYzcyMjhkYTk3NTQyMmUx
OWI1N2E3ZDY1OWM5ZDA1ODU5ZjRmLi5lZjU3NWQ1NDc4Nzg1YWIyMmZmOTk3Nzg3NGJjZThlMzNl
MTAzYTc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9EYXRhTGlzdEJ1
dHRvbkVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0RhdGFMaXN0
QnV0dG9uRWxlbWVudC5jcHAKQEAgLTQwLDkgKzQwLDE3IEBAIFdURl9NQUtFX0lTT19BTExPQ0FU
RURfSU1QTChEYXRhTGlzdEJ1dHRvbkVsZW1lbnQpOwogCiB1c2luZyBuYW1lc3BhY2UgSFRNTE5h
bWVzOwogCitjb25zdCBBdG9tU3RyaW5nJiBEYXRhTGlzdEJ1dHRvbkVsZW1lbnQ6Omxpc3RCdXR0
b25Qc2V1ZG9JZCgpCit7CisgICAgc3RhdGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3llZDxjb25z
dCBBdG9tU3RyaW5nPiBsaXN0QnV0dG9uUHNldWRvSWQoIi13ZWJraXQtbGlzdC1idXR0b24iLCBB
dG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7CisgICAgcmV0dXJuIGxpc3RCdXR0b25Q
c2V1ZG9JZDsKK30KKwogUmVmPERhdGFMaXN0QnV0dG9uRWxlbWVudD4gRGF0YUxpc3RCdXR0b25F
bGVtZW50OjpjcmVhdGUoRG9jdW1lbnQmIGRvY3VtZW50LCBEYXRhTGlzdEJ1dHRvbk93bmVyJiBv
d25lcikKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBEYXRhTGlzdEJ1dHRvbkVsZW1lbnQo
ZG9jdW1lbnQsIG93bmVyKSk7CisgICAgYXV0byBlbGVtZW50ID0gYWRvcHRSZWYoKm5ldyBEYXRh
TGlzdEJ1dHRvbkVsZW1lbnQoZG9jdW1lbnQsIG93bmVyKSk7CisgICAgZWxlbWVudC0+c2V0UHNl
dWRvKGxpc3RCdXR0b25Qc2V1ZG9JZCgpKTsKKyAgICByZXR1cm4gZWxlbWVudDsKIH0KIAogRGF0
YUxpc3RCdXR0b25FbGVtZW50OjpEYXRhTGlzdEJ1dHRvbkVsZW1lbnQoRG9jdW1lbnQmIGRvY3Vt
ZW50LCBEYXRhTGlzdEJ1dHRvbk93bmVyJiBvd25lcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvc2hhZG93L0RhdGFMaXN0QnV0dG9uRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9zaGFkb3cvRGF0YUxpc3RCdXR0b25FbGVtZW50LmgKaW5kZXggZmQ5NTg2NGFiN2IxYjcy
ZGI0NTg3Y2VkZDJlM2YxZDljMmIyOGVhOC4uNDlkMWM5MTJlNDViN2EzNWE3OWI2ZDg2NWU5NTky
ODg4YmE4ZGE1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0YUxp
c3RCdXR0b25FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0YUxp
c3RCdXR0b25FbGVtZW50LmgKQEAgLTQ0LDYgKzQ0LDggQEAgcHVibGljOgogCiAgICAgfkRhdGFM
aXN0QnV0dG9uRWxlbWVudCgpOwogCisgICAgc3RhdGljIGNvbnN0IEF0b21TdHJpbmcmIGxpc3RC
dXR0b25Qc2V1ZG9JZCgpOworCiAgICAgc3RhdGljIFJlZjxEYXRhTGlzdEJ1dHRvbkVsZW1lbnQ+
IGNyZWF0ZShEb2N1bWVudCYsIERhdGFMaXN0QnV0dG9uT3duZXImKTsKIAogcHJpdmF0ZToKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NsaWRlclRodW1iRWxlbWVudC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9TbGlkZXJUaHVtYkVsZW1lbnQuY3BwCmlu
ZGV4IGRiYWE4ZDk1ZjM2MTM4Mjc0MTNlMDFkYzY2Y2YxZTFlNjVhYjZiNTQuLmI4NDRmZmY2Njhh
NDgzMjkwYmM2NzE3ZmFkYzc3MWM1ZWI2MzhhNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvc2hhZG93L1NsaWRlclRodW1iRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9zaGFkb3cvU2xpZGVyVGh1bWJFbGVtZW50LmNwcApAQCAtMjEzLDYgKzIxMywxOCBAQCBT
bGlkZXJUaHVtYkVsZW1lbnQ6OlNsaWRlclRodW1iRWxlbWVudChEb2N1bWVudCYgZG9jdW1lbnQp
CiAgICAgc2V0SGFzQ3VzdG9tU3R5bGVSZXNvbHZlQ2FsbGJhY2tzKCk7CiB9CiAKK2NvbnN0IEF0
b21TdHJpbmcmIFNsaWRlclRodW1iRWxlbWVudDo6c2xpZGVyVGh1bWJQc2V1ZG9JZCgpCit7Cisg
ICAgc3RhdGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiBzbGlk
ZXJUaHVtYlBzZXVkb0lkKCItd2Via2l0LXNsaWRlci10aHVtYiIsIEF0b21TdHJpbmc6OkNvbnN0
cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gc2xpZGVyVGh1bWJQc2V1ZG9JZDsKK30KKwor
Y29uc3QgQXRvbVN0cmluZyYgU2xpZGVyVGh1bWJFbGVtZW50OjptZWRpYVNsaWRlclRodW1iUHNl
dWRvSWQoKQoreworICAgIHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRv
bVN0cmluZz4gbWVkaWFTbGlkZXJUaHVtYlBzZXVkb0lkKCItd2Via2l0LW1lZGlhLXNsaWRlci10
aHVtYiIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gbWVk
aWFTbGlkZXJUaHVtYlBzZXVkb0lkOworfQorCiB2b2lkIFNsaWRlclRodW1iRWxlbWVudDo6c2V0
UG9zaXRpb25Gcm9tVmFsdWUoKQogewogICAgIC8vIFNpbmNlIHRoZSBjb2RlIHRvIGNhbGN1bGF0
ZSBwb3NpdGlvbiBpcyBpbiB0aGUgUmVuZGVyU2xpZGVyVGh1bWIgbGF5b3V0CkBAIC01ODksOSAr
NjAxLDYgQEAgc3RkOjpvcHRpb25hbDxTdHlsZTo6RWxlbWVudFN0eWxlPiBTbGlkZXJUaHVtYkVs
ZW1lbnQ6OnJlc29sdmVDdXN0b21TdHlsZShjb25zdAogewogICAgIC8vIFRoaXMgZG9lc24ndCBh
Y3R1YWxseSBjb21wdXRlIHN0eWxlLiBUaGlzIGlzIGp1c3QgYSBoYWNrIHRvIHBpY2sgc2hhZG93
IHBzZXVkbyBpZCB3aGVuIGhvc3Qgc3R5bGUgaXMga25vd24uCiAKLSAgICBzdGF0aWMgTWFpblRo
cmVhZE5ldmVyRGVzdHJveWVkPGNvbnN0IEF0b21TdHJpbmc+IHNsaWRlclRodW1iU2hhZG93UHNl
dWRvSWQoIi13ZWJraXQtc2xpZGVyLXRodW1iIiwgQXRvbVN0cmluZzo6Q29uc3RydWN0RnJvbUxp
dGVyYWwpOwotICAgIHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRvbVN0
cmluZz4gbWVkaWFTbGlkZXJUaHVtYlNoYWRvd1BzZXVkb0lkKCItd2Via2l0LW1lZGlhLXNsaWRl
ci10aHVtYiIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKLQogICAgIGlmICgh
aG9zdFN0eWxlKQogICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwogCkBAIC02MDIsMTAgKzYx
MSwxMCBAQCBzdGQ6Om9wdGlvbmFsPFN0eWxlOjpFbGVtZW50U3R5bGU+IFNsaWRlclRodW1iRWxl
bWVudDo6cmVzb2x2ZUN1c3RvbVN0eWxlKGNvbnN0CiAgICAgY2FzZSBNZWRpYVZvbHVtZVNsaWRl
clRodW1iUGFydDoKICAgICBjYXNlIE1lZGlhRnVsbFNjcmVlblZvbHVtZVNsaWRlclBhcnQ6CiAg
ICAgY2FzZSBNZWRpYUZ1bGxTY3JlZW5Wb2x1bWVTbGlkZXJUaHVtYlBhcnQ6Ci0gICAgICAgIG1f
c2hhZG93UHNldWRvSWQgPSBtZWRpYVNsaWRlclRodW1iU2hhZG93UHNldWRvSWQ7CisgICAgICAg
IG1fc2hhZG93UHNldWRvSWQgPSBtZWRpYVNsaWRlclRodW1iUHNldWRvSWQoKTsKICAgICAgICAg
YnJlYWs7CiAgICAgZGVmYXVsdDoKLSAgICAgICAgbV9zaGFkb3dQc2V1ZG9JZCA9IHNsaWRlclRo
dW1iU2hhZG93UHNldWRvSWQ7CisgICAgICAgIG1fc2hhZG93UHNldWRvSWQgPSBzbGlkZXJUaHVt
YlBzZXVkb0lkKCk7CiAgICAgfQogCiAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NsaWRlclRodW1iRWxlbWVudC5oIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvU2xpZGVyVGh1bWJFbGVtZW50LmgKaW5kZXggYjNjZGVi
YTU2N2U5NWY5NWJmNGY4OWFkOTUzZjVkMmQyY2MzNjNiNS4uZTM3ZDNiYTU2Y2ExYzU1MjZjMGJj
ODEwMGRjMmI0NWE5NTk1MDRmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFk
b3cvU2xpZGVyVGh1bWJFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cv
U2xpZGVyVGh1bWJFbGVtZW50LmgKQEAgLTQzLDYgKzQzLDkgQEAgY2xhc3MgVG91Y2hFdmVudDsK
IGNsYXNzIFNsaWRlclRodW1iRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBIVE1MRGl2RWxlbWVudCB7
CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChTbGlkZXJUaHVtYkVsZW1lbnQpOwogcHVibGlj
OgorICAgIHN0YXRpYyBjb25zdCBBdG9tU3RyaW5nJiBzbGlkZXJUaHVtYlBzZXVkb0lkKCk7Cisg
ICAgc3RhdGljIGNvbnN0IEF0b21TdHJpbmcmIG1lZGlhU2xpZGVyVGh1bWJQc2V1ZG9JZCgpOwor
CiAgICAgc3RhdGljIFJlZjxTbGlkZXJUaHVtYkVsZW1lbnQ+IGNyZWF0ZShEb2N1bWVudCYpOwog
CiAgICAgdm9pZCBzZXRQb3NpdGlvbkZyb21WYWx1ZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9zaGFkb3cvU3BpbkJ1dHRvbkVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9zaGFkb3cvU3BpbkJ1dHRvbkVsZW1lbnQuY3BwCmluZGV4IGQ5MDQyNDBmM2RiYTA2ODQw
YTA0ZWI2YTNjYTcwYmJhNmY4ZmFiZTkuLjdhYWI0ZTZjN2Q2ZTQ3NzQ2MmZiYWQ5MTY0MzI4YmQ3
YjgyMmUyZGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NwaW5CdXR0
b25FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9TcGluQnV0dG9u
RWxlbWVudC5jcHAKQEAgLTU4LDExICs1OCwxNiBAQCBpbmxpbmUgU3BpbkJ1dHRvbkVsZW1lbnQ6
OlNwaW5CdXR0b25FbGVtZW50KERvY3VtZW50JiBkb2N1bWVudCwgU3BpbkJ1dHRvbk93bmVyJgog
ICAgIHNldEhhc0N1c3RvbVN0eWxlUmVzb2x2ZUNhbGxiYWNrcygpOwogfQogCitjb25zdCBBdG9t
U3RyaW5nJiBTcGluQnV0dG9uRWxlbWVudDo6c3BpbkJ1dHRvblBzZXVkb0lkKCkKK3sKKyAgICBz
dGF0aWMgTWFpblRocmVhZE5ldmVyRGVzdHJveWVkPGNvbnN0IEF0b21TdHJpbmc+IHNwaW5CdXR0
b25Qc2V1ZG9JZCgiLXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiIsIEF0b21TdHJpbmc6OkNvbnN0
cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gc3BpbkJ1dHRvblBzZXVkb0lkOworfQorCiBS
ZWY8U3BpbkJ1dHRvbkVsZW1lbnQ+IFNwaW5CdXR0b25FbGVtZW50OjpjcmVhdGUoRG9jdW1lbnQm
IGRvY3VtZW50LCBTcGluQnV0dG9uT3duZXImIHNwaW5CdXR0b25Pd25lcikKIHsKICAgICBhdXRv
IGVsZW1lbnQgPSBhZG9wdFJlZigqbmV3IFNwaW5CdXR0b25FbGVtZW50KGRvY3VtZW50LCBzcGlu
QnV0dG9uT3duZXIpKTsKLSAgICBzdGF0aWMgTWFpblRocmVhZE5ldmVyRGVzdHJveWVkPGNvbnN0
IEF0b21TdHJpbmc+IHdlYmtpdElubmVyU3BpbkJ1dHRvbk5hbWUoIi13ZWJraXQtaW5uZXItc3Bp
bi1idXR0b24iLCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7Ci0gICAgZWxlbWVu
dC0+c2V0UHNldWRvKHdlYmtpdElubmVyU3BpbkJ1dHRvbk5hbWUpOworICAgIGVsZW1lbnQtPnNl
dFBzZXVkbyhzcGluQnV0dG9uUHNldWRvSWQoKSk7CiAgICAgcmV0dXJuIGVsZW1lbnQ7CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NwaW5CdXR0b25FbGVtZW50
LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9TcGluQnV0dG9uRWxlbWVudC5oCmluZGV4
IDNjNzEwN2RkNDk1NTYzMDhkMDMwOTc5ODdkNTVkOTJmMjllNzU5ZjEuLjExMjYzNDJjYTc4ODQ2
N2ViMDllNTU3NjJhN2EwNGM5YzMyZDcwOTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvc2hhZG93L1NwaW5CdXR0b25FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9z
aGFkb3cvU3BpbkJ1dHRvbkVsZW1lbnQuaApAQCAtNTEsNiArNTEsOCBAQCBwdWJsaWM6CiAgICAg
ICAgIHZpcnR1YWwgdm9pZCBzcGluQnV0dG9uU3RlcFVwKCkgPSAwOwogICAgIH07CiAKKyAgICBz
dGF0aWMgY29uc3QgQXRvbVN0cmluZyYgc3BpbkJ1dHRvblBzZXVkb0lkKCk7CisKICAgICAvLyBU
aGUgb3duZXIgb2YgU3BpbkJ1dHRvbkVsZW1lbnQgbXVzdCBjYWxsIHJlbW92ZVNwaW5CdXR0b25P
d25lcgogICAgIC8vIGJlY2F1c2UgU3BpbkJ1dHRvbkVsZW1lbnQgY2FuIGJlIG91dGxpdmUgU3Bp
bkJ1dHRvbk93bmVyCiAgICAgLy8gaW1wbGVtZW50YXRpb24sIGUuZy4gZHVyaW5nIGV2ZW50IGhh
bmRsaW5nLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvVGV4dENvbnRy
b2xJbm5lckVsZW1lbnRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1RleHRDb250
cm9sSW5uZXJFbGVtZW50cy5jcHAKaW5kZXggYmQyNzYwNzE0YjdjMDljMDJmZDc0YzllNjU4YWI0
OTNkYzUxYWU1ZS4uNzdlYWUxYTIxZjY0MjdkZDA3NTgzNjBiOTVjYzkwOTI2YmU0OTUyNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvVGV4dENvbnRyb2xJbm5lckVsZW1l
bnRzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9UZXh0Q29udHJvbElubmVy
RWxlbWVudHMuY3BwCkBAIC01Nyw2ICs1Nyw3IEBAIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1Q
TChUZXh0Q29udHJvbElubmVyVGV4dEVsZW1lbnQpOwogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9J
TVBMKFRleHRDb250cm9sUGxhY2Vob2xkZXJFbGVtZW50KTsKIFdURl9NQUtFX0lTT19BTExPQ0FU
RURfSU1QTChTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50KTsKIFdURl9NQUtFX0lTT19B
TExPQ0FURURfSU1QTChTZWFyY2hGaWVsZENhbmNlbEJ1dHRvbkVsZW1lbnQpOworV1RGX01BS0Vf
SVNPX0FMTE9DQVRFRF9JTVBMKENhcHNMb2NrSW5kaWNhdG9yRWxlbWVudCk7CiAKIHVzaW5nIG5h
bWVzcGFjZSBIVE1MTmFtZXM7CiAKQEAgLTIzNCw2ICsyMzUsMjQgQEAgaW5saW5lIFNlYXJjaEZp
ZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQ6OlNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQo
RG9jdW1lbnQKICAgICBzZXRIYXNDdXN0b21TdHlsZVJlc29sdmVDYWxsYmFja3MoKTsKIH0KIAor
Y29uc3QgQXRvbVN0cmluZyYgU2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudDo6c2VhcmNo
RGVjb3JhdGlvblBzZXVkb0lkKCkKK3sKKyAgICBzdGF0aWMgTWFpblRocmVhZE5ldmVyRGVzdHJv
eWVkPGNvbnN0IEF0b21TdHJpbmc+IHNlYXJjaERlY29yYXRpb25Qc2V1ZG9JZCgiLXdlYmtpdC1z
ZWFyY2gtZGVjb3JhdGlvbiIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKKyAg
ICByZXR1cm4gc2VhcmNoRGVjb3JhdGlvblBzZXVkb0lkOworfQorCitjb25zdCBBdG9tU3RyaW5n
JiBTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50OjpzZWFyY2hSZXN1bHRzRGVjb3JhdGlv
blBzZXVkb0lkKCkKK3sKKyAgICBzdGF0aWMgTWFpblRocmVhZE5ldmVyRGVzdHJveWVkPGNvbnN0
IEF0b21TdHJpbmc+IHNlYXJjaFJlc3VsdHNEZWNvcmF0aW9uUHNldWRvSWQoIi13ZWJraXQtc2Vh
cmNoLXJlc3VsdHMtZGVjb3JhdGlvbiIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFs
KTsKKyAgICByZXR1cm4gc2VhcmNoUmVzdWx0c0RlY29yYXRpb25Qc2V1ZG9JZDsKK30KKworY29u
c3QgQXRvbVN0cmluZyYgU2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudDo6c2VhcmNoUmVz
dWx0c0J1dHRvblBzZXVkb0lkKCkKK3sKKyAgICBzdGF0aWMgTWFpblRocmVhZE5ldmVyRGVzdHJv
eWVkPGNvbnN0IEF0b21TdHJpbmc+IHNlYXJjaFJlc3VsdHNCdXR0b25Qc2V1ZG9JZCgiLXdlYmtp
dC1zZWFyY2gtcmVzdWx0cy1idXR0b24iLCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJh
bCk7CisgICAgcmV0dXJuIHNlYXJjaFJlc3VsdHNCdXR0b25Qc2V1ZG9JZDsKK30KKwogUmVmPFNl
YXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQ+IFNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVs
ZW1lbnQ6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1lbnQpCiB7CiAgICAgcmV0dXJuIGFkb3B0UmVm
KCpuZXcgU2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudChkb2N1bWVudCkpOwpAQCAtMjkz
LDEyICszMTIsMTggQEAgaW5saW5lIFNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uRWxlbWVudDo6U2Vh
cmNoRmllbGRDYW5jZWxCdXR0b25FbGVtZW50KERvY3VtZW50JgogICAgIHNldEhhc0N1c3RvbVN0
eWxlUmVzb2x2ZUNhbGxiYWNrcygpOwogfQogCitjb25zdCBBdG9tU3RyaW5nJiBTZWFyY2hGaWVs
ZENhbmNlbEJ1dHRvbkVsZW1lbnQ6OnNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uUHNldWRvSWQoKQor
eworICAgIHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRvbVN0cmluZz4g
c2VhcmNoRmllbGRDYW5jZWxCdXR0b25Qc2V1ZG9JZCgiLXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1
dHRvbiIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gc2Vh
cmNoRmllbGRDYW5jZWxCdXR0b25Qc2V1ZG9JZDsKK30KKwogUmVmPFNlYXJjaEZpZWxkQ2FuY2Vs
QnV0dG9uRWxlbWVudD4gU2VhcmNoRmllbGRDYW5jZWxCdXR0b25FbGVtZW50OjpjcmVhdGUoRG9j
dW1lbnQmIGRvY3VtZW50KQogewogICAgIGF1dG8gZWxlbWVudCA9IGFkb3B0UmVmKCpuZXcgU2Vh
cmNoRmllbGRDYW5jZWxCdXR0b25FbGVtZW50KGRvY3VtZW50KSk7Ci0gICAgc3RhdGljIE1haW5U
aHJlYWROZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiB3ZWJraXRTZWFyY2hDYW5jZWxC
dXR0b25OYW1lKCItd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIiwgQXRvbVN0cmluZzo6Q29u
c3RydWN0RnJvbUxpdGVyYWwpOworCiAgICAgc3RhdGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3ll
ZDxjb25zdCBBdG9tU3RyaW5nPiBidXR0b25OYW1lKCJidXR0b24iLCBBdG9tU3RyaW5nOjpDb25z
dHJ1Y3RGcm9tTGl0ZXJhbCk7Ci0gICAgZWxlbWVudC0+c2V0UHNldWRvKHdlYmtpdFNlYXJjaENh
bmNlbEJ1dHRvbk5hbWUpOworICAgIGVsZW1lbnQtPnNldFBzZXVkbyhzZWFyY2hGaWVsZENhbmNl
bEJ1dHRvblBzZXVkb0lkKCkpOwogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIGVsZW1l
bnQtPnNldEF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24oYXJpYV9sYWJlbEF0dHIsIEFY
U2VhcmNoRmllbGRDYW5jZWxCdXR0b25UZXh0KCkpOwogI2VuZGlmCkBAIC0zNTAsNCArMzc1LDI0
IEBAIGJvb2wgU2VhcmNoRmllbGRDYW5jZWxCdXR0b25FbGVtZW50Ojp3aWxsUmVzcG9uZFRvTW91
c2VDbGlja0V2ZW50cygpCiB9CiAjZW5kaWYKIAorLy8gTUFSSzogQ2Fwc0xvY2tJbmRpY2F0b3JF
bGVtZW50CisKK0NhcHNMb2NrSW5kaWNhdG9yRWxlbWVudDo6Q2Fwc0xvY2tJbmRpY2F0b3JFbGVt
ZW50KERvY3VtZW50JiBkb2N1bWVudCkKKyAgICA6IEhUTUxEaXZFbGVtZW50KGRpdlRhZywgZG9j
dW1lbnQpCit7Cit9CisKK2NvbnN0IEF0b21TdHJpbmcmIENhcHNMb2NrSW5kaWNhdG9yRWxlbWVu
dDo6Y2Fwc0xvY2tJbmRpY2F0b3JQc2V1ZG9JZCgpCit7CisgICAgc3RhdGljIE1haW5UaHJlYWRO
ZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiBjYXBzTG9ja0luZGljYXRvclBzZXVkb0lk
KCItd2Via2l0LWNhcHMtbG9jay1pbmRpY2F0b3IiLCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9t
TGl0ZXJhbCk7CisgICAgcmV0dXJuIGNhcHNMb2NrSW5kaWNhdG9yUHNldWRvSWQ7Cit9CisKK1Jl
ZjxDYXBzTG9ja0luZGljYXRvckVsZW1lbnQ+IENhcHNMb2NrSW5kaWNhdG9yRWxlbWVudDo6Y3Jl
YXRlKERvY3VtZW50JiBkb2N1bWVudCkKK3sKKyAgICBhdXRvIGVsZW1lbnQgPSBhZG9wdFJlZigq
bmV3IENhcHNMb2NrSW5kaWNhdG9yRWxlbWVudChkb2N1bWVudCkpOworICAgIGVsZW1lbnQtPnNl
dFBzZXVkbyhjYXBzTG9ja0luZGljYXRvclBzZXVkb0lkKCkpOworICAgIHJldHVybiBlbGVtZW50
OworfQorCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9UZXh0Q29u
dHJvbElubmVyRWxlbWVudHMuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1RleHRDb250
cm9sSW5uZXJFbGVtZW50cy5oCmluZGV4IDdjMzJiYjRhMjE3NzcwYzE0ZjYyMWUyNGNmZGJiNmIw
YTdjNzE1MmEuLmIwZjllY2E3MmYzMzhhZjJjMTFlNzQ2OWYyYTMzNDk4YTQ4Nzk5N2EgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1RleHRDb250cm9sSW5uZXJFbGVtZW50
cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1RleHRDb250cm9sSW5uZXJFbGVt
ZW50cy5oCkBAIC05NCw2ICs5NCwxMCBAQCBwcml2YXRlOgogY2xhc3MgU2VhcmNoRmllbGRSZXN1
bHRzQnV0dG9uRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBIVE1MRGl2RWxlbWVudCB7CiAgICAgV1RG
X01BS0VfSVNPX0FMTE9DQVRFRChTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50KTsKIHB1
YmxpYzoKKyAgICBzdGF0aWMgY29uc3QgQXRvbVN0cmluZyYgc2VhcmNoRGVjb3JhdGlvblBzZXVk
b0lkKCk7CisgICAgc3RhdGljIGNvbnN0IEF0b21TdHJpbmcmIHNlYXJjaFJlc3VsdHNEZWNvcmF0
aW9uUHNldWRvSWQoKTsKKyAgICBzdGF0aWMgY29uc3QgQXRvbVN0cmluZyYgc2VhcmNoUmVzdWx0
c0J1dHRvblBzZXVkb0lkKCk7CisKICAgICBzdGF0aWMgUmVmPFNlYXJjaEZpZWxkUmVzdWx0c0J1
dHRvbkVsZW1lbnQ+IGNyZWF0ZShEb2N1bWVudCYpOwogCiAgICAgdm9pZCBkZWZhdWx0RXZlbnRI
YW5kbGVyKEV2ZW50Jikgb3ZlcnJpZGU7CkBAIC0xMTUsNiArMTE5LDggQEAgcHJpdmF0ZToKIGNs
YXNzIFNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBIVE1MRGl2
RWxlbWVudCB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChTZWFyY2hGaWVsZENhbmNlbEJ1
dHRvbkVsZW1lbnQpOwogcHVibGljOgorICAgIHN0YXRpYyBjb25zdCBBdG9tU3RyaW5nJiBzZWFy
Y2hGaWVsZENhbmNlbEJ1dHRvblBzZXVkb0lkKCk7CisKICAgICBzdGF0aWMgUmVmPFNlYXJjaEZp
ZWxkQ2FuY2VsQnV0dG9uRWxlbWVudD4gY3JlYXRlKERvY3VtZW50Jik7CiAKICAgICB2b2lkIGRl
ZmF1bHRFdmVudEhhbmRsZXIoRXZlbnQmKSBvdmVycmlkZTsKQEAgLTEyOCw2ICsxMzQsMTcgQEAg
cHJpdmF0ZToKICAgICBzdGQ6Om9wdGlvbmFsPFN0eWxlOjpFbGVtZW50U3R5bGU+IHJlc29sdmVD
dXN0b21TdHlsZShjb25zdCBSZW5kZXJTdHlsZSYgcGFyZW50U3R5bGUsIGNvbnN0IFJlbmRlclN0
eWxlKiBzaGFkb3dIb3N0U3R5bGUpIG92ZXJyaWRlOwogfTsKIAorY2xhc3MgQ2Fwc0xvY2tJbmRp
Y2F0b3JFbGVtZW50IGZpbmFsIDogcHVibGljIEhUTUxEaXZFbGVtZW50IHsKKyAgICBXVEZfTUFL
RV9JU09fQUxMT0NBVEVEKENhcHNMb2NrSW5kaWNhdG9yRWxlbWVudCk7CitwdWJsaWM6CisgICAg
c3RhdGljIGNvbnN0IEF0b21TdHJpbmcmIGNhcHNMb2NrSW5kaWNhdG9yUHNldWRvSWQoKTsKKwor
ICAgIHN0YXRpYyBSZWY8Q2Fwc0xvY2tJbmRpY2F0b3JFbGVtZW50PiBjcmVhdGUoRG9jdW1lbnQm
KTsKKworcHJpdmF0ZToKKyAgICBDYXBzTG9ja0luZGljYXRvckVsZW1lbnQoRG9jdW1lbnQmKTsK
K307CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19C
RUdJTihXZWJDb3JlOjpUZXh0Q29udHJvbElubmVyVGV4dEVsZW1lbnQpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9UaGVtZVR5cGVzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL1RoZW1lVHlwZXMuY3BwCmluZGV4IGQ5ODk3ZTM4M2QyNDdlMmIzZWZmYWM4YjJmYTIz
NGFhODc1NDVjNjAuLjI3Mjg2MDE3MjE2NTdlZjQ2ODViYjI3NzI5ZmFkOGY5ZmI1OTBkZjcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1lVHlwZXMuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1lVHlwZXMuY3BwCkBAIC0zNCw2ICszNCw3IEBAIFRl
eHRTdHJlYW0mIG9wZXJhdG9yPDwoVGV4dFN0cmVhbSYgdHMsIENvbnRyb2xQYXJ0IGNvbnRyb2xQ
YXJ0KQogewogICAgIHN3aXRjaCAoY29udHJvbFBhcnQpIHsKICAgICBjYXNlIE5vQ29udHJvbFBh
cnQ6IHRzIDw8ICJuby1jb250cm9sLXBhcnQiOyBicmVhazsKKyAgICBjYXNlIEF1dG9QYXJ0OiB0
cyA8PCAiYXV0by1wYXJ0IjsgYnJlYWs7CiAgICAgY2FzZSBDaGVja2JveFBhcnQ6IHRzIDw8ICJj
aGVja2JveC1wYXJ0IjsgYnJlYWs7CiAgICAgY2FzZSBSYWRpb1BhcnQ6IHRzIDw8ICJyYWRpby1w
YXJ0IjsgYnJlYWs7CiAgICAgY2FzZSBQdXNoQnV0dG9uUGFydDogdHMgPDwgInB1c2gtYnV0dG9u
LXBhcnQiOyBicmVhazsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1l
VHlwZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1lVHlwZXMuaAppbmRleCA0ZTQ0
MDU1ZWIzY2I4ZjVhZDMyM2JjOWE4NTdkNzRjM2Y1ZTE5ZWI1Li5jZTdhZDkzZGI2ZWE4OTU2MGVi
YTBlMDhlYzlhOWUyYTQ2OGQ3NDJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9UaGVtZVR5cGVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGhlbWVUeXBlcy5o
CkBAIC0zNCw2ICszNCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIC8vIE11c3QgZm9sbG93IENT
U1ZhbHVlS2V5d29yZHMuaW4gb3JkZXIKIGVudW0gQ29udHJvbFBhcnQgewogICAgIE5vQ29udHJv
bFBhcnQsCisgICAgQXV0b1BhcnQsCiAgICAgQ2hlY2tib3hQYXJ0LAogICAgIFJhZGlvUGFydCwK
ICAgICBQdXNoQnV0dG9uUGFydCwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJUaGVtZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWUu
Y3BwCmluZGV4IGI5MDgyYjU2Nzc5NWYyY2Q1ZTRkNmE3NGQ3MDMzYTg1ZTg3MWMwNWMuLjQ1YTE2
NWZjMmI5MmRmNDM0NjJhNWYxOWVkYjIxNzEzODk4OTIzMDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclRoZW1lLmNwcApAQCAtMzQsOSArMzQsMTQgQEAKICNpbmNsdWRlICJGcmFt
ZS5oIgogI2luY2x1ZGUgIkZyYW1lU2VsZWN0aW9uLmgiCiAjaW5jbHVkZSAiR3JhcGhpY3NDb250
ZXh0LmgiCisjaW5jbHVkZSAiSFRNTEF0dGFjaG1lbnRFbGVtZW50LmgiCisjaW5jbHVkZSAiSFRN
TEJ1dHRvbkVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MSW5wdXRFbGVtZW50LmgiCiAjaW5jbHVk
ZSAiSFRNTE1ldGVyRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgorI2luY2x1ZGUg
IkhUTUxQcm9ncmVzc0VsZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1MU2VsZWN0RWxlbWVudC5oIgor
I2luY2x1ZGUgIkhUTUxUZXh0QXJlYUVsZW1lbnQuaCIKICNpbmNsdWRlICJMb2NhbGl6ZWRTdHJp
bmdzLmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBhaW50SW5mby5oIgpAQCAtNDQs
NiArNDksNyBAQAogI2luY2x1ZGUgIlJlbmRlclN0eWxlLmgiCiAjaW5jbHVkZSAiUmVuZGVyVmll
dy5oIgogI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKKyNpbmNsdWRlICJTbGlk
ZXJUaHVtYkVsZW1lbnQuaCIKICNpbmNsdWRlICJTcGluQnV0dG9uRWxlbWVudC5oIgogI2luY2x1
ZGUgIlN0cmluZ1RydW5jYXRvci5oIgogI2luY2x1ZGUgIlRleHRDb250cm9sSW5uZXJFbGVtZW50
cy5oIgpAQCAtNTMsNiArNTksNyBAQAogCiAKICNpZiBFTkFCTEUoREFUQUxJU1RfRUxFTUVOVCkK
KyNpbmNsdWRlICJEYXRhTGlzdEJ1dHRvbkVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MRGF0YUxp
c3RFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTE9wdGlvbkVsZW1lbnQuaCIKICNlbmRpZgpAQCAt
NzgsNyArODUsNiBAQCBSZW5kZXJUaGVtZTo6UmVuZGVyVGhlbWUoKQogdm9pZCBSZW5kZXJUaGVt
ZTo6YWRqdXN0U3R5bGUoUmVuZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBFbGVtZW50KiBlbGVtZW50
LCBjb25zdCBSZW5kZXJTdHlsZSogdXNlckFnZW50QXBwZWFyYW5jZVN0eWxlKQogewogICAgIC8v
IEZvcmNlIGlubGluZSBhbmQgdGFibGUgZGlzcGxheSBzdHlsZXMgdG8gYmUgaW5saW5lLWJsb2Nr
IChleGNlcHQgZm9yIHRhYmxlLSB3aGljaCBpcyBibG9jaykKLSAgICBDb250cm9sUGFydCBwYXJ0
ID0gc3R5bGUuYXBwZWFyYW5jZSgpOwogICAgIGlmIChzdHlsZS5kaXNwbGF5KCkgPT0gRGlzcGxh
eVR5cGU6OklubGluZSB8fCBzdHlsZS5kaXNwbGF5KCkgPT0gRGlzcGxheVR5cGU6OklubGluZVRh
YmxlIHx8IHN0eWxlLmRpc3BsYXkoKSA9PSBEaXNwbGF5VHlwZTo6VGFibGVSb3dHcm91cAogICAg
ICAgICB8fCBzdHlsZS5kaXNwbGF5KCkgPT0gRGlzcGxheVR5cGU6OlRhYmxlSGVhZGVyR3JvdXAg
fHwgc3R5bGUuZGlzcGxheSgpID09IERpc3BsYXlUeXBlOjpUYWJsZUZvb3Rlckdyb3VwCiAgICAg
ICAgIHx8IHN0eWxlLmRpc3BsYXkoKSA9PSBEaXNwbGF5VHlwZTo6VGFibGVSb3cgfHwgc3R5bGUu
ZGlzcGxheSgpID09IERpc3BsYXlUeXBlOjpUYWJsZUNvbHVtbkdyb3VwIHx8IHN0eWxlLmRpc3Bs
YXkoKSA9PSBEaXNwbGF5VHlwZTo6VGFibGVDb2x1bW4KQEAgLTg3LDIxICs5MywxNCBAQCB2b2lk
IFJlbmRlclRoZW1lOjphZGp1c3RTdHlsZShSZW5kZXJTdHlsZSYgc3R5bGUsIGNvbnN0IEVsZW1l
bnQqIGVsZW1lbnQsIGNvbnN0CiAgICAgZWxzZSBpZiAoc3R5bGUuZGlzcGxheSgpID09IERpc3Bs
YXlUeXBlOjpMaXN0SXRlbSB8fCBzdHlsZS5kaXNwbGF5KCkgPT0gRGlzcGxheVR5cGU6OlRhYmxl
KQogICAgICAgICBzdHlsZS5zZXRFZmZlY3RpdmVEaXNwbGF5KERpc3BsYXlUeXBlOjpCbG9jayk7
CiAKLSAgICBpZiAodXNlckFnZW50QXBwZWFyYW5jZVN0eWxlICYmIGlzQ29udHJvbFN0eWxlZChz
dHlsZSwgKnVzZXJBZ2VudEFwcGVhcmFuY2VTdHlsZSkpIHsKLSAgICAgICAgc3dpdGNoIChwYXJ0
KSB7Ci0gICAgICAgIGNhc2UgTWVudWxpc3RQYXJ0OgotICAgICAgICAgICAgc3R5bGUuc2V0RWZm
ZWN0aXZlQXBwZWFyYW5jZShNZW51bGlzdEJ1dHRvblBhcnQpOwotICAgICAgICAgICAgcGFydCA9
IE1lbnVsaXN0QnV0dG9uUGFydDsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBkZWZhdWx0
OgotICAgICAgICAgICAgc3R5bGUuc2V0RWZmZWN0aXZlQXBwZWFyYW5jZShOb0NvbnRyb2xQYXJ0
KTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAgfQorICAgIGFkanVzdEFwcGVh
cmFuY2Uoc3R5bGUsIGVsZW1lbnQsIHVzZXJBZ2VudEFwcGVhcmFuY2VTdHlsZSk7CiAKICAgICBp
ZiAoIXN0eWxlLmhhc0VmZmVjdGl2ZUFwcGVhcmFuY2UoKSkKICAgICAgICAgcmV0dXJuOwogCisg
ICAgYXV0byBwYXJ0ID0gc3R5bGUuZWZmZWN0aXZlQXBwZWFyYW5jZSgpOworICAgIEFTU0VSVChw
YXJ0ICE9IEF1dG9QYXJ0KTsKKwogICAgIGlmICghc3VwcG9ydHNCb3hTaGFkb3coc3R5bGUpKQog
ICAgICAgICBzdHlsZS5zZXRCb3hTaGFkb3cobnVsbHB0cik7CiAgICAgCkBAIC0yNzAsNiArMjY5
LDEzMCBAQCB2b2lkIFJlbmRlclRoZW1lOjphZGp1c3RTdHlsZShSZW5kZXJTdHlsZSYgc3R5bGUs
IGNvbnN0IEVsZW1lbnQqIGVsZW1lbnQsIGNvbnN0CiAgICAgfQogfQogCitDb250cm9sUGFydCBS
ZW5kZXJUaGVtZTo6YXV0b0FwcGVhcmFuY2VGb3JFbGVtZW50KGNvbnN0IEVsZW1lbnQmIGVsZW1l
bnQpIGNvbnN0Cit7CisgICAgaWYgKGlzPEhUTUxJbnB1dEVsZW1lbnQ+KGVsZW1lbnQpKSB7Cisg
ICAgICAgIGF1dG8mIGlucHV0ID0gZG93bmNhc3Q8SFRNTElucHV0RWxlbWVudD4oZWxlbWVudCk7
CisKKyAgICAgICAgaWYgKGlucHV0LmlzVGV4dEJ1dHRvbigpIHx8IGlucHV0LmlzVXBsb2FkQnV0
dG9uKCkpCisgICAgICAgICAgICByZXR1cm4gUHVzaEJ1dHRvblBhcnQ7CisKKyAgICAgICAgaWYg
KGlucHV0LmlzQ2hlY2tib3goKSkKKyAgICAgICAgICAgIHJldHVybiBDaGVja2JveFBhcnQ7CisK
KyAgICAgICAgaWYgKGlucHV0LmlzUmFkaW9CdXR0b24oKSkKKyAgICAgICAgICAgIHJldHVybiBS
YWRpb1BhcnQ7CisKKyAgICAgICAgaWYgKGlucHV0LmlzU2VhcmNoRmllbGQoKSkKKyAgICAgICAg
ICAgIHJldHVybiBTZWFyY2hGaWVsZFBhcnQ7CisKKyAgICAgICAgaWYgKGlucHV0LmlzRGF0ZUZp
ZWxkKCkgfHwgaW5wdXQuaXNEYXRlVGltZUxvY2FsRmllbGQoKSB8fCBpbnB1dC5pc01vbnRoRmll
bGQoKSB8fCBpbnB1dC5pc1RpbWVGaWVsZCgpIHx8IGlucHV0LmlzV2Vla0ZpZWxkKCkpIHsKKyNp
ZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgICAgICAgICAgcmV0dXJuIE1lbnVsaXN0QnV0dG9u
UGFydDsKKyNlbHNlCisgICAgICAgICAgICByZXR1cm4gVGV4dEZpZWxkUGFydDsKKyNlbmRpZgor
ICAgICAgICB9CisKKyNpZiBFTkFCTEUoSU5QVVRfVFlQRV9DT0xPUikKKyAgICAgICAgaWYgKGlu
cHV0LmlzQ29sb3JDb250cm9sKCkpCisgICAgICAgICAgICByZXR1cm4gQ29sb3JXZWxsUGFydDsK
KyNlbmRpZgorCisgICAgICAgIGlmIChpbnB1dC5pc1JhbmdlQ29udHJvbCgpKQorICAgICAgICAg
ICAgcmV0dXJuIFNsaWRlckhvcml6b250YWxQYXJ0OworCisgICAgICAgIGlmIChpbnB1dC5pc1Rl
eHRGaWVsZCgpKQorICAgICAgICAgICAgcmV0dXJuIFRleHRGaWVsZFBhcnQ7CisKKyAgICAgICAg
Ly8gPGlucHV0IHR5cGU9aGlkZGVufGltYWdlfGZpbGU+CisgICAgICAgIHJldHVybiBOb0NvbnRy
b2xQYXJ0OworICAgIH0KKworICAgIGlmIChpczxIVE1MQnV0dG9uRWxlbWVudD4oZWxlbWVudCkp
CisgICAgICAgIHJldHVybiBCdXR0b25QYXJ0OworCisgICAgaWYgKGlzPEhUTUxTZWxlY3RFbGVt
ZW50PihlbGVtZW50KSkgeworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgICAgIHJldHVy
biBNZW51bGlzdEJ1dHRvblBhcnQ7CisjZWxzZQorICAgICAgICBhdXRvJiBzZWxlY3QgPSBkb3du
Y2FzdDxIVE1MU2VsZWN0RWxlbWVudD4oZWxlbWVudCk7CisgICAgICAgIHJldHVybiBzZWxlY3Qu
dXNlc01lbnVMaXN0KCkgPyBNZW51bGlzdFBhcnQgOiBMaXN0Ym94UGFydDsKKyNlbmRpZgorICAg
IH0KKworICAgIGlmIChpczxIVE1MVGV4dEFyZWFFbGVtZW50PihlbGVtZW50KSkKKyAgICAgICAg
cmV0dXJuIFRleHRBcmVhUGFydDsKKworICAgIGlmIChpczxIVE1MTWV0ZXJFbGVtZW50PihlbGVt
ZW50KSkKKyAgICAgICAgcmV0dXJuIE1ldGVyUGFydDsKKworICAgIGlmIChpczxIVE1MUHJvZ3Jl
c3NFbGVtZW50PihlbGVtZW50KSkKKyAgICAgICAgcmV0dXJuIFByb2dyZXNzQmFyUGFydDsKKwor
I2lmIEVOQUJMRShBVFRBQ0hNRU5UX0VMRU1FTlQpCisgICAgaWYgKGlzPEhUTUxBdHRhY2htZW50
RWxlbWVudD4oZWxlbWVudCkpCisgICAgICAgIHJldHVybiBBdHRhY2htZW50UGFydDsKKyNlbmRp
ZgorCisgICAgaWYgKGVsZW1lbnQuaXNJblVzZXJBZ2VudFNoYWRvd1RyZWUoKSkgeworICAgICAg
ICBhdXRvJiBwc2V1ZG8gPSBlbGVtZW50LnNoYWRvd1BzZXVkb0lkKCk7CisKKyNpZiBFTkFCTEUo
REFUQUxJU1RfRUxFTUVOVCkKKyAgICAgICAgaWYgKHBzZXVkbyA9PSBEYXRhTGlzdEJ1dHRvbkVs
ZW1lbnQ6Omxpc3RCdXR0b25Qc2V1ZG9JZCgpKQorICAgICAgICAgICAgcmV0dXJuIExpc3RCdXR0
b25QYXJ0OworI2VuZGlmCisKKyAgICAgICAgaWYgKHBzZXVkbyA9PSBDYXBzTG9ja0luZGljYXRv
ckVsZW1lbnQ6OmNhcHNMb2NrSW5kaWNhdG9yUHNldWRvSWQoKSkKKyAgICAgICAgICAgIHJldHVy
biBDYXBzTG9ja0luZGljYXRvclBhcnQ7CisKKyAgICAgICAgaWYgKHBzZXVkbyA9PSBTZWFyY2hG
aWVsZENhbmNlbEJ1dHRvbkVsZW1lbnQ6OnNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uUHNldWRvSWQo
KSkKKyAgICAgICAgICAgIHJldHVybiBTZWFyY2hGaWVsZENhbmNlbEJ1dHRvblBhcnQ7CisKKyAg
ICAgICAgaWYgKHBzZXVkbyA9PSBTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50OjpzZWFy
Y2hEZWNvcmF0aW9uUHNldWRvSWQoKSkKKyAgICAgICAgICAgIHJldHVybiBTZWFyY2hGaWVsZERl
Y29yYXRpb25QYXJ0OworCisgICAgICAgIGlmIChwc2V1ZG8gPT0gU2VhcmNoRmllbGRSZXN1bHRz
QnV0dG9uRWxlbWVudDo6c2VhcmNoUmVzdWx0c0RlY29yYXRpb25Qc2V1ZG9JZCgpKQorICAgICAg
ICAgICAgcmV0dXJuIFNlYXJjaEZpZWxkUmVzdWx0c0RlY29yYXRpb25QYXJ0OworCisgICAgICAg
IGlmIChwc2V1ZG8gPT0gU2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudDo6c2VhcmNoUmVz
dWx0c0J1dHRvblBzZXVkb0lkKCkpCisgICAgICAgICAgICByZXR1cm4gU2VhcmNoRmllbGRSZXN1
bHRzQnV0dG9uUGFydDsKKworICAgICAgICBpZiAocHNldWRvID09IFNsaWRlclRodW1iRWxlbWVu
dDo6c2xpZGVyVGh1bWJQc2V1ZG9JZCgpIHx8IHBzZXVkbyA9PSBTbGlkZXJUaHVtYkVsZW1lbnQ6
Om1lZGlhU2xpZGVyVGh1bWJQc2V1ZG9JZCgpKQorICAgICAgICAgICAgcmV0dXJuIFNsaWRlclRo
dW1iSG9yaXpvbnRhbFBhcnQ7CisKKyAgICAgICAgaWYgKHBzZXVkbyA9PSBTcGluQnV0dG9uRWxl
bWVudDo6c3BpbkJ1dHRvblBzZXVkb0lkKCkpCisgICAgICAgICAgICByZXR1cm4gSW5uZXJTcGlu
QnV0dG9uUGFydDsKKyAgICB9CisKKyAgICByZXR1cm4gTm9Db250cm9sUGFydDsKK30KKwordm9p
ZCBSZW5kZXJUaGVtZTo6YWRqdXN0QXBwZWFyYW5jZShSZW5kZXJTdHlsZSYgc3R5bGUsIGNvbnN0
IEVsZW1lbnQqIGVsZW1lbnQsIGNvbnN0IFJlbmRlclN0eWxlKiB1c2VyQWdlbnRBcHBlYXJhbmNl
U3R5bGUpIGNvbnN0Cit7CisgICAgaWYgKCFlbGVtZW50KSB7CisgICAgICAgIHN0eWxlLnNldEVm
ZmVjdGl2ZUFwcGVhcmFuY2UoTm9Db250cm9sUGFydCk7CisgICAgICAgIHJldHVybjsKKyAgICB9
CisKKyAgICBhdXRvIGFwcGVhcmFuY2UgPSBzdHlsZS5hcHBlYXJhbmNlKCk7CisgICAgaWYgKGFw
cGVhcmFuY2UgPT0gQXV0b1BhcnQpCisgICAgICAgIGFwcGVhcmFuY2UgPSBhdXRvQXBwZWFyYW5j
ZUZvckVsZW1lbnQoKmVsZW1lbnQpOworCisgICAgaWYgKHVzZXJBZ2VudEFwcGVhcmFuY2VTdHls
ZSAmJiBpc0NvbnRyb2xTdHlsZWQoc3R5bGUsICp1c2VyQWdlbnRBcHBlYXJhbmNlU3R5bGUpKSB7
CisgICAgICAgIHN3aXRjaCAoYXBwZWFyYW5jZSkgeworICAgICAgICBjYXNlIE1lbnVsaXN0UGFy
dDoKKyAgICAgICAgICAgIGFwcGVhcmFuY2UgPSBNZW51bGlzdEJ1dHRvblBhcnQ7CisgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIGFwcGVhcmFuY2UgPSBO
b0NvbnRyb2xQYXJ0OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9CisKKyAg
ICBzdHlsZS5zZXRFZmZlY3RpdmVBcHBlYXJhbmNlKGFwcGVhcmFuY2UpOworfQorCiB2b2lkIFJl
bmRlclRoZW1lOjphZGp1c3RTZWFyY2hGaWVsZERlY29yYXRpb25TdHlsZShSZW5kZXJTdHlsZSYg
c3R5bGUsIGNvbnN0IEVsZW1lbnQqIGVsZW1lbnQpIGNvbnN0CiB7CiAgICAgaWYgKGlzPFNlYXJj
aEZpZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQ+KGVsZW1lbnQpICYmICFkb3duY2FzdDxTZWFyY2hG
aWVsZFJlc3VsdHNCdXR0b25FbGVtZW50PigqZWxlbWVudCkuY2FuQWRqdXN0U3R5bGVGb3JBcHBl
YXJhbmNlKCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJU
aGVtZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lLmgKaW5kZXggZTdl
NmViYjFiOWQxZWJiMTg4MDdmYjBhYTg5MTZmOWM4MDFmNzgzMS4uZmRjMTAxNzE1NDI2NDUzMTRi
YWM5ZTRiMDZlZmExNjgxNTk0MTVmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlclRoZW1lLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRo
ZW1lLmgKQEAgLTQ1NCw2ICs0NTQsOSBAQCBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCBDb2xvckNh
Y2hlJiBjb2xvckNhY2hlKE9wdGlvblNldDxTdHlsZUNvbG9yOjpPcHRpb25zPikgY29uc3Q7CiAK
IHByaXZhdGU6CisgICAgQ29udHJvbFBhcnQgYXV0b0FwcGVhcmFuY2VGb3JFbGVtZW50KGNvbnN0
IEVsZW1lbnQmKSBjb25zdDsKKyAgICB2b2lkIGFkanVzdEFwcGVhcmFuY2UoUmVuZGVyU3R5bGUm
LCBjb25zdCBFbGVtZW50KiwgY29uc3QgUmVuZGVyU3R5bGUqIHVzZXJBZ2VudEFwcGVhcmFuY2VT
dHlsZSkgY29uc3Q7CisKICAgICB2b2lkIGFkanVzdFNlYXJjaEZpZWxkRGVjb3JhdGlvblN0eWxl
KFJlbmRlclN0eWxlJiwgY29uc3QgRWxlbWVudCopIGNvbnN0OwogCiAgICAgbXV0YWJsZSBIYXNo
TWFwPHVpbnQ4X3QsIENvbG9yQ2FjaGUsIERlZmF1bHRIYXNoPHVpbnQ4X3Q+LCBXVEY6OlVuc2ln
bmVkV2l0aFplcm9LZXlIYXNoVHJhaXRzPHVpbnQ4X3Q+PiBtX2NvbG9yQ2FjaGVNYXA7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCBjODUyYTc0ODYxMzU2ZGRmZGFhNGFmMDIzZmQ3
OWI4MTYzYTdhODRhLi5iYzkwZjg2NmRmZmJjZWI3MzIzM2RjZDI2MTVjOTA5ZDI5MDEzYTNlIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMS0xMC0w
NCAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1
cHBvcnQgZm9yICctd2Via2l0LWFwcGVhcmFuY2U6IGF1dG8nCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzEyMDMKKyAgICAgICAgcmRhcjovLzgzNjk2
MTMzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy11aS9hcHBlYXJhbmNlLWNzc29tLTAwMS1leHBlY3Rl
ZC50eHQ6CisKKyAgICAgICAgTWFyayBwcm9ncmVzc2lvbi4KKwogMjAyMS0xMC0wMiAgTmlrb3Mg
TW91Y2h0YXJpcyAgPG5tb3VjaHRhcmlzQGFwcGxlLmNvbT4KIAogICAgICAgICBXUFRzIGZvciBo
eXBvdCxzcXJ0LHBvdyBjYWxjIGZ1bmN0aW9ucwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXVpL2FwcGVhcmFuY2UtY3Nzb20t
MDAxLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy11aS9hcHBlYXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQKaW5kZXgg
ZjY0NTc5NGM5NDY2MTA5ODJmMTdmODJkZjgxZTQ5M2Y1MjdmYzNlNC4uODhiZGQ5YzJiNjFiNTcw
ZTIwZjFmMzQ5MTY4MzNlOWZlNDEzMGM3NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXVpL2FwcGVhcmFuY2UtY3Nzb20tMDAx
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0CkBAIC0x
LDcgKzEsNyBAQAogVGVzdAogCiBQQVNTIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZQotRkFJTCAt
d2Via2l0LWFwcGVhcmFuY2U6IGF1dG8gYXNzZXJ0X2VxdWFsczogc3R5bGUuV2Via2l0QXBwZWFy
YW5jZSAodXBwZXJjYXNlIFcpIGV4cGVjdGVkICJhdXRvIiBidXQgZ290ICIiCitQQVNTIC13ZWJr
aXQtYXBwZWFyYW5jZTogYXV0bwogUEFTUyAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbgogUEFT
UyAtd2Via2l0LWFwcGVhcmFuY2U6IGNoZWNrYm94CiBQQVNTIC13ZWJraXQtYXBwZWFyYW5jZTog
bGlzdGJveAo=
</data>
<flag name="commit-queue"
          id="463977"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440143</attachid>
            <date>2021-10-04 18:53:39 -0700</date>
            <delta_ts>2021-10-05 11:44:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231203-20211004185338.patch</filename>
            <type>text/plain</type>
            <size>33312</size>
            <attacher name="Aditya Keerthi">akeerthi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzNDg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDdhODhiY2UyNjc0ZjZh
YmY3NGU4NmIwMDU3NDNjYjk4Y2YxYTgwNi4uNTNlNzg0MTI0MTJhMDZkMjY5MmU2OWUyNDk4Zjc5
ZDQxNzBlODg0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDc1IEBACisyMDIxLTEwLTA0ICBBZGl0
eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgc3VwcG9ydCBm
b3IgJy13ZWJraXQtYXBwZWFyYW5jZTogYXV0bycKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTIwMworICAgICAgICByZGFyOi8vODM2OTYxMzMKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgJ2FwcGVh
cmFuY2UnIHByb3BlcnR5IGFsbG93cyBhdXRob3JzIHRvIHVzZSB0aGUgJ2F1dG8nIGtleXdvcmQK
KyAgICAgICAgdG8gb3B0IHdpZGdldHMgKGFueSBlbGVtZW50IHRoYXQgY2FuIGhhdmUgYSBuYXRp
dmUgYXBwZWFyYW5jZSkgaW50bworICAgICAgICBhIG5hdGl2ZSBhcHBlYXJhbmNlIFsxXS4gRWxl
bWVudHMgb3RoZXIgdGhhbiB3aWRnZXRzIGFyZSByZW5kZXJlZAorICAgICAgICBhcyBpZiBub25l
IGhhZCBiZWVuIHNwZWNpZmllZC4KKworICAgICAgICBTaW5jZSAnLXdlYmtpdC1hcHBlYXJhbmNl
JyBpcyBhIHBhcnNlIHRpbWUgYWxpYXMgb2YgJ2FwcGVhcmFuY2UnLAorICAgICAgICBzdXBwb3J0
ICctd2Via2l0LWFwcGVhcmFuY2U6IGF1dG8nIHByaW9yIHRvIHVucHJlZml4aW5nLgorCisgICAg
ICAgIFRoZSB1c2VkLXZhbHVlIGZvciBhcHBlYXJhbmNlIChlZmZlY3RpdmVBcHBlYXJhbmNlKSBp
cyBkZXRlcm1pbmVkIGJ5CisgICAgICAgIHRoZSBlbGVtZW50IHRhZyBhbmQgdHlwZS4gSW4gdGhl
IGNhc2Ugb2YgZWxlbWVudHMgaW4gdGhlIFVBIHNoYWRvdworICAgICAgICB0cmVlLCB0aGUgcHNl
dWRvIGlkIGlzIHVzZWQgdG8gZGV0ZXJtaW5lIHRoZSBlZmZlY3RpdmUgYXBwZWFyYW5jZS4gVGhl
CisgICAgICAgIHVzZWQtdmFsdWVzIHdoZW4gc3BlY2lmeWluZyAnYXV0bycgbWF0Y2ggdGhlIGRl
ZmF1bHQgc3BlY2lmaWVkIHZhbHVlcworICAgICAgICBpbiB0aGUgVUEgc3R5bGUgc2hlZXQuCisK
KyAgICAgICAgTm90ZSB0aGF0IGFkZGl0aW9uYWwgdGVzdCBjb3ZlcmFnZSBleGlzdHMgaW4gdGhl
IGZvcm0gb2Ygd2ViIHBsYXRmb3JtCisgICAgICAgIHdlYiBwbGF0Zm9ybSB0ZXN0cywgYW5kIGlz
IGRlcGVuZGVudCBvbiB1bnByZWZpeGluZy4KKworICAgICAgICBbMV0gaHR0cHM6Ly93d3cudzMu
b3JnL1RSL2Nzcy11aS00LyN2YWxkZWYtYXBwZWFyYW5jZS1hdXRvCisKKyAgICAgICAgKiBjc3Mv
Q1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0
aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ByaW1p
dGl2ZVZhbHVlOjpvcGVyYXRvciBDb250cm9sUGFydCBjb25zdCk6CisgICAgICAgICogY3NzL0NT
U1Byb3BlcnRpZXMuanNvbjoKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1BhcnNlckZhc3RQYXRo
cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXJGYXN0UGF0aHM6OmlzVmFsaWRLZXl3
b3JkUHJvcGVydHlBbmRWYWx1ZSk6CisgICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNwcDoK
KyAgICAgICAgKiBodG1sL1NlYXJjaElucHV0VHlwZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp1
cGRhdGVSZXN1bHRCdXR0b25Qc2V1ZG9UeXBlKToKKyAgICAgICAgKiBodG1sL1RleHRGaWVsZElu
cHV0VHlwZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUZXh0RmllbGRJbnB1dFR5cGU6OmNyZWF0
ZVNoYWRvd1N1YnRyZWVBbmRVcGRhdGVJbm5lclRleHRFbGVtZW50RWRpdGFiaWxpdHkpOgorICAg
ICAgICAoV2ViQ29yZTo6VGV4dEZpZWxkSW5wdXRUeXBlOjpjcmVhdGVEYXRhTGlzdERyb3Bkb3du
SW5kaWNhdG9yKToKKyAgICAgICAgKiBodG1sL1RleHRGaWVsZElucHV0VHlwZS5oOgorICAgICAg
ICAqIGh0bWwvc2hhZG93L0RhdGFMaXN0QnV0dG9uRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpEYXRhTGlzdEJ1dHRvbkVsZW1lbnQ6Omxpc3RCdXR0b25Qc2V1ZG9JZCk6CisgICAgICAg
IChXZWJDb3JlOjpEYXRhTGlzdEJ1dHRvbkVsZW1lbnQ6OmNyZWF0ZSk6CisgICAgICAgICogaHRt
bC9zaGFkb3cvRGF0YUxpc3RCdXR0b25FbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9zaGFkb3cv
U2xpZGVyVGh1bWJFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNsaWRlclRodW1iRWxl
bWVudDo6c2xpZGVyVGh1bWJQc2V1ZG9JZCk6CisgICAgICAgIChXZWJDb3JlOjpTbGlkZXJUaHVt
YkVsZW1lbnQ6Om1lZGlhU2xpZGVyVGh1bWJQc2V1ZG9JZCk6CisgICAgICAgIChXZWJDb3JlOjpT
bGlkZXJUaHVtYkVsZW1lbnQ6OnJlc29sdmVDdXN0b21TdHlsZSk6CisgICAgICAgICogaHRtbC9z
aGFkb3cvU2xpZGVyVGh1bWJFbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9zaGFkb3cvU3BpbkJ1
dHRvbkVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3BpbkJ1dHRvbkVsZW1lbnQ6OnNw
aW5CdXR0b25Qc2V1ZG9JZCk6CisgICAgICAgIChXZWJDb3JlOjpTcGluQnV0dG9uRWxlbWVudDo6
Y3JlYXRlKToKKyAgICAgICAgKiBodG1sL3NoYWRvdy9TcGluQnV0dG9uRWxlbWVudC5oOgorICAg
ICAgICAqIGh0bWwvc2hhZG93L1RleHRDb250cm9sSW5uZXJFbGVtZW50cy5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50OjpzZWFyY2hEZWNvcmF0
aW9uUHNldWRvSWQpOgorICAgICAgICAoV2ViQ29yZTo6U2VhcmNoRmllbGRSZXN1bHRzQnV0dG9u
RWxlbWVudDo6c2VhcmNoUmVzdWx0c0RlY29yYXRpb25Qc2V1ZG9JZCk6CisgICAgICAgIChXZWJD
b3JlOjpTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50OjpzZWFyY2hSZXN1bHRzQnV0dG9u
UHNldWRvSWQpOgorICAgICAgICAoV2ViQ29yZTo6U2VhcmNoRmllbGRDYW5jZWxCdXR0b25FbGVt
ZW50OjpzZWFyY2hGaWVsZENhbmNlbEJ1dHRvblBzZXVkb0lkKToKKyAgICAgICAgKFdlYkNvcmU6
OlNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uRWxlbWVudDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNv
cmU6OkNhcHNMb2NrSW5kaWNhdG9yRWxlbWVudDo6Q2Fwc0xvY2tJbmRpY2F0b3JFbGVtZW50KToK
KyAgICAgICAgKFdlYkNvcmU6OkNhcHNMb2NrSW5kaWNhdG9yRWxlbWVudDo6Y2Fwc0xvY2tJbmRp
Y2F0b3JQc2V1ZG9JZCk6CisgICAgICAgIChXZWJDb3JlOjpDYXBzTG9ja0luZGljYXRvckVsZW1l
bnQ6OmNyZWF0ZSk6CisgICAgICAgICogaHRtbC9zaGFkb3cvVGV4dENvbnRyb2xJbm5lckVsZW1l
bnRzLmg6CisgICAgICAgICogcGxhdGZvcm0vVGhlbWVUeXBlcy5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpvcGVyYXRvcjw8KToKKyAgICAgICAgKiBwbGF0Zm9ybS9UaGVtZVR5cGVzLmg6CisgICAg
ICAgICogcmVuZGVyaW5nL1JlbmRlclRoZW1lLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
clRoZW1lOjphZGp1c3RTdHlsZSk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZTo6YXV0
b0FwcGVhcmFuY2VGb3JFbGVtZW50IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRo
ZW1lOjphZGp1c3RBcHBlYXJhbmNlIGNvbnN0KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVy
VGhlbWUuaDoKKwogMjAyMS0wOS0yMiAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5j
b20+CiAKICAgICAgICAgW2lPU10gVHJhbnNjb2RlIHZpZGVvcyBzZWxlY3RlZCBmcm9tIFVJSW1h
Z2VQaWNrZXJDb250cm9sbGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJp
bWl0aXZlVmFsdWVNYXBwaW5ncy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZh
bHVlTWFwcGluZ3MuaAppbmRleCBjNDNkYjBiZDI5NTUyYjU4YTM0MTNlOTg4OWM5YWM3NTA4OTJh
MGZhLi5mNjRiYjE2NGI5NjNlYzE4MjhkMDRlOTc2MjljNTNlMjRjMDdjMDk5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKQEAgLTQyMyw2ICs0
MjMsOSBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZl
VmFsdWUoQ29udHJvbFBhcnQgZSkKICAgICBjYXNlIE5vQ29udHJvbFBhcnQ6CiAgICAgICAgIG1f
dmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlTm9uZTsKICAgICAgICAgYnJlYWs7CisgICAgY2FzZSBB
dXRvUGFydDoKKyAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVBdXRvOworICAgICAg
ICBicmVhazsKICAgICBjYXNlIENoZWNrYm94UGFydDoKICAgICAgICAgbV92YWx1ZS52YWx1ZUlE
ID0gQ1NTVmFsdWVDaGVja2JveDsKICAgICAgICAgYnJlYWs7CkBAIC02MjksNyArNjMyLDExIEBA
IHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBDb250cm9sUGFy
dCgpIGNvbnN0CiAKICAgICBpZiAobV92YWx1ZS52YWx1ZUlEID09IENTU1ZhbHVlTm9uZSkKICAg
ICAgICAgcmV0dXJuIE5vQ29udHJvbFBhcnQ7Ci0gICAgcmV0dXJuIENvbnRyb2xQYXJ0KG1fdmFs
dWUudmFsdWVJRCAtIENTU1ZhbHVlQ2hlY2tib3ggKyAxKTsKKworICAgIGlmIChtX3ZhbHVlLnZh
bHVlSUQgPT0gQ1NTVmFsdWVBdXRvKQorICAgICAgICByZXR1cm4gQXV0b1BhcnQ7CisKKyAgICBy
ZXR1cm4gQ29udHJvbFBhcnQobV92YWx1ZS52YWx1ZUlEIC0gQ1NTVmFsdWVDaGVja2JveCArIENo
ZWNrYm94UGFydCk7CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpD
U1NQcmltaXRpdmVWYWx1ZShCYWNrZmFjZVZpc2liaWxpdHkgZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24gYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UHJvcGVydGllcy5qc29uCmluZGV4IDA2MWYzOWE1YjFiNzJlNmUxYWM3ZWMxODE1NWM5ZmZkYmI1
NjJlODIuLmUwZjAzZWY1N2JmYjdiNmUwZDNjNzYxMTFiNTk2NjY3YzAzZTM1YWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24KKysrIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgpAQCAtNDk4OCw2ICs0OTg4LDcgQEAKICAgICAg
ICAgICAgICAgICAiY2Fwcy1sb2NrLWluZGljYXRvciIsCiAgICAgICAgICAgICAgICAgImNvbG9y
LXdlbGwiLAogICAgICAgICAgICAgICAgICJsaXN0LWJ1dHRvbiIsCisgICAgICAgICAgICAgICAg
ImF1dG8iLAogICAgICAgICAgICAgICAgICJub25lIgogICAgICAgICAgICAgXSwKICAgICAgICAg
ICAgICJzdGF0dXMiOiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NT
U1BhcnNlckZhc3RQYXRocy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1BhcnNl
ckZhc3RQYXRocy5jcHAKaW5kZXggMjJkZmNjMzNkM2I3OGViNzIyYjVjMDg1ODdkOTVjNTI2Yzcz
OWNlYy4uZTZjMTAwNWE2ZjQ1OGU3NTU4NmYyMjA5ZGJiZTk2MjVkMDYzMTVlNCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQYXJzZXJGYXN0UGF0aHMuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUGFyc2VyRmFzdFBhdGhzLmNwcApAQCAtNzU0
LDcgKzc1NCw3IEBAIGJvb2wgQ1NTUGFyc2VyRmFzdFBhdGhzOjppc1ZhbGlkS2V5d29yZFByb3Bl
cnR5QW5kVmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlkCiAgICAgY2FzZSBDU1NQcm9wZXJ0
eVZpc2liaWxpdHk6IC8vIHZpc2libGUgfCBoaWRkZW4gfCBjb2xsYXBzZQogICAgICAgICByZXR1
cm4gdmFsdWVJRCA9PSBDU1NWYWx1ZVZpc2libGUgfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZUhpZGRl
biB8fCB2YWx1ZUlEID09IENTU1ZhbHVlQ29sbGFwc2U7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdl
YmtpdEFwcGVhcmFuY2U6Ci0gICAgICAgIHJldHVybiAodmFsdWVJRCA+PSBDU1NWYWx1ZUNoZWNr
Ym94ICYmIHZhbHVlSUQgPD0gQ1NTVmFsdWVDYXBzTG9ja0luZGljYXRvcikgfHwgdmFsdWVJRCA9
PSBDU1NWYWx1ZU5vbmU7CisgICAgICAgIHJldHVybiAodmFsdWVJRCA+PSBDU1NWYWx1ZUNoZWNr
Ym94ICYmIHZhbHVlSUQgPD0gQ1NTVmFsdWVDYXBzTG9ja0luZGljYXRvcikgfHwgdmFsdWVJRCA9
PSBDU1NWYWx1ZU5vbmUgfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZUF1dG87CiAgICAgY2FzZSBDU1NQ
cm9wZXJ0eUJhY2tmYWNlVmlzaWJpbGl0eToKICAgICAgICAgcmV0dXJuIHZhbHVlSUQgPT0gQ1NT
VmFsdWVWaXNpYmxlIHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVIaWRkZW47CiAjaWYgRU5BQkxFKENT
U19DT01QT1NJVElORykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0
VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwCmluZGV4IGUw
ZmY1Mzk2M2I1NzBjYjFkZmZkMzA0OTE5Y2RhZjdjNGExMzc0MDQuLmQwZjFhOTVhMWJkYzlhMDQ4
ODJmYjMwMTE1MWFmNTQxMGYwNmQ2MzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
RmlsZUlucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBl
LmNwcApAQCAtNjYsNiArNjYsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHVzaW5nIG5hbWVz
cGFjZSBIVE1MTmFtZXM7CiAKKy8vIEZJWE1FOiBUaGlzIGNhbiBsaWtlbHkgYmUgYW4gSFRNTERp
dkVsZW1lbnQuCiBjbGFzcyBVcGxvYWRCdXR0b25FbGVtZW50IGZpbmFsIDogcHVibGljIEhUTUxJ
bnB1dEVsZW1lbnQgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU5MSU5FKFVwbG9hZEJ1
dHRvbkVsZW1lbnQpOwogcHVibGljOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9T
ZWFyY2hJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9TZWFyY2hJbnB1dFR5cGUu
Y3BwCmluZGV4IGI1NWEwZjU3OWFmMGQ2ZjU5M2RjYjI5ZWRmM2I5MWJhNzBjOGJhMjUuLjE2OTg0
ZDk0MTE4NmI5YTFhYTlhMDk3MjA5MjMzYzEwNDUwMzRiNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvU2VhcmNoSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L1NlYXJjaElucHV0VHlwZS5jcHAKQEAgLTY5LDExICs2OSwxMSBAQCBzdGF0aWMgdm9pZCB1cGRh
dGVSZXN1bHRCdXR0b25Qc2V1ZG9UeXBlKFNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQm
IHJlc3VsdAogICAgIHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRvbVN0
cmluZz4gd2Via2l0U2VhcmNoUmVzdWx0c0RlY29yYXRpb25OYW1lKCItd2Via2l0LXNlYXJjaC1y
ZXN1bHRzLWRlY29yYXRpb24iLCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7CiAg
ICAgc3RhdGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiB3ZWJr
aXRTZWFyY2hSZXN1bHRzQnV0dG9uTmFtZSgiLXdlYmtpdC1zZWFyY2gtcmVzdWx0cy1idXR0b24i
LCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7CiAgICAgaWYgKCFtYXhSZXN1bHRz
KQotICAgICAgICByZXN1bHRCdXR0b24uc2V0UHNldWRvKHdlYmtpdFNlYXJjaFJlc3VsdHNEZWNv
cmF0aW9uTmFtZSk7CisgICAgICAgIHJlc3VsdEJ1dHRvbi5zZXRQc2V1ZG8oU2VhcmNoRmllbGRS
ZXN1bHRzQnV0dG9uRWxlbWVudDo6c2VhcmNoUmVzdWx0c0RlY29yYXRpb25Qc2V1ZG9JZCgpKTsK
ICAgICBlbHNlIGlmIChtYXhSZXN1bHRzIDwgMCkKLSAgICAgICAgcmVzdWx0QnV0dG9uLnNldFBz
ZXVkbyh3ZWJraXRTZWFyY2hEZWNvcmF0aW9uTmFtZSk7CisgICAgICAgIHJlc3VsdEJ1dHRvbi5z
ZXRQc2V1ZG8oU2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudDo6c2VhcmNoRGVjb3JhdGlv
blBzZXVkb0lkKCkpOwogICAgIGVsc2UKLSAgICAgICAgcmVzdWx0QnV0dG9uLnNldFBzZXVkbyh3
ZWJraXRTZWFyY2hSZXN1bHRzQnV0dG9uTmFtZSk7CisgICAgICAgIHJlc3VsdEJ1dHRvbi5zZXRQ
c2V1ZG8oU2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudDo6c2VhcmNoUmVzdWx0c0J1dHRv
blBzZXVkb0lkKCkpOwogfQogCiB2b2lkIFNlYXJjaElucHV0VHlwZTo6YXR0cmlidXRlQ2hhbmdl
ZChjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9UZXh0RmllbGRJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9UZXh0Rmll
bGRJbnB1dFR5cGUuY3BwCmluZGV4IDFlNTM1ZTdiMTExZmIyNGYzY2ZiNThkZjUwOWE5ZDEwMDIz
MmI0MTEuLmVjZTgyNTUxMTEwNjVlYWY3ODU3Y2U3M2RkMjBhNGJmMGYxZmY2MmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL1RleHRGaWVsZElucHV0VHlwZS5jcHAKQEAgLTM0OCw5ICszNDgsNyBA
QCB2b2lkIFRleHRGaWVsZElucHV0VHlwZTo6Y3JlYXRlU2hhZG93U3VidHJlZUFuZFVwZGF0ZUlu
bmVyVGV4dEVsZW1lbnRFZGl0YWJpbGl0eQogICAgIH0KIAogICAgIGlmIChzaG91bGRIYXZlQ2Fw
c0xvY2tJbmRpY2F0b3IpIHsKLSAgICAgICAgc3RhdGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3ll
ZDxjb25zdCBBdG9tU3RyaW5nPiB3ZWJraXRDYXBzTG9ja0luZGljYXRvck5hbWUoIi13ZWJraXQt
Y2Fwcy1sb2NrLWluZGljYXRvciIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsK
LSAgICAgICAgbV9jYXBzTG9ja0luZGljYXRvciA9IEhUTUxEaXZFbGVtZW50OjpjcmVhdGUoZG9j
dW1lbnQpOwotICAgICAgICBtX2NhcHNMb2NrSW5kaWNhdG9yLT5zZXRQc2V1ZG8od2Via2l0Q2Fw
c0xvY2tJbmRpY2F0b3JOYW1lKTsKKyAgICAgICAgbV9jYXBzTG9ja0luZGljYXRvciA9IENhcHNM
b2NrSW5kaWNhdG9yRWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50KTsKIAogICAgICAgICBib29sIHNo
b3VsZERyYXdDYXBzTG9ja0luZGljYXRvciA9IHRoaXMtPnNob3VsZERyYXdDYXBzTG9ja0luZGlj
YXRvcigpOwogICAgICAgICBtX2NhcHNMb2NrSW5kaWNhdG9yLT5zZXRJbmxpbmVTdHlsZVByb3Bl
cnR5KENTU1Byb3BlcnR5RGlzcGxheSwgc2hvdWxkRHJhd0NhcHNMb2NrSW5kaWNhdG9yID8gQ1NT
VmFsdWVCbG9jayA6IENTU1ZhbHVlTm9uZSwgdHJ1ZSk7CkBAIC00NTYsMTEgKzQ1NCw5IEBAIHZv
aWQgVGV4dEZpZWxkSW5wdXRUeXBlOjpjcmVhdGVEYXRhTGlzdERyb3Bkb3duSW5kaWNhdG9yKCkK
ICAgICBpZiAoIW1fY29udGFpbmVyKQogICAgICAgICBjcmVhdGVDb250YWluZXIoKTsKIAotICAg
IHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRvbVN0cmluZz4gd2Via2l0
TGlzdEJ1dHRvbk5hbWUoIi13ZWJraXQtbGlzdC1idXR0b24iLCBBdG9tU3RyaW5nOjpDb25zdHJ1
Y3RGcm9tTGl0ZXJhbCk7CiAgICAgU2NyaXB0RGlzYWxsb3dlZFNjb3BlOjpFdmVudEFsbG93ZWRT
Y29wZSBhbGxvd2VkU2NvcGUoKm1fY29udGFpbmVyKTsKICAgICBtX2RhdGFMaXN0RHJvcGRvd25J
bmRpY2F0b3IgPSBEYXRhTGlzdEJ1dHRvbkVsZW1lbnQ6OmNyZWF0ZShlbGVtZW50KCktPmRvY3Vt
ZW50KCksICp0aGlzKTsKICAgICBtX2NvbnRhaW5lci0+YXBwZW5kQ2hpbGQoKm1fZGF0YUxpc3RE
cm9wZG93bkluZGljYXRvcik7Ci0gICAgbV9kYXRhTGlzdERyb3Bkb3duSW5kaWNhdG9yLT5zZXRQ
c2V1ZG8od2Via2l0TGlzdEJ1dHRvbk5hbWUpOwogICAgIG1fZGF0YUxpc3REcm9wZG93bkluZGlj
YXRvci0+c2V0SW5saW5lU3R5bGVQcm9wZXJ0eShDU1NQcm9wZXJ0eURpc3BsYXksIENTU1ZhbHVl
Tm9uZSwgdHJ1ZSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZp
ZWxkSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1RleHRGaWVsZElucHV0VHlwZS5o
CmluZGV4IDY1NWRhNzc3ZWVmZjQwOTdkOTM0MmViNjJjYWNjZjJjNTFmNjAwMTMuLjIxOWUyNjZj
ZjgwN2IwZTkzMjBlZjllMjQwZmNlMTg5YTMzZGQxN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9U
ZXh0RmllbGRJbnB1dFR5cGUuaApAQCAtNDAsNiArNDAsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKK2NsYXNzIENhcHNMb2NrSW5kaWNhdG9yRWxlbWVudDsKIGNsYXNzIERPTUZvcm1EYXRh
OwogY2xhc3MgVGV4dENvbnRyb2xJbm5lclRleHRFbGVtZW50OwogCkBAIC0xNTEsNyArMTUyLDcg
QEAgcHJpdmF0ZToKICAgICBSZWZQdHI8VGV4dENvbnRyb2xJbm5lclRleHRFbGVtZW50PiBtX2lu
bmVyVGV4dDsKICAgICBSZWZQdHI8SFRNTEVsZW1lbnQ+IG1fcGxhY2Vob2xkZXI7CiAgICAgUmVm
UHRyPFNwaW5CdXR0b25FbGVtZW50PiBtX2lubmVyU3BpbkJ1dHRvbjsKLSAgICBSZWZQdHI8SFRN
TEVsZW1lbnQ+IG1fY2Fwc0xvY2tJbmRpY2F0b3I7CisgICAgUmVmUHRyPENhcHNMb2NrSW5kaWNh
dG9yRWxlbWVudD4gbV9jYXBzTG9ja0luZGljYXRvcjsKICAgICBSZWZQdHI8SFRNTEVsZW1lbnQ+
IG1fYXV0b0ZpbGxCdXR0b247CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L3NoYWRvdy9EYXRhTGlzdEJ1dHRvbkVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9z
aGFkb3cvRGF0YUxpc3RCdXR0b25FbGVtZW50LmNwcAppbmRleCA3OTJjYzcyMjhkYTk3NTQyMmUx
OWI1N2E3ZDY1OWM5ZDA1ODU5ZjRmLi5lZjU3NWQ1NDc4Nzg1YWIyMmZmOTk3Nzg3NGJjZThlMzNl
MTAzYTc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9EYXRhTGlzdEJ1
dHRvbkVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0RhdGFMaXN0
QnV0dG9uRWxlbWVudC5jcHAKQEAgLTQwLDkgKzQwLDE3IEBAIFdURl9NQUtFX0lTT19BTExPQ0FU
RURfSU1QTChEYXRhTGlzdEJ1dHRvbkVsZW1lbnQpOwogCiB1c2luZyBuYW1lc3BhY2UgSFRNTE5h
bWVzOwogCitjb25zdCBBdG9tU3RyaW5nJiBEYXRhTGlzdEJ1dHRvbkVsZW1lbnQ6Omxpc3RCdXR0
b25Qc2V1ZG9JZCgpCit7CisgICAgc3RhdGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3llZDxjb25z
dCBBdG9tU3RyaW5nPiBsaXN0QnV0dG9uUHNldWRvSWQoIi13ZWJraXQtbGlzdC1idXR0b24iLCBB
dG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7CisgICAgcmV0dXJuIGxpc3RCdXR0b25Q
c2V1ZG9JZDsKK30KKwogUmVmPERhdGFMaXN0QnV0dG9uRWxlbWVudD4gRGF0YUxpc3RCdXR0b25F
bGVtZW50OjpjcmVhdGUoRG9jdW1lbnQmIGRvY3VtZW50LCBEYXRhTGlzdEJ1dHRvbk93bmVyJiBv
d25lcikKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBEYXRhTGlzdEJ1dHRvbkVsZW1lbnQo
ZG9jdW1lbnQsIG93bmVyKSk7CisgICAgYXV0byBlbGVtZW50ID0gYWRvcHRSZWYoKm5ldyBEYXRh
TGlzdEJ1dHRvbkVsZW1lbnQoZG9jdW1lbnQsIG93bmVyKSk7CisgICAgZWxlbWVudC0+c2V0UHNl
dWRvKGxpc3RCdXR0b25Qc2V1ZG9JZCgpKTsKKyAgICByZXR1cm4gZWxlbWVudDsKIH0KIAogRGF0
YUxpc3RCdXR0b25FbGVtZW50OjpEYXRhTGlzdEJ1dHRvbkVsZW1lbnQoRG9jdW1lbnQmIGRvY3Vt
ZW50LCBEYXRhTGlzdEJ1dHRvbk93bmVyJiBvd25lcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvc2hhZG93L0RhdGFMaXN0QnV0dG9uRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9zaGFkb3cvRGF0YUxpc3RCdXR0b25FbGVtZW50LmgKaW5kZXggZmQ5NTg2NGFiN2IxYjcy
ZGI0NTg3Y2VkZDJlM2YxZDljMmIyOGVhOC4uNDlkMWM5MTJlNDViN2EzNWE3OWI2ZDg2NWU5NTky
ODg4YmE4ZGE1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0YUxp
c3RCdXR0b25FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0YUxp
c3RCdXR0b25FbGVtZW50LmgKQEAgLTQ0LDYgKzQ0LDggQEAgcHVibGljOgogCiAgICAgfkRhdGFM
aXN0QnV0dG9uRWxlbWVudCgpOwogCisgICAgc3RhdGljIGNvbnN0IEF0b21TdHJpbmcmIGxpc3RC
dXR0b25Qc2V1ZG9JZCgpOworCiAgICAgc3RhdGljIFJlZjxEYXRhTGlzdEJ1dHRvbkVsZW1lbnQ+
IGNyZWF0ZShEb2N1bWVudCYsIERhdGFMaXN0QnV0dG9uT3duZXImKTsKIAogcHJpdmF0ZToKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NsaWRlclRodW1iRWxlbWVudC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9TbGlkZXJUaHVtYkVsZW1lbnQuY3BwCmlu
ZGV4IGRiYWE4ZDk1ZjM2MTM4Mjc0MTNlMDFkYzY2Y2YxZTFlNjVhYjZiNTQuLmI4NDRmZmY2Njhh
NDgzMjkwYmM2NzE3ZmFkYzc3MWM1ZWI2MzhhNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvc2hhZG93L1NsaWRlclRodW1iRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9zaGFkb3cvU2xpZGVyVGh1bWJFbGVtZW50LmNwcApAQCAtMjEzLDYgKzIxMywxOCBAQCBT
bGlkZXJUaHVtYkVsZW1lbnQ6OlNsaWRlclRodW1iRWxlbWVudChEb2N1bWVudCYgZG9jdW1lbnQp
CiAgICAgc2V0SGFzQ3VzdG9tU3R5bGVSZXNvbHZlQ2FsbGJhY2tzKCk7CiB9CiAKK2NvbnN0IEF0
b21TdHJpbmcmIFNsaWRlclRodW1iRWxlbWVudDo6c2xpZGVyVGh1bWJQc2V1ZG9JZCgpCit7Cisg
ICAgc3RhdGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiBzbGlk
ZXJUaHVtYlBzZXVkb0lkKCItd2Via2l0LXNsaWRlci10aHVtYiIsIEF0b21TdHJpbmc6OkNvbnN0
cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gc2xpZGVyVGh1bWJQc2V1ZG9JZDsKK30KKwor
Y29uc3QgQXRvbVN0cmluZyYgU2xpZGVyVGh1bWJFbGVtZW50OjptZWRpYVNsaWRlclRodW1iUHNl
dWRvSWQoKQoreworICAgIHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRv
bVN0cmluZz4gbWVkaWFTbGlkZXJUaHVtYlBzZXVkb0lkKCItd2Via2l0LW1lZGlhLXNsaWRlci10
aHVtYiIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gbWVk
aWFTbGlkZXJUaHVtYlBzZXVkb0lkOworfQorCiB2b2lkIFNsaWRlclRodW1iRWxlbWVudDo6c2V0
UG9zaXRpb25Gcm9tVmFsdWUoKQogewogICAgIC8vIFNpbmNlIHRoZSBjb2RlIHRvIGNhbGN1bGF0
ZSBwb3NpdGlvbiBpcyBpbiB0aGUgUmVuZGVyU2xpZGVyVGh1bWIgbGF5b3V0CkBAIC01ODksOSAr
NjAxLDYgQEAgc3RkOjpvcHRpb25hbDxTdHlsZTo6RWxlbWVudFN0eWxlPiBTbGlkZXJUaHVtYkVs
ZW1lbnQ6OnJlc29sdmVDdXN0b21TdHlsZShjb25zdAogewogICAgIC8vIFRoaXMgZG9lc24ndCBh
Y3R1YWxseSBjb21wdXRlIHN0eWxlLiBUaGlzIGlzIGp1c3QgYSBoYWNrIHRvIHBpY2sgc2hhZG93
IHBzZXVkbyBpZCB3aGVuIGhvc3Qgc3R5bGUgaXMga25vd24uCiAKLSAgICBzdGF0aWMgTWFpblRo
cmVhZE5ldmVyRGVzdHJveWVkPGNvbnN0IEF0b21TdHJpbmc+IHNsaWRlclRodW1iU2hhZG93UHNl
dWRvSWQoIi13ZWJraXQtc2xpZGVyLXRodW1iIiwgQXRvbVN0cmluZzo6Q29uc3RydWN0RnJvbUxp
dGVyYWwpOwotICAgIHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRvbVN0
cmluZz4gbWVkaWFTbGlkZXJUaHVtYlNoYWRvd1BzZXVkb0lkKCItd2Via2l0LW1lZGlhLXNsaWRl
ci10aHVtYiIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKLQogICAgIGlmICgh
aG9zdFN0eWxlKQogICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwogCkBAIC02MDIsMTAgKzYx
MSwxMCBAQCBzdGQ6Om9wdGlvbmFsPFN0eWxlOjpFbGVtZW50U3R5bGU+IFNsaWRlclRodW1iRWxl
bWVudDo6cmVzb2x2ZUN1c3RvbVN0eWxlKGNvbnN0CiAgICAgY2FzZSBNZWRpYVZvbHVtZVNsaWRl
clRodW1iUGFydDoKICAgICBjYXNlIE1lZGlhRnVsbFNjcmVlblZvbHVtZVNsaWRlclBhcnQ6CiAg
ICAgY2FzZSBNZWRpYUZ1bGxTY3JlZW5Wb2x1bWVTbGlkZXJUaHVtYlBhcnQ6Ci0gICAgICAgIG1f
c2hhZG93UHNldWRvSWQgPSBtZWRpYVNsaWRlclRodW1iU2hhZG93UHNldWRvSWQ7CisgICAgICAg
IG1fc2hhZG93UHNldWRvSWQgPSBtZWRpYVNsaWRlclRodW1iUHNldWRvSWQoKTsKICAgICAgICAg
YnJlYWs7CiAgICAgZGVmYXVsdDoKLSAgICAgICAgbV9zaGFkb3dQc2V1ZG9JZCA9IHNsaWRlclRo
dW1iU2hhZG93UHNldWRvSWQ7CisgICAgICAgIG1fc2hhZG93UHNldWRvSWQgPSBzbGlkZXJUaHVt
YlBzZXVkb0lkKCk7CiAgICAgfQogCiAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NsaWRlclRodW1iRWxlbWVudC5oIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvU2xpZGVyVGh1bWJFbGVtZW50LmgKaW5kZXggYjNjZGVi
YTU2N2U5NWY5NWJmNGY4OWFkOTUzZjVkMmQyY2MzNjNiNS4uZTM3ZDNiYTU2Y2ExYzU1MjZjMGJj
ODEwMGRjMmI0NWE5NTk1MDRmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFk
b3cvU2xpZGVyVGh1bWJFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cv
U2xpZGVyVGh1bWJFbGVtZW50LmgKQEAgLTQzLDYgKzQzLDkgQEAgY2xhc3MgVG91Y2hFdmVudDsK
IGNsYXNzIFNsaWRlclRodW1iRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBIVE1MRGl2RWxlbWVudCB7
CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChTbGlkZXJUaHVtYkVsZW1lbnQpOwogcHVibGlj
OgorICAgIHN0YXRpYyBjb25zdCBBdG9tU3RyaW5nJiBzbGlkZXJUaHVtYlBzZXVkb0lkKCk7Cisg
ICAgc3RhdGljIGNvbnN0IEF0b21TdHJpbmcmIG1lZGlhU2xpZGVyVGh1bWJQc2V1ZG9JZCgpOwor
CiAgICAgc3RhdGljIFJlZjxTbGlkZXJUaHVtYkVsZW1lbnQ+IGNyZWF0ZShEb2N1bWVudCYpOwog
CiAgICAgdm9pZCBzZXRQb3NpdGlvbkZyb21WYWx1ZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9zaGFkb3cvU3BpbkJ1dHRvbkVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9zaGFkb3cvU3BpbkJ1dHRvbkVsZW1lbnQuY3BwCmluZGV4IGQ5MDQyNDBmM2RiYTA2ODQw
YTA0ZWI2YTNjYTcwYmJhNmY4ZmFiZTkuLjdhYWI0ZTZjN2Q2ZTQ3NzQ2MmZiYWQ5MTY0MzI4YmQ3
YjgyMmUyZGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NwaW5CdXR0
b25FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9TcGluQnV0dG9u
RWxlbWVudC5jcHAKQEAgLTU4LDExICs1OCwxNiBAQCBpbmxpbmUgU3BpbkJ1dHRvbkVsZW1lbnQ6
OlNwaW5CdXR0b25FbGVtZW50KERvY3VtZW50JiBkb2N1bWVudCwgU3BpbkJ1dHRvbk93bmVyJgog
ICAgIHNldEhhc0N1c3RvbVN0eWxlUmVzb2x2ZUNhbGxiYWNrcygpOwogfQogCitjb25zdCBBdG9t
U3RyaW5nJiBTcGluQnV0dG9uRWxlbWVudDo6c3BpbkJ1dHRvblBzZXVkb0lkKCkKK3sKKyAgICBz
dGF0aWMgTWFpblRocmVhZE5ldmVyRGVzdHJveWVkPGNvbnN0IEF0b21TdHJpbmc+IHNwaW5CdXR0
b25Qc2V1ZG9JZCgiLXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiIsIEF0b21TdHJpbmc6OkNvbnN0
cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gc3BpbkJ1dHRvblBzZXVkb0lkOworfQorCiBS
ZWY8U3BpbkJ1dHRvbkVsZW1lbnQ+IFNwaW5CdXR0b25FbGVtZW50OjpjcmVhdGUoRG9jdW1lbnQm
IGRvY3VtZW50LCBTcGluQnV0dG9uT3duZXImIHNwaW5CdXR0b25Pd25lcikKIHsKICAgICBhdXRv
IGVsZW1lbnQgPSBhZG9wdFJlZigqbmV3IFNwaW5CdXR0b25FbGVtZW50KGRvY3VtZW50LCBzcGlu
QnV0dG9uT3duZXIpKTsKLSAgICBzdGF0aWMgTWFpblRocmVhZE5ldmVyRGVzdHJveWVkPGNvbnN0
IEF0b21TdHJpbmc+IHdlYmtpdElubmVyU3BpbkJ1dHRvbk5hbWUoIi13ZWJraXQtaW5uZXItc3Bp
bi1idXR0b24iLCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7Ci0gICAgZWxlbWVu
dC0+c2V0UHNldWRvKHdlYmtpdElubmVyU3BpbkJ1dHRvbk5hbWUpOworICAgIGVsZW1lbnQtPnNl
dFBzZXVkbyhzcGluQnV0dG9uUHNldWRvSWQoKSk7CiAgICAgcmV0dXJuIGVsZW1lbnQ7CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NwaW5CdXR0b25FbGVtZW50
LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9TcGluQnV0dG9uRWxlbWVudC5oCmluZGV4
IDNjNzEwN2RkNDk1NTYzMDhkMDMwOTc5ODdkNTVkOTJmMjllNzU5ZjEuLjExMjYzNDJjYTc4ODQ2
N2ViMDllNTU3NjJhN2EwNGM5YzMyZDcwOTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvc2hhZG93L1NwaW5CdXR0b25FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9z
aGFkb3cvU3BpbkJ1dHRvbkVsZW1lbnQuaApAQCAtNTEsNiArNTEsOCBAQCBwdWJsaWM6CiAgICAg
ICAgIHZpcnR1YWwgdm9pZCBzcGluQnV0dG9uU3RlcFVwKCkgPSAwOwogICAgIH07CiAKKyAgICBz
dGF0aWMgY29uc3QgQXRvbVN0cmluZyYgc3BpbkJ1dHRvblBzZXVkb0lkKCk7CisKICAgICAvLyBU
aGUgb3duZXIgb2YgU3BpbkJ1dHRvbkVsZW1lbnQgbXVzdCBjYWxsIHJlbW92ZVNwaW5CdXR0b25P
d25lcgogICAgIC8vIGJlY2F1c2UgU3BpbkJ1dHRvbkVsZW1lbnQgY2FuIGJlIG91dGxpdmUgU3Bp
bkJ1dHRvbk93bmVyCiAgICAgLy8gaW1wbGVtZW50YXRpb24sIGUuZy4gZHVyaW5nIGV2ZW50IGhh
bmRsaW5nLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvVGV4dENvbnRy
b2xJbm5lckVsZW1lbnRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1RleHRDb250
cm9sSW5uZXJFbGVtZW50cy5jcHAKaW5kZXggYmQyNzYwNzE0YjdjMDljMDJmZDc0YzllNjU4YWI0
OTNkYzUxYWU1ZS4uNzdlYWUxYTIxZjY0MjdkZDA3NTgzNjBiOTVjYzkwOTI2YmU0OTUyNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvVGV4dENvbnRyb2xJbm5lckVsZW1l
bnRzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9UZXh0Q29udHJvbElubmVy
RWxlbWVudHMuY3BwCkBAIC01Nyw2ICs1Nyw3IEBAIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1Q
TChUZXh0Q29udHJvbElubmVyVGV4dEVsZW1lbnQpOwogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9J
TVBMKFRleHRDb250cm9sUGxhY2Vob2xkZXJFbGVtZW50KTsKIFdURl9NQUtFX0lTT19BTExPQ0FU
RURfSU1QTChTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50KTsKIFdURl9NQUtFX0lTT19B
TExPQ0FURURfSU1QTChTZWFyY2hGaWVsZENhbmNlbEJ1dHRvbkVsZW1lbnQpOworV1RGX01BS0Vf
SVNPX0FMTE9DQVRFRF9JTVBMKENhcHNMb2NrSW5kaWNhdG9yRWxlbWVudCk7CiAKIHVzaW5nIG5h
bWVzcGFjZSBIVE1MTmFtZXM7CiAKQEAgLTIzNCw2ICsyMzUsMjQgQEAgaW5saW5lIFNlYXJjaEZp
ZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQ6OlNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQo
RG9jdW1lbnQKICAgICBzZXRIYXNDdXN0b21TdHlsZVJlc29sdmVDYWxsYmFja3MoKTsKIH0KIAor
Y29uc3QgQXRvbVN0cmluZyYgU2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudDo6c2VhcmNo
RGVjb3JhdGlvblBzZXVkb0lkKCkKK3sKKyAgICBzdGF0aWMgTWFpblRocmVhZE5ldmVyRGVzdHJv
eWVkPGNvbnN0IEF0b21TdHJpbmc+IHNlYXJjaERlY29yYXRpb25Qc2V1ZG9JZCgiLXdlYmtpdC1z
ZWFyY2gtZGVjb3JhdGlvbiIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKKyAg
ICByZXR1cm4gc2VhcmNoRGVjb3JhdGlvblBzZXVkb0lkOworfQorCitjb25zdCBBdG9tU3RyaW5n
JiBTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50OjpzZWFyY2hSZXN1bHRzRGVjb3JhdGlv
blBzZXVkb0lkKCkKK3sKKyAgICBzdGF0aWMgTWFpblRocmVhZE5ldmVyRGVzdHJveWVkPGNvbnN0
IEF0b21TdHJpbmc+IHNlYXJjaFJlc3VsdHNEZWNvcmF0aW9uUHNldWRvSWQoIi13ZWJraXQtc2Vh
cmNoLXJlc3VsdHMtZGVjb3JhdGlvbiIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFs
KTsKKyAgICByZXR1cm4gc2VhcmNoUmVzdWx0c0RlY29yYXRpb25Qc2V1ZG9JZDsKK30KKworY29u
c3QgQXRvbVN0cmluZyYgU2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudDo6c2VhcmNoUmVz
dWx0c0J1dHRvblBzZXVkb0lkKCkKK3sKKyAgICBzdGF0aWMgTWFpblRocmVhZE5ldmVyRGVzdHJv
eWVkPGNvbnN0IEF0b21TdHJpbmc+IHNlYXJjaFJlc3VsdHNCdXR0b25Qc2V1ZG9JZCgiLXdlYmtp
dC1zZWFyY2gtcmVzdWx0cy1idXR0b24iLCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJh
bCk7CisgICAgcmV0dXJuIHNlYXJjaFJlc3VsdHNCdXR0b25Qc2V1ZG9JZDsKK30KKwogUmVmPFNl
YXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQ+IFNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVs
ZW1lbnQ6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1lbnQpCiB7CiAgICAgcmV0dXJuIGFkb3B0UmVm
KCpuZXcgU2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudChkb2N1bWVudCkpOwpAQCAtMjkz
LDEyICszMTIsMTggQEAgaW5saW5lIFNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uRWxlbWVudDo6U2Vh
cmNoRmllbGRDYW5jZWxCdXR0b25FbGVtZW50KERvY3VtZW50JgogICAgIHNldEhhc0N1c3RvbVN0
eWxlUmVzb2x2ZUNhbGxiYWNrcygpOwogfQogCitjb25zdCBBdG9tU3RyaW5nJiBTZWFyY2hGaWVs
ZENhbmNlbEJ1dHRvbkVsZW1lbnQ6OnNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uUHNldWRvSWQoKQor
eworICAgIHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRvbVN0cmluZz4g
c2VhcmNoRmllbGRDYW5jZWxCdXR0b25Qc2V1ZG9JZCgiLXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1
dHRvbiIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gc2Vh
cmNoRmllbGRDYW5jZWxCdXR0b25Qc2V1ZG9JZDsKK30KKwogUmVmPFNlYXJjaEZpZWxkQ2FuY2Vs
QnV0dG9uRWxlbWVudD4gU2VhcmNoRmllbGRDYW5jZWxCdXR0b25FbGVtZW50OjpjcmVhdGUoRG9j
dW1lbnQmIGRvY3VtZW50KQogewogICAgIGF1dG8gZWxlbWVudCA9IGFkb3B0UmVmKCpuZXcgU2Vh
cmNoRmllbGRDYW5jZWxCdXR0b25FbGVtZW50KGRvY3VtZW50KSk7Ci0gICAgc3RhdGljIE1haW5U
aHJlYWROZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiB3ZWJraXRTZWFyY2hDYW5jZWxC
dXR0b25OYW1lKCItd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIiwgQXRvbVN0cmluZzo6Q29u
c3RydWN0RnJvbUxpdGVyYWwpOworCiAgICAgc3RhdGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3ll
ZDxjb25zdCBBdG9tU3RyaW5nPiBidXR0b25OYW1lKCJidXR0b24iLCBBdG9tU3RyaW5nOjpDb25z
dHJ1Y3RGcm9tTGl0ZXJhbCk7Ci0gICAgZWxlbWVudC0+c2V0UHNldWRvKHdlYmtpdFNlYXJjaENh
bmNlbEJ1dHRvbk5hbWUpOworICAgIGVsZW1lbnQtPnNldFBzZXVkbyhzZWFyY2hGaWVsZENhbmNl
bEJ1dHRvblBzZXVkb0lkKCkpOwogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIGVsZW1l
bnQtPnNldEF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24oYXJpYV9sYWJlbEF0dHIsIEFY
U2VhcmNoRmllbGRDYW5jZWxCdXR0b25UZXh0KCkpOwogI2VuZGlmCkBAIC0zNTAsNCArMzc1LDI0
IEBAIGJvb2wgU2VhcmNoRmllbGRDYW5jZWxCdXR0b25FbGVtZW50Ojp3aWxsUmVzcG9uZFRvTW91
c2VDbGlja0V2ZW50cygpCiB9CiAjZW5kaWYKIAorLy8gTUFSSzogQ2Fwc0xvY2tJbmRpY2F0b3JF
bGVtZW50CisKK0NhcHNMb2NrSW5kaWNhdG9yRWxlbWVudDo6Q2Fwc0xvY2tJbmRpY2F0b3JFbGVt
ZW50KERvY3VtZW50JiBkb2N1bWVudCkKKyAgICA6IEhUTUxEaXZFbGVtZW50KGRpdlRhZywgZG9j
dW1lbnQpCit7Cit9CisKK2NvbnN0IEF0b21TdHJpbmcmIENhcHNMb2NrSW5kaWNhdG9yRWxlbWVu
dDo6Y2Fwc0xvY2tJbmRpY2F0b3JQc2V1ZG9JZCgpCit7CisgICAgc3RhdGljIE1haW5UaHJlYWRO
ZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiBjYXBzTG9ja0luZGljYXRvclBzZXVkb0lk
KCItd2Via2l0LWNhcHMtbG9jay1pbmRpY2F0b3IiLCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9t
TGl0ZXJhbCk7CisgICAgcmV0dXJuIGNhcHNMb2NrSW5kaWNhdG9yUHNldWRvSWQ7Cit9CisKK1Jl
ZjxDYXBzTG9ja0luZGljYXRvckVsZW1lbnQ+IENhcHNMb2NrSW5kaWNhdG9yRWxlbWVudDo6Y3Jl
YXRlKERvY3VtZW50JiBkb2N1bWVudCkKK3sKKyAgICBhdXRvIGVsZW1lbnQgPSBhZG9wdFJlZigq
bmV3IENhcHNMb2NrSW5kaWNhdG9yRWxlbWVudChkb2N1bWVudCkpOworICAgIGVsZW1lbnQtPnNl
dFBzZXVkbyhjYXBzTG9ja0luZGljYXRvclBzZXVkb0lkKCkpOworICAgIHJldHVybiBlbGVtZW50
OworfQorCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9UZXh0Q29u
dHJvbElubmVyRWxlbWVudHMuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1RleHRDb250
cm9sSW5uZXJFbGVtZW50cy5oCmluZGV4IDdjMzJiYjRhMjE3NzcwYzE0ZjYyMWUyNGNmZGJiNmIw
YTdjNzE1MmEuLmIwZjllY2E3MmYzMzhhZjJjMTFlNzQ2OWYyYTMzNDk4YTQ4Nzk5N2EgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1RleHRDb250cm9sSW5uZXJFbGVtZW50
cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1RleHRDb250cm9sSW5uZXJFbGVt
ZW50cy5oCkBAIC05NCw2ICs5NCwxMCBAQCBwcml2YXRlOgogY2xhc3MgU2VhcmNoRmllbGRSZXN1
bHRzQnV0dG9uRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBIVE1MRGl2RWxlbWVudCB7CiAgICAgV1RG
X01BS0VfSVNPX0FMTE9DQVRFRChTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50KTsKIHB1
YmxpYzoKKyAgICBzdGF0aWMgY29uc3QgQXRvbVN0cmluZyYgc2VhcmNoRGVjb3JhdGlvblBzZXVk
b0lkKCk7CisgICAgc3RhdGljIGNvbnN0IEF0b21TdHJpbmcmIHNlYXJjaFJlc3VsdHNEZWNvcmF0
aW9uUHNldWRvSWQoKTsKKyAgICBzdGF0aWMgY29uc3QgQXRvbVN0cmluZyYgc2VhcmNoUmVzdWx0
c0J1dHRvblBzZXVkb0lkKCk7CisKICAgICBzdGF0aWMgUmVmPFNlYXJjaEZpZWxkUmVzdWx0c0J1
dHRvbkVsZW1lbnQ+IGNyZWF0ZShEb2N1bWVudCYpOwogCiAgICAgdm9pZCBkZWZhdWx0RXZlbnRI
YW5kbGVyKEV2ZW50Jikgb3ZlcnJpZGU7CkBAIC0xMTUsNiArMTE5LDggQEAgcHJpdmF0ZToKIGNs
YXNzIFNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBIVE1MRGl2
RWxlbWVudCB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChTZWFyY2hGaWVsZENhbmNlbEJ1
dHRvbkVsZW1lbnQpOwogcHVibGljOgorICAgIHN0YXRpYyBjb25zdCBBdG9tU3RyaW5nJiBzZWFy
Y2hGaWVsZENhbmNlbEJ1dHRvblBzZXVkb0lkKCk7CisKICAgICBzdGF0aWMgUmVmPFNlYXJjaEZp
ZWxkQ2FuY2VsQnV0dG9uRWxlbWVudD4gY3JlYXRlKERvY3VtZW50Jik7CiAKICAgICB2b2lkIGRl
ZmF1bHRFdmVudEhhbmRsZXIoRXZlbnQmKSBvdmVycmlkZTsKQEAgLTEyOCw2ICsxMzQsMTcgQEAg
cHJpdmF0ZToKICAgICBzdGQ6Om9wdGlvbmFsPFN0eWxlOjpFbGVtZW50U3R5bGU+IHJlc29sdmVD
dXN0b21TdHlsZShjb25zdCBSZW5kZXJTdHlsZSYgcGFyZW50U3R5bGUsIGNvbnN0IFJlbmRlclN0
eWxlKiBzaGFkb3dIb3N0U3R5bGUpIG92ZXJyaWRlOwogfTsKIAorY2xhc3MgQ2Fwc0xvY2tJbmRp
Y2F0b3JFbGVtZW50IGZpbmFsIDogcHVibGljIEhUTUxEaXZFbGVtZW50IHsKKyAgICBXVEZfTUFL
RV9JU09fQUxMT0NBVEVEKENhcHNMb2NrSW5kaWNhdG9yRWxlbWVudCk7CitwdWJsaWM6CisgICAg
c3RhdGljIGNvbnN0IEF0b21TdHJpbmcmIGNhcHNMb2NrSW5kaWNhdG9yUHNldWRvSWQoKTsKKwor
ICAgIHN0YXRpYyBSZWY8Q2Fwc0xvY2tJbmRpY2F0b3JFbGVtZW50PiBjcmVhdGUoRG9jdW1lbnQm
KTsKKworcHJpdmF0ZToKKyAgICBDYXBzTG9ja0luZGljYXRvckVsZW1lbnQoRG9jdW1lbnQmKTsK
K307CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19C
RUdJTihXZWJDb3JlOjpUZXh0Q29udHJvbElubmVyVGV4dEVsZW1lbnQpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9UaGVtZVR5cGVzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL1RoZW1lVHlwZXMuY3BwCmluZGV4IGQ5ODk3ZTM4M2QyNDdlMmIzZWZmYWM4YjJmYTIz
NGFhODc1NDVjNjAuLjI3Mjg2MDE3MjE2NTdlZjQ2ODViYjI3NzI5ZmFkOGY5ZmI1OTBkZjcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1lVHlwZXMuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1lVHlwZXMuY3BwCkBAIC0zNCw2ICszNCw3IEBAIFRl
eHRTdHJlYW0mIG9wZXJhdG9yPDwoVGV4dFN0cmVhbSYgdHMsIENvbnRyb2xQYXJ0IGNvbnRyb2xQ
YXJ0KQogewogICAgIHN3aXRjaCAoY29udHJvbFBhcnQpIHsKICAgICBjYXNlIE5vQ29udHJvbFBh
cnQ6IHRzIDw8ICJuby1jb250cm9sLXBhcnQiOyBicmVhazsKKyAgICBjYXNlIEF1dG9QYXJ0OiB0
cyA8PCAiYXV0by1wYXJ0IjsgYnJlYWs7CiAgICAgY2FzZSBDaGVja2JveFBhcnQ6IHRzIDw8ICJj
aGVja2JveC1wYXJ0IjsgYnJlYWs7CiAgICAgY2FzZSBSYWRpb1BhcnQ6IHRzIDw8ICJyYWRpby1w
YXJ0IjsgYnJlYWs7CiAgICAgY2FzZSBQdXNoQnV0dG9uUGFydDogdHMgPDwgInB1c2gtYnV0dG9u
LXBhcnQiOyBicmVhazsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1l
VHlwZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1lVHlwZXMuaAppbmRleCA0ZTQ0
MDU1ZWIzY2I4ZjVhZDMyM2JjOWE4NTdkNzRjM2Y1ZTE5ZWI1Li5jZTdhZDkzZGI2ZWE4OTU2MGVi
YTBlMDhlYzlhOWUyYTQ2OGQ3NDJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9UaGVtZVR5cGVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGhlbWVUeXBlcy5o
CkBAIC0zNCw2ICszNCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIC8vIE11c3QgZm9sbG93IENT
U1ZhbHVlS2V5d29yZHMuaW4gb3JkZXIKIGVudW0gQ29udHJvbFBhcnQgewogICAgIE5vQ29udHJv
bFBhcnQsCisgICAgQXV0b1BhcnQsCiAgICAgQ2hlY2tib3hQYXJ0LAogICAgIFJhZGlvUGFydCwK
ICAgICBQdXNoQnV0dG9uUGFydCwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJUaGVtZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWUu
Y3BwCmluZGV4IGI5MDgyYjU2Nzc5NWYyY2Q1ZTRkNmE3NGQ3MDMzYTg1ZTg3MWMwNWMuLjc3MWRi
YzlmOTJkY2ViZTFkYTA3MTcyYjBjMmIzODY3MTVlMzUwYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclRoZW1lLmNwcApAQCAtMzQsOSArMzQsMTQgQEAKICNpbmNsdWRlICJGcmFt
ZS5oIgogI2luY2x1ZGUgIkZyYW1lU2VsZWN0aW9uLmgiCiAjaW5jbHVkZSAiR3JhcGhpY3NDb250
ZXh0LmgiCisjaW5jbHVkZSAiSFRNTEF0dGFjaG1lbnRFbGVtZW50LmgiCisjaW5jbHVkZSAiSFRN
TEJ1dHRvbkVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MSW5wdXRFbGVtZW50LmgiCiAjaW5jbHVk
ZSAiSFRNTE1ldGVyRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgorI2luY2x1ZGUg
IkhUTUxQcm9ncmVzc0VsZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1MU2VsZWN0RWxlbWVudC5oIgor
I2luY2x1ZGUgIkhUTUxUZXh0QXJlYUVsZW1lbnQuaCIKICNpbmNsdWRlICJMb2NhbGl6ZWRTdHJp
bmdzLmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBhaW50SW5mby5oIgpAQCAtNDQs
NiArNDksNyBAQAogI2luY2x1ZGUgIlJlbmRlclN0eWxlLmgiCiAjaW5jbHVkZSAiUmVuZGVyVmll
dy5oIgogI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKKyNpbmNsdWRlICJTbGlk
ZXJUaHVtYkVsZW1lbnQuaCIKICNpbmNsdWRlICJTcGluQnV0dG9uRWxlbWVudC5oIgogI2luY2x1
ZGUgIlN0cmluZ1RydW5jYXRvci5oIgogI2luY2x1ZGUgIlRleHRDb250cm9sSW5uZXJFbGVtZW50
cy5oIgpAQCAtNTMsNiArNTksNyBAQAogCiAKICNpZiBFTkFCTEUoREFUQUxJU1RfRUxFTUVOVCkK
KyNpbmNsdWRlICJEYXRhTGlzdEJ1dHRvbkVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MRGF0YUxp
c3RFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTE9wdGlvbkVsZW1lbnQuaCIKICNlbmRpZgpAQCAt
NzgsNyArODUsNiBAQCBSZW5kZXJUaGVtZTo6UmVuZGVyVGhlbWUoKQogdm9pZCBSZW5kZXJUaGVt
ZTo6YWRqdXN0U3R5bGUoUmVuZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBFbGVtZW50KiBlbGVtZW50
LCBjb25zdCBSZW5kZXJTdHlsZSogdXNlckFnZW50QXBwZWFyYW5jZVN0eWxlKQogewogICAgIC8v
IEZvcmNlIGlubGluZSBhbmQgdGFibGUgZGlzcGxheSBzdHlsZXMgdG8gYmUgaW5saW5lLWJsb2Nr
IChleGNlcHQgZm9yIHRhYmxlLSB3aGljaCBpcyBibG9jaykKLSAgICBDb250cm9sUGFydCBwYXJ0
ID0gc3R5bGUuYXBwZWFyYW5jZSgpOwogICAgIGlmIChzdHlsZS5kaXNwbGF5KCkgPT0gRGlzcGxh
eVR5cGU6OklubGluZSB8fCBzdHlsZS5kaXNwbGF5KCkgPT0gRGlzcGxheVR5cGU6OklubGluZVRh
YmxlIHx8IHN0eWxlLmRpc3BsYXkoKSA9PSBEaXNwbGF5VHlwZTo6VGFibGVSb3dHcm91cAogICAg
ICAgICB8fCBzdHlsZS5kaXNwbGF5KCkgPT0gRGlzcGxheVR5cGU6OlRhYmxlSGVhZGVyR3JvdXAg
fHwgc3R5bGUuZGlzcGxheSgpID09IERpc3BsYXlUeXBlOjpUYWJsZUZvb3Rlckdyb3VwCiAgICAg
ICAgIHx8IHN0eWxlLmRpc3BsYXkoKSA9PSBEaXNwbGF5VHlwZTo6VGFibGVSb3cgfHwgc3R5bGUu
ZGlzcGxheSgpID09IERpc3BsYXlUeXBlOjpUYWJsZUNvbHVtbkdyb3VwIHx8IHN0eWxlLmRpc3Bs
YXkoKSA9PSBEaXNwbGF5VHlwZTo6VGFibGVDb2x1bW4KQEAgLTg3LDIxICs5MywxNCBAQCB2b2lk
IFJlbmRlclRoZW1lOjphZGp1c3RTdHlsZShSZW5kZXJTdHlsZSYgc3R5bGUsIGNvbnN0IEVsZW1l
bnQqIGVsZW1lbnQsIGNvbnN0CiAgICAgZWxzZSBpZiAoc3R5bGUuZGlzcGxheSgpID09IERpc3Bs
YXlUeXBlOjpMaXN0SXRlbSB8fCBzdHlsZS5kaXNwbGF5KCkgPT0gRGlzcGxheVR5cGU6OlRhYmxl
KQogICAgICAgICBzdHlsZS5zZXRFZmZlY3RpdmVEaXNwbGF5KERpc3BsYXlUeXBlOjpCbG9jayk7
CiAKLSAgICBpZiAodXNlckFnZW50QXBwZWFyYW5jZVN0eWxlICYmIGlzQ29udHJvbFN0eWxlZChz
dHlsZSwgKnVzZXJBZ2VudEFwcGVhcmFuY2VTdHlsZSkpIHsKLSAgICAgICAgc3dpdGNoIChwYXJ0
KSB7Ci0gICAgICAgIGNhc2UgTWVudWxpc3RQYXJ0OgotICAgICAgICAgICAgc3R5bGUuc2V0RWZm
ZWN0aXZlQXBwZWFyYW5jZShNZW51bGlzdEJ1dHRvblBhcnQpOwotICAgICAgICAgICAgcGFydCA9
IE1lbnVsaXN0QnV0dG9uUGFydDsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBkZWZhdWx0
OgotICAgICAgICAgICAgc3R5bGUuc2V0RWZmZWN0aXZlQXBwZWFyYW5jZShOb0NvbnRyb2xQYXJ0
KTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAgfQorICAgIGFkanVzdEFwcGVh
cmFuY2Uoc3R5bGUsIGVsZW1lbnQsIHVzZXJBZ2VudEFwcGVhcmFuY2VTdHlsZSk7CiAKICAgICBp
ZiAoIXN0eWxlLmhhc0VmZmVjdGl2ZUFwcGVhcmFuY2UoKSkKICAgICAgICAgcmV0dXJuOwogCisg
ICAgYXV0byBwYXJ0ID0gc3R5bGUuZWZmZWN0aXZlQXBwZWFyYW5jZSgpOworICAgIEFTU0VSVChw
YXJ0ICE9IEF1dG9QYXJ0KTsKKwogICAgIGlmICghc3VwcG9ydHNCb3hTaGFkb3coc3R5bGUpKQog
ICAgICAgICBzdHlsZS5zZXRCb3hTaGFkb3cobnVsbHB0cik7CiAgICAgCkBAIC0xOTEsNyArMTkw
LDcgQEAgdm9pZCBSZW5kZXJUaGVtZTo6YWRqdXN0U3R5bGUoUmVuZGVyU3R5bGUmIHN0eWxlLCBj
b25zdCBFbGVtZW50KiBlbGVtZW50LCBjb25zdAogI2VuZGlmCiAKICAgICAvLyBDYWxsIHRoZSBh
cHByb3ByaWF0ZSBzdHlsZSBhZGp1c3RtZW50IG1ldGhvZCBiYXNlZCBvZmYgdGhlIGFwcGVhcmFu
Y2UgdmFsdWUuCi0gICAgc3dpdGNoIChzdHlsZS5lZmZlY3RpdmVBcHBlYXJhbmNlKCkpIHsKKyAg
ICBzd2l0Y2ggKHBhcnQpIHsKICNpZiAhVVNFKE5FV19USEVNRSkKICAgICBjYXNlIENoZWNrYm94
UGFydDoKICAgICAgICAgcmV0dXJuIGFkanVzdENoZWNrYm94U3R5bGUoc3R5bGUsIGVsZW1lbnQp
OwpAQCAtMjcwLDYgKzI2OSwxMzAgQEAgdm9pZCBSZW5kZXJUaGVtZTo6YWRqdXN0U3R5bGUoUmVu
ZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBFbGVtZW50KiBlbGVtZW50LCBjb25zdAogICAgIH0KIH0K
IAorQ29udHJvbFBhcnQgUmVuZGVyVGhlbWU6OmF1dG9BcHBlYXJhbmNlRm9yRWxlbWVudChjb25z
dCBFbGVtZW50JiBlbGVtZW50KSBjb25zdAoreworICAgIGlmIChpczxIVE1MSW5wdXRFbGVtZW50
PihlbGVtZW50KSkgeworICAgICAgICBhdXRvJiBpbnB1dCA9IGRvd25jYXN0PEhUTUxJbnB1dEVs
ZW1lbnQ+KGVsZW1lbnQpOworCisgICAgICAgIGlmIChpbnB1dC5pc1RleHRCdXR0b24oKSB8fCBp
bnB1dC5pc1VwbG9hZEJ1dHRvbigpKQorICAgICAgICAgICAgcmV0dXJuIFB1c2hCdXR0b25QYXJ0
OworCisgICAgICAgIGlmIChpbnB1dC5pc0NoZWNrYm94KCkpCisgICAgICAgICAgICByZXR1cm4g
Q2hlY2tib3hQYXJ0OworCisgICAgICAgIGlmIChpbnB1dC5pc1JhZGlvQnV0dG9uKCkpCisgICAg
ICAgICAgICByZXR1cm4gUmFkaW9QYXJ0OworCisgICAgICAgIGlmIChpbnB1dC5pc1NlYXJjaEZp
ZWxkKCkpCisgICAgICAgICAgICByZXR1cm4gU2VhcmNoRmllbGRQYXJ0OworCisgICAgICAgIGlm
IChpbnB1dC5pc0RhdGVGaWVsZCgpIHx8IGlucHV0LmlzRGF0ZVRpbWVMb2NhbEZpZWxkKCkgfHwg
aW5wdXQuaXNNb250aEZpZWxkKCkgfHwgaW5wdXQuaXNUaW1lRmllbGQoKSB8fCBpbnB1dC5pc1dl
ZWtGaWVsZCgpKSB7CisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICAgICAgICAgIHJldHVy
biBNZW51bGlzdEJ1dHRvblBhcnQ7CisjZWxzZQorICAgICAgICAgICAgcmV0dXJuIFRleHRGaWVs
ZFBhcnQ7CisjZW5kaWYKKyAgICAgICAgfQorCisjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1Ip
CisgICAgICAgIGlmIChpbnB1dC5pc0NvbG9yQ29udHJvbCgpKQorICAgICAgICAgICAgcmV0dXJu
IENvbG9yV2VsbFBhcnQ7CisjZW5kaWYKKworICAgICAgICBpZiAoaW5wdXQuaXNSYW5nZUNvbnRy
b2woKSkKKyAgICAgICAgICAgIHJldHVybiBTbGlkZXJIb3Jpem9udGFsUGFydDsKKworICAgICAg
ICBpZiAoaW5wdXQuaXNUZXh0RmllbGQoKSkKKyAgICAgICAgICAgIHJldHVybiBUZXh0RmllbGRQ
YXJ0OworCisgICAgICAgIC8vIDxpbnB1dCB0eXBlPWhpZGRlbnxpbWFnZXxmaWxlPgorICAgICAg
ICByZXR1cm4gTm9Db250cm9sUGFydDsKKyAgICB9CisKKyAgICBpZiAoaXM8SFRNTEJ1dHRvbkVs
ZW1lbnQ+KGVsZW1lbnQpKQorICAgICAgICByZXR1cm4gQnV0dG9uUGFydDsKKworICAgIGlmIChp
czxIVE1MU2VsZWN0RWxlbWVudD4oZWxlbWVudCkpIHsKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZ
KQorICAgICAgICByZXR1cm4gTWVudWxpc3RCdXR0b25QYXJ0OworI2Vsc2UKKyAgICAgICAgYXV0
byYgc2VsZWN0ID0gZG93bmNhc3Q8SFRNTFNlbGVjdEVsZW1lbnQ+KGVsZW1lbnQpOworICAgICAg
ICByZXR1cm4gc2VsZWN0LnVzZXNNZW51TGlzdCgpID8gTWVudWxpc3RQYXJ0IDogTGlzdGJveFBh
cnQ7CisjZW5kaWYKKyAgICB9CisKKyAgICBpZiAoaXM8SFRNTFRleHRBcmVhRWxlbWVudD4oZWxl
bWVudCkpCisgICAgICAgIHJldHVybiBUZXh0QXJlYVBhcnQ7CisKKyAgICBpZiAoaXM8SFRNTE1l
dGVyRWxlbWVudD4oZWxlbWVudCkpCisgICAgICAgIHJldHVybiBNZXRlclBhcnQ7CisKKyAgICBp
ZiAoaXM8SFRNTFByb2dyZXNzRWxlbWVudD4oZWxlbWVudCkpCisgICAgICAgIHJldHVybiBQcm9n
cmVzc0JhclBhcnQ7CisKKyNpZiBFTkFCTEUoQVRUQUNITUVOVF9FTEVNRU5UKQorICAgIGlmIChp
czxIVE1MQXR0YWNobWVudEVsZW1lbnQ+KGVsZW1lbnQpKQorICAgICAgICByZXR1cm4gQXR0YWNo
bWVudFBhcnQ7CisjZW5kaWYKKworICAgIGlmIChlbGVtZW50LmlzSW5Vc2VyQWdlbnRTaGFkb3dU
cmVlKCkpIHsKKyAgICAgICAgYXV0byYgcHNldWRvID0gZWxlbWVudC5zaGFkb3dQc2V1ZG9JZCgp
OworCisjaWYgRU5BQkxFKERBVEFMSVNUX0VMRU1FTlQpCisgICAgICAgIGlmIChwc2V1ZG8gPT0g
RGF0YUxpc3RCdXR0b25FbGVtZW50OjpsaXN0QnV0dG9uUHNldWRvSWQoKSkKKyAgICAgICAgICAg
IHJldHVybiBMaXN0QnV0dG9uUGFydDsKKyNlbmRpZgorCisgICAgICAgIGlmIChwc2V1ZG8gPT0g
Q2Fwc0xvY2tJbmRpY2F0b3JFbGVtZW50OjpjYXBzTG9ja0luZGljYXRvclBzZXVkb0lkKCkpCisg
ICAgICAgICAgICByZXR1cm4gQ2Fwc0xvY2tJbmRpY2F0b3JQYXJ0OworCisgICAgICAgIGlmIChw
c2V1ZG8gPT0gU2VhcmNoRmllbGRDYW5jZWxCdXR0b25FbGVtZW50OjpzZWFyY2hGaWVsZENhbmNl
bEJ1dHRvblBzZXVkb0lkKCkpCisgICAgICAgICAgICByZXR1cm4gU2VhcmNoRmllbGRDYW5jZWxC
dXR0b25QYXJ0OworCisgICAgICAgIGlmIChwc2V1ZG8gPT0gU2VhcmNoRmllbGRSZXN1bHRzQnV0
dG9uRWxlbWVudDo6c2VhcmNoRGVjb3JhdGlvblBzZXVkb0lkKCkpCisgICAgICAgICAgICByZXR1
cm4gU2VhcmNoRmllbGREZWNvcmF0aW9uUGFydDsKKworICAgICAgICBpZiAocHNldWRvID09IFNl
YXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQ6OnNlYXJjaFJlc3VsdHNEZWNvcmF0aW9uUHNl
dWRvSWQoKSkKKyAgICAgICAgICAgIHJldHVybiBTZWFyY2hGaWVsZFJlc3VsdHNEZWNvcmF0aW9u
UGFydDsKKworICAgICAgICBpZiAocHNldWRvID09IFNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVs
ZW1lbnQ6OnNlYXJjaFJlc3VsdHNCdXR0b25Qc2V1ZG9JZCgpKQorICAgICAgICAgICAgcmV0dXJu
IFNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvblBhcnQ7CisKKyAgICAgICAgaWYgKHBzZXVkbyA9PSBT
bGlkZXJUaHVtYkVsZW1lbnQ6OnNsaWRlclRodW1iUHNldWRvSWQoKSB8fCBwc2V1ZG8gPT0gU2xp
ZGVyVGh1bWJFbGVtZW50OjptZWRpYVNsaWRlclRodW1iUHNldWRvSWQoKSkKKyAgICAgICAgICAg
IHJldHVybiBTbGlkZXJUaHVtYkhvcml6b250YWxQYXJ0OworCisgICAgICAgIGlmIChwc2V1ZG8g
PT0gU3BpbkJ1dHRvbkVsZW1lbnQ6OnNwaW5CdXR0b25Qc2V1ZG9JZCgpKQorICAgICAgICAgICAg
cmV0dXJuIElubmVyU3BpbkJ1dHRvblBhcnQ7CisgICAgfQorCisgICAgcmV0dXJuIE5vQ29udHJv
bFBhcnQ7Cit9CisKK3ZvaWQgUmVuZGVyVGhlbWU6OmFkanVzdEFwcGVhcmFuY2UoUmVuZGVyU3R5
bGUmIHN0eWxlLCBjb25zdCBFbGVtZW50KiBlbGVtZW50LCBjb25zdCBSZW5kZXJTdHlsZSogdXNl
ckFnZW50QXBwZWFyYW5jZVN0eWxlKSBjb25zdAoreworICAgIGlmICghZWxlbWVudCkgeworICAg
ICAgICBzdHlsZS5zZXRFZmZlY3RpdmVBcHBlYXJhbmNlKE5vQ29udHJvbFBhcnQpOworICAgICAg
ICByZXR1cm47CisgICAgfQorCisgICAgYXV0byBhcHBlYXJhbmNlID0gc3R5bGUuYXBwZWFyYW5j
ZSgpOworICAgIGlmIChhcHBlYXJhbmNlID09IEF1dG9QYXJ0KQorICAgICAgICBhcHBlYXJhbmNl
ID0gYXV0b0FwcGVhcmFuY2VGb3JFbGVtZW50KCplbGVtZW50KTsKKworICAgIGlmICh1c2VyQWdl
bnRBcHBlYXJhbmNlU3R5bGUgJiYgaXNDb250cm9sU3R5bGVkKHN0eWxlLCAqdXNlckFnZW50QXBw
ZWFyYW5jZVN0eWxlKSkgeworICAgICAgICBzd2l0Y2ggKGFwcGVhcmFuY2UpIHsKKyAgICAgICAg
Y2FzZSBNZW51bGlzdFBhcnQ6CisgICAgICAgICAgICBhcHBlYXJhbmNlID0gTWVudWxpc3RCdXR0
b25QYXJ0OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAg
ICBhcHBlYXJhbmNlID0gTm9Db250cm9sUGFydDsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICB9CisgICAgfQorCisgICAgc3R5bGUuc2V0RWZmZWN0aXZlQXBwZWFyYW5jZShhcHBlYXJhbmNl
KTsKK30KKwogdm9pZCBSZW5kZXJUaGVtZTo6YWRqdXN0U2VhcmNoRmllbGREZWNvcmF0aW9uU3R5
bGUoUmVuZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBFbGVtZW50KiBlbGVtZW50KSBjb25zdAogewog
ICAgIGlmIChpczxTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50PihlbGVtZW50KSAmJiAh
ZG93bmNhc3Q8U2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudD4oKmVsZW1lbnQpLmNhbkFk
anVzdFN0eWxlRm9yQXBwZWFyYW5jZSgpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyVGhlbWUuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJU
aGVtZS5oCmluZGV4IGU3ZTZlYmIxYjlkMWViYjE4ODA3ZmIwYWE4OTE2ZjljODAxZjc4MzEuLmZk
YzEwMTcxNTQyNjQ1MzE0YmFjOWU0YjA2ZWZhMTY4MTU5NDE1ZjggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJUaGVtZS5oCkBAIC00NTQsNiArNDU0LDkgQEAgcHJvdGVjdGVkOgogICAg
IHZpcnR1YWwgQ29sb3JDYWNoZSYgY29sb3JDYWNoZShPcHRpb25TZXQ8U3R5bGVDb2xvcjo6T3B0
aW9ucz4pIGNvbnN0OwogCiBwcml2YXRlOgorICAgIENvbnRyb2xQYXJ0IGF1dG9BcHBlYXJhbmNl
Rm9yRWxlbWVudChjb25zdCBFbGVtZW50JikgY29uc3Q7CisgICAgdm9pZCBhZGp1c3RBcHBlYXJh
bmNlKFJlbmRlclN0eWxlJiwgY29uc3QgRWxlbWVudCosIGNvbnN0IFJlbmRlclN0eWxlKiB1c2Vy
QWdlbnRBcHBlYXJhbmNlU3R5bGUpIGNvbnN0OworCiAgICAgdm9pZCBhZGp1c3RTZWFyY2hGaWVs
ZERlY29yYXRpb25TdHlsZShSZW5kZXJTdHlsZSYsIGNvbnN0IEVsZW1lbnQqKSBjb25zdDsKIAog
ICAgIG11dGFibGUgSGFzaE1hcDx1aW50OF90LCBDb2xvckNhY2hlLCBEZWZhdWx0SGFzaDx1aW50
OF90PiwgV1RGOjpVbnNpZ25lZFdpdGhaZXJvS2V5SGFzaFRyYWl0czx1aW50OF90Pj4gbV9jb2xv
ckNhY2hlTWFwOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxv
ZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggYzg1MmE3NDg2MTM1
NmRkZmRhYTRhZjAyM2ZkNzliODE2M2E3YTg0YS4uYmM5MGY4NjZkZmZiY2ViNzMyMzNkY2QyNjE1
YzkwOWQyOTAxM2EzZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5n
ZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTUgQEAKKzIwMjEtMTAtMDQgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29tPgor
CisgICAgICAgIEFkZCBzdXBwb3J0IGZvciAnLXdlYmtpdC1hcHBlYXJhbmNlOiBhdXRvJworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxMjAzCisgICAg
ICAgIHJkYXI6Ly84MzY5NjEzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1j
c3NvbS0wMDEtZXhwZWN0ZWQudHh0OgorCisgICAgICAgIE1hcmsgcHJvZ3Jlc3Npb24uCisKIDIw
MjEtMTAtMDIgIE5pa29zIE1vdWNodGFyaXMgIDxubW91Y2h0YXJpc0BhcHBsZS5jb20+CiAKICAg
ICAgICAgV1BUcyBmb3IgaHlwb3Qsc3FydCxwb3cgY2FsYyBmdW5jdGlvbnMKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy11aS9h
cHBlYXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhw
ZWN0ZWQudHh0CmluZGV4IGY2NDU3OTRjOTQ2NjEwOTgyZjE3ZjgyZGY4MWU0OTNmNTI3ZmMzZTQu
Ljg4YmRkOWMyYjYxYjU3MGUyMGYxZjM0OTE2ODMzZTlmZTQxMzBjNzcgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy11aS9hcHBl
YXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXVpL2FwcGVhcmFuY2UtY3Nzb20tMDAxLWV4
cGVjdGVkLnR4dApAQCAtMSw3ICsxLDcgQEAKIFRlc3QKIAogUEFTUyAtd2Via2l0LWFwcGVhcmFu
Y2U6IG5vbmUKLUZBSUwgLXdlYmtpdC1hcHBlYXJhbmNlOiBhdXRvIGFzc2VydF9lcXVhbHM6IHN0
eWxlLldlYmtpdEFwcGVhcmFuY2UgKHVwcGVyY2FzZSBXKSBleHBlY3RlZCAiYXV0byIgYnV0IGdv
dCAiIgorUEFTUyAtd2Via2l0LWFwcGVhcmFuY2U6IGF1dG8KIFBBU1MgLXdlYmtpdC1hcHBlYXJh
bmNlOiBidXR0b24KIFBBU1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBjaGVja2JveAogUEFTUyAtd2Vi
a2l0LWFwcGVhcmFuY2U6IGxpc3Rib3gK
</data>
<flag name="commit-queue"
          id="464105"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440245</attachid>
            <date>2021-10-05 12:16:37 -0700</date>
            <delta_ts>2021-10-07 12:15:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231203-20211005121637.patch</filename>
            <type>text/plain</type>
            <size>35917</size>
            <attacher name="Aditya Keerthi">akeerthi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzNDg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDdhODhiY2UyNjc0ZjZh
YmY3NGU4NmIwMDU3NDNjYjk4Y2YxYTgwNi4uOGNlMzEyMzgxNWQ2Y2Q5NjY4Y2JlZWFhMTk0ZTk3
NjQwN2M0MDdkNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDc0IEBACisyMDIxLTEwLTA1ICBBZGl0
eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgc3VwcG9ydCBm
b3IgJy13ZWJraXQtYXBwZWFyYW5jZTogYXV0bycKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTIwMworICAgICAgICByZGFyOi8vODM2OTYxMzMKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgJ2FwcGVh
cmFuY2UnIHByb3BlcnR5IGFsbG93cyBhdXRob3JzIHRvIHVzZSB0aGUgJ2F1dG8nIGtleXdvcmQK
KyAgICAgICAgdG8gb3B0IHdpZGdldHMgKGFueSBlbGVtZW50IHRoYXQgY2FuIGhhdmUgYSBuYXRp
dmUgYXBwZWFyYW5jZSkgaW50bworICAgICAgICBhIG5hdGl2ZSBhcHBlYXJhbmNlIFsxXS4gRWxl
bWVudHMgb3RoZXIgdGhhbiB3aWRnZXRzIGFyZSByZW5kZXJlZAorICAgICAgICBhcyBpZiBub25l
IGhhZCBiZWVuIHNwZWNpZmllZC4KKworICAgICAgICBTaW5jZSAnLXdlYmtpdC1hcHBlYXJhbmNl
JyBpcyBhIHBhcnNlIHRpbWUgYWxpYXMgb2YgJ2FwcGVhcmFuY2UnLAorICAgICAgICBzdXBwb3J0
ICctd2Via2l0LWFwcGVhcmFuY2U6IGF1dG8nIHByaW9yIHRvIHVucHJlZml4aW5nLgorCisgICAg
ICAgIFRoZSB1c2VkLXZhbHVlIGZvciBhcHBlYXJhbmNlIChlZmZlY3RpdmVBcHBlYXJhbmNlKSBp
cyBkZXRlcm1pbmVkIGJ5CisgICAgICAgIHRoZSBlbGVtZW50IHRhZyBhbmQgdHlwZS4gSW4gdGhl
IGNhc2Ugb2YgZWxlbWVudHMgaW4gdGhlIFVBIHNoYWRvdworICAgICAgICB0cmVlLCB0aGUgcHNl
dWRvIGlkIGlzIHVzZWQgdG8gZGV0ZXJtaW5lIHRoZSBlZmZlY3RpdmUgYXBwZWFyYW5jZS4gVGhl
CisgICAgICAgIHVzZWQtdmFsdWVzIHdoZW4gc3BlY2lmeWluZyAnYXV0bycgbWF0Y2ggdGhlIGRl
ZmF1bHQgc3BlY2lmaWVkIHZhbHVlcworICAgICAgICBpbiB0aGUgVUEgc3R5bGUgc2hlZXQuCisK
KyAgICAgICAgTm90ZSB0aGF0IGFkZGl0aW9uYWwgdGVzdCBjb3ZlcmFnZSBleGlzdHMgaW4gdGhl
IGZvcm0gb2Ygd2ViIHBsYXRmb3JtCisgICAgICAgIHdlYiBwbGF0Zm9ybSB0ZXN0cywgYW5kIGlz
IGRlcGVuZGVudCBvbiB1bnByZWZpeGluZy4KKworICAgICAgICBbMV0gaHR0cHM6Ly93d3cudzMu
b3JnL1RSL2Nzcy11aS00LyN2YWxkZWYtYXBwZWFyYW5jZS1hdXRvCisKKyAgICAgICAgKiBjc3Mv
Q1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0
aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ByaW1p
dGl2ZVZhbHVlOjpvcGVyYXRvciBDb250cm9sUGFydCBjb25zdCk6CisgICAgICAgICogY3NzL0NT
U1Byb3BlcnRpZXMuanNvbjoKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1BhcnNlckZhc3RQYXRo
cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXJGYXN0UGF0aHM6OmlzVmFsaWRLZXl3
b3JkUHJvcGVydHlBbmRWYWx1ZSk6CisgICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNwcDoK
KyAgICAgICAgKiBodG1sL1NlYXJjaElucHV0VHlwZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjp1
cGRhdGVSZXN1bHRCdXR0b25Qc2V1ZG9UeXBlKToKKyAgICAgICAgKiBodG1sL1RleHRGaWVsZElu
cHV0VHlwZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUZXh0RmllbGRJbnB1dFR5cGU6OmNyZWF0
ZVNoYWRvd1N1YnRyZWVBbmRVcGRhdGVJbm5lclRleHRFbGVtZW50RWRpdGFiaWxpdHkpOgorICAg
ICAgICAoV2ViQ29yZTo6VGV4dEZpZWxkSW5wdXRUeXBlOjpjcmVhdGVEYXRhTGlzdERyb3Bkb3du
SW5kaWNhdG9yKToKKyAgICAgICAgKiBodG1sL1RleHRGaWVsZElucHV0VHlwZS5oOgorICAgICAg
ICAqIGh0bWwvc2hhZG93L0RhdGFMaXN0QnV0dG9uRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpEYXRhTGlzdEJ1dHRvbkVsZW1lbnQ6Omxpc3RCdXR0b25Qc2V1ZG9JZCk6CisgICAgICAg
IChXZWJDb3JlOjpEYXRhTGlzdEJ1dHRvbkVsZW1lbnQ6OmNyZWF0ZSk6CisgICAgICAgICogaHRt
bC9zaGFkb3cvRGF0YUxpc3RCdXR0b25FbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9zaGFkb3cv
U2xpZGVyVGh1bWJFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNsaWRlclRodW1iRWxl
bWVudDo6c2xpZGVyVGh1bWJQc2V1ZG9JZCk6CisgICAgICAgIChXZWJDb3JlOjpTbGlkZXJUaHVt
YkVsZW1lbnQ6Om1lZGlhU2xpZGVyVGh1bWJQc2V1ZG9JZCk6CisgICAgICAgIChXZWJDb3JlOjpT
bGlkZXJUaHVtYkVsZW1lbnQ6OnJlc29sdmVDdXN0b21TdHlsZSk6CisgICAgICAgICogaHRtbC9z
aGFkb3cvU2xpZGVyVGh1bWJFbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9zaGFkb3cvU3BpbkJ1
dHRvbkVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3BpbkJ1dHRvbkVsZW1lbnQ6OnNw
aW5CdXR0b25Qc2V1ZG9JZCk6CisgICAgICAgIChXZWJDb3JlOjpTcGluQnV0dG9uRWxlbWVudDo6
Y3JlYXRlKToKKyAgICAgICAgKiBodG1sL3NoYWRvdy9TcGluQnV0dG9uRWxlbWVudC5oOgorICAg
ICAgICAqIGh0bWwvc2hhZG93L1RleHRDb250cm9sSW5uZXJFbGVtZW50cy5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50OjpzZWFyY2hEZWNvcmF0
aW9uUHNldWRvSWQpOgorICAgICAgICAoV2ViQ29yZTo6U2VhcmNoRmllbGRSZXN1bHRzQnV0dG9u
RWxlbWVudDo6c2VhcmNoUmVzdWx0c0RlY29yYXRpb25Qc2V1ZG9JZCk6CisgICAgICAgIChXZWJD
b3JlOjpTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50OjpzZWFyY2hSZXN1bHRzQnV0dG9u
UHNldWRvSWQpOgorICAgICAgICAoV2ViQ29yZTo6U2VhcmNoRmllbGRDYW5jZWxCdXR0b25FbGVt
ZW50OjpzZWFyY2hGaWVsZENhbmNlbEJ1dHRvblBzZXVkb0lkKToKKyAgICAgICAgKFdlYkNvcmU6
OlNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uRWxlbWVudDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNv
cmU6OkNhcHNMb2NrSW5kaWNhdG9yRWxlbWVudDo6Q2Fwc0xvY2tJbmRpY2F0b3JFbGVtZW50KToK
KyAgICAgICAgKFdlYkNvcmU6OkNhcHNMb2NrSW5kaWNhdG9yRWxlbWVudDo6Y2Fwc0xvY2tJbmRp
Y2F0b3JQc2V1ZG9JZCk6CisgICAgICAgIChXZWJDb3JlOjpDYXBzTG9ja0luZGljYXRvckVsZW1l
bnQ6OmNyZWF0ZSk6CisgICAgICAgICogaHRtbC9zaGFkb3cvVGV4dENvbnRyb2xJbm5lckVsZW1l
bnRzLmg6CisgICAgICAgICogcGxhdGZvcm0vVGhlbWVUeXBlcy5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpvcGVyYXRvcjw8KToKKyAgICAgICAgKiBwbGF0Zm9ybS9UaGVtZVR5cGVzLmg6CisgICAg
ICAgICogcmVuZGVyaW5nL1JlbmRlclRoZW1lLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
clRoZW1lOjphZGp1c3RTdHlsZSk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZTo6YXV0
b0FwcGVhcmFuY2VGb3JFbGVtZW50IGNvbnN0KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVy
VGhlbWUuaDoKKwogMjAyMS0wOS0yMiAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5j
b20+CiAKICAgICAgICAgW2lPU10gVHJhbnNjb2RlIHZpZGVvcyBzZWxlY3RlZCBmcm9tIFVJSW1h
Z2VQaWNrZXJDb250cm9sbGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJp
bWl0aXZlVmFsdWVNYXBwaW5ncy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZh
bHVlTWFwcGluZ3MuaAppbmRleCBjNDNkYjBiZDI5NTUyYjU4YTM0MTNlOTg4OWM5YWM3NTA4OTJh
MGZhLi5mNjRiYjE2NGI5NjNlYzE4MjhkMDRlOTc2MjljNTNlMjRjMDdjMDk5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKQEAgLTQyMyw2ICs0
MjMsOSBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZl
VmFsdWUoQ29udHJvbFBhcnQgZSkKICAgICBjYXNlIE5vQ29udHJvbFBhcnQ6CiAgICAgICAgIG1f
dmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlTm9uZTsKICAgICAgICAgYnJlYWs7CisgICAgY2FzZSBB
dXRvUGFydDoKKyAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVBdXRvOworICAgICAg
ICBicmVhazsKICAgICBjYXNlIENoZWNrYm94UGFydDoKICAgICAgICAgbV92YWx1ZS52YWx1ZUlE
ID0gQ1NTVmFsdWVDaGVja2JveDsKICAgICAgICAgYnJlYWs7CkBAIC02MjksNyArNjMyLDExIEBA
IHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBDb250cm9sUGFy
dCgpIGNvbnN0CiAKICAgICBpZiAobV92YWx1ZS52YWx1ZUlEID09IENTU1ZhbHVlTm9uZSkKICAg
ICAgICAgcmV0dXJuIE5vQ29udHJvbFBhcnQ7Ci0gICAgcmV0dXJuIENvbnRyb2xQYXJ0KG1fdmFs
dWUudmFsdWVJRCAtIENTU1ZhbHVlQ2hlY2tib3ggKyAxKTsKKworICAgIGlmIChtX3ZhbHVlLnZh
bHVlSUQgPT0gQ1NTVmFsdWVBdXRvKQorICAgICAgICByZXR1cm4gQXV0b1BhcnQ7CisKKyAgICBy
ZXR1cm4gQ29udHJvbFBhcnQobV92YWx1ZS52YWx1ZUlEIC0gQ1NTVmFsdWVDaGVja2JveCArIENo
ZWNrYm94UGFydCk7CiB9CiAKIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpD
U1NQcmltaXRpdmVWYWx1ZShCYWNrZmFjZVZpc2liaWxpdHkgZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24gYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UHJvcGVydGllcy5qc29uCmluZGV4IDA2MWYzOWE1YjFiNzJlNmUxYWM3ZWMxODE1NWM5ZmZkYmI1
NjJlODIuLmUwZjAzZWY1N2JmYjdiNmUwZDNjNzYxMTFiNTk2NjY3YzAzZTM1YWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24KKysrIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgpAQCAtNDk4OCw2ICs0OTg4LDcgQEAKICAgICAg
ICAgICAgICAgICAiY2Fwcy1sb2NrLWluZGljYXRvciIsCiAgICAgICAgICAgICAgICAgImNvbG9y
LXdlbGwiLAogICAgICAgICAgICAgICAgICJsaXN0LWJ1dHRvbiIsCisgICAgICAgICAgICAgICAg
ImF1dG8iLAogICAgICAgICAgICAgICAgICJub25lIgogICAgICAgICAgICAgXSwKICAgICAgICAg
ICAgICJzdGF0dXMiOiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NT
U1BhcnNlckZhc3RQYXRocy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1BhcnNl
ckZhc3RQYXRocy5jcHAKaW5kZXggMjJkZmNjMzNkM2I3OGViNzIyYjVjMDg1ODdkOTVjNTI2Yzcz
OWNlYy4uZTZjMTAwNWE2ZjQ1OGU3NTU4NmYyMjA5ZGJiZTk2MjVkMDYzMTVlNCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQYXJzZXJGYXN0UGF0aHMuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUGFyc2VyRmFzdFBhdGhzLmNwcApAQCAtNzU0
LDcgKzc1NCw3IEBAIGJvb2wgQ1NTUGFyc2VyRmFzdFBhdGhzOjppc1ZhbGlkS2V5d29yZFByb3Bl
cnR5QW5kVmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlkCiAgICAgY2FzZSBDU1NQcm9wZXJ0
eVZpc2liaWxpdHk6IC8vIHZpc2libGUgfCBoaWRkZW4gfCBjb2xsYXBzZQogICAgICAgICByZXR1
cm4gdmFsdWVJRCA9PSBDU1NWYWx1ZVZpc2libGUgfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZUhpZGRl
biB8fCB2YWx1ZUlEID09IENTU1ZhbHVlQ29sbGFwc2U7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdl
YmtpdEFwcGVhcmFuY2U6Ci0gICAgICAgIHJldHVybiAodmFsdWVJRCA+PSBDU1NWYWx1ZUNoZWNr
Ym94ICYmIHZhbHVlSUQgPD0gQ1NTVmFsdWVDYXBzTG9ja0luZGljYXRvcikgfHwgdmFsdWVJRCA9
PSBDU1NWYWx1ZU5vbmU7CisgICAgICAgIHJldHVybiAodmFsdWVJRCA+PSBDU1NWYWx1ZUNoZWNr
Ym94ICYmIHZhbHVlSUQgPD0gQ1NTVmFsdWVDYXBzTG9ja0luZGljYXRvcikgfHwgdmFsdWVJRCA9
PSBDU1NWYWx1ZU5vbmUgfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZUF1dG87CiAgICAgY2FzZSBDU1NQ
cm9wZXJ0eUJhY2tmYWNlVmlzaWJpbGl0eToKICAgICAgICAgcmV0dXJuIHZhbHVlSUQgPT0gQ1NT
VmFsdWVWaXNpYmxlIHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVIaWRkZW47CiAjaWYgRU5BQkxFKENT
U19DT01QT1NJVElORykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvRmlsZUlucHV0
VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwCmluZGV4IGUw
ZmY1Mzk2M2I1NzBjYjFkZmZkMzA0OTE5Y2RhZjdjNGExMzc0MDQuLmQwZjFhOTVhMWJkYzlhMDQ4
ODJmYjMwMTE1MWFmNTQxMGYwNmQ2MzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
RmlsZUlucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBl
LmNwcApAQCAtNjYsNiArNjYsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHVzaW5nIG5hbWVz
cGFjZSBIVE1MTmFtZXM7CiAKKy8vIEZJWE1FOiBUaGlzIGNhbiBsaWtlbHkgYmUgYW4gSFRNTERp
dkVsZW1lbnQuCiBjbGFzcyBVcGxvYWRCdXR0b25FbGVtZW50IGZpbmFsIDogcHVibGljIEhUTUxJ
bnB1dEVsZW1lbnQgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU5MSU5FKFVwbG9hZEJ1
dHRvbkVsZW1lbnQpOwogcHVibGljOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9T
ZWFyY2hJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9TZWFyY2hJbnB1dFR5cGUu
Y3BwCmluZGV4IGI1NWEwZjU3OWFmMGQ2ZjU5M2RjYjI5ZWRmM2I5MWJhNzBjOGJhMjUuLjE2OTg0
ZDk0MTE4NmI5YTFhYTlhMDk3MjA5MjMzYzEwNDUwMzRiNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvU2VhcmNoSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L1NlYXJjaElucHV0VHlwZS5jcHAKQEAgLTY5LDExICs2OSwxMSBAQCBzdGF0aWMgdm9pZCB1cGRh
dGVSZXN1bHRCdXR0b25Qc2V1ZG9UeXBlKFNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQm
IHJlc3VsdAogICAgIHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRvbVN0
cmluZz4gd2Via2l0U2VhcmNoUmVzdWx0c0RlY29yYXRpb25OYW1lKCItd2Via2l0LXNlYXJjaC1y
ZXN1bHRzLWRlY29yYXRpb24iLCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7CiAg
ICAgc3RhdGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiB3ZWJr
aXRTZWFyY2hSZXN1bHRzQnV0dG9uTmFtZSgiLXdlYmtpdC1zZWFyY2gtcmVzdWx0cy1idXR0b24i
LCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7CiAgICAgaWYgKCFtYXhSZXN1bHRz
KQotICAgICAgICByZXN1bHRCdXR0b24uc2V0UHNldWRvKHdlYmtpdFNlYXJjaFJlc3VsdHNEZWNv
cmF0aW9uTmFtZSk7CisgICAgICAgIHJlc3VsdEJ1dHRvbi5zZXRQc2V1ZG8oU2VhcmNoRmllbGRS
ZXN1bHRzQnV0dG9uRWxlbWVudDo6c2VhcmNoUmVzdWx0c0RlY29yYXRpb25Qc2V1ZG9JZCgpKTsK
ICAgICBlbHNlIGlmIChtYXhSZXN1bHRzIDwgMCkKLSAgICAgICAgcmVzdWx0QnV0dG9uLnNldFBz
ZXVkbyh3ZWJraXRTZWFyY2hEZWNvcmF0aW9uTmFtZSk7CisgICAgICAgIHJlc3VsdEJ1dHRvbi5z
ZXRQc2V1ZG8oU2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudDo6c2VhcmNoRGVjb3JhdGlv
blBzZXVkb0lkKCkpOwogICAgIGVsc2UKLSAgICAgICAgcmVzdWx0QnV0dG9uLnNldFBzZXVkbyh3
ZWJraXRTZWFyY2hSZXN1bHRzQnV0dG9uTmFtZSk7CisgICAgICAgIHJlc3VsdEJ1dHRvbi5zZXRQ
c2V1ZG8oU2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudDo6c2VhcmNoUmVzdWx0c0J1dHRv
blBzZXVkb0lkKCkpOwogfQogCiB2b2lkIFNlYXJjaElucHV0VHlwZTo6YXR0cmlidXRlQ2hhbmdl
ZChjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9UZXh0RmllbGRJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9UZXh0Rmll
bGRJbnB1dFR5cGUuY3BwCmluZGV4IDFlNTM1ZTdiMTExZmIyNGYzY2ZiNThkZjUwOWE5ZDEwMDIz
MmI0MTEuLmVjZTgyNTUxMTEwNjVlYWY3ODU3Y2U3M2RkMjBhNGJmMGYxZmY2MmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL1RleHRGaWVsZElucHV0VHlwZS5jcHAKQEAgLTM0OCw5ICszNDgsNyBA
QCB2b2lkIFRleHRGaWVsZElucHV0VHlwZTo6Y3JlYXRlU2hhZG93U3VidHJlZUFuZFVwZGF0ZUlu
bmVyVGV4dEVsZW1lbnRFZGl0YWJpbGl0eQogICAgIH0KIAogICAgIGlmIChzaG91bGRIYXZlQ2Fw
c0xvY2tJbmRpY2F0b3IpIHsKLSAgICAgICAgc3RhdGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3ll
ZDxjb25zdCBBdG9tU3RyaW5nPiB3ZWJraXRDYXBzTG9ja0luZGljYXRvck5hbWUoIi13ZWJraXQt
Y2Fwcy1sb2NrLWluZGljYXRvciIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsK
LSAgICAgICAgbV9jYXBzTG9ja0luZGljYXRvciA9IEhUTUxEaXZFbGVtZW50OjpjcmVhdGUoZG9j
dW1lbnQpOwotICAgICAgICBtX2NhcHNMb2NrSW5kaWNhdG9yLT5zZXRQc2V1ZG8od2Via2l0Q2Fw
c0xvY2tJbmRpY2F0b3JOYW1lKTsKKyAgICAgICAgbV9jYXBzTG9ja0luZGljYXRvciA9IENhcHNM
b2NrSW5kaWNhdG9yRWxlbWVudDo6Y3JlYXRlKGRvY3VtZW50KTsKIAogICAgICAgICBib29sIHNo
b3VsZERyYXdDYXBzTG9ja0luZGljYXRvciA9IHRoaXMtPnNob3VsZERyYXdDYXBzTG9ja0luZGlj
YXRvcigpOwogICAgICAgICBtX2NhcHNMb2NrSW5kaWNhdG9yLT5zZXRJbmxpbmVTdHlsZVByb3Bl
cnR5KENTU1Byb3BlcnR5RGlzcGxheSwgc2hvdWxkRHJhd0NhcHNMb2NrSW5kaWNhdG9yID8gQ1NT
VmFsdWVCbG9jayA6IENTU1ZhbHVlTm9uZSwgdHJ1ZSk7CkBAIC00NTYsMTEgKzQ1NCw5IEBAIHZv
aWQgVGV4dEZpZWxkSW5wdXRUeXBlOjpjcmVhdGVEYXRhTGlzdERyb3Bkb3duSW5kaWNhdG9yKCkK
ICAgICBpZiAoIW1fY29udGFpbmVyKQogICAgICAgICBjcmVhdGVDb250YWluZXIoKTsKIAotICAg
IHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRvbVN0cmluZz4gd2Via2l0
TGlzdEJ1dHRvbk5hbWUoIi13ZWJraXQtbGlzdC1idXR0b24iLCBBdG9tU3RyaW5nOjpDb25zdHJ1
Y3RGcm9tTGl0ZXJhbCk7CiAgICAgU2NyaXB0RGlzYWxsb3dlZFNjb3BlOjpFdmVudEFsbG93ZWRT
Y29wZSBhbGxvd2VkU2NvcGUoKm1fY29udGFpbmVyKTsKICAgICBtX2RhdGFMaXN0RHJvcGRvd25J
bmRpY2F0b3IgPSBEYXRhTGlzdEJ1dHRvbkVsZW1lbnQ6OmNyZWF0ZShlbGVtZW50KCktPmRvY3Vt
ZW50KCksICp0aGlzKTsKICAgICBtX2NvbnRhaW5lci0+YXBwZW5kQ2hpbGQoKm1fZGF0YUxpc3RE
cm9wZG93bkluZGljYXRvcik7Ci0gICAgbV9kYXRhTGlzdERyb3Bkb3duSW5kaWNhdG9yLT5zZXRQ
c2V1ZG8od2Via2l0TGlzdEJ1dHRvbk5hbWUpOwogICAgIG1fZGF0YUxpc3REcm9wZG93bkluZGlj
YXRvci0+c2V0SW5saW5lU3R5bGVQcm9wZXJ0eShDU1NQcm9wZXJ0eURpc3BsYXksIENTU1ZhbHVl
Tm9uZSwgdHJ1ZSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvVGV4dEZp
ZWxkSW5wdXRUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1RleHRGaWVsZElucHV0VHlwZS5o
CmluZGV4IDY1NWRhNzc3ZWVmZjQwOTdkOTM0MmViNjJjYWNjZjJjNTFmNjAwMTMuLjIxOWUyNjZj
ZjgwN2IwZTkzMjBlZjllMjQwZmNlMTg5YTMzZGQxN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvVGV4dEZpZWxkSW5wdXRUeXBlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9U
ZXh0RmllbGRJbnB1dFR5cGUuaApAQCAtNDAsNiArNDAsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKK2NsYXNzIENhcHNMb2NrSW5kaWNhdG9yRWxlbWVudDsKIGNsYXNzIERPTUZvcm1EYXRh
OwogY2xhc3MgVGV4dENvbnRyb2xJbm5lclRleHRFbGVtZW50OwogCkBAIC0xNTEsNyArMTUyLDcg
QEAgcHJpdmF0ZToKICAgICBSZWZQdHI8VGV4dENvbnRyb2xJbm5lclRleHRFbGVtZW50PiBtX2lu
bmVyVGV4dDsKICAgICBSZWZQdHI8SFRNTEVsZW1lbnQ+IG1fcGxhY2Vob2xkZXI7CiAgICAgUmVm
UHRyPFNwaW5CdXR0b25FbGVtZW50PiBtX2lubmVyU3BpbkJ1dHRvbjsKLSAgICBSZWZQdHI8SFRN
TEVsZW1lbnQ+IG1fY2Fwc0xvY2tJbmRpY2F0b3I7CisgICAgUmVmUHRyPENhcHNMb2NrSW5kaWNh
dG9yRWxlbWVudD4gbV9jYXBzTG9ja0luZGljYXRvcjsKICAgICBSZWZQdHI8SFRNTEVsZW1lbnQ+
IG1fYXV0b0ZpbGxCdXR0b247CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L3NoYWRvdy9EYXRhTGlzdEJ1dHRvbkVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9z
aGFkb3cvRGF0YUxpc3RCdXR0b25FbGVtZW50LmNwcAppbmRleCA3OTJjYzcyMjhkYTk3NTQyMmUx
OWI1N2E3ZDY1OWM5ZDA1ODU5ZjRmLi5lZjU3NWQ1NDc4Nzg1YWIyMmZmOTk3Nzg3NGJjZThlMzNl
MTAzYTc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9EYXRhTGlzdEJ1
dHRvbkVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0RhdGFMaXN0
QnV0dG9uRWxlbWVudC5jcHAKQEAgLTQwLDkgKzQwLDE3IEBAIFdURl9NQUtFX0lTT19BTExPQ0FU
RURfSU1QTChEYXRhTGlzdEJ1dHRvbkVsZW1lbnQpOwogCiB1c2luZyBuYW1lc3BhY2UgSFRNTE5h
bWVzOwogCitjb25zdCBBdG9tU3RyaW5nJiBEYXRhTGlzdEJ1dHRvbkVsZW1lbnQ6Omxpc3RCdXR0
b25Qc2V1ZG9JZCgpCit7CisgICAgc3RhdGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3llZDxjb25z
dCBBdG9tU3RyaW5nPiBsaXN0QnV0dG9uUHNldWRvSWQoIi13ZWJraXQtbGlzdC1idXR0b24iLCBB
dG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7CisgICAgcmV0dXJuIGxpc3RCdXR0b25Q
c2V1ZG9JZDsKK30KKwogUmVmPERhdGFMaXN0QnV0dG9uRWxlbWVudD4gRGF0YUxpc3RCdXR0b25F
bGVtZW50OjpjcmVhdGUoRG9jdW1lbnQmIGRvY3VtZW50LCBEYXRhTGlzdEJ1dHRvbk93bmVyJiBv
d25lcikKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBEYXRhTGlzdEJ1dHRvbkVsZW1lbnQo
ZG9jdW1lbnQsIG93bmVyKSk7CisgICAgYXV0byBlbGVtZW50ID0gYWRvcHRSZWYoKm5ldyBEYXRh
TGlzdEJ1dHRvbkVsZW1lbnQoZG9jdW1lbnQsIG93bmVyKSk7CisgICAgZWxlbWVudC0+c2V0UHNl
dWRvKGxpc3RCdXR0b25Qc2V1ZG9JZCgpKTsKKyAgICByZXR1cm4gZWxlbWVudDsKIH0KIAogRGF0
YUxpc3RCdXR0b25FbGVtZW50OjpEYXRhTGlzdEJ1dHRvbkVsZW1lbnQoRG9jdW1lbnQmIGRvY3Vt
ZW50LCBEYXRhTGlzdEJ1dHRvbk93bmVyJiBvd25lcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvc2hhZG93L0RhdGFMaXN0QnV0dG9uRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9zaGFkb3cvRGF0YUxpc3RCdXR0b25FbGVtZW50LmgKaW5kZXggZmQ5NTg2NGFiN2IxYjcy
ZGI0NTg3Y2VkZDJlM2YxZDljMmIyOGVhOC4uNDlkMWM5MTJlNDViN2EzNWE3OWI2ZDg2NWU5NTky
ODg4YmE4ZGE1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0YUxp
c3RCdXR0b25FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0YUxp
c3RCdXR0b25FbGVtZW50LmgKQEAgLTQ0LDYgKzQ0LDggQEAgcHVibGljOgogCiAgICAgfkRhdGFM
aXN0QnV0dG9uRWxlbWVudCgpOwogCisgICAgc3RhdGljIGNvbnN0IEF0b21TdHJpbmcmIGxpc3RC
dXR0b25Qc2V1ZG9JZCgpOworCiAgICAgc3RhdGljIFJlZjxEYXRhTGlzdEJ1dHRvbkVsZW1lbnQ+
IGNyZWF0ZShEb2N1bWVudCYsIERhdGFMaXN0QnV0dG9uT3duZXImKTsKIAogcHJpdmF0ZToKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NsaWRlclRodW1iRWxlbWVudC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9TbGlkZXJUaHVtYkVsZW1lbnQuY3BwCmlu
ZGV4IGRiYWE4ZDk1ZjM2MTM4Mjc0MTNlMDFkYzY2Y2YxZTFlNjVhYjZiNTQuLmI4NDRmZmY2Njhh
NDgzMjkwYmM2NzE3ZmFkYzc3MWM1ZWI2MzhhNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvc2hhZG93L1NsaWRlclRodW1iRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9zaGFkb3cvU2xpZGVyVGh1bWJFbGVtZW50LmNwcApAQCAtMjEzLDYgKzIxMywxOCBAQCBT
bGlkZXJUaHVtYkVsZW1lbnQ6OlNsaWRlclRodW1iRWxlbWVudChEb2N1bWVudCYgZG9jdW1lbnQp
CiAgICAgc2V0SGFzQ3VzdG9tU3R5bGVSZXNvbHZlQ2FsbGJhY2tzKCk7CiB9CiAKK2NvbnN0IEF0
b21TdHJpbmcmIFNsaWRlclRodW1iRWxlbWVudDo6c2xpZGVyVGh1bWJQc2V1ZG9JZCgpCit7Cisg
ICAgc3RhdGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiBzbGlk
ZXJUaHVtYlBzZXVkb0lkKCItd2Via2l0LXNsaWRlci10aHVtYiIsIEF0b21TdHJpbmc6OkNvbnN0
cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gc2xpZGVyVGh1bWJQc2V1ZG9JZDsKK30KKwor
Y29uc3QgQXRvbVN0cmluZyYgU2xpZGVyVGh1bWJFbGVtZW50OjptZWRpYVNsaWRlclRodW1iUHNl
dWRvSWQoKQoreworICAgIHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRv
bVN0cmluZz4gbWVkaWFTbGlkZXJUaHVtYlBzZXVkb0lkKCItd2Via2l0LW1lZGlhLXNsaWRlci10
aHVtYiIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gbWVk
aWFTbGlkZXJUaHVtYlBzZXVkb0lkOworfQorCiB2b2lkIFNsaWRlclRodW1iRWxlbWVudDo6c2V0
UG9zaXRpb25Gcm9tVmFsdWUoKQogewogICAgIC8vIFNpbmNlIHRoZSBjb2RlIHRvIGNhbGN1bGF0
ZSBwb3NpdGlvbiBpcyBpbiB0aGUgUmVuZGVyU2xpZGVyVGh1bWIgbGF5b3V0CkBAIC01ODksOSAr
NjAxLDYgQEAgc3RkOjpvcHRpb25hbDxTdHlsZTo6RWxlbWVudFN0eWxlPiBTbGlkZXJUaHVtYkVs
ZW1lbnQ6OnJlc29sdmVDdXN0b21TdHlsZShjb25zdAogewogICAgIC8vIFRoaXMgZG9lc24ndCBh
Y3R1YWxseSBjb21wdXRlIHN0eWxlLiBUaGlzIGlzIGp1c3QgYSBoYWNrIHRvIHBpY2sgc2hhZG93
IHBzZXVkbyBpZCB3aGVuIGhvc3Qgc3R5bGUgaXMga25vd24uCiAKLSAgICBzdGF0aWMgTWFpblRo
cmVhZE5ldmVyRGVzdHJveWVkPGNvbnN0IEF0b21TdHJpbmc+IHNsaWRlclRodW1iU2hhZG93UHNl
dWRvSWQoIi13ZWJraXQtc2xpZGVyLXRodW1iIiwgQXRvbVN0cmluZzo6Q29uc3RydWN0RnJvbUxp
dGVyYWwpOwotICAgIHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRvbVN0
cmluZz4gbWVkaWFTbGlkZXJUaHVtYlNoYWRvd1BzZXVkb0lkKCItd2Via2l0LW1lZGlhLXNsaWRl
ci10aHVtYiIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKLQogICAgIGlmICgh
aG9zdFN0eWxlKQogICAgICAgICByZXR1cm4gc3RkOjpudWxsb3B0OwogCkBAIC02MDIsMTAgKzYx
MSwxMCBAQCBzdGQ6Om9wdGlvbmFsPFN0eWxlOjpFbGVtZW50U3R5bGU+IFNsaWRlclRodW1iRWxl
bWVudDo6cmVzb2x2ZUN1c3RvbVN0eWxlKGNvbnN0CiAgICAgY2FzZSBNZWRpYVZvbHVtZVNsaWRl
clRodW1iUGFydDoKICAgICBjYXNlIE1lZGlhRnVsbFNjcmVlblZvbHVtZVNsaWRlclBhcnQ6CiAg
ICAgY2FzZSBNZWRpYUZ1bGxTY3JlZW5Wb2x1bWVTbGlkZXJUaHVtYlBhcnQ6Ci0gICAgICAgIG1f
c2hhZG93UHNldWRvSWQgPSBtZWRpYVNsaWRlclRodW1iU2hhZG93UHNldWRvSWQ7CisgICAgICAg
IG1fc2hhZG93UHNldWRvSWQgPSBtZWRpYVNsaWRlclRodW1iUHNldWRvSWQoKTsKICAgICAgICAg
YnJlYWs7CiAgICAgZGVmYXVsdDoKLSAgICAgICAgbV9zaGFkb3dQc2V1ZG9JZCA9IHNsaWRlclRo
dW1iU2hhZG93UHNldWRvSWQ7CisgICAgICAgIG1fc2hhZG93UHNldWRvSWQgPSBzbGlkZXJUaHVt
YlBzZXVkb0lkKCk7CiAgICAgfQogCiAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NsaWRlclRodW1iRWxlbWVudC5oIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvU2xpZGVyVGh1bWJFbGVtZW50LmgKaW5kZXggYjNjZGVi
YTU2N2U5NWY5NWJmNGY4OWFkOTUzZjVkMmQyY2MzNjNiNS4uZTM3ZDNiYTU2Y2ExYzU1MjZjMGJj
ODEwMGRjMmI0NWE5NTk1MDRmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFk
b3cvU2xpZGVyVGh1bWJFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cv
U2xpZGVyVGh1bWJFbGVtZW50LmgKQEAgLTQzLDYgKzQzLDkgQEAgY2xhc3MgVG91Y2hFdmVudDsK
IGNsYXNzIFNsaWRlclRodW1iRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBIVE1MRGl2RWxlbWVudCB7
CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChTbGlkZXJUaHVtYkVsZW1lbnQpOwogcHVibGlj
OgorICAgIHN0YXRpYyBjb25zdCBBdG9tU3RyaW5nJiBzbGlkZXJUaHVtYlBzZXVkb0lkKCk7Cisg
ICAgc3RhdGljIGNvbnN0IEF0b21TdHJpbmcmIG1lZGlhU2xpZGVyVGh1bWJQc2V1ZG9JZCgpOwor
CiAgICAgc3RhdGljIFJlZjxTbGlkZXJUaHVtYkVsZW1lbnQ+IGNyZWF0ZShEb2N1bWVudCYpOwog
CiAgICAgdm9pZCBzZXRQb3NpdGlvbkZyb21WYWx1ZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9zaGFkb3cvU3BpbkJ1dHRvbkVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9zaGFkb3cvU3BpbkJ1dHRvbkVsZW1lbnQuY3BwCmluZGV4IGQ5MDQyNDBmM2RiYTA2ODQw
YTA0ZWI2YTNjYTcwYmJhNmY4ZmFiZTkuLjdhYWI0ZTZjN2Q2ZTQ3NzQ2MmZiYWQ5MTY0MzI4YmQ3
YjgyMmUyZGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NwaW5CdXR0
b25FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9TcGluQnV0dG9u
RWxlbWVudC5jcHAKQEAgLTU4LDExICs1OCwxNiBAQCBpbmxpbmUgU3BpbkJ1dHRvbkVsZW1lbnQ6
OlNwaW5CdXR0b25FbGVtZW50KERvY3VtZW50JiBkb2N1bWVudCwgU3BpbkJ1dHRvbk93bmVyJgog
ICAgIHNldEhhc0N1c3RvbVN0eWxlUmVzb2x2ZUNhbGxiYWNrcygpOwogfQogCitjb25zdCBBdG9t
U3RyaW5nJiBTcGluQnV0dG9uRWxlbWVudDo6c3BpbkJ1dHRvblBzZXVkb0lkKCkKK3sKKyAgICBz
dGF0aWMgTWFpblRocmVhZE5ldmVyRGVzdHJveWVkPGNvbnN0IEF0b21TdHJpbmc+IHNwaW5CdXR0
b25Qc2V1ZG9JZCgiLXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiIsIEF0b21TdHJpbmc6OkNvbnN0
cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gc3BpbkJ1dHRvblBzZXVkb0lkOworfQorCiBS
ZWY8U3BpbkJ1dHRvbkVsZW1lbnQ+IFNwaW5CdXR0b25FbGVtZW50OjpjcmVhdGUoRG9jdW1lbnQm
IGRvY3VtZW50LCBTcGluQnV0dG9uT3duZXImIHNwaW5CdXR0b25Pd25lcikKIHsKICAgICBhdXRv
IGVsZW1lbnQgPSBhZG9wdFJlZigqbmV3IFNwaW5CdXR0b25FbGVtZW50KGRvY3VtZW50LCBzcGlu
QnV0dG9uT3duZXIpKTsKLSAgICBzdGF0aWMgTWFpblRocmVhZE5ldmVyRGVzdHJveWVkPGNvbnN0
IEF0b21TdHJpbmc+IHdlYmtpdElubmVyU3BpbkJ1dHRvbk5hbWUoIi13ZWJraXQtaW5uZXItc3Bp
bi1idXR0b24iLCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCk7Ci0gICAgZWxlbWVu
dC0+c2V0UHNldWRvKHdlYmtpdElubmVyU3BpbkJ1dHRvbk5hbWUpOworICAgIGVsZW1lbnQtPnNl
dFBzZXVkbyhzcGluQnV0dG9uUHNldWRvSWQoKSk7CiAgICAgcmV0dXJuIGVsZW1lbnQ7CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1NwaW5CdXR0b25FbGVtZW50
LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9TcGluQnV0dG9uRWxlbWVudC5oCmluZGV4
IDNjNzEwN2RkNDk1NTYzMDhkMDMwOTc5ODdkNTVkOTJmMjllNzU5ZjEuLjExMjYzNDJjYTc4ODQ2
N2ViMDllNTU3NjJhN2EwNGM5YzMyZDcwOTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvc2hhZG93L1NwaW5CdXR0b25FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9z
aGFkb3cvU3BpbkJ1dHRvbkVsZW1lbnQuaApAQCAtNTEsNiArNTEsOCBAQCBwdWJsaWM6CiAgICAg
ICAgIHZpcnR1YWwgdm9pZCBzcGluQnV0dG9uU3RlcFVwKCkgPSAwOwogICAgIH07CiAKKyAgICBz
dGF0aWMgY29uc3QgQXRvbVN0cmluZyYgc3BpbkJ1dHRvblBzZXVkb0lkKCk7CisKICAgICAvLyBU
aGUgb3duZXIgb2YgU3BpbkJ1dHRvbkVsZW1lbnQgbXVzdCBjYWxsIHJlbW92ZVNwaW5CdXR0b25P
d25lcgogICAgIC8vIGJlY2F1c2UgU3BpbkJ1dHRvbkVsZW1lbnQgY2FuIGJlIG91dGxpdmUgU3Bp
bkJ1dHRvbk93bmVyCiAgICAgLy8gaW1wbGVtZW50YXRpb24sIGUuZy4gZHVyaW5nIGV2ZW50IGhh
bmRsaW5nLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvVGV4dENvbnRy
b2xJbm5lckVsZW1lbnRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1RleHRDb250
cm9sSW5uZXJFbGVtZW50cy5jcHAKaW5kZXggYmQyNzYwNzE0YjdjMDljMDJmZDc0YzllNjU4YWI0
OTNkYzUxYWU1ZS4uNzdlYWUxYTIxZjY0MjdkZDA3NTgzNjBiOTVjYzkwOTI2YmU0OTUyNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvVGV4dENvbnRyb2xJbm5lckVsZW1l
bnRzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9UZXh0Q29udHJvbElubmVy
RWxlbWVudHMuY3BwCkBAIC01Nyw2ICs1Nyw3IEBAIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1Q
TChUZXh0Q29udHJvbElubmVyVGV4dEVsZW1lbnQpOwogV1RGX01BS0VfSVNPX0FMTE9DQVRFRF9J
TVBMKFRleHRDb250cm9sUGxhY2Vob2xkZXJFbGVtZW50KTsKIFdURl9NQUtFX0lTT19BTExPQ0FU
RURfSU1QTChTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50KTsKIFdURl9NQUtFX0lTT19B
TExPQ0FURURfSU1QTChTZWFyY2hGaWVsZENhbmNlbEJ1dHRvbkVsZW1lbnQpOworV1RGX01BS0Vf
SVNPX0FMTE9DQVRFRF9JTVBMKENhcHNMb2NrSW5kaWNhdG9yRWxlbWVudCk7CiAKIHVzaW5nIG5h
bWVzcGFjZSBIVE1MTmFtZXM7CiAKQEAgLTIzNCw2ICsyMzUsMjQgQEAgaW5saW5lIFNlYXJjaEZp
ZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQ6OlNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQo
RG9jdW1lbnQKICAgICBzZXRIYXNDdXN0b21TdHlsZVJlc29sdmVDYWxsYmFja3MoKTsKIH0KIAor
Y29uc3QgQXRvbVN0cmluZyYgU2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudDo6c2VhcmNo
RGVjb3JhdGlvblBzZXVkb0lkKCkKK3sKKyAgICBzdGF0aWMgTWFpblRocmVhZE5ldmVyRGVzdHJv
eWVkPGNvbnN0IEF0b21TdHJpbmc+IHNlYXJjaERlY29yYXRpb25Qc2V1ZG9JZCgiLXdlYmtpdC1z
ZWFyY2gtZGVjb3JhdGlvbiIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKKyAg
ICByZXR1cm4gc2VhcmNoRGVjb3JhdGlvblBzZXVkb0lkOworfQorCitjb25zdCBBdG9tU3RyaW5n
JiBTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50OjpzZWFyY2hSZXN1bHRzRGVjb3JhdGlv
blBzZXVkb0lkKCkKK3sKKyAgICBzdGF0aWMgTWFpblRocmVhZE5ldmVyRGVzdHJveWVkPGNvbnN0
IEF0b21TdHJpbmc+IHNlYXJjaFJlc3VsdHNEZWNvcmF0aW9uUHNldWRvSWQoIi13ZWJraXQtc2Vh
cmNoLXJlc3VsdHMtZGVjb3JhdGlvbiIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFs
KTsKKyAgICByZXR1cm4gc2VhcmNoUmVzdWx0c0RlY29yYXRpb25Qc2V1ZG9JZDsKK30KKworY29u
c3QgQXRvbVN0cmluZyYgU2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudDo6c2VhcmNoUmVz
dWx0c0J1dHRvblBzZXVkb0lkKCkKK3sKKyAgICBzdGF0aWMgTWFpblRocmVhZE5ldmVyRGVzdHJv
eWVkPGNvbnN0IEF0b21TdHJpbmc+IHNlYXJjaFJlc3VsdHNCdXR0b25Qc2V1ZG9JZCgiLXdlYmtp
dC1zZWFyY2gtcmVzdWx0cy1idXR0b24iLCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJh
bCk7CisgICAgcmV0dXJuIHNlYXJjaFJlc3VsdHNCdXR0b25Qc2V1ZG9JZDsKK30KKwogUmVmPFNl
YXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQ+IFNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVs
ZW1lbnQ6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1lbnQpCiB7CiAgICAgcmV0dXJuIGFkb3B0UmVm
KCpuZXcgU2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudChkb2N1bWVudCkpOwpAQCAtMjkz
LDEyICszMTIsMTggQEAgaW5saW5lIFNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uRWxlbWVudDo6U2Vh
cmNoRmllbGRDYW5jZWxCdXR0b25FbGVtZW50KERvY3VtZW50JgogICAgIHNldEhhc0N1c3RvbVN0
eWxlUmVzb2x2ZUNhbGxiYWNrcygpOwogfQogCitjb25zdCBBdG9tU3RyaW5nJiBTZWFyY2hGaWVs
ZENhbmNlbEJ1dHRvbkVsZW1lbnQ6OnNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uUHNldWRvSWQoKQor
eworICAgIHN0YXRpYyBNYWluVGhyZWFkTmV2ZXJEZXN0cm95ZWQ8Y29uc3QgQXRvbVN0cmluZz4g
c2VhcmNoRmllbGRDYW5jZWxCdXR0b25Qc2V1ZG9JZCgiLXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1
dHRvbiIsIEF0b21TdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKTsKKyAgICByZXR1cm4gc2Vh
cmNoRmllbGRDYW5jZWxCdXR0b25Qc2V1ZG9JZDsKK30KKwogUmVmPFNlYXJjaEZpZWxkQ2FuY2Vs
QnV0dG9uRWxlbWVudD4gU2VhcmNoRmllbGRDYW5jZWxCdXR0b25FbGVtZW50OjpjcmVhdGUoRG9j
dW1lbnQmIGRvY3VtZW50KQogewogICAgIGF1dG8gZWxlbWVudCA9IGFkb3B0UmVmKCpuZXcgU2Vh
cmNoRmllbGRDYW5jZWxCdXR0b25FbGVtZW50KGRvY3VtZW50KSk7Ci0gICAgc3RhdGljIE1haW5U
aHJlYWROZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiB3ZWJraXRTZWFyY2hDYW5jZWxC
dXR0b25OYW1lKCItd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIiwgQXRvbVN0cmluZzo6Q29u
c3RydWN0RnJvbUxpdGVyYWwpOworCiAgICAgc3RhdGljIE1haW5UaHJlYWROZXZlckRlc3Ryb3ll
ZDxjb25zdCBBdG9tU3RyaW5nPiBidXR0b25OYW1lKCJidXR0b24iLCBBdG9tU3RyaW5nOjpDb25z
dHJ1Y3RGcm9tTGl0ZXJhbCk7Ci0gICAgZWxlbWVudC0+c2V0UHNldWRvKHdlYmtpdFNlYXJjaENh
bmNlbEJ1dHRvbk5hbWUpOworICAgIGVsZW1lbnQtPnNldFBzZXVkbyhzZWFyY2hGaWVsZENhbmNl
bEJ1dHRvblBzZXVkb0lkKCkpOwogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQogICAgIGVsZW1l
bnQtPnNldEF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24oYXJpYV9sYWJlbEF0dHIsIEFY
U2VhcmNoRmllbGRDYW5jZWxCdXR0b25UZXh0KCkpOwogI2VuZGlmCkBAIC0zNTAsNCArMzc1LDI0
IEBAIGJvb2wgU2VhcmNoRmllbGRDYW5jZWxCdXR0b25FbGVtZW50Ojp3aWxsUmVzcG9uZFRvTW91
c2VDbGlja0V2ZW50cygpCiB9CiAjZW5kaWYKIAorLy8gTUFSSzogQ2Fwc0xvY2tJbmRpY2F0b3JF
bGVtZW50CisKK0NhcHNMb2NrSW5kaWNhdG9yRWxlbWVudDo6Q2Fwc0xvY2tJbmRpY2F0b3JFbGVt
ZW50KERvY3VtZW50JiBkb2N1bWVudCkKKyAgICA6IEhUTUxEaXZFbGVtZW50KGRpdlRhZywgZG9j
dW1lbnQpCit7Cit9CisKK2NvbnN0IEF0b21TdHJpbmcmIENhcHNMb2NrSW5kaWNhdG9yRWxlbWVu
dDo6Y2Fwc0xvY2tJbmRpY2F0b3JQc2V1ZG9JZCgpCit7CisgICAgc3RhdGljIE1haW5UaHJlYWRO
ZXZlckRlc3Ryb3llZDxjb25zdCBBdG9tU3RyaW5nPiBjYXBzTG9ja0luZGljYXRvclBzZXVkb0lk
KCItd2Via2l0LWNhcHMtbG9jay1pbmRpY2F0b3IiLCBBdG9tU3RyaW5nOjpDb25zdHJ1Y3RGcm9t
TGl0ZXJhbCk7CisgICAgcmV0dXJuIGNhcHNMb2NrSW5kaWNhdG9yUHNldWRvSWQ7Cit9CisKK1Jl
ZjxDYXBzTG9ja0luZGljYXRvckVsZW1lbnQ+IENhcHNMb2NrSW5kaWNhdG9yRWxlbWVudDo6Y3Jl
YXRlKERvY3VtZW50JiBkb2N1bWVudCkKK3sKKyAgICBhdXRvIGVsZW1lbnQgPSBhZG9wdFJlZigq
bmV3IENhcHNMb2NrSW5kaWNhdG9yRWxlbWVudChkb2N1bWVudCkpOworICAgIGVsZW1lbnQtPnNl
dFBzZXVkbyhjYXBzTG9ja0luZGljYXRvclBzZXVkb0lkKCkpOworICAgIHJldHVybiBlbGVtZW50
OworfQorCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9UZXh0Q29u
dHJvbElubmVyRWxlbWVudHMuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1RleHRDb250
cm9sSW5uZXJFbGVtZW50cy5oCmluZGV4IDdjMzJiYjRhMjE3NzcwYzE0ZjYyMWUyNGNmZGJiNmIw
YTdjNzE1MmEuLmIwZjllY2E3MmYzMzhhZjJjMTFlNzQ2OWYyYTMzNDk4YTQ4Nzk5N2EgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1RleHRDb250cm9sSW5uZXJFbGVtZW50
cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1RleHRDb250cm9sSW5uZXJFbGVt
ZW50cy5oCkBAIC05NCw2ICs5NCwxMCBAQCBwcml2YXRlOgogY2xhc3MgU2VhcmNoRmllbGRSZXN1
bHRzQnV0dG9uRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBIVE1MRGl2RWxlbWVudCB7CiAgICAgV1RG
X01BS0VfSVNPX0FMTE9DQVRFRChTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50KTsKIHB1
YmxpYzoKKyAgICBzdGF0aWMgY29uc3QgQXRvbVN0cmluZyYgc2VhcmNoRGVjb3JhdGlvblBzZXVk
b0lkKCk7CisgICAgc3RhdGljIGNvbnN0IEF0b21TdHJpbmcmIHNlYXJjaFJlc3VsdHNEZWNvcmF0
aW9uUHNldWRvSWQoKTsKKyAgICBzdGF0aWMgY29uc3QgQXRvbVN0cmluZyYgc2VhcmNoUmVzdWx0
c0J1dHRvblBzZXVkb0lkKCk7CisKICAgICBzdGF0aWMgUmVmPFNlYXJjaEZpZWxkUmVzdWx0c0J1
dHRvbkVsZW1lbnQ+IGNyZWF0ZShEb2N1bWVudCYpOwogCiAgICAgdm9pZCBkZWZhdWx0RXZlbnRI
YW5kbGVyKEV2ZW50Jikgb3ZlcnJpZGU7CkBAIC0xMTUsNiArMTE5LDggQEAgcHJpdmF0ZToKIGNs
YXNzIFNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBIVE1MRGl2
RWxlbWVudCB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChTZWFyY2hGaWVsZENhbmNlbEJ1
dHRvbkVsZW1lbnQpOwogcHVibGljOgorICAgIHN0YXRpYyBjb25zdCBBdG9tU3RyaW5nJiBzZWFy
Y2hGaWVsZENhbmNlbEJ1dHRvblBzZXVkb0lkKCk7CisKICAgICBzdGF0aWMgUmVmPFNlYXJjaEZp
ZWxkQ2FuY2VsQnV0dG9uRWxlbWVudD4gY3JlYXRlKERvY3VtZW50Jik7CiAKICAgICB2b2lkIGRl
ZmF1bHRFdmVudEhhbmRsZXIoRXZlbnQmKSBvdmVycmlkZTsKQEAgLTEyOCw2ICsxMzQsMTcgQEAg
cHJpdmF0ZToKICAgICBzdGQ6Om9wdGlvbmFsPFN0eWxlOjpFbGVtZW50U3R5bGU+IHJlc29sdmVD
dXN0b21TdHlsZShjb25zdCBSZW5kZXJTdHlsZSYgcGFyZW50U3R5bGUsIGNvbnN0IFJlbmRlclN0
eWxlKiBzaGFkb3dIb3N0U3R5bGUpIG92ZXJyaWRlOwogfTsKIAorY2xhc3MgQ2Fwc0xvY2tJbmRp
Y2F0b3JFbGVtZW50IGZpbmFsIDogcHVibGljIEhUTUxEaXZFbGVtZW50IHsKKyAgICBXVEZfTUFL
RV9JU09fQUxMT0NBVEVEKENhcHNMb2NrSW5kaWNhdG9yRWxlbWVudCk7CitwdWJsaWM6CisgICAg
c3RhdGljIGNvbnN0IEF0b21TdHJpbmcmIGNhcHNMb2NrSW5kaWNhdG9yUHNldWRvSWQoKTsKKwor
ICAgIHN0YXRpYyBSZWY8Q2Fwc0xvY2tJbmRpY2F0b3JFbGVtZW50PiBjcmVhdGUoRG9jdW1lbnQm
KTsKKworcHJpdmF0ZToKKyAgICBDYXBzTG9ja0luZGljYXRvckVsZW1lbnQoRG9jdW1lbnQmKTsK
K307CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19C
RUdJTihXZWJDb3JlOjpUZXh0Q29udHJvbElubmVyVGV4dEVsZW1lbnQpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9UaGVtZVR5cGVzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL1RoZW1lVHlwZXMuY3BwCmluZGV4IGQ5ODk3ZTM4M2QyNDdlMmIzZWZmYWM4YjJmYTIz
NGFhODc1NDVjNjAuLjI3Mjg2MDE3MjE2NTdlZjQ2ODViYjI3NzI5ZmFkOGY5ZmI1OTBkZjcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1lVHlwZXMuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1lVHlwZXMuY3BwCkBAIC0zNCw2ICszNCw3IEBAIFRl
eHRTdHJlYW0mIG9wZXJhdG9yPDwoVGV4dFN0cmVhbSYgdHMsIENvbnRyb2xQYXJ0IGNvbnRyb2xQ
YXJ0KQogewogICAgIHN3aXRjaCAoY29udHJvbFBhcnQpIHsKICAgICBjYXNlIE5vQ29udHJvbFBh
cnQ6IHRzIDw8ICJuby1jb250cm9sLXBhcnQiOyBicmVhazsKKyAgICBjYXNlIEF1dG9QYXJ0OiB0
cyA8PCAiYXV0by1wYXJ0IjsgYnJlYWs7CiAgICAgY2FzZSBDaGVja2JveFBhcnQ6IHRzIDw8ICJj
aGVja2JveC1wYXJ0IjsgYnJlYWs7CiAgICAgY2FzZSBSYWRpb1BhcnQ6IHRzIDw8ICJyYWRpby1w
YXJ0IjsgYnJlYWs7CiAgICAgY2FzZSBQdXNoQnV0dG9uUGFydDogdHMgPDwgInB1c2gtYnV0dG9u
LXBhcnQiOyBicmVhazsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1l
VHlwZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1lVHlwZXMuaAppbmRleCA0ZTQ0
MDU1ZWIzY2I4ZjVhZDMyM2JjOWE4NTdkNzRjM2Y1ZTE5ZWI1Li5jZTdhZDkzZGI2ZWE4OTU2MGVi
YTBlMDhlYzlhOWUyYTQ2OGQ3NDJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9UaGVtZVR5cGVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGhlbWVUeXBlcy5o
CkBAIC0zNCw2ICszNCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIC8vIE11c3QgZm9sbG93IENT
U1ZhbHVlS2V5d29yZHMuaW4gb3JkZXIKIGVudW0gQ29udHJvbFBhcnQgewogICAgIE5vQ29udHJv
bFBhcnQsCisgICAgQXV0b1BhcnQsCiAgICAgQ2hlY2tib3hQYXJ0LAogICAgIFJhZGlvUGFydCwK
ICAgICBQdXNoQnV0dG9uUGFydCwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJUaGVtZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWUu
Y3BwCmluZGV4IGI5MDgyYjU2Nzc5NWYyY2Q1ZTRkNmE3NGQ3MDMzYTg1ZTg3MWMwNWMuLjQ1NTY4
NWZjZjJiM2RmOTMxYjQyZGZlYjJhYjhiYjA4NTkwODFjYmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclRoZW1lLmNwcApAQCAtMzQsOSArMzQsMTQgQEAKICNpbmNsdWRlICJGcmFt
ZS5oIgogI2luY2x1ZGUgIkZyYW1lU2VsZWN0aW9uLmgiCiAjaW5jbHVkZSAiR3JhcGhpY3NDb250
ZXh0LmgiCisjaW5jbHVkZSAiSFRNTEF0dGFjaG1lbnRFbGVtZW50LmgiCisjaW5jbHVkZSAiSFRN
TEJ1dHRvbkVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MSW5wdXRFbGVtZW50LmgiCiAjaW5jbHVk
ZSAiSFRNTE1ldGVyRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgorI2luY2x1ZGUg
IkhUTUxQcm9ncmVzc0VsZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1MU2VsZWN0RWxlbWVudC5oIgor
I2luY2x1ZGUgIkhUTUxUZXh0QXJlYUVsZW1lbnQuaCIKICNpbmNsdWRlICJMb2NhbGl6ZWRTdHJp
bmdzLmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBhaW50SW5mby5oIgpAQCAtNDQs
NiArNDksNyBAQAogI2luY2x1ZGUgIlJlbmRlclN0eWxlLmgiCiAjaW5jbHVkZSAiUmVuZGVyVmll
dy5oIgogI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKKyNpbmNsdWRlICJTbGlk
ZXJUaHVtYkVsZW1lbnQuaCIKICNpbmNsdWRlICJTcGluQnV0dG9uRWxlbWVudC5oIgogI2luY2x1
ZGUgIlN0cmluZ1RydW5jYXRvci5oIgogI2luY2x1ZGUgIlRleHRDb250cm9sSW5uZXJFbGVtZW50
cy5oIgpAQCAtNTMsNiArNTksNyBAQAogCiAKICNpZiBFTkFCTEUoREFUQUxJU1RfRUxFTUVOVCkK
KyNpbmNsdWRlICJEYXRhTGlzdEJ1dHRvbkVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MRGF0YUxp
c3RFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTE9wdGlvbkVsZW1lbnQuaCIKICNlbmRpZgpAQCAt
NzcsOCArODQsMTYgQEAgUmVuZGVyVGhlbWU6OlJlbmRlclRoZW1lKCkKIAogdm9pZCBSZW5kZXJU
aGVtZTo6YWRqdXN0U3R5bGUoUmVuZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBFbGVtZW50KiBlbGVt
ZW50LCBjb25zdCBSZW5kZXJTdHlsZSogdXNlckFnZW50QXBwZWFyYW5jZVN0eWxlKQogeworICAg
IGF1dG8gcGFydCA9IHN0eWxlLmFwcGVhcmFuY2UoKTsKKyAgICBpZiAocGFydCA9PSBBdXRvUGFy
dCkgeworICAgICAgICBwYXJ0ID0gYXV0b0FwcGVhcmFuY2VGb3JFbGVtZW50KGVsZW1lbnQpOwor
ICAgICAgICBpZiAocGFydCA9PSBOb0NvbnRyb2xQYXJ0KSB7CisgICAgICAgICAgICBzdHlsZS5z
ZXRFZmZlY3RpdmVBcHBlYXJhbmNlKE5vQ29udHJvbFBhcnQpOworICAgICAgICAgICAgcmV0dXJu
OworICAgICAgICB9CisgICAgfQorCiAgICAgLy8gRm9yY2UgaW5saW5lIGFuZCB0YWJsZSBkaXNw
bGF5IHN0eWxlcyB0byBiZSBpbmxpbmUtYmxvY2sgKGV4Y2VwdCBmb3IgdGFibGUtIHdoaWNoIGlz
IGJsb2NrKQotICAgIENvbnRyb2xQYXJ0IHBhcnQgPSBzdHlsZS5hcHBlYXJhbmNlKCk7CiAgICAg
aWYgKHN0eWxlLmRpc3BsYXkoKSA9PSBEaXNwbGF5VHlwZTo6SW5saW5lIHx8IHN0eWxlLmRpc3Bs
YXkoKSA9PSBEaXNwbGF5VHlwZTo6SW5saW5lVGFibGUgfHwgc3R5bGUuZGlzcGxheSgpID09IERp
c3BsYXlUeXBlOjpUYWJsZVJvd0dyb3VwCiAgICAgICAgIHx8IHN0eWxlLmRpc3BsYXkoKSA9PSBE
aXNwbGF5VHlwZTo6VGFibGVIZWFkZXJHcm91cCB8fCBzdHlsZS5kaXNwbGF5KCkgPT0gRGlzcGxh
eVR5cGU6OlRhYmxlRm9vdGVyR3JvdXAKICAgICAgICAgfHwgc3R5bGUuZGlzcGxheSgpID09IERp
c3BsYXlUeXBlOjpUYWJsZVJvdyB8fCBzdHlsZS5kaXNwbGF5KCkgPT0gRGlzcGxheVR5cGU6OlRh
YmxlQ29sdW1uR3JvdXAgfHwgc3R5bGUuZGlzcGxheSgpID09IERpc3BsYXlUeXBlOjpUYWJsZUNv
bHVtbgpAQCAtOTAsMTUgKzEwNSwxNyBAQCB2b2lkIFJlbmRlclRoZW1lOjphZGp1c3RTdHlsZShS
ZW5kZXJTdHlsZSYgc3R5bGUsIGNvbnN0IEVsZW1lbnQqIGVsZW1lbnQsIGNvbnN0CiAgICAgaWYg
KHVzZXJBZ2VudEFwcGVhcmFuY2VTdHlsZSAmJiBpc0NvbnRyb2xTdHlsZWQoc3R5bGUsICp1c2Vy
QWdlbnRBcHBlYXJhbmNlU3R5bGUpKSB7CiAgICAgICAgIHN3aXRjaCAocGFydCkgewogICAgICAg
ICBjYXNlIE1lbnVsaXN0UGFydDoKLSAgICAgICAgICAgIHN0eWxlLnNldEVmZmVjdGl2ZUFwcGVh
cmFuY2UoTWVudWxpc3RCdXR0b25QYXJ0KTsKICAgICAgICAgICAgIHBhcnQgPSBNZW51bGlzdEJ1
dHRvblBhcnQ7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgZGVmYXVsdDoKLSAgICAgICAg
ICAgIHN0eWxlLnNldEVmZmVjdGl2ZUFwcGVhcmFuY2UoTm9Db250cm9sUGFydCk7CisgICAgICAg
ICAgICBwYXJ0ID0gTm9Db250cm9sUGFydDsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9
CiAgICAgfQogCisgICAgQVNTRVJUKHBhcnQgIT0gQXV0b1BhcnQpOworICAgIHN0eWxlLnNldEVm
ZmVjdGl2ZUFwcGVhcmFuY2UocGFydCk7CisKICAgICBpZiAoIXN0eWxlLmhhc0VmZmVjdGl2ZUFw
cGVhcmFuY2UoKSkKICAgICAgICAgcmV0dXJuOwogCkBAIC0xOTEsNyArMjA4LDcgQEAgdm9pZCBS
ZW5kZXJUaGVtZTo6YWRqdXN0U3R5bGUoUmVuZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBFbGVtZW50
KiBlbGVtZW50LCBjb25zdAogI2VuZGlmCiAKICAgICAvLyBDYWxsIHRoZSBhcHByb3ByaWF0ZSBz
dHlsZSBhZGp1c3RtZW50IG1ldGhvZCBiYXNlZCBvZmYgdGhlIGFwcGVhcmFuY2UgdmFsdWUuCi0g
ICAgc3dpdGNoIChzdHlsZS5lZmZlY3RpdmVBcHBlYXJhbmNlKCkpIHsKKyAgICBzd2l0Y2ggKHBh
cnQpIHsKICNpZiAhVVNFKE5FV19USEVNRSkKICAgICBjYXNlIENoZWNrYm94UGFydDoKICAgICAg
ICAgcmV0dXJuIGFkanVzdENoZWNrYm94U3R5bGUoc3R5bGUsIGVsZW1lbnQpOwpAQCAtMjcwLDYg
KzI4NywxMTAgQEAgdm9pZCBSZW5kZXJUaGVtZTo6YWRqdXN0U3R5bGUoUmVuZGVyU3R5bGUmIHN0
eWxlLCBjb25zdCBFbGVtZW50KiBlbGVtZW50LCBjb25zdAogICAgIH0KIH0KIAorQ29udHJvbFBh
cnQgUmVuZGVyVGhlbWU6OmF1dG9BcHBlYXJhbmNlRm9yRWxlbWVudChjb25zdCBFbGVtZW50KiBl
bGVtZW50UHRyKSBjb25zdAoreworICAgIGlmICghZWxlbWVudFB0cikKKyAgICAgICAgcmV0dXJu
IE5vQ29udHJvbFBhcnQ7CisKKyAgICBhdXRvJiBlbGVtZW50ID0gKmVsZW1lbnRQdHI7CisKKyAg
ICBpZiAoaXM8SFRNTElucHV0RWxlbWVudD4oZWxlbWVudCkpIHsKKyAgICAgICAgYXV0byYgaW5w
dXQgPSBkb3duY2FzdDxIVE1MSW5wdXRFbGVtZW50PihlbGVtZW50KTsKKworICAgICAgICBpZiAo
aW5wdXQuaXNUZXh0QnV0dG9uKCkgfHwgaW5wdXQuaXNVcGxvYWRCdXR0b24oKSkKKyAgICAgICAg
ICAgIHJldHVybiBQdXNoQnV0dG9uUGFydDsKKworICAgICAgICBpZiAoaW5wdXQuaXNDaGVja2Jv
eCgpKQorICAgICAgICAgICAgcmV0dXJuIENoZWNrYm94UGFydDsKKworICAgICAgICBpZiAoaW5w
dXQuaXNSYWRpb0J1dHRvbigpKQorICAgICAgICAgICAgcmV0dXJuIFJhZGlvUGFydDsKKworICAg
ICAgICBpZiAoaW5wdXQuaXNTZWFyY2hGaWVsZCgpKQorICAgICAgICAgICAgcmV0dXJuIFNlYXJj
aEZpZWxkUGFydDsKKworICAgICAgICBpZiAoaW5wdXQuaXNEYXRlRmllbGQoKSB8fCBpbnB1dC5p
c0RhdGVUaW1lTG9jYWxGaWVsZCgpIHx8IGlucHV0LmlzTW9udGhGaWVsZCgpIHx8IGlucHV0Lmlz
VGltZUZpZWxkKCkgfHwgaW5wdXQuaXNXZWVrRmllbGQoKSkgeworI2lmIFBMQVRGT1JNKElPU19G
QU1JTFkpCisgICAgICAgICAgICByZXR1cm4gTWVudWxpc3RCdXR0b25QYXJ0OworI2Vsc2UKKyAg
ICAgICAgICAgIHJldHVybiBUZXh0RmllbGRQYXJ0OworI2VuZGlmCisgICAgICAgIH0KKworI2lm
IEVOQUJMRShJTlBVVF9UWVBFX0NPTE9SKQorICAgICAgICBpZiAoaW5wdXQuaXNDb2xvckNvbnRy
b2woKSkKKyAgICAgICAgICAgIHJldHVybiBDb2xvcldlbGxQYXJ0OworI2VuZGlmCisKKyAgICAg
ICAgaWYgKGlucHV0LmlzUmFuZ2VDb250cm9sKCkpCisgICAgICAgICAgICByZXR1cm4gU2xpZGVy
SG9yaXpvbnRhbFBhcnQ7CisKKyAgICAgICAgaWYgKGlucHV0LmlzVGV4dEZpZWxkKCkpCisgICAg
ICAgICAgICByZXR1cm4gVGV4dEZpZWxkUGFydDsKKworICAgICAgICAvLyA8aW5wdXQgdHlwZT1o
aWRkZW58aW1hZ2V8ZmlsZT4KKyAgICAgICAgcmV0dXJuIE5vQ29udHJvbFBhcnQ7CisgICAgfQor
CisgICAgaWYgKGlzPEhUTUxCdXR0b25FbGVtZW50PihlbGVtZW50KSkKKyAgICAgICAgcmV0dXJu
IEJ1dHRvblBhcnQ7CisKKyAgICBpZiAoaXM8SFRNTFNlbGVjdEVsZW1lbnQ+KGVsZW1lbnQpKSB7
CisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKKyAgICAgICAgcmV0dXJuIE1lbnVsaXN0QnV0dG9u
UGFydDsKKyNlbHNlCisgICAgICAgIGF1dG8mIHNlbGVjdCA9IGRvd25jYXN0PEhUTUxTZWxlY3RF
bGVtZW50PihlbGVtZW50KTsKKyAgICAgICAgcmV0dXJuIHNlbGVjdC51c2VzTWVudUxpc3QoKSA/
IE1lbnVsaXN0UGFydCA6IExpc3Rib3hQYXJ0OworI2VuZGlmCisgICAgfQorCisgICAgaWYgKGlz
PEhUTUxUZXh0QXJlYUVsZW1lbnQ+KGVsZW1lbnQpKQorICAgICAgICByZXR1cm4gVGV4dEFyZWFQ
YXJ0OworCisgICAgaWYgKGlzPEhUTUxNZXRlckVsZW1lbnQ+KGVsZW1lbnQpKQorICAgICAgICBy
ZXR1cm4gTWV0ZXJQYXJ0OworCisgICAgaWYgKGlzPEhUTUxQcm9ncmVzc0VsZW1lbnQ+KGVsZW1l
bnQpKQorICAgICAgICByZXR1cm4gUHJvZ3Jlc3NCYXJQYXJ0OworCisjaWYgRU5BQkxFKEFUVEFD
SE1FTlRfRUxFTUVOVCkKKyAgICBpZiAoaXM8SFRNTEF0dGFjaG1lbnRFbGVtZW50PihlbGVtZW50
KSkKKyAgICAgICAgcmV0dXJuIEF0dGFjaG1lbnRQYXJ0OworI2VuZGlmCisKKyAgICBpZiAoZWxl
bWVudC5pc0luVXNlckFnZW50U2hhZG93VHJlZSgpKSB7CisgICAgICAgIGF1dG8mIHBzZXVkbyA9
IGVsZW1lbnQuc2hhZG93UHNldWRvSWQoKTsKKworI2lmIEVOQUJMRShEQVRBTElTVF9FTEVNRU5U
KQorICAgICAgICBpZiAocHNldWRvID09IERhdGFMaXN0QnV0dG9uRWxlbWVudDo6bGlzdEJ1dHRv
blBzZXVkb0lkKCkpCisgICAgICAgICAgICByZXR1cm4gTGlzdEJ1dHRvblBhcnQ7CisjZW5kaWYK
KworICAgICAgICBpZiAocHNldWRvID09IENhcHNMb2NrSW5kaWNhdG9yRWxlbWVudDo6Y2Fwc0xv
Y2tJbmRpY2F0b3JQc2V1ZG9JZCgpKQorICAgICAgICAgICAgcmV0dXJuIENhcHNMb2NrSW5kaWNh
dG9yUGFydDsKKworICAgICAgICBpZiAocHNldWRvID09IFNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9u
RWxlbWVudDo6c2VhcmNoRmllbGRDYW5jZWxCdXR0b25Qc2V1ZG9JZCgpKQorICAgICAgICAgICAg
cmV0dXJuIFNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uUGFydDsKKworICAgICAgICBpZiAocHNldWRv
ID09IFNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQ6OnNlYXJjaERlY29yYXRpb25Qc2V1
ZG9JZCgpKQorICAgICAgICAgICAgcmV0dXJuIFNlYXJjaEZpZWxkRGVjb3JhdGlvblBhcnQ7CisK
KyAgICAgICAgaWYgKHBzZXVkbyA9PSBTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50Ojpz
ZWFyY2hSZXN1bHRzRGVjb3JhdGlvblBzZXVkb0lkKCkpCisgICAgICAgICAgICByZXR1cm4gU2Vh
cmNoRmllbGRSZXN1bHRzRGVjb3JhdGlvblBhcnQ7CisKKyAgICAgICAgaWYgKHBzZXVkbyA9PSBT
ZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50OjpzZWFyY2hSZXN1bHRzQnV0dG9uUHNldWRv
SWQoKSkKKyAgICAgICAgICAgIHJldHVybiBTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25QYXJ0Owor
CisgICAgICAgIGlmIChwc2V1ZG8gPT0gU2xpZGVyVGh1bWJFbGVtZW50OjpzbGlkZXJUaHVtYlBz
ZXVkb0lkKCkgfHwgcHNldWRvID09IFNsaWRlclRodW1iRWxlbWVudDo6bWVkaWFTbGlkZXJUaHVt
YlBzZXVkb0lkKCkpCisgICAgICAgICAgICByZXR1cm4gU2xpZGVyVGh1bWJIb3Jpem9udGFsUGFy
dDsKKworICAgICAgICBpZiAocHNldWRvID09IFNwaW5CdXR0b25FbGVtZW50OjpzcGluQnV0dG9u
UHNldWRvSWQoKSkKKyAgICAgICAgICAgIHJldHVybiBJbm5lclNwaW5CdXR0b25QYXJ0OworICAg
IH0KKworICAgIHJldHVybiBOb0NvbnRyb2xQYXJ0OworfQorCiB2b2lkIFJlbmRlclRoZW1lOjph
ZGp1c3RTZWFyY2hGaWVsZERlY29yYXRpb25TdHlsZShSZW5kZXJTdHlsZSYgc3R5bGUsIGNvbnN0
IEVsZW1lbnQqIGVsZW1lbnQpIGNvbnN0CiB7CiAgICAgaWYgKGlzPFNlYXJjaEZpZWxkUmVzdWx0
c0J1dHRvbkVsZW1lbnQ+KGVsZW1lbnQpICYmICFkb3duY2FzdDxTZWFyY2hGaWVsZFJlc3VsdHNC
dXR0b25FbGVtZW50PigqZWxlbWVudCkuY2FuQWRqdXN0U3R5bGVGb3JBcHBlYXJhbmNlKCkpIHsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZS5oIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lLmgKaW5kZXggZTdlNmViYjFiOWQxZWJi
MTg4MDdmYjBhYTg5MTZmOWM4MDFmNzgzMS4uZjgyMmZkNDljY2MzZWVkMDQ5MzQ1NmE3YmE3NDJh
MTg5YmYyMDlmNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRo
ZW1lLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lLmgKQEAgLTQ1
NCw2ICs0NTQsOCBAQCBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCBDb2xvckNhY2hlJiBjb2xvckNh
Y2hlKE9wdGlvblNldDxTdHlsZUNvbG9yOjpPcHRpb25zPikgY29uc3Q7CiAKIHByaXZhdGU6Cisg
ICAgQ29udHJvbFBhcnQgYXV0b0FwcGVhcmFuY2VGb3JFbGVtZW50KGNvbnN0IEVsZW1lbnQqKSBj
b25zdDsKKwogICAgIHZvaWQgYWRqdXN0U2VhcmNoRmllbGREZWNvcmF0aW9uU3R5bGUoUmVuZGVy
U3R5bGUmLCBjb25zdCBFbGVtZW50KikgY29uc3Q7CiAKICAgICBtdXRhYmxlIEhhc2hNYXA8dWlu
dDhfdCwgQ29sb3JDYWNoZSwgRGVmYXVsdEhhc2g8dWludDhfdD4sIFdURjo6VW5zaWduZWRXaXRo
WmVyb0tleUhhc2hUcmFpdHM8dWludDhfdD4+IG1fY29sb3JDYWNoZU1hcDsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBmMjA0
NzAyZGU3NmVmMTYwOWI3ZGYwZjY2MGI0Y2U5ZDNhYmMzNGNjLi40NTc0N2E3Njk5ZGRhM2VlYWJj
MDFiZTcxMzMwOGJiNTdlY2YyZWQ0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
KysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjEtMTAtMDUg
IEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBzdXBw
b3J0IGZvciAnLXdlYmtpdC1hcHBlYXJhbmNlOiBhdXRvJworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxMjAzCisgICAgICAgIHJkYXI6Ly84MzY5NjEz
MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGxh
dGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy11aS9hcHBl
YXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vaW9zLXdr
Mi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1j
c3NvbS0wMDEtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL3dwZS9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhw
ZWN0ZWQudHh0OgorCiAyMDIxLTEwLTAzICBBbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4K
IAogICAgICAgICBbTEZDXVtJRkNdIERvIG5vdCB0YWtlIGhhbmdpbmcgd2hpdGVzcGFjZSBzZXF1
ZW5jZSBpbnRvIGFjY291bnQgd2hpbGUgZmluZGluZyBleHBhbnNpb24gb3Bwb3J0dW5pdGllcwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggYzg1MmE3NDg2MTM1NmRkZmRhYTRhZjAy
M2ZkNzliODE2M2E3YTg0YS4uZjI5ZGIyM2I5N2EwNWU0YjRiYmM2OTZjZWNmMmFlYTI1N2JhODFj
NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9M
YXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjEt
MTAtMDUgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29tPgorCisgICAgICAgIEFk
ZCBzdXBwb3J0IGZvciAnLXdlYmtpdC1hcHBlYXJhbmNlOiBhdXRvJworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxMjAzCisgICAgICAgIHJkYXI6Ly84
MzY5NjEzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhw
ZWN0ZWQudHh0OgorCisgICAgICAgIE1hcmsgcHJvZ3Jlc3Npb24uCisKIDIwMjEtMTAtMDIgIE5p
a29zIE1vdWNodGFyaXMgIDxubW91Y2h0YXJpc0BhcHBsZS5jb20+CiAKICAgICAgICAgV1BUcyBm
b3IgaHlwb3Qsc3FydCxwb3cgY2FsYyBmdW5jdGlvbnMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy11aS9hcHBlYXJhbmNlLWNz
c29tLTAwMS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0Cmlu
ZGV4IGY2NDU3OTRjOTQ2NjEwOTgyZjE3ZjgyZGY4MWU0OTNmNTI3ZmMzZTQuLjg4YmRkOWMyYjYx
YjU3MGUyMGYxZjM0OTE2ODMzZTlmZTQxMzBjNzcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy11aS9hcHBlYXJhbmNlLWNzc29t
LTAwMS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3MvY3NzLXVpL2FwcGVhcmFuY2UtY3Nzb20tMDAxLWV4cGVjdGVkLnR4dApA
QCAtMSw3ICsxLDcgQEAKIFRlc3QKIAogUEFTUyAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmUKLUZB
SUwgLXdlYmtpdC1hcHBlYXJhbmNlOiBhdXRvIGFzc2VydF9lcXVhbHM6IHN0eWxlLldlYmtpdEFw
cGVhcmFuY2UgKHVwcGVyY2FzZSBXKSBleHBlY3RlZCAiYXV0byIgYnV0IGdvdCAiIgorUEFTUyAt
d2Via2l0LWFwcGVhcmFuY2U6IGF1dG8KIFBBU1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b24K
IFBBU1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBjaGVja2JveAogUEFTUyAtd2Via2l0LWFwcGVhcmFu
Y2U6IGxpc3Rib3gKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy11aS9hcHBlYXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50
eHQKaW5kZXggNmUxYmNlYzk0Yzc1MjI1YjYyZWEwMjRiYjNhZjQwZTZkNjk5MzA2My4uNDMwNDk2
ZjU4ZTE1ZGM3ZmJmMDZjOWUzZjQxNmU3ODRjYzNhOTRiYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy11
aS9hcHBlYXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy11aS9hcHBl
YXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQKQEAgLTEsNyArMSw3IEBACiBUZXN0CiAKIFBB
U1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lCi1GQUlMIC13ZWJraXQtYXBwZWFyYW5jZTogYXV0
byBhc3NlcnRfZXF1YWxzOiBzdHlsZS5XZWJraXRBcHBlYXJhbmNlICh1cHBlcmNhc2UgVykgZXhw
ZWN0ZWQgImF1dG8iIGJ1dCBnb3QgIiIKK1BBU1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBhdXRvCiBQ
QVNTIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uCiBQQVNTIC13ZWJraXQtYXBwZWFyYW5jZTog
Y2hlY2tib3gKIFBBU1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBsaXN0Ym94CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy11aS9hcHBlYXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy11aS9hcHBlYXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQKaW5kZXggZjY0NTc5NGM5
NDY2MTA5ODJmMTdmODJkZjgxZTQ5M2Y1MjdmYzNlNC4uODhiZGQ5YzJiNjFiNTcwZTIwZjFmMzQ5
MTY4MzNlOWZlNDEzMGM3NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdr
Mi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1j
c3NvbS0wMDEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy13azIv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXVpL2FwcGVhcmFuY2UtY3Nz
b20tMDAxLWV4cGVjdGVkLnR4dApAQCAtMSw3ICsxLDcgQEAKIFRlc3QKIAogUEFTUyAtd2Via2l0
LWFwcGVhcmFuY2U6IG5vbmUKLUZBSUwgLXdlYmtpdC1hcHBlYXJhbmNlOiBhdXRvIGFzc2VydF9l
cXVhbHM6IHN0eWxlLldlYmtpdEFwcGVhcmFuY2UgKHVwcGVyY2FzZSBXKSBleHBlY3RlZCAiYXV0
byIgYnV0IGdvdCAiIgorUEFTUyAtd2Via2l0LWFwcGVhcmFuY2U6IGF1dG8KIFBBU1MgLXdlYmtp
dC1hcHBlYXJhbmNlOiBidXR0b24KIFBBU1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBjaGVja2JveAog
UEFTUyAtd2Via2l0LWFwcGVhcmFuY2U6IGxpc3Rib3gKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkv
YXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy11aS9hcHBlYXJhbmNl
LWNzc29tLTAwMS1leHBlY3RlZC50eHQKaW5kZXggZGFhNjEzMGRkYjJhMGI4MDA5YmYzMDU2MzI4
OGJmZmFiNTM0Zjg5ZC4uNTUwNWNmMWVjYzY4M2JmNzQ5YzAwZWIwMTNlMDBkMjM2YmY0MTFjZCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvY3NzL2Nzcy11aS9hcHBlYXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy11aS9hcHBlYXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQKQEAgLTEs
NyArMSw3IEBACiBUZXN0CiAKIFBBU1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lCi1GQUlMIC13
ZWJraXQtYXBwZWFyYW5jZTogYXV0byBhc3NlcnRfZXF1YWxzOiBzdHlsZS5XZWJraXRBcHBlYXJh
bmNlICh1cHBlcmNhc2UgVykgZXhwZWN0ZWQgImF1dG8iIGJ1dCBnb3QgIiIKK1BBU1MgLXdlYmtp
dC1hcHBlYXJhbmNlOiBhdXRvCiBQQVNTIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uCiBQQVNT
IC13ZWJraXQtYXBwZWFyYW5jZTogY2hlY2tib3gKIFBBU1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBs
aXN0Ym94Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440522</attachid>
            <date>2021-10-07 12:15:31 -0700</date>
            <delta_ts>2021-10-08 14:24:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231203-20211007121531.patch</filename>
            <type>text/plain</type>
            <size>17807</size>
            <attacher name="Aditya Keerthi">akeerthi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzNjc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmUyMTg4Y2E0NjA5NTlh
MTQ0ZGFjMzgxYjljYjdmMTYwM2E2MmFhNS4uOWM1MDYzYjJkMzRlMzRiYWNhZDgxMDVjOWFiYjVk
NDExMjhmY2VkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDIxLTEwLTA3ICBBZGl0
eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgc3VwcG9ydCBm
b3IgJy13ZWJraXQtYXBwZWFyYW5jZTogYXV0bycKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTIwMworICAgICAgICByZGFyOi8vODM2OTYxMzMKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgJ2FwcGVh
cmFuY2UnIHByb3BlcnR5IGFsbG93cyBhdXRob3JzIHRvIHVzZSB0aGUgJ2F1dG8nIGtleXdvcmQK
KyAgICAgICAgdG8gb3B0IHdpZGdldHMgKGFueSBlbGVtZW50IHRoYXQgY2FuIGhhdmUgYSBuYXRp
dmUgYXBwZWFyYW5jZSkgaW50bworICAgICAgICBhIG5hdGl2ZSBhcHBlYXJhbmNlIFsxXS4gRWxl
bWVudHMgb3RoZXIgdGhhbiB3aWRnZXRzIGFyZSByZW5kZXJlZAorICAgICAgICBhcyBpZiBub25l
IGhhZCBiZWVuIHNwZWNpZmllZC4KKworICAgICAgICBTaW5jZSAnLXdlYmtpdC1hcHBlYXJhbmNl
JyBpcyBhIHBhcnNlIHRpbWUgYWxpYXMgb2YgJ2FwcGVhcmFuY2UnLAorICAgICAgICBzdXBwb3J0
ICctd2Via2l0LWFwcGVhcmFuY2U6IGF1dG8nIHByaW9yIHRvIHVucHJlZml4aW5nLgorCisgICAg
ICAgIFRoZSB1c2VkLXZhbHVlIGZvciBhcHBlYXJhbmNlIChlZmZlY3RpdmVBcHBlYXJhbmNlKSBp
cyBkZXRlcm1pbmVkIGJ5CisgICAgICAgIHRoZSBlbGVtZW50IHRhZyBhbmQgdHlwZS4gSW4gdGhl
IGNhc2Ugb2YgZWxlbWVudHMgaW4gdGhlIFVBIHNoYWRvdworICAgICAgICB0cmVlLCB0aGUgcHNl
dWRvIGlkIGlzIHVzZWQgdG8gZGV0ZXJtaW5lIHRoZSBlZmZlY3RpdmUgYXBwZWFyYW5jZS4gVGhl
CisgICAgICAgIHVzZWQtdmFsdWVzIHdoZW4gc3BlY2lmeWluZyAnYXV0bycgbWF0Y2ggdGhlIGRl
ZmF1bHQgc3BlY2lmaWVkIHZhbHVlcworICAgICAgICBpbiB0aGUgVUEgc3R5bGUgc2hlZXQuCisK
KyAgICAgICAgTm90ZSB0aGF0IGFkZGl0aW9uYWwgdGVzdCBjb3ZlcmFnZSBleGlzdHMgaW4gdGhl
IGZvcm0gb2Ygd2ViIHBsYXRmb3JtCisgICAgICAgIHdlYiBwbGF0Zm9ybSB0ZXN0cywgYW5kIGlz
IGRlcGVuZGVudCBvbiB1bnByZWZpeGluZy4KKworICAgICAgICBbMV0gaHR0cHM6Ly93d3cudzMu
b3JnL1RSL2Nzcy11aS00LyN2YWxkZWYtYXBwZWFyYW5jZS1hdXRvCisKKyAgICAgICAgKiBjc3Mv
Q1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0
aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ByaW1p
dGl2ZVZhbHVlOjpvcGVyYXRvciBDb250cm9sUGFydCBjb25zdCk6CisgICAgICAgICogY3NzL0NT
U1Byb3BlcnRpZXMuanNvbjoKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1BhcnNlckZhc3RQYXRo
cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXJGYXN0UGF0aHM6OmlzVmFsaWRLZXl3
b3JkUHJvcGVydHlBbmRWYWx1ZSk6CisgICAgICAgICogcGxhdGZvcm0vVGhlbWVUeXBlcy5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpvcGVyYXRvcjw8KToKKyAgICAgICAgKiBwbGF0Zm9ybS9UaGVt
ZVR5cGVzLmg6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRoZW1lLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclRoZW1lOjphZGp1c3RTdHlsZSk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJUaGVtZTo6YXV0b0FwcGVhcmFuY2VGb3JFbGVtZW50IGNvbnN0KToKKyAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyVGhlbWUuaDoKKwogMjAyMS0xMC0wNyAgQWRpdHlhIEtlZXJ0aGkgIDxh
a2VlcnRoaUBhcHBsZS5jb20+CiAKICAgICAgICAgSW50cm9kdWNlIFNoYWRvd1BzZXVkb0lkcyB0
byBzdG9yZSBhbGwgVUEgc2hhZG93IHJvb3QgcHNldWRvLWVsZW1lbnQgaWRzCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaAppbmRleCBjNDNkYjBiZDI5
NTUyYjU4YTM0MTNlOTg4OWM5YWM3NTA4OTJhMGZhLi5mNjRiYjE2NGI5NjNlYzE4MjhkMDRlOTc2
MjljNTNlMjRjMDdjMDk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0
aXZlVmFsdWVNYXBwaW5ncy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVW
YWx1ZU1hcHBpbmdzLmgKQEAgLTQyMyw2ICs0MjMsOSBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQ
cmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoQ29udHJvbFBhcnQgZSkKICAgICBjYXNl
IE5vQ29udHJvbFBhcnQ6CiAgICAgICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlTm9uZTsK
ICAgICAgICAgYnJlYWs7CisgICAgY2FzZSBBdXRvUGFydDoKKyAgICAgICAgbV92YWx1ZS52YWx1
ZUlEID0gQ1NTVmFsdWVBdXRvOworICAgICAgICBicmVhazsKICAgICBjYXNlIENoZWNrYm94UGFy
dDoKICAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVDaGVja2JveDsKICAgICAgICAg
YnJlYWs7CkBAIC02MjksNyArNjMyLDExIEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2
ZVZhbHVlOjpvcGVyYXRvciBDb250cm9sUGFydCgpIGNvbnN0CiAKICAgICBpZiAobV92YWx1ZS52
YWx1ZUlEID09IENTU1ZhbHVlTm9uZSkKICAgICAgICAgcmV0dXJuIE5vQ29udHJvbFBhcnQ7Ci0g
ICAgcmV0dXJuIENvbnRyb2xQYXJ0KG1fdmFsdWUudmFsdWVJRCAtIENTU1ZhbHVlQ2hlY2tib3gg
KyAxKTsKKworICAgIGlmIChtX3ZhbHVlLnZhbHVlSUQgPT0gQ1NTVmFsdWVBdXRvKQorICAgICAg
ICByZXR1cm4gQXV0b1BhcnQ7CisKKyAgICByZXR1cm4gQ29udHJvbFBhcnQobV92YWx1ZS52YWx1
ZUlEIC0gQ1NTVmFsdWVDaGVja2JveCArIENoZWNrYm94UGFydCk7CiB9CiAKIHRlbXBsYXRlPD4g
aW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZShCYWNrZmFjZVZpc2li
aWxpdHkgZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpz
b24gYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29uCmluZGV4IGEzMTlhNzVj
ZDQyY2Y5MjdmYzc2ZmI2ZTllMWZiN2NkNzBlZDhmZGMuLmIzODg0ODMxNzA5MGU5MzYxZDNjZjdk
MmJhYTk0YmU4MzRjYzQ0ZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9w
ZXJ0aWVzLmpzb24KKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgpA
QCAtNTAwMyw2ICs1MDAzLDcgQEAKICAgICAgICAgICAgICAgICAiY2Fwcy1sb2NrLWluZGljYXRv
ciIsCiAgICAgICAgICAgICAgICAgImNvbG9yLXdlbGwiLAogICAgICAgICAgICAgICAgICJsaXN0
LWJ1dHRvbiIsCisgICAgICAgICAgICAgICAgImF1dG8iLAogICAgICAgICAgICAgICAgICJub25l
IgogICAgICAgICAgICAgXSwKICAgICAgICAgICAgICJzdGF0dXMiOiB7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1BhcnNlckZhc3RQYXRocy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvcGFyc2VyL0NTU1BhcnNlckZhc3RQYXRocy5jcHAKaW5kZXggNzhiZmRmODM2
NjBkM2U1NTJkNDA2N2Q2YjRjNGNhOGM2NjI4MmI2NS4uMGM1NGMyMTUxZDJkZGNmMjYyMjUxZTYw
NGVmZTYzMDcxYTljNmMzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9D
U1NQYXJzZXJGYXN0UGF0aHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NT
UGFyc2VyRmFzdFBhdGhzLmNwcApAQCAtNzU0LDcgKzc1NCw3IEBAIGJvb2wgQ1NTUGFyc2VyRmFz
dFBhdGhzOjppc1ZhbGlkS2V5d29yZFByb3BlcnR5QW5kVmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9w
ZXJ0eUlkCiAgICAgY2FzZSBDU1NQcm9wZXJ0eVZpc2liaWxpdHk6IC8vIHZpc2libGUgfCBoaWRk
ZW4gfCBjb2xsYXBzZQogICAgICAgICByZXR1cm4gdmFsdWVJRCA9PSBDU1NWYWx1ZVZpc2libGUg
fHwgdmFsdWVJRCA9PSBDU1NWYWx1ZUhpZGRlbiB8fCB2YWx1ZUlEID09IENTU1ZhbHVlQ29sbGFw
c2U7CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEFwcGVhcmFuY2U6Ci0gICAgICAgIHJldHVy
biAodmFsdWVJRCA+PSBDU1NWYWx1ZUNoZWNrYm94ICYmIHZhbHVlSUQgPD0gQ1NTVmFsdWVDYXBz
TG9ja0luZGljYXRvcikgfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZU5vbmU7CisgICAgICAgIHJldHVy
biAodmFsdWVJRCA+PSBDU1NWYWx1ZUNoZWNrYm94ICYmIHZhbHVlSUQgPD0gQ1NTVmFsdWVDYXBz
TG9ja0luZGljYXRvcikgfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZU5vbmUgfHwgdmFsdWVJRCA9PSBD
U1NWYWx1ZUF1dG87CiAgICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tmYWNlVmlzaWJpbGl0eToKICAg
ICAgICAgcmV0dXJuIHZhbHVlSUQgPT0gQ1NTVmFsdWVWaXNpYmxlIHx8IHZhbHVlSUQgPT0gQ1NT
VmFsdWVIaWRkZW47CiAjaWYgRU5BQkxFKENTU19DT01QT1NJVElORykKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1lVHlwZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vVGhlbWVUeXBlcy5jcHAKaW5kZXggZDk4OTdlMzgzZDI0N2UyYjNlZmZhYzhiMmZhMjM0
YWE4NzU0NWM2MC4uMjcyODYwMTcyMTY1N2VmNDY4NWJiMjc3MjlmYWQ4ZjlmYjU5MGRmNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGhlbWVUeXBlcy5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGhlbWVUeXBlcy5jcHAKQEAgLTM0LDYgKzM0LDcgQEAgVGV4
dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiB0cywgQ29udHJvbFBhcnQgY29udHJvbFBh
cnQpCiB7CiAgICAgc3dpdGNoIChjb250cm9sUGFydCkgewogICAgIGNhc2UgTm9Db250cm9sUGFy
dDogdHMgPDwgIm5vLWNvbnRyb2wtcGFydCI7IGJyZWFrOworICAgIGNhc2UgQXV0b1BhcnQ6IHRz
IDw8ICJhdXRvLXBhcnQiOyBicmVhazsKICAgICBjYXNlIENoZWNrYm94UGFydDogdHMgPDwgImNo
ZWNrYm94LXBhcnQiOyBicmVhazsKICAgICBjYXNlIFJhZGlvUGFydDogdHMgPDwgInJhZGlvLXBh
cnQiOyBicmVhazsKICAgICBjYXNlIFB1c2hCdXR0b25QYXJ0OiB0cyA8PCAicHVzaC1idXR0b24t
cGFydCI7IGJyZWFrOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGhlbWVU
eXBlcy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGhlbWVUeXBlcy5oCmluZGV4IDRlNDQw
NTVlYjNjYjhmNWFkMzIzYmM5YTg1N2Q3NGMzZjVlMTllYjUuLmNlN2FkOTNkYjZlYTg5NTYwZWJh
MGUwOGVjOWE5ZTJhNDY4ZDc0MmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L1RoZW1lVHlwZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9UaGVtZVR5cGVzLmgK
QEAgLTM0LDYgKzM0LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogLy8gTXVzdCBmb2xsb3cgQ1NT
VmFsdWVLZXl3b3Jkcy5pbiBvcmRlcgogZW51bSBDb250cm9sUGFydCB7CiAgICAgTm9Db250cm9s
UGFydCwKKyAgICBBdXRvUGFydCwKICAgICBDaGVja2JveFBhcnQsCiAgICAgUmFkaW9QYXJ0LAog
ICAgIFB1c2hCdXR0b25QYXJ0LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclRoZW1lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZS5j
cHAKaW5kZXggYjkwODJiNTY3Nzk1ZjJjZDVlNGQ2YTc0ZDcwMzNhODVlODcxYzA1Yy4uZmQxNTI2
NjRjNDIwMzg5NTA0ZjM3ZTIxODRiYTU2OGJhNGQ4NWY4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyVGhlbWUuY3BwCkBAIC0zNCw5ICszNCwxNCBAQAogI2luY2x1ZGUgIkZyYW1l
LmgiCiAjaW5jbHVkZSAiRnJhbWVTZWxlY3Rpb24uaCIKICNpbmNsdWRlICJHcmFwaGljc0NvbnRl
eHQuaCIKKyNpbmNsdWRlICJIVE1MQXR0YWNobWVudEVsZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1M
QnV0dG9uRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxJbnB1dEVsZW1lbnQuaCIKICNpbmNsdWRl
ICJIVE1MTWV0ZXJFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCisjaW5jbHVkZSAi
SFRNTFByb2dyZXNzRWxlbWVudC5oIgorI2luY2x1ZGUgIkhUTUxTZWxlY3RFbGVtZW50LmgiCisj
aW5jbHVkZSAiSFRNTFRleHRBcmVhRWxlbWVudC5oIgogI2luY2x1ZGUgIkxvY2FsaXplZFN0cmlu
Z3MuaCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUGFpbnRJbmZvLmgiCkBAIC00NCw2
ICs0OSw3IEBACiAjaW5jbHVkZSAiUmVuZGVyU3R5bGUuaCIKICNpbmNsdWRlICJSZW5kZXJWaWV3
LmgiCiAjaW5jbHVkZSAiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgorI2luY2x1ZGUgIlNoYWRv
d1BzZXVkb0lkcy5oIgogI2luY2x1ZGUgIlNwaW5CdXR0b25FbGVtZW50LmgiCiAjaW5jbHVkZSAi
U3RyaW5nVHJ1bmNhdG9yLmgiCiAjaW5jbHVkZSAiVGV4dENvbnRyb2xJbm5lckVsZW1lbnRzLmgi
CkBAIC03Nyw4ICs4MywxNiBAQCBSZW5kZXJUaGVtZTo6UmVuZGVyVGhlbWUoKQogCiB2b2lkIFJl
bmRlclRoZW1lOjphZGp1c3RTdHlsZShSZW5kZXJTdHlsZSYgc3R5bGUsIGNvbnN0IEVsZW1lbnQq
IGVsZW1lbnQsIGNvbnN0IFJlbmRlclN0eWxlKiB1c2VyQWdlbnRBcHBlYXJhbmNlU3R5bGUpCiB7
CisgICAgYXV0byBwYXJ0ID0gc3R5bGUuYXBwZWFyYW5jZSgpOworICAgIGlmIChwYXJ0ID09IEF1
dG9QYXJ0KSB7CisgICAgICAgIHBhcnQgPSBhdXRvQXBwZWFyYW5jZUZvckVsZW1lbnQoZWxlbWVu
dCk7CisgICAgICAgIGlmIChwYXJ0ID09IE5vQ29udHJvbFBhcnQpIHsKKyAgICAgICAgICAgIHN0
eWxlLnNldEVmZmVjdGl2ZUFwcGVhcmFuY2UoTm9Db250cm9sUGFydCk7CisgICAgICAgICAgICBy
ZXR1cm47CisgICAgICAgIH0KKyAgICB9CisKICAgICAvLyBGb3JjZSBpbmxpbmUgYW5kIHRhYmxl
IGRpc3BsYXkgc3R5bGVzIHRvIGJlIGlubGluZS1ibG9jayAoZXhjZXB0IGZvciB0YWJsZS0gd2hp
Y2ggaXMgYmxvY2spCi0gICAgQ29udHJvbFBhcnQgcGFydCA9IHN0eWxlLmFwcGVhcmFuY2UoKTsK
ICAgICBpZiAoc3R5bGUuZGlzcGxheSgpID09IERpc3BsYXlUeXBlOjpJbmxpbmUgfHwgc3R5bGUu
ZGlzcGxheSgpID09IERpc3BsYXlUeXBlOjpJbmxpbmVUYWJsZSB8fCBzdHlsZS5kaXNwbGF5KCkg
PT0gRGlzcGxheVR5cGU6OlRhYmxlUm93R3JvdXAKICAgICAgICAgfHwgc3R5bGUuZGlzcGxheSgp
ID09IERpc3BsYXlUeXBlOjpUYWJsZUhlYWRlckdyb3VwIHx8IHN0eWxlLmRpc3BsYXkoKSA9PSBE
aXNwbGF5VHlwZTo6VGFibGVGb290ZXJHcm91cAogICAgICAgICB8fCBzdHlsZS5kaXNwbGF5KCkg
PT0gRGlzcGxheVR5cGU6OlRhYmxlUm93IHx8IHN0eWxlLmRpc3BsYXkoKSA9PSBEaXNwbGF5VHlw
ZTo6VGFibGVDb2x1bW5Hcm91cCB8fCBzdHlsZS5kaXNwbGF5KCkgPT0gRGlzcGxheVR5cGU6OlRh
YmxlQ29sdW1uCkBAIC05MCwxNSArMTA0LDE3IEBAIHZvaWQgUmVuZGVyVGhlbWU6OmFkanVzdFN0
eWxlKFJlbmRlclN0eWxlJiBzdHlsZSwgY29uc3QgRWxlbWVudCogZWxlbWVudCwgY29uc3QKICAg
ICBpZiAodXNlckFnZW50QXBwZWFyYW5jZVN0eWxlICYmIGlzQ29udHJvbFN0eWxlZChzdHlsZSwg
KnVzZXJBZ2VudEFwcGVhcmFuY2VTdHlsZSkpIHsKICAgICAgICAgc3dpdGNoIChwYXJ0KSB7CiAg
ICAgICAgIGNhc2UgTWVudWxpc3RQYXJ0OgotICAgICAgICAgICAgc3R5bGUuc2V0RWZmZWN0aXZl
QXBwZWFyYW5jZShNZW51bGlzdEJ1dHRvblBhcnQpOwogICAgICAgICAgICAgcGFydCA9IE1lbnVs
aXN0QnV0dG9uUGFydDsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBkZWZhdWx0OgotICAg
ICAgICAgICAgc3R5bGUuc2V0RWZmZWN0aXZlQXBwZWFyYW5jZShOb0NvbnRyb2xQYXJ0KTsKKyAg
ICAgICAgICAgIHBhcnQgPSBOb0NvbnRyb2xQYXJ0OwogICAgICAgICAgICAgYnJlYWs7CiAgICAg
ICAgIH0KICAgICB9CiAKKyAgICBBU1NFUlQocGFydCAhPSBBdXRvUGFydCk7CisgICAgc3R5bGUu
c2V0RWZmZWN0aXZlQXBwZWFyYW5jZShwYXJ0KTsKKwogICAgIGlmICghc3R5bGUuaGFzRWZmZWN0
aXZlQXBwZWFyYW5jZSgpKQogICAgICAgICByZXR1cm47CiAKQEAgLTE5MSw3ICsyMDcsNyBAQCB2
b2lkIFJlbmRlclRoZW1lOjphZGp1c3RTdHlsZShSZW5kZXJTdHlsZSYgc3R5bGUsIGNvbnN0IEVs
ZW1lbnQqIGVsZW1lbnQsIGNvbnN0CiAjZW5kaWYKIAogICAgIC8vIENhbGwgdGhlIGFwcHJvcHJp
YXRlIHN0eWxlIGFkanVzdG1lbnQgbWV0aG9kIGJhc2VkIG9mZiB0aGUgYXBwZWFyYW5jZSB2YWx1
ZS4KLSAgICBzd2l0Y2ggKHN0eWxlLmVmZmVjdGl2ZUFwcGVhcmFuY2UoKSkgeworICAgIHN3aXRj
aCAocGFydCkgewogI2lmICFVU0UoTkVXX1RIRU1FKQogICAgIGNhc2UgQ2hlY2tib3hQYXJ0Ogog
ICAgICAgICByZXR1cm4gYWRqdXN0Q2hlY2tib3hTdHlsZShzdHlsZSwgZWxlbWVudCk7CkBAIC0y
NzAsNiArMjg2LDExMCBAQCB2b2lkIFJlbmRlclRoZW1lOjphZGp1c3RTdHlsZShSZW5kZXJTdHls
ZSYgc3R5bGUsIGNvbnN0IEVsZW1lbnQqIGVsZW1lbnQsIGNvbnN0CiAgICAgfQogfQogCitDb250
cm9sUGFydCBSZW5kZXJUaGVtZTo6YXV0b0FwcGVhcmFuY2VGb3JFbGVtZW50KGNvbnN0IEVsZW1l
bnQqIGVsZW1lbnRQdHIpIGNvbnN0Cit7CisgICAgaWYgKCFlbGVtZW50UHRyKQorICAgICAgICBy
ZXR1cm4gTm9Db250cm9sUGFydDsKKworICAgIGF1dG8mIGVsZW1lbnQgPSAqZWxlbWVudFB0cjsK
KworICAgIGlmIChpczxIVE1MSW5wdXRFbGVtZW50PihlbGVtZW50KSkgeworICAgICAgICBhdXRv
JiBpbnB1dCA9IGRvd25jYXN0PEhUTUxJbnB1dEVsZW1lbnQ+KGVsZW1lbnQpOworCisgICAgICAg
IGlmIChpbnB1dC5pc1RleHRCdXR0b24oKSB8fCBpbnB1dC5pc1VwbG9hZEJ1dHRvbigpKQorICAg
ICAgICAgICAgcmV0dXJuIFB1c2hCdXR0b25QYXJ0OworCisgICAgICAgIGlmIChpbnB1dC5pc0No
ZWNrYm94KCkpCisgICAgICAgICAgICByZXR1cm4gQ2hlY2tib3hQYXJ0OworCisgICAgICAgIGlm
IChpbnB1dC5pc1JhZGlvQnV0dG9uKCkpCisgICAgICAgICAgICByZXR1cm4gUmFkaW9QYXJ0Owor
CisgICAgICAgIGlmIChpbnB1dC5pc1NlYXJjaEZpZWxkKCkpCisgICAgICAgICAgICByZXR1cm4g
U2VhcmNoRmllbGRQYXJ0OworCisgICAgICAgIGlmIChpbnB1dC5pc0RhdGVGaWVsZCgpIHx8IGlu
cHV0LmlzRGF0ZVRpbWVMb2NhbEZpZWxkKCkgfHwgaW5wdXQuaXNNb250aEZpZWxkKCkgfHwgaW5w
dXQuaXNUaW1lRmllbGQoKSB8fCBpbnB1dC5pc1dlZWtGaWVsZCgpKSB7CisjaWYgUExBVEZPUk0o
SU9TX0ZBTUlMWSkKKyAgICAgICAgICAgIHJldHVybiBNZW51bGlzdEJ1dHRvblBhcnQ7CisjZWxz
ZQorICAgICAgICAgICAgcmV0dXJuIFRleHRGaWVsZFBhcnQ7CisjZW5kaWYKKyAgICAgICAgfQor
CisjaWYgRU5BQkxFKElOUFVUX1RZUEVfQ09MT1IpCisgICAgICAgIGlmIChpbnB1dC5pc0NvbG9y
Q29udHJvbCgpKQorICAgICAgICAgICAgcmV0dXJuIENvbG9yV2VsbFBhcnQ7CisjZW5kaWYKKwor
ICAgICAgICBpZiAoaW5wdXQuaXNSYW5nZUNvbnRyb2woKSkKKyAgICAgICAgICAgIHJldHVybiBT
bGlkZXJIb3Jpem9udGFsUGFydDsKKworICAgICAgICBpZiAoaW5wdXQuaXNUZXh0RmllbGQoKSkK
KyAgICAgICAgICAgIHJldHVybiBUZXh0RmllbGRQYXJ0OworCisgICAgICAgIC8vIDxpbnB1dCB0
eXBlPWhpZGRlbnxpbWFnZXxmaWxlPgorICAgICAgICByZXR1cm4gTm9Db250cm9sUGFydDsKKyAg
ICB9CisKKyAgICBpZiAoaXM8SFRNTEJ1dHRvbkVsZW1lbnQ+KGVsZW1lbnQpKQorICAgICAgICBy
ZXR1cm4gQnV0dG9uUGFydDsKKworICAgIGlmIChpczxIVE1MU2VsZWN0RWxlbWVudD4oZWxlbWVu
dCkpIHsKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQorICAgICAgICByZXR1cm4gTWVudWxpc3RC
dXR0b25QYXJ0OworI2Vsc2UKKyAgICAgICAgYXV0byYgc2VsZWN0ID0gZG93bmNhc3Q8SFRNTFNl
bGVjdEVsZW1lbnQ+KGVsZW1lbnQpOworICAgICAgICByZXR1cm4gc2VsZWN0LnVzZXNNZW51TGlz
dCgpID8gTWVudWxpc3RQYXJ0IDogTGlzdGJveFBhcnQ7CisjZW5kaWYKKyAgICB9CisKKyAgICBp
ZiAoaXM8SFRNTFRleHRBcmVhRWxlbWVudD4oZWxlbWVudCkpCisgICAgICAgIHJldHVybiBUZXh0
QXJlYVBhcnQ7CisKKyAgICBpZiAoaXM8SFRNTE1ldGVyRWxlbWVudD4oZWxlbWVudCkpCisgICAg
ICAgIHJldHVybiBNZXRlclBhcnQ7CisKKyAgICBpZiAoaXM8SFRNTFByb2dyZXNzRWxlbWVudD4o
ZWxlbWVudCkpCisgICAgICAgIHJldHVybiBQcm9ncmVzc0JhclBhcnQ7CisKKyNpZiBFTkFCTEUo
QVRUQUNITUVOVF9FTEVNRU5UKQorICAgIGlmIChpczxIVE1MQXR0YWNobWVudEVsZW1lbnQ+KGVs
ZW1lbnQpKQorICAgICAgICByZXR1cm4gQXR0YWNobWVudFBhcnQ7CisjZW5kaWYKKworICAgIGlm
IChlbGVtZW50LmlzSW5Vc2VyQWdlbnRTaGFkb3dUcmVlKCkpIHsKKyAgICAgICAgYXV0byYgcHNl
dWRvID0gZWxlbWVudC5zaGFkb3dQc2V1ZG9JZCgpOworCisjaWYgRU5BQkxFKERBVEFMSVNUX0VM
RU1FTlQpCisgICAgICAgIGlmIChwc2V1ZG8gPT0gU2hhZG93UHNldWRvSWRzOjp3ZWJraXRMaXN0
QnV0dG9uKCkpCisgICAgICAgICAgICByZXR1cm4gTGlzdEJ1dHRvblBhcnQ7CisjZW5kaWYKKwor
ICAgICAgICBpZiAocHNldWRvID09IFNoYWRvd1BzZXVkb0lkczo6d2Via2l0Q2Fwc0xvY2tJbmRp
Y2F0b3IoKSkKKyAgICAgICAgICAgIHJldHVybiBDYXBzTG9ja0luZGljYXRvclBhcnQ7CisKKyAg
ICAgICAgaWYgKHBzZXVkbyA9PSBTaGFkb3dQc2V1ZG9JZHM6OndlYmtpdFNlYXJjaENhbmNlbEJ1
dHRvbigpKQorICAgICAgICAgICAgcmV0dXJuIFNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uUGFydDsK
KworICAgICAgICBpZiAocHNldWRvID09IFNoYWRvd1BzZXVkb0lkczo6d2Via2l0U2VhcmNoRGVj
b3JhdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIFNlYXJjaEZpZWxkRGVjb3JhdGlvblBhcnQ7
CisKKyAgICAgICAgaWYgKHBzZXVkbyA9PSBTaGFkb3dQc2V1ZG9JZHM6OndlYmtpdFNlYXJjaFJl
c3VsdHNEZWNvcmF0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gU2VhcmNoRmllbGRSZXN1bHRz
RGVjb3JhdGlvblBhcnQ7CisKKyAgICAgICAgaWYgKHBzZXVkbyA9PSBTaGFkb3dQc2V1ZG9JZHM6
OndlYmtpdFNlYXJjaFJlc3VsdHNCdXR0b24oKSkKKyAgICAgICAgICAgIHJldHVybiBTZWFyY2hG
aWVsZFJlc3VsdHNCdXR0b25QYXJ0OworCisgICAgICAgIGlmIChwc2V1ZG8gPT0gU2hhZG93UHNl
dWRvSWRzOjp3ZWJraXRTbGlkZXJUaHVtYigpIHx8IHBzZXVkbyA9PSBTaGFkb3dQc2V1ZG9JZHM6
OndlYmtpdE1lZGlhU2xpZGVyVGh1bWIoKSkKKyAgICAgICAgICAgIHJldHVybiBTbGlkZXJUaHVt
Ykhvcml6b250YWxQYXJ0OworCisgICAgICAgIGlmIChwc2V1ZG8gPT0gU2hhZG93UHNldWRvSWRz
Ojp3ZWJraXRJbm5lclNwaW5CdXR0b24oKSkKKyAgICAgICAgICAgIHJldHVybiBJbm5lclNwaW5C
dXR0b25QYXJ0OworICAgIH0KKworICAgIHJldHVybiBOb0NvbnRyb2xQYXJ0OworfQorCiB2b2lk
IFJlbmRlclRoZW1lOjphZGp1c3RTZWFyY2hGaWVsZERlY29yYXRpb25TdHlsZShSZW5kZXJTdHls
ZSYgc3R5bGUsIGNvbnN0IEVsZW1lbnQqIGVsZW1lbnQpIGNvbnN0CiB7CiAgICAgaWYgKGlzPFNl
YXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQ+KGVsZW1lbnQpICYmICFkb3duY2FzdDxTZWFy
Y2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50PigqZWxlbWVudCkuY2FuQWRqdXN0U3R5bGVGb3JB
cHBlYXJhbmNlKCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJUaGVtZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lLmgKaW5kZXgg
ZTdlNmViYjFiOWQxZWJiMTg4MDdmYjBhYTg5MTZmOWM4MDFmNzgzMS4uZjgyMmZkNDljY2MzZWVk
MDQ5MzQ1NmE3YmE3NDJhMTg5YmYyMDlmNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclRoZW1lLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clRoZW1lLmgKQEAgLTQ1NCw2ICs0NTQsOCBAQCBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCBDb2xv
ckNhY2hlJiBjb2xvckNhY2hlKE9wdGlvblNldDxTdHlsZUNvbG9yOjpPcHRpb25zPikgY29uc3Q7
CiAKIHByaXZhdGU6CisgICAgQ29udHJvbFBhcnQgYXV0b0FwcGVhcmFuY2VGb3JFbGVtZW50KGNv
bnN0IEVsZW1lbnQqKSBjb25zdDsKKwogICAgIHZvaWQgYWRqdXN0U2VhcmNoRmllbGREZWNvcmF0
aW9uU3R5bGUoUmVuZGVyU3R5bGUmLCBjb25zdCBFbGVtZW50KikgY29uc3Q7CiAKICAgICBtdXRh
YmxlIEhhc2hNYXA8dWludDhfdCwgQ29sb3JDYWNoZSwgRGVmYXVsdEhhc2g8dWludDhfdD4sIFdU
Rjo6VW5zaWduZWRXaXRoWmVyb0tleUhhc2hUcmFpdHM8dWludDhfdD4+IG1fY29sb3JDYWNoZU1h
cDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwppbmRleCAwN2QyYTU5MzEyZThiMjU2MDc0YzEwMDE4ZGJmNGIxZjYwMDAyODVkLi4yNzUw
ZWVhMzk5YzdlMGJlZDYwMjFhNTM2MmUzMjZlNmM0OWMzYmJiIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUg
QEAKKzIwMjEtMTAtMDcgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29tPgorCisg
ICAgICAgIEFkZCBzdXBwb3J0IGZvciAnLXdlYmtpdC1hcHBlYXJhbmNlOiBhdXRvJworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxMjAzCisgICAgICAg
IHJkYXI6Ly84MzY5NjEzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy11aS9hcHBlYXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQ6CisgICAgICAgICog
cGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mt
dWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3Jt
L3dwZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5j
ZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0OgorCiAyMDIxLTEwLTA3ICBBZGl0eWEgS2VlcnRoaSAg
PGFrZWVydGhpQGFwcGxlLmNvbT4KIAogICAgICAgICBbY3NzLXVpXSBQYXJzaW5nIHN1cHBvcnQg
Zm9yIGFjY2VudC1jb2xvcgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0No
YW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggNWY4MjRh
YjljMzU5NDQxYTU1N2FiNDQ5NWNkMTdlYTk1MGYwNzAyNy4uNjg0OGYzZDI4ZDk3YWI0YWViYjQw
NDQxNjJmMTc2YTkxOGU1N2IxZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTUgQEAKKzIwMjEtMTAtMDcgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUu
Y29tPgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciAnLXdlYmtpdC1hcHBlYXJhbmNlOiBhdXRv
JworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMxMjAz
CisgICAgICAgIHJkYXI6Ly84MzY5NjEzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFy
YW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0OgorCisgICAgICAgIE1hcmsgcHJvZ3Jlc3Npb24u
CisKIDIwMjEtMTAtMDcgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29tPgogCiAg
ICAgICAgIFtjc3MtdWldIFBhcnNpbmcgc3VwcG9ydCBmb3IgYWNjZW50LWNvbG9yCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3Mt
dWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXVpL2FwcGVhcmFuY2UtY3Nzb20tMDAx
LWV4cGVjdGVkLnR4dAppbmRleCBmNjQ1Nzk0Yzk0NjYxMDk4MmYxN2Y4MmRmODFlNDkzZjUyN2Zj
M2U0Li44OGJkZDljMmI2MWI1NzBlMjBmMWYzNDkxNjgzM2U5ZmU0MTMwYzc3IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkv
YXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy11aS9hcHBlYXJhbmNlLWNzc29tLTAw
MS1leHBlY3RlZC50eHQKQEAgLTEsNyArMSw3IEBACiBUZXN0CiAKIFBBU1MgLXdlYmtpdC1hcHBl
YXJhbmNlOiBub25lCi1GQUlMIC13ZWJraXQtYXBwZWFyYW5jZTogYXV0byBhc3NlcnRfZXF1YWxz
OiBzdHlsZS5XZWJraXRBcHBlYXJhbmNlICh1cHBlcmNhc2UgVykgZXhwZWN0ZWQgImF1dG8iIGJ1
dCBnb3QgIiIKK1BBU1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBhdXRvCiBQQVNTIC13ZWJraXQtYXBw
ZWFyYW5jZTogYnV0dG9uCiBQQVNTIC13ZWJraXQtYXBwZWFyYW5jZTogY2hlY2tib3gKIFBBU1Mg
LXdlYmtpdC1hcHBlYXJhbmNlOiBsaXN0Ym94CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9ndGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXVpL2FwcGVh
cmFuY2UtY3Nzb20tMDAxLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3Nv
bS0wMDEtZXhwZWN0ZWQudHh0CmluZGV4IDZlMWJjZWM5NGM3NTIyNWI2MmVhMDI0YmIzYWY0MGU2
ZDY5OTMwNjMuLjQzMDQ5NmY1OGUxNWRjN2ZiZjA2YzllM2Y0MTZlNzg0Y2MzYTk0YmMgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0CkBAIC0xLDcgKzEs
NyBAQAogVGVzdAogCiBQQVNTIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZQotRkFJTCAtd2Via2l0
LWFwcGVhcmFuY2U6IGF1dG8gYXNzZXJ0X2VxdWFsczogc3R5bGUuV2Via2l0QXBwZWFyYW5jZSAo
dXBwZXJjYXNlIFcpIGV4cGVjdGVkICJhdXRvIiBidXQgZ290ICIiCitQQVNTIC13ZWJraXQtYXBw
ZWFyYW5jZTogYXV0bwogUEFTUyAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbgogUEFTUyAtd2Vi
a2l0LWFwcGVhcmFuY2U6IGNoZWNrYm94CiBQQVNTIC13ZWJraXQtYXBwZWFyYW5jZTogbGlzdGJv
eApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0
CmluZGV4IGY2NDU3OTRjOTQ2NjEwOTgyZjE3ZjgyZGY4MWU0OTNmNTI3ZmMzZTQuLjg4YmRkOWMy
YjYxYjU3MGUyMGYxZjM0OTE2ODMzZTlmZTQxMzBjNzcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2lvcy13azIvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nz
LXVpL2FwcGVhcmFuY2UtY3Nzb20tMDAxLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy11
aS9hcHBlYXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQKQEAgLTEsNyArMSw3IEBACiBUZXN0
CiAKIFBBU1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lCi1GQUlMIC13ZWJraXQtYXBwZWFyYW5j
ZTogYXV0byBhc3NlcnRfZXF1YWxzOiBzdHlsZS5XZWJraXRBcHBlYXJhbmNlICh1cHBlcmNhc2Ug
VykgZXhwZWN0ZWQgImF1dG8iIGJ1dCBnb3QgIiIKK1BBU1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBh
dXRvCiBQQVNTIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uCiBQQVNTIC13ZWJraXQtYXBwZWFy
YW5jZTogY2hlY2tib3gKIFBBU1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBsaXN0Ym94CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93cGUvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLXVpL2FwcGVhcmFuY2UtY3Nzb20tMDAxLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0CmluZGV4IGRhYTYxMzBkZGIy
YTBiODAwOWJmMzA1NjMyODhiZmZhYjUzNGY4OWQuLjU1MDVjZjFlY2M2ODNiZjc0OWMwMGViMDEz
ZTAwZDIzNmJmNDExY2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0w
MDEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhw
ZWN0ZWQudHh0CkBAIC0xLDcgKzEsNyBAQAogVGVzdAogCiBQQVNTIC13ZWJraXQtYXBwZWFyYW5j
ZTogbm9uZQotRkFJTCAtd2Via2l0LWFwcGVhcmFuY2U6IGF1dG8gYXNzZXJ0X2VxdWFsczogc3R5
bGUuV2Via2l0QXBwZWFyYW5jZSAodXBwZXJjYXNlIFcpIGV4cGVjdGVkICJhdXRvIiBidXQgZ290
ICIiCitQQVNTIC13ZWJraXQtYXBwZWFyYW5jZTogYXV0bwogUEFTUyAtd2Via2l0LWFwcGVhcmFu
Y2U6IGJ1dHRvbgogUEFTUyAtd2Via2l0LWFwcGVhcmFuY2U6IGNoZWNrYm94CiBQQVNTIC13ZWJr
aXQtYXBwZWFyYW5jZTogbGlzdGJveAo=
</data>
<flag name="review"
          id="464541"
          type_id="1"
          status="+"
          setter="wenson_hsieh"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440680</attachid>
            <date>2021-10-08 15:08:24 -0700</date>
            <delta_ts>2021-10-08 15:12:52 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-231203-20211008151031.patch</filename>
            <type>text/plain</type>
            <size>17811</size>
            <attacher name="Aditya Keerthi">akeerthi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzNjc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmUyMTg4Y2E0NjA5NTlh
MTQ0ZGFjMzgxYjljYjdmMTYwM2E2MmFhNS4uOWM1MDYzYjJkMzRlMzRiYWNhZDgxMDVjOWFiYjVk
NDExMjhmY2VkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDIxLTEwLTA4ICBBZGl0
eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgc3VwcG9ydCBm
b3IgJy13ZWJraXQtYXBwZWFyYW5jZTogYXV0bycKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTIwMworICAgICAgICByZGFyOi8vODM2OTYxMzMKKwor
ICAgICAgICBSZXZpZXdlZCBieSBXZW5zb24gSHNpZWguCisKKyAgICAgICAgVGhlICdhcHBlYXJh
bmNlJyBwcm9wZXJ0eSBhbGxvd3MgYXV0aG9ycyB0byB1c2UgdGhlICdhdXRvJyBrZXl3b3JkCisg
ICAgICAgIHRvIG9wdCB3aWRnZXRzIChhbnkgZWxlbWVudCB0aGF0IGNhbiBoYXZlIGEgbmF0aXZl
IGFwcGVhcmFuY2UpIGludG8KKyAgICAgICAgYSBuYXRpdmUgYXBwZWFyYW5jZSBbMV0uIEVsZW1l
bnRzIG90aGVyIHRoYW4gd2lkZ2V0cyBhcmUgcmVuZGVyZWQKKyAgICAgICAgYXMgaWYgbm9uZSBo
YWQgYmVlbiBzcGVjaWZpZWQuCisKKyAgICAgICAgU2luY2UgJy13ZWJraXQtYXBwZWFyYW5jZScg
aXMgYSBwYXJzZSB0aW1lIGFsaWFzIG9mICdhcHBlYXJhbmNlJywKKyAgICAgICAgc3VwcG9ydCAn
LXdlYmtpdC1hcHBlYXJhbmNlOiBhdXRvJyBwcmlvciB0byB1bnByZWZpeGluZy4KKworICAgICAg
ICBUaGUgdXNlZC12YWx1ZSBmb3IgYXBwZWFyYW5jZSAoZWZmZWN0aXZlQXBwZWFyYW5jZSkgaXMg
ZGV0ZXJtaW5lZCBieQorICAgICAgICB0aGUgZWxlbWVudCB0YWcgYW5kIHR5cGUuIEluIHRoZSBj
YXNlIG9mIGVsZW1lbnRzIGluIHRoZSBVQSBzaGFkb3cKKyAgICAgICAgdHJlZSwgdGhlIHBzZXVk
byBpZCBpcyB1c2VkIHRvIGRldGVybWluZSB0aGUgZWZmZWN0aXZlIGFwcGVhcmFuY2UuIFRoZQor
ICAgICAgICB1c2VkLXZhbHVlcyB3aGVuIHNwZWNpZnlpbmcgJ2F1dG8nIG1hdGNoIHRoZSBkZWZh
dWx0IHNwZWNpZmllZCB2YWx1ZXMKKyAgICAgICAgaW4gdGhlIFVBIHN0eWxlIHNoZWV0LgorCisg
ICAgICAgIE5vdGUgdGhhdCBhZGRpdGlvbmFsIHRlc3QgY292ZXJhZ2UgZXhpc3RzIGluIHRoZSBm
b3JtIG9mIHdlYiBwbGF0Zm9ybQorICAgICAgICB3ZWIgcGxhdGZvcm0gdGVzdHMsIGFuZCBpcyBk
ZXBlbmRlbnQgb24gdW5wcmVmaXhpbmcuCisKKyAgICAgICAgWzFdIGh0dHBzOi8vd3d3LnczLm9y
Zy9UUi9jc3MtdWktNC8jdmFsZGVmLWFwcGVhcmFuY2UtYXV0bworCisgICAgICAgICogY3NzL0NT
U1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ByaW1pdGl2
ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcmltaXRp
dmVWYWx1ZTo6b3BlcmF0b3IgQ29udHJvbFBhcnQgY29uc3QpOgorICAgICAgICAqIGNzcy9DU1NQ
cm9wZXJ0aWVzLmpzb246CisgICAgICAgICogY3NzL3BhcnNlci9DU1NQYXJzZXJGYXN0UGF0aHMu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyRmFzdFBhdGhzOjppc1ZhbGlkS2V5d29y
ZFByb3BlcnR5QW5kVmFsdWUpOgorICAgICAgICAqIHBsYXRmb3JtL1RoZW1lVHlwZXMuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6b3BlcmF0b3I8PCk6CisgICAgICAgICogcGxhdGZvcm0vVGhlbWVU
eXBlcy5oOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJUaGVtZS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJUaGVtZTo6YWRqdXN0U3R5bGUpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyVGhlbWU6OmF1dG9BcHBlYXJhbmNlRm9yRWxlbWVudCBjb25zdCk6CisgICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlclRoZW1lLmg6CisKIDIwMjEtMTAtMDcgIEFkaXR5YSBLZWVydGhpICA8YWtl
ZXJ0aGlAYXBwbGUuY29tPgogCiAgICAgICAgIEludHJvZHVjZSBTaGFkb3dQc2V1ZG9JZHMgdG8g
c3RvcmUgYWxsIFVBIHNoYWRvdyByb290IHBzZXVkby1lbGVtZW50IGlkcwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaCBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKaW5kZXggYzQzZGIwYmQyOTU1
MmI1OGEzNDEzZTk4ODljOWFjNzUwODkyYTBmYS4uZjY0YmIxNjRiOTYzZWMxODI4ZDA0ZTk3NjI5
YzUzZTI0YzA3YzA5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2
ZVZhbHVlTWFwcGluZ3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFs
dWVNYXBwaW5ncy5oCkBAIC00MjMsNiArNDIzLDkgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJp
bWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKENvbnRyb2xQYXJ0IGUpCiAgICAgY2FzZSBO
b0NvbnRyb2xQYXJ0OgogICAgICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZU5vbmU7CiAg
ICAgICAgIGJyZWFrOworICAgIGNhc2UgQXV0b1BhcnQ6CisgICAgICAgIG1fdmFsdWUudmFsdWVJ
RCA9IENTU1ZhbHVlQXV0bzsKKyAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBDaGVja2JveFBhcnQ6
CiAgICAgICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlQ2hlY2tib3g7CiAgICAgICAgIGJy
ZWFrOwpAQCAtNjI5LDcgKzYzMiwxMSBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6b3BlcmF0b3IgQ29udHJvbFBhcnQoKSBjb25zdAogCiAgICAgaWYgKG1fdmFsdWUudmFs
dWVJRCA9PSBDU1NWYWx1ZU5vbmUpCiAgICAgICAgIHJldHVybiBOb0NvbnRyb2xQYXJ0OwotICAg
IHJldHVybiBDb250cm9sUGFydChtX3ZhbHVlLnZhbHVlSUQgLSBDU1NWYWx1ZUNoZWNrYm94ICsg
MSk7CisKKyAgICBpZiAobV92YWx1ZS52YWx1ZUlEID09IENTU1ZhbHVlQXV0bykKKyAgICAgICAg
cmV0dXJuIEF1dG9QYXJ0OworCisgICAgcmV0dXJuIENvbnRyb2xQYXJ0KG1fdmFsdWUudmFsdWVJ
RCAtIENTU1ZhbHVlQ2hlY2tib3ggKyBDaGVja2JveFBhcnQpOwogfQogCiB0ZW1wbGF0ZTw+IGlu
bGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoQmFja2ZhY2VWaXNpYmls
aXR5IGUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29u
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgppbmRleCBhMzE5YTc1Y2Q0
MmNmOTI3ZmM3NmZiNmU5ZTFmYjdjZDcwZWQ4ZmRjLi5iMzg4NDgzMTcwOTBlOTM2MWQzY2Y3ZDJi
YWE5NGJlODM0Y2M0NGQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVy
dGllcy5qc29uCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24KQEAg
LTUwMDMsNiArNTAwMyw3IEBACiAgICAgICAgICAgICAgICAgImNhcHMtbG9jay1pbmRpY2F0b3Ii
LAogICAgICAgICAgICAgICAgICJjb2xvci13ZWxsIiwKICAgICAgICAgICAgICAgICAibGlzdC1i
dXR0b24iLAorICAgICAgICAgICAgICAgICJhdXRvIiwKICAgICAgICAgICAgICAgICAibm9uZSIK
ICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAic3RhdHVzIjogewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQYXJzZXJGYXN0UGF0aHMuY3BwIGIvU291cmNlL1dl
YkNvcmUvY3NzL3BhcnNlci9DU1NQYXJzZXJGYXN0UGF0aHMuY3BwCmluZGV4IDc4YmZkZjgzNjYw
ZDNlNTUyZDQwNjdkNmI0YzRjYThjNjYyODJiNjUuLjBjNTRjMjE1MWQyZGRjZjI2MjI1MWU2MDRl
ZmU2MzA3MWE5YzZjMzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NT
UGFyc2VyRmFzdFBhdGhzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Bh
cnNlckZhc3RQYXRocy5jcHAKQEAgLTc1NCw3ICs3NTQsNyBAQCBib29sIENTU1BhcnNlckZhc3RQ
YXRoczo6aXNWYWxpZEtleXdvcmRQcm9wZXJ0eUFuZFZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVy
dHlJZAogICAgIGNhc2UgQ1NTUHJvcGVydHlWaXNpYmlsaXR5OiAvLyB2aXNpYmxlIHwgaGlkZGVu
IHwgY29sbGFwc2UKICAgICAgICAgcmV0dXJuIHZhbHVlSUQgPT0gQ1NTVmFsdWVWaXNpYmxlIHx8
IHZhbHVlSUQgPT0gQ1NTVmFsdWVIaWRkZW4gfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZUNvbGxhcHNl
OwogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRBcHBlYXJhbmNlOgotICAgICAgICByZXR1cm4g
KHZhbHVlSUQgPj0gQ1NTVmFsdWVDaGVja2JveCAmJiB2YWx1ZUlEIDw9IENTU1ZhbHVlQ2Fwc0xv
Y2tJbmRpY2F0b3IpIHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVOb25lOworICAgICAgICByZXR1cm4g
KHZhbHVlSUQgPj0gQ1NTVmFsdWVDaGVja2JveCAmJiB2YWx1ZUlEIDw9IENTU1ZhbHVlQ2Fwc0xv
Y2tJbmRpY2F0b3IpIHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVOb25lIHx8IHZhbHVlSUQgPT0gQ1NT
VmFsdWVBdXRvOwogICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNrZmFjZVZpc2liaWxpdHk6CiAgICAg
ICAgIHJldHVybiB2YWx1ZUlEID09IENTU1ZhbHVlVmlzaWJsZSB8fCB2YWx1ZUlEID09IENTU1Zh
bHVlSGlkZGVuOwogI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9UaGVtZVR5cGVzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1RoZW1lVHlwZXMuY3BwCmluZGV4IGQ5ODk3ZTM4M2QyNDdlMmIzZWZmYWM4YjJmYTIzNGFh
ODc1NDVjNjAuLjI3Mjg2MDE3MjE2NTdlZjQ2ODViYjI3NzI5ZmFkOGY5ZmI1OTBkZjcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1lVHlwZXMuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1lVHlwZXMuY3BwCkBAIC0zNCw2ICszNCw3IEBAIFRleHRT
dHJlYW0mIG9wZXJhdG9yPDwoVGV4dFN0cmVhbSYgdHMsIENvbnRyb2xQYXJ0IGNvbnRyb2xQYXJ0
KQogewogICAgIHN3aXRjaCAoY29udHJvbFBhcnQpIHsKICAgICBjYXNlIE5vQ29udHJvbFBhcnQ6
IHRzIDw8ICJuby1jb250cm9sLXBhcnQiOyBicmVhazsKKyAgICBjYXNlIEF1dG9QYXJ0OiB0cyA8
PCAiYXV0by1wYXJ0IjsgYnJlYWs7CiAgICAgY2FzZSBDaGVja2JveFBhcnQ6IHRzIDw8ICJjaGVj
a2JveC1wYXJ0IjsgYnJlYWs7CiAgICAgY2FzZSBSYWRpb1BhcnQ6IHRzIDw8ICJyYWRpby1wYXJ0
IjsgYnJlYWs7CiAgICAgY2FzZSBQdXNoQnV0dG9uUGFydDogdHMgPDwgInB1c2gtYnV0dG9uLXBh
cnQiOyBicmVhazsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1lVHlw
ZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1lVHlwZXMuaAppbmRleCA0ZTQ0MDU1
ZWIzY2I4ZjVhZDMyM2JjOWE4NTdkNzRjM2Y1ZTE5ZWI1Li5jZTdhZDkzZGI2ZWE4OTU2MGViYTBl
MDhlYzlhOWUyYTQ2OGQ3NDJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9U
aGVtZVR5cGVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGhlbWVUeXBlcy5oCkBA
IC0zNCw2ICszNCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIC8vIE11c3QgZm9sbG93IENTU1Zh
bHVlS2V5d29yZHMuaW4gb3JkZXIKIGVudW0gQ29udHJvbFBhcnQgewogICAgIE5vQ29udHJvbFBh
cnQsCisgICAgQXV0b1BhcnQsCiAgICAgQ2hlY2tib3hQYXJ0LAogICAgIFJhZGlvUGFydCwKICAg
ICBQdXNoQnV0dG9uUGFydCwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJUaGVtZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWUuY3Bw
CmluZGV4IGI5MDgyYjU2Nzc5NWYyY2Q1ZTRkNmE3NGQ3MDMzYTg1ZTg3MWMwNWMuLmZkMTUyNjY0
YzQyMDM4OTUwNGYzN2UyMTg0YmE1NjhiYTRkODVmODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlclRoZW1lLmNwcApAQCAtMzQsOSArMzQsMTQgQEAKICNpbmNsdWRlICJGcmFtZS5o
IgogI2luY2x1ZGUgIkZyYW1lU2VsZWN0aW9uLmgiCiAjaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0
LmgiCisjaW5jbHVkZSAiSFRNTEF0dGFjaG1lbnRFbGVtZW50LmgiCisjaW5jbHVkZSAiSFRNTEJ1
dHRvbkVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MSW5wdXRFbGVtZW50LmgiCiAjaW5jbHVkZSAi
SFRNTE1ldGVyRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgorI2luY2x1ZGUgIkhU
TUxQcm9ncmVzc0VsZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1MU2VsZWN0RWxlbWVudC5oIgorI2lu
Y2x1ZGUgIkhUTUxUZXh0QXJlYUVsZW1lbnQuaCIKICNpbmNsdWRlICJMb2NhbGl6ZWRTdHJpbmdz
LmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBhaW50SW5mby5oIgpAQCAtNDQsNiAr
NDksNyBAQAogI2luY2x1ZGUgIlJlbmRlclN0eWxlLmgiCiAjaW5jbHVkZSAiUmVuZGVyVmlldy5o
IgogI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKKyNpbmNsdWRlICJTaGFkb3dQ
c2V1ZG9JZHMuaCIKICNpbmNsdWRlICJTcGluQnV0dG9uRWxlbWVudC5oIgogI2luY2x1ZGUgIlN0
cmluZ1RydW5jYXRvci5oIgogI2luY2x1ZGUgIlRleHRDb250cm9sSW5uZXJFbGVtZW50cy5oIgpA
QCAtNzcsOCArODMsMTYgQEAgUmVuZGVyVGhlbWU6OlJlbmRlclRoZW1lKCkKIAogdm9pZCBSZW5k
ZXJUaGVtZTo6YWRqdXN0U3R5bGUoUmVuZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBFbGVtZW50KiBl
bGVtZW50LCBjb25zdCBSZW5kZXJTdHlsZSogdXNlckFnZW50QXBwZWFyYW5jZVN0eWxlKQogewor
ICAgIGF1dG8gcGFydCA9IHN0eWxlLmFwcGVhcmFuY2UoKTsKKyAgICBpZiAocGFydCA9PSBBdXRv
UGFydCkgeworICAgICAgICBwYXJ0ID0gYXV0b0FwcGVhcmFuY2VGb3JFbGVtZW50KGVsZW1lbnQp
OworICAgICAgICBpZiAocGFydCA9PSBOb0NvbnRyb2xQYXJ0KSB7CisgICAgICAgICAgICBzdHls
ZS5zZXRFZmZlY3RpdmVBcHBlYXJhbmNlKE5vQ29udHJvbFBhcnQpOworICAgICAgICAgICAgcmV0
dXJuOworICAgICAgICB9CisgICAgfQorCiAgICAgLy8gRm9yY2UgaW5saW5lIGFuZCB0YWJsZSBk
aXNwbGF5IHN0eWxlcyB0byBiZSBpbmxpbmUtYmxvY2sgKGV4Y2VwdCBmb3IgdGFibGUtIHdoaWNo
IGlzIGJsb2NrKQotICAgIENvbnRyb2xQYXJ0IHBhcnQgPSBzdHlsZS5hcHBlYXJhbmNlKCk7CiAg
ICAgaWYgKHN0eWxlLmRpc3BsYXkoKSA9PSBEaXNwbGF5VHlwZTo6SW5saW5lIHx8IHN0eWxlLmRp
c3BsYXkoKSA9PSBEaXNwbGF5VHlwZTo6SW5saW5lVGFibGUgfHwgc3R5bGUuZGlzcGxheSgpID09
IERpc3BsYXlUeXBlOjpUYWJsZVJvd0dyb3VwCiAgICAgICAgIHx8IHN0eWxlLmRpc3BsYXkoKSA9
PSBEaXNwbGF5VHlwZTo6VGFibGVIZWFkZXJHcm91cCB8fCBzdHlsZS5kaXNwbGF5KCkgPT0gRGlz
cGxheVR5cGU6OlRhYmxlRm9vdGVyR3JvdXAKICAgICAgICAgfHwgc3R5bGUuZGlzcGxheSgpID09
IERpc3BsYXlUeXBlOjpUYWJsZVJvdyB8fCBzdHlsZS5kaXNwbGF5KCkgPT0gRGlzcGxheVR5cGU6
OlRhYmxlQ29sdW1uR3JvdXAgfHwgc3R5bGUuZGlzcGxheSgpID09IERpc3BsYXlUeXBlOjpUYWJs
ZUNvbHVtbgpAQCAtOTAsMTUgKzEwNCwxNyBAQCB2b2lkIFJlbmRlclRoZW1lOjphZGp1c3RTdHls
ZShSZW5kZXJTdHlsZSYgc3R5bGUsIGNvbnN0IEVsZW1lbnQqIGVsZW1lbnQsIGNvbnN0CiAgICAg
aWYgKHVzZXJBZ2VudEFwcGVhcmFuY2VTdHlsZSAmJiBpc0NvbnRyb2xTdHlsZWQoc3R5bGUsICp1
c2VyQWdlbnRBcHBlYXJhbmNlU3R5bGUpKSB7CiAgICAgICAgIHN3aXRjaCAocGFydCkgewogICAg
ICAgICBjYXNlIE1lbnVsaXN0UGFydDoKLSAgICAgICAgICAgIHN0eWxlLnNldEVmZmVjdGl2ZUFw
cGVhcmFuY2UoTWVudWxpc3RCdXR0b25QYXJ0KTsKICAgICAgICAgICAgIHBhcnQgPSBNZW51bGlz
dEJ1dHRvblBhcnQ7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgZGVmYXVsdDoKLSAgICAg
ICAgICAgIHN0eWxlLnNldEVmZmVjdGl2ZUFwcGVhcmFuY2UoTm9Db250cm9sUGFydCk7CisgICAg
ICAgICAgICBwYXJ0ID0gTm9Db250cm9sUGFydDsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAg
ICB9CiAgICAgfQogCisgICAgQVNTRVJUKHBhcnQgIT0gQXV0b1BhcnQpOworICAgIHN0eWxlLnNl
dEVmZmVjdGl2ZUFwcGVhcmFuY2UocGFydCk7CisKICAgICBpZiAoIXN0eWxlLmhhc0VmZmVjdGl2
ZUFwcGVhcmFuY2UoKSkKICAgICAgICAgcmV0dXJuOwogCkBAIC0xOTEsNyArMjA3LDcgQEAgdm9p
ZCBSZW5kZXJUaGVtZTo6YWRqdXN0U3R5bGUoUmVuZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBFbGVt
ZW50KiBlbGVtZW50LCBjb25zdAogI2VuZGlmCiAKICAgICAvLyBDYWxsIHRoZSBhcHByb3ByaWF0
ZSBzdHlsZSBhZGp1c3RtZW50IG1ldGhvZCBiYXNlZCBvZmYgdGhlIGFwcGVhcmFuY2UgdmFsdWUu
Ci0gICAgc3dpdGNoIChzdHlsZS5lZmZlY3RpdmVBcHBlYXJhbmNlKCkpIHsKKyAgICBzd2l0Y2gg
KHBhcnQpIHsKICNpZiAhVVNFKE5FV19USEVNRSkKICAgICBjYXNlIENoZWNrYm94UGFydDoKICAg
ICAgICAgcmV0dXJuIGFkanVzdENoZWNrYm94U3R5bGUoc3R5bGUsIGVsZW1lbnQpOwpAQCAtMjcw
LDYgKzI4NiwxMTAgQEAgdm9pZCBSZW5kZXJUaGVtZTo6YWRqdXN0U3R5bGUoUmVuZGVyU3R5bGUm
IHN0eWxlLCBjb25zdCBFbGVtZW50KiBlbGVtZW50LCBjb25zdAogICAgIH0KIH0KIAorQ29udHJv
bFBhcnQgUmVuZGVyVGhlbWU6OmF1dG9BcHBlYXJhbmNlRm9yRWxlbWVudChjb25zdCBFbGVtZW50
KiBlbGVtZW50UHRyKSBjb25zdAoreworICAgIGlmICghZWxlbWVudFB0cikKKyAgICAgICAgcmV0
dXJuIE5vQ29udHJvbFBhcnQ7CisKKyAgICBSZWYgZWxlbWVudCA9ICplbGVtZW50UHRyOworCisg
ICAgaWYgKGlzPEhUTUxJbnB1dEVsZW1lbnQ+KGVsZW1lbnQpKSB7CisgICAgICAgIGF1dG8mIGlu
cHV0ID0gZG93bmNhc3Q8SFRNTElucHV0RWxlbWVudD4oZWxlbWVudC5nZXQoKSk7CisKKyAgICAg
ICAgaWYgKGlucHV0LmlzVGV4dEJ1dHRvbigpIHx8IGlucHV0LmlzVXBsb2FkQnV0dG9uKCkpCisg
ICAgICAgICAgICByZXR1cm4gUHVzaEJ1dHRvblBhcnQ7CisKKyAgICAgICAgaWYgKGlucHV0Lmlz
Q2hlY2tib3goKSkKKyAgICAgICAgICAgIHJldHVybiBDaGVja2JveFBhcnQ7CisKKyAgICAgICAg
aWYgKGlucHV0LmlzUmFkaW9CdXR0b24oKSkKKyAgICAgICAgICAgIHJldHVybiBSYWRpb1BhcnQ7
CisKKyAgICAgICAgaWYgKGlucHV0LmlzU2VhcmNoRmllbGQoKSkKKyAgICAgICAgICAgIHJldHVy
biBTZWFyY2hGaWVsZFBhcnQ7CisKKyAgICAgICAgaWYgKGlucHV0LmlzRGF0ZUZpZWxkKCkgfHwg
aW5wdXQuaXNEYXRlVGltZUxvY2FsRmllbGQoKSB8fCBpbnB1dC5pc01vbnRoRmllbGQoKSB8fCBp
bnB1dC5pc1RpbWVGaWVsZCgpIHx8IGlucHV0LmlzV2Vla0ZpZWxkKCkpIHsKKyNpZiBQTEFURk9S
TShJT1NfRkFNSUxZKQorICAgICAgICAgICAgcmV0dXJuIE1lbnVsaXN0QnV0dG9uUGFydDsKKyNl
bHNlCisgICAgICAgICAgICByZXR1cm4gVGV4dEZpZWxkUGFydDsKKyNlbmRpZgorICAgICAgICB9
CisKKyNpZiBFTkFCTEUoSU5QVVRfVFlQRV9DT0xPUikKKyAgICAgICAgaWYgKGlucHV0LmlzQ29s
b3JDb250cm9sKCkpCisgICAgICAgICAgICByZXR1cm4gQ29sb3JXZWxsUGFydDsKKyNlbmRpZgor
CisgICAgICAgIGlmIChpbnB1dC5pc1JhbmdlQ29udHJvbCgpKQorICAgICAgICAgICAgcmV0dXJu
IFNsaWRlckhvcml6b250YWxQYXJ0OworCisgICAgICAgIGlmIChpbnB1dC5pc1RleHRGaWVsZCgp
KQorICAgICAgICAgICAgcmV0dXJuIFRleHRGaWVsZFBhcnQ7CisKKyAgICAgICAgLy8gPGlucHV0
IHR5cGU9aGlkZGVufGltYWdlfGZpbGU+CisgICAgICAgIHJldHVybiBOb0NvbnRyb2xQYXJ0Owor
ICAgIH0KKworICAgIGlmIChpczxIVE1MQnV0dG9uRWxlbWVudD4oZWxlbWVudCkpCisgICAgICAg
IHJldHVybiBCdXR0b25QYXJ0OworCisgICAgaWYgKGlzPEhUTUxTZWxlY3RFbGVtZW50PihlbGVt
ZW50KSkgeworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgICAgIHJldHVybiBNZW51bGlz
dEJ1dHRvblBhcnQ7CisjZWxzZQorICAgICAgICBhdXRvJiBzZWxlY3QgPSBkb3duY2FzdDxIVE1M
U2VsZWN0RWxlbWVudD4oZWxlbWVudC5nZXQoKSk7CisgICAgICAgIHJldHVybiBzZWxlY3QudXNl
c01lbnVMaXN0KCkgPyBNZW51bGlzdFBhcnQgOiBMaXN0Ym94UGFydDsKKyNlbmRpZgorICAgIH0K
KworICAgIGlmIChpczxIVE1MVGV4dEFyZWFFbGVtZW50PihlbGVtZW50KSkKKyAgICAgICAgcmV0
dXJuIFRleHRBcmVhUGFydDsKKworICAgIGlmIChpczxIVE1MTWV0ZXJFbGVtZW50PihlbGVtZW50
KSkKKyAgICAgICAgcmV0dXJuIE1ldGVyUGFydDsKKworICAgIGlmIChpczxIVE1MUHJvZ3Jlc3NF
bGVtZW50PihlbGVtZW50KSkKKyAgICAgICAgcmV0dXJuIFByb2dyZXNzQmFyUGFydDsKKworI2lm
IEVOQUJMRShBVFRBQ0hNRU5UX0VMRU1FTlQpCisgICAgaWYgKGlzPEhUTUxBdHRhY2htZW50RWxl
bWVudD4oZWxlbWVudCkpCisgICAgICAgIHJldHVybiBBdHRhY2htZW50UGFydDsKKyNlbmRpZgor
CisgICAgaWYgKGVsZW1lbnQuaXNJblVzZXJBZ2VudFNoYWRvd1RyZWUoKSkgeworICAgICAgICBh
dXRvJiBwc2V1ZG8gPSBlbGVtZW50LnNoYWRvd1BzZXVkb0lkKCk7CisKKyNpZiBFTkFCTEUoREFU
QUxJU1RfRUxFTUVOVCkKKyAgICAgICAgaWYgKHBzZXVkbyA9PSBTaGFkb3dQc2V1ZG9JZHM6Ondl
YmtpdExpc3RCdXR0b24oKSkKKyAgICAgICAgICAgIHJldHVybiBMaXN0QnV0dG9uUGFydDsKKyNl
bmRpZgorCisgICAgICAgIGlmIChwc2V1ZG8gPT0gU2hhZG93UHNldWRvSWRzOjp3ZWJraXRDYXBz
TG9ja0luZGljYXRvcigpKQorICAgICAgICAgICAgcmV0dXJuIENhcHNMb2NrSW5kaWNhdG9yUGFy
dDsKKworICAgICAgICBpZiAocHNldWRvID09IFNoYWRvd1BzZXVkb0lkczo6d2Via2l0U2VhcmNo
Q2FuY2VsQnV0dG9uKCkpCisgICAgICAgICAgICByZXR1cm4gU2VhcmNoRmllbGRDYW5jZWxCdXR0
b25QYXJ0OworCisgICAgICAgIGlmIChwc2V1ZG8gPT0gU2hhZG93UHNldWRvSWRzOjp3ZWJraXRT
ZWFyY2hEZWNvcmF0aW9uKCkpCisgICAgICAgICAgICByZXR1cm4gU2VhcmNoRmllbGREZWNvcmF0
aW9uUGFydDsKKworICAgICAgICBpZiAocHNldWRvID09IFNoYWRvd1BzZXVkb0lkczo6d2Via2l0
U2VhcmNoUmVzdWx0c0RlY29yYXRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBTZWFyY2hGaWVs
ZFJlc3VsdHNEZWNvcmF0aW9uUGFydDsKKworICAgICAgICBpZiAocHNldWRvID09IFNoYWRvd1Bz
ZXVkb0lkczo6d2Via2l0U2VhcmNoUmVzdWx0c0J1dHRvbigpKQorICAgICAgICAgICAgcmV0dXJu
IFNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvblBhcnQ7CisKKyAgICAgICAgaWYgKHBzZXVkbyA9PSBT
aGFkb3dQc2V1ZG9JZHM6OndlYmtpdFNsaWRlclRodW1iKCkgfHwgcHNldWRvID09IFNoYWRvd1Bz
ZXVkb0lkczo6d2Via2l0TWVkaWFTbGlkZXJUaHVtYigpKQorICAgICAgICAgICAgcmV0dXJuIFNs
aWRlclRodW1iSG9yaXpvbnRhbFBhcnQ7CisKKyAgICAgICAgaWYgKHBzZXVkbyA9PSBTaGFkb3dQ
c2V1ZG9JZHM6OndlYmtpdElubmVyU3BpbkJ1dHRvbigpKQorICAgICAgICAgICAgcmV0dXJuIElu
bmVyU3BpbkJ1dHRvblBhcnQ7CisgICAgfQorCisgICAgcmV0dXJuIE5vQ29udHJvbFBhcnQ7Cit9
CisKIHZvaWQgUmVuZGVyVGhlbWU6OmFkanVzdFNlYXJjaEZpZWxkRGVjb3JhdGlvblN0eWxlKFJl
bmRlclN0eWxlJiBzdHlsZSwgY29uc3QgRWxlbWVudCogZWxlbWVudCkgY29uc3QKIHsKICAgICBp
ZiAoaXM8U2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudD4oZWxlbWVudCkgJiYgIWRvd25j
YXN0PFNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQ+KCplbGVtZW50KS5jYW5BZGp1c3RT
dHlsZUZvckFwcGVhcmFuY2UoKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlclRoZW1lLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWUu
aAppbmRleCBlN2U2ZWJiMWI5ZDFlYmIxODgwN2ZiMGFhODkxNmY5YzgwMWY3ODMxLi5mODIyZmQ0
OWNjYzNlZWQwNDkzNDU2YTdiYTc0MmExODliZjIwOWY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyVGhlbWUuaApAQCAtNDU0LDYgKzQ1NCw4IEBAIHByb3RlY3RlZDoKICAgICB2aXJ0
dWFsIENvbG9yQ2FjaGUmIGNvbG9yQ2FjaGUoT3B0aW9uU2V0PFN0eWxlQ29sb3I6Ok9wdGlvbnM+
KSBjb25zdDsKIAogcHJpdmF0ZToKKyAgICBDb250cm9sUGFydCBhdXRvQXBwZWFyYW5jZUZvckVs
ZW1lbnQoY29uc3QgRWxlbWVudCopIGNvbnN0OworCiAgICAgdm9pZCBhZGp1c3RTZWFyY2hGaWVs
ZERlY29yYXRpb25TdHlsZShSZW5kZXJTdHlsZSYsIGNvbnN0IEVsZW1lbnQqKSBjb25zdDsKIAog
ICAgIG11dGFibGUgSGFzaE1hcDx1aW50OF90LCBDb2xvckNhY2hlLCBEZWZhdWx0SGFzaDx1aW50
OF90PiwgV1RGOjpVbnNpZ25lZFdpdGhaZXJvS2V5SGFzaFRyYWl0czx1aW50OF90Pj4gbV9jb2xv
ckNhY2hlTWFwOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCmluZGV4IDA3ZDJhNTkzMTJlOGIyNTYwNzRjMTAwMThkYmY0YjFmNjAwMDI4
NWQuLjI3NTBlZWEzOTljN2UwYmVkNjAyMWE1MzYyZTMyNmU2YzQ5YzNiYmIgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNSBAQAorMjAyMS0xMC0wOCAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5j
b20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yICctd2Via2l0LWFwcGVhcmFuY2U6IGF1dG8n
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzEyMDMK
KyAgICAgICAgcmRhcjovLzgzNjk2MTMzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgV2Vuc29uIEhz
aWVoLgorCisgICAgICAgICogcGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy11aS9hcHBlYXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBs
YXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBw
ZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0OgorCiAyMDIxLTEwLTA3ICBBZGl0eWEgS2Vl
cnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KIAogICAgICAgICBbY3NzLXVpXSBQYXJzaW5nIHN1
cHBvcnQgZm9yIGFjY2VudC1jb2xvcgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXgg
NWY4MjRhYjljMzU5NDQxYTU1N2FiNDQ5NWNkMTdlYTk1MGYwNzAyNy4uNjg0OGYzZDI4ZDk3YWI0
YWViYjQwNDQxNjJmMTc2YTkxOGU1N2IxZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTUgQEAKKzIwMjEtMTAtMDggIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlA
YXBwbGUuY29tPgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciAnLXdlYmtpdC1hcHBlYXJhbmNl
OiBhdXRvJworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjMxMjAzCisgICAgICAgIHJkYXI6Ly84MzY5NjEzMworCisgICAgICAgIFJldmlld2VkIGJ5IFdl
bnNvbiBIc2llaC4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXVpL2Fw
cGVhcmFuY2UtY3Nzb20tMDAxLWV4cGVjdGVkLnR4dDoKKworICAgICAgICBNYXJrIHByb2dyZXNz
aW9uLgorCiAyMDIxLTEwLTA3ICBBZGl0eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4K
IAogICAgICAgICBbY3NzLXVpXSBQYXJzaW5nIHN1cHBvcnQgZm9yIGFjY2VudC1jb2xvcgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3Mv
Y3NzLXVpL2FwcGVhcmFuY2UtY3Nzb20tMDAxLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy11aS9hcHBlYXJhbmNlLWNzc29t
LTAwMS1leHBlY3RlZC50eHQKaW5kZXggZjY0NTc5NGM5NDY2MTA5ODJmMTdmODJkZjgxZTQ5M2Y1
MjdmYzNlNC4uODhiZGQ5YzJiNjFiNTcwZTIwZjFmMzQ5MTY4MzNlOWZlNDEzMGM3NyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nz
LXVpL2FwcGVhcmFuY2UtY3Nzb20tMDAxLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3Nv
bS0wMDEtZXhwZWN0ZWQudHh0CkBAIC0xLDcgKzEsNyBAQAogVGVzdAogCiBQQVNTIC13ZWJraXQt
YXBwZWFyYW5jZTogbm9uZQotRkFJTCAtd2Via2l0LWFwcGVhcmFuY2U6IGF1dG8gYXNzZXJ0X2Vx
dWFsczogc3R5bGUuV2Via2l0QXBwZWFyYW5jZSAodXBwZXJjYXNlIFcpIGV4cGVjdGVkICJhdXRv
IiBidXQgZ290ICIiCitQQVNTIC13ZWJraXQtYXBwZWFyYW5jZTogYXV0bwogUEFTUyAtd2Via2l0
LWFwcGVhcmFuY2U6IGJ1dHRvbgogUEFTUyAtd2Via2l0LWFwcGVhcmFuY2U6IGNoZWNrYm94CiBQ
QVNTIC13ZWJraXQtYXBwZWFyYW5jZTogbGlzdGJveApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vZ3RrL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy11aS9h
cHBlYXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9n
dGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXVpL2FwcGVhcmFuY2Ut
Y3Nzb20tMDAxLWV4cGVjdGVkLnR4dAppbmRleCA2ZTFiY2VjOTRjNzUyMjViNjJlYTAyNGJiM2Fm
NDBlNmQ2OTkzMDYzLi40MzA0OTZmNThlMTVkYzdmYmYwNmM5ZTNmNDE2ZTc4NGNjM2E5NGJjIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3MvY3NzLXVpL2FwcGVhcmFuY2UtY3Nzb20tMDAxLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLXVpL2FwcGVhcmFuY2UtY3Nzb20tMDAxLWV4cGVjdGVkLnR4dApAQCAtMSw3
ICsxLDcgQEAKIFRlc3QKIAogUEFTUyAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmUKLUZBSUwgLXdl
YmtpdC1hcHBlYXJhbmNlOiBhdXRvIGFzc2VydF9lcXVhbHM6IHN0eWxlLldlYmtpdEFwcGVhcmFu
Y2UgKHVwcGVyY2FzZSBXKSBleHBlY3RlZCAiYXV0byIgYnV0IGdvdCAiIgorUEFTUyAtd2Via2l0
LWFwcGVhcmFuY2U6IGF1dG8KIFBBU1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b24KIFBBU1Mg
LXdlYmtpdC1hcHBlYXJhbmNlOiBjaGVja2JveAogUEFTUyAtd2Via2l0LWFwcGVhcmFuY2U6IGxp
c3Rib3gKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy13azIvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXVpL2FwcGVhcmFuY2UtY3Nzb20tMDAxLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy13azIvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXVpL2FwcGVhcmFuY2UtY3Nzb20tMDAxLWV4cGVjdGVk
LnR4dAppbmRleCBmNjQ1Nzk0Yzk0NjYxMDk4MmYxN2Y4MmRmODFlNDkzZjUyN2ZjM2U0Li44OGJk
ZDljMmI2MWI1NzBlMjBmMWYzNDkxNjgzM2U5ZmU0MTMwYzc3IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy11aS9hcHBlYXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0CkBAIC0xLDcgKzEsNyBAQAog
VGVzdAogCiBQQVNTIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZQotRkFJTCAtd2Via2l0LWFwcGVh
cmFuY2U6IGF1dG8gYXNzZXJ0X2VxdWFsczogc3R5bGUuV2Via2l0QXBwZWFyYW5jZSAodXBwZXJj
YXNlIFcpIGV4cGVjdGVkICJhdXRvIiBidXQgZ290ICIiCitQQVNTIC13ZWJraXQtYXBwZWFyYW5j
ZTogYXV0bwogUEFTUyAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbgogUEFTUyAtd2Via2l0LWFw
cGVhcmFuY2U6IGNoZWNrYm94CiBQQVNTIC13ZWJraXQtYXBwZWFyYW5jZTogbGlzdGJveApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy11aS9hcHBlYXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS93cGUvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLXVpL2FwcGVhcmFuY2UtY3Nzb20tMDAxLWV4cGVjdGVkLnR4dAppbmRleCBkYWE2MTMw
ZGRiMmEwYjgwMDliZjMwNTYzMjg4YmZmYWI1MzRmODlkLi41NTA1Y2YxZWNjNjgzYmY3NDljMDBl
YjAxM2UwMGQyMzZiZjQxMWNkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93cGUv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXVpL2FwcGVhcmFuY2UtY3Nz
b20tMDAxLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93cGUvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXVpL2FwcGVhcmFuY2UtY3Nzb20tMDAx
LWV4cGVjdGVkLnR4dApAQCAtMSw3ICsxLDcgQEAKIFRlc3QKIAogUEFTUyAtd2Via2l0LWFwcGVh
cmFuY2U6IG5vbmUKLUZBSUwgLXdlYmtpdC1hcHBlYXJhbmNlOiBhdXRvIGFzc2VydF9lcXVhbHM6
IHN0eWxlLldlYmtpdEFwcGVhcmFuY2UgKHVwcGVyY2FzZSBXKSBleHBlY3RlZCAiYXV0byIgYnV0
IGdvdCAiIgorUEFTUyAtd2Via2l0LWFwcGVhcmFuY2U6IGF1dG8KIFBBU1MgLXdlYmtpdC1hcHBl
YXJhbmNlOiBidXR0b24KIFBBU1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBjaGVja2JveAogUEFTUyAt
d2Via2l0LWFwcGVhcmFuY2U6IGxpc3Rib3gK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440681</attachid>
            <date>2021-10-08 15:13:11 -0700</date>
            <delta_ts>2021-10-08 18:39:41 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-231203-20211008151431.patch</filename>
            <type>text/plain</type>
            <size>17813</size>
            <attacher name="Aditya Keerthi">akeerthi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzNjc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmUyMTg4Y2E0NjA5NTlh
MTQ0ZGFjMzgxYjljYjdmMTYwM2E2MmFhNS4uOWM1MDYzYjJkMzRlMzRiYWNhZDgxMDVjOWFiYjVk
NDExMjhmY2VkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDIxLTEwLTA4ICBBZGl0
eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgc3VwcG9ydCBm
b3IgJy13ZWJraXQtYXBwZWFyYW5jZTogYXV0bycKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTIwMworICAgICAgICByZGFyOi8vODM2OTYxMzMKKwor
ICAgICAgICBSZXZpZXdlZCBieSBXZW5zb24gSHNpZWguCisKKyAgICAgICAgVGhlICdhcHBlYXJh
bmNlJyBwcm9wZXJ0eSBhbGxvd3MgYXV0aG9ycyB0byB1c2UgdGhlICdhdXRvJyBrZXl3b3JkCisg
ICAgICAgIHRvIG9wdCB3aWRnZXRzIChhbnkgZWxlbWVudCB0aGF0IGNhbiBoYXZlIGEgbmF0aXZl
IGFwcGVhcmFuY2UpIGludG8KKyAgICAgICAgYSBuYXRpdmUgYXBwZWFyYW5jZSBbMV0uIEVsZW1l
bnRzIG90aGVyIHRoYW4gd2lkZ2V0cyBhcmUgcmVuZGVyZWQKKyAgICAgICAgYXMgaWYgbm9uZSBo
YWQgYmVlbiBzcGVjaWZpZWQuCisKKyAgICAgICAgU2luY2UgJy13ZWJraXQtYXBwZWFyYW5jZScg
aXMgYSBwYXJzZSB0aW1lIGFsaWFzIG9mICdhcHBlYXJhbmNlJywKKyAgICAgICAgc3VwcG9ydCAn
LXdlYmtpdC1hcHBlYXJhbmNlOiBhdXRvJyBwcmlvciB0byB1bnByZWZpeGluZy4KKworICAgICAg
ICBUaGUgdXNlZC12YWx1ZSBmb3IgYXBwZWFyYW5jZSAoZWZmZWN0aXZlQXBwZWFyYW5jZSkgaXMg
ZGV0ZXJtaW5lZCBieQorICAgICAgICB0aGUgZWxlbWVudCB0YWcgYW5kIHR5cGUuIEluIHRoZSBj
YXNlIG9mIGVsZW1lbnRzIGluIHRoZSBVQSBzaGFkb3cKKyAgICAgICAgdHJlZSwgdGhlIHBzZXVk
byBpZCBpcyB1c2VkIHRvIGRldGVybWluZSB0aGUgZWZmZWN0aXZlIGFwcGVhcmFuY2UuIFRoZQor
ICAgICAgICB1c2VkLXZhbHVlcyB3aGVuIHNwZWNpZnlpbmcgJ2F1dG8nIG1hdGNoIHRoZSBkZWZh
dWx0IHNwZWNpZmllZCB2YWx1ZXMKKyAgICAgICAgaW4gdGhlIFVBIHN0eWxlIHNoZWV0LgorCisg
ICAgICAgIE5vdGUgdGhhdCBhZGRpdGlvbmFsIHRlc3QgY292ZXJhZ2UgZXhpc3RzIGluIHRoZSBm
b3JtIG9mIHdlYiBwbGF0Zm9ybQorICAgICAgICB3ZWIgcGxhdGZvcm0gdGVzdHMsIGFuZCBpcyBk
ZXBlbmRlbnQgb24gdW5wcmVmaXhpbmcuCisKKyAgICAgICAgWzFdIGh0dHBzOi8vd3d3LnczLm9y
Zy9UUi9jc3MtdWktNC8jdmFsZGVmLWFwcGVhcmFuY2UtYXV0bworCisgICAgICAgICogY3NzL0NT
U1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ByaW1pdGl2
ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NQcmltaXRp
dmVWYWx1ZTo6b3BlcmF0b3IgQ29udHJvbFBhcnQgY29uc3QpOgorICAgICAgICAqIGNzcy9DU1NQ
cm9wZXJ0aWVzLmpzb246CisgICAgICAgICogY3NzL3BhcnNlci9DU1NQYXJzZXJGYXN0UGF0aHMu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyRmFzdFBhdGhzOjppc1ZhbGlkS2V5d29y
ZFByb3BlcnR5QW5kVmFsdWUpOgorICAgICAgICAqIHBsYXRmb3JtL1RoZW1lVHlwZXMuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6b3BlcmF0b3I8PCk6CisgICAgICAgICogcGxhdGZvcm0vVGhlbWVU
eXBlcy5oOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJUaGVtZS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJUaGVtZTo6YWRqdXN0U3R5bGUpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyVGhlbWU6OmF1dG9BcHBlYXJhbmNlRm9yRWxlbWVudCBjb25zdCk6CisgICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlclRoZW1lLmg6CisKIDIwMjEtMTAtMDcgIEFkaXR5YSBLZWVydGhpICA8YWtl
ZXJ0aGlAYXBwbGUuY29tPgogCiAgICAgICAgIEludHJvZHVjZSBTaGFkb3dQc2V1ZG9JZHMgdG8g
c3RvcmUgYWxsIFVBIHNoYWRvdyByb290IHBzZXVkby1lbGVtZW50IGlkcwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaCBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKaW5kZXggYzQzZGIwYmQyOTU1
MmI1OGEzNDEzZTk4ODljOWFjNzUwODkyYTBmYS4uZjY0YmIxNjRiOTYzZWMxODI4ZDA0ZTk3NjI5
YzUzZTI0YzA3YzA5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2
ZVZhbHVlTWFwcGluZ3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFs
dWVNYXBwaW5ncy5oCkBAIC00MjMsNiArNDIzLDkgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJp
bWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKENvbnRyb2xQYXJ0IGUpCiAgICAgY2FzZSBO
b0NvbnRyb2xQYXJ0OgogICAgICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZU5vbmU7CiAg
ICAgICAgIGJyZWFrOworICAgIGNhc2UgQXV0b1BhcnQ6CisgICAgICAgIG1fdmFsdWUudmFsdWVJ
RCA9IENTU1ZhbHVlQXV0bzsKKyAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBDaGVja2JveFBhcnQ6
CiAgICAgICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlQ2hlY2tib3g7CiAgICAgICAgIGJy
ZWFrOwpAQCAtNjI5LDcgKzYzMiwxMSBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6b3BlcmF0b3IgQ29udHJvbFBhcnQoKSBjb25zdAogCiAgICAgaWYgKG1fdmFsdWUudmFs
dWVJRCA9PSBDU1NWYWx1ZU5vbmUpCiAgICAgICAgIHJldHVybiBOb0NvbnRyb2xQYXJ0OwotICAg
IHJldHVybiBDb250cm9sUGFydChtX3ZhbHVlLnZhbHVlSUQgLSBDU1NWYWx1ZUNoZWNrYm94ICsg
MSk7CisKKyAgICBpZiAobV92YWx1ZS52YWx1ZUlEID09IENTU1ZhbHVlQXV0bykKKyAgICAgICAg
cmV0dXJuIEF1dG9QYXJ0OworCisgICAgcmV0dXJuIENvbnRyb2xQYXJ0KG1fdmFsdWUudmFsdWVJ
RCAtIENTU1ZhbHVlQ2hlY2tib3ggKyBDaGVja2JveFBhcnQpOwogfQogCiB0ZW1wbGF0ZTw+IGlu
bGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoQmFja2ZhY2VWaXNpYmls
aXR5IGUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29u
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgppbmRleCBhMzE5YTc1Y2Q0
MmNmOTI3ZmM3NmZiNmU5ZTFmYjdjZDcwZWQ4ZmRjLi5iMzg4NDgzMTcwOTBlOTM2MWQzY2Y3ZDJi
YWE5NGJlODM0Y2M0NGQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVy
dGllcy5qc29uCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24KQEAg
LTUwMDMsNiArNTAwMyw3IEBACiAgICAgICAgICAgICAgICAgImNhcHMtbG9jay1pbmRpY2F0b3Ii
LAogICAgICAgICAgICAgICAgICJjb2xvci13ZWxsIiwKICAgICAgICAgICAgICAgICAibGlzdC1i
dXR0b24iLAorICAgICAgICAgICAgICAgICJhdXRvIiwKICAgICAgICAgICAgICAgICAibm9uZSIK
ICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAic3RhdHVzIjogewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQYXJzZXJGYXN0UGF0aHMuY3BwIGIvU291cmNlL1dl
YkNvcmUvY3NzL3BhcnNlci9DU1NQYXJzZXJGYXN0UGF0aHMuY3BwCmluZGV4IDc4YmZkZjgzNjYw
ZDNlNTUyZDQwNjdkNmI0YzRjYThjNjYyODJiNjUuLjBjNTRjMjE1MWQyZGRjZjI2MjI1MWU2MDRl
ZmU2MzA3MWE5YzZjMzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NT
UGFyc2VyRmFzdFBhdGhzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Bh
cnNlckZhc3RQYXRocy5jcHAKQEAgLTc1NCw3ICs3NTQsNyBAQCBib29sIENTU1BhcnNlckZhc3RQ
YXRoczo6aXNWYWxpZEtleXdvcmRQcm9wZXJ0eUFuZFZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVy
dHlJZAogICAgIGNhc2UgQ1NTUHJvcGVydHlWaXNpYmlsaXR5OiAvLyB2aXNpYmxlIHwgaGlkZGVu
IHwgY29sbGFwc2UKICAgICAgICAgcmV0dXJuIHZhbHVlSUQgPT0gQ1NTVmFsdWVWaXNpYmxlIHx8
IHZhbHVlSUQgPT0gQ1NTVmFsdWVIaWRkZW4gfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZUNvbGxhcHNl
OwogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRBcHBlYXJhbmNlOgotICAgICAgICByZXR1cm4g
KHZhbHVlSUQgPj0gQ1NTVmFsdWVDaGVja2JveCAmJiB2YWx1ZUlEIDw9IENTU1ZhbHVlQ2Fwc0xv
Y2tJbmRpY2F0b3IpIHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVOb25lOworICAgICAgICByZXR1cm4g
KHZhbHVlSUQgPj0gQ1NTVmFsdWVDaGVja2JveCAmJiB2YWx1ZUlEIDw9IENTU1ZhbHVlQ2Fwc0xv
Y2tJbmRpY2F0b3IpIHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVOb25lIHx8IHZhbHVlSUQgPT0gQ1NT
VmFsdWVBdXRvOwogICAgIGNhc2UgQ1NTUHJvcGVydHlCYWNrZmFjZVZpc2liaWxpdHk6CiAgICAg
ICAgIHJldHVybiB2YWx1ZUlEID09IENTU1ZhbHVlVmlzaWJsZSB8fCB2YWx1ZUlEID09IENTU1Zh
bHVlSGlkZGVuOwogI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9UaGVtZVR5cGVzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1RoZW1lVHlwZXMuY3BwCmluZGV4IGQ5ODk3ZTM4M2QyNDdlMmIzZWZmYWM4YjJmYTIzNGFh
ODc1NDVjNjAuLjI3Mjg2MDE3MjE2NTdlZjQ2ODViYjI3NzI5ZmFkOGY5ZmI1OTBkZjcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1lVHlwZXMuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1lVHlwZXMuY3BwCkBAIC0zNCw2ICszNCw3IEBAIFRleHRT
dHJlYW0mIG9wZXJhdG9yPDwoVGV4dFN0cmVhbSYgdHMsIENvbnRyb2xQYXJ0IGNvbnRyb2xQYXJ0
KQogewogICAgIHN3aXRjaCAoY29udHJvbFBhcnQpIHsKICAgICBjYXNlIE5vQ29udHJvbFBhcnQ6
IHRzIDw8ICJuby1jb250cm9sLXBhcnQiOyBicmVhazsKKyAgICBjYXNlIEF1dG9QYXJ0OiB0cyA8
PCAiYXV0by1wYXJ0IjsgYnJlYWs7CiAgICAgY2FzZSBDaGVja2JveFBhcnQ6IHRzIDw8ICJjaGVj
a2JveC1wYXJ0IjsgYnJlYWs7CiAgICAgY2FzZSBSYWRpb1BhcnQ6IHRzIDw8ICJyYWRpby1wYXJ0
IjsgYnJlYWs7CiAgICAgY2FzZSBQdXNoQnV0dG9uUGFydDogdHMgPDwgInB1c2gtYnV0dG9uLXBh
cnQiOyBicmVhazsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1lVHlw
ZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1RoZW1lVHlwZXMuaAppbmRleCA0ZTQ0MDU1
ZWIzY2I4ZjVhZDMyM2JjOWE4NTdkNzRjM2Y1ZTE5ZWI1Li5jZTdhZDkzZGI2ZWE4OTU2MGViYTBl
MDhlYzlhOWUyYTQ2OGQ3NDJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9U
aGVtZVR5cGVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGhlbWVUeXBlcy5oCkBA
IC0zNCw2ICszNCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIC8vIE11c3QgZm9sbG93IENTU1Zh
bHVlS2V5d29yZHMuaW4gb3JkZXIKIGVudW0gQ29udHJvbFBhcnQgewogICAgIE5vQ29udHJvbFBh
cnQsCisgICAgQXV0b1BhcnQsCiAgICAgQ2hlY2tib3hQYXJ0LAogICAgIFJhZGlvUGFydCwKICAg
ICBQdXNoQnV0dG9uUGFydCwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJUaGVtZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWUuY3Bw
CmluZGV4IGI5MDgyYjU2Nzc5NWYyY2Q1ZTRkNmE3NGQ3MDMzYTg1ZTg3MWMwNWMuLmZkMTUyNjY0
YzQyMDM4OTUwNGYzN2UyMTg0YmE1NjhiYTRkODVmODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlclRoZW1lLmNwcApAQCAtMzQsOSArMzQsMTQgQEAKICNpbmNsdWRlICJGcmFtZS5o
IgogI2luY2x1ZGUgIkZyYW1lU2VsZWN0aW9uLmgiCiAjaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0
LmgiCisjaW5jbHVkZSAiSFRNTEF0dGFjaG1lbnRFbGVtZW50LmgiCisjaW5jbHVkZSAiSFRNTEJ1
dHRvbkVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MSW5wdXRFbGVtZW50LmgiCiAjaW5jbHVkZSAi
SFRNTE1ldGVyRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgorI2luY2x1ZGUgIkhU
TUxQcm9ncmVzc0VsZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1MU2VsZWN0RWxlbWVudC5oIgorI2lu
Y2x1ZGUgIkhUTUxUZXh0QXJlYUVsZW1lbnQuaCIKICNpbmNsdWRlICJMb2NhbGl6ZWRTdHJpbmdz
LmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBhaW50SW5mby5oIgpAQCAtNDQsNiAr
NDksNyBAQAogI2luY2x1ZGUgIlJlbmRlclN0eWxlLmgiCiAjaW5jbHVkZSAiUmVuZGVyVmlldy5o
IgogI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKKyNpbmNsdWRlICJTaGFkb3dQ
c2V1ZG9JZHMuaCIKICNpbmNsdWRlICJTcGluQnV0dG9uRWxlbWVudC5oIgogI2luY2x1ZGUgIlN0
cmluZ1RydW5jYXRvci5oIgogI2luY2x1ZGUgIlRleHRDb250cm9sSW5uZXJFbGVtZW50cy5oIgpA
QCAtNzcsOCArODMsMTYgQEAgUmVuZGVyVGhlbWU6OlJlbmRlclRoZW1lKCkKIAogdm9pZCBSZW5k
ZXJUaGVtZTo6YWRqdXN0U3R5bGUoUmVuZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBFbGVtZW50KiBl
bGVtZW50LCBjb25zdCBSZW5kZXJTdHlsZSogdXNlckFnZW50QXBwZWFyYW5jZVN0eWxlKQogewor
ICAgIGF1dG8gcGFydCA9IHN0eWxlLmFwcGVhcmFuY2UoKTsKKyAgICBpZiAocGFydCA9PSBBdXRv
UGFydCkgeworICAgICAgICBwYXJ0ID0gYXV0b0FwcGVhcmFuY2VGb3JFbGVtZW50KGVsZW1lbnQp
OworICAgICAgICBpZiAocGFydCA9PSBOb0NvbnRyb2xQYXJ0KSB7CisgICAgICAgICAgICBzdHls
ZS5zZXRFZmZlY3RpdmVBcHBlYXJhbmNlKE5vQ29udHJvbFBhcnQpOworICAgICAgICAgICAgcmV0
dXJuOworICAgICAgICB9CisgICAgfQorCiAgICAgLy8gRm9yY2UgaW5saW5lIGFuZCB0YWJsZSBk
aXNwbGF5IHN0eWxlcyB0byBiZSBpbmxpbmUtYmxvY2sgKGV4Y2VwdCBmb3IgdGFibGUtIHdoaWNo
IGlzIGJsb2NrKQotICAgIENvbnRyb2xQYXJ0IHBhcnQgPSBzdHlsZS5hcHBlYXJhbmNlKCk7CiAg
ICAgaWYgKHN0eWxlLmRpc3BsYXkoKSA9PSBEaXNwbGF5VHlwZTo6SW5saW5lIHx8IHN0eWxlLmRp
c3BsYXkoKSA9PSBEaXNwbGF5VHlwZTo6SW5saW5lVGFibGUgfHwgc3R5bGUuZGlzcGxheSgpID09
IERpc3BsYXlUeXBlOjpUYWJsZVJvd0dyb3VwCiAgICAgICAgIHx8IHN0eWxlLmRpc3BsYXkoKSA9
PSBEaXNwbGF5VHlwZTo6VGFibGVIZWFkZXJHcm91cCB8fCBzdHlsZS5kaXNwbGF5KCkgPT0gRGlz
cGxheVR5cGU6OlRhYmxlRm9vdGVyR3JvdXAKICAgICAgICAgfHwgc3R5bGUuZGlzcGxheSgpID09
IERpc3BsYXlUeXBlOjpUYWJsZVJvdyB8fCBzdHlsZS5kaXNwbGF5KCkgPT0gRGlzcGxheVR5cGU6
OlRhYmxlQ29sdW1uR3JvdXAgfHwgc3R5bGUuZGlzcGxheSgpID09IERpc3BsYXlUeXBlOjpUYWJs
ZUNvbHVtbgpAQCAtOTAsMTUgKzEwNCwxNyBAQCB2b2lkIFJlbmRlclRoZW1lOjphZGp1c3RTdHls
ZShSZW5kZXJTdHlsZSYgc3R5bGUsIGNvbnN0IEVsZW1lbnQqIGVsZW1lbnQsIGNvbnN0CiAgICAg
aWYgKHVzZXJBZ2VudEFwcGVhcmFuY2VTdHlsZSAmJiBpc0NvbnRyb2xTdHlsZWQoc3R5bGUsICp1
c2VyQWdlbnRBcHBlYXJhbmNlU3R5bGUpKSB7CiAgICAgICAgIHN3aXRjaCAocGFydCkgewogICAg
ICAgICBjYXNlIE1lbnVsaXN0UGFydDoKLSAgICAgICAgICAgIHN0eWxlLnNldEVmZmVjdGl2ZUFw
cGVhcmFuY2UoTWVudWxpc3RCdXR0b25QYXJ0KTsKICAgICAgICAgICAgIHBhcnQgPSBNZW51bGlz
dEJ1dHRvblBhcnQ7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgZGVmYXVsdDoKLSAgICAg
ICAgICAgIHN0eWxlLnNldEVmZmVjdGl2ZUFwcGVhcmFuY2UoTm9Db250cm9sUGFydCk7CisgICAg
ICAgICAgICBwYXJ0ID0gTm9Db250cm9sUGFydDsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAg
ICB9CiAgICAgfQogCisgICAgQVNTRVJUKHBhcnQgIT0gQXV0b1BhcnQpOworICAgIHN0eWxlLnNl
dEVmZmVjdGl2ZUFwcGVhcmFuY2UocGFydCk7CisKICAgICBpZiAoIXN0eWxlLmhhc0VmZmVjdGl2
ZUFwcGVhcmFuY2UoKSkKICAgICAgICAgcmV0dXJuOwogCkBAIC0xOTEsNyArMjA3LDcgQEAgdm9p
ZCBSZW5kZXJUaGVtZTo6YWRqdXN0U3R5bGUoUmVuZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBFbGVt
ZW50KiBlbGVtZW50LCBjb25zdAogI2VuZGlmCiAKICAgICAvLyBDYWxsIHRoZSBhcHByb3ByaWF0
ZSBzdHlsZSBhZGp1c3RtZW50IG1ldGhvZCBiYXNlZCBvZmYgdGhlIGFwcGVhcmFuY2UgdmFsdWUu
Ci0gICAgc3dpdGNoIChzdHlsZS5lZmZlY3RpdmVBcHBlYXJhbmNlKCkpIHsKKyAgICBzd2l0Y2gg
KHBhcnQpIHsKICNpZiAhVVNFKE5FV19USEVNRSkKICAgICBjYXNlIENoZWNrYm94UGFydDoKICAg
ICAgICAgcmV0dXJuIGFkanVzdENoZWNrYm94U3R5bGUoc3R5bGUsIGVsZW1lbnQpOwpAQCAtMjcw
LDYgKzI4NiwxMTAgQEAgdm9pZCBSZW5kZXJUaGVtZTo6YWRqdXN0U3R5bGUoUmVuZGVyU3R5bGUm
IHN0eWxlLCBjb25zdCBFbGVtZW50KiBlbGVtZW50LCBjb25zdAogICAgIH0KIH0KIAorQ29udHJv
bFBhcnQgUmVuZGVyVGhlbWU6OmF1dG9BcHBlYXJhbmNlRm9yRWxlbWVudChjb25zdCBFbGVtZW50
KiBlbGVtZW50UHRyKSBjb25zdAoreworICAgIGlmICghZWxlbWVudFB0cikKKyAgICAgICAgcmV0
dXJuIE5vQ29udHJvbFBhcnQ7CisKKyAgICBSZWYgZWxlbWVudCA9ICplbGVtZW50UHRyOworCisg
ICAgaWYgKGlzPEhUTUxJbnB1dEVsZW1lbnQ+KGVsZW1lbnQpKSB7CisgICAgICAgIGF1dG8mIGlu
cHV0ID0gZG93bmNhc3Q8SFRNTElucHV0RWxlbWVudD4oZWxlbWVudC5nZXQoKSk7CisKKyAgICAg
ICAgaWYgKGlucHV0LmlzVGV4dEJ1dHRvbigpIHx8IGlucHV0LmlzVXBsb2FkQnV0dG9uKCkpCisg
ICAgICAgICAgICByZXR1cm4gUHVzaEJ1dHRvblBhcnQ7CisKKyAgICAgICAgaWYgKGlucHV0Lmlz
Q2hlY2tib3goKSkKKyAgICAgICAgICAgIHJldHVybiBDaGVja2JveFBhcnQ7CisKKyAgICAgICAg
aWYgKGlucHV0LmlzUmFkaW9CdXR0b24oKSkKKyAgICAgICAgICAgIHJldHVybiBSYWRpb1BhcnQ7
CisKKyAgICAgICAgaWYgKGlucHV0LmlzU2VhcmNoRmllbGQoKSkKKyAgICAgICAgICAgIHJldHVy
biBTZWFyY2hGaWVsZFBhcnQ7CisKKyAgICAgICAgaWYgKGlucHV0LmlzRGF0ZUZpZWxkKCkgfHwg
aW5wdXQuaXNEYXRlVGltZUxvY2FsRmllbGQoKSB8fCBpbnB1dC5pc01vbnRoRmllbGQoKSB8fCBp
bnB1dC5pc1RpbWVGaWVsZCgpIHx8IGlucHV0LmlzV2Vla0ZpZWxkKCkpIHsKKyNpZiBQTEFURk9S
TShJT1NfRkFNSUxZKQorICAgICAgICAgICAgcmV0dXJuIE1lbnVsaXN0QnV0dG9uUGFydDsKKyNl
bHNlCisgICAgICAgICAgICByZXR1cm4gVGV4dEZpZWxkUGFydDsKKyNlbmRpZgorICAgICAgICB9
CisKKyNpZiBFTkFCTEUoSU5QVVRfVFlQRV9DT0xPUikKKyAgICAgICAgaWYgKGlucHV0LmlzQ29s
b3JDb250cm9sKCkpCisgICAgICAgICAgICByZXR1cm4gQ29sb3JXZWxsUGFydDsKKyNlbmRpZgor
CisgICAgICAgIGlmIChpbnB1dC5pc1JhbmdlQ29udHJvbCgpKQorICAgICAgICAgICAgcmV0dXJu
IFNsaWRlckhvcml6b250YWxQYXJ0OworCisgICAgICAgIGlmIChpbnB1dC5pc1RleHRGaWVsZCgp
KQorICAgICAgICAgICAgcmV0dXJuIFRleHRGaWVsZFBhcnQ7CisKKyAgICAgICAgLy8gPGlucHV0
IHR5cGU9aGlkZGVufGltYWdlfGZpbGU+CisgICAgICAgIHJldHVybiBOb0NvbnRyb2xQYXJ0Owor
ICAgIH0KKworICAgIGlmIChpczxIVE1MQnV0dG9uRWxlbWVudD4oZWxlbWVudCkpCisgICAgICAg
IHJldHVybiBCdXR0b25QYXJ0OworCisgICAgaWYgKGlzPEhUTUxTZWxlY3RFbGVtZW50PihlbGVt
ZW50KSkgeworI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCisgICAgICAgIHJldHVybiBNZW51bGlz
dEJ1dHRvblBhcnQ7CisjZWxzZQorICAgICAgICBhdXRvJiBzZWxlY3QgPSBkb3duY2FzdDxIVE1M
U2VsZWN0RWxlbWVudD4oZWxlbWVudC5nZXQoKSk7CisgICAgICAgIHJldHVybiBzZWxlY3QudXNl
c01lbnVMaXN0KCkgPyBNZW51bGlzdFBhcnQgOiBMaXN0Ym94UGFydDsKKyNlbmRpZgorICAgIH0K
KworICAgIGlmIChpczxIVE1MVGV4dEFyZWFFbGVtZW50PihlbGVtZW50KSkKKyAgICAgICAgcmV0
dXJuIFRleHRBcmVhUGFydDsKKworICAgIGlmIChpczxIVE1MTWV0ZXJFbGVtZW50PihlbGVtZW50
KSkKKyAgICAgICAgcmV0dXJuIE1ldGVyUGFydDsKKworICAgIGlmIChpczxIVE1MUHJvZ3Jlc3NF
bGVtZW50PihlbGVtZW50KSkKKyAgICAgICAgcmV0dXJuIFByb2dyZXNzQmFyUGFydDsKKworI2lm
IEVOQUJMRShBVFRBQ0hNRU5UX0VMRU1FTlQpCisgICAgaWYgKGlzPEhUTUxBdHRhY2htZW50RWxl
bWVudD4oZWxlbWVudCkpCisgICAgICAgIHJldHVybiBBdHRhY2htZW50UGFydDsKKyNlbmRpZgor
CisgICAgaWYgKGVsZW1lbnQtPmlzSW5Vc2VyQWdlbnRTaGFkb3dUcmVlKCkpIHsKKyAgICAgICAg
YXV0byYgcHNldWRvID0gZWxlbWVudC0+c2hhZG93UHNldWRvSWQoKTsKKworI2lmIEVOQUJMRShE
QVRBTElTVF9FTEVNRU5UKQorICAgICAgICBpZiAocHNldWRvID09IFNoYWRvd1BzZXVkb0lkczo6
d2Via2l0TGlzdEJ1dHRvbigpKQorICAgICAgICAgICAgcmV0dXJuIExpc3RCdXR0b25QYXJ0Owor
I2VuZGlmCisKKyAgICAgICAgaWYgKHBzZXVkbyA9PSBTaGFkb3dQc2V1ZG9JZHM6OndlYmtpdENh
cHNMb2NrSW5kaWNhdG9yKCkpCisgICAgICAgICAgICByZXR1cm4gQ2Fwc0xvY2tJbmRpY2F0b3JQ
YXJ0OworCisgICAgICAgIGlmIChwc2V1ZG8gPT0gU2hhZG93UHNldWRvSWRzOjp3ZWJraXRTZWFy
Y2hDYW5jZWxCdXR0b24oKSkKKyAgICAgICAgICAgIHJldHVybiBTZWFyY2hGaWVsZENhbmNlbEJ1
dHRvblBhcnQ7CisKKyAgICAgICAgaWYgKHBzZXVkbyA9PSBTaGFkb3dQc2V1ZG9JZHM6OndlYmtp
dFNlYXJjaERlY29yYXRpb24oKSkKKyAgICAgICAgICAgIHJldHVybiBTZWFyY2hGaWVsZERlY29y
YXRpb25QYXJ0OworCisgICAgICAgIGlmIChwc2V1ZG8gPT0gU2hhZG93UHNldWRvSWRzOjp3ZWJr
aXRTZWFyY2hSZXN1bHRzRGVjb3JhdGlvbigpKQorICAgICAgICAgICAgcmV0dXJuIFNlYXJjaEZp
ZWxkUmVzdWx0c0RlY29yYXRpb25QYXJ0OworCisgICAgICAgIGlmIChwc2V1ZG8gPT0gU2hhZG93
UHNldWRvSWRzOjp3ZWJraXRTZWFyY2hSZXN1bHRzQnV0dG9uKCkpCisgICAgICAgICAgICByZXR1
cm4gU2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uUGFydDsKKworICAgICAgICBpZiAocHNldWRvID09
IFNoYWRvd1BzZXVkb0lkczo6d2Via2l0U2xpZGVyVGh1bWIoKSB8fCBwc2V1ZG8gPT0gU2hhZG93
UHNldWRvSWRzOjp3ZWJraXRNZWRpYVNsaWRlclRodW1iKCkpCisgICAgICAgICAgICByZXR1cm4g
U2xpZGVyVGh1bWJIb3Jpem9udGFsUGFydDsKKworICAgICAgICBpZiAocHNldWRvID09IFNoYWRv
d1BzZXVkb0lkczo6d2Via2l0SW5uZXJTcGluQnV0dG9uKCkpCisgICAgICAgICAgICByZXR1cm4g
SW5uZXJTcGluQnV0dG9uUGFydDsKKyAgICB9CisKKyAgICByZXR1cm4gTm9Db250cm9sUGFydDsK
K30KKwogdm9pZCBSZW5kZXJUaGVtZTo6YWRqdXN0U2VhcmNoRmllbGREZWNvcmF0aW9uU3R5bGUo
UmVuZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBFbGVtZW50KiBlbGVtZW50KSBjb25zdAogewogICAg
IGlmIChpczxTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50PihlbGVtZW50KSAmJiAhZG93
bmNhc3Q8U2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudD4oKmVsZW1lbnQpLmNhbkFkanVz
dFN0eWxlRm9yQXBwZWFyYW5jZSgpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyVGhlbWUuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVt
ZS5oCmluZGV4IGU3ZTZlYmIxYjlkMWViYjE4ODA3ZmIwYWE4OTE2ZjljODAxZjc4MzEuLmY4MjJm
ZDQ5Y2NjM2VlZDA0OTM0NTZhN2JhNzQyYTE4OWJmMjA5ZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJUaGVtZS5oCkBAIC00NTQsNiArNDU0LDggQEAgcHJvdGVjdGVkOgogICAgIHZp
cnR1YWwgQ29sb3JDYWNoZSYgY29sb3JDYWNoZShPcHRpb25TZXQ8U3R5bGVDb2xvcjo6T3B0aW9u
cz4pIGNvbnN0OwogCiBwcml2YXRlOgorICAgIENvbnRyb2xQYXJ0IGF1dG9BcHBlYXJhbmNlRm9y
RWxlbWVudChjb25zdCBFbGVtZW50KikgY29uc3Q7CisKICAgICB2b2lkIGFkanVzdFNlYXJjaEZp
ZWxkRGVjb3JhdGlvblN0eWxlKFJlbmRlclN0eWxlJiwgY29uc3QgRWxlbWVudCopIGNvbnN0Owog
CiAgICAgbXV0YWJsZSBIYXNoTWFwPHVpbnQ4X3QsIENvbG9yQ2FjaGUsIERlZmF1bHRIYXNoPHVp
bnQ4X3Q+LCBXVEY6OlVuc2lnbmVkV2l0aFplcm9LZXlIYXNoVHJhaXRzPHVpbnQ4X3Q+PiBtX2Nv
bG9yQ2FjaGVNYXA7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKaW5kZXggMDdkMmE1OTMxMmU4YjI1NjA3NGMxMDAxOGRiZjRiMWY2MDAw
Mjg1ZC4uMjc1MGVlYTM5OWM3ZTBiZWQ2MDIxYTUzNjJlMzI2ZTZjNDljM2JiYiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE1IEBACisyMDIxLTEwLTA4ICBBZGl0eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxl
LmNvbT4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3IgJy13ZWJraXQtYXBwZWFyYW5jZTogYXV0
bycKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMTIw
MworICAgICAgICByZGFyOi8vODM2OTYxMzMKKworICAgICAgICBSZXZpZXdlZCBieSBXZW5zb24g
SHNpZWguCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3NzLXVpL2FwcGVhcmFuY2UtY3Nzb20tMDAxLWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiBwbGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy11aS9hcHBlYXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQ6CisgICAgICAgICog
cGxhdGZvcm0vd3BlL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy11aS9h
cHBlYXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQ6CisKIDIwMjEtMTAtMDcgIEFkaXR5YSBL
ZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29tPgogCiAgICAgICAgIFtjc3MtdWldIFBhcnNpbmcg
c3VwcG9ydCBmb3IgYWNjZW50LWNvbG9yCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRl
eCA1ZjgyNGFiOWMzNTk0NDFhNTU3YWI0NDk1Y2QxN2VhOTUwZjA3MDI3Li42ODQ4ZjNkMjhkOTdh
YjRhZWJiNDA0NDE2MmYxNzZhOTE4ZTU3YjFkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMS0xMC0wOCAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRo
aUBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yICctd2Via2l0LWFwcGVhcmFu
Y2U6IGF1dG8nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMzEyMDMKKyAgICAgICAgcmRhcjovLzgzNjk2MTMzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
V2Vuc29uIEhzaWVoLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkv
YXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0OgorCisgICAgICAgIE1hcmsgcHJvZ3Jl
c3Npb24uCisKIDIwMjEtMTAtMDcgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29t
PgogCiAgICAgICAgIFtjc3MtdWldIFBhcnNpbmcgc3VwcG9ydCBmb3IgYWNjZW50LWNvbG9yCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXVpL2FwcGVhcmFuY2UtY3Nz
b20tMDAxLWV4cGVjdGVkLnR4dAppbmRleCBmNjQ1Nzk0Yzk0NjYxMDk4MmYxN2Y4MmRmODFlNDkz
ZjUyN2ZjM2U0Li44OGJkZDljMmI2MWI1NzBlMjBmMWYzNDkxNjgzM2U5ZmU0MTMwYzc3IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy11aS9hcHBlYXJhbmNlLWNz
c29tLTAwMS1leHBlY3RlZC50eHQKQEAgLTEsNyArMSw3IEBACiBUZXN0CiAKIFBBU1MgLXdlYmtp
dC1hcHBlYXJhbmNlOiBub25lCi1GQUlMIC13ZWJraXQtYXBwZWFyYW5jZTogYXV0byBhc3NlcnRf
ZXF1YWxzOiBzdHlsZS5XZWJraXRBcHBlYXJhbmNlICh1cHBlcmNhc2UgVykgZXhwZWN0ZWQgImF1
dG8iIGJ1dCBnb3QgIiIKK1BBU1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBhdXRvCiBQQVNTIC13ZWJr
aXQtYXBwZWFyYW5jZTogYnV0dG9uCiBQQVNTIC13ZWJraXQtYXBwZWFyYW5jZTogY2hlY2tib3gK
IFBBU1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBsaXN0Ym94CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9ndGsvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLXVp
L2FwcGVhcmFuY2UtY3Nzb20tMDAxLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5j
ZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0CmluZGV4IDZlMWJjZWM5NGM3NTIyNWI2MmVhMDI0YmIz
YWY0MGU2ZDY5OTMwNjMuLjQzMDQ5NmY1OGUxNWRjN2ZiZjA2YzllM2Y0MTZlNzg0Y2MzYTk0YmMg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0
CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0CkBAIC0x
LDcgKzEsNyBAQAogVGVzdAogCiBQQVNTIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZQotRkFJTCAt
d2Via2l0LWFwcGVhcmFuY2U6IGF1dG8gYXNzZXJ0X2VxdWFsczogc3R5bGUuV2Via2l0QXBwZWFy
YW5jZSAodXBwZXJjYXNlIFcpIGV4cGVjdGVkICJhdXRvIiBidXQgZ290ICIiCitQQVNTIC13ZWJr
aXQtYXBwZWFyYW5jZTogYXV0bwogUEFTUyAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbgogUEFT
UyAtd2Via2l0LWFwcGVhcmFuY2U6IGNoZWNrYm94CiBQQVNTIC13ZWJraXQtYXBwZWFyYW5jZTog
bGlzdGJveApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0
ZWQudHh0CmluZGV4IGY2NDU3OTRjOTQ2NjEwOTgyZjE3ZjgyZGY4MWU0OTNmNTI3ZmMzZTQuLjg4
YmRkOWMyYjYxYjU3MGUyMGYxZjM0OTE2ODMzZTlmZTQxMzBjNzcgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3BsYXRmb3JtL2lvcy13azIvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9j
c3MvY3NzLXVpL2FwcGVhcmFuY2UtY3Nzb20tMDAxLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3Nz
L2Nzcy11aS9hcHBlYXJhbmNlLWNzc29tLTAwMS1leHBlY3RlZC50eHQKQEAgLTEsNyArMSw3IEBA
CiBUZXN0CiAKIFBBU1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lCi1GQUlMIC13ZWJraXQtYXBw
ZWFyYW5jZTogYXV0byBhc3NlcnRfZXF1YWxzOiBzdHlsZS5XZWJraXRBcHBlYXJhbmNlICh1cHBl
cmNhc2UgVykgZXhwZWN0ZWQgImF1dG8iIGJ1dCBnb3QgIiIKK1BBU1MgLXdlYmtpdC1hcHBlYXJh
bmNlOiBhdXRvCiBQQVNTIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uCiBQQVNTIC13ZWJraXQt
YXBwZWFyYW5jZTogY2hlY2tib3gKIFBBU1MgLXdlYmtpdC1hcHBlYXJhbmNlOiBsaXN0Ym94CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93cGUvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3MvY3NzLXVpL2FwcGVhcmFuY2UtY3Nzb20tMDAxLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0wMDEtZXhwZWN0ZWQudHh0CmluZGV4IGRhYTYx
MzBkZGIyYTBiODAwOWJmMzA1NjMyODhiZmZhYjUzNGY4OWQuLjU1MDVjZjFlY2M2ODNiZjc0OWMw
MGViMDEzZTAwZDIzNmJmNDExY2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dw
ZS9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1j
c3NvbS0wMDEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dwZS9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtdWkvYXBwZWFyYW5jZS1jc3NvbS0w
MDEtZXhwZWN0ZWQudHh0CkBAIC0xLDcgKzEsNyBAQAogVGVzdAogCiBQQVNTIC13ZWJraXQtYXBw
ZWFyYW5jZTogbm9uZQotRkFJTCAtd2Via2l0LWFwcGVhcmFuY2U6IGF1dG8gYXNzZXJ0X2VxdWFs
czogc3R5bGUuV2Via2l0QXBwZWFyYW5jZSAodXBwZXJjYXNlIFcpIGV4cGVjdGVkICJhdXRvIiBi
dXQgZ290ICIiCitQQVNTIC13ZWJraXQtYXBwZWFyYW5jZTogYXV0bwogUEFTUyAtd2Via2l0LWFw
cGVhcmFuY2U6IGJ1dHRvbgogUEFTUyAtd2Via2l0LWFwcGVhcmFuY2U6IGNoZWNrYm94CiBQQVNT
IC13ZWJraXQtYXBwZWFyYW5jZTogbGlzdGJveAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>