<?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>131046</bug_id>
          
          <creation_ts>2014-04-01 10:26:46 -0700</creation_ts>
          <short_desc>[CSS Exclusions] Remove exclusions parsing support</short_desc>
          <delta_ts>2014-04-01 15:14:06 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>57311</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Zoltan Horvath">zoltan</reporter>
          <assigned_to name="Zoltan Horvath">zoltan</assigned_to>
          <cc>allan.jensen</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>996349</commentid>
    <comment_count>0</comment_count>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2014-04-01 10:26:46 -0700</bug_when>
    <thetext>CSS Exclusions specification [1] needs some evolution before the actual implementation happens.
We have only the parsing code in WebKit for -webkit-wrap-flow and -webkit-wrap-through. 
This patch removes the code from the trunk for now, it doesn&apos;t make sense to keep it around.

[1] http://www.w3.org/TR/css3-exclusions/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>996368</commentid>
    <comment_count>1</comment_count>
      <attachid>228302</attachid>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2014-04-01 11:08:24 -0700</bug_when>
    <thetext>Created attachment 228302
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>996374</commentid>
    <comment_count>2</comment_count>
      <attachid>228303</attachid>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2014-04-01 11:36:56 -0700</bug_when>
    <thetext>Created attachment 228303
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>996462</commentid>
    <comment_count>3</comment_count>
      <attachid>228303</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2014-04-01 14:44:24 -0700</bug_when>
    <thetext>Comment on attachment 228303
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>996477</commentid>
    <comment_count>4</comment_count>
      <attachid>228303</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-04-01 15:14:01 -0700</bug_when>
    <thetext>Comment on attachment 228303
Patch

Clearing flags on attachment: 228303

Committed r166618: &lt;http://trac.webkit.org/changeset/166618&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>996478</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-04-01 15:14:06 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>228302</attachid>
            <date>2014-04-01 11:08:24 -0700</date>
            <delta_ts>2014-04-01 11:36:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>removeexclusions.patch</filename>
            <type>text/plain</type>
            <size>36828</size>
            <attacher name="Zoltan Horvath">zoltan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBjNzc2NWRiLi4yNmE0ZjVjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTQtMDQt
MDEgIFpvbHRhbiBIb3J2YXRoICA8em9sdGFuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgW0NTUyBF
eGNsdXNpb25zXSBSZW1vdmUgZXhjbHVzaW9ucyBwYXJzaW5nIHN1cHBvcnQKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMTA0NgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9leGNsdXNpb25zL2Nz
cy1leGNsdXNpb25zLWRpc2FibGVkLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBm
YXN0L2V4Y2x1c2lvbnMvY3NzLWV4Y2x1c2lvbnMtZGlzYWJsZWQuaHRtbDogUmVtb3ZlZC4KKyAg
ICAgICAgKiBmYXN0L2V4Y2x1c2lvbnMvY3NzLWV4Y2x1c2lvbnMtZW5hYmxlZC1leHBlY3RlZC50
eHQ6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9leGNsdXNpb25zL2Nzcy1leGNsdXNpb25zLWVu
YWJsZWQuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2V4Y2x1c2lvbnMvcGFyc2luZy9w
YXJzaW5nLXdyYXAtZmxvdy1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9l
eGNsdXNpb25zL3BhcnNpbmcvcGFyc2luZy13cmFwLWZsb3cuaHRtbDogUmVtb3ZlZC4KKyAgICAg
ICAgKiBmYXN0L2V4Y2x1c2lvbnMvcGFyc2luZy9wYXJzaW5nLXdyYXAtdGhyb3VnaC1leHBlY3Rl
ZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9leGNsdXNpb25zL3BhcnNpbmcvcGFyc2lu
Zy13cmFwLXRocm91Z2guaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2V4Y2x1c2lvbnMv
cGFyc2luZy9zY3JpcHQtdGVzdHMvcGFyc2luZy10ZXN0LXV0aWxzLmpzOiBSZW1vdmVkLgorICAg
ICAgICAqIGZhc3QvZXhjbHVzaW9ucy9wYXJzaW5nL3NjcmlwdC10ZXN0cy9wYXJzaW5nLXdyYXAt
Zmxvdy5qczogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2V4Y2x1c2lvbnMvcGFyc2luZy9zY3Jp
cHQtdGVzdHMvcGFyc2luZy13cmFwLXRocm91Z2guanM6IFJlbW92ZWQuCisgICAgICAgICogcGxh
dGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogcGxhdGZvcm0vd2luY2Fpcm8v
VGVzdEV4cGVjdGF0aW9uczoKKwogMjAxNC0wNC0wMSAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBw
bGUuY29tPgogCiAgICAgICAgIFN1YnBpeGVsIHJlbmRlcmluZzogVHJhbnNpdGlvbiBjbGFzcyBJ
bWFnZSAoYW5kIGl0cyBkZXBlbmRlbmNpZXMpIGZyb20gaW50IHRvIGZsb2F0IHRvIGVuYWJsZSBz
dWJwaXhlbCBwb3NpdGlvbmVkL3NpemVkIGltYWdlcy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvZXhjbHVzaW9ucy9jc3MtZXhjbHVzaW9ucy1kaXNhYmxlZC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L2V4Y2x1c2lvbnMvY3NzLWV4Y2x1c2lvbnMtZGlzYWJsZWQtZXhwZWN0
ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlYjMzZWQ4Li4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9jc3MtZXhjbHVzaW9ucy1kaXNhYmxlZC1l
eHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi1UZXN0IHRoYXQgcGFy
c2luZyBvZiBjc3MgZXhjbHVzaW9ucyByZWxhdGVkIHByb3BlcnRpZXMgY2FuIGJlIGRpc2FibGVk
LgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotUEFTUyB0ZXN0SW5saW5lU3R5bGUo
Ii13ZWJraXQtd3JhcC1mbG93IiwgImJvdGgiKSBpcyBudWxsCi1QQVNTIHRlc3RDb21wdXRlZFN0
eWxlKCItd2Via2l0LXdyYXAtZmxvdyIsICJib3RoIikgaXMgImF1dG8iCi1QQVNTIHRlc3RJbmxp
bmVTdHlsZSgiLXdlYmtpdC13cmFwLXRocm91Z2giLCAibm9uZSIpIGlzIG51bGwKLVBBU1MgdGVz
dENvbXB1dGVkU3R5bGUoIi13ZWJraXQtd3JhcC10aHJvdWdoIiwgIm5vbmUiKSBpcyAid3JhcCIK
LVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V4Y2x1c2lvbnMvY3NzLWV4Y2x1c2lvbnMtZGlzYWJs
ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9jc3MtZXhjbHVzaW9ucy1kaXNh
YmxlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5MDdhMDI2Li4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9jc3MtZXhjbHVzaW9ucy1kaXNhYmxl
ZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNDAgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08
aHRtbD4KLTxib2R5PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5q
cyI+PC9zY3JpcHQ+Ci08c2NyaXB0PgotCi1kZXNjcmlwdGlvbignVGVzdCB0aGF0IHBhcnNpbmcg
b2YgY3NzIGV4Y2x1c2lvbnMgcmVsYXRlZCBwcm9wZXJ0aWVzIGNhbiBiZSBkaXNhYmxlZC4nKTsK
LQotaWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsKLSAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdz
LnNldENTU1NoYXBlc0VuYWJsZWQoZmFsc2UpOwotICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGlu
Z3Muc2V0Q1NTRXhjbHVzaW9uc0VuYWJsZWQoZmFsc2UpOwotfQotCi1mdW5jdGlvbiB0ZXN0SW5s
aW5lU3R5bGUocHJvcGVydHksIHZhbHVlKSB7Ci0gICAgdmFyIGRpdiA9IGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnQoImRpdiIpOwotICAgIGRpdi5zZXRBdHRyaWJ1dGUoInN0eWxlIiwgcHJvcGVydHkg
KyAiOiAiICsgdmFsdWUpOwotICAgIHJldHVybiBkaXYuc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZShw
cm9wZXJ0eSk7Ci19Ci0KLWZ1bmN0aW9uIHRlc3RDb21wdXRlZFN0eWxlKHByb3BlcnR5LCB2YWx1
ZSkgewotICAgIHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICBk
b2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGRpdik7Ci0gICAgZGl2LnN0eWxlLnNldFByb3BlcnR5
KHByb3BlcnR5LCB2YWx1ZSk7Ci0gICAgdmFyIGNvbXB1dGVkVmFsdWUgPSBnZXRDb21wdXRlZFN0
eWxlKGRpdikuZ2V0UHJvcGVydHlWYWx1ZShwcm9wZXJ0eSk7Ci0gICAgZG9jdW1lbnQuYm9keS5y
ZW1vdmVDaGlsZChkaXYpOwotICAgIHJldHVybiBjb21wdXRlZFZhbHVlOwotfQotCi1mdW5jdGlv
biB0ZXN0U3R5bGUocHJvcGVydHksIHZhbHVlLCBjb21wdXRlZEV4cGVjdGVkKSB7Ci0gICAgc2hv
dWxkQmVOdWxsKCd0ZXN0SW5saW5lU3R5bGUoIicgKyBwcm9wZXJ0eSArICciLCAiJyArIHZhbHVl
ICsgJyIpJyk7Ci0gICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0Q29tcHV0ZWRTdHlsZSgi
JyArIHByb3BlcnR5ICsgJyIsICInICsgdmFsdWUgKyAnIiknLCBjb21wdXRlZEV4cGVjdGVkKTsK
LX0KLQotdGVzdFN0eWxlKCItd2Via2l0LXdyYXAtZmxvdyIsICJib3RoIiwgImF1dG8iKTsKLXRl
c3RTdHlsZSgiLXdlYmtpdC13cmFwLXRocm91Z2giLCAibm9uZSIsICJ3cmFwIik7Ci0KLTwvc2Ny
aXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2Ny
aXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9leGNs
dXNpb25zL2Nzcy1leGNsdXNpb25zLWVuYWJsZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
ZmFzdC9leGNsdXNpb25zL2Nzcy1leGNsdXNpb25zLWVuYWJsZWQtZXhwZWN0ZWQudHh0CmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwZTcyZTBmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvZXhjbHVzaW9ucy9jc3MtZXhjbHVzaW9ucy1lbmFibGVkLWV4cGVjdGVkLnR4dAor
KysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAKLVRlc3QgdGhhdCBwYXJzaW5nIG9mIGNzcyBl
eGNsdXNpb25zIHJlbGF0ZWQgcHJvcGVydGllcyBpcyBlbmFibGVkIGJ5IGRlZmF1bHQuCi0KLU9u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIHRlc3RJbmxpbmVTdHlsZSgiLXdlYmtp
dC13cmFwLWZsb3ciLCAiYm90aCIpIGlzICJib3RoIgotUEFTUyB0ZXN0Q29tcHV0ZWRTdHlsZSgi
LXdlYmtpdC13cmFwLWZsb3ciLCAiYm90aCIpIGlzICJib3RoIgotUEFTUyB0ZXN0SW5saW5lU3R5
bGUoIi13ZWJraXQtd3JhcC10aHJvdWdoIiwgIm5vbmUiKSBpcyAibm9uZSIKLVBBU1MgdGVzdENv
bXB1dGVkU3R5bGUoIi13ZWJraXQtd3JhcC10aHJvdWdoIiwgIm5vbmUiKSBpcyAibm9uZSIKLVBB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V4Y2x1c2lvbnMvY3NzLWV4Y2x1c2lvbnMtZW5hYmxlZC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9leGNsdXNpb25zL2Nzcy1leGNsdXNpb25zLWVuYWJsZWQu
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTcwNzJhOC4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L2V4Y2x1c2lvbnMvY3NzLWV4Y2x1c2lvbnMtZW5hYmxlZC5odG1s
CisrKyAvZGV2L251bGwKQEAgLTEsMzUgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4K
LTxib2R5PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9z
Y3JpcHQ+Ci08c2NyaXB0PgotCi1kZXNjcmlwdGlvbignVGVzdCB0aGF0IHBhcnNpbmcgb2YgY3Nz
IGV4Y2x1c2lvbnMgcmVsYXRlZCBwcm9wZXJ0aWVzIGlzIGVuYWJsZWQgYnkgZGVmYXVsdC4nKTsK
LQotZnVuY3Rpb24gdGVzdElubGluZVN0eWxlKHByb3BlcnR5LCB2YWx1ZSkgewotICAgIHZhciBk
aXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICBkaXYuc2V0QXR0cmlidXRl
KCJzdHlsZSIsIHByb3BlcnR5ICsgIjogIiArIHZhbHVlKTsKLSAgICByZXR1cm4gZGl2LnN0eWxl
LmdldFByb3BlcnR5VmFsdWUocHJvcGVydHkpOwotfQotCi1mdW5jdGlvbiB0ZXN0Q29tcHV0ZWRT
dHlsZShwcm9wZXJ0eSwgdmFsdWUpIHsKLSAgICB2YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgiZGl2Iik7Ci0gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkaXYpOwotICAgIGRp
di5zdHlsZS5zZXRQcm9wZXJ0eShwcm9wZXJ0eSwgdmFsdWUpOwotICAgIHZhciBjb21wdXRlZFZh
bHVlID0gZ2V0Q29tcHV0ZWRTdHlsZShkaXYpLmdldFByb3BlcnR5VmFsdWUocHJvcGVydHkpOwot
ICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZGl2KTsKLSAgICByZXR1cm4gY29tcHV0ZWRW
YWx1ZTsKLX0KLQotZnVuY3Rpb24gdGVzdFN0eWxlKHByb3BlcnR5LCB2YWx1ZSwgZXhwZWN0ZWQp
IHsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3RJbmxpbmVTdHlsZSgiJyArIHByb3Bl
cnR5ICsgJyIsICInICsgdmFsdWUgKyAnIiknLCBleHBlY3RlZCk7Ci0gICAgc2hvdWxkQmVFcXVh
bFRvU3RyaW5nKCd0ZXN0Q29tcHV0ZWRTdHlsZSgiJyArIHByb3BlcnR5ICsgJyIsICInICsgdmFs
dWUgKyAnIiknLCBleHBlY3RlZCk7Ci19Ci0KLXRlc3RTdHlsZSgiLXdlYmtpdC13cmFwLWZsb3ci
LCAiYm90aCIsICJib3RoIik7Ci10ZXN0U3R5bGUoIi13ZWJraXQtd3JhcC10aHJvdWdoIiwgIm5v
bmUiLCAibm9uZSIpOwotCi08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9wYXJzaW5nL3BhcnNpbmctd3JhcC1mbG93LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9wYXJzaW5nL3BhcnNpbmct
d3JhcC1mbG93LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDQ4
N2U1OC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2V4Y2x1c2lvbnMvcGFyc2luZy9w
YXJzaW5nLXdyYXAtZmxvdy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwyNSArMCww
IEBACi1UZXN0IHBhcnNpbmcgb2YgdGhlIENTUyB3cmFwLWZsb3cgcHJvcGVydHkuCi0KLU9uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIGdldENTU1RleHQoIi13ZWJraXQtd3JhcC1m
bG93IiwgImF1dG8iKSBpcyAiYXV0byIKLVBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC13cmFwLWZs
b3ciLCAiYm90aCIpIGlzICJib3RoIgotUEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXdyYXAtZmxv
dyIsICJzdGFydCIpIGlzICJzdGFydCIKLVBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC13cmFwLWZs
b3ciLCAiZW5kIikgaXMgImVuZCIKLVBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC13cmFwLWZsb3ci
LCAibWF4aW11bSIpIGlzICJtYXhpbXVtIgotUEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXdyYXAt
ZmxvdyIsICJjbGVhciIpIGlzICJjbGVhciIKLVBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC13cmFw
LWZsb3ciLCAiOyIpIGlzICIiCi1QQVNTIGdldENTU1RleHQoIi13ZWJraXQtd3JhcC1mbG93Iiwg
IjUiKSBpcyAiIgotUEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXdyYXAtZmxvdyIsICItMS4yIikg
aXMgIiIKLVBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC13cmFwLWZsb3ciLCAiJ3N0cmluZyciKSBp
cyAiIgotUEFTUyBnZXRDb21wdXRlZFN0eWxlVmFsdWUoIi13ZWJraXQtd3JhcC1mbG93IiwgImF1
dG8iKSBpcyAiYXV0byIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZVZhbHVlKCItd2Via2l0LXdyYXAt
ZmxvdyIsICI1IikgaXMgImF1dG8iCi1QQVNTIGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtp
dC13cmFwLWZsb3ciLCAiJ3N0cmluZyciKSBpcyAiYXV0byIKLVBBU1MgZ2V0Q2hpbGRDb21wdXRl
ZFN0eWxlKCItd2Via2l0LXdyYXAtZmxvdyIsICJhdXRvIiwgInN0YXJ0IikgaXMgInN0YXJ0Igot
UEFTUyBnZXRDaGlsZENvbXB1dGVkU3R5bGUoIi13ZWJraXQtd3JhcC1mbG93IiwgImVuZCIsICJh
dXRvIikgaXMgImF1dG8iCi1QQVNTIGdldENoaWxkQ29tcHV0ZWRTdHlsZSgiLXdlYmtpdC13cmFw
LWZsb3ciLCAiYm90aCIsICJjbGVhciIpIGlzICJjbGVhciIKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L2V4Y2x1c2lvbnMvcGFyc2luZy9wYXJzaW5nLXdyYXAtZmxvdy5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9leGNsdXNpb25zL3BhcnNpbmcvcGFyc2luZy13cmFwLWZsb3cuaHRtbApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjg5NzhlNi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9mYXN0L2V4Y2x1c2lvbnMvcGFyc2luZy9wYXJzaW5nLXdyYXAtZmxvdy5odG1sCisrKyAvZGV2
L251bGwKQEAgLTEsMTEgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgot
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
Ci08L2hlYWQ+Ci08Ym9keT4KLTxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvcGFyc2luZy10ZXN0
LXV0aWxzLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvcGFyc2luZy13
cmFwLWZsb3cuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9leGNsdXNpb25zL3BhcnNpbmcvcGFyc2luZy13cmFwLXRocm91Z2gt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9leGNsdXNpb25zL3BhcnNpbmcvcGFyc2lu
Zy13cmFwLXRocm91Z2gtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBlOTliMjg1Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9wYXJz
aW5nL3BhcnNpbmctd3JhcC10aHJvdWdoLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0x
LDIwICswLDAgQEAKLVRlc3QgcGFyc2luZyBvZiB0aGUgQ1NTIHdyYXAtdGhyb3VnaCBwcm9wZXJ0
eS4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1MgZ2V0Q1NTVGV4dCgiLXdl
YmtpdC13cmFwLXRocm91Z2giLCAid3JhcCIpIGlzICJ3cmFwIgotUEFTUyBnZXRDU1NUZXh0KCIt
d2Via2l0LXdyYXAtdGhyb3VnaCIsICJub25lIikgaXMgIm5vbmUiCi1QQVNTIGdldENTU1RleHQo
Ii13ZWJraXQtd3JhcC10aHJvdWdoIiwgIjsiKSBpcyAiIgotUEFTUyBnZXRDU1NUZXh0KCItd2Vi
a2l0LXdyYXAtdGhyb3VnaCIsICI1IikgaXMgIiIKLVBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC13
cmFwLXRocm91Z2giLCAiLTEuMiIpIGlzICIiCi1QQVNTIGdldENTU1RleHQoIi13ZWJraXQtd3Jh
cC10aHJvdWdoIiwgIidzdHJpbmcnIikgaXMgIiIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZVZhbHVl
KCItd2Via2l0LXdyYXAtdGhyb3VnaCIsICJ3cmFwIikgaXMgIndyYXAiCi1QQVNTIGdldENvbXB1
dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC13cmFwLXRocm91Z2giLCAiNSIpIGlzICJ3cmFwIgotUEFT
UyBnZXRDb21wdXRlZFN0eWxlVmFsdWUoIi13ZWJraXQtd3JhcC10aHJvdWdoIiwgIidzdHJpbmcn
IikgaXMgIndyYXAiCi1QQVNTIGdldENoaWxkQ29tcHV0ZWRTdHlsZSgiLXdlYmtpdC13cmFwLXRo
cm91Z2giLCAid3JhcCIsICJub25lIikgaXMgIm5vbmUiCi1QQVNTIGdldENoaWxkQ29tcHV0ZWRT
dHlsZSgiLXdlYmtpdC13cmFwLXRocm91Z2giLCAibm9uZSIsICJ3cmFwIikgaXMgIndyYXAiCi1Q
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9leGNsdXNpb25zL3BhcnNpbmcvcGFyc2luZy13cmFwLXRo
cm91Z2guaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9wYXJzaW5nL3BhcnNpbmct
d3JhcC10aHJvdWdoLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNjYmFjZWYu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9leGNsdXNpb25zL3BhcnNpbmcvcGFyc2lu
Zy13cmFwLXRocm91Z2guaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAKLTwhRE9D
VFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08c2NyaXB0IHNy
Yz0ic2NyaXB0LXRlc3RzL3BhcnNpbmctdGVzdC11dGlscy5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0ic2NyaXB0LXRlc3RzL3BhcnNpbmctd3JhcC10aHJvdWdoLmpzIj48L3NjcmlwdD4KLTxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
LTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9u
cy9wYXJzaW5nL3NjcmlwdC10ZXN0cy9wYXJzaW5nLXRlc3QtdXRpbHMuanMgYi9MYXlvdXRUZXN0
cy9mYXN0L2V4Y2x1c2lvbnMvcGFyc2luZy9zY3JpcHQtdGVzdHMvcGFyc2luZy10ZXN0LXV0aWxz
LmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlYWMwYjU2Li4wMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9wYXJzaW5nL3NjcmlwdC10ZXN0cy9wYXJzaW5n
LXRlc3QtdXRpbHMuanMKKysrIC9kZXYvbnVsbApAQCAtMSw2MyArMCwwIEBACi1mdW5jdGlvbiBn
ZXRDU1NUZXh0KHByb3BlcnR5LCB2YWx1ZSkKLXsKLSAgICB2YXIgZWxlbWVudCA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgIGVsZW1lbnQuc3R5bGUuY3NzVGV4dCA9IHByb3Bl
cnR5ICsgIjogIiArIHZhbHVlOwotICAgIHJldHVybiBlbGVtZW50LnN0eWxlW3Byb3BlcnR5XTsK
LX0KLQotZnVuY3Rpb24gZ2V0Q29tcHV0ZWRTdHlsZVZhbHVlKHByb3BlcnR5LCB2YWx1ZSkgCi17
Ci0gICAgdmFyIGVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICBk
b2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGVsZW1lbnQpOwotICAgIGVsZW1lbnQuc3R5bGUuc2V0
UHJvcGVydHkocHJvcGVydHksIHZhbHVlKTsKLSAgICB2YXIgY29tcHV0ZWRWYWx1ZSA9IGdldENv
bXB1dGVkU3R5bGUoZWxlbWVudCkuZ2V0UHJvcGVydHlWYWx1ZShwcm9wZXJ0eSk7Ci0gICAgZG9j
dW1lbnQuYm9keS5yZW1vdmVDaGlsZChlbGVtZW50KTsKLSAgICByZXR1cm4gY29tcHV0ZWRWYWx1
ZTsKLX0KLQotZnVuY3Rpb24gZ2V0UGFyZW50QW5kQ2hpbGRDb21wdXRlZFN0eWxlcyhwcm9wZXJ0
eSwgcGFyZW50VmFsdWUsIGNoaWxkVmFsdWUpIAotewotICAgIHZhciBwYXJlbnRFbGVtZW50ID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Ci0gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRD
aGlsZChwYXJlbnRFbGVtZW50KTsKLSAgICBwYXJlbnRFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5
KHByb3BlcnR5LCBwYXJlbnRWYWx1ZSk7Ci0gICAgdmFyIGNoaWxkRWxlbWVudCA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgIHBhcmVudEVsZW1lbnQuYXBwZW5kQ2hpbGQoY2hp
bGRFbGVtZW50KTsKLSAgICBjaGlsZEVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkocHJvcGVydHks
IGNoaWxkVmFsdWUpOwotICAgIHZhciBwYXJlbnRDb21wdXRlZFZhbHVlID0gZ2V0Q29tcHV0ZWRT
dHlsZShwYXJlbnRFbGVtZW50KS5nZXRQcm9wZXJ0eVZhbHVlKHByb3BlcnR5KTsKLSAgICB2YXIg
Y2hpbGRDb21wdXRlZFZhbHVlID0gZ2V0Q29tcHV0ZWRTdHlsZShjaGlsZEVsZW1lbnQpLmdldFBy
b3BlcnR5VmFsdWUocHJvcGVydHkpOwotICAgIHBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQoY2hp
bGRFbGVtZW50KTsKLSAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHBhcmVudEVsZW1lbnQp
OwotICAgIHJldHVybiB7cGFyZW50OiBwYXJlbnRDb21wdXRlZFZhbHVlLCBjaGlsZDogY2hpbGRD
b21wdXRlZFZhbHVlfTsKLX0KLQotZnVuY3Rpb24gZ2V0UGFyZW50QW5kQ2hpbGRDb21wdXRlZFN0
eWxlc1N0cmluZyhwcm9wZXJ0eSwgcGFyZW50VmFsdWUsIGNoaWxkVmFsdWUpIAotewotICAgIHZh
ciBzdHlsZXMgPSBnZXRQYXJlbnRBbmRDaGlsZENvbXB1dGVkU3R5bGVzKHByb3BlcnR5LCBwYXJl
bnRWYWx1ZSwgY2hpbGRWYWx1ZSk7Ci0gICAgcmV0dXJuICJwYXJlbnQ6ICIgKyBzdHlsZXMucGFy
ZW50ICsgIiwgY2hpbGQ6ICIgKyBzdHlsZXMuY2hpbGQ7Ci19Ci0KLWZ1bmN0aW9uIGdldENoaWxk
Q29tcHV0ZWRTdHlsZShwcm9wZXJ0eSwgcGFyZW50VmFsdWUsIGNoaWxkVmFsdWUpIAotewotICAg
IHZhciBzdHlsZXMgPSBnZXRQYXJlbnRBbmRDaGlsZENvbXB1dGVkU3R5bGVzKHByb3BlcnR5LCBw
YXJlbnRWYWx1ZSwgY2hpbGRWYWx1ZSk7Ci0gICAgcmV0dXJuIHN0eWxlcy5jaGlsZDsKLX0KLQot
ZnVuY3Rpb24gdGVzdFNwZWNpZmllZFByb3BlcnR5KHByb3BlcnR5LCB2YWx1ZSwgZXhwZWN0ZWRW
YWx1ZSkKLXsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ2dldENTU1RleHQoIicgKyBwcm9w
ZXJ0eSArICciLCAiJyArIHZhbHVlICsgJyIpJywgZXhwZWN0ZWRWYWx1ZSk7Ci19Ci0KLWZ1bmN0
aW9uIHRlc3RDb21wdXRlZFByb3BlcnR5KHByb3BlcnR5LCB2YWx1ZSwgZXhwZWN0ZWRWYWx1ZSkK
LXsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ2dldENvbXB1dGVkU3R5bGVWYWx1ZSgiJyAr
IHByb3BlcnR5ICsgJyIsICInICsgdmFsdWUgKyAnIiknLCBleHBlY3RlZFZhbHVlKTsKLX0KLQot
ZnVuY3Rpb24gdGVzdE5vdEluaGVyaXRlZENoaWxkUHJvcGVydHkocHJvcGVydHksIHBhcmVudFZh
bHVlLCBjaGlsZFZhbHVlLCBleHBlY3RlZENoaWxkVmFsdWUpCi17Ci0gICAgc2hvdWxkQmVFcXVh
bFRvU3RyaW5nKCdnZXRDaGlsZENvbXB1dGVkU3R5bGUoIicgKyBwcm9wZXJ0eSArICciLCAiJyAr
IHBhcmVudFZhbHVlICsgJyIsICInICsgY2hpbGRWYWx1ZSArICciKScsIGV4cGVjdGVkQ2hpbGRW
YWx1ZSk7Ci19Ci0KLWZ1bmN0aW9uIGFwcGx5VG9FYWNoQXJnbGlzdCh0ZXN0RnVuY3Rpb24sIGFy
Z2xpc3RzKQotewotICAgIGFyZ2xpc3RzLmZvckVhY2goZnVuY3Rpb24oYXJnbGlzdCwgaSwgYSkg
e3Rlc3RGdW5jdGlvbi5hcHBseShudWxsLCBhcmdsaXN0KTt9KTsKLX0KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9wYXJzaW5nL3NjcmlwdC10ZXN0cy9wYXJzaW5nLXdy
YXAtZmxvdy5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9wYXJzaW5nL3NjcmlwdC10
ZXN0cy9wYXJzaW5nLXdyYXAtZmxvdy5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
YTk1ODE4NS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2V4Y2x1c2lvbnMvcGFyc2lu
Zy9zY3JpcHQtdGVzdHMvcGFyc2luZy13cmFwLWZsb3cuanMKKysrIC9kZXYvbnVsbApAQCAtMSwz
NyArMCwwIEBACi1kZXNjcmlwdGlvbignVGVzdCBwYXJzaW5nIG9mIHRoZSBDU1Mgd3JhcC1mbG93
IHByb3BlcnR5LicpOwotCi1pZiAod2luZG93LmludGVybmFscykKLSAgICB3aW5kb3cuaW50ZXJu
YWxzLnNldHRpbmdzLnNldENTU0V4Y2x1c2lvbnNFbmFibGVkKHRydWUpOwotCi0vLyBUaGUgdGVz
dCBmdW5jdGlvbnMgYW5kIGdsb2JhbHMgdXNlZCBoZXJlIGFyZSBkZWZpbmVkIHBhcnNpbmctdGVz
dC11dGlscy5qcy4KLQotYXBwbHlUb0VhY2hBcmdsaXN0KAotICAgIHRlc3RTcGVjaWZpZWRQcm9w
ZXJ0eSwKLSAgICBbLy8gW3Byb3BlcnR5LCB2YWx1ZSwgZXhwZWN0ZWRWYWx1ZV0KLSAgICAgWyIt
d2Via2l0LXdyYXAtZmxvdyIsICJhdXRvIiwgImF1dG8iXSwKLSAgICAgWyItd2Via2l0LXdyYXAt
ZmxvdyIsICJib3RoIiwgImJvdGgiXSwKLSAgICAgWyItd2Via2l0LXdyYXAtZmxvdyIsICJzdGFy
dCIsICJzdGFydCJdLAotICAgICBbIi13ZWJraXQtd3JhcC1mbG93IiwgImVuZCIsICJlbmQiXSwK
LSAgICAgWyItd2Via2l0LXdyYXAtZmxvdyIsICJtYXhpbXVtIiwgIm1heGltdW0iXSwKLSAgICAg
WyItd2Via2l0LXdyYXAtZmxvdyIsICJjbGVhciIsICJjbGVhciJdLAotICAgICBbIi13ZWJraXQt
d3JhcC1mbG93IiwgIjsiLCAiIl0sCi0gICAgIFsiLXdlYmtpdC13cmFwLWZsb3ciLCAiNSIsICIi
XSwKLSAgICAgWyItd2Via2l0LXdyYXAtZmxvdyIsICItMS4yIiwgIiJdLAotICAgICBbIi13ZWJr
aXQtd3JhcC1mbG93IiwgIlwnc3RyaW5nXCciLCAiIl1dCi0pOwotCi1hcHBseVRvRWFjaEFyZ2xp
c3QoCi0gICAgdGVzdENvbXB1dGVkUHJvcGVydHksCi0gICAgWy8vIFtwcm9wZXJ0eSwgdmFsdWUs
IGV4cGVjdGVkVmFsdWVdCi0gICAgIFsiLXdlYmtpdC13cmFwLWZsb3ciLCAiYXV0byIsICJhdXRv
Il0sCi0gICAgIFsiLXdlYmtpdC13cmFwLWZsb3ciLCAiNSIsICJhdXRvIl0sCi0gICAgIFsiLXdl
YmtpdC13cmFwLWZsb3ciLCAiXCdzdHJpbmdcJyIsICJhdXRvIl1dCi0pOwotCi1hcHBseVRvRWFj
aEFyZ2xpc3QoCi0gICAgdGVzdE5vdEluaGVyaXRlZENoaWxkUHJvcGVydHksCi0gICAgWy8vIFtw
cm9wZXJ0eSwgcGFyZW50VmFsdWUsIGNoaWxkVmFsdWUsIGV4cGVjdGVkQ2hpbGRWYWx1ZV0KLSAg
ICAgWyItd2Via2l0LXdyYXAtZmxvdyIsICJhdXRvIiwgInN0YXJ0IiwgInN0YXJ0Il0sCi0gICAg
IFsiLXdlYmtpdC13cmFwLWZsb3ciLCAiZW5kIiwgImF1dG8iLCAiYXV0byJdLAotICAgICBbIi13
ZWJraXQtd3JhcC1mbG93IiwgImJvdGgiLCAiY2xlYXIiLCAiY2xlYXIiXV0KLSk7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V4Y2x1c2lvbnMvcGFyc2luZy9zY3JpcHQtdGVzdHMvcGFy
c2luZy13cmFwLXRocm91Z2guanMgYi9MYXlvdXRUZXN0cy9mYXN0L2V4Y2x1c2lvbnMvcGFyc2lu
Zy9zY3JpcHQtdGVzdHMvcGFyc2luZy13cmFwLXRocm91Z2guanMKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDBhYzc0OWYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9leGNs
dXNpb25zL3BhcnNpbmcvc2NyaXB0LXRlc3RzL3BhcnNpbmctd3JhcC10aHJvdWdoLmpzCisrKyAv
ZGV2L251bGwKQEAgLTEsMzIgKzAsMCBAQAotZGVzY3JpcHRpb24oJ1Rlc3QgcGFyc2luZyBvZiB0
aGUgQ1NTIHdyYXAtdGhyb3VnaCBwcm9wZXJ0eS4nKTsKLQotaWYgKHdpbmRvdy5pbnRlcm5hbHMp
Ci0gICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRDU1NFeGNsdXNpb25zRW5hYmxlZCh0
cnVlKTsKLQotLy8gVGhlIHRlc3QgZnVuY3Rpb25zIGFuZCBnbG9iYWxzIHVzZWQgaGVyZSBhcmUg
ZGVmaW5lZCBwYXJzaW5nLXRlc3QtdXRpbHMuanMuCi0KLWFwcGx5VG9FYWNoQXJnbGlzdCgKLSAg
ICB0ZXN0U3BlY2lmaWVkUHJvcGVydHksCi0gICAgWy8vIFtwcm9wZXJ0eSwgdmFsdWUsIGV4cGVj
dGVkVmFsdWVdCi0gICAgIFsiLXdlYmtpdC13cmFwLXRocm91Z2giLCAid3JhcCIsICJ3cmFwIl0s
Ci0gICAgIFsiLXdlYmtpdC13cmFwLXRocm91Z2giLCAibm9uZSIsICJub25lIl0sCi0gICAgIFsi
LXdlYmtpdC13cmFwLXRocm91Z2giLCAiOyIsICIiXSwKLSAgICAgWyItd2Via2l0LXdyYXAtdGhy
b3VnaCIsICI1IiwgIiJdLAotICAgICBbIi13ZWJraXQtd3JhcC10aHJvdWdoIiwgIi0xLjIiLCAi
Il0sCi0gICAgIFsiLXdlYmtpdC13cmFwLXRocm91Z2giLCAiXCdzdHJpbmdcJyIsICIiXV0KLSk7
Ci0KLWFwcGx5VG9FYWNoQXJnbGlzdCgKLSAgICB0ZXN0Q29tcHV0ZWRQcm9wZXJ0eSwKLSAgICBb
Ly8gW3Byb3BlcnR5LCB2YWx1ZSwgZXhwZWN0ZWRWYWx1ZV0KLSAgICAgWyItd2Via2l0LXdyYXAt
dGhyb3VnaCIsICJ3cmFwIiwgIndyYXAiXSwKLSAgICAgWyItd2Via2l0LXdyYXAtdGhyb3VnaCIs
ICI1IiwgIndyYXAiXSwKLSAgICAgWyItd2Via2l0LXdyYXAtdGhyb3VnaCIsICJcJ3N0cmluZ1wn
IiwgIndyYXAiXV0KLSk7Ci0KLWFwcGx5VG9FYWNoQXJnbGlzdCgKLSAgICB0ZXN0Tm90SW5oZXJp
dGVkQ2hpbGRQcm9wZXJ0eSwKLSAgICBbLy8gW3Byb3BlcnR5LCBwYXJlbnRWYWx1ZSwgY2hpbGRW
YWx1ZSwgZXhwZWN0ZWRDaGlsZFZhbHVlXQotICAgICBbIi13ZWJraXQtd3JhcC10aHJvdWdoIiwg
IndyYXAiLCAibm9uZSIsICJub25lIl0sCi0gICAgIFsiLXdlYmtpdC13cmFwLXRocm91Z2giLCAi
bm9uZSIsICJ3cmFwIiwgIndyYXAiXV0KLSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0
RXhwZWN0YXRpb25zCmluZGV4IDliMmYxZDIuLjMxOTM3MmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zCkBAIC0xNDA5LDkgKzE0MDksNiBAQCBmYXN0L2RvbS9I
VE1MVGVtcGxhdGVFbGVtZW50L2lubmVySFRNTC1pbmVydC5odG1sIFsgRmFpbHVyZSBdCiAjIEpT
QyBkb2VzIG5vdCBzdXBwb3J0IHNldElzb2xhdGVkV29ybGRTZWN1cml0eU9yaWdpbgogd2Via2l0
Lm9yZy9iLzYxNTQwIGh0dHAvdGVzdHMvc2VjdXJpdHkvaXNvbGF0ZWRXb3JsZC9jcm9zcy1vcmln
aW4teGhyLmh0bWwgWyBGYWlsdXJlIF0KIAotIyBDU1MgRXhjbHVzaW9ucyBzdXBwb3J0IG5vdCB5
ZXQgZW5hYmxlZC4KLXdlYmtpdC5vcmcvYi81NzMxMSBmYXN0L2V4Y2x1c2lvbnMKLQogd2Via2l0
Lm9yZy9iLzYyNTk1IGZhc3Qvd29ya2Vycy93b3JrZXItY3Jhc2gtd2l0aC1pbnZhbGlkLWxvY2F0
aW9uLmh0bWwgWyBGYWlsdXJlIF0KIAogIyBOZWVkIHRvIGltcGxlbWVudCBnZXRGb3JtVmFsdWUo
KS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL1Rlc3RFeHBlY3Rh
dGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9UZXN0RXhwZWN0YXRpb25zCmlu
ZGV4IDY2MmQyYTYuLmY3ZTkzNGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dp
bmNhaXJvL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fp
cm8vVGVzdEV4cGVjdGF0aW9ucwpAQCAtMTk4MSwxMCArMTk4MSw2IEBAIGZhc3QveHNsL3hzbHQt
cHJvY2Vzc29yLXRlbXBsYXRlLmh0bWwKICMgQ1NTIFJlZ2lvbnMgc3VwcG9ydCBub3QgeWV0IGVu
YWJsZWQuIGh0dHA6Ly93ZWJraXQub3JnL2IvNTczMTIKIGZhc3QvcmVnaW9ucwogCi0jIENTUyBF
eGNsdXNpb25zIHN1cHBvcnQgbm90IHlldCBlbmFibGVkLiBodHRwOi8vd2Via2l0Lm9yZy9iLzU3
MzExCi1mYXN0L2V4Y2x1c2lvbnMKLWNzc3dnL3N1Ym1pdHRlZC9zaGFwZXMKLQogIyBDYXVzZXMg
YSBTeW50YXhFcnJvciAoaHR0cDovL3dlYmtpdC5vcmcvYi82MjU5NSkuCiBmYXN0L3dvcmtlcnMv
d29ya2VyLWNyYXNoLXdpdGgtaW52YWxpZC1sb2NhdGlvbi5odG1sCiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA2
YzE0NjZkLi5hZDM4ZjJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDMgQEAKKzIwMTQtMDQtMDEg
IFpvbHRhbiBIb3J2YXRoICA8em9sdGFuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgW0NTUyBFeGNs
dXNpb25zXSBSZW1vdmUgZXhjbHVzaW9ucyBwYXJzaW5nIHN1cHBvcnQKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMTA0NgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENTUyBFeGNsdXNpb25zIHNwZWNpZmlj
YXRpb24gWzFdIG5lZWRzIHNvbWUgZXZvbHV0aW9uIGJlZm9yZSB0aGUgYWN0dWFsIGltcGxlbWVu
dGF0aW9uIGhhcHBlbnMuCisgICAgICAgIFdlIGhhdmUgb25seSB0aGUgcGFyc2luZyBjb2RlIGlu
IFdlYktpdCBmb3IgLXdlYmtpdC13cmFwLWZsb3cgYW5kIC13ZWJraXQtd3JhcC10aHJvdWdoLgor
ICAgICAgICBUaGlzIHBhdGNoIHJlbW92ZXMgdGhlIGNvZGUgZnJvbSB0aGUgdHJ1bmsgZm9yIG5v
dywgaXQgZG9lc24ndCBtYWtlIHNlbnNlIHRvIGtlZXAgaXQgYXJvdW5kLgorCisgICAgICAgIFsx
XSBodHRwOi8vd3d3LnczLm9yZy9UUi9jc3MzLWV4Y2x1c2lvbnMvCisKKyAgICAgICAgUmVtb3Zl
ZCBleGlzdGluZyBwYXJzaW5nIHRlc3RzLgorCisgICAgICAgICogY3NzL0NTU0NvbXB1dGVkU3R5
bGVEZWNsYXJhdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb21wdXRlZFN0eWxlRXh0cmFj
dG9yOjpwcm9wZXJ0eVZhbHVlKToKKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OmlzVmFsaWRLZXl3b3JkUHJvcGVydHlBbmRWYWx1ZSk6CisgICAgICAgIChX
ZWJDb3JlOjppc0tleXdvcmRQcm9wZXJ0eUlEKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1BhcnNl
cjo6cGFyc2VWYWx1ZSk6CisgICAgICAgICogY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3Mu
aDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1
ZSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0
b3IgV3JhcEZsb3cpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFs
dWU6Om9wZXJhdG9yIFdyYXBUaHJvdWdoKTogRGVsZXRlZC4KKyAgICAgICAgKiBjc3MvQ1NTUHJv
cGVydHlOYW1lcy5pbjoKKyAgICAgICAgKiBjc3MvQ1NTVmFsdWVLZXl3b3Jkcy5pbjoKKyAgICAg
ICAgKiBjc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpE
ZXByZWNhdGVkU3R5bGVCdWlsZGVyOjpEZXByZWNhdGVkU3R5bGVCdWlsZGVyKToKKyAgICAgICAg
KiBjc3MvU3R5bGVSZXNvbHZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJlc29sdmVy
OjphcHBseVByb3BlcnR5KToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OmNoYW5nZVJlcXVpcmVzTGF5b3V0
KToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaDoKKyAgICAgICAgKiBy
ZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaDoKKyAgICAgICAgKiByZW5kZXJp
bmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhOjpTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhKToK
KyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGE6Om9wZXJhdG9yPT0p
OgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmg6
CisKIDIwMTQtMDQtMDEgIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgogCiAg
ICAgICAgIFVucmV2aWV3ZWQuIEZpeGluZyBkZWJ1ZyBidWlsZHMgYWZ0ZXIgcjE2NjU4Ni4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24u
Y3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAK
aW5kZXggZjBkZWI5NS4uYTYyMTU0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NT
U0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NT
U0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKQEAgLTM4NSwxMCArMzg1LDYgQEAgc3RhdGlj
IGNvbnN0IENTU1Byb3BlcnR5SUQgY29tcHV0ZWRQcm9wZXJ0aWVzW10gPSB7CiAgICAgQ1NTUHJv
cGVydHlXZWJraXRSZWdpb25CcmVha0luc2lkZSwKICAgICBDU1NQcm9wZXJ0eVdlYmtpdFJlZ2lv
bkZyYWdtZW50LAogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19FWENMVVNJT05TKQotICAgIENTU1By
b3BlcnR5V2Via2l0V3JhcEZsb3csCi0gICAgQ1NTUHJvcGVydHlXZWJraXRXcmFwVGhyb3VnaCwK
LSNlbmRpZgogI2lmIEVOQUJMRShDU1NfU0hBUEVTKQogICAgIENTU1Byb3BlcnR5V2Via2l0U2hh
cGVNYXJnaW4sCiAgICAgQ1NTUHJvcGVydHlXZWJraXRTaGFwZUltYWdlVGhyZXNob2xkLApAQCAt
MjgwNiwxMiArMjgwMiw2IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVFeHRy
YWN0b3I6OnByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0CiAgICAgICAgIGNhc2Ug
Q1NTUHJvcGVydHlXZWJraXRSZWdpb25GcmFnbWVudDoKICAgICAgICAgICAgIHJldHVybiBjc3NW
YWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShzdHlsZS0+cmVnaW9uRnJhZ21lbnQoKSk7CiAjZW5kaWYK
LSNpZiBFTkFCTEUoQ1NTX0VYQ0xVU0lPTlMpCi0gICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJr
aXRXcmFwRmxvdzoKLSAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1
ZShzdHlsZS0+d3JhcEZsb3coKSk7Ci0gICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRXcmFw
VGhyb3VnaDoKLSAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShz
dHlsZS0+d3JhcFRocm91Z2goKSk7Ci0jZW5kaWYKICNpZiBFTkFCTEUoQ1NTX1NIQVBFUykKICAg
ICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFNoYXBlTWFyZ2luOgogICAgICAgICAgICAgcmV0
dXJuIGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZVZhbHVlKHN0eWxlLT5zaGFwZU1hcmdpbigpKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1BhcnNlci5jcHAKaW5kZXggYmE0NDE0MC4uMWIzZWMyYSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1BhcnNlci5jcHAKQEAgLTEwMTcsMjAgKzEwMTcsNiBAQCBzdGF0aWMgaW5saW5lIGJvb2wg
aXNWYWxpZEtleXdvcmRQcm9wZXJ0eUFuZFZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydHlJZCwg
aW50CiAgICAgICAgIGlmICh2YWx1ZUlEID09IENTU1ZhbHVlQXV0byB8fCB2YWx1ZUlEID09IENT
U1ZhbHVlTm9uZSB8fCB2YWx1ZUlEID09IENTU1ZhbHVlVGV4dCB8fCB2YWx1ZUlEID09IENTU1Zh
bHVlQWxsKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIGJyZWFrOwotI2lmIEVO
QUJMRShDU1NfRVhDTFVTSU9OUykKLSAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0V3JhcEZsb3c6
Ci0gICAgICAgIGlmICghUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5j
c3NFeGNsdXNpb25zRW5hYmxlZCgpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAg
ICBpZiAodmFsdWVJRCA9PSBDU1NWYWx1ZUF1dG8gfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZUJvdGgg
fHwgdmFsdWVJRCA9PSBDU1NWYWx1ZVN0YXJ0IHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVFbmQgfHwg
dmFsdWVJRCA9PSBDU1NWYWx1ZU1heGltdW0gfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZUNsZWFyKQot
ICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQ1NTUHJv
cGVydHlXZWJraXRXcmFwVGhyb3VnaDoKLSAgICAgICAgaWYgKCFSdW50aW1lRW5hYmxlZEZlYXR1
cmVzOjpzaGFyZWRGZWF0dXJlcygpLmNzc0V4Y2x1c2lvbnNFbmFibGVkKCkpCi0gICAgICAgICAg
ICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIGlmICh2YWx1ZUlEID09IENTU1ZhbHVlV3JhcCB8fCB2
YWx1ZUlEID09IENTU1ZhbHVlTm9uZSkKLSAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAg
ICBicmVhazsKLSNlbmRpZgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRXcml0aW5nTW9kZToK
ICAgICAgICAgaWYgKHZhbHVlSUQgPj0gQ1NTVmFsdWVIb3Jpem9udGFsVGIgJiYgdmFsdWVJRCA8
PSBDU1NWYWx1ZUhvcml6b250YWxCdCkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwpAQCAtMTE2
MywxMCArMTE0OSw2IEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBpc0tleXdvcmRQcm9wZXJ0eUlEKENT
U1Byb3BlcnR5SUQgcHJvcGVydHlJZCkKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0VXNlckRy
YWc6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFVzZXJNb2RpZnk6CiAgICAgY2FzZSBDU1NQ
cm9wZXJ0eVdlYmtpdFVzZXJTZWxlY3Q6Ci0jaWYgRU5BQkxFKENTU19FWENMVVNJT05TKQotICAg
IGNhc2UgQ1NTUHJvcGVydHlXZWJraXRXcmFwRmxvdzoKLSAgICBjYXNlIENTU1Byb3BlcnR5V2Vi
a2l0V3JhcFRocm91Z2g6Ci0jZW5kaWYKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0V3JpdGlu
Z01vZGU6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdoaXRlU3BhY2U6CiAgICAgY2FzZSBDU1NQcm9w
ZXJ0eVdvcmRCcmVhazoKQEAgLTMwMzgsMTAgKzMwMjAsNiBAQCBib29sIENTU1BhcnNlcjo6cGFy
c2VWYWx1ZShDU1NQcm9wZXJ0eUlEIHByb3BJZCwgYm9vbCBpbXBvcnRhbnQpCiAgICAgY2FzZSBD
U1NQcm9wZXJ0eVdlYmtpdFVzZXJEcmFnOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRVc2Vy
TW9kaWZ5OgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRVc2VyU2VsZWN0OgotI2lmIEVOQUJM
RShDU1NfRVhDTFVTSU9OUykKLSAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0V3JhcEZsb3c6Ci0g
ICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFdyYXBUaHJvdWdoOgotI2VuZGlmCiAgICAgY2FzZSBD
U1NQcm9wZXJ0eVdlYmtpdFdyaXRpbmdNb2RlOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXaGl0ZVNw
YWNlOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXb3JkQnJlYWs6CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaAppbmRleCBjYzE2MmM5Li5mNGNlMDMxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKQEAg
LTQ1ODEsODggKzQ1ODEsNiBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6
b3BlcmF0b3IgQ29sdW1uUHJvZ3Jlc3Npb24oKSBjb25zdAogICAgIHJldHVybiBOb3JtYWxDb2x1
bW5Qcm9ncmVzc2lvbjsKIH0KIAotdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6
OkNTU1ByaW1pdGl2ZVZhbHVlKFdyYXBGbG93IHdyYXBGbG93KQotICAgIDogQ1NTVmFsdWUoUHJp
bWl0aXZlQ2xhc3MpCi17Ci0gICAgbV9wcmltaXRpdmVVbml0VHlwZSA9IENTU19WQUxVRV9JRDsK
LSAgICBzd2l0Y2ggKHdyYXBGbG93KSB7Ci0gICAgY2FzZSBXcmFwRmxvd0F1dG86Ci0gICAgICAg
IG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlQXV0bzsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2Fz
ZSBXcmFwRmxvd0JvdGg6Ci0gICAgICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlQm90aDsK
LSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBXcmFwRmxvd1N0YXJ0OgotICAgICAgICBtX3ZhbHVl
LnZhbHVlSUQgPSBDU1NWYWx1ZVN0YXJ0OwotICAgICAgICBicmVhazsKLSAgICBjYXNlIFdyYXBG
bG93RW5kOgotICAgICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZUVuZDsKLSAgICAgICAg
YnJlYWs7Ci0gICAgY2FzZSBXcmFwRmxvd01heGltdW06Ci0gICAgICAgIG1fdmFsdWUudmFsdWVJ
RCA9IENTU1ZhbHVlTWF4aW11bTsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBXcmFwRmxvd0Ns
ZWFyOgotICAgICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZUNsZWFyOwotICAgICAgICBi
cmVhazsKLSAgICB9Ci19Ci0KLXRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpv
cGVyYXRvciBXcmFwRmxvdygpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKGlzVmFsdWVJRCgpKTsKLQot
ICAgIHN3aXRjaCAobV92YWx1ZS52YWx1ZUlEKSB7Ci0gICAgY2FzZSBDU1NWYWx1ZUF1dG86Ci0g
ICAgICAgIHJldHVybiBXcmFwRmxvd0F1dG87Ci0gICAgY2FzZSBDU1NWYWx1ZUJvdGg6Ci0gICAg
ICAgIHJldHVybiBXcmFwRmxvd0JvdGg7Ci0gICAgY2FzZSBDU1NWYWx1ZVN0YXJ0OgotICAgICAg
ICByZXR1cm4gV3JhcEZsb3dTdGFydDsKLSAgICBjYXNlIENTU1ZhbHVlRW5kOgotICAgICAgICBy
ZXR1cm4gV3JhcEZsb3dFbmQ7Ci0gICAgY2FzZSBDU1NWYWx1ZU1heGltdW06Ci0gICAgICAgIHJl
dHVybiBXcmFwRmxvd01heGltdW07Ci0gICAgY2FzZSBDU1NWYWx1ZUNsZWFyOgotICAgICAgICBy
ZXR1cm4gV3JhcEZsb3dDbGVhcjsKLSAgICBkZWZhdWx0OgotICAgICAgICBicmVhazsKLSAgICB9
Ci0KLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICByZXR1cm4gV3JhcEZsb3dBdXRvOwot
fQotCi10ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFs
dWUoV3JhcFRocm91Z2ggd3JhcFRocm91Z2gpCi0gICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFz
cykKLXsKLSAgICBtX3ByaW1pdGl2ZVVuaXRUeXBlID0gQ1NTX1ZBTFVFX0lEOwotICAgIHN3aXRj
aCAod3JhcFRocm91Z2gpIHsKLSAgICBjYXNlIFdyYXBUaHJvdWdoV3JhcDoKLSAgICAgICAgbV92
YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVXcmFwOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIFdy
YXBUaHJvdWdoTm9uZToKLSAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVOb25lOwot
ICAgICAgICBicmVhazsKLSAgICB9Ci19Ci0KLXRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2
ZVZhbHVlOjpvcGVyYXRvciBXcmFwVGhyb3VnaCgpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKGlzVmFs
dWVJRCgpKTsKLQotICAgIHN3aXRjaCAobV92YWx1ZS52YWx1ZUlEKSB7Ci0gICAgY2FzZSBDU1NW
YWx1ZVdyYXA6Ci0gICAgICAgIHJldHVybiBXcmFwVGhyb3VnaFdyYXA7Ci0gICAgY2FzZSBDU1NW
YWx1ZU5vbmU6Ci0gICAgICAgIHJldHVybiBXcmFwVGhyb3VnaE5vbmU7Ci0gICAgZGVmYXVsdDoK
LSAgICAgICAgYnJlYWs7Ci0gICAgfQotCi0gICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAg
cmV0dXJuIFdyYXBUaHJvdWdoV3JhcDsKLX0KLQogI2lmIEVOQUJMRShDU1NfR1JJRF9MQVlPVVQp
CiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgR3JpZEF1dG9G
bG93KCkgY29uc3QKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0
eU5hbWVzLmluIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4KaW5kZXgg
NjRkNzU0MC4uNTgzMDI0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3Bl
cnR5TmFtZXMuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4K
QEAgLTQ0MCwxMCArNDQwLDYgQEAgdGV4dC1lbXBoYXNpcy1zdHlsZSA9IC13ZWJraXQtdGV4dC1l
bXBoYXNpcy1zdHlsZQogLXdlYmtpdC1zaGFwZS1tYXJnaW4KIC13ZWJraXQtc2hhcGUtaW1hZ2Ut
dGhyZXNob2xkCiAjZW5kaWYKLSNpZiBkZWZpbmVkKEVOQUJMRV9DU1NfRVhDTFVTSU9OUykgJiYg
RU5BQkxFX0NTU19FWENMVVNJT05TCi0td2Via2l0LXdyYXAtZmxvdwotLXdlYmtpdC13cmFwLXRo
cm91Z2gKLSNlbmRpZgogI2lmIGRlZmluZWQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTikg
JiYgRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTgogbWF4LXpvb20KIG1pbi16b29tCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVLZXl3b3Jkcy5pbiBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCmluZGV4IDkyYjVhNDguLjBlNzhiYmMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCkBAIC05ODIsMTggKzk4Miw2IEBA
IGF0CiAvLyBhdXRvCiBicmVhawogCi0vLyAtd2Via2l0LXdyYXAtZmxvdwotLy8gYXV0bwotLy8g
Ym90aAotLy8gbGVmdAotLy8gcmlnaHQKLW1heGltdW0KLS8vIGNsZWFyCi0KLS8vIC13ZWJraXQt
d3JhcC10aHJvdWdoCi13cmFwCi0vLyBub25lCi0KIC8vIC13ZWJraXQtbGluZS1hbGlnbgogZWRn
ZXMKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1aWxk
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1aWxkZXIuY3BwCmlu
ZGV4IDQ5NzA3MWYuLjliZWFiNTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXBy
ZWNhdGVkU3R5bGVCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRl
ZFN0eWxlQnVpbGRlci5jcHAKQEAgLTI2MDksMTEgKzI2MDksNiBAQCBEZXByZWNhdGVkU3R5bGVC
dWlsZGVyOjpEZXByZWNhdGVkU3R5bGVCdWlsZGVyKCkKICAgICBzZXRQcm9wZXJ0eUhhbmRsZXIo
Q1NTUHJvcGVydHlXZWJraXRVc2VyTW9kaWZ5LCBBcHBseVByb3BlcnR5RGVmYXVsdDxFVXNlck1v
ZGlmeSwgJlJlbmRlclN0eWxlOjp1c2VyTW9kaWZ5LCBFVXNlck1vZGlmeSwgJlJlbmRlclN0eWxl
OjpzZXRVc2VyTW9kaWZ5LCBFVXNlck1vZGlmeSwgJlJlbmRlclN0eWxlOjppbml0aWFsVXNlck1v
ZGlmeT46OmNyZWF0ZUhhbmRsZXIoKSk7CiAgICAgc2V0UHJvcGVydHlIYW5kbGVyKENTU1Byb3Bl
cnR5V2Via2l0VXNlclNlbGVjdCwgQXBwbHlQcm9wZXJ0eURlZmF1bHQ8RVVzZXJTZWxlY3QsICZS
ZW5kZXJTdHlsZTo6dXNlclNlbGVjdCwgRVVzZXJTZWxlY3QsICZSZW5kZXJTdHlsZTo6c2V0VXNl
clNlbGVjdCwgRVVzZXJTZWxlY3QsICZSZW5kZXJTdHlsZTo6aW5pdGlhbFVzZXJTZWxlY3Q+Ojpj
cmVhdGVIYW5kbGVyKCkpOwogICAgIHNldFByb3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0eVdlYmtp
dENsaXBQYXRoLCBBcHBseVByb3BlcnR5Q2xpcFBhdGg8JlJlbmRlclN0eWxlOjpjbGlwUGF0aCwg
JlJlbmRlclN0eWxlOjpzZXRDbGlwUGF0aCwgJlJlbmRlclN0eWxlOjppbml0aWFsQ2xpcFBhdGg+
OjpjcmVhdGVIYW5kbGVyKCkpOwotCi0jaWYgRU5BQkxFKENTU19FWENMVVNJT05TKQotICAgIHNl
dFByb3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0eVdlYmtpdFdyYXBGbG93LCBBcHBseVByb3BlcnR5
RGVmYXVsdDxXcmFwRmxvdywgJlJlbmRlclN0eWxlOjp3cmFwRmxvdywgV3JhcEZsb3csICZSZW5k
ZXJTdHlsZTo6c2V0V3JhcEZsb3csIFdyYXBGbG93LCAmUmVuZGVyU3R5bGU6OmluaXRpYWxXcmFw
Rmxvdz46OmNyZWF0ZUhhbmRsZXIoKSk7Ci0gICAgc2V0UHJvcGVydHlIYW5kbGVyKENTU1Byb3Bl
cnR5V2Via2l0V3JhcFRocm91Z2gsIEFwcGx5UHJvcGVydHlEZWZhdWx0PFdyYXBUaHJvdWdoLCAm
UmVuZGVyU3R5bGU6OndyYXBUaHJvdWdoLCBXcmFwVGhyb3VnaCwgJlJlbmRlclN0eWxlOjpzZXRX
cmFwVGhyb3VnaCwgV3JhcFRocm91Z2gsICZSZW5kZXJTdHlsZTo6aW5pdGlhbFdyYXBUaHJvdWdo
Pjo6Y3JlYXRlSGFuZGxlcigpKTsKLSNlbmRpZgogI2lmIEVOQUJMRShDU1NfU0hBUEVTKQogICAg
IHNldFByb3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0eVdlYmtpdFNoYXBlTWFyZ2luLCBBcHBseVBy
b3BlcnR5TGVuZ3RoPCZSZW5kZXJTdHlsZTo6c2hhcGVNYXJnaW4sICZSZW5kZXJTdHlsZTo6c2V0
U2hhcGVNYXJnaW4sICZSZW5kZXJTdHlsZTo6aW5pdGlhbFNoYXBlTWFyZ2luPjo6Y3JlYXRlSGFu
ZGxlcigpKTsKICAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlXZWJraXRTaGFwZUlt
YWdlVGhyZXNob2xkLCBBcHBseVByb3BlcnR5RGVmYXVsdDxmbG9hdCwgJlJlbmRlclN0eWxlOjpz
aGFwZUltYWdlVGhyZXNob2xkLCBmbG9hdCwgJlJlbmRlclN0eWxlOjpzZXRTaGFwZUltYWdlVGhy
ZXNob2xkLCBmbG9hdCwgJlJlbmRlclN0eWxlOjppbml0aWFsU2hhcGVJbWFnZVRocmVzaG9sZD46
OmNyZWF0ZUhhbmRsZXIoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVS
ZXNvbHZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKaW5kZXgg
ZmE2OWViMS4uNjljNjFlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVz
b2x2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcApAQCAt
MzAwMiwxMCArMzAwMiw2IEBAIHZvaWQgU3R5bGVSZXNvbHZlcjo6YXBwbHlQcm9wZXJ0eShDU1NQ
cm9wZXJ0eUlEIGlkLCBDU1NWYWx1ZSogdmFsdWUpCiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtp
dFNoYXBlSW1hZ2VUaHJlc2hvbGQ6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFNoYXBlT3V0
c2lkZToKICNlbmRpZgotI2lmIEVOQUJMRShDU1NfRVhDTFVTSU9OUykKLSAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0V3JhcEZsb3c6Ci0gICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFdyYXBUaHJv
dWdoOgotI2VuZGlmCiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdoaXRlU3BhY2U6CiAgICAgY2FzZSBD
U1NQcm9wZXJ0eVdpZG93czoKICAgICBjYXNlIENTU1Byb3BlcnR5V2lkdGg6CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAppbmRleCA2NGM1YzZkLi40
Y2Q4ZDg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVy
U3R5bGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHls
ZS5jcHAKQEAgLTQxNSwxMCArNDE1LDYgQEAgYm9vbCBSZW5kZXJTdHlsZTo6Y2hhbmdlUmVxdWly
ZXNMYXlvdXQoY29uc3QgUmVuZGVyU3R5bGUqIG90aGVyLCB1bnNpZ25lZCYgY2hhbmcKICAgICAg
ICAgaWYgKHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3JlZ2lvbkZyYWdtZW50ICE9IG90aGVyLT5y
YXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9yZWdpb25GcmFnbWVudCkKICAgICAgICAgICAgIHJldHVy
biB0cnVlOwogCi0gICAgICAgIGlmIChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV93cmFwRmxvdyAh
PSBvdGhlci0+cmFyZU5vbkluaGVyaXRlZERhdGEtPm1fd3JhcEZsb3cKLSAgICAgICAgICAgIHx8
IHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3dyYXBUaHJvdWdoICE9IG90aGVyLT5yYXJlTm9uSW5o
ZXJpdGVkRGF0YS0+bV93cmFwVGhyb3VnaCkKLSAgICAgICAgICAgIHJldHVybiB0cnVlOwotCiAj
aWYgRU5BQkxFKENTU19TSEFQRVMpCiAgICAgICAgIGlmIChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+
bV9zaGFwZU1hcmdpbiAhPSBvdGhlci0+cmFyZU5vbkluaGVyaXRlZERhdGEtPm1fc2hhcGVNYXJn
aW4pCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1JlbmRlclN0eWxlLmgKaW5kZXggODIxN2YzZi4uMDUxNWNjNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKQEAgLTEwMzEsOSArMTAzMSw2
IEBAIHB1YmxpYzoKICAgICBMaW5lU25hcCBsaW5lU25hcCgpIGNvbnN0IHsgcmV0dXJuIHN0YXRp
Y19jYXN0PExpbmVTbmFwPihyYXJlSW5oZXJpdGVkRGF0YS0+bV9saW5lU25hcCk7IH0KICAgICBM
aW5lQWxpZ24gbGluZUFsaWduKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8TGluZUFsaWdu
PihyYXJlSW5oZXJpdGVkRGF0YS0+bV9saW5lQWxpZ24pOyB9CiAKLSAgICBXcmFwRmxvdyB3cmFw
RmxvdygpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PFdyYXBGbG93PihyYXJlTm9uSW5oZXJp
dGVkRGF0YS0+bV93cmFwRmxvdyk7IH0KLSAgICBXcmFwVGhyb3VnaCB3cmFwVGhyb3VnaCgpIGNv
bnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PFdyYXBUaHJvdWdoPihyYXJlTm9uSW5oZXJpdGVkRGF0
YS0+bV93cmFwVGhyb3VnaCk7IH0KLQogICAgIC8vIEFwcGxlLXNwZWNpZmljIHByb3BlcnR5IGdl
dHRlciBtZXRob2RzCiAgICAgRVBvaW50ZXJFdmVudHMgcG9pbnRlckV2ZW50cygpIGNvbnN0IHsg
cmV0dXJuIHN0YXRpY19jYXN0PEVQb2ludGVyRXZlbnRzPihpbmhlcml0ZWRfZmxhZ3MuX3BvaW50
ZXJFdmVudHMpOyB9CiAgICAgY29uc3QgQW5pbWF0aW9uTGlzdCogYW5pbWF0aW9ucygpIGNvbnN0
IHsgcmV0dXJuIHJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX2FuaW1hdGlvbnMuZ2V0KCk7IH0KQEAg
LTE1NDcsOSArMTU0NCw2IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldFJlZ2lvblRocmVhZChjb25z
dCBBdG9taWNTdHJpbmcmIHJlZ2lvblRocmVhZCkgeyBTRVRfVkFSKHJhcmVOb25Jbmhlcml0ZWRE
YXRhLCBtX3JlZ2lvblRocmVhZCwgcmVnaW9uVGhyZWFkKTsgfQogICAgIHZvaWQgc2V0UmVnaW9u
RnJhZ21lbnQoUmVnaW9uRnJhZ21lbnQgcmVnaW9uRnJhZ21lbnQpIHsgU0VUX1ZBUihyYXJlTm9u
SW5oZXJpdGVkRGF0YSwgbV9yZWdpb25GcmFnbWVudCwgcmVnaW9uRnJhZ21lbnQpOyB9CiAKLSAg
ICB2b2lkIHNldFdyYXBGbG93KFdyYXBGbG93IHdyYXBGbG93KSB7IFNFVF9WQVIocmFyZU5vbklu
aGVyaXRlZERhdGEsIG1fd3JhcEZsb3csIHdyYXBGbG93KTsgfQotICAgIHZvaWQgc2V0V3JhcFRo
cm91Z2goV3JhcFRocm91Z2ggd3JhcFRocm91Z2gpIHsgU0VUX1ZBUihyYXJlTm9uSW5oZXJpdGVk
RGF0YSwgbV93cmFwVGhyb3VnaCwgd3JhcFRocm91Z2gpOyB9Ci0KICAgICAvLyBBcHBsZS1zcGVj
aWZpYyBwcm9wZXJ0eSBzZXR0ZXJzCiAgICAgdm9pZCBzZXRQb2ludGVyRXZlbnRzKEVQb2ludGVy
RXZlbnRzIHApIHsgaW5oZXJpdGVkX2ZsYWdzLl9wb2ludGVyRXZlbnRzID0gcDsgfQogCkBAIC0x
OTEzLDkgKzE5MDcsNiBAQCBwdWJsaWM6CiAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyYg
aW5pdGlhbFJlZ2lvblRocmVhZCgpIHsgcmV0dXJuIG51bGxBdG9tOyB9CiAgICAgc3RhdGljIFJl
Z2lvbkZyYWdtZW50IGluaXRpYWxSZWdpb25GcmFnbWVudCgpIHsgcmV0dXJuIEF1dG9SZWdpb25G
cmFnbWVudDsgfQogCi0gICAgc3RhdGljIFdyYXBGbG93IGluaXRpYWxXcmFwRmxvdygpIHsgcmV0
dXJuIFdyYXBGbG93QXV0bzsgfQotICAgIHN0YXRpYyBXcmFwVGhyb3VnaCBpbml0aWFsV3JhcFRo
cm91Z2goKSB7IHJldHVybiBXcmFwVGhyb3VnaFdyYXA7IH0KLQogICAgIC8vIEtlZXAgdGhlc2Ug
YXQgdGhlIGVuZC4KICAgICBzdGF0aWMgTGluZUNsYW1wVmFsdWUgaW5pdGlhbExpbmVDbGFtcCgp
IHsgcmV0dXJuIExpbmVDbGFtcFZhbHVlKCk7IH0KICAgICBzdGF0aWMgRVRleHRTZWN1cml0eSBp
bml0aWFsVGV4dFNlY3VyaXR5KCkgeyByZXR1cm4gVFNOT05FOyB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaCBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oCmluZGV4IDNl
MmU2NjEuLmE4YjIzMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHls
ZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oCkBAIC01MzUsMTAgKzUzNSw2IEBAIGVudW0gTGlu
ZVNuYXAgeyBMaW5lU25hcE5vbmUsIExpbmVTbmFwQmFzZWxpbmUsIExpbmVTbmFwQ29udGFpbiB9
OwogCiBlbnVtIExpbmVBbGlnbiB7IExpbmVBbGlnbk5vbmUsIExpbmVBbGlnbkVkZ2VzIH07CiAK
LWVudW0gV3JhcEZsb3cgeyBXcmFwRmxvd0F1dG8sIFdyYXBGbG93Qm90aCwgV3JhcEZsb3dTdGFy
dCwgV3JhcEZsb3dFbmQsIFdyYXBGbG93TWF4aW11bSwgV3JhcEZsb3dDbGVhciB9OwotCi1lbnVt
IFdyYXBUaHJvdWdoIHsgV3JhcFRocm91Z2hXcmFwLCBXcmFwVGhyb3VnaE5vbmUgfTsKLQogZW51
bSBSdWJ5UG9zaXRpb24geyBSdWJ5UG9zaXRpb25CZWZvcmUsIFJ1YnlQb3NpdGlvbkFmdGVyIH07
CiAKICNpZiBFTkFCTEUoQ1NTX0dSSURfTEFZT1VUKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuY3BwIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuY3BwCmlu
ZGV4IDgwYTdjYWUuLjMxYTQzOTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5jcHAKQEAgLTg0LDgg
Kzg0LDYgQEAgU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YTo6U3R5bGVSYXJlTm9uSW5oZXJpdGVk
RGF0YSgpCiAgICAgLCBtX2JvcmRlckZpdChSZW5kZXJTdHlsZTo6aW5pdGlhbEJvcmRlckZpdCgp
KQogICAgICwgbV90ZXh0Q29tYmluZShSZW5kZXJTdHlsZTo6aW5pdGlhbFRleHRDb21iaW5lKCkp
CiAgICAgLCBtX3RleHREZWNvcmF0aW9uU3R5bGUoUmVuZGVyU3R5bGU6OmluaXRpYWxUZXh0RGVj
b3JhdGlvblN0eWxlKCkpCi0gICAgLCBtX3dyYXBGbG93KFJlbmRlclN0eWxlOjppbml0aWFsV3Jh
cEZsb3coKSkKLSAgICAsIG1fd3JhcFRocm91Z2goUmVuZGVyU3R5bGU6OmluaXRpYWxXcmFwVGhy
b3VnaCgpKQogICAgICwgbV9ydW5uaW5nQWNjZWxlcmF0ZWRBbmltYXRpb24oZmFsc2UpCiAgICAg
LCBtX2FzcGVjdFJhdGlvVHlwZShSZW5kZXJTdHlsZTo6aW5pdGlhbEFzcGVjdFJhdGlvVHlwZSgp
KQogI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcpCkBAIC0xNjMsOCArMTYxLDYgQEAgaW5saW5l
IFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGE6OlN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEoY29u
c3QgU3R5bGVSYXJlTm9uSW4KICAgICAsIG1fYm9yZGVyRml0KG8ubV9ib3JkZXJGaXQpCiAgICAg
LCBtX3RleHRDb21iaW5lKG8ubV90ZXh0Q29tYmluZSkKICAgICAsIG1fdGV4dERlY29yYXRpb25T
dHlsZShvLm1fdGV4dERlY29yYXRpb25TdHlsZSkKLSAgICAsIG1fd3JhcEZsb3coby5tX3dyYXBG
bG93KQotICAgICwgbV93cmFwVGhyb3VnaChvLm1fd3JhcFRocm91Z2gpCiAgICAgLCBtX3J1bm5p
bmdBY2NlbGVyYXRlZEFuaW1hdGlvbihvLm1fcnVubmluZ0FjY2VsZXJhdGVkQW5pbWF0aW9uKQog
ICAgICwgbV9hc3BlY3RSYXRpb1R5cGUoby5tX2FzcGVjdFJhdGlvVHlwZSkKICNpZiBFTkFCTEUo
Q1NTX0NPTVBPU0lUSU5HKQpAQCAtMjUzLDggKzI0OSw2IEBAIGJvb2wgU3R5bGVSYXJlTm9uSW5o
ZXJpdGVkRGF0YTo6b3BlcmF0b3I9PShjb25zdCBTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhJiBv
KSBjCiAgICAgICAgICYmIG1fYm9yZGVyRml0ID09IG8ubV9ib3JkZXJGaXQKICAgICAgICAgJiYg
bV90ZXh0Q29tYmluZSA9PSBvLm1fdGV4dENvbWJpbmUKICAgICAgICAgJiYgbV90ZXh0RGVjb3Jh
dGlvblN0eWxlID09IG8ubV90ZXh0RGVjb3JhdGlvblN0eWxlCi0gICAgICAgICYmIG1fd3JhcEZs
b3cgPT0gby5tX3dyYXBGbG93Ci0gICAgICAgICYmIG1fd3JhcFRocm91Z2ggPT0gby5tX3dyYXBU
aHJvdWdoCiAgICAgICAgICYmICFtX3J1bm5pbmdBY2NlbGVyYXRlZEFuaW1hdGlvbiAmJiAhby5t
X3J1bm5pbmdBY2NlbGVyYXRlZEFuaW1hdGlvbgogI2lmIEVOQUJMRShDU1NfQ09NUE9TSVRJTkcp
CiAgICAgICAgICYmIG1fZWZmZWN0aXZlQmxlbmRNb2RlID09IG8ubV9lZmZlY3RpdmVCbGVuZE1v
ZGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVO
b25Jbmhlcml0ZWREYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVS
YXJlTm9uSW5oZXJpdGVkRGF0YS5oCmluZGV4IDEzNGI3MDUuLmM0MGM2MDQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRh
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVy
aXRlZERhdGEuaApAQCAtMTg1LDggKzE4NSw2IEBAIHB1YmxpYzoKICAgICB1bnNpZ25lZCBtX3Rl
eHRDb21iaW5lIDogMTsgLy8gQ1NTMyB0ZXh0LWNvbWJpbmUgcHJvcGVydGllcwogCiAgICAgdW5z
aWduZWQgbV90ZXh0RGVjb3JhdGlvblN0eWxlIDogMzsgLy8gVGV4dERlY29yYXRpb25TdHlsZQot
ICAgIHVuc2lnbmVkIG1fd3JhcEZsb3c6IDM7IC8vIFdyYXBGbG93Ci0gICAgdW5zaWduZWQgbV93
cmFwVGhyb3VnaDogMTsgLy8gV3JhcFRocm91Z2gKIAogICAgIHVuc2lnbmVkIG1fcnVubmluZ0Fj
Y2VsZXJhdGVkQW5pbWF0aW9uIDogMTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkluc3BlY3Rv
clVJL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKaW5kZXggMWQ2
YzAwYi4uNDlkNGU5NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAK
KzIwMTQtMDQtMDEgIFpvbHRhbiBIb3J2YXRoICA8em9sdGFuQHdlYmtpdC5vcmc+CisKKyAgICAg
ICAgW0NTUyBFeGNsdXNpb25zXSBSZW1vdmUgZXhjbHVzaW9ucyBwYXJzaW5nIHN1cHBvcnQKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMTA0NgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVXNlckludGVy
ZmFjZS9Nb2RlbHMvQ1NTS2V5d29yZENvbXBsZXRpb25zLmpzOgorCiAyMDE0LTAzLTI4ICBKYW1l
cyBDcmFpZyAgPGpjcmFpZ0BhcHBsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogQVhJ
OiBzdXBwb3J0IGZvciBsaXZlIHJlZ2lvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0
b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9DU1NLZXl3b3JkQ29tcGxldGlvbnMuanMgYi9Tb3Vy
Y2UvV2ViSW5zcGVjdG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvQ1NTS2V5d29yZENvbXBsZXRp
b25zLmpzCmluZGV4IGM5ODY4Y2IuLmI1ZjI4YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNw
ZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9DU1NLZXl3b3JkQ29tcGxldGlvbnMuanMKKysr
IGIvU291cmNlL1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL0NTU0tleXdvcmRD
b21wbGV0aW9ucy5qcwpAQCAtNzY2LDEyICs3NjYsNiBAQCBXZWJJbnNwZWN0b3IuQ1NTS2V5d29y
ZENvbXBsZXRpb25zLl9wcm9wZXJ0eUtleXdvcmRNYXAgPSB7CiAgICAgIi13ZWJraXQtcmVnaW9u
LW92ZXJmbG93IjogWwogICAgICAgICAiYXV0byIsICJicmVhayIKICAgICBdLAotICAgICItd2Vi
a2l0LXdyYXAtZmxvdyI6IFsKLSAgICAgICAgImF1dG8iLCAiYm90aCIsICJzdGFydCIsICJlbmQi
LCAibWF4aW11bSIsICJjbGVhciIKLSAgICBdLAotICAgICItd2Via2l0LXdyYXAtdGhyb3VnaCI6
IFsKLSAgICAgICAgIndyYXAiLCAibm9uZSIKLSAgICBdLAogICAgICItd2Via2l0LWJhY2tmYWNl
LXZpc2liaWxpdHkiOiBbCiAgICAgICAgICJ2aXNpYmxlIiwgImhpZGRlbiIKICAgICBdLApkaWZm
IC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IGFiZDAwMzAu
Ljc5MjQzMWEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxMiBAQAorMjAxNC0wNC0wMSAgWm9sdGFuIEhvcnZhdGggIDx6b2x0YW5A
d2Via2l0Lm9yZz4KKworICAgICAgICBbQ1NTIEV4Y2x1c2lvbnNdIFJlbW92ZSBleGNsdXNpb25z
IHBhcnNpbmcgc3VwcG9ydAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTMxMDQ2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHBlcmwvRmVhdHVyZUxpc3QucG06CisKIDIwMTQtMDQt
MDEgIE1hcnRpbiBSb2JpbnNvbiAgPG1yb2JpbnNvbkBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtH
VEtdIE5vIGxvbmdlciBidWlsZCBXZWJLaXQxIGd0a2RvYwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2Ny
aXB0cy93ZWJraXRwZXJsL0ZlYXR1cmVMaXN0LnBtIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRwZXJs
L0ZlYXR1cmVMaXN0LnBtCmluZGV4IDdkY2Y3NGQuLjQ3ODQwNzggMTAwNjQ0Ci0tLSBhL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cGVybC9GZWF0dXJlTGlzdC5wbQorKysgYi9Ub29scy9TY3JpcHRzL3dl
YmtpdHBlcmwvRmVhdHVyZUxpc3QucG0KQEAgLTU2LDcgKzU2LDYgQEAgbXkgKAogICAgICRjc3M0
SW1hZ2VzU3VwcG9ydCwKICAgICAkY3NzQm94RGVjb3JhdGlvbkJyZWFrU3VwcG9ydCwKICAgICAk
Y3NzRGV2aWNlQWRhcHRhdGlvbiwKLSAgICAkY3NzRXhjbHVzaW9uc1N1cHBvcnQsCiAgICAgJGNz
c0ZpbHRlcnNTdXBwb3J0LAogICAgICRjc3NHcmlkTGF5b3V0U3VwcG9ydCwKICAgICAkY3NzSW1h
Z2VPcmllbnRhdGlvblN1cHBvcnQsCkBAIC0xODMsOSArMTgyLDYgQEAgbXkgQGZlYXR1cmVzID0g
KAogICAgIHsgb3B0aW9uID0+ICJjc3MtZGV2aWNlLWFkYXB0YXRpb24iLCBkZXNjID0+ICJUb2dn
bGUgQ1NTIERldmljZSBBZGFwdGF0aW9uIHN1cHBvcnQiLAogICAgICAgZGVmaW5lID0+ICJFTkFC
TEVfQ1NTX0RFVklDRV9BREFQVEFUSU9OIiwgZGVmYXVsdCA9PiBpc0VmbCgpLCB2YWx1ZSA9PiBc
JGNzc0RldmljZUFkYXB0YXRpb24gfSwKIAotICAgIHsgb3B0aW9uID0+ICJjc3MtZXhjbHVzaW9u
cyIsIGRlc2MgPT4gIlRvZ2dsZSBDU1MgRXhjbHVzaW9ucyBzdXBwb3J0IiwKLSAgICAgIGRlZmlu
ZSA9PiAiRU5BQkxFX0NTU19FWENMVVNJT05TIiwgZGVmYXVsdCA9PiAxLCB2YWx1ZSA9PiBcJGNz
c0V4Y2x1c2lvbnNTdXBwb3J0IH0sCi0KICAgICB7IG9wdGlvbiA9PiAiY3NzLXNoYXBlcyIsIGRl
c2MgPT4gIlRvZ2dsZSBDU1MgU2hhcGVzIHN1cHBvcnQiLAogICAgICAgZGVmaW5lID0+ICJFTkFC
TEVfQ1NTX1NIQVBFUyIsIGRlZmF1bHQgPT4gMSwgdmFsdWUgPT4gXCRjc3NTaGFwZXNTdXBwb3J0
IH0sCiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>228303</attachid>
            <date>2014-04-01 11:36:56 -0700</date>
            <delta_ts>2014-04-01 15:14:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>removeexclusions.patch</filename>
            <type>text/plain</type>
            <size>36826</size>
            <attacher name="Zoltan Horvath">zoltan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBjNzc2NWRiLi4yNmE0ZjVjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTQtMDQt
MDEgIFpvbHRhbiBIb3J2YXRoICA8em9sdGFuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgW0NTUyBF
eGNsdXNpb25zXSBSZW1vdmUgZXhjbHVzaW9ucyBwYXJzaW5nIHN1cHBvcnQKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMTA0NgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9leGNsdXNpb25zL2Nz
cy1leGNsdXNpb25zLWRpc2FibGVkLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBm
YXN0L2V4Y2x1c2lvbnMvY3NzLWV4Y2x1c2lvbnMtZGlzYWJsZWQuaHRtbDogUmVtb3ZlZC4KKyAg
ICAgICAgKiBmYXN0L2V4Y2x1c2lvbnMvY3NzLWV4Y2x1c2lvbnMtZW5hYmxlZC1leHBlY3RlZC50
eHQ6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9leGNsdXNpb25zL2Nzcy1leGNsdXNpb25zLWVu
YWJsZWQuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2V4Y2x1c2lvbnMvcGFyc2luZy9w
YXJzaW5nLXdyYXAtZmxvdy1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9l
eGNsdXNpb25zL3BhcnNpbmcvcGFyc2luZy13cmFwLWZsb3cuaHRtbDogUmVtb3ZlZC4KKyAgICAg
ICAgKiBmYXN0L2V4Y2x1c2lvbnMvcGFyc2luZy9wYXJzaW5nLXdyYXAtdGhyb3VnaC1leHBlY3Rl
ZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9leGNsdXNpb25zL3BhcnNpbmcvcGFyc2lu
Zy13cmFwLXRocm91Z2guaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2V4Y2x1c2lvbnMv
cGFyc2luZy9zY3JpcHQtdGVzdHMvcGFyc2luZy10ZXN0LXV0aWxzLmpzOiBSZW1vdmVkLgorICAg
ICAgICAqIGZhc3QvZXhjbHVzaW9ucy9wYXJzaW5nL3NjcmlwdC10ZXN0cy9wYXJzaW5nLXdyYXAt
Zmxvdy5qczogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2V4Y2x1c2lvbnMvcGFyc2luZy9zY3Jp
cHQtdGVzdHMvcGFyc2luZy13cmFwLXRocm91Z2guanM6IFJlbW92ZWQuCisgICAgICAgICogcGxh
dGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogcGxhdGZvcm0vd2luY2Fpcm8v
VGVzdEV4cGVjdGF0aW9uczoKKwogMjAxNC0wNC0wMSAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBw
bGUuY29tPgogCiAgICAgICAgIFN1YnBpeGVsIHJlbmRlcmluZzogVHJhbnNpdGlvbiBjbGFzcyBJ
bWFnZSAoYW5kIGl0cyBkZXBlbmRlbmNpZXMpIGZyb20gaW50IHRvIGZsb2F0IHRvIGVuYWJsZSBz
dWJwaXhlbCBwb3NpdGlvbmVkL3NpemVkIGltYWdlcy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvZXhjbHVzaW9ucy9jc3MtZXhjbHVzaW9ucy1kaXNhYmxlZC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L2V4Y2x1c2lvbnMvY3NzLWV4Y2x1c2lvbnMtZGlzYWJsZWQtZXhwZWN0
ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlYjMzZWQ4Li4wMDAwMDAwCi0t
LSBhL0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9jc3MtZXhjbHVzaW9ucy1kaXNhYmxlZC1l
eHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi1UZXN0IHRoYXQgcGFy
c2luZyBvZiBjc3MgZXhjbHVzaW9ucyByZWxhdGVkIHByb3BlcnRpZXMgY2FuIGJlIGRpc2FibGVk
LgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotUEFTUyB0ZXN0SW5saW5lU3R5bGUo
Ii13ZWJraXQtd3JhcC1mbG93IiwgImJvdGgiKSBpcyBudWxsCi1QQVNTIHRlc3RDb21wdXRlZFN0
eWxlKCItd2Via2l0LXdyYXAtZmxvdyIsICJib3RoIikgaXMgImF1dG8iCi1QQVNTIHRlc3RJbmxp
bmVTdHlsZSgiLXdlYmtpdC13cmFwLXRocm91Z2giLCAibm9uZSIpIGlzIG51bGwKLVBBU1MgdGVz
dENvbXB1dGVkU3R5bGUoIi13ZWJraXQtd3JhcC10aHJvdWdoIiwgIm5vbmUiKSBpcyAid3JhcCIK
LVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V4Y2x1c2lvbnMvY3NzLWV4Y2x1c2lvbnMtZGlzYWJs
ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9jc3MtZXhjbHVzaW9ucy1kaXNh
YmxlZC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5MDdhMDI2Li4wMDAwMDAw
Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9jc3MtZXhjbHVzaW9ucy1kaXNhYmxl
ZC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNDAgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08
aHRtbD4KLTxib2R5PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5q
cyI+PC9zY3JpcHQ+Ci08c2NyaXB0PgotCi1kZXNjcmlwdGlvbignVGVzdCB0aGF0IHBhcnNpbmcg
b2YgY3NzIGV4Y2x1c2lvbnMgcmVsYXRlZCBwcm9wZXJ0aWVzIGNhbiBiZSBkaXNhYmxlZC4nKTsK
LQotaWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsKLSAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdz
LnNldENTU1NoYXBlc0VuYWJsZWQoZmFsc2UpOwotICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGlu
Z3Muc2V0Q1NTRXhjbHVzaW9uc0VuYWJsZWQoZmFsc2UpOwotfQotCi1mdW5jdGlvbiB0ZXN0SW5s
aW5lU3R5bGUocHJvcGVydHksIHZhbHVlKSB7Ci0gICAgdmFyIGRpdiA9IGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnQoImRpdiIpOwotICAgIGRpdi5zZXRBdHRyaWJ1dGUoInN0eWxlIiwgcHJvcGVydHkg
KyAiOiAiICsgdmFsdWUpOwotICAgIHJldHVybiBkaXYuc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZShw
cm9wZXJ0eSk7Ci19Ci0KLWZ1bmN0aW9uIHRlc3RDb21wdXRlZFN0eWxlKHByb3BlcnR5LCB2YWx1
ZSkgewotICAgIHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICBk
b2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGRpdik7Ci0gICAgZGl2LnN0eWxlLnNldFByb3BlcnR5
KHByb3BlcnR5LCB2YWx1ZSk7Ci0gICAgdmFyIGNvbXB1dGVkVmFsdWUgPSBnZXRDb21wdXRlZFN0
eWxlKGRpdikuZ2V0UHJvcGVydHlWYWx1ZShwcm9wZXJ0eSk7Ci0gICAgZG9jdW1lbnQuYm9keS5y
ZW1vdmVDaGlsZChkaXYpOwotICAgIHJldHVybiBjb21wdXRlZFZhbHVlOwotfQotCi1mdW5jdGlv
biB0ZXN0U3R5bGUocHJvcGVydHksIHZhbHVlLCBjb21wdXRlZEV4cGVjdGVkKSB7Ci0gICAgc2hv
dWxkQmVOdWxsKCd0ZXN0SW5saW5lU3R5bGUoIicgKyBwcm9wZXJ0eSArICciLCAiJyArIHZhbHVl
ICsgJyIpJyk7Ci0gICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0Q29tcHV0ZWRTdHlsZSgi
JyArIHByb3BlcnR5ICsgJyIsICInICsgdmFsdWUgKyAnIiknLCBjb21wdXRlZEV4cGVjdGVkKTsK
LX0KLQotdGVzdFN0eWxlKCItd2Via2l0LXdyYXAtZmxvdyIsICJib3RoIiwgImF1dG8iKTsKLXRl
c3RTdHlsZSgiLXdlYmtpdC13cmFwLXRocm91Z2giLCAibm9uZSIsICJ3cmFwIik7Ci0KLTwvc2Ny
aXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2Ny
aXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9leGNs
dXNpb25zL2Nzcy1leGNsdXNpb25zLWVuYWJsZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
ZmFzdC9leGNsdXNpb25zL2Nzcy1leGNsdXNpb25zLWVuYWJsZWQtZXhwZWN0ZWQudHh0CmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwZTcyZTBmLi4wMDAwMDAwCi0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvZXhjbHVzaW9ucy9jc3MtZXhjbHVzaW9ucy1lbmFibGVkLWV4cGVjdGVkLnR4dAor
KysgL2Rldi9udWxsCkBAIC0xLDEzICswLDAgQEAKLVRlc3QgdGhhdCBwYXJzaW5nIG9mIGNzcyBl
eGNsdXNpb25zIHJlbGF0ZWQgcHJvcGVydGllcyBpcyBlbmFibGVkIGJ5IGRlZmF1bHQuCi0KLU9u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIHRlc3RJbmxpbmVTdHlsZSgiLXdlYmtp
dC13cmFwLWZsb3ciLCAiYm90aCIpIGlzICJib3RoIgotUEFTUyB0ZXN0Q29tcHV0ZWRTdHlsZSgi
LXdlYmtpdC13cmFwLWZsb3ciLCAiYm90aCIpIGlzICJib3RoIgotUEFTUyB0ZXN0SW5saW5lU3R5
bGUoIi13ZWJraXQtd3JhcC10aHJvdWdoIiwgIm5vbmUiKSBpcyAibm9uZSIKLVBBU1MgdGVzdENv
bXB1dGVkU3R5bGUoIi13ZWJraXQtd3JhcC10aHJvdWdoIiwgIm5vbmUiKSBpcyAibm9uZSIKLVBB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V4Y2x1c2lvbnMvY3NzLWV4Y2x1c2lvbnMtZW5hYmxlZC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9leGNsdXNpb25zL2Nzcy1leGNsdXNpb25zLWVuYWJsZWQu
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTcwNzJhOC4uMDAwMDAwMAotLS0g
YS9MYXlvdXRUZXN0cy9mYXN0L2V4Y2x1c2lvbnMvY3NzLWV4Y2x1c2lvbnMtZW5hYmxlZC5odG1s
CisrKyAvZGV2L251bGwKQEAgLTEsMzUgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4K
LTxib2R5PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9z
Y3JpcHQ+Ci08c2NyaXB0PgotCi1kZXNjcmlwdGlvbignVGVzdCB0aGF0IHBhcnNpbmcgb2YgY3Nz
IGV4Y2x1c2lvbnMgcmVsYXRlZCBwcm9wZXJ0aWVzIGlzIGVuYWJsZWQgYnkgZGVmYXVsdC4nKTsK
LQotZnVuY3Rpb24gdGVzdElubGluZVN0eWxlKHByb3BlcnR5LCB2YWx1ZSkgewotICAgIHZhciBk
aXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICBkaXYuc2V0QXR0cmlidXRl
KCJzdHlsZSIsIHByb3BlcnR5ICsgIjogIiArIHZhbHVlKTsKLSAgICByZXR1cm4gZGl2LnN0eWxl
LmdldFByb3BlcnR5VmFsdWUocHJvcGVydHkpOwotfQotCi1mdW5jdGlvbiB0ZXN0Q29tcHV0ZWRT
dHlsZShwcm9wZXJ0eSwgdmFsdWUpIHsKLSAgICB2YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgiZGl2Iik7Ci0gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkaXYpOwotICAgIGRp
di5zdHlsZS5zZXRQcm9wZXJ0eShwcm9wZXJ0eSwgdmFsdWUpOwotICAgIHZhciBjb21wdXRlZFZh
bHVlID0gZ2V0Q29tcHV0ZWRTdHlsZShkaXYpLmdldFByb3BlcnR5VmFsdWUocHJvcGVydHkpOwot
ICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZGl2KTsKLSAgICByZXR1cm4gY29tcHV0ZWRW
YWx1ZTsKLX0KLQotZnVuY3Rpb24gdGVzdFN0eWxlKHByb3BlcnR5LCB2YWx1ZSwgZXhwZWN0ZWQp
IHsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3RJbmxpbmVTdHlsZSgiJyArIHByb3Bl
cnR5ICsgJyIsICInICsgdmFsdWUgKyAnIiknLCBleHBlY3RlZCk7Ci0gICAgc2hvdWxkQmVFcXVh
bFRvU3RyaW5nKCd0ZXN0Q29tcHV0ZWRTdHlsZSgiJyArIHByb3BlcnR5ICsgJyIsICInICsgdmFs
dWUgKyAnIiknLCBleHBlY3RlZCk7Ci19Ci0KLXRlc3RTdHlsZSgiLXdlYmtpdC13cmFwLWZsb3ci
LCAiYm90aCIsICJib3RoIik7Ci10ZXN0U3R5bGUoIi13ZWJraXQtd3JhcC10aHJvdWdoIiwgIm5v
bmUiLCAibm9uZSIpOwotCi08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9wYXJzaW5nL3BhcnNpbmctd3JhcC1mbG93LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9wYXJzaW5nL3BhcnNpbmct
d3JhcC1mbG93LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDQ4
N2U1OC4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2V4Y2x1c2lvbnMvcGFyc2luZy9w
YXJzaW5nLXdyYXAtZmxvdy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwyNSArMCww
IEBACi1UZXN0IHBhcnNpbmcgb2YgdGhlIENTUyB3cmFwLWZsb3cgcHJvcGVydHkuCi0KLU9uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIGdldENTU1RleHQoIi13ZWJraXQtd3JhcC1m
bG93IiwgImF1dG8iKSBpcyAiYXV0byIKLVBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC13cmFwLWZs
b3ciLCAiYm90aCIpIGlzICJib3RoIgotUEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXdyYXAtZmxv
dyIsICJzdGFydCIpIGlzICJzdGFydCIKLVBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC13cmFwLWZs
b3ciLCAiZW5kIikgaXMgImVuZCIKLVBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC13cmFwLWZsb3ci
LCAibWF4aW11bSIpIGlzICJtYXhpbXVtIgotUEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXdyYXAt
ZmxvdyIsICJjbGVhciIpIGlzICJjbGVhciIKLVBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC13cmFw
LWZsb3ciLCAiOyIpIGlzICIiCi1QQVNTIGdldENTU1RleHQoIi13ZWJraXQtd3JhcC1mbG93Iiwg
IjUiKSBpcyAiIgotUEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXdyYXAtZmxvdyIsICItMS4yIikg
aXMgIiIKLVBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC13cmFwLWZsb3ciLCAiJ3N0cmluZyciKSBp
cyAiIgotUEFTUyBnZXRDb21wdXRlZFN0eWxlVmFsdWUoIi13ZWJraXQtd3JhcC1mbG93IiwgImF1
dG8iKSBpcyAiYXV0byIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZVZhbHVlKCItd2Via2l0LXdyYXAt
ZmxvdyIsICI1IikgaXMgImF1dG8iCi1QQVNTIGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtp
dC13cmFwLWZsb3ciLCAiJ3N0cmluZyciKSBpcyAiYXV0byIKLVBBU1MgZ2V0Q2hpbGRDb21wdXRl
ZFN0eWxlKCItd2Via2l0LXdyYXAtZmxvdyIsICJhdXRvIiwgInN0YXJ0IikgaXMgInN0YXJ0Igot
UEFTUyBnZXRDaGlsZENvbXB1dGVkU3R5bGUoIi13ZWJraXQtd3JhcC1mbG93IiwgImVuZCIsICJh
dXRvIikgaXMgImF1dG8iCi1QQVNTIGdldENoaWxkQ29tcHV0ZWRTdHlsZSgiLXdlYmtpdC13cmFw
LWZsb3ciLCAiYm90aCIsICJjbGVhciIpIGlzICJjbGVhciIKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L2V4Y2x1c2lvbnMvcGFyc2luZy9wYXJzaW5nLXdyYXAtZmxvdy5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9leGNsdXNpb25zL3BhcnNpbmcvcGFyc2luZy13cmFwLWZsb3cuaHRtbApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjg5NzhlNi4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9mYXN0L2V4Y2x1c2lvbnMvcGFyc2luZy9wYXJzaW5nLXdyYXAtZmxvdy5odG1sCisrKyAvZGV2
L251bGwKQEAgLTEsMTEgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgot
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
Ci08L2hlYWQ+Ci08Ym9keT4KLTxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvcGFyc2luZy10ZXN0
LXV0aWxzLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvcGFyc2luZy13
cmFwLWZsb3cuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9leGNsdXNpb25zL3BhcnNpbmcvcGFyc2luZy13cmFwLXRocm91Z2gt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9leGNsdXNpb25zL3BhcnNpbmcvcGFyc2lu
Zy13cmFwLXRocm91Z2gtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBlOTliMjg1Li4wMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9wYXJz
aW5nL3BhcnNpbmctd3JhcC10aHJvdWdoLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0x
LDIwICswLDAgQEAKLVRlc3QgcGFyc2luZyBvZiB0aGUgQ1NTIHdyYXAtdGhyb3VnaCBwcm9wZXJ0
eS4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdl
cywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1MgZ2V0Q1NTVGV4dCgiLXdl
YmtpdC13cmFwLXRocm91Z2giLCAid3JhcCIpIGlzICJ3cmFwIgotUEFTUyBnZXRDU1NUZXh0KCIt
d2Via2l0LXdyYXAtdGhyb3VnaCIsICJub25lIikgaXMgIm5vbmUiCi1QQVNTIGdldENTU1RleHQo
Ii13ZWJraXQtd3JhcC10aHJvdWdoIiwgIjsiKSBpcyAiIgotUEFTUyBnZXRDU1NUZXh0KCItd2Vi
a2l0LXdyYXAtdGhyb3VnaCIsICI1IikgaXMgIiIKLVBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC13
cmFwLXRocm91Z2giLCAiLTEuMiIpIGlzICIiCi1QQVNTIGdldENTU1RleHQoIi13ZWJraXQtd3Jh
cC10aHJvdWdoIiwgIidzdHJpbmcnIikgaXMgIiIKLVBBU1MgZ2V0Q29tcHV0ZWRTdHlsZVZhbHVl
KCItd2Via2l0LXdyYXAtdGhyb3VnaCIsICJ3cmFwIikgaXMgIndyYXAiCi1QQVNTIGdldENvbXB1
dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC13cmFwLXRocm91Z2giLCAiNSIpIGlzICJ3cmFwIgotUEFT
UyBnZXRDb21wdXRlZFN0eWxlVmFsdWUoIi13ZWJraXQtd3JhcC10aHJvdWdoIiwgIidzdHJpbmcn
IikgaXMgIndyYXAiCi1QQVNTIGdldENoaWxkQ29tcHV0ZWRTdHlsZSgiLXdlYmtpdC13cmFwLXRo
cm91Z2giLCAid3JhcCIsICJub25lIikgaXMgIm5vbmUiCi1QQVNTIGdldENoaWxkQ29tcHV0ZWRT
dHlsZSgiLXdlYmtpdC13cmFwLXRocm91Z2giLCAibm9uZSIsICJ3cmFwIikgaXMgIndyYXAiCi1Q
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9leGNsdXNpb25zL3BhcnNpbmcvcGFyc2luZy13cmFwLXRo
cm91Z2guaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9wYXJzaW5nL3BhcnNpbmct
d3JhcC10aHJvdWdoLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNjYmFjZWYu
LjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9leGNsdXNpb25zL3BhcnNpbmcvcGFyc2lu
Zy13cmFwLXRocm91Z2guaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAKLTwhRE9D
VFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08c2NyaXB0IHNy
Yz0ic2NyaXB0LXRlc3RzL3BhcnNpbmctdGVzdC11dGlscy5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0ic2NyaXB0LXRlc3RzL3BhcnNpbmctd3JhcC10aHJvdWdoLmpzIj48L3NjcmlwdD4KLTxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
LTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9u
cy9wYXJzaW5nL3NjcmlwdC10ZXN0cy9wYXJzaW5nLXRlc3QtdXRpbHMuanMgYi9MYXlvdXRUZXN0
cy9mYXN0L2V4Y2x1c2lvbnMvcGFyc2luZy9zY3JpcHQtdGVzdHMvcGFyc2luZy10ZXN0LXV0aWxz
LmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlYWMwYjU2Li4wMDAwMDAwCi0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9wYXJzaW5nL3NjcmlwdC10ZXN0cy9wYXJzaW5n
LXRlc3QtdXRpbHMuanMKKysrIC9kZXYvbnVsbApAQCAtMSw2MyArMCwwIEBACi1mdW5jdGlvbiBn
ZXRDU1NUZXh0KHByb3BlcnR5LCB2YWx1ZSkKLXsKLSAgICB2YXIgZWxlbWVudCA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgIGVsZW1lbnQuc3R5bGUuY3NzVGV4dCA9IHByb3Bl
cnR5ICsgIjogIiArIHZhbHVlOwotICAgIHJldHVybiBlbGVtZW50LnN0eWxlW3Byb3BlcnR5XTsK
LX0KLQotZnVuY3Rpb24gZ2V0Q29tcHV0ZWRTdHlsZVZhbHVlKHByb3BlcnR5LCB2YWx1ZSkgCi17
Ci0gICAgdmFyIGVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICBk
b2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGVsZW1lbnQpOwotICAgIGVsZW1lbnQuc3R5bGUuc2V0
UHJvcGVydHkocHJvcGVydHksIHZhbHVlKTsKLSAgICB2YXIgY29tcHV0ZWRWYWx1ZSA9IGdldENv
bXB1dGVkU3R5bGUoZWxlbWVudCkuZ2V0UHJvcGVydHlWYWx1ZShwcm9wZXJ0eSk7Ci0gICAgZG9j
dW1lbnQuYm9keS5yZW1vdmVDaGlsZChlbGVtZW50KTsKLSAgICByZXR1cm4gY29tcHV0ZWRWYWx1
ZTsKLX0KLQotZnVuY3Rpb24gZ2V0UGFyZW50QW5kQ2hpbGRDb21wdXRlZFN0eWxlcyhwcm9wZXJ0
eSwgcGFyZW50VmFsdWUsIGNoaWxkVmFsdWUpIAotewotICAgIHZhciBwYXJlbnRFbGVtZW50ID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Ci0gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRD
aGlsZChwYXJlbnRFbGVtZW50KTsKLSAgICBwYXJlbnRFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5
KHByb3BlcnR5LCBwYXJlbnRWYWx1ZSk7Ci0gICAgdmFyIGNoaWxkRWxlbWVudCA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgIHBhcmVudEVsZW1lbnQuYXBwZW5kQ2hpbGQoY2hp
bGRFbGVtZW50KTsKLSAgICBjaGlsZEVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkocHJvcGVydHks
IGNoaWxkVmFsdWUpOwotICAgIHZhciBwYXJlbnRDb21wdXRlZFZhbHVlID0gZ2V0Q29tcHV0ZWRT
dHlsZShwYXJlbnRFbGVtZW50KS5nZXRQcm9wZXJ0eVZhbHVlKHByb3BlcnR5KTsKLSAgICB2YXIg
Y2hpbGRDb21wdXRlZFZhbHVlID0gZ2V0Q29tcHV0ZWRTdHlsZShjaGlsZEVsZW1lbnQpLmdldFBy
b3BlcnR5VmFsdWUocHJvcGVydHkpOwotICAgIHBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQoY2hp
bGRFbGVtZW50KTsKLSAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHBhcmVudEVsZW1lbnQp
OwotICAgIHJldHVybiB7cGFyZW50OiBwYXJlbnRDb21wdXRlZFZhbHVlLCBjaGlsZDogY2hpbGRD
b21wdXRlZFZhbHVlfTsKLX0KLQotZnVuY3Rpb24gZ2V0UGFyZW50QW5kQ2hpbGRDb21wdXRlZFN0
eWxlc1N0cmluZyhwcm9wZXJ0eSwgcGFyZW50VmFsdWUsIGNoaWxkVmFsdWUpIAotewotICAgIHZh
ciBzdHlsZXMgPSBnZXRQYXJlbnRBbmRDaGlsZENvbXB1dGVkU3R5bGVzKHByb3BlcnR5LCBwYXJl
bnRWYWx1ZSwgY2hpbGRWYWx1ZSk7Ci0gICAgcmV0dXJuICJwYXJlbnQ6ICIgKyBzdHlsZXMucGFy
ZW50ICsgIiwgY2hpbGQ6ICIgKyBzdHlsZXMuY2hpbGQ7Ci19Ci0KLWZ1bmN0aW9uIGdldENoaWxk
Q29tcHV0ZWRTdHlsZShwcm9wZXJ0eSwgcGFyZW50VmFsdWUsIGNoaWxkVmFsdWUpIAotewotICAg
IHZhciBzdHlsZXMgPSBnZXRQYXJlbnRBbmRDaGlsZENvbXB1dGVkU3R5bGVzKHByb3BlcnR5LCBw
YXJlbnRWYWx1ZSwgY2hpbGRWYWx1ZSk7Ci0gICAgcmV0dXJuIHN0eWxlcy5jaGlsZDsKLX0KLQot
ZnVuY3Rpb24gdGVzdFNwZWNpZmllZFByb3BlcnR5KHByb3BlcnR5LCB2YWx1ZSwgZXhwZWN0ZWRW
YWx1ZSkKLXsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ2dldENTU1RleHQoIicgKyBwcm9w
ZXJ0eSArICciLCAiJyArIHZhbHVlICsgJyIpJywgZXhwZWN0ZWRWYWx1ZSk7Ci19Ci0KLWZ1bmN0
aW9uIHRlc3RDb21wdXRlZFByb3BlcnR5KHByb3BlcnR5LCB2YWx1ZSwgZXhwZWN0ZWRWYWx1ZSkK
LXsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ2dldENvbXB1dGVkU3R5bGVWYWx1ZSgiJyAr
IHByb3BlcnR5ICsgJyIsICInICsgdmFsdWUgKyAnIiknLCBleHBlY3RlZFZhbHVlKTsKLX0KLQot
ZnVuY3Rpb24gdGVzdE5vdEluaGVyaXRlZENoaWxkUHJvcGVydHkocHJvcGVydHksIHBhcmVudFZh
bHVlLCBjaGlsZFZhbHVlLCBleHBlY3RlZENoaWxkVmFsdWUpCi17Ci0gICAgc2hvdWxkQmVFcXVh
bFRvU3RyaW5nKCdnZXRDaGlsZENvbXB1dGVkU3R5bGUoIicgKyBwcm9wZXJ0eSArICciLCAiJyAr
IHBhcmVudFZhbHVlICsgJyIsICInICsgY2hpbGRWYWx1ZSArICciKScsIGV4cGVjdGVkQ2hpbGRW
YWx1ZSk7Ci19Ci0KLWZ1bmN0aW9uIGFwcGx5VG9FYWNoQXJnbGlzdCh0ZXN0RnVuY3Rpb24sIGFy
Z2xpc3RzKQotewotICAgIGFyZ2xpc3RzLmZvckVhY2goZnVuY3Rpb24oYXJnbGlzdCwgaSwgYSkg
e3Rlc3RGdW5jdGlvbi5hcHBseShudWxsLCBhcmdsaXN0KTt9KTsKLX0KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9wYXJzaW5nL3NjcmlwdC10ZXN0cy9wYXJzaW5nLXdy
YXAtZmxvdy5qcyBiL0xheW91dFRlc3RzL2Zhc3QvZXhjbHVzaW9ucy9wYXJzaW5nL3NjcmlwdC10
ZXN0cy9wYXJzaW5nLXdyYXAtZmxvdy5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
YTk1ODE4NS4uMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2V4Y2x1c2lvbnMvcGFyc2lu
Zy9zY3JpcHQtdGVzdHMvcGFyc2luZy13cmFwLWZsb3cuanMKKysrIC9kZXYvbnVsbApAQCAtMSwz
NyArMCwwIEBACi1kZXNjcmlwdGlvbignVGVzdCBwYXJzaW5nIG9mIHRoZSBDU1Mgd3JhcC1mbG93
IHByb3BlcnR5LicpOwotCi1pZiAod2luZG93LmludGVybmFscykKLSAgICB3aW5kb3cuaW50ZXJu
YWxzLnNldHRpbmdzLnNldENTU0V4Y2x1c2lvbnNFbmFibGVkKHRydWUpOwotCi0vLyBUaGUgdGVz
dCBmdW5jdGlvbnMgYW5kIGdsb2JhbHMgdXNlZCBoZXJlIGFyZSBkZWZpbmVkIHBhcnNpbmctdGVz
dC11dGlscy5qcy4KLQotYXBwbHlUb0VhY2hBcmdsaXN0KAotICAgIHRlc3RTcGVjaWZpZWRQcm9w
ZXJ0eSwKLSAgICBbLy8gW3Byb3BlcnR5LCB2YWx1ZSwgZXhwZWN0ZWRWYWx1ZV0KLSAgICAgWyIt
d2Via2l0LXdyYXAtZmxvdyIsICJhdXRvIiwgImF1dG8iXSwKLSAgICAgWyItd2Via2l0LXdyYXAt
ZmxvdyIsICJib3RoIiwgImJvdGgiXSwKLSAgICAgWyItd2Via2l0LXdyYXAtZmxvdyIsICJzdGFy
dCIsICJzdGFydCJdLAotICAgICBbIi13ZWJraXQtd3JhcC1mbG93IiwgImVuZCIsICJlbmQiXSwK
LSAgICAgWyItd2Via2l0LXdyYXAtZmxvdyIsICJtYXhpbXVtIiwgIm1heGltdW0iXSwKLSAgICAg
WyItd2Via2l0LXdyYXAtZmxvdyIsICJjbGVhciIsICJjbGVhciJdLAotICAgICBbIi13ZWJraXQt
d3JhcC1mbG93IiwgIjsiLCAiIl0sCi0gICAgIFsiLXdlYmtpdC13cmFwLWZsb3ciLCAiNSIsICIi
XSwKLSAgICAgWyItd2Via2l0LXdyYXAtZmxvdyIsICItMS4yIiwgIiJdLAotICAgICBbIi13ZWJr
aXQtd3JhcC1mbG93IiwgIlwnc3RyaW5nXCciLCAiIl1dCi0pOwotCi1hcHBseVRvRWFjaEFyZ2xp
c3QoCi0gICAgdGVzdENvbXB1dGVkUHJvcGVydHksCi0gICAgWy8vIFtwcm9wZXJ0eSwgdmFsdWUs
IGV4cGVjdGVkVmFsdWVdCi0gICAgIFsiLXdlYmtpdC13cmFwLWZsb3ciLCAiYXV0byIsICJhdXRv
Il0sCi0gICAgIFsiLXdlYmtpdC13cmFwLWZsb3ciLCAiNSIsICJhdXRvIl0sCi0gICAgIFsiLXdl
YmtpdC13cmFwLWZsb3ciLCAiXCdzdHJpbmdcJyIsICJhdXRvIl1dCi0pOwotCi1hcHBseVRvRWFj
aEFyZ2xpc3QoCi0gICAgdGVzdE5vdEluaGVyaXRlZENoaWxkUHJvcGVydHksCi0gICAgWy8vIFtw
cm9wZXJ0eSwgcGFyZW50VmFsdWUsIGNoaWxkVmFsdWUsIGV4cGVjdGVkQ2hpbGRWYWx1ZV0KLSAg
ICAgWyItd2Via2l0LXdyYXAtZmxvdyIsICJhdXRvIiwgInN0YXJ0IiwgInN0YXJ0Il0sCi0gICAg
IFsiLXdlYmtpdC13cmFwLWZsb3ciLCAiZW5kIiwgImF1dG8iLCAiYXV0byJdLAotICAgICBbIi13
ZWJraXQtd3JhcC1mbG93IiwgImJvdGgiLCAiY2xlYXIiLCAiY2xlYXIiXV0KLSk7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V4Y2x1c2lvbnMvcGFyc2luZy9zY3JpcHQtdGVzdHMvcGFy
c2luZy13cmFwLXRocm91Z2guanMgYi9MYXlvdXRUZXN0cy9mYXN0L2V4Y2x1c2lvbnMvcGFyc2lu
Zy9zY3JpcHQtdGVzdHMvcGFyc2luZy13cmFwLXRocm91Z2guanMKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDBhYzc0OWYuLjAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9leGNs
dXNpb25zL3BhcnNpbmcvc2NyaXB0LXRlc3RzL3BhcnNpbmctd3JhcC10aHJvdWdoLmpzCisrKyAv
ZGV2L251bGwKQEAgLTEsMzIgKzAsMCBAQAotZGVzY3JpcHRpb24oJ1Rlc3QgcGFyc2luZyBvZiB0
aGUgQ1NTIHdyYXAtdGhyb3VnaCBwcm9wZXJ0eS4nKTsKLQotaWYgKHdpbmRvdy5pbnRlcm5hbHMp
Ci0gICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRDU1NFeGNsdXNpb25zRW5hYmxlZCh0
cnVlKTsKLQotLy8gVGhlIHRlc3QgZnVuY3Rpb25zIGFuZCBnbG9iYWxzIHVzZWQgaGVyZSBhcmUg
ZGVmaW5lZCBwYXJzaW5nLXRlc3QtdXRpbHMuanMuCi0KLWFwcGx5VG9FYWNoQXJnbGlzdCgKLSAg
ICB0ZXN0U3BlY2lmaWVkUHJvcGVydHksCi0gICAgWy8vIFtwcm9wZXJ0eSwgdmFsdWUsIGV4cGVj
dGVkVmFsdWVdCi0gICAgIFsiLXdlYmtpdC13cmFwLXRocm91Z2giLCAid3JhcCIsICJ3cmFwIl0s
Ci0gICAgIFsiLXdlYmtpdC13cmFwLXRocm91Z2giLCAibm9uZSIsICJub25lIl0sCi0gICAgIFsi
LXdlYmtpdC13cmFwLXRocm91Z2giLCAiOyIsICIiXSwKLSAgICAgWyItd2Via2l0LXdyYXAtdGhy
b3VnaCIsICI1IiwgIiJdLAotICAgICBbIi13ZWJraXQtd3JhcC10aHJvdWdoIiwgIi0xLjIiLCAi
Il0sCi0gICAgIFsiLXdlYmtpdC13cmFwLXRocm91Z2giLCAiXCdzdHJpbmdcJyIsICIiXV0KLSk7
Ci0KLWFwcGx5VG9FYWNoQXJnbGlzdCgKLSAgICB0ZXN0Q29tcHV0ZWRQcm9wZXJ0eSwKLSAgICBb
Ly8gW3Byb3BlcnR5LCB2YWx1ZSwgZXhwZWN0ZWRWYWx1ZV0KLSAgICAgWyItd2Via2l0LXdyYXAt
dGhyb3VnaCIsICJ3cmFwIiwgIndyYXAiXSwKLSAgICAgWyItd2Via2l0LXdyYXAtdGhyb3VnaCIs
ICI1IiwgIndyYXAiXSwKLSAgICAgWyItd2Via2l0LXdyYXAtdGhyb3VnaCIsICJcJ3N0cmluZ1wn
IiwgIndyYXAiXV0KLSk7Ci0KLWFwcGx5VG9FYWNoQXJnbGlzdCgKLSAgICB0ZXN0Tm90SW5oZXJp
dGVkQ2hpbGRQcm9wZXJ0eSwKLSAgICBbLy8gW3Byb3BlcnR5LCBwYXJlbnRWYWx1ZSwgY2hpbGRW
YWx1ZSwgZXhwZWN0ZWRDaGlsZFZhbHVlXQotICAgICBbIi13ZWJraXQtd3JhcC10aHJvdWdoIiwg
IndyYXAiLCAibm9uZSIsICJub25lIl0sCi0gICAgIFsiLXdlYmtpdC13cmFwLXRocm91Z2giLCAi
bm9uZSIsICJ3cmFwIiwgIndyYXAiXV0KLSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0
RXhwZWN0YXRpb25zCmluZGV4IDliMmYxZDIuLjMxOTM3MmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zCkBAIC0xNDA5LDkgKzE0MDksNiBAQCBmYXN0L2RvbS9I
VE1MVGVtcGxhdGVFbGVtZW50L2lubmVySFRNTC1pbmVydC5odG1sIFsgRmFpbHVyZSBdCiAjIEpT
QyBkb2VzIG5vdCBzdXBwb3J0IHNldElzb2xhdGVkV29ybGRTZWN1cml0eU9yaWdpbgogd2Via2l0
Lm9yZy9iLzYxNTQwIGh0dHAvdGVzdHMvc2VjdXJpdHkvaXNvbGF0ZWRXb3JsZC9jcm9zcy1vcmln
aW4teGhyLmh0bWwgWyBGYWlsdXJlIF0KIAotIyBDU1MgRXhjbHVzaW9ucyBzdXBwb3J0IG5vdCB5
ZXQgZW5hYmxlZC4KLXdlYmtpdC5vcmcvYi81NzMxMSBmYXN0L2V4Y2x1c2lvbnMKLQogd2Via2l0
Lm9yZy9iLzYyNTk1IGZhc3Qvd29ya2Vycy93b3JrZXItY3Jhc2gtd2l0aC1pbnZhbGlkLWxvY2F0
aW9uLmh0bWwgWyBGYWlsdXJlIF0KIAogIyBOZWVkIHRvIGltcGxlbWVudCBnZXRGb3JtVmFsdWUo
KS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL1Rlc3RFeHBlY3Rh
dGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9UZXN0RXhwZWN0YXRpb25zCmlu
ZGV4IDY2MmQyYTYuLmY3ZTkzNGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dp
bmNhaXJvL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fp
cm8vVGVzdEV4cGVjdGF0aW9ucwpAQCAtMTk4MSwxMCArMTk4MSw2IEBAIGZhc3QveHNsL3hzbHQt
cHJvY2Vzc29yLXRlbXBsYXRlLmh0bWwKICMgQ1NTIFJlZ2lvbnMgc3VwcG9ydCBub3QgeWV0IGVu
YWJsZWQuIGh0dHA6Ly93ZWJraXQub3JnL2IvNTczMTIKIGZhc3QvcmVnaW9ucwogCi0jIENTUyBF
eGNsdXNpb25zIHN1cHBvcnQgbm90IHlldCBlbmFibGVkLiBodHRwOi8vd2Via2l0Lm9yZy9iLzU3
MzExCi1mYXN0L2V4Y2x1c2lvbnMKLWNzc3dnL3N1Ym1pdHRlZC9zaGFwZXMKLQogIyBDYXVzZXMg
YSBTeW50YXhFcnJvciAoaHR0cDovL3dlYmtpdC5vcmcvYi82MjU5NSkuCiBmYXN0L3dvcmtlcnMv
d29ya2VyLWNyYXNoLXdpdGgtaW52YWxpZC1sb2NhdGlvbi5odG1sCiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA2
YzE0NjZkLi5hZDM4ZjJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDMgQEAKKzIwMTQtMDQtMDEg
IFpvbHRhbiBIb3J2YXRoICA8em9sdGFuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgW0NTUyBFeGNs
dXNpb25zXSBSZW1vdmUgZXhjbHVzaW9ucyBwYXJzaW5nIHN1cHBvcnQKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMTA0NgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENTUyBFeGNsdXNpb25zIHNwZWNpZmlj
YXRpb24gWzFdIG5lZWRzIHNvbWUgZXZvbHV0aW9uIGJlZm9yZSB0aGUgYWN0dWFsIGltcGxlbWVu
dGF0aW9uIGhhcHBlbnMuCisgICAgICAgIFdlIGhhdmUgb25seSB0aGUgcGFyc2luZyBjb2RlIGlu
IFdlYktpdCBmb3IgLXdlYmtpdC13cmFwLWZsb3cgYW5kIC13ZWJraXQtd3JhcC10aHJvdWdoLgor
ICAgICAgICBUaGlzIHBhdGNoIHJlbW92ZXMgdGhlIGNvZGUgZnJvbSB0aGUgdHJ1bmsgZm9yIG5v
dywgaXQgZG9lc24ndCBtYWtlIHNlbnNlIHRvIGtlZXAgaXQgYXJvdW5kLgorCisgICAgICAgIFsx
XSBodHRwOi8vd3d3LnczLm9yZy9UUi9jc3MzLWV4Y2x1c2lvbnMvCisKKyAgICAgICAgUmVtb3Zl
ZCBleGlzdGluZyBwYXJzaW5nIHRlc3RzLgorCisgICAgICAgICogY3NzL0NTU0NvbXB1dGVkU3R5
bGVEZWNsYXJhdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb21wdXRlZFN0eWxlRXh0cmFj
dG9yOjpwcm9wZXJ0eVZhbHVlKToKKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OmlzVmFsaWRLZXl3b3JkUHJvcGVydHlBbmRWYWx1ZSk6CisgICAgICAgIChX
ZWJDb3JlOjppc0tleXdvcmRQcm9wZXJ0eUlEKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1BhcnNl
cjo6cGFyc2VWYWx1ZSk6CisgICAgICAgICogY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3Mu
aDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1
ZSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0
b3IgV3JhcEZsb3cpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFs
dWU6Om9wZXJhdG9yIFdyYXBUaHJvdWdoKTogRGVsZXRlZC4KKyAgICAgICAgKiBjc3MvQ1NTUHJv
cGVydHlOYW1lcy5pbjoKKyAgICAgICAgKiBjc3MvQ1NTVmFsdWVLZXl3b3Jkcy5pbjoKKyAgICAg
ICAgKiBjc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpE
ZXByZWNhdGVkU3R5bGVCdWlsZGVyOjpEZXByZWNhdGVkU3R5bGVCdWlsZGVyKToKKyAgICAgICAg
KiBjc3MvU3R5bGVSZXNvbHZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJlc29sdmVy
OjphcHBseVByb3BlcnR5KToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OmNoYW5nZVJlcXVpcmVzTGF5b3V0
KToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaDoKKyAgICAgICAgKiBy
ZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaDoKKyAgICAgICAgKiByZW5kZXJp
bmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhOjpTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhKToK
KyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGE6Om9wZXJhdG9yPT0p
OgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmg6
CisKIDIwMTQtMDQtMDEgIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgogCiAg
ICAgICAgIFVucmV2aWV3ZWQuIEZpeGluZyBkZWJ1ZyBidWlsZHMgYWZ0ZXIgcjE2NjU4Ni4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24u
Y3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAK
aW5kZXggZjBkZWI5NS4uYTYyMTU0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NT
U0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NT
U0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKQEAgLTM4NSwxMCArMzg1LDYgQEAgc3RhdGlj
IGNvbnN0IENTU1Byb3BlcnR5SUQgY29tcHV0ZWRQcm9wZXJ0aWVzW10gPSB7CiAgICAgQ1NTUHJv
cGVydHlXZWJraXRSZWdpb25CcmVha0luc2lkZSwKICAgICBDU1NQcm9wZXJ0eVdlYmtpdFJlZ2lv
bkZyYWdtZW50LAogI2VuZGlmCi0jaWYgRU5BQkxFKENTU19FWENMVVNJT05TKQotICAgIENTU1By
b3BlcnR5V2Via2l0V3JhcEZsb3csCi0gICAgQ1NTUHJvcGVydHlXZWJraXRXcmFwVGhyb3VnaCwK
LSNlbmRpZgogI2lmIEVOQUJMRShDU1NfU0hBUEVTKQogICAgIENTU1Byb3BlcnR5V2Via2l0U2hh
cGVNYXJnaW4sCiAgICAgQ1NTUHJvcGVydHlXZWJraXRTaGFwZUltYWdlVGhyZXNob2xkLApAQCAt
MjgwNiwxMiArMjgwMiw2IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVFeHRy
YWN0b3I6OnByb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0CiAgICAgICAgIGNhc2Ug
Q1NTUHJvcGVydHlXZWJraXRSZWdpb25GcmFnbWVudDoKICAgICAgICAgICAgIHJldHVybiBjc3NW
YWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShzdHlsZS0+cmVnaW9uRnJhZ21lbnQoKSk7CiAjZW5kaWYK
LSNpZiBFTkFCTEUoQ1NTX0VYQ0xVU0lPTlMpCi0gICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJr
aXRXcmFwRmxvdzoKLSAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1
ZShzdHlsZS0+d3JhcEZsb3coKSk7Ci0gICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRXcmFw
VGhyb3VnaDoKLSAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShz
dHlsZS0+d3JhcFRocm91Z2goKSk7Ci0jZW5kaWYKICNpZiBFTkFCTEUoQ1NTX1NIQVBFUykKICAg
ICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFNoYXBlTWFyZ2luOgogICAgICAgICAgICAgcmV0
dXJuIGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZVZhbHVlKHN0eWxlLT5zaGFwZU1hcmdpbigpKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1BhcnNlci5jcHAKaW5kZXggYmE0NDE0MC4uMWIzZWMyYSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1BhcnNlci5jcHAKQEAgLTEwMTcsMjAgKzEwMTcsNiBAQCBzdGF0aWMgaW5saW5lIGJvb2wg
aXNWYWxpZEtleXdvcmRQcm9wZXJ0eUFuZFZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydHlJZCwg
aW50CiAgICAgICAgIGlmICh2YWx1ZUlEID09IENTU1ZhbHVlQXV0byB8fCB2YWx1ZUlEID09IENT
U1ZhbHVlTm9uZSB8fCB2YWx1ZUlEID09IENTU1ZhbHVlVGV4dCB8fCB2YWx1ZUlEID09IENTU1Zh
bHVlQWxsKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIGJyZWFrOwotI2lmIEVO
QUJMRShDU1NfRVhDTFVTSU9OUykKLSAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0V3JhcEZsb3c6
Ci0gICAgICAgIGlmICghUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5j
c3NFeGNsdXNpb25zRW5hYmxlZCgpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAg
ICBpZiAodmFsdWVJRCA9PSBDU1NWYWx1ZUF1dG8gfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZUJvdGgg
fHwgdmFsdWVJRCA9PSBDU1NWYWx1ZVN0YXJ0IHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVFbmQgfHwg
dmFsdWVJRCA9PSBDU1NWYWx1ZU1heGltdW0gfHwgdmFsdWVJRCA9PSBDU1NWYWx1ZUNsZWFyKQot
ICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgQ1NTUHJv
cGVydHlXZWJraXRXcmFwVGhyb3VnaDoKLSAgICAgICAgaWYgKCFSdW50aW1lRW5hYmxlZEZlYXR1
cmVzOjpzaGFyZWRGZWF0dXJlcygpLmNzc0V4Y2x1c2lvbnNFbmFibGVkKCkpCi0gICAgICAgICAg
ICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIGlmICh2YWx1ZUlEID09IENTU1ZhbHVlV3JhcCB8fCB2
YWx1ZUlEID09IENTU1ZhbHVlTm9uZSkKLSAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAg
ICBicmVhazsKLSNlbmRpZgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRXcml0aW5nTW9kZToK
ICAgICAgICAgaWYgKHZhbHVlSUQgPj0gQ1NTVmFsdWVIb3Jpem9udGFsVGIgJiYgdmFsdWVJRCA8
PSBDU1NWYWx1ZUhvcml6b250YWxCdCkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwpAQCAtMTE2
MywxMCArMTE0OSw2IEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBpc0tleXdvcmRQcm9wZXJ0eUlEKENT
U1Byb3BlcnR5SUQgcHJvcGVydHlJZCkKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0VXNlckRy
YWc6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFVzZXJNb2RpZnk6CiAgICAgY2FzZSBDU1NQ
cm9wZXJ0eVdlYmtpdFVzZXJTZWxlY3Q6Ci0jaWYgRU5BQkxFKENTU19FWENMVVNJT05TKQotICAg
IGNhc2UgQ1NTUHJvcGVydHlXZWJraXRXcmFwRmxvdzoKLSAgICBjYXNlIENTU1Byb3BlcnR5V2Vi
a2l0V3JhcFRocm91Z2g6Ci0jZW5kaWYKICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0V3JpdGlu
Z01vZGU6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdoaXRlU3BhY2U6CiAgICAgY2FzZSBDU1NQcm9w
ZXJ0eVdvcmRCcmVhazoKQEAgLTMwMzgsMTAgKzMwMjAsNiBAQCBib29sIENTU1BhcnNlcjo6cGFy
c2VWYWx1ZShDU1NQcm9wZXJ0eUlEIHByb3BJZCwgYm9vbCBpbXBvcnRhbnQpCiAgICAgY2FzZSBD
U1NQcm9wZXJ0eVdlYmtpdFVzZXJEcmFnOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRVc2Vy
TW9kaWZ5OgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRVc2VyU2VsZWN0OgotI2lmIEVOQUJM
RShDU1NfRVhDTFVTSU9OUykKLSAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0V3JhcEZsb3c6Ci0g
ICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFdyYXBUaHJvdWdoOgotI2VuZGlmCiAgICAgY2FzZSBD
U1NQcm9wZXJ0eVdlYmtpdFdyaXRpbmdNb2RlOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXaGl0ZVNw
YWNlOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXb3JkQnJlYWs6CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaAppbmRleCBjYzE2MmM5Li5mNGNlMDMxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKQEAg
LTQ1ODEsODggKzQ1ODEsNiBAQCB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6
b3BlcmF0b3IgQ29sdW1uUHJvZ3Jlc3Npb24oKSBjb25zdAogICAgIHJldHVybiBOb3JtYWxDb2x1
bW5Qcm9ncmVzc2lvbjsKIH0KIAotdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6
OkNTU1ByaW1pdGl2ZVZhbHVlKFdyYXBGbG93IHdyYXBGbG93KQotICAgIDogQ1NTVmFsdWUoUHJp
bWl0aXZlQ2xhc3MpCi17Ci0gICAgbV9wcmltaXRpdmVVbml0VHlwZSA9IENTU19WQUxVRV9JRDsK
LSAgICBzd2l0Y2ggKHdyYXBGbG93KSB7Ci0gICAgY2FzZSBXcmFwRmxvd0F1dG86Ci0gICAgICAg
IG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlQXV0bzsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2Fz
ZSBXcmFwRmxvd0JvdGg6Ci0gICAgICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlQm90aDsK
LSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBXcmFwRmxvd1N0YXJ0OgotICAgICAgICBtX3ZhbHVl
LnZhbHVlSUQgPSBDU1NWYWx1ZVN0YXJ0OwotICAgICAgICBicmVhazsKLSAgICBjYXNlIFdyYXBG
bG93RW5kOgotICAgICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZUVuZDsKLSAgICAgICAg
YnJlYWs7Ci0gICAgY2FzZSBXcmFwRmxvd01heGltdW06Ci0gICAgICAgIG1fdmFsdWUudmFsdWVJ
RCA9IENTU1ZhbHVlTWF4aW11bTsKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBXcmFwRmxvd0Ns
ZWFyOgotICAgICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZUNsZWFyOwotICAgICAgICBi
cmVhazsKLSAgICB9Ci19Ci0KLXRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpv
cGVyYXRvciBXcmFwRmxvdygpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKGlzVmFsdWVJRCgpKTsKLQot
ICAgIHN3aXRjaCAobV92YWx1ZS52YWx1ZUlEKSB7Ci0gICAgY2FzZSBDU1NWYWx1ZUF1dG86Ci0g
ICAgICAgIHJldHVybiBXcmFwRmxvd0F1dG87Ci0gICAgY2FzZSBDU1NWYWx1ZUJvdGg6Ci0gICAg
ICAgIHJldHVybiBXcmFwRmxvd0JvdGg7Ci0gICAgY2FzZSBDU1NWYWx1ZVN0YXJ0OgotICAgICAg
ICByZXR1cm4gV3JhcEZsb3dTdGFydDsKLSAgICBjYXNlIENTU1ZhbHVlRW5kOgotICAgICAgICBy
ZXR1cm4gV3JhcEZsb3dFbmQ7Ci0gICAgY2FzZSBDU1NWYWx1ZU1heGltdW06Ci0gICAgICAgIHJl
dHVybiBXcmFwRmxvd01heGltdW07Ci0gICAgY2FzZSBDU1NWYWx1ZUNsZWFyOgotICAgICAgICBy
ZXR1cm4gV3JhcEZsb3dDbGVhcjsKLSAgICBkZWZhdWx0OgotICAgICAgICBicmVhazsKLSAgICB9
Ci0KLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICByZXR1cm4gV3JhcEZsb3dBdXRvOwot
fQotCi10ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFs
dWUoV3JhcFRocm91Z2ggd3JhcFRocm91Z2gpCi0gICAgOiBDU1NWYWx1ZShQcmltaXRpdmVDbGFz
cykKLXsKLSAgICBtX3ByaW1pdGl2ZVVuaXRUeXBlID0gQ1NTX1ZBTFVFX0lEOwotICAgIHN3aXRj
aCAod3JhcFRocm91Z2gpIHsKLSAgICBjYXNlIFdyYXBUaHJvdWdoV3JhcDoKLSAgICAgICAgbV92
YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVXcmFwOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIFdy
YXBUaHJvdWdoTm9uZToKLSAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVOb25lOwot
ICAgICAgICBicmVhazsKLSAgICB9Ci19Ci0KLXRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2
ZVZhbHVlOjpvcGVyYXRvciBXcmFwVGhyb3VnaCgpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKGlzVmFs
dWVJRCgpKTsKLQotICAgIHN3aXRjaCAobV92YWx1ZS52YWx1ZUlEKSB7Ci0gICAgY2FzZSBDU1NW
YWx1ZVdyYXA6Ci0gICAgICAgIHJldHVybiBXcmFwVGhyb3VnaFdyYXA7Ci0gICAgY2FzZSBDU1NW
YWx1ZU5vbmU6Ci0gICAgICAgIHJldHVybiBXcmFwVGhyb3VnaE5vbmU7Ci0gICAgZGVmYXVsdDoK
LSAgICAgICAgYnJlYWs7Ci0gICAgfQotCi0gICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAg
cmV0dXJuIFdyYXBUaHJvdWdoV3JhcDsKLX0KLQogI2lmIEVOQUJMRShDU1NfR1JJRF9MQVlPVVQp
CiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgR3JpZEF1dG9G
bG93KCkgY29uc3QKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0
eU5hbWVzLmluIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4KaW5kZXgg
NjRkNzU0MC4uNTgzMDI0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3Bl
cnR5TmFtZXMuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4K
QEAgLTQ0MCwxMCArNDQwLDYgQEAgdGV4dC1lbXBoYXNpcy1zdHlsZSA9IC13ZWJraXQtdGV4dC1l
bXBoYXNpcy1zdHlsZQogLXdlYmtpdC1zaGFwZS1tYXJnaW4KIC13ZWJraXQtc2hhcGUtaW1hZ2Ut
dGhyZXNob2xkCiAjZW5kaWYKLSNpZiBkZWZpbmVkKEVOQUJMRV9DU1NfRVhDTFVTSU9OUykgJiYg
RU5BQkxFX0NTU19FWENMVVNJT05TCi0td2Via2l0LXdyYXAtZmxvdwotLXdlYmtpdC13cmFwLXRo
cm91Z2gKLSNlbmRpZgogI2lmIGRlZmluZWQoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTikg
JiYgRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTgogbWF4LXpvb20KIG1pbi16b29tCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVLZXl3b3Jkcy5pbiBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCmluZGV4IDkyYjVhNDguLjVlYzc3N2MgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCkBAIC05ODIsMTcgKzk4Miw3IEBA
IGF0CiAvLyBhdXRvCiBicmVhawogCi0vLyAtd2Via2l0LXdyYXAtZmxvdwotLy8gYXV0bwotLy8g
Ym90aAotLy8gbGVmdAotLy8gcmlnaHQKLW1heGltdW0KLS8vIGNsZWFyCi0KLS8vIC13ZWJraXQt
d3JhcC10aHJvdWdoCiB3cmFwCi0vLyBub25lCiAKIC8vIC13ZWJraXQtbGluZS1hbGlnbgogZWRn
ZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkU3R5bGVCdWlsZGVy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkU3R5bGVCdWlsZGVyLmNwcAppbmRl
eCA0OTcwNzFmLi45YmVhYjUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVj
YXRlZFN0eWxlQnVpbGRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRT
dHlsZUJ1aWxkZXIuY3BwCkBAIC0yNjA5LDExICsyNjA5LDYgQEAgRGVwcmVjYXRlZFN0eWxlQnVp
bGRlcjo6RGVwcmVjYXRlZFN0eWxlQnVpbGRlcigpCiAgICAgc2V0UHJvcGVydHlIYW5kbGVyKENT
U1Byb3BlcnR5V2Via2l0VXNlck1vZGlmeSwgQXBwbHlQcm9wZXJ0eURlZmF1bHQ8RVVzZXJNb2Rp
ZnksICZSZW5kZXJTdHlsZTo6dXNlck1vZGlmeSwgRVVzZXJNb2RpZnksICZSZW5kZXJTdHlsZTo6
c2V0VXNlck1vZGlmeSwgRVVzZXJNb2RpZnksICZSZW5kZXJTdHlsZTo6aW5pdGlhbFVzZXJNb2Rp
Znk+OjpjcmVhdGVIYW5kbGVyKCkpOwogICAgIHNldFByb3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0
eVdlYmtpdFVzZXJTZWxlY3QsIEFwcGx5UHJvcGVydHlEZWZhdWx0PEVVc2VyU2VsZWN0LCAmUmVu
ZGVyU3R5bGU6OnVzZXJTZWxlY3QsIEVVc2VyU2VsZWN0LCAmUmVuZGVyU3R5bGU6OnNldFVzZXJT
ZWxlY3QsIEVVc2VyU2VsZWN0LCAmUmVuZGVyU3R5bGU6OmluaXRpYWxVc2VyU2VsZWN0Pjo6Y3Jl
YXRlSGFuZGxlcigpKTsKICAgICBzZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlXZWJraXRD
bGlwUGF0aCwgQXBwbHlQcm9wZXJ0eUNsaXBQYXRoPCZSZW5kZXJTdHlsZTo6Y2xpcFBhdGgsICZS
ZW5kZXJTdHlsZTo6c2V0Q2xpcFBhdGgsICZSZW5kZXJTdHlsZTo6aW5pdGlhbENsaXBQYXRoPjo6
Y3JlYXRlSGFuZGxlcigpKTsKLQotI2lmIEVOQUJMRShDU1NfRVhDTFVTSU9OUykKLSAgICBzZXRQ
cm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlXZWJraXRXcmFwRmxvdywgQXBwbHlQcm9wZXJ0eURl
ZmF1bHQ8V3JhcEZsb3csICZSZW5kZXJTdHlsZTo6d3JhcEZsb3csIFdyYXBGbG93LCAmUmVuZGVy
U3R5bGU6OnNldFdyYXBGbG93LCBXcmFwRmxvdywgJlJlbmRlclN0eWxlOjppbml0aWFsV3JhcEZs
b3c+OjpjcmVhdGVIYW5kbGVyKCkpOwotICAgIHNldFByb3BlcnR5SGFuZGxlcihDU1NQcm9wZXJ0
eVdlYmtpdFdyYXBUaHJvdWdoLCBBcHBseVByb3BlcnR5RGVmYXVsdDxXcmFwVGhyb3VnaCwgJlJl
bmRlclN0eWxlOjp3cmFwVGhyb3VnaCwgV3JhcFRocm91Z2gsICZSZW5kZXJTdHlsZTo6c2V0V3Jh
cFRocm91Z2gsIFdyYXBUaHJvdWdoLCAmUmVuZGVyU3R5bGU6OmluaXRpYWxXcmFwVGhyb3VnaD46
OmNyZWF0ZUhhbmRsZXIoKSk7Ci0jZW5kaWYKICNpZiBFTkFCTEUoQ1NTX1NIQVBFUykKICAgICBz
ZXRQcm9wZXJ0eUhhbmRsZXIoQ1NTUHJvcGVydHlXZWJraXRTaGFwZU1hcmdpbiwgQXBwbHlQcm9w
ZXJ0eUxlbmd0aDwmUmVuZGVyU3R5bGU6OnNoYXBlTWFyZ2luLCAmUmVuZGVyU3R5bGU6OnNldFNo
YXBlTWFyZ2luLCAmUmVuZGVyU3R5bGU6OmluaXRpYWxTaGFwZU1hcmdpbj46OmNyZWF0ZUhhbmRs
ZXIoKSk7CiAgICAgc2V0UHJvcGVydHlIYW5kbGVyKENTU1Byb3BlcnR5V2Via2l0U2hhcGVJbWFn
ZVRocmVzaG9sZCwgQXBwbHlQcm9wZXJ0eURlZmF1bHQ8ZmxvYXQsICZSZW5kZXJTdHlsZTo6c2hh
cGVJbWFnZVRocmVzaG9sZCwgZmxvYXQsICZSZW5kZXJTdHlsZTo6c2V0U2hhcGVJbWFnZVRocmVz
aG9sZCwgZmxvYXQsICZSZW5kZXJTdHlsZTo6aW5pdGlhbFNoYXBlSW1hZ2VUaHJlc2hvbGQ+Ojpj
cmVhdGVIYW5kbGVyKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVz
b2x2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCmluZGV4IGZh
NjllYjEuLjY5YzYxZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29s
dmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKQEAgLTMw
MDIsMTAgKzMwMDIsNiBAQCB2b2lkIFN0eWxlUmVzb2x2ZXI6OmFwcGx5UHJvcGVydHkoQ1NTUHJv
cGVydHlJRCBpZCwgQ1NTVmFsdWUqIHZhbHVlKQogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRT
aGFwZUltYWdlVGhyZXNob2xkOgogICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRTaGFwZU91dHNp
ZGU6CiAjZW5kaWYKLSNpZiBFTkFCTEUoQ1NTX0VYQ0xVU0lPTlMpCi0gICAgY2FzZSBDU1NQcm9w
ZXJ0eVdlYmtpdFdyYXBGbG93OgotICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRXcmFwVGhyb3Vn
aDoKLSNlbmRpZgogICAgIGNhc2UgQ1NTUHJvcGVydHlXaGl0ZVNwYWNlOgogICAgIGNhc2UgQ1NT
UHJvcGVydHlXaWRvd3M6CiAgICAgY2FzZSBDU1NQcm9wZXJ0eVdpZHRoOgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAKaW5kZXggNjRjNWM2ZC4uNGNk
OGQ4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0
eWxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUu
Y3BwCkBAIC00MTUsMTAgKzQxNSw2IEBAIGJvb2wgUmVuZGVyU3R5bGU6OmNoYW5nZVJlcXVpcmVz
TGF5b3V0KGNvbnN0IFJlbmRlclN0eWxlKiBvdGhlciwgdW5zaWduZWQmIGNoYW5nCiAgICAgICAg
IGlmIChyYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9yZWdpb25GcmFnbWVudCAhPSBvdGhlci0+cmFy
ZU5vbkluaGVyaXRlZERhdGEtPm1fcmVnaW9uRnJhZ21lbnQpCiAgICAgICAgICAgICByZXR1cm4g
dHJ1ZTsKIAotICAgICAgICBpZiAocmFyZU5vbkluaGVyaXRlZERhdGEtPm1fd3JhcEZsb3cgIT0g
b3RoZXItPnJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3dyYXBGbG93Ci0gICAgICAgICAgICB8fCBy
YXJlTm9uSW5oZXJpdGVkRGF0YS0+bV93cmFwVGhyb3VnaCAhPSBvdGhlci0+cmFyZU5vbkluaGVy
aXRlZERhdGEtPm1fd3JhcFRocm91Z2gpCi0gICAgICAgICAgICByZXR1cm4gdHJ1ZTsKLQogI2lm
IEVOQUJMRShDU1NfU0hBUEVTKQogICAgICAgICBpZiAocmFyZU5vbkluaGVyaXRlZERhdGEtPm1f
c2hhcGVNYXJnaW4gIT0gb3RoZXItPnJhcmVOb25Jbmhlcml0ZWREYXRhLT5tX3NoYXBlTWFyZ2lu
KQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9SZW5kZXJTdHlsZS5oCmluZGV4IDgyMTdmM2YuLjA1MTVjYzUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCkBAIC0xMDMxLDkgKzEwMzEsNiBA
QCBwdWJsaWM6CiAgICAgTGluZVNuYXAgbGluZVNuYXAoKSBjb25zdCB7IHJldHVybiBzdGF0aWNf
Y2FzdDxMaW5lU25hcD4ocmFyZUluaGVyaXRlZERhdGEtPm1fbGluZVNuYXApOyB9CiAgICAgTGlu
ZUFsaWduIGxpbmVBbGlnbigpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PExpbmVBbGlnbj4o
cmFyZUluaGVyaXRlZERhdGEtPm1fbGluZUFsaWduKTsgfQogCi0gICAgV3JhcEZsb3cgd3JhcEZs
b3coKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxXcmFwRmxvdz4ocmFyZU5vbkluaGVyaXRl
ZERhdGEtPm1fd3JhcEZsb3cpOyB9Ci0gICAgV3JhcFRocm91Z2ggd3JhcFRocm91Z2goKSBjb25z
dCB7IHJldHVybiBzdGF0aWNfY2FzdDxXcmFwVGhyb3VnaD4ocmFyZU5vbkluaGVyaXRlZERhdGEt
Pm1fd3JhcFRocm91Z2gpOyB9Ci0KICAgICAvLyBBcHBsZS1zcGVjaWZpYyBwcm9wZXJ0eSBnZXR0
ZXIgbWV0aG9kcwogICAgIEVQb2ludGVyRXZlbnRzIHBvaW50ZXJFdmVudHMoKSBjb25zdCB7IHJl
dHVybiBzdGF0aWNfY2FzdDxFUG9pbnRlckV2ZW50cz4oaW5oZXJpdGVkX2ZsYWdzLl9wb2ludGVy
RXZlbnRzKTsgfQogICAgIGNvbnN0IEFuaW1hdGlvbkxpc3QqIGFuaW1hdGlvbnMoKSBjb25zdCB7
IHJldHVybiByYXJlTm9uSW5oZXJpdGVkRGF0YS0+bV9hbmltYXRpb25zLmdldCgpOyB9CkBAIC0x
NTQ3LDkgKzE1NDQsNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRSZWdpb25UaHJlYWQoY29uc3Qg
QXRvbWljU3RyaW5nJiByZWdpb25UaHJlYWQpIHsgU0VUX1ZBUihyYXJlTm9uSW5oZXJpdGVkRGF0
YSwgbV9yZWdpb25UaHJlYWQsIHJlZ2lvblRocmVhZCk7IH0KICAgICB2b2lkIHNldFJlZ2lvbkZy
YWdtZW50KFJlZ2lvbkZyYWdtZW50IHJlZ2lvbkZyYWdtZW50KSB7IFNFVF9WQVIocmFyZU5vbklu
aGVyaXRlZERhdGEsIG1fcmVnaW9uRnJhZ21lbnQsIHJlZ2lvbkZyYWdtZW50KTsgfQogCi0gICAg
dm9pZCBzZXRXcmFwRmxvdyhXcmFwRmxvdyB3cmFwRmxvdykgeyBTRVRfVkFSKHJhcmVOb25Jbmhl
cml0ZWREYXRhLCBtX3dyYXBGbG93LCB3cmFwRmxvdyk7IH0KLSAgICB2b2lkIHNldFdyYXBUaHJv
dWdoKFdyYXBUaHJvdWdoIHdyYXBUaHJvdWdoKSB7IFNFVF9WQVIocmFyZU5vbkluaGVyaXRlZERh
dGEsIG1fd3JhcFRocm91Z2gsIHdyYXBUaHJvdWdoKTsgfQotCiAgICAgLy8gQXBwbGUtc3BlY2lm
aWMgcHJvcGVydHkgc2V0dGVycwogICAgIHZvaWQgc2V0UG9pbnRlckV2ZW50cyhFUG9pbnRlckV2
ZW50cyBwKSB7IGluaGVyaXRlZF9mbGFncy5fcG9pbnRlckV2ZW50cyA9IHA7IH0KIApAQCAtMTkx
Myw5ICsxOTA3LDYgQEAgcHVibGljOgogICAgIHN0YXRpYyBjb25zdCBBdG9taWNTdHJpbmcmIGlu
aXRpYWxSZWdpb25UaHJlYWQoKSB7IHJldHVybiBudWxsQXRvbTsgfQogICAgIHN0YXRpYyBSZWdp
b25GcmFnbWVudCBpbml0aWFsUmVnaW9uRnJhZ21lbnQoKSB7IHJldHVybiBBdXRvUmVnaW9uRnJh
Z21lbnQ7IH0KIAotICAgIHN0YXRpYyBXcmFwRmxvdyBpbml0aWFsV3JhcEZsb3coKSB7IHJldHVy
biBXcmFwRmxvd0F1dG87IH0KLSAgICBzdGF0aWMgV3JhcFRocm91Z2ggaW5pdGlhbFdyYXBUaHJv
dWdoKCkgeyByZXR1cm4gV3JhcFRocm91Z2hXcmFwOyB9Ci0KICAgICAvLyBLZWVwIHRoZXNlIGF0
IHRoZSBlbmQuCiAgICAgc3RhdGljIExpbmVDbGFtcFZhbHVlIGluaXRpYWxMaW5lQ2xhbXAoKSB7
IHJldHVybiBMaW5lQ2xhbXBWYWx1ZSgpOyB9CiAgICAgc3RhdGljIEVUZXh0U2VjdXJpdHkgaW5p
dGlhbFRleHRTZWN1cml0eSgpIHsgcmV0dXJuIFRTTk9ORTsgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmggYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaAppbmRleCAzZTJl
NjYxLi5hOGIyMzE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUv
UmVuZGVyU3R5bGVDb25zdGFudHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5
bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaApAQCAtNTM1LDEwICs1MzUsNiBAQCBlbnVtIExpbmVT
bmFwIHsgTGluZVNuYXBOb25lLCBMaW5lU25hcEJhc2VsaW5lLCBMaW5lU25hcENvbnRhaW4gfTsK
IAogZW51bSBMaW5lQWxpZ24geyBMaW5lQWxpZ25Ob25lLCBMaW5lQWxpZ25FZGdlcyB9OwogCi1l
bnVtIFdyYXBGbG93IHsgV3JhcEZsb3dBdXRvLCBXcmFwRmxvd0JvdGgsIFdyYXBGbG93U3RhcnQs
IFdyYXBGbG93RW5kLCBXcmFwRmxvd01heGltdW0sIFdyYXBGbG93Q2xlYXIgfTsKLQotZW51bSBX
cmFwVGhyb3VnaCB7IFdyYXBUaHJvdWdoV3JhcCwgV3JhcFRocm91Z2hOb25lIH07Ci0KIGVudW0g
UnVieVBvc2l0aW9uIHsgUnVieVBvc2l0aW9uQmVmb3JlLCBSdWJ5UG9zaXRpb25BZnRlciB9Owog
CiAjaWYgRU5BQkxFKENTU19HUklEX0xBWU9VVCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhLmNwcAppbmRl
eCA4MGE3Y2FlLi4zMWE0Mzk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZU5vbkluaGVyaXRlZERhdGEuY3BwCkBAIC04NCw4ICs4
NCw2IEBAIFN0eWxlUmFyZU5vbkluaGVyaXRlZERhdGE6OlN0eWxlUmFyZU5vbkluaGVyaXRlZERh
dGEoKQogICAgICwgbV9ib3JkZXJGaXQoUmVuZGVyU3R5bGU6OmluaXRpYWxCb3JkZXJGaXQoKSkK
ICAgICAsIG1fdGV4dENvbWJpbmUoUmVuZGVyU3R5bGU6OmluaXRpYWxUZXh0Q29tYmluZSgpKQog
ICAgICwgbV90ZXh0RGVjb3JhdGlvblN0eWxlKFJlbmRlclN0eWxlOjppbml0aWFsVGV4dERlY29y
YXRpb25TdHlsZSgpKQotICAgICwgbV93cmFwRmxvdyhSZW5kZXJTdHlsZTo6aW5pdGlhbFdyYXBG
bG93KCkpCi0gICAgLCBtX3dyYXBUaHJvdWdoKFJlbmRlclN0eWxlOjppbml0aWFsV3JhcFRocm91
Z2goKSkKICAgICAsIG1fcnVubmluZ0FjY2VsZXJhdGVkQW5pbWF0aW9uKGZhbHNlKQogICAgICwg
bV9hc3BlY3RSYXRpb1R5cGUoUmVuZGVyU3R5bGU6OmluaXRpYWxBc3BlY3RSYXRpb1R5cGUoKSkK
ICNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQpAQCAtMTYzLDggKzE2MSw2IEBAIGlubGluZSBT
dHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhOjpTdHlsZVJhcmVOb25Jbmhlcml0ZWREYXRhKGNvbnN0
IFN0eWxlUmFyZU5vbkluCiAgICAgLCBtX2JvcmRlckZpdChvLm1fYm9yZGVyRml0KQogICAgICwg
bV90ZXh0Q29tYmluZShvLm1fdGV4dENvbWJpbmUpCiAgICAgLCBtX3RleHREZWNvcmF0aW9uU3R5
bGUoby5tX3RleHREZWNvcmF0aW9uU3R5bGUpCi0gICAgLCBtX3dyYXBGbG93KG8ubV93cmFwRmxv
dykKLSAgICAsIG1fd3JhcFRocm91Z2goby5tX3dyYXBUaHJvdWdoKQogICAgICwgbV9ydW5uaW5n
QWNjZWxlcmF0ZWRBbmltYXRpb24oby5tX3J1bm5pbmdBY2NlbGVyYXRlZEFuaW1hdGlvbikKICAg
ICAsIG1fYXNwZWN0UmF0aW9UeXBlKG8ubV9hc3BlY3RSYXRpb1R5cGUpCiAjaWYgRU5BQkxFKENT
U19DT01QT1NJVElORykKQEAgLTI1Myw4ICsyNDksNiBAQCBib29sIFN0eWxlUmFyZU5vbkluaGVy
aXRlZERhdGE6Om9wZXJhdG9yPT0oY29uc3QgU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YSYgbykg
YwogICAgICAgICAmJiBtX2JvcmRlckZpdCA9PSBvLm1fYm9yZGVyRml0CiAgICAgICAgICYmIG1f
dGV4dENvbWJpbmUgPT0gby5tX3RleHRDb21iaW5lCiAgICAgICAgICYmIG1fdGV4dERlY29yYXRp
b25TdHlsZSA9PSBvLm1fdGV4dERlY29yYXRpb25TdHlsZQotICAgICAgICAmJiBtX3dyYXBGbG93
ID09IG8ubV93cmFwRmxvdwotICAgICAgICAmJiBtX3dyYXBUaHJvdWdoID09IG8ubV93cmFwVGhy
b3VnaAogICAgICAgICAmJiAhbV9ydW5uaW5nQWNjZWxlcmF0ZWRBbmltYXRpb24gJiYgIW8ubV9y
dW5uaW5nQWNjZWxlcmF0ZWRBbmltYXRpb24KICNpZiBFTkFCTEUoQ1NTX0NPTVBPU0lUSU5HKQog
ICAgICAgICAmJiBtX2VmZmVjdGl2ZUJsZW5kTW9kZSA9PSBvLm1fZWZmZWN0aXZlQmxlbmRNb2Rl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9u
SW5oZXJpdGVkRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFy
ZU5vbkluaGVyaXRlZERhdGEuaAppbmRleCAxMzRiNzA1Li5jNDBjNjA0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlTm9uSW5oZXJpdGVkRGF0YS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVOb25Jbmhlcml0
ZWREYXRhLmgKQEAgLTE4NSw4ICsxODUsNiBAQCBwdWJsaWM6CiAgICAgdW5zaWduZWQgbV90ZXh0
Q29tYmluZSA6IDE7IC8vIENTUzMgdGV4dC1jb21iaW5lIHByb3BlcnRpZXMKIAogICAgIHVuc2ln
bmVkIG1fdGV4dERlY29yYXRpb25TdHlsZSA6IDM7IC8vIFRleHREZWNvcmF0aW9uU3R5bGUKLSAg
ICB1bnNpZ25lZCBtX3dyYXBGbG93OiAzOyAvLyBXcmFwRmxvdwotICAgIHVuc2lnbmVkIG1fd3Jh
cFRocm91Z2g6IDE7IC8vIFdyYXBUaHJvdWdoCiAKICAgICB1bnNpZ25lZCBtX3J1bm5pbmdBY2Nl
bGVyYXRlZEFuaW1hdGlvbiA6IDE7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJJbnNwZWN0b3JV
SS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9nCmluZGV4IDFkNmMw
MGIuLjQ5ZDRlOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisy
MDE0LTA0LTAxICBab2x0YW4gSG9ydmF0aCAgPHpvbHRhbkB3ZWJraXQub3JnPgorCisgICAgICAg
IFtDU1MgRXhjbHVzaW9uc10gUmVtb3ZlIGV4Y2x1c2lvbnMgcGFyc2luZyBzdXBwb3J0CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzEwNDYKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVzZXJJbnRlcmZh
Y2UvTW9kZWxzL0NTU0tleXdvcmRDb21wbGV0aW9ucy5qczoKKwogMjAxNC0wMy0yOCAgSmFtZXMg
Q3JhaWcgIDxqY3JhaWdAYXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IEFYSTog
c3VwcG9ydCBmb3IgbGl2ZSByZWdpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVXNlckludGVyZmFjZS9Nb2RlbHMvQ1NTS2V5d29yZENvbXBsZXRpb25zLmpzIGIvU291cmNl
L1dlYkluc3BlY3RvclVJL1VzZXJJbnRlcmZhY2UvTW9kZWxzL0NTU0tleXdvcmRDb21wbGV0aW9u
cy5qcwppbmRleCBjOTg2OGNiLi5iNWYyOGEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViSW5zcGVj
dG9yVUkvVXNlckludGVyZmFjZS9Nb2RlbHMvQ1NTS2V5d29yZENvbXBsZXRpb25zLmpzCisrKyBi
L1NvdXJjZS9XZWJJbnNwZWN0b3JVSS9Vc2VySW50ZXJmYWNlL01vZGVscy9DU1NLZXl3b3JkQ29t
cGxldGlvbnMuanMKQEAgLTc2NiwxMiArNzY2LDYgQEAgV2ViSW5zcGVjdG9yLkNTU0tleXdvcmRD
b21wbGV0aW9ucy5fcHJvcGVydHlLZXl3b3JkTWFwID0gewogICAgICItd2Via2l0LXJlZ2lvbi1v
dmVyZmxvdyI6IFsKICAgICAgICAgImF1dG8iLCAiYnJlYWsiCiAgICAgXSwKLSAgICAiLXdlYmtp
dC13cmFwLWZsb3ciOiBbCi0gICAgICAgICJhdXRvIiwgImJvdGgiLCAic3RhcnQiLCAiZW5kIiwg
Im1heGltdW0iLCAiY2xlYXIiCi0gICAgXSwKLSAgICAiLXdlYmtpdC13cmFwLXRocm91Z2giOiBb
Ci0gICAgICAgICJ3cmFwIiwgIm5vbmUiCi0gICAgXSwKICAgICAiLXdlYmtpdC1iYWNrZmFjZS12
aXNpYmlsaXR5IjogWwogICAgICAgICAidmlzaWJsZSIsICJoaWRkZW4iCiAgICAgXSwKZGlmZiAt
LWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBhYmQwMDMwLi43
OTI0MzFhIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTIgQEAKKzIwMTQtMDQtMDEgIFpvbHRhbiBIb3J2YXRoICA8em9sdGFuQHdl
YmtpdC5vcmc+CisKKyAgICAgICAgW0NTUyBFeGNsdXNpb25zXSBSZW1vdmUgZXhjbHVzaW9ucyBw
YXJzaW5nIHN1cHBvcnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEzMTA0NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogU2NyaXB0cy93ZWJraXRwZXJsL0ZlYXR1cmVMaXN0LnBtOgorCiAyMDE0LTA0LTAx
ICBNYXJ0aW4gUm9iaW5zb24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RL
XSBObyBsb25nZXIgYnVpbGQgV2ViS2l0MSBndGtkb2MKZGlmZiAtLWdpdCBhL1Rvb2xzL1Njcmlw
dHMvd2Via2l0cGVybC9GZWF0dXJlTGlzdC5wbSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cGVybC9G
ZWF0dXJlTGlzdC5wbQppbmRleCA3ZGNmNzRkLi40Nzg0MDc4IDEwMDY0NAotLS0gYS9Ub29scy9T
Y3JpcHRzL3dlYmtpdHBlcmwvRmVhdHVyZUxpc3QucG0KKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJr
aXRwZXJsL0ZlYXR1cmVMaXN0LnBtCkBAIC01Niw3ICs1Niw2IEBAIG15ICgKICAgICAkY3NzNElt
YWdlc1N1cHBvcnQsCiAgICAgJGNzc0JveERlY29yYXRpb25CcmVha1N1cHBvcnQsCiAgICAgJGNz
c0RldmljZUFkYXB0YXRpb24sCi0gICAgJGNzc0V4Y2x1c2lvbnNTdXBwb3J0LAogICAgICRjc3NG
aWx0ZXJzU3VwcG9ydCwKICAgICAkY3NzR3JpZExheW91dFN1cHBvcnQsCiAgICAgJGNzc0ltYWdl
T3JpZW50YXRpb25TdXBwb3J0LApAQCAtMTgzLDkgKzE4Miw2IEBAIG15IEBmZWF0dXJlcyA9ICgK
ICAgICB7IG9wdGlvbiA9PiAiY3NzLWRldmljZS1hZGFwdGF0aW9uIiwgZGVzYyA9PiAiVG9nZ2xl
IENTUyBEZXZpY2UgQWRhcHRhdGlvbiBzdXBwb3J0IiwKICAgICAgIGRlZmluZSA9PiAiRU5BQkxF
X0NTU19ERVZJQ0VfQURBUFRBVElPTiIsIGRlZmF1bHQgPT4gaXNFZmwoKSwgdmFsdWUgPT4gXCRj
c3NEZXZpY2VBZGFwdGF0aW9uIH0sCiAKLSAgICB7IG9wdGlvbiA9PiAiY3NzLWV4Y2x1c2lvbnMi
LCBkZXNjID0+ICJUb2dnbGUgQ1NTIEV4Y2x1c2lvbnMgc3VwcG9ydCIsCi0gICAgICBkZWZpbmUg
PT4gIkVOQUJMRV9DU1NfRVhDTFVTSU9OUyIsIGRlZmF1bHQgPT4gMSwgdmFsdWUgPT4gXCRjc3NF
eGNsdXNpb25zU3VwcG9ydCB9LAotCiAgICAgeyBvcHRpb24gPT4gImNzcy1zaGFwZXMiLCBkZXNj
ID0+ICJUb2dnbGUgQ1NTIFNoYXBlcyBzdXBwb3J0IiwKICAgICAgIGRlZmluZSA9PiAiRU5BQkxF
X0NTU19TSEFQRVMiLCBkZWZhdWx0ID0+IDEsIHZhbHVlID0+IFwkY3NzU2hhcGVzU3VwcG9ydCB9
LAogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>