<?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>45214</bug_id>
          
          <creation_ts>2010-09-03 16:24:00 -0700</creation_ts>
          <short_desc>Rename SecurityOrigin::canLoad to canDisplay</short_desc>
          <delta_ts>2010-09-06 01:00:04 -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>Other</rep_platform>
          <op_sys>OS X 10.5</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="Adam Barth">abarth</reporter>
          <assigned_to name="Adam Barth">abarth</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>eric</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>274249</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-09-03 16:24:00 -0700</bug_when>
    <thetext>Rename SecurityOrigin::canLoad to canDisplay</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>274252</commentid>
    <comment_count>1</comment_count>
      <attachid>66563</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-09-03 16:27:51 -0700</bug_when>
    <thetext>Created attachment 66563
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>274256</commentid>
    <comment_count>2</comment_count>
      <attachid>66563</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-09-03 16:41:24 -0700</bug_when>
    <thetext>Comment on attachment 66563
Patch

&gt; +    // Returns true if |document| can dispaly content from the given URL (e.g.,

dispaly

&gt; +    // in an iframe or as an image).  For example, web sites generally cannot
&gt; +    // display content from the user&apos;s files system.  If |document| is 0,
&gt; +    // |referrer| is used to make this determination.

Are we going to have to go out into the alley and have a throw down over the two spaces vs. one space after period issue? ;-)

In the programming world I am part of, the word &quot;display&quot; usually means &quot;paint into a window&quot;, so I think the word display here is not perfect. Is there some terminology from the HTML5 specification or some other technical document that we can borrow here to find a phrase better than &quot;display the contents&quot;?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>274268</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-09-03 17:02:45 -0700</bug_when>
    <thetext>Thanks for the review.

&gt; Are we going to have to go out into the alley and have a throw down over the two spaces vs. one space after period issue? ;-)

