<?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>234223</bug_id>
          
          <creation_ts>2021-12-12 22:53:18 -0800</creation_ts>
          <short_desc>[RISCV64] Add MacroAssemblerRISCV64 implementations for trivial floating-point-register operations</short_desc>
          <delta_ts>2022-03-11 05:33:46 -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>New Bugs</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>233992</dependson>
          <blocked>237775</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Zan Dobersek">zan</reporter>
          <assigned_to name="Zan Dobersek">zan</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>pmatos</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>xan.lopez</cc>
    
    <cc>ysuzuki</cc>
    
    <cc>zdobersek</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1823394</commentid>
    <comment_count>0</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2021-12-12 22:53:18 -0800</bug_when>
    <thetext>[RISCV64] Add MacroAssemblerRISCV64 implementations for trivial floating-point-register operations</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1823395</commentid>
    <comment_count>1</comment_count>
      <attachid>446971</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2021-12-12 22:54:34 -0800</bug_when>
    <thetext>Created attachment 446971
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1823399</commentid>
    <comment_count>2</comment_count>
      <attachid>446971</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-12-12 23:12:38 -0800</bug_when>
    <thetext>Comment on attachment 446971
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1823418</commentid>
    <comment_count>3</comment_count>
      <attachid>446973</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2021-12-13 00:21:05 -0800</bug_when>
    <thetext>Created attachment 446973
Patch

Also add the swap(FPRegisterID, FPRegisterID) implementation after #233992 landed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1823419</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-12-13 00:23:20 -0800</bug_when>
    <thetext>zan@falconsigh.net does not have committer permissions according to https://raw.githubusercontent.com/WebKit/WebKit/main/metadata/contributors.json.

Rejecting attachment 446973 from commit queue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1823437</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-12-13 01:26:04 -0800</bug_when>
    <thetext>Committed r286941 (245166@main): &lt;https://commits.webkit.org/245166@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 446973.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1823438</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-12-13 01:27:17 -0800</bug_when>
    <thetext>&lt;rdar://problem/86402051&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>446971</attachid>
            <date>2021-12-12 22:54:34 -0800</date>
            <delta_ts>2021-12-13 00:20:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-234223-20211213075433.patch</filename>
            <type>text/plain</type>
            <size>21874</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg2OTIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBk
ZmIxYTBjMDI2YWE2NTAwZjViZDU2ZjJiNzZlYmVmNTlkMWRhNzk0Li40NTdiMmQyYzEwYmFmODQy
N2QzZDVlZmJkYjM4MDFmNzI0MzQ4MDI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw2NyBAQAorMjAyMS0xMi0xMiAgWmFuIERvYmVyc2VrICA8emRvYmVyc2VrQGlnYWxpYS5j
b20+CisKKyAgICAgICAgW1JJU0NWNjRdIEFkZCBNYWNyb0Fzc2VtYmxlclJJU0NWNjQgaW1wbGVt
ZW50YXRpb25zIGZvciB0cml2aWFsIGZsb2F0aW5nLXBvaW50LXJlZ2lzdGVyIG9wZXJhdGlvbnMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNDIyMwor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBpbXBs
ZW1lbnRhdGlvbnMgZm9yIHRoZSB0cml2aWFsIGZsb2F0aW5nLXBvaW50IHJlZ2lzdGVyIG9wZXJh
dGlvbnMKKyAgICAgICAgaW4gTWFjcm9Bc3NlbWJsZXJSSVNDVjY0LiBUaGlzIGNvdmVycyBtb3Zl
cywgbG9hZHMsIHN0b3JlcywgYXJpdGhtZXRpY3MsCisgICAgICAgIGJhc2ljIGNvbnZlcnNpb24g
YW5kIHRydW5jYXRpb24gYW5kIHRoZSBsaWdodHdlaWdodCBsb2dpY2FsIG9wZXJhdGlvbnMuCisK
KyAgICAgICAgVGhlIHR3byBmbG9hdGluZy1wb2ludCB0ZW1wb3JhcnkgcmVnaXN0ZXJzIG5lZWRl
ZCBpbiBzb21lIG9wZXJhdGlvbnMgYXJlCisgICAgICAgIGxpc3RlZC4gVGhlIHJvdW5kaW5nIGFu
ZCBjb21wYXJpc29uIG9wZXJhdGlvbnMgYXJlIGxlZnQgZm9yIGxhdGVyIGFzCisgICAgICAgIHRo
ZXkgcmVxdWlyZSBhIG1vcmUgY29tcGxleCBpbXBsZW1lbnRhdGlvbiBkdWUgdG8gdGhlIG5lY2Vz
c2FyeSBtYW51YWwKKyAgICAgICAgTmFOIGNoZWNrcy4KKworICAgICAgICAqIGFzc2VtYmxlci9N
YWNyb0Fzc2VtYmxlclJJU0NWNjQuaDoKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVND
VjY0Ojptb3ZlWmVyb1RvRmxvYXQpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NW
NjQ6Om1vdmVaZXJvVG9Eb3VibGUpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NW
NjQ6Om1vdmVGbG9hdCk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6bW92
ZUZsb2F0VG8zMik6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6bW92ZTMy
VG9GbG9hdCk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6bW92ZURvdWJs
ZSk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6bW92ZURvdWJsZVRvNjQp
OgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6Om1vdmU2NFRvRG91YmxlKToK
KyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0Ojpsb2FkRmxvYXQpOgorICAgICAg
ICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6OmxvYWREb3VibGUpOgorICAgICAgICAoSlND
OjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6OnN0b3JlRmxvYXQpOgorICAgICAgICAoSlNDOjpNYWNy
b0Fzc2VtYmxlclJJU0NWNjQ6OnN0b3JlRG91YmxlKToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3Nl
bWJsZXJSSVNDVjY0OjphZGRGbG9hdCk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklT
Q1Y2NDo6YWRkRG91YmxlKToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0Ojpz
dWJGbG9hdCk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6c3ViRG91Ymxl
KToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0OjptdWxGbG9hdCk6CisgICAg
ICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6bXVsRG91YmxlKToKKyAgICAgICAgKEpT
Qzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0OjpkaXZGbG9hdCk6CisgICAgICAgIChKU0M6Ok1hY3Jv
QXNzZW1ibGVyUklTQ1Y2NDo6ZGl2RG91YmxlKToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJs
ZXJSSVNDVjY0OjpzcXJ0RmxvYXQpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NW
NjQ6OnNxcnREb3VibGUpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6OmFi
c0Zsb2F0KToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0OjphYnNEb3VibGUp
OgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6OmFuZEZsb2F0KToKKyAgICAg
ICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0OjphbmREb3VibGUpOgorICAgICAgICAoSlND
OjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6Om9yRmxvYXQpOgorICAgICAgICAoSlNDOjpNYWNyb0Fz
c2VtYmxlclJJU0NWNjQ6Om9yRG91YmxlKToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJS
SVNDVjY0OjpuZWdhdGVGbG9hdCk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2
NDo6bmVnYXRlRG91YmxlKToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0Ojpj
b252ZXJ0SW50MzJUb0Zsb2F0KToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0
Ojpjb252ZXJ0SW50MzJUb0RvdWJsZSk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklT
Q1Y2NDo6Y29udmVydEludDY0VG9GbG9hdCk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVy
UklTQ1Y2NDo6Y29udmVydEludDY0VG9Eb3VibGUpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2Vt
YmxlclJJU0NWNjQ6OmNvbnZlcnRVSW50NjRUb0Zsb2F0KToKKyAgICAgICAgKEpTQzo6TWFjcm9B
c3NlbWJsZXJSSVNDVjY0Ojpjb252ZXJ0VUludDY0VG9Eb3VibGUpOgorICAgICAgICAoSlNDOjpN
YWNyb0Fzc2VtYmxlclJJU0NWNjQ6OmNvbnZlcnRGbG9hdFRvRG91YmxlKToKKyAgICAgICAgKEpT
Qzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0Ojpjb252ZXJ0RG91YmxlVG9GbG9hdCk6CisgICAgICAg
IChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6dHJ1bmNhdGVGbG9hdFRvSW50MzIpOgorICAg
ICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6OnRydW5jYXRlRmxvYXRUb1VpbnQzMik6
CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6dHJ1bmNhdGVGbG9hdFRvSW50
NjQpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6OnRydW5jYXRlRmxvYXRU
b1VpbnQ2NCk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6dHJ1bmNhdGVE
b3VibGVUb0ludDMyKToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0Ojp0cnVu
Y2F0ZURvdWJsZVRvVWludDMyKToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0
Ojp0cnVuY2F0ZURvdWJsZVRvSW50NjQpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJ
U0NWNjQ6OnRydW5jYXRlRG91YmxlVG9VaW50NjQpOgorCiAyMDIxLTEyLTExICBTYWFtIEJhcmF0
aSAgPHNiYXJhdGlAYXBwbGUuY29tPgogCiAgICAgICAgIFRlYWNoIHRoZSBzYW1wbGluZyBwcm9m
aWxlciBob3cgdG8gZGlzcGxheSBvcmlnaW4gZGF0YSBmb3IgQjMgV2FzbQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJU0NWNjQuaCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJSSVNDVjY0LmgK
aW5kZXggN2IwYTFjNDU4MDViMzg2ZGZhYzg4MzY0MDcyMmUzNDM1NzNjZTUxZC4uMjk1ZGEyYmJh
MjliOTRlMTE5OTU5YzRhMGYzNDVhYzZjNTFlOWQzOCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlclJJU0NWNjQuaAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyUklTQ1Y2NC5oCkBAIC00Nyw2
ICs0Nyw5IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgY29uc3RleHByIFJlZ2lzdGVySUQgZGF0YVRl
bXBSZWdpc3RlciA9IFJJU0NWNjRSZWdpc3RlcnM6OngzMDsKICAgICBzdGF0aWMgY29uc3RleHBy
IFJlZ2lzdGVySUQgbWVtb3J5VGVtcFJlZ2lzdGVyID0gUklTQ1Y2NFJlZ2lzdGVyczo6eDMxOwog
CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJlZ2lzdGVySUQgZnBUZW1wUmVnaXN0ZXIgPSBSSVND
VjY0UmVnaXN0ZXJzOjpmMzA7CisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJlZ2lzdGVySUQgZnBU
ZW1wUmVnaXN0ZXIyID0gUklTQ1Y2NFJlZ2lzdGVyczo6ZjMxOworCiAgICAgc3RhdGljIGNvbnN0
ZXhwciBSZWdpc3RlcklEIEludmFsaWRHUFJSZWcgPSBSSVNDVjY0UmVnaXN0ZXJzOjpJbnZhbGlk
R1BSUmVnOwogCiAgICAgUmVnaXN0ZXJJRCBzY3JhdGNoUmVnaXN0ZXIoKQpAQCAtNTI4LDEzICs1
MzEsNDUgQEAgcHVibGljOgogICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9O
T09QX01FVEhPRChtb3ZlKTsKICAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURf
Tk9PUF9NRVRIT0Qoc3dhcCk7CiAKLSAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0QobW92ZVplcm9Ub0RvdWJsZSk7Ci0gICAgTUFDUk9fQVNTRU1CTEVSX1JJ
U0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG1vdmVGbG9hdFRvMzIpOwotICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChtb3ZlMzJUb0Zsb2F0KTsKKyAg
ICB2b2lkIG1vdmVaZXJvVG9GbG9hdChGUFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAgICAg
IG1fYXNzZW1ibGVyLmZjdnRJbnNuPFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpTLCBSSVND
VjY0QXNzZW1ibGVyOjpGQ1ZUVHlwZTo6Vz4oZGVzdCwgUklTQ1Y2NFJlZ2lzdGVyczo6emVybyk7
CisgICAgfQogCi0gICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKG1vdmVEb3VibGUpOwotICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9O
T09QX01FVEhPRChtb3ZlRG91YmxlVG82NCk7Ci0gICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKG1vdmU2NFRvRG91YmxlKTsKKyAgICB2b2lkIG1vdmVaZXJv
VG9Eb3VibGUoRlBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2VtYmxlci5m
Y3Z0SW5zbjxSSVNDVjY0QXNzZW1ibGVyOjpGQ1ZUVHlwZTo6RCwgUklTQ1Y2NEFzc2VtYmxlcjo6
RkNWVFR5cGU6Okw+KGRlc3QsIFJJU0NWNjRSZWdpc3RlcnM6Onplcm8pOworICAgIH0KKworICAg
IHZvaWQgbW92ZUZsb2F0KEZQUmVnaXN0ZXJJRCBzcmMsIEZQUmVnaXN0ZXJJRCBkZXN0KQorICAg
IHsKKyAgICAgICAgbV9hc3NlbWJsZXIuZnNnbmpJbnNuPDMyPihkZXN0LCBzcmMsIHNyYyk7Cisg
ICAgfQorCisgICAgdm9pZCBtb3ZlRmxvYXRUbzMyKEZQUmVnaXN0ZXJJRCBzcmMsIFJlZ2lzdGVy
SUQgZGVzdCkKKyAgICB7CisgICAgICAgIG1fYXNzZW1ibGVyLmZtdkluc248UklTQ1Y2NEFzc2Vt
Ymxlcjo6Rk1WVHlwZTo6WCwgUklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6Vz4oZGVzdCwgc3Jj
KTsKKyAgICB9CisKKyAgICB2b2lkIG1vdmUzMlRvRmxvYXQoUmVnaXN0ZXJJRCBzcmMsIEZQUmVn
aXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgbV9hc3NlbWJsZXIuZm12SW5zbjxSSVNDVjY0
QXNzZW1ibGVyOjpGTVZUeXBlOjpXLCBSSVNDVjY0QXNzZW1ibGVyOjpGTVZUeXBlOjpYPihkZXN0
LCBzcmMpOworICAgIH0KKworICAgIHZvaWQgbW92ZURvdWJsZShGUFJlZ2lzdGVySUQgc3JjLCBG
UFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAgICAgIG1fYXNzZW1ibGVyLmZzZ25qSW5zbjw2
ND4oZGVzdCwgc3JjLCBzcmMpOworICAgIH0KKworICAgIHZvaWQgbW92ZURvdWJsZVRvNjQoRlBS
ZWdpc3RlcklEIHNyYywgUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgbV9hc3NlbWJs
ZXIuZm12SW5zbjxSSVNDVjY0QXNzZW1ibGVyOjpGTVZUeXBlOjpYLCBSSVNDVjY0QXNzZW1ibGVy
OjpGTVZUeXBlOjpEPihkZXN0LCBzcmMpOworICAgIH0KKworICAgIHZvaWQgbW92ZTY0VG9Eb3Vi
bGUoUmVnaXN0ZXJJRCBzcmMsIEZQUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgbV9h
c3NlbWJsZXIuZm12SW5zbjxSSVNDVjY0QXNzZW1ibGVyOjpGTVZUeXBlOjpELCBSSVNDVjY0QXNz
ZW1ibGVyOjpGTVZUeXBlOjpYPihkZXN0LCBzcmMpOworICAgIH0KIAogICAgIE1BQ1JPX0FTU0VN
QkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb21wYXJlOCk7CiAgICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGNvbXBhcmUzMik7CkBAIC02
NTAsMjkgKzY4NSwxODMgQEAgcHVibGljOgogCiAgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKGdldEVmZmVjdGl2ZUFkZHJlc3MpOwogCi0gICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGxvYWRGbG9hdCk7Ci0gICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGxvYWREb3VibGUp
OworICAgIHZvaWQgbG9hZEZsb2F0KEFkZHJlc3MgYWRkcmVzcywgRlBSZWdpc3RlcklEIGRlc3Qp
CisgICAgeworICAgICAgICBhdXRvIHJlc29sdXRpb24gPSByZXNvbHZlQWRkcmVzcyhhZGRyZXNz
LCBsYXp5VGVtcDxNZW1vcnk+KCkpOworICAgICAgICBtX2Fzc2VtYmxlci5mbHdJbnNuKGRlc3Qs
IHJlc29sdXRpb24uYmFzZSwgSW1tOjpJKHJlc29sdXRpb24ub2Zmc2V0KSk7CisgICAgfQorCisg
ICAgdm9pZCBsb2FkRmxvYXQoQmFzZUluZGV4IGFkZHJlc3MsIEZQUmVnaXN0ZXJJRCBkZXN0KQor
ICAgIHsKKyAgICAgICAgYXV0byByZXNvbHV0aW9uID0gcmVzb2x2ZUFkZHJlc3MoYWRkcmVzcywg
bGF6eVRlbXA8TWVtb3J5PigpKTsKKyAgICAgICAgbV9hc3NlbWJsZXIuZmx3SW5zbihkZXN0LCBy
ZXNvbHV0aW9uLmJhc2UsIEltbTo6SShyZXNvbHV0aW9uLm9mZnNldCkpOworICAgIH0KKworICAg
IHZvaWQgbG9hZEZsb2F0KFRydXN0ZWRJbW1QdHIgYWRkcmVzcywgRlBSZWdpc3RlcklEIGRlc3Qp
CisgICAgeworICAgICAgICBhdXRvIHRlbXAgPSB0ZW1wczxNZW1vcnk+KCk7CisgICAgICAgIGxv
YWRJbW1lZGlhdGUoYWRkcmVzcywgdGVtcC5tZW1vcnkoKSk7CisgICAgICAgIG1fYXNzZW1ibGVy
LmZsd0luc24oZGVzdCwgdGVtcC5tZW1vcnkoKSwgSW1tOjpJPDA+KCkpOworICAgIH0KKworICAg
IHZvaWQgbG9hZERvdWJsZShBZGRyZXNzIGFkZHJlc3MsIEZQUmVnaXN0ZXJJRCBkZXN0KQorICAg
IHsKKyAgICAgICAgYXV0byByZXNvbHV0aW9uID0gcmVzb2x2ZUFkZHJlc3MoYWRkcmVzcywgbGF6
eVRlbXA8TWVtb3J5PigpKTsKKyAgICAgICAgbV9hc3NlbWJsZXIuZmxkSW5zbihkZXN0LCByZXNv
bHV0aW9uLmJhc2UsIEltbTo6SShyZXNvbHV0aW9uLm9mZnNldCkpOworICAgIH0KKworICAgIHZv
aWQgbG9hZERvdWJsZShCYXNlSW5kZXggYWRkcmVzcywgRlBSZWdpc3RlcklEIGRlc3QpCisgICAg
eworICAgICAgICBhdXRvIHJlc29sdXRpb24gPSByZXNvbHZlQWRkcmVzcyhhZGRyZXNzLCBsYXp5
VGVtcDxNZW1vcnk+KCkpOworICAgICAgICBtX2Fzc2VtYmxlci5mbGRJbnNuKGRlc3QsIHJlc29s
dXRpb24uYmFzZSwgSW1tOjpJKHJlc29sdXRpb24ub2Zmc2V0KSk7CisgICAgfQorCisgICAgdm9p
ZCBsb2FkRG91YmxlKFRydXN0ZWRJbW1QdHIgYWRkcmVzcywgRlBSZWdpc3RlcklEIGRlc3QpCisg
ICAgeworICAgICAgICBhdXRvIHRlbXAgPSB0ZW1wczxNZW1vcnk+KCk7CisgICAgICAgIGxvYWRJ
bW1lZGlhdGUoYWRkcmVzcywgdGVtcC5tZW1vcnkoKSk7CisgICAgICAgIG1fYXNzZW1ibGVyLmZs
ZEluc24oZGVzdCwgdGVtcC5tZW1vcnkoKSwgSW1tOjpJPDA+KCkpOworICAgIH0KKworICAgIHZv
aWQgc3RvcmVGbG9hdChGUFJlZ2lzdGVySUQgc3JjLCBBZGRyZXNzIGFkZHJlc3MpCisgICAgewor
ICAgICAgICBhdXRvIHJlc29sdXRpb24gPSByZXNvbHZlQWRkcmVzcyhhZGRyZXNzLCBsYXp5VGVt
cDxNZW1vcnk+KCkpOworICAgICAgICBtX2Fzc2VtYmxlci5mc3dJbnNuKHJlc29sdXRpb24uYmFz
ZSwgc3JjLCBJbW06OlMocmVzb2x1dGlvbi5vZmZzZXQpKTsKKyAgICB9CisKKyAgICB2b2lkIHN0
b3JlRmxvYXQoRlBSZWdpc3RlcklEIHNyYywgQmFzZUluZGV4IGFkZHJlc3MpCisgICAgeworICAg
ICAgICBhdXRvIHJlc29sdXRpb24gPSByZXNvbHZlQWRkcmVzcyhhZGRyZXNzLCBsYXp5VGVtcDxN
ZW1vcnk+KCkpOworICAgICAgICBtX2Fzc2VtYmxlci5mc3dJbnNuKHJlc29sdXRpb24uYmFzZSwg
c3JjLCBJbW06OlMocmVzb2x1dGlvbi5vZmZzZXQpKTsKKyAgICB9CisKKyAgICB2b2lkIHN0b3Jl
RmxvYXQoRlBSZWdpc3RlcklEIHNyYywgVHJ1c3RlZEltbVB0ciBhZGRyZXNzKQorICAgIHsKKyAg
ICAgICAgYXV0byB0ZW1wID0gdGVtcHM8TWVtb3J5PigpOworICAgICAgICBsb2FkSW1tZWRpYXRl
KGFkZHJlc3MsIHRlbXAubWVtb3J5KCkpOworICAgICAgICBtX2Fzc2VtYmxlci5mc3dJbnNuKHRl
bXAubWVtb3J5KCksIHNyYywgSW1tOjpTPDA+KCkpOworICAgIH0KKworICAgIHZvaWQgc3RvcmVE
b3VibGUoRlBSZWdpc3RlcklEIHNyYywgQWRkcmVzcyBhZGRyZXNzKQorICAgIHsKKyAgICAgICAg
YXV0byByZXNvbHV0aW9uID0gcmVzb2x2ZUFkZHJlc3MoYWRkcmVzcywgbGF6eVRlbXA8TWVtb3J5
PigpKTsKKyAgICAgICAgbV9hc3NlbWJsZXIuZnNkSW5zbihyZXNvbHV0aW9uLmJhc2UsIHNyYywg
SW1tOjpTKHJlc29sdXRpb24ub2Zmc2V0KSk7CisgICAgfQorCisgICAgdm9pZCBzdG9yZURvdWJs
ZShGUFJlZ2lzdGVySUQgc3JjLCBCYXNlSW5kZXggYWRkcmVzcykKKyAgICB7CisgICAgICAgIGF1
dG8gcmVzb2x1dGlvbiA9IHJlc29sdmVBZGRyZXNzKGFkZHJlc3MsIGxhenlUZW1wPE1lbW9yeT4o
KSk7CisgICAgICAgIG1fYXNzZW1ibGVyLmZzZEluc24ocmVzb2x1dGlvbi5iYXNlLCBzcmMsIElt
bTo6UyhyZXNvbHV0aW9uLm9mZnNldCkpOworICAgIH0KKworICAgIHZvaWQgc3RvcmVEb3VibGUo
RlBSZWdpc3RlcklEIHNyYywgVHJ1c3RlZEltbVB0ciBhZGRyZXNzKQorICAgIHsKKyAgICAgICAg
YXV0byB0ZW1wID0gdGVtcHM8TWVtb3J5PigpOworICAgICAgICBsb2FkSW1tZWRpYXRlKGFkZHJl
c3MsIHRlbXAubWVtb3J5KCkpOworICAgICAgICBtX2Fzc2VtYmxlci5mc2RJbnNuKHRlbXAubWVt
b3J5KCksIHNyYywgSW1tOjpTPDA+KCkpOworICAgIH0KKworICAgIHZvaWQgYWRkRmxvYXQoRlBS
ZWdpc3RlcklEIG9wMSwgRlBSZWdpc3RlcklEIG9wMiwgRlBSZWdpc3RlcklEIGRlc3QpCisgICAg
eworICAgICAgICBtX2Fzc2VtYmxlci5mYWRkSW5zbjwzMj4oZGVzdCwgb3AxLCBvcDIpOworICAg
IH0KKworICAgIHZvaWQgYWRkRG91YmxlKEZQUmVnaXN0ZXJJRCBzcmMsIEZQUmVnaXN0ZXJJRCBk
ZXN0KQorICAgIHsKKyAgICAgICAgYWRkRG91YmxlKHNyYywgZGVzdCwgZGVzdCk7CisgICAgfQor
CisgICAgdm9pZCBhZGREb3VibGUoRlBSZWdpc3RlcklEIG9wMSwgRlBSZWdpc3RlcklEIG9wMiwg
RlBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2VtYmxlci5mYWRkSW5zbjw2
ND4oZGVzdCwgb3AxLCBvcDIpOworICAgIH0KKworICAgIHZvaWQgYWRkRG91YmxlKEFic29sdXRl
QWRkcmVzcyBhZGRyZXNzLCBGUFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAgICAgIGxvYWRE
b3VibGUoVHJ1c3RlZEltbVB0cihhZGRyZXNzLm1fcHRyKSwgZnBUZW1wUmVnaXN0ZXIpOworICAg
ICAgICBtX2Fzc2VtYmxlci5mYWRkSW5zbjw2ND4oZGVzdCwgZnBUZW1wUmVnaXN0ZXIsIGRlc3Qp
OworICAgIH0KKworICAgIHZvaWQgc3ViRmxvYXQoRlBSZWdpc3RlcklEIG9wMSwgRlBSZWdpc3Rl
cklEIG9wMiwgRlBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2VtYmxlci5m
c3ViSW5zbjwzMj4oZGVzdCwgb3AxLCBvcDIpOworICAgIH0KKworICAgIHZvaWQgc3ViRG91Ymxl
KEZQUmVnaXN0ZXJJRCBzcmMsIEZQUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgc3Vi
RG91YmxlKGRlc3QsIHNyYywgZGVzdCk7CisgICAgfQorCisgICAgdm9pZCBzdWJEb3VibGUoRlBS
ZWdpc3RlcklEIG9wMSwgRlBSZWdpc3RlcklEIG9wMiwgRlBSZWdpc3RlcklEIGRlc3QpCisgICAg
eworICAgICAgICBtX2Fzc2VtYmxlci5mc3ViSW5zbjw2ND4oZGVzdCwgb3AxLCBvcDIpOworICAg
IH0KKworICAgIHZvaWQgbXVsRmxvYXQoRlBSZWdpc3RlcklEIHNyYywgRlBSZWdpc3RlcklEIGRl
c3QpCisgICAgeworICAgICAgICBtdWxGbG9hdChzcmMsIGRlc3QsIGRlc3QpOworICAgIH0KKwor
ICAgIHZvaWQgbXVsRmxvYXQoRlBSZWdpc3RlcklEIG9wMSwgRlBSZWdpc3RlcklEIG9wMiwgRlBS
ZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2VtYmxlci5mbXVsSW5zbjwzMj4o
ZGVzdCwgb3AxLCBvcDIpOworICAgIH0KKworICAgIHZvaWQgbXVsRG91YmxlKEZQUmVnaXN0ZXJJ
RCBzcmMsIEZQUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgbXVsRG91YmxlKHNyYywg
ZGVzdCwgZGVzdCk7CisgICAgfQorCisgICAgdm9pZCBtdWxEb3VibGUoRlBSZWdpc3RlcklEIG9w
MSwgRlBSZWdpc3RlcklEIG9wMiwgRlBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBt
X2Fzc2VtYmxlci5mbXVsSW5zbjw2ND4oZGVzdCwgb3AxLCBvcDIpOworICAgIH0KKworICAgIHZv
aWQgbXVsRG91YmxlKEFkZHJlc3MgYWRkcmVzcywgRlBSZWdpc3RlcklEIGRlc3QpCisgICAgewor
ICAgICAgICBsb2FkRG91YmxlKGFkZHJlc3MsIGZwVGVtcFJlZ2lzdGVyKTsKKyAgICAgICAgbXVs
RG91YmxlKGZwVGVtcFJlZ2lzdGVyLCBkZXN0LCBkZXN0KTsKKyAgICB9CisKKyAgICB2b2lkIGRp
dkZsb2F0KEZQUmVnaXN0ZXJJRCBzcmMsIEZQUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAg
ICAgZGl2RmxvYXQoZGVzdCwgc3JjLCBkZXN0KTsKKyAgICB9CiAKLSAgICBNQUNST19BU1NFTUJM
RVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3RvcmVGbG9hdCk7Ci0gICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHN0b3JlRG91YmxlKTsKKyAg
ICB2b2lkIGRpdkZsb2F0KEZQUmVnaXN0ZXJJRCBvcDEsIEZQUmVnaXN0ZXJJRCBvcDIsIEZQUmVn
aXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgbV9hc3NlbWJsZXIuZmRpdkluc248MzI+KGRl
c3QsIG9wMSwgb3AyKTsKKyAgICB9CiAKLSAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0QoYWRkRmxvYXQpOwotICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRChhZGREb3VibGUpOworICAgIHZvaWQgZGl2RG91YmxlKEZQ
UmVnaXN0ZXJJRCBzcmMsIEZQUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgZGl2RG91
YmxlKGRlc3QsIHNyYywgZGVzdCk7CisgICAgfQogCi0gICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NW
NjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHN1YkZsb2F0KTsKLSAgICBNQUNST19BU1NFTUJMRVJf
UklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3ViRG91YmxlKTsKKyAgICB2b2lkIGRpdkRv
dWJsZShGUFJlZ2lzdGVySUQgb3AxLCBGUFJlZ2lzdGVySUQgb3AyLCBGUFJlZ2lzdGVySUQgZGVz
dCkKKyAgICB7CisgICAgICAgIG1fYXNzZW1ibGVyLmZkaXZJbnNuPDY0PihkZXN0LCBvcDEsIG9w
Mik7CisgICAgfQogCi0gICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1Bf
TUVUSE9EKG11bEZsb2F0KTsKLSAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURf
Tk9PUF9NRVRIT0QobXVsRG91YmxlKTsKKyAgICB2b2lkIHNxcnRGbG9hdChGUFJlZ2lzdGVySUQg
c3JjLCBGUFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAgICAgIG1fYXNzZW1ibGVyLmZzcXJ0
SW5zbjwzMj4oZGVzdCwgc3JjKTsKKyAgICB9CiAKLSAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0QoZGl2RmxvYXQpOwotICAgIE1BQ1JPX0FTU0VNQkxFUl9S
SVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChkaXZEb3VibGUpOworICAgIHZvaWQgc3FydERv
dWJsZShGUFJlZ2lzdGVySUQgc3JjLCBGUFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAgICAg
IG1fYXNzZW1ibGVyLmZzcXJ0SW5zbjw2ND4oZGVzdCwgc3JjKTsKKyAgICB9CiAKLSAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3FydEZsb2F0KTsKLSAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3FydERvdWJs
ZSk7CisgICAgdm9pZCBhYnNGbG9hdChGUFJlZ2lzdGVySUQgc3JjLCBGUFJlZ2lzdGVySUQgZGVz
dCkKKyAgICB7CisgICAgICAgIG1fYXNzZW1ibGVyLmZzZ25qeEluc248MzI+KGRlc3QsIHNyYywg
c3JjKTsKKyAgICB9CiAKLSAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QoYWJzRmxvYXQpOwotICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRF
RF9OT09QX01FVEhPRChhYnNEb3VibGUpOworICAgIHZvaWQgYWJzRG91YmxlKEZQUmVnaXN0ZXJJ
RCBzcmMsIEZQUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgbV9hc3NlbWJsZXIuZnNn
bmp4SW5zbjw2ND4oZGVzdCwgc3JjLCBzcmMpOworICAgIH0KIAogICAgIE1BQ1JPX0FTU0VNQkxF
Ul9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjZWlsRmxvYXQpOwogICAgIE1BQ1JPX0FT
U0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjZWlsRG91YmxlKTsKQEAgLTY4
MCwxNCArODY5LDUxIEBAIHB1YmxpYzoKICAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0QoZmxvb3JGbG9hdCk7CiAgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NW
NjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGZsb29yRG91YmxlKTsKIAotICAgIE1BQ1JPX0FTU0VN
QkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChhbmRGbG9hdCk7Ci0gICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGFuZERvdWJsZSk7CisgICAg
dm9pZCBhbmRGbG9hdChGUFJlZ2lzdGVySUQgb3AxLCBGUFJlZ2lzdGVySUQgb3AyLCBGUFJlZ2lz
dGVySUQgZGVzdCkKKyAgICB7CisgICAgICAgIGF1dG8gdGVtcCA9IHRlbXBzPERhdGEsIE1lbW9y
eT4oKTsKKyAgICAgICAgbV9hc3NlbWJsZXIuZm12SW5zbjxSSVNDVjY0QXNzZW1ibGVyOjpGTVZU
eXBlOjpYLCBSSVNDVjY0QXNzZW1ibGVyOjpGTVZUeXBlOjpXPih0ZW1wLmRhdGEoKSwgb3AxKTsK
KyAgICAgICAgbV9hc3NlbWJsZXIuZm12SW5zbjxSSVNDVjY0QXNzZW1ibGVyOjpGTVZUeXBlOjpY
LCBSSVNDVjY0QXNzZW1ibGVyOjpGTVZUeXBlOjpXPih0ZW1wLm1lbW9yeSgpLCBvcDIpOworICAg
ICAgICBtX2Fzc2VtYmxlci5hbmRJbnNuKHRlbXAuZGF0YSgpLCB0ZW1wLmRhdGEoKSwgdGVtcC5t
ZW1vcnkoKSk7CisgICAgICAgIG1fYXNzZW1ibGVyLmZtdkluc248UklTQ1Y2NEFzc2VtYmxlcjo6
Rk1WVHlwZTo6VywgUklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6WD4oZGVzdCwgdGVtcC5kYXRh
KCkpOworICAgIH0KIAotICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09Q
X01FVEhPRChvckZsb2F0KTsKLSAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURf
Tk9PUF9NRVRIT0Qob3JEb3VibGUpOworICAgIHZvaWQgYW5kRG91YmxlKEZQUmVnaXN0ZXJJRCBv
cDEsIEZQUmVnaXN0ZXJJRCBvcDIsIEZQUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAg
YXV0byB0ZW1wID0gdGVtcHM8RGF0YSwgTWVtb3J5PigpOworICAgICAgICBtX2Fzc2VtYmxlci5m
bXZJbnNuPFJJU0NWNjRBc3NlbWJsZXI6OkZNVlR5cGU6OlgsIFJJU0NWNjRBc3NlbWJsZXI6OkZN
VlR5cGU6OkQ+KHRlbXAuZGF0YSgpLCBvcDEpOworICAgICAgICBtX2Fzc2VtYmxlci5mbXZJbnNu
PFJJU0NWNjRBc3NlbWJsZXI6OkZNVlR5cGU6OlgsIFJJU0NWNjRBc3NlbWJsZXI6OkZNVlR5cGU6
OkQ+KHRlbXAubWVtb3J5KCksIG9wMik7CisgICAgICAgIG1fYXNzZW1ibGVyLmFuZEluc24odGVt
cC5kYXRhKCksIHRlbXAuZGF0YSgpLCB0ZW1wLm1lbW9yeSgpKTsKKyAgICAgICAgbV9hc3NlbWJs
ZXIuZm12SW5zbjxSSVNDVjY0QXNzZW1ibGVyOjpGTVZUeXBlOjpELCBSSVNDVjY0QXNzZW1ibGVy
OjpGTVZUeXBlOjpYPihkZXN0LCB0ZW1wLmRhdGEoKSk7CisgICAgfQogCi0gICAgTUFDUk9fQVNT
RU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG5lZ2F0ZUZsb2F0KTsKLSAgICBN
QUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobmVnYXRlRG91Ymxl
KTsKKyAgICB2b2lkIG9yRmxvYXQoRlBSZWdpc3RlcklEIG9wMSwgRlBSZWdpc3RlcklEIG9wMiwg
RlBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBhdXRvIHRlbXAgPSB0ZW1wczxEYXRh
LCBNZW1vcnk+KCk7CisgICAgICAgIG1fYXNzZW1ibGVyLmZtdkluc248UklTQ1Y2NEFzc2VtYmxl
cjo6Rk1WVHlwZTo6WCwgUklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6Vz4odGVtcC5kYXRhKCks
IG9wMSk7CisgICAgICAgIG1fYXNzZW1ibGVyLmZtdkluc248UklTQ1Y2NEFzc2VtYmxlcjo6Rk1W
VHlwZTo6WCwgUklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6Vz4odGVtcC5tZW1vcnkoKSwgb3Ay
KTsKKyAgICAgICAgbV9hc3NlbWJsZXIub3JJbnNuKHRlbXAuZGF0YSgpLCB0ZW1wLmRhdGEoKSwg
dGVtcC5tZW1vcnkoKSk7CisgICAgICAgIG1fYXNzZW1ibGVyLmZtdkluc248UklTQ1Y2NEFzc2Vt
Ymxlcjo6Rk1WVHlwZTo6VywgUklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6WD4oZGVzdCwgdGVt
cC5kYXRhKCkpOworICAgIH0KKworICAgIHZvaWQgb3JEb3VibGUoRlBSZWdpc3RlcklEIG9wMSwg
RlBSZWdpc3RlcklEIG9wMiwgRlBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBhdXRv
IHRlbXAgPSB0ZW1wczxEYXRhLCBNZW1vcnk+KCk7CisgICAgICAgIG1fYXNzZW1ibGVyLmZtdklu
c248UklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6WCwgUklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlw
ZTo6RD4odGVtcC5kYXRhKCksIG9wMSk7CisgICAgICAgIG1fYXNzZW1ibGVyLmZtdkluc248UklT
Q1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6WCwgUklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6RD4o
dGVtcC5tZW1vcnkoKSwgb3AyKTsKKyAgICAgICAgbV9hc3NlbWJsZXIub3JJbnNuKHRlbXAuZGF0
YSgpLCB0ZW1wLmRhdGEoKSwgdGVtcC5tZW1vcnkoKSk7CisgICAgICAgIG1fYXNzZW1ibGVyLmZt
dkluc248UklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6RCwgUklTQ1Y2NEFzc2VtYmxlcjo6Rk1W
VHlwZTo6WD4oZGVzdCwgdGVtcC5kYXRhKCkpOworICAgIH0KKworICAgIHZvaWQgbmVnYXRlRmxv
YXQoRlBSZWdpc3RlcklEIHNyYywgRlBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBt
X2Fzc2VtYmxlci5mc2duam5JbnNuPDMyPihkZXN0LCBzcmMsIHNyYyk7CisgICAgfQorCisgICAg
dm9pZCBuZWdhdGVEb3VibGUoRlBSZWdpc3RlcklEIHNyYywgRlBSZWdpc3RlcklEIGRlc3QpCisg
ICAgeworICAgICAgICBtX2Fzc2VtYmxlci5mc2duam5JbnNuPDY0PihkZXN0LCBzcmMsIHNyYyk7
CisgICAgfQogCiAgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKHJvdW5kVG93YXJkTmVhcmVzdEludEZsb2F0KTsKICAgICBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qocm91bmRUb3dhcmROZWFyZXN0SW50RG91YmxlKTsK
QEAgLTY5NywyMiArOTIzLDEwOSBAQCBwdWJsaWM6CiAgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NW
NjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhfUkVUVVJOKGNvbXBhcmVGbG9hdCwgSnVtcCk7
CiAgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EX1dJVEhf
UkVUVVJOKGNvbXBhcmVEb3VibGUsIEp1bXApOwogCi0gICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NW
NjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGNvbnZlcnRJbnQzMlRvRmxvYXQpOwotICAgIE1BQ1JP
X0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb252ZXJ0SW50MzJUb0Rv
dWJsZSk7Ci0gICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9E
KGNvbnZlcnRJbnQ2NFRvRmxvYXQpOwotICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBM
QVRFRF9OT09QX01FVEhPRChjb252ZXJ0SW50NjRUb0RvdWJsZSk7Ci0KLSAgICBNQUNST19BU1NF
TUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoY29udmVydEZsb2F0VG9Eb3VibGUp
OwotICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb252
ZXJ0RG91YmxlVG9GbG9hdCk7Ci0KLSAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0QodHJ1bmNhdGVGbG9hdFRvSW50MzIpOwotICAgIE1BQ1JPX0FTU0VNQkxF
Ul9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRCh0cnVuY2F0ZUZsb2F0VG9VaW50MzIpOwot
ICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRCh0cnVuY2F0
ZUZsb2F0VG9JbnQ2NCk7Ci0gICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EKHRydW5jYXRlRmxvYXRUb1VpbnQ2NCk7Ci0gICAgTUFDUk9fQVNTRU1CTEVSX1JJ
U0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHRydW5jYXRlRG91YmxlVG9JbnQzMik7Ci0gICAg
TUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHRydW5jYXRlRG91
YmxlVG9VaW50MzIpOwotICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09Q
X01FVEhPRCh0cnVuY2F0ZURvdWJsZVRvSW50NjQpOwotICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVND
VjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRCh0cnVuY2F0ZURvdWJsZVRvVWludDY0KTsKKyAgICB2
b2lkIGNvbnZlcnRJbnQzMlRvRmxvYXQoUmVnaXN0ZXJJRCBzcmMsIEZQUmVnaXN0ZXJJRCBkZXN0
KQorICAgIHsKKyAgICAgICAgbV9hc3NlbWJsZXIuZmN2dEluc248UklTQ1Y2NEFzc2VtYmxlcjo6
RkNWVFR5cGU6OlMsIFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpXPihkZXN0LCBzcmMpOwor
ICAgIH0KKworICAgIHZvaWQgY29udmVydEludDMyVG9Eb3VibGUoUmVnaXN0ZXJJRCBzcmMsIEZQ
UmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgbV9hc3NlbWJsZXIuZmN2dEluc248UklT
Q1Y2NEFzc2VtYmxlcjo6RkNWVFR5cGU6OkQsIFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpX
PihkZXN0LCBzcmMpOworICAgIH0KKworICAgIHZvaWQgY29udmVydEludDMyVG9Eb3VibGUoVHJ1
c3RlZEltbTMyIGltbSwgRlBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBhdXRvIHRl
bXAgPSB0ZW1wczxEYXRhPigpOworICAgICAgICBsb2FkSW1tZWRpYXRlKGltbSwgdGVtcC5kYXRh
KCkpOworICAgICAgICBjb252ZXJ0SW50MzJUb0RvdWJsZSh0ZW1wLmRhdGEoKSwgZGVzdCk7Cisg
ICAgfQorCisgICAgdm9pZCBjb252ZXJ0SW50NjRUb0Zsb2F0KFJlZ2lzdGVySUQgc3JjLCBGUFJl
Z2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAgICAgIG1fYXNzZW1ibGVyLmZjdnRJbnNuPFJJU0NW
NjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpTLCBSSVNDVjY0QXNzZW1ibGVyOjpGQ1ZUVHlwZTo6TD4o
ZGVzdCwgc3JjKTsKKyAgICB9CisKKyAgICB2b2lkIGNvbnZlcnRJbnQ2NFRvRG91YmxlKFJlZ2lz
dGVySUQgc3JjLCBGUFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAgICAgIG1fYXNzZW1ibGVy
LmZjdnRJbnNuPFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpELCBSSVNDVjY0QXNzZW1ibGVy
OjpGQ1ZUVHlwZTo6TD4oZGVzdCwgc3JjKTsKKyAgICB9CisKKyAgICB2b2lkIGNvbnZlcnRVSW50
NjRUb0Zsb2F0KFJlZ2lzdGVySUQgc3JjLCBGUFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAg
ICAgIG1fYXNzZW1ibGVyLmZjdnRJbnNuPFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpTLCBS
SVNDVjY0QXNzZW1ibGVyOjpGQ1ZUVHlwZTo6TFU+KGRlc3QsIHNyYyk7CisgICAgfQorCisgICAg
dm9pZCBjb252ZXJ0VUludDY0VG9Eb3VibGUoUmVnaXN0ZXJJRCBzcmMsIEZQUmVnaXN0ZXJJRCBk
ZXN0KQorICAgIHsKKyAgICAgICAgbV9hc3NlbWJsZXIuZmN2dEluc248UklTQ1Y2NEFzc2VtYmxl
cjo6RkNWVFR5cGU6OkQsIFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpMVT4oZGVzdCwgc3Jj
KTsKKyAgICB9CisKKyAgICB2b2lkIGNvbnZlcnRGbG9hdFRvRG91YmxlKEZQUmVnaXN0ZXJJRCBz
cmMsIEZQUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgYXV0byB0ZW1wID0gdGVtcHM8
RGF0YT4oKTsKKyAgICAgICAgbV9hc3NlbWJsZXIuZm12SW5zbjxSSVNDVjY0QXNzZW1ibGVyOjpG
TVZUeXBlOjpYLCBSSVNDVjY0QXNzZW1ibGVyOjpGTVZUeXBlOjpXPih0ZW1wLmRhdGEoKSwgc3Jj
KTsKKyAgICAgICAgbV9hc3NlbWJsZXIuZm12SW5zbjxSSVNDVjY0QXNzZW1ibGVyOjpGTVZUeXBl
OjpXLCBSSVNDVjY0QXNzZW1ibGVyOjpGTVZUeXBlOjpYPihkZXN0LCB0ZW1wLmRhdGEoKSk7Cisg
ICAgICAgIG1fYXNzZW1ibGVyLmZjdnRJbnNuPFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpE
LCBSSVNDVjY0QXNzZW1ibGVyOjpGQ1ZUVHlwZTo6Uz4oZGVzdCwgZGVzdCk7CisgICAgfQorCisg
ICAgdm9pZCBjb252ZXJ0RG91YmxlVG9GbG9hdChGUFJlZ2lzdGVySUQgc3JjLCBGUFJlZ2lzdGVy
SUQgZGVzdCkKKyAgICB7CisgICAgICAgIG1fYXNzZW1ibGVyLmZjdnRJbnNuPFJJU0NWNjRBc3Nl
bWJsZXI6OkZDVlRUeXBlOjpTLCBSSVNDVjY0QXNzZW1ibGVyOjpGQ1ZUVHlwZTo6RD4oZGVzdCwg
c3JjKTsKKyAgICB9CisKKyAgICB2b2lkIHRydW5jYXRlRmxvYXRUb0ludDMyKEZQUmVnaXN0ZXJJ
RCBzcmMsIFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAgICAgIG1fYXNzZW1ibGVyLmZjdnRJ
bnNuPFJJU0NWNjRBc3NlbWJsZXI6OkZQUm91bmRpbmdNb2RlOjpSVFosIFJJU0NWNjRBc3NlbWJs
ZXI6OkZDVlRUeXBlOjpXLCBSSVNDVjY0QXNzZW1ibGVyOjpGQ1ZUVHlwZTo6Uz4oZGVzdCwgc3Jj
KTsKKyAgICAgICAgbV9hc3NlbWJsZXIubWFza1JlZ2lzdGVyPDMyPihkZXN0KTsKKyAgICB9CisK
KyAgICB2b2lkIHRydW5jYXRlRmxvYXRUb1VpbnQzMihGUFJlZ2lzdGVySUQgc3JjLCBSZWdpc3Rl
cklEIGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2VtYmxlci5mY3Z0SW5zbjxSSVNDVjY0QXNz
ZW1ibGVyOjpGUFJvdW5kaW5nTW9kZTo6UlRaLCBSSVNDVjY0QXNzZW1ibGVyOjpGQ1ZUVHlwZTo6
V1UsIFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpTPihkZXN0LCBzcmMpOworICAgICAgICBt
X2Fzc2VtYmxlci5tYXNrUmVnaXN0ZXI8MzI+KGRlc3QpOworICAgIH0KKworICAgIHZvaWQgdHJ1
bmNhdGVGbG9hdFRvSW50NjQoRlBSZWdpc3RlcklEIHNyYywgUmVnaXN0ZXJJRCBkZXN0KQorICAg
IHsKKyAgICAgICAgbV9hc3NlbWJsZXIuZmN2dEluc248UklTQ1Y2NEFzc2VtYmxlcjo6RlBSb3Vu
ZGluZ01vZGU6OlJUWiwgUklTQ1Y2NEFzc2VtYmxlcjo6RkNWVFR5cGU6OkwsIFJJU0NWNjRBc3Nl
bWJsZXI6OkZDVlRUeXBlOjpTPihkZXN0LCBzcmMpOworICAgIH0KKworICAgIHZvaWQgdHJ1bmNh
dGVGbG9hdFRvVWludDY0KEZQUmVnaXN0ZXJJRCBzcmMsIFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7
CisgICAgICAgIG1fYXNzZW1ibGVyLmZjdnRJbnNuPFJJU0NWNjRBc3NlbWJsZXI6OkZQUm91bmRp
bmdNb2RlOjpSVFosIFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpMVSwgUklTQ1Y2NEFzc2Vt
Ymxlcjo6RkNWVFR5cGU6OlM+KGRlc3QsIHNyYyk7CisgICAgfQorCisgICAgdm9pZCB0cnVuY2F0
ZUZsb2F0VG9VaW50NjQoRlBSZWdpc3RlcklEIHNyYywgUmVnaXN0ZXJJRCBkZXN0LCBGUFJlZ2lz
dGVySUQsIEZQUmVnaXN0ZXJJRCkKKyAgICB7CisgICAgICAgIHRydW5jYXRlRmxvYXRUb1VpbnQ2
NChzcmMsIGRlc3QpOworICAgIH0KKworICAgIHZvaWQgdHJ1bmNhdGVEb3VibGVUb0ludDMyKEZQ
UmVnaXN0ZXJJRCBzcmMsIFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAgICAgIG1fYXNzZW1i
bGVyLmZjdnRJbnNuPFJJU0NWNjRBc3NlbWJsZXI6OkZQUm91bmRpbmdNb2RlOjpSVFosIFJJU0NW
NjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpXLCBSSVNDVjY0QXNzZW1ibGVyOjpGQ1ZUVHlwZTo6RD4o
ZGVzdCwgc3JjKTsKKyAgICAgICAgbV9hc3NlbWJsZXIubWFza1JlZ2lzdGVyPDMyPihkZXN0KTsK
KyAgICB9CisKKyAgICB2b2lkIHRydW5jYXRlRG91YmxlVG9VaW50MzIoRlBSZWdpc3RlcklEIHNy
YywgUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgbV9hc3NlbWJsZXIuZmN2dEluc248
UklTQ1Y2NEFzc2VtYmxlcjo6RlBSb3VuZGluZ01vZGU6OlJUWiwgUklTQ1Y2NEFzc2VtYmxlcjo6
RkNWVFR5cGU6OldVLCBSSVNDVjY0QXNzZW1ibGVyOjpGQ1ZUVHlwZTo6RD4oZGVzdCwgc3JjKTsK
KyAgICAgICAgbV9hc3NlbWJsZXIubWFza1JlZ2lzdGVyPDMyPihkZXN0KTsKKyAgICB9CisKKyAg
ICB2b2lkIHRydW5jYXRlRG91YmxlVG9JbnQ2NChGUFJlZ2lzdGVySUQgc3JjLCBSZWdpc3RlcklE
IGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2VtYmxlci5mY3Z0SW5zbjxSSVNDVjY0QXNzZW1i
bGVyOjpGUFJvdW5kaW5nTW9kZTo6UlRaLCBSSVNDVjY0QXNzZW1ibGVyOjpGQ1ZUVHlwZTo6TCwg
UklTQ1Y2NEFzc2VtYmxlcjo6RkNWVFR5cGU6OkQ+KGRlc3QsIHNyYyk7CisgICAgfQorCisgICAg
dm9pZCB0cnVuY2F0ZURvdWJsZVRvVWludDY0KEZQUmVnaXN0ZXJJRCBzcmMsIFJlZ2lzdGVySUQg
ZGVzdCkKKyAgICB7CisgICAgICAgIG1fYXNzZW1ibGVyLmZjdnRJbnNuPFJJU0NWNjRBc3NlbWJs
ZXI6OkZQUm91bmRpbmdNb2RlOjpSVFosIFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpMVSwg
UklTQ1Y2NEFzc2VtYmxlcjo6RkNWVFR5cGU6OkQ+KGRlc3QsIHNyYyk7CisgICAgfQorCisgICAg
dm9pZCB0cnVuY2F0ZURvdWJsZVRvVWludDY0KEZQUmVnaXN0ZXJJRCBzcmMsIFJlZ2lzdGVySUQg
ZGVzdCwgRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySUQpCisgICAgeworICAgICAgICB0cnVuY2F0
ZURvdWJsZVRvVWludDY0KHNyYywgZGVzdCk7CisgICAgfQogCiAgICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHB1c2gpOwogICAgIE1BQ1JPX0FTU0VNQkxF
Ul9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChwdXNoUGFpcik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>446973</attachid>
            <date>2021-12-13 00:21:05 -0800</date>
            <delta_ts>2021-12-13 01:26:06 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-234223-20211213092103.patch</filename>
            <type>text/plain</type>
            <size>22067</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg2OTM2CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA0
