<?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>213261</bug_id>
          
          <creation_ts>2020-06-16 14:34:11 -0700</creation_ts>
          <short_desc>Check for inAppBrowserPrivacyEnabled flag in WebsiteDataStore::initializeAppBoundDomains is expensive and calls a non-static function WebsiteDataStore::parameters().</short_desc>
          <delta_ts>2020-06-16 19:33:21 -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>WebKit Misc.</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="Kate Cheney">katherine_cheney</reporter>
          <assigned_to name="Kate Cheney">katherine_cheney</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>mjs</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wilander</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1663245</commentid>
    <comment_count>0</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-06-16 14:34:11 -0700</bug_when>
    <thetext>appBoundDomains() is static, so initializing it should not rely on non-static functions, like WebsiteDataStore::parameters(). Also the call to WebsiteDataStore::parameters() is expensive and unnecessary when we really only need to check the value of one flag.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1663246</commentid>
    <comment_count>1</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-06-16 14:34:36 -0700</bug_when>
    <thetext>&lt;rdar://problem/64317084&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1663257</commentid>
    <comment_count>2</comment_count>
      <attachid>402043</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-06-16 14:59:53 -0700</bug_when>
    <thetext>Created attachment 402043
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1663264</commentid>
    <comment_count>3</comment_count>
      <attachid>402043</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-06-16 15:11:54 -0700</bug_when>
    <thetext>Comment on attachment 402043
Patch

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

