<?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>197259</bug_id>
          
          <creation_ts>2019-04-24 16:25:40 -0700</creation_ts>
          <short_desc>Add SPI to set HSTS storage directory</short_desc>
          <delta_ts>2019-05-08 16:12:03 -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>WebKit 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="Alex Christensen">achristensen</reporter>
          <assigned_to name="Alex Christensen">achristensen</assigned_to>
          <cc>beidson</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1530233</commentid>
    <comment_count>0</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-04-24 16:25:40 -0700</bug_when>
    <thetext>Add SPI to set HSTS storage directory</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530244</commentid>
    <comment_count>1</comment_count>
      <attachid>368200</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-04-24 16:51:34 -0700</bug_when>
    <thetext>Created attachment 368200
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530245</commentid>
    <comment_count>2</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-04-24 16:51:37 -0700</bug_when>
    <thetext>&lt;rdar://problem/48797895&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530254</commentid>
    <comment_count>3</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-04-24 17:08:29 -0700</bug_when>
    <thetext>Note: requested test SPI here: rdar://problem/50188304</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1534168</commentid>
    <comment_count>4</comment_count>
      <attachid>369335</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-05-07 16:59:42 -0700</bug_when>
    <thetext>Created attachment 369335
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1534170</commentid>
    <comment_count>5</comment_count>
      <attachid>369335</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-05-07 17:01:45 -0700</bug_when>
    <thetext>Comment on attachment 369335
Patch

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

This is ready for review.

&gt; Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h:73
&gt; +@property (nonatomic, nullable, copy, setter=setHSTSStorageDirectory:) NSURL *hstsStorageDirectory WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA));

I made this an NSURL instead of an NSString to match other directories on _WKWebsiteDataStoreConfiguration.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1534542</commentid>
    <comment_count>6</comment_count>
      <attachid>369335</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-05-08 16:12:01 -0700</bug_when>
    <thetext>Comment on attachment 369335
Patch

Clearing flags on attachment: 369335

Committed r245075: &lt;https://trac.webkit.org/changeset/245075&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1534543</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-05-08 16:12:03 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>368200</attachid>
            <date>2019-04-24 16:51:34 -0700</date>
            <delta_ts>2019-05-07 16:59:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197259-20190424165133.patch</filename>
            <type>text/plain</type>
            <size>12013</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNDQ1OTYpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDEyIEBACisyMDE5LTA0LTI0ICBBbGV4IENocmlzdGVuc2VuICA8
YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQWRkIFNQSSB0byBzZXQgSFNUUyBz
dG9yYWdlIGRpcmVjdG9yeQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTk3MjU5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiB3dGYvUGxhdGZvcm0uaDoKKwogMjAxOS0wNC0yNCAgY2hyaXMgZmxlaXphY2gg
IDxjZmxlaXphY2hAYXBwbGUuY29tPgogCiAgICAgICAgIEFYOiBSZW1vdmUgZGVwcmVjYXRlZCBB
Y2Nlc3NpYmlsaXR5IE9iamVjdCBNb2RlbCBldmVudHMKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1Bs
YXRmb3JtLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUGxhdGZvcm0uaAkocmV2aXNp
b24gMjQ0NTk2KQorKysgU291cmNlL1dURi93dGYvUGxhdGZvcm0uaAkod29ya2luZyBjb3B5KQpA
QCAtMTM2MSw2ICsxMzYxLDEwIEBACiAjZGVmaW5lIFVTRV9TT1VSQ0VfQVBQTElDQVRJT05fQVVE
SVRfREFUQSAxCiAjZW5kaWYKIAorI2lmIChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVS
U0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxNTAwKSB8fCAoUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYg
X19JUEhPTkVfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTMwMDAwKQorI2RlZmluZSBIQVZF
X0hTVFNfU1RPUkFHRV9QQVRIIDEKKyNlbmRpZgorCiAjaWYgKFBMQVRGT1JNKE1BQykgJiYgX19N
QUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDApIHx8IFBMQVRGT1JNKElPUykg
fHwgUExBVEZPUk0oSU9TTUFDKQogI2RlZmluZSBIQVZFX1VSTF9GT1JNQVRUSU5HIDEKICNlbmRp
ZgpJbmRleDogU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNDQ2MjYpCisrKyBTb3VyY2UvV2Vi
Q29yZS9QQUwvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTkt
MDQtMjQgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAg
ICAgICBBZGQgU1BJIHRvIHNldCBIU1RTIHN0b3JhZ2UgZGlyZWN0b3J5CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTcyNTkKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBhbC9zcGkvY2YvQ0ZOZXR3b3Jr
U1BJLmg6CisKIDIwMTktMDQtMjQgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5j
b20+CiAKICAgICAgICAgQ2xlYW4gdXAgV0tBY3Rpb25TaGVldEFzc2lzdGFudCdzIHVzZSBvZiBM
YXVuY2hTZXJ2aWNlcwpJbmRleDogU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ0ZOZXR3
b3JrU1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ0ZO
ZXR3b3JrU1BJLmgJKHJldmlzaW9uIDI0NDU5NikKKysrIFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwv
c3BpL2NmL0NGTmV0d29ya1NQSS5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMjUsNiArMzI1LDEwIEBA
IHZvaWQgX0NGVVJMUmVxdWVzdENyZWF0ZUFyY2hpdmVMaXN0KENGQWwKIENGTXV0YWJsZVVSTFJl
cXVlc3RSZWYgX0NGVVJMUmVxdWVzdENyZWF0ZUZyb21BcmNoaXZlTGlzdChDRkFsbG9jYXRvclJl
ZiwgQ0ZJbmRleCB2ZXJzaW9uLCBDRlR5cGVSZWYqIG9iamVjdHMsIENGSW5kZXggb2JqZWN0Q291
bnQsIENGRGljdGlvbmFyeVJlZiBwcm90b2NvbFByb3BlcnRpZXMpOwogdm9pZCBDRlVSTFJlcXVl
c3RTZXRQcm94eVNldHRpbmdzKENGTXV0YWJsZVVSTFJlcXVlc3RSZWYsIENGRGljdGlvbmFyeVJl
Zik7CiAKKyNpZiBIQVZFKEhTVFNfU1RPUkFHRV9QQVRIKQordm9pZCBfQ0ZOZXR3b3JrU2V0SFNU
U1N0b3JhZ2VQYXRoKENGU3RyaW5nUmVmKTsKKyNlbmRpZgorCiAjZW5kaWYgLy8gIVBMQVRGT1JN
KFdJTikKIAogQ0ZOX0VYUE9SVCBjb25zdCBDRlN0cmluZ1JlZiBrQ0ZTdHJlYW1Qcm9wZXJ0eUNP
Tk5FQ1RQcm94eTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNDQ1OTcpCisrKyBTb3VyY2UvV2Vi
S2l0L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMzIEBACisyMDE5LTA0LTI0
ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAg
QWRkIFNQSSB0byBzZXQgSFNUUyBzdG9yYWdlIGRpcmVjdG9yeQorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk3MjU5CisgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS80ODc5Nzg5NT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBJdCBpcyB3aXRoIGdyZWF0IHNhZG5lc3MgdGhhdCBJIGxhbWVudCB0aGUgZGVzaWdu
IG9mIHRoaXMgU1BJLCB3aGljaCBpcyBuZWNlc3NpdGF0ZWQgYnkgdGhlIHByb2Nlc3MtZ2xvYmFs
IG5hdHVyZSBvZiB0aGUgU1BJIHRoYXQKKyAgICAgICAgSSBtdXN0IGNhbGwgYW5kIHRoZSB0aW1l
IGF0IHdoaWNoIEkgbXVzdCBjYWxsIGl0IChiZWZvcmUgYW55IG5ldHdvcmtpbmcgY2FsbHMgaGF2
ZSBiZWVuIG1hZGUpLgorICAgICAgICBJJ20gYWxzbyBub3QgdGhyaWxsZWQgYWJvdXQgdGhlIGZh
Y3QgdGhhdCB0aGUgdW5pdCB0ZXN0IGluZnJhc3RydWN0dXJlIEkgZGV2ZWxvcGVkIGZvciB0aGlz
IGluIHIyNDQ1OTQgY2Fubm90IGJlIHVzZWQgYmVjYXVzZQorICAgICAgICB0aGUgU1BJIHRoYXQg
SSBtdXN0IGNhbGwgZG9lcyBub3Qgd29yayBvbiBpT1Mgc2ltdWxhdG9yIG9yIE1hYy4gIEkgaGF2
ZSB2ZXJpZmllZCB0aGUgU1BJIGlzIGJlaW5nIGNhbGxlZCBhbmQgdGhhdCB3aGVuIGNhbGxlZCBv
biBpT1MsCisgICAgICAgIGFuZCB0aGF0IENGTmV0d29yayBkb2VzIHRoZSByaWdodCB0aGluZyB3
aXRoIGl0LgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlv
blBhcmFtZXRlcnMuY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzc0NyZWF0aW9u
UGFyYW1ldGVyczo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nl
c3NDcmVhdGlvblBhcmFtZXRlcnM6OmRlY29kZSk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mv
TmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaDoKKyAgICAgICAgKiBOZXR3b3JrUHJv
Y2Vzcy9jb2NvYS9OZXR3b3JrUHJvY2Vzc0NvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFsaXplTmV0d29ya1Byb2Nlc3NDb2NvYSk6CisgICAg
ICAgICogVUlQcm9jZXNzL0FQSS9BUElQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uY3BwOgorICAg
ICAgICAoQVBJOjpQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb246OmNvcHkpOgorICAgICAgICAqIFVJ
UHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmg6CisgICAgICAgICogVUlQ
cm9jZXNzL0FQSS9Db2NvYS9fV0tQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uaDoKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS1Byb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5tbToKKyAg
ICAgICAgKC1bX1dLUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uIHNldEhTVFNTdG9yYWdlRGlyZWN0
b3J5Ol0pOgorICAgICAgICAoLVtfV0tQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24gaHN0c1N0b3Jh
Z2VEaXJlY3RvcnldKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6ZW5zdXJlTmV0d29ya1Byb2Nlc3MpOgor
CiAyMDE5LTA0LTI0ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+
CiAKICAgICAgICAgV0tDb250ZW50UnVsZUxpc3RzIHNob3VsZCBoYXZlIGEgbWF4aW11bSBGaWxl
UHJvdGVjdGlvbiBvZiBDb21wbGV0ZVVubGVzc09wZW4KSW5kZXg6IFNvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlv
blBhcmFtZXRlcnMuY3BwCShyZXZpc2lvbiAyNDQ1OTYpCisrKyBTb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtOTEsNiArOTEsOCBAQCB2b2lkIE5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0
ZXJzOjplCiAgICAgZW5jb2RlciA8PCBzaG91bGRFbmFibGVJVFBEYXRhYmFzZTsKICAgICBlbmNv
ZGVyIDw8IGRvd25sb2FkTW9uaXRvclNwZWVkTXVsdGlwbGllcjsKICAgICBlbmNvZGVyIDw8IGlz
SVRQRmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbEVuYWJsZWQ7CisgICAgZW5jb2RlciA8PCBo
c3RzU3RvcmFnZURpcmVjdG9yeTsKKyAgICBlbmNvZGVyIDw8IGhzdHNTdG9yYWdlRGlyZWN0b3J5
RXh0ZW5zaW9uSGFuZGxlOwogfQogCiBib29sIE5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0
ZXJzOjpkZWNvZGUoSVBDOjpEZWNvZGVyJiBkZWNvZGVyLCBOZXR3b3JrUHJvY2Vzc0NyZWF0aW9u
UGFyYW1ldGVycyYgcmVzdWx0KQpAQCAtMjIwLDYgKzIyMiwxMiBAQCBib29sIE5ldHdvcmtQcm9j
ZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjpkCiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShyZXN1bHQu
aXNJVFBGaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsRW5hYmxlZCkpCiAgICAgICAgIHJldHVy
biBmYWxzZTsKIAorICAgIGlmICghZGVjb2Rlci5kZWNvZGUocmVzdWx0LmhzdHNTdG9yYWdlRGly
ZWN0b3J5KSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgaWYgKCFkZWNvZGVyLmRlY29k
ZShyZXN1bHQuaHN0c1N0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpKQorICAgICAgICBy
ZXR1cm4gZmFsc2U7CisgICAgCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNz
Q3JlYXRpb25QYXJhbWV0ZXJzLmgJKHJldmlzaW9uIDI0NDU5NikKKysrIFNvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMTA5LDYgKzEwOSw4IEBAIHN0cnVjdCBOZXR3b3JrUHJvY2Vzc0NyZWF0aW9u
UGFyYW1ldGVycyAKICAgICBib29sIHNob3VsZEVuYWJsZUlUUERhdGFiYXNlIHsgZmFsc2UgfTsK
ICAgICBib29sIGlzSVRQRmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbEVuYWJsZWQgeyB0cnVl
IH07CiAgICAgdWludDMyX3QgZG93bmxvYWRNb25pdG9yU3BlZWRNdWx0aXBsaWVyIHsgMSB9Owor
ICAgIFN0cmluZyBoc3RzU3RvcmFnZURpcmVjdG9yeTsKKyAgICBTYW5kYm94RXh0ZW5zaW9uOjpI
YW5kbGUgaHN0c1N0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7CiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJLaXQKSW5kZXg6IFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2Ev
TmV0d29ya1Byb2Nlc3NDb2NvYS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL2NvY29hL05ldHdvcmtQcm9jZXNzQ29jb2EubW0JKHJldmlzaW9uIDI0NDU5NikK
KysrIFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Byb2Nlc3NDb2Nv
YS5tbQkod29ya2luZyBjb3B5KQpAQCAtNzIsNiArNzIsMTMgQEAgdm9pZCBOZXR3b3JrUHJvY2Vz
czo6cGxhdGZvcm1Jbml0aWFsaXplTgogICAgIFdlYkNvcmU6OnNldEFwcGxpY2F0aW9uQnVuZGxl
SWRlbnRpZmllcihwYXJhbWV0ZXJzLnVpUHJvY2Vzc0J1bmRsZUlkZW50aWZpZXIpOwogICAgIFdl
YkNvcmU6OnNldEFwcGxpY2F0aW9uU0RLVmVyc2lvbihwYXJhbWV0ZXJzLnVpUHJvY2Vzc1NES1Zl
cnNpb24pOwogCisjaWYgSEFWRShIU1RTX1NUT1JBR0VfUEFUSCkKKyAgICBpZiAoIXBhcmFtZXRl
cnMuaHN0c1N0b3JhZ2VEaXJlY3RvcnkuaXNOdWxsKCkpIHsKKyAgICAgICAgU2FuZGJveEV4dGVu
c2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMuaHN0c1N0b3JhZ2VEaXJlY3RvcnlF
eHRlbnNpb25IYW5kbGUpOworICAgICAgICBfQ0ZOZXR3b3JrU2V0SFNUU1N0b3JhZ2VQYXRoKHBh
cmFtZXRlcnMuaHN0c1N0b3JhZ2VEaXJlY3RvcnkuY3JlYXRlQ0ZTdHJpbmcoKS5nZXQoKSk7Cisg
ICAgfQorI2VuZGlmCisKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIFNhbmRib3hFeHRl
bnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShwYXJhbWV0ZXJzLmNvb2tpZVN0b3JhZ2VEaXJlY3Rv
cnlFeHRlbnNpb25IYW5kbGUpOwogICAgIFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5l
bnRseShwYXJhbWV0ZXJzLmNvbnRhaW5lckNhY2hlc0RpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7
CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCShyZXZp
c2lvbiAyNDQ1OTYpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTUzNSw2ICs1MzUsMTAgQEAgTmV0d29ya1Byb2Nlc3NQcm94
eSYgV2ViUHJvY2Vzc1Bvb2w6OmVucwogI2VuZGlmCiAjZW5kaWYKIAorICAgIHBhcmFtZXRlcnMu
aHN0c1N0b3JhZ2VEaXJlY3RvcnkgPSBtX2NvbmZpZ3VyYXRpb24tPmhzdHNTdG9yYWdlRGlyZWN0
b3J5KCk7CisgICAgaWYgKCFwYXJhbWV0ZXJzLmhzdHNTdG9yYWdlRGlyZWN0b3J5LmlzTnVsbCgp
KQorICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JSZWFkV3JpdGVEaXJl
Y3RvcnkocGFyYW1ldGVycy5oc3RzU3RvcmFnZURpcmVjdG9yeSwgcGFyYW1ldGVycy5oc3RzU3Rv
cmFnZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7CisKICAgICBwYXJhbWV0ZXJzLnNob3VsZFVz
ZVRlc3RpbmdOZXR3b3JrU2Vzc2lvbiA9IG1fc2hvdWxkVXNlVGVzdGluZ05ldHdvcmtTZXNzaW9u
OwogCiAgICAgcGFyYW1ldGVycy51cmxTY2hlbWVzUmVnaXN0ZXJlZEFzU2VjdXJlID0gY29weVRv
VmVjdG9yKG1fc2NoZW1lc1RvUmVnaXN0ZXJBc1NlY3VyZSk7CkluZGV4OiBTb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0
aW9uLmNwcAkocmV2aXNpb24gMjQ0NTk2KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEzMSw2
ICsxMzEsNyBAQCBSZWY8UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uPiBQcm9jZXNzUG9vCiAjZW5k
aWYKICAgICBjb3B5LT5tX2N1c3RvbVdlYkNvbnRlbnRTZXJ2aWNlQnVuZGxlSWRlbnRpZmllciA9
IHRoaXMtPm1fY3VzdG9tV2ViQ29udGVudFNlcnZpY2VCdW5kbGVJZGVudGlmaWVyOwogICAgIGNv
cHktPm1fdXNlc1NpbmdsZVdlYlByb2Nlc3MgPSBtX3VzZXNTaW5nbGVXZWJQcm9jZXNzOworICAg
IGNvcHktPm1faHN0c1N0b3JhZ2VEaXJlY3RvcnkgPSBtX2hzdHNTdG9yYWdlRGlyZWN0b3J5Owog
CiAgICAgcmV0dXJuIGNvcHk7CiB9CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkv
QVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5oCShyZXZpc2lvbiAy
NDQ1OTYpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25m
aWd1cmF0aW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTE4MCw2ICsxODAsOSBAQCBwdWJsaWM6CiAg
ICAgY29uc3QgV1RGOjpTdHJpbmcmIGN1c3RvbVdlYkNvbnRlbnRTZXJ2aWNlQnVuZGxlSWRlbnRp
ZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fY3VzdG9tV2ViQ29udGVudFNlcnZpY2VCdW5kbGVJZGVu
dGlmaWVyOyB9CiAgICAgdm9pZCBzZXRDdXN0b21XZWJDb250ZW50U2VydmljZUJ1bmRsZUlkZW50
aWZpZXIoY29uc3QgV1RGOjpTdHJpbmcmIGN1c3RvbVdlYkNvbnRlbnRTZXJ2aWNlQnVuZGxlSWRl
bnRpZmllcikgeyBtX2N1c3RvbVdlYkNvbnRlbnRTZXJ2aWNlQnVuZGxlSWRlbnRpZmllciA9IGN1
c3RvbVdlYkNvbnRlbnRTZXJ2aWNlQnVuZGxlSWRlbnRpZmllcjsgfQogCisgICAgY29uc3QgV1RG
OjpTdHJpbmcmIGhzdHNTdG9yYWdlRGlyZWN0b3J5KCkgY29uc3QgeyByZXR1cm4gbV9oc3RzU3Rv
cmFnZURpcmVjdG9yeTsgfQorICAgIHZvaWQgc2V0SFNUU1N0b3JhZ2VEaXJlY3RvcnkoV1RGOjpT
dHJpbmcmJiBkaXJlY3RvcnkpIHsgbV9oc3RzU3RvcmFnZURpcmVjdG9yeSA9IFdURk1vdmUoZGly
ZWN0b3J5KTsgfQorICAgIAogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgIGJvb2wgc3VwcHJlc3Nl
c0Nvbm5lY3Rpb25UZXJtaW5hdGlvbk9uU3lzdGVtQ2hhbmdlKCkgY29uc3QgeyByZXR1cm4gbV9z
dXBwcmVzc2VzQ29ubmVjdGlvblRlcm1pbmF0aW9uT25TeXN0ZW1DaGFuZ2U7IH0KICAgICB2b2lk
IHNldFN1cHByZXNzZXNDb25uZWN0aW9uVGVybWluYXRpb25PblN5c3RlbUNoYW5nZShib29sIHN1
cHByZXNzZXNDb25uZWN0aW9uVGVybWluYXRpb25PblN5c3RlbUNoYW5nZSkgeyBtX3N1cHByZXNz
ZXNDb25uZWN0aW9uVGVybWluYXRpb25PblN5c3RlbUNoYW5nZSA9IHN1cHByZXNzZXNDb25uZWN0
aW9uVGVybWluYXRpb25PblN5c3RlbUNoYW5nZTsgfQpAQCAtMjI3LDYgKzIzMCw3IEBAIHByaXZh
dGU6CiAgICAgYm9vbCBtX2lzSklURW5hYmxlZCB7IHRydWUgfTsKICAgICBib29sIG1fdXNlc1Np
bmdsZVdlYlByb2Nlc3MgeyBmYWxzZSB9OwogICAgIHVpbnQzMl90IG1fZG93bmxvYWRNb25pdG9y
U3BlZWRNdWx0aXBsaWVyIHsgMSB9OworICAgIFdURjo6U3RyaW5nIG1faHN0c1N0b3JhZ2VEaXJl
Y3Rvcnk7CiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIFdURjo6U3RyaW5nIG1fY3RE
YXRhQ29ubmVjdGlvblNlcnZpY2VUeXBlOwpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
QVBJL0NvY29hL19XS1Byb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tQcm9jZXNzUG9vbENvbmZpZ3VyYXRp
b24uaAkocmV2aXNpb24gMjQ0NTk2KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0Nv
Y29hL19XS1Byb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC03MCw2
ICs3MCw3IEBAIFdLX0NMQVNTX0FWQUlMQUJMRShtYWNvcygxMC4xMCksIGlvcyg4LjAKIEBwcm9w
ZXJ0eSAobm9uYXRvbWljKSBCT09MIHN1cHByZXNzZXNDb25uZWN0aW9uVGVybWluYXRpb25PblN5
c3RlbUNoYW5nZSBXS19BUElfQVZBSUxBQkxFKG1hY29zKDEwLjE0KSwgaW9zKDEyLjApKTsKIEBw
cm9wZXJ0eSAobm9uYXRvbWljLCBnZXR0ZXI9aXNKSVRFbmFibGVkKSBCT09MIEpJVEVuYWJsZWQg
V0tfQVBJX0FWQUlMQUJMRShtYWNvcyhXS19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKTsKIEBw
cm9wZXJ0eSAobm9uYXRvbWljKSBOU1VJbnRlZ2VyIGRvd25sb2FkTW9uaXRvclNwZWVkTXVsdGlw
bGllckZvclRlc3RpbmcgV0tfQVBJX0FWQUlMQUJMRShtYWNvcyhXS19NQUNfVEJBKSwgaW9zKFdL
X0lPU19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBudWxsYWJsZSwgY29weSwgc2V0dGVy
PXNldEhTVFNTdG9yYWdlRGlyZWN0b3J5OikgTlNTdHJpbmcgKmhzdHNTdG9yYWdlRGlyZWN0b3J5
IFdLX0FQSV9BVkFJTEFCTEUobWFjb3MoV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CiAK
IEBlbmQKIApJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1Byb2Nl
c3NQb29sQ29uZmlndXJhdGlvbi5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9BUEkvQ29jb2EvX1dLUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLm1tCShyZXZpc2lvbiAy
NDQ1OTYpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLUHJvY2Vzc1Bv
b2xDb25maWd1cmF0aW9uLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0zMjgsNiArMzI4LDE3IEBAIC0g
KE5TVUludGVnZXIpZG93bmxvYWRNb25pdG9yU3BlZWRNdWx0aXAKICAgICByZXR1cm4gX3Byb2Nl
c3NQb29sQ29uZmlndXJhdGlvbi0+ZG93bmxvYWRNb25pdG9yU3BlZWRNdWx0aXBsaWVyKCk7CiB9
CiAKKy0gKHZvaWQpc2V0SFNUU1N0b3JhZ2VEaXJlY3Rvcnk6KE5TU3RyaW5nICopZGlyZWN0b3J5
Cit7CisgICAgLy8gRklYTUU6IE1vdmUgdGhpcyB0byBfV0tXZWJzaXRlRGF0YVN0b3JlQ29uZmln
dXJhdGlvbiBvbmNlIHJkYXI6Ly9wcm9ibGVtLzUwMTA5NjMxIGlzIGZpeGVkLgorICAgIF9wcm9j
ZXNzUG9vbENvbmZpZ3VyYXRpb24tPnNldEhTVFNTdG9yYWdlRGlyZWN0b3J5KGRpcmVjdG9yeSk7
Cit9CisKKy0gKE5TU3RyaW5nICopaHN0c1N0b3JhZ2VEaXJlY3RvcnkKK3sKKyAgICByZXR1cm4g
X3Byb2Nlc3NQb29sQ29uZmlndXJhdGlvbi0+aHN0c1N0b3JhZ2VEaXJlY3RvcnkoKTsKK30KKwog
LSAodm9pZClzZXREb3dubG9hZE1vbml0b3JTcGVlZE11bHRpcGxpZXJGb3JUZXN0aW5nOihOU1VJ
bnRlZ2VyKW11bHRpcGxpZXIKIHsKICAgICBfcHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLT5zZXRE
b3dubG9hZE1vbml0b3JTcGVlZE11bHRpcGxpZXIobXVsdGlwbGllcik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>369335</attachid>
            <date>2019-05-07 16:59:42 -0700</date>
            <delta_ts>2019-05-08 16:12:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197259-20190507165941.patch</filename>
            <type>text/plain</type>
            <size>12185</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNDUwMzQpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDEyIEBACisyMDE5LTA1LTA3ICBBbGV4IENocmlzdGVuc2VuICA8
YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQWRkIFNQSSB0byBzZXQgSFNUUyBz
dG9yYWdlIGRpcmVjdG9yeQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTk3MjU5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiB3dGYvUGxhdGZvcm0uaDoKKwogMjAxOS0wNS0wNyAgUm9iaW4gTW9yaXNzZXQg
IDxybW9yaXNzZXRAYXBwbGUuY29tPgogCiAgICAgICAgIFdURjo6Qml0VmVjdG9yIHNob3VsZCBo
YXZlIGFuIGlzRW1wdHkoKSBtZXRob2QKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1BsYXRmb3JtLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUGxhdGZvcm0uaAkocmV2aXNpb24gMjQ1MDM0
KQorKysgU291cmNlL1dURi93dGYvUGxhdGZvcm0uaAkod29ya2luZyBjb3B5KQpAQCAtMTM2MSw2
ICsxMzYxLDEwIEBACiAjZGVmaW5lIFVTRV9TT1VSQ0VfQVBQTElDQVRJT05fQVVESVRfREFUQSAx
CiAjZW5kaWYKIAorI2lmIChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5f
UkVRVUlSRUQgPj0gMTAxNTAwKSB8fCAoUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgX19JUEhPTkVf
T1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTMwMDAwKQorI2RlZmluZSBIQVZFX0hTVFNfU1RP
UkFHRV9QQVRIIDEKKyNlbmRpZgorCiAjaWYgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9W
RVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDE0MDApIHx8IFBMQVRGT1JNKElPUykgfHwgUExBVEZP
Uk0oSU9TTUFDKQogI2RlZmluZSBIQVZFX1VSTF9GT1JNQVRUSU5HIDEKICNlbmRpZgpJbmRleDog
U291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9QQUwvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNDUwMzQpCisrKyBTb3VyY2UvV2ViQ29yZS9QQUwv
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTktMDUtMDcgIEFs
ZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBBZGQg
U1BJIHRvIHNldCBIU1RTIHN0b3JhZ2UgZGlyZWN0b3J5CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTcyNTkKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBhbC9zcGkvY2YvQ0ZOZXR3b3JrU1BJLmg6CisK
IDIwMTktMDUtMDQgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4K
IAogICAgICAgICBSZXZlcnQgcjI0NDk1MyBhbmQgcjI0NDk1NCBiZWNhdXNlIHRoZXkgYnJva2Ug
aW50ZXJuYWwgYnVpbGRzLgpJbmRleDogU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2YvQ0ZO
ZXR3b3JrU1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY2Yv
Q0ZOZXR3b3JrU1BJLmgJKHJldmlzaW9uIDI0NTAzNCkKKysrIFNvdXJjZS9XZWJDb3JlL1BBTC9w
YWwvc3BpL2NmL0NGTmV0d29ya1NQSS5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMjUsNiArMzI1LDEw
IEBAIHZvaWQgX0NGVVJMUmVxdWVzdENyZWF0ZUFyY2hpdmVMaXN0KENGQWwKIENGTXV0YWJsZVVS
TFJlcXVlc3RSZWYgX0NGVVJMUmVxdWVzdENyZWF0ZUZyb21BcmNoaXZlTGlzdChDRkFsbG9jYXRv
clJlZiwgQ0ZJbmRleCB2ZXJzaW9uLCBDRlR5cGVSZWYqIG9iamVjdHMsIENGSW5kZXggb2JqZWN0
Q291bnQsIENGRGljdGlvbmFyeVJlZiBwcm90b2NvbFByb3BlcnRpZXMpOwogdm9pZCBDRlVSTFJl
cXVlc3RTZXRQcm94eVNldHRpbmdzKENGTXV0YWJsZVVSTFJlcXVlc3RSZWYsIENGRGljdGlvbmFy
eVJlZik7CiAKKyNpZiBIQVZFKEhTVFNfU1RPUkFHRV9QQVRIKQordm9pZCBfQ0ZOZXR3b3JrU2V0
SFNUU1N0b3JhZ2VQYXRoKENGU3RyaW5nUmVmKTsKKyNlbmRpZgorCiAjZW5kaWYgLy8gIVBMQVRG
T1JNKFdJTikKIAogQ0ZOX0VYUE9SVCBjb25zdCBDRlN0cmluZ1JlZiBrQ0ZTdHJlYW1Qcm9wZXJ0
eUNPTk5FQ1RQcm94eTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNDUwMzQpCisrKyBTb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMzIEBACisyMDE5LTA1
LTA3ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAg
ICAgQWRkIFNQSSB0byBzZXQgSFNUUyBzdG9yYWdlIGRpcmVjdG9yeQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk3MjU5CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS80ODc5Nzg5NT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBJdCBpcyB3aXRoIGdyZWF0IHNhZG5lc3MgdGhhdCBJIGxhbWVudCB0aGUgZGVz
aWduIG9mIHRoaXMgU1BJLCB3aGljaCBpcyBuZWNlc3NpdGF0ZWQgYnkgdGhlIHByb2Nlc3MtZ2xv
YmFsIG5hdHVyZSBvZiB0aGUgU1BJIHRoYXQKKyAgICAgICAgSSBtdXN0IGNhbGwgYW5kIHRoZSB0
aW1lIGF0IHdoaWNoIEkgbXVzdCBjYWxsIGl0IChiZWZvcmUgYW55IG5ldHdvcmtpbmcgY2FsbHMg
aGF2ZSBiZWVuIG1hZGUpLgorICAgICAgICBJJ20gYWxzbyBub3QgdGhyaWxsZWQgYWJvdXQgdGhl
IGZhY3QgdGhhdCB0aGUgdW5pdCB0ZXN0IGluZnJhc3RydWN0dXJlIEkgZGV2ZWxvcGVkIGZvciB0
aGlzIGluIHIyNDQ1OTQgY2Fubm90IGJlIHVzZWQgYmVjYXVzZQorICAgICAgICB0aGUgU1BJIHRo
YXQgSSBtdXN0IGNhbGwgZG9lcyBub3Qgd29yayBvbiBpT1Mgc2ltdWxhdG9yIG9yIE1hYy4gIEkg
aGF2ZSB2ZXJpZmllZCB0aGUgU1BJIGlzIGJlaW5nIGNhbGxlZCBhbmQgdGhhdCB3aGVuIGNhbGxl
ZCBvbiBpT1MsCisgICAgICAgIGFuZCB0aGF0IENGTmV0d29yayBkb2VzIHRoZSByaWdodCB0aGlu
ZyB3aXRoIGl0LgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVh
dGlvblBhcmFtZXRlcnMuY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzc0NyZWF0
aW9uUGFyYW1ldGVyczo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1By
b2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmRlY29kZSk6CisgICAgICAgICogTmV0d29ya1Byb2Nl
c3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaDoKKyAgICAgICAgKiBOZXR3b3Jr
UHJvY2Vzcy9jb2NvYS9OZXR3b3JrUHJvY2Vzc0NvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpO
ZXR3b3JrUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFsaXplTmV0d29ya1Byb2Nlc3NDb2NvYSk6Cisg
ICAgICAgICogVUlQcm9jZXNzL0FQSS9BUElQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uY3BwOgor
ICAgICAgICAoQVBJOjpQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb246OmNvcHkpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmg6CisgICAgICAgICog
VUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uaDoKKyAgICAg
ICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS1Byb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5tbToK
KyAgICAgICAgKC1bX1dLUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uIHNldEhTVFNTdG9yYWdlRGly
ZWN0b3J5Ol0pOgorICAgICAgICAoLVtfV0tQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24gaHN0c1N0
b3JhZ2VEaXJlY3RvcnldKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6ZW5zdXJlTmV0d29ya1Byb2Nlc3Mp
OgorCiAyMDE5LTA1LTA3ICBBZHJpYW4gUGVyZXogZGUgQ2FzdHJvICA8YXBlcmV6QGlnYWxpYS5j
b20+CiAKICAgICAgICAgW0dUS11bV1BFXSBDYW5ub3QgYnVpbGQgZG9jdW1lbnRhdGlvbiB3aXRo
IGd0ay1kb2MKSW5kZXg6IFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nl
c3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCShyZXZpc2lv
biAyNDUwMzQpCisrKyBTb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNz
Q3JlYXRpb25QYXJhbWV0ZXJzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTIsNiArOTIsOCBAQCB2
b2lkIE5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjplCiAgICAgZW5jb2RlciA8PCBk
b3dubG9hZE1vbml0b3JTcGVlZE11bHRpcGxpZXI7CiAgICAgZW5jb2RlciA8PCBpc0lUUEZpcnN0
UGFydHlXZWJzaXRlRGF0YVJlbW92YWxFbmFibGVkOwogICAgIGVuY29kZXIgPDwgZW5hYmxlQWRD
bGlja0F0dHJpYnV0aW9uRGVidWdNb2RlOworICAgIGVuY29kZXIgPDwgaHN0c1N0b3JhZ2VEaXJl
Y3Rvcnk7CisgICAgZW5jb2RlciA8PCBoc3RzU3RvcmFnZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRs
ZTsKIH0KIAogYm9vbCBOZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVyczo6ZGVjb2RlKElQ
Qzo6RGVjb2RlciYgZGVjb2RlciwgTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMmIHJl
c3VsdCkKQEAgLTIyNCw2ICsyMjYsMTIgQEAgYm9vbCBOZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFy
YW1ldGVyczo6ZAogICAgIGlmICghZGVjb2Rlci5kZWNvZGUocmVzdWx0LmVuYWJsZUFkQ2xpY2tB
dHRyaWJ1dGlvbkRlYnVnTW9kZSkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAorICAgIGlmICgh
ZGVjb2Rlci5kZWNvZGUocmVzdWx0LmhzdHNTdG9yYWdlRGlyZWN0b3J5KSkKKyAgICAgICAgcmV0
dXJuIGZhbHNlOworCisgICAgaWYgKCFkZWNvZGVyLmRlY29kZShyZXN1bHQuaHN0c1N0b3JhZ2VE
aXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgCiAg
ICAgcmV0dXJuIHRydWU7CiB9CiAKSW5kZXg6IFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
TmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgJ
KHJldmlzaW9uIDI0NTAzNCkKKysrIFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29y
a1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaAkod29ya2luZyBjb3B5KQpAQCAtMTEwLDYgKzEx
MCw4IEBAIHN0cnVjdCBOZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycyAKICAgICBib29s
IGlzSVRQRmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbEVuYWJsZWQgeyB0cnVlIH07CiAgICAg
dWludDMyX3QgZG93bmxvYWRNb25pdG9yU3BlZWRNdWx0aXBsaWVyIHsgMSB9OwogICAgIGJvb2wg
ZW5hYmxlQWRDbGlja0F0dHJpYnV0aW9uRGVidWdNb2RlIHsgZmFsc2UgfTsKKyAgICBTdHJpbmcg
aHN0c1N0b3JhZ2VEaXJlY3Rvcnk7CisgICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGhzdHNT
dG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2Vi
S2l0CkluZGV4OiBTb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtQcm9j
ZXNzQ29jb2EubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9j
b2NvYS9OZXR3b3JrUHJvY2Vzc0NvY29hLm1tCShyZXZpc2lvbiAyNDUwMzQpCisrKyBTb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtQcm9jZXNzQ29jb2EubW0JKHdvcmtp
bmcgY29weSkKQEAgLTcyLDYgKzcyLDEzIEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OnBsYXRmb3Jt
SW5pdGlhbGl6ZU4KICAgICBXZWJDb3JlOjpzZXRBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIo
cGFyYW1ldGVycy51aVByb2Nlc3NCdW5kbGVJZGVudGlmaWVyKTsKICAgICBXZWJDb3JlOjpzZXRB
cHBsaWNhdGlvblNES1ZlcnNpb24ocGFyYW1ldGVycy51aVByb2Nlc3NTREtWZXJzaW9uKTsKIAor
I2lmIEhBVkUoSFNUU19TVE9SQUdFX1BBVEgpCisgICAgaWYgKCFwYXJhbWV0ZXJzLmhzdHNTdG9y
YWdlRGlyZWN0b3J5LmlzTnVsbCgpKSB7CisgICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNvbnN1
bWVQZXJtYW5lbnRseShwYXJhbWV0ZXJzLmhzdHNTdG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9uSGFu
ZGxlKTsKKyAgICAgICAgX0NGTmV0d29ya1NldEhTVFNTdG9yYWdlUGF0aChwYXJhbWV0ZXJzLmhz
dHNTdG9yYWdlRGlyZWN0b3J5LmNyZWF0ZUNGU3RyaW5nKCkuZ2V0KCkpOworICAgIH0KKyNlbmRp
ZgorCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25z
dW1lUGVybWFuZW50bHkocGFyYW1ldGVycy5jb29raWVTdG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9u
SGFuZGxlKTsKICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkocGFyYW1l
dGVycy5jb250YWluZXJDYWNoZXNEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpOwpJbmRleDogU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAkocmV2aXNpb24gMjQ1MDM0
KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC01MzUsNiArNTM1LDEwIEBAIE5ldHdvcmtQcm9jZXNzUHJveHkmIFdlYlByb2Nl
c3NQb29sOjplbnMKICNlbmRpZgogI2VuZGlmCiAKKyAgICBwYXJhbWV0ZXJzLmhzdHNTdG9yYWdl
RGlyZWN0b3J5ID0gbV9jb25maWd1cmF0aW9uLT5oc3RzU3RvcmFnZURpcmVjdG9yeSgpOworICAg
IGlmICghcGFyYW1ldGVycy5oc3RzU3RvcmFnZURpcmVjdG9yeS5pc051bGwoKSkKKyAgICAgICAg
U2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yUmVhZFdyaXRlRGlyZWN0b3J5KHBhcmFt
ZXRlcnMuaHN0c1N0b3JhZ2VEaXJlY3RvcnksIHBhcmFtZXRlcnMuaHN0c1N0b3JhZ2VEaXJlY3Rv
cnlFeHRlbnNpb25IYW5kbGUpOworCiAgICAgcGFyYW1ldGVycy5zaG91bGRVc2VUZXN0aW5nTmV0
d29ya1Nlc3Npb24gPSBtX3Nob3VsZFVzZVRlc3RpbmdOZXR3b3JrU2Vzc2lvbjsKIAogICAgIHBh
cmFtZXRlcnMudXJsU2NoZW1lc1JlZ2lzdGVyZWRBc1NlY3VyZSA9IGNvcHlUb1ZlY3RvcihtX3Nj
aGVtZXNUb1JlZ2lzdGVyQXNTZWN1cmUpOwpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
QVBJL0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5jcHAJKHJl
dmlzaW9uIDI0NTAzNCkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElQcm9jZXNz
UG9vbENvbmZpZ3VyYXRpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMzEsNiArMTMxLDcgQEAg
UmVmPFByb2Nlc3NQb29sQ29uZmlndXJhdGlvbj4gUHJvY2Vzc1BvbwogI2VuZGlmCiAgICAgY29w
eS0+bV9jdXN0b21XZWJDb250ZW50U2VydmljZUJ1bmRsZUlkZW50aWZpZXIgPSB0aGlzLT5tX2N1
c3RvbVdlYkNvbnRlbnRTZXJ2aWNlQnVuZGxlSWRlbnRpZmllcjsKICAgICBjb3B5LT5tX3VzZXNT
aW5nbGVXZWJQcm9jZXNzID0gbV91c2VzU2luZ2xlV2ViUHJvY2VzczsKKyAgICBjb3B5LT5tX2hz
dHNTdG9yYWdlRGlyZWN0b3J5ID0gbV9oc3RzU3RvcmFnZURpcmVjdG9yeTsKIAogICAgIHJldHVy
biBjb3B5OwogfQpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVByb2Nlc3NQ
b29sQ29uZmlndXJhdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0FQSS9BUElQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uaAkocmV2aXNpb24gMjQ1MDM0KQorKysg
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5o
CSh3b3JraW5nIGNvcHkpCkBAIC0xODAsNiArMTgwLDkgQEAgcHVibGljOgogICAgIGNvbnN0IFdU
Rjo6U3RyaW5nJiBjdXN0b21XZWJDb250ZW50U2VydmljZUJ1bmRsZUlkZW50aWZpZXIoKSBjb25z
dCB7IHJldHVybiBtX2N1c3RvbVdlYkNvbnRlbnRTZXJ2aWNlQnVuZGxlSWRlbnRpZmllcjsgfQog
ICAgIHZvaWQgc2V0Q3VzdG9tV2ViQ29udGVudFNlcnZpY2VCdW5kbGVJZGVudGlmaWVyKGNvbnN0
IFdURjo6U3RyaW5nJiBjdXN0b21XZWJDb250ZW50U2VydmljZUJ1bmRsZUlkZW50aWZpZXIpIHsg
bV9jdXN0b21XZWJDb250ZW50U2VydmljZUJ1bmRsZUlkZW50aWZpZXIgPSBjdXN0b21XZWJDb250
ZW50U2VydmljZUJ1bmRsZUlkZW50aWZpZXI7IH0KIAorICAgIGNvbnN0IFdURjo6U3RyaW5nJiBo
c3RzU3RvcmFnZURpcmVjdG9yeSgpIGNvbnN0IHsgcmV0dXJuIG1faHN0c1N0b3JhZ2VEaXJlY3Rv
cnk7IH0KKyAgICB2b2lkIHNldEhTVFNTdG9yYWdlRGlyZWN0b3J5KFdURjo6U3RyaW5nJiYgZGly
ZWN0b3J5KSB7IG1faHN0c1N0b3JhZ2VEaXJlY3RvcnkgPSBXVEZNb3ZlKGRpcmVjdG9yeSk7IH0K
KyAgICAKICNpZiBQTEFURk9STShDT0NPQSkKICAgICBib29sIHN1cHByZXNzZXNDb25uZWN0aW9u
VGVybWluYXRpb25PblN5c3RlbUNoYW5nZSgpIGNvbnN0IHsgcmV0dXJuIG1fc3VwcHJlc3Nlc0Nv
bm5lY3Rpb25UZXJtaW5hdGlvbk9uU3lzdGVtQ2hhbmdlOyB9CiAgICAgdm9pZCBzZXRTdXBwcmVz
c2VzQ29ubmVjdGlvblRlcm1pbmF0aW9uT25TeXN0ZW1DaGFuZ2UoYm9vbCBzdXBwcmVzc2VzQ29u
bmVjdGlvblRlcm1pbmF0aW9uT25TeXN0ZW1DaGFuZ2UpIHsgbV9zdXBwcmVzc2VzQ29ubmVjdGlv
blRlcm1pbmF0aW9uT25TeXN0ZW1DaGFuZ2UgPSBzdXBwcmVzc2VzQ29ubmVjdGlvblRlcm1pbmF0
aW9uT25TeXN0ZW1DaGFuZ2U7IH0KQEAgLTIyNyw2ICsyMzAsNyBAQCBwcml2YXRlOgogICAgIGJv
b2wgbV9pc0pJVEVuYWJsZWQgeyB0cnVlIH07CiAgICAgYm9vbCBtX3VzZXNTaW5nbGVXZWJQcm9j
ZXNzIHsgZmFsc2UgfTsKICAgICB1aW50MzJfdCBtX2Rvd25sb2FkTW9uaXRvclNwZWVkTXVsdGlw
bGllciB7IDEgfTsKKyAgICBXVEY6OlN0cmluZyBtX2hzdHNTdG9yYWdlRGlyZWN0b3J5OwogCiAj
aWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBXVEY6OlN0cmluZyBtX2N0RGF0YUNvbm5lY3Rp
b25TZXJ2aWNlVHlwZTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9f
V0tQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmgJKHJldmlz
aW9uIDI0NTAzNCkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tQcm9j
ZXNzUG9vbENvbmZpZ3VyYXRpb24uaAkod29ya2luZyBjb3B5KQpAQCAtNzAsNiArNzAsNyBAQCBX
S19DTEFTU19BVkFJTEFCTEUobWFjb3MoMTAuMTApLCBpb3MoOC4wCiBAcHJvcGVydHkgKG5vbmF0
b21pYykgQk9PTCBzdXBwcmVzc2VzQ29ubmVjdGlvblRlcm1pbmF0aW9uT25TeXN0ZW1DaGFuZ2Ug
V0tfQVBJX0FWQUlMQUJMRShtYWNvcygxMC4xNCksIGlvcygxMi4wKSk7CiBAcHJvcGVydHkgKG5v
bmF0b21pYywgZ2V0dGVyPWlzSklURW5hYmxlZCkgQk9PTCBKSVRFbmFibGVkIFdLX0FQSV9BVkFJ
TEFCTEUobWFjb3MoV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7CiBAcHJvcGVydHkgKG5v
bmF0b21pYykgTlNVSW50ZWdlciBkb3dubG9hZE1vbml0b3JTcGVlZE11bHRpcGxpZXJGb3JUZXN0
aW5nIFdLX0FQSV9BVkFJTEFCTEUobWFjb3MoV0tfTUFDX1RCQSksIGlvcyhXS19JT1NfVEJBKSk7
CitAcHJvcGVydHkgKG5vbmF0b21pYywgbnVsbGFibGUsIGNvcHksIHNldHRlcj1zZXRIU1RTU3Rv
cmFnZURpcmVjdG9yeTopIE5TVVJMICpoc3RzU3RvcmFnZURpcmVjdG9yeSBXS19BUElfQVZBSUxB
QkxFKG1hY29zKFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwogCiBAZW5kCiAKSW5kZXg6
IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tQcm9jZXNzUG9vbENvbmZpZ3Vy
YXRpb24ubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29h
L19XS1Byb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5tbQkocmV2aXNpb24gMjQ1MDM0KQorKysgU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1Byb2Nlc3NQb29sQ29uZmlndXJhdGlv
bi5tbQkod29ya2luZyBjb3B5KQpAQCAtMzI4LDYgKzMyOCwyMCBAQCAtIChOU1VJbnRlZ2VyKWRv
d25sb2FkTW9uaXRvclNwZWVkTXVsdGlwCiAgICAgcmV0dXJuIF9wcm9jZXNzUG9vbENvbmZpZ3Vy
YXRpb24tPmRvd25sb2FkTW9uaXRvclNwZWVkTXVsdGlwbGllcigpOwogfQogCistICh2b2lkKXNl
dEhTVFNTdG9yYWdlRGlyZWN0b3J5OihOU1VSTCAqKWRpcmVjdG9yeQoreworICAgIGlmIChkaXJl
Y3RvcnkgJiYgIVtkaXJlY3RvcnkgaXNGaWxlVVJMXSkKKyAgICAgICAgW05TRXhjZXB0aW9uIHJh
aXNlOk5TSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIGZvcm1hdDpAIiVAIGlzIG5vdCBhIGZpbGUg
VVJMIiwgZGlyZWN0b3J5XTsKKworICAgIC8vIEZJWE1FOiBNb3ZlIHRoaXMgdG8gX1dLV2Vic2l0
ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb24gb25jZSByZGFyOi8vcHJvYmxlbS81MDEwOTYzMSBpcyBm
aXhlZC4KKyAgICBfcHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLT5zZXRIU1RTU3RvcmFnZURpcmVj
dG9yeShkaXJlY3RvcnkucGF0aCk7Cit9CisKKy0gKE5TVVJMICopaHN0c1N0b3JhZ2VEaXJlY3Rv
cnkKK3sKKyAgICByZXR1cm4gW05TVVJMIGZpbGVVUkxXaXRoUGF0aDpfcHJvY2Vzc1Bvb2xDb25m
aWd1cmF0aW9uLT5oc3RzU3RvcmFnZURpcmVjdG9yeSgpIGlzRGlyZWN0b3J5OllFU107Cit9CisK
IC0gKHZvaWQpc2V0RG93bmxvYWRNb25pdG9yU3BlZWRNdWx0aXBsaWVyRm9yVGVzdGluZzooTlNV
SW50ZWdlciltdWx0aXBsaWVyCiB7CiAgICAgX3Byb2Nlc3NQb29sQ29uZmlndXJhdGlvbi0+c2V0
RG93bmxvYWRNb25pdG9yU3BlZWRNdWx0aXBsaWVyKG11bHRpcGxpZXIpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>