ZTFhZDliNTkwY2YxYWMzMDkyY2M1NzNmYTQ3MjcxNDhjMDU2MzllLi4xYjYxNTA2OGNjMjhmMTNj
NzAwOGNjOTY0NTdkMWE4MTg5NTUxYTM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw2OCBAQAorMjAyMS0xMi0xMyAgWmFuIERvYmVyc2VrICA8emRvYmVyc2VrQGlnYWxpYS5j
b20+CisKKyAgICAgICAgW1JJU0NWNjRdIEFkZCBNYWNyb0Fzc2VtYmxlclJJU0NWNjQgaW1wbGVt
ZW50YXRpb25zIGZvciB0cml2aWFsIGZsb2F0aW5nLXBvaW50LXJlZ2lzdGVyIG9wZXJhdGlvbnMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNDIyMwor
CisgICAgICAgIFJldmlld2VkIGJ5IFl1c3VrZSBTdXp1a2kuCisKKyAgICAgICAgQWRkIGltcGxl
bWVudGF0aW9ucyBmb3IgdGhlIHRyaXZpYWwgZmxvYXRpbmctcG9pbnQgcmVnaXN0ZXIgb3BlcmF0
aW9ucworICAgICAgICBpbiBNYWNyb0Fzc2VtYmxlclJJU0NWNjQuIFRoaXMgY292ZXJzIG1vdmVz
LCBsb2Fkcywgc3RvcmVzLCBhcml0aG1ldGljcywKKyAgICAgICAgYmFzaWMgY29udmVyc2lvbiBh
bmQgdHJ1bmNhdGlvbiBhbmQgdGhlIGxpZ2h0d2VpZ2h0IGxvZ2ljYWwgb3BlcmF0aW9ucy4KKwor
ICAgICAgICBUaGUgdHdvIGZsb2F0aW5nLXBvaW50IHRlbXBvcmFyeSByZWdpc3RlcnMgbmVlZGVk
IGluIHNvbWUgb3BlcmF0aW9ucyBhcmUKKyAgICAgICAgbGlzdGVkLiBUaGUgcm91bmRpbmcgYW5k
IGNvbXBhcmlzb24gb3BlcmF0aW9ucyBhcmUgbGVmdCBmb3IgbGF0ZXIgYXMKKyAgICAgICAgdGhl
eSByZXF1aXJlIGEgbW9yZSBjb21wbGV4IGltcGxlbWVudGF0aW9uIGR1ZSB0byB0aGUgbmVjZXNz
YXJ5IG1hbnVhbAorICAgICAgICBOYU4gY2hlY2tzLgorCisgICAgICAgICogYXNzZW1ibGVyL01h
Y3JvQXNzZW1ibGVyUklTQ1Y2NC5oOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NW
NjQ6OnN3YXApOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6Om1vdmVaZXJv
VG9GbG9hdCk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6bW92ZVplcm9U
b0RvdWJsZSk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6bW92ZUZsb2F0
KToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0Ojptb3ZlRmxvYXRUbzMyKToK
KyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0Ojptb3ZlMzJUb0Zsb2F0KToKKyAg
ICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0Ojptb3ZlRG91YmxlKToKKyAgICAgICAg
KEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0Ojptb3ZlRG91YmxlVG82NCk6CisgICAgICAgIChK
U0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6bW92ZTY0VG9Eb3VibGUpOgorICAgICAgICAoSlND
OjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6OmxvYWRGbG9hdCk6CisgICAgICAgIChKU0M6Ok1hY3Jv
QXNzZW1ibGVyUklTQ1Y2NDo6bG9hZERvdWJsZSk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1i
bGVyUklTQ1Y2NDo6c3RvcmVGbG9hdCk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklT
Q1Y2NDo6c3RvcmVEb3VibGUpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6
OmFkZEZsb2F0KToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0OjphZGREb3Vi
bGUpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6OnN1YkZsb2F0KToKKyAg
ICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0OjpzdWJEb3VibGUpOgorICAgICAgICAo
SlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6Om11bEZsb2F0KToKKyAgICAgICAgKEpTQzo6TWFj
cm9Bc3NlbWJsZXJSSVNDVjY0OjptdWxEb3VibGUpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2Vt
YmxlclJJU0NWNjQ6OmRpdkZsb2F0KToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVND
VjY0OjpkaXZEb3VibGUpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6OnNx
cnRGbG9hdCk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6c3FydERvdWJs
ZSk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6YWJzRmxvYXQpOgorICAg
ICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6OmFic0RvdWJsZSk6CisgICAgICAgIChK
U0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6YW5kRmxvYXQpOgorICAgICAgICAoSlNDOjpNYWNy
b0Fzc2VtYmxlclJJU0NWNjQ6OmFuZERvdWJsZSk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1i
bGVyUklTQ1Y2NDo6b3JGbG9hdCk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2
NDo6b3JEb3VibGUpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6Om5lZ2F0
ZUZsb2F0KToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0OjpuZWdhdGVEb3Vi
bGUpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6OmNvbnZlcnRJbnQzMlRv
RmxvYXQpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6OmNvbnZlcnRJbnQz
MlRvRG91YmxlKToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0Ojpjb252ZXJ0
SW50NjRUb0Zsb2F0KToKKyAgICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0Ojpjb252
ZXJ0SW50NjRUb0RvdWJsZSk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6
Y29udmVydFVJbnQ2NFRvRmxvYXQpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NW
NjQ6OmNvbnZlcnRVSW50NjRUb0RvdWJsZSk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVy
UklTQ1Y2NDo6Y29udmVydEZsb2F0VG9Eb3VibGUpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2Vt
YmxlclJJU0NWNjQ6OmNvbnZlcnREb3VibGVUb0Zsb2F0KToKKyAgICAgICAgKEpTQzo6TWFjcm9B
c3NlbWJsZXJSSVNDVjY0Ojp0cnVuY2F0ZUZsb2F0VG9JbnQzMik6CisgICAgICAgIChKU0M6Ok1h
Y3JvQXNzZW1ibGVyUklTQ1Y2NDo6dHJ1bmNhdGVGbG9hdFRvVWludDMyKToKKyAgICAgICAgKEpT
Qzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0Ojp0cnVuY2F0ZUZsb2F0VG9JbnQ2NCk6CisgICAgICAg
IChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6dHJ1bmNhdGVGbG9hdFRvVWludDY0KToKKyAg
ICAgICAgKEpTQzo6TWFjcm9Bc3NlbWJsZXJSSVNDVjY0Ojp0cnVuY2F0ZURvdWJsZVRvSW50MzIp
OgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6OnRydW5jYXRlRG91YmxlVG9V
aW50MzIpOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlclJJU0NWNjQ6OnRydW5jYXRlRG91
YmxlVG9JbnQ2NCk6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyUklTQ1Y2NDo6dHJ1bmNh
dGVEb3VibGVUb1VpbnQ2NCk6CisKIDIwMjEtMTItMTIgIFphbiBEb2JlcnNlayAgPHpkb2JlcnNl
a0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtSSVNDVjY0XSBBZGQgTWFjcm9Bc3NlbWJsZXJSSVND
VjY0IGltcGxlbWVudGF0aW9ucyBmb3IgdHJpdmlhbCBnZW5lcmFsLXB1cnBvc2UtcmVnaXN0ZXIg
b3BlcmF0aW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9N
YWNyb0Fzc2VtYmxlclJJU0NWNjQuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIv
TWFjcm9Bc3NlbWJsZXJSSVNDVjY0LmgKaW5kZXggYWRjYjRiZTZlMTAxNjBmMjMwZWUzNDhiMDg2
OGEyN2FiNGJkYjM2ZC4uMGQ1YjE2YTJjN2IxMzdjNTAwMGY2ODAwODNhNGFiZjM3MzZiZTFlMCAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxl
clJJU0NWNjQuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNz
ZW1ibGVyUklTQ1Y2NC5oCkBAIC00Nyw2ICs0Nyw5IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgY29u
c3RleHByIFJlZ2lzdGVySUQgZGF0YVRlbXBSZWdpc3RlciA9IFJJU0NWNjRSZWdpc3RlcnM6Ongz
MDsKICAgICBzdGF0aWMgY29uc3RleHByIFJlZ2lzdGVySUQgbWVtb3J5VGVtcFJlZ2lzdGVyID0g
UklTQ1Y2NFJlZ2lzdGVyczo6eDMxOwogCisgICAgc3RhdGljIGNvbnN0ZXhwciBGUFJlZ2lzdGVy
SUQgZnBUZW1wUmVnaXN0ZXIgPSBSSVNDVjY0UmVnaXN0ZXJzOjpmMzA7CisgICAgc3RhdGljIGNv
bnN0ZXhwciBGUFJlZ2lzdGVySUQgZnBUZW1wUmVnaXN0ZXIyID0gUklTQ1Y2NFJlZ2lzdGVyczo6
ZjMxOworCiAgICAgc3RhdGljIGNvbnN0ZXhwciBSZWdpc3RlcklEIEludmFsaWRHUFJSZWcgPSBS
SVNDVjY0UmVnaXN0ZXJzOjpJbnZhbGlkR1BSUmVnOwogCiAgICAgUmVnaXN0ZXJJRCBzY3JhdGNo
UmVnaXN0ZXIoKQpAQCAtMTQ5MywxOCArMTQ5Niw1MiBAQCBwdWJsaWM6CiAgICAgICAgIG1vdmUo
dGVtcC5kYXRhKCksIHJlZzIpOwogICAgIH0KIAotICAgIHZvaWQgc3dhcChGUFJlZ2lzdGVySUQs
IEZQUmVnaXN0ZXJJRCkKKyAgICB2b2lkIHN3YXAoRlBSZWdpc3RlcklEIHJlZzEsIEZQUmVnaXN0
ZXJJRCByZWcyKQorICAgIHsKKyAgICAgICAgbW92ZURvdWJsZShyZWcxLCBmcFRlbXBSZWdpc3Rl
cik7CisgICAgICAgIG1vdmVEb3VibGUocmVnMiwgcmVnMSk7CisgICAgICAgIG1vdmVEb3VibGUo
ZnBUZW1wUmVnaXN0ZXIsIHJlZzIpOworICAgIH0KKworICAgIHZvaWQgbW92ZVplcm9Ub0Zsb2F0
KEZQUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgbV9hc3NlbWJsZXIuZmN2dEluc248
UklTQ1Y2NEFzc2VtYmxlcjo6RkNWVFR5cGU6OlMsIFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBl
OjpXPihkZXN0LCBSSVNDVjY0UmVnaXN0ZXJzOjp6ZXJvKTsKKyAgICB9CisKKyAgICB2b2lkIG1v
dmVaZXJvVG9Eb3VibGUoRlBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2Vt
Ymxlci5mY3Z0SW5zbjxSSVNDVjY0QXNzZW1ibGVyOjpGQ1ZUVHlwZTo6RCwgUklTQ1Y2NEFzc2Vt
Ymxlcjo6RkNWVFR5cGU6Okw+KGRlc3QsIFJJU0NWNjRSZWdpc3RlcnM6Onplcm8pOworICAgIH0K
KworICAgIHZvaWQgbW92ZUZsb2F0KEZQUmVnaXN0ZXJJRCBzcmMsIEZQUmVnaXN0ZXJJRCBkZXN0
KQorICAgIHsKKyAgICAgICAgbV9hc3NlbWJsZXIuZnNnbmpJbnNuPDMyPihkZXN0LCBzcmMsIHNy
Yyk7CisgICAgfQorCisgICAgdm9pZCBtb3ZlRmxvYXRUbzMyKEZQUmVnaXN0ZXJJRCBzcmMsIFJl
Z2lzdGVySUQgZGVzdCkKICAgICB7Ci0gICAgICAgIC8vIFRPRE8KKyAgICAgICAgbV9hc3NlbWJs
ZXIuZm12SW5zbjxSSVNDVjY0QXNzZW1ibGVyOjpGTVZUeXBlOjpYLCBSSVNDVjY0QXNzZW1ibGVy
OjpGTVZUeXBlOjpXPihkZXN0LCBzcmMpOwogICAgIH0KIAotICAgIE1BQ1JPX0FTU0VNQkxFUl9S
SVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChtb3ZlWmVyb1RvRG91YmxlKTsKLSAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobW92ZUZsb2F0VG8zMik7
Ci0gICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG1vdmUz
MlRvRmxvYXQpOworICAgIHZvaWQgbW92ZTMyVG9GbG9hdChSZWdpc3RlcklEIHNyYywgRlBSZWdp
c3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2VtYmxlci5mbXZJbnNuPFJJU0NWNjRB
c3NlbWJsZXI6OkZNVlR5cGU6OlcsIFJJU0NWNjRBc3NlbWJsZXI6OkZNVlR5cGU6Olg+KGRlc3Qs
IHNyYyk7CisgICAgfQogCi0gICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05P
T1BfTUVUSE9EKG1vdmVEb3VibGUpOwotICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBM
QVRFRF9OT09QX01FVEhPRChtb3ZlRG91YmxlVG82NCk7Ci0gICAgTUFDUk9fQVNTRU1CTEVSX1JJ
U0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG1vdmU2NFRvRG91YmxlKTsKKyAgICB2b2lkIG1v
dmVEb3VibGUoRlBSZWdpc3RlcklEIHNyYywgRlBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAg
ICAgICBtX2Fzc2VtYmxlci5mc2duakluc248NjQ+KGRlc3QsIHNyYywgc3JjKTsKKyAgICB9CisK
KyAgICB2b2lkIG1vdmVEb3VibGVUbzY0KEZQUmVnaXN0ZXJJRCBzcmMsIFJlZ2lzdGVySUQgZGVz
dCkKKyAgICB7CisgICAgICAgIG1fYXNzZW1ibGVyLmZtdkluc248UklTQ1Y2NEFzc2VtYmxlcjo6
Rk1WVHlwZTo6WCwgUklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6RD4oZGVzdCwgc3JjKTsKKyAg
ICB9CisKKyAgICB2b2lkIG1vdmU2NFRvRG91YmxlKFJlZ2lzdGVySUQgc3JjLCBGUFJlZ2lzdGVy
SUQgZGVzdCkKKyAgICB7CisgICAgICAgIG1fYXNzZW1ibGVyLmZtdkluc248UklTQ1Y2NEFzc2Vt
Ymxlcjo6Rk1WVHlwZTo6RCwgUklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6WD4oZGVzdCwgc3Jj
KTsKKyAgICB9CiAKICAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0QoY29tcGFyZTgpOwogICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9O
T09QX01FVEhPRChjb21wYXJlMzIpOwpAQCAtMTYyNCwyOSArMTY2MSwxODMgQEAgcHVibGljOgog
ICAgICAgICBtX2Fzc2VtYmxlci5hZGRpSW5zbihkZXN0LCByZXNvbHV0aW9uLmJhc2UsIEltbTo6
SShyZXNvbHV0aW9uLm9mZnNldCkpOwogICAgIH0KIAotICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVND
VjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChsb2FkRmxvYXQpOwotICAgIE1BQ1JPX0FTU0VNQkxF
Ul9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChsb2FkRG91YmxlKTsKKyAgICB2b2lkIGxv
YWRGbG9hdChBZGRyZXNzIGFkZHJlc3MsIEZQUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAg
ICAgYXV0byByZXNvbHV0aW9uID0gcmVzb2x2ZUFkZHJlc3MoYWRkcmVzcywgbGF6eVRlbXA8TWVt
b3J5PigpKTsKKyAgICAgICAgbV9hc3NlbWJsZXIuZmx3SW5zbihkZXN0LCByZXNvbHV0aW9uLmJh
c2UsIEltbTo6SShyZXNvbHV0aW9uLm9mZnNldCkpOworICAgIH0KKworICAgIHZvaWQgbG9hZEZs
b2F0KEJhc2VJbmRleCBhZGRyZXNzLCBGUFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAgICAg
IGF1dG8gcmVzb2x1dGlvbiA9IHJlc29sdmVBZGRyZXNzKGFkZHJlc3MsIGxhenlUZW1wPE1lbW9y
eT4oKSk7CisgICAgICAgIG1fYXNzZW1ibGVyLmZsd0luc24oZGVzdCwgcmVzb2x1dGlvbi5iYXNl
LCBJbW06OkkocmVzb2x1dGlvbi5vZmZzZXQpKTsKKyAgICB9CiAKLSAgICBNQUNST19BU1NFTUJM
RVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3RvcmVGbG9hdCk7Ci0gICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHN0b3JlRG91YmxlKTsKKyAg
ICB2b2lkIGxvYWRGbG9hdChUcnVzdGVkSW1tUHRyIGFkZHJlc3MsIEZQUmVnaXN0ZXJJRCBkZXN0
KQorICAgIHsKKyAgICAgICAgYXV0byB0ZW1wID0gdGVtcHM8TWVtb3J5PigpOworICAgICAgICBs
b2FkSW1tZWRpYXRlKGFkZHJlc3MsIHRlbXAubWVtb3J5KCkpOworICAgICAgICBtX2Fzc2VtYmxl
ci5mbHdJbnNuKGRlc3QsIHRlbXAubWVtb3J5KCksIEltbTo6STwwPigpKTsKKyAgICB9CiAKLSAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYWRkRmxvYXQp
OwotICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChhZGRE
b3VibGUpOworICAgIHZvaWQgbG9hZERvdWJsZShBZGRyZXNzIGFkZHJlc3MsIEZQUmVnaXN0ZXJJ
RCBkZXN0KQorICAgIHsKKyAgICAgICAgYXV0byByZXNvbHV0aW9uID0gcmVzb2x2ZUFkZHJlc3Mo
YWRkcmVzcywgbGF6eVRlbXA8TWVtb3J5PigpKTsKKyAgICAgICAgbV9hc3NlbWJsZXIuZmxkSW5z
bihkZXN0LCByZXNvbHV0aW9uLmJhc2UsIEltbTo6SShyZXNvbHV0aW9uLm9mZnNldCkpOworICAg
IH0KIAotICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChz
dWJGbG9hdCk7Ci0gICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVU
SE9EKHN1YkRvdWJsZSk7CisgICAgdm9pZCBsb2FkRG91YmxlKEJhc2VJbmRleCBhZGRyZXNzLCBG
UFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAgICAgIGF1dG8gcmVzb2x1dGlvbiA9IHJlc29s
dmVBZGRyZXNzKGFkZHJlc3MsIGxhenlUZW1wPE1lbW9yeT4oKSk7CisgICAgICAgIG1fYXNzZW1i
bGVyLmZsZEluc24oZGVzdCwgcmVzb2x1dGlvbi5iYXNlLCBJbW06OkkocmVzb2x1dGlvbi5vZmZz
ZXQpKTsKKyAgICB9CiAKLSAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9P
UF9NRVRIT0QobXVsRmxvYXQpOwotICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRF
RF9OT09QX01FVEhPRChtdWxEb3VibGUpOworICAgIHZvaWQgbG9hZERvdWJsZShUcnVzdGVkSW1t
UHRyIGFkZHJlc3MsIEZQUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgYXV0byB0ZW1w
ID0gdGVtcHM8TWVtb3J5PigpOworICAgICAgICBsb2FkSW1tZWRpYXRlKGFkZHJlc3MsIHRlbXAu
bWVtb3J5KCkpOworICAgICAgICBtX2Fzc2VtYmxlci5mbGRJbnNuKGRlc3QsIHRlbXAubWVtb3J5
KCksIEltbTo6STwwPigpKTsKKyAgICB9CiAKLSAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9U
RU1QTEFURURfTk9PUF9NRVRIT0QoZGl2RmxvYXQpOwotICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVND
VjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChkaXZEb3VibGUpOworICAgIHZvaWQgc3RvcmVGbG9h
dChGUFJlZ2lzdGVySUQgc3JjLCBBZGRyZXNzIGFkZHJlc3MpCisgICAgeworICAgICAgICBhdXRv
IHJlc29sdXRpb24gPSByZXNvbHZlQWRkcmVzcyhhZGRyZXNzLCBsYXp5VGVtcDxNZW1vcnk+KCkp
OworICAgICAgICBtX2Fzc2VtYmxlci5mc3dJbnNuKHJlc29sdXRpb24uYmFzZSwgc3JjLCBJbW06
OlMocmVzb2x1dGlvbi5vZmZzZXQpKTsKKyAgICB9CiAKLSAgICBNQUNST19BU1NFTUJMRVJfUklT
Q1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3FydEZsb2F0KTsKLSAgICBNQUNST19BU1NFTUJM
RVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qoc3FydERvdWJsZSk7CisgICAgdm9pZCBz
dG9yZUZsb2F0KEZQUmVnaXN0ZXJJRCBzcmMsIEJhc2VJbmRleCBhZGRyZXNzKQorICAgIHsKKyAg
ICAgICAgYXV0byByZXNvbHV0aW9uID0gcmVzb2x2ZUFkZHJlc3MoYWRkcmVzcywgbGF6eVRlbXA8
TWVtb3J5PigpKTsKKyAgICAgICAgbV9hc3NlbWJsZXIuZnN3SW5zbihyZXNvbHV0aW9uLmJhc2Us
IHNyYywgSW1tOjpTKHJlc29sdXRpb24ub2Zmc2V0KSk7CisgICAgfQogCi0gICAgTUFDUk9fQVNT
RU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGFic0Zsb2F0KTsKLSAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoYWJzRG91YmxlKTsKKyAg
ICB2b2lkIHN0b3JlRmxvYXQoRlBSZWdpc3RlcklEIHNyYywgVHJ1c3RlZEltbVB0ciBhZGRyZXNz
KQorICAgIHsKKyAgICAgICAgYXV0byB0ZW1wID0gdGVtcHM8TWVtb3J5PigpOworICAgICAgICBs
b2FkSW1tZWRpYXRlKGFkZHJlc3MsIHRlbXAubWVtb3J5KCkpOworICAgICAgICBtX2Fzc2VtYmxl
ci5mc3dJbnNuKHRlbXAubWVtb3J5KCksIHNyYywgSW1tOjpTPDA+KCkpOworICAgIH0KKworICAg
IHZvaWQgc3RvcmVEb3VibGUoRlBSZWdpc3RlcklEIHNyYywgQWRkcmVzcyBhZGRyZXNzKQorICAg
IHsKKyAgICAgICAgYXV0byByZXNvbHV0aW9uID0gcmVzb2x2ZUFkZHJlc3MoYWRkcmVzcywgbGF6
eVRlbXA8TWVtb3J5PigpKTsKKyAgICAgICAgbV9hc3NlbWJsZXIuZnNkSW5zbihyZXNvbHV0aW9u
LmJhc2UsIHNyYywgSW1tOjpTKHJlc29sdXRpb24ub2Zmc2V0KSk7CisgICAgfQorCisgICAgdm9p
ZCBzdG9yZURvdWJsZShGUFJlZ2lzdGVySUQgc3JjLCBCYXNlSW5kZXggYWRkcmVzcykKKyAgICB7
CisgICAgICAgIGF1dG8gcmVzb2x1dGlvbiA9IHJlc29sdmVBZGRyZXNzKGFkZHJlc3MsIGxhenlU
ZW1wPE1lbW9yeT4oKSk7CisgICAgICAgIG1fYXNzZW1ibGVyLmZzZEluc24ocmVzb2x1dGlvbi5i
YXNlLCBzcmMsIEltbTo6UyhyZXNvbHV0aW9uLm9mZnNldCkpOworICAgIH0KKworICAgIHZvaWQg
c3RvcmVEb3VibGUoRlBSZWdpc3RlcklEIHNyYywgVHJ1c3RlZEltbVB0ciBhZGRyZXNzKQorICAg
IHsKKyAgICAgICAgYXV0byB0ZW1wID0gdGVtcHM8TWVtb3J5PigpOworICAgICAgICBsb2FkSW1t
ZWRpYXRlKGFkZHJlc3MsIHRlbXAubWVtb3J5KCkpOworICAgICAgICBtX2Fzc2VtYmxlci5mc2RJ
bnNuKHRlbXAubWVtb3J5KCksIHNyYywgSW1tOjpTPDA+KCkpOworICAgIH0KKworICAgIHZvaWQg
YWRkRmxvYXQoRlBSZWdpc3RlcklEIG9wMSwgRlBSZWdpc3RlcklEIG9wMiwgRlBSZWdpc3RlcklE
IGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2VtYmxlci5mYWRkSW5zbjwzMj4oZGVzdCwgb3Ax
LCBvcDIpOworICAgIH0KKworICAgIHZvaWQgYWRkRG91YmxlKEZQUmVnaXN0ZXJJRCBzcmMsIEZQ
UmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgYWRkRG91YmxlKHNyYywgZGVzdCwgZGVz
dCk7CisgICAgfQorCisgICAgdm9pZCBhZGREb3VibGUoRlBSZWdpc3RlcklEIG9wMSwgRlBSZWdp
c3RlcklEIG9wMiwgRlBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2VtYmxl
ci5mYWRkSW5zbjw2ND4oZGVzdCwgb3AxLCBvcDIpOworICAgIH0KKworICAgIHZvaWQgYWRkRG91
YmxlKEFic29sdXRlQWRkcmVzcyBhZGRyZXNzLCBGUFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7Cisg
ICAgICAgIGxvYWREb3VibGUoVHJ1c3RlZEltbVB0cihhZGRyZXNzLm1fcHRyKSwgZnBUZW1wUmVn
aXN0ZXIpOworICAgICAgICBtX2Fzc2VtYmxlci5mYWRkSW5zbjw2ND4oZGVzdCwgZnBUZW1wUmVn
aXN0ZXIsIGRlc3QpOworICAgIH0KKworICAgIHZvaWQgc3ViRmxvYXQoRlBSZWdpc3RlcklEIG9w
MSwgRlBSZWdpc3RlcklEIG9wMiwgRlBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBt
X2Fzc2VtYmxlci5mc3ViSW5zbjwzMj4oZGVzdCwgb3AxLCBvcDIpOworICAgIH0KKworICAgIHZv
aWQgc3ViRG91YmxlKEZQUmVnaXN0ZXJJRCBzcmMsIEZQUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsK
KyAgICAgICAgc3ViRG91YmxlKGRlc3QsIHNyYywgZGVzdCk7CisgICAgfQorCisgICAgdm9pZCBz
dWJEb3VibGUoRlBSZWdpc3RlcklEIG9wMSwgRlBSZWdpc3RlcklEIG9wMiwgRlBSZWdpc3RlcklE
IGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2VtYmxlci5mc3ViSW5zbjw2ND4oZGVzdCwgb3Ax
LCBvcDIpOworICAgIH0KKworICAgIHZvaWQgbXVsRmxvYXQoRlBSZWdpc3RlcklEIHNyYywgRlBS
ZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBtdWxGbG9hdChzcmMsIGRlc3QsIGRlc3Qp
OworICAgIH0KKworICAgIHZvaWQgbXVsRmxvYXQoRlBSZWdpc3RlcklEIG9wMSwgRlBSZWdpc3Rl
cklEIG9wMiwgRlBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2VtYmxlci5m
bXVsSW5zbjwzMj4oZGVzdCwgb3AxLCBvcDIpOworICAgIH0KKworICAgIHZvaWQgbXVsRG91Ymxl
KEZQUmVnaXN0ZXJJRCBzcmMsIEZQUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgbXVs
RG91YmxlKHNyYywgZGVzdCwgZGVzdCk7CisgICAgfQorCisgICAgdm9pZCBtdWxEb3VibGUoRlBS
ZWdpc3RlcklEIG9wMSwgRlBSZWdpc3RlcklEIG9wMiwgRlBSZWdpc3RlcklEIGRlc3QpCisgICAg
eworICAgICAgICBtX2Fzc2VtYmxlci5mbXVsSW5zbjw2ND4oZGVzdCwgb3AxLCBvcDIpOworICAg
IH0KKworICAgIHZvaWQgbXVsRG91YmxlKEFkZHJlc3MgYWRkcmVzcywgRlBSZWdpc3RlcklEIGRl
c3QpCisgICAgeworICAgICAgICBsb2FkRG91YmxlKGFkZHJlc3MsIGZwVGVtcFJlZ2lzdGVyKTsK
KyAgICAgICAgbXVsRG91YmxlKGZwVGVtcFJlZ2lzdGVyLCBkZXN0LCBkZXN0KTsKKyAgICB9CisK
KyAgICB2b2lkIGRpdkZsb2F0KEZQUmVnaXN0ZXJJRCBzcmMsIEZQUmVnaXN0ZXJJRCBkZXN0KQor
ICAgIHsKKyAgICAgICAgZGl2RmxvYXQoZGVzdCwgc3JjLCBkZXN0KTsKKyAgICB9CisKKyAgICB2
b2lkIGRpdkZsb2F0KEZQUmVnaXN0ZXJJRCBvcDEsIEZQUmVnaXN0ZXJJRCBvcDIsIEZQUmVnaXN0
ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgbV9hc3NlbWJsZXIuZmRpdkluc248MzI+KGRlc3Qs
IG9wMSwgb3AyKTsKKyAgICB9CisKKyAgICB2b2lkIGRpdkRvdWJsZShGUFJlZ2lzdGVySUQgc3Jj
LCBGUFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAgICAgIGRpdkRvdWJsZShkZXN0LCBzcmMs
IGRlc3QpOworICAgIH0KKworICAgIHZvaWQgZGl2RG91YmxlKEZQUmVnaXN0ZXJJRCBvcDEsIEZQ
UmVnaXN0ZXJJRCBvcDIsIEZQUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgbV9hc3Nl
bWJsZXIuZmRpdkluc248NjQ+KGRlc3QsIG9wMSwgb3AyKTsKKyAgICB9CisKKyAgICB2b2lkIHNx
cnRGbG9hdChGUFJlZ2lzdGVySUQgc3JjLCBGUFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAg
ICAgIG1fYXNzZW1ibGVyLmZzcXJ0SW5zbjwzMj4oZGVzdCwgc3JjKTsKKyAgICB9CisKKyAgICB2
b2lkIHNxcnREb3VibGUoRlBSZWdpc3RlcklEIHNyYywgRlBSZWdpc3RlcklEIGRlc3QpCisgICAg
eworICAgICAgICBtX2Fzc2VtYmxlci5mc3FydEluc248NjQ+KGRlc3QsIHNyYyk7CisgICAgfQor
CisgICAgdm9pZCBhYnNGbG9hdChGUFJlZ2lzdGVySUQgc3JjLCBGUFJlZ2lzdGVySUQgZGVzdCkK
KyAgICB7CisgICAgICAgIG1fYXNzZW1ibGVyLmZzZ25qeEluc248MzI+KGRlc3QsIHNyYywgc3Jj
KTsKKyAgICB9CisKKyAgICB2b2lkIGFic0RvdWJsZShGUFJlZ2lzdGVySUQgc3JjLCBGUFJlZ2lz
dGVySUQgZGVzdCkKKyAgICB7CisgICAgICAgIG1fYXNzZW1ibGVyLmZzZ25qeEluc248NjQ+KGRl
c3QsIHNyYywgc3JjKTsKKyAgICB9CiAKICAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0QoY2VpbEZsb2F0KTsKICAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2
NF9URU1QTEFURURfTk9PUF9NRVRIT0QoY2VpbERvdWJsZSk7CkBAIC0xNjU0LDE0ICsxODQ1LDUx
IEBAIHB1YmxpYzoKICAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9N
RVRIT0QoZmxvb3JGbG9hdCk7CiAgICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVE
X05PT1BfTUVUSE9EKGZsb29yRG91YmxlKTsKIAotICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0
X1RFTVBMQVRFRF9OT09QX01FVEhPRChhbmRGbG9hdCk7Ci0gICAgTUFDUk9fQVNTRU1CTEVSX1JJ
U0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGFuZERvdWJsZSk7CisgICAgdm9pZCBhbmRGbG9h
dChGUFJlZ2lzdGVySUQgb3AxLCBGUFJlZ2lzdGVySUQgb3AyLCBGUFJlZ2lzdGVySUQgZGVzdCkK
KyAgICB7CisgICAgICAgIGF1dG8gdGVtcCA9IHRlbXBzPERhdGEsIE1lbW9yeT4oKTsKKyAgICAg
ICAgbV9hc3NlbWJsZXIuZm12SW5zbjxSSVNDVjY0QXNzZW1ibGVyOjpGTVZUeXBlOjpYLCBSSVND
VjY0QXNzZW1ibGVyOjpGTVZUeXBlOjpXPih0ZW1wLmRhdGEoKSwgb3AxKTsKKyAgICAgICAgbV9h
c3NlbWJsZXIuZm12SW5zbjxSSVNDVjY0QXNzZW1ibGVyOjpGTVZUeXBlOjpYLCBSSVNDVjY0QXNz
ZW1ibGVyOjpGTVZUeXBlOjpXPih0ZW1wLm1lbW9yeSgpLCBvcDIpOworICAgICAgICBtX2Fzc2Vt
Ymxlci5hbmRJbnNuKHRlbXAuZGF0YSgpLCB0ZW1wLmRhdGEoKSwgdGVtcC5tZW1vcnkoKSk7Cisg
ICAgICAgIG1fYXNzZW1ibGVyLmZtdkluc248UklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6Vywg
UklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6WD4oZGVzdCwgdGVtcC5kYXRhKCkpOworICAgIH0K
IAotICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChvckZs
b2F0KTsKLSAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
b3JEb3VibGUpOworICAgIHZvaWQgYW5kRG91YmxlKEZQUmVnaXN0ZXJJRCBvcDEsIEZQUmVnaXN0
ZXJJRCBvcDIsIEZQUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgYXV0byB0ZW1wID0g
dGVtcHM8RGF0YSwgTWVtb3J5PigpOworICAgICAgICBtX2Fzc2VtYmxlci5mbXZJbnNuPFJJU0NW
NjRBc3NlbWJsZXI6OkZNVlR5cGU6OlgsIFJJU0NWNjRBc3NlbWJsZXI6OkZNVlR5cGU6OkQ+KHRl
bXAuZGF0YSgpLCBvcDEpOworICAgICAgICBtX2Fzc2VtYmxlci5mbXZJbnNuPFJJU0NWNjRBc3Nl
bWJsZXI6OkZNVlR5cGU6OlgsIFJJU0NWNjRBc3NlbWJsZXI6OkZNVlR5cGU6OkQ+KHRlbXAubWVt
b3J5KCksIG9wMik7CisgICAgICAgIG1fYXNzZW1ibGVyLmFuZEluc24odGVtcC5kYXRhKCksIHRl
bXAuZGF0YSgpLCB0ZW1wLm1lbW9yeSgpKTsKKyAgICAgICAgbV9hc3NlbWJsZXIuZm12SW5zbjxS
SVNDVjY0QXNzZW1ibGVyOjpGTVZUeXBlOjpELCBSSVNDVjY0QXNzZW1ibGVyOjpGTVZUeXBlOjpY
PihkZXN0LCB0ZW1wLmRhdGEoKSk7CisgICAgfQogCi0gICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NW
NjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKG5lZ2F0ZUZsb2F0KTsKLSAgICBNQUNST19BU1NFTUJM
RVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QobmVnYXRlRG91YmxlKTsKKyAgICB2b2lk
IG9yRmxvYXQoRlBSZWdpc3RlcklEIG9wMSwgRlBSZWdpc3RlcklEIG9wMiwgRlBSZWdpc3RlcklE
IGRlc3QpCisgICAgeworICAgICAgICBhdXRvIHRlbXAgPSB0ZW1wczxEYXRhLCBNZW1vcnk+KCk7
CisgICAgICAgIG1fYXNzZW1ibGVyLmZtdkluc248UklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6
WCwgUklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6Vz4odGVtcC5kYXRhKCksIG9wMSk7CisgICAg
ICAgIG1fYXNzZW1ibGVyLmZtdkluc248UklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6WCwgUklT
Q1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6Vz4odGVtcC5tZW1vcnkoKSwgb3AyKTsKKyAgICAgICAg
bV9hc3NlbWJsZXIub3JJbnNuKHRlbXAuZGF0YSgpLCB0ZW1wLmRhdGEoKSwgdGVtcC5tZW1vcnko
KSk7CisgICAgICAgIG1fYXNzZW1ibGVyLmZtdkluc248UklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlw
ZTo6VywgUklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6WD4oZGVzdCwgdGVtcC5kYXRhKCkpOwor
ICAgIH0KKworICAgIHZvaWQgb3JEb3VibGUoRlBSZWdpc3RlcklEIG9wMSwgRlBSZWdpc3RlcklE
IG9wMiwgRlBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBhdXRvIHRlbXAgPSB0ZW1w
czxEYXRhLCBNZW1vcnk+KCk7CisgICAgICAgIG1fYXNzZW1ibGVyLmZtdkluc248UklTQ1Y2NEFz
c2VtYmxlcjo6Rk1WVHlwZTo6WCwgUklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6RD4odGVtcC5k
YXRhKCksIG9wMSk7CisgICAgICAgIG1fYXNzZW1ibGVyLmZtdkluc248UklTQ1Y2NEFzc2VtYmxl
cjo6Rk1WVHlwZTo6WCwgUklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6RD4odGVtcC5tZW1vcnko
KSwgb3AyKTsKKyAgICAgICAgbV9hc3NlbWJsZXIub3JJbnNuKHRlbXAuZGF0YSgpLCB0ZW1wLmRh
dGEoKSwgdGVtcC5tZW1vcnkoKSk7CisgICAgICAgIG1fYXNzZW1ibGVyLmZtdkluc248UklTQ1Y2
NEFzc2VtYmxlcjo6Rk1WVHlwZTo6RCwgUklTQ1Y2NEFzc2VtYmxlcjo6Rk1WVHlwZTo6WD4oZGVz
dCwgdGVtcC5kYXRhKCkpOworICAgIH0KKworICAgIHZvaWQgbmVnYXRlRmxvYXQoRlBSZWdpc3Rl
cklEIHNyYywgRlBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2VtYmxlci5m
c2duam5JbnNuPDMyPihkZXN0LCBzcmMsIHNyYyk7CisgICAgfQorCisgICAgdm9pZCBuZWdhdGVE
b3VibGUoRlBSZWdpc3RlcklEIHNyYywgRlBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAg
ICBtX2Fzc2VtYmxlci5mc2duam5JbnNuPDY0PihkZXN0LCBzcmMsIHNyYyk7CisgICAgfQogCiAg
ICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHJvdW5kVG93
YXJkTmVhcmVzdEludEZsb2F0KTsKICAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0Qocm91bmRUb3dhcmROZWFyZXN0SW50RG91YmxlKTsKQEAgLTE2NzEsMjIg
KzE4OTksMTA5IEBAIHB1YmxpYzoKICAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oY29tcGFyZUZsb2F0LCBKdW1wKTsKICAgICBNQUNS
T19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0RfV0lUSF9SRVRVUk4oY29t
cGFyZURvdWJsZSwgSnVtcCk7CiAKLSAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFU
RURfTk9PUF9NRVRIT0QoY29udmVydEludDMyVG9GbG9hdCk7Ci0gICAgTUFDUk9fQVNTRU1CTEVS
X1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGNvbnZlcnRJbnQzMlRvRG91YmxlKTsKLSAg
ICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QoY29udmVydElu
dDY0VG9GbG9hdCk7Ci0gICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1Bf
TUVUSE9EKGNvbnZlcnRJbnQ2NFRvRG91YmxlKTsKLQotICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVND
VjY0X1RFTVBMQVRFRF9OT09QX01FVEhPRChjb252ZXJ0RmxvYXRUb0RvdWJsZSk7Ci0gICAgTUFD
Uk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKGNvbnZlcnREb3VibGVU
b0Zsb2F0KTsKLQotICAgIE1BQ1JPX0FTU0VNQkxFUl9SSVNDVjY0X1RFTVBMQVRFRF9OT09QX01F
VEhPRCh0cnVuY2F0ZUZsb2F0VG9JbnQzMik7Ci0gICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRf
VEVNUExBVEVEX05PT1BfTUVUSE9EKHRydW5jYXRlRmxvYXRUb1VpbnQzMik7Ci0gICAgTUFDUk9f
QVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHRydW5jYXRlRmxvYXRUb0lu
dDY0KTsKLSAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0Qo
dHJ1bmNhdGVGbG9hdFRvVWludDY0KTsKLSAgICBNQUNST19BU1NFTUJMRVJfUklTQ1Y2NF9URU1Q
TEFURURfTk9PUF9NRVRIT0QodHJ1bmNhdGVEb3VibGVUb0ludDMyKTsKLSAgICBNQUNST19BU1NF
TUJMRVJfUklTQ1Y2NF9URU1QTEFURURfTk9PUF9NRVRIT0QodHJ1bmNhdGVEb3VibGVUb1VpbnQz
Mik7Ci0gICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExBVEVEX05PT1BfTUVUSE9EKHRy
dW5jYXRlRG91YmxlVG9JbnQ2NCk7Ci0gICAgTUFDUk9fQVNTRU1CTEVSX1JJU0NWNjRfVEVNUExB
VEVEX05PT1BfTUVUSE9EKHRydW5jYXRlRG91YmxlVG9VaW50NjQpOworICAgIHZvaWQgY29udmVy
dEludDMyVG9GbG9hdChSZWdpc3RlcklEIHNyYywgRlBSZWdpc3RlcklEIGRlc3QpCisgICAgewor
ICAgICAgICBtX2Fzc2VtYmxlci5mY3Z0SW5zbjxSSVNDVjY0QXNzZW1ibGVyOjpGQ1ZUVHlwZTo6
UywgUklTQ1Y2NEFzc2VtYmxlcjo6RkNWVFR5cGU6Olc+KGRlc3QsIHNyYyk7CisgICAgfQorCisg
ICAgdm9pZCBjb252ZXJ0SW50MzJUb0RvdWJsZShSZWdpc3RlcklEIHNyYywgRlBSZWdpc3RlcklE
IGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2VtYmxlci5mY3Z0SW5zbjxSSVNDVjY0QXNzZW1i
bGVyOjpGQ1ZUVHlwZTo6RCwgUklTQ1Y2NEFzc2VtYmxlcjo6RkNWVFR5cGU6Olc+KGRlc3QsIHNy
Yyk7CisgICAgfQorCisgICAgdm9pZCBjb252ZXJ0SW50MzJUb0RvdWJsZShUcnVzdGVkSW1tMzIg
aW1tLCBGUFJlZ2lzdGVySUQgZGVzdCkKKyAgICB7CisgICAgICAgIGF1dG8gdGVtcCA9IHRlbXBz
PERhdGE+KCk7CisgICAgICAgIGxvYWRJbW1lZGlhdGUoaW1tLCB0ZW1wLmRhdGEoKSk7CisgICAg
ICAgIGNvbnZlcnRJbnQzMlRvRG91YmxlKHRlbXAuZGF0YSgpLCBkZXN0KTsKKyAgICB9CisKKyAg
ICB2b2lkIGNvbnZlcnRJbnQ2NFRvRmxvYXQoUmVnaXN0ZXJJRCBzcmMsIEZQUmVnaXN0ZXJJRCBk
ZXN0KQorICAgIHsKKyAgICAgICAgbV9hc3NlbWJsZXIuZmN2dEluc248UklTQ1Y2NEFzc2VtYmxl
cjo6RkNWVFR5cGU6OlMsIFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpMPihkZXN0LCBzcmMp
OworICAgIH0KKworICAgIHZvaWQgY29udmVydEludDY0VG9Eb3VibGUoUmVnaXN0ZXJJRCBzcmMs
IEZQUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgbV9hc3NlbWJsZXIuZmN2dEluc248
UklTQ1Y2NEFzc2VtYmxlcjo6RkNWVFR5cGU6OkQsIFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBl
OjpMPihkZXN0LCBzcmMpOworICAgIH0KKworICAgIHZvaWQgY29udmVydFVJbnQ2NFRvRmxvYXQo
UmVnaXN0ZXJJRCBzcmMsIEZQUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgbV9hc3Nl
bWJsZXIuZmN2dEluc248UklTQ1Y2NEFzc2VtYmxlcjo6RkNWVFR5cGU6OlMsIFJJU0NWNjRBc3Nl
bWJsZXI6OkZDVlRUeXBlOjpMVT4oZGVzdCwgc3JjKTsKKyAgICB9CisKKyAgICB2b2lkIGNvbnZl
cnRVSW50NjRUb0RvdWJsZShSZWdpc3RlcklEIHNyYywgRlBSZWdpc3RlcklEIGRlc3QpCisgICAg
eworICAgICAgICBtX2Fzc2VtYmxlci5mY3Z0SW5zbjxSSVNDVjY0QXNzZW1ibGVyOjpGQ1ZUVHlw
ZTo6RCwgUklTQ1Y2NEFzc2VtYmxlcjo6RkNWVFR5cGU6OkxVPihkZXN0LCBzcmMpOworICAgIH0K
KworICAgIHZvaWQgY29udmVydEZsb2F0VG9Eb3VibGUoRlBSZWdpc3RlcklEIHNyYywgRlBSZWdp
c3RlcklEIGRlc3QpCisgICAgeworICAgICAgICBhdXRvIHRlbXAgPSB0ZW1wczxEYXRhPigpOwor
ICAgICAgICBtX2Fzc2VtYmxlci5mbXZJbnNuPFJJU0NWNjRBc3NlbWJsZXI6OkZNVlR5cGU6Olgs
IFJJU0NWNjRBc3NlbWJsZXI6OkZNVlR5cGU6Olc+KHRlbXAuZGF0YSgpLCBzcmMpOworICAgICAg
ICBtX2Fzc2VtYmxlci5mbXZJbnNuPFJJU0NWNjRBc3NlbWJsZXI6OkZNVlR5cGU6OlcsIFJJU0NW
NjRBc3NlbWJsZXI6OkZNVlR5cGU6Olg+KGRlc3QsIHRlbXAuZGF0YSgpKTsKKyAgICAgICAgbV9h
c3NlbWJsZXIuZmN2dEluc248UklTQ1Y2NEFzc2VtYmxlcjo6RkNWVFR5cGU6OkQsIFJJU0NWNjRB
c3NlbWJsZXI6OkZDVlRUeXBlOjpTPihkZXN0LCBkZXN0KTsKKyAgICB9CisKKyAgICB2b2lkIGNv
bnZlcnREb3VibGVUb0Zsb2F0KEZQUmVnaXN0ZXJJRCBzcmMsIEZQUmVnaXN0ZXJJRCBkZXN0KQor
ICAgIHsKKyAgICAgICAgbV9hc3NlbWJsZXIuZmN2dEluc248UklTQ1Y2NEFzc2VtYmxlcjo6RkNW
VFR5cGU6OlMsIFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpEPihkZXN0LCBzcmMpOworICAg
IH0KKworICAgIHZvaWQgdHJ1bmNhdGVGbG9hdFRvSW50MzIoRlBSZWdpc3RlcklEIHNyYywgUmVn
aXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgbV9hc3NlbWJsZXIuZmN2dEluc248UklTQ1Y2
NEFzc2VtYmxlcjo6RlBSb3VuZGluZ01vZGU6OlJUWiwgUklTQ1Y2NEFzc2VtYmxlcjo6RkNWVFR5
cGU6OlcsIFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpTPihkZXN0LCBzcmMpOworICAgICAg
ICBtX2Fzc2VtYmxlci5tYXNrUmVnaXN0ZXI8MzI+KGRlc3QpOworICAgIH0KKworICAgIHZvaWQg
dHJ1bmNhdGVGbG9hdFRvVWludDMyKEZQUmVnaXN0ZXJJRCBzcmMsIFJlZ2lzdGVySUQgZGVzdCkK
KyAgICB7CisgICAgICAgIG1fYXNzZW1ibGVyLmZjdnRJbnNuPFJJU0NWNjRBc3NlbWJsZXI6OkZQ
Um91bmRpbmdNb2RlOjpSVFosIFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpXVSwgUklTQ1Y2
NEFzc2VtYmxlcjo6RkNWVFR5cGU6OlM+KGRlc3QsIHNyYyk7CisgICAgICAgIG1fYXNzZW1ibGVy
Lm1hc2tSZWdpc3RlcjwzMj4oZGVzdCk7CisgICAgfQorCisgICAgdm9pZCB0cnVuY2F0ZUZsb2F0
VG9JbnQ2NChGUFJlZ2lzdGVySUQgc3JjLCBSZWdpc3RlcklEIGRlc3QpCisgICAgeworICAgICAg
ICBtX2Fzc2VtYmxlci5mY3Z0SW5zbjxSSVNDVjY0QXNzZW1ibGVyOjpGUFJvdW5kaW5nTW9kZTo6
UlRaLCBSSVNDVjY0QXNzZW1ibGVyOjpGQ1ZUVHlwZTo6TCwgUklTQ1Y2NEFzc2VtYmxlcjo6RkNW
VFR5cGU6OlM+KGRlc3QsIHNyYyk7CisgICAgfQorCisgICAgdm9pZCB0cnVuY2F0ZUZsb2F0VG9V
aW50NjQoRlBSZWdpc3RlcklEIHNyYywgUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAg
bV9hc3NlbWJsZXIuZmN2dEluc248UklTQ1Y2NEFzc2VtYmxlcjo6RlBSb3VuZGluZ01vZGU6OlJU
WiwgUklTQ1Y2NEFzc2VtYmxlcjo6RkNWVFR5cGU6OkxVLCBSSVNDVjY0QXNzZW1ibGVyOjpGQ1ZU
VHlwZTo6Uz4oZGVzdCwgc3JjKTsKKyAgICB9CisKKyAgICB2b2lkIHRydW5jYXRlRmxvYXRUb1Vp
bnQ2NChGUFJlZ2lzdGVySUQgc3JjLCBSZWdpc3RlcklEIGRlc3QsIEZQUmVnaXN0ZXJJRCwgRlBS
ZWdpc3RlcklEKQorICAgIHsKKyAgICAgICAgdHJ1bmNhdGVGbG9hdFRvVWludDY0KHNyYywgZGVz
dCk7CisgICAgfQorCisgICAgdm9pZCB0cnVuY2F0ZURvdWJsZVRvSW50MzIoRlBSZWdpc3RlcklE
IHNyYywgUmVnaXN0ZXJJRCBkZXN0KQorICAgIHsKKyAgICAgICAgbV9hc3NlbWJsZXIuZmN2dElu
c248UklTQ1Y2NEFzc2VtYmxlcjo6RlBSb3VuZGluZ01vZGU6OlJUWiwgUklTQ1Y2NEFzc2VtYmxl
cjo6RkNWVFR5cGU6OlcsIFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpEPihkZXN0LCBzcmMp
OworICAgICAgICBtX2Fzc2VtYmxlci5tYXNrUmVnaXN0ZXI8MzI+KGRlc3QpOworICAgIH0KKwor
ICAgIHZvaWQgdHJ1bmNhdGVEb3VibGVUb1VpbnQzMihGUFJlZ2lzdGVySUQgc3JjLCBSZWdpc3Rl
cklEIGRlc3QpCisgICAgeworICAgICAgICBtX2Fzc2VtYmxlci5mY3Z0SW5zbjxSSVNDVjY0QXNz
ZW1ibGVyOjpGUFJvdW5kaW5nTW9kZTo6UlRaLCBSSVNDVjY0QXNzZW1ibGVyOjpGQ1ZUVHlwZTo6
V1UsIFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpEPihkZXN0LCBzcmMpOworICAgICAgICBt
X2Fzc2VtYmxlci5tYXNrUmVnaXN0ZXI8MzI+KGRlc3QpOworICAgIH0KKworICAgIHZvaWQgdHJ1
bmNhdGVEb3VibGVUb0ludDY0KEZQUmVnaXN0ZXJJRCBzcmMsIFJlZ2lzdGVySUQgZGVzdCkKKyAg
ICB7CisgICAgICAgIG1fYXNzZW1ibGVyLmZjdnRJbnNuPFJJU0NWNjRBc3NlbWJsZXI6OkZQUm91
bmRpbmdNb2RlOjpSVFosIFJJU0NWNjRBc3NlbWJsZXI6OkZDVlRUeXBlOjpMLCBSSVNDVjY0QXNz
ZW1ibGVyOjpGQ1ZUVHlwZTo6RD4oZGVzdCwgc3JjKTsKKyAgICB9CisKKyAgICB2b2lkIHRydW5j
YXRlRG91YmxlVG9VaW50NjQoRlBSZWdpc3RlcklEIHNyYywgUmVnaXN0ZXJJRCBkZXN0KQorICAg
IHsKKyAgICAgICAgbV9hc3NlbWJsZXIuZmN2dEluc248UklTQ1Y2NEFzc2VtYmxlcjo6RlBSb3Vu
ZGluZ01vZGU6OlJUWiwgUklTQ1Y2NEFzc2VtYmxlcjo6RkNWVFR5cGU6OkxVLCBSSVNDVjY0QXNz
ZW1ibGVyOjpGQ1ZUVHlwZTo6RD4oZGVzdCwgc3JjKTsKKyAgICB9CisKKyAgICB2b2lkIHRydW5j
YXRlRG91YmxlVG9VaW50NjQoRlBSZWdpc3RlcklEIHNyYywgUmVnaXN0ZXJJRCBkZXN0LCBGUFJl
Z2lzdGVySUQsIEZQUmVnaXN0ZXJJRCkKKyAgICB7CisgICAgICAgIHRydW5jYXRlRG91YmxlVG9V
aW50NjQoc3JjLCBkZXN0KTsKKyAgICB9CiAKICAgICB2b2lkIHB1c2goUmVnaXN0ZXJJRCBzcmMp
CiAgICAgewo=
</data>

          </attachment>
      

    </bug>

</bugzilla>