<?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>116178</bug_id>
          
          <creation_ts>2013-05-15 12:44:17 -0700</creation_ts>
          <short_desc>Remove WebSocketHandshakeRequest class</short_desc>
          <delta_ts>2013-05-17 12:06:08 -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>
          <cc>ap</cc>
    
    <cc>eflews.bot</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kling</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-ews</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>889455</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-05-15 12:44:17 -0700</bug_when>
    <thetext>Remove WebSocketHandshakeRequest class</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889457</commentid>
    <comment_count>1</comment_count>
      <attachid>201867</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-05-15 12:45:50 -0700</bug_when>
    <thetext>Created attachment 201867
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889471</commentid>
    <comment_count>2</comment_count>
      <attachid>201867</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2013-05-15 12:58:26 -0700</bug_when>
    <thetext>Comment on attachment 201867
Patch

Attachment 201867 did not pass qt-wk2-ews (qt-wk2):
Output: http://webkit-queues.appspot.com/results/476631</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889472</commentid>
    <comment_count>3</comment_count>
      <attachid>201867</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-05-15 13:02:42 -0700</bug_when>
    <thetext>Comment on attachment 201867
Patch

Attachment 201867 did not pass efl-wk2-ews (efl-wk2):
Output: http://webkit-queues.appspot.com/results/473621</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889474</commentid>
    <comment_count>4</comment_count>
      <attachid>201871</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-05-15 13:06:38 -0700</bug_when>
    <thetext>Created attachment 201871
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889479</commentid>
    <comment_count>5</comment_count>
      <attachid>201871</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2013-05-15 13:20:24 -0700</bug_when>
    <thetext>Comment on attachment 201871
Patch

I&apos;ma go ahead and trust you on this one, Carlsson.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889481</commentid>
    <comment_count>6</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-05-15 13:21:53 -0700</bug_when>
    <thetext>Committed r150142: &lt;http://trac.webkit.org/changeset/150142&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889647</commentid>
    <comment_count>7</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-05-15 19:59:55 -0700</bug_when>
    <thetext>&gt; Turns out WebSocketHandshakeRequest is just used by the web inspector, and there&apos;s no reason
why we can&apos;t just use a ResourceRequest instead.

This is not accurate. WebSocket has different semantics than HTTP, in particular, order of header fields matters.

I&apos;m puzzled that you are making such changes without any attempt of talking to me. Andreas, I suggest waiting at least 24 hours before reviewing patches in areas you are not sure that you are an expert in.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889876</commentid>
    <comment_count>8</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2013-05-16 09:58:30 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; &gt; Turns out WebSocketHandshakeRequest is just used by the web inspector, and there&apos;s no reason
&gt; why we can&apos;t just use a ResourceRequest instead.
&gt; 
&gt; This is not accurate. WebSocket has different semantics than HTTP, in particular, order of header fields matters.
&gt; 
&gt; I&apos;m puzzled that you are making such changes without any attempt of talking to me. Andreas, I suggest waiting at least 24 hours before reviewing patches in areas you are not sure that you are an expert in.

Alexey, I trusted Anders&apos;s judgment on this change and it looked like a straightforward removal of an unnecessary abstraction. I set my r+ without fully understanding the implications, and for that I apologize.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>890566</commentid>
    <comment_count>9</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-05-17 12:06:08 -0700</bug_when>
    <thetext>&gt; order of header fields matters

This is no longer the case, the spec no longer requires that. I could not quickly find any other differences that would require using a distinct class.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201867</attachid>
            <date>2013-05-15 12:45:50 -0700</date>
            <delta_ts>2013-05-15 13:06:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-116178-20130515124446.patch</filename>
            <type>text/plain</type>
            <size>30975</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwMTMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmU0NjdiZTdhNTQzMzQ1
