<?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>175884</bug_id>
          
          <creation_ts>2017-08-23 08:18:40 -0700</creation_ts>
          <short_desc>[Cache API] UIProcess should provide the directory path where to store Cache Storage data</short_desc>
          <delta_ts>2017-08-25 10:01:39 -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>WebCore 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="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>achristensen</cc>
    
    <cc>beidson</cc>
    
    <cc>commit-queue</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1341538</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-08-23 08:18:40 -0700</bug_when>
    <thetext>And its sandbox extension as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1341541</commentid>
    <comment_count>1</comment_count>
      <attachid>318870</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-08-23 08:26:57 -0700</bug_when>
    <thetext>Created attachment 318870
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1341550</commentid>
    <comment_count>2</comment_count>
      <attachid>318874</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-08-23 09:01:39 -0700</bug_when>
    <thetext>Created attachment 318874
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342057</commentid>
    <comment_count>3</comment_count>
      <attachid>318874</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-08-24 09:19:16 -0700</bug_when>
    <thetext>Comment on attachment 318874
Patch

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

R+ with comments

&gt; Source/WebKit/UIProcess/API/C/WKContextConfigurationRef.h:43
&gt; +WK_EXPORT WKStringRef WKContextConfigurationCopyCacheStorageDirectory(WKContextConfigurationRef configuration);
&gt; +WK_EXPORT void WKContextConfigurationSetCacheStorageDirectory(WKContextConfigurationRef configuration, WKStringRef cacheStorageDirectory);
&gt; +

Since there&apos;s no tests and therefore no user of this API, just skip it in this patch.

When we do need to expose the API to set the directory, please do so on WKProcessPool instead.

The C-API should be a dead man walking at this point.

&gt; Source/WebKit/UIProcess/API/Cocoa/APIWebsiteDataStoreCocoa.mm:58
&gt; +String WebsiteDataStore::defaultCacheStorageDirectory()
&gt; +{
&gt; +    return cacheDirectoryFileSystemRepresentation(&quot;CacheStorage&quot;);
&gt; +}

I know you&apos;re not using this yet, but probably plan to soon.

That said, cacheDirectoryFileSystemRepresentation() is wrong as it picks a directory in the NSCachesDirectory folder.

I think we want websiteDataDirectoryFileSystemRepresentation() instead</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342256</commentid>
    <comment_count>4</comment_count>
      <attachid>319040</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-08-24 17:01:24 -0700</bug_when>
    <thetext>Created attachment 319040
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342285</commentid>
    <comment_count>5</comment_count>
      <attachid>319040</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-08-24 18:08:20 -0700</bug_when>
    <thetext>Comment on attachment 319040
Patch for landing

Clearing flags on attachment: 319040

Committed r221175: &lt;http://trac.webkit.org/changeset/221175&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342286</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-08-24 18:08:21 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342287</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-08-24 18:09:33 -0700</bug_when>
    <thetext>&lt;rdar://problem/34072441&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342399</commentid>
    <comment_count>8</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-08-25 09:20:02 -0700</bug_when>
    <thetext>Reopening to attach new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342400</commentid>
    <comment_count>9</comment_count>
      <attachid>319082</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-08-25 09:20:03 -0700</bug_when>
    <thetext>Created attachment 319082
Fixing typo</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342425</commentid>
    <comment_count>10</comment_count>
      <attachid>319082</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-08-25 10:01:37 -0700</bug_when>
    <thetext>Comment on attachment 319082
Fixing typo

Clearing flags on attachment: 319082

Committed r221190: &lt;http://trac.webkit.org/changeset/221190&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342426</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-08-25 10:01:39 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>318870</attachid>
            <date>2017-08-23 08:26:57 -0700</date>
            <delta_ts>2017-08-23 09:01:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-175884-20170823082656.patch</filename>
            <type>text/plain</type>
            <size>19169</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIxMDEwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDI2YjMxOWMyNDIwNDU5ZWMy