&gt; Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:455
&gt; +        RunLoop::main().dispatch([this, protectedThis = makeRef(*this), completionHandler = WTFMove(completionHandler)] () mutable {

I think we could just WTFMove(protectedThis).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1663268</commentid>
    <comment_count>4</comment_count>
      <attachid>402047</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-06-16 15:21:35 -0700</bug_when>
    <thetext>Created attachment 402047
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1663269</commentid>
    <comment_count>5</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-06-16 15:22:13 -0700</bug_when>
    <thetext>(In reply to Brent Fulgham from comment #3)
&gt; Comment on attachment 402043 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=402043&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:455
&gt; &gt; +        RunLoop::main().dispatch([this, protectedThis = makeRef(*this), completionHandler = WTFMove(completionHandler)] () mutable {
&gt; 
&gt; I think we could just WTFMove(protectedThis).

Good call, thanks for the review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1663287</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-06-16 15:57:11 -0700</bug_when>
    <thetext>Committed r263122: &lt;https://trac.webkit.org/changeset/263122&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 402047.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>402043</attachid>
            <date>2020-06-16 14:59:53 -0700</date>
            <delta_ts>2020-06-16 15:21:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-213261-20200616145952.patch</filename>
            <type>text/plain</type>
            <size>12920</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYzMDk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDY4Y2E1NjE4NTUxZDU1NDcx
ODUzZWEzMjA5ODI2ZjlkNDZlMTQ5M2EuLmUyNmQ5NzBlNzE2MWI2YzFjOWEzNjY0MzEzMTM0YmU2
MzFmZGExYmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDEgQEAKKzIwMjAtMDYtMTYgIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgQ2hlY2sgZm9yIGlu
QXBwQnJvd3NlclByaXZhY3lFbmFibGVkIGZsYWcgaW4gV2Vic2l0ZURhdGFTdG9yZTo6aW5pdGlh
bGl6ZUFwcEJvdW5kRG9tYWlucyBpcyBleHBlbnNpdmUgYW5kIGNhbGxzIGEgbm9uLXN0YXRpYyBm
dW5jdGlvbiBXZWJzaXRlRGF0YVN0b3JlOjpwYXJhbWV0ZXJzKCkuCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTMyNjEKKyAgICAgICAgPHJkYXI6Ly9w
cm9ibGVtLzY0MzE3MDg0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFRoZXJlIGFyZSB0d28gYnVncyBoZXJlLiBGaXJzdCwgV2Vic2l0ZURhdGFTdG9y
ZTo6cGFyYW1ldGVycygpCisgICAgICAgIGRvZXMgYSBsb3Qgb2Ygd29yayBhc2lkZSBmcm9tIHJl
dHVybmluZyB0aGUgcGFyYW1ldGVycywgbWFraW5nIHRoaXMgYW4KKyAgICAgICAgZXhwZW5zaXZl
IGNhbGwganVzdCB0byBjaGVjayB0aGUgdmFsdWUgb2Ygb25lIGZsYWcuIFNlY29uZCwKKyAgICAg
ICAgYXBwQm91bmREb21haW5zKCkgaXMgYSBzdGF0aWMgaGFzaHNldCwgYW5kIGluaXRpYWxpemlu
ZyB0aGUgaGFzaHNldAorICAgICAgICBzaG91bGQgbm90IHJlbHkgb24gbm9uLXN0YXRpYyBmdW5j
dGlvbnMuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbkNyZWF0aW9u
UGFyYW1ldGVycy5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTZXNzaW9uQ3JlYXRpb25Q
YXJhbWV0ZXJzOjplbmNvZGUgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU2Vzc2lv
bkNyZWF0aW9uUGFyYW1ldGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycy5oOgorICAgICAgICAqIE5ldHdvcmtQcm9j
ZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2EuaDoKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vz
cy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
U2Vzc2lvbkNvY29hOjpOZXR3b3JrU2Vzc2lvbkNvY29hKToKKyAgICAgICAgUmVtb3ZlIGZsYWcs
IGl0IGlzIG5vIGxvbmdlciB1c2VkIGhlcmUuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vic2l0
ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpX
ZWJzaXRlRGF0YVN0b3JlOjpwbGF0Zm9ybVNldE5ldHdvcmtQYXJhbWV0ZXJzKToKKyAgICAgICAg
U2F2ZSB0aGUgZmxhZyB2YWx1ZSBpbiBhIG1lbWJlciB2YXJpYWJsZSBzbyB3ZSBjYW4gdXNlIHRo
YXQgbGF0ZXIKKyAgICAgICAgd2hlbiBjaGVja2luZyBhcHAtYm91bmQgZG9tYWlucy4gUmVuYW1l
IHRvIHNvbWV0aGluZyBtb3JlIGRlc2NyaXB0aXZlLgorCisgICAgICAgIChXZWJLaXQ6OldlYnNp
dGVEYXRhU3RvcmU6OmluaXRpYWxpemVBcHBCb3VuZERvbWFpbnMpOgorICAgICAgICBSZW1vdmUg
dGhlIGNoZWNrIGZvciB0aGUgbm9uLXN0YXRpYyBydW50aW1lIGZsYWcuCisKKyAgICAgICAgKFdl
YktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6ZW5zdXJlQXBwQm91bmREb21haW5zIGNvbnN0KToKKyAg
ICAgICAgRW5hYmxlIHRlc3QgbW9kZSBxdWlya3MuIFdlIG11c3QgZG8gaXQgaW4gdHdvIHBsYWNl
cyBpbiBjYXNlIHRoZQorICAgICAgICBpbml0aWFsaXphdGlvbiBoYXNuJ3QgaGFwcGVuZWQgYnkg
dGhlIHRpbWUgd2UgY2FsbAorICAgICAgICBlbnN1cmVBcHBCb3VuZERvbWFpbnMuCisKKyAgICAg
ICAgKiBVSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oOgorCiAyMDIwLTA2
LTE2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBMb2FkcyB0
cmlnZ2VyZWQgYnkgYW4gb3BhcXVlIHN0eWxlc2hlZXQgc2hvdWxkIG5vdCBiZSB2aXNpYmxlIHRv
IHNlcnZpY2Ugd29ya2VycwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9OZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycy5jcHAgYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtTZXNzaW9uQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAppbmRleCA5
MDFkZWI4ZTRlMWJlNWMyNDdmNzYyMTE3YjVlZWE0ZWI4OTg2YzlhLi4zZDUxODBhZGJiMWZhZjFk
MDJmNGM2MWMzMDI2YjQxZjgwMjA0MjljIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL05ldHdvcmtTZXNzaW9uQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtTZXNzaW9uQ3JlYXRpb25QYXJhbWV0ZXJz
LmNwcApAQCAtNzcsNyArNzcsNiBAQCB2b2lkIE5ldHdvcmtTZXNzaW9uQ3JlYXRpb25QYXJhbWV0
ZXJzOjplbmNvZGUoSVBDOjpFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAogICAgIGVuY29kZXIgPDwg
dGVzdFNwZWVkTXVsdGlwbGllcjsKICAgICBlbmNvZGVyIDw8IHN1cHByZXNzZXNDb25uZWN0aW9u
VGVybWluYXRpb25PblN5c3RlbUNoYW5nZTsKICAgICBlbmNvZGVyIDw8IGFsbG93c1NlcnZlclBy
ZWNvbm5lY3Q7Ci0gICAgZW5jb2RlciA8PCBpc0luQXBwQnJvd3NlclByaXZhY3lFbmFibGVkOwog
ICAgIGVuY29kZXIgPDwgcmVxdWlyZXNTZWN1cmVIVFRQU1Byb3h5Q29ubmVjdGlvbjsKICAgICBl
bmNvZGVyIDw8IHByZXZlbnRzU3lzdGVtSFRUUFByb3h5QXV0aGVudGljYXRpb247CiAgICAgZW5j
b2RlciA8PCByZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVyczsKQEAgLTIzNiwxMSArMjM1
LDYgQEAgT3B0aW9uYWw8TmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnM+IE5ldHdvcmtT
ZXNzaW9uQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWMKICAgICBkZWNvZGVyID4+IGFsbG93c1NlcnZl
clByZWNvbm5lY3Q7CiAgICAgaWYgKCFhbGxvd3NTZXJ2ZXJQcmVjb25uZWN0KQogICAgICAgICBy
ZXR1cm4gV1RGOjpudWxsb3B0OwotICAgIAotICAgIE9wdGlvbmFsPGJvb2w+IGlzSW5BcHBCcm93
c2VyUHJpdmFjeUVuYWJsZWQ7Ci0gICAgZGVjb2RlciA+PiBpc0luQXBwQnJvd3NlclByaXZhY3lF
bmFibGVkOwotICAgIGlmICghaXNJbkFwcEJyb3dzZXJQcml2YWN5RW5hYmxlZCkKLSAgICAgICAg
cmV0dXJuIFdURjo6bnVsbG9wdDsKIAogICAgIE9wdGlvbmFsPGJvb2w+IHJlcXVpcmVzU2VjdXJl
SFRUUFNQcm94eUNvbm5lY3Rpb247CiAgICAgZGVjb2RlciA+PiByZXF1aXJlc1NlY3VyZUhUVFBT
UHJveHlDb25uZWN0aW9uOwpAQCAtMjk1LDcgKzI4OSw2IEBAIE9wdGlvbmFsPE5ldHdvcmtTZXNz
aW9uQ3JlYXRpb25QYXJhbWV0ZXJzPiBOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVyczo6
ZGVjCiAgICAgICAgICwgV1RGTW92ZSgqdGVzdFNwZWVkTXVsdGlwbGllcikKICAgICAgICAgLCBX
VEZNb3ZlKCpzdXBwcmVzc2VzQ29ubmVjdGlvblRlcm1pbmF0aW9uT25TeXN0ZW1DaGFuZ2UpCiAg
ICAgICAgICwgV1RGTW92ZSgqYWxsb3dzU2VydmVyUHJlY29ubmVjdCkKLSAgICAgICAgLCBXVEZN
b3ZlKCppc0luQXBwQnJvd3NlclByaXZhY3lFbmFibGVkKQogICAgICAgICAsIFdURk1vdmUoKnJl
cXVpcmVzU2VjdXJlSFRUUFNQcm94eUNvbm5lY3Rpb24pCiAgICAgICAgICwgV1RGTW92ZSgqcHJl
dmVudHNTeXN0ZW1IVFRQUHJveHlBdXRoZW50aWNhdGlvbikKICAgICAgICAgLCBXVEZNb3ZlKCpy
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnMuaCBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRl
cnMuaAppbmRleCAzYWRhYWVmMGEyNTBlZDdjMzU0MjllOGFhODJiZDU4NWI2ZmIwNDRiLi43ZDQy
YWE0YmYzNDhmYmU1NmZhYmRkMWNlMWEzZjU1ZjJjMGFmYWRmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtTZXNzaW9uQ3JlYXRpb25QYXJhbWV0ZXJzLmgK
KysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbkNyZWF0aW9u
UGFyYW1ldGVycy5oCkBAIC05MCw3ICs5MCw2IEBAIHN0cnVjdCBOZXR3b3JrU2Vzc2lvbkNyZWF0
aW9uUGFyYW1ldGVycyB7CiAgICAgdW5zaWduZWQgdGVzdFNwZWVkTXVsdGlwbGllciB7IDEgfTsK
ICAgICBib29sIHN1cHByZXNzZXNDb25uZWN0aW9uVGVybWluYXRpb25PblN5c3RlbUNoYW5nZSB7
IGZhbHNlIH07CiAgICAgYm9vbCBhbGxvd3NTZXJ2ZXJQcmVjb25uZWN0IHsgdHJ1ZSB9OwotICAg
IGJvb2wgaXNJbkFwcEJyb3dzZXJQcml2YWN5RW5hYmxlZCB7IGZhbHNlIH07CiAgICAgYm9vbCBy
ZXF1aXJlc1NlY3VyZUhUVFBTUHJveHlDb25uZWN0aW9uIHsgZmFsc2UgfTsKICAgICBib29sIHBy
ZXZlbnRzU3lzdGVtSFRUUFByb3h5QXV0aGVudGljYXRpb24geyBmYWxzZSB9OwogICAgIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lv
bkNvY29hLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNz
aW9uQ29jb2EuaAppbmRleCA2ODdjNjdmZTAyZmNlMjhjZTBhM2YzY2I3MmMwYWM2YTljZDVlMDdj
Li45Y2E4ZmE2ZWE4OWQ5MzgxMmZhMDgwNDdhN2YzNGI5Y2RlMmY2OTdkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2EuaAor
KysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29j
b2EuaApAQCAtOTgsNyArOTgsNiBAQCBwdWJsaWM6CiAKICAgICBTZXNzaW9uV3JhcHBlciYgc2Vz
c2lvbldyYXBwZXJGb3JUYXNrKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNv
cmU6OlN0b3JlZENyZWRlbnRpYWxzUG9saWN5LCBPcHRpb25hbDxOYXZpZ2F0aW5nVG9BcHBCb3Vu
ZERvbWFpbj4pOwogICAgIHZvaWQgY2xlYXJBcHBCb3VuZFNlc3Npb24oKSBvdmVycmlkZTsKLSAg
ICBib29sIGlzSW5BcHBCcm93c2VyUHJpdmFjeUVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2lz
SW5BcHBCcm93c2VyUHJpdmFjeUVuYWJsZWQ7IH0KICAgICBib29sIHByZXZlbnRzU3lzdGVtSFRU
UFByb3h5QXV0aGVudGljYXRpb24oKSBjb25zdCB7IHJldHVybiBtX3ByZXZlbnRzU3lzdGVtSFRU
UFByb3h5QXV0aGVudGljYXRpb247IH0KICAgICAKICAgICB2b2lkIGNsaWVudENlcnRpZmljYXRl
U3VnZ2VzdGVkRm9ySG9zdChOZXR3b3JrRGF0YVRhc2tDb2NvYTo6VGFza0lkZW50aWZpZXIsIE5T
VVJMQ3JlZGVudGlhbCAqLCBjb25zdCBTdHJpbmcmIGhvc3QsIHVpbnQxNl90IHBvcnQpOwpAQCAt
MTUwLDcgKzE0OSw2IEBAIHByaXZhdGU6CiAgICAgU2Vjb25kcyBtX2xvYWRUaHJvdHRsZUxhdGVu
Y3k7CiAgICAgYm9vbCBtX2Zhc3RTZXJ2ZXJUcnVzdEV2YWx1YXRpb25FbmFibGVkIHsgZmFsc2Ug
fTsKICAgICBTdHJpbmcgbV9kYXRhQ29ubmVjdGlvblNlcnZpY2VUeXBlOwotICAgIGJvb2wgbV9p
c0luQXBwQnJvd3NlclByaXZhY3lFbmFibGVkIHsgZmFsc2UgfTsKICAgICBib29sIG1fcHJldmVu
dHNTeXN0ZW1IVFRQUHJveHlBdXRoZW50aWNhdGlvbiB7IGZhbHNlIH07CiAKICAgICBzdHJ1Y3Qg
U3VnZ2VzdGVkQ2xpZW50Q2VydGlmaWNhdGUgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tIGIvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCmluZGV4IDJlMWQx
Y2VlNjY5MjljYzExNzg1YzA4MWFmZGYxZThjNzFmMTkwYmIuLmEyYmI3NGRjNjgwYjM3MWUwMzFl
YzI3ZTg1NTE5YTczMjZmNGZjNjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2EubW0KQEAgLTExNjIsNyArMTE2
Miw2IEBAIE5ldHdvcmtTZXNzaW9uQ29jb2E6Ok5ldHdvcmtTZXNzaW9uQ29jb2EoTmV0d29ya1By
b2Nlc3MmIG5ldHdvcmtQcm9jZXNzLCBOZXR3b3JrCiAgICAgLCBtX2xvYWRUaHJvdHRsZUxhdGVu
Y3kocGFyYW1ldGVycy5sb2FkVGhyb3R0bGVMYXRlbmN5KQogICAgICwgbV9mYXN0U2VydmVyVHJ1
c3RFdmFsdWF0aW9uRW5hYmxlZChwYXJhbWV0ZXJzLmZhc3RTZXJ2ZXJUcnVzdEV2YWx1YXRpb25F
bmFibGVkKQogICAgICwgbV9kYXRhQ29ubmVjdGlvblNlcnZpY2VUeXBlKHBhcmFtZXRlcnMuZGF0
YUNvbm5lY3Rpb25TZXJ2aWNlVHlwZSkKLSAgICAsIG1faXNJbkFwcEJyb3dzZXJQcml2YWN5RW5h
YmxlZChwYXJhbWV0ZXJzLmlzSW5BcHBCcm93c2VyUHJpdmFjeUVuYWJsZWQpCiAgICAgLCBtX3By
ZXZlbnRzU3lzdGVtSFRUUFByb3h5QXV0aGVudGljYXRpb24ocGFyYW1ldGVycy5wcmV2ZW50c1N5
c3RlbUhUVFBQcm94eUF1dGhlbnRpY2F0aW9uKQogewogICAgIEFTU0VSVChoYXNQcm9jZXNzUHJp
dmlsZWdlKFByb2Nlc3NQcml2aWxlZ2U6OkNhbkFjY2Vzc1Jhd0Nvb2tpZXMpKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRh
U3RvcmVDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29h
L1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQppbmRleCBkNjI5YTZkNDEzOGRiYjNmMGMwNzc2NThl
NjhmNDYxOGVkOWFkZDBlLi42MjM0ZWIzNzdkMzhiMGIxY2FlMzY2NDBiZWJkM2UyYTk1MGFjN2Iw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9X
ZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
c2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tCkBAIC0xMTcsNiArMTE3LDgg
QEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpwbGF0Zm9ybVNldE5ldHdvcmtQYXJhbWV0ZXJzKFdl
YnNpdGVEYXRhU3RvcmVQYXJhbWV0ZXJzJgogICAgICAgICBlbHNlCiAgICAgICAgICAgICBmaXJz
dFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZSA9IFdlYkNvcmU6OkZpcnN0UGFydHlXZWJzaXRl
RGF0YVJlbW92YWxNb2RlOjpBbGxCdXRDb29raWVzOwogICAgIH0KKyAgICBtX2lzSW5BcHBCcm93
c2VyUHJpdmFjeVRlc3RNb2RlRW5hYmxlZCA9IFtkZWZhdWx0cyBib29sRm9yS2V5OltOU1N0cmlu
ZyBzdHJpbmdXaXRoRm9ybWF0OkAiV2ViS2l0RGVidWclQCIsIFdlYlByZWZlcmVuY2VzS2V5Ojpp
c0luQXBwQnJvd3NlclByaXZhY3lFbmFibGVkS2V5KCkuY3JlYXRlQ0ZTdHJpbmcoKS5nZXQoKV1d
OworCiAgICAgYXV0byogbWFudWFsUHJldmFsZW50UmVzb3VyY2UgPSBbZGVmYXVsdHMgc3RyaW5n
Rm9yS2V5OkAiSVRQTWFudWFsUHJldmFsZW50UmVzb3VyY2UiXTsKICAgICBpZiAobWFudWFsUHJl
dmFsZW50UmVzb3VyY2UpIHsKICAgICAgICAgVVJMIHVybCB7IFVSTCgpLCBtYW51YWxQcmV2YWxl
bnRSZXNvdXJjZSB9OwpAQCAtMTYyLDcgKzE2NCw2IEBAIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6
cGxhdGZvcm1TZXROZXR3b3JrUGFyYW1ldGVycyhXZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycyYK
ICNlbmRpZgogCiAgICAgYm9vbCBzaG91bGRJbmNsdWRlTG9jYWxob3N0SW5SZXNvdXJjZUxvYWRT
dGF0aXN0aWNzID0gaXNTYWZhcmk7Ci0gICAgYm9vbCBpc0luQXBwQnJvd3NlclByaXZhY3lFbmFi
bGVkID0gW2RlZmF1bHRzIGJvb2xGb3JLZXk6W05TU3RyaW5nIHN0cmluZ1dpdGhGb3JtYXQ6QCJX
ZWJLaXREZWJ1ZyVAIiwgV2ViUHJlZmVyZW5jZXNLZXk6OmlzSW5BcHBCcm93c2VyUHJpdmFjeUVu
YWJsZWRLZXkoKS5jcmVhdGVDRlN0cmluZygpLmdldCgpXV07CiAgICAgCiAgICAgcGFyYW1ldGVy
cy5uZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMucHJveHlDb25maWd1cmF0aW9uID0gY29uZmlndXJh
dGlvbigpLnByb3h5Q29uZmlndXJhdGlvbigpOwogICAgIHBhcmFtZXRlcnMubmV0d29ya1Nlc3Np
b25QYXJhbWV0ZXJzLnNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllciA9IGNvbmZpZ3Vy
YXRpb24oKS5zb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKTsKQEAgLTE3Niw3ICsx
NzcsNiBAQCB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OnBsYXRmb3JtU2V0TmV0d29ya1BhcmFtZXRl
cnMoV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMmCiAgICAgcGFyYW1ldGVycy5uZXR3b3JrU2Vz
c2lvblBhcmFtZXRlcnMuYWx0ZXJuYXRpdmVTZXJ2aWNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxl
ID0gV1RGTW92ZShhbHRlcm5hdGl2ZVNlcnZpY2VTdG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9uSGFu
ZGxlKTsKICAgICBwYXJhbWV0ZXJzLm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5odHRwM0VuYWJs
ZWQgPSBXVEZNb3ZlKGh0dHAzRW5hYmxlZCk7CiAjZW5kaWYKLSAgICBwYXJhbWV0ZXJzLm5ldHdv
cmtTZXNzaW9uUGFyYW1ldGVycy5pc0luQXBwQnJvd3NlclByaXZhY3lFbmFibGVkID0gaXNJbkFw
cEJyb3dzZXJQcml2YWN5RW5hYmxlZDsKICAgICBwYXJhbWV0ZXJzLm5ldHdvcmtTZXNzaW9uUGFy
YW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycy5zaG91bGRJbmNsdWRlTG9j
YWxob3N0ID0gc2hvdWxkSW5jbHVkZUxvY2FsaG9zdEluUmVzb3VyY2VMb2FkU3RhdGlzdGljczsK
ICAgICBwYXJhbWV0ZXJzLm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0
aXN0aWNzUGFyYW1ldGVycy5lbmFibGVEZWJ1Z01vZGUgPSBlbmFibGVSZXNvdXJjZUxvYWRTdGF0
aXN0aWNzRGVidWdNb2RlOwogICAgIHBhcmFtZXRlcnMubmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJz
LnJlc291cmNlTG9hZFN0YXRpc3RpY3NQYXJhbWV0ZXJzLnNhbWVTaXRlU3RyaWN0RW5mb3JjZW1l
bnRFbmFibGVkID0gc2FtZVNpdGVTdHJpY3RFbmZvcmNlbWVudEVuYWJsZWQ7CkBAIC00MDUsMTQg
KzQwNSwxNCBAQCB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OmluaXRpYWxpemVBcHBCb3VuZERvbWFp
bnMoRm9yY2VSZWluaXRpYWxpemF0aW9uIGZvcmNlUmVpbgogICAgIAogICAgIHN0YXRpYyBjb25z
dCBhdXRvIG1heEFwcEJvdW5kRG9tYWluQ291bnQgPSAxMDsKICAgICAKLSAgICBhcHBCb3VuZERv
bWFpblF1ZXVlKCkuZGlzcGF0Y2goW2lzSW5BcHBCcm93c2VyUHJpdmFjeUVuYWJsZWQgPSBwYXJh
bWV0ZXJzKCkubmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzLmlzSW5BcHBCcm93c2VyUHJpdmFjeUVu
YWJsZWQsIGZvcmNlUmVpbml0aWFsaXphdGlvbl0gKCkgbXV0YWJsZSB7CisgICAgYXBwQm91bmRE
b21haW5RdWV1ZSgpLmRpc3BhdGNoKFtmb3JjZVJlaW5pdGlhbGl6YXRpb25dICgpIG11dGFibGUg
ewogICAgICAgICBpZiAoaGFzSW5pdGlhbGl6ZWRBcHBCb3VuZERvbWFpbnMgJiYgZm9yY2VSZWlu
aXRpYWxpemF0aW9uICE9IEZvcmNlUmVpbml0aWFsaXphdGlvbjo6WWVzKQogICAgICAgICAgICAg
cmV0dXJuOwogICAgICAgICAKICAgICAgICAgTlNBcnJheTxOU1N0cmluZyAqPiAqZG9tYWlucyA9
IFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gb2JqZWN0Rm9ySW5mb0RpY3Rpb25hcnlLZXk6QCJXS0Fw
cEJvdW5kRG9tYWlucyJdOwogICAgICAgICBrZXlFeGlzdHMgPSBkb21haW5zID8gdHJ1ZSA6IGZh
bHNlOwogICAgICAgICAKLSAgICAgICAgUnVuTG9vcDo6bWFpbigpLmRpc3BhdGNoKFtpc0luQXBw
QnJvd3NlclByaXZhY3lFbmFibGVkLCBmb3JjZVJlaW5pdGlhbGl6YXRpb24sIGRvbWFpbnMgPSBy
ZXRhaW5QdHIoZG9tYWlucyldIHsKKyAgICAgICAgUnVuTG9vcDo6bWFpbigpLmRpc3BhdGNoKFtm
b3JjZVJlaW5pdGlhbGl6YXRpb24sIGRvbWFpbnMgPSByZXRhaW5QdHIoZG9tYWlucyldIHsKICAg
ICAgICAgICAgIGlmIChoYXNJbml0aWFsaXplZEFwcEJvdW5kRG9tYWlucyAmJiBmb3JjZVJlaW5p
dGlhbGl6YXRpb24gIT0gRm9yY2VSZWluaXRpYWxpemF0aW9uOjpZZXMpCiAgICAgICAgICAgICAg
ICAgcmV0dXJuOwogCkBAIC00MzIsOSArNDMyLDYgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpp
bml0aWFsaXplQXBwQm91bmREb21haW5zKEZvcmNlUmVpbml0aWFsaXphdGlvbiBmb3JjZVJlaW4K
ICAgICAgICAgICAgICAgICBpZiAoYXBwQm91bmREb21haW5zKCkuc2l6ZSgpID49IG1heEFwcEJv
dW5kRG9tYWluQ291bnQpCiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAg
fQotICAgICAgICAgICAgaWYgKGlzSW5BcHBCcm93c2VyUHJpdmFjeUVuYWJsZWQpIHsKLSAgICAg
ICAgICAgICAgICBXRUJTSVRFX0RBVEFfU1RPUkVfQURESVRJT05TCi0gICAgICAgICAgICB9CiAg
ICAgICAgICAgICBoYXNJbml0aWFsaXplZEFwcEJvdW5kRG9tYWlucyA9IHRydWU7CiAgICAgICAg
ICAgICBpZiAoaXNBcHBCb3VuZElUUFJlbGF4YXRpb25FbmFibGVkKQogICAgICAgICAgICAgICAg
IGZvcndhcmRBcHBCb3VuZERvbWFpbnNUb0lUUElmSW5pdGlhbGl6ZWQoW10geyB9KTsKQEAgLTQ0
NSwxNSArNDQyLDIxIEBAIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6aW5pdGlhbGl6ZUFwcEJvdW5k
RG9tYWlucyhGb3JjZVJlaW5pdGlhbGl6YXRpb24gZm9yY2VSZWluCiB2b2lkIFdlYnNpdGVEYXRh
U3RvcmU6OmVuc3VyZUFwcEJvdW5kRG9tYWlucyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0
IEhhc2hTZXQ8V2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4+Jik+JiYgY29tcGxldGlvbkhhbmRs
ZXIpIGNvbnN0CiB7CiAgICAgaWYgKGhhc0luaXRpYWxpemVkQXBwQm91bmREb21haW5zKSB7Cisg
ICAgICAgIGlmIChtX2lzSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RNb2RlRW5hYmxlZCkgeworICAg
ICAgICAgICAgV0VCU0lURV9EQVRBX1NUT1JFX0FERElUSU9OUzsKKyAgICAgICAgfQogICAgICAg
ICBjb21wbGV0aW9uSGFuZGxlcihhcHBCb3VuZERvbWFpbnMoKSk7CiAgICAgICAgIHJldHVybjsK
ICAgICB9CiAKICAgICAvLyBIb3BwaW5nIHRvIHRoZSBiYWNrZ3JvdW5kIHRocmVhZCB0aGVuIGJh
Y2sgdG8gdGhlIG1haW4gdGhyZWFkCiAgICAgLy8gZW5zdXJlcyB0aGF0IGluaXRpYWxpemVBcHBC
b3VuZERvbWFpbnMoKSBoYXMgZmluaXNoZWQuCi0gICAgYXBwQm91bmREb21haW5RdWV1ZSgpLmRp
c3BhdGNoKFtjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXSAo
KSBtdXRhYmxlIHsKLSAgICAgICAgUnVuTG9vcDo6bWFpbigpLmRpc3BhdGNoKFtjb21wbGV0aW9u
SGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXSAoKSBtdXRhYmxlIHsKKyAgICBh
cHBCb3VuZERvbWFpblF1ZXVlKCkuZGlzcGF0Y2goW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtl
UmVmKCp0aGlzKSwgY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVy
KV0gKCkgbXV0YWJsZSB7CisgICAgICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRjaChbdGhpcywg
cHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1v
dmUoY29tcGxldGlvbkhhbmRsZXIpXSAoKSBtdXRhYmxlIHsKICAgICAgICAgICAgIEFTU0VSVCho
YXNJbml0aWFsaXplZEFwcEJvdW5kRG9tYWlucyk7CisgICAgICAgICAgICBpZiAobV9pc0luQXBw
QnJvd3NlclByaXZhY3lUZXN0TW9kZUVuYWJsZWQpIHsKKyAgICAgICAgICAgICAgICBXRUJTSVRF
X0RBVEFfU1RPUkVfQURESVRJT05TOworICAgICAgICAgICAgfQogICAgICAgICAgICAgY29tcGxl
dGlvbkhhbmRsZXIoYXBwQm91bmREb21haW5zKCkpOwogICAgICAgICB9KTsKICAgICB9KTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRh
U3RvcmUuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRh
U3RvcmUuaAppbmRleCA5NjRjNjMxNWUzOGY1ZTBhMDMwM2ZlYmNlNDViMWU5NzUwNTRmMGI0Li44
YjZjNTVlYmYyMmE2NWIxNmEzODk2ZDgzYzgxYjhlYzQ5YTE3ZTM2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmgKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oCkBA
IC0zNzMsNiArMzczLDcgQEAgcHJpdmF0ZToKICAgICBXZWFrSGFzaFNldDxXZWJQcm9jZXNzUHJv
eHk+IG1fcHJvY2Vzc2VzOwogCiAgICAgYm9vbCBtX2lzSXRwU3RhdGVFeHBsaWNpdGx5U2V0IHsg
ZmFsc2UgfTsKKyAgICBib29sIG1faXNJbkFwcEJyb3dzZXJQcml2YWN5VGVzdE1vZGVFbmFibGVk
IHsgZmFsc2UgfTsKIAogI2lmIEhBVkUoU0VDX0tFWV9QUk9YWSkKICAgICBWZWN0b3I8UmVmPFNl
Y0tleVByb3h5U3RvcmU+PiBtX3NlY0tleVByb3h5U3RvcmVzOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>402047</attachid>
            <date>2020-06-16 15:21:35 -0700</date>
            <delta_ts>2020-06-16 15:57:11 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-213261-20200616152134.patch</filename>
            <type>text/plain</type>
            <size>12927</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYzMDk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDY4Y2E1NjE4NTUxZDU1NDcx
ODUzZWEzMjA5ODI2ZjlkNDZlMTQ5M2EuLjY1NTg1YTQ3NDM4OGRmNGQyODJiZGNjN2Q1NjlmMjBh
YmYzMWM4NmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDEgQEAKKzIwMjAtMDYtMTYgIEthdGUgQ2hl
bmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgQ2hlY2sgZm9yIGlu
QXBwQnJvd3NlclByaXZhY3lFbmFibGVkIGZsYWcgaW4gV2Vic2l0ZURhdGFTdG9yZTo6aW5pdGlh
bGl6ZUFwcEJvdW5kRG9tYWlucyBpcyBleHBlbnNpdmUgYW5kIGNhbGxzIGEgbm9uLXN0YXRpYyBm
dW5jdGlvbiBXZWJzaXRlRGF0YVN0b3JlOjpwYXJhbWV0ZXJzKCkuCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTMyNjEKKyAgICAgICAgPHJkYXI6Ly9w
cm9ibGVtLzY0MzE3MDg0PgorCisgICAgICAgIFJldmlld2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisK
KyAgICAgICAgVGhlcmUgYXJlIHR3byBidWdzIGhlcmUuIEZpcnN0LCBXZWJzaXRlRGF0YVN0b3Jl
OjpwYXJhbWV0ZXJzKCkKKyAgICAgICAgZG9lcyBhIGxvdCBvZiB3b3JrIGFzaWRlIGZyb20gcmV0
dXJuaW5nIHRoZSBwYXJhbWV0ZXJzLCBtYWtpbmcgdGhpcyBhbgorICAgICAgICBleHBlbnNpdmUg
Y2FsbCBqdXN0IHRvIGNoZWNrIHRoZSB2YWx1ZSBvZiBvbmUgZmxhZy4gU2Vjb25kLAorICAgICAg
ICBhcHBCb3VuZERvbWFpbnMoKSBpcyBhIHN0YXRpYyBoYXNoc2V0LCBhbmQgaW5pdGlhbGl6aW5n
IHRoZSBoYXNoc2V0CisgICAgICAgIHNob3VsZCBub3QgcmVseSBvbiBub24tc3RhdGljIGZ1bmN0
aW9ucy4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtTZXNzaW9uQ3JlYXRpb25Q
YXJhbWV0ZXJzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Nlc3Npb25DcmVhdGlvblBh
cmFtZXRlcnM6OmVuY29kZSBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtTZXNzaW9u
Q3JlYXRpb25QYXJhbWV0ZXJzOjpkZWNvZGUpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05l
dHdvcmtTZXNzaW9uQ3JlYXRpb25QYXJhbWV0ZXJzLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nl
c3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5oOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNz
L2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtT
ZXNzaW9uQ29jb2E6Ok5ldHdvcmtTZXNzaW9uQ29jb2EpOgorICAgICAgICBSZW1vdmUgZmxhZywg
aXQgaXMgbm8gbG9uZ2VyIHVzZWQgaGVyZS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9XZWJzaXRl
RGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6Oldl
YnNpdGVEYXRhU3RvcmU6OnBsYXRmb3JtU2V0TmV0d29ya1BhcmFtZXRlcnMpOgorICAgICAgICBT
YXZlIHRoZSBmbGFnIHZhbHVlIGluIGEgbWVtYmVyIHZhcmlhYmxlIHNvIHdlIGNhbiB1c2UgdGhh
dCBsYXRlcgorICAgICAgICB3aGVuIGNoZWNraW5nIGFwcC1ib3VuZCBkb21haW5zLiBSZW5hbWUg
dG8gc29tZXRoaW5nIG1vcmUgZGVzY3JpcHRpdmUuCisKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0
ZURhdGFTdG9yZTo6aW5pdGlhbGl6ZUFwcEJvdW5kRG9tYWlucyk6CisgICAgICAgIFJlbW92ZSB0
aGUgY2hlY2sgZm9yIHRoZSBub24tc3RhdGljIHJ1bnRpbWUgZmxhZy4KKworICAgICAgICAoV2Vi
S2l0OjpXZWJzaXRlRGF0YVN0b3JlOjplbnN1cmVBcHBCb3VuZERvbWFpbnMgY29uc3QpOgorICAg
ICAgICBFbmFibGUgdGVzdCBtb2RlIHF1aXJrcy4gV2UgbXVzdCBkbyBpdCBpbiB0d28gcGxhY2Vz
IGluIGNhc2UgdGhlCisgICAgICAgIGluaXRpYWxpemF0aW9uIGhhc24ndCBoYXBwZW5lZCBieSB0
aGUgdGltZSB3ZSBjYWxsCisgICAgICAgIGVuc3VyZUFwcEJvdW5kRG9tYWlucy4KKworICAgICAg
ICAqIFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmg6CisKIDIwMjAtMDYt
MTYgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIExvYWRzIHRy
aWdnZXJlZCBieSBhbiBvcGFxdWUgc3R5bGVzaGVldCBzaG91bGQgbm90IGJlIHZpc2libGUgdG8g
c2VydmljZSB3b3JrZXJzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L05ldHdvcmtTZXNzaW9uQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnMuY3BwCmluZGV4IDkw
MWRlYjhlNGUxYmU1YzI0N2Y3NjIxMTdiNWVlYTRlYjg5ODZjOWEuLjNkNTE4MGFkYmIxZmFmMWQw
MmY0YzYxYzMwMjZiNDFmODAyMDQyOWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnMuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnMu
Y3BwCkBAIC03Nyw3ICs3Nyw2IEBAIHZvaWQgTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRl
cnM6OmVuY29kZShJUEM6OkVuY29kZXImIGVuY29kZXIpIGNvbnN0CiAgICAgZW5jb2RlciA8PCB0
ZXN0U3BlZWRNdWx0aXBsaWVyOwogICAgIGVuY29kZXIgPDwgc3VwcHJlc3Nlc0Nvbm5lY3Rpb25U
ZXJtaW5hdGlvbk9uU3lzdGVtQ2hhbmdlOwogICAgIGVuY29kZXIgPDwgYWxsb3dzU2VydmVyUHJl
Y29ubmVjdDsKLSAgICBlbmNvZGVyIDw8IGlzSW5BcHBCcm93c2VyUHJpdmFjeUVuYWJsZWQ7CiAg
ICAgZW5jb2RlciA8PCByZXF1aXJlc1NlY3VyZUhUVFBTUHJveHlDb25uZWN0aW9uOwogICAgIGVu
Y29kZXIgPDwgcHJldmVudHNTeXN0ZW1IVFRQUHJveHlBdXRoZW50aWNhdGlvbjsKICAgICBlbmNv
ZGVyIDw8IHJlc291cmNlTG9hZFN0YXRpc3RpY3NQYXJhbWV0ZXJzOwpAQCAtMjM2LDExICsyMzUs
NiBAQCBPcHRpb25hbDxOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycz4gTmV0d29ya1Nl
c3Npb25DcmVhdGlvblBhcmFtZXRlcnM6OmRlYwogICAgIGRlY29kZXIgPj4gYWxsb3dzU2VydmVy
UHJlY29ubmVjdDsKICAgICBpZiAoIWFsbG93c1NlcnZlclByZWNvbm5lY3QpCiAgICAgICAgIHJl
dHVybiBXVEY6Om51bGxvcHQ7Ci0gICAgCi0gICAgT3B0aW9uYWw8Ym9vbD4gaXNJbkFwcEJyb3dz
ZXJQcml2YWN5RW5hYmxlZDsKLSAgICBkZWNvZGVyID4+IGlzSW5BcHBCcm93c2VyUHJpdmFjeUVu
YWJsZWQ7Ci0gICAgaWYgKCFpc0luQXBwQnJvd3NlclByaXZhY3lFbmFibGVkKQotICAgICAgICBy
ZXR1cm4gV1RGOjpudWxsb3B0OwogCiAgICAgT3B0aW9uYWw8Ym9vbD4gcmVxdWlyZXNTZWN1cmVI
VFRQU1Byb3h5Q29ubmVjdGlvbjsKICAgICBkZWNvZGVyID4+IHJlcXVpcmVzU2VjdXJlSFRUUFNQ
cm94eUNvbm5lY3Rpb247CkBAIC0yOTUsNyArMjg5LDYgQEAgT3B0aW9uYWw8TmV0d29ya1Nlc3Np
b25DcmVhdGlvblBhcmFtZXRlcnM+IE5ldHdvcmtTZXNzaW9uQ3JlYXRpb25QYXJhbWV0ZXJzOjpk
ZWMKICAgICAgICAgLCBXVEZNb3ZlKCp0ZXN0U3BlZWRNdWx0aXBsaWVyKQogICAgICAgICAsIFdU
Rk1vdmUoKnN1cHByZXNzZXNDb25uZWN0aW9uVGVybWluYXRpb25PblN5c3RlbUNoYW5nZSkKICAg
ICAgICAgLCBXVEZNb3ZlKCphbGxvd3NTZXJ2ZXJQcmVjb25uZWN0KQotICAgICAgICAsIFdURk1v
dmUoKmlzSW5BcHBCcm93c2VyUHJpdmFjeUVuYWJsZWQpCiAgICAgICAgICwgV1RGTW92ZSgqcmVx
dWlyZXNTZWN1cmVIVFRQU1Byb3h5Q29ubmVjdGlvbikKICAgICAgICAgLCBXVEZNb3ZlKCpwcmV2
ZW50c1N5c3RlbUhUVFBQcm94eUF1dGhlbnRpY2F0aW9uKQogICAgICAgICAsIFdURk1vdmUoKnJl
c291cmNlTG9hZFN0YXRpc3RpY3NQYXJhbWV0ZXJzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycy5oIGIvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVy
cy5oCmluZGV4IDNhZGFhZWYwYTI1MGVkN2MzNTQyOWU4YWE4MmJkNTg1YjZmYjA0NGIuLjdkNDJh
YTRiZjM0OGZiZTU2ZmFiZGQxY2UxYTNmNTVmMmMwYWZhZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnMuaAor
KysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtTZXNzaW9uQ3JlYXRpb25Q
YXJhbWV0ZXJzLmgKQEAgLTkwLDcgKzkwLDYgQEAgc3RydWN0IE5ldHdvcmtTZXNzaW9uQ3JlYXRp
b25QYXJhbWV0ZXJzIHsKICAgICB1bnNpZ25lZCB0ZXN0U3BlZWRNdWx0aXBsaWVyIHsgMSB9Owog
ICAgIGJvb2wgc3VwcHJlc3Nlc0Nvbm5lY3Rpb25UZXJtaW5hdGlvbk9uU3lzdGVtQ2hhbmdlIHsg
ZmFsc2UgfTsKICAgICBib29sIGFsbG93c1NlcnZlclByZWNvbm5lY3QgeyB0cnVlIH07Ci0gICAg
Ym9vbCBpc0luQXBwQnJvd3NlclByaXZhY3lFbmFibGVkIHsgZmFsc2UgfTsKICAgICBib29sIHJl
cXVpcmVzU2VjdXJlSFRUUFNQcm94eUNvbm5lY3Rpb24geyBmYWxzZSB9OwogICAgIGJvb2wgcHJl
dmVudHNTeXN0ZW1IVFRQUHJveHlBdXRoZW50aWNhdGlvbiB7IGZhbHNlIH07CiAgICAgCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9u
Q29jb2EuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Np
b25Db2NvYS5oCmluZGV4IDY4N2M2N2ZlMDJmY2UyOGNlMGEzZjNjYjcyYzBhYzZhOWNkNWUwN2Mu
LjljYThmYTZlYTg5ZDkzODEyZmEwODA0N2E3ZjM0YjljZGUyZjY5N2QgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2Nv
YS5oCkBAIC05OCw3ICs5OCw2IEBAIHB1YmxpYzoKIAogICAgIFNlc3Npb25XcmFwcGVyJiBzZXNz
aW9uV3JhcHBlckZvclRhc2soY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiwgV2ViQ29y
ZTo6U3RvcmVkQ3JlZGVudGlhbHNQb2xpY3ksIE9wdGlvbmFsPE5hdmlnYXRpbmdUb0FwcEJvdW5k
RG9tYWluPik7CiAgICAgdm9pZCBjbGVhckFwcEJvdW5kU2Vzc2lvbigpIG92ZXJyaWRlOwotICAg
IGJvb2wgaXNJbkFwcEJyb3dzZXJQcml2YWN5RW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNJ
bkFwcEJyb3dzZXJQcml2YWN5RW5hYmxlZDsgfQogICAgIGJvb2wgcHJldmVudHNTeXN0ZW1IVFRQ
UHJveHlBdXRoZW50aWNhdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1fcHJldmVudHNTeXN0ZW1IVFRQ
UHJveHlBdXRoZW50aWNhdGlvbjsgfQogICAgIAogICAgIHZvaWQgY2xpZW50Q2VydGlmaWNhdGVT
dWdnZXN0ZWRGb3JIb3N0KE5ldHdvcmtEYXRhVGFza0NvY29hOjpUYXNrSWRlbnRpZmllciwgTlNV
UkxDcmVkZW50aWFsICosIGNvbnN0IFN0cmluZyYgaG9zdCwgdWludDE2X3QgcG9ydCk7CkBAIC0x
NTAsNyArMTQ5LDYgQEAgcHJpdmF0ZToKICAgICBTZWNvbmRzIG1fbG9hZFRocm90dGxlTGF0ZW5j
eTsKICAgICBib29sIG1fZmFzdFNlcnZlclRydXN0RXZhbHVhdGlvbkVuYWJsZWQgeyBmYWxzZSB9
OwogICAgIFN0cmluZyBtX2RhdGFDb25uZWN0aW9uU2VydmljZVR5cGU7Ci0gICAgYm9vbCBtX2lz
SW5BcHBCcm93c2VyUHJpdmFjeUVuYWJsZWQgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9wcmV2ZW50
c1N5c3RlbUhUVFBQcm94eUF1dGhlbnRpY2F0aW9uIHsgZmFsc2UgfTsKIAogICAgIHN0cnVjdCBT
dWdnZXN0ZWRDbGllbnRDZXJ0aWZpY2F0ZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtTZXNzaW9uQ29jb2EubW0KaW5kZXggMmUxZDFj
ZWU2NjkyOWNjMTE3ODVjMDgxYWZkZjFlOGM3MWYxOTBiYi4uYTJiYjc0ZGM2ODBiMzcxZTAzMWVj
MjdlODU1MTlhNzMyNmY0ZmM2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9jb2NvYS9OZXR3b3JrU2Vzc2lvbkNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Nlc3Npb25Db2NvYS5tbQpAQCAtMTE2Miw3ICsxMTYy
LDYgQEAgTmV0d29ya1Nlc3Npb25Db2NvYTo6TmV0d29ya1Nlc3Npb25Db2NvYShOZXR3b3JrUHJv
Y2VzcyYgbmV0d29ya1Byb2Nlc3MsIE5ldHdvcmsKICAgICAsIG1fbG9hZFRocm90dGxlTGF0ZW5j
eShwYXJhbWV0ZXJzLmxvYWRUaHJvdHRsZUxhdGVuY3kpCiAgICAgLCBtX2Zhc3RTZXJ2ZXJUcnVz
dEV2YWx1YXRpb25FbmFibGVkKHBhcmFtZXRlcnMuZmFzdFNlcnZlclRydXN0RXZhbHVhdGlvbkVu
YWJsZWQpCiAgICAgLCBtX2RhdGFDb25uZWN0aW9uU2VydmljZVR5cGUocGFyYW1ldGVycy5kYXRh
Q29ubmVjdGlvblNlcnZpY2VUeXBlKQotICAgICwgbV9pc0luQXBwQnJvd3NlclByaXZhY3lFbmFi
bGVkKHBhcmFtZXRlcnMuaXNJbkFwcEJyb3dzZXJQcml2YWN5RW5hYmxlZCkKICAgICAsIG1fcHJl
dmVudHNTeXN0ZW1IVFRQUHJveHlBdXRoZW50aWNhdGlvbihwYXJhbWV0ZXJzLnByZXZlbnRzU3lz
dGVtSFRUUFByb3h5QXV0aGVudGljYXRpb24pCiB7CiAgICAgQVNTRVJUKGhhc1Byb2Nlc3NQcml2
aWxlZ2UoUHJvY2Vzc1ByaXZpbGVnZTo6Q2FuQWNjZXNzUmF3Q29va2llcykpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFT
dG9yZUNvY29hLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2Ev
V2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tCmluZGV4IGQ2MjlhNmQ0MTM4ZGJiM2YwYzA3NzY1OGU2
OGY0NjE4ZWQ5YWRkMGUuLmE5NTA0ZDMxYzFlODgwYTg4OTYzOTNmMzk3NjgzZWM0MmZhYzgyY2Mg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dl
YnNpdGVEYXRhU3RvcmVDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJz
aXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0KQEAgLTExNyw2ICsxMTcsOCBA
QCB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OnBsYXRmb3JtU2V0TmV0d29ya1BhcmFtZXRlcnMoV2Vi
c2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMmCiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIGZpcnN0
UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlID0gV2ViQ29yZTo6Rmlyc3RQYXJ0eVdlYnNpdGVE
YXRhUmVtb3ZhbE1vZGU6OkFsbEJ1dENvb2tpZXM7CiAgICAgfQorICAgIG1faXNJbkFwcEJyb3dz
ZXJQcml2YWN5VGVzdE1vZGVFbmFibGVkID0gW2RlZmF1bHRzIGJvb2xGb3JLZXk6W05TU3RyaW5n
IHN0cmluZ1dpdGhGb3JtYXQ6QCJXZWJLaXREZWJ1ZyVAIiwgV2ViUHJlZmVyZW5jZXNLZXk6Omlz
SW5BcHBCcm93c2VyUHJpdmFjeUVuYWJsZWRLZXkoKS5jcmVhdGVDRlN0cmluZygpLmdldCgpXV07
CisKICAgICBhdXRvKiBtYW51YWxQcmV2YWxlbnRSZXNvdXJjZSA9IFtkZWZhdWx0cyBzdHJpbmdG
b3JLZXk6QCJJVFBNYW51YWxQcmV2YWxlbnRSZXNvdXJjZSJdOwogICAgIGlmIChtYW51YWxQcmV2
YWxlbnRSZXNvdXJjZSkgewogICAgICAgICBVUkwgdXJsIHsgVVJMKCksIG1hbnVhbFByZXZhbGVu
dFJlc291cmNlIH07CkBAIC0xNjIsNyArMTY0LDYgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpw
bGF0Zm9ybVNldE5ldHdvcmtQYXJhbWV0ZXJzKFdlYnNpdGVEYXRhU3RvcmVQYXJhbWV0ZXJzJgog
I2VuZGlmCiAKICAgICBib29sIHNob3VsZEluY2x1ZGVMb2NhbGhvc3RJblJlc291cmNlTG9hZFN0
YXRpc3RpY3MgPSBpc1NhZmFyaTsKLSAgICBib29sIGlzSW5BcHBCcm93c2VyUHJpdmFjeUVuYWJs
ZWQgPSBbZGVmYXVsdHMgYm9vbEZvcktleTpbTlNTdHJpbmcgc3RyaW5nV2l0aEZvcm1hdDpAIldl
YktpdERlYnVnJUAiLCBXZWJQcmVmZXJlbmNlc0tleTo6aXNJbkFwcEJyb3dzZXJQcml2YWN5RW5h
YmxlZEtleSgpLmNyZWF0ZUNGU3RyaW5nKCkuZ2V0KCldXTsKICAgICAKICAgICBwYXJhbWV0ZXJz
Lm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5wcm94eUNvbmZpZ3VyYXRpb24gPSBjb25maWd1cmF0
aW9uKCkucHJveHlDb25maWd1cmF0aW9uKCk7CiAgICAgcGFyYW1ldGVycy5uZXR3b3JrU2Vzc2lv
blBhcmFtZXRlcnMuc291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyID0gY29uZmlndXJh
dGlvbigpLnNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpOwpAQCAtMTc2LDcgKzE3
Nyw2IEBAIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6cGxhdGZvcm1TZXROZXR3b3JrUGFyYW1ldGVy
cyhXZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycyYKICAgICBwYXJhbWV0ZXJzLm5ldHdvcmtTZXNz
aW9uUGFyYW1ldGVycy5hbHRlcm5hdGl2ZVNlcnZpY2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUg
PSBXVEZNb3ZlKGFsdGVybmF0aXZlU2VydmljZVN0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25IYW5k
bGUpOwogICAgIHBhcmFtZXRlcnMubmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzLmh0dHAzRW5hYmxl
ZCA9IFdURk1vdmUoaHR0cDNFbmFibGVkKTsKICNlbmRpZgotICAgIHBhcmFtZXRlcnMubmV0d29y
a1Nlc3Npb25QYXJhbWV0ZXJzLmlzSW5BcHBCcm93c2VyUHJpdmFjeUVuYWJsZWQgPSBpc0luQXBw
QnJvd3NlclByaXZhY3lFbmFibGVkOwogICAgIHBhcmFtZXRlcnMubmV0d29ya1Nlc3Npb25QYXJh
bWV0ZXJzLnJlc291cmNlTG9hZFN0YXRpc3RpY3NQYXJhbWV0ZXJzLnNob3VsZEluY2x1ZGVMb2Nh
bGhvc3QgPSBzaG91bGRJbmNsdWRlTG9jYWxob3N0SW5SZXNvdXJjZUxvYWRTdGF0aXN0aWNzOwog
ICAgIHBhcmFtZXRlcnMubmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzLnJlc291cmNlTG9hZFN0YXRp
c3RpY3NQYXJhbWV0ZXJzLmVuYWJsZURlYnVnTW9kZSA9IGVuYWJsZVJlc291cmNlTG9hZFN0YXRp
c3RpY3NEZWJ1Z01vZGU7CiAgICAgcGFyYW1ldGVycy5uZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMu
cmVzb3VyY2VMb2FkU3RhdGlzdGljc1BhcmFtZXRlcnMuc2FtZVNpdGVTdHJpY3RFbmZvcmNlbWVu
dEVuYWJsZWQgPSBzYW1lU2l0ZVN0cmljdEVuZm9yY2VtZW50RW5hYmxlZDsKQEAgLTQwNSwxNCAr
NDA1LDE0IEBAIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6aW5pdGlhbGl6ZUFwcEJvdW5kRG9tYWlu
cyhGb3JjZVJlaW5pdGlhbGl6YXRpb24gZm9yY2VSZWluCiAgICAgCiAgICAgc3RhdGljIGNvbnN0
IGF1dG8gbWF4QXBwQm91bmREb21haW5Db3VudCA9IDEwOwogICAgIAotICAgIGFwcEJvdW5kRG9t
YWluUXVldWUoKS5kaXNwYXRjaChbaXNJbkFwcEJyb3dzZXJQcml2YWN5RW5hYmxlZCA9IHBhcmFt
ZXRlcnMoKS5uZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMuaXNJbkFwcEJyb3dzZXJQcml2YWN5RW5h
YmxlZCwgZm9yY2VSZWluaXRpYWxpemF0aW9uXSAoKSBtdXRhYmxlIHsKKyAgICBhcHBCb3VuZERv
bWFpblF1ZXVlKCkuZGlzcGF0Y2goW2ZvcmNlUmVpbml0aWFsaXphdGlvbl0gKCkgbXV0YWJsZSB7
CiAgICAgICAgIGlmIChoYXNJbml0aWFsaXplZEFwcEJvdW5kRG9tYWlucyAmJiBmb3JjZVJlaW5p
dGlhbGl6YXRpb24gIT0gRm9yY2VSZWluaXRpYWxpemF0aW9uOjpZZXMpCiAgICAgICAgICAgICBy
ZXR1cm47CiAgICAgICAgIAogICAgICAgICBOU0FycmF5PE5TU3RyaW5nICo+ICpkb21haW5zID0g
W1tOU0J1bmRsZSBtYWluQnVuZGxlXSBvYmplY3RGb3JJbmZvRGljdGlvbmFyeUtleTpAIldLQXBw
Qm91bmREb21haW5zIl07CiAgICAgICAgIGtleUV4aXN0cyA9IGRvbWFpbnMgPyB0cnVlIDogZmFs
c2U7CiAgICAgICAgIAotICAgICAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW2lzSW5BcHBC
cm93c2VyUHJpdmFjeUVuYWJsZWQsIGZvcmNlUmVpbml0aWFsaXphdGlvbiwgZG9tYWlucyA9IHJl
dGFpblB0cihkb21haW5zKV0geworICAgICAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW2Zv
cmNlUmVpbml0aWFsaXphdGlvbiwgZG9tYWlucyA9IHJldGFpblB0cihkb21haW5zKV0gewogICAg
ICAgICAgICAgaWYgKGhhc0luaXRpYWxpemVkQXBwQm91bmREb21haW5zICYmIGZvcmNlUmVpbml0
aWFsaXphdGlvbiAhPSBGb3JjZVJlaW5pdGlhbGl6YXRpb246OlllcykKICAgICAgICAgICAgICAg
ICByZXR1cm47CiAKQEAgLTQzMiw5ICs0MzIsNiBAQCB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6Omlu
aXRpYWxpemVBcHBCb3VuZERvbWFpbnMoRm9yY2VSZWluaXRpYWxpemF0aW9uIGZvcmNlUmVpbgog
ICAgICAgICAgICAgICAgIGlmIChhcHBCb3VuZERvbWFpbnMoKS5zaXplKCkgPj0gbWF4QXBwQm91
bmREb21haW5Db3VudCkKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9
Ci0gICAgICAgICAgICBpZiAoaXNJbkFwcEJyb3dzZXJQcml2YWN5RW5hYmxlZCkgewotICAgICAg
ICAgICAgICAgIFdFQlNJVEVfREFUQV9TVE9SRV9BRERJVElPTlMKLSAgICAgICAgICAgIH0KICAg
ICAgICAgICAgIGhhc0luaXRpYWxpemVkQXBwQm91bmREb21haW5zID0gdHJ1ZTsKICAgICAgICAg
ICAgIGlmIChpc0FwcEJvdW5kSVRQUmVsYXhhdGlvbkVuYWJsZWQpCiAgICAgICAgICAgICAgICAg
Zm9yd2FyZEFwcEJvdW5kRG9tYWluc1RvSVRQSWZJbml0aWFsaXplZChbXSB7IH0pOwpAQCAtNDQ1
LDE1ICs0NDIsMjEgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3JlOjppbml0aWFsaXplQXBwQm91bmRE
b21haW5zKEZvcmNlUmVpbml0aWFsaXphdGlvbiBmb3JjZVJlaW4KIHZvaWQgV2Vic2l0ZURhdGFT
dG9yZTo6ZW5zdXJlQXBwQm91bmREb21haW5zKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3Qg
SGFzaFNldDxXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbj4mKT4mJiBjb21wbGV0aW9uSGFuZGxl
cikgY29uc3QKIHsKICAgICBpZiAoaGFzSW5pdGlhbGl6ZWRBcHBCb3VuZERvbWFpbnMpIHsKKyAg
ICAgICAgaWYgKG1faXNJbkFwcEJyb3dzZXJQcml2YWN5VGVzdE1vZGVFbmFibGVkKSB7CisgICAg
ICAgICAgICBXRUJTSVRFX0RBVEFfU1RPUkVfQURESVRJT05TOworICAgICAgICB9CiAgICAgICAg
IGNvbXBsZXRpb25IYW5kbGVyKGFwcEJvdW5kRG9tYWlucygpKTsKICAgICAgICAgcmV0dXJuOwog
ICAgIH0KIAogICAgIC8vIEhvcHBpbmcgdG8gdGhlIGJhY2tncm91bmQgdGhyZWFkIHRoZW4gYmFj
ayB0byB0aGUgbWFpbiB0aHJlYWQKICAgICAvLyBlbnN1cmVzIHRoYXQgaW5pdGlhbGl6ZUFwcEJv
dW5kRG9tYWlucygpIGhhcyBmaW5pc2hlZC4KLSAgICBhcHBCb3VuZERvbWFpblF1ZXVlKCkuZGlz
cGF0Y2goW2NvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildICgp
IG11dGFibGUgewotICAgICAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW2NvbXBsZXRpb25I
YW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildICgpIG11dGFibGUgeworICAgIGFw
cEJvdW5kRG9tYWluUXVldWUoKS5kaXNwYXRjaChbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VS
ZWYoKnRoaXMpLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIp
XSAoKSBtdXRhYmxlIHsKKyAgICAgICAgUnVuTG9vcDo6bWFpbigpLmRpc3BhdGNoKFt0aGlzLCBw
cm90ZWN0ZWRUaGlzID0gV1RGTW92ZShwcm90ZWN0ZWRUaGlzKSwgY29tcGxldGlvbkhhbmRsZXIg
PSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0gKCkgbXV0YWJsZSB7CiAgICAgICAgICAgICBB
U1NFUlQoaGFzSW5pdGlhbGl6ZWRBcHBCb3VuZERvbWFpbnMpOworICAgICAgICAgICAgaWYgKG1f
aXNJbkFwcEJyb3dzZXJQcml2YWN5VGVzdE1vZGVFbmFibGVkKSB7CisgICAgICAgICAgICAgICAg
V0VCU0lURV9EQVRBX1NUT1JFX0FERElUSU9OUzsKKyAgICAgICAgICAgIH0KICAgICAgICAgICAg
IGNvbXBsZXRpb25IYW5kbGVyKGFwcEJvdW5kRG9tYWlucygpKTsKICAgICAgICAgfSk7CiAgICAg
fSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJz
aXRlRGF0YVN0b3JlLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJz
aXRlRGF0YVN0b3JlLmgKaW5kZXggOTY0YzYzMTVlMzhmNWUwYTAzMDNmZWJjZTQ1YjFlOTc1MDU0
ZjBiNC4uOGI2YzU1ZWJmMjJhNjViMTZhMzg5NmQ4M2M4MWI4ZWM0OWExN2UzNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5o
CisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3Rv
cmUuaApAQCAtMzczLDYgKzM3Myw3IEBAIHByaXZhdGU6CiAgICAgV2Vha0hhc2hTZXQ8V2ViUHJv
Y2Vzc1Byb3h5PiBtX3Byb2Nlc3NlczsKIAogICAgIGJvb2wgbV9pc0l0cFN0YXRlRXhwbGljaXRs
eVNldCB7IGZhbHNlIH07CisgICAgYm9vbCBtX2lzSW5BcHBCcm93c2VyUHJpdmFjeVRlc3RNb2Rl
RW5hYmxlZCB7IGZhbHNlIH07CiAKICNpZiBIQVZFKFNFQ19LRVlfUFJPWFkpCiAgICAgVmVjdG9y
PFJlZjxTZWNLZXlQcm94eVN0b3JlPj4gbV9zZWNLZXlQcm94eVN0b3JlczsK
</data>

          </attachment>
      

    </bug>

</bugzilla>