<?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>140736</bug_id>
          
          <creation_ts>2015-01-21 12:11:00 -0800</creation_ts>
          <short_desc>Add support for registering url schemes to bypass Content Security Policy</short_desc>
          <delta_ts>2015-07-20 10:59:24 -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>WebKit2</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Zach Li">a.tion.surf</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>a.tion.surf</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>jberlin</cc>
    
    <cc>mkwst</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1063130</commentid>
    <comment_count>0</comment_count>
    <who name="Zach Li">a.tion.surf</who>
    <bug_when>2015-01-21 12:11:00 -0800</bug_when>
    <thetext>As stated by Mike West in https://bugs.webkit.org/show_bug.cgi?id=89373, we want to load resources regardless of a page&apos;s Content Security Policy. We would like to extend this support to WebKit2.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1063143</commentid>
    <comment_count>1</comment_count>
      <attachid>245078</attachid>
    <who name="Zach Li">a.tion.surf</who>
    <bug_when>2015-01-21 12:33:38 -0800</bug_when>
    <thetext>Created attachment 245078
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1063162</commentid>
    <comment_count>2</comment_count>
    <who name="Jessie Berlin">jberlin</who>
    <bug_when>2015-01-21 14:09:36 -0800</bug_when>
    <thetext>rdar://problem/19541288</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1063231</commentid>
    <comment_count>3</comment_count>
      <attachid>245078</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-01-21 16:57:55 -0800</bug_when>
    <thetext>Comment on attachment 245078
Patch

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

&gt; Source/WebKit2/ChangeLog:4
&gt; +        [WK2] Add support for registering url schemes to bypass Content Security Policy.
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=140736

Is this the right thing to do? Or should we just ignore CSP for script in non-main worlds?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1063287</commentid>
    <comment_count>4</comment_count>
    <who name="Zach Li">a.tion.surf</who>
    <bug_when>2015-01-21 21:27:38 -0800</bug_when>
    <thetext>I am not entirely familiar with network security in general, but if we ignore CSP for script in non-main worlds, would it be possible for someone to inject malicious code in non-main worlds, bypass CSP, and exploit?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1066548</commentid>
    <comment_count>5</comment_count>
      <attachid>245962</attachid>
    <who name="Zach Li">a.tion.surf</who>
    <bug_when>2015-02-03 13:40:59 -0800</bug_when>
    <thetext>Created attachment 245962
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1066549</commentid>
    <comment_count>6</comment_count>
    <who name="Zach Li">a.tion.surf</who>
    <bug_when>2015-02-03 13:42:21 -0800</bug_when>
    <thetext>I added the FIXME to remind us that if we have better approach, we should get rid of this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1066557</commentid>
    <comment_count>7</comment_count>
      <attachid>245962</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-02-03 13:59:40 -0800</bug_when>
    <thetext>Comment on attachment 245962
Patch

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

&gt; Source/WebKit2/WebProcess/WebProcess.cpp:422
&gt; +// FIXME: We should have better approach to allow URL schemes to bypass
&gt; +// Content Security Policy instead of adding this API.

What is bad about this approach?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1067212</commentid>
    <comment_count>8</comment_count>
      <attachid>245962</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-02-05 14:25:21 -0800</bug_when>
    <thetext>Comment on attachment 245962
Patch

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

&gt;&gt; Source/WebKit2/WebProcess/WebProcess.cpp:422
&gt;&gt; +// Content Security Policy instead of adding this API.
&gt; 
&gt; What is bad about this approach?

This shouldn&apos;t really be per process, it should be per page or &quot;groups of pages&quot; ideally. It&apos;s OK for now though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1067886</commentid>
    <comment_count>9</comment_count>
      <attachid>246283</attachid>
    <who name="Zach Li">a.tion.surf</who>
    <bug_when>2015-02-09 12:42:28 -0800</bug_when>
    <thetext>Created attachment 246283
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1068061</commentid>
    <comment_count>10</comment_count>
      <attachid>246283</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-02-10 08:01:35 -0800</bug_when>
    <thetext>Comment on attachment 246283
Patch

Clearing flags on attachment: 246283

Committed r179870: &lt;http://trac.webkit.org/changeset/179870&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1068062</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-02-10 08:01:41 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>245078</attachid>
            <date>2015-01-21 12:33:38 -0800</date>
            <delta_ts>2015-02-03 13:40:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-140736-20150121123345.patch</filename>
            <type>text/plain</type>
            <size>10952</size>
            <attacher name="Zach Li">a.tion.surf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc4ODQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYWU4YTgwZjFiMTE0NTE5
