<?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>195262</bug_id>
          
          <creation_ts>2019-03-03 12:21:56 -0800</creation_ts>
          <short_desc>Prepare to improve handling of conversion of float to strings</short_desc>
          <delta_ts>2019-03-10 12:43:17 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Template Framework</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>
          
          <blocked>178319</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Darin Adler">darin</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1511974</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2019-03-03 12:21:56 -0800</bug_when>
    <thetext>Prepare to improve handling of conversion of float to strings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511977</commentid>
    <comment_count>1</comment_count>
      <attachid>363467</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2019-03-03 12:37:17 -0800</bug_when>
    <thetext>Created attachment 363467
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1512016</commentid>
    <comment_count>2</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2019-03-03 19:26:59 -0800</bug_when>
    <thetext>Passes tests so ready for review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1512023</commentid>
    <comment_count>3</comment_count>
      <attachid>363467</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2019-03-03 19:52:41 -0800</bug_when>
    <thetext>Comment on attachment 363467
Patch

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

&gt; LayoutTests/ChangeLog:19
&gt; +        useful without this unnecssary dependency. Generally we check the units of the

unnecssary</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1512189</commentid>
    <comment_count>4</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2019-03-04 08:58:38 -0800</bug_when>
    <thetext>Committed r242360: &lt;https://trac.webkit.org/changeset/242360&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1512190</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-03-04 09:00:19 -0800</bug_when>
    <thetext>&lt;rdar://problem/48563452&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>363467</attachid>
            <date>2019-03-03 12:37:17 -0800</date>
            <delta_ts>2019-03-03 19:52:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195262-20190303123717.patch</filename>
            <type>text/plain</type>
            <size>36278</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQyMzE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGIzMWEzYjdkMWFlYTMxOGQ0MzE1ZDJm