Sorry.  Almost all the prose I write uses two-space indent.  :(

&gt; In the programming world I am part of, the word &quot;display&quot; usually means &quot;paint into a window&quot;, so I think the word display here is not perfect. Is there some terminology from the HTML5 specification or some other technical document that we can borrow here to find a phrase better than &quot;display the contents&quot;?

canShow?  canRender?  My main beef with canLoad is that it&apos;s too similar to canRequest.  Actually, &quot;paint into a window&quot; is pretty accurate here.  For example, that&apos;s pretty much what the image element does with the URL...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>274505</commentid>
    <comment_count>4</comment_count>
      <attachid>66614</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-09-05 23:41:57 -0700</bug_when>
    <thetext>Created attachment 66614
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>274515</commentid>
    <comment_count>5</comment_count>
      <attachid>66614</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-09-06 00:59:59 -0700</bug_when>
    <thetext>Comment on attachment 66614
Patch for landing

Clearing flags on attachment: 66614

Committed r66815: &lt;http://trac.webkit.org/changeset/66815&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>274516</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-09-06 01:00:04 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>66563</attachid>
            <date>2010-09-03 16:27:51 -0700</date>
            <delta_ts>2010-09-05 23:41:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-45214-20100903162749.patch</filename>
            <type>text/plain</type>
            <size>19030</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NTIwNDhjMTUyZTllNjA3ZjQyZjVmNGZhMTYxOTUwMGJjNzYxMTE4MC4uZmIyMjI1ODQwM2NiMTI3
N2Q5OGIwOWU3MmExMTUxYzg4N2U0OGU5MCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNiBAQAorMjAxMC0wOS0wMyAgQWRh
bSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFJlbmFtZSBTZWN1cml0eU9yaWdpbjo6Y2FuTG9hZCB0byBj
YW5EaXNwbGF5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD00NTIxNAorCisgICAgICAgIGNhbkxvYWQgaXMgYSBwcmV0dHkgb3BhcXVlIG5hbWUuICBUaGlz
IGZ1bmN0aW9uIGlzIHJlYWxseSBhYm91dCB3aGV0aGVyCisgICAgICAgIHlvdSBjYW4gZGlzcGxh
eSB0aGUgY29udGVudHMgb2YgdGhlIFVSTCBpbiBhbiBpZnJhbWUsIGFuIGltYWdlLCBvciBhCisg
ICAgICAgIHBsdWdpbi4KKworICAgICAgICAqIFdlYkNvcmUuZXhwLmluOgorICAgICAgICAqIGh0
bWwvSFRNTE1lZGlhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVt
ZW50Ojppc1NhZmVUb0xvYWRVUkwpOgorICAgICAgICAqIGxvYWRlci9DYWNoZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpDYWNoZTo6cmVxdWVzdFJlc291cmNlKToKKyAgICAgICAgKiBsb2FkZXIv
RnJhbWVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OmxvYWRGcmFt
ZVJlcXVlc3QpOgorICAgICAgICAqIGxvYWRlci9QaW5nTG9hZGVyLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlBpbmdMb2FkZXI6OmxvYWRJbWFnZSk6CisgICAgICAgICogbG9hZGVyL1N1YmZyYW1l
TG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN1YmZyYW1lTG9hZGVyOjpsb2FkTWVkaWFQ
bGF5ZXJQcm94eVBsdWdpbik6CisgICAgICAgIChXZWJDb3JlOjpTdWJmcmFtZUxvYWRlcjo6Y3Jl
YXRlSmF2YUFwcGxldFdpZGdldCk6CisgICAgICAgIChXZWJDb3JlOjpTdWJmcmFtZUxvYWRlcjo6
bG9hZFN1YmZyYW1lKToKKyAgICAgICAgKFdlYkNvcmU6OlN1YmZyYW1lTG9hZGVyOjpsb2FkUGx1
Z2luKToKKyAgICAgICAgKiBsb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6U3VicmVzb3VyY2VMb2FkZXI6OmNyZWF0ZSk6CisgICAgICAgICogcGFnZS9TZWN1
cml0eU9yaWdpbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTZWN1cml0eU9yaWdpbjo6Y2FuRGlz
cGxheSk6CisgICAgICAgICogcGFnZS9TZWN1cml0eU9yaWdpbi5oOgorICAgICAgICAqIHBsdWdp
bnMvUGx1Z2luVmlldy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQbHVnaW5WaWV3Ojpsb2FkKToK
KwogMjAxMC0wOS0wMyAgRGltaXRyaSBHbGF6a292ICA8ZGdsYXprb3ZAY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IFRvbnkgQ2hhbmcuCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dl
YkNvcmUuZXhwLmluIGIvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCA4NTE0OGU1NDAwZTA4
YTcwZmQ5YTVjZWIxNDZkYWZjZTUxNTE2NDQyLi5hYjQ0YjcxY2ZiMWY2M2I0ZTFlZjM1MjI4YjQx
MjU3ODZmNDI5MDJhIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCisrKyBiL1dl
YkNvcmUvV2ViQ29yZS5leHAuaW4KQEAgLTMxNCw2ICszMTQsNyBAQCBfX1pON1dlYkNvcmUxNFNW
R1NNSUxFbGVtZW50MTNpc1NNSUxFbGVtZW50RVBOU180Tm9kZUUKIF9fWk43V2ViQ29yZTE0U2No
ZW1lUmVnaXN0cnkyNHJlZ2lzdGVyVVJMU2NoZW1lQXNMb2NhbEVSS04zV1RGNlN0cmluZ0UKIF9f
Wk43V2ViQ29yZTE0U2NoZW1lUmVnaXN0cnkyNXJlZ2lzdGVyVVJMU2NoZW1lQXNTZWN1cmVFUktO
M1dURjZTdHJpbmdFCiBfX1pON1dlYkNvcmUxNFNjaGVtZVJlZ2lzdHJ5MzJyZWdpc3RlclVSTFNj
aGVtZUFzRW1wdHlEb2N1bWVudEVSS04zV1RGNlN0cmluZ0UKK19fWk43V2ViQ29yZTE0U2VjdXJp
dHlPcmlnaW4xMGNhbkRpc3BsYXlFUktOU180S1VSTEVSS04zV1RGNlN0cmluZ0VQTlNfOERvY3Vt
ZW50RQogX19aTjdXZWJDb3JlMTRTZWN1cml0eU9yaWdpbjE2Y3JlYXRlRnJvbVN0cmluZ0VSS04z
V1RGNlN0cmluZ0UKIF9fWk43V2ViQ29yZTE0U2VjdXJpdHlPcmlnaW4xOHNldExvY2FsTG9hZFBv
bGljeUVOUzBfMTVMb2NhbExvYWRQb2xpY3lFCiBfX1pON1dlYkNvcmUxNFNlY3VyaXR5T3JpZ2lu
MThzaG91bGRIaWRlUmVmZXJyZXJFUktOU180S1VSTEVSS04zV1RGNlN0cmluZ0UKQEAgLTMyMiw3
ICszMjMsNiBAQCBfX1pON1dlYkNvcmUxNFNlY3VyaXR5T3JpZ2luMjlhZGRPcmlnaW5BY2Nlc3NX
aGl0ZWxpc3RFbnRyeUVSS1MwX1JLTjNXVEY2U3RyaW5nRQogX19aTjdXZWJDb3JlMTRTZWN1cml0
eU9yaWdpbjMycmVtb3ZlT3JpZ2luQWNjZXNzV2hpdGVsaXN0RW50cnlFUktTMF9SS04zV1RGNlN0
cmluZ0VTNl9iCiBfX1pON1dlYkNvcmUxNFNlY3VyaXR5T3JpZ2luNDBzZXREb21haW5SZWxheGF0
aW9uRm9yYmlkZGVuRm9yVVJMU2NoZW1lRWJSS04zV1RGNlN0cmluZ0UKIF9fWk43V2ViQ29yZTE0
U2VjdXJpdHlPcmlnaW42Y3JlYXRlRVJLTlNfNEtVUkxFaQotX19aTjdXZWJDb3JlMTRTZWN1cml0
eU9yaWdpbjdjYW5Mb2FkRVJLTlNfNEtVUkxFUktOM1dURjZTdHJpbmdFUE5TXzhEb2N1bWVudEUK
IF9fWk43V2ViQ29yZTE1QXJjaGl2ZVJlc291cmNlNmNyZWF0ZUVOM1dURjEwUGFzc1JlZlB0cklO
U18xMlNoYXJlZEJ1ZmZlckVFRVJLTlNfNEtVUkxFUktOUzFfNlN0cmluZ0VTQV9TQV9SS05TXzE2
UmVzb3VyY2VSZXNwb25zZUUKIF9fWk43V2ViQ29yZTE1RE9NV3JhcHBlcldvcmxkMTV1bnJlZ2lz
dGVyV29ybGRFdgogX19aTjdXZWJDb3JlMTVET01XcmFwcGVyV29ybGREMUV2CmRpZmYgLS1naXQg
YS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAgYi9XZWJDb3JlL2h0bWwvSFRNTE1l
ZGlhRWxlbWVudC5jcHAKaW5kZXggNDYyMTA5NjdmMjBkZWQ5YWQwMzRiM2RkYzMxNzZiMDQzYzE1
YzhmMC4uMGY0YTUxNDc0MzY2ZDNiYWU2OWJkY2ExN2U2Yjk4NDA4NjMzZGQyYSAxMDA2NDQKLS0t
IGEvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCisrKyBiL1dlYkNvcmUvaHRtbC9I
VE1MTWVkaWFFbGVtZW50LmNwcApAQCAtNjk5LDcgKzY5OSw3IEBAIGJvb2wgSFRNTE1lZGlhRWxl
bWVudDo6aXNTYWZlVG9Mb2FkVVJMKGNvbnN0IEtVUkwmIHVybCwgSW52YWxpZFNvdXJjZUFjdGlv
biBhY3RpCiAgICAgRnJhbWVMb2FkZXIqIGxvYWRlciA9IGZyYW1lID8gZnJhbWUtPmxvYWRlcigp
IDogMDsKIAogICAgIC8vIGRvbid0IGFsbG93IHJlbW90ZSB0byBsb2NhbCB1cmxzLCBhbmQgY2hl
Y2sgd2l0aCB0aGUgZnJhbWUgbG9hZGVyIGNsaWVudC4KLSAgICBpZiAoIWxvYWRlciB8fCAhU2Vj
dXJpdHlPcmlnaW46OmNhbkxvYWQodXJsLCBTdHJpbmcoKSwgZG9jdW1lbnQoKSkpIHsKKyAgICBp
ZiAoIWxvYWRlciB8fCAhU2VjdXJpdHlPcmlnaW46OmNhbkRpc3BsYXkodXJsLCBTdHJpbmcoKSwg
ZG9jdW1lbnQoKSkpIHsKICAgICAgICAgaWYgKGFjdGlvbklmSW52YWxpZCA9PSBDb21wbGFpbikK
ICAgICAgICAgICAgIEZyYW1lTG9hZGVyOjpyZXBvcnRMb2NhbExvYWRGYWlsZWQoZnJhbWUsIHVy
bC5zdHJpbmcoKSk7CiAgICAgICAgIHJldHVybiBmYWxzZTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
bG9hZGVyL0NhY2hlLmNwcCBiL1dlYkNvcmUvbG9hZGVyL0NhY2hlLmNwcAppbmRleCBjYjUzNmUy
ZTVlY2EzYzkwYWE5YWQ0MjE4ZmUzODg1NzkwMGRhMzQ0Li4zZTI1NzZmMDFkYzc1OWNiZDJkYjdh
ODE1ZGQyNDZkMjVjYTk5MWZlIDEwMDY0NAotLS0gYS9XZWJDb3JlL2xvYWRlci9DYWNoZS5jcHAK
KysrIGIvV2ViQ29yZS9sb2FkZXIvQ2FjaGUuY3BwCkBAIC0xMDYsNyArMTA2LDcgQEAgQ2FjaGVk
UmVzb3VyY2UqIENhY2hlOjpyZXF1ZXN0UmVzb3VyY2UoRG9jTG9hZGVyKiBkb2NMb2FkZXIsIENh
Y2hlZFJlc291cmNlOjpUeXAKICAgICBpZiAocmVzb3VyY2UgJiYgcmVxdWVzdElzUHJlbG9hZCAm
JiAhcmVzb3VyY2UtPmlzUHJlbG9hZGVkKCkpCiAgICAgICAgIHJldHVybiAwOwogICAgIAotICAg
IGlmIChTZWN1cml0eU9yaWdpbjo6cmVzdHJpY3RBY2Nlc3NUb0xvY2FsKCkgJiYgIVNlY3VyaXR5
T3JpZ2luOjpjYW5Mb2FkKHVybCwgU3RyaW5nKCksIGRvY0xvYWRlci0+ZG9jKCkpKSB7CisgICAg
aWYgKFNlY3VyaXR5T3JpZ2luOjpyZXN0cmljdEFjY2Vzc1RvTG9jYWwoKSAmJiAhU2VjdXJpdHlP
cmlnaW46OmNhbkRpc3BsYXkodXJsLCBTdHJpbmcoKSwgZG9jTG9hZGVyLT5kb2MoKSkpIHsKICAg
ICAgICAgRG9jdW1lbnQqIGRvYyA9IGRvY0xvYWRlci0+ZG9jKCk7CiAgICAgICAgIGlmIChkb2Mg
JiYgIXJlcXVlc3RJc1ByZWxvYWQpCiAgICAgICAgICAgICBGcmFtZUxvYWRlcjo6cmVwb3J0TG9j
YWxMb2FkRmFpbGVkKGRvYy0+ZnJhbWUoKSwgdXJsLnN0cmluZygpKTsKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcCBiL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVy
LmNwcAppbmRleCBlZWI1MjgzYzUyZTc5NDYxNzg3ODc5MTc3YjM2OWI1NzllMjIyZjA4Li44ODhl
ZjEyODUwNjYzMjNmZjE0OGMzYWNjZDJkOGFlZjllNmNkYWY2IDEwMDY0NAotLS0gYS9XZWJDb3Jl
L2xvYWRlci9GcmFtZUxvYWRlci5jcHAKKysrIGIvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIu
Y3BwCkBAIC0xMjU1LDcgKzEyNTUsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkRnJhbWVSZXF1
ZXN0KGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlc3QsIGJvb2wgbG9ja0hpcwogCiAgICAg
QVNTRVJUKGZyYW1lKCktPmRvY3VtZW50KCkpOwogICAgIGlmIChTY2hlbWVSZWdpc3RyeTo6c2hv
dWxkVHJlYXRVUkxBc0xvY2FsKHVybC5zdHJpbmcoKSkgJiYgIWlzRmVlZFdpdGhOZXN0ZWRQcm90
b2NvbEluSFRUUEZhbWlseSh1cmwpKSB7Ci0gICAgICAgIGlmICghU2VjdXJpdHlPcmlnaW46OmNh
bkxvYWQodXJsLCBTdHJpbmcoKSwgZnJhbWUoKS0+ZG9jdW1lbnQoKSkgJiYgIVNlY3VyaXR5T3Jp
Z2luOjpjYW5Mb2FkKHVybCwgcmVmZXJyZXIsIDApKSB7CisgICAgICAgIGlmICghU2VjdXJpdHlP
cmlnaW46OmNhbkRpc3BsYXkodXJsLCBTdHJpbmcoKSwgZnJhbWUoKS0+ZG9jdW1lbnQoKSkgJiYg
IVNlY3VyaXR5T3JpZ2luOjpjYW5EaXNwbGF5KHVybCwgcmVmZXJyZXIsIDApKSB7CiAgICAgICAg
ICAgICBGcmFtZUxvYWRlcjo6cmVwb3J0TG9jYWxMb2FkRmFpbGVkKG1fZnJhbWUsIHVybC5zdHJp
bmcoKSk7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1dlYkNv
cmUvbG9hZGVyL1BpbmdMb2FkZXIuY3BwIGIvV2ViQ29yZS9sb2FkZXIvUGluZ0xvYWRlci5jcHAK
aW5kZXggNjBjNmYzMGU0OGU3MDQ0N2IyZTAxOGRkN2MyMzk0MWFjM2M3YmJhYy4uMjY4ZTAwN2Qz
YWY4MTI1ZjRmYmY5MjZhZmQzNmZiZTA3OGY4MDY0MSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9sb2Fk
ZXIvUGluZ0xvYWRlci5jcHAKKysrIGIvV2ViQ29yZS9sb2FkZXIvUGluZ0xvYWRlci5jcHAKQEAg
LTQyLDcgKzQyLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiB2b2lkIFBpbmdMb2FkZXI6Omxv
YWRJbWFnZShGcmFtZSogZnJhbWUsIGNvbnN0IEtVUkwmIHVybCkKIHsKLSAgICBpZiAoU2VjdXJp
dHlPcmlnaW46OnJlc3RyaWN0QWNjZXNzVG9Mb2NhbCgpICYmICFTZWN1cml0eU9yaWdpbjo6Y2Fu
TG9hZCh1cmwsIFN0cmluZygpLCBmcmFtZS0+ZG9jdW1lbnQoKSkpIHsKKyAgICBpZiAoU2VjdXJp
dHlPcmlnaW46OnJlc3RyaWN0QWNjZXNzVG9Mb2NhbCgpICYmICFTZWN1cml0eU9yaWdpbjo6Y2Fu
RGlzcGxheSh1cmwsIFN0cmluZygpLCBmcmFtZS0+ZG9jdW1lbnQoKSkpIHsKICAgICAgICAgRnJh
bWVMb2FkZXI6OnJlcG9ydExvY2FsTG9hZEZhaWxlZChmcmFtZSwgdXJsKTsKICAgICAgICAgcmV0
dXJuOwogICAgIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvbG9hZGVyL1N1YmZyYW1lTG9hZGVyLmNw
cCBiL1dlYkNvcmUvbG9hZGVyL1N1YmZyYW1lTG9hZGVyLmNwcAppbmRleCBjZWFmYjg4ZjY0MGZh
ZTkyZDk1MmZiYzVjNmI0NGFjZTE3Y2VhZDRhLi5jMjViMzdlNzFmNzEwNTdkYmNiZGFmYWJiYjg4
MjJlMmE3OGUyZGU3IDEwMDY0NAotLS0gYS9XZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5j
cHAKKysrIGIvV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIuY3BwCkBAIC0xNDcsNyArMTQ3
LDcgQEAgUGFzc1JlZlB0cjxXaWRnZXQ+IFN1YmZyYW1lTG9hZGVyOjpsb2FkTWVkaWFQbGF5ZXJQ
cm94eVBsdWdpbihOb2RlKiBub2RlLCBjb25zdAogICAgIGlmICghdXJsLmlzRW1wdHkoKSkKICAg
ICAgICAgY29tcGxldGVkVVJMID0gY29tcGxldGVVUkwodXJsKTsKIAotICAgIGlmICghU2VjdXJp
dHlPcmlnaW46OmNhbkxvYWQoY29tcGxldGVkVVJMLCBTdHJpbmcoKSwgbV9mcmFtZS0+ZG9jdW1l
bnQoKSkpIHsKKyAgICBpZiAoIVNlY3VyaXR5T3JpZ2luOjpjYW5EaXNwbGF5KGNvbXBsZXRlZFVS
TCwgU3RyaW5nKCksIG1fZnJhbWUtPmRvY3VtZW50KCkpKSB7CiAgICAgICAgIEZyYW1lTG9hZGVy
OjpyZXBvcnRMb2NhbExvYWRGYWlsZWQobV9mcmFtZSwgY29tcGxldGVkVVJMLnN0cmluZygpKTsK
ICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQpAQCAtMjA1LDcgKzIwNSw3IEBAIFBhc3NSZWZQdHI8
V2lkZ2V0PiBTdWJmcmFtZUxvYWRlcjo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldChjb25zdCBJbnRT
aXplJiBzaXplLCBICiAKICAgICBpZiAoIWNvZGVCYXNlVVJMU3RyaW5nLmlzRW1wdHkoKSkgewog
ICAgICAgICBLVVJMIGNvZGVCYXNlVVJMID0gY29tcGxldGVVUkwoY29kZUJhc2VVUkxTdHJpbmcp
OwotICAgICAgICBpZiAoIVNlY3VyaXR5T3JpZ2luOjpjYW5Mb2FkKGNvZGVCYXNlVVJMLCBTdHJp
bmcoKSwgZWxlbWVudC0+ZG9jdW1lbnQoKSkpIHsKKyAgICAgICAgaWYgKCFTZWN1cml0eU9yaWdp
bjo6Y2FuRGlzcGxheShjb2RlQmFzZVVSTCwgU3RyaW5nKCksIGVsZW1lbnQtPmRvY3VtZW50KCkp
KSB7CiAgICAgICAgICAgICBGcmFtZUxvYWRlcjo6cmVwb3J0TG9jYWxMb2FkRmFpbGVkKG1fZnJh
bWUsIGNvZGVCYXNlVVJMLnN0cmluZygpKTsKICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAg
ICB9CkBAIC0yNDcsNyArMjQ3LDcgQEAgRnJhbWUqIFN1YmZyYW1lTG9hZGVyOjpsb2FkU3ViZnJh
bWUoSFRNTEZyYW1lT3duZXJFbGVtZW50KiBvd25lckVsZW1lbnQsIGNvbnN0IEsKICAgICAgICAg
bWFyZ2luSGVpZ2h0ID0gby0+Z2V0TWFyZ2luSGVpZ2h0KCk7CiAgICAgfQogCi0gICAgaWYgKCFT
ZWN1cml0eU9yaWdpbjo6Y2FuTG9hZCh1cmwsIFN0cmluZygpLCBvd25lckVsZW1lbnQtPmRvY3Vt
ZW50KCkpKSB7CisgICAgaWYgKCFTZWN1cml0eU9yaWdpbjo6Y2FuRGlzcGxheSh1cmwsIFN0cmlu
ZygpLCBvd25lckVsZW1lbnQtPmRvY3VtZW50KCkpKSB7CiAgICAgICAgIEZyYW1lTG9hZGVyOjpy
ZXBvcnRMb2NhbExvYWRGYWlsZWQobV9mcmFtZSwgdXJsLnN0cmluZygpKTsKICAgICAgICAgcmV0
dXJuIDA7CiAgICAgfQpAQCAtMzM2LDcgKzMzNiw3IEBAIGJvb2wgU3ViZnJhbWVMb2FkZXI6Omxv
YWRQbHVnaW4oSFRNTFBsdWdJbkltYWdlRWxlbWVudCogcGx1Z2luRWxlbWVudCwgY29uc3QgS1VS
CiAgICAgaWYgKCFyZW5kZXJlciB8fCB1c2VGYWxsYmFjaykKICAgICAgICAgcmV0dXJuIGZhbHNl
OwogCi0gICAgaWYgKCFTZWN1cml0eU9yaWdpbjo6Y2FuTG9hZCh1cmwsIFN0cmluZygpLCBkb2N1
bWVudCgpKSkgeworICAgIGlmICghU2VjdXJpdHlPcmlnaW46OmNhbkRpc3BsYXkodXJsLCBTdHJp
bmcoKSwgZG9jdW1lbnQoKSkpIHsKICAgICAgICAgRnJhbWVMb2FkZXI6OnJlcG9ydExvY2FsTG9h
ZEZhaWxlZChtX2ZyYW1lLCB1cmwuc3RyaW5nKCkpOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAg
ICAgfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwIGIv
V2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4IGI2Y2NlMWQ0ODA2YzUz
ZDQ4YmU3ZjZlY2M3NWYyMmVmNjBhOWM1YmMuLjY5ZDRhNWM2MGM4NWEzNTM5NjllM2EyNTJmNDVm
NDExOGIxNzNhYzcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVy
LmNwcAorKysgYi9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAKQEAgLTczLDcg
KzczLDcgQEAgUGFzc1JlZlB0cjxTdWJyZXNvdXJjZUxvYWRlcj4gU3VicmVzb3VyY2VMb2FkZXI6
OmNyZWF0ZShGcmFtZSogZnJhbWUsIFN1YnJlc291cmMKIAogICAgIGlmIChzZWN1cml0eUNoZWNr
ID09IERvU2VjdXJpdHlDaGVjawogICAgICAgICAgICAgJiYgU2VjdXJpdHlPcmlnaW46OnJlc3Ry
aWN0QWNjZXNzVG9Mb2NhbCgpCi0gICAgICAgICAgICAmJiAhU2VjdXJpdHlPcmlnaW46OmNhbkxv
YWQocmVxdWVzdC51cmwoKSwgU3RyaW5nKCksIGZyYW1lLT5kb2N1bWVudCgpKSkgeworICAgICAg
ICAgICAgJiYgIVNlY3VyaXR5T3JpZ2luOjpjYW5EaXNwbGF5KHJlcXVlc3QudXJsKCksIFN0cmlu
ZygpLCBmcmFtZS0+ZG9jdW1lbnQoKSkpIHsKICAgICAgICAgRnJhbWVMb2FkZXI6OnJlcG9ydExv
Y2FsTG9hZEZhaWxlZChmcmFtZSwgcmVxdWVzdC51cmwoKS5zdHJpbmcoKSk7CiAgICAgICAgIHJl
dHVybiAwOwogICAgIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9TZWN1cml0eU9yaWdpbi5j
cHAgYi9XZWJDb3JlL3BhZ2UvU2VjdXJpdHlPcmlnaW4uY3BwCmluZGV4IDZlZGYzMmE5ZTE4Zjgw
NzZjMDBlYTZiYzU1YWM2Y2ZjMTlmMjFiOTMuLmI0NGEzNWVhNTljZWJhZDJiYzlmZmIyODExNGZi
NDA1NmQxZDZjM2MgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9TZWN1cml0eU9yaWdpbi5jcHAK
KysrIGIvV2ViQ29yZS9wYWdlL1NlY3VyaXR5T3JpZ2luLmNwcApAQCAtMjg0LDcgKzI4NCw3IEBA
IGJvb2wgU2VjdXJpdHlPcmlnaW46OmlzQWNjZXNzV2hpdGVMaXN0ZWQoY29uc3QgU2VjdXJpdHlP
cmlnaW4qIHRhcmdldE9yaWdpbikgY29uCiAgICAgcmV0dXJuIGZhbHNlOwogfQogICAKLWJvb2wg
U2VjdXJpdHlPcmlnaW46OmNhbkxvYWQoY29uc3QgS1VSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJl
ZmVycmVyLCBEb2N1bWVudCogZG9jdW1lbnQpCitib29sIFNlY3VyaXR5T3JpZ2luOjpjYW5EaXNw
bGF5KGNvbnN0IEtVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgRG9jdW1lbnQqIGRv
Y3VtZW50KQogewogI2lmIEVOQUJMRShCTE9CKQogICAgIGlmICh1cmwucHJvdG9jb2xJcygiYmxv
YiIpICYmIGRvY3VtZW50KSB7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvU2VjdXJpdHlPcmln
aW4uaCBiL1dlYkNvcmUvcGFnZS9TZWN1cml0eU9yaWdpbi5oCmluZGV4IDI2NmFkZTBkNjBmNDI3
MjI5MzUxYzQ1OTljNzU0MTY2NzE1MmFmZWQuLmNlNWNjOGNmMDQ0YzNlYzAyNjY0YzZlNDI4MTYy
MGQ0NWViZjlkZWUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9TZWN1cml0eU9yaWdpbi5oCisr
KyBiL1dlYkNvcmUvcGFnZS9TZWN1cml0eU9yaWdpbi5oCkBAIC04NCwxMCArODQsMTEgQEAgcHVi
bGljOgogICAgIC8vIGRyYXdpbmcgYW4gaW1hZ2Ugb250byBhbiBIVE1MIGNhbnZhcyBlbGVtZW50
IHdpdGggdGhlIGRyYXdJbWFnZSBBUEkuCiAgICAgYm9vbCB0YWludHNDYW52YXMoY29uc3QgS1VS
TCYpIGNvbnN0OwogCi0gICAgLy8gUmV0dXJucyB0cnVlIGZvciBhbnkgbm9uLWxvY2FsIFVSTC4g
SWYgZG9jdW1lbnQgcGFyYW1ldGVyIGlzIHN1cHBsaWVkLAotICAgIC8vIGl0cyBsb2NhbCBsb2Fk
IHBvbGljeSBkaWN0YXRlcywgb3RoZXJ3aXNlIGlmIHJlZmVycmVyIGlzIG5vbi1lbXB0eSBhbmQK
LSAgICAvLyByZXByZXNlbnRzIGEgbG9jYWwgZmlsZSwgdGhlbiB0aGUgbG9jYWwgbG9hZCBpcyBh
bGxvd2VkLgotICAgIHN0YXRpYyBib29sIGNhbkxvYWQoY29uc3QgS1VSTCYsIGNvbnN0IFN0cmlu
ZyYgcmVmZXJyZXIsIERvY3VtZW50KiBkb2N1bWVudCk7CisgICAgLy8gUmV0dXJucyB0cnVlIGlm
IHxkb2N1bWVudHwgY2FuIGRpc3BhbHkgY29udGVudCBmcm9tIHRoZSBnaXZlbiBVUkwgKGUuZy4s
CisgICAgLy8gaW4gYW4gaWZyYW1lIG9yIGFzIGFuIGltYWdlKS4gIEZvciBleGFtcGxlLCB3ZWIg
c2l0ZXMgZ2VuZXJhbGx5IGNhbm5vdAorICAgIC8vIGRpc3BsYXkgY29udGVudCBmcm9tIHRoZSB1
c2VyJ3MgZmlsZXMgc3lzdGVtLiAgSWYgfGRvY3VtZW50fCBpcyAwLAorICAgIC8vIHxyZWZlcnJl
cnwgaXMgdXNlZCB0byBtYWtlIHRoaXMgZGV0ZXJtaW5hdGlvbi4KKyAgICBzdGF0aWMgYm9vbCBj
YW5EaXNwbGF5KGNvbnN0IEtVUkwmLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBEb2N1bWVudCog
ZG9jdW1lbnQpOwogCiAgICAgLy8gUmV0dXJucyB0cnVlIGlmIHRoaXMgU2VjdXJpdHlPcmlnaW4g
Y2FuIGxvYWQgbG9jYWwgcmVzb3VyY2VzLCBzdWNoCiAgICAgLy8gYXMgaW1hZ2VzLCBpZnJhbWVz
LCBhbmQgc3R5bGUgc2hlZXRzLCBhbmQgY2FuIGxpbmsgdG8gbG9jYWwgVVJMcy4KZGlmZiAtLWdp
dCBhL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5WaWV3LmNwcCBiL1dlYkNvcmUvcGx1Z2lucy9QbHVn
aW5WaWV3LmNwcAppbmRleCBiZWU4ZGNkMDNjZGU1N2UwZDQ1NzIxMDU1MzMyYTM3YWQ1N2Y5MDNi
Li5iOGI4MGY1NTk2YmUzNTNhNzc1MjYwZGY5ZDMyMjQ3ZGY5MTJkZjBiIDEwMDY0NAotLS0gYS9X
ZWJDb3JlL3BsdWdpbnMvUGx1Z2luVmlldy5jcHAKKysrIGIvV2ViQ29yZS9wbHVnaW5zL1BsdWdp
blZpZXcuY3BwCkBAIC01MzcsNyArNTM3LDcgQEAgTlBFcnJvciBQbHVnaW5WaWV3Ojpsb2FkKGNv
bnN0IEZyYW1lTG9hZFJlcXVlc3QmIGZyYW1lTG9hZFJlcXVlc3QsIGJvb2wgc2VuZE5vdGkKICAg
ICAgICAgLy8gRm9yIHNlY3VyaXR5IHJlYXNvbnMsIG9ubHkgYWxsb3cgSlMgcmVxdWVzdHMgdG8g
YmUgbWFkZSBvbiB0aGUgZnJhbWUgdGhhdCBjb250YWlucyB0aGUgcGx1Zy1pbi4KICAgICAgICAg
aWYgKCF0YXJnZXRGcmFtZU5hbWUuaXNOdWxsKCkgJiYgbV9wYXJlbnRGcmFtZS0+dHJlZSgpLT5m
aW5kKHRhcmdldEZyYW1lTmFtZSkgIT0gbV9wYXJlbnRGcmFtZSkKICAgICAgICAgICAgIHJldHVy
biBOUEVSUl9JTlZBTElEX1BBUkFNOwotICAgIH0gZWxzZSBpZiAoIVNlY3VyaXR5T3JpZ2luOjpj
YW5Mb2FkKHVybCwgU3RyaW5nKCksIG1fcGFyZW50RnJhbWUtPmRvY3VtZW50KCkpKQorICAgIH0g
ZWxzZSBpZiAoIVNlY3VyaXR5T3JpZ2luOjpjYW5EaXNwbGF5KHVybCwgU3RyaW5nKCksIG1fcGFy
ZW50RnJhbWUtPmRvY3VtZW50KCkpKQogICAgICAgICAgICAgcmV0dXJuIE5QRVJSX0dFTkVSSUNf
RVJST1I7CiAKICAgICBQbHVnaW5SZXF1ZXN0KiByZXF1ZXN0ID0gbmV3IFBsdWdpblJlcXVlc3Qo
ZnJhbWVMb2FkUmVxdWVzdCwgc2VuZE5vdGlmaWNhdGlvbiwgbm90aWZ5RGF0YSwgYXJlUG9wdXBz
QWxsb3dlZCgpKTsKZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvV2ViS2l0L21h
Yy9DaGFuZ2VMb2cKaW5kZXggMmFiNjljMWIyNWM4OWM4ZTQxZDljMTgyMTE1YjI4ZDY3ZDIxZDUx
MC4uYzhlMWVkY2NhMzdmN2ViZmVkMTUxZGQ3ZTI1YzViZTM0NGVlYThlNyAxMDA2NDQKLS0tIGEv
V2ViS2l0L21hYy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwyMyBAQAorMjAxMC0wOS0wMyAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbmFtZSBTZWN1
cml0eU9yaWdpbjo6Y2FuTG9hZCB0byBjYW5EaXNwbGF5CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NTIxNAorCisgICAgICAgIFByb3BhZ2F0ZSBuYW1l
IGNoYW5nZS4KKworICAgICAgICAqIFBsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFu
Y2VQcm94eS5tbToKKyAgICAgICAgKFdlYktpdDo6TmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5
Ojpsb2FkUmVxdWVzdCk6CisgICAgICAgICogUGx1Z2lucy9XZWJOZXRzY2FwZVBsdWdpblN0cmVh
bS5tbToKKyAgICAgICAgKFdlYk5ldHNjYXBlUGx1Z2luU3RyZWFtOjpXZWJOZXRzY2FwZVBsdWdp
blN0cmVhbSk6CisgICAgICAgICogUGx1Z2lucy9XZWJOZXRzY2FwZVBsdWdpblZpZXcubW06Cisg
ICAgICAgICgtW1dlYk5ldHNjYXBlUGx1Z2luVmlldyBsb2FkUmVxdWVzdDppblRhcmdldDp3aXRo
Tm90aWZ5RGF0YTpzZW5kTm90aWZpY2F0aW9uOl0pOgorICAgICAgICAqIFBsdWdpbnMvV2ViUGx1
Z2luQ29udGFpbmVyQ2hlY2subW06CisgICAgICAgICgtW1dlYlBsdWdpbkNvbnRhaW5lckNoZWNr
IF9pc0ZvcmJpZGRlbkZpbGVMb2FkXSk6CisgICAgICAgICogV2ViVmlldy9XZWJGcmFtZS5tbToK
KyAgICAgICAgKC1bV2ViRnJhbWUgX2FsbG93c0ZvbGxvd2luZ0xpbms6XSk6CisKIDIwMTAtMDkt
MDMgIEpvaG4gU3VsbGl2YW4gIDxzdWxsaXZhbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgRGFuIEJlcm5zdGVpbi4KZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvUGx1Z2lucy9Ib3N0
ZWQvTmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tIGIvV2ViS2l0L21hYy9QbHVnaW5zL0hv
c3RlZC9OZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkubW0KaW5kZXggYThkZDA5YjBiZmJlZjdj
NWYwODJhMGYyNWViMTdlYTJjODM4YTk1Yi4uODhkZjRjZjk0Mzg5ZGFkMTQzMzMzMDliNWQ4NTYy
NmZhYjAzZGE4NiAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9OZXRzY2Fw
ZVBsdWdpbkluc3RhbmNlUHJveHkubW0KKysrIGIvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9O
ZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkubW0KQEAgLTc2Miw3ICs3NjIsNyBAQCBOUEVycm9y
IE5ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eTo6bG9hZFJlcXVlc3QoTlNVUkxSZXF1ZXN0ICpy
ZXF1ZXN0LCBjb25zdCBjaAogICAgICAgICAgICAgcmV0dXJuIE5QRVJSX0dFTkVSSUNfRVJST1I7
CiAgICAgICAgIH0KICAgICB9IGVsc2UgewotICAgICAgICBpZiAoIVNlY3VyaXR5T3JpZ2luOjpj
YW5Mb2FkKFVSTCwgU3RyaW5nKCksIGNvcmUoW21fcGx1Z2luVmlldyB3ZWJGcmFtZV0pLT5kb2N1
bWVudCgpKSkKKyAgICAgICAgaWYgKCFTZWN1cml0eU9yaWdpbjo6Y2FuRGlzcGxheShVUkwsIFN0
cmluZygpLCBjb3JlKFttX3BsdWdpblZpZXcgd2ViRnJhbWVdKS0+ZG9jdW1lbnQoKSkpCiAgICAg
ICAgICAgICByZXR1cm4gTlBFUlJfR0VORVJJQ19FUlJPUjsKICAgICB9CiAgICAgCmRpZmYgLS1n
aXQgYS9XZWJLaXQvbWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5TdHJlYW0ubW0gYi9XZWJL
aXQvbWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5TdHJlYW0ubW0KaW5kZXggNWMxZThlZWMw
ZDNmYWIxNmY3NWEyYWIzMDYyM2RkYTk4OWY2YzgzOS4uMzVhZjQzOTkxYWJlMTYyMTVkNjlmNmU4
OGY0ZmM1MjZmMTQyNjRmNiAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9QbHVnaW5zL1dlYk5ldHNj
YXBlUGx1Z2luU3RyZWFtLm1tCisrKyBiL1dlYktpdC9tYWMvUGx1Z2lucy9XZWJOZXRzY2FwZVBs
dWdpblN0cmVhbS5tbQpAQCAtMTYxLDcgKzE2MSw3IEBAIFdlYk5ldHNjYXBlUGx1Z2luU3RyZWFt
OjpXZWJOZXRzY2FwZVBsdWdpblN0cmVhbShOU1VSTFJlcXVlc3QgKnJlcXVlc3QsIE5QUCBwbHVn
CiAgICAgV2ViTmV0c2NhcGVQbHVnaW5WaWV3ICp2aWV3ID0gKFdlYk5ldHNjYXBlUGx1Z2luVmll
dyAqKXBsdWdpbi0+bmRhdGE7CiAgICAgCiAgICAgLy8gVGhpcyBjaGVjayBoYXMgYWxyZWFkeSBi
ZWVuIGRvbmUgYnkgdGhlIHBsdWctaW4gdmlldy4KLSAgICBBU1NFUlQoU2VjdXJpdHlPcmlnaW46
OmNhbkxvYWQoW3JlcXVlc3QgVVJMXSwgU3RyaW5nKCksIGNvcmUoW3ZpZXcgd2ViRnJhbWVdKS0+
ZG9jdW1lbnQoKSkpOworICAgIEFTU0VSVChTZWN1cml0eU9yaWdpbjo6Y2FuRGlzcGxheShbcmVx
dWVzdCBVUkxdLCBTdHJpbmcoKSwgY29yZShbdmlldyB3ZWJGcmFtZV0pLT5kb2N1bWVudCgpKSk7
CiAgICAgCiAgICAgQVNTRVJUKFtyZXF1ZXN0IFVSTF0pOwogICAgIEFTU0VSVChwbHVnaW4pOwpk
aWZmIC0tZ2l0IGEvV2ViS2l0L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2luVmlldy5tbSBi
L1dlYktpdC9tYWMvUGx1Z2lucy9XZWJOZXRzY2FwZVBsdWdpblZpZXcubW0KaW5kZXggYTQ0ODFi
YzE2NjJiNzhlMDJhMTU5MTgxNmU5MzA4YmNkNTQ3NDEzMi4uZTk4YzZiNzY5MDIyMzY3ODkyZTEx
ZmYwNTc2ZGMwNDg4ZDdkYWIzNSAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9QbHVnaW5zL1dlYk5l
dHNjYXBlUGx1Z2luVmlldy5tbQorKysgYi9XZWJLaXQvbWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQ
bHVnaW5WaWV3Lm1tCkBAIC0xNzI4LDcgKzE3MjgsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgZ2V0
TlBSZWN0KGNvbnN0IE5TUmVjdCYgbnIsIE5QUmVjdCYgbnByKQogICAgICAgICAgICAgcmV0dXJu
IE5QRVJSX0lOVkFMSURfUEFSQU07CiAgICAgICAgIH0KICAgICB9IGVsc2UgewotICAgICAgICBp
ZiAoIVNlY3VyaXR5T3JpZ2luOjpjYW5Mb2FkKFVSTCwgU3RyaW5nKCksIGNvcmUoW3NlbGYgd2Vi
RnJhbWVdKS0+ZG9jdW1lbnQoKSkpCisgICAgICAgIGlmICghU2VjdXJpdHlPcmlnaW46OmNhbkRp
c3BsYXkoVVJMLCBTdHJpbmcoKSwgY29yZShbc2VsZiB3ZWJGcmFtZV0pLT5kb2N1bWVudCgpKSkK
ICAgICAgICAgICAgIHJldHVybiBOUEVSUl9HRU5FUklDX0VSUk9SOwogICAgIH0KICAgICAgICAg
CmRpZmYgLS1naXQgYS9XZWJLaXQvbWFjL1BsdWdpbnMvV2ViUGx1Z2luQ29udGFpbmVyQ2hlY2su
bW0gYi9XZWJLaXQvbWFjL1BsdWdpbnMvV2ViUGx1Z2luQ29udGFpbmVyQ2hlY2subW0KaW5kZXgg
NTYwOWQ4MDY4NGZhM2I0NDAzYmU3ZGU0Y2Q4NzVmMDdkNzY3YTk0Ny4uZTI3M2JmYzgzMzhmOTJl
NWQ3ODQ0NWQ1MmU0ZDM1NWJiZjJjYTRjOCAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9QbHVnaW5z
L1dlYlBsdWdpbkNvbnRhaW5lckNoZWNrLm1tCisrKyBiL1dlYktpdC9tYWMvUGx1Z2lucy9XZWJQ
bHVnaW5Db250YWluZXJDaGVjay5tbQpAQCAtOTksNyArOTksNyBAQCB1c2luZyBuYW1lc3BhY2Ug
V2ViQ29yZTsKIHsKICAgIEZyYW1lKiBjb3JlRnJhbWUgPSBjb3JlKFtfY29udHJvbGxlciB3ZWJG
cmFtZV0pOwogICAgQVNTRVJUKGNvcmVGcmFtZSk7Ci0gICBpZiAoIVNlY3VyaXR5T3JpZ2luOjpj
YW5Mb2FkKFtfcmVxdWVzdCBVUkxdLCBTdHJpbmcoKSwgY29yZUZyYW1lLT5kb2N1bWVudCgpKSkg
eworICAgaWYgKCFTZWN1cml0eU9yaWdpbjo6Y2FuRGlzcGxheShbX3JlcXVlc3QgVVJMXSwgU3Ry
aW5nKCksIGNvcmVGcmFtZS0+ZG9jdW1lbnQoKSkpIHsKICAgICAgICBbc2VsZiBfY29udGludWVX
aXRoUG9saWN5OlBvbGljeUlnbm9yZV07CiAgICAgICAgcmV0dXJuIFlFUzsKICAgIH0KZGlmZiAt
LWdpdCBhL1dlYktpdC9tYWMvV2ViVmlldy9XZWJGcmFtZS5tbSBiL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJGcmFtZS5tbQppbmRleCA4ZGM0MDM5NmU1MDYwYzQzNGI1YWU3NjUxMTE2OGJmOGU5OWZi
YmE0Li42MzE1ZDQzOGRmMTM4ZWJlMjcxMmVmZTIzOThiNTg4YmUxNWMwNGI5IDEwMDY0NAotLS0g
YS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViRnJhbWUubW0KKysrIGIvV2ViS2l0L21hYy9XZWJWaWV3
L1dlYkZyYW1lLm1tCkBAIC0xMjgyLDcgKzEyODIsNyBAQCBzdGF0aWMgaW5saW5lIFdlYkRhdGFT
b3VyY2UgKmRhdGFTb3VyY2UoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKIHsKICAgICBpZiAoIV9w
cml2YXRlLT5jb3JlRnJhbWUpCiAgICAgICAgIHJldHVybiBZRVM7Ci0gICAgcmV0dXJuIFNlY3Vy
aXR5T3JpZ2luOjpjYW5Mb2FkKFVSTCwgU3RyaW5nKCksIF9wcml2YXRlLT5jb3JlRnJhbWUtPmRv
Y3VtZW50KCkpOworICAgIHJldHVybiBTZWN1cml0eU9yaWdpbjo6Y2FuRGlzcGxheShVUkwsIFN0
cmluZygpLCBfcHJpdmF0ZS0+Y29yZUZyYW1lLT5kb2N1bWVudCgpKTsKIH0KIAogLSAoTlNTdHJp
bmcgKilfc3RyaW5nQnlFdmFsdWF0aW5nSmF2YVNjcmlwdEZyb21TdHJpbmc6KE5TU3RyaW5nICop
c3RyaW5nIHdpdGhHbG9iYWxPYmplY3Q6KEpTT2JqZWN0UmVmKWdsb2JhbE9iamVjdFJlZiBpblNj
cmlwdFdvcmxkOihXZWJTY3JpcHRXb3JsZCAqKXdvcmxkCmRpZmYgLS1naXQgYS9XZWJLaXQvd2lu
L0NoYW5nZUxvZyBiL1dlYktpdC93aW4vQ2hhbmdlTG9nCmluZGV4IDk3MzUxNmQ3Y2UzZDA4NmU1
MDc2Yjk1NTYyY2IwMGFlNTZiODYyODIuLmZjYjM4OThmMTRkNjEwNTQzOTc1MWVkNjdmMzM5M2Ri
M2VjNTFkOTAgMTAwNjQ0Ci0tLSBhL1dlYktpdC93aW4vQ2hhbmdlTG9nCisrKyBiL1dlYktpdC93
aW4vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTAtMDktMDMgIEFkYW0gQmFydGggIDxh
YmFydGhAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBSZW5hbWUgU2VjdXJpdHlPcmlnaW46OmNhbkxvYWQgdG8gY2FuRGlzcGxheQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDUyMTQKKwor
ICAgICAgICBQcm9wYWdhdGUgbmFtZSBjaGFuZ2UuCisKKyAgICAgICAgKiBXZWJGcmFtZS5jcHA6
CisgICAgICAgIChXZWJGcmFtZTo6YWxsb3dzRm9sbG93aW5nTGluayk6CisKIDIwMTAtMDktMDMg
IEFkYW0gUm9iZW4gIDxhcm9iZW5AYXBwbGUuY29tPgogCiAgICAgICAgIEF0dGVtcHQgdG8gZml4
aW5nIFdpbmRvd3MgbmlnaHRsaWVzIGFnYWluCmRpZmYgLS1naXQgYS9XZWJLaXQvd2luL1dlYkZy
YW1lLmNwcCBiL1dlYktpdC93aW4vV2ViRnJhbWUuY3BwCmluZGV4IGQxMjk4OWI5NTAzYzI1MmUy
NjRjYTQ5MGY5NDdmMWUwN2QyZTgwZDEuLjdkMTQ3YjgzZDMzYzg0ZTA5YzVjNzk2OTM1YTg2NmMz
ZjE3NjEzMjIgMTAwNjQ0Ci0tLSBhL1dlYktpdC93aW4vV2ViRnJhbWUuY3BwCisrKyBiL1dlYktp
dC93aW4vV2ViRnJhbWUuY3BwCkBAIC0xMzUyLDcgKzEzNTIsNyBAQCBIUkVTVUxUIFdlYkZyYW1l
OjphbGxvd3NGb2xsb3dpbmdMaW5rKEJTVFIgdXJsLCBCT09MKiByZXN1bHQpCiAgICAgaWYgKCFm
cmFtZSkKICAgICAgICAgcmV0dXJuIEVfRkFJTDsKIAotICAgICpyZXN1bHQgPSBTZWN1cml0eU9y
aWdpbjo6Y2FuTG9hZChNYXJzaGFsbGluZ0hlbHBlcnM6OkJTVFJUb0tVUkwodXJsKSwgU3RyaW5n
KCksIGZyYW1lLT5kb2N1bWVudCgpKTsKKyAgICAqcmVzdWx0ID0gU2VjdXJpdHlPcmlnaW46OmNh
bkRpc3BsYXkoTWFyc2hhbGxpbmdIZWxwZXJzOjpCU1RSVG9LVVJMKHVybCksIFN0cmluZygpLCBm
cmFtZS0+ZG9jdW1lbnQoKSk7CiAgICAgcmV0dXJuIFNfT0s7CiB9CiAKZGlmZiAtLWdpdCBhL1dl
YktpdDIvQ2hhbmdlTG9nIGIvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNzFhZGZmZjYyZTZiMTM0
MzQxYWMwNGMzNWUxNmM2N2FlOWZjNzdiYi4uM2YwZDVkMjY4NWIwOGViZTk5NzFjMzg2OTg4NWQw
MTUwM2ZhMGVlMyAxMDA2NDQKLS0tIGEvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0Mi9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMC0wOS0wMyAgQWRhbSBCYXJ0aCAgPGFiYXJ0
aEB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIFJlbmFtZSBTZWN1cml0eU9yaWdpbjo6Y2FuTG9hZCB0byBjYW5EaXNwbGF5CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NTIxNAorCisgICAg
ICAgIFByb3BhZ2F0ZSBuYW1lIGNoYW5nZS4KKworICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lu
cy9QbHVnaW5WaWV3LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6cGVyZm9ybUZy
YW1lTG9hZFVSTFJlcXVlc3QpOgorCiAyMDEwLTA5LTAzICBTYW0gV2VpbmlnICA8c2FtQHdlYmtp
dC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgR2F2aW4gQmFycmFjbG91Z2guCmRpZmYgLS1n
aXQgYS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmNwcCBiL1dlYktpdDIv
V2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwCmluZGV4IGZjMDdlM2UxYTM4MTNlZjlm
NTk4ZGQwZmI4YWMyOTZmZTEzNWVjMDcuLjNlODMwNzljZTgwZWYzMjE3ZGVhYWU3NmIyZmJhMzUy
MjEyOGU4NjMgMTAwNjQ0Ci0tLSBhL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZp
ZXcuY3BwCisrKyBiL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwCkBA
IC01MTUsNyArNTE1LDcgQEAgdm9pZCBQbHVnaW5WaWV3OjpwZXJmb3JtRnJhbWVMb2FkVVJMUmVx
dWVzdChVUkxSZXF1ZXN0KiByZXF1ZXN0KQogICAgICAgICByZXR1cm47CiAKICAgICAvLyBDaGVj
ayBpZiB0aGlzIGlzIFVSTCBjYW4gYmUgbG9hZGVkLgotICAgIGlmICghU2VjdXJpdHlPcmlnaW46
OmNhbkxvYWQocmVxdWVzdC0+cmVxdWVzdCgpLnVybCgpLCBTdHJpbmcoKSwgbV9wbHVnaW5FbGVt
ZW50LT5kb2N1bWVudCgpKSkgeworICAgIGlmICghU2VjdXJpdHlPcmlnaW46OmNhbkRpc3BsYXko
cmVxdWVzdC0+cmVxdWVzdCgpLnVybCgpLCBTdHJpbmcoKSwgbV9wbHVnaW5FbGVtZW50LT5kb2N1
bWVudCgpKSkgewogICAgICAgICAvLyBXZSBjYW4ndCBsb2FkIHRoZSByZXF1ZXN0LCBzZW5kIGJh
Y2sgYSByZXBseSB0byB0aGUgcGx1Zy1pbi4KICAgICAgICAgbV9wbHVnaW4tPmZyYW1lRGlkRmFp
bChyZXF1ZXN0LT5yZXF1ZXN0SUQoKSwgZmFsc2UpOwogICAgICAgICByZXR1cm47Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>66614</attachid>
            <date>2010-09-05 23:41:57 -0700</date>
            <delta_ts>2010-09-06 00:59:59 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-45214-20100905234156.patch</filename>
            <type>text/plain</type>
            <size>17574</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2NjgxMSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzYgQEAKKzIwMTAtMDktMDUgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICBSZW5hbWUg
U2VjdXJpdHlPcmlnaW46OmNhbkxvYWQgdG8gY2FuRGlzcGxheQorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDUyMTQKKworICAgICAgICBjYW5Mb2FkIGlz
IGEgcHJldHR5IG9wYXF1ZSBuYW1lLiAgVGhpcyBmdW5jdGlvbiBpcyByZWFsbHkgYWJvdXQgd2hl
dGhlcgorICAgICAgICB5b3UgY2FuIGRpc3BsYXkgdGhlIGNvbnRlbnRzIG9mIHRoZSBVUkwgaW4g
YW4gaWZyYW1lLCBhbiBpbWFnZSwgb3IgYQorICAgICAgICBwbHVnaW4uCisKKyAgICAgICAgKiBX
ZWJDb3JlLmV4cC5pbjoKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6aXNTYWZlVG9Mb2FkVVJMKToKKyAgICAg
ICAgKiBsb2FkZXIvQ2FjaGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGU6OnJlcXVlc3RS
ZXNvdXJjZSk6CisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkRnJhbWVSZXF1ZXN0KToKKyAgICAgICAgKiBsb2FkZXIv
UGluZ0xvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQaW5nTG9hZGVyOjpsb2FkSW1hZ2Up
OgorICAgICAgICAqIGxvYWRlci9TdWJmcmFtZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTdWJmcmFtZUxvYWRlcjo6bG9hZE1lZGlhUGxheWVyUHJveHlQbHVnaW4pOgorICAgICAgICAo
V2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmNyZWF0ZUphdmFBcHBsZXRXaWRnZXQpOgorICAgICAg
ICAoV2ViQ29yZTo6U3ViZnJhbWVMb2FkZXI6OmxvYWRTdWJmcmFtZSk6CisgICAgICAgIChXZWJD
b3JlOjpTdWJmcmFtZUxvYWRlcjo6bG9hZFBsdWdpbik6CisgICAgICAgICogbG9hZGVyL1N1YnJl
c291cmNlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN1YnJlc291cmNlTG9hZGVyOjpj
cmVhdGUpOgorICAgICAgICAqIHBhZ2UvU2VjdXJpdHlPcmlnaW4uY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6U2VjdXJpdHlPcmlnaW46OmNhbkRpc3BsYXkpOgorICAgICAgICAqIHBhZ2UvU2VjdXJp
dHlPcmlnaW4uaDoKKyAgICAgICAgKiBwbHVnaW5zL1BsdWdpblZpZXcuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6UGx1Z2luVmlldzo6bG9hZCk6CisKIDIwMTAtMDktMDUgIEtlbm5ldGggUnVzc2Vs
bCAgPGtickBnb29nbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEZpc2hlci4K
SW5kZXg6IFdlYkNvcmUvV2ViQ29yZS5leHAuaW4KPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9XZWJD
b3JlLmV4cC5pbgkocmV2aXNpb24gNjY4MTEpCisrKyBXZWJDb3JlL1dlYkNvcmUuZXhwLmluCSh3
b3JraW5nIGNvcHkpCkBAIC0zMTQsNiArMzE0LDcgQEAgX19aTjdXZWJDb3JlMTRTVkdTTUlMRWxl
bWVudDEzaXNTTUlMRWxlbQogX19aTjdXZWJDb3JlMTRTY2hlbWVSZWdpc3RyeTI0cmVnaXN0ZXJV
UkxTY2hlbWVBc0xvY2FsRVJLTjNXVEY2U3RyaW5nRQogX19aTjdXZWJDb3JlMTRTY2hlbWVSZWdp
c3RyeTI1cmVnaXN0ZXJVUkxTY2hlbWVBc1NlY3VyZUVSS04zV1RGNlN0cmluZ0UKIF9fWk43V2Vi
Q29yZTE0U2NoZW1lUmVnaXN0cnkzMnJlZ2lzdGVyVVJMU2NoZW1lQXNFbXB0eURvY3VtZW50RVJL
TjNXVEY2U3RyaW5nRQorX19aTjdXZWJDb3JlMTRTZWN1cml0eU9yaWdpbjEwY2FuRGlzcGxheUVS
S05TXzRLVVJMRVJLTjNXVEY2U3RyaW5nRVBOU184RG9jdW1lbnRFCiBfX1pON1dlYkNvcmUxNFNl
Y3VyaXR5T3JpZ2luMTZjcmVhdGVGcm9tU3RyaW5nRVJLTjNXVEY2U3RyaW5nRQogX19aTjdXZWJD
b3JlMTRTZWN1cml0eU9yaWdpbjE4c2V0TG9jYWxMb2FkUG9saWN5RU5TMF8xNUxvY2FsTG9hZFBv
bGljeUUKIF9fWk43V2ViQ29yZTE0U2VjdXJpdHlPcmlnaW4xOHNob3VsZEhpZGVSZWZlcnJlckVS
S05TXzRLVVJMRVJLTjNXVEY2U3RyaW5nRQpAQCAtMzIyLDcgKzMyMyw2IEBAIF9fWk43V2ViQ29y
ZTE0U2VjdXJpdHlPcmlnaW4yOWFkZE9yaWdpbkEKIF9fWk43V2ViQ29yZTE0U2VjdXJpdHlPcmln
aW4zMnJlbW92ZU9yaWdpbkFjY2Vzc1doaXRlbGlzdEVudHJ5RVJLUzBfUktOM1dURjZTdHJpbmdF
UzZfYgogX19aTjdXZWJDb3JlMTRTZWN1cml0eU9yaWdpbjQwc2V0RG9tYWluUmVsYXhhdGlvbkZv
cmJpZGRlbkZvclVSTFNjaGVtZUViUktOM1dURjZTdHJpbmdFCiBfX1pON1dlYkNvcmUxNFNlY3Vy
aXR5T3JpZ2luNmNyZWF0ZUVSS05TXzRLVVJMRWkKLV9fWk43V2ViQ29yZTE0U2VjdXJpdHlPcmln
aW43Y2FuTG9hZEVSS05TXzRLVVJMRVJLTjNXVEY2U3RyaW5nRVBOU184RG9jdW1lbnRFCiBfX1pO
N1dlYkNvcmUxNUFyY2hpdmVSZXNvdXJjZTZjcmVhdGVFTjNXVEYxMFBhc3NSZWZQdHJJTlNfMTJT
aGFyZWRCdWZmZXJFRUVSS05TXzRLVVJMRVJLTlMxXzZTdHJpbmdFU0FfU0FfUktOU18xNlJlc291
cmNlUmVzcG9uc2VFCiBfX1pON1dlYkNvcmUxNURPTVdyYXBwZXJXb3JsZDE1dW5yZWdpc3Rlcldv
cmxkRXYKIF9fWk43V2ViQ29yZTE1RE9NV3JhcHBlcldvcmxkRDFFdgpJbmRleDogV2ViQ29yZS9o
dG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaHRtbC9IVE1M
TWVkaWFFbGVtZW50LmNwcAkocmV2aXNpb24gNjY4MTEpCisrKyBXZWJDb3JlL2h0bWwvSFRNTE1l
ZGlhRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY5OSw3ICs2OTksNyBAQCBib29sIEhU
TUxNZWRpYUVsZW1lbnQ6OmlzU2FmZVRvTG9hZFVSTChjCiAgICAgRnJhbWVMb2FkZXIqIGxvYWRl
ciA9IGZyYW1lID8gZnJhbWUtPmxvYWRlcigpIDogMDsKIAogICAgIC8vIGRvbid0IGFsbG93IHJl
bW90ZSB0byBsb2NhbCB1cmxzLCBhbmQgY2hlY2sgd2l0aCB0aGUgZnJhbWUgbG9hZGVyIGNsaWVu
dC4KLSAgICBpZiAoIWxvYWRlciB8fCAhU2VjdXJpdHlPcmlnaW46OmNhbkxvYWQodXJsLCBTdHJp
bmcoKSwgZG9jdW1lbnQoKSkpIHsKKyAgICBpZiAoIWxvYWRlciB8fCAhU2VjdXJpdHlPcmlnaW46
OmNhbkRpc3BsYXkodXJsLCBTdHJpbmcoKSwgZG9jdW1lbnQoKSkpIHsKICAgICAgICAgaWYgKGFj
dGlvbklmSW52YWxpZCA9PSBDb21wbGFpbikKICAgICAgICAgICAgIEZyYW1lTG9hZGVyOjpyZXBv
cnRMb2NhbExvYWRGYWlsZWQoZnJhbWUsIHVybC5zdHJpbmcoKSk7CiAgICAgICAgIHJldHVybiBm
YWxzZTsKSW5kZXg6IFdlYkNvcmUvbG9hZGVyL0NhY2hlLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJD
b3JlL2xvYWRlci9DYWNoZS5jcHAJKHJldmlzaW9uIDY2ODExKQorKysgV2ViQ29yZS9sb2FkZXIv
Q2FjaGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMDYsNyArMTA2LDcgQEAgQ2FjaGVkUmVzb3Vy
Y2UqIENhY2hlOjpyZXF1ZXN0UmVzb3VyY2UoRAogICAgIGlmIChyZXNvdXJjZSAmJiByZXF1ZXN0
SXNQcmVsb2FkICYmICFyZXNvdXJjZS0+aXNQcmVsb2FkZWQoKSkKICAgICAgICAgcmV0dXJuIDA7
CiAgICAgCi0gICAgaWYgKFNlY3VyaXR5T3JpZ2luOjpyZXN0cmljdEFjY2Vzc1RvTG9jYWwoKSAm
JiAhU2VjdXJpdHlPcmlnaW46OmNhbkxvYWQodXJsLCBTdHJpbmcoKSwgZG9jTG9hZGVyLT5kb2Mo
KSkpIHsKKyAgICBpZiAoU2VjdXJpdHlPcmlnaW46OnJlc3RyaWN0QWNjZXNzVG9Mb2NhbCgpICYm
ICFTZWN1cml0eU9yaWdpbjo6Y2FuRGlzcGxheSh1cmwsIFN0cmluZygpLCBkb2NMb2FkZXItPmRv
YygpKSkgewogICAgICAgICBEb2N1bWVudCogZG9jID0gZG9jTG9hZGVyLT5kb2MoKTsKICAgICAg
ICAgaWYgKGRvYyAmJiAhcmVxdWVzdElzUHJlbG9hZCkKICAgICAgICAgICAgIEZyYW1lTG9hZGVy
OjpyZXBvcnRMb2NhbExvYWRGYWlsZWQoZG9jLT5mcmFtZSgpLCB1cmwuc3RyaW5nKCkpOwpJbmRl
eDogV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
bG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAkocmV2aXNpb24gNjY4MTEpCisrKyBXZWJDb3JlL2xvYWRl
ci9GcmFtZUxvYWRlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEyNjEsNyArMTI2MSw3IEBAIHZv
aWQgRnJhbWVMb2FkZXI6OmxvYWRGcmFtZVJlcXVlc3QoY29uc3QKIAogICAgIEFTU0VSVChmcmFt
ZSgpLT5kb2N1bWVudCgpKTsKICAgICBpZiAoU2NoZW1lUmVnaXN0cnk6OnNob3VsZFRyZWF0VVJM
QXNMb2NhbCh1cmwuc3RyaW5nKCkpICYmICFpc0ZlZWRXaXRoTmVzdGVkUHJvdG9jb2xJbkhUVFBG
YW1pbHkodXJsKSkgewotICAgICAgICBpZiAoIVNlY3VyaXR5T3JpZ2luOjpjYW5Mb2FkKHVybCwg
U3RyaW5nKCksIGZyYW1lKCktPmRvY3VtZW50KCkpICYmICFTZWN1cml0eU9yaWdpbjo6Y2FuTG9h
ZCh1cmwsIHJlZmVycmVyLCAwKSkgeworICAgICAgICBpZiAoIVNlY3VyaXR5T3JpZ2luOjpjYW5E
aXNwbGF5KHVybCwgU3RyaW5nKCksIGZyYW1lKCktPmRvY3VtZW50KCkpICYmICFTZWN1cml0eU9y
aWdpbjo6Y2FuRGlzcGxheSh1cmwsIHJlZmVycmVyLCAwKSkgewogICAgICAgICAgICAgRnJhbWVM
b2FkZXI6OnJlcG9ydExvY2FsTG9hZEZhaWxlZChtX2ZyYW1lLCB1cmwuc3RyaW5nKCkpOwogICAg
ICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CkluZGV4OiBXZWJDb3JlL2xvYWRlci9QaW5nTG9h
ZGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2xvYWRlci9QaW5nTG9hZGVyLmNwcAkocmV2
aXNpb24gNjY4MTEpCisrKyBXZWJDb3JlL2xvYWRlci9QaW5nTG9hZGVyLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtNDIsNyArNDIsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHZvaWQgUGluZ0xv
YWRlcjo6bG9hZEltYWdlKEZyYW1lKiBmcmFtZSwgY29uc3QgS1VSTCYgdXJsKQogewotICAgIGlm
IChTZWN1cml0eU9yaWdpbjo6cmVzdHJpY3RBY2Nlc3NUb0xvY2FsKCkgJiYgIVNlY3VyaXR5T3Jp
Z2luOjpjYW5Mb2FkKHVybCwgU3RyaW5nKCksIGZyYW1lLT5kb2N1bWVudCgpKSkgeworICAgIGlm
IChTZWN1cml0eU9yaWdpbjo6cmVzdHJpY3RBY2Nlc3NUb0xvY2FsKCkgJiYgIVNlY3VyaXR5T3Jp
Z2luOjpjYW5EaXNwbGF5KHVybCwgU3RyaW5nKCksIGZyYW1lLT5kb2N1bWVudCgpKSkgewogICAg
ICAgICBGcmFtZUxvYWRlcjo6cmVwb3J0TG9jYWxMb2FkRmFpbGVkKGZyYW1lLCB1cmwpOwogICAg
ICAgICByZXR1cm47CiAgICAgfQpJbmRleDogV2ViQ29yZS9sb2FkZXIvU3ViZnJhbWVMb2FkZXIu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvbG9hZGVyL1N1YmZyYW1lTG9hZGVyLmNwcAkocmV2
aXNpb24gNjY4MTEpCisrKyBXZWJDb3JlL2xvYWRlci9TdWJmcmFtZUxvYWRlci5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTE0Nyw3ICsxNDcsNyBAQCBQYXNzUmVmUHRyPFdpZGdldD4gU3ViZnJhbWVM
b2FkZXI6OmxvYWRNCiAgICAgaWYgKCF1cmwuaXNFbXB0eSgpKQogICAgICAgICBjb21wbGV0ZWRV
UkwgPSBjb21wbGV0ZVVSTCh1cmwpOwogCi0gICAgaWYgKCFTZWN1cml0eU9yaWdpbjo6Y2FuTG9h
ZChjb21wbGV0ZWRVUkwsIFN0cmluZygpLCBtX2ZyYW1lLT5kb2N1bWVudCgpKSkgeworICAgIGlm
ICghU2VjdXJpdHlPcmlnaW46OmNhbkRpc3BsYXkoY29tcGxldGVkVVJMLCBTdHJpbmcoKSwgbV9m
cmFtZS0+ZG9jdW1lbnQoKSkpIHsKICAgICAgICAgRnJhbWVMb2FkZXI6OnJlcG9ydExvY2FsTG9h
ZEZhaWxlZChtX2ZyYW1lLCBjb21wbGV0ZWRVUkwuc3RyaW5nKCkpOwogICAgICAgICByZXR1cm4g
MDsKICAgICB9CkBAIC0yMDUsNyArMjA1LDcgQEAgUGFzc1JlZlB0cjxXaWRnZXQ+IFN1YmZyYW1l
TG9hZGVyOjpjcmVhdAogCiAgICAgaWYgKCFjb2RlQmFzZVVSTFN0cmluZy5pc0VtcHR5KCkpIHsK
ICAgICAgICAgS1VSTCBjb2RlQmFzZVVSTCA9IGNvbXBsZXRlVVJMKGNvZGVCYXNlVVJMU3RyaW5n
KTsKLSAgICAgICAgaWYgKCFTZWN1cml0eU9yaWdpbjo6Y2FuTG9hZChjb2RlQmFzZVVSTCwgU3Ry
aW5nKCksIGVsZW1lbnQtPmRvY3VtZW50KCkpKSB7CisgICAgICAgIGlmICghU2VjdXJpdHlPcmln
aW46OmNhbkRpc3BsYXkoY29kZUJhc2VVUkwsIFN0cmluZygpLCBlbGVtZW50LT5kb2N1bWVudCgp
KSkgewogICAgICAgICAgICAgRnJhbWVMb2FkZXI6OnJlcG9ydExvY2FsTG9hZEZhaWxlZChtX2Zy
YW1lLCBjb2RlQmFzZVVSTC5zdHJpbmcoKSk7CiAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAg
ICAgfQpAQCAtMjQ3LDcgKzI0Nyw3IEBAIEZyYW1lKiBTdWJmcmFtZUxvYWRlcjo6bG9hZFN1YmZy
YW1lKEhUTUwKICAgICAgICAgbWFyZ2luSGVpZ2h0ID0gby0+Z2V0TWFyZ2luSGVpZ2h0KCk7CiAg
ICAgfQogCi0gICAgaWYgKCFTZWN1cml0eU9yaWdpbjo6Y2FuTG9hZCh1cmwsIFN0cmluZygpLCBv
d25lckVsZW1lbnQtPmRvY3VtZW50KCkpKSB7CisgICAgaWYgKCFTZWN1cml0eU9yaWdpbjo6Y2Fu
RGlzcGxheSh1cmwsIFN0cmluZygpLCBvd25lckVsZW1lbnQtPmRvY3VtZW50KCkpKSB7CiAgICAg
ICAgIEZyYW1lTG9hZGVyOjpyZXBvcnRMb2NhbExvYWRGYWlsZWQobV9mcmFtZSwgdXJsLnN0cmlu
ZygpKTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQpAQCAtMzM2LDcgKzMzNiw3IEBAIGJvb2wg
U3ViZnJhbWVMb2FkZXI6OmxvYWRQbHVnaW4oSFRNTFBsdWcKICAgICBpZiAoIXJlbmRlcmVyIHx8
IHVzZUZhbGxiYWNrKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBpZiAoIVNlY3VyaXR5
T3JpZ2luOjpjYW5Mb2FkKHVybCwgU3RyaW5nKCksIGRvY3VtZW50KCkpKSB7CisgICAgaWYgKCFT
ZWN1cml0eU9yaWdpbjo6Y2FuRGlzcGxheSh1cmwsIFN0cmluZygpLCBkb2N1bWVudCgpKSkgewog
ICAgICAgICBGcmFtZUxvYWRlcjo6cmVwb3J0TG9jYWxMb2FkRmFpbGVkKG1fZnJhbWUsIHVybC5z
dHJpbmcoKSk7CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CkluZGV4OiBXZWJDb3JlL2xv
YWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9sb2FkZXIv
U3VicmVzb3VyY2VMb2FkZXIuY3BwCShyZXZpc2lvbiA2NjgxMSkKKysrIFdlYkNvcmUvbG9hZGVy
L1N1YnJlc291cmNlTG9hZGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzMsNyArNzMsNyBAQCBQ
YXNzUmVmUHRyPFN1YnJlc291cmNlTG9hZGVyPiBTdWJyZXNvdXJjCiAKICAgICBpZiAoc2VjdXJp
dHlDaGVjayA9PSBEb1NlY3VyaXR5Q2hlY2sKICAgICAgICAgICAgICYmIFNlY3VyaXR5T3JpZ2lu
OjpyZXN0cmljdEFjY2Vzc1RvTG9jYWwoKQotICAgICAgICAgICAgJiYgIVNlY3VyaXR5T3JpZ2lu
OjpjYW5Mb2FkKHJlcXVlc3QudXJsKCksIFN0cmluZygpLCBmcmFtZS0+ZG9jdW1lbnQoKSkpIHsK
KyAgICAgICAgICAgICYmICFTZWN1cml0eU9yaWdpbjo6Y2FuRGlzcGxheShyZXF1ZXN0LnVybCgp
LCBTdHJpbmcoKSwgZnJhbWUtPmRvY3VtZW50KCkpKSB7CiAgICAgICAgIEZyYW1lTG9hZGVyOjpy
ZXBvcnRMb2NhbExvYWRGYWlsZWQoZnJhbWUsIHJlcXVlc3QudXJsKCkuc3RyaW5nKCkpOwogICAg
ICAgICByZXR1cm4gMDsKICAgICB9CkluZGV4OiBXZWJDb3JlL3BhZ2UvU2VjdXJpdHlPcmlnaW4u
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9TZWN1cml0eU9yaWdpbi5jcHAJKHJldmlz
aW9uIDY2ODExKQorKysgV2ViQ29yZS9wYWdlL1NlY3VyaXR5T3JpZ2luLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjg0LDcgKzI4NCw3IEBAIGJvb2wgU2VjdXJpdHlPcmlnaW46OmlzQWNjZXNzV2hp
dGVMaXN0ZWQKICAgICByZXR1cm4gZmFsc2U7CiB9CiAgIAotYm9vbCBTZWN1cml0eU9yaWdpbjo6
Y2FuTG9hZChjb25zdCBLVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIERvY3VtZW50
KiBkb2N1bWVudCkKK2Jvb2wgU2VjdXJpdHlPcmlnaW46OmNhbkRpc3BsYXkoY29uc3QgS1VSTCYg
dXJsLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBEb2N1bWVudCogZG9jdW1lbnQpCiB7CiAjaWYg
RU5BQkxFKEJMT0IpCiAgICAgaWYgKHVybC5wcm90b2NvbElzKCJibG9iIikgJiYgZG9jdW1lbnQp
IHsKSW5kZXg6IFdlYkNvcmUvcGFnZS9TZWN1cml0eU9yaWdpbi5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvcGFnZS9TZWN1cml0eU9yaWdpbi5oCShyZXZpc2lvbiA2NjgxMSkKKysrIFdlYkNvcmUv
cGFnZS9TZWN1cml0eU9yaWdpbi5oCSh3b3JraW5nIGNvcHkpCkBAIC04NCwxMCArODQsMTEgQEAg
cHVibGljOgogICAgIC8vIGRyYXdpbmcgYW4gaW1hZ2Ugb250byBhbiBIVE1MIGNhbnZhcyBlbGVt
ZW50IHdpdGggdGhlIGRyYXdJbWFnZSBBUEkuCiAgICAgYm9vbCB0YWludHNDYW52YXMoY29uc3Qg
S1VSTCYpIGNvbnN0OwogCi0gICAgLy8gUmV0dXJucyB0cnVlIGZvciBhbnkgbm9uLWxvY2FsIFVS
TC4gSWYgZG9jdW1lbnQgcGFyYW1ldGVyIGlzIHN1cHBsaWVkLAotICAgIC8vIGl0cyBsb2NhbCBs
b2FkIHBvbGljeSBkaWN0YXRlcywgb3RoZXJ3aXNlIGlmIHJlZmVycmVyIGlzIG5vbi1lbXB0eSBh
bmQKLSAgICAvLyByZXByZXNlbnRzIGEgbG9jYWwgZmlsZSwgdGhlbiB0aGUgbG9jYWwgbG9hZCBp
cyBhbGxvd2VkLgotICAgIHN0YXRpYyBib29sIGNhbkxvYWQoY29uc3QgS1VSTCYsIGNvbnN0IFN0
cmluZyYgcmVmZXJyZXIsIERvY3VtZW50KiBkb2N1bWVudCk7CisgICAgLy8gUmV0dXJucyB0cnVl
IGlmIHxkb2N1bWVudHwgY2FuIGRpc3BsYXkgY29udGVudCBmcm9tIHRoZSBnaXZlbiBVUkwgKGUu
Zy4sCisgICAgLy8gaW4gYW4gaWZyYW1lIG9yIGFzIGFuIGltYWdlKS4gRm9yIGV4YW1wbGUsIHdl
YiBzaXRlcyBnZW5lcmFsbHkgY2Fubm90CisgICAgLy8gZGlzcGxheSBjb250ZW50IGZyb20gdGhl
IHVzZXIncyBmaWxlcyBzeXN0ZW0uIElmIHxkb2N1bWVudHwgaXMgMCwKKyAgICAvLyB8cmVmZXJy
ZXJ8IGlzIHVzZWQgdG8gbWFrZSB0aGlzIGRldGVybWluYXRpb24uCisgICAgc3RhdGljIGJvb2wg
Y2FuRGlzcGxheShjb25zdCBLVVJMJiwgY29uc3QgU3RyaW5nJiByZWZlcnJlciwgRG9jdW1lbnQq
IGRvY3VtZW50KTsKIAogICAgIC8vIFJldHVybnMgdHJ1ZSBpZiB0aGlzIFNlY3VyaXR5T3JpZ2lu
IGNhbiBsb2FkIGxvY2FsIHJlc291cmNlcywgc3VjaAogICAgIC8vIGFzIGltYWdlcywgaWZyYW1l
cywgYW5kIHN0eWxlIHNoZWV0cywgYW5kIGNhbiBsaW5rIHRvIGxvY2FsIFVSTHMuCkluZGV4OiBX
ZWJDb3JlL3BsdWdpbnMvUGx1Z2luVmlldy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbHVn
aW5zL1BsdWdpblZpZXcuY3BwCShyZXZpc2lvbiA2NjgxMSkKKysrIFdlYkNvcmUvcGx1Z2lucy9Q
bHVnaW5WaWV3LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTM3LDcgKzUzNyw3IEBAIE5QRXJyb3Ig
UGx1Z2luVmlldzo6bG9hZChjb25zdCBGcmFtZUxvYWQKICAgICAgICAgLy8gRm9yIHNlY3VyaXR5
IHJlYXNvbnMsIG9ubHkgYWxsb3cgSlMgcmVxdWVzdHMgdG8gYmUgbWFkZSBvbiB0aGUgZnJhbWUg
dGhhdCBjb250YWlucyB0aGUgcGx1Zy1pbi4KICAgICAgICAgaWYgKCF0YXJnZXRGcmFtZU5hbWUu
aXNOdWxsKCkgJiYgbV9wYXJlbnRGcmFtZS0+dHJlZSgpLT5maW5kKHRhcmdldEZyYW1lTmFtZSkg
IT0gbV9wYXJlbnRGcmFtZSkKICAgICAgICAgICAgIHJldHVybiBOUEVSUl9JTlZBTElEX1BBUkFN
OwotICAgIH0gZWxzZSBpZiAoIVNlY3VyaXR5T3JpZ2luOjpjYW5Mb2FkKHVybCwgU3RyaW5nKCks
IG1fcGFyZW50RnJhbWUtPmRvY3VtZW50KCkpKQorICAgIH0gZWxzZSBpZiAoIVNlY3VyaXR5T3Jp
Z2luOjpjYW5EaXNwbGF5KHVybCwgU3RyaW5nKCksIG1fcGFyZW50RnJhbWUtPmRvY3VtZW50KCkp
KQogICAgICAgICAgICAgcmV0dXJuIE5QRVJSX0dFTkVSSUNfRVJST1I7CiAKICAgICBQbHVnaW5S
ZXF1ZXN0KiByZXF1ZXN0ID0gbmV3IFBsdWdpblJlcXVlc3QoZnJhbWVMb2FkUmVxdWVzdCwgc2Vu
ZE5vdGlmaWNhdGlvbiwgbm90aWZ5RGF0YSwgYXJlUG9wdXBzQWxsb3dlZCgpKTsKSW5kZXg6IFdl
YktpdDIvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdDIvQ2hhbmdlTG9nCShyZXZpc2lv
biA2NjgxMSkKKysrIFdlYktpdDIvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEs
MTUgQEAKKzIwMTAtMDktMDUgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKworICAg
ICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICBSZW5hbWUgU2VjdXJpdHlP
cmlnaW46OmNhbkxvYWQgdG8gY2FuRGlzcGxheQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDUyMTQKKworICAgICAgICBQcm9wYWdhdGUgbmFtZSBjaGFu
Z2UuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OlBsdWdpblZpZXc6OnBlcmZvcm1GcmFtZUxvYWRVUkxSZXF1ZXN0KToKKwog
MjAxMC0wOS0wNCAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IEFuZGVycyBDYXJsc3Nvbi4KSW5kZXg6IFdlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5z
L1BsdWdpblZpZXcuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5z
L1BsdWdpblZpZXcuY3BwCShyZXZpc2lvbiA2NjgxMSkKKysrIFdlYktpdDIvV2ViUHJvY2Vzcy9Q
bHVnaW5zL1BsdWdpblZpZXcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01MTUsNyArNTE1LDcgQEAg
dm9pZCBQbHVnaW5WaWV3OjpwZXJmb3JtRnJhbWVMb2FkVVJMUmVxdQogICAgICAgICByZXR1cm47
CiAKICAgICAvLyBDaGVjayBpZiB0aGlzIGlzIFVSTCBjYW4gYmUgbG9hZGVkLgotICAgIGlmICgh
U2VjdXJpdHlPcmlnaW46OmNhbkxvYWQocmVxdWVzdC0+cmVxdWVzdCgpLnVybCgpLCBTdHJpbmco
KSwgbV9wbHVnaW5FbGVtZW50LT5kb2N1bWVudCgpKSkgeworICAgIGlmICghU2VjdXJpdHlPcmln
aW46OmNhbkRpc3BsYXkocmVxdWVzdC0+cmVxdWVzdCgpLnVybCgpLCBTdHJpbmcoKSwgbV9wbHVn
aW5FbGVtZW50LT5kb2N1bWVudCgpKSkgewogICAgICAgICAvLyBXZSBjYW4ndCBsb2FkIHRoZSBy
ZXF1ZXN0LCBzZW5kIGJhY2sgYSByZXBseSB0byB0aGUgcGx1Zy1pbi4KICAgICAgICAgbV9wbHVn
aW4tPmZyYW1lRGlkRmFpbChyZXF1ZXN0LT5yZXF1ZXN0SUQoKSwgZmFsc2UpOwogICAgICAgICBy
ZXR1cm47CkluZGV4OiBXZWJLaXQvbWFjL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQv
bWFjL0NoYW5nZUxvZwkocmV2aXNpb24gNjY4MTEpCisrKyBXZWJLaXQvbWFjL0NoYW5nZUxvZwko
d29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBACisyMDEwLTA5LTA1ICBBZGFtIEJhcnRoICA8
YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisK
KyAgICAgICAgUmVuYW1lIFNlY3VyaXR5T3JpZ2luOjpjYW5Mb2FkIHRvIGNhbkRpc3BsYXkKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ1MjE0CisKKyAg
ICAgICAgUHJvcGFnYXRlIG5hbWUgY2hhbmdlLgorCisgICAgICAgICogUGx1Z2lucy9Ib3N0ZWQv
TmV0c2NhcGVQbHVnaW5JbnN0YW5jZVByb3h5Lm1tOgorICAgICAgICAoV2ViS2l0OjpOZXRzY2Fw
ZVBsdWdpbkluc3RhbmNlUHJveHk6OmxvYWRSZXF1ZXN0KToKKyAgICAgICAgKiBQbHVnaW5zL1dl
Yk5ldHNjYXBlUGx1Z2luU3RyZWFtLm1tOgorICAgICAgICAoV2ViTmV0c2NhcGVQbHVnaW5TdHJl
YW06OldlYk5ldHNjYXBlUGx1Z2luU3RyZWFtKToKKyAgICAgICAgKiBQbHVnaW5zL1dlYk5ldHNj
YXBlUGx1Z2luVmlldy5tbToKKyAgICAgICAgKC1bV2ViTmV0c2NhcGVQbHVnaW5WaWV3IGxvYWRS
ZXF1ZXN0OmluVGFyZ2V0OndpdGhOb3RpZnlEYXRhOnNlbmROb3RpZmljYXRpb246XSk6CisgICAg
ICAgICogUGx1Z2lucy9XZWJQbHVnaW5Db250YWluZXJDaGVjay5tbToKKyAgICAgICAgKC1bV2Vi
UGx1Z2luQ29udGFpbmVyQ2hlY2sgX2lzRm9yYmlkZGVuRmlsZUxvYWRdKToKKyAgICAgICAgKiBX
ZWJWaWV3L1dlYkZyYW1lLm1tOgorICAgICAgICAoLVtXZWJGcmFtZSBfYWxsb3dzRm9sbG93aW5n
TGluazpdKToKKwogMjAxMC0wOS0wMyAgSmVzdXMgU2FuY2hlei1QYWxlbmNpYSAgPGplc3VzLnBh
bGVuY2lhQG9wZW5ib3NzYS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIu
CkluZGV4OiBXZWJLaXQvbWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5TdHJlYW0ubW0KPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViS2l0L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2luU3RyZWFtLm1t
CShyZXZpc2lvbiA2NjgxMSkKKysrIFdlYktpdC9tYWMvUGx1Z2lucy9XZWJOZXRzY2FwZVBsdWdp
blN0cmVhbS5tbQkod29ya2luZyBjb3B5KQpAQCAtMTYxLDcgKzE2MSw3IEBAIFdlYk5ldHNjYXBl
UGx1Z2luU3RyZWFtOjpXZWJOZXRzY2FwZVBsdWcKICAgICBXZWJOZXRzY2FwZVBsdWdpblZpZXcg
KnZpZXcgPSAoV2ViTmV0c2NhcGVQbHVnaW5WaWV3ICopcGx1Z2luLT5uZGF0YTsKICAgICAKICAg
ICAvLyBUaGlzIGNoZWNrIGhhcyBhbHJlYWR5IGJlZW4gZG9uZSBieSB0aGUgcGx1Zy1pbiB2aWV3
LgotICAgIEFTU0VSVChTZWN1cml0eU9yaWdpbjo6Y2FuTG9hZChbcmVxdWVzdCBVUkxdLCBTdHJp
bmcoKSwgY29yZShbdmlldyB3ZWJGcmFtZV0pLT5kb2N1bWVudCgpKSk7CisgICAgQVNTRVJUKFNl
Y3VyaXR5T3JpZ2luOjpjYW5EaXNwbGF5KFtyZXF1ZXN0IFVSTF0sIFN0cmluZygpLCBjb3JlKFt2
aWV3IHdlYkZyYW1lXSktPmRvY3VtZW50KCkpKTsKICAgICAKICAgICBBU1NFUlQoW3JlcXVlc3Qg
VVJMXSk7CiAgICAgQVNTRVJUKHBsdWdpbik7CkluZGV4OiBXZWJLaXQvbWFjL1BsdWdpbnMvV2Vi
TmV0c2NhcGVQbHVnaW5WaWV3Lm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9tYWMvUGx1Z2lucy9X
ZWJOZXRzY2FwZVBsdWdpblZpZXcubW0JKHJldmlzaW9uIDY2ODExKQorKysgV2ViS2l0L21hYy9Q
bHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2luVmlldy5tbQkod29ya2luZyBjb3B5KQpAQCAtMTcyOCw3
ICsxNzI4LDcgQEAgLSAoTlBFcnJvcilsb2FkUmVxdWVzdDooTlNNdXRhYmxlVVJMUmVxdQogICAg
ICAgICAgICAgcmV0dXJuIE5QRVJSX0lOVkFMSURfUEFSQU07CiAgICAgICAgIH0KICAgICB9IGVs
c2UgewotICAgICAgICBpZiAoIVNlY3VyaXR5T3JpZ2luOjpjYW5Mb2FkKFVSTCwgU3RyaW5nKCks
IGNvcmUoW3NlbGYgd2ViRnJhbWVdKS0+ZG9jdW1lbnQoKSkpCisgICAgICAgIGlmICghU2VjdXJp
dHlPcmlnaW46OmNhbkRpc3BsYXkoVVJMLCBTdHJpbmcoKSwgY29yZShbc2VsZiB3ZWJGcmFtZV0p
LT5kb2N1bWVudCgpKSkKICAgICAgICAgICAgIHJldHVybiBOUEVSUl9HRU5FUklDX0VSUk9SOwog
ICAgIH0KICAgICAgICAgCkluZGV4OiBXZWJLaXQvbWFjL1BsdWdpbnMvV2ViUGx1Z2luQ29udGFp
bmVyQ2hlY2subW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L21hYy9QbHVnaW5zL1dlYlBsdWdpbkNv
bnRhaW5lckNoZWNrLm1tCShyZXZpc2lvbiA2NjgxMSkKKysrIFdlYktpdC9tYWMvUGx1Z2lucy9X
ZWJQbHVnaW5Db250YWluZXJDaGVjay5tbQkod29ya2luZyBjb3B5KQpAQCAtOTksNyArOTksNyBA
QCAtIChCT09MKV9pc0ZvcmJpZGRlbkZpbGVMb2FkCiB7CiAgICBGcmFtZSogY29yZUZyYW1lID0g
Y29yZShbX2NvbnRyb2xsZXIgd2ViRnJhbWVdKTsKICAgIEFTU0VSVChjb3JlRnJhbWUpOwotICAg
aWYgKCFTZWN1cml0eU9yaWdpbjo6Y2FuTG9hZChbX3JlcXVlc3QgVVJMXSwgU3RyaW5nKCksIGNv
cmVGcmFtZS0+ZG9jdW1lbnQoKSkpIHsKKyAgIGlmICghU2VjdXJpdHlPcmlnaW46OmNhbkRpc3Bs
YXkoW19yZXF1ZXN0IFVSTF0sIFN0cmluZygpLCBjb3JlRnJhbWUtPmRvY3VtZW50KCkpKSB7CiAg
ICAgICAgW3NlbGYgX2NvbnRpbnVlV2l0aFBvbGljeTpQb2xpY3lJZ25vcmVdOwogICAgICAgIHJl
dHVybiBZRVM7CiAgICB9CkluZGV4OiBXZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBl
UGx1Z2luSW5zdGFuY2VQcm94eS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvbWFjL1BsdWdpbnMv
SG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbQkocmV2aXNpb24gNjY4MTEpCisr
KyBXZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5t
bQkod29ya2luZyBjb3B5KQpAQCAtNzYyLDcgKzc2Miw3IEBAIE5QRXJyb3IgTmV0c2NhcGVQbHVn
aW5JbnN0YW5jZVByb3h5Ojpsb2EKICAgICAgICAgICAgIHJldHVybiBOUEVSUl9HRU5FUklDX0VS
Uk9SOwogICAgICAgICB9CiAgICAgfSBlbHNlIHsKLSAgICAgICAgaWYgKCFTZWN1cml0eU9yaWdp
bjo6Y2FuTG9hZChVUkwsIFN0cmluZygpLCBjb3JlKFttX3BsdWdpblZpZXcgd2ViRnJhbWVdKS0+
ZG9jdW1lbnQoKSkpCisgICAgICAgIGlmICghU2VjdXJpdHlPcmlnaW46OmNhbkRpc3BsYXkoVVJM
LCBTdHJpbmcoKSwgY29yZShbbV9wbHVnaW5WaWV3IHdlYkZyYW1lXSktPmRvY3VtZW50KCkpKQog
ICAgICAgICAgICAgcmV0dXJuIE5QRVJSX0dFTkVSSUNfRVJST1I7CiAgICAgfQogICAgIApJbmRl
eDogV2ViS2l0L21hYy9XZWJWaWV3L1dlYkZyYW1lLm1tCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9t
YWMvV2ViVmlldy9XZWJGcmFtZS5tbQkocmV2aXNpb24gNjY4MTEpCisrKyBXZWJLaXQvbWFjL1dl
YlZpZXcvV2ViRnJhbWUubW0JKHdvcmtpbmcgY29weSkKQEAgLTEyODIsNyArMTI4Miw3IEBAIC0g
KEJPT0wpX2FsbG93c0ZvbGxvd2luZ0xpbms6KE5TVVJMICopVVIKIHsKICAgICBpZiAoIV9wcml2
YXRlLT5jb3JlRnJhbWUpCiAgICAgICAgIHJldHVybiBZRVM7Ci0gICAgcmV0dXJuIFNlY3VyaXR5
T3JpZ2luOjpjYW5Mb2FkKFVSTCwgU3RyaW5nKCksIF9wcml2YXRlLT5jb3JlRnJhbWUtPmRvY3Vt
ZW50KCkpOworICAgIHJldHVybiBTZWN1cml0eU9yaWdpbjo6Y2FuRGlzcGxheShVUkwsIFN0cmlu
ZygpLCBfcHJpdmF0ZS0+Y29yZUZyYW1lLT5kb2N1bWVudCgpKTsKIH0KIAogLSAoTlNTdHJpbmcg
Kilfc3RyaW5nQnlFdmFsdWF0aW5nSmF2YVNjcmlwdEZyb21TdHJpbmc6KE5TU3RyaW5nICopc3Ry
aW5nIHdpdGhHbG9iYWxPYmplY3Q6KEpTT2JqZWN0UmVmKWdsb2JhbE9iamVjdFJlZiBpblNjcmlw
dFdvcmxkOihXZWJTY3JpcHRXb3JsZCAqKXdvcmxkCkluZGV4OiBXZWJLaXQvd2luL0NoYW5nZUxv
Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJLaXQvd2luL0NoYW5nZUxvZwkocmV2aXNpb24gNjY4MTEpCisr
KyBXZWJLaXQvd2luL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisy
MDEwLTA5LTA1ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgUmVuYW1lIFNlY3VyaXR5T3JpZ2luOjpj
YW5Mb2FkIHRvIGNhbkRpc3BsYXkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTQ1MjE0CisKKyAgICAgICAgUHJvcGFnYXRlIG5hbWUgY2hhbmdlLgorCisg
ICAgICAgICogV2ViRnJhbWUuY3BwOgorICAgICAgICAoV2ViRnJhbWU6OmFsbG93c0ZvbGxvd2lu
Z0xpbmspOgorCiAyMDEwLTA5LTAzICBKZXN1cyBTYW5jaGV6LVBhbGVuY2lhICA8amVzdXMucGFs
ZW5jaWFAb3BlbmJvc3NhLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4K
SW5kZXg6IFdlYktpdC93aW4vV2ViRnJhbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC93aW4v
V2ViRnJhbWUuY3BwCShyZXZpc2lvbiA2NjgxMSkKKysrIFdlYktpdC93aW4vV2ViRnJhbWUuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0xMzUzLDcgKzEzNTMsNyBAQCBIUkVTVUxUIFdlYkZyYW1lOjph
bGxvd3NGb2xsb3dpbmdMaW5rKEJTCiAgICAgaWYgKCFmcmFtZSkKICAgICAgICAgcmV0dXJuIEVf
RkFJTDsKIAotICAgICpyZXN1bHQgPSBTZWN1cml0eU9yaWdpbjo6Y2FuTG9hZChNYXJzaGFsbGlu
Z0hlbHBlcnM6OkJTVFJUb0tVUkwodXJsKSwgU3RyaW5nKCksIGZyYW1lLT5kb2N1bWVudCgpKTsK
KyAgICAqcmVzdWx0ID0gU2VjdXJpdHlPcmlnaW46OmNhbkRpc3BsYXkoTWFyc2hhbGxpbmdIZWxw
ZXJzOjpCU1RSVG9LVVJMKHVybCksIFN0cmluZygpLCBmcmFtZS0+ZG9jdW1lbnQoKSk7CiAgICAg
cmV0dXJuIFNfT0s7CiB9CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>