<?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>233959</bug_id>
          
          <creation_ts>2021-12-07 16:43:32 -0800</creation_ts>
          <short_desc>Add DOMStructures</short_desc>
          <delta_ts>2024-03-23 18:32:15 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>DOM</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></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>233918</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>alecflett</cc>
    
    <cc>annulen</cc>
    
    <cc>ashvayka</cc>
    
    <cc>beidson</cc>
    
    <cc>benjamin</cc>
    
    <cc>calvaris</cc>
    
    <cc>cdumez</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jsbell</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sam</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1821283</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-12-07 16:43:32 -0800</bug_when>
    <thetext>We should have the same mechanism to DOMConstructors: DOMStructures array.
Now, we have significantly better / faster StructureID implementation. And WriteBarrierStructureID (sizeof(WriteBarrierStructureID) is 4!) is coming.
We should have std::array&lt;WriteBarrierStructureID, numberOfStructures&gt; instead of HashMap&lt;ClassInfo*, WriteBarrier&lt;Structure&gt;&gt;, which is faster. And maybe it is more compact (HashMap allocates roughly 4x memory usually, we do not need to have ClassInfo*, and we do not need to hold Structure*).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1824178</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-12-14 16:44:17 -0800</bug_when>
    <thetext>&lt;rdar://problem/86496457&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1845036</commentid>
    <comment_count>2</comment_count>
      <attachid>452945</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2022-02-23 00:31:36 -0800</bug_when>
    <thetext>Created attachment 452945
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1845045</commentid>
    <comment_count>3</comment_count>
      <attachid>452949</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2022-02-23 01:10:36 -0800</bug_when>
    <thetext>Created attachment 452949
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1845052</commentid>
    <comment_count>4</comment_count>
      <attachid>452951</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2022-02-23 01:37:55 -0800</bug_when>
    <thetext>Created attachment 452951
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1845053</commentid>
    <comment_count>5</comment_count>
      <attachid>452952</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2022-02-23 01:58:20 -0800</bug_when>
    <thetext>Created attachment 452952
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2023413</commentid>
    <comment_count>6</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2024-03-23 18:32:15 -0700</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/26381</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452945</attachid>
            <date>2022-02-23 00:31:36 -0800</date>
            <delta_ts>2022-02-23 01:10:46 -0800</delta_ts>
            <desc>WIP</desc>
            <filename>bug-233959-20220223003136.patch</filename>
            <type>text/plain</type>
            <size>135642</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMzQ2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzA3NDU1YzI1M2I5ZmM3
NjkwYzJmNWEwNGFmMDAxMzBjYzgzNzgzZi4uNzczMjFlNjc0ZmRhZTQwNmNlYmQxMmIzZmVjY2Mx
NTM5NDNlZDJmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyOSBAQAorMjAyMi0wMi0yMyAgWXVz
dWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBET01TdHJ1Y3R1
cmVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzM5
NTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENN
YWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0
OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogSGVhZGVycy5jbWFr
ZToKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
SlNET01HbG9iYWxPYmplY3Q6OkpTRE9NR2xvYmFsT2JqZWN0KToKKyAgICAgICAgKFdlYkNvcmU6
OkpTRE9NR2xvYmFsT2JqZWN0Ojp2aXNpdENoaWxkcmVuSW1wbCk6CisgICAgICAgICogYmluZGlu
Z3MvanMvSlNET01HbG9iYWxPYmplY3QuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUds
b2JhbE9iamVjdElubGluZXMuaDoKKyAgICAgICAgKFdlYkNvcmU6OmdldERPTVN0cnVjdHVyZSk6
CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01XcmFwcGVyQ2FjaGUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Z2V0Q2FjaGVkRE9NU3RydWN0dXJlKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OmNhY2hlRE9NU3RydWN0dXJlKTogRGVsZXRlZC4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9K
U0RPTVdyYXBwZXJDYWNoZS5oOgorICAgICAgICAoV2ViQ29yZTo6Z2V0RE9NU3RydWN0dXJlKTog
RGVsZXRlZC4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGVJdGVyYXRvci5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpT
LnBtOgorICAgICAgICAoR2VuZXJhdGVIZWFkZXIpOgorICAgICAgICAoR2VuZXJhdGVJdGVyYWJs
ZURlZmluaXRpb24pOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvcHJlcHJvY2Vzcy1pZGxz
LnBsOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RPTVdpbmRvdy5oOgor
ICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RlZGljYXRlZFdvcmtlckdsb2Jh
bFNjb3BlLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFN0
YXIuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNFeHBvc2VkVG9Xb3Jr
ZXJBbmRXaW5kb3cuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNQYWlu
dFdvcmtsZXRHbG9iYWxTY29wZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGUuaDoKKyAgICAgICAgKiBiaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZS5oOgorICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0aW9ucy5oOgorICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyLmg6
CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxUcmFjZXIuaDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNCdWls
dGluQ29uc3RydWN0b3IuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0Q29uZGl0aW9uYWxJbmNsdWRlcy5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlLmg6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdERPTUpJVC5oOgorICAgICAgICAqIGJpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OLmg6CisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZC5oOgorICAg
ICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJl
Y3RJbmhlcml0YW5jZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3REZWZhdWx0VG9KU09OSW5oZXJpdC5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsLmg6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1
dGUuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RG9tYWluU2Vj
dXJpdHkuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxl
ZEJ5U2V0dGluZy5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RF
bmFibGVkRm9yQ29udGV4dC5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RFdmVudENvbnN0cnVjdG9yLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEV2ZW50VGFyZ2V0Lmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEV4Y2VwdGlvbi5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZS5oOgorICAgICAgICAqIGJpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHbG9iYWxPYmplY3QuaDoKKyAgICAgICAgKiBiaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllci5oOgor
ICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb24uaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmg6CisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpqc1Rl
c3RJbnRlcmZhY2VQcm90b3R5cGVGdW5jdGlvbl9lbnRyaWVzQ2FsbGVyKToKKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlLmg6CisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlLmg6
CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEl0ZXJhYmxlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OmpzVGVzdEl0ZXJhYmxlUHJvdG90eXBlRnVuY3Rpb25fZW50cmll
c0NhbGxlcik6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEl0ZXJh
YmxlLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRp
bkNvbnN0cnVjdG9yLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dExlZ2FjeUZhY3RvcnlGdW5jdGlvbi5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdC5oOgorICAgICAgICAqIGJpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmg6CisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2UuaDoKKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0
aW9ucy5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFu
ZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uaDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVk
U2V0dGVyV2l0aElkZW50aWZpZXIuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyLmg6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uLmg6Cisg
ICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldpdGhJ
ZGVudGlmaWVyLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5h
bWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGguaDoKKyAgICAgICAgKiBiaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIuaDoKKyAgICAg
ICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRp
Zmllci5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNl
dHRlck5vSWRlbnRpZmllci5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmg6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIuaDoKKyAgICAg
ICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhl
ZEdldHRlci5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyLmg6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJ
bnMuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0
ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzLmg6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJv
cGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZXNwYWNlT2JqZWN0Lmg6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6anNU
ZXN0Tm9kZVByb3RvdHlwZUZ1bmN0aW9uX2VudHJpZXNDYWxsZXIpOgorICAgICAgICAqIGJpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmg6CisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE9iai5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbC5oOgorICAgICAgICAqIGJpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmg6CisgICAgICAgICog
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRo
U2VxdWVuY2UuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UGx1
Z2luSW50ZXJmYWNlLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dFByb21pc2VSZWplY3Rpb25FdmVudC5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RSZWFkT25seU1hcExpa2UuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlTZXRMaWtlLmg6CisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdC5oOgorICAgICAgICAqIGJp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZh
Y2UuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2V0TGlrZS5o
OgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlV2l0aE92
ZXJyaWRkZW5PcGVyYXRpb25zLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFN0cmluZ2lmaWVyLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uLmg6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24uaDoKKyAg
ICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRp
b25JbXBsZW1lbnRlZEFzLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZy5oOgorICAgICAgICAqIGJpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlLmg6
CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVh
ZFdyaXRlQXR0cmlidXRlLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdFRhZ2dlZFdyYXBwZXIuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0VHlwZWRlZnMuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNX
b3JrZXJHbG9iYWxTY29wZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1dvcmtsZXRHbG9iYWxTY29wZS5oOgorICAgICAgICAqIGJyaWRnZS9vYmpjL09iakNSdW50aW1l
T2JqZWN0Lmg6CisgICAgICAgICogYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5tbToKKyAgICAg
ICAgKEpTQzo6QmluZGluZ3M6Ok9iamNJbnN0YW5jZTo6Z2V0TWV0aG9kKToKKyAgICAgICAgKiBi
cmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUuaDoKKyAgICAgICAgKiBicmlkZ2UvcnVudGltZV9hcnJh
eS5oOgorICAgICAgICAqIGJyaWRnZS9ydW50aW1lX29iamVjdC5oOgorCiAyMDIyLTAyLTIyICBD
aHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgU2hhcmUgbW9yZSBjb2Rl
IGJldHdlZW4gZGlzcGF0Y2hTZXNzaW9uU3RvcmFnZUV2ZW50cygpIGFuZCBkaXNwYXRjaExvY2Fs
U3RvcmFnZUV2ZW50cygpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4
dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IDJiYjgyOWNkNTliOGMwNzVl
MDM2NjU1YzIzN2I4NTAxNDgxYzRiMmUuLjJlMzNiMTY3OWM1MDBiMmQ0YmU1MzIwNGVlNGE2OWNi
NmIwMWExZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBi
L1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0yMDg3LDYgKzIwODcsNyBAQCBzZXQo
U1VQUExFTUVOVEFMX0RFUEVOREVOQ1lfRklMRSAke1dlYkNvcmVfREVSSVZFRF9TT1VSQ0VTX0RJ
Un0vc3VwcGxlbWVudGFsX2RlcAogc2V0KElTT19TVUJTUEFDRVNfSEVBREVSX0ZJTEUgJHtXZWJD
b3JlX0RFUklWRURfU09VUkNFU19ESVJ9L0RPTUlzb1N1YnNwYWNlcy5oKQogc2V0KENMSUVOVF9J
U09fU1VCU1BBQ0VTX0hFQURFUl9GSUxFICR7V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElSfS9E
T01DbGllbnRJc29TdWJzcGFjZXMuaCkKIHNldChDT05TVFJVQ1RPUlNfSEVBREVSX0ZJTEUgJHtX
ZWJDb3JlX0RFUklWRURfU09VUkNFU19ESVJ9L0RPTUNvbnN0cnVjdG9ycy5oKQorc2V0KFNUUlVD
VFVSRVNfSEVBREVSX0ZJTEUgJHtXZWJDb3JlX0RFUklWRURfU09VUkNFU19ESVJ9L0RPTVN0cnVj
dHVyZXMuaCkKIHNldChXSU5ET1dfQ09OU1RSVUNUT1JTX0ZJTEUgJHtXZWJDb3JlX0RFUklWRURf
U09VUkNFU19ESVJ9L0RPTVdpbmRvd0NvbnN0cnVjdG9ycy5pZGwpCiBzZXQoV09SS0VSR0xPQkFM
U0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUgJHtXZWJDb3JlX0RFUklWRURfU09VUkNFU19ESVJ9L1dv
cmtlckdsb2JhbFNjb3BlQ29uc3RydWN0b3JzLmlkbCkKIHNldChTSEFET1dSRUFMTUdMT0JBTFND
T1BFX0NPTlNUUlVDVE9SU19GSUxFICR7V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElSfS9TaGFk
b3dSZWFsbUdsb2JhbFNjb3BlQ29uc3RydWN0b3JzLmlkbCkKQEAgLTIyNzQsMTEgKzIyNzUsMTIg
QEAgR0VORVJBVEVfQklORElOR1MoV2ViQ29yZUJpbmRpbmdzCiAgICAgR0VORVJBVE9SIEpTCiAg
ICAgU1VQUExFTUVOVEFMX0RFUEZJTEUgJHtTVVBQTEVNRU5UQUxfREVQRU5ERU5DWV9GSUxFfQog
ICAgIFBQX0VYVFJBX09VVFBVVAotICAgICR7SVNPX1NVQlNQQUNFU19IRUFERVJfRklMRX0gJHtD
TElFTlRfSVNPX1NVQlNQQUNFU19IRUFERVJfRklMRX0gJHtDT05TVFJVQ1RPUlNfSEVBREVSX0ZJ
TEV9ICR7V0lORE9XX0NPTlNUUlVDVE9SU19GSUxFfSAke1dPUktFUkdMT0JBTFNDT1BFX0NPTlNU
UlVDVE9SU19GSUxFfSAke1NIQURPV1JFQUxNR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEV9
ICR7REVESUNBVEVEV09SS0VSR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEV9CisgICAgJHtJ
U09fU1VCU1BBQ0VTX0hFQURFUl9GSUxFfSAke0NMSUVOVF9JU09fU1VCU1BBQ0VTX0hFQURFUl9G
SUxFfSAke0NPTlNUUlVDVE9SU19IRUFERVJfRklMRX0gJHtTVFJVQ1RVUkVTX0hFQURFUl9GSUxF
fSAke1dJTkRPV19DT05TVFJVQ1RPUlNfRklMRX0gJHtXT1JLRVJHTE9CQUxTQ09QRV9DT05TVFJV
Q1RPUlNfRklMRX0gJHtTSEFET1dSRUFMTUdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFfSAk
e0RFRElDQVRFRFdPUktFUkdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFfQogICAgIFBQX0VY
VFJBX0FSR1MKICAgICAgICAgLS1pc29TdWJzcGFjZXNIZWFkZXJGaWxlICR7SVNPX1NVQlNQQUNF
U19IRUFERVJfRklMRX0KICAgICAgICAgLS1jbGllbnRJU09TdWJzcGFjZXNIZWFkZXJGaWxlICR7
Q0xJRU5UX0lTT19TVUJTUEFDRVNfSEVBREVSX0ZJTEV9CiAgICAgICAgIC0tY29uc3RydWN0b3Jz
SGVhZGVyRmlsZSAke0NPTlNUUlVDVE9SU19IRUFERVJfRklMRX0KKyAgICAgICAgLS1zdHJ1Y3R1
cmVzSGVhZGVyRmlsZSAke1NUUlVDVFVSRVNfSEVBREVSX0ZJTEV9CiAgICAgICAgIC0td2luZG93
Q29uc3RydWN0b3JzRmlsZSAke1dJTkRPV19DT05TVFJVQ1RPUlNfRklMRX0KICAgICAgICAgLS13
b3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJHtXT1JLRVJHTE9CQUxTQ09QRV9DT05T
VFJVQ1RPUlNfRklMRX0KICAgICAgICAgLS1zaGFkb3dSZWFsbUdsb2JhbFNjb3BlQ29uc3RydWN0
b3JzRmlsZSAke1NIQURPV1JFQUxNR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEV9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdCBi
L1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0CmluZGV4IDZj
MjA1ZTcxZGE0Zjk3MTk1YzM3YWJkYTJlOWJkNWFjMWMzMmRjMDEuLjVlODlmNTFhMzQ5OTJlYjdi
NTk4ZTJmM2EzZGNjOGRhYjkwZGIwYjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2
ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRT
b3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0CkBAIC0xMyw2ICsxMyw3IEBAICQoQlVJTFRfUFJPRFVD
VFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0RPTUNsaWVudElzb1N1YnNwYWNlcy5oCiAk
KEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9ET01Db25zdHJ1Y3Rv
cnMuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvRE9NSXNv
U3Vic3BhY2VzLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0RPTUpJVEFic3RyYWN0SGVhcFJlcG9zaXRvcnkuaAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvRE9NU3RydWN0dXJlcy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJ
UikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9ET01XaW5kb3dDb25zdHJ1Y3RvcnMuaWRsCiAkKEJV
SUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9EZWRpY2F0ZWRXb3JrZXJH
bG9iYWxTY29wZUNvbnN0cnVjdG9ycy5pZGwKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVk
U291cmNlcy9XZWJDb3JlL0V2ZW50RmFjdG9yeS5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5t
YWtlCmluZGV4IDI2ODAzMjcwZDY3YTc3NDU1OWVjZjIzZDc1YjZiYjA1YjA2OTM4ODUuLjE4Zjdi
MzYzODBiYzMzNWNmZmEwMjk3MjY1NjNhYzBiNDcxMTkyMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMubWFrZQpAQCAtMjA4MCw2ICsyMDgwLDcgQEAgU1VQUExFTUVOVEFMX01BS0VGSUxFX0RF
UFMgPSBTdXBwbGVtZW50YWxEZXBlbmRlbmNpZXMuZGVwCiBJU09fU1VCU1BBQ0VTX0hFQURFUl9G
SUxFID0gRE9NSXNvU3Vic3BhY2VzLmgKIENMSUVOVF9JU09fU1VCU1BBQ0VTX0hFQURFUl9GSUxF
ID0gRE9NQ2xpZW50SXNvU3Vic3BhY2VzLmgKIENPTlNUUlVDVE9SU19IRUFERVJfRklMRSA9IERP
TUNvbnN0cnVjdG9ycy5oCitTVFJVQ1RVUkVTX0hFQURFUl9GSUxFID0gRE9NU3RydWN0dXJlcy5o
CiBXSU5ET1dfQ09OU1RSVUNUT1JTX0ZJTEUgPSBET01XaW5kb3dDb25zdHJ1Y3RvcnMuaWRsCiBX
T1JLRVJHTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRSA9IFdvcmtlckdsb2JhbFNjb3BlQ29u
c3RydWN0b3JzLmlkbAogU0hBRE9XUkVBTE1HTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRSA9
IFNoYWRvd1JlYWxtR2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnMuaWRsCkBAIC0yMDk3LDYgKzIwOTgs
NyBAQCBJRExfSU5URVJNRURJQVRFX0ZJTEVTID0gXAogICAgICQoSVNPX1NVQlNQQUNFU19IRUFE
RVJfRklMRSkgXAogICAgICQoQ0xJRU5UX0lTT19TVUJTUEFDRVNfSEVBREVSX0ZJTEUpIFwKICAg
ICAkKENPTlNUUlVDVE9SU19IRUFERVJfRklMRSkgXAorICAgICQoU1RSVUNUVVJFU19IRUFERVJf
RklMRSkgXAogICAgICQoV0lORE9XX0NPTlNUUlVDVE9SU19GSUxFKSBcCiAgICAgJChXT1JLRVJH
TE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRSkgXAogICAgICQoU0hBRE9XUkVBTE1HTE9CQUxT
Q09QRV9DT05TVFJVQ1RPUlNfRklMRSkgXApAQCAtMjExMCw3ICsyMTEyLDcgQEAgSURMX0lOVEVS
TUVESUFURV9QQVRURVJOUyA9ICQoc3Vic3QgLiwlLCQoSURMX0lOVEVSTUVESUFURV9GSUxFUykp
CiAKICQoSURMX0lOVEVSTUVESUFURV9QQVRURVJOUykgOiAkKFBSRVBST0NFU1NfSURMU19TQ1JJ
UFRTKSAkKElETF9BVFRSSUJVVEVTX0ZJTEUpICQoSlNfQklORElOR19JRExTKSAkKEZFQVRVUkVf
QU5EX1BMQVRGT1JNX0RFRklORV9ERVBFTkRFTkNJRVMpCiAJJChzaGVsbCBlY2hvICQoSlNfQklO
RElOR19JRExTKSB8IHRyICIgIiAiXG4iID4gSURMRmlsZU5hbWVzTGlzdC50eHQpCi0JJChQRVJM
KSAkKFdlYkNvcmUpL2JpbmRpbmdzL3NjcmlwdHMvcHJlcHJvY2Vzcy1pZGxzLnBsIC0tZGVmaW5l
cyAiJChGRUFUVVJFX0FORF9QTEFURk9STV9ERUZJTkVTKSBMQU5HVUFHRV9KQVZBU0NSSVBUIiAt
LWlkbEZpbGVOYW1lc0xpc3QgSURMRmlsZU5hbWVzTGlzdC50eHQgLS1pZGxBdHRyaWJ1dGVzRmls
ZSAkKElETF9BVFRSSUJVVEVTX0ZJTEUpIC0tc3VwcGxlbWVudGFsRGVwZW5kZW5jeUZpbGUgJChT
VVBQTEVNRU5UQUxfREVQRU5ERU5DWV9GSUxFKSAtLWlzb1N1YnNwYWNlc0hlYWRlckZpbGUgJChJ
U09fU1VCU1BBQ0VTX0hFQURFUl9GSUxFKSAtLWNsaWVudElTT1N1YnNwYWNlc0hlYWRlckZpbGUg
JChDTElFTlRfSVNPX1NVQlNQQUNFU19IRUFERVJfRklMRSkgLS1jb25zdHJ1Y3RvcnNIZWFkZXJG
aWxlICQoQ09OU1RSVUNUT1JTX0hFQURFUl9GSUxFKSAtLXdpbmRvd0NvbnN0cnVjdG9yc0ZpbGUg
JChXSU5ET1dfQ09OU1RSVUNUT1JTX0ZJTEUpIC0td29ya2VyR2xvYmFsU2NvcGVDb25zdHJ1Y3Rv
cnNGaWxlICQoV09SS0VSR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUpIC0tc2hhZG93UmVh
bG1HbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJChTSEFET1dSRUFMTUdMT0JBTFNDT1BFX0NP
TlNUUlVDVE9SU19GSUxFKSAtLWRlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlQ29uc3RydWN0b3Jz
RmlsZSAkKERFRElDQVRFRFdPUktFUkdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFKSAtLXNl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJChTRVJWSUNFV09SS0VSR0xP
QkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUpIC0tc2hhcmVkV29ya2VyR2xvYmFsU2NvcGVDb25z
dHJ1Y3RvcnNGaWxlICQoU0hBUkVEV09SS0VSR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUp
IC0td29ya2xldEdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmlsZSAkKFdPUktMRVRHTE9CQUxTQ09Q
RV9DT05TVFJVQ1RPUlNfRklMRSkgLS1wYWludFdvcmtsZXRHbG9iYWxTY29wZUNvbnN0cnVjdG9y
c0ZpbGUgJChQQUlOVFdPUktMRVRHTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRSkgLS1hdWRp
b1dvcmtsZXRHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJChBVURJT1dPUktMRVRHTE9CQUxT
Q09QRV9DT05TVFJVQ1RPUlNfRklMRSkgLS1zdXBwbGVtZW50YWxNYWtlZmlsZURlcHMgJChTVVBQ
TEVNRU5UQUxfTUFLRUZJTEVfREVQUykKKwkkKFBFUkwpICQoV2ViQ29yZSkvYmluZGluZ3Mvc2Ny
aXB0cy9wcmVwcm9jZXNzLWlkbHMucGwgLS1kZWZpbmVzICIkKEZFQVRVUkVfQU5EX1BMQVRGT1JN
X0RFRklORVMpIExBTkdVQUdFX0pBVkFTQ1JJUFQiIC0taWRsRmlsZU5hbWVzTGlzdCBJRExGaWxl
TmFtZXNMaXN0LnR4dCAtLWlkbEF0dHJpYnV0ZXNGaWxlICQoSURMX0FUVFJJQlVURVNfRklMRSkg
LS1zdXBwbGVtZW50YWxEZXBlbmRlbmN5RmlsZSAkKFNVUFBMRU1FTlRBTF9ERVBFTkRFTkNZX0ZJ
TEUpIC0taXNvU3Vic3BhY2VzSGVhZGVyRmlsZSAkKElTT19TVUJTUEFDRVNfSEVBREVSX0ZJTEUp
IC0tY2xpZW50SVNPU3Vic3BhY2VzSGVhZGVyRmlsZSAkKENMSUVOVF9JU09fU1VCU1BBQ0VTX0hF
QURFUl9GSUxFKSAtLWNvbnN0cnVjdG9yc0hlYWRlckZpbGUgJChDT05TVFJVQ1RPUlNfSEVBREVS
X0ZJTEUpIC0tc3RydWN0dXJlc0hlYWRlckZpbGUgJChTVFJVQ1RVUkVTX0hFQURFUl9GSUxFKSAt
LXdpbmRvd0NvbnN0cnVjdG9yc0ZpbGUgJChXSU5ET1dfQ09OU1RSVUNUT1JTX0ZJTEUpIC0td29y
a2VyR2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnNGaWxlICQoV09SS0VSR0xPQkFMU0NPUEVfQ09OU1RS
VUNUT1JTX0ZJTEUpIC0tc2hhZG93UmVhbG1HbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJChT
SEFET1dSRUFMTUdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFKSAtLWRlZGljYXRlZFdvcmtl
ckdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmlsZSAkKERFRElDQVRFRFdPUktFUkdMT0JBTFNDT1BF
X0NPTlNUUlVDVE9SU19GSUxFKSAtLXNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9y
c0ZpbGUgJChTRVJWSUNFV09SS0VSR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUpIC0tc2hh
cmVkV29ya2VyR2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnNGaWxlICQoU0hBUkVEV09SS0VSR0xPQkFM
U0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUpIC0td29ya2xldEdsb2JhbFNjb3BlQ29uc3RydWN0b3Jz
RmlsZSAkKFdPUktMRVRHTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRSkgLS1wYWludFdvcmts
ZXRHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJChQQUlOVFdPUktMRVRHTE9CQUxTQ09QRV9D
T05TVFJVQ1RPUlNfRklMRSkgLS1hdWRpb1dvcmtsZXRHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0Zp
bGUgJChBVURJT1dPUktMRVRHTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRSkgLS1zdXBwbGVt
ZW50YWxNYWtlZmlsZURlcHMgJChTVVBQTEVNRU5UQUxfTUFLRUZJTEVfREVQUykKIAogIwogIyBF
bWl0IHRoZSBydWxlcyB0byBnZW5lcmF0ZSBiaW5kaW5ncyBmcm9tIElETCBmaWxlcy4gTm90ZSB0
aGF0IHRoZXJlIGFyZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBi
L1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXggZjFjZWRiOWM3NWJjZjk3NzdjMGZj
ODlmNTY4OTdlMjNjOGEyN2JkMC4uYjAyMmMyZTcwOTVmNWJlNjk5MDlhZGJkYTkzYWQ3NmY3MWQy
NjNmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlCkBAIC0yMDQxLDYgKzIwNDEsOCBAQCBzZXQoV2ViQ29y
ZV9QUklWQVRFX0ZSQU1FV09SS19IRUFERVJTCiAKICAgICAke1dlYkNvcmVfREVSSVZFRF9TT1VS
Q0VTX0RJUn0vQ1NTUHJvcGVydHlOYW1lcy5oCiAgICAgJHtXZWJDb3JlX0RFUklWRURfU09VUkNF
U19ESVJ9L0NTU1ZhbHVlS2V5d29yZHMuaAorICAgICR7V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNf
RElSfS9ET01Db25zdHJ1Y3RvcnMuaAorICAgICR7V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElS
fS9ET01TdHJ1Y3R1cmVzLmgKICAgICAke1dlYkNvcmVfREVSSVZFRF9TT1VSQ0VTX0RJUn0vRXZl
bnRJbnRlcmZhY2VzLmgKICAgICAke1dlYkNvcmVfREVSSVZFRF9TT1VSQ0VTX0RJUn0vRXZlbnRU
YXJnZXRJbnRlcmZhY2VzLmgKICAgICAke1dlYkNvcmVfREVSSVZFRF9TT1VSQ0VTX0RJUn0vSFRN
TEVsZW1lbnRUeXBlSGVscGVycy5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggYmMzNmZjZmEwMTEwZDFlODEyYTQ1NjE0ZGMxZGU2
ZDUzMTE0Y2MzMi4uNTJhYTE0NGViY2Y2MjcwOTU5OTgwYzI0Y2EyZDBlODM0ODhjODJjYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpA
QCAtNTI4MCw3ICs1MjgwLDcgQEAKIAkJRTMxNTBFQTcxREE3MjE5MzAwMTk0MDEyIC8qIERPTUpJ
VEhlbHBlcnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEUzMTUwRUE1MURBNzIxOEQwMDE5NDAxMiAvKiBET01KSVRIZWxwZXJzLmggKi87IH07CiAJCUUz
MjAxQzFBMUY4RTgyMTMwMDc2QTAzMiAvKiBNb2R1bGVGZXRjaFBhcmFtZXRlcnMuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzOEQwNjA5MUY4RTgxMTkw
MDY0OUNGMiAvKiBNb2R1bGVGZXRjaFBhcmFtZXRlcnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlFMzIzQ0ZGQTFFNUFGNkFGMDBGMEI0QTAgLyog
SlNET01Db252ZXJ0UHJvbWlzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTMyM0NGRjkxRTVBRjZBNTAwRjBCNEEwIC8qIEpTRE9NQ29udmVydFByb21p
c2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwotCQlF
MzNEMENCRTI2NzJFMUI2MDA3NEUxODMgLyogSlNET01HbG9iYWxPYmplY3RJbmxpbmVzLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzNEMENCQzI2NzJF
MUIzMDA3NEUxODMgLyogSlNET01HbG9iYWxPYmplY3RJbmxpbmVzLmggKi87IH07CisJCUUzM0Qw
Q0JFMjY3MkUxQjYwMDc0RTE4MyAvKiBKU0RPTUdsb2JhbE9iamVjdElubGluZXMuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzM0QwQ0JDMjY3MkUxQjMw
MDc0RTE4MyAvKiBKU0RPTUdsb2JhbE9iamVjdElubGluZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlFMzQzMkRFNDI1RDM3N0UzMDA1OEU2MTIg
LyogV29ya2VyTW9kdWxlU2NyaXB0TG9hZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFMzQzMkRFMDI1RDM3N0UyMDA1OEU2MTIgLyogV29ya2VyTW9k
dWxlU2NyaXB0TG9hZGVyLmggKi87IH07CiAJCUUzNDdFNUZBMjVENEYwMDAwMEYxN0E1QyAvKiBX
b3JrZXJTY3JpcHRGZXRjaGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBFMzQ3RTVGODI1RDRGMDAwMDBGMTdBNUMgLyogV29ya2VyU2NyaXB0RmV0Y2hl
ci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUz
NTE4OEI0MjVEMzg3Q0YwMEE3N0FGMyAvKiBNb2R1bGVTY3JpcHRMb2FkZXJDbGllbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzNTE4OEIzMjVEMzg3
Q0YwMEE3N0FGMyAvKiBNb2R1bGVTY3JpcHRMb2FkZXJDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtNTMwOCw2ICs1MzA4LDggQEAKIAkJ
RTNDOTlBMDkxREMzRDQxQzAwNzk0QUQzIC8qIERPTUpJVENoZWNrRE9NLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0M5OUEwODFEQzNENDE3MDA3OTRB
RDMgLyogRE9NSklUQ2hlY2tET00uaCAqLzsgfTsKIAkJRTNDOUFFQ0IyMTEzMTQ5OTAwNDE5Qjky
IC8qIEpTTWljcm90YXNrQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEUzQzlBRUM5MjExMzE0NzQwMDQxOUI5MiAvKiBKU01pY3JvdGFza0Nh
bGxiYWNrLmggKi87IH07CiAJCUUzQ0EwQkZDMjY3M0Y0N0MwMDlGREQ2NyAvKiBKU0RPTUJpbmRp
bmdTZWN1cml0eUlubGluZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEUzQ0EwQkZBMjY3M0Y0NzgwMDlGREQ2NyAvKiBKU0RPTUJpbmRpbmdTZWN1cml0
eUlubGluZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OworCQlFM0RFRjQ0QjI3QzYyMEYxMDA3NThBQjggLyogRE9NQ29uc3RydWN0b3JzLmggaW4gQ29w
eSBHZW5lcmF0ZWQgSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBF
M0ZFMkVDNzI3QzYxRjhFMDA5NTExNUMgLyogRE9NQ29uc3RydWN0b3JzLmggKi87IH07CisJCUUz
REVGNDRDMjdDNjIwRjkwMDc1OEFCOCAvKiBET01TdHJ1Y3R1cmVzLmggaW4gQ29weSBHZW5lcmF0
ZWQgSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0ZFMkVDODI3
QzYxRjhFMDA5NTExNUMgLyogRE9NU3RydWN0dXJlcy5oICovOyB9OwogCQlFM0U0RTJBODFFM0Ix
NzEwMDAyM0JCOEEgLyogU2NyaXB0RWxlbWVudENhY2hlZFNjcmlwdEZldGNoZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzRTRFMkE2MUUzQjE2RkMw
MDIzQkI4QSAvKiBTY3JpcHRFbGVtZW50Q2FjaGVkU2NyaXB0RmV0Y2hlci5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUzRkEzODY0MUQ3MTgxMkQw
MEFBNTk1MCAvKiBQZW5kaW5nU2NyaXB0Q2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0ZBMzg2MTFENzE2RTc2MDBBQTU5NTAgLyogUGVuZGlu
Z1NjcmlwdENsaWVudC5oICovOyB9OwogCQlFNDAxQzI3NTE3Q0U1M0VDMDBDNDFBMzUgLyogRWxl
bWVudEl0ZXJhdG9yQXNzZXJ0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gRTQwMUMyNzQxN0NFNTNFQzAwQzQxQTM1IC8qIEVsZW1lbnRJdGVyYXRv
ckFzc2VydGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwpAQCAtNTg0Myw2ICs1ODQ1LDggQEAKIAkJCWZpbGVzID0gKAogCQkJCTVERjdGNUMyMEYw
MUY5MkEwMDUyNkI0QiAvKiBDU1NQcm9wZXJ0eU5hbWVzLmggaW4gQ29weSBHZW5lcmF0ZWQgSGVh
ZGVycyAqLywKIAkJCQk3RDc0MUJEQTE3NzIyNkFBMDA4NTkxNzAgLyogQ1NTVmFsdWVLZXl3b3Jk
cy5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8sCisJCQkJRTNERUY0NEIyN0M2MjBGMTAw
NzU4QUI4IC8qIERPTUNvbnN0cnVjdG9ycy5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8s
CisJCQkJRTNERUY0NEMyN0M2MjBGOTAwNzU4QUI4IC8qIERPTVN0cnVjdHVyZXMuaCBpbiBDb3B5
IEdlbmVyYXRlZCBIZWFkZXJzICovLAogCQkJCUE4RDA2QjM5MEEyNjVEQ0QwMDVFNzIwMyAvKiBI
VE1MTmFtZXMuaCBpbiBDb3B5IEdlbmVyYXRlZCBIZWFkZXJzICovLAogCQkJCTE0MDNCQTBGMDlF
QjE4RjkwMDc5N0M3RiAvKiBKU0RPTVdpbmRvdy5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMg
Ki8sCiAJCQkJMTREQzBEMzgwOUZFRDA3MzAwN0IwMjM1IC8qIEpTTm9kZS5oIGluIENvcHkgR2Vu
ZXJhdGVkIEhlYWRlcnMgKi8sCkBAIC0xNzM5Nyw2ICsxNzQwMSw4IEBACiAJCUUzRTRFMkE1MUUz
QjE2RkMwMDIzQkI4QSAvKiBTY3JpcHRFbGVtZW50Q2FjaGVkU2NyaXB0RmV0Y2hlci5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JpcHRFbGVtZW50Q2FjaGVkU2Ny
aXB0RmV0Y2hlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzRTRFMkE2MUUz
QjE2RkMwMDIzQkI4QSAvKiBTY3JpcHRFbGVtZW50Q2FjaGVkU2NyaXB0RmV0Y2hlci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JpcHRFbGVtZW50Q2FjaGVkU2NyaXB0RmV0
Y2hlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFM0ZBMzg2MTFENzE2RTc2MDBB
QTU5NTAgLyogUGVuZGluZ1NjcmlwdENsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBQZW5kaW5nU2NyaXB0Q2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUUzRkUyRUM3MjdDNjFGOEUwMDk1MTE1QyAvKiBET01Db25zdHJ1Y3RvcnMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRE9NQ29uc3RydWN0b3JzLmg7IHBhdGggPSBEZXJp
dmVkU291cmNlcy9XZWJDb3JlL0RPTUNvbnN0cnVjdG9ycy5oOyBzb3VyY2VUcmVlID0gQlVJTFRf
UFJPRFVDVFNfRElSOyB9OworCQlFM0ZFMkVDODI3QzYxRjhFMDA5NTExNUMgLyogRE9NU3RydWN0
dXJlcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBET01TdHJ1Y3R1cmVzLmg7
IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL0RPTVN0cnVjdHVyZXMuaDsgc291cmNlVHJl
ZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKIAkJRTQwMUMyNzQxN0NFNTNFQzAwQzQxQTM1IC8q
IEVsZW1lbnRJdGVyYXRvckFzc2VydGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gRWxlbWVudEl0ZXJhdG9yQXNzZXJ0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlFNDAxRTBBMzFDM0MwQjgzMDBGMzREMTAgLyogU3R5bGVDaGFuZ2UuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3R5bGVDaGFuZ2UuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJRTQwMUUwQTUxQzNDMENGNzAwRjM0RDEwIC8qIFN0eWxlQ2hhbmdlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN0eWxlQ2hhbmdlLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE5NTMwLDYgKzE5NTM2LDggQEAKIAkJCQlC
Qzk4NTQ0MzBDRDNEOUQwMDAwNjlCQzEgLyogV2luZG93ICovLAogCQkJCUE4M0I3OTIyMENDQjAw
RjAwMDBCMDgyNSAvKiBYTUwgKi8sCiAJCQkJQTgzQjc5MEMwQ0NBRkY4MzAwMEIwODI1IC8qIFhQ
YXRoICovLAorCQkJCUUzRkUyRUM3MjdDNjFGOEUwMDk1MTE1QyAvKiBET01Db25zdHJ1Y3RvcnMu
aCAqLywKKwkJCQlFM0ZFMkVDODI3QzYxRjhFMDA5NTExNUMgLyogRE9NU3RydWN0dXJlcy5oICov
LAogCQkJCUJDMzQ4QkQxMERCN0Y4MDQwMDRBQkFCQiAvKiBXZWJDb3JlSlNCdWlsdGluSW50ZXJu
YWxzLmNwcCAqLywKIAkJCQlCQzM0OEJEMjBEQjdGODA0MDA0QUJBQkIgLyogV2ViQ29yZUpTQnVp
bHRpbkludGVybmFscy5oICovLAogCQkJCUJDMzQ4QkQxMERCN0Y4MDQwMDRBQkFCQSAvKiBXZWJD
b3JlSlNCdWlsdGlucy5jcHAgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0RPTUdsb2JhbE9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0RPTUdsb2JhbE9iamVjdC5jcHAKaW5kZXggYjI2MjZmZWI0YTA1MzczOGVhN2RlZDE4Mjc3ODY1
YzRmODEzNGI1OC4uM2EwNjA1NWVmYWNmOTY5NmM5ZDEwMDkyNjJhZTNlMTNkZTg5OTBmOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNwcApA
QCAtMjgsNiArMjgsNyBAQAogI2luY2x1ZGUgIkpTRE9NR2xvYmFsT2JqZWN0LmgiCiAKICNpbmNs
dWRlICJET01Db25zdHJ1Y3RvcnMuaCIKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5j
bHVkZSAiRE9NV2luZG93LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJGZXRj
aFJlc3BvbnNlLmgiCkBAIC04Nyw2ICs4OCw3IEBAIGNvbnN0IENsYXNzSW5mbyBKU0RPTUdsb2Jh
bE9iamVjdDo6c19pbmZvID0geyAiRE9NR2xvYmFsT2JqZWN0IiwgJkpTR2xvYmFsT2JqZWN0CiBK
U0RPTUdsb2JhbE9iamVjdDo6SlNET01HbG9iYWxPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSwgUmVmPERPTVdyYXBwZXJXb3JsZD4mJiB3b3JsZCwgY29uc3QgR2xvYmFsT2JqZWN0
TWV0aG9kVGFibGUqIGdsb2JhbE9iamVjdE1ldGhvZFRhYmxlKQogICAgIDogSlNHbG9iYWxPYmpl
Y3Qodm0sIHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUpCiAgICAgLCBtX2NvbnN0
cnVjdG9ycyhtYWtlVW5pcXVlPERPTUNvbnN0cnVjdG9ycz4oKSkKKyAgICAsIG1fc3RydWN0dXJl
cyhtYWtlVW5pcXVlPERPTVN0cnVjdHVyZXM+KCkpCiAgICAgLCBtX3dvcmxkKFdURk1vdmUod29y
bGQpKQogICAgICwgbV93b3JsZElzTm9ybWFsKG1fd29ybGQtPmlzTm9ybWFsKCkpCiAgICAgLCBt
X2J1aWx0aW5JbnRlcm5hbEZ1bmN0aW9ucyh2bSkKQEAgLTI5MywxMCArMjk1LDYgQEAgdm9pZCBK
U0RPTUdsb2JhbE9iamVjdDo6dmlzaXRDaGlsZHJlbkltcGwoSlNDZWxsKiBjZWxsLCBWaXNpdG9y
JiB2aXNpdG9yKQogICAgIHsKICAgICAgICAgLy8gVGhlIEdDIHRocmVhZCBoYXMgdG8gZ3JhYiB0
aGUgR0MgbG9jayBldmVuIHRob3VnaCBpdCBpcyBub3QgbXV0YXRpbmcgdGhlIGNvbnRhaW5lcnMu
CiAgICAgICAgIExvY2tlciBsb2NrZXIgeyB0aGlzT2JqZWN0LT5tX2djTG9jayB9OwotCi0gICAg
ICAgIGZvciAoYXV0byYgc3RydWN0dXJlIDogdGhpc09iamVjdC0+bV9zdHJ1Y3R1cmVzLnZhbHVl
cygpKQotICAgICAgICAgICAgdmlzaXRvci5hcHBlbmQoc3RydWN0dXJlKTsKLQogICAgICAgICBm
b3IgKGF1dG8mIGd1YXJkZWQgOiB0aGlzT2JqZWN0LT5tX2d1YXJkZWRPYmplY3RzKQogICAgICAg
ICAgICAgZ3VhcmRlZC0+dmlzaXRBZ2dyZWdhdGUodmlzaXRvcik7CiAgICAgfQpAQCAtMzA0LDYg
KzMwMiw5IEBAIHZvaWQgSlNET01HbG9iYWxPYmplY3Q6OnZpc2l0Q2hpbGRyZW5JbXBsKEpTQ2Vs
bCogY2VsbCwgVmlzaXRvciYgdmlzaXRvcikKICAgICBmb3IgKGF1dG8mIGNvbnN0cnVjdG9yIDog
dGhpc09iamVjdC0+Y29uc3RydWN0b3JzKCkuYXJyYXkoKSkKICAgICAgICAgdmlzaXRvci5hcHBl
bmQoY29uc3RydWN0b3IpOwogCisgICAgZm9yIChhdXRvJiBzdHJ1Y3R1cmUgOiB0aGlzT2JqZWN0
LT5zdHJ1Y3R1cmVzKCkuYXJyYXkoKSkKKyAgICAgICAgdmlzaXRvci5hcHBlbmQoc3RydWN0dXJl
KTsKKwogICAgIHRoaXNPYmplY3QtPm1fYnVpbHRpbkludGVybmFsRnVuY3Rpb25zLnZpc2l0KHZp
c2l0b3IpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RP
TUdsb2JhbE9iamVjdC5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxP
YmplY3QuaAppbmRleCAwYTU4ZTdlOWQ2NzFiZWRmNzY2ZmYyYjgzNjc1MDQxMjRjYjFkMWNiLi45
MmFiZjk2MGQ0NzlhYTM5ZDYzZDllZDE2NjdhZTUyNGMwZmI5NWM3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmgKQEAgLTM1LDEyICszNSwxMiBA
QAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBET01Db25zdHJ1Y3RvcnM7CitjbGFzcyBE
T01TdHJ1Y3R1cmVzOwogY2xhc3MgRE9NR3VhcmRlZE9iamVjdDsKIGNsYXNzIEV2ZW50OwogY2xh
c3MgRE9NV3JhcHBlcldvcmxkOwogY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKIAotdXNp
bmcgSlNET01TdHJ1Y3R1cmVNYXAgPSBIYXNoTWFwPGNvbnN0IEpTQzo6Q2xhc3NJbmZvKiwgSlND
OjpXcml0ZUJhcnJpZXI8SlNDOjpTdHJ1Y3R1cmU+PjsKIHVzaW5nIERPTUd1YXJkZWRPYmplY3RT
ZXQgPSBIYXNoU2V0PERPTUd1YXJkZWRPYmplY3QqPjsKIAogY2xhc3MgV0VCQ09SRV9FWFBPUlQg
SlNET01HbG9iYWxPYmplY3QgOiBwdWJsaWMgSlNDOjpKU0dsb2JhbE9iamVjdCB7CkBAIC01OSwx
NyArNTksMTYgQEAgY2xhc3MgV0VCQ09SRV9FWFBPUlQgSlNET01HbG9iYWxPYmplY3QgOiBwdWJs
aWMgSlNDOjpKU0dsb2JhbE9iamVjdCB7CiBwdWJsaWM6CiAgICAgTG9jayYgZ2NMb2NrKCkgV1RG
X1JFVFVSTlNfTE9DSyhtX2djTG9jaykgeyByZXR1cm4gbV9nY0xvY2s7IH0KIAotICAgIEpTRE9N
U3RydWN0dXJlTWFwJiBzdHJ1Y3R1cmVzKCkgV1RGX1JFUVVJUkVTX0xPQ0sobV9nY0xvY2spIHsg
cmV0dXJuIG1fc3RydWN0dXJlczsgfQogICAgIERPTUd1YXJkZWRPYmplY3RTZXQmIGd1YXJkZWRP
YmplY3RzKCkgV1RGX1JFUVVJUkVTX0xPQ0sobV9nY0xvY2spIHsgcmV0dXJuIG1fZ3VhcmRlZE9i
amVjdHM7IH0KKyAgICBET01TdHJ1Y3R1cmVzJiBzdHJ1Y3R1cmVzKCkgeyByZXR1cm4gKm1fc3Ry
dWN0dXJlczsgfQogICAgIERPTUNvbnN0cnVjdG9ycyYgY29uc3RydWN0b3JzKCkgeyByZXR1cm4g
Km1fY29uc3RydWN0b3JzOyB9CiAKICAgICAvLyBObyBsb2NraW5nIGlzIG5lY2Vzc2FyeSBmb3Ig
Y2FsbCBzaXRlcyB0aGF0IGRvIG5vdCBtdXRhdGUgdGhlIGNvbnRhaW5lcnMgYW5kIGFyZSBub3Qg
b24gdGhlIEdDIHRocmVhZC4KLSAgICBjb25zdCBKU0RPTVN0cnVjdHVyZU1hcCYgc3RydWN0dXJl
cygpIGNvbnN0IFdURl9JR05PUkVTX1RIUkVBRF9TQUZFVFlfQU5BTFlTSVMgeyBBU1NFUlQoIVRo
cmVhZDo6bWF5QmVHQ1RocmVhZCgpKTsgcmV0dXJuIG1fc3RydWN0dXJlczsgfQogICAgIGNvbnN0
IERPTUd1YXJkZWRPYmplY3RTZXQmIGd1YXJkZWRPYmplY3RzKCkgY29uc3QgV1RGX0lHTk9SRVNf
VEhSRUFEX1NBRkVUWV9BTkFMWVNJUyB7IEFTU0VSVCghVGhyZWFkOjptYXlCZUdDVGhyZWFkKCkp
OyByZXR1cm4gbV9ndWFyZGVkT2JqZWN0czsgfQorICAgIGNvbnN0IERPTVN0cnVjdHVyZXMmIHN0
cnVjdHVyZXMoKSBjb25zdCB7IEFTU0VSVCghVGhyZWFkOjptYXlCZUdDVGhyZWFkKCkpOyByZXR1
cm4gKm1fc3RydWN0dXJlczsgfQogICAgIGNvbnN0IERPTUNvbnN0cnVjdG9ycyYgY29uc3RydWN0
b3JzKCkgY29uc3QgeyBBU1NFUlQoIVRocmVhZDo6bWF5QmVHQ1RocmVhZCgpKTsgcmV0dXJuICpt
X2NvbnN0cnVjdG9yczsgfQogCiAgICAgLy8gVGhlIGZvbGxvd2luZyBkb24ndCByZXF1aXJlIGdy
YWJiaW5nIHRoZSBnY0xvY2sgZmlyc3QgYW5kIHNob3VsZCBvbmx5IGJlIGNhbGxlZCB3aGVuIHRo
ZSBIZWFwIHNheXMgdGhhdCBtdXRhdG9ycyBkb24ndCBoYXZlIHRvIGJlIGZlbmNlZC4KLSAgICBK
U0RPTVN0cnVjdHVyZU1hcCYgc3RydWN0dXJlcyhOb0xvY2tpbmdOZWNlc3NhcnlUYWcpIFdURl9J
R05PUkVTX1RIUkVBRF9TQUZFVFlfQU5BTFlTSVMgeyBBU1NFUlQoIXZtKCkuaGVhcC5tdXRhdG9y
U2hvdWxkQmVGZW5jZWQoKSk7IHJldHVybiBtX3N0cnVjdHVyZXM7IH0KICAgICBET01HdWFyZGVk
T2JqZWN0U2V0JiBndWFyZGVkT2JqZWN0cyhOb0xvY2tpbmdOZWNlc3NhcnlUYWcpIFdURl9JR05P
UkVTX1RIUkVBRF9TQUZFVFlfQU5BTFlTSVMgeyBBU1NFUlQoIXZtKCkuaGVhcC5tdXRhdG9yU2hv
dWxkQmVGZW5jZWQoKSk7IHJldHVybiBtX2d1YXJkZWRPYmplY3RzOyB9CiAKICAgICBTY3JpcHRF
eGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3Q7CkBAIC0xMjMs
OSArMTIyLDkgQEAgY2xhc3MgV0VCQ09SRV9FWFBPUlQgSlNET01HbG9iYWxPYmplY3QgOiBwdWJs
aWMgSlNDOjpKU0dsb2JhbE9iamVjdCB7CiAgICAgc3RhdGljIEpTQzo6SlNJbnRlcm5hbFByb21p
c2UqIG1vZHVsZUxvYWRlckltcG9ydE1vZHVsZShKU0M6OkpTR2xvYmFsT2JqZWN0KiwgSlNDOjpK
U01vZHVsZUxvYWRlciosIEpTQzo6SlNTdHJpbmcqLCBKU0M6OkpTVmFsdWUsIGNvbnN0IEpTQzo6
U291cmNlT3JpZ2luJik7CiAgICAgc3RhdGljIEpTQzo6SlNPYmplY3QqIG1vZHVsZUxvYWRlckNy
ZWF0ZUltcG9ydE1ldGFQcm9wZXJ0aWVzKEpTQzo6SlNHbG9iYWxPYmplY3QqLCBKU0M6OkpTTW9k
dWxlTG9hZGVyKiwgSlNDOjpKU1ZhbHVlLCBKU0M6OkpTTW9kdWxlUmVjb3JkKiwgSlNDOjpKU1Zh
bHVlKTsKIAotICAgIEpTRE9NU3RydWN0dXJlTWFwIG1fc3RydWN0dXJlcyBXVEZfR1VBUkRFRF9C
WV9MT0NLKG1fZ2NMb2NrKTsKICAgICBET01HdWFyZGVkT2JqZWN0U2V0IG1fZ3VhcmRlZE9iamVj
dHMgV1RGX0dVQVJERURfQllfTE9DSyhtX2djTG9jayk7CiAgICAgc3RkOjp1bmlxdWVfcHRyPERP
TUNvbnN0cnVjdG9ycz4gbV9jb25zdHJ1Y3RvcnM7CisgICAgc3RkOjp1bmlxdWVfcHRyPERPTVN0
cnVjdHVyZXM+IG1fc3RydWN0dXJlczsKIAogICAgIFJlZjxET01XcmFwcGVyV29ybGQ+IG1fd29y
bGQ7CiAgICAgdWludDhfdCBtX3dvcmxkSXNOb3JtYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdElubGluZXMuaCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0SW5saW5lcy5oCmluZGV4IDA1Mjg2MTVi
NDYxYmYwZGI3NzFkZjQyNjg2ZmEyMmU1ZDJkZTY1MmYuLjEzZmM3MmFhNDE4ODdkMmFlOTc4ZGY2
Y2IyMjc0ZTZmODU0N2RiYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTRE9NR2xvYmFsT2JqZWN0SW5saW5lcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTRE9NR2xvYmFsT2JqZWN0SW5saW5lcy5oCkBAIC0yNyw2ICsyNyw3IEBACiAjcHJhZ21h
IG9uY2UKIAogI2luY2x1ZGUgIkRPTUNvbnN0cnVjdG9ycy5oIgorI2luY2x1ZGUgIkRPTVN0cnVj
dHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTUdsb2JhbE9iamVjdC5oIgogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CkBAIC00NCw0ICs0NSwxMyBAQCBpbmxpbmUgSlNDOjpKU09iamVjdCogZ2V0RE9NQ29u
c3RydWN0b3IoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbAogICAgIHJl
dHVybiBjb25zdHJ1Y3RvcjsKIH0KIAordGVtcGxhdGU8dHlwZW5hbWUgV3JhcHBlckNsYXNzPiBp
bmxpbmUgSlNDOjpTdHJ1Y3R1cmUqIGdldERPTVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNET01H
bG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKK3sKKyAgICBpZiAoYXV0byogc3RydWN0dXJlID0g
Z2xvYmFsT2JqZWN0LnN0cnVjdHVyZXMoKS5nZXQ8V3JhcHBlckNsYXNzPigpKQorICAgICAgICBy
ZXR1cm4gc3RydWN0dXJlOworICAgIGF1dG8qIHN0cnVjdHVyZSA9IFdyYXBwZXJDbGFzczo6Y3Jl
YXRlU3RydWN0dXJlKHZtLCAmZ2xvYmFsT2JqZWN0LCBXcmFwcGVyQ2xhc3M6OmNyZWF0ZVByb3Rv
dHlwZSh2bSwgZ2xvYmFsT2JqZWN0KSk7CisgICAgZ2xvYmFsT2JqZWN0LnN0cnVjdHVyZXMoKS5z
ZXQ8V3JhcHBlckNsYXNzPih2bSwgJmdsb2JhbE9iamVjdCwgc3RydWN0dXJlKTsKKyAgICByZXR1
cm4gc3RydWN0dXJlOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdyYXBwZXJDYWNoZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdyYXBwZXJDYWNoZS5jcHAKaW5kZXggNzMzOTY1YzM1
Y2ZiZTEyYWEwNzI3MjFmOTUzMmJjZDM4OTE4NTI0YS4uMjQ1MDQwMzhmM2JjNDY2MjY3ZTM3YWEw
Y2MzN2YzNDkyMGEyYmI4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNET01XcmFwcGVyQ2FjaGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
RE9NV3JhcHBlckNhY2hlLmNwcApAQCAtMjcsMjIgKzI3LDQgQEAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKLVN0cnVjdHVyZSogZ2V0Q2FjaGVkRE9NU3RydWN0
dXJlKGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIGNvbnN0IENsYXNzSW5m
byogY2xhc3NJbmZvKQotewotICAgIHJldHVybiBnbG9iYWxPYmplY3Quc3RydWN0dXJlcygpLmdl
dChjbGFzc0luZm8pLmdldCgpOwotfQotCi1TdHJ1Y3R1cmUqIGNhY2hlRE9NU3RydWN0dXJlKEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBjb25z
dCBDbGFzc0luZm8qIGNsYXNzSW5mbykKLXsKLSAgICBhdXRvIGFkZFRvU3RydWN0dXJlcyA9IFtd
KEpTRE9NU3RydWN0dXJlTWFwJiBzdHJ1Y3R1cmVzLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFs
T2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgY29uc3QgQ2xhc3NJbmZvKiBjbGFzc0luZm8p
IHsKLSAgICAgICAgQVNTRVJUKCFzdHJ1Y3R1cmVzLmNvbnRhaW5zKGNsYXNzSW5mbykpOwotICAg
ICAgICByZXR1cm4gc3RydWN0dXJlcy5zZXQoY2xhc3NJbmZvLCBXcml0ZUJhcnJpZXI8U3RydWN0
dXJlPihnbG9iYWxPYmplY3Qudm0oKSwgJmdsb2JhbE9iamVjdCwgc3RydWN0dXJlKSkuaXRlcmF0
b3ItPnZhbHVlLmdldCgpOwotICAgIH07Ci0gICAgaWYgKGdsb2JhbE9iamVjdC52bSgpLmhlYXAu
bXV0YXRvclNob3VsZEJlRmVuY2VkKCkpIHsKLSAgICAgICAgTG9ja2VyIGxvY2tlciB7IGdsb2Jh
bE9iamVjdC5nY0xvY2soKSB9OwotICAgICAgICByZXR1cm4gYWRkVG9TdHJ1Y3R1cmVzKGdsb2Jh
bE9iamVjdC5zdHJ1Y3R1cmVzKCksIGdsb2JhbE9iamVjdCwgc3RydWN0dXJlLCBjbGFzc0luZm8p
OwotICAgIH0KLSAgICByZXR1cm4gYWRkVG9TdHJ1Y3R1cmVzKGdsb2JhbE9iamVjdC5zdHJ1Y3R1
cmVzKE5vTG9ja2luZ05lY2Vzc2FyeSksIGdsb2JhbE9iamVjdCwgc3RydWN0dXJlLCBjbGFzc0lu
Zm8pOwotfQotCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0RPTVdyYXBwZXJDYWNoZS5oIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNET01XcmFwcGVyQ2FjaGUuaAppbmRleCBmYTFkNTE2YTBiMzVmYTNiNTYyYTI0
Njc0Njc4NTAyNDcyYmI3MjYxLi5lYTBhNDQzNDc0ZjkyMTY4MDY5NDRlM2U4ZjhkYjkwOWMzMWM2
MzU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdyYXBwZXJD
YWNoZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV3JhcHBlckNhY2hl
LmgKQEAgLTI0LDcgKzI0LDcgQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiRE9NV3JhcHBl
cldvcmxkLmgiCi0jaW5jbHVkZSAiSlNET01HbG9iYWxPYmplY3QuaCIKKyNpbmNsdWRlICJKU0RP
TUdsb2JhbE9iamVjdElubGluZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNs
dWRlICJTY3JpcHRXcmFwcGFibGUuaCIKICNpbmNsdWRlICJTY3JpcHRXcmFwcGFibGVJbmxpbmVz
LmgiCkBAIC0zNiwxMCArMzYsNiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLVdFQkNPUkVf
RVhQT1JUIEpTQzo6U3RydWN0dXJlKiBnZXRDYWNoZWRET01TdHJ1Y3R1cmUoY29uc3QgSlNET01H
bG9iYWxPYmplY3QmLCBjb25zdCBKU0M6OkNsYXNzSW5mbyopOwotV0VCQ09SRV9FWFBPUlQgSlND
OjpTdHJ1Y3R1cmUqIGNhY2hlRE9NU3RydWN0dXJlKEpTRE9NR2xvYmFsT2JqZWN0JiwgSlNDOjpT
dHJ1Y3R1cmUqLCBjb25zdCBKU0M6OkNsYXNzSW5mbyopOwotCi10ZW1wbGF0ZTx0eXBlbmFtZSBX
cmFwcGVyQ2xhc3M+IEpTQzo6U3RydWN0dXJlKiBnZXRET01TdHJ1Y3R1cmUoSlNDOjpWTSYsIEpT
RE9NR2xvYmFsT2JqZWN0Jik7CiB0ZW1wbGF0ZTx0eXBlbmFtZSBXcmFwcGVyQ2xhc3M+IEpTQzo6
U3RydWN0dXJlKiBkZXByZWNhdGVkR2V0RE9NU3RydWN0dXJlKEpTQzo6SlNHbG9iYWxPYmplY3Qq
KTsKIHRlbXBsYXRlPHR5cGVuYW1lIFdyYXBwZXJDbGFzcz4gSlNDOjpKU09iamVjdCogZ2V0RE9N
UHJvdG90eXBlKEpTQzo6Vk0mLCBKU0M6OkpTR2xvYmFsT2JqZWN0Kik7CiAKQEAgLTU4LDggKzU0
LDYgQEAgYm9vbCBjbGVhcklubGluZUNhY2hlZFdyYXBwZXIoRE9NV3JhcHBlcldvcmxkJiwgdm9p
ZCosIEpTRE9NT2JqZWN0Kik7CiBib29sIGNsZWFySW5saW5lQ2FjaGVkV3JhcHBlcihET01XcmFw
cGVyV29ybGQmLCBTY3JpcHRXcmFwcGFibGUqLCBKU0RPTU9iamVjdCogd3JhcHBlcik7CiBib29s
IGNsZWFySW5saW5lQ2FjaGVkV3JhcHBlcihET01XcmFwcGVyV29ybGQmLCBKU0M6OkFycmF5QnVm
ZmVyKiwgSlNDOjpKU0FycmF5QnVmZmVyKiB3cmFwcGVyKTsKIAotdGVtcGxhdGU8dHlwZW5hbWUg
RE9NQ2xhc3M+IEpTQzo6SlNPYmplY3QqIGdldE9yQ3JlYXRlV3JhcHBlcihET01XcmFwcGVyV29y
bGQmLCBET01DbGFzcyYpOwotCiB0ZW1wbGF0ZTx0eXBlbmFtZSBET01DbGFzcz4gSlNDOjpKU09i
amVjdCogZ2V0Q2FjaGVkV3JhcHBlcihET01XcmFwcGVyV29ybGQmLCBET01DbGFzcyYpOwogdGVt
cGxhdGU8dHlwZW5hbWUgRE9NQ2xhc3M+IGlubGluZSBKU0M6OkpTT2JqZWN0KiBnZXRDYWNoZWRX
cmFwcGVyKERPTVdyYXBwZXJXb3JsZCYgd29ybGQsIFJlZjxET01DbGFzcz4mIG9iamVjdCkgeyBy
ZXR1cm4gZ2V0Q2FjaGVkV3JhcHBlcih3b3JsZCwgb2JqZWN0LmdldCgpKTsgfQogdGVtcGxhdGU8
dHlwZW5hbWUgRE9NQ2xhc3MsIHR5cGVuYW1lIFdyYXBwZXJDbGFzcz4gdm9pZCBjYWNoZVdyYXBw
ZXIoRE9NV3JhcHBlcldvcmxkJiwgRE9NQ2xhc3MqLCBXcmFwcGVyQ2xhc3MqKTsKQEAgLTgxLDEz
ICs3NSw2IEBAIGlubGluZSBKU0RPTUdsb2JhbE9iamVjdCogZGVwcmVjYXRlZEdsb2JhbE9iamVj
dEZvclByb3RvdHlwZShKU0M6OkpTR2xvYmFsT2JqZWN0CiAgICAgcmV0dXJuIEpTQzo6anNDYXN0
PEpTRE9NR2xvYmFsT2JqZWN0Kj4obGV4aWNhbEdsb2JhbE9iamVjdCk7CiB9CiAKLXRlbXBsYXRl
PHR5cGVuYW1lIFdyYXBwZXJDbGFzcz4gaW5saW5lIEpTQzo6U3RydWN0dXJlKiBnZXRET01TdHJ1
Y3R1cmUoSlNDOjpWTSYgdm0sIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCi17Ci0g
ICAgaWYgKEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBnZXRDYWNoZWRET01TdHJ1Y3R1cmUo
Z2xvYmFsT2JqZWN0LCBXcmFwcGVyQ2xhc3M6OmluZm8oKSkpCi0gICAgICAgIHJldHVybiBzdHJ1
Y3R1cmU7Ci0gICAgcmV0dXJuIGNhY2hlRE9NU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgV3JhcHBl
ckNsYXNzOjpjcmVhdGVTdHJ1Y3R1cmUodm0sICZnbG9iYWxPYmplY3QsIFdyYXBwZXJDbGFzczo6
Y3JlYXRlUHJvdG90eXBlKHZtLCBnbG9iYWxPYmplY3QpKSwgV3JhcHBlckNsYXNzOjppbmZvKCkp
OwotfQotCiB0ZW1wbGF0ZTx0eXBlbmFtZSBXcmFwcGVyQ2xhc3M+IGlubGluZSBKU0M6OlN0cnVj
dHVyZSogZGVwcmVjYXRlZEdldERPTVN0cnVjdHVyZShKU0M6OkpTR2xvYmFsT2JqZWN0KiBsZXhp
Y2FsR2xvYmFsT2JqZWN0KQogewogICAgIC8vIEZJWE1FOiBUaGlzIGZ1bmN0aW9uIGlzIHdyb25n
LiBJdCB1c2VzIHRoZSB3cm9uZyBnbG9iYWwgb2JqZWN0IGZvciBjcmVhdGluZyB0aGUgcHJvdG90
eXBlIHN0cnVjdHVyZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvci5oCmluZGV4IGMxZWQ0
NGRmOTUyZmE0Mjc3YjliOWUxMDQzYWQ1NTcwOGNkODc4MTAuLjUxNTlkMjliYjE4YWUzMWEyMDdm
NTBiYzljYzhhY2VlOGEyMmQwNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3IuaApA
QCAtNDMsNiArNDMsNyBAQCBzdHJ1Y3QgSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0
b3JUcmFpdHMgewogY2xhc3MgSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3IgZmlu
YWwgOiBwdWJsaWMgSlNET01Bc3luY0l0ZXJhdG9yQmFzZTxKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGUsIEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yVHJhaXRzLCBKU0ZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvcj4gewogcHVibGljOgogICAgIHVzaW5nIEJhc2Ug
PSBKU0RPTUFzeW5jSXRlcmF0b3JCYXNlPEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSwgSlNG
aWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3JUcmFpdHMsIEpTRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZUl0ZXJhdG9yPjsKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlE
IHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGVJdGVyYXRvcjsKICAgICBERUNMQVJFX0lORk87CiAKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBD
ZWxsVHlwZSwgSlNDOjpTdWJzcGFjZUFjY2VzcyBtb2RlPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCAzNDM2NWZiMzUxNjg3
ZTdlZWJjZWZiODVjYzNkMjFlOTdjMWQ5NDQ3Li4yZDZhY2IzNjc4YjFjYjNmMDY2OWYwMjEyOGFh
ZTg4NTkzZjZkN2M2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L0NvZGVHZW5lcmF0b3JKUy5wbQpAQCAtMzAzOSw2ICszMDM5LDggQEAgc3ViIEdlbmVyYXRlSGVh
ZGVyCiAgICAgfQogCiAgICAgIyBTdHJ1Y3R1cmUgSUQKKyAgICAkaGVhZGVySW5jbHVkZXN7IkRP
TVN0cnVjdHVyZXMuaCJ9ID0gMTsKKyAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIHN0YXRp
YyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJ
RDo6JHtpbnRlcmZhY2VOYW1lfTtcbiIpOwogICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAg
c3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSlcbiIp
OwogICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAge1xuIik7CiAgICAgbXkgJGluZGV4aW5n
TW9kZUluY2x1ZGluZ0hpc3RvcnkgPSBJbnN0YW5jZU92ZXJyaWRlc0dldE93blByb3BlcnR5U2xv
dCgkaW50ZXJmYWNlKSA/ICJKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzIiA6ICJKU0M6Ok5v
bkFycmF5IjsKQEAgLTY3ODMsNiArNjc4NSw3IEBAIHN1YiBHZW5lcmF0ZUl0ZXJhYmxlRGVmaW5p
dGlvbgogICAgICAgICApOwogICAgIH0KIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0
dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6JHtpbnRlcmZhY2VOYW1lfUl0
ZXJhdG9yOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6
Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBw
cm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2
bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBl
LCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3ByZXByb2Nlc3MtaWRscy5wbCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvcHJlcHJvY2Vzcy1pZGxzLnBsCmluZGV4IDFkMjM3MDQyMzA2M2IyMmIwNGVi
YTdkMjRhNDc0MGM3Y2JhYmRkYzUuLmY3Y2I3ZjUzZTk2YzcwNmUxYjA3MjlhZjA3MWYyOTQ3Njgw
N2JkYWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvcHJlcHJv
Y2Vzcy1pZGxzLnBsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvcHJlcHJv
Y2Vzcy1pZGxzLnBsCkBAIC00Myw2ICs0Myw3IEBACiBteSAkaXNvU3Vic3BhY2VzSGVhZGVyRmls
ZTsKIG15ICRjbGllbnRJU09TdWJzcGFjZXNIZWFkZXJGaWxlOwogbXkgJGNvbnN0cnVjdG9yc0hl
YWRlckZpbGU7CitteSAkc3RydWN0dXJlc0hlYWRlckZpbGU7CiBteSAkd2luZG93Q29uc3RydWN0
b3JzRmlsZTsKIG15ICR3b3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGU7CiBteSAkc2hh
ZG93UmVhbG1HbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGU7CkBAIC04NCw2ICs4NSw3IEBACiAg
ICAgICAgICAgICdpc29TdWJzcGFjZXNIZWFkZXJGaWxlPXMnID0+IFwkaXNvU3Vic3BhY2VzSGVh
ZGVyRmlsZSwKICAgICAgICAgICAgJ2NsaWVudElTT1N1YnNwYWNlc0hlYWRlckZpbGU9cycgPT4g
XCRjbGllbnRJU09TdWJzcGFjZXNIZWFkZXJGaWxlLAogICAgICAgICAgICAnY29uc3RydWN0b3Jz
SGVhZGVyRmlsZT1zJyA9PiBcJGNvbnN0cnVjdG9yc0hlYWRlckZpbGUsCisgICAgICAgICAgICdz
dHJ1Y3R1cmVzSGVhZGVyRmlsZT1zJyA9PiBcJHN0cnVjdHVyZXNIZWFkZXJGaWxlLAogICAgICAg
ICAgICAnd2luZG93Q29uc3RydWN0b3JzRmlsZT1zJyA9PiBcJHdpbmRvd0NvbnN0cnVjdG9yc0Zp
bGUsCiAgICAgICAgICAgICd3b3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGU9cycgPT4g
XCR3b3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUsCiAgICAgICAgICAgICdzaGFkb3dS
ZWFsbUdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmlsZT1zJyA9PiBcJHNoYWRvd1JlYWxtR2xvYmFs
U2NvcGVDb25zdHJ1Y3RvcnNGaWxlLApAQCAtMTE4LDYgKzEyMCw3IEBACiAkaXNvU3Vic3BhY2Vz
SGVhZGVyRmlsZSA9IEN5Z3dpblBhdGhJZk5lZWRlZCgkaXNvU3Vic3BhY2VzSGVhZGVyRmlsZSk7
CiAkY2xpZW50SVNPU3Vic3BhY2VzSGVhZGVyRmlsZSA9IEN5Z3dpblBhdGhJZk5lZWRlZCgkY2xp
ZW50SVNPU3Vic3BhY2VzSGVhZGVyRmlsZSk7CiAkY29uc3RydWN0b3JzSGVhZGVyRmlsZSA9IEN5
Z3dpblBhdGhJZk5lZWRlZCgkY29uc3RydWN0b3JzSGVhZGVyRmlsZSk7Ciskc3RydWN0dXJlc0hl
YWRlckZpbGUgPSBDeWd3aW5QYXRoSWZOZWVkZWQoJHN0cnVjdHVyZXNIZWFkZXJGaWxlKTsKICR3
aW5kb3dDb25zdHJ1Y3RvcnNGaWxlID0gQ3lnd2luUGF0aElmTmVlZGVkKCR3aW5kb3dDb25zdHJ1
Y3RvcnNGaWxlKTsKICR3b3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgPSBDeWd3aW5Q
YXRoSWZOZWVkZWQoJHdvcmtlckdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmlsZSk7CiAkc2hhZG93
UmVhbG1HbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgPSBDeWd3aW5QYXRoSWZOZWVkZWQoJHNo
YWRvd1JlYWxtR2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnNGaWxlKTsKQEAgLTIxNiw2ICsyMTksMjcg
QEAgRU5ECiBlbnVtIGNsYXNzIERPTUNvbnN0cnVjdG9ySUQgOiB1aW50MTZfdCB7CiBFTkQKIAor
bXkgQHN0cnVjdHVyZXMgPSAoKTsKKyMgRGVwcmVjYXRlZCBvYmplY3RzLgorcHVzaChAc3RydWN0
dXJlcywgIk9iakNSdW50aW1lTWV0aG9kIik7CitwdXNoKEBzdHJ1Y3R1cmVzLCAiT2JqQ1J1bnRp
bWVPYmplY3QiKTsKK3B1c2goQHN0cnVjdHVyZXMsICJPYmpjRmFsbGJhY2tPYmplY3RJbXAiKTsK
K3B1c2goQHN0cnVjdHVyZXMsICJSdW50aW1lQXJyYXkiKTsKK3B1c2goQHN0cnVjdHVyZXMsICJS
dW50aW1lT2JqZWN0Iik7CisjIEZJWE1FOiBBZnRlciB3ZWJraXQub3JnL2IvMjMxMjQzLCB0aGlz
IGNsYXNzIHNob3VsZCBiZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBieSBiaW5kaW5ncyBjb2Rl
IGdlbmVyYXRvci4KK3B1c2goQHN0cnVjdHVyZXMsICJGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
SXRlcmF0b3IiKTsKK215ICRzdHJ1Y3R1cmVzSGVhZGVyQ29kZSA9IDw8RU5EOworI2luY2x1ZGUg
PHd0Zi9GYXN0TWFsbG9jLmg+CisjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CisjaW5jbHVk
ZSA8SmF2YVNjcmlwdENvcmUvSlNDSW5saW5lcy5oPgorCisjcHJhZ21hIG9uY2UKKworbmFtZXNw
YWNlIFdlYkNvcmUgeworCitlbnVtIGNsYXNzIERPTVN0cnVjdHVyZUlEIDogdWludDE2X3Qgewor
RU5ECisKICMgR2V0IHJpZCBvZiBkdXBsaWNhdGVzIGluIGlkbEZpbGVOYW1lcyBhcnJheS4KIG15
ICVpZGxGaWxlTmFtZUhhc2ggPSBtYXAgeyAkXywgMSB9IEBpZGxGaWxlTmFtZXM7CiAKQEAgLTI3
MCw5ICsyOTQsMTEgQEAgRU5ECiAgICAgaWYgKCEkaXNDYWxsYmFja0ludGVyZmFjZSkgewogICAg
ICAgICAkaXNvU3Vic3BhY2VzSGVhZGVyQ29kZSAuPSAiICAgIHN0ZDo6dW5pcXVlX3B0cjxJc29T
dWJzcGFjZT4gbV9zdWJzcGFjZUZvciR7aW50ZXJmYWNlTmFtZX07XG4iOwogICAgICAgICAkY2xp
ZW50SVNPU3Vic3BhY2VzSGVhZGVyQ29kZSAuPSAiICAgIHN0ZDo6dW5pcXVlX3B0cjxHQ0NsaWVu
dDo6SXNvU3Vic3BhY2U+IG1fY2xpZW50U3Vic3BhY2VGb3Ike2ludGVyZmFjZU5hbWV9O1xuIjsK
KyAgICAgICAgcHVzaChAc3RydWN0dXJlcywgIiR7aW50ZXJmYWNlTmFtZX0iKTsKICAgICAgICAg
aWYgKGNvbnRhaW5zSXRlcmFibGVJbnRlcmZhY2VGcm9tSURMKCRpZGxGaWxlKSkgewogICAgICAg
ICAgICAgJGlzb1N1YnNwYWNlc0hlYWRlckNvZGUgLj0gIiAgICBzdGQ6OnVuaXF1ZV9wdHI8SXNv
U3Vic3BhY2U+IG1fc3Vic3BhY2VGb3Ike2ludGVyZmFjZU5hbWV9SXRlcmF0b3I7XG4iOwogICAg
ICAgICAgICAgJGNsaWVudElTT1N1YnNwYWNlc0hlYWRlckNvZGUgLj0gIiAgICBzdGQ6OnVuaXF1
ZV9wdHI8R0NDbGllbnQ6Oklzb1N1YnNwYWNlPiBtX2NsaWVudFN1YnNwYWNlRm9yJHtpbnRlcmZh
Y2VOYW1lfUl0ZXJhdG9yO1xuIjsKKyAgICAgICAgICAgIHB1c2goQHN0cnVjdHVyZXMsICIke2lu
dGVyZmFjZU5hbWV9SXRlcmF0b3IiKTsKICAgICAgICAgfQogICAgIH0KIApAQCAtMzc3LDYgKzQw
MywzNCBAQCBFTkQKICAgICBXcml0ZUZpbGVJZkNoYW5nZWQoJGNvbnN0cnVjdG9yc0hlYWRlckZp
bGUsICRjb25zdHJ1Y3RvcnNIZWFkZXJDb2RlKTsKIH0KIAoraWYgKCRzdHJ1Y3R1cmVzSGVhZGVy
RmlsZSkgeworICAgIG15ICRzdHJ1Y3R1cmVzTGVuZ3RoID0gQHN0cnVjdHVyZXM7CisgICAgZm9y
ZWFjaCBteSAkbmFtZSAoQHN0cnVjdHVyZXMpIHsKKyAgICAgICAgJHN0cnVjdHVyZXNIZWFkZXJD
b2RlIC49ICIgICAgJHtuYW1lfSxcbiI7CisgICAgfQorICAgICRzdHJ1Y3R1cmVzSGVhZGVyQ29k
ZSAuPSAifTtcbiI7CisgICAgJHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49ICJcbiI7CisgICAgJHN0
cnVjdHVyZXNIZWFkZXJDb2RlIC49ICJzdGF0aWMgY29uc3RleHByIHVuc2lnbmVkIG51bWJlck9m
RE9NU3RydWN0dXJlcyA9ICRzdHJ1Y3R1cmVzTGVuZ3RoO1xuIjsKKyAgICAkc3RydWN0dXJlc0hl
YWRlckNvZGUgLj0gIlxuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0gImNsYXNzIERP
TVN0cnVjdHVyZXMge1xuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0gIiAgICBXVEZf
TUFLRV9OT05DT1BZQUJMRShET01TdHJ1Y3R1cmVzKTtcbiI7CisgICAgJHN0cnVjdHVyZXNIZWFk
ZXJDb2RlIC49ICIgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQoRE9NU3RydWN0dXJlcyk7XG4i
OworICAgICRzdHJ1Y3R1cmVzSGVhZGVyQ29kZSAuPSAicHVibGljOlxuIjsKKyAgICAkc3RydWN0
dXJlc0hlYWRlckNvZGUgLj0gIiAgICB1c2luZyBTdHJ1Y3R1cmVBcnJheSA9IHN0ZDo6YXJyYXk8
SlNDOjpXcml0ZUJhcnJpZXJTdHJ1Y3R1cmVJRCwgbnVtYmVyT2ZET01TdHJ1Y3R1cmVzPjtcbiI7
CisgICAgJHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49ICIgICAgRE9NU3RydWN0dXJlcygpID0gZGVm
YXVsdDtcbiI7CisgICAgJHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49ICIgICAgU3RydWN0dXJlQXJy
YXkmIGFycmF5KCkgeyByZXR1cm4gbV9hcnJheTsgfVxuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRl
ckNvZGUgLj0gIiAgICBjb25zdCBTdHJ1Y3R1cmVBcnJheSYgYXJyYXkoKSBjb25zdCB7IHJldHVy
biBtX2FycmF5OyB9XG4iOworICAgICRzdHJ1Y3R1cmVzSGVhZGVyQ29kZSAuPSAiICAgIHRlbXBs
YXRlPHR5cGVuYW1lIFdyYXBwZWRDbGFzcz4gSlNDOjpTdHJ1Y3R1cmUqIGdldCgpIGNvbnN0IHsg
cmV0dXJuIG1fYXJyYXlbc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KFdyYXBwZWRDbGFzczo6c3RydWN0
dXJlSW5kZXgpXS5nZXQoKTsgfVxuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0gIiAg
ICB0ZW1wbGF0ZTx0eXBlbmFtZSBXcmFwcGVkQ2xhc3M+IHZvaWQgc2V0KEpTQzo6Vk0mIHZtLCBK
U0M6OkpTQ2VsbCogb3duZXIsIEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1cmUpIHsgbV9hcnJheVtz
dGF0aWNfY2FzdDx1bnNpZ25lZD4oV3JhcHBlZENsYXNzOjpzdHJ1Y3R1cmVJbmRleCldLnNldCh2
bSwgb3duZXIsIHN0cnVjdHVyZSk7IH1cbiI7CisgICAgJHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49
ICJcbiI7CisgICAgJHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49ICJwcml2YXRlOlxuIjsKKyAgICAk
c3RydWN0dXJlc0hlYWRlckNvZGUgLj0gIiAgICBTdHJ1Y3R1cmVBcnJheSBtX2FycmF5IHsgfTtc
biI7CisgICAgJHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49ICJ9O1xuIjsKKyAgICAkc3RydWN0dXJl
c0hlYWRlckNvZGUgLj0gIlxuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0gIn0gLy8g
bmFtZXNwYWNlIFdlYkNvcmVcbiI7CisgICAgV3JpdGVGaWxlSWZDaGFuZ2VkKCRzdHJ1Y3R1cmVz
SGVhZGVyRmlsZSwgJHN0cnVjdHVyZXNIZWFkZXJDb2RlKTsKK30KKwogIyBSZXNvbHZlcyBwYXJ0
aWFsIGludGVyZmFjZXMgYW5kIGluY2x1ZGUgZGVwZW5kZW5jaWVzLgogZm9yZWFjaCBteSAkaWRs
RmlsZVBhdGggKHNvcnQga2V5cyAlc3VwcGxlbWVudGFsRGVwZW5kZW5jaWVzKSB7CiAgICAgbXkg
JGJhc2VGaWxlcyA9ICRzdXBwbGVtZW50YWxEZXBlbmRlbmNpZXN7JGlkbEZpbGVQYXRofTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RPTVdp
bmRvdy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRE9NV2lu
ZG93LmgKaW5kZXggM2Y3M2E5ZTcxMGNiMmMzYmMzY2JkMDliZDllMGQyY2ZmMzYwNzAyMS4uNWNh
NWFjOWNjYWMxMjkwMGQ1MzkxYjMzYzU1N2NjNWM4OTZhZjExZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRE9NV2luZG93LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRE9NV2luZG93LmgKQEAgLTIw
LDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgi
CiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiSlNFdmVudFRhcmdldC5oIgog
CkBAIC00NCw2ICs0NSw3IEBAIGNsYXNzIEpTRE9NV2luZG93IDogcHVibGljIEpTRXZlbnRUYXJn
ZXQgewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1
Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpET01XaW5kb3c7CiAgICAg
c3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAg
ICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmpl
Y3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Okdsb2JhbE9iamVjdFR5cGUsIFN0cnVj
dHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RlZGljYXRlZFdvcmtlckdsb2JhbFNj
b3BlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNEZWRpY2F0
ZWRXb3JrZXJHbG9iYWxTY29wZS5oCmluZGV4IDU3ODVkMWEwM2RkYWFmNTVmNjczNmUyMTY3MDAz
YmVlNmMzNjE3MDEuLmUwYTY1YmQ3YzQ2MTVhNWRiOWQ1OGE3NzU4MTYyMGUwYzM4NTYxOTEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RlZGlj
YXRlZFdvcmtlckdsb2JhbFNjb3BlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaApAQCAtMjAsNiArMjAs
NyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNs
dWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJKU1dvcmtlckdsb2JhbFNjb3BlLmgiCiAK
QEAgLTQxLDYgKzQyLDcgQEAgY2xhc3MgSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSA6IHB1
YmxpYyBKU1dvcmtlckdsb2JhbFNjb3BlIHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0
YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1
cmVJRDo6RGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGU7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0
dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVy
biBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlND
OjpUeXBlSW5mbyhKU0M6Okdsb2JhbE9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygp
LCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU0V4cG9zZWRTdGFyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNFeHBvc2VkU3Rhci5oCmluZGV4IDZmZDMxNWYyNGQyYmJjMGNhMjNm
OWMyNzI3NDc0Y2Y3MzI4NGQ3MTEuLjkzYmJhZjhmZmY2OWI2MDYyZmMxM2VjODZjZTJkZmZmMGMy
NTY5YWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU0V4cG9zZWRTdGFyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTRXhwb3NlZFN0YXIuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UK
IAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJFeHBvc2VkU3Rhci5oIgog
I2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIkpTRXZlbnRUYXJnZXQuaCIKQEAg
LTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNFeHBvc2VkU3RhciA6IHB1YmxpYyBKU0V2ZW50VGFyZ2V0
IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0
dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6RXhwb3NlZFN0YXI7CiAgICAg
c3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAg
ICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmpl
Y3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZs
YWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvdy5oIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFRvV29ya2Vy
QW5kV2luZG93LmgKaW5kZXggM2ViMTUyZDVlODdkMjNmZGVhNGIxMzdjODJjMDViNzJiZjAxODIy
Ni4uODk2YTBkZDZmODJhZTE2NmVkOWIzNWNlYTljMDEzNzUwZTIwNWM3YyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFRvV29ya2Vy
QW5kV2luZG93LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93LmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdt
YSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiRXhwb3NlZFRv
V29ya2VyQW5kV2luZG93LmgiCiAjaW5jbHVkZSAiSlNET01Db252ZXJ0RGljdGlvbmFyeS5oIgog
I2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgpAQCAtNDQsNiArNDUsNyBAQCBjbGFzcyBKU0V4cG9z
ZWRUb1dvcmtlckFuZFdpbmRvdyA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8RXhwb3NlZFRvV29ya2Vy
QW5kV2luZG93PgogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBE
T01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpFeHBvc2VkVG9X
b3JrZXJBbmRXaW5kb3c7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1
cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpK
U1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6
Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9i
amVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1BhaW50V29y
a2xldEdsb2JhbFNjb3BlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZS5oCmluZGV4IGFkMDI5NDA2ZDZiOTUwYzliMTMz
M2Y0YTM0ZjE1YjViZmY2NmFiYzQuLjY3ZDYyMTY2OWQyOGU5MTE5MzkzMzA0ZTRlMjI0M2U4NTg0
YjMwOGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1BhaW50V29ya2xldEdsb2JhbFNjb3BlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUuaApAQCAtMjAsNiAr
MjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNp
bmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJKU1dvcmtsZXRHbG9iYWxTY29wZS5o
IgogCkBAIC00MSw2ICs0Miw3IEBAIGNsYXNzIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUgOiBw
dWJsaWMgSlNXb3JrbGV0R2xvYmFsU2NvcGUgewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAg
c3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVj
dHVyZUlEOjpQYWludFdvcmtsZXRHbG9iYWxTY29wZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1
cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJu
IEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6
OlR5cGVJbmZvKEpTQzo6R2xvYmFsT2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCks
IEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaApp
bmRleCBkZjkwNGFjMzM3YzI3MzQwNzk4MmU4YTg0ZjY5ZTg1ODdlM2IwOTNiLi5hZWNhNDU2ZmRj
YzI0MDRiMWRkNmFmYWUwZDU2NGVhZjUwZmRmZmVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTZXJ2aWNlV29y
a2VyR2xvYmFsU2NvcGUuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2lu
Y2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNs
dWRlICJKU1dvcmtlckdsb2JhbFNjb3BlLmgiCiAKQEAgLTQxLDYgKzQyLDcgQEAgY2xhc3MgSlNT
ZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUgOiBwdWJsaWMgSlNXb3JrZXJHbG9iYWxTY29wZSB7CiAK
ICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlE
IHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlNlcnZpY2VXb3JrZXJHbG9iYWxTY29w
ZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90
eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGds
b2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6R2xvYmFsT2JqZWN0VHlw
ZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hhZG93UmVhbG1HbG9i
YWxTY29wZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hh
ZG93UmVhbG1HbG9iYWxTY29wZS5oCmluZGV4IDczYmViYWEzODc5ODFjN2U5NWM4Zjk0MWJkMzRi
NjA4ZGM0NDMwMjkuLmY0OTljYTVkYjFhNTA0ZWQxMGZlMjlhYzYxNDlkYTE5ZjU3YmE2YWEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYWRv
d1JlYWxtR2xvYmFsU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAog
I3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNE
T01XcmFwcGVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CiAKQEAgLTQyLDYg
KzQzLDcgQEAgY2xhc3MgSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlIDogcHVibGljIEpTRE9NV3Jh
cHBlcjxTaGFkb3dSZWFsbUdsb2JhbFNjb3BlPiB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAg
ICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3Ry
dWN0dXJlSUQ6OlNoYWRvd1JlYWxtR2xvYmFsU2NvcGU7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0
dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVy
biBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlND
OjpUeXBlSW5mbyhKU0M6Okdsb2JhbE9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygp
LCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlLmggYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZS5oCmlu
ZGV4IGNjM2QzNzM2ZjYzZTAxMjUyZDkyNGY0Y2YzOTU0NDdlMDk0YzYxNGEuLjJlMmZhNzdkNGZm
OTRkMDI4M2M0NDRiNTg0YmVjOWFlMGE2MTc0YjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hhcmVkV29ya2Vy
R2xvYmFsU2NvcGUuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1
ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRl
ICJKU1dvcmtlckdsb2JhbFNjb3BlLmgiCiAKQEAgLTQxLDYgKzQyLDcgQEAgY2xhc3MgSlNTaGFy
ZWRXb3JrZXJHbG9iYWxTY29wZSA6IHB1YmxpYyBKU1dvcmtlckdsb2JhbFNjb3BlIHsKIAogICAg
IERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3Ry
dWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6U2hhcmVkV29ya2VyR2xvYmFsU2NvcGU7CiAg
ICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpT
Qzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkK
ICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxP
YmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Okdsb2JhbE9iamVjdFR5cGUsIFN0
cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0aW9ucy5oIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rpb25z
LmgKaW5kZXggYjQyNDBmMDc1M2Y1MDI3MDYwYzdkODE0NjQ3Y2JiMDAwZTA4MTVjNy4uYTY0OTI4
OThmZTc5ODExZTg4ZmIzYWU1ZGRiZmIyZDU2YWY3MjNlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rpb25zLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rpb25z
LmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1
Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdENFUmVh
Y3Rpb25zLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00Myw2ICs0NCw3
IEBAIGNsYXNzIEpTVGVzdENFUmVhY3Rpb25zIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0Q0VS
ZWFjdGlvbnM+IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIg
RE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdENFUmVh
Y3Rpb25zOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6
Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBw
cm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2
bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBl
LCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q0VSZWFjdGlvbnNT
dHJpbmdpZmllci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXIuaAppbmRleCAwOWM0ZGUzZGQxZmYwYTM4YjI4OWZm
NWI1Y2U3YjA5N2RkM2M1ZTgwLi5hY2FmYjg4YzIyMjc4MGRlY2JlM2NhOWQzNzg1ZGQyNTA2OGEy
MWNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyLmgKQEAgLTIw
LDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgi
CiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdENFUmVhY3Rpb25zU3Ry
aW5naWZpZXIuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0
LDcgQEAgY2xhc3MgSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllciA6IHB1YmxpYyBKU0RPTVdy
YXBwZXI8VGVzdENFUmVhY3Rpb25zU3RyaW5naWYKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAg
IHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1
Y3R1cmVJRDo6VGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXI7CiAgICAgc3RhdGljIEpTQzo6U3Ry
dWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJl
dHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwg
SlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBK
U0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RDYWxsVHJhY2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbFRyYWNlci5oCmluZGV4IGUzMDYxMTg2YjY1YmU5MWI2
N2Y1NGJlMzNkMWMzM2EzMjkyM2I1ODAuLjMzNWZlNDFiNGI3MDkwMWJjMDZkZDUzYTc1Mzg2MmJk
ZGY0ZjAzNzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RDYWxsVHJhY2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdENhbGxUcmFjZXIuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJh
Z21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdy
YXBwZXIuaCIKICNpbmNsdWRlICJUZXN0Q2FsbFRyYWNlci5oIgogI2luY2x1ZGUgPHd0Zi9OZXZl
ckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RDYWxsVHJhY2VyIDog
cHVibGljIEpTRE9NV3JhcHBlcjxUZXN0Q2FsbFRyYWNlcj4gewogCiAgICAgREVDTEFSRV9JTkZP
OwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9
IERPTVN0cnVjdHVyZUlEOjpUZXN0Q2FsbFRyYWNlcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1
cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJu
IEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6
OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6
Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yLmggYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29u
c3RydWN0b3IuaAppbmRleCBmM2ZjMDRjZDA1YmNjODU2Zjk4ZmRjZTk1ZTUzOGEyM2VhOTRiN2I3
Li5mYjY3YWEyMzkxMWU0NmQ0ZGE1YzQ4MzQzYjI0M2I0MmVjZWUzNjdmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNC
dWlsdGluQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IuaApAQCAtMjAsNiAr
MjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNp
bmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0Q2xhc3NXaXRoSlNCdWlsdGlu
Q29uc3RydWN0b3IuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYg
KzQ0LDcgQEAgY2xhc3MgSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IgOiBwdWJs
aWMgSlNET01XcmFwcGVyPFRlc3RDbGFzc1dpdGhKU0IKIAogICAgIERFQ0xBUkVfSU5GTzsKIAor
ICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01T
dHJ1Y3R1cmVJRDo6VGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yOwogICAgIHN0YXRp
YyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewog
ICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBw
cm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyks
IGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcy5oIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENvbmRpdGlvbmFsSW5jbHVk
ZXMuaAppbmRleCAwYTE1ZTY3N2VjMmQyNDA4YmU5YzEyZGE0MzVjMzUzMDdkNGUzYmE3Li5kZjM2
ZjVjYWU1MmRjNzZhZmU4MzAxZTFkMzNjZWJiNzQzYzkwZTk0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRl
cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RD
b25kaXRpb25hbEluY2x1ZGVzLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAK
KyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAj
aW5jbHVkZSAiVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJE
ZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0Q29uZGl0aW9uYWxJbmNs
dWRlcyA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdENvbmRpdGlvbmFsSW5jbHVkZXM+IHsKIAog
ICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQg
c3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdENvbmRpdGlvbmFsSW5jbHVkZXM7
CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0s
IEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlw
ZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9i
YWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVj
dHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdy
aXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29u
ZGl0aW9uYWxseVJlYWRXcml0ZS5oCmluZGV4IGMxYzgzYTk5MDg1MzFjZDFlNWYxOGIzZmZkNWQ1
MzBmNmUzYTYxNWIuLjMxMTQ0N2QzOGFhMjk1M2MyODIwNTllMDkzNDVkOGNlMjUwMTUzYmEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RD
b25kaXRpb25hbGx5UmVhZFdyaXRlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUuaApAQCAtMjAsNiArMjAs
NyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNs
dWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0
ZS5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBj
bGFzcyBKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlIDogcHVibGljIEpTRE9NV3JhcHBlcjxU
ZXN0Q29uZGl0aW9uYWxseVJlYWRXcgogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGlj
IGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlE
OjpUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUq
IGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpT
Qzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5
cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9u
QXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdERPTUpJVC5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdERPTUpJVC5oCmluZGV4IDBlZGI4NGJmN2VhMmIzMWVkYTY3MGUzNTI0NmMyODYw
MDEzZDdhNzAuLjE1NDJkMDZmZjcwMGY2M2RjMzA4YmRhNTUwZmIyMzdmYzZiNmUzZWYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RET01K
SVQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
RE9NSklULmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJE
T01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiSlNO
b2RlLmgiCiAjaW5jbHVkZSAiVGVzdERPTUpJVC5oIgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBK
U1Rlc3RET01KSVQgOiBwdWJsaWMgSlNOb2RlIHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAg
IHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1
Y3R1cmVJRDo6VGVzdERPTUpJVDsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0
cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBK
U0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0
dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpT
Qzo6SlNUeXBlKEpTTm9kZVR5cGUpLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25B
cnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0RGVmYXVsdFRvSlNPTi5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT04uaAppbmRleCBmNDdkNmM4MDk2ODBhNjg3Y2U2
OTkyNzQzZTIzYmQwZjAzZmQxZGRkLi4zMmNkYTllNzVkMzc1NDBkZjZiZGQ0Y2UyNGY4YjE2NzI1
YzdkZGMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0RGVmYXVsdFRvSlNPTi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAog
I3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNE
T01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdERlZmF1bHRUb0pTT04uaCIKICNpbmNsdWRlIDx3
dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0RGVmYXVs
dFRvSlNPTiA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdERlZmF1bHRUb0pTT04+IHsKIAogICAg
IERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3Ry
dWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdERlZmF1bHRUb0pTT047CiAgICAgc3Rh
dGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7
CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3Qs
IHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdz
KSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9z
ZWQuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZh
dWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQuaAppbmRleCAyODE3Yzk3OTg3ZGNjNmZhMWQwZTQ4
MzczMjVkYTRiYzZlM2Y5NjU3Li40MGMwZDRkMjA5M2VjNmVmMGNhMDU2NjFiZGM2ODkwODk3N2Ex
NGJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5
RXhwb3NlZC5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAi
RE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRl
c3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJE
ZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0RGVmYXVsdFRvSlNPTkZp
bHRlcmVkQnlFeHBvc2VkIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0RGVmYXVsdFRvSlMKIAog
ICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQg
c3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdERlZmF1bHRUb0pTT05GaWx0ZXJl
ZEJ5RXhwb3NlZDsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFs
dWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVh
dGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0
VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRU
b0pTT05JbmRpcmVjdEluaGVyaXRhbmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UuaAppbmRl
eCA4NjczYzUxMzNiNGUwMjc2YzQ4MzkzMTYzNTY5ZDU1OTBlNjM0ODdjLi41NGY3ZTBlOTJiNmE2
ZmRiZjJhNmE4MTg0MWZmNjEwOTQ0MDQyOGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJp
dGFuY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UuaApAQCAtMjAsNiArMjAsNyBAQAog
CiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJK
U0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdC5oIgog
I2luY2x1ZGUgIlRlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZS5oIgpAQCAtNDIs
NiArNDMsNyBAQCBjbGFzcyBKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZSA6
IHB1YmxpYyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdAogCiAgICAgREVDTEFSRV9JTkZPOwog
CisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERP
TVN0cnVjdHVyZUlEOjpUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2U7CiAgICAg
c3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAg
ICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmpl
Y3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZs
YWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdC5oIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pT
T05Jbmhlcml0LmgKaW5kZXggMjQ0OTNhYzYzMDliNTllNjliYTFlYjcwNGIyN2MyOGRmMmE4OGUy
ZS4uMDMwZmFmYmEyNTJjOGFlZTIwNTRlYmQ3NGFjNzEzNzAxZDlkY2I0YSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pT
T05Jbmhlcml0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0LmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdt
YSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFw
cGVyLmgiCiAjaW5jbHVkZSAiSlNUZXN0RGVmYXVsdFRvSlNPTi5oIgogI2luY2x1ZGUgIlRlc3RE
ZWZhdWx0VG9KU09OSW5oZXJpdC5oIgpAQCAtNDIsNiArNDMsNyBAQCBjbGFzcyBKU1Rlc3REZWZh
dWx0VG9KU09OSW5oZXJpdCA6IHB1YmxpYyBKU1Rlc3REZWZhdWx0VG9KU09OIHsKIAogICAgIERF
Q0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0
dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdERlZmF1bHRUb0pTT05Jbmhlcml0OwogICAg
IHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6
OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAg
ICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2Jq
ZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVG
bGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5h
bC5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1
bHRUb0pTT05Jbmhlcml0RmluYWwuaAppbmRleCAxMGQ2MDI0NTkzNzAwZTRjOTJlMWY5Yjg0MGEy
M2IxNmUzM2QxYzY0Li5iZGEwN2I4MDM0NDA1M2U3NzUyMmE1YWRkZjJlN2I4NjcxYjYxZjYxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsLmgKQEAgLTIw
LDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgi
CiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiSlNUZXN0RGVmYXVsdFRvSlNP
TkluaGVyaXQuaCIKICNpbmNsdWRlICJUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbC5oIgpA
QCAtNDIsNiArNDMsNyBAQCBjbGFzcyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsIDog
cHVibGljIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0IHsKIAogICAgIERFQ0xBUkVfSU5GTzsK
IAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBE
T01TdHJ1Y3R1cmVJRDo6VGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWw7CiAgICAgc3RhdGlj
IEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAg
ICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHBy
b3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwg
aW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmli
dXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVs
ZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZS5oCmluZGV4IGQwZWZhZGU1NWM1N2I0ZjBl
OGVjODZmOTQ4MWMxNjhjZjUyNGVjOTIuLjNkNDIyOGM0M2FlNmRkMmNlZjY0ZGVjNGFkMGIwOGRl
N2VhZmY3YjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlbGVnYXRlVG9TaGFy
ZWRTeW50aGV0aWNBdHRyaWJ1dGUuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UK
IAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIK
ICNpbmNsdWRlICJUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZS5oIgogI2lu
Y2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rl
c3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlIDogcHVibGljIEpTRE9NV3JhcHBl
cjxUZXN0RGVsZWdhdAogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhw
ciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0RGVs
ZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1
cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJu
IEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6
OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6
Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdERvbWFpblNlY3VyaXR5LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0RG9tYWluU2VjdXJpdHkuaAppbmRleCA4YjM5ODQ3NDdjMjhh
MTNmMzk1OTJjZWUyNWY2MTI1MjMzMzQ0OGQwLi45MTVjNzhjZGJlMTQzZGZkYTUwMWM0NGI1YWIz
ZjZkNWRlZjU2NjFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0RG9tYWluU2VjdXJpdHkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RG9tYWluU2VjdXJpdHkuaApAQCAtMjAsNiArMjAs
NyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNs
dWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0RG9tYWluU2VjdXJpdHkuaCIKICNp
bmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNU
ZXN0RG9tYWluU2VjdXJpdHkgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3REb21haW5TZWN1cml0
eT4gewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1
Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0RG9tYWluU2VjdXJp
dHk7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3Rv
dHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBn
bG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0
cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFbmFibGVkQnlTZXR0aW5n
LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxl
ZEJ5U2V0dGluZy5oCmluZGV4IGM3NjhhNmFkZGI5ZDkyYjNlNzQ3MzdhZTNhYzAyNGE2NjViNjAz
ODQuLjJmZDY4MTk4ZmM2MWRjN2VjOTZhYzBlYmJhZjAwOGVjOWZmNGY2OTAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFbmFibGVkQnlT
ZXR0aW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEVuYWJsZWRCeVNldHRpbmcuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UK
IAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIK
ICNpbmNsdWRlICJUZXN0RW5hYmxlZEJ5U2V0dGluZy5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRl
c3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RFbmFibGVkQnlTZXR0aW5n
IDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0RW5hYmxlZEJ5U2V0dGluZz4gewogCiAgICAgREVD
TEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1
cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0RW5hYmxlZEJ5U2V0dGluZzsKICAgICBzdGF0
aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0ds
b2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsK
ICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwg
cHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3Mp
LCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEVuYWJsZWRGb3JDb250ZXh0LmggYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEZvckNvbnRleHQu
aAppbmRleCA2MGVmNDdjOWVhOTliYTAyZGRhNmE2NTNlMTZiZGU0MTc1ZWJmNDMyLi5hZjZjNmI0
NTljNTEzZWY1MTAxOGVlZGE4NzgwMDEzZDBhNGE3ODdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEZvckNvbnRleHQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxl
ZEZvckNvbnRleHQuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1
ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRl
ICJUZXN0RW5hYmxlZEZvckNvbnRleHQuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQu
aD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0RW5hYmxlZEZvckNvbnRleHQgOiBwdWJs
aWMgSlNET01XcmFwcGVyPFRlc3RFbmFibGVkRm9yQ29udGV4dD4gewogCiAgICAgREVDTEFSRV9J
TkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRl
eCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0RW5hYmxlZEZvckNvbnRleHQ7CiAgICAgc3RhdGljIEpT
Qzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAg
ICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3Rv
dHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5m
bygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmggYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRDb25zdHJ1Y3Rvci5oCmluZGV4
IDVlNDY2NDU3NzcwMjc4NGM2NDA1ZTI5ZDY1OTI5YzljMzFlMzMwMzguLmRhMDFiN2UxMGMxY2Yw
OWNhMjRjYzM3YTk3OTk4Y2ViNTdjM2YzYTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50Q29uc3RydWN0
b3IuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0
cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTUNvbnZlcnREaWN0aW9uYXJ5LmgiCiAjaW5jbHVk
ZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiSlNFdmVudC5oIgpAQCAtNDMsNiArNDQsNyBA
QCBjbGFzcyBKU1Rlc3RFdmVudENvbnN0cnVjdG9yIDogcHVibGljIEpTRXZlbnQgewogCiAgICAg
REVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1
Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0RXZlbnRDb25zdHJ1Y3RvcjsKICAgICBz
dGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAg
IHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVj
dCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6SlNUeXBlKEpTRXZlbnRUeXBlKSwgU3Ry
dWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50VGFyZ2V0LmggYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQu
aAppbmRleCA5MzkxZDJhMDFhNDhlNzEwYTdjMzFjMDliNDY5Nzg3N2I4MmQ5MDdkLi45NGQ5YjNj
NzQwZGIxMDg3ZjFhNGVhYTg5ZTMxOTBmYzFlNDc1M2JjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQu
aApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVj
dHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJKU0V2ZW50VGFy
Z2V0LmgiCiAjaW5jbHVkZSAiVGVzdEV2ZW50VGFyZ2V0LmgiCkBAIC00Nyw2ICs0OCw3IEBAIGNs
YXNzIEpTVGVzdEV2ZW50VGFyZ2V0IDogcHVibGljIEpTRXZlbnRUYXJnZXQgewogCiAgICAgREVD
TEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1
cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0RXZlbnRUYXJnZXQ7CiAgICAgc3RhdGljIEpT
Qzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAg
ICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3Rv
dHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5m
bygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNlcHRpb24uaCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNlcHRpb24uaAppbmRl
eCA0ZGZmOTYwYjgyYWRlNGFkNWUyODE2YjdlZDdjMDg0Y2M3NGU1MzdjLi4zNTkzYzFiNDFhMzI0
YWY0ZWViZWIzZDM2MzFhMjk3Mjc0MjZlZTY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXhjZXB0aW9uLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV4Y2VwdGlvbi5oCkBAIC0yMCw2
ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgog
I2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RFeGNlcHRpb24uaCIKICNp
bmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9FcnJvclByb3RvdHlwZS5oPgpAQCAtNDQsNiArNDUsNyBA
QCBjbGFzcyBKU1Rlc3RFeGNlcHRpb24gOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RFeGNlcHRp
b24+IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3Ry
dWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdEV4Y2VwdGlvbjsK
ICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
SlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBl
KQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2Jh
bE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0
dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9v
dC5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVy
YXRlQWRkT3BhcXVlUm9vdC5oCmluZGV4IGU0NTU5YmI4NTEwNGNjZmRiZWUyMWZlYTNhMmZjMWIx
ZmQ0ZTA5YjYuLjFkMTcwN2YxOGU1NjRmNjY3ZTJlNDg0NTUzNzJjZDNjNTczZmMyYjEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5l
cmF0ZUFkZE9wYXF1ZVJvb3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290LmgKQEAgLTIwLDYgKzIwLDcgQEAK
IAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAi
SlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdC5oIgog
I2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBK
U1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RHZW5l
cmF0ZUFkZE9wYXF1ZVJvbwogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0
ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0
R2VuZXJhdGVBZGRPcGFxdWVSb290OwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRl
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1
Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8o
SlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0R2VuZXJhdGVJc1JlYWNoYWJsZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUuaAppbmRleCBjMWY3OTA5MWRjNzE4
NzNiNTQ1ODUyOGU1NTA5ZjI5MGJlYjk4YjRiLi5iNzhhYTJmZjliNGJmNGVkZDU4YmY5NWZkNDBi
ZDA5ZmE5NWQ2MjE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlLmgKQEAg
LTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVz
LmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdEdlbmVyYXRlSXNS
ZWFjaGFibGUuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0
LDcgQEAgY2xhc3MgSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZSA6IHB1YmxpYyBKU0RPTVdyYXBw
ZXI8VGVzdEdlbmVyYXRlSXNSZWFjaGFibGU+IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAg
IHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1
Y3R1cmVJRDo6VGVzdEdlbmVyYXRlSXNSZWFjaGFibGU7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0
dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVy
biBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlND
OjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6
Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RHbG9iYWxPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RHbG9iYWxPYmplY3QuaAppbmRleCA5YjA4YzA5MWQxNTBmYjU1
YzM1ZjNjZTkzZjk2ZGYwYWNhZGZiYzA0Li4wZmViNWM4NjgxNTA5NDU0ZDM2ZGUyNGRhYjhiZjNh
MDUxYmJkNmE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0R2xvYmFsT2JqZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdsb2JhbE9iamVjdC5oCkBAIC0yMCw2ICsyMCw3IEBACiAK
ICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpT
RE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RHbG9iYWxPYmplY3QuaCIKICNpbmNsdWRlIDx3
dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0R2xvYmFs
T2JqZWN0IDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0R2xvYmFsT2JqZWN0PiB7CiAKICAgICBE
RUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVj
dHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RHbG9iYWxPYmplY3Q7CiAgICAgc3RhdGlj
IEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAg
ICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHBy
b3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Okdsb2JhbE9iamVjdFR5cGUsIFN0cnVjdHVyZUZs
YWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhl
ZFNldHRlck5vSWRlbnRpZmllci5oCmluZGV4IGM0NmMzZWQ3ODViZjMyNzY3YzNhNGM2YjBhNmY2
MTgwYmQ5ZjQxYmIuLjViNjkwZmUwODY5OWRlZTcwMzkxYWIyM2Q4ODk2NmJhMzlhODVhYjAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJ
bmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIuaApAQCAtMjAs
NiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIK
ICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0SW5kZXhlZFNldHRlck5v
SWRlbnRpZmllci5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDksNiAr
NTAsNyBAQCBjbGFzcyBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyIDogcHVibGljIEpT
RE9NV3JhcHBlcjxUZXN0SW5kZXhlZFNldHRlck5vSQogCiAgICAgREVDTEFSRV9JTkZPOwogCisg
ICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0
cnVjdHVyZUlEOjpUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllcjsKICAgICBzdGF0aWMgSlND
OjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAg
ICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90
eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZv
KCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2lu
Z0V4Y2VwdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oCmluZGV4IGJlZDA0ODA3YmJiNzZk
OTk2Mzk3ODEyMTQ4YzAxNzM5ZDNmMjE4ZDQuLjIxNjY2NThjOWZlNTI2OGVlZTJlZDNiNzM0OGVj
NThkMDAzOTU0YWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlclRo
cm93aW5nRXhjZXB0aW9uLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNp
bmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5j
bHVkZSAiVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oIgogI2luY2x1ZGUgPHd0
Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDksNiArNTAsNyBAQCBjbGFzcyBKU1Rlc3RJbmRleGVk
U2V0dGVyVGhyb3dpbmdFeGNlcHRpb24gOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RJbmRleGVk
U2V0dAogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1
Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0SW5kZXhlZFNldHRl
clRocm93aW5nRXhjZXB0aW9uOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3Ry
dWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
Qzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1
cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlND
OjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhl
ZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmggYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVu
dGlmaWVyLmgKaW5kZXggMGNiZWMyYjRjNTEyZWRjM2UxYmQxOWY0NjA4ZDNmY2NhMjhkYmY2OS4u
NThhMTAxMWYzNGRhNDA3NmViMmVkNWI2ZGZkZjUxN2E2NjFhYmQ4MyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJX
aXRoSWRlbnRpZmllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIuaApAQCAtMjAsNiArMjAsNyBA
QAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRl
ICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlm
aWVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00OSw2ICs1MCw3IEBA
IGNsYXNzIEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciA6IHB1YmxpYyBKU0RPTVdy
YXBwZXI8VGVzdEluZGV4ZWRTZXR0ZXJXCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0
aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJl
SUQ6OlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI7CiAgICAgc3RhdGljIEpTQzo6U3Ry
dWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJl
dHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwg
SlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBK
U0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKaW5kZXgg
ZWNiMDU0ODQwNmYxZGU0ZmRhNGJkYTVkOTY0N2RmYTc5MzMzMjEzMy4uOTA3MTU1OTgyNjM2MmFl
ZTU0ZmE4MzFkYTg5ODg1NzYxNGIwYjhkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKQEAgLTEx
MDksNiArMTEwOSw3IEBAIGNsYXNzIFRlc3RJbnRlcmZhY2VJdGVyYXRvciBmaW5hbCA6IHB1Ymxp
YyBUZXN0SW50ZXJmYWNlSXRlcmF0b3JCYXNlIHsKICAgICAgICAgKTsKICAgICB9CiAKKyAgICBz
dGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0
dXJlSUQ6OlRlc3RJbnRlcmZhY2VJdGVyYXRvcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUq
IGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpT
Qzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5
cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCkpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVy
ZmFjZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdElu
dGVyZmFjZS5oCmluZGV4IDc2OWYyZGU5MjQxZDcyMTU3NzRjNzBkYmUzOTdjMmNjYWMzYzQ4YmYu
LjhiNjc5MDk1MzM2N2NiODI1ZGZkOTc2MjYwNTFlNWJkNmZjOWE2MGMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJm
YWNlLmgKQEAgLTIyLDYgKzIyLDcgQEAKIAogI2lmIEVOQUJMRShDb25kaXRpb24xKSB8fCBFTkFC
TEUoQ29uZGl0aW9uMikKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJK
U0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0SW50ZXJmYWNlLmgiCiAjaW5jbHVkZSA8d3Rm
L05ldmVyRGVzdHJveWVkLmg+CkBAIC00Nyw2ICs0OCw3IEBAIGNsYXNzIFdFQkNPUkVfRVhQT1JU
IEpTVGVzdEludGVyZmFjZSA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdEludGVyZmFjZT4gewog
CiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJ
RCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0SW50ZXJmYWNlOwogICAgIHN0
YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAg
ewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0
LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFn
cyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUu
aCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZh
Y2VMZWFkaW5nVW5kZXJzY29yZS5oCmluZGV4IDg2NDhjZWE1NTIxZWQzNDRmYWY0ZDg5NjNiZGNk
MDgxNzhkZTYzYWIuLmU0N2M5Mjc3OGU0OTQ2ZmNjNjBhYmEwNGQwMTUwN2U4MjBlNzFhOTUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJ
bnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZS5oCkBAIC0y
MCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5o
IgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RJbnRlcmZhY2VMZWFk
aW5nVW5kZXJzY29yZS5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMs
NiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZSA6IHB1Ymxp
YyBKU0RPTVdyYXBwZXI8VGVzdEludGVyZmFjZUxlYWRpbgogCiAgICAgREVDTEFSRV9JTkZPOwog
CisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERP
TVN0cnVjdHVyZUlEOjpUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmU7CiAgICAgc3RhdGlj
IEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAg
ICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHBy
b3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwg
aW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJdGVyYWJsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuY3BwCmluZGV4IDVmNGZhNjlm
YThkMWIwMTE5MWQ3YTQ4NDIxYmVjOTMxYTg5NTZhZjIuLjk3ZWUyNzNmYWZhOGY1NmQ0ODIzMmEx
M2I2NTYxYjhlMTVmYjMyYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RJdGVyYWJsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEl0ZXJhYmxlLmNwcApAQCAtMjA0LDYgKzIwNCw3
IEBAIGNsYXNzIFRlc3RJdGVyYWJsZUl0ZXJhdG9yIGZpbmFsIDogcHVibGljIFRlc3RJdGVyYWJs
ZUl0ZXJhdG9yQmFzZSB7CiAgICAgICAgICk7CiAgICAgfQogCisgICAgc3RhdGljIGNvbnN0ZXhw
ciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0SXRl
cmFibGVJdGVyYXRvcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVy
ZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpT
VmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpj
cmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2Jq
ZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEl0ZXJhYmxlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuaAppbmRleCAx
NjM5MTk3ZDZiYTU3NDgwMTQyNjE4YjVjZjcxNDJiYTA1YjllMzJmLi40MTg0MWY1MGFhYWE2ODM2
NzBkOTZlOTVjZjU4MDNhNDFlZWU5MjI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuaApAQCAtMjAsNiArMjAs
NyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNs
dWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0SXRlcmFibGUuaCIKICNpbmNsdWRl
IDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0SXRl
cmFibGUgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RJdGVyYWJsZT4gewogCiAgICAgREVDTEFS
RV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJ
bmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0SXRlcmFibGU7CiAgICAgc3RhdGljIEpTQzo6U3Ry
dWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJl
dHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwg
SlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBK
U0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3Rvci5oIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yLmgKaW5k
ZXggY2FiZGE5YzkwNGU2NDYzNGYyNTNiYWExOTRmMDZiNDM0YzEwNTgwMi4uNzczN2NjYjU3M2Nj
MGYxYWQyZDIxZGVmNWM2ZjFmYzU1NDAyNjA5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRp
bkNvbnN0cnVjdG9yLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNs
dWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKQEAgLTQwLDYgKzQxLDcgQEAgY2xhc3MgSlNUZXN0SlNCdWlsdGluQ29u
c3RydWN0b3IgOiBwdWJsaWMgSlNET01PYmplY3QgewogCiAgICAgREVDTEFSRV9JTkZPOwogCisg
ICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0
cnVjdHVyZUlEOjpUZXN0SlNCdWlsdGluQ29uc3RydWN0b3I7CiAgICAgc3RhdGljIEpTQzo6U3Ry
dWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJl
dHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwg
SlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBK
U0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24uaApp
bmRleCA3ZGFjOGU1ZmUyZmVmOTE2N2I5MGFlYzJlNjIzMDAzNTAwYTE1YzIyLi5jMmI0YzlhZDdl
MDQ1MmNlMDZiYzJkODMyMDI5ZjIwZTk4MGQ2Y2RjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2Fj
eUZhY3RvcnlGdW5jdGlvbi5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisj
aW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2lu
Y2x1ZGUgIlRlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24uaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJE
ZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0TGVnYWN5RmFjdG9yeUZ1
bmN0aW9uIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW8KIAog
ICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQg
c3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlv
bjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90
eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGds
b2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3Ry
dWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeU5vSW50ZXJmYWNl
T2JqZWN0LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QuaAppbmRleCAxMjY0Yjk4OGJkZTU5ZjJiNWU5ZTc5YWZl
YzU4NWEzNjA2NDM4ZTZmLi5iYjUwNjQyYjM0NzQzOWIyZDdhZmVkMWMxYzZhYTM2MDhlNTk0Njc3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QuaApAQCAtMjIs
NiArMjIsNyBAQAogCiAjaWYgRU5BQkxFKENvbmRpdGlvbjIyKSB8fCBFTkFCTEUoQ29uZGl0aW9u
MjMpCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVy
LmgiCiAjaW5jbHVkZSAiVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0LmgiCiAjaW5jbHVkZSA8
d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00NSw2ICs0Niw3IEBAIGNsYXNzIEpTVGVzdExlZ2Fj
eU5vSW50ZXJmYWNlT2JqZWN0IDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TGVnYWN5Tm9JbnRl
cmZhY2VPCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0
cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RMZWdhY3lOb0lu
dGVyZmFjZU9iamVjdDsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVy
ZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpT
VmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpj
cmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2Jq
ZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2Fj
eU92ZXJyaWRlQnVpbHRJbnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmgKaW5kZXggZTliZDI5ODQ3ZTUyYzBk
OTQ0ODIzZTMwNWY4MTQ1YzU2MTljNDgyNi4uOTU3OTdiMjYwNWMzZmQzMGQ0OGJjN2U3MzM3NzY0
ZDEwN2FkNTkwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElucy5o
CkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0
dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00
Niw2ICs0Nyw3IEBAIGNsYXNzIEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMgOiBwdWJsaWMg
SlNET01XcmFwcGVyPFRlc3RMZWdhY3lPdmVycmlkZUJ1aWx0CiAKICAgICBERUNMQVJFX0lORk87
CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0g
RE9NU3RydWN0dXJlSUQ6OlRlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zOwogICAgIHN0YXRpYyBK
U0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAg
ICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90
b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGlu
Zm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZS5oIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2UuaAppbmRleCA2
YmQxYWMyMjJlYjYxMDU0NDU2ODY2MGYxMGI3NzFhZTQyYjBmMWU4Li41NjIzMTkxZTFhZDFlNjhh
YjkwZTNkN2M3YTZjOTBjOTVlMTZlMGEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RNYXBMaWtlLmgKQEAgLTIwLDYgKzIwLDcg
QEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVk
ZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdE1hcExpa2UuaCIKICNpbmNsdWRlIDx3
dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0TWFwTGlr
ZSA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdE1hcExpa2U+IHsKIAogICAgIERFQ0xBUkVfSU5G
TzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXgg
PSBET01TdHJ1Y3R1cmVJRDo6VGVzdE1hcExpa2U7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJl
KiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBK
U0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpU
eXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5v
bkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zLmggYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVu
T3BlcmF0aW9ucy5oCmluZGV4IGI5MWFiZjEwYzUzZThlN2RlNjE0MDI3YTc4NWU0N2E2ZjcxYTUy
ZDQuLjc0MjcxNTZlYTQwZmU5MjRkZDM3YTA4NzQ0NzFlOTcxM2I4MDFlODIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RNYXBMaWtlV2l0
aE92ZXJyaWRkZW5PcGVyYXRpb25zLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuaApAQCAt
MjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMu
aCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0TWFwTGlrZVdpdGhP
dmVycmlkZGVuT3BlcmF0aW9ucy5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpA
QCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRp
b25zIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TWFwTGlrZVdpdAogCiAgICAgREVDTEFSRV9J
TkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRl
eCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uczsK
ICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
SlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBl
KQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2Jh
bE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0
dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRl
ck5vSWRlbnRpZmllci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllci5oCmluZGV4IGViMzRiM2Fi
YjJhZGEyYTcxZTdhMjU4OWJjMDEwMjA2ZDZiM2ZiYWQuLmNlYzRmNjU1NWM4NTM1Mzc4NjQwNTQ5
YTJmZDEyMzc4ZjRjOThhMjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRB
bmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdt
YSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFw
cGVyLmgiCiAjaW5jbHVkZSAiVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllci5o
IgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDksNiArNTAsNyBAQCBjbGFz
cyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIgOiBwdWJsaWMgSlNET01X
cmFwcGVyPFRlc3ROYW1lZEFuZAogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNv
bnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpU
ZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyOwogICAgIHN0YXRpYyBKU0M6OlN0
cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICBy
ZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUs
IEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwg
SlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oCmluZGV4IDE2
MWM1YzJkZWI0N2FiZTNiNzEzMjZlZDUyMGI5YjFlNTQzODlmMTcuLmNlYmEzMDZlM2E0YjQ4MWJl
ZWIwNzA2MTNlMDZkODA1YjY4ODQ4ZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4
Y2VwdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oCkBAIC0yMCw2ICsy
MCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2lu
Y2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpA
QCAtNDksNiArNTAsNyBAQCBjbGFzcyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2lu
Z0V4Y2VwdGlvbiA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdE5hbQogCiAgICAgREVDTEFSRV9J
TkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRl
eCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNl
cHRpb247CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpW
TSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHBy
b3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZt
LCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUs
IFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5oIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJ
ZGVudGlmaWVyLmgKaW5kZXggZTgzMGZlZmU0NmFlNzlkZThjYTk3MzUxNzRhNzhjOGE2MTUyZDFl
Yy4uODBlOWZlNDk4YzE3ZWY0MGNmMDE5MDMxMTViZTRjOTBlNDc0MDdkOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5k
ZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVy
LmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1
Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdE5hbWVk
QW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVz
dHJveWVkLmg+CkBAIC00OSw2ICs1MCw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNl
dHRlcldpdGhJZGVudGlmaWVyIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRBCiAKICAg
ICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0
cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJX
aXRoSWRlbnRpZmllcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVy
ZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpT
VmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpj
cmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2Jq
ZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nl
c3NvcnMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllci5oIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllci5oCmlu
ZGV4IDgwNGM2OTg4NTk1NDQxYTVhOTQxOWVlNmMxZjNkOGQ2M2NhZDE5ZmYuLmQ5MjBkODRkZDk0
ZDBmNzBlOGQwMzU5NGM2ZTEwZDExODA2M2UwYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWREZWxldGVyTm9JZGVudGlmaWVyLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNl
CiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgi
CiAjaW5jbHVkZSAiVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllci5oIgogI2luY2x1ZGUgPHd0
Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDgsNiArNDksNyBAQCBjbGFzcyBKU1Rlc3ROYW1lZERl
bGV0ZXJOb0lkZW50aWZpZXIgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3ROYW1lZERlbGV0ZXJO
b0lkZQogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1
Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0TmFtZWREZWxldGVy
Tm9JZGVudGlmaWVyOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJl
KEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNW
YWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNy
ZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmpl
Y3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vz
c29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb24uaCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2Vw
dGlvbi5oCmluZGV4IDJmZGY4MTdjYWJhYmUyOTY4OTZmNjZkZDRhZThmNTcwNDYwMjkwZWQuLjEz
MmU5ZWJkNDMyZmIyYTg3MjhhZDFhMGJjN2ZjNTkwYTFjOGQ0MTEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJUaHJv
d2luZ0V4Y2VwdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oCkBAIC0yMCw2ICsyMCw3
IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1
ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4
Y2VwdGlvbi5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDgsNiArNDks
NyBAQCBjbGFzcyBKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbiA6IHB1YmxpYyBK
U0RPTVdyYXBwZXI8VGVzdE5hbWVkRGVsZXRlcgogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAg
c3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVj
dHVyZUlEOjpUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb247CiAgICAgc3RhdGljIEpT
Qzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAg
ICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3Rv
dHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5m
bygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRl
bnRpZmllci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyLmgKaW5kZXggNzE5OGE0ODNmNjRiMDE3OTg0OWI5
MTI1MTUxNzRkMjk1YzBlOTIyMS4uMzc0Yjg4ZWI1M2M2OGQ4OWI2NmI1ZTQxNDM3MjM3NmZlMGE2
OTA1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVy
LmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1
Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdE5hbWVk
RGVsZXRlcldpdGhJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+
CkBAIC00OCw2ICs0OSw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVy
IDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TmFtZWREZWxldGVyV2l0CiAKICAgICBERUNMQVJF
X0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUlu
ZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllcjsKICAg
ICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlND
OjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQog
ICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9i
amVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJl
RmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVs
ZXRlcldpdGhJbmRleGVkR2V0dGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIuaAppbmRleCAxOTI1
MGQ4OGU4YzdhNmM3NGQyNjc4NGRlMjFiODRkYTNiMzNkZmZjLi4yZmQyYjlkMWM5ZGEwODFjN2Q4
NDdmNTU5NjkwYmI0YTNhZTE2YTY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRE
ZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9u
Y2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIu
aCIKICNpbmNsdWRlICJUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIuaCIKICNpbmNs
dWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ4LDYgKzQ5LDcgQEAgY2xhc3MgSlNUZXN0
TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RO
YW1lZERlbGV0ZXIKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIg
RE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdE5hbWVk
RGVsZXRlcldpdGhJbmRleGVkR2V0dGVyOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3Jl
YXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpT
dHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUlu
Zm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZl
SW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aC5oIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGguaApp
bmRleCBiMmQ0YTU0M2Q3MTQ4NDk1OGZhZDg5OGI0OTI2YzlmZWRiN2ZhOGQ5Li4zZTBkZTJiNTdi
ODNjZjY1OTZmZDBiMDliMGMwYmY5OTZiMWExMjlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdl
dHRlckNhbGxXaXRoLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNs
dWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVk
ZSAiVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGguaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95
ZWQuaD4KQEAgLTQ2LDYgKzQ3LDcgQEAgY2xhc3MgSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aCA6
IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGg+IHsKIAogICAgIERF
Q0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0
dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGg7CiAgICAg
c3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAg
ICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmpl
Y3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZs
YWdzKSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRl
ck5vSWRlbnRpZmllci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyLmgKaW5kZXggMWNhYTcyMDhhNjFhNzFkNGJj
YzUzMjg4ZmNmYTMwZjVlNWYzNGM1Mi4uNWU0NWJiZDEyZjllMWI0NThlOTEyYWY1ZTgwMTFhY2Ux
NmU5NTQ2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyLmgK
QEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1
cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdE5hbWVkR2V0
dGVyTm9JZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00
Niw2ICs0Nyw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyIDogcHVibGlj
IEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRHZXR0ZXJOb0lkZW50CiAKICAgICBERUNMQVJFX0lORk87
CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0g
RE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllcjsKICAgICBzdGF0aWMg
SlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAg
ICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJv
dG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBp
bmZvKCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyV2l0aElk
ZW50aWZpZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyLmgKaW5kZXggNWE0ZDA3NTdjOTE0MWIwNTc3MGVm
ZDZkYmMxYWUxMzY5ZDg1NWZlYy4uNjBhMTEyZDg0NDNiZjRjNjNlODZjNjFjY2QxMzA1ZjU1Y2Zl
YmQ2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllci5o
CkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0
dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3ROYW1lZEdl
dHRlcldpdGhJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBA
IC00Niw2ICs0Nyw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIgOiBw
dWJsaWMgSlNET01XcmFwcGVyPFRlc3ROYW1lZEdldHRlcldpdGhJCiAKICAgICBERUNMQVJFX0lO
Rk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4
ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyOwogICAgIHN0
YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAg
ewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0
LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFn
cyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJO
b0lkZW50aWZpZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllci5oCmluZGV4IDI1OTg5M2ZmYmYyODk1ZDhmZDg4
MjBhZmI5MjNmNzk2NmQ5NTRjZmQuLmQ4ZTYyZjBkOWJkZTIzMTkyNGIzMzU4OGIxZDc0ZTUxNDI2
ZjJlMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllci5oCkBA
IC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJl
cy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3ROYW1lZFNldHRl
ck5vSWRlbnRpZmllci5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDks
NiArNTAsNyBAQCBjbGFzcyBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllciA6IHB1YmxpYyBK
U0RPTVdyYXBwZXI8VGVzdE5hbWVkU2V0dGVyTm9JZGVudAogCiAgICAgREVDTEFSRV9JTkZPOwog
CisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERP
TVN0cnVjdHVyZUlEOjpUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXI7CiAgICAgc3RhdGljIEpT
Qzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAg
ICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3Rv
dHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5m
bygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlclRocm93aW5n
RXhjZXB0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oCmluZGV4IDc4MjQzYTlhMTY0ZjEwYzQw
NGIyZTE2ZmNjZWFhY2Q2ZjA0NmU0ZjIuLjVkZTdlNzM0OWVhZTNhM2FjY2ZlZmViOTczNzc2OWVm
Y2Q2ZjhhZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdF
eGNlcHRpb24uaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUg
IkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJU
ZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRl
c3Ryb3llZC5oPgpAQCAtNDksNiArNTAsNyBAQCBjbGFzcyBKU1Rlc3ROYW1lZFNldHRlclRocm93
aW5nRXhjZXB0aW9uIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRTZXR0ZXJUaAogCiAg
ICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBz
dHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4
Y2VwdGlvbjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUg
cHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUo
dm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlw
ZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyLmgKaW5kZXgg
OGM4NGFhNDNhYjJiODg0YzA2ZGRmOWY0YTQ1ZjI2MTE3NGUxMjRmOS4uYzc2OWRkNTg4ZjhlNDlj
MmMwOGZkN2NhNzQxMmU2OWNlNTgyZTAzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoSWRlbnRpZmllci5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQog
CisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgog
I2luY2x1ZGUgIlRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3Rm
L05ldmVyRGVzdHJveWVkLmg+CkBAIC00OSw2ICs1MCw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkU2V0
dGVyV2l0aElkZW50aWZpZXIgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3ROYW1lZFNldHRlcldp
dGhJCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVj
dHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZFNldHRlcldp
dGhJZGVudGlmaWVyOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJl
KEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNW
YWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNy
ZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmpl
Y3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vz
c29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlci5oIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0
ZXIuaAppbmRleCA2OGUzOWYyOWE4YWNjODk1MThjZGRmNTlmNTk5YzAwZDhiYjU2NDExLi5hZDUz
Zjg0YzI2YmIwYzJkNzk2YzUzNGJkMjk2OGVjMTZiZWZiZjE4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5k
ZXhlZEdldHRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyLmgKQEAgLTIwLDYgKzIwLDcgQEAK
IAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAi
SlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0
ZXIuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ5LDYgKzUwLDcgQEAg
Y2xhc3MgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlciA6IHB1YmxpYyBKU0RPTVdy
YXBwZXI8VGVzdE5hbWVkU2V0dGVyV2kKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRp
YyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJ
RDo6VGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXI7CiAgICAgc3RhdGljIEpTQzo6U3Ry
dWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJl
dHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwg
SlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBK
U0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0
dGVyQW5kU2V0dGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlci5oCmluZGV4IGQwNmEw
NWJiOTYxMTE2YjFkMjE3OGQ4M2I2YzdhYTZkMmU1YzkyZDguLjVmZDRlNTEyYjRlNzYxMjEyMDIx
NjNhZmM0YzNjZmJiMWRkNjVkZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0
dGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXIuaApAQCAtMjAsNiArMjAsNyBA
QAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRl
ICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdl
dHRlckFuZFNldHRlci5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDks
NiArNTAsNyBAQCBjbGFzcyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0
dGVyIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TmFtZQogCiAgICAgREVDTEFSRV9JTkZPOwog
CisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERP
TVN0cnVjdHVyZUlEOjpUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlcjsK
ICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
SlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBl
KQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2Jh
bE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0
dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1
aWx0SW5zLmgKaW5kZXggZWI1MmUyY2Q5MjY4NWM3Zjk1NDg0YWMxZGFmZDUwOTkwMzNkMWU3Ny4u
MmU5N2ZlYjQ2YzNjZGYzNzI0YmU3Nzg1YzdjZGQ2YzQ0MDc2MDVjZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0
aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElu
cy5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3Ry
dWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3ROYW1l
ZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVy
RGVzdHJveWVkLmg+CkBAIC00OSw2ICs1MCw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkU2V0dGVyV2l0
aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3ROYW1lCiAK
ICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlE
IHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZFNldHRlcldpdGhMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3Ry
dWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
Qzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1
cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlND
OjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhl
ZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVz
LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzLmgKaW5kZXggMDVhNmU1ODMyYzhh
MGFlZGI4ZDI1NDYxNzQ3MzI4YzljN2ZhNDYwYS4uZjMxMzI0NzQxZGI3ZmFjYmE4ZGE4YmQ1M2Fi
MDM5Yzk4NWRjNzUyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGll
cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RO
YW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXMuaApAQCAtMjAsNiArMjAs
NyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNs
dWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5
VW5mb3JnZWFibGVQcm9wZXJ0aWVzLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+
CkBAIC00OSw2ICs1MCw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9y
Z2VhYmxlUHJvcGVydGllcyA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzCiAKICAgICBERUNMQVJF
X0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUlu
ZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJs
ZVByb3BlcnRpZXM7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUo
SlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1Zh
bHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3Jl
YXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVj
dFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNz
b3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5k
TGVnYWN5T3ZlcnJpZGVCdWlsdElucy5oCmluZGV4IDhhMGY3YjNjNTFhYWVhM2NlMGZkNGFmMjZm
OWI4OGI4YTFjM2YxMTEuLjE4YWQzOWZiYmU0OTAwNWMxYmQzMGQ3Y2Q4ODc4MDc2N2Q2M2Q4ZDEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVy
cmlkZUJ1aWx0SW5zLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExl
Z2FjeU92ZXJyaWRlQnVpbHRJbnMuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UK
IAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIK
ICNpbmNsdWRlICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVz
QW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucy5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3ll
ZC5oPgpAQCAtNDksNiArNTAsNyBAQCBjbGFzcyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lV
bmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zCiAKICAgICBERUNM
QVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVy
ZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdl
YWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zOwogICAgIHN0YXRpYyBKU0M6
OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAg
ICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5
cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8o
KSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZXNwYWNlT2JqZWN0LmggYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZXNwYWNlT2Jq
ZWN0LmgKaW5kZXggNWI1NjE3MjVlNmZkOTQwZjA1ODgzZTY4MjZlYzMxOTljOWFjMzc3ZC4uN2Nm
NmI3Mjc2M2EzODM0OTUwZmVkYjAwZWZjMDI5ODM4MmJkM2UwNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFjZU9iamVjdC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
c3BhY2VPYmplY3QuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1
ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKIAogbmFtZXNw
YWNlIFdlYkNvcmUgewpAQCAtMzgsNiArMzksNyBAQCBjbGFzcyBKU1Rlc3ROYW1lc3BhY2VPYmpl
Y3QgOiBwdWJsaWMgSlNET01PYmplY3QgewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3Rh
dGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVy
ZUlEOjpUZXN0TmFtZXNwYWNlT2JqZWN0OwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3Jl
YXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpT
dHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUlu
Zm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJh
eSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0Tm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0Tm9kZS5jcHAKaW5kZXggMmY0ZWE2NWNjODAyMzM0MzRjMzdiZWI0MTNmY2MxZTQ2M2Mx
NWJiYy4uODVmZjk2NzdmMjNmMzdlOGY4ZDJmZjBiMDVlN2U5OTY0MTBkZjQwNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5vZGUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2Rl
LmNwcApAQCAtNDEwLDYgKzQxMCw3IEBAIGNsYXNzIFRlc3ROb2RlSXRlcmF0b3IgZmluYWwgOiBw
dWJsaWMgVGVzdE5vZGVJdGVyYXRvckJhc2UgewogICAgICAgICApOwogICAgIH0KIAorICAgIHN0
YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1
cmVJRDo6VGVzdE5vZGVJdGVyYXRvcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0
ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3Ry
dWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZv
KEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCkpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5vZGUuaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmgKaW5kZXgg
MGU5NjJiZmY5N2QxNmRhNjBjMmNiYjhjNTg5Njk5MWJmODIwOGYxMS4uYzlkOGRiNTNhNTgxNWE3
MmI0YmQ0MTJiN2MzMzkzNzMwYzMwYjVjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5vZGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Tm9kZS5oCkBAIC0yMCw2ICsyMCw3IEBACiAK
ICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpT
RE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIkpTTm9kZS5oIgogI2luY2x1ZGUgIlRlc3ROb2RlLmgi
CkBAIC00Miw2ICs0Myw3IEBAIGNsYXNzIFdFQkNPUkVfRVhQT1JUIEpTVGVzdE5vZGUgOiBwdWJs
aWMgSlNOb2RlIHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIg
RE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdE5vZGU7
CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0s
IEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlw
ZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9i
YWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6OkpTVHlwZShKU05vZGVUeXBl
KSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9iai5oIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9iai5oCmluZGV4IGI3
YmU4NjU2NGFmYzVlZTdiNTA4MmI1N2VjY2M2ODZmODg2MTMzNWQuLjRlYWQ5ODQwNjZhYjE1MjY4
YmU4NWVhOTAzOGQxOThiMGY4OWQwODggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3By
YWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01D
b252ZXJ0RGljdGlvbmFyeS5oIgogI2luY2x1ZGUgIkpTRE9NQ29udmVydEVudW1lcmF0aW9uLmgi
CiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCkBAIC00OCw2ICs0OSw3IEBAIGNsYXNzIEpTVGVz
dE9iaiA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdE9iaj4gewogCiAgICAgREVDTEFSRV9JTkZP
OwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9
IERPTVN0cnVjdHVyZUlEOjpUZXN0T2JqOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3Jl
YXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpT
dHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUlu
Zm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZl
SW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwuaCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbC5o
CmluZGV4IDBjN2I4MjA0MTk3Yzg0NDZlYTk2N2NmMTlhOGRmM2E1OTFhY2FiMjUuLjhiMzc3N2Y1
OWJmMGRiNTljNmJiMmU5NjFhMmFkMzkwM2U3ZDIzOWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPcGVy
YXRpb25Db25kaXRpb25hbC5oCkBAIC0yMiw2ICsyMiw3IEBACiAKICNpZiBFTkFCTEUoQ29uZGl0
aW9uRGVyaXZlZCkKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RP
TVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwuaCIKICNpbmNs
dWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ1LDYgKzQ2LDcgQEAgY2xhc3MgSlNUZXN0
T3BlcmF0aW9uQ29uZGl0aW9uYWwgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RPcGVyYXRpb25D
b25kaXRpb25hbD4KIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIg
RE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdE9wZXJh
dGlvbkNvbmRpdGlvbmFsOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0
dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6
SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6
OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpP
YmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3Zl
cmxvYWRlZENvbnN0cnVjdG9ycy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuaAppbmRleCAwMWFlYjZkN2FiZDQ5
NjNjMzI3NThiNWY0YTliNmE0NjY4YWRiOThjLi5mZjBmMGE4YTE4YmQ1YzY5Mzc0OGM5YmFhOGVi
OGE2NWQwNjIyMDYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycy5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3Jz
LmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1
Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdE92ZXJs
b2FkZWRDb25zdHJ1Y3RvcnMuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAg
LTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycyA6IHB1Ymxp
YyBKU0RPTVdyYXBwZXI8VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3QKIAogICAgIERFQ0xBUkVfSU5G
TzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXgg
PSBET01TdHJ1Y3R1cmVJRDo6VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnM7CiAgICAgc3RhdGlj
IEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAg
ICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHBy
b3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwg
aW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVl
bmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3Zl
cmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZS5oCmluZGV4IDg4ODFkMWZmOGJkNWVmNWYw
NWJkYjJlYmJlM2EwY2RmMjM3Y2FhZGEuLjM3MmExOTE1YWUzM2FhOTkzZDhmZmRkZjc1N2ExZmJh
NjI0OGI3N2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25z
dHJ1Y3RvcnNXaXRoU2VxdWVuY2UuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UK
IAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIK
ICNpbmNsdWRlICJUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZS5oIgogI2lu
Y2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rl
c3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlIDogcHVibGljIEpTRE9NV3JhcHBl
cjxUZXN0T3ZlcmxvYQogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhw
ciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0T3Zl
cmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1
cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJu
IEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6
OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6
Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdFBsdWdpbkludGVyZmFjZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdFBsdWdpbkludGVyZmFjZS5oCmluZGV4IDA4OGJmZTUzZDQ5
ZWI1NmRjZDU1NjgyN2EwNjgxYzNiYmJlNzhkODQuLjNlZmU5ZWU0NjI2OTU3MTY4OWNmNWFjYmRi
YWZkOTI1MjFjMDg0YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RQbHVnaW5JbnRlcmZhY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UGx1Z2luSW50ZXJmYWNlLmgKQEAgLTIwLDYg
KzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAj
aW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdFBsdWdpbkludGVyZmFjZS5o
IgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0NhbGxEYXRhLmg+CkBAIC01MCw2ICs1MSw3IEBA
IGNsYXNzIEpTVGVzdFBsdWdpbkludGVyZmFjZSA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdFBs
dWdpbkludGVyZmFjZT4gewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0
ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0
UGx1Z2luSW50ZXJmYWNlOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0
dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6
SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6
OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpP
YmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFj
Y2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50LmgKaW5kZXgg
NzI5MDhiM2I0N2IwYTg4NGI3NDQ0YTczMDU3ODcyN2Q1MTFiNjIxYy4uYjRjZTRkMDRmZTk2YWNj
MzAxNzA4NGIzMTBmNDU2ZmFiYzM1YzExMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RQcm9taXNlUmVq
ZWN0aW9uRXZlbnQuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1
ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTUNvbnZlcnREaWN0aW9uYXJ5Lmgi
CiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiSlNFdmVudC5oIgpAQCAtNDMs
NiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQgOiBwdWJsaWMgSlNF
dmVudCB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0
cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RQcm9taXNlUmVq
ZWN0aW9uRXZlbnQ7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUo
SlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1Zh
bHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3Jl
YXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6OkpTVHlw
ZShKU0V2ZW50VHlwZSksIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RSZWFkT25seU1hcExpa2UuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RSZWFkT25seU1hcExpa2UuaAppbmRleCBiMjI3YjBlMzAxYmU5NWZiZmFiOWRi
Y2EzYTY0NDAwZjIzZDkwZjgwLi5iOGRkODQzNjJlOWNlZjVlYWExOTBmMDUxODY1OWZiNjA4MTZi
OTM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0UmVhZE9ubHlNYXBMaWtlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdFJlYWRPbmx5TWFwTGlrZS5oCkBAIC0yMCw2ICsyMCw3IEBACiAK
ICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpT
RE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RSZWFkT25seU1hcExpa2UuaCIKICNpbmNsdWRl
IDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0UmVh
ZE9ubHlNYXBMaWtlIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0UmVhZE9ubHlNYXBMaWtlPiB7
CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVy
ZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RSZWFkT25seU1hcExpa2U7
CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0s
IEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlw
ZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9i
YWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVj
dHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZWFkT25seVNldExpa2UuaCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZWFkT25seVNl
dExpa2UuaAppbmRleCBmZTBmN2E5N2QzZDQ4YzhjZGI0YWEyMWRlZTY3OTJiY2RjY2FlMzVjLi4y
NDRmYzljMzNmNGU5M2E4ZjA1ZGUxOTBhMDk0ZWUzMjVlZGQ2MWNiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlTZXRMaWtl
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJl
YWRPbmx5U2V0TGlrZS5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5j
bHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1
ZGUgIlRlc3RSZWFkT25seVNldExpa2UuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQu
aD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0UmVhZE9ubHlTZXRMaWtlIDogcHVibGlj
IEpTRE9NV3JhcHBlcjxUZXN0UmVhZE9ubHlTZXRMaWtlPiB7CiAKICAgICBERUNMQVJFX0lORk87
CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0g
RE9NU3RydWN0dXJlSUQ6OlRlc3RSZWFkT25seVNldExpa2U7CiAgICAgc3RhdGljIEpTQzo6U3Ry
dWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJl
dHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwg
SlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBK
U0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QuaCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QuaApp
bmRleCA2MzQ2ODAzZWZhNDgyN2QyMDgwM2E2ZTUxY2MzNWY5YWY5ODNkNjAzLi5jNmEwZWU5ZTJl
N2IyOWZkOWZkOWZlNmUzZmFhODZjZDFjMjE0NDFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlcG9y
dEV4dHJhTWVtb3J5Q29zdC5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisj
aW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2lu
Y2x1ZGUgIlRlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJE
ZXN0cm95ZWQuaD4KQEAgLTQ0LDYgKzQ1LDcgQEAgY2xhc3MgSlNUZXN0UmVwb3J0RXh0cmFNZW1v
cnlDb3N0IDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3MKIAog
ICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQg
c3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29z
dDsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90
eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGds
b2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3Ry
dWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRW
YWx1ZUludGVyZmFjZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5oCmluZGV4IDVmZDcyMTI2NWVm
NWIyNjRlOWM2MjE1ZTVjNTcwODM1YTcyMzJiZmQuLjI1ZWEzMzUyYjc5YTVhYjk3YTRhNjJlMjdk
NzBmYTQ0ZjQ3MWFkNGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2VyaWFsaXplZFNj
cmlwdFZhbHVlSW50ZXJmYWNlLmgKQEAgLTIyLDYgKzIyLDcgQEAKIAogI2lmIEVOQUJMRShDb25k
aXRpb24xKSB8fCBFTkFCTEUoQ29uZGl0aW9uMikKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMu
aCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0U2VyaWFsaXplZFNj
cmlwdFZhbHVlSW50ZXJmYWNlLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBA
IC00NSw2ICs0Niw3IEBAIGNsYXNzIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFj
ZSA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdFNlcmlhbGl6ZWRTCiAKICAgICBERUNMQVJFX0lO
Rk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4
ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2U7CiAg
ICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpT
Qzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkK
ICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxP
YmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVy
ZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2V0TGlrZS5oCmluZGV4IDc0ZWQy
NjYxM2Y4NmM4ZmVlYWQ3ZTQ2MjE3Y2YzODBhMjRhYjFiYTAuLmY1OGE0ZDlmMTUzMTVlZTVhYzk2
MTA2NDI5MGM4Y2MzOWRhYmRlYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNldExpa2UuaApAQCAtMjAsNiArMjAsNyBAQAog
CiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJK
U0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0U2V0TGlrZS5oIgogI2luY2x1ZGUgPHd0Zi9O
ZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RTZXRMaWtlIDog
cHVibGljIEpTRE9NV3JhcHBlcjxUZXN0U2V0TGlrZT4gewogCiAgICAgREVDTEFSRV9JTkZPOwog
CisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERP
TVN0cnVjdHVyZUlEOjpUZXN0U2V0TGlrZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNy
ZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6
U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJ
bmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJy
YXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuaCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVy
YXRpb25zLmgKaW5kZXggMWViMTgwOWI4MWQ5Yzk0ZjU0ZTcxNzczMDdlMWU1ZGY0ZTlmMDUxYS4u
NDRiYzE2ZDhmMWVkNDQ0Mjk1YmJjZDg3MzBjZmM5ODRlYjNhM2RiYiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNldExpa2VXaXRoT3Zl
cnJpZGRlbk9wZXJhdGlvbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucy5oCkBAIC0yMCw2
ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgog
I2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RTZXRMaWtlV2l0aE92ZXJy
aWRkZW5PcGVyYXRpb25zLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00
Myw2ICs0NCw3IEBAIGNsYXNzIEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMg
OiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RTZXRMaWtlV2l0CiAKICAgICBERUNMQVJFX0lORk87
CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0g
RE9NU3RydWN0dXJlSUQ6OlRlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zOwogICAg
IHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6
OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAg
ICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2Jq
ZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVG
bGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllci5oCmluZGV4
IDZmOGI5ODk4ZjRhNjVhNTYwMmZjNGU1MjFiMDU2ZTMwMjNkMTdkZGIuLjljNTMzODVmZmIzNzVj
M2E0NjIxNTJhMGRhZDU1ZGJlNTJhNTRlZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllci5oCkBAIC0y
MCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5o
IgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RTdHJpbmdpZmllci5o
IgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFz
cyBKU1Rlc3RTdHJpbmdpZmllciA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdFN0cmluZ2lmaWVy
PiB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVj
dHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RTdHJpbmdpZmllcjsK
ICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
SlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBl
KQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2Jh
bE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0
dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3Vz
T3BlcmF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24uaAppbmRleCBjYjNmZDM3YjAzNzA5ZmFi
NzdiOTQ2NjA3MWQwMTljYzUzYjM3YzJhLi5hMTRjZTQzMmNlYzEzOWEzZWIyYzQyODg1MzY2Y2Vm
MjRhZjliYmU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24uaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1v
dXNPcGVyYXRpb24uaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1
ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRl
ICJUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24uaCIKICNpbmNsdWRlIDx3dGYvTmV2
ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0U3RyaW5naWZpZXJB
bm9ueW1vdXNPcGVyYXRpb24gOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RTdHJpbmdpZmllckEK
IAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJl
SUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdFN0cmluZ2lmaWVyQW5vbnlt
b3VzT3BlcmF0aW9uOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJl
KEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNW
YWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNy
ZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmpl
Y3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5n
aWZpZXJOYW1lZE9wZXJhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24uaAppbmRleCAyMWQxYmYyNjYz
YmVmMjQ2NjYyZGI1OTliMzY2ZjhhOTVlMTgxNDdkLi5mZmEzZTQxMmQ5YTA1YmJiNmI2NDQ2Mjc0
N2YzMmY1NGNkMDFiZjhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbi5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck5hbWVk
T3BlcmF0aW9uLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRl
ICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAi
VGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24uaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0
cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9w
ZXJhdGlvbiA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdFN0cmluZ2lmaWVyTmFtZWQKIAogICAg
IERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3Ry
dWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRp
b247CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3Rv
dHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBn
bG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0
cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck9wZXJh
dGlvbkltcGxlbWVudGVkQXMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXMuaAppbmRleCA5YzFl
NDcyMGVjZTA2MzEwZGM4MDQ5MTNiZTI3NTgwZmU2ZmEyNTczLi5hNGJmN2JlZmJlNTk3Y2MxYjVk
Yzc2ODY4ZGNlZDUyMjlhMzQ0NmUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFz
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0
cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcy5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNw
cmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9N
V3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVk
QXMuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAg
Y2xhc3MgSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzIDogcHVibGljIEpT
RE9NV3JhcHBlcjxUZXN0U3RyaW5naWYKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRp
YyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJ
RDo6VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBczsKICAgICBzdGF0aWMgSlND
OjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAg
ICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90
eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZv
KCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZy5o
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lm
aWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZy5oCmluZGV4IGIwNzgyODcyYzJhN2VlNGJhZDVkYzZm
MzY3YTNmMGVkNDc4OGVjNDkuLjE1ZDBlYTZiNGIwMmM1NTIxODYzNjMwNGEyYzFlNWNiY2UxYWU4
NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25O
YW1lZFRvU3RyaW5nLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNs
dWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVk
ZSAiVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZy5oIgogI2luY2x1ZGUgPHd0
Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RTdHJpbmdp
Zmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RTdHJp
bmdpZgogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1
Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0U3RyaW5naWZpZXJP
cGVyYXRpb25OYW1lZFRvU3RyaW5nOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRl
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1
Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8o
SlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUuaApp
bmRleCA2NzkzMTNlZGY3YTE5NzMzYTNkZDI0ODI5OTdmYmY1YjI4NGU2ZGRkLi4yNmY3NWM5MTZh
OWI0MGM1MmZmZTUxMTQxODVkNDhjZGFmMjI1ODk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJp
YnV0ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3By
YWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01X
cmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUuaCIK
ICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3Mg
SlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZSA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8
VGVzdFN0cmluZ2lmaWVyUmUKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25z
dGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVz
dFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGU7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJl
KiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBK
U0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpU
eXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5v
bkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZS5oIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0
cmlidXRlLmgKaW5kZXggMTIxMzc0ZTQzZDgwMDQzMDNjZWQ1ZDc5MzcxNWY5MTVhNDczMTNjYy4u
Y2ZhY2FkNGQxY2U5MzQ3ZDY4ZTZiOGVhOTI3NzVmY2MyZWUzYmYyMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVh
ZFdyaXRlQXR0cmlidXRlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlLmgKQEAgLTIwLDYgKzIw
LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5j
bHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRl
QXR0cmlidXRlLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00Myw2ICs0
NCw3IEBAIGNsYXNzIEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlIDogcHVibGlj
IEpTRE9NV3JhcHBlcjxUZXN0U3RyaW5naWZpZXJSCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAg
ICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3Ry
dWN0dXJlSUQ6OlRlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZTsKICAgICBzdGF0aWMg
SlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAg
ICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJv
dG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBp
bmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFRhZ2dlZFdyYXBwZXIuaCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUYWdnZWRXcmFwcGVyLmgKaW5kZXggYjFl
MTg5ZmI4YzhjM2U2MDU1YTJmY2ZkNDcxZmM3NTk3ZjUzMGIyZi4uOTI0YTQwODg0YTVmYTg3MzVl
YmVkMmQ1YWI2NmU5OTgxOWZlZjQwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFRhZ2dlZFdyYXBwZXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VGFnZ2VkV3JhcHBlci5oCkBAIC0y
MCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5o
IgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RUYWdnZWRXcmFwcGVy
LmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00NCw2ICs0NSw3IEBAIGNs
YXNzIEpTVGVzdFRhZ2dlZFdyYXBwZXIgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RUYWdnZWRX
cmFwcGVyLCBTaWduZWRQdHJUcmFpCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMg
Y29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6
OlRlc3RUYWdnZWRXcmFwcGVyOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3Ry
dWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
Qzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1
cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlND
OjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
VHlwZWRlZnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RUeXBlZGVmcy5oCmluZGV4IDZjZjIzYTdmNzA5ODg4MTc2ZWRmMDM2YTJiZmUyN2I0Mzk0YmU1
NmEuLmYyZTMwOWI1YzI3NmIzNzgzZWEyY2Y1NTFiZTM4NTA3YmUyNzJjZTEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUeXBlZGVmcy5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUeXBl
ZGVmcy5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9N
U3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RU
eXBlZGVmcy5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQs
NyBAQCBjbGFzcyBKU1Rlc3RUeXBlZGVmcyA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdFR5cGVk
ZWZzPiB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0
cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RUeXBlZGVmczsK
ICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
SlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBl
KQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2Jh
bE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0
dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTV29ya2VyR2xvYmFsU2NvcGUuaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1dvcmtlckdsb2JhbFNjb3Bl
LmgKaW5kZXggOTlmMjdjM2ZmMTYwNDgxNjE2YzhiNzA4NzA4YzRlODk0ODU5OTMwNS4uYTgxNTc4
ODk4NjQ2OTU1MjE0MzNjMDJiNGQ2YmE3MzE5ZTMyYTk4YiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTV29ya2VyR2xvYmFsU2NvcGUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrZXJHbG9iYWxT
Y29wZS5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9N
U3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIkpTRXZl
bnRUYXJnZXQuaCIKIApAQCAtNDQsNiArNDUsNyBAQCBjbGFzcyBKU1dvcmtlckdsb2JhbFNjb3Bl
IDogcHVibGljIEpTRXZlbnRUYXJnZXQgewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3Rh
dGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVy
ZUlEOjpXb3JrZXJHbG9iYWxTY29wZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0
ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3Ry
dWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZv
KEpTQzo6R2xvYmFsT2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9u
QXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTV29ya2xldEdsb2JhbFNjb3BlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNXb3JrbGV0R2xvYmFsU2NvcGUuaAppbmRleCA3NmNhZDQ0MjdlMTkyMmFi
MmViMjI5YmJjMGI0NWNlNDg0NTZiYWRkLi43YTc3YjU1M2MzMzcxYWQ2ZTRhYzUyY2I0OGE0YmZj
NWNjZDIzYWQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNXb3JrbGV0R2xvYmFsU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrbGV0R2xvYmFsU2NvcGUuaApAQCAtMjAsNiArMjAsNyBA
QAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRl
ICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJKU0V2ZW50VGFyZ2V0LmgiCiAKQEAgLTQ0LDYg
KzQ1LDcgQEAgY2xhc3MgSlNXb3JrbGV0R2xvYmFsU2NvcGUgOiBwdWJsaWMgSlNFdmVudFRhcmdl
dCB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVj
dHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OldvcmtsZXRHbG9iYWxTY29w
ZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90
eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGds
b2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6R2xvYmFsT2JqZWN0VHlw
ZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvT2JqQ1J1bnRpbWVPYmplY3QuaCBiL1NvdXJjZS9X
ZWJDb3JlL2JyaWRnZS9vYmpjL09iakNSdW50aW1lT2JqZWN0LmgKaW5kZXggMTY4MTllMDA2NGUy
NTU1ZTczODk1OWE0OTAxMzA4YWZhMDUzMjAzYS4uOWY4ZmQ0OGU0NTNhMzcyYmUzMWExZDY5YjZk
NTBmZTFiZmY5YjdhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvT2Jq
Q1J1bnRpbWVPYmplY3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9PYmpDUnVu
dGltZU9iamVjdC5oCkBAIC0yNiw2ICsyNiw3IEBACiAjaWZuZGVmIE9iakNSdW50aW1lT2JqZWN0
X2gKICNkZWZpbmUgT2JqQ1J1bnRpbWVPYmplY3RfaAogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJl
cy5oIgogI2luY2x1ZGUgInJ1bnRpbWVfb2JqZWN0LmgiCiAKIG5hbWVzcGFjZSBKU0MgewpAQCAt
MzYsNiArMzcsNyBAQCBjbGFzcyBPYmpjSW5zdGFuY2U7CiBjbGFzcyBPYmpDUnVudGltZU9iamVj
dCBmaW5hbCA6IHB1YmxpYyBSdW50aW1lT2JqZWN0IHsKIHB1YmxpYzoKICAgICB1c2luZyBCYXNl
ID0gUnVudGltZU9iamVjdDsKKyAgICBzdGF0aWMgY29uc3RleHByIFdlYkNvcmU6OkRPTVN0cnVj
dHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gV2ViQ29yZTo6RE9NU3RydWN0dXJlSUQ6Ok9iakNSdW50
aW1lT2JqZWN0OwogCiAgICAgc3RhdGljIE9iakNSdW50aW1lT2JqZWN0KiBjcmVhdGUoVk0mIHZt
LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmUHRyPE9iamNJbnN0YW5jZT4mJiBpbnN0KQogICAg
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfaW5zdGFuY2Uu
bW0gYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tCmluZGV4IDVi
MWE4MzUzZDkwMmUxZjhkNzM2MjhjNjkwYjNmNzRiMjBmMWNmZTQuLmRiZWY0NzgzYzliMzFlZTNi
ZjEyYzM1NjJkZWI1YTFiMmE1NDUxNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRn
ZS9vYmpjL29iamNfaW5zdGFuY2UubW0KKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMv
b2JqY19pbnN0YW5jZS5tbQpAQCAtMjYsNiArMjYsNyBAQAogI2ltcG9ydCAiY29uZmlnLmgiCiAj
aW1wb3J0ICJvYmpjX2luc3RhbmNlLmgiCiAKKyNpbXBvcnQgIkRPTVN0cnVjdHVyZXMuaCIKICNp
bXBvcnQgIkpTRE9NQmluZGluZy5oIgogI2ltcG9ydCAiT2JqQ1J1bnRpbWVPYmplY3QuaCIKICNp
bXBvcnQgIldlYlNjcmlwdE9iamVjdC5oIgpAQCAtMTcyLDYgKzE3Myw4IEBAIGJvb2wgT2JqY0lu
c3RhbmNlOjpzdXBwb3J0c0ludm9rZURlZmF1bHRNZXRob2QoKSBjb25zdAogCiBjbGFzcyBPYmpD
UnVudGltZU1ldGhvZCBmaW5hbCA6IHB1YmxpYyBSdW50aW1lTWV0aG9kIHsKIHB1YmxpYzoKKyAg
ICBzdGF0aWMgY29uc3RleHByIFdlYkNvcmU6OkRPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4
ID0gV2ViQ29yZTo6RE9NU3RydWN0dXJlSUQ6Ok9iakNSdW50aW1lTWV0aG9kOworCiAgICAgc3Rh
dGljIE9iakNSdW50aW1lTWV0aG9kKiBjcmVhdGUoSlNHbG9iYWxPYmplY3QqIGxleGljYWxHbG9i
YWxPYmplY3QsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvbnN0IFN0cmluZyYgbmFt
ZSwgQmluZGluZ3M6Ok1ldGhvZCogbWV0aG9kKQogICAgIHsKICAgICAgICAgVk0mIHZtID0gZ2xv
YmFsT2JqZWN0LT52bSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMv
b2JqY19ydW50aW1lLmggYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUu
aAppbmRleCAwYTA5NGI2OWM4MTQ3NzZhZDUyNDM3YmQ4NmRkNWQ1ZTE1NDMxMzk3Li4xYTA2ZTMy
MjIzMmVhNzU3NGJlYjFjMDFiMmU2OGY2YWIzYjlkZDE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlk
Z2Uvb2JqYy9vYmpjX3J1bnRpbWUuaApAQCAtMjcsNiArMjcsNyBAQAogI2RlZmluZSBLSlNfQklO
RElOR1NfT0JKQ19SVU5USU1FX0gKIAogI2luY2x1ZGUgIkJyaWRnZUpTQy5oIgorI2luY2x1ZGUg
IkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKICNpbmNsdWRlICJv
YmpjX2hlYWRlci5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pTR2xvYmFsT2JqZWN0Lmg+
CkBAIC05Myw2ICs5NCw3IEBAIGNsYXNzIE9iamNGYWxsYmFja09iamVjdEltcCBmaW5hbCA6IHB1
YmxpYyBKU0Rlc3RydWN0aWJsZU9iamVjdCB7CiAgICAgdXNpbmcgQmFzZSA9IEpTRGVzdHJ1Y3Rp
YmxlT2JqZWN0OwogICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgU3RydWN0dXJlRmxhZ3Mg
PSBCYXNlOjpTdHJ1Y3R1cmVGbGFncyB8IE92ZXJyaWRlc0dldE93blByb3BlcnR5U2xvdCB8IE92
ZXJyaWRlc0dldENhbGxEYXRhIHwgT3ZlcnJpZGVzUHV0OwogICAgIHN0YXRpYyBjb25zdGV4cHIg
Ym9vbCBuZWVkc0Rlc3RydWN0aW9uID0gdHJ1ZTsKKyAgICBzdGF0aWMgY29uc3RleHByIFdlYkNv
cmU6OkRPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gV2ViQ29yZTo6RE9NU3RydWN0dXJl
SUQ6Ok9iamNGYWxsYmFja09iamVjdEltcDsKIAogICAgIHRlbXBsYXRlPHR5cGVuYW1lIENlbGxU
eXBlLCBKU0M6OlN1YnNwYWNlQWNjZXNzPgogICAgIHN0YXRpYyBHQ0NsaWVudDo6SXNvU3Vic3Bh
Y2UqIHN1YnNwYWNlRm9yKEpTQzo6Vk0mIHZtKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YnJpZGdlL3J1bnRpbWVfYXJyYXkuaCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX2Fy
cmF5LmgKaW5kZXggM2Y0NWRlMzI0YWU2MjhmN2VjZDllMzU3NDRkYzEyZmVkODM4MDgwYy4uN2Ri
YWQ5ZWI3Mzk4Y2FkMmE2YjVmZWM4ZTMwMWNlNWIyYzVmMjc1OSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfYXJyYXkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlk
Z2UvcnVudGltZV9hcnJheS5oCkBAIC0yNyw2ICsyNyw3IEBACiAjZGVmaW5lIFJVTlRJTUVfQVJS
QVlfSF8KIAogI2luY2x1ZGUgIkJyaWRnZUpTQy5oIgorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMu
aCIKICNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9B
cnJheVByb3RvdHlwZS5oPgogCkBAIC0zNyw2ICszOCw3IEBAIGNsYXNzIFJ1bnRpbWVBcnJheSBm
aW5hbCA6IHB1YmxpYyBKU0FycmF5IHsKICAgICB1c2luZyBCYXNlID0gSlNBcnJheTsKICAgICBz
dGF0aWMgY29uc3RleHByIHVuc2lnbmVkIFN0cnVjdHVyZUZsYWdzID0gQmFzZTo6U3RydWN0dXJl
RmxhZ3MgfCBPdmVycmlkZXNHZXRPd25Qcm9wZXJ0eVNsb3QgfCBPdmVycmlkZXNHZXRPd25Qcm9w
ZXJ0eU5hbWVzIHwgT3ZlcnJpZGVzUHV0IHwgSW50ZXJjZXB0c0dldE93blByb3BlcnR5U2xvdEJ5
SW5kZXhFdmVuV2hlbkxlbmd0aElzTm90WmVybzsKICAgICBzdGF0aWMgY29uc3RleHByIGJvb2wg
bmVlZHNEZXN0cnVjdGlvbiA9IHRydWU7CisgICAgc3RhdGljIGNvbnN0ZXhwciBXZWJDb3JlOjpE
T01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IFdlYkNvcmU6OkRPTVN0cnVjdHVyZUlEOjpS
dW50aW1lQXJyYXk7CiAKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBDZWxsVHlwZSwgSlNDOjpTdWJz
cGFjZUFjY2Vzcz4KICAgICBzdGF0aWMgSlNDOjpHQ0NsaWVudDo6SXNvU3Vic3BhY2UqIHN1YnNw
YWNlRm9yKEpTQzo6Vk0mIHZtKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1
bnRpbWVfb2JqZWN0LmggYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9vYmplY3QuaApp
bmRleCAyYzM2YzBkOGU4NjkxNjVhOGY4MDE1ZGFjODY1ZWE4N2I1ODUyODhiLi42YmFkNzI5MzI3
YzMwNmJhNmZjNDQzNjNlMGNhMDc1YjJhN2QwNjFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9icmlkZ2UvcnVudGltZV9vYmplY3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVu
dGltZV9vYmplY3QuaApAQCAtMjcsNiArMjcsNyBAQAogI2RlZmluZSBLSlNfUlVOVElNRV9PQkpF
Q1RfSAogCiAjaW5jbHVkZSAiQnJpZGdlSlNDLmgiCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5o
IgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pTR2xvYmFsT2JqZWN0Lmg+CiAKIG5hbWVzcGFj
ZSBKU0MgewpAQCAtMzksNiArNDAsNyBAQCBjbGFzcyBXRUJDT1JFX0VYUE9SVCBSdW50aW1lT2Jq
ZWN0IDogcHVibGljIEpTTm9uRmluYWxPYmplY3QgewogICAgIHVzaW5nIEJhc2UgPSBKU05vbkZp
bmFsT2JqZWN0OwogICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgU3RydWN0dXJlRmxhZ3Mg
PSBCYXNlOjpTdHJ1Y3R1cmVGbGFncyB8IE92ZXJyaWRlc0dldE93blByb3BlcnR5U2xvdCB8IE92
ZXJyaWRlc0dldE93blByb3BlcnR5TmFtZXMgfCBPdmVycmlkZXNHZXRDYWxsRGF0YSB8IE92ZXJy
aWRlc1B1dCB8IEdldE93blByb3BlcnR5U2xvdE1heUJlV3JvbmdBYm91dERvbnRFbnVtOwogICAg
IHN0YXRpYyBjb25zdGV4cHIgYm9vbCBuZWVkc0Rlc3RydWN0aW9uID0gdHJ1ZTsKKyAgICBzdGF0
aWMgY29uc3RleHByIFdlYkNvcmU6OkRPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gV2Vi
Q29yZTo6RE9NU3RydWN0dXJlSUQ6OlJ1bnRpbWVPYmplY3Q7CiAKICAgICB0ZW1wbGF0ZTx0eXBl
bmFtZSBDZWxsVHlwZSwgSlNDOjpTdWJzcGFjZUFjY2Vzcz4KICAgICBzdGF0aWMgR0NDbGllbnQ6
Oklzb1N1YnNwYWNlKiBzdWJzcGFjZUZvcihKU0M6OlZNJiB2bSkK
</data>
<flag name="commit-queue"
          id="480157"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452949</attachid>
            <date>2022-02-23 01:10:36 -0800</date>
            <delta_ts>2022-02-23 01:51:14 -0800</delta_ts>
            <desc>WIP</desc>
            <filename>bug-233959-20220223011035.patch</filename>
            <type>text/plain</type>
            <size>136140</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMzQ2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzA3NDU1YzI1M2I5ZmM3
NjkwYzJmNWEwNGFmMDAxMzBjYzgzNzgzZi4uNzczMjFlNjc0ZmRhZTQwNmNlYmQxMmIzZmVjY2Mx
NTM5NDNlZDJmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyOSBAQAorMjAyMi0wMi0yMyAgWXVz
dWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBET01TdHJ1Y3R1
cmVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzM5
NTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENN
YWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0
OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogSGVhZGVycy5jbWFr
ZToKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
SlNET01HbG9iYWxPYmplY3Q6OkpTRE9NR2xvYmFsT2JqZWN0KToKKyAgICAgICAgKFdlYkNvcmU6
OkpTRE9NR2xvYmFsT2JqZWN0Ojp2aXNpdENoaWxkcmVuSW1wbCk6CisgICAgICAgICogYmluZGlu
Z3MvanMvSlNET01HbG9iYWxPYmplY3QuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUds
b2JhbE9iamVjdElubGluZXMuaDoKKyAgICAgICAgKFdlYkNvcmU6OmdldERPTVN0cnVjdHVyZSk6
CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01XcmFwcGVyQ2FjaGUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Z2V0Q2FjaGVkRE9NU3RydWN0dXJlKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OmNhY2hlRE9NU3RydWN0dXJlKTogRGVsZXRlZC4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9K
U0RPTVdyYXBwZXJDYWNoZS5oOgorICAgICAgICAoV2ViQ29yZTo6Z2V0RE9NU3RydWN0dXJlKTog
RGVsZXRlZC4KKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5k
bGVJdGVyYXRvci5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpT
LnBtOgorICAgICAgICAoR2VuZXJhdGVIZWFkZXIpOgorICAgICAgICAoR2VuZXJhdGVJdGVyYWJs
ZURlZmluaXRpb24pOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvcHJlcHJvY2Vzcy1pZGxz
LnBsOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RPTVdpbmRvdy5oOgor
ICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RlZGljYXRlZFdvcmtlckdsb2Jh
bFNjb3BlLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFN0
YXIuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNFeHBvc2VkVG9Xb3Jr
ZXJBbmRXaW5kb3cuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNQYWlu
dFdvcmtsZXRHbG9iYWxTY29wZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGUuaDoKKyAgICAgICAgKiBiaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZS5oOgorICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0aW9ucy5oOgorICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyLmg6
CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxUcmFjZXIuaDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNCdWls
dGluQ29uc3RydWN0b3IuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0Q29uZGl0aW9uYWxJbmNsdWRlcy5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlLmg6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdERPTUpJVC5oOgorICAgICAgICAqIGJpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OLmg6CisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZC5oOgorICAg
ICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJl
Y3RJbmhlcml0YW5jZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3REZWZhdWx0VG9KU09OSW5oZXJpdC5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsLmg6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1
dGUuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RG9tYWluU2Vj
dXJpdHkuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxl
ZEJ5U2V0dGluZy5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RF
bmFibGVkRm9yQ29udGV4dC5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RFdmVudENvbnN0cnVjdG9yLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEV2ZW50VGFyZ2V0Lmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEV4Y2VwdGlvbi5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZS5oOgorICAgICAgICAqIGJpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHbG9iYWxPYmplY3QuaDoKKyAgICAgICAgKiBiaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllci5oOgor
ICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb24uaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmg6CisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpqc1Rl
c3RJbnRlcmZhY2VQcm90b3R5cGVGdW5jdGlvbl9lbnRyaWVzQ2FsbGVyKToKKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlLmg6CisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlLmg6
CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEl0ZXJhYmxlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OmpzVGVzdEl0ZXJhYmxlUHJvdG90eXBlRnVuY3Rpb25fZW50cmll
c0NhbGxlcik6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEl0ZXJh
YmxlLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRp
bkNvbnN0cnVjdG9yLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dExlZ2FjeUZhY3RvcnlGdW5jdGlvbi5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdC5oOgorICAgICAgICAqIGJpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmg6CisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2UuaDoKKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0
aW9ucy5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFu
ZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uaDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVk
U2V0dGVyV2l0aElkZW50aWZpZXIuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyLmg6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uLmg6Cisg
ICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldpdGhJ
ZGVudGlmaWVyLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5h
bWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGguaDoKKyAgICAgICAgKiBiaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIuaDoKKyAgICAg
ICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRp
Zmllci5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNl
dHRlck5vSWRlbnRpZmllci5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmg6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIuaDoKKyAgICAg
ICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhl
ZEdldHRlci5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyLmg6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJ
bnMuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0
ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzLmg6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJv
cGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZXNwYWNlT2JqZWN0Lmg6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6anNU
ZXN0Tm9kZVByb3RvdHlwZUZ1bmN0aW9uX2VudHJpZXNDYWxsZXIpOgorICAgICAgICAqIGJpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmg6CisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE9iai5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbC5oOgorICAgICAgICAqIGJpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmg6CisgICAgICAgICog
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRo
U2VxdWVuY2UuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UGx1
Z2luSW50ZXJmYWNlLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dFByb21pc2VSZWplY3Rpb25FdmVudC5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RSZWFkT25seU1hcExpa2UuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlTZXRMaWtlLmg6CisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdC5oOgorICAgICAgICAqIGJp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZh
Y2UuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2V0TGlrZS5o
OgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlV2l0aE92
ZXJyaWRkZW5PcGVyYXRpb25zLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFN0cmluZ2lmaWVyLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uLmg6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24uaDoKKyAg
ICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRp
b25JbXBsZW1lbnRlZEFzLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZy5oOgorICAgICAgICAqIGJpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlLmg6
CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVh
ZFdyaXRlQXR0cmlidXRlLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdFRhZ2dlZFdyYXBwZXIuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0VHlwZWRlZnMuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNX
b3JrZXJHbG9iYWxTY29wZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1dvcmtsZXRHbG9iYWxTY29wZS5oOgorICAgICAgICAqIGJyaWRnZS9vYmpjL09iakNSdW50aW1l
T2JqZWN0Lmg6CisgICAgICAgICogYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5tbToKKyAgICAg
ICAgKEpTQzo6QmluZGluZ3M6Ok9iamNJbnN0YW5jZTo6Z2V0TWV0aG9kKToKKyAgICAgICAgKiBi
cmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUuaDoKKyAgICAgICAgKiBicmlkZ2UvcnVudGltZV9hcnJh
eS5oOgorICAgICAgICAqIGJyaWRnZS9ydW50aW1lX29iamVjdC5oOgorCiAyMDIyLTAyLTIyICBD
aHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgU2hhcmUgbW9yZSBjb2Rl
IGJldHdlZW4gZGlzcGF0Y2hTZXNzaW9uU3RvcmFnZUV2ZW50cygpIGFuZCBkaXNwYXRjaExvY2Fs
U3RvcmFnZUV2ZW50cygpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4
dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IDJiYjgyOWNkNTliOGMwNzVl
MDM2NjU1YzIzN2I4NTAxNDgxYzRiMmUuLjIzNTRlOTQ3MjE0ZDMyN2U1NTkyNmI3ZDM1YzBmNGQx
ZTVkNzM5YzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CisrKyBi
L1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0yMDg3LDYgKzIwODcsNyBAQCBzZXQo
U1VQUExFTUVOVEFMX0RFUEVOREVOQ1lfRklMRSAke1dlYkNvcmVfREVSSVZFRF9TT1VSQ0VTX0RJ
Un0vc3VwcGxlbWVudGFsX2RlcAogc2V0KElTT19TVUJTUEFDRVNfSEVBREVSX0ZJTEUgJHtXZWJD
b3JlX0RFUklWRURfU09VUkNFU19ESVJ9L0RPTUlzb1N1YnNwYWNlcy5oKQogc2V0KENMSUVOVF9J
U09fU1VCU1BBQ0VTX0hFQURFUl9GSUxFICR7V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElSfS9E
T01DbGllbnRJc29TdWJzcGFjZXMuaCkKIHNldChDT05TVFJVQ1RPUlNfSEVBREVSX0ZJTEUgJHtX
ZWJDb3JlX0RFUklWRURfU09VUkNFU19ESVJ9L0RPTUNvbnN0cnVjdG9ycy5oKQorc2V0KFNUUlVD
VFVSRVNfSEVBREVSX0ZJTEUgJHtXZWJDb3JlX0RFUklWRURfU09VUkNFU19ESVJ9L0RPTVN0cnVj
dHVyZXMuaCkKIHNldChXSU5ET1dfQ09OU1RSVUNUT1JTX0ZJTEUgJHtXZWJDb3JlX0RFUklWRURf
U09VUkNFU19ESVJ9L0RPTVdpbmRvd0NvbnN0cnVjdG9ycy5pZGwpCiBzZXQoV09SS0VSR0xPQkFM
U0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUgJHtXZWJDb3JlX0RFUklWRURfU09VUkNFU19ESVJ9L1dv
cmtlckdsb2JhbFNjb3BlQ29uc3RydWN0b3JzLmlkbCkKIHNldChTSEFET1dSRUFMTUdMT0JBTFND
T1BFX0NPTlNUUlVDVE9SU19GSUxFICR7V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElSfS9TaGFk
b3dSZWFsbUdsb2JhbFNjb3BlQ29uc3RydWN0b3JzLmlkbCkKQEAgLTIyNzQsMTEgKzIyNzUsMTIg
QEAgR0VORVJBVEVfQklORElOR1MoV2ViQ29yZUJpbmRpbmdzCiAgICAgR0VORVJBVE9SIEpTCiAg
ICAgU1VQUExFTUVOVEFMX0RFUEZJTEUgJHtTVVBQTEVNRU5UQUxfREVQRU5ERU5DWV9GSUxFfQog
ICAgIFBQX0VYVFJBX09VVFBVVAotICAgICR7SVNPX1NVQlNQQUNFU19IRUFERVJfRklMRX0gJHtD
TElFTlRfSVNPX1NVQlNQQUNFU19IRUFERVJfRklMRX0gJHtDT05TVFJVQ1RPUlNfSEVBREVSX0ZJ
TEV9ICR7V0lORE9XX0NPTlNUUlVDVE9SU19GSUxFfSAke1dPUktFUkdMT0JBTFNDT1BFX0NPTlNU
UlVDVE9SU19GSUxFfSAke1NIQURPV1JFQUxNR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEV9
ICR7REVESUNBVEVEV09SS0VSR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEV9CisgICAgJHtJ
U09fU1VCU1BBQ0VTX0hFQURFUl9GSUxFfSAke0NMSUVOVF9JU09fU1VCU1BBQ0VTX0hFQURFUl9G
SUxFfSAke0NPTlNUUlVDVE9SU19IRUFERVJfRklMRX0gJHtTVFJVQ1RVUkVTX0hFQURFUl9GSUxF
fSAke1dJTkRPV19DT05TVFJVQ1RPUlNfRklMRX0gJHtXT1JLRVJHTE9CQUxTQ09QRV9DT05TVFJV
Q1RPUlNfRklMRX0gJHtTSEFET1dSRUFMTUdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFfSAk
e0RFRElDQVRFRFdPUktFUkdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFfQogICAgIFBQX0VY
VFJBX0FSR1MKICAgICAgICAgLS1pc29TdWJzcGFjZXNIZWFkZXJGaWxlICR7SVNPX1NVQlNQQUNF
U19IRUFERVJfRklMRX0KICAgICAgICAgLS1jbGllbnRJU09TdWJzcGFjZXNIZWFkZXJGaWxlICR7
Q0xJRU5UX0lTT19TVUJTUEFDRVNfSEVBREVSX0ZJTEV9CiAgICAgICAgIC0tY29uc3RydWN0b3Jz
SGVhZGVyRmlsZSAke0NPTlNUUlVDVE9SU19IRUFERVJfRklMRX0KKyAgICAgICAgLS1zdHJ1Y3R1
cmVzSGVhZGVyRmlsZSAke1NUUlVDVFVSRVNfSEVBREVSX0ZJTEV9CiAgICAgICAgIC0td2luZG93
Q29uc3RydWN0b3JzRmlsZSAke1dJTkRPV19DT05TVFJVQ1RPUlNfRklMRX0KICAgICAgICAgLS13
b3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJHtXT1JLRVJHTE9CQUxTQ09QRV9DT05T
VFJVQ1RPUlNfRklMRX0KICAgICAgICAgLS1zaGFkb3dSZWFsbUdsb2JhbFNjb3BlQ29uc3RydWN0
b3JzRmlsZSAke1NIQURPV1JFQUxNR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEV9CkBAIC0y
Mjg5LDYgKzIyOTEsOCBAQCBHRU5FUkFURV9CSU5ESU5HUyhXZWJDb3JlQmluZGluZ3MKICAgICAg
ICAgLS1wYWludFdvcmtsZXRHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJHtQQUlOVFdPUktM
RVRHTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRX0KICAgICAgICAgLS1hdWRpb1dvcmtsZXRH
bG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJHtBVURJT1dPUktMRVRHTE9CQUxTQ09QRV9DT05T
VFJVQ1RPUlNfRklMRX0pCiBsaXN0KEFQUEVORCBXZWJDb3JlX0RFUEVOREVOQ0lFUyBXZWJDb3Jl
QmluZGluZ3MpCitsaXN0KEFQUEVORCBXZWJDb3JlX1NPVVJDRVMgJHtDT05TVFJVQ1RPUlNfSEVB
REVSX0ZJTEV9KQorbGlzdChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTICR7U1RSVUNUVVJFU19IRUFE
RVJfRklMRX0pCiAKIGlmIChFTkFCTEVfV0VCSU5TUEVDVE9SVUkpCiAgICAgbGlzdChBUFBFTkQg
V2ViQ29yZV9ERVBFTkRFTkNJRVMgV2ViSW5zcGVjdG9yVUkpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJDb3Jl
L0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0CmluZGV4IDZjMjA1ZTcxZGE0Zjk3MTk1
YzM3YWJkYTJlOWJkNWFjMWMzMmRjMDEuLjVlODlmNTFhMzQ5OTJlYjdiNTk4ZTJmM2EzZGNjOGRh
YjkwZGIwYjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1
dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54
Y2ZpbGVsaXN0CkBAIC0xMyw2ICsxMyw3IEBAICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVk
U291cmNlcy9XZWJDb3JlL0RPTUNsaWVudElzb1N1YnNwYWNlcy5oCiAkKEJVSUxUX1BST0RVQ1RT
X0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9ET01Db25zdHJ1Y3RvcnMuaAogJChCVUlMVF9Q
Uk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvRE9NSXNvU3Vic3BhY2VzLmgKICQo
QlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0RPTUpJVEFic3RyYWN0
SGVhcFJlcG9zaXRvcnkuaAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvRE9NU3RydWN0dXJlcy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9ET01XaW5kb3dDb25zdHJ1Y3RvcnMuaWRsCiAkKEJVSUxUX1BST0RVQ1RTX0RJ
UikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9EZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZUNvbnN0
cnVjdG9ycy5pZGwKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0V2ZW50RmFjdG9yeS5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3Vy
Y2VzLm1ha2UgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IDI2ODAz
MjcwZDY3YTc3NDU1OWVjZjIzZDc1YjZiYjA1YjA2OTM4ODUuLjE4ZjdiMzYzODBiYzMzNWNmZmEw
Mjk3MjY1NjNhYzBiNDcxMTkyMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRT
b3VyY2VzLm1ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAt
MjA4MCw2ICsyMDgwLDcgQEAgU1VQUExFTUVOVEFMX01BS0VGSUxFX0RFUFMgPSBTdXBwbGVtZW50
YWxEZXBlbmRlbmNpZXMuZGVwCiBJU09fU1VCU1BBQ0VTX0hFQURFUl9GSUxFID0gRE9NSXNvU3Vi
c3BhY2VzLmgKIENMSUVOVF9JU09fU1VCU1BBQ0VTX0hFQURFUl9GSUxFID0gRE9NQ2xpZW50SXNv
U3Vic3BhY2VzLmgKIENPTlNUUlVDVE9SU19IRUFERVJfRklMRSA9IERPTUNvbnN0cnVjdG9ycy5o
CitTVFJVQ1RVUkVTX0hFQURFUl9GSUxFID0gRE9NU3RydWN0dXJlcy5oCiBXSU5ET1dfQ09OU1RS
VUNUT1JTX0ZJTEUgPSBET01XaW5kb3dDb25zdHJ1Y3RvcnMuaWRsCiBXT1JLRVJHTE9CQUxTQ09Q
RV9DT05TVFJVQ1RPUlNfRklMRSA9IFdvcmtlckdsb2JhbFNjb3BlQ29uc3RydWN0b3JzLmlkbAog
U0hBRE9XUkVBTE1HTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRSA9IFNoYWRvd1JlYWxtR2xv
YmFsU2NvcGVDb25zdHJ1Y3RvcnMuaWRsCkBAIC0yMDk3LDYgKzIwOTgsNyBAQCBJRExfSU5URVJN
RURJQVRFX0ZJTEVTID0gXAogICAgICQoSVNPX1NVQlNQQUNFU19IRUFERVJfRklMRSkgXAogICAg
ICQoQ0xJRU5UX0lTT19TVUJTUEFDRVNfSEVBREVSX0ZJTEUpIFwKICAgICAkKENPTlNUUlVDVE9S
U19IRUFERVJfRklMRSkgXAorICAgICQoU1RSVUNUVVJFU19IRUFERVJfRklMRSkgXAogICAgICQo
V0lORE9XX0NPTlNUUlVDVE9SU19GSUxFKSBcCiAgICAgJChXT1JLRVJHTE9CQUxTQ09QRV9DT05T
VFJVQ1RPUlNfRklMRSkgXAogICAgICQoU0hBRE9XUkVBTE1HTE9CQUxTQ09QRV9DT05TVFJVQ1RP
UlNfRklMRSkgXApAQCAtMjExMCw3ICsyMTEyLDcgQEAgSURMX0lOVEVSTUVESUFURV9QQVRURVJO
UyA9ICQoc3Vic3QgLiwlLCQoSURMX0lOVEVSTUVESUFURV9GSUxFUykpCiAKICQoSURMX0lOVEVS
TUVESUFURV9QQVRURVJOUykgOiAkKFBSRVBST0NFU1NfSURMU19TQ1JJUFRTKSAkKElETF9BVFRS
SUJVVEVTX0ZJTEUpICQoSlNfQklORElOR19JRExTKSAkKEZFQVRVUkVfQU5EX1BMQVRGT1JNX0RF
RklORV9ERVBFTkRFTkNJRVMpCiAJJChzaGVsbCBlY2hvICQoSlNfQklORElOR19JRExTKSB8IHRy
ICIgIiAiXG4iID4gSURMRmlsZU5hbWVzTGlzdC50eHQpCi0JJChQRVJMKSAkKFdlYkNvcmUpL2Jp
bmRpbmdzL3NjcmlwdHMvcHJlcHJvY2Vzcy1pZGxzLnBsIC0tZGVmaW5lcyAiJChGRUFUVVJFX0FO
RF9QTEFURk9STV9ERUZJTkVTKSBMQU5HVUFHRV9KQVZBU0NSSVBUIiAtLWlkbEZpbGVOYW1lc0xp
c3QgSURMRmlsZU5hbWVzTGlzdC50eHQgLS1pZGxBdHRyaWJ1dGVzRmlsZSAkKElETF9BVFRSSUJV
VEVTX0ZJTEUpIC0tc3VwcGxlbWVudGFsRGVwZW5kZW5jeUZpbGUgJChTVVBQTEVNRU5UQUxfREVQ
RU5ERU5DWV9GSUxFKSAtLWlzb1N1YnNwYWNlc0hlYWRlckZpbGUgJChJU09fU1VCU1BBQ0VTX0hF
QURFUl9GSUxFKSAtLWNsaWVudElTT1N1YnNwYWNlc0hlYWRlckZpbGUgJChDTElFTlRfSVNPX1NV
QlNQQUNFU19IRUFERVJfRklMRSkgLS1jb25zdHJ1Y3RvcnNIZWFkZXJGaWxlICQoQ09OU1RSVUNU
T1JTX0hFQURFUl9GSUxFKSAtLXdpbmRvd0NvbnN0cnVjdG9yc0ZpbGUgJChXSU5ET1dfQ09OU1RS
VUNUT1JTX0ZJTEUpIC0td29ya2VyR2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnNGaWxlICQoV09SS0VS
R0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUpIC0tc2hhZG93UmVhbG1HbG9iYWxTY29wZUNv
bnN0cnVjdG9yc0ZpbGUgJChTSEFET1dSRUFMTUdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxF
KSAtLWRlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmlsZSAkKERFRElDQVRF
RFdPUktFUkdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFKSAtLXNlcnZpY2VXb3JrZXJHbG9i
YWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJChTRVJWSUNFV09SS0VSR0xPQkFMU0NPUEVfQ09OU1RS
VUNUT1JTX0ZJTEUpIC0tc2hhcmVkV29ya2VyR2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnNGaWxlICQo
U0hBUkVEV09SS0VSR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUpIC0td29ya2xldEdsb2Jh
bFNjb3BlQ29uc3RydWN0b3JzRmlsZSAkKFdPUktMRVRHTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNf
RklMRSkgLS1wYWludFdvcmtsZXRHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJChQQUlOVFdP
UktMRVRHTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRSkgLS1hdWRpb1dvcmtsZXRHbG9iYWxT
Y29wZUNvbnN0cnVjdG9yc0ZpbGUgJChBVURJT1dPUktMRVRHTE9CQUxTQ09QRV9DT05TVFJVQ1RP
UlNfRklMRSkgLS1zdXBwbGVtZW50YWxNYWtlZmlsZURlcHMgJChTVVBQTEVNRU5UQUxfTUFLRUZJ
TEVfREVQUykKKwkkKFBFUkwpICQoV2ViQ29yZSkvYmluZGluZ3Mvc2NyaXB0cy9wcmVwcm9jZXNz
LWlkbHMucGwgLS1kZWZpbmVzICIkKEZFQVRVUkVfQU5EX1BMQVRGT1JNX0RFRklORVMpIExBTkdV
QUdFX0pBVkFTQ1JJUFQiIC0taWRsRmlsZU5hbWVzTGlzdCBJRExGaWxlTmFtZXNMaXN0LnR4dCAt
LWlkbEF0dHJpYnV0ZXNGaWxlICQoSURMX0FUVFJJQlVURVNfRklMRSkgLS1zdXBwbGVtZW50YWxE
ZXBlbmRlbmN5RmlsZSAkKFNVUFBMRU1FTlRBTF9ERVBFTkRFTkNZX0ZJTEUpIC0taXNvU3Vic3Bh
Y2VzSGVhZGVyRmlsZSAkKElTT19TVUJTUEFDRVNfSEVBREVSX0ZJTEUpIC0tY2xpZW50SVNPU3Vi
c3BhY2VzSGVhZGVyRmlsZSAkKENMSUVOVF9JU09fU1VCU1BBQ0VTX0hFQURFUl9GSUxFKSAtLWNv
bnN0cnVjdG9yc0hlYWRlckZpbGUgJChDT05TVFJVQ1RPUlNfSEVBREVSX0ZJTEUpIC0tc3RydWN0
dXJlc0hlYWRlckZpbGUgJChTVFJVQ1RVUkVTX0hFQURFUl9GSUxFKSAtLXdpbmRvd0NvbnN0cnVj
dG9yc0ZpbGUgJChXSU5ET1dfQ09OU1RSVUNUT1JTX0ZJTEUpIC0td29ya2VyR2xvYmFsU2NvcGVD
b25zdHJ1Y3RvcnNGaWxlICQoV09SS0VSR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUpIC0t
c2hhZG93UmVhbG1HbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJChTSEFET1dSRUFMTUdMT0JB
TFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFKSAtLWRlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlQ29u
c3RydWN0b3JzRmlsZSAkKERFRElDQVRFRFdPUktFUkdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19G
SUxFKSAtLXNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJChTRVJWSUNF
V09SS0VSR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUpIC0tc2hhcmVkV29ya2VyR2xvYmFs
U2NvcGVDb25zdHJ1Y3RvcnNGaWxlICQoU0hBUkVEV09SS0VSR0xPQkFMU0NPUEVfQ09OU1RSVUNU
T1JTX0ZJTEUpIC0td29ya2xldEdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmlsZSAkKFdPUktMRVRH
TE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRSkgLS1wYWludFdvcmtsZXRHbG9iYWxTY29wZUNv
bnN0cnVjdG9yc0ZpbGUgJChQQUlOVFdPUktMRVRHTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklM
RSkgLS1hdWRpb1dvcmtsZXRHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJChBVURJT1dPUktM
RVRHTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRSkgLS1zdXBwbGVtZW50YWxNYWtlZmlsZURl
cHMgJChTVVBQTEVNRU5UQUxfTUFLRUZJTEVfREVQUykKIAogIwogIyBFbWl0IHRoZSBydWxlcyB0
byBnZW5lcmF0ZSBiaW5kaW5ncyBmcm9tIElETCBmaWxlcy4gTm90ZSB0aGF0IHRoZXJlIGFyZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3Jl
L0hlYWRlcnMuY21ha2UKaW5kZXggZjFjZWRiOWM3NWJjZjk3NzdjMGZjODlmNTY4OTdlMjNjOGEy
N2JkMC4uYjAyMmMyZTcwOTVmNWJlNjk5MDlhZGJkYTkzYWQ3NmY3MWQyNjNmMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFk
ZXJzLmNtYWtlCkBAIC0yMDQxLDYgKzIwNDEsOCBAQCBzZXQoV2ViQ29yZV9QUklWQVRFX0ZSQU1F
V09SS19IRUFERVJTCiAKICAgICAke1dlYkNvcmVfREVSSVZFRF9TT1VSQ0VTX0RJUn0vQ1NTUHJv
cGVydHlOYW1lcy5oCiAgICAgJHtXZWJDb3JlX0RFUklWRURfU09VUkNFU19ESVJ9L0NTU1ZhbHVl
S2V5d29yZHMuaAorICAgICR7V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElSfS9ET01Db25zdHJ1
Y3RvcnMuaAorICAgICR7V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElSfS9ET01TdHJ1Y3R1cmVz
LmgKICAgICAke1dlYkNvcmVfREVSSVZFRF9TT1VSQ0VTX0RJUn0vRXZlbnRJbnRlcmZhY2VzLmgK
ICAgICAke1dlYkNvcmVfREVSSVZFRF9TT1VSQ0VTX0RJUn0vRXZlbnRUYXJnZXRJbnRlcmZhY2Vz
LmgKICAgICAke1dlYkNvcmVfREVSSVZFRF9TT1VSQ0VTX0RJUn0vSFRNTEVsZW1lbnRUeXBlSGVs
cGVycy5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKaW5kZXggYmMzNmZjZmEwMTEwZDFlODEyYTQ1NjE0ZGMxZGU2ZDUzMTE0Y2MzMi4uNTJh
YTE0NGViY2Y2MjcwOTU5OTgwYzI0Y2EyZDBlODM0ODhjODJjYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNTI4MCw3ICs1Mjgw
LDcgQEAKIAkJRTMxNTBFQTcxREE3MjE5MzAwMTk0MDEyIC8qIERPTUpJVEhlbHBlcnMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzMTUwRUE1MURBNzIx
OEQwMDE5NDAxMiAvKiBET01KSVRIZWxwZXJzLmggKi87IH07CiAJCUUzMjAxQzFBMUY4RTgyMTMw
MDc2QTAzMiAvKiBNb2R1bGVGZXRjaFBhcmFtZXRlcnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzOEQwNjA5MUY4RTgxMTkwMDY0OUNGMiAvKiBNb2R1
bGVGZXRjaFBhcmFtZXRlcnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OwogCQlFMzIzQ0ZGQTFFNUFGNkFGMDBGMEI0QTAgLyogSlNET01Db252ZXJ0UHJv
bWlzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTMy
M0NGRjkxRTVBRjZBNTAwRjBCNEEwIC8qIEpTRE9NQ29udmVydFByb21pc2UuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwotCQlFMzNEMENCRTI2NzJFMUI2
MDA3NEUxODMgLyogSlNET01HbG9iYWxPYmplY3RJbmxpbmVzLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzNEMENCQzI2NzJFMUIzMDA3NEUxODMgLyog
SlNET01HbG9iYWxPYmplY3RJbmxpbmVzLmggKi87IH07CisJCUUzM0QwQ0JFMjY3MkUxQjYwMDc0
RTE4MyAvKiBKU0RPTUdsb2JhbE9iamVjdElubGluZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzM0QwQ0JDMjY3MkUxQjMwMDc0RTE4MyAvKiBKU0RP
TUdsb2JhbE9iamVjdElubGluZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwogCQlFMzQzMkRFNDI1RDM3N0UzMDA1OEU2MTIgLyogV29ya2VyTW9kdWxl
U2NyaXB0TG9hZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBFMzQzMkRFMDI1RDM3N0UyMDA1OEU2MTIgLyogV29ya2VyTW9kdWxlU2NyaXB0TG9hZGVy
LmggKi87IH07CiAJCUUzNDdFNUZBMjVENEYwMDAwMEYxN0E1QyAvKiBXb3JrZXJTY3JpcHRGZXRj
aGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzQ3
RTVGODI1RDRGMDAwMDBGMTdBNUMgLyogV29ya2VyU2NyaXB0RmV0Y2hlci5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUzNTE4OEI0MjVEMzg3Q0Yw
MEE3N0FGMyAvKiBNb2R1bGVTY3JpcHRMb2FkZXJDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzNTE4OEIzMjVEMzg3Q0YwMEE3N0FGMyAvKiBN
b2R1bGVTY3JpcHRMb2FkZXJDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwpAQCAtNTMwOCw2ICs1MzA4LDggQEAKIAkJRTNDOTlBMDkxREMzRDQx
QzAwNzk0QUQzIC8qIERPTUpJVENoZWNrRE9NLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFM0M5OUEwODFEQzNENDE3MDA3OTRBRDMgLyogRE9NSklUQ2hl
Y2tET00uaCAqLzsgfTsKIAkJRTNDOUFFQ0IyMTEzMTQ5OTAwNDE5QjkyIC8qIEpTTWljcm90YXNr
Q2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEUzQzlBRUM5MjExMzE0NzQwMDQxOUI5MiAvKiBKU01pY3JvdGFza0NhbGxiYWNrLmggKi87IH07
CiAJCUUzQ0EwQkZDMjY3M0Y0N0MwMDlGREQ2NyAvKiBKU0RPTUJpbmRpbmdTZWN1cml0eUlubGlu
ZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzQ0Ew
QkZBMjY3M0Y0NzgwMDlGREQ2NyAvKiBKU0RPTUJpbmRpbmdTZWN1cml0eUlubGluZXMuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlFM0RFRjQ0QjI3
QzYyMEYxMDA3NThBQjggLyogRE9NQ29uc3RydWN0b3JzLmggaW4gQ29weSBHZW5lcmF0ZWQgSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0ZFMkVDNzI3QzYxRjhF
MDA5NTExNUMgLyogRE9NQ29uc3RydWN0b3JzLmggKi87IH07CisJCUUzREVGNDRDMjdDNjIwRjkw
MDc1OEFCOCAvKiBET01TdHJ1Y3R1cmVzLmggaW4gQ29weSBHZW5lcmF0ZWQgSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0ZFMkVDODI3QzYxRjhFMDA5NTExNUMg
LyogRE9NU3RydWN0dXJlcy5oICovOyB9OwogCQlFM0U0RTJBODFFM0IxNzEwMDAyM0JCOEEgLyog
U2NyaXB0RWxlbWVudENhY2hlZFNjcmlwdEZldGNoZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzRTRFMkE2MUUzQjE2RkMwMDIzQkI4QSAvKiBTY3Jp
cHRFbGVtZW50Q2FjaGVkU2NyaXB0RmV0Y2hlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUzRkEzODY0MUQ3MTgxMkQwMEFBNTk1MCAvKiBQZW5k
aW5nU2NyaXB0Q2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFM0ZBMzg2MTFENzE2RTc2MDBBQTU5NTAgLyogUGVuZGluZ1NjcmlwdENsaWVudC5o
ICovOyB9OwogCQlFNDAxQzI3NTE3Q0U1M0VDMDBDNDFBMzUgLyogRWxlbWVudEl0ZXJhdG9yQXNz
ZXJ0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RTQwMUMyNzQxN0NFNTNFQzAwQzQxQTM1IC8qIEVsZW1lbnRJdGVyYXRvckFzc2VydGlvbnMuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtNTg0Myw2
ICs1ODQ1LDggQEAKIAkJCWZpbGVzID0gKAogCQkJCTVERjdGNUMyMEYwMUY5MkEwMDUyNkI0QiAv
KiBDU1NQcm9wZXJ0eU5hbWVzLmggaW4gQ29weSBHZW5lcmF0ZWQgSGVhZGVycyAqLywKIAkJCQk3
RDc0MUJEQTE3NzIyNkFBMDA4NTkxNzAgLyogQ1NTVmFsdWVLZXl3b3Jkcy5oIGluIENvcHkgR2Vu
ZXJhdGVkIEhlYWRlcnMgKi8sCisJCQkJRTNERUY0NEIyN0M2MjBGMTAwNzU4QUI4IC8qIERPTUNv
bnN0cnVjdG9ycy5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8sCisJCQkJRTNERUY0NEMy
N0M2MjBGOTAwNzU4QUI4IC8qIERPTVN0cnVjdHVyZXMuaCBpbiBDb3B5IEdlbmVyYXRlZCBIZWFk
ZXJzICovLAogCQkJCUE4RDA2QjM5MEEyNjVEQ0QwMDVFNzIwMyAvKiBIVE1MTmFtZXMuaCBpbiBD
b3B5IEdlbmVyYXRlZCBIZWFkZXJzICovLAogCQkJCTE0MDNCQTBGMDlFQjE4RjkwMDc5N0M3RiAv
KiBKU0RPTVdpbmRvdy5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8sCiAJCQkJMTREQzBE
MzgwOUZFRDA3MzAwN0IwMjM1IC8qIEpTTm9kZS5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMg
Ki8sCkBAIC0xNzM5Nyw2ICsxNzQwMSw4IEBACiAJCUUzRTRFMkE1MUUzQjE2RkMwMDIzQkI4QSAv
KiBTY3JpcHRFbGVtZW50Q2FjaGVkU2NyaXB0RmV0Y2hlci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBTY3JpcHRFbGVtZW50Q2FjaGVkU2NyaXB0RmV0Y2hlci5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUzRTRFMkE2MUUzQjE2RkMwMDIzQkI4QSAv
KiBTY3JpcHRFbGVtZW50Q2FjaGVkU2NyaXB0RmV0Y2hlci5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBTY3JpcHRFbGVtZW50Q2FjaGVkU2NyaXB0RmV0Y2hlci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlFM0ZBMzg2MTFENzE2RTc2MDBBQTU5NTAgLyogUGVuZGlu
Z1NjcmlwdENsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQZW5kaW5n
U2NyaXB0Q2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUzRkUyRUM3MjdD
NjFGOEUwMDk1MTE1QyAvKiBET01Db25zdHJ1Y3RvcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBuYW1lID0gRE9NQ29uc3RydWN0b3JzLmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJD
b3JlL0RPTUNvbnN0cnVjdG9ycy5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9
OworCQlFM0ZFMkVDODI3QzYxRjhFMDA5NTExNUMgLyogRE9NU3RydWN0dXJlcy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBET01TdHJ1Y3R1cmVzLmg7IHBhdGggPSBEZXJpdmVk
U291cmNlcy9XZWJDb3JlL0RPTVN0cnVjdHVyZXMuaDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RV
Q1RTX0RJUjsgfTsKIAkJRTQwMUMyNzQxN0NFNTNFQzAwQzQxQTM1IC8qIEVsZW1lbnRJdGVyYXRv
ckFzc2VydGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRWxlbWVudEl0
ZXJhdG9yQXNzZXJ0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFNDAxRTBB
MzFDM0MwQjgzMDBGMzREMTAgLyogU3R5bGVDaGFuZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU3R5bGVDaGFuZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
RTQwMUUwQTUxQzNDMENGNzAwRjM0RDEwIC8qIFN0eWxlQ2hhbmdlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN0eWxlQ2hhbmdlLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKQEAgLTE5NTMwLDYgKzE5NTM2LDggQEAKIAkJCQlCQzk4NTQ0MzBDRDNEOUQw
MDAwNjlCQzEgLyogV2luZG93ICovLAogCQkJCUE4M0I3OTIyMENDQjAwRjAwMDBCMDgyNSAvKiBY
TUwgKi8sCiAJCQkJQTgzQjc5MEMwQ0NBRkY4MzAwMEIwODI1IC8qIFhQYXRoICovLAorCQkJCUUz
RkUyRUM3MjdDNjFGOEUwMDk1MTE1QyAvKiBET01Db25zdHJ1Y3RvcnMuaCAqLywKKwkJCQlFM0ZF
MkVDODI3QzYxRjhFMDA5NTExNUMgLyogRE9NU3RydWN0dXJlcy5oICovLAogCQkJCUJDMzQ4QkQx
MERCN0Y4MDQwMDRBQkFCQiAvKiBXZWJDb3JlSlNCdWlsdGluSW50ZXJuYWxzLmNwcCAqLywKIAkJ
CQlCQzM0OEJEMjBEQjdGODA0MDA0QUJBQkIgLyogV2ViQ29yZUpTQnVpbHRpbkludGVybmFscy5o
ICovLAogCQkJCUJDMzQ4QkQxMERCN0Y4MDQwMDRBQkFCQSAvKiBXZWJDb3JlSlNCdWlsdGlucy5j
cHAgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUdsb2Jh
bE9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVj
dC5jcHAKaW5kZXggYjI2MjZmZWI0YTA1MzczOGVhN2RlZDE4Mjc3ODY1YzRmODEzNGI1OC4uM2Ew
NjA1NWVmYWNmOTY5NmM5ZDEwMDkyNjJhZTNlMTNkZTg5OTBmOSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNwcApAQCAtMjgsNiArMjgsNyBA
QAogI2luY2x1ZGUgIkpTRE9NR2xvYmFsT2JqZWN0LmgiCiAKICNpbmNsdWRlICJET01Db25zdHJ1
Y3RvcnMuaCIKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiRE9NV2luZG93
LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJGZXRjaFJlc3BvbnNlLmgiCkBA
IC04Nyw2ICs4OCw3IEBAIGNvbnN0IENsYXNzSW5mbyBKU0RPTUdsb2JhbE9iamVjdDo6c19pbmZv
ID0geyAiRE9NR2xvYmFsT2JqZWN0IiwgJkpTR2xvYmFsT2JqZWN0CiBKU0RPTUdsb2JhbE9iamVj
dDo6SlNET01HbG9iYWxPYmplY3QoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmPERP
TVdyYXBwZXJXb3JsZD4mJiB3b3JsZCwgY29uc3QgR2xvYmFsT2JqZWN0TWV0aG9kVGFibGUqIGds
b2JhbE9iamVjdE1ldGhvZFRhYmxlKQogICAgIDogSlNHbG9iYWxPYmplY3Qodm0sIHN0cnVjdHVy
ZSwgZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUpCiAgICAgLCBtX2NvbnN0cnVjdG9ycyhtYWtlVW5p
cXVlPERPTUNvbnN0cnVjdG9ycz4oKSkKKyAgICAsIG1fc3RydWN0dXJlcyhtYWtlVW5pcXVlPERP
TVN0cnVjdHVyZXM+KCkpCiAgICAgLCBtX3dvcmxkKFdURk1vdmUod29ybGQpKQogICAgICwgbV93
b3JsZElzTm9ybWFsKG1fd29ybGQtPmlzTm9ybWFsKCkpCiAgICAgLCBtX2J1aWx0aW5JbnRlcm5h
bEZ1bmN0aW9ucyh2bSkKQEAgLTI5MywxMCArMjk1LDYgQEAgdm9pZCBKU0RPTUdsb2JhbE9iamVj
dDo6dmlzaXRDaGlsZHJlbkltcGwoSlNDZWxsKiBjZWxsLCBWaXNpdG9yJiB2aXNpdG9yKQogICAg
IHsKICAgICAgICAgLy8gVGhlIEdDIHRocmVhZCBoYXMgdG8gZ3JhYiB0aGUgR0MgbG9jayBldmVu
IHRob3VnaCBpdCBpcyBub3QgbXV0YXRpbmcgdGhlIGNvbnRhaW5lcnMuCiAgICAgICAgIExvY2tl
ciBsb2NrZXIgeyB0aGlzT2JqZWN0LT5tX2djTG9jayB9OwotCi0gICAgICAgIGZvciAoYXV0byYg
c3RydWN0dXJlIDogdGhpc09iamVjdC0+bV9zdHJ1Y3R1cmVzLnZhbHVlcygpKQotICAgICAgICAg
ICAgdmlzaXRvci5hcHBlbmQoc3RydWN0dXJlKTsKLQogICAgICAgICBmb3IgKGF1dG8mIGd1YXJk
ZWQgOiB0aGlzT2JqZWN0LT5tX2d1YXJkZWRPYmplY3RzKQogICAgICAgICAgICAgZ3VhcmRlZC0+
dmlzaXRBZ2dyZWdhdGUodmlzaXRvcik7CiAgICAgfQpAQCAtMzA0LDYgKzMwMiw5IEBAIHZvaWQg
SlNET01HbG9iYWxPYmplY3Q6OnZpc2l0Q2hpbGRyZW5JbXBsKEpTQ2VsbCogY2VsbCwgVmlzaXRv
ciYgdmlzaXRvcikKICAgICBmb3IgKGF1dG8mIGNvbnN0cnVjdG9yIDogdGhpc09iamVjdC0+Y29u
c3RydWN0b3JzKCkuYXJyYXkoKSkKICAgICAgICAgdmlzaXRvci5hcHBlbmQoY29uc3RydWN0b3Ip
OwogCisgICAgZm9yIChhdXRvJiBzdHJ1Y3R1cmUgOiB0aGlzT2JqZWN0LT5zdHJ1Y3R1cmVzKCku
YXJyYXkoKSkKKyAgICAgICAgdmlzaXRvci5hcHBlbmQoc3RydWN0dXJlKTsKKwogICAgIHRoaXNP
YmplY3QtPm1fYnVpbHRpbkludGVybmFsRnVuY3Rpb25zLnZpc2l0KHZpc2l0b3IpOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5o
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuaAppbmRleCAw
YTU4ZTdlOWQ2NzFiZWRmNzY2ZmYyYjgzNjc1MDQxMjRjYjFkMWNiLi45MmFiZjk2MGQ0NzlhYTM5
ZDYzZDllZDE2NjdhZTUyNGMwZmI5NWM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTRE9NR2xvYmFsT2JqZWN0LmgKQEAgLTM1LDEyICszNSwxMiBAQAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCiBjbGFzcyBET01Db25zdHJ1Y3RvcnM7CitjbGFzcyBET01TdHJ1Y3R1cmVzOwog
Y2xhc3MgRE9NR3VhcmRlZE9iamVjdDsKIGNsYXNzIEV2ZW50OwogY2xhc3MgRE9NV3JhcHBlcldv
cmxkOwogY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKIAotdXNpbmcgSlNET01TdHJ1Y3R1
cmVNYXAgPSBIYXNoTWFwPGNvbnN0IEpTQzo6Q2xhc3NJbmZvKiwgSlNDOjpXcml0ZUJhcnJpZXI8
SlNDOjpTdHJ1Y3R1cmU+PjsKIHVzaW5nIERPTUd1YXJkZWRPYmplY3RTZXQgPSBIYXNoU2V0PERP
TUd1YXJkZWRPYmplY3QqPjsKIAogY2xhc3MgV0VCQ09SRV9FWFBPUlQgSlNET01HbG9iYWxPYmpl
Y3QgOiBwdWJsaWMgSlNDOjpKU0dsb2JhbE9iamVjdCB7CkBAIC01OSwxNyArNTksMTYgQEAgY2xh
c3MgV0VCQ09SRV9FWFBPUlQgSlNET01HbG9iYWxPYmplY3QgOiBwdWJsaWMgSlNDOjpKU0dsb2Jh
bE9iamVjdCB7CiBwdWJsaWM6CiAgICAgTG9jayYgZ2NMb2NrKCkgV1RGX1JFVFVSTlNfTE9DSyht
X2djTG9jaykgeyByZXR1cm4gbV9nY0xvY2s7IH0KIAotICAgIEpTRE9NU3RydWN0dXJlTWFwJiBz
dHJ1Y3R1cmVzKCkgV1RGX1JFUVVJUkVTX0xPQ0sobV9nY0xvY2spIHsgcmV0dXJuIG1fc3RydWN0
dXJlczsgfQogICAgIERPTUd1YXJkZWRPYmplY3RTZXQmIGd1YXJkZWRPYmplY3RzKCkgV1RGX1JF
UVVJUkVTX0xPQ0sobV9nY0xvY2spIHsgcmV0dXJuIG1fZ3VhcmRlZE9iamVjdHM7IH0KKyAgICBE
T01TdHJ1Y3R1cmVzJiBzdHJ1Y3R1cmVzKCkgeyByZXR1cm4gKm1fc3RydWN0dXJlczsgfQogICAg
IERPTUNvbnN0cnVjdG9ycyYgY29uc3RydWN0b3JzKCkgeyByZXR1cm4gKm1fY29uc3RydWN0b3Jz
OyB9CiAKICAgICAvLyBObyBsb2NraW5nIGlzIG5lY2Vzc2FyeSBmb3IgY2FsbCBzaXRlcyB0aGF0
IGRvIG5vdCBtdXRhdGUgdGhlIGNvbnRhaW5lcnMgYW5kIGFyZSBub3Qgb24gdGhlIEdDIHRocmVh
ZC4KLSAgICBjb25zdCBKU0RPTVN0cnVjdHVyZU1hcCYgc3RydWN0dXJlcygpIGNvbnN0IFdURl9J
R05PUkVTX1RIUkVBRF9TQUZFVFlfQU5BTFlTSVMgeyBBU1NFUlQoIVRocmVhZDo6bWF5QmVHQ1Ro
cmVhZCgpKTsgcmV0dXJuIG1fc3RydWN0dXJlczsgfQogICAgIGNvbnN0IERPTUd1YXJkZWRPYmpl
Y3RTZXQmIGd1YXJkZWRPYmplY3RzKCkgY29uc3QgV1RGX0lHTk9SRVNfVEhSRUFEX1NBRkVUWV9B
TkFMWVNJUyB7IEFTU0VSVCghVGhyZWFkOjptYXlCZUdDVGhyZWFkKCkpOyByZXR1cm4gbV9ndWFy
ZGVkT2JqZWN0czsgfQorICAgIGNvbnN0IERPTVN0cnVjdHVyZXMmIHN0cnVjdHVyZXMoKSBjb25z
dCB7IEFTU0VSVCghVGhyZWFkOjptYXlCZUdDVGhyZWFkKCkpOyByZXR1cm4gKm1fc3RydWN0dXJl
czsgfQogICAgIGNvbnN0IERPTUNvbnN0cnVjdG9ycyYgY29uc3RydWN0b3JzKCkgY29uc3QgeyBB
U1NFUlQoIVRocmVhZDo6bWF5QmVHQ1RocmVhZCgpKTsgcmV0dXJuICptX2NvbnN0cnVjdG9yczsg
fQogCiAgICAgLy8gVGhlIGZvbGxvd2luZyBkb24ndCByZXF1aXJlIGdyYWJiaW5nIHRoZSBnY0xv
Y2sgZmlyc3QgYW5kIHNob3VsZCBvbmx5IGJlIGNhbGxlZCB3aGVuIHRoZSBIZWFwIHNheXMgdGhh
dCBtdXRhdG9ycyBkb24ndCBoYXZlIHRvIGJlIGZlbmNlZC4KLSAgICBKU0RPTVN0cnVjdHVyZU1h
cCYgc3RydWN0dXJlcyhOb0xvY2tpbmdOZWNlc3NhcnlUYWcpIFdURl9JR05PUkVTX1RIUkVBRF9T
QUZFVFlfQU5BTFlTSVMgeyBBU1NFUlQoIXZtKCkuaGVhcC5tdXRhdG9yU2hvdWxkQmVGZW5jZWQo
KSk7IHJldHVybiBtX3N0cnVjdHVyZXM7IH0KICAgICBET01HdWFyZGVkT2JqZWN0U2V0JiBndWFy
ZGVkT2JqZWN0cyhOb0xvY2tpbmdOZWNlc3NhcnlUYWcpIFdURl9JR05PUkVTX1RIUkVBRF9TQUZF
VFlfQU5BTFlTSVMgeyBBU1NFUlQoIXZtKCkuaGVhcC5tdXRhdG9yU2hvdWxkQmVGZW5jZWQoKSk7
IHJldHVybiBtX2d1YXJkZWRPYmplY3RzOyB9CiAKICAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0
KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3Q7CkBAIC0xMjMsOSArMTIyLDkgQEAgY2xh
c3MgV0VCQ09SRV9FWFBPUlQgSlNET01HbG9iYWxPYmplY3QgOiBwdWJsaWMgSlNDOjpKU0dsb2Jh
bE9iamVjdCB7CiAgICAgc3RhdGljIEpTQzo6SlNJbnRlcm5hbFByb21pc2UqIG1vZHVsZUxvYWRl
ckltcG9ydE1vZHVsZShKU0M6OkpTR2xvYmFsT2JqZWN0KiwgSlNDOjpKU01vZHVsZUxvYWRlcios
IEpTQzo6SlNTdHJpbmcqLCBKU0M6OkpTVmFsdWUsIGNvbnN0IEpTQzo6U291cmNlT3JpZ2luJik7
CiAgICAgc3RhdGljIEpTQzo6SlNPYmplY3QqIG1vZHVsZUxvYWRlckNyZWF0ZUltcG9ydE1ldGFQ
cm9wZXJ0aWVzKEpTQzo6SlNHbG9iYWxPYmplY3QqLCBKU0M6OkpTTW9kdWxlTG9hZGVyKiwgSlND
OjpKU1ZhbHVlLCBKU0M6OkpTTW9kdWxlUmVjb3JkKiwgSlNDOjpKU1ZhbHVlKTsKIAotICAgIEpT
RE9NU3RydWN0dXJlTWFwIG1fc3RydWN0dXJlcyBXVEZfR1VBUkRFRF9CWV9MT0NLKG1fZ2NMb2Nr
KTsKICAgICBET01HdWFyZGVkT2JqZWN0U2V0IG1fZ3VhcmRlZE9iamVjdHMgV1RGX0dVQVJERURf
QllfTE9DSyhtX2djTG9jayk7CiAgICAgc3RkOjp1bmlxdWVfcHRyPERPTUNvbnN0cnVjdG9ycz4g
bV9jb25zdHJ1Y3RvcnM7CisgICAgc3RkOjp1bmlxdWVfcHRyPERPTVN0cnVjdHVyZXM+IG1fc3Ry
dWN0dXJlczsKIAogICAgIFJlZjxET01XcmFwcGVyV29ybGQ+IG1fd29ybGQ7CiAgICAgdWludDhf
dCBtX3dvcmxkSXNOb3JtYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RPTUdsb2JhbE9iamVjdElubGluZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTRE9NR2xvYmFsT2JqZWN0SW5saW5lcy5oCmluZGV4IDA1Mjg2MTViNDYxYmYwZGI3NzFkZjQy
Njg2ZmEyMmU1ZDJkZTY1MmYuLjEzZmM3MmFhNDE4ODdkMmFlOTc4ZGY2Y2IyMjc0ZTZmODU0N2Ri
YjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2Jq
ZWN0SW5saW5lcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFs
T2JqZWN0SW5saW5lcy5oCkBAIC0yNyw2ICsyNyw3IEBACiAjcHJhZ21hIG9uY2UKIAogI2luY2x1
ZGUgIkRPTUNvbnN0cnVjdG9ycy5oIgorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNs
dWRlICJKU0RPTUdsb2JhbE9iamVjdC5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC00NCw0
ICs0NSwxMyBAQCBpbmxpbmUgSlNDOjpKU09iamVjdCogZ2V0RE9NQ29uc3RydWN0b3IoSlNDOjpW
TSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbAogICAgIHJldHVybiBjb25zdHJ1Y3Rv
cjsKIH0KIAordGVtcGxhdGU8dHlwZW5hbWUgV3JhcHBlckNsYXNzPiBpbmxpbmUgSlNDOjpTdHJ1
Y3R1cmUqIGdldERPTVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNET01HbG9iYWxPYmplY3QmIGds
b2JhbE9iamVjdCkKK3sKKyAgICBpZiAoYXV0byogc3RydWN0dXJlID0gZ2xvYmFsT2JqZWN0LnN0
cnVjdHVyZXMoKS5nZXQ8V3JhcHBlckNsYXNzPigpKQorICAgICAgICByZXR1cm4gc3RydWN0dXJl
OworICAgIGF1dG8qIHN0cnVjdHVyZSA9IFdyYXBwZXJDbGFzczo6Y3JlYXRlU3RydWN0dXJlKHZt
LCAmZ2xvYmFsT2JqZWN0LCBXcmFwcGVyQ2xhc3M6OmNyZWF0ZVByb3RvdHlwZSh2bSwgZ2xvYmFs
T2JqZWN0KSk7CisgICAgZ2xvYmFsT2JqZWN0LnN0cnVjdHVyZXMoKS5zZXQ8V3JhcHBlckNsYXNz
Pih2bSwgJmdsb2JhbE9iamVjdCwgc3RydWN0dXJlKTsKKyAgICByZXR1cm4gc3RydWN0dXJlOwor
fQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0RPTVdyYXBwZXJDYWNoZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0RPTVdyYXBwZXJDYWNoZS5jcHAKaW5kZXggNzMzOTY1YzM1Y2ZiZTEyYWEwNzI3MjFm
OTUzMmJjZDM4OTE4NTI0YS4uMjQ1MDQwMzhmM2JjNDY2MjY3ZTM3YWEwY2MzN2YzNDkyMGEyYmI4
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XcmFwcGVyQ2Fj
aGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV3JhcHBlckNhY2hl
LmNwcApAQCAtMjcsMjIgKzI3LDQgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIHVzaW5nIG5hbWVz
cGFjZSBKU0M7CiAKLVN0cnVjdHVyZSogZ2V0Q2FjaGVkRE9NU3RydWN0dXJlKGNvbnN0IEpTRE9N
R2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIGNvbnN0IENsYXNzSW5mbyogY2xhc3NJbmZvKQot
ewotICAgIHJldHVybiBnbG9iYWxPYmplY3Quc3RydWN0dXJlcygpLmdldChjbGFzc0luZm8pLmdl
dCgpOwotfQotCi1TdHJ1Y3R1cmUqIGNhY2hlRE9NU3RydWN0dXJlKEpTRE9NR2xvYmFsT2JqZWN0
JiBnbG9iYWxPYmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBjb25zdCBDbGFzc0luZm8qIGNs
YXNzSW5mbykKLXsKLSAgICBhdXRvIGFkZFRvU3RydWN0dXJlcyA9IFtdKEpTRE9NU3RydWN0dXJl
TWFwJiBzdHJ1Y3R1cmVzLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1
cmUqIHN0cnVjdHVyZSwgY29uc3QgQ2xhc3NJbmZvKiBjbGFzc0luZm8pIHsKLSAgICAgICAgQVNT
RVJUKCFzdHJ1Y3R1cmVzLmNvbnRhaW5zKGNsYXNzSW5mbykpOwotICAgICAgICByZXR1cm4gc3Ry
dWN0dXJlcy5zZXQoY2xhc3NJbmZvLCBXcml0ZUJhcnJpZXI8U3RydWN0dXJlPihnbG9iYWxPYmpl
Y3Qudm0oKSwgJmdsb2JhbE9iamVjdCwgc3RydWN0dXJlKSkuaXRlcmF0b3ItPnZhbHVlLmdldCgp
OwotICAgIH07Ci0gICAgaWYgKGdsb2JhbE9iamVjdC52bSgpLmhlYXAubXV0YXRvclNob3VsZEJl
RmVuY2VkKCkpIHsKLSAgICAgICAgTG9ja2VyIGxvY2tlciB7IGdsb2JhbE9iamVjdC5nY0xvY2so
KSB9OwotICAgICAgICByZXR1cm4gYWRkVG9TdHJ1Y3R1cmVzKGdsb2JhbE9iamVjdC5zdHJ1Y3R1
cmVzKCksIGdsb2JhbE9iamVjdCwgc3RydWN0dXJlLCBjbGFzc0luZm8pOwotICAgIH0KLSAgICBy
ZXR1cm4gYWRkVG9TdHJ1Y3R1cmVzKGdsb2JhbE9iamVjdC5zdHJ1Y3R1cmVzKE5vTG9ja2luZ05l
Y2Vzc2FyeSksIGdsb2JhbE9iamVjdCwgc3RydWN0dXJlLCBjbGFzc0luZm8pOwotfQotCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RPTVdyYXBwZXJDYWNoZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01X
cmFwcGVyQ2FjaGUuaAppbmRleCBmYTFkNTE2YTBiMzVmYTNiNTYyYTI0Njc0Njc4NTAyNDcyYmI3
MjYxLi5lYTBhNDQzNDc0ZjkyMTY4MDY5NDRlM2U4ZjhkYjkwOWMzMWM2MzU0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdyYXBwZXJDYWNoZS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV3JhcHBlckNhY2hlLmgKQEAgLTI0LDcgKzI0
LDcgQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiRE9NV3JhcHBlcldvcmxkLmgiCi0jaW5j
bHVkZSAiSlNET01HbG9iYWxPYmplY3QuaCIKKyNpbmNsdWRlICJKU0RPTUdsb2JhbE9iamVjdElu
bGluZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJTY3JpcHRXcmFw
cGFibGUuaCIKICNpbmNsdWRlICJTY3JpcHRXcmFwcGFibGVJbmxpbmVzLmgiCkBAIC0zNiwxMCAr
MzYsNiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLVdFQkNPUkVfRVhQT1JUIEpTQzo6U3Ry
dWN0dXJlKiBnZXRDYWNoZWRET01TdHJ1Y3R1cmUoY29uc3QgSlNET01HbG9iYWxPYmplY3QmLCBj
b25zdCBKU0M6OkNsYXNzSW5mbyopOwotV0VCQ09SRV9FWFBPUlQgSlNDOjpTdHJ1Y3R1cmUqIGNh
Y2hlRE9NU3RydWN0dXJlKEpTRE9NR2xvYmFsT2JqZWN0JiwgSlNDOjpTdHJ1Y3R1cmUqLCBjb25z
dCBKU0M6OkNsYXNzSW5mbyopOwotCi10ZW1wbGF0ZTx0eXBlbmFtZSBXcmFwcGVyQ2xhc3M+IEpT
Qzo6U3RydWN0dXJlKiBnZXRET01TdHJ1Y3R1cmUoSlNDOjpWTSYsIEpTRE9NR2xvYmFsT2JqZWN0
Jik7CiB0ZW1wbGF0ZTx0eXBlbmFtZSBXcmFwcGVyQ2xhc3M+IEpTQzo6U3RydWN0dXJlKiBkZXBy
ZWNhdGVkR2V0RE9NU3RydWN0dXJlKEpTQzo6SlNHbG9iYWxPYmplY3QqKTsKIHRlbXBsYXRlPHR5
cGVuYW1lIFdyYXBwZXJDbGFzcz4gSlNDOjpKU09iamVjdCogZ2V0RE9NUHJvdG90eXBlKEpTQzo6
Vk0mLCBKU0M6OkpTR2xvYmFsT2JqZWN0Kik7CiAKQEAgLTU4LDggKzU0LDYgQEAgYm9vbCBjbGVh
cklubGluZUNhY2hlZFdyYXBwZXIoRE9NV3JhcHBlcldvcmxkJiwgdm9pZCosIEpTRE9NT2JqZWN0
Kik7CiBib29sIGNsZWFySW5saW5lQ2FjaGVkV3JhcHBlcihET01XcmFwcGVyV29ybGQmLCBTY3Jp
cHRXcmFwcGFibGUqLCBKU0RPTU9iamVjdCogd3JhcHBlcik7CiBib29sIGNsZWFySW5saW5lQ2Fj
aGVkV3JhcHBlcihET01XcmFwcGVyV29ybGQmLCBKU0M6OkFycmF5QnVmZmVyKiwgSlNDOjpKU0Fy
cmF5QnVmZmVyKiB3cmFwcGVyKTsKIAotdGVtcGxhdGU8dHlwZW5hbWUgRE9NQ2xhc3M+IEpTQzo6
SlNPYmplY3QqIGdldE9yQ3JlYXRlV3JhcHBlcihET01XcmFwcGVyV29ybGQmLCBET01DbGFzcyYp
OwotCiB0ZW1wbGF0ZTx0eXBlbmFtZSBET01DbGFzcz4gSlNDOjpKU09iamVjdCogZ2V0Q2FjaGVk
V3JhcHBlcihET01XcmFwcGVyV29ybGQmLCBET01DbGFzcyYpOwogdGVtcGxhdGU8dHlwZW5hbWUg
RE9NQ2xhc3M+IGlubGluZSBKU0M6OkpTT2JqZWN0KiBnZXRDYWNoZWRXcmFwcGVyKERPTVdyYXBw
ZXJXb3JsZCYgd29ybGQsIFJlZjxET01DbGFzcz4mIG9iamVjdCkgeyByZXR1cm4gZ2V0Q2FjaGVk
V3JhcHBlcih3b3JsZCwgb2JqZWN0LmdldCgpKTsgfQogdGVtcGxhdGU8dHlwZW5hbWUgRE9NQ2xh
c3MsIHR5cGVuYW1lIFdyYXBwZXJDbGFzcz4gdm9pZCBjYWNoZVdyYXBwZXIoRE9NV3JhcHBlcldv
cmxkJiwgRE9NQ2xhc3MqLCBXcmFwcGVyQ2xhc3MqKTsKQEAgLTgxLDEzICs3NSw2IEBAIGlubGlu
ZSBKU0RPTUdsb2JhbE9iamVjdCogZGVwcmVjYXRlZEdsb2JhbE9iamVjdEZvclByb3RvdHlwZShK
U0M6OkpTR2xvYmFsT2JqZWN0CiAgICAgcmV0dXJuIEpTQzo6anNDYXN0PEpTRE9NR2xvYmFsT2Jq
ZWN0Kj4obGV4aWNhbEdsb2JhbE9iamVjdCk7CiB9CiAKLXRlbXBsYXRlPHR5cGVuYW1lIFdyYXBw
ZXJDbGFzcz4gaW5saW5lIEpTQzo6U3RydWN0dXJlKiBnZXRET01TdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QpCi17Ci0gICAgaWYgKEpTQzo6U3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUgPSBnZXRDYWNoZWRET01TdHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBX
cmFwcGVyQ2xhc3M6OmluZm8oKSkpCi0gICAgICAgIHJldHVybiBzdHJ1Y3R1cmU7Ci0gICAgcmV0
dXJuIGNhY2hlRE9NU3RydWN0dXJlKGdsb2JhbE9iamVjdCwgV3JhcHBlckNsYXNzOjpjcmVhdGVT
dHJ1Y3R1cmUodm0sICZnbG9iYWxPYmplY3QsIFdyYXBwZXJDbGFzczo6Y3JlYXRlUHJvdG90eXBl
KHZtLCBnbG9iYWxPYmplY3QpKSwgV3JhcHBlckNsYXNzOjppbmZvKCkpOwotfQotCiB0ZW1wbGF0
ZTx0eXBlbmFtZSBXcmFwcGVyQ2xhc3M+IGlubGluZSBKU0M6OlN0cnVjdHVyZSogZGVwcmVjYXRl
ZEdldERPTVN0cnVjdHVyZShKU0M6OkpTR2xvYmFsT2JqZWN0KiBsZXhpY2FsR2xvYmFsT2JqZWN0
KQogewogICAgIC8vIEZJWE1FOiBUaGlzIGZ1bmN0aW9uIGlzIHdyb25nLiBJdCB1c2VzIHRoZSB3
cm9uZyBnbG9iYWwgb2JqZWN0IGZvciBjcmVhdGluZyB0aGUgcHJvdG90eXBlIHN0cnVjdHVyZS4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbURpcmVj
dG9yeUhhbmRsZUl0ZXJhdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvci5oCmluZGV4IGMxZWQ0NGRmOTUyZmE0Mjc3Yjli
OWUxMDQzYWQ1NTcwOGNkODc4MTAuLjUxNTlkMjliYjE4YWUzMWEyMDdmNTBiYzljYzhhY2VlOGEy
MmQwNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5c3Rl
bURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3IuaApAQCAtNDMsNiArNDMsNyBA
QCBzdHJ1Y3QgSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3JUcmFpdHMgewogY2xh
c3MgSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3IgZmluYWwgOiBwdWJsaWMgSlNE
T01Bc3luY0l0ZXJhdG9yQmFzZTxKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGUsIEpTRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yVHJhaXRzLCBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlI
YW5kbGVJdGVyYXRvcj4gewogcHVibGljOgogICAgIHVzaW5nIEJhc2UgPSBKU0RPTUFzeW5jSXRl
cmF0b3JCYXNlPEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSwgSlNGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlSXRlcmF0b3JUcmFpdHMsIEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJh
dG9yPjsKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4
ID0gRE9NU3RydWN0dXJlSUQ6OkZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvcjsKICAg
ICBERUNMQVJFX0lORk87CiAKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBDZWxsVHlwZSwgSlNDOjpT
dWJzcGFjZUFjY2VzcyBtb2RlPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCAzNDM2NWZiMzUxNjg3ZTdlZWJjZWZiODVjYzNk
MjFlOTdjMWQ5NDQ3Li4yZDZhY2IzNjc4YjFjYjNmMDY2OWYwMjEyOGFhZTg4NTkzZjZkN2M2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JK
Uy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JK
Uy5wbQpAQCAtMzAzOSw2ICszMDM5LDggQEAgc3ViIEdlbmVyYXRlSGVhZGVyCiAgICAgfQogCiAg
ICAgIyBTdHJ1Y3R1cmUgSUQKKyAgICAkaGVhZGVySW5jbHVkZXN7IkRPTVN0cnVjdHVyZXMuaCJ9
ID0gMTsKKyAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIHN0YXRpYyBjb25zdGV4cHIgRE9N
U3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6JHtpbnRlcmZhY2VO
YW1lfTtcbiIpOwogICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAgc3RhdGljIEpTQzo6U3Ry
dWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSlcbiIpOwogICAgIHB1c2goQGhl
YWRlckNvbnRlbnQsICIgICAge1xuIik7CiAgICAgbXkgJGluZGV4aW5nTW9kZUluY2x1ZGluZ0hp
c3RvcnkgPSBJbnN0YW5jZU92ZXJyaWRlc0dldE93blByb3BlcnR5U2xvdCgkaW50ZXJmYWNlKSA/
ICJKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzIiA6ICJKU0M6Ok5vbkFycmF5IjsKQEAgLTY3
ODMsNiArNjc4NSw3IEBAIHN1YiBHZW5lcmF0ZUl0ZXJhYmxlRGVmaW5pdGlvbgogICAgICAgICAp
OwogICAgIH0KIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJl
SW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6JHtpbnRlcmZhY2VOYW1lfUl0ZXJhdG9yOwogICAgIHN0
YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAg
ewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0
LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFn
cyksIGluZm8oKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3ByZXByb2Nlc3MtaWRscy5wbCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvcHJl
cHJvY2Vzcy1pZGxzLnBsCmluZGV4IDFkMjM3MDQyMzA2M2IyMmIwNGViYTdkMjRhNDc0MGM3Y2Jh
YmRkYzUuLmY3Y2I3ZjUzZTk2YzcwNmUxYjA3MjlhZjA3MWYyOTQ3NjgwN2JkYWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvcHJlcHJvY2Vzcy1pZGxzLnBsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvcHJlcHJvY2Vzcy1pZGxzLnBsCkBA
IC00Myw2ICs0Myw3IEBACiBteSAkaXNvU3Vic3BhY2VzSGVhZGVyRmlsZTsKIG15ICRjbGllbnRJ
U09TdWJzcGFjZXNIZWFkZXJGaWxlOwogbXkgJGNvbnN0cnVjdG9yc0hlYWRlckZpbGU7CitteSAk
c3RydWN0dXJlc0hlYWRlckZpbGU7CiBteSAkd2luZG93Q29uc3RydWN0b3JzRmlsZTsKIG15ICR3
b3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGU7CiBteSAkc2hhZG93UmVhbG1HbG9iYWxT
Y29wZUNvbnN0cnVjdG9yc0ZpbGU7CkBAIC04NCw2ICs4NSw3IEBACiAgICAgICAgICAgICdpc29T
dWJzcGFjZXNIZWFkZXJGaWxlPXMnID0+IFwkaXNvU3Vic3BhY2VzSGVhZGVyRmlsZSwKICAgICAg
ICAgICAgJ2NsaWVudElTT1N1YnNwYWNlc0hlYWRlckZpbGU9cycgPT4gXCRjbGllbnRJU09TdWJz
cGFjZXNIZWFkZXJGaWxlLAogICAgICAgICAgICAnY29uc3RydWN0b3JzSGVhZGVyRmlsZT1zJyA9
PiBcJGNvbnN0cnVjdG9yc0hlYWRlckZpbGUsCisgICAgICAgICAgICdzdHJ1Y3R1cmVzSGVhZGVy
RmlsZT1zJyA9PiBcJHN0cnVjdHVyZXNIZWFkZXJGaWxlLAogICAgICAgICAgICAnd2luZG93Q29u
c3RydWN0b3JzRmlsZT1zJyA9PiBcJHdpbmRvd0NvbnN0cnVjdG9yc0ZpbGUsCiAgICAgICAgICAg
ICd3b3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGU9cycgPT4gXCR3b3JrZXJHbG9iYWxT
Y29wZUNvbnN0cnVjdG9yc0ZpbGUsCiAgICAgICAgICAgICdzaGFkb3dSZWFsbUdsb2JhbFNjb3Bl
Q29uc3RydWN0b3JzRmlsZT1zJyA9PiBcJHNoYWRvd1JlYWxtR2xvYmFsU2NvcGVDb25zdHJ1Y3Rv
cnNGaWxlLApAQCAtMTE4LDYgKzEyMCw3IEBACiAkaXNvU3Vic3BhY2VzSGVhZGVyRmlsZSA9IEN5
Z3dpblBhdGhJZk5lZWRlZCgkaXNvU3Vic3BhY2VzSGVhZGVyRmlsZSk7CiAkY2xpZW50SVNPU3Vi
c3BhY2VzSGVhZGVyRmlsZSA9IEN5Z3dpblBhdGhJZk5lZWRlZCgkY2xpZW50SVNPU3Vic3BhY2Vz
SGVhZGVyRmlsZSk7CiAkY29uc3RydWN0b3JzSGVhZGVyRmlsZSA9IEN5Z3dpblBhdGhJZk5lZWRl
ZCgkY29uc3RydWN0b3JzSGVhZGVyRmlsZSk7Ciskc3RydWN0dXJlc0hlYWRlckZpbGUgPSBDeWd3
aW5QYXRoSWZOZWVkZWQoJHN0cnVjdHVyZXNIZWFkZXJGaWxlKTsKICR3aW5kb3dDb25zdHJ1Y3Rv
cnNGaWxlID0gQ3lnd2luUGF0aElmTmVlZGVkKCR3aW5kb3dDb25zdHJ1Y3RvcnNGaWxlKTsKICR3
b3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgPSBDeWd3aW5QYXRoSWZOZWVkZWQoJHdv
cmtlckdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmlsZSk7CiAkc2hhZG93UmVhbG1HbG9iYWxTY29w
ZUNvbnN0cnVjdG9yc0ZpbGUgPSBDeWd3aW5QYXRoSWZOZWVkZWQoJHNoYWRvd1JlYWxtR2xvYmFs
U2NvcGVDb25zdHJ1Y3RvcnNGaWxlKTsKQEAgLTIxNiw2ICsyMTksMjcgQEAgRU5ECiBlbnVtIGNs
YXNzIERPTUNvbnN0cnVjdG9ySUQgOiB1aW50MTZfdCB7CiBFTkQKIAorbXkgQHN0cnVjdHVyZXMg
PSAoKTsKKyMgRGVwcmVjYXRlZCBvYmplY3RzLgorcHVzaChAc3RydWN0dXJlcywgIk9iakNSdW50
aW1lTWV0aG9kIik7CitwdXNoKEBzdHJ1Y3R1cmVzLCAiT2JqQ1J1bnRpbWVPYmplY3QiKTsKK3B1
c2goQHN0cnVjdHVyZXMsICJPYmpjRmFsbGJhY2tPYmplY3RJbXAiKTsKK3B1c2goQHN0cnVjdHVy
ZXMsICJSdW50aW1lQXJyYXkiKTsKK3B1c2goQHN0cnVjdHVyZXMsICJSdW50aW1lT2JqZWN0Iik7
CisjIEZJWE1FOiBBZnRlciB3ZWJraXQub3JnL2IvMjMxMjQzLCB0aGlzIGNsYXNzIHNob3VsZCBi
ZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBieSBiaW5kaW5ncyBjb2RlIGdlbmVyYXRvci4KK3B1
c2goQHN0cnVjdHVyZXMsICJGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3IiKTsKK215
ICRzdHJ1Y3R1cmVzSGVhZGVyQ29kZSA9IDw8RU5EOworI2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9j
Lmg+CisjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CisjaW5jbHVkZSA8SmF2YVNjcmlwdENv
cmUvSlNDSW5saW5lcy5oPgorCisjcHJhZ21hIG9uY2UKKworbmFtZXNwYWNlIFdlYkNvcmUgewor
CitlbnVtIGNsYXNzIERPTVN0cnVjdHVyZUlEIDogdWludDE2X3QgeworRU5ECisKICMgR2V0IHJp
ZCBvZiBkdXBsaWNhdGVzIGluIGlkbEZpbGVOYW1lcyBhcnJheS4KIG15ICVpZGxGaWxlTmFtZUhh
c2ggPSBtYXAgeyAkXywgMSB9IEBpZGxGaWxlTmFtZXM7CiAKQEAgLTI3MCw5ICsyOTQsMTEgQEAg
RU5ECiAgICAgaWYgKCEkaXNDYWxsYmFja0ludGVyZmFjZSkgewogICAgICAgICAkaXNvU3Vic3Bh
Y2VzSGVhZGVyQ29kZSAuPSAiICAgIHN0ZDo6dW5pcXVlX3B0cjxJc29TdWJzcGFjZT4gbV9zdWJz
cGFjZUZvciR7aW50ZXJmYWNlTmFtZX07XG4iOwogICAgICAgICAkY2xpZW50SVNPU3Vic3BhY2Vz
SGVhZGVyQ29kZSAuPSAiICAgIHN0ZDo6dW5pcXVlX3B0cjxHQ0NsaWVudDo6SXNvU3Vic3BhY2U+
IG1fY2xpZW50U3Vic3BhY2VGb3Ike2ludGVyZmFjZU5hbWV9O1xuIjsKKyAgICAgICAgcHVzaChA
c3RydWN0dXJlcywgIiR7aW50ZXJmYWNlTmFtZX0iKTsKICAgICAgICAgaWYgKGNvbnRhaW5zSXRl
cmFibGVJbnRlcmZhY2VGcm9tSURMKCRpZGxGaWxlKSkgewogICAgICAgICAgICAgJGlzb1N1YnNw
YWNlc0hlYWRlckNvZGUgLj0gIiAgICBzdGQ6OnVuaXF1ZV9wdHI8SXNvU3Vic3BhY2U+IG1fc3Vi
c3BhY2VGb3Ike2ludGVyZmFjZU5hbWV9SXRlcmF0b3I7XG4iOwogICAgICAgICAgICAgJGNsaWVu
dElTT1N1YnNwYWNlc0hlYWRlckNvZGUgLj0gIiAgICBzdGQ6OnVuaXF1ZV9wdHI8R0NDbGllbnQ6
Oklzb1N1YnNwYWNlPiBtX2NsaWVudFN1YnNwYWNlRm9yJHtpbnRlcmZhY2VOYW1lfUl0ZXJhdG9y
O1xuIjsKKyAgICAgICAgICAgIHB1c2goQHN0cnVjdHVyZXMsICIke2ludGVyZmFjZU5hbWV9SXRl
cmF0b3IiKTsKICAgICAgICAgfQogICAgIH0KIApAQCAtMzc3LDYgKzQwMywzNCBAQCBFTkQKICAg
ICBXcml0ZUZpbGVJZkNoYW5nZWQoJGNvbnN0cnVjdG9yc0hlYWRlckZpbGUsICRjb25zdHJ1Y3Rv
cnNIZWFkZXJDb2RlKTsKIH0KIAoraWYgKCRzdHJ1Y3R1cmVzSGVhZGVyRmlsZSkgeworICAgIG15
ICRzdHJ1Y3R1cmVzTGVuZ3RoID0gQHN0cnVjdHVyZXM7CisgICAgZm9yZWFjaCBteSAkbmFtZSAo
QHN0cnVjdHVyZXMpIHsKKyAgICAgICAgJHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49ICIgICAgJHtu
YW1lfSxcbiI7CisgICAgfQorICAgICRzdHJ1Y3R1cmVzSGVhZGVyQ29kZSAuPSAifTtcbiI7Cisg
ICAgJHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49ICJcbiI7CisgICAgJHN0cnVjdHVyZXNIZWFkZXJD
b2RlIC49ICJzdGF0aWMgY29uc3RleHByIHVuc2lnbmVkIG51bWJlck9mRE9NU3RydWN0dXJlcyA9
ICRzdHJ1Y3R1cmVzTGVuZ3RoO1xuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0gIlxu
IjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0gImNsYXNzIERPTVN0cnVjdHVyZXMge1xu
IjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0gIiAgICBXVEZfTUFLRV9OT05DT1BZQUJM
RShET01TdHJ1Y3R1cmVzKTtcbiI7CisgICAgJHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49ICIgICAg
V1RGX01BS0VfRkFTVF9BTExPQ0FURUQoRE9NU3RydWN0dXJlcyk7XG4iOworICAgICRzdHJ1Y3R1
cmVzSGVhZGVyQ29kZSAuPSAicHVibGljOlxuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUg
Lj0gIiAgICB1c2luZyBTdHJ1Y3R1cmVBcnJheSA9IHN0ZDo6YXJyYXk8SlNDOjpXcml0ZUJhcnJp
ZXJTdHJ1Y3R1cmVJRCwgbnVtYmVyT2ZET01TdHJ1Y3R1cmVzPjtcbiI7CisgICAgJHN0cnVjdHVy
ZXNIZWFkZXJDb2RlIC49ICIgICAgRE9NU3RydWN0dXJlcygpID0gZGVmYXVsdDtcbiI7CisgICAg
JHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49ICIgICAgU3RydWN0dXJlQXJyYXkmIGFycmF5KCkgeyBy
ZXR1cm4gbV9hcnJheTsgfVxuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0gIiAgICBj
b25zdCBTdHJ1Y3R1cmVBcnJheSYgYXJyYXkoKSBjb25zdCB7IHJldHVybiBtX2FycmF5OyB9XG4i
OworICAgICRzdHJ1Y3R1cmVzSGVhZGVyQ29kZSAuPSAiICAgIHRlbXBsYXRlPHR5cGVuYW1lIFdy
YXBwZWRDbGFzcz4gSlNDOjpTdHJ1Y3R1cmUqIGdldCgpIGNvbnN0IHsgcmV0dXJuIG1fYXJyYXlb
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KFdyYXBwZWRDbGFzczo6c3RydWN0dXJlSW5kZXgpXS5nZXQo
KTsgfVxuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0gIiAgICB0ZW1wbGF0ZTx0eXBl
bmFtZSBXcmFwcGVkQ2xhc3M+IHZvaWQgc2V0KEpTQzo6Vk0mIHZtLCBKU0M6OkpTQ2VsbCogb3du
ZXIsIEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1cmUpIHsgbV9hcnJheVtzdGF0aWNfY2FzdDx1bnNp
Z25lZD4oV3JhcHBlZENsYXNzOjpzdHJ1Y3R1cmVJbmRleCldLnNldCh2bSwgb3duZXIsIHN0cnVj
dHVyZSk7IH1cbiI7CisgICAgJHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49ICJcbiI7CisgICAgJHN0
cnVjdHVyZXNIZWFkZXJDb2RlIC49ICJwcml2YXRlOlxuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRl
ckNvZGUgLj0gIiAgICBTdHJ1Y3R1cmVBcnJheSBtX2FycmF5IHsgfTtcbiI7CisgICAgJHN0cnVj
dHVyZXNIZWFkZXJDb2RlIC49ICJ9O1xuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0g
IlxuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0gIn0gLy8gbmFtZXNwYWNlIFdlYkNv
cmVcbiI7CisgICAgV3JpdGVGaWxlSWZDaGFuZ2VkKCRzdHJ1Y3R1cmVzSGVhZGVyRmlsZSwgJHN0
cnVjdHVyZXNIZWFkZXJDb2RlKTsKK30KKwogIyBSZXNvbHZlcyBwYXJ0aWFsIGludGVyZmFjZXMg
YW5kIGluY2x1ZGUgZGVwZW5kZW5jaWVzLgogZm9yZWFjaCBteSAkaWRsRmlsZVBhdGggKHNvcnQg
a2V5cyAlc3VwcGxlbWVudGFsRGVwZW5kZW5jaWVzKSB7CiAgICAgbXkgJGJhc2VGaWxlcyA9ICRz
dXBwbGVtZW50YWxEZXBlbmRlbmNpZXN7JGlkbEZpbGVQYXRofTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RPTVdpbmRvdy5oIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRE9NV2luZG93LmgKaW5kZXggM2Y3
M2E5ZTcxMGNiMmMzYmMzY2JkMDliZDllMGQyY2ZmMzYwNzAyMS4uNWNhNWFjOWNjYWMxMjkwMGQ1
MzkxYjMzYzU1N2NjNWM4OTZhZjExZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTRE9NV2luZG93LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRE9NV2luZG93LmgKQEAgLTIwLDYgKzIwLDcgQEAKIAog
I3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNE
T01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiSlNFdmVudFRhcmdldC5oIgogCkBAIC00NCw2ICs0NSw3
IEBAIGNsYXNzIEpTRE9NV2luZG93IDogcHVibGljIEpTRXZlbnRUYXJnZXQgewogCiAgICAgREVD
TEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1
cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpET01XaW5kb3c7CiAgICAgc3RhdGljIEpTQzo6U3Ry
dWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJl
dHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwg
SlNDOjpUeXBlSW5mbyhKU0M6Okdsb2JhbE9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5m
bygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxT
Y29wZS5oCmluZGV4IDU3ODVkMWEwM2RkYWFmNTVmNjczNmUyMTY3MDAzYmVlNmMzNjE3MDEuLmUw
YTY1YmQ3YzQ2MTVhNWRiOWQ1OGE3NzU4MTYyMGUwYzM4NTYxOTEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RlZGljYXRlZFdvcmtlckdsb2Jh
bFNjb3BlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
RGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21h
IG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBw
ZXIuaCIKICNpbmNsdWRlICJKU1dvcmtlckdsb2JhbFNjb3BlLmgiCiAKQEAgLTQxLDYgKzQyLDcg
QEAgY2xhc3MgSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZSA6IHB1YmxpYyBKU1dvcmtlckds
b2JhbFNjb3BlIHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIg
RE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6RGVkaWNhdGVk
V29ya2VyR2xvYmFsU2NvcGU7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1
Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlND
OjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVy
ZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6
Okdsb2JhbE9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U0V4cG9zZWRTdGFyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNFeHBvc2VkU3Rhci5oCmluZGV4IDZmZDMxNWYyNGQyYmJjMGNhMjNmOWMyNzI3NDc0Y2Y3MzI4
NGQ3MTEuLjkzYmJhZjhmZmY2OWI2MDYyZmMxM2VjODZjZTJkZmZmMGMyNTY5YWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0V4cG9zZWRTdGFy
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3Nl
ZFN0YXIuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRP
TVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJFeHBvc2VkU3Rhci5oIgogI2luY2x1ZGUgIkpTRE9N
V3JhcHBlci5oIgogI2luY2x1ZGUgIkpTRXZlbnRUYXJnZXQuaCIKQEAgLTQzLDYgKzQ0LDcgQEAg
Y2xhc3MgSlNFeHBvc2VkU3RhciA6IHB1YmxpYyBKU0V2ZW50VGFyZ2V0IHsKIAogICAgIERFQ0xB
UkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJl
SW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6RXhwb3NlZFN0YXI7CiAgICAgc3RhdGljIEpTQzo6U3Ry
dWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJl
dHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwg
SlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBK
U0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvdy5oIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93LmgKaW5k
ZXggM2ViMTUyZDVlODdkMjNmZGVhNGIxMzdjODJjMDViNzJiZjAxODIyNi4uODk2YTBkZDZmODJh
ZTE2NmVkOWIzNWNlYTljMDEzNzUwZTIwNWM3YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFRvV29y
a2VyQW5kV2luZG93LmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNs
dWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiRXhwb3NlZFRvV29ya2VyQW5kV2luZG93
LmgiCiAjaW5jbHVkZSAiSlNET01Db252ZXJ0RGljdGlvbmFyeS5oIgogI2luY2x1ZGUgIkpTRE9N
V3JhcHBlci5oIgpAQCAtNDQsNiArNDUsNyBAQCBjbGFzcyBKU0V4cG9zZWRUb1dvcmtlckFuZFdp
bmRvdyA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8RXhwb3NlZFRvV29ya2VyQW5kV2luZG93PgogCiAg
ICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBz
dHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3c7
CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0s
IEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlw
ZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9i
YWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVj
dHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1BhaW50V29ya2xldEdsb2JhbFNjb3Bl
LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNQYWludFdvcmts
ZXRHbG9iYWxTY29wZS5oCmluZGV4IGFkMDI5NDA2ZDZiOTUwYzliMTMzM2Y0YTM0ZjE1YjViZmY2
NmFiYzQuLjY3ZDYyMTY2OWQyOGU5MTE5MzkzMzA0ZTRlMjI0M2U4NTg0YjMwOGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1BhaW50V29ya2xl
dEdsb2JhbFNjb3BlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJh
Z21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdy
YXBwZXIuaCIKICNpbmNsdWRlICJKU1dvcmtsZXRHbG9iYWxTY29wZS5oIgogCkBAIC00MSw2ICs0
Miw3IEBAIGNsYXNzIEpTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUgOiBwdWJsaWMgSlNXb3JrbGV0
R2xvYmFsU2NvcGUgewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhw
ciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpQYWludFdv
cmtsZXRHbG9iYWxTY29wZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6
OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJl
OjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6
R2xvYmFsT2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
U2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaAppbmRleCBkZjkwNGFjMzM3
YzI3MzQwNzk4MmU4YTg0ZjY5ZTg1ODdlM2IwOTNiLi5hZWNhNDU2ZmRjYzI0MDRiMWRkNmFmYWUw
ZDU2NGVhZjUwZmRmZmVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUu
aApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVj
dHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJKU1dvcmtlckds
b2JhbFNjb3BlLmgiCiAKQEAgLTQxLDYgKzQyLDcgQEAgY2xhc3MgSlNTZXJ2aWNlV29ya2VyR2xv
YmFsU2NvcGUgOiBwdWJsaWMgSlNXb3JrZXJHbG9iYWxTY29wZSB7CiAKICAgICBERUNMQVJFX0lO
Rk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4
ID0gRE9NU3RydWN0dXJlSUQ6OlNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZTsKICAgICBzdGF0aWMg
SlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAg
ICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJv
dG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6R2xvYmFsT2JqZWN0VHlwZSwgU3RydWN0dXJlRmxh
Z3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hhZG93UmVhbG1HbG9iYWxTY29wZS5oIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hhZG93UmVhbG1HbG9iYWxT
Y29wZS5oCmluZGV4IDczYmViYWEzODc5ODFjN2U5NWM4Zjk0MWJkMzRiNjA4ZGM0NDMwMjkuLmY0
OTljYTVkYjFhNTA0ZWQxMGZlMjlhYzYxNDlkYTE5ZjU3YmE2YWEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYWRvd1JlYWxtR2xvYmFsU2Nv
cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTaGFk
b3dSZWFsbUdsb2JhbFNjb3BlLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAK
KyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAj
aW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CiAKQEAgLTQyLDYgKzQzLDcgQEAgY2xhc3Mg
SlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlIDogcHVibGljIEpTRE9NV3JhcHBlcjxTaGFkb3dSZWFs
bUdsb2JhbFNjb3BlPiB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3Rl
eHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlNoYWRv
d1JlYWxtR2xvYmFsU2NvcGU7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1
Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlND
OjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVy
ZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6
Okdsb2JhbE9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZS5oCmluZGV4IGNjM2QzNzM2ZjYz
ZTAxMjUyZDkyNGY0Y2YzOTU0NDdlMDk0YzYxNGEuLjJlMmZhNzdkNGZmOTRkMDI4M2M0NDRiNTg0
YmVjOWFlMGE2MTc0YjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hhcmVkV29ya2VyR2xvYmFsU2NvcGUuaApA
QCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVy
ZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJKU1dvcmtlckdsb2Jh
bFNjb3BlLmgiCiAKQEAgLTQxLDYgKzQyLDcgQEAgY2xhc3MgSlNTaGFyZWRXb3JrZXJHbG9iYWxT
Y29wZSA6IHB1YmxpYyBKU1dvcmtlckdsb2JhbFNjb3BlIHsKIAogICAgIERFQ0xBUkVfSU5GTzsK
IAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBE
T01TdHJ1Y3R1cmVJRDo6U2hhcmVkV29ya2VyR2xvYmFsU2NvcGU7CiAgICAgc3RhdGljIEpTQzo6
U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAg
IHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlw
ZSwgSlNDOjpUeXBlSW5mbyhKU0M6Okdsb2JhbE9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwg
aW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0aW9ucy5oIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rpb25zLmgKaW5kZXggYjQyNDBm
MDc1M2Y1MDI3MDYwYzdkODE0NjQ3Y2JiMDAwZTA4MTVjNy4uYTY0OTI4OThmZTc5ODExZTg4ZmIz
YWU1ZGRiZmIyZDU2YWY3MjNlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rpb25zLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rpb25zLmgKQEAgLTIwLDYgKzIw
LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5j
bHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdENFUmVhY3Rpb25zLmgiCiAjaW5j
bHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00Myw2ICs0NCw3IEBAIGNsYXNzIEpTVGVz
dENFUmVhY3Rpb25zIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0Q0VSZWFjdGlvbnM+IHsKIAog
ICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQg
c3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdENFUmVhY3Rpb25zOwogICAgIHN0
YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAg
ewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0
LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFn
cyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllci5oIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rpb25z
U3RyaW5naWZpZXIuaAppbmRleCAwOWM0ZGUzZGQxZmYwYTM4YjI4OWZmNWI1Y2U3YjA5N2RkM2M1
ZTgwLi5hY2FmYjg4YzIyMjc4MGRlY2JlM2NhOWQzNzg1ZGQyNTA2OGEyMWNkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q0VSZWFjdGlv
bnNTdHJpbmdpZmllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAog
I3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNE
T01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXIuaCIKICNp
bmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNU
ZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllciA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdENFUmVh
Y3Rpb25zU3RyaW5naWYKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4
cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdENF
UmVhY3Rpb25zU3RyaW5naWZpZXI7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVj
dHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhK
U0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RDYWxsVHJhY2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0Q2FsbFRyYWNlci5oCmluZGV4IGUzMDYxMTg2YjY1YmU5MWI2N2Y1NGJlMzNkMWMzM2Ez
MjkyM2I1ODAuLjMzNWZlNDFiNGI3MDkwMWJjMDZkZDUzYTc1Mzg2MmJkZGY0ZjAzNzggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxs
VHJhY2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdENhbGxUcmFjZXIuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2lu
Y2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNs
dWRlICJUZXN0Q2FsbFRyYWNlci5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpA
QCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RDYWxsVHJhY2VyIDogcHVibGljIEpTRE9NV3Jh
cHBlcjxUZXN0Q2FsbFRyYWNlcj4gewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGlj
IGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlE
OjpUZXN0Q2FsbFRyYWNlcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6
OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJl
OjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6
T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENs
YXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IuaAppbmRl
eCBmM2ZjMDRjZDA1YmNjODU2Zjk4ZmRjZTk1ZTUzOGEyM2VhOTRiN2I3Li5mYjY3YWEyMzkxMWU0
NmQ0ZGE1YzQ4MzQzYjI0M2I0MmVjZWUzNjdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0
b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJh
Z21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdy
YXBwZXIuaCIKICNpbmNsdWRlICJUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IuaCIK
ICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3Mg
SlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IgOiBwdWJsaWMgSlNET01XcmFwcGVy
PFRlc3RDbGFzc1dpdGhKU0IKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25z
dGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVz
dENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVy
ZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4g
SlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6
VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpO
b25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMuaAppbmRleCAwYTE1
ZTY3N2VjMmQyNDA4YmU5YzEyZGE0MzVjMzUzMDdkNGUzYmE3Li5kZjM2ZjVjYWU1MmRjNzZhZmU4
MzAxZTFkMzNjZWJiNzQzYzkwZTk0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcy5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRpb25hbEluY2x1
ZGVzLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01T
dHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdENv
bmRpdGlvbmFsSW5jbHVkZXMuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAg
LTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcyA6IHB1YmxpYyBK
U0RPTVdyYXBwZXI8VGVzdENvbmRpdGlvbmFsSW5jbHVkZXM+IHsKIAogICAgIERFQ0xBUkVfSU5G
TzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXgg
PSBET01TdHJ1Y3R1cmVJRDo6VGVzdENvbmRpdGlvbmFsSW5jbHVkZXM7CiAgICAgc3RhdGljIEpT
Qzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAg
ICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3Rv
dHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5m
bygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9uYWxseVJlYWRX
cml0ZS5oCmluZGV4IGMxYzgzYTk5MDg1MzFjZDFlNWYxOGIzZmZkNWQ1MzBmNmUzYTYxNWIuLjMx
MTQ0N2QzOGFhMjk1M2MyODIwNTllMDkzNDVkOGNlMjUwMTUzYmEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRpb25hbGx5UmVh
ZFdyaXRlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21h
IG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBw
ZXIuaCIKICNpbmNsdWRlICJUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZS5oIgogI2luY2x1ZGUg
PHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RDb25k
aXRpb25hbGx5UmVhZFdyaXRlIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0Q29uZGl0aW9uYWxs
eVJlYWRXcgogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01T
dHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0Q29uZGl0aW9u
YWxseVJlYWRXcml0ZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVy
ZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpT
VmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpj
cmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2Jq
ZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERPTUpJ
VC5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERPTUpJ
VC5oCmluZGV4IDBlZGI4NGJmN2VhMmIzMWVkYTY3MGUzNTI0NmMyODYwMDEzZDdhNzAuLjE1NDJk
MDZmZjcwMGY2M2RjMzA4YmRhNTUwZmIyMzdmYzZiNmUzZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RET01KSVQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RE9NSklULmgKQEAgLTIw
LDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgi
CiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiSlNOb2RlLmgiCiAjaW5jbHVk
ZSAiVGVzdERPTUpJVC5oIgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RET01KSVQgOiBw
dWJsaWMgSlNOb2RlIHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4
cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdERP
TUpJVDsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZN
JiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJv
dG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0s
IGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6SlNUeXBlKEpTTm9k
ZVR5cGUpLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVs
dFRvSlNPTi5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dERlZmF1bHRUb0pTT04uaAppbmRleCBmNDdkNmM4MDk2ODBhNjg3Y2U2OTkyNzQzZTIzYmQwZjAz
ZmQxZGRkLi4zMmNkYTllNzVkMzc1NDBkZjZiZGQ0Y2UyNGY4YjE2NzI1YzdkZGMwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVs
dFRvSlNPTi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3REZWZhdWx0VG9KU09OLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAK
KyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAj
aW5jbHVkZSAiVGVzdERlZmF1bHRUb0pTT04uaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95
ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0RGVmYXVsdFRvSlNPTiA6IHB1Ymxp
YyBKU0RPTVdyYXBwZXI8VGVzdERlZmF1bHRUb0pTT04+IHsKIAogICAgIERFQ0xBUkVfSU5GTzsK
IAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBE
T01TdHJ1Y3R1cmVJRDo6VGVzdERlZmF1bHRUb0pTT047CiAgICAgc3RhdGljIEpTQzo6U3RydWN0
dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVy
biBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlND
OjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6
Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQuaCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVy
ZWRCeUV4cG9zZWQuaAppbmRleCAyODE3Yzk3OTg3ZGNjNmZhMWQwZTQ4MzczMjVkYTRiYzZlM2Y5
NjU3Li40MGMwZDRkMjA5M2VjNmVmMGNhMDU2NjFiZGM2ODkwODk3N2ExNGJhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRv
SlNPTkZpbHRlcmVkQnlFeHBvc2VkLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZC5oCkBAIC0y
MCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5o
IgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3REZWZhdWx0VG9KU09O
RmlsdGVyZWRCeUV4cG9zZWQuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAg
LTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2Vk
IDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0RGVmYXVsdFRvSlMKIAogICAgIERFQ0xBUkVfSU5G
TzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXgg
PSBET01TdHJ1Y3R1cmVJRDo6VGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZDsKICAg
ICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlND
OjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQog
ICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9i
amVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJl
RmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05JbmRpcmVjdElu
aGVyaXRhbmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UuaAppbmRleCA4NjczYzUxMzNiNGUw
Mjc2YzQ4MzkzMTYzNTY5ZDU1OTBlNjM0ODdjLi41NGY3ZTBlOTJiNmE2ZmRiZjJhNmE4MTg0MWZm
NjEwOTQ0MDQyOGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNP
TkluZGlyZWN0SW5oZXJpdGFuY2UuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UK
IAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIK
ICNpbmNsdWRlICJKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdC5oIgogI2luY2x1ZGUgIlRlc3RE
ZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZS5oIgpAQCAtNDIsNiArNDMsNyBAQCBjbGFz
cyBKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZSA6IHB1YmxpYyBKU1Rlc3RE
ZWZhdWx0VG9KU09OSW5oZXJpdAogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNv
bnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpU
ZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2U7CiAgICAgc3RhdGljIEpTQzo6U3Ry
dWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJl
dHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwg
SlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBK
U0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdC5oIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0LmgKaW5k
ZXggMjQ0OTNhYzYzMDliNTllNjliYTFlYjcwNGIyN2MyOGRmMmE4OGUyZS4uMDMwZmFmYmEyNTJj
OGFlZTIwNTRlYmQ3NGFjNzEzNzAxZDlkY2I0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRU
b0pTT05Jbmhlcml0LmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNs
dWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVk
ZSAiSlNUZXN0RGVmYXVsdFRvSlNPTi5oIgogI2luY2x1ZGUgIlRlc3REZWZhdWx0VG9KU09OSW5o
ZXJpdC5oIgpAQCAtNDIsNiArNDMsNyBAQCBjbGFzcyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJp
dCA6IHB1YmxpYyBKU1Rlc3REZWZhdWx0VG9KU09OIHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAor
ICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01T
dHJ1Y3R1cmVJRDo6VGVzdERlZmF1bHRUb0pTT05Jbmhlcml0OwogICAgIHN0YXRpYyBKU0M6OlN0
cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICBy
ZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUs
IEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwg
SlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbC5oIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0
RmluYWwuaAppbmRleCAxMGQ2MDI0NTkzNzAwZTRjOTJlMWY5Yjg0MGEyM2IxNmUzM2QxYzY0Li5i
ZGEwN2I4MDM0NDA1M2U3NzUyMmE1YWRkZjJlN2I4NjcxYjYxZjYxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTklu
aGVyaXRGaW5hbC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAog
I3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNE
T01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQuaCIKICNp
bmNsdWRlICJUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbC5oIgpAQCAtNDIsNiArNDMsNyBA
QCBjbGFzcyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsIDogcHVibGljIEpTVGVzdERl
ZmF1bHRUb0pTT05Jbmhlcml0IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBj
b25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6
VGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWw7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJl
KiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBK
U0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpU
eXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5v
bkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5
bnRoZXRpY0F0dHJpYnV0ZS5oCmluZGV4IGQwZWZhZGU1NWM1N2I0ZjBlOGVjODZmOTQ4MWMxNjhj
ZjUyNGVjOTIuLjNkNDIyOGM0M2FlNmRkMmNlZjY0ZGVjNGFkMGIwOGRlN2VhZmY3YjggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWxl
Z2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRy
aWJ1dGUuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRP
TVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0
RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZS5oIgogI2luY2x1ZGUgPHd0Zi9OZXZl
ckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3REZWxlZ2F0ZVRvU2hh
cmVkU3ludGhldGljQXR0cmlidXRlIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0RGVsZWdhdAog
CiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJ
RCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0RGVsZWdhdGVUb1NoYXJlZFN5
bnRoZXRpY0F0dHJpYnV0ZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6
OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJl
OjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6
T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERv
bWFpblNlY3VyaXR5LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0RG9tYWluU2VjdXJpdHkuaAppbmRleCA4YjM5ODQ3NDdjMjhhMTNmMzk1OTJjZWUyNWY2
MTI1MjMzMzQ0OGQwLi45MTVjNzhjZGJlMTQzZGZkYTUwMWM0NGI1YWIzZjZkNWRlZjU2NjFiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
RG9tYWluU2VjdXJpdHkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RG9tYWluU2VjdXJpdHkuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21h
IG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBw
ZXIuaCIKICNpbmNsdWRlICJUZXN0RG9tYWluU2VjdXJpdHkuaCIKICNpbmNsdWRlIDx3dGYvTmV2
ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0RG9tYWluU2VjdXJp
dHkgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3REb21haW5TZWN1cml0eT4gewogCiAgICAgREVD
TEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1
cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0RG9tYWluU2VjdXJpdHk7CiAgICAgc3RhdGlj
IEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAg
ICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHBy
b3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwg
aW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFbmFibGVkQnlTZXR0aW5nLmggYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEJ5U2V0dGluZy5oCmlu
ZGV4IGM3NjhhNmFkZGI5ZDkyYjNlNzQ3MzdhZTNhYzAyNGE2NjViNjAzODQuLjJmZDY4MTk4ZmM2
MWRjN2VjOTZhYzBlYmJhZjAwOGVjOWZmNGY2OTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFbmFibGVkQnlTZXR0aW5nLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEVuYWJsZWRCeVNl
dHRpbmcuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRP
TVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0
RW5hYmxlZEJ5U2V0dGluZy5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAt
NDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RFbmFibGVkQnlTZXR0aW5nIDogcHVibGljIEpTRE9N
V3JhcHBlcjxUZXN0RW5hYmxlZEJ5U2V0dGluZz4gewogCiAgICAgREVDTEFSRV9JTkZPOwogCisg
ICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0
cnVjdHVyZUlEOjpUZXN0RW5hYmxlZEJ5U2V0dGluZzsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1
cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJu
IEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6
OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6
Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEVuYWJsZWRGb3JDb250ZXh0LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEZvckNvbnRleHQuaAppbmRleCA2MGVmNDdj
OWVhOTliYTAyZGRhNmE2NTNlMTZiZGU0MTc1ZWJmNDMyLi5hZjZjNmI0NTljNTEzZWY1MTAxOGVl
ZGE4NzgwMDEzZDBhNGE3ODdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEZvckNvbnRleHQuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEZvckNvbnRleHQuaApA
QCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVy
ZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0RW5hYmxlZEZv
ckNvbnRleHQuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0
LDcgQEAgY2xhc3MgSlNUZXN0RW5hYmxlZEZvckNvbnRleHQgOiBwdWJsaWMgSlNET01XcmFwcGVy
PFRlc3RFbmFibGVkRm9yQ29udGV4dD4gewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3Rh
dGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVy
ZUlEOjpUZXN0RW5hYmxlZEZvckNvbnRleHQ7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBj
cmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6
OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBl
SW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFy
cmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRDb25zdHJ1Y3Rvci5oCmluZGV4IDVlNDY2NDU3NzcwMjc4
NGM2NDA1ZTI5ZDY1OTI5YzljMzFlMzMwMzguLmRhMDFiN2UxMGMxY2YwOWNhMjRjYzM3YTk3OTk4
Y2ViNTdjM2YzYTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50Q29uc3RydWN0b3IuaApAQCAtMjAsNiAr
MjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNp
bmNsdWRlICJKU0RPTUNvbnZlcnREaWN0aW9uYXJ5LmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVy
LmgiCiAjaW5jbHVkZSAiSlNFdmVudC5oIgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RF
dmVudENvbnN0cnVjdG9yIDogcHVibGljIEpTRXZlbnQgewogCiAgICAgREVDTEFSRV9JTkZPOwog
CisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERP
TVN0cnVjdHVyZUlEOjpUZXN0RXZlbnRDb25zdHJ1Y3RvcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1
Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0
dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBK
U0M6OlR5cGVJbmZvKEpTQzo6SlNUeXBlKEpTRXZlbnRUeXBlKSwgU3RydWN0dXJlRmxhZ3MpLCBp
bmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50VGFyZ2V0LmggYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQuaAppbmRleCA5MzkxZDJh
MDFhNDhlNzEwYTdjMzFjMDliNDY5Nzg3N2I4MmQ5MDdkLi45NGQ5YjNjNzQwZGIxMDg3ZjFhNGVh
YTg5ZTMxOTBmYzFlNDc1M2JjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQuaApAQCAtMjAsNiArMjAs
NyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNs
dWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJKU0V2ZW50VGFyZ2V0LmgiCiAjaW5jbHVk
ZSAiVGVzdEV2ZW50VGFyZ2V0LmgiCkBAIC00Nyw2ICs0OCw3IEBAIGNsYXNzIEpTVGVzdEV2ZW50
VGFyZ2V0IDogcHVibGljIEpTRXZlbnRUYXJnZXQgewogCiAgICAgREVDTEFSRV9JTkZPOwogCisg
ICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0
cnVjdHVyZUlEOjpUZXN0RXZlbnRUYXJnZXQ7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBj
cmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6
OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBl
SW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok1heUhh
dmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNlcHRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNlcHRpb24uaAppbmRleCA0ZGZmOTYwYjgyYWRl
NGFkNWUyODE2YjdlZDdjMDg0Y2M3NGU1MzdjLi4zNTkzYzFiNDFhMzI0YWY0ZWViZWIzZDM2MzFh
Mjk3Mjc0MjZlZTY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0RXhjZXB0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV4Y2VwdGlvbi5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNw
cmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9N
V3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RFeGNlcHRpb24uaCIKICNpbmNsdWRlIDxKYXZhU2Ny
aXB0Q29yZS9FcnJvclByb3RvdHlwZS5oPgpAQCAtNDQsNiArNDUsNyBAQCBjbGFzcyBKU1Rlc3RF
eGNlcHRpb24gOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RFeGNlcHRpb24+IHsKIAogICAgIERF
Q0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0
dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdEV4Y2VwdGlvbjsKICAgICBzdGF0aWMgSlND
OjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAg
ICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90
eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZv
KCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdC5oIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9v
dC5oCmluZGV4IGU0NTU5YmI4NTEwNGNjZmRiZWUyMWZlYTNhMmZjMWIxZmQ0ZTA5YjYuLjFkMTcw
N2YxOGU1NjRmNjY3ZTJlNDg0NTUzNzJjZDNjNTczZmMyYjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJv
b3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
R2VuZXJhdGVBZGRPcGFxdWVSb290LmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNl
CiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgi
CiAjaW5jbHVkZSAiVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdC5oIgogI2luY2x1ZGUgPHd0Zi9O
ZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RHZW5lcmF0ZUFk
ZE9wYXF1ZVJvb3QgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJv
bwogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1
cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0R2VuZXJhdGVBZGRPcGFx
dWVSb290OwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6
Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBw
cm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2
bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBl
LCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVJc1Jl
YWNoYWJsZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEdlbmVyYXRlSXNSZWFjaGFibGUuaAppbmRleCBjMWY3OTA5MWRjNzE4NzNiNTQ1ODUyOGU1NTA5
ZjI5MGJlYjk4YjRiLi5iNzhhYTJmZjliNGJmNGVkZDU4YmY5NWZkNDBiZDA5ZmE5NWQ2MjE5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
R2VuZXJhdGVJc1JlYWNoYWJsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlLmgKQEAgLTIwLDYgKzIwLDcgQEAK
IAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAi
SlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUuaCIKICNp
bmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNU
ZXN0R2VuZXJhdGVJc1JlYWNoYWJsZSA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdEdlbmVyYXRl
SXNSZWFjaGFibGU+IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4
cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdEdl
bmVyYXRlSXNSZWFjaGFibGU7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1
Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlND
OjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVy
ZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6
Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RH
bG9iYWxPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RHbG9iYWxPYmplY3QuaAppbmRleCA5YjA4YzA5MWQxNTBmYjU1YzM1ZjNjZTkzZjk2ZGYw
YWNhZGZiYzA0Li4wZmViNWM4NjgxNTA5NDU0ZDM2ZGUyNGRhYjhiZjNhMDUxYmJkNmE1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2xv
YmFsT2JqZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdEdsb2JhbE9iamVjdC5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQog
CisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgog
I2luY2x1ZGUgIlRlc3RHbG9iYWxPYmplY3QuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95
ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0R2xvYmFsT2JqZWN0IDogcHVibGlj
IEpTRE9NV3JhcHBlcjxUZXN0R2xvYmFsT2JqZWN0PiB7CiAKICAgICBERUNMQVJFX0lORk87CiAK
KyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9N
U3RydWN0dXJlSUQ6OlRlc3RHbG9iYWxPYmplY3Q7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJl
KiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBK
U0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpU
eXBlSW5mbyhKU0M6Okdsb2JhbE9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBK
U0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmggYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRp
Zmllci5oCmluZGV4IGM0NmMzZWQ3ODViZjMyNzY3YzNhNGM2YjBhNmY2MTgwYmQ5ZjQxYmIuLjVi
NjkwZmUwODY5OWRlZTcwMzkxYWIyM2Q4ODk2NmJhMzlhODVhYjAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyTm9J
ZGVudGlmaWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIuaApAQCAtMjAsNiArMjAsNyBAQAogCiAj
cHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RP
TVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllci5oIgog
I2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDksNiArNTAsNyBAQCBjbGFzcyBK
U1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0
SW5kZXhlZFNldHRlck5vSQogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0
ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0
SW5kZXhlZFNldHRlck5vSWRlbnRpZmllcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNy
ZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6
U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJ
bmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2
ZUluZGV4ZWRBY2Nlc3NvcnMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oCmluZGV4IGJlZDA0ODA3YmJiNzZkOTk2Mzk3ODEyMTQ4YzAx
NzM5ZDNmMjE4ZDQuLjIxNjY2NThjOWZlNTI2OGVlZTJlZDNiNzM0OGVjNThkMDAzOTU0YWQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJ
bmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9u
LmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1
Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdEluZGV4
ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3ll
ZC5oPgpAQCAtNDksNiArNTAsNyBAQCBjbGFzcyBKU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdF
eGNlcHRpb24gOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RJbmRleGVkU2V0dAogCiAgICAgREVD
TEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1
cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0
aW9uOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0m
IHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90
b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwg
Z2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBT
dHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmgKaW5kZXgg
MGNiZWMyYjRjNTEyZWRjM2UxYmQxOWY0NjA4ZDNmY2NhMjhkYmY2OS4uNThhMTAxMWYzNGRhNDA3
NmViMmVkNWI2ZGZkZjUxN2E2NjFhYmQ4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRl
eGVkU2V0dGVyV2l0aElkZW50aWZpZXIuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9u
Y2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIu
aCIKICNpbmNsdWRlICJUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmgiCiAjaW5jbHVk
ZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00OSw2ICs1MCw3IEBAIGNsYXNzIEpTVGVzdElu
ZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdEluZGV4
ZWRTZXR0ZXJXCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERP
TVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RJbmRleGVk
U2V0dGVyV2l0aElkZW50aWZpZXI7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVj
dHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhK
U0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRl
eGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKaW5kZXggZWNiMDU0ODQwNmYxZGU0
ZmRhNGJkYTVkOTY0N2RmYTc5MzMzMjEzMy4uOTA3MTU1OTgyNjM2MmFlZTU0ZmE4MzFkYTg5ODg1
NzYxNGIwYjhkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKQEAgLTExMDksNiArMTEwOSw3IEBA
IGNsYXNzIFRlc3RJbnRlcmZhY2VJdGVyYXRvciBmaW5hbCA6IHB1YmxpYyBUZXN0SW50ZXJmYWNl
SXRlcmF0b3JCYXNlIHsKICAgICAgICAgKTsKICAgICB9CiAKKyAgICBzdGF0aWMgY29uc3RleHBy
IERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RJbnRl
cmZhY2VJdGVyYXRvcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVy
ZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpT
VmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpj
cmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2Jq
ZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5oIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5oCmluZGV4
IDc2OWYyZGU5MjQxZDcyMTU3NzRjNzBkYmUzOTdjMmNjYWMzYzQ4YmYuLjhiNjc5MDk1MzM2N2Ni
ODI1ZGZkOTc2MjYwNTFlNWJkNmZjOWE2MGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlLmgKQEAgLTIyLDYg
KzIyLDcgQEAKIAogI2lmIEVOQUJMRShDb25kaXRpb24xKSB8fCBFTkFCTEUoQ29uZGl0aW9uMikK
IAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIK
ICNpbmNsdWRlICJUZXN0SW50ZXJmYWNlLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVk
Lmg+CkBAIC00Nyw2ICs0OCw3IEBAIGNsYXNzIFdFQkNPUkVfRVhQT1JUIEpTVGVzdEludGVyZmFj
ZSA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdEludGVyZmFjZT4gewogCiAgICAgREVDTEFSRV9J
TkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRl
eCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0SW50ZXJmYWNlOwogICAgIHN0YXRpYyBKU0M6OlN0cnVj
dHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1
cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpT
Qzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlND
OjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmUuaCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJz
Y29yZS5oCmluZGV4IDg2NDhjZWE1NTIxZWQzNDRmYWY0ZDg5NjNiZGNkMDgxNzhkZTYzYWIuLmU0
N2M5Mjc3OGU0OTQ2ZmNjNjBhYmEwNGQwMTUwN2U4MjBlNzFhOTUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2VMZWFkaW5n
VW5kZXJzY29yZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZS5oCkBAIC0yMCw2ICsyMCw3IEBACiAK
ICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpT
RE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZS5o
IgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFz
cyBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZSA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8
VGVzdEludGVyZmFjZUxlYWRpbgogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNv
bnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpU
ZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmU7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJl
KiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBK
U0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpU
eXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5v
bkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RJdGVyYWJsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuY3BwCmluZGV4IDVmNGZhNjlmYThkMWIwMTE5MWQ3YTQ4
NDIxYmVjOTMxYTg5NTZhZjIuLjk3ZWUyNzNmYWZhOGY1NmQ0ODIzMmExM2I2NTYxYjhlMTVmYjMy
YmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RJdGVyYWJsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEl0ZXJhYmxlLmNwcApAQCAtMjA0LDYgKzIwNCw3IEBAIGNsYXNzIFRlc3RJ
dGVyYWJsZUl0ZXJhdG9yIGZpbmFsIDogcHVibGljIFRlc3RJdGVyYWJsZUl0ZXJhdG9yQmFzZSB7
CiAgICAgICAgICk7CiAgICAgfQogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJ
RCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0SXRlcmFibGVJdGVyYXRvcjsK
ICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
SlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBl
KQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2Jh
bE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0
dXJlRmxhZ3MpLCBpbmZvKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEl0ZXJhYmxlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuaAppbmRleCAxNjM5MTk3ZDZiYTU3NDgw
MTQyNjE4YjVjZjcxNDJiYTA1YjllMzJmLi40MTg0MWY1MGFhYWE2ODM2NzBkOTZlOTVjZjU4MDNh
NDFlZWU5MjI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0SXRlcmFibGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21h
IG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBw
ZXIuaCIKICNpbmNsdWRlICJUZXN0SXRlcmFibGUuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0
cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0SXRlcmFibGUgOiBwdWJsaWMg
SlNET01XcmFwcGVyPFRlc3RJdGVyYWJsZT4gewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAg
c3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVj
dHVyZUlEOjpUZXN0SXRlcmFibGU7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVj
dHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhK
U0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RKU0J1aWx0aW5Db25zdHJ1Y3Rvci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yLmgKaW5kZXggY2FiZGE5YzkwNGU2
NDYzNGYyNTNiYWExOTRmMDZiNDM0YzEwNTgwMi4uNzczN2NjYjU3M2NjMGYxYWQyZDIxZGVmNWM2
ZjFmYzU1NDAyNjA5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRpbkNvbnN0cnVjdG9yLmgK
QEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1
cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
QEAgLTQwLDYgKzQxLDcgQEAgY2xhc3MgSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IgOiBwdWJs
aWMgSlNET01PYmplY3QgewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0
ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0
SlNCdWlsdGluQ29uc3RydWN0b3I7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVj
dHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhK
U0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24uaAppbmRleCA3ZGFjOGU1ZmUy
ZmVmOTE2N2I5MGFlYzJlNjIzMDAzNTAwYTE1YzIyLi5jMmI0YzlhZDdlMDQ1MmNlMDZiYzJkODMy
MDI5ZjIwZTk4MGQ2Y2RjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlv
bi5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3Ry
dWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RMZWdh
Y3lGYWN0b3J5RnVuY3Rpb24uaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAg
LTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uIDogcHVibGlj
IEpTRE9NV3JhcHBlcjxUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW8KIAogICAgIERFQ0xBUkVfSU5G
TzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXgg
PSBET01TdHJ1Y3R1cmVJRDo6VGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbjsKICAgICBzdGF0aWMg
SlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAg
ICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJv
dG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBp
bmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5Tm9JbnRlcmZh
Y2VPYmplY3QuaAppbmRleCAxMjY0Yjk4OGJkZTU5ZjJiNWU5ZTc5YWZlYzU4NWEzNjA2NDM4ZTZm
Li5iYjUwNjQyYjM0NzQzOWIyZDdhZmVkMWMxYzZhYTM2MDhlNTk0Njc3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5Tm9JbnRl
cmZhY2VPYmplY3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QuaApAQCAtMjIsNiArMjIsNyBAQAogCiAj
aWYgRU5BQkxFKENvbmRpdGlvbjIyKSB8fCBFTkFCTEUoQ29uZGl0aW9uMjMpCiAKKyNpbmNsdWRl
ICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAi
VGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0LmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJv
eWVkLmg+CkBAIC00NSw2ICs0Niw3IEBAIGNsYXNzIEpTVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2Jq
ZWN0IDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPCiAKICAgICBE
RUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVj
dHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdDsK
ICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
SlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBl
KQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2Jh
bE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0
dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJ
bnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zLmgKaW5kZXggZTliZDI5ODQ3ZTUyYzBkOTQ0ODIzZTMwNWY4MTQ1
YzU2MTljNDgyNi4uOTU3OTdiMjYwNWMzZmQzMGQ0OGJjN2U3MzM3NzY0ZDEwN2FkNTkwMiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExl
Z2FjeU92ZXJyaWRlQnVpbHRJbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElucy5oCkBAIC0yMCw2ICsyMCw3
IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1
ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5z
LmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00Niw2ICs0Nyw3IEBAIGNs
YXNzIEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRl
c3RMZWdhY3lPdmVycmlkZUJ1aWx0CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMg
Y29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6
OlRlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSog
Y3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlND
OjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlw
ZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlI
YXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2UuaAppbmRleCA2YmQxYWMyMjJlYjYxMDU0
NDU2ODY2MGYxMGI3NzFhZTQyYjBmMWU4Li41NjIzMTkxZTFhZDFlNjhhYjkwZTNkN2M3YTZjOTBj
OTVlMTZlMGEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0TWFwTGlrZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RNYXBMaWtlLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBv
bmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVy
LmgiCiAjaW5jbHVkZSAiVGVzdE1hcExpa2UuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95
ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0TWFwTGlrZSA6IHB1YmxpYyBKU0RP
TVdyYXBwZXI8VGVzdE1hcExpa2U+IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRp
YyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJ
RDo6VGVzdE1hcExpa2U7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1
cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpK
U1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6
Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9i
amVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RNYXBM
aWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucy5oCmlu
ZGV4IGI5MWFiZjEwYzUzZThlN2RlNjE0MDI3YTc4NWU0N2E2ZjcxYTUyZDQuLjc0MjcxNTZlYTQw
ZmU5MjRkZDM3YTA4NzQ0NzFlOTcxM2I4MDFlODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVy
YXRpb25zLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuaApAQCAtMjAsNiArMjAsNyBAQAog
CiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJK
U0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0
aW9ucy5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBA
QCBjbGFzcyBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zIDogcHVibGljIEpT
RE9NV3JhcHBlcjxUZXN0TWFwTGlrZVdpdAogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3Rh
dGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVy
ZUlEOjpUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9uczsKICAgICBzdGF0aWMgSlND
OjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAg
ICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90
eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZv
KCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllci5o
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5k
SW5kZXhlZFNldHRlck5vSWRlbnRpZmllci5oCmluZGV4IGViMzRiM2FiYjJhZGEyYTcxZTdhMjU4
OWJjMDEwMjA2ZDZiM2ZiYWQuLmNlYzRmNjU1NWM4NTM1Mzc4NjQwNTQ5YTJmZDEyMzc4ZjRjOThh
MjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVy
Tm9JZGVudGlmaWVyLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNs
dWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVk
ZSAiVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllci5oIgogI2luY2x1ZGUgPHd0
Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDksNiArNTAsNyBAQCBjbGFzcyBKU1Rlc3ROYW1lZEFu
ZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3ROYW1l
ZEFuZAogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1
Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0TmFtZWRBbmRJbmRl
eGVkU2V0dGVyTm9JZGVudGlmaWVyOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRl
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1
Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8o
SlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5k
ZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24u
aCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFu
ZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oCmluZGV4IDE2MWM1YzJkZWI0N2FiZTNi
NzEzMjZlZDUyMGI5YjFlNTQzODlmMTcuLmNlYmEzMDZlM2E0YjQ4MWJlZWIwNzA2MTNlMDZkODA1
YjY4ODQ4ZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZElu
ZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFn
bWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3Jh
cHBlci5oIgogI2luY2x1ZGUgIlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2Vw
dGlvbi5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDksNiArNTAsNyBA
QCBjbGFzcyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiA6IHB1
YmxpYyBKU0RPTVdyYXBwZXI8VGVzdE5hbQogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3Rh
dGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVy
ZUlEOjpUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb247CiAgICAgc3Rh
dGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7
CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3Qs
IHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdz
KSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4
ZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmgKaW5k
ZXggZTgzMGZlZmU0NmFlNzlkZThjYTk3MzUxNzRhNzhjOGE2MTUyZDFlYy4uODBlOWZlNDk4YzE3
ZWY0MGNmMDE5MDMxMTViZTRjOTBlNDc0MDdkOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJ
ZGVudGlmaWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmgKQEAgLTIwLDYgKzIw
LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5j
bHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRl
cldpdGhJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00
OSw2ICs1MCw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlm
aWVyIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRBCiAKICAgICBERUNMQVJFX0lORk87
CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0g
RE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcjsK
ICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
SlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBl
KQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2Jh
bE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0
dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVk
RGVsZXRlck5vSWRlbnRpZmllci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllci5oCmluZGV4IDgwNGM2OTg4NTk1
NDQxYTVhOTQxOWVlNmMxZjNkOGQ2M2NhZDE5ZmYuLmQ5MjBkODRkZDk0ZDBmNzBlOGQwMzU5NGM2
ZTEwZDExODA2M2UwYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXIuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyTm9JZGVu
dGlmaWVyLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJE
T01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVz
dE5hbWVkRGVsZXRlck5vSWRlbnRpZmllci5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3ll
ZC5oPgpAQCAtNDgsNiArNDksNyBAQCBjbGFzcyBKU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZp
ZXIgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3ROYW1lZERlbGV0ZXJOb0lkZQogCiAgICAgREVD
TEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1
cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyOwog
ICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBK
U0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUp
CiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFs
T2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1
cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRE
ZWxldGVyVGhyb3dpbmdFeGNlcHRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oCmluZGV4IDJm
ZGY4MTdjYWJhYmUyOTY4OTZmNjZkZDRhZThmNTcwNDYwMjkwZWQuLjEzMmU5ZWJkNDMyZmIyYTg3
MjhhZDFhMGJjN2ZjNTkwYTFjOGQ0MTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEg
b25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBl
ci5oIgogI2luY2x1ZGUgIlRlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oIgogI2lu
Y2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDgsNiArNDksNyBAQCBjbGFzcyBKU1Rl
c3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbiA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVz
dE5hbWVkRGVsZXRlcgogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhw
ciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0TmFt
ZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb247CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBj
cmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6
OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBl
SW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok1heUhh
dmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllci5oIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldp
dGhJZGVudGlmaWVyLmgKaW5kZXggNzE5OGE0ODNmNjRiMDE3OTg0OWI5MTI1MTUxNzRkMjk1YzBl
OTIyMS4uMzc0Yjg4ZWI1M2M2OGQ4OWI2NmI1ZTQxNDM3MjM3NmZlMGE2OTA1YSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVs
ZXRlcldpdGhJZGVudGlmaWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyLmgKQEAgLTIwLDYgKzIw
LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5j
bHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVu
dGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00OCw2ICs0OSw3
IEBAIGNsYXNzIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyIDogcHVibGljIEpTRE9N
V3JhcHBlcjxUZXN0TmFtZWREZWxldGVyV2l0CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBz
dGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0
dXJlSUQ6OlRlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllcjsKICAgICBzdGF0aWMgSlNDOjpT
dHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAg
cmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBl
LCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCks
IEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVk
R2V0dGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIuaAppbmRleCAxOTI1MGQ4OGU4YzdhNmM3NGQy
Njc4NGRlMjFiODRkYTNiMzNkZmZjLi4yZmQyYjlkMWM5ZGEwODFjN2Q4NDdmNTU5NjkwYmI0YTNh
ZTE2YTY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4
ZWRHZXR0ZXIuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUg
IkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJU
ZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJE
ZXN0cm95ZWQuaD4KQEAgLTQ4LDYgKzQ5LDcgQEAgY2xhc3MgSlNUZXN0TmFtZWREZWxldGVyV2l0
aEluZGV4ZWRHZXR0ZXIgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3ROYW1lZERlbGV0ZXIKIAog
ICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQg
c3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdE5hbWVkRGVsZXRlcldpdGhJbmRl
eGVkR2V0dGVyOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpT
Qzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1
ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0
ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RU
eXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29y
cyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aC5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGguaAppbmRleCBiMmQ0YTU0M2Q3
MTQ4NDk1OGZhZDg5OGI0OTI2YzlmZWRiN2ZhOGQ5Li4zZTBkZTJiNTdiODNjZjY1OTZmZDBiMDli
MGMwYmY5OTZiMWExMjlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRlckNhbGxXaXRoLmgK
QEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1
cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdE5hbWVkR2V0
dGVyQ2FsbFdpdGguaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ2LDYg
KzQ3LDcgQEAgY2xhc3MgSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aCA6IHB1YmxpYyBKU0RPTVdy
YXBwZXI8VGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGg+IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAor
ICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01T
dHJ1Y3R1cmVJRDo6VGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGg7CiAgICAgc3RhdGljIEpTQzo6U3Ry
dWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJl
dHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwg
SlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBK
U0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllci5o
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0
dGVyTm9JZGVudGlmaWVyLmgKaW5kZXggMWNhYTcyMDhhNjFhNzFkNGJjYzUzMjg4ZmNmYTMwZjVl
NWYzNGM1Mi4uNWU0NWJiZDEyZjllMWI0NThlOTEyYWY1ZTgwMTFhY2UxNmU5NTQ2MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVk
R2V0dGVyTm9JZGVudGlmaWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyLmgKQEAgLTIwLDYgKzIwLDcg
QEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVk
ZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVy
LmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00Niw2ICs0Nyw3IEBAIGNs
YXNzIEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyIDogcHVibGljIEpTRE9NV3JhcHBlcjxU
ZXN0TmFtZWRHZXR0ZXJOb0lkZW50CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMg
Y29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6
OlRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUq
IGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpT
Qzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5
cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5
SGF2ZUluZGV4ZWRBY2Nlc3NvcnMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIuaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRlcldp
dGhJZGVudGlmaWVyLmgKaW5kZXggNWE0ZDA3NTdjOTE0MWIwNTc3MGVmZDZkYmMxYWUxMzY5ZDg1
NWZlYy4uNjBhMTEyZDg0NDNiZjRjNjNlODZjNjFjY2QxMzA1ZjU1Y2ZlYmQ2MSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0
dGVyV2l0aElkZW50aWZpZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllci5oCkBAIC0yMCw2ICsyMCw3
IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1
ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3ROYW1lZEdldHRlcldpdGhJZGVudGlm
aWVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00Niw2ICs0Nyw3IEBA
IGNsYXNzIEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIgOiBwdWJsaWMgSlNET01XcmFw
cGVyPFRlc3ROYW1lZEdldHRlcldpdGhJCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0
aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJl
SUQ6OlRlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyOwogICAgIHN0YXRpYyBKU0M6OlN0cnVj
dHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1
cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpT
Qzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlND
OjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXIuaCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRl
ck5vSWRlbnRpZmllci5oCmluZGV4IDI1OTg5M2ZmYmYyODk1ZDhmZDg4MjBhZmI5MjNmNzk2NmQ5
NTRjZmQuLmQ4ZTYyZjBkOWJkZTIzMTkyNGIzMzU4OGIxZDc0ZTUxNDI2ZjJlMTYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNl
dHRlck5vSWRlbnRpZmllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllci5oCkBAIC0yMCw2ICsyMCw3IEBA
CiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUg
IkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllci5o
IgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDksNiArNTAsNyBAQCBjbGFz
cyBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllciA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVz
dE5hbWVkU2V0dGVyTm9JZGVudAogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNv
bnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpU
ZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXI7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBj
cmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6
OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBl
SW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok1heUhh
dmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmggYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJU
aHJvd2luZ0V4Y2VwdGlvbi5oCmluZGV4IDc4MjQzYTlhMTY0ZjEwYzQwNGIyZTE2ZmNjZWFhY2Q2
ZjA0NmU0ZjIuLjVkZTdlNzM0OWVhZTNhM2FjY2ZlZmViOTczNzc2OWVmY2Q2ZjhhZTMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uaApAQCAt
MjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMu
aCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0TmFtZWRTZXR0ZXJU
aHJvd2luZ0V4Y2VwdGlvbi5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAt
NDksNiArNTAsNyBAQCBjbGFzcyBKU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uIDog
cHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRTZXR0ZXJUaAogCiAgICAgREVDTEFSRV9JTkZP
OwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9
IERPTVN0cnVjdHVyZUlEOjpUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbjsKICAgICBz
dGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAg
IHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVj
dCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxh
Z3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVy
V2l0aElkZW50aWZpZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyLmgKaW5kZXggOGM4NGFhNDNhYjJiODg0
YzA2ZGRmOWY0YTQ1ZjI2MTE3NGUxMjRmOS4uYzc2OWRkNTg4ZjhlNDljMmMwOGZkN2NhNzQxMmU2
OWNlNTgyZTAzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRp
Zmllci5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9N
U3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RO
YW1lZFNldHRlcldpdGhJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVk
Lmg+CkBAIC00OSw2ICs1MCw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZp
ZXIgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3ROYW1lZFNldHRlcldpdGhJCiAKICAgICBERUNM
QVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVy
ZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyOwog
ICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBK
U0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUp
CiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFs
T2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1
cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoSW5kZXhlZEdldHRlci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIuaAppbmRleCA2OGUz
OWYyOWE4YWNjODk1MThjZGRmNTlmNTk5YzAwZDhiYjU2NDExLi5hZDUzZjg0YzI2YmIwYzJkNzk2
YzUzNGJkMjk2OGVjMTZiZWZiZjE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNl
dHRlcldpdGhJbmRleGVkR2V0dGVyLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNl
CiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgi
CiAjaW5jbHVkZSAiVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIuaCIKICNpbmNsdWRl
IDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ5LDYgKzUwLDcgQEAgY2xhc3MgSlNUZXN0TmFt
ZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlciA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdE5hbWVk
U2V0dGVyV2kKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9N
U3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdE5hbWVkU2V0
dGVyV2l0aEluZGV4ZWRHZXR0ZXI7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVj
dHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhK
U0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRl
eGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0
ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlci5oCmluZGV4IGQwNmEwNWJiOTYxMTE2YjFkMjE3
OGQ4M2I2YzdhYTZkMmU1YzkyZDguLjVmZDRlNTEyYjRlNzYxMjEyMDIxNjNhZmM0YzNjZmJiMWRk
NjVkZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0
aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXIuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9u
Y2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIu
aCIKICNpbmNsdWRlICJUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlci5o
IgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDksNiArNTAsNyBAQCBjbGFz
cyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyIDogcHVibGljIEpT
RE9NV3JhcHBlcjxUZXN0TmFtZQogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNv
bnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpU
ZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlcjsKICAgICBzdGF0aWMgSlND
OjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAg
ICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90
eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZv
KCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2Fj
eU92ZXJyaWRlQnVpbHRJbnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmgKaW5kZXgg
ZWI1MmUyY2Q5MjY4NWM3Zjk1NDg0YWMxZGFmZDUwOTkwMzNkMWU3Ny4uMmU5N2ZlYjQ2YzNjZGYz
NzI0YmU3Nzg1YzdjZGQ2YzQ0MDc2MDVjZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRl
QnVpbHRJbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucy5oCkBAIC0yMCw2ICsy
MCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2lu
Y2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdh
Y3lPdmVycmlkZUJ1aWx0SW5zLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBA
IC00OSw2ICs1MCw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRl
QnVpbHRJbnMgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3ROYW1lCiAKICAgICBERUNMQVJFX0lO
Rk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4
ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0
SW5zOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0m
IHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90
b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwg
Z2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBT
dHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzLmggYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5
VW5mb3JnZWFibGVQcm9wZXJ0aWVzLmgKaW5kZXggMDVhNmU1ODMyYzhhMGFlZGI4ZDI1NDYxNzQ3
MzI4YzljN2ZhNDYwYS4uZjMxMzI0NzQxZGI3ZmFjYmE4ZGE4YmQ1M2FiMDM5Yzk4NWRjNzUyNSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcy5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhM
ZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXMuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21h
IG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBw
ZXIuaCIKICNpbmNsdWRlICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9w
ZXJ0aWVzLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00OSw2ICs1MCw3
IEBAIGNsYXNzIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGll
cyA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBz
dGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0
dXJlSUQ6OlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXM7CiAg
ICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpT
Qzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkK
ICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxP
YmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVy
ZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNl
dHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0
SW5zLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVC
dWlsdElucy5oCmluZGV4IDhhMGY3YjNjNTFhYWVhM2NlMGZkNGFmMjZmOWI4OGI4YTFjM2YxMTEu
LjE4YWQzOWZiYmU0OTAwNWMxYmQzMGQ3Y2Q4ODc4MDc2N2Q2M2Q4ZDEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldp
dGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVp
bHRJbnMuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRP
TVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0
TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJp
ZGVCdWlsdElucy5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDksNiAr
NTAsNyBAQCBjbGFzcyBKU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3Bl
cnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAg
ICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3Ry
dWN0dXJlSUQ6OlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNB
bmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3Jl
YXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpT
dHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUlu
Zm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZl
SW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZXNwYWNlT2JqZWN0LmggYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZXNwYWNlT2JqZWN0LmgKaW5kZXggNWI1
NjE3MjVlNmZkOTQwZjA1ODgzZTY4MjZlYzMxOTljOWFjMzc3ZC4uN2NmNmI3Mjc2M2EzODM0OTUw
ZmVkYjAwZWZjMDI5ODM4MmJkM2UwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFjZU9iamVjdC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lc3BhY2VPYmplY3QuaApA
QCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVy
ZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpA
QCAtMzgsNiArMzksNyBAQCBjbGFzcyBKU1Rlc3ROYW1lc3BhY2VPYmplY3QgOiBwdWJsaWMgSlNE
T01PYmplY3QgewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBE
T01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0TmFtZXNw
YWNlT2JqZWN0OwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpT
Qzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1
ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0
ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RU
eXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Tm9kZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Tm9kZS5jcHAK
aW5kZXggMmY0ZWE2NWNjODAyMzM0MzRjMzdiZWI0MTNmY2MxZTQ2M2MxNWJiYy4uODVmZjk2Nzdm
MjNmMzdlOGY4ZDJmZjBiMDVlN2U5OTY0MTBkZjQwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5vZGUuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmNwcApAQCAtNDEwLDYg
KzQxMCw3IEBAIGNsYXNzIFRlc3ROb2RlSXRlcmF0b3IgZmluYWwgOiBwdWJsaWMgVGVzdE5vZGVJ
dGVyYXRvckJhc2UgewogICAgICAgICApOwogICAgIH0KIAorICAgIHN0YXRpYyBjb25zdGV4cHIg
RE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdE5vZGVJ
dGVyYXRvcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUg
cHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUo
dm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlw
ZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5vZGUuaCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmgKaW5kZXggMGU5NjJiZmY5N2QxNmRh
NjBjMmNiYjhjNTg5Njk5MWJmODIwOGYxMS4uYzlkOGRiNTNhNTgxNWE3MmI0YmQ0MTJiN2MzMzkz
NzMwYzMwYjVjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE5vZGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0Tm9kZS5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQog
CisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgog
I2luY2x1ZGUgIkpTTm9kZS5oIgogI2luY2x1ZGUgIlRlc3ROb2RlLmgiCkBAIC00Miw2ICs0Myw3
IEBAIGNsYXNzIFdFQkNPUkVfRVhQT1JUIEpTVGVzdE5vZGUgOiBwdWJsaWMgSlNOb2RlIHsKIAog
ICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQg
c3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdE5vZGU7CiAgICAgc3RhdGljIEpT
Qzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAg
ICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3Rv
dHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6OkpTVHlwZShKU05vZGVUeXBlKSwgU3RydWN0dXJlRmxh
Z3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9iai5oIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9iai5oCmluZGV4IGI3YmU4NjU2NGFmYzVlZTdi
NTA4MmI1N2VjY2M2ODZmODg2MTMzNWQuLjRlYWQ5ODQwNjZhYjE1MjY4YmU4NWVhOTAzOGQxOThi
MGY4OWQwODggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RPYmouaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0T2JqLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNp
bmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01Db252ZXJ0RGljdGlvbmFy
eS5oIgogI2luY2x1ZGUgIkpTRE9NQ29udmVydEVudW1lcmF0aW9uLmgiCiAjaW5jbHVkZSAiSlNE
T01XcmFwcGVyLmgiCkBAIC00OCw2ICs0OSw3IEBAIGNsYXNzIEpTVGVzdE9iaiA6IHB1YmxpYyBK
U0RPTVdyYXBwZXI8VGVzdE9iaj4gewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGlj
IGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlE
OjpUZXN0T2JqOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpT
Qzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1
ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0
ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RU
eXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29y
cyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbC5oCmluZGV4IDBjN2I4MjA0
MTk3Yzg0NDZlYTk2N2NmMTlhOGRmM2E1OTFhY2FiMjUuLjhiMzc3N2Y1OWJmMGRiNTljNmJiMmU5
NjFhMmFkMzkwM2U3ZDIzOWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPcGVyYXRpb25Db25kaXRpb25h
bC5oCkBAIC0yMiw2ICsyMiw3IEBACiAKICNpZiBFTkFCTEUoQ29uZGl0aW9uRGVyaXZlZCkKIAor
I2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNp
bmNsdWRlICJUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJE
ZXN0cm95ZWQuaD4KQEAgLTQ1LDYgKzQ2LDcgQEAgY2xhc3MgSlNUZXN0T3BlcmF0aW9uQ29uZGl0
aW9uYWwgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RPcGVyYXRpb25Db25kaXRpb25hbD4KIAog
ICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQg
c3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFs
OwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZt
LCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5
cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xv
YmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1
Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVj
dG9ycy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92
ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuaAppbmRleCAwMWFlYjZkN2FiZDQ5NjNjMzI3NThiNWY0YTli
NmE0NjY4YWRiOThjLi5mZjBmMGE4YTE4YmQ1YzY5Mzc0OGM5YmFhOGViOGE2NWQwNjIyMDYwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
T3ZlcmxvYWRlZENvbnN0cnVjdG9ycy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmgKQEAgLTIwLDYgKzIw
LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5j
bHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3Rv
cnMuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAg
Y2xhc3MgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycyA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8
VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3QKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRp
YyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJ
RDo6VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnM7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJl
KiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBK
U0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpU
eXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5v
bkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVj
dG9yc1dpdGhTZXF1ZW5jZS5oCmluZGV4IDg4ODFkMWZmOGJkNWVmNWYwNWJkYjJlYmJlM2EwY2Rm
MjM3Y2FhZGEuLjM3MmExOTE1YWUzM2FhOTkzZDhmZmRkZjc1N2ExZmJhNjI0OGI3N2MgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVy
bG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2Vx
dWVuY2UuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRP
TVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0
T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZS5oIgogI2luY2x1ZGUgPHd0Zi9OZXZl
ckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RPdmVybG9hZGVkQ29u
c3RydWN0b3JzV2l0aFNlcXVlbmNlIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0T3ZlcmxvYQog
CiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJ
RCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0T3ZlcmxvYWRlZENvbnN0cnVj
dG9yc1dpdGhTZXF1ZW5jZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6
OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJl
OjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6
T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFBs
dWdpbkludGVyZmFjZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFBsdWdpbkludGVyZmFjZS5oCmluZGV4IDA4OGJmZTUzZDQ5ZWI1NmRjZDU1NjgyN2Ew
NjgxYzNiYmJlNzhkODQuLjNlZmU5ZWU0NjI2OTU3MTY4OWNmNWFjYmRiYWZkOTI1MjFjMDg0YTAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RQbHVnaW5JbnRlcmZhY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0UGx1Z2luSW50ZXJmYWNlLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3By
YWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01X
cmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdFBsdWdpbkludGVyZmFjZS5oIgogI2luY2x1ZGUgPEph
dmFTY3JpcHRDb3JlL0NhbGxEYXRhLmg+CkBAIC01MCw2ICs1MSw3IEBAIGNsYXNzIEpTVGVzdFBs
dWdpbkludGVyZmFjZSA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdFBsdWdpbkludGVyZmFjZT4g
ewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1
cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0UGx1Z2luSW50ZXJmYWNl
OwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZt
LCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5
cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xv
YmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1
Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UHJv
bWlzZVJlamVjdGlvbkV2ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50LmgKaW5kZXggNzI5MDhiM2I0N2IwYTg4
NGI3NDQ0YTczMDU3ODcyN2Q1MTFiNjIxYy4uYjRjZTRkMDRmZTk2YWNjMzAxNzA4NGIzMTBmNDU2
ZmFiYzM1YzExMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQuaApA
QCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVy
ZXMuaCIKICNpbmNsdWRlICJKU0RPTUNvbnZlcnREaWN0aW9uYXJ5LmgiCiAjaW5jbHVkZSAiSlNE
T01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiSlNFdmVudC5oIgpAQCAtNDMsNiArNDQsNyBAQCBjbGFz
cyBKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQgOiBwdWJsaWMgSlNFdmVudCB7CiAKICAgICBE
RUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVj
dHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQ7CiAg
ICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpT
Qzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkK
ICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxP
YmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6OkpTVHlwZShKU0V2ZW50VHlwZSks
IFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZWFkT25seU1hcExp
a2UuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZWFk
T25seU1hcExpa2UuaAppbmRleCBiMjI3YjBlMzAxYmU5NWZiZmFiOWRiY2EzYTY0NDAwZjIzZDkw
ZjgwLi5iOGRkODQzNjJlOWNlZjVlYWExOTBmMDUxODY1OWZiNjA4MTZiOTM5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlN
YXBMaWtlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdFJlYWRPbmx5TWFwTGlrZS5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQog
CisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgog
I2luY2x1ZGUgIlRlc3RSZWFkT25seU1hcExpa2UuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0
cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0UmVhZE9ubHlNYXBMaWtlIDog
cHVibGljIEpTRE9NV3JhcHBlcjxUZXN0UmVhZE9ubHlNYXBMaWtlPiB7CiAKICAgICBERUNMQVJF
X0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUlu
ZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RSZWFkT25seU1hcExpa2U7CiAgICAgc3RhdGljIEpT
Qzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAg
ICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3Rv
dHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5m
bygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZWFkT25seVNldExpa2UuaCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZWFkT25seVNldExpa2UuaAppbmRleCBm
ZTBmN2E5N2QzZDQ4YzhjZGI0YWEyMWRlZTY3OTJiY2RjY2FlMzVjLi4yNDRmYzljMzNmNGU5M2E4
ZjA1ZGUxOTBhMDk0ZWUzMjVlZGQ2MWNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlTZXRMaWtlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlYWRPbmx5U2V0TGlrZS5o
CkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0
dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RSZWFkT25s
eVNldExpa2UuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0
LDcgQEAgY2xhc3MgSlNUZXN0UmVhZE9ubHlTZXRMaWtlIDogcHVibGljIEpTRE9NV3JhcHBlcjxU
ZXN0UmVhZE9ubHlTZXRMaWtlPiB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMg
Y29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6
OlRlc3RSZWFkT25seVNldExpa2U7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVj
dHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhK
U0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QuaAppbmRleCA2MzQ2ODAzZWZh
NDgyN2QyMDgwM2E2ZTUxY2MzNWY5YWY5ODNkNjAzLi5jNmEwZWU5ZTJlN2IyOWZkOWZkOWZlNmUz
ZmFhODZjZDFjMjE0NDFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0LmgKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29z
dC5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3Ry
dWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RSZXBv
cnRFeHRyYU1lbW9yeUNvc3QuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAg
LTQ0LDYgKzQ1LDcgQEAgY2xhc3MgSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0IDogcHVibGlj
IEpTRE9NV3JhcHBlcjxUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3MKIAogICAgIERFQ0xBUkVfSU5G
TzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXgg
PSBET01TdHJ1Y3R1cmVJRDo6VGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdDsKICAgICBzdGF0aWMg
SlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAg
ICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJv
dG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBp
bmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5o
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6
ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5oCmluZGV4IDVmZDcyMTI2NWVmNWIyNjRlOWM2MjE1ZTVj
NTcwODM1YTcyMzJiZmQuLjI1ZWEzMzUyYjc5YTVhYjk3YTRhNjJlMjdkNzBmYTQ0ZjQ3MWFkNGQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJm
YWNlLmgKQEAgLTIyLDYgKzIyLDcgQEAKIAogI2lmIEVOQUJMRShDb25kaXRpb24xKSB8fCBFTkFC
TEUoQ29uZGl0aW9uMikKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJK
U0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJm
YWNlLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00NSw2ICs0Niw3IEBA
IGNsYXNzIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZSA6IHB1YmxpYyBKU0RP
TVdyYXBwZXI8VGVzdFNlcmlhbGl6ZWRTCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0
aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJl
SUQ6OlRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2U7CiAgICAgc3RhdGljIEpTQzo6
U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAg
IHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlw
ZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygp
LCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2V0TGlrZS5oCmluZGV4IDc0ZWQyNjYxM2Y4NmM4ZmVlYWQ3
ZTQ2MjE3Y2YzODBhMjRhYjFiYTAuLmY1OGE0ZDlmMTUzMTVlZTVhYzk2MTA2NDI5MGM4Y2MzOWRh
YmRlYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RTZXRMaWtlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdFNldExpa2UuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UK
IAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIK
ICNpbmNsdWRlICJUZXN0U2V0TGlrZS5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5o
PgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RTZXRMaWtlIDogcHVibGljIEpTRE9NV3Jh
cHBlcjxUZXN0U2V0TGlrZT4gewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNv
bnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpU
ZXN0U2V0TGlrZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFs
dWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVh
dGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0
VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNldExpa2VX
aXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zLmgKaW5kZXgg
MWViMTgwOWI4MWQ5Yzk0ZjU0ZTcxNzczMDdlMWU1ZGY0ZTlmMDUxYS4uNDRiYzE2ZDhmMWVkNDQ0
Mjk1YmJjZDg3MzBjZmM5ODRlYjNhM2RiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlv
bnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucy5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNw
cmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9N
V3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25z
LmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00Myw2ICs0NCw3IEBAIGNs
YXNzIEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMgOiBwdWJsaWMgSlNET01X
cmFwcGVyPFRlc3RTZXRMaWtlV2l0CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMg
Y29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6
OlRlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zOwogICAgIHN0YXRpYyBKU0M6OlN0
cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICBy
ZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUs
IEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwg
SlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllci5oCmluZGV4IDZmOGI5ODk4ZjRhNjVh
NTYwMmZjNGU1MjFiMDU2ZTMwMjNkMTdkZGIuLjljNTMzODVmZmIzNzVjM2E0NjIxNTJhMGRhZDU1
ZGJlNTJhNTRlZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllci5oCkBAIC0yMCw2ICsyMCw3IEBACiAK
ICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpT
RE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RTdHJpbmdpZmllci5oIgogI2luY2x1ZGUgPHd0
Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RTdHJpbmdp
ZmllciA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdFN0cmluZ2lmaWVyPiB7CiAKICAgICBERUNM
QVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVy
ZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RTdHJpbmdpZmllcjsKICAgICBzdGF0aWMgSlND
OjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAg
ICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90
eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZv
KCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uLmggYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJB
bm9ueW1vdXNPcGVyYXRpb24uaAppbmRleCBjYjNmZDM3YjAzNzA5ZmFiNzdiOTQ2NjA3MWQwMTlj
YzUzYjM3YzJhLi5hMTRjZTQzMmNlYzEzOWEzZWIyYzQyODg1MzY2Y2VmMjRhZjliYmU4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3Ry
aW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24uaApA
QCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVy
ZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0U3RyaW5naWZp
ZXJBbm9ueW1vdXNPcGVyYXRpb24uaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4K
QEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRp
b24gOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RTdHJpbmdpZmllckEKIAogICAgIERFQ0xBUkVf
SU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5k
ZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdFN0cmluZ2lmaWVyQW5vbnltb3VzT3BlcmF0aW9uOwog
ICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBK
U0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUp
CiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFs
T2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1
cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJh
dGlvbi5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0
cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24uaAppbmRleCAyMWQxYmYyNjYzYmVmMjQ2NjYyZGI1OTli
MzY2ZjhhOTVlMTgxNDdkLi5mZmEzZTQxMmQ5YTA1YmJiNmI2NDQ2Mjc0N2YzMmY1NGNkMDFiZjhi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uLmgKQEAg
LTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVz
LmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdFN0cmluZ2lmaWVy
TmFtZWRPcGVyYXRpb24uaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQz
LDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbiA6IHB1Ymxp
YyBKU0RPTVdyYXBwZXI8VGVzdFN0cmluZ2lmaWVyTmFtZWQKIAogICAgIERFQ0xBUkVfSU5GTzsK
IAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBE
T01TdHJ1Y3R1cmVJRDo6VGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb247CiAgICAgc3RhdGlj
IEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAg
ICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHBy
b3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwg
aW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVk
QXMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJp
bmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXMuaAppbmRleCA5YzFlNDcyMGVjZTA2MzEwZGM4
MDQ5MTNiZTI3NTgwZmU2ZmEyNTczLi5hNGJmN2JlZmJlNTk3Y2MxYjVkYzc2ODY4ZGNlZDUyMjlh
MzQ0NmUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0
aW9uSW1wbGVtZW50ZWRBcy5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisj
aW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2lu
Y2x1ZGUgIlRlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXMuaCIKICNpbmNsdWRl
IDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0U3Ry
aW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0
U3RyaW5naWYKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9N
U3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdFN0cmluZ2lm
aWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBczsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNy
ZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6
U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJ
bmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJy
YXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZy5oIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFt
ZWRUb1N0cmluZy5oCmluZGV4IGIwNzgyODcyYzJhN2VlNGJhZDVkYzZmMzY3YTNmMGVkNDc4OGVj
NDkuLjE1ZDBlYTZiNGIwMmM1NTIxODYzNjMwNGEyYzFlNWNiY2UxYWU4NmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmll
ck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nLmgK
QEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1
cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdFN0cmluZ2lm
aWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZy5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3ll
ZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5h
bWVkVG9TdHJpbmcgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RTdHJpbmdpZgogCiAgICAgREVD
TEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1
cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRv
U3RyaW5nOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6
Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBw
cm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2
bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBl
LCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJS
ZWFkT25seUF0dHJpYnV0ZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUuaAppbmRleCA2NzkzMTNlZGY3
YTE5NzMzYTNkZDI0ODI5OTdmYmY1YjI4NGU2ZGRkLi4yNmY3NWM5MTZhOWI0MGM1MmZmZTUxMTQx
ODVkNDhjZGFmMjI1ODk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllclJl
YWRPbmx5QXR0cmlidXRlLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNp
bmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5j
bHVkZSAiVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUuaCIKICNpbmNsdWRlIDx3dGYv
TmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0U3RyaW5naWZp
ZXJSZWFkT25seUF0dHJpYnV0ZSA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdFN0cmluZ2lmaWVy
UmUKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0
dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdFN0cmluZ2lmaWVyUmVh
ZE9ubHlBdHRyaWJ1dGU7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1
cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpK
U1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6
Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9i
amVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJp
bmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlLmgKaW5kZXgg
MTIxMzc0ZTQzZDgwMDQzMDNjZWQ1ZDc5MzcxNWY5MTVhNDczMTNjYy4uY2ZhY2FkNGQxY2U5MzQ3
ZDY4ZTZiOGVhOTI3NzVmY2MyZWUzYmYyMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRl
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0
cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdt
YSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFw
cGVyLmgiCiAjaW5jbHVkZSAiVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlLmgiCiAj
aW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00Myw2ICs0NCw3IEBAIGNsYXNzIEpT
VGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlIDogcHVibGljIEpTRE9NV3JhcHBlcjxU
ZXN0U3RyaW5naWZpZXJSCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3Rl
eHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RT
dHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUq
IGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpT
Qzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5
cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9u
QXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdFRhZ2dlZFdyYXBwZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RUYWdnZWRXcmFwcGVyLmgKaW5kZXggYjFlMTg5ZmI4YzhjM2U2MDU1
YTJmY2ZkNDcxZmM3NTk3ZjUzMGIyZi4uOTI0YTQwODg0YTVmYTg3MzVlYmVkMmQ1YWI2NmU5OTgx
OWZlZjQwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdFRhZ2dlZFdyYXBwZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0VGFnZ2VkV3JhcHBlci5oCkBAIC0yMCw2ICsyMCw3IEBACiAK
ICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpT
RE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RUYWdnZWRXcmFwcGVyLmgiCiAjaW5jbHVkZSA8
d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00NCw2ICs0NSw3IEBAIGNsYXNzIEpTVGVzdFRhZ2dl
ZFdyYXBwZXIgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RUYWdnZWRXcmFwcGVyLCBTaWduZWRQ
dHJUcmFpCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0
cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RUYWdnZWRXcmFw
cGVyOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0m
IHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90
b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwg
Z2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBT
dHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VHlwZWRlZnMuaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUeXBlZGVmcy5oCmlu
ZGV4IDZjZjIzYTdmNzA5ODg4MTc2ZWRmMDM2YTJiZmUyN2I0Mzk0YmU1NmEuLmYyZTMwOWI1YzI3
NmIzNzgzZWEyY2Y1NTFiZTM4NTA3YmUyNzJjZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUeXBlZGVmcy5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUeXBlZGVmcy5oCkBAIC0yMCw2
ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgog
I2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RUeXBlZGVmcy5oIgogI2lu
Y2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rl
c3RUeXBlZGVmcyA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdFR5cGVkZWZzPiB7CiAKICAgICBE
RUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVj
dHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RUeXBlZGVmczsKICAgICBzdGF0aWMgSlND
OjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAg
ICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90
eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZv
KCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTV29ya2VyR2xvYmFsU2NvcGUuaCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1dvcmtlckdsb2JhbFNjb3BlLmgKaW5kZXggOTlmMjdj
M2ZmMTYwNDgxNjE2YzhiNzA4NzA4YzRlODk0ODU5OTMwNS4uYTgxNTc4ODk4NjQ2OTU1MjE0MzNj
MDJiNGQ2YmE3MzE5ZTMyYTk4YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTV29ya2VyR2xvYmFsU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrZXJHbG9iYWxTY29wZS5oCkBAIC0yMCw2
ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgog
I2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIkpTRXZlbnRUYXJnZXQuaCIKIApA
QCAtNDQsNiArNDUsNyBAQCBjbGFzcyBKU1dvcmtlckdsb2JhbFNjb3BlIDogcHVibGljIEpTRXZl
bnRUYXJnZXQgewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBE
T01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpXb3JrZXJHbG9i
YWxTY29wZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUg
cHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUo
dm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6R2xvYmFsT2Jq
ZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTV29ya2xldEds
b2JhbFNjb3BlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNX
b3JrbGV0R2xvYmFsU2NvcGUuaAppbmRleCA3NmNhZDQ0MjdlMTkyMmFiMmViMjI5YmJjMGI0NWNl
NDg0NTZiYWRkLi43YTc3YjU1M2MzMzcxYWQ2ZTRhYzUyY2I0OGE0YmZjNWNjZDIzYWQ4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrbGV0
R2xvYmFsU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNXb3JrbGV0R2xvYmFsU2NvcGUuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9u
Y2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIu
aCIKICNpbmNsdWRlICJKU0V2ZW50VGFyZ2V0LmgiCiAKQEAgLTQ0LDYgKzQ1LDcgQEAgY2xhc3Mg
SlNXb3JrbGV0R2xvYmFsU2NvcGUgOiBwdWJsaWMgSlNFdmVudFRhcmdldCB7CiAKICAgICBERUNM
QVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVy
ZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OldvcmtsZXRHbG9iYWxTY29wZTsKICAgICBzdGF0aWMg
SlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAg
ICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJv
dG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6R2xvYmFsT2JqZWN0VHlwZSwgU3RydWN0dXJlRmxh
Z3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YnJpZGdlL29iamMvT2JqQ1J1bnRpbWVPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9v
YmpjL09iakNSdW50aW1lT2JqZWN0LmgKaW5kZXggMTY4MTllMDA2NGUyNTU1ZTczODk1OWE0OTAx
MzA4YWZhMDUzMjAzYS4uOWY4ZmQ0OGU0NTNhMzcyYmUzMWExZDY5YjZkNTBmZTFiZmY5YjdhYiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvT2JqQ1J1bnRpbWVPYmplY3Qu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9PYmpDUnVudGltZU9iamVjdC5oCkBA
IC0yNiw2ICsyNiw3IEBACiAjaWZuZGVmIE9iakNSdW50aW1lT2JqZWN0X2gKICNkZWZpbmUgT2Jq
Q1J1bnRpbWVPYmplY3RfaAogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUg
InJ1bnRpbWVfb2JqZWN0LmgiCiAKIG5hbWVzcGFjZSBKU0MgewpAQCAtMzYsNiArMzcsNyBAQCBj
bGFzcyBPYmpjSW5zdGFuY2U7CiBjbGFzcyBPYmpDUnVudGltZU9iamVjdCBmaW5hbCA6IHB1Ymxp
YyBSdW50aW1lT2JqZWN0IHsKIHB1YmxpYzoKICAgICB1c2luZyBCYXNlID0gUnVudGltZU9iamVj
dDsKKyAgICBzdGF0aWMgY29uc3RleHByIFdlYkNvcmU6OkRPTVN0cnVjdHVyZUlEIHN0cnVjdHVy
ZUluZGV4ID0gV2ViQ29yZTo6RE9NU3RydWN0dXJlSUQ6Ok9iakNSdW50aW1lT2JqZWN0OwogCiAg
ICAgc3RhdGljIE9iakNSdW50aW1lT2JqZWN0KiBjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSwgUmVmUHRyPE9iamNJbnN0YW5jZT4mJiBpbnN0KQogICAgIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfaW5zdGFuY2UubW0gYi9Tb3VyY2UvV2Vi
Q29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tCmluZGV4IDViMWE4MzUzZDkwMmUxZjhk
NzM2MjhjNjkwYjNmNzRiMjBmMWNmZTQuLmRiZWY0NzgzYzliMzFlZTNiZjEyYzM1NjJkZWI1YTFi
MmE1NDUxNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfaW5z
dGFuY2UubW0KKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5t
bQpAQCAtMjYsNiArMjYsNyBAQAogI2ltcG9ydCAiY29uZmlnLmgiCiAjaW1wb3J0ICJvYmpjX2lu
c3RhbmNlLmgiCiAKKyNpbXBvcnQgIkRPTVN0cnVjdHVyZXMuaCIKICNpbXBvcnQgIkpTRE9NQmlu
ZGluZy5oIgogI2ltcG9ydCAiT2JqQ1J1bnRpbWVPYmplY3QuaCIKICNpbXBvcnQgIldlYlNjcmlw
dE9iamVjdC5oIgpAQCAtMTcyLDYgKzE3Myw4IEBAIGJvb2wgT2JqY0luc3RhbmNlOjpzdXBwb3J0
c0ludm9rZURlZmF1bHRNZXRob2QoKSBjb25zdAogCiBjbGFzcyBPYmpDUnVudGltZU1ldGhvZCBm
aW5hbCA6IHB1YmxpYyBSdW50aW1lTWV0aG9kIHsKIHB1YmxpYzoKKyAgICBzdGF0aWMgY29uc3Rl
eHByIFdlYkNvcmU6OkRPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gV2ViQ29yZTo6RE9N
U3RydWN0dXJlSUQ6Ok9iakNSdW50aW1lTWV0aG9kOworCiAgICAgc3RhdGljIE9iakNSdW50aW1l
TWV0aG9kKiBjcmVhdGUoSlNHbG9iYWxPYmplY3QqIGxleGljYWxHbG9iYWxPYmplY3QsIEpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvbnN0IFN0cmluZyYgbmFtZSwgQmluZGluZ3M6Ok1l
dGhvZCogbWV0aG9kKQogICAgIHsKICAgICAgICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19ydW50aW1lLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUuaAppbmRleCAwYTA5NGI2
OWM4MTQ3NzZhZDUyNDM3YmQ4NmRkNWQ1ZTE1NDMxMzk3Li4xYTA2ZTMyMjIzMmVhNzU3NGJlYjFj
MDFiMmU2OGY2YWIzYjlkZDE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2Jq
Yy9vYmpjX3J1bnRpbWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1
bnRpbWUuaApAQCAtMjcsNiArMjcsNyBAQAogI2RlZmluZSBLSlNfQklORElOR1NfT0JKQ19SVU5U
SU1FX0gKIAogI2luY2x1ZGUgIkJyaWRnZUpTQy5oIgorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMu
aCIKICNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKICNpbmNsdWRlICJvYmpjX2hlYWRlci5oIgog
I2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pTR2xvYmFsT2JqZWN0Lmg+CkBAIC05Myw2ICs5NCw3
IEBAIGNsYXNzIE9iamNGYWxsYmFja09iamVjdEltcCBmaW5hbCA6IHB1YmxpYyBKU0Rlc3RydWN0
aWJsZU9iamVjdCB7CiAgICAgdXNpbmcgQmFzZSA9IEpTRGVzdHJ1Y3RpYmxlT2JqZWN0OwogICAg
IHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgU3RydWN0dXJlRmxhZ3MgPSBCYXNlOjpTdHJ1Y3R1
cmVGbGFncyB8IE92ZXJyaWRlc0dldE93blByb3BlcnR5U2xvdCB8IE92ZXJyaWRlc0dldENhbGxE
YXRhIHwgT3ZlcnJpZGVzUHV0OwogICAgIHN0YXRpYyBjb25zdGV4cHIgYm9vbCBuZWVkc0Rlc3Ry
dWN0aW9uID0gdHJ1ZTsKKyAgICBzdGF0aWMgY29uc3RleHByIFdlYkNvcmU6OkRPTVN0cnVjdHVy
ZUlEIHN0cnVjdHVyZUluZGV4ID0gV2ViQ29yZTo6RE9NU3RydWN0dXJlSUQ6Ok9iamNGYWxsYmFj
a09iamVjdEltcDsKIAogICAgIHRlbXBsYXRlPHR5cGVuYW1lIENlbGxUeXBlLCBKU0M6OlN1YnNw
YWNlQWNjZXNzPgogICAgIHN0YXRpYyBHQ0NsaWVudDo6SXNvU3Vic3BhY2UqIHN1YnNwYWNlRm9y
KEpTQzo6Vk0mIHZtKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVf
YXJyYXkuaCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX2FycmF5LmgKaW5kZXggM2Y0
NWRlMzI0YWU2MjhmN2VjZDllMzU3NDRkYzEyZmVkODM4MDgwYy4uN2RiYWQ5ZWI3Mzk4Y2FkMmE2
YjVmZWM4ZTMwMWNlNWIyYzVmMjc1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdl
L3J1bnRpbWVfYXJyYXkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9hcnJh
eS5oCkBAIC0yNyw2ICsyNyw3IEBACiAjZGVmaW5lIFJVTlRJTUVfQVJSQVlfSF8KIAogI2luY2x1
ZGUgIkJyaWRnZUpTQy5oIgorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJK
U0RPTUJpbmRpbmcuaCIKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9BcnJheVByb3RvdHlwZS5o
PgogCkBAIC0zNyw2ICszOCw3IEBAIGNsYXNzIFJ1bnRpbWVBcnJheSBmaW5hbCA6IHB1YmxpYyBK
U0FycmF5IHsKICAgICB1c2luZyBCYXNlID0gSlNBcnJheTsKICAgICBzdGF0aWMgY29uc3RleHBy
IHVuc2lnbmVkIFN0cnVjdHVyZUZsYWdzID0gQmFzZTo6U3RydWN0dXJlRmxhZ3MgfCBPdmVycmlk
ZXNHZXRPd25Qcm9wZXJ0eVNsb3QgfCBPdmVycmlkZXNHZXRPd25Qcm9wZXJ0eU5hbWVzIHwgT3Zl
cnJpZGVzUHV0IHwgSW50ZXJjZXB0c0dldE93blByb3BlcnR5U2xvdEJ5SW5kZXhFdmVuV2hlbkxl
bmd0aElzTm90WmVybzsKICAgICBzdGF0aWMgY29uc3RleHByIGJvb2wgbmVlZHNEZXN0cnVjdGlv
biA9IHRydWU7CisgICAgc3RhdGljIGNvbnN0ZXhwciBXZWJDb3JlOjpET01TdHJ1Y3R1cmVJRCBz
dHJ1Y3R1cmVJbmRleCA9IFdlYkNvcmU6OkRPTVN0cnVjdHVyZUlEOjpSdW50aW1lQXJyYXk7CiAK
ICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBDZWxsVHlwZSwgSlNDOjpTdWJzcGFjZUFjY2Vzcz4KICAg
ICBzdGF0aWMgSlNDOjpHQ0NsaWVudDo6SXNvU3Vic3BhY2UqIHN1YnNwYWNlRm9yKEpTQzo6Vk0m
IHZtKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfb2JqZWN0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9vYmplY3QuaAppbmRleCAyYzM2YzBkOGU4
NjkxNjVhOGY4MDE1ZGFjODY1ZWE4N2I1ODUyODhiLi42YmFkNzI5MzI3YzMwNmJhNmZjNDQzNjNl
MGNhMDc1YjJhN2QwNjFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGlt
ZV9vYmplY3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9vYmplY3QuaApA
QCAtMjcsNiArMjcsNyBAQAogI2RlZmluZSBLSlNfUlVOVElNRV9PQkpFQ1RfSAogCiAjaW5jbHVk
ZSAiQnJpZGdlSlNDLmgiCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgPEph
dmFTY3JpcHRDb3JlL0pTR2xvYmFsT2JqZWN0Lmg+CiAKIG5hbWVzcGFjZSBKU0MgewpAQCAtMzks
NiArNDAsNyBAQCBjbGFzcyBXRUJDT1JFX0VYUE9SVCBSdW50aW1lT2JqZWN0IDogcHVibGljIEpT
Tm9uRmluYWxPYmplY3QgewogICAgIHVzaW5nIEJhc2UgPSBKU05vbkZpbmFsT2JqZWN0OwogICAg
IHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgU3RydWN0dXJlRmxhZ3MgPSBCYXNlOjpTdHJ1Y3R1
cmVGbGFncyB8IE92ZXJyaWRlc0dldE93blByb3BlcnR5U2xvdCB8IE92ZXJyaWRlc0dldE93blBy
b3BlcnR5TmFtZXMgfCBPdmVycmlkZXNHZXRDYWxsRGF0YSB8IE92ZXJyaWRlc1B1dCB8IEdldE93
blByb3BlcnR5U2xvdE1heUJlV3JvbmdBYm91dERvbnRFbnVtOwogICAgIHN0YXRpYyBjb25zdGV4
cHIgYm9vbCBuZWVkc0Rlc3RydWN0aW9uID0gdHJ1ZTsKKyAgICBzdGF0aWMgY29uc3RleHByIFdl
YkNvcmU6OkRPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gV2ViQ29yZTo6RE9NU3RydWN0
dXJlSUQ6OlJ1bnRpbWVPYmplY3Q7CiAKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBDZWxsVHlwZSwg
SlNDOjpTdWJzcGFjZUFjY2Vzcz4KICAgICBzdGF0aWMgR0NDbGllbnQ6Oklzb1N1YnNwYWNlKiBz
dWJzcGFjZUZvcihKU0M6OlZNJiB2bSkK
</data>
<flag name="commit-queue"
          id="480158"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452951</attachid>
            <date>2022-02-23 01:37:55 -0800</date>
            <delta_ts>2022-02-23 02:27:35 -0800</delta_ts>
            <desc>WIP</desc>
            <filename>bug-233959-20220223013754.patch</filename>
            <type>text/plain</type>
            <size>135423</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMzQ2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzA3NDU1YzI1M2I5ZmM3
NjkwYzJmNWEwNGFmMDAxMzBjYzgzNzgzZi4uODJmNTk4Y2EzNDc3MWQ2MGI2YjUzNWY5ZWY1MTQ5
OGJkNDY1OGY5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyOCBAQAorMjAyMi0wMi0yMyAgWXVz
dWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBET01TdHJ1Y3R1
cmVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzM5
NTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENN
YWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0
OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NR2xvYmFs
T2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTRE9NR2xvYmFsT2JqZWN0OjpKU0RPTUds
b2JhbE9iamVjdCk6CisgICAgICAgIChXZWJDb3JlOjpKU0RPTUdsb2JhbE9iamVjdDo6dmlzaXRD
aGlsZHJlbkltcGwpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0Lmg6
CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3RJbmxpbmVzLmg6CisgICAg
ICAgIChXZWJDb3JlOjpnZXRET01TdHJ1Y3R1cmUpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pT
RE9NV3JhcHBlckNhY2hlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmdldENhY2hlZERPTVN0cnVj
dHVyZSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpjYWNoZURPTVN0cnVjdHVyZSk6IERl
bGV0ZWQuCisgICAgICAgICogYmluZGluZ3MvanMvSlNET01XcmFwcGVyQ2FjaGUuaDoKKyAgICAg
ICAgKFdlYkNvcmU6OmdldERPTVN0cnVjdHVyZSk6IERlbGV0ZWQuCisgICAgICAgICogYmluZGlu
Z3MvanMvSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3IuaDoKKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAgKEdlbmVyYXRlSGVh
ZGVyKToKKyAgICAgICAgKEdlbmVyYXRlSXRlcmFibGVEZWZpbml0aW9uKToKKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL3ByZXByb2Nlc3MtaWRscy5wbDoKKyAgICAgICAgKiBiaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNET01XaW5kb3cuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5oOgorICAgICAgICAqIGJpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU0V4cG9zZWRTdGFyLmg6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93Lmg6CisgICAgICAgICog
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUuaDoKKyAg
ICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2Nv
cGUuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTaGFkb3dSZWFsbUds
b2JhbFNjb3BlLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hhcmVk
V29ya2VyR2xvYmFsU2NvcGUuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0Q0VSZWFjdGlvbnMuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllci5oOgorICAgICAgICAqIGJpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RDYWxsVHJhY2VyLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yLmg6CisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMuaDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9uYWxseVJl
YWRXcml0ZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RET01K
SVQuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRv
SlNPTi5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0
VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UuaDoKKyAgICAgICAg
KiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQuaDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTklu
aGVyaXRGaW5hbC5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RE
ZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlLmg6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdERvbWFpblNlY3VyaXR5Lmg6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEVuYWJsZWRCeVNldHRpbmcuaDoKKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEZvckNvbnRleHQuaDoKKyAgICAg
ICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRDb25zdHJ1Y3Rvci5oOgor
ICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudFRhcmdldC5oOgor
ICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNlcHRpb24uaDoKKyAg
ICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVS
b290Lmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRl
SXNSZWFjaGFibGUuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
R2xvYmFsT2JqZWN0Lmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmg6CisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRp
Zmllci5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZh
Y2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6anNUZXN0SW50ZXJmYWNlUHJvdG90eXBlRnVuY3Rp
b25fZW50cmllc0NhbGxlcik6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEludGVyZmFjZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RJdGVyYWJsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpqc1Rlc3RJ
dGVyYWJsZVByb3RvdHlwZUZ1bmN0aW9uX2VudHJpZXNDYWxsZXIpOgorICAgICAgICAqIGJpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJdGVyYWJsZS5oOgorICAgICAgICAqIGJpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3Rvci5oOgorICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24uaDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5Tm9JbnRlcmZh
Y2VPYmplY3QuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVn
YWN5T3ZlcnJpZGVCdWlsdElucy5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RNYXBMaWtlLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuaDoKKyAgICAgICAgKiBiaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVy
Lmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5k
ZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmg6Cisg
ICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlck5vSWRl
bnRpZmllci5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllci5oOgorICAgICAgICAqIGJp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRl
ci5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRl
ckNhbGxXaXRoLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5h
bWVkR2V0dGVyTm9JZGVudGlmaWVyLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIuaDoKKyAgICAgICAgKiBiaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXIuaDoKKyAgICAg
ICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4
Y2VwdGlvbi5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZFNldHRlcldpdGhJZGVudGlmaWVyLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIuaDoKKyAgICAgICAgKiBiaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFu
ZFNldHRlci5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmg6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJv
cGVydGllcy5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1
aWx0SW5zLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVz
cGFjZU9iamVjdC5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RO
b2RlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmpzVGVzdE5vZGVQcm90b3R5cGVGdW5jdGlvbl9l
bnRyaWVzQ2FsbGVyKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
Tm9kZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouaDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3BlcmF0aW9uQ29uZGl0
aW9uYWwuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3Zlcmxv
YWRlZENvbnN0cnVjdG9ycy5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmg6CisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFBsdWdpbkludGVyZmFjZS5oOgorICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQuaDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlNYXBMaWtl
Lmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlYWRPbmx5U2V0
TGlrZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZXBvcnRF
eHRyYU1lbW9yeUNvc3QuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmg6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNldExpa2UuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucy5oOgorICAg
ICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllci5oOgorICAg
ICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllckFub255bW91
c09wZXJhdGlvbi5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RT
dHJpbmdpZmllck5hbWVkT3BlcmF0aW9uLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcy5oOgorICAgICAg
ICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5h
bWVkVG9TdHJpbmcuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZS5oOgorICAgICAg
ICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUYWdnZWRXcmFwcGVyLmg6CisgICAg
ICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFR5cGVkZWZzLmg6CisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTV29ya2VyR2xvYmFsU2NvcGUuaDoKKyAgICAg
ICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrbGV0R2xvYmFsU2NvcGUuaDoKKyAg
ICAgICAgKiBicmlkZ2Uvb2JqYy9PYmpDUnVudGltZU9iamVjdC5oOgorICAgICAgICAqIGJyaWRn
ZS9vYmpjL29iamNfaW5zdGFuY2UubW06CisgICAgICAgIChKU0M6OkJpbmRpbmdzOjpPYmpjSW5z
dGFuY2U6OmdldE1ldGhvZCk6CisgICAgICAgICogYnJpZGdlL29iamMvb2JqY19ydW50aW1lLmg6
CisgICAgICAgICogYnJpZGdlL3J1bnRpbWVfYXJyYXkuaDoKKyAgICAgICAgKiBicmlkZ2UvcnVu
dGltZV9vYmplY3QuaDoKKwogMjAyMi0wMi0yMiAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUu
Y29tPgogCiAgICAgICAgIFNoYXJlIG1vcmUgY29kZSBiZXR3ZWVuIGRpc3BhdGNoU2Vzc2lvblN0
b3JhZ2VFdmVudHMoKSBhbmQgZGlzcGF0Y2hMb2NhbFN0b3JhZ2VFdmVudHMoKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxp
c3RzLnR4dAppbmRleCAyYmI4MjljZDU5YjhjMDc1ZTAzNjY1NWMyMzdiODUwMTQ4MWM0YjJlLi44
N2Q0MzY1ZTFiN2ZhOTcyM2E4Yzk4MGJiYzIyZTY3NzlhMzgyYWNjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3Rz
LnR4dApAQCAtMjA4Nyw2ICsyMDg3LDcgQEAgc2V0KFNVUFBMRU1FTlRBTF9ERVBFTkRFTkNZX0ZJ
TEUgJHtXZWJDb3JlX0RFUklWRURfU09VUkNFU19ESVJ9L3N1cHBsZW1lbnRhbF9kZXAKIHNldChJ
U09fU1VCU1BBQ0VTX0hFQURFUl9GSUxFICR7V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElSfS9E
T01Jc29TdWJzcGFjZXMuaCkKIHNldChDTElFTlRfSVNPX1NVQlNQQUNFU19IRUFERVJfRklMRSAk
e1dlYkNvcmVfREVSSVZFRF9TT1VSQ0VTX0RJUn0vRE9NQ2xpZW50SXNvU3Vic3BhY2VzLmgpCiBz
ZXQoQ09OU1RSVUNUT1JTX0hFQURFUl9GSUxFICR7V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElS
fS9ET01Db25zdHJ1Y3RvcnMuaCkKK3NldChTVFJVQ1RVUkVTX0hFQURFUl9GSUxFICR7V2ViQ29y
ZV9ERVJJVkVEX1NPVVJDRVNfRElSfS9ET01TdHJ1Y3R1cmVzLmgpCiBzZXQoV0lORE9XX0NPTlNU
UlVDVE9SU19GSUxFICR7V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElSfS9ET01XaW5kb3dDb25z
dHJ1Y3RvcnMuaWRsKQogc2V0KFdPUktFUkdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFICR7
V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElSfS9Xb3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9y
cy5pZGwpCiBzZXQoU0hBRE9XUkVBTE1HTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRSAke1dl
YkNvcmVfREVSSVZFRF9TT1VSQ0VTX0RJUn0vU2hhZG93UmVhbG1HbG9iYWxTY29wZUNvbnN0cnVj
dG9ycy5pZGwpCkBAIC0yMjc0LDExICsyMjc1LDEyIEBAIEdFTkVSQVRFX0JJTkRJTkdTKFdlYkNv
cmVCaW5kaW5ncwogICAgIEdFTkVSQVRPUiBKUwogICAgIFNVUFBMRU1FTlRBTF9ERVBGSUxFICR7
U1VQUExFTUVOVEFMX0RFUEVOREVOQ1lfRklMRX0KICAgICBQUF9FWFRSQV9PVVRQVVQKLSAgICAk
e0lTT19TVUJTUEFDRVNfSEVBREVSX0ZJTEV9ICR7Q0xJRU5UX0lTT19TVUJTUEFDRVNfSEVBREVS
X0ZJTEV9ICR7Q09OU1RSVUNUT1JTX0hFQURFUl9GSUxFfSAke1dJTkRPV19DT05TVFJVQ1RPUlNf
RklMRX0gJHtXT1JLRVJHTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRX0gJHtTSEFET1dSRUFM
TUdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFfSAke0RFRElDQVRFRFdPUktFUkdMT0JBTFND
T1BFX0NPTlNUUlVDVE9SU19GSUxFfQorICAgICR7SVNPX1NVQlNQQUNFU19IRUFERVJfRklMRX0g
JHtDTElFTlRfSVNPX1NVQlNQQUNFU19IRUFERVJfRklMRX0gJHtDT05TVFJVQ1RPUlNfSEVBREVS
X0ZJTEV9ICR7U1RSVUNUVVJFU19IRUFERVJfRklMRX0gJHtXSU5ET1dfQ09OU1RSVUNUT1JTX0ZJ
TEV9ICR7V09SS0VSR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEV9ICR7U0hBRE9XUkVBTE1H
TE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRX0gJHtERURJQ0FURURXT1JLRVJHTE9CQUxTQ09Q
RV9DT05TVFJVQ1RPUlNfRklMRX0KICAgICBQUF9FWFRSQV9BUkdTCiAgICAgICAgIC0taXNvU3Vi
c3BhY2VzSGVhZGVyRmlsZSAke0lTT19TVUJTUEFDRVNfSEVBREVSX0ZJTEV9CiAgICAgICAgIC0t
Y2xpZW50SVNPU3Vic3BhY2VzSGVhZGVyRmlsZSAke0NMSUVOVF9JU09fU1VCU1BBQ0VTX0hFQURF
Ul9GSUxFfQogICAgICAgICAtLWNvbnN0cnVjdG9yc0hlYWRlckZpbGUgJHtDT05TVFJVQ1RPUlNf
SEVBREVSX0ZJTEV9CisgICAgICAgIC0tc3RydWN0dXJlc0hlYWRlckZpbGUgJHtTVFJVQ1RVUkVT
X0hFQURFUl9GSUxFfQogICAgICAgICAtLXdpbmRvd0NvbnN0cnVjdG9yc0ZpbGUgJHtXSU5ET1df
Q09OU1RSVUNUT1JTX0ZJTEV9CiAgICAgICAgIC0td29ya2VyR2xvYmFsU2NvcGVDb25zdHJ1Y3Rv
cnNGaWxlICR7V09SS0VSR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEV9CiAgICAgICAgIC0t
c2hhZG93UmVhbG1HbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJHtTSEFET1dSRUFMTUdMT0JB
TFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFfQpAQCAtMjI4OSw2ICsyMjkxLDEwIEBAIEdFTkVSQVRF
X0JJTkRJTkdTKFdlYkNvcmVCaW5kaW5ncwogICAgICAgICAtLXBhaW50V29ya2xldEdsb2JhbFNj
b3BlQ29uc3RydWN0b3JzRmlsZSAke1BBSU5UV09SS0xFVEdMT0JBTFNDT1BFX0NPTlNUUlVDVE9S
U19GSUxFfQogICAgICAgICAtLWF1ZGlvV29ya2xldEdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmls
ZSAke0FVRElPV09SS0xFVEdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFfSkKIGxpc3QoQVBQ
RU5EIFdlYkNvcmVfREVQRU5ERU5DSUVTIFdlYkNvcmVCaW5kaW5ncykKK2xpc3QoQVBQRU5EIFdl
YkNvcmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUworICAgICR7Q09OU1RSVUNUT1JTX0hFQURF
Ul9GSUxFfQorICAgICR7U1RSVUNUVVJFU19IRUFERVJfRklMRX0KKykKIAogaWYgKEVOQUJMRV9X
RUJJTlNQRUNUT1JVSSkKICAgICBsaXN0KEFQUEVORCBXZWJDb3JlX0RFUEVOREVOQ0lFUyBXZWJJ
bnNwZWN0b3JVSSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLW91
dHB1dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0Lnhj
ZmlsZWxpc3QKaW5kZXggNmMyMDVlNzFkYTRmOTcxOTVjMzdhYmRhMmU5YmQ1YWMxYzMyZGMwMS4u
NWU4OWY1MWEzNDk5MmViN2I1OThlMmYzYTNkY2M4ZGFiOTBkYjBiMSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKKysrIGIvU291cmNl
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKQEAgLTEzLDYgKzEzLDcg
QEAgJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvRE9NQ2xpZW50
SXNvU3Vic3BhY2VzLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJD
b3JlL0RPTUNvbnN0cnVjdG9ycy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJj
ZXMvV2ViQ29yZS9ET01Jc29TdWJzcGFjZXMuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvRE9NSklUQWJzdHJhY3RIZWFwUmVwb3NpdG9yeS5oCiskKEJVSUxU
X1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9ET01TdHJ1Y3R1cmVzLmgKICQo
QlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0RPTVdpbmRvd0NvbnN0
cnVjdG9ycy5pZGwKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3Jl
L0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlQ29uc3RydWN0b3JzLmlkbAogJChCVUlMVF9QUk9E
VUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvRXZlbnRGYWN0b3J5LmNwcApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1NvdXJjZS9XZWJDb3Jl
L0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggMjY4MDMyNzBkNjdhNzc0NTU5ZWNmMjNkNzViNmJi
MDViMDY5Mzg4NS4uMThmN2IzNjM4MGJjMzM1Y2ZmYTAyOTcyNjU2M2FjMGI0NzExOTIyYyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC0yMDgwLDYgKzIwODAsNyBAQCBTVVBQTEVN
RU5UQUxfTUFLRUZJTEVfREVQUyA9IFN1cHBsZW1lbnRhbERlcGVuZGVuY2llcy5kZXAKIElTT19T
VUJTUEFDRVNfSEVBREVSX0ZJTEUgPSBET01Jc29TdWJzcGFjZXMuaAogQ0xJRU5UX0lTT19TVUJT
UEFDRVNfSEVBREVSX0ZJTEUgPSBET01DbGllbnRJc29TdWJzcGFjZXMuaAogQ09OU1RSVUNUT1JT
X0hFQURFUl9GSUxFID0gRE9NQ29uc3RydWN0b3JzLmgKK1NUUlVDVFVSRVNfSEVBREVSX0ZJTEUg
PSBET01TdHJ1Y3R1cmVzLmgKIFdJTkRPV19DT05TVFJVQ1RPUlNfRklMRSA9IERPTVdpbmRvd0Nv
bnN0cnVjdG9ycy5pZGwKIFdPUktFUkdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFID0gV29y
a2VyR2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnMuaWRsCiBTSEFET1dSRUFMTUdMT0JBTFNDT1BFX0NP
TlNUUlVDVE9SU19GSUxFID0gU2hhZG93UmVhbG1HbG9iYWxTY29wZUNvbnN0cnVjdG9ycy5pZGwK
QEAgLTIwOTcsNiArMjA5OCw3IEBAIElETF9JTlRFUk1FRElBVEVfRklMRVMgPSBcCiAgICAgJChJ
U09fU1VCU1BBQ0VTX0hFQURFUl9GSUxFKSBcCiAgICAgJChDTElFTlRfSVNPX1NVQlNQQUNFU19I
RUFERVJfRklMRSkgXAogICAgICQoQ09OU1RSVUNUT1JTX0hFQURFUl9GSUxFKSBcCisgICAgJChT
VFJVQ1RVUkVTX0hFQURFUl9GSUxFKSBcCiAgICAgJChXSU5ET1dfQ09OU1RSVUNUT1JTX0ZJTEUp
IFwKICAgICAkKFdPUktFUkdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFKSBcCiAgICAgJChT
SEFET1dSRUFMTUdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFKSBcCkBAIC0yMTEwLDcgKzIx
MTIsNyBAQCBJRExfSU5URVJNRURJQVRFX1BBVFRFUk5TID0gJChzdWJzdCAuLCUsJChJRExfSU5U
RVJNRURJQVRFX0ZJTEVTKSkKIAogJChJRExfSU5URVJNRURJQVRFX1BBVFRFUk5TKSA6ICQoUFJF
UFJPQ0VTU19JRExTX1NDUklQVFMpICQoSURMX0FUVFJJQlVURVNfRklMRSkgJChKU19CSU5ESU5H
X0lETFMpICQoRkVBVFVSRV9BTkRfUExBVEZPUk1fREVGSU5FX0RFUEVOREVOQ0lFUykKIAkkKHNo
ZWxsIGVjaG8gJChKU19CSU5ESU5HX0lETFMpIHwgdHIgIiAiICJcbiIgPiBJRExGaWxlTmFtZXNM
aXN0LnR4dCkKLQkkKFBFUkwpICQoV2ViQ29yZSkvYmluZGluZ3Mvc2NyaXB0cy9wcmVwcm9jZXNz
LWlkbHMucGwgLS1kZWZpbmVzICIkKEZFQVRVUkVfQU5EX1BMQVRGT1JNX0RFRklORVMpIExBTkdV
QUdFX0pBVkFTQ1JJUFQiIC0taWRsRmlsZU5hbWVzTGlzdCBJRExGaWxlTmFtZXNMaXN0LnR4dCAt
LWlkbEF0dHJpYnV0ZXNGaWxlICQoSURMX0FUVFJJQlVURVNfRklMRSkgLS1zdXBwbGVtZW50YWxE
ZXBlbmRlbmN5RmlsZSAkKFNVUFBMRU1FTlRBTF9ERVBFTkRFTkNZX0ZJTEUpIC0taXNvU3Vic3Bh
Y2VzSGVhZGVyRmlsZSAkKElTT19TVUJTUEFDRVNfSEVBREVSX0ZJTEUpIC0tY2xpZW50SVNPU3Vi
c3BhY2VzSGVhZGVyRmlsZSAkKENMSUVOVF9JU09fU1VCU1BBQ0VTX0hFQURFUl9GSUxFKSAtLWNv
bnN0cnVjdG9yc0hlYWRlckZpbGUgJChDT05TVFJVQ1RPUlNfSEVBREVSX0ZJTEUpIC0td2luZG93
Q29uc3RydWN0b3JzRmlsZSAkKFdJTkRPV19DT05TVFJVQ1RPUlNfRklMRSkgLS13b3JrZXJHbG9i
YWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJChXT1JLRVJHTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNf
RklMRSkgLS1zaGFkb3dSZWFsbUdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmlsZSAkKFNIQURPV1JF
QUxNR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUpIC0tZGVkaWNhdGVkV29ya2VyR2xvYmFs
U2NvcGVDb25zdHJ1Y3RvcnNGaWxlICQoREVESUNBVEVEV09SS0VSR0xPQkFMU0NPUEVfQ09OU1RS
VUNUT1JTX0ZJTEUpIC0tc2VydmljZVdvcmtlckdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmlsZSAk
KFNFUlZJQ0VXT1JLRVJHTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRSkgLS1zaGFyZWRXb3Jr
ZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJChTSEFSRURXT1JLRVJHTE9CQUxTQ09QRV9D
T05TVFJVQ1RPUlNfRklMRSkgLS13b3JrbGV0R2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnNGaWxlICQo
V09SS0xFVEdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFKSAtLXBhaW50V29ya2xldEdsb2Jh
bFNjb3BlQ29uc3RydWN0b3JzRmlsZSAkKFBBSU5UV09SS0xFVEdMT0JBTFNDT1BFX0NPTlNUUlVD
VE9SU19GSUxFKSAtLWF1ZGlvV29ya2xldEdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmlsZSAkKEFV
RElPV09SS0xFVEdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFKSAtLXN1cHBsZW1lbnRhbE1h
a2VmaWxlRGVwcyAkKFNVUFBMRU1FTlRBTF9NQUtFRklMRV9ERVBTKQorCSQoUEVSTCkgJChXZWJD
b3JlKS9iaW5kaW5ncy9zY3JpcHRzL3ByZXByb2Nlc3MtaWRscy5wbCAtLWRlZmluZXMgIiQoRkVB
VFVSRV9BTkRfUExBVEZPUk1fREVGSU5FUykgTEFOR1VBR0VfSkFWQVNDUklQVCIgLS1pZGxGaWxl
TmFtZXNMaXN0IElETEZpbGVOYW1lc0xpc3QudHh0IC0taWRsQXR0cmlidXRlc0ZpbGUgJChJRExf
QVRUUklCVVRFU19GSUxFKSAtLXN1cHBsZW1lbnRhbERlcGVuZGVuY3lGaWxlICQoU1VQUExFTUVO
VEFMX0RFUEVOREVOQ1lfRklMRSkgLS1pc29TdWJzcGFjZXNIZWFkZXJGaWxlICQoSVNPX1NVQlNQ
QUNFU19IRUFERVJfRklMRSkgLS1jbGllbnRJU09TdWJzcGFjZXNIZWFkZXJGaWxlICQoQ0xJRU5U
X0lTT19TVUJTUEFDRVNfSEVBREVSX0ZJTEUpIC0tY29uc3RydWN0b3JzSGVhZGVyRmlsZSAkKENP
TlNUUlVDVE9SU19IRUFERVJfRklMRSkgLS1zdHJ1Y3R1cmVzSGVhZGVyRmlsZSAkKFNUUlVDVFVS
RVNfSEVBREVSX0ZJTEUpIC0td2luZG93Q29uc3RydWN0b3JzRmlsZSAkKFdJTkRPV19DT05TVFJV
Q1RPUlNfRklMRSkgLS13b3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJChXT1JLRVJH
TE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRSkgLS1zaGFkb3dSZWFsbUdsb2JhbFNjb3BlQ29u
c3RydWN0b3JzRmlsZSAkKFNIQURPV1JFQUxNR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUp
IC0tZGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnNGaWxlICQoREVESUNBVEVE
V09SS0VSR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUpIC0tc2VydmljZVdvcmtlckdsb2Jh
bFNjb3BlQ29uc3RydWN0b3JzRmlsZSAkKFNFUlZJQ0VXT1JLRVJHTE9CQUxTQ09QRV9DT05TVFJV
Q1RPUlNfRklMRSkgLS1zaGFyZWRXb3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJChT
SEFSRURXT1JLRVJHTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRSkgLS13b3JrbGV0R2xvYmFs
U2NvcGVDb25zdHJ1Y3RvcnNGaWxlICQoV09SS0xFVEdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19G
SUxFKSAtLXBhaW50V29ya2xldEdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmlsZSAkKFBBSU5UV09S
S0xFVEdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFKSAtLWF1ZGlvV29ya2xldEdsb2JhbFNj
b3BlQ29uc3RydWN0b3JzRmlsZSAkKEFVRElPV09SS0xFVEdMT0JBTFNDT1BFX0NPTlNUUlVDVE9S
U19GSUxFKSAtLXN1cHBsZW1lbnRhbE1ha2VmaWxlRGVwcyAkKFNVUFBMRU1FTlRBTF9NQUtFRklM
RV9ERVBTKQogCiAjCiAjIEVtaXQgdGhlIHJ1bGVzIHRvIGdlbmVyYXRlIGJpbmRpbmdzIGZyb20g
SURMIGZpbGVzLiBOb3RlIHRoYXQgdGhlcmUgYXJlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggYmMzNmZjZmEwMTEwZDFlODEyYTQ1
NjE0ZGMxZGU2ZDUzMTE0Y2MzMi4uNTJhYTE0NGViY2Y2MjcwOTU5OTgwYzI0Y2EyZDBlODM0ODhj
ODJjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagpAQCAtNTI4MCw3ICs1MjgwLDcgQEAKIAkJRTMxNTBFQTcxREE3MjE5MzAwMTk0MDEy
IC8qIERPTUpJVEhlbHBlcnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEUzMTUwRUE1MURBNzIxOEQwMDE5NDAxMiAvKiBET01KSVRIZWxwZXJzLmggKi87
IH07CiAJCUUzMjAxQzFBMUY4RTgyMTMwMDc2QTAzMiAvKiBNb2R1bGVGZXRjaFBhcmFtZXRlcnMu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzOEQwNjA5
MUY4RTgxMTkwMDY0OUNGMiAvKiBNb2R1bGVGZXRjaFBhcmFtZXRlcnMuaCAqLzsgc2V0dGluZ3Mg
PSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlFMzIzQ0ZGQTFFNUFGNkFGMDBG
MEI0QTAgLyogSlNET01Db252ZXJ0UHJvbWlzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRTMyM0NGRjkxRTVBRjZBNTAwRjBCNEEwIC8qIEpTRE9NQ29u
dmVydFByb21pc2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwotCQlFMzNEMENCRTI2NzJFMUI2MDA3NEUxODMgLyogSlNET01HbG9iYWxPYmplY3RJbmxp
bmVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzNE
MENCQzI2NzJFMUIzMDA3NEUxODMgLyogSlNET01HbG9iYWxPYmplY3RJbmxpbmVzLmggKi87IH07
CisJCUUzM0QwQ0JFMjY3MkUxQjYwMDc0RTE4MyAvKiBKU0RPTUdsb2JhbE9iamVjdElubGluZXMu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzM0QwQ0JD
MjY3MkUxQjMwMDc0RTE4MyAvKiBKU0RPTUdsb2JhbE9iamVjdElubGluZXMuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlFMzQzMkRFNDI1RDM3N0Uz
MDA1OEU2MTIgLyogV29ya2VyTW9kdWxlU2NyaXB0TG9hZGVyLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzQzMkRFMDI1RDM3N0UyMDA1OEU2MTIgLyog
V29ya2VyTW9kdWxlU2NyaXB0TG9hZGVyLmggKi87IH07CiAJCUUzNDdFNUZBMjVENEYwMDAwMEYx
N0E1QyAvKiBXb3JrZXJTY3JpcHRGZXRjaGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFMzQ3RTVGODI1RDRGMDAwMDBGMTdBNUMgLyogV29ya2VyU2Ny
aXB0RmV0Y2hlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CiAJCUUzNTE4OEI0MjVEMzg3Q0YwMEE3N0FGMyAvKiBNb2R1bGVTY3JpcHRMb2FkZXJDbGll
bnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzNTE4
OEIzMjVEMzg3Q0YwMEE3N0FGMyAvKiBNb2R1bGVTY3JpcHRMb2FkZXJDbGllbnQuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtNTMwOCw2ICs1MzA4
LDggQEAKIAkJRTNDOTlBMDkxREMzRDQxQzAwNzk0QUQzIC8qIERPTUpJVENoZWNrRE9NLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0M5OUEwODFEQzNE
NDE3MDA3OTRBRDMgLyogRE9NSklUQ2hlY2tET00uaCAqLzsgfTsKIAkJRTNDOUFFQ0IyMTEzMTQ5
OTAwNDE5QjkyIC8qIEpTTWljcm90YXNrQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzQzlBRUM5MjExMzE0NzQwMDQxOUI5MiAvKiBKU01p
Y3JvdGFza0NhbGxiYWNrLmggKi87IH07CiAJCUUzQ0EwQkZDMjY3M0Y0N0MwMDlGREQ2NyAvKiBK
U0RPTUJpbmRpbmdTZWN1cml0eUlubGluZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEUzQ0EwQkZBMjY3M0Y0NzgwMDlGREQ2NyAvKiBKU0RPTUJpbmRp
bmdTZWN1cml0eUlubGluZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQlFM0RFRjQ0QjI3QzYyMEYxMDA3NThBQjggLyogRE9NQ29uc3RydWN0b3Jz
LmggaW4gQ29weSBHZW5lcmF0ZWQgSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFM0ZFMkVDNzI3QzYxRjhFMDA5NTExNUMgLyogRE9NQ29uc3RydWN0b3JzLmggKi87
IH07CisJCUUzREVGNDRDMjdDNjIwRjkwMDc1OEFCOCAvKiBET01TdHJ1Y3R1cmVzLmggaW4gQ29w
eSBHZW5lcmF0ZWQgSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBF
M0ZFMkVDODI3QzYxRjhFMDA5NTExNUMgLyogRE9NU3RydWN0dXJlcy5oICovOyB9OwogCQlFM0U0
RTJBODFFM0IxNzEwMDAyM0JCOEEgLyogU2NyaXB0RWxlbWVudENhY2hlZFNjcmlwdEZldGNoZXIu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzRTRFMkE2
MUUzQjE2RkMwMDIzQkI4QSAvKiBTY3JpcHRFbGVtZW50Q2FjaGVkU2NyaXB0RmV0Y2hlci5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUzRkEzODY0
MUQ3MTgxMkQwMEFBNTk1MCAvKiBQZW5kaW5nU2NyaXB0Q2xpZW50LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFM0ZBMzg2MTFENzE2RTc2MDBBQTU5NTAg
LyogUGVuZGluZ1NjcmlwdENsaWVudC5oICovOyB9OwogCQlFNDAxQzI3NTE3Q0U1M0VDMDBDNDFB
MzUgLyogRWxlbWVudEl0ZXJhdG9yQXNzZXJ0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTQwMUMyNzQxN0NFNTNFQzAwQzQxQTM1IC8qIEVsZW1l
bnRJdGVyYXRvckFzc2VydGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwpAQCAtNTg0Myw2ICs1ODQ1LDggQEAKIAkJCWZpbGVzID0gKAogCQkJCTVE
RjdGNUMyMEYwMUY5MkEwMDUyNkI0QiAvKiBDU1NQcm9wZXJ0eU5hbWVzLmggaW4gQ29weSBHZW5l
cmF0ZWQgSGVhZGVycyAqLywKIAkJCQk3RDc0MUJEQTE3NzIyNkFBMDA4NTkxNzAgLyogQ1NTVmFs
dWVLZXl3b3Jkcy5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8sCisJCQkJRTNERUY0NEIy
N0M2MjBGMTAwNzU4QUI4IC8qIERPTUNvbnN0cnVjdG9ycy5oIGluIENvcHkgR2VuZXJhdGVkIEhl
YWRlcnMgKi8sCisJCQkJRTNERUY0NEMyN0M2MjBGOTAwNzU4QUI4IC8qIERPTVN0cnVjdHVyZXMu
aCBpbiBDb3B5IEdlbmVyYXRlZCBIZWFkZXJzICovLAogCQkJCUE4RDA2QjM5MEEyNjVEQ0QwMDVF
NzIwMyAvKiBIVE1MTmFtZXMuaCBpbiBDb3B5IEdlbmVyYXRlZCBIZWFkZXJzICovLAogCQkJCTE0
MDNCQTBGMDlFQjE4RjkwMDc5N0M3RiAvKiBKU0RPTVdpbmRvdy5oIGluIENvcHkgR2VuZXJhdGVk
IEhlYWRlcnMgKi8sCiAJCQkJMTREQzBEMzgwOUZFRDA3MzAwN0IwMjM1IC8qIEpTTm9kZS5oIGlu
IENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8sCkBAIC0xNzM5Nyw2ICsxNzQwMSw4IEBACiAJCUUz
RTRFMkE1MUUzQjE2RkMwMDIzQkI4QSAvKiBTY3JpcHRFbGVtZW50Q2FjaGVkU2NyaXB0RmV0Y2hl
ci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JpcHRFbGVtZW50
Q2FjaGVkU2NyaXB0RmV0Y2hlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUz
RTRFMkE2MUUzQjE2RkMwMDIzQkI4QSAvKiBTY3JpcHRFbGVtZW50Q2FjaGVkU2NyaXB0RmV0Y2hl
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JpcHRFbGVtZW50Q2FjaGVk
U2NyaXB0RmV0Y2hlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFM0ZBMzg2MTFE
NzE2RTc2MDBBQTU5NTAgLyogUGVuZGluZ1NjcmlwdENsaWVudC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBQZW5kaW5nU2NyaXB0Q2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUUzRkUyRUM3MjdDNjFGOEUwMDk1MTE1QyAvKiBET01Db25zdHJ1Y3RvcnMu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRE9NQ29uc3RydWN0b3JzLmg7IHBh
dGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL0RPTUNvbnN0cnVjdG9ycy5oOyBzb3VyY2VUcmVl
ID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlFM0ZFMkVDODI3QzYxRjhFMDA5NTExNUMgLyog
RE9NU3RydWN0dXJlcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBET01TdHJ1
Y3R1cmVzLmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJDb3JlL0RPTVN0cnVjdHVyZXMuaDsg
c291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKIAkJRTQwMUMyNzQxN0NFNTNFQzAw
QzQxQTM1IC8qIEVsZW1lbnRJdGVyYXRvckFzc2VydGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gRWxlbWVudEl0ZXJhdG9yQXNzZXJ0aW9ucy5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlFNDAxRTBBMzFDM0MwQjgzMDBGMzREMTAgLyogU3R5bGVDaGFuZ2Uu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3R5bGVDaGFuZ2UuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTQwMUUwQTUxQzNDMENGNzAwRjM0RDEwIC8qIFN0eWxl
Q2hhbmdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN0eWxlQ2hh
bmdlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE5NTMwLDYgKzE5NTM2LDgg
QEAKIAkJCQlCQzk4NTQ0MzBDRDNEOUQwMDAwNjlCQzEgLyogV2luZG93ICovLAogCQkJCUE4M0I3
OTIyMENDQjAwRjAwMDBCMDgyNSAvKiBYTUwgKi8sCiAJCQkJQTgzQjc5MEMwQ0NBRkY4MzAwMEIw
ODI1IC8qIFhQYXRoICovLAorCQkJCUUzRkUyRUM3MjdDNjFGOEUwMDk1MTE1QyAvKiBET01Db25z
dHJ1Y3RvcnMuaCAqLywKKwkJCQlFM0ZFMkVDODI3QzYxRjhFMDA5NTExNUMgLyogRE9NU3RydWN0
dXJlcy5oICovLAogCQkJCUJDMzQ4QkQxMERCN0Y4MDQwMDRBQkFCQiAvKiBXZWJDb3JlSlNCdWls
dGluSW50ZXJuYWxzLmNwcCAqLywKIAkJCQlCQzM0OEJEMjBEQjdGODA0MDA0QUJBQkIgLyogV2Vi
Q29yZUpTQnVpbHRpbkludGVybmFscy5oICovLAogCQkJCUJDMzQ4QkQxMERCN0Y4MDQwMDRBQkFC
QSAvKiBXZWJDb3JlSlNCdWlsdGlucy5jcHAgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5jcHAKaW5kZXggYjI2MjZmZWI0YTA1MzczOGVhN2Rl
ZDE4Mjc3ODY1YzRmODEzNGI1OC4uM2EwNjA1NWVmYWNmOTY5NmM5ZDEwMDkyNjJhZTNlMTNkZTg5
OTBmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxP
YmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2Jq
ZWN0LmNwcApAQCAtMjgsNiArMjgsNyBAQAogI2luY2x1ZGUgIkpTRE9NR2xvYmFsT2JqZWN0Lmgi
CiAKICNpbmNsdWRlICJET01Db25zdHJ1Y3RvcnMuaCIKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVz
LmgiCiAjaW5jbHVkZSAiRE9NV2luZG93LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNs
dWRlICJGZXRjaFJlc3BvbnNlLmgiCkBAIC04Nyw2ICs4OCw3IEBAIGNvbnN0IENsYXNzSW5mbyBK
U0RPTUdsb2JhbE9iamVjdDo6c19pbmZvID0geyAiRE9NR2xvYmFsT2JqZWN0IiwgJkpTR2xvYmFs
T2JqZWN0CiBKU0RPTUdsb2JhbE9iamVjdDo6SlNET01HbG9iYWxPYmplY3QoVk0mIHZtLCBTdHJ1
Y3R1cmUqIHN0cnVjdHVyZSwgUmVmPERPTVdyYXBwZXJXb3JsZD4mJiB3b3JsZCwgY29uc3QgR2xv
YmFsT2JqZWN0TWV0aG9kVGFibGUqIGdsb2JhbE9iamVjdE1ldGhvZFRhYmxlKQogICAgIDogSlNH
bG9iYWxPYmplY3Qodm0sIHN0cnVjdHVyZSwgZ2xvYmFsT2JqZWN0TWV0aG9kVGFibGUpCiAgICAg
LCBtX2NvbnN0cnVjdG9ycyhtYWtlVW5pcXVlPERPTUNvbnN0cnVjdG9ycz4oKSkKKyAgICAsIG1f
c3RydWN0dXJlcyhtYWtlVW5pcXVlPERPTVN0cnVjdHVyZXM+KCkpCiAgICAgLCBtX3dvcmxkKFdU
Rk1vdmUod29ybGQpKQogICAgICwgbV93b3JsZElzTm9ybWFsKG1fd29ybGQtPmlzTm9ybWFsKCkp
CiAgICAgLCBtX2J1aWx0aW5JbnRlcm5hbEZ1bmN0aW9ucyh2bSkKQEAgLTI5MywxMCArMjk1LDYg
QEAgdm9pZCBKU0RPTUdsb2JhbE9iamVjdDo6dmlzaXRDaGlsZHJlbkltcGwoSlNDZWxsKiBjZWxs
LCBWaXNpdG9yJiB2aXNpdG9yKQogICAgIHsKICAgICAgICAgLy8gVGhlIEdDIHRocmVhZCBoYXMg
dG8gZ3JhYiB0aGUgR0MgbG9jayBldmVuIHRob3VnaCBpdCBpcyBub3QgbXV0YXRpbmcgdGhlIGNv
bnRhaW5lcnMuCiAgICAgICAgIExvY2tlciBsb2NrZXIgeyB0aGlzT2JqZWN0LT5tX2djTG9jayB9
OwotCi0gICAgICAgIGZvciAoYXV0byYgc3RydWN0dXJlIDogdGhpc09iamVjdC0+bV9zdHJ1Y3R1
cmVzLnZhbHVlcygpKQotICAgICAgICAgICAgdmlzaXRvci5hcHBlbmQoc3RydWN0dXJlKTsKLQog
ICAgICAgICBmb3IgKGF1dG8mIGd1YXJkZWQgOiB0aGlzT2JqZWN0LT5tX2d1YXJkZWRPYmplY3Rz
KQogICAgICAgICAgICAgZ3VhcmRlZC0+dmlzaXRBZ2dyZWdhdGUodmlzaXRvcik7CiAgICAgfQpA
QCAtMzA0LDYgKzMwMiw5IEBAIHZvaWQgSlNET01HbG9iYWxPYmplY3Q6OnZpc2l0Q2hpbGRyZW5J
bXBsKEpTQ2VsbCogY2VsbCwgVmlzaXRvciYgdmlzaXRvcikKICAgICBmb3IgKGF1dG8mIGNvbnN0
cnVjdG9yIDogdGhpc09iamVjdC0+Y29uc3RydWN0b3JzKCkuYXJyYXkoKSkKICAgICAgICAgdmlz
aXRvci5hcHBlbmQoY29uc3RydWN0b3IpOwogCisgICAgZm9yIChhdXRvJiBzdHJ1Y3R1cmUgOiB0
aGlzT2JqZWN0LT5zdHJ1Y3R1cmVzKCkuYXJyYXkoKSkKKyAgICAgICAgdmlzaXRvci5hcHBlbmQo
c3RydWN0dXJlKTsKKwogICAgIHRoaXNPYmplY3QtPm1fYnVpbHRpbkludGVybmFsRnVuY3Rpb25z
LnZpc2l0KHZpc2l0b3IpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0RPTUdsb2JhbE9iamVjdC5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNE
T01HbG9iYWxPYmplY3QuaAppbmRleCAwYTU4ZTdlOWQ2NzFiZWRmNzY2ZmYyYjgzNjc1MDQxMjRj
YjFkMWNiLi45MmFiZjk2MGQ0NzlhYTM5ZDYzZDllZDE2NjdhZTUyNGMwZmI5NWM3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmgKQEAgLTM1LDEy
ICszNSwxMiBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBET01Db25zdHJ1Y3RvcnM7
CitjbGFzcyBET01TdHJ1Y3R1cmVzOwogY2xhc3MgRE9NR3VhcmRlZE9iamVjdDsKIGNsYXNzIEV2
ZW50OwogY2xhc3MgRE9NV3JhcHBlcldvcmxkOwogY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4
dDsKIAotdXNpbmcgSlNET01TdHJ1Y3R1cmVNYXAgPSBIYXNoTWFwPGNvbnN0IEpTQzo6Q2xhc3NJ
bmZvKiwgSlNDOjpXcml0ZUJhcnJpZXI8SlNDOjpTdHJ1Y3R1cmU+PjsKIHVzaW5nIERPTUd1YXJk
ZWRPYmplY3RTZXQgPSBIYXNoU2V0PERPTUd1YXJkZWRPYmplY3QqPjsKIAogY2xhc3MgV0VCQ09S
RV9FWFBPUlQgSlNET01HbG9iYWxPYmplY3QgOiBwdWJsaWMgSlNDOjpKU0dsb2JhbE9iamVjdCB7
CkBAIC01OSwxNyArNTksMTYgQEAgY2xhc3MgV0VCQ09SRV9FWFBPUlQgSlNET01HbG9iYWxPYmpl
Y3QgOiBwdWJsaWMgSlNDOjpKU0dsb2JhbE9iamVjdCB7CiBwdWJsaWM6CiAgICAgTG9jayYgZ2NM
b2NrKCkgV1RGX1JFVFVSTlNfTE9DSyhtX2djTG9jaykgeyByZXR1cm4gbV9nY0xvY2s7IH0KIAot
ICAgIEpTRE9NU3RydWN0dXJlTWFwJiBzdHJ1Y3R1cmVzKCkgV1RGX1JFUVVJUkVTX0xPQ0sobV9n
Y0xvY2spIHsgcmV0dXJuIG1fc3RydWN0dXJlczsgfQogICAgIERPTUd1YXJkZWRPYmplY3RTZXQm
IGd1YXJkZWRPYmplY3RzKCkgV1RGX1JFUVVJUkVTX0xPQ0sobV9nY0xvY2spIHsgcmV0dXJuIG1f
Z3VhcmRlZE9iamVjdHM7IH0KKyAgICBET01TdHJ1Y3R1cmVzJiBzdHJ1Y3R1cmVzKCkgeyByZXR1
cm4gKm1fc3RydWN0dXJlczsgfQogICAgIERPTUNvbnN0cnVjdG9ycyYgY29uc3RydWN0b3JzKCkg
eyByZXR1cm4gKm1fY29uc3RydWN0b3JzOyB9CiAKICAgICAvLyBObyBsb2NraW5nIGlzIG5lY2Vz
c2FyeSBmb3IgY2FsbCBzaXRlcyB0aGF0IGRvIG5vdCBtdXRhdGUgdGhlIGNvbnRhaW5lcnMgYW5k
IGFyZSBub3Qgb24gdGhlIEdDIHRocmVhZC4KLSAgICBjb25zdCBKU0RPTVN0cnVjdHVyZU1hcCYg
c3RydWN0dXJlcygpIGNvbnN0IFdURl9JR05PUkVTX1RIUkVBRF9TQUZFVFlfQU5BTFlTSVMgeyBB
U1NFUlQoIVRocmVhZDo6bWF5QmVHQ1RocmVhZCgpKTsgcmV0dXJuIG1fc3RydWN0dXJlczsgfQog
ICAgIGNvbnN0IERPTUd1YXJkZWRPYmplY3RTZXQmIGd1YXJkZWRPYmplY3RzKCkgY29uc3QgV1RG
X0lHTk9SRVNfVEhSRUFEX1NBRkVUWV9BTkFMWVNJUyB7IEFTU0VSVCghVGhyZWFkOjptYXlCZUdD
VGhyZWFkKCkpOyByZXR1cm4gbV9ndWFyZGVkT2JqZWN0czsgfQorICAgIGNvbnN0IERPTVN0cnVj
dHVyZXMmIHN0cnVjdHVyZXMoKSBjb25zdCB7IEFTU0VSVCghVGhyZWFkOjptYXlCZUdDVGhyZWFk
KCkpOyByZXR1cm4gKm1fc3RydWN0dXJlczsgfQogICAgIGNvbnN0IERPTUNvbnN0cnVjdG9ycyYg
Y29uc3RydWN0b3JzKCkgY29uc3QgeyBBU1NFUlQoIVRocmVhZDo6bWF5QmVHQ1RocmVhZCgpKTsg
cmV0dXJuICptX2NvbnN0cnVjdG9yczsgfQogCiAgICAgLy8gVGhlIGZvbGxvd2luZyBkb24ndCBy
ZXF1aXJlIGdyYWJiaW5nIHRoZSBnY0xvY2sgZmlyc3QgYW5kIHNob3VsZCBvbmx5IGJlIGNhbGxl
ZCB3aGVuIHRoZSBIZWFwIHNheXMgdGhhdCBtdXRhdG9ycyBkb24ndCBoYXZlIHRvIGJlIGZlbmNl
ZC4KLSAgICBKU0RPTVN0cnVjdHVyZU1hcCYgc3RydWN0dXJlcyhOb0xvY2tpbmdOZWNlc3NhcnlU
YWcpIFdURl9JR05PUkVTX1RIUkVBRF9TQUZFVFlfQU5BTFlTSVMgeyBBU1NFUlQoIXZtKCkuaGVh
cC5tdXRhdG9yU2hvdWxkQmVGZW5jZWQoKSk7IHJldHVybiBtX3N0cnVjdHVyZXM7IH0KICAgICBE
T01HdWFyZGVkT2JqZWN0U2V0JiBndWFyZGVkT2JqZWN0cyhOb0xvY2tpbmdOZWNlc3NhcnlUYWcp
IFdURl9JR05PUkVTX1RIUkVBRF9TQUZFVFlfQU5BTFlTSVMgeyBBU1NFUlQoIXZtKCkuaGVhcC5t
dXRhdG9yU2hvdWxkQmVGZW5jZWQoKSk7IHJldHVybiBtX2d1YXJkZWRPYmplY3RzOyB9CiAKICAg
ICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3Q7
CkBAIC0xMjMsOSArMTIyLDkgQEAgY2xhc3MgV0VCQ09SRV9FWFBPUlQgSlNET01HbG9iYWxPYmpl
Y3QgOiBwdWJsaWMgSlNDOjpKU0dsb2JhbE9iamVjdCB7CiAgICAgc3RhdGljIEpTQzo6SlNJbnRl
cm5hbFByb21pc2UqIG1vZHVsZUxvYWRlckltcG9ydE1vZHVsZShKU0M6OkpTR2xvYmFsT2JqZWN0
KiwgSlNDOjpKU01vZHVsZUxvYWRlciosIEpTQzo6SlNTdHJpbmcqLCBKU0M6OkpTVmFsdWUsIGNv
bnN0IEpTQzo6U291cmNlT3JpZ2luJik7CiAgICAgc3RhdGljIEpTQzo6SlNPYmplY3QqIG1vZHVs
ZUxvYWRlckNyZWF0ZUltcG9ydE1ldGFQcm9wZXJ0aWVzKEpTQzo6SlNHbG9iYWxPYmplY3QqLCBK
U0M6OkpTTW9kdWxlTG9hZGVyKiwgSlNDOjpKU1ZhbHVlLCBKU0M6OkpTTW9kdWxlUmVjb3JkKiwg
SlNDOjpKU1ZhbHVlKTsKIAotICAgIEpTRE9NU3RydWN0dXJlTWFwIG1fc3RydWN0dXJlcyBXVEZf
R1VBUkRFRF9CWV9MT0NLKG1fZ2NMb2NrKTsKICAgICBET01HdWFyZGVkT2JqZWN0U2V0IG1fZ3Vh
cmRlZE9iamVjdHMgV1RGX0dVQVJERURfQllfTE9DSyhtX2djTG9jayk7CiAgICAgc3RkOjp1bmlx
dWVfcHRyPERPTUNvbnN0cnVjdG9ycz4gbV9jb25zdHJ1Y3RvcnM7CisgICAgc3RkOjp1bmlxdWVf
cHRyPERPTVN0cnVjdHVyZXM+IG1fc3RydWN0dXJlczsKIAogICAgIFJlZjxET01XcmFwcGVyV29y
bGQ+IG1fd29ybGQ7CiAgICAgdWludDhfdCBtX3dvcmxkSXNOb3JtYWw7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdElubGluZXMuaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0SW5saW5lcy5oCmluZGV4
IDA1Mjg2MTViNDYxYmYwZGI3NzFkZjQyNjg2ZmEyMmU1ZDJkZTY1MmYuLjEzZmM3MmFhNDE4ODdk
MmFlOTc4ZGY2Y2IyMjc0ZTZmODU0N2RiYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0SW5saW5lcy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0SW5saW5lcy5oCkBAIC0yNyw2ICsyNyw3IEBA
CiAjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgIkRPTUNvbnN0cnVjdG9ycy5oIgorI2luY2x1ZGUg
IkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTUdsb2JhbE9iamVjdC5oIgogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CkBAIC00NCw0ICs0NSwxMyBAQCBpbmxpbmUgSlNDOjpKU09iamVjdCog
Z2V0RE9NQ29uc3RydWN0b3IoSlNDOjpWTSYgdm0sIGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBn
bAogICAgIHJldHVybiBjb25zdHJ1Y3RvcjsKIH0KIAordGVtcGxhdGU8dHlwZW5hbWUgV3JhcHBl
ckNsYXNzPiBpbmxpbmUgSlNDOjpTdHJ1Y3R1cmUqIGdldERPTVN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCkKK3sKKyAgICBpZiAoYXV0byogc3Ry
dWN0dXJlID0gZ2xvYmFsT2JqZWN0LnN0cnVjdHVyZXMoKS5nZXQ8V3JhcHBlckNsYXNzPigpKQor
ICAgICAgICByZXR1cm4gc3RydWN0dXJlOworICAgIGF1dG8qIHN0cnVjdHVyZSA9IFdyYXBwZXJD
bGFzczo6Y3JlYXRlU3RydWN0dXJlKHZtLCAmZ2xvYmFsT2JqZWN0LCBXcmFwcGVyQ2xhc3M6OmNy
ZWF0ZVByb3RvdHlwZSh2bSwgZ2xvYmFsT2JqZWN0KSk7CisgICAgZ2xvYmFsT2JqZWN0LnN0cnVj
dHVyZXMoKS5zZXQ8V3JhcHBlckNsYXNzPih2bSwgJmdsb2JhbE9iamVjdCwgc3RydWN0dXJlKTsK
KyAgICByZXR1cm4gc3RydWN0dXJlOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdyYXBwZXJDYWNoZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdyYXBwZXJDYWNoZS5jcHAKaW5kZXgg
NzMzOTY1YzM1Y2ZiZTEyYWEwNzI3MjFmOTUzMmJjZDM4OTE4NTI0YS4uMjQ1MDQwMzhmM2JjNDY2
MjY3ZTM3YWEwY2MzN2YzNDkyMGEyYmI4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNET01XcmFwcGVyQ2FjaGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRE9NV3JhcHBlckNhY2hlLmNwcApAQCAtMjcsMjIgKzI3LDQgQEAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKLVN0cnVjdHVyZSogZ2V0Q2FjaGVk
RE9NU3RydWN0dXJlKGNvbnN0IEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIGNvbnN0
IENsYXNzSW5mbyogY2xhc3NJbmZvKQotewotICAgIHJldHVybiBnbG9iYWxPYmplY3Quc3RydWN0
dXJlcygpLmdldChjbGFzc0luZm8pLmdldCgpOwotfQotCi1TdHJ1Y3R1cmUqIGNhY2hlRE9NU3Ry
dWN0dXJlKEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFN0cnVjdHVyZSogc3RydWN0
dXJlLCBjb25zdCBDbGFzc0luZm8qIGNsYXNzSW5mbykKLXsKLSAgICBhdXRvIGFkZFRvU3RydWN0
dXJlcyA9IFtdKEpTRE9NU3RydWN0dXJlTWFwJiBzdHJ1Y3R1cmVzLCBKU0RPTUdsb2JhbE9iamVj
dCYgZ2xvYmFsT2JqZWN0LCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgY29uc3QgQ2xhc3NJbmZvKiBj
bGFzc0luZm8pIHsKLSAgICAgICAgQVNTRVJUKCFzdHJ1Y3R1cmVzLmNvbnRhaW5zKGNsYXNzSW5m
bykpOwotICAgICAgICByZXR1cm4gc3RydWN0dXJlcy5zZXQoY2xhc3NJbmZvLCBXcml0ZUJhcnJp
ZXI8U3RydWN0dXJlPihnbG9iYWxPYmplY3Qudm0oKSwgJmdsb2JhbE9iamVjdCwgc3RydWN0dXJl
KSkuaXRlcmF0b3ItPnZhbHVlLmdldCgpOwotICAgIH07Ci0gICAgaWYgKGdsb2JhbE9iamVjdC52
bSgpLmhlYXAubXV0YXRvclNob3VsZEJlRmVuY2VkKCkpIHsKLSAgICAgICAgTG9ja2VyIGxvY2tl
ciB7IGdsb2JhbE9iamVjdC5nY0xvY2soKSB9OwotICAgICAgICByZXR1cm4gYWRkVG9TdHJ1Y3R1
cmVzKGdsb2JhbE9iamVjdC5zdHJ1Y3R1cmVzKCksIGdsb2JhbE9iamVjdCwgc3RydWN0dXJlLCBj
bGFzc0luZm8pOwotICAgIH0KLSAgICByZXR1cm4gYWRkVG9TdHJ1Y3R1cmVzKGdsb2JhbE9iamVj
dC5zdHJ1Y3R1cmVzKE5vTG9ja2luZ05lY2Vzc2FyeSksIGdsb2JhbE9iamVjdCwgc3RydWN0dXJl
LCBjbGFzc0luZm8pOwotfQotCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdyYXBwZXJDYWNoZS5oIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNET01XcmFwcGVyQ2FjaGUuaAppbmRleCBmYTFkNTE2YTBiMzVm
YTNiNTYyYTI0Njc0Njc4NTAyNDcyYmI3MjYxLi5lYTBhNDQzNDc0ZjkyMTY4MDY5NDRlM2U4Zjhk
YjkwOWMzMWM2MzU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RP
TVdyYXBwZXJDYWNoZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV3Jh
cHBlckNhY2hlLmgKQEAgLTI0LDcgKzI0LDcgQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAi
RE9NV3JhcHBlcldvcmxkLmgiCi0jaW5jbHVkZSAiSlNET01HbG9iYWxPYmplY3QuaCIKKyNpbmNs
dWRlICJKU0RPTUdsb2JhbE9iamVjdElubGluZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIu
aCIKICNpbmNsdWRlICJTY3JpcHRXcmFwcGFibGUuaCIKICNpbmNsdWRlICJTY3JpcHRXcmFwcGFi
bGVJbmxpbmVzLmgiCkBAIC0zNiwxMCArMzYsNiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LVdFQkNPUkVfRVhQT1JUIEpTQzo6U3RydWN0dXJlKiBnZXRDYWNoZWRET01TdHJ1Y3R1cmUoY29u
c3QgSlNET01HbG9iYWxPYmplY3QmLCBjb25zdCBKU0M6OkNsYXNzSW5mbyopOwotV0VCQ09SRV9F
WFBPUlQgSlNDOjpTdHJ1Y3R1cmUqIGNhY2hlRE9NU3RydWN0dXJlKEpTRE9NR2xvYmFsT2JqZWN0
JiwgSlNDOjpTdHJ1Y3R1cmUqLCBjb25zdCBKU0M6OkNsYXNzSW5mbyopOwotCi10ZW1wbGF0ZTx0
eXBlbmFtZSBXcmFwcGVyQ2xhc3M+IEpTQzo6U3RydWN0dXJlKiBnZXRET01TdHJ1Y3R1cmUoSlND
OjpWTSYsIEpTRE9NR2xvYmFsT2JqZWN0Jik7CiB0ZW1wbGF0ZTx0eXBlbmFtZSBXcmFwcGVyQ2xh
c3M+IEpTQzo6U3RydWN0dXJlKiBkZXByZWNhdGVkR2V0RE9NU3RydWN0dXJlKEpTQzo6SlNHbG9i
YWxPYmplY3QqKTsKIHRlbXBsYXRlPHR5cGVuYW1lIFdyYXBwZXJDbGFzcz4gSlNDOjpKU09iamVj
dCogZ2V0RE9NUHJvdG90eXBlKEpTQzo6Vk0mLCBKU0M6OkpTR2xvYmFsT2JqZWN0Kik7CiAKQEAg
LTU4LDggKzU0LDYgQEAgYm9vbCBjbGVhcklubGluZUNhY2hlZFdyYXBwZXIoRE9NV3JhcHBlcldv
cmxkJiwgdm9pZCosIEpTRE9NT2JqZWN0Kik7CiBib29sIGNsZWFySW5saW5lQ2FjaGVkV3JhcHBl
cihET01XcmFwcGVyV29ybGQmLCBTY3JpcHRXcmFwcGFibGUqLCBKU0RPTU9iamVjdCogd3JhcHBl
cik7CiBib29sIGNsZWFySW5saW5lQ2FjaGVkV3JhcHBlcihET01XcmFwcGVyV29ybGQmLCBKU0M6
OkFycmF5QnVmZmVyKiwgSlNDOjpKU0FycmF5QnVmZmVyKiB3cmFwcGVyKTsKIAotdGVtcGxhdGU8
dHlwZW5hbWUgRE9NQ2xhc3M+IEpTQzo6SlNPYmplY3QqIGdldE9yQ3JlYXRlV3JhcHBlcihET01X
cmFwcGVyV29ybGQmLCBET01DbGFzcyYpOwotCiB0ZW1wbGF0ZTx0eXBlbmFtZSBET01DbGFzcz4g
SlNDOjpKU09iamVjdCogZ2V0Q2FjaGVkV3JhcHBlcihET01XcmFwcGVyV29ybGQmLCBET01DbGFz
cyYpOwogdGVtcGxhdGU8dHlwZW5hbWUgRE9NQ2xhc3M+IGlubGluZSBKU0M6OkpTT2JqZWN0KiBn
ZXRDYWNoZWRXcmFwcGVyKERPTVdyYXBwZXJXb3JsZCYgd29ybGQsIFJlZjxET01DbGFzcz4mIG9i
amVjdCkgeyByZXR1cm4gZ2V0Q2FjaGVkV3JhcHBlcih3b3JsZCwgb2JqZWN0LmdldCgpKTsgfQog
dGVtcGxhdGU8dHlwZW5hbWUgRE9NQ2xhc3MsIHR5cGVuYW1lIFdyYXBwZXJDbGFzcz4gdm9pZCBj
YWNoZVdyYXBwZXIoRE9NV3JhcHBlcldvcmxkJiwgRE9NQ2xhc3MqLCBXcmFwcGVyQ2xhc3MqKTsK
QEAgLTgxLDEzICs3NSw2IEBAIGlubGluZSBKU0RPTUdsb2JhbE9iamVjdCogZGVwcmVjYXRlZEds
b2JhbE9iamVjdEZvclByb3RvdHlwZShKU0M6OkpTR2xvYmFsT2JqZWN0CiAgICAgcmV0dXJuIEpT
Qzo6anNDYXN0PEpTRE9NR2xvYmFsT2JqZWN0Kj4obGV4aWNhbEdsb2JhbE9iamVjdCk7CiB9CiAK
LXRlbXBsYXRlPHR5cGVuYW1lIFdyYXBwZXJDbGFzcz4gaW5saW5lIEpTQzo6U3RydWN0dXJlKiBn
ZXRET01TdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTRE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmpl
Y3QpCi17Ci0gICAgaWYgKEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1cmUgPSBnZXRDYWNoZWRET01T
dHJ1Y3R1cmUoZ2xvYmFsT2JqZWN0LCBXcmFwcGVyQ2xhc3M6OmluZm8oKSkpCi0gICAgICAgIHJl
dHVybiBzdHJ1Y3R1cmU7Ci0gICAgcmV0dXJuIGNhY2hlRE9NU3RydWN0dXJlKGdsb2JhbE9iamVj
dCwgV3JhcHBlckNsYXNzOjpjcmVhdGVTdHJ1Y3R1cmUodm0sICZnbG9iYWxPYmplY3QsIFdyYXBw
ZXJDbGFzczo6Y3JlYXRlUHJvdG90eXBlKHZtLCBnbG9iYWxPYmplY3QpKSwgV3JhcHBlckNsYXNz
OjppbmZvKCkpOwotfQotCiB0ZW1wbGF0ZTx0eXBlbmFtZSBXcmFwcGVyQ2xhc3M+IGlubGluZSBK
U0M6OlN0cnVjdHVyZSogZGVwcmVjYXRlZEdldERPTVN0cnVjdHVyZShKU0M6OkpTR2xvYmFsT2Jq
ZWN0KiBsZXhpY2FsR2xvYmFsT2JqZWN0KQogewogICAgIC8vIEZJWE1FOiBUaGlzIGZ1bmN0aW9u
IGlzIHdyb25nLiBJdCB1c2VzIHRoZSB3cm9uZyBnbG9iYWwgb2JqZWN0IGZvciBjcmVhdGluZyB0
aGUgcHJvdG90eXBlIHN0cnVjdHVyZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yLmggYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvci5oCmlu
ZGV4IGMxZWQ0NGRmOTUyZmE0Mjc3YjliOWUxMDQzYWQ1NTcwOGNkODc4MTAuLjUxNTlkMjliYjE4
YWUzMWEyMDdmNTBiYzljYzhhY2VlOGEyMmQwNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRl
cmF0b3IuaApAQCAtNDMsNiArNDMsNyBAQCBzdHJ1Y3QgSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFu
ZGxlSXRlcmF0b3JUcmFpdHMgewogY2xhc3MgSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRl
cmF0b3IgZmluYWwgOiBwdWJsaWMgSlNET01Bc3luY0l0ZXJhdG9yQmFzZTxKU0ZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGUsIEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yVHJhaXRz
LCBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvcj4gewogcHVibGljOgogICAgIHVz
aW5nIEJhc2UgPSBKU0RPTUFzeW5jSXRlcmF0b3JCYXNlPEpTRmlsZVN5c3RlbURpcmVjdG9yeUhh
bmRsZSwgSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3JUcmFpdHMsIEpTRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yPjsKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0
cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OkZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGVJdGVyYXRvcjsKICAgICBERUNMQVJFX0lORk87CiAKICAgICB0ZW1wbGF0ZTx0
eXBlbmFtZSBDZWxsVHlwZSwgSlNDOjpTdWJzcGFjZUFjY2VzcyBtb2RlPgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCAzNDM2
NWZiMzUxNjg3ZTdlZWJjZWZiODVjYzNkMjFlOTdjMWQ5NDQ3Li4yZDZhY2IzNjc4YjFjYjNmMDY2
OWYwMjEyOGFhZTg4NTkzZjZkN2M2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQpAQCAtMzAzOSw2ICszMDM5LDggQEAgc3ViIEdl
bmVyYXRlSGVhZGVyCiAgICAgfQogCiAgICAgIyBTdHJ1Y3R1cmUgSUQKKyAgICAkaGVhZGVySW5j
bHVkZXN7IkRPTVN0cnVjdHVyZXMuaCJ9ID0gMTsKKyAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAi
ICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01T
dHJ1Y3R1cmVJRDo6JHtpbnRlcmZhY2VOYW1lfTtcbiIpOwogICAgIHB1c2goQGhlYWRlckNvbnRl
bnQsICIgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3Rv
dHlwZSlcbiIpOwogICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIgICAge1xuIik7CiAgICAgbXkg
JGluZGV4aW5nTW9kZUluY2x1ZGluZ0hpc3RvcnkgPSBJbnN0YW5jZU92ZXJyaWRlc0dldE93blBy
b3BlcnR5U2xvdCgkaW50ZXJmYWNlKSA/ICJKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzIiA6
ICJKU0M6Ok5vbkFycmF5IjsKQEAgLTY3ODMsNiArNjc4NSw3IEBAIHN1YiBHZW5lcmF0ZUl0ZXJh
YmxlRGVmaW5pdGlvbgogICAgICAgICApOwogICAgIH0KIAorICAgIHN0YXRpYyBjb25zdGV4cHIg
RE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6JHtpbnRlcmZh
Y2VOYW1lfUl0ZXJhdG9yOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0
dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6
SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6
OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpP
YmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3ByZXByb2Nlc3MtaWRscy5wbCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvcHJlcHJvY2Vzcy1pZGxzLnBsCmluZGV4IDFkMjM3MDQyMzA2
M2IyMmIwNGViYTdkMjRhNDc0MGM3Y2JhYmRkYzUuLmY3Y2I3ZjUzZTk2YzcwNmUxYjA3MjlhZjA3
MWYyOTQ3NjgwN2JkYWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvcHJlcHJvY2Vzcy1pZGxzLnBsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvcHJlcHJvY2Vzcy1pZGxzLnBsCkBAIC00Myw2ICs0Myw3IEBACiBteSAkaXNvU3Vic3BhY2Vz
SGVhZGVyRmlsZTsKIG15ICRjbGllbnRJU09TdWJzcGFjZXNIZWFkZXJGaWxlOwogbXkgJGNvbnN0
cnVjdG9yc0hlYWRlckZpbGU7CitteSAkc3RydWN0dXJlc0hlYWRlckZpbGU7CiBteSAkd2luZG93
Q29uc3RydWN0b3JzRmlsZTsKIG15ICR3b3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGU7
CiBteSAkc2hhZG93UmVhbG1HbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGU7CkBAIC04NCw2ICs4
NSw3IEBACiAgICAgICAgICAgICdpc29TdWJzcGFjZXNIZWFkZXJGaWxlPXMnID0+IFwkaXNvU3Vi
c3BhY2VzSGVhZGVyRmlsZSwKICAgICAgICAgICAgJ2NsaWVudElTT1N1YnNwYWNlc0hlYWRlckZp
bGU9cycgPT4gXCRjbGllbnRJU09TdWJzcGFjZXNIZWFkZXJGaWxlLAogICAgICAgICAgICAnY29u
c3RydWN0b3JzSGVhZGVyRmlsZT1zJyA9PiBcJGNvbnN0cnVjdG9yc0hlYWRlckZpbGUsCisgICAg
ICAgICAgICdzdHJ1Y3R1cmVzSGVhZGVyRmlsZT1zJyA9PiBcJHN0cnVjdHVyZXNIZWFkZXJGaWxl
LAogICAgICAgICAgICAnd2luZG93Q29uc3RydWN0b3JzRmlsZT1zJyA9PiBcJHdpbmRvd0NvbnN0
cnVjdG9yc0ZpbGUsCiAgICAgICAgICAgICd3b3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0Zp
bGU9cycgPT4gXCR3b3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUsCiAgICAgICAgICAg
ICdzaGFkb3dSZWFsbUdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmlsZT1zJyA9PiBcJHNoYWRvd1Jl
YWxtR2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnNGaWxlLApAQCAtMTE4LDYgKzEyMCw3IEBACiAkaXNv
U3Vic3BhY2VzSGVhZGVyRmlsZSA9IEN5Z3dpblBhdGhJZk5lZWRlZCgkaXNvU3Vic3BhY2VzSGVh
ZGVyRmlsZSk7CiAkY2xpZW50SVNPU3Vic3BhY2VzSGVhZGVyRmlsZSA9IEN5Z3dpblBhdGhJZk5l
ZWRlZCgkY2xpZW50SVNPU3Vic3BhY2VzSGVhZGVyRmlsZSk7CiAkY29uc3RydWN0b3JzSGVhZGVy
RmlsZSA9IEN5Z3dpblBhdGhJZk5lZWRlZCgkY29uc3RydWN0b3JzSGVhZGVyRmlsZSk7Ciskc3Ry
dWN0dXJlc0hlYWRlckZpbGUgPSBDeWd3aW5QYXRoSWZOZWVkZWQoJHN0cnVjdHVyZXNIZWFkZXJG
aWxlKTsKICR3aW5kb3dDb25zdHJ1Y3RvcnNGaWxlID0gQ3lnd2luUGF0aElmTmVlZGVkKCR3aW5k
b3dDb25zdHJ1Y3RvcnNGaWxlKTsKICR3b3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUg
PSBDeWd3aW5QYXRoSWZOZWVkZWQoJHdvcmtlckdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmlsZSk7
CiAkc2hhZG93UmVhbG1HbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgPSBDeWd3aW5QYXRoSWZO
ZWVkZWQoJHNoYWRvd1JlYWxtR2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnNGaWxlKTsKQEAgLTIxNiw2
ICsyMTksMjcgQEAgRU5ECiBlbnVtIGNsYXNzIERPTUNvbnN0cnVjdG9ySUQgOiB1aW50MTZfdCB7
CiBFTkQKIAorbXkgQHN0cnVjdHVyZXMgPSAoKTsKKyMgRGVwcmVjYXRlZCBvYmplY3RzLgorcHVz
aChAc3RydWN0dXJlcywgIk9iakNSdW50aW1lTWV0aG9kIik7CitwdXNoKEBzdHJ1Y3R1cmVzLCAi
T2JqQ1J1bnRpbWVPYmplY3QiKTsKK3B1c2goQHN0cnVjdHVyZXMsICJPYmpjRmFsbGJhY2tPYmpl
Y3RJbXAiKTsKK3B1c2goQHN0cnVjdHVyZXMsICJSdW50aW1lQXJyYXkiKTsKK3B1c2goQHN0cnVj
dHVyZXMsICJSdW50aW1lT2JqZWN0Iik7CisjIEZJWE1FOiBBZnRlciB3ZWJraXQub3JnL2IvMjMx
MjQzLCB0aGlzIGNsYXNzIHNob3VsZCBiZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBieSBiaW5k
aW5ncyBjb2RlIGdlbmVyYXRvci4KK3B1c2goQHN0cnVjdHVyZXMsICJGaWxlU3lzdGVtRGlyZWN0
b3J5SGFuZGxlSXRlcmF0b3IiKTsKK215ICRzdHJ1Y3R1cmVzSGVhZGVyQ29kZSA9IDw8RU5EOwor
I2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CisjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+
CisjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNDSW5saW5lcy5oPgorCisjcHJhZ21hIG9uY2UK
KworbmFtZXNwYWNlIFdlYkNvcmUgeworCitlbnVtIGNsYXNzIERPTVN0cnVjdHVyZUlEIDogdWlu
dDE2X3QgeworRU5ECisKICMgR2V0IHJpZCBvZiBkdXBsaWNhdGVzIGluIGlkbEZpbGVOYW1lcyBh
cnJheS4KIG15ICVpZGxGaWxlTmFtZUhhc2ggPSBtYXAgeyAkXywgMSB9IEBpZGxGaWxlTmFtZXM7
CiAKQEAgLTI3MCw5ICsyOTQsMTEgQEAgRU5ECiAgICAgaWYgKCEkaXNDYWxsYmFja0ludGVyZmFj
ZSkgewogICAgICAgICAkaXNvU3Vic3BhY2VzSGVhZGVyQ29kZSAuPSAiICAgIHN0ZDo6dW5pcXVl
X3B0cjxJc29TdWJzcGFjZT4gbV9zdWJzcGFjZUZvciR7aW50ZXJmYWNlTmFtZX07XG4iOwogICAg
ICAgICAkY2xpZW50SVNPU3Vic3BhY2VzSGVhZGVyQ29kZSAuPSAiICAgIHN0ZDo6dW5pcXVlX3B0
cjxHQ0NsaWVudDo6SXNvU3Vic3BhY2U+IG1fY2xpZW50U3Vic3BhY2VGb3Ike2ludGVyZmFjZU5h
bWV9O1xuIjsKKyAgICAgICAgcHVzaChAc3RydWN0dXJlcywgIiR7aW50ZXJmYWNlTmFtZX0iKTsK
ICAgICAgICAgaWYgKGNvbnRhaW5zSXRlcmFibGVJbnRlcmZhY2VGcm9tSURMKCRpZGxGaWxlKSkg
ewogICAgICAgICAgICAgJGlzb1N1YnNwYWNlc0hlYWRlckNvZGUgLj0gIiAgICBzdGQ6OnVuaXF1
ZV9wdHI8SXNvU3Vic3BhY2U+IG1fc3Vic3BhY2VGb3Ike2ludGVyZmFjZU5hbWV9SXRlcmF0b3I7
XG4iOwogICAgICAgICAgICAgJGNsaWVudElTT1N1YnNwYWNlc0hlYWRlckNvZGUgLj0gIiAgICBz
dGQ6OnVuaXF1ZV9wdHI8R0NDbGllbnQ6Oklzb1N1YnNwYWNlPiBtX2NsaWVudFN1YnNwYWNlRm9y
JHtpbnRlcmZhY2VOYW1lfUl0ZXJhdG9yO1xuIjsKKyAgICAgICAgICAgIHB1c2goQHN0cnVjdHVy
ZXMsICIke2ludGVyZmFjZU5hbWV9SXRlcmF0b3IiKTsKICAgICAgICAgfQogICAgIH0KIApAQCAt
Mzc3LDYgKzQwMywzNCBAQCBFTkQKICAgICBXcml0ZUZpbGVJZkNoYW5nZWQoJGNvbnN0cnVjdG9y
c0hlYWRlckZpbGUsICRjb25zdHJ1Y3RvcnNIZWFkZXJDb2RlKTsKIH0KIAoraWYgKCRzdHJ1Y3R1
cmVzSGVhZGVyRmlsZSkgeworICAgIG15ICRzdHJ1Y3R1cmVzTGVuZ3RoID0gQHN0cnVjdHVyZXM7
CisgICAgZm9yZWFjaCBteSAkbmFtZSAoQHN0cnVjdHVyZXMpIHsKKyAgICAgICAgJHN0cnVjdHVy
ZXNIZWFkZXJDb2RlIC49ICIgICAgJHtuYW1lfSxcbiI7CisgICAgfQorICAgICRzdHJ1Y3R1cmVz
SGVhZGVyQ29kZSAuPSAifTtcbiI7CisgICAgJHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49ICJcbiI7
CisgICAgJHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49ICJzdGF0aWMgY29uc3RleHByIHVuc2lnbmVk
IG51bWJlck9mRE9NU3RydWN0dXJlcyA9ICRzdHJ1Y3R1cmVzTGVuZ3RoO1xuIjsKKyAgICAkc3Ry
dWN0dXJlc0hlYWRlckNvZGUgLj0gIlxuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0g
ImNsYXNzIERPTVN0cnVjdHVyZXMge1xuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0g
IiAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShET01TdHJ1Y3R1cmVzKTtcbiI7CisgICAgJHN0cnVj
dHVyZXNIZWFkZXJDb2RlIC49ICIgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQoRE9NU3RydWN0
dXJlcyk7XG4iOworICAgICRzdHJ1Y3R1cmVzSGVhZGVyQ29kZSAuPSAicHVibGljOlxuIjsKKyAg
ICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0gIiAgICB1c2luZyBTdHJ1Y3R1cmVBcnJheSA9IHN0
ZDo6YXJyYXk8SlNDOjpXcml0ZUJhcnJpZXJTdHJ1Y3R1cmVJRCwgbnVtYmVyT2ZET01TdHJ1Y3R1
cmVzPjtcbiI7CisgICAgJHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49ICIgICAgRE9NU3RydWN0dXJl
cygpID0gZGVmYXVsdDtcbiI7CisgICAgJHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49ICIgICAgU3Ry
dWN0dXJlQXJyYXkmIGFycmF5KCkgeyByZXR1cm4gbV9hcnJheTsgfVxuIjsKKyAgICAkc3RydWN0
dXJlc0hlYWRlckNvZGUgLj0gIiAgICBjb25zdCBTdHJ1Y3R1cmVBcnJheSYgYXJyYXkoKSBjb25z
dCB7IHJldHVybiBtX2FycmF5OyB9XG4iOworICAgICRzdHJ1Y3R1cmVzSGVhZGVyQ29kZSAuPSAi
ICAgIHRlbXBsYXRlPHR5cGVuYW1lIFdyYXBwZWRDbGFzcz4gSlNDOjpTdHJ1Y3R1cmUqIGdldCgp
IGNvbnN0IHsgcmV0dXJuIG1fYXJyYXlbc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KFdyYXBwZWRDbGFz
czo6c3RydWN0dXJlSW5kZXgpXS5nZXQoKTsgfVxuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNv
ZGUgLj0gIiAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBXcmFwcGVkQ2xhc3M+IHZvaWQgc2V0KEpTQzo6
Vk0mIHZtLCBKU0M6OkpTQ2VsbCogb3duZXIsIEpTQzo6U3RydWN0dXJlKiBzdHJ1Y3R1cmUpIHsg
bV9hcnJheVtzdGF0aWNfY2FzdDx1bnNpZ25lZD4oV3JhcHBlZENsYXNzOjpzdHJ1Y3R1cmVJbmRl
eCldLnNldCh2bSwgb3duZXIsIHN0cnVjdHVyZSk7IH1cbiI7CisgICAgJHN0cnVjdHVyZXNIZWFk
ZXJDb2RlIC49ICJcbiI7CisgICAgJHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49ICJwcml2YXRlOlxu
IjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0gIiAgICBTdHJ1Y3R1cmVBcnJheSBtX2Fy
cmF5IHsgfTtcbiI7CisgICAgJHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49ICJ9O1xuIjsKKyAgICAk
c3RydWN0dXJlc0hlYWRlckNvZGUgLj0gIlxuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUg
Lj0gIn0gLy8gbmFtZXNwYWNlIFdlYkNvcmVcbiI7CisgICAgV3JpdGVGaWxlSWZDaGFuZ2VkKCRz
dHJ1Y3R1cmVzSGVhZGVyRmlsZSwgJHN0cnVjdHVyZXNIZWFkZXJDb2RlKTsKK30KKwogIyBSZXNv
bHZlcyBwYXJ0aWFsIGludGVyZmFjZXMgYW5kIGluY2x1ZGUgZGVwZW5kZW5jaWVzLgogZm9yZWFj
aCBteSAkaWRsRmlsZVBhdGggKHNvcnQga2V5cyAlc3VwcGxlbWVudGFsRGVwZW5kZW5jaWVzKSB7
CiAgICAgbXkgJGJhc2VGaWxlcyA9ICRzdXBwbGVtZW50YWxEZXBlbmRlbmNpZXN7JGlkbEZpbGVQ
YXRofTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU0RPTVdpbmRvdy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTRE9NV2luZG93LmgKaW5kZXggM2Y3M2E5ZTcxMGNiMmMzYmMzY2JkMDliZDllMGQyY2ZmMzYw
NzAyMS4uNWNhNWFjOWNjYWMxMjkwMGQ1MzkxYjMzYzU1N2NjNWM4OTZhZjExZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRE9NV2luZG93LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRE9NV2luZG93
LmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1
Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiSlNFdmVudFRh
cmdldC5oIgogCkBAIC00NCw2ICs0NSw3IEBAIGNsYXNzIEpTRE9NV2luZG93IDogcHVibGljIEpT
RXZlbnRUYXJnZXQgewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhw
ciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpET01XaW5k
b3c7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3Rv
dHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBn
bG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Okdsb2JhbE9iamVjdFR5
cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0RlZGljYXRlZFdvcmtl
ckdsb2JhbFNjb3BlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5oCmluZGV4IDU3ODVkMWEwM2RkYWFmNTVmNjcz
NmUyMTY3MDAzYmVlNmMzNjE3MDEuLmUwYTY1YmQ3YzQ2MTVhNWRiOWQ1OGE3NzU4MTYyMGUwYzM4
NTYxOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaApAQCAt
MjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMu
aCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJKU1dvcmtlckdsb2JhbFNj
b3BlLmgiCiAKQEAgLTQxLDYgKzQyLDcgQEAgY2xhc3MgSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxT
Y29wZSA6IHB1YmxpYyBKU1dvcmtlckdsb2JhbFNjb3BlIHsKIAogICAgIERFQ0xBUkVfSU5GTzsK
IAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBE
T01TdHJ1Y3R1cmVJRDo6RGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGU7CiAgICAgc3RhdGljIEpT
Qzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAg
ICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3Rv
dHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Okdsb2JhbE9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdz
KSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0V4cG9zZWRTdGFyLmggYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNFeHBvc2VkU3Rhci5oCmluZGV4IDZmZDMxNWYyNGQy
YmJjMGNhMjNmOWMyNzI3NDc0Y2Y3MzI4NGQ3MTEuLjkzYmJhZjhmZmY2OWI2MDYyZmMxM2VjODZj
ZTJkZmZmMGMyNTY5YWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU0V4cG9zZWRTdGFyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFN0YXIuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJh
Z21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJFeHBvc2Vk
U3Rhci5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIkpTRXZlbnRUYXJn
ZXQuaCIKQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNFeHBvc2VkU3RhciA6IHB1YmxpYyBKU0V2
ZW50VGFyZ2V0IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIg
RE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6RXhwb3NlZFN0
YXI7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3Rv
dHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBn
bG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0
cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0V4cG9zZWRUb1dvcmtlckFuZFdp
bmRvdy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3Nl
ZFRvV29ya2VyQW5kV2luZG93LmgKaW5kZXggM2ViMTUyZDVlODdkMjNmZGVhNGIxMzdjODJjMDVi
NzJiZjAxODIyNi4uODk2YTBkZDZmODJhZTE2NmVkOWIzNWNlYTljMDEzNzUwZTIwNWM3YyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3Nl
ZFRvV29ya2VyQW5kV2luZG93LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93LmgKQEAgLTIwLDYgKzIwLDcgQEAK
IAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAi
RXhwb3NlZFRvV29ya2VyQW5kV2luZG93LmgiCiAjaW5jbHVkZSAiSlNET01Db252ZXJ0RGljdGlv
bmFyeS5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgpAQCAtNDQsNiArNDUsNyBAQCBjbGFz
cyBKU0V4cG9zZWRUb1dvcmtlckFuZFdpbmRvdyA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8RXhwb3Nl
ZFRvV29ya2VyQW5kV2luZG93PgogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNv
bnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpF
eHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3c7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVh
dGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0
cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5m
byhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1BhaW50V29ya2xldEdsb2JhbFNjb3BlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNQYWludFdvcmtsZXRHbG9iYWxTY29wZS5oCmluZGV4IGFkMDI5NDA2ZDZi
OTUwYzliMTMzM2Y0YTM0ZjE1YjViZmY2NmFiYzQuLjY3ZDYyMTY2OWQyOGU5MTE5MzkzMzA0ZTRl
MjI0M2U4NTg0YjMwOGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1BhaW50V29ya2xldEdsb2JhbFNjb3BlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUuaApA
QCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVy
ZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJKU1dvcmtsZXRHbG9i
YWxTY29wZS5oIgogCkBAIC00MSw2ICs0Miw3IEBAIGNsYXNzIEpTUGFpbnRXb3JrbGV0R2xvYmFs
U2NvcGUgOiBwdWJsaWMgSlNXb3JrbGV0R2xvYmFsU2NvcGUgewogCiAgICAgREVDTEFSRV9JTkZP
OwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9
IERPTVN0cnVjdHVyZUlEOjpQYWludFdvcmtsZXRHbG9iYWxTY29wZTsKICAgICBzdGF0aWMgSlND
OjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAg
ICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90
eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6R2xvYmFsT2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3Mp
LCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTZXJ2aWNlV29ya2VyR2xvYmFs
U2NvcGUuaAppbmRleCBkZjkwNGFjMzM3YzI3MzQwNzk4MmU4YTg0ZjY5ZTg1ODdlM2IwOTNiLi5h
ZWNhNDU2ZmRjYzI0MDRiMWRkNmFmYWUwZDU2NGVhZjUwZmRmZmVjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTZXJ2aWNlV29ya2VyR2xvYmFs
U2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNT
ZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9u
Y2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIu
aCIKICNpbmNsdWRlICJKU1dvcmtlckdsb2JhbFNjb3BlLmgiCiAKQEAgLTQxLDYgKzQyLDcgQEAg
Y2xhc3MgSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUgOiBwdWJsaWMgSlNXb3JrZXJHbG9iYWxT
Y29wZSB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0
cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlNlcnZpY2VXb3JrZXJH
bG9iYWxTY29wZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFs
dWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVh
dGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6R2xvYmFs
T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hhZG93
UmVhbG1HbG9iYWxTY29wZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTU2hhZG93UmVhbG1HbG9iYWxTY29wZS5oCmluZGV4IDczYmViYWEzODc5ODFjN2U5NWM4
Zjk0MWJkMzRiNjA4ZGM0NDMwMjkuLmY0OTljYTVkYjFhNTA0ZWQxMGZlMjlhYzYxNDlkYTE5ZjU3
YmE2YWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlLmgKQEAgLTIwLDYgKzIw
LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5j
bHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CiAK
QEAgLTQyLDYgKzQzLDcgQEAgY2xhc3MgSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlIDogcHVibGlj
IEpTRE9NV3JhcHBlcjxTaGFkb3dSZWFsbUdsb2JhbFNjb3BlPiB7CiAKICAgICBERUNMQVJFX0lO
Rk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4
ID0gRE9NU3RydWN0dXJlSUQ6OlNoYWRvd1JlYWxtR2xvYmFsU2NvcGU7CiAgICAgc3RhdGljIEpT
Qzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAg
ICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3Rv
dHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Okdsb2JhbE9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdz
KSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTaGFyZWRXb3JrZXJHbG9iYWxT
Y29wZS5oCmluZGV4IGNjM2QzNzM2ZjYzZTAxMjUyZDkyNGY0Y2YzOTU0NDdlMDk0YzYxNGEuLjJl
MmZhNzdkNGZmOTRkMDI4M2M0NDRiNTg0YmVjOWFlMGE2MTc0YjkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYXJlZFdvcmtlckdsb2JhbFNj
b3BlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hh
cmVkV29ya2VyR2xvYmFsU2NvcGUuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UK
IAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIK
ICNpbmNsdWRlICJKU1dvcmtlckdsb2JhbFNjb3BlLmgiCiAKQEAgLTQxLDYgKzQyLDcgQEAgY2xh
c3MgSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZSA6IHB1YmxpYyBKU1dvcmtlckdsb2JhbFNjb3Bl
IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0
dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6U2hhcmVkV29ya2VyR2xvYmFs
U2NvcGU7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpW
TSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHBy
b3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZt
LCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Okdsb2JhbE9iamVj
dFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0
aW9ucy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENF
UmVhY3Rpb25zLmgKaW5kZXggYjQyNDBmMDc1M2Y1MDI3MDYwYzdkODE0NjQ3Y2JiMDAwZTA4MTVj
Ny4uYTY0OTI4OThmZTc5ODExZTg4ZmIzYWU1ZGRiZmIyZDU2YWY3MjNlZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rpb25z
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENF
UmVhY3Rpb25zLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRl
ICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAi
VGVzdENFUmVhY3Rpb25zLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00
Myw2ICs0NCw3IEBAIGNsYXNzIEpTVGVzdENFUmVhY3Rpb25zIDogcHVibGljIEpTRE9NV3JhcHBl
cjxUZXN0Q0VSZWFjdGlvbnM+IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBj
b25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6
VGVzdENFUmVhY3Rpb25zOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0
dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6
SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6
OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpP
YmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q0VS
ZWFjdGlvbnNTdHJpbmdpZmllci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXIuaAppbmRleCAwOWM0ZGUzZGQxZmYw
YTM4YjI4OWZmNWI1Y2U3YjA5N2RkM2M1ZTgwLi5hY2FmYjg4YzIyMjc4MGRlY2JlM2NhOWQzNzg1
ZGQyNTA2OGEyMWNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVy
LmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1
Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdENFUmVh
Y3Rpb25zU3RyaW5naWZpZXIuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAg
LTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllciA6IHB1Ymxp
YyBKU0RPTVdyYXBwZXI8VGVzdENFUmVhY3Rpb25zU3RyaW5naWYKIAogICAgIERFQ0xBUkVfSU5G
TzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXgg
PSBET01TdHJ1Y3R1cmVJRDo6VGVzdENFUmVhY3Rpb25zU3RyaW5naWZpZXI7CiAgICAgc3RhdGlj
IEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAg
ICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHBy
b3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwg
aW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsVHJhY2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbFRyYWNlci5oCmluZGV4IGUzMDYxMTg2
YjY1YmU5MWI2N2Y1NGJlMzNkMWMzM2EzMjkyM2I1ODAuLjMzNWZlNDFiNGI3MDkwMWJjMDZkZDUz
YTc1Mzg2MmJkZGY0ZjAzNzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsVHJhY2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxUcmFjZXIuaApAQCAtMjAsNiArMjAsNyBA
QAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRl
ICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0Q2FsbFRyYWNlci5oIgogI2luY2x1ZGUg
PHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RDYWxs
VHJhY2VyIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0Q2FsbFRyYWNlcj4gewogCiAgICAgREVD
TEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1
cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0Q2FsbFRyYWNlcjsKICAgICBzdGF0aWMgSlND
OjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAg
ICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90
eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZv
KCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yLmggYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNC
dWlsdGluQ29uc3RydWN0b3IuaAppbmRleCBmM2ZjMDRjZDA1YmNjODU2Zjk4ZmRjZTk1ZTUzOGEy
M2VhOTRiN2I3Li5mYjY3YWEyMzkxMWU0NmQ0ZGE1YzQ4MzQzYjI0M2I0MmVjZWUzNjdmIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xh
c3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0b3IuaApA
QCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVy
ZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0Q2xhc3NXaXRo
SlNCdWlsdGluQ29uc3RydWN0b3IuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4K
QEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29uc3RydWN0
b3IgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RDbGFzc1dpdGhKU0IKIAogICAgIERFQ0xBUkVf
SU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5k
ZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yOwog
ICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBK
U0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUp
CiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFs
T2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1
cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcy5o
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENvbmRpdGlv
bmFsSW5jbHVkZXMuaAppbmRleCAwYTE1ZTY3N2VjMmQyNDA4YmU5YzEyZGE0MzVjMzUzMDdkNGUz
YmE3Li5kZjM2ZjVjYWU1MmRjNzZhZmU4MzAxZTFkMzNjZWJiNzQzYzkwZTk0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9u
YWxJbmNsdWRlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdt
YSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFw
cGVyLmgiCiAjaW5jbHVkZSAiVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMuaCIKICNpbmNsdWRlIDx3
dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0Q29uZGl0
aW9uYWxJbmNsdWRlcyA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdENvbmRpdGlvbmFsSW5jbHVk
ZXM+IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3Ry
dWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdENvbmRpdGlvbmFs
SW5jbHVkZXM7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlND
OjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVl
IHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRl
KHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5
cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRpb25h
bGx5UmVhZFdyaXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZS5oCmluZGV4IGMxYzgzYTk5MDg1MzFjZDFlNWYx
OGIzZmZkNWQ1MzBmNmUzYTYxNWIuLjMxMTQ0N2QzOGFhMjk1M2MyODIwNTllMDkzNDVkOGNlMjUw
MTUzYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUuaApAQCAt
MjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMu
aCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0Q29uZGl0aW9uYWxs
eVJlYWRXcml0ZS5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiAr
NDQsNyBAQCBjbGFzcyBKU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlIDogcHVibGljIEpTRE9N
V3JhcHBlcjxUZXN0Q29uZGl0aW9uYWxseVJlYWRXcgogCiAgICAgREVDTEFSRV9JTkZPOwogCisg
ICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0
cnVjdHVyZUlEOjpUZXN0Q29uZGl0aW9uYWxseVJlYWRXcml0ZTsKICAgICBzdGF0aWMgSlNDOjpT
dHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAg
cmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBl
LCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCks
IEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdERPTUpJVC5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdERPTUpJVC5oCmluZGV4IDBlZGI4NGJmN2VhMmIzMWVkYTY3MGUz
NTI0NmMyODYwMDEzZDdhNzAuLjE1NDJkMDZmZjcwMGY2M2RjMzA4YmRhNTUwZmIyMzdmYzZiNmUz
ZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RET01KSVQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0RE9NSklULmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNp
bmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5j
bHVkZSAiSlNOb2RlLmgiCiAjaW5jbHVkZSAiVGVzdERPTUpJVC5oIgpAQCAtNDMsNiArNDQsNyBA
QCBjbGFzcyBKU1Rlc3RET01KSVQgOiBwdWJsaWMgSlNOb2RlIHsKIAogICAgIERFQ0xBUkVfSU5G
TzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXgg
PSBET01TdHJ1Y3R1cmVJRDo6VGVzdERPTUpJVDsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUq
IGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpT
Qzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5
cGVJbmZvKEpTQzo6SlNUeXBlKEpTTm9kZVR5cGUpLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwg
SlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTi5oIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT04uaAppbmRleCBmNDdkNmM4MDk2
ODBhNjg3Y2U2OTkyNzQzZTIzYmQwZjAzZmQxZGRkLi4zMmNkYTllNzVkMzc1NDBkZjZiZGQ0Y2Uy
NGY4YjE2NzI1YzdkZGMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OLmgKQEAgLTIwLDYgKzIw
LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5j
bHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdERlZmF1bHRUb0pTT04uaCIKICNp
bmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNU
ZXN0RGVmYXVsdFRvSlNPTiA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdERlZmF1bHRUb0pTT04+
IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0
dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdERlZmF1bHRUb0pTT047
CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0s
IEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlw
ZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9i
YWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVj
dHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVy
ZWRCeUV4cG9zZWQuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQuaAppbmRleCAyODE3Yzk3OTg3ZGNj
NmZhMWQwZTQ4MzczMjVkYTRiYzZlM2Y5NjU3Li40MGMwZDRkMjA5M2VjNmVmMGNhMDU2NjFiZGM2
ODkwODk3N2ExNGJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05G
aWx0ZXJlZEJ5RXhwb3NlZC5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisj
aW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2lu
Y2x1ZGUgIlRlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQuaCIKICNpbmNsdWRlIDx3
dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0RGVmYXVs
dFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0RGVmYXVs
dFRvSlMKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3Ry
dWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdERlZmF1bHRUb0pT
T05GaWx0ZXJlZEJ5RXhwb3NlZDsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0
cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBK
U0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0
dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpT
Qzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dERlZmF1bHRUb0pTT05JbmRpcmVjdEluaGVyaXRhbmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFu
Y2UuaAppbmRleCA4NjczYzUxMzNiNGUwMjc2YzQ4MzkzMTYzNTY5ZDU1OTBlNjM0ODdjLi41NGY3
ZTBlOTJiNmE2ZmRiZjJhNmE4MTg0MWZmNjEwOTQ0MDQyOGE5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluZGly
ZWN0SW5oZXJpdGFuY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UuaApAQCAtMjAsNiAr
MjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNp
bmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJKU1Rlc3REZWZhdWx0VG9KU09OSW5o
ZXJpdC5oIgogI2luY2x1ZGUgIlRlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZS5o
IgpAQCAtNDIsNiArNDMsNyBAQCBjbGFzcyBKU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhl
cml0YW5jZSA6IHB1YmxpYyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdAogCiAgICAgREVDTEFS
RV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJ
bmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFu
Y2U7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3Rv
dHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBn
bG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0
cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5o
ZXJpdC5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERl
ZmF1bHRUb0pTT05Jbmhlcml0LmgKaW5kZXggMjQ0OTNhYzYzMDliNTllNjliYTFlYjcwNGIyN2My
OGRmMmE4OGUyZS4uMDMwZmFmYmEyNTJjOGFlZTIwNTRlYmQ3NGFjNzEzNzAxZDlkY2I0YSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERl
ZmF1bHRUb0pTT05Jbmhlcml0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0LmgKQEAgLTIwLDYgKzIwLDcgQEAK
IAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAi
SlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiSlNUZXN0RGVmYXVsdFRvSlNPTi5oIgogI2luY2x1
ZGUgIlRlc3REZWZhdWx0VG9KU09OSW5oZXJpdC5oIgpAQCAtNDIsNiArNDMsNyBAQCBjbGFzcyBK
U1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdCA6IHB1YmxpYyBKU1Rlc3REZWZhdWx0VG9KU09OIHsK
IAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJl
SUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdERlZmF1bHRUb0pTT05Jbmhl
cml0OwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0m
IHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90
b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwg
Z2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBT
dHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTklu
aGVyaXRGaW5hbC5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWwuaAppbmRleCAxMGQ2MDI0NTkzNzAwZTRjOTJl
MWY5Yjg0MGEyM2IxNmUzM2QxYzY0Li5iZGEwN2I4MDM0NDA1M2U3NzUyMmE1YWRkZjJlN2I4Njcx
YjYxZjYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFs
LmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1
Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiSlNUZXN0RGVm
YXVsdFRvSlNPTkluaGVyaXQuaCIKICNpbmNsdWRlICJUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRG
aW5hbC5oIgpAQCAtNDIsNiArNDMsNyBAQCBjbGFzcyBKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJp
dEZpbmFsIDogcHVibGljIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0IHsKIAogICAgIERFQ0xB
UkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJl
SW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdERlZmF1bHRUb0pTT05Jbmhlcml0RmluYWw7CiAg
ICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpT
Qzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkK
ICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxP
YmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVy
ZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhl
dGljQXR0cmlidXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZS5oCmluZGV4IGQwZWZhZGU1
NWM1N2I0ZjBlOGVjODZmOTQ4MWMxNjhjZjUyNGVjOTIuLjNkNDIyOGM0M2FlNmRkMmNlZjY0ZGVj
NGFkMGIwOGRlN2VhZmY3YjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlbGVn
YXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGUuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJh
Z21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdy
YXBwZXIuaCIKICNpbmNsdWRlICJUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0
ZS5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBj
bGFzcyBKU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlIDogcHVibGljIEpT
RE9NV3JhcHBlcjxUZXN0RGVsZWdhdAogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGlj
IGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlE
OjpUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZTsKICAgICBzdGF0aWMgSlND
OjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAg
ICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90
eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZv
KCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdERvbWFpblNlY3VyaXR5LmggYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RG9tYWluU2VjdXJpdHkuaAppbmRleCA4YjM5
ODQ3NDdjMjhhMTNmMzk1OTJjZWUyNWY2MTI1MjMzMzQ0OGQwLi45MTVjNzhjZGJlMTQzZGZkYTUw
MWM0NGI1YWIzZjZkNWRlZjU2NjFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RG9tYWluU2VjdXJpdHkuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RG9tYWluU2VjdXJpdHkuaApAQCAt
MjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMu
aCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0RG9tYWluU2VjdXJp
dHkuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAg
Y2xhc3MgSlNUZXN0RG9tYWluU2VjdXJpdHkgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3REb21h
aW5TZWN1cml0eT4gewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhw
ciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0RG9t
YWluU2VjdXJpdHk7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUo
SlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1Zh
bHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3Jl
YXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVj
dFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFbmFibGVk
QnlTZXR0aW5nLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0RW5hYmxlZEJ5U2V0dGluZy5oCmluZGV4IGM3NjhhNmFkZGI5ZDkyYjNlNzQ3MzdhZTNhYzAy
NGE2NjViNjAzODQuLjJmZDY4MTk4ZmM2MWRjN2VjOTZhYzBlYmJhZjAwOGVjOWZmNGY2OTAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RF
bmFibGVkQnlTZXR0aW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEVuYWJsZWRCeVNldHRpbmcuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJh
Z21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdy
YXBwZXIuaCIKICNpbmNsdWRlICJUZXN0RW5hYmxlZEJ5U2V0dGluZy5oIgogI2luY2x1ZGUgPHd0
Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RFbmFibGVk
QnlTZXR0aW5nIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0RW5hYmxlZEJ5U2V0dGluZz4gewog
CiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJ
RCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0RW5hYmxlZEJ5U2V0dGluZzsK
ICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
SlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBl
KQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2Jh
bE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0
dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEVuYWJsZWRGb3JDb250ZXh0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEZv
ckNvbnRleHQuaAppbmRleCA2MGVmNDdjOWVhOTliYTAyZGRhNmE2NTNlMTZiZGU0MTc1ZWJmNDMy
Li5hZjZjNmI0NTljNTEzZWY1MTAxOGVlZGE4NzgwMDEzZDBhNGE3ODdhIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEZvckNv
bnRleHQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0RW5hYmxlZEZvckNvbnRleHQuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UK
IAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIK
ICNpbmNsdWRlICJUZXN0RW5hYmxlZEZvckNvbnRleHQuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJE
ZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0RW5hYmxlZEZvckNvbnRl
eHQgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RFbmFibGVkRm9yQ29udGV4dD4gewogCiAgICAg
REVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1
Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0RW5hYmxlZEZvckNvbnRleHQ7CiAgICAg
c3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAg
ICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmpl
Y3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZs
YWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRDb25zdHJ1Y3Rv
ci5oCmluZGV4IDVlNDY2NDU3NzcwMjc4NGM2NDA1ZTI5ZDY1OTI5YzljMzFlMzMwMzguLmRhMDFi
N2UxMGMxY2YwOWNhMjRjYzM3YTk3OTk4Y2ViNTdjM2YzYTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudENvbnN0cnVjdG9yLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50
Q29uc3RydWN0b3IuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1
ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTUNvbnZlcnREaWN0aW9uYXJ5Lmgi
CiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiSlNFdmVudC5oIgpAQCAtNDMs
NiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RFdmVudENvbnN0cnVjdG9yIDogcHVibGljIEpTRXZlbnQg
ewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1
cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0RXZlbnRDb25zdHJ1Y3Rv
cjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90
eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGds
b2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6SlNUeXBlKEpTRXZlbnRU
eXBlKSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50VGFy
Z2V0LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZl
bnRUYXJnZXQuaAppbmRleCA5MzkxZDJhMDFhNDhlNzEwYTdjMzFjMDliNDY5Nzg3N2I4MmQ5MDdk
Li45NGQ5YjNjNzQwZGIxMDg3ZjFhNGVhYTg5ZTMxOTBmYzFlNDc1M2JjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRUYXJnZXQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZl
bnRUYXJnZXQuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUg
IkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJK
U0V2ZW50VGFyZ2V0LmgiCiAjaW5jbHVkZSAiVGVzdEV2ZW50VGFyZ2V0LmgiCkBAIC00Nyw2ICs0
OCw3IEBAIGNsYXNzIEpTVGVzdEV2ZW50VGFyZ2V0IDogcHVibGljIEpTRXZlbnRUYXJnZXQgewog
CiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJ
RCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0RXZlbnRUYXJnZXQ7CiAgICAg
c3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAg
ICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmpl
Y3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZs
YWdzKSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNlcHRpb24u
aCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNlcHRp
b24uaAppbmRleCA0ZGZmOTYwYjgyYWRlNGFkNWUyODE2YjdlZDdjMDg0Y2M3NGU1MzdjLi4zNTkz
YzFiNDFhMzI0YWY0ZWViZWIzZDM2MzFhMjk3Mjc0MjZlZTY5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXhjZXB0aW9uLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV4Y2VwdGlvbi5o
CkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0
dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RFeGNlcHRp
b24uaCIKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9FcnJvclByb3RvdHlwZS5oPgpAQCAtNDQs
NiArNDUsNyBAQCBjbGFzcyBKU1Rlc3RFeGNlcHRpb24gOiBwdWJsaWMgSlNET01XcmFwcGVyPFRl
c3RFeGNlcHRpb24+IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4
cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdEV4
Y2VwdGlvbjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUg
cHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUo
dm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlw
ZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlQWRk
T3BhcXVlUm9vdC5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdC5oCmluZGV4IGU0NTU5YmI4NTEwNGNjZmRiZWUyMWZl
YTNhMmZjMWIxZmQ0ZTA5YjYuLjFkMTcwN2YxOGU1NjRmNjY3ZTJlNDg0NTUzNzJjZDNjNTczZmMy
YjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290LmgKQEAgLTIwLDYg
KzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAj
aW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdEdlbmVyYXRlQWRkT3BhcXVl
Um9vdC5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBA
QCBjbGFzcyBKU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3QgOiBwdWJsaWMgSlNET01XcmFwcGVy
PFRlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvbwogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3Rh
dGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVy
ZUlEOjpUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290OwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVy
ZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4g
SlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6
VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpO
b25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlSXNSZWFjaGFibGUuaAppbmRleCBjMWY3
OTA5MWRjNzE4NzNiNTQ1ODUyOGU1NTA5ZjI5MGJlYjk4YjRiLi5iNzhhYTJmZjliNGJmNGVkZDU4
YmY5NWZkNDBiZDA5ZmE5NWQ2MjE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUlzUmVhY2hh
YmxlLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01T
dHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdEdl
bmVyYXRlSXNSZWFjaGFibGUuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAg
LTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZSA6IHB1YmxpYyBK
U0RPTVdyYXBwZXI8VGVzdEdlbmVyYXRlSXNSZWFjaGFibGU+IHsKIAogICAgIERFQ0xBUkVfSU5G
TzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXgg
PSBET01TdHJ1Y3R1cmVJRDo6VGVzdEdlbmVyYXRlSXNSZWFjaGFibGU7CiAgICAgc3RhdGljIEpT
Qzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAg
ICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3Rv
dHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5m
bygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHbG9iYWxPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHbG9iYWxPYmplY3QuaAppbmRleCA5YjA4YzA5
MWQxNTBmYjU1YzM1ZjNjZTkzZjk2ZGYwYWNhZGZiYzA0Li4wZmViNWM4NjgxNTA5NDU0ZDM2ZGUy
NGRhYjhiZjNhMDUxYmJkNmE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2xvYmFsT2JqZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdsb2JhbE9iamVjdC5oCkBAIC0yMCw2ICsy
MCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2lu
Y2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RHbG9iYWxPYmplY3QuaCIKICNp
bmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNU
ZXN0R2xvYmFsT2JqZWN0IDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0R2xvYmFsT2JqZWN0PiB7
CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVy
ZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RHbG9iYWxPYmplY3Q7CiAg
ICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpT
Qzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkK
ICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxP
YmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Okdsb2JhbE9iamVjdFR5cGUsIFN0
cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyTm9J
ZGVudGlmaWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllci5oCmluZGV4IGM0NmMzZWQ3ODViZjMyNzY3YzNh
NGM2YjBhNmY2MTgwYmQ5ZjQxYmIuLjViNjkwZmUwODY5OWRlZTcwMzkxYWIyM2Q4ODk2NmJhMzlh
ODVhYjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIu
aApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVj
dHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0SW5kZXhl
ZFNldHRlck5vSWRlbnRpZmllci5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpA
QCAtNDksNiArNTAsNyBAQCBjbGFzcyBKU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyIDog
cHVibGljIEpTRE9NV3JhcHBlcjxUZXN0SW5kZXhlZFNldHRlck5vSQogCiAgICAgREVDTEFSRV9J
TkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRl
eCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0SW5kZXhlZFNldHRlck5vSWRlbnRpZmllcjsKICAgICBz
dGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAg
IHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVj
dCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxh
Z3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oCmluZGV4IGJlZDA0
ODA3YmJiNzZkOTk2Mzk3ODEyMTQ4YzAxNzM5ZDNmMjE4ZDQuLjIxNjY2NThjOWZlNTI2OGVlZTJl
ZDNiNzM0OGVjNThkMDAzOTU0YWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhl
ZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBv
bmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVy
LmgiCiAjaW5jbHVkZSAiVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oIgogI2lu
Y2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDksNiArNTAsNyBAQCBjbGFzcyBKU1Rl
c3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24gOiBwdWJsaWMgSlNET01XcmFwcGVyPFRl
c3RJbmRleGVkU2V0dAogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhw
ciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0SW5k
ZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSog
Y3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlND
OjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlw
ZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlI
YXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmggYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRl
cldpdGhJZGVudGlmaWVyLmgKaW5kZXggMGNiZWMyYjRjNTEyZWRjM2UxYmQxOWY0NjA4ZDNmY2Nh
MjhkYmY2OS4uNThhMTAxMWYzNGRhNDA3NmViMmVkNWI2ZGZkZjUxN2E2NjFhYmQ4MyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4
ZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIuaApAQCAtMjAs
NiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIK
ICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0SW5kZXhlZFNldHRlcldp
dGhJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00OSw2
ICs1MCw3IEBAIGNsYXNzIEpTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllciA6IHB1Ymxp
YyBKU0RPTVdyYXBwZXI8VGVzdEluZGV4ZWRTZXR0ZXJXCiAKICAgICBERUNMQVJFX0lORk87CiAK
KyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9N
U3RydWN0dXJlSUQ6OlRlc3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXI7CiAgICAgc3RhdGlj
IEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAg
ICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHBy
b3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwg
aW5mbygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5j
cHAKaW5kZXggZWNiMDU0ODQwNmYxZGU0ZmRhNGJkYTVkOTY0N2RmYTc5MzMzMjEzMy4uOTA3MTU1
OTgyNjM2MmFlZTU0ZmE4MzFkYTg5ODg1NzYxNGIwYjhkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZS5j
cHAKQEAgLTExMDksNiArMTEwOSw3IEBAIGNsYXNzIFRlc3RJbnRlcmZhY2VJdGVyYXRvciBmaW5h
bCA6IHB1YmxpYyBUZXN0SW50ZXJmYWNlSXRlcmF0b3JCYXNlIHsKICAgICAgICAgKTsKICAgICB9
CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0g
RE9NU3RydWN0dXJlSUQ6OlRlc3RJbnRlcmZhY2VJdGVyYXRvcjsKICAgICBzdGF0aWMgSlNDOjpT
dHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAg
cmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBl
LCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCkp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEludGVyZmFjZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdEludGVyZmFjZS5oCmluZGV4IDc2OWYyZGU5MjQxZDcyMTU3NzRjNzBkYmUzOTdjMmNj
YWMzYzQ4YmYuLjhiNjc5MDk1MzM2N2NiODI1ZGZkOTc2MjYwNTFlNWJkNmZjOWE2MGMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRl
cmZhY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0SW50ZXJmYWNlLmgKQEAgLTIyLDYgKzIyLDcgQEAKIAogI2lmIEVOQUJMRShDb25kaXRpb24x
KSB8fCBFTkFCTEUoQ29uZGl0aW9uMikKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNp
bmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0SW50ZXJmYWNlLmgiCiAjaW5j
bHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00Nyw2ICs0OCw3IEBAIGNsYXNzIFdFQkNP
UkVfRVhQT1JUIEpTVGVzdEludGVyZmFjZSA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdEludGVy
ZmFjZT4gewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01T
dHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0SW50ZXJmYWNl
OwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZt
LCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5
cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xv
YmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1
Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlTGVhZGluZ1Vu
ZGVyc2NvcmUuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZS5oCmluZGV4IDg2NDhjZWE1NTIxZWQzNDRmYWY0
ZDg5NjNiZGNkMDgxNzhkZTYzYWIuLmU0N2M5Mjc3OGU0OTQ2ZmNjNjBhYmEwNGQwMTUwN2U4MjBl
NzFhOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29y
ZS5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3Ry
dWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RJbnRl
cmZhY2VMZWFkaW5nVW5kZXJzY29yZS5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5o
PgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29y
ZSA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdEludGVyZmFjZUxlYWRpbgogCiAgICAgREVDTEFS
RV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJ
bmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0SW50ZXJmYWNlTGVhZGluZ1VuZGVyc2NvcmU7CiAg
ICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpT
Qzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkK
ICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxP
YmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVy
ZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJdGVyYWJsZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuY3BwCmluZGV4
IDVmNGZhNjlmYThkMWIwMTE5MWQ3YTQ4NDIxYmVjOTMxYTg5NTZhZjIuLjk3ZWUyNzNmYWZhOGY1
NmQ0ODIzMmExM2I2NTYxYjhlMTVmYjMyYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJdGVyYWJsZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEl0ZXJhYmxlLmNwcApAQCAtMjA0
LDYgKzIwNCw3IEBAIGNsYXNzIFRlc3RJdGVyYWJsZUl0ZXJhdG9yIGZpbmFsIDogcHVibGljIFRl
c3RJdGVyYWJsZUl0ZXJhdG9yQmFzZSB7CiAgICAgICAgICk7CiAgICAgfQogCisgICAgc3RhdGlj
IGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlE
OjpUZXN0SXRlcmFibGVJdGVyYXRvcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0
ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3Ry
dWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZv
KEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCkpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEl0ZXJhYmxlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUu
aAppbmRleCAxNjM5MTk3ZDZiYTU3NDgwMTQyNjE4YjVjZjcxNDJiYTA1YjllMzJmLi40MTg0MWY1
MGFhYWE2ODM2NzBkOTZlOTVjZjU4MDNhNDFlZWU5MjI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFibGUuaApAQCAt
MjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMu
aCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0SXRlcmFibGUuaCIK
ICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3Mg
SlNUZXN0SXRlcmFibGUgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RJdGVyYWJsZT4gewogCiAg
ICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBz
dHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0SXRlcmFibGU7CiAgICAgc3RhdGlj
IEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAg
ICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHBy
b3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwg
aW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3Rvci5oIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRpbkNvbnN0cnVj
dG9yLmgKaW5kZXggY2FiZGE5YzkwNGU2NDYzNGYyNTNiYWExOTRmMDZiNDM0YzEwNTgwMi4uNzcz
N2NjYjU3M2NjMGYxYWQyZDIxZGVmNWM2ZjFmYzU1NDAyNjA5MyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRpbkNvbnN0cnVj
dG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEpTQnVpbHRpbkNvbnN0cnVjdG9yLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNl
CiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgi
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQwLDYgKzQxLDcgQEAgY2xhc3MgSlNUZXN0SlNC
dWlsdGluQ29uc3RydWN0b3IgOiBwdWJsaWMgSlNET01PYmplY3QgewogCiAgICAgREVDTEFSRV9J
TkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRl
eCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0SlNCdWlsdGluQ29uc3RydWN0b3I7CiAgICAgc3RhdGlj
IEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAg
ICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHBy
b3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwg
aW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24uaCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lGYWN0b3J5RnVu
Y3Rpb24uaAppbmRleCA3ZGFjOGU1ZmUyZmVmOTE2N2I5MGFlYzJlNjIzMDAzNTAwYTE1YzIyLi5j
MmI0YzlhZDdlMDQ1MmNlMDZiYzJkODMyMDI5ZjIwZTk4MGQ2Y2RjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5RmFjdG9yeUZ1
bmN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbi5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEg
b25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBl
ci5oIgogI2luY2x1ZGUgIlRlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24uaCIKICNpbmNsdWRlIDx3
dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0TGVnYWN5
RmFjdG9yeUZ1bmN0aW9uIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TGVnYWN5RmFjdG9yeUZ1
bmN0aW8KIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3Ry
dWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdExlZ2FjeUZhY3Rv
cnlGdW5jdGlvbjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFs
dWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVh
dGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0
VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeU5v
SW50ZXJmYWNlT2JqZWN0LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QuaAppbmRleCAxMjY0Yjk4OGJkZTU5ZjJi
NWU5ZTc5YWZlYzU4NWEzNjA2NDM4ZTZmLi5iYjUwNjQyYjM0NzQzOWIyZDdhZmVkMWMxYzZhYTM2
MDhlNTk0Njc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3Qu
aApAQCAtMjIsNiArMjIsNyBAQAogCiAjaWYgRU5BQkxFKENvbmRpdGlvbjIyKSB8fCBFTkFCTEUo
Q29uZGl0aW9uMjMpCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNE
T01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0LmgiCiAj
aW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00NSw2ICs0Niw3IEBAIGNsYXNzIEpT
VGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0IDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TGVn
YWN5Tm9JbnRlcmZhY2VPCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3Rl
eHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RM
ZWdhY3lOb0ludGVyZmFjZU9iamVjdDsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0
ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3Ry
dWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZv
KEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmgKaW5kZXggZTliZDI5
ODQ3ZTUyYzBkOTQ0ODIzZTMwNWY4MTQ1YzU2MTljNDgyNi4uOTU3OTdiMjYwNWMzZmQzMGQ0OGJj
N2U3MzM3NzY0ZDEwN2FkNTkwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5T3ZlcnJpZGVC
dWlsdElucy5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAi
RE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRl
c3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVk
Lmg+CkBAIC00Niw2ICs0Nyw3IEBAIGNsYXNzIEpTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMg
OiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RMZWdhY3lPdmVycmlkZUJ1aWx0CiAKICAgICBERUNM
QVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVy
ZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RMZWdhY3lPdmVycmlkZUJ1aWx0SW5zOwogICAg
IHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6
OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAg
ICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2Jq
ZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVG
bGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZS5o
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2Uu
aAppbmRleCA2YmQxYWMyMjJlYjYxMDU0NDU2ODY2MGYxMGI3NzFhZTQyYjBmMWU4Li41NjIzMTkx
ZTFhZDFlNjhhYjkwZTNkN2M3YTZjOTBjOTVlMTZlMGEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RNYXBMaWtlLmgKQEAgLTIw
LDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgi
CiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdE1hcExpa2UuaCIKICNp
bmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNU
ZXN0TWFwTGlrZSA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdE1hcExpa2U+IHsKIAogICAgIERF
Q0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0
dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdE1hcExpa2U7CiAgICAgc3RhdGljIEpTQzo6
U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAg
IHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlw
ZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygp
LCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zLmggYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZVdpdGhP
dmVycmlkZGVuT3BlcmF0aW9ucy5oCmluZGV4IGI5MWFiZjEwYzUzZThlN2RlNjE0MDI3YTc4NWU0
N2E2ZjcxYTUyZDQuLjc0MjcxNTZlYTQwZmU5MjRkZDM3YTA4NzQ0NzFlOTcxM2I4MDFlODIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RN
YXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlv
bnMuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0
cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0TWFw
TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucy5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ry
b3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RNYXBMaWtlV2l0aE92ZXJyaWRk
ZW5PcGVyYXRpb25zIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TWFwTGlrZVdpdAogCiAgICAg
REVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1
Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0TWFwTGlrZVdpdGhPdmVycmlkZGVuT3Bl
cmF0aW9uczsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUg
cHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUo
dm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlw
ZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5k
ZXhlZFNldHRlck5vSWRlbnRpZmllci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRlbnRpZmllci5oCmluZGV4
IGViMzRiM2FiYjJhZGEyYTcxZTdhMjU4OWJjMDEwMjA2ZDZiM2ZiYWQuLmNlYzRmNjU1NWM4NTM1
Mzc4NjQwNTQ5YTJmZDEyMzc4ZjRjOThhMjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50
aWZpZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmgKQEAgLTIwLDYgKzIwLDcgQEAK
IAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAi
SlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRl
bnRpZmllci5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDksNiArNTAs
NyBAQCBjbGFzcyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIgOiBwdWJs
aWMgSlNET01XcmFwcGVyPFRlc3ROYW1lZEFuZAogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAg
c3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVj
dHVyZUlEOjpUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyOwogICAgIHN0YXRp
YyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewog
ICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBw
cm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyks
IGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVk
U2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5o
CmluZGV4IDE2MWM1YzJkZWI0N2FiZTNiNzEzMjZlZDUyMGI5YjFlNTQzODlmMTcuLmNlYmEzMDZl
M2E0YjQ4MWJlZWIwNzA2MTNlMDZkODA1YjY4ODQ4ZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJU
aHJvd2luZ0V4Y2VwdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oCkBA
IC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJl
cy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3ROYW1lZEFuZElu
ZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ry
b3llZC5oPgpAQCAtNDksNiArNTAsNyBAQCBjbGFzcyBKU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0
ZXJUaHJvd2luZ0V4Y2VwdGlvbiA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdE5hbQogCiAgICAg
REVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1
Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyVGhy
b3dpbmdFeGNlcHRpb247CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1
cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpK
U1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6
Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9i
amVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNj
ZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5oIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNl
dHRlcldpdGhJZGVudGlmaWVyLmgKaW5kZXggZTgzMGZlZmU0NmFlNzlkZThjYTk3MzUxNzRhNzhj
OGE2MTUyZDFlYy4uODBlOWZlNDk4YzE3ZWY0MGNmMDE5MDMxMTViZTRjOTBlNDc0MDdkOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5h
bWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJ
ZGVudGlmaWVyLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRl
ICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAi
VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3Rm
L05ldmVyRGVzdHJveWVkLmg+CkBAIC00OSw2ICs1MCw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkQW5k
SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TmFt
ZWRBCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVj
dHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZEFuZEluZGV4
ZWRTZXR0ZXJXaXRoSWRlbnRpZmllcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0
ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3Ry
dWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZv
KEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2ZUlu
ZGV4ZWRBY2Nlc3NvcnMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllci5oIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRp
Zmllci5oCmluZGV4IDgwNGM2OTg4NTk1NDQxYTVhOTQxOWVlNmMxZjNkOGQ2M2NhZDE5ZmYuLmQ5
MjBkODRkZDk0ZDBmNzBlOGQwMzU5NGM2ZTEwZDExODA2M2UwYzcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJOb0lk
ZW50aWZpZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVyLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3By
YWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01X
cmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllci5oIgogI2lu
Y2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDgsNiArNDksNyBAQCBjbGFzcyBKU1Rl
c3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXIgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3ROYW1l
ZERlbGV0ZXJOb0lkZQogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhw
ciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0TmFt
ZWREZWxldGVyTm9JZGVudGlmaWVyOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRl
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1
Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8o
SlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5k
ZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb24uaCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJUaHJv
d2luZ0V4Y2VwdGlvbi5oCmluZGV4IDJmZGY4MTdjYWJhYmUyOTY4OTZmNjZkZDRhZThmNTcwNDYw
MjkwZWQuLjEzMmU5ZWJkNDMyZmIyYTg3MjhhZDFhMGJjN2ZjNTkwYTFjOGQ0MTEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERl
bGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oCkBAIC0y
MCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5o
IgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3ROYW1lZERlbGV0ZXJU
aHJvd2luZ0V4Y2VwdGlvbi5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAt
NDgsNiArNDksNyBAQCBjbGFzcyBKU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbiA6
IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkRGVsZXRlcgogCiAgICAgREVDTEFSRV9JTkZP
OwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9
IERPTVN0cnVjdHVyZUlEOjpUZXN0TmFtZWREZWxldGVyVGhyb3dpbmdFeGNlcHRpb247CiAgICAg
c3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAg
ICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmpl
Y3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZs
YWdzKSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0
ZXJXaXRoSWRlbnRpZmllci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyLmgKaW5kZXggNzE5OGE0ODNmNjRi
MDE3OTg0OWI5MTI1MTUxNzRkMjk1YzBlOTIyMS4uMzc0Yjg4ZWI1M2M2OGQ4OWI2NmI1ZTQxNDM3
MjM3NmZlMGE2OTA1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlcldpdGhJ
ZGVudGlmaWVyLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRl
ICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAi
VGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVz
dHJveWVkLmg+CkBAIC00OCw2ICs0OSw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkRGVsZXRlcldpdGhJ
ZGVudGlmaWVyIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TmFtZWREZWxldGVyV2l0CiAKICAg
ICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0
cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRp
ZmllcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZN
JiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJv
dG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0s
IGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwg
U3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIuaApp
bmRleCAxOTI1MGQ4OGU4YzdhNmM3NGQyNjc4NGRlMjFiODRkYTNiMzNkZmZjLi4yZmQyYjlkMWM5
ZGEwODFjN2Q4NDdmNTU5NjkwYmI0YTNhZTE2YTY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRH
ZXR0ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIuaApAQCAtMjAsNiArMjAsNyBAQAogCiAj
cHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RP
TVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIu
aCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ4LDYgKzQ5LDcgQEAgY2xh
c3MgSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIgOiBwdWJsaWMgSlNET01XcmFw
cGVyPFRlc3ROYW1lZERlbGV0ZXIKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBj
b25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6
VGVzdE5hbWVkRGVsZXRlcldpdGhJbmRleGVkR2V0dGVyOwogICAgIHN0YXRpYyBKU0M6OlN0cnVj
dHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1
cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpT
Qzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlND
OjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aC5oIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyQ2Fs
bFdpdGguaAppbmRleCBiMmQ0YTU0M2Q3MTQ4NDk1OGZhZDg5OGI0OTI2YzlmZWRiN2ZhOGQ5Li4z
ZTBkZTJiNTdiODNjZjY1OTZmZDBiMDliMGMwYmY5OTZiMWExMjlmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJDYWxs
V2l0aC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3ROYW1lZEdldHRlckNhbGxXaXRoLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNl
CiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgi
CiAjaW5jbHVkZSAiVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGguaCIKICNpbmNsdWRlIDx3dGYvTmV2
ZXJEZXN0cm95ZWQuaD4KQEAgLTQ2LDYgKzQ3LDcgQEAgY2xhc3MgSlNUZXN0TmFtZWRHZXR0ZXJD
YWxsV2l0aCA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGg+IHsK
IAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJl
SUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdE5hbWVkR2V0dGVyQ2FsbFdp
dGg7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3Rv
dHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBn
bG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0
cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RO
YW1lZEdldHRlck5vSWRlbnRpZmllci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyLmgKaW5kZXggMWNhYTcyMDhh
NjFhNzFkNGJjYzUzMjg4ZmNmYTMwZjVlNWYzNGM1Mi4uNWU0NWJiZDEyZjllMWI0NThlOTEyYWY1
ZTgwMTFhY2UxNmU5NTQ2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyTm9JZGVu
dGlmaWVyLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJE
T01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVz
dE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVk
Lmg+CkBAIC00Niw2ICs0Nyw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVy
IDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRHZXR0ZXJOb0lkZW50CiAKICAgICBERUNM
QVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVy
ZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZEdldHRlck5vSWRlbnRpZmllcjsKICAg
ICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlND
OjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQog
ICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9i
amVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJl
RmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0
dGVyV2l0aElkZW50aWZpZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyLmgKaW5kZXggNWE0ZDA3NTdjOTE0
MWIwNTc3MGVmZDZkYmMxYWUxMzY5ZDg1NWZlYy4uNjBhMTEyZDg0NDNiZjRjNjNlODZjNjFjY2Qx
MzA1ZjU1Y2ZlYmQ2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRl
bnRpZmllci5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAi
RE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRl
c3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJv
eWVkLmg+CkBAIC00Niw2ICs0Nyw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50
aWZpZXIgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3ROYW1lZEdldHRlcldpdGhJCiAKICAgICBE
RUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVj
dHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZEdldHRlcldpdGhJZGVudGlmaWVy
OwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZt
LCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5
cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xv
YmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1
Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWRTZXR0ZXJOb0lkZW50aWZpZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllci5oCmluZGV4IDI1OTg5M2ZmYmYy
ODk1ZDhmZDg4MjBhZmI5MjNmNzk2NmQ5NTRjZmQuLmQ4ZTYyZjBkOWJkZTIzMTkyNGIzMzU4OGIx
ZDc0ZTUxNDI2ZjJlMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRp
Zmllci5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9N
U3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RO
YW1lZFNldHRlck5vSWRlbnRpZmllci5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5o
PgpAQCAtNDksNiArNTAsNyBAQCBjbGFzcyBKU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllciA6
IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkU2V0dGVyTm9JZGVudAogCiAgICAgREVDTEFS
RV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJ
bmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXI7CiAgICAg
c3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAg
ICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmpl
Y3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZs
YWdzKSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRl
clRocm93aW5nRXhjZXB0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oCmluZGV4IDc4MjQzYTlh
MTY0ZjEwYzQwNGIyZTE2ZmNjZWFhY2Q2ZjA0NmU0ZjIuLjVkZTdlNzM0OWVhZTNhM2FjY2ZlZmVi
OTczNzc2OWVmY2Q2ZjhhZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVy
VGhyb3dpbmdFeGNlcHRpb24uaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAor
I2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNp
bmNsdWRlICJUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oIgogI2luY2x1ZGUgPHd0
Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDksNiArNTAsNyBAQCBjbGFzcyBKU1Rlc3ROYW1lZFNl
dHRlclRocm93aW5nRXhjZXB0aW9uIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRTZXR0
ZXJUaAogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1
Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0TmFtZWRTZXR0ZXJU
aHJvd2luZ0V4Y2VwdGlvbjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6
OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJl
OjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6
T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRB
Y2Nlc3NvcnMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIuaCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVy
LmgKaW5kZXggOGM4NGFhNDNhYjJiODg0YzA2ZGRmOWY0YTQ1ZjI2MTE3NGUxMjRmOS4uYzc2OWRk
NTg4ZjhlNDljMmMwOGZkN2NhNzQxMmU2OWNlNTgyZTAzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50
aWZpZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFn
bWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3Jh
cHBlci5oIgogI2luY2x1ZGUgIlRlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyLmgiCiAjaW5j
bHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00OSw2ICs1MCw3IEBAIGNsYXNzIEpTVGVz
dE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXIgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3ROYW1l
ZFNldHRlcldpdGhJCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHBy
IERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1l
ZFNldHRlcldpdGhJZGVudGlmaWVyOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRl
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1
Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8o
SlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5k
ZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlci5oIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aElu
ZGV4ZWRHZXR0ZXIuaAppbmRleCA2OGUzOWYyOWE4YWNjODk1MThjZGRmNTlmNTk5YzAwZDhiYjU2
NDExLi5hZDUzZjg0YzI2YmIwYzJkNzk2YzUzNGJkMjk2OGVjMTZiZWZiZjE4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0
ZXJXaXRoSW5kZXhlZEdldHRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyLmgKQEAgLTIwLDYg
KzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAj
aW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdE5hbWVkU2V0dGVyV2l0aElu
ZGV4ZWRHZXR0ZXIuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ5LDYg
KzUwLDcgQEAgY2xhc3MgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlciA6IHB1Ymxp
YyBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkU2V0dGVyV2kKIAogICAgIERFQ0xBUkVfSU5GTzsKIAor
ICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01T
dHJ1Y3R1cmVJRDo6VGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXI7CiAgICAgc3RhdGlj
IEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAg
ICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHBy
b3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwg
aW5mbygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJ
bmRleGVkR2V0dGVyQW5kU2V0dGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNldHRlci5oCmlu
ZGV4IGQwNmEwNWJiOTYxMTE2YjFkMjE3OGQ4M2I2YzdhYTZkMmU1YzkyZDguLjVmZDRlNTEyYjRl
NzYxMjEyMDIxNjNhZmM0YzNjZmJiMWRkNjVkZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0
dGVyQW5kU2V0dGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXIuaApAQCAtMjAs
NiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIK
ICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0TmFtZWRTZXR0ZXJXaXRo
SW5kZXhlZEdldHRlckFuZFNldHRlci5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5o
PgpAQCAtNDksNiArNTAsNyBAQCBjbGFzcyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0
dGVyQW5kU2V0dGVyIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TmFtZQogCiAgICAgREVDTEFS
RV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJ
bmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFu
ZFNldHRlcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUg
cHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUo
dm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlw
ZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuaCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lP
dmVycmlkZUJ1aWx0SW5zLmgKaW5kZXggZWI1MmUyY2Q5MjY4NWM3Zjk1NDg0YWMxZGFmZDUwOTkw
MzNkMWU3Ny4uMmU5N2ZlYjQ2YzNjZGYzNzI0YmU3Nzg1YzdjZGQ2YzQ0MDc2MDVjZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJp
ZGVCdWlsdElucy5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVk
ZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUg
IlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmgiCiAjaW5jbHVkZSA8
d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00OSw2ICs1MCw3IEBAIGNsYXNzIEpTVGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRl
c3ROYW1lCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0
cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZFNldHRl
cldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSog
Y3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlND
OjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlw
ZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlI
YXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQ
cm9wZXJ0aWVzLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzLmgKaW5kZXggMDVh
NmU1ODMyYzhhMGFlZGI4ZDI1NDYxNzQ3MzI4YzljN2ZhNDYwYS4uZjMxMzI0NzQxZGI3ZmFjYmE4
ZGE4YmQ1M2FiMDM5Yzk4NWRjNzUyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxl
UHJvcGVydGllcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXMuaApAQCAt
MjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMu
aCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0TmFtZWRTZXR0ZXJX
aXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVz
dHJveWVkLmg+CkBAIC00OSw2ICs1MCw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkU2V0dGVyV2l0aExl
Z2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllcyA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzCiAKICAg
ICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0
cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lV
bmZvcmdlYWJsZVByb3BlcnRpZXM7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVj
dHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhK
U0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRl
eGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRp
ZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9w
ZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucy5oCmluZGV4IDhhMGY3YjNjNTFhYWVhM2Nl
MGZkNGFmMjZmOWI4OGI4YTFjM2YxMTEuLjE4YWQzOWZiYmU0OTAwNWMxYmQzMGQ3Y2Q4ODc4MDc2
N2Q2M2Q4ZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRM
ZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVy
dGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJh
Z21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdy
YXBwZXIuaCIKICNpbmNsdWRlICJUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQ
cm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucy5oIgogI2luY2x1ZGUgPHd0Zi9OZXZl
ckRlc3Ryb3llZC5oPgpAQCAtNDksNiArNTAsNyBAQCBjbGFzcyBKU1Rlc3ROYW1lZFNldHRlcldp
dGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zCiAK
ICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlE
IHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZFNldHRlcldpdGhMZWdh
Y3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zOwogICAgIHN0
YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAg
ewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0
LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFn
cyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZXNwYWNlT2Jq
ZWN0LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZXNwYWNlT2JqZWN0LmgKaW5kZXggNWI1NjE3MjVlNmZkOTQwZjA1ODgzZTY4MjZlYzMxOTljOWFj
Mzc3ZC4uN2NmNmI3Mjc2M2EzODM0OTUwZmVkYjAwZWZjMDI5ODM4MmJkM2UwNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFj
ZU9iamVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROYW1lc3BhY2VPYmplY3QuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UK
IAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMzgsNiArMzksNyBAQCBjbGFzcyBKU1Rlc3ROYW1l
c3BhY2VPYmplY3QgOiBwdWJsaWMgSlNET01PYmplY3QgewogCiAgICAgREVDTEFSRV9JTkZPOwog
CisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERP
TVN0cnVjdHVyZUlEOjpUZXN0TmFtZXNwYWNlT2JqZWN0OwogICAgIHN0YXRpYyBKU0M6OlN0cnVj
dHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1
cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpT
Qzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlND
OjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0Tm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0Tm9kZS5jcHAKaW5kZXggMmY0ZWE2NWNjODAyMzM0MzRjMzdiZWI0MTNm
Y2MxZTQ2M2MxNWJiYy4uODVmZjk2NzdmMjNmMzdlOGY4ZDJmZjBiMDVlN2U5OTY0MTBkZjQwNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE5vZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROb2RlLmNwcApAQCAtNDEwLDYgKzQxMCw3IEBAIGNsYXNzIFRlc3ROb2RlSXRlcmF0b3Ig
ZmluYWwgOiBwdWJsaWMgVGVzdE5vZGVJdGVyYXRvckJhc2UgewogICAgICAgICApOwogICAgIH0K
IAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBE
T01TdHJ1Y3R1cmVJRDo6VGVzdE5vZGVJdGVyYXRvcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1
cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJu
IEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6
OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5v
ZGUuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2Rl
LmgKaW5kZXggMGU5NjJiZmY5N2QxNmRhNjBjMmNiYjhjNTg5Njk5MWJmODIwOGYxMS4uYzlkOGRi
NTNhNTgxNWE3MmI0YmQ0MTJiN2MzMzkzNzMwYzMwYjVjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5vZGUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Tm9kZS5oCkBAIC0yMCw2ICsy
MCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2lu
Y2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIkpTTm9kZS5oIgogI2luY2x1ZGUgIlRl
c3ROb2RlLmgiCkBAIC00Miw2ICs0Myw3IEBAIGNsYXNzIFdFQkNPUkVfRVhQT1JUIEpTVGVzdE5v
ZGUgOiBwdWJsaWMgSlNOb2RlIHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBj
b25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6
VGVzdE5vZGU7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlND
OjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVl
IHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRl
KHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6OkpTVHlwZShK
U05vZGVUeXBlKSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9i
ai5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9iai5o
CmluZGV4IGI3YmU4NjU2NGFmYzVlZTdiNTA4MmI1N2VjY2M2ODZmODg2MTMzNWQuLjRlYWQ5ODQw
NjZhYjE1MjY4YmU4NWVhOTAzOGQxOThiMGY4OWQwODggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T2JqLmgKQEAgLTIwLDYgKzIwLDcg
QEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVk
ZSAiSlNET01Db252ZXJ0RGljdGlvbmFyeS5oIgogI2luY2x1ZGUgIkpTRE9NQ29udmVydEVudW1l
cmF0aW9uLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCkBAIC00OCw2ICs0OSw3IEBAIGNs
YXNzIEpTVGVzdE9iaiA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdE9iaj4gewogCiAgICAgREVD
TEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1
cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0T2JqOwogICAgIHN0YXRpYyBKU0M6OlN0cnVj
dHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1
cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpT
Qzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlND
OjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwuaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPcGVyYXRpb25Db25k
aXRpb25hbC5oCmluZGV4IDBjN2I4MjA0MTk3Yzg0NDZlYTk2N2NmMTlhOGRmM2E1OTFhY2FiMjUu
LjhiMzc3N2Y1OWJmMGRiNTljNmJiMmU5NjFhMmFkMzkwM2U3ZDIzOWQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPcGVyYXRpb25Db25k
aXRpb25hbC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbC5oCkBAIC0yMiw2ICsyMiw3IEBACiAKICNpZiBFTkFC
TEUoQ29uZGl0aW9uRGVyaXZlZCkKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNs
dWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwu
aCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ1LDYgKzQ2LDcgQEAgY2xh
c3MgSlNUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWwgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RP
cGVyYXRpb25Db25kaXRpb25hbD4KIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBj
b25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6
VGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3Jl
YXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpT
dHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUlu
Zm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJh
eSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuaAppbmRleCAwMWFl
YjZkN2FiZDQ5NjNjMzI3NThiNWY0YTliNmE0NjY4YWRiOThjLi5mZjBmMGE4YTE4YmQ1YzY5Mzc0
OGM5YmFhOGViOGE2NWQwNjIyMDYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29u
c3RydWN0b3JzLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRl
ICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAi
VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95
ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9y
cyA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3QKIAogICAgIERF
Q0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0
dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnM7CiAg
ICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpT
Qzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkK
ICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxP
YmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVy
ZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3Jz
V2l0aFNlcXVlbmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZS5oCmluZGV4IDg4ODFkMWZm
OGJkNWVmNWYwNWJkYjJlYmJlM2EwY2RmMjM3Y2FhZGEuLjM3MmExOTE1YWUzM2FhOTkzZDhmZmRk
Zjc1N2ExZmJhNjI0OGI3N2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJs
b2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJh
Z21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdy
YXBwZXIuaCIKICNpbmNsdWRlICJUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5j
ZS5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBj
bGFzcyBKU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlIDogcHVibGljIEpT
RE9NV3JhcHBlcjxUZXN0T3ZlcmxvYQogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGlj
IGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlE
OjpUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZTsKICAgICBzdGF0aWMgSlND
OjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAg
ICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90
eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZv
KCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdFBsdWdpbkludGVyZmFjZS5oIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFBsdWdpbkludGVyZmFjZS5oCmluZGV4IDA4
OGJmZTUzZDQ5ZWI1NmRjZDU1NjgyN2EwNjgxYzNiYmJlNzhkODQuLjNlZmU5ZWU0NjI2OTU3MTY4
OWNmNWFjYmRiYWZkOTI1MjFjMDg0YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RQbHVnaW5JbnRlcmZhY2UuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UGx1Z2luSW50ZXJmYWNlLmgK
QEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1
cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdFBsdWdpbklu
dGVyZmFjZS5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0NhbGxEYXRhLmg+CkBAIC01MCw2
ICs1MSw3IEBAIGNsYXNzIEpTVGVzdFBsdWdpbkludGVyZmFjZSA6IHB1YmxpYyBKU0RPTVdyYXBw
ZXI8VGVzdFBsdWdpbkludGVyZmFjZT4gewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3Rh
dGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVy
ZUlEOjpUZXN0UGx1Z2luSW50ZXJmYWNlOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3Jl
YXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpT
dHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUlu
Zm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZl
SW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50LmggYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UHJvbWlzZVJlamVjdGlvbkV2ZW50
LmgKaW5kZXggNzI5MDhiM2I0N2IwYTg4NGI3NDQ0YTczMDU3ODcyN2Q1MTFiNjIxYy4uYjRjZTRk
MDRmZTk2YWNjMzAxNzA4NGIzMTBmNDU2ZmFiYzM1YzExMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFByb21pc2VSZWplY3Rpb25FdmVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RQ
cm9taXNlUmVqZWN0aW9uRXZlbnQuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UK
IAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTUNvbnZlcnREaWN0
aW9uYXJ5LmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiSlNFdmVudC5o
IgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQgOiBw
dWJsaWMgSlNFdmVudCB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3Rl
eHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RQ
cm9taXNlUmVqZWN0aW9uRXZlbnQ7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVT
dHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
SlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVj
dHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhK
U0M6OkpTVHlwZShKU0V2ZW50VHlwZSksIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5v
bkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RSZWFkT25seU1hcExpa2UuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RSZWFkT25seU1hcExpa2UuaAppbmRleCBiMjI3YjBlMzAxYmU5
NWZiZmFiOWRiY2EzYTY0NDAwZjIzZDkwZjgwLi5iOGRkODQzNjJlOWNlZjVlYWExOTBmMDUxODY1
OWZiNjA4MTZiOTM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlNYXBMaWtlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlYWRPbmx5TWFwTGlrZS5oCkBAIC0yMCw2ICsy
MCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2lu
Y2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RSZWFkT25seU1hcExpa2UuaCIK
ICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3Mg
SlNUZXN0UmVhZE9ubHlNYXBMaWtlIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0UmVhZE9ubHlN
YXBMaWtlPiB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERP
TVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RSZWFkT25s
eU1hcExpa2U7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlND
OjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVl
IHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRl
KHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5
cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZWFkT25seVNl
dExpa2UuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RS
ZWFkT25seVNldExpa2UuaAppbmRleCBmZTBmN2E5N2QzZDQ4YzhjZGI0YWEyMWRlZTY3OTJiY2Rj
Y2FlMzVjLi4yNDRmYzljMzNmNGU5M2E4ZjA1ZGUxOTBhMDk0ZWUzMjVlZGQ2MWNiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9u
bHlTZXRMaWtlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFJlYWRPbmx5U2V0TGlrZS5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25j
ZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5o
IgogI2luY2x1ZGUgIlRlc3RSZWFkT25seVNldExpa2UuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJE
ZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0UmVhZE9ubHlTZXRMaWtl
IDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0UmVhZE9ubHlTZXRMaWtlPiB7CiAKICAgICBERUNM
QVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVy
ZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RSZWFkT25seVNldExpa2U7CiAgICAgc3RhdGlj
IEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAg
ICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHBy
b3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwg
aW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QuaCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZXBvcnRFeHRyYU1lbW9y
eUNvc3QuaAppbmRleCA2MzQ2ODAzZWZhNDgyN2QyMDgwM2E2ZTUxY2MzNWY5YWY5ODNkNjAzLi5j
NmEwZWU5ZTJlN2IyOWZkOWZkOWZlNmUzZmFhODZjZDFjMjE0NDFiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVwb3J0RXh0cmFNZW1v
cnlDb3N0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdC5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEg
b25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBl
ci5oIgogI2luY2x1ZGUgIlRlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QuaCIKICNpbmNsdWRlIDx3
dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ0LDYgKzQ1LDcgQEAgY2xhc3MgSlNUZXN0UmVwb3J0
RXh0cmFNZW1vcnlDb3N0IDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0UmVwb3J0RXh0cmFNZW1v
cnlDb3MKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3Ry
dWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdFJlcG9ydEV4dHJh
TWVtb3J5Q29zdDsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFs
dWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVh
dGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0
VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6
ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZS5oCmluZGV4IDVm
ZDcyMTI2NWVmNWIyNjRlOWM2MjE1ZTVjNTcwODM1YTcyMzJiZmQuLjI1ZWEzMzUyYjc5YTVhYjk3
YTRhNjJlMjdkNzBmYTQ0ZjQ3MWFkNGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2Uu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2Vy
aWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmgKQEAgLTIyLDYgKzIyLDcgQEAKIAogI2lmIEVO
QUJMRShDb25kaXRpb24xKSB8fCBFTkFCTEUoQ29uZGl0aW9uMikKIAorI2luY2x1ZGUgIkRPTVN0
cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0U2Vy
aWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJv
eWVkLmg+CkBAIC00NSw2ICs0Niw3IEBAIGNsYXNzIEpTVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1
ZUludGVyZmFjZSA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdFNlcmlhbGl6ZWRTCiAKICAgICBE
RUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVj
dHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRl
cmZhY2U7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpW
TSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHBy
b3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZt
LCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUs
IFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlLmggYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2V0TGlrZS5oCmlu
ZGV4IDc0ZWQyNjYxM2Y4NmM4ZmVlYWQ3ZTQ2MjE3Y2YzODBhMjRhYjFiYTAuLmY1OGE0ZDlmMTUz
MTVlZTVhYzk2MTA2NDI5MGM4Y2MzOWRhYmRlYmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNldExpa2UuaApAQCAtMjAsNiAr
MjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNp
bmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0U2V0TGlrZS5oIgogI2luY2x1
ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RT
ZXRMaWtlIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0U2V0TGlrZT4gewogCiAgICAgREVDTEFS
RV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJ
bmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0U2V0TGlrZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1
Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0
dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBK
U0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpT
Qzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuaCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlV2l0aE92ZXJy
aWRkZW5PcGVyYXRpb25zLmgKaW5kZXggMWViMTgwOWI4MWQ5Yzk0ZjU0ZTcxNzczMDdlMWU1ZGY0
ZTlmMDUxYS4uNDRiYzE2ZDhmMWVkNDQ0Mjk1YmJjZDg3MzBjZmM5ODRlYjNhM2RiYiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNldExp
a2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucy5o
CkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0
dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RTZXRMaWtl
V2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVk
Lmg+CkBAIC00Myw2ICs0NCw3IEBAIGNsYXNzIEpTVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9w
ZXJhdGlvbnMgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RTZXRMaWtlV2l0CiAKICAgICBERUNM
QVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVy
ZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RTZXRMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRp
b25zOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0m
IHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90
b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwg
Z2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBT
dHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXIuaCBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmll
ci5oCmluZGV4IDZmOGI5ODk4ZjRhNjVhNTYwMmZjNGU1MjFiMDU2ZTMwMjNkMTdkZGIuLjljNTMz
ODVmZmIzNzVjM2E0NjIxNTJhMGRhZDU1ZGJlNTJhNTRlZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllci5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmll
ci5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3Ry
dWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RTdHJp
bmdpZmllci5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQs
NyBAQCBjbGFzcyBKU1Rlc3RTdHJpbmdpZmllciA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdFN0
cmluZ2lmaWVyPiB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHBy
IERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RTdHJp
bmdpZmllcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUg
cHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUo
dm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlw
ZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVy
QW5vbnltb3VzT3BlcmF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24uaAppbmRleCBjYjNmZDM3
YjAzNzA5ZmFiNzdiOTQ2NjA3MWQwMTljYzUzYjM3YzJhLi5hMTRjZTQzMmNlYzEzOWEzZWIyYzQy
ODg1MzY2Y2VmMjRhZjliYmU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24uaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZp
ZXJBbm9ueW1vdXNPcGVyYXRpb24uaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UK
IAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIK
ICNpbmNsdWRlICJUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24uaCIKICNpbmNsdWRl
IDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0U3Ry
aW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24gOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RTdHJp
bmdpZmllckEKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9N
U3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdFN0cmluZ2lm
aWVyQW5vbnltb3VzT3BlcmF0aW9uOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRl
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1
Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8o
SlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24uaAppbmRleCAy
MWQxYmYyNjYzYmVmMjQ2NjYyZGI1OTliMzY2ZjhhOTVlMTgxNDdkLi5mZmEzZTQxMmQ5YTA1YmJi
NmI2NDQ2Mjc0N2YzMmY1NGNkMDFiZjhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbi5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdp
Zmllck5hbWVkT3BlcmF0aW9uLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAK
KyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAj
aW5jbHVkZSAiVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24uaCIKICNpbmNsdWRlIDx3dGYv
TmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0U3RyaW5naWZp
ZXJOYW1lZE9wZXJhdGlvbiA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdFN0cmluZ2lmaWVyTmFt
ZWQKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0
dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdFN0cmluZ2lmaWVyTmFt
ZWRPcGVyYXRpb247CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUo
SlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1Zh
bHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3Jl
YXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVj
dFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdp
Zmllck9wZXJhdGlvbkltcGxlbWVudGVkQXMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbkltcGxlbWVudGVkQXMuaApp
bmRleCA5YzFlNDcyMGVjZTA2MzEwZGM4MDQ5MTNiZTI3NTgwZmU2ZmEyNTczLi5hNGJmN2JlZmJl
NTk3Y2MxYjVkYzc2ODY4ZGNlZDUyMjlhMzQ0NmUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBs
ZW1lbnRlZEFzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcy5oCkBAIC0yMCw2ICsyMCw3
IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1
ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RTdHJpbmdpZmllck9wZXJhdGlvbklt
cGxlbWVudGVkQXMuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYg
KzQ0LDcgQEAgY2xhc3MgSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzIDog
cHVibGljIEpTRE9NV3JhcHBlcjxUZXN0U3RyaW5naWYKIAogICAgIERFQ0xBUkVfSU5GTzsKIAor
ICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01T
dHJ1Y3R1cmVJRDo6VGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBczsKICAgICBz
dGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpK
U0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAg
IHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVj
dCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxh
Z3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRU
b1N0cmluZy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZy5oCmluZGV4IGIwNzgyODcyYzJhN2Vl
NGJhZDVkYzZmMzY3YTNmMGVkNDc4OGVjNDkuLjE1ZDBlYTZiNGIwMmM1NTIxODYzNjMwNGEyYzFl
NWNiY2UxYWU4NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJP
cGVyYXRpb25OYW1lZFRvU3RyaW5nLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNl
CiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgi
CiAjaW5jbHVkZSAiVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZy5oIgogI2lu
Y2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rl
c3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcgOiBwdWJsaWMgSlNET01XcmFwcGVy
PFRlc3RTdHJpbmdpZgogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhw
ciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0U3Ry
aW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVy
ZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4g
SlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6
VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpO
b25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZS5oIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRy
aWJ1dGUuaAppbmRleCA2NzkzMTNlZGY3YTE5NzMzYTNkZDI0ODI5OTdmYmY1YjI4NGU2ZGRkLi4y
NmY3NWM5MTZhOWI0MGM1MmZmZTUxMTQxODVkNDhjZGFmMjI1ODk3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJSZWFk
T25seUF0dHJpYnV0ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlLmgKQEAgLTIwLDYgKzIwLDcg
QEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVk
ZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRy
aWJ1dGUuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcg
QEAgY2xhc3MgSlNUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZSA6IHB1YmxpYyBKU0RP
TVdyYXBwZXI8VGVzdFN0cmluZ2lmaWVyUmUKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0
YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1
cmVJRDo6VGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGU7CiAgICAgc3RhdGljIEpTQzo6
U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAg
IHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlw
ZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygp
LCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZS5oIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVh
ZFdyaXRlQXR0cmlidXRlLmgKaW5kZXggMTIxMzc0ZTQzZDgwMDQzMDNjZWQ1ZDc5MzcxNWY5MTVh
NDczMTNjYy4uY2ZhY2FkNGQxY2U5MzQ3ZDY4ZTZiOGVhOTI3NzVmY2MyZWUzYmYyMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmlu
Z2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRlLmgKQEAg
LTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVz
LmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdFN0cmluZ2lmaWVy
UmVhZFdyaXRlQXR0cmlidXRlLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBA
IC00Myw2ICs0NCw3IEBAIGNsYXNzIEpTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0cmlidXRl
IDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0U3RyaW5naWZpZXJSCiAKICAgICBERUNMQVJFX0lO
Rk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4
ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZTsKICAg
ICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlND
OjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQog
ICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9i
amVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJl
RmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFRhZ2dlZFdyYXBwZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUYWdnZWRXcmFwcGVyLmgK
aW5kZXggYjFlMTg5ZmI4YzhjM2U2MDU1YTJmY2ZkNDcxZmM3NTk3ZjUzMGIyZi4uOTI0YTQwODg0
YTVmYTg3MzVlYmVkMmQ1YWI2NmU5OTgxOWZlZjQwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFRhZ2dlZFdyYXBwZXIuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VGFnZ2VkV3JhcHBl
ci5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3Ry
dWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RUYWdn
ZWRXcmFwcGVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00NCw2ICs0
NSw3IEBAIGNsYXNzIEpTVGVzdFRhZ2dlZFdyYXBwZXIgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRl
c3RUYWdnZWRXcmFwcGVyLCBTaWduZWRQdHJUcmFpCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAg
ICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3Ry
dWN0dXJlSUQ6OlRlc3RUYWdnZWRXcmFwcGVyOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSog
Y3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlND
OjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlw
ZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25B
cnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0VHlwZWRlZnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RUeXBlZGVmcy5oCmluZGV4IDZjZjIzYTdmNzA5ODg4MTc2ZWRmMDM2YTJiZmUy
N2I0Mzk0YmU1NmEuLmYyZTMwOWI1YzI3NmIzNzgzZWEyY2Y1NTFiZTM4NTA3YmUyNzJjZTEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RU
eXBlZGVmcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RUeXBlZGVmcy5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5j
bHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1
ZGUgIlRlc3RUeXBlZGVmcy5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAt
NDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RUeXBlZGVmcyA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8
VGVzdFR5cGVkZWZzPiB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3Rl
eHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RU
eXBlZGVmczsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUg
cHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUo
dm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlw
ZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTV29ya2VyR2xvYmFsU2Nv
cGUuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1dvcmtlckds
b2JhbFNjb3BlLmgKaW5kZXggOTlmMjdjM2ZmMTYwNDgxNjE2YzhiNzA4NzA4YzRlODk0ODU5OTMw
NS4uYTgxNTc4ODk4NjQ2OTU1MjE0MzNjMDJiNGQ2YmE3MzE5ZTMyYTk4YiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTV29ya2VyR2xvYmFsU2Nv
cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3Jr
ZXJHbG9iYWxTY29wZS5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5j
bHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1
ZGUgIkpTRXZlbnRUYXJnZXQuaCIKIApAQCAtNDQsNiArNDUsNyBAQCBjbGFzcyBKU1dvcmtlckds
b2JhbFNjb3BlIDogcHVibGljIEpTRXZlbnRUYXJnZXQgewogCiAgICAgREVDTEFSRV9JTkZPOwog
CisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERP
TVN0cnVjdHVyZUlEOjpXb3JrZXJHbG9iYWxTY29wZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1
cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJu
IEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6
OlR5cGVJbmZvKEpTQzo6R2xvYmFsT2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCks
IEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTV29ya2xldEdsb2JhbFNjb3BlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrbGV0R2xvYmFsU2NvcGUuaAppbmRleCA3NmNhZDQ0
MjdlMTkyMmFiMmViMjI5YmJjMGI0NWNlNDg0NTZiYWRkLi43YTc3YjU1M2MzMzcxYWQ2ZTRhYzUy
Y2I0OGE0YmZjNWNjZDIzYWQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNXb3JrbGV0R2xvYmFsU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrbGV0R2xvYmFsU2NvcGUuaApAQCAtMjAs
NiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIK
ICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJKU0V2ZW50VGFyZ2V0LmgiCiAK
QEAgLTQ0LDYgKzQ1LDcgQEAgY2xhc3MgSlNXb3JrbGV0R2xvYmFsU2NvcGUgOiBwdWJsaWMgSlNF
dmVudFRhcmdldCB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHBy
IERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OldvcmtsZXRH
bG9iYWxTY29wZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFs
dWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVh
dGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6R2xvYmFs
T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvT2JqQ1J1bnRpbWVPYmplY3QuaCBi
L1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL09iakNSdW50aW1lT2JqZWN0LmgKaW5kZXggMTY4
MTllMDA2NGUyNTU1ZTczODk1OWE0OTAxMzA4YWZhMDUzMjAzYS4uOWY4ZmQ0OGU0NTNhMzcyYmUz
MWExZDY5YjZkNTBmZTFiZmY5YjdhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYnJpZGdl
L29iamMvT2JqQ1J1bnRpbWVPYmplY3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2Jq
Yy9PYmpDUnVudGltZU9iamVjdC5oCkBAIC0yNiw2ICsyNiw3IEBACiAjaWZuZGVmIE9iakNSdW50
aW1lT2JqZWN0X2gKICNkZWZpbmUgT2JqQ1J1bnRpbWVPYmplY3RfaAogCisjaW5jbHVkZSAiRE9N
U3RydWN0dXJlcy5oIgogI2luY2x1ZGUgInJ1bnRpbWVfb2JqZWN0LmgiCiAKIG5hbWVzcGFjZSBK
U0MgewpAQCAtMzYsNiArMzcsNyBAQCBjbGFzcyBPYmpjSW5zdGFuY2U7CiBjbGFzcyBPYmpDUnVu
dGltZU9iamVjdCBmaW5hbCA6IHB1YmxpYyBSdW50aW1lT2JqZWN0IHsKIHB1YmxpYzoKICAgICB1
c2luZyBCYXNlID0gUnVudGltZU9iamVjdDsKKyAgICBzdGF0aWMgY29uc3RleHByIFdlYkNvcmU6
OkRPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gV2ViQ29yZTo6RE9NU3RydWN0dXJlSUQ6
Ok9iakNSdW50aW1lT2JqZWN0OwogCiAgICAgc3RhdGljIE9iakNSdW50aW1lT2JqZWN0KiBjcmVh
dGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVjdHVyZSwgUmVmUHRyPE9iamNJbnN0YW5jZT4mJiBp
bnN0KQogICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNf
aW5zdGFuY2UubW0gYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1t
CmluZGV4IDViMWE4MzUzZDkwMmUxZjhkNzM2MjhjNjkwYjNmNzRiMjBmMWNmZTQuLmRiZWY0Nzgz
YzliMzFlZTNiZjEyYzM1NjJkZWI1YTFiMmE1NDUxNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JyaWRnZS9vYmpjL29iamNfaW5zdGFuY2UubW0KKysrIGIvU291cmNlL1dlYkNvcmUvYnJp
ZGdlL29iamMvb2JqY19pbnN0YW5jZS5tbQpAQCAtMjYsNiArMjYsNyBAQAogI2ltcG9ydCAiY29u
ZmlnLmgiCiAjaW1wb3J0ICJvYmpjX2luc3RhbmNlLmgiCiAKKyNpbXBvcnQgIkRPTVN0cnVjdHVy
ZXMuaCIKICNpbXBvcnQgIkpTRE9NQmluZGluZy5oIgogI2ltcG9ydCAiT2JqQ1J1bnRpbWVPYmpl
Y3QuaCIKICNpbXBvcnQgIldlYlNjcmlwdE9iamVjdC5oIgpAQCAtMTcyLDYgKzE3Myw4IEBAIGJv
b2wgT2JqY0luc3RhbmNlOjpzdXBwb3J0c0ludm9rZURlZmF1bHRNZXRob2QoKSBjb25zdAogCiBj
bGFzcyBPYmpDUnVudGltZU1ldGhvZCBmaW5hbCA6IHB1YmxpYyBSdW50aW1lTWV0aG9kIHsKIHB1
YmxpYzoKKyAgICBzdGF0aWMgY29uc3RleHByIFdlYkNvcmU6OkRPTVN0cnVjdHVyZUlEIHN0cnVj
dHVyZUluZGV4ID0gV2ViQ29yZTo6RE9NU3RydWN0dXJlSUQ6Ok9iakNSdW50aW1lTWV0aG9kOwor
CiAgICAgc3RhdGljIE9iakNSdW50aW1lTWV0aG9kKiBjcmVhdGUoSlNHbG9iYWxPYmplY3QqIGxl
eGljYWxHbG9iYWxPYmplY3QsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvbnN0IFN0
cmluZyYgbmFtZSwgQmluZGluZ3M6Ok1ldGhvZCogbWV0aG9kKQogICAgIHsKICAgICAgICAgVk0m
IHZtID0gZ2xvYmFsT2JqZWN0LT52bSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJp
ZGdlL29iamMvb2JqY19ydW50aW1lLmggYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpj
X3J1bnRpbWUuaAppbmRleCAwYTA5NGI2OWM4MTQ3NzZhZDUyNDM3YmQ4NmRkNWQ1ZTE1NDMxMzk3
Li4xYTA2ZTMyMjIzMmVhNzU3NGJlYjFjMDFiMmU2OGY2YWIzYjlkZDE2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUuaApAQCAtMjcsNiArMjcsNyBAQAogI2RlZmlu
ZSBLSlNfQklORElOR1NfT0JKQ19SVU5USU1FX0gKIAogI2luY2x1ZGUgIkJyaWRnZUpTQy5oIgor
I2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKICNp
bmNsdWRlICJvYmpjX2hlYWRlci5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pTR2xvYmFs
T2JqZWN0Lmg+CkBAIC05Myw2ICs5NCw3IEBAIGNsYXNzIE9iamNGYWxsYmFja09iamVjdEltcCBm
aW5hbCA6IHB1YmxpYyBKU0Rlc3RydWN0aWJsZU9iamVjdCB7CiAgICAgdXNpbmcgQmFzZSA9IEpT
RGVzdHJ1Y3RpYmxlT2JqZWN0OwogICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgU3RydWN0
dXJlRmxhZ3MgPSBCYXNlOjpTdHJ1Y3R1cmVGbGFncyB8IE92ZXJyaWRlc0dldE93blByb3BlcnR5
U2xvdCB8IE92ZXJyaWRlc0dldENhbGxEYXRhIHwgT3ZlcnJpZGVzUHV0OwogICAgIHN0YXRpYyBj
b25zdGV4cHIgYm9vbCBuZWVkc0Rlc3RydWN0aW9uID0gdHJ1ZTsKKyAgICBzdGF0aWMgY29uc3Rl
eHByIFdlYkNvcmU6OkRPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gV2ViQ29yZTo6RE9N
U3RydWN0dXJlSUQ6Ok9iamNGYWxsYmFja09iamVjdEltcDsKIAogICAgIHRlbXBsYXRlPHR5cGVu
YW1lIENlbGxUeXBlLCBKU0M6OlN1YnNwYWNlQWNjZXNzPgogICAgIHN0YXRpYyBHQ0NsaWVudDo6
SXNvU3Vic3BhY2UqIHN1YnNwYWNlRm9yKEpTQzo6Vk0mIHZtKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfYXJyYXkuaCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9y
dW50aW1lX2FycmF5LmgKaW5kZXggM2Y0NWRlMzI0YWU2MjhmN2VjZDllMzU3NDRkYzEyZmVkODM4
MDgwYy4uN2RiYWQ5ZWI3Mzk4Y2FkMmE2YjVmZWM4ZTMwMWNlNWIyYzVmMjc1OSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfYXJyYXkuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9icmlkZ2UvcnVudGltZV9hcnJheS5oCkBAIC0yNyw2ICsyNyw3IEBACiAjZGVmaW5lIFJV
TlRJTUVfQVJSQVlfSF8KIAogI2luY2x1ZGUgIkJyaWRnZUpTQy5oIgorI2luY2x1ZGUgIkRPTVN0
cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKICNpbmNsdWRlIDxKYXZhU2Ny
aXB0Q29yZS9BcnJheVByb3RvdHlwZS5oPgogCkBAIC0zNyw2ICszOCw3IEBAIGNsYXNzIFJ1bnRp
bWVBcnJheSBmaW5hbCA6IHB1YmxpYyBKU0FycmF5IHsKICAgICB1c2luZyBCYXNlID0gSlNBcnJh
eTsKICAgICBzdGF0aWMgY29uc3RleHByIHVuc2lnbmVkIFN0cnVjdHVyZUZsYWdzID0gQmFzZTo6
U3RydWN0dXJlRmxhZ3MgfCBPdmVycmlkZXNHZXRPd25Qcm9wZXJ0eVNsb3QgfCBPdmVycmlkZXNH
ZXRPd25Qcm9wZXJ0eU5hbWVzIHwgT3ZlcnJpZGVzUHV0IHwgSW50ZXJjZXB0c0dldE93blByb3Bl
cnR5U2xvdEJ5SW5kZXhFdmVuV2hlbkxlbmd0aElzTm90WmVybzsKICAgICBzdGF0aWMgY29uc3Rl
eHByIGJvb2wgbmVlZHNEZXN0cnVjdGlvbiA9IHRydWU7CisgICAgc3RhdGljIGNvbnN0ZXhwciBX
ZWJDb3JlOjpET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IFdlYkNvcmU6OkRPTVN0cnVj
dHVyZUlEOjpSdW50aW1lQXJyYXk7CiAKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBDZWxsVHlwZSwg
SlNDOjpTdWJzcGFjZUFjY2Vzcz4KICAgICBzdGF0aWMgSlNDOjpHQ0NsaWVudDo6SXNvU3Vic3Bh
Y2UqIHN1YnNwYWNlRm9yKEpTQzo6Vk0mIHZtKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YnJpZGdlL3J1bnRpbWVfb2JqZWN0LmggYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9v
YmplY3QuaAppbmRleCAyYzM2YzBkOGU4NjkxNjVhOGY4MDE1ZGFjODY1ZWE4N2I1ODUyODhiLi42
YmFkNzI5MzI3YzMwNmJhNmZjNDQzNjNlMGNhMDc1YjJhN2QwNjFjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9vYmplY3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
cmlkZ2UvcnVudGltZV9vYmplY3QuaApAQCAtMjcsNiArMjcsNyBAQAogI2RlZmluZSBLSlNfUlVO
VElNRV9PQkpFQ1RfSAogCiAjaW5jbHVkZSAiQnJpZGdlSlNDLmgiCisjaW5jbHVkZSAiRE9NU3Ry
dWN0dXJlcy5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pTR2xvYmFsT2JqZWN0Lmg+CiAK
IG5hbWVzcGFjZSBKU0MgewpAQCAtMzksNiArNDAsNyBAQCBjbGFzcyBXRUJDT1JFX0VYUE9SVCBS
dW50aW1lT2JqZWN0IDogcHVibGljIEpTTm9uRmluYWxPYmplY3QgewogICAgIHVzaW5nIEJhc2Ug
PSBKU05vbkZpbmFsT2JqZWN0OwogICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgU3RydWN0
dXJlRmxhZ3MgPSBCYXNlOjpTdHJ1Y3R1cmVGbGFncyB8IE92ZXJyaWRlc0dldE93blByb3BlcnR5
U2xvdCB8IE92ZXJyaWRlc0dldE93blByb3BlcnR5TmFtZXMgfCBPdmVycmlkZXNHZXRDYWxsRGF0
YSB8IE92ZXJyaWRlc1B1dCB8IEdldE93blByb3BlcnR5U2xvdE1heUJlV3JvbmdBYm91dERvbnRF
bnVtOwogICAgIHN0YXRpYyBjb25zdGV4cHIgYm9vbCBuZWVkc0Rlc3RydWN0aW9uID0gdHJ1ZTsK
KyAgICBzdGF0aWMgY29uc3RleHByIFdlYkNvcmU6OkRPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUlu
ZGV4ID0gV2ViQ29yZTo6RE9NU3RydWN0dXJlSUQ6OlJ1bnRpbWVPYmplY3Q7CiAKICAgICB0ZW1w
bGF0ZTx0eXBlbmFtZSBDZWxsVHlwZSwgSlNDOjpTdWJzcGFjZUFjY2Vzcz4KICAgICBzdGF0aWMg
R0NDbGllbnQ6Oklzb1N1YnNwYWNlKiBzdWJzcGFjZUZvcihKU0M6OlZNJiB2bSkK
</data>
<flag name="commit-queue"
          id="480160"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452952</attachid>
            <date>2022-02-23 01:58:20 -0800</date>
            <delta_ts>2022-02-23 03:03:58 -0800</delta_ts>
            <desc>WIP</desc>
            <filename>bug-233959-20220223015819.patch</filename>
            <type>text/plain</type>
            <size>134924</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMzQ2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzA3NDU1YzI1M2I5ZmM3
NjkwYzJmNWEwNGFmMDAxMzBjYzgzNzgzZi4uODJmNTk4Y2EzNDc3MWQ2MGI2YjUzNWY5ZWY1MTQ5
OGJkNDY1OGY5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyOCBAQAorMjAyMi0wMi0yMyAgWXVz
dWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBET01TdHJ1Y3R1
cmVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzM5
NTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENN
YWtlTGlzdHMudHh0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0
OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NR2xvYmFs
T2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTRE9NR2xvYmFsT2JqZWN0OjpKU0RPTUds
b2JhbE9iamVjdCk6CisgICAgICAgIChXZWJDb3JlOjpKU0RPTUdsb2JhbE9iamVjdDo6dmlzaXRD
aGlsZHJlbkltcGwpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0Lmg6
CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3RJbmxpbmVzLmg6CisgICAg
ICAgIChXZWJDb3JlOjpnZXRET01TdHJ1Y3R1cmUpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pT
RE9NV3JhcHBlckNhY2hlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmdldENhY2hlZERPTVN0cnVj
dHVyZSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpjYWNoZURPTVN0cnVjdHVyZSk6IERl
bGV0ZWQuCisgICAgICAgICogYmluZGluZ3MvanMvSlNET01XcmFwcGVyQ2FjaGUuaDoKKyAgICAg
ICAgKFdlYkNvcmU6OmdldERPTVN0cnVjdHVyZSk6IERlbGV0ZWQuCisgICAgICAgICogYmluZGlu
Z3MvanMvSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3IuaDoKKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAgICAgICAgKEdlbmVyYXRlSGVh
ZGVyKToKKyAgICAgICAgKEdlbmVyYXRlSXRlcmFibGVEZWZpbml0aW9uKToKKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL3ByZXByb2Nlc3MtaWRscy5wbDoKKyAgICAgICAgKiBiaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNET01XaW5kb3cuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZS5oOgorICAgICAgICAqIGJpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU0V4cG9zZWRTdGFyLmg6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93Lmg6CisgICAgICAgICog
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUuaDoKKyAg
ICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTZXJ2aWNlV29ya2VyR2xvYmFsU2Nv
cGUuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTaGFkb3dSZWFsbUds
b2JhbFNjb3BlLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hhcmVk
V29ya2VyR2xvYmFsU2NvcGUuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0Q0VSZWFjdGlvbnMuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllci5oOgorICAgICAgICAqIGJpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RDYWxsVHJhY2VyLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdENsYXNzV2l0aEpTQnVpbHRpbkNvbnN0cnVjdG9yLmg6CisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMuaDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9uYWxseVJl
YWRXcml0ZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RET01K
SVQuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRv
SlNPTi5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0
VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UuaDoKKyAgICAgICAg
KiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQuaDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTklu
aGVyaXRGaW5hbC5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RE
ZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlLmg6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdERvbWFpblNlY3VyaXR5Lmg6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEVuYWJsZWRCeVNldHRpbmcuaDoKKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEZvckNvbnRleHQuaDoKKyAgICAg
ICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RXZlbnRDb25zdHJ1Y3Rvci5oOgor
ICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFdmVudFRhcmdldC5oOgor
ICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNlcHRpb24uaDoKKyAg
ICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVS
b290Lmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRl
SXNSZWFjaGFibGUuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
R2xvYmFsT2JqZWN0Lmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmg6CisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRp
Zmllci5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZh
Y2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6anNUZXN0SW50ZXJmYWNlUHJvdG90eXBlRnVuY3Rp
b25fZW50cmllc0NhbGxlcik6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEludGVyZmFjZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RJbnRlcmZhY2VMZWFkaW5nVW5kZXJzY29yZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RJdGVyYWJsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpqc1Rlc3RJ
dGVyYWJsZVByb3RvdHlwZUZ1bmN0aW9uX2VudHJpZXNDYWxsZXIpOgorICAgICAgICAqIGJpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJdGVyYWJsZS5oOgorICAgICAgICAqIGJpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3Rvci5oOgorICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24uaDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5Tm9JbnRlcmZh
Y2VPYmplY3QuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVn
YWN5T3ZlcnJpZGVCdWlsdElucy5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RNYXBMaWtlLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuaDoKKyAgICAgICAgKiBiaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVy
Lmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5k
ZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmg6Cisg
ICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlck5vSWRl
bnRpZmllci5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZERlbGV0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSWRlbnRpZmllci5oOgorICAgICAgICAqIGJp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRl
ci5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRl
ckNhbGxXaXRoLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5h
bWVkR2V0dGVyTm9JZGVudGlmaWVyLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIuaDoKKyAgICAgICAgKiBiaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJOb0lkZW50aWZpZXIuaDoKKyAgICAg
ICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4
Y2VwdGlvbi5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZFNldHRlcldpdGhJZGVudGlmaWVyLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXIuaDoKKyAgICAgICAgKiBiaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFu
ZFNldHRlci5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZFNldHRlcldpdGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmg6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJv
cGVydGllcy5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1
aWx0SW5zLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVz
cGFjZU9iamVjdC5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RO
b2RlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmpzVGVzdE5vZGVQcm90b3R5cGVGdW5jdGlvbl9l
bnRyaWVzQ2FsbGVyKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
Tm9kZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouaDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3BlcmF0aW9uQ29uZGl0
aW9uYWwuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3Zlcmxv
YWRlZENvbnN0cnVjdG9ycy5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmg6CisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFBsdWdpbkludGVyZmFjZS5oOgorICAgICAgICAq
IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQuaDoK
KyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlNYXBMaWtl
Lmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlYWRPbmx5U2V0
TGlrZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZXBvcnRF
eHRyYU1lbW9yeUNvc3QuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmg6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNldExpa2UuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucy5oOgorICAg
ICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllci5oOgorICAg
ICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllckFub255bW91
c09wZXJhdGlvbi5oOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RT
dHJpbmdpZmllck5hbWVkT3BlcmF0aW9uLmg6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcy5oOgorICAgICAg
ICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5h
bWVkVG9TdHJpbmcuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZS5oOgorICAgICAgICAqIGJpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllclJlYWRXcml0ZUF0dHJpYnV0ZS5oOgorICAgICAg
ICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUYWdnZWRXcmFwcGVyLmg6CisgICAg
ICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFR5cGVkZWZzLmg6CisgICAgICAg
ICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTV29ya2VyR2xvYmFsU2NvcGUuaDoKKyAgICAg
ICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrbGV0R2xvYmFsU2NvcGUuaDoKKyAg
ICAgICAgKiBicmlkZ2Uvb2JqYy9PYmpDUnVudGltZU9iamVjdC5oOgorICAgICAgICAqIGJyaWRn
ZS9vYmpjL29iamNfaW5zdGFuY2UubW06CisgICAgICAgIChKU0M6OkJpbmRpbmdzOjpPYmpjSW5z
dGFuY2U6OmdldE1ldGhvZCk6CisgICAgICAgICogYnJpZGdlL29iamMvb2JqY19ydW50aW1lLmg6
CisgICAgICAgICogYnJpZGdlL3J1bnRpbWVfYXJyYXkuaDoKKyAgICAgICAgKiBicmlkZ2UvcnVu
dGltZV9vYmplY3QuaDoKKwogMjAyMi0wMi0yMiAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUu
Y29tPgogCiAgICAgICAgIFNoYXJlIG1vcmUgY29kZSBiZXR3ZWVuIGRpc3BhdGNoU2Vzc2lvblN0
b3JhZ2VFdmVudHMoKSBhbmQgZGlzcGF0Y2hMb2NhbFN0b3JhZ2VFdmVudHMoKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxp
c3RzLnR4dAppbmRleCAyYmI4MjljZDU5YjhjMDc1ZTAzNjY1NWMyMzdiODUwMTQ4MWM0YjJlLi4y
ZTMzYjE2NzljNTAwYjJkNGJlNTMyMDRlZTRhNjljYjZiMDFhMWY2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3Rz
LnR4dApAQCAtMjA4Nyw2ICsyMDg3LDcgQEAgc2V0KFNVUFBMRU1FTlRBTF9ERVBFTkRFTkNZX0ZJ
TEUgJHtXZWJDb3JlX0RFUklWRURfU09VUkNFU19ESVJ9L3N1cHBsZW1lbnRhbF9kZXAKIHNldChJ
U09fU1VCU1BBQ0VTX0hFQURFUl9GSUxFICR7V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElSfS9E
T01Jc29TdWJzcGFjZXMuaCkKIHNldChDTElFTlRfSVNPX1NVQlNQQUNFU19IRUFERVJfRklMRSAk
e1dlYkNvcmVfREVSSVZFRF9TT1VSQ0VTX0RJUn0vRE9NQ2xpZW50SXNvU3Vic3BhY2VzLmgpCiBz
ZXQoQ09OU1RSVUNUT1JTX0hFQURFUl9GSUxFICR7V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElS
fS9ET01Db25zdHJ1Y3RvcnMuaCkKK3NldChTVFJVQ1RVUkVTX0hFQURFUl9GSUxFICR7V2ViQ29y
ZV9ERVJJVkVEX1NPVVJDRVNfRElSfS9ET01TdHJ1Y3R1cmVzLmgpCiBzZXQoV0lORE9XX0NPTlNU
UlVDVE9SU19GSUxFICR7V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElSfS9ET01XaW5kb3dDb25z
dHJ1Y3RvcnMuaWRsKQogc2V0KFdPUktFUkdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFICR7
V2ViQ29yZV9ERVJJVkVEX1NPVVJDRVNfRElSfS9Xb3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9y
cy5pZGwpCiBzZXQoU0hBRE9XUkVBTE1HTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRSAke1dl
YkNvcmVfREVSSVZFRF9TT1VSQ0VTX0RJUn0vU2hhZG93UmVhbG1HbG9iYWxTY29wZUNvbnN0cnVj
dG9ycy5pZGwpCkBAIC0yMjc0LDExICsyMjc1LDEyIEBAIEdFTkVSQVRFX0JJTkRJTkdTKFdlYkNv
cmVCaW5kaW5ncwogICAgIEdFTkVSQVRPUiBKUwogICAgIFNVUFBMRU1FTlRBTF9ERVBGSUxFICR7
U1VQUExFTUVOVEFMX0RFUEVOREVOQ1lfRklMRX0KICAgICBQUF9FWFRSQV9PVVRQVVQKLSAgICAk
e0lTT19TVUJTUEFDRVNfSEVBREVSX0ZJTEV9ICR7Q0xJRU5UX0lTT19TVUJTUEFDRVNfSEVBREVS
X0ZJTEV9ICR7Q09OU1RSVUNUT1JTX0hFQURFUl9GSUxFfSAke1dJTkRPV19DT05TVFJVQ1RPUlNf
RklMRX0gJHtXT1JLRVJHTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRX0gJHtTSEFET1dSRUFM
TUdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFfSAke0RFRElDQVRFRFdPUktFUkdMT0JBTFND
T1BFX0NPTlNUUlVDVE9SU19GSUxFfQorICAgICR7SVNPX1NVQlNQQUNFU19IRUFERVJfRklMRX0g
JHtDTElFTlRfSVNPX1NVQlNQQUNFU19IRUFERVJfRklMRX0gJHtDT05TVFJVQ1RPUlNfSEVBREVS
X0ZJTEV9ICR7U1RSVUNUVVJFU19IRUFERVJfRklMRX0gJHtXSU5ET1dfQ09OU1RSVUNUT1JTX0ZJ
TEV9ICR7V09SS0VSR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEV9ICR7U0hBRE9XUkVBTE1H
TE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRX0gJHtERURJQ0FURURXT1JLRVJHTE9CQUxTQ09Q
RV9DT05TVFJVQ1RPUlNfRklMRX0KICAgICBQUF9FWFRSQV9BUkdTCiAgICAgICAgIC0taXNvU3Vi
c3BhY2VzSGVhZGVyRmlsZSAke0lTT19TVUJTUEFDRVNfSEVBREVSX0ZJTEV9CiAgICAgICAgIC0t
Y2xpZW50SVNPU3Vic3BhY2VzSGVhZGVyRmlsZSAke0NMSUVOVF9JU09fU1VCU1BBQ0VTX0hFQURF
Ul9GSUxFfQogICAgICAgICAtLWNvbnN0cnVjdG9yc0hlYWRlckZpbGUgJHtDT05TVFJVQ1RPUlNf
SEVBREVSX0ZJTEV9CisgICAgICAgIC0tc3RydWN0dXJlc0hlYWRlckZpbGUgJHtTVFJVQ1RVUkVT
X0hFQURFUl9GSUxFfQogICAgICAgICAtLXdpbmRvd0NvbnN0cnVjdG9yc0ZpbGUgJHtXSU5ET1df
Q09OU1RSVUNUT1JTX0ZJTEV9CiAgICAgICAgIC0td29ya2VyR2xvYmFsU2NvcGVDb25zdHJ1Y3Rv
cnNGaWxlICR7V09SS0VSR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEV9CiAgICAgICAgIC0t
c2hhZG93UmVhbG1HbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJHtTSEFET1dSRUFMTUdMT0JB
TFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVy
aXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy1vdXRwdXQueGNmaWxlbGlzdAppbmRleCA2YzIwNWU3MWRhNGY5NzE5NWMzN2FiZGEyZTli
ZDVhYzFjMzJkYzAxLi41ZTg5ZjUxYTM0OTkyZWI3YjU5OGUyZjNhM2RjYzhkYWI5MGRiMGIxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlz
dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdApA
QCAtMTMsNiArMTMsNyBAQCAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS9ET01DbGllbnRJc29TdWJzcGFjZXMuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvRE9NQ29uc3RydWN0b3JzLmgKICQoQlVJTFRfUFJPRFVDVFNfRElS
KS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0RPTUlzb1N1YnNwYWNlcy5oCiAkKEJVSUxUX1BST0RV
Q1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9ET01KSVRBYnN0cmFjdEhlYXBSZXBvc2l0
b3J5LmgKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJDb3JlL0RPTVN0
cnVjdHVyZXMuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
RE9NV2luZG93Q29uc3RydWN0b3JzLmlkbAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRT
b3VyY2VzL1dlYkNvcmUvRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnMuaWRs
CiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9FdmVudEZhY3Rv
cnkuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIv
U291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCAyNjgwMzI3MGQ2N2E3NzQ1
NTllY2YyM2Q3NWI2YmIwNWIwNjkzODg1Li4xOGY3YjM2MzgwYmMzMzVjZmZhMDI5NzI2NTYzYWMw
YjQ3MTE5MjJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtl
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTIwODAsNiArMjA4
MCw3IEBAIFNVUFBMRU1FTlRBTF9NQUtFRklMRV9ERVBTID0gU3VwcGxlbWVudGFsRGVwZW5kZW5j
aWVzLmRlcAogSVNPX1NVQlNQQUNFU19IRUFERVJfRklMRSA9IERPTUlzb1N1YnNwYWNlcy5oCiBD
TElFTlRfSVNPX1NVQlNQQUNFU19IRUFERVJfRklMRSA9IERPTUNsaWVudElzb1N1YnNwYWNlcy5o
CiBDT05TVFJVQ1RPUlNfSEVBREVSX0ZJTEUgPSBET01Db25zdHJ1Y3RvcnMuaAorU1RSVUNUVVJF
U19IRUFERVJfRklMRSA9IERPTVN0cnVjdHVyZXMuaAogV0lORE9XX0NPTlNUUlVDVE9SU19GSUxF
ID0gRE9NV2luZG93Q29uc3RydWN0b3JzLmlkbAogV09SS0VSR0xPQkFMU0NPUEVfQ09OU1RSVUNU
T1JTX0ZJTEUgPSBXb3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9ycy5pZGwKIFNIQURPV1JFQUxN
R0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUgPSBTaGFkb3dSZWFsbUdsb2JhbFNjb3BlQ29u
c3RydWN0b3JzLmlkbApAQCAtMjA5Nyw2ICsyMDk4LDcgQEAgSURMX0lOVEVSTUVESUFURV9GSUxF
UyA9IFwKICAgICAkKElTT19TVUJTUEFDRVNfSEVBREVSX0ZJTEUpIFwKICAgICAkKENMSUVOVF9J
U09fU1VCU1BBQ0VTX0hFQURFUl9GSUxFKSBcCiAgICAgJChDT05TVFJVQ1RPUlNfSEVBREVSX0ZJ
TEUpIFwKKyAgICAkKFNUUlVDVFVSRVNfSEVBREVSX0ZJTEUpIFwKICAgICAkKFdJTkRPV19DT05T
VFJVQ1RPUlNfRklMRSkgXAogICAgICQoV09SS0VSR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJ
TEUpIFwKICAgICAkKFNIQURPV1JFQUxNR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUpIFwK
QEAgLTIxMTAsNyArMjExMiw3IEBAIElETF9JTlRFUk1FRElBVEVfUEFUVEVSTlMgPSAkKHN1YnN0
IC4sJSwkKElETF9JTlRFUk1FRElBVEVfRklMRVMpKQogCiAkKElETF9JTlRFUk1FRElBVEVfUEFU
VEVSTlMpIDogJChQUkVQUk9DRVNTX0lETFNfU0NSSVBUUykgJChJRExfQVRUUklCVVRFU19GSUxF
KSAkKEpTX0JJTkRJTkdfSURMUykgJChGRUFUVVJFX0FORF9QTEFURk9STV9ERUZJTkVfREVQRU5E
RU5DSUVTKQogCSQoc2hlbGwgZWNobyAkKEpTX0JJTkRJTkdfSURMUykgfCB0ciAiICIgIlxuIiA+
IElETEZpbGVOYW1lc0xpc3QudHh0KQotCSQoUEVSTCkgJChXZWJDb3JlKS9iaW5kaW5ncy9zY3Jp
cHRzL3ByZXByb2Nlc3MtaWRscy5wbCAtLWRlZmluZXMgIiQoRkVBVFVSRV9BTkRfUExBVEZPUk1f
REVGSU5FUykgTEFOR1VBR0VfSkFWQVNDUklQVCIgLS1pZGxGaWxlTmFtZXNMaXN0IElETEZpbGVO
YW1lc0xpc3QudHh0IC0taWRsQXR0cmlidXRlc0ZpbGUgJChJRExfQVRUUklCVVRFU19GSUxFKSAt
LXN1cHBsZW1lbnRhbERlcGVuZGVuY3lGaWxlICQoU1VQUExFTUVOVEFMX0RFUEVOREVOQ1lfRklM
RSkgLS1pc29TdWJzcGFjZXNIZWFkZXJGaWxlICQoSVNPX1NVQlNQQUNFU19IRUFERVJfRklMRSkg
LS1jbGllbnRJU09TdWJzcGFjZXNIZWFkZXJGaWxlICQoQ0xJRU5UX0lTT19TVUJTUEFDRVNfSEVB
REVSX0ZJTEUpIC0tY29uc3RydWN0b3JzSGVhZGVyRmlsZSAkKENPTlNUUlVDVE9SU19IRUFERVJf
RklMRSkgLS13aW5kb3dDb25zdHJ1Y3RvcnNGaWxlICQoV0lORE9XX0NPTlNUUlVDVE9SU19GSUxF
KSAtLXdvcmtlckdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmlsZSAkKFdPUktFUkdMT0JBTFNDT1BF
X0NPTlNUUlVDVE9SU19GSUxFKSAtLXNoYWRvd1JlYWxtR2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnNG
aWxlICQoU0hBRE9XUkVBTE1HTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRSkgLS1kZWRpY2F0
ZWRXb3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJChERURJQ0FURURXT1JLRVJHTE9C
QUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRSkgLS1zZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVDb25z
dHJ1Y3RvcnNGaWxlICQoU0VSVklDRVdPUktFUkdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxF
KSAtLXNoYXJlZFdvcmtlckdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmlsZSAkKFNIQVJFRFdPUktF
UkdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFKSAtLXdvcmtsZXRHbG9iYWxTY29wZUNvbnN0
cnVjdG9yc0ZpbGUgJChXT1JLTEVUR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUpIC0tcGFp
bnRXb3JrbGV0R2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnNGaWxlICQoUEFJTlRXT1JLTEVUR0xPQkFM
U0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUpIC0tYXVkaW9Xb3JrbGV0R2xvYmFsU2NvcGVDb25zdHJ1
Y3RvcnNGaWxlICQoQVVESU9XT1JLTEVUR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUpIC0t
c3VwcGxlbWVudGFsTWFrZWZpbGVEZXBzICQoU1VQUExFTUVOVEFMX01BS0VGSUxFX0RFUFMpCisJ
JChQRVJMKSAkKFdlYkNvcmUpL2JpbmRpbmdzL3NjcmlwdHMvcHJlcHJvY2Vzcy1pZGxzLnBsIC0t
ZGVmaW5lcyAiJChGRUFUVVJFX0FORF9QTEFURk9STV9ERUZJTkVTKSBMQU5HVUFHRV9KQVZBU0NS
SVBUIiAtLWlkbEZpbGVOYW1lc0xpc3QgSURMRmlsZU5hbWVzTGlzdC50eHQgLS1pZGxBdHRyaWJ1
dGVzRmlsZSAkKElETF9BVFRSSUJVVEVTX0ZJTEUpIC0tc3VwcGxlbWVudGFsRGVwZW5kZW5jeUZp
bGUgJChTVVBQTEVNRU5UQUxfREVQRU5ERU5DWV9GSUxFKSAtLWlzb1N1YnNwYWNlc0hlYWRlckZp
bGUgJChJU09fU1VCU1BBQ0VTX0hFQURFUl9GSUxFKSAtLWNsaWVudElTT1N1YnNwYWNlc0hlYWRl
ckZpbGUgJChDTElFTlRfSVNPX1NVQlNQQUNFU19IRUFERVJfRklMRSkgLS1jb25zdHJ1Y3RvcnNI
ZWFkZXJGaWxlICQoQ09OU1RSVUNUT1JTX0hFQURFUl9GSUxFKSAtLXN0cnVjdHVyZXNIZWFkZXJG
aWxlICQoU1RSVUNUVVJFU19IRUFERVJfRklMRSkgLS13aW5kb3dDb25zdHJ1Y3RvcnNGaWxlICQo
V0lORE9XX0NPTlNUUlVDVE9SU19GSUxFKSAtLXdvcmtlckdsb2JhbFNjb3BlQ29uc3RydWN0b3Jz
RmlsZSAkKFdPUktFUkdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFKSAtLXNoYWRvd1JlYWxt
R2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnNGaWxlICQoU0hBRE9XUkVBTE1HTE9CQUxTQ09QRV9DT05T
VFJVQ1RPUlNfRklMRSkgLS1kZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0Zp
bGUgJChERURJQ0FURURXT1JLRVJHTE9CQUxTQ09QRV9DT05TVFJVQ1RPUlNfRklMRSkgLS1zZXJ2
aWNlV29ya2VyR2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnNGaWxlICQoU0VSVklDRVdPUktFUkdMT0JB
TFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFKSAtLXNoYXJlZFdvcmtlckdsb2JhbFNjb3BlQ29uc3Ry
dWN0b3JzRmlsZSAkKFNIQVJFRFdPUktFUkdMT0JBTFNDT1BFX0NPTlNUUlVDVE9SU19GSUxFKSAt
LXdvcmtsZXRHbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUgJChXT1JLTEVUR0xPQkFMU0NPUEVf
Q09OU1RSVUNUT1JTX0ZJTEUpIC0tcGFpbnRXb3JrbGV0R2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnNG
aWxlICQoUEFJTlRXT1JLTEVUR0xPQkFMU0NPUEVfQ09OU1RSVUNUT1JTX0ZJTEUpIC0tYXVkaW9X
b3JrbGV0R2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnNGaWxlICQoQVVESU9XT1JLTEVUR0xPQkFMU0NP
UEVfQ09OU1RSVUNUT1JTX0ZJTEUpIC0tc3VwcGxlbWVudGFsTWFrZWZpbGVEZXBzICQoU1VQUExF
TUVOVEFMX01BS0VGSUxFX0RFUFMpCiAKICMKICMgRW1pdCB0aGUgcnVsZXMgdG8gZ2VuZXJhdGUg
YmluZGluZ3MgZnJvbSBJREwgZmlsZXMuIE5vdGUgdGhhdCB0aGVyZSBhcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBiYzM2ZmNm
YTAxMTBkMWU4MTJhNDU2MTRkYzFkZTZkNTMxMTRjYzMyLi41MmFhMTQ0ZWJjZjYyNzA5NTk5ODBj
MjRjYTJkMGU4MzQ4OGM4MmNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC01MjgwLDcgKzUyODAsNyBAQAogCQlFMzE1MEVBNzFE
QTcyMTkzMDAxOTQwMTIgLyogRE9NSklUSGVscGVycy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTMxNTBFQTUxREE3MjE4RDAwMTk0MDEyIC8qIERPTUpJ
VEhlbHBlcnMuaCAqLzsgfTsKIAkJRTMyMDFDMUExRjhFODIxMzAwNzZBMDMyIC8qIE1vZHVsZUZl
dGNoUGFyYW1ldGVycy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTM4RDA2MDkxRjhFODExOTAwNjQ5Q0YyIC8qIE1vZHVsZUZldGNoUGFyYW1ldGVycy5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUzMjND
RkZBMUU1QUY2QUYwMEYwQjRBMCAvKiBKU0RPTUNvbnZlcnRQcm9taXNlLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMzIzQ0ZGOTFFNUFGNkE1MDBGMEI0
QTAgLyogSlNET01Db252ZXJ0UHJvbWlzZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07Ci0JCUUzM0QwQ0JFMjY3MkUxQjYwMDc0RTE4MyAvKiBKU0RPTUds
b2JhbE9iamVjdElubGluZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEUzM0QwQ0JDMjY3MkUxQjMwMDc0RTE4MyAvKiBKU0RPTUdsb2JhbE9iamVjdElu
bGluZXMuaCAqLzsgfTsKKwkJRTMzRDBDQkUyNjcyRTFCNjAwNzRFMTgzIC8qIEpTRE9NR2xvYmFs
T2JqZWN0SW5saW5lcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTMzRDBDQkMyNjcyRTFCMzAwNzRFMTgzIC8qIEpTRE9NR2xvYmFsT2JqZWN0SW5saW5l
cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUUz
NDMyREU0MjVEMzc3RTMwMDU4RTYxMiAvKiBXb3JrZXJNb2R1bGVTY3JpcHRMb2FkZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzNDMyREUwMjVEMzc3
RTIwMDU4RTYxMiAvKiBXb3JrZXJNb2R1bGVTY3JpcHRMb2FkZXIuaCAqLzsgfTsKIAkJRTM0N0U1
RkEyNUQ0RjAwMDAwRjE3QTVDIC8qIFdvcmtlclNjcmlwdEZldGNoZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzNDdFNUY4MjVENEYwMDAwMEYxN0E1
QyAvKiBXb3JrZXJTY3JpcHRGZXRjaGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKIAkJRTM1MTg4QjQyNUQzODdDRjAwQTc3QUYzIC8qIE1vZHVsZVNj
cmlwdExvYWRlckNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRTM1MTg4QjMyNUQzODdDRjAwQTc3QUYzIC8qIE1vZHVsZVNjcmlwdExvYWRlckNs
aWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBA
IC01MzA4LDYgKzUzMDgsOCBAQAogCQlFM0M5OUEwOTFEQzNENDFDMDA3OTRBRDMgLyogRE9NSklU
Q2hlY2tET00uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEUzQzk5QTA4MURDM0Q0MTcwMDc5NEFEMyAvKiBET01KSVRDaGVja0RPTS5oICovOyB9OwogCQlF
M0M5QUVDQjIxMTMxNDk5MDA0MTlCOTIgLyogSlNNaWNyb3Rhc2tDYWxsYmFjay5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTNDOUFFQzkyMTEzMTQ3NDAw
NDE5QjkyIC8qIEpTTWljcm90YXNrQ2FsbGJhY2suaCAqLzsgfTsKIAkJRTNDQTBCRkMyNjczRjQ3
QzAwOUZERDY3IC8qIEpTRE9NQmluZGluZ1NlY3VyaXR5SW5saW5lcy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTNDQTBCRkEyNjczRjQ3ODAwOUZERDY3
IC8qIEpTRE9NQmluZGluZ1NlY3VyaXR5SW5saW5lcy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCUUzREVGNDRCMjdDNjIwRjEwMDc1OEFCOCAvKiBE
T01Db25zdHJ1Y3RvcnMuaCBpbiBDb3B5IEdlbmVyYXRlZCBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzRkUyRUM3MjdDNjFGOEUwMDk1MTE1QyAvKiBET01Db25z
dHJ1Y3RvcnMuaCAqLzsgfTsKKwkJRTNERUY0NEMyN0M2MjBGOTAwNzU4QUI4IC8qIERPTVN0cnVj
dHVyZXMuaCBpbiBDb3B5IEdlbmVyYXRlZCBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEUzRkUyRUM4MjdDNjFGOEUwMDk1MTE1QyAvKiBET01TdHJ1Y3R1cmVzLmgg
Ki87IH07CiAJCUUzRTRFMkE4MUUzQjE3MTAwMDIzQkI4QSAvKiBTY3JpcHRFbGVtZW50Q2FjaGVk
U2NyaXB0RmV0Y2hlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTNFNEUyQTYxRTNCMTZGQzAwMjNCQjhBIC8qIFNjcmlwdEVsZW1lbnRDYWNoZWRTY3Jp
cHRGZXRjaGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKIAkJRTNGQTM4NjQxRDcxODEyRDAwQUE1OTUwIC8qIFBlbmRpbmdTY3JpcHRDbGllbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUzRkEzODYxMUQ3
MTZFNzYwMEFBNTk1MCAvKiBQZW5kaW5nU2NyaXB0Q2xpZW50LmggKi87IH07CiAJCUU0MDFDMjc1
MTdDRTUzRUMwMEM0MUEzNSAvKiBFbGVtZW50SXRlcmF0b3JBc3NlcnRpb25zLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFNDAxQzI3NDE3Q0U1M0VDMDBD
NDFBMzUgLyogRWxlbWVudEl0ZXJhdG9yQXNzZXJ0aW9ucy5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC01ODQzLDYgKzU4NDUsOCBAQAogCQkJZmls
ZXMgPSAoCiAJCQkJNURGN0Y1QzIwRjAxRjkyQTAwNTI2QjRCIC8qIENTU1Byb3BlcnR5TmFtZXMu
aCBpbiBDb3B5IEdlbmVyYXRlZCBIZWFkZXJzICovLAogCQkJCTdENzQxQkRBMTc3MjI2QUEwMDg1
OTE3MCAvKiBDU1NWYWx1ZUtleXdvcmRzLmggaW4gQ29weSBHZW5lcmF0ZWQgSGVhZGVycyAqLywK
KwkJCQlFM0RFRjQ0QjI3QzYyMEYxMDA3NThBQjggLyogRE9NQ29uc3RydWN0b3JzLmggaW4gQ29w
eSBHZW5lcmF0ZWQgSGVhZGVycyAqLywKKwkJCQlFM0RFRjQ0QzI3QzYyMEY5MDA3NThBQjggLyog
RE9NU3RydWN0dXJlcy5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8sCiAJCQkJQThEMDZC
MzkwQTI2NURDRDAwNUU3MjAzIC8qIEhUTUxOYW1lcy5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRl
cnMgKi8sCiAJCQkJMTQwM0JBMEYwOUVCMThGOTAwNzk3QzdGIC8qIEpTRE9NV2luZG93LmggaW4g
Q29weSBHZW5lcmF0ZWQgSGVhZGVycyAqLywKIAkJCQkxNERDMEQzODA5RkVEMDczMDA3QjAyMzUg
LyogSlNOb2RlLmggaW4gQ29weSBHZW5lcmF0ZWQgSGVhZGVycyAqLywKQEAgLTE3Mzk3LDYgKzE3
NDAxLDggQEAKIAkJRTNFNEUyQTUxRTNCMTZGQzAwMjNCQjhBIC8qIFNjcmlwdEVsZW1lbnRDYWNo
ZWRTY3JpcHRGZXRjaGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IFNjcmlwdEVsZW1lbnRDYWNoZWRTY3JpcHRGZXRjaGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJRTNFNEUyQTYxRTNCMTZGQzAwMjNCQjhBIC8qIFNjcmlwdEVsZW1lbnRDYWNo
ZWRTY3JpcHRGZXRjaGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcmlw
dEVsZW1lbnRDYWNoZWRTY3JpcHRGZXRjaGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUUzRkEzODYxMUQ3MTZFNzYwMEFBNTk1MCAvKiBQZW5kaW5nU2NyaXB0Q2xpZW50LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBlbmRpbmdTY3JpcHRDbGllbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTNGRTJFQzcyN0M2MUY4RTAwOTUxMTVDIC8qIERP
TUNvbnN0cnVjdG9ycy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBET01Db25z
dHJ1Y3RvcnMuaDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvRE9NQ29uc3RydWN0b3Jz
Lmg7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CisJCUUzRkUyRUM4MjdDNjFG
OEUwMDk1MTE1QyAvKiBET01TdHJ1Y3R1cmVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
bmFtZSA9IERPTVN0cnVjdHVyZXMuaDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvRE9N
U3RydWN0dXJlcy5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQlFNDAx
QzI3NDE3Q0U1M0VDMDBDNDFBMzUgLyogRWxlbWVudEl0ZXJhdG9yQXNzZXJ0aW9ucy5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFbGVtZW50SXRlcmF0b3JBc3NlcnRpb25zLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUU0MDFFMEEzMUMzQzBCODMwMEYzNEQxMCAv
KiBTdHlsZUNoYW5nZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdHlsZUNo
YW5nZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFNDAxRTBBNTFDM0MwQ0Y3MDBG
MzREMTAgLyogU3R5bGVDaGFuZ2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gU3R5bGVDaGFuZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTk1
MzAsNiArMTk1MzYsOCBAQAogCQkJCUJDOTg1NDQzMENEM0Q5RDAwMDA2OUJDMSAvKiBXaW5kb3cg
Ki8sCiAJCQkJQTgzQjc5MjIwQ0NCMDBGMDAwMEIwODI1IC8qIFhNTCAqLywKIAkJCQlBODNCNzkw
QzBDQ0FGRjgzMDAwQjA4MjUgLyogWFBhdGggKi8sCisJCQkJRTNGRTJFQzcyN0M2MUY4RTAwOTUx
MTVDIC8qIERPTUNvbnN0cnVjdG9ycy5oICovLAorCQkJCUUzRkUyRUM4MjdDNjFGOEUwMDk1MTE1
QyAvKiBET01TdHJ1Y3R1cmVzLmggKi8sCiAJCQkJQkMzNDhCRDEwREI3RjgwNDAwNEFCQUJCIC8q
IFdlYkNvcmVKU0J1aWx0aW5JbnRlcm5hbHMuY3BwICovLAogCQkJCUJDMzQ4QkQyMERCN0Y4MDQw
MDRBQkFCQiAvKiBXZWJDb3JlSlNCdWlsdGluSW50ZXJuYWxzLmggKi8sCiAJCQkJQkMzNDhCRDEw
REI3RjgwNDAwNEFCQUJBIC8qIFdlYkNvcmVKU0J1aWx0aW5zLmNwcCAqLywKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNwcAppbmRleCBiMjYyNmZl
YjRhMDUzNzM4ZWE3ZGVkMTgyNzc4NjVjNGY4MTM0YjU4Li4zYTA2MDU1ZWZhY2Y5Njk2YzlkMTAw
OTI2MmFlM2UxM2RlODk5MGY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RPTUdsb2JhbE9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNET01HbG9iYWxPYmplY3QuY3BwCkBAIC0yOCw2ICsyOCw3IEBACiAjaW5jbHVkZSAiSlNET01H
bG9iYWxPYmplY3QuaCIKIAogI2luY2x1ZGUgIkRPTUNvbnN0cnVjdG9ycy5oIgorI2luY2x1ZGUg
IkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJET01XaW5kb3cuaCIKICNpbmNsdWRlICJEb2N1
bWVudC5oIgogI2luY2x1ZGUgIkZldGNoUmVzcG9uc2UuaCIKQEAgLTg3LDYgKzg4LDcgQEAgY29u
c3QgQ2xhc3NJbmZvIEpTRE9NR2xvYmFsT2JqZWN0OjpzX2luZm8gPSB7ICJET01HbG9iYWxPYmpl
Y3QiLCAmSlNHbG9iYWxPYmplY3QKIEpTRE9NR2xvYmFsT2JqZWN0OjpKU0RPTUdsb2JhbE9iamVj
dChWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWY8RE9NV3JhcHBlcldvcmxkPiYmIHdv
cmxkLCBjb25zdCBHbG9iYWxPYmplY3RNZXRob2RUYWJsZSogZ2xvYmFsT2JqZWN0TWV0aG9kVGFi
bGUpCiAgICAgOiBKU0dsb2JhbE9iamVjdCh2bSwgc3RydWN0dXJlLCBnbG9iYWxPYmplY3RNZXRo
b2RUYWJsZSkKICAgICAsIG1fY29uc3RydWN0b3JzKG1ha2VVbmlxdWU8RE9NQ29uc3RydWN0b3Jz
PigpKQorICAgICwgbV9zdHJ1Y3R1cmVzKG1ha2VVbmlxdWU8RE9NU3RydWN0dXJlcz4oKSkKICAg
ICAsIG1fd29ybGQoV1RGTW92ZSh3b3JsZCkpCiAgICAgLCBtX3dvcmxkSXNOb3JtYWwobV93b3Js
ZC0+aXNOb3JtYWwoKSkKICAgICAsIG1fYnVpbHRpbkludGVybmFsRnVuY3Rpb25zKHZtKQpAQCAt
MjkzLDEwICsyOTUsNiBAQCB2b2lkIEpTRE9NR2xvYmFsT2JqZWN0Ojp2aXNpdENoaWxkcmVuSW1w
bChKU0NlbGwqIGNlbGwsIFZpc2l0b3ImIHZpc2l0b3IpCiAgICAgewogICAgICAgICAvLyBUaGUg
R0MgdGhyZWFkIGhhcyB0byBncmFiIHRoZSBHQyBsb2NrIGV2ZW4gdGhvdWdoIGl0IGlzIG5vdCBt
dXRhdGluZyB0aGUgY29udGFpbmVycy4KICAgICAgICAgTG9ja2VyIGxvY2tlciB7IHRoaXNPYmpl
Y3QtPm1fZ2NMb2NrIH07Ci0KLSAgICAgICAgZm9yIChhdXRvJiBzdHJ1Y3R1cmUgOiB0aGlzT2Jq
ZWN0LT5tX3N0cnVjdHVyZXMudmFsdWVzKCkpCi0gICAgICAgICAgICB2aXNpdG9yLmFwcGVuZChz
dHJ1Y3R1cmUpOwotCiAgICAgICAgIGZvciAoYXV0byYgZ3VhcmRlZCA6IHRoaXNPYmplY3QtPm1f
Z3VhcmRlZE9iamVjdHMpCiAgICAgICAgICAgICBndWFyZGVkLT52aXNpdEFnZ3JlZ2F0ZSh2aXNp
dG9yKTsKICAgICB9CkBAIC0zMDQsNiArMzAyLDkgQEAgdm9pZCBKU0RPTUdsb2JhbE9iamVjdDo6
dmlzaXRDaGlsZHJlbkltcGwoSlNDZWxsKiBjZWxsLCBWaXNpdG9yJiB2aXNpdG9yKQogICAgIGZv
ciAoYXV0byYgY29uc3RydWN0b3IgOiB0aGlzT2JqZWN0LT5jb25zdHJ1Y3RvcnMoKS5hcnJheSgp
KQogICAgICAgICB2aXNpdG9yLmFwcGVuZChjb25zdHJ1Y3Rvcik7CiAKKyAgICBmb3IgKGF1dG8m
IHN0cnVjdHVyZSA6IHRoaXNPYmplY3QtPnN0cnVjdHVyZXMoKS5hcnJheSgpKQorICAgICAgICB2
aXNpdG9yLmFwcGVuZChzdHJ1Y3R1cmUpOworCiAgICAgdGhpc09iamVjdC0+bV9idWlsdGluSW50
ZXJuYWxGdW5jdGlvbnMudmlzaXQodmlzaXRvcik7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmggYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0RPTUdsb2JhbE9iamVjdC5oCmluZGV4IDBhNThlN2U5ZDY3MWJlZGY3NjZm
ZjJiODM2NzUwNDEyNGNiMWQxY2IuLjkyYWJmOTYwZDQ3OWFhMzlkNjNkOWVkMTY2N2FlNTI0YzBm
Yjk1YzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFs
T2JqZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmpl
Y3QuaApAQCAtMzUsMTIgKzM1LDEyIEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIERP
TUNvbnN0cnVjdG9yczsKK2NsYXNzIERPTVN0cnVjdHVyZXM7CiBjbGFzcyBET01HdWFyZGVkT2Jq
ZWN0OwogY2xhc3MgRXZlbnQ7CiBjbGFzcyBET01XcmFwcGVyV29ybGQ7CiBjbGFzcyBTY3JpcHRF
eGVjdXRpb25Db250ZXh0OwogCi11c2luZyBKU0RPTVN0cnVjdHVyZU1hcCA9IEhhc2hNYXA8Y29u
c3QgSlNDOjpDbGFzc0luZm8qLCBKU0M6OldyaXRlQmFycmllcjxKU0M6OlN0cnVjdHVyZT4+Owog
dXNpbmcgRE9NR3VhcmRlZE9iamVjdFNldCA9IEhhc2hTZXQ8RE9NR3VhcmRlZE9iamVjdCo+Owog
CiBjbGFzcyBXRUJDT1JFX0VYUE9SVCBKU0RPTUdsb2JhbE9iamVjdCA6IHB1YmxpYyBKU0M6OkpT
R2xvYmFsT2JqZWN0IHsKQEAgLTU5LDE3ICs1OSwxNiBAQCBjbGFzcyBXRUJDT1JFX0VYUE9SVCBK
U0RPTUdsb2JhbE9iamVjdCA6IHB1YmxpYyBKU0M6OkpTR2xvYmFsT2JqZWN0IHsKIHB1YmxpYzoK
ICAgICBMb2NrJiBnY0xvY2soKSBXVEZfUkVUVVJOU19MT0NLKG1fZ2NMb2NrKSB7IHJldHVybiBt
X2djTG9jazsgfQogCi0gICAgSlNET01TdHJ1Y3R1cmVNYXAmIHN0cnVjdHVyZXMoKSBXVEZfUkVR
VUlSRVNfTE9DSyhtX2djTG9jaykgeyByZXR1cm4gbV9zdHJ1Y3R1cmVzOyB9CiAgICAgRE9NR3Vh
cmRlZE9iamVjdFNldCYgZ3VhcmRlZE9iamVjdHMoKSBXVEZfUkVRVUlSRVNfTE9DSyhtX2djTG9j
aykgeyByZXR1cm4gbV9ndWFyZGVkT2JqZWN0czsgfQorICAgIERPTVN0cnVjdHVyZXMmIHN0cnVj
dHVyZXMoKSB7IHJldHVybiAqbV9zdHJ1Y3R1cmVzOyB9CiAgICAgRE9NQ29uc3RydWN0b3JzJiBj
b25zdHJ1Y3RvcnMoKSB7IHJldHVybiAqbV9jb25zdHJ1Y3RvcnM7IH0KIAogICAgIC8vIE5vIGxv
Y2tpbmcgaXMgbmVjZXNzYXJ5IGZvciBjYWxsIHNpdGVzIHRoYXQgZG8gbm90IG11dGF0ZSB0aGUg
Y29udGFpbmVycyBhbmQgYXJlIG5vdCBvbiB0aGUgR0MgdGhyZWFkLgotICAgIGNvbnN0IEpTRE9N
U3RydWN0dXJlTWFwJiBzdHJ1Y3R1cmVzKCkgY29uc3QgV1RGX0lHTk9SRVNfVEhSRUFEX1NBRkVU
WV9BTkFMWVNJUyB7IEFTU0VSVCghVGhyZWFkOjptYXlCZUdDVGhyZWFkKCkpOyByZXR1cm4gbV9z
dHJ1Y3R1cmVzOyB9CiAgICAgY29uc3QgRE9NR3VhcmRlZE9iamVjdFNldCYgZ3VhcmRlZE9iamVj
dHMoKSBjb25zdCBXVEZfSUdOT1JFU19USFJFQURfU0FGRVRZX0FOQUxZU0lTIHsgQVNTRVJUKCFU
aHJlYWQ6Om1heUJlR0NUaHJlYWQoKSk7IHJldHVybiBtX2d1YXJkZWRPYmplY3RzOyB9CisgICAg
Y29uc3QgRE9NU3RydWN0dXJlcyYgc3RydWN0dXJlcygpIGNvbnN0IHsgQVNTRVJUKCFUaHJlYWQ6
Om1heUJlR0NUaHJlYWQoKSk7IHJldHVybiAqbV9zdHJ1Y3R1cmVzOyB9CiAgICAgY29uc3QgRE9N
Q29uc3RydWN0b3JzJiBjb25zdHJ1Y3RvcnMoKSBjb25zdCB7IEFTU0VSVCghVGhyZWFkOjptYXlC
ZUdDVGhyZWFkKCkpOyByZXR1cm4gKm1fY29uc3RydWN0b3JzOyB9CiAKICAgICAvLyBUaGUgZm9s
bG93aW5nIGRvbid0IHJlcXVpcmUgZ3JhYmJpbmcgdGhlIGdjTG9jayBmaXJzdCBhbmQgc2hvdWxk
IG9ubHkgYmUgY2FsbGVkIHdoZW4gdGhlIEhlYXAgc2F5cyB0aGF0IG11dGF0b3JzIGRvbid0IGhh
dmUgdG8gYmUgZmVuY2VkLgotICAgIEpTRE9NU3RydWN0dXJlTWFwJiBzdHJ1Y3R1cmVzKE5vTG9j
a2luZ05lY2Vzc2FyeVRhZykgV1RGX0lHTk9SRVNfVEhSRUFEX1NBRkVUWV9BTkFMWVNJUyB7IEFT
U0VSVCghdm0oKS5oZWFwLm11dGF0b3JTaG91bGRCZUZlbmNlZCgpKTsgcmV0dXJuIG1fc3RydWN0
dXJlczsgfQogICAgIERPTUd1YXJkZWRPYmplY3RTZXQmIGd1YXJkZWRPYmplY3RzKE5vTG9ja2lu
Z05lY2Vzc2FyeVRhZykgV1RGX0lHTk9SRVNfVEhSRUFEX1NBRkVUWV9BTkFMWVNJUyB7IEFTU0VS
VCghdm0oKS5oZWFwLm11dGF0b3JTaG91bGRCZUZlbmNlZCgpKTsgcmV0dXJuIG1fZ3VhcmRlZE9i
amVjdHM7IH0KIAogICAgIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQoKSBjb25zdDsKQEAgLTEyMyw5ICsxMjIsOSBAQCBjbGFzcyBXRUJDT1JFX0VYUE9SVCBK
U0RPTUdsb2JhbE9iamVjdCA6IHB1YmxpYyBKU0M6OkpTR2xvYmFsT2JqZWN0IHsKICAgICBzdGF0
aWMgSlNDOjpKU0ludGVybmFsUHJvbWlzZSogbW9kdWxlTG9hZGVySW1wb3J0TW9kdWxlKEpTQzo6
SlNHbG9iYWxPYmplY3QqLCBKU0M6OkpTTW9kdWxlTG9hZGVyKiwgSlNDOjpKU1N0cmluZyosIEpT
Qzo6SlNWYWx1ZSwgY29uc3QgSlNDOjpTb3VyY2VPcmlnaW4mKTsKICAgICBzdGF0aWMgSlNDOjpK
U09iamVjdCogbW9kdWxlTG9hZGVyQ3JlYXRlSW1wb3J0TWV0YVByb3BlcnRpZXMoSlNDOjpKU0ds
b2JhbE9iamVjdCosIEpTQzo6SlNNb2R1bGVMb2FkZXIqLCBKU0M6OkpTVmFsdWUsIEpTQzo6SlNN
b2R1bGVSZWNvcmQqLCBKU0M6OkpTVmFsdWUpOwogCi0gICAgSlNET01TdHJ1Y3R1cmVNYXAgbV9z
dHJ1Y3R1cmVzIFdURl9HVUFSREVEX0JZX0xPQ0sobV9nY0xvY2spOwogICAgIERPTUd1YXJkZWRP
YmplY3RTZXQgbV9ndWFyZGVkT2JqZWN0cyBXVEZfR1VBUkRFRF9CWV9MT0NLKG1fZ2NMb2NrKTsK
ICAgICBzdGQ6OnVuaXF1ZV9wdHI8RE9NQ29uc3RydWN0b3JzPiBtX2NvbnN0cnVjdG9yczsKKyAg
ICBzdGQ6OnVuaXF1ZV9wdHI8RE9NU3RydWN0dXJlcz4gbV9zdHJ1Y3R1cmVzOwogCiAgICAgUmVm
PERPTVdyYXBwZXJXb3JsZD4gbV93b3JsZDsKICAgICB1aW50OF90IG1fd29ybGRJc05vcm1hbDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0
SW5saW5lcy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3RJ
bmxpbmVzLmgKaW5kZXggMDUyODYxNWI0NjFiZjBkYjc3MWRmNDI2ODZmYTIyZTVkMmRlNjUyZi4u
MTNmYzcyYWE0MTg4N2QyYWU5NzhkZjZjYjIyNzRlNmY4NTQ3ZGJiMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3RJbmxpbmVzLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3RJbmxpbmVzLmgKQEAg
LTI3LDYgKzI3LDcgQEAKICNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSAiRE9NQ29uc3RydWN0b3Jz
LmgiCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NR2xvYmFsT2Jq
ZWN0LmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQ0LDQgKzQ1LDEzIEBAIGlubGluZSBK
U0M6OkpTT2JqZWN0KiBnZXRET01Db25zdHJ1Y3RvcihKU0M6OlZNJiB2bSwgY29uc3QgSlNET01H
bG9iYWxPYmplY3QmIGdsCiAgICAgcmV0dXJuIGNvbnN0cnVjdG9yOwogfQogCit0ZW1wbGF0ZTx0
eXBlbmFtZSBXcmFwcGVyQ2xhc3M+IGlubGluZSBKU0M6OlN0cnVjdHVyZSogZ2V0RE9NU3RydWN0
dXJlKEpTQzo6Vk0mIHZtLCBKU0RPTUdsb2JhbE9iamVjdCYgZ2xvYmFsT2JqZWN0KQoreworICAg
IGlmIChhdXRvKiBzdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3Quc3RydWN0dXJlcygpLmdldDxXcmFw
cGVyQ2xhc3M+KCkpCisgICAgICAgIHJldHVybiBzdHJ1Y3R1cmU7CisgICAgYXV0byogc3RydWN0
dXJlID0gV3JhcHBlckNsYXNzOjpjcmVhdGVTdHJ1Y3R1cmUodm0sICZnbG9iYWxPYmplY3QsIFdy
YXBwZXJDbGFzczo6Y3JlYXRlUHJvdG90eXBlKHZtLCBnbG9iYWxPYmplY3QpKTsKKyAgICBnbG9i
YWxPYmplY3Quc3RydWN0dXJlcygpLnNldDxXcmFwcGVyQ2xhc3M+KHZtLCAmZ2xvYmFsT2JqZWN0
LCBzdHJ1Y3R1cmUpOworICAgIHJldHVybiBzdHJ1Y3R1cmU7Cit9CisKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV3Jh
cHBlckNhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV3JhcHBlckNh
Y2hlLmNwcAppbmRleCA3MzM5NjVjMzVjZmJlMTJhYTA3MjcyMWY5NTMyYmNkMzg5MTg1MjRhLi4y
NDUwNDAzOGYzYmM0NjYyNjdlMzdhYTBjYzM3ZjM0OTIwYTJiYjhlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdyYXBwZXJDYWNoZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XcmFwcGVyQ2FjaGUuY3BwCkBAIC0yNywyMiArMjcs
NCBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogdXNpbmcgbmFtZXNwYWNlIEpTQzsKIAotU3RydWN0
dXJlKiBnZXRDYWNoZWRET01TdHJ1Y3R1cmUoY29uc3QgSlNET01HbG9iYWxPYmplY3QmIGdsb2Jh
bE9iamVjdCwgY29uc3QgQ2xhc3NJbmZvKiBjbGFzc0luZm8pCi17Ci0gICAgcmV0dXJuIGdsb2Jh
bE9iamVjdC5zdHJ1Y3R1cmVzKCkuZ2V0KGNsYXNzSW5mbykuZ2V0KCk7Ci19Ci0KLVN0cnVjdHVy
ZSogY2FjaGVET01TdHJ1Y3R1cmUoSlNET01HbG9iYWxPYmplY3QmIGdsb2JhbE9iamVjdCwgU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUsIGNvbnN0IENsYXNzSW5mbyogY2xhc3NJbmZvKQotewotICAgIGF1
dG8gYWRkVG9TdHJ1Y3R1cmVzID0gW10oSlNET01TdHJ1Y3R1cmVNYXAmIHN0cnVjdHVyZXMsIEpT
RE9NR2xvYmFsT2JqZWN0JiBnbG9iYWxPYmplY3QsIFN0cnVjdHVyZSogc3RydWN0dXJlLCBjb25z
dCBDbGFzc0luZm8qIGNsYXNzSW5mbykgewotICAgICAgICBBU1NFUlQoIXN0cnVjdHVyZXMuY29u
dGFpbnMoY2xhc3NJbmZvKSk7Ci0gICAgICAgIHJldHVybiBzdHJ1Y3R1cmVzLnNldChjbGFzc0lu
Zm8sIFdyaXRlQmFycmllcjxTdHJ1Y3R1cmU+KGdsb2JhbE9iamVjdC52bSgpLCAmZ2xvYmFsT2Jq
ZWN0LCBzdHJ1Y3R1cmUpKS5pdGVyYXRvci0+dmFsdWUuZ2V0KCk7Ci0gICAgfTsKLSAgICBpZiAo
Z2xvYmFsT2JqZWN0LnZtKCkuaGVhcC5tdXRhdG9yU2hvdWxkQmVGZW5jZWQoKSkgewotICAgICAg
ICBMb2NrZXIgbG9ja2VyIHsgZ2xvYmFsT2JqZWN0LmdjTG9jaygpIH07Ci0gICAgICAgIHJldHVy
biBhZGRUb1N0cnVjdHVyZXMoZ2xvYmFsT2JqZWN0LnN0cnVjdHVyZXMoKSwgZ2xvYmFsT2JqZWN0
LCBzdHJ1Y3R1cmUsIGNsYXNzSW5mbyk7Ci0gICAgfQotICAgIHJldHVybiBhZGRUb1N0cnVjdHVy
ZXMoZ2xvYmFsT2JqZWN0LnN0cnVjdHVyZXMoTm9Mb2NraW5nTmVjZXNzYXJ5KSwgZ2xvYmFsT2Jq
ZWN0LCBzdHJ1Y3R1cmUsIGNsYXNzSW5mbyk7Ci19Ci0KIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV3JhcHBlckNhY2hl
LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdyYXBwZXJDYWNoZS5oCmluZGV4
IGZhMWQ1MTZhMGIzNWZhM2I1NjJhMjQ2NzQ2Nzg1MDI0NzJiYjcyNjEuLmVhMGE0NDM0NzRmOTIx
NjgwNjk0NGUzZThmOGRiOTA5YzMxYzYzNTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTRE9NV3JhcHBlckNhY2hlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNET01XcmFwcGVyQ2FjaGUuaApAQCAtMjQsNyArMjQsNyBAQAogI3ByYWdtYSBvbmNl
CiAKICNpbmNsdWRlICJET01XcmFwcGVyV29ybGQuaCIKLSNpbmNsdWRlICJKU0RPTUdsb2JhbE9i
amVjdC5oIgorI2luY2x1ZGUgIkpTRE9NR2xvYmFsT2JqZWN0SW5saW5lcy5oIgogI2luY2x1ZGUg
IkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlNjcmlwdFdyYXBwYWJsZS5oIgogI2luY2x1ZGUg
IlNjcmlwdFdyYXBwYWJsZUlubGluZXMuaCIKQEAgLTM2LDEwICszNiw2IEBACiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAotV0VCQ09SRV9FWFBPUlQgSlNDOjpTdHJ1Y3R1cmUqIGdldENhY2hlZERP
TVN0cnVjdHVyZShjb25zdCBKU0RPTUdsb2JhbE9iamVjdCYsIGNvbnN0IEpTQzo6Q2xhc3NJbmZv
Kik7Ci1XRUJDT1JFX0VYUE9SVCBKU0M6OlN0cnVjdHVyZSogY2FjaGVET01TdHJ1Y3R1cmUoSlNE
T01HbG9iYWxPYmplY3QmLCBKU0M6OlN0cnVjdHVyZSosIGNvbnN0IEpTQzo6Q2xhc3NJbmZvKik7
Ci0KLXRlbXBsYXRlPHR5cGVuYW1lIFdyYXBwZXJDbGFzcz4gSlNDOjpTdHJ1Y3R1cmUqIGdldERP
TVN0cnVjdHVyZShKU0M6OlZNJiwgSlNET01HbG9iYWxPYmplY3QmKTsKIHRlbXBsYXRlPHR5cGVu
YW1lIFdyYXBwZXJDbGFzcz4gSlNDOjpTdHJ1Y3R1cmUqIGRlcHJlY2F0ZWRHZXRET01TdHJ1Y3R1
cmUoSlNDOjpKU0dsb2JhbE9iamVjdCopOwogdGVtcGxhdGU8dHlwZW5hbWUgV3JhcHBlckNsYXNz
PiBKU0M6OkpTT2JqZWN0KiBnZXRET01Qcm90b3R5cGUoSlNDOjpWTSYsIEpTQzo6SlNHbG9iYWxP
YmplY3QqKTsKIApAQCAtNTgsOCArNTQsNiBAQCBib29sIGNsZWFySW5saW5lQ2FjaGVkV3JhcHBl
cihET01XcmFwcGVyV29ybGQmLCB2b2lkKiwgSlNET01PYmplY3QqKTsKIGJvb2wgY2xlYXJJbmxp
bmVDYWNoZWRXcmFwcGVyKERPTVdyYXBwZXJXb3JsZCYsIFNjcmlwdFdyYXBwYWJsZSosIEpTRE9N
T2JqZWN0KiB3cmFwcGVyKTsKIGJvb2wgY2xlYXJJbmxpbmVDYWNoZWRXcmFwcGVyKERPTVdyYXBw
ZXJXb3JsZCYsIEpTQzo6QXJyYXlCdWZmZXIqLCBKU0M6OkpTQXJyYXlCdWZmZXIqIHdyYXBwZXIp
OwogCi10ZW1wbGF0ZTx0eXBlbmFtZSBET01DbGFzcz4gSlNDOjpKU09iamVjdCogZ2V0T3JDcmVh
dGVXcmFwcGVyKERPTVdyYXBwZXJXb3JsZCYsIERPTUNsYXNzJik7Ci0KIHRlbXBsYXRlPHR5cGVu
YW1lIERPTUNsYXNzPiBKU0M6OkpTT2JqZWN0KiBnZXRDYWNoZWRXcmFwcGVyKERPTVdyYXBwZXJX
b3JsZCYsIERPTUNsYXNzJik7CiB0ZW1wbGF0ZTx0eXBlbmFtZSBET01DbGFzcz4gaW5saW5lIEpT
Qzo6SlNPYmplY3QqIGdldENhY2hlZFdyYXBwZXIoRE9NV3JhcHBlcldvcmxkJiB3b3JsZCwgUmVm
PERPTUNsYXNzPiYgb2JqZWN0KSB7IHJldHVybiBnZXRDYWNoZWRXcmFwcGVyKHdvcmxkLCBvYmpl
Y3QuZ2V0KCkpOyB9CiB0ZW1wbGF0ZTx0eXBlbmFtZSBET01DbGFzcywgdHlwZW5hbWUgV3JhcHBl
ckNsYXNzPiB2b2lkIGNhY2hlV3JhcHBlcihET01XcmFwcGVyV29ybGQmLCBET01DbGFzcyosIFdy
YXBwZXJDbGFzcyopOwpAQCAtODEsMTMgKzc1LDYgQEAgaW5saW5lIEpTRE9NR2xvYmFsT2JqZWN0
KiBkZXByZWNhdGVkR2xvYmFsT2JqZWN0Rm9yUHJvdG90eXBlKEpTQzo6SlNHbG9iYWxPYmplY3QK
ICAgICByZXR1cm4gSlNDOjpqc0Nhc3Q8SlNET01HbG9iYWxPYmplY3QqPihsZXhpY2FsR2xvYmFs
T2JqZWN0KTsKIH0KIAotdGVtcGxhdGU8dHlwZW5hbWUgV3JhcHBlckNsYXNzPiBpbmxpbmUgSlND
OjpTdHJ1Y3R1cmUqIGdldERPTVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNET01HbG9iYWxPYmpl
Y3QmIGdsb2JhbE9iamVjdCkKLXsKLSAgICBpZiAoSlNDOjpTdHJ1Y3R1cmUqIHN0cnVjdHVyZSA9
IGdldENhY2hlZERPTVN0cnVjdHVyZShnbG9iYWxPYmplY3QsIFdyYXBwZXJDbGFzczo6aW5mbygp
KSkKLSAgICAgICAgcmV0dXJuIHN0cnVjdHVyZTsKLSAgICByZXR1cm4gY2FjaGVET01TdHJ1Y3R1
cmUoZ2xvYmFsT2JqZWN0LCBXcmFwcGVyQ2xhc3M6OmNyZWF0ZVN0cnVjdHVyZSh2bSwgJmdsb2Jh
bE9iamVjdCwgV3JhcHBlckNsYXNzOjpjcmVhdGVQcm90b3R5cGUodm0sIGdsb2JhbE9iamVjdCkp
LCBXcmFwcGVyQ2xhc3M6OmluZm8oKSk7Ci19Ci0KIHRlbXBsYXRlPHR5cGVuYW1lIFdyYXBwZXJD
bGFzcz4gaW5saW5lIEpTQzo6U3RydWN0dXJlKiBkZXByZWNhdGVkR2V0RE9NU3RydWN0dXJlKEpT
Qzo6SlNHbG9iYWxPYmplY3QqIGxleGljYWxHbG9iYWxPYmplY3QpCiB7CiAgICAgLy8gRklYTUU6
IFRoaXMgZnVuY3Rpb24gaXMgd3JvbmcuIEl0IHVzZXMgdGhlIHdyb25nIGdsb2JhbCBvYmplY3Qg
Zm9yIGNyZWF0aW5nIHRoZSBwcm90b3R5cGUgc3RydWN0dXJlLgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3Iu
aCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZUl0ZXJhdG9yLmgKaW5kZXggYzFlZDQ0ZGY5NTJmYTQyNzdiOWI5ZTEwNDNhZDU1NzA4Y2Q4Nzgx
MC4uNTE1OWQyOWJiMThhZTMxYTIwN2Y1MGJjOWNjOGFjZWU4YTIyZDA1MiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRl
cmF0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0ZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGVJdGVyYXRvci5oCkBAIC00Myw2ICs0Myw3IEBAIHN0cnVjdCBKU0ZpbGVTeXN0
ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvclRyYWl0cyB7CiBjbGFzcyBKU0ZpbGVTeXN0ZW1EaXJl
Y3RvcnlIYW5kbGVJdGVyYXRvciBmaW5hbCA6IHB1YmxpYyBKU0RPTUFzeW5jSXRlcmF0b3JCYXNl
PEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZSwgSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxl
SXRlcmF0b3JUcmFpdHMsIEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yPiB7CiBw
dWJsaWM6CiAgICAgdXNpbmcgQmFzZSA9IEpTRE9NQXN5bmNJdGVyYXRvckJhc2U8SlNGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlLCBKU0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvclRy
YWl0cywgSlNGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3I+OworICAgIHN0YXRpYyBj
b25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6
RmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yOwogICAgIERFQ0xBUkVfSU5GTzsKIAog
ICAgIHRlbXBsYXRlPHR5cGVuYW1lIENlbGxUeXBlLCBKU0M6OlN1YnNwYWNlQWNjZXNzIG1vZGU+
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0
b3JKUy5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpT
LnBtCmluZGV4IDM0MzY1ZmIzNTE2ODdlN2VlYmNlZmI4NWNjM2QyMWU5N2MxZDk0NDcuLjJkNmFj
YjM2NzhiMWNiM2YwNjY5ZjAyMTI4YWFlODg1OTNmNmQ3YzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC0zMDM5LDYgKzMw
MzksOCBAQCBzdWIgR2VuZXJhdGVIZWFkZXIKICAgICB9CiAKICAgICAjIFN0cnVjdHVyZSBJRAor
ICAgICRoZWFkZXJJbmNsdWRlc3siRE9NU3RydWN0dXJlcy5oIn0gPSAxOworICAgIHB1c2goQGhl
YWRlckNvbnRlbnQsICIgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1
cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjoke2ludGVyZmFjZU5hbWV9O1xuIik7CiAgICAgcHVz
aChAaGVhZGVyQ29udGVudCwgIiAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6
OkpTVmFsdWUgcHJvdG90eXBlKVxuIik7CiAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICB7
XG4iKTsKICAgICBteSAkaW5kZXhpbmdNb2RlSW5jbHVkaW5nSGlzdG9yeSA9IEluc3RhbmNlT3Zl
cnJpZGVzR2V0T3duUHJvcGVydHlTbG90KCRpbnRlcmZhY2UpID8gIkpTQzo6TWF5SGF2ZUluZGV4
ZWRBY2Nlc3NvcnMiIDogIkpTQzo6Tm9uQXJyYXkiOwpAQCAtNjc4Myw2ICs2Nzg1LDcgQEAgc3Vi
IEdlbmVyYXRlSXRlcmFibGVEZWZpbml0aW9uCiAgICAgICAgICk7CiAgICAgfQogCisgICAgc3Rh
dGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVy
ZUlEOjoke2ludGVyZmFjZU5hbWV9SXRlcmF0b3I7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJl
KiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBK
U0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpU
eXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvcHJlcHJvY2Vzcy1pZGxzLnBs
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9wcmVwcm9jZXNzLWlkbHMucGwKaW5k
ZXggMWQyMzcwNDIzMDYzYjIyYjA0ZWJhN2QyNGE0NzQwYzdjYmFiZGRjNS4uZjdjYjdmNTNlOTZj
NzA2ZTFiMDcyOWFmMDcxZjI5NDc2ODA3YmRhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9wcmVwcm9jZXNzLWlkbHMucGwKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9wcmVwcm9jZXNzLWlkbHMucGwKQEAgLTQzLDYgKzQzLDcgQEAKIG15
ICRpc29TdWJzcGFjZXNIZWFkZXJGaWxlOwogbXkgJGNsaWVudElTT1N1YnNwYWNlc0hlYWRlckZp
bGU7CiBteSAkY29uc3RydWN0b3JzSGVhZGVyRmlsZTsKK215ICRzdHJ1Y3R1cmVzSGVhZGVyRmls
ZTsKIG15ICR3aW5kb3dDb25zdHJ1Y3RvcnNGaWxlOwogbXkgJHdvcmtlckdsb2JhbFNjb3BlQ29u
c3RydWN0b3JzRmlsZTsKIG15ICRzaGFkb3dSZWFsbUdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmls
ZTsKQEAgLTg0LDYgKzg1LDcgQEAKICAgICAgICAgICAgJ2lzb1N1YnNwYWNlc0hlYWRlckZpbGU9
cycgPT4gXCRpc29TdWJzcGFjZXNIZWFkZXJGaWxlLAogICAgICAgICAgICAnY2xpZW50SVNPU3Vi
c3BhY2VzSGVhZGVyRmlsZT1zJyA9PiBcJGNsaWVudElTT1N1YnNwYWNlc0hlYWRlckZpbGUsCiAg
ICAgICAgICAgICdjb25zdHJ1Y3RvcnNIZWFkZXJGaWxlPXMnID0+IFwkY29uc3RydWN0b3JzSGVh
ZGVyRmlsZSwKKyAgICAgICAgICAgJ3N0cnVjdHVyZXNIZWFkZXJGaWxlPXMnID0+IFwkc3RydWN0
dXJlc0hlYWRlckZpbGUsCiAgICAgICAgICAgICd3aW5kb3dDb25zdHJ1Y3RvcnNGaWxlPXMnID0+
IFwkd2luZG93Q29uc3RydWN0b3JzRmlsZSwKICAgICAgICAgICAgJ3dvcmtlckdsb2JhbFNjb3Bl
Q29uc3RydWN0b3JzRmlsZT1zJyA9PiBcJHdvcmtlckdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmls
ZSwKICAgICAgICAgICAgJ3NoYWRvd1JlYWxtR2xvYmFsU2NvcGVDb25zdHJ1Y3RvcnNGaWxlPXMn
ID0+IFwkc2hhZG93UmVhbG1HbG9iYWxTY29wZUNvbnN0cnVjdG9yc0ZpbGUsCkBAIC0xMTgsNiAr
MTIwLDcgQEAKICRpc29TdWJzcGFjZXNIZWFkZXJGaWxlID0gQ3lnd2luUGF0aElmTmVlZGVkKCRp
c29TdWJzcGFjZXNIZWFkZXJGaWxlKTsKICRjbGllbnRJU09TdWJzcGFjZXNIZWFkZXJGaWxlID0g
Q3lnd2luUGF0aElmTmVlZGVkKCRjbGllbnRJU09TdWJzcGFjZXNIZWFkZXJGaWxlKTsKICRjb25z
dHJ1Y3RvcnNIZWFkZXJGaWxlID0gQ3lnd2luUGF0aElmTmVlZGVkKCRjb25zdHJ1Y3RvcnNIZWFk
ZXJGaWxlKTsKKyRzdHJ1Y3R1cmVzSGVhZGVyRmlsZSA9IEN5Z3dpblBhdGhJZk5lZWRlZCgkc3Ry
dWN0dXJlc0hlYWRlckZpbGUpOwogJHdpbmRvd0NvbnN0cnVjdG9yc0ZpbGUgPSBDeWd3aW5QYXRo
SWZOZWVkZWQoJHdpbmRvd0NvbnN0cnVjdG9yc0ZpbGUpOwogJHdvcmtlckdsb2JhbFNjb3BlQ29u
c3RydWN0b3JzRmlsZSA9IEN5Z3dpblBhdGhJZk5lZWRlZCgkd29ya2VyR2xvYmFsU2NvcGVDb25z
dHJ1Y3RvcnNGaWxlKTsKICRzaGFkb3dSZWFsbUdsb2JhbFNjb3BlQ29uc3RydWN0b3JzRmlsZSA9
IEN5Z3dpblBhdGhJZk5lZWRlZCgkc2hhZG93UmVhbG1HbG9iYWxTY29wZUNvbnN0cnVjdG9yc0Zp
bGUpOwpAQCAtMjE2LDYgKzIxOSwyNyBAQCBFTkQKIGVudW0gY2xhc3MgRE9NQ29uc3RydWN0b3JJ
RCA6IHVpbnQxNl90IHsKIEVORAogCitteSBAc3RydWN0dXJlcyA9ICgpOworIyBEZXByZWNhdGVk
IG9iamVjdHMuCitwdXNoKEBzdHJ1Y3R1cmVzLCAiT2JqQ1J1bnRpbWVNZXRob2QiKTsKK3B1c2go
QHN0cnVjdHVyZXMsICJPYmpDUnVudGltZU9iamVjdCIpOworcHVzaChAc3RydWN0dXJlcywgIk9i
amNGYWxsYmFja09iamVjdEltcCIpOworcHVzaChAc3RydWN0dXJlcywgIlJ1bnRpbWVBcnJheSIp
OworcHVzaChAc3RydWN0dXJlcywgIlJ1bnRpbWVPYmplY3QiKTsKKyMgRklYTUU6IEFmdGVyIHdl
YmtpdC5vcmcvYi8yMzEyNDMsIHRoaXMgY2xhc3Mgc2hvdWxkIGJlIGF1dG9tYXRpY2FsbHkgZ2Vu
ZXJhdGVkIGJ5IGJpbmRpbmdzIGNvZGUgZ2VuZXJhdG9yLgorcHVzaChAc3RydWN0dXJlcywgIkZp
bGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvciIpOworbXkgJHN0cnVjdHVyZXNIZWFkZXJD
b2RlID0gPDxFTkQ7CisjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KKyNpbmNsdWRlIDx3dGYv
Tm9uY29weWFibGUuaD4KKyNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU0NJbmxpbmVzLmg+CisK
KyNwcmFnbWEgb25jZQorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2VudW0gY2xhc3MgRE9NU3Ry
dWN0dXJlSUQgOiB1aW50MTZfdCB7CitFTkQKKwogIyBHZXQgcmlkIG9mIGR1cGxpY2F0ZXMgaW4g
aWRsRmlsZU5hbWVzIGFycmF5LgogbXkgJWlkbEZpbGVOYW1lSGFzaCA9IG1hcCB7ICRfLCAxIH0g
QGlkbEZpbGVOYW1lczsKIApAQCAtMjcwLDkgKzI5NCwxMSBAQCBFTkQKICAgICBpZiAoISRpc0Nh
bGxiYWNrSW50ZXJmYWNlKSB7CiAgICAgICAgICRpc29TdWJzcGFjZXNIZWFkZXJDb2RlIC49ICIg
ICAgc3RkOjp1bmlxdWVfcHRyPElzb1N1YnNwYWNlPiBtX3N1YnNwYWNlRm9yJHtpbnRlcmZhY2VO
YW1lfTtcbiI7CiAgICAgICAgICRjbGllbnRJU09TdWJzcGFjZXNIZWFkZXJDb2RlIC49ICIgICAg
c3RkOjp1bmlxdWVfcHRyPEdDQ2xpZW50OjpJc29TdWJzcGFjZT4gbV9jbGllbnRTdWJzcGFjZUZv
ciR7aW50ZXJmYWNlTmFtZX07XG4iOworICAgICAgICBwdXNoKEBzdHJ1Y3R1cmVzLCAiJHtpbnRl
cmZhY2VOYW1lfSIpOwogICAgICAgICBpZiAoY29udGFpbnNJdGVyYWJsZUludGVyZmFjZUZyb21J
REwoJGlkbEZpbGUpKSB7CiAgICAgICAgICAgICAkaXNvU3Vic3BhY2VzSGVhZGVyQ29kZSAuPSAi
ICAgIHN0ZDo6dW5pcXVlX3B0cjxJc29TdWJzcGFjZT4gbV9zdWJzcGFjZUZvciR7aW50ZXJmYWNl
TmFtZX1JdGVyYXRvcjtcbiI7CiAgICAgICAgICAgICAkY2xpZW50SVNPU3Vic3BhY2VzSGVhZGVy
Q29kZSAuPSAiICAgIHN0ZDo6dW5pcXVlX3B0cjxHQ0NsaWVudDo6SXNvU3Vic3BhY2U+IG1fY2xp
ZW50U3Vic3BhY2VGb3Ike2ludGVyZmFjZU5hbWV9SXRlcmF0b3I7XG4iOworICAgICAgICAgICAg
cHVzaChAc3RydWN0dXJlcywgIiR7aW50ZXJmYWNlTmFtZX1JdGVyYXRvciIpOwogICAgICAgICB9
CiAgICAgfQogCkBAIC0zNzcsNiArNDAzLDM0IEBAIEVORAogICAgIFdyaXRlRmlsZUlmQ2hhbmdl
ZCgkY29uc3RydWN0b3JzSGVhZGVyRmlsZSwgJGNvbnN0cnVjdG9yc0hlYWRlckNvZGUpOwogfQog
CitpZiAoJHN0cnVjdHVyZXNIZWFkZXJGaWxlKSB7CisgICAgbXkgJHN0cnVjdHVyZXNMZW5ndGgg
PSBAc3RydWN0dXJlczsKKyAgICBmb3JlYWNoIG15ICRuYW1lIChAc3RydWN0dXJlcykgeworICAg
ICAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0gIiAgICAke25hbWV9LFxuIjsKKyAgICB9Cisg
ICAgJHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49ICJ9O1xuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRl
ckNvZGUgLj0gIlxuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0gInN0YXRpYyBjb25z
dGV4cHIgdW5zaWduZWQgbnVtYmVyT2ZET01TdHJ1Y3R1cmVzID0gJHN0cnVjdHVyZXNMZW5ndGg7
XG4iOworICAgICRzdHJ1Y3R1cmVzSGVhZGVyQ29kZSAuPSAiXG4iOworICAgICRzdHJ1Y3R1cmVz
SGVhZGVyQ29kZSAuPSAiY2xhc3MgRE9NU3RydWN0dXJlcyB7XG4iOworICAgICRzdHJ1Y3R1cmVz
SGVhZGVyQ29kZSAuPSAiICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKERPTVN0cnVjdHVyZXMpO1xu
IjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0gIiAgICBXVEZfTUFLRV9GQVNUX0FMTE9D
QVRFRChET01TdHJ1Y3R1cmVzKTtcbiI7CisgICAgJHN0cnVjdHVyZXNIZWFkZXJDb2RlIC49ICJw
dWJsaWM6XG4iOworICAgICRzdHJ1Y3R1cmVzSGVhZGVyQ29kZSAuPSAiICAgIHVzaW5nIFN0cnVj
dHVyZUFycmF5ID0gc3RkOjphcnJheTxKU0M6OldyaXRlQmFycmllclN0cnVjdHVyZUlELCBudW1i
ZXJPZkRPTVN0cnVjdHVyZXM+O1xuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0gIiAg
ICBET01TdHJ1Y3R1cmVzKCkgPSBkZWZhdWx0O1xuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNv
ZGUgLj0gIiAgICBTdHJ1Y3R1cmVBcnJheSYgYXJyYXkoKSB7IHJldHVybiBtX2FycmF5OyB9XG4i
OworICAgICRzdHJ1Y3R1cmVzSGVhZGVyQ29kZSAuPSAiICAgIGNvbnN0IFN0cnVjdHVyZUFycmF5
JiBhcnJheSgpIGNvbnN0IHsgcmV0dXJuIG1fYXJyYXk7IH1cbiI7CisgICAgJHN0cnVjdHVyZXNI
ZWFkZXJDb2RlIC49ICIgICAgdGVtcGxhdGU8dHlwZW5hbWUgV3JhcHBlZENsYXNzPiBKU0M6OlN0
cnVjdHVyZSogZ2V0KCkgY29uc3QgeyByZXR1cm4gbV9hcnJheVtzdGF0aWNfY2FzdDx1bnNpZ25l
ZD4oV3JhcHBlZENsYXNzOjpzdHJ1Y3R1cmVJbmRleCldLmdldCgpOyB9XG4iOworICAgICRzdHJ1
Y3R1cmVzSGVhZGVyQ29kZSAuPSAiICAgIHRlbXBsYXRlPHR5cGVuYW1lIFdyYXBwZWRDbGFzcz4g
dm9pZCBzZXQoSlNDOjpWTSYgdm0sIEpTQzo6SlNDZWxsKiBvd25lciwgSlNDOjpTdHJ1Y3R1cmUq
IHN0cnVjdHVyZSkgeyBtX2FycmF5W3N0YXRpY19jYXN0PHVuc2lnbmVkPihXcmFwcGVkQ2xhc3M6
OnN0cnVjdHVyZUluZGV4KV0uc2V0KHZtLCBvd25lciwgc3RydWN0dXJlKTsgfVxuIjsKKyAgICAk
c3RydWN0dXJlc0hlYWRlckNvZGUgLj0gIlxuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUg
Lj0gInByaXZhdGU6XG4iOworICAgICRzdHJ1Y3R1cmVzSGVhZGVyQ29kZSAuPSAiICAgIFN0cnVj
dHVyZUFycmF5IG1fYXJyYXkgeyB9O1xuIjsKKyAgICAkc3RydWN0dXJlc0hlYWRlckNvZGUgLj0g
In07XG4iOworICAgICRzdHJ1Y3R1cmVzSGVhZGVyQ29kZSAuPSAiXG4iOworICAgICRzdHJ1Y3R1
cmVzSGVhZGVyQ29kZSAuPSAifSAvLyBuYW1lc3BhY2UgV2ViQ29yZVxuIjsKKyAgICBXcml0ZUZp
bGVJZkNoYW5nZWQoJHN0cnVjdHVyZXNIZWFkZXJGaWxlLCAkc3RydWN0dXJlc0hlYWRlckNvZGUp
OworfQorCiAjIFJlc29sdmVzIHBhcnRpYWwgaW50ZXJmYWNlcyBhbmQgaW5jbHVkZSBkZXBlbmRl
bmNpZXMuCiBmb3JlYWNoIG15ICRpZGxGaWxlUGF0aCAoc29ydCBrZXlzICVzdXBwbGVtZW50YWxE
ZXBlbmRlbmNpZXMpIHsKICAgICBteSAkYmFzZUZpbGVzID0gJHN1cHBsZW1lbnRhbERlcGVuZGVu
Y2llc3skaWRsRmlsZVBhdGh9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTRE9NV2luZG93LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNET01XaW5kb3cuaAppbmRleCAzZjczYTllNzEwY2IyYzNiYzNjYmQw
OWJkOWUwZDJjZmYzNjA3MDIxLi41Y2E1YWM5Y2NhYzEyOTAwZDUzOTFiMzNjNTU3Y2M1Yzg5NmFm
MTFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNET01XaW5kb3cuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNET01XaW5kb3cuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2lu
Y2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNs
dWRlICJKU0V2ZW50VGFyZ2V0LmgiCiAKQEAgLTQ0LDYgKzQ1LDcgQEAgY2xhc3MgSlNET01XaW5k
b3cgOiBwdWJsaWMgSlNFdmVudFRhcmdldCB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBz
dGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0
dXJlSUQ6OkRPTVdpbmRvdzsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6
OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJl
OjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6
R2xvYmFsT2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
RGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU0RlZGljYXRlZFdvcmtlckdsb2JhbFNjb3BlLmgKaW5kZXggNTc4NWQx
YTAzZGRhYWY1NWY2NzM2ZTIxNjcwMDNiZWU2YzM2MTcwMS4uZTBhNjViZDdjNDYxNWE1ZGI5ZDU4
YTc3NTgxNjIwZTBjMzg1NjE5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTRGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNEZWRpY2F0ZWRXb3JrZXJHbG9i
YWxTY29wZS5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAi
RE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIkpT
V29ya2VyR2xvYmFsU2NvcGUuaCIKIApAQCAtNDEsNiArNDIsNyBAQCBjbGFzcyBKU0RlZGljYXRl
ZFdvcmtlckdsb2JhbFNjb3BlIDogcHVibGljIEpTV29ya2VyR2xvYmFsU2NvcGUgewogCiAgICAg
REVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1
Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpEZWRpY2F0ZWRXb3JrZXJHbG9iYWxTY29wZTsK
ICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
SlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBl
KQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2Jh
bE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6R2xvYmFsT2JqZWN0VHlwZSwg
U3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFN0YXIuaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU0V4cG9zZWRTdGFyLmgKaW5k
ZXggNmZkMzE1ZjI0ZDJiYmMwY2EyM2Y5YzI3Mjc0NzRjZjczMjg0ZDcxMS4uOTNiYmFmOGZmZjY5
YjYwNjJmYzEzZWM4NmNlMmRmZmYwYzI1NjlhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3NlZFN0YXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNFeHBvc2VkU3Rhci5oCkBAIC0yMCw2ICsy
MCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2lu
Y2x1ZGUgIkV4cG9zZWRTdGFyLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVk
ZSAiSlNFdmVudFRhcmdldC5oIgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU0V4cG9zZWRTdGFy
IDogcHVibGljIEpTRXZlbnRUYXJnZXQgewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3Rh
dGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVy
ZUlEOjpFeHBvc2VkU3RhcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6
OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJl
OjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6
T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTRXhwb3Nl
ZFRvV29ya2VyQW5kV2luZG93LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3cuaAppbmRleCAzZWIxNTJkNWU4N2QyM2Zk
ZWE0YjEzN2M4MmMwNWI3MmJmMDE4MjI2Li44OTZhMGRkNmY4MmFlMTY2ZWQ5YjM1Y2VhOWMwMTM3
NTBlMjA1YzdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3cuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3cuaApAQCAt
MjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMu
aCIKICNpbmNsdWRlICJFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3cuaCIKICNpbmNsdWRlICJKU0RP
TUNvbnZlcnREaWN0aW9uYXJ5LmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCkBAIC00NCw2
ICs0NSw3IEBAIGNsYXNzIEpTRXhwb3NlZFRvV29ya2VyQW5kV2luZG93IDogcHVibGljIEpTRE9N
V3JhcHBlcjxFeHBvc2VkVG9Xb3JrZXJBbmRXaW5kb3c+CiAKICAgICBERUNMQVJFX0lORk87CiAK
KyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9N
U3RydWN0dXJlSUQ6OkV4cG9zZWRUb1dvcmtlckFuZFdpbmRvdzsKICAgICBzdGF0aWMgSlNDOjpT
dHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVj
dCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAg
cmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBl
LCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCks
IEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUuaCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1BhaW50V29ya2xldEdsb2JhbFNjb3BlLmgKaW5k
ZXggYWQwMjk0MDZkNmI5NTBjOWIxMzMzZjRhMzRmMTViNWJmZjY2YWJjNC4uNjdkNjIxNjY5ZDI4
ZTkxMTkzOTMzMDRlNGUyMjQzZTg1ODRiMzA4YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTUGFpbnRXb3JrbGV0R2xvYmFsU2NvcGUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNQYWludFdvcmtsZXRH
bG9iYWxTY29wZS5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVk
ZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUg
IkpTV29ya2xldEdsb2JhbFNjb3BlLmgiCiAKQEAgLTQxLDYgKzQyLDcgQEAgY2xhc3MgSlNQYWlu
dFdvcmtsZXRHbG9iYWxTY29wZSA6IHB1YmxpYyBKU1dvcmtsZXRHbG9iYWxTY29wZSB7CiAKICAg
ICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0
cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlBhaW50V29ya2xldEdsb2JhbFNjb3BlOwog
ICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBK
U0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUp
CiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFs
T2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpHbG9iYWxPYmplY3RUeXBlLCBT
dHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNTZXJ2aWNlV29ya2VyR2xvYmFs
U2NvcGUuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NlcnZp
Y2VXb3JrZXJHbG9iYWxTY29wZS5oCmluZGV4IGRmOTA0YWMzMzdjMjczNDA3OTgyZThhODRmNjll
ODU4N2UzYjA5M2IuLmFlY2E0NTZmZGNjMjQwNGIxZGQ2YWZhZTBkNTY0ZWFmNTBmZGZmZWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NlcnZp
Y2VXb3JrZXJHbG9iYWxTY29wZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5oCkBAIC0yMCw2ICsyMCw3IEBA
CiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUg
IkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIkpTV29ya2VyR2xvYmFsU2NvcGUuaCIKIApAQCAt
NDEsNiArNDIsNyBAQCBjbGFzcyBKU1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSA6IHB1YmxpYyBK
U1dvcmtlckdsb2JhbFNjb3BlIHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBj
b25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6
U2VydmljZVdvcmtlckdsb2JhbFNjb3BlOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3Jl
YXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpT
dHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUlu
Zm8oSlNDOjpHbG9iYWxPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpO
b25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNTaGFkb3dSZWFsbUdsb2JhbFNjb3BlLmgKaW5kZXggNzNiZWJh
YTM4Nzk4MWM3ZTk1YzhmOTQxYmQzNGI2MDhkYzQ0MzAyOS4uZjQ5OWNhNWRiMWE1MDRlZDEwZmUy
OWFjNjE0OWRhMTlmNTdiYTZhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTU2hhZG93UmVhbG1HbG9iYWxTY29wZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYWRvd1JlYWxtR2xvYmFsU2NvcGUu
aApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVj
dHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJE
ZXN0cm95ZWQuaD4KIApAQCAtNDIsNiArNDMsNyBAQCBjbGFzcyBKU1NoYWRvd1JlYWxtR2xvYmFs
U2NvcGUgOiBwdWJsaWMgSlNET01XcmFwcGVyPFNoYWRvd1JlYWxtR2xvYmFsU2NvcGU+IHsKIAog
ICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQg
c3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6U2hhZG93UmVhbG1HbG9iYWxTY29wZTsK
ICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
SlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBl
KQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2Jh
bE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6R2xvYmFsT2JqZWN0VHlwZSwg
U3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hhcmVkV29ya2VyR2xvYmFs
U2NvcGUuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1NoYXJl
ZFdvcmtlckdsb2JhbFNjb3BlLmgKaW5kZXggY2MzZDM3MzZmNjNlMDEyNTJkOTI0ZjRjZjM5NTQ0
N2UwOTRjNjE0YS4uMmUyZmE3N2Q0ZmY5NGQwMjgzYzQ0NGI1ODRiZWM5YWUwYTYxNzRiOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTU2hhcmVk
V29ya2VyR2xvYmFsU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNTaGFyZWRXb3JrZXJHbG9iYWxTY29wZS5oCkBAIC0yMCw2ICsyMCw3IEBACiAK
ICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpT
RE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIkpTV29ya2VyR2xvYmFsU2NvcGUuaCIKIApAQCAtNDEs
NiArNDIsNyBAQCBjbGFzcyBKU1NoYXJlZFdvcmtlckdsb2JhbFNjb3BlIDogcHVibGljIEpTV29y
a2VyR2xvYmFsU2NvcGUgewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0
ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpTaGFy
ZWRXb3JrZXJHbG9iYWxTY29wZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0
cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBK
U0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0
dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpT
Qzo6R2xvYmFsT2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJy
YXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdENFUmVhY3Rpb25zLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0Q0VSZWFjdGlvbnMuaAppbmRleCBiNDI0MGYwNzUzZjUwMjcwNjBjN2Q4MTQ2
NDdjYmIwMDBlMDgxNWM3Li5hNjQ5Mjg5OGZlNzk4MTFlODhmYjNhZTVkZGJmYjJkNTZhZjcyM2Vm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0Q0VSZWFjdGlvbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0Q0VSZWFjdGlvbnMuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9u
Y2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIu
aCIKICNpbmNsdWRlICJUZXN0Q0VSZWFjdGlvbnMuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0
cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0Q0VSZWFjdGlvbnMgOiBwdWJs
aWMgSlNET01XcmFwcGVyPFRlc3RDRVJlYWN0aW9ucz4gewogCiAgICAgREVDTEFSRV9JTkZPOwog
CisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERP
TVN0cnVjdHVyZUlEOjpUZXN0Q0VSZWFjdGlvbnM7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJl
KiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBK
U0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpU
eXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5v
bkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllci5oCmluZGV4
IDA5YzRkZTNkZDFmZjBhMzhiMjg5ZmY1YjVjZTdiMDk3ZGQzYzVlODAuLmFjYWZiODhjMjIyNzgw
ZGVjYmUzY2E5ZDM3ODVkZDI1MDY4YTIxY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDRVJlYWN0aW9uc1N0cmluZ2lmaWVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENFUmVhY3Rp
b25zU3RyaW5naWZpZXIuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2lu
Y2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNs
dWRlICJUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmllci5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRl
c3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RDRVJlYWN0aW9uc1N0cmlu
Z2lmaWVyIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZgogCiAg
ICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBz
dHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0Q0VSZWFjdGlvbnNTdHJpbmdpZmll
cjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90
eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGds
b2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3Ry
dWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxUcmFjZXIuaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDYWxsVHJhY2VyLmgK
aW5kZXggZTMwNjExODZiNjViZTkxYjY3ZjU0YmUzM2QxYzMzYTMyOTIzYjU4MC4uMzM1ZmU0MWI0
YjcwOTAxYmMwNmRkNTNhNzUzODYyYmRkZjRmMDM3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdENhbGxUcmFjZXIuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2FsbFRyYWNlci5oCkBA
IC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJl
cy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RDYWxsVHJhY2Vy
LmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00Myw2ICs0NCw3IEBAIGNs
YXNzIEpTVGVzdENhbGxUcmFjZXIgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RDYWxsVHJhY2Vy
PiB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVj
dHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RDYWxsVHJhY2VyOwog
ICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBK
U0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUp
CiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFs
T2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1
cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q2xhc3NXaXRoSlNCdWlsdGluQ29u
c3RydWN0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvci5oCmluZGV4IGYzZmMwNGNkMDViY2M4NTZm
OThmZGNlOTVlNTM4YTIzZWE5NGI3YjcuLmZiNjdhYTIzOTExZTQ2ZDRkYTVjNDgzNDNiMjQzYjQy
ZWNlZTM2N2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDbGFzc1dpdGhKU0J1aWx0aW5D
b25zdHJ1Y3Rvci5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVk
ZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUg
IlRlc3RDbGFzc1dpdGhKU0J1aWx0aW5Db25zdHJ1Y3Rvci5oIgogI2luY2x1ZGUgPHd0Zi9OZXZl
ckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RDbGFzc1dpdGhKU0J1
aWx0aW5Db25zdHJ1Y3RvciA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdENsYXNzV2l0aEpTQgog
CiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJ
RCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0Q2xhc3NXaXRoSlNCdWlsdGlu
Q29uc3RydWN0b3I7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUo
SlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1Zh
bHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3Jl
YXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVj
dFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRp
b25hbEluY2x1ZGVzLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcy5oCmluZGV4IDBhMTVlNjc3ZWMyZDI0MDhiZTljMTJk
YTQzNWMzNTMwN2Q0ZTNiYTcuLmRmMzZmNWNhZTUyZGM3NmFmZTgzMDFlMWQzM2NlYmI3NDNjOTBl
OTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdENvbmRpdGlvbmFsSW5jbHVkZXMuaApAQCAtMjAsNiArMjAs
NyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNs
dWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0Q29uZGl0aW9uYWxJbmNsdWRlcy5o
IgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFz
cyBKU1Rlc3RDb25kaXRpb25hbEluY2x1ZGVzIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0Q29u
ZGl0aW9uYWxJbmNsdWRlcz4gewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNv
bnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpU
ZXN0Q29uZGl0aW9uYWxJbmNsdWRlczsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0
ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3Ry
dWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZv
KEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlLmgKaW5kZXggYzFjODNh
OTkwODUzMWNkMWU1ZjE4YjNmZmQ1ZDUzMGY2ZTNhNjE1Yi4uMzExNDQ3ZDM4YWEyOTUzYzI4MjA1
OWUwOTM0NWQ4Y2UyNTAxNTNiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Q29uZGl0aW9uYWxseVJl
YWRXcml0ZS5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAi
RE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRl
c3RDb25kaXRpb25hbGx5UmVhZFdyaXRlLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVk
Lmg+CkBAIC00Myw2ICs0NCw3IEBAIGNsYXNzIEpTVGVzdENvbmRpdGlvbmFsbHlSZWFkV3JpdGUg
OiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RDb25kaXRpb25hbGx5UmVhZFdyCiAKICAgICBERUNM
QVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVy
ZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RDb25kaXRpb25hbGx5UmVhZFdyaXRlOwogICAg
IHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6
OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAg
ICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2Jq
ZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVG
bGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RE9NSklULmggYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RE9NSklULmgKaW5kZXggMGVkYjg0YmY3
ZWEyYjMxZWRhNjcwZTM1MjQ2YzI4NjAwMTNkN2E3MC4uMTU0MmQwNmZmNzAwZjYzZGMzMDhiZGE1
NTBmYjIzN2ZjNmI2ZTNlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdERPTUpJVC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RET01KSVQuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJh
Z21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdy
YXBwZXIuaCIKICNpbmNsdWRlICJKU05vZGUuaCIKICNpbmNsdWRlICJUZXN0RE9NSklULmgiCkBA
IC00Myw2ICs0NCw3IEBAIGNsYXNzIEpTVGVzdERPTUpJVCA6IHB1YmxpYyBKU05vZGUgewogCiAg
ICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBz
dHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0RE9NSklUOwogICAgIHN0YXRpYyBK
U0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAg
ICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90
b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpKU1R5cGUoSlNOb2RlVHlwZSksIFN0cnVjdHVyZUZs
YWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OLmggYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTi5oCmlu
ZGV4IGY0N2Q2YzgwOTY4MGE2ODdjZTY5OTI3NDNlMjNiZDBmMDNmZDFkZGQuLjMyY2RhOWU3NWQz
NzU0MGRmNmJkZDRjZTI0ZjhiMTY3MjVjN2RkYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT04u
aApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVj
dHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0RGVmYXVs
dFRvSlNPTi5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQs
NyBAQCBjbGFzcyBKU1Rlc3REZWZhdWx0VG9KU09OIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0
RGVmYXVsdFRvSlNPTj4gewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0
ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0
RGVmYXVsdFRvSlNPTjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVy
ZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpT
VmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpj
cmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2Jq
ZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1
bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZC5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZC5oCmluZGV4
IDI4MTdjOTc5ODdkY2M2ZmExZDBlNDgzNzMyNWRhNGJjNmUzZjk2NTcuLjQwYzBkNGQyMDkzZWM2
ZWYwY2EwNTY2MWJkYzY4OTA4OTc3YTE0YmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9z
ZWQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3By
YWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01X
cmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdERlZmF1bHRUb0pTT05GaWx0ZXJlZEJ5RXhwb3NlZC5o
IgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFz
cyBKU1Rlc3REZWZhdWx0VG9KU09ORmlsdGVyZWRCeUV4cG9zZWQgOiBwdWJsaWMgSlNET01XcmFw
cGVyPFRlc3REZWZhdWx0VG9KUwogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNv
bnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpU
ZXN0RGVmYXVsdFRvSlNPTkZpbHRlcmVkQnlFeHBvc2VkOwogICAgIHN0YXRpYyBKU0M6OlN0cnVj
dHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBn
bG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1
cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpT
Qzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlND
OjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluZGlyZWN0SW5oZXJpdGFuY2UuaCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5k
aXJlY3RJbmhlcml0YW5jZS5oCmluZGV4IDg2NzNjNTEzM2I0ZTAyNzZjNDgzOTMxNjM1NjlkNTU5
MGU2MzQ4N2MuLjU0ZjdlMGU5MmI2YTZmZGJmMmE2YTgxODQxZmY2MTA5NDQwNDI4YTkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZh
dWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5jZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5kaXJlY3RJbmhlcml0YW5j
ZS5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3Ry
dWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIkpTVGVzdERl
ZmF1bHRUb0pTT05Jbmhlcml0LmgiCiAjaW5jbHVkZSAiVGVzdERlZmF1bHRUb0pTT05JbmRpcmVj
dEluaGVyaXRhbmNlLmgiCkBAIC00Miw2ICs0Myw3IEBAIGNsYXNzIEpTVGVzdERlZmF1bHRUb0pT
T05JbmRpcmVjdEluaGVyaXRhbmNlIDogcHVibGljIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0
CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVy
ZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3REZWZhdWx0VG9KU09OSW5k
aXJlY3RJbmhlcml0YW5jZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6
OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJl
OjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6
T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERl
ZmF1bHRUb0pTT05Jbmhlcml0LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQuaAppbmRleCAyNDQ5M2FjNjMwOWI1OWU2
OWJhMWViNzA0YjI3YzI4ZGYyYTg4ZTJlLi4wMzBmYWZiYTI1MmM4YWVlMjA1NGViZDc0YWM3MTM3
MDFkOWRjYjRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQuaApAQCAt
MjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMu
aCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJKU1Rlc3REZWZhdWx0VG9K
U09OLmgiCiAjaW5jbHVkZSAiVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0LmgiCkBAIC00Miw2ICs0
Myw3IEBAIGNsYXNzIEpTVGVzdERlZmF1bHRUb0pTT05Jbmhlcml0IDogcHVibGljIEpTVGVzdERl
ZmF1bHRUb0pTT04gewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhw
ciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0RGVm
YXVsdFRvSlNPTkluaGVyaXQ7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1
Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlND
OjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVy
ZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6
Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RE
ZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXRGaW5hbC5oCmluZGV4IDEwZDYw
MjQ1OTM3MDBlNGM5MmUxZjliODQwYTIzYjE2ZTMzZDFjNjQuLmJkYTA3YjgwMzQ0MDUzZTc3NTIy
YTVhZGRmMmU3Yjg2NzFiNjFmNjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdEZpbmFsLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlZmF1bHRUb0pT
T05Jbmhlcml0RmluYWwuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2lu
Y2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNs
dWRlICJKU1Rlc3REZWZhdWx0VG9KU09OSW5oZXJpdC5oIgogI2luY2x1ZGUgIlRlc3REZWZhdWx0
VG9KU09OSW5oZXJpdEZpbmFsLmgiCkBAIC00Miw2ICs0Myw3IEBAIGNsYXNzIEpTVGVzdERlZmF1
bHRUb0pTT05Jbmhlcml0RmluYWwgOiBwdWJsaWMgSlNUZXN0RGVmYXVsdFRvSlNPTkluaGVyaXQg
ewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1
cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0RGVmYXVsdFRvSlNPTklu
aGVyaXRGaW5hbDsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFs
dWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVh
dGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0
VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlbGVnYXRl
VG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1dGUuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlLmgK
aW5kZXggZDBlZmFkZTU1YzU3YjRmMGU4ZWM4NmY5NDgxYzE2OGNmNTI0ZWM5Mi4uM2Q0MjI4YzQz
YWU2ZGQyY2VmNjRkZWM0YWQwYjA4ZGU3ZWFmZjdiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0
aWNBdHRyaWJ1dGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0RGVsZWdhdGVUb1NoYXJlZFN5bnRoZXRpY0F0dHJpYnV0ZS5oCkBAIC0yMCw2ICsy
MCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2lu
Y2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3REZWxlZ2F0ZVRvU2hhcmVkU3lu
dGhldGljQXR0cmlidXRlLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00
Myw2ICs0NCw3IEBAIGNsYXNzIEpTVGVzdERlbGVnYXRlVG9TaGFyZWRTeW50aGV0aWNBdHRyaWJ1
dGUgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3REZWxlZ2F0CiAKICAgICBERUNMQVJFX0lORk87
CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0g
RE9NU3RydWN0dXJlSUQ6OlRlc3REZWxlZ2F0ZVRvU2hhcmVkU3ludGhldGljQXR0cmlidXRlOwog
ICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBK
U0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUp
CiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFs
T2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1
cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RG9tYWluU2VjdXJpdHkuaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REb21haW5TZWN1cml0
eS5oCmluZGV4IDhiMzk4NDc0N2MyOGExM2YzOTU5MmNlZTI1ZjYxMjUyMzMzNDQ4ZDAuLjkxNWM3
OGNkYmUxNDNkZmRhNTAxYzQ0YjVhYjNmNmQ1ZGVmNTY2MWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REb21haW5TZWN1cml0eS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3REb21haW5T
ZWN1cml0eS5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAi
RE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRl
c3REb21haW5TZWN1cml0eS5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAt
NDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3REb21haW5TZWN1cml0eSA6IHB1YmxpYyBKU0RPTVdy
YXBwZXI8VGVzdERvbWFpblNlY3VyaXR5PiB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBz
dGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0
dXJlSUQ6OlRlc3REb21haW5TZWN1cml0eTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNy
ZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6
U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJ
bmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJy
YXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdEVuYWJsZWRCeVNldHRpbmcuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RFbmFibGVkQnlTZXR0aW5nLmgKaW5kZXggYzc2OGE2YWRkYjlkOTJi
M2U3NDczN2FlM2FjMDI0YTY2NWI2MDM4NC4uMmZkNjgxOThmYzYxZGM3ZWM5NmFjMGViYmFmMDA4
ZWM5ZmY0ZjY5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdEVuYWJsZWRCeVNldHRpbmcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxlZEJ5U2V0dGluZy5oCkBAIC0yMCw2ICsy
MCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2lu
Y2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RFbmFibGVkQnlTZXR0aW5nLmgi
CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00Myw2ICs0NCw3IEBAIGNsYXNz
IEpTVGVzdEVuYWJsZWRCeVNldHRpbmcgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RFbmFibGVk
QnlTZXR0aW5nPiB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHBy
IERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RFbmFi
bGVkQnlTZXR0aW5nOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJl
KEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNW
YWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNy
ZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmpl
Y3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0RW5hYmxl
ZEZvckNvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RFbmFibGVkRm9yQ29udGV4dC5oCmluZGV4IDYwZWY0N2M5ZWE5OWJhMDJkZGE2YTY1M2Ux
NmJkZTQxNzVlYmY0MzIuLmFmNmM2YjQ1OWM1MTNlZjUxMDE4ZWVkYTg3ODAwMTNkMGE0YTc4N2Eg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RFbmFibGVkRm9yQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RFbmFibGVkRm9yQ29udGV4dC5oCkBAIC0yMCw2ICsyMCw3IEBACiAK
ICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpT
RE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RFbmFibGVkRm9yQ29udGV4dC5oIgogI2luY2x1
ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RF
bmFibGVkRm9yQ29udGV4dCA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdEVuYWJsZWRGb3JDb250
ZXh0PiB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0
cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RFbmFibGVkRm9y
Q29udGV4dDsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUg
cHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUo
dm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlw
ZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50Q29uc3Ry
dWN0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RF
dmVudENvbnN0cnVjdG9yLmgKaW5kZXggNWU0NjY0NTc3NzAyNzg0YzY0MDVlMjlkNjU5MjljOWMz
MWUzMzAzOC4uZGEwMWI3ZTEwYzFjZjA5Y2EyNGNjMzdhOTc5OThjZWI1N2MzZjNhNCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEV2ZW50
Q29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0RXZlbnRDb25zdHJ1Y3Rvci5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEg
b25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NQ29udmVy
dERpY3Rpb25hcnkuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJKU0V2
ZW50LmgiCkBAIC00Myw2ICs0NCw3IEBAIGNsYXNzIEpTVGVzdEV2ZW50Q29uc3RydWN0b3IgOiBw
dWJsaWMgSlNFdmVudCB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3Rl
eHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RF
dmVudENvbnN0cnVjdG9yOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0
dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6
SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6
OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpK
U1R5cGUoSlNFdmVudFR5cGUpLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJh
eSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0RXZlbnRUYXJnZXQuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RFdmVudFRhcmdldC5oCmluZGV4IDkzOTFkMmEwMWE0OGU3MTBhN2MzMWMwOWI0
Njk3ODc3YjgyZDkwN2QuLjk0ZDliM2M3NDBkYjEwODdmMWE0ZWFhODllMzE5MGZjMWU0NzUzYmMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RFdmVudFRhcmdldC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RFdmVudFRhcmdldC5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25j
ZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5o
IgogI2luY2x1ZGUgIkpTRXZlbnRUYXJnZXQuaCIKICNpbmNsdWRlICJUZXN0RXZlbnRUYXJnZXQu
aCIKQEAgLTQ3LDYgKzQ4LDcgQEAgY2xhc3MgSlNUZXN0RXZlbnRUYXJnZXQgOiBwdWJsaWMgSlNF
dmVudFRhcmdldCB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHBy
IERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RFdmVu
dFRhcmdldDsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUg
cHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUo
dm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlw
ZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEV4Y2VwdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdEV4Y2VwdGlvbi5oCmluZGV4IDRkZmY5NjBiODJhZGU0YWQ1ZTI4MTZiN2VkN2MwODRj
Yzc0ZTUzN2MuLjM1OTNjMWI0MWEzMjRhZjRlZWJlYjNkMzYzMWEyOTcyNzQyNmVlNjkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RFeGNl
cHRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0RXhjZXB0aW9uLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNs
dWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVk
ZSAiVGVzdEV4Y2VwdGlvbi5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0Vycm9yUHJvdG90
eXBlLmg+CkBAIC00NCw2ICs0NSw3IEBAIGNsYXNzIEpTVGVzdEV4Y2VwdGlvbiA6IHB1YmxpYyBK
U0RPTVdyYXBwZXI8VGVzdEV4Y2VwdGlvbj4gewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAg
c3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVj
dHVyZUlEOjpUZXN0RXhjZXB0aW9uOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRl
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1
Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8o
SlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVBZGRPcGFxdWVSb290LmgKaW5kZXggZTQ1NTliYjg1
MTA0Y2NmZGJlZTIxZmVhM2EyZmMxYjFmZDRlMDliNi4uMWQxNzA3ZjE4ZTU2NGY2NjdlMmU0ODQ1
NTM3MmNkM2M1NzNmYzJiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJv
b3QuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0
cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0R2Vu
ZXJhdGVBZGRPcGFxdWVSb290LmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBA
IC00Myw2ICs0NCw3IEBAIGNsYXNzIEpTVGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vdCA6IHB1Ymxp
YyBKU0RPTVdyYXBwZXI8VGVzdEdlbmVyYXRlQWRkT3BhcXVlUm9vCiAKICAgICBERUNMQVJFX0lO
Rk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4
ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RHZW5lcmF0ZUFkZE9wYXF1ZVJvb3Q7CiAgICAgc3RhdGlj
IEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAg
ICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHBy
b3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwg
aW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2VuZXJhdGVJc1JlYWNoYWJs
ZS5oCmluZGV4IGMxZjc5MDkxZGM3MTg3M2I1NDU4NTI4ZTU1MDlmMjkwYmViOThiNGIuLmI3OGFh
MmZmOWI0YmY0ZWRkNThiZjk1ZmQ0MGJkMDlmYTk1ZDYyMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHZW5lcmF0ZUlzUmVhY2hhYmxl
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdl
bmVyYXRlSXNSZWFjaGFibGUuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAor
I2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNp
bmNsdWRlICJUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZS5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRl
c3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RHZW5lcmF0ZUlzUmVhY2hh
YmxlIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZT4gewogCiAg
ICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBz
dHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0R2VuZXJhdGVJc1JlYWNoYWJsZTsK
ICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwg
SlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBl
KQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2Jh
bE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0
dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdsb2JhbE9iamVjdC5oIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEdsb2JhbE9iamVjdC5o
CmluZGV4IDliMDhjMDkxZDE1MGZiNTVjMzVmM2NlOTNmOTZkZjBhY2FkZmJjMDQuLjBmZWI1Yzg2
ODE1MDk0NTRkMzZkZTI0ZGFiOGJmM2EwNTFiYmQ2YTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RHbG9iYWxPYmplY3QuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0R2xvYmFsT2JqZWN0
LmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1
Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdEdsb2Jh
bE9iamVjdC5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQs
NyBAQCBjbGFzcyBKU1Rlc3RHbG9iYWxPYmplY3QgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RH
bG9iYWxPYmplY3Q+IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4
cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdEds
b2JhbE9iamVjdDsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFs
dWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVh
dGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6R2xvYmFs
T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdElu
ZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmgKaW5kZXggYzQ2YzNl
ZDc4NWJmMzI3NjdjM2E0YzZiMGE2ZjYxODBiZDlmNDFiYi4uNWI2OTBmZTA4Njk5ZGVlNzAzOTFh
YjIzZDg4OTY2YmEzOWE4NWFiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRl
ck5vSWRlbnRpZmllci5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5j
bHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1
ZGUgIlRlc3RJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVy
RGVzdHJveWVkLmg+CkBAIC00OSw2ICs1MCw3IEBAIGNsYXNzIEpTVGVzdEluZGV4ZWRTZXR0ZXJO
b0lkZW50aWZpZXIgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RJbmRleGVkU2V0dGVyTm9JCiAK
ICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlE
IHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RJbmRleGVkU2V0dGVyTm9JZGVu
dGlmaWVyOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6
Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBw
cm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2
bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBl
LCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9u
LmgKaW5kZXggYmVkMDQ4MDdiYmI3NmQ5OTYzOTc4MTIxNDhjMDE3MzlkM2YyMThkNC4uMjE2NjY1
OGM5ZmU1MjY4ZWVlMmVkM2I3MzQ4ZWM1OGQwMDM5NTRhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2lu
Z0V4Y2VwdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uaApAQCAtMjAsNiArMjAsNyBA
QAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRl
ICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0SW5kZXhlZFNldHRlclRocm93aW5nRXhj
ZXB0aW9uLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00OSw2ICs1MCw3
IEBAIGNsYXNzIEpTVGVzdEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbiA6IHB1YmxpYyBK
U0RPTVdyYXBwZXI8VGVzdEluZGV4ZWRTZXR0CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBz
dGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0
dXJlSUQ6OlRlc3RJbmRleGVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb247CiAgICAgc3RhdGljIEpT
Qzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAg
ICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3Rv
dHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5m
bygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbmRleGVkU2V0dGVyV2l0aElk
ZW50aWZpZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIuaAppbmRleCAwY2JlYzJiNGM1MTJlZGMzZTFi
ZDE5ZjQ2MDhkM2ZjY2EyOGRiZjY5Li41OGExMDExZjM0ZGE0MDc2ZWIyZWQ1YjZkZmRmNTE3YTY2
MWFiZDgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRp
Zmllci5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9N
U3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RJ
bmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95
ZWQuaD4KQEAgLTQ5LDYgKzUwLDcgQEAgY2xhc3MgSlNUZXN0SW5kZXhlZFNldHRlcldpdGhJZGVu
dGlmaWVyIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0SW5kZXhlZFNldHRlclcKIAogICAgIERF
Q0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0
dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdEluZGV4ZWRTZXR0ZXJXaXRoSWRlbnRpZmll
cjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90
eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGds
b2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3Ry
dWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdElu
dGVyZmFjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0SW50ZXJmYWNlLmNwcAppbmRleCBlY2IwNTQ4NDA2ZjFkZTRmZGE0YmRhNWQ5NjQ3ZGZhNzkz
MzMyMTMzLi45MDcxNTU5ODI2MzYyYWVlNTRmYTgzMWRhODk4ODU3NjE0YjBiOGRjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJm
YWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0SW50ZXJmYWNlLmNwcApAQCAtMTEwOSw2ICsxMTA5LDcgQEAgY2xhc3MgVGVzdEludGVyZmFj
ZUl0ZXJhdG9yIGZpbmFsIDogcHVibGljIFRlc3RJbnRlcmZhY2VJdGVyYXRvckJhc2UgewogICAg
ICAgICApOwogICAgIH0KIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3Ry
dWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdEludGVyZmFjZUl0ZXJhdG9yOwogICAg
IHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6
OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAg
ICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2Jq
ZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVG
bGFncyksIGluZm8oKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0SW50ZXJmYWNlLmgKaW5kZXggNzY5ZjJkZTkyNDFkNzIxNTc3
NGM3MGRiZTM5N2MyY2NhYzNjNDhiZi4uOGI2NzkwOTUzMzY3Y2I4MjVkZmQ5NzYyNjA1MWU1YmQ2
ZmM5YTYwYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdEludGVyZmFjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RJbnRlcmZhY2UuaApAQCAtMjIsNiArMjIsNyBAQAogCiAjaWYgRU5B
QkxFKENvbmRpdGlvbjEpIHx8IEVOQUJMRShDb25kaXRpb24yKQogCisjaW5jbHVkZSAiRE9NU3Ry
dWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RJbnRl
cmZhY2UuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ3LDYgKzQ4LDcg
QEAgY2xhc3MgV0VCQ09SRV9FWFBPUlQgSlNUZXN0SW50ZXJmYWNlIDogcHVibGljIEpTRE9NV3Jh
cHBlcjxUZXN0SW50ZXJmYWNlPiB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMg
Y29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6
OlRlc3RJbnRlcmZhY2U7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1
cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpK
U1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6
Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9i
amVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJbnRl
cmZhY2VMZWFkaW5nVW5kZXJzY29yZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlLmgKaW5kZXggODY0OGNl
YTU1MjFlZDM0NGZhZjRkODk2M2JkY2QwODE3OGRlNjNhYi4uZTQ3YzkyNzc4ZTQ5NDZmY2M2MGFi
YTA0ZDAxNTA3ZTgyMGU3MWE5NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEludGVyZmFjZUxl
YWRpbmdVbmRlcnNjb3JlLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNp
bmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5j
bHVkZSAiVGVzdEludGVyZmFjZUxlYWRpbmdVbmRlcnNjb3JlLmgiCiAjaW5jbHVkZSA8d3RmL05l
dmVyRGVzdHJveWVkLmg+CkBAIC00Myw2ICs0NCw3IEBAIGNsYXNzIEpTVGVzdEludGVyZmFjZUxl
YWRpbmdVbmRlcnNjb3JlIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0SW50ZXJmYWNlTGVhZGlu
CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVy
ZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RJbnRlcmZhY2VMZWFkaW5n
VW5kZXJzY29yZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFs
dWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVh
dGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0
VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEl0ZXJhYmxl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJdGVy
YWJsZS5jcHAKaW5kZXggNWY0ZmE2OWZhOGQxYjAxMTkxZDdhNDg0MjFiZWM5MzFhODk1NmFmMi4u
OTdlZTI3M2ZhZmE4ZjU2ZDQ4MjMyYTEzYjY1NjFiOGUxNWZiMzJiZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEl0ZXJhYmxlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SXRlcmFi
bGUuY3BwCkBAIC0yMDQsNiArMjA0LDcgQEAgY2xhc3MgVGVzdEl0ZXJhYmxlSXRlcmF0b3IgZmlu
YWwgOiBwdWJsaWMgVGVzdEl0ZXJhYmxlSXRlcmF0b3JCYXNlIHsKICAgICAgICAgKTsKICAgICB9
CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0g
RE9NU3RydWN0dXJlSUQ6OlRlc3RJdGVyYWJsZUl0ZXJhdG9yOwogICAgIHN0YXRpYyBKU0M6OlN0
cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICBy
ZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUs
IEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0SXRlcmFibGUuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RJdGVyYWJsZS5oCmluZGV4IDE2MzkxOTdkNmJhNTc0ODAxNDI2MThiNWNmNzE0MmJhMDVi
OWUzMmYuLjQxODQxZjUwYWFhYTY4MzY3MGQ5NmU5NWNmNTgwM2E0MWVlZTkyMjYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJdGVyYWJs
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RJ
dGVyYWJsZS5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAi
RE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRl
c3RJdGVyYWJsZS5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiAr
NDQsNyBAQCBjbGFzcyBKU1Rlc3RJdGVyYWJsZSA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdEl0
ZXJhYmxlPiB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERP
TVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RJdGVyYWJs
ZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90
eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGds
b2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3Ry
dWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEpTQnVpbHRpbkNvbnN0cnVj
dG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SlNC
dWlsdGluQ29uc3RydWN0b3IuaAppbmRleCBjYWJkYTljOTA0ZTY0NjM0ZjI1M2JhYTE5NGYwNmI0
MzRjMTA1ODAyLi43NzM3Y2NiNTczY2MwZjFhZDJkMjFkZWY1YzZmMWZjNTU0MDI2MDkzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0SlNC
dWlsdGluQ29uc3RydWN0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0SlNCdWlsdGluQ29uc3RydWN0b3IuaApAQCAtMjAsNiArMjAsNyBAQAog
CiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJK
U0RPTVdyYXBwZXIuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNDAsNiArNDEsNyBAQCBj
bGFzcyBKU1Rlc3RKU0J1aWx0aW5Db25zdHJ1Y3RvciA6IHB1YmxpYyBKU0RPTU9iamVjdCB7CiAK
ICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlE
IHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RKU0J1aWx0aW5Db25zdHJ1Y3Rv
cjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90
eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGds
b2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3Ry
dWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeUZhY3RvcnlGdW5j
dGlvbi5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExl
Z2FjeUZhY3RvcnlGdW5jdGlvbi5oCmluZGV4IDdkYWM4ZTVmZTJmZWY5MTY3YjkwYWVjMmU2MjMw
MDM1MDBhMTVjMjIuLmMyYjRjOWFkN2UwNDUyY2UwNmJjMmQ4MzIwMjlmMjBlOTgwZDZjZGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RM
ZWdhY3lGYWN0b3J5RnVuY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uLmgKQEAgLTIwLDYgKzIwLDcg
QEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVk
ZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdExlZ2FjeUZhY3RvcnlGdW5jdGlvbi5o
IgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFz
cyBKU1Rlc3RMZWdhY3lGYWN0b3J5RnVuY3Rpb24gOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RM
ZWdhY3lGYWN0b3J5RnVuY3RpbwogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNv
bnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpU
ZXN0TGVnYWN5RmFjdG9yeUZ1bmN0aW9uOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3Jl
YXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpT
dHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUlu
Zm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJh
eSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdC5oCmluZGV4IDEy
NjRiOTg4YmRlNTlmMmI1ZTllNzlhZmVjNTg1YTM2MDY0MzhlNmYuLmJiNTA2NDJiMzQ3NDM5YjJk
N2FmZWQxYzFjNmFhMzYwOGU1OTQ2NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lOb0ludGVyZmFjZU9iamVjdC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RMZWdhY3lOb0lu
dGVyZmFjZU9iamVjdC5oCkBAIC0yMiw2ICsyMiw3IEBACiAKICNpZiBFTkFCTEUoQ29uZGl0aW9u
MjIpIHx8IEVOQUJMRShDb25kaXRpb24yMykKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIK
ICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0TGVnYWN5Tm9JbnRlcmZh
Y2VPYmplY3QuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ1LDYgKzQ2
LDcgQEAgY2xhc3MgSlNUZXN0TGVnYWN5Tm9JbnRlcmZhY2VPYmplY3QgOiBwdWJsaWMgSlNET01X
cmFwcGVyPFRlc3RMZWdhY3lOb0ludGVyZmFjZU8KIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAg
IHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1
Y3R1cmVJRDo6VGVzdExlZ2FjeU5vSW50ZXJmYWNlT2JqZWN0OwogICAgIHN0YXRpYyBKU0M6OlN0
cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICBy
ZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUs
IEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwg
SlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElucy5oIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMu
aAppbmRleCBlOWJkMjk4NDdlNTJjMGQ5NDQ4MjNlMzA1ZjgxNDVjNTYxOWM0ODI2Li45NTc5N2Iy
NjA1YzNmZDMwZDQ4YmM3ZTczMzc3NjRkMTA3YWQ1OTAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TGVnYWN5T3ZlcnJpZGVCdWlsdElu
cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RM
ZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNl
CiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgi
CiAjaW5jbHVkZSAiVGVzdExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuaCIKICNpbmNsdWRlIDx3dGYv
TmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ2LDYgKzQ3LDcgQEAgY2xhc3MgSlNUZXN0TGVnYWN5T3Zl
cnJpZGVCdWlsdElucyA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdExlZ2FjeU92ZXJyaWRlQnVp
bHQKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0
dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdExlZ2FjeU92ZXJyaWRl
QnVpbHRJbnM7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlND
OjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVl
IHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRl
KHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5
cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3Jz
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RNYXBMaWtlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0TWFwTGlrZS5oCmluZGV4IDZiZDFhYzIyMmViNjEwNTQ0NTY4NjYwZjEwYjc3MWFlNDJi
MGYxZTguLjU2MjMxOTFlMWFkMWU2OGFiOTBlM2Q3YzdhNmM5MGM5NWUxNmUwYTMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RNYXBMaWtl
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1h
cExpa2UuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRP
TVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0
TWFwTGlrZS5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQs
NyBAQCBjbGFzcyBKU1Rlc3RNYXBMaWtlIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TWFwTGlr
ZT4gewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1
Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0TWFwTGlrZTsKICAg
ICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlND
OjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQog
ICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9i
amVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJl
RmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9w
ZXJhdGlvbnMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zLmgKaW5kZXggYjkxYWJmMTBjNTNlOGU3
ZGU2MTQwMjdhNzg1ZTQ3YTZmNzFhNTJkNC4uNzQyNzE1NmVhNDBmZTkyNGRkMzdhMDg3NDQ3MWU5
NzEzYjgwMWU4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE1hcExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TWFwTGlrZVdpdGhPdmVy
cmlkZGVuT3BlcmF0aW9ucy5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisj
aW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2lu
Y2x1ZGUgIlRlc3RNYXBMaWtlV2l0aE92ZXJyaWRkZW5PcGVyYXRpb25zLmgiCiAjaW5jbHVkZSA8
d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00Myw2ICs0NCw3IEBAIGNsYXNzIEpTVGVzdE1hcExp
a2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RNYXBM
aWtlV2l0CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0
cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RNYXBMaWtlV2l0
aE92ZXJyaWRkZW5PcGVyYXRpb25zOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRl
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1
Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8o
SlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVudGlmaWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyTm9JZGVu
dGlmaWVyLmgKaW5kZXggZWIzNGIzYWJiMmFkYTJhNzFlN2EyNTg5YmMwMTAyMDZkNmIzZmJhZC4u
Y2VjNGY2NTU1Yzg1MzUzNzg2NDA1NDlhMmZkMTIzNzhmNGM5OGEyNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhl
ZFNldHRlck5vSWRlbnRpZmllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZpZXIuaApAQCAt
MjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMu
aCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0TmFtZWRBbmRJbmRl
eGVkU2V0dGVyTm9JZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+
CkBAIC00OSw2ICs1MCw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlck5vSWRl
bnRpZmllciA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkQW5kCiAKICAgICBERUNMQVJF
X0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUlu
ZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZEFuZEluZGV4ZWRTZXR0ZXJOb0lkZW50aWZp
ZXI7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYg
dm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3Rv
dHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBn
bG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0
cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RO
YW1lZEFuZEluZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93
aW5nRXhjZXB0aW9uLmgKaW5kZXggMTYxYzVjMmRlYjQ3YWJlM2I3MTMyNmVkNTIwYjliMWU1NDM4
OWYxNy4uY2ViYTMwNmUzYTRiNDgxYmVlYjA3MDYxM2UwNmQ4MDViNjg4NDhlYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5k
SW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5n
RXhjZXB0aW9uLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRl
ICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAi
VGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmgiCiAjaW5jbHVkZSA8
d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00OSw2ICs1MCw3IEBAIGNsYXNzIEpTVGVzdE5hbWVk
QW5kSW5kZXhlZFNldHRlclRocm93aW5nRXhjZXB0aW9uIDogcHVibGljIEpTRE9NV3JhcHBlcjxU
ZXN0TmFtCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0
cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZEFuZElu
ZGV4ZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUq
IGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpT
Qzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5
cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5
SGF2ZUluZGV4ZWRBY2Nlc3NvcnMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlm
aWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIuaAppbmRleCBlODMwZmVmZTQ2YWU3OWRl
OGNhOTczNTE3NGE3OGM4YTYxNTJkMWVjLi44MGU5ZmU0OThjMTdlZjQwY2YwMTkwMzExNWJlNGM5
MGU0NzQwN2Q5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRBbmRJbmRl
eGVkU2V0dGVyV2l0aElkZW50aWZpZXIuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9u
Y2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIu
aCIKICNpbmNsdWRlICJUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIuaCIK
ICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ5LDYgKzUwLDcgQEAgY2xhc3Mg
SlNUZXN0TmFtZWRBbmRJbmRleGVkU2V0dGVyV2l0aElkZW50aWZpZXIgOiBwdWJsaWMgSlNET01X
cmFwcGVyPFRlc3ROYW1lZEEKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25z
dGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVz
dE5hbWVkQW5kSW5kZXhlZFNldHRlcldpdGhJZGVudGlmaWVyOwogICAgIHN0YXRpYyBKU0M6OlN0
cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICBy
ZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUs
IEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwg
SlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyTm9JZGVudGlmaWVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRE
ZWxldGVyTm9JZGVudGlmaWVyLmgKaW5kZXggODA0YzY5ODg1OTU0NDFhNWE5NDE5ZWU2YzFmM2Q4
ZDYzY2FkMTlmZi4uZDkyMGQ4NGRkOTRkMGY3MGU4ZDAzNTk0YzZlMTBkMTE4MDYzZTBjNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5h
bWVkRGVsZXRlck5vSWRlbnRpZmllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXIuaApAQCAtMjAsNiAr
MjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNp
bmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0TmFtZWREZWxldGVyTm9JZGVu
dGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00OCw2ICs0OSw3
IEBAIGNsYXNzIEpTVGVzdE5hbWVkRGVsZXRlck5vSWRlbnRpZmllciA6IHB1YmxpYyBKU0RPTVdy
YXBwZXI8VGVzdE5hbWVkRGVsZXRlck5vSWRlCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBz
dGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0
dXJlSUQ6OlRlc3ROYW1lZERlbGV0ZXJOb0lkZW50aWZpZXI7CiAgICAgc3RhdGljIEpTQzo6U3Ry
dWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJl
dHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwg
SlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBK
U0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4Y2Vw
dGlvbi5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5h
bWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uLmgKaW5kZXggMmZkZjgxN2NhYmFiZTI5Njg5NmY2
NmRkNGFlOGY1NzA0NjAyOTBlZC4uMTMyZTllYmQ0MzJmYjJhODcyOGFkMWEwYmM3ZmM1OTBhMWM4
ZDQxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkRGVsZXRlclRocm93aW5nRXhj
ZXB0aW9uLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJE
T01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVz
dE5hbWVkRGVsZXRlclRocm93aW5nRXhjZXB0aW9uLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVz
dHJveWVkLmg+CkBAIC00OCw2ICs0OSw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkRGVsZXRlclRocm93
aW5nRXhjZXB0aW9uIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TmFtZWREZWxldGVyCiAKICAg
ICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0
cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZERlbGV0ZXJUaHJvd2luZ0V4
Y2VwdGlvbjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUg
cHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUo
dm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlw
ZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdE5hbWVkRGVsZXRlcldpdGhJZGVudGlmaWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIuaAppbmRl
eCA3MTk4YTQ4M2Y2NGIwMTc5ODQ5YjkxMjUxNTE3NGQyOTVjMGU5MjIxLi4zNzRiODhlYjUzYzY4
ZDg5YjY2YjVlNDE0MzcyMzc2ZmUwYTY5MDVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWREZWxldGVyV2l0aElkZW50aWZpZXIuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9u
Y2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIu
aCIKICNpbmNsdWRlICJUZXN0TmFtZWREZWxldGVyV2l0aElkZW50aWZpZXIuaCIKICNpbmNsdWRl
IDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ4LDYgKzQ5LDcgQEAgY2xhc3MgSlNUZXN0TmFt
ZWREZWxldGVyV2l0aElkZW50aWZpZXIgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3ROYW1lZERl
bGV0ZXJXaXQKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9N
U3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdE5hbWVkRGVs
ZXRlcldpdGhJZGVudGlmaWVyOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3Ry
dWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpT
Qzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1
cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlND
OjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhl
ZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5k
ZXhlZEdldHRlci5oCmluZGV4IDE5MjUwZDg4ZThjN2E2Yzc0ZDI2Nzg0ZGUyMWI4NGRhM2IzM2Rm
ZmMuLjJmZDJiOWQxYzlkYTA4MWM3ZDg0N2Y1NTk2OTBiYjRhM2FlMTZhNjkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0
ZXJXaXRoSW5kZXhlZEdldHRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlci5oCkBAIC0yMCw2
ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgog
I2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3ROYW1lZERlbGV0ZXJXaXRo
SW5kZXhlZEdldHRlci5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDgs
NiArNDksNyBAQCBjbGFzcyBKU1Rlc3ROYW1lZERlbGV0ZXJXaXRoSW5kZXhlZEdldHRlciA6IHB1
YmxpYyBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkRGVsZXRlcgogCiAgICAgREVDTEFSRV9JTkZPOwog
CisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERP
TVN0cnVjdHVyZUlEOjpUZXN0TmFtZWREZWxldGVyV2l0aEluZGV4ZWRHZXR0ZXI7CiAgICAgc3Rh
dGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7
CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3Qs
IHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdz
KSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZEdldHRlckNh
bGxXaXRoLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
TmFtZWRHZXR0ZXJDYWxsV2l0aC5oCmluZGV4IGIyZDRhNTQzZDcxNDg0OTU4ZmFkODk4YjQ5MjZj
OWZlZGI3ZmE4ZDkuLjNlMGRlMmI1N2I4M2NmNjU5NmZkMGIwOWIwYzBiZjk5NmIxYTEyOWYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RO
YW1lZEdldHRlckNhbGxXaXRoLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyQ2FsbFdpdGguaApAQCAtMjAsNiArMjAsNyBAQAog
CiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJK
U0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0TmFtZWRHZXR0ZXJDYWxsV2l0aC5oIgogI2lu
Y2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDYsNiArNDcsNyBAQCBjbGFzcyBKU1Rl
c3ROYW1lZEdldHRlckNhbGxXaXRoIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRHZXR0
ZXJDYWxsV2l0aD4gewogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhw
ciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0TmFt
ZWRHZXR0ZXJDYWxsV2l0aDsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVj
dHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6
OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJl
OjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6
T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRB
Y2Nlc3NvcnMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyTm9JZGVudGlmaWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIuaApp
bmRleCAxY2FhNzIwOGE2MWE3MWQ0YmNjNTMyODhmY2ZhMzBmNWU1ZjM0YzUyLi41ZTQ1YmJkMTJm
OWUxYjQ1OGU5MTJhZjVlODAxMWFjZTE2ZTk1NDYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWRHZXR0ZXJOb0lkZW50aWZpZXIuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UK
IAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIK
ICNpbmNsdWRlICJUZXN0TmFtZWRHZXR0ZXJOb0lkZW50aWZpZXIuaCIKICNpbmNsdWRlIDx3dGYv
TmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ2LDYgKzQ3LDcgQEAgY2xhc3MgSlNUZXN0TmFtZWRHZXR0
ZXJOb0lkZW50aWZpZXIgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3ROYW1lZEdldHRlck5vSWRl
bnQKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0
dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdE5hbWVkR2V0dGVyTm9J
ZGVudGlmaWVyOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpT
Qzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1
ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0
ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RU
eXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5kZXhlZEFjY2Vzc29y
cyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIuaAppbmRl
eCA1YTRkMDc1N2M5MTQxYjA1NzcwZWZkNmRiYzFhZTEzNjlkODU1ZmVjLi42MGExMTJkODQ0M2Jm
NGM2M2U4NmM2MWNjZDEzMDVmNTVjZmViZDYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRHZXR0ZXJXaXRoSWRlbnRpZmllci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1l
ZEdldHRlcldpdGhJZGVudGlmaWVyLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNl
CiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgi
CiAjaW5jbHVkZSAiVGVzdE5hbWVkR2V0dGVyV2l0aElkZW50aWZpZXIuaCIKICNpbmNsdWRlIDx3
dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ2LDYgKzQ3LDcgQEAgY2xhc3MgSlNUZXN0TmFtZWRH
ZXR0ZXJXaXRoSWRlbnRpZmllciA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdE5hbWVkR2V0dGVy
V2l0aEkKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3Ry
dWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdE5hbWVkR2V0dGVy
V2l0aElkZW50aWZpZXI7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1
cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpK
U1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6
Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9i
amVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNj
ZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lZFNldHRlck5vSWRlbnRpZmllci5oIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyLmgKaW5k
ZXggMjU5ODkzZmZiZjI4OTVkOGZkODgyMGFmYjkyM2Y3OTY2ZDk1NGNmZC4uZDhlNjJmMGQ5YmRl
MjMxOTI0YjMzNTg4YjFkNzRlNTE0MjZmMmUxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVk
U2V0dGVyTm9JZGVudGlmaWVyLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAK
KyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAj
aW5jbHVkZSAiVGVzdE5hbWVkU2V0dGVyTm9JZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL05l
dmVyRGVzdHJveWVkLmg+CkBAIC00OSw2ICs1MCw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkU2V0dGVy
Tm9JZGVudGlmaWVyIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRTZXR0ZXJOb0lkZW50
CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVy
ZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZFNldHRlck5vSWRl
bnRpZmllcjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6
OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUg
cHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUo
dm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlw
ZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmgK
aW5kZXggNzgyNDNhOWExNjRmMTBjNDA0YjJlMTZmY2NlYWFjZDZmMDQ2ZTRmMi4uNWRlN2U3MzQ5
ZWFlM2EzYWNjZmVmZWI5NzM3NzY5ZWZjZDZmOGFlMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNl
cHRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0TmFtZWRTZXR0ZXJUaHJvd2luZ0V4Y2VwdGlvbi5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNw
cmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9N
V3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uLmgi
CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00OSw2ICs1MCw3IEBAIGNsYXNz
IEpTVGVzdE5hbWVkU2V0dGVyVGhyb3dpbmdFeGNlcHRpb24gOiBwdWJsaWMgSlNET01XcmFwcGVy
PFRlc3ROYW1lZFNldHRlclRoCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29u
c3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRl
c3ROYW1lZFNldHRlclRocm93aW5nRXhjZXB0aW9uOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVy
ZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4g
SlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6
VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpN
YXlIYXZlSW5kZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllci5oIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVy
V2l0aElkZW50aWZpZXIuaAppbmRleCA4Yzg0YWE0M2FiMmI4ODRjMDZkZGY5ZjRhNDVmMjYxMTc0
ZTEyNGY5Li5jNzY5ZGQ1ODhmOGU0OWMyYzA4ZmQ3Y2E3NDEyZTY5Y2U1ODJlMDNlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRT
ZXR0ZXJXaXRoSWRlbnRpZmllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJZGVudGlmaWVyLmgKQEAgLTIwLDYgKzIw
LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5j
bHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdE5hbWVkU2V0dGVyV2l0aElkZW50
aWZpZXIuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ5LDYgKzUwLDcg
QEAgY2xhc3MgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSWRlbnRpZmllciA6IHB1YmxpYyBKU0RPTVdy
YXBwZXI8VGVzdE5hbWVkU2V0dGVyV2l0aEkKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0
YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1
cmVJRDo6VGVzdE5hbWVkU2V0dGVyV2l0aElkZW50aWZpZXI7CiAgICAgc3RhdGljIEpTQzo6U3Ry
dWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJl
dHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwg
SlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBK
U0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0
dGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFt
ZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlci5oCmluZGV4IDY4ZTM5ZjI5YThhY2M4OTUxOGNkZGY1
OWY1OTljMDBkOGJiNTY0MTEuLmFkNTNmODRjMjZiYjBjMmQ3OTZjNTM0YmQyOTY4ZWMxNmJlZmJm
MTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0
ZXIuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0
cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0TmFt
ZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlci5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3ll
ZC5oPgpAQCAtNDksNiArNTAsNyBAQCBjbGFzcyBKU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVk
R2V0dGVyIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0TmFtZWRTZXR0ZXJXaQogCiAgICAgREVD
TEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1
cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRl
cjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90
eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGds
b2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3Ry
dWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5h
bWVkU2V0dGVyV2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVy
QW5kU2V0dGVyLmgKaW5kZXggZDA2YTA1YmI5NjExMTZiMWQyMTc4ZDgzYjZjN2FhNmQyZTVjOTJk
OC4uNWZkNGU1MTJiNGU3NjEyMTIwMjE2M2FmYzRjM2NmYmIxZGQ2NWRkOCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVy
V2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoSW5kZXhlZEdldHRlckFuZFNl
dHRlci5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9N
U3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RO
YW1lZFNldHRlcldpdGhJbmRleGVkR2V0dGVyQW5kU2V0dGVyLmgiCiAjaW5jbHVkZSA8d3RmL05l
dmVyRGVzdHJveWVkLmg+CkBAIC00OSw2ICs1MCw3IEBAIGNsYXNzIEpTVGVzdE5hbWVkU2V0dGVy
V2l0aEluZGV4ZWRHZXR0ZXJBbmRTZXR0ZXIgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3ROYW1l
CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVy
ZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lZFNldHRlcldpdGhJ
bmRleGVkR2V0dGVyQW5kU2V0dGVyOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRl
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1
Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8o
SlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpNYXlIYXZlSW5k
ZXhlZEFjY2Vzc29ycyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucy5o
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0
dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuaAppbmRleCBlYjUyZTJjZDkyNjg1YzdmOTU0
ODRhYzFkYWZkNTA5OTAzM2QxZTc3Li4yZTk3ZmViNDZjM2NkZjM3MjRiZTc3ODVjN2NkZDZjNDQw
NzYwNWNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldp
dGhMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBv
bmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVy
LmgiCiAjaW5jbHVkZSAiVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMu
aCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ5LDYgKzUwLDcgQEAgY2xh
c3MgSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5T3ZlcnJpZGVCdWlsdElucyA6IHB1YmxpYyBK
U0RPTVdyYXBwZXI8VGVzdE5hbWUKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBj
b25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6
VGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeU92ZXJyaWRlQnVpbHRJbnM7CiAgICAgc3RhdGljIEpT
Qzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAg
ICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3Rv
dHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5m
bygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdh
Y3lVbmZvcmdlYWJsZVByb3BlcnRpZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRp
ZXMuaAppbmRleCAwNWE2ZTU4MzJjOGEwYWVkYjhkMjU0NjE3NDczMjhjOWM3ZmE0NjBhLi5mMzEz
MjQ3NDFkYjdmYWNiYThkYThiZDUzYWIwMzljOTg1ZGM3NTI1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVn
YWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJv
cGVydGllcy5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAi
RE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRl
c3ROYW1lZFNldHRlcldpdGhMZWdhY3lVbmZvcmdlYWJsZVByb3BlcnRpZXMuaCIKICNpbmNsdWRl
IDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ5LDYgKzUwLDcgQEAgY2xhc3MgSlNUZXN0TmFt
ZWRTZXR0ZXJXaXRoTGVnYWN5VW5mb3JnZWFibGVQcm9wZXJ0aWVzIDogcHVibGljIEpTRE9NV3Jh
cHBlcjxUZXMKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9N
U3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdE5hbWVkU2V0
dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllczsKICAgICBzdGF0aWMgSlNDOjpTdHJ1
Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0
dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBK
U0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpT
Qzo6TWF5SGF2ZUluZGV4ZWRBY2Nlc3NvcnMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9y
Z2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuaCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROYW1lZFNldHRlcldpdGhMZWdhY3lV
bmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmgKaW5kZXggOGEw
ZjdiM2M1MWFhZWEzY2UwZmQ0YWYyNmY5Yjg4YjhhMWMzZjExMS4uMThhZDM5ZmJiZTQ5MDA1YzFi
ZDMwZDdjZDg4NzgwNzY3ZDYzZDhkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxl
UHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVpbHRJbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0TmFtZWRTZXR0ZXJXaXRoTGVnYWN5VW5m
b3JnZWFibGVQcm9wZXJ0aWVzQW5kTGVnYWN5T3ZlcnJpZGVCdWlsdElucy5oCkBAIC0yMCw2ICsy
MCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2lu
Y2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3ROYW1lZFNldHRlcldpdGhMZWdh
Y3lVbmZvcmdlYWJsZVByb3BlcnRpZXNBbmRMZWdhY3lPdmVycmlkZUJ1aWx0SW5zLmgiCiAjaW5j
bHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00OSw2ICs1MCw3IEBAIGNsYXNzIEpTVGVz
dE5hbWVkU2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJy
aWRlQnVpbHRJbnMKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIg
RE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdE5hbWVk
U2V0dGVyV2l0aExlZ2FjeVVuZm9yZ2VhYmxlUHJvcGVydGllc0FuZExlZ2FjeU92ZXJyaWRlQnVp
bHRJbnM7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpW
TSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHBy
b3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZt
LCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUs
IFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3ROYW1lc3BhY2VPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3ROYW1lc3BhY2VPYmplY3QuaAppbmRleCA1YjU2MTcyNWU2ZmQ5NDBmMDU4ODNl
NjgyNmVjMzE5OWM5YWMzNzdkLi43Y2Y2YjcyNzYzYTM4MzQ5NTBmZWRiMDBlZmMwMjk4MzgyYmQz
ZTA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0TmFtZXNwYWNlT2JqZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE5hbWVzcGFjZU9iamVjdC5oCkBAIC0yMCw2ICsyMCw3IEBACiAK
ICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpT
RE9NV3JhcHBlci5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC0zOCw2ICszOSw3IEBAIGNs
YXNzIEpTVGVzdE5hbWVzcGFjZU9iamVjdCA6IHB1YmxpYyBKU0RPTU9iamVjdCB7CiAKICAgICBE
RUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVj
dHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3ROYW1lc3BhY2VPYmplY3Q7CiAgICAgc3Rh
dGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7
CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3Qs
IHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdz
KSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2RlLmNwcAppbmRleCAyZjRlYTY1Y2M4MDIz
MzQzNGMzN2JlYjQxM2ZjYzFlNDYzYzE1YmJjLi44NWZmOTY3N2YyM2YzN2U4ZjhkMmZmMGIwNWU3
ZTk5NjQxMGRmNDA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0Tm9kZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE5vZGUuY3BwCkBAIC00MTAsNiArNDEwLDcgQEAgY2xhc3MgVGVz
dE5vZGVJdGVyYXRvciBmaW5hbCA6IHB1YmxpYyBUZXN0Tm9kZUl0ZXJhdG9yQmFzZSB7CiAgICAg
ICAgICk7CiAgICAgfQogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1
Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0Tm9kZUl0ZXJhdG9yOwogICAgIHN0YXRp
YyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewog
ICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBw
cm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyks
IGluZm8oKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0Tm9kZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTVGVzdE5vZGUuaAppbmRleCAwZTk2MmJmZjk3ZDE2ZGE2MGMyY2JiOGM1ODk2OTkxYmY4
MjA4ZjExLi5jOWQ4ZGI1M2E1ODE1YTcyYjRiZDQxMmI3YzMzOTM3MzBjMzBiNWNkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0Tm9kZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3ROb2Rl
LmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1
Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiSlNOb2RlLmgi
CiAjaW5jbHVkZSAiVGVzdE5vZGUuaCIKQEAgLTQyLDYgKzQzLDcgQEAgY2xhc3MgV0VCQ09SRV9F
WFBPUlQgSlNUZXN0Tm9kZSA6IHB1YmxpYyBKU05vZGUgewogCiAgICAgREVDTEFSRV9JTkZPOwog
CisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERP
TVN0cnVjdHVyZUlEOjpUZXN0Tm9kZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0
ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3Ry
dWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZv
KEpTQzo6SlNUeXBlKEpTTm9kZVR5cGUpLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpO
b25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvSlMvSlNUZXN0T2JqLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0T2JqLmgKaW5kZXggYjdiZTg2NTY0YWZjNWVlN2I1MDgyYjU3ZWNjYzY4NmY4ODYx
MzM1ZC4uNGVhZDk4NDA2NmFiMTUyNjhiZTg1ZWE5MDM4ZDE5OGIwZjg5ZDA4OCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE9iai5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPYmouaApA
QCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVy
ZXMuaCIKICNpbmNsdWRlICJKU0RPTUNvbnZlcnREaWN0aW9uYXJ5LmgiCiAjaW5jbHVkZSAiSlNE
T01Db252ZXJ0RW51bWVyYXRpb24uaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKQEAgLTQ4
LDYgKzQ5LDcgQEAgY2xhc3MgSlNUZXN0T2JqIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0T2Jq
PiB7CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVj
dHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RPYmo7CiAgICAgc3Rh
dGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7
CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3Qs
IHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdz
KSwgaW5mbygpLCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPcGVyYXRpb25Db25k
aXRpb25hbC5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE9wZXJhdGlvbkNvbmRpdGlvbmFsLmgKaW5kZXggMGM3YjgyMDQxOTdjODQ0NmVhOTY3Y2YxOWE4
ZGYzYTU5MWFjYWIyNS4uOGIzNzc3ZjU5YmYwZGI1OWM2YmIyZTk2MWEyYWQzOTAzZTdkMjM5ZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE9wZXJhdGlvbkNvbmRpdGlvbmFsLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsLmgKQEAgLTIyLDYgKzIyLDcg
QEAKIAogI2lmIEVOQUJMRShDb25kaXRpb25EZXJpdmVkKQogCisjaW5jbHVkZSAiRE9NU3RydWN0
dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RPcGVyYXRp
b25Db25kaXRpb25hbC5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDUs
NiArNDYsNyBAQCBjbGFzcyBKU1Rlc3RPcGVyYXRpb25Db25kaXRpb25hbCA6IHB1YmxpYyBKU0RP
TVdyYXBwZXI8VGVzdE9wZXJhdGlvbkNvbmRpdGlvbmFsPgogCiAgICAgREVDTEFSRV9JTkZPOwog
CisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERP
TVN0cnVjdHVyZUlEOjpUZXN0T3BlcmF0aW9uQ29uZGl0aW9uYWw7CiAgICAgc3RhdGljIEpTQzo6
U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAg
IHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlw
ZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygp
LCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzLmggYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9y
cy5oCmluZGV4IDAxYWViNmQ3YWJkNDk2M2MzMjc1OGI1ZjRhOWI2YTQ2NjhhZGI5OGMuLmZmMGYw
YThhMThiZDVjNjkzNzQ4YzliYWE4ZWI4YTY1ZDA2MjIwNjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0
b3JzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnMuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9u
Y2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIu
aCIKICNpbmNsdWRlICJUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9ycy5oIgogI2luY2x1ZGUgPHd0
Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RPdmVybG9h
ZGVkQ29uc3RydWN0b3JzIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0T3ZlcmxvYWRlZENvbnN0
cnVjdAogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1
Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0T3ZlcmxvYWRlZENv
bnN0cnVjdG9yczsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShK
U0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFs
dWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVh
dGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0
VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2Fk
ZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVuY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvdGVzdC9KUy9KU1Rlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlLmgK
aW5kZXggODg4MWQxZmY4YmQ1ZWY1ZjA1YmRiMmViYmUzYTBjZGYyMzdjYWFkYS4uMzcyYTE5MTVh
ZTMzYWE5OTNkOGZmZGRmNzU3YTFmYmE2MjQ4Yjc3YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNX
aXRoU2VxdWVuY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0T3ZlcmxvYWRlZENvbnN0cnVjdG9yc1dpdGhTZXF1ZW5jZS5oCkBAIC0yMCw2ICsy
MCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2lu
Y2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RPdmVybG9hZGVkQ29uc3RydWN0
b3JzV2l0aFNlcXVlbmNlLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00
Myw2ICs0NCw3IEBAIGNsYXNzIEpTVGVzdE92ZXJsb2FkZWRDb25zdHJ1Y3RvcnNXaXRoU2VxdWVu
Y2UgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RPdmVybG9hCiAKICAgICBERUNMQVJFX0lORk87
CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0g
RE9NU3RydWN0dXJlSUQ6OlRlc3RPdmVybG9hZGVkQ29uc3RydWN0b3JzV2l0aFNlcXVlbmNlOwog
ICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBK
U0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUp
CiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFs
T2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1
cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UGx1Z2luSW50ZXJmYWNlLmggYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UGx1Z2luSW50ZXJm
YWNlLmgKaW5kZXggMDg4YmZlNTNkNDllYjU2ZGNkNTU2ODI3YTA2ODFjM2JiYmU3OGQ4NC4uM2Vm
ZTllZTQ2MjY5NTcxNjg5Y2Y1YWNiZGJhZmQ5MjUyMWMwODRhMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFBsdWdpbkludGVyZmFjZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RQbHVn
aW5JbnRlcmZhY2UuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1
ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRl
ICJUZXN0UGx1Z2luSW50ZXJmYWNlLmgiCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvQ2FsbERh
dGEuaD4KQEAgLTUwLDYgKzUxLDcgQEAgY2xhc3MgSlNUZXN0UGx1Z2luSW50ZXJmYWNlIDogcHVi
bGljIEpTRE9NV3JhcHBlcjxUZXN0UGx1Z2luSW50ZXJmYWNlPiB7CiAKICAgICBERUNMQVJFX0lO
Rk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4
ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RQbHVnaW5JbnRlcmZhY2U7CiAgICAgc3RhdGljIEpTQzo6
U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmpl
Y3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAg
IHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlw
ZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygp
LCBKU0M6Ok1heUhhdmVJbmRleGVkQWNjZXNzb3JzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RQcm9taXNlUmVqZWN0aW9uRXZlbnQu
aCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RQcm9taXNl
UmVqZWN0aW9uRXZlbnQuaAppbmRleCA3MjkwOGIzYjQ3YjBhODg0Yjc0NDRhNzMwNTc4NzI3ZDUx
MWI2MjFjLi5iNGNlNGQwNGZlOTZhY2MzMDE3MDg0YjMxMGY0NTZmYWJjMzVjMTEyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UHJvbWlz
ZVJlamVjdGlvbkV2ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdFByb21pc2VSZWplY3Rpb25FdmVudC5oCkBAIC0yMCw2ICsyMCw3IEBACiAK
ICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpT
RE9NQ29udmVydERpY3Rpb25hcnkuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNs
dWRlICJKU0V2ZW50LmgiCkBAIC00Myw2ICs0NCw3IEBAIGNsYXNzIEpTVGVzdFByb21pc2VSZWpl
Y3Rpb25FdmVudCA6IHB1YmxpYyBKU0V2ZW50IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAg
IHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1
Y3R1cmVJRDo6VGVzdFByb21pc2VSZWplY3Rpb25FdmVudDsKICAgICBzdGF0aWMgSlNDOjpTdHJ1
Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0
dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBK
U0M6OlR5cGVJbmZvKEpTQzo6SlNUeXBlKEpTRXZlbnRUeXBlKSwgU3RydWN0dXJlRmxhZ3MpLCBp
bmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlYWRPbmx5TWFwTGlrZS5oIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlYWRPbmx5TWFwTGlrZS5oCmluZGV4
IGIyMjdiMGUzMDFiZTk1ZmJmYWI5ZGJjYTNhNjQ0MDBmMjNkOTBmODAuLmI4ZGQ4NDM2MmU5Y2Vm
NWVhYTE5MGYwNTE4NjU5ZmI2MDgxNmI5MzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RSZWFkT25seU1hcExpa2UuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlNYXBMaWtl
LmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1
Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdFJlYWRP
bmx5TWFwTGlrZS5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiAr
NDQsNyBAQCBjbGFzcyBKU1Rlc3RSZWFkT25seU1hcExpa2UgOiBwdWJsaWMgSlNET01XcmFwcGVy
PFRlc3RSZWFkT25seU1hcExpa2U+IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRp
YyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJ
RDo6VGVzdFJlYWRPbmx5TWFwTGlrZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0
ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0
LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3Ry
dWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZv
KEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdFJlYWRPbmx5U2V0TGlrZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdFJlYWRPbmx5U2V0TGlrZS5oCmluZGV4IGZlMGY3YTk3ZDNkNDhjOGNkYjRh
YTIxZGVlNjc5MmJjZGNjYWUzNWMuLjI0NGZjOWMzM2Y0ZTkzYThmMDVkZTE5MGEwOTRlZTMyNWVk
ZDYxY2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9K
Uy9KU1Rlc3RSZWFkT25seVNldExpa2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0UmVhZE9ubHlTZXRMaWtlLmgKQEAgLTIwLDYgKzIwLDcgQEAK
IAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAi
SlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdFJlYWRPbmx5U2V0TGlrZS5oIgogI2luY2x1
ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RS
ZWFkT25seVNldExpa2UgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RSZWFkT25seVNldExpa2U+
IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0
dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdFJlYWRPbmx5U2V0TGlr
ZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2
bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90
eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGds
b2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3Ry
dWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJlcG9ydEV4dHJhTWVtb3J5
Q29zdC5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFJl
cG9ydEV4dHJhTWVtb3J5Q29zdC5oCmluZGV4IDYzNDY4MDNlZmE0ODI3ZDIwODAzYTZlNTFjYzM1
ZjlhZjk4M2Q2MDMuLmM2YTBlZTllMmU3YjI5ZmQ5ZmQ5ZmU2ZTNmYWE4NmNkMWMyMTQ0MWIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RS
ZXBvcnRFeHRyYU1lbW9yeUNvc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvSlMvSlNUZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0LmgKQEAgLTIwLDYgKzIwLDcg
QEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVk
ZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdFJlcG9ydEV4dHJhTWVtb3J5Q29zdC5o
IgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDQsNiArNDUsNyBAQCBjbGFz
cyBKU1Rlc3RSZXBvcnRFeHRyYU1lbW9yeUNvc3QgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RS
ZXBvcnRFeHRyYU1lbW9yeUNvcwogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNv
bnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpU
ZXN0UmVwb3J0RXh0cmFNZW1vcnlDb3N0OwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3Jl
YXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpT
dHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUlu
Zm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJh
eSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMv
SlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmggYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJm
YWNlLmgKaW5kZXggNWZkNzIxMjY1ZWY1YjI2NGU5YzYyMTVlNWM1NzA4MzVhNzIzMmJmZC4uMjVl
YTMzNTJiNzlhNWFiOTdhNGE2MmUyN2Q3MGZhNDRmNDcxYWQ0ZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNlcmlhbGl6ZWRTY3JpcHRW
YWx1ZUludGVyZmFjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9KUy9KU1Rlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UuaApAQCAtMjIsNiArMjIs
NyBAQAogCiAjaWYgRU5BQkxFKENvbmRpdGlvbjEpIHx8IEVOQUJMRShDb25kaXRpb24yKQogCisj
aW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2lu
Y2x1ZGUgIlRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UuaCIKICNpbmNsdWRlIDx3
dGYvTmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQ1LDYgKzQ2LDcgQEAgY2xhc3MgSlNUZXN0U2VyaWFs
aXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0U2VyaWFs
aXplZFMKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3Ry
dWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdFNlcmlhbGl6ZWRT
Y3JpcHRWYWx1ZUludGVyZmFjZTsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0
cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBK
U0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0
dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpT
Qzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVz
dFNldExpa2UuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RTZXRMaWtlLmgKaW5kZXggNzRlZDI2NjEzZjg2YzhmZWVhZDdlNDYyMTdjZjM4MGEyNGFiMWJh
MC4uZjU4YTRkOWYxNTMxNWVlNWFjOTYxMDY0MjkwYzhjYzM5ZGFiZGViZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNldExpa2UuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2V0TGlr
ZS5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3Ry
dWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RTZXRM
aWtlLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00Myw2ICs0NCw3IEBA
IGNsYXNzIEpTVGVzdFNldExpa2UgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RTZXRMaWtlPiB7
CiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVy
ZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6OlRlc3RTZXRMaWtlOwogICAgIHN0
YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpT
R2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAg
ewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0
LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFn
cyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0
aW9ucy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFNl
dExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuaAppbmRleCAxZWIxODA5YjgxZDljOTRmNTRl
NzE3NzMwN2UxZTVkZjRlOWYwNTFhLi40NGJjMTZkOGYxZWQ0NDQyOTViYmNkODczMGNmYzk4NGVi
M2EzZGJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0U2V0TGlrZVdpdGhPdmVycmlkZGVuT3BlcmF0aW9ucy5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTZXRMaWtlV2l0aE92ZXJyaWRk
ZW5PcGVyYXRpb25zLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNs
dWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVk
ZSAiVGVzdFNldExpa2VXaXRoT3ZlcnJpZGRlbk9wZXJhdGlvbnMuaCIKICNpbmNsdWRlIDx3dGYv
TmV2ZXJEZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0U2V0TGlrZVdp
dGhPdmVycmlkZGVuT3BlcmF0aW9ucyA6IHB1YmxpYyBKU0RPTVdyYXBwZXI8VGVzdFNldExpa2VX
aXQKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0
dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdFNldExpa2VXaXRoT3Zl
cnJpZGRlbk9wZXJhdGlvbnM7CiAgICAgc3RhdGljIEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1
Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlND
OjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVy
ZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6
Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RT
dHJpbmdpZmllci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdFN0cmluZ2lmaWVyLmgKaW5kZXggNmY4Yjk4OThmNGE2NWE1NjAyZmM0ZTUyMWIwNTZlMzAy
M2QxN2RkYi4uOWM1MzM4NWZmYjM3NWMzYTQ2MjE1MmEwZGFkNTVkYmU1MmE1NGVmMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmlu
Z2lmaWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdFN0cmluZ2lmaWVyLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNp
bmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5j
bHVkZSAiVGVzdFN0cmluZ2lmaWVyLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+
CkBAIC00Myw2ICs0NCw3IEBAIGNsYXNzIEpTVGVzdFN0cmluZ2lmaWVyIDogcHVibGljIEpTRE9N
V3JhcHBlcjxUZXN0U3RyaW5naWZpZXI+IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0
YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1
cmVJRDo6VGVzdFN0cmluZ2lmaWVyOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRl
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1
Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8o
SlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNU
ZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbi5o
CmluZGV4IGNiM2ZkMzdiMDM3MDlmYWI3N2I5NDY2MDcxZDAxOWNjNTNiMzdjMmEuLmExNGNlNDMy
Y2VjMTM5YTNlYjJjNDI4ODUzNjZjZWYyNGFmOWJiZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllckFub255bW91c09w
ZXJhdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9K
U1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbi5oCkBAIC0yMCw2ICsyMCw3IEBACiAK
ICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpT
RE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIlRlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlv
bi5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBj
bGFzcyBKU1Rlc3RTdHJpbmdpZmllckFub255bW91c09wZXJhdGlvbiA6IHB1YmxpYyBKU0RPTVdy
YXBwZXI8VGVzdFN0cmluZ2lmaWVyQQogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGlj
IGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlE
OjpUZXN0U3RyaW5naWZpZXJBbm9ueW1vdXNPcGVyYXRpb247CiAgICAgc3RhdGljIEpTQzo6U3Ry
dWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAgICAgIHJl
dHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3RvdHlwZSwg
SlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5mbygpLCBK
U0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uLmggYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJh
dGlvbi5oCmluZGV4IDIxZDFiZjI2NjNiZWYyNDY2NjJkYjU5OWIzNjZmOGE5NWUxODE0N2QuLmZm
YTNlNDEyZDlhMDViYmI2YjY0NDYyNzQ3ZjMyZjU0Y2QwMWJmOGIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllck5hbWVk
T3BlcmF0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFN0cmluZ2lmaWVyTmFtZWRPcGVyYXRpb24uaApAQCAtMjAsNiArMjAsNyBAQAogCiAj
cHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RP
TVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbi5oIgog
I2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBK
U1Rlc3RTdHJpbmdpZmllck5hbWVkT3BlcmF0aW9uIDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0
U3RyaW5naWZpZXJOYW1lZAogCiAgICAgREVDTEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0
ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0
U3RyaW5naWZpZXJOYW1lZE9wZXJhdGlvbjsKICAgICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNy
ZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlNDOjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6
U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9iamVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJ
bmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJlRmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJy
YXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pT
L0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcy5oIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uSW1w
bGVtZW50ZWRBcy5oCmluZGV4IDljMWU0NzIwZWNlMDYzMTBkYzgwNDkxM2JlMjc1ODBmZTZmYTI1
NzMuLmE0YmY3YmVmYmU1OTdjYzFiNWRjNzY4NjhkY2VkNTIyOWEzNDQ2ZTMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmll
ck9wZXJhdGlvbkltcGxlbWVudGVkQXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1lbnRlZEFzLmgK
QEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1
cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5jbHVkZSAiVGVzdFN0cmluZ2lm
aWVyT3BlcmF0aW9uSW1wbGVtZW50ZWRBcy5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3ll
ZC5oPgpAQCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RTdHJpbmdpZmllck9wZXJhdGlvbklt
cGxlbWVudGVkQXMgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RTdHJpbmdpZgogCiAgICAgREVD
TEFSRV9JTkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1
cmVJbmRleCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25JbXBsZW1l
bnRlZEFzOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6
Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBw
cm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2
bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RUeXBl
LCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJP
cGVyYXRpb25OYW1lZFRvU3RyaW5nLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRvU3RyaW5nLmgKaW5kZXgg
YjA3ODI4NzJjMmE3ZWU0YmFkNWRjNmYzNjdhM2YwZWQ0Nzg4ZWM0OS4uMTVkMGVhNmI0YjAyYzU1
MjE4NjM2MzA0YTJjMWU1Y2JjZTFhZTg2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0
cmluZy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmcuaApAQCAtMjAsNiArMjAsNyBAQAog
CiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJK
U0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0U3RyaW5naWZpZXJPcGVyYXRpb25OYW1lZFRv
U3RyaW5nLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkBAIC00Myw2ICs0NCw3
IEBAIGNsYXNzIEpTVGVzdFN0cmluZ2lmaWVyT3BlcmF0aW9uTmFtZWRUb1N0cmluZyA6IHB1Ymxp
YyBKU0RPTVdyYXBwZXI8VGVzdFN0cmluZ2lmCiAKICAgICBERUNMQVJFX0lORk87CiAKKyAgICBz
dGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gRE9NU3RydWN0
dXJlSUQ6OlRlc3RTdHJpbmdpZmllck9wZXJhdGlvbk5hbWVkVG9TdHJpbmc7CiAgICAgc3RhdGlj
IEpTQzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAg
ICAgICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHBy
b3RvdHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwg
aW5mbygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZp
ZXJSZWFkT25seUF0dHJpYnV0ZS5oCmluZGV4IDY3OTMxM2VkZjdhMTk3MzNhM2RkMjQ4Mjk5N2Zi
ZjViMjg0ZTZkZGQuLjI2Zjc1YzkxNmE5YjQwYzUyZmZlNTExNDE4NWQ0OGNkYWYyMjU4OTcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RT
dHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZE9ubHlBdHRyaWJ1dGUuaApA
QCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkRPTVN0cnVjdHVy
ZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJUZXN0U3RyaW5naWZp
ZXJSZWFkT25seUF0dHJpYnV0ZS5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpA
QCAtNDMsNiArNDQsNyBAQCBjbGFzcyBKU1Rlc3RTdHJpbmdpZmllclJlYWRPbmx5QXR0cmlidXRl
IDogcHVibGljIEpTRE9NV3JhcHBlcjxUZXN0U3RyaW5naWZpZXJSZQogCiAgICAgREVDTEFSRV9J
TkZPOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBET01TdHJ1Y3R1cmVJRCBzdHJ1Y3R1cmVJbmRl
eCA9IERPTVN0cnVjdHVyZUlEOjpUZXN0U3RyaW5naWZpZXJSZWFkT25seUF0dHJpYnV0ZTsKICAg
ICBzdGF0aWMgSlNDOjpTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0M6OlZNJiB2bSwgSlND
OjpKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBKU0M6OkpTVmFsdWUgcHJvdG90eXBlKQog
ICAgIHsKICAgICAgICAgcmV0dXJuIEpTQzo6U3RydWN0dXJlOjpjcmVhdGUodm0sIGdsb2JhbE9i
amVjdCwgcHJvdG90eXBlLCBKU0M6OlR5cGVJbmZvKEpTQzo6T2JqZWN0VHlwZSwgU3RydWN0dXJl
RmxhZ3MpLCBpbmZvKCksIEpTQzo6Tm9uQXJyYXkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRlQXR0
cmlidXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0
U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUuaAppbmRleCAxMjEzNzRlNDNkODAwNDMwM2Nl
ZDVkNzkzNzE1ZjkxNWE0NzMxM2NjLi5jZmFjYWQ0ZDFjZTkzNDdkNjhlNmI4ZWE5Mjc3NWZjYzJl
ZTNiZjIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
SlMvSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVB
dHRyaWJ1dGUuaApAQCAtMjAsNiArMjAsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUg
IkRPTVN0cnVjdHVyZXMuaCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuaCIKICNpbmNsdWRlICJU
ZXN0U3RyaW5naWZpZXJSZWFkV3JpdGVBdHRyaWJ1dGUuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJE
ZXN0cm95ZWQuaD4KQEAgLTQzLDYgKzQ0LDcgQEAgY2xhc3MgSlNUZXN0U3RyaW5naWZpZXJSZWFk
V3JpdGVBdHRyaWJ1dGUgOiBwdWJsaWMgSlNET01XcmFwcGVyPFRlc3RTdHJpbmdpZmllclIKIAog
ICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQg
c3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdFN0cmluZ2lmaWVyUmVhZFdyaXRl
QXR0cmlidXRlOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpT
Qzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1
ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0
ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpPYmplY3RU
eXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VGFnZ2VkV3Jh
cHBlci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFRh
Z2dlZFdyYXBwZXIuaAppbmRleCBiMWUxODlmYjhjOGMzZTYwNTVhMmZjZmQ0NzFmYzc1OTdmNTMw
YjJmLi45MjRhNDA4ODRhNWZhODczNWViZWQyZDVhYjY2ZTk5ODE5ZmVmNDA1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNUZXN0VGFnZ2VkV3Jh
cHBlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rl
c3RUYWdnZWRXcmFwcGVyLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNp
bmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFwcGVyLmgiCiAjaW5j
bHVkZSAiVGVzdFRhZ2dlZFdyYXBwZXIuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQu
aD4KQEAgLTQ0LDYgKzQ1LDcgQEAgY2xhc3MgSlNUZXN0VGFnZ2VkV3JhcHBlciA6IHB1YmxpYyBK
U0RPTVdyYXBwZXI8VGVzdFRhZ2dlZFdyYXBwZXIsIFNpZ25lZFB0clRyYWkKIAogICAgIERFQ0xB
UkVfSU5GTzsKIAorICAgIHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJl
SW5kZXggPSBET01TdHJ1Y3R1cmVJRDo6VGVzdFRhZ2dlZFdyYXBwZXI7CiAgICAgc3RhdGljIEpT
Qzo6U3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1cmUoSlNDOjpWTSYgdm0sIEpTQzo6SlNHbG9iYWxP
YmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkKICAgICB7CiAgICAg
ICAgIHJldHVybiBKU0M6OlN0cnVjdHVyZTo6Y3JlYXRlKHZtLCBnbG9iYWxPYmplY3QsIHByb3Rv
dHlwZSwgSlNDOjpUeXBlSW5mbyhKU0M6Ok9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgaW5m
bygpLCBKU0M6Ok5vbkFycmF5KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RUeXBlZGVmcy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdFR5cGVkZWZzLmgKaW5kZXggNmNmMjNhN2Y3MDk4ODgx
NzZlZGYwMzZhMmJmZTI3YjQzOTRiZTU2YS4uZjJlMzA5YjVjMjc2YjM3ODNlYTJjZjU1MWJlMzg1
MDdiZTI3MmNlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L0pTL0pTVGVzdFR5cGVkZWZzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L0pTL0pTVGVzdFR5cGVkZWZzLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdt
YSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFw
cGVyLmgiCiAjaW5jbHVkZSAiVGVzdFR5cGVkZWZzLmgiCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVz
dHJveWVkLmg+CkBAIC00Myw2ICs0NCw3IEBAIGNsYXNzIEpTVGVzdFR5cGVkZWZzIDogcHVibGlj
IEpTRE9NV3JhcHBlcjxUZXN0VHlwZWRlZnM+IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAg
IHN0YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1
Y3R1cmVJRDo6VGVzdFR5cGVkZWZzOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3JlYXRl
U3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpTdHJ1
Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUluZm8o
SlNDOjpPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNX
b3JrZXJHbG9iYWxTY29wZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L0pTL0pTV29ya2VyR2xvYmFsU2NvcGUuaAppbmRleCA5OWYyN2MzZmYxNjA0ODE2MTZjOGI3MDg3
MDhjNGU4OTQ4NTk5MzA1Li5hODE1Nzg4OTg2NDY5NTUyMTQzM2MwMmI0ZDZiYTczMTllMzJhOThi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNX
b3JrZXJHbG9iYWxTY29wZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9KUy9KU1dvcmtlckdsb2JhbFNjb3BlLmgKQEAgLTIwLDYgKzIwLDcgQEAKIAogI3ByYWdt
YSBvbmNlCiAKKyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAiSlNET01XcmFw
cGVyLmgiCiAjaW5jbHVkZSAiSlNFdmVudFRhcmdldC5oIgogCkBAIC00NCw2ICs0NSw3IEBAIGNs
YXNzIEpTV29ya2VyR2xvYmFsU2NvcGUgOiBwdWJsaWMgSlNFdmVudFRhcmdldCB7CiAKICAgICBE
RUNMQVJFX0lORk87CiAKKyAgICBzdGF0aWMgY29uc3RleHByIERPTVN0cnVjdHVyZUlEIHN0cnVj
dHVyZUluZGV4ID0gRE9NU3RydWN0dXJlSUQ6Oldvcmtlckdsb2JhbFNjb3BlOwogICAgIHN0YXRp
YyBKU0M6OlN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewog
ICAgICAgICByZXR1cm4gSlNDOjpTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBw
cm90b3R5cGUsIEpTQzo6VHlwZUluZm8oSlNDOjpHbG9iYWxPYmplY3RUeXBlLCBTdHJ1Y3R1cmVG
bGFncyksIGluZm8oKSwgSlNDOjpOb25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvSlMvSlNXb3JrbGV0R2xvYmFsU2NvcGUuaCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1dvcmtsZXRHbG9iYWxTY29wZS5o
CmluZGV4IDc2Y2FkNDQyN2UxOTIyYWIyZWIyMjliYmMwYjQ1Y2U0ODQ1NmJhZGQuLjdhNzdiNTUz
YzMzNzFhZDZlNGFjNTJjYjQ4YTRiZmM1Y2NkMjNhZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1dvcmtsZXRHbG9iYWxTY29wZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1dvcmtsZXRHbG9iYWxT
Y29wZS5oCkBAIC0yMCw2ICsyMCw3IEBACiAKICNwcmFnbWEgb25jZQogCisjaW5jbHVkZSAiRE9N
U3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NV3JhcHBlci5oIgogI2luY2x1ZGUgIkpTRXZl
bnRUYXJnZXQuaCIKIApAQCAtNDQsNiArNDUsNyBAQCBjbGFzcyBKU1dvcmtsZXRHbG9iYWxTY29w
ZSA6IHB1YmxpYyBKU0V2ZW50VGFyZ2V0IHsKIAogICAgIERFQ0xBUkVfSU5GTzsKIAorICAgIHN0
YXRpYyBjb25zdGV4cHIgRE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBET01TdHJ1Y3R1
cmVJRDo6V29ya2xldEdsb2JhbFNjb3BlOwogICAgIHN0YXRpYyBKU0M6OlN0cnVjdHVyZSogY3Jl
YXRlU3RydWN0dXJlKEpTQzo6Vk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIEpTQzo6SlNWYWx1ZSBwcm90b3R5cGUpCiAgICAgewogICAgICAgICByZXR1cm4gSlNDOjpT
dHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0LCBwcm90b3R5cGUsIEpTQzo6VHlwZUlu
Zm8oSlNDOjpHbG9iYWxPYmplY3RUeXBlLCBTdHJ1Y3R1cmVGbGFncyksIGluZm8oKSwgSlNDOjpO
b25BcnJheSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9PYmpDUnVu
dGltZU9iamVjdC5oIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvT2JqQ1J1bnRpbWVPYmpl
Y3QuaAppbmRleCAxNjgxOWUwMDY0ZTI1NTVlNzM4OTU5YTQ5MDEzMDhhZmEwNTMyMDNhLi45Zjhm
ZDQ4ZTQ1M2EzNzJiZTMxYTFkNjliNmQ1MGZlMWJmZjliN2FiIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9icmlkZ2Uvb2JqYy9PYmpDUnVudGltZU9iamVjdC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JyaWRnZS9vYmpjL09iakNSdW50aW1lT2JqZWN0LmgKQEAgLTI2LDYgKzI2LDcgQEAKICNp
Zm5kZWYgT2JqQ1J1bnRpbWVPYmplY3RfaAogI2RlZmluZSBPYmpDUnVudGltZU9iamVjdF9oCiAK
KyNpbmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSAicnVudGltZV9vYmplY3QuaCIK
IAogbmFtZXNwYWNlIEpTQyB7CkBAIC0zNiw2ICszNyw3IEBAIGNsYXNzIE9iamNJbnN0YW5jZTsK
IGNsYXNzIE9iakNSdW50aW1lT2JqZWN0IGZpbmFsIDogcHVibGljIFJ1bnRpbWVPYmplY3Qgewog
cHVibGljOgogICAgIHVzaW5nIEJhc2UgPSBSdW50aW1lT2JqZWN0OworICAgIHN0YXRpYyBjb25z
dGV4cHIgV2ViQ29yZTo6RE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBXZWJDb3JlOjpE
T01TdHJ1Y3R1cmVJRDo6T2JqQ1J1bnRpbWVPYmplY3Q7CiAKICAgICBzdGF0aWMgT2JqQ1J1bnRp
bWVPYmplY3QqIGNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3RydWN0dXJlLCBSZWZQdHI8T2Jq
Y0luc3RhbmNlPiYmIGluc3QpCiAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJp
ZGdlL29iamMvb2JqY19pbnN0YW5jZS5tbSBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29i
amNfaW5zdGFuY2UubW0KaW5kZXggNWIxYTgzNTNkOTAyZTFmOGQ3MzYyOGM2OTBiM2Y3NGIyMGYx
Y2ZlNC4uZGJlZjQ3ODNjOWIzMWVlM2JmMTJjMzU2MmRlYjVhMWIyYTU0NTE3NyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5tbQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX2luc3RhbmNlLm1tCkBAIC0yNiw2ICsyNiw3IEBA
CiAjaW1wb3J0ICJjb25maWcuaCIKICNpbXBvcnQgIm9iamNfaW5zdGFuY2UuaCIKIAorI2ltcG9y
dCAiRE9NU3RydWN0dXJlcy5oIgogI2ltcG9ydCAiSlNET01CaW5kaW5nLmgiCiAjaW1wb3J0ICJP
YmpDUnVudGltZU9iamVjdC5oIgogI2ltcG9ydCAiV2ViU2NyaXB0T2JqZWN0LmgiCkBAIC0xNzIs
NiArMTczLDggQEAgYm9vbCBPYmpjSW5zdGFuY2U6OnN1cHBvcnRzSW52b2tlRGVmYXVsdE1ldGhv
ZCgpIGNvbnN0CiAKIGNsYXNzIE9iakNSdW50aW1lTWV0aG9kIGZpbmFsIDogcHVibGljIFJ1bnRp
bWVNZXRob2QgewogcHVibGljOgorICAgIHN0YXRpYyBjb25zdGV4cHIgV2ViQ29yZTo6RE9NU3Ry
dWN0dXJlSUQgc3RydWN0dXJlSW5kZXggPSBXZWJDb3JlOjpET01TdHJ1Y3R1cmVJRDo6T2JqQ1J1
bnRpbWVNZXRob2Q7CisKICAgICBzdGF0aWMgT2JqQ1J1bnRpbWVNZXRob2QqIGNyZWF0ZShKU0ds
b2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVjdCwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgY29uc3QgU3RyaW5nJiBuYW1lLCBCaW5kaW5nczo6TWV0aG9kKiBtZXRob2QpCiAgICAg
ewogICAgICAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3QtPnZtKCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Jy
aWRnZS9vYmpjL29iamNfcnVudGltZS5oCmluZGV4IDBhMDk0YjY5YzgxNDc3NmFkNTI0MzdiZDg2
ZGQ1ZDVlMTU0MzEzOTcuLjFhMDZlMzIyMjMyZWE3NTc0YmViMWMwMWIyZTY4ZjZhYjNiOWRkMTYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfcnVudGltZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfcnVudGltZS5oCkBAIC0yNyw2ICsy
Nyw3IEBACiAjZGVmaW5lIEtKU19CSU5ESU5HU19PQkpDX1JVTlRJTUVfSAogCiAjaW5jbHVkZSAi
QnJpZGdlSlNDLmgiCisjaW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9N
QmluZGluZy5oIgogI2luY2x1ZGUgIm9iamNfaGVhZGVyLmgiCiAjaW5jbHVkZSA8SmF2YVNjcmlw
dENvcmUvSlNHbG9iYWxPYmplY3QuaD4KQEAgLTkzLDYgKzk0LDcgQEAgY2xhc3MgT2JqY0ZhbGxi
YWNrT2JqZWN0SW1wIGZpbmFsIDogcHVibGljIEpTRGVzdHJ1Y3RpYmxlT2JqZWN0IHsKICAgICB1
c2luZyBCYXNlID0gSlNEZXN0cnVjdGlibGVPYmplY3Q7CiAgICAgc3RhdGljIGNvbnN0ZXhwciB1
bnNpZ25lZCBTdHJ1Y3R1cmVGbGFncyA9IEJhc2U6OlN0cnVjdHVyZUZsYWdzIHwgT3ZlcnJpZGVz
R2V0T3duUHJvcGVydHlTbG90IHwgT3ZlcnJpZGVzR2V0Q2FsbERhdGEgfCBPdmVycmlkZXNQdXQ7
CiAgICAgc3RhdGljIGNvbnN0ZXhwciBib29sIG5lZWRzRGVzdHJ1Y3Rpb24gPSB0cnVlOworICAg
IHN0YXRpYyBjb25zdGV4cHIgV2ViQ29yZTo6RE9NU3RydWN0dXJlSUQgc3RydWN0dXJlSW5kZXgg
PSBXZWJDb3JlOjpET01TdHJ1Y3R1cmVJRDo6T2JqY0ZhbGxiYWNrT2JqZWN0SW1wOwogCiAgICAg
dGVtcGxhdGU8dHlwZW5hbWUgQ2VsbFR5cGUsIEpTQzo6U3Vic3BhY2VBY2Nlc3M+CiAgICAgc3Rh
dGljIEdDQ2xpZW50OjpJc29TdWJzcGFjZSogc3Vic3BhY2VGb3IoSlNDOjpWTSYgdm0pCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9hcnJheS5oIGIvU291cmNlL1dl
YkNvcmUvYnJpZGdlL3J1bnRpbWVfYXJyYXkuaAppbmRleCAzZjQ1ZGUzMjRhZTYyOGY3ZWNkOWUz
NTc0NGRjMTJmZWQ4MzgwODBjLi43ZGJhZDllYjczOThjYWQyYTZiNWZlYzhlMzAxY2U1YjJjNWYy
NzU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9hcnJheS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX2FycmF5LmgKQEAgLTI3LDYgKzI3LDcg
QEAKICNkZWZpbmUgUlVOVElNRV9BUlJBWV9IXwogCiAjaW5jbHVkZSAiQnJpZGdlSlNDLmgiCisj
aW5jbHVkZSAiRE9NU3RydWN0dXJlcy5oIgogI2luY2x1ZGUgIkpTRE9NQmluZGluZy5oIgogI2lu
Y2x1ZGUgPEphdmFTY3JpcHRDb3JlL0FycmF5UHJvdG90eXBlLmg+CiAKQEAgLTM3LDYgKzM4LDcg
QEAgY2xhc3MgUnVudGltZUFycmF5IGZpbmFsIDogcHVibGljIEpTQXJyYXkgewogICAgIHVzaW5n
IEJhc2UgPSBKU0FycmF5OwogICAgIHN0YXRpYyBjb25zdGV4cHIgdW5zaWduZWQgU3RydWN0dXJl
RmxhZ3MgPSBCYXNlOjpTdHJ1Y3R1cmVGbGFncyB8IE92ZXJyaWRlc0dldE93blByb3BlcnR5U2xv
dCB8IE92ZXJyaWRlc0dldE93blByb3BlcnR5TmFtZXMgfCBPdmVycmlkZXNQdXQgfCBJbnRlcmNl
cHRzR2V0T3duUHJvcGVydHlTbG90QnlJbmRleEV2ZW5XaGVuTGVuZ3RoSXNOb3RaZXJvOwogICAg
IHN0YXRpYyBjb25zdGV4cHIgYm9vbCBuZWVkc0Rlc3RydWN0aW9uID0gdHJ1ZTsKKyAgICBzdGF0
aWMgY29uc3RleHByIFdlYkNvcmU6OkRPTVN0cnVjdHVyZUlEIHN0cnVjdHVyZUluZGV4ID0gV2Vi
Q29yZTo6RE9NU3RydWN0dXJlSUQ6OlJ1bnRpbWVBcnJheTsKIAogICAgIHRlbXBsYXRlPHR5cGVu
YW1lIENlbGxUeXBlLCBKU0M6OlN1YnNwYWNlQWNjZXNzPgogICAgIHN0YXRpYyBKU0M6OkdDQ2xp
ZW50OjpJc29TdWJzcGFjZSogc3Vic3BhY2VGb3IoSlNDOjpWTSYgdm0pCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9vYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL2Jy
aWRnZS9ydW50aW1lX29iamVjdC5oCmluZGV4IDJjMzZjMGQ4ZTg2OTE2NWE4ZjgwMTVkYWM4NjVl
YTg3YjU4NTI4OGIuLjZiYWQ3MjkzMjdjMzA2YmE2ZmM0NDM2M2UwY2EwNzViMmE3ZDA2MWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX29iamVjdC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX29iamVjdC5oCkBAIC0yNyw2ICsyNyw3IEBACiAj
ZGVmaW5lIEtKU19SVU5USU1FX09CSkVDVF9ICiAKICNpbmNsdWRlICJCcmlkZ2VKU0MuaCIKKyNp
bmNsdWRlICJET01TdHJ1Y3R1cmVzLmgiCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNHbG9i
YWxPYmplY3QuaD4KIAogbmFtZXNwYWNlIEpTQyB7CkBAIC0zOSw2ICs0MCw3IEBAIGNsYXNzIFdF
QkNPUkVfRVhQT1JUIFJ1bnRpbWVPYmplY3QgOiBwdWJsaWMgSlNOb25GaW5hbE9iamVjdCB7CiAg
ICAgdXNpbmcgQmFzZSA9IEpTTm9uRmluYWxPYmplY3Q7CiAgICAgc3RhdGljIGNvbnN0ZXhwciB1
bnNpZ25lZCBTdHJ1Y3R1cmVGbGFncyA9IEJhc2U6OlN0cnVjdHVyZUZsYWdzIHwgT3ZlcnJpZGVz
R2V0T3duUHJvcGVydHlTbG90IHwgT3ZlcnJpZGVzR2V0T3duUHJvcGVydHlOYW1lcyB8IE92ZXJy
aWRlc0dldENhbGxEYXRhIHwgT3ZlcnJpZGVzUHV0IHwgR2V0T3duUHJvcGVydHlTbG90TWF5QmVX
cm9uZ0Fib3V0RG9udEVudW07CiAgICAgc3RhdGljIGNvbnN0ZXhwciBib29sIG5lZWRzRGVzdHJ1
Y3Rpb24gPSB0cnVlOworICAgIHN0YXRpYyBjb25zdGV4cHIgV2ViQ29yZTo6RE9NU3RydWN0dXJl
SUQgc3RydWN0dXJlSW5kZXggPSBXZWJDb3JlOjpET01TdHJ1Y3R1cmVJRDo6UnVudGltZU9iamVj
dDsKIAogICAgIHRlbXBsYXRlPHR5cGVuYW1lIENlbGxUeXBlLCBKU0M6OlN1YnNwYWNlQWNjZXNz
PgogICAgIHN0YXRpYyBHQ0NsaWVudDo6SXNvU3Vic3BhY2UqIHN1YnNwYWNlRm9yKEpTQzo6Vk0m
IHZtKQo=
</data>
<flag name="commit-queue"
          id="480162"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>