<?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>248448</bug_id>
          
          <creation_ts>2022-11-28 17:21:52 -0800</creation_ts>
          <short_desc>[leading-trim] Add support for parsing &quot;text-edge&quot; CSS property</short_desc>
          <delta_ts>2023-01-13 09:28:12 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>248612</dependson>
          <blocked>245599</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>annulen</cc>
    
    <cc>bfulgham</cc>
    
    <cc>changseok</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>joepeck</cc>
    
    <cc>koivisto</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>obrufau</cc>
    
    <cc>pdr</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1915176</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2022-11-28 17:21:52 -0800</bug_when>
    <thetext>ssia</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1915182</commentid>
    <comment_count>1</comment_count>
      <attachid>463775</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-11-28 17:38:37 -0800</bug_when>
    <thetext>Created attachment 463775
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1915194</commentid>
    <comment_count>2</comment_count>
      <attachid>463776</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-11-28 18:19:39 -0800</bug_when>
    <thetext>Created attachment 463776
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1915218</commentid>
    <comment_count>3</comment_count>
      <attachid>463778</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-11-28 20:52:56 -0800</bug_when>
    <thetext>Created attachment 463778
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1915365</commentid>
    <comment_count>4</comment_count>
      <attachid>463790</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-11-29 11:00:24 -0800</bug_when>
    <thetext>Created attachment 463790
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1915675</commentid>
    <comment_count>5</comment_count>
      <attachid>463812</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-11-30 12:37:56 -0800</bug_when>
    <thetext>Created attachment 463812
[fast-cq]Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1915911</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-12-01 06:12:19 -0800</bug_when>
    <thetext>Committed 257233@main (5cecbfbd8605): &lt;https://commits.webkit.org/257233@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 463812.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1915912</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-12-01 06:13:18 -0800</bug_when>
    <thetext>&lt;rdar://problem/102858086&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1915980</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2022-12-01 09:58:16 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 248612</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1916061</commentid>
    <comment_count>9</comment_count>
      <attachid>463843</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-12-01 14:08:04 -0800</bug_when>
    <thetext>Created attachment 463843
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1916308</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-12-02 12:40:24 -0800</bug_when>
    <thetext>Committed 257306@main (271f21cba431): &lt;https://commits.webkit.org/257306@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 463843.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1916410</commentid>
    <comment_count>11</comment_count>
    <who name="Oriol Brufau">obrufau</who>
    <bug_when>2022-12-02 21:35:42 -0800</bug_when>
    <thetext>cssom-getPropertyValue-common-checks.html was rightly complaining that getComputedStyle().textEdge returns &quot;leading leading&quot;, which is not accepted by the parser.

Instead of adding this to the list of existing failures, it would have been better to fix the parser or the serialization.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>463775</attachid>
            <date>2022-11-28 17:38:37 -0800</date>
            <delta_ts>2022-11-28 18:45:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-248448-20221128173836.patch</filename>
            <type>text/plain</type>
            <size>25544</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSAxNzkxYTU5ZTNlMjBmNmNlZDI5NTAxODQyYmYwYTRiMzJlZDQ5ZmNhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IE1vbiwgMjggTm92IDIwMjIgMTc6MzM6MjIgLTA4MDAKU3ViamVjdDogW1BBVENIXSBbbGVhZGlu
Zy10cmltXSBBZGQgc3VwcG9ydCBmb3IgcGFyc2luZyAidGV4dC1lZGdlIiBDU1MKIHByb3BlcnR5
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNDg0NDgKClJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgoKV0lQLgoKKiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2o6CiogU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZh
bHVlTWFwcGluZ3MuaDoKKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVW
YWx1ZSk6CihXZWJDb3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgVGV4dEVkZ2UgY29u
c3QpOgoqIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb246CiogU291cmNlL1dl
YkNvcmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW46CiogU291cmNlL1dlYkNvcmUvY3NzL0NvbXB1
dGVkU3R5bGVFeHRyYWN0b3IuY3BwOgooV2ViQ29yZTo6dmFsdWVGb3JUZXh0RWRnZSk6CihXZWJD
b3JlOjpDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvclByb3BlcnR5SW5TdHlsZSk6Ciog
U291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuY3BwOgoo
V2ViQ29yZTo6Q1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzOjpjb25zdW1lVGV4dEVkZ2UpOgoqIFNv
dXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmg6CiogU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcDoKKFdlYkNvcmU6OlJl
bmRlclN0eWxlOjp0ZXh0RWRnZSBjb25zdCk6CihXZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0VGV4
dEVkZ2UpOgooV2ViQ29yZTo6UmVuZGVyU3R5bGU6OmluaXRpYWxUZXh0RWRnZSk6CiogU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmg6CiogU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcDoKKFdlYkNvcmU6Om9wZXJh
dG9yPDwpOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0
YW50cy5oOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0
ZWREYXRhLmNwcDoKKFdlYkNvcmU6OlN0eWxlUmFyZUluaGVyaXRlZERhdGE6OlN0eWxlUmFyZUlu
aGVyaXRlZERhdGEpOgooV2ViQ29yZTo6U3R5bGVSYXJlSW5oZXJpdGVkRGF0YTo6b3BlcmF0b3I9
PSBjb25zdCk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVy
aXRlZERhdGEuaDoKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVUZXh0RWRn
ZS5oOiBBZGRlZC4KKFdlYkNvcmU6Om9wZXJhdG9yPT0pOgooV2ViQ29yZTo6b3BlcmF0b3IhPSk6
CiogU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmg6CihXZWJDb3Jl
OjpTdHlsZTo6QnVpbGRlckNvbnZlcnRlcjo6Y29udmVydFRleHRFZGdlKToKLS0tCiAuLi4vV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogfCAgNCArKwogLi4uL1dlYkNv
cmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaCAgIHwgNTMgKysrKysrKysrKysrKysr
KysrKwogU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbiAgICAgICAgIHwgMTEg
KysrKwogU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW4gICAgICAgIHwgIDkg
KysrKwogU291cmNlL1dlYkNvcmUvY3NzL0NvbXB1dGVkU3R5bGVFeHRyYWN0b3IuY3BwIHwgMTAg
KysrKwogLi4uL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmNwcCAgIHwgMTYg
KysrKysrCiAuLi4vY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuaCAgICAgfCAg
MSArCiAuLi4vV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwICAgfCAxNiAr
KysrKysKIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oICB8ICA1
ICsrCiAuLi4vcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcCAgfCAxNCAr
KysrKwogLi4uL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oICAgIHwgMTEg
KysrKwogLi4uL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwICAgICAgICAgIHwgIDQg
KysKIC4uLi9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5oICB8ICAzICsr
CiAuLi4vV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVUZXh0RWRnZS5oICAgfCA0NCArKysr
KysrKysrKysrKysKIFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5o
ICB8IDUxICsrKysrKysrKysrKysrKysrKwogMTUgZmlsZXMgY2hhbmdlZCwgMjUyIGluc2VydGlv
bnMoKykKIGNyZWF0ZSBtb2RlIDEwMDY0NCBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUv
U3R5bGVUZXh0RWRnZS5oCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCmluZGV4IDQwY2MxYjM2ODUwOC4uNDhiYzhkYjE1YTM5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysr
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC00
ODgzLDYgKzQ4ODMsNyBAQAogCQlERDE3QzA4MjI4NkVDNTc0MDBENjBCNTggLyogYnVpbGQgaW4g
Q29weSBQREYuanMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREQxN0MwN0My
ODZFQzUxOTAwRDYwQjU4IC8qIGJ1aWxkICovOyB9OwogCQlERDE3QzA4MzI4NkVDNTc3MDBENjBC
NTggLyogTElDRU5TRSBpbiBDb3B5IFBERi5qcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBERDE3QzA4MDI4NkVDNTFCMDBENjBCNTggLyogTElDRU5TRSAqLzsgfTsKIAkJREQx
N0MwODQyODZFQzU3QTAwRDYwQjU4IC8qIHdlYiBpbiBDb3B5IFBERi5qcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERDE3QzA3RTI4NkVDNTFBMDBENjBCNTggLyogd2ViICov
OyB9OworCQlERDFDNzc5MDI5MzU0Qzc3MDAzQkQ3OUIgLyogU3R5bGVUZXh0RWRnZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREQxQzc3OEYyOTM1NEM3
NTAwM0JENzlCIC8qIFN0eWxlVGV4dEVkZ2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQlERDc2M0JCMjA5OTJDMkM5MDA3NDBCOEUgLyogbGlieG1s
Mi5keWxpYiBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IERENzYzQkIxMDk5MkMyQzkwMDc0MEI4RSAvKiBsaWJ4bWwyLmR5bGliICovOyB9OwogCQlERDdD
REYyNTBBMjNDRjk4MDAwNjk5MjggLyogQ1NTVW5rbm93blJ1bGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4MEU2Q0NFMEExOTg5Q0EwMDdGQjhDNSAv
KiBDU1NVbmtub3duUnVsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CiAJCUREOEEzMEI0MjkxREZDOEYwMEFENTM3QyAvKiBCbG9ja0xheW91dFN0YXRl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERDhBMzBC
MzI5MURGQzhGMDBBRDUzN0MgLyogQmxvY2tMYXlvdXRTdGF0ZS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC0xNzEyNiw2ICsxNzEyNyw3IEBACiAJ
CUREMTdDMDdDMjg2RUM1MTkwMEQ2MEI1OCAvKiBidWlsZCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZvbGRlcjsgbmFtZSA9IGJ1aWxkOyBwYXRoID0g
Li4vLi4vVGhpcmRQYXJ0eS9wZGZqcy9idWlsZDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJREQxN0MwN0UyODZFQzUxQTAwRDYwQjU4IC8qIHdlYiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZvbGRlcjsgbmFtZSA9IHdlYjsgcGF0aCA9IC4u
Ly4uL1RoaXJkUGFydHkvcGRmanMvd2ViOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlE
RDE3QzA4MDI4NkVDNTFCMDBENjBCNTggLyogTElDRU5TRSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IG5hbWUgPSBMSUNFTlNFOyBwYXRoID0g
Li4vLi4vVGhpcmRQYXJ0eS9wZGZqcy9MSUNFTlNFOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlERDFDNzc4RjI5MzU0Qzc1MDAzQkQ3OUIgLyogU3R5bGVUZXh0RWRnZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdHlsZVRleHRFZGdlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCURENzYzQkIxMDk5MkMyQzkwMDc0MEI4RSAvKiBsaWJ4bWwyLmR5bGli
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gImNvbXBp
bGVkLm1hY2gtby5keWxpYiI7IG5hbWUgPSBsaWJ4bWwyLmR5bGliOyBwYXRoID0gL3Vzci9saWIv
bGlieG1sMi5keWxpYjsgc291cmNlVHJlZSA9ICI8YWJzb2x1dGU+IjsgfTsKIAkJREQ4QTMwQjMy
OTFERkM4RjAwQUQ1MzdDIC8qIEJsb2NrTGF5b3V0U3RhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gQmxvY2tMYXlvdXRTdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlEREIwNEYzNzI3OEU1NTI3MDA4RDM2NzggLyogbGliV1RGLmEgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBhcmNoaXZlLmFyOyBwYXRoID0g
bGliV1RGLmE7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CkBAIC0zMDU5Nyw2
ICszMDU5OSw3IEBACiAJCQkJOUQ2MzgwMEYxQUYxNkUxNjAwMzFBMTVDIC8qIFN0eWxlU2VsZkFs
aWdubWVudERhdGEuaCAqLywKIAkJCQlCQzVFQjVFNjBFODFCRkVGMDBCMjU5NjUgLyogU3R5bGVT
dXJyb3VuZERhdGEuY3BwICovLAogCQkJCUJDNUVCNUU0MEU4MUJGNkQwMEIyNTk2NSAvKiBTdHls
ZVN1cnJvdW5kRGF0YS5oICovLAorCQkJCUREMUM3NzhGMjkzNTRDNzUwMDNCRDc5QiAvKiBTdHls
ZVRleHRFZGdlLmggKi8sCiAJCQkJQkM1RUI4MEQwRTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxlVHJh
bnNmb3JtRGF0YS5jcHAgKi8sCiAJCQkJQkM1RUI4MEUwRTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxl
VHJhbnNmb3JtRGF0YS5oICovLAogCQkJCUJDNUVCNjk3MEU4MURBNjMwMEIyNTk2NSAvKiBTdHls
ZVZpc3VhbERhdGEuY3BwICovLApAQCAtMzg3OTksNiArMzg4MDIsNyBAQAogCQkJCUU0RjlFRUYz
MTU2REEwMDcwMEQyM0U3RSAvKiBTdHlsZVNoZWV0Q29udGVudHMuaCBpbiBIZWFkZXJzICovLAog
CQkJCUE4RUE4MDBBMEExOTUxNkUwMEE4RUY1RiAvKiBTdHlsZVNoZWV0TGlzdC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQkM1RUI1RTUwRTgxQkY2RDAwQjI1OTY1IC8qIFN0eWxlU3Vycm91bmREYXRh
LmggaW4gSGVhZGVycyAqLywKKwkJCQlERDFDNzc5MDI5MzU0Qzc3MDAzQkQ3OUIgLyogU3R5bGVU
ZXh0RWRnZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI4MTAwRTgxRjJDRTAwQjI1OTY1IC8q
IFN0eWxlVHJhbnNmb3JtRGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTRERUFBMTgxN0E5M0RD
MzAwMEUwNDMwIC8qIFN0eWxlVHJlZVJlc29sdmVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlFNDJF
NzZEQzFDN0FGNzc2MDBFMzYxNEQgLyogU3R5bGVVcGRhdGUuaCBpbiBIZWFkZXJzICovLApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKaW5kZXggNWU5
Nzk1Y2NkM2VmLi4wZTU5M2E1OWZiMjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1By
aW1pdGl2ZVZhbHVlTWFwcGluZ3MuaApAQCAtNTIyNyw2ICs1MjI3LDU5IEBAIHRlbXBsYXRlPD4g
aW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBTY3JvbGxTbmFwU3RvcCgpIGNvbnN0
CiAgICAgfQogfQogCit0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJp
bWl0aXZlVmFsdWUoVGV4dEVkZ2UgdGV4dEVkZ2UpCisgICAgOiBDU1NWYWx1ZShQcmltaXRpdmVD
bGFzcykKK3sKKyAgICBzZXRQcmltaXRpdmVVbml0VHlwZShDU1NVbml0VHlwZTo6Q1NTX1ZBTFVF
X0lEKTsKKyAgICBzd2l0Y2ggKHRleHRFZGdlKSB7CisgICAgY2FzZSBUZXh0RWRnZTo6TGVhZGlu
ZzoKKyAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVMZWFkaW5nOworICAgICAgICBi
cmVhazsKKyAgICBjYXNlIFRleHRFZGdlOjpUZXh0OgorICAgICAgICBtX3ZhbHVlLnZhbHVlSUQg
PSBDU1NWYWx1ZVRleHQ7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgVGV4dEVkZ2U6OkNhcEhl
aWdodDoKKyAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVDYXA7CisgICAgICAgIGJy
ZWFrOworICAgIGNhc2UgVGV4dEVkZ2U6OkV4SGVpZ2h0OgorICAgICAgICBtX3ZhbHVlLnZhbHVl
SUQgPSBDU1NWYWx1ZUV4OworICAgICAgICBicmVhazsKKyAgICBjYXNlIFRleHRFZGdlOjpBbHBo
YWJldGljOgorICAgICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZUFscGhhYmV0aWM7Cisg
ICAgICAgIGJyZWFrOworICAgIGNhc2UgVGV4dEVkZ2U6OkNKS0lkZW9ncmFwaGljOgorICAgICAg
ICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZUlkZW9ncmFwaGljOworICAgICAgICBicmVhazsK
KyAgICBjYXNlIFRleHRFZGdlOjpDSktJZGVvZ3JhcGhpY0luazoKKyAgICAgICAgbV92YWx1ZS52
YWx1ZUlEID0gQ1NTVmFsdWVJZGVvZ3JhcGhpY0luazsKKyAgICAgICAgYnJlYWs7CisgICAgfQor
fQorCit0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgVGV4dEVk
Z2UoKSBjb25zdAoreworICAgIEFTU0VSVChpc1ZhbHVlSUQoKSk7CisgICAgc3dpdGNoIChtX3Zh
bHVlLnZhbHVlSUQpIHsKKyAgICBjYXNlIENTU1ZhbHVlTGVhZGluZzoKKyAgICAgICAgcmV0dXJu
IFRleHRFZGdlOjpMZWFkaW5nOworICAgIGNhc2UgQ1NTVmFsdWVUZXh0OgorICAgICAgICByZXR1
cm4gVGV4dEVkZ2U6OlRleHQ7CisgICAgY2FzZSBDU1NWYWx1ZUNhcDoKKyAgICAgICAgcmV0dXJu
IFRleHRFZGdlOjpDYXBIZWlnaHQ7CisgICAgY2FzZSBDU1NWYWx1ZUV4OgorICAgICAgICByZXR1
cm4gVGV4dEVkZ2U6OkV4SGVpZ2h0OworICAgIGNhc2UgQ1NTVmFsdWVBbHBoYWJldGljOgorICAg
ICAgICByZXR1cm4gVGV4dEVkZ2U6OkFscGhhYmV0aWM7CisgICAgY2FzZSBDU1NWYWx1ZUlkZW9n
cmFwaGljOgorICAgICAgICByZXR1cm4gVGV4dEVkZ2U6OkNKS0lkZW9ncmFwaGljOworICAgIGNh
c2UgQ1NTVmFsdWVJZGVvZ3JhcGhpY0luazoKKyAgICAgICAgcmV0dXJuIFRleHRFZGdlOjpDSktJ
ZGVvZ3JhcGhpY0luazsKKyAgICBkZWZhdWx0OgorICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQo
KTsKKyAgICAgICAgcmV0dXJuIFRleHRFZGdlOjpMZWFkaW5nOworICAgIH0KK30KKwogI2lmIEVO
QUJMRShBUFBMRV9QQVkpCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NT
UHJpbWl0aXZlVmFsdWUoQXBwbGVQYXlCdXR0b25TdHlsZSBlKQogICAgIDogQ1NTVmFsdWUoUHJp
bWl0aXZlQ2xhc3MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGll
cy5qc29uIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgppbmRleCBjMzE1
NzVhZDRkYWYuLjFiMzFiMjc5NWY1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NT
U1Byb3BlcnRpZXMuanNvbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydGllcy5q
c29uCkBAIC01MTAsNiArNTEwLDE3IEBACiAgICAgICAgICAgICAgICAgInVybCI6ICJodHRwczov
L3d3dy53My5vcmcvVFIvY3NzLWZvbnRzLTQvI2ZvbnQtc3RyZXRjaC1wcm9wIgogICAgICAgICAg
ICAgfQogICAgICAgICB9LAorICAgICAgICAidGV4dC1lZGdlIjogeworICAgICAgICAgICAgImNv
ZGVnZW4tcHJvcGVydGllcyI6IHsKKyAgICAgICAgICAgICAgICAiY29udmVydGVyIjogIlRleHRF
ZGdlIiwKKyAgICAgICAgICAgICAgICAiY3VzdG9tLXBhcnNlciI6IHRydWUsCisgICAgICAgICAg
ICAgICAgInNldHRpbmdzLWZsYWciOiAiY3NzTGVhZGluZ1RyaW1FbmFibGVkIgorICAgICAgICAg
ICAgfSwKKyAgICAgICAgICAgICJzcGVjaWZpY2F0aW9uIjogeworICAgICAgICAgICAgICAgICJj
YXRlZ29yeSI6ICJjc3MtaW5saW5lIiwKKyAgICAgICAgICAgICAgICAidXJsIjogImh0dHBzOi8v
d3d3LnczLm9yZy9UUi9jc3MtaW5saW5lLTMvI3RleHQtZWRnZXMiCisgICAgICAgICAgICB9Cisg
ICAgICAgIH0sCiAgICAgICAgICJ0ZXh0LXJlbmRlcmluZyI6IHsKICAgICAgICAgICAgICJpbmhl
cml0ZWQiOiB0cnVlLAogICAgICAgICAgICAgInZhbHVlcyI6IFsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluIGIvU291cmNlL1dlYkNvcmUvY3NzL0NT
U1ZhbHVlS2V5d29yZHMuaW4KaW5kZXggOTIxYjI1NGI3Zjc5Li44YzdiZjM2NzYwZGUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCkBAIC0xMDQwLDYgKzEwNDAsMTUgQEAg
bm8tcHVuY3R1YXRpb24KIGFudGlhbGlhc2VkCiBzdWJwaXhlbC1hbnRpYWxpYXNlZAogCisvLyB0
ZXh0LWVkZ2UKK2xlYWRpbmcKKy8vIHRleHQKK2NhcAorZXgKKy8vIGlkZW9ncmFwaGljCitpZGVv
Z3JhcGhpYy1pbmsKKy8vIGFscGhhYmV0aWMKKwogLy8gdGV4dC1yZW5kZXJpbmcKIC8vYXV0bwog
b3B0aW1pemVTcGVlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NvbXB1dGVkU3R5
bGVFeHRyYWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NvbXB1dGVkU3R5bGVFeHRyYWN0
b3IuY3BwCmluZGV4IGU2OTE1ZGUyMWY5NS4uMTRjMzU0MWQ0MTdmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NvbXB1dGVkU3R5bGVFeHRyYWN0b3IuY3BwCkBAIC0xMzA1LDYgKzEzMDUsMTQg
QEAgc3RhdGljIFJlZjxDU1NWYWx1ZUxpc3Q+IHZhbHVlRm9yU2Nyb2xsU25hcEFsaWdubWVudChj
b25zdCBTY3JvbGxTbmFwQWxpZ24mIGFsaWcKICAgICByZXR1cm4gdmFsdWU7CiB9CiAKK3N0YXRp
YyBSZWY8Q1NTVmFsdWVMaXN0PiB2YWx1ZUZvclRleHRFZGdlKGNvbnN0IFRleHRFZGdlJiB0ZXh0
RWRnZSkKK3sKKyAgICBhdXRvIHZhbHVlID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFy
YXRlZCgpOworICAgIHZhbHVlLT5hcHBlbmQoQ1NTUHJpbWl0aXZlVmFsdWU6OmNyZWF0ZSh0ZXh0
RWRnZS5vdmVyKSk7CisgICAgdmFsdWUtPmFwcGVuZChDU1NQcmltaXRpdmVWYWx1ZTo6Y3JlYXRl
KHRleHRFZGdlLnVuZGVyKSk7CisgICAgcmV0dXJuIHZhbHVlOworfQorCiBzdGF0aWMgUmVmPENT
U1ZhbHVlPiB3aWxsQ2hhbmdlUHJvcGVydHlWYWx1ZShjb25zdCBXaWxsQ2hhbmdlRGF0YSogd2ls
bENoYW5nZURhdGEpCiB7CiAgICAgYXV0byYgY3NzVmFsdWVQb29sID0gQ1NTVmFsdWVQb29sOjpz
aW5nbGV0b24oKTsKQEAgLTQwNzMsNiArNDA4MSw4IEBAIFJlZlB0cjxDU1NWYWx1ZT4gQ29tcHV0
ZWRTdHlsZUV4dHJhY3Rvcjo6dmFsdWVGb3JQcm9wZXJ0eUluU3R5bGUoY29uc3QgUmVuZGVyU3R5
CiAgICAgICAgIHJldHVybiB2YWx1ZUZvclNjcm9sbFNuYXBUeXBlKHN0eWxlLnNjcm9sbFNuYXBU
eXBlKCkpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlPdmVyZmxvd0FuY2hvcjoKICAgICAgICAgcmV0
dXJuIGNzc1ZhbHVlUG9vbC5jcmVhdGVWYWx1ZShzdHlsZS5vdmVyZmxvd0FuY2hvcigpKTsKKyAg
ICBjYXNlIENTU1Byb3BlcnR5VGV4dEVkZ2U6CisgICAgICAgIHJldHVybiB2YWx1ZUZvclRleHRF
ZGdlKHN0eWxlLnRleHRFZGdlKCkpOwogCiAjaWYgRU5BQkxFKEFQUExFX1BBWSkKICAgICBjYXNl
IENTU1Byb3BlcnR5QXBwbGVQYXlCdXR0b25TdHlsZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmNwcAppbmRleCBiMTdlYWZi
MDc0NGEuLmViZGE4M2E1NDZlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNl
ci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9w
YXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmNwcApAQCAtNjY4Myw2ICs2NjgzLDIyIEBA
IFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZVNjcm9sbFNuYXBUeXBlKENTU1BhcnNlclRva2VuUmFu
Z2UmIHJhbmdlKQogICAgIHJldHVybiB0eXBlVmFsdWU7CiB9CiAKK1JlZlB0cjxDU1NWYWx1ZT4g
Y29uc3VtZVRleHRFZGdlKENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQoreworICAgIGF1dG8g
dHlwZVZhbHVlID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgpOworCisgICAg
YXV0byBmaXJzdFZhbHVlID0gY29uc3VtZUlkZW50PENTU1ZhbHVlTGVhZGluZywgQ1NTVmFsdWVU
ZXh0LCBDU1NWYWx1ZUNhcCwgQ1NTVmFsdWVFeCwgQ1NTVmFsdWVJZGVvZ3JhcGhpYywgQ1NTVmFs
dWVJZGVvZ3JhcGhpY0luaz4ocmFuZ2UpOworICAgIGlmICghZmlyc3RWYWx1ZSkKKyAgICAgICAg
cmV0dXJuIG51bGxwdHI7CisgICAgdHlwZVZhbHVlLT5hcHBlbmQoZmlyc3RWYWx1ZS5yZWxlYXNl
Tm9uTnVsbCgpKTsKKworICAgIGF1dG8gc2Vjb25kVmFsdWUgPSBjb25zdW1lSWRlbnQ8Q1NTVmFs
dWVUZXh0LCBDU1NWYWx1ZUFscGhhYmV0aWMsIENTU1ZhbHVlSWRlb2dyYXBoaWMsIENTU1ZhbHVl
SWRlb2dyYXBoaWNJbms+KHJhbmdlKTsKKyAgICBpZiAoc2Vjb25kVmFsdWUpCisgICAgICAgIHR5
cGVWYWx1ZS0+YXBwZW5kKHNlY29uZFZhbHVlLnJlbGVhc2VOb25OdWxsKCkpOworCisgICAgcmV0
dXJuIHR5cGVWYWx1ZTsKK30KKwogUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lQm9yZGVyUmFkaXVz
Q29ybmVyKENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlLCBDU1NQYXJzZXJNb2RlIGNzc1BhcnNl
ck1vZGUpCiB7CiAgICAgUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBwYXJzZWRWYWx1ZTEgPSBj
b25zdW1lTGVuZ3RoT3JQZXJjZW50KHJhbmdlLCBjc3NQYXJzZXJNb2RlLCBWYWx1ZVJhbmdlOjpO
b25OZWdhdGl2ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1By
b3BlcnR5UGFyc2VySGVscGVycy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9w
ZXJ0eVBhcnNlckhlbHBlcnMuaAppbmRleCBlNzMyZTAwNjdjMzEuLjRjZTQzZGViMWZiMiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBl
cnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVs
cGVycy5oCkBAIC0yNzgsNiArMjc4LDcgQEAgUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lQ29udGVu
dChDU1NQYXJzZXJUb2tlblJhbmdlJiwgY29uc3QgQ1NTUGFyc2VyQ29udGV4dCYpOwogUmVmUHRy
PENTU1ZhbHVlPiBjb25zdW1lUGVyc3BlY3RpdmUoQ1NTUGFyc2VyVG9rZW5SYW5nZSYsIENTU1Bh
cnNlck1vZGUpOwogUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lU2Nyb2xsU25hcEFsaWduKENTU1Bh
cnNlclRva2VuUmFuZ2UmKTsKIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZVNjcm9sbFNuYXBUeXBl
KENTU1BhcnNlclRva2VuUmFuZ2UmKTsKK1JlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZVRleHRFZGdl
KENTU1BhcnNlclRva2VuUmFuZ2UmKTsKIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZUJvcmRlclJh
ZGl1c0Nvcm5lcihDU1NQYXJzZXJUb2tlblJhbmdlJiwgQ1NTUGFyc2VyTW9kZSk7CiBib29sIGNv
bnN1bWVSYWRpaShSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGhvcml6b250YWxSYWRpaVs0XSwg
UmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiB2ZXJ0aWNhbFJhZGlpWzRdLCBDU1NQYXJzZXJUb2tl
blJhbmdlJiwgQ1NTUGFyc2VyTW9kZSwgYm9vbCB1c2VMZWdhY3lQYXJzaW5nKTsKIGVudW0gY2xh
c3MgQ29uc3VtZVJheSB7IEluY2x1ZGUsIEV4Y2x1ZGUgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCmluZGV4IDJjZGQ0MzFhMmQ2Yy4uMjY4MGUw
ODNkNjU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVy
U3R5bGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHls
ZS5jcHAKQEAgLTQ5LDYgKzQ5LDcgQEAKICNpbmNsdWRlICJTdHlsZVJlc29sdmVyLmgiCiAjaW5j
bHVkZSAiU3R5bGVTY3JvbGxTbmFwUG9pbnRzLmgiCiAjaW5jbHVkZSAiU3R5bGVTZWxmQWxpZ25t
ZW50RGF0YS5oIgorI2luY2x1ZGUgIlN0eWxlVGV4dEVkZ2UuaCIKICNpbmNsdWRlICJTdHlsZVRy
ZWVSZXNvbHZlci5oIgogI2luY2x1ZGUgIldpbGxDaGFuZ2VEYXRhLmgiCiAjaW5jbHVkZSA8d3Rm
L01hdGhFeHRyYXMuaD4KQEAgLTI4MDUsNiArMjgwNiwyMSBAQCBib29sIFJlbmRlclN0eWxlOjpo
YXNTbmFwUG9zaXRpb24oKSBjb25zdAogICAgIHJldHVybiBhbGlnbm1lbnQuYmxvY2tBbGlnbiAh
PSBTY3JvbGxTbmFwQXhpc0FsaWduVHlwZTo6Tm9uZSB8fCBhbGlnbm1lbnQuaW5saW5lQWxpZ24g
IT0gU2Nyb2xsU25hcEF4aXNBbGlnblR5cGU6Ok5vbmU7CiB9CiAKK1RleHRFZGdlIFJlbmRlclN0
eWxlOjp0ZXh0RWRnZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fcmFyZUluaGVyaXRlZERhdGEt
PnRleHRFZGdlOworfQorCit2b2lkIFJlbmRlclN0eWxlOjpzZXRUZXh0RWRnZShUZXh0RWRnZSB0
ZXh0RWRnZVZhbHVlKQoreworICAgIFNFVF9WQVIobV9yYXJlSW5oZXJpdGVkRGF0YSwgdGV4dEVk
Z2UsIHRleHRFZGdlVmFsdWUpOworfQorCitUZXh0RWRnZSBSZW5kZXJTdHlsZTo6aW5pdGlhbFRl
eHRFZGdlKCkKK3sKKyAgICByZXR1cm4geyBUZXh0RWRnZTo6TGVhZGluZywgVGV4dEVkZ2U6Okxl
YWRpbmcgfTsKK30KKwogYm9vbCBSZW5kZXJTdHlsZTo6aGFzUmVmZXJlbmNlRmlsdGVyT25seSgp
IGNvbnN0CiB7CiAgICAgaWYgKCFoYXNGaWx0ZXIoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKaW5kZXggM2NkNDc0MzkzZTYzLi5lY2VmYzI1NjI1ZGIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCkBAIC0x
MjUsNiArMTI1LDggQEAgY2xhc3MgVHJhbnNmb3JtYXRpb25NYXRyaXg7CiBzdHJ1Y3QgU2Nyb2xs
U25hcEFsaWduOwogc3RydWN0IFNjcm9sbFNuYXBUeXBlOwogCitzdHJ1Y3QgVGV4dEVkZ2U7CisK
IHVzaW5nIFBzZXVkb1N0eWxlQ2FjaGUgPSBWZWN0b3I8c3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0
eWxlPiwgND47CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFQsIHR5cGVuYW1lIFU+IGlubGluZSBib29s
IGNvbXBhcmVFcXVhbChjb25zdCBUJiB0LCBjb25zdCBVJiB1KSB7IHJldHVybiB0ID09IHN0YXRp
Y19jYXN0PGNvbnN0IFQmPih1KTsgfQpAQCAtMzk3LDYgKzM5OSw3IEBAIHB1YmxpYzoKICAgICBU
ZXh0SnVzdGlmeSB0ZXh0SnVzdGlmeSgpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PFRleHRK
dXN0aWZ5PihtX3JhcmVJbmhlcml0ZWREYXRhLT50ZXh0SnVzdGlmeSk7IH0KIAogICAgIExlYWRp
bmdUcmltIGxlYWRpbmdUcmltKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8TGVhZGluZ1Ry
aW0+KG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmxlYWRpbmdUcmltKTsgfQorICAgIFRleHRFZGdl
IHRleHRFZGdlKCkgY29uc3Q7CiAKICAgICBjb25zdCBMZW5ndGgmIHdvcmRTcGFjaW5nKCkgY29u
c3Q7CiAgICAgZmxvYXQgbGV0dGVyU3BhY2luZygpIGNvbnN0OwpAQCAtMTA1Niw2ICsxMDU5LDcg
QEAgcHVibGljOgogICAgIHZvaWQgc2V0VGV4dEp1c3RpZnkoVGV4dEp1c3RpZnkgdikgeyBTRVRf
VkFSKG1fcmFyZUluaGVyaXRlZERhdGEsIHRleHRKdXN0aWZ5LCBzdGF0aWNfY2FzdDx1bnNpZ25l
ZD4odikpOyB9CiAKICAgICB2b2lkIHNldExlYWRpbmdUcmltKExlYWRpbmdUcmltIHZhbHVlKSB7
IFNFVF9WQVIobV9yYXJlTm9uSW5oZXJpdGVkRGF0YSwgbGVhZGluZ1RyaW0sIHN0YXRpY19jYXN0
PHVuc2lnbmVkPih2YWx1ZSkpOyB9CisgICAgdm9pZCBzZXRUZXh0RWRnZShUZXh0RWRnZSk7CiAK
ICNpZiBFTkFCTEUoVEVYVF9BVVRPU0laSU5HKQogICAgIHZvaWQgc2V0U3BlY2lmaWVkTGluZUhl
aWdodChMZW5ndGgmJik7CkBAIC0xNjcxLDYgKzE2NzUsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGlj
IExlbmd0aCBpbml0aWFsUGFkZGluZygpIHsgcmV0dXJuIExlbmd0aChMZW5ndGhUeXBlOjpGaXhl
ZCk7IH0KICAgICBzdGF0aWMgTGVuZ3RoIGluaXRpYWxUZXh0SW5kZW50KCkgeyByZXR1cm4gTGVu
Z3RoKExlbmd0aFR5cGU6OkZpeGVkKTsgfQogICAgIHN0YXRpYyBMZWFkaW5nVHJpbSBpbml0aWFs
TGVhZGluZ1RyaW0oKSB7IHJldHVybiBMZWFkaW5nVHJpbTo6Tm9ybWFsOyB9CisgICAgc3RhdGlj
IFRleHRFZGdlIGluaXRpYWxUZXh0RWRnZSgpOwogICAgIHN0YXRpYyBMZW5ndGggaW5pdGlhbFpl
cm9MZW5ndGgoKSB7IHJldHVybiBMZW5ndGgoTGVuZ3RoVHlwZTo6Rml4ZWQpOyB9CiAgICAgc3Rh
dGljIExlbmd0aCBpbml0aWFsT25lTGVuZ3RoKCkgeyByZXR1cm4gTGVuZ3RoKDEsIExlbmd0aFR5
cGU6OkZpeGVkKTsgfQogICAgIHN0YXRpYyB1bnNpZ25lZCBzaG9ydCBpbml0aWFsV2lkb3dzKCkg
eyByZXR1cm4gMjsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxl
L1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHls
ZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5jcHAKaW5kZXggYWIxYzI2YWRjMmJhLi42MzIzZTkwODMz
ZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHls
ZUNvbnN0YW50cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRl
clN0eWxlQ29uc3RhbnRzLmNwcApAQCAtMTE2MCw2ICsxMTYwLDIwIEBAIFRleHRTdHJlYW0mIG9w
ZXJhdG9yPDwoVGV4dFN0cmVhbSYgdHMsIExlYWRpbmdUcmltIGxlYWRpbmdUcmltKQogICAgIHJl
dHVybiB0czsKIH0KIAorVGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiB0cywgVGV4
dEVkZ2VUeXBlIHRleHRFZGdlVHlwZSkKK3sKKyAgICBzd2l0Y2ggKHRleHRFZGdlVHlwZSkgewor
ICAgIGNhc2UgVGV4dEVkZ2VUeXBlOjpMZWFkaW5nOiB0cyA8PCAiaGFsZi1sZWFkaW5nIjsgYnJl
YWs7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OlRleHQ6IHRzIDw8ICJ0ZXh0LW92ZXIvdW5kZXIg
YmFzZWxpbmUiOyBicmVhazsKKyAgICBjYXNlIFRleHRFZGdlVHlwZTo6Q2FwSGVpZ2h0OiB0cyA8
PCAiY2FwLWhlaWdodCBiYXNlbGluZSI7IGJyZWFrOworICAgIGNhc2UgVGV4dEVkZ2VUeXBlOjpF
eEhlaWdodDogdHMgPDwgIngtaGVpZ2h0IGJhc2VsaW5lIjsgYnJlYWs7CisgICAgY2FzZSBUZXh0
RWRnZVR5cGU6OkFscGhhYmV0aWM6IHRzIDw8ICJhbHBoYWJldGljIGJhc2VsaW5lIjsgYnJlYWs7
CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OkNKS0lkZW9ncmFwaGljOiB0cyA8PCAiaWRlb2dyYXBo
aWMtb3ZlciBiYXNlbGluZSI7IGJyZWFrOworICAgIGNhc2UgVGV4dEVkZ2VUeXBlOjpDSktJZGVv
Z3JhcGhpY0luazogdHMgPDwgImlkZW9ncmFwaGljLWluay1vdmVyL2luay11bmRlciBiYXNlbGlu
ZSI7IGJyZWFrOworICAgIH0KKyAgICByZXR1cm4gdHM7Cit9CisKIFRleHRTdHJlYW0mIG9wZXJh
dG9yPDwoVGV4dFN0cmVhbSYgdHMsIFRleHRab29tIHpvb20pCiB7CiAgICAgc3dpdGNoICh6b29t
KSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5
bGVDb25zdGFudHMuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHls
ZUNvbnN0YW50cy5oCmluZGV4IDRmMmVhMTJlMTY0OC4uMTg1NzVkMWQ0ODg2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMu
aApAQCAtNzg4LDYgKzc4OCwxNiBAQCBlbnVtIGNsYXNzIExlYWRpbmdUcmltIDogdWludDhfdCB7
CiAgICAgQm90aAogfTsKIAorZW51bSBjbGFzcyBUZXh0RWRnZVR5cGUgOiB1aW50OF90IHsKKyAg
ICBMZWFkaW5nLAorICAgIFRleHQsCisgICAgQ2FwSGVpZ2h0LAorICAgIEV4SGVpZ2h0LAorICAg
IEFscGhhYmV0aWMsCisgICAgQ0pLSWRlb2dyYXBoaWMsCisgICAgQ0pLSWRlb2dyYXBoaWNJbmsK
K307CisKIGVudW0gY2xhc3MgVGV4dFpvb20gOiB1aW50OF90IHsKICAgICBOb3JtYWwsCiAgICAg
UmVzZXQKQEAgLTEzMjQsNiArMTMzNCw3IEBAIFdURjo6VGV4dFN0cmVhbSYgb3BlcmF0b3I8PChX
VEY6OlRleHRTdHJlYW0mLCBUZXh0U2VjdXJpdHkpOwogV1RGOjpUZXh0U3RyZWFtJiBvcGVyYXRv
cjw8KFdURjo6VGV4dFN0cmVhbSYsIFRleHRUcmFuc2Zvcm0pOwogV1RGOjpUZXh0U3RyZWFtJiBv
cGVyYXRvcjw8KFdURjo6VGV4dFN0cmVhbSYsIFRleHRVbmRlcmxpbmVQb3NpdGlvbik7CiBXVEY6
OlRleHRTdHJlYW0mIG9wZXJhdG9yPDwoV1RGOjpUZXh0U3RyZWFtJiwgTGVhZGluZ1RyaW0pOwor
V1RGOjpUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFdURjo6VGV4dFN0cmVhbSYsIFRleHRFZGdlVHlw
ZSk7CiBXVEY6OlRleHRTdHJlYW0mIG9wZXJhdG9yPDwoV1RGOjpUZXh0U3RyZWFtJiwgVGV4dFpv
b20pOwogV1RGOjpUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFdURjo6VGV4dFN0cmVhbSYsIFRyYW5z
Zm9ybUJveCk7CiBXVEY6OlRleHRTdHJlYW0mIG9wZXJhdG9yPDwoV1RGOjpUZXh0U3RyZWFtJiwg
VHJhbnNmb3JtU3R5bGUzRCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5jcHAKaW5kZXggYWJhMjE5ZTNlMWI3Li5h
MmRhZTRlY2ZhOTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9T
dHlsZVJhcmVJbmhlcml0ZWREYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5jcHAKQEAgLTQ3LDYgKzQ3LDcgQEAgc3RydWN0
IEdyZWF0ZXJUaGFuT3JTYW1lU2l6ZUFzU3R5bGVSYXJlSW5oZXJpdGVkRGF0YSA6IHB1YmxpYyBS
ZWZDb3VudGVkPEdyZWF0ZXIKICAgICBMZW5ndGggbGVuZ3Roc1syXTsKICAgICBmbG9hdCBzZWNv
bmRGbG9hdDsKICAgICBUZXh0VW5kZXJsaW5lT2Zmc2V0IG9mZnNldDsKKyAgICBUZXh0RWRnZSB0
ZXh0RWRnZTsKICAgICB2b2lkKiBjdXN0b21Qcm9wZXJ0eURhdGFSZWZzWzFdOwogICAgIHVuc2ln
bmVkIGJpdGZpZWxkc1s3XTsKICAgICBzaG9ydCBwYWdlZE1lZGlhU2hvcnRzWzJdOwpAQCAtOTAs
NiArOTEsNyBAQCBTdHlsZVJhcmVJbmhlcml0ZWREYXRhOjpTdHlsZVJhcmVJbmhlcml0ZWREYXRh
KCkKICAgICAsIGluZGVudChSZW5kZXJTdHlsZTo6aW5pdGlhbFRleHRJbmRlbnQoKSkKICAgICAs
IGVmZmVjdGl2ZVpvb20oUmVuZGVyU3R5bGU6OmluaXRpYWxab29tKCkpCiAgICAgLCB0ZXh0VW5k
ZXJsaW5lT2Zmc2V0KFJlbmRlclN0eWxlOjppbml0aWFsVGV4dFVuZGVybGluZU9mZnNldCgpKQor
ICAgICwgdGV4dEVkZ2UoUmVuZGVyU3R5bGU6OmluaXRpYWxUZXh0RWRnZSgpKQogICAgICwgbWl0
ZXJMaW1pdChSZW5kZXJTdHlsZTo6aW5pdGlhbFN0cm9rZU1pdGVyTGltaXQoKSkKICAgICAsIGN1
c3RvbVByb3BlcnRpZXMoU3R5bGVDdXN0b21Qcm9wZXJ0eURhdGE6OmNyZWF0ZSgpKQogICAgICwg
d2lkb3dzKFJlbmRlclN0eWxlOjppbml0aWFsV2lkb3dzKCkpCkBAIC0xODYsNiArMTg4LDcgQEAg
aW5saW5lIFN0eWxlUmFyZUluaGVyaXRlZERhdGE6OlN0eWxlUmFyZUluaGVyaXRlZERhdGEoY29u
c3QgU3R5bGVSYXJlSW5oZXJpdGVkRGEKICAgICAsIGluZGVudChvLmluZGVudCkKICAgICAsIGVm
ZmVjdGl2ZVpvb20oby5lZmZlY3RpdmVab29tKQogICAgICwgdGV4dFVuZGVybGluZU9mZnNldChv
LnRleHRVbmRlcmxpbmVPZmZzZXQpCisgICAgLCB0ZXh0RWRnZShvLnRleHRFZGdlKQogICAgICwg
bWl0ZXJMaW1pdChvLm1pdGVyTGltaXQpCiAgICAgLCBjdXN0b21Qcm9wZXJ0aWVzKG8uY3VzdG9t
UHJvcGVydGllcykKICAgICAsIHdpZG93cyhvLndpZG93cykKQEAgLTI5Nyw2ICszMDAsNyBAQCBi
b29sIFN0eWxlUmFyZUluaGVyaXRlZERhdGE6Om9wZXJhdG9yPT0oY29uc3QgU3R5bGVSYXJlSW5o
ZXJpdGVkRGF0YSYgbykgY29uc3QKICAgICAgICAgJiYgaW5kZW50ID09IG8uaW5kZW50CiAgICAg
ICAgICYmIGVmZmVjdGl2ZVpvb20gPT0gby5lZmZlY3RpdmVab29tCiAgICAgICAgICYmIHRleHRV
bmRlcmxpbmVPZmZzZXQgPT0gby50ZXh0VW5kZXJsaW5lT2Zmc2V0CisgICAgICAgICYmIHRleHRF
ZGdlID09IG8udGV4dEVkZ2UKICAgICAgICAgJiYgd29yZFNwYWNpbmcgPT0gby53b3JkU3BhY2lu
ZwogICAgICAgICAmJiBtaXRlckxpbWl0ID09IG8ubWl0ZXJMaW1pdAogICAgICAgICAmJiB3aWRv
d3MgPT0gby53aWRvd3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHls
ZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5
bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5oCmluZGV4IDQxYWFjNjU4ZjEzMC4uMWMwYmFkODg1
ZjZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJl
SW5oZXJpdGVkRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHls
ZVJhcmVJbmhlcml0ZWREYXRhLmgKQEAgLTI4LDYgKzI4LDcgQEAKICNpbmNsdWRlICJSZW5kZXJT
dHlsZUNvbnN0YW50cy5oIgogI2luY2x1ZGUgIlN0eWxlQ29sb3IuaCIKICNpbmNsdWRlICJTdHls
ZUN1c3RvbVByb3BlcnR5RGF0YS5oIgorI2luY2x1ZGUgIlN0eWxlVGV4dEVkZ2UuaCIKICNpbmNs
dWRlICJUYWJTaXplLmgiCiAjaW5jbHVkZSAiVGV4dFVuZGVybGluZU9mZnNldC5oIgogI2luY2x1
ZGUgIlRvdWNoQWN0aW9uLmgiCkBAIC05Niw2ICs5Nyw4IEBAIHB1YmxpYzoKICAgICBmbG9hdCBl
ZmZlY3RpdmVab29tOwogCiAgICAgVGV4dFVuZGVybGluZU9mZnNldCB0ZXh0VW5kZXJsaW5lT2Zm
c2V0OworCisgICAgVGV4dEVkZ2UgdGV4dEVkZ2U7CiAgICAgCiAgICAgTGVuZ3RoIHdvcmRTcGFj
aW5nOwogICAgIGZsb2F0IG1pdGVyTGltaXQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvU3R5bGVUZXh0RWRnZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1N0eWxlVGV4dEVkZ2UuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAuLjg0NzZhZThjOTBjOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9TdHlsZVRleHRFZGdlLmgKQEAgLTAsMCArMSw0NCBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAyMiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMg
Q09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisg
KiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJP
RklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQor
ICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICov
CisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAiUmVuZGVyU3R5bGVDb25zdGFudHMuaCIKKwor
bmFtZXNwYWNlIFdlYkNvcmUgeworCitzdHJ1Y3QgVGV4dEVkZ2UgeworICAgIFRleHRFZGdlVHlw
ZSBvdmVyIHsgVGV4dEVkZ2VUeXBlOjpMZWFkaW5nIH07CisgICAgVGV4dEVkZ2VUeXBlIHVuZGVy
IHsgVGV4dEVkZ2VUeXBlOjpMZWFkaW5nIH07Cit9OworCitpbmxpbmUgYm9vbCBvcGVyYXRvcj09
KGNvbnN0IFRleHRFZGdlJiBhLCBjb25zdCBUZXh0RWRnZSYgYikKK3sKKyAgICByZXR1cm4gYS5v
dmVyID09IGIub3ZlciAmJiBhLnVuZGVyID09IGIudW5kZXI7Cit9CisKK2lubGluZSBib29sIG9w
ZXJhdG9yIT0oY29uc3QgVGV4dEVkZ2UmIGEsIGNvbnN0IFRleHRFZGdlJiBiKSB7IHJldHVybiAh
KGEgPT0gYik7IH0KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9z
dHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaAppbmRleCBiNmUzY2JhMzJhOWMuLjE0YTA2OTAx
MGJiZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVy
dGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmgK
QEAgLTYyLDYgKzYyLDcgQEAKICNpbmNsdWRlICJTdHlsZUJ1aWxkZXJTdGF0ZS5oIgogI2luY2x1
ZGUgIlN0eWxlR3JpZERhdGEuaCIKICNpbmNsdWRlICJTdHlsZVNjcm9sbFNuYXBQb2ludHMuaCIK
KyNpbmNsdWRlICJTdHlsZVRleHRFZGdlLmgiCiAjaW5jbHVkZSAiVGFiU2l6ZS5oIgogI2luY2x1
ZGUgIlRvdWNoQWN0aW9uLmgiCiAjaW5jbHVkZSAiVHJhbnNmb3JtRnVuY3Rpb25zLmgiCkBAIC0x
MTUsNiArMTE2LDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBUZXh0VW5kZXJsaW5lT2Zmc2V0IGNv
bnZlcnRUZXh0VW5kZXJsaW5lT2Zmc2V0KEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7
CiAgICAgc3RhdGljIFRleHREZWNvcmF0aW9uVGhpY2tuZXNzIGNvbnZlcnRUZXh0RGVjb3JhdGlv
blRoaWNrbmVzcyhCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyBS
ZWZQdHI8U3R5bGVSZWZsZWN0aW9uPiBjb252ZXJ0UmVmbGVjdGlvbihCdWlsZGVyU3RhdGUmLCBj
b25zdCBDU1NWYWx1ZSYpOworICAgIHN0YXRpYyBUZXh0RWRnZSBjb252ZXJ0VGV4dEVkZ2UoQnVp
bGRlclN0YXRlJiwgY29uc3QgQ1NTVmFsdWUmKTsKICAgICBzdGF0aWMgSW50U2l6ZSBjb252ZXJ0
SW5pdGlhbExldHRlcihCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOwogICAgIHN0YXRp
YyBmbG9hdCBjb252ZXJ0VGV4dFN0cm9rZVdpZHRoKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1Zh
bHVlJik7CiAgICAgc3RhdGljIE9wdGlvblNldDxMaW5lQm94Q29udGFpbj4gY29udmVydExpbmVC
b3hDb250YWluKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CkBAIC04NDIsNiArODQ0
LDU1IEBAIGlubGluZSBSZWZQdHI8U3R5bGVSZWZsZWN0aW9uPiBCdWlsZGVyQ29udmVydGVyOjpj
b252ZXJ0UmVmbGVjdGlvbihCdWlsZGVyU3RhdGUmCiAgICAgcmV0dXJuIHJlZmxlY3Rpb247CiB9
CiAKK2lubGluZSBUZXh0RWRnZSBCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0VGV4dEVkZ2UoQnVp
bGRlclN0YXRlJiwgY29uc3QgQ1NTVmFsdWUmIHZhbHVlKQoreworICAgIGF1dG8mIHZhbHVlcyA9
IGRvd25jYXN0PENTU1ZhbHVlTGlzdD4odmFsdWUpOworICAgIGF1dG8mIGZpcnN0VmFsdWUgPSBk
b3duY2FzdDxDU1NQcmltaXRpdmVWYWx1ZT4oKnZhbHVlcy5pdGVtKDApKTsKKworICAgIGF1dG8g
b3ZlclZhbHVlID0gWyZdIHsKKyAgICAgICAgc3dpdGNoIChmaXJzdFZhbHVlLnZhbHVlSUQoKSkg
eworICAgICAgICBjYXNlIENTU1ZhbHVlTGVhZGluZzoKKyAgICAgICAgICAgIHJldHVybiBUZXh0
RWRnZTo6TGVhZGluZzsKKyAgICAgICAgY2FzZSBDU1NWYWx1ZVRleHQ6CisgICAgICAgICAgICBy
ZXR1cm4gVGV4dEVkZ2U6OlRleHQ7CisgICAgICAgIGNhc2UgQ1NTVmFsdWVDYXA6CisgICAgICAg
ICAgICByZXR1cm4gVGV4dEVkZ2U6OkNhcEhlaWdodDsKKyAgICAgICAgY2FzZSBDU1NWYWx1ZUV4
OgorICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdlOjpFeEhlaWdodDsKKyAgICAgICAgY2FzZSBD
U1NWYWx1ZUlkZW9ncmFwaGljOgorICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdlOjpDSktJZGVv
Z3JhcGhpYzsKKyAgICAgICAgY2FzZSBDU1NWYWx1ZUlkZW9ncmFwaGljSW5rOgorICAgICAgICAg
ICAgcmV0dXJuIFRleHRFZGdlOjpDSktJZGVvZ3JhcGhpY0luazsKKyAgICAgICAgZGVmYXVsdDoK
KyAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICAgICAgcmV0dXJuIFRl
eHRFZGdlOjpMZWFkaW5nOworICAgICAgICB9CisgICAgfTsKKworICAgIGF1dG8gdW5kZXJWYWx1
ZSA9IFsmXSB7CisgICAgICAgIGlmIChmaXJzdFZhbHVlLnZhbHVlSUQoKSA9PSBDU1NWYWx1ZUxl
YWRpbmcpCisgICAgICAgICAgICByZXR1cm4gVGV4dEVkZ2U6OkxlYWRpbmc7CisgICAgICAgIGlm
ICh2YWx1ZXMubGVuZ3RoKCkgPT0gMSkKKyAgICAgICAgICAgIHJldHVybiBUZXh0RWRnZTo6VGV4
dDsKKworICAgICAgICBhdXRvJiBzZWNvbmRWYWx1ZSA9IGRvd25jYXN0PENTU1ByaW1pdGl2ZVZh
bHVlPigqdmFsdWVzLml0ZW0oMSkpOworICAgICAgICBzd2l0Y2ggKHNlY29uZFZhbHVlLnZhbHVl
SUQoKSkgeworICAgICAgICBjYXNlIENTU1ZhbHVlVGV4dDoKKyAgICAgICAgICAgIHJldHVybiBU
ZXh0RWRnZTo6VGV4dDsKKyAgICAgICAgY2FzZSBDU1NWYWx1ZUFscGhhYmV0aWM6CisgICAgICAg
ICAgICByZXR1cm4gVGV4dEVkZ2U6OkFscGhhYmV0aWM7CisgICAgICAgIGNhc2UgQ1NTVmFsdWVJ
ZGVvZ3JhcGhpYzoKKyAgICAgICAgICAgIHJldHVybiBUZXh0RWRnZTo6Q0pLSWRlb2dyYXBoaWM7
CisgICAgICAgIGNhc2UgQ1NTVmFsdWVJZGVvZ3JhcGhpY0luazoKKyAgICAgICAgICAgIHJldHVy
biBUZXh0RWRnZTo6Q0pLSWRlb2dyYXBoaWNJbms7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAg
ICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgICAgIHJldHVybiBUZXh0RWRnZTo6
TGVhZGluZzsKKyAgICAgICAgfQorICAgIH07CisgICAgcmV0dXJuIHsgb3ZlclZhbHVlKCksIHVu
ZGVyVmFsdWUoKSB9OworfQorCiBpbmxpbmUgSW50U2l6ZSBCdWlsZGVyQ29udmVydGVyOjpjb252
ZXJ0SW5pdGlhbExldHRlcihCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYgdmFsdWUpCiB7
CiAgICAgYXV0byYgcHJpbWl0aXZlVmFsdWUgPSBkb3duY2FzdDxDU1NQcmltaXRpdmVWYWx1ZT4o
dmFsdWUpOwo=
</data>
<flag name="commit-queue"
          id="492202"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>463776</attachid>
            <date>2022-11-28 18:19:39 -0800</date>
            <delta_ts>2022-11-28 20:52:54 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-248448-20221128181938.patch</filename>
            <type>text/plain</type>
            <size>25684</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSA1YWUzMDgzNDU4NzA2MDk2OTBjY2QxYTg5ZDQ0MjM3OGYwYjQwOTY1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IE1vbiwgMjggTm92IDIwMjIgMTc6MzM6MjIgLTA4MDAKU3ViamVjdDogW1BBVENIXSBbbGVhZGlu
Zy10cmltXSBBZGQgc3VwcG9ydCBmb3IgcGFyc2luZyAidGV4dC1lZGdlIiBDU1MKIHByb3BlcnR5
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNDg0NDgKClJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgoKV0lQLgoKKiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2o6CiogU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZh
bHVlTWFwcGluZ3MuaDoKKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVW
YWx1ZSk6CihXZWJDb3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgVGV4dEVkZ2UgY29u
c3QpOgoqIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb246CiogU291cmNlL1dl
YkNvcmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW46CiogU291cmNlL1dlYkNvcmUvY3NzL0NvbXB1
dGVkU3R5bGVFeHRyYWN0b3IuY3BwOgooV2ViQ29yZTo6dmFsdWVGb3JUZXh0RWRnZSk6CihXZWJD
b3JlOjpDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvclByb3BlcnR5SW5TdHlsZSk6Ciog
U291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuY3BwOgoo
V2ViQ29yZTo6Q1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzOjpjb25zdW1lVGV4dEVkZ2UpOgoqIFNv
dXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmg6CiogU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcDoKKFdlYkNvcmU6OlJl
bmRlclN0eWxlOjp0ZXh0RWRnZSBjb25zdCk6CihXZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0VGV4
dEVkZ2UpOgooV2ViQ29yZTo6UmVuZGVyU3R5bGU6OmluaXRpYWxUZXh0RWRnZSk6CiogU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmg6CiogU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcDoKKFdlYkNvcmU6Om9wZXJh
dG9yPDwpOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0
YW50cy5oOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0
ZWREYXRhLmNwcDoKKFdlYkNvcmU6OlN0eWxlUmFyZUluaGVyaXRlZERhdGE6OlN0eWxlUmFyZUlu
aGVyaXRlZERhdGEpOgooV2ViQ29yZTo6U3R5bGVSYXJlSW5oZXJpdGVkRGF0YTo6b3BlcmF0b3I9
PSBjb25zdCk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVy
aXRlZERhdGEuaDoKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVUZXh0RWRn
ZS5oOiBBZGRlZC4KKFdlYkNvcmU6Om9wZXJhdG9yPT0pOgooV2ViQ29yZTo6b3BlcmF0b3IhPSk6
CiogU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmg6CihXZWJDb3Jl
OjpTdHlsZTo6QnVpbGRlckNvbnZlcnRlcjo6Y29udmVydFRleHRFZGdlKToKLS0tCiAuLi4vV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogfCAgNCArKwogLi4uL1dlYkNv
cmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaCAgIHwgNTMgKysrKysrKysrKysrKysr
KysrKwogU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbiAgICAgICAgIHwgMTEg
KysrKwogU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW4gICAgICAgIHwgIDkg
KysrKwogU291cmNlL1dlYkNvcmUvY3NzL0NvbXB1dGVkU3R5bGVFeHRyYWN0b3IuY3BwIHwgMTAg
KysrKwogLi4uL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmNwcCAgIHwgMTYg
KysrKysrCiAuLi4vY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuaCAgICAgfCAg
MSArCiAuLi4vV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwICAgfCAxNiAr
KysrKysKIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oICB8ICA1
ICsrCiAuLi4vcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcCAgfCAxNCAr
KysrKwogLi4uL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oICAgIHwgMTEg
KysrKwogLi4uL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwICAgICAgICAgIHwgIDQg
KysKIC4uLi9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5oICB8ICAzICsr
CiAuLi4vV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVUZXh0RWRnZS5oICAgfCA0NCArKysr
KysrKysrKysrKysKIFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5o
ICB8IDUxICsrKysrKysrKysrKysrKysrKwogMTUgZmlsZXMgY2hhbmdlZCwgMjUyIGluc2VydGlv
bnMoKykKIGNyZWF0ZSBtb2RlIDEwMDY0NCBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUv
U3R5bGVUZXh0RWRnZS5oCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCmluZGV4IDQwY2MxYjM2ODUwOC4uNDhiYzhkYjE1YTM5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysr
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC00
ODgzLDYgKzQ4ODMsNyBAQAogCQlERDE3QzA4MjI4NkVDNTc0MDBENjBCNTggLyogYnVpbGQgaW4g
Q29weSBQREYuanMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREQxN0MwN0My
ODZFQzUxOTAwRDYwQjU4IC8qIGJ1aWxkICovOyB9OwogCQlERDE3QzA4MzI4NkVDNTc3MDBENjBC
NTggLyogTElDRU5TRSBpbiBDb3B5IFBERi5qcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBERDE3QzA4MDI4NkVDNTFCMDBENjBCNTggLyogTElDRU5TRSAqLzsgfTsKIAkJREQx
N0MwODQyODZFQzU3QTAwRDYwQjU4IC8qIHdlYiBpbiBDb3B5IFBERi5qcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERDE3QzA3RTI4NkVDNTFBMDBENjBCNTggLyogd2ViICov
OyB9OworCQlERDFDNzc5MDI5MzU0Qzc3MDAzQkQ3OUIgLyogU3R5bGVUZXh0RWRnZS5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREQxQzc3OEYyOTM1NEM3
NTAwM0JENzlCIC8qIFN0eWxlVGV4dEVkZ2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQlERDc2M0JCMjA5OTJDMkM5MDA3NDBCOEUgLyogbGlieG1s
Mi5keWxpYiBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IERENzYzQkIxMDk5MkMyQzkwMDc0MEI4RSAvKiBsaWJ4bWwyLmR5bGliICovOyB9OwogCQlERDdD
REYyNTBBMjNDRjk4MDAwNjk5MjggLyogQ1NTVW5rbm93blJ1bGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4MEU2Q0NFMEExOTg5Q0EwMDdGQjhDNSAv
KiBDU1NVbmtub3duUnVsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CiAJCUREOEEzMEI0MjkxREZDOEYwMEFENTM3QyAvKiBCbG9ja0xheW91dFN0YXRl
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERDhBMzBC
MzI5MURGQzhGMDBBRDUzN0MgLyogQmxvY2tMYXlvdXRTdGF0ZS5oICovOyBzZXR0aW5ncyA9IHtB
VFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC0xNzEyNiw2ICsxNzEyNyw3IEBACiAJ
CUREMTdDMDdDMjg2RUM1MTkwMEQ2MEI1OCAvKiBidWlsZCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZvbGRlcjsgbmFtZSA9IGJ1aWxkOyBwYXRoID0g
Li4vLi4vVGhpcmRQYXJ0eS9wZGZqcy9idWlsZDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJREQxN0MwN0UyODZFQzUxQTAwRDYwQjU4IC8qIHdlYiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZvbGRlcjsgbmFtZSA9IHdlYjsgcGF0aCA9IC4u
Ly4uL1RoaXJkUGFydHkvcGRmanMvd2ViOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlE
RDE3QzA4MDI4NkVDNTFCMDBENjBCNTggLyogTElDRU5TRSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IG5hbWUgPSBMSUNFTlNFOyBwYXRoID0g
Li4vLi4vVGhpcmRQYXJ0eS9wZGZqcy9MSUNFTlNFOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlERDFDNzc4RjI5MzU0Qzc1MDAzQkQ3OUIgLyogU3R5bGVUZXh0RWRnZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdHlsZVRleHRFZGdlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCURENzYzQkIxMDk5MkMyQzkwMDc0MEI4RSAvKiBsaWJ4bWwyLmR5bGli
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gImNvbXBp
bGVkLm1hY2gtby5keWxpYiI7IG5hbWUgPSBsaWJ4bWwyLmR5bGliOyBwYXRoID0gL3Vzci9saWIv
bGlieG1sMi5keWxpYjsgc291cmNlVHJlZSA9ICI8YWJzb2x1dGU+IjsgfTsKIAkJREQ4QTMwQjMy
OTFERkM4RjAwQUQ1MzdDIC8qIEJsb2NrTGF5b3V0U3RhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gQmxvY2tMYXlvdXRTdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlEREIwNEYzNzI3OEU1NTI3MDA4RDM2NzggLyogbGliV1RGLmEgKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBhcmNoaXZlLmFyOyBwYXRoID0g
bGliV1RGLmE7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CkBAIC0zMDU5Nyw2
ICszMDU5OSw3IEBACiAJCQkJOUQ2MzgwMEYxQUYxNkUxNjAwMzFBMTVDIC8qIFN0eWxlU2VsZkFs
aWdubWVudERhdGEuaCAqLywKIAkJCQlCQzVFQjVFNjBFODFCRkVGMDBCMjU5NjUgLyogU3R5bGVT
dXJyb3VuZERhdGEuY3BwICovLAogCQkJCUJDNUVCNUU0MEU4MUJGNkQwMEIyNTk2NSAvKiBTdHls
ZVN1cnJvdW5kRGF0YS5oICovLAorCQkJCUREMUM3NzhGMjkzNTRDNzUwMDNCRDc5QiAvKiBTdHls
ZVRleHRFZGdlLmggKi8sCiAJCQkJQkM1RUI4MEQwRTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxlVHJh
bnNmb3JtRGF0YS5jcHAgKi8sCiAJCQkJQkM1RUI4MEUwRTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxl
VHJhbnNmb3JtRGF0YS5oICovLAogCQkJCUJDNUVCNjk3MEU4MURBNjMwMEIyNTk2NSAvKiBTdHls
ZVZpc3VhbERhdGEuY3BwICovLApAQCAtMzg3OTksNiArMzg4MDIsNyBAQAogCQkJCUU0RjlFRUYz
MTU2REEwMDcwMEQyM0U3RSAvKiBTdHlsZVNoZWV0Q29udGVudHMuaCBpbiBIZWFkZXJzICovLAog
CQkJCUE4RUE4MDBBMEExOTUxNkUwMEE4RUY1RiAvKiBTdHlsZVNoZWV0TGlzdC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQkM1RUI1RTUwRTgxQkY2RDAwQjI1OTY1IC8qIFN0eWxlU3Vycm91bmREYXRh
LmggaW4gSGVhZGVycyAqLywKKwkJCQlERDFDNzc5MDI5MzU0Qzc3MDAzQkQ3OUIgLyogU3R5bGVU
ZXh0RWRnZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI4MTAwRTgxRjJDRTAwQjI1OTY1IC8q
IFN0eWxlVHJhbnNmb3JtRGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTRERUFBMTgxN0E5M0RD
MzAwMEUwNDMwIC8qIFN0eWxlVHJlZVJlc29sdmVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlFNDJF
NzZEQzFDN0FGNzc2MDBFMzYxNEQgLyogU3R5bGVVcGRhdGUuaCBpbiBIZWFkZXJzICovLApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKaW5kZXggNWU5
Nzk1Y2NkM2VmLi5hMzI1MzVhMGNhYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1By
aW1pdGl2ZVZhbHVlTWFwcGluZ3MuaApAQCAtNTIyNyw2ICs1MjI3LDU5IEBAIHRlbXBsYXRlPD4g
aW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBTY3JvbGxTbmFwU3RvcCgpIGNvbnN0
CiAgICAgfQogfQogCit0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJp
bWl0aXZlVmFsdWUoVGV4dEVkZ2VUeXBlIHRleHRFZGdlVHlwZSkKKyAgICA6IENTU1ZhbHVlKFBy
aW1pdGl2ZUNsYXNzKQoreworICAgIHNldFByaW1pdGl2ZVVuaXRUeXBlKENTU1VuaXRUeXBlOjpD
U1NfVkFMVUVfSUQpOworICAgIHN3aXRjaCAodGV4dEVkZ2VUeXBlKSB7CisgICAgY2FzZSBUZXh0
RWRnZVR5cGU6OkxlYWRpbmc6CisgICAgICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlTGVh
ZGluZzsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OlRleHQ6CisgICAg
ICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlVGV4dDsKKyAgICAgICAgYnJlYWs7CisgICAg
Y2FzZSBUZXh0RWRnZVR5cGU6OkNhcEhlaWdodDoKKyAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0g
Q1NTVmFsdWVDYXA7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgVGV4dEVkZ2VUeXBlOjpFeEhl
aWdodDoKKyAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVFeDsKKyAgICAgICAgYnJl
YWs7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OkFscGhhYmV0aWM6CisgICAgICAgIG1fdmFsdWUu
dmFsdWVJRCA9IENTU1ZhbHVlQWxwaGFiZXRpYzsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBU
ZXh0RWRnZVR5cGU6OkNKS0lkZW9ncmFwaGljOgorICAgICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBD
U1NWYWx1ZUlkZW9ncmFwaGljOworICAgICAgICBicmVhazsKKyAgICBjYXNlIFRleHRFZGdlVHlw
ZTo6Q0pLSWRlb2dyYXBoaWNJbms6CisgICAgICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVl
SWRlb2dyYXBoaWNJbms7CisgICAgICAgIGJyZWFrOworICAgIH0KK30KKwordGVtcGxhdGU8PiBp
bmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIFRleHRFZGdlVHlwZSgpIGNvbnN0Cit7
CisgICAgQVNTRVJUKGlzVmFsdWVJRCgpKTsKKyAgICBzd2l0Y2ggKG1fdmFsdWUudmFsdWVJRCkg
eworICAgIGNhc2UgQ1NTVmFsdWVMZWFkaW5nOgorICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBl
OjpMZWFkaW5nOworICAgIGNhc2UgQ1NTVmFsdWVUZXh0OgorICAgICAgICByZXR1cm4gVGV4dEVk
Z2VUeXBlOjpUZXh0OworICAgIGNhc2UgQ1NTVmFsdWVDYXA6CisgICAgICAgIHJldHVybiBUZXh0
RWRnZVR5cGU6OkNhcEhlaWdodDsKKyAgICBjYXNlIENTU1ZhbHVlRXg6CisgICAgICAgIHJldHVy
biBUZXh0RWRnZVR5cGU6OkV4SGVpZ2h0OworICAgIGNhc2UgQ1NTVmFsdWVBbHBoYWJldGljOgor
ICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpBbHBoYWJldGljOworICAgIGNhc2UgQ1NTVmFs
dWVJZGVvZ3JhcGhpYzoKKyAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6Q0pLSWRlb2dyYXBo
aWM7CisgICAgY2FzZSBDU1NWYWx1ZUlkZW9ncmFwaGljSW5rOgorICAgICAgICByZXR1cm4gVGV4
dEVkZ2VUeXBlOjpDSktJZGVvZ3JhcGhpY0luazsKKyAgICBkZWZhdWx0OgorICAgICAgICBBU1NF
UlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6TGVhZGluZzsK
KyAgICB9Cit9CisKICNpZiBFTkFCTEUoQVBQTEVfUEFZKQogdGVtcGxhdGU8PiBpbmxpbmUgQ1NT
UHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEFwcGxlUGF5QnV0dG9uU3R5bGUgZSkK
ICAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbiBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0
aWVzLmpzb24KaW5kZXggYzMxNTc1YWQ0ZGFmLi4xYjMxYjI3OTVmNWUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24KKysrIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1Byb3BlcnRpZXMuanNvbgpAQCAtNTEwLDYgKzUxMCwxNyBAQAogICAgICAgICAgICAg
ICAgICJ1cmwiOiAiaHR0cHM6Ly93d3cudzMub3JnL1RSL2Nzcy1mb250cy00LyNmb250LXN0cmV0
Y2gtcHJvcCIKICAgICAgICAgICAgIH0KICAgICAgICAgfSwKKyAgICAgICAgInRleHQtZWRnZSI6
IHsKKyAgICAgICAgICAgICJjb2RlZ2VuLXByb3BlcnRpZXMiOiB7CisgICAgICAgICAgICAgICAg
ImNvbnZlcnRlciI6ICJUZXh0RWRnZSIsCisgICAgICAgICAgICAgICAgImN1c3RvbS1wYXJzZXIi
OiB0cnVlLAorICAgICAgICAgICAgICAgICJzZXR0aW5ncy1mbGFnIjogImNzc0xlYWRpbmdUcmlt
RW5hYmxlZCIKKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICAic3BlY2lmaWNhdGlvbiI6IHsK
KyAgICAgICAgICAgICAgICAiY2F0ZWdvcnkiOiAiY3NzLWlubGluZSIsCisgICAgICAgICAgICAg
ICAgInVybCI6ICJodHRwczovL3d3dy53My5vcmcvVFIvY3NzLWlubGluZS0zLyN0ZXh0LWVkZ2Vz
IgorICAgICAgICAgICAgfQorICAgICAgICB9LAogICAgICAgICAidGV4dC1yZW5kZXJpbmciOiB7
CiAgICAgICAgICAgICAiaW5oZXJpdGVkIjogdHJ1ZSwKICAgICAgICAgICAgICJ2YWx1ZXMiOiBb
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVLZXl3b3Jkcy5pbiBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCmluZGV4IDkyMWIyNTRiN2Y3OS4u
OGM3YmYzNjc2MGRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVLZXl3
b3Jkcy5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVLZXl3b3Jkcy5pbgpAQCAt
MTA0MCw2ICsxMDQwLDE1IEBAIG5vLXB1bmN0dWF0aW9uCiBhbnRpYWxpYXNlZAogc3VicGl4ZWwt
YW50aWFsaWFzZWQKIAorLy8gdGV4dC1lZGdlCitsZWFkaW5nCisvLyB0ZXh0CitjYXAKK2V4Cisv
LyBpZGVvZ3JhcGhpYworaWRlb2dyYXBoaWMtaW5rCisvLyBhbHBoYWJldGljCisKIC8vIHRleHQt
cmVuZGVyaW5nCiAvL2F1dG8KIG9wdGltaXplU3BlZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9Db21wdXRlZFN0eWxlRXh0cmFjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
b21wdXRlZFN0eWxlRXh0cmFjdG9yLmNwcAppbmRleCBlNjkxNWRlMjFmOTUuLjE0YzM1NDFkNDE3
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NvbXB1dGVkU3R5bGVFeHRyYWN0b3Iu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Db21wdXRlZFN0eWxlRXh0cmFjdG9yLmNwcApA
QCAtMTMwNSw2ICsxMzA1LDE0IEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWVMaXN0PiB2YWx1ZUZvclNj
cm9sbFNuYXBBbGlnbm1lbnQoY29uc3QgU2Nyb2xsU25hcEFsaWduJiBhbGlnCiAgICAgcmV0dXJu
IHZhbHVlOwogfQogCitzdGF0aWMgUmVmPENTU1ZhbHVlTGlzdD4gdmFsdWVGb3JUZXh0RWRnZShj
b25zdCBUZXh0RWRnZSYgdGV4dEVkZ2UpCit7CisgICAgYXV0byB2YWx1ZSA9IENTU1ZhbHVlTGlz
dDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKKyAgICB2YWx1ZS0+YXBwZW5kKENTU1ByaW1pdGl2
ZVZhbHVlOjpjcmVhdGUodGV4dEVkZ2Uub3ZlcikpOworICAgIHZhbHVlLT5hcHBlbmQoQ1NTUHJp
bWl0aXZlVmFsdWU6OmNyZWF0ZSh0ZXh0RWRnZS51bmRlcikpOworICAgIHJldHVybiB2YWx1ZTsK
K30KKwogc3RhdGljIFJlZjxDU1NWYWx1ZT4gd2lsbENoYW5nZVByb3BlcnR5VmFsdWUoY29uc3Qg
V2lsbENoYW5nZURhdGEqIHdpbGxDaGFuZ2VEYXRhKQogewogICAgIGF1dG8mIGNzc1ZhbHVlUG9v
bCA9IENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCk7CkBAIC00MDczLDYgKzQwODEsOCBAQCBSZWZQ
dHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnZhbHVlRm9yUHJvcGVydHlJblN0
eWxlKGNvbnN0IFJlbmRlclN0eQogICAgICAgICByZXR1cm4gdmFsdWVGb3JTY3JvbGxTbmFwVHlw
ZShzdHlsZS5zY3JvbGxTbmFwVHlwZSgpKTsKICAgICBjYXNlIENTU1Byb3BlcnR5T3ZlcmZsb3dB
bmNob3I6CiAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2wuY3JlYXRlVmFsdWUoc3R5bGUub3Zl
cmZsb3dBbmNob3IoKSk7CisgICAgY2FzZSBDU1NQcm9wZXJ0eVRleHRFZGdlOgorICAgICAgICBy
ZXR1cm4gdmFsdWVGb3JUZXh0RWRnZShzdHlsZS50ZXh0RWRnZSgpKTsKIAogI2lmIEVOQUJMRShB
UFBMRV9QQVkpCiAgICAgY2FzZSBDU1NQcm9wZXJ0eUFwcGxlUGF5QnV0dG9uU3R5bGU6CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVy
cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVy
cy5jcHAKaW5kZXggYjE3ZWFmYjA3NDRhLi5lYmRhODNhNTQ2ZTYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5jcHAKQEAg
LTY2ODMsNiArNjY4MywyMiBAQCBSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVTY3JvbGxTbmFwVHlw
ZShDU1NQYXJzZXJUb2tlblJhbmdlJiByYW5nZSkKICAgICByZXR1cm4gdHlwZVZhbHVlOwogfQog
CitSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVUZXh0RWRnZShDU1NQYXJzZXJUb2tlblJhbmdlJiBy
YW5nZSkKK3sKKyAgICBhdXRvIHR5cGVWYWx1ZSA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VT
ZXBhcmF0ZWQoKTsKKworICAgIGF1dG8gZmlyc3RWYWx1ZSA9IGNvbnN1bWVJZGVudDxDU1NWYWx1
ZUxlYWRpbmcsIENTU1ZhbHVlVGV4dCwgQ1NTVmFsdWVDYXAsIENTU1ZhbHVlRXgsIENTU1ZhbHVl
SWRlb2dyYXBoaWMsIENTU1ZhbHVlSWRlb2dyYXBoaWNJbms+KHJhbmdlKTsKKyAgICBpZiAoIWZp
cnN0VmFsdWUpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHR5cGVWYWx1ZS0+YXBwZW5k
KGZpcnN0VmFsdWUucmVsZWFzZU5vbk51bGwoKSk7CisKKyAgICBhdXRvIHNlY29uZFZhbHVlID0g
Y29uc3VtZUlkZW50PENTU1ZhbHVlVGV4dCwgQ1NTVmFsdWVBbHBoYWJldGljLCBDU1NWYWx1ZUlk
ZW9ncmFwaGljLCBDU1NWYWx1ZUlkZW9ncmFwaGljSW5rPihyYW5nZSk7CisgICAgaWYgKHNlY29u
ZFZhbHVlKQorICAgICAgICB0eXBlVmFsdWUtPmFwcGVuZChzZWNvbmRWYWx1ZS5yZWxlYXNlTm9u
TnVsbCgpKTsKKworICAgIHJldHVybiB0eXBlVmFsdWU7Cit9CisKIFJlZlB0cjxDU1NWYWx1ZT4g
Y29uc3VtZUJvcmRlclJhZGl1c0Nvcm5lcihDU1NQYXJzZXJUb2tlblJhbmdlJiByYW5nZSwgQ1NT
UGFyc2VyTW9kZSBjc3NQYXJzZXJNb2RlKQogewogICAgIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1
ZT4gcGFyc2VkVmFsdWUxID0gY29uc3VtZUxlbmd0aE9yUGVyY2VudChyYW5nZSwgY3NzUGFyc2Vy
TW9kZSwgVmFsdWVSYW5nZTo6Tm9uTmVnYXRpdmUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuaCBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmgKaW5kZXggZTczMmUwMDY3YzMx
Li40Y2U0M2RlYjFmYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NT
UHJvcGVydHlQYXJzZXJIZWxwZXJzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9D
U1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuaApAQCAtMjc4LDYgKzI3OCw3IEBAIFJlZlB0cjxDU1NW
YWx1ZT4gY29uc3VtZUNvbnRlbnQoQ1NTUGFyc2VyVG9rZW5SYW5nZSYsIGNvbnN0IENTU1BhcnNl
ckNvbnRleHQmKTsKIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZVBlcnNwZWN0aXZlKENTU1BhcnNl
clRva2VuUmFuZ2UmLCBDU1NQYXJzZXJNb2RlKTsKIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZVNj
cm9sbFNuYXBBbGlnbihDU1NQYXJzZXJUb2tlblJhbmdlJik7CiBSZWZQdHI8Q1NTVmFsdWU+IGNv
bnN1bWVTY3JvbGxTbmFwVHlwZShDU1NQYXJzZXJUb2tlblJhbmdlJik7CitSZWZQdHI8Q1NTVmFs
dWU+IGNvbnN1bWVUZXh0RWRnZShDU1NQYXJzZXJUb2tlblJhbmdlJik7CiBSZWZQdHI8Q1NTVmFs
dWU+IGNvbnN1bWVCb3JkZXJSYWRpdXNDb3JuZXIoQ1NTUGFyc2VyVG9rZW5SYW5nZSYsIENTU1Bh
cnNlck1vZGUpOwogYm9vbCBjb25zdW1lUmFkaWkoUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBo
b3Jpem9udGFsUmFkaWlbNF0sIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gdmVydGljYWxSYWRp
aVs0XSwgQ1NTUGFyc2VyVG9rZW5SYW5nZSYsIENTU1BhcnNlck1vZGUsIGJvb2wgdXNlTGVnYWN5
UGFyc2luZyk7CiBlbnVtIGNsYXNzIENvbnN1bWVSYXkgeyBJbmNsdWRlLCBFeGNsdWRlIH07CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAppbmRleCAy
Y2RkNDMxYTJkNmMuLjYxMTQ0YTkyMTA0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCkBAIC00OSw2ICs0OSw3IEBACiAjaW5jbHVkZSAiU3R5
bGVSZXNvbHZlci5oIgogI2luY2x1ZGUgIlN0eWxlU2Nyb2xsU25hcFBvaW50cy5oIgogI2luY2x1
ZGUgIlN0eWxlU2VsZkFsaWdubWVudERhdGEuaCIKKyNpbmNsdWRlICJTdHlsZVRleHRFZGdlLmgi
CiAjaW5jbHVkZSAiU3R5bGVUcmVlUmVzb2x2ZXIuaCIKICNpbmNsdWRlICJXaWxsQ2hhbmdlRGF0
YS5oIgogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CkBAIC0yODA1LDYgKzI4MDYsMjEgQEAg
Ym9vbCBSZW5kZXJTdHlsZTo6aGFzU25hcFBvc2l0aW9uKCkgY29uc3QKICAgICByZXR1cm4gYWxp
Z25tZW50LmJsb2NrQWxpZ24gIT0gU2Nyb2xsU25hcEF4aXNBbGlnblR5cGU6Ok5vbmUgfHwgYWxp
Z25tZW50LmlubGluZUFsaWduICE9IFNjcm9sbFNuYXBBeGlzQWxpZ25UeXBlOjpOb25lOwogfQog
CitUZXh0RWRnZSBSZW5kZXJTdHlsZTo6dGV4dEVkZ2UoKSBjb25zdAoreworICAgIHJldHVybiBt
X3JhcmVJbmhlcml0ZWREYXRhLT50ZXh0RWRnZTsKK30KKwordm9pZCBSZW5kZXJTdHlsZTo6c2V0
VGV4dEVkZ2UoVGV4dEVkZ2UgdGV4dEVkZ2VWYWx1ZSkKK3sKKyAgICBTRVRfVkFSKG1fcmFyZUlu
aGVyaXRlZERhdGEsIHRleHRFZGdlLCB0ZXh0RWRnZVZhbHVlKTsKK30KKworVGV4dEVkZ2UgUmVu
ZGVyU3R5bGU6OmluaXRpYWxUZXh0RWRnZSgpCit7CisgICAgcmV0dXJuIHsgVGV4dEVkZ2VUeXBl
OjpMZWFkaW5nLCBUZXh0RWRnZVR5cGU6OkxlYWRpbmcgfTsKK30KKwogYm9vbCBSZW5kZXJTdHls
ZTo6aGFzUmVmZXJlbmNlRmlsdGVyT25seSgpIGNvbnN0CiB7CiAgICAgaWYgKCFoYXNGaWx0ZXIo
KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHls
ZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKaW5kZXgg
M2NkNDc0MzkzZTYzLi5lY2VmYzI1NjI1ZGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9SZW5kZXJTdHlsZS5oCkBAIC0xMjUsNiArMTI1LDggQEAgY2xhc3MgVHJhbnNmb3Jt
YXRpb25NYXRyaXg7CiBzdHJ1Y3QgU2Nyb2xsU25hcEFsaWduOwogc3RydWN0IFNjcm9sbFNuYXBU
eXBlOwogCitzdHJ1Y3QgVGV4dEVkZ2U7CisKIHVzaW5nIFBzZXVkb1N0eWxlQ2FjaGUgPSBWZWN0
b3I8c3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0eWxlPiwgND47CiAKIHRlbXBsYXRlPHR5cGVuYW1l
IFQsIHR5cGVuYW1lIFU+IGlubGluZSBib29sIGNvbXBhcmVFcXVhbChjb25zdCBUJiB0LCBjb25z
dCBVJiB1KSB7IHJldHVybiB0ID09IHN0YXRpY19jYXN0PGNvbnN0IFQmPih1KTsgfQpAQCAtMzk3
LDYgKzM5OSw3IEBAIHB1YmxpYzoKICAgICBUZXh0SnVzdGlmeSB0ZXh0SnVzdGlmeSgpIGNvbnN0
IHsgcmV0dXJuIHN0YXRpY19jYXN0PFRleHRKdXN0aWZ5PihtX3JhcmVJbmhlcml0ZWREYXRhLT50
ZXh0SnVzdGlmeSk7IH0KIAogICAgIExlYWRpbmdUcmltIGxlYWRpbmdUcmltKCkgY29uc3QgeyBy
ZXR1cm4gc3RhdGljX2Nhc3Q8TGVhZGluZ1RyaW0+KG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPmxl
YWRpbmdUcmltKTsgfQorICAgIFRleHRFZGdlIHRleHRFZGdlKCkgY29uc3Q7CiAKICAgICBjb25z
dCBMZW5ndGgmIHdvcmRTcGFjaW5nKCkgY29uc3Q7CiAgICAgZmxvYXQgbGV0dGVyU3BhY2luZygp
IGNvbnN0OwpAQCAtMTA1Niw2ICsxMDU5LDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0VGV4dEp1
c3RpZnkoVGV4dEp1c3RpZnkgdikgeyBTRVRfVkFSKG1fcmFyZUluaGVyaXRlZERhdGEsIHRleHRK
dXN0aWZ5LCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4odikpOyB9CiAKICAgICB2b2lkIHNldExlYWRp
bmdUcmltKExlYWRpbmdUcmltIHZhbHVlKSB7IFNFVF9WQVIobV9yYXJlTm9uSW5oZXJpdGVkRGF0
YSwgbGVhZGluZ1RyaW0sIHN0YXRpY19jYXN0PHVuc2lnbmVkPih2YWx1ZSkpOyB9CisgICAgdm9p
ZCBzZXRUZXh0RWRnZShUZXh0RWRnZSk7CiAKICNpZiBFTkFCTEUoVEVYVF9BVVRPU0laSU5HKQog
ICAgIHZvaWQgc2V0U3BlY2lmaWVkTGluZUhlaWdodChMZW5ndGgmJik7CkBAIC0xNjcxLDYgKzE2
NzUsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIExlbmd0aCBpbml0aWFsUGFkZGluZygpIHsgcmV0
dXJuIExlbmd0aChMZW5ndGhUeXBlOjpGaXhlZCk7IH0KICAgICBzdGF0aWMgTGVuZ3RoIGluaXRp
YWxUZXh0SW5kZW50KCkgeyByZXR1cm4gTGVuZ3RoKExlbmd0aFR5cGU6OkZpeGVkKTsgfQogICAg
IHN0YXRpYyBMZWFkaW5nVHJpbSBpbml0aWFsTGVhZGluZ1RyaW0oKSB7IHJldHVybiBMZWFkaW5n
VHJpbTo6Tm9ybWFsOyB9CisgICAgc3RhdGljIFRleHRFZGdlIGluaXRpYWxUZXh0RWRnZSgpOwog
ICAgIHN0YXRpYyBMZW5ndGggaW5pdGlhbFplcm9MZW5ndGgoKSB7IHJldHVybiBMZW5ndGgoTGVu
Z3RoVHlwZTo6Rml4ZWQpOyB9CiAgICAgc3RhdGljIExlbmd0aCBpbml0aWFsT25lTGVuZ3RoKCkg
eyByZXR1cm4gTGVuZ3RoKDEsIExlbmd0aFR5cGU6OkZpeGVkKTsgfQogICAgIHN0YXRpYyB1bnNp
Z25lZCBzaG9ydCBpbml0aWFsV2lkb3dzKCkgeyByZXR1cm4gMjsgfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5jcHAKaW5k
ZXggYWIxYzI2YWRjMmJhLi42MzIzZTkwODMzZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcApAQCAtMTE2MCw2
ICsxMTYwLDIwIEBAIFRleHRTdHJlYW0mIG9wZXJhdG9yPDwoVGV4dFN0cmVhbSYgdHMsIExlYWRp
bmdUcmltIGxlYWRpbmdUcmltKQogICAgIHJldHVybiB0czsKIH0KIAorVGV4dFN0cmVhbSYgb3Bl
cmF0b3I8PChUZXh0U3RyZWFtJiB0cywgVGV4dEVkZ2VUeXBlIHRleHRFZGdlVHlwZSkKK3sKKyAg
ICBzd2l0Y2ggKHRleHRFZGdlVHlwZSkgeworICAgIGNhc2UgVGV4dEVkZ2VUeXBlOjpMZWFkaW5n
OiB0cyA8PCAiaGFsZi1sZWFkaW5nIjsgYnJlYWs7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OlRl
eHQ6IHRzIDw8ICJ0ZXh0LW92ZXIvdW5kZXIgYmFzZWxpbmUiOyBicmVhazsKKyAgICBjYXNlIFRl
eHRFZGdlVHlwZTo6Q2FwSGVpZ2h0OiB0cyA8PCAiY2FwLWhlaWdodCBiYXNlbGluZSI7IGJyZWFr
OworICAgIGNhc2UgVGV4dEVkZ2VUeXBlOjpFeEhlaWdodDogdHMgPDwgIngtaGVpZ2h0IGJhc2Vs
aW5lIjsgYnJlYWs7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OkFscGhhYmV0aWM6IHRzIDw8ICJh
bHBoYWJldGljIGJhc2VsaW5lIjsgYnJlYWs7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OkNKS0lk
ZW9ncmFwaGljOiB0cyA8PCAiaWRlb2dyYXBoaWMtb3ZlciBiYXNlbGluZSI7IGJyZWFrOworICAg
IGNhc2UgVGV4dEVkZ2VUeXBlOjpDSktJZGVvZ3JhcGhpY0luazogdHMgPDwgImlkZW9ncmFwaGlj
LWluay1vdmVyL2luay11bmRlciBiYXNlbGluZSI7IGJyZWFrOworICAgIH0KKyAgICByZXR1cm4g
dHM7Cit9CisKIFRleHRTdHJlYW0mIG9wZXJhdG9yPDwoVGV4dFN0cmVhbSYgdHMsIFRleHRab29t
IHpvb20pCiB7CiAgICAgc3dpdGNoICh6b29tKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oCmluZGV4IDRmMmVhMTJlMTY0
OC4uMTg1NzVkMWQ0ODg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5
bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaApAQCAtNzg4LDYgKzc4OCwxNiBAQCBlbnVtIGNs
YXNzIExlYWRpbmdUcmltIDogdWludDhfdCB7CiAgICAgQm90aAogfTsKIAorZW51bSBjbGFzcyBU
ZXh0RWRnZVR5cGUgOiB1aW50OF90IHsKKyAgICBMZWFkaW5nLAorICAgIFRleHQsCisgICAgQ2Fw
SGVpZ2h0LAorICAgIEV4SGVpZ2h0LAorICAgIEFscGhhYmV0aWMsCisgICAgQ0pLSWRlb2dyYXBo
aWMsCisgICAgQ0pLSWRlb2dyYXBoaWNJbmsKK307CisKIGVudW0gY2xhc3MgVGV4dFpvb20gOiB1
aW50OF90IHsKICAgICBOb3JtYWwsCiAgICAgUmVzZXQKQEAgLTEzMjQsNiArMTMzNCw3IEBAIFdU
Rjo6VGV4dFN0cmVhbSYgb3BlcmF0b3I8PChXVEY6OlRleHRTdHJlYW0mLCBUZXh0U2VjdXJpdHkp
OwogV1RGOjpUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFdURjo6VGV4dFN0cmVhbSYsIFRleHRUcmFu
c2Zvcm0pOwogV1RGOjpUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFdURjo6VGV4dFN0cmVhbSYsIFRl
eHRVbmRlcmxpbmVQb3NpdGlvbik7CiBXVEY6OlRleHRTdHJlYW0mIG9wZXJhdG9yPDwoV1RGOjpU
ZXh0U3RyZWFtJiwgTGVhZGluZ1RyaW0pOworV1RGOjpUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFdU
Rjo6VGV4dFN0cmVhbSYsIFRleHRFZGdlVHlwZSk7CiBXVEY6OlRleHRTdHJlYW0mIG9wZXJhdG9y
PDwoV1RGOjpUZXh0U3RyZWFtJiwgVGV4dFpvb20pOwogV1RGOjpUZXh0U3RyZWFtJiBvcGVyYXRv
cjw8KFdURjo6VGV4dFN0cmVhbSYsIFRyYW5zZm9ybUJveCk7CiBXVEY6OlRleHRTdHJlYW0mIG9w
ZXJhdG9yPDwoV1RGOjpUZXh0U3RyZWFtJiwgVHJhbnNmb3JtU3R5bGUzRCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0
YS5jcHAKaW5kZXggYWJhMjE5ZTNlMWI3Li5hMmRhZTRlY2ZhOTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5j
cHAKQEAgLTQ3LDYgKzQ3LDcgQEAgc3RydWN0IEdyZWF0ZXJUaGFuT3JTYW1lU2l6ZUFzU3R5bGVS
YXJlSW5oZXJpdGVkRGF0YSA6IHB1YmxpYyBSZWZDb3VudGVkPEdyZWF0ZXIKICAgICBMZW5ndGgg
bGVuZ3Roc1syXTsKICAgICBmbG9hdCBzZWNvbmRGbG9hdDsKICAgICBUZXh0VW5kZXJsaW5lT2Zm
c2V0IG9mZnNldDsKKyAgICBUZXh0RWRnZSB0ZXh0RWRnZTsKICAgICB2b2lkKiBjdXN0b21Qcm9w
ZXJ0eURhdGFSZWZzWzFdOwogICAgIHVuc2lnbmVkIGJpdGZpZWxkc1s3XTsKICAgICBzaG9ydCBw
YWdlZE1lZGlhU2hvcnRzWzJdOwpAQCAtOTAsNiArOTEsNyBAQCBTdHlsZVJhcmVJbmhlcml0ZWRE
YXRhOjpTdHlsZVJhcmVJbmhlcml0ZWREYXRhKCkKICAgICAsIGluZGVudChSZW5kZXJTdHlsZTo6
aW5pdGlhbFRleHRJbmRlbnQoKSkKICAgICAsIGVmZmVjdGl2ZVpvb20oUmVuZGVyU3R5bGU6Omlu
aXRpYWxab29tKCkpCiAgICAgLCB0ZXh0VW5kZXJsaW5lT2Zmc2V0KFJlbmRlclN0eWxlOjppbml0
aWFsVGV4dFVuZGVybGluZU9mZnNldCgpKQorICAgICwgdGV4dEVkZ2UoUmVuZGVyU3R5bGU6Omlu
aXRpYWxUZXh0RWRnZSgpKQogICAgICwgbWl0ZXJMaW1pdChSZW5kZXJTdHlsZTo6aW5pdGlhbFN0
cm9rZU1pdGVyTGltaXQoKSkKICAgICAsIGN1c3RvbVByb3BlcnRpZXMoU3R5bGVDdXN0b21Qcm9w
ZXJ0eURhdGE6OmNyZWF0ZSgpKQogICAgICwgd2lkb3dzKFJlbmRlclN0eWxlOjppbml0aWFsV2lk
b3dzKCkpCkBAIC0xODYsNiArMTg4LDcgQEAgaW5saW5lIFN0eWxlUmFyZUluaGVyaXRlZERhdGE6
OlN0eWxlUmFyZUluaGVyaXRlZERhdGEoY29uc3QgU3R5bGVSYXJlSW5oZXJpdGVkRGEKICAgICAs
IGluZGVudChvLmluZGVudCkKICAgICAsIGVmZmVjdGl2ZVpvb20oby5lZmZlY3RpdmVab29tKQog
ICAgICwgdGV4dFVuZGVybGluZU9mZnNldChvLnRleHRVbmRlcmxpbmVPZmZzZXQpCisgICAgLCB0
ZXh0RWRnZShvLnRleHRFZGdlKQogICAgICwgbWl0ZXJMaW1pdChvLm1pdGVyTGltaXQpCiAgICAg
LCBjdXN0b21Qcm9wZXJ0aWVzKG8uY3VzdG9tUHJvcGVydGllcykKICAgICAsIHdpZG93cyhvLndp
ZG93cykKQEAgLTI5Nyw2ICszMDAsNyBAQCBib29sIFN0eWxlUmFyZUluaGVyaXRlZERhdGE6Om9w
ZXJhdG9yPT0oY29uc3QgU3R5bGVSYXJlSW5oZXJpdGVkRGF0YSYgbykgY29uc3QKICAgICAgICAg
JiYgaW5kZW50ID09IG8uaW5kZW50CiAgICAgICAgICYmIGVmZmVjdGl2ZVpvb20gPT0gby5lZmZl
Y3RpdmVab29tCiAgICAgICAgICYmIHRleHRVbmRlcmxpbmVPZmZzZXQgPT0gby50ZXh0VW5kZXJs
aW5lT2Zmc2V0CisgICAgICAgICYmIHRleHRFZGdlID09IG8udGV4dEVkZ2UKICAgICAgICAgJiYg
d29yZFNwYWNpbmcgPT0gby53b3JkU3BhY2luZwogICAgICAgICAmJiBtaXRlckxpbWl0ID09IG8u
bWl0ZXJMaW1pdAogICAgICAgICAmJiB3aWRvd3MgPT0gby53aWRvd3MKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmggYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5oCmlu
ZGV4IDQxYWFjNjU4ZjEzMC4uMWMwYmFkODg1ZjZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmgKQEAgLTI4LDYg
KzI4LDcgQEAKICNpbmNsdWRlICJSZW5kZXJTdHlsZUNvbnN0YW50cy5oIgogI2luY2x1ZGUgIlN0
eWxlQ29sb3IuaCIKICNpbmNsdWRlICJTdHlsZUN1c3RvbVByb3BlcnR5RGF0YS5oIgorI2luY2x1
ZGUgIlN0eWxlVGV4dEVkZ2UuaCIKICNpbmNsdWRlICJUYWJTaXplLmgiCiAjaW5jbHVkZSAiVGV4
dFVuZGVybGluZU9mZnNldC5oIgogI2luY2x1ZGUgIlRvdWNoQWN0aW9uLmgiCkBAIC05Niw2ICs5
Nyw4IEBAIHB1YmxpYzoKICAgICBmbG9hdCBlZmZlY3RpdmVab29tOwogCiAgICAgVGV4dFVuZGVy
bGluZU9mZnNldCB0ZXh0VW5kZXJsaW5lT2Zmc2V0OworCisgICAgVGV4dEVkZ2UgdGV4dEVkZ2U7
CiAgICAgCiAgICAgTGVuZ3RoIHdvcmRTcGFjaW5nOwogICAgIGZsb2F0IG1pdGVyTGltaXQ7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVUZXh0RWRnZS5o
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlVGV4dEVkZ2UuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjg0NzZhZThjOTBjOAotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVRleHRFZGdlLmgK
QEAgLTAsMCArMSw0NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMiBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSAi
UmVuZGVyU3R5bGVDb25zdGFudHMuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitzdHJ1Y3Qg
VGV4dEVkZ2UgeworICAgIFRleHRFZGdlVHlwZSBvdmVyIHsgVGV4dEVkZ2VUeXBlOjpMZWFkaW5n
IH07CisgICAgVGV4dEVkZ2VUeXBlIHVuZGVyIHsgVGV4dEVkZ2VUeXBlOjpMZWFkaW5nIH07Cit9
OworCitpbmxpbmUgYm9vbCBvcGVyYXRvcj09KGNvbnN0IFRleHRFZGdlJiBhLCBjb25zdCBUZXh0
RWRnZSYgYikKK3sKKyAgICByZXR1cm4gYS5vdmVyID09IGIub3ZlciAmJiBhLnVuZGVyID09IGIu
dW5kZXI7Cit9CisKK2lubGluZSBib29sIG9wZXJhdG9yIT0oY29uc3QgVGV4dEVkZ2UmIGEsIGNv
bnN0IFRleHRFZGdlJiBiKSB7IHJldHVybiAhKGEgPT0gYik7IH0KKworfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29u
dmVydGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaApp
bmRleCBiNmUzY2JhMzJhOWMuLjdmMTU0OTBhMjY2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5
bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmgKQEAgLTYyLDYgKzYyLDcgQEAKICNpbmNsdWRlICJT
dHlsZUJ1aWxkZXJTdGF0ZS5oIgogI2luY2x1ZGUgIlN0eWxlR3JpZERhdGEuaCIKICNpbmNsdWRl
ICJTdHlsZVNjcm9sbFNuYXBQb2ludHMuaCIKKyNpbmNsdWRlICJTdHlsZVRleHRFZGdlLmgiCiAj
aW5jbHVkZSAiVGFiU2l6ZS5oIgogI2luY2x1ZGUgIlRvdWNoQWN0aW9uLmgiCiAjaW5jbHVkZSAi
VHJhbnNmb3JtRnVuY3Rpb25zLmgiCkBAIC0xMTUsNiArMTE2LDcgQEAgcHVibGljOgogICAgIHN0
YXRpYyBUZXh0VW5kZXJsaW5lT2Zmc2V0IGNvbnZlcnRUZXh0VW5kZXJsaW5lT2Zmc2V0KEJ1aWxk
ZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CiAgICAgc3RhdGljIFRleHREZWNvcmF0aW9uVGhp
Y2tuZXNzIGNvbnZlcnRUZXh0RGVjb3JhdGlvblRoaWNrbmVzcyhCdWlsZGVyU3RhdGUmLCBjb25z
dCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyBSZWZQdHI8U3R5bGVSZWZsZWN0aW9uPiBjb252ZXJ0
UmVmbGVjdGlvbihCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOworICAgIHN0YXRpYyBU
ZXh0RWRnZSBjb252ZXJ0VGV4dEVkZ2UoQnVpbGRlclN0YXRlJiwgY29uc3QgQ1NTVmFsdWUmKTsK
ICAgICBzdGF0aWMgSW50U2l6ZSBjb252ZXJ0SW5pdGlhbExldHRlcihCdWlsZGVyU3RhdGUmLCBj
b25zdCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyBmbG9hdCBjb252ZXJ0VGV4dFN0cm9rZVdpZHRo
KEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CiAgICAgc3RhdGljIE9wdGlvblNldDxM
aW5lQm94Q29udGFpbj4gY29udmVydExpbmVCb3hDb250YWluKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0
IENTU1ZhbHVlJik7CkBAIC04NDIsNiArODQ0LDU1IEBAIGlubGluZSBSZWZQdHI8U3R5bGVSZWZs
ZWN0aW9uPiBCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0UmVmbGVjdGlvbihCdWlsZGVyU3RhdGUm
CiAgICAgcmV0dXJuIHJlZmxlY3Rpb247CiB9CiAKK2lubGluZSBUZXh0RWRnZSBCdWlsZGVyQ29u
dmVydGVyOjpjb252ZXJ0VGV4dEVkZ2UoQnVpbGRlclN0YXRlJiwgY29uc3QgQ1NTVmFsdWUmIHZh
bHVlKQoreworICAgIGF1dG8mIHZhbHVlcyA9IGRvd25jYXN0PENTU1ZhbHVlTGlzdD4odmFsdWUp
OworICAgIGF1dG8mIGZpcnN0VmFsdWUgPSBkb3duY2FzdDxDU1NQcmltaXRpdmVWYWx1ZT4oKnZh
bHVlcy5pdGVtKDApKTsKKworICAgIGF1dG8gb3ZlclZhbHVlID0gWyZdIHsKKyAgICAgICAgc3dp
dGNoIChmaXJzdFZhbHVlLnZhbHVlSUQoKSkgeworICAgICAgICBjYXNlIENTU1ZhbHVlTGVhZGlu
ZzoKKyAgICAgICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OkxlYWRpbmc7CisgICAgICAgIGNh
c2UgQ1NTVmFsdWVUZXh0OgorICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6VGV4dDsK
KyAgICAgICAgY2FzZSBDU1NWYWx1ZUNhcDoKKyAgICAgICAgICAgIHJldHVybiBUZXh0RWRnZVR5
cGU6OkNhcEhlaWdodDsKKyAgICAgICAgY2FzZSBDU1NWYWx1ZUV4OgorICAgICAgICAgICAgcmV0
dXJuIFRleHRFZGdlVHlwZTo6RXhIZWlnaHQ7CisgICAgICAgIGNhc2UgQ1NTVmFsdWVJZGVvZ3Jh
cGhpYzoKKyAgICAgICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OkNKS0lkZW9ncmFwaGljOwor
ICAgICAgICBjYXNlIENTU1ZhbHVlSWRlb2dyYXBoaWNJbms6CisgICAgICAgICAgICByZXR1cm4g
VGV4dEVkZ2VUeXBlOjpDSktJZGVvZ3JhcGhpY0luazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAg
ICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdl
VHlwZTo6TGVhZGluZzsKKyAgICAgICAgfQorICAgIH07CisKKyAgICBhdXRvIHVuZGVyVmFsdWUg
PSBbJl0geworICAgICAgICBpZiAoZmlyc3RWYWx1ZS52YWx1ZUlEKCkgPT0gQ1NTVmFsdWVMZWFk
aW5nKQorICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6TGVhZGluZzsKKyAgICAgICAg
aWYgKHZhbHVlcy5sZW5ndGgoKSA9PSAxKQorICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlw
ZTo6VGV4dDsKKworICAgICAgICBhdXRvJiBzZWNvbmRWYWx1ZSA9IGRvd25jYXN0PENTU1ByaW1p
dGl2ZVZhbHVlPigqdmFsdWVzLml0ZW0oMSkpOworICAgICAgICBzd2l0Y2ggKHNlY29uZFZhbHVl
LnZhbHVlSUQoKSkgeworICAgICAgICBjYXNlIENTU1ZhbHVlVGV4dDoKKyAgICAgICAgICAgIHJl
dHVybiBUZXh0RWRnZVR5cGU6OlRleHQ7CisgICAgICAgIGNhc2UgQ1NTVmFsdWVBbHBoYWJldGlj
OgorICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6QWxwaGFiZXRpYzsKKyAgICAgICAg
Y2FzZSBDU1NWYWx1ZUlkZW9ncmFwaGljOgorICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlw
ZTo6Q0pLSWRlb2dyYXBoaWM7CisgICAgICAgIGNhc2UgQ1NTVmFsdWVJZGVvZ3JhcGhpY0luazoK
KyAgICAgICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OkNKS0lkZW9ncmFwaGljSW5rOworICAg
ICAgICBkZWZhdWx0OgorICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAg
ICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpMZWFkaW5nOworICAgICAgICB9CisgICAgfTsKKyAg
ICByZXR1cm4geyBvdmVyVmFsdWUoKSwgdW5kZXJWYWx1ZSgpIH07Cit9CisKIGlubGluZSBJbnRT
aXplIEJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRJbml0aWFsTGV0dGVyKEJ1aWxkZXJTdGF0ZSYs
IGNvbnN0IENTU1ZhbHVlJiB2YWx1ZSkKIHsKICAgICBhdXRvJiBwcmltaXRpdmVWYWx1ZSA9IGRv
d25jYXN0PENTU1ByaW1pdGl2ZVZhbHVlPih2YWx1ZSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>463778</attachid>
            <date>2022-11-28 20:52:56 -0800</date>
            <delta_ts>2022-11-29 11:00:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-248448-20221128205255.patch</filename>
            <type>text/plain</type>
            <size>26278</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSBlOTA0ZDgyNWE5MjYxNDQ2YmU2OGM2MjdjZGNmOTBmNjc0YjM2YjQ2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IE1vbiwgMjggTm92IDIwMjIgMTc6MzM6MjIgLTA4MDAKU3ViamVjdDogW1BBVENIXSBbbGVhZGlu
Zy10cmltXSBBZGQgc3VwcG9ydCBmb3IgcGFyc2luZyAidGV4dC1lZGdlIiBDU1MKIHByb3BlcnR5
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNDg0NDgKClJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgoKV0lQLgoKKiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2o6CiogU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZh
bHVlTWFwcGluZ3MuaDoKKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVW
YWx1ZSk6CihXZWJDb3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgVGV4dEVkZ2UgY29u
c3QpOgoqIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb246CiogU291cmNlL1dl
YkNvcmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW46CiogU291cmNlL1dlYkNvcmUvY3NzL0NvbXB1
dGVkU3R5bGVFeHRyYWN0b3IuY3BwOgooV2ViQ29yZTo6dmFsdWVGb3JUZXh0RWRnZSk6CihXZWJD
b3JlOjpDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvclByb3BlcnR5SW5TdHlsZSk6Ciog
U291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuY3BwOgoo
V2ViQ29yZTo6Q1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzOjpjb25zdW1lVGV4dEVkZ2UpOgoqIFNv
dXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmg6CiogU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcDoKKFdlYkNvcmU6OlJl
bmRlclN0eWxlOjp0ZXh0RWRnZSBjb25zdCk6CihXZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0VGV4
dEVkZ2UpOgooV2ViQ29yZTo6UmVuZGVyU3R5bGU6OmluaXRpYWxUZXh0RWRnZSk6CiogU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmg6CiogU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcDoKKFdlYkNvcmU6Om9wZXJh
dG9yPDwpOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0
YW50cy5oOgoqIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0
ZWREYXRhLmNwcDoKKFdlYkNvcmU6OlN0eWxlUmFyZUluaGVyaXRlZERhdGE6OlN0eWxlUmFyZUlu
aGVyaXRlZERhdGEpOgooV2ViQ29yZTo6U3R5bGVSYXJlSW5oZXJpdGVkRGF0YTo6b3BlcmF0b3I9
PSBjb25zdCk6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVy
aXRlZERhdGEuaDoKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVUZXh0RWRn
ZS5oOiBBZGRlZC4KKFdlYkNvcmU6Om9wZXJhdG9yPT0pOgooV2ViQ29yZTo6b3BlcmF0b3IhPSk6
CiogU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmg6CihXZWJDb3Jl
OjpTdHlsZTo6QnVpbGRlckNvbnZlcnRlcjo6Y29udmVydFRleHRFZGdlKToKLS0tCiBTb3VyY2Uv
V2ViQ29yZS9IZWFkZXJzLmNtYWtlICAgICAgICAgICAgICAgICAgfCAgMSArCiAuLi4vV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogfCAgNCArKwogLi4uL1dlYkNvcmUv
Y3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaCAgIHwgNTMgKysrKysrKysrKysrKysrKysr
KwogU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbiAgICAgICAgIHwgMTEgKysr
KwogU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW4gICAgICAgIHwgIDkgKysr
KwogU291cmNlL1dlYkNvcmUvY3NzL0NvbXB1dGVkU3R5bGVFeHRyYWN0b3IuY3BwIHwgMTAgKysr
KwogLi4uL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmNwcCAgIHwgMTYgKysr
KysrCiAuLi4vY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuaCAgICAgfCAgMSAr
CiAuLi4vV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwICAgfCAxNiArKysr
KysKIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oICB8ICA1ICsr
CiAuLi4vcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcCAgfCAxNCArKysr
KwogLi4uL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oICAgIHwgMTEgKysr
KwogLi4uL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwICAgICAgICAgIHwgIDQgKysK
IC4uLi9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5oICB8ICAzICsrCiAu
Li4vV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVUZXh0RWRnZS5oICAgfCA0NCArKysrKysr
KysrKysrKysKIFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oICB8
IDUxICsrKysrKysrKysrKysrKysrKwogMTYgZmlsZXMgY2hhbmdlZCwgMjUzIGluc2VydGlvbnMo
KykKIGNyZWF0ZSBtb2RlIDEwMDY0NCBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5
bGVUZXh0RWRnZS5oCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBi
L1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKaW5kZXggMDIzNWQzNjMxYjlhLi40MDk4MzQy
MGZjZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKKysrIGIvU291
cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQpAQCAtMjA0Niw2ICsyMDQ2LDcgQEAgc2V0KFdlYkNv
cmVfUFJJVkFURV9GUkFNRVdPUktfSEVBREVSUwogICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZVNj
cm9sbFNuYXBQb2ludHMuaAogICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZVNlbGZBbGlnbm1lbnRE
YXRhLmgKICAgICByZW5kZXJpbmcvc3R5bGUvU3R5bGVTdXJyb3VuZERhdGEuaAorICAgIHJlbmRl
cmluZy9zdHlsZS9TdHlsZVRleHRFZGdlLmgKICAgICByZW5kZXJpbmcvc3R5bGUvU3R5bGVUcmFu
c2Zvcm1EYXRhLmgKICAgICByZW5kZXJpbmcvc3R5bGUvU3R5bGVWaXN1YWxEYXRhLmgKICAgICBy
ZW5kZXJpbmcvc3R5bGUvVGV4dERlY29yYXRpb25UaGlja25lc3MuaApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDQwY2MxYjM2ODUw
OC4uNDhiYzhkYjE1YTM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCkBAIC00ODgzLDYgKzQ4ODMsNyBAQAogCQlERDE3QzA4MjI4NkVD
NTc0MDBENjBCNTggLyogYnVpbGQgaW4gQ29weSBQREYuanMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gREQxN0MwN0MyODZFQzUxOTAwRDYwQjU4IC8qIGJ1aWxkICovOyB9Owog
CQlERDE3QzA4MzI4NkVDNTc3MDBENjBCNTggLyogTElDRU5TRSBpbiBDb3B5IFBERi5qcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERDE3QzA4MDI4NkVDNTFCMDBENjBCNTgg
LyogTElDRU5TRSAqLzsgfTsKIAkJREQxN0MwODQyODZFQzU3QTAwRDYwQjU4IC8qIHdlYiBpbiBD
b3B5IFBERi5qcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERDE3QzA3RTI4
NkVDNTFBMDBENjBCNTggLyogd2ViICovOyB9OworCQlERDFDNzc5MDI5MzU0Qzc3MDAzQkQ3OUIg
LyogU3R5bGVUZXh0RWRnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gREQxQzc3OEYyOTM1NEM3NTAwM0JENzlCIC8qIFN0eWxlVGV4dEVkZ2UuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlERDc2M0JCMjA5
OTJDMkM5MDA3NDBCOEUgLyogbGlieG1sMi5keWxpYiBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERENzYzQkIxMDk5MkMyQzkwMDc0MEI4RSAvKiBsaWJ4
bWwyLmR5bGliICovOyB9OwogCQlERDdDREYyNTBBMjNDRjk4MDAwNjk5MjggLyogQ1NTVW5rbm93
blJ1bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4
MEU2Q0NFMEExOTg5Q0EwMDdGQjhDNSAvKiBDU1NVbmtub3duUnVsZS5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUREOEEzMEI0MjkxREZDOEYwMEFE
NTM3QyAvKiBCbG9ja0xheW91dFN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBERDhBMzBCMzI5MURGQzhGMDBBRDUzN0MgLyogQmxvY2tMYXlvdXRT
dGF0ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBA
IC0xNzEyNiw2ICsxNzEyNyw3IEBACiAJCUREMTdDMDdDMjg2RUM1MTkwMEQ2MEI1OCAvKiBidWls
ZCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZvbGRl
cjsgbmFtZSA9IGJ1aWxkOyBwYXRoID0gLi4vLi4vVGhpcmRQYXJ0eS9wZGZqcy9idWlsZDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJREQxN0MwN0UyODZFQzUxQTAwRDYwQjU4IC8qIHdl
YiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZvbGRl
cjsgbmFtZSA9IHdlYjsgcGF0aCA9IC4uLy4uL1RoaXJkUGFydHkvcGRmanMvd2ViOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlERDE3QzA4MDI4NkVDNTFCMDBENjBCNTggLyogTElDRU5T
RSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IG5hbWUgPSBMSUNFTlNFOyBwYXRoID0gLi4vLi4vVGhpcmRQYXJ0eS9wZGZqcy9MSUNFTlNFOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlERDFDNzc4RjI5MzU0Qzc1MDAzQkQ3OUIgLyog
U3R5bGVUZXh0RWRnZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdHlsZVRl
eHRFZGdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCURENzYzQkIxMDk5MkMyQzkw
MDc0MEI4RSAvKiBsaWJ4bWwyLmR5bGliICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gImNvbXBpbGVkLm1hY2gtby5keWxpYiI7IG5hbWUgPSBsaWJ4bWwy
LmR5bGliOyBwYXRoID0gL3Vzci9saWIvbGlieG1sMi5keWxpYjsgc291cmNlVHJlZSA9ICI8YWJz
b2x1dGU+IjsgfTsKIAkJREQ4QTMwQjMyOTFERkM4RjAwQUQ1MzdDIC8qIEJsb2NrTGF5b3V0U3Rh
dGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmxvY2tMYXlvdXRTdGF0ZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlEREIwNEYzNzI3OEU1NTI3MDA4RDM2Nzgg
LyogbGliV1RGLmEgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBhcmNoaXZlLmFyOyBwYXRoID0gbGliV1RGLmE7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9E
VUNUU19ESVI7IH07CkBAIC0zMDU5Nyw2ICszMDU5OSw3IEBACiAJCQkJOUQ2MzgwMEYxQUYxNkUx
NjAwMzFBMTVDIC8qIFN0eWxlU2VsZkFsaWdubWVudERhdGEuaCAqLywKIAkJCQlCQzVFQjVFNjBF
ODFCRkVGMDBCMjU5NjUgLyogU3R5bGVTdXJyb3VuZERhdGEuY3BwICovLAogCQkJCUJDNUVCNUU0
MEU4MUJGNkQwMEIyNTk2NSAvKiBTdHlsZVN1cnJvdW5kRGF0YS5oICovLAorCQkJCUREMUM3NzhG
MjkzNTRDNzUwMDNCRDc5QiAvKiBTdHlsZVRleHRFZGdlLmggKi8sCiAJCQkJQkM1RUI4MEQwRTgx
RjJDRTAwQjI1OTY1IC8qIFN0eWxlVHJhbnNmb3JtRGF0YS5jcHAgKi8sCiAJCQkJQkM1RUI4MEUw
RTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxlVHJhbnNmb3JtRGF0YS5oICovLAogCQkJCUJDNUVCNjk3
MEU4MURBNjMwMEIyNTk2NSAvKiBTdHlsZVZpc3VhbERhdGEuY3BwICovLApAQCAtMzg3OTksNiAr
Mzg4MDIsNyBAQAogCQkJCUU0RjlFRUYzMTU2REEwMDcwMEQyM0U3RSAvKiBTdHlsZVNoZWV0Q29u
dGVudHMuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4RUE4MDBBMEExOTUxNkUwMEE4RUY1RiAvKiBT
dHlsZVNoZWV0TGlzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI1RTUwRTgxQkY2RDAwQjI1
OTY1IC8qIFN0eWxlU3Vycm91bmREYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlERDFDNzc5MDI5
MzU0Qzc3MDAzQkQ3OUIgLyogU3R5bGVUZXh0RWRnZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1
RUI4MTAwRTgxRjJDRTAwQjI1OTY1IC8qIFN0eWxlVHJhbnNmb3JtRGF0YS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJRTRERUFBMTgxN0E5M0RDMzAwMEUwNDMwIC8qIFN0eWxlVHJlZVJlc29sdmVyLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlFNDJFNzZEQzFDN0FGNzc2MDBFMzYxNEQgLyogU3R5bGVVcGRh
dGUuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1By
aW1pdGl2ZVZhbHVlTWFwcGluZ3MuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVW
YWx1ZU1hcHBpbmdzLmgKaW5kZXggNWU5Nzk1Y2NkM2VmLi5hMzI1MzVhMGNhYzcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaApAQCAtNTIyNyw2
ICs1MjI3LDU5IEBAIHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRv
ciBTY3JvbGxTbmFwU3RvcCgpIGNvbnN0CiAgICAgfQogfQogCit0ZW1wbGF0ZTw+IGlubGluZSBD
U1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoVGV4dEVkZ2VUeXBlIHRleHRFZGdl
VHlwZSkKKyAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQoreworICAgIHNldFByaW1pdGl2
ZVVuaXRUeXBlKENTU1VuaXRUeXBlOjpDU1NfVkFMVUVfSUQpOworICAgIHN3aXRjaCAodGV4dEVk
Z2VUeXBlKSB7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OkxlYWRpbmc6CisgICAgICAgIG1fdmFs
dWUudmFsdWVJRCA9IENTU1ZhbHVlTGVhZGluZzsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBU
ZXh0RWRnZVR5cGU6OlRleHQ6CisgICAgICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlVGV4
dDsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OkNhcEhlaWdodDoKKyAg
ICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVDYXA7CisgICAgICAgIGJyZWFrOworICAg
IGNhc2UgVGV4dEVkZ2VUeXBlOjpFeEhlaWdodDoKKyAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0g
Q1NTVmFsdWVFeDsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OkFscGhh
YmV0aWM6CisgICAgICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlQWxwaGFiZXRpYzsKKyAg
ICAgICAgYnJlYWs7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OkNKS0lkZW9ncmFwaGljOgorICAg
ICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZUlkZW9ncmFwaGljOworICAgICAgICBicmVh
azsKKyAgICBjYXNlIFRleHRFZGdlVHlwZTo6Q0pLSWRlb2dyYXBoaWNJbms6CisgICAgICAgIG1f
dmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlSWRlb2dyYXBoaWNJbms7CisgICAgICAgIGJyZWFrOwor
ICAgIH0KK30KKwordGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9y
IFRleHRFZGdlVHlwZSgpIGNvbnN0Cit7CisgICAgQVNTRVJUKGlzVmFsdWVJRCgpKTsKKyAgICBz
d2l0Y2ggKG1fdmFsdWUudmFsdWVJRCkgeworICAgIGNhc2UgQ1NTVmFsdWVMZWFkaW5nOgorICAg
ICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpMZWFkaW5nOworICAgIGNhc2UgQ1NTVmFsdWVUZXh0
OgorICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpUZXh0OworICAgIGNhc2UgQ1NTVmFsdWVD
YXA6CisgICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OkNhcEhlaWdodDsKKyAgICBjYXNlIENT
U1ZhbHVlRXg6CisgICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OkV4SGVpZ2h0OworICAgIGNh
c2UgQ1NTVmFsdWVBbHBoYWJldGljOgorICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpBbHBo
YWJldGljOworICAgIGNhc2UgQ1NTVmFsdWVJZGVvZ3JhcGhpYzoKKyAgICAgICAgcmV0dXJuIFRl
eHRFZGdlVHlwZTo6Q0pLSWRlb2dyYXBoaWM7CisgICAgY2FzZSBDU1NWYWx1ZUlkZW9ncmFwaGlj
SW5rOgorICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpDSktJZGVvZ3JhcGhpY0luazsKKyAg
ICBkZWZhdWx0OgorICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJu
IFRleHRFZGdlVHlwZTo6TGVhZGluZzsKKyAgICB9Cit9CisKICNpZiBFTkFCTEUoQVBQTEVfUEFZ
KQogdGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVl
KEFwcGxlUGF5QnV0dG9uU3R5bGUgZSkKICAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbiBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24KaW5kZXggYzMxNTc1YWQ0ZGFmLi4xYjMx
YjI3OTVmNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpz
b24KKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgpAQCAtNTEwLDYg
KzUxMCwxNyBAQAogICAgICAgICAgICAgICAgICJ1cmwiOiAiaHR0cHM6Ly93d3cudzMub3JnL1RS
L2Nzcy1mb250cy00LyNmb250LXN0cmV0Y2gtcHJvcCIKICAgICAgICAgICAgIH0KICAgICAgICAg
fSwKKyAgICAgICAgInRleHQtZWRnZSI6IHsKKyAgICAgICAgICAgICJjb2RlZ2VuLXByb3BlcnRp
ZXMiOiB7CisgICAgICAgICAgICAgICAgImNvbnZlcnRlciI6ICJUZXh0RWRnZSIsCisgICAgICAg
ICAgICAgICAgImN1c3RvbS1wYXJzZXIiOiB0cnVlLAorICAgICAgICAgICAgICAgICJzZXR0aW5n
cy1mbGFnIjogImNzc0xlYWRpbmdUcmltRW5hYmxlZCIKKyAgICAgICAgICAgIH0sCisgICAgICAg
ICAgICAic3BlY2lmaWNhdGlvbiI6IHsKKyAgICAgICAgICAgICAgICAiY2F0ZWdvcnkiOiAiY3Nz
LWlubGluZSIsCisgICAgICAgICAgICAgICAgInVybCI6ICJodHRwczovL3d3dy53My5vcmcvVFIv
Y3NzLWlubGluZS0zLyN0ZXh0LWVkZ2VzIgorICAgICAgICAgICAgfQorICAgICAgICB9LAogICAg
ICAgICAidGV4dC1yZW5kZXJpbmciOiB7CiAgICAgICAgICAgICAiaW5oZXJpdGVkIjogdHJ1ZSwK
ICAgICAgICAgICAgICJ2YWx1ZXMiOiBbCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTVmFsdWVLZXl3b3Jkcy5pbiBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRz
LmluCmluZGV4IDkyMWIyNTRiN2Y3OS4uOGM3YmYzNjc2MGRlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTVmFsdWVLZXl3b3Jkcy5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTVmFsdWVLZXl3b3Jkcy5pbgpAQCAtMTA0MCw2ICsxMDQwLDE1IEBAIG5vLXB1bmN0dWF0aW9u
CiBhbnRpYWxpYXNlZAogc3VicGl4ZWwtYW50aWFsaWFzZWQKIAorLy8gdGV4dC1lZGdlCitsZWFk
aW5nCisvLyB0ZXh0CitjYXAKK2V4CisvLyBpZGVvZ3JhcGhpYworaWRlb2dyYXBoaWMtaW5rCisv
LyBhbHBoYWJldGljCisKIC8vIHRleHQtcmVuZGVyaW5nCiAvL2F1dG8KIG9wdGltaXplU3BlZWQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9Db21wdXRlZFN0eWxlRXh0cmFjdG9yLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Db21wdXRlZFN0eWxlRXh0cmFjdG9yLmNwcAppbmRleCBl
NjkxNWRlMjFmOTUuLjE0YzM1NDFkNDE3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NvbXB1dGVkU3R5bGVFeHRyYWN0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Db21w
dXRlZFN0eWxlRXh0cmFjdG9yLmNwcApAQCAtMTMwNSw2ICsxMzA1LDE0IEBAIHN0YXRpYyBSZWY8
Q1NTVmFsdWVMaXN0PiB2YWx1ZUZvclNjcm9sbFNuYXBBbGlnbm1lbnQoY29uc3QgU2Nyb2xsU25h
cEFsaWduJiBhbGlnCiAgICAgcmV0dXJuIHZhbHVlOwogfQogCitzdGF0aWMgUmVmPENTU1ZhbHVl
TGlzdD4gdmFsdWVGb3JUZXh0RWRnZShjb25zdCBUZXh0RWRnZSYgdGV4dEVkZ2UpCit7CisgICAg
YXV0byB2YWx1ZSA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKKyAgICB2
YWx1ZS0+YXBwZW5kKENTU1ByaW1pdGl2ZVZhbHVlOjpjcmVhdGUodGV4dEVkZ2Uub3ZlcikpOwor
ICAgIHZhbHVlLT5hcHBlbmQoQ1NTUHJpbWl0aXZlVmFsdWU6OmNyZWF0ZSh0ZXh0RWRnZS51bmRl
cikpOworICAgIHJldHVybiB2YWx1ZTsKK30KKwogc3RhdGljIFJlZjxDU1NWYWx1ZT4gd2lsbENo
YW5nZVByb3BlcnR5VmFsdWUoY29uc3QgV2lsbENoYW5nZURhdGEqIHdpbGxDaGFuZ2VEYXRhKQog
ewogICAgIGF1dG8mIGNzc1ZhbHVlUG9vbCA9IENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCk7CkBA
IC00MDczLDYgKzQwODEsOCBAQCBSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVFeHRyYWN0
b3I6OnZhbHVlRm9yUHJvcGVydHlJblN0eWxlKGNvbnN0IFJlbmRlclN0eQogICAgICAgICByZXR1
cm4gdmFsdWVGb3JTY3JvbGxTbmFwVHlwZShzdHlsZS5zY3JvbGxTbmFwVHlwZSgpKTsKICAgICBj
YXNlIENTU1Byb3BlcnR5T3ZlcmZsb3dBbmNob3I6CiAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBv
b2wuY3JlYXRlVmFsdWUoc3R5bGUub3ZlcmZsb3dBbmNob3IoKSk7CisgICAgY2FzZSBDU1NQcm9w
ZXJ0eVRleHRFZGdlOgorICAgICAgICByZXR1cm4gdmFsdWVGb3JUZXh0RWRnZShzdHlsZS50ZXh0
RWRnZSgpKTsKIAogI2lmIEVOQUJMRShBUFBMRV9QQVkpCiAgICAgY2FzZSBDU1NQcm9wZXJ0eUFw
cGxlUGF5QnV0dG9uU3R5bGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2Vy
L0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2Vy
L0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5jcHAKaW5kZXggYjE3ZWFmYjA3NDRhLi5lYmRhODNh
NTQ2ZTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQ
YXJzZXJIZWxwZXJzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3Bl
cnR5UGFyc2VySGVscGVycy5jcHAKQEAgLTY2ODMsNiArNjY4MywyMiBAQCBSZWZQdHI8Q1NTVmFs
dWU+IGNvbnN1bWVTY3JvbGxTbmFwVHlwZShDU1NQYXJzZXJUb2tlblJhbmdlJiByYW5nZSkKICAg
ICByZXR1cm4gdHlwZVZhbHVlOwogfQogCitSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVUZXh0RWRn
ZShDU1NQYXJzZXJUb2tlblJhbmdlJiByYW5nZSkKK3sKKyAgICBhdXRvIHR5cGVWYWx1ZSA9IENT
U1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKKworICAgIGF1dG8gZmlyc3RWYWx1
ZSA9IGNvbnN1bWVJZGVudDxDU1NWYWx1ZUxlYWRpbmcsIENTU1ZhbHVlVGV4dCwgQ1NTVmFsdWVD
YXAsIENTU1ZhbHVlRXgsIENTU1ZhbHVlSWRlb2dyYXBoaWMsIENTU1ZhbHVlSWRlb2dyYXBoaWNJ
bms+KHJhbmdlKTsKKyAgICBpZiAoIWZpcnN0VmFsdWUpCisgICAgICAgIHJldHVybiBudWxscHRy
OworICAgIHR5cGVWYWx1ZS0+YXBwZW5kKGZpcnN0VmFsdWUucmVsZWFzZU5vbk51bGwoKSk7CisK
KyAgICBhdXRvIHNlY29uZFZhbHVlID0gY29uc3VtZUlkZW50PENTU1ZhbHVlVGV4dCwgQ1NTVmFs
dWVBbHBoYWJldGljLCBDU1NWYWx1ZUlkZW9ncmFwaGljLCBDU1NWYWx1ZUlkZW9ncmFwaGljSW5r
PihyYW5nZSk7CisgICAgaWYgKHNlY29uZFZhbHVlKQorICAgICAgICB0eXBlVmFsdWUtPmFwcGVu
ZChzZWNvbmRWYWx1ZS5yZWxlYXNlTm9uTnVsbCgpKTsKKworICAgIHJldHVybiB0eXBlVmFsdWU7
Cit9CisKIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZUJvcmRlclJhZGl1c0Nvcm5lcihDU1NQYXJz
ZXJUb2tlblJhbmdlJiByYW5nZSwgQ1NTUGFyc2VyTW9kZSBjc3NQYXJzZXJNb2RlKQogewogICAg
IFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gcGFyc2VkVmFsdWUxID0gY29uc3VtZUxlbmd0aE9y
UGVyY2VudChyYW5nZSwgY3NzUGFyc2VyTW9kZSwgVmFsdWVSYW5nZTo6Tm9uTmVnYXRpdmUpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhl
bHBlcnMuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxw
ZXJzLmgKaW5kZXggZTczMmUwMDY3YzMxLi40Y2U0M2RlYjFmYjIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuaApAQCAtMjc4
LDYgKzI3OCw3IEBAIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZUNvbnRlbnQoQ1NTUGFyc2VyVG9r
ZW5SYW5nZSYsIGNvbnN0IENTU1BhcnNlckNvbnRleHQmKTsKIFJlZlB0cjxDU1NWYWx1ZT4gY29u
c3VtZVBlcnNwZWN0aXZlKENTU1BhcnNlclRva2VuUmFuZ2UmLCBDU1NQYXJzZXJNb2RlKTsKIFJl
ZlB0cjxDU1NWYWx1ZT4gY29uc3VtZVNjcm9sbFNuYXBBbGlnbihDU1NQYXJzZXJUb2tlblJhbmdl
Jik7CiBSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVTY3JvbGxTbmFwVHlwZShDU1NQYXJzZXJUb2tl
blJhbmdlJik7CitSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVUZXh0RWRnZShDU1NQYXJzZXJUb2tl
blJhbmdlJik7CiBSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVCb3JkZXJSYWRpdXNDb3JuZXIoQ1NT
UGFyc2VyVG9rZW5SYW5nZSYsIENTU1BhcnNlck1vZGUpOwogYm9vbCBjb25zdW1lUmFkaWkoUmVm
UHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBob3Jpem9udGFsUmFkaWlbNF0sIFJlZlB0cjxDU1NQcmlt
aXRpdmVWYWx1ZT4gdmVydGljYWxSYWRpaVs0XSwgQ1NTUGFyc2VyVG9rZW5SYW5nZSYsIENTU1Bh
cnNlck1vZGUsIGJvb2wgdXNlTGVnYWN5UGFyc2luZyk7CiBlbnVtIGNsYXNzIENvbnN1bWVSYXkg
eyBJbmNsdWRlLCBFeGNsdWRlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxl
L1JlbmRlclN0eWxlLmNwcAppbmRleCAyY2RkNDMxYTJkNmMuLjYxMTQ0YTkyMTA0YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCkBAIC00OSw2
ICs0OSw3IEBACiAjaW5jbHVkZSAiU3R5bGVSZXNvbHZlci5oIgogI2luY2x1ZGUgIlN0eWxlU2Ny
b2xsU25hcFBvaW50cy5oIgogI2luY2x1ZGUgIlN0eWxlU2VsZkFsaWdubWVudERhdGEuaCIKKyNp
bmNsdWRlICJTdHlsZVRleHRFZGdlLmgiCiAjaW5jbHVkZSAiU3R5bGVUcmVlUmVzb2x2ZXIuaCIK
ICNpbmNsdWRlICJXaWxsQ2hhbmdlRGF0YS5oIgogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+
CkBAIC0yODA1LDYgKzI4MDYsMjEgQEAgYm9vbCBSZW5kZXJTdHlsZTo6aGFzU25hcFBvc2l0aW9u
KCkgY29uc3QKICAgICByZXR1cm4gYWxpZ25tZW50LmJsb2NrQWxpZ24gIT0gU2Nyb2xsU25hcEF4
aXNBbGlnblR5cGU6Ok5vbmUgfHwgYWxpZ25tZW50LmlubGluZUFsaWduICE9IFNjcm9sbFNuYXBB
eGlzQWxpZ25UeXBlOjpOb25lOwogfQogCitUZXh0RWRnZSBSZW5kZXJTdHlsZTo6dGV4dEVkZ2Uo
KSBjb25zdAoreworICAgIHJldHVybiBtX3JhcmVJbmhlcml0ZWREYXRhLT50ZXh0RWRnZTsKK30K
Kwordm9pZCBSZW5kZXJTdHlsZTo6c2V0VGV4dEVkZ2UoVGV4dEVkZ2UgdGV4dEVkZ2VWYWx1ZSkK
K3sKKyAgICBTRVRfVkFSKG1fcmFyZUluaGVyaXRlZERhdGEsIHRleHRFZGdlLCB0ZXh0RWRnZVZh
bHVlKTsKK30KKworVGV4dEVkZ2UgUmVuZGVyU3R5bGU6OmluaXRpYWxUZXh0RWRnZSgpCit7Cisg
ICAgcmV0dXJuIHsgVGV4dEVkZ2VUeXBlOjpMZWFkaW5nLCBUZXh0RWRnZVR5cGU6OkxlYWRpbmcg
fTsKK30KKwogYm9vbCBSZW5kZXJTdHlsZTo6aGFzUmVmZXJlbmNlRmlsdGVyT25seSgpIGNvbnN0
CiB7CiAgICAgaWYgKCFoYXNGaWx0ZXIoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlLmgKaW5kZXggM2NkNDc0MzkzZTYzLi5lY2VmYzI1NjI1ZGIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCkBAIC0xMjUsNiAr
MTI1LDggQEAgY2xhc3MgVHJhbnNmb3JtYXRpb25NYXRyaXg7CiBzdHJ1Y3QgU2Nyb2xsU25hcEFs
aWduOwogc3RydWN0IFNjcm9sbFNuYXBUeXBlOwogCitzdHJ1Y3QgVGV4dEVkZ2U7CisKIHVzaW5n
IFBzZXVkb1N0eWxlQ2FjaGUgPSBWZWN0b3I8c3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0eWxlPiwg
ND47CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFQsIHR5cGVuYW1lIFU+IGlubGluZSBib29sIGNvbXBh
cmVFcXVhbChjb25zdCBUJiB0LCBjb25zdCBVJiB1KSB7IHJldHVybiB0ID09IHN0YXRpY19jYXN0
PGNvbnN0IFQmPih1KTsgfQpAQCAtMzk3LDYgKzM5OSw3IEBAIHB1YmxpYzoKICAgICBUZXh0SnVz
dGlmeSB0ZXh0SnVzdGlmeSgpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PFRleHRKdXN0aWZ5
PihtX3JhcmVJbmhlcml0ZWREYXRhLT50ZXh0SnVzdGlmeSk7IH0KIAogICAgIExlYWRpbmdUcmlt
IGxlYWRpbmdUcmltKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8TGVhZGluZ1RyaW0+KG1f
cmFyZU5vbkluaGVyaXRlZERhdGEtPmxlYWRpbmdUcmltKTsgfQorICAgIFRleHRFZGdlIHRleHRF
ZGdlKCkgY29uc3Q7CiAKICAgICBjb25zdCBMZW5ndGgmIHdvcmRTcGFjaW5nKCkgY29uc3Q7CiAg
ICAgZmxvYXQgbGV0dGVyU3BhY2luZygpIGNvbnN0OwpAQCAtMTA1Niw2ICsxMDU5LDcgQEAgcHVi
bGljOgogICAgIHZvaWQgc2V0VGV4dEp1c3RpZnkoVGV4dEp1c3RpZnkgdikgeyBTRVRfVkFSKG1f
cmFyZUluaGVyaXRlZERhdGEsIHRleHRKdXN0aWZ5LCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4odikp
OyB9CiAKICAgICB2b2lkIHNldExlYWRpbmdUcmltKExlYWRpbmdUcmltIHZhbHVlKSB7IFNFVF9W
QVIobV9yYXJlTm9uSW5oZXJpdGVkRGF0YSwgbGVhZGluZ1RyaW0sIHN0YXRpY19jYXN0PHVuc2ln
bmVkPih2YWx1ZSkpOyB9CisgICAgdm9pZCBzZXRUZXh0RWRnZShUZXh0RWRnZSk7CiAKICNpZiBF
TkFCTEUoVEVYVF9BVVRPU0laSU5HKQogICAgIHZvaWQgc2V0U3BlY2lmaWVkTGluZUhlaWdodChM
ZW5ndGgmJik7CkBAIC0xNjcxLDYgKzE2NzUsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIExlbmd0
aCBpbml0aWFsUGFkZGluZygpIHsgcmV0dXJuIExlbmd0aChMZW5ndGhUeXBlOjpGaXhlZCk7IH0K
ICAgICBzdGF0aWMgTGVuZ3RoIGluaXRpYWxUZXh0SW5kZW50KCkgeyByZXR1cm4gTGVuZ3RoKExl
bmd0aFR5cGU6OkZpeGVkKTsgfQogICAgIHN0YXRpYyBMZWFkaW5nVHJpbSBpbml0aWFsTGVhZGlu
Z1RyaW0oKSB7IHJldHVybiBMZWFkaW5nVHJpbTo6Tm9ybWFsOyB9CisgICAgc3RhdGljIFRleHRF
ZGdlIGluaXRpYWxUZXh0RWRnZSgpOwogICAgIHN0YXRpYyBMZW5ndGggaW5pdGlhbFplcm9MZW5n
dGgoKSB7IHJldHVybiBMZW5ndGgoTGVuZ3RoVHlwZTo6Rml4ZWQpOyB9CiAgICAgc3RhdGljIExl
bmd0aCBpbml0aWFsT25lTGVuZ3RoKCkgeyByZXR1cm4gTGVuZ3RoKDEsIExlbmd0aFR5cGU6OkZp
eGVkKTsgfQogICAgIHN0YXRpYyB1bnNpZ25lZCBzaG9ydCBpbml0aWFsV2lkb3dzKCkgeyByZXR1
cm4gMjsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRl
clN0eWxlQ29uc3RhbnRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5k
ZXJTdHlsZUNvbnN0YW50cy5jcHAKaW5kZXggYWIxYzI2YWRjMmJhLi42MzIzZTkwODMzZmQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0
YW50cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxl
Q29uc3RhbnRzLmNwcApAQCAtMTE2MCw2ICsxMTYwLDIwIEBAIFRleHRTdHJlYW0mIG9wZXJhdG9y
PDwoVGV4dFN0cmVhbSYgdHMsIExlYWRpbmdUcmltIGxlYWRpbmdUcmltKQogICAgIHJldHVybiB0
czsKIH0KIAorVGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiB0cywgVGV4dEVkZ2VU
eXBlIHRleHRFZGdlVHlwZSkKK3sKKyAgICBzd2l0Y2ggKHRleHRFZGdlVHlwZSkgeworICAgIGNh
c2UgVGV4dEVkZ2VUeXBlOjpMZWFkaW5nOiB0cyA8PCAiaGFsZi1sZWFkaW5nIjsgYnJlYWs7Cisg
ICAgY2FzZSBUZXh0RWRnZVR5cGU6OlRleHQ6IHRzIDw8ICJ0ZXh0LW92ZXIvdW5kZXIgYmFzZWxp
bmUiOyBicmVhazsKKyAgICBjYXNlIFRleHRFZGdlVHlwZTo6Q2FwSGVpZ2h0OiB0cyA8PCAiY2Fw
LWhlaWdodCBiYXNlbGluZSI7IGJyZWFrOworICAgIGNhc2UgVGV4dEVkZ2VUeXBlOjpFeEhlaWdo
dDogdHMgPDwgIngtaGVpZ2h0IGJhc2VsaW5lIjsgYnJlYWs7CisgICAgY2FzZSBUZXh0RWRnZVR5
cGU6OkFscGhhYmV0aWM6IHRzIDw8ICJhbHBoYWJldGljIGJhc2VsaW5lIjsgYnJlYWs7CisgICAg
Y2FzZSBUZXh0RWRnZVR5cGU6OkNKS0lkZW9ncmFwaGljOiB0cyA8PCAiaWRlb2dyYXBoaWMtb3Zl
ciBiYXNlbGluZSI7IGJyZWFrOworICAgIGNhc2UgVGV4dEVkZ2VUeXBlOjpDSktJZGVvZ3JhcGhp
Y0luazogdHMgPDwgImlkZW9ncmFwaGljLWluay1vdmVyL2luay11bmRlciBiYXNlbGluZSI7IGJy
ZWFrOworICAgIH0KKyAgICByZXR1cm4gdHM7Cit9CisKIFRleHRTdHJlYW0mIG9wZXJhdG9yPDwo
VGV4dFN0cmVhbSYgdHMsIFRleHRab29tIHpvb20pCiB7CiAgICAgc3dpdGNoICh6b29tKSB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25z
dGFudHMuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0
YW50cy5oCmluZGV4IDRmMmVhMTJlMTY0OC4uMTg1NzVkMWQ0ODg2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaApAQCAt
Nzg4LDYgKzc4OCwxNiBAQCBlbnVtIGNsYXNzIExlYWRpbmdUcmltIDogdWludDhfdCB7CiAgICAg
Qm90aAogfTsKIAorZW51bSBjbGFzcyBUZXh0RWRnZVR5cGUgOiB1aW50OF90IHsKKyAgICBMZWFk
aW5nLAorICAgIFRleHQsCisgICAgQ2FwSGVpZ2h0LAorICAgIEV4SGVpZ2h0LAorICAgIEFscGhh
YmV0aWMsCisgICAgQ0pLSWRlb2dyYXBoaWMsCisgICAgQ0pLSWRlb2dyYXBoaWNJbmsKK307CisK
IGVudW0gY2xhc3MgVGV4dFpvb20gOiB1aW50OF90IHsKICAgICBOb3JtYWwsCiAgICAgUmVzZXQK
QEAgLTEzMjQsNiArMTMzNCw3IEBAIFdURjo6VGV4dFN0cmVhbSYgb3BlcmF0b3I8PChXVEY6OlRl
eHRTdHJlYW0mLCBUZXh0U2VjdXJpdHkpOwogV1RGOjpUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFdU
Rjo6VGV4dFN0cmVhbSYsIFRleHRUcmFuc2Zvcm0pOwogV1RGOjpUZXh0U3RyZWFtJiBvcGVyYXRv
cjw8KFdURjo6VGV4dFN0cmVhbSYsIFRleHRVbmRlcmxpbmVQb3NpdGlvbik7CiBXVEY6OlRleHRT
dHJlYW0mIG9wZXJhdG9yPDwoV1RGOjpUZXh0U3RyZWFtJiwgTGVhZGluZ1RyaW0pOworV1RGOjpU
ZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFdURjo6VGV4dFN0cmVhbSYsIFRleHRFZGdlVHlwZSk7CiBX
VEY6OlRleHRTdHJlYW0mIG9wZXJhdG9yPDwoV1RGOjpUZXh0U3RyZWFtJiwgVGV4dFpvb20pOwog
V1RGOjpUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFdURjo6VGV4dFN0cmVhbSYsIFRyYW5zZm9ybUJv
eCk7CiBXVEY6OlRleHRTdHJlYW0mIG9wZXJhdG9yPDwoV1RGOjpUZXh0U3RyZWFtJiwgVHJhbnNm
b3JtU3R5bGUzRCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUv
U3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5
bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5jcHAKaW5kZXggYWJhMjE5ZTNlMWI3Li5hMmRhZTRl
Y2ZhOTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJh
cmVJbmhlcml0ZWREYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUv
U3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5jcHAKQEAgLTQ3LDYgKzQ3LDcgQEAgc3RydWN0IEdyZWF0
ZXJUaGFuT3JTYW1lU2l6ZUFzU3R5bGVSYXJlSW5oZXJpdGVkRGF0YSA6IHB1YmxpYyBSZWZDb3Vu
dGVkPEdyZWF0ZXIKICAgICBMZW5ndGggbGVuZ3Roc1syXTsKICAgICBmbG9hdCBzZWNvbmRGbG9h
dDsKICAgICBUZXh0VW5kZXJsaW5lT2Zmc2V0IG9mZnNldDsKKyAgICBUZXh0RWRnZSB0ZXh0RWRn
ZTsKICAgICB2b2lkKiBjdXN0b21Qcm9wZXJ0eURhdGFSZWZzWzFdOwogICAgIHVuc2lnbmVkIGJp
dGZpZWxkc1s3XTsKICAgICBzaG9ydCBwYWdlZE1lZGlhU2hvcnRzWzJdOwpAQCAtOTAsNiArOTEs
NyBAQCBTdHlsZVJhcmVJbmhlcml0ZWREYXRhOjpTdHlsZVJhcmVJbmhlcml0ZWREYXRhKCkKICAg
ICAsIGluZGVudChSZW5kZXJTdHlsZTo6aW5pdGlhbFRleHRJbmRlbnQoKSkKICAgICAsIGVmZmVj
dGl2ZVpvb20oUmVuZGVyU3R5bGU6OmluaXRpYWxab29tKCkpCiAgICAgLCB0ZXh0VW5kZXJsaW5l
T2Zmc2V0KFJlbmRlclN0eWxlOjppbml0aWFsVGV4dFVuZGVybGluZU9mZnNldCgpKQorICAgICwg
dGV4dEVkZ2UoUmVuZGVyU3R5bGU6OmluaXRpYWxUZXh0RWRnZSgpKQogICAgICwgbWl0ZXJMaW1p
dChSZW5kZXJTdHlsZTo6aW5pdGlhbFN0cm9rZU1pdGVyTGltaXQoKSkKICAgICAsIGN1c3RvbVBy
b3BlcnRpZXMoU3R5bGVDdXN0b21Qcm9wZXJ0eURhdGE6OmNyZWF0ZSgpKQogICAgICwgd2lkb3dz
KFJlbmRlclN0eWxlOjppbml0aWFsV2lkb3dzKCkpCkBAIC0xODYsNiArMTg4LDcgQEAgaW5saW5l
IFN0eWxlUmFyZUluaGVyaXRlZERhdGE6OlN0eWxlUmFyZUluaGVyaXRlZERhdGEoY29uc3QgU3R5
bGVSYXJlSW5oZXJpdGVkRGEKICAgICAsIGluZGVudChvLmluZGVudCkKICAgICAsIGVmZmVjdGl2
ZVpvb20oby5lZmZlY3RpdmVab29tKQogICAgICwgdGV4dFVuZGVybGluZU9mZnNldChvLnRleHRV
bmRlcmxpbmVPZmZzZXQpCisgICAgLCB0ZXh0RWRnZShvLnRleHRFZGdlKQogICAgICwgbWl0ZXJM
aW1pdChvLm1pdGVyTGltaXQpCiAgICAgLCBjdXN0b21Qcm9wZXJ0aWVzKG8uY3VzdG9tUHJvcGVy
dGllcykKICAgICAsIHdpZG93cyhvLndpZG93cykKQEAgLTI5Nyw2ICszMDAsNyBAQCBib29sIFN0
eWxlUmFyZUluaGVyaXRlZERhdGE6Om9wZXJhdG9yPT0oY29uc3QgU3R5bGVSYXJlSW5oZXJpdGVk
RGF0YSYgbykgY29uc3QKICAgICAgICAgJiYgaW5kZW50ID09IG8uaW5kZW50CiAgICAgICAgICYm
IGVmZmVjdGl2ZVpvb20gPT0gby5lZmZlY3RpdmVab29tCiAgICAgICAgICYmIHRleHRVbmRlcmxp
bmVPZmZzZXQgPT0gby50ZXh0VW5kZXJsaW5lT2Zmc2V0CisgICAgICAgICYmIHRleHRFZGdlID09
IG8udGV4dEVkZ2UKICAgICAgICAgJiYgd29yZFNwYWNpbmcgPT0gby53b3JkU3BhY2luZwogICAg
ICAgICAmJiBtaXRlckxpbWl0ID09IG8ubWl0ZXJMaW1pdAogICAgICAgICAmJiB3aWRvd3MgPT0g
by53aWRvd3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHls
ZVJhcmVJbmhlcml0ZWREYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5
bGVSYXJlSW5oZXJpdGVkRGF0YS5oCmluZGV4IDQxYWFjNjU4ZjEzMC4uMWMwYmFkODg1ZjZiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJp
dGVkRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJ
bmhlcml0ZWREYXRhLmgKQEAgLTI4LDYgKzI4LDcgQEAKICNpbmNsdWRlICJSZW5kZXJTdHlsZUNv
bnN0YW50cy5oIgogI2luY2x1ZGUgIlN0eWxlQ29sb3IuaCIKICNpbmNsdWRlICJTdHlsZUN1c3Rv
bVByb3BlcnR5RGF0YS5oIgorI2luY2x1ZGUgIlN0eWxlVGV4dEVkZ2UuaCIKICNpbmNsdWRlICJU
YWJTaXplLmgiCiAjaW5jbHVkZSAiVGV4dFVuZGVybGluZU9mZnNldC5oIgogI2luY2x1ZGUgIlRv
dWNoQWN0aW9uLmgiCkBAIC05Niw2ICs5Nyw4IEBAIHB1YmxpYzoKICAgICBmbG9hdCBlZmZlY3Rp
dmVab29tOwogCiAgICAgVGV4dFVuZGVybGluZU9mZnNldCB0ZXh0VW5kZXJsaW5lT2Zmc2V0Owor
CisgICAgVGV4dEVkZ2UgdGV4dEVkZ2U7CiAgICAgCiAgICAgTGVuZ3RoIHdvcmRTcGFjaW5nOwog
ICAgIGZsb2F0IG1pdGVyTGltaXQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvU3R5bGVUZXh0RWRnZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxl
L1N0eWxlVGV4dEVkZ2UuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAu
Ljg0NzZhZThjOTBjOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9TdHlsZVRleHRFZGdlLmgKQEAgLTAsMCArMSw0NCBAQAorLyoKKyAqIENvcHlyaWdo
dCAoQykgMjAyMiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNw
cmFnbWEgb25jZQorCisjaW5jbHVkZSAiUmVuZGVyU3R5bGVDb25zdGFudHMuaCIKKworbmFtZXNw
YWNlIFdlYkNvcmUgeworCitzdHJ1Y3QgVGV4dEVkZ2UgeworICAgIFRleHRFZGdlVHlwZSBvdmVy
IHsgVGV4dEVkZ2VUeXBlOjpMZWFkaW5nIH07CisgICAgVGV4dEVkZ2VUeXBlIHVuZGVyIHsgVGV4
dEVkZ2VUeXBlOjpMZWFkaW5nIH07Cit9OworCitpbmxpbmUgYm9vbCBvcGVyYXRvcj09KGNvbnN0
IFRleHRFZGdlJiBhLCBjb25zdCBUZXh0RWRnZSYgYikKK3sKKyAgICByZXR1cm4gYS5vdmVyID09
IGIub3ZlciAmJiBhLnVuZGVyID09IGIudW5kZXI7Cit9CisKK2lubGluZSBib29sIG9wZXJhdG9y
IT0oY29uc3QgVGV4dEVkZ2UmIGEsIGNvbnN0IFRleHRFZGdlJiBiKSB7IHJldHVybiAhKGEgPT0g
Yik7IH0KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9T
dHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaAppbmRleCBiNmUzY2JhMzJhOWMuLjdmMTU0OTBhMjY2MSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmgKQEAgLTYy
LDYgKzYyLDcgQEAKICNpbmNsdWRlICJTdHlsZUJ1aWxkZXJTdGF0ZS5oIgogI2luY2x1ZGUgIlN0
eWxlR3JpZERhdGEuaCIKICNpbmNsdWRlICJTdHlsZVNjcm9sbFNuYXBQb2ludHMuaCIKKyNpbmNs
dWRlICJTdHlsZVRleHRFZGdlLmgiCiAjaW5jbHVkZSAiVGFiU2l6ZS5oIgogI2luY2x1ZGUgIlRv
dWNoQWN0aW9uLmgiCiAjaW5jbHVkZSAiVHJhbnNmb3JtRnVuY3Rpb25zLmgiCkBAIC0xMTUsNiAr
MTE2LDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBUZXh0VW5kZXJsaW5lT2Zmc2V0IGNvbnZlcnRU
ZXh0VW5kZXJsaW5lT2Zmc2V0KEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CiAgICAg
c3RhdGljIFRleHREZWNvcmF0aW9uVGhpY2tuZXNzIGNvbnZlcnRUZXh0RGVjb3JhdGlvblRoaWNr
bmVzcyhCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyBSZWZQdHI8
U3R5bGVSZWZsZWN0aW9uPiBjb252ZXJ0UmVmbGVjdGlvbihCdWlsZGVyU3RhdGUmLCBjb25zdCBD
U1NWYWx1ZSYpOworICAgIHN0YXRpYyBUZXh0RWRnZSBjb252ZXJ0VGV4dEVkZ2UoQnVpbGRlclN0
YXRlJiwgY29uc3QgQ1NTVmFsdWUmKTsKICAgICBzdGF0aWMgSW50U2l6ZSBjb252ZXJ0SW5pdGlh
bExldHRlcihCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyBmbG9h
dCBjb252ZXJ0VGV4dFN0cm9rZVdpZHRoKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7
CiAgICAgc3RhdGljIE9wdGlvblNldDxMaW5lQm94Q29udGFpbj4gY29udmVydExpbmVCb3hDb250
YWluKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CkBAIC04NDIsNiArODQ0LDU1IEBA
IGlubGluZSBSZWZQdHI8U3R5bGVSZWZsZWN0aW9uPiBCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0
UmVmbGVjdGlvbihCdWlsZGVyU3RhdGUmCiAgICAgcmV0dXJuIHJlZmxlY3Rpb247CiB9CiAKK2lu
bGluZSBUZXh0RWRnZSBCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0VGV4dEVkZ2UoQnVpbGRlclN0
YXRlJiwgY29uc3QgQ1NTVmFsdWUmIHZhbHVlKQoreworICAgIGF1dG8mIHZhbHVlcyA9IGRvd25j
YXN0PENTU1ZhbHVlTGlzdD4odmFsdWUpOworICAgIGF1dG8mIGZpcnN0VmFsdWUgPSBkb3duY2Fz
dDxDU1NQcmltaXRpdmVWYWx1ZT4oKnZhbHVlcy5pdGVtKDApKTsKKworICAgIGF1dG8gb3ZlclZh
bHVlID0gWyZdIHsKKyAgICAgICAgc3dpdGNoIChmaXJzdFZhbHVlLnZhbHVlSUQoKSkgeworICAg
ICAgICBjYXNlIENTU1ZhbHVlTGVhZGluZzoKKyAgICAgICAgICAgIHJldHVybiBUZXh0RWRnZVR5
cGU6OkxlYWRpbmc7CisgICAgICAgIGNhc2UgQ1NTVmFsdWVUZXh0OgorICAgICAgICAgICAgcmV0
dXJuIFRleHRFZGdlVHlwZTo6VGV4dDsKKyAgICAgICAgY2FzZSBDU1NWYWx1ZUNhcDoKKyAgICAg
ICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OkNhcEhlaWdodDsKKyAgICAgICAgY2FzZSBDU1NW
YWx1ZUV4OgorICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6RXhIZWlnaHQ7CisgICAg
ICAgIGNhc2UgQ1NTVmFsdWVJZGVvZ3JhcGhpYzoKKyAgICAgICAgICAgIHJldHVybiBUZXh0RWRn
ZVR5cGU6OkNKS0lkZW9ncmFwaGljOworICAgICAgICBjYXNlIENTU1ZhbHVlSWRlb2dyYXBoaWNJ
bms6CisgICAgICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpDSktJZGVvZ3JhcGhpY0luazsK
KyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAg
ICAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6TGVhZGluZzsKKyAgICAgICAgfQorICAgIH07
CisKKyAgICBhdXRvIHVuZGVyVmFsdWUgPSBbJl0geworICAgICAgICBpZiAoZmlyc3RWYWx1ZS52
YWx1ZUlEKCkgPT0gQ1NTVmFsdWVMZWFkaW5nKQorICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdl
VHlwZTo6TGVhZGluZzsKKyAgICAgICAgaWYgKHZhbHVlcy5sZW5ndGgoKSA9PSAxKQorICAgICAg
ICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6VGV4dDsKKworICAgICAgICBhdXRvJiBzZWNvbmRW
YWx1ZSA9IGRvd25jYXN0PENTU1ByaW1pdGl2ZVZhbHVlPigqdmFsdWVzLml0ZW0oMSkpOworICAg
ICAgICBzd2l0Y2ggKHNlY29uZFZhbHVlLnZhbHVlSUQoKSkgeworICAgICAgICBjYXNlIENTU1Zh
bHVlVGV4dDoKKyAgICAgICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OlRleHQ7CisgICAgICAg
IGNhc2UgQ1NTVmFsdWVBbHBoYWJldGljOgorICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlw
ZTo6QWxwaGFiZXRpYzsKKyAgICAgICAgY2FzZSBDU1NWYWx1ZUlkZW9ncmFwaGljOgorICAgICAg
ICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6Q0pLSWRlb2dyYXBoaWM7CisgICAgICAgIGNhc2Ug
Q1NTVmFsdWVJZGVvZ3JhcGhpY0luazoKKyAgICAgICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6
OkNKS0lkZW9ncmFwaGljSW5rOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7CisgICAgICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpMZWFkaW5n
OworICAgICAgICB9CisgICAgfTsKKyAgICByZXR1cm4geyBvdmVyVmFsdWUoKSwgdW5kZXJWYWx1
ZSgpIH07Cit9CisKIGlubGluZSBJbnRTaXplIEJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRJbml0
aWFsTGV0dGVyKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJiB2YWx1ZSkKIHsKICAgICBh
dXRvJiBwcmltaXRpdmVWYWx1ZSA9IGRvd25jYXN0PENTU1ByaW1pdGl2ZVZhbHVlPih2YWx1ZSk7
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>463790</attachid>
            <date>2022-11-29 11:00:24 -0800</date>
            <delta_ts>2022-11-30 12:37:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-248448-20221129110023.patch</filename>
            <type>text/plain</type>
            <size>34088</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSBhZTZhNjVkMjZjY2I1NWIyZDIwZDhlOGQ3NDVmMjVjZDI5OGY2ODI3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IE1vbiwgMjggTm92IDIwMjIgMTc6MzM6MjIgLTA4MDAKU3ViamVjdDogW1BBVENIXSBbbGVhZGlu
Zy10cmltXSBBZGQgc3VwcG9ydCBmb3IgcGFyc2luZyAidGV4dC1lZGdlIiBDU1MKIHByb3BlcnR5
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNDg0NDgKClJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgoKVGhpcyBwYXRjaCBhZGQgc3VwcG9ydCBmb3IgcGFyc2luZyAi
dGV4dC1lZGdlIiAoaHR0cHM6Ly93d3cudzMub3JnL1RSL2Nzcy1pbmxpbmUtMy8jdGV4dC1lZGdl
cykuIFRoaXMgcHJvcGVydHkgaXMgYmVoaW5kIHRoZSAiQ1NTIGxlYWRpbmctdHJpbSIgcnVuLXRp
bWUgZmxhZyB3aGljaCBpcyBvZmYgYnkgZGVmYXVsdC4KKHdpbGwgV1BUaWZ5IHRoZSB0ZXN0IGNh
c2VzIHNvb24gYWZ0ZXIgdGhlIGV4cGVjdGVkIGJlaGF2aW9yIGlzIGNvbmZpcm1lZCAtbm90IHNv
IG11Y2ggYWJvdXQgcGFyc2luZywgYnV0IG1vcmUgYWJvdXQgaG93IHRoZXkgaW50ZXJhY3Qgd2l0
aCBsZWFkaW5nLXRyaW0uKQoKKiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6CiogU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGlu
Z3MuaDoKKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZSk6CihX
ZWJDb3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgVGV4dEVkZ2UgY29uc3QpOgoqIFNv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb246CiogU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1ZhbHVlS2V5d29yZHMuaW46CiogU291cmNlL1dlYkNvcmUvY3NzL0NvbXB1dGVkU3R5bGVF
eHRyYWN0b3IuY3BwOgooV2ViQ29yZTo6dmFsdWVGb3JUZXh0RWRnZSk6CihXZWJDb3JlOjpDb21w
dXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvclByb3BlcnR5SW5TdHlsZSk6CiogU291cmNlL1dl
YkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuY3BwOgooV2ViQ29yZTo6
Q1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzOjpjb25zdW1lVGV4dEVkZ2UpOgoqIFNvdXJjZS9XZWJD
b3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmg6CiogU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcDoKKFdlYkNvcmU6OlJlbmRlclN0eWxl
Ojp0ZXh0RWRnZSBjb25zdCk6CihXZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0VGV4dEVkZ2UpOgoo
V2ViQ29yZTo6UmVuZGVyU3R5bGU6OmluaXRpYWxUZXh0RWRnZSk6CiogU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmg6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcDoKKFdlYkNvcmU6Om9wZXJhdG9yPDwpOgoq
IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oOgoq
IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmNw
cDoKKFdlYkNvcmU6OlN0eWxlUmFyZUluaGVyaXRlZERhdGE6OlN0eWxlUmFyZUluaGVyaXRlZERh
dGEpOgooV2ViQ29yZTo6U3R5bGVSYXJlSW5oZXJpdGVkRGF0YTo6b3BlcmF0b3I9PSBjb25zdCk6
CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEu
aDoKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVUZXh0RWRnZS5oOiBBZGRl
ZC4KKFdlYkNvcmU6Om9wZXJhdG9yPT0pOgooV2ViQ29yZTo6b3BlcmF0b3IhPSk6CiogU291cmNl
L1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmg6CihXZWJDb3JlOjpTdHlsZTo6
QnVpbGRlckNvbnZlcnRlcjo6Y29udmVydFRleHRFZGdlKToKLS0tCiBTb3VyY2UvV2ViQ29yZS9I
ZWFkZXJzLmNtYWtlICAgICAgICAgICAgICAgICAgfCAgMSArCiAuLi4vV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogfCAgNCArKwogLi4uL1dlYkNvcmUvY3NzL0NTU1By
aW1pdGl2ZVZhbHVlTWFwcGluZ3MuaCAgIHwgNTMgKysrKysrKysrKysrKysKIFNvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24gICAgICAgICB8IDExICsrKwogU291cmNlL1dlYkNv
cmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW4gICAgICAgIHwgIDkgKysrCiBTb3VyY2UvV2ViQ29y
ZS9jc3MvQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvci5jcHAgfCAxMCArKysKIC4uLi9jc3MvcGFyc2Vy
L0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5jcHAgICB8IDIxICsrKysrKwogLi4uL2Nzcy9wYXJz
ZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmggICAgIHwgIDEgKwogLi4uL1dlYkNvcmUvcmVu
ZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcCAgIHwgMTYgKysrKysKIFNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oICB8ICA1ICsrCiAuLi4vcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcCAgfCAxNCArKysrCiAuLi4vcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmggICAgfCAxMSArKysKIC4uLi9zdHlsZS9TdHlsZVJh
cmVJbmhlcml0ZWREYXRhLmNwcCAgICAgICAgICB8ICA0ICsrCiAuLi4vcmVuZGVyaW5nL3N0eWxl
L1N0eWxlUmFyZUluaGVyaXRlZERhdGEuaCAgfCAgMyArCiAuLi4vV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVUZXh0RWRnZS5oICAgfCA0NCArKysrKysrKysrKysKIFNvdXJjZS9XZWJDb3Jl
L3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oICB8IDU1ICsrKysrKysrKysrKysrCiAuLi4v
dGV4dC1lZGdlLXByb3BlcnR5LXBhcnNpbmctZXhwZWN0ZWQudHh0ICAgfCA1MSArKysrKysrKysr
KysrCiAuLi4vZmFzdC90ZXh0L3RleHQtZWRnZS1wcm9wZXJ0eS1wYXJzaW5nLmh0bWwgfCA3MSAr
KysrKysrKysrKysrKysrKysrCiAxOCBmaWxlcyBjaGFuZ2VkLCAzODQgaW5zZXJ0aW9ucygrKQog
Y3JlYXRlIG1vZGUgMTAwNjQ0IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVRl
eHRFZGdlLmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9mYXN0L3RleHQvdGV4dC1l
ZGdlLXByb3BlcnR5LXBhcnNpbmctZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5
b3V0VGVzdHMvZmFzdC90ZXh0L3RleHQtZWRnZS1wcm9wZXJ0eS1wYXJzaW5nLmh0bWwKCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJzLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvSGVh
ZGVycy5jbWFrZQppbmRleCAwMjM1ZDM2MzFiOWEuLjQwOTgzNDIwZmNlZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9IZWFkZXJz
LmNtYWtlCkBAIC0yMDQ2LDYgKzIwNDYsNyBAQCBzZXQoV2ViQ29yZV9QUklWQVRFX0ZSQU1FV09S
S19IRUFERVJTCiAgICAgcmVuZGVyaW5nL3N0eWxlL1N0eWxlU2Nyb2xsU25hcFBvaW50cy5oCiAg
ICAgcmVuZGVyaW5nL3N0eWxlL1N0eWxlU2VsZkFsaWdubWVudERhdGEuaAogICAgIHJlbmRlcmlu
Zy9zdHlsZS9TdHlsZVN1cnJvdW5kRGF0YS5oCisgICAgcmVuZGVyaW5nL3N0eWxlL1N0eWxlVGV4
dEVkZ2UuaAogICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZVRyYW5zZm9ybURhdGEuaAogICAgIHJl
bmRlcmluZy9zdHlsZS9TdHlsZVZpc3VhbERhdGEuaAogICAgIHJlbmRlcmluZy9zdHlsZS9UZXh0
RGVjb3JhdGlvblRoaWNrbmVzcy5oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNDBjYzFiMzY4NTA4Li40OGJjOGRiMTVhMzkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
QEAgLTQ4ODMsNiArNDg4Myw3IEBACiAJCUREMTdDMDgyMjg2RUM1NzQwMEQ2MEI1OCAvKiBidWls
ZCBpbiBDb3B5IFBERi5qcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERDE3
QzA3QzI4NkVDNTE5MDBENjBCNTggLyogYnVpbGQgKi87IH07CiAJCUREMTdDMDgzMjg2RUM1Nzcw
MEQ2MEI1OCAvKiBMSUNFTlNFIGluIENvcHkgUERGLmpzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEREMTdDMDgwMjg2RUM1MUIwMEQ2MEI1OCAvKiBMSUNFTlNFICovOyB9Owog
CQlERDE3QzA4NDI4NkVDNTdBMDBENjBCNTggLyogd2ViIGluIENvcHkgUERGLmpzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEREMTdDMDdFMjg2RUM1MUEwMEQ2MEI1OCAvKiB3
ZWIgKi87IH07CisJCUREMUM3NzkwMjkzNTRDNzcwMDNCRDc5QiAvKiBTdHlsZVRleHRFZGdlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERDFDNzc4RjI5
MzU0Qzc1MDAzQkQ3OUIgLyogU3R5bGVUZXh0RWRnZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCURENzYzQkIyMDk5MkMyQzkwMDc0MEI4RSAvKiBs
aWJ4bWwyLmR5bGliIGluIEZyYW1ld29ya3MgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gREQ3NjNCQjEwOTkyQzJDOTAwNzQwQjhFIC8qIGxpYnhtbDIuZHlsaWIgKi87IH07CiAJ
CUREN0NERjI1MEEyM0NGOTgwMDA2OTkyOCAvKiBDU1NVbmtub3duUnVsZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTgwRTZDQ0UwQTE5ODlDQTAwN0ZC
OEM1IC8qIENTU1Vua25vd25SdWxlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKIAkJREQ4QTMwQjQyOTFERkM4RjAwQUQ1MzdDIC8qIEJsb2NrTGF5b3V0
U3RhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IERE
OEEzMEIzMjkxREZDOEYwMEFENTM3QyAvKiBCbG9ja0xheW91dFN0YXRlLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTE3MTI2LDYgKzE3MTI3LDcg
QEAKIAkJREQxN0MwN0MyODZFQzUxOTAwRDYwQjU4IC8qIGJ1aWxkICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gZm9sZGVyOyBuYW1lID0gYnVpbGQ7IHBh
dGggPSAuLi8uLi9UaGlyZFBhcnR5L3BkZmpzL2J1aWxkOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlERDE3QzA3RTI4NkVDNTFBMDBENjBCNTggLyogd2ViICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gZm9sZGVyOyBuYW1lID0gd2ViOyBwYXRo
ID0gLi4vLi4vVGhpcmRQYXJ0eS9wZGZqcy93ZWI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUREMTdDMDgwMjg2RUM1MUIwMEQ2MEI1OCAvKiBMSUNFTlNFICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgbmFtZSA9IExJQ0VOU0U7IHBh
dGggPSAuLi8uLi9UaGlyZFBhcnR5L3BkZmpzL0xJQ0VOU0U7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCUREMUM3NzhGMjkzNTRDNzUwMDNCRDc5QiAvKiBTdHlsZVRleHRFZGdlLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN0eWxlVGV4dEVkZ2UuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJREQ3NjNCQjEwOTkyQzJDOTAwNzQwQjhFIC8qIGxpYnhtbDIu
ZHlsaWIgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSAi
Y29tcGlsZWQubWFjaC1vLmR5bGliIjsgbmFtZSA9IGxpYnhtbDIuZHlsaWI7IHBhdGggPSAvdXNy
L2xpYi9saWJ4bWwyLmR5bGliOyBzb3VyY2VUcmVlID0gIjxhYnNvbHV0ZT4iOyB9OwogCQlERDhB
MzBCMzI5MURGQzhGMDBBRDUzN0MgLyogQmxvY2tMYXlvdXRTdGF0ZS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBCbG9ja0xheW91dFN0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUREQjA0RjM3Mjc4RTU1MjcwMDhEMzY3OCAvKiBsaWJXVEYuYSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGFyY2hpdmUuYXI7IHBh
dGggPSBsaWJXVEYuYTsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKQEAgLTMw
NTk3LDYgKzMwNTk5LDcgQEAKIAkJCQk5RDYzODAwRjFBRjE2RTE2MDAzMUExNUMgLyogU3R5bGVT
ZWxmQWxpZ25tZW50RGF0YS5oICovLAogCQkJCUJDNUVCNUU2MEU4MUJGRUYwMEIyNTk2NSAvKiBT
dHlsZVN1cnJvdW5kRGF0YS5jcHAgKi8sCiAJCQkJQkM1RUI1RTQwRTgxQkY2RDAwQjI1OTY1IC8q
IFN0eWxlU3Vycm91bmREYXRhLmggKi8sCisJCQkJREQxQzc3OEYyOTM1NEM3NTAwM0JENzlCIC8q
IFN0eWxlVGV4dEVkZ2UuaCAqLywKIAkJCQlCQzVFQjgwRDBFODFGMkNFMDBCMjU5NjUgLyogU3R5
bGVUcmFuc2Zvcm1EYXRhLmNwcCAqLywKIAkJCQlCQzVFQjgwRTBFODFGMkNFMDBCMjU5NjUgLyog
U3R5bGVUcmFuc2Zvcm1EYXRhLmggKi8sCiAJCQkJQkM1RUI2OTcwRTgxREE2MzAwQjI1OTY1IC8q
IFN0eWxlVmlzdWFsRGF0YS5jcHAgKi8sCkBAIC0zODc5OSw2ICszODgwMiw3IEBACiAJCQkJRTRG
OUVFRjMxNTZEQTAwNzAwRDIzRTdFIC8qIFN0eWxlU2hlZXRDb250ZW50cy5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQThFQTgwMEEwQTE5NTE2RTAwQThFRjVGIC8qIFN0eWxlU2hlZXRMaXN0LmggaW4g
SGVhZGVycyAqLywKIAkJCQlCQzVFQjVFNTBFODFCRjZEMDBCMjU5NjUgLyogU3R5bGVTdXJyb3Vu
ZERhdGEuaCBpbiBIZWFkZXJzICovLAorCQkJCUREMUM3NzkwMjkzNTRDNzcwMDNCRDc5QiAvKiBT
dHlsZVRleHRFZGdlLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzVFQjgxMDBFODFGMkNFMDBCMjU5
NjUgLyogU3R5bGVUcmFuc2Zvcm1EYXRhLmggaW4gSGVhZGVycyAqLywKIAkJCQlFNERFQUExODE3
QTkzREMzMDAwRTA0MzAgLyogU3R5bGVUcmVlUmVzb2x2ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUU0MkU3NkRDMUM3QUY3NzYwMEUzNjE0RCAvKiBTdHlsZVVwZGF0ZS5oIGluIEhlYWRlcnMgKi8s
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5n
cy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaAppbmRl
eCA1ZTk3OTVjY2QzZWYuLmEzMjUzNWEwY2FjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oCkBAIC01MjI3LDYgKzUyMjcsNTkgQEAgdGVtcGxh
dGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIFNjcm9sbFNuYXBTdG9wKCkg
Y29uc3QKICAgICB9CiB9CiAKK3RlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpD
U1NQcmltaXRpdmVWYWx1ZShUZXh0RWRnZVR5cGUgdGV4dEVkZ2VUeXBlKQorICAgIDogQ1NTVmFs
dWUoUHJpbWl0aXZlQ2xhc3MpCit7CisgICAgc2V0UHJpbWl0aXZlVW5pdFR5cGUoQ1NTVW5pdFR5
cGU6OkNTU19WQUxVRV9JRCk7CisgICAgc3dpdGNoICh0ZXh0RWRnZVR5cGUpIHsKKyAgICBjYXNl
IFRleHRFZGdlVHlwZTo6TGVhZGluZzoKKyAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFs
dWVMZWFkaW5nOworICAgICAgICBicmVhazsKKyAgICBjYXNlIFRleHRFZGdlVHlwZTo6VGV4dDoK
KyAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVUZXh0OworICAgICAgICBicmVhazsK
KyAgICBjYXNlIFRleHRFZGdlVHlwZTo6Q2FwSGVpZ2h0OgorICAgICAgICBtX3ZhbHVlLnZhbHVl
SUQgPSBDU1NWYWx1ZUNhcDsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6
OkV4SGVpZ2h0OgorICAgICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZUV4OworICAgICAg
ICBicmVhazsKKyAgICBjYXNlIFRleHRFZGdlVHlwZTo6QWxwaGFiZXRpYzoKKyAgICAgICAgbV92
YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVBbHBoYWJldGljOworICAgICAgICBicmVhazsKKyAgICBj
YXNlIFRleHRFZGdlVHlwZTo6Q0pLSWRlb2dyYXBoaWM6CisgICAgICAgIG1fdmFsdWUudmFsdWVJ
RCA9IENTU1ZhbHVlSWRlb2dyYXBoaWM7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgVGV4dEVk
Z2VUeXBlOjpDSktJZGVvZ3JhcGhpY0luazoKKyAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NT
VmFsdWVJZGVvZ3JhcGhpY0luazsKKyAgICAgICAgYnJlYWs7CisgICAgfQorfQorCit0ZW1wbGF0
ZTw+IGlubGluZSBDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgVGV4dEVkZ2VUeXBlKCkgY29u
c3QKK3sKKyAgICBBU1NFUlQoaXNWYWx1ZUlEKCkpOworICAgIHN3aXRjaCAobV92YWx1ZS52YWx1
ZUlEKSB7CisgICAgY2FzZSBDU1NWYWx1ZUxlYWRpbmc6CisgICAgICAgIHJldHVybiBUZXh0RWRn
ZVR5cGU6OkxlYWRpbmc7CisgICAgY2FzZSBDU1NWYWx1ZVRleHQ6CisgICAgICAgIHJldHVybiBU
ZXh0RWRnZVR5cGU6OlRleHQ7CisgICAgY2FzZSBDU1NWYWx1ZUNhcDoKKyAgICAgICAgcmV0dXJu
IFRleHRFZGdlVHlwZTo6Q2FwSGVpZ2h0OworICAgIGNhc2UgQ1NTVmFsdWVFeDoKKyAgICAgICAg
cmV0dXJuIFRleHRFZGdlVHlwZTo6RXhIZWlnaHQ7CisgICAgY2FzZSBDU1NWYWx1ZUFscGhhYmV0
aWM6CisgICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OkFscGhhYmV0aWM7CisgICAgY2FzZSBD
U1NWYWx1ZUlkZW9ncmFwaGljOgorICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpDSktJZGVv
Z3JhcGhpYzsKKyAgICBjYXNlIENTU1ZhbHVlSWRlb2dyYXBoaWNJbms6CisgICAgICAgIHJldHVy
biBUZXh0RWRnZVR5cGU6OkNKS0lkZW9ncmFwaGljSW5rOworICAgIGRlZmF1bHQ6CisgICAgICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpMZWFk
aW5nOworICAgIH0KK30KKwogI2lmIEVOQUJMRShBUFBMRV9QQVkpCiB0ZW1wbGF0ZTw+IGlubGlu
ZSBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoQXBwbGVQYXlCdXR0b25TdHls
ZSBlKQogICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xhc3MpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29uIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1By
b3BlcnRpZXMuanNvbgppbmRleCBjMzE1NzVhZDRkYWYuLjFiMzFiMjc5NWY1ZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTUHJvcGVydGllcy5qc29uCkBAIC01MTAsNiArNTEwLDE3IEBACiAgICAgICAg
ICAgICAgICAgInVybCI6ICJodHRwczovL3d3dy53My5vcmcvVFIvY3NzLWZvbnRzLTQvI2ZvbnQt
c3RyZXRjaC1wcm9wIgogICAgICAgICAgICAgfQogICAgICAgICB9LAorICAgICAgICAidGV4dC1l
ZGdlIjogeworICAgICAgICAgICAgImNvZGVnZW4tcHJvcGVydGllcyI6IHsKKyAgICAgICAgICAg
ICAgICAiY29udmVydGVyIjogIlRleHRFZGdlIiwKKyAgICAgICAgICAgICAgICAiY3VzdG9tLXBh
cnNlciI6IHRydWUsCisgICAgICAgICAgICAgICAgInNldHRpbmdzLWZsYWciOiAiY3NzTGVhZGlu
Z1RyaW1FbmFibGVkIgorICAgICAgICAgICAgfSwKKyAgICAgICAgICAgICJzcGVjaWZpY2F0aW9u
IjogeworICAgICAgICAgICAgICAgICJjYXRlZ29yeSI6ICJjc3MtaW5saW5lIiwKKyAgICAgICAg
ICAgICAgICAidXJsIjogImh0dHBzOi8vd3d3LnczLm9yZy9UUi9jc3MtaW5saW5lLTMvI3RleHQt
ZWRnZXMiCisgICAgICAgICAgICB9CisgICAgICAgIH0sCiAgICAgICAgICJ0ZXh0LXJlbmRlcmlu
ZyI6IHsKICAgICAgICAgICAgICJpbmhlcml0ZWQiOiB0cnVlLAogICAgICAgICAgICAgInZhbHVl
cyI6IFsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmlu
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW4KaW5kZXggOTIxYjI1NGI3
Zjc5Li44YzdiZjM2NzYwZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1
ZUtleXdvcmRzLmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmlu
CkBAIC0xMDQwLDYgKzEwNDAsMTUgQEAgbm8tcHVuY3R1YXRpb24KIGFudGlhbGlhc2VkCiBzdWJw
aXhlbC1hbnRpYWxpYXNlZAogCisvLyB0ZXh0LWVkZ2UKK2xlYWRpbmcKKy8vIHRleHQKK2NhcAor
ZXgKKy8vIGlkZW9ncmFwaGljCitpZGVvZ3JhcGhpYy1pbmsKKy8vIGFscGhhYmV0aWMKKwogLy8g
dGV4dC1yZW5kZXJpbmcKIC8vYXV0bwogb3B0aW1pemVTcGVlZApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL0NvbXB1dGVkU3R5bGVFeHRyYWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NvbXB1dGVkU3R5bGVFeHRyYWN0b3IuY3BwCmluZGV4IGU2OTE1ZGUyMWY5NS4uMTRjMzU0
MWQ0MTdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ29tcHV0ZWRTdHlsZUV4dHJh
Y3Rvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NvbXB1dGVkU3R5bGVFeHRyYWN0b3Iu
Y3BwCkBAIC0xMzA1LDYgKzEzMDUsMTQgQEAgc3RhdGljIFJlZjxDU1NWYWx1ZUxpc3Q+IHZhbHVl
Rm9yU2Nyb2xsU25hcEFsaWdubWVudChjb25zdCBTY3JvbGxTbmFwQWxpZ24mIGFsaWcKICAgICBy
ZXR1cm4gdmFsdWU7CiB9CiAKK3N0YXRpYyBSZWY8Q1NTVmFsdWVMaXN0PiB2YWx1ZUZvclRleHRF
ZGdlKGNvbnN0IFRleHRFZGdlJiB0ZXh0RWRnZSkKK3sKKyAgICBhdXRvIHZhbHVlID0gQ1NTVmFs
dWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgpOworICAgIHZhbHVlLT5hcHBlbmQoQ1NTUHJp
bWl0aXZlVmFsdWU6OmNyZWF0ZSh0ZXh0RWRnZS5vdmVyKSk7CisgICAgdmFsdWUtPmFwcGVuZChD
U1NQcmltaXRpdmVWYWx1ZTo6Y3JlYXRlKHRleHRFZGdlLnVuZGVyKSk7CisgICAgcmV0dXJuIHZh
bHVlOworfQorCiBzdGF0aWMgUmVmPENTU1ZhbHVlPiB3aWxsQ2hhbmdlUHJvcGVydHlWYWx1ZShj
b25zdCBXaWxsQ2hhbmdlRGF0YSogd2lsbENoYW5nZURhdGEpCiB7CiAgICAgYXV0byYgY3NzVmFs
dWVQb29sID0gQ1NTVmFsdWVQb29sOjpzaW5nbGV0b24oKTsKQEAgLTQwNzMsNiArNDA4MSw4IEBA
IFJlZlB0cjxDU1NWYWx1ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6dmFsdWVGb3JQcm9wZXJ0
eUluU3R5bGUoY29uc3QgUmVuZGVyU3R5CiAgICAgICAgIHJldHVybiB2YWx1ZUZvclNjcm9sbFNu
YXBUeXBlKHN0eWxlLnNjcm9sbFNuYXBUeXBlKCkpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlPdmVy
Zmxvd0FuY2hvcjoKICAgICAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbC5jcmVhdGVWYWx1ZShzdHls
ZS5vdmVyZmxvd0FuY2hvcigpKTsKKyAgICBjYXNlIENTU1Byb3BlcnR5VGV4dEVkZ2U6CisgICAg
ICAgIHJldHVybiB2YWx1ZUZvclRleHRFZGdlKHN0eWxlLnRleHRFZGdlKCkpOwogCiAjaWYgRU5B
QkxFKEFQUExFX1BBWSkKICAgICBjYXNlIENTU1Byb3BlcnR5QXBwbGVQYXlCdXR0b25TdHlsZToK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJI
ZWxwZXJzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJI
ZWxwZXJzLmNwcAppbmRleCBiMTdlYWZiMDc0NGEuLjgzZjBjN2FkNzBjMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmNw
cApAQCAtNjY4Myw2ICs2NjgzLDI3IEBAIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZVNjcm9sbFNu
YXBUeXBlKENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQogICAgIHJldHVybiB0eXBlVmFsdWU7
CiB9CiAKK1JlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZVRleHRFZGdlKENTU1BhcnNlclRva2VuUmFu
Z2UmIHJhbmdlKQoreworICAgIGF1dG8gdHlwZVZhbHVlID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVT
cGFjZVNlcGFyYXRlZCgpOworICAgIGlmIChyYW5nZS5wZWVrKCkuaWQoKSA9PSBDU1NWYWx1ZUxl
YWRpbmcpIHsKKyAgICAgICAgdHlwZVZhbHVlLT5hcHBlbmQoY29uc3VtZUlkZW50KHJhbmdlKS5y
ZWxlYXNlTm9uTnVsbCgpKTsKKyAgICAgICAgcmV0dXJuIHR5cGVWYWx1ZTsKKyAgICB9CisKKyAg
ICBhdXRvIGZpcnN0R3JvdXBWYWx1ZSA9IGNvbnN1bWVJZGVudDxDU1NWYWx1ZVRleHQsIENTU1Zh
bHVlQ2FwLCBDU1NWYWx1ZUV4LCBDU1NWYWx1ZUlkZW9ncmFwaGljLCBDU1NWYWx1ZUlkZW9ncmFw
aGljSW5rPihyYW5nZSk7CisgICAgaWYgKCFmaXJzdEdyb3VwVmFsdWUpCisgICAgICAgIHJldHVy
biBudWxscHRyOworICAgIHR5cGVWYWx1ZS0+YXBwZW5kKGZpcnN0R3JvdXBWYWx1ZS5yZWxlYXNl
Tm9uTnVsbCgpKTsKKworICAgIGF1dG8gc2Vjb25kR3JvdXBWYWx1ZSA9IGNvbnN1bWVJZGVudDxD
U1NWYWx1ZVRleHQsIENTU1ZhbHVlQWxwaGFiZXRpYywgQ1NTVmFsdWVJZGVvZ3JhcGhpYywgQ1NT
VmFsdWVJZGVvZ3JhcGhpY0luaz4ocmFuZ2UpOworICAgIGlmIChzZWNvbmRHcm91cFZhbHVlKQor
ICAgICAgICB0eXBlVmFsdWUtPmFwcGVuZChzZWNvbmRHcm91cFZhbHVlLnJlbGVhc2VOb25OdWxs
KCkpOworCisgICAgcmV0dXJuIHR5cGVWYWx1ZTsKK30KKworICAgIAogUmVmUHRyPENTU1ZhbHVl
PiBjb25zdW1lQm9yZGVyUmFkaXVzQ29ybmVyKENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlLCBD
U1NQYXJzZXJNb2RlIGNzc1BhcnNlck1vZGUpCiB7CiAgICAgUmVmUHRyPENTU1ByaW1pdGl2ZVZh
bHVlPiBwYXJzZWRWYWx1ZTEgPSBjb25zdW1lTGVuZ3RoT3JQZXJjZW50KHJhbmdlLCBjc3NQYXJz
ZXJNb2RlLCBWYWx1ZVJhbmdlOjpOb25OZWdhdGl2ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5oIGIvU291cmNlL1dlYkNv
cmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuaAppbmRleCBlNzMyZTAwNjdj
MzEuLjRjZTQzZGViMWZiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9D
U1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2Vy
L0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5oCkBAIC0yNzgsNiArMjc4LDcgQEAgUmVmUHRyPENT
U1ZhbHVlPiBjb25zdW1lQ29udGVudChDU1NQYXJzZXJUb2tlblJhbmdlJiwgY29uc3QgQ1NTUGFy
c2VyQ29udGV4dCYpOwogUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lUGVyc3BlY3RpdmUoQ1NTUGFy
c2VyVG9rZW5SYW5nZSYsIENTU1BhcnNlck1vZGUpOwogUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1l
U2Nyb2xsU25hcEFsaWduKENTU1BhcnNlclRva2VuUmFuZ2UmKTsKIFJlZlB0cjxDU1NWYWx1ZT4g
Y29uc3VtZVNjcm9sbFNuYXBUeXBlKENTU1BhcnNlclRva2VuUmFuZ2UmKTsKK1JlZlB0cjxDU1NW
YWx1ZT4gY29uc3VtZVRleHRFZGdlKENTU1BhcnNlclRva2VuUmFuZ2UmKTsKIFJlZlB0cjxDU1NW
YWx1ZT4gY29uc3VtZUJvcmRlclJhZGl1c0Nvcm5lcihDU1NQYXJzZXJUb2tlblJhbmdlJiwgQ1NT
UGFyc2VyTW9kZSk7CiBib29sIGNvbnN1bWVSYWRpaShSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+
IGhvcml6b250YWxSYWRpaVs0XSwgUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiB2ZXJ0aWNhbFJh
ZGlpWzRdLCBDU1NQYXJzZXJUb2tlblJhbmdlJiwgQ1NTUGFyc2VyTW9kZSwgYm9vbCB1c2VMZWdh
Y3lQYXJzaW5nKTsKIGVudW0gY2xhc3MgQ29uc3VtZVJheSB7IEluY2x1ZGUsIEV4Y2x1ZGUgfTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCmluZGV4
IDJjZGQ0MzFhMmQ2Yy4uNjExNDRhOTIxMDRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAKQEAgLTQ5LDYgKzQ5LDcgQEAKICNpbmNsdWRlICJT
dHlsZVJlc29sdmVyLmgiCiAjaW5jbHVkZSAiU3R5bGVTY3JvbGxTbmFwUG9pbnRzLmgiCiAjaW5j
bHVkZSAiU3R5bGVTZWxmQWxpZ25tZW50RGF0YS5oIgorI2luY2x1ZGUgIlN0eWxlVGV4dEVkZ2Uu
aCIKICNpbmNsdWRlICJTdHlsZVRyZWVSZXNvbHZlci5oIgogI2luY2x1ZGUgIldpbGxDaGFuZ2VE
YXRhLmgiCiAjaW5jbHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KQEAgLTI4MDUsNiArMjgwNiwyMSBA
QCBib29sIFJlbmRlclN0eWxlOjpoYXNTbmFwUG9zaXRpb24oKSBjb25zdAogICAgIHJldHVybiBh
bGlnbm1lbnQuYmxvY2tBbGlnbiAhPSBTY3JvbGxTbmFwQXhpc0FsaWduVHlwZTo6Tm9uZSB8fCBh
bGlnbm1lbnQuaW5saW5lQWxpZ24gIT0gU2Nyb2xsU25hcEF4aXNBbGlnblR5cGU6Ok5vbmU7CiB9
CiAKK1RleHRFZGdlIFJlbmRlclN0eWxlOjp0ZXh0RWRnZSgpIGNvbnN0Cit7CisgICAgcmV0dXJu
IG1fcmFyZUluaGVyaXRlZERhdGEtPnRleHRFZGdlOworfQorCit2b2lkIFJlbmRlclN0eWxlOjpz
ZXRUZXh0RWRnZShUZXh0RWRnZSB0ZXh0RWRnZVZhbHVlKQoreworICAgIFNFVF9WQVIobV9yYXJl
SW5oZXJpdGVkRGF0YSwgdGV4dEVkZ2UsIHRleHRFZGdlVmFsdWUpOworfQorCitUZXh0RWRnZSBS
ZW5kZXJTdHlsZTo6aW5pdGlhbFRleHRFZGdlKCkKK3sKKyAgICByZXR1cm4geyBUZXh0RWRnZVR5
cGU6OkxlYWRpbmcsIFRleHRFZGdlVHlwZTo6TGVhZGluZyB9OworfQorCiBib29sIFJlbmRlclN0
eWxlOjpoYXNSZWZlcmVuY2VGaWx0ZXJPbmx5KCkgY29uc3QKIHsKICAgICBpZiAoIWhhc0ZpbHRl
cigpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0
eWxlLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaAppbmRl
eCAzY2Q0NzQzOTNlNjMuLmVjZWZjMjU2MjVkYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL1JlbmRlclN0eWxlLmgKQEAgLTEyNSw2ICsxMjUsOCBAQCBjbGFzcyBUcmFuc2Zv
cm1hdGlvbk1hdHJpeDsKIHN0cnVjdCBTY3JvbGxTbmFwQWxpZ247CiBzdHJ1Y3QgU2Nyb2xsU25h
cFR5cGU7CiAKK3N0cnVjdCBUZXh0RWRnZTsKKwogdXNpbmcgUHNldWRvU3R5bGVDYWNoZSA9IFZl
Y3RvcjxzdGQ6OnVuaXF1ZV9wdHI8UmVuZGVyU3R5bGU+LCA0PjsKIAogdGVtcGxhdGU8dHlwZW5h
bWUgVCwgdHlwZW5hbWUgVT4gaW5saW5lIGJvb2wgY29tcGFyZUVxdWFsKGNvbnN0IFQmIHQsIGNv
bnN0IFUmIHUpIHsgcmV0dXJuIHQgPT0gc3RhdGljX2Nhc3Q8Y29uc3QgVCY+KHUpOyB9CkBAIC0z
OTcsNiArMzk5LDcgQEAgcHVibGljOgogICAgIFRleHRKdXN0aWZ5IHRleHRKdXN0aWZ5KCkgY29u
c3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8VGV4dEp1c3RpZnk+KG1fcmFyZUluaGVyaXRlZERhdGEt
PnRleHRKdXN0aWZ5KTsgfQogCiAgICAgTGVhZGluZ1RyaW0gbGVhZGluZ1RyaW0oKSBjb25zdCB7
IHJldHVybiBzdGF0aWNfY2FzdDxMZWFkaW5nVHJpbT4obV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+
bGVhZGluZ1RyaW0pOyB9CisgICAgVGV4dEVkZ2UgdGV4dEVkZ2UoKSBjb25zdDsKIAogICAgIGNv
bnN0IExlbmd0aCYgd29yZFNwYWNpbmcoKSBjb25zdDsKICAgICBmbG9hdCBsZXR0ZXJTcGFjaW5n
KCkgY29uc3Q7CkBAIC0xMDU2LDYgKzEwNTksNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRUZXh0
SnVzdGlmeShUZXh0SnVzdGlmeSB2KSB7IFNFVF9WQVIobV9yYXJlSW5oZXJpdGVkRGF0YSwgdGV4
dEp1c3RpZnksIHN0YXRpY19jYXN0PHVuc2lnbmVkPih2KSk7IH0KIAogICAgIHZvaWQgc2V0TGVh
ZGluZ1RyaW0oTGVhZGluZ1RyaW0gdmFsdWUpIHsgU0VUX1ZBUihtX3JhcmVOb25Jbmhlcml0ZWRE
YXRhLCBsZWFkaW5nVHJpbSwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHZhbHVlKSk7IH0KKyAgICB2
b2lkIHNldFRleHRFZGdlKFRleHRFZGdlKTsKIAogI2lmIEVOQUJMRShURVhUX0FVVE9TSVpJTkcp
CiAgICAgdm9pZCBzZXRTcGVjaWZpZWRMaW5lSGVpZ2h0KExlbmd0aCYmKTsKQEAgLTE2NzEsNiAr
MTY3NSw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgTGVuZ3RoIGluaXRpYWxQYWRkaW5nKCkgeyBy
ZXR1cm4gTGVuZ3RoKExlbmd0aFR5cGU6OkZpeGVkKTsgfQogICAgIHN0YXRpYyBMZW5ndGggaW5p
dGlhbFRleHRJbmRlbnQoKSB7IHJldHVybiBMZW5ndGgoTGVuZ3RoVHlwZTo6Rml4ZWQpOyB9CiAg
ICAgc3RhdGljIExlYWRpbmdUcmltIGluaXRpYWxMZWFkaW5nVHJpbSgpIHsgcmV0dXJuIExlYWRp
bmdUcmltOjpOb3JtYWw7IH0KKyAgICBzdGF0aWMgVGV4dEVkZ2UgaW5pdGlhbFRleHRFZGdlKCk7
CiAgICAgc3RhdGljIExlbmd0aCBpbml0aWFsWmVyb0xlbmd0aCgpIHsgcmV0dXJuIExlbmd0aChM
ZW5ndGhUeXBlOjpGaXhlZCk7IH0KICAgICBzdGF0aWMgTGVuZ3RoIGluaXRpYWxPbmVMZW5ndGgo
KSB7IHJldHVybiBMZW5ndGgoMSwgTGVuZ3RoVHlwZTo6Rml4ZWQpOyB9CiAgICAgc3RhdGljIHVu
c2lnbmVkIHNob3J0IGluaXRpYWxXaWRvd3MoKSB7IHJldHVybiAyOyB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuY3BwIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcApp
bmRleCBhYjFjMjZhZGMyYmEuLjYzMjNlOTA4MzNmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuY3BwCkBAIC0xMTYw
LDYgKzExNjAsMjAgQEAgVGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiB0cywgTGVh
ZGluZ1RyaW0gbGVhZGluZ1RyaW0pCiAgICAgcmV0dXJuIHRzOwogfQogCitUZXh0U3RyZWFtJiBv
cGVyYXRvcjw8KFRleHRTdHJlYW0mIHRzLCBUZXh0RWRnZVR5cGUgdGV4dEVkZ2VUeXBlKQorewor
ICAgIHN3aXRjaCAodGV4dEVkZ2VUeXBlKSB7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OkxlYWRp
bmc6IHRzIDw8ICJoYWxmLWxlYWRpbmciOyBicmVhazsKKyAgICBjYXNlIFRleHRFZGdlVHlwZTo6
VGV4dDogdHMgPDwgInRleHQtb3Zlci91bmRlciBiYXNlbGluZSI7IGJyZWFrOworICAgIGNhc2Ug
VGV4dEVkZ2VUeXBlOjpDYXBIZWlnaHQ6IHRzIDw8ICJjYXAtaGVpZ2h0IGJhc2VsaW5lIjsgYnJl
YWs7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OkV4SGVpZ2h0OiB0cyA8PCAieC1oZWlnaHQgYmFz
ZWxpbmUiOyBicmVhazsKKyAgICBjYXNlIFRleHRFZGdlVHlwZTo6QWxwaGFiZXRpYzogdHMgPDwg
ImFscGhhYmV0aWMgYmFzZWxpbmUiOyBicmVhazsKKyAgICBjYXNlIFRleHRFZGdlVHlwZTo6Q0pL
SWRlb2dyYXBoaWM6IHRzIDw8ICJpZGVvZ3JhcGhpYy1vdmVyIGJhc2VsaW5lIjsgYnJlYWs7Cisg
ICAgY2FzZSBUZXh0RWRnZVR5cGU6OkNKS0lkZW9ncmFwaGljSW5rOiB0cyA8PCAiaWRlb2dyYXBo
aWMtaW5rLW92ZXIvaW5rLXVuZGVyIGJhc2VsaW5lIjsgYnJlYWs7CisgICAgfQorICAgIHJldHVy
biB0czsKK30KKwogVGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiB0cywgVGV4dFpv
b20gem9vbSkKIHsKICAgICBzd2l0Y2ggKHpvb20pIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgKaW5kZXggNGYyZWExMmUx
NjQ4Li4xODU3NWQxZDQ4ODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oCkBAIC03ODgsNiArNzg4LDE2IEBAIGVudW0g
Y2xhc3MgTGVhZGluZ1RyaW0gOiB1aW50OF90IHsKICAgICBCb3RoCiB9OwogCitlbnVtIGNsYXNz
IFRleHRFZGdlVHlwZSA6IHVpbnQ4X3QgeworICAgIExlYWRpbmcsCisgICAgVGV4dCwKKyAgICBD
YXBIZWlnaHQsCisgICAgRXhIZWlnaHQsCisgICAgQWxwaGFiZXRpYywKKyAgICBDSktJZGVvZ3Jh
cGhpYywKKyAgICBDSktJZGVvZ3JhcGhpY0luaworfTsKKwogZW51bSBjbGFzcyBUZXh0Wm9vbSA6
IHVpbnQ4X3QgewogICAgIE5vcm1hbCwKICAgICBSZXNldApAQCAtMTMyNCw2ICsxMzM0LDcgQEAg
V1RGOjpUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFdURjo6VGV4dFN0cmVhbSYsIFRleHRTZWN1cml0
eSk7CiBXVEY6OlRleHRTdHJlYW0mIG9wZXJhdG9yPDwoV1RGOjpUZXh0U3RyZWFtJiwgVGV4dFRy
YW5zZm9ybSk7CiBXVEY6OlRleHRTdHJlYW0mIG9wZXJhdG9yPDwoV1RGOjpUZXh0U3RyZWFtJiwg
VGV4dFVuZGVybGluZVBvc2l0aW9uKTsKIFdURjo6VGV4dFN0cmVhbSYgb3BlcmF0b3I8PChXVEY6
OlRleHRTdHJlYW0mLCBMZWFkaW5nVHJpbSk7CitXVEY6OlRleHRTdHJlYW0mIG9wZXJhdG9yPDwo
V1RGOjpUZXh0U3RyZWFtJiwgVGV4dEVkZ2VUeXBlKTsKIFdURjo6VGV4dFN0cmVhbSYgb3BlcmF0
b3I8PChXVEY6OlRleHRTdHJlYW0mLCBUZXh0Wm9vbSk7CiBXVEY6OlRleHRTdHJlYW0mIG9wZXJh
dG9yPDwoV1RGOjpUZXh0U3RyZWFtJiwgVHJhbnNmb3JtQm94KTsKIFdURjo6VGV4dFN0cmVhbSYg
b3BlcmF0b3I8PChXVEY6OlRleHRTdHJlYW0mLCBUcmFuc2Zvcm1TdHlsZTNEKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRh
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWRE
YXRhLmNwcAppbmRleCBhYmEyMTllM2UxYjcuLmEyZGFlNGVjZmE5NCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRh
LmNwcApAQCAtNDcsNiArNDcsNyBAQCBzdHJ1Y3QgR3JlYXRlclRoYW5PclNhbWVTaXplQXNTdHls
ZVJhcmVJbmhlcml0ZWREYXRhIDogcHVibGljIFJlZkNvdW50ZWQ8R3JlYXRlcgogICAgIExlbmd0
aCBsZW5ndGhzWzJdOwogICAgIGZsb2F0IHNlY29uZEZsb2F0OwogICAgIFRleHRVbmRlcmxpbmVP
ZmZzZXQgb2Zmc2V0OworICAgIFRleHRFZGdlIHRleHRFZGdlOwogICAgIHZvaWQqIGN1c3RvbVBy
b3BlcnR5RGF0YVJlZnNbMV07CiAgICAgdW5zaWduZWQgYml0ZmllbGRzWzddOwogICAgIHNob3J0
IHBhZ2VkTWVkaWFTaG9ydHNbMl07CkBAIC05MCw2ICs5MSw3IEBAIFN0eWxlUmFyZUluaGVyaXRl
ZERhdGE6OlN0eWxlUmFyZUluaGVyaXRlZERhdGEoKQogICAgICwgaW5kZW50KFJlbmRlclN0eWxl
Ojppbml0aWFsVGV4dEluZGVudCgpKQogICAgICwgZWZmZWN0aXZlWm9vbShSZW5kZXJTdHlsZTo6
aW5pdGlhbFpvb20oKSkKICAgICAsIHRleHRVbmRlcmxpbmVPZmZzZXQoUmVuZGVyU3R5bGU6Omlu
aXRpYWxUZXh0VW5kZXJsaW5lT2Zmc2V0KCkpCisgICAgLCB0ZXh0RWRnZShSZW5kZXJTdHlsZTo6
aW5pdGlhbFRleHRFZGdlKCkpCiAgICAgLCBtaXRlckxpbWl0KFJlbmRlclN0eWxlOjppbml0aWFs
U3Ryb2tlTWl0ZXJMaW1pdCgpKQogICAgICwgY3VzdG9tUHJvcGVydGllcyhTdHlsZUN1c3RvbVBy
b3BlcnR5RGF0YTo6Y3JlYXRlKCkpCiAgICAgLCB3aWRvd3MoUmVuZGVyU3R5bGU6OmluaXRpYWxX
aWRvd3MoKSkKQEAgLTE4Niw2ICsxODgsNyBAQCBpbmxpbmUgU3R5bGVSYXJlSW5oZXJpdGVkRGF0
YTo6U3R5bGVSYXJlSW5oZXJpdGVkRGF0YShjb25zdCBTdHlsZVJhcmVJbmhlcml0ZWREYQogICAg
ICwgaW5kZW50KG8uaW5kZW50KQogICAgICwgZWZmZWN0aXZlWm9vbShvLmVmZmVjdGl2ZVpvb20p
CiAgICAgLCB0ZXh0VW5kZXJsaW5lT2Zmc2V0KG8udGV4dFVuZGVybGluZU9mZnNldCkKKyAgICAs
IHRleHRFZGdlKG8udGV4dEVkZ2UpCiAgICAgLCBtaXRlckxpbWl0KG8ubWl0ZXJMaW1pdCkKICAg
ICAsIGN1c3RvbVByb3BlcnRpZXMoby5jdXN0b21Qcm9wZXJ0aWVzKQogICAgICwgd2lkb3dzKG8u
d2lkb3dzKQpAQCAtMjk3LDYgKzMwMCw3IEBAIGJvb2wgU3R5bGVSYXJlSW5oZXJpdGVkRGF0YTo6
b3BlcmF0b3I9PShjb25zdCBTdHlsZVJhcmVJbmhlcml0ZWREYXRhJiBvKSBjb25zdAogICAgICAg
ICAmJiBpbmRlbnQgPT0gby5pbmRlbnQKICAgICAgICAgJiYgZWZmZWN0aXZlWm9vbSA9PSBvLmVm
ZmVjdGl2ZVpvb20KICAgICAgICAgJiYgdGV4dFVuZGVybGluZU9mZnNldCA9PSBvLnRleHRVbmRl
cmxpbmVPZmZzZXQKKyAgICAgICAgJiYgdGV4dEVkZ2UgPT0gby50ZXh0RWRnZQogICAgICAgICAm
JiB3b3JkU3BhY2luZyA9PSBvLndvcmRTcGFjaW5nCiAgICAgICAgICYmIG1pdGVyTGltaXQgPT0g
by5taXRlckxpbWl0CiAgICAgICAgICYmIHdpZG93cyA9PSBvLndpZG93cwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuaCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmgK
aW5kZXggNDFhYWM2NThmMTMwLi4xYzBiYWQ4ODVmNmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuaApAQCAtMjgs
NiArMjgsNyBAQAogI2luY2x1ZGUgIlJlbmRlclN0eWxlQ29uc3RhbnRzLmgiCiAjaW5jbHVkZSAi
U3R5bGVDb2xvci5oIgogI2luY2x1ZGUgIlN0eWxlQ3VzdG9tUHJvcGVydHlEYXRhLmgiCisjaW5j
bHVkZSAiU3R5bGVUZXh0RWRnZS5oIgogI2luY2x1ZGUgIlRhYlNpemUuaCIKICNpbmNsdWRlICJU
ZXh0VW5kZXJsaW5lT2Zmc2V0LmgiCiAjaW5jbHVkZSAiVG91Y2hBY3Rpb24uaCIKQEAgLTk2LDYg
Kzk3LDggQEAgcHVibGljOgogICAgIGZsb2F0IGVmZmVjdGl2ZVpvb207CiAKICAgICBUZXh0VW5k
ZXJsaW5lT2Zmc2V0IHRleHRVbmRlcmxpbmVPZmZzZXQ7CisKKyAgICBUZXh0RWRnZSB0ZXh0RWRn
ZTsKICAgICAKICAgICBMZW5ndGggd29yZFNwYWNpbmc7CiAgICAgZmxvYXQgbWl0ZXJMaW1pdDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVRleHRFZGdl
LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVUZXh0RWRnZS5oCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uODQ3NmFlOGM5MGM4Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlVGV4dEVkZ2Uu
aApAQCAtMCwwICsxLDQ0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIyIEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRl
ICJSZW5kZXJTdHlsZUNvbnN0YW50cy5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0cnVj
dCBUZXh0RWRnZSB7CisgICAgVGV4dEVkZ2VUeXBlIG92ZXIgeyBUZXh0RWRnZVR5cGU6OkxlYWRp
bmcgfTsKKyAgICBUZXh0RWRnZVR5cGUgdW5kZXIgeyBUZXh0RWRnZVR5cGU6OkxlYWRpbmcgfTsK
K307CisKK2lubGluZSBib29sIG9wZXJhdG9yPT0oY29uc3QgVGV4dEVkZ2UmIGEsIGNvbnN0IFRl
eHRFZGdlJiBiKQoreworICAgIHJldHVybiBhLm92ZXIgPT0gYi5vdmVyICYmIGEudW5kZXIgPT0g
Yi51bmRlcjsKK30KKworaW5saW5lIGJvb2wgb3BlcmF0b3IhPShjb25zdCBUZXh0RWRnZSYgYSwg
Y29uc3QgVGV4dEVkZ2UmIGIpIHsgcmV0dXJuICEoYSA9PSBiKTsgfQorCit9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJD
b252ZXJ0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5o
CmluZGV4IGI2ZTNjYmEzMmE5Yy4uOWEyODgxYmQ1OWIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9z
dHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaApAQCAtNjIsNiArNjIsNyBAQAogI2luY2x1ZGUg
IlN0eWxlQnVpbGRlclN0YXRlLmgiCiAjaW5jbHVkZSAiU3R5bGVHcmlkRGF0YS5oIgogI2luY2x1
ZGUgIlN0eWxlU2Nyb2xsU25hcFBvaW50cy5oIgorI2luY2x1ZGUgIlN0eWxlVGV4dEVkZ2UuaCIK
ICNpbmNsdWRlICJUYWJTaXplLmgiCiAjaW5jbHVkZSAiVG91Y2hBY3Rpb24uaCIKICNpbmNsdWRl
ICJUcmFuc2Zvcm1GdW5jdGlvbnMuaCIKQEAgLTExNSw2ICsxMTYsNyBAQCBwdWJsaWM6CiAgICAg
c3RhdGljIFRleHRVbmRlcmxpbmVPZmZzZXQgY29udmVydFRleHRVbmRlcmxpbmVPZmZzZXQoQnVp
bGRlclN0YXRlJiwgY29uc3QgQ1NTVmFsdWUmKTsKICAgICBzdGF0aWMgVGV4dERlY29yYXRpb25U
aGlja25lc3MgY29udmVydFRleHREZWNvcmF0aW9uVGhpY2tuZXNzKEJ1aWxkZXJTdGF0ZSYsIGNv
bnN0IENTU1ZhbHVlJik7CiAgICAgc3RhdGljIFJlZlB0cjxTdHlsZVJlZmxlY3Rpb24+IGNvbnZl
cnRSZWZsZWN0aW9uKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CisgICAgc3RhdGlj
IFRleHRFZGdlIGNvbnZlcnRUZXh0RWRnZShCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYp
OwogICAgIHN0YXRpYyBJbnRTaXplIGNvbnZlcnRJbml0aWFsTGV0dGVyKEJ1aWxkZXJTdGF0ZSYs
IGNvbnN0IENTU1ZhbHVlJik7CiAgICAgc3RhdGljIGZsb2F0IGNvbnZlcnRUZXh0U3Ryb2tlV2lk
dGgoQnVpbGRlclN0YXRlJiwgY29uc3QgQ1NTVmFsdWUmKTsKICAgICBzdGF0aWMgT3B0aW9uU2V0
PExpbmVCb3hDb250YWluPiBjb252ZXJ0TGluZUJveENvbnRhaW4oQnVpbGRlclN0YXRlJiwgY29u
c3QgQ1NTVmFsdWUmKTsKQEAgLTg0Miw2ICs4NDQsNTkgQEAgaW5saW5lIFJlZlB0cjxTdHlsZVJl
ZmxlY3Rpb24+IEJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRSZWZsZWN0aW9uKEJ1aWxkZXJTdGF0
ZSYKICAgICByZXR1cm4gcmVmbGVjdGlvbjsKIH0KIAoraW5saW5lIFRleHRFZGdlIEJ1aWxkZXJD
b252ZXJ0ZXI6OmNvbnZlcnRUZXh0RWRnZShCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYg
dmFsdWUpCit7CisgICAgYXV0byYgdmFsdWVzID0gZG93bmNhc3Q8Q1NTVmFsdWVMaXN0Pih2YWx1
ZSk7CisgICAgYXV0byYgZmlyc3RWYWx1ZSA9IGRvd25jYXN0PENTU1ByaW1pdGl2ZVZhbHVlPigq
dmFsdWVzLml0ZW0oMCkpOworCisgICAgYXV0byBvdmVyVmFsdWUgPSBbJl0geworICAgICAgICBz
d2l0Y2ggKGZpcnN0VmFsdWUudmFsdWVJRCgpKSB7CisgICAgICAgIGNhc2UgQ1NTVmFsdWVMZWFk
aW5nOgorICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6TGVhZGluZzsKKyAgICAgICAg
Y2FzZSBDU1NWYWx1ZVRleHQ6CisgICAgICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpUZXh0
OworICAgICAgICBjYXNlIENTU1ZhbHVlQ2FwOgorICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdl
VHlwZTo6Q2FwSGVpZ2h0OworICAgICAgICBjYXNlIENTU1ZhbHVlRXg6CisgICAgICAgICAgICBy
ZXR1cm4gVGV4dEVkZ2VUeXBlOjpFeEhlaWdodDsKKyAgICAgICAgY2FzZSBDU1NWYWx1ZUlkZW9n
cmFwaGljOgorICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6Q0pLSWRlb2dyYXBoaWM7
CisgICAgICAgIGNhc2UgQ1NTVmFsdWVJZGVvZ3JhcGhpY0luazoKKyAgICAgICAgICAgIHJldHVy
biBUZXh0RWRnZVR5cGU6OkNKS0lkZW9ncmFwaGljSW5rOworICAgICAgICBkZWZhdWx0OgorICAg
ICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgICAgICByZXR1cm4gVGV4dEVk
Z2VUeXBlOjpMZWFkaW5nOworICAgICAgICB9CisgICAgfTsKKworICAgIGF1dG8gdW5kZXJWYWx1
ZSA9IFsmXSB7CisgICAgICAgIGlmIChmaXJzdFZhbHVlLnZhbHVlSUQoKSA9PSBDU1NWYWx1ZUxl
YWRpbmcpCisgICAgICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpMZWFkaW5nOworICAgICAg
ICBpZiAodmFsdWVzLmxlbmd0aCgpID09IDEpIHsKKyAgICAgICAgICAgIC8vIGh0dHBzOi8vd3d3
LnczLm9yZy9UUi9jc3MtaW5saW5lLTMvI3RleHQtZWRnZXMKKyAgICAgICAgICAgIC8vICJJZiBv
bmx5IG9uZSB2YWx1ZSBpcyBzcGVjaWZpZWQsIGJvdGggZWRnZXMgYXJlIGFzc2lnbmVkIHRoYXQg
c2FtZSBrZXl3b3JkIGlmIHBvc3NpYmxlOyBlbHNlIHRleHQgaXMgYXNzdW1lZCBhcyB0aGUgbWlz
c2luZyB2YWx1ZS4iCisgICAgICAgICAgICAvLyBGSVhNRTogRmlndXJlIG91dCB3aGF0ICJpZiBw
b3NzaWJsZSIgbWVhbnMgaGVyZS4KKyAgICAgICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OlRl
eHQ7CisgICAgICAgIH0KKworICAgICAgICBhdXRvJiBzZWNvbmRWYWx1ZSA9IGRvd25jYXN0PENT
U1ByaW1pdGl2ZVZhbHVlPigqdmFsdWVzLml0ZW0oMSkpOworICAgICAgICBzd2l0Y2ggKHNlY29u
ZFZhbHVlLnZhbHVlSUQoKSkgeworICAgICAgICBjYXNlIENTU1ZhbHVlVGV4dDoKKyAgICAgICAg
ICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OlRleHQ7CisgICAgICAgIGNhc2UgQ1NTVmFsdWVBbHBo
YWJldGljOgorICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6QWxwaGFiZXRpYzsKKyAg
ICAgICAgY2FzZSBDU1NWYWx1ZUlkZW9ncmFwaGljOgorICAgICAgICAgICAgcmV0dXJuIFRleHRF
ZGdlVHlwZTo6Q0pLSWRlb2dyYXBoaWM7CisgICAgICAgIGNhc2UgQ1NTVmFsdWVJZGVvZ3JhcGhp
Y0luazoKKyAgICAgICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OkNKS0lkZW9ncmFwaGljSW5r
OworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Cisg
ICAgICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpMZWFkaW5nOworICAgICAgICB9CisgICAg
fTsKKyAgICByZXR1cm4geyBvdmVyVmFsdWUoKSwgdW5kZXJWYWx1ZSgpIH07Cit9CisKIGlubGlu
ZSBJbnRTaXplIEJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRJbml0aWFsTGV0dGVyKEJ1aWxkZXJT
dGF0ZSYsIGNvbnN0IENTU1ZhbHVlJiB2YWx1ZSkKIHsKICAgICBhdXRvJiBwcmltaXRpdmVWYWx1
ZSA9IGRvd25jYXN0PENTU1ByaW1pdGl2ZVZhbHVlPih2YWx1ZSk7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L3RleHQvdGV4dC1lZGdlLXByb3BlcnR5LXBhcnNpbmctZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3RleHQtZWRnZS1wcm9wZXJ0eS1wYXJzaW5nLWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmQ5YjVlNTVh
MmFhOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC90ZXh0LWVkZ2Ut
cHJvcGVydHktcGFyc2luZy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1MSBAQAorVGVzdCBwYXJz
aW5nIG9mIHRoZSBDU1MgdGV4dC1lZGdlIHByb3BlcnR5LgorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKworUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGxlYWRpbmciKSBpcyAibGVhZGluZyIK
K1BBU1MgdGVzdCgidGV4dC1lZGdlOiB0ZXh0IikgaXMgInRleHQiCitQQVNTIHRlc3QoInRleHQt
ZWRnZTogY2FwIikgaXMgImNhcCIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBleCIpIGlzICJleCIK
K1BBU1MgdGVzdCgidGV4dC1lZGdlOiBpZGVvZ3JhcGhpYyIpIGlzICJpZGVvZ3JhcGhpYyIKK1BB
U1MgdGVzdCgidGV4dC1lZGdlOiBpZGVvZ3JhcGhpYy1pbmsiKSBpcyAiaWRlb2dyYXBoaWMtaW5r
IgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGFscGhhYmV0aWMiKSBpcyAiIgorUEFTUyB0ZXN0KCJ0
ZXh0LWVkZ2U6IHRleHQgdGV4dCIpIGlzICJ0ZXh0IHRleHQiCitQQVNTIHRlc3QoInRleHQtZWRn
ZTogdGV4dCBhbHBoYWJldGljIikgaXMgInRleHQgYWxwaGFiZXRpYyIKK1BBU1MgdGVzdCgidGV4
dC1lZGdlOiB0ZXh0IGlkZW9ncmFwaGljIikgaXMgInRleHQgaWRlb2dyYXBoaWMiCitQQVNTIHRl
c3QoInRleHQtZWRnZTogdGV4dCBpZGVvZ3JhcGhpYy1pbmsiKSBpcyAidGV4dCBpZGVvZ3JhcGhp
Yy1pbmsiCitQQVNTIHRlc3QoInRleHQtZWRnZTogY2FwIHRleHQiKSBpcyAiY2FwIHRleHQiCitQ
QVNTIHRlc3QoInRleHQtZWRnZTogY2FwIGFscGhhYmV0aWMiKSBpcyAiY2FwIGFscGhhYmV0aWMi
CitQQVNTIHRlc3QoInRleHQtZWRnZTogY2FwIGlkZW9ncmFwaGljIikgaXMgImNhcCBpZGVvZ3Jh
cGhpYyIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBjYXAgaWRlb2dyYXBoaWMtaW5rIikgaXMgImNh
cCBpZGVvZ3JhcGhpYy1pbmsiCitQQVNTIHRlc3QoInRleHQtZWRnZTogZXggdGV4dCIpIGlzICJl
eCB0ZXh0IgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGV4IGFscGhhYmV0aWMiKSBpcyAiZXggYWxw
aGFiZXRpYyIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBleCBpZGVvZ3JhcGhpYyIpIGlzICJleCBp
ZGVvZ3JhcGhpYyIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBleCBpZGVvZ3JhcGhpYy1pbmsiKSBp
cyAiZXggaWRlb2dyYXBoaWMtaW5rIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGlkZW9ncmFwaGlj
IHRleHQiKSBpcyAiaWRlb2dyYXBoaWMgdGV4dCIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBpZGVv
Z3JhcGhpYyBhbHBoYWJldGljIikgaXMgImlkZW9ncmFwaGljIGFscGhhYmV0aWMiCitQQVNTIHRl
c3QoInRleHQtZWRnZTogaWRlb2dyYXBoaWMgaWRlb2dyYXBoaWMiKSBpcyAiaWRlb2dyYXBoaWMg
aWRlb2dyYXBoaWMiCitQQVNTIHRlc3QoInRleHQtZWRnZTogaWRlb2dyYXBoaWMgaWRlb2dyYXBo
aWMtaW5rIikgaXMgImlkZW9ncmFwaGljIGlkZW9ncmFwaGljLWluayIKK1BBU1MgdGVzdCgidGV4
dC1lZGdlOiBpZGVvZ3JhcGhpYy1pbmsgdGV4dCIpIGlzICJpZGVvZ3JhcGhpYy1pbmsgdGV4dCIK
K1BBU1MgdGVzdCgidGV4dC1lZGdlOiBpZGVvZ3JhcGhpYy1pbmsgYWxwaGFiZXRpYyIpIGlzICJp
ZGVvZ3JhcGhpYy1pbmsgYWxwaGFiZXRpYyIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBpZGVvZ3Jh
cGhpYy1pbmsgaWRlb2dyYXBoaWMiKSBpcyAiaWRlb2dyYXBoaWMtaW5rIGlkZW9ncmFwaGljIgor
UEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGlkZW9ncmFwaGljLWluayBpZGVvZ3JhcGhpYy1pbmsiKSBp
cyAiaWRlb2dyYXBoaWMtaW5rIGlkZW9ncmFwaGljLWluayIKK1BBU1MgdGVzdCgidGV4dC1lZGdl
OiBsZWFkaW5nIGxlYWRpbmciKSBpcyAiIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGxlYWRpbmcg
dGV4dCIpIGlzICIiCitQQVNTIHRlc3QoInRleHQtZWRnZTogbGVhZGluZyBjYXAiKSBpcyAiIgor
UEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGxlYWRpbmcgZXgiKSBpcyAiIgorUEFTUyB0ZXN0KCJ0ZXh0
LWVkZ2U6IGxlYWRpbmcgaWRlb2dyYXBoaWMiKSBpcyAiIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6
IGxlYWRpbmcgaWRlb2dyYXBoaWMtaW5rIikgaXMgIiIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiB0
ZXh0IGxlYWRpbmciKSBpcyAiIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGNhcCBsZWFkaW5nIikg
aXMgIiIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBleCBsZWFkaW5nIikgaXMgIiIKK1BBU1MgdGVz
dCgidGV4dC1lZGdlOiBpZGVvZ3JhcGhpYyBsZWFkaW5nIikgaXMgIiIKK1BBU1MgdGVzdCgidGV4
dC1lZGdlOiBpZGVvZ3JhcGhpYy1pbmsgbGVhZGluZyIpIGlzICIiCitQQVNTIHRlc3QoInRleHQt
ZWRnZTogdGV4dCBjYXAiKSBpcyAiIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IHRleHQgZXgiKSBp
cyAiIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGFscGhhYmV0aWMiKSBpcyAiIgorUEFTUyB0ZXN0
KCJ0ZXh0LWVkZ2U6IGFscGhhYmV0aWMgdGV4dCIpIGlzICIiCitQQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC90ZXh0L3RleHQtZWRnZS1wcm9wZXJ0eS1wYXJzaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L3RleHQvdGV4dC1lZGdlLXByb3BlcnR5LXBhcnNpbmcuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjM3MjU0N2FjNjc5YwotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvdGV4dC90ZXh0LWVkZ2UtcHJvcGVydHktcGFyc2luZy5odG1sCkBA
IC0wLDAgKzEsNzEgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwv
L0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK2Rlc2NyaXB0
aW9uKCdUZXN0IHBhcnNpbmcgb2YgdGhlIENTUyB0ZXh0LWVkZ2UgcHJvcGVydHkuJyk7CisKK2Z1
bmN0aW9uIHRlc3QoZGVjbGFyYXRpb24pIHsKKyAgICB2YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgiZGl2Iik7CisgICAgZGl2LnNldEF0dHJpYnV0ZSgic3R5bGUiLCBkZWNsYXJhdGlv
bik7CisgICAgcmV0dXJuIGRpdi5zdHlsZS50ZXh0RWRnZTsKK30KKworc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGxlYWRpbmciKScsICJsZWFkaW5nIik7CisKK3Nob3Vs
ZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiB0ZXh0IiknLCAidGV4dCIpOworc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGNhcCIpJywgImNhcCIpOworc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGV4IiknLCAiZXgiKTsKK3Nob3Vs
ZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBpZGVvZ3JhcGhpYyIpJywgImlkZW9n
cmFwaGljIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogaWRlb2dy
YXBoaWMtaW5rIiknLCAiaWRlb2dyYXBoaWMtaW5rIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmco
J3Rlc3QoInRleHQtZWRnZTogYWxwaGFiZXRpYyIpJywgIiIpOworCitzaG91bGRCZUVxdWFsVG9T
dHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogdGV4dCB0ZXh0IiknLCAidGV4dCB0ZXh0Iik7CitzaG91
bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogdGV4dCBhbHBoYWJldGljIiknLCAi
dGV4dCBhbHBoYWJldGljIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRn
ZTogdGV4dCBpZGVvZ3JhcGhpYyIpJywgInRleHQgaWRlb2dyYXBoaWMiKTsKK3Nob3VsZEJlRXF1
YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiB0ZXh0IGlkZW9ncmFwaGljLWluayIpJywgInRl
eHQgaWRlb2dyYXBoaWMtaW5rIik7CisKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4
dC1lZGdlOiBjYXAgdGV4dCIpJywgImNhcCB0ZXh0Iik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmco
J3Rlc3QoInRleHQtZWRnZTogY2FwIGFscGhhYmV0aWMiKScsICJjYXAgYWxwaGFiZXRpYyIpOwor
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGNhcCBpZGVvZ3JhcGhpYyIp
JywgImNhcCBpZGVvZ3JhcGhpYyIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0
LWVkZ2U6IGNhcCBpZGVvZ3JhcGhpYy1pbmsiKScsICJjYXAgaWRlb2dyYXBoaWMtaW5rIik7CisK
K3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBleCB0ZXh0IiknLCAiZXgg
dGV4dCIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGV4IGFscGhh
YmV0aWMiKScsICJleCBhbHBoYWJldGljIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3Qo
InRleHQtZWRnZTogZXggaWRlb2dyYXBoaWMiKScsICJleCBpZGVvZ3JhcGhpYyIpOworc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGV4IGlkZW9ncmFwaGljLWluayIpJywg
ImV4IGlkZW9ncmFwaGljLWluayIpOworCitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRl
eHQtZWRnZTogaWRlb2dyYXBoaWMgdGV4dCIpJywgImlkZW9ncmFwaGljIHRleHQiKTsKK3Nob3Vs
ZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBpZGVvZ3JhcGhpYyBhbHBoYWJldGlj
IiknLCAiaWRlb2dyYXBoaWMgYWxwaGFiZXRpYyIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0
ZXN0KCJ0ZXh0LWVkZ2U6IGlkZW9ncmFwaGljIGlkZW9ncmFwaGljIiknLCAiaWRlb2dyYXBoaWMg
aWRlb2dyYXBoaWMiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBp
ZGVvZ3JhcGhpYyBpZGVvZ3JhcGhpYy1pbmsiKScsICJpZGVvZ3JhcGhpYyBpZGVvZ3JhcGhpYy1p
bmsiKTsKKworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGlkZW9ncmFw
aGljLWluayB0ZXh0IiknLCAiaWRlb2dyYXBoaWMtaW5rIHRleHQiKTsKK3Nob3VsZEJlRXF1YWxU
b1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBpZGVvZ3JhcGhpYy1pbmsgYWxwaGFiZXRpYyIpJywg
ImlkZW9ncmFwaGljLWluayBhbHBoYWJldGljIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rl
c3QoInRleHQtZWRnZTogaWRlb2dyYXBoaWMtaW5rIGlkZW9ncmFwaGljIiknLCAiaWRlb2dyYXBo
aWMtaW5rIGlkZW9ncmFwaGljIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQt
ZWRnZTogaWRlb2dyYXBoaWMtaW5rIGlkZW9ncmFwaGljLWluayIpJywgImlkZW9ncmFwaGljLWlu
ayBpZGVvZ3JhcGhpYy1pbmsiKTsKKworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0
LWVkZ2U6IGxlYWRpbmcgbGVhZGluZyIpJywgIiIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0
ZXN0KCJ0ZXh0LWVkZ2U6IGxlYWRpbmcgdGV4dCIpJywgIiIpOworc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGxlYWRpbmcgY2FwIiknLCAiIik7CitzaG91bGRCZUVxdWFs
VG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogbGVhZGluZyBleCIpJywgIiIpOworc2hvdWxkQmVF
cXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGxlYWRpbmcgaWRlb2dyYXBoaWMiKScsICIi
KTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBsZWFkaW5nIGlkZW9n
cmFwaGljLWluayIpJywgIiIpOworCitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQt
ZWRnZTogdGV4dCBsZWFkaW5nIiknLCAiIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3Qo
InRleHQtZWRnZTogY2FwIGxlYWRpbmciKScsICIiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygn
dGVzdCgidGV4dC1lZGdlOiBleCBsZWFkaW5nIiknLCAiIik7CitzaG91bGRCZUVxdWFsVG9TdHJp
bmcoJ3Rlc3QoInRleHQtZWRnZTogaWRlb2dyYXBoaWMgbGVhZGluZyIpJywgIiIpOworc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGlkZW9ncmFwaGljLWluayBsZWFkaW5n
IiknLCAiIik7CisKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiB0ZXh0
IGNhcCIpJywgIiIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IHRl
eHQgZXgiKScsICIiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBh
bHBoYWJldGljIiknLCAiIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRn
ZTogYWxwaGFiZXRpYyB0ZXh0IiknLCAiIik7CisKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4u
Ly4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1s
Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>463812</attachid>
            <date>2022-11-30 12:37:56 -0800</date>
            <delta_ts>2022-12-01 14:08:01 -0800</delta_ts>
            <desc>[fast-cq]Patch</desc>
            <filename>bug-248448-20221130123755.patch</filename>
            <type>text/plain</type>
            <size>38500</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSAzNjJkNWVjZTI1NTU1NTk0OTAwNWFhODg3NzhjNzZmNmYyOWU4YTA0IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IE1vbiwgMjggTm92IDIwMjIgMTc6MzM6MjIgLTA4MDAKU3ViamVjdDogW1BBVENIXSBbbGVhZGlu
Zy10cmltXSBBZGQgc3VwcG9ydCBmb3IgcGFyc2luZyAidGV4dC1lZGdlIiBDU1MKIHByb3BlcnR5
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNDg0NDgKClJldmlld2Vk
IGJ5IEFudHRpIEtvaXZpc3RvLgoKVGhpcyBwYXRjaCBhZGQgc3VwcG9ydCBmb3IgcGFyc2luZyAi
dGV4dC1lZGdlIiAoaHR0cHM6Ly93d3cudzMub3JnL1RSL2Nzcy1pbmxpbmUtMy8jdGV4dC1lZGdl
cykuIFRoaXMgcHJvcGVydHkgaXMgYmVoaW5kIHRoZSAiQ1NTIGxlYWRpbmctdHJpbSIgcnVuLXRp
bWUgZmxhZyB3aGljaCBpcyBvZmYgYnkgZGVmYXVsdC4KKHdpbGwgV1BUaWZ5IHRoZSB0ZXN0IGNh
c2VzIHNvb24gYWZ0ZXIgdGhlIGV4cGVjdGVkIGJlaGF2aW9yIGlzIGNvbmZpcm1lZCAtbm90IHNv
IG11Y2ggYWJvdXQgcGFyc2luZywgYnV0IG1vcmUgYWJvdXQgaG93IHRoZXkgaW50ZXJhY3Qgd2l0
aCBsZWFkaW5nLXRyaW0uKQoKKiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6CiogU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGlu
Z3MuaDoKKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZSk6CihX
ZWJDb3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgVGV4dEVkZ2UgY29uc3QpOgoqIFNv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb246CiogU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1ZhbHVlS2V5d29yZHMuaW46CiogU291cmNlL1dlYkNvcmUvY3NzL0NvbXB1dGVkU3R5bGVF
eHRyYWN0b3IuY3BwOgooV2ViQ29yZTo6dmFsdWVGb3JUZXh0RWRnZSk6CihXZWJDb3JlOjpDb21w
dXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvclByb3BlcnR5SW5TdHlsZSk6CiogU291cmNlL1dl
YkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuY3BwOgooV2ViQ29yZTo6
Q1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzOjpjb25zdW1lVGV4dEVkZ2UpOgoqIFNvdXJjZS9XZWJD
b3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmg6CiogU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcDoKKFdlYkNvcmU6OlJlbmRlclN0eWxl
Ojp0ZXh0RWRnZSBjb25zdCk6CihXZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0VGV4dEVkZ2UpOgoo
V2ViQ29yZTo6UmVuZGVyU3R5bGU6OmluaXRpYWxUZXh0RWRnZSk6CiogU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmg6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcDoKKFdlYkNvcmU6Om9wZXJhdG9yPDwpOgoq
IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oOgoq
IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmNw
cDoKKFdlYkNvcmU6OlN0eWxlUmFyZUluaGVyaXRlZERhdGE6OlN0eWxlUmFyZUluaGVyaXRlZERh
dGEpOgooV2ViQ29yZTo6U3R5bGVSYXJlSW5oZXJpdGVkRGF0YTo6b3BlcmF0b3I9PSBjb25zdCk6
CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEu
aDoKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVUZXh0RWRnZS5oOiBBZGRl
ZC4KKFdlYkNvcmU6Om9wZXJhdG9yPT0pOgooV2ViQ29yZTo6b3BlcmF0b3IhPSk6CiogU291cmNl
L1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmg6CihXZWJDb3JlOjpTdHlsZTo6
QnVpbGRlckNvbnZlcnRlcjo6Y29udmVydFRleHRFZGdlKToKLS0tCiBTb3VyY2UvV2ViQ29yZS9I
ZWFkZXJzLmNtYWtlICAgICAgICAgICAgICAgICAgfCAgMSArCiAuLi4vV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogfCAgNCArKwogLi4uL1dlYkNvcmUvY3NzL0NTU1By
aW1pdGl2ZVZhbHVlTWFwcGluZ3MuaCAgIHwgNTMgKysrKysrKysrKysrKysKIFNvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24gICAgICAgICB8IDExICsrKwogU291cmNlL1dlYkNv
cmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW4gICAgICAgIHwgIDkgKysrCiBTb3VyY2UvV2ViQ29y
ZS9jc3MvQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvci5jcHAgfCAxMCArKysKIC4uLi9jc3MvcGFyc2Vy
L0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5jcHAgICB8IDIxICsrKysrKwogLi4uL2Nzcy9wYXJz
ZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmggICAgIHwgIDEgKwogLi4uL1dlYkNvcmUvcmVu
ZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcCAgIHwgMTYgKysrKysKIFNvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oICB8ICA1ICsrCiAuLi4vcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcCAgfCAxNCArKysrCiAuLi4vcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmggICAgfCAxMSArKysKIC4uLi9zdHlsZS9TdHlsZVJh
cmVJbmhlcml0ZWREYXRhLmNwcCAgICAgICAgICB8ICA0ICsrCiAuLi4vcmVuZGVyaW5nL3N0eWxl
L1N0eWxlUmFyZUluaGVyaXRlZERhdGEuaCAgfCAgMyArCiAuLi4vV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVUZXh0RWRnZS5oICAgfCA0NCArKysrKysrKysrKysKIFNvdXJjZS9XZWJDb3Jl
L3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oICB8IDU1ICsrKysrKysrKysrKysrCiAuLi4v
dGV4dC1lZGdlLXByb3BlcnR5LXBhcnNpbmctZXhwZWN0ZWQudHh0ICAgfCA1MSArKysrKysrKysr
KysrCiAuLi4vZmFzdC90ZXh0L3RleHQtZWRnZS1wcm9wZXJ0eS1wYXJzaW5nLmh0bWwgfCA3MSAr
KysrKysrKysrKysrKysrKysrCiAuLi4vYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0
ICAgICAgICAgfCAgMSArCiAuLi5ldFByb3BlcnR5VmFsdWUtY29tbW9uLWNoZWNrcy1leHBlY3Rl
ZC50eHQgfCAgMiArLQogLi4uL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dCAgICAg
ICAgIHwgIDEgKwogMjEgZmlsZXMgY2hhbmdlZCwgMzg3IGluc2VydGlvbnMoKyksIDEgZGVsZXRp
b24oLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUv
U3R5bGVUZXh0RWRnZS5oCiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvZmFzdC90ZXh0
L3RleHQtZWRnZS1wcm9wZXJ0eS1wYXJzaW5nLWV4cGVjdGVkLnR4dAogY3JlYXRlIG1vZGUgMTAw
NjQ0IExheW91dFRlc3RzL2Zhc3QvdGV4dC90ZXh0LWVkZ2UtcHJvcGVydHktcGFyc2luZy5odG1s
CgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJD
b3JlL0hlYWRlcnMuY21ha2UKaW5kZXggMTNlYjIwNGY1ZGU5Li5kOGY0MmJlZDM1YmIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUv
SGVhZGVycy5jbWFrZQpAQCAtMjA0OCw2ICsyMDQ4LDcgQEAgc2V0KFdlYkNvcmVfUFJJVkFURV9G
UkFNRVdPUktfSEVBREVSUwogICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZVNjcm9sbFNuYXBQb2lu
dHMuaAogICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZVNlbGZBbGlnbm1lbnREYXRhLmgKICAgICBy
ZW5kZXJpbmcvc3R5bGUvU3R5bGVTdXJyb3VuZERhdGEuaAorICAgIHJlbmRlcmluZy9zdHlsZS9T
dHlsZVRleHRFZGdlLmgKICAgICByZW5kZXJpbmcvc3R5bGUvU3R5bGVUcmFuc2Zvcm1EYXRhLmgK
ICAgICByZW5kZXJpbmcvc3R5bGUvU3R5bGVWaXN1YWxEYXRhLmgKICAgICByZW5kZXJpbmcvc3R5
bGUvVGV4dERlY29yYXRpb25UaGlja25lc3MuaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDcwNmI3OGI0NGM2Yi4uMjJlN2MzOTU0
ZmE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCkBAIC00ODg2LDYgKzQ4ODYsNyBAQAogCQlERDE3QzA4MjI4NkVDNTc0MDBENjBCNTgg
LyogYnVpbGQgaW4gQ29weSBQREYuanMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gREQxN0MwN0MyODZFQzUxOTAwRDYwQjU4IC8qIGJ1aWxkICovOyB9OwogCQlERDE3QzA4MzI4
NkVDNTc3MDBENjBCNTggLyogTElDRU5TRSBpbiBDb3B5IFBERi5qcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBERDE3QzA4MDI4NkVDNTFCMDBENjBCNTggLyogTElDRU5TRSAq
LzsgfTsKIAkJREQxN0MwODQyODZFQzU3QTAwRDYwQjU4IC8qIHdlYiBpbiBDb3B5IFBERi5qcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERDE3QzA3RTI4NkVDNTFBMDBENjBC
NTggLyogd2ViICovOyB9OworCQlERDFDNzc5MDI5MzU0Qzc3MDAzQkQ3OUIgLyogU3R5bGVUZXh0
RWRnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREQx
Qzc3OEYyOTM1NEM3NTAwM0JENzlCIC8qIFN0eWxlVGV4dEVkZ2UuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlERDc2M0JCMjA5OTJDMkM5MDA3NDBC
OEUgLyogbGlieG1sMi5keWxpYiBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IERENzYzQkIxMDk5MkMyQzkwMDc0MEI4RSAvKiBsaWJ4bWwyLmR5bGliICov
OyB9OwogCQlERDdDREYyNTBBMjNDRjk4MDAwNjk5MjggLyogQ1NTVW5rbm93blJ1bGUuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4MEU2Q0NFMEExOTg5
Q0EwMDdGQjhDNSAvKiBDU1NVbmtub3duUnVsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CiAJCUREOEEzMEI0MjkxREZDOEYwMEFENTM3QyAvKiBCbG9j
a0xheW91dFN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBERDhBMzBCMzI5MURGQzhGMDBBRDUzN0MgLyogQmxvY2tMYXlvdXRTdGF0ZS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC0xNzEzNCw2ICsx
NzEzNSw3IEBACiAJCUREMTdDMDdDMjg2RUM1MTkwMEQ2MEI1OCAvKiBidWlsZCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZvbGRlcjsgbmFtZSA9IGJ1
aWxkOyBwYXRoID0gLi4vLi4vVGhpcmRQYXJ0eS9wZGZqcy9idWlsZDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJREQxN0MwN0UyODZFQzUxQTAwRDYwQjU4IC8qIHdlYiAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZvbGRlcjsgbmFtZSA9IHdl
YjsgcGF0aCA9IC4uLy4uL1RoaXJkUGFydHkvcGRmanMvd2ViOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQlERDE3QzA4MDI4NkVDNTFCMDBENjBCNTggLyogTElDRU5TRSAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IG5hbWUgPSBMSUNF
TlNFOyBwYXRoID0gLi4vLi4vVGhpcmRQYXJ0eS9wZGZqcy9MSUNFTlNFOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQlERDFDNzc4RjI5MzU0Qzc1MDAzQkQ3OUIgLyogU3R5bGVUZXh0RWRn
ZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdHlsZVRleHRFZGdlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCURENzYzQkIxMDk5MkMyQzkwMDc0MEI4RSAvKiBs
aWJ4bWwyLmR5bGliICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gImNvbXBpbGVkLm1hY2gtby5keWxpYiI7IG5hbWUgPSBsaWJ4bWwyLmR5bGliOyBwYXRo
ID0gL3Vzci9saWIvbGlieG1sMi5keWxpYjsgc291cmNlVHJlZSA9ICI8YWJzb2x1dGU+IjsgfTsK
IAkJREQ4QTMwQjMyOTFERkM4RjAwQUQ1MzdDIC8qIEJsb2NrTGF5b3V0U3RhdGUuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmxvY2tMYXlvdXRTdGF0ZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlEREIwNEYzNzI3OEU1NTI3MDA4RDM2NzggLyogbGliV1RGLmEg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBhcmNoaXZl
LmFyOyBwYXRoID0gbGliV1RGLmE7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07
CkBAIC0zMDYxMSw2ICszMDYxMyw3IEBACiAJCQkJOUQ2MzgwMEYxQUYxNkUxNjAwMzFBMTVDIC8q
IFN0eWxlU2VsZkFsaWdubWVudERhdGEuaCAqLywKIAkJCQlCQzVFQjVFNjBFODFCRkVGMDBCMjU5
NjUgLyogU3R5bGVTdXJyb3VuZERhdGEuY3BwICovLAogCQkJCUJDNUVCNUU0MEU4MUJGNkQwMEIy
NTk2NSAvKiBTdHlsZVN1cnJvdW5kRGF0YS5oICovLAorCQkJCUREMUM3NzhGMjkzNTRDNzUwMDNC
RDc5QiAvKiBTdHlsZVRleHRFZGdlLmggKi8sCiAJCQkJQkM1RUI4MEQwRTgxRjJDRTAwQjI1OTY1
IC8qIFN0eWxlVHJhbnNmb3JtRGF0YS5jcHAgKi8sCiAJCQkJQkM1RUI4MEUwRTgxRjJDRTAwQjI1
OTY1IC8qIFN0eWxlVHJhbnNmb3JtRGF0YS5oICovLAogCQkJCUJDNUVCNjk3MEU4MURBNjMwMEIy
NTk2NSAvKiBTdHlsZVZpc3VhbERhdGEuY3BwICovLApAQCAtMzg4MTUsNiArMzg4MTgsNyBAQAog
CQkJCUU0RjlFRUYzMTU2REEwMDcwMEQyM0U3RSAvKiBTdHlsZVNoZWV0Q29udGVudHMuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUE4RUE4MDBBMEExOTUxNkUwMEE4RUY1RiAvKiBTdHlsZVNoZWV0TGlz
dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI1RTUwRTgxQkY2RDAwQjI1OTY1IC8qIFN0eWxl
U3Vycm91bmREYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlERDFDNzc5MDI5MzU0Qzc3MDAzQkQ3
OUIgLyogU3R5bGVUZXh0RWRnZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI4MTAwRTgxRjJD
RTAwQjI1OTY1IC8qIFN0eWxlVHJhbnNmb3JtRGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTRE
RUFBMTgxN0E5M0RDMzAwMEUwNDMwIC8qIFN0eWxlVHJlZVJlc29sdmVyLmggaW4gSGVhZGVycyAq
LywKIAkJCQlFNDJFNzZEQzFDN0FGNzc2MDBFMzYxNEQgLyogU3R5bGVVcGRhdGUuaCBpbiBIZWFk
ZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVl
TWFwcGluZ3MuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdz
LmgKaW5kZXggNWU5Nzk1Y2NkM2VmLi5hMzI1MzVhMGNhYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaApAQCAtNTIyNyw2ICs1MjI3LDU5IEBA
IHRlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpvcGVyYXRvciBTY3JvbGxTbmFw
U3RvcCgpIGNvbnN0CiAgICAgfQogfQogCit0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoVGV4dEVkZ2VUeXBlIHRleHRFZGdlVHlwZSkKKyAgICA6
IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQoreworICAgIHNldFByaW1pdGl2ZVVuaXRUeXBlKENT
U1VuaXRUeXBlOjpDU1NfVkFMVUVfSUQpOworICAgIHN3aXRjaCAodGV4dEVkZ2VUeXBlKSB7Cisg
ICAgY2FzZSBUZXh0RWRnZVR5cGU6OkxlYWRpbmc6CisgICAgICAgIG1fdmFsdWUudmFsdWVJRCA9
IENTU1ZhbHVlTGVhZGluZzsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6
OlRleHQ6CisgICAgICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlVGV4dDsKKyAgICAgICAg
YnJlYWs7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OkNhcEhlaWdodDoKKyAgICAgICAgbV92YWx1
ZS52YWx1ZUlEID0gQ1NTVmFsdWVDYXA7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgVGV4dEVk
Z2VUeXBlOjpFeEhlaWdodDoKKyAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVFeDsK
KyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OkFscGhhYmV0aWM6CisgICAg
ICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlQWxwaGFiZXRpYzsKKyAgICAgICAgYnJlYWs7
CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OkNKS0lkZW9ncmFwaGljOgorICAgICAgICBtX3ZhbHVl
LnZhbHVlSUQgPSBDU1NWYWx1ZUlkZW9ncmFwaGljOworICAgICAgICBicmVhazsKKyAgICBjYXNl
IFRleHRFZGdlVHlwZTo6Q0pLSWRlb2dyYXBoaWNJbms6CisgICAgICAgIG1fdmFsdWUudmFsdWVJ
RCA9IENTU1ZhbHVlSWRlb2dyYXBoaWNJbms7CisgICAgICAgIGJyZWFrOworICAgIH0KK30KKwor
dGVtcGxhdGU8PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIFRleHRFZGdlVHlw
ZSgpIGNvbnN0Cit7CisgICAgQVNTRVJUKGlzVmFsdWVJRCgpKTsKKyAgICBzd2l0Y2ggKG1fdmFs
dWUudmFsdWVJRCkgeworICAgIGNhc2UgQ1NTVmFsdWVMZWFkaW5nOgorICAgICAgICByZXR1cm4g
VGV4dEVkZ2VUeXBlOjpMZWFkaW5nOworICAgIGNhc2UgQ1NTVmFsdWVUZXh0OgorICAgICAgICBy
ZXR1cm4gVGV4dEVkZ2VUeXBlOjpUZXh0OworICAgIGNhc2UgQ1NTVmFsdWVDYXA6CisgICAgICAg
IHJldHVybiBUZXh0RWRnZVR5cGU6OkNhcEhlaWdodDsKKyAgICBjYXNlIENTU1ZhbHVlRXg6Cisg
ICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OkV4SGVpZ2h0OworICAgIGNhc2UgQ1NTVmFsdWVB
bHBoYWJldGljOgorICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpBbHBoYWJldGljOworICAg
IGNhc2UgQ1NTVmFsdWVJZGVvZ3JhcGhpYzoKKyAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6
Q0pLSWRlb2dyYXBoaWM7CisgICAgY2FzZSBDU1NWYWx1ZUlkZW9ncmFwaGljSW5rOgorICAgICAg
ICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpDSktJZGVvZ3JhcGhpY0luazsKKyAgICBkZWZhdWx0Ogor
ICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlw
ZTo6TGVhZGluZzsKKyAgICB9Cit9CisKICNpZiBFTkFCTEUoQVBQTEVfUEFZKQogdGVtcGxhdGU8
PiBpbmxpbmUgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU1ByaW1pdGl2ZVZhbHVlKEFwcGxlUGF5QnV0
dG9uU3R5bGUgZSkKICAgICA6IENTU1ZhbHVlKFByaW1pdGl2ZUNsYXNzKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbiBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NQcm9wZXJ0aWVzLmpzb24KaW5kZXggNTBiNjM0ZTczYzc2Li41NDYyNzNhN2M0ZjUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24KKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgpAQCAtNTEwLDYgKzUxMCwxNyBAQAog
ICAgICAgICAgICAgICAgICJ1cmwiOiAiaHR0cHM6Ly93d3cudzMub3JnL1RSL2Nzcy1mb250cy00
LyNmb250LXN0cmV0Y2gtcHJvcCIKICAgICAgICAgICAgIH0KICAgICAgICAgfSwKKyAgICAgICAg
InRleHQtZWRnZSI6IHsKKyAgICAgICAgICAgICJjb2RlZ2VuLXByb3BlcnRpZXMiOiB7CisgICAg
ICAgICAgICAgICAgImNvbnZlcnRlciI6ICJUZXh0RWRnZSIsCisgICAgICAgICAgICAgICAgImN1
c3RvbS1wYXJzZXIiOiB0cnVlLAorICAgICAgICAgICAgICAgICJzZXR0aW5ncy1mbGFnIjogImNz
c0xlYWRpbmdUcmltRW5hYmxlZCIKKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICAic3BlY2lm
aWNhdGlvbiI6IHsKKyAgICAgICAgICAgICAgICAiY2F0ZWdvcnkiOiAiY3NzLWlubGluZSIsCisg
ICAgICAgICAgICAgICAgInVybCI6ICJodHRwczovL3d3dy53My5vcmcvVFIvY3NzLWlubGluZS0z
LyN0ZXh0LWVkZ2VzIgorICAgICAgICAgICAgfQorICAgICAgICB9LAogICAgICAgICAidGV4dC1y
ZW5kZXJpbmciOiB7CiAgICAgICAgICAgICAiaW5oZXJpdGVkIjogdHJ1ZSwKICAgICAgICAgICAg
ICJ2YWx1ZXMiOiBbCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVLZXl3
b3Jkcy5pbiBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCmluZGV4IDky
MWIyNTRiN2Y3OS4uOGM3YmYzNjc2MGRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTVmFsdWVLZXl3b3Jkcy5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVLZXl3
b3Jkcy5pbgpAQCAtMTA0MCw2ICsxMDQwLDE1IEBAIG5vLXB1bmN0dWF0aW9uCiBhbnRpYWxpYXNl
ZAogc3VicGl4ZWwtYW50aWFsaWFzZWQKIAorLy8gdGV4dC1lZGdlCitsZWFkaW5nCisvLyB0ZXh0
CitjYXAKK2V4CisvLyBpZGVvZ3JhcGhpYworaWRlb2dyYXBoaWMtaW5rCisvLyBhbHBoYWJldGlj
CisKIC8vIHRleHQtcmVuZGVyaW5nCiAvL2F1dG8KIG9wdGltaXplU3BlZWQKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9Db21wdXRlZFN0eWxlRXh0cmFjdG9yLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9Db21wdXRlZFN0eWxlRXh0cmFjdG9yLmNwcAppbmRleCAwNTkzYzQyMjU4YWIu
Ljg0MmQ1YWE4MmVlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NvbXB1dGVkU3R5
bGVFeHRyYWN0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Db21wdXRlZFN0eWxlRXh0
cmFjdG9yLmNwcApAQCAtMTMxMiw2ICsxMzEyLDE0IEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWVMaXN0
PiB2YWx1ZUZvclNjcm9sbFNuYXBBbGlnbm1lbnQoY29uc3QgU2Nyb2xsU25hcEFsaWduJiBhbGln
CiAgICAgcmV0dXJuIHZhbHVlOwogfQogCitzdGF0aWMgUmVmPENTU1ZhbHVlTGlzdD4gdmFsdWVG
b3JUZXh0RWRnZShjb25zdCBUZXh0RWRnZSYgdGV4dEVkZ2UpCit7CisgICAgYXV0byB2YWx1ZSA9
IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKKyAgICB2YWx1ZS0+YXBwZW5k
KENTU1ByaW1pdGl2ZVZhbHVlOjpjcmVhdGUodGV4dEVkZ2Uub3ZlcikpOworICAgIHZhbHVlLT5h
cHBlbmQoQ1NTUHJpbWl0aXZlVmFsdWU6OmNyZWF0ZSh0ZXh0RWRnZS51bmRlcikpOworICAgIHJl
dHVybiB2YWx1ZTsKK30KKwogc3RhdGljIFJlZjxDU1NWYWx1ZT4gd2lsbENoYW5nZVByb3BlcnR5
VmFsdWUoY29uc3QgV2lsbENoYW5nZURhdGEqIHdpbGxDaGFuZ2VEYXRhKQogewogICAgIGF1dG8m
IGNzc1ZhbHVlUG9vbCA9IENTU1ZhbHVlUG9vbDo6c2luZ2xldG9uKCk7CkBAIC00MDgxLDYgKzQw
ODksOCBAQCBSZWZQdHI8Q1NTVmFsdWU+IENvbXB1dGVkU3R5bGVFeHRyYWN0b3I6OnZhbHVlRm9y
UHJvcGVydHlJblN0eWxlKGNvbnN0IFJlbmRlclN0eQogICAgICAgICByZXR1cm4gdmFsdWVGb3JT
Y3JvbGxTbmFwVHlwZShzdHlsZS5zY3JvbGxTbmFwVHlwZSgpKTsKICAgICBjYXNlIENTU1Byb3Bl
cnR5T3ZlcmZsb3dBbmNob3I6CiAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2wuY3JlYXRlVmFs
dWUoc3R5bGUub3ZlcmZsb3dBbmNob3IoKSk7CisgICAgY2FzZSBDU1NQcm9wZXJ0eVRleHRFZGdl
OgorICAgICAgICByZXR1cm4gdmFsdWVGb3JUZXh0RWRnZShzdHlsZS50ZXh0RWRnZSgpKTsKIAog
I2lmIEVOQUJMRShBUFBMRV9QQVkpCiAgICAgY2FzZSBDU1NQcm9wZXJ0eUFwcGxlUGF5QnV0dG9u
U3R5bGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5
UGFyc2VySGVscGVycy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5
UGFyc2VySGVscGVycy5jcHAKaW5kZXggNjRkODE3ZTE3ZDMxLi5mNTE4MDA3YzhhNmQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJz
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VySGVs
cGVycy5jcHAKQEAgLTY2MDgsNiArNjYwOCwyNyBAQCBSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVT
Y3JvbGxTbmFwVHlwZShDU1NQYXJzZXJUb2tlblJhbmdlJiByYW5nZSkKICAgICByZXR1cm4gdHlw
ZVZhbHVlOwogfQogCitSZWZQdHI8Q1NTVmFsdWU+IGNvbnN1bWVUZXh0RWRnZShDU1NQYXJzZXJU
b2tlblJhbmdlJiByYW5nZSkKK3sKKyAgICBhdXRvIHR5cGVWYWx1ZSA9IENTU1ZhbHVlTGlzdDo6
Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKKyAgICBpZiAocmFuZ2UucGVlaygpLmlkKCkgPT0gQ1NT
VmFsdWVMZWFkaW5nKSB7CisgICAgICAgIHR5cGVWYWx1ZS0+YXBwZW5kKGNvbnN1bWVJZGVudChy
YW5nZSkucmVsZWFzZU5vbk51bGwoKSk7CisgICAgICAgIHJldHVybiB0eXBlVmFsdWU7CisgICAg
fQorCisgICAgYXV0byBmaXJzdEdyb3VwVmFsdWUgPSBjb25zdW1lSWRlbnQ8Q1NTVmFsdWVUZXh0
LCBDU1NWYWx1ZUNhcCwgQ1NTVmFsdWVFeCwgQ1NTVmFsdWVJZGVvZ3JhcGhpYywgQ1NTVmFsdWVJ
ZGVvZ3JhcGhpY0luaz4ocmFuZ2UpOworICAgIGlmICghZmlyc3RHcm91cFZhbHVlKQorICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKKyAgICB0eXBlVmFsdWUtPmFwcGVuZChmaXJzdEdyb3VwVmFsdWUu
cmVsZWFzZU5vbk51bGwoKSk7CisKKyAgICBhdXRvIHNlY29uZEdyb3VwVmFsdWUgPSBjb25zdW1l
SWRlbnQ8Q1NTVmFsdWVUZXh0LCBDU1NWYWx1ZUFscGhhYmV0aWMsIENTU1ZhbHVlSWRlb2dyYXBo
aWMsIENTU1ZhbHVlSWRlb2dyYXBoaWNJbms+KHJhbmdlKTsKKyAgICBpZiAoc2Vjb25kR3JvdXBW
YWx1ZSkKKyAgICAgICAgdHlwZVZhbHVlLT5hcHBlbmQoc2Vjb25kR3JvdXBWYWx1ZS5yZWxlYXNl
Tm9uTnVsbCgpKTsKKworICAgIHJldHVybiB0eXBlVmFsdWU7Cit9CisKKyAgICAKIFJlZlB0cjxD
U1NWYWx1ZT4gY29uc3VtZUJvcmRlclJhZGl1c0Nvcm5lcihDU1NQYXJzZXJUb2tlblJhbmdlJiBy
YW5nZSwgQ1NTUGFyc2VyTW9kZSBjc3NQYXJzZXJNb2RlKQogewogICAgIFJlZlB0cjxDU1NQcmlt
aXRpdmVWYWx1ZT4gcGFyc2VkVmFsdWUxID0gY29uc3VtZUxlbmd0aE9yUGVyY2VudChyYW5nZSwg
Y3NzUGFyc2VyTW9kZSwgVmFsdWVSYW5nZTo6Tm9uTmVnYXRpdmUpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuaCBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmgKaW5kZXggMGZk
ZjljMDhiYzExLi5jZTFmYzQxMjI1YzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9w
YXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuaApAQCAtMjcxLDYgKzI3MSw3IEBAIFJl
ZlB0cjxDU1NWYWx1ZT4gY29uc3VtZUNvbnRlbnQoQ1NTUGFyc2VyVG9rZW5SYW5nZSYsIGNvbnN0
IENTU1BhcnNlckNvbnRleHQmKTsKIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZVBlcnNwZWN0aXZl
KENTU1BhcnNlclRva2VuUmFuZ2UmLCBDU1NQYXJzZXJNb2RlKTsKIFJlZlB0cjxDU1NWYWx1ZT4g
Y29uc3VtZVNjcm9sbFNuYXBBbGlnbihDU1NQYXJzZXJUb2tlblJhbmdlJik7CiBSZWZQdHI8Q1NT
VmFsdWU+IGNvbnN1bWVTY3JvbGxTbmFwVHlwZShDU1NQYXJzZXJUb2tlblJhbmdlJik7CitSZWZQ
dHI8Q1NTVmFsdWU+IGNvbnN1bWVUZXh0RWRnZShDU1NQYXJzZXJUb2tlblJhbmdlJik7CiBSZWZQ
dHI8Q1NTVmFsdWU+IGNvbnN1bWVCb3JkZXJSYWRpdXNDb3JuZXIoQ1NTUGFyc2VyVG9rZW5SYW5n
ZSYsIENTU1BhcnNlck1vZGUpOwogYm9vbCBjb25zdW1lUmFkaWkoUmVmUHRyPENTU1ByaW1pdGl2
ZVZhbHVlPiBob3Jpem9udGFsUmFkaWlbNF0sIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gdmVy
dGljYWxSYWRpaVs0XSwgQ1NTUGFyc2VyVG9rZW5SYW5nZSYsIENTU1BhcnNlck1vZGUsIGJvb2wg
dXNlTGVnYWN5UGFyc2luZyk7CiBlbnVtIGNsYXNzIENvbnN1bWVSYXkgeyBJbmNsdWRlLCBFeGNs
dWRlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVy
U3R5bGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNw
cAppbmRleCAyY2RkNDMxYTJkNmMuLjYxMTQ0YTkyMTA0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCkBAIC00OSw2ICs0OSw3IEBACiAjaW5j
bHVkZSAiU3R5bGVSZXNvbHZlci5oIgogI2luY2x1ZGUgIlN0eWxlU2Nyb2xsU25hcFBvaW50cy5o
IgogI2luY2x1ZGUgIlN0eWxlU2VsZkFsaWdubWVudERhdGEuaCIKKyNpbmNsdWRlICJTdHlsZVRl
eHRFZGdlLmgiCiAjaW5jbHVkZSAiU3R5bGVUcmVlUmVzb2x2ZXIuaCIKICNpbmNsdWRlICJXaWxs
Q2hhbmdlRGF0YS5oIgogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CkBAIC0yODA1LDYgKzI4
MDYsMjEgQEAgYm9vbCBSZW5kZXJTdHlsZTo6aGFzU25hcFBvc2l0aW9uKCkgY29uc3QKICAgICBy
ZXR1cm4gYWxpZ25tZW50LmJsb2NrQWxpZ24gIT0gU2Nyb2xsU25hcEF4aXNBbGlnblR5cGU6Ok5v
bmUgfHwgYWxpZ25tZW50LmlubGluZUFsaWduICE9IFNjcm9sbFNuYXBBeGlzQWxpZ25UeXBlOjpO
b25lOwogfQogCitUZXh0RWRnZSBSZW5kZXJTdHlsZTo6dGV4dEVkZ2UoKSBjb25zdAoreworICAg
IHJldHVybiBtX3JhcmVJbmhlcml0ZWREYXRhLT50ZXh0RWRnZTsKK30KKwordm9pZCBSZW5kZXJT
dHlsZTo6c2V0VGV4dEVkZ2UoVGV4dEVkZ2UgdGV4dEVkZ2VWYWx1ZSkKK3sKKyAgICBTRVRfVkFS
KG1fcmFyZUluaGVyaXRlZERhdGEsIHRleHRFZGdlLCB0ZXh0RWRnZVZhbHVlKTsKK30KKworVGV4
dEVkZ2UgUmVuZGVyU3R5bGU6OmluaXRpYWxUZXh0RWRnZSgpCit7CisgICAgcmV0dXJuIHsgVGV4
dEVkZ2VUeXBlOjpMZWFkaW5nLCBUZXh0RWRnZVR5cGU6OkxlYWRpbmcgfTsKK30KKwogYm9vbCBS
ZW5kZXJTdHlsZTo6aGFzUmVmZXJlbmNlRmlsdGVyT25seSgpIGNvbnN0CiB7CiAgICAgaWYgKCFo
YXNGaWx0ZXIoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9S
ZW5kZXJTdHlsZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxl
LmgKaW5kZXggM2NkNDc0MzkzZTYzLi5lY2VmYzI1NjI1ZGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCkBAIC0xMjUsNiArMTI1LDggQEAgY2xhc3Mg
VHJhbnNmb3JtYXRpb25NYXRyaXg7CiBzdHJ1Y3QgU2Nyb2xsU25hcEFsaWduOwogc3RydWN0IFNj
cm9sbFNuYXBUeXBlOwogCitzdHJ1Y3QgVGV4dEVkZ2U7CisKIHVzaW5nIFBzZXVkb1N0eWxlQ2Fj
aGUgPSBWZWN0b3I8c3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0eWxlPiwgND47CiAKIHRlbXBsYXRl
PHR5cGVuYW1lIFQsIHR5cGVuYW1lIFU+IGlubGluZSBib29sIGNvbXBhcmVFcXVhbChjb25zdCBU
JiB0LCBjb25zdCBVJiB1KSB7IHJldHVybiB0ID09IHN0YXRpY19jYXN0PGNvbnN0IFQmPih1KTsg
fQpAQCAtMzk3LDYgKzM5OSw3IEBAIHB1YmxpYzoKICAgICBUZXh0SnVzdGlmeSB0ZXh0SnVzdGlm
eSgpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PFRleHRKdXN0aWZ5PihtX3JhcmVJbmhlcml0
ZWREYXRhLT50ZXh0SnVzdGlmeSk7IH0KIAogICAgIExlYWRpbmdUcmltIGxlYWRpbmdUcmltKCkg
Y29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8TGVhZGluZ1RyaW0+KG1fcmFyZU5vbkluaGVyaXRl
ZERhdGEtPmxlYWRpbmdUcmltKTsgfQorICAgIFRleHRFZGdlIHRleHRFZGdlKCkgY29uc3Q7CiAK
ICAgICBjb25zdCBMZW5ndGgmIHdvcmRTcGFjaW5nKCkgY29uc3Q7CiAgICAgZmxvYXQgbGV0dGVy
U3BhY2luZygpIGNvbnN0OwpAQCAtMTA1Niw2ICsxMDU5LDcgQEAgcHVibGljOgogICAgIHZvaWQg
c2V0VGV4dEp1c3RpZnkoVGV4dEp1c3RpZnkgdikgeyBTRVRfVkFSKG1fcmFyZUluaGVyaXRlZERh
dGEsIHRleHRKdXN0aWZ5LCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4odikpOyB9CiAKICAgICB2b2lk
IHNldExlYWRpbmdUcmltKExlYWRpbmdUcmltIHZhbHVlKSB7IFNFVF9WQVIobV9yYXJlTm9uSW5o
ZXJpdGVkRGF0YSwgbGVhZGluZ1RyaW0sIHN0YXRpY19jYXN0PHVuc2lnbmVkPih2YWx1ZSkpOyB9
CisgICAgdm9pZCBzZXRUZXh0RWRnZShUZXh0RWRnZSk7CiAKICNpZiBFTkFCTEUoVEVYVF9BVVRP
U0laSU5HKQogICAgIHZvaWQgc2V0U3BlY2lmaWVkTGluZUhlaWdodChMZW5ndGgmJik7CkBAIC0x
NjcxLDYgKzE2NzUsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIExlbmd0aCBpbml0aWFsUGFkZGlu
ZygpIHsgcmV0dXJuIExlbmd0aChMZW5ndGhUeXBlOjpGaXhlZCk7IH0KICAgICBzdGF0aWMgTGVu
Z3RoIGluaXRpYWxUZXh0SW5kZW50KCkgeyByZXR1cm4gTGVuZ3RoKExlbmd0aFR5cGU6OkZpeGVk
KTsgfQogICAgIHN0YXRpYyBMZWFkaW5nVHJpbSBpbml0aWFsTGVhZGluZ1RyaW0oKSB7IHJldHVy
biBMZWFkaW5nVHJpbTo6Tm9ybWFsOyB9CisgICAgc3RhdGljIFRleHRFZGdlIGluaXRpYWxUZXh0
RWRnZSgpOwogICAgIHN0YXRpYyBMZW5ndGggaW5pdGlhbFplcm9MZW5ndGgoKSB7IHJldHVybiBM
ZW5ndGgoTGVuZ3RoVHlwZTo6Rml4ZWQpOyB9CiAgICAgc3RhdGljIExlbmd0aCBpbml0aWFsT25l
TGVuZ3RoKCkgeyByZXR1cm4gTGVuZ3RoKDEsIExlbmd0aFR5cGU6OkZpeGVkKTsgfQogICAgIHN0
YXRpYyB1bnNpZ25lZCBzaG9ydCBpbml0aWFsV2lkb3dzKCkgeyByZXR1cm4gMjsgfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRz
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50
cy5jcHAKaW5kZXggYWIxYzI2YWRjMmJhLi42MzIzZTkwODMzZmQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcApA
QCAtMTE2MCw2ICsxMTYwLDIwIEBAIFRleHRTdHJlYW0mIG9wZXJhdG9yPDwoVGV4dFN0cmVhbSYg
dHMsIExlYWRpbmdUcmltIGxlYWRpbmdUcmltKQogICAgIHJldHVybiB0czsKIH0KIAorVGV4dFN0
cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiB0cywgVGV4dEVkZ2VUeXBlIHRleHRFZGdlVHlw
ZSkKK3sKKyAgICBzd2l0Y2ggKHRleHRFZGdlVHlwZSkgeworICAgIGNhc2UgVGV4dEVkZ2VUeXBl
OjpMZWFkaW5nOiB0cyA8PCAiaGFsZi1sZWFkaW5nIjsgYnJlYWs7CisgICAgY2FzZSBUZXh0RWRn
ZVR5cGU6OlRleHQ6IHRzIDw8ICJ0ZXh0LW92ZXIvdW5kZXIgYmFzZWxpbmUiOyBicmVhazsKKyAg
ICBjYXNlIFRleHRFZGdlVHlwZTo6Q2FwSGVpZ2h0OiB0cyA8PCAiY2FwLWhlaWdodCBiYXNlbGlu
ZSI7IGJyZWFrOworICAgIGNhc2UgVGV4dEVkZ2VUeXBlOjpFeEhlaWdodDogdHMgPDwgIngtaGVp
Z2h0IGJhc2VsaW5lIjsgYnJlYWs7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OkFscGhhYmV0aWM6
IHRzIDw8ICJhbHBoYWJldGljIGJhc2VsaW5lIjsgYnJlYWs7CisgICAgY2FzZSBUZXh0RWRnZVR5
cGU6OkNKS0lkZW9ncmFwaGljOiB0cyA8PCAiaWRlb2dyYXBoaWMtb3ZlciBiYXNlbGluZSI7IGJy
ZWFrOworICAgIGNhc2UgVGV4dEVkZ2VUeXBlOjpDSktJZGVvZ3JhcGhpY0luazogdHMgPDwgImlk
ZW9ncmFwaGljLWluay1vdmVyL2luay11bmRlciBiYXNlbGluZSI7IGJyZWFrOworICAgIH0KKyAg
ICByZXR1cm4gdHM7Cit9CisKIFRleHRTdHJlYW0mIG9wZXJhdG9yPDwoVGV4dFN0cmVhbSYgdHMs
IFRleHRab29tIHpvb20pCiB7CiAgICAgc3dpdGNoICh6b29tKSB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaCBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oCmluZGV4IDRm
MmVhMTJlMTY0OC4uMTg1NzVkMWQ0ODg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuaApAQCAtNzg4LDYgKzc4OCwxNiBA
QCBlbnVtIGNsYXNzIExlYWRpbmdUcmltIDogdWludDhfdCB7CiAgICAgQm90aAogfTsKIAorZW51
bSBjbGFzcyBUZXh0RWRnZVR5cGUgOiB1aW50OF90IHsKKyAgICBMZWFkaW5nLAorICAgIFRleHQs
CisgICAgQ2FwSGVpZ2h0LAorICAgIEV4SGVpZ2h0LAorICAgIEFscGhhYmV0aWMsCisgICAgQ0pL
SWRlb2dyYXBoaWMsCisgICAgQ0pLSWRlb2dyYXBoaWNJbmsKK307CisKIGVudW0gY2xhc3MgVGV4
dFpvb20gOiB1aW50OF90IHsKICAgICBOb3JtYWwsCiAgICAgUmVzZXQKQEAgLTEzMjQsNiArMTMz
NCw3IEBAIFdURjo6VGV4dFN0cmVhbSYgb3BlcmF0b3I8PChXVEY6OlRleHRTdHJlYW0mLCBUZXh0
U2VjdXJpdHkpOwogV1RGOjpUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFdURjo6VGV4dFN0cmVhbSYs
IFRleHRUcmFuc2Zvcm0pOwogV1RGOjpUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFdURjo6VGV4dFN0
cmVhbSYsIFRleHRVbmRlcmxpbmVQb3NpdGlvbik7CiBXVEY6OlRleHRTdHJlYW0mIG9wZXJhdG9y
PDwoV1RGOjpUZXh0U3RyZWFtJiwgTGVhZGluZ1RyaW0pOworV1RGOjpUZXh0U3RyZWFtJiBvcGVy
YXRvcjw8KFdURjo6VGV4dFN0cmVhbSYsIFRleHRFZGdlVHlwZSk7CiBXVEY6OlRleHRTdHJlYW0m
IG9wZXJhdG9yPDwoV1RGOjpUZXh0U3RyZWFtJiwgVGV4dFpvb20pOwogV1RGOjpUZXh0U3RyZWFt
JiBvcGVyYXRvcjw8KFdURjo6VGV4dFN0cmVhbSYsIFRyYW5zZm9ybUJveCk7CiBXVEY6OlRleHRT
dHJlYW0mIG9wZXJhdG9yPDwoV1RGOjpUZXh0U3RyZWFtJiwgVHJhbnNmb3JtU3R5bGUzRCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJp
dGVkRGF0YS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5o
ZXJpdGVkRGF0YS5jcHAKaW5kZXggYWJhMjE5ZTNlMWI3Li5hMmRhZTRlY2ZhOTQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRh
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJp
dGVkRGF0YS5jcHAKQEAgLTQ3LDYgKzQ3LDcgQEAgc3RydWN0IEdyZWF0ZXJUaGFuT3JTYW1lU2l6
ZUFzU3R5bGVSYXJlSW5oZXJpdGVkRGF0YSA6IHB1YmxpYyBSZWZDb3VudGVkPEdyZWF0ZXIKICAg
ICBMZW5ndGggbGVuZ3Roc1syXTsKICAgICBmbG9hdCBzZWNvbmRGbG9hdDsKICAgICBUZXh0VW5k
ZXJsaW5lT2Zmc2V0IG9mZnNldDsKKyAgICBUZXh0RWRnZSB0ZXh0RWRnZTsKICAgICB2b2lkKiBj
dXN0b21Qcm9wZXJ0eURhdGFSZWZzWzFdOwogICAgIHVuc2lnbmVkIGJpdGZpZWxkc1s3XTsKICAg
ICBzaG9ydCBwYWdlZE1lZGlhU2hvcnRzWzJdOwpAQCAtOTAsNiArOTEsNyBAQCBTdHlsZVJhcmVJ
bmhlcml0ZWREYXRhOjpTdHlsZVJhcmVJbmhlcml0ZWREYXRhKCkKICAgICAsIGluZGVudChSZW5k
ZXJTdHlsZTo6aW5pdGlhbFRleHRJbmRlbnQoKSkKICAgICAsIGVmZmVjdGl2ZVpvb20oUmVuZGVy
U3R5bGU6OmluaXRpYWxab29tKCkpCiAgICAgLCB0ZXh0VW5kZXJsaW5lT2Zmc2V0KFJlbmRlclN0
eWxlOjppbml0aWFsVGV4dFVuZGVybGluZU9mZnNldCgpKQorICAgICwgdGV4dEVkZ2UoUmVuZGVy
U3R5bGU6OmluaXRpYWxUZXh0RWRnZSgpKQogICAgICwgbWl0ZXJMaW1pdChSZW5kZXJTdHlsZTo6
aW5pdGlhbFN0cm9rZU1pdGVyTGltaXQoKSkKICAgICAsIGN1c3RvbVByb3BlcnRpZXMoU3R5bGVD
dXN0b21Qcm9wZXJ0eURhdGE6OmNyZWF0ZSgpKQogICAgICwgd2lkb3dzKFJlbmRlclN0eWxlOjpp
bml0aWFsV2lkb3dzKCkpCkBAIC0xODYsNiArMTg4LDcgQEAgaW5saW5lIFN0eWxlUmFyZUluaGVy
aXRlZERhdGE6OlN0eWxlUmFyZUluaGVyaXRlZERhdGEoY29uc3QgU3R5bGVSYXJlSW5oZXJpdGVk
RGEKICAgICAsIGluZGVudChvLmluZGVudCkKICAgICAsIGVmZmVjdGl2ZVpvb20oby5lZmZlY3Rp
dmVab29tKQogICAgICwgdGV4dFVuZGVybGluZU9mZnNldChvLnRleHRVbmRlcmxpbmVPZmZzZXQp
CisgICAgLCB0ZXh0RWRnZShvLnRleHRFZGdlKQogICAgICwgbWl0ZXJMaW1pdChvLm1pdGVyTGlt
aXQpCiAgICAgLCBjdXN0b21Qcm9wZXJ0aWVzKG8uY3VzdG9tUHJvcGVydGllcykKICAgICAsIHdp
ZG93cyhvLndpZG93cykKQEAgLTI5Nyw2ICszMDAsNyBAQCBib29sIFN0eWxlUmFyZUluaGVyaXRl
ZERhdGE6Om9wZXJhdG9yPT0oY29uc3QgU3R5bGVSYXJlSW5oZXJpdGVkRGF0YSYgbykgY29uc3QK
ICAgICAgICAgJiYgaW5kZW50ID09IG8uaW5kZW50CiAgICAgICAgICYmIGVmZmVjdGl2ZVpvb20g
PT0gby5lZmZlY3RpdmVab29tCiAgICAgICAgICYmIHRleHRVbmRlcmxpbmVPZmZzZXQgPT0gby50
ZXh0VW5kZXJsaW5lT2Zmc2V0CisgICAgICAgICYmIHRleHRFZGdlID09IG8udGV4dEVkZ2UKICAg
ICAgICAgJiYgd29yZFNwYWNpbmcgPT0gby53b3JkU3BhY2luZwogICAgICAgICAmJiBtaXRlckxp
bWl0ID09IG8ubWl0ZXJMaW1pdAogICAgICAgICAmJiB3aWRvd3MgPT0gby53aWRvd3MKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWRE
YXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVk
RGF0YS5oCmluZGV4IDQxYWFjNjU4ZjEzMC4uMWMwYmFkODg1ZjZiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmgK
QEAgLTI4LDYgKzI4LDcgQEAKICNpbmNsdWRlICJSZW5kZXJTdHlsZUNvbnN0YW50cy5oIgogI2lu
Y2x1ZGUgIlN0eWxlQ29sb3IuaCIKICNpbmNsdWRlICJTdHlsZUN1c3RvbVByb3BlcnR5RGF0YS5o
IgorI2luY2x1ZGUgIlN0eWxlVGV4dEVkZ2UuaCIKICNpbmNsdWRlICJUYWJTaXplLmgiCiAjaW5j
bHVkZSAiVGV4dFVuZGVybGluZU9mZnNldC5oIgogI2luY2x1ZGUgIlRvdWNoQWN0aW9uLmgiCkBA
IC05Niw2ICs5Nyw4IEBAIHB1YmxpYzoKICAgICBmbG9hdCBlZmZlY3RpdmVab29tOwogCiAgICAg
VGV4dFVuZGVybGluZU9mZnNldCB0ZXh0VW5kZXJsaW5lT2Zmc2V0OworCisgICAgVGV4dEVkZ2Ug
dGV4dEVkZ2U7CiAgICAgCiAgICAgTGVuZ3RoIHdvcmRTcGFjaW5nOwogICAgIGZsb2F0IG1pdGVy
TGltaXQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVU
ZXh0RWRnZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlVGV4dEVkZ2Uu
aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjg0NzZhZThjOTBjOAot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVRl
eHRFZGdlLmgKQEAgLTAsMCArMSw0NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMiBBcHBs
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMK
KyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAq
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICog
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisj
aW5jbHVkZSAiUmVuZGVyU3R5bGVDb25zdGFudHMuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgewor
CitzdHJ1Y3QgVGV4dEVkZ2UgeworICAgIFRleHRFZGdlVHlwZSBvdmVyIHsgVGV4dEVkZ2VUeXBl
OjpMZWFkaW5nIH07CisgICAgVGV4dEVkZ2VUeXBlIHVuZGVyIHsgVGV4dEVkZ2VUeXBlOjpMZWFk
aW5nIH07Cit9OworCitpbmxpbmUgYm9vbCBvcGVyYXRvcj09KGNvbnN0IFRleHRFZGdlJiBhLCBj
b25zdCBUZXh0RWRnZSYgYikKK3sKKyAgICByZXR1cm4gYS5vdmVyID09IGIub3ZlciAmJiBhLnVu
ZGVyID09IGIudW5kZXI7Cit9CisKK2lubGluZSBib29sIG9wZXJhdG9yIT0oY29uc3QgVGV4dEVk
Z2UmIGEsIGNvbnN0IFRleHRFZGdlJiBiKSB7IHJldHVybiAhKGEgPT0gYik7IH0KKworfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVC
dWlsZGVyQ29udmVydGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDb252
ZXJ0ZXIuaAppbmRleCBiNmUzY2JhMzJhOWMuLjlhMjg4MWJkNTliMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmgKQEAgLTYyLDYgKzYyLDcgQEAKICNp
bmNsdWRlICJTdHlsZUJ1aWxkZXJTdGF0ZS5oIgogI2luY2x1ZGUgIlN0eWxlR3JpZERhdGEuaCIK
ICNpbmNsdWRlICJTdHlsZVNjcm9sbFNuYXBQb2ludHMuaCIKKyNpbmNsdWRlICJTdHlsZVRleHRF
ZGdlLmgiCiAjaW5jbHVkZSAiVGFiU2l6ZS5oIgogI2luY2x1ZGUgIlRvdWNoQWN0aW9uLmgiCiAj
aW5jbHVkZSAiVHJhbnNmb3JtRnVuY3Rpb25zLmgiCkBAIC0xMTUsNiArMTE2LDcgQEAgcHVibGlj
OgogICAgIHN0YXRpYyBUZXh0VW5kZXJsaW5lT2Zmc2V0IGNvbnZlcnRUZXh0VW5kZXJsaW5lT2Zm
c2V0KEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CiAgICAgc3RhdGljIFRleHREZWNv
cmF0aW9uVGhpY2tuZXNzIGNvbnZlcnRUZXh0RGVjb3JhdGlvblRoaWNrbmVzcyhCdWlsZGVyU3Rh
dGUmLCBjb25zdCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyBSZWZQdHI8U3R5bGVSZWZsZWN0aW9u
PiBjb252ZXJ0UmVmbGVjdGlvbihCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOworICAg
IHN0YXRpYyBUZXh0RWRnZSBjb252ZXJ0VGV4dEVkZ2UoQnVpbGRlclN0YXRlJiwgY29uc3QgQ1NT
VmFsdWUmKTsKICAgICBzdGF0aWMgSW50U2l6ZSBjb252ZXJ0SW5pdGlhbExldHRlcihCdWlsZGVy
U3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyBmbG9hdCBjb252ZXJ0VGV4dFN0
cm9rZVdpZHRoKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CiAgICAgc3RhdGljIE9w
dGlvblNldDxMaW5lQm94Q29udGFpbj4gY29udmVydExpbmVCb3hDb250YWluKEJ1aWxkZXJTdGF0
ZSYsIGNvbnN0IENTU1ZhbHVlJik7CkBAIC04NDIsNiArODQ0LDU5IEBAIGlubGluZSBSZWZQdHI8
U3R5bGVSZWZsZWN0aW9uPiBCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0UmVmbGVjdGlvbihCdWls
ZGVyU3RhdGUmCiAgICAgcmV0dXJuIHJlZmxlY3Rpb247CiB9CiAKK2lubGluZSBUZXh0RWRnZSBC
dWlsZGVyQ29udmVydGVyOjpjb252ZXJ0VGV4dEVkZ2UoQnVpbGRlclN0YXRlJiwgY29uc3QgQ1NT
VmFsdWUmIHZhbHVlKQoreworICAgIGF1dG8mIHZhbHVlcyA9IGRvd25jYXN0PENTU1ZhbHVlTGlz
dD4odmFsdWUpOworICAgIGF1dG8mIGZpcnN0VmFsdWUgPSBkb3duY2FzdDxDU1NQcmltaXRpdmVW
YWx1ZT4oKnZhbHVlcy5pdGVtKDApKTsKKworICAgIGF1dG8gb3ZlclZhbHVlID0gWyZdIHsKKyAg
ICAgICAgc3dpdGNoIChmaXJzdFZhbHVlLnZhbHVlSUQoKSkgeworICAgICAgICBjYXNlIENTU1Zh
bHVlTGVhZGluZzoKKyAgICAgICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OkxlYWRpbmc7Cisg
ICAgICAgIGNhc2UgQ1NTVmFsdWVUZXh0OgorICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlw
ZTo6VGV4dDsKKyAgICAgICAgY2FzZSBDU1NWYWx1ZUNhcDoKKyAgICAgICAgICAgIHJldHVybiBU
ZXh0RWRnZVR5cGU6OkNhcEhlaWdodDsKKyAgICAgICAgY2FzZSBDU1NWYWx1ZUV4OgorICAgICAg
ICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6RXhIZWlnaHQ7CisgICAgICAgIGNhc2UgQ1NTVmFs
dWVJZGVvZ3JhcGhpYzoKKyAgICAgICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OkNKS0lkZW9n
cmFwaGljOworICAgICAgICBjYXNlIENTU1ZhbHVlSWRlb2dyYXBoaWNJbms6CisgICAgICAgICAg
ICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpDSktJZGVvZ3JhcGhpY0luazsKKyAgICAgICAgZGVmYXVs
dDoKKyAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICAgICAgcmV0dXJu
IFRleHRFZGdlVHlwZTo6TGVhZGluZzsKKyAgICAgICAgfQorICAgIH07CisKKyAgICBhdXRvIHVu
ZGVyVmFsdWUgPSBbJl0geworICAgICAgICBpZiAoZmlyc3RWYWx1ZS52YWx1ZUlEKCkgPT0gQ1NT
VmFsdWVMZWFkaW5nKQorICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6TGVhZGluZzsK
KyAgICAgICAgaWYgKHZhbHVlcy5sZW5ndGgoKSA9PSAxKSB7CisgICAgICAgICAgICAvLyBodHRw
czovL3d3dy53My5vcmcvVFIvY3NzLWlubGluZS0zLyN0ZXh0LWVkZ2VzCisgICAgICAgICAgICAv
LyAiSWYgb25seSBvbmUgdmFsdWUgaXMgc3BlY2lmaWVkLCBib3RoIGVkZ2VzIGFyZSBhc3NpZ25l
ZCB0aGF0IHNhbWUga2V5d29yZCBpZiBwb3NzaWJsZTsgZWxzZSB0ZXh0IGlzIGFzc3VtZWQgYXMg
dGhlIG1pc3NpbmcgdmFsdWUuIgorICAgICAgICAgICAgLy8gRklYTUU6IEZpZ3VyZSBvdXQgd2hh
dCAiaWYgcG9zc2libGUiIG1lYW5zIGhlcmUuCisgICAgICAgICAgICByZXR1cm4gVGV4dEVkZ2VU
eXBlOjpUZXh0OworICAgICAgICB9CisKKyAgICAgICAgYXV0byYgc2Vjb25kVmFsdWUgPSBkb3du
Y2FzdDxDU1NQcmltaXRpdmVWYWx1ZT4oKnZhbHVlcy5pdGVtKDEpKTsKKyAgICAgICAgc3dpdGNo
IChzZWNvbmRWYWx1ZS52YWx1ZUlEKCkpIHsKKyAgICAgICAgY2FzZSBDU1NWYWx1ZVRleHQ6Cisg
ICAgICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpUZXh0OworICAgICAgICBjYXNlIENTU1Zh
bHVlQWxwaGFiZXRpYzoKKyAgICAgICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OkFscGhhYmV0
aWM7CisgICAgICAgIGNhc2UgQ1NTVmFsdWVJZGVvZ3JhcGhpYzoKKyAgICAgICAgICAgIHJldHVy
biBUZXh0RWRnZVR5cGU6OkNKS0lkZW9ncmFwaGljOworICAgICAgICBjYXNlIENTU1ZhbHVlSWRl
b2dyYXBoaWNJbms6CisgICAgICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpDSktJZGVvZ3Jh
cGhpY0luazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hF
RCgpOworICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6TGVhZGluZzsKKyAgICAgICAg
fQorICAgIH07CisgICAgcmV0dXJuIHsgb3ZlclZhbHVlKCksIHVuZGVyVmFsdWUoKSB9OworfQor
CiBpbmxpbmUgSW50U2l6ZSBCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0SW5pdGlhbExldHRlcihC
dWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYgdmFsdWUpCiB7CiAgICAgYXV0byYgcHJpbWl0
aXZlVmFsdWUgPSBkb3duY2FzdDxDU1NQcmltaXRpdmVWYWx1ZT4odmFsdWUpOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3RleHQtZWRnZS1wcm9wZXJ0eS1wYXJzaW5nLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC90ZXh0LWVkZ2UtcHJvcGVydHktcGFyc2lu
Zy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5k
OWI1ZTU1YTJhYTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdGV4
dC1lZGdlLXByb3BlcnR5LXBhcnNpbmctZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNTEgQEAKK1Rl
c3QgcGFyc2luZyBvZiB0aGUgQ1NTIHRleHQtZWRnZSBwcm9wZXJ0eS4KKworT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgorCisKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBsZWFkaW5nIikgaXMgImxl
YWRpbmciCitQQVNTIHRlc3QoInRleHQtZWRnZTogdGV4dCIpIGlzICJ0ZXh0IgorUEFTUyB0ZXN0
KCJ0ZXh0LWVkZ2U6IGNhcCIpIGlzICJjYXAiCitQQVNTIHRlc3QoInRleHQtZWRnZTogZXgiKSBp
cyAiZXgiCitQQVNTIHRlc3QoInRleHQtZWRnZTogaWRlb2dyYXBoaWMiKSBpcyAiaWRlb2dyYXBo
aWMiCitQQVNTIHRlc3QoInRleHQtZWRnZTogaWRlb2dyYXBoaWMtaW5rIikgaXMgImlkZW9ncmFw
aGljLWluayIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBhbHBoYWJldGljIikgaXMgIiIKK1BBU1Mg
dGVzdCgidGV4dC1lZGdlOiB0ZXh0IHRleHQiKSBpcyAidGV4dCB0ZXh0IgorUEFTUyB0ZXN0KCJ0
ZXh0LWVkZ2U6IHRleHQgYWxwaGFiZXRpYyIpIGlzICJ0ZXh0IGFscGhhYmV0aWMiCitQQVNTIHRl
c3QoInRleHQtZWRnZTogdGV4dCBpZGVvZ3JhcGhpYyIpIGlzICJ0ZXh0IGlkZW9ncmFwaGljIgor
UEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IHRleHQgaWRlb2dyYXBoaWMtaW5rIikgaXMgInRleHQgaWRl
b2dyYXBoaWMtaW5rIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGNhcCB0ZXh0IikgaXMgImNhcCB0
ZXh0IgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGNhcCBhbHBoYWJldGljIikgaXMgImNhcCBhbHBo
YWJldGljIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGNhcCBpZGVvZ3JhcGhpYyIpIGlzICJjYXAg
aWRlb2dyYXBoaWMiCitQQVNTIHRlc3QoInRleHQtZWRnZTogY2FwIGlkZW9ncmFwaGljLWluayIp
IGlzICJjYXAgaWRlb2dyYXBoaWMtaW5rIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGV4IHRleHQi
KSBpcyAiZXggdGV4dCIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBleCBhbHBoYWJldGljIikgaXMg
ImV4IGFscGhhYmV0aWMiCitQQVNTIHRlc3QoInRleHQtZWRnZTogZXggaWRlb2dyYXBoaWMiKSBp
cyAiZXggaWRlb2dyYXBoaWMiCitQQVNTIHRlc3QoInRleHQtZWRnZTogZXggaWRlb2dyYXBoaWMt
aW5rIikgaXMgImV4IGlkZW9ncmFwaGljLWluayIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBpZGVv
Z3JhcGhpYyB0ZXh0IikgaXMgImlkZW9ncmFwaGljIHRleHQiCitQQVNTIHRlc3QoInRleHQtZWRn
ZTogaWRlb2dyYXBoaWMgYWxwaGFiZXRpYyIpIGlzICJpZGVvZ3JhcGhpYyBhbHBoYWJldGljIgor
UEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGlkZW9ncmFwaGljIGlkZW9ncmFwaGljIikgaXMgImlkZW9n
cmFwaGljIGlkZW9ncmFwaGljIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGlkZW9ncmFwaGljIGlk
ZW9ncmFwaGljLWluayIpIGlzICJpZGVvZ3JhcGhpYyBpZGVvZ3JhcGhpYy1pbmsiCitQQVNTIHRl
c3QoInRleHQtZWRnZTogaWRlb2dyYXBoaWMtaW5rIHRleHQiKSBpcyAiaWRlb2dyYXBoaWMtaW5r
IHRleHQiCitQQVNTIHRlc3QoInRleHQtZWRnZTogaWRlb2dyYXBoaWMtaW5rIGFscGhhYmV0aWMi
KSBpcyAiaWRlb2dyYXBoaWMtaW5rIGFscGhhYmV0aWMiCitQQVNTIHRlc3QoInRleHQtZWRnZTog
aWRlb2dyYXBoaWMtaW5rIGlkZW9ncmFwaGljIikgaXMgImlkZW9ncmFwaGljLWluayBpZGVvZ3Jh
cGhpYyIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBpZGVvZ3JhcGhpYy1pbmsgaWRlb2dyYXBoaWMt
aW5rIikgaXMgImlkZW9ncmFwaGljLWluayBpZGVvZ3JhcGhpYy1pbmsiCitQQVNTIHRlc3QoInRl
eHQtZWRnZTogbGVhZGluZyBsZWFkaW5nIikgaXMgIiIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBs
ZWFkaW5nIHRleHQiKSBpcyAiIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGxlYWRpbmcgY2FwIikg
aXMgIiIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBsZWFkaW5nIGV4IikgaXMgIiIKK1BBU1MgdGVz
dCgidGV4dC1lZGdlOiBsZWFkaW5nIGlkZW9ncmFwaGljIikgaXMgIiIKK1BBU1MgdGVzdCgidGV4
dC1lZGdlOiBsZWFkaW5nIGlkZW9ncmFwaGljLWluayIpIGlzICIiCitQQVNTIHRlc3QoInRleHQt
ZWRnZTogdGV4dCBsZWFkaW5nIikgaXMgIiIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBjYXAgbGVh
ZGluZyIpIGlzICIiCitQQVNTIHRlc3QoInRleHQtZWRnZTogZXggbGVhZGluZyIpIGlzICIiCitQ
QVNTIHRlc3QoInRleHQtZWRnZTogaWRlb2dyYXBoaWMgbGVhZGluZyIpIGlzICIiCitQQVNTIHRl
c3QoInRleHQtZWRnZTogaWRlb2dyYXBoaWMtaW5rIGxlYWRpbmciKSBpcyAiIgorUEFTUyB0ZXN0
KCJ0ZXh0LWVkZ2U6IHRleHQgY2FwIikgaXMgIiIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiB0ZXh0
IGV4IikgaXMgIiIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBhbHBoYWJldGljIikgaXMgIiIKK1BB
U1MgdGVzdCgidGV4dC1lZGdlOiBhbHBoYWJldGljIHRleHQiKSBpcyAiIgorUEFTUyBzdWNjZXNz
ZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvdGV4dC90ZXh0LWVkZ2UtcHJvcGVydHktcGFyc2luZy5odG1sIGIvTGF5b3V0
VGVzdHMvZmFzdC90ZXh0L3RleHQtZWRnZS1wcm9wZXJ0eS1wYXJzaW5nLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi4zNzI1NDdhYzY3OWMKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdGV4dC1lZGdlLXByb3BlcnR5LXBhcnNpbmcu
aHRtbApAQCAtMCwwICsxLDcxIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RU
RCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQ+Citk
ZXNjcmlwdGlvbignVGVzdCBwYXJzaW5nIG9mIHRoZSBDU1MgdGV4dC1lZGdlIHByb3BlcnR5Licp
OworCitmdW5jdGlvbiB0ZXN0KGRlY2xhcmF0aW9uKSB7CisgICAgdmFyIGRpdiA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoImRpdiIpOworICAgIGRpdi5zZXRBdHRyaWJ1dGUoInN0eWxlIiwgZGVj
bGFyYXRpb24pOworICAgIHJldHVybiBkaXYuc3R5bGUudGV4dEVkZ2U7Cit9CisKK3Nob3VsZEJl
RXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBsZWFkaW5nIiknLCAibGVhZGluZyIpOwor
CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogdGV4dCIpJywgInRleHQi
KTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBjYXAiKScsICJjYXAi
KTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBleCIpJywgImV4Iik7
CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogaWRlb2dyYXBoaWMiKScs
ICJpZGVvZ3JhcGhpYyIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6
IGlkZW9ncmFwaGljLWluayIpJywgImlkZW9ncmFwaGljLWluayIpOworc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGFscGhhYmV0aWMiKScsICIiKTsKKworc2hvdWxkQmVF
cXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IHRleHQgdGV4dCIpJywgInRleHQgdGV4dCIp
Oworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IHRleHQgYWxwaGFiZXRp
YyIpJywgInRleHQgYWxwaGFiZXRpYyIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0
ZXh0LWVkZ2U6IHRleHQgaWRlb2dyYXBoaWMiKScsICJ0ZXh0IGlkZW9ncmFwaGljIik7CitzaG91
bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogdGV4dCBpZGVvZ3JhcGhpYy1pbmsi
KScsICJ0ZXh0IGlkZW9ncmFwaGljLWluayIpOworCitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rl
c3QoInRleHQtZWRnZTogY2FwIHRleHQiKScsICJjYXAgdGV4dCIpOworc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGNhcCBhbHBoYWJldGljIiknLCAiY2FwIGFscGhhYmV0
aWMiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBjYXAgaWRlb2dy
YXBoaWMiKScsICJjYXAgaWRlb2dyYXBoaWMiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVz
dCgidGV4dC1lZGdlOiBjYXAgaWRlb2dyYXBoaWMtaW5rIiknLCAiY2FwIGlkZW9ncmFwaGljLWlu
ayIpOworCitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogZXggdGV4dCIp
JywgImV4IHRleHQiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBl
eCBhbHBoYWJldGljIiknLCAiZXggYWxwaGFiZXRpYyIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCd0ZXN0KCJ0ZXh0LWVkZ2U6IGV4IGlkZW9ncmFwaGljIiknLCAiZXggaWRlb2dyYXBoaWMiKTsK
K3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBleCBpZGVvZ3JhcGhpYy1p
bmsiKScsICJleCBpZGVvZ3JhcGhpYy1pbmsiKTsKKworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0
ZXN0KCJ0ZXh0LWVkZ2U6IGlkZW9ncmFwaGljIHRleHQiKScsICJpZGVvZ3JhcGhpYyB0ZXh0Iik7
CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogaWRlb2dyYXBoaWMgYWxw
aGFiZXRpYyIpJywgImlkZW9ncmFwaGljIGFscGhhYmV0aWMiKTsKK3Nob3VsZEJlRXF1YWxUb1N0
cmluZygndGVzdCgidGV4dC1lZGdlOiBpZGVvZ3JhcGhpYyBpZGVvZ3JhcGhpYyIpJywgImlkZW9n
cmFwaGljIGlkZW9ncmFwaGljIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQt
ZWRnZTogaWRlb2dyYXBoaWMgaWRlb2dyYXBoaWMtaW5rIiknLCAiaWRlb2dyYXBoaWMgaWRlb2dy
YXBoaWMtaW5rIik7CisKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBp
ZGVvZ3JhcGhpYy1pbmsgdGV4dCIpJywgImlkZW9ncmFwaGljLWluayB0ZXh0Iik7CitzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogaWRlb2dyYXBoaWMtaW5rIGFscGhhYmV0
aWMiKScsICJpZGVvZ3JhcGhpYy1pbmsgYWxwaGFiZXRpYyIpOworc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGlkZW9ncmFwaGljLWluayBpZGVvZ3JhcGhpYyIpJywgImlk
ZW9ncmFwaGljLWluayBpZGVvZ3JhcGhpYyIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0
KCJ0ZXh0LWVkZ2U6IGlkZW9ncmFwaGljLWluayBpZGVvZ3JhcGhpYy1pbmsiKScsICJpZGVvZ3Jh
cGhpYy1pbmsgaWRlb2dyYXBoaWMtaW5rIik7CisKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVz
dCgidGV4dC1lZGdlOiBsZWFkaW5nIGxlYWRpbmciKScsICIiKTsKK3Nob3VsZEJlRXF1YWxUb1N0
cmluZygndGVzdCgidGV4dC1lZGdlOiBsZWFkaW5nIHRleHQiKScsICIiKTsKK3Nob3VsZEJlRXF1
YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBsZWFkaW5nIGNhcCIpJywgIiIpOworc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGxlYWRpbmcgZXgiKScsICIiKTsKK3No
b3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBsZWFkaW5nIGlkZW9ncmFwaGlj
IiknLCAiIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogbGVhZGlu
ZyBpZGVvZ3JhcGhpYy1pbmsiKScsICIiKTsKKworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0
KCJ0ZXh0LWVkZ2U6IHRleHQgbGVhZGluZyIpJywgIiIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCd0ZXN0KCJ0ZXh0LWVkZ2U6IGNhcCBsZWFkaW5nIiknLCAiIik7CitzaG91bGRCZUVxdWFsVG9T
dHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogZXggbGVhZGluZyIpJywgIiIpOworc2hvdWxkQmVFcXVh
bFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGlkZW9ncmFwaGljIGxlYWRpbmciKScsICIiKTsK
K3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBpZGVvZ3JhcGhpYy1pbmsg
bGVhZGluZyIpJywgIiIpOworCitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRn
ZTogdGV4dCBjYXAiKScsICIiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1l
ZGdlOiB0ZXh0IGV4IiknLCAiIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQt
ZWRnZTogYWxwaGFiZXRpYyIpJywgIiIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0
ZXh0LWVkZ2U6IGFscGhhYmV0aWMgdGV4dCIpJywgIiIpOworCis8L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4K
KzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1j
YXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dAppbmRleCA0YTU2Mzk1Nzhi
YzEuLjY5ZTk5YjUyNGRkMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dApAQCAt
MzAzLDYgKzMwMyw3IEBAIFBBU1MgdGV4dC1kZWNvcmF0aW9uLWxpbmUKIFBBU1MgdGV4dC1kZWNv
cmF0aW9uLXNraXAtaW5rCiBQQVNTIHRleHQtZGVjb3JhdGlvbi1zdHlsZQogUEFTUyB0ZXh0LWRl
Y29yYXRpb24tdGhpY2tuZXNzCitQQVNTIHRleHQtZWRnZQogUEFTUyB0ZXh0LWVtcGhhc2lzLWNv
bG9yCiBQQVNTIHRleHQtZW1waGFzaXMtcG9zaXRpb24KIFBBU1MgdGV4dC1lbXBoYXNpcy1zdHls
ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3Nzb20vY3Nzb20tZ2V0UHJvcGVydHlWYWx1ZS1jb21tb24tY2hlY2tzLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
c29tL2Nzc29tLWdldFByb3BlcnR5VmFsdWUtY29tbW9uLWNoZWNrcy1leHBlY3RlZC50eHQKaW5k
ZXggM2Y3MGJiNjMwYThiLi44ZGQ0OGY1YTFmNTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzc29tL2Nzc29tLWdldFByb3BlcnR5
VmFsdWUtY29tbW9uLWNoZWNrcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vY3Nzb20tZ2V0UHJvcGVydHlWYWx1
ZS1jb21tb24tY2hlY2tzLWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIAogRkFJTCBBbGwg
cHJvcGVydGllcyBjYW4gc2VyaWFsaXplICdpbml0aWFsJyBhc3NlcnRfYXJyYXlfZXF1YWxzOiBs
ZW5ndGhzIGRpZmZlciwgZXhwZWN0ZWQgYXJyYXkgW10gbGVuZ3RoIDAsIGdvdCBbWyJncmlkIiwg
IiJdLCBbImdyaWQtYXJlYSIsICJpbml0aWFsIC8gaW5pdGlhbCAvIGluaXRpYWwgLyBpbml0aWFs
Il0sIFsiZ3JpZC1jb2x1bW4iLCAiaW5pdGlhbCAvIGluaXRpYWwiXSwgWyJncmlkLXJvdyIsICJp
bml0aWFsIC8gaW5pdGlhbCJdLCBbIm9mZnNldCIsICIiXV0gbGVuZ3RoIDUKLUZBSUwgQWxsIHBy
b3BlcnRpZXMgKGV4Y2VwdCAnYWxsJykgY2FuIHNlcmlhbGl6ZSB0aGVpciBpbml0aWFsIHZhbHVl
IChjb21wdXRlZCkgYXNzZXJ0X2FycmF5X2VxdWFsczogbGVuZ3RocyBkaWZmZXIsIGV4cGVjdGVk
IGFycmF5IFtdIGxlbmd0aCAwLCBnb3QgW1siLXdlYmtpdC1saW5lLWNsYW1wIiwgIm5vbmUiXSwg
WyItd2Via2l0LW1hc2siLCAiIl0sIFsiLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW4teCIsICIi
XSwgWyItd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbi15IiwgIiJdLCBbIi13ZWJraXQtdGV4dC1z
dHJva2UiLCAiIl0sIFsiLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luLXgiLCAiIl0sIFsiLXdlYmtp
dC10cmFuc2Zvcm0tb3JpZ2luLXkiLCAiIl0sIFsiLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luLXoi
LCAiIl0sIFsiZ3JpZCIsICJub25lIC8gbm9uZSAvIG5vbmUgLyByb3cgLyBhdXRvIC8gYXV0byJd
LCBbImdyaWQtdGVtcGxhdGUiLCAibm9uZSAvIG5vbmUgLyBub25lIl0sIFsibWFya2VyIiwgIiJd
LCBbIm9ycGhhbnMiLCAiYXV0byJdLCBbInBhZ2UiLCAiIl0sIFsicGVyc3BlY3RpdmUtb3JpZ2lu
LXgiLCAiIl0sIFsicGVyc3BlY3RpdmUtb3JpZ2luLXkiLCAiIl0sIFsic2l6ZSIsICIiXSwgWyJ0
cmFuc2Zvcm0tb3JpZ2luLXgiLCAiIl0sIFsidHJhbnNmb3JtLW9yaWdpbi15IiwgIiJdLCBbInRy
YW5zZm9ybS1vcmlnaW4teiIsICIiXSwgWyJ3aWRvd3MiLCAiYXV0byJdXSBsZW5ndGggMjAKK0ZB
SUwgQWxsIHByb3BlcnRpZXMgKGV4Y2VwdCAnYWxsJykgY2FuIHNlcmlhbGl6ZSB0aGVpciBpbml0
aWFsIHZhbHVlIChjb21wdXRlZCkgYXNzZXJ0X2FycmF5X2VxdWFsczogbGVuZ3RocyBkaWZmZXIs
IGV4cGVjdGVkIGFycmF5IFtdIGxlbmd0aCAwLCBnb3QgW1siLXdlYmtpdC1saW5lLWNsYW1wIiwg
Im5vbmUiXSwgWyItd2Via2l0LW1hc2siLCAiIl0sIFsiLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmln
aW4teCIsICIiXSwgWyItd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbi15IiwgIiJdLCBbIi13ZWJr
aXQtdGV4dC1zdHJva2UiLCAiIl0sIFsiLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luLXgiLCAiIl0s
IFsiLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luLXkiLCAiIl0sIFsiLXdlYmtpdC10cmFuc2Zvcm0t
b3JpZ2luLXoiLCAiIl0sIFsiZ3JpZCIsICJub25lIC8gbm9uZSAvIG5vbmUgLyByb3cgLyBhdXRv
IC8gYXV0byJdLCBbImdyaWQtdGVtcGxhdGUiLCAibm9uZSAvIG5vbmUgLyBub25lIl0sIFsibWFy
a2VyIiwgIiJdLCBbIm9ycGhhbnMiLCAiYXV0byJdLCBbInBhZ2UiLCAiIl0sIFsicGVyc3BlY3Rp
dmUtb3JpZ2luLXgiLCAiIl0sIFsicGVyc3BlY3RpdmUtb3JpZ2luLXkiLCAiIl0sIFsic2l6ZSIs
ICIiXSwgWyJ0ZXh0LWVkZ2UiLCAibGVhZGluZyBsZWFkaW5nIl0sIFsidHJhbnNmb3JtLW9yaWdp
bi14IiwgIiJdLCBbInRyYW5zZm9ybS1vcmlnaW4teSIsICIiXSwgWyJ0cmFuc2Zvcm0tb3JpZ2lu
LXoiLCAiIl0sIFsid2lkb3dzIiwgImF1dG8iXV0gbGVuZ3RoIDIxCiBQQVNTIEFsbCBwcm9wZXJ0
aWVzIChleGNlcHQgJ2FsbCcpIGNhbiBzZXJpYWxpemUgdGhlaXIgaW5pdGlhbCB2YWx1ZSAoc3Bl
Y2lmaWVkKQogRkFJTCBBbGwgc2hvcnRoYW5kcyBjYW4gc2VyaWFsaXplIHRoZWlyIGxvbmdoYW5k
cyBzZXQgdG8gJ2luaXRpYWwnIGFzc2VydF9hcnJheV9lcXVhbHM6IGxlbmd0aHMgZGlmZmVyLCBl
eHBlY3RlZCBhcnJheSBbXSBsZW5ndGggMCwgZ290IFtbImFsbCIsICIiXSwgWyJncmlkIiwgIiJd
LCBbImdyaWQtYXJlYSIsICJpbml0aWFsIC8gaW5pdGlhbCAvIGluaXRpYWwgLyBpbml0aWFsIl0s
IFsiZ3JpZC1jb2x1bW4iLCAiaW5pdGlhbCAvIGluaXRpYWwiXSwgWyJncmlkLXJvdyIsICJpbml0
aWFsIC8gaW5pdGlhbCJdLCBbIm9mZnNldCIsICIiXV0gbGVuZ3RoIDYKIFBBU1MgQWxsIHNob3J0
aGFuZHMgKGV4Y2VwdCAnYWxsJykgY2FuIHNlcmlhbGl6ZSB0aGVpciBsb25naGFuZHMgc2V0IHRv
IHRoZWlyIGluaXRpYWwgdmFsdWUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lv
cy13azIvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxs
LXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9z
LXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwt
cHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKaW5kZXggODI1NmI0Yzc3Mjk5Li5lNzBkOTgz
OGZhNmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy13azIvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlhbC14
bWwtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy13azIvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlh
bC14bWwtZXhwZWN0ZWQudHh0CkBAIC0zMDMsNiArMzAzLDcgQEAgUEFTUyB0ZXh0LWRlY29yYXRp
b24tbGluZQogUEFTUyB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbmsKIFBBU1MgdGV4dC1kZWNvcmF0
aW9uLXN0eWxlCiBQQVNTIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3MKK1BBU1MgdGV4dC1lZGdl
CiBQQVNTIHRleHQtZW1waGFzaXMtY29sb3IKIFBBU1MgdGV4dC1lbXBoYXNpcy1wb3NpdGlvbgog
UEFTUyB0ZXh0LWVtcGhhc2lzLXN0eWxlCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>463843</attachid>
            <date>2022-12-01 14:08:04 -0800</date>
            <delta_ts>2022-12-02 12:40:26 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-248448-20221201140803.patch</filename>
            <type>text/plain</type>
            <size>39162</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">RnJvbSA3NGE2NjZjMWNkMjY5YTczYTdkMTBjNjhmYWNiZWU0MGZiMTcxZWQ5IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGFuIEJhcmFkbGF5IDx6YWxhbkBhcHBsZS5jb20+CkRhdGU6
IE1vbiwgMjggTm92IDIwMjIgMTc6MzM6MjIgLTA4MDAKU3ViamVjdDogW1BBVENIXSBbbGVhZGlu
Zy10cmltXSBBZGQgc3VwcG9ydCBmb3IgcGFyc2luZyAidGV4dC1lZGdlIiBDU1MKIHByb3BlcnR5
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNDg0NDgKClJldmlld2Vk
IGJ5IEFudHRpIEtvaXZpc3RvLgoKVGhpcyBwYXRjaCBhZGQgc3VwcG9ydCBmb3IgcGFyc2luZyAi
dGV4dC1lZGdlIiAoaHR0cHM6Ly93d3cudzMub3JnL1RSL2Nzcy1pbmxpbmUtMy8jdGV4dC1lZGdl
cykuIFRoaXMgcHJvcGVydHkgaXMgYmVoaW5kIHRoZSAiQ1NTIGxlYWRpbmctdHJpbSIgcnVuLXRp
bWUgZmxhZyB3aGljaCBpcyBvZmYgYnkgZGVmYXVsdC4KKHdpbGwgV1BUaWZ5IHRoZSB0ZXN0IGNh
c2VzIHNvb24gYWZ0ZXIgdGhlIGV4cGVjdGVkIGJlaGF2aW9yIGlzIGNvbmZpcm1lZCAtbm90IHNv
IG11Y2ggYWJvdXQgcGFyc2luZywgYnV0IG1vcmUgYWJvdXQgaG93IHRoZXkgaW50ZXJhY3Qgd2l0
aCBsZWFkaW5nLXRyaW0uKQoKKiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6CiogU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGlu
Z3MuaDoKKFdlYkNvcmU6OkNTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1ZSk6CihX
ZWJDb3JlOjpDU1NQcmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgVGV4dEVkZ2UgY29uc3QpOgoqIFNv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb246CiogU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1ZhbHVlS2V5d29yZHMuaW46CiogU291cmNlL1dlYkNvcmUvY3NzL0NvbXB1dGVkU3R5bGVF
eHRyYWN0b3IuY3BwOgooV2ViQ29yZTo6dmFsdWVGb3JUZXh0RWRnZSk6CihXZWJDb3JlOjpDb21w
dXRlZFN0eWxlRXh0cmFjdG9yOjp2YWx1ZUZvclByb3BlcnR5SW5TdHlsZSk6CiogU291cmNlL1dl
YkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuY3BwOgooV2ViQ29yZTo6
Q1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzOjpjb25zdW1lVGV4dEVkZ2UpOgoqIFNvdXJjZS9XZWJD
b3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmg6CiogU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcDoKKFdlYkNvcmU6OlJlbmRlclN0eWxl
Ojp0ZXh0RWRnZSBjb25zdCk6CihXZWJDb3JlOjpSZW5kZXJTdHlsZTo6c2V0VGV4dEVkZ2UpOgoo
V2ViQ29yZTo6UmVuZGVyU3R5bGU6OmluaXRpYWxUZXh0RWRnZSk6CiogU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmg6CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcDoKKFdlYkNvcmU6Om9wZXJhdG9yPDwpOgoq
IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oOgoq
IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmNw
cDoKKFdlYkNvcmU6OlN0eWxlUmFyZUluaGVyaXRlZERhdGE6OlN0eWxlUmFyZUluaGVyaXRlZERh
dGEpOgooV2ViQ29yZTo6U3R5bGVSYXJlSW5oZXJpdGVkRGF0YTo6b3BlcmF0b3I9PSBjb25zdCk6
CiogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEu
aDoKKiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVUZXh0RWRnZS5oOiBBZGRl
ZC4KKFdlYkNvcmU6Om9wZXJhdG9yPT0pOgooV2ViQ29yZTo6b3BlcmF0b3IhPSk6CiogU291cmNl
L1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyQ29udmVydGVyLmg6CihXZWJDb3JlOjpTdHlsZTo6
QnVpbGRlckNvbnZlcnRlcjo6Y29udmVydFRleHRFZGdlKToKLS0tCiBTb3VyY2UvV2ViQ29yZS9I
ZWFkZXJzLmNtYWtlICAgICAgICAgICAgICAgICAgfCAgMSArCiAuLi4vV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogfCAgNCArKwogLi4uL2FuaW1hdGlvbi9DU1NQcm9w
ZXJ0eUFuaW1hdGlvbi5jcHAgICAgICAgIHwgIDEgKwogLi4uL1dlYkNvcmUvY3NzL0NTU1ByaW1p
dGl2ZVZhbHVlTWFwcGluZ3MuaCAgIHwgNTMgKysrKysrKysrKysrKysKIFNvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NQcm9wZXJ0aWVzLmpzb24gICAgICAgICB8IDExICsrKwogU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1ZhbHVlS2V5d29yZHMuaW4gICAgICAgIHwgIDkgKysrCiBTb3VyY2UvV2ViQ29yZS9j
c3MvQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvci5jcHAgfCAxMCArKysKIC4uLi9jc3MvcGFyc2VyL0NT
U1Byb3BlcnR5UGFyc2VySGVscGVycy5jcHAgICB8IDIxICsrKysrKwogLi4uL2Nzcy9wYXJzZXIv
Q1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmggICAgIHwgIDEgKwogLi4uL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcCAgIHwgMTYgKysrKysKIFNvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oICB8ICA1ICsrCiAuLi4vcmVuZGVyaW5nL3N0eWxl
L1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcCAgfCAxNCArKysrCiAuLi4vcmVuZGVyaW5nL3N0eWxl
L1JlbmRlclN0eWxlQ29uc3RhbnRzLmggICAgfCAxMSArKysKIC4uLi9zdHlsZS9TdHlsZVJhcmVJ
bmhlcml0ZWREYXRhLmNwcCAgICAgICAgICB8ICA0ICsrCiAuLi4vcmVuZGVyaW5nL3N0eWxlL1N0
eWxlUmFyZUluaGVyaXRlZERhdGEuaCAgfCAgMyArCiAuLi4vV2ViQ29yZS9yZW5kZXJpbmcvc3R5
bGUvU3R5bGVUZXh0RWRnZS5oICAgfCA0NCArKysrKysrKysrKysKIFNvdXJjZS9XZWJDb3JlL3N0
eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oICB8IDU1ICsrKysrKysrKysrKysrCiAuLi4vdGV4
dC1lZGdlLXByb3BlcnR5LXBhcnNpbmctZXhwZWN0ZWQudHh0ICAgfCA1MSArKysrKysrKysrKysr
CiAuLi4vZmFzdC90ZXh0L3RleHQtZWRnZS1wcm9wZXJ0eS1wYXJzaW5nLmh0bWwgfCA3MSArKysr
KysrKysrKysrKysrKysrCiAuLi4vYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0ICAg
ICAgICAgfCAgMSArCiAuLi5ldFByb3BlcnR5VmFsdWUtY29tbW9uLWNoZWNrcy1leHBlY3RlZC50
eHQgfCAgMiArLQogLi4uL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVjdGVkLnR4dCAgICAgICAg
IHwgIDEgKwogMjIgZmlsZXMgY2hhbmdlZCwgMzg4IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24o
LSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5
bGVUZXh0RWRnZS5oCiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3Rl
eHQtZWRnZS1wcm9wZXJ0eS1wYXJzaW5nLWV4cGVjdGVkLnR4dAogY3JlYXRlIG1vZGUgMTAwNjQ0
IExheW91dFRlc3RzL2Zhc3QvdGV4dC90ZXh0LWVkZ2UtcHJvcGVydHktcGFyc2luZy5odG1sCgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvSGVhZGVycy5jbWFrZSBiL1NvdXJjZS9XZWJDb3Jl
L0hlYWRlcnMuY21ha2UKaW5kZXggM2FlMGM5OGJkOGNjLi4xZTVhYzg4Y2Y3MWYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL0hlYWRlcnMuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvSGVh
ZGVycy5jbWFrZQpAQCAtMjA1MCw2ICsyMDUwLDcgQEAgc2V0KFdlYkNvcmVfUFJJVkFURV9GUkFN
RVdPUktfSEVBREVSUwogICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZVNjcm9sbFNuYXBQb2ludHMu
aAogICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZVNlbGZBbGlnbm1lbnREYXRhLmgKICAgICByZW5k
ZXJpbmcvc3R5bGUvU3R5bGVTdXJyb3VuZERhdGEuaAorICAgIHJlbmRlcmluZy9zdHlsZS9TdHls
ZVRleHRFZGdlLmgKICAgICByZW5kZXJpbmcvc3R5bGUvU3R5bGVUcmFuc2Zvcm1EYXRhLmgKICAg
ICByZW5kZXJpbmcvc3R5bGUvU3R5bGVWaXN1YWxEYXRhLmgKICAgICByZW5kZXJpbmcvc3R5bGUv
VGV4dERlY29yYXRpb25UaGlja25lc3MuaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDViZGVlN2I5NWNiZi4uYjExODM0ZmQzODU3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCkBAIC00ODg4LDYgKzQ4ODgsNyBAQAogCQlERDE3QzA4MjI4NkVDNTc0MDBENjBCNTggLyog
YnVpbGQgaW4gQ29weSBQREYuanMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
REQxN0MwN0MyODZFQzUxOTAwRDYwQjU4IC8qIGJ1aWxkICovOyB9OwogCQlERDE3QzA4MzI4NkVD
NTc3MDBENjBCNTggLyogTElDRU5TRSBpbiBDb3B5IFBERi5qcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBERDE3QzA4MDI4NkVDNTFCMDBENjBCNTggLyogTElDRU5TRSAqLzsg
fTsKIAkJREQxN0MwODQyODZFQzU3QTAwRDYwQjU4IC8qIHdlYiBpbiBDb3B5IFBERi5qcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBERDE3QzA3RTI4NkVDNTFBMDBENjBCNTgg
Lyogd2ViICovOyB9OworCQlERDFDNzc5MDI5MzU0Qzc3MDAzQkQ3OUIgLyogU3R5bGVUZXh0RWRn
ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gREQxQzc3
OEYyOTM1NEM3NTAwM0JENzlCIC8qIFN0eWxlVGV4dEVkZ2UuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlERDc2M0JCMjA5OTJDMkM5MDA3NDBCOEUg
LyogbGlieG1sMi5keWxpYiBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IERENzYzQkIxMDk5MkMyQzkwMDc0MEI4RSAvKiBsaWJ4bWwyLmR5bGliICovOyB9
OwogCQlERDdDREYyNTBBMjNDRjk4MDAwNjk5MjggLyogQ1NTVW5rbm93blJ1bGUuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4MEU2Q0NFMEExOTg5Q0Ew
MDdGQjhDNSAvKiBDU1NVbmtub3duUnVsZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CiAJCUREOEEzMEI0MjkxREZDOEYwMEFENTM3QyAvKiBCbG9ja0xh
eW91dFN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBERDhBMzBCMzI5MURGQzhGMDBBRDUzN0MgLyogQmxvY2tMYXlvdXRTdGF0ZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC0xNzE0Miw2ICsxNzE0
Myw3IEBACiAJCUREMTdDMDdDMjg2RUM1MTkwMEQ2MEI1OCAvKiBidWlsZCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZvbGRlcjsgbmFtZSA9IGJ1aWxk
OyBwYXRoID0gLi4vLi4vVGhpcmRQYXJ0eS9wZGZqcy9idWlsZDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJREQxN0MwN0UyODZFQzUxQTAwRDYwQjU4IC8qIHdlYiAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZvbGRlcjsgbmFtZSA9IHdlYjsg
cGF0aCA9IC4uLy4uL1RoaXJkUGFydHkvcGRmanMvd2ViOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQlERDE3QzA4MDI4NkVDNTFCMDBENjBCNTggLyogTElDRU5TRSAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IG5hbWUgPSBMSUNFTlNF
OyBwYXRoID0gLi4vLi4vVGhpcmRQYXJ0eS9wZGZqcy9MSUNFTlNFOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlERDFDNzc4RjI5MzU0Qzc1MDAzQkQ3OUIgLyogU3R5bGVUZXh0RWRnZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdHlsZVRleHRFZGdlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCURENzYzQkIxMDk5MkMyQzkwMDc0MEI4RSAvKiBsaWJ4
bWwyLmR5bGliICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gImNvbXBpbGVkLm1hY2gtby5keWxpYiI7IG5hbWUgPSBsaWJ4bWwyLmR5bGliOyBwYXRoID0g
L3Vzci9saWIvbGlieG1sMi5keWxpYjsgc291cmNlVHJlZSA9ICI8YWJzb2x1dGU+IjsgfTsKIAkJ
REQ4QTMwQjMyOTFERkM4RjAwQUQ1MzdDIC8qIEJsb2NrTGF5b3V0U3RhdGUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmxvY2tMYXlvdXRTdGF0ZS5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlEREIwNEYzNzI3OEU1NTI3MDA4RDM2NzggLyogbGliV1RGLmEgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBhcmNoaXZlLmFy
OyBwYXRoID0gbGliV1RGLmE7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CkBA
IC0zMDYxOSw2ICszMDYyMSw3IEBACiAJCQkJOUQ2MzgwMEYxQUYxNkUxNjAwMzFBMTVDIC8qIFN0
eWxlU2VsZkFsaWdubWVudERhdGEuaCAqLywKIAkJCQlCQzVFQjVFNjBFODFCRkVGMDBCMjU5NjUg
LyogU3R5bGVTdXJyb3VuZERhdGEuY3BwICovLAogCQkJCUJDNUVCNUU0MEU4MUJGNkQwMEIyNTk2
NSAvKiBTdHlsZVN1cnJvdW5kRGF0YS5oICovLAorCQkJCUREMUM3NzhGMjkzNTRDNzUwMDNCRDc5
QiAvKiBTdHlsZVRleHRFZGdlLmggKi8sCiAJCQkJQkM1RUI4MEQwRTgxRjJDRTAwQjI1OTY1IC8q
IFN0eWxlVHJhbnNmb3JtRGF0YS5jcHAgKi8sCiAJCQkJQkM1RUI4MEUwRTgxRjJDRTAwQjI1OTY1
IC8qIFN0eWxlVHJhbnNmb3JtRGF0YS5oICovLAogCQkJCUJDNUVCNjk3MEU4MURBNjMwMEIyNTk2
NSAvKiBTdHlsZVZpc3VhbERhdGEuY3BwICovLApAQCAtMzg4MzEsNiArMzg4MzQsNyBAQAogCQkJ
CUU0RjlFRUYzMTU2REEwMDcwMEQyM0U3RSAvKiBTdHlsZVNoZWV0Q29udGVudHMuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUE4RUE4MDBBMEExOTUxNkUwMEE4RUY1RiAvKiBTdHlsZVNoZWV0TGlzdC5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI1RTUwRTgxQkY2RDAwQjI1OTY1IC8qIFN0eWxlU3Vy
cm91bmREYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQlERDFDNzc5MDI5MzU0Qzc3MDAzQkQ3OUIg
LyogU3R5bGVUZXh0RWRnZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RUI4MTAwRTgxRjJDRTAw
QjI1OTY1IC8qIFN0eWxlVHJhbnNmb3JtRGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTRERUFB
MTgxN0E5M0RDMzAwMEUwNDMwIC8qIFN0eWxlVHJlZVJlc29sdmVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQlFNDJFNzZEQzFDN0FGNzc2MDBFMzYxNEQgLyogU3R5bGVVcGRhdGUuaCBpbiBIZWFkZXJz
ICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0NTU1Byb3BlcnR5QW5p
bWF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlv
bi5jcHAKaW5kZXggNmM3NmVkODVlYTk2Li5iZjM2YjRkOWNmNzcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2FuaW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlvbi5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYW5pbWF0aW9uL0NTU1Byb3BlcnR5QW5pbWF0aW9uLmNwcApAQCAtMzc4OCw2ICsz
Nzg4LDcgQEAgQ1NTUHJvcGVydHlBbmltYXRpb25XcmFwcGVyTWFwOjpDU1NQcm9wZXJ0eUFuaW1h
dGlvbldyYXBwZXJNYXAoKQogICAgICAgICBjYXNlIENTU1Byb3BlcnR5U2Nyb2xsU25hcEFsaWdu
OgogICAgICAgICBjYXNlIENTU1Byb3BlcnR5U2Nyb2xsU25hcFN0b3A6CiAgICAgICAgIGNhc2Ug
Q1NTUHJvcGVydHlTY3JvbGxTbmFwVHlwZToKKyAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVRleHRF
ZGdlOgogICAgICAgICBjYXNlIENTU1Byb3BlcnR5U2l6ZToKICAgICAgICAgY2FzZSBDU1NQcm9w
ZXJ0eVNwZWFrQXM6CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlTcmM6CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaAppbmRleCA1ZTk3OTVjY2QzZWYu
LmEzMjUzNWEwY2FjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2
ZVZhbHVlTWFwcGluZ3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFs
dWVNYXBwaW5ncy5oCkBAIC01MjI3LDYgKzUyMjcsNTkgQEAgdGVtcGxhdGU8PiBpbmxpbmUgQ1NT
UHJpbWl0aXZlVmFsdWU6Om9wZXJhdG9yIFNjcm9sbFNuYXBTdG9wKCkgY29uc3QKICAgICB9CiB9
CiAKK3RlbXBsYXRlPD4gaW5saW5lIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NQcmltaXRpdmVWYWx1
ZShUZXh0RWRnZVR5cGUgdGV4dEVkZ2VUeXBlKQorICAgIDogQ1NTVmFsdWUoUHJpbWl0aXZlQ2xh
c3MpCit7CisgICAgc2V0UHJpbWl0aXZlVW5pdFR5cGUoQ1NTVW5pdFR5cGU6OkNTU19WQUxVRV9J
RCk7CisgICAgc3dpdGNoICh0ZXh0RWRnZVR5cGUpIHsKKyAgICBjYXNlIFRleHRFZGdlVHlwZTo6
TGVhZGluZzoKKyAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVMZWFkaW5nOworICAg
ICAgICBicmVhazsKKyAgICBjYXNlIFRleHRFZGdlVHlwZTo6VGV4dDoKKyAgICAgICAgbV92YWx1
ZS52YWx1ZUlEID0gQ1NTVmFsdWVUZXh0OworICAgICAgICBicmVhazsKKyAgICBjYXNlIFRleHRF
ZGdlVHlwZTo6Q2FwSGVpZ2h0OgorICAgICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZUNh
cDsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OkV4SGVpZ2h0OgorICAg
ICAgICBtX3ZhbHVlLnZhbHVlSUQgPSBDU1NWYWx1ZUV4OworICAgICAgICBicmVhazsKKyAgICBj
YXNlIFRleHRFZGdlVHlwZTo6QWxwaGFiZXRpYzoKKyAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0g
Q1NTVmFsdWVBbHBoYWJldGljOworICAgICAgICBicmVhazsKKyAgICBjYXNlIFRleHRFZGdlVHlw
ZTo6Q0pLSWRlb2dyYXBoaWM6CisgICAgICAgIG1fdmFsdWUudmFsdWVJRCA9IENTU1ZhbHVlSWRl
b2dyYXBoaWM7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgVGV4dEVkZ2VUeXBlOjpDSktJZGVv
Z3JhcGhpY0luazoKKyAgICAgICAgbV92YWx1ZS52YWx1ZUlEID0gQ1NTVmFsdWVJZGVvZ3JhcGhp
Y0luazsKKyAgICAgICAgYnJlYWs7CisgICAgfQorfQorCit0ZW1wbGF0ZTw+IGlubGluZSBDU1NQ
cmltaXRpdmVWYWx1ZTo6b3BlcmF0b3IgVGV4dEVkZ2VUeXBlKCkgY29uc3QKK3sKKyAgICBBU1NF
UlQoaXNWYWx1ZUlEKCkpOworICAgIHN3aXRjaCAobV92YWx1ZS52YWx1ZUlEKSB7CisgICAgY2Fz
ZSBDU1NWYWx1ZUxlYWRpbmc6CisgICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OkxlYWRpbmc7
CisgICAgY2FzZSBDU1NWYWx1ZVRleHQ6CisgICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OlRl
eHQ7CisgICAgY2FzZSBDU1NWYWx1ZUNhcDoKKyAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6
Q2FwSGVpZ2h0OworICAgIGNhc2UgQ1NTVmFsdWVFeDoKKyAgICAgICAgcmV0dXJuIFRleHRFZGdl
VHlwZTo6RXhIZWlnaHQ7CisgICAgY2FzZSBDU1NWYWx1ZUFscGhhYmV0aWM6CisgICAgICAgIHJl
dHVybiBUZXh0RWRnZVR5cGU6OkFscGhhYmV0aWM7CisgICAgY2FzZSBDU1NWYWx1ZUlkZW9ncmFw
aGljOgorICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpDSktJZGVvZ3JhcGhpYzsKKyAgICBj
YXNlIENTU1ZhbHVlSWRlb2dyYXBoaWNJbms6CisgICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6
OkNKS0lkZW9ncmFwaGljSW5rOworICAgIGRlZmF1bHQ6CisgICAgICAgIEFTU0VSVF9OT1RfUkVB
Q0hFRCgpOworICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpMZWFkaW5nOworICAgIH0KK30K
KwogI2lmIEVOQUJMRShBUFBMRV9QQVkpCiB0ZW1wbGF0ZTw+IGlubGluZSBDU1NQcmltaXRpdmVW
YWx1ZTo6Q1NTUHJpbWl0aXZlVmFsdWUoQXBwbGVQYXlCdXR0b25TdHlsZSBlKQogICAgIDogQ1NT
VmFsdWUoUHJpbWl0aXZlQ2xhc3MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UHJvcGVydGllcy5qc29uIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgpp
bmRleCA1MGZhNjg5OTczOGMuLjA1MWQzYjNlMzE1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1Byb3BlcnRpZXMuanNvbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJv
cGVydGllcy5qc29uCkBAIC01MTAsNiArNTEwLDE3IEBACiAgICAgICAgICAgICAgICAgInVybCI6
ICJodHRwczovL3d3dy53My5vcmcvVFIvY3NzLWZvbnRzLTQvI2ZvbnQtc3RyZXRjaC1wcm9wIgog
ICAgICAgICAgICAgfQogICAgICAgICB9LAorICAgICAgICAidGV4dC1lZGdlIjogeworICAgICAg
ICAgICAgImNvZGVnZW4tcHJvcGVydGllcyI6IHsKKyAgICAgICAgICAgICAgICAiY29udmVydGVy
IjogIlRleHRFZGdlIiwKKyAgICAgICAgICAgICAgICAiY3VzdG9tLXBhcnNlciI6IHRydWUsCisg
ICAgICAgICAgICAgICAgInNldHRpbmdzLWZsYWciOiAiY3NzTGVhZGluZ1RyaW1FbmFibGVkIgor
ICAgICAgICAgICAgfSwKKyAgICAgICAgICAgICJzcGVjaWZpY2F0aW9uIjogeworICAgICAgICAg
ICAgICAgICJjYXRlZ29yeSI6ICJjc3MtaW5saW5lIiwKKyAgICAgICAgICAgICAgICAidXJsIjog
Imh0dHBzOi8vd3d3LnczLm9yZy9UUi9jc3MtaW5saW5lLTMvI3RleHQtZWRnZXMiCisgICAgICAg
ICAgICB9CisgICAgICAgIH0sCiAgICAgICAgICJ0ZXh0LXJlbmRlcmluZyI6IHsKICAgICAgICAg
ICAgICJpbmhlcml0ZWQiOiB0cnVlLAogICAgICAgICAgICAgInZhbHVlcyI6IFsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW4KaW5kZXggOTIxYjI1NGI3Zjc5Li44YzdiZjM2NzYw
ZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUtleXdvcmRzLmluCkBAIC0xMDQwLDYgKzEw
NDAsMTUgQEAgbm8tcHVuY3R1YXRpb24KIGFudGlhbGlhc2VkCiBzdWJwaXhlbC1hbnRpYWxpYXNl
ZAogCisvLyB0ZXh0LWVkZ2UKK2xlYWRpbmcKKy8vIHRleHQKK2NhcAorZXgKKy8vIGlkZW9ncmFw
aGljCitpZGVvZ3JhcGhpYy1pbmsKKy8vIGFscGhhYmV0aWMKKwogLy8gdGV4dC1yZW5kZXJpbmcK
IC8vYXV0bwogb3B0aW1pemVTcGVlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0Nv
bXB1dGVkU3R5bGVFeHRyYWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NvbXB1dGVkU3R5
bGVFeHRyYWN0b3IuY3BwCmluZGV4IDA1OTNjNDIyNThhYi4uODQyZDVhYTgyZWVhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NvbXB1dGVkU3R5bGVFeHRyYWN0b3IuY3BwCkBAIC0xMzEyLDYg
KzEzMTIsMTQgQEAgc3RhdGljIFJlZjxDU1NWYWx1ZUxpc3Q+IHZhbHVlRm9yU2Nyb2xsU25hcEFs
aWdubWVudChjb25zdCBTY3JvbGxTbmFwQWxpZ24mIGFsaWcKICAgICByZXR1cm4gdmFsdWU7CiB9
CiAKK3N0YXRpYyBSZWY8Q1NTVmFsdWVMaXN0PiB2YWx1ZUZvclRleHRFZGdlKGNvbnN0IFRleHRF
ZGdlJiB0ZXh0RWRnZSkKK3sKKyAgICBhdXRvIHZhbHVlID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVT
cGFjZVNlcGFyYXRlZCgpOworICAgIHZhbHVlLT5hcHBlbmQoQ1NTUHJpbWl0aXZlVmFsdWU6OmNy
ZWF0ZSh0ZXh0RWRnZS5vdmVyKSk7CisgICAgdmFsdWUtPmFwcGVuZChDU1NQcmltaXRpdmVWYWx1
ZTo6Y3JlYXRlKHRleHRFZGdlLnVuZGVyKSk7CisgICAgcmV0dXJuIHZhbHVlOworfQorCiBzdGF0
aWMgUmVmPENTU1ZhbHVlPiB3aWxsQ2hhbmdlUHJvcGVydHlWYWx1ZShjb25zdCBXaWxsQ2hhbmdl
RGF0YSogd2lsbENoYW5nZURhdGEpCiB7CiAgICAgYXV0byYgY3NzVmFsdWVQb29sID0gQ1NTVmFs
dWVQb29sOjpzaW5nbGV0b24oKTsKQEAgLTQwODEsNiArNDA4OSw4IEBAIFJlZlB0cjxDU1NWYWx1
ZT4gQ29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6dmFsdWVGb3JQcm9wZXJ0eUluU3R5bGUoY29uc3Qg
UmVuZGVyU3R5CiAgICAgICAgIHJldHVybiB2YWx1ZUZvclNjcm9sbFNuYXBUeXBlKHN0eWxlLnNj
cm9sbFNuYXBUeXBlKCkpOwogICAgIGNhc2UgQ1NTUHJvcGVydHlPdmVyZmxvd0FuY2hvcjoKICAg
ICAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbC5jcmVhdGVWYWx1ZShzdHlsZS5vdmVyZmxvd0FuY2hv
cigpKTsKKyAgICBjYXNlIENTU1Byb3BlcnR5VGV4dEVkZ2U6CisgICAgICAgIHJldHVybiB2YWx1
ZUZvclRleHRFZGdlKHN0eWxlLnRleHRFZGdlKCkpOwogCiAjaWYgRU5BQkxFKEFQUExFX1BBWSkK
ICAgICBjYXNlIENTU1Byb3BlcnR5QXBwbGVQYXlCdXR0b25TdHlsZToKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmNwcAppbmRl
eCBhZTMyNWU4OGQxMDMuLmUwODU2M2Y4ZjFlMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXJIZWxwZXJzLmNwcApAQCAtNjYwNiw2ICs2
NjA2LDI3IEBAIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZVNjcm9sbFNuYXBUeXBlKENTU1BhcnNl
clRva2VuUmFuZ2UmIHJhbmdlKQogICAgIHJldHVybiB0eXBlVmFsdWU7CiB9CiAKK1JlZlB0cjxD
U1NWYWx1ZT4gY29uc3VtZVRleHRFZGdlKENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlKQorewor
ICAgIGF1dG8gdHlwZVZhbHVlID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgp
OworICAgIGlmIChyYW5nZS5wZWVrKCkuaWQoKSA9PSBDU1NWYWx1ZUxlYWRpbmcpIHsKKyAgICAg
ICAgdHlwZVZhbHVlLT5hcHBlbmQoY29uc3VtZUlkZW50KHJhbmdlKS5yZWxlYXNlTm9uTnVsbCgp
KTsKKyAgICAgICAgcmV0dXJuIHR5cGVWYWx1ZTsKKyAgICB9CisKKyAgICBhdXRvIGZpcnN0R3Jv
dXBWYWx1ZSA9IGNvbnN1bWVJZGVudDxDU1NWYWx1ZVRleHQsIENTU1ZhbHVlQ2FwLCBDU1NWYWx1
ZUV4LCBDU1NWYWx1ZUlkZW9ncmFwaGljLCBDU1NWYWx1ZUlkZW9ncmFwaGljSW5rPihyYW5nZSk7
CisgICAgaWYgKCFmaXJzdEdyb3VwVmFsdWUpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAg
IHR5cGVWYWx1ZS0+YXBwZW5kKGZpcnN0R3JvdXBWYWx1ZS5yZWxlYXNlTm9uTnVsbCgpKTsKKwor
ICAgIGF1dG8gc2Vjb25kR3JvdXBWYWx1ZSA9IGNvbnN1bWVJZGVudDxDU1NWYWx1ZVRleHQsIENT
U1ZhbHVlQWxwaGFiZXRpYywgQ1NTVmFsdWVJZGVvZ3JhcGhpYywgQ1NTVmFsdWVJZGVvZ3JhcGhp
Y0luaz4ocmFuZ2UpOworICAgIGlmIChzZWNvbmRHcm91cFZhbHVlKQorICAgICAgICB0eXBlVmFs
dWUtPmFwcGVuZChzZWNvbmRHcm91cFZhbHVlLnJlbGVhc2VOb25OdWxsKCkpOworCisgICAgcmV0
dXJuIHR5cGVWYWx1ZTsKK30KKworICAgIAogUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lQm9yZGVy
UmFkaXVzQ29ybmVyKENTU1BhcnNlclRva2VuUmFuZ2UmIHJhbmdlLCBDU1NQYXJzZXJNb2RlIGNz
c1BhcnNlck1vZGUpCiB7CiAgICAgUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBwYXJzZWRWYWx1
ZTEgPSBjb25zdW1lTGVuZ3RoT3JQZXJjZW50KHJhbmdlLCBjc3NQYXJzZXJNb2RlLCBWYWx1ZVJh
bmdlOjpOb25OZWdhdGl2ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2Vy
L0NTU1Byb3BlcnR5UGFyc2VySGVscGVycy5oIGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9D
U1NQcm9wZXJ0eVBhcnNlckhlbHBlcnMuaAppbmRleCAwZmRmOWMwOGJjMTEuLmNlMWZjNDEyMjVj
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNl
ckhlbHBlcnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFy
c2VySGVscGVycy5oCkBAIC0yNzEsNiArMjcxLDcgQEAgUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1l
Q29udGVudChDU1NQYXJzZXJUb2tlblJhbmdlJiwgY29uc3QgQ1NTUGFyc2VyQ29udGV4dCYpOwog
UmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lUGVyc3BlY3RpdmUoQ1NTUGFyc2VyVG9rZW5SYW5nZSYs
IENTU1BhcnNlck1vZGUpOwogUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lU2Nyb2xsU25hcEFsaWdu
KENTU1BhcnNlclRva2VuUmFuZ2UmKTsKIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZVNjcm9sbFNu
YXBUeXBlKENTU1BhcnNlclRva2VuUmFuZ2UmKTsKK1JlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZVRl
eHRFZGdlKENTU1BhcnNlclRva2VuUmFuZ2UmKTsKIFJlZlB0cjxDU1NWYWx1ZT4gY29uc3VtZUJv
cmRlclJhZGl1c0Nvcm5lcihDU1NQYXJzZXJUb2tlblJhbmdlJiwgQ1NTUGFyc2VyTW9kZSk7CiBi
b29sIGNvbnN1bWVSYWRpaShSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IGhvcml6b250YWxSYWRp
aVs0XSwgUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiB2ZXJ0aWNhbFJhZGlpWzRdLCBDU1NQYXJz
ZXJUb2tlblJhbmdlJiwgQ1NTUGFyc2VyTW9kZSwgYm9vbCB1c2VMZWdhY3lQYXJzaW5nKTsKIGVu
dW0gY2xhc3MgQ29uc3VtZVJheSB7IEluY2x1ZGUsIEV4Y2x1ZGUgfTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCmluZGV4IDJjZGQ0MzFhMmQ2Yy4u
NjExNDRhOTIxMDRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUv
UmVuZGVyU3R5bGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5k
ZXJTdHlsZS5jcHAKQEAgLTQ5LDYgKzQ5LDcgQEAKICNpbmNsdWRlICJTdHlsZVJlc29sdmVyLmgi
CiAjaW5jbHVkZSAiU3R5bGVTY3JvbGxTbmFwUG9pbnRzLmgiCiAjaW5jbHVkZSAiU3R5bGVTZWxm
QWxpZ25tZW50RGF0YS5oIgorI2luY2x1ZGUgIlN0eWxlVGV4dEVkZ2UuaCIKICNpbmNsdWRlICJT
dHlsZVRyZWVSZXNvbHZlci5oIgogI2luY2x1ZGUgIldpbGxDaGFuZ2VEYXRhLmgiCiAjaW5jbHVk
ZSA8d3RmL01hdGhFeHRyYXMuaD4KQEAgLTI4MDUsNiArMjgwNiwyMSBAQCBib29sIFJlbmRlclN0
eWxlOjpoYXNTbmFwUG9zaXRpb24oKSBjb25zdAogICAgIHJldHVybiBhbGlnbm1lbnQuYmxvY2tB
bGlnbiAhPSBTY3JvbGxTbmFwQXhpc0FsaWduVHlwZTo6Tm9uZSB8fCBhbGlnbm1lbnQuaW5saW5l
QWxpZ24gIT0gU2Nyb2xsU25hcEF4aXNBbGlnblR5cGU6Ok5vbmU7CiB9CiAKK1RleHRFZGdlIFJl
bmRlclN0eWxlOjp0ZXh0RWRnZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fcmFyZUluaGVyaXRl
ZERhdGEtPnRleHRFZGdlOworfQorCit2b2lkIFJlbmRlclN0eWxlOjpzZXRUZXh0RWRnZShUZXh0
RWRnZSB0ZXh0RWRnZVZhbHVlKQoreworICAgIFNFVF9WQVIobV9yYXJlSW5oZXJpdGVkRGF0YSwg
dGV4dEVkZ2UsIHRleHRFZGdlVmFsdWUpOworfQorCitUZXh0RWRnZSBSZW5kZXJTdHlsZTo6aW5p
dGlhbFRleHRFZGdlKCkKK3sKKyAgICByZXR1cm4geyBUZXh0RWRnZVR5cGU6OkxlYWRpbmcsIFRl
eHRFZGdlVHlwZTo6TGVhZGluZyB9OworfQorCiBib29sIFJlbmRlclN0eWxlOjpoYXNSZWZlcmVu
Y2VGaWx0ZXJPbmx5KCkgY29uc3QKIHsKICAgICBpZiAoIWhhc0ZpbHRlcigpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmggYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaAppbmRleCAzY2Q0NzQzOTNlNjMu
LmVjZWZjMjU2MjVkYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxl
L1JlbmRlclN0eWxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRl
clN0eWxlLmgKQEAgLTEyNSw2ICsxMjUsOCBAQCBjbGFzcyBUcmFuc2Zvcm1hdGlvbk1hdHJpeDsK
IHN0cnVjdCBTY3JvbGxTbmFwQWxpZ247CiBzdHJ1Y3QgU2Nyb2xsU25hcFR5cGU7CiAKK3N0cnVj
dCBUZXh0RWRnZTsKKwogdXNpbmcgUHNldWRvU3R5bGVDYWNoZSA9IFZlY3RvcjxzdGQ6OnVuaXF1
ZV9wdHI8UmVuZGVyU3R5bGU+LCA0PjsKIAogdGVtcGxhdGU8dHlwZW5hbWUgVCwgdHlwZW5hbWUg
VT4gaW5saW5lIGJvb2wgY29tcGFyZUVxdWFsKGNvbnN0IFQmIHQsIGNvbnN0IFUmIHUpIHsgcmV0
dXJuIHQgPT0gc3RhdGljX2Nhc3Q8Y29uc3QgVCY+KHUpOyB9CkBAIC0zOTcsNiArMzk5LDcgQEAg
cHVibGljOgogICAgIFRleHRKdXN0aWZ5IHRleHRKdXN0aWZ5KCkgY29uc3QgeyByZXR1cm4gc3Rh
dGljX2Nhc3Q8VGV4dEp1c3RpZnk+KG1fcmFyZUluaGVyaXRlZERhdGEtPnRleHRKdXN0aWZ5KTsg
fQogCiAgICAgTGVhZGluZ1RyaW0gbGVhZGluZ1RyaW0oKSBjb25zdCB7IHJldHVybiBzdGF0aWNf
Y2FzdDxMZWFkaW5nVHJpbT4obV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+bGVhZGluZ1RyaW0pOyB9
CisgICAgVGV4dEVkZ2UgdGV4dEVkZ2UoKSBjb25zdDsKIAogICAgIGNvbnN0IExlbmd0aCYgd29y
ZFNwYWNpbmcoKSBjb25zdDsKICAgICBmbG9hdCBsZXR0ZXJTcGFjaW5nKCkgY29uc3Q7CkBAIC0x
MDU2LDYgKzEwNTksNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRUZXh0SnVzdGlmeShUZXh0SnVz
dGlmeSB2KSB7IFNFVF9WQVIobV9yYXJlSW5oZXJpdGVkRGF0YSwgdGV4dEp1c3RpZnksIHN0YXRp
Y19jYXN0PHVuc2lnbmVkPih2KSk7IH0KIAogICAgIHZvaWQgc2V0TGVhZGluZ1RyaW0oTGVhZGlu
Z1RyaW0gdmFsdWUpIHsgU0VUX1ZBUihtX3JhcmVOb25Jbmhlcml0ZWREYXRhLCBsZWFkaW5nVHJp
bSwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHZhbHVlKSk7IH0KKyAgICB2b2lkIHNldFRleHRFZGdl
KFRleHRFZGdlKTsKIAogI2lmIEVOQUJMRShURVhUX0FVVE9TSVpJTkcpCiAgICAgdm9pZCBzZXRT
cGVjaWZpZWRMaW5lSGVpZ2h0KExlbmd0aCYmKTsKQEAgLTE2NzEsNiArMTY3NSw3IEBAIHB1Ymxp
YzoKICAgICBzdGF0aWMgTGVuZ3RoIGluaXRpYWxQYWRkaW5nKCkgeyByZXR1cm4gTGVuZ3RoKExl
bmd0aFR5cGU6OkZpeGVkKTsgfQogICAgIHN0YXRpYyBMZW5ndGggaW5pdGlhbFRleHRJbmRlbnQo
KSB7IHJldHVybiBMZW5ndGgoTGVuZ3RoVHlwZTo6Rml4ZWQpOyB9CiAgICAgc3RhdGljIExlYWRp
bmdUcmltIGluaXRpYWxMZWFkaW5nVHJpbSgpIHsgcmV0dXJuIExlYWRpbmdUcmltOjpOb3JtYWw7
IH0KKyAgICBzdGF0aWMgVGV4dEVkZ2UgaW5pdGlhbFRleHRFZGdlKCk7CiAgICAgc3RhdGljIExl
bmd0aCBpbml0aWFsWmVyb0xlbmd0aCgpIHsgcmV0dXJuIExlbmd0aChMZW5ndGhUeXBlOjpGaXhl
ZCk7IH0KICAgICBzdGF0aWMgTGVuZ3RoIGluaXRpYWxPbmVMZW5ndGgoKSB7IHJldHVybiBMZW5n
dGgoMSwgTGVuZ3RoVHlwZTo6Rml4ZWQpOyB9CiAgICAgc3RhdGljIHVuc2lnbmVkIHNob3J0IGlu
aXRpYWxXaWRvd3MoKSB7IHJldHVybiAyOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuY3BwIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcAppbmRleCBhYjFjMjZhZGMy
YmEuLjYzMjNlOTA4MzNmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvUmVuZGVyU3R5bGVDb25zdGFudHMuY3BwCkBAIC0xMTYwLDYgKzExNjAsMjAgQEAg
VGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiB0cywgTGVhZGluZ1RyaW0gbGVhZGlu
Z1RyaW0pCiAgICAgcmV0dXJuIHRzOwogfQogCitUZXh0U3RyZWFtJiBvcGVyYXRvcjw8KFRleHRT
dHJlYW0mIHRzLCBUZXh0RWRnZVR5cGUgdGV4dEVkZ2VUeXBlKQoreworICAgIHN3aXRjaCAodGV4
dEVkZ2VUeXBlKSB7CisgICAgY2FzZSBUZXh0RWRnZVR5cGU6OkxlYWRpbmc6IHRzIDw8ICJoYWxm
LWxlYWRpbmciOyBicmVhazsKKyAgICBjYXNlIFRleHRFZGdlVHlwZTo6VGV4dDogdHMgPDwgInRl
eHQtb3Zlci91bmRlciBiYXNlbGluZSI7IGJyZWFrOworICAgIGNhc2UgVGV4dEVkZ2VUeXBlOjpD
YXBIZWlnaHQ6IHRzIDw8ICJjYXAtaGVpZ2h0IGJhc2VsaW5lIjsgYnJlYWs7CisgICAgY2FzZSBU
ZXh0RWRnZVR5cGU6OkV4SGVpZ2h0OiB0cyA8PCAieC1oZWlnaHQgYmFzZWxpbmUiOyBicmVhazsK
KyAgICBjYXNlIFRleHRFZGdlVHlwZTo6QWxwaGFiZXRpYzogdHMgPDwgImFscGhhYmV0aWMgYmFz
ZWxpbmUiOyBicmVhazsKKyAgICBjYXNlIFRleHRFZGdlVHlwZTo6Q0pLSWRlb2dyYXBoaWM6IHRz
IDw8ICJpZGVvZ3JhcGhpYy1vdmVyIGJhc2VsaW5lIjsgYnJlYWs7CisgICAgY2FzZSBUZXh0RWRn
ZVR5cGU6OkNKS0lkZW9ncmFwaGljSW5rOiB0cyA8PCAiaWRlb2dyYXBoaWMtaW5rLW92ZXIvaW5r
LXVuZGVyIGJhc2VsaW5lIjsgYnJlYWs7CisgICAgfQorICAgIHJldHVybiB0czsKK30KKwogVGV4
dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiB0cywgVGV4dFpvb20gem9vbSkKIHsKICAg
ICBzd2l0Y2ggKHpvb20pIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0
eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgKaW5kZXggNGYyZWExMmUxNjQ4Li4xODU3NWQxZDQ4
ODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHls
ZUNvbnN0YW50cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZUNvbnN0YW50cy5oCkBAIC03ODgsNiArNzg4LDE2IEBAIGVudW0gY2xhc3MgTGVhZGluZ1Ry
aW0gOiB1aW50OF90IHsKICAgICBCb3RoCiB9OwogCitlbnVtIGNsYXNzIFRleHRFZGdlVHlwZSA6
IHVpbnQ4X3QgeworICAgIExlYWRpbmcsCisgICAgVGV4dCwKKyAgICBDYXBIZWlnaHQsCisgICAg
RXhIZWlnaHQsCisgICAgQWxwaGFiZXRpYywKKyAgICBDSktJZGVvZ3JhcGhpYywKKyAgICBDSktJ
ZGVvZ3JhcGhpY0luaworfTsKKwogZW51bSBjbGFzcyBUZXh0Wm9vbSA6IHVpbnQ4X3QgewogICAg
IE5vcm1hbCwKICAgICBSZXNldApAQCAtMTMyNCw2ICsxMzM0LDcgQEAgV1RGOjpUZXh0U3RyZWFt
JiBvcGVyYXRvcjw8KFdURjo6VGV4dFN0cmVhbSYsIFRleHRTZWN1cml0eSk7CiBXVEY6OlRleHRT
dHJlYW0mIG9wZXJhdG9yPDwoV1RGOjpUZXh0U3RyZWFtJiwgVGV4dFRyYW5zZm9ybSk7CiBXVEY6
OlRleHRTdHJlYW0mIG9wZXJhdG9yPDwoV1RGOjpUZXh0U3RyZWFtJiwgVGV4dFVuZGVybGluZVBv
c2l0aW9uKTsKIFdURjo6VGV4dFN0cmVhbSYgb3BlcmF0b3I8PChXVEY6OlRleHRTdHJlYW0mLCBM
ZWFkaW5nVHJpbSk7CitXVEY6OlRleHRTdHJlYW0mIG9wZXJhdG9yPDwoV1RGOjpUZXh0U3RyZWFt
JiwgVGV4dEVkZ2VUeXBlKTsKIFdURjo6VGV4dFN0cmVhbSYgb3BlcmF0b3I8PChXVEY6OlRleHRT
dHJlYW0mLCBUZXh0Wm9vbSk7CiBXVEY6OlRleHRTdHJlYW0mIG9wZXJhdG9yPDwoV1RGOjpUZXh0
U3RyZWFtJiwgVHJhbnNmb3JtQm94KTsKIFdURjo6VGV4dFN0cmVhbSYgb3BlcmF0b3I8PChXVEY6
OlRleHRTdHJlYW0mLCBUcmFuc2Zvcm1TdHlsZTNEKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmNwcAppbmRleCBh
YmEyMTllM2UxYjcuLmEyZGFlNGVjZmE5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmNwcApAQCAtNDcsNiAr
NDcsNyBAQCBzdHJ1Y3QgR3JlYXRlclRoYW5PclNhbWVTaXplQXNTdHlsZVJhcmVJbmhlcml0ZWRE
YXRhIDogcHVibGljIFJlZkNvdW50ZWQ8R3JlYXRlcgogICAgIExlbmd0aCBsZW5ndGhzWzJdOwog
ICAgIGZsb2F0IHNlY29uZEZsb2F0OwogICAgIFRleHRVbmRlcmxpbmVPZmZzZXQgb2Zmc2V0Owor
ICAgIFRleHRFZGdlIHRleHRFZGdlOwogICAgIHZvaWQqIGN1c3RvbVByb3BlcnR5RGF0YVJlZnNb
MV07CiAgICAgdW5zaWduZWQgYml0ZmllbGRzWzddOwogICAgIHNob3J0IHBhZ2VkTWVkaWFTaG9y
dHNbMl07CkBAIC05MCw2ICs5MSw3IEBAIFN0eWxlUmFyZUluaGVyaXRlZERhdGE6OlN0eWxlUmFy
ZUluaGVyaXRlZERhdGEoKQogICAgICwgaW5kZW50KFJlbmRlclN0eWxlOjppbml0aWFsVGV4dElu
ZGVudCgpKQogICAgICwgZWZmZWN0aXZlWm9vbShSZW5kZXJTdHlsZTo6aW5pdGlhbFpvb20oKSkK
ICAgICAsIHRleHRVbmRlcmxpbmVPZmZzZXQoUmVuZGVyU3R5bGU6OmluaXRpYWxUZXh0VW5kZXJs
aW5lT2Zmc2V0KCkpCisgICAgLCB0ZXh0RWRnZShSZW5kZXJTdHlsZTo6aW5pdGlhbFRleHRFZGdl
KCkpCiAgICAgLCBtaXRlckxpbWl0KFJlbmRlclN0eWxlOjppbml0aWFsU3Ryb2tlTWl0ZXJMaW1p
dCgpKQogICAgICwgY3VzdG9tUHJvcGVydGllcyhTdHlsZUN1c3RvbVByb3BlcnR5RGF0YTo6Y3Jl
YXRlKCkpCiAgICAgLCB3aWRvd3MoUmVuZGVyU3R5bGU6OmluaXRpYWxXaWRvd3MoKSkKQEAgLTE4
Niw2ICsxODgsNyBAQCBpbmxpbmUgU3R5bGVSYXJlSW5oZXJpdGVkRGF0YTo6U3R5bGVSYXJlSW5o
ZXJpdGVkRGF0YShjb25zdCBTdHlsZVJhcmVJbmhlcml0ZWREYQogICAgICwgaW5kZW50KG8uaW5k
ZW50KQogICAgICwgZWZmZWN0aXZlWm9vbShvLmVmZmVjdGl2ZVpvb20pCiAgICAgLCB0ZXh0VW5k
ZXJsaW5lT2Zmc2V0KG8udGV4dFVuZGVybGluZU9mZnNldCkKKyAgICAsIHRleHRFZGdlKG8udGV4
dEVkZ2UpCiAgICAgLCBtaXRlckxpbWl0KG8ubWl0ZXJMaW1pdCkKICAgICAsIGN1c3RvbVByb3Bl
cnRpZXMoby5jdXN0b21Qcm9wZXJ0aWVzKQogICAgICwgd2lkb3dzKG8ud2lkb3dzKQpAQCAtMjk3
LDYgKzMwMCw3IEBAIGJvb2wgU3R5bGVSYXJlSW5oZXJpdGVkRGF0YTo6b3BlcmF0b3I9PShjb25z
dCBTdHlsZVJhcmVJbmhlcml0ZWREYXRhJiBvKSBjb25zdAogICAgICAgICAmJiBpbmRlbnQgPT0g
by5pbmRlbnQKICAgICAgICAgJiYgZWZmZWN0aXZlWm9vbSA9PSBvLmVmZmVjdGl2ZVpvb20KICAg
ICAgICAgJiYgdGV4dFVuZGVybGluZU9mZnNldCA9PSBvLnRleHRVbmRlcmxpbmVPZmZzZXQKKyAg
ICAgICAgJiYgdGV4dEVkZ2UgPT0gby50ZXh0RWRnZQogICAgICAgICAmJiB3b3JkU3BhY2luZyA9
PSBvLndvcmRTcGFjaW5nCiAgICAgICAgICYmIG1pdGVyTGltaXQgPT0gby5taXRlckxpbWl0CiAg
ICAgICAgICYmIHdpZG93cyA9PSBvLndpZG93cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuaCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmgKaW5kZXggNDFhYWM2NThm
MTMwLi4xYzBiYWQ4ODVmNmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL1N0eWxlUmFyZUluaGVyaXRlZERhdGEuaApAQCAtMjgsNiArMjgsNyBAQAogI2lu
Y2x1ZGUgIlJlbmRlclN0eWxlQ29uc3RhbnRzLmgiCiAjaW5jbHVkZSAiU3R5bGVDb2xvci5oIgog
I2luY2x1ZGUgIlN0eWxlQ3VzdG9tUHJvcGVydHlEYXRhLmgiCisjaW5jbHVkZSAiU3R5bGVUZXh0
RWRnZS5oIgogI2luY2x1ZGUgIlRhYlNpemUuaCIKICNpbmNsdWRlICJUZXh0VW5kZXJsaW5lT2Zm
c2V0LmgiCiAjaW5jbHVkZSAiVG91Y2hBY3Rpb24uaCIKQEAgLTk2LDYgKzk3LDggQEAgcHVibGlj
OgogICAgIGZsb2F0IGVmZmVjdGl2ZVpvb207CiAKICAgICBUZXh0VW5kZXJsaW5lT2Zmc2V0IHRl
eHRVbmRlcmxpbmVPZmZzZXQ7CisKKyAgICBUZXh0RWRnZSB0ZXh0RWRnZTsKICAgICAKICAgICBM
ZW5ndGggd29yZFNwYWNpbmc7CiAgICAgZmxvYXQgbWl0ZXJMaW1pdDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVRleHRFZGdlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVUZXh0RWRnZS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMC4uODQ3NmFlOGM5MGM4Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlVGV4dEVkZ2UuaApAQCAtMCwwICsxLDQ0
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIyIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlICJSZW5kZXJTdHlsZUNv
bnN0YW50cy5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0cnVjdCBUZXh0RWRnZSB7Cisg
ICAgVGV4dEVkZ2VUeXBlIG92ZXIgeyBUZXh0RWRnZVR5cGU6OkxlYWRpbmcgfTsKKyAgICBUZXh0
RWRnZVR5cGUgdW5kZXIgeyBUZXh0RWRnZVR5cGU6OkxlYWRpbmcgfTsKK307CisKK2lubGluZSBi
b29sIG9wZXJhdG9yPT0oY29uc3QgVGV4dEVkZ2UmIGEsIGNvbnN0IFRleHRFZGdlJiBiKQorewor
ICAgIHJldHVybiBhLm92ZXIgPT0gYi5vdmVyICYmIGEudW5kZXIgPT0gYi51bmRlcjsKK30KKwor
aW5saW5lIGJvb2wgb3BlcmF0b3IhPShjb25zdCBUZXh0RWRnZSYgYSwgY29uc3QgVGV4dEVkZ2Um
IGIpIHsgcmV0dXJuICEoYSA9PSBiKTsgfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaCBiL1Nv
dXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCmluZGV4IGI2ZTNjYmEz
MmE5Yy4uOWEyODgxYmQ1OWIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHls
ZUJ1aWxkZXJDb252ZXJ0ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxk
ZXJDb252ZXJ0ZXIuaApAQCAtNjIsNiArNjIsNyBAQAogI2luY2x1ZGUgIlN0eWxlQnVpbGRlclN0
YXRlLmgiCiAjaW5jbHVkZSAiU3R5bGVHcmlkRGF0YS5oIgogI2luY2x1ZGUgIlN0eWxlU2Nyb2xs
U25hcFBvaW50cy5oIgorI2luY2x1ZGUgIlN0eWxlVGV4dEVkZ2UuaCIKICNpbmNsdWRlICJUYWJT
aXplLmgiCiAjaW5jbHVkZSAiVG91Y2hBY3Rpb24uaCIKICNpbmNsdWRlICJUcmFuc2Zvcm1GdW5j
dGlvbnMuaCIKQEAgLTExNSw2ICsxMTYsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIFRleHRVbmRl
cmxpbmVPZmZzZXQgY29udmVydFRleHRVbmRlcmxpbmVPZmZzZXQoQnVpbGRlclN0YXRlJiwgY29u
c3QgQ1NTVmFsdWUmKTsKICAgICBzdGF0aWMgVGV4dERlY29yYXRpb25UaGlja25lc3MgY29udmVy
dFRleHREZWNvcmF0aW9uVGhpY2tuZXNzKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7
CiAgICAgc3RhdGljIFJlZlB0cjxTdHlsZVJlZmxlY3Rpb24+IGNvbnZlcnRSZWZsZWN0aW9uKEJ1
aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVlJik7CisgICAgc3RhdGljIFRleHRFZGdlIGNvbnZl
cnRUZXh0RWRnZShCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyBJ
bnRTaXplIGNvbnZlcnRJbml0aWFsTGV0dGVyKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENTU1ZhbHVl
Jik7CiAgICAgc3RhdGljIGZsb2F0IGNvbnZlcnRUZXh0U3Ryb2tlV2lkdGgoQnVpbGRlclN0YXRl
JiwgY29uc3QgQ1NTVmFsdWUmKTsKICAgICBzdGF0aWMgT3B0aW9uU2V0PExpbmVCb3hDb250YWlu
PiBjb252ZXJ0TGluZUJveENvbnRhaW4oQnVpbGRlclN0YXRlJiwgY29uc3QgQ1NTVmFsdWUmKTsK
QEAgLTg0Miw2ICs4NDQsNTkgQEAgaW5saW5lIFJlZlB0cjxTdHlsZVJlZmxlY3Rpb24+IEJ1aWxk
ZXJDb252ZXJ0ZXI6OmNvbnZlcnRSZWZsZWN0aW9uKEJ1aWxkZXJTdGF0ZSYKICAgICByZXR1cm4g
cmVmbGVjdGlvbjsKIH0KIAoraW5saW5lIFRleHRFZGdlIEJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZl
cnRUZXh0RWRnZShCdWlsZGVyU3RhdGUmLCBjb25zdCBDU1NWYWx1ZSYgdmFsdWUpCit7CisgICAg
YXV0byYgdmFsdWVzID0gZG93bmNhc3Q8Q1NTVmFsdWVMaXN0Pih2YWx1ZSk7CisgICAgYXV0byYg
Zmlyc3RWYWx1ZSA9IGRvd25jYXN0PENTU1ByaW1pdGl2ZVZhbHVlPigqdmFsdWVzLml0ZW0oMCkp
OworCisgICAgYXV0byBvdmVyVmFsdWUgPSBbJl0geworICAgICAgICBzd2l0Y2ggKGZpcnN0VmFs
dWUudmFsdWVJRCgpKSB7CisgICAgICAgIGNhc2UgQ1NTVmFsdWVMZWFkaW5nOgorICAgICAgICAg
ICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6TGVhZGluZzsKKyAgICAgICAgY2FzZSBDU1NWYWx1ZVRl
eHQ6CisgICAgICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpUZXh0OworICAgICAgICBjYXNl
IENTU1ZhbHVlQ2FwOgorICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6Q2FwSGVpZ2h0
OworICAgICAgICBjYXNlIENTU1ZhbHVlRXg6CisgICAgICAgICAgICByZXR1cm4gVGV4dEVkZ2VU
eXBlOjpFeEhlaWdodDsKKyAgICAgICAgY2FzZSBDU1NWYWx1ZUlkZW9ncmFwaGljOgorICAgICAg
ICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6Q0pLSWRlb2dyYXBoaWM7CisgICAgICAgIGNhc2Ug
Q1NTVmFsdWVJZGVvZ3JhcGhpY0luazoKKyAgICAgICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6
OkNKS0lkZW9ncmFwaGljSW5rOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7CisgICAgICAgICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpMZWFkaW5n
OworICAgICAgICB9CisgICAgfTsKKworICAgIGF1dG8gdW5kZXJWYWx1ZSA9IFsmXSB7CisgICAg
ICAgIGlmIChmaXJzdFZhbHVlLnZhbHVlSUQoKSA9PSBDU1NWYWx1ZUxlYWRpbmcpCisgICAgICAg
ICAgICByZXR1cm4gVGV4dEVkZ2VUeXBlOjpMZWFkaW5nOworICAgICAgICBpZiAodmFsdWVzLmxl
bmd0aCgpID09IDEpIHsKKyAgICAgICAgICAgIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9jc3Mt
aW5saW5lLTMvI3RleHQtZWRnZXMKKyAgICAgICAgICAgIC8vICJJZiBvbmx5IG9uZSB2YWx1ZSBp
cyBzcGVjaWZpZWQsIGJvdGggZWRnZXMgYXJlIGFzc2lnbmVkIHRoYXQgc2FtZSBrZXl3b3JkIGlm
IHBvc3NpYmxlOyBlbHNlIHRleHQgaXMgYXNzdW1lZCBhcyB0aGUgbWlzc2luZyB2YWx1ZS4iCisg
ICAgICAgICAgICAvLyBGSVhNRTogRmlndXJlIG91dCB3aGF0ICJpZiBwb3NzaWJsZSIgbWVhbnMg
aGVyZS4KKyAgICAgICAgICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OlRleHQ7CisgICAgICAgIH0K
KworICAgICAgICBhdXRvJiBzZWNvbmRWYWx1ZSA9IGRvd25jYXN0PENTU1ByaW1pdGl2ZVZhbHVl
PigqdmFsdWVzLml0ZW0oMSkpOworICAgICAgICBzd2l0Y2ggKHNlY29uZFZhbHVlLnZhbHVlSUQo
KSkgeworICAgICAgICBjYXNlIENTU1ZhbHVlVGV4dDoKKyAgICAgICAgICAgIHJldHVybiBUZXh0
RWRnZVR5cGU6OlRleHQ7CisgICAgICAgIGNhc2UgQ1NTVmFsdWVBbHBoYWJldGljOgorICAgICAg
ICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6QWxwaGFiZXRpYzsKKyAgICAgICAgY2FzZSBDU1NW
YWx1ZUlkZW9ncmFwaGljOgorICAgICAgICAgICAgcmV0dXJuIFRleHRFZGdlVHlwZTo6Q0pLSWRl
b2dyYXBoaWM7CisgICAgICAgIGNhc2UgQ1NTVmFsdWVJZGVvZ3JhcGhpY0luazoKKyAgICAgICAg
ICAgIHJldHVybiBUZXh0RWRnZVR5cGU6OkNKS0lkZW9ncmFwaGljSW5rOworICAgICAgICBkZWZh
dWx0OgorICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgICAgICByZXR1
cm4gVGV4dEVkZ2VUeXBlOjpMZWFkaW5nOworICAgICAgICB9CisgICAgfTsKKyAgICByZXR1cm4g
eyBvdmVyVmFsdWUoKSwgdW5kZXJWYWx1ZSgpIH07Cit9CisKIGlubGluZSBJbnRTaXplIEJ1aWxk
ZXJDb252ZXJ0ZXI6OmNvbnZlcnRJbml0aWFsTGV0dGVyKEJ1aWxkZXJTdGF0ZSYsIGNvbnN0IENT
U1ZhbHVlJiB2YWx1ZSkKIHsKICAgICBhdXRvJiBwcmltaXRpdmVWYWx1ZSA9IGRvd25jYXN0PENT
U1ByaW1pdGl2ZVZhbHVlPih2YWx1ZSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Rl
eHQvdGV4dC1lZGdlLXByb3BlcnR5LXBhcnNpbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
ZmFzdC90ZXh0L3RleHQtZWRnZS1wcm9wZXJ0eS1wYXJzaW5nLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmQ5YjVlNTVhMmFhOAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC90ZXh0LWVkZ2UtcHJvcGVydHktcGFyc2lu
Zy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1MSBAQAorVGVzdCBwYXJzaW5nIG9mIHRoZSBDU1Mg
dGV4dC1lZGdlIHByb3BlcnR5LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFT
UyB0ZXN0KCJ0ZXh0LWVkZ2U6IGxlYWRpbmciKSBpcyAibGVhZGluZyIKK1BBU1MgdGVzdCgidGV4
dC1lZGdlOiB0ZXh0IikgaXMgInRleHQiCitQQVNTIHRlc3QoInRleHQtZWRnZTogY2FwIikgaXMg
ImNhcCIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBleCIpIGlzICJleCIKK1BBU1MgdGVzdCgidGV4
dC1lZGdlOiBpZGVvZ3JhcGhpYyIpIGlzICJpZGVvZ3JhcGhpYyIKK1BBU1MgdGVzdCgidGV4dC1l
ZGdlOiBpZGVvZ3JhcGhpYy1pbmsiKSBpcyAiaWRlb2dyYXBoaWMtaW5rIgorUEFTUyB0ZXN0KCJ0
ZXh0LWVkZ2U6IGFscGhhYmV0aWMiKSBpcyAiIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IHRleHQg
dGV4dCIpIGlzICJ0ZXh0IHRleHQiCitQQVNTIHRlc3QoInRleHQtZWRnZTogdGV4dCBhbHBoYWJl
dGljIikgaXMgInRleHQgYWxwaGFiZXRpYyIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiB0ZXh0IGlk
ZW9ncmFwaGljIikgaXMgInRleHQgaWRlb2dyYXBoaWMiCitQQVNTIHRlc3QoInRleHQtZWRnZTog
dGV4dCBpZGVvZ3JhcGhpYy1pbmsiKSBpcyAidGV4dCBpZGVvZ3JhcGhpYy1pbmsiCitQQVNTIHRl
c3QoInRleHQtZWRnZTogY2FwIHRleHQiKSBpcyAiY2FwIHRleHQiCitQQVNTIHRlc3QoInRleHQt
ZWRnZTogY2FwIGFscGhhYmV0aWMiKSBpcyAiY2FwIGFscGhhYmV0aWMiCitQQVNTIHRlc3QoInRl
eHQtZWRnZTogY2FwIGlkZW9ncmFwaGljIikgaXMgImNhcCBpZGVvZ3JhcGhpYyIKK1BBU1MgdGVz
dCgidGV4dC1lZGdlOiBjYXAgaWRlb2dyYXBoaWMtaW5rIikgaXMgImNhcCBpZGVvZ3JhcGhpYy1p
bmsiCitQQVNTIHRlc3QoInRleHQtZWRnZTogZXggdGV4dCIpIGlzICJleCB0ZXh0IgorUEFTUyB0
ZXN0KCJ0ZXh0LWVkZ2U6IGV4IGFscGhhYmV0aWMiKSBpcyAiZXggYWxwaGFiZXRpYyIKK1BBU1Mg
dGVzdCgidGV4dC1lZGdlOiBleCBpZGVvZ3JhcGhpYyIpIGlzICJleCBpZGVvZ3JhcGhpYyIKK1BB
U1MgdGVzdCgidGV4dC1lZGdlOiBleCBpZGVvZ3JhcGhpYy1pbmsiKSBpcyAiZXggaWRlb2dyYXBo
aWMtaW5rIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGlkZW9ncmFwaGljIHRleHQiKSBpcyAiaWRl
b2dyYXBoaWMgdGV4dCIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBpZGVvZ3JhcGhpYyBhbHBoYWJl
dGljIikgaXMgImlkZW9ncmFwaGljIGFscGhhYmV0aWMiCitQQVNTIHRlc3QoInRleHQtZWRnZTog
aWRlb2dyYXBoaWMgaWRlb2dyYXBoaWMiKSBpcyAiaWRlb2dyYXBoaWMgaWRlb2dyYXBoaWMiCitQ
QVNTIHRlc3QoInRleHQtZWRnZTogaWRlb2dyYXBoaWMgaWRlb2dyYXBoaWMtaW5rIikgaXMgImlk
ZW9ncmFwaGljIGlkZW9ncmFwaGljLWluayIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBpZGVvZ3Jh
cGhpYy1pbmsgdGV4dCIpIGlzICJpZGVvZ3JhcGhpYy1pbmsgdGV4dCIKK1BBU1MgdGVzdCgidGV4
dC1lZGdlOiBpZGVvZ3JhcGhpYy1pbmsgYWxwaGFiZXRpYyIpIGlzICJpZGVvZ3JhcGhpYy1pbmsg
YWxwaGFiZXRpYyIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBpZGVvZ3JhcGhpYy1pbmsgaWRlb2dy
YXBoaWMiKSBpcyAiaWRlb2dyYXBoaWMtaW5rIGlkZW9ncmFwaGljIgorUEFTUyB0ZXN0KCJ0ZXh0
LWVkZ2U6IGlkZW9ncmFwaGljLWluayBpZGVvZ3JhcGhpYy1pbmsiKSBpcyAiaWRlb2dyYXBoaWMt
aW5rIGlkZW9ncmFwaGljLWluayIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBsZWFkaW5nIGxlYWRp
bmciKSBpcyAiIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGxlYWRpbmcgdGV4dCIpIGlzICIiCitQ
QVNTIHRlc3QoInRleHQtZWRnZTogbGVhZGluZyBjYXAiKSBpcyAiIgorUEFTUyB0ZXN0KCJ0ZXh0
LWVkZ2U6IGxlYWRpbmcgZXgiKSBpcyAiIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGxlYWRpbmcg
aWRlb2dyYXBoaWMiKSBpcyAiIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGxlYWRpbmcgaWRlb2dy
YXBoaWMtaW5rIikgaXMgIiIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiB0ZXh0IGxlYWRpbmciKSBp
cyAiIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGNhcCBsZWFkaW5nIikgaXMgIiIKK1BBU1MgdGVz
dCgidGV4dC1lZGdlOiBleCBsZWFkaW5nIikgaXMgIiIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBp
ZGVvZ3JhcGhpYyBsZWFkaW5nIikgaXMgIiIKK1BBU1MgdGVzdCgidGV4dC1lZGdlOiBpZGVvZ3Jh
cGhpYy1pbmsgbGVhZGluZyIpIGlzICIiCitQQVNTIHRlc3QoInRleHQtZWRnZTogdGV4dCBjYXAi
KSBpcyAiIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IHRleHQgZXgiKSBpcyAiIgorUEFTUyB0ZXN0
KCJ0ZXh0LWVkZ2U6IGFscGhhYmV0aWMiKSBpcyAiIgorUEFTUyB0ZXN0KCJ0ZXh0LWVkZ2U6IGFs
cGhhYmV0aWMgdGV4dCIpIGlzICIiCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisK
K1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3RleHQt
ZWRnZS1wcm9wZXJ0eS1wYXJzaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdGV4dC1l
ZGdlLXByb3BlcnR5LXBhcnNpbmcuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAuLjM3MjU0N2FjNjc5YwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvdGV4dC90ZXh0LWVkZ2UtcHJvcGVydHktcGFyc2luZy5odG1sCkBAIC0wLDAgKzEsNzEgQEAK
KzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgor
PGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Nj
cmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCdUZXN0IHBhcnNp
bmcgb2YgdGhlIENTUyB0ZXh0LWVkZ2UgcHJvcGVydHkuJyk7CisKK2Z1bmN0aW9uIHRlc3QoZGVj
bGFyYXRpb24pIHsKKyAgICB2YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7
CisgICAgZGl2LnNldEF0dHJpYnV0ZSgic3R5bGUiLCBkZWNsYXJhdGlvbik7CisgICAgcmV0dXJu
IGRpdi5zdHlsZS50ZXh0RWRnZTsKK30KKworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0
ZXh0LWVkZ2U6IGxlYWRpbmciKScsICJsZWFkaW5nIik7CisKK3Nob3VsZEJlRXF1YWxUb1N0cmlu
ZygndGVzdCgidGV4dC1lZGdlOiB0ZXh0IiknLCAidGV4dCIpOworc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGNhcCIpJywgImNhcCIpOworc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGV4IiknLCAiZXgiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmlu
ZygndGVzdCgidGV4dC1lZGdlOiBpZGVvZ3JhcGhpYyIpJywgImlkZW9ncmFwaGljIik7CitzaG91
bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogaWRlb2dyYXBoaWMtaW5rIiknLCAi
aWRlb2dyYXBoaWMtaW5rIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRn
ZTogYWxwaGFiZXRpYyIpJywgIiIpOworCitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRl
eHQtZWRnZTogdGV4dCB0ZXh0IiknLCAidGV4dCB0ZXh0Iik7CitzaG91bGRCZUVxdWFsVG9TdHJp
bmcoJ3Rlc3QoInRleHQtZWRnZTogdGV4dCBhbHBoYWJldGljIiknLCAidGV4dCBhbHBoYWJldGlj
Iik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogdGV4dCBpZGVvZ3Jh
cGhpYyIpJywgInRleHQgaWRlb2dyYXBoaWMiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVz
dCgidGV4dC1lZGdlOiB0ZXh0IGlkZW9ncmFwaGljLWluayIpJywgInRleHQgaWRlb2dyYXBoaWMt
aW5rIik7CisKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBjYXAgdGV4
dCIpJywgImNhcCB0ZXh0Iik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRn
ZTogY2FwIGFscGhhYmV0aWMiKScsICJjYXAgYWxwaGFiZXRpYyIpOworc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGNhcCBpZGVvZ3JhcGhpYyIpJywgImNhcCBpZGVvZ3Jh
cGhpYyIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGNhcCBpZGVv
Z3JhcGhpYy1pbmsiKScsICJjYXAgaWRlb2dyYXBoaWMtaW5rIik7CisKK3Nob3VsZEJlRXF1YWxU
b1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBleCB0ZXh0IiknLCAiZXggdGV4dCIpOworc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGV4IGFscGhhYmV0aWMiKScsICJleCBh
bHBoYWJldGljIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogZXgg
aWRlb2dyYXBoaWMiKScsICJleCBpZGVvZ3JhcGhpYyIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCd0ZXN0KCJ0ZXh0LWVkZ2U6IGV4IGlkZW9ncmFwaGljLWluayIpJywgImV4IGlkZW9ncmFwaGlj
LWluayIpOworCitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogaWRlb2dy
YXBoaWMgdGV4dCIpJywgImlkZW9ncmFwaGljIHRleHQiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmlu
ZygndGVzdCgidGV4dC1lZGdlOiBpZGVvZ3JhcGhpYyBhbHBoYWJldGljIiknLCAiaWRlb2dyYXBo
aWMgYWxwaGFiZXRpYyIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6
IGlkZW9ncmFwaGljIGlkZW9ncmFwaGljIiknLCAiaWRlb2dyYXBoaWMgaWRlb2dyYXBoaWMiKTsK
K3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBpZGVvZ3JhcGhpYyBpZGVv
Z3JhcGhpYy1pbmsiKScsICJpZGVvZ3JhcGhpYyBpZGVvZ3JhcGhpYy1pbmsiKTsKKworc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGlkZW9ncmFwaGljLWluayB0ZXh0Iikn
LCAiaWRlb2dyYXBoaWMtaW5rIHRleHQiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgi
dGV4dC1lZGdlOiBpZGVvZ3JhcGhpYy1pbmsgYWxwaGFiZXRpYyIpJywgImlkZW9ncmFwaGljLWlu
ayBhbHBoYWJldGljIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTog
aWRlb2dyYXBoaWMtaW5rIGlkZW9ncmFwaGljIiknLCAiaWRlb2dyYXBoaWMtaW5rIGlkZW9ncmFw
aGljIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogaWRlb2dyYXBo
aWMtaW5rIGlkZW9ncmFwaGljLWluayIpJywgImlkZW9ncmFwaGljLWluayBpZGVvZ3JhcGhpYy1p
bmsiKTsKKworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IGxlYWRpbmcg
bGVhZGluZyIpJywgIiIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6
IGxlYWRpbmcgdGV4dCIpJywgIiIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0
LWVkZ2U6IGxlYWRpbmcgY2FwIiknLCAiIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3Qo
InRleHQtZWRnZTogbGVhZGluZyBleCIpJywgIiIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0
ZXN0KCJ0ZXh0LWVkZ2U6IGxlYWRpbmcgaWRlb2dyYXBoaWMiKScsICIiKTsKK3Nob3VsZEJlRXF1
YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBsZWFkaW5nIGlkZW9ncmFwaGljLWluayIpJywg
IiIpOworCitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogdGV4dCBsZWFk
aW5nIiknLCAiIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogY2Fw
IGxlYWRpbmciKScsICIiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdl
OiBleCBsZWFkaW5nIiknLCAiIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQt
ZWRnZTogaWRlb2dyYXBoaWMgbGVhZGluZyIpJywgIiIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCd0ZXN0KCJ0ZXh0LWVkZ2U6IGlkZW9ncmFwaGljLWluayBsZWFkaW5nIiknLCAiIik7CisKK3No
b3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiB0ZXh0IGNhcCIpJywgIiIpOwor
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKCd0ZXN0KCJ0ZXh0LWVkZ2U6IHRleHQgZXgiKScsICIiKTsK
K3Nob3VsZEJlRXF1YWxUb1N0cmluZygndGVzdCgidGV4dC1lZGdlOiBhbHBoYWJldGljIiknLCAi
Iik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ3Rlc3QoInRleHQtZWRnZTogYWxwaGFiZXRpYyB0
ZXh0IiknLCAiIik7CisKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2Nh
ZGUvYWxsLXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxsLXByb3AtaW5pdGlh
bC14bWwtZXhwZWN0ZWQudHh0CmluZGV4IGEyNmM4YjNkMDg4Ny4uNTQ3OWFmNTFhODcyIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWNhc2NhZGUvYWxs
LXByb3AtaW5pdGlhbC14bWwtZXhwZWN0ZWQudHh0CkBAIC0zMDIsNiArMzAyLDcgQEAgUEFTUyB0
ZXh0LWRlY29yYXRpb24tbGluZQogUEFTUyB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbmsKIFBBU1Mg
dGV4dC1kZWNvcmF0aW9uLXN0eWxlCiBQQVNTIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3MKK1BB
U1MgdGV4dC1lZGdlCiBQQVNTIHRleHQtZW1waGFzaXMtY29sb3IKIFBBU1MgdGV4dC1lbXBoYXNp
cy1wb3NpdGlvbgogUEFTUyB0ZXh0LWVtcGhhc2lzLXN0eWxlCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3NvbS9jc3NvbS1nZXRQ
cm9wZXJ0eVZhbHVlLWNvbW1vbi1jaGVja3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3Nzb20vY3Nzb20tZ2V0UHJvcGVydHlW
YWx1ZS1jb21tb24tY2hlY2tzLWV4cGVjdGVkLnR4dAppbmRleCAzZjcwYmI2MzBhOGIuLjhkZDQ4
ZjVhMWY1MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9jc3MvY3Nzb20vY3Nzb20tZ2V0UHJvcGVydHlWYWx1ZS1jb21tb24tY2hlY2tzLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3NvbS9jc3NvbS1nZXRQcm9wZXJ0eVZhbHVlLWNvbW1vbi1jaGVja3MtZXhwZWN0
ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCiBGQUlMIEFsbCBwcm9wZXJ0aWVzIGNhbiBzZXJpYWxp
emUgJ2luaXRpYWwnIGFzc2VydF9hcnJheV9lcXVhbHM6IGxlbmd0aHMgZGlmZmVyLCBleHBlY3Rl
ZCBhcnJheSBbXSBsZW5ndGggMCwgZ290IFtbImdyaWQiLCAiIl0sIFsiZ3JpZC1hcmVhIiwgImlu
aXRpYWwgLyBpbml0aWFsIC8gaW5pdGlhbCAvIGluaXRpYWwiXSwgWyJncmlkLWNvbHVtbiIsICJp
bml0aWFsIC8gaW5pdGlhbCJdLCBbImdyaWQtcm93IiwgImluaXRpYWwgLyBpbml0aWFsIl0sIFsi
b2Zmc2V0IiwgIiJdXSBsZW5ndGggNQotRkFJTCBBbGwgcHJvcGVydGllcyAoZXhjZXB0ICdhbGwn
KSBjYW4gc2VyaWFsaXplIHRoZWlyIGluaXRpYWwgdmFsdWUgKGNvbXB1dGVkKSBhc3NlcnRfYXJy
YXlfZXF1YWxzOiBsZW5ndGhzIGRpZmZlciwgZXhwZWN0ZWQgYXJyYXkgW10gbGVuZ3RoIDAsIGdv
dCBbWyItd2Via2l0LWxpbmUtY2xhbXAiLCAibm9uZSJdLCBbIi13ZWJraXQtbWFzayIsICIiXSwg
WyItd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbi14IiwgIiJdLCBbIi13ZWJraXQtcGVyc3BlY3Rp
dmUtb3JpZ2luLXkiLCAiIl0sIFsiLXdlYmtpdC10ZXh0LXN0cm9rZSIsICIiXSwgWyItd2Via2l0
LXRyYW5zZm9ybS1vcmlnaW4teCIsICIiXSwgWyItd2Via2l0LXRyYW5zZm9ybS1vcmlnaW4teSIs
ICIiXSwgWyItd2Via2l0LXRyYW5zZm9ybS1vcmlnaW4teiIsICIiXSwgWyJncmlkIiwgIm5vbmUg
LyBub25lIC8gbm9uZSAvIHJvdyAvIGF1dG8gLyBhdXRvIl0sIFsiZ3JpZC10ZW1wbGF0ZSIsICJu
b25lIC8gbm9uZSAvIG5vbmUiXSwgWyJtYXJrZXIiLCAiIl0sIFsib3JwaGFucyIsICJhdXRvIl0s
IFsicGFnZSIsICIiXSwgWyJwZXJzcGVjdGl2ZS1vcmlnaW4teCIsICIiXSwgWyJwZXJzcGVjdGl2
ZS1vcmlnaW4teSIsICIiXSwgWyJzaXplIiwgIiJdLCBbInRyYW5zZm9ybS1vcmlnaW4teCIsICIi
XSwgWyJ0cmFuc2Zvcm0tb3JpZ2luLXkiLCAiIl0sIFsidHJhbnNmb3JtLW9yaWdpbi16IiwgIiJd
LCBbIndpZG93cyIsICJhdXRvIl1dIGxlbmd0aCAyMAorRkFJTCBBbGwgcHJvcGVydGllcyAoZXhj
ZXB0ICdhbGwnKSBjYW4gc2VyaWFsaXplIHRoZWlyIGluaXRpYWwgdmFsdWUgKGNvbXB1dGVkKSBh
c3NlcnRfYXJyYXlfZXF1YWxzOiBsZW5ndGhzIGRpZmZlciwgZXhwZWN0ZWQgYXJyYXkgW10gbGVu
Z3RoIDAsIGdvdCBbWyItd2Via2l0LWxpbmUtY2xhbXAiLCAibm9uZSJdLCBbIi13ZWJraXQtbWFz
ayIsICIiXSwgWyItd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbi14IiwgIiJdLCBbIi13ZWJraXQt
cGVyc3BlY3RpdmUtb3JpZ2luLXkiLCAiIl0sIFsiLXdlYmtpdC10ZXh0LXN0cm9rZSIsICIiXSwg
WyItd2Via2l0LXRyYW5zZm9ybS1vcmlnaW4teCIsICIiXSwgWyItd2Via2l0LXRyYW5zZm9ybS1v
cmlnaW4teSIsICIiXSwgWyItd2Via2l0LXRyYW5zZm9ybS1vcmlnaW4teiIsICIiXSwgWyJncmlk
IiwgIm5vbmUgLyBub25lIC8gbm9uZSAvIHJvdyAvIGF1dG8gLyBhdXRvIl0sIFsiZ3JpZC10ZW1w
bGF0ZSIsICJub25lIC8gbm9uZSAvIG5vbmUiXSwgWyJtYXJrZXIiLCAiIl0sIFsib3JwaGFucyIs
ICJhdXRvIl0sIFsicGFnZSIsICIiXSwgWyJwZXJzcGVjdGl2ZS1vcmlnaW4teCIsICIiXSwgWyJw
ZXJzcGVjdGl2ZS1vcmlnaW4teSIsICIiXSwgWyJzaXplIiwgIiJdLCBbInRleHQtZWRnZSIsICJs
ZWFkaW5nIGxlYWRpbmciXSwgWyJ0cmFuc2Zvcm0tb3JpZ2luLXgiLCAiIl0sIFsidHJhbnNmb3Jt
LW9yaWdpbi15IiwgIiJdLCBbInRyYW5zZm9ybS1vcmlnaW4teiIsICIiXSwgWyJ3aWRvd3MiLCAi
YXV0byJdXSBsZW5ndGggMjEKIFBBU1MgQWxsIHByb3BlcnRpZXMgKGV4Y2VwdCAnYWxsJykgY2Fu
IHNlcmlhbGl6ZSB0aGVpciBpbml0aWFsIHZhbHVlIChzcGVjaWZpZWQpCiBGQUlMIEFsbCBzaG9y
dGhhbmRzIGNhbiBzZXJpYWxpemUgdGhlaXIgbG9uZ2hhbmRzIHNldCB0byAnaW5pdGlhbCcgYXNz
ZXJ0X2FycmF5X2VxdWFsczogbGVuZ3RocyBkaWZmZXIsIGV4cGVjdGVkIGFycmF5IFtdIGxlbmd0
aCAwLCBnb3QgW1siYWxsIiwgIiJdLCBbImdyaWQiLCAiIl0sIFsiZ3JpZC1hcmVhIiwgImluaXRp
YWwgLyBpbml0aWFsIC8gaW5pdGlhbCAvIGluaXRpYWwiXSwgWyJncmlkLWNvbHVtbiIsICJpbml0
aWFsIC8gaW5pdGlhbCJdLCBbImdyaWQtcm93IiwgImluaXRpYWwgLyBpbml0aWFsIl0sIFsib2Zm
c2V0IiwgIiJdXSBsZW5ndGggNgogUEFTUyBBbGwgc2hvcnRoYW5kcyAoZXhjZXB0ICdhbGwnKSBj
YW4gc2VyaWFsaXplIHRoZWlyIGxvbmdoYW5kcyBzZXQgdG8gdGhlaXIgaW5pdGlhbCB2YWx1ZQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1jYXNjYWRlL2FsbC1wcm9wLWluaXRpYWwteG1sLWV4cGVj
dGVkLnR4dAppbmRleCA5YzdjNDBmODk3NWYuLjQxMjUzYzRlM2ZmMyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtY2FzY2FkZS9hbGwtcHJvcC1pbml0aWFsLXhtbC1leHBlY3RlZC50eHQKQEAg
LTMwMiw2ICszMDIsNyBAQCBQQVNTIHRleHQtZGVjb3JhdGlvbi1saW5lCiBQQVNTIHRleHQtZGVj
b3JhdGlvbi1za2lwLWluawogUEFTUyB0ZXh0LWRlY29yYXRpb24tc3R5bGUKIFBBU1MgdGV4dC1k
ZWNvcmF0aW9uLXRoaWNrbmVzcworUEFTUyB0ZXh0LWVkZ2UKIFBBU1MgdGV4dC1lbXBoYXNpcy1j
b2xvcgogUEFTUyB0ZXh0LWVtcGhhc2lzLXBvc2l0aW9uCiBQQVNTIHRleHQtZW1waGFzaXMtc3R5
bGUK
</data>

          </attachment>
      

    </bug>

</bugzilla>