NzBmZTZjZWI3YTZlODFkMzY1ZDQ0ZDVhYS4uOTY0YTc3YzMzZGZiMWNiYWQyYjlkZTU0YmQxMzUy
YmE4ZjVkNzk0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDE1LTAxLTIwICBaaHVv
IExpICA8emFjaGxpQGFwcGxlLmNvbT4KKworICAgICAgICBbV0syXSBBZGQgc3VwcG9ydCBmb3Ig
cmVnaXN0ZXJpbmcgdXJsIHNjaGVtZXMgdG8gYnlwYXNzIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQwNzM2
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTaGFy
ZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHA6CisgICAgICAgIChXZWJLaXQ6Oldl
YlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmVuY29kZSk6CisgICAgICAgIChXZWJLaXQ6Oldl
YlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmRlY29kZSk6CisgICAgICAgICogU2hhcmVkL1dl
YlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0Mv
V0tDb250ZXh0LmNwcDoKKyAgICAgICAgKFdLQ29udGV4dFJlZ2lzdGVyVVJMU2NoZW1lQXNCeXBh
c3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3kpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9X
S0NvbnRleHRQcml2YXRlLmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmNyZWF0ZU5ld1dlYlByb2Nlc3Mp
OgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6cmVnaXN0ZXJVUkxTY2hlbWVBc0J5
cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeSk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBy
b2Nlc3NQb29sLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6aW5pdGlhbGl6ZVdlYlByb2Nlc3MpOgorICAgICAgICAo
V2ViS2l0OjpXZWJQcm9jZXNzOjpyZWdpc3RlclVSTFNjaGVtZUFzQnlwYXNzaW5nQ29udGVudFNl
Y3VyaXR5UG9saWN5KToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nlc3MuaDoKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nlc3MubWVzc2FnZXMuaW46CisKIDIwMTUtMDEtMjEgIENo
cmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBbV0syXSBTdG9wIHVzaW5n
IFdLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlLmggQyBBUEkgaGVhZGVyIGluIENvY29hIEFQ
SQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBh
cmFtZXRlcnMuY3BwIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBh
cmFtZXRlcnMuY3BwCmluZGV4IGEwZTZlNGFkYjE2MTE1OWQ0ZmZiMDgzNWRmODFhY2QyMmQyMWRk
OTEuLmIyNWY5ZTZkY2FkNjc4YzFiMWM0MDA3ZjM5N2U1NGJmNjI4YmI5ZWEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5j
cHAKQEAgLTgzLDYgKzgzLDcgQEAgdm9pZCBXZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjpl
bmNvZGUoSVBDOjpBcmd1bWVudEVuY29kZXImIGVuY29kZXIpIGNvbnN0CiAgICAgZW5jb2RlciA8
PCBzaG91bGRVc2VUZXN0aW5nTmV0d29ya1Nlc3Npb247CiAgICAgZW5jb2RlciA8PCB1cmxTY2hl
bWVzUmVnaXN0ZXJlcmRBc0VtcHR5RG9jdW1lbnQ7CiAgICAgZW5jb2RlciA8PCB1cmxTY2hlbWVz
UmVnaXN0ZXJlZEFzU2VjdXJlOworICAgIGVuY29kZXIgPDwgdXJsU2NoZW1lc1JlZ2lzdGVyZWRB
c0J5cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeTsKICAgICBlbmNvZGVyIDw8IHVybFNjaGVt
ZXNGb3JXaGljaERvbWFpblJlbGF4YXRpb25Jc0ZvcmJpZGRlbjsKICAgICBlbmNvZGVyIDw8IHVy
bFNjaGVtZXNSZWdpc3RlcmVkQXNMb2NhbDsKICAgICBlbmNvZGVyIDw8IHVybFNjaGVtZXNSZWdp
c3RlcmVkQXNOb0FjY2VzczsKQEAgLTE4OSw2ICsxOTAsOCBAQCBib29sIFdlYlByb2Nlc3NDcmVh
dGlvblBhcmFtZXRlcnM6OmRlY29kZShJUEM6OkFyZ3VtZW50RGVjb2RlciYgZGVjb2RlciwgV2Vi
UHJvYwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShwYXJh
bWV0ZXJzLnVybFNjaGVtZXNSZWdpc3RlcmVkQXNTZWN1cmUpKQogICAgICAgICByZXR1cm4gZmFs
c2U7CisgICAgaWYgKCFkZWNvZGVyLmRlY29kZShwYXJhbWV0ZXJzLnVybFNjaGVtZXNSZWdpc3Rl
cmVkQXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3kpKQorICAgICAgICByZXR1cm4gZmFs
c2U7CiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShwYXJhbWV0ZXJzLnVybFNjaGVtZXNGb3JXaGlj
aERvbWFpblJlbGF4YXRpb25Jc0ZvcmJpZGRlbikpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAg
ICBpZiAoIWRlY29kZXIuZGVjb2RlKHBhcmFtZXRlcnMudXJsU2NoZW1lc1JlZ2lzdGVyZWRBc0xv
Y2FsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzLmggYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0aW9u
UGFyYW1ldGVycy5oCmluZGV4IGIzZmZlNmE3ZGJiOWM5ZDQ0ZjhiYjNhOThhZDllMGMxNmVhOGI0
ODUuLjBmMGE2NWUxZWNmZjZjYTRhNWZlOWU4NzY1MDczZTY4YjJlMTY3OGYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgKKysr
IGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaApA
QCAtODksNiArODksNyBAQCBzdHJ1Y3QgV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycyB7CiAK
ICAgICBWZWN0b3I8U3RyaW5nPiB1cmxTY2hlbWVzUmVnaXN0ZXJlcmRBc0VtcHR5RG9jdW1lbnQ7
CiAgICAgVmVjdG9yPFN0cmluZz4gdXJsU2NoZW1lc1JlZ2lzdGVyZWRBc1NlY3VyZTsKKyAgICBW
ZWN0b3I8U3RyaW5nPiB1cmxTY2hlbWVzUmVnaXN0ZXJlZEFzQnlwYXNzaW5nQ29udGVudFNlY3Vy
aXR5UG9saWN5OwogICAgIFZlY3RvcjxTdHJpbmc+IHVybFNjaGVtZXNGb3JXaGljaERvbWFpblJl
bGF4YXRpb25Jc0ZvcmJpZGRlbjsKICAgICBWZWN0b3I8U3RyaW5nPiB1cmxTY2hlbWVzUmVnaXN0
ZXJlZEFzTG9jYWw7CiAgICAgVmVjdG9yPFN0cmluZz4gdXJsU2NoZW1lc1JlZ2lzdGVyZWRBc05v
QWNjZXNzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLQ29u
dGV4dC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0LmNwcApp
bmRleCA3ZjJlZTM2MWNhMzBlZDI4NmVkNWZjZjgzNWQ1N2M1ZWU3ZjQ4ZjU5Li4wZDgwMjhhNDA2
YmU3ZjVlMjYyNWNlZjhiMzEyNjYzNTEwNWM5YjExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0MvV0tDb250ZXh0LmNwcApAQCAtMzc5LDYgKzM3OSwxMSBAQCB2b2lkIFdLQ29u
dGV4dFJlZ2lzdGVyVVJMU2NoZW1lQXNTZWN1cmUoV0tDb250ZXh0UmVmIGNvbnRleHRSZWYsIFdL
U3RyaW5nUmVmIHVybAogICAgIHRvSW1wbChjb250ZXh0UmVmKS0+cmVnaXN0ZXJVUkxTY2hlbWVB
c1NlY3VyZSh0b0ltcGwodXJsU2NoZW1lKS0+c3RyaW5nKCkpOwogfQogCit2b2lkIFdLQ29udGV4
dFJlZ2lzdGVyVVJMU2NoZW1lQXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3koV0tDb250
ZXh0UmVmIGNvbnRleHRSZWYsIFdLU3RyaW5nUmVmIHVybFNjaGVtZSkKK3sKKyAgICB0b0ltcGwo
Y29udGV4dFJlZiktPnJlZ2lzdGVyVVJMU2NoZW1lQXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQ
b2xpY3kodG9JbXBsKHVybFNjaGVtZSktPnN0cmluZygpKTsKK30KKwogdm9pZCBXS0NvbnRleHRS
ZWdpc3RlclVSTFNjaGVtZUFzQ2FjaGVQYXJ0aXRpb25lZChXS0NvbnRleHRSZWYgY29udGV4dFJl
ZiwgV0tTdHJpbmdSZWYgdXJsU2NoZW1lKQogewogI2lmIEVOQUJMRShDQUNIRV9QQVJUSVRJT05J
TkcpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0
UHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dFByaXZh
dGUuaAppbmRleCA3NmQ4NWQzZmQ5ZjRlNWNhMzhhOTI4MzQyZWFlNzdkMzYwZmM3M2UwLi4yNjZl
ODBlYWMwMTg5Yzc1NWNmYWJlZGIyMmZlZThlMGMzYWUxNTE1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0UHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmgKQEAgLTUyLDYgKzUyLDgg
QEAgV0tfRVhQT1JUIHZvaWQgV0tDb250ZXh0U2V0U2hvdWxkVXNlRm9udFNtb290aGluZyhXS0Nv
bnRleHRSZWYgY29udGV4dCwgYm9vbCB1c2UKIAogV0tfRVhQT1JUIHZvaWQgV0tDb250ZXh0UmVn
aXN0ZXJVUkxTY2hlbWVBc1NlY3VyZShXS0NvbnRleHRSZWYgY29udGV4dCwgV0tTdHJpbmdSZWYg
dXJsU2NoZW1lKTsKIAorV0tfRVhQT1JUIHZvaWQgV0tDb250ZXh0UmVnaXN0ZXJVUkxTY2hlbWVB
c0J5cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeShXS0NvbnRleHRSZWYgY29udGV4dCwgV0tT
dHJpbmdSZWYgdXJsU2NoZW1lKTsKKwogV0tfRVhQT1JUIHZvaWQgV0tDb250ZXh0UmVnaXN0ZXJV
UkxTY2hlbWVBc0NhY2hlUGFydGl0aW9uZWQoV0tDb250ZXh0UmVmIGNvbnRleHQsIFdLU3RyaW5n
UmVmIHVybFNjaGVtZSk7CiAKIFdLX0VYUE9SVCB2b2lkIFdLQ29udGV4dFNldERvbWFpblJlbGF4
YXRpb25Gb3JiaWRkZW5Gb3JVUkxTY2hlbWUoV0tDb250ZXh0UmVmIGNvbnRleHQsIFdLU3RyaW5n
UmVmIHVybFNjaGVtZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Bvb2wuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29s
LmNwcAppbmRleCBjY2M5OWQ3ZmViMzNiZjExMjg5NmRiNWJhYTJmMTMyMGMwMTQ1MWZmLi43ZTU4
ZGFhNGNmMGM0MzJmNTM1YWI4ODYzMzdiNmVhMmMwYzYzNzJlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKQEAgLTYzNiw2ICs2MzYsNyBAQCBXZWJQcm9j
ZXNzUHJveHkmIFdlYlByb2Nlc3NQb29sOjpjcmVhdGVOZXdXZWJQcm9jZXNzKCkKIAogICAgIGNv
cHlUb1ZlY3RvcihtX3NjaGVtZXNUb1JlZ2lzdGVyQXNFbXB0eURvY3VtZW50LCBwYXJhbWV0ZXJz
LnVybFNjaGVtZXNSZWdpc3RlcmVyZEFzRW1wdHlEb2N1bWVudCk7CiAgICAgY29weVRvVmVjdG9y
KG1fc2NoZW1lc1RvUmVnaXN0ZXJBc1NlY3VyZSwgcGFyYW1ldGVycy51cmxTY2hlbWVzUmVnaXN0
ZXJlZEFzU2VjdXJlKTsKKyAgICBjb3B5VG9WZWN0b3IobV9zY2hlbWVzVG9SZWdpc3RlckFzQnlw
YXNzaW5nQ29udGVudFNlY3VyaXR5UG9saWN5LCBwYXJhbWV0ZXJzLnVybFNjaGVtZXNSZWdpc3Rl
cmVkQXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3kpOwogICAgIGNvcHlUb1ZlY3Rvciht
X3NjaGVtZXNUb1NldERvbWFpblJlbGF4YXRpb25Gb3JiaWRkZW5Gb3IsIHBhcmFtZXRlcnMudXJs
U2NoZW1lc0ZvcldoaWNoRG9tYWluUmVsYXhhdGlvbklzRm9yYmlkZGVuKTsKICAgICBjb3B5VG9W
ZWN0b3IobV9zY2hlbWVzVG9SZWdpc3RlckFzTG9jYWwsIHBhcmFtZXRlcnMudXJsU2NoZW1lc1Jl
Z2lzdGVyZWRBc0xvY2FsKTsKICAgICBjb3B5VG9WZWN0b3IobV9zY2hlbWVzVG9SZWdpc3RlckFz
Tm9BY2Nlc3MsIHBhcmFtZXRlcnMudXJsU2NoZW1lc1JlZ2lzdGVyZWRBc05vQWNjZXNzKTsKQEAg
LTk2Miw2ICs5NjMsMTIgQEAgdm9pZCBXZWJQcm9jZXNzUG9vbDo6cmVnaXN0ZXJVUkxTY2hlbWVB
c1NlY3VyZShjb25zdCBTdHJpbmcmIHVybFNjaGVtZSkKICAgICBzZW5kVG9BbGxQcm9jZXNzZXMo
TWVzc2FnZXM6OldlYlByb2Nlc3M6OlJlZ2lzdGVyVVJMU2NoZW1lQXNTZWN1cmUodXJsU2NoZW1l
KSk7CiB9CiAKK3ZvaWQgV2ViUHJvY2Vzc1Bvb2w6OnJlZ2lzdGVyVVJMU2NoZW1lQXNCeXBhc3Np
bmdDb250ZW50U2VjdXJpdHlQb2xpY3koY29uc3QgU3RyaW5nJiB1cmxTY2hlbWUpCit7CisgICAg
bV9zY2hlbWVzVG9SZWdpc3RlckFzQnlwYXNzaW5nQ29udGVudFNlY3VyaXR5UG9saWN5LmFkZCh1
cmxTY2hlbWUpOworICAgIHNlbmRUb0FsbFByb2Nlc3NlcyhNZXNzYWdlczo6V2ViUHJvY2Vzczo6
UmVnaXN0ZXJVUkxTY2hlbWVBc0J5cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeSh1cmxTY2hl
bWUpKTsKK30KKwogdm9pZCBXZWJQcm9jZXNzUG9vbDo6c2V0RG9tYWluUmVsYXhhdGlvbkZvcmJp
ZGRlbkZvclVSTFNjaGVtZShjb25zdCBTdHJpbmcmIHVybFNjaGVtZSkKIHsKICAgICBtX3NjaGVt
ZXNUb1NldERvbWFpblJlbGF4YXRpb25Gb3JiaWRkZW5Gb3IuYWRkKHVybFNjaGVtZSk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaCBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oCmluZGV4IGZlN2YwNGU3NmEwY2I2
ZmRiN2RjYzJmMmYzZjJmNThjNmMyNGYzZDkuLjNhNzA1YTU4OWMyMDU1ODI2YjE1ODkyNjdlNWRl
ODFiZGMyNDE5YzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9j
ZXNzUG9vbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5o
CkBAIC0xOTIsNiArMTkyLDcgQEAgcHVibGljOgogICAgIAogICAgIHZvaWQgcmVnaXN0ZXJVUkxT
Y2hlbWVBc0VtcHR5RG9jdW1lbnQoY29uc3QgU3RyaW5nJik7CiAgICAgdm9pZCByZWdpc3RlclVS
TFNjaGVtZUFzU2VjdXJlKGNvbnN0IFN0cmluZyYpOworICAgIHZvaWQgcmVnaXN0ZXJVUkxTY2hl
bWVBc0J5cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeShjb25zdCBTdHJpbmcmKTsKICAgICB2
b2lkIHNldERvbWFpblJlbGF4YXRpb25Gb3JiaWRkZW5Gb3JVUkxTY2hlbWUoY29uc3QgU3RyaW5n
Jik7CiAgICAgdm9pZCBzZXRDYW5IYW5kbGVIVFRQU1NlcnZlclRydXN0RXZhbHVhdGlvbihib29s
KTsKICAgICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1lQXNMb2NhbChjb25zdCBTdHJpbmcmKTsKQEAg
LTQ0OSw2ICs0NTAsNyBAQCBwcml2YXRlOgogICAgICAgICAKICAgICBIYXNoU2V0PFN0cmluZz4g
bV9zY2hlbWVzVG9SZWdpc3RlckFzRW1wdHlEb2N1bWVudDsKICAgICBIYXNoU2V0PFN0cmluZz4g
bV9zY2hlbWVzVG9SZWdpc3RlckFzU2VjdXJlOworICAgIEhhc2hTZXQ8U3RyaW5nPiBtX3NjaGVt
ZXNUb1JlZ2lzdGVyQXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3k7CiAgICAgSGFzaFNl
dDxTdHJpbmc+IG1fc2NoZW1lc1RvU2V0RG9tYWluUmVsYXhhdGlvbkZvcmJpZGRlbkZvcjsKICAg
ICBIYXNoU2V0PFN0cmluZz4gbV9zY2hlbWVzVG9SZWdpc3RlckFzTG9jYWw7CiAgICAgSGFzaFNl
dDxTdHJpbmc+IG1fc2NoZW1lc1RvUmVnaXN0ZXJBc05vQWNjZXNzOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKaW5kZXggODkxM2E0YjJhM2IzNWVmMjZhNmEwZjgwMWVj
OTExM2Y1NDBlOWI4ZS4uODFmMTk0ZTRlMGM4MGY0ZDQ0Zjc4ZDcxMDAzMmI5YjRjZTMwODk2MSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCkBAIC0zMTMsNiArMzEz
LDkgQEAgdm9pZCBXZWJQcm9jZXNzOjppbml0aWFsaXplV2ViUHJvY2VzcyhXZWJQcm9jZXNzQ3Jl
YXRpb25QYXJhbWV0ZXJzJiYgcGFyYW1ldGVycykKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8
IHBhcmFtZXRlcnMudXJsU2NoZW1lc1JlZ2lzdGVyZWRBc1NlY3VyZS5zaXplKCk7ICsraSkKICAg
ICAgICAgcmVnaXN0ZXJVUkxTY2hlbWVBc1NlY3VyZShwYXJhbWV0ZXJzLnVybFNjaGVtZXNSZWdp
c3RlcmVkQXNTZWN1cmVbaV0pOwogCisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBwYXJhbWV0
ZXJzLnVybFNjaGVtZXNSZWdpc3RlcmVkQXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3ku
c2l6ZSgpOyArK2kpCisgICAgICAgIHJlZ2lzdGVyVVJMU2NoZW1lQXNCeXBhc3NpbmdDb250ZW50
U2VjdXJpdHlQb2xpY3kocGFyYW1ldGVycy51cmxTY2hlbWVzUmVnaXN0ZXJlZEFzQnlwYXNzaW5n
Q29udGVudFNlY3VyaXR5UG9saWN5W2ldKTsKKwogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwg
cGFyYW1ldGVycy51cmxTY2hlbWVzRm9yV2hpY2hEb21haW5SZWxheGF0aW9uSXNGb3JiaWRkZW4u
c2l6ZSgpOyArK2kpCiAgICAgICAgIHNldERvbWFpblJlbGF4YXRpb25Gb3JiaWRkZW5Gb3JVUkxT
Y2hlbWUocGFyYW1ldGVycy51cmxTY2hlbWVzRm9yV2hpY2hEb21haW5SZWxheGF0aW9uSXNGb3Ji
aWRkZW5baV0pOwogCkBAIC00MTUsNiArNDE4LDExIEBAIHZvaWQgV2ViUHJvY2Vzczo6cmVnaXN0
ZXJVUkxTY2hlbWVBc1NlY3VyZShjb25zdCBTdHJpbmcmIHVybFNjaGVtZSkgY29uc3QKICAgICBT
Y2hlbWVSZWdpc3RyeTo6cmVnaXN0ZXJVUkxTY2hlbWVBc1NlY3VyZSh1cmxTY2hlbWUpOwogfQog
Cit2b2lkIFdlYlByb2Nlc3M6OnJlZ2lzdGVyVVJMU2NoZW1lQXNCeXBhc3NpbmdDb250ZW50U2Vj
dXJpdHlQb2xpY3koY29uc3QgU3RyaW5nJiB1cmxTY2hlbWUpIGNvbnN0Cit7CisgICAgU2NoZW1l
UmVnaXN0cnk6OnJlZ2lzdGVyVVJMU2NoZW1lQXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xp
Y3kodXJsU2NoZW1lKTsKK30KKwogdm9pZCBXZWJQcm9jZXNzOjpzZXREb21haW5SZWxheGF0aW9u
Rm9yYmlkZGVuRm9yVVJMU2NoZW1lKGNvbnN0IFN0cmluZyYgdXJsU2NoZW1lKSBjb25zdAogewog
ICAgIFNjaGVtZVJlZ2lzdHJ5OjpzZXREb21haW5SZWxheGF0aW9uRm9yYmlkZGVuRm9yVVJMU2No
ZW1lKHRydWUsIHVybFNjaGVtZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlByb2Nlc3MuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5o
CmluZGV4IGYyZTcyMWY0NjhiMTVlYTFkNjRhYTFiZTM0MDQ0NWI3MWMzNzc2MjMuLjgyYTI1OTdm
MmY2ZDdiZTJjNDg4NGJmNGNkZmZjNjYwMDM4OTBmMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUHJvY2Vzcy5oCkBAIC0yMTcsNiArMjE3LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHBs
YXRmb3JtVGVybWluYXRlKCk7CiAgICAgdm9pZCByZWdpc3RlclVSTFNjaGVtZUFzRW1wdHlEb2N1
bWVudChjb25zdCBTdHJpbmcmKTsKICAgICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1lQXNTZWN1cmUo
Y29uc3QgU3RyaW5nJikgY29uc3Q7CisgICAgdm9pZCByZWdpc3RlclVSTFNjaGVtZUFzQnlwYXNz
aW5nQ29udGVudFNlY3VyaXR5UG9saWN5KGNvbnN0IFN0cmluZyYpIGNvbnN0OwogICAgIHZvaWQg
c2V0RG9tYWluUmVsYXhhdGlvbkZvcmJpZGRlbkZvclVSTFNjaGVtZShjb25zdCBTdHJpbmcmKSBj
b25zdDsKICAgICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1lQXNMb2NhbChjb25zdCBTdHJpbmcmKSBj
b25zdDsKICAgICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1lQXNOb0FjY2Vzcyhjb25zdCBTdHJpbmcm
KSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vz
cy5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5tZXNz
YWdlcy5pbgppbmRleCA5NGVmZTIwYjJiMDAyMjMyZGQ5MTljMGMxMDE5ZmYyNjQyNjU1NDc3Li4y
MTIyODQ2Nzg5YmYyNjFkNWRiMzRlMmUyMjI1Njc4NjM4YmRhMmY5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MubWVzc2FnZXMuaW4KKysrIGIvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCkBAIC0zMCw2ICszMCw3
IEBAIG1lc3NhZ2VzIC0+IFdlYlByb2Nlc3MgTGVnYWN5UmVjZWl2ZXIgewogICAgIFNldENhY2hl
TW9kZWwodWludDMyX3QgY2FjaGVNb2RlbCkKICAgICBSZWdpc3RlclVSTFNjaGVtZUFzRW1wdHlE
b2N1bWVudChTdHJpbmcgc2NoZW1lKQogICAgIFJlZ2lzdGVyVVJMU2NoZW1lQXNTZWN1cmUoU3Ry
aW5nIHNjaGVtZSkKKyAgICBSZWdpc3RlclVSTFNjaGVtZUFzQnlwYXNzaW5nQ29udGVudFNlY3Vy
aXR5UG9saWN5KFN0cmluZyBzY2hlbWUpCiAgICAgU2V0RG9tYWluUmVsYXhhdGlvbkZvcmJpZGRl
bkZvclVSTFNjaGVtZShTdHJpbmcgc2NoZW1lKQogICAgIFJlZ2lzdGVyVVJMU2NoZW1lQXNMb2Nh
bChTdHJpbmcgc2NoZW1lKQogICAgIFJlZ2lzdGVyVVJMU2NoZW1lQXNOb0FjY2VzcyhTdHJpbmcg
c2NoZW1lKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>245962</attachid>
            <date>2015-02-03 13:40:59 -0800</date>
            <delta_ts>2015-02-09 12:42:23 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-140736-20150203134058.patch</filename>
            <type>text/plain</type>
            <size>11041</size>
            <attacher name="Zach Li">a.tion.surf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc5NDc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMDIxZTc4OGVjY2QzZDU5