YTRhNTEzOGIzNzZjMzQ5ZTQuLjcwM2I2ZjY0ZDYxYmU1YjhiMTQ2Njg5YWM3Y2I4ZDc2MmUyZTE2
YWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsNDkgQEAKKzIwMTktMDMtMDMgIERhcmluIEFkbGVyICA8ZGFyaW5A
YXBwbGUuY29tPgorCisgICAgICAgIFByZXBhcmUgdG8gaW1wcm92ZSBoYW5kbGluZyBvZiBjb252
ZXJzaW9uIG9mIGZsb2F0IHRvIHN0cmluZ3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE5NTI2MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogd3RmL2R0b2EuY3BwOgorICAgICAgICAoV1RGOjp0cnVuY2F0
ZVRyYWlsaW5nWmVyb3MpOiBSZW5hbWVkIGZyb20KKyAgICAgICAgZm9ybWF0U3RyaW5nVHJ1bmNh
dGluZ1RyYWlsaW5nWmVyb3NJZk5lZWRlZCBhbmQgcmVtb3ZlZCB0aGUgY2FsbHMKKyAgICAgICAg
dG8gZG91YmxlX2NvbnZlcnNpb246OlN0cmluZ0J1aWxkZXI6OkZpbmFsaXplciwgc2luY2UgdGhl
IGNhbGxlcgorICAgICAgICBhbHJlYWR5IGRvZXMgdGhhdC4KKyAgICAgICAgKFdURjo6bnVtYmVy
VG9GaXhlZFByZWNpc2lvblN0cmluZyk6IEFkZGVkIGFuIG92ZXJsb2FkIGZvciBmbG9hdAorICAg
ICAgICBhbmQgdXBkYXRlZCB0byB1c2UgdGhlIG5ldyB0cnVuY2F0ZVRyYWlsaW5nWmVyb3MuCisg
ICAgICAgIChXVEY6Om51bWJlclRvRml4ZWRXaWR0aFN0cmluZyk6IEFkZGVkIGFuIG92ZXJsb2Fk
IGZvciBmbG9hdC4KKworICAgICAgICAqIHd0Zi90ZXh0L0F0b21pY1N0cmluZy5jcHA6CisgICAg
ICAgIChXVEY6OkF0b21pY1N0cmluZzo6bnVtYmVyKTogQWRkZWQgZmxvYXQgb3ZlcmxvYWQuIFRo
aXMgaXMgYQorICAgICAgICBiZWhhdmlvciBjaGFuZ2UsIGJ1dCBpbiBhbGwgY2FzZXMgZm9yIHRo
ZSBiZXR0ZXIuIFRoZSBvbGQgYmVoYXZpb3IKKyAgICAgICAgd2FzIHRvIGNvbnZlcnQgdG8gZG91
YmxlIGZpcnN0IGFuZCB0aGVuIGRvICJzaG9ydGVzdCBmb3JtIgorICAgICAgICBjb252ZXJzaW9u
LCBhbmQgaXQncyBhbHdheXMgYmV0dGVyIHRvIGp1c3QgZG8gdGhhdCBhcyBmbG9hdC4KKyAgICAg
ICAgKiB3dGYvdGV4dC9BdG9taWNTdHJpbmcuaDogQWRkZWQgZmxvYXQgb3ZlcmxvYWQgb2YgQXRv
bWljU3RyaW5nOjpudW1iZXIuCisKKyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmNw
cDoKKyAgICAgICAgKFdURjo6U3RyaW5nQnVpbGRlcjo6YXBwZW5kRml4ZWRQcmVjaXNpb25OdW1i
ZXIpOiBBZGRlZCBmbG9hdAorICAgICAgICBvdmVybG9hZC4KKyAgICAgICAgKFdURjo6U3RyaW5n
QnVpbGRlcjo6YXBwZW5kU2hvcnRlc3RGb3JtTnVtYmVyKTogUmVuYW1lZCBmcm9tCisgICAgICAg
IGFwcGVuZEVDTUFTY3JpcHROdW1iZXIgYW5kIGRpZCB0aGUgYWJvdmUuCisgICAgICAgIChXVEY6
OlN0cmluZ0J1aWxkZXI6OmFwcGVuZEZpeGVkV2lkdGhOdW1iZXIpOiBEaXR0by4KKyAgICAgICAg
KiB3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg6IEFkZGVkIG92ZXJsb2FkcyBmb3IgZmxvYXQgYW5k
CisgICAgICAgIGFwcGVuZFNob3J0ZXN0Rm9ybU51bWJlci4gVGhlIGFwcGVuZE51bWJlciBhbmQg
YXBwZW5kRUNNQVNjcmlwdE51bWJlcgorICAgICAgICBmdW5jdGlvbnMgYXJlIG5vdyBpbmxpbmVz
IGluIHRoZSBoZWFkZXIsIHNpbmNlIHRoZXkgYXJlIGV4cHJlc3NlZAorICAgICAgICBlbnRpcmVs
eSBpbiB0ZXJtcyBvZiB0aGUgb3RoZXIgZnVuY3Rpb25zLgorCisgICAgICAgICogd3RmL3RleHQv
V1RGU3RyaW5nLmNwcDoKKyAgICAgICAgKFdURjo6U3RyaW5nOjpudW1iZXJUb1N0cmluZ0ZpeGVk
UHJlY2lzaW9uKTogQWRkZWQgZmxvYXQgb3ZlcmxvYWQuCisgICAgICAgIFJlbW92ZWQgdW5uZWNl
c3NhcnkgZXhwbGljaXQgY29udmVyc2lvbiB0byBTdHJpbmcuCisgICAgICAgIChXVEY6OlN0cmlu
Zzo6bnVtYmVyVG9TdHJpbmdTaG9ydGVzdCk6IFJlbmFtZWQgZnJvbQorICAgICAgICBudW1iZXJU
b1N0cmluZ0VDTUFTY3JpcHQgYW5kIGRpZCB0aGUgYWJvdmUuCisgICAgICAgIChXVEY6OlN0cmlu
Zzo6bnVtYmVyVG9TdHJpbmdGaXhlZFdpZHRoKTogRGl0dG8uCisKKyAgICAgICAgKiB3dGYvdGV4
dC9XVEZTdHJpbmcuaDogQWRkZWQgb3ZlcmxvYWRzIGZvciBmbG9hdCBhbmQKKyAgICAgICAgbnVt
YmVyVG9TdHJpbmdTaG9ydGVzdC4gVGhlIG51bWJlciBhbmQgbnVtYmVyVG9TdHJpbmdFQ01BU2Ny
aXB0CisgICAgICAgIGZ1bmN0aW9ucyBhcmUgbm93IGlubGluZXMgaW4gdGhlIGhlYWRlciwgc2lu
Y2UgdGhleSBhcmUgZXhwcmVzc2VkCisgICAgICAgIGVudGlyZWx5IGluIHRlcm1zIG9mIHRoZSBv
dGhlciBmdW5jdGlvbnMuCisKIDIwMTktMDItMjcgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUu
Y29tPgogCiAgICAgICAgIEZpeGVkIG1ha2VTdHJpbmcoZmxvYXQpIHRvIGRvIHNob3J0ZXN0LWZv
cm0gc2VyaWFsaXphdGlvbiB3aXRob3V0IGZpcnN0IGNvbnZlcnRpbmcgdG8gZG91YmxlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9kdG9hLmNwcCBiL1NvdXJjZS9XVEYvd3RmL2R0b2EuY3Bw
CmluZGV4IGY5MTA1MWVhMTUzMGFmYjcyMjNkZjFjNWU4YzY0YzI0NzVjNDExMGMuLjNkMzE3ZGUw
ZTNiYTBhNDI4OTVlMmJkYzc2YjRlY2MxZDk4YWI1M2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYv
d3RmL2R0b2EuY3BwCisrKyBiL1NvdXJjZS9XVEYvd3RmL2R0b2EuY3BwCkBAIC0xMTQ0LDcgKzEx
NDQsNyBAQCBjb25zdCBjaGFyKiBudW1iZXJUb1N0cmluZyhkb3VibGUgZCwgTnVtYmVyVG9TdHJp
bmdCdWZmZXImIGJ1ZmZlcikKICAgICByZXR1cm4gYnVpbGRlci5GaW5hbGl6ZSgpOwogfQogCi1z
dGF0aWMgaW5saW5lIGNvbnN0IGNoYXIqIGZvcm1hdFN0cmluZ1RydW5jYXRpbmdUcmFpbGluZ1pl
cm9zSWZOZWVkZWQoTnVtYmVyVG9TdHJpbmdCdWZmZXImIGJ1ZmZlciwgZG91YmxlX2NvbnZlcnNp
b246OlN0cmluZ0J1aWxkZXImIGJ1aWxkZXIpCitzdGF0aWMgaW5saW5lIHZvaWQgdHJ1bmNhdGVU
cmFpbGluZ1plcm9zKE51bWJlclRvU3RyaW5nQnVmZmVyJiBidWZmZXIsIGRvdWJsZV9jb252ZXJz
aW9uOjpTdHJpbmdCdWlsZGVyJiBidWlsZGVyKQogewogICAgIHNpemVfdCBsZW5ndGggPSBidWls
ZGVyLnBvc2l0aW9uKCk7CiAgICAgc2l6ZV90IGRlY2ltYWxQb2ludFBvc2l0aW9uID0gMDsKQEAg
LTExNTUsNyArMTE1NSw3IEBAIHN0YXRpYyBpbmxpbmUgY29uc3QgY2hhciogZm9ybWF0U3RyaW5n
VHJ1bmNhdGluZ1RyYWlsaW5nWmVyb3NJZk5lZWRlZChOdW1iZXJUb1N0CiAKICAgICAvLyBObyBk
ZWNpbWFsIHNlcGFyYXRvciBmb3VuZCwgZWFybHkgZXhpdC4KICAgICBpZiAoZGVjaW1hbFBvaW50
UG9zaXRpb24gPT0gbGVuZ3RoKQotICAgICAgICByZXR1cm4gYnVpbGRlci5GaW5hbGl6ZSgpOwor
ICAgICAgICByZXR1cm47CiAKICAgICBzaXplX3QgcGFzdE1hbnRpc3NhID0gZGVjaW1hbFBvaW50
UG9zaXRpb24gKyAxOwogICAgIGZvciAoOyBwYXN0TWFudGlzc2EgPCBsZW5ndGg7ICsrcGFzdE1h
bnRpc3NhKSB7CkBAIC0xMTcxLDcgKzExNzEsNyBAQCBzdGF0aWMgaW5saW5lIGNvbnN0IGNoYXIq
IGZvcm1hdFN0cmluZ1RydW5jYXRpbmdUcmFpbGluZ1plcm9zSWZOZWVkZWQoTnVtYmVyVG9TdAog
CiAgICAgLy8gTm8gdHJhaWxpbmcgemVyb3MgZm91bmQgdG8gc3RyaXAuCiAgICAgaWYgKHRydW5j
YXRlZExlbmd0aCA9PSBwYXN0TWFudGlzc2EpCi0gICAgICAgIHJldHVybiBidWlsZGVyLkZpbmFs
aXplKCk7CisgICAgICAgIHJldHVybjsKIAogICAgIC8vIElmIHdlIHJlbW92ZWQgYWxsIHRyYWls
aW5nIHplcm9zLCByZW1vdmUgdGhlIGRlY2ltYWwgcG9pbnQgYXMgd2VsbC4KICAgICBpZiAodHJ1
bmNhdGVkTGVuZ3RoID09IGRlY2ltYWxQb2ludFBvc2l0aW9uICsgMSkKQEAgLTExNzksMTIgKzEx
NzksMTggQEAgc3RhdGljIGlubGluZSBjb25zdCBjaGFyKiBmb3JtYXRTdHJpbmdUcnVuY2F0aW5n
VHJhaWxpbmdaZXJvc0lmTmVlZGVkKE51bWJlclRvU3QKIAogICAgIC8vIFRydW5jYXRlIHRoZSBt
YW50aXNzYSwgYW5kIHJldHVybiB0aGUgZmluYWwgcmVzdWx0LgogICAgIGJ1aWxkZXIuUmVtb3Zl
Q2hhcmFjdGVycyh0cnVuY2F0ZWRMZW5ndGgsIHBhc3RNYW50aXNzYSk7Ci0gICAgcmV0dXJuIGJ1
aWxkZXIuRmluYWxpemUoKTsKIH0KIAotY29uc3QgY2hhciogbnVtYmVyVG9GaXhlZFByZWNpc2lv
blN0cmluZyhkb3VibGUgZCwgdW5zaWduZWQgc2lnbmlmaWNhbnRGaWd1cmVzLCBOdW1iZXJUb1N0
cmluZ0J1ZmZlciYgYnVmZmVyLCBib29sIHRydW5jYXRlVHJhaWxpbmdaZXJvcykKK2NvbnN0IGNo
YXIqIG51bWJlclRvRml4ZWRQcmVjaXNpb25TdHJpbmcoZmxvYXQgbnVtYmVyLCB1bnNpZ25lZCBz
aWduaWZpY2FudEZpZ3VyZXMsIE51bWJlclRvU3RyaW5nQnVmZmVyJiBidWZmZXIsIGJvb2wgc2hv
dWxkVHJ1bmNhdGVUcmFpbGluZ1plcm9zKQoreworICAgIC8vIEZvciBub3csIGp1c3QgY2FsbCB0
aGUgZG91YmxlIHByZWNpc2lvbiB2ZXJzaW9uLgorICAgIC8vIERvIHRoYXQgaGVyZSBpbnN0ZWFk
IG9mIGF0IGNhbGxlcnMgdG8gcGF2ZSB0aGUgd2F5IHRvIGFkZCBhIG1vcmUgZWZmaWNpZW50IGNv
ZGUgcGF0aCBsYXRlci4KKyAgICByZXR1cm4gbnVtYmVyVG9GaXhlZFByZWNpc2lvblN0cmluZyhz
dGF0aWNfY2FzdDxkb3VibGU+KG51bWJlciksIHNpZ25pZmljYW50RmlndXJlcywgYnVmZmVyLCBz
aG91bGRUcnVuY2F0ZVRyYWlsaW5nWmVyb3MpOworfQorCitjb25zdCBjaGFyKiBudW1iZXJUb0Zp
eGVkUHJlY2lzaW9uU3RyaW5nKGRvdWJsZSBkLCB1bnNpZ25lZCBzaWduaWZpY2FudEZpZ3VyZXMs
IE51bWJlclRvU3RyaW5nQnVmZmVyJiBidWZmZXIsIGJvb2wgc2hvdWxkVHJ1bmNhdGVUcmFpbGlu
Z1plcm9zKQogewotICAgIC8vIE1pbWljIHNwcmludGYoIiUuW3ByZWNpc2lvbl1nIiwgLi4uKSwg
YnV0IHVzZSBkdG9hcyByb3VuZGluZyBmYWNpbGl0aWVzLgorICAgIC8vIE1pbWljIHNwcmludGYo
IiUuW3ByZWNpc2lvbl1nIiwgLi4uKS4KICAgICAvLyAiZyI6IFNpZ25lZCB2YWx1ZSBwcmludGVk
IGluIGYgb3IgZSBmb3JtYXQsIHdoaWNoZXZlciBpcyBtb3JlIGNvbXBhY3QgZm9yIHRoZSBnaXZl
biB2YWx1ZSBhbmQgcHJlY2lzaW9uLgogICAgIC8vIFRoZSBlIGZvcm1hdCBpcyB1c2VkIG9ubHkg
d2hlbiB0aGUgZXhwb25lbnQgb2YgdGhlIHZhbHVlIGlzIGxlc3MgdGhhbiDigJM0IG9yIGdyZWF0
ZXIgdGhhbiBvciBlcXVhbCB0byB0aGUKICAgICAvLyBwcmVjaXNpb24gYXJndW1lbnQuIFRyYWls
aW5nIHplcm9zIGFyZSB0cnVuY2F0ZWQsIGFuZCB0aGUgZGVjaW1hbCBwb2ludCBhcHBlYXJzIG9u
bHkgaWYgb25lIG9yIG1vcmUgZGlnaXRzIGZvbGxvdyBpdC4KQEAgLTExOTIsMTQgKzExOTgsMjEg
QEAgY29uc3QgY2hhciogbnVtYmVyVG9GaXhlZFByZWNpc2lvblN0cmluZyhkb3VibGUgZCwgdW5z
aWduZWQgc2lnbmlmaWNhbnRGaWd1cmVzLAogICAgIGRvdWJsZV9jb252ZXJzaW9uOjpTdHJpbmdC
dWlsZGVyIGJ1aWxkZXIoJmJ1ZmZlclswXSwgc2l6ZW9mKGJ1ZmZlcikpOwogICAgIGF1dG8mIGNv
bnZlcnRlciA9IGRvdWJsZV9jb252ZXJzaW9uOjpEb3VibGVUb1N0cmluZ0NvbnZlcnRlcjo6RWNt
YVNjcmlwdENvbnZlcnRlcigpOwogICAgIGNvbnZlcnRlci5Ub1ByZWNpc2lvbihkLCBzaWduaWZp
Y2FudEZpZ3VyZXMsICZidWlsZGVyKTsKLSAgICBpZiAoIXRydW5jYXRlVHJhaWxpbmdaZXJvcykK
LSAgICAgICAgcmV0dXJuIGJ1aWxkZXIuRmluYWxpemUoKTsKLSAgICByZXR1cm4gZm9ybWF0U3Ry
aW5nVHJ1bmNhdGluZ1RyYWlsaW5nWmVyb3NJZk5lZWRlZChidWZmZXIsIGJ1aWxkZXIpOworICAg
IGlmIChzaG91bGRUcnVuY2F0ZVRyYWlsaW5nWmVyb3MpCisgICAgICAgIHRydW5jYXRlVHJhaWxp
bmdaZXJvcyhidWZmZXIsIGJ1aWxkZXIpOworICAgIHJldHVybiBidWlsZGVyLkZpbmFsaXplKCk7
Cit9CisKK2NvbnN0IGNoYXIqIG51bWJlclRvRml4ZWRXaWR0aFN0cmluZyhmbG9hdCBudW1iZXIs
IHVuc2lnbmVkIGRlY2ltYWxQbGFjZXMsIE51bWJlclRvU3RyaW5nQnVmZmVyJiBidWZmZXIpCit7
CisgICAgLy8gRm9yIG5vdywganVzdCBjYWxsIHRoZSBkb3VibGUgcHJlY2lzaW9uIHZlcnNpb24u
CisgICAgLy8gRG8gdGhhdCBoZXJlIGluc3RlYWQgb2YgYXQgY2FsbGVycyB0byBwYXZlIHRoZSB3
YXkgdG8gYWRkIGEgbW9yZSBlZmZpY2llbnQgY29kZSBwYXRoIGxhdGVyLgorICAgIHJldHVybiBu
dW1iZXJUb0ZpeGVkV2lkdGhTdHJpbmcoc3RhdGljX2Nhc3Q8ZG91YmxlPihudW1iZXIpLCBkZWNp
bWFsUGxhY2VzLCBidWZmZXIpOwogfQogCiBjb25zdCBjaGFyKiBudW1iZXJUb0ZpeGVkV2lkdGhT
dHJpbmcoZG91YmxlIGQsIHVuc2lnbmVkIGRlY2ltYWxQbGFjZXMsIE51bWJlclRvU3RyaW5nQnVm
ZmVyJiBidWZmZXIpCiB7Ci0gICAgLy8gTWltaWMgc3ByaW50ZigiJS5bcHJlY2lzaW9uXWYiLCAu
Li4pLCBidXQgdXNlIGR0b2FzIHJvdW5kaW5nIGZhY2lsaXRpZXMuCisgICAgLy8gTWltaWMgc3By
aW50ZigiJS5bcHJlY2lzaW9uXWYiLCAuLi4pLgogICAgIC8vICJmIjogU2lnbmVkIHZhbHVlIGhh
dmluZyB0aGUgZm9ybSBbIOKAkyBdZGRkZC5kZGRkLCB3aGVyZSBkZGRkIGlzIG9uZSBvciBtb3Jl
IGRlY2ltYWwgZGlnaXRzLgogICAgIC8vIFRoZSBudW1iZXIgb2YgZGlnaXRzIGJlZm9yZSB0aGUg
ZGVjaW1hbCBwb2ludCBkZXBlbmRzIG9uIHRoZSBtYWduaXR1ZGUgb2YgdGhlIG51bWJlciwgYW5k
CiAgICAgLy8gdGhlIG51bWJlciBvZiBkaWdpdHMgYWZ0ZXIgdGhlIGRlY2ltYWwgcG9pbnQgZGVw
ZW5kcyBvbiB0aGUgcmVxdWVzdGVkIHByZWNpc2lvbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYv
d3RmL3RleHQvQXRvbWljU3RyaW5nLmNwcCBiL1NvdXJjZS9XVEYvd3RmL3RleHQvQXRvbWljU3Ry
aW5nLmNwcAppbmRleCBiM2JkNDkwYmQ1M2E0MmViZWI4ODE3MGI1YjlhNjMyMzQzNGEzN2Q0Li5m
YmE3YzlhNzc0MDcyODY5ZjU4NTQ5ZDNhNTExN2FlYTg5NmQ3YmY3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZy5jcHAKKysrIGIvU291cmNlL1dURi93dGYvdGV4
dC9BdG9taWNTdHJpbmcuY3BwCkBAIC0xMDEsNiArMTAxLDEyIEBAIEF0b21pY1N0cmluZyBBdG9t
aWNTdHJpbmc6Om51bWJlcih1bnNpZ25lZCBsb25nIGxvbmcgbnVtYmVyKQogICAgIHJldHVybiBu
dW1iZXJUb1N0cmluZ1Vuc2lnbmVkPEF0b21pY1N0cmluZz4obnVtYmVyKTsKIH0KIAorQXRvbWlj
U3RyaW5nIEF0b21pY1N0cmluZzo6bnVtYmVyKGZsb2F0IG51bWJlcikKK3sKKyAgICBOdW1iZXJU
b1N0cmluZ0J1ZmZlciBidWZmZXI7CisgICAgcmV0dXJuIG51bWJlclRvU3RyaW5nKG51bWJlciwg
YnVmZmVyKTsKK30KKwogQXRvbWljU3RyaW5nIEF0b21pY1N0cmluZzo6bnVtYmVyKGRvdWJsZSBu
dW1iZXIpCiB7CiAgICAgTnVtYmVyVG9TdHJpbmdCdWZmZXIgYnVmZmVyOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dURi93dGYvdGV4dC9BdG9taWNTdHJpbmcuaCBiL1NvdXJjZS9XVEYvd3RmL3RleHQv
QXRvbWljU3RyaW5nLmgKaW5kZXggZTM5NjYxMjAzNGI4MDU1MWQxOTNjN2Y4MTM2YmIyZTkxZThm
MGNmYi4uN2Q3NDUwMjczZTVmMWM5MGEzNzA1MTQ5OWQ5Mzk4OGNmZWJhYTJhNCAxMDA2NDQKLS0t
IGEvU291cmNlL1dURi93dGYvdGV4dC9BdG9taWNTdHJpbmcuaAorKysgYi9Tb3VyY2UvV1RGL3d0
Zi90ZXh0L0F0b21pY1N0cmluZy5oCkBAIC0xMDcsNiArMTA3LDcgQEAgcHVibGljOgogICAgIFdU
Rl9FWFBPUlRfUFJJVkFURSBzdGF0aWMgQXRvbWljU3RyaW5nIG51bWJlcih1bnNpZ25lZCk7CiAg
ICAgV1RGX0VYUE9SVF9QUklWQVRFIHN0YXRpYyBBdG9taWNTdHJpbmcgbnVtYmVyKHVuc2lnbmVk
IGxvbmcpOwogICAgIFdURl9FWFBPUlRfUFJJVkFURSBzdGF0aWMgQXRvbWljU3RyaW5nIG51bWJl
cih1bnNpZ25lZCBsb25nIGxvbmcpOworICAgIFdURl9FWFBPUlRfUFJJVkFURSBzdGF0aWMgQXRv
bWljU3RyaW5nIG51bWJlcihmbG9hdCk7CiAgICAgV1RGX0VYUE9SVF9QUklWQVRFIHN0YXRpYyBB
dG9taWNTdHJpbmcgbnVtYmVyKGRvdWJsZSk7CiAgICAgLy8gSWYgd2UgbmVlZCBtb3JlIG92ZXJs
b2FkcyBvZiB0aGUgbnVtYmVyIGZ1bmN0aW9uLCB3ZSBjYW4gYWRkIGFsbCB0aGUgb3RoZXJzIHRo
YXQgU3RyaW5nIGhhcywgYnV0IHRoZXNlIHNlZW0gdG8gZG8gZm9yIG5vdy4KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmNwcCBiL1NvdXJjZS9XVEYvd3Rm
L3RleHQvU3RyaW5nQnVpbGRlci5jcHAKaW5kZXggN2Q3MTA5NzFmYmQ1ZWRiMWFmNDJkNWZlZTQx
ZDJhMjYxNmJlZDM5MS4uYmUxY2NjNzY0MzY4NTk2YWQxOWU3OTY1ODU2ODNmNWY1MTgwZDIxZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmNwcAorKysgYi9T
b3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuY3BwCkBAIC0zNzgsNyArMzc4LDcgQEAg
dm9pZCBTdHJpbmdCdWlsZGVyOjphcHBlbmROdW1iZXIoaW50IG51bWJlcikKICAgICBudW1iZXJU
b1N0cmluZ1NpZ25lZDxTdHJpbmdCdWlsZGVyPihudW1iZXIsIHRoaXMpOwogfQogCi12b2lkIFN0
cmluZ0J1aWxkZXI6OmFwcGVuZE51bWJlcih1bnNpZ25lZCBpbnQgbnVtYmVyKQordm9pZCBTdHJp
bmdCdWlsZGVyOjphcHBlbmROdW1iZXIodW5zaWduZWQgbnVtYmVyKQogewogICAgIG51bWJlclRv
U3RyaW5nVW5zaWduZWQ8U3RyaW5nQnVpbGRlcj4obnVtYmVyLCB0aGlzKTsKIH0KQEAgLTQwMywx
OCArNDAzLDM2IEBAIHZvaWQgU3RyaW5nQnVpbGRlcjo6YXBwZW5kTnVtYmVyKHVuc2lnbmVkIGxv
bmcgbG9uZyBudW1iZXIpCiAgICAgbnVtYmVyVG9TdHJpbmdVbnNpZ25lZDxTdHJpbmdCdWlsZGVy
PihudW1iZXIsIHRoaXMpOwogfQogCi12b2lkIFN0cmluZ0J1aWxkZXI6OmFwcGVuZE51bWJlcihk
b3VibGUgbnVtYmVyLCB1bnNpZ25lZCBwcmVjaXNpb24sIFRyYWlsaW5nWmVyb3NUcnVuY2F0aW5n
UG9saWN5IHRyYWlsaW5nWmVyb3NUcnVuY2F0aW5nUG9saWN5KQordm9pZCBTdHJpbmdCdWlsZGVy
OjphcHBlbmRGaXhlZFByZWNpc2lvbk51bWJlcihmbG9hdCBudW1iZXIsIHVuc2lnbmVkIHByZWNp
c2lvbiwgVHJhaWxpbmdaZXJvc1RydW5jYXRpbmdQb2xpY3kgcG9saWN5KQogewogICAgIE51bWJl
clRvU3RyaW5nQnVmZmVyIGJ1ZmZlcjsKLSAgICBhcHBlbmQobnVtYmVyVG9GaXhlZFByZWNpc2lv
blN0cmluZyhudW1iZXIsIHByZWNpc2lvbiwgYnVmZmVyLCB0cmFpbGluZ1plcm9zVHJ1bmNhdGlu
Z1BvbGljeSA9PSBUcnVuY2F0ZVRyYWlsaW5nWmVyb3MpKTsKKyAgICBhcHBlbmQobnVtYmVyVG9G
aXhlZFByZWNpc2lvblN0cmluZyhudW1iZXIsIHByZWNpc2lvbiwgYnVmZmVyLCBwb2xpY3kgPT0g
VHJ1bmNhdGVUcmFpbGluZ1plcm9zKSk7CiB9CiAKLXZvaWQgU3RyaW5nQnVpbGRlcjo6YXBwZW5k
RUNNQVNjcmlwdE51bWJlcihkb3VibGUgbnVtYmVyKQordm9pZCBTdHJpbmdCdWlsZGVyOjphcHBl
bmRGaXhlZFByZWNpc2lvbk51bWJlcihkb3VibGUgbnVtYmVyLCB1bnNpZ25lZCBwcmVjaXNpb24s
IFRyYWlsaW5nWmVyb3NUcnVuY2F0aW5nUG9saWN5IHBvbGljeSkKK3sKKyAgICBOdW1iZXJUb1N0
cmluZ0J1ZmZlciBidWZmZXI7CisgICAgYXBwZW5kKG51bWJlclRvRml4ZWRQcmVjaXNpb25TdHJp
bmcobnVtYmVyLCBwcmVjaXNpb24sIGJ1ZmZlciwgcG9saWN5ID09IFRydW5jYXRlVHJhaWxpbmda
ZXJvcykpOworfQorCit2b2lkIFN0cmluZ0J1aWxkZXI6OmFwcGVuZFNob3J0ZXN0Rm9ybU51bWJl
cihmbG9hdCBudW1iZXIpCit7CisgICAgTnVtYmVyVG9TdHJpbmdCdWZmZXIgYnVmZmVyOworICAg
IGFwcGVuZChudW1iZXJUb1N0cmluZyhudW1iZXIsIGJ1ZmZlcikpOworfQorCit2b2lkIFN0cmlu
Z0J1aWxkZXI6OmFwcGVuZFNob3J0ZXN0Rm9ybU51bWJlcihkb3VibGUgbnVtYmVyKQogewogICAg
IE51bWJlclRvU3RyaW5nQnVmZmVyIGJ1ZmZlcjsKICAgICBhcHBlbmQobnVtYmVyVG9TdHJpbmco
bnVtYmVyLCBidWZmZXIpKTsKIH0KIAordm9pZCBTdHJpbmdCdWlsZGVyOjphcHBlbmRGaXhlZFdp
ZHRoTnVtYmVyKGZsb2F0IG51bWJlciwgdW5zaWduZWQgZGVjaW1hbFBsYWNlcykKK3sKKyAgICBO
dW1iZXJUb1N0cmluZ0J1ZmZlciBidWZmZXI7CisgICAgYXBwZW5kKG51bWJlclRvRml4ZWRXaWR0
aFN0cmluZyhudW1iZXIsIGRlY2ltYWxQbGFjZXMsIGJ1ZmZlcikpOworfQorCiB2b2lkIFN0cmlu
Z0J1aWxkZXI6OmFwcGVuZEZpeGVkV2lkdGhOdW1iZXIoZG91YmxlIG51bWJlciwgdW5zaWduZWQg
ZGVjaW1hbFBsYWNlcykKIHsKICAgICBOdW1iZXJUb1N0cmluZ0J1ZmZlciBidWZmZXI7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaCBiL1NvdXJjZS9XVEYv
d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oCmluZGV4IGM3YzdmNTc5ZGYyMWU2NGFlZmM5NDViZTVi
ZWZhODk5MzdmNTQ1NDguLmRhOGFkMjY1N2U4M2ExODFhMWFhNDI0OTY3NDQwZTY5OWQxN2MxNzcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nQnVpbGRlci5oCisrKyBiL1Nv
dXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nQnVpbGRlci5oCkBAIC0yMTYsMTUgKzIxNiwyNiBAQCBw
dWJsaWM6CiAgICAgQUxXQVlTX0lOTElORSB2b2lkIGFwcGVuZExpdGVyYWwoY29uc3QgY2hhciAo
JmNoYXJhY3RlcnMpW2NoYXJhY3RlckNvdW50XSkgeyBhcHBlbmQoY2hhcmFjdGVycywgY2hhcmFj
dGVyQ291bnQgLSAxKTsgfQogCiAgICAgV1RGX0VYUE9SVF9QUklWQVRFIHZvaWQgYXBwZW5kTnVt
YmVyKGludCk7Ci0gICAgV1RGX0VYUE9SVF9QUklWQVRFIHZvaWQgYXBwZW5kTnVtYmVyKHVuc2ln
bmVkIGludCk7CisgICAgV1RGX0VYUE9SVF9QUklWQVRFIHZvaWQgYXBwZW5kTnVtYmVyKHVuc2ln
bmVkKTsKICAgICBXVEZfRVhQT1JUX1BSSVZBVEUgdm9pZCBhcHBlbmROdW1iZXIobG9uZyk7CiAg
ICAgV1RGX0VYUE9SVF9QUklWQVRFIHZvaWQgYXBwZW5kTnVtYmVyKHVuc2lnbmVkIGxvbmcpOwog
ICAgIFdURl9FWFBPUlRfUFJJVkFURSB2b2lkIGFwcGVuZE51bWJlcihsb25nIGxvbmcpOwogICAg
IFdURl9FWFBPUlRfUFJJVkFURSB2b2lkIGFwcGVuZE51bWJlcih1bnNpZ25lZCBsb25nIGxvbmcp
OwotICAgIFdURl9FWFBPUlRfUFJJVkFURSB2b2lkIGFwcGVuZE51bWJlcihkb3VibGUsIHVuc2ln
bmVkIHByZWNpc2lvbiA9IDYsIFRyYWlsaW5nWmVyb3NUcnVuY2F0aW5nUG9saWN5ID0gVHJ1bmNh
dGVUcmFpbGluZ1plcm9zKTsKLSAgICBXVEZfRVhQT1JUX1BSSVZBVEUgdm9pZCBhcHBlbmRFQ01B
U2NyaXB0TnVtYmVyKGRvdWJsZSk7CisgICAgLy8gRklYTUU6IENoYW5nZSBhcHBlbmROdW1iZXIg
dG8gYmUgYXBwZW5kU2hvcnRlc3RGb3JtTnVtYmVyIGluc3RlYWQgb2YgYXBwZW5kRml4ZWRQcmVj
aXNpb25OdW1iZXIuCisgICAgdm9pZCBhcHBlbmROdW1iZXIoZmxvYXQpOworICAgIHZvaWQgYXBw
ZW5kTnVtYmVyKGRvdWJsZSwgdW5zaWduZWQgcHJlY2lzaW9uID0gNiwgVHJhaWxpbmdaZXJvc1Ry
dW5jYXRpbmdQb2xpY3kgPSBUcnVuY2F0ZVRyYWlsaW5nWmVyb3MpOworCisgICAgV1RGX0VYUE9S
VF9QUklWQVRFIHZvaWQgYXBwZW5kU2hvcnRlc3RGb3JtTnVtYmVyKGZsb2F0KTsKKyAgICBXVEZf
RVhQT1JUX1BSSVZBVEUgdm9pZCBhcHBlbmRTaG9ydGVzdEZvcm1OdW1iZXIoZG91YmxlKTsKKyAg
ICBXVEZfRVhQT1JUX1BSSVZBVEUgdm9pZCBhcHBlbmRGaXhlZFByZWNpc2lvbk51bWJlcihmbG9h
dCwgdW5zaWduZWQgcHJlY2lzaW9uID0gNiwgVHJhaWxpbmdaZXJvc1RydW5jYXRpbmdQb2xpY3kg
PSBUcnVuY2F0ZVRyYWlsaW5nWmVyb3MpOworICAgIFdURl9FWFBPUlRfUFJJVkFURSB2b2lkIGFw
cGVuZEZpeGVkUHJlY2lzaW9uTnVtYmVyKGRvdWJsZSwgdW5zaWduZWQgcHJlY2lzaW9uID0gNiwg
VHJhaWxpbmdaZXJvc1RydW5jYXRpbmdQb2xpY3kgPSBUcnVuY2F0ZVRyYWlsaW5nWmVyb3MpOwor
ICAgIFdURl9FWFBPUlRfUFJJVkFURSB2b2lkIGFwcGVuZEZpeGVkV2lkdGhOdW1iZXIoZmxvYXQs
IHVuc2lnbmVkIGRlY2ltYWxQbGFjZXMpOwogICAgIFdURl9FWFBPUlRfUFJJVkFURSB2b2lkIGFw
cGVuZEZpeGVkV2lkdGhOdW1iZXIoZG91YmxlLCB1bnNpZ25lZCBkZWNpbWFsUGxhY2VzKTsKIAor
ICAgIC8vIEZJWE1FOiBEZWxldGUgaW4gZmF2b3Igb2YgdGhlIG5hbWUgYXBwZW5kU2hvcnRlc3RG
b3JtTnVtYmVyIG9yIGp1c3QgYXBwZW5kTnVtYmVyLgorICAgIHZvaWQgYXBwZW5kRUNNQVNjcmlw
dE51bWJlcihmbG9hdCk7CisgICAgdm9pZCBhcHBlbmRFQ01BU2NyaXB0TnVtYmVyKGRvdWJsZSk7
CisKICAgICBTdHJpbmcgdG9TdHJpbmcoKQogICAgIHsKICAgICAgICAgaWYgKCFtX3N0cmluZy5p
c051bGwoKSkgewpAQCAtMzgyLDYgKzM5MywyOCBAQCBBTFdBWVNfSU5MSU5FIFVDaGFyKiBTdHJp
bmdCdWlsZGVyOjpnZXRCdWZmZXJDaGFyYWN0ZXJzPFVDaGFyPigpCiAgICAgcmV0dXJuIG1fYnVm
ZmVyQ2hhcmFjdGVyczE2OwogfQogCitpbmxpbmUgdm9pZCBTdHJpbmdCdWlsZGVyOjphcHBlbmRO
dW1iZXIoZmxvYXQgbnVtYmVyKQoreworICAgIGFwcGVuZEZpeGVkUHJlY2lzaW9uTnVtYmVyKG51
bWJlcik7Cit9CisKK2lubGluZSB2b2lkIFN0cmluZ0J1aWxkZXI6OmFwcGVuZE51bWJlcihkb3Vi
bGUgbnVtYmVyLCB1bnNpZ25lZCBwcmVjaXNpb24sIFRyYWlsaW5nWmVyb3NUcnVuY2F0aW5nUG9s
aWN5IHBvbGljeSkKK3sKKyAgICBhcHBlbmRGaXhlZFByZWNpc2lvbk51bWJlcihudW1iZXIsIHBy
ZWNpc2lvbiwgcG9saWN5KTsKK30KKworaW5saW5lIHZvaWQgU3RyaW5nQnVpbGRlcjo6YXBwZW5k
RUNNQVNjcmlwdE51bWJlcihmbG9hdCBudW1iZXIpCit7CisgICAgLy8gRklYTUU6IFRoaXMgcHJl
c2VydmVzIGV4aXN0aW5nIGJlaGF2aW9yIGJ1dCBpcyBub3Qgd2hhdCB3ZSB3YW50LgorICAgIC8v
IEluIHRoZSBmdXR1cmUsIHRoaXMgc2hvdWxkIGVpdGhlciBiZSBhIGNvbXBpbGF0aW9uIGVycm9y
IG9yIGNhbGwgYXBwZW5kU2hvcnRlc3RGb3JtTnVtYmVyIHdpdGhvdXQgY29udmVydGluZyB0byBk
b3VibGUuCisgICAgYXBwZW5kU2hvcnRlc3RGb3JtTnVtYmVyKHN0YXRpY19jYXN0PGRvdWJsZT4o
bnVtYmVyKSk7Cit9CisKK2lubGluZSB2b2lkIFN0cmluZ0J1aWxkZXI6OmFwcGVuZEVDTUFTY3Jp
cHROdW1iZXIoZG91YmxlIG51bWJlcikKK3sKKyAgICBhcHBlbmRTaG9ydGVzdEZvcm1OdW1iZXIo
bnVtYmVyKTsKK30KKwogdGVtcGxhdGUgPHR5cGVuYW1lIENoYXJUeXBlPgogYm9vbCBlcXVhbChj
b25zdCBTdHJpbmdCdWlsZGVyJiBzLCBjb25zdCBDaGFyVHlwZSogYnVmZmVyLCB1bnNpZ25lZCBs
ZW5ndGgpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5jcHAg
Yi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5jcHAKaW5kZXggYjJjMDYxNjNkNjEzOWQ2
NjEyZmI5YjhiNmRhMGFmZTBiNDExMzRkYy4uZGNkNDJjZmI4ZjEwZDVhODU3NGQxNTJlMGYyMzky
ZGUzM2Q4NzgwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuY3Bw
CisrKyBiL1NvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmNwcApAQCAtNDU0LDcgKzQ1NCw3
IEBAIFN0cmluZyBTdHJpbmc6Om51bWJlcihpbnQgbnVtYmVyKQogICAgIHJldHVybiBudW1iZXJU
b1N0cmluZ1NpZ25lZDxTdHJpbmc+KG51bWJlcik7CiB9CiAKLVN0cmluZyBTdHJpbmc6Om51bWJl
cih1bnNpZ25lZCBpbnQgbnVtYmVyKQorU3RyaW5nIFN0cmluZzo6bnVtYmVyKHVuc2lnbmVkIG51
bWJlcikKIHsKICAgICByZXR1cm4gbnVtYmVyVG9TdHJpbmdVbnNpZ25lZDxTdHJpbmc+KG51bWJl
cik7CiB9CkBAIC00NzksMjIgKzQ3OSwzNCBAQCBTdHJpbmcgU3RyaW5nOjpudW1iZXIodW5zaWdu
ZWQgbG9uZyBsb25nIG51bWJlcikKICAgICByZXR1cm4gbnVtYmVyVG9TdHJpbmdVbnNpZ25lZDxT
dHJpbmc+KG51bWJlcik7CiB9CiAKLVN0cmluZyBTdHJpbmc6Om51bWJlcihkb3VibGUgbnVtYmVy
LCB1bnNpZ25lZCBwcmVjaXNpb24sIFRyYWlsaW5nWmVyb3NUcnVuY2F0aW5nUG9saWN5IHRyYWls
aW5nWmVyb3NUcnVuY2F0aW5nUG9saWN5KQorU3RyaW5nIFN0cmluZzo6bnVtYmVyVG9TdHJpbmdG
aXhlZFByZWNpc2lvbihmbG9hdCBudW1iZXIsIHVuc2lnbmVkIHByZWNpc2lvbiwgVHJhaWxpbmda
ZXJvc1RydW5jYXRpbmdQb2xpY3kgdHJhaWxpbmdaZXJvc1RydW5jYXRpbmdQb2xpY3kpCiB7CiAg
ICAgTnVtYmVyVG9TdHJpbmdCdWZmZXIgYnVmZmVyOwotICAgIHJldHVybiBTdHJpbmcobnVtYmVy
VG9GaXhlZFByZWNpc2lvblN0cmluZyhudW1iZXIsIHByZWNpc2lvbiwgYnVmZmVyLCB0cmFpbGlu
Z1plcm9zVHJ1bmNhdGluZ1BvbGljeSA9PSBUcnVuY2F0ZVRyYWlsaW5nWmVyb3MpKTsKKyAgICBy
ZXR1cm4gbnVtYmVyVG9GaXhlZFByZWNpc2lvblN0cmluZyhudW1iZXIsIHByZWNpc2lvbiwgYnVm
ZmVyLCB0cmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGljeSA9PSBUcnVuY2F0ZVRyYWlsaW5nWmVy
b3MpOwogfQogCi1TdHJpbmcgU3RyaW5nOjpudW1iZXJUb1N0cmluZ0VDTUFTY3JpcHQoZG91Ymxl
IG51bWJlcikKK1N0cmluZyBTdHJpbmc6Om51bWJlclRvU3RyaW5nRml4ZWRQcmVjaXNpb24oZG91
YmxlIG51bWJlciwgdW5zaWduZWQgcHJlY2lzaW9uLCBUcmFpbGluZ1plcm9zVHJ1bmNhdGluZ1Bv
bGljeSB0cmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGljeSkKIHsKICAgICBOdW1iZXJUb1N0cmlu
Z0J1ZmZlciBidWZmZXI7Ci0gICAgcmV0dXJuIFN0cmluZyhudW1iZXJUb1N0cmluZyhudW1iZXIs
IGJ1ZmZlcikpOworICAgIHJldHVybiBudW1iZXJUb0ZpeGVkUHJlY2lzaW9uU3RyaW5nKG51bWJl
ciwgcHJlY2lzaW9uLCBidWZmZXIsIHRyYWlsaW5nWmVyb3NUcnVuY2F0aW5nUG9saWN5ID09IFRy
dW5jYXRlVHJhaWxpbmdaZXJvcyk7Cit9CisKK1N0cmluZyBTdHJpbmc6Om51bWJlclRvU3RyaW5n
U2hvcnRlc3QoZmxvYXQgbnVtYmVyKQoreworICAgIE51bWJlclRvU3RyaW5nQnVmZmVyIGJ1ZmZl
cjsKKyAgICByZXR1cm4gbnVtYmVyVG9TdHJpbmcobnVtYmVyLCBidWZmZXIpOworfQorCitTdHJp
bmcgU3RyaW5nOjpudW1iZXJUb1N0cmluZ1Nob3J0ZXN0KGRvdWJsZSBudW1iZXIpCit7CisgICAg
TnVtYmVyVG9TdHJpbmdCdWZmZXIgYnVmZmVyOworICAgIHJldHVybiBudW1iZXJUb1N0cmluZyhu
dW1iZXIsIGJ1ZmZlcik7CiB9CiAKIFN0cmluZyBTdHJpbmc6Om51bWJlclRvU3RyaW5nRml4ZWRX
aWR0aChkb3VibGUgbnVtYmVyLCB1bnNpZ25lZCBkZWNpbWFsUGxhY2VzKQogewogICAgIE51bWJl
clRvU3RyaW5nQnVmZmVyIGJ1ZmZlcjsKLSAgICByZXR1cm4gU3RyaW5nKG51bWJlclRvRml4ZWRX
aWR0aFN0cmluZyhudW1iZXIsIGRlY2ltYWxQbGFjZXMsIGJ1ZmZlcikpOworICAgIHJldHVybiBu
dW1iZXJUb0ZpeGVkV2lkdGhTdHJpbmcobnVtYmVyLCBkZWNpbWFsUGxhY2VzLCBidWZmZXIpOwog
fQogCiBpbnQgU3RyaW5nOjp0b0ludFN0cmljdChib29sKiBvaywgaW50IGJhc2UpIGNvbnN0CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5oIGIvU291cmNlL1dURi93
dGYvdGV4dC9XVEZTdHJpbmcuaAppbmRleCAxNDE2M2NjOGExNDEwNjA4ODNjODc0ZDA4Njk5OWY3
NWM1ZmYwY2FiLi5hYTVjOWZjZTVkYzZhYThjYjEwNmYzMWEwMzMyMGZhNTEyYWM5MmYyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5oCisrKyBiL1NvdXJjZS9XVEYv
d3RmL3RleHQvV1RGU3RyaW5nLmgKQEAgLTE3NSwxMyArMTc1LDIxIEBAIHB1YmxpYzoKICAgICBX
VEZfRVhQT1JUX1BSSVZBVEUgc3RhdGljIFN0cmluZyBudW1iZXIodW5zaWduZWQgbG9uZyk7CiAg
ICAgV1RGX0VYUE9SVF9QUklWQVRFIHN0YXRpYyBTdHJpbmcgbnVtYmVyKGxvbmcgbG9uZyk7CiAg
ICAgV1RGX0VYUE9SVF9QUklWQVRFIHN0YXRpYyBTdHJpbmcgbnVtYmVyKHVuc2lnbmVkIGxvbmcg
bG9uZyk7Ci0KLSAgICBXVEZfRVhQT1JUX1BSSVZBVEUgc3RhdGljIFN0cmluZyBudW1iZXIoZG91
YmxlLCB1bnNpZ25lZCBwcmVjaXNpb24gPSA2LCBUcmFpbGluZ1plcm9zVHJ1bmNhdGluZ1BvbGlj
eSA9IFRydW5jYXRlVHJhaWxpbmdaZXJvcyk7Ci0KLSAgICAvLyBOdW1iZXIgdG8gU3RyaW5nIGNv
bnZlcnNpb24gZm9sbG93aW5nIHRoZSBFQ01BU2NyaXB0IGRlZmluaXRpb24uCi0gICAgV1RGX0VY
UE9SVF9QUklWQVRFIHN0YXRpYyBTdHJpbmcgbnVtYmVyVG9TdHJpbmdFQ01BU2NyaXB0KGRvdWJs
ZSk7CisgICAgLy8gRklYTUU6IENoYW5nZSBudW1iZXIgdG8gYmUgbnVtYmVyVG9TdHJpbmdTaG9y
dGVzdCBpbnN0ZWFkIG9mIG51bWJlclRvU3RyaW5nRml4ZWRQcmVjaXNpb24uCisgICAgc3RhdGlj
IFN0cmluZyBudW1iZXIoZmxvYXQpOworICAgIHN0YXRpYyBTdHJpbmcgbnVtYmVyKGRvdWJsZSwg
dW5zaWduZWQgcHJlY2lzaW9uID0gNiwgVHJhaWxpbmdaZXJvc1RydW5jYXRpbmdQb2xpY3kgPSBU
cnVuY2F0ZVRyYWlsaW5nWmVyb3MpOworCisgICAgV1RGX0VYUE9SVF9QUklWQVRFIHN0YXRpYyBT
dHJpbmcgbnVtYmVyVG9TdHJpbmdTaG9ydGVzdChmbG9hdCk7CisgICAgV1RGX0VYUE9SVF9QUklW
QVRFIHN0YXRpYyBTdHJpbmcgbnVtYmVyVG9TdHJpbmdTaG9ydGVzdChkb3VibGUpOworICAgIFdU
Rl9FWFBPUlRfUFJJVkFURSBzdGF0aWMgU3RyaW5nIG51bWJlclRvU3RyaW5nRml4ZWRQcmVjaXNp
b24oZmxvYXQsIHVuc2lnbmVkIHByZWNpc2lvbiA9IDYsIFRyYWlsaW5nWmVyb3NUcnVuY2F0aW5n
UG9saWN5ID0gVHJ1bmNhdGVUcmFpbGluZ1plcm9zKTsKKyAgICBXVEZfRVhQT1JUX1BSSVZBVEUg
c3RhdGljIFN0cmluZyBudW1iZXJUb1N0cmluZ0ZpeGVkUHJlY2lzaW9uKGRvdWJsZSwgdW5zaWdu
ZWQgcHJlY2lzaW9uID0gNiwgVHJhaWxpbmdaZXJvc1RydW5jYXRpbmdQb2xpY3kgPSBUcnVuY2F0
ZVRyYWlsaW5nWmVyb3MpOworICAgIFdURl9FWFBPUlRfUFJJVkFURSBzdGF0aWMgU3RyaW5nIG51
bWJlclRvU3RyaW5nRml4ZWRXaWR0aChmbG9hdCwgdW5zaWduZWQgZGVjaW1hbFBsYWNlcyk7CiAg
ICAgV1RGX0VYUE9SVF9QUklWQVRFIHN0YXRpYyBTdHJpbmcgbnVtYmVyVG9TdHJpbmdGaXhlZFdp
ZHRoKGRvdWJsZSwgdW5zaWduZWQgZGVjaW1hbFBsYWNlcyk7CiAKKyAgICAvLyBGSVhNRTogRGVs
ZXRlIGluIGZhdm9yIG9mIHRoZSBuYW1lIG51bWJlclRvU3RyaW5nU2hvcnRlc3Qgb3IganVzdCBu
dW1iZXIuCisgICAgc3RhdGljIFN0cmluZyBudW1iZXJUb1N0cmluZ0VDTUFTY3JpcHQoZmxvYXQp
OworICAgIHN0YXRpYyBTdHJpbmcgbnVtYmVyVG9TdHJpbmdFQ01BU2NyaXB0KGRvdWJsZSk7CisK
ICAgICAvLyBGaW5kIGEgc2luZ2xlIGNoYXJhY3RlciBvciBzdHJpbmcsIGFsc28gd2l0aCBtYXRj
aCBmdW5jdGlvbiAmIGxhdGluMSBmb3Jtcy4KICAgICBzaXplX3QgZmluZChVQ2hhciBjaGFyYWN0
ZXIsIHVuc2lnbmVkIHN0YXJ0ID0gMCkgY29uc3QgeyByZXR1cm4gbV9pbXBsID8gbV9pbXBsLT5m
aW5kKGNoYXJhY3Rlciwgc3RhcnQpIDogbm90Rm91bmQ7IH0KIApAQCAtNjMwLDYgKzYzOCwyOCBA
QCB0ZW1wbGF0ZTx1bnNpZ25lZCBsZW5ndGg+IGlubGluZSBib29sIHN0YXJ0c1dpdGhMZXR0ZXJz
SWdub3JpbmdBU0NJSUNhc2UoY29uc3QgUwogICAgIHJldHVybiBzdGFydHNXaXRoTGV0dGVyc0ln
bm9yaW5nQVNDSUlDYXNlKHN0cmluZy5pbXBsKCksIGxvd2VyY2FzZUxldHRlcnMpOwogfQogCitp
bmxpbmUgU3RyaW5nIFN0cmluZzo6bnVtYmVyKGZsb2F0IG51bWJlcikKK3sKKyAgICByZXR1cm4g
bnVtYmVyVG9TdHJpbmdGaXhlZFByZWNpc2lvbihudW1iZXIpOworfQorCitpbmxpbmUgU3RyaW5n
IFN0cmluZzo6bnVtYmVyKGRvdWJsZSBudW1iZXIsIHVuc2lnbmVkIHByZWNpc2lvbiwgVHJhaWxp
bmdaZXJvc1RydW5jYXRpbmdQb2xpY3kgcG9saWN5KQoreworICAgIHJldHVybiBudW1iZXJUb1N0
cmluZ0ZpeGVkUHJlY2lzaW9uKG51bWJlciwgcHJlY2lzaW9uLCBwb2xpY3kpOworfQorCitpbmxp
bmUgU3RyaW5nIFN0cmluZzo6bnVtYmVyVG9TdHJpbmdFQ01BU2NyaXB0KGZsb2F0IG51bWJlcikK
K3sKKyAgICAvLyBGSVhNRTogVGhpcyBwcmVzZXJ2ZXMgZXhpc3RpbmcgYmVoYXZpb3IgYnV0IGlz
IG5vdCB3aGF0IHdlIHdhbnQuCisgICAgLy8gSW4gdGhlIGZ1dHVyZSwgdGhpcyBzaG91bGQgZWl0
aGVyIGJlIGEgY29tcGlsYXRpb24gZXJyb3Igb3IgY2FsbCBudW1iZXJUb1N0cmluZ1Nob3J0ZXN0
IHdpdGhvdXQgY29udmVydGluZyB0byBkb3VibGUuCisgICAgcmV0dXJuIG51bWJlclRvU3RyaW5n
U2hvcnRlc3Qoc3RhdGljX2Nhc3Q8ZG91YmxlPihudW1iZXIpKTsKK30KKworaW5saW5lIFN0cmlu
ZyBTdHJpbmc6Om51bWJlclRvU3RyaW5nRUNNQVNjcmlwdChkb3VibGUgbnVtYmVyKQoreworICAg
IHJldHVybiBudW1iZXJUb1N0cmluZ1Nob3J0ZXN0KG51bWJlcik7Cit9CisKIGlubGluZSBuYW1l
c3BhY2UgU3RyaW5nTGl0ZXJhbHMgewogCiBpbmxpbmUgU3RyaW5nIG9wZXJhdG9yIiIgX3N0cihj
b25zdCBjaGFyKiBjaGFyYWN0ZXJzLCBzaXplX3QpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMDM0YWY0NWIwNmU5MTI0YTVm
Mzk5MDM4ZjU5ZjljNmRjZmQ3YTg5MC4uOTMwZGVmZjI2Mjc5NDlkNmE0ZWZhN2ZkMjUyNTIzODMx
ODMxMGEyZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDE5LTAzLTAzICBEYXJpbiBBZGxlciAg
PGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBQcmVwYXJlIHRvIGltcHJvdmUgaGFuZGxpbmcg
b2YgY29udmVyc2lvbiBvZiBmbG9hdCB0byBzdHJpbmdzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUyNjIKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHN2Zy9kb20vU1ZHQW5nbGUtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIHN2Zy9kb20vU1ZHQW5nbGUuaHRtbDoKKyAgICAgICAgKiBzdmcvZG9tL1NW
R0xlbmd0aC1weC1leHBlY3RlZC50eHQ6CisgICAgICAgICogc3ZnL2RvbS9TVkdMZW5ndGgtcHgt
d2l0aC1jb250ZXh0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzdmcvZG9tL1NWR0xlbmd0aC1w
eC13aXRoLWNvbnRleHQuaHRtbDoKKyAgICAgICAgKiBzdmcvZG9tL1NWR0xlbmd0aC1weC5odG1s
OgorICAgICAgICBSZW1vdmUgY2hlY2tzIHRoYXQgZGVwZW5kIG9uIHRoZSBwcmVjaXNpb24gYW5k
IG51bWJlciBvZiBzZXJpYWxpemF0aW9uLgorICAgICAgICBUaGUgY3VycmVudCB0ZXN0cyBkZXBl
bmQgb24gYmVoYXZpb3IgdGhhdCB3ZSdkIGxpa2UgdG8gY2hhbmdlIGluIHRoZSBmdXR1cmUgYW5k
CisgICAgICAgIHNvbWUgb2YgdGhlbSBoYWQgYWxyZWFkeSBiZWVuIHVwZGF0ZWQgc2luY2UgdGhl
IGJlaGF2aW9yIGlzIGRpZmZlcmVudCBpbiBkaWZmZXJlbnQKKyAgICAgICAgd2ViIGJyb3dzZXJz
LiBUcmlja3kgaXNzdWUgYmVjYXVzZSBvZiB0aGUgbWl4IG9mIHNpbmdsZSBhbmQgZG91YmxlIHBy
ZWNpc2lvbiBpbgorICAgICAgICB0aGUgU1ZHIGVuZ2luZSBhbmQgdGhlIEphdmFTY3JpcHQgbGFu
Z3VhZ2UsIGFuZCBzdHJhaWdodGZvcndhcmQgdG8ga2VlcCB0aGUgdGVzdHMKKyAgICAgICAgdXNl
ZnVsIHdpdGhvdXQgdGhpcyB1bm5lY3NzYXJ5IGRlcGVuZGVuY3kuIEdlbmVyYWxseSB3ZSBjaGVj
ayB0aGUgdW5pdHMgb2YgdGhlCisgICAgICAgIHJlc3VsdCBvZiB2YWx1ZUFzU3RyaW5nLCBhbmQg
bm90IHRoZSBudW1lcmljIHJlc3VsdC4gQW5vdGhlciBpZGVhIHdvdWxkIGJlIHRvCisgICAgICAg
IGNoZWNrIHRoZSBudW1lcmljIHBhcnQgb2YgdGhlIHJlc3VsdCBieSBjb252ZXJ0aW5nIGl0IGJh
Y2sgdG8gYSBudW1iZXIgYW5kCisgICAgICAgIGNvbXBhcmluZyBpdCBhcyBhIG51bWJlciByYXRo
ZXIgdGhhbiBhcyBhIHN0cmluZy4KKwogMjAxOS0wMy0wMiAgU2ltb24gRnJhc2VyICA8c2ltb24u
ZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjQyMTMyKTogSW5jb3Jy
ZWN0IHBvc2l0aW9uaW5nIHdpdGggbXVsdGlwbGUgcG9zaXRpb246Zml4ZWQgZWxlbWVudHMKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHQW5nbGUtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvc3ZnL2RvbS9TVkdBbmdsZS1leHBlY3RlZC50eHQKaW5kZXggZDJiMzdmMWZiOGE3
ZTUzZmJlMGUzZjUzYTgyODBiOGJmYjExMjA2NS4uNWJmOTc0ZjQ4NTMzNjI3N2ZjM2Y2ZWY1ZDdh
NmZmZmQ3MjUzYjljZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdBbmdsZS1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdBbmdsZS1leHBlY3RlZC50
eHQKQEAgLTY2LDcgKzY2LDcgQEAgUEFTUyBhbmdsZS51bml0VHlwZSBpcyBTVkdBbmdsZS5TVkdf
QU5HTEVUWVBFX0RFRwogCiBDaGVjayB2YWxpZCBhcmd1bWVudHMgZm9yICduZXdWYWx1ZVNwZWNp
ZmllZFVuaXRzJywgdGhhdCBzaG91bGQgb25seSBtb2RpZnkgdGhlICd2YWx1ZUFzU3RyaW5nJwog
UEFTUyBhbmdsZS5uZXdWYWx1ZVNwZWNpZmllZFVuaXRzKFNWR0FuZ2xlLlNWR19BTkdMRVRZUEVf
UkFELCBwYXJzZUZsb2F0KE1hdGguUEkudG9GaXhlZCg1KSkpIGlzIHVuZGVmaW5lZC4KLVBBU1Mg
YW5nbGUudmFsdWVBc1N0cmluZyBpcyAiMy4xNDE1OXJhZCIKK1BBU1MgYW5nbGUudmFsdWVBc1N0
cmluZy5zbGljZSgtMykgaXMgInJhZCIKIFBBU1MgYW5nbGUudmFsdWUudG9GaXhlZCgxKSBpcyAi
MTgwLjAiCiBQQVNTIGFuZ2xlLnZhbHVlSW5TcGVjaWZpZWRVbml0cy50b0ZpeGVkKDUpIGlzIE1h
dGguUEkudG9GaXhlZCg1KQogUEFTUyBhbmdsZS51bml0VHlwZSBpcyBTVkdBbmdsZS5TVkdfQU5H
TEVUWVBFX1JBRApAQCAtMTcwLDE0ICsxNzAsMTQgQEAgTm93IGNvbnZlcnQgdGhlIEdSQUQgdmFs
dWUgaW50byBhIFJBRCB2YWx1ZSwgYW5kIGFzc3VyZSB0aGF0IGFsbCBwcm9wZXJ0aWVzIGhhdmUK
IFBBU1MgYW5nbGUuY29udmVydFRvU3BlY2lmaWVkVW5pdHMoU1ZHQW5nbGUuU1ZHX0FOR0xFVFlQ
RV9SQUQpIGlzIHVuZGVmaW5lZC4KIFBBU1MgYW5nbGUudmFsdWUudG9GaXhlZCgxKSBpcyAiMTgw
LjAiCiBQQVNTIGFuZ2xlLnZhbHVlSW5TcGVjaWZpZWRVbml0cy50b0ZpeGVkKDUpIGlzICIzLjE0
MTU5IgotUEFTUyBhbmdsZS52YWx1ZUFzU3RyaW5nIGlzICIzLjE0MTU5cmFkIgorUEFTUyBhbmds
ZS52YWx1ZUFzU3RyaW5nLnNsaWNlKC0zKSBpcyAicmFkIgogUEFTUyBhbmdsZS51bml0VHlwZSBp
cyBTVkdBbmdsZS5TVkdfQU5HTEVUWVBFX1JBRAogCiBOb3cgdHJ5IGNvbnZlcnRpbmcgdGhlIFJB
RCB2YWx1ZSBpbnRvIGFuIHVua25vd24gdmFsdWUsIHRoYXQgc2hvdWxkIGZhaWwgYW5kIHRocm93
CiBQQVNTIGFuZ2xlLmNvbnZlcnRUb1NwZWNpZmllZFVuaXRzKFNWR0FuZ2xlLlNWR19BTkdMRVRZ
UEVfVU5LTk9XTikgdGhyZXcgZXhjZXB0aW9uIE5vdFN1cHBvcnRlZEVycm9yOiBUaGUgb3BlcmF0
aW9uIGlzIG5vdCBzdXBwb3J0ZWQuLgogUEFTUyBhbmdsZS52YWx1ZS50b0ZpeGVkKDEpIGlzICIx
ODAuMCIKIFBBU1MgYW5nbGUudmFsdWVJblNwZWNpZmllZFVuaXRzLnRvRml4ZWQoNSkgaXMgIjMu
MTQxNTkiCi1QQVNTIGFuZ2xlLnZhbHVlQXNTdHJpbmcgaXMgIjMuMTQxNTlyYWQiCitQQVNTIGFu
Z2xlLnZhbHVlQXNTdHJpbmcuc2xpY2UoLTMpIGlzICJyYWQiCiBQQVNTIGFuZ2xlLnVuaXRUeXBl
IGlzIFNWR0FuZ2xlLlNWR19BTkdMRVRZUEVfUkFECiAKIE5vdyBjb252ZXJ0IHRoZSBSQUQgdmFs
dWUgaW50byBhIERFRyB2YWx1ZSwgYW5kIGFzc3VyZSB0aGF0IGFsbCBwcm9wZXJ0aWVzIGhhdmUg
YmVlbiBzeW5jaHJvbml6ZWQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHQW5n
bGUuaHRtbCBiL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHQW5nbGUuaHRtbAppbmRleCBlYjhhNGRl
NTExZDVlNTkzOTNiYTJiMzZiYTZiNDk2MTc3ZGFiYTdiLi41MDE2MGUyOTc3NTgxMmMyYjlkMTVm
YjY3YjgxNjczOGI2YTc0NWE1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdmcvZG9tL1NWR0Fu
Z2xlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdBbmdsZS5odG1sCkBAIC04OSw3
ICs4OSw4IEBAIHNob3VsZEJlKCJhbmdsZS51bml0VHlwZSIsICJTVkdBbmdsZS5TVkdfQU5HTEVU
WVBFX0RFRyIpOwogZGVidWcoIiIpOwogZGVidWcoIkNoZWNrIHZhbGlkIGFyZ3VtZW50cyBmb3Ig
J25ld1ZhbHVlU3BlY2lmaWVkVW5pdHMnLCB0aGF0IHNob3VsZCBvbmx5IG1vZGlmeSB0aGUgJ3Zh
bHVlQXNTdHJpbmcnIik7CiBzaG91bGRCZVVuZGVmaW5lZCgiYW5nbGUubmV3VmFsdWVTcGVjaWZp
ZWRVbml0cyhTVkdBbmdsZS5TVkdfQU5HTEVUWVBFX1JBRCwgcGFyc2VGbG9hdChNYXRoLlBJLnRv
Rml4ZWQoNSkpKSIpOwotc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJhbmdsZS52YWx1ZUFzU3RyaW5n
IiwgTWF0aC5QSS50b0ZpeGVkKDUpICsgInJhZCIpOworLy8gRXhhY3QgcmVzdWx0IG9mIHZhbHVl
QXNTdHJpbmcgZGVwZW5kcyBvbiBwcmVjaXNpb24sIG5vIHRyaXZpYWwgd2F5IHRvIGNvcnJlY3Rs
eSB0ZXN0IGl0LCBlc3BlY2lhbGx5IGFjcm9zcyBlbmdpbmVzLgorc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCJhbmdsZS52YWx1ZUFzU3RyaW5nLnNsaWNlKC0zKSIsICJyYWQiKTsKIHNob3VsZEJlRXF1
YWxUb1N0cmluZygiYW5nbGUudmFsdWUudG9GaXhlZCgxKSIsICIxODAuMCIpOwogc2hvdWxkQmUo
ImFuZ2xlLnZhbHVlSW5TcGVjaWZpZWRVbml0cy50b0ZpeGVkKDUpIiwgIk1hdGguUEkudG9GaXhl
ZCg1KSIpOwogc2hvdWxkQmUoImFuZ2xlLnVuaXRUeXBlIiwgIlNWR0FuZ2xlLlNWR19BTkdMRVRZ
UEVfUkFEIik7CkBAIC0yMTMsNyArMjE0LDggQEAgZGVidWcoIk5vdyBjb252ZXJ0IHRoZSBHUkFE
IHZhbHVlIGludG8gYSBSQUQgdmFsdWUsIGFuZCBhc3N1cmUgdGhhdCBhbGwgcHJvcGVydGkKIHNo
b3VsZEJlVW5kZWZpbmVkKCJhbmdsZS5jb252ZXJ0VG9TcGVjaWZpZWRVbml0cyhTVkdBbmdsZS5T
VkdfQU5HTEVUWVBFX1JBRCkiKTsKIHNob3VsZEJlRXF1YWxUb1N0cmluZygiYW5nbGUudmFsdWUu
dG9GaXhlZCgxKSIsICIxODAuMCIpOwogc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJhbmdsZS52YWx1
ZUluU3BlY2lmaWVkVW5pdHMudG9GaXhlZCg1KSIsIE1hdGguUEkudG9GaXhlZCg1KSk7Ci1zaG91
bGRCZUVxdWFsVG9TdHJpbmcoImFuZ2xlLnZhbHVlQXNTdHJpbmciLCBNYXRoLlBJLnRvRml4ZWQo
NSkgKyAicmFkIik7CisvLyBFeGFjdCByZXN1bHQgb2YgdmFsdWVBc1N0cmluZyBkZXBlbmRzIG9u
IHByZWNpc2lvbiwgbm8gdHJpdmlhbCB3YXkgdG8gY29ycmVjdGx5IHRlc3QgaXQsIGVzcGVjaWFs
bHkgYWNyb3NzIGVuZ2luZXMuCitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImFuZ2xlLnZhbHVlQXNT
dHJpbmcuc2xpY2UoLTMpIiwgInJhZCIpOwogc2hvdWxkQmUoImFuZ2xlLnVuaXRUeXBlIiwgIlNW
R0FuZ2xlLlNWR19BTkdMRVRZUEVfUkFEIik7CiAKIGRlYnVnKCIiKTsKQEAgLTIyMSw3ICsyMjMs
OCBAQCBkZWJ1ZygiTm93IHRyeSBjb252ZXJ0aW5nIHRoZSBSQUQgdmFsdWUgaW50byBhbiB1bmtu
b3duIHZhbHVlLCB0aGF0IHNob3VsZCBmYWlsCiBzaG91bGRUaHJvdygiYW5nbGUuY29udmVydFRv
U3BlY2lmaWVkVW5pdHMoU1ZHQW5nbGUuU1ZHX0FOR0xFVFlQRV9VTktOT1dOKSIpOwogc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJhbmdsZS52YWx1ZS50b0ZpeGVkKDEpIiwgIjE4MC4wIik7CiBzaG91
bGRCZUVxdWFsVG9TdHJpbmcoImFuZ2xlLnZhbHVlSW5TcGVjaWZpZWRVbml0cy50b0ZpeGVkKDUp
IiwgTWF0aC5QSS50b0ZpeGVkKDUpKTsKLXNob3VsZEJlRXF1YWxUb1N0cmluZygiYW5nbGUudmFs
dWVBc1N0cmluZyIsIE1hdGguUEkudG9GaXhlZCg1KSArICJyYWQiKTsKKy8vIEV4YWN0IHJlc3Vs
dCBvZiB2YWx1ZUFzU3RyaW5nIGRlcGVuZHMgb24gcHJlY2lzaW9uLCBubyB0cml2aWFsIHdheSB0
byBjb3JyZWN0bHkgdGVzdCBpdCwgZXNwZWNpYWxseSBhY3Jvc3MgZW5naW5lcy4KK3Nob3VsZEJl
RXF1YWxUb1N0cmluZygiYW5nbGUudmFsdWVBc1N0cmluZy5zbGljZSgtMykiLCAicmFkIik7CiBz
aG91bGRCZSgiYW5nbGUudW5pdFR5cGUiLCAiU1ZHQW5nbGUuU1ZHX0FOR0xFVFlQRV9SQUQiKTsK
IAogZGVidWcoIiIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdMZW5ndGgt
cHgtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdMZW5ndGgtcHgtZXhwZWN0
ZWQudHh0CmluZGV4IGYyMGJlNjM0YWE1Y2M1ODBiNGE4OGVkMDI0NmJmMDc3ZDk1YTllNzQuLjdl
NDc1NjNkZTA0YjQ0OGJjYWZhNjM0NGIyYTZlMmNiYzQ4OTdkNDkgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3N2Zy9kb20vU1ZHTGVuZ3RoLXB4LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9zdmcvZG9tL1NWR0xlbmd0aC1weC1leHBlY3RlZC50eHQKQEAgLTQ4LDcgKzQ4LDcgQEAgUmVz
ZXQgdG8gMnB4CiAKIENvbnZlcnQgZnJvbSBweCB0byBjbQogUEFTUyBsZW5ndGguY29udmVydFRv
U3BlY2lmaWVkVW5pdHMoU1ZHTGVuZ3RoLlNWR19MRU5HVEhUWVBFX0NNKSBpcyB1bmRlZmluZWQu
Ci1QQVNTIGxlbmd0aC52YWx1ZUFzU3RyaW5nIGlzICIwLjA1MjkxNjdjbSIKK1BBU1MgbGVuZ3Ro
LnZhbHVlQXNTdHJpbmcuc2xpY2UoLTIpIGlzICJjbSIKIFBBU1MgbGVuZ3RoLnZhbHVlSW5TcGVj
aWZpZWRVbml0cy50b0ZpeGVkKDcpIGlzICIwLjA1MjkxNjciCiBQQVNTIGxlbmd0aC52YWx1ZS50
b0ZpeGVkKDEpIGlzICIyLjAiCiBQQVNTIGxlbmd0aC51bml0VHlwZSBpcyBTVkdMZW5ndGguU1ZH
X0xFTkdUSFRZUEVfQ00KQEAgLTU3LDcgKzU3LDcgQEAgUmVzZXQgdG8gMnB4CiAKIENvbnZlcnQg
ZnJvbSBweCB0byBtbQogUEFTUyBsZW5ndGguY29udmVydFRvU3BlY2lmaWVkVW5pdHMoU1ZHTGVu
Z3RoLlNWR19MRU5HVEhUWVBFX01NKSBpcyB1bmRlZmluZWQuCi1QQVNTIGxlbmd0aC52YWx1ZUFz
U3RyaW5nIGlzICIwLjUyOTE2N21tIgorUEFTUyBsZW5ndGgudmFsdWVBc1N0cmluZy5zbGljZSgt
MikgaXMgIm1tIgogUEFTUyBsZW5ndGgudmFsdWVJblNwZWNpZmllZFVuaXRzLnRvRml4ZWQoNikg
aXMgIjAuNTI5MTY3IgogUEFTUyBsZW5ndGgudmFsdWUudG9GaXhlZCgxKSBpcyAiMi4wIgogUEFT
UyBsZW5ndGgudW5pdFR5cGUgaXMgU1ZHTGVuZ3RoLlNWR19MRU5HVEhUWVBFX01NCkBAIC02Niw3
ICs2Niw3IEBAIFJlc2V0IHRvIDJweAogCiBDb252ZXJ0IGZyb20gcHggdG8gaW4KIFBBU1MgbGVu
Z3RoLmNvbnZlcnRUb1NwZWNpZmllZFVuaXRzKFNWR0xlbmd0aC5TVkdfTEVOR1RIVFlQRV9JTikg
aXMgdW5kZWZpbmVkLgotUEFTUyBsZW5ndGgudmFsdWVBc1N0cmluZyBpcyAiMC4wMjA4MzMzaW4i
CitQQVNTIGxlbmd0aC52YWx1ZUFzU3RyaW5nLnNsaWNlKC0yKSBpcyAiaW4iCiBQQVNTIGxlbmd0
aC52YWx1ZUluU3BlY2lmaWVkVW5pdHMudG9GaXhlZCg3KSBpcyAiMC4wMjA4MzMzIgogUEFTUyBs
ZW5ndGgudmFsdWUudG9GaXhlZCgxKSBpcyAiMi4wIgogUEFTUyBsZW5ndGgudW5pdFR5cGUgaXMg
U1ZHTGVuZ3RoLlNWR19MRU5HVEhUWVBFX0lOCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcv
ZG9tL1NWR0xlbmd0aC1weC13aXRoLWNvbnRleHQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
c3ZnL2RvbS9TVkdMZW5ndGgtcHgtd2l0aC1jb250ZXh0LWV4cGVjdGVkLnR4dAppbmRleCBlMTgz
M2UwNDA1YmVjMTY4ZDQxYzdkNDQ3OWJjMDkxYTQzOTBkYjM4Li4xNjZjNTBiZTY4NWY5NGRkYWUw
YjRiZWUyYzY2MjJlMDdhZjk3NjkxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdmcvZG9tL1NW
R0xlbmd0aC1weC13aXRoLWNvbnRleHQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3N2
Zy9kb20vU1ZHTGVuZ3RoLXB4LXdpdGgtY29udGV4dC1leHBlY3RlZC50eHQKQEAgLTIxLDcgKzIx
LDcgQEAgUmVzZXQgdG8gMnB4CiAKIENvbnZlcnQgZnJvbSBweCB0byBwZXJjZW50YWdlCiBQQVNT
IGxlbmd0aC5jb252ZXJ0VG9TcGVjaWZpZWRVbml0cyhTVkdMZW5ndGguU1ZHX0xFTkdUSFRZUEVf
UEVSQ0VOVEFHRSkgaXMgdW5kZWZpbmVkLgotUEFTUyBsZW5ndGgudmFsdWVBc1N0cmluZyBpcyAi
MS4zMzMzMyUiCitQQVNTIGxlbmd0aC52YWx1ZUFzU3RyaW5nLnNsaWNlKC0xKSBpcyAiJSIKIFBB
U1MgbGVuZ3RoLnZhbHVlSW5TcGVjaWZpZWRVbml0cy50b0ZpeGVkKDUpIGlzICIxLjMzMzMzIgog
UEFTUyBsZW5ndGgudmFsdWUudG9GaXhlZCgxKSBpcyAiMi4wIgogUEFTUyBsZW5ndGgudW5pdFR5
cGUgaXMgU1ZHTGVuZ3RoLlNWR19MRU5HVEhUWVBFX1BFUkNFTlRBR0UKQEAgLTMwLDcgKzMwLDcg
QEAgUmVzZXQgdG8gMnB4CiAKIENvbnZlcnQgZnJvbSBweCB0byBlbXMKIFBBU1MgbGVuZ3RoLmNv
bnZlcnRUb1NwZWNpZmllZFVuaXRzKFNWR0xlbmd0aC5TVkdfTEVOR1RIVFlQRV9FTVMpIGlzIHVu
ZGVmaW5lZC4KLVBBU1MgbGVuZ3RoLnZhbHVlQXNTdHJpbmcgaXMgIjAuMTY2NjY3ZW0iCitQQVNT
IGxlbmd0aC52YWx1ZUFzU3RyaW5nLnNsaWNlKC0yKSBpcyAiZW0iCiBQQVNTIGxlbmd0aC52YWx1
ZUluU3BlY2lmaWVkVW5pdHMudG9GaXhlZCg2KSBpcyAiMC4xNjY2NjciCiBQQVNTIGxlbmd0aC52
YWx1ZS50b0ZpeGVkKDEpIGlzICIyLjAiCiBQQVNTIGxlbmd0aC51bml0VHlwZSBpcyBTVkdMZW5n
dGguU1ZHX0xFTkdUSFRZUEVfRU1TCkBAIC0zOSw2ICszOSw3IEBAIFJlc2V0IHRvIDJweAogCiBD
b252ZXJ0IGZyb20gcHggdG8gZXhzCiBQQVNTIGxlbmd0aC5jb252ZXJ0VG9TcGVjaWZpZWRVbml0
cyhTVkdMZW5ndGguU1ZHX0xFTkdUSFRZUEVfRVhTKSBpcyB1bmRlZmluZWQuCitQQVNTIGxlbmd0
aC52YWx1ZUFzU3RyaW5nLnNsaWNlKC0yKSBpcyAiZXgiCiBQQVNTIGxlbmd0aC52YWx1ZUluU3Bl
Y2lmaWVkVW5pdHMudG9GaXhlZCgxKSBpcyAiMC4yIgogUEFTUyBsZW5ndGgudmFsdWUudG9GaXhl
ZCgxKSBpcyAiMi4wIgogUEFTUyBsZW5ndGgudW5pdFR5cGUgaXMgU1ZHTGVuZ3RoLlNWR19MRU5H
VEhUWVBFX0VYUwpAQCAtNDcsNyArNDgsNyBAQCBSZXNldCB0byAycHgKIAogQ29udmVydCBmcm9t
IHB4IHRvIGNtCiBQQVNTIGxlbmd0aC5jb252ZXJ0VG9TcGVjaWZpZWRVbml0cyhTVkdMZW5ndGgu
U1ZHX0xFTkdUSFRZUEVfQ00pIGlzIHVuZGVmaW5lZC4KLVBBU1MgbGVuZ3RoLnZhbHVlQXNTdHJp
bmcgaXMgIjAuMDUyOTE2N2NtIgorUEFTUyBsZW5ndGgudmFsdWVBc1N0cmluZy5zbGljZSgtMikg
aXMgImNtIgogUEFTUyBsZW5ndGgudmFsdWVJblNwZWNpZmllZFVuaXRzLnRvRml4ZWQoNykgaXMg
IjAuMDUyOTE2NyIKIFBBU1MgbGVuZ3RoLnZhbHVlLnRvRml4ZWQoMSkgaXMgIjIuMCIKIFBBU1Mg
bGVuZ3RoLnVuaXRUeXBlIGlzIFNWR0xlbmd0aC5TVkdfTEVOR1RIVFlQRV9DTQpAQCAtNTYsNyAr
NTcsNyBAQCBSZXNldCB0byAycHgKIAogQ29udmVydCBmcm9tIHB4IHRvIG1tCiBQQVNTIGxlbmd0
aC5jb252ZXJ0VG9TcGVjaWZpZWRVbml0cyhTVkdMZW5ndGguU1ZHX0xFTkdUSFRZUEVfTU0pIGlz
IHVuZGVmaW5lZC4KLVBBU1MgbGVuZ3RoLnZhbHVlQXNTdHJpbmcgaXMgIjAuNTI5MTY3bW0iCitQ
QVNTIGxlbmd0aC52YWx1ZUFzU3RyaW5nLnNsaWNlKC0yKSBpcyAibW0iCiBQQVNTIGxlbmd0aC52
YWx1ZUluU3BlY2lmaWVkVW5pdHMudG9GaXhlZCg2KSBpcyAiMC41MjkxNjciCiBQQVNTIGxlbmd0
aC52YWx1ZS50b0ZpeGVkKDEpIGlzICIyLjAiCiBQQVNTIGxlbmd0aC51bml0VHlwZSBpcyBTVkdM
ZW5ndGguU1ZHX0xFTkdUSFRZUEVfTU0KQEAgLTY1LDcgKzY2LDcgQEAgUmVzZXQgdG8gMnB4CiAK
IENvbnZlcnQgZnJvbSBweCB0byBpbgogUEFTUyBsZW5ndGguY29udmVydFRvU3BlY2lmaWVkVW5p
dHMoU1ZHTGVuZ3RoLlNWR19MRU5HVEhUWVBFX0lOKSBpcyB1bmRlZmluZWQuCi1QQVNTIGxlbmd0
aC52YWx1ZUFzU3RyaW5nIGlzICIwLjAyMDgzMzNpbiIKK1BBU1MgbGVuZ3RoLnZhbHVlQXNTdHJp
bmcuc2xpY2UoLTIpIGlzICJpbiIKIFBBU1MgbGVuZ3RoLnZhbHVlSW5TcGVjaWZpZWRVbml0cy50
b0ZpeGVkKDcpIGlzICIwLjAyMDgzMzMiCiBQQVNTIGxlbmd0aC52YWx1ZS50b0ZpeGVkKDEpIGlz
ICIyLjAiCiBQQVNTIGxlbmd0aC51bml0VHlwZSBpcyBTVkdMZW5ndGguU1ZHX0xFTkdUSFRZUEVf
SU4KQEAgLTgzLDYgKzg0LDcgQEAgUmVzZXQgdG8gMnB4CiAKIENvbnZlcnQgZnJvbSBweCB0byBw
YwogUEFTUyBsZW5ndGguY29udmVydFRvU3BlY2lmaWVkVW5pdHMoU1ZHTGVuZ3RoLlNWR19MRU5H
VEhUWVBFX1BDKSBpcyB1bmRlZmluZWQuCitQQVNTIGxlbmd0aC52YWx1ZUFzU3RyaW5nLnNsaWNl
KC0yKSBpcyAicGMiCiBQQVNTIGxlbmd0aC52YWx1ZUluU3BlY2lmaWVkVW5pdHMudG9GaXhlZCgz
KSBpcyAiMC4xMjUiCiBQQVNTIGxlbmd0aC52YWx1ZS50b0ZpeGVkKDEpIGlzICIyLjAiCiBQQVNT
IGxlbmd0aC51bml0VHlwZSBpcyBTVkdMZW5ndGguU1ZHX0xFTkdUSFRZUEVfUEMKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL3N2Zy9kb20vU1ZHTGVuZ3RoLXB4LXdpdGgtY29udGV4dC5odG1sIGIv
TGF5b3V0VGVzdHMvc3ZnL2RvbS9TVkdMZW5ndGgtcHgtd2l0aC1jb250ZXh0Lmh0bWwKaW5kZXgg
M2MyZDNlN2Y2ZjNhNTYxNGMyMmE4YmEwODNlMzJkM2VlZmEzZDQwZC4uNjg2ZmU1YTZkMzVkMjc5
MmM0MGQ3NGZhN2E3MWZjMjQzYmUxOWNjMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3ZnL2Rv
bS9TVkdMZW5ndGgtcHgtd2l0aC1jb250ZXh0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2Rv
bS9TVkdMZW5ndGgtcHgtd2l0aC1jb250ZXh0Lmh0bWwKQEAgLTgwLDcgKzgwLDggQEAgZGVidWco
IiIpOwogZGVidWcoIkNvbnZlcnQgZnJvbSBweCB0byBwZXJjZW50YWdlIik7CiBzaG91bGRCZVVu
ZGVmaW5lZCgibGVuZ3RoLmNvbnZlcnRUb1NwZWNpZmllZFVuaXRzKFNWR0xlbmd0aC5TVkdfTEVO
R1RIVFlQRV9QRVJDRU5UQUdFKSIpOwogcmVmZXJlbmNlVmFsdWUgPSBOdW1iZXIoMiAvIHN2Z1dp
ZHRoICogMTAwKS50b0ZpeGVkKDUpOwotc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsZW5ndGgudmFs
dWVBc1N0cmluZyIsIHJlZmVyZW5jZVZhbHVlICsgIiUiKTsKKy8vIEV4YWN0IHJlc3VsdCBvZiB2
YWx1ZUFzU3RyaW5nIGRlcGVuZHMgb24gcHJlY2lzaW9uLCBubyB0cml2aWFsIHdheSB0byBjb3Jy
ZWN0bHkgdGVzdCBpdCwgZXNwZWNpYWxseSBhY3Jvc3MgZW5naW5lcy4KK3Nob3VsZEJlRXF1YWxU
b1N0cmluZygibGVuZ3RoLnZhbHVlQXNTdHJpbmcuc2xpY2UoLTEpIiwgIiUiKTsKIHNob3VsZEJl
RXF1YWxUb1N0cmluZygibGVuZ3RoLnZhbHVlSW5TcGVjaWZpZWRVbml0cy50b0ZpeGVkKDUpIiwg
cmVmZXJlbmNlVmFsdWUpOwogc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsZW5ndGgudmFsdWUudG9G
aXhlZCgxKSIsICIyLjAiKTsKIHNob3VsZEJlKCJsZW5ndGgudW5pdFR5cGUiLCAiU1ZHTGVuZ3Ro
LlNWR19MRU5HVEhUWVBFX1BFUkNFTlRBR0UiKTsKQEAgLTkzLDcgKzk0LDggQEAgZGVidWcoIiIp
OwogZGVidWcoIkNvbnZlcnQgZnJvbSBweCB0byBlbXMiKTsKIHNob3VsZEJlVW5kZWZpbmVkKCJs
ZW5ndGguY29udmVydFRvU3BlY2lmaWVkVW5pdHMoU1ZHTGVuZ3RoLlNWR19MRU5HVEhUWVBFX0VN
UykiKTsKIHJlZmVyZW5jZVZhbHVlID0gTnVtYmVyKDIgLyBmb250U2l6ZSkudG9GaXhlZCg2KTsK
LXNob3VsZEJlRXF1YWxUb1N0cmluZygibGVuZ3RoLnZhbHVlQXNTdHJpbmciLCByZWZlcmVuY2VW
YWx1ZSArICJlbSIpOworLy8gRXhhY3QgcmVzdWx0IG9mIHZhbHVlQXNTdHJpbmcgZGVwZW5kcyBv
biBwcmVjaXNpb24sIG5vIHRyaXZpYWwgd2F5IHRvIGNvcnJlY3RseSB0ZXN0IGl0LCBlc3BlY2lh
bGx5IGFjcm9zcyBlbmdpbmVzLgorc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsZW5ndGgudmFsdWVB
c1N0cmluZy5zbGljZSgtMikiLCAiZW0iKTsKIHNob3VsZEJlRXF1YWxUb1N0cmluZygibGVuZ3Ro
LnZhbHVlSW5TcGVjaWZpZWRVbml0cy50b0ZpeGVkKDYpIiwgcmVmZXJlbmNlVmFsdWUpOwogc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJsZW5ndGgudmFsdWUudG9GaXhlZCgxKSIsICIyLjAiKTsKIHNo
b3VsZEJlKCJsZW5ndGgudW5pdFR5cGUiLCAiU1ZHTGVuZ3RoLlNWR19MRU5HVEhUWVBFX0VNUyIp
OwpAQCAtMTA2LDcgKzEwOCw4IEBAIGRlYnVnKCIiKTsKIGRlYnVnKCJDb252ZXJ0IGZyb20gcHgg
dG8gZXhzIik7CiBzaG91bGRCZVVuZGVmaW5lZCgibGVuZ3RoLmNvbnZlcnRUb1NwZWNpZmllZFVu
aXRzKFNWR0xlbmd0aC5TVkdfTEVOR1RIVFlQRV9FWFMpIik7CiByZWZlcmVuY2VWYWx1ZSA9IE51
bWJlcigyIC8gY2FsY3VsYXRlWEhlaWdodCgpKS50b0ZpeGVkKDEpOwotLy8gRG9uJ3QgY2hlY2sg
dmFsdWVBc1N0cmluZyBoZXJlLCBpdCdzIHVucmVsaWFibGUgYWNyb3NzIGJyb3dzZXJzLgorLy8g
RXhhY3QgcmVzdWx0IG9mIHZhbHVlQXNTdHJpbmcgZGVwZW5kcyBvbiBwcmVjaXNpb24sIG5vIHRy
aXZpYWwgd2F5IHRvIGNvcnJlY3RseSB0ZXN0IGl0LCBlc3BlY2lhbGx5IGFjcm9zcyBlbmdpbmVz
Lgorc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsZW5ndGgudmFsdWVBc1N0cmluZy5zbGljZSgtMiki
LCAiZXgiKTsKIHNob3VsZEJlRXF1YWxUb1N0cmluZygibGVuZ3RoLnZhbHVlSW5TcGVjaWZpZWRV
bml0cy50b0ZpeGVkKDEpIiwgcmVmZXJlbmNlVmFsdWUpOwogc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJsZW5ndGgudmFsdWUudG9GaXhlZCgxKSIsICIyLjAiKTsKIHNob3VsZEJlKCJsZW5ndGgudW5p
dFR5cGUiLCAiU1ZHTGVuZ3RoLlNWR19MRU5HVEhUWVBFX0VYUyIpOwpAQCAtMTE5LDcgKzEyMiw4
IEBAIGRlYnVnKCIiKTsKIGRlYnVnKCJDb252ZXJ0IGZyb20gcHggdG8gY20iKTsKIHNob3VsZEJl
VW5kZWZpbmVkKCJsZW5ndGguY29udmVydFRvU3BlY2lmaWVkVW5pdHMoU1ZHTGVuZ3RoLlNWR19M
RU5HVEhUWVBFX0NNKSIpOwogcmVmZXJlbmNlVmFsdWUgPSBOdW1iZXIoMiAqIDIuNTQgLyBjc3NQ
aXhlbHNQZXJJbmNoKS50b0ZpeGVkKDcpOwotc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsZW5ndGgu
dmFsdWVBc1N0cmluZyIsIHJlZmVyZW5jZVZhbHVlICsgImNtIik7CisvLyBFeGFjdCByZXN1bHQg
b2YgdmFsdWVBc1N0cmluZyBkZXBlbmRzIG9uIHByZWNpc2lvbiwgbm8gdHJpdmlhbCB3YXkgdG8g
Y29ycmVjdGx5IHRlc3QgaXQsIGVzcGVjaWFsbHkgYWNyb3NzIGVuZ2luZXMuCitzaG91bGRCZUVx
dWFsVG9TdHJpbmcoImxlbmd0aC52YWx1ZUFzU3RyaW5nLnNsaWNlKC0yKSIsICJjbSIpOwogc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJsZW5ndGgudmFsdWVJblNwZWNpZmllZFVuaXRzLnRvRml4ZWQo
NykiLCByZWZlcmVuY2VWYWx1ZSk7CiBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImxlbmd0aC52YWx1
ZS50b0ZpeGVkKDEpIiwgIjIuMCIpOwogc2hvdWxkQmUoImxlbmd0aC51bml0VHlwZSIsICJTVkdM
ZW5ndGguU1ZHX0xFTkdUSFRZUEVfQ00iKTsKQEAgLTEzMiw3ICsxMzYsOCBAQCBkZWJ1ZygiIik7
CiBkZWJ1ZygiQ29udmVydCBmcm9tIHB4IHRvIG1tIik7CiBzaG91bGRCZVVuZGVmaW5lZCgibGVu
Z3RoLmNvbnZlcnRUb1NwZWNpZmllZFVuaXRzKFNWR0xlbmd0aC5TVkdfTEVOR1RIVFlQRV9NTSki
KTsKIHJlZmVyZW5jZVZhbHVlID0gTnVtYmVyKDIgKiAyNS40IC8gY3NzUGl4ZWxzUGVySW5jaCku
dG9GaXhlZCg2KTsKLXNob3VsZEJlRXF1YWxUb1N0cmluZygibGVuZ3RoLnZhbHVlQXNTdHJpbmci
LCByZWZlcmVuY2VWYWx1ZSArICJtbSIpOworLy8gRXhhY3QgcmVzdWx0IG9mIHZhbHVlQXNTdHJp
bmcgZGVwZW5kcyBvbiBwcmVjaXNpb24sIG5vIHRyaXZpYWwgd2F5IHRvIGNvcnJlY3RseSB0ZXN0
IGl0LCBlc3BlY2lhbGx5IGFjcm9zcyBlbmdpbmVzLgorc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJs
ZW5ndGgudmFsdWVBc1N0cmluZy5zbGljZSgtMikiLCAibW0iKTsKIHNob3VsZEJlRXF1YWxUb1N0
cmluZygibGVuZ3RoLnZhbHVlSW5TcGVjaWZpZWRVbml0cy50b0ZpeGVkKDYpIiwgcmVmZXJlbmNl
VmFsdWUpOwogc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsZW5ndGgudmFsdWUudG9GaXhlZCgxKSIs
ICIyLjAiKTsKIHNob3VsZEJlKCJsZW5ndGgudW5pdFR5cGUiLCAiU1ZHTGVuZ3RoLlNWR19MRU5H
VEhUWVBFX01NIik7CkBAIC0xNDUsNyArMTUwLDggQEAgZGVidWcoIiIpOwogZGVidWcoIkNvbnZl
cnQgZnJvbSBweCB0byBpbiIpOwogc2hvdWxkQmVVbmRlZmluZWQoImxlbmd0aC5jb252ZXJ0VG9T
cGVjaWZpZWRVbml0cyhTVkdMZW5ndGguU1ZHX0xFTkdUSFRZUEVfSU4pIik7CiByZWZlcmVuY2VW
YWx1ZSA9IE51bWJlcigyIC8gY3NzUGl4ZWxzUGVySW5jaCkudG9GaXhlZCg3KTsKLXNob3VsZEJl
RXF1YWxUb1N0cmluZygibGVuZ3RoLnZhbHVlQXNTdHJpbmciLCByZWZlcmVuY2VWYWx1ZSArICJp
biIpOworLy8gRXhhY3QgcmVzdWx0IG9mIHZhbHVlQXNTdHJpbmcgZGVwZW5kcyBvbiBwcmVjaXNp
b24sIG5vIHRyaXZpYWwgd2F5IHRvIGNvcnJlY3RseSB0ZXN0IGl0LCBlc3BlY2lhbGx5IGFjcm9z
cyBlbmdpbmVzLgorc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsZW5ndGgudmFsdWVBc1N0cmluZy5z
bGljZSgtMikiLCAiaW4iKTsKIHNob3VsZEJlRXF1YWxUb1N0cmluZygibGVuZ3RoLnZhbHVlSW5T
cGVjaWZpZWRVbml0cy50b0ZpeGVkKDcpIiwgcmVmZXJlbmNlVmFsdWUpOwogc2hvdWxkQmVFcXVh
bFRvU3RyaW5nKCJsZW5ndGgudmFsdWUudG9GaXhlZCgxKSIsICIyLjAiKTsKIHNob3VsZEJlKCJs
ZW5ndGgudW5pdFR5cGUiLCAiU1ZHTGVuZ3RoLlNWR19MRU5HVEhUWVBFX0lOIik7CkBAIC0xNzEs
NyArMTc3LDggQEAgZGVidWcoIiIpOwogZGVidWcoIkNvbnZlcnQgZnJvbSBweCB0byBwYyIpOwog
c2hvdWxkQmVVbmRlZmluZWQoImxlbmd0aC5jb252ZXJ0VG9TcGVjaWZpZWRVbml0cyhTVkdMZW5n
dGguU1ZHX0xFTkdUSFRZUEVfUEMpIik7CiByZWZlcmVuY2VWYWx1ZSA9IE51bWJlcigyIC8gY3Nz
UGl4ZWxzUGVySW5jaCAqIDYpLnRvRml4ZWQoMyk7Ci0vLyBEb24ndCBjaGVjayB2YWx1ZUFzU3Ry
aW5nIGhlcmUsIGl0J3MgdW5yZWxpYWJsZSBhY3Jvc3MgYnJvd3NlcnMuCisvLyBFeGFjdCByZXN1
bHQgb2YgdmFsdWVBc1N0cmluZyBkZXBlbmRzIG9uIHByZWNpc2lvbiwgbm8gdHJpdmlhbCB3YXkg
dG8gY29ycmVjdGx5IHRlc3QgaXQsIGVzcGVjaWFsbHkgYWNyb3NzIGVuZ2luZXMuCitzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoImxlbmd0aC52YWx1ZUFzU3RyaW5nLnNsaWNlKC0yKSIsICJwYyIpOwog
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsZW5ndGgudmFsdWVJblNwZWNpZmllZFVuaXRzLnRvRml4
ZWQoMykiLCByZWZlcmVuY2VWYWx1ZSk7CiBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImxlbmd0aC52
YWx1ZS50b0ZpeGVkKDEpIiwgIjIuMCIpOwogc2hvdWxkQmUoImxlbmd0aC51bml0VHlwZSIsICJT
VkdMZW5ndGguU1ZHX0xFTkdUSFRZUEVfUEMiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2
Zy9kb20vU1ZHTGVuZ3RoLXB4Lmh0bWwgYi9MYXlvdXRUZXN0cy9zdmcvZG9tL1NWR0xlbmd0aC1w
eC5odG1sCmluZGV4IDhmNmY0MThkODViYzllZTYxYTE2M2U1NzY0NDJkZjhlZmU3MjBmMDAuLjIz
OWMzZjMxODRmYjhhODdmNDNkOGExNDIwNTk0YWM0YTIyZTU3YjkgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL3N2Zy9kb20vU1ZHTGVuZ3RoLXB4Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvc3ZnL2Rv
bS9TVkdMZW5ndGgtcHguaHRtbApAQCAtOTMsNyArOTMsOCBAQCBkZWJ1ZygiIik7CiBkZWJ1Zygi
Q29udmVydCBmcm9tIHB4IHRvIGNtIik7CiBzaG91bGRCZVVuZGVmaW5lZCgibGVuZ3RoLmNvbnZl
cnRUb1NwZWNpZmllZFVuaXRzKFNWR0xlbmd0aC5TVkdfTEVOR1RIVFlQRV9DTSkiKTsKIHJlZmVy
ZW5jZVZhbHVlID0gTnVtYmVyKDIgKiAyLjU0IC8gY3NzUGl4ZWxzUGVySW5jaCkudG9GaXhlZCg3
KTsKLXNob3VsZEJlRXF1YWxUb1N0cmluZygibGVuZ3RoLnZhbHVlQXNTdHJpbmciLCByZWZlcmVu
Y2VWYWx1ZSArICJjbSIpOworLy8gRXhhY3QgcmVzdWx0IG9mIHZhbHVlQXNTdHJpbmcgZGVwZW5k
cyBvbiBwcmVjaXNpb24sIG5vIHRyaXZpYWwgd2F5IHRvIGNvcnJlY3RseSB0ZXN0IGl0LCBlc3Bl
Y2lhbGx5IGFjcm9zcyBlbmdpbmVzLgorc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsZW5ndGgudmFs
dWVBc1N0cmluZy5zbGljZSgtMikiLCAiY20iKTsKIHNob3VsZEJlRXF1YWxUb1N0cmluZygibGVu
Z3RoLnZhbHVlSW5TcGVjaWZpZWRVbml0cy50b0ZpeGVkKDcpIiwgcmVmZXJlbmNlVmFsdWUpOwog
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJsZW5ndGgudmFsdWUudG9GaXhlZCgxKSIsICIyLjAiKTsK
IHNob3VsZEJlKCJsZW5ndGgudW5pdFR5cGUiLCAiU1ZHTGVuZ3RoLlNWR19MRU5HVEhUWVBFX0NN
Iik7CkBAIC0xMDYsNyArMTA3LDggQEAgZGVidWcoIiIpOwogZGVidWcoIkNvbnZlcnQgZnJvbSBw
eCB0byBtbSIpOwogc2hvdWxkQmVVbmRlZmluZWQoImxlbmd0aC5jb252ZXJ0VG9TcGVjaWZpZWRV
bml0cyhTVkdMZW5ndGguU1ZHX0xFTkdUSFRZUEVfTU0pIik7CiByZWZlcmVuY2VWYWx1ZSA9IE51
bWJlcigyICogMjUuNCAvIGNzc1BpeGVsc1BlckluY2gpLnRvRml4ZWQoNik7Ci1zaG91bGRCZUVx
dWFsVG9TdHJpbmcoImxlbmd0aC52YWx1ZUFzU3RyaW5nIiwgcmVmZXJlbmNlVmFsdWUgKyAibW0i
KTsKKy8vIEV4YWN0IHJlc3VsdCBvZiB2YWx1ZUFzU3RyaW5nIGRlcGVuZHMgb24gcHJlY2lzaW9u
LCBubyB0cml2aWFsIHdheSB0byBjb3JyZWN0bHkgdGVzdCBpdCwgZXNwZWNpYWxseSBhY3Jvc3Mg
ZW5naW5lcy4KK3Nob3VsZEJlRXF1YWxUb1N0cmluZygibGVuZ3RoLnZhbHVlQXNTdHJpbmcuc2xp
Y2UoLTIpIiwgIm1tIik7CiBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImxlbmd0aC52YWx1ZUluU3Bl
Y2lmaWVkVW5pdHMudG9GaXhlZCg2KSIsIHJlZmVyZW5jZVZhbHVlKTsKIHNob3VsZEJlRXF1YWxU
b1N0cmluZygibGVuZ3RoLnZhbHVlLnRvRml4ZWQoMSkiLCAiMi4wIik7CiBzaG91bGRCZSgibGVu
Z3RoLnVuaXRUeXBlIiwgIlNWR0xlbmd0aC5TVkdfTEVOR1RIVFlQRV9NTSIpOwpAQCAtMTE5LDcg
KzEyMSw4IEBAIGRlYnVnKCIiKTsKIGRlYnVnKCJDb252ZXJ0IGZyb20gcHggdG8gaW4iKTsKIHNo
b3VsZEJlVW5kZWZpbmVkKCJsZW5ndGguY29udmVydFRvU3BlY2lmaWVkVW5pdHMoU1ZHTGVuZ3Ro
LlNWR19MRU5HVEhUWVBFX0lOKSIpOwogcmVmZXJlbmNlVmFsdWUgPSBOdW1iZXIoMiAvIGNzc1Bp
eGVsc1BlckluY2gpLnRvRml4ZWQoNyk7Ci1zaG91bGRCZUVxdWFsVG9TdHJpbmcoImxlbmd0aC52
YWx1ZUFzU3RyaW5nIiwgcmVmZXJlbmNlVmFsdWUgKyAiaW4iKTsKKy8vIEV4YWN0IHJlc3VsdCBv
ZiB2YWx1ZUFzU3RyaW5nIGRlcGVuZHMgb24gcHJlY2lzaW9uLCBubyB0cml2aWFsIHdheSB0byBj
b3JyZWN0bHkgdGVzdCBpdCwgZXNwZWNpYWxseSBhY3Jvc3MgZW5naW5lcy4KK3Nob3VsZEJlRXF1
YWxUb1N0cmluZygibGVuZ3RoLnZhbHVlQXNTdHJpbmcuc2xpY2UoLTIpIiwgImluIik7CiBzaG91
bGRCZUVxdWFsVG9TdHJpbmcoImxlbmd0aC52YWx1ZUluU3BlY2lmaWVkVW5pdHMudG9GaXhlZCg3
KSIsIHJlZmVyZW5jZVZhbHVlKTsKIHNob3VsZEJlRXF1YWxUb1N0cmluZygibGVuZ3RoLnZhbHVl
LnRvRml4ZWQoMSkiLCAiMi4wIik7CiBzaG91bGRCZSgibGVuZ3RoLnVuaXRUeXBlIiwgIlNWR0xl
bmd0aC5TVkdfTEVOR1RIVFlQRV9JTiIpOwo=
</data>
<flag name="review"
          id="380070"
          type_id="1"
          status="+"
          setter="dbates"
    />
          </attachment>
      

    </bug>

</bugzilla>