<?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>30111</bug_id>
          
          <creation_ts>2009-10-05 23:57:43 -0700</creation_ts>
          <short_desc>Move FrameLoader::canLoad to SecurityOrigin</short_desc>
          <delta_ts>2009-10-06 18:14:34 -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>Page Loading</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>29947</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Barth">abarth</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>152606</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-10-05 23:57:43 -0700</bug_when>
    <thetext>Move FrameLoader::canLoad to SecurityOrigin</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>152608</commentid>
    <comment_count>1</comment_count>
      <attachid>40697</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-10-05 23:59:03 -0700</bug_when>
    <thetext>Created attachment 40697
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>152766</commentid>
    <comment_count>2</comment_count>
      <attachid>40697</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-10-06 09:55:48 -0700</bug_when>
    <thetext>Comment on attachment 40697
Patch v1

This is a little trickier than I expected since you&apos;re changing the signature of the function as you move it, but looks OK.

Also, I wonder if we shouldn&apos;t rename this &quot;mayLoad&quot; to satisfy my 3rd grade english teacher. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>152779</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-10-06 10:29:06 -0700</bug_when>
    <thetext>There&apos;s a bunch of other canFoo methods on security origin already.  I support renaming them, but we should do them all at the same time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>152914</commentid>
    <comment_count>4</comment_count>
      <attachid>40697</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-10-06 18:14:31 -0700</bug_when>
    <thetext>Comment on attachment 40697
Patch v1

Clearing flags on attachment: 40697

Committed r49212: &lt;http://trac.webkit.org/changeset/49212&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>152915</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-10-06 18:14:34 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40697</attachid>
            <date>2009-10-05 23:59:03 -0700</date>
            <delta_ts>2009-10-06 18:14:31 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>bug-30111-20091005235901.patch</filename>
            <type>text/plain</type>
            <size>23222</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NjI4NzdhZi4uODAyODcyZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOSBAQAorMjAwOS0xMC0wNSAgQWRhbSBCYXJ0aCAg