MTQ4MjljYjRkZGJhNjlhMTZjNmY3ODc5ZC4uYmQ1ZDJmNzM5YTEwMmNhNjNhNTQ5OWQ2ZjBhNGJi
MDQ5YTkzYTVjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDE1LTAxLTIwICBaaHVv
IExpICA8emFjaGxpQGFwcGxlLmNvbT4KKworICAgICAgICBbV0syXSBBZGQgc3VwcG9ydCBmb3Ig
cmVnaXN0ZXJpbmcgdXJsIHNjaGVtZXMgdG8gYnlwYXNzIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQwNzM2
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTaGFy
ZWQvV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHA6CisgICAgICAgIChXZWJLaXQ6Oldl
YlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmVuY29kZSk6CisgICAgICAgIChXZWJLaXQ6Oldl
YlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmRlY29kZSk6CisgICAgICAgICogU2hhcmVkL1dl
YlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0Mv
V0tDb250ZXh0LmNwcDoKKyAgICAgICAgKFdLQ29udGV4dFJlZ2lzdGVyVVJMU2NoZW1lQXNCeXBh
c3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3kpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9X
S0NvbnRleHRQcml2YXRlLmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmNyZWF0ZU5ld1dlYlByb2Nlc3Mp
OgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6cmVnaXN0ZXJVUkxTY2hlbWVBc0J5
cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeSk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBy
b2Nlc3NQb29sLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6aW5pdGlhbGl6ZVdlYlByb2Nlc3MpOgorICAgICAgICAo
V2ViS2l0OjpXZWJQcm9jZXNzOjpyZWdpc3RlclVSTFNjaGVtZUFzQnlwYXNzaW5nQ29udGVudFNl
Y3VyaXR5UG9saWN5KToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nlc3MuaDoKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nlc3MubWVzc2FnZXMuaW46CisKIDIwMTUtMDItMDEgIENo
cmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBVc2UgbW9yZSByZWZlcmVu
Y2VzIGluIEhpc3RvcnlJdGVtCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2Vi
UHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2Vi
UHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHAKaW5kZXggNGNlZDcyMTVkYzUwNDFkNzcxYjE4
MjNmNTEzNDQ4ZjlmNjVhOTlmNS4uOGExMjVmNzAwOTA2ZDc1NWYzNjVjNjEzMjQ4NDhlMmU2MGEy
YjZmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlv
blBhcmFtZXRlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcm9jZXNzQ3Jl
YXRpb25QYXJhbWV0ZXJzLmNwcApAQCAtODIsNiArODIsNyBAQCB2b2lkIFdlYlByb2Nlc3NDcmVh
dGlvblBhcmFtZXRlcnM6OmVuY29kZShJUEM6OkFyZ3VtZW50RW5jb2RlciYgZW5jb2RlcikgY29u
c3QKICAgICBlbmNvZGVyIDw8IHNob3VsZFVzZVRlc3RpbmdOZXR3b3JrU2Vzc2lvbjsKICAgICBl
bmNvZGVyIDw8IHVybFNjaGVtZXNSZWdpc3RlcmVyZEFzRW1wdHlEb2N1bWVudDsKICAgICBlbmNv
ZGVyIDw8IHVybFNjaGVtZXNSZWdpc3RlcmVkQXNTZWN1cmU7CisgICAgZW5jb2RlciA8PCB1cmxT
Y2hlbWVzUmVnaXN0ZXJlZEFzQnlwYXNzaW5nQ29udGVudFNlY3VyaXR5UG9saWN5OwogICAgIGVu
Y29kZXIgPDwgdXJsU2NoZW1lc0ZvcldoaWNoRG9tYWluUmVsYXhhdGlvbklzRm9yYmlkZGVuOwog
ICAgIGVuY29kZXIgPDwgdXJsU2NoZW1lc1JlZ2lzdGVyZWRBc0xvY2FsOwogICAgIGVuY29kZXIg
PDwgdXJsU2NoZW1lc1JlZ2lzdGVyZWRBc05vQWNjZXNzOwpAQCAtMTg3LDYgKzE4OCw4IEBAIGJv
b2wgV2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVyczo6ZGVjb2RlKElQQzo6QXJndW1lbnREZWNv
ZGVyJiBkZWNvZGVyLCBXZWJQcm9jCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoIWRl
Y29kZXIuZGVjb2RlKHBhcmFtZXRlcnMudXJsU2NoZW1lc1JlZ2lzdGVyZWRBc1NlY3VyZSkpCiAg
ICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHBhcmFtZXRlcnMu
dXJsU2NoZW1lc1JlZ2lzdGVyZWRBc0J5cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeSkpCisg
ICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHBhcmFtZXRlcnMu
dXJsU2NoZW1lc0ZvcldoaWNoRG9tYWluUmVsYXhhdGlvbklzRm9yYmlkZGVuKSkKICAgICAgICAg
cmV0dXJuIGZhbHNlOwogICAgIGlmICghZGVjb2Rlci5kZWNvZGUocGFyYW1ldGVycy51cmxTY2hl
bWVzUmVnaXN0ZXJlZEFzTG9jYWwpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVk
L1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9X
ZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgKaW5kZXggZmZlMzIzYzE2ZWFiYjQxNjVkMWQ1
M2NmZjg1ZmY1YjRhYmFhMmRiMC4uZjZlMjY0OTJkMDU2ZDI1MTQ1OTllZDM3MzY2NGQ0MDRiM2Iw
NWFmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByb2Nlc3NDcmVhdGlv
blBhcmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJvY2Vzc0NyZWF0
aW9uUGFyYW1ldGVycy5oCkBAIC04OSw2ICs4OSw3IEBAIHN0cnVjdCBXZWJQcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzIHsKIAogICAgIFZlY3RvcjxTdHJpbmc+IHVybFNjaGVtZXNSZWdpc3RlcmVy
ZEFzRW1wdHlEb2N1bWVudDsKICAgICBWZWN0b3I8U3RyaW5nPiB1cmxTY2hlbWVzUmVnaXN0ZXJl
ZEFzU2VjdXJlOworICAgIFZlY3RvcjxTdHJpbmc+IHVybFNjaGVtZXNSZWdpc3RlcmVkQXNCeXBh
c3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3k7CiAgICAgVmVjdG9yPFN0cmluZz4gdXJsU2NoZW1l
c0ZvcldoaWNoRG9tYWluUmVsYXhhdGlvbklzRm9yYmlkZGVuOwogICAgIFZlY3RvcjxTdHJpbmc+
IHVybFNjaGVtZXNSZWdpc3RlcmVkQXNMb2NhbDsKICAgICBWZWN0b3I8U3RyaW5nPiB1cmxTY2hl
bWVzUmVnaXN0ZXJlZEFzTm9BY2Nlc3M7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0MvV0tDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Qy9XS0NvbnRleHQuY3BwCmluZGV4IDdmMmVlMzYxY2EzMGVkMjg2ZWQ1ZmNmODM1ZDU3YzVlZTdm
NDhmNTkuLjBkODAyOGE0MDZiZTdmNWUyNjI1Y2VmOGIzMTI2NjM1MTA1YzliMTEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHQuY3BwCkBAIC0zNzksNiArMzc5
LDExIEBAIHZvaWQgV0tDb250ZXh0UmVnaXN0ZXJVUkxTY2hlbWVBc1NlY3VyZShXS0NvbnRleHRS
ZWYgY29udGV4dFJlZiwgV0tTdHJpbmdSZWYgdXJsCiAgICAgdG9JbXBsKGNvbnRleHRSZWYpLT5y
ZWdpc3RlclVSTFNjaGVtZUFzU2VjdXJlKHRvSW1wbCh1cmxTY2hlbWUpLT5zdHJpbmcoKSk7CiB9
CiAKK3ZvaWQgV0tDb250ZXh0UmVnaXN0ZXJVUkxTY2hlbWVBc0J5cGFzc2luZ0NvbnRlbnRTZWN1
cml0eVBvbGljeShXS0NvbnRleHRSZWYgY29udGV4dFJlZiwgV0tTdHJpbmdSZWYgdXJsU2NoZW1l
KQoreworICAgIHRvSW1wbChjb250ZXh0UmVmKS0+cmVnaXN0ZXJVUkxTY2hlbWVBc0J5cGFzc2lu
Z0NvbnRlbnRTZWN1cml0eVBvbGljeSh0b0ltcGwodXJsU2NoZW1lKS0+c3RyaW5nKCkpOworfQor
CiB2b2lkIFdLQ29udGV4dFJlZ2lzdGVyVVJMU2NoZW1lQXNDYWNoZVBhcnRpdGlvbmVkKFdLQ29u
dGV4dFJlZiBjb250ZXh0UmVmLCBXS1N0cmluZ1JlZiB1cmxTY2hlbWUpCiB7CiAjaWYgRU5BQkxF
KENBQ0hFX1BBUlRJVElPTklORykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQy9XS0NvbnRleHRQcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L0MvV0tDb250ZXh0UHJpdmF0ZS5oCmluZGV4IDc2ZDg1ZDNmZDlmNGU1Y2EzOGE5MjgzNDJlYWU3
N2QzNjBmYzczZTAuLjI2NmU4MGVhYzAxODljNzU1Y2ZhYmVkYjIyZmVlOGUwYzNhZTE1MTUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQcml2YXRl
LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dFByaXZhdGUu
aApAQCAtNTIsNiArNTIsOCBAQCBXS19FWFBPUlQgdm9pZCBXS0NvbnRleHRTZXRTaG91bGRVc2VG
b250U21vb3RoaW5nKFdLQ29udGV4dFJlZiBjb250ZXh0LCBib29sIHVzZQogCiBXS19FWFBPUlQg
dm9pZCBXS0NvbnRleHRSZWdpc3RlclVSTFNjaGVtZUFzU2VjdXJlKFdLQ29udGV4dFJlZiBjb250
ZXh0LCBXS1N0cmluZ1JlZiB1cmxTY2hlbWUpOwogCitXS19FWFBPUlQgdm9pZCBXS0NvbnRleHRS
ZWdpc3RlclVSTFNjaGVtZUFzQnlwYXNzaW5nQ29udGVudFNlY3VyaXR5UG9saWN5KFdLQ29udGV4
dFJlZiBjb250ZXh0LCBXS1N0cmluZ1JlZiB1cmxTY2hlbWUpOworCiBXS19FWFBPUlQgdm9pZCBX
S0NvbnRleHRSZWdpc3RlclVSTFNjaGVtZUFzQ2FjaGVQYXJ0aXRpb25lZChXS0NvbnRleHRSZWYg
Y29udGV4dCwgV0tTdHJpbmdSZWYgdXJsU2NoZW1lKTsKIAogV0tfRVhQT1JUIHZvaWQgV0tDb250
ZXh0U2V0RG9tYWluUmVsYXhhdGlvbkZvcmJpZGRlbkZvclVSTFNjaGVtZShXS0NvbnRleHRSZWYg
Y29udGV4dCwgV0tTdHJpbmdSZWYgdXJsU2NoZW1lKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCmluZGV4IGJhNDQwMmFlNTdmNTk2NTEyZjgxOTBiMDhlNzJm
MzkzMGJkYWZkN2IuLjljNDkxY2FiOGM2NjZjY2RlNDMzYTAxODg4YzgwYTM3OTJjZDg5M2IgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKKysr
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcApAQCAtNjM2LDYg
KzYzNiw3IEBAIFdlYlByb2Nlc3NQcm94eSYgV2ViUHJvY2Vzc1Bvb2w6OmNyZWF0ZU5ld1dlYlBy
b2Nlc3MoKQogCiAgICAgY29weVRvVmVjdG9yKG1fc2NoZW1lc1RvUmVnaXN0ZXJBc0VtcHR5RG9j
dW1lbnQsIHBhcmFtZXRlcnMudXJsU2NoZW1lc1JlZ2lzdGVyZXJkQXNFbXB0eURvY3VtZW50KTsK
ICAgICBjb3B5VG9WZWN0b3IobV9zY2hlbWVzVG9SZWdpc3RlckFzU2VjdXJlLCBwYXJhbWV0ZXJz
LnVybFNjaGVtZXNSZWdpc3RlcmVkQXNTZWN1cmUpOworICAgIGNvcHlUb1ZlY3RvcihtX3NjaGVt
ZXNUb1JlZ2lzdGVyQXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3ksIHBhcmFtZXRlcnMu
dXJsU2NoZW1lc1JlZ2lzdGVyZWRBc0J5cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeSk7CiAg
ICAgY29weVRvVmVjdG9yKG1fc2NoZW1lc1RvU2V0RG9tYWluUmVsYXhhdGlvbkZvcmJpZGRlbkZv
ciwgcGFyYW1ldGVycy51cmxTY2hlbWVzRm9yV2hpY2hEb21haW5SZWxheGF0aW9uSXNGb3JiaWRk
ZW4pOwogICAgIGNvcHlUb1ZlY3RvcihtX3NjaGVtZXNUb1JlZ2lzdGVyQXNMb2NhbCwgcGFyYW1l
dGVycy51cmxTY2hlbWVzUmVnaXN0ZXJlZEFzTG9jYWwpOwogICAgIGNvcHlUb1ZlY3RvcihtX3Nj
aGVtZXNUb1JlZ2lzdGVyQXNOb0FjY2VzcywgcGFyYW1ldGVycy51cmxTY2hlbWVzUmVnaXN0ZXJl
ZEFzTm9BY2Nlc3MpOwpAQCAtOTYzLDYgKzk2NCwxMiBAQCB2b2lkIFdlYlByb2Nlc3NQb29sOjpy
ZWdpc3RlclVSTFNjaGVtZUFzU2VjdXJlKGNvbnN0IFN0cmluZyYgdXJsU2NoZW1lKQogICAgIHNl
bmRUb0FsbFByb2Nlc3NlcyhNZXNzYWdlczo6V2ViUHJvY2Vzczo6UmVnaXN0ZXJVUkxTY2hlbWVB
c1NlY3VyZSh1cmxTY2hlbWUpKTsKIH0KIAordm9pZCBXZWJQcm9jZXNzUG9vbDo6cmVnaXN0ZXJV
UkxTY2hlbWVBc0J5cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeShjb25zdCBTdHJpbmcmIHVy
bFNjaGVtZSkKK3sKKyAgICBtX3NjaGVtZXNUb1JlZ2lzdGVyQXNCeXBhc3NpbmdDb250ZW50U2Vj
dXJpdHlQb2xpY3kuYWRkKHVybFNjaGVtZSk7CisgICAgc2VuZFRvQWxsUHJvY2Vzc2VzKE1lc3Nh
Z2VzOjpXZWJQcm9jZXNzOjpSZWdpc3RlclVSTFNjaGVtZUFzQnlwYXNzaW5nQ29udGVudFNlY3Vy
aXR5UG9saWN5KHVybFNjaGVtZSkpOworfQorCiB2b2lkIFdlYlByb2Nlc3NQb29sOjpzZXREb21h
aW5SZWxheGF0aW9uRm9yYmlkZGVuRm9yVVJMU2NoZW1lKGNvbnN0IFN0cmluZyYgdXJsU2NoZW1l
KQogewogICAgIG1fc2NoZW1lc1RvU2V0RG9tYWluUmVsYXhhdGlvbkZvcmJpZGRlbkZvci5hZGQo
dXJsU2NoZW1lKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9j
ZXNzUG9vbC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmgKaW5k
ZXggZmY2ZWU2ZjI2NTc2MTQ0ZjI4ZGJiMmZhNTM1Nzg4NDU1OWM0N2IzYS4uMjIzYTJhMGY0NmE4
ZjBjNmI3ZThkMjRlMjM0YWE5NzQzZjNlYzczNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1dlYlByb2Nlc3NQb29sLmgKQEAgLTE5Miw2ICsxOTIsNyBAQCBwdWJsaWM6CiAgICAgCiAgICAg
dm9pZCByZWdpc3RlclVSTFNjaGVtZUFzRW1wdHlEb2N1bWVudChjb25zdCBTdHJpbmcmKTsKICAg
ICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1lQXNTZWN1cmUoY29uc3QgU3RyaW5nJik7CisgICAgdm9p
ZCByZWdpc3RlclVSTFNjaGVtZUFzQnlwYXNzaW5nQ29udGVudFNlY3VyaXR5UG9saWN5KGNvbnN0
IFN0cmluZyYpOwogICAgIHZvaWQgc2V0RG9tYWluUmVsYXhhdGlvbkZvcmJpZGRlbkZvclVSTFNj
aGVtZShjb25zdCBTdHJpbmcmKTsKICAgICB2b2lkIHNldENhbkhhbmRsZUhUVFBTU2VydmVyVHJ1
c3RFdmFsdWF0aW9uKGJvb2wpOwogICAgIHZvaWQgcmVnaXN0ZXJVUkxTY2hlbWVBc0xvY2FsKGNv
bnN0IFN0cmluZyYpOwpAQCAtNDQ5LDYgKzQ1MCw3IEBAIHByaXZhdGU6CiAgICAgICAgIAogICAg
IEhhc2hTZXQ8U3RyaW5nPiBtX3NjaGVtZXNUb1JlZ2lzdGVyQXNFbXB0eURvY3VtZW50OwogICAg
IEhhc2hTZXQ8U3RyaW5nPiBtX3NjaGVtZXNUb1JlZ2lzdGVyQXNTZWN1cmU7CisgICAgSGFzaFNl
dDxTdHJpbmc+IG1fc2NoZW1lc1RvUmVnaXN0ZXJBc0J5cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBv
bGljeTsKICAgICBIYXNoU2V0PFN0cmluZz4gbV9zY2hlbWVzVG9TZXREb21haW5SZWxheGF0aW9u
Rm9yYmlkZGVuRm9yOwogICAgIEhhc2hTZXQ8U3RyaW5nPiBtX3NjaGVtZXNUb1JlZ2lzdGVyQXNM
b2NhbDsKICAgICBIYXNoU2V0PFN0cmluZz4gbV9zY2hlbWVzVG9SZWdpc3RlckFzTm9BY2Nlc3M7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwIGIv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAppbmRleCBmNWE5NzNkOGU4
YmIwNGNmZWI3YTEyYjI0ZThkOTkwMGU4ODU4OTZlLi4zYjMyYjdjNWUyNjhhZWE0Mzk5ZTY0YjE3
NGVlYjZhZGM4YTlkMjM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5j
cHAKQEAgLTMxMyw2ICszMTMsOSBAQCB2b2lkIFdlYlByb2Nlc3M6OmluaXRpYWxpemVXZWJQcm9j
ZXNzKFdlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMmJiBwYXJhbWV0ZXJzKQogICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgcGFyYW1ldGVycy51cmxTY2hlbWVzUmVnaXN0ZXJlZEFzU2VjdXJl
LnNpemUoKTsgKytpKQogICAgICAgICByZWdpc3RlclVSTFNjaGVtZUFzU2VjdXJlKHBhcmFtZXRl
cnMudXJsU2NoZW1lc1JlZ2lzdGVyZWRBc1NlY3VyZVtpXSk7CiAKKyAgICBmb3IgKHNpemVfdCBp
ID0gMDsgaSA8IHBhcmFtZXRlcnMudXJsU2NoZW1lc1JlZ2lzdGVyZWRBc0J5cGFzc2luZ0NvbnRl
bnRTZWN1cml0eVBvbGljeS5zaXplKCk7ICsraSkKKyAgICAgICAgcmVnaXN0ZXJVUkxTY2hlbWVB
c0J5cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeShwYXJhbWV0ZXJzLnVybFNjaGVtZXNSZWdp
c3RlcmVkQXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3lbaV0pOworCiAgICAgZm9yIChz
aXplX3QgaSA9IDA7IGkgPCBwYXJhbWV0ZXJzLnVybFNjaGVtZXNGb3JXaGljaERvbWFpblJlbGF4
YXRpb25Jc0ZvcmJpZGRlbi5zaXplKCk7ICsraSkKICAgICAgICAgc2V0RG9tYWluUmVsYXhhdGlv
bkZvcmJpZGRlbkZvclVSTFNjaGVtZShwYXJhbWV0ZXJzLnVybFNjaGVtZXNGb3JXaGljaERvbWFp
blJlbGF4YXRpb25Jc0ZvcmJpZGRlbltpXSk7CiAKQEAgLTQxNSw2ICs0MTgsMTMgQEAgdm9pZCBX
ZWJQcm9jZXNzOjpyZWdpc3RlclVSTFNjaGVtZUFzU2VjdXJlKGNvbnN0IFN0cmluZyYgdXJsU2No
ZW1lKSBjb25zdAogICAgIFNjaGVtZVJlZ2lzdHJ5OjpyZWdpc3RlclVSTFNjaGVtZUFzU2VjdXJl
KHVybFNjaGVtZSk7CiB9CiAKKy8vIEZJWE1FOiBXZSBzaG91bGQgaGF2ZSBiZXR0ZXIgYXBwcm9h
Y2ggdG8gYWxsb3cgVVJMIHNjaGVtZXMgdG8gYnlwYXNzCisvLyBDb250ZW50IFNlY3VyaXR5IFBv
bGljeSBpbnN0ZWFkIG9mIGFkZGluZyB0aGlzIEFQSS4KK3ZvaWQgV2ViUHJvY2Vzczo6cmVnaXN0
ZXJVUkxTY2hlbWVBc0J5cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeShjb25zdCBTdHJpbmcm
IHVybFNjaGVtZSkgY29uc3QKK3sKKyAgICBTY2hlbWVSZWdpc3RyeTo6cmVnaXN0ZXJVUkxTY2hl
bWVBc0J5cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeSh1cmxTY2hlbWUpOworfQorCiB2b2lk
IFdlYlByb2Nlc3M6OnNldERvbWFpblJlbGF4YXRpb25Gb3JiaWRkZW5Gb3JVUkxTY2hlbWUoY29u
c3QgU3RyaW5nJiB1cmxTY2hlbWUpIGNvbnN0CiB7CiAgICAgU2NoZW1lUmVnaXN0cnk6OnNldERv
bWFpblJlbGF4YXRpb25Gb3JiaWRkZW5Gb3JVUkxTY2hlbWUodHJ1ZSwgdXJsU2NoZW1lKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oIGIvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmgKaW5kZXggNWJhZjA3MjEzN2RlNmFlN2Rm
NWM3M2Y1NGI1ZDM4OTlmOGZkMzI1Zi4uOWFmYzcyOWIxNTgxOGE0ZmM2M2Y0M2VhNzFkMjM2OWEx
YzVhNGJmNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNz
LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmgKQEAgLTIxNiw2
ICsyMTYsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgcGxhdGZvcm1UZXJtaW5hdGUoKTsKICAgICB2
b2lkIHJlZ2lzdGVyVVJMU2NoZW1lQXNFbXB0eURvY3VtZW50KGNvbnN0IFN0cmluZyYpOwogICAg
IHZvaWQgcmVnaXN0ZXJVUkxTY2hlbWVBc1NlY3VyZShjb25zdCBTdHJpbmcmKSBjb25zdDsKKyAg
ICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1lQXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3ko
Y29uc3QgU3RyaW5nJikgY29uc3Q7CiAgICAgdm9pZCBzZXREb21haW5SZWxheGF0aW9uRm9yYmlk
ZGVuRm9yVVJMU2NoZW1lKGNvbnN0IFN0cmluZyYpIGNvbnN0OwogICAgIHZvaWQgcmVnaXN0ZXJV
UkxTY2hlbWVBc0xvY2FsKGNvbnN0IFN0cmluZyYpIGNvbnN0OwogICAgIHZvaWQgcmVnaXN0ZXJV
UkxTY2hlbWVBc05vQWNjZXNzKGNvbnN0IFN0cmluZyYpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluIGIvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluCmluZGV4IDk0ZWZlMjBiMmIw
MDIyMzJkZDkxOWMwYzEwMTlmZjI2NDI2NTU0NzcuLjIxMjI4NDY3ODliZjI2MWQ1ZGIzNGUyZTIy
MjU2Nzg2MzhiZGEyZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
UHJvY2Vzcy5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBy
b2Nlc3MubWVzc2FnZXMuaW4KQEAgLTMwLDYgKzMwLDcgQEAgbWVzc2FnZXMgLT4gV2ViUHJvY2Vz
cyBMZWdhY3lSZWNlaXZlciB7CiAgICAgU2V0Q2FjaGVNb2RlbCh1aW50MzJfdCBjYWNoZU1vZGVs
KQogICAgIFJlZ2lzdGVyVVJMU2NoZW1lQXNFbXB0eURvY3VtZW50KFN0cmluZyBzY2hlbWUpCiAg
ICAgUmVnaXN0ZXJVUkxTY2hlbWVBc1NlY3VyZShTdHJpbmcgc2NoZW1lKQorICAgIFJlZ2lzdGVy
VVJMU2NoZW1lQXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3koU3RyaW5nIHNjaGVtZSkK
ICAgICBTZXREb21haW5SZWxheGF0aW9uRm9yYmlkZGVuRm9yVVJMU2NoZW1lKFN0cmluZyBzY2hl
bWUpCiAgICAgUmVnaXN0ZXJVUkxTY2hlbWVBc0xvY2FsKFN0cmluZyBzY2hlbWUpCiAgICAgUmVn
aXN0ZXJVUkxTY2hlbWVBc05vQWNjZXNzKFN0cmluZyBzY2hlbWUpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>246283</attachid>
            <date>2015-02-09 12:42:28 -0800</date>
            <delta_ts>2015-02-10 08:01:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-140736-20150209124229.patch</filename>
            <type>text/plain</type>
            <size>10913</size>
            <attacher name="Zach Li">a.tion.surf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc5NDc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMDIxZTc4OGVjY2QzZDU5