YTM2OGM5ZTgxYjc0ZWQ5YWFkOTM5YTU2NC4uZWJjOGQ4NmQ4MzFhYWYzMmIxM2Q3OWE2ZGM3Mjg0
M2JjY2E0YTIxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDEzLTA1LTE1ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIFdlYlNv
Y2tldEhhbmRzaGFrZVJlcXVlc3QgY2xhc3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTExNjE3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFR1cm5zIG91dCBXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0IGlz
IGp1c3QgdXNlZCBieSB0aGUgd2ViIGluc3BlY3RvciwgYW5kIHRoZXJlJ3Mgbm8gcmVhc29uIAor
ICAgICAgICB3aHkgd2UgY2FuJ3QganVzdCB1c2UgYSBSZXNvdXJjZVJlcXVlc3QgaW5zdGVhZC4K
KworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIEdOVW1ha2VmaWxlLmxpc3Qu
YW06CisgICAgICAgICogTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldENoYW5uZWwuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6V2ViU29ja2V0Q2hhbm5lbDo6ZGlkT3BlblNvY2tldFN0cmVhbSk6
CisgICAgICAgICogTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFrZS5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpXZWJTb2NrZXRIYW5kc2hha2U6OmNsaWVudEhhbmRzaGFrZVJlcXVl
c3QpOgorICAgICAgICAqIE1vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXRIYW5kc2hha2UuaDoK
KyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIE1vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2Nr
ZXRIYW5kc2hha2VSZXF1ZXN0LmNwcDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYnNv
Y2tldHMvV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5oOiBSZW1vdmVkLgorICAgICAgICAqIFRh
cmdldC5wcmk6CisgICAgICAgICogV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2o6CisgICAg
ICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvajoKKyAgICAgICAgKiBXZWJDb3Jl
LnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnM6CisgICAgICAgICogV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JJbnN0
cnVtZW50YXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5kV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVz
dEltcGwpOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaDoK
KyAgICAgICAgKEluc3BlY3Rvckluc3RydW1lbnRhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5kV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVz
dCk6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvclJlc291cmNlQWdlbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yUmVzb3VyY2VBZ2VudDo6d2lsbFNlbmRXZWJTb2NrZXRI
YW5kc2hha2VSZXF1ZXN0KToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yUmVzb3VyY2VB
Z2VudC5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChJbnNwZWN0b3JSZXNvdXJjZUFn
ZW50KToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL0hUVFBSZXF1ZXN0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmUpOgorCiAyMDEzLTA1LTE1ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNv
bT4KIAogICAgICAgICBbTWFjXSBSZW1vdmUgdGhlIENsaXBib2FyZE1hYyBjbGFzcyBhbmQgaGVh
ZGVyIGZpbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291
cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggNmM3Mzc1ODg5Njg0NDY3YmYxMDdmZDgw
YjA5MWY4ZDBjNTQzMGZiMy4uZGQ3NmY2NTc1YzYwNjNkZjI3YTI1NTEwZDE0MzQ5Mzk5ZTM4MDQy
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNl
L1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTk2Myw3ICs5NjMsNiBAQCBzZXQoV2ViQ29yZV9T
T1VSQ0VTCiAgICAgTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEV4dGVuc2lvblBhcnNlci5j
cHAKICAgICBNb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0RnJhbWUuY3BwCiAgICAgTW9kdWxl
cy93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFrZS5jcHAKLSAgICBNb2R1bGVzL3dlYnNvY2tl
dHMvV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5jcHAKICAgICBNb2R1bGVzL3dlYnNvY2tldHMv
V2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UuY3BwCiAgICAgTW9kdWxlcy93ZWJzb2NrZXRzL1dv
cmtlclRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsLmNwcAogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUu
bGlzdC5hbQppbmRleCA1Yzc0MjljYTdlNGUwNWRhODQ1NWMzYWJiNjZjYThjNzFkMmRhNTk3Li4y
ZGU0Y2YzNjRmOGZlNDczMzBhOTAwNzAzY2E2ZjM5NzU0NDlmMWMxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1h
a2VmaWxlLmxpc3QuYW0KQEAgLTIyNTksOCArMjI1OSw2IEBAIHdlYmNvcmVfbW9kdWxlc19zb3Vy
Y2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0RnJh
bWUuaCBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRz
aGFrZS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXRI
YW5kc2hha2UuaCBcCi0JU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tl
dEhhbmRzaGFrZVJlcXVlc3QuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tl
dHMvV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5oIFwKIAlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UuY3BwIFwKIAlTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UuaCBcCiAJ
U291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dvcmtlclRocmVhZGFibGVXZWJTb2Nr
ZXRDaGFubmVsLmNwcCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNv
Y2tldHMvV2ViU29ja2V0Q2hhbm5lbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNv
Y2tldHMvV2ViU29ja2V0Q2hhbm5lbC5jcHAKaW5kZXggYzk4NDg1MzBlYTk0YjU0NWQxN2UxODlh
OTc1NDFlOGRjMTM4YTM2NS4uZGIwOWE0ZTg0OGQ5ODg3NWU4NTg5MjU2NmMxMTcwYTdiOThjNjEx
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tl
dENoYW5uZWwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJT
b2NrZXRDaGFubmVsLmNwcApAQCAtNDcsNiArNDcsNyBAQAogI2luY2x1ZGUgIkxvZ2dpbmcuaCIK
ICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUHJvZ3Jlc3NUcmFja2VyLmgiCisjaW5jbHVk
ZSAiUmVzb3VyY2VSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiU2NyaXB0Q2FsbFN0YWNrLmgiCiAjaW5j
bHVkZSAiU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIgogI2luY2x1ZGUgIlNldHRpbmdzLmgiCkBA
IC0yNTcsNyArMjU4LDcgQEAgdm9pZCBXZWJTb2NrZXRDaGFubmVsOjpkaWRPcGVuU29ja2V0U3Ry
ZWFtKFNvY2tldFN0cmVhbUhhbmRsZSogaGFuZGxlKQogICAgIGlmICghbV9kb2N1bWVudCkKICAg
ICAgICAgcmV0dXJuOwogICAgIGlmIChtX2lkZW50aWZpZXIpCi0gICAgICAgIEluc3BlY3Rvcklu
c3RydW1lbnRhdGlvbjo6d2lsbFNlbmRXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0KG1fZG9jdW1l
bnQsIG1faWRlbnRpZmllciwgKm1faGFuZHNoYWtlLT5jbGllbnRIYW5kc2hha2VSZXF1ZXN0KCkp
OworICAgICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5kV2ViU29ja2V0SGFu
ZHNoYWtlUmVxdWVzdChtX2RvY3VtZW50LCBtX2lkZW50aWZpZXIsIG1faGFuZHNoYWtlLT5jbGll
bnRIYW5kc2hha2VSZXF1ZXN0KCkpOwogICAgIENTdHJpbmcgaGFuZHNoYWtlTWVzc2FnZSA9IG1f
aGFuZHNoYWtlLT5jbGllbnRIYW5kc2hha2VNZXNzYWdlKCk7CiAgICAgaWYgKCFoYW5kbGUtPnNl
bmQoaGFuZHNoYWtlTWVzc2FnZS5kYXRhKCksIGhhbmRzaGFrZU1lc3NhZ2UubGVuZ3RoKCkpKQog
ICAgICAgICBmYWlsKCJGYWlsZWQgdG8gc2VuZCBXZWJTb2NrZXQgaGFuZHNoYWtlLiIpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRz
aGFrZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFu
ZHNoYWtlLmNwcAppbmRleCBmNWY0NjIwOWNkZjJlMTEyODQxZWMwNWM1OTUyZWMwOGRiMmFhNmYz
Li4yZTRlNzA3ZTIwNjU4ZGYzZjM4Nzk0NTJkOTAyNTA5MzI4N2QxZDVjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtl
LmNwcApAQCAtNDMsNiArNDMsNyBAQAogI2luY2x1ZGUgIkhUVFBQYXJzZXJzLmgiCiAjaW5jbHVk
ZSAiS1VSTC5oIgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKKyNpbmNsdWRlICJSZXNvdXJjZVJlcXVl
c3QuaCIKICNpbmNsdWRlICJTY3JpcHRDYWxsU3RhY2suaCIKICNpbmNsdWRlICJTY3JpcHRFeGVj
dXRpb25Db250ZXh0LmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKQEAgLTIzNiw0MSAr
MjM3LDQyIEBAIENTdHJpbmcgV2ViU29ja2V0SGFuZHNoYWtlOjpjbGllbnRIYW5kc2hha2VNZXNz
YWdlKCkgY29uc3QKICAgICByZXR1cm4gYnVpbGRlci50b1N0cmluZygpLnV0ZjgoKTsKIH0KIAot
UGFzc1JlZlB0cjxXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0PiBXZWJTb2NrZXRIYW5kc2hha2U6
OmNsaWVudEhhbmRzaGFrZVJlcXVlc3QoKSBjb25zdAorUmVzb3VyY2VSZXF1ZXN0IFdlYlNvY2tl
dEhhbmRzaGFrZTo6Y2xpZW50SGFuZHNoYWtlUmVxdWVzdCgpIGNvbnN0CiB7CiAgICAgLy8gS2Vl
cCB0aGUgZm9sbG93aW5nIGNvbnNpc3RlbnQgd2l0aCBjbGllbnRIYW5kc2hha2VNZXNzYWdlKCku
CiAgICAgLy8gRklYTUU6IGRvIHdlIG5lZWQgdG8gc3RvcmUgbV9zZWNXZWJTb2NrZXRLZXkxLCBt
X3NlY1dlYlNvY2tldEtleTIgYW5kCi0gICAgLy8gbV9rZXkzIGluIFdlYlNvY2tldEhhbmRzaGFr
ZVJlcXVlc3Q/Ci0gICAgUmVmUHRyPFdlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3Q+IHJlcXVlc3Qg
PSBXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0OjpjcmVhdGUoIkdFVCIsIG1fdXJsKTsKLSAgICBy
ZXF1ZXN0LT5hZGRIZWFkZXJGaWVsZCgiVXBncmFkZSIsICJ3ZWJzb2NrZXQiKTsKLSAgICByZXF1
ZXN0LT5hZGRIZWFkZXJGaWVsZCgiQ29ubmVjdGlvbiIsICJVcGdyYWRlIik7Ci0gICAgcmVxdWVz
dC0+YWRkSGVhZGVyRmllbGQoIkhvc3QiLCBob3N0TmFtZShtX3VybCwgbV9zZWN1cmUpKTsKLSAg
ICByZXF1ZXN0LT5hZGRIZWFkZXJGaWVsZCgiT3JpZ2luIiwgY2xpZW50T3JpZ2luKCkpOworICAg
IC8vIG1fa2V5MyBpbiB0aGUgcmVxdWVzdD8KKyAgICBSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCht
X3VybCk7CisgICAgcmVxdWVzdC5zZXRIVFRQTWV0aG9kKCJHRVQiKTsKKworICAgIHJlcXVlc3Qu
YWRkSFRUUEhlYWRlckZpZWxkKCJDb25uZWN0aW9uIiwgIlVwZ3JhZGUiKTsKKyAgICByZXF1ZXN0
LmFkZEhUVFBIZWFkZXJGaWVsZCgiSG9zdCIsIGhvc3ROYW1lKG1fdXJsLCBtX3NlY3VyZSkpOwor
ICAgIHJlcXVlc3QuYWRkSFRUUEhlYWRlckZpZWxkKCJPcmlnaW4iLCBjbGllbnRPcmlnaW4oKSk7
CiAgICAgaWYgKCFtX2NsaWVudFByb3RvY29sLmlzRW1wdHkoKSkKLSAgICAgICAgcmVxdWVzdC0+
YWRkSGVhZGVyRmllbGQoIlNlYy1XZWJTb2NrZXQtUHJvdG9jb2wiLCBtX2NsaWVudFByb3RvY29s
KTsKKyAgICAgICAgcmVxdWVzdC5hZGRIVFRQSGVhZGVyRmllbGQoIlNlYy1XZWJTb2NrZXQtUHJv
dG9jb2wiLCBtX2NsaWVudFByb3RvY29sKTsKIAogICAgIEtVUkwgdXJsID0gaHR0cFVSTEZvckF1
dGhlbnRpY2F0aW9uQW5kQ29va2llcygpOwogICAgIGlmIChtX2NvbnRleHQtPmlzRG9jdW1lbnQo
KSkgewogICAgICAgICBEb2N1bWVudCogZG9jdW1lbnQgPSB0b0RvY3VtZW50KG1fY29udGV4dCk7
CiAgICAgICAgIFN0cmluZyBjb29raWUgPSBjb29raWVSZXF1ZXN0SGVhZGVyRmllbGRWYWx1ZShk
b2N1bWVudCwgdXJsKTsKICAgICAgICAgaWYgKCFjb29raWUuaXNFbXB0eSgpKQotICAgICAgICAg
ICAgcmVxdWVzdC0+YWRkSGVhZGVyRmllbGQoIkNvb2tpZSIsIGNvb2tpZSk7CisgICAgICAgICAg
ICByZXF1ZXN0LmFkZEhUVFBIZWFkZXJGaWVsZCgiQ29va2llIiwgY29va2llKTsKICAgICAgICAg
Ly8gU2V0ICJDb29raWUyOiA8Y29va2llPiIgaWYgY29va2llcyAyIGV4aXN0cyBmb3IgdXJsPwog
ICAgIH0KIAotICAgIHJlcXVlc3QtPmFkZEhlYWRlckZpZWxkKCJQcmFnbWEiLCAibm8tY2FjaGUi
KTsKLSAgICByZXF1ZXN0LT5hZGRIZWFkZXJGaWVsZCgiQ2FjaGUtQ29udHJvbCIsICJuby1jYWNo
ZSIpOworICAgIHJlcXVlc3QuYWRkSFRUUEhlYWRlckZpZWxkKCJQcmFnbWEiLCAibm8tY2FjaGUi
KTsKKyAgICByZXF1ZXN0LmFkZEhUVFBIZWFkZXJGaWVsZCgiQ2FjaGUtQ29udHJvbCIsICJuby1j
YWNoZSIpOwogCi0gICAgcmVxdWVzdC0+YWRkSGVhZGVyRmllbGQoIlNlYy1XZWJTb2NrZXQtS2V5
IiwgbV9zZWNXZWJTb2NrZXRLZXkpOwotICAgIHJlcXVlc3QtPmFkZEhlYWRlckZpZWxkKCJTZWMt
V2ViU29ja2V0LVZlcnNpb24iLCAiMTMiKTsKKyAgICByZXF1ZXN0LmFkZEhUVFBIZWFkZXJGaWVs
ZCgiU2VjLVdlYlNvY2tldC1LZXkiLCBtX3NlY1dlYlNvY2tldEtleSk7CisgICAgcmVxdWVzdC5h
ZGRIVFRQSGVhZGVyRmllbGQoIlNlYy1XZWJTb2NrZXQtVmVyc2lvbiIsICIxMyIpOwogICAgIGNv
bnN0IFN0cmluZyBleHRlbnNpb25WYWx1ZSA9IG1fZXh0ZW5zaW9uRGlzcGF0Y2hlci5jcmVhdGVI
ZWFkZXJWYWx1ZSgpOwogICAgIGlmIChleHRlbnNpb25WYWx1ZS5sZW5ndGgoKSkKLSAgICAgICAg
cmVxdWVzdC0+YWRkSGVhZGVyRmllbGQoIlNlYy1XZWJTb2NrZXQtRXh0ZW5zaW9ucyIsIGV4dGVu
c2lvblZhbHVlKTsKKyAgICAgICAgcmVxdWVzdC5hZGRIVFRQSGVhZGVyRmllbGQoIlNlYy1XZWJT
b2NrZXQtRXh0ZW5zaW9ucyIsIGV4dGVuc2lvblZhbHVlKTsKIAogICAgIC8vIEFkZCBhIFVzZXIt
QWdlbnQgaGVhZGVyLgotICAgIHJlcXVlc3QtPmFkZEhlYWRlckZpZWxkKCJVc2VyLUFnZW50Iiwg
bV9jb250ZXh0LT51c2VyQWdlbnQobV9jb250ZXh0LT51cmwoKSkpOworICAgIHJlcXVlc3QuYWRk
SFRUUEhlYWRlckZpZWxkKCJVc2VyLUFnZW50IiwgbV9jb250ZXh0LT51c2VyQWdlbnQobV9jb250
ZXh0LT51cmwoKSkpOwogCi0gICAgcmV0dXJuIHJlcXVlc3QucmVsZWFzZSgpOworICAgIHJldHVy
biByZXF1ZXN0OwogfQogCiB2b2lkIFdlYlNvY2tldEhhbmRzaGFrZTo6cmVzZXQoKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFr
ZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFr
ZS5oCmluZGV4IGM0MWZkODg2NWJmYTBmODM1MWRjYTY1MzA3MDI5Zjk0ZDVlNTk3YzAuLjAyNmJm
MDgxZDVhODQ3N2I3YjBmNDhhMWE1YzQxOTI5MjYzMDE5ZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXRIYW5kc2hha2UuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtlLmgKQEAgLTM2
LDEzICszNiwxMyBAQAogI2luY2x1ZGUgIktVUkwuaCIKICNpbmNsdWRlICJXZWJTb2NrZXRFeHRl
bnNpb25EaXNwYXRjaGVyLmgiCiAjaW5jbHVkZSAiV2ViU29ja2V0RXh0ZW5zaW9uUHJvY2Vzc29y
LmgiCi0jaW5jbHVkZSAiV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5oIgogI2luY2x1ZGUgIldl
YlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlLmgiCiAjaW5jbHVkZSA8d3RmL1Bhc3NPd25QdHIuaD4K
ICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
CitjbGFzcyBSZXNvdXJjZVJlcXVlc3Q7CiBjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0Owog
CiBjbGFzcyBXZWJTb2NrZXRIYW5kc2hha2UgewpAQCAtNjcsNyArNjcsNyBAQCBwdWJsaWM6CiAg
ICAgU3RyaW5nIGNsaWVudExvY2F0aW9uKCkgY29uc3Q7CiAKICAgICBDU3RyaW5nIGNsaWVudEhh
bmRzaGFrZU1lc3NhZ2UoKSBjb25zdDsKLSAgICBQYXNzUmVmUHRyPFdlYlNvY2tldEhhbmRzaGFr
ZVJlcXVlc3Q+IGNsaWVudEhhbmRzaGFrZVJlcXVlc3QoKSBjb25zdDsKKyAgICBSZXNvdXJjZVJl
cXVlc3QgY2xpZW50SGFuZHNoYWtlUmVxdWVzdCgpIGNvbnN0OwogCiAgICAgdm9pZCByZXNldCgp
OwogICAgIHZvaWQgY2xlYXJTY3JpcHRFeGVjdXRpb25Db250ZXh0KCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVz
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNo
YWtlUmVxdWVzdC5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDA1YzcwOWU0MmZh
MWQ3YTljZjAxM2ZjNTkzZjIyNjdjMjY3MTkwNTkuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dl
YlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNTQgKzAsMCBA
QAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKLSAqIG1ldDoKLSAqCi0g
KiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAotICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgotICogaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZQotICogZGlzdHJpYnV0aW9uLgotICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUg
SW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwotICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRv
IGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KLSAqIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRS
SUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgotICogQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKLSAq
IE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLAotICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCi0gKiBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwot
Ci0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoV0VCX1NPQ0tFVFMpCi0KLSNpbmNs
dWRlICJXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0LmgiCi0KLSNpbmNsdWRlIDxjc3RyaW5nPgot
Ci11c2luZyBuYW1lc3BhY2Ugc3RkOwotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLVdlYlNvY2tl
dEhhbmRzaGFrZVJlcXVlc3Q6OldlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QoY29uc3QgU3RyaW5n
JiByZXF1ZXN0TWV0aG9kLCBjb25zdCBLVVJMJiB1cmwpCi0gICAgOiBIVFRQUmVxdWVzdChyZXF1
ZXN0TWV0aG9kLCB1cmwsIEhUVFBfMV8xKQotewotfQotCi1XZWJTb2NrZXRIYW5kc2hha2VSZXF1
ZXN0Ojp+V2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdCgpCi17Ci19Ci0KLX0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShXRUJfU09DS0VUUykKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0
LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtl
UmVxdWVzdC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiYTY2MmFjMmQyZDk5ZGJm
MWFhM2MwMGE3Y2QyZWUwODY0MGJiYzU4Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2Nr
ZXRIYW5kc2hha2VSZXF1ZXN0LmgKKysrIC9kZXYvbnVsbApAQCAtMSw1MyArMCwwIEBACi0vKgot
ICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQotICogbWV0OgotICoKLSAqICAgICAq
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCi0gKiBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0gKiBk
aXN0cmlidXRpb24uCi0gKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5v
ciB0aGUgbmFtZXMgb2YgaXRzCi0gKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3Jz
ZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQotICogdGhpcyBzb2Z0d2FyZSB3aXRo
b3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JT
Ci0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0gKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAotICogT1dORVIg
T1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSAqIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICog
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5k
ZWYgV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdF9oCi0jZGVmaW5lIFdlYlNvY2tldEhhbmRzaGFr
ZVJlcXVlc3RfaAotCi0jaWYgRU5BQkxFKFdFQl9TT0NLRVRTKQotCi0jaW5jbHVkZSAiSFRUUFJl
cXVlc3QuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBXZWJTb2NrZXRIYW5kc2hh
a2VSZXF1ZXN0IDogcHVibGljIEhUVFBSZXF1ZXN0IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFz
c1JlZlB0cjxXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0PiBjcmVhdGUoY29uc3QgU3RyaW5nJiBy
ZXF1ZXN0TWV0aG9kLCBjb25zdCBLVVJMJiB1cmwpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBXZWJT
b2NrZXRIYW5kc2hha2VSZXF1ZXN0KHJlcXVlc3RNZXRob2QsIHVybCkpOyB9Ci0gICAgfldlYlNv
Y2tldEhhbmRzaGFrZVJlcXVlc3QoKTsKLQotcHJpdmF0ZToKLSAgICBXZWJTb2NrZXRIYW5kc2hh
a2VSZXF1ZXN0KGNvbnN0IFN0cmluZyYgcmVxdWVzdE1ldGhvZCwgY29uc3QgS1VSTCYpOwotfTsK
LQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFdFQl9TT0NLRVRT
KQotCi0jZW5kaWYgLy8gV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdF9oCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpIGIvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQppbmRl
eCA2M2MyN2RhOGM3MmNlZTNhYmVkZmM4ZWMzNDBmODUwZmFhZTViMWI0Li4zYTkxMTE5MTQwNTI0
NGExZjFmZDRhM2I5YmYxOWU2Yjc2NzgzZmYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9U
YXJnZXQucHJpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKQEAgLTQwMjQsNyArNDAy
NCw2IEBAIGVuYWJsZT8oV0VCX1NPQ0tFVFMpIHsKICAgICAgICAgTW9kdWxlcy93ZWJzb2NrZXRz
L1dlYlNvY2tldEV4dGVuc2lvblByb2Nlc3Nvci5oIFwKICAgICAgICAgTW9kdWxlcy93ZWJzb2Nr
ZXRzL1dlYlNvY2tldEZyYW1lLmggXAogICAgICAgICBNb2R1bGVzL3dlYnNvY2tldHMvV2ViU29j
a2V0SGFuZHNoYWtlLmggXAotICAgICAgICBNb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFu
ZHNoYWtlUmVxdWVzdC5oIFwKICAgICAgICAgTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEhh
bmRzaGFrZVJlc3BvbnNlLmggXAogICAgICAgICBNb2R1bGVzL3dlYnNvY2tldHMvV29ya2VyVGhy
ZWFkYWJsZVdlYlNvY2tldENoYW5uZWwuaCBcCiAgICAgICAgIHBsYXRmb3JtL25ldHdvcmsvcXQv
U29ja2V0U3RyZWFtSGFuZGxlUHJpdmF0ZS5oCkBAIC00MDM4LDcgKzQwMzcsNiBAQCBlbmFibGU/
KFdFQl9TT0NLRVRTKSB7CiAgICAgICAgIE1vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXRFeHRl
bnNpb25QYXJzZXIuY3BwIFwKICAgICAgICAgTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEZy
YW1lLmNwcCBcCiAgICAgICAgIE1vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXRIYW5kc2hha2Uu
Y3BwIFwKLSAgICAgICAgTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFrZVJlcXVl
c3QuY3BwIFwKICAgICAgICAgTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFrZVJl
c3BvbnNlLmNwcCBcCiAgICAgICAgIE1vZHVsZXMvd2Vic29ja2V0cy9Xb3JrZXJUaHJlYWRhYmxl
V2ViU29ja2V0Q2hhbm5lbC5jcHAgXAogICAgICAgICBNb2R1bGVzL3dlYnNvY2tldHMvVGhyZWFk
YWJsZVdlYlNvY2tldENoYW5uZWwuY3BwIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3By
b2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggMzM3MTQxZjJjODZjNDdiOTcxYTc2NTZjYWI2NzVkYzlm
ZjFhMzg5OS4uZWY0YjQ3NTYyNjE3YTAyYWY5NDBiODI4YzAzOTIzMzU0ZTI1MTcyYSAxMDA3NTUK
LS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKQEAgLTI1OTEwLDE0
ICsyNTkxMCw2IEBACiAJCQkJCT4KIAkJCQk8L0ZpbGU+CiAJCQkJPEZpbGUKLQkJCQkJUmVsYXRp
dmVQYXRoPSIuLlxNb2R1bGVzXHdlYnNvY2tldHNcV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5j
cHAiCi0JCQkJCT4KLQkJCQk8L0ZpbGU+Ci0JCQkJPEZpbGUKLQkJCQkJUmVsYXRpdmVQYXRoPSIu
LlxNb2R1bGVzXHdlYnNvY2tldHNcV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5oIgotCQkJCQk+
Ci0JCQkJPC9GaWxlPgotCQkJCTxGaWxlCiAJCQkJCVJlbGF0aXZlUGF0aD0iLi5cTW9kdWxlc1x3
ZWJzb2NrZXRzXFdlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlLmNwcCIKIAkJCQkJPgogCQkJCTwv
RmlsZT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3Jl
LnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9q
CmluZGV4IGFmMzhhM2M3Y2QyNWRjZWJiYWNjNmQ2NWViYTFmMDBiMTBmZmM1OGUuLjQxNmI0YjYw
MGViYWEwMzMxMzNlNjE5MzQ1Y2UwMmI3N2VmNzNkMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvagpAQCAtMzcxMCw3ICszNzEwLDYgQEAKICAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXE1vZHVsZXNcd2Vic29ja2V0c1xXZWJTb2NrZXRFeHRl
bnNpb25QYXJzZXIuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3
ZWJzb2NrZXRzXFdlYlNvY2tldEZyYW1lLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9
Ii4uXE1vZHVsZXNcd2Vic29ja2V0c1xXZWJTb2NrZXRIYW5kc2hha2UuY3BwIiAvPgotICAgIDxD
bENvbXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJzb2NrZXRzXFdlYlNvY2tldEhhbmRzaGFr
ZVJlcXVlc3QuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJz
b2NrZXRzXFdlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlLmNwcCIgLz4KICAgICA8Q2xDb21waWxl
IEluY2x1ZGU9Ii4uXE1vZHVsZXNcd2Vic29ja2V0c1xXb3JrZXJUaHJlYWRhYmxlV2ViU29ja2V0
Q2hhbm5lbC5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHNwZWVj
aFxET01XaW5kb3dTcGVlY2hTeW50aGVzaXMuY3BwIiAvPgpAQCAtMTEzMDgsOCArMTEzMDcsNiBA
QAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJzb2NrZXRzXFdlYlNvY2tl
dEV4dGVuc2lvblByb2Nlc3Nvci5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9k
dWxlc1x3ZWJzb2NrZXRzXFdlYlNvY2tldEZyYW1lLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxNb2R1bGVzXHdlYnNvY2tldHNcV2ViU29ja2V0SGFuZHNoYWtlLmgiIC8+Ci0gICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYnNvY2tldHNcV2ViU29ja2V0SGFuZHNo
YWtlUmVxdWVzdC5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJz
b2NrZXRzXFdlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIuLlxNb2R1bGVzXHdlYnNvY2tldHNcV29ya2VyVGhyZWFkYWJsZVdlYlNvY2tldENo
YW5uZWwuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXE1vZHVsZXNcc3BlZWNoXERP
TVdpbmRvd1NwZWVjaFN5bnRoZXNpcy5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
TW9kdWxlc1xzcGVlY2hcU3BlZWNoU3ludGhlc2lzLmgiIC8+CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMgYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKaW5kZXggNmZm
N2E4N2Y0ZGJiYjFmMTZmMzFkOTAzOWE4ZDZhZjg1N2ZiMDQ0Zi4uOGVkNjMwZGNiZTg4YTQ0NzVk
NTUzOTE5NTUyMmU4NTQyMWIzMjY1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwpAQCAtNTg4LDkgKzU4OCw2IEBA
CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYnNvY2tldHNcV2ViU29ja2V0
SGFuZHNoYWtlLmNwcCI+CiAgICAgICA8RmlsdGVyPk1vZHVsZXNcd2Vic29ja2V0czwvRmlsdGVy
PgogICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3
ZWJzb2NrZXRzXFdlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuY3BwIj4KLSAgICAgIDxGaWx0ZXI+
TW9kdWxlc1x3ZWJzb2NrZXRzPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYnNvY2tldHNcV2ViU29ja2V0SGFuZHNoYWtlUmVz
cG9uc2UuY3BwIj4KICAgICAgIDxGaWx0ZXI+TW9kdWxlc1x3ZWJzb2NrZXRzPC9GaWx0ZXI+CiAg
ICAgPC9DbENvbXBpbGU+CkBAIC03Mjg0LDkgKzcyODEsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5cTW9kdWxlc1x3ZWJzb2NrZXRzXFdlYlNvY2tldEhhbmRzaGFrZS5oIj4KICAgICAg
IDxGaWx0ZXI+TW9kdWxlc1x3ZWJzb2NrZXRzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+Ci0g
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYnNvY2tldHNcV2ViU29ja2V0SGFu
ZHNoYWtlUmVxdWVzdC5oIj4KLSAgICAgIDxGaWx0ZXI+TW9kdWxlc1x3ZWJzb2NrZXRzPC9GaWx0
ZXI+Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVz
XHdlYnNvY2tldHNcV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UuaCI+CiAgICAgICA8RmlsdGVy
Pk1vZHVsZXNcd2Vic29ja2V0czwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGNhZmFl
ZDgyM2NlMjI0NDk1MmJjYzVhYWI1NzAwZDQwZTA3YWViYzguLmIyMmIyNjNlNDk2MzZkMjM2ZGUy
YjJlOWM3OGQyODkyMmE5ZTI3OTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTMxOTcsOCArMzE5Nyw2IEBACiAJCTk3QUFCRDI1
MTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRGcmFtZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdBQUJEMEExNEZBMDlENTAwNzQ1N0FFIC8qIFdl
YlNvY2tldEZyYW1lLmggKi87IH07CiAJCTk3QUFCRDI2MTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJT
b2NrZXRIYW5kc2hha2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTdBQUJEMEIxNEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFrZS5j
cHAgKi87IH07CiAJCTk3QUFCRDI3MTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRIYW5kc2hh
a2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3QUFC
RDBDMTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRIYW5kc2hha2UuaCAqLzsgfTsKLQkJOTdB
QUJEMjgxNEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdBQUJEMEQxNEZB
MDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuY3BwICovOyB9OwotCQk5
N0FBQkQyOTE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdBQUJEMEUxNEZB
MDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuaCAqLzsgfTsKIAkJOTdB
QUJEMkExNEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3QUFCRDBGMTRG
QTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRIYW5kc2hha2VSZXNwb25zZS5jcHAgKi87IH07CiAJ
CTk3QUFCRDJCMTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRIYW5kc2hha2VSZXNwb25zZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdBQUJEMTAx
NEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlLmggKi87IH07CiAJ
CTk3QUFCRDJDMTRGQTA5RDUwMDc0NTdBRSAvKiBXb3JrZXJUaHJlYWRhYmxlV2ViU29ja2V0Q2hh
bm5lbC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5
N0FBQkQxMTE0RkEwOUQ1MDA3NDU3QUUgLyogV29ya2VyVGhyZWFkYWJsZVdlYlNvY2tldENoYW5u
ZWwuY3BwICovOyB9OwpAQCAtOTY1Nyw4ICs5NjU1LDYgQEAKIAkJOTdBQUJEMEExNEZBMDlENTAw
NzQ1N0FFIC8qIFdlYlNvY2tldEZyYW1lLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFt
ZSA9IFdlYlNvY2tldEZyYW1lLmg7IHBhdGggPSBNb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0
RnJhbWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTdBQUJEMEIxNEZBMDlENTAw
NzQ1N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFrZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IG5hbWUgPSBXZWJTb2NrZXRIYW5kc2hha2UuY3BwOyBwYXRoID0gTW9kdWxlcy93ZWJz
b2NrZXRzL1dlYlNvY2tldEhhbmRzaGFrZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTk3QUFCRDBDMTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRIYW5kc2hha2UuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gV2ViU29ja2V0SGFuZHNoYWtlLmg7IHBhdGgg
PSBNb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07Ci0JCTk3QUFCRDBEMTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRIYW5k
c2hha2VSZXF1ZXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFdl
YlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuY3BwOyBwYXRoID0gTW9kdWxlcy93ZWJzb2NrZXRzL1dl
YlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQk5N0FBQkQwRTE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBXZWJTb2NrZXRIYW5kc2hha2VSZXF1
ZXN0Lmg7IHBhdGggPSBNb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVz
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5N0FBQkQwRjE0RkEwOUQ1MDA3NDU3
QUUgLyogV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UuY3BwOyBwYXRoID0g
TW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTdBQUJEMTAxNEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNv
Y2tldEhhbmRzaGFrZVJlc3BvbnNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9
IFdlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlLmg7IHBhdGggPSBNb2R1bGVzL3dlYnNvY2tldHMv
V2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJOTdBQUJEMTExNEZBMDlENTAwNzQ1N0FFIC8qIFdvcmtlclRocmVhZGFibGVXZWJTb2NrZXRD
aGFubmVsLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFdvcmtlclRo
cmVhZGFibGVXZWJTb2NrZXRDaGFubmVsLmNwcDsgcGF0aCA9IE1vZHVsZXMvd2Vic29ja2V0cy9X
b3JrZXJUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CkBAIC0xNjQwNSw4ICsxNjQwMSw2IEBACiAJCQkJOTdBQUJEMEExNEZBMDlENTAwNzQ1
N0FFIC8qIFdlYlNvY2tldEZyYW1lLmggKi8sCiAJCQkJOTdBQUJEMEIxNEZBMDlENTAwNzQ1N0FF
IC8qIFdlYlNvY2tldEhhbmRzaGFrZS5jcHAgKi8sCiAJCQkJOTdBQUJEMEMxNEZBMDlENTAwNzQ1
N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFrZS5oICovLAotCQkJCTk3QUFCRDBEMTRGQTA5RDUwMDc0
NTdBRSAvKiBXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0LmNwcCAqLywKLQkJCQk5N0FBQkQwRTE0
RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5oICovLAogCQkJCTk3
QUFCRDBGMTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRIYW5kc2hha2VSZXNwb25zZS5jcHAg
Ki8sCiAJCQkJOTdBQUJEMTAxNEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFrZVJl
c3BvbnNlLmggKi8sCiAJCQkJQTg4NkNEQzIxNEZCQkFBMzAwRDI3OUY0IC8qIFdvcmtlckNvbnRl
eHRXZWJTb2NrZXQuaWRsICovLApAQCAtMjM5OTYsNyArMjM5OTAsNiBAQAogCQkJCTk3QUFCRDI0
MTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRFeHRlbnNpb25Qcm9jZXNzb3IuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTk3QUFCRDI1MTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRGcmFtZS5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJOTdBQUJEMjcxNEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tl
dEhhbmRzaGFrZS5oIGluIEhlYWRlcnMgKi8sCi0JCQkJOTdBQUJEMjkxNEZBMDlENTAwNzQ1N0FF
IC8qIFdlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCTk3QUFC
RDJCMTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRIYW5kc2hha2VSZXNwb25zZS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMEY1ODBGQTMxNDk2OTM5MTAwRkI1QkQ4IC8qIFdlYlRpbGVkQmFja2lu
Z0xheWVyLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRkNGMzMyRDBGMkI5QTI1MDA0QjY3OTUgLyog
V2ViVGlsZWRMYXllci5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNjk4Miw3ICsyNjk3NSw2IEBACiAJ
CQkJNEE1QTJBREIxNjFFN0UwMDAwNTg4OUREIC8qIFdlYlNvY2tldEV4dGVuc2lvblBhcnNlci5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQlBQUY1QjdCNzE1MjRCNkM1MDAwNENCNDkgLyogV2ViU29j
a2V0RnJhbWUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTdBQUJEMjYxNEZBMDlENTAwNzQ1N0FF
IC8qIFdlYlNvY2tldEhhbmRzaGFrZS5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk5N0FBQkQyODE0
RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk5N0FBQkQyQTE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0SGFuZHNoYWtl
UmVzcG9uc2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMEY1ODBGQTQxNDk2OTM5MTAwRkI1QkQ4
IC8qIFdlYlRpbGVkQmFja2luZ0xheWVyLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMEZDRjMzMkMw
RjJCOUEyNTAwNEI2Nzk1IC8qIFdlYlRpbGVkTGF5ZXIubW0gaW4gU291cmNlcyAqLywKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24u
Y3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5j
cHAKaW5kZXggMGFkYTc3MzEzMGQyOWMzYTM3ZjkyZjk3ZjY0ODg1YTA2MmEwYWU3MS4uM2JiYjc3
MGRmODAxNWJjNzdkNmI1OTFlMzIxMTc4ZWUwNTk5MDBmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAKQEAgLTExNjAs
NyArMTE2MCw3IEBAIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRDcmVhdGVXZWJT
b2NrZXRJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMqIGluc3RyCiAgICAgICAgIHRpbWVsaW5lQWdl
bnQtPmRpZENyZWF0ZVdlYlNvY2tldChpZGVudGlmaWVyLCByZXF1ZXN0VVJMLCBwcm90b2NvbCwg
ZG9jdW1lbnQtPmZyYW1lKCkpOwogfQogCi12b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
d2lsbFNlbmRXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0SW1wbChJbnN0cnVtZW50aW5nQWdlbnRz
KiBpbnN0cnVtZW50aW5nQWdlbnRzLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdl
YlNvY2tldEhhbmRzaGFrZVJlcXVlc3QmIHJlcXVlc3QsIERvY3VtZW50KiBkb2N1bWVudCkKK3Zv
aWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFdlYlNvY2tldEhhbmRzaGFrZVJl
cXVlc3RJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMqIGluc3RydW1lbnRpbmdBZ2VudHMsIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBEb2N1
bWVudCogZG9jdW1lbnQpCiB7CiAgICAgaWYgKEluc3BlY3RvclJlc291cmNlQWdlbnQqIHJlc291
cmNlQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLT5pbnNwZWN0b3JSZXNvdXJjZUFnZW50KCkp
CiAgICAgICAgIHJlc291cmNlQWdlbnQtPndpbGxTZW5kV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVz
dChpZGVudGlmaWVyLCByZXF1ZXN0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaAppbmRleCAyOTc3ZDIyYzY0Njg0N2Y2MDNjYzM2
NGQ1NjY4ZWM5MGRlN2Q2ZWE1Li40MmFjZjkzNmE4MTBkMWM5YjdjYzIzOGM0NjAwZGRmZWE3NmQz
NmM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3Ry
dW1lbnRhdGlvbi5oCkBAIC00NCw3ICs0NCw2IEBACiAjaW5jbHVkZSAiU2NyaXB0U3RhdGUuaCIK
ICNpbmNsdWRlICJTdG9yYWdlQXJlYS5oIgogI2luY2x1ZGUgIldlYlNvY2tldEZyYW1lLmgiCi0j
aW5jbHVkZSAiV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5oIgogI2luY2x1ZGUgIldlYlNvY2tl
dEhhbmRzaGFrZVJlc3BvbnNlLmgiCiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogCkBAIC0yNzAs
NyArMjY5LDcgQEAgcHVibGljOgogCiAjaWYgRU5BQkxFKFdFQl9TT0NLRVRTKQogICAgIHN0YXRp
YyB2b2lkIGRpZENyZWF0ZVdlYlNvY2tldChEb2N1bWVudCosIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgS1VSTCYgcmVxdWVzdFVSTCwgY29uc3QgS1VSTCYgZG9jdW1lbnRVUkwsIGNv
bnN0IFN0cmluZyYgcHJvdG9jb2wpOwotICAgIHN0YXRpYyB2b2lkIHdpbGxTZW5kV2ViU29ja2V0
SGFuZHNoYWtlUmVxdWVzdChEb2N1bWVudCosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdCYpOworICAgIHN0YXRpYyB2b2lkIHdpbGxTZW5k
V2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdChEb2N1bWVudCosIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CiAgICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2
ZVdlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlKERvY3VtZW50KiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBjb25zdCBXZWJTb2NrZXRIYW5kc2hha2VSZXNwb25zZSYpOwogICAgIHN0YXRpYyB2
b2lkIGRpZENsb3NlV2ViU29ja2V0KERvY3VtZW50KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
KTsKICAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlV2ViU29ja2V0RnJhbWUoRG9jdW1lbnQqLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYlNvY2tldEZyYW1lJik7CkBAIC00Njks
NyArNDY4LDcgQEAgcHJpdmF0ZToKIAogI2lmIEVOQUJMRShXRUJfU09DS0VUUykKICAgICBzdGF0
aWMgdm9pZCBkaWRDcmVhdGVXZWJTb2NrZXRJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMqLCB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IEtVUkwmIHJlcXVlc3RVUkwsIGNvbnN0IEtVUkwm
IGRvY3VtZW50VVJMLCBjb25zdCBTdHJpbmcmIHByb3RvY29sLCBEb2N1bWVudCopOwotICAgIHN0
YXRpYyB2b2lkIHdpbGxTZW5kV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdEltcGwoSW5zdHJ1bWVu
dGluZ0FnZW50cyosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViU29ja2V0SGFu
ZHNoYWtlUmVxdWVzdCYsIERvY3VtZW50Kik7CisgICAgc3RhdGljIHZvaWQgd2lsbFNlbmRXZWJT
b2NrZXRIYW5kc2hha2VSZXF1ZXN0SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzKiwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBEb2N1bWVudCopOwogICAg
IHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVXZWJTb2NrZXRIYW5kc2hha2VSZXNwb25zZUltcGwoSW5z
dHJ1bWVudGluZ0FnZW50cyosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViU29j
a2V0SGFuZHNoYWtlUmVzcG9uc2UmLCBEb2N1bWVudCopOwogICAgIHN0YXRpYyB2b2lkIGRpZENs
b3NlV2ViU29ja2V0SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzKiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBEb2N1bWVudCopOwogICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVXZWJTb2NrZXRG
cmFtZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
Y29uc3QgV2ViU29ja2V0RnJhbWUmKTsKQEAgLTE4NDgsNyArMTg0Nyw3IEBAIGlubGluZSB2b2lk
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkQ3JlYXRlV2ViU29ja2V0KERvY3VtZW50KiBk
b2N1bWVudCwgdW5zCiAjZW5kaWYKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjp3aWxsU2VuZFdlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QoRG9jdW1lbnQqIGRvY3Vt
ZW50LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYlNvY2tldEhhbmRzaGFrZVJl
cXVlc3QmIHJlcXVlc3QpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246Ondp
bGxTZW5kV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdChEb2N1bWVudCogZG9jdW1lbnQsIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewog
I2lmIEVOQUJMRShJTlNQRUNUT1IpCiAgICAgaWYgKEluc3RydW1lbnRpbmdBZ2VudHMqIGluc3Ry
dW1lbnRpbmdBZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzRm9yRG9jdW1lbnQoZG9jdW1lbnQp
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclJlc291cmNl
QWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclJlc291cmNlQWdl
bnQuY3BwCmluZGV4IDAxODgzOTI1N2MzNjQ3N2UwYWE5MjJlZTM2ZGNiZjRmODlkYmY5NGYuLmIw
ZjFhYzY1NGFkNThkYTE2M2EwNTdlOTUwOWNkMjRkNDc5ODNjODkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JSZXNvdXJjZUFnZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUmVzb3VyY2VBZ2VudC5jcHAKQEAgLTY3LDcg
KzY3LDYgQEAKICNpbmNsdWRlICJTZXR0aW5ncy5oIgogI2luY2x1ZGUgIlN1YnJlc291cmNlTG9h
ZGVyLmgiCiAjaW5jbHVkZSAiV2ViU29ja2V0RnJhbWUuaCIKLSNpbmNsdWRlICJXZWJTb2NrZXRI
YW5kc2hha2VSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2Uu
aCIKICNpbmNsdWRlICJYTUxIdHRwUmVxdWVzdC5oIgogCkBAIC00ODcsMTAgKzQ4NiwxMCBAQCB2
b2lkIEluc3BlY3RvclJlc291cmNlQWdlbnQ6OmRpZENyZWF0ZVdlYlNvY2tldCh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0CiAgICAgbV9mcm9udGVuZC0+d2ViU29ja2V0Q3JlYXRlZChJ
ZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyKSwgcmVxdWVzdFVSTC5zdHJp
bmcoKSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yUmVzb3VyY2VBZ2VudDo6d2lsbFNlbmRXZWJTb2Nr
ZXRIYW5kc2hha2VSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViU29j
a2V0SGFuZHNoYWtlUmVxdWVzdCYgcmVxdWVzdCkKK3ZvaWQgSW5zcGVjdG9yUmVzb3VyY2VBZ2Vu
dDo6d2lsbFNlbmRXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIFJlZlB0cjxUeXBl
QnVpbGRlcjo6TmV0d29yazo6V2ViU29ja2V0UmVxdWVzdD4gcmVxdWVzdE9iamVjdCA9IFR5cGVC
dWlsZGVyOjpOZXR3b3JrOjpXZWJTb2NrZXRSZXF1ZXN0OjpjcmVhdGUoKQotICAgICAgICAuc2V0
SGVhZGVycyhidWlsZE9iamVjdEZvckhlYWRlcnMocmVxdWVzdC5oZWFkZXJGaWVsZHMoKSkpOwor
ICAgICAgICAuc2V0SGVhZGVycyhidWlsZE9iamVjdEZvckhlYWRlcnMocmVxdWVzdC5odHRwSGVh
ZGVyRmllbGRzKCkpKTsKICAgICBtX2Zyb250ZW5kLT53ZWJTb2NrZXRXaWxsU2VuZEhhbmRzaGFr
ZVJlcXVlc3QoSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllciksIGN1cnJl
bnRUaW1lKCksIHJlcXVlc3RPYmplY3QpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yUmVzb3VyY2VBZ2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvclJlc291cmNlQWdlbnQuaAppbmRleCBiMDkxNTYwMjIyM2M3MzFlNWE5
MTcyM2ZiYWI3NmZlMmFlYWYxNGQ0Li45ZWMyN2IyOTJlMWZjNmQzYzZlODM1MWFkNTdiYTVkY2Ex
ZGUyNmY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUmVz
b3VyY2VBZ2VudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JSZXNv
dXJjZUFnZW50LmgKQEAgLTc0LDcgKzc0LDYgQEAgY2xhc3MgWE1MSHR0cFJlcXVlc3Q7CiAKICNp
ZiBFTkFCTEUoV0VCX1NPQ0tFVFMpCiBzdHJ1Y3QgV2ViU29ja2V0RnJhbWU7Ci1jbGFzcyBXZWJT
b2NrZXRIYW5kc2hha2VSZXF1ZXN0OwogY2xhc3MgV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2U7
CiAjZW5kaWYKIApAQCAtMTI3LDcgKzEyNiw3IEBAIHB1YmxpYzoKIAogI2lmIEVOQUJMRShXRUJf
U09DS0VUUykKICAgICB2b2lkIGRpZENyZWF0ZVdlYlNvY2tldCh1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IEtVUkwmIHJlcXVlc3RVUkwpOwotICAgIHZvaWQgd2lsbFNlbmRXZWJTb2Nr
ZXRIYW5kc2hha2VSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViU29j
a2V0SGFuZHNoYWtlUmVxdWVzdCYpOworICAgIHZvaWQgd2lsbFNlbmRXZWJTb2NrZXRIYW5kc2hh
a2VSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0
Jik7CiAgICAgdm9pZCBkaWRSZWNlaXZlV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UodW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJTb2NrZXRIYW5kc2hha2VSZXNwb25zZSYpOwog
ICAgIHZvaWQgZGlkQ2xvc2VXZWJTb2NrZXQodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKICAg
ICB2b2lkIGRpZFJlY2VpdmVXZWJTb2NrZXRGcmFtZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGNvbnN0IFdlYlNvY2tldEZyYW1lJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL0hUVFBSZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvSFRUUFJlcXVlc3QuY3BwCmluZGV4IGY0ZjlkNGYzNzcwNzA1ZjkxOWU5OWU4ZGMyZTdh
ZmVjNDc3N2Q4NGQuLjAzNDFjNmEyZGNlZDZhYjI0ZDQ5YmVlN2JkMGI1OGQ5MTNkOTg2MjAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUFJlcXVlc3QuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUFJlcXVlc3QuY3BwCkBA
IC0zMCw2ICszMCw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorI2lmIDAKIFBhc3NSZWZQ
dHI8SFRUUFJlcXVlc3Q+IEhUVFBSZXF1ZXN0OjpwYXJzZUhUVFBSZXF1ZXN0RnJvbUJ1ZmZlcihj
b25zdCBjaGFyKiBkYXRhLCBzaXplX3QgbGVuZ3RoLCBTdHJpbmcmIGZhaWx1cmVSZWFzb24pCiB7
CiAgICAgaWYgKCFsZW5ndGgpIHsKQEAgLTY3LDcgKzY4LDcgQEAgUGFzc1JlZlB0cjxIVFRQUmVx
dWVzdD4gSFRUUFJlcXVlc3Q6OnBhcnNlSFRUUFJlcXVlc3RGcm9tQnVmZmVyKGNvbnN0IGNoYXIq
IGRhdGEKICAgICBBU1NFUlQoIXJlbWFpbmluZ0xlbmd0aCk7CiAgICAgcmV0dXJuIHJlcXVlc3Qu
cmVsZWFzZSgpOwogfQotCisjZW5kaWYKIHNpemVfdCBIVFRQUmVxdWVzdDo6cGFyc2VSZXF1ZXN0
TGluZShjb25zdCBjaGFyKiBkYXRhLCBzaXplX3QgbGVuZ3RoLCBTdHJpbmcmIGZhaWx1cmVSZWFz
b24pCiB7CiAgICAgU3RyaW5nIHVybDsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201871</attachid>
            <date>2013-05-15 13:06:38 -0700</date>
            <delta_ts>2013-05-15 13:20:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-116178-20130515130533.patch</filename>
            <type>text/plain</type>
            <size>30178</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwMTMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmU0NjdiZTdhNTQzMzQ1