PGFiYXJ0aEB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIE1vdmUgRnJhbWVMb2FkZXI6OmNhbkxvYWQgdG8gU2VjdXJpdHlPcmlnaW4K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMwMTExCisK
KyAgICAgICAgKiBXZWJDb3JlLmJhc2UuZXhwOgorICAgICAgICAqIGh0bWwvSFRNTE1lZGlhRWxl
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50Ojppc1NhZmVUb0xv
YWRVUkwpOgorICAgICAgICAqIGxvYWRlci9DYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpD
YWNoZTo6cmVxdWVzdFJlc291cmNlKToKKyAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OmxvYWRTdWJmcmFtZSk6CisgICAgICAg
IChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6bG9hZFBsdWdpbik6CisgICAgICAgIChXZWJDb3JlOjpG
cmFtZUxvYWRlcjo6bG9hZEZyYW1lUmVxdWVzdCk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxv
YWRlcjo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseSk6CisgICAgICAgIChXZWJDb3JlOjpGcmFt
ZUxvYWRlcjo6Y3JlYXRlSmF2YUFwcGxldFdpZGdldCk6CisgICAgICAgICogbG9hZGVyL0ZyYW1l
TG9hZGVyLmg6CisgICAgICAgICogbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlN1YnJlc291cmNlTG9hZGVyOjpjcmVhdGUpOgorICAgICAgICAqIHBhZ2Uv
U2VjdXJpdHlPcmlnaW4uY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW46OmNh
bkxvYWQpOgorICAgICAgICAoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW46OnNob3VsZEhpZGVSZWZl
cnJlcik6CisgICAgICAgICogcGFnZS9TZWN1cml0eU9yaWdpbi5oOgorCiAyMDA5LTEwLTAzICBB
ZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUuYmFzZS5leHAgYi9XZWJD
b3JlL1dlYkNvcmUuYmFzZS5leHAKaW5kZXggYWI2ZWYwNS4uMjRkODM1NSAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9XZWJDb3JlLmJhc2UuZXhwCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5iYXNlLmV4cApA
QCAtMTY0LDcgKzE2NCw2IEBAIF9fWk43V2ViQ29yZTExRnJhbWVMb2FkZXIxNmRldGFjaEZyb21Q
YXJlbnRFdgogX19aTjdXZWJDb3JlMTFGcmFtZUxvYWRlcjE2bG9hZEZyYW1lUmVxdWVzdEVSS05T
XzE2RnJhbWVMb2FkUmVxdWVzdEViYk4zV1RGMTBQYXNzUmVmUHRySU5TXzVFdmVudEVFRU5TNV9J
TlNfOUZvcm1TdGF0ZUVFRQogX19aTjdXZWJDb3JlMTFGcmFtZUxvYWRlcjE3c3RvcEZvclVzZXJD
YW5jZWxFYgogX19aTjdXZWJDb3JlMTFGcmFtZUxvYWRlcjE4Y3VycmVudEhpc3RvcnlJdGVtRXYK
LV9fWk43V2ViQ29yZTExRnJhbWVMb2FkZXIxOHNob3VsZEhpZGVSZWZlcnJlckVSS05TXzRLVVJM
RVJLTlNfNlN0cmluZ0UKIF9fWk43V2ViQ29yZTExRnJhbWVMb2FkZXIyMWxvYWRVUkxJbnRvQ2hp
bGRGcmFtZUVSS05TXzRLVVJMRVJLTlNfNlN0cmluZ0VQTlNfNUZyYW1lRQogX19aTjdXZWJDb3Jl
MTFGcmFtZUxvYWRlcjIxc2V0Q3VycmVudEhpc3RvcnlJdGVtRU4zV1RGMTBQYXNzUmVmUHRySU5T
XzExSGlzdG9yeUl0ZW1FRUUKIF9fWk43V2ViQ29yZTExRnJhbWVMb2FkZXIyMmZpbmRGcmFtZUZv
ck5hdmlnYXRpb25FUktOU18xMkF0b21pY1N0cmluZ0UKQEAgLTE3OCw3ICsxNzcsNiBAQCBfX1pO
N1dlYkNvcmUxMUZyYW1lTG9hZGVyNGxvYWRFUktOU18xNVJlc291cmNlUmVxdWVzdEVSS05TXzZT
dHJpbmdFYgogX19aTjdXZWJDb3JlMTFGcmFtZUxvYWRlcjRsb2FkRVJLTlNfMTVSZXNvdXJjZVJl
cXVlc3RFYgogX19aTjdXZWJDb3JlMTFGcmFtZUxvYWRlcjZyZWxvYWRFYgogX19aTjdXZWJDb3Jl
MTFGcmFtZUxvYWRlcjdhZGREYXRhRVBLY2kKLV9fWk43V2ViQ29yZTExRnJhbWVMb2FkZXI3Y2Fu
TG9hZEVSS05TXzRLVVJMRVJLTlNfNlN0cmluZ0VQS05TXzhEb2N1bWVudEUKIF9fWk43V2ViQ29y
ZTExR2VvbG9jYXRpb24xMnNldElzQWxsb3dlZEViCiBfX1pON1dlYkNvcmUxMUhpc3RvcnlJdGVt
MTB0YXJnZXRJdGVtRXYKIF9fWk43V2ViQ29yZTExSGlzdG9yeUl0ZW0xMXNldFJlZmVycmVyRVJL
TlNfNlN0cmluZ0UKQEAgLTMwMiwxMCArMzAwLDEyIEBAIF9fWk43V2ViQ29yZTE0UmVzb3VyY2VM
b2FkZXIxNGNhbmNlbGxlZEVycm9yRXYKIF9fWk43V2ViQ29yZTE0UmVzb3VyY2VMb2FkZXIxOXNl
dFNob3VsZEJ1ZmZlckRhdGFFYgogX19aTjdXZWJDb3JlMTRTZWN1cml0eU9yaWdpbjE2Y3JlYXRl
RnJvbVN0cmluZ0VSS05TXzZTdHJpbmdFCiBfX1pON1dlYkNvcmUxNFNlY3VyaXR5T3JpZ2luMThz
ZXRMb2NhbExvYWRQb2xpY3lFTlMwXzE1TG9jYWxMb2FkUG9saWN5RQorX19aTjdXZWJDb3JlMTRT
ZWN1cml0eU9yaWdpbjE4c2hvdWxkSGlkZVJlZmVycmVyRVJLTlNfNEtVUkxFUktOU182U3RyaW5n
RQogX19aTjdXZWJDb3JlMTRTZWN1cml0eU9yaWdpbjI0cmVnaXN0ZXJVUkxTY2hlbWVBc0xvY2Fs
RVJLTlNfNlN0cmluZ0UKIF9fWk43V2ViQ29yZTE0U2VjdXJpdHlPcmlnaW4yNXdoaXRlTGlzdEFj
Y2Vzc0Zyb21PcmlnaW5FUktTMF9SS05TXzZTdHJpbmdFUzVfYgogX19aTjdXZWJDb3JlMTRTZWN1
cml0eU9yaWdpbjI3cmVzZXRPcmlnaW5BY2Nlc3NXaGl0ZUxpc3RzRXYKIF9fWk43V2ViQ29yZTE0
U2VjdXJpdHlPcmlnaW42Y3JlYXRlRVJLTlNfNEtVUkxFCitfX1pON1dlYkNvcmUxNFNlY3VyaXR5
T3JpZ2luN2NhbkxvYWRFUktOU180S1VSTEVSS05TXzZTdHJpbmdFUE5TXzhEb2N1bWVudEUKIF9f
Wk43V2ViQ29yZTE1QXJjaGl2ZVJlc291cmNlNmNyZWF0ZUVOM1dURjEwUGFzc1JlZlB0cklOU18x
MlNoYXJlZEJ1ZmZlckVFRVJLTlNfNEtVUkxFUktOU182U3RyaW5nRVNBX1NBX1JLTlNfMTZSZXNv
dXJjZVJlc3BvbnNlRQogX19aTjdXZWJDb3JlMTVCYWNrRm9yd2FyZExpc3QxMHJlbW92ZUl0ZW1F
UE5TXzExSGlzdG9yeUl0ZW1FCiBfX1pON1dlYkNvcmUxNUJhY2tGb3J3YXJkTGlzdDEwc2V0RW5h
YmxlZEViCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAgYi9X
ZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKaW5kZXggMTBhZjE1ZS4uZGI3MGQyOCAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCisrKyBiL1dlYkNv
cmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcApAQCAtNjAwLDcgKzYwMCw3IEBAIGJvb2wgSFRN
TE1lZGlhRWxlbWVudDo6aXNTYWZlVG9Mb2FkVVJMKGNvbnN0IEtVUkwmIHVybCwgSW52YWxpZFNv
dXJjZUFjdGlvbiBhY3RpCiAgICAgRnJhbWVMb2FkZXIqIGxvYWRlciA9IGZyYW1lID8gZnJhbWUt
PmxvYWRlcigpIDogMDsKIAogICAgIC8vIGRvbid0IGFsbG93IHJlbW90ZSB0byBsb2NhbCB1cmxz
LCBhbmQgY2hlY2sgd2l0aCB0aGUgZnJhbWUgbG9hZGVyIGNsaWVudC4KLSAgICBpZiAoIWxvYWRl
ciB8fCAhbG9hZGVyLT5jYW5Mb2FkKHVybCwgU3RyaW5nKCksIGRvY3VtZW50KCkpIHx8ICFsb2Fk
ZXItPmNsaWVudCgpLT5zaG91bGRMb2FkTWVkaWFFbGVtZW50VVJMKHVybCkpIHsKKyAgICBpZiAo
IWxvYWRlciB8fCAhU2VjdXJpdHlPcmlnaW46OmNhbkxvYWQodXJsLCBTdHJpbmcoKSwgZG9jdW1l
bnQoKSkgfHwgIWxvYWRlci0+Y2xpZW50KCktPnNob3VsZExvYWRNZWRpYUVsZW1lbnRVUkwodXJs
KSkgewogICAgICAgICBpZiAoYWN0aW9uSWZJbnZhbGlkID09IENvbXBsYWluKQogICAgICAgICAg
ICAgRnJhbWVMb2FkZXI6OnJlcG9ydExvY2FsTG9hZEZhaWxlZChmcmFtZSwgdXJsLnN0cmluZygp
KTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9sb2FkZXIvQ2Fj
aGUuY3BwIGIvV2ViQ29yZS9sb2FkZXIvQ2FjaGUuY3BwCmluZGV4IDZmOTExOTMuLjM5MTc5MGYg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvbG9hZGVyL0NhY2hlLmNwcAorKysgYi9XZWJDb3JlL2xvYWRl
ci9DYWNoZS5jcHAKQEAgLTEwNSw3ICsxMDUsNyBAQCBDYWNoZWRSZXNvdXJjZSogQ2FjaGU6OnJl
cXVlc3RSZXNvdXJjZShEb2NMb2FkZXIqIGRvY0xvYWRlciwgQ2FjaGVkUmVzb3VyY2U6OlR5cAog
ICAgIGlmIChyZXNvdXJjZSAmJiByZXF1ZXN0SXNQcmVsb2FkICYmICFyZXNvdXJjZS0+aXNQcmVs
b2FkZWQoKSkKICAgICAgICAgcmV0dXJuIDA7CiAgICAgCi0gICAgaWYgKFNlY3VyaXR5T3JpZ2lu
OjpyZXN0cmljdEFjY2Vzc1RvTG9jYWwoKSAmJiAhRnJhbWVMb2FkZXI6OmNhbkxvYWQodXJsLCBT
dHJpbmcoKSwgZG9jTG9hZGVyLT5kb2MoKSkpIHsKKyAgICBpZiAoU2VjdXJpdHlPcmlnaW46OnJl
c3RyaWN0QWNjZXNzVG9Mb2NhbCgpICYmICFTZWN1cml0eU9yaWdpbjo6Y2FuTG9hZCh1cmwsIFN0
cmluZygpLCBkb2NMb2FkZXItPmRvYygpKSkgewogICAgICAgICBEb2N1bWVudCogZG9jID0gZG9j
TG9hZGVyLT5kb2MoKTsKICAgICAgICAgaWYgKGRvYyAmJiAhcmVxdWVzdElzUHJlbG9hZCkKICAg
ICAgICAgICAgIEZyYW1lTG9hZGVyOjpyZXBvcnRMb2NhbExvYWRGYWlsZWQoZG9jLT5mcmFtZSgp
LCB1cmwuc3RyaW5nKCkpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIu
Y3BwIGIvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCmluZGV4IDIxYzc2MzcuLjE3Zjkw
MzkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAorKysgYi9XZWJD
b3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKQEAgLTM4MCwxMiArMzgwLDEyIEBAIEZyYW1lKiBG
cmFtZUxvYWRlcjo6bG9hZFN1YmZyYW1lKEhUTUxGcmFtZU93bmVyRWxlbWVudCogb3duZXJFbGVt
ZW50LCBjb25zdCBLVVJMCiAgICAgICAgIG1hcmdpbkhlaWdodCA9IG8tPmdldE1hcmdpbkhlaWdo
dCgpOwogICAgIH0KIAotICAgIGlmICghY2FuTG9hZCh1cmwsIHJlZmVycmVyKSkgeworICAgIGlm
ICghU2VjdXJpdHlPcmlnaW46OmNhbkxvYWQodXJsLCByZWZlcnJlciwgMCkpIHsKICAgICAgICAg
RnJhbWVMb2FkZXI6OnJlcG9ydExvY2FsTG9hZEZhaWxlZChtX2ZyYW1lLCB1cmwuc3RyaW5nKCkp
OwogICAgICAgICByZXR1cm4gMDsKICAgICB9CiAKLSAgICBib29sIGhpZGVSZWZlcnJlciA9IHNo
b3VsZEhpZGVSZWZlcnJlcih1cmwsIHJlZmVycmVyKTsKKyAgICBib29sIGhpZGVSZWZlcnJlciA9
IFNlY3VyaXR5T3JpZ2luOjpzaG91bGRIaWRlUmVmZXJyZXIodXJsLCByZWZlcnJlcik7CiAgICAg
UmVmUHRyPEZyYW1lPiBmcmFtZSA9IG1fY2xpZW50LT5jcmVhdGVGcmFtZSh1cmwsIG5hbWUsIG93
bmVyRWxlbWVudCwgaGlkZVJlZmVycmVyID8gU3RyaW5nKCkgOiByZWZlcnJlciwgYWxsb3dzU2Ny
b2xsaW5nLCBtYXJnaW5XaWR0aCwgbWFyZ2luSGVpZ2h0KTsKIAogICAgIGlmICghZnJhbWUpICB7
CkBAIC0xNDQ0LDcgKzE0NDQsNyBAQCBib29sIEZyYW1lTG9hZGVyOjpsb2FkUGx1Z2luKFJlbmRl
clBhcnQqIHJlbmRlcmVyLCBjb25zdCBLVVJMJiB1cmwsIGNvbnN0IFN0cmluZwogICAgIGlmIChy
ZW5kZXJlciAmJiAhdXNlRmFsbGJhY2spIHsKICAgICAgICAgSFRNTFBsdWdJbkVsZW1lbnQqIGVs
ZW1lbnQgPSB0b1BsdWdJbkVsZW1lbnQocmVuZGVyZXItPm5vZGUoKSk7CiAKLSAgICAgICAgaWYg
KCFjYW5Mb2FkKHVybCwgU3RyaW5nKCksIGZyYW1lKCktPmRvY3VtZW50KCkpKSB7CisgICAgICAg
IGlmICghU2VjdXJpdHlPcmlnaW46OmNhbkxvYWQodXJsLCBTdHJpbmcoKSwgZnJhbWUoKS0+ZG9j
dW1lbnQoKSkpIHsKICAgICAgICAgICAgIEZyYW1lTG9hZGVyOjpyZXBvcnRMb2NhbExvYWRGYWls
ZWQobV9mcmFtZSwgdXJsLnN0cmluZygpKTsKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAg
ICAgICAgfQpAQCAtMTkxNiwxMyArMTkxNiwxMyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkRnJh
bWVSZXF1ZXN0KGNvbnN0IEZyYW1lTG9hZFJlcXVlc3QmIHJlcXVlc3QsIGJvb2wgbG9ja0hpcwog
CiAgICAgQVNTRVJUKGZyYW1lKCktPmRvY3VtZW50KCkpOwogICAgIGlmIChTZWN1cml0eU9yaWdp
bjo6c2hvdWxkVHJlYXRVUkxBc0xvY2FsKHVybC5zdHJpbmcoKSkgJiYgIWlzRmVlZFdpdGhOZXN0
ZWRQcm90b2NvbEluSFRUUEZhbWlseSh1cmwpKSB7Ci0gICAgICAgIGlmICghY2FuTG9hZCh1cmws
IFN0cmluZygpLCBmcmFtZSgpLT5kb2N1bWVudCgpKSAmJiAhY2FuTG9hZCh1cmwsIHJlZmVycmVy
KSkgeworICAgICAgICBpZiAoIVNlY3VyaXR5T3JpZ2luOjpjYW5Mb2FkKHVybCwgU3RyaW5nKCks
IGZyYW1lKCktPmRvY3VtZW50KCkpICYmICFTZWN1cml0eU9yaWdpbjo6Y2FuTG9hZCh1cmwsIHJl
ZmVycmVyLCAwKSkgewogICAgICAgICAgICAgRnJhbWVMb2FkZXI6OnJlcG9ydExvY2FsTG9hZEZh
aWxlZChtX2ZyYW1lLCB1cmwuc3RyaW5nKCkpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAg
ICB9CiAgICAgfQogCi0gICAgaWYgKHNob3VsZEhpZGVSZWZlcnJlcih1cmwsIHJlZmVycmVyKSkK
KyAgICBpZiAoU2VjdXJpdHlPcmlnaW46OnNob3VsZEhpZGVSZWZlcnJlcih1cmwsIHJlZmVycmVy
KSkKICAgICAgICAgcmVmZXJyZXIgPSBTdHJpbmcoKTsKICAgICAKICAgICBGcmFtZUxvYWRUeXBl
IGxvYWRUeXBlOwpAQCAtMjEyOSwyNiArMjEyOSw2IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmxvYWRX
aXRoRG9jdW1lbnRMb2FkZXIoRG9jdW1lbnRMb2FkZXIqIGxvYWRlciwgRnJhbWVMb2FkVHlwZSB0
CiAgICAgfQogfQogCi1ib29sIEZyYW1lTG9hZGVyOjpjYW5Mb2FkKGNvbnN0IEtVUkwmIHVybCwg
Y29uc3QgU3RyaW5nJiByZWZlcnJlciwgY29uc3QgRG9jdW1lbnQqIGRvYykKLXsKLSAgICByZXR1
cm4gY2FuTG9hZCh1cmwsIHJlZmVycmVyLCBkb2MgPyBkb2MtPnNlY3VyaXR5T3JpZ2luKCkgOiAw
KTsKLX0KLQotYm9vbCBGcmFtZUxvYWRlcjo6Y2FuTG9hZChjb25zdCBLVVJMJiB1cmwsIGNvbnN0
IFN0cmluZyYgcmVmZXJyZXIsIGNvbnN0IFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbikK
LXsKLSAgICAvLyBXZSBjYW4gYWx3YXlzIGxvYWQgYW55IFVSTCB0aGF0IGlzbid0IGNvbnNpZGVy
ZWQgbG9jYWwgKGUuZy4gaHR0cCBVUkxzKS4KLSAgICBpZiAoIVNlY3VyaXR5T3JpZ2luOjpzaG91
bGRUcmVhdFVSTEFzTG9jYWwodXJsLnN0cmluZygpKSkKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0K
LSAgICAvLyBJZiB3ZSB3ZXJlIHByb3ZpZGVkIGEgZG9jdW1lbnQsIHdlIGxldCBpdHMgbG9jYWwg
ZmlsZSBwb2xpY3kgZGljdGF0ZSB0aGUgcmVzdWx0LAotICAgIC8vIG90aGVyd2lzZSB3ZSBhbGxv
dyBsb2NhbCBsb2FkcyBvbmx5IGlmIHRoZSBzdXBwbGllZCByZWZlcnJlciBpcyBhbHNvIGxvY2Fs
LgotICAgIGlmIChzZWN1cml0eU9yaWdpbikKLSAgICAgICAgcmV0dXJuIHNlY3VyaXR5T3JpZ2lu
LT5jYW5Mb2FkTG9jYWxSZXNvdXJjZXMoKTsKLSAgICBpZiAoIXJlZmVycmVyLmlzRW1wdHkoKSkK
LSAgICAgICAgcmV0dXJuIFNlY3VyaXR5T3JpZ2luOjpzaG91bGRUcmVhdFVSTEFzTG9jYWwocmVm
ZXJyZXIpOwotICAgIHJldHVybiBmYWxzZTsKLX0KLQogdm9pZCBGcmFtZUxvYWRlcjo6cmVwb3J0
TG9jYWxMb2FkRmFpbGVkKEZyYW1lKiBmcmFtZSwgY29uc3QgU3RyaW5nJiB1cmwpCiB7CiAgICAg
QVNTRVJUKCF1cmwuaXNFbXB0eSgpKTsKQEAgLTIxNTgsMjIgKzIxMzgsNiBAQCB2b2lkIEZyYW1l
TG9hZGVyOjpyZXBvcnRMb2NhbExvYWRGYWlsZWQoRnJhbWUqIGZyYW1lLCBjb25zdCBTdHJpbmcm
IHVybCkKICAgICBmcmFtZS0+ZG9tV2luZG93KCktPmNvbnNvbGUoKS0+YWRkTWVzc2FnZShKU01l
c3NhZ2VTb3VyY2UsIExvZ01lc3NhZ2VUeXBlLCBFcnJvck1lc3NhZ2VMZXZlbCwgIk5vdCBhbGxv
d2VkIHRvIGxvYWQgbG9jYWwgcmVzb3VyY2U6ICIgKyB1cmwsIDAsIFN0cmluZygpKTsKIH0KIAot
Ym9vbCBGcmFtZUxvYWRlcjo6c2hvdWxkSGlkZVJlZmVycmVyKGNvbnN0IEtVUkwmIHVybCwgY29u
c3QgU3RyaW5nJiByZWZlcnJlcikKLXsKLSAgICBib29sIHJlZmVycmVySXNTZWN1cmVVUkwgPSBw
cm90b2NvbElzKHJlZmVycmVyLCAiaHR0cHMiKTsKLSAgICBib29sIHJlZmVycmVySXNXZWJVUkwg
PSByZWZlcnJlcklzU2VjdXJlVVJMIHx8IHByb3RvY29sSXMocmVmZXJyZXIsICJodHRwIik7Ci0K
LSAgICBpZiAoIXJlZmVycmVySXNXZWJVUkwpCi0gICAgICAgIHJldHVybiB0cnVlOwotCi0gICAg
aWYgKCFyZWZlcnJlcklzU2VjdXJlVVJMKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBi
b29sIFVSTElzU2VjdXJlVVJMID0gdXJsLnByb3RvY29sSXMoImh0dHBzIik7Ci0KLSAgICByZXR1
cm4gIVVSTElzU2VjdXJlVVJMOwotfQotCiBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIEZyYW1lTG9h
ZGVyOjppbml0aWFsUmVxdWVzdCgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIGFjdGl2ZURvY3VtZW50
TG9hZGVyKCktPm9yaWdpbmFsUmVxdWVzdCgpOwpAQCAtMzQyNCw3ICszMzg4LDcgQEAgdm9pZCBG
cmFtZUxvYWRlcjo6bG9hZFBvc3RSZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgaW5SZXF1
ZXN0LCBjb25zdCBTdHJpbmcKIHVuc2lnbmVkIGxvbmcgRnJhbWVMb2FkZXI6OmxvYWRSZXNvdXJj
ZVN5bmNocm9ub3VzbHkoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBTdG9yZWRDcmVk
ZW50aWFscyBzdG9yZWRDcmVkZW50aWFscywgUmVzb3VyY2VFcnJvciYgZXJyb3IsIFJlc291cmNl
UmVzcG9uc2UmIHJlc3BvbnNlLCBWZWN0b3I8Y2hhcj4mIGRhdGEpCiB7CiAgICAgU3RyaW5nIHJl
ZmVycmVyID0gbV9vdXRnb2luZ1JlZmVycmVyOwotICAgIGlmIChzaG91bGRIaWRlUmVmZXJyZXIo
cmVxdWVzdC51cmwoKSwgcmVmZXJyZXIpKQorICAgIGlmIChTZWN1cml0eU9yaWdpbjo6c2hvdWxk
SGlkZVJlZmVycmVyKHJlcXVlc3QudXJsKCksIHJlZmVycmVyKSkKICAgICAgICAgcmVmZXJyZXIg
PSBTdHJpbmcoKTsKICAgICAKICAgICBSZXNvdXJjZVJlcXVlc3QgaW5pdGlhbFJlcXVlc3QgPSBy
ZXF1ZXN0OwpAQCAtNDc1MCw3ICs0NzE0LDcgQEAgUGFzc1JlZlB0cjxXaWRnZXQ+IEZyYW1lTG9h
ZGVyOjpjcmVhdGVKYXZhQXBwbGV0V2lkZ2V0KGNvbnN0IEludFNpemUmIHNpemUsIEhUTUwKIAog
ICAgIGlmICghY29kZUJhc2VVUkxTdHJpbmcuaXNFbXB0eSgpKSB7CiAgICAgICAgIEtVUkwgY29k
ZUJhc2VVUkwgPSBjb21wbGV0ZVVSTChjb2RlQmFzZVVSTFN0cmluZyk7Ci0gICAgICAgIGlmICgh
Y2FuTG9hZChjb2RlQmFzZVVSTCwgU3RyaW5nKCksIGVsZW1lbnQtPmRvY3VtZW50KCkpKSB7Cisg
ICAgICAgIGlmICghU2VjdXJpdHlPcmlnaW46OmNhbkxvYWQoY29kZUJhc2VVUkwsIFN0cmluZygp
LCBlbGVtZW50LT5kb2N1bWVudCgpKSkgewogICAgICAgICAgICAgRnJhbWVMb2FkZXI6OnJlcG9y
dExvY2FsTG9hZEZhaWxlZChtX2ZyYW1lLCBjb2RlQmFzZVVSTC5zdHJpbmcoKSk7CiAgICAgICAg
ICAgICByZXR1cm4gMDsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9sb2FkZXIvRnJh
bWVMb2FkZXIuaCBiL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmgKaW5kZXggOTEwNTZjYS4u
N2FhYjNmNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaAorKysgYi9X
ZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCkBAIC0xMDYsMTQgKzEwNiw4IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKICAgICAgICAgCiAgICAgICAgIHZvaWQgbG9hZEFyY2hpdmUoUGFzc1JlZlB0
cjxBcmNoaXZlPik7CiAKLSAgICAgICAgLy8gUmV0dXJucyB0cnVlIGZvciBhbnkgbm9uLWxvY2Fs
IFVSTC4gSWYgZG9jdW1lbnQgcGFyYW1ldGVyIGlzIHN1cHBsaWVkLCBpdHMgbG9jYWwgbG9hZCBw
b2xpY3kgZGljdGF0ZXMsCi0gICAgICAgIC8vIG90aGVyd2lzZSBpZiByZWZlcnJlciBpcyBub24t
ZW1wdHkgYW5kIHJlcHJlc2VudHMgYSBsb2NhbCBmaWxlLCB0aGVuIHRoZSBsb2NhbCBsb2FkIGlz
IGFsbG93ZWQuCi0gICAgICAgIHN0YXRpYyBib29sIGNhbkxvYWQoY29uc3QgS1VSTCYsIGNvbnN0
IFN0cmluZyYgcmVmZXJyZXIsIGNvbnN0IERvY3VtZW50Kik7Ci0gICAgICAgIHN0YXRpYyBib29s
IGNhbkxvYWQoY29uc3QgS1VSTCYsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIGNvbnN0IFNlY3Vy
aXR5T3JpZ2luKiA9IDApOwogICAgICAgICBzdGF0aWMgdm9pZCByZXBvcnRMb2NhbExvYWRGYWls
ZWQoRnJhbWUqLCBjb25zdCBTdHJpbmcmIHVybCk7CiAKLSAgICAgICAgc3RhdGljIGJvb2wgc2hv
dWxkSGlkZVJlZmVycmVyKGNvbnN0IEtVUkwmLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyKTsKLQog
ICAgICAgICAvLyBDYWxsZWQgYnkgY3JlYXRlV2luZG93IGluIEpTRE9NV2luZG93QmFzZS5jcHAs
IGUuZy4gdG8gZnVsZmlsbCBhIG1vZGFsIGRpYWxvZyBjcmVhdGlvbgogICAgICAgICBGcmFtZSog
Y3JlYXRlV2luZG93KEZyYW1lTG9hZGVyKiBmcmFtZUxvYWRlckZvckZyYW1lTG9va3VwLCBjb25z
dCBGcmFtZUxvYWRSZXF1ZXN0JiwgY29uc3QgV2luZG93RmVhdHVyZXMmLCBib29sJiBjcmVhdGVk
KTsKIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwIGIv
V2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4IDMzZTk0MzAuLjJlZTQ2
MjYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcAorKysg
Yi9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAKQEAgLTc0LDEyICs3NCwxMiBA
QCBQYXNzUmVmUHRyPFN1YnJlc291cmNlTG9hZGVyPiBTdWJyZXNvdXJjZUxvYWRlcjo6Y3JlYXRl
KEZyYW1lKiBmcmFtZSwgU3VicmVzb3VyYwogCiAgICAgaWYgKCFza2lwQ2FuTG9hZENoZWNrCiAg
ICAgICAgICAgICAmJiBTZWN1cml0eU9yaWdpbjo6cmVzdHJpY3RBY2Nlc3NUb0xvY2FsKCkKLSAg
ICAgICAgICAgICYmICFGcmFtZUxvYWRlcjo6Y2FuTG9hZChyZXF1ZXN0LnVybCgpLCBTdHJpbmco
KSwgZnJhbWUtPmRvY3VtZW50KCkpKSB7CisgICAgICAgICAgICAmJiAhU2VjdXJpdHlPcmlnaW46
OmNhbkxvYWQocmVxdWVzdC51cmwoKSwgU3RyaW5nKCksIGZyYW1lLT5kb2N1bWVudCgpKSkgewog
ICAgICAgICBGcmFtZUxvYWRlcjo6cmVwb3J0TG9jYWxMb2FkRmFpbGVkKGZyYW1lLCByZXF1ZXN0
LnVybCgpLnN0cmluZygpKTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQogICAgIAotICAgIGlm
IChGcmFtZUxvYWRlcjo6c2hvdWxkSGlkZVJlZmVycmVyKHJlcXVlc3QudXJsKCksIGZsLT5vdXRn
b2luZ1JlZmVycmVyKCkpKQorICAgIGlmIChTZWN1cml0eU9yaWdpbjo6c2hvdWxkSGlkZVJlZmVy
cmVyKHJlcXVlc3QudXJsKCksIGZsLT5vdXRnb2luZ1JlZmVycmVyKCkpKQogICAgICAgICBuZXdS
ZXF1ZXN0LmNsZWFySFRUUFJlZmVycmVyKCk7CiAgICAgZWxzZSBpZiAoIXJlcXVlc3QuaHR0cFJl
ZmVycmVyKCkpCiAgICAgICAgIG5ld1JlcXVlc3Quc2V0SFRUUFJlZmVycmVyKGZsLT5vdXRnb2lu
Z1JlZmVycmVyKCkpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL1NlY3VyaXR5T3JpZ2luLmNw
cCBiL1dlYkNvcmUvcGFnZS9TZWN1cml0eU9yaWdpbi5jcHAKaW5kZXggYWMwZjdmZi4uZDRhYzg0
MCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL1NlY3VyaXR5T3JpZ2luLmNwcAorKysgYi9XZWJD
b3JlL3BhZ2UvU2VjdXJpdHlPcmlnaW4uY3BwCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSAi
U2VjdXJpdHlPcmlnaW4uaCIKIAogI2luY2x1ZGUgIkNTdHJpbmcuaCIKKyNpbmNsdWRlICJEb2N1
bWVudC5oIgogI2luY2x1ZGUgIktVUkwuaCIKICNpbmNsdWRlICJPcmlnaW5BY2Nlc3NFbnRyeS5o
IgogI2luY2x1ZGUgPHd0Zi9TdGRMaWJFeHRyYXMuaD4KQEAgLTIzOCw2ICsyMzksMjAgQEAgYm9v
bCBTZWN1cml0eU9yaWdpbjo6dGFpbnRzQ2FudmFzKGNvbnN0IEtVUkwmIHVybCkgY29uc3QKICAg
ICByZXR1cm4gdHJ1ZTsKIH0KIAorYm9vbCBTZWN1cml0eU9yaWdpbjo6Y2FuTG9hZChjb25zdCBL
VVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIsIERvY3VtZW50KiBkb2N1bWVudCkKK3sK
KyAgICBpZiAoIXNob3VsZFRyZWF0VVJMQXNMb2NhbCh1cmwuc3RyaW5nKCkpKQorICAgICAgICBy
ZXR1cm4gdHJ1ZTsKKworICAgIC8vIElmIHdlIHdlcmUgcHJvdmlkZWQgYSBkb2N1bWVudCwgd2Ug
bGV0IGl0cyBsb2NhbCBmaWxlIHBvbGljeSBkaWN0YXRlIHRoZSByZXN1bHQsCisgICAgLy8gb3Ro
ZXJ3aXNlIHdlIGFsbG93IGxvY2FsIGxvYWRzIG9ubHkgaWYgdGhlIHN1cHBsaWVkIHJlZmVycmVy
IGlzIGFsc28gbG9jYWwuCisgICAgaWYgKGRvY3VtZW50KQorICAgICAgICByZXR1cm4gZG9jdW1l
bnQtPnNlY3VyaXR5T3JpZ2luKCktPmNhbkxvYWRMb2NhbFJlc291cmNlcygpOworICAgIGlmICgh
cmVmZXJyZXIuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gc2hvdWxkVHJlYXRVUkxBc0xvY2Fs
KHJlZmVycmVyKTsKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKIHZvaWQgU2VjdXJpdHlPcmlnaW46
OmdyYW50TG9hZExvY2FsUmVzb3VyY2VzKCkKIHsKICAgICAvLyBUaGlzIG1ldGhvZCBleGlzdHMg
b25seSB0byBzdXBwb3J0IGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdpdGggb2xkZXIKQEAgLTQ0
NCw2ICs0NTksMjIgQEAgYm9vbCBTZWN1cml0eU9yaWdpbjo6c2hvdWxkVHJlYXRVUkxTY2hlbWVB
c05vQWNjZXNzKGNvbnN0IFN0cmluZyYgc2NoZW1lKQogICAgIHJldHVybiBub0FjY2Vzc1NjaGVt
ZXMoKS5jb250YWlucyhzY2hlbWUpOwogfQogCitib29sIFNlY3VyaXR5T3JpZ2luOjpzaG91bGRI
aWRlUmVmZXJyZXIoY29uc3QgS1VSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyKQorewor
ICAgIGJvb2wgcmVmZXJyZXJJc1NlY3VyZVVSTCA9IHByb3RvY29sSXMocmVmZXJyZXIsICJodHRw
cyIpOworICAgIGJvb2wgcmVmZXJyZXJJc1dlYlVSTCA9IHJlZmVycmVySXNTZWN1cmVVUkwgfHwg
cHJvdG9jb2xJcyhyZWZlcnJlciwgImh0dHAiKTsKKworICAgIGlmICghcmVmZXJyZXJJc1dlYlVS
TCkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBpZiAoIXJlZmVycmVySXNTZWN1cmVVUkwp
CisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGJvb2wgVVJMSXNTZWN1cmVVUkwgPSB1cmwu
cHJvdG9jb2xJcygiaHR0cHMiKTsKKworICAgIHJldHVybiAhVVJMSXNTZWN1cmVVUkw7Cit9CisK
IHZvaWQgU2VjdXJpdHlPcmlnaW46OnNldExvY2FsTG9hZFBvbGljeShMb2NhbExvYWRQb2xpY3kg
cG9saWN5KQogewogICAgIGxvY2FsTG9hZFBvbGljeSA9IHBvbGljeTsKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvcGFnZS9TZWN1cml0eU9yaWdpbi5oIGIvV2ViQ29yZS9wYWdlL1NlY3VyaXR5T3JpZ2lu
LmgKaW5kZXggOGIyZTgxOS4uOTc2YTdiNSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL1NlY3Vy
aXR5T3JpZ2luLmgKKysrIGIvV2ViQ29yZS9wYWdlL1NlY3VyaXR5T3JpZ2luLmgKQEAgLTQwLDcg
KzQwLDggQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIHR5cGVkZWYgSGFzaFNldDxTdHJp
bmcsIENhc2VGb2xkaW5nSGFzaD4gVVJMU2NoZW1lc01hcDsKLSAgICAKKworICAgIGNsYXNzIERv
Y3VtZW50OwogICAgIGNsYXNzIEtVUkw7CiAgICAgCiAgICAgY2xhc3MgU2VjdXJpdHlPcmlnaW4g
OiBwdWJsaWMgVGhyZWFkU2FmZVNoYXJlZDxTZWN1cml0eU9yaWdpbj4gewpAQCAtODEsNiArODIs
MTEgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICAvLyBkcmF3aW5nIGFuIGltYWdlIG9u
dG8gYW4gSFRNTCBjYW52YXMgZWxlbWVudCB3aXRoIHRoZSBkcmF3SW1hZ2UgQVBJLgogICAgICAg
ICBib29sIHRhaW50c0NhbnZhcyhjb25zdCBLVVJMJikgY29uc3Q7CiAKKyAgICAgICAgLy8gUmV0
dXJucyB0cnVlIGZvciBhbnkgbm9uLWxvY2FsIFVSTC4gSWYgZG9jdW1lbnQgcGFyYW1ldGVyIGlz
IHN1cHBsaWVkLAorICAgICAgICAvLyBpdHMgbG9jYWwgbG9hZCBwb2xpY3kgZGljdGF0ZXMsIG90
aGVyd2lzZSBpZiByZWZlcnJlciBpcyBub24tZW1wdHkgYW5kCisgICAgICAgIC8vIHJlcHJlc2Vu
dHMgYSBsb2NhbCBmaWxlLCB0aGVuIHRoZSBsb2NhbCBsb2FkIGlzIGFsbG93ZWQuCisgICAgICAg
IHN0YXRpYyBib29sIGNhbkxvYWQoY29uc3QgS1VSTCYsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIs
IERvY3VtZW50KiBkb2N1bWVudCk7CisKICAgICAgICAgLy8gUmV0dXJucyB0cnVlIGlmIHRoaXMg
U2VjdXJpdHlPcmlnaW4gY2FuIGxvYWQgbG9jYWwgcmVzb3VyY2VzLCBzdWNoCiAgICAgICAgIC8v
IGFzIGltYWdlcywgaWZyYW1lcywgYW5kIHN0eWxlIHNoZWV0cywgYW5kIGNhbiBsaW5rIHRvIGxv
Y2FsIFVSTHMuCiAgICAgICAgIC8vIEZvciBleGFtcGxlLCBjYWxsIHRoaXMgZnVuY3Rpb24gYmVm
b3JlIGNyZWF0aW5nIGFuIGlmcmFtZSB0byBhCkBAIC0xNDMsNiArMTQ5LDggQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogICAgICAgICBzdGF0aWMgYm9vbCBzaG91bGRUcmVhdFVSTEFzTG9jYWwoY29u
c3QgU3RyaW5nJik7CiAgICAgICAgIHN0YXRpYyBib29sIHNob3VsZFRyZWF0VVJMU2NoZW1lQXNM
b2NhbChjb25zdCBTdHJpbmcmKTsKIAorICAgICAgICBzdGF0aWMgYm9vbCBzaG91bGRIaWRlUmVm
ZXJyZXIoY29uc3QgS1VSTCYsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIpOworCiAgICAgICAgIGVu
dW0gTG9jYWxMb2FkUG9saWN5IHsKICAgICAgICAgICAgIEFsbG93TG9jYWxMb2Fkc0ZvckFsbCwg
IC8vIE5vIHJlc3RyaWN0aW9uIG9uIGxvY2FsIGxvYWRzLgogICAgICAgICAgICAgQWxsb3dMb2Nh
bExvYWRzRm9yTG9jYWxBbmRTdWJzdGl0dXRlRGF0YSwKZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMv
Q2hhbmdlTG9nIGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5kZXggNmIzMzRlYS4uNjllNGFiZCAx
MDA2NDQKLS0tIGEvV2ViS2l0L21hYy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L21hYy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwyMyBAQAorMjAwOS0xMC0wNSAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJr
aXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IE1vdmUgRnJhbWVMb2FkZXI6OmNhbkxvYWQgdG8gU2VjdXJpdHlPcmlnaW4KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMwMTExCisKKyAgICAgICAgKiBQ
bHVnaW5zL0hvc3RlZC9Ib3N0ZWROZXRzY2FwZVBsdWdpblN0cmVhbS5tbToKKyAgICAgICAgKFdl
YktpdDo6SG9zdGVkTmV0c2NhcGVQbHVnaW5TdHJlYW06Okhvc3RlZE5ldHNjYXBlUGx1Z2luU3Ry
ZWFtKToKKyAgICAgICAgKiBQbHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJv
eHkubW06CisgICAgICAgIChXZWJLaXQ6Ok5ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eTo6bG9h
ZFJlcXVlc3QpOgorICAgICAgICAqIFBsdWdpbnMvV2ViQmFzZU5ldHNjYXBlUGx1Z2luU3RyZWFt
Lm1tOgorICAgICAgICAoV2ViTmV0c2NhcGVQbHVnaW5TdHJlYW06OldlYk5ldHNjYXBlUGx1Z2lu
U3RyZWFtKToKKyAgICAgICAgKiBQbHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2luVmlldy5tbToKKyAg
ICAgICAgKC1bV2ViTmV0c2NhcGVQbHVnaW5WaWV3IGxvYWRSZXF1ZXN0OmluVGFyZ2V0OndpdGhO
b3RpZnlEYXRhOnNlbmROb3RpZmljYXRpb246XSk6CisgICAgICAgICogUGx1Z2lucy9XZWJQbHVn
aW5Db250YWluZXJDaGVjay5tbToKKyAgICAgICAgKC1bV2ViUGx1Z2luQ29udGFpbmVyQ2hlY2sg
X2lzRm9yYmlkZGVuRmlsZUxvYWRdKToKKyAgICAgICAgKiBXZWJWaWV3L1dlYkZyYW1lLm1tOgor
ICAgICAgICAoLVtXZWJGcmFtZSBfYWxsb3dzRm9sbG93aW5nTGluazpdKToKKwogMjAwOS0xMC0w
MyAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgpkaWZmIC0tZ2l0IGEvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9I
b3N0ZWROZXRzY2FwZVBsdWdpblN0cmVhbS5tbSBiL1dlYktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQv
SG9zdGVkTmV0c2NhcGVQbHVnaW5TdHJlYW0ubW0KaW5kZXggYzBhNzM1ZS4uNWMyNWVmNyAxMDA2
NDQKLS0tIGEvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9Ib3N0ZWROZXRzY2FwZVBsdWdpblN0
cmVhbS5tbQorKysgYi9XZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL0hvc3RlZE5ldHNjYXBlUGx1
Z2luU3RyZWFtLm1tCkBAIC0zOSw2ICszOSw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL0RvY3VtZW50
TG9hZGVyLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0Zy
YW1lTG9hZGVyLmg+CisjaW1wb3J0IDxXZWJDb3JlL1NlY3VyaXR5T3JpZ2luLmg+CiAjaW1wb3J0
IDxXZWJDb3JlL1dlYkNvcmVVUkxSZXNwb25zZS5oPgogI2ltcG9ydCA8d3RmL1JlZkNvdW50ZWRM
ZWFrQ291bnRlci5oPgogCkBAIC01OCw3ICs1OSw3IEBAIEhvc3RlZE5ldHNjYXBlUGx1Z2luU3Ry
ZWFtOjpIb3N0ZWROZXRzY2FwZVBsdWdpblN0cmVhbShOZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJv
CiAgICAgLCBtX3JlcXVlc3RVUkwoW3JlcXVlc3QgVVJMXSkKICAgICAsIG1fZnJhbWVMb2FkZXIo
MCkKIHsKLSAgICBpZiAoY29yZShbaW5zdGFuY2UtPnBsdWdpblZpZXcoKSB3ZWJGcmFtZV0pLT5s
b2FkZXIoKS0+c2hvdWxkSGlkZVJlZmVycmVyKFtyZXF1ZXN0IFVSTF0sIGNvcmUoW2luc3RhbmNl
LT5wbHVnaW5WaWV3KCkgd2ViRnJhbWVdKS0+bG9hZGVyKCktPm91dGdvaW5nUmVmZXJyZXIoKSkp
CisgICAgaWYgKFNlY3VyaXR5T3JpZ2luOjpzaG91bGRIaWRlUmVmZXJyZXIoW3JlcXVlc3QgVVJM
XSwgY29yZShbaW5zdGFuY2UtPnBsdWdpblZpZXcoKSB3ZWJGcmFtZV0pLT5sb2FkZXIoKS0+b3V0
Z29pbmdSZWZlcnJlcigpKSkKICAgICAgICAgW21fcmVxdWVzdC5nZXQoKSBfd2ViX3NldEhUVFBS
ZWZlcnJlcjpuaWxdOwogCiAjaWZuZGVmIE5ERUJVRwpkaWZmIC0tZ2l0IGEvV2ViS2l0L21hYy9Q
bHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJveHkubW0gYi9XZWJLaXQvbWFj
L1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbQppbmRleCBkZTE1
OWY0Li4yMWYzNWUyIDEwMDY0NAotLS0gYS9XZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNj
YXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbQorKysgYi9XZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVk
L05ldHNjYXBlUGx1Z2luSW5zdGFuY2VQcm94eS5tbQpAQCAtNDksNiArNDksNyBAQAogI2ltcG9y
dCA8V2ViQ29yZS9GcmFtZUxvYWRlci5oPgogI2ltcG9ydCA8V2ViQ29yZS9GcmFtZVRyZWUuaD4K
ICNpbXBvcnQgPFdlYkNvcmUvS1VSTC5oPgorI2ltcG9ydCA8V2ViQ29yZS9TZWN1cml0eU9yaWdp
bi5oPgogI2ltcG9ydCA8V2ViQ29yZS9TY3JpcHRDb250cm9sbGVyLmg+CiAjaW1wb3J0IDxXZWJD
b3JlL1NjcmlwdFZhbHVlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1N0cmluZ1NvdXJjZVByb3ZpZGVy
Lmg+CkBAIC01OTgsNyArNTk5LDcgQEAgTlBFcnJvciBOZXRzY2FwZVBsdWdpbkluc3RhbmNlUHJv
eHk6OmxvYWRSZXF1ZXN0KE5TVVJMUmVxdWVzdCAqcmVxdWVzdCwgY29uc3QgY2gKICAgICAgICAg
ICAgIHJldHVybiBOUEVSUl9HRU5FUklDX0VSUk9SOwogICAgICAgICB9CiAgICAgfSBlbHNlIHsK
LSAgICAgICAgaWYgKCFGcmFtZUxvYWRlcjo6Y2FuTG9hZChVUkwsIFN0cmluZygpLCBjb3JlKFtt
X3BsdWdpblZpZXcgd2ViRnJhbWVdKS0+ZG9jdW1lbnQoKSkpCisgICAgICAgIGlmICghU2VjdXJp
dHlPcmlnaW46OmNhbkxvYWQoVVJMLCBTdHJpbmcoKSwgY29yZShbbV9wbHVnaW5WaWV3IHdlYkZy
YW1lXSktPmRvY3VtZW50KCkpKQogICAgICAgICAgICAgcmV0dXJuIE5QRVJSX0dFTkVSSUNfRVJS
T1I7CiAgICAgfQogICAgIApkaWZmIC0tZ2l0IGEvV2ViS2l0L21hYy9QbHVnaW5zL1dlYkJhc2VO
ZXRzY2FwZVBsdWdpblN0cmVhbS5tbSBiL1dlYktpdC9tYWMvUGx1Z2lucy9XZWJCYXNlTmV0c2Nh
cGVQbHVnaW5TdHJlYW0ubW0KaW5kZXggZGU0NGU0OS4uMjMyYTZjNCAxMDA2NDQKLS0tIGEvV2Vi
S2l0L21hYy9QbHVnaW5zL1dlYkJhc2VOZXRzY2FwZVBsdWdpblN0cmVhbS5tbQorKysgYi9XZWJL
aXQvbWFjL1BsdWdpbnMvV2ViQmFzZU5ldHNjYXBlUGx1Z2luU3RyZWFtLm1tCkBAIC00Miw2ICs0
Miw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL0RvY3VtZW50TG9hZGVyLmg+CiAjaW1wb3J0IDxXZWJD
b3JlL0ZyYW1lLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lTG9hZGVyLmg+CisjaW1wb3J0IDxX
ZWJDb3JlL1NlY3VyaXR5T3JpZ2luLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVPYmpDRXh0
cmFzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVVUkxSZXNwb25zZS5oPgogI2ltcG9ydCA8
V2ViS2l0U3lzdGVtSW50ZXJmYWNlLmg+CkBAIC0xNjAsNyArMTYxLDcgQEAgV2ViTmV0c2NhcGVQ
bHVnaW5TdHJlYW06OldlYk5ldHNjYXBlUGx1Z2luU3RyZWFtKE5TVVJMUmVxdWVzdCAqcmVxdWVz
dCwgTlBQIHBsdWcKICAgICBXZWJOZXRzY2FwZVBsdWdpblZpZXcgKnZpZXcgPSAoV2ViTmV0c2Nh
cGVQbHVnaW5WaWV3ICopcGx1Z2luLT5uZGF0YTsKICAgICAKICAgICAvLyBUaGlzIGNoZWNrIGhh
cyBhbHJlYWR5IGJlZW4gZG9uZSBieSB0aGUgcGx1Zy1pbiB2aWV3LgotICAgIEFTU0VSVChGcmFt
ZUxvYWRlcjo6Y2FuTG9hZChbcmVxdWVzdCBVUkxdLCBTdHJpbmcoKSwgY29yZShbdmlldyB3ZWJG
cmFtZV0pLT5kb2N1bWVudCgpKSk7CisgICAgQVNTRVJUKFNlY3VyaXR5T3JpZ2luOjpjYW5Mb2Fk
KFtyZXF1ZXN0IFVSTF0sIFN0cmluZygpLCBjb3JlKFt2aWV3IHdlYkZyYW1lXSktPmRvY3VtZW50
KCkpKTsKICAgICAKICAgICBBU1NFUlQoW3JlcXVlc3QgVVJMXSk7CiAgICAgQVNTRVJUKHBsdWdp
bik7CkBAIC0xNjksNyArMTcwLDcgQEAgV2ViTmV0c2NhcGVQbHVnaW5TdHJlYW06OldlYk5ldHNj
YXBlUGx1Z2luU3RyZWFtKE5TVVJMUmVxdWVzdCAqcmVxdWVzdCwgTlBQIHBsdWcKICAgICAKICAg
ICBzdHJlYW1zKCkuYWRkKCZtX3N0cmVhbSwgcGx1Z2luKTsKICAgICAgICAgCi0gICAgaWYgKGNv
cmUoW3ZpZXcgd2ViRnJhbWVdKS0+bG9hZGVyKCktPnNob3VsZEhpZGVSZWZlcnJlcihbcmVxdWVz
dCBVUkxdLCBjb3JlKFt2aWV3IHdlYkZyYW1lXSktPmxvYWRlcigpLT5vdXRnb2luZ1JlZmVycmVy
KCkpKQorICAgIGlmIChTZWN1cml0eU9yaWdpbjo6c2hvdWxkSGlkZVJlZmVycmVyKFtyZXF1ZXN0
IFVSTF0sIGNvcmUoW3ZpZXcgd2ViRnJhbWVdKS0+bG9hZGVyKCktPm91dGdvaW5nUmVmZXJyZXIo
KSkpCiAgICAgICAgIFttX3JlcXVlc3QuZ2V0KCkgX3dlYl9zZXRIVFRQUmVmZXJyZXI6bmlsXTsK
IH0KIApkaWZmIC0tZ2l0IGEvV2ViS2l0L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2luVmll
dy5tbSBiL1dlYktpdC9tYWMvUGx1Z2lucy9XZWJOZXRzY2FwZVBsdWdpblZpZXcubW0KaW5kZXgg
NWM4MmE5YS4uNWRlYmI5NyAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9QbHVnaW5zL1dlYk5ldHNj
YXBlUGx1Z2luVmlldy5tbQorKysgYi9XZWJLaXQvbWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQbHVn
aW5WaWV3Lm1tCkBAIC02OSw2ICs2OSw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL1BhZ2UuaD4gCiAj
aW1wb3J0IDxXZWJDb3JlL1BsdWdpbk1haW5UaHJlYWRTY2hlZHVsZXIuaD4KICNpbXBvcnQgPFdl
YkNvcmUvU2NyaXB0Q29udHJvbGxlci5oPgorI2ltcG9ydCA8V2ViQ29yZS9TZWN1cml0eU9yaWdp
bi5oPgogI2ltcG9ydCA8V2ViQ29yZS9Tb2Z0TGlua2luZy5oPiAKICNpbXBvcnQgPFdlYkNvcmUv
V2ViQ29yZU9iakNFeHRyYXMuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZVVSTFJlc3BvbnNl
Lmg+CkBAIC0xNjgyLDcgKzE2ODMsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgZ2V0TlBSZWN0KGNv
bnN0IE5TUmVjdCYgbnIsIE5QUmVjdCYgbnByKQogICAgICAgICAgICAgcmV0dXJuIE5QRVJSX0lO
VkFMSURfUEFSQU07CiAgICAgICAgIH0KICAgICB9IGVsc2UgewotICAgICAgICBpZiAoIUZyYW1l
TG9hZGVyOjpjYW5Mb2FkKFVSTCwgU3RyaW5nKCksIGNvcmUoW3NlbGYgd2ViRnJhbWVdKS0+ZG9j
dW1lbnQoKSkpCisgICAgICAgIGlmICghU2VjdXJpdHlPcmlnaW46OmNhbkxvYWQoVVJMLCBTdHJp
bmcoKSwgY29yZShbc2VsZiB3ZWJGcmFtZV0pLT5kb2N1bWVudCgpKSkKICAgICAgICAgICAgIHJl
dHVybiBOUEVSUl9HRU5FUklDX0VSUk9SOwogICAgIH0KICAgICAgICAgCmRpZmYgLS1naXQgYS9X
ZWJLaXQvbWFjL1BsdWdpbnMvV2ViUGx1Z2luQ29udGFpbmVyQ2hlY2subW0gYi9XZWJLaXQvbWFj
L1BsdWdpbnMvV2ViUGx1Z2luQ29udGFpbmVyQ2hlY2subW0KaW5kZXggMjE4MGIwMi4uNTYwOWQ4
MCAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9QbHVnaW5zL1dlYlBsdWdpbkNvbnRhaW5lckNoZWNr
Lm1tCisrKyBiL1dlYktpdC9tYWMvUGx1Z2lucy9XZWJQbHVnaW5Db250YWluZXJDaGVjay5tbQpA
QCAtNDAsNiArNDAsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9GcmFtZS5oPgogI2ltcG9ydCA8V2Vi
Q29yZS9GcmFtZUxvYWRlci5oPgogI2ltcG9ydCA8V2ViQ29yZS9GcmFtZUxvYWRlclR5cGVzLmg+
CisjaW1wb3J0IDxXZWJDb3JlL1NlY3VyaXR5T3JpZ2luLmg+CiAjaW1wb3J0IDx3dGYvQXNzZXJ0
aW9ucy5oPgogI2ltcG9ydCA8b2JqYy9vYmpjLXJ1bnRpbWUuaD4KIApAQCAtOTgsNyArOTksNyBA
QCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIHsKICAgIEZyYW1lKiBjb3JlRnJhbWUgPSBjb3Jl
KFtfY29udHJvbGxlciB3ZWJGcmFtZV0pOwogICAgQVNTRVJUKGNvcmVGcmFtZSk7Ci0gICBpZiAo
IWNvcmVGcmFtZS0+bG9hZGVyKCktPmNhbkxvYWQoW19yZXF1ZXN0IFVSTF0sIFN0cmluZygpLCBj
b3JlRnJhbWUtPmRvY3VtZW50KCkpKSB7CisgICBpZiAoIVNlY3VyaXR5T3JpZ2luOjpjYW5Mb2Fk
KFtfcmVxdWVzdCBVUkxdLCBTdHJpbmcoKSwgY29yZUZyYW1lLT5kb2N1bWVudCgpKSkgewogICAg
ICAgIFtzZWxmIF9jb250aW51ZVdpdGhQb2xpY3k6UG9saWN5SWdub3JlXTsKICAgICAgICByZXR1
cm4gWUVTOwogICAgfQpkaWZmIC0tZ2l0IGEvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkZyYW1lLm1t
IGIvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkZyYW1lLm1tCmluZGV4IDY3MmYxODkuLjI3YWFjNjcg
MTAwNjQ0Ci0tLSBhL1dlYktpdC9tYWMvV2ViVmlldy9XZWJGcmFtZS5tbQorKysgYi9XZWJLaXQv
bWFjL1dlYlZpZXcvV2ViRnJhbWUubW0KQEAgLTExOTksNyArMTE5OSw3IEBAIHN0YXRpYyBpbmxp
bmUgV2ViRGF0YVNvdXJjZSAqZGF0YVNvdXJjZShEb2N1bWVudExvYWRlciogbG9hZGVyKQogewog
ICAgIGlmICghX3ByaXZhdGUtPmNvcmVGcmFtZSkKICAgICAgICAgcmV0dXJuIFlFUzsKLSAgICBy
ZXR1cm4gRnJhbWVMb2FkZXI6OmNhbkxvYWQoVVJMLCBTdHJpbmcoKSwgX3ByaXZhdGUtPmNvcmVG
cmFtZS0+ZG9jdW1lbnQoKSk7CisgICAgcmV0dXJuIFNlY3VyaXR5T3JpZ2luOjpjYW5Mb2FkKFVS
TCwgU3RyaW5nKCksIF9wcml2YXRlLT5jb3JlRnJhbWUtPmRvY3VtZW50KCkpOwogfQogCiBAZW5k
CmRpZmYgLS1naXQgYS9XZWJLaXQvd2luL0NoYW5nZUxvZyBiL1dlYktpdC93aW4vQ2hhbmdlTG9n
CmluZGV4IDgxZjUxZjEuLmEwYmQwOWEgMTAwNjQ0Ci0tLSBhL1dlYktpdC93aW4vQ2hhbmdlTG9n
CisrKyBiL1dlYktpdC93aW4vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMDktMTAtMDUg
IEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNb3ZlIEZyYW1lTG9hZGVyOjpjYW5Mb2FkIHRvIFNl
Y3VyaXR5T3JpZ2luCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0zMDExMQorCisgICAgICAgICogV2ViRnJhbWUuY3BwOgorICAgICAgICAoV2ViRnJhbWU6
OmFsbG93c0ZvbGxvd2luZ0xpbmspOgorCiAyMDA5LTEwLTA1ICBQYXZlbCBGZWxkbWFuICA8cGZl
bGRtYW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkgSGF0Y2hl
ci4KZGlmZiAtLWdpdCBhL1dlYktpdC93aW4vV2ViRnJhbWUuY3BwIGIvV2ViS2l0L3dpbi9XZWJG
cmFtZS5jcHAKaW5kZXggMzZlOGNmYy4uNDRlZmU4MyAxMDA2NDQKLS0tIGEvV2ViS2l0L3dpbi9X
ZWJGcmFtZS5jcHAKKysrIGIvV2ViS2l0L3dpbi9XZWJGcmFtZS5jcHAKQEAgLTk0LDYgKzk0LDcg
QEAKICNpbmNsdWRlIDxXZWJDb3JlL1RleHRJdGVyYXRvci5oPgogI2luY2x1ZGUgPFdlYkNvcmUv
SlNET01CaW5kaW5nLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9TY3JpcHRDb250cm9sbGVyLmg+Cisj
aW5jbHVkZSA8V2ViQ29yZS9TZWN1cml0eU9yaWdpbi5oPgogI2luY2x1ZGUgPEphdmFTY3JpcHRD
b3JlL0FQSUNhc3QuaD4KICNpbmNsdWRlIDx3dGYvTWF0aEV4dHJhcy5oPgogI3ByYWdtYSB3YXJu
aW5nKHBvcCkKQEAgLTExNTksNyArMTE2MCw3IEBAIEhSRVNVTFQgV2ViRnJhbWU6OmFsbG93c0Zv
bGxvd2luZ0xpbmsoQlNUUiB1cmwsIEJPT0wqIHJlc3VsdCkKICAgICBpZiAoIWZyYW1lKQogICAg
ICAgICByZXR1cm4gRV9GQUlMOwogCi0gICAgKnJlc3VsdCA9IEZyYW1lTG9hZGVyOjpjYW5Mb2Fk
KE1hcnNoYWxsaW5nSGVscGVyczo6QlNUUlRvS1VSTCh1cmwpLCBTdHJpbmcoKSwgZnJhbWUtPmRv
Y3VtZW50KCkpOworICAgICpyZXN1bHQgPSBTZWN1cml0eU9yaWdpbjo6Y2FuTG9hZChNYXJzaGFs
bGluZ0hlbHBlcnM6OkJTVFJUb0tVUkwodXJsKSwgU3RyaW5nKCksIGZyYW1lLT5kb2N1bWVudCgp
KTsKICAgICByZXR1cm4gU19PSzsKIH0=
</data>

          </attachment>
      

    </bug>

</bugzilla>