MTQ4MjljYjRkZGJhNjlhMTZjNmY3ODc5ZC4uNjQ5OTEyOTJlMDg2ZDNkNjliNmViOTFjZmYxMzg2
NWU4NWI2MTEzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDE1LTAxLTIwICBaaHVv
IExpICA8emFjaGxpQGFwcGxlLmNvbT4KKworICAgICAgICBbV0syXSBBZGQgc3VwcG9ydCBmb3Ig
cmVnaXN0ZXJpbmcgdXJsIHNjaGVtZXMgdG8gYnlwYXNzIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQwNzM2
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJzIENhcmxzc29uLgorCisgICAgICAgICogU2hh
cmVkL1dlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjplbmNvZGUpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWNvZGUpOgorICAgICAgICAqIFNoYXJlZC9X
ZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9D
L1dLQ29udGV4dC5jcHA6CisgICAgICAgIChXS0NvbnRleHRSZWdpc3RlclVSTFNjaGVtZUFzQnlw
YXNzaW5nQ29udGVudFNlY3VyaXR5UG9saWN5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0Mv
V0tDb250ZXh0UHJpdmF0ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5j
cHA6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjpjcmVhdGVOZXdXZWJQcm9jZXNz
KToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OnJlZ2lzdGVyVVJMU2NoZW1lQXNC
eXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3kpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQ
cm9jZXNzUG9vbC5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OldlYlByb2Nlc3M6OmluaXRpYWxpemVXZWJQcm9jZXNzKToKKyAgICAgICAg
KFdlYktpdDo6V2ViUHJvY2Vzczo6cmVnaXN0ZXJVUkxTY2hlbWVBc0J5cGFzc2luZ0NvbnRlbnRT
ZWN1cml0eVBvbGljeSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmg6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2VzLmluOgorCiAyMDE1LTAyLTAxICBD
aHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgVXNlIG1vcmUgcmVmZXJl
bmNlcyBpbiBIaXN0b3J5SXRlbQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dl
YlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dl
YlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCmluZGV4IDRjZWQ3MjE1ZGM1MDQxZDc3MWIx
ODIzZjUxMzQ0OGY5ZjY1YTk5ZjUuLjhhMTI1ZjcwMDkwNmQ3NTVmMzY1YzYxMzI0ODQ4ZTJlNjBh
MmI2ZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJvY2Vzc0Ny
ZWF0aW9uUGFyYW1ldGVycy5jcHAKQEAgLTgyLDYgKzgyLDcgQEAgdm9pZCBXZWJQcm9jZXNzQ3Jl
YXRpb25QYXJhbWV0ZXJzOjplbmNvZGUoSVBDOjpBcmd1bWVudEVuY29kZXImIGVuY29kZXIpIGNv
bnN0CiAgICAgZW5jb2RlciA8PCBzaG91bGRVc2VUZXN0aW5nTmV0d29ya1Nlc3Npb247CiAgICAg
ZW5jb2RlciA8PCB1cmxTY2hlbWVzUmVnaXN0ZXJlcmRBc0VtcHR5RG9jdW1lbnQ7CiAgICAgZW5j
b2RlciA8PCB1cmxTY2hlbWVzUmVnaXN0ZXJlZEFzU2VjdXJlOworICAgIGVuY29kZXIgPDwgdXJs
U2NoZW1lc1JlZ2lzdGVyZWRBc0J5cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeTsKICAgICBl
bmNvZGVyIDw8IHVybFNjaGVtZXNGb3JXaGljaERvbWFpblJlbGF4YXRpb25Jc0ZvcmJpZGRlbjsK
ICAgICBlbmNvZGVyIDw8IHVybFNjaGVtZXNSZWdpc3RlcmVkQXNMb2NhbDsKICAgICBlbmNvZGVy
IDw8IHVybFNjaGVtZXNSZWdpc3RlcmVkQXNOb0FjY2VzczsKQEAgLTE4Nyw2ICsxODgsOCBAQCBi
b29sIFdlYlByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmRlY29kZShJUEM6OkFyZ3VtZW50RGVj
b2RlciYgZGVjb2RlciwgV2ViUHJvYwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKCFk
ZWNvZGVyLmRlY29kZShwYXJhbWV0ZXJzLnVybFNjaGVtZXNSZWdpc3RlcmVkQXNTZWN1cmUpKQog
ICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYgKCFkZWNvZGVyLmRlY29kZShwYXJhbWV0ZXJz
LnVybFNjaGVtZXNSZWdpc3RlcmVkQXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3kpKQor
ICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShwYXJhbWV0ZXJz
LnVybFNjaGVtZXNGb3JXaGljaERvbWFpblJlbGF4YXRpb25Jc0ZvcmJpZGRlbikpCiAgICAgICAg
IHJldHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHBhcmFtZXRlcnMudXJsU2No
ZW1lc1JlZ2lzdGVyZWRBc0xvY2FsKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJl
ZC9XZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmggYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
V2ViUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCmluZGV4IGZmZTMyM2MxNmVhYmI0MTY1ZDFk
NTNjZmY4NWZmNWI0YWJhYTJkYjAuLmY2ZTI2NDkyZDA1NmQyNTE0NTk5ZWQzNzM2NjRkNDA0YjNi
MDVhZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzLmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByb2Nlc3NDcmVh
dGlvblBhcmFtZXRlcnMuaApAQCAtODksNiArODksNyBAQCBzdHJ1Y3QgV2ViUHJvY2Vzc0NyZWF0
aW9uUGFyYW1ldGVycyB7CiAKICAgICBWZWN0b3I8U3RyaW5nPiB1cmxTY2hlbWVzUmVnaXN0ZXJl
cmRBc0VtcHR5RG9jdW1lbnQ7CiAgICAgVmVjdG9yPFN0cmluZz4gdXJsU2NoZW1lc1JlZ2lzdGVy
ZWRBc1NlY3VyZTsKKyAgICBWZWN0b3I8U3RyaW5nPiB1cmxTY2hlbWVzUmVnaXN0ZXJlZEFzQnlw
YXNzaW5nQ29udGVudFNlY3VyaXR5UG9saWN5OwogICAgIFZlY3RvcjxTdHJpbmc+IHVybFNjaGVt
ZXNGb3JXaGljaERvbWFpblJlbGF4YXRpb25Jc0ZvcmJpZGRlbjsKICAgICBWZWN0b3I8U3RyaW5n
PiB1cmxTY2hlbWVzUmVnaXN0ZXJlZEFzTG9jYWw7CiAgICAgVmVjdG9yPFN0cmluZz4gdXJsU2No
ZW1lc1JlZ2lzdGVyZWRBc05vQWNjZXNzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9DL1dLQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L0MvV0tDb250ZXh0LmNwcAppbmRleCA3ZjJlZTM2MWNhMzBlZDI4NmVkNWZjZjgzNWQ1N2M1ZWU3
ZjQ4ZjU5Li4wZDgwMjhhNDA2YmU3ZjVlMjYyNWNlZjhiMzEyNjYzNTEwNWM5YjExIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0LmNwcApAQCAtMzc5LDYgKzM3
OSwxMSBAQCB2b2lkIFdLQ29udGV4dFJlZ2lzdGVyVVJMU2NoZW1lQXNTZWN1cmUoV0tDb250ZXh0
UmVmIGNvbnRleHRSZWYsIFdLU3RyaW5nUmVmIHVybAogICAgIHRvSW1wbChjb250ZXh0UmVmKS0+
cmVnaXN0ZXJVUkxTY2hlbWVBc1NlY3VyZSh0b0ltcGwodXJsU2NoZW1lKS0+c3RyaW5nKCkpOwog
fQogCit2b2lkIFdLQ29udGV4dFJlZ2lzdGVyVVJMU2NoZW1lQXNCeXBhc3NpbmdDb250ZW50U2Vj
dXJpdHlQb2xpY3koV0tDb250ZXh0UmVmIGNvbnRleHRSZWYsIFdLU3RyaW5nUmVmIHVybFNjaGVt
ZSkKK3sKKyAgICB0b0ltcGwoY29udGV4dFJlZiktPnJlZ2lzdGVyVVJMU2NoZW1lQXNCeXBhc3Np
bmdDb250ZW50U2VjdXJpdHlQb2xpY3kodG9JbXBsKHVybFNjaGVtZSktPnN0cmluZygpKTsKK30K
Kwogdm9pZCBXS0NvbnRleHRSZWdpc3RlclVSTFNjaGVtZUFzQ2FjaGVQYXJ0aXRpb25lZChXS0Nv
bnRleHRSZWYgY29udGV4dFJlZiwgV0tTdHJpbmdSZWYgdXJsU2NoZW1lKQogewogI2lmIEVOQUJM
RShDQUNIRV9QQVJUSVRJT05JTkcpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL0MvV0tDb250ZXh0UHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9DL1dLQ29udGV4dFByaXZhdGUuaAppbmRleCA3NmQ4NWQzZmQ5ZjRlNWNhMzhhOTI4MzQyZWFl
NzdkMzYwZmM3M2UwLi4yNjZlODBlYWMwMTg5Yzc1NWNmYWJlZGIyMmZlZThlMGMzYWUxNTE1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0UHJpdmF0
ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRQcml2YXRl
LmgKQEAgLTUyLDYgKzUyLDggQEAgV0tfRVhQT1JUIHZvaWQgV0tDb250ZXh0U2V0U2hvdWxkVXNl
Rm9udFNtb290aGluZyhXS0NvbnRleHRSZWYgY29udGV4dCwgYm9vbCB1c2UKIAogV0tfRVhQT1JU
IHZvaWQgV0tDb250ZXh0UmVnaXN0ZXJVUkxTY2hlbWVBc1NlY3VyZShXS0NvbnRleHRSZWYgY29u
dGV4dCwgV0tTdHJpbmdSZWYgdXJsU2NoZW1lKTsKIAorV0tfRVhQT1JUIHZvaWQgV0tDb250ZXh0
UmVnaXN0ZXJVUkxTY2hlbWVBc0J5cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeShXS0NvbnRl
eHRSZWYgY29udGV4dCwgV0tTdHJpbmdSZWYgdXJsU2NoZW1lKTsKKwogV0tfRVhQT1JUIHZvaWQg
V0tDb250ZXh0UmVnaXN0ZXJVUkxTY2hlbWVBc0NhY2hlUGFydGl0aW9uZWQoV0tDb250ZXh0UmVm
IGNvbnRleHQsIFdLU3RyaW5nUmVmIHVybFNjaGVtZSk7CiAKIFdLX0VYUE9SVCB2b2lkIFdLQ29u
dGV4dFNldERvbWFpblJlbGF4YXRpb25Gb3JiaWRkZW5Gb3JVUkxTY2hlbWUoV0tDb250ZXh0UmVm
IGNvbnRleHQsIFdLU3RyaW5nUmVmIHVybFNjaGVtZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYlByb2Nlc3NQb29sLmNwcAppbmRleCBiYTQ0MDJhZTU3ZjU5NjUxMmY4MTkwYjA4ZTcy
ZjM5MzBiZGFmZDdiLi45YzQ5MWNhYjhjNjY2Y2NkZTQzM2EwMTg4OGM4MGEzNzkyY2Q4OTNiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKQEAgLTYzNiw2
ICs2MzYsNyBAQCBXZWJQcm9jZXNzUHJveHkmIFdlYlByb2Nlc3NQb29sOjpjcmVhdGVOZXdXZWJQ
cm9jZXNzKCkKIAogICAgIGNvcHlUb1ZlY3RvcihtX3NjaGVtZXNUb1JlZ2lzdGVyQXNFbXB0eURv
Y3VtZW50LCBwYXJhbWV0ZXJzLnVybFNjaGVtZXNSZWdpc3RlcmVyZEFzRW1wdHlEb2N1bWVudCk7
CiAgICAgY29weVRvVmVjdG9yKG1fc2NoZW1lc1RvUmVnaXN0ZXJBc1NlY3VyZSwgcGFyYW1ldGVy
cy51cmxTY2hlbWVzUmVnaXN0ZXJlZEFzU2VjdXJlKTsKKyAgICBjb3B5VG9WZWN0b3IobV9zY2hl
bWVzVG9SZWdpc3RlckFzQnlwYXNzaW5nQ29udGVudFNlY3VyaXR5UG9saWN5LCBwYXJhbWV0ZXJz
LnVybFNjaGVtZXNSZWdpc3RlcmVkQXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3kpOwog
ICAgIGNvcHlUb1ZlY3RvcihtX3NjaGVtZXNUb1NldERvbWFpblJlbGF4YXRpb25Gb3JiaWRkZW5G
b3IsIHBhcmFtZXRlcnMudXJsU2NoZW1lc0ZvcldoaWNoRG9tYWluUmVsYXhhdGlvbklzRm9yYmlk
ZGVuKTsKICAgICBjb3B5VG9WZWN0b3IobV9zY2hlbWVzVG9SZWdpc3RlckFzTG9jYWwsIHBhcmFt
ZXRlcnMudXJsU2NoZW1lc1JlZ2lzdGVyZWRBc0xvY2FsKTsKICAgICBjb3B5VG9WZWN0b3IobV9z
Y2hlbWVzVG9SZWdpc3RlckFzTm9BY2Nlc3MsIHBhcmFtZXRlcnMudXJsU2NoZW1lc1JlZ2lzdGVy
ZWRBc05vQWNjZXNzKTsKQEAgLTk2Myw2ICs5NjQsMTIgQEAgdm9pZCBXZWJQcm9jZXNzUG9vbDo6
cmVnaXN0ZXJVUkxTY2hlbWVBc1NlY3VyZShjb25zdCBTdHJpbmcmIHVybFNjaGVtZSkKICAgICBz
ZW5kVG9BbGxQcm9jZXNzZXMoTWVzc2FnZXM6OldlYlByb2Nlc3M6OlJlZ2lzdGVyVVJMU2NoZW1l
QXNTZWN1cmUodXJsU2NoZW1lKSk7CiB9CiAKK3ZvaWQgV2ViUHJvY2Vzc1Bvb2w6OnJlZ2lzdGVy
VVJMU2NoZW1lQXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3koY29uc3QgU3RyaW5nJiB1
cmxTY2hlbWUpCit7CisgICAgbV9zY2hlbWVzVG9SZWdpc3RlckFzQnlwYXNzaW5nQ29udGVudFNl
Y3VyaXR5UG9saWN5LmFkZCh1cmxTY2hlbWUpOworICAgIHNlbmRUb0FsbFByb2Nlc3NlcyhNZXNz
YWdlczo6V2ViUHJvY2Vzczo6UmVnaXN0ZXJVUkxTY2hlbWVBc0J5cGFzc2luZ0NvbnRlbnRTZWN1
cml0eVBvbGljeSh1cmxTY2hlbWUpKTsKK30KKwogdm9pZCBXZWJQcm9jZXNzUG9vbDo6c2V0RG9t
YWluUmVsYXhhdGlvbkZvcmJpZGRlbkZvclVSTFNjaGVtZShjb25zdCBTdHJpbmcmIHVybFNjaGVt
ZSkKIHsKICAgICBtX3NjaGVtZXNUb1NldERvbWFpblJlbGF4YXRpb25Gb3JiaWRkZW5Gb3IuYWRk
KHVybFNjaGVtZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJv
Y2Vzc1Bvb2wuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oCmlu
ZGV4IGZmNmVlNmYyNjU3NjE0NGYyOGRiYjJmYTUzNTc4ODQ1NTljNDdiM2EuLjIyM2EyYTBmNDZh
OGYwYzZiN2U4ZDI0ZTIzNGFhOTc0M2YzZWM3MzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9XZWJQcm9jZXNzUG9vbC5oCkBAIC0xOTIsNiArMTkyLDcgQEAgcHVibGljOgogICAgIAogICAg
IHZvaWQgcmVnaXN0ZXJVUkxTY2hlbWVBc0VtcHR5RG9jdW1lbnQoY29uc3QgU3RyaW5nJik7CiAg
ICAgdm9pZCByZWdpc3RlclVSTFNjaGVtZUFzU2VjdXJlKGNvbnN0IFN0cmluZyYpOworICAgIHZv
aWQgcmVnaXN0ZXJVUkxTY2hlbWVBc0J5cGFzc2luZ0NvbnRlbnRTZWN1cml0eVBvbGljeShjb25z
dCBTdHJpbmcmKTsKICAgICB2b2lkIHNldERvbWFpblJlbGF4YXRpb25Gb3JiaWRkZW5Gb3JVUkxT
Y2hlbWUoY29uc3QgU3RyaW5nJik7CiAgICAgdm9pZCBzZXRDYW5IYW5kbGVIVFRQU1NlcnZlclRy
dXN0RXZhbHVhdGlvbihib29sKTsKICAgICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1lQXNMb2NhbChj
b25zdCBTdHJpbmcmKTsKQEAgLTQ0OSw2ICs0NTAsNyBAQCBwcml2YXRlOgogICAgICAgICAKICAg
ICBIYXNoU2V0PFN0cmluZz4gbV9zY2hlbWVzVG9SZWdpc3RlckFzRW1wdHlEb2N1bWVudDsKICAg
ICBIYXNoU2V0PFN0cmluZz4gbV9zY2hlbWVzVG9SZWdpc3RlckFzU2VjdXJlOworICAgIEhhc2hT
ZXQ8U3RyaW5nPiBtX3NjaGVtZXNUb1JlZ2lzdGVyQXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQ
b2xpY3k7CiAgICAgSGFzaFNldDxTdHJpbmc+IG1fc2NoZW1lc1RvU2V0RG9tYWluUmVsYXhhdGlv
bkZvcmJpZGRlbkZvcjsKICAgICBIYXNoU2V0PFN0cmluZz4gbV9zY2hlbWVzVG9SZWdpc3RlckFz
TG9jYWw7CiAgICAgSGFzaFNldDxTdHJpbmc+IG1fc2NoZW1lc1RvUmVnaXN0ZXJBc05vQWNjZXNz
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcCBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKaW5kZXggZjVhOTczZDhl
OGJiMDRjZmViN2ExMmIyNGU4ZDk5MDBlODg1ODk2ZS4uNGQ5Mjc4NDY3MDgwZTI3YmM0MmQ3YmI4
MTE4NmJhZDFiNTlmNGVkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3Mu
Y3BwCkBAIC0zMTMsNiArMzEzLDkgQEAgdm9pZCBXZWJQcm9jZXNzOjppbml0aWFsaXplV2ViUHJv
Y2VzcyhXZWJQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzJiYgcGFyYW1ldGVycykKICAgICBmb3Ig
KHNpemVfdCBpID0gMDsgaSA8IHBhcmFtZXRlcnMudXJsU2NoZW1lc1JlZ2lzdGVyZWRBc1NlY3Vy
ZS5zaXplKCk7ICsraSkKICAgICAgICAgcmVnaXN0ZXJVUkxTY2hlbWVBc1NlY3VyZShwYXJhbWV0
ZXJzLnVybFNjaGVtZXNSZWdpc3RlcmVkQXNTZWN1cmVbaV0pOwogCisgICAgZm9yIChzaXplX3Qg
aSA9IDA7IGkgPCBwYXJhbWV0ZXJzLnVybFNjaGVtZXNSZWdpc3RlcmVkQXNCeXBhc3NpbmdDb250
ZW50U2VjdXJpdHlQb2xpY3kuc2l6ZSgpOyArK2kpCisgICAgICAgIHJlZ2lzdGVyVVJMU2NoZW1l
QXNCeXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3kocGFyYW1ldGVycy51cmxTY2hlbWVzUmVn
aXN0ZXJlZEFzQnlwYXNzaW5nQ29udGVudFNlY3VyaXR5UG9saWN5W2ldKTsKKwogICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgcGFyYW1ldGVycy51cmxTY2hlbWVzRm9yV2hpY2hEb21haW5SZWxh
eGF0aW9uSXNGb3JiaWRkZW4uc2l6ZSgpOyArK2kpCiAgICAgICAgIHNldERvbWFpblJlbGF4YXRp
b25Gb3JiaWRkZW5Gb3JVUkxTY2hlbWUocGFyYW1ldGVycy51cmxTY2hlbWVzRm9yV2hpY2hEb21h
aW5SZWxheGF0aW9uSXNGb3JiaWRkZW5baV0pOwogCkBAIC00MTUsNiArNDE4LDExIEBAIHZvaWQg
V2ViUHJvY2Vzczo6cmVnaXN0ZXJVUkxTY2hlbWVBc1NlY3VyZShjb25zdCBTdHJpbmcmIHVybFNj
aGVtZSkgY29uc3QKICAgICBTY2hlbWVSZWdpc3RyeTo6cmVnaXN0ZXJVUkxTY2hlbWVBc1NlY3Vy
ZSh1cmxTY2hlbWUpOwogfQogCit2b2lkIFdlYlByb2Nlc3M6OnJlZ2lzdGVyVVJMU2NoZW1lQXNC
eXBhc3NpbmdDb250ZW50U2VjdXJpdHlQb2xpY3koY29uc3QgU3RyaW5nJiB1cmxTY2hlbWUpIGNv
bnN0Cit7CisgICAgU2NoZW1lUmVnaXN0cnk6OnJlZ2lzdGVyVVJMU2NoZW1lQXNCeXBhc3NpbmdD
b250ZW50U2VjdXJpdHlQb2xpY3kodXJsU2NoZW1lKTsKK30KKwogdm9pZCBXZWJQcm9jZXNzOjpz
ZXREb21haW5SZWxheGF0aW9uRm9yYmlkZGVuRm9yVVJMU2NoZW1lKGNvbnN0IFN0cmluZyYgdXJs
U2NoZW1lKSBjb25zdAogewogICAgIFNjaGVtZVJlZ2lzdHJ5OjpzZXREb21haW5SZWxheGF0aW9u
Rm9yYmlkZGVuRm9yVVJMU2NoZW1lKHRydWUsIHVybFNjaGVtZSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUHJvY2Vzcy5oCmluZGV4IDViYWYwNzIxMzdkZTZhZTdkZjVjNzNmNTRiNWQzODk5
ZjhmZDMyNWYuLjlhZmM3MjliMTU4MThhNGZjNjNmNDNlYTcxZDIzNjlhMWM1YTRiZjUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCkBAIC0yMTYsNiArMjE2LDcgQEAgcHJp
dmF0ZToKICAgICB2b2lkIHBsYXRmb3JtVGVybWluYXRlKCk7CiAgICAgdm9pZCByZWdpc3RlclVS
TFNjaGVtZUFzRW1wdHlEb2N1bWVudChjb25zdCBTdHJpbmcmKTsKICAgICB2b2lkIHJlZ2lzdGVy
VVJMU2NoZW1lQXNTZWN1cmUoY29uc3QgU3RyaW5nJikgY29uc3Q7CisgICAgdm9pZCByZWdpc3Rl
clVSTFNjaGVtZUFzQnlwYXNzaW5nQ29udGVudFNlY3VyaXR5UG9saWN5KGNvbnN0IFN0cmluZyYp
IGNvbnN0OwogICAgIHZvaWQgc2V0RG9tYWluUmVsYXhhdGlvbkZvcmJpZGRlbkZvclVSTFNjaGVt
ZShjb25zdCBTdHJpbmcmKSBjb25zdDsKICAgICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1lQXNMb2Nh
bChjb25zdCBTdHJpbmcmKSBjb25zdDsKICAgICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1lQXNOb0Fj
Y2Vzcyhjb25zdCBTdHJpbmcmKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUHJvY2Vzcy5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUHJvY2Vzcy5tZXNzYWdlcy5pbgppbmRleCA5NGVmZTIwYjJiMDAyMjMyZGQ5MTljMGMx
MDE5ZmYyNjQyNjU1NDc3Li4yMTIyODQ2Nzg5YmYyNjFkNWRiMzRlMmUyMjI1Njc4NjM4YmRhMmY5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MubWVzc2Fn
ZXMuaW4KKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLm1lc3NhZ2Vz
LmluCkBAIC0zMCw2ICszMCw3IEBAIG1lc3NhZ2VzIC0+IFdlYlByb2Nlc3MgTGVnYWN5UmVjZWl2
ZXIgewogICAgIFNldENhY2hlTW9kZWwodWludDMyX3QgY2FjaGVNb2RlbCkKICAgICBSZWdpc3Rl
clVSTFNjaGVtZUFzRW1wdHlEb2N1bWVudChTdHJpbmcgc2NoZW1lKQogICAgIFJlZ2lzdGVyVVJM
U2NoZW1lQXNTZWN1cmUoU3RyaW5nIHNjaGVtZSkKKyAgICBSZWdpc3RlclVSTFNjaGVtZUFzQnlw
YXNzaW5nQ29udGVudFNlY3VyaXR5UG9saWN5KFN0cmluZyBzY2hlbWUpCiAgICAgU2V0RG9tYWlu
UmVsYXhhdGlvbkZvcmJpZGRlbkZvclVSTFNjaGVtZShTdHJpbmcgc2NoZW1lKQogICAgIFJlZ2lz
dGVyVVJMU2NoZW1lQXNMb2NhbChTdHJpbmcgc2NoZW1lKQogICAgIFJlZ2lzdGVyVVJMU2NoZW1l
QXNOb0FjY2VzcyhTdHJpbmcgc2NoZW1lKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>