<?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>133957</bug_id>
          
          <creation_ts>2014-06-16 15:16:52 -0700</creation_ts>
          <short_desc>Don&apos;t use AtomicString in HTTPHeaderMap</short_desc>
          <delta_ts>2014-06-16 15:28:43 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1015978</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-06-16 15:16:52 -0700</bug_when>
    <thetext>Don&apos;t use AtomicString in HTTPHeaderMap</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1015979</commentid>
    <comment_count>1</comment_count>
      <attachid>233186</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-06-16 15:20:07 -0700</bug_when>
    <thetext>Created attachment 233186
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1015984</commentid>
    <comment_count>2</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-06-16 15:28:43 -0700</bug_when>
    <thetext>Committed r170029: &lt;http://trac.webkit.org/changeset/170029&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>233186</attachid>
            <date>2014-06-16 15:20:07 -0700</date>
            <delta_ts>2014-06-16 15:26:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-133957-20140616151944.patch</filename>
            <type>text/plain</type>
            <size>28973</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTcwMDI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTMwZmJmYTVmMzRmNWMz
ZTU4NmY3MTcxZjA1MGQwMzU4ODM3MTdlMS4uMTU2NTdlYzJkMjE1ODVlYThkYTNmNWFiZTJlMThj
MjZiZTg0M2VjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYxIEBACisyMDE0LTA2LTE2ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgRG9uJ3QgdXNlIEF0
b21pY1N0cmluZyBpbiBIVFRQSGVhZGVyTWFwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMzM5NTcKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzE1MjU2
NTcyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVz
ZSB0aGUgc3RyaW5nIGRhdGEgdGhhdCBjb21lcyBmcm9tIHRoZSBnZW5lcmF0ZWQgSFRUUEhlYWRl
ck5hbWVzLmNwcCBmaWxlCisgICAgICAgIGZvciBzaGFyaW5nIGhlYWRlciBuYW1lIGRhdGEgaW5z
dGVhZC4gSW4gdGhlIGZ1dHVyZSB3ZSBjYW4gZG8gc29tZXRoaW5nIG1vcmUgZmFuY3kgd2hlcmUK
KyAgICAgICAgd2UnbGwgaGFzaCB0aGUgSFRUUEhlYWRlck5hbWUgZW51bSBkaXJlY3RseSwgYnV0
IHRoaXMgaXMgZ29vZCBlbm91Z2ggZm9yIG5vdy4KKworICAgICAgICAqIE1vZHVsZXMvd2Vic29j
a2V0cy9XZWJTb2NrZXRIYW5kc2hha2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2ViU29ja2V0
SGFuZHNoYWtlOjpyZWFkSFRUUEhlYWRlcnMpOgorICAgICAgICAqIFdlYkNvcmUuZXhwLmluOgor
ICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JSZXNvdXJjZUFnZW50LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OmJ1aWxkT2JqZWN0Rm9ySGVhZGVycyk6CisgICAgICAgICogbG9hZGVyL0Nyb3Nz
T3JpZ2luUHJlZmxpZ2h0UmVzdWx0Q2FjaGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q3Jvc3NP
cmlnaW5QcmVmbGlnaHRSZXN1bHRDYWNoZUl0ZW06OmFsbG93c0Nyb3NzT3JpZ2luSGVhZGVycyk6
CisgICAgICAgICogbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OnBhcnNlSGVhZGVyKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUv
Q2FjaGVkUmVzb3VyY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6c2hvdWxkVXBkYXRlSGVhZGVy
QWZ0ZXJSZXZhbGlkYXRpb24pOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvSFRUUEhlYWRl
ck1hcC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVFRQSGVhZGVyTWFwOjpjb3B5RGF0YSk6Cisg
ICAgICAgIChXZWJDb3JlOjppbnRlcm5IVFRQSGVhZGVyTmFtZVN0cmluZyk6CisgICAgICAgIChX
ZWJDb3JlOjpIVFRQSGVhZGVyTWFwOjpnZXQpOgorICAgICAgICAoV2ViQ29yZTo6SFRUUEhlYWRl
ck1hcDo6c2V0KToKKyAgICAgICAgKFdlYkNvcmU6OkhUVFBIZWFkZXJNYXA6OmFkZCk6CisgICAg
ICAgIChXZWJDb3JlOjpDYXNlRm9sZGluZ0NTdHJpbmdUcmFuc2xhdG9yOjpoYXNoKTogRGVsZXRl
ZC4KKyAgICAgICAgKFdlYkNvcmU6OkNhc2VGb2xkaW5nQ1N0cmluZ1RyYW5zbGF0b3I6OmVxdWFs
KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkNhc2VGb2xkaW5nQ1N0cmluZ1RyYW5zbGF0
b3I6OnRyYW5zbGF0ZSk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9IVFRQ
SGVhZGVyTWFwLmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9IVFRQSGVhZGVyTmFtZXMu
aW46CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpwYXJzZUhUVFBIZWFkZXIpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsv
SFRUUFBhcnNlcnMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVxdWVz
dEJhc2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0QmFzZTo6aHR0cEhl
YWRlckZpZWxkKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdEJhc2U6OnNldEhU
VFBIZWFkZXJGaWVsZCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3RCYXNlOjph
ZGRIVFRQSGVhZGVyRmllbGQpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VS
ZXF1ZXN0QmFzZS5oOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25z
ZUJhc2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZUJhc2U6Omh0dHBI
ZWFkZXJGaWVsZCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlQmFzZTo6c2V0
SFRUUEhlYWRlckZpZWxkKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2VCYXNl
OjphZGRIVFRQSGVhZGVyRmllbGQpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvUmVzb3Vy
Y2VSZXNwb25zZUJhc2UuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL21hYy9SZXNvdXJj
ZVJlcXVlc3RNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Q6OmRvVXBk
YXRlUmVzb3VyY2VSZXF1ZXN0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL21hYy9SZXNv
dXJjZVJlc3BvbnNlTWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZTo6
cGxhdGZvcm1MYXp5SW5pdCk6CisgICAgICAgICogeG1sL1hNTEh0dHBSZXF1ZXN0LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlhNTEh0dHBSZXF1ZXN0OjpzZXRSZXF1ZXN0SGVhZGVyKToKKyAgICAg
ICAgKFdlYkNvcmU6OlhNTEh0dHBSZXF1ZXN0OjpzZXRSZXF1ZXN0SGVhZGVySW50ZXJuYWwpOgor
ICAgICAgICAoV2ViQ29yZTo6WE1MSHR0cFJlcXVlc3Q6OmdldFJlcXVlc3RIZWFkZXIpOgorICAg
ICAgICAoV2ViQ29yZTo6WE1MSHR0cFJlcXVlc3Q6OmdldFJlc3BvbnNlSGVhZGVyKToKKyAgICAg
ICAgKiB4bWwvWE1MSHR0cFJlcXVlc3QuaDoKKwogMjAxNC0wNi0xNSAgQW5kZXJzIENhcmxzc29u
ICA8YW5kZXJzY2FAYXBwbGUuY29tPgogCiAgICAgICAgIENoYW5nZSBSZXNvdXJjZVJlcXVlc3RC
YXNlOjphZGRIVFRQSGVhZGVyRmllbGRzIHRvIHNldEhUVFBIZWFkZXJGaWVsZHMgaW5zdGVhZApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hh
bmdlTG9nCmluZGV4IDFhOWI1OGNhNDgyZTg3NjAzOGJjYTZjMjNkNDA1YWYzMGIxMTQ1NGMuLjIz
ZThkNThiOTViMzhjMTViYTBkYjI1Y2U5YWQwYWVhNjFkNmM0NDIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNiBAQAorMjAxNC0wNi0xNiAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUu
Y29tPgorCisgICAgICAgIERvbid0IHVzZSBBdG9taWNTdHJpbmcgaW4gSFRUUEhlYWRlck1hcAor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMzOTU3Cisg
ICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xNTI1NjU3Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGUgZm9yIFdlYkNvcmUgY2hhbmdlcy4KKwor
ICAgICAgICAqIFNoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwOgorICAgICAgICAoSVBD
OjpBcmd1bWVudENvZGVyPEhUVFBIZWFkZXJNYXA+OjpkZWNvZGUpOgorCiAyMDE0LTA2LTE1ICBB
bmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKICAgICAgICAgQ2hhbmdlIFJl
c291cmNlUmVxdWVzdEJhc2U6OmFkZEhUVFBIZWFkZXJGaWVsZHMgdG8gc2V0SFRUUEhlYWRlckZp
ZWxkcyBpbnN0ZWFkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tl
dHMvV2ViU29ja2V0SGFuZHNoYWtlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29j
a2V0cy9XZWJTb2NrZXRIYW5kc2hha2UuY3BwCmluZGV4IDBjNjRmYTFhYTQ5YjUxNmRiZjk4MDFi
ZDRhNzU5Y2EyYWM1MmE3ZjkuLjMzZmRjYmEzMjg4OWI1Y2MxNmFjNWVhMjNmMDM5NTJjNWI4MzI5
MmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2Nr
ZXRIYW5kc2hha2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9X
ZWJTb2NrZXRIYW5kc2hha2UuY3BwCkBAIC00NjEsNyArNDYxLDcgQEAgaW50IFdlYlNvY2tldEhh
bmRzaGFrZTo6cmVhZFN0YXR1c0xpbmUoY29uc3QgY2hhciogaGVhZGVyLCBzaXplX3QgaGVhZGVy
TGVuZ3RoLAogCiBjb25zdCBjaGFyKiBXZWJTb2NrZXRIYW5kc2hha2U6OnJlYWRIVFRQSGVhZGVy
cyhjb25zdCBjaGFyKiBzdGFydCwgY29uc3QgY2hhciogZW5kKQogewotICAgIEF0b21pY1N0cmlu
ZyBuYW1lOworICAgIFN0cmluZyBuYW1lOwogICAgIFN0cmluZyB2YWx1ZTsKICAgICBib29sIHNh
d1NlY1dlYlNvY2tldEV4dGVuc2lvbnNIZWFkZXJGaWVsZCA9IGZhbHNlOwogICAgIGJvb2wgc2F3
U2VjV2ViU29ja2V0QWNjZXB0SGVhZGVyRmllbGQgPSBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4K
aW5kZXggYmIyZDRiODE4YzA2ZGIxOTg0NzM0NDcxZmQ2MmZmODQ1ZWMxOTU0Yy4uYTJkMmIyNTdh
NzRhYzE4YmE2MTNlZDFkZGIyY2I5MTZhMjgxNDdhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS5leHAuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4KQEAg
LTI4OSw4ICsyODksNyBAQCBfX1pON1dlYkNvcmUxM0dyYXBoaWNzTGF5ZXI3c2V0U2l6ZUVSS05T
XzlGbG9hdFNpemVFCiBfX1pON1dlYkNvcmUxM0dyYXBoaWNzTGF5ZXI4YWRkQ2hpbGRFUFMwXwog
X19aTjdXZWJDb3JlMTNHcmFwaGljc0xheWVyQzJFUk5TXzE5R3JhcGhpY3NMYXllckNsaWVudEUK
IF9fWk43V2ViQ29yZTEzR3JhcGhpY3NMYXllckQyRXYKLV9fWk43V2ViQ29yZTEzSFRUUEhlYWRl
ck1hcDNhZGRFUktOM1dURjEyQXRvbWljU3RyaW5nRVJLTlMxXzZTdHJpbmdFCi1fX1pON1dlYkNv
cmUxM0hUVFBIZWFkZXJNYXAzc2V0RVJLTjNXVEYxMkF0b21pY1N0cmluZ0VSS05TMV82U3RyaW5n
RQorX19aTjdXZWJDb3JlMTNIVFRQSGVhZGVyTWFwM3NldEVSS04zV1RGNlN0cmluZ0VTNF8KIF9f
Wk43V2ViQ29yZTEzSFRUUEhlYWRlck1hcDZyZW1vdmVFTlNfMTRIVFRQSGVhZGVyTmFtZUUKIF9f
Wk43V2ViQ29yZTEzSFRUUEhlYWRlck1hcEMxRXYKIF9fWk43V2ViQ29yZTEzSFRUUEhlYWRlck1h
cEQxRXYKQEAgLTg1Nyw3ICs4NTYsNyBAQCBfX1pON1dlYkNvcmUyMFJlc291cmNlSGFuZGxlQ2xp
ZW50RDJFdgogX19aTjdXZWJDb3JlMjBSZXNvdXJjZVJlc3BvbnNlQmFzZTExc2V0TWltZVR5cGVF
UktOM1dURjZTdHJpbmdFCiBfX1pON1dlYkNvcmUyMFJlc291cmNlUmVzcG9uc2VCYXNlMTdzZXRI
VFRQU3RhdHVzQ29kZUVpCiBfX1pON1dlYkNvcmUyMFJlc291cmNlUmVzcG9uc2VCYXNlMTdzZXRI
VFRQU3RhdHVzVGV4dEVSS04zV1RGNlN0cmluZ0UKLV9fWk43V2ViQ29yZTIwUmVzb3VyY2VSZXNw
b25zZUJhc2UxOHNldEhUVFBIZWFkZXJGaWVsZEVSS04zV1RGMTJBdG9taWNTdHJpbmdFUktOUzFf
NlN0cmluZ0UKK19fWk43V2ViQ29yZTIwUmVzb3VyY2VSZXNwb25zZUJhc2UxOHNldEhUVFBIZWFk
ZXJGaWVsZEVSS04zV1RGNlN0cmluZ0VTNF8KIF9fWk43V2ViQ29yZTIwUmVzb3VyY2VSZXNwb25z
ZUJhc2UxOXNldFRleHRFbmNvZGluZ05hbWVFUktOM1dURjZTdHJpbmdFCiBfX1pON1dlYkNvcmUy
MFJlc291cmNlUmVzcG9uc2VCYXNlMjBzZXRTdWdnZXN0ZWRGaWxlbmFtZUVSS04zV1RGNlN0cmlu
Z0UKIF9fWk43V2ViQ29yZTIwUmVzb3VyY2VSZXNwb25zZUJhc2UyNHNldEV4cGVjdGVkQ29udGVu
dExlbmd0aEV4CkBAIC0xNjA5LDcgKzE2MDgsNyBAQCBfX1pOSzdXZWJDb3JlMTNHcmFwaGljc0xh
eWVyMThhY2N1bXVsYXRlZE9wYWNpdHlFdgogX19aTks3V2ViQ29yZTEzR3JhcGhpY3NMYXllcjE4
Z2V0RGVidWdCb3JkZXJJbmZvRVJOU181Q29sb3JFUmYKIF9fWk5LN1dlYkNvcmUxM0dyYXBoaWNz
TGF5ZXIyNmJhY2tpbmdTdG9yZU1lbW9yeUVzdGltYXRlRXYKIF9fWk5LN1dlYkNvcmUxM0hUVFBI
ZWFkZXJNYXAzZ2V0RU5TXzE0SFRUUEhlYWRlck5hbWVFCi1fX1pOSzdXZWJDb3JlMTNIVFRQSGVh
ZGVyTWFwM2dldEVSS04zV1RGMTJBdG9taWNTdHJpbmdFCitfX1pOSzdXZWJDb3JlMTNIVFRQSGVh
ZGVyTWFwM2dldEVSS04zV1RGNlN0cmluZ0UKIF9fWk5LN1dlYkNvcmUxM0hpdFRlc3RSZXN1bHQx
MGlzTGl2ZUxpbmtFdgogX19aTks3V2ViQ29yZTEzSGl0VGVzdFJlc3VsdDEwaXNTZWxlY3RlZEV2
CiBfX1pOSzdXZWJDb3JlMTNIaXRUZXN0UmVzdWx0MTF0YXJnZXRGcmFtZUV2CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUmVzb3VyY2VBZ2VudC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUmVzb3VyY2VBZ2VudC5jcHAKaW5kZXgg
MmVjMzRiMDk3Y2ZkZWY5MTBlZjQwZWEyMDg3MzY1NTRjNzBiNmRlMi4uYzFiYWU4YTBiMDJmOWEx
NWJjNWFiNmE4OGJkYjkzM2E2NzY4MGQ5NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvclJlc291cmNlQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9JbnNwZWN0b3JSZXNvdXJjZUFnZW50LmNwcApAQCAtMTk3LDcgKzE5Nyw3IEBAIHN0
YXRpYyBQYXNzUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gYnVpbGRPYmplY3RGb3JIZWFkZXJzKGNv
bnN0IEhUVFBIZWFkZXJNYXAmIGhlCiAgICAgUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gaGVhZGVy
c09iamVjdCA9IEluc3BlY3Rvck9iamVjdDo6Y3JlYXRlKCk7CiAgICAgCiAgICAgZm9yIChjb25z
dCBhdXRvJiBoZWFkZXIgOiBoZWFkZXJzKQotICAgICAgICBoZWFkZXJzT2JqZWN0LT5zZXRTdHJp
bmcoaGVhZGVyLmtleS5zdHJpbmcoKSwgaGVhZGVyLnZhbHVlKTsKKyAgICAgICAgaGVhZGVyc09i
amVjdC0+c2V0U3RyaW5nKGhlYWRlci5rZXksIGhlYWRlci52YWx1ZSk7CiAgICAgcmV0dXJuIGhl
YWRlcnNPYmplY3Q7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Dcm9z
c09yaWdpblByZWZsaWdodFJlc3VsdENhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9D
cm9zc09yaWdpblByZWZsaWdodFJlc3VsdENhY2hlLmNwcAppbmRleCAyZGRlZjcwY2Y1MjIxNzZl
MjY5Y2IzY2Y2MmU5ZjM2ODE2NGJiMTMxLi5kMzZjNDhlM2MxNjViNTk1NzcxMWU1OTg2NjcyNTcx
YTVmNjMzMDE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NPcmlnaW5Q
cmVmbGlnaHRSZXN1bHRDYWNoZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Nyb3Nz
T3JpZ2luUHJlZmxpZ2h0UmVzdWx0Q2FjaGUuY3BwCkBAIC0xMjgsNyArMTI4LDcgQEAgYm9vbCBD
cm9zc09yaWdpblByZWZsaWdodFJlc3VsdENhY2hlSXRlbTo6YWxsb3dzQ3Jvc3NPcmlnaW5IZWFk
ZXJzKGNvbnN0IEhUVFBIZWEKIHsKICAgICBmb3IgKGNvbnN0IGF1dG8mIGhlYWRlciA6IHJlcXVl
c3RIZWFkZXJzKSB7CiAgICAgICAgIGlmICghbV9oZWFkZXJzLmNvbnRhaW5zKGhlYWRlci5rZXkp
ICYmICFpc09uQWNjZXNzQ29udHJvbFNpbXBsZVJlcXVlc3RIZWFkZXJXaGl0ZWxpc3QoaGVhZGVy
LmtleSwgaGVhZGVyLnZhbHVlKSkgewotICAgICAgICAgICAgZXJyb3JEZXNjcmlwdGlvbiA9ICJS
ZXF1ZXN0IGhlYWRlciBmaWVsZCAiICsgaGVhZGVyLmtleS5zdHJpbmcoKSArICIgaXMgbm90IGFs
bG93ZWQgYnkgQWNjZXNzLUNvbnRyb2wtQWxsb3ctSGVhZGVycy4iOworICAgICAgICAgICAgZXJy
b3JEZXNjcmlwdGlvbiA9ICJSZXF1ZXN0IGhlYWRlciBmaWVsZCAiICsgaGVhZGVyLmtleSArICIg
aXMgbm90IGFsbG93ZWQgYnkgQWNjZXNzLUNvbnRyb2wtQWxsb3ctSGVhZGVycy4iOwogICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICB9CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5jcHAK
aW5kZXggNjAxY2UwY2Q5NWRkM2FhYmEzOWM5NDM0NTg3MjQzMjI5MzdjNGZiYi4uOTgyYTM0MjZi
ZDQ4ZjQ4ZmVkYWVmNmQ1MGVhOThlODRiMjBlNWRlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuY3BwCkBA
IC0xMDk0LDcgKzEwOTQsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgcGFyc2VIZWFkZXIoY29uc3Qg
Q2hhcmFjdGVyVHlwZSogaGVhZGVyLCBzaXplX3QgaGVhZGVyTGVuZ3RoLAogICAgIHNpemVfdCBw
b3MgPSBmaW5kKGhlYWRlciwgaGVhZGVyTGVuZ3RoLCAnOicpOwogICAgIEFTU0VSVChwb3MgIT0g
bm90Rm91bmQpOwogICAgIAotICAgIEF0b21pY1N0cmluZyBoZWFkZXJOYW1lID0gQXRvbWljU3Ry
aW5nKGhlYWRlciwgcG9zKTsKKyAgICBTdHJpbmcgaGVhZGVyTmFtZSA9IEF0b21pY1N0cmluZyho
ZWFkZXIsIHBvcyk7CiAgICAgU3RyaW5nIGhlYWRlclZhbHVlID0gU3RyaW5nKGhlYWRlciArIHBv
cyArIDEsIGhlYWRlckxlbmd0aCAtIHBvcyAtIDEpOwogICAgIAogICAgIHJlc3BvbnNlLnNldEhU
VFBIZWFkZXJGaWVsZChoZWFkZXJOYW1lLCBoZWFkZXJWYWx1ZSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuY3BwIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcAppbmRleCAyZDVmNWU0MjNlYWZjODFm
OGU5ZTk0ODlkZTM4ODc0NmVmMTZiODFiLi45NmQ0OThiNTMwNTM2YzU3NjkzODA0ZmRjMGE2ZDJk
MmE0M2E1NjU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNv
dXJjZS5jcHAKQEAgLTkyLDcgKzkyLDcgQEAgY29uc3QgY2hhciogY29uc3QgaGVhZGVyUHJlZml4
ZXNUb0lnbm9yZUFmdGVyUmV2YWxpZGF0aW9uW10gPSB7CiAgICAgIngtd2Via2l0LSIKIH07CiAK
LXN0YXRpYyBpbmxpbmUgYm9vbCBzaG91bGRVcGRhdGVIZWFkZXJBZnRlclJldmFsaWRhdGlvbihj
b25zdCBBdG9taWNTdHJpbmcmIGhlYWRlcikKK3N0YXRpYyBpbmxpbmUgYm9vbCBzaG91bGRVcGRh
dGVIZWFkZXJBZnRlclJldmFsaWRhdGlvbihjb25zdCBTdHJpbmcmIGhlYWRlcikKIHsKICAgICBm
b3IgKHNpemVfdCBpID0gMDsgaSA8IFdURl9BUlJBWV9MRU5HVEgoaGVhZGVyc1RvSWdub3JlQWZ0
ZXJSZXZhbGlkYXRpb24pOyBpKyspIHsKICAgICAgICAgaWYgKGVxdWFsSWdub3JpbmdDYXNlKGhl
YWRlciwgaGVhZGVyc1RvSWdub3JlQWZ0ZXJSZXZhbGlkYXRpb25baV0pKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9IVFRQSGVhZGVyTWFwLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUEhlYWRlck1hcC5jcHAKaW5kZXggYjQwNWUy
NzNhNzNiYmNmYTI4NDBhMDAxMjJkNzgyMDdjZTM3MmIxYi4uY2MzZWNjM2UxZjNkOWRmZTIxZDBi
YmE2NmU1NTcwNzlmZTJlMTA5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9IVFRQSGVhZGVyTWFwLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL0hUVFBIZWFkZXJNYXAuY3BwCkBAIC01MSw3ICs1MSw3IEBAIHN0ZDo6dW5pcXVlX3B0
cjxDcm9zc1RocmVhZEhUVFBIZWFkZXJNYXBEYXRhPiBIVFRQSGVhZGVyTWFwOjpjb3B5RGF0YSgp
IGNvbnN0CiAgICAgZGF0YS0+cmVzZXJ2ZUluaXRpYWxDYXBhY2l0eShtX2hlYWRlcnMuc2l6ZSgp
KTsKIAogICAgIGZvciAoY29uc3QgYXV0byYgaGVhZGVyIDogKnRoaXMpCi0gICAgICAgIGRhdGEt
PnVuY2hlY2tlZEFwcGVuZChzdGQ6Om1ha2VfcGFpcihoZWFkZXIua2V5LnN0cmluZygpLmlzb2xh
dGVkQ29weSgpLCBoZWFkZXIudmFsdWUuaXNvbGF0ZWRDb3B5KCkpKTsKKyAgICAgICAgZGF0YS0+
dW5jaGVja2VkQXBwZW5kKHN0ZDo6bWFrZV9wYWlyKGhlYWRlci5rZXkuaXNvbGF0ZWRDb3B5KCks
IGhlYWRlci52YWx1ZS5pc29sYXRlZENvcHkoKSkpOwogCiAgICAgcmV0dXJuIGRhdGE7CiB9CkBA
IC02NCw0MSArNjQsMzIgQEAgdm9pZCBIVFRQSGVhZGVyTWFwOjphZG9wdChzdGQ6OnVuaXF1ZV9w
dHI8Q3Jvc3NUaHJlYWRIVFRQSGVhZGVyTWFwRGF0YT4gZGF0YSkKICAgICAgICAgbV9oZWFkZXJz
LmFkZChzdGQ6Om1vdmUoaGVhZGVyLmZpcnN0KSwgc3RkOjptb3ZlKGhlYWRlci5zZWNvbmQpKTsK
IH0KIAotU3RyaW5nIEhUVFBIZWFkZXJNYXA6OmdldChjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUp
IGNvbnN0CitzdGF0aWMgU3RyaW5nIGludGVybkhUVFBIZWFkZXJOYW1lU3RyaW5nKGNvbnN0IFN0
cmluZyYgbmFtZVN0cmluZykKIHsKLSAgICByZXR1cm4gbV9oZWFkZXJzLmdldChuYW1lKTsKKyAg
ICBIVFRQSGVhZGVyTmFtZSBoZWFkZXJOYW1lOworICAgIGlmICghZmluZEhUVFBIZWFkZXJOYW1l
KG5hbWVTdHJpbmcsIGhlYWRlck5hbWUpKQorICAgICAgICByZXR1cm4gbmFtZVN0cmluZzsKKwor
ICAgIHJldHVybiBodHRwSGVhZGVyTmFtZVN0cmluZyhoZWFkZXJOYW1lKS50b1N0cmluZ1dpdGhv
dXRDb3B5aW5nKCk7CiB9CiAKLXZvaWQgSFRUUEhlYWRlck1hcDo6c2V0KGNvbnN0IEF0b21pY1N0
cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiB2YWx1ZSkKK1N0cmluZyBIVFRQSGVhZGVyTWFwOjpn
ZXQoY29uc3QgU3RyaW5nJiBuYW1lKSBjb25zdAogewotICAgIG1faGVhZGVycy5zZXQobmFtZSwg
dmFsdWUpOworICAgIHJldHVybiBtX2hlYWRlcnMuZ2V0KGludGVybkhUVFBIZWFkZXJOYW1lU3Ry
aW5nKG5hbWUpKTsKIH0KIAotdm9pZCBIVFRQSGVhZGVyTWFwOjphZGQoY29uc3QgQXRvbWljU3Ry
aW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIHZhbHVlKQordm9pZCBIVFRQSGVhZGVyTWFwOjpzZXQo
Y29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIHZhbHVlKQogewotICAgIGF1dG8gcmVz
dWx0ID0gbV9oZWFkZXJzLmFkZChuYW1lLCB2YWx1ZSk7CisgICAgbV9oZWFkZXJzLnNldChpbnRl
cm5IVFRQSGVhZGVyTmFtZVN0cmluZyhuYW1lKSwgdmFsdWUpOworfQorCit2b2lkIEhUVFBIZWFk
ZXJNYXA6OmFkZChjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgdmFsdWUpCit7Cisg
ICAgYXV0byByZXN1bHQgPSBtX2hlYWRlcnMuYWRkKGludGVybkhUVFBIZWFkZXJOYW1lU3RyaW5n
KG5hbWUpLCB2YWx1ZSk7CiAgICAgaWYgKCFyZXN1bHQuaXNOZXdFbnRyeSkKICAgICAgICAgcmVz
dWx0Lml0ZXJhdG9yLT52YWx1ZSA9IHJlc3VsdC5pdGVyYXRvci0+dmFsdWUgKyAiLCAiICsgdmFs
dWU7CiB9CiAKLS8vIEFkYXB0ZXIgdGhhdCBhbGxvd3MgdGhlIEhhc2hNYXAgdG8gdGFrZSBDIHN0
cmluZ3MgYXMga2V5cy4KLXN0cnVjdCBDYXNlRm9sZGluZ0NTdHJpbmdUcmFuc2xhdG9yIHsKLSAg
ICBzdGF0aWMgdW5zaWduZWQgaGFzaChjb25zdCBjaGFyKiBjU3RyaW5nKQotICAgIHsKLSAgICAg
ICAgcmV0dXJuIENhc2VGb2xkaW5nSGFzaDo6aGFzaChjU3RyaW5nLCBzdHJsZW4oY1N0cmluZykp
OwotICAgIH0KLSAgICAKLSAgICBzdGF0aWMgYm9vbCBlcXVhbChjb25zdCBBdG9taWNTdHJpbmcm
IGtleSwgY29uc3QgY2hhciogY1N0cmluZykKLSAgICB7Ci0gICAgICAgIHJldHVybiBlcXVhbEln
bm9yaW5nQ2FzZShrZXksIGNTdHJpbmcpOwotICAgIH0KLSAgICAKLSAgICBzdGF0aWMgdm9pZCB0
cmFuc2xhdGUoQXRvbWljU3RyaW5nJiBsb2NhdGlvbiwgY29uc3QgY2hhciogY1N0cmluZywgdW5z
aWduZWQgLypoYXNoKi8pCi0gICAgewotICAgICAgICBsb2NhdGlvbiA9IEF0b21pY1N0cmluZyhj
U3RyaW5nKTsKLSAgICB9Ci19OwotCiBTdHJpbmcgSFRUUEhlYWRlck1hcDo6Z2V0KEhUVFBIZWFk
ZXJOYW1lIG5hbWUpIGNvbnN0CiB7CiAgICAgYXV0byBpdCA9IGZpbmQobmFtZSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBIZWFkZXJNYXAuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUEhlYWRlck1hcC5oCmluZGV4IGM2MGUx
MWVjYTM1YmU2N2U4YzNiZDI3NjViNDg2OTRmM2Q3MzliMWIuLjU5MDRlZWE5MGI5ZDExMWQ1ZjU1
MjU5YjdhM2U1MjJhZGY5MjhiMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvSFRUUEhlYWRlck1hcC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvSFRUUEhlYWRlck1hcC5oCkBAIC00Myw3ICs0Myw3IEBAIHR5cGVkZWYgVmVjdG9yPHN0
ZDo6cGFpcjxTdHJpbmcsIFN0cmluZz4+IENyb3NzVGhyZWFkSFRUUEhlYWRlck1hcERhdGE7CiAv
LyBGSVhNRTogTm90IGV2ZXJ5IGhlYWRlciBmaXRzIGludG8gYSBtYXAuIE5vdGFibHksIG11bHRp
cGxlIFNldC1Db29raWUgaGVhZGVyIGZpZWxkcyBhcmUgbmVlZGVkIHRvIHNldCBtdWx0aXBsZSBj
b29raWVzLgogCiBjbGFzcyBIVFRQSGVhZGVyTWFwIHsKLSAgICB0eXBlZGVmIEhhc2hNYXA8QXRv
bWljU3RyaW5nLCBTdHJpbmcsIENhc2VGb2xkaW5nSGFzaD4gSGFzaE1hcFR5cGU7CisgICAgdHlw
ZWRlZiBIYXNoTWFwPFN0cmluZywgU3RyaW5nLCBDYXNlRm9sZGluZ0hhc2g+IEhhc2hNYXBUeXBl
OwogcHVibGljOgogICAgIHR5cGVkZWYgSGFzaE1hcFR5cGU6OmNvbnN0X2l0ZXJhdG9yIGNvbnN0
X2l0ZXJhdG9yOwogCkBAIC01OSw5ICs1OSw5IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgY2xlYXIo
KSB7IG1faGVhZGVycy5jbGVhcigpOyB9CiAKLSAgICBTdHJpbmcgZ2V0KGNvbnN0IEF0b21pY1N0
cmluZyYgbmFtZSkgY29uc3Q7Ci0gICAgdm9pZCBzZXQoY29uc3QgQXRvbWljU3RyaW5nJiBuYW1l
LCBjb25zdCBTdHJpbmcmIHZhbHVlKTsKLSAgICB2b2lkIGFkZChjb25zdCBBdG9taWNTdHJpbmcm
IG5hbWUsIGNvbnN0IFN0cmluZyYgdmFsdWUpOworICAgIFN0cmluZyBnZXQoY29uc3QgU3RyaW5n
JiBuYW1lKSBjb25zdDsKKyAgICB2b2lkIHNldChjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0
cmluZyYgdmFsdWUpOworICAgIHZvaWQgYWRkKGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3Ry
aW5nJiB2YWx1ZSk7CiAKICAgICBTdHJpbmcgZ2V0KEhUVFBIZWFkZXJOYW1lKSBjb25zdDsKICAg
ICB2b2lkIHNldChIVFRQSGVhZGVyTmFtZSwgY29uc3QgU3RyaW5nJiB2YWx1ZSk7CkBAIC05MCw2
ICs5MCw5IEBAIHB1YmxpYzoKICAgICB9CiAKIHByaXZhdGU6CisgICAgLy8gRklYTUU6IEluc3Rl
YWQgb2YgaGF2aW5nIGEgSGFzaE1hcDxTdHJpbmcsIFN0cmluZz4sIHdlIGNvdWxkIGhhdmUgdHdv
IGhhc2ggbWFwcywKKyAgICAvLyBvbmUgSGFzaE1hcDxIVFRQSGVhZGVyTmFtZSwgU3RyaW5nPiBm
b3IgY29tbW9uIGhlYWRlcnMgYW5kIGFub3RoZXIgSGFzaE1hcDxTdHJpbmcsIFN0cmluZz4gZm9y
CisgICAgLy8gbGVzcyBjb21tb24gaGVhZGVycy4KICAgICBIYXNoTWFwVHlwZSBtX2hlYWRlcnM7
CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBI
ZWFkZXJOYW1lcy5pbiBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUEhlYWRl
ck5hbWVzLmluCmluZGV4IGNjZGY0NDIxN2UwZGFmYTc5ZGE5MTk1YzhjOWZkN2YxMjc1ZWNiMTQu
LjhiYmVlZTc0MjU0ZTNlYWFiZGU2ZTIwZWQwYWNmYjY0ZTgxOTNkZjIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUEhlYWRlck5hbWVzLmluCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUEhlYWRlck5hbWVzLmluCkBAIC0yNSw3
ICsyNSw5IEBACiAKIEFjY2VwdAogQWNjZXB0LUNoYXJzZXQKK0FjY2VwdC1MYW5ndWFnZQogQWNj
ZXB0LUVuY29kaW5nCitBY2NlcHQtUmFuZ2VzCiBBY2Nlc3MtQ29udHJvbC1BbGxvdy1DcmVkZW50
aWFscwogQWNjZXNzLUNvbnRyb2wtQWxsb3ctSGVhZGVycwogQWNjZXNzLUNvbnRyb2wtQWxsb3ct
TWV0aG9kcwpAQCAtMzUsNiArMzcsNyBAQCBBY2Nlc3MtQ29udHJvbC1NYXgtQWdlCiBBY2Nlc3Mt
Q29udHJvbC1SZXF1ZXN0LUhlYWRlcnMKIEFjY2Vzcy1Db250cm9sLVJlcXVlc3QtTWV0aG9kCiBB
Z2UKK0FsdGVybmF0ZS1Qcm90b2NvbAogQXV0aG9yaXphdGlvbgogQ2FjaGUtQ29udHJvbAogQ29u
bmVjdGlvbgpAQCAtNzcsNiArODAsNyBAQCBTZWMtV2ViU29ja2V0LUV4dGVuc2lvbnMKIFNlYy1X
ZWJTb2NrZXQtS2V5CiBTZWMtV2ViU29ja2V0LVByb3RvY29sCiBTZWMtV2ViU29ja2V0LVZlcnNp
b24KK1NlcnZlcgogU2V0LUNvb2tpZQogU2V0LUNvb2tpZTIKIFRFCkBAIC04NSwxMSArODksMTYg
QEAgVHJhaWxlcgogVHJhbnNmZXItRW5jb2RpbmcKIFVwZ3JhZGUKIFVzZXItQWdlbnQKK1ZhcnkK
IFZpYQorWC1DaGVjay1DYWNoZWFibGUKK1gtQ29udGVudC1UeXBlLU9wdGlvbnMKIFgtRE5TLVBy
ZWZldGNoLUNvbnRyb2wKIFgtRnJhbWUtT3B0aW9ucworWC1Qb3dlcmVkLUJ5CiBYLVdlYktpdC1D
U1AKIFgtV2ViS2l0LUNTUC1SZXBvcnQtT25seQorWC1YU1MtUHJvdGVjdGlvbgogCiAvLyBUaGVz
ZSBoZWFkZXJzIGFyZSBzcGVjaWZpYyB0byBHU3RyZWFtZXIuCiBJY3ktTWV0YWRhdGEKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUFBhcnNlcnMuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5jcHAKaW5kZXggMjZm
OTBjZTE4OTM2NjMwYmZmNDM1YzNlZTdhOGY0YjNmMzA2NTdlYy4uYzBmY2M4MWNkYTljNWY4NjIz
YmRlYjcwZGEwZDdiOWM0YzdkNmQ4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9IVFRQUGFyc2Vycy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9IVFRQUGFyc2Vycy5jcHAKQEAgLTYwNSw3ICs2MDUsNyBAQCBzaXplX3QgcGFyc2VI
VFRQUmVxdWVzdExpbmUoY29uc3QgY2hhciogZGF0YSwgc2l6ZV90IGxlbmd0aCwgU3RyaW5nJiBm
YWlsdXJlUmVhcwogICAgIHJldHVybiBlbmQgLSBkYXRhOwogfQogCi1zaXplX3QgcGFyc2VIVFRQ
SGVhZGVyKGNvbnN0IGNoYXIqIHN0YXJ0LCBzaXplX3QgbGVuZ3RoLCBTdHJpbmcmIGZhaWx1cmVS
ZWFzb24sIEF0b21pY1N0cmluZyYgbmFtZVN0ciwgU3RyaW5nJiB2YWx1ZVN0ciwgYm9vbCBzdHJp
Y3QpCitzaXplX3QgcGFyc2VIVFRQSGVhZGVyKGNvbnN0IGNoYXIqIHN0YXJ0LCBzaXplX3QgbGVu
Z3RoLCBTdHJpbmcmIGZhaWx1cmVSZWFzb24sIFN0cmluZyYgbmFtZVN0ciwgU3RyaW5nJiB2YWx1
ZVN0ciwgYm9vbCBzdHJpY3QpCiB7CiAgICAgY29uc3QgY2hhciogcCA9IHN0YXJ0OwogICAgIGNv
bnN0IGNoYXIqIGVuZCA9IHN0YXJ0ICsgbGVuZ3RoOwpAQCAtNjY1LDcgKzY2NSw3IEBAIHNpemVf
dCBwYXJzZUhUVFBIZWFkZXIoY29uc3QgY2hhciogc3RhcnQsIHNpemVfdCBsZW5ndGgsIFN0cmlu
ZyYgZmFpbHVyZVJlYXNvbiwKICAgICAgICAgZmFpbHVyZVJlYXNvbiA9ICJDUiBkb2Vzbid0IGZv
bGxvdyBMRiBhZnRlciB2YWx1ZSBhdCAiICsgdHJpbUlucHV0U2FtcGxlKHAsIGVuZCAtIHApOwog
ICAgICAgICByZXR1cm4gMDsKICAgICB9Ci0gICAgbmFtZVN0ciA9IEF0b21pY1N0cmluZzo6ZnJv
bVVURjgobmFtZS5kYXRhKCksIG5hbWUuc2l6ZSgpKTsKKyAgICBuYW1lU3RyID0gU3RyaW5nOjpm
cm9tVVRGOChuYW1lLmRhdGEoKSwgbmFtZS5zaXplKCkpOwogICAgIHZhbHVlU3RyID0gU3RyaW5n
Ojpmcm9tVVRGOCh2YWx1ZS5kYXRhKCksIHZhbHVlLnNpemUoKSk7CiAgICAgaWYgKG5hbWVTdHIu
aXNOdWxsKCkpIHsKICAgICAgICAgZmFpbHVyZVJlYXNvbiA9ICJJbnZhbGlkIFVURi04IHNlcXVl
bmNlIGluIGhlYWRlciBuYW1lIjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvSFRUUFBhcnNlcnMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
SFRUUFBhcnNlcnMuaAppbmRleCA3ZTViYmNkZDY1ODRiNTAxY2QxMjgzNTIyZjRjZTM5MWY0Y2Fj
ZGFhLi44YWUxNDRiNzVlMjNlZmM3ZTE0MTVjY2VkODRlZjkxYjFkMDJkMzAyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5oCkBAIC04Myw3ICs4Myw3
IEBAIENvbnRlbnRUeXBlT3B0aW9uc0Rpc3Bvc2l0aW9uIHBhcnNlQ29udGVudFR5cGVPcHRpb25z
SGVhZGVyKGNvbnN0IFN0cmluZyYgaGVhZGVyCiAvLyBQYXJzaW5nIENvbXBsZXRlIEhUVFAgTWVz
c2FnZXMuCiBlbnVtIEhUVFBWZXJzaW9uIHsgVW5rbm93biwgSFRUUF8xXzAsIEhUVFBfMV8xIH07
CiBzaXplX3QgcGFyc2VIVFRQUmVxdWVzdExpbmUoY29uc3QgY2hhciogZGF0YSwgc2l6ZV90IGxl
bmd0aCwgU3RyaW5nJiBmYWlsdXJlUmVhc29uLCBTdHJpbmcmIG1ldGhvZCwgU3RyaW5nJiB1cmws
IEhUVFBWZXJzaW9uJik7Ci1zaXplX3QgcGFyc2VIVFRQSGVhZGVyKGNvbnN0IGNoYXIqIGRhdGEs
IHNpemVfdCBsZW5ndGgsIFN0cmluZyYgZmFpbHVyZVJlYXNvbiwgQXRvbWljU3RyaW5nJiBuYW1l
U3RyLCBTdHJpbmcmIHZhbHVlU3RyLCBib29sIHN0cmljdCA9IHRydWUpOworc2l6ZV90IHBhcnNl
SFRUUEhlYWRlcihjb25zdCBjaGFyKiBkYXRhLCBzaXplX3QgbGVuZ3RoLCBTdHJpbmcmIGZhaWx1
cmVSZWFzb24sIFN0cmluZyYgbmFtZVN0ciwgU3RyaW5nJiB2YWx1ZVN0ciwgYm9vbCBzdHJpY3Qg
PSB0cnVlKTsKIHNpemVfdCBwYXJzZUhUVFBSZXF1ZXN0Qm9keShjb25zdCBjaGFyKiBkYXRhLCBz
aXplX3QgbGVuZ3RoLCBWZWN0b3I8dW5zaWduZWQgY2hhcj4mIGJvZHkpOwogCiB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVxdWVzdEJhc2Uu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlcXVlc3RCYXNl
LmNwcAppbmRleCA1Mjg2ZGI1NmZlODVmNDViZTRmYTJhMDU5ODY1NWI0YjU3OGFmMjcyLi4wODI2
YWE3YzY0MDI2YmRiMTI1MjEyY2YwNDIwYWY3MWE0MDAzOWZkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVxdWVzdEJhc2UuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXF1ZXN0QmFzZS5jcHAKQEAg
LTIzMiw3ICsyMzIsNyBAQCBjb25zdCBIVFRQSGVhZGVyTWFwJiBSZXNvdXJjZVJlcXVlc3RCYXNl
OjpodHRwSGVhZGVyRmllbGRzKCkgY29uc3QKICAgICByZXR1cm4gbV9odHRwSGVhZGVyRmllbGRz
OyAKIH0KIAotU3RyaW5nIFJlc291cmNlUmVxdWVzdEJhc2U6Omh0dHBIZWFkZXJGaWVsZChjb25z
dCBBdG9taWNTdHJpbmcmIG5hbWUpIGNvbnN0CitTdHJpbmcgUmVzb3VyY2VSZXF1ZXN0QmFzZTo6
aHR0cEhlYWRlckZpZWxkKGNvbnN0IFN0cmluZyYgbmFtZSkgY29uc3QKIHsKICAgICB1cGRhdGVS
ZXNvdXJjZVJlcXVlc3QoKTsgCiAgICAgCkBAIC0yNDYsNyArMjQ2LDcgQEAgU3RyaW5nIFJlc291
cmNlUmVxdWVzdEJhc2U6Omh0dHBIZWFkZXJGaWVsZChIVFRQSGVhZGVyTmFtZSBuYW1lKSBjb25z
dAogICAgIHJldHVybiBtX2h0dHBIZWFkZXJGaWVsZHMuZ2V0KG5hbWUpOwogfQogCi12b2lkIFJl
c291cmNlUmVxdWVzdEJhc2U6OnNldEhUVFBIZWFkZXJGaWVsZChjb25zdCBBdG9taWNTdHJpbmcm
IG5hbWUsIGNvbnN0IFN0cmluZyYgdmFsdWUpCit2b2lkIFJlc291cmNlUmVxdWVzdEJhc2U6OnNl
dEhUVFBIZWFkZXJGaWVsZChjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgdmFsdWUp
CiB7CiAgICAgdXBkYXRlUmVzb3VyY2VSZXF1ZXN0KCk7CiAKQEAgLTQ1Myw3ICs0NTMsNyBAQCB2
b2lkIFJlc291cmNlUmVxdWVzdEJhc2U6OnNldFByaW9yaXR5KFJlc291cmNlTG9hZFByaW9yaXR5
IHByaW9yaXR5KQogICAgICAgICBtX3BsYXRmb3JtUmVxdWVzdFVwZGF0ZWQgPSBmYWxzZTsKIH0K
IAotdm9pZCBSZXNvdXJjZVJlcXVlc3RCYXNlOjphZGRIVFRQSGVhZGVyRmllbGQoY29uc3QgQXRv
bWljU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIHZhbHVlKSAKK3ZvaWQgUmVzb3VyY2VSZXF1
ZXN0QmFzZTo6YWRkSFRUUEhlYWRlckZpZWxkKGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3Ry
aW5nJiB2YWx1ZSkgCiB7CiAgICAgdXBkYXRlUmVzb3VyY2VSZXF1ZXN0KCk7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXF1ZXN0QmFzZS5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlcXVlc3RCYXNlLmgK
aW5kZXggYTRiMjM2ZDBjMjVlM2ZiNDc3MTdiY2ViNDE0ZTM4NjEwNzNhNmNiOS4uODEwYzE5NjI3
YThmOGE0MmVlMjI3OGU4ZWYwYTFiZjc4ZDE5YmMzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlcXVlc3RCYXNlLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlcXVlc3RCYXNlLmgKQEAgLTgyLDExICs4
MiwxMSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIGNvbnN0IEhUVFBIZWFkZXJNYXAm
IGh0dHBIZWFkZXJGaWVsZHMoKSBjb25zdDsKICAgICAgICAgdm9pZCBzZXRIVFRQSGVhZGVyRmll
bGRzKEhUVFBIZWFkZXJNYXApOwogCi0gICAgICAgIFN0cmluZyBodHRwSGVhZGVyRmllbGQoY29u
c3QgQXRvbWljU3RyaW5nJiBuYW1lKSBjb25zdDsKKyAgICAgICAgU3RyaW5nIGh0dHBIZWFkZXJG
aWVsZChjb25zdCBTdHJpbmcmIG5hbWUpIGNvbnN0OwogICAgICAgICBTdHJpbmcgaHR0cEhlYWRl
ckZpZWxkKEhUVFBIZWFkZXJOYW1lKSBjb25zdDsKLSAgICAgICAgdm9pZCBzZXRIVFRQSGVhZGVy
RmllbGQoY29uc3QgQXRvbWljU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIHZhbHVlKTsKKyAg
ICAgICAgdm9pZCBzZXRIVFRQSGVhZGVyRmllbGQoY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBT
dHJpbmcmIHZhbHVlKTsKICAgICAgICAgdm9pZCBzZXRIVFRQSGVhZGVyRmllbGQoSFRUUEhlYWRl
ck5hbWUsIGNvbnN0IFN0cmluZyYgdmFsdWUpOwotICAgICAgICB2b2lkIGFkZEhUVFBIZWFkZXJG
aWVsZChjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgdmFsdWUpOworICAg
ICAgICB2b2lkIGFkZEhUVFBIZWFkZXJGaWVsZChjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0
cmluZyYgdmFsdWUpOwogCiAgICAgICAgIC8vIEluc3RlYWQgb2YgcGFzc2luZyBhIHN0cmluZyBs
aXRlcmFsIHRvIGFueSBvZiB0aGVzZSBmdW5jdGlvbnMsIGp1c3QgdXNlIGEgSFRUUEhlYWRlck5h
bWUgaW5zdGVhZC4KICAgICAgICAgdGVtcGxhdGU8c2l6ZV90IGxlbmd0aD4gU3RyaW5nIGh0dHBI
ZWFkZXJGaWVsZChjb25zdCBjaGFyICgmKVtsZW5ndGhdKSBjb25zdCA9IGRlbGV0ZTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJh
c2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNl
QmFzZS5jcHAKaW5kZXggMWE4N2UwMDY0NDI4OGE4YjM0MTQyZGM5NmQxZmUzMGM0NTFiNzBkZC4u
YTBmNzE2OTE2NTU1NWIxNzlkMTBlYmQ5OTQ1YmRmODA4MTRmZTU1YyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5j
cHAKQEAgLTI1OSw3ICsyNTksNyBAQCB2b2lkIFJlc291cmNlUmVzcG9uc2VCYXNlOjpzZXRIVFRQ
U3RhdHVzVGV4dChjb25zdCBTdHJpbmcmIHN0YXR1c1RleHQpCiAgICAgLy8gRklYTUU6IFNob3Vs
ZCBpbnZhbGlkYXRlIG9yIHVwZGF0ZSBwbGF0Zm9ybSByZXNwb25zZSBpZiBwcmVzZW50LgogfQog
Ci1TdHJpbmcgUmVzb3VyY2VSZXNwb25zZUJhc2U6Omh0dHBIZWFkZXJGaWVsZChjb25zdCBBdG9t
aWNTdHJpbmcmIG5hbWUpIGNvbnN0CitTdHJpbmcgUmVzb3VyY2VSZXNwb25zZUJhc2U6Omh0dHBI
ZWFkZXJGaWVsZChjb25zdCBTdHJpbmcmIG5hbWUpIGNvbnN0CiB7CiAgICAgbGF6eUluaXQoQ29t
bW9uRmllbGRzT25seSk7CiAKQEAgLTMxNiwxMiArMzE2LDEyIEBAIHZvaWQgUmVzb3VyY2VSZXNw
b25zZUJhc2U6OnVwZGF0ZUhlYWRlclBhcnNlZFN0YXRlKEhUVFBIZWFkZXJOYW1lIG5hbWUpCiAg
ICAgfQogfQogCi12b2lkIFJlc291cmNlUmVzcG9uc2VCYXNlOjpzZXRIVFRQSGVhZGVyRmllbGQo
Y29uc3QgQXRvbWljU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIHZhbHVlKQordm9pZCBSZXNv
dXJjZVJlc3BvbnNlQmFzZTo6c2V0SFRUUEhlYWRlckZpZWxkKGNvbnN0IFN0cmluZyYgbmFtZSwg
Y29uc3QgU3RyaW5nJiB2YWx1ZSkKIHsKICAgICBsYXp5SW5pdChDb21tb25BbmRVbmNvbW1vbkZp
ZWxkcyk7CiAKICAgICBIVFRQSGVhZGVyTmFtZSBoZWFkZXJOYW1lOwotICAgIGlmIChmaW5kSFRU
UEhlYWRlck5hbWUobmFtZS5zdHJpbmcoKSwgaGVhZGVyTmFtZSkpCisgICAgaWYgKGZpbmRIVFRQ
SGVhZGVyTmFtZShuYW1lLCBoZWFkZXJOYW1lKSkKICAgICAgICAgdXBkYXRlSGVhZGVyUGFyc2Vk
U3RhdGUoaGVhZGVyTmFtZSk7CiAKICAgICBtX2h0dHBIZWFkZXJGaWVsZHMuc2V0KG5hbWUsIHZh
bHVlKTsKQEAgLTM0MCwxMiArMzQwLDEyIEBAIHZvaWQgUmVzb3VyY2VSZXNwb25zZUJhc2U6OnNl
dEhUVFBIZWFkZXJGaWVsZChIVFRQSGVhZGVyTmFtZSBuYW1lLCBjb25zdCBTdHJpbmcmCiAgICAg
Ly8gRklYTUU6IFNob3VsZCBpbnZhbGlkYXRlIG9yIHVwZGF0ZSBwbGF0Zm9ybSByZXNwb25zZSBp
ZiBwcmVzZW50LgogfQogCi12b2lkIFJlc291cmNlUmVzcG9uc2VCYXNlOjphZGRIVFRQSGVhZGVy
RmllbGQoY29uc3QgQXRvbWljU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIHZhbHVlKQordm9p
ZCBSZXNvdXJjZVJlc3BvbnNlQmFzZTo6YWRkSFRUUEhlYWRlckZpZWxkKGNvbnN0IFN0cmluZyYg
bmFtZSwgY29uc3QgU3RyaW5nJiB2YWx1ZSkKIHsKICAgICBsYXp5SW5pdChDb21tb25BbmRVbmNv
bW1vbkZpZWxkcyk7CiAKICAgICBIVFRQSGVhZGVyTmFtZSBoZWFkZXJOYW1lOwotICAgIGlmIChm
aW5kSFRUUEhlYWRlck5hbWUobmFtZS5zdHJpbmcoKSwgaGVhZGVyTmFtZSkpCisgICAgaWYgKGZp
bmRIVFRQSGVhZGVyTmFtZShuYW1lLCBoZWFkZXJOYW1lKSkKICAgICAgICAgdXBkYXRlSGVhZGVy
UGFyc2VkU3RhdGUoaGVhZGVyTmFtZSk7CiAKICAgICBtX2h0dHBIZWFkZXJGaWVsZHMuYWRkKG5h
bWUsIHZhbHVlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
UmVzb3VyY2VSZXNwb25zZUJhc2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
UmVzb3VyY2VSZXNwb25zZUJhc2UuaAppbmRleCA0ZDAxNWI5NTVlZWY4NDlmODkzOWU0YzFlNTIx
MWM2MDc5YWE3YWJjLi5mNzExMzNiYTNmYjA2NzNlNWQ5NTVkMjBmMWFmNmRhYjhhYjBhZGVjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9u
c2VCYXNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJl
c3BvbnNlQmFzZS5oCkBAIC04MCwxMiArODAsMTIgQEAgcHVibGljOgogCiAgICAgY29uc3QgSFRU
UEhlYWRlck1hcCYgaHR0cEhlYWRlckZpZWxkcygpIGNvbnN0OwogCi0gICAgU3RyaW5nIGh0dHBI
ZWFkZXJGaWVsZChjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUpIGNvbnN0OworICAgIFN0cmluZyBo
dHRwSGVhZGVyRmllbGQoY29uc3QgU3RyaW5nJiBuYW1lKSBjb25zdDsKICAgICBTdHJpbmcgaHR0
cEhlYWRlckZpZWxkKEhUVFBIZWFkZXJOYW1lKSBjb25zdDsKLSAgICB2b2lkIHNldEhUVFBIZWFk
ZXJGaWVsZChjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgdmFsdWUpOwor
ICAgIHZvaWQgc2V0SFRUUEhlYWRlckZpZWxkKGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3Ry
aW5nJiB2YWx1ZSk7CiAgICAgdm9pZCBzZXRIVFRQSGVhZGVyRmllbGQoSFRUUEhlYWRlck5hbWUs
IGNvbnN0IFN0cmluZyYgdmFsdWUpOwogCi0gICAgdm9pZCBhZGRIVFRQSGVhZGVyRmllbGQoY29u
c3QgQXRvbWljU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIHZhbHVlKTsKKyAgICB2b2lkIGFk
ZEhUVFBIZWFkZXJGaWVsZChjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgdmFsdWUp
OwogCiAgICAgLy8gSW5zdGVhZCBvZiBwYXNzaW5nIGEgc3RyaW5nIGxpdGVyYWwgdG8gYW55IG9m
IHRoZXNlIGZ1bmN0aW9ucywganVzdCB1c2UgYSBIVFRQSGVhZGVyTmFtZSBpbnN0ZWFkLgogICAg
IHRlbXBsYXRlPHNpemVfdCBsZW5ndGg+IFN0cmluZyBodHRwSGVhZGVyRmllbGQoY29uc3QgY2hh
ciAoJilbbGVuZ3RoXSkgY29uc3QgPSBkZWxldGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9SZXNvdXJjZVJlcXVlc3RNYWMubW0gYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9SZXNvdXJjZVJlcXVlc3RNYWMubW0KaW5kZXggMjkx
NGY3MmEyZTdlOWViNGQ1NmY3OTlhOWM1MmE0NTUyODg1OGE0My4uMjBkOWZmYWRhYjIxMGVmM2Ez
NDczODRlYjdiNDE0NGIwY2QyNjE0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9tYWMvUmVzb3VyY2VSZXF1ZXN0TWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvbWFjL1Jlc291cmNlUmVxdWVzdE1hYy5tbQpAQCAtMTE2LDcgKzEx
Niw3IEBAIHZvaWQgUmVzb3VyY2VSZXF1ZXN0Ojpkb1VwZGF0ZVJlc291cmNlUmVxdWVzdCgpCiAg
ICAgTlNTdHJpbmcgKm5hbWU7CiAgICAgbV9odHRwSGVhZGVyRmllbGRzLmNsZWFyKCk7CiAgICAg
d2hpbGUgKChuYW1lID0gW2UgbmV4dE9iamVjdF0pKQotICAgICAgICBtX2h0dHBIZWFkZXJGaWVs
ZHMuc2V0KG5hbWUsIFtoZWFkZXJzIG9iamVjdEZvcktleTpuYW1lXSk7CisgICAgICAgIG1faHR0
cEhlYWRlckZpZWxkcy5zZXQoU3RyaW5nKG5hbWUpLCBbaGVhZGVycyBvYmplY3RGb3JLZXk6bmFt
ZV0pOwogCiAgICAgbV9yZXNwb25zZUNvbnRlbnREaXNwb3NpdGlvbkVuY29kaW5nRmFsbGJhY2tB
cnJheS5jbGVhcigpOwogICAgIE5TQXJyYXkgKmVuY29kaW5nRmFsbGJhY2tzID0gW21fbnNSZXF1
ZXN0LmdldCgpIGNvbnRlbnREaXNwb3NpdGlvbkVuY29kaW5nRmFsbGJhY2tBcnJheV07CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9SZXNvdXJjZVJlc3Bv
bnNlTWFjLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvUmVzb3VyY2VS
ZXNwb25zZU1hYy5tbQppbmRleCA1YmE1ZmEzYjhmZDk2OGNkMTc0NTE3M2FjYWI2Y2FmNTE4NzE0
MTNlLi4zZDg3Mzc2ZmQyYmEzZjYyODY2ZWVkZTA4OTAxYzAzZTk1YmM3YmNmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21hYy9SZXNvdXJjZVJlc3BvbnNlTWFj
Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL1Jlc291cmNlUmVz
cG9uc2VNYWMubW0KQEAgLTEzMSw3ICsxMzEsNyBAQCB2b2lkIFJlc291cmNlUmVzcG9uc2U6OnBs
YXRmb3JtTGF6eUluaXQoSW5pdExldmVsIGluaXRMZXZlbCkKICAgICAgICAgICAgIAogICAgICAg
ICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IFdURl9BUlJBWV9MRU5HVEgoY29tbW9uSGVh
ZGVyRmllbGRzKTsgKytpKSB7CiAgICAgICAgICAgICAgICAgaWYgKE5TU3RyaW5nKiBoZWFkZXJW
YWx1ZSA9IFtoZWFkZXJzIG9iamVjdEZvcktleTpjb21tb25IZWFkZXJGaWVsZHNbaV1dKQotICAg
ICAgICAgICAgICAgICAgICBtX2h0dHBIZWFkZXJGaWVsZHMuc2V0KFtjb21tb25IZWFkZXJGaWVs
ZHNbaV0gVVRGOFN0cmluZ10sIGhlYWRlclZhbHVlKTsKKyAgICAgICAgICAgICAgICAgICAgbV9o
dHRwSGVhZGVyRmllbGRzLnNldChTdHJpbmcoY29tbW9uSGVhZGVyRmllbGRzW2ldKSwgaGVhZGVy
VmFsdWUpOwogICAgICAgICAgICAgfQogICAgICAgICB9IGVsc2UKICAgICAgICAgICAgIG1faHR0
cFN0YXR1c0NvZGUgPSAwOwpAQCAtMTU0LDcgKzE1NCw3IEBAIHZvaWQgUmVzb3VyY2VSZXNwb25z
ZTo6cGxhdGZvcm1MYXp5SW5pdChJbml0TGV2ZWwgaW5pdExldmVsKQogICAgICAgICAgICAgTlNE
aWN0aW9uYXJ5ICpoZWFkZXJzID0gW2h0dHBSZXNwb25zZSBhbGxIZWFkZXJGaWVsZHNdOwogICAg
ICAgICAgICAgTlNFbnVtZXJhdG9yICplID0gW2hlYWRlcnMga2V5RW51bWVyYXRvcl07CiAgICAg
ICAgICAgICB3aGlsZSAoTlNTdHJpbmcgKm5hbWUgPSBbZSBuZXh0T2JqZWN0XSkKLSAgICAgICAg
ICAgICAgICBtX2h0dHBIZWFkZXJGaWVsZHMuc2V0KG5hbWUsIFtoZWFkZXJzIG9iamVjdEZvcktl
eTpuYW1lXSk7CisgICAgICAgICAgICAgICAgbV9odHRwSGVhZGVyRmllbGRzLnNldChTdHJpbmco
bmFtZSksIFtoZWFkZXJzIG9iamVjdEZvcktleTpuYW1lXSk7CiAgICAgICAgICAgICAKICAgICAg
ICAgICAgIFtwb29sIGRyYWluXTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUveG1sL1hNTEh0dHBSZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVx
dWVzdC5jcHAKaW5kZXggNDE2ZTg2NmFiNTgzNDM3YTY5ZWFhMjM3NTZmYzlkMTQwZWZiNGRmMy4u
ZTVjZjUzZWQ3NTlkZDlhZDU3Nzk2ZTRjYTVhNmJkMWI4N2E2NjcxZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS94
bWwvWE1MSHR0cFJlcXVlc3QuY3BwCkBAIC05MTMsNyArOTEzLDcgQEAgdm9pZCBYTUxIdHRwUmVx
dWVzdDo6b3ZlcnJpZGVNaW1lVHlwZShjb25zdCBTdHJpbmcmIG92ZXJyaWRlKQogICAgIG1fbWlt
ZVR5cGVPdmVycmlkZSA9IG92ZXJyaWRlOwogfQogCi12b2lkIFhNTEh0dHBSZXF1ZXN0OjpzZXRS
ZXF1ZXN0SGVhZGVyKGNvbnN0IEF0b21pY1N0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiB2YWx1
ZSwgRXhjZXB0aW9uQ29kZSYgZWMpCit2b2lkIFhNTEh0dHBSZXF1ZXN0OjpzZXRSZXF1ZXN0SGVh
ZGVyKGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiB2YWx1ZSwgRXhjZXB0aW9uQ29k
ZSYgZWMpCiB7CiAgICAgaWYgKG1fc3RhdGUgIT0gT1BFTkVEIHx8IG1fbG9hZGVyKSB7CiAjaWYg
RU5BQkxFKERBU0hCT0FSRF9TVVBQT1JUKQpAQCAtOTM5LDEyICs5MzksMTIgQEAgdm9pZCBYTUxI
dHRwUmVxdWVzdDo6c2V0UmVxdWVzdEhlYWRlcihjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUsIGNv
bnN0IFN0cmluZyYgdmEKICAgICBzZXRSZXF1ZXN0SGVhZGVySW50ZXJuYWwobmFtZSwgdmFsdWUp
OwogfQogCi12b2lkIFhNTEh0dHBSZXF1ZXN0OjpzZXRSZXF1ZXN0SGVhZGVySW50ZXJuYWwoY29u
c3QgQXRvbWljU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIHZhbHVlKQordm9pZCBYTUxIdHRw
UmVxdWVzdDo6c2V0UmVxdWVzdEhlYWRlckludGVybmFsKGNvbnN0IFN0cmluZyYgbmFtZSwgY29u
c3QgU3RyaW5nJiB2YWx1ZSkKIHsKICAgICBtX3JlcXVlc3RIZWFkZXJzLmFkZChuYW1lLCB2YWx1
ZSk7CiB9CiAKLVN0cmluZyBYTUxIdHRwUmVxdWVzdDo6Z2V0UmVxdWVzdEhlYWRlcihjb25zdCBB
dG9taWNTdHJpbmcmIG5hbWUpIGNvbnN0CitTdHJpbmcgWE1MSHR0cFJlcXVlc3Q6OmdldFJlcXVl
c3RIZWFkZXIoY29uc3QgU3RyaW5nJiBuYW1lKSBjb25zdAogewogICAgIHJldHVybiBtX3JlcXVl
c3RIZWFkZXJzLmdldChuYW1lKTsKIH0KQEAgLTk4Myw3ICs5ODMsNyBAQCBTdHJpbmcgWE1MSHR0
cFJlcXVlc3Q6OmdldEFsbFJlc3BvbnNlSGVhZGVycygpIGNvbnN0CiAgICAgcmV0dXJuIHN0cmlu
Z0J1aWxkZXIudG9TdHJpbmcoKTsKIH0KIAotU3RyaW5nIFhNTEh0dHBSZXF1ZXN0OjpnZXRSZXNw
b25zZUhlYWRlcihjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUpIGNvbnN0CitTdHJpbmcgWE1MSHR0
cFJlcXVlc3Q6OmdldFJlc3BvbnNlSGVhZGVyKGNvbnN0IFN0cmluZyYgbmFtZSkgY29uc3QKIHsK
ICAgICBpZiAobV9zdGF0ZSA8IEhFQURFUlNfUkVDRUlWRUQgfHwgbV9lcnJvcikKICAgICAgICAg
cmV0dXJuIFN0cmluZygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0dHBS
ZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuaAppbmRleCA0ZjVh
NTNiYmJmZDQ0OGY0MGVjNDAwNzJkNWIxZjFjOTkwYmRkZWUxLi43MTBmNmY3YTZiMDU4Zjg1ZDQ1
ODI1ZjE0Yzg2Y2QxYzdmNTZlMGQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS94bWwvWE1M
SHR0cFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuaApA
QCAtMTAyLDExICsxMDIsMTEgQEAgcHVibGljOgogICAgIHZvaWQgc2VuZChKU0M6OkFycmF5QnVm
ZmVyKiwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQgc2VuZChKU0M6OkFycmF5QnVmZmVyVmll
dyosIEV4Y2VwdGlvbkNvZGUmKTsKICAgICB2b2lkIGFib3J0KCk7Ci0gICAgdm9pZCBzZXRSZXF1
ZXN0SGVhZGVyKGNvbnN0IEF0b21pY1N0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiB2YWx1ZSwg
RXhjZXB0aW9uQ29kZSYpOworICAgIHZvaWQgc2V0UmVxdWVzdEhlYWRlcihjb25zdCBTdHJpbmcm
IG5hbWUsIGNvbnN0IFN0cmluZyYgdmFsdWUsIEV4Y2VwdGlvbkNvZGUmKTsKICAgICB2b2lkIG92
ZXJyaWRlTWltZVR5cGUoY29uc3QgU3RyaW5nJiBvdmVycmlkZSk7CiAgICAgYm9vbCBkb25lV2l0
aG91dEVycm9ycygpIGNvbnN0IHsgcmV0dXJuICFtX2Vycm9yICYmIG1fc3RhdGUgPT0gRE9ORTsg
fQogICAgIFN0cmluZyBnZXRBbGxSZXNwb25zZUhlYWRlcnMoKSBjb25zdDsKLSAgICBTdHJpbmcg
Z2V0UmVzcG9uc2VIZWFkZXIoY29uc3QgQXRvbWljU3RyaW5nJiBuYW1lKSBjb25zdDsKKyAgICBT
dHJpbmcgZ2V0UmVzcG9uc2VIZWFkZXIoY29uc3QgU3RyaW5nJiBuYW1lKSBjb25zdDsKICAgICBT
dHJpbmcgcmVzcG9uc2VUZXh0KEV4Y2VwdGlvbkNvZGUmKTsKICAgICBTdHJpbmcgcmVzcG9uc2VU
ZXh0SWdub3JpbmdSZXNwb25zZVR5cGUoKSBjb25zdCB7IHJldHVybiBtX3Jlc3BvbnNlQnVpbGRl
ci50b1N0cmluZ1ByZXNlcnZlQ2FwYWNpdHkoKTsgfQogICAgIFN0cmluZyByZXNwb25zZU1JTUVU
eXBlKCkgY29uc3Q7CkBAIC0xODksOCArMTg5LDggQEAgcHJpdmF0ZToKICAgICBib29sIGluaXRT
ZW5kKEV4Y2VwdGlvbkNvZGUmKTsKICAgICB2b2lkIHNlbmRCeXRlc0RhdGEoY29uc3Qgdm9pZCos
IHNpemVfdCwgRXhjZXB0aW9uQ29kZSYpOwogCi0gICAgU3RyaW5nIGdldFJlcXVlc3RIZWFkZXIo
Y29uc3QgQXRvbWljU3RyaW5nJiBuYW1lKSBjb25zdDsKLSAgICB2b2lkIHNldFJlcXVlc3RIZWFk
ZXJJbnRlcm5hbChjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgdmFsdWUp
OworICAgIFN0cmluZyBnZXRSZXF1ZXN0SGVhZGVyKGNvbnN0IFN0cmluZyYgbmFtZSkgY29uc3Q7
CisgICAgdm9pZCBzZXRSZXF1ZXN0SGVhZGVySW50ZXJuYWwoY29uc3QgU3RyaW5nJiBuYW1lLCBj
b25zdCBTdHJpbmcmIHZhbHVlKTsKIAogICAgIHZvaWQgY2hhbmdlU3RhdGUoU3RhdGUgbmV3U3Rh
dGUpOwogICAgIHZvaWQgY2FsbFJlYWR5U3RhdGVDaGFuZ2VMaXN0ZW5lcigpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcAppbmRleCA4YTFlM2Iz
NmY0ZWNmY2Q2OTYxNWI0MzcxYzc3MTViYTYxN2Q3MzE2Li5mOTBhYWM4OTM0Y2ZjMzIwZDgwN2Vh
ZDA4NjkxMmRjNzY3M2IxZjU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2Vi
Q29yZUFyZ3VtZW50Q29kZXJzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViQ29y
ZUFyZ3VtZW50Q29kZXJzLmNwcApAQCAtNDA5LDcgKzQwOSw3IEBAIGJvb2wgQXJndW1lbnRDb2Rl
cjxIVFRQSGVhZGVyTWFwPjo6ZGVjb2RlKEFyZ3VtZW50RGVjb2RlciYgZGVjb2RlciwgSFRUUEhl
YWRlck1hCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBp
IDwgc2l6ZTsgKytpKSB7Ci0gICAgICAgIEF0b21pY1N0cmluZyBuYW1lOworICAgICAgICBTdHJp
bmcgbmFtZTsKICAgICAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShuYW1lKSkKICAgICAgICAgICAg
IHJldHVybiBmYWxzZTsKIAo=
</data>
<flag name="review"
          id="257676"
          type_id="1"
          status="+"
          setter="kling"
    />
          </attachment>
      

    </bug>

</bugzilla>