YTM2OGM5ZTgxYjc0ZWQ5YWFkOTM5YTU2NC4uZWJjOGQ4NmQ4MzFhYWYzMmIxM2Q3OWE2ZGM3Mjg0
M2JjY2E0YTIxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDEzLTA1LTE1ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIFdlYlNv
Y2tldEhhbmRzaGFrZVJlcXVlc3QgY2xhc3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTExNjE3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFR1cm5zIG91dCBXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0IGlz
IGp1c3QgdXNlZCBieSB0aGUgd2ViIGluc3BlY3RvciwgYW5kIHRoZXJlJ3Mgbm8gcmVhc29uIAor
ICAgICAgICB3aHkgd2UgY2FuJ3QganVzdCB1c2UgYSBSZXNvdXJjZVJlcXVlc3QgaW5zdGVhZC4K
KworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIEdOVW1ha2VmaWxlLmxpc3Qu
YW06CisgICAgICAgICogTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldENoYW5uZWwuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6V2ViU29ja2V0Q2hhbm5lbDo6ZGlkT3BlblNvY2tldFN0cmVhbSk6
CisgICAgICAgICogTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFrZS5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpXZWJTb2NrZXRIYW5kc2hha2U6OmNsaWVudEhhbmRzaGFrZVJlcXVl
c3QpOgorICAgICAgICAqIE1vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXRIYW5kc2hha2UuaDoK
KyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIE1vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2Nr
ZXRIYW5kc2hha2VSZXF1ZXN0LmNwcDogUmVtb3ZlZC4KKyAgICAgICAgKiBNb2R1bGVzL3dlYnNv
Y2tldHMvV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5oOiBSZW1vdmVkLgorICAgICAgICAqIFRh
cmdldC5wcmk6CisgICAgICAgICogV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2o6CisgICAg
ICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvajoKKyAgICAgICAgKiBXZWJDb3Jl
LnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnM6CisgICAgICAgICogV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JJbnN0
cnVtZW50YXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5kV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVz
dEltcGwpOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaDoK
KyAgICAgICAgKEluc3BlY3Rvckluc3RydW1lbnRhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5kV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVz
dCk6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvclJlc291cmNlQWdlbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yUmVzb3VyY2VBZ2VudDo6d2lsbFNlbmRXZWJTb2NrZXRI
YW5kc2hha2VSZXF1ZXN0KToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yUmVzb3VyY2VB
Z2VudC5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChJbnNwZWN0b3JSZXNvdXJjZUFn
ZW50KToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL0hUVFBSZXF1ZXN0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmUpOgorCiAyMDEzLTA1LTE1ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNv
bT4KIAogICAgICAgICBbTWFjXSBSZW1vdmUgdGhlIENsaXBib2FyZE1hYyBjbGFzcyBhbmQgaGVh
ZGVyIGZpbGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291
cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggNmM3Mzc1ODg5Njg0NDY3YmYxMDdmZDgw
YjA5MWY4ZDBjNTQzMGZiMy4uZGQ3NmY2NTc1YzYwNjNkZjI3YTI1NTEwZDE0MzQ5Mzk5ZTM4MDQy
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNl
L1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTk2Myw3ICs5NjMsNiBAQCBzZXQoV2ViQ29yZV9T
T1VSQ0VTCiAgICAgTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEV4dGVuc2lvblBhcnNlci5j
cHAKICAgICBNb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0RnJhbWUuY3BwCiAgICAgTW9kdWxl
cy93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFrZS5jcHAKLSAgICBNb2R1bGVzL3dlYnNvY2tl
dHMvV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5jcHAKICAgICBNb2R1bGVzL3dlYnNvY2tldHMv
V2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UuY3BwCiAgICAgTW9kdWxlcy93ZWJzb2NrZXRzL1dv
cmtlclRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsLmNwcAogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUu
bGlzdC5hbQppbmRleCA1Yzc0MjljYTdlNGUwNWRhODQ1NWMzYWJiNjZjYThjNzFkMmRhNTk3Li4y
ZGU0Y2YzNjRmOGZlNDczMzBhOTAwNzAzY2E2ZjM5NzU0NDlmMWMxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1h
a2VmaWxlLmxpc3QuYW0KQEAgLTIyNTksOCArMjI1OSw2IEBAIHdlYmNvcmVfbW9kdWxlc19zb3Vy
Y2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0RnJh
bWUuaCBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRz
aGFrZS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXRI
YW5kc2hha2UuaCBcCi0JU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tl
dEhhbmRzaGFrZVJlcXVlc3QuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tl
dHMvV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5oIFwKIAlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UuY3BwIFwKIAlTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UuaCBcCiAJ
U291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dvcmtlclRocmVhZGFibGVXZWJTb2Nr
ZXRDaGFubmVsLmNwcCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNv
Y2tldHMvV2ViU29ja2V0Q2hhbm5lbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNv
Y2tldHMvV2ViU29ja2V0Q2hhbm5lbC5jcHAKaW5kZXggYzk4NDg1MzBlYTk0YjU0NWQxN2UxODlh
OTc1NDFlOGRjMTM4YTM2NS4uZGIwOWE0ZTg0OGQ5ODg3NWU4NTg5MjU2NmMxMTcwYTdiOThjNjEx
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tl
dENoYW5uZWwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJT
b2NrZXRDaGFubmVsLmNwcApAQCAtNDcsNiArNDcsNyBAQAogI2luY2x1ZGUgIkxvZ2dpbmcuaCIK
ICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUHJvZ3Jlc3NUcmFja2VyLmgiCisjaW5jbHVk
ZSAiUmVzb3VyY2VSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiU2NyaXB0Q2FsbFN0YWNrLmgiCiAjaW5j
bHVkZSAiU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIgogI2luY2x1ZGUgIlNldHRpbmdzLmgiCkBA
IC0yNTcsNyArMjU4LDcgQEAgdm9pZCBXZWJTb2NrZXRDaGFubmVsOjpkaWRPcGVuU29ja2V0U3Ry
ZWFtKFNvY2tldFN0cmVhbUhhbmRsZSogaGFuZGxlKQogICAgIGlmICghbV9kb2N1bWVudCkKICAg
ICAgICAgcmV0dXJuOwogICAgIGlmIChtX2lkZW50aWZpZXIpCi0gICAgICAgIEluc3BlY3Rvcklu
c3RydW1lbnRhdGlvbjo6d2lsbFNlbmRXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0KG1fZG9jdW1l
bnQsIG1faWRlbnRpZmllciwgKm1faGFuZHNoYWtlLT5jbGllbnRIYW5kc2hha2VSZXF1ZXN0KCkp
OworICAgICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxTZW5kV2ViU29ja2V0SGFu
ZHNoYWtlUmVxdWVzdChtX2RvY3VtZW50LCBtX2lkZW50aWZpZXIsIG1faGFuZHNoYWtlLT5jbGll
bnRIYW5kc2hha2VSZXF1ZXN0KCkpOwogICAgIENTdHJpbmcgaGFuZHNoYWtlTWVzc2FnZSA9IG1f
aGFuZHNoYWtlLT5jbGllbnRIYW5kc2hha2VNZXNzYWdlKCk7CiAgICAgaWYgKCFoYW5kbGUtPnNl
bmQoaGFuZHNoYWtlTWVzc2FnZS5kYXRhKCksIGhhbmRzaGFrZU1lc3NhZ2UubGVuZ3RoKCkpKQog
ICAgICAgICBmYWlsKCJGYWlsZWQgdG8gc2VuZCBXZWJTb2NrZXQgaGFuZHNoYWtlLiIpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRz
aGFrZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFu
ZHNoYWtlLmNwcAppbmRleCBmNWY0NjIwOWNkZjJlMTEyODQxZWMwNWM1OTUyZWMwOGRiMmFhNmYz
Li4yZTRlNzA3ZTIwNjU4ZGYzZjM4Nzk0NTJkOTAyNTA5MzI4N2QxZDVjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtl
LmNwcApAQCAtNDMsNiArNDMsNyBAQAogI2luY2x1ZGUgIkhUVFBQYXJzZXJzLmgiCiAjaW5jbHVk
ZSAiS1VSTC5oIgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKKyNpbmNsdWRlICJSZXNvdXJjZVJlcXVl
c3QuaCIKICNpbmNsdWRlICJTY3JpcHRDYWxsU3RhY2suaCIKICNpbmNsdWRlICJTY3JpcHRFeGVj
dXRpb25Db250ZXh0LmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKQEAgLTIzNiw0MSAr
MjM3LDQyIEBAIENTdHJpbmcgV2ViU29ja2V0SGFuZHNoYWtlOjpjbGllbnRIYW5kc2hha2VNZXNz
YWdlKCkgY29uc3QKICAgICByZXR1cm4gYnVpbGRlci50b1N0cmluZygpLnV0ZjgoKTsKIH0KIAot
UGFzc1JlZlB0cjxXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0PiBXZWJTb2NrZXRIYW5kc2hha2U6
OmNsaWVudEhhbmRzaGFrZVJlcXVlc3QoKSBjb25zdAorUmVzb3VyY2VSZXF1ZXN0IFdlYlNvY2tl
dEhhbmRzaGFrZTo6Y2xpZW50SGFuZHNoYWtlUmVxdWVzdCgpIGNvbnN0CiB7CiAgICAgLy8gS2Vl
cCB0aGUgZm9sbG93aW5nIGNvbnNpc3RlbnQgd2l0aCBjbGllbnRIYW5kc2hha2VNZXNzYWdlKCku
CiAgICAgLy8gRklYTUU6IGRvIHdlIG5lZWQgdG8gc3RvcmUgbV9zZWNXZWJTb2NrZXRLZXkxLCBt
X3NlY1dlYlNvY2tldEtleTIgYW5kCi0gICAgLy8gbV9rZXkzIGluIFdlYlNvY2tldEhhbmRzaGFr
ZVJlcXVlc3Q/Ci0gICAgUmVmUHRyPFdlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3Q+IHJlcXVlc3Qg
PSBXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0OjpjcmVhdGUoIkdFVCIsIG1fdXJsKTsKLSAgICBy
ZXF1ZXN0LT5hZGRIZWFkZXJGaWVsZCgiVXBncmFkZSIsICJ3ZWJzb2NrZXQiKTsKLSAgICByZXF1
ZXN0LT5hZGRIZWFkZXJGaWVsZCgiQ29ubmVjdGlvbiIsICJVcGdyYWRlIik7Ci0gICAgcmVxdWVz
dC0+YWRkSGVhZGVyRmllbGQoIkhvc3QiLCBob3N0TmFtZShtX3VybCwgbV9zZWN1cmUpKTsKLSAg
ICByZXF1ZXN0LT5hZGRIZWFkZXJGaWVsZCgiT3JpZ2luIiwgY2xpZW50T3JpZ2luKCkpOworICAg
IC8vIG1fa2V5MyBpbiB0aGUgcmVxdWVzdD8KKyAgICBSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCht
X3VybCk7CisgICAgcmVxdWVzdC5zZXRIVFRQTWV0aG9kKCJHRVQiKTsKKworICAgIHJlcXVlc3Qu
YWRkSFRUUEhlYWRlckZpZWxkKCJDb25uZWN0aW9uIiwgIlVwZ3JhZGUiKTsKKyAgICByZXF1ZXN0
LmFkZEhUVFBIZWFkZXJGaWVsZCgiSG9zdCIsIGhvc3ROYW1lKG1fdXJsLCBtX3NlY3VyZSkpOwor
ICAgIHJlcXVlc3QuYWRkSFRUUEhlYWRlckZpZWxkKCJPcmlnaW4iLCBjbGllbnRPcmlnaW4oKSk7
CiAgICAgaWYgKCFtX2NsaWVudFByb3RvY29sLmlzRW1wdHkoKSkKLSAgICAgICAgcmVxdWVzdC0+
YWRkSGVhZGVyRmllbGQoIlNlYy1XZWJTb2NrZXQtUHJvdG9jb2wiLCBtX2NsaWVudFByb3RvY29s
KTsKKyAgICAgICAgcmVxdWVzdC5hZGRIVFRQSGVhZGVyRmllbGQoIlNlYy1XZWJTb2NrZXQtUHJv
dG9jb2wiLCBtX2NsaWVudFByb3RvY29sKTsKIAogICAgIEtVUkwgdXJsID0gaHR0cFVSTEZvckF1
dGhlbnRpY2F0aW9uQW5kQ29va2llcygpOwogICAgIGlmIChtX2NvbnRleHQtPmlzRG9jdW1lbnQo
KSkgewogICAgICAgICBEb2N1bWVudCogZG9jdW1lbnQgPSB0b0RvY3VtZW50KG1fY29udGV4dCk7
CiAgICAgICAgIFN0cmluZyBjb29raWUgPSBjb29raWVSZXF1ZXN0SGVhZGVyRmllbGRWYWx1ZShk
b2N1bWVudCwgdXJsKTsKICAgICAgICAgaWYgKCFjb29raWUuaXNFbXB0eSgpKQotICAgICAgICAg
ICAgcmVxdWVzdC0+YWRkSGVhZGVyRmllbGQoIkNvb2tpZSIsIGNvb2tpZSk7CisgICAgICAgICAg
ICByZXF1ZXN0LmFkZEhUVFBIZWFkZXJGaWVsZCgiQ29va2llIiwgY29va2llKTsKICAgICAgICAg
Ly8gU2V0ICJDb29raWUyOiA8Y29va2llPiIgaWYgY29va2llcyAyIGV4aXN0cyBmb3IgdXJsPwog
ICAgIH0KIAotICAgIHJlcXVlc3QtPmFkZEhlYWRlckZpZWxkKCJQcmFnbWEiLCAibm8tY2FjaGUi
KTsKLSAgICByZXF1ZXN0LT5hZGRIZWFkZXJGaWVsZCgiQ2FjaGUtQ29udHJvbCIsICJuby1jYWNo
ZSIpOworICAgIHJlcXVlc3QuYWRkSFRUUEhlYWRlckZpZWxkKCJQcmFnbWEiLCAibm8tY2FjaGUi
KTsKKyAgICByZXF1ZXN0LmFkZEhUVFBIZWFkZXJGaWVsZCgiQ2FjaGUtQ29udHJvbCIsICJuby1j
YWNoZSIpOwogCi0gICAgcmVxdWVzdC0+YWRkSGVhZGVyRmllbGQoIlNlYy1XZWJTb2NrZXQtS2V5
IiwgbV9zZWNXZWJTb2NrZXRLZXkpOwotICAgIHJlcXVlc3QtPmFkZEhlYWRlckZpZWxkKCJTZWMt
V2ViU29ja2V0LVZlcnNpb24iLCAiMTMiKTsKKyAgICByZXF1ZXN0LmFkZEhUVFBIZWFkZXJGaWVs
ZCgiU2VjLVdlYlNvY2tldC1LZXkiLCBtX3NlY1dlYlNvY2tldEtleSk7CisgICAgcmVxdWVzdC5h
ZGRIVFRQSGVhZGVyRmllbGQoIlNlYy1XZWJTb2NrZXQtVmVyc2lvbiIsICIxMyIpOwogICAgIGNv
bnN0IFN0cmluZyBleHRlbnNpb25WYWx1ZSA9IG1fZXh0ZW5zaW9uRGlzcGF0Y2hlci5jcmVhdGVI
ZWFkZXJWYWx1ZSgpOwogICAgIGlmIChleHRlbnNpb25WYWx1ZS5sZW5ndGgoKSkKLSAgICAgICAg
cmVxdWVzdC0+YWRkSGVhZGVyRmllbGQoIlNlYy1XZWJTb2NrZXQtRXh0ZW5zaW9ucyIsIGV4dGVu
c2lvblZhbHVlKTsKKyAgICAgICAgcmVxdWVzdC5hZGRIVFRQSGVhZGVyRmllbGQoIlNlYy1XZWJT
b2NrZXQtRXh0ZW5zaW9ucyIsIGV4dGVuc2lvblZhbHVlKTsKIAogICAgIC8vIEFkZCBhIFVzZXIt
QWdlbnQgaGVhZGVyLgotICAgIHJlcXVlc3QtPmFkZEhlYWRlckZpZWxkKCJVc2VyLUFnZW50Iiwg
bV9jb250ZXh0LT51c2VyQWdlbnQobV9jb250ZXh0LT51cmwoKSkpOworICAgIHJlcXVlc3QuYWRk
SFRUUEhlYWRlckZpZWxkKCJVc2VyLUFnZW50IiwgbV9jb250ZXh0LT51c2VyQWdlbnQobV9jb250
ZXh0LT51cmwoKSkpOwogCi0gICAgcmV0dXJuIHJlcXVlc3QucmVsZWFzZSgpOworICAgIHJldHVy
biByZXF1ZXN0OwogfQogCiB2b2lkIFdlYlNvY2tldEhhbmRzaGFrZTo6cmVzZXQoKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFr
ZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFr
ZS5oCmluZGV4IGM0MWZkODg2NWJmYTBmODM1MWRjYTY1MzA3MDI5Zjk0ZDVlNTk3YzAuLjAyNmJm
MDgxZDVhODQ3N2I3YjBmNDhhMWE1YzQxOTI5MjYzMDE5ZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXRIYW5kc2hha2UuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtlLmgKQEAgLTM2
LDEzICszNiwxMyBAQAogI2luY2x1ZGUgIktVUkwuaCIKICNpbmNsdWRlICJXZWJTb2NrZXRFeHRl
bnNpb25EaXNwYXRjaGVyLmgiCiAjaW5jbHVkZSAiV2ViU29ja2V0RXh0ZW5zaW9uUHJvY2Vzc29y
LmgiCi0jaW5jbHVkZSAiV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5oIgogI2luY2x1ZGUgIldl
YlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlLmgiCiAjaW5jbHVkZSA8d3RmL1Bhc3NPd25QdHIuaD4K
ICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
CitjbGFzcyBSZXNvdXJjZVJlcXVlc3Q7CiBjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0Owog
CiBjbGFzcyBXZWJTb2NrZXRIYW5kc2hha2UgewpAQCAtNjcsNyArNjcsNyBAQCBwdWJsaWM6CiAg
ICAgU3RyaW5nIGNsaWVudExvY2F0aW9uKCkgY29uc3Q7CiAKICAgICBDU3RyaW5nIGNsaWVudEhh
bmRzaGFrZU1lc3NhZ2UoKSBjb25zdDsKLSAgICBQYXNzUmVmUHRyPFdlYlNvY2tldEhhbmRzaGFr
ZVJlcXVlc3Q+IGNsaWVudEhhbmRzaGFrZVJlcXVlc3QoKSBjb25zdDsKKyAgICBSZXNvdXJjZVJl
cXVlc3QgY2xpZW50SGFuZHNoYWtlUmVxdWVzdCgpIGNvbnN0OwogCiAgICAgdm9pZCByZXNldCgp
OwogICAgIHZvaWQgY2xlYXJTY3JpcHRFeGVjdXRpb25Db250ZXh0KCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVz
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNo
YWtlUmVxdWVzdC5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDA1YzcwOWU0MmZh
MWQ3YTljZjAxM2ZjNTkzZjIyNjdjMjY3MTkwNTkuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJzb2NrZXRzL1dl
YlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNTQgKzAsMCBA
QAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKLSAqIG1ldDoKLSAqCi0g
KiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAotICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQotICogY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgotICogaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZQotICogZGlzdHJpYnV0aW9uLgotICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUg
SW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwotICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRv
IGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KLSAqIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRS
SUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgotICogQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKLSAq
IE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLAotICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCi0gKiBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwot
Ci0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBFTkFCTEUoV0VCX1NPQ0tFVFMpCi0KLSNpbmNs
dWRlICJXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0LmgiCi0KLSNpbmNsdWRlIDxjc3RyaW5nPgot
Ci11c2luZyBuYW1lc3BhY2Ugc3RkOwotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLVdlYlNvY2tl
dEhhbmRzaGFrZVJlcXVlc3Q6OldlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QoY29uc3QgU3RyaW5n
JiByZXF1ZXN0TWV0aG9kLCBjb25zdCBLVVJMJiB1cmwpCi0gICAgOiBIVFRQUmVxdWVzdChyZXF1
ZXN0TWV0aG9kLCB1cmwsIEhUVFBfMV8xKQotewotfQotCi1XZWJTb2NrZXRIYW5kc2hha2VSZXF1
ZXN0Ojp+V2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdCgpCi17Ci19Ci0KLX0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShXRUJfU09DS0VUUykKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0
LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtl
UmVxdWVzdC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiYTY2MmFjMmQyZDk5ZGJm
MWFhM2MwMGE3Y2QyZWUwODY0MGJiYzU4Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2Nr
ZXRIYW5kc2hha2VSZXF1ZXN0LmgKKysrIC9kZXYvbnVsbApAQCAtMSw1MyArMCwwIEBACi0vKgot
ICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQotICogbWV0OgotICoKLSAqICAgICAq
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCi0gKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCi0gKiBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0gKiBk
aXN0cmlidXRpb24uCi0gKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5v
ciB0aGUgbmFtZXMgb2YgaXRzCi0gKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3Jz
ZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQotICogdGhpcyBzb2Z0d2FyZSB3aXRo
b3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JT
Ci0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0gKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAotICogT1dORVIg
T1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSAqIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICog
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5k
ZWYgV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdF9oCi0jZGVmaW5lIFdlYlNvY2tldEhhbmRzaGFr
ZVJlcXVlc3RfaAotCi0jaWYgRU5BQkxFKFdFQl9TT0NLRVRTKQotCi0jaW5jbHVkZSAiSFRUUFJl
cXVlc3QuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBXZWJTb2NrZXRIYW5kc2hh
a2VSZXF1ZXN0IDogcHVibGljIEhUVFBSZXF1ZXN0IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFz
c1JlZlB0cjxXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0PiBjcmVhdGUoY29uc3QgU3RyaW5nJiBy
ZXF1ZXN0TWV0aG9kLCBjb25zdCBLVVJMJiB1cmwpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBXZWJT
b2NrZXRIYW5kc2hha2VSZXF1ZXN0KHJlcXVlc3RNZXRob2QsIHVybCkpOyB9Ci0gICAgfldlYlNv
Y2tldEhhbmRzaGFrZVJlcXVlc3QoKTsKLQotcHJpdmF0ZToKLSAgICBXZWJTb2NrZXRIYW5kc2hh
a2VSZXF1ZXN0KGNvbnN0IFN0cmluZyYgcmVxdWVzdE1ldGhvZCwgY29uc3QgS1VSTCYpOwotfTsK
LQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFdFQl9TT0NLRVRT
KQotCi0jZW5kaWYgLy8gV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdF9oCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpIGIvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQppbmRl
eCA2M2MyN2RhOGM3MmNlZTNhYmVkZmM4ZWMzNDBmODUwZmFhZTViMWI0Li4zYTkxMTE5MTQwNTI0
NGExZjFmZDRhM2I5YmYxOWU2Yjc2NzgzZmYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9U
YXJnZXQucHJpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKQEAgLTQwMjQsNyArNDAy
NCw2IEBAIGVuYWJsZT8oV0VCX1NPQ0tFVFMpIHsKICAgICAgICAgTW9kdWxlcy93ZWJzb2NrZXRz
L1dlYlNvY2tldEV4dGVuc2lvblByb2Nlc3Nvci5oIFwKICAgICAgICAgTW9kdWxlcy93ZWJzb2Nr
ZXRzL1dlYlNvY2tldEZyYW1lLmggXAogICAgICAgICBNb2R1bGVzL3dlYnNvY2tldHMvV2ViU29j
a2V0SGFuZHNoYWtlLmggXAotICAgICAgICBNb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFu
ZHNoYWtlUmVxdWVzdC5oIFwKICAgICAgICAgTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEhh
bmRzaGFrZVJlc3BvbnNlLmggXAogICAgICAgICBNb2R1bGVzL3dlYnNvY2tldHMvV29ya2VyVGhy
ZWFkYWJsZVdlYlNvY2tldENoYW5uZWwuaCBcCiAgICAgICAgIHBsYXRmb3JtL25ldHdvcmsvcXQv
U29ja2V0U3RyZWFtSGFuZGxlUHJpdmF0ZS5oCkBAIC00MDM4LDcgKzQwMzcsNiBAQCBlbmFibGU/
KFdFQl9TT0NLRVRTKSB7CiAgICAgICAgIE1vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXRFeHRl
bnNpb25QYXJzZXIuY3BwIFwKICAgICAgICAgTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEZy
YW1lLmNwcCBcCiAgICAgICAgIE1vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXRIYW5kc2hha2Uu
Y3BwIFwKLSAgICAgICAgTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFrZVJlcXVl
c3QuY3BwIFwKICAgICAgICAgTW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFrZVJl
c3BvbnNlLmNwcCBcCiAgICAgICAgIE1vZHVsZXMvd2Vic29ja2V0cy9Xb3JrZXJUaHJlYWRhYmxl
V2ViU29ja2V0Q2hhbm5lbC5jcHAgXAogICAgICAgICBNb2R1bGVzL3dlYnNvY2tldHMvVGhyZWFk
YWJsZVdlYlNvY2tldENoYW5uZWwuY3BwIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3By
b2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggMzM3MTQxZjJjODZjNDdiOTcxYTc2NTZjYWI2NzVkYzlm
ZjFhMzg5OS4uZWY0YjQ3NTYyNjE3YTAyYWY5NDBiODI4YzAzOTIzMzU0ZTI1MTcyYSAxMDA3NTUK
LS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKQEAgLTI1OTEwLDE0
ICsyNTkxMCw2IEBACiAJCQkJCT4KIAkJCQk8L0ZpbGU+CiAJCQkJPEZpbGUKLQkJCQkJUmVsYXRp
dmVQYXRoPSIuLlxNb2R1bGVzXHdlYnNvY2tldHNcV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5j
cHAiCi0JCQkJCT4KLQkJCQk8L0ZpbGU+Ci0JCQkJPEZpbGUKLQkJCQkJUmVsYXRpdmVQYXRoPSIu
LlxNb2R1bGVzXHdlYnNvY2tldHNcV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5oIgotCQkJCQk+
Ci0JCQkJPC9GaWxlPgotCQkJCTxGaWxlCiAJCQkJCVJlbGF0aXZlUGF0aD0iLi5cTW9kdWxlc1x3
ZWJzb2NrZXRzXFdlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlLmNwcCIKIAkJCQkJPgogCQkJCTwv
RmlsZT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3Jl
LnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9q
CmluZGV4IGFmMzhhM2M3Y2QyNWRjZWJiYWNjNmQ2NWViYTFmMDBiMTBmZmM1OGUuLjQxNmI0YjYw
MGViYWEwMzMxMzNlNjE5MzQ1Y2UwMmI3N2VmNzNkMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvagpAQCAtMzcxMCw3ICszNzEwLDYgQEAKICAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXE1vZHVsZXNcd2Vic29ja2V0c1xXZWJTb2NrZXRFeHRl
bnNpb25QYXJzZXIuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3
ZWJzb2NrZXRzXFdlYlNvY2tldEZyYW1lLmNwcCIgLz4KICAgICA8Q2xDb21waWxlIEluY2x1ZGU9
Ii4uXE1vZHVsZXNcd2Vic29ja2V0c1xXZWJTb2NrZXRIYW5kc2hha2UuY3BwIiAvPgotICAgIDxD
bENvbXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJzb2NrZXRzXFdlYlNvY2tldEhhbmRzaGFr
ZVJlcXVlc3QuY3BwIiAvPgogICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJz
b2NrZXRzXFdlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlLmNwcCIgLz4KICAgICA8Q2xDb21waWxl
IEluY2x1ZGU9Ii4uXE1vZHVsZXNcd2Vic29ja2V0c1xXb3JrZXJUaHJlYWRhYmxlV2ViU29ja2V0
Q2hhbm5lbC5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHNwZWVj
aFxET01XaW5kb3dTcGVlY2hTeW50aGVzaXMuY3BwIiAvPgpAQCAtMTEzMDgsOCArMTEzMDcsNiBA
QAogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJzb2NrZXRzXFdlYlNvY2tl
dEV4dGVuc2lvblByb2Nlc3Nvci5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9k
dWxlc1x3ZWJzb2NrZXRzXFdlYlNvY2tldEZyYW1lLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxNb2R1bGVzXHdlYnNvY2tldHNcV2ViU29ja2V0SGFuZHNoYWtlLmgiIC8+Ci0gICAg
PENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYnNvY2tldHNcV2ViU29ja2V0SGFuZHNo
YWtlUmVxdWVzdC5oIiAvPgotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJz
b2NrZXRzXFdlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIuLlxNb2R1bGVzXHdlYnNvY2tldHNcV29ya2VyVGhyZWFkYWJsZVdlYlNvY2tldENo
YW5uZWwuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXE1vZHVsZXNcc3BlZWNoXERP
TVdpbmRvd1NwZWVjaFN5bnRoZXNpcy5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5c
TW9kdWxlc1xzcGVlY2hcU3BlZWNoU3ludGhlc2lzLmgiIC8+CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMgYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZpbHRlcnMKaW5kZXggNmZm
N2E4N2Y0ZGJiYjFmMTZmMzFkOTAzOWE4ZDZhZjg1N2ZiMDQ0Zi4uOGVkNjMwZGNiZTg4YTQ0NzVk
NTUzOTE5NTUyMmU4NTQyMWIzMjY1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwpAQCAtNTg4LDkgKzU4OCw2IEBA
CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYnNvY2tldHNcV2ViU29ja2V0
SGFuZHNoYWtlLmNwcCI+CiAgICAgICA8RmlsdGVyPk1vZHVsZXNcd2Vic29ja2V0czwvRmlsdGVy
PgogICAgIDwvQ2xDb21waWxlPgotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3
ZWJzb2NrZXRzXFdlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuY3BwIj4KLSAgICAgIDxGaWx0ZXI+
TW9kdWxlc1x3ZWJzb2NrZXRzPC9GaWx0ZXI+Ci0gICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29t
cGlsZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYnNvY2tldHNcV2ViU29ja2V0SGFuZHNoYWtlUmVz
cG9uc2UuY3BwIj4KICAgICAgIDxGaWx0ZXI+TW9kdWxlc1x3ZWJzb2NrZXRzPC9GaWx0ZXI+CiAg
ICAgPC9DbENvbXBpbGU+CkBAIC03Mjg0LDkgKzcyODEsNiBAQAogICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5cTW9kdWxlc1x3ZWJzb2NrZXRzXFdlYlNvY2tldEhhbmRzaGFrZS5oIj4KICAgICAg
IDxGaWx0ZXI+TW9kdWxlc1x3ZWJzb2NrZXRzPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+Ci0g
ICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYnNvY2tldHNcV2ViU29ja2V0SGFu
ZHNoYWtlUmVxdWVzdC5oIj4KLSAgICAgIDxGaWx0ZXI+TW9kdWxlc1x3ZWJzb2NrZXRzPC9GaWx0
ZXI+Ci0gICAgPC9DbEluY2x1ZGU+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVz
XHdlYnNvY2tldHNcV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UuaCI+CiAgICAgICA8RmlsdGVy
Pk1vZHVsZXNcd2Vic29ja2V0czwvRmlsdGVyPgogICAgIDwvQ2xJbmNsdWRlPgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGNhZmFl
ZDgyM2NlMjI0NDk1MmJjYzVhYWI1NzAwZDQwZTA3YWViYzguLmIyMmIyNjNlNDk2MzZkMjM2ZGUy
YjJlOWM3OGQyODkyMmE5ZTI3OTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTMxOTcsOCArMzE5Nyw2IEBACiAJCTk3QUFCRDI1
MTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRGcmFtZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdBQUJEMEExNEZBMDlENTAwNzQ1N0FFIC8qIFdl
YlNvY2tldEZyYW1lLmggKi87IH07CiAJCTk3QUFCRDI2MTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJT
b2NrZXRIYW5kc2hha2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gOTdBQUJEMEIxNEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFrZS5j
cHAgKi87IH07CiAJCTk3QUFCRDI3MTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRIYW5kc2hh
a2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3QUFC
RDBDMTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRIYW5kc2hha2UuaCAqLzsgfTsKLQkJOTdB
QUJEMjgxNEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdBQUJEMEQxNEZB
MDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuY3BwICovOyB9OwotCQk5
N0FBQkQyOTE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdBQUJEMEUxNEZB
MDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuaCAqLzsgfTsKIAkJOTdB
QUJEMkExNEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3QUFCRDBGMTRG
QTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRIYW5kc2hha2VSZXNwb25zZS5jcHAgKi87IH07CiAJ
CTk3QUFCRDJCMTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRIYW5kc2hha2VSZXNwb25zZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdBQUJEMTAx
NEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlLmggKi87IH07CiAJ
CTk3QUFCRDJDMTRGQTA5RDUwMDc0NTdBRSAvKiBXb3JrZXJUaHJlYWRhYmxlV2ViU29ja2V0Q2hh
bm5lbC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5
N0FBQkQxMTE0RkEwOUQ1MDA3NDU3QUUgLyogV29ya2VyVGhyZWFkYWJsZVdlYlNvY2tldENoYW5u
ZWwuY3BwICovOyB9OwpAQCAtOTY1Nyw4ICs5NjU1LDYgQEAKIAkJOTdBQUJEMEExNEZBMDlENTAw
NzQ1N0FFIC8qIFdlYlNvY2tldEZyYW1lLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFt
ZSA9IFdlYlNvY2tldEZyYW1lLmg7IHBhdGggPSBNb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0
RnJhbWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTdBQUJEMEIxNEZBMDlENTAw
NzQ1N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFrZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IG5hbWUgPSBXZWJTb2NrZXRIYW5kc2hha2UuY3BwOyBwYXRoID0gTW9kdWxlcy93ZWJz
b2NrZXRzL1dlYlNvY2tldEhhbmRzaGFrZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTk3QUFCRDBDMTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRIYW5kc2hha2UuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gV2ViU29ja2V0SGFuZHNoYWtlLmg7IHBhdGgg
PSBNb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07Ci0JCTk3QUFCRDBEMTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRIYW5k
c2hha2VSZXF1ZXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFdl
YlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuY3BwOyBwYXRoID0gTW9kdWxlcy93ZWJzb2NrZXRzL1dl
YlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQk5N0FBQkQwRTE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBXZWJTb2NrZXRIYW5kc2hha2VSZXF1
ZXN0Lmg7IHBhdGggPSBNb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVz
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5N0FBQkQwRjE0RkEwOUQ1MDA3NDU3
QUUgLyogV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UuY3BwOyBwYXRoID0g
TW9kdWxlcy93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTdBQUJEMTAxNEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNv
Y2tldEhhbmRzaGFrZVJlc3BvbnNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9
IFdlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlLmg7IHBhdGggPSBNb2R1bGVzL3dlYnNvY2tldHMv
V2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJOTdBQUJEMTExNEZBMDlENTAwNzQ1N0FFIC8qIFdvcmtlclRocmVhZGFibGVXZWJTb2NrZXRD
aGFubmVsLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFdvcmtlclRo
cmVhZGFibGVXZWJTb2NrZXRDaGFubmVsLmNwcDsgcGF0aCA9IE1vZHVsZXMvd2Vic29ja2V0cy9X
b3JrZXJUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CkBAIC0xNjQwNSw4ICsxNjQwMSw2IEBACiAJCQkJOTdBQUJEMEExNEZBMDlENTAwNzQ1
N0FFIC8qIFdlYlNvY2tldEZyYW1lLmggKi8sCiAJCQkJOTdBQUJEMEIxNEZBMDlENTAwNzQ1N0FF
IC8qIFdlYlNvY2tldEhhbmRzaGFrZS5jcHAgKi8sCiAJCQkJOTdBQUJEMEMxNEZBMDlENTAwNzQ1
N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFrZS5oICovLAotCQkJCTk3QUFCRDBEMTRGQTA5RDUwMDc0
NTdBRSAvKiBXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0LmNwcCAqLywKLQkJCQk5N0FBQkQwRTE0
RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5oICovLAogCQkJCTk3
QUFCRDBGMTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRIYW5kc2hha2VSZXNwb25zZS5jcHAg
Ki8sCiAJCQkJOTdBQUJEMTAxNEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tldEhhbmRzaGFrZVJl
c3BvbnNlLmggKi8sCiAJCQkJQTg4NkNEQzIxNEZCQkFBMzAwRDI3OUY0IC8qIFdvcmtlckNvbnRl
eHRXZWJTb2NrZXQuaWRsICovLApAQCAtMjM5OTYsNyArMjM5OTAsNiBAQAogCQkJCTk3QUFCRDI0
MTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRFeHRlbnNpb25Qcm9jZXNzb3IuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTk3QUFCRDI1MTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRGcmFtZS5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJOTdBQUJEMjcxNEZBMDlENTAwNzQ1N0FFIC8qIFdlYlNvY2tl
dEhhbmRzaGFrZS5oIGluIEhlYWRlcnMgKi8sCi0JCQkJOTdBQUJEMjkxNEZBMDlENTAwNzQ1N0FF
IC8qIFdlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCTk3QUFC
RDJCMTRGQTA5RDUwMDc0NTdBRSAvKiBXZWJTb2NrZXRIYW5kc2hha2VSZXNwb25zZS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMEY1ODBGQTMxNDk2OTM5MTAwRkI1QkQ4IC8qIFdlYlRpbGVkQmFja2lu
Z0xheWVyLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRkNGMzMyRDBGMkI5QTI1MDA0QjY3OTUgLyog
V2ViVGlsZWRMYXllci5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNjk4Miw3ICsyNjk3NSw2IEBACiAJ
CQkJNEE1QTJBREIxNjFFN0UwMDAwNTg4OUREIC8qIFdlYlNvY2tldEV4dGVuc2lvblBhcnNlci5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQlBQUY1QjdCNzE1MjRCNkM1MDAwNENCNDkgLyogV2ViU29j
a2V0RnJhbWUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTdBQUJEMjYxNEZBMDlENTAwNzQ1N0FF
IC8qIFdlYlNvY2tldEhhbmRzaGFrZS5jcHAgaW4gU291cmNlcyAqLywKLQkJCQk5N0FBQkQyODE0
RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk5N0FBQkQyQTE0RkEwOUQ1MDA3NDU3QUUgLyogV2ViU29ja2V0SGFuZHNoYWtl
UmVzcG9uc2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMEY1ODBGQTQxNDk2OTM5MTAwRkI1QkQ4
IC8qIFdlYlRpbGVkQmFja2luZ0xheWVyLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMEZDRjMzMkMw
RjJCOUEyNTAwNEI2Nzk1IC8qIFdlYlRpbGVkTGF5ZXIubW0gaW4gU291cmNlcyAqLywKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24u
Y3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5j
cHAKaW5kZXggMGFkYTc3MzEzMGQyOWMzYTM3ZjkyZjk3ZjY0ODg1YTA2MmEwYWU3MS4uM2JiYjc3
MGRmODAxNWJjNzdkNmI1OTFlMzIxMTc4ZWUwNTk5MDBmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAKQEAgLTExNjAs
NyArMTE2MCw3IEBAIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRDcmVhdGVXZWJT
b2NrZXRJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMqIGluc3RyCiAgICAgICAgIHRpbWVsaW5lQWdl
bnQtPmRpZENyZWF0ZVdlYlNvY2tldChpZGVudGlmaWVyLCByZXF1ZXN0VVJMLCBwcm90b2NvbCwg
ZG9jdW1lbnQtPmZyYW1lKCkpOwogfQogCi12b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
d2lsbFNlbmRXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0SW1wbChJbnN0cnVtZW50aW5nQWdlbnRz
KiBpbnN0cnVtZW50aW5nQWdlbnRzLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdl
YlNvY2tldEhhbmRzaGFrZVJlcXVlc3QmIHJlcXVlc3QsIERvY3VtZW50KiBkb2N1bWVudCkKK3Zv
aWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsU2VuZFdlYlNvY2tldEhhbmRzaGFrZVJl
cXVlc3RJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMqIGluc3RydW1lbnRpbmdBZ2VudHMsIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBEb2N1
bWVudCogZG9jdW1lbnQpCiB7CiAgICAgaWYgKEluc3BlY3RvclJlc291cmNlQWdlbnQqIHJlc291
cmNlQWdlbnQgPSBpbnN0cnVtZW50aW5nQWdlbnRzLT5pbnNwZWN0b3JSZXNvdXJjZUFnZW50KCkp
CiAgICAgICAgIHJlc291cmNlQWdlbnQtPndpbGxTZW5kV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVz
dChpZGVudGlmaWVyLCByZXF1ZXN0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaAppbmRleCAyOTc3ZDIyYzY0Njg0N2Y2MDNjYzM2
NGQ1NjY4ZWM5MGRlN2Q2ZWE1Li40MmFjZjkzNmE4MTBkMWM5YjdjYzIzOGM0NjAwZGRmZWE3NmQz
NmM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3Ry
dW1lbnRhdGlvbi5oCkBAIC00NCw3ICs0NCw2IEBACiAjaW5jbHVkZSAiU2NyaXB0U3RhdGUuaCIK
ICNpbmNsdWRlICJTdG9yYWdlQXJlYS5oIgogI2luY2x1ZGUgIldlYlNvY2tldEZyYW1lLmgiCi0j
aW5jbHVkZSAiV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdC5oIgogI2luY2x1ZGUgIldlYlNvY2tl
dEhhbmRzaGFrZVJlc3BvbnNlLmgiCiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogCkBAIC0yNzAs
NyArMjY5LDcgQEAgcHVibGljOgogCiAjaWYgRU5BQkxFKFdFQl9TT0NLRVRTKQogICAgIHN0YXRp
YyB2b2lkIGRpZENyZWF0ZVdlYlNvY2tldChEb2N1bWVudCosIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgS1VSTCYgcmVxdWVzdFVSTCwgY29uc3QgS1VSTCYgZG9jdW1lbnRVUkwsIGNv
bnN0IFN0cmluZyYgcHJvdG9jb2wpOwotICAgIHN0YXRpYyB2b2lkIHdpbGxTZW5kV2ViU29ja2V0
SGFuZHNoYWtlUmVxdWVzdChEb2N1bWVudCosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29u
c3QgV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdCYpOworICAgIHN0YXRpYyB2b2lkIHdpbGxTZW5k
V2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdChEb2N1bWVudCosIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CiAgICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2
ZVdlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlKERvY3VtZW50KiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBjb25zdCBXZWJTb2NrZXRIYW5kc2hha2VSZXNwb25zZSYpOwogICAgIHN0YXRpYyB2
b2lkIGRpZENsb3NlV2ViU29ja2V0KERvY3VtZW50KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
KTsKICAgICBzdGF0aWMgdm9pZCBkaWRSZWNlaXZlV2ViU29ja2V0RnJhbWUoRG9jdW1lbnQqLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYlNvY2tldEZyYW1lJik7CkBAIC00Njks
NyArNDY4LDcgQEAgcHJpdmF0ZToKIAogI2lmIEVOQUJMRShXRUJfU09DS0VUUykKICAgICBzdGF0
aWMgdm9pZCBkaWRDcmVhdGVXZWJTb2NrZXRJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMqLCB1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IEtVUkwmIHJlcXVlc3RVUkwsIGNvbnN0IEtVUkwm
IGRvY3VtZW50VVJMLCBjb25zdCBTdHJpbmcmIHByb3RvY29sLCBEb2N1bWVudCopOwotICAgIHN0
YXRpYyB2b2lkIHdpbGxTZW5kV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdEltcGwoSW5zdHJ1bWVu
dGluZ0FnZW50cyosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViU29ja2V0SGFu
ZHNoYWtlUmVxdWVzdCYsIERvY3VtZW50Kik7CisgICAgc3RhdGljIHZvaWQgd2lsbFNlbmRXZWJT
b2NrZXRIYW5kc2hha2VSZXF1ZXN0SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzKiwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBEb2N1bWVudCopOwogICAg
IHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVXZWJTb2NrZXRIYW5kc2hha2VSZXNwb25zZUltcGwoSW5z
dHJ1bWVudGluZ0FnZW50cyosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViU29j
a2V0SGFuZHNoYWtlUmVzcG9uc2UmLCBEb2N1bWVudCopOwogICAgIHN0YXRpYyB2b2lkIGRpZENs
b3NlV2ViU29ja2V0SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzKiwgdW5zaWduZWQgbG9uZyBpZGVu
dGlmaWVyLCBEb2N1bWVudCopOwogICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVXZWJTb2NrZXRG
cmFtZUltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
Y29uc3QgV2ViU29ja2V0RnJhbWUmKTsKQEAgLTE4NDgsNyArMTg0Nyw3IEBAIGlubGluZSB2b2lk
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkQ3JlYXRlV2ViU29ja2V0KERvY3VtZW50KiBk
b2N1bWVudCwgdW5zCiAjZW5kaWYKIH0KIAotaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjp3aWxsU2VuZFdlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QoRG9jdW1lbnQqIGRvY3Vt
ZW50LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFdlYlNvY2tldEhhbmRzaGFrZVJl
cXVlc3QmIHJlcXVlc3QpCitpbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246Ondp
bGxTZW5kV2ViU29ja2V0SGFuZHNoYWtlUmVxdWVzdChEb2N1bWVudCogZG9jdW1lbnQsIHVuc2ln
bmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewog
I2lmIEVOQUJMRShJTlNQRUNUT1IpCiAgICAgaWYgKEluc3RydW1lbnRpbmdBZ2VudHMqIGluc3Ry
dW1lbnRpbmdBZ2VudHMgPSBpbnN0cnVtZW50aW5nQWdlbnRzRm9yRG9jdW1lbnQoZG9jdW1lbnQp
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclJlc291cmNl
QWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclJlc291cmNlQWdl
bnQuY3BwCmluZGV4IDAxODgzOTI1N2MzNjQ3N2UwYWE5MjJlZTM2ZGNiZjRmODlkYmY5NGYuLmIw
ZjFhYzY1NGFkNThkYTE2M2EwNTdlOTUwOWNkMjRkNDc5ODNjODkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JSZXNvdXJjZUFnZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUmVzb3VyY2VBZ2VudC5jcHAKQEAgLTY3LDcg
KzY3LDYgQEAKICNpbmNsdWRlICJTZXR0aW5ncy5oIgogI2luY2x1ZGUgIlN1YnJlc291cmNlTG9h
ZGVyLmgiCiAjaW5jbHVkZSAiV2ViU29ja2V0RnJhbWUuaCIKLSNpbmNsdWRlICJXZWJTb2NrZXRI
YW5kc2hha2VSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2Uu
aCIKICNpbmNsdWRlICJYTUxIdHRwUmVxdWVzdC5oIgogCkBAIC00ODcsMTAgKzQ4NiwxMCBAQCB2
b2lkIEluc3BlY3RvclJlc291cmNlQWdlbnQ6OmRpZENyZWF0ZVdlYlNvY2tldCh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGNvbnN0CiAgICAgbV9mcm9udGVuZC0+d2ViU29ja2V0Q3JlYXRlZChJ
ZGVudGlmaWVyc0ZhY3Rvcnk6OnJlcXVlc3RJZChpZGVudGlmaWVyKSwgcmVxdWVzdFVSTC5zdHJp
bmcoKSk7CiB9CiAKLXZvaWQgSW5zcGVjdG9yUmVzb3VyY2VBZ2VudDo6d2lsbFNlbmRXZWJTb2Nr
ZXRIYW5kc2hha2VSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViU29j
a2V0SGFuZHNoYWtlUmVxdWVzdCYgcmVxdWVzdCkKK3ZvaWQgSW5zcGVjdG9yUmVzb3VyY2VBZ2Vu
dDo6d2lsbFNlbmRXZWJTb2NrZXRIYW5kc2hha2VSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIFJlZlB0cjxUeXBl
QnVpbGRlcjo6TmV0d29yazo6V2ViU29ja2V0UmVxdWVzdD4gcmVxdWVzdE9iamVjdCA9IFR5cGVC
dWlsZGVyOjpOZXR3b3JrOjpXZWJTb2NrZXRSZXF1ZXN0OjpjcmVhdGUoKQotICAgICAgICAuc2V0
SGVhZGVycyhidWlsZE9iamVjdEZvckhlYWRlcnMocmVxdWVzdC5oZWFkZXJGaWVsZHMoKSkpOwor
ICAgICAgICAuc2V0SGVhZGVycyhidWlsZE9iamVjdEZvckhlYWRlcnMocmVxdWVzdC5odHRwSGVh
ZGVyRmllbGRzKCkpKTsKICAgICBtX2Zyb250ZW5kLT53ZWJTb2NrZXRXaWxsU2VuZEhhbmRzaGFr
ZVJlcXVlc3QoSWRlbnRpZmllcnNGYWN0b3J5OjpyZXF1ZXN0SWQoaWRlbnRpZmllciksIGN1cnJl
bnRUaW1lKCksIHJlcXVlc3RPYmplY3QpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yUmVzb3VyY2VBZ2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvclJlc291cmNlQWdlbnQuaAppbmRleCBiMDkxNTYwMjIyM2M3MzFlNWE5
MTcyM2ZiYWI3NmZlMmFlYWYxNGQ0Li45ZWMyN2IyOTJlMWZjNmQzYzZlODM1MWFkNTdiYTVkY2Ex
ZGUyNmY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUmVz
b3VyY2VBZ2VudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JSZXNv
dXJjZUFnZW50LmgKQEAgLTc0LDcgKzc0LDYgQEAgY2xhc3MgWE1MSHR0cFJlcXVlc3Q7CiAKICNp
ZiBFTkFCTEUoV0VCX1NPQ0tFVFMpCiBzdHJ1Y3QgV2ViU29ja2V0RnJhbWU7Ci1jbGFzcyBXZWJT
b2NrZXRIYW5kc2hha2VSZXF1ZXN0OwogY2xhc3MgV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2U7
CiAjZW5kaWYKIApAQCAtMTI3LDcgKzEyNiw3IEBAIHB1YmxpYzoKIAogI2lmIEVOQUJMRShXRUJf
U09DS0VUUykKICAgICB2b2lkIGRpZENyZWF0ZVdlYlNvY2tldCh1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGNvbnN0IEtVUkwmIHJlcXVlc3RVUkwpOwotICAgIHZvaWQgd2lsbFNlbmRXZWJTb2Nr
ZXRIYW5kc2hha2VSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgV2ViU29j
a2V0SGFuZHNoYWtlUmVxdWVzdCYpOworICAgIHZvaWQgd2lsbFNlbmRXZWJTb2NrZXRIYW5kc2hh
a2VSZXF1ZXN0KHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0
Jik7CiAgICAgdm9pZCBkaWRSZWNlaXZlV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9uc2UodW5zaWdu
ZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBXZWJTb2NrZXRIYW5kc2hha2VSZXNwb25zZSYpOwog
ICAgIHZvaWQgZGlkQ2xvc2VXZWJTb2NrZXQodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKICAg
ICB2b2lkIGRpZFJlY2VpdmVXZWJTb2NrZXRGcmFtZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGNvbnN0IFdlYlNvY2tldEZyYW1lJik7Cg==
</data>
<flag name="review"
          id="223254"
          type_id="1"
          status="+"
          setter="kling"
    />
          </attachment>
      

    </bug>

</bugzilla>