NDk0NWE1ODAxMjJiNGY0MTM0MzYwMTEuLjBlMmNmYjgwYzY5NDE2NTg2M2UyMGYyMDljNjAwMWZj
NTZkY2NkZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDIgQEAKKzIwMTctMDgtMjMgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIFtDYWNoZSBBUEldIFVJUHJvY2Vz
cyBzaG91bGQgcHJvdmlkZSB0aGUgZGlyZWN0b3J5IHBhdGggd2hlcmUgdG8gc3RvcmUgQ2FjaGUg
U3RvcmFnZSBkYXRhCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNzU4ODQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBBZGRpbmcgQVBJIHRvIHNldCB0aGUgY2FjaGUgc3RvcmFnZSBkaXJlY3RvcnkgcGF0aC4K
KyAgICAgICAgVXBkYXRpbmcgSVBDIHRvIHBhc3MgdGhpcyBwYXJhbWV0ZXIgd2l0aCBpdHMgc2Fu
ZGJveCBleHRlbnNpb24gdG8gTmV0d29ya1Byb2Nlc3MgYXQgY3JlYXRpb24gdGltZS4KKworICAg
ICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmg6CisgICAgICAgIChXZWJLaXQ6
Ok5ldHdvcmtQcm9jZXNzOjpjYWNoZVN0b3JhZ2VEaXJlY3RvcnkgY29uc3QpOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmVuY29kZSBj
b25zdCk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJz
OjpkZWNvZGUpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1By
b2Nlc3NDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OnBsYXRmb3Jt
SW5pdGlhbGl6ZU5ldHdvcmtQcm9jZXNzQ29jb2EpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkv
QVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmNwcDoKKyAgICAgICAgKEFQSTo6UHJvY2Vzc1Bv
b2xDb25maWd1cmF0aW9uOjpjcmVhdGVXaXRoTGVnYWN5T3B0aW9ucyk6CisgICAgICAgIChBUEk6
OlByb2Nlc3NQb29sQ29uZmlndXJhdGlvbjo6Y3JlYXRlV2l0aFdlYnNpdGVEYXRhU3RvcmVDb25m
aWd1cmF0aW9uKToKKyAgICAgICAgKEFQSTo6UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uOjpQcm9j
ZXNzUG9vbENvbmZpZ3VyYXRpb24pOgorICAgICAgICAoQVBJOjpQcm9jZXNzUG9vbENvbmZpZ3Vy
YXRpb246OmNvcHkpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25m
aWd1cmF0aW9uLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9BUElXZWJzaXRlRGF0YVN0b3Jl
Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dENvbmZpZ3VyYXRpb25SZWYu
Y3BwOgorICAgICAgICAoV0tDb250ZXh0Q29uZmlndXJhdGlvbkNvcHlDYWNoZVN0b3JhZ2VEaXJl
Y3RvcnkpOgorICAgICAgICAoV0tDb250ZXh0Q29uZmlndXJhdGlvblNldENhY2hlU3RvcmFnZURp
cmVjdG9yeSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dENvbmZpZ3VyYXRp
b25SZWYuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL0FQSVdlYnNpdGVEYXRhU3Rv
cmVDb2NvYS5tbToKKyAgICAgICAgKEFQSTo6V2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdENhY2hl
U3RvcmFnZURpcmVjdG9yeSk6CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQ
b29sQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjpsZWdhY3lQbGF0
Zm9ybURlZmF1bHRDYWNoZVN0b3JhZ2VEaXJlY3RvcnkpOgorICAgICAgICAqIFVJUHJvY2Vzcy9X
ZWJQcm9jZXNzUG9vbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OmxlZ2FjeVdlYnNpdGVEYXRhU3Rv
cmVDb25maWd1cmF0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmVuc3Vy
ZU5ldHdvcmtQcm9jZXNzKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaDoK
KyAgICAgICAgKiBVSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oOgorCiAy
MDE3LTA4LTIyICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBb
Q2FjaGUgQVBJXSBBZGQgc3VwcG9ydCBmb3Igb3ZlcndyaXRpbmcgcmVzcG9uc2VzIHdpdGggcHV0
IG9uIGFuIGV4aXN0aW5nIHJlY29yZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrUHJvY2Vzcy5oCmluZGV4IDQ5Yjg2NmJiOWIwMGRkNzBlOWE5YTg5MzRmY2NhZjlkYzNj
NmE2YWYuLjUwNmY0OTI1NWUxMjFmN2U2NWU5ZGJjZWRmMzcwZTJhMWFjNzIxOGEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaAorKysgYi9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmgKQEAgLTEzNCw2ICsx
MzQsNyBAQCBwdWJsaWM6CiAjZW5kaWYKIAogICAgIFNlY29uZHMgbG9hZFRocm90dGxlTGF0ZW5j
eSgpIGNvbnN0IHsgcmV0dXJuIG1fbG9hZFRocm90dGxlTGF0ZW5jeTsgfQorICAgIGNvbnN0IFN0
cmluZyYgY2FjaGVTdG9yYWdlRGlyZWN0b3J5KCkgY29uc3QgeyByZXR1cm4gbV9jYWNoZVN0b3Jh
Z2VEaXJlY3Rvcnk7IH0KIAogcHJpdmF0ZToKICAgICBOZXR3b3JrUHJvY2VzcygpOwpAQCAtMjIz
LDYgKzIyNCw3IEBAIHByaXZhdGU6CiAgICAgLy8gQ29ubmVjdGlvbnMgdG8gV2ViUHJvY2Vzc2Vz
LgogICAgIFZlY3RvcjxSZWZQdHI8TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M+PiBtX3dl
YlByb2Nlc3NDb25uZWN0aW9uczsKIAorICAgIFN0cmluZyBtX2NhY2hlU3RvcmFnZURpcmVjdG9y
eTsKICAgICBTdHJpbmcgbV9kaXNrQ2FjaGVEaXJlY3Rvcnk7CiAgICAgYm9vbCBtX2hhc1NldENh
Y2hlTW9kZWw7CiAgICAgQ2FjaGVNb2RlbCBtX2NhY2hlTW9kZWw7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJz
LmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlv
blBhcmFtZXRlcnMuY3BwCmluZGV4IGZlZjVjOTdlOTc5ZjA2OGZlYzJhYWQ2OGE4ZmY1ODc5MThl
MTc3NWIuLjY3OGQ2Y2Y3YjE2OTkxOGIxZDcwZjE2NzJlMmZiNzk5ZjkxYTNiMmEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBh
cmFtZXRlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1By
b2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCkBAIC00NSw2ICs0NSw4IEBAIHZvaWQgTmV0d29y
a1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmVuY29kZShJUEM6OkVuY29kZXImIGVuY29kZXIp
IGNvbnN0CiAgICAgZW5jb2Rlci5lbmNvZGVFbnVtKGNhY2hlTW9kZWwpOwogICAgIGVuY29kZXIg
PDwgZGlza0NhY2hlU2l6ZU92ZXJyaWRlOwogICAgIGVuY29kZXIgPDwgY2FuSGFuZGxlSFRUUFNT
ZXJ2ZXJUcnVzdEV2YWx1YXRpb247CisgICAgZW5jb2RlciA8PCBjYWNoZVN0b3JhZ2VEaXJlY3Rv
cnk7CisgICAgZW5jb2RlciA8PCBjYWNoZVN0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7
CiAgICAgZW5jb2RlciA8PCBkaXNrQ2FjaGVEaXJlY3Rvcnk7CiAgICAgZW5jb2RlciA8PCBkaXNr
Q2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7CiAjaWYgRU5BQkxFKE5FVFdPUktfQ0FDSEUp
CkBAIC0xMTIsNiArMTE0LDEwIEBAIGJvb2wgTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRl
cnM6OmRlY29kZShJUEM6OkRlY29kZXImIGRlY29kZXIsIE5ldHdvcmtQcm9jCiAgICAgICAgIHJl
dHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5jYW5IYW5kbGVIVFRQ
U1NlcnZlclRydXN0RXZhbHVhdGlvbikpCiAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBpZiAo
IWRlY29kZXIuZGVjb2RlKHJlc3VsdC5jYWNoZVN0b3JhZ2VEaXJlY3RvcnkpKQorICAgICAgICBy
ZXR1cm4gZmFsc2U7CisgICAgaWYgKCFkZWNvZGVyLmRlY29kZShyZXN1bHQuY2FjaGVTdG9yYWdl
RGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGlm
ICghZGVjb2Rlci5kZWNvZGUocmVzdWx0LmRpc2tDYWNoZURpcmVjdG9yeSkpCiAgICAgICAgIHJl
dHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5kaXNrQ2FjaGVEaXJl
Y3RvcnlFeHRlbnNpb25IYW5kbGUpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCmluZGV4
IGEyMWVhMTJhOGEwMWM1MmU1ODZjOGJkYjA3NDgzNjQ3MmIyMDQ4NjYuLjFlYjc5Nzk5NjE4YmNl
NWE3MmFjNzU2MTcwNzE4MTI1MDc2YjAyM2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJz
LmgKQEAgLTU0LDYgKzU0LDggQEAgc3RydWN0IE5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0
ZXJzIHsKICAgICBpbnQ2NF90IGRpc2tDYWNoZVNpemVPdmVycmlkZSB7IC0xIH07CiAgICAgYm9v
bCBjYW5IYW5kbGVIVFRQU1NlcnZlclRydXN0RXZhbHVhdGlvbiB7IHRydWUgfTsKIAorICAgIFN0
cmluZyBjYWNoZVN0b3JhZ2VEaXJlY3Rvcnk7CisgICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxl
IGNhY2hlU3RvcmFnZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZTsKICAgICBTdHJpbmcgZGlza0Nh
Y2hlRGlyZWN0b3J5OwogICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBkaXNrQ2FjaGVEaXJl
Y3RvcnlFeHRlbnNpb25IYW5kbGU7CiAjaWYgRU5BQkxFKE5FVFdPUktfQ0FDSEUpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtQcm9jZXNzQ29j
b2EubW0gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtQcm9jZXNz
Q29jb2EubW0KaW5kZXggNzU0NWQ1M2VmMDAxZDIwNGFlZjNiMzkzMTEzZTJkZDYzZDliYzdiMi4u
OTA3NDg5YmMwNDg4YmM0YzRmZDU1ZDNmMjY2ZTBhMmY5NzUwYWJkZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrUHJvY2Vzc0NvY29hLm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Byb2Nlc3NDb2Nv
YS5tbQpAQCAtNzMsNiArNzMsNyBAQCB2b2lkIE5ldHdvcmtQcm9jZXNzOjpwbGF0Zm9ybUluaXRp
YWxpemVOZXR3b3JrUHJvY2Vzc0NvY29hKGNvbnN0IE5ldHdvcmtQcm9jZXNzQwogICAgIFNhbmRi
b3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShwYXJhbWV0ZXJzLmNvbnRhaW5lckNhY2hl
c0RpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7CiAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3Vt
ZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMucGFyZW50QnVuZGxlRGlyZWN0b3J5RXh0ZW5zaW9uSGFu
ZGxlKTsKICNlbmRpZgorICAgIG1fY2FjaGVTdG9yYWdlRGlyZWN0b3J5ID0gcGFyYW1ldGVycy5j
YWNoZVN0b3JhZ2VEaXJlY3Rvcnk7CiAgICAgbV9kaXNrQ2FjaGVEaXJlY3RvcnkgPSBwYXJhbWV0
ZXJzLmRpc2tDYWNoZURpcmVjdG9yeTsKIAogICAgIF9DRk5ldHdvcmtTZXRBVFNDb250ZXh0KHBh
cmFtZXRlcnMubmV0d29ya0FUU0NvbnRleHQuZ2V0KCkpOwpAQCAtMTA1LDYgKzEwNiw5IEBAIHZv
aWQgTmV0d29ya1Byb2Nlc3M6OnBsYXRmb3JtSW5pdGlhbGl6ZU5ldHdvcmtQcm9jZXNzQ29jb2Eo
Y29uc3QgTmV0d29ya1Byb2Nlc3NDCiAKICAgICBBU1NFUlQoIW1fZGlza0NhY2hlSXNEaXNhYmxl
ZEZvclRlc3RpbmcgfHwgIXBhcmFtZXRlcnMubnNVUkxDYWNoZURpc2tDYXBhY2l0eSk7CiAKKyAg
ICBpZiAoIW1fY2FjaGVTdG9yYWdlRGlyZWN0b3J5LmlzTnVsbCgpKQorICAgICAgICBTYW5kYm94
RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkocGFyYW1ldGVycy5jYWNoZVN0b3JhZ2VEaXJl
Y3RvcnlFeHRlbnNpb25IYW5kbGUpOworCiAgICAgaWYgKCFtX2Rpc2tDYWNoZURpcmVjdG9yeS5p
c051bGwoKSkgewogICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHko
cGFyYW1ldGVycy5kaXNrQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpOwogI2lmIEVOQUJM
RShORVRXT1JLX0NBQ0hFKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmNwcAppbmRleCAxZmRlMDE0YzdiMTlj
ZjhiZDAxYjI5ZDNkOTdlNTUzNGYzYjFhMjk4Li5iYmZhYWU2MzRhMWU4YmRhZWUwM2Q3YjIxYTZi
ZTk1OTcxNDBjMTlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJ
UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmNwcApAQCAtNDYsNiArNDYsNyBAQCBS
ZWY8UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uPiBQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb246OmNy
ZWF0ZVdpdGhMZWdhY3lPcHRpb25zKAogCiAgICAgY29uZmlndXJhdGlvbi0+bV9hcHBsaWNhdGlv
bkNhY2hlRGlyZWN0b3J5ID0gV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6bGVnYWN5UGxhdGZvcm1E
ZWZhdWx0QXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSgpOwogICAgIGNvbmZpZ3VyYXRpb24tPm1f
YXBwbGljYXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZSA9ICJBcHBsaWNhdGlvbkNh
Y2hlIjsKKyAgICBjb25maWd1cmF0aW9uLT5tX2NhY2hlU3RvcmFnZURpcmVjdG9yeSA9IFdlYktp
dDo6V2ViUHJvY2Vzc1Bvb2w6OmxlZ2FjeVBsYXRmb3JtRGVmYXVsdENhY2hlU3RvcmFnZURpcmVj
dG9yeSgpOwogICAgIGNvbmZpZ3VyYXRpb24tPm1fZGlza0NhY2hlRGlyZWN0b3J5ID0gV2ViS2l0
OjpXZWJQcm9jZXNzUG9vbDo6bGVnYWN5UGxhdGZvcm1EZWZhdWx0TmV0d29ya0NhY2hlRGlyZWN0
b3J5KCk7CiAgICAgY29uZmlndXJhdGlvbi0+bV9tZWRpYUNhY2hlRGlyZWN0b3J5ID0gV2ViS2l0
OjpXZWJQcm9jZXNzUG9vbDo6bGVnYWN5UGxhdGZvcm1EZWZhdWx0TWVkaWFDYWNoZURpcmVjdG9y
eSgpOwogICAgIGNvbmZpZ3VyYXRpb24tPm1faW5kZXhlZERCRGF0YWJhc2VEaXJlY3RvcnkgPSBX
ZWJLaXQ6OldlYlByb2Nlc3NQb29sOjpsZWdhY3lQbGF0Zm9ybURlZmF1bHRJbmRleGVkREJEYXRh
YmFzZURpcmVjdG9yeSgpOwpAQCAtNjMsNiArNjQsNyBAQCBSZWY8UHJvY2Vzc1Bvb2xDb25maWd1
cmF0aW9uPiBQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb246OmNyZWF0ZVdpdGhXZWJzaXRlRGF0YVN0
bwogCiAgICAgY29uZmlndXJhdGlvbi0+bV9hcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5ID0gbGVn
YWN5Q29uZmlndXJhdGlvbi5hcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5OwogICAgIGNvbmZpZ3Vy
YXRpb24tPm1fYXBwbGljYXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZSA9IGxlZ2Fj
eUNvbmZpZ3VyYXRpb24uYXBwbGljYXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZTsK
KyAgICBjb25maWd1cmF0aW9uLT5tX2NhY2hlU3RvcmFnZURpcmVjdG9yeSA9IGxlZ2FjeUNvbmZp
Z3VyYXRpb24uY2FjaGVTdG9yYWdlRGlyZWN0b3J5OwogICAgIGNvbmZpZ3VyYXRpb24tPm1fZGlz
a0NhY2hlRGlyZWN0b3J5ID0gbGVnYWN5Q29uZmlndXJhdGlvbi5uZXR3b3JrQ2FjaGVEaXJlY3Rv
cnk7CiAgICAgY29uZmlndXJhdGlvbi0+bV9tZWRpYUNhY2hlRGlyZWN0b3J5ID0gbGVnYWN5Q29u
ZmlndXJhdGlvbi5tZWRpYUNhY2hlRGlyZWN0b3J5OwogICAgIGNvbmZpZ3VyYXRpb24tPm1faW5k
ZXhlZERCRGF0YWJhc2VEaXJlY3RvcnkgPSBXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjpsZWdhY3lQ
bGF0Zm9ybURlZmF1bHRJbmRleGVkREJEYXRhYmFzZURpcmVjdG9yeSgpOwpAQCAtNzcsNiArNzks
NyBAQCBSZWY8UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uPiBQcm9jZXNzUG9vbENvbmZpZ3VyYXRp
b246OmNyZWF0ZVdpdGhXZWJzaXRlRGF0YVN0bwogUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uOjpQ
cm9jZXNzUG9vbENvbmZpZ3VyYXRpb24oKQogICAgIDogbV9hcHBsaWNhdGlvbkNhY2hlRGlyZWN0
b3J5KFdlYnNpdGVEYXRhU3RvcmU6OmRlZmF1bHRBcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KCkp
CiAgICAgLCBtX2FwcGxpY2F0aW9uQ2FjaGVGbGF0RmlsZVN1YmRpcmVjdG9yeU5hbWUoIkZpbGVz
IikKKyAgICAsIG1fY2FjaGVTdG9yYWdlRGlyZWN0b3J5KFdlYnNpdGVEYXRhU3RvcmU6OmRlZmF1
bHRDYWNoZVN0b3JhZ2VEaXJlY3RvcnkoKSkKICAgICAsIG1fZGlza0NhY2hlRGlyZWN0b3J5KFdl
YnNpdGVEYXRhU3RvcmU6OmRlZmF1bHROZXR3b3JrQ2FjaGVEaXJlY3RvcnkoKSkKICAgICAsIG1f
bWVkaWFDYWNoZURpcmVjdG9yeShXZWJzaXRlRGF0YVN0b3JlOjpkZWZhdWx0TWVkaWFDYWNoZURp
cmVjdG9yeSgpKQogICAgICwgbV9pbmRleGVkREJEYXRhYmFzZURpcmVjdG9yeShXZWJzaXRlRGF0
YVN0b3JlOjpkZWZhdWx0SW5kZXhlZERCRGF0YWJhc2VEaXJlY3RvcnkoKSkKQEAgLTEwMyw2ICsx
MDYsNyBAQCBSZWY8UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uPiBQcm9jZXNzUG9vbENvbmZpZ3Vy
YXRpb246OmNvcHkoKQogICAgIGNvcHktPm1fZGlza0NhY2hlU2l6ZU92ZXJyaWRlID0gdGhpcy0+
bV9kaXNrQ2FjaGVTaXplT3ZlcnJpZGU7CiAgICAgY29weS0+bV9hcHBsaWNhdGlvbkNhY2hlRGly
ZWN0b3J5ID0gdGhpcy0+bV9hcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5OwogICAgIGNvcHktPm1f
YXBwbGljYXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZSA9IHRoaXMtPm1fYXBwbGlj
YXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZTsKKyAgICBjb3B5LT5tX2NhY2hlU3Rv
cmFnZURpcmVjdG9yeSA9IHRoaXMtPm1fY2FjaGVTdG9yYWdlRGlyZWN0b3J5OwogICAgIGNvcHkt
Pm1fZGlza0NhY2hlRGlyZWN0b3J5ID0gdGhpcy0+bV9kaXNrQ2FjaGVEaXJlY3Rvcnk7CiAgICAg
Y29weS0+bV9tZWRpYUNhY2hlRGlyZWN0b3J5ID0gdGhpcy0+bV9tZWRpYUNhY2hlRGlyZWN0b3J5
OwogICAgIGNvcHktPm1faW5kZXhlZERCRGF0YWJhc2VEaXJlY3RvcnkgPSB0aGlzLT5tX2luZGV4
ZWREQkRhdGFiYXNlRGlyZWN0b3J5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQVBJL0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5oIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQVBJL0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5oCmluZGV4IGE1Yjg2YjZjZTA1
ZDQ1ZjUzMDJhNzkzNzZlMmQzZDBlMmY2YmQwNTYuLjk1NDQ4NDc5M2I0NWYxMzJlNWRjNmNjMzk5
MDVmNDdmYzcwMzI4N2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9B
UElQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmgKQEAgLTY4LDYgKzY4LDkgQEAgcHVi
bGljOgogCiAgICAgY29uc3QgV1RGOjpTdHJpbmcmIGFwcGxpY2F0aW9uQ2FjaGVGbGF0RmlsZVN1
YmRpcmVjdG9yeU5hbWUoKSBjb25zdCB7IHJldHVybiBtX2FwcGxpY2F0aW9uQ2FjaGVGbGF0Rmls
ZVN1YmRpcmVjdG9yeU5hbWU7IH0KIAorICAgIGNvbnN0IFdURjo6U3RyaW5nJiBjYWNoZVN0b3Jh
Z2VEaXJlY3RvcnkoKSBjb25zdCB7IHJldHVybiBtX2NhY2hlU3RvcmFnZURpcmVjdG9yeTsgfQor
ICAgIHZvaWQgc2V0Q2FjaGVTdG9yYWdlRGlyZWN0b3J5KFdURjo6U3RyaW5nJiYgY2FjaGVTdG9y
YWdlRGlyZWN0b3J5KSB7IG1fY2FjaGVTdG9yYWdlRGlyZWN0b3J5ID0gV1RGTW92ZShjYWNoZVN0
b3JhZ2VEaXJlY3RvcnkpOyB9CisKICAgICBjb25zdCBXVEY6OlN0cmluZyYgZGlza0NhY2hlRGly
ZWN0b3J5KCkgY29uc3QgeyByZXR1cm4gbV9kaXNrQ2FjaGVEaXJlY3Rvcnk7IH0KICAgICB2b2lk
IHNldERpc2tDYWNoZURpcmVjdG9yeShjb25zdCBXVEY6OlN0cmluZyYgZGlza0NhY2hlRGlyZWN0
b3J5KSB7IG1fZGlza0NhY2hlRGlyZWN0b3J5ID0gZGlza0NhY2hlRGlyZWN0b3J5OyB9CiAKQEAg
LTE0OSw2ICsxNTIsNyBAQCBwcml2YXRlOgogCiAgICAgV1RGOjpTdHJpbmcgbV9hcHBsaWNhdGlv
bkNhY2hlRGlyZWN0b3J5OwogICAgIFdURjo6U3RyaW5nIG1fYXBwbGljYXRpb25DYWNoZUZsYXRG
aWxlU3ViZGlyZWN0b3J5TmFtZTsKKyAgICBXVEY6OlN0cmluZyBtX2NhY2hlU3RvcmFnZURpcmVj
dG9yeTsKICAgICBXVEY6OlN0cmluZyBtX2Rpc2tDYWNoZURpcmVjdG9yeTsKICAgICBXVEY6OlN0
cmluZyBtX21lZGlhQ2FjaGVEaXJlY3Rvcnk7CiAgICAgV1RGOjpTdHJpbmcgbV9pbmRleGVkREJE
YXRhYmFzZURpcmVjdG9yeTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQ
SS9BUElXZWJzaXRlRGF0YVN0b3JlLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJ
V2Vic2l0ZURhdGFTdG9yZS5oCmluZGV4IGE0ZDJjMzdkZjc0YzIzNTgyZDZkMTQ1YWIyOGFkOGVk
ZDRlNjQzMGQuLjIyYzMyZDcxOWVjNjM0MmM5YzczYmIyN2I2MTA0ZGI3ZTQ0NzExZjkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElXZWJzaXRlRGF0YVN0b3JlLmgK
KysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVdlYnNpdGVEYXRhU3RvcmUuaApA
QCAtNTEsNiArNTEsNyBAQCBwdWJsaWM6CiAgICAgSFRUUENvb2tpZVN0b3JlJiBodHRwQ29va2ll
U3RvcmUoKTsKIAogICAgIHN0YXRpYyBTdHJpbmcgZGVmYXVsdEFwcGxpY2F0aW9uQ2FjaGVEaXJl
Y3RvcnkoKTsKKyAgICBzdGF0aWMgU3RyaW5nIGRlZmF1bHRDYWNoZVN0b3JhZ2VEaXJlY3Rvcnko
KTsKICAgICBzdGF0aWMgU3RyaW5nIGRlZmF1bHROZXR3b3JrQ2FjaGVEaXJlY3RvcnkoKTsKICAg
ICBzdGF0aWMgU3RyaW5nIGRlZmF1bHRNZWRpYUNhY2hlRGlyZWN0b3J5KCk7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dENvbmZpZ3VyYXRpb25S
ZWYuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0Q29uZmlndXJh
dGlvblJlZi5jcHAKaW5kZXggOGFjODFkZDYzNDFhNTcwNGYyZjg2ZWMyNjIwZDhhYmU2NGI5M2E3
Zi4uYTUwOWJmNzMzOWZjMDQxNzFiMTgwODAzNDBhMjk4MjcwZTA4ZGUwYiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0Q29uZmlndXJhdGlvblJlZi5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0Q29uZmlndXJh
dGlvblJlZi5jcHAKQEAgLTU4LDYgKzU4LDE2IEBAIHZvaWQgV0tDb250ZXh0Q29uZmlndXJhdGlv
blNldERpc2tDYWNoZURpcmVjdG9yeShXS0NvbnRleHRDb25maWd1cmF0aW9uUmVmIGNvbmZpCiAg
ICAgdG9JbXBsKGNvbmZpZ3VyYXRpb24pLT5zZXREaXNrQ2FjaGVEaXJlY3RvcnkodG9JbXBsKGRp
c2tDYWNoZURpcmVjdG9yeSktPnN0cmluZygpKTsKIH0KIAorV0tTdHJpbmdSZWYgV0tDb250ZXh0
Q29uZmlndXJhdGlvbkNvcHlDYWNoZVN0b3JhZ2VEaXJlY3RvcnkoV0tDb250ZXh0Q29uZmlndXJh
dGlvblJlZiBjb25maWd1cmF0aW9uKQoreworICAgIHJldHVybiB0b0NvcGllZEFQSSh0b0ltcGwo
Y29uZmlndXJhdGlvbiktPmNhY2hlU3RvcmFnZURpcmVjdG9yeSgpKTsKK30KKwordm9pZCBXS0Nv
bnRleHRDb25maWd1cmF0aW9uU2V0Q2FjaGVTdG9yYWdlRGlyZWN0b3J5KFdLQ29udGV4dENvbmZp
Z3VyYXRpb25SZWYgY29uZmlndXJhdGlvbiwgV0tTdHJpbmdSZWYgY2FjaGVTdG9yYWdlRGlyZWN0
b3J5KQoreworICAgIHRvSW1wbChjb25maWd1cmF0aW9uKS0+c2V0Q2FjaGVTdG9yYWdlRGlyZWN0
b3J5KHRvSW1wbChjYWNoZVN0b3JhZ2VEaXJlY3RvcnkpLT5zdHJpbmcoKSk7Cit9CisKIFdLU3Ry
aW5nUmVmIFdLQ29udGV4dENvbmZpZ3VyYXRpb25Db3B5QXBwbGljYXRpb25DYWNoZURpcmVjdG9y
eShXS0NvbnRleHRDb25maWd1cmF0aW9uUmVmIGNvbmZpZ3VyYXRpb24pCiB7CiAgICAgcmV0dXJu
IHRvQ29waWVkQVBJKHRvSW1wbChjb25maWd1cmF0aW9uKS0+YXBwbGljYXRpb25DYWNoZURpcmVj
dG9yeSgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29u
dGV4dENvbmZpZ3VyYXRpb25SZWYuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dL
Q29udGV4dENvbmZpZ3VyYXRpb25SZWYuaAppbmRleCBkNjliYjg1Mjk2NzYxYmVmMjVmNWYwZDMx
NzliYTEzYzQwMjczNDI5Li5hYTAxMDE2ZTUwYzQwMzZkMzZlNjFhNzQyMjFjMDUyOGNkMThlY2Q4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRDb25m
aWd1cmF0aW9uUmVmLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tDb250
ZXh0Q29uZmlndXJhdGlvblJlZi5oCkBAIC0zOCw2ICszOCw5IEBAIFdLX0VYUE9SVCBXS0NvbnRl
eHRDb25maWd1cmF0aW9uUmVmIFdLQ29udGV4dENvbmZpZ3VyYXRpb25DcmVhdGVXaXRoTGVnYWN5
T3B0aW9uCiBXS19FWFBPUlQgV0tTdHJpbmdSZWYgV0tDb250ZXh0Q29uZmlndXJhdGlvbkNvcHlB
cHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KFdLQ29udGV4dENvbmZpZ3VyYXRpb25SZWYgY29uZmln
dXJhdGlvbik7CiBXS19FWFBPUlQgdm9pZCBXS0NvbnRleHRDb25maWd1cmF0aW9uU2V0QXBwbGlj
YXRpb25DYWNoZURpcmVjdG9yeShXS0NvbnRleHRDb25maWd1cmF0aW9uUmVmIGNvbmZpZ3VyYXRp
b24sIFdLU3RyaW5nUmVmIGFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkpOwogCitXS19FWFBPUlQg
V0tTdHJpbmdSZWYgV0tDb250ZXh0Q29uZmlndXJhdGlvbkNvcHlDYWNoZVN0b3JhZ2VEaXJlY3Rv
cnkoV0tDb250ZXh0Q29uZmlndXJhdGlvblJlZiBjb25maWd1cmF0aW9uKTsKK1dLX0VYUE9SVCB2
b2lkIFdLQ29udGV4dENvbmZpZ3VyYXRpb25TZXRDYWNoZVN0b3JhZ2VEaXJlY3RvcnkoV0tDb250
ZXh0Q29uZmlndXJhdGlvblJlZiBjb25maWd1cmF0aW9uLCBXS1N0cmluZ1JlZiBjYWNoZVN0b3Jh
Z2VEaXJlY3RvcnkpOworCiBXS19FWFBPUlQgV0tTdHJpbmdSZWYgV0tDb250ZXh0Q29uZmlndXJh
dGlvbkNvcHlEaXNrQ2FjaGVEaXJlY3RvcnkoV0tDb250ZXh0Q29uZmlndXJhdGlvblJlZiBjb25m
aWd1cmF0aW9uKTsKIFdLX0VYUE9SVCB2b2lkIFdLQ29udGV4dENvbmZpZ3VyYXRpb25TZXREaXNr
Q2FjaGVEaXJlY3RvcnkoV0tDb250ZXh0Q29uZmlndXJhdGlvblJlZiBjb25maWd1cmF0aW9uLCBX
S1N0cmluZ1JlZiBkaXNrQ2FjaGVEaXJlY3RvcnkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvQVBJV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL0FQSVdlYnNpdGVEYXRhU3RvcmVDb2NvYS5t
bQppbmRleCBmZWFjMTRjNTg1Y2RlOTczODIyN2YyMGQwMTA1YjA2MGY5OGY2NzY1Li5mZmQwNWRl
NmE5ODgyMzJhMGI5YjVhY2ExNzlkOTg0YWEyNWY3NzIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvQVBJV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9BUElXZWJzaXRlRGF0YVN0b3JlQ29j
b2EubW0KQEAgLTUyLDYgKzUyLDExIEBAIFN0cmluZyBXZWJzaXRlRGF0YVN0b3JlOjpkZWZhdWx0
QXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSgpCiAgICAgcmV0dXJuIGNhY2hlRGlyZWN0b3J5Rmls
ZVN5c3RlbVJlcHJlc2VudGF0aW9uKCJPZmZsaW5lV2ViQXBwbGljYXRpb25DYWNoZSIpOwogfQog
CitTdHJpbmcgV2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdENhY2hlU3RvcmFnZURpcmVjdG9yeSgp
Cit7CisgICAgcmV0dXJuIGNhY2hlRGlyZWN0b3J5RmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uKCJD
YWNoZVN0b3JhZ2UiKTsKK30KKwogU3RyaW5nIFdlYnNpdGVEYXRhU3RvcmU6OmRlZmF1bHROZXR3
b3JrQ2FjaGVEaXJlY3RvcnkoKQogewogICAgIHJldHVybiBjYWNoZURpcmVjdG9yeUZpbGVTeXN0
ZW1SZXByZXNlbnRhdGlvbigiTmV0d29ya0NhY2hlIik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQcm9jZXNzUG9vbENvY29hLm1tIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQ29jb2EvV2ViUHJvY2Vzc1Bvb2xDb2NvYS5tbQppbmRleCA1M2Y2N2EwYmUy
NjY5YjBlODgwNGE4MGZiZjhiZDFmM2I1ODI4NTMwLi4yZjRiMjI4ZjE2OGI2MjdiMThjMDNlMjM0
NDEwMmI2ZTgzYTNlOGE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9XZWJQcm9jZXNzUG9vbENvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0Nv
Y29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW0KQEAgLTQ1Miw2ICs0NTIsMTUgQEAgU3RyaW5nIFdl
YlByb2Nlc3NQb29sOjpsZWdhY3lQbGF0Zm9ybURlZmF1bHRBcHBsaWNhdGlvbkNhY2hlRGlyZWN0
b3J5KCkKICAgICByZXR1cm4gc3RyaW5nQnlSZXNvbHZpbmdTeW1saW5rc0luUGF0aChbY2FjaGVQ
YXRoIHN0cmluZ0J5U3RhbmRhcmRpemluZ1BhdGhdKTsKIH0KIAorU3RyaW5nIFdlYlByb2Nlc3NQ
b29sOjpsZWdhY3lQbGF0Zm9ybURlZmF1bHRDYWNoZVN0b3JhZ2VEaXJlY3RvcnkoKQoreworICAg
IFJldGFpblB0cjxOU1N0cmluZz4gY2FjaGVTdG9yYWdlUGF0aCA9IGFkb3B0TlMoKE5TU3RyaW5n
ICopV0tDb3B5Rm91bmRhdGlvbkNhY2hlRGlyZWN0b3J5KCkpOworICAgIGlmICghY2FjaGVTdG9y
YWdlUGF0aCkKKyAgICAgICAgY2FjaGVTdG9yYWdlUGF0aCA9IEAifi9MaWJyYXJ5L1dlYktpdC9D
YWNoZVN0b3JhZ2UiOworCisgICAgcmV0dXJuIHN0cmluZ0J5UmVzb2x2aW5nU3ltbGlua3NJblBh
dGgoW2NhY2hlU3RvcmFnZVBhdGggc3RyaW5nQnlTdGFuZGFyZGl6aW5nUGF0aF0pOworfQorCiBT
dHJpbmcgV2ViUHJvY2Vzc1Bvb2w6OmxlZ2FjeVBsYXRmb3JtRGVmYXVsdE5ldHdvcmtDYWNoZURp
cmVjdG9yeSgpCiB7CiAgICAgUmV0YWluUHRyPE5TU3RyaW5nPiBjYWNoZVBhdGggPSBhZG9wdE5T
KChOU1N0cmluZyAqKVdLQ29weUZvdW5kYXRpb25DYWNoZURpcmVjdG9yeSgpKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAppbmRleCA5MWIwMDU2ZTE2ZTYzODBi
ZDM3ZTc3YTAyNjY4ZmY2MmViZjRmOTI3Li5kYmQwNjlmZTU5MWM3MDQxM2IyOGE3NWQyNGJkZjc4
ZjA4MmQ2NmU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNz
UG9vbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3Bw
CkBAIC0xOTcsNiArMTk3LDcgQEAgc3RhdGljIFdlYnNpdGVEYXRhU3RvcmU6OkNvbmZpZ3VyYXRp
b24gbGVnYWN5V2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb24oQVBJOjoKICAgICBjb25maWd1
cmF0aW9uLm1lZGlhQ2FjaGVEaXJlY3RvcnkgPSBwcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24ubWVk
aWFDYWNoZURpcmVjdG9yeSgpOwogICAgIGNvbmZpZ3VyYXRpb24ubWVkaWFLZXlzU3RvcmFnZURp
cmVjdG9yeSA9IHByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5tZWRpYUtleXNTdG9yYWdlRGlyZWN0
b3J5KCk7CiAgICAgY29uZmlndXJhdGlvbi5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGlyZWN0b3J5
ID0gcHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLnJlc291cmNlTG9hZFN0YXRpc3RpY3NEaXJlY3Rv
cnkoKTsKKyAgICBjb25maWd1cmF0aW9uLmNhY2hlU3RvcmFnZURpcmVjdG9yeSA9IHByb2Nlc3NQ
b29sQ29uZmlndXJhdGlvbi5jYWNoZVN0b3JhZ2VEaXJlY3RvcnkoKTsKICAgICBjb25maWd1cmF0
aW9uLm5ldHdvcmtDYWNoZURpcmVjdG9yeSA9IHByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5kaXNr
Q2FjaGVEaXJlY3RvcnkoKTsKICAgICBjb25maWd1cmF0aW9uLmphdmFTY3JpcHRDb25maWd1cmF0
aW9uRGlyZWN0b3J5ID0gcHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmphdmFTY3JpcHRDb25maWd1
cmF0aW9uRGlyZWN0b3J5KCk7CiAKQEAgLTQyOCw2ICs0MjksMTAgQEAgTmV0d29ya1Byb2Nlc3NQ
cm94eSYgV2ViUHJvY2Vzc1Bvb2w6OmVuc3VyZU5ldHdvcmtQcm9jZXNzKFdlYnNpdGVEYXRhU3Rv
cmUqIHdpdGgKICAgICBmb3IgKGF1dG8mIHNjaGVtZSA6IG1fdXJsU2NoZW1lc1JlZ2lzdGVyZWRG
b3JDdXN0b21Qcm90b2NvbHMpCiAgICAgICAgIHBhcmFtZXRlcnMudXJsU2NoZW1lc1JlZ2lzdGVy
ZWRGb3JDdXN0b21Qcm90b2NvbHMuYXBwZW5kKHNjaGVtZSk7CiAKKyAgICBwYXJhbWV0ZXJzLmNh
Y2hlU3RvcmFnZURpcmVjdG9yeSA9IG1fY29uZmlndXJhdGlvbi0+Y2FjaGVTdG9yYWdlRGlyZWN0
b3J5KCk7CisgICAgaWYgKCFwYXJhbWV0ZXJzLmNhY2hlU3RvcmFnZURpcmVjdG9yeS5pc0VtcHR5
KCkpCisgICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvclJlYWRXcml0ZURp
cmVjdG9yeShwYXJhbWV0ZXJzLmNhY2hlU3RvcmFnZURpcmVjdG9yeSwgcGFyYW1ldGVycy5jYWNo
ZVN0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpOworCiAgICAgcGFyYW1ldGVycy5kaXNr
Q2FjaGVEaXJlY3RvcnkgPSBtX2NvbmZpZ3VyYXRpb24tPmRpc2tDYWNoZURpcmVjdG9yeSgpOwog
ICAgIGlmICghcGFyYW1ldGVycy5kaXNrQ2FjaGVEaXJlY3RvcnkuaXNFbXB0eSgpKQogICAgICAg
ICBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JSZWFkV3JpdGVEaXJlY3RvcnkocGFy
YW1ldGVycy5kaXNrQ2FjaGVEaXJlY3RvcnksIHBhcmFtZXRlcnMuZGlza0NhY2hlRGlyZWN0b3J5
RXh0ZW5zaW9uSGFuZGxlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YlByb2Nlc3NQb29sLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5o
CmluZGV4IGUyODdmMzU2NGYwODg4MmIyYmNkMDM5MjgyMzQyZjQ4MDQxNTdkN2QuLjQ1Y2I4OGZl
NjY5NWFhNGUyMzk4NjYyYjExNDAxNDc5NjVmNDExNjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViUHJvY2Vzc1Bvb2wuaApAQCAtMzgyLDYgKzM4Miw3IEBAIHB1YmxpYzoKICAgICBzdGF0
aWMgU3RyaW5nIGxlZ2FjeVBsYXRmb3JtRGVmYXVsdE1lZGlhS2V5c1N0b3JhZ2VEaXJlY3Rvcnko
KTsKICAgICBzdGF0aWMgU3RyaW5nIGxlZ2FjeVBsYXRmb3JtRGVmYXVsdE1lZGlhQ2FjaGVEaXJl
Y3RvcnkoKTsKICAgICBzdGF0aWMgU3RyaW5nIGxlZ2FjeVBsYXRmb3JtRGVmYXVsdEFwcGxpY2F0
aW9uQ2FjaGVEaXJlY3RvcnkoKTsKKyAgICBzdGF0aWMgU3RyaW5nIGxlZ2FjeVBsYXRmb3JtRGVm
YXVsdENhY2hlU3RvcmFnZURpcmVjdG9yeSgpOwogICAgIHN0YXRpYyBTdHJpbmcgbGVnYWN5UGxh
dGZvcm1EZWZhdWx0TmV0d29ya0NhY2hlRGlyZWN0b3J5KCk7CiAgICAgc3RhdGljIFN0cmluZyBs
ZWdhY3lQbGF0Zm9ybURlZmF1bHRKYXZhU2NyaXB0Q29uZmlndXJhdGlvbkRpcmVjdG9yeSgpOwog
ICAgIHN0YXRpYyBib29sIGlzTmV0d29ya0NhY2hlRW5hYmxlZCgpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oCmluZGV4
IDgxYTNlNzYxZTJiYjVkNzIzOGE1MTEyNGFkZmIyMDUyMzQ3MmRmMzguLmU2NDI5YTdmYjFkMWQ4
ZjE4NjJhNmZiOGU5MzVmYzBmMDUwZjk1ZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmgKQEAgLTY3LDYgKzY3LDcg
QEAgZW51bSBjbGFzcyBTaG91bGRDbGVhckZpcnN0IHsgTm8sIFllcyB9OwogY2xhc3MgV2Vic2l0
ZURhdGFTdG9yZSA6IHB1YmxpYyBSZWZDb3VudGVkPFdlYnNpdGVEYXRhU3RvcmU+LCBwdWJsaWMg
V2ViUHJvY2Vzc0xpZmV0aW1lT2JzZXJ2ZXIgewogcHVibGljOgogICAgIHN0cnVjdCBDb25maWd1
cmF0aW9uIHsKKyAgICAgICAgU3RyaW5nIGNhY2hlU3RvcmFnZURpcmVjdG9yeTsKICAgICAgICAg
U3RyaW5nIG5ldHdvcmtDYWNoZURpcmVjdG9yeTsKICAgICAgICAgU3RyaW5nIGFwcGxpY2F0aW9u
Q2FjaGVEaXJlY3Rvcnk7CiAgICAgICAgIFN0cmluZyBhcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVT
dWJkaXJlY3RvcnlOYW1lOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>318874</attachid>
            <date>2017-08-23 09:01:39 -0700</date>
            <delta_ts>2017-08-24 17:01:22 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-175884-20170823090138.patch</filename>
            <type>text/plain</type>
            <size>19217</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIxMDc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDRiMGUxNWUyNjEwZjEwZDE3
NTU2MTk1NWM5YzNlMzY2MTUyMTRmZWYuLmZiYWYxZTcxMGIzZDE3NmY3NGNiZDE5OWIxYjgwZDlh
MGMzNmRlYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDIgQEAKKzIwMTctMDgtMjMgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIFtDYWNoZSBBUEldIFVJUHJvY2Vz
cyBzaG91bGQgcHJvdmlkZSB0aGUgZGlyZWN0b3J5IHBhdGggd2hlcmUgdG8gc3RvcmUgQ2FjaGUg
U3RvcmFnZSBkYXRhCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNzU4ODQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBBZGRpbmcgQVBJIHRvIHNldCB0aGUgY2FjaGUgc3RvcmFnZSBkaXJlY3RvcnkgcGF0aC4K
KyAgICAgICAgVXBkYXRpbmcgSVBDIHRvIHBhc3MgdGhpcyBwYXJhbWV0ZXIgd2l0aCBpdHMgc2Fu
ZGJveCBleHRlbnNpb24gdG8gTmV0d29ya1Byb2Nlc3MgYXQgY3JlYXRpb24gdGltZS4KKworICAg
ICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmg6CisgICAgICAgIChXZWJLaXQ6
Ok5ldHdvcmtQcm9jZXNzOjpjYWNoZVN0b3JhZ2VEaXJlY3RvcnkgY29uc3QpOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmVuY29kZSBj
b25zdCk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJz
OjpkZWNvZGUpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1By
b2Nlc3NDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OnBsYXRmb3Jt
SW5pdGlhbGl6ZU5ldHdvcmtQcm9jZXNzQ29jb2EpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkv
QVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmNwcDoKKyAgICAgICAgKEFQSTo6UHJvY2Vzc1Bv
b2xDb25maWd1cmF0aW9uOjpjcmVhdGVXaXRoTGVnYWN5T3B0aW9ucyk6CisgICAgICAgIChBUEk6
OlByb2Nlc3NQb29sQ29uZmlndXJhdGlvbjo6Y3JlYXRlV2l0aFdlYnNpdGVEYXRhU3RvcmVDb25m
aWd1cmF0aW9uKToKKyAgICAgICAgKEFQSTo6UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uOjpQcm9j
ZXNzUG9vbENvbmZpZ3VyYXRpb24pOgorICAgICAgICAoQVBJOjpQcm9jZXNzUG9vbENvbmZpZ3Vy
YXRpb246OmNvcHkpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25m
aWd1cmF0aW9uLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9BUElXZWJzaXRlRGF0YVN0b3Jl
Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dENvbmZpZ3VyYXRpb25SZWYu
Y3BwOgorICAgICAgICAoV0tDb250ZXh0Q29uZmlndXJhdGlvbkNvcHlDYWNoZVN0b3JhZ2VEaXJl
Y3RvcnkpOgorICAgICAgICAoV0tDb250ZXh0Q29uZmlndXJhdGlvblNldENhY2hlU3RvcmFnZURp
cmVjdG9yeSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dENvbmZpZ3VyYXRp
b25SZWYuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL0FQSVdlYnNpdGVEYXRhU3Rv
cmVDb2NvYS5tbToKKyAgICAgICAgKEFQSTo6V2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdENhY2hl
U3RvcmFnZURpcmVjdG9yeSk6CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQ
b29sQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjpsZWdhY3lQbGF0
Zm9ybURlZmF1bHRDYWNoZVN0b3JhZ2VEaXJlY3RvcnkpOgorICAgICAgICAqIFVJUHJvY2Vzcy9X
ZWJQcm9jZXNzUG9vbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OmxlZ2FjeVdlYnNpdGVEYXRhU3Rv
cmVDb25maWd1cmF0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmVuc3Vy
ZU5ldHdvcmtQcm9jZXNzKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaDoK
KyAgICAgICAgKiBVSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oOgorCiAy
MDE3LTA4LTIyICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgogCiAgICAg
ICAgIF9XS1RodW1ibmFpbFZpZXcgc2hvdWxkIHVzZSB0aGUgc2NyZWVuIGNvbG9yIHNwYWNlIGlu
c3RlYWQgb2Ygc1JHQgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrUHJvY2Vzcy5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJv
Y2Vzcy5oCmluZGV4IDQ5Yjg2NmJiOWIwMGRkNzBlOWE5YTg5MzRmY2NhZjlkYzNjNmE2YWYuLjUw
NmY0OTI1NWUxMjFmN2U2NWU5ZGJjZWRmMzcwZTJhMWFjNzIxOGEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmgKQEAgLTEzNCw2ICsxMzQsNyBAQCBw
dWJsaWM6CiAjZW5kaWYKIAogICAgIFNlY29uZHMgbG9hZFRocm90dGxlTGF0ZW5jeSgpIGNvbnN0
IHsgcmV0dXJuIG1fbG9hZFRocm90dGxlTGF0ZW5jeTsgfQorICAgIGNvbnN0IFN0cmluZyYgY2Fj
aGVTdG9yYWdlRGlyZWN0b3J5KCkgY29uc3QgeyByZXR1cm4gbV9jYWNoZVN0b3JhZ2VEaXJlY3Rv
cnk7IH0KIAogcHJpdmF0ZToKICAgICBOZXR3b3JrUHJvY2VzcygpOwpAQCAtMjIzLDYgKzIyNCw3
IEBAIHByaXZhdGU6CiAgICAgLy8gQ29ubmVjdGlvbnMgdG8gV2ViUHJvY2Vzc2VzLgogICAgIFZl
Y3RvcjxSZWZQdHI8TmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3M+PiBtX3dlYlByb2Nlc3ND
b25uZWN0aW9uczsKIAorICAgIFN0cmluZyBtX2NhY2hlU3RvcmFnZURpcmVjdG9yeTsKICAgICBT
dHJpbmcgbV9kaXNrQ2FjaGVEaXJlY3Rvcnk7CiAgICAgYm9vbCBtX2hhc1NldENhY2hlTW9kZWw7
CiAgICAgQ2FjaGVNb2RlbCBtX2NhY2hlTW9kZWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRl
cnMuY3BwCmluZGV4IGZlZjVjOTdlOTc5ZjA2OGZlYzJhYWQ2OGE4ZmY1ODc5MThlMTc3NWIuLjY3
OGQ2Y2Y3YjE2OTkxOGIxZDcwZjE2NzJlMmZiNzk5ZjkxYTNiMmEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVh
dGlvblBhcmFtZXRlcnMuY3BwCkBAIC00NSw2ICs0NSw4IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3ND
cmVhdGlvblBhcmFtZXRlcnM6OmVuY29kZShJUEM6OkVuY29kZXImIGVuY29kZXIpIGNvbnN0CiAg
ICAgZW5jb2Rlci5lbmNvZGVFbnVtKGNhY2hlTW9kZWwpOwogICAgIGVuY29kZXIgPDwgZGlza0Nh
Y2hlU2l6ZU92ZXJyaWRlOwogICAgIGVuY29kZXIgPDwgY2FuSGFuZGxlSFRUUFNTZXJ2ZXJUcnVz
dEV2YWx1YXRpb247CisgICAgZW5jb2RlciA8PCBjYWNoZVN0b3JhZ2VEaXJlY3Rvcnk7CisgICAg
ZW5jb2RlciA8PCBjYWNoZVN0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7CiAgICAgZW5j
b2RlciA8PCBkaXNrQ2FjaGVEaXJlY3Rvcnk7CiAgICAgZW5jb2RlciA8PCBkaXNrQ2FjaGVEaXJl
Y3RvcnlFeHRlbnNpb25IYW5kbGU7CiAjaWYgRU5BQkxFKE5FVFdPUktfQ0FDSEUpCkBAIC0xMTIs
NiArMTE0LDEwIEBAIGJvb2wgTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmRlY29k
ZShJUEM6OkRlY29kZXImIGRlY29kZXIsIE5ldHdvcmtQcm9jCiAgICAgICAgIHJldHVybiBmYWxz
ZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5jYW5IYW5kbGVIVFRQU1NlcnZlclRy
dXN0RXZhbHVhdGlvbikpCiAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBpZiAoIWRlY29kZXIu
ZGVjb2RlKHJlc3VsdC5jYWNoZVN0b3JhZ2VEaXJlY3RvcnkpKQorICAgICAgICByZXR1cm4gZmFs
c2U7CisgICAgaWYgKCFkZWNvZGVyLmRlY29kZShyZXN1bHQuY2FjaGVTdG9yYWdlRGlyZWN0b3J5
RXh0ZW5zaW9uSGFuZGxlKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGlmICghZGVjb2Rl
ci5kZWNvZGUocmVzdWx0LmRpc2tDYWNoZURpcmVjdG9yeSkpCiAgICAgICAgIHJldHVybiBmYWxz
ZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5kaXNrQ2FjaGVEaXJlY3RvcnlFeHRl
bnNpb25IYW5kbGUpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCmluZGV4IGEyMWVhMTJh
OGEwMWM1MmU1ODZjOGJkYjA3NDgzNjQ3MmIyMDQ4NjYuLjFlYjc5Nzk5NjE4YmNlNWE3MmFjNzU2
MTcwNzE4MTI1MDc2YjAyM2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgKQEAgLTU0
LDYgKzU0LDggQEAgc3RydWN0IE5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzIHsKICAg
ICBpbnQ2NF90IGRpc2tDYWNoZVNpemVPdmVycmlkZSB7IC0xIH07CiAgICAgYm9vbCBjYW5IYW5k
bGVIVFRQU1NlcnZlclRydXN0RXZhbHVhdGlvbiB7IHRydWUgfTsKIAorICAgIFN0cmluZyBjYWNo
ZVN0b3JhZ2VEaXJlY3Rvcnk7CisgICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGNhY2hlU3Rv
cmFnZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZTsKICAgICBTdHJpbmcgZGlza0NhY2hlRGlyZWN0
b3J5OwogICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBkaXNrQ2FjaGVEaXJlY3RvcnlFeHRl
bnNpb25IYW5kbGU7CiAjaWYgRU5BQkxFKE5FVFdPUktfQ0FDSEUpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtQcm9jZXNzQ29jb2EubW0gYi9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtQcm9jZXNzQ29jb2EubW0K
aW5kZXggNzU0NWQ1M2VmMDAxZDIwNGFlZjNiMzkzMTEzZTJkZDYzZDliYzdiMi4uOTA3NDg5YmMw
NDg4YmM0YzRmZDU1ZDNmMjY2ZTBhMmY5NzUwYWJkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrUHJvY2Vzc0NvY29hLm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Byb2Nlc3NDb2NvYS5tbQpAQCAt
NzMsNiArNzMsNyBAQCB2b2lkIE5ldHdvcmtQcm9jZXNzOjpwbGF0Zm9ybUluaXRpYWxpemVOZXR3
b3JrUHJvY2Vzc0NvY29hKGNvbnN0IE5ldHdvcmtQcm9jZXNzQwogICAgIFNhbmRib3hFeHRlbnNp
b246OmNvbnN1bWVQZXJtYW5lbnRseShwYXJhbWV0ZXJzLmNvbnRhaW5lckNhY2hlc0RpcmVjdG9y
eUV4dGVuc2lvbkhhbmRsZSk7CiAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVu
dGx5KHBhcmFtZXRlcnMucGFyZW50QnVuZGxlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKICNl
bmRpZgorICAgIG1fY2FjaGVTdG9yYWdlRGlyZWN0b3J5ID0gcGFyYW1ldGVycy5jYWNoZVN0b3Jh
Z2VEaXJlY3Rvcnk7CiAgICAgbV9kaXNrQ2FjaGVEaXJlY3RvcnkgPSBwYXJhbWV0ZXJzLmRpc2tD
YWNoZURpcmVjdG9yeTsKIAogICAgIF9DRk5ldHdvcmtTZXRBVFNDb250ZXh0KHBhcmFtZXRlcnMu
bmV0d29ya0FUU0NvbnRleHQuZ2V0KCkpOwpAQCAtMTA1LDYgKzEwNiw5IEBAIHZvaWQgTmV0d29y
a1Byb2Nlc3M6OnBsYXRmb3JtSW5pdGlhbGl6ZU5ldHdvcmtQcm9jZXNzQ29jb2EoY29uc3QgTmV0
d29ya1Byb2Nlc3NDCiAKICAgICBBU1NFUlQoIW1fZGlza0NhY2hlSXNEaXNhYmxlZEZvclRlc3Rp
bmcgfHwgIXBhcmFtZXRlcnMubnNVUkxDYWNoZURpc2tDYXBhY2l0eSk7CiAKKyAgICBpZiAoIW1f
Y2FjaGVTdG9yYWdlRGlyZWN0b3J5LmlzTnVsbCgpKQorICAgICAgICBTYW5kYm94RXh0ZW5zaW9u
Ojpjb25zdW1lUGVybWFuZW50bHkocGFyYW1ldGVycy5jYWNoZVN0b3JhZ2VEaXJlY3RvcnlFeHRl
bnNpb25IYW5kbGUpOworCiAgICAgaWYgKCFtX2Rpc2tDYWNoZURpcmVjdG9yeS5pc051bGwoKSkg
ewogICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkocGFyYW1ldGVy
cy5kaXNrQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpOwogI2lmIEVOQUJMRShORVRXT1JL
X0NBQ0hFKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVByb2Nl
c3NQb29sQ29uZmlndXJhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJ
UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmNwcAppbmRleCAxZmRlMDE0YzdiMTljZjhiZDAxYjI5
ZDNkOTdlNTUzNGYzYjFhMjk4Li44ODdmNTk1ZmYzOTg1Zjg1OWYwYzA4MzllOTlmNWYxMWFkZWVm
NGY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bv
b2xDb25maWd1cmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJ
UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmNwcApAQCAtNDYsNiArNDYsOSBAQCBSZWY8UHJvY2Vz
c1Bvb2xDb25maWd1cmF0aW9uPiBQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb246OmNyZWF0ZVdpdGhM
ZWdhY3lPcHRpb25zKAogCiAgICAgY29uZmlndXJhdGlvbi0+bV9hcHBsaWNhdGlvbkNhY2hlRGly
ZWN0b3J5ID0gV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6bGVnYWN5UGxhdGZvcm1EZWZhdWx0QXBw
bGljYXRpb25DYWNoZURpcmVjdG9yeSgpOwogICAgIGNvbmZpZ3VyYXRpb24tPm1fYXBwbGljYXRp
b25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZSA9ICJBcHBsaWNhdGlvbkNhY2hlIjsKKyNp
ZiBQTEFURk9STShDT0NPQSkKKyAgICBjb25maWd1cmF0aW9uLT5tX2NhY2hlU3RvcmFnZURpcmVj
dG9yeSA9IFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmxlZ2FjeVBsYXRmb3JtRGVmYXVsdENhY2hl
U3RvcmFnZURpcmVjdG9yeSgpOworI2VuZGlmCiAgICAgY29uZmlndXJhdGlvbi0+bV9kaXNrQ2Fj
aGVEaXJlY3RvcnkgPSBXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjpsZWdhY3lQbGF0Zm9ybURlZmF1
bHROZXR3b3JrQ2FjaGVEaXJlY3RvcnkoKTsKICAgICBjb25maWd1cmF0aW9uLT5tX21lZGlhQ2Fj
aGVEaXJlY3RvcnkgPSBXZWJLaXQ6OldlYlByb2Nlc3NQb29sOjpsZWdhY3lQbGF0Zm9ybURlZmF1
bHRNZWRpYUNhY2hlRGlyZWN0b3J5KCk7CiAgICAgY29uZmlndXJhdGlvbi0+bV9pbmRleGVkREJE
YXRhYmFzZURpcmVjdG9yeSA9IFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmxlZ2FjeVBsYXRmb3Jt
RGVmYXVsdEluZGV4ZWREQkRhdGFiYXNlRGlyZWN0b3J5KCk7CkBAIC02Myw2ICs2Niw3IEBAIFJl
ZjxQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24+IFByb2Nlc3NQb29sQ29uZmlndXJhdGlvbjo6Y3Jl
YXRlV2l0aFdlYnNpdGVEYXRhU3RvCiAKICAgICBjb25maWd1cmF0aW9uLT5tX2FwcGxpY2F0aW9u
Q2FjaGVEaXJlY3RvcnkgPSBsZWdhY3lDb25maWd1cmF0aW9uLmFwcGxpY2F0aW9uQ2FjaGVEaXJl
Y3Rvcnk7CiAgICAgY29uZmlndXJhdGlvbi0+bV9hcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJk
aXJlY3RvcnlOYW1lID0gbGVnYWN5Q29uZmlndXJhdGlvbi5hcHBsaWNhdGlvbkNhY2hlRmxhdEZp
bGVTdWJkaXJlY3RvcnlOYW1lOworICAgIGNvbmZpZ3VyYXRpb24tPm1fY2FjaGVTdG9yYWdlRGly
ZWN0b3J5ID0gbGVnYWN5Q29uZmlndXJhdGlvbi5jYWNoZVN0b3JhZ2VEaXJlY3Rvcnk7CiAgICAg
Y29uZmlndXJhdGlvbi0+bV9kaXNrQ2FjaGVEaXJlY3RvcnkgPSBsZWdhY3lDb25maWd1cmF0aW9u
Lm5ldHdvcmtDYWNoZURpcmVjdG9yeTsKICAgICBjb25maWd1cmF0aW9uLT5tX21lZGlhQ2FjaGVE
aXJlY3RvcnkgPSBsZWdhY3lDb25maWd1cmF0aW9uLm1lZGlhQ2FjaGVEaXJlY3Rvcnk7CiAgICAg
Y29uZmlndXJhdGlvbi0+bV9pbmRleGVkREJEYXRhYmFzZURpcmVjdG9yeSA9IFdlYktpdDo6V2Vi
UHJvY2Vzc1Bvb2w6OmxlZ2FjeVBsYXRmb3JtRGVmYXVsdEluZGV4ZWREQkRhdGFiYXNlRGlyZWN0
b3J5KCk7CkBAIC03Nyw2ICs4MSw5IEBAIFJlZjxQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24+IFBy
b2Nlc3NQb29sQ29uZmlndXJhdGlvbjo6Y3JlYXRlV2l0aFdlYnNpdGVEYXRhU3RvCiBQcm9jZXNz
UG9vbENvbmZpZ3VyYXRpb246OlByb2Nlc3NQb29sQ29uZmlndXJhdGlvbigpCiAgICAgOiBtX2Fw
cGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkoV2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdEFwcGxpY2F0
aW9uQ2FjaGVEaXJlY3RvcnkoKSkKICAgICAsIG1fYXBwbGljYXRpb25DYWNoZUZsYXRGaWxlU3Vi
ZGlyZWN0b3J5TmFtZSgiRmlsZXMiKQorI2lmIFBMQVRGT1JNKENPQ0EpCisgICAgLCBtX2NhY2hl
U3RvcmFnZURpcmVjdG9yeShXZWJzaXRlRGF0YVN0b3JlOjpkZWZhdWx0Q2FjaGVTdG9yYWdlRGly
ZWN0b3J5KCkpCisjZW5kaWYKICAgICAsIG1fZGlza0NhY2hlRGlyZWN0b3J5KFdlYnNpdGVEYXRh
U3RvcmU6OmRlZmF1bHROZXR3b3JrQ2FjaGVEaXJlY3RvcnkoKSkKICAgICAsIG1fbWVkaWFDYWNo
ZURpcmVjdG9yeShXZWJzaXRlRGF0YVN0b3JlOjpkZWZhdWx0TWVkaWFDYWNoZURpcmVjdG9yeSgp
KQogICAgICwgbV9pbmRleGVkREJEYXRhYmFzZURpcmVjdG9yeShXZWJzaXRlRGF0YVN0b3JlOjpk
ZWZhdWx0SW5kZXhlZERCRGF0YWJhc2VEaXJlY3RvcnkoKSkKQEAgLTEwMyw2ICsxMTAsNyBAQCBS
ZWY8UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uPiBQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb246OmNv
cHkoKQogICAgIGNvcHktPm1fZGlza0NhY2hlU2l6ZU92ZXJyaWRlID0gdGhpcy0+bV9kaXNrQ2Fj
aGVTaXplT3ZlcnJpZGU7CiAgICAgY29weS0+bV9hcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5ID0g
dGhpcy0+bV9hcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5OwogICAgIGNvcHktPm1fYXBwbGljYXRp
b25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZSA9IHRoaXMtPm1fYXBwbGljYXRpb25DYWNo
ZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZTsKKyAgICBjb3B5LT5tX2NhY2hlU3RvcmFnZURpcmVj
dG9yeSA9IHRoaXMtPm1fY2FjaGVTdG9yYWdlRGlyZWN0b3J5OwogICAgIGNvcHktPm1fZGlza0Nh
Y2hlRGlyZWN0b3J5ID0gdGhpcy0+bV9kaXNrQ2FjaGVEaXJlY3Rvcnk7CiAgICAgY29weS0+bV9t
ZWRpYUNhY2hlRGlyZWN0b3J5ID0gdGhpcy0+bV9tZWRpYUNhY2hlRGlyZWN0b3J5OwogICAgIGNv
cHktPm1faW5kZXhlZERCRGF0YWJhc2VEaXJlY3RvcnkgPSB0aGlzLT5tX2luZGV4ZWREQkRhdGFi
YXNlRGlyZWN0b3J5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQ
SVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5oCmluZGV4IGE1Yjg2YjZjZTA1ZDQ1ZjUzMDJh
NzkzNzZlMmQzZDBlMmY2YmQwNTYuLjk1NDQ4NDc5M2I0NWYxMzJlNWRjNmNjMzk5MDVmNDdmYzcw
MzI4N2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElQcm9jZXNz
UG9vbENvbmZpZ3VyYXRpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJ
UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmgKQEAgLTY4LDYgKzY4LDkgQEAgcHVibGljOgogCiAg
ICAgY29uc3QgV1RGOjpTdHJpbmcmIGFwcGxpY2F0aW9uQ2FjaGVGbGF0RmlsZVN1YmRpcmVjdG9y
eU5hbWUoKSBjb25zdCB7IHJldHVybiBtX2FwcGxpY2F0aW9uQ2FjaGVGbGF0RmlsZVN1YmRpcmVj
dG9yeU5hbWU7IH0KIAorICAgIGNvbnN0IFdURjo6U3RyaW5nJiBjYWNoZVN0b3JhZ2VEaXJlY3Rv
cnkoKSBjb25zdCB7IHJldHVybiBtX2NhY2hlU3RvcmFnZURpcmVjdG9yeTsgfQorICAgIHZvaWQg
c2V0Q2FjaGVTdG9yYWdlRGlyZWN0b3J5KFdURjo6U3RyaW5nJiYgY2FjaGVTdG9yYWdlRGlyZWN0
b3J5KSB7IG1fY2FjaGVTdG9yYWdlRGlyZWN0b3J5ID0gV1RGTW92ZShjYWNoZVN0b3JhZ2VEaXJl
Y3RvcnkpOyB9CisKICAgICBjb25zdCBXVEY6OlN0cmluZyYgZGlza0NhY2hlRGlyZWN0b3J5KCkg
Y29uc3QgeyByZXR1cm4gbV9kaXNrQ2FjaGVEaXJlY3Rvcnk7IH0KICAgICB2b2lkIHNldERpc2tD
YWNoZURpcmVjdG9yeShjb25zdCBXVEY6OlN0cmluZyYgZGlza0NhY2hlRGlyZWN0b3J5KSB7IG1f
ZGlza0NhY2hlRGlyZWN0b3J5ID0gZGlza0NhY2hlRGlyZWN0b3J5OyB9CiAKQEAgLTE0OSw2ICsx
NTIsNyBAQCBwcml2YXRlOgogCiAgICAgV1RGOjpTdHJpbmcgbV9hcHBsaWNhdGlvbkNhY2hlRGly
ZWN0b3J5OwogICAgIFdURjo6U3RyaW5nIG1fYXBwbGljYXRpb25DYWNoZUZsYXRGaWxlU3ViZGly
ZWN0b3J5TmFtZTsKKyAgICBXVEY6OlN0cmluZyBtX2NhY2hlU3RvcmFnZURpcmVjdG9yeTsKICAg
ICBXVEY6OlN0cmluZyBtX2Rpc2tDYWNoZURpcmVjdG9yeTsKICAgICBXVEY6OlN0cmluZyBtX21l
ZGlhQ2FjaGVEaXJlY3Rvcnk7CiAgICAgV1RGOjpTdHJpbmcgbV9pbmRleGVkREJEYXRhYmFzZURp
cmVjdG9yeTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElXZWJz
aXRlRGF0YVN0b3JlLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJV2Vic2l0ZURh
dGFTdG9yZS5oCmluZGV4IGE0ZDJjMzdkZjc0YzIzNTgyZDZkMTQ1YWIyOGFkOGVkZDRlNjQzMGQu
LjIyYzMyZDcxOWVjNjM0MmM5YzczYmIyN2I2MTA0ZGI3ZTQ0NzExZjkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElXZWJzaXRlRGF0YVN0b3JlLmgKKysrIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVdlYnNpdGVEYXRhU3RvcmUuaApAQCAtNTEsNiAr
NTEsNyBAQCBwdWJsaWM6CiAgICAgSFRUUENvb2tpZVN0b3JlJiBodHRwQ29va2llU3RvcmUoKTsK
IAogICAgIHN0YXRpYyBTdHJpbmcgZGVmYXVsdEFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkoKTsK
KyAgICBzdGF0aWMgU3RyaW5nIGRlZmF1bHRDYWNoZVN0b3JhZ2VEaXJlY3RvcnkoKTsKICAgICBz
dGF0aWMgU3RyaW5nIGRlZmF1bHROZXR3b3JrQ2FjaGVEaXJlY3RvcnkoKTsKICAgICBzdGF0aWMg
U3RyaW5nIGRlZmF1bHRNZWRpYUNhY2hlRGlyZWN0b3J5KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dENvbmZpZ3VyYXRpb25SZWYuY3BwIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0Q29uZmlndXJhdGlvblJlZi5j
cHAKaW5kZXggOGFjODFkZDYzNDFhNTcwNGYyZjg2ZWMyNjIwZDhhYmU2NGI5M2E3Zi4uYTUwOWJm
NzMzOWZjMDQxNzFiMTgwODAzNDBhMjk4MjcwZTA4ZGUwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0Q29uZmlndXJhdGlvblJlZi5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0Q29uZmlndXJhdGlvblJlZi5j
cHAKQEAgLTU4LDYgKzU4LDE2IEBAIHZvaWQgV0tDb250ZXh0Q29uZmlndXJhdGlvblNldERpc2tD
YWNoZURpcmVjdG9yeShXS0NvbnRleHRDb25maWd1cmF0aW9uUmVmIGNvbmZpCiAgICAgdG9JbXBs
KGNvbmZpZ3VyYXRpb24pLT5zZXREaXNrQ2FjaGVEaXJlY3RvcnkodG9JbXBsKGRpc2tDYWNoZURp
cmVjdG9yeSktPnN0cmluZygpKTsKIH0KIAorV0tTdHJpbmdSZWYgV0tDb250ZXh0Q29uZmlndXJh
dGlvbkNvcHlDYWNoZVN0b3JhZ2VEaXJlY3RvcnkoV0tDb250ZXh0Q29uZmlndXJhdGlvblJlZiBj
b25maWd1cmF0aW9uKQoreworICAgIHJldHVybiB0b0NvcGllZEFQSSh0b0ltcGwoY29uZmlndXJh
dGlvbiktPmNhY2hlU3RvcmFnZURpcmVjdG9yeSgpKTsKK30KKwordm9pZCBXS0NvbnRleHRDb25m
aWd1cmF0aW9uU2V0Q2FjaGVTdG9yYWdlRGlyZWN0b3J5KFdLQ29udGV4dENvbmZpZ3VyYXRpb25S
ZWYgY29uZmlndXJhdGlvbiwgV0tTdHJpbmdSZWYgY2FjaGVTdG9yYWdlRGlyZWN0b3J5KQorewor
ICAgIHRvSW1wbChjb25maWd1cmF0aW9uKS0+c2V0Q2FjaGVTdG9yYWdlRGlyZWN0b3J5KHRvSW1w
bChjYWNoZVN0b3JhZ2VEaXJlY3RvcnkpLT5zdHJpbmcoKSk7Cit9CisKIFdLU3RyaW5nUmVmIFdL
Q29udGV4dENvbmZpZ3VyYXRpb25Db3B5QXBwbGljYXRpb25DYWNoZURpcmVjdG9yeShXS0NvbnRl
eHRDb25maWd1cmF0aW9uUmVmIGNvbmZpZ3VyYXRpb24pCiB7CiAgICAgcmV0dXJuIHRvQ29waWVk
QVBJKHRvSW1wbChjb25maWd1cmF0aW9uKS0+YXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSgpKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dENvbmZp
Z3VyYXRpb25SZWYuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9DL1dLQ29udGV4dENv
bmZpZ3VyYXRpb25SZWYuaAppbmRleCBkNjliYjg1Mjk2NzYxYmVmMjVmNWYwZDMxNzliYTEzYzQw
MjczNDI5Li5hYTAxMDE2ZTUwYzQwMzZkMzZlNjFhNzQyMjFjMDUyOGNkMThlY2Q4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQy9XS0NvbnRleHRDb25maWd1cmF0aW9u
UmVmLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0MvV0tDb250ZXh0Q29uZmln
dXJhdGlvblJlZi5oCkBAIC0zOCw2ICszOCw5IEBAIFdLX0VYUE9SVCBXS0NvbnRleHRDb25maWd1
cmF0aW9uUmVmIFdLQ29udGV4dENvbmZpZ3VyYXRpb25DcmVhdGVXaXRoTGVnYWN5T3B0aW9uCiBX
S19FWFBPUlQgV0tTdHJpbmdSZWYgV0tDb250ZXh0Q29uZmlndXJhdGlvbkNvcHlBcHBsaWNhdGlv
bkNhY2hlRGlyZWN0b3J5KFdLQ29udGV4dENvbmZpZ3VyYXRpb25SZWYgY29uZmlndXJhdGlvbik7
CiBXS19FWFBPUlQgdm9pZCBXS0NvbnRleHRDb25maWd1cmF0aW9uU2V0QXBwbGljYXRpb25DYWNo
ZURpcmVjdG9yeShXS0NvbnRleHRDb25maWd1cmF0aW9uUmVmIGNvbmZpZ3VyYXRpb24sIFdLU3Ry
aW5nUmVmIGFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkpOwogCitXS19FWFBPUlQgV0tTdHJpbmdS
ZWYgV0tDb250ZXh0Q29uZmlndXJhdGlvbkNvcHlDYWNoZVN0b3JhZ2VEaXJlY3RvcnkoV0tDb250
ZXh0Q29uZmlndXJhdGlvblJlZiBjb25maWd1cmF0aW9uKTsKK1dLX0VYUE9SVCB2b2lkIFdLQ29u
dGV4dENvbmZpZ3VyYXRpb25TZXRDYWNoZVN0b3JhZ2VEaXJlY3RvcnkoV0tDb250ZXh0Q29uZmln
dXJhdGlvblJlZiBjb25maWd1cmF0aW9uLCBXS1N0cmluZ1JlZiBjYWNoZVN0b3JhZ2VEaXJlY3Rv
cnkpOworCiBXS19FWFBPUlQgV0tTdHJpbmdSZWYgV0tDb250ZXh0Q29uZmlndXJhdGlvbkNvcHlE
aXNrQ2FjaGVEaXJlY3RvcnkoV0tDb250ZXh0Q29uZmlndXJhdGlvblJlZiBjb25maWd1cmF0aW9u
KTsKIFdLX0VYUE9SVCB2b2lkIFdLQ29udGV4dENvbmZpZ3VyYXRpb25TZXREaXNrQ2FjaGVEaXJl
Y3RvcnkoV0tDb250ZXh0Q29uZmlndXJhdGlvblJlZiBjb25maWd1cmF0aW9uLCBXS1N0cmluZ1Jl
ZiBkaXNrQ2FjaGVEaXJlY3RvcnkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9BUEkvQ29jb2EvQVBJV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL0NvY29hL0FQSVdlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQppbmRleCBm
ZWFjMTRjNTg1Y2RlOTczODIyN2YyMGQwMTA1YjA2MGY5OGY2NzY1Li5mZmQwNWRlNmE5ODgyMzJh
MGI5YjVhY2ExNzlkOTg0YWEyNWY3NzIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9BUEkvQ29jb2EvQVBJV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tCisrKyBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9BUElXZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0KQEAg
LTUyLDYgKzUyLDExIEBAIFN0cmluZyBXZWJzaXRlRGF0YVN0b3JlOjpkZWZhdWx0QXBwbGljYXRp
b25DYWNoZURpcmVjdG9yeSgpCiAgICAgcmV0dXJuIGNhY2hlRGlyZWN0b3J5RmlsZVN5c3RlbVJl
cHJlc2VudGF0aW9uKCJPZmZsaW5lV2ViQXBwbGljYXRpb25DYWNoZSIpOwogfQogCitTdHJpbmcg
V2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdENhY2hlU3RvcmFnZURpcmVjdG9yeSgpCit7CisgICAg
cmV0dXJuIGNhY2hlRGlyZWN0b3J5RmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uKCJDYWNoZVN0b3Jh
Z2UiKTsKK30KKwogU3RyaW5nIFdlYnNpdGVEYXRhU3RvcmU6OmRlZmF1bHROZXR3b3JrQ2FjaGVE
aXJlY3RvcnkoKQogewogICAgIHJldHVybiBjYWNoZURpcmVjdG9yeUZpbGVTeXN0ZW1SZXByZXNl
bnRhdGlvbigiTmV0d29ya0NhY2hlIik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9Db2NvYS9XZWJQcm9jZXNzUG9vbENvY29hLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQ29jb2EvV2ViUHJvY2Vzc1Bvb2xDb2NvYS5tbQppbmRleCA1M2Y2N2EwYmUyNjY5YjBlODgw
NGE4MGZiZjhiZDFmM2I1ODI4NTMwLi4yZjRiMjI4ZjE2OGI2MjdiMThjMDNlMjM0NDEwMmI2ZTgz
YTNlOGE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQcm9j
ZXNzUG9vbENvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlBy
b2Nlc3NQb29sQ29jb2EubW0KQEAgLTQ1Miw2ICs0NTIsMTUgQEAgU3RyaW5nIFdlYlByb2Nlc3NQ
b29sOjpsZWdhY3lQbGF0Zm9ybURlZmF1bHRBcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5KCkKICAg
ICByZXR1cm4gc3RyaW5nQnlSZXNvbHZpbmdTeW1saW5rc0luUGF0aChbY2FjaGVQYXRoIHN0cmlu
Z0J5U3RhbmRhcmRpemluZ1BhdGhdKTsKIH0KIAorU3RyaW5nIFdlYlByb2Nlc3NQb29sOjpsZWdh
Y3lQbGF0Zm9ybURlZmF1bHRDYWNoZVN0b3JhZ2VEaXJlY3RvcnkoKQoreworICAgIFJldGFpblB0
cjxOU1N0cmluZz4gY2FjaGVTdG9yYWdlUGF0aCA9IGFkb3B0TlMoKE5TU3RyaW5nICopV0tDb3B5
Rm91bmRhdGlvbkNhY2hlRGlyZWN0b3J5KCkpOworICAgIGlmICghY2FjaGVTdG9yYWdlUGF0aCkK
KyAgICAgICAgY2FjaGVTdG9yYWdlUGF0aCA9IEAifi9MaWJyYXJ5L1dlYktpdC9DYWNoZVN0b3Jh
Z2UiOworCisgICAgcmV0dXJuIHN0cmluZ0J5UmVzb2x2aW5nU3ltbGlua3NJblBhdGgoW2NhY2hl
U3RvcmFnZVBhdGggc3RyaW5nQnlTdGFuZGFyZGl6aW5nUGF0aF0pOworfQorCiBTdHJpbmcgV2Vi
UHJvY2Vzc1Bvb2w6OmxlZ2FjeVBsYXRmb3JtRGVmYXVsdE5ldHdvcmtDYWNoZURpcmVjdG9yeSgp
CiB7CiAgICAgUmV0YWluUHRyPE5TU3RyaW5nPiBjYWNoZVBhdGggPSBhZG9wdE5TKChOU1N0cmlu
ZyAqKVdLQ29weUZvdW5kYXRpb25DYWNoZURpcmVjdG9yeSgpKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAppbmRleCA5MWIwMDU2ZTE2ZTYzODBiZDM3ZTc3YTAy
NjY4ZmY2MmViZjRmOTI3Li5kYmQwNjlmZTU5MWM3MDQxM2IyOGE3NWQyNGJkZjc4ZjA4MmQ2NmU1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCkBAIC0xOTcs
NiArMTk3LDcgQEAgc3RhdGljIFdlYnNpdGVEYXRhU3RvcmU6OkNvbmZpZ3VyYXRpb24gbGVnYWN5
V2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb24oQVBJOjoKICAgICBjb25maWd1cmF0aW9uLm1l
ZGlhQ2FjaGVEaXJlY3RvcnkgPSBwcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24ubWVkaWFDYWNoZURp
cmVjdG9yeSgpOwogICAgIGNvbmZpZ3VyYXRpb24ubWVkaWFLZXlzU3RvcmFnZURpcmVjdG9yeSA9
IHByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5tZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5KCk7CiAg
ICAgY29uZmlndXJhdGlvbi5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGlyZWN0b3J5ID0gcHJvY2Vz
c1Bvb2xDb25maWd1cmF0aW9uLnJlc291cmNlTG9hZFN0YXRpc3RpY3NEaXJlY3RvcnkoKTsKKyAg
ICBjb25maWd1cmF0aW9uLmNhY2hlU3RvcmFnZURpcmVjdG9yeSA9IHByb2Nlc3NQb29sQ29uZmln
dXJhdGlvbi5jYWNoZVN0b3JhZ2VEaXJlY3RvcnkoKTsKICAgICBjb25maWd1cmF0aW9uLm5ldHdv
cmtDYWNoZURpcmVjdG9yeSA9IHByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5kaXNrQ2FjaGVEaXJl
Y3RvcnkoKTsKICAgICBjb25maWd1cmF0aW9uLmphdmFTY3JpcHRDb25maWd1cmF0aW9uRGlyZWN0
b3J5ID0gcHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmphdmFTY3JpcHRDb25maWd1cmF0aW9uRGly
ZWN0b3J5KCk7CiAKQEAgLTQyOCw2ICs0MjksMTAgQEAgTmV0d29ya1Byb2Nlc3NQcm94eSYgV2Vi
UHJvY2Vzc1Bvb2w6OmVuc3VyZU5ldHdvcmtQcm9jZXNzKFdlYnNpdGVEYXRhU3RvcmUqIHdpdGgK
ICAgICBmb3IgKGF1dG8mIHNjaGVtZSA6IG1fdXJsU2NoZW1lc1JlZ2lzdGVyZWRGb3JDdXN0b21Q
cm90b2NvbHMpCiAgICAgICAgIHBhcmFtZXRlcnMudXJsU2NoZW1lc1JlZ2lzdGVyZWRGb3JDdXN0
b21Qcm90b2NvbHMuYXBwZW5kKHNjaGVtZSk7CiAKKyAgICBwYXJhbWV0ZXJzLmNhY2hlU3RvcmFn
ZURpcmVjdG9yeSA9IG1fY29uZmlndXJhdGlvbi0+Y2FjaGVTdG9yYWdlRGlyZWN0b3J5KCk7Cisg
ICAgaWYgKCFwYXJhbWV0ZXJzLmNhY2hlU3RvcmFnZURpcmVjdG9yeS5pc0VtcHR5KCkpCisgICAg
ICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvclJlYWRXcml0ZURpcmVjdG9yeShw
YXJhbWV0ZXJzLmNhY2hlU3RvcmFnZURpcmVjdG9yeSwgcGFyYW1ldGVycy5jYWNoZVN0b3JhZ2VE
aXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpOworCiAgICAgcGFyYW1ldGVycy5kaXNrQ2FjaGVEaXJl
Y3RvcnkgPSBtX2NvbmZpZ3VyYXRpb24tPmRpc2tDYWNoZURpcmVjdG9yeSgpOwogICAgIGlmICgh
cGFyYW1ldGVycy5kaXNrQ2FjaGVEaXJlY3RvcnkuaXNFbXB0eSgpKQogICAgICAgICBTYW5kYm94
RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JSZWFkV3JpdGVEaXJlY3RvcnkocGFyYW1ldGVycy5k
aXNrQ2FjaGVEaXJlY3RvcnksIHBhcmFtZXRlcnMuZGlza0NhY2hlRGlyZWN0b3J5RXh0ZW5zaW9u
SGFuZGxlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQ
b29sLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oCmluZGV4IGUy
ODdmMzU2NGYwODg4MmIyYmNkMDM5MjgyMzQyZjQ4MDQxNTdkN2QuLjQ1Y2I4OGZlNjY5NWFhNGUy
Mzk4NjYyYjExNDAxNDc5NjVmNDExNjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlByb2Nlc3NQb29sLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJv
Y2Vzc1Bvb2wuaApAQCAtMzgyLDYgKzM4Miw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgU3RyaW5n
IGxlZ2FjeVBsYXRmb3JtRGVmYXVsdE1lZGlhS2V5c1N0b3JhZ2VEaXJlY3RvcnkoKTsKICAgICBz
dGF0aWMgU3RyaW5nIGxlZ2FjeVBsYXRmb3JtRGVmYXVsdE1lZGlhQ2FjaGVEaXJlY3RvcnkoKTsK
ICAgICBzdGF0aWMgU3RyaW5nIGxlZ2FjeVBsYXRmb3JtRGVmYXVsdEFwcGxpY2F0aW9uQ2FjaGVE
aXJlY3RvcnkoKTsKKyAgICBzdGF0aWMgU3RyaW5nIGxlZ2FjeVBsYXRmb3JtRGVmYXVsdENhY2hl
U3RvcmFnZURpcmVjdG9yeSgpOwogICAgIHN0YXRpYyBTdHJpbmcgbGVnYWN5UGxhdGZvcm1EZWZh
dWx0TmV0d29ya0NhY2hlRGlyZWN0b3J5KCk7CiAgICAgc3RhdGljIFN0cmluZyBsZWdhY3lQbGF0
Zm9ybURlZmF1bHRKYXZhU2NyaXB0Q29uZmlndXJhdGlvbkRpcmVjdG9yeSgpOwogICAgIHN0YXRp
YyBib29sIGlzTmV0d29ya0NhY2hlRW5hYmxlZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oCmluZGV4IDgxYTNlNzYx
ZTJiYjVkNzIzOGE1MTEyNGFkZmIyMDUyMzQ3MmRmMzguLmU2NDI5YTdmYjFkMWQ4ZjE4NjJhNmZi
OGU5MzVmYzBmMDUwZjk1ZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmgKQEAgLTY3LDYgKzY3LDcgQEAgZW51bSBj
bGFzcyBTaG91bGRDbGVhckZpcnN0IHsgTm8sIFllcyB9OwogY2xhc3MgV2Vic2l0ZURhdGFTdG9y
ZSA6IHB1YmxpYyBSZWZDb3VudGVkPFdlYnNpdGVEYXRhU3RvcmU+LCBwdWJsaWMgV2ViUHJvY2Vz
c0xpZmV0aW1lT2JzZXJ2ZXIgewogcHVibGljOgogICAgIHN0cnVjdCBDb25maWd1cmF0aW9uIHsK
KyAgICAgICAgU3RyaW5nIGNhY2hlU3RvcmFnZURpcmVjdG9yeTsKICAgICAgICAgU3RyaW5nIG5l
dHdvcmtDYWNoZURpcmVjdG9yeTsKICAgICAgICAgU3RyaW5nIGFwcGxpY2F0aW9uQ2FjaGVEaXJl
Y3Rvcnk7CiAgICAgICAgIFN0cmluZyBhcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJkaXJlY3Rv
cnlOYW1lOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>319040</attachid>
            <date>2017-08-24 17:01:24 -0700</date>
            <delta_ts>2017-08-25 09:20:00 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-175884-20170824170123.patch</filename>
            <type>text/plain</type>
            <size>16588</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIxMTM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDQ3YjZhMTczMjBhZDdhY2Zj
ZmEwMWFmMWZjMTg2ZDQ3NGE3ZjY4ZTQuLmQwYzVkNDY0ODU2NTI4MjZlNWEwZmUyNjE1ODM4ZDE0
YTRhMDc1ZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzggQEAKKzIwMTctMDgtMjQgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIFtDYWNoZSBBUEldIFVJUHJvY2Vz
cyBzaG91bGQgcHJvdmlkZSB0aGUgZGlyZWN0b3J5IHBhdGggd2hlcmUgdG8gc3RvcmUgQ2FjaGUg
U3RvcmFnZSBkYXRhCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNzU4ODQKKworICAgICAgICBSZXZpZXdlZCBieSBCcmFkeSBFaWRzb24uCisKKyAgICAg
ICAgQWRkaW5nIEFQSSB0byBzZXQgdGhlIGNhY2hlIHN0b3JhZ2UgZGlyZWN0b3J5IHBhdGguCisg
ICAgICAgIFVwZGF0aW5nIElQQyB0byBwYXNzIHRoaXMgcGFyYW1ldGVyIHdpdGggaXRzIHNhbmRi
b3ggZXh0ZW5zaW9uIHRvIE5ldHdvcmtQcm9jZXNzIGF0IGNyZWF0aW9uIHRpbWUuCisKKyAgICAg
ICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oOgorICAgICAgICAoV2ViS2l0OjpO
ZXR3b3JrUHJvY2Vzczo6Y2FjaGVTdG9yYWdlRGlyZWN0b3J5IGNvbnN0KToKKyAgICAgICAgKiBO
ZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHA6CisgICAg
ICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjplbmNvZGUgY29u
c3QpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVyczo6
ZGVjb2RlKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9u
UGFyYW1ldGVycy5oOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtQcm9j
ZXNzQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjpwbGF0Zm9ybUlu
aXRpYWxpemVOZXR3b3JrUHJvY2Vzc0NvY29hKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0FQ
SVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5jcHA6CisgICAgICAgIChBUEk6OlByb2Nlc3NQb29s
Q29uZmlndXJhdGlvbjo6Y3JlYXRlV2l0aExlZ2FjeU9wdGlvbnMpOgorICAgICAgICAoQVBJOjpQ
cm9jZXNzUG9vbENvbmZpZ3VyYXRpb246OmNyZWF0ZVdpdGhXZWJzaXRlRGF0YVN0b3JlQ29uZmln
dXJhdGlvbik6CisgICAgICAgIChBUEk6OlByb2Nlc3NQb29sQ29uZmlndXJhdGlvbjo6UHJvY2Vz
c1Bvb2xDb25maWd1cmF0aW9uKToKKyAgICAgICAgKEFQSTo6UHJvY2Vzc1Bvb2xDb25maWd1cmF0
aW9uOjpjb3B5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0FQSVByb2Nlc3NQb29sQ29uZmln
dXJhdGlvbi5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQVBJV2Vic2l0ZURhdGFTdG9yZS5o
OgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvQVBJV2Vic2l0ZURhdGFTdG9yZUNvY29h
Lm1tOgorICAgICAgICAoQVBJOjpXZWJzaXRlRGF0YVN0b3JlOjpkZWZhdWx0Q2FjaGVTdG9yYWdl
RGlyZWN0b3J5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvV2ViUHJvY2Vzc1Bvb2xDb2Nv
YS5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmxlZ2FjeVBsYXRmb3JtRGVm
YXVsdENhY2hlU3RvcmFnZURpcmVjdG9yeSk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlByb2Nl
c3NQb29sLmNwcDoKKyAgICAgICAgKFdlYktpdDo6bGVnYWN5V2Vic2l0ZURhdGFTdG9yZUNvbmZp
Z3VyYXRpb24pOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6ZW5zdXJlTmV0d29y
a1Byb2Nlc3MpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oOgorICAgICAg
ICAqIFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmg6CisKIDIwMTctMDgt
MjMgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFtDYWNoZSBB
UEldIFVuaWZ5IFdlYkNvcmUgYW5kIFdlYktpdCBlcnJvciBoYW5kbGluZwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oCmluZGV4IDQ5Yjg2NmJiOWIwMGRk
NzBlOWE5YTg5MzRmY2NhZjlkYzNjNmE2YWYuLjUwNmY0OTI1NWUxMjFmN2U2NWU5ZGJjZWRmMzcw
ZTJhMWFjNzIxOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0
d29ya1Byb2Nlc3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQ
cm9jZXNzLmgKQEAgLTEzNCw2ICsxMzQsNyBAQCBwdWJsaWM6CiAjZW5kaWYKIAogICAgIFNlY29u
ZHMgbG9hZFRocm90dGxlTGF0ZW5jeSgpIGNvbnN0IHsgcmV0dXJuIG1fbG9hZFRocm90dGxlTGF0
ZW5jeTsgfQorICAgIGNvbnN0IFN0cmluZyYgY2FjaGVTdG9yYWdlRGlyZWN0b3J5KCkgY29uc3Qg
eyByZXR1cm4gbV9jYWNoZVN0b3JhZ2VEaXJlY3Rvcnk7IH0KIAogcHJpdmF0ZToKICAgICBOZXR3
b3JrUHJvY2VzcygpOwpAQCAtMjIzLDYgKzIyNCw3IEBAIHByaXZhdGU6CiAgICAgLy8gQ29ubmVj
dGlvbnMgdG8gV2ViUHJvY2Vzc2VzLgogICAgIFZlY3RvcjxSZWZQdHI8TmV0d29ya0Nvbm5lY3Rp
b25Ub1dlYlByb2Nlc3M+PiBtX3dlYlByb2Nlc3NDb25uZWN0aW9uczsKIAorICAgIFN0cmluZyBt
X2NhY2hlU3RvcmFnZURpcmVjdG9yeTsKICAgICBTdHJpbmcgbV9kaXNrQ2FjaGVEaXJlY3Rvcnk7
CiAgICAgYm9vbCBtX2hhc1NldENhY2hlTW9kZWw7CiAgICAgQ2FjaGVNb2RlbCBtX2NhY2hlTW9k
ZWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9j
ZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
TmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCmluZGV4IGZlZjVjOTdlOTc5ZjA2
OGZlYzJhYWQ2OGE4ZmY1ODc5MThlMTc3NWIuLjY3OGQ2Y2Y3YjE2OTkxOGIxZDcwZjE2NzJlMmZi
Nzk5ZjkxYTNiMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0
d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCkBAIC00NSw2
ICs0NSw4IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmVuY29kZShJ
UEM6OkVuY29kZXImIGVuY29kZXIpIGNvbnN0CiAgICAgZW5jb2Rlci5lbmNvZGVFbnVtKGNhY2hl
TW9kZWwpOwogICAgIGVuY29kZXIgPDwgZGlza0NhY2hlU2l6ZU92ZXJyaWRlOwogICAgIGVuY29k
ZXIgPDwgY2FuSGFuZGxlSFRUUFNTZXJ2ZXJUcnVzdEV2YWx1YXRpb247CisgICAgZW5jb2RlciA8
PCBjYWNoZVN0b3JhZ2VEaXJlY3Rvcnk7CisgICAgZW5jb2RlciA8PCBjYWNoZVN0b3JhZ2VEaXJl
Y3RvcnlFeHRlbnNpb25IYW5kbGU7CiAgICAgZW5jb2RlciA8PCBkaXNrQ2FjaGVEaXJlY3Rvcnk7
CiAgICAgZW5jb2RlciA8PCBkaXNrQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7CiAjaWYg
RU5BQkxFKE5FVFdPUktfQ0FDSEUpCkBAIC0xMTIsNiArMTE0LDEwIEBAIGJvb2wgTmV0d29ya1By
b2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmRlY29kZShJUEM6OkRlY29kZXImIGRlY29kZXIsIE5l
dHdvcmtQcm9jCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2Rl
KHJlc3VsdC5jYW5IYW5kbGVIVFRQU1NlcnZlclRydXN0RXZhbHVhdGlvbikpCiAgICAgICAgIHJl
dHVybiBmYWxzZTsKKyAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5jYWNoZVN0b3JhZ2VE
aXJlY3RvcnkpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYgKCFkZWNvZGVyLmRlY29k
ZShyZXN1bHQuY2FjaGVTdG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKSkKKyAgICAgICAg
cmV0dXJuIGZhbHNlOwogICAgIGlmICghZGVjb2Rlci5kZWNvZGUocmVzdWx0LmRpc2tDYWNoZURp
cmVjdG9yeSkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2Rl
KHJlc3VsdC5kaXNrQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1l
dGVycy5oIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc0NyZWF0
aW9uUGFyYW1ldGVycy5oCmluZGV4IGEyMWVhMTJhOGEwMWM1MmU1ODZjOGJkYjA3NDgzNjQ3MmIy
MDQ4NjYuLjFlYjc5Nzk5NjE4YmNlNWE3MmFjNzU2MTcwNzE4MTI1MDc2YjAyM2QgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBh
cmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9j
ZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgKQEAgLTU0LDYgKzU0LDggQEAgc3RydWN0IE5ldHdvcmtQ
cm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzIHsKICAgICBpbnQ2NF90IGRpc2tDYWNoZVNpemVPdmVy
cmlkZSB7IC0xIH07CiAgICAgYm9vbCBjYW5IYW5kbGVIVFRQU1NlcnZlclRydXN0RXZhbHVhdGlv
biB7IHRydWUgfTsKIAorICAgIFN0cmluZyBjYWNoZVN0b3JhZ2VEaXJlY3Rvcnk7CisgICAgU2Fu
ZGJveEV4dGVuc2lvbjo6SGFuZGxlIGNhY2hlU3RvcmFnZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRs
ZTsKICAgICBTdHJpbmcgZGlza0NhY2hlRGlyZWN0b3J5OwogICAgIFNhbmRib3hFeHRlbnNpb246
OkhhbmRsZSBkaXNrQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7CiAjaWYgRU5BQkxFKE5F
VFdPUktfQ0FDSEUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2Nv
Y29hL05ldHdvcmtQcm9jZXNzQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L2NvY29hL05ldHdvcmtQcm9jZXNzQ29jb2EubW0KaW5kZXggNzU0NWQ1M2VmMDAxZDIwNGFlZjNi
MzkzMTEzZTJkZDYzZDliYzdiMi4uOTA3NDg5YmMwNDg4YmM0YzRmZDU1ZDNmMjY2ZTBhMmY5NzUw
YWJkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3
b3JrUHJvY2Vzc0NvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29j
b2EvTmV0d29ya1Byb2Nlc3NDb2NvYS5tbQpAQCAtNzMsNiArNzMsNyBAQCB2b2lkIE5ldHdvcmtQ
cm9jZXNzOjpwbGF0Zm9ybUluaXRpYWxpemVOZXR3b3JrUHJvY2Vzc0NvY29hKGNvbnN0IE5ldHdv
cmtQcm9jZXNzQwogICAgIFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShwYXJh
bWV0ZXJzLmNvbnRhaW5lckNhY2hlc0RpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7CiAgICAgU2Fu
ZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMucGFyZW50QnVuZGxl
RGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKICNlbmRpZgorICAgIG1fY2FjaGVTdG9yYWdlRGly
ZWN0b3J5ID0gcGFyYW1ldGVycy5jYWNoZVN0b3JhZ2VEaXJlY3Rvcnk7CiAgICAgbV9kaXNrQ2Fj
aGVEaXJlY3RvcnkgPSBwYXJhbWV0ZXJzLmRpc2tDYWNoZURpcmVjdG9yeTsKIAogICAgIF9DRk5l
dHdvcmtTZXRBVFNDb250ZXh0KHBhcmFtZXRlcnMubmV0d29ya0FUU0NvbnRleHQuZ2V0KCkpOwpA
QCAtMTA1LDYgKzEwNiw5IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OnBsYXRmb3JtSW5pdGlhbGl6
ZU5ldHdvcmtQcm9jZXNzQ29jb2EoY29uc3QgTmV0d29ya1Byb2Nlc3NDCiAKICAgICBBU1NFUlQo
IW1fZGlza0NhY2hlSXNEaXNhYmxlZEZvclRlc3RpbmcgfHwgIXBhcmFtZXRlcnMubnNVUkxDYWNo
ZURpc2tDYXBhY2l0eSk7CiAKKyAgICBpZiAoIW1fY2FjaGVTdG9yYWdlRGlyZWN0b3J5LmlzTnVs
bCgpKQorICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVybWFuZW50bHkocGFyYW1l
dGVycy5jYWNoZVN0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpOworCiAgICAgaWYgKCFt
X2Rpc2tDYWNoZURpcmVjdG9yeS5pc051bGwoKSkgewogICAgICAgICBTYW5kYm94RXh0ZW5zaW9u
Ojpjb25zdW1lUGVybWFuZW50bHkocGFyYW1ldGVycy5kaXNrQ2FjaGVEaXJlY3RvcnlFeHRlbnNp
b25IYW5kbGUpOwogI2lmIEVOQUJMRShORVRXT1JLX0NBQ0hFKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5jcHAgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmNw
cAppbmRleCAxZmRlMDE0YzdiMTljZjhiZDAxYjI5ZDNkOTdlNTUzNGYzYjFhMjk4Li44ODdmNTk1
ZmYzOTg1Zjg1OWYwYzA4MzllOTlmNWYxMWFkZWVmNGY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmNw
cApAQCAtNDYsNiArNDYsOSBAQCBSZWY8UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uPiBQcm9jZXNz
UG9vbENvbmZpZ3VyYXRpb246OmNyZWF0ZVdpdGhMZWdhY3lPcHRpb25zKAogCiAgICAgY29uZmln
dXJhdGlvbi0+bV9hcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5ID0gV2ViS2l0OjpXZWJQcm9jZXNz
UG9vbDo6bGVnYWN5UGxhdGZvcm1EZWZhdWx0QXBwbGljYXRpb25DYWNoZURpcmVjdG9yeSgpOwog
ICAgIGNvbmZpZ3VyYXRpb24tPm1fYXBwbGljYXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5
TmFtZSA9ICJBcHBsaWNhdGlvbkNhY2hlIjsKKyNpZiBQTEFURk9STShDT0NPQSkKKyAgICBjb25m
aWd1cmF0aW9uLT5tX2NhY2hlU3RvcmFnZURpcmVjdG9yeSA9IFdlYktpdDo6V2ViUHJvY2Vzc1Bv
b2w6OmxlZ2FjeVBsYXRmb3JtRGVmYXVsdENhY2hlU3RvcmFnZURpcmVjdG9yeSgpOworI2VuZGlm
CiAgICAgY29uZmlndXJhdGlvbi0+bV9kaXNrQ2FjaGVEaXJlY3RvcnkgPSBXZWJLaXQ6OldlYlBy
b2Nlc3NQb29sOjpsZWdhY3lQbGF0Zm9ybURlZmF1bHROZXR3b3JrQ2FjaGVEaXJlY3RvcnkoKTsK
ICAgICBjb25maWd1cmF0aW9uLT5tX21lZGlhQ2FjaGVEaXJlY3RvcnkgPSBXZWJLaXQ6OldlYlBy
b2Nlc3NQb29sOjpsZWdhY3lQbGF0Zm9ybURlZmF1bHRNZWRpYUNhY2hlRGlyZWN0b3J5KCk7CiAg
ICAgY29uZmlndXJhdGlvbi0+bV9pbmRleGVkREJEYXRhYmFzZURpcmVjdG9yeSA9IFdlYktpdDo6
V2ViUHJvY2Vzc1Bvb2w6OmxlZ2FjeVBsYXRmb3JtRGVmYXVsdEluZGV4ZWREQkRhdGFiYXNlRGly
ZWN0b3J5KCk7CkBAIC02Myw2ICs2Niw3IEBAIFJlZjxQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24+
IFByb2Nlc3NQb29sQ29uZmlndXJhdGlvbjo6Y3JlYXRlV2l0aFdlYnNpdGVEYXRhU3RvCiAKICAg
ICBjb25maWd1cmF0aW9uLT5tX2FwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkgPSBsZWdhY3lDb25m
aWd1cmF0aW9uLmFwcGxpY2F0aW9uQ2FjaGVEaXJlY3Rvcnk7CiAgICAgY29uZmlndXJhdGlvbi0+
bV9hcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJkaXJlY3RvcnlOYW1lID0gbGVnYWN5Q29uZmln
dXJhdGlvbi5hcHBsaWNhdGlvbkNhY2hlRmxhdEZpbGVTdWJkaXJlY3RvcnlOYW1lOworICAgIGNv
bmZpZ3VyYXRpb24tPm1fY2FjaGVTdG9yYWdlRGlyZWN0b3J5ID0gbGVnYWN5Q29uZmlndXJhdGlv
bi5jYWNoZVN0b3JhZ2VEaXJlY3Rvcnk7CiAgICAgY29uZmlndXJhdGlvbi0+bV9kaXNrQ2FjaGVE
aXJlY3RvcnkgPSBsZWdhY3lDb25maWd1cmF0aW9uLm5ldHdvcmtDYWNoZURpcmVjdG9yeTsKICAg
ICBjb25maWd1cmF0aW9uLT5tX21lZGlhQ2FjaGVEaXJlY3RvcnkgPSBsZWdhY3lDb25maWd1cmF0
aW9uLm1lZGlhQ2FjaGVEaXJlY3Rvcnk7CiAgICAgY29uZmlndXJhdGlvbi0+bV9pbmRleGVkREJE
YXRhYmFzZURpcmVjdG9yeSA9IFdlYktpdDo6V2ViUHJvY2Vzc1Bvb2w6OmxlZ2FjeVBsYXRmb3Jt
RGVmYXVsdEluZGV4ZWREQkRhdGFiYXNlRGlyZWN0b3J5KCk7CkBAIC03Nyw2ICs4MSw5IEBAIFJl
ZjxQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24+IFByb2Nlc3NQb29sQ29uZmlndXJhdGlvbjo6Y3Jl
YXRlV2l0aFdlYnNpdGVEYXRhU3RvCiBQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb246OlByb2Nlc3NQ
b29sQ29uZmlndXJhdGlvbigpCiAgICAgOiBtX2FwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkoV2Vi
c2l0ZURhdGFTdG9yZTo6ZGVmYXVsdEFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkoKSkKICAgICAs
IG1fYXBwbGljYXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZSgiRmlsZXMiKQorI2lm
IFBMQVRGT1JNKENPQ0EpCisgICAgLCBtX2NhY2hlU3RvcmFnZURpcmVjdG9yeShXZWJzaXRlRGF0
YVN0b3JlOjpkZWZhdWx0Q2FjaGVTdG9yYWdlRGlyZWN0b3J5KCkpCisjZW5kaWYKICAgICAsIG1f
ZGlza0NhY2hlRGlyZWN0b3J5KFdlYnNpdGVEYXRhU3RvcmU6OmRlZmF1bHROZXR3b3JrQ2FjaGVE
aXJlY3RvcnkoKSkKICAgICAsIG1fbWVkaWFDYWNoZURpcmVjdG9yeShXZWJzaXRlRGF0YVN0b3Jl
OjpkZWZhdWx0TWVkaWFDYWNoZURpcmVjdG9yeSgpKQogICAgICwgbV9pbmRleGVkREJEYXRhYmFz
ZURpcmVjdG9yeShXZWJzaXRlRGF0YVN0b3JlOjpkZWZhdWx0SW5kZXhlZERCRGF0YWJhc2VEaXJl
Y3RvcnkoKSkKQEAgLTEwMyw2ICsxMTAsNyBAQCBSZWY8UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9u
PiBQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb246OmNvcHkoKQogICAgIGNvcHktPm1fZGlza0NhY2hl
U2l6ZU92ZXJyaWRlID0gdGhpcy0+bV9kaXNrQ2FjaGVTaXplT3ZlcnJpZGU7CiAgICAgY29weS0+
bV9hcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5ID0gdGhpcy0+bV9hcHBsaWNhdGlvbkNhY2hlRGly
ZWN0b3J5OwogICAgIGNvcHktPm1fYXBwbGljYXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5
TmFtZSA9IHRoaXMtPm1fYXBwbGljYXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZTsK
KyAgICBjb3B5LT5tX2NhY2hlU3RvcmFnZURpcmVjdG9yeSA9IHRoaXMtPm1fY2FjaGVTdG9yYWdl
RGlyZWN0b3J5OwogICAgIGNvcHktPm1fZGlza0NhY2hlRGlyZWN0b3J5ID0gdGhpcy0+bV9kaXNr
Q2FjaGVEaXJlY3Rvcnk7CiAgICAgY29weS0+bV9tZWRpYUNhY2hlRGlyZWN0b3J5ID0gdGhpcy0+
bV9tZWRpYUNhY2hlRGlyZWN0b3J5OwogICAgIGNvcHktPm1faW5kZXhlZERCRGF0YWJhc2VEaXJl
Y3RvcnkgPSB0aGlzLT5tX2luZGV4ZWREQkRhdGFiYXNlRGlyZWN0b3J5OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5o
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQSVByb2Nlc3NQb29sQ29uZmlndXJhdGlv
bi5oCmluZGV4IGE1Yjg2YjZjZTA1ZDQ1ZjUzMDJhNzkzNzZlMmQzZDBlMmY2YmQwNTYuLjk1NDQ4
NDc5M2I0NWYxMzJlNWRjNmNjMzk5MDVmNDdmYzcwMzI4N2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uaAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmgK
QEAgLTY4LDYgKzY4LDkgQEAgcHVibGljOgogCiAgICAgY29uc3QgV1RGOjpTdHJpbmcmIGFwcGxp
Y2F0aW9uQ2FjaGVGbGF0RmlsZVN1YmRpcmVjdG9yeU5hbWUoKSBjb25zdCB7IHJldHVybiBtX2Fw
cGxpY2F0aW9uQ2FjaGVGbGF0RmlsZVN1YmRpcmVjdG9yeU5hbWU7IH0KIAorICAgIGNvbnN0IFdU
Rjo6U3RyaW5nJiBjYWNoZVN0b3JhZ2VEaXJlY3RvcnkoKSBjb25zdCB7IHJldHVybiBtX2NhY2hl
U3RvcmFnZURpcmVjdG9yeTsgfQorICAgIHZvaWQgc2V0Q2FjaGVTdG9yYWdlRGlyZWN0b3J5KFdU
Rjo6U3RyaW5nJiYgY2FjaGVTdG9yYWdlRGlyZWN0b3J5KSB7IG1fY2FjaGVTdG9yYWdlRGlyZWN0
b3J5ID0gV1RGTW92ZShjYWNoZVN0b3JhZ2VEaXJlY3RvcnkpOyB9CisKICAgICBjb25zdCBXVEY6
OlN0cmluZyYgZGlza0NhY2hlRGlyZWN0b3J5KCkgY29uc3QgeyByZXR1cm4gbV9kaXNrQ2FjaGVE
aXJlY3Rvcnk7IH0KICAgICB2b2lkIHNldERpc2tDYWNoZURpcmVjdG9yeShjb25zdCBXVEY6OlN0
cmluZyYgZGlza0NhY2hlRGlyZWN0b3J5KSB7IG1fZGlza0NhY2hlRGlyZWN0b3J5ID0gZGlza0Nh
Y2hlRGlyZWN0b3J5OyB9CiAKQEAgLTE0OSw2ICsxNTIsNyBAQCBwcml2YXRlOgogCiAgICAgV1RG
OjpTdHJpbmcgbV9hcHBsaWNhdGlvbkNhY2hlRGlyZWN0b3J5OwogICAgIFdURjo6U3RyaW5nIG1f
YXBwbGljYXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZTsKKyAgICBXVEY6OlN0cmlu
ZyBtX2NhY2hlU3RvcmFnZURpcmVjdG9yeTsKICAgICBXVEY6OlN0cmluZyBtX2Rpc2tDYWNoZURp
cmVjdG9yeTsKICAgICBXVEY6OlN0cmluZyBtX21lZGlhQ2FjaGVEaXJlY3Rvcnk7CiAgICAgV1RG
OjpTdHJpbmcgbV9pbmRleGVkREJEYXRhYmFzZURpcmVjdG9yeTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9BUElXZWJzaXRlRGF0YVN0b3JlLmggYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvQVBJV2Vic2l0ZURhdGFTdG9yZS5oCmluZGV4IGE0ZDJjMzdkZjc0
YzIzNTgyZDZkMTQ1YWIyOGFkOGVkZDRlNjQzMGQuLjIyYzMyZDcxOWVjNjM0MmM5YzczYmIyN2I2
MTA0ZGI3ZTQ0NzExZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9B
UElXZWJzaXRlRGF0YVN0b3JlLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0FQ
SVdlYnNpdGVEYXRhU3RvcmUuaApAQCAtNTEsNiArNTEsNyBAQCBwdWJsaWM6CiAgICAgSFRUUENv
b2tpZVN0b3JlJiBodHRwQ29va2llU3RvcmUoKTsKIAogICAgIHN0YXRpYyBTdHJpbmcgZGVmYXVs
dEFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkoKTsKKyAgICBzdGF0aWMgU3RyaW5nIGRlZmF1bHRD
YWNoZVN0b3JhZ2VEaXJlY3RvcnkoKTsKICAgICBzdGF0aWMgU3RyaW5nIGRlZmF1bHROZXR3b3Jr
Q2FjaGVEaXJlY3RvcnkoKTsKICAgICBzdGF0aWMgU3RyaW5nIGRlZmF1bHRNZWRpYUNhY2hlRGly
ZWN0b3J5KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2Nv
YS9BUElXZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQ29jb2EvQVBJV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tCmluZGV4IGZlYWMxNGM1ODVjZGU5
NzM4MjI3ZjIwZDAxMDViMDYwZjk4ZjY3NjUuLjM2YThmYzZjOTRkYWJhMGVlNzMyMDFhMTdiOWYz
YTUwY2QyMDVlZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2Nv
YS9BUElXZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQVBJL0NvY29hL0FQSVdlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQpAQCAtNTIsNiArNTIsMTEg
QEAgU3RyaW5nIFdlYnNpdGVEYXRhU3RvcmU6OmRlZmF1bHRBcHBsaWNhdGlvbkNhY2hlRGlyZWN0
b3J5KCkKICAgICByZXR1cm4gY2FjaGVEaXJlY3RvcnlGaWxlU3lzdGVtUmVwcmVzZW50YXRpb24o
Ik9mZmxpbmVXZWJBcHBsaWNhdGlvbkNhY2hlIik7CiB9CiAKK1N0cmluZyBXZWJzaXRlRGF0YVN0
b3JlOjpkZWZhdWx0Q2FjaGVTdG9yYWdlRGlyZWN0b3J5KCkKK3sKKyAgICByZXR1cm4gd2Vic2l0
ZURhdGFEaXJlY3RvcnlGaWxlU3lzdGVtUmVwcmVzZW50YXRpb24oIkNhY2hlU3RvcmFnZSIpOwor
fQorCiBTdHJpbmcgV2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdE5ldHdvcmtDYWNoZURpcmVjdG9y
eSgpCiB7CiAgICAgcmV0dXJuIGNhY2hlRGlyZWN0b3J5RmlsZVN5c3RlbVJlcHJlc2VudGF0aW9u
KCJOZXR3b3JrQ2FjaGUiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0Nv
Y29hL1dlYlByb2Nlc3NQb29sQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9XZWJQcm9jZXNzUG9vbENvY29hLm1tCmluZGV4IDUzZjY3YTBiZTI2NjliMGU4ODA0YTgwZmJm
OGJkMWYzYjU4Mjg1MzAuLjJmNGIyMjhmMTY4YjYyN2IxOGMwM2UyMzQ0MTAyYjZlODNhM2U4YTQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlByb2Nlc3NQb29s
Q29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUHJvY2Vzc1Bv
b2xDb2NvYS5tbQpAQCAtNDUyLDYgKzQ1MiwxNSBAQCBTdHJpbmcgV2ViUHJvY2Vzc1Bvb2w6Omxl
Z2FjeVBsYXRmb3JtRGVmYXVsdEFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkoKQogICAgIHJldHVy
biBzdHJpbmdCeVJlc29sdmluZ1N5bWxpbmtzSW5QYXRoKFtjYWNoZVBhdGggc3RyaW5nQnlTdGFu
ZGFyZGl6aW5nUGF0aF0pOwogfQogCitTdHJpbmcgV2ViUHJvY2Vzc1Bvb2w6OmxlZ2FjeVBsYXRm
b3JtRGVmYXVsdENhY2hlU3RvcmFnZURpcmVjdG9yeSgpCit7CisgICAgUmV0YWluUHRyPE5TU3Ry
aW5nPiBjYWNoZVN0b3JhZ2VQYXRoID0gYWRvcHROUygoTlNTdHJpbmcgKilXS0NvcHlGb3VuZGF0
aW9uQ2FjaGVEaXJlY3RvcnkoKSk7CisgICAgaWYgKCFjYWNoZVN0b3JhZ2VQYXRoKQorICAgICAg
ICBjYWNoZVN0b3JhZ2VQYXRoID0gQCJ+L0xpYnJhcnkvV2ViS2l0L0NhY2hlU3RvcmFnZSI7CisK
KyAgICByZXR1cm4gc3RyaW5nQnlSZXNvbHZpbmdTeW1saW5rc0luUGF0aChbY2FjaGVTdG9yYWdl
UGF0aCBzdHJpbmdCeVN0YW5kYXJkaXppbmdQYXRoXSk7Cit9CisKIFN0cmluZyBXZWJQcm9jZXNz
UG9vbDo6bGVnYWN5UGxhdGZvcm1EZWZhdWx0TmV0d29ya0NhY2hlRGlyZWN0b3J5KCkKIHsKICAg
ICBSZXRhaW5QdHI8TlNTdHJpbmc+IGNhY2hlUGF0aCA9IGFkb3B0TlMoKE5TU3RyaW5nICopV0tD
b3B5Rm91bmRhdGlvbkNhY2hlRGlyZWN0b3J5KCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViUHJvY2Vzc1Bvb2wuY3BwCmluZGV4IDkxYjAwNTZlMTZlNjM4MGJkMzdlNzdhMDI2NjhmZjYy
ZWJmNGY5MjcuLmRiZDA2OWZlNTkxYzcwNDEzYjI4YTc1ZDI0YmRmNzhmMDgyZDY2ZTUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKQEAgLTE5Nyw2ICsxOTcs
NyBAQCBzdGF0aWMgV2Vic2l0ZURhdGFTdG9yZTo6Q29uZmlndXJhdGlvbiBsZWdhY3lXZWJzaXRl
RGF0YVN0b3JlQ29uZmlndXJhdGlvbihBUEk6OgogICAgIGNvbmZpZ3VyYXRpb24ubWVkaWFDYWNo
ZURpcmVjdG9yeSA9IHByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5tZWRpYUNhY2hlRGlyZWN0b3J5
KCk7CiAgICAgY29uZmlndXJhdGlvbi5tZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5ID0gcHJvY2Vz
c1Bvb2xDb25maWd1cmF0aW9uLm1lZGlhS2V5c1N0b3JhZ2VEaXJlY3RvcnkoKTsKICAgICBjb25m
aWd1cmF0aW9uLnJlc291cmNlTG9hZFN0YXRpc3RpY3NEaXJlY3RvcnkgPSBwcm9jZXNzUG9vbENv
bmZpZ3VyYXRpb24ucmVzb3VyY2VMb2FkU3RhdGlzdGljc0RpcmVjdG9yeSgpOworICAgIGNvbmZp
Z3VyYXRpb24uY2FjaGVTdG9yYWdlRGlyZWN0b3J5ID0gcHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9u
LmNhY2hlU3RvcmFnZURpcmVjdG9yeSgpOwogICAgIGNvbmZpZ3VyYXRpb24ubmV0d29ya0NhY2hl
RGlyZWN0b3J5ID0gcHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmRpc2tDYWNoZURpcmVjdG9yeSgp
OwogICAgIGNvbmZpZ3VyYXRpb24uamF2YVNjcmlwdENvbmZpZ3VyYXRpb25EaXJlY3RvcnkgPSBw
cm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uamF2YVNjcmlwdENvbmZpZ3VyYXRpb25EaXJlY3Rvcnko
KTsKIApAQCAtNDI4LDYgKzQyOSwxMCBAQCBOZXR3b3JrUHJvY2Vzc1Byb3h5JiBXZWJQcm9jZXNz
UG9vbDo6ZW5zdXJlTmV0d29ya1Byb2Nlc3MoV2Vic2l0ZURhdGFTdG9yZSogd2l0aAogICAgIGZv
ciAoYXV0byYgc2NoZW1lIDogbV91cmxTY2hlbWVzUmVnaXN0ZXJlZEZvckN1c3RvbVByb3RvY29s
cykKICAgICAgICAgcGFyYW1ldGVycy51cmxTY2hlbWVzUmVnaXN0ZXJlZEZvckN1c3RvbVByb3Rv
Y29scy5hcHBlbmQoc2NoZW1lKTsKIAorICAgIHBhcmFtZXRlcnMuY2FjaGVTdG9yYWdlRGlyZWN0
b3J5ID0gbV9jb25maWd1cmF0aW9uLT5jYWNoZVN0b3JhZ2VEaXJlY3RvcnkoKTsKKyAgICBpZiAo
IXBhcmFtZXRlcnMuY2FjaGVTdG9yYWdlRGlyZWN0b3J5LmlzRW1wdHkoKSkKKyAgICAgICAgU2Fu
ZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yUmVhZFdyaXRlRGlyZWN0b3J5KHBhcmFtZXRl
cnMuY2FjaGVTdG9yYWdlRGlyZWN0b3J5LCBwYXJhbWV0ZXJzLmNhY2hlU3RvcmFnZURpcmVjdG9y
eUV4dGVuc2lvbkhhbmRsZSk7CisKICAgICBwYXJhbWV0ZXJzLmRpc2tDYWNoZURpcmVjdG9yeSA9
IG1fY29uZmlndXJhdGlvbi0+ZGlza0NhY2hlRGlyZWN0b3J5KCk7CiAgICAgaWYgKCFwYXJhbWV0
ZXJzLmRpc2tDYWNoZURpcmVjdG9yeS5pc0VtcHR5KCkpCiAgICAgICAgIFNhbmRib3hFeHRlbnNp
b246OmNyZWF0ZUhhbmRsZUZvclJlYWRXcml0ZURpcmVjdG9yeShwYXJhbWV0ZXJzLmRpc2tDYWNo
ZURpcmVjdG9yeSwgcGFyYW1ldGVycy5kaXNrQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaCBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmgKaW5kZXggZTI4N2YzNTY0
ZjA4ODgyYjJiY2QwMzkyODIzNDJmNDgwNDE1N2Q3ZC4uNDVjYjg4ZmU2Njk1YWE0ZTIzOTg2NjJi
MTE0MDE0Nzk2NWY0MTE2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Bvb2wuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9v
bC5oCkBAIC0zODIsNiArMzgyLDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBTdHJpbmcgbGVnYWN5
UGxhdGZvcm1EZWZhdWx0TWVkaWFLZXlzU3RvcmFnZURpcmVjdG9yeSgpOwogICAgIHN0YXRpYyBT
dHJpbmcgbGVnYWN5UGxhdGZvcm1EZWZhdWx0TWVkaWFDYWNoZURpcmVjdG9yeSgpOwogICAgIHN0
YXRpYyBTdHJpbmcgbGVnYWN5UGxhdGZvcm1EZWZhdWx0QXBwbGljYXRpb25DYWNoZURpcmVjdG9y
eSgpOworICAgIHN0YXRpYyBTdHJpbmcgbGVnYWN5UGxhdGZvcm1EZWZhdWx0Q2FjaGVTdG9yYWdl
RGlyZWN0b3J5KCk7CiAgICAgc3RhdGljIFN0cmluZyBsZWdhY3lQbGF0Zm9ybURlZmF1bHROZXR3
b3JrQ2FjaGVEaXJlY3RvcnkoKTsKICAgICBzdGF0aWMgU3RyaW5nIGxlZ2FjeVBsYXRmb3JtRGVm
YXVsdEphdmFTY3JpcHRDb25maWd1cmF0aW9uRGlyZWN0b3J5KCk7CiAgICAgc3RhdGljIGJvb2wg
aXNOZXR3b3JrQ2FjaGVFbmFibGVkKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmgKaW5kZXggODFhM2U3NjFlMmJiNWQ3
MjM4YTUxMTI0YWRmYjIwNTIzNDcyZGYzOC4uZTY0MjlhN2ZiMWQxZDhmMTg2MmE2ZmI4ZTkzNWZj
MGYwNTBmOTVlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURh
dGEvV2Vic2l0ZURhdGFTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNp
dGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuaApAQCAtNjcsNiArNjcsNyBAQCBlbnVtIGNsYXNzIFNo
b3VsZENsZWFyRmlyc3QgeyBObywgWWVzIH07CiBjbGFzcyBXZWJzaXRlRGF0YVN0b3JlIDogcHVi
bGljIFJlZkNvdW50ZWQ8V2Vic2l0ZURhdGFTdG9yZT4sIHB1YmxpYyBXZWJQcm9jZXNzTGlmZXRp
bWVPYnNlcnZlciB7CiBwdWJsaWM6CiAgICAgc3RydWN0IENvbmZpZ3VyYXRpb24geworICAgICAg
ICBTdHJpbmcgY2FjaGVTdG9yYWdlRGlyZWN0b3J5OwogICAgICAgICBTdHJpbmcgbmV0d29ya0Nh
Y2hlRGlyZWN0b3J5OwogICAgICAgICBTdHJpbmcgYXBwbGljYXRpb25DYWNoZURpcmVjdG9yeTsK
ICAgICAgICAgU3RyaW5nIGFwcGxpY2F0aW9uQ2FjaGVGbGF0RmlsZVN1YmRpcmVjdG9yeU5hbWU7
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>319082</attachid>
            <date>2017-08-25 09:20:03 -0700</date>
            <delta_ts>2017-08-25 10:01:37 -0700</delta_ts>
            <desc>Fixing typo</desc>
            <filename>bug-175884-20170825092002.patch</filename>
            <type>text/plain</type>
            <size>1689</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIxMTcyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGU2MWExNWVjOWE1NjFiZjU5
ODY5OTJkYmU4MzMzMzVlMjgxYWY5YmYuLjEwYmViZWM0MGY1YTQ3ZWQ2NmJiZmM4ZTI5OGY0NWFm
NjEwYjM5NWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTctMDgtMjUgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIFtDYWNoZSBBUEldIFVJUHJvY2Vz
cyBzaG91bGQgcHJvdmlkZSB0aGUgZGlyZWN0b3J5IHBhdGggd2hlcmUgdG8gc3RvcmUgQ2FjaGUg
U3RvcmFnZSBkYXRhCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xNzU4ODQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM0MDcyNDQxPgorCisgICAgICAg
IFVucmV2aWV3ZWQuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0FQSVByb2Nlc3NQb29sQ29u
ZmlndXJhdGlvbi5jcHA6CisgICAgICAgIChBUEk6OlByb2Nlc3NQb29sQ29uZmlndXJhdGlvbjo6
UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uKTogRml4aW5nIHR5cG8uCisKIDIwMTctMDgtMjQgIFlv
dWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFtDYWNoZSBBUEldIFVJ
UHJvY2VzcyBzaG91bGQgcHJvdmlkZSB0aGUgZGlyZWN0b3J5IHBhdGggd2hlcmUgdG8gc3RvcmUg
Q2FjaGUgU3RvcmFnZSBkYXRhCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQVBJUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9BUElQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uY3BwCmluZGV4IDg4N2Y1OTVmZjM5
ODVmODU5ZjBjMDgzOWU5OWY1ZjExYWRlZWY0ZjguLjQwNjNhOWRjODhiODgxMmQ3ZGMwZWEzNWIx
MzlmYzVjYWZmYjQ1NTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9B
UElQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9BUElQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uY3BwCkBAIC04MSw3ICs4MSw3IEBA
IFJlZjxQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24+IFByb2Nlc3NQb29sQ29uZmlndXJhdGlvbjo6
Y3JlYXRlV2l0aFdlYnNpdGVEYXRhU3RvCiBQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb246OlByb2Nl
c3NQb29sQ29uZmlndXJhdGlvbigpCiAgICAgOiBtX2FwcGxpY2F0aW9uQ2FjaGVEaXJlY3Rvcnko
V2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdEFwcGxpY2F0aW9uQ2FjaGVEaXJlY3RvcnkoKSkKICAg
ICAsIG1fYXBwbGljYXRpb25DYWNoZUZsYXRGaWxlU3ViZGlyZWN0b3J5TmFtZSgiRmlsZXMiKQot
I2lmIFBMQVRGT1JNKENPQ0EpCisjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgLCBtX2NhY2hlU3Rv
cmFnZURpcmVjdG9yeShXZWJzaXRlRGF0YVN0b3JlOjpkZWZhdWx0Q2FjaGVTdG9yYWdlRGlyZWN0
b3J5KCkpCiAjZW5kaWYKICAgICAsIG1fZGlza0NhY2hlRGlyZWN0b3J5KFdlYnNpdGVEYXRhU3Rv
cmU6OmRlZmF1bHROZXR3b3JrQ2FjaGVEaXJlY3RvcnkoKSkK
</data>

          </attachment>
      

    </bug>

</bugzilla>