<?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>173197</bug_id>
          
          <creation_ts>2017-06-09 18:03:31 -0700</creation_ts>
          <short_desc>[WebCrypto] Remove experimental feature flag of SubtleCrypto</short_desc>
          <delta_ts>2017-06-13 13:05:23 -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="Jiewen Tan">jiewen_tan</reporter>
          <assigned_to name="Jiewen Tan">jiewen_tan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>buildbot</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>jiewen_tan</cc>
    
    <cc>joepeck</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1317742</commentid>
    <comment_count>0</comment_count>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2017-06-09 18:03:31 -0700</bug_when>
    <thetext>Remove experimental feature flag.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1317743</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-06-09 18:04:32 -0700</bug_when>
    <thetext>&lt;rdar://problem/32688148&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1317747</commentid>
    <comment_count>2</comment_count>
      <attachid>312523</attachid>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2017-06-09 18:10:29 -0700</bug_when>
    <thetext>Created attachment 312523
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1317749</commentid>
    <comment_count>3</comment_count>
      <attachid>312524</attachid>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2017-06-09 18:20:37 -0700</bug_when>
    <thetext>Created attachment 312524
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1317826</commentid>
    <comment_count>4</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2017-06-09 20:36:13 -0700</bug_when>
    <thetext>This patch does not contain a reason.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318256</commentid>
    <comment_count>5</comment_count>
      <attachid>312524</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2017-06-12 09:45:11 -0700</bug_when>
    <thetext>Comment on attachment 312524
Patch

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

&gt; Source/WebCore/ChangeLog:7
&gt; +        Reviewed by NOBODY (OOPS!).

Please add a statement like &quot;The SubtleCrypto implementation is no longer experimental and is ready for production use. We are therefore removing the runtime flag.&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318334</commentid>
    <comment_count>6</comment_count>
      <attachid>312524</attachid>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2017-06-12 12:40:16 -0700</bug_when>
    <thetext>Comment on attachment 312524
Patch

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

Thanks Brent for r+ my patch.

&gt;&gt; Source/WebCore/ChangeLog:7
&gt;&gt; +        Reviewed by NOBODY (OOPS!).
&gt; 
&gt; Please add a statement like &quot;The SubtleCrypto implementation is no longer experimental and is ready for production use. We are therefore removing the runtime flag.&quot;

Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318337</commentid>
    <comment_count>7</comment_count>
      <attachid>312686</attachid>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2017-06-12 12:45:01 -0700</bug_when>
    <thetext>Created attachment 312686
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318349</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-06-12 13:26:29 -0700</bug_when>
    <thetext>The commit-queue encountered the following flaky tests while processing attachment 312686:

imported/w3c/web-platform-tests/media-source/mediasource-config-change-mp4-av-audio-bitrate.html bug 173270 (author: jer.noble@apple.com)
The commit-queue is continuing to process your patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318350</commentid>
    <comment_count>9</comment_count>
      <attachid>312686</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-06-12 13:27:04 -0700</bug_when>
    <thetext>Comment on attachment 312686
Patch for landing

Clearing flags on attachment: 312686

Committed r218129: &lt;http://trac.webkit.org/changeset/218129&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318525</commentid>
    <comment_count>10</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-06-12 18:41:47 -0700</bug_when>
    <thetext>Congrats Jiewen!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318698</commentid>
    <comment_count>11</comment_count>
      <attachid>312524</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-06-13 10:14:39 -0700</bug_when>
    <thetext>Comment on attachment 312524
Patch

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

&gt; Source/WebCore/page/Crypto.idl:34
&gt; +    [Conditional=SUBTLE_CRYPTO] readonly attribute SubtleCrypto subtle;

Would it be reasonable to mark this as SecureContext as per the spec.? Ideally, we would mark all WebCrypto API as SecureContext though I&apos;m unclear if we can mark API associated with the deprecated webkitSubtle without breaking web compatibility.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318721</commentid>
    <comment_count>12</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-06-13 11:06:32 -0700</bug_when>
    <thetext>Good catch.

Was webkitSubtle ever web exposed? Are we not able to just remove it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318752</commentid>
    <comment_count>13</comment_count>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2017-06-13 13:04:14 -0700</bug_when>
    <thetext>(In reply to Daniel Bates from comment #11)
&gt; Comment on attachment 312524 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=312524&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/page/Crypto.idl:34
&gt; &gt; +    [Conditional=SUBTLE_CRYPTO] readonly attribute SubtleCrypto subtle;
&gt; 
&gt; Would it be reasonable to mark this as SecureContext as per the spec.?
&gt; Ideally, we would mark all WebCrypto API as SecureContext though I&apos;m unclear
&gt; if we can mark API associated with the deprecated webkitSubtle without
&gt; breaking web compatibility.

We should mark this as SecureContext. See Bug 166959. For the webkitSubtle, I think we shouldn&apos;t.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318753</commentid>
    <comment_count>14</comment_count>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2017-06-13 13:05:23 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #12)
&gt; Good catch.
&gt; 
&gt; Was webkitSubtle ever web exposed? Are we not able to just remove it?

It is web exposed therefore I think we should gradually deprecate it.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>312523</attachid>
            <date>2017-06-09 18:10:29 -0700</date>
            <delta_ts>2017-06-09 18:20:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-173197-20170609181028.patch</filename>
            <type>text/plain</type>
            <size>16252</size>
            <attacher name="Jiewen Tan">jiewen_tan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE3OTU5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2I1MDYyOWMxMWIyY2Zl
MTc1MTNhMWMwYTUwMDAwZjJlMDM5YzY1OS4uNzFmM2FjMDM0YjY5MzRjYjY3YTAwZGFmNWVjMTg0
NGI4NWM3ZWY4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE3LTA2LTA5ICBKaWV3
ZW4gVGFuICA8amlld2VuX3RhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYkNyeXB0b10gUmVt
b3ZlIGV4cGVyaW1lbnRhbCBmZWF0dXJlIGZsYWcgb2YgU3VidGxlQ3J5cHRvCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzMxOTcKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzMyNjg4MTQ4PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIE5vIHRlc3RzLgorCisgICAgICAgICogcGFnZS9DcnlwdG8uaWRsOgor
ICAgICAgICAqIHBhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oOgorICAgICAgICAoV2ViQ29y
ZTo6UnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0U3VidGxlQ3J5cHRvRW5hYmxlZCk6IERlbGV0
ZWQuCisgICAgICAgIChXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzdWJ0bGVDcnlw
dG9FbmFibGVkKTogRGVsZXRlZC4KKwogMjAxNy0wNi0wOCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpA
YXBwbGUuY29tPgogCiAgICAgICAgIFtpT1NdIExvd1Bvd2VyTW9kZU5vdGlmaWVyIG5vdGlmaWVz
IGNsaWVudCBvbiBub24tbWFpbiB0aHJlYWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFj
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwppbmRleCAzZTQ5NThkZDk1
YjZhYzdkZjkzMjY4NDA0NTViZDZlMDdjYzJhYWFiLi43ZTliMmNjZGJhMDllZTVjMjI5NDM4ZjYw
YjdiN2M5MzJlODViMTc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTct
MDYtMDkgIEppZXdlbiBUYW4gIDxqaWV3ZW5fdGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbV2Vi
Q3J5cHRvXSBSZW1vdmUgZXhwZXJpbWVudGFsIGZlYXR1cmUgZmxhZyBvZiBTdWJ0bGVDcnlwdG8K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MzE5Nwor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzI2ODgxNDg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tOgor
ICAgICAgICAoK1tXZWJQcmVmZXJlbmNlcyBpbml0aWFsaXplXSk6CisgICAgICAgICgtW1dlYlBy
ZWZlcmVuY2VzIHN1YnRsZUNyeXB0b0VuYWJsZWRdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV2Vi
UHJlZmVyZW5jZXMgc2V0U3VidGxlQ3J5cHRvRW5hYmxlZDpdKTogRGVsZXRlZC4KKyAgICAgICAg
KiBXZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0ZS5oOgorICAgICAgICAqIFdlYlZpZXcvV2Vi
Vmlldy5tbToKKyAgICAgICAgKC1bV2ViVmlldyBfcHJlZmVyZW5jZXNDaGFuZ2VkOl0pOgorCiAy
MDE3LTA2LTA4ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIENs
aWVudHMgb2YgdGhlIFdLMiBDLUFQSSBkb24ndCBoYXZlIHRoZWlyIG1lZGlhQ29udGVudFR5cGVz
UmVxdWlyaW5nSGFyZHdhcmVTdXBwb3J0IHNldHRpbmcgaW5pdGlhbGl6ZWQgY29ycmVjdGx5Lgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hh
bmdlTG9nCmluZGV4IDAyYTY4ZGFhYzJkNjBmOGM4OTI5MzY5NDQ0ZTU1MTkyODdjM2M4NGIuLjBj
ODg5NjlmMWY5MjM2NTdlNjUwMDY5NWRkOWUzOWNjOTU3YjA1ZDIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMSBAQAorMjAxNy0wNi0wOSAgSmlld2VuIFRhbiAgPGppZXdlbl90YW5AYXBwbGUuY29t
PgorCisgICAgICAgIFtXZWJDcnlwdG9dIFJlbW92ZSBleHBlcmltZW50YWwgZmVhdHVyZSBmbGFn
IG9mIFN1YnRsZUNyeXB0bworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTczMTk3CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zMjY4ODE0OD4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNoYXJlZC9XZWJQ
cmVmZXJlbmNlc0RlZmluaXRpb25zLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLUHJl
ZmVyZW5jZXMuY3BwOgorICAgICAgICAoV0tQcmVmZXJlbmNlc1NldFN1YnRsZUNyeXB0b0VuYWJs
ZWQpOiBEZWxldGVkLgorICAgICAgICAoV0tQcmVmZXJlbmNlc0dldFN1YnRsZUNyeXB0b0VuYWJs
ZWQpOiBEZWxldGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUmVm
UHJpdmF0ZS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRC
dW5kbGUuY3BwOgorICAgICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZTo6b3ZlcnJpZGVCb29s
UHJlZmVyZW5jZUZvclRlc3RSdW5uZXIpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXBkYXRlUHJlZmVyZW5jZXMp
OgorCiAyMDE3LTA2LTA4ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgog
CiAgICAgICAgIENyYXNoIHVuZGVyIC1bV0tXZWJWaWV3IF91cGRhdGVWaXNpYmxlQ29udGVudFJl
Y3RzXQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9DcnlwdG8uaWRsIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9DcnlwdG8uaWRsCmluZGV4IDA1ZGJlZTFmNDY2MTJmYmEzMzZjYjBmODcz
M2U5MzliM2IyNWQ5ZjEuLjI0ZmI1Y2JhOGI5MTE0MGQ3ZDk5NTA1OGM1ZTUyYWI4ZTA4ODUzNTkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ3J5cHRvLmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0NyeXB0by5pZGwKQEAgLTMxLDcgKzMxLDcgQEAKICAgICBFeHBvc2VkPShX
aW5kb3csV29ya2VyKSwKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGxTY3JpcHRFeGVjdXRp
b25Db250ZXh0LAogXSBpbnRlcmZhY2UgQ3J5cHRvIHsKLSAgICBbQ29uZGl0aW9uYWw9U1VCVExF
X0NSWVBUTywgRW5hYmxlZEF0UnVudGltZT1TdWJ0bGVDcnlwdG9dIHJlYWRvbmx5IGF0dHJpYnV0
ZSBTdWJ0bGVDcnlwdG8gc3VidGxlOworICAgIFtDb25kaXRpb25hbD1TVUJUTEVfQ1JZUFRPXSBy
ZWFkb25seSBhdHRyaWJ1dGUgU3VidGxlQ3J5cHRvIHN1YnRsZTsKICAgICBbQ3VzdG9tLCBNYXlU
aHJvd0V4Y2VwdGlvbl0gQXJyYXlCdWZmZXJWaWV3IGdldFJhbmRvbVZhbHVlcyhBcnJheUJ1ZmZl
clZpZXcgYXJyYXkpOwogCiAgICAgLy8gV2lsbCBiZSBkZXByZWNhdGVkLgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAppbmRleCBlMzI2ZTY3ODA5MGI3ZTFj
ZTE0OWI1ZDdhNDVlYjY4MGRhN2MwMmZkLi5lNzMwZmM3NmVjNjViMDczMzczZmYxMGIwMjUxM2Vm
YzUwNjg4ZmY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1J1bnRpbWVFbmFibGVk
RmVhdHVyZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1J1bnRpbWVFbmFibGVkRmVhdHVy
ZXMuaApAQCAtMTg4LDExICsxODgsNiBAQCBwdWJsaWM6CiAgICAgYm9vbCBlbmNyeXB0ZWRNZWRp
YUFQSUVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2VuY3J5cHRlZE1lZGlhQVBJRW5hYmxlZDsg
fQogI2VuZGlmCiAKLSNpZiBFTkFCTEUoU1VCVExFX0NSWVBUTykKLSAgICB2b2lkIHNldFN1YnRs
ZUNyeXB0b0VuYWJsZWQoYm9vbCBpc0VuYWJsZWQpIHsgbV9pc1N1YnRsZUNyeXB0b0VuYWJsZWQg
PSBpc0VuYWJsZWQ7IH0KLSAgICBib29sIHN1YnRsZUNyeXB0b0VuYWJsZWQoKSBjb25zdCB7IHJl
dHVybiBtX2lzU3VidGxlQ3J5cHRvRW5hYmxlZDsgfQotI2VuZGlmCi0KICNpZiBFTkFCTEUoVklE
RU8pCiAgICAgYm9vbCBhdWRpb0VuYWJsZWQoKSBjb25zdDsKICNlbmRpZgpAQCAtMzA1LDEwICsz
MDAsNiBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9pbnRlcnNlY3Rpb25PYnNlcnZlckVuYWJsZWQg
eyBmYWxzZSB9OwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoU1VCVExFX0NSWVBUTykKLSAgICBib29s
IG1faXNTdWJ0bGVDcnlwdG9FbmFibGVkIHsgdHJ1ZSB9OwotI2VuZGlmCi0KICAgICBmcmllbmQg
Y2xhc3MgV1RGOjpOZXZlckRlc3Ryb3llZDxSdW50aW1lRW5hYmxlZEZlYXR1cmVzPjsKIH07CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0g
Yi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tCmluZGV4IDM0MDUy
YjM2NTA5OWVkZGZmM2I0N2YyNmNhMDAxZDQ2MTcwNjU4MDYuLjgzNjZmYTljZTA5MThjN2Q0ZWIx
NTJiODQ5YWI0NjAyMTFkYjg3MjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZp
ZXcvV2ViUHJlZmVyZW5jZXMubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQ
cmVmZXJlbmNlcy5tbQpAQCAtNjUyLDkgKzY1Miw2IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2Vu
ZGlmCiAKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29sOllFU10sIFdlYktpdE5lZWRz
U3RvcmFnZUFjY2Vzc0Zyb21GaWxlVVJMc1F1aXJrS2V5LAotI2lmIEVOQUJMRShTVUJUTEVfQ1JZ
UFRPKQotICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6WUVTXSwgV2ViS2l0U3VidGxl
Q3J5cHRvRW5hYmxlZFByZWZlcmVuY2VLZXksCi0jZW5kaWYKICNpZiBFTkFCTEUoTUVESUFfU1RS
RUFNKQogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6Tk9dLCBXZWJLaXRNZWRpYURl
dmljZXNFbmFibGVkUHJlZmVyZW5jZUtleSwKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhC
b29sOllFU10sIFdlYktpdE1lZGlhU3RyZWFtRW5hYmxlZFByZWZlcmVuY2VLZXksCkBAIC0yNzU1
LDE2ICsyNzUyLDYgQEAgLSAodm9pZClzZXRNZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5OihOU1N0
cmluZyAqKWRpcmVjdG9yeQogICAgIFtzZWxmIF9zZXRTdHJpbmdWYWx1ZTpkaXJlY3RvcnkgZm9y
S2V5OldlYktpdE1lZGlhS2V5c1N0b3JhZ2VEaXJlY3RvcnlLZXldOwogfQogCi0tIChCT09MKXN1
YnRsZUNyeXB0b0VuYWJsZWQKLXsKLSAgICByZXR1cm4gW3NlbGYgX2Jvb2xWYWx1ZUZvcktleTpX
ZWJLaXRTdWJ0bGVDcnlwdG9FbmFibGVkUHJlZmVyZW5jZUtleV07Ci19Ci0KLS0gKHZvaWQpc2V0
U3VidGxlQ3J5cHRvRW5hYmxlZDooQk9PTClmbGFnCi17Ci0gICAgW3NlbGYgX3NldEJvb2xWYWx1
ZTpmbGFnIGZvcktleTpXZWJLaXRTdWJ0bGVDcnlwdG9FbmFibGVkUHJlZmVyZW5jZUtleV07Ci19
Ci0KIC0gKEJPT0wpbWVkaWFEZXZpY2VzRW5hYmxlZAogewogICAgIHJldHVybiBbc2VsZiBfYm9v
bFZhbHVlRm9yS2V5OldlYktpdE1lZGlhRGV2aWNlc0VuYWJsZWRQcmVmZXJlbmNlS2V5XTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRl
LmggYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0ZS5oCmlu
ZGV4IGNmZDYzYmZmNmJmNWIyNGFiMWM2ZDdkY2JhYzRmZTk1MWIyY2M1NGYuLjU5MmYzMDg4ZmI3
MmRjMjUyMGFjZDc4ZTVmOWUwZTJlOTllYmMyYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
bWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9t
YWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlc1ByaXZhdGUuaApAQCAtMTU5LDkgKzE1OSw2IEBAIGV4
dGVybiBOU1N0cmluZyAqV2ViUHJlZmVyZW5jZXNDYWNoZU1vZGVsQ2hhbmdlZEludGVybmFsTm90
aWZpY2F0aW9uOwogLSAoQk9PTClpc1NwYXRpYWxOYXZpZ2F0aW9uRW5hYmxlZDsKIC0gKHZvaWQp
c2V0U3BhdGlhbE5hdmlnYXRpb25FbmFibGVkOihCT09MKWZsYWc7CiAKLS0gKHZvaWQpc2V0U3Vi
dGxlQ3J5cHRvRW5hYmxlZDooQk9PTClmbGFnOwotLSAoQk9PTClzdWJ0bGVDcnlwdG9FbmFibGVk
OwotCiAtICh2b2lkKXNldE1lZGlhRGV2aWNlc0VuYWJsZWQ6KEJPT0wpZmxhZzsKIC0gKEJPT0wp
bWVkaWFEZXZpY2VzRW5hYmxlZDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2Vi
Vmlldy9XZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCmlu
ZGV4IDgyY2M2NzA1YjdjYzQ2ODEwMDUzNTc1YThjZTcxZjQwYjlmMTFhZmYuLjVjZWMyMzhkZTYx
ZGM2YmE0NTgzNDJiYjY4MmI4MDI4ODdiZjJjNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
bWFjL1dlYlZpZXcvV2ViVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dl
YlZpZXcubW0KQEAgLTMwNTIsMTAgKzMwNTIsNiBAQCAtICh2b2lkKV9wcmVmZXJlbmNlc0NoYW5n
ZWQ6KFdlYlByZWZlcmVuY2VzICopcHJlZmVyZW5jZXMKICNlbmRpZgogICAgIFJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0RGlzcGxheUNvbnRlbnRzRW5hYmxlZChw
cmVmZXJlbmNlcy5kaXNwbGF5Q29udGVudHNFbmFibGVkKTsKIAotI2lmIEVOQUJMRShTVUJUTEVf
Q1JZUFRPKQotICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0
U3VidGxlQ3J5cHRvRW5hYmxlZChbcHJlZmVyZW5jZXMgc3VidGxlQ3J5cHRvRW5hYmxlZF0pOwot
I2VuZGlmCi0KICAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNl
dFVzZXJUaW1pbmdFbmFibGVkKHByZWZlcmVuY2VzLnVzZXJUaW1pbmdFbmFibGVkKTsKICAgICBS
dW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldFJlc291cmNlVGltaW5n
RW5hYmxlZChwcmVmZXJlbmNlcy5yZXNvdXJjZVRpbWluZ0VuYWJsZWQpOwogICAgIFJ1bnRpbWVF
bmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0TGlua1ByZWxvYWRFbmFibGVkKHBy
ZWZlcmVuY2VzLmxpbmtQcmVsb2FkRW5hYmxlZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNEZWZpbml0aW9ucy5oIGIvU291cmNlL1dlYktpdDIvU2hh
cmVkL1dlYlByZWZlcmVuY2VzRGVmaW5pdGlvbnMuaAppbmRleCBjNDgyZjU3ZWRlNDM1N2EyOTA1
ZDNlM2U0MmQ5ZjkxMWRjYzUyZjYzLi43MjEzODZkMTczODllZWUxNjRhYWVjYzg1MmE1ODE2ZDJj
NTQ1N2RmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNE
ZWZpbml0aW9ucy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc0Rl
ZmluaXRpb25zLmgKQEAgLTM1NSw3ICszNTUsNiBAQAogICAgIG1hY3JvKENvbnN0YW50UHJvcGVy
dGllc0VuYWJsZWQsIGNvbnN0YW50UHJvcGVydGllc0VuYWJsZWQsIEJvb2wsIGJvb2wsIERFRkFV
TFRfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTX0VOQUJMRUQsICJDb25zdGFudCBQcm9wZXJ0aWVzIiwg
IkVuYWJsZSBDU1MgY29uc3RhbnQoKSBwcm9wZXJ0aWVzIikgXAogICAgIG1hY3JvKFNwcmluZ1Rp
bWluZ0Z1bmN0aW9uRW5hYmxlZCwgc3ByaW5nVGltaW5nRnVuY3Rpb25FbmFibGVkLCBCb29sLCBi
b29sLCBERUZBVUxUX0VYUEVSSU1FTlRBTF9GRUFUVVJFU19FTkFCTEVELCAiQ1NTIFNwcmluZyBB
bmltYXRpb25zIiwgIkNTUyBTcHJpbmcgQW5pbWF0aW9uIHByb3RvdHlwZSIpIFwKICAgICBtYWNy
byhMaW5rUHJlbG9hZEVuYWJsZWQsIGxpbmtQcmVsb2FkRW5hYmxlZCwgQm9vbCwgYm9vbCwgREVG
QVVMVF9FWFBFUklNRU5UQUxfRkVBVFVSRVNfRU5BQkxFRCwgIkxpbmsgUHJlbG9hZCIsICJMaW5r
IHByZWxvYWQgc3VwcG9ydCIpIFwKLSAgICBtYWNybyhTdWJ0bGVDcnlwdG9FbmFibGVkLCBzdWJ0
bGVDcnlwdG9FbmFibGVkLCBCb29sLCBib29sLCBERUZBVUxUX0VYUEVSSU1FTlRBTF9GRUFUVVJF
U19FTkFCTEVELCAiU3VidGxlQ3J5cHRvIiwgIkVuYWJsZSBTdWJ0bGVDcnlwdG8gc3VwcG9ydCIp
IFwKICAgICBtYWNybyhWaWV3cG9ydEZpdEVuYWJsZWQsIHZpZXdwb3J0Rml0RW5hYmxlZCwgQm9v
bCwgYm9vbCwgREVGQVVMVF9FWFBFUklNRU5UQUxfRkVBVFVSRVNfRU5BQkxFRCwgIlZpZXdwb3J0
IEZpdCIsICJFbmFibGUgdmlld3BvcnQtZml0IHZpZXdwb3J0IHBhcmFtZXRlciIpIFwKICAgICBt
YWNybyhXZWJBbmltYXRpb25zRW5hYmxlZCwgd2ViQW5pbWF0aW9uc0VuYWJsZWQsIEJvb2wsIGJv
b2wsIGZhbHNlLCAiV2ViIEFuaW1hdGlvbnMiLCAiV2ViIEFuaW1hdGlvbnMgcHJvdG90eXBlIikg
XAogICAgIG1hY3JvKFdlYkdMMkVuYWJsZWQsIHdlYkdMMkVuYWJsZWQsIEJvb2wsIGJvb2wsIGZh
bHNlLCAiV2ViR0wgMi4wIiwgIldlYkdMIDIgcHJvdG90eXBlIikgXApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCmluZGV4IDllMmZmZDMxNGI0
ZDdmYzMxNzJmYjRhNzMxM2ZiMjlhMmYyOGE1ZmUuLmY4ZjgyNTQ4Yjk2MTlmNDcwMTI4NGEwNTYx
ZjQ3NDM4NjhiM2NjZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Qy9XS1ByZWZlcmVuY2VzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0Mv
V0tQcmVmZXJlbmNlcy5jcHAKQEAgLTE3MTEsMTYgKzE3MTEsNiBAQCB2b2lkIFdLUHJlZmVyZW5j
ZXNTZXRBcHBsZVBheUNhcGFiaWxpdHlEaXNjbG9zdXJlQWxsb3dlZChXS1ByZWZlcmVuY2VzUmVm
IHByZWZlcgogICAgIFdlYktpdDo6dG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+c2V0QXBwbGVQYXlD
YXBhYmlsaXR5RGlzY2xvc3VyZUFsbG93ZWQoYWxsb3dlZCk7CiB9CiAKLXZvaWQgV0tQcmVmZXJl
bmNlc1NldFN1YnRsZUNyeXB0b0VuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1Jl
ZiwgYm9vbCBmbGFnKQotewotICAgIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnNldFN1YnRsZUNy
eXB0b0VuYWJsZWQoZmxhZyk7Ci19Ci0KLWJvb2wgV0tQcmVmZXJlbmNlc0dldFN1YnRsZUNyeXB0
b0VuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZikKLXsKLSAgICByZXR1cm4g
dG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+c3VidGxlQ3J5cHRvRW5hYmxlZCgpOwotfQotCiB2b2lk
IFdLUHJlZmVyZW5jZXNTZXRMaW5rUHJlbG9hZEVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVm
ZXJlbmNlc1JlZiwgYm9vbCBmbGFnKQogewogICAgIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnNl
dExpbmtQcmVsb2FkRW5hYmxlZChmbGFnKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzUmVmUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNSZWZQcml2YXRlLmgKaW5kZXggNWQxZjU1OWM2
YzBlOTY2N2ZkN2M5OWNkNGNkNTE1NWUxNGFkOTUxZS4uYjMyODE1Njc5Yjc0NzU4MDY0OTZkMzlj
Njk2MzlhMmU0YWMzMGIzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9DL1dLUHJlZmVyZW5jZXNSZWZQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNSZWZQcml2YXRlLmgKQEAgLTQ2NSwxMCArNDY1LDYgQEAg
V0tfRVhQT1JUIGJvb2wgV0tQcmVmZXJlbmNlc0dldFVzZXJUaW1pbmdFbmFibGVkKFdLUHJlZmVy
ZW5jZXNSZWYpOwogV0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNlc1NldFJlc291cmNlVGltaW5n
RW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmLCBib29sIGZsYWcpOwogV0tfRVhQT1JUIGJvb2wgV0tQ
cmVmZXJlbmNlc0dldFJlc291cmNlVGltaW5nRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmKTsKIAot
Ly8gRGVmYXVsdHMgdG8gdHJ1ZQotV0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNlc1NldFN1YnRs
ZUNyeXB0b0VuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiwgYm9vbCBmbGFnKTsKLVdLX0VYUE9SVCBi
b29sIFdLUHJlZmVyZW5jZXNHZXRTdWJ0bGVDcnlwdG9FbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYp
OwotCiAvLyBEZWZhdWx0cyB0byB0cnVlLgogV0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNlc1Nl
dExhcmdlSW1hZ2VBc3luY0RlY29kaW5nRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVu
Y2VzUmVmLCBib29sIGZsYWcpOwogV0tfRVhQT1JUIGJvb2wgV0tQcmVmZXJlbmNlc0dldExhcmdl
SW1hZ2VBc3luY0RlY29kaW5nRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVm
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUv
SW5qZWN0ZWRCdW5kbGUuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1
bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAKaW5kZXggNjFkOWNjMDdjOGU4OTBhOTMwOTgxZmM3YTg0
NDk0MzNiNDExOGU1ZC4uMWJhYjNjYjM4ZGM0YTg1MjkxMDI1YTNlODE5NjAzNTMwNjJkODQ0NiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9Jbmpl
Y3RlZEJ1bmRsZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1
bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAKQEAgLTIxNCwxMSArMjE0LDYgQEAgdm9pZCBJbmplY3Rl
ZEJ1bmRsZTo6b3ZlcnJpZGVCb29sUHJlZmVyZW5jZUZvclRlc3RSdW5uZXIoV2ViUGFnZUdyb3Vw
UHJveHkqIHBhZ2UKICAgICAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVy
ZXMoKS5zZXRFbmNyeXB0ZWRNZWRpYUFQSUVuYWJsZWQoZW5hYmxlZCk7CiAjZW5kaWYKIAotI2lm
IEVOQUJMRShTVUJUTEVfQ1JZUFRPKQotICAgIGlmIChwcmVmZXJlbmNlID09ICJXZWJLaXRTdWJ0
bGVDcnlwdG9FbmFibGVkIikKLSAgICAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVk
RmVhdHVyZXMoKS5zZXRTdWJ0bGVDcnlwdG9FbmFibGVkKGVuYWJsZWQpOwotI2VuZGlmCi0KICNp
ZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogICAgIGlmIChwcmVmZXJlbmNlID09ICJXZWJLaXRNZWRp
YURldmljZXNFbmFibGVkIikKICAgICAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVk
RmVhdHVyZXMoKS5zZXRNZWRpYURldmljZXNFbmFibGVkKGVuYWJsZWQpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IGJkOGU1ZGU1YWIwOWFk
ZjQwMTI1ZDliZWI2ZDMyMGE2NTk0Y2Q1NGMuLjU3MTNiNDBhNTljYzc4N2Q2MDZmYjAxM2FkMTMw
MzA1OWQ2MGE0M2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5jcHAKQEAgLTMzNzEsMTAgKzMzNzEsNiBAQCB2b2lkIFdlYlBhZ2U6OnVwZGF0ZVByZWZl
cmVuY2VzKGNvbnN0IFdlYlByZWZlcmVuY2VzU3RvcmUmIHN0b3JlKQogICAgICAgICB1cGRhdGVU
aHJvdHRsZVN0YXRlKCk7CiAgICAgfQogCi0jaWYgRU5BQkxFKFNVQlRMRV9DUllQVE8pCi0gICAg
UnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRTdWJ0bGVDcnlwdG9F
bmFibGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6c3VidGxl
Q3J5cHRvRW5hYmxlZEtleSgpKSk7Ci0jZW5kaWYKLQogICAgIHBsYXRmb3JtUHJlZmVyZW5jZXNE
aWRDaGFuZ2Uoc3RvcmUpOwogCiAgICAgaWYgKG1fZHJhd2luZ0FyZWEpCmRpZmYgLS1naXQgYS9U
b29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYjQ2MWViYmVkMTVlOGJkNTAy
NzU1YzRlMDNjZDNiMmNmMTdlZTcwMi4uYTQ4NjRhM2Q4NmQ4ZTg4ZWFhYjZlOGU2YjY4MjUwNmRi
MTc2MTRkOSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE5IEBACisyMDE3LTA2LTA5ICBKaWV3ZW4gVGFuICA8amlld2VuX3RhbkBh
cHBsZS5jb20+CisKKyAgICAgICAgW1dlYkNyeXB0b10gUmVtb3ZlIGV4cGVyaW1lbnRhbCBmZWF0
dXJlIGZsYWcgb2YgU3VidGxlQ3J5cHRvCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNzMxOTcKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzMyNjg4MTQ4
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogRHVt
cFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlLm1tOgorICAgICAgICAoZW5hYmxlRXhwZXJp
bWVudGFsRmVhdHVyZXMpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5k
bGUvSW5qZWN0ZWRCdW5kbGUuY3BwOgorICAgICAgICAoV1RSOjpJbmplY3RlZEJ1bmRsZTo6YmVn
aW5UZXN0aW5nKToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rl
c3RSdW5uZXIuY3BwOgorICAgICAgICAoV1RSOjpUZXN0UnVubmVyOjpzZXRTdWJ0bGVDcnlwdG9F
bmFibGVkKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVu
ZGxlL1Rlc3RSdW5uZXIuaDoKKwogMjAxNy0wNi0wOCAgSm9uYXRoYW4gQmVkYXJkICA8amJlZGFy
ZEBhcHBsZS5jb20+CiAKICAgICAgICAgd2Via2l0cHk6IFJ1biBzYW1wbGUvc3BpbmR1bXAgb24g
aU9TIGRldmljZXMKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVu
ZGVyVHJlZS5tbSBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5tbQpp
bmRleCBhOWYyMDAzOWU4N2E5NGNlN2QyZmNhMWRlOGY4MzhhMzI1OTI4NzY5Li44YjY1MTQ1Mjky
YWE1YmMzOWQ2N2M0MDQzOGQyZmVmODhhNjZhZDQ3IDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVu
ZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUubW0KKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUv
bWFjL0R1bXBSZW5kZXJUcmVlLm1tCkBAIC04NDUsNyArODQ1LDYgQEAgc3RhdGljIHZvaWQgZW5h
YmxlRXhwZXJpbWVudGFsRmVhdHVyZXMoV2ViUHJlZmVyZW5jZXMqIHByZWZlcmVuY2VzKQogICAg
IFtwcmVmZXJlbmNlcyBzZXRMaW5rUHJlbG9hZEVuYWJsZWQ6WUVTXTsKICAgICBbcHJlZmVyZW5j
ZXMgc2V0TWVkaWFQcmVsb2FkaW5nRW5hYmxlZDpZRVNdOwogICAgIC8vIEZJWE1FOiBJbnB1dEV2
ZW50cwotICAgIFtwcmVmZXJlbmNlcyBzZXRTdWJ0bGVDcnlwdG9FbmFibGVkOllFU107CiAgICAg
W3ByZWZlcmVuY2VzIHNldFdlYkFuaW1hdGlvbnNFbmFibGVkOllFU107CiAgICAgW3ByZWZlcmVu
Y2VzIHNldFdlYkdMMkVuYWJsZWQ6WUVTXTsKICAgICBbcHJlZmVyZW5jZXMgc2V0V2ViR1BVRW5h
YmxlZDpZRVNdOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1
bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVk
QnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcAppbmRleCBhNzI3YjI0ZGM1NDRmN2FkODcyMzQ2NGI4
YzM2ODI5ZjgxNmMwOTk2Li44OTNiMjI3ZTI4ODFjYjUxNmU0MjliMGE5ZTcwZGU3YWViMGIwMDNi
IDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0luamVj
dGVkQnVuZGxlLmNwcAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxl
L0luamVjdGVkQnVuZGxlLmNwcApAQCAtMzQ3LDggKzM0Nyw2IEBAIHZvaWQgSW5qZWN0ZWRCdW5k
bGU6OmJlZ2luVGVzdGluZyhXS0RpY3Rpb25hcnlSZWYgc2V0dGluZ3MpCiAgICAgbV90ZXN0UnVu
bmVyLT5zZXRUYWJLZXlDeWNsZXNUaHJvdWdoRWxlbWVudHModHJ1ZSk7CiAgICAgbV90ZXN0UnVu
bmVyLT5jbGVhclRlc3RSdW5uZXJDYWxsYmFja3MoKTsKIAotICAgIG1fdGVzdFJ1bm5lci0+c2V0
U3VidGxlQ3J5cHRvRW5hYmxlZCh0cnVlKTsKLQogICAgIGlmIChtX3RpbWVvdXQgPiAwKQogICAg
ICAgICBtX3Rlc3RSdW5uZXItPnNldEN1c3RvbVRpbWVvdXQobV90aW1lb3V0KTsKIApkaWZmIC0t
Z2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmNw
cCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5jcHAK
aW5kZXggZTFmMmNiZjE5NGU5MmFjZWZiN2ZmZTZhOTMzZjI2Y2I5ZWE1MWJmNS4uNDM1NDQzZTMy
MzExMjA2NDcyMTAzMmNkOTMwYWRmNDJiNDgwYzI4OCAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0
VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmNwcAorKysgYi9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuY3BwCkBAIC0zNTMsMTMgKzM1
Myw2IEBAIHZvaWQgVGVzdFJ1bm5lcjo6c2V0WFNTQXVkaXRvckVuYWJsZWQoYm9vbCBlbmFibGVk
KQogICAgIFdLQnVuZGxlT3ZlcnJpZGVCb29sUHJlZmVyZW5jZUZvclRlc3RSdW5uZXIoaW5qZWN0
ZWRCdW5kbGUuYnVuZGxlKCksIGluamVjdGVkQnVuZGxlLnBhZ2VHcm91cCgpLCBrZXkuZ2V0KCks
IGVuYWJsZWQpOwogfQogCi12b2lkIFRlc3RSdW5uZXI6OnNldFN1YnRsZUNyeXB0b0VuYWJsZWQo
Ym9vbCBlbmFibGVkKQotewotICAgIFdLUmV0YWluUHRyPFdLU3RyaW5nUmVmPiBrZXkoQWRvcHRX
SywgV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoIldlYktpdFN1YnRsZUNyeXB0b0VuYWJs
ZWQiKSk7Ci0gICAgYXV0byYgaW5qZWN0ZWRCdW5kbGUgPSBJbmplY3RlZEJ1bmRsZTo6c2luZ2xl
dG9uKCk7Ci0gICAgV0tCdW5kbGVPdmVycmlkZUJvb2xQcmVmZXJlbmNlRm9yVGVzdFJ1bm5lcihp
bmplY3RlZEJ1bmRsZS5idW5kbGUoKSwgaW5qZWN0ZWRCdW5kbGUucGFnZUdyb3VwKCksIGtleS5n
ZXQoKSwgZW5hYmxlZCk7Ci19Ci0KIHZvaWQgVGVzdFJ1bm5lcjo6c2V0TWVkaWFEZXZpY2VzRW5h
YmxlZChib29sIGVuYWJsZWQpCiB7CiAgICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+IGtleShB
ZG9wdFdLLCBXS1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygiV2ViS2l0TWVkaWFEZXZpY2Vz
RW5hYmxlZCIpKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRC
dW5kbGUvVGVzdFJ1bm5lci5oIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRs
ZS9UZXN0UnVubmVyLmgKaW5kZXggYjk2MTAwMzI5NjcxODE2NWI1YTI0NzVkZjQyMTE5NDg5NTdi
OTNkZi4uZTljNGVhYTQwNjNiODRlYTE1MzBjZDc2OTcwYmM3OTkwNWI2Y2VjNSAxMDA2NDQKLS0t
IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmgKKysr
IGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmgKQEAg
LTEyNyw3ICsxMjcsNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRBc3luY2hyb25vdXNTcGVsbENo
ZWNraW5nRW5hYmxlZChib29sKTsKICAgICB2b2lkIHNldEFsbG93c0FueVNTTENlcnRpZmljYXRl
KGJvb2wpOwogICAgIHZvaWQgc2V0RW5jcnlwdGVkTWVkaWFBUElFbmFibGVkKGJvb2wpOwotICAg
IHZvaWQgc2V0U3VidGxlQ3J5cHRvRW5hYmxlZChib29sKTsKICAgICB2b2lkIHNldE1lZGlhRGV2
aWNlc0VuYWJsZWQoYm9vbCk7CiAgICAgdm9pZCBzZXRXZWJSVENMZWdhY3lBUElFbmFibGVkKGJv
b2wpOwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>312524</attachid>
            <date>2017-06-09 18:20:37 -0700</date>
            <delta_ts>2017-06-12 09:45:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-173197-20170609182037.patch</filename>
            <type>text/plain</type>
            <size>16274</size>
            <attacher name="Jiewen Tan">jiewen_tan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE4MDMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWUxMmU1YzRkMmI5NTZm
NDE1ODZjNzFiZGE5N2UyMDJkMWVkMTVmZS4uOWU0ZWEyNjdhYWJmNTU1NmFlODQyMzhhODAzYjc2
Y2JkYjM4M2M3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE3LTA2LTA5ICBKaWV3
ZW4gVGFuICA8amlld2VuX3RhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYkNyeXB0b10gUmVt
b3ZlIGV4cGVyaW1lbnRhbCBmZWF0dXJlIGZsYWcgb2YgU3VidGxlQ3J5cHRvCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzMxOTcKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzMyNjg4MTQ4PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIE5vIHRlc3RzLgorCisgICAgICAgICogcGFnZS9DcnlwdG8uaWRsOgor
ICAgICAgICAqIHBhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oOgorICAgICAgICAoV2ViQ29y
ZTo6UnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0U3VidGxlQ3J5cHRvRW5hYmxlZCk6IERlbGV0
ZWQuCisgICAgICAgIChXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzdWJ0bGVDcnlw
dG9FbmFibGVkKTogRGVsZXRlZC4KKwogMjAxNy0wNi0wOSAgUnlhbiBIYWRkYWQgIDxyeWFuaGFk
ZGFkQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjE4MDAz
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktp
dC9tYWMvQ2hhbmdlTG9nCmluZGV4IDM2Mjg4MjlkZDNmZDdkOGRiMDhjNmViODJmNTE1YTkyYjRh
ZGRkNGMuLjY3OWZjMzUxMzNlMjVhNzk5NGViMmM4OTRjZjkyZWNhNTZhYmFiNTYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxNy0wNi0wOSAgSmlld2VuIFRhbiAgPGppZXdl
bl90YW5AYXBwbGUuY29tPgorCisgICAgICAgIFtXZWJDcnlwdG9dIFJlbW92ZSBleHBlcmltZW50
YWwgZmVhdHVyZSBmbGFnIG9mIFN1YnRsZUNyeXB0bworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTczMTk3CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8z
MjY4ODE0OD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIFdlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW06CisgICAgICAgICgrW1dlYlByZWZlcmVuY2Vz
IGluaXRpYWxpemVdKToKKyAgICAgICAgKC1bV2ViUHJlZmVyZW5jZXMgc3VidGxlQ3J5cHRvRW5h
YmxlZF0pOiBEZWxldGVkLgorICAgICAgICAoLVtXZWJQcmVmZXJlbmNlcyBzZXRTdWJ0bGVDcnlw
dG9FbmFibGVkOl0pOiBEZWxldGVkLgorICAgICAgICAqIFdlYlZpZXcvV2ViUHJlZmVyZW5jZXNQ
cml2YXRlLmg6CisgICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJW
aWV3IF9wcmVmZXJlbmNlc0NoYW5nZWQ6XSk6CisKIDIwMTctMDYtMDkgIFdlbnNvbiBIc2llaCAg
PHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgW2lPUyBEbkRdIEFkZCBhIGhvb2sg
dG8gcGVyZm9ybSB0d28tc3RlcCBkcm9wcyBpbiBlZGl0YWJsZSBjb250ZW50CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5k
ZXggZmE1YzE3YmU2MWI5NDNlMTYzY2Q0ZmRiZTQxNjkwMTYzN2EwOWZjMC4uZTY5NTkwNmE2OTU2
MDU0Y2NhYzhjODY0ZjU5NWVmYzQ5MTQyN2M4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIv
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBA
CisyMDE3LTA2LTA5ICBKaWV3ZW4gVGFuICA8amlld2VuX3RhbkBhcHBsZS5jb20+CisKKyAgICAg
ICAgW1dlYkNyeXB0b10gUmVtb3ZlIGV4cGVyaW1lbnRhbCBmZWF0dXJlIGZsYWcgb2YgU3VidGxl
Q3J5cHRvCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
NzMxOTcKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzMyNjg4MTQ4PgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2hhcmVkL1dlYlByZWZlcmVuY2Vz
RGVmaW5pdGlvbnMuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5j
cHA6CisgICAgICAgIChXS1ByZWZlcmVuY2VzU2V0U3VidGxlQ3J5cHRvRW5hYmxlZCk6IERlbGV0
ZWQuCisgICAgICAgIChXS1ByZWZlcmVuY2VzR2V0U3VidGxlQ3J5cHRvRW5hYmxlZCk6IERlbGV0
ZWQuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNSZWZQcml2YXRlLmg6
CisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHA6
CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxlOjpvdmVycmlkZUJvb2xQcmVmZXJlbmNl
Rm9yVGVzdFJ1bm5lcik6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1cGRhdGVQcmVmZXJlbmNlcyk6CisKIDIwMTct
MDYtMDkgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBVc2UgV1RG
OjpGdW5jdGlvbiBpbnN0ZWFkIG9mIHN0ZDo6ZnVuY3Rpb24gaW4gTmV0d29ya1Byb2Nlc3MgY29k
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9DcnlwdG8uaWRsIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9DcnlwdG8uaWRsCmluZGV4IDA1ZGJlZTFmNDY2MTJmYmEzMzZjYjBmODczM2U5
MzliM2IyNWQ5ZjEuLjI0ZmI1Y2JhOGI5MTE0MGQ3ZDk5NTA1OGM1ZTUyYWI4ZTA4ODUzNTkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ3J5cHRvLmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0NyeXB0by5pZGwKQEAgLTMxLDcgKzMxLDcgQEAKICAgICBFeHBvc2VkPShXaW5k
b3csV29ya2VyKSwKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGxTY3JpcHRFeGVjdXRpb25D
b250ZXh0LAogXSBpbnRlcmZhY2UgQ3J5cHRvIHsKLSAgICBbQ29uZGl0aW9uYWw9U1VCVExFX0NS
WVBUTywgRW5hYmxlZEF0UnVudGltZT1TdWJ0bGVDcnlwdG9dIHJlYWRvbmx5IGF0dHJpYnV0ZSBT
dWJ0bGVDcnlwdG8gc3VidGxlOworICAgIFtDb25kaXRpb25hbD1TVUJUTEVfQ1JZUFRPXSByZWFk
b25seSBhdHRyaWJ1dGUgU3VidGxlQ3J5cHRvIHN1YnRsZTsKICAgICBbQ3VzdG9tLCBNYXlUaHJv
d0V4Y2VwdGlvbl0gQXJyYXlCdWZmZXJWaWV3IGdldFJhbmRvbVZhbHVlcyhBcnJheUJ1ZmZlclZp
ZXcgYXJyYXkpOwogCiAgICAgLy8gV2lsbCBiZSBkZXByZWNhdGVkLgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAppbmRleCBlMzI2ZTY3ODA5MGI3ZTFjZTE0
OWI1ZDdhNDVlYjY4MGRhN2MwMmZkLi5lNzMwZmM3NmVjNjViMDczMzczZmYxMGIwMjUxM2VmYzUw
Njg4ZmY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1J1bnRpbWVFbmFibGVkRmVh
dHVyZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMu
aApAQCAtMTg4LDExICsxODgsNiBAQCBwdWJsaWM6CiAgICAgYm9vbCBlbmNyeXB0ZWRNZWRpYUFQ
SUVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2VuY3J5cHRlZE1lZGlhQVBJRW5hYmxlZDsgfQog
I2VuZGlmCiAKLSNpZiBFTkFCTEUoU1VCVExFX0NSWVBUTykKLSAgICB2b2lkIHNldFN1YnRsZUNy
eXB0b0VuYWJsZWQoYm9vbCBpc0VuYWJsZWQpIHsgbV9pc1N1YnRsZUNyeXB0b0VuYWJsZWQgPSBp
c0VuYWJsZWQ7IH0KLSAgICBib29sIHN1YnRsZUNyeXB0b0VuYWJsZWQoKSBjb25zdCB7IHJldHVy
biBtX2lzU3VidGxlQ3J5cHRvRW5hYmxlZDsgfQotI2VuZGlmCi0KICNpZiBFTkFCTEUoVklERU8p
CiAgICAgYm9vbCBhdWRpb0VuYWJsZWQoKSBjb25zdDsKICNlbmRpZgpAQCAtMzA1LDEwICszMDAs
NiBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9pbnRlcnNlY3Rpb25PYnNlcnZlckVuYWJsZWQgeyBm
YWxzZSB9OwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoU1VCVExFX0NSWVBUTykKLSAgICBib29sIG1f
aXNTdWJ0bGVDcnlwdG9FbmFibGVkIHsgdHJ1ZSB9OwotI2VuZGlmCi0KICAgICBmcmllbmQgY2xh
c3MgV1RGOjpOZXZlckRlc3Ryb3llZDxSdW50aW1lRW5hYmxlZEZlYXR1cmVzPjsKIH07CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXMubW0gYi9T
b3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tCmluZGV4IDM0MDUyYjM2
NTA5OWVkZGZmM2I0N2YyNmNhMDAxZDQ2MTcwNjU4MDYuLjgzNjZmYTljZTA5MThjN2Q0ZWIxNTJi
ODQ5YWI0NjAyMTFkYjg3MjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcv
V2ViUHJlZmVyZW5jZXMubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVm
ZXJlbmNlcy5tbQpAQCAtNjUyLDkgKzY1Miw2IEBAICsgKHZvaWQpaW5pdGlhbGl6ZQogI2VuZGlm
CiAKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29sOllFU10sIFdlYktpdE5lZWRzU3Rv
cmFnZUFjY2Vzc0Zyb21GaWxlVVJMc1F1aXJrS2V5LAotI2lmIEVOQUJMRShTVUJUTEVfQ1JZUFRP
KQotICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6WUVTXSwgV2ViS2l0U3VidGxlQ3J5
cHRvRW5hYmxlZFByZWZlcmVuY2VLZXksCi0jZW5kaWYKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFN
KQogICAgICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6Tk9dLCBXZWJLaXRNZWRpYURldmlj
ZXNFbmFibGVkUHJlZmVyZW5jZUtleSwKICAgICAgICAgW05TTnVtYmVyIG51bWJlcldpdGhCb29s
OllFU10sIFdlYktpdE1lZGlhU3RyZWFtRW5hYmxlZFByZWZlcmVuY2VLZXksCkBAIC0yNzU1LDE2
ICsyNzUyLDYgQEAgLSAodm9pZClzZXRNZWRpYUtleXNTdG9yYWdlRGlyZWN0b3J5OihOU1N0cmlu
ZyAqKWRpcmVjdG9yeQogICAgIFtzZWxmIF9zZXRTdHJpbmdWYWx1ZTpkaXJlY3RvcnkgZm9yS2V5
OldlYktpdE1lZGlhS2V5c1N0b3JhZ2VEaXJlY3RvcnlLZXldOwogfQogCi0tIChCT09MKXN1YnRs
ZUNyeXB0b0VuYWJsZWQKLXsKLSAgICByZXR1cm4gW3NlbGYgX2Jvb2xWYWx1ZUZvcktleTpXZWJL
aXRTdWJ0bGVDcnlwdG9FbmFibGVkUHJlZmVyZW5jZUtleV07Ci19Ci0KLS0gKHZvaWQpc2V0U3Vi
dGxlQ3J5cHRvRW5hYmxlZDooQk9PTClmbGFnCi17Ci0gICAgW3NlbGYgX3NldEJvb2xWYWx1ZTpm
bGFnIGZvcktleTpXZWJLaXRTdWJ0bGVDcnlwdG9FbmFibGVkUHJlZmVyZW5jZUtleV07Ci19Ci0K
IC0gKEJPT0wpbWVkaWFEZXZpY2VzRW5hYmxlZAogewogICAgIHJldHVybiBbc2VsZiBfYm9vbFZh
bHVlRm9yS2V5OldlYktpdE1lZGlhRGV2aWNlc0VuYWJsZWRQcmVmZXJlbmNlS2V5XTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmgg
Yi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0ZS5oCmluZGV4
IGNmZDYzYmZmNmJmNWIyNGFiMWM2ZDdkY2JhYzRmZTk1MWIyY2M1NGYuLjU5MmYzMDg4ZmI3MmRj
MjUyMGFjZDc4ZTVmOWUwZTJlOTllYmMyYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFj
L1dlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMv
V2ViVmlldy9XZWJQcmVmZXJlbmNlc1ByaXZhdGUuaApAQCAtMTU5LDkgKzE1OSw2IEBAIGV4dGVy
biBOU1N0cmluZyAqV2ViUHJlZmVyZW5jZXNDYWNoZU1vZGVsQ2hhbmdlZEludGVybmFsTm90aWZp
Y2F0aW9uOwogLSAoQk9PTClpc1NwYXRpYWxOYXZpZ2F0aW9uRW5hYmxlZDsKIC0gKHZvaWQpc2V0
U3BhdGlhbE5hdmlnYXRpb25FbmFibGVkOihCT09MKWZsYWc7CiAKLS0gKHZvaWQpc2V0U3VidGxl
Q3J5cHRvRW5hYmxlZDooQk9PTClmbGFnOwotLSAoQk9PTClzdWJ0bGVDcnlwdG9FbmFibGVkOwot
CiAtICh2b2lkKXNldE1lZGlhRGV2aWNlc0VuYWJsZWQ6KEJPT0wpZmxhZzsKIC0gKEJPT0wpbWVk
aWFEZXZpY2VzRW5hYmxlZDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCmluZGV4
IDgyY2M2NzA1YjdjYzQ2ODEwMDUzNTc1YThjZTcxZjQwYjlmMTFhZmYuLjVjZWMyMzhkZTYxZGM2
YmE0NTgzNDJiYjY4MmI4MDI4ODdiZjJjNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFj
L1dlYlZpZXcvV2ViVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZp
ZXcubW0KQEAgLTMwNTIsMTAgKzMwNTIsNiBAQCAtICh2b2lkKV9wcmVmZXJlbmNlc0NoYW5nZWQ6
KFdlYlByZWZlcmVuY2VzICopcHJlZmVyZW5jZXMKICNlbmRpZgogICAgIFJ1bnRpbWVFbmFibGVk
RmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0RGlzcGxheUNvbnRlbnRzRW5hYmxlZChwcmVm
ZXJlbmNlcy5kaXNwbGF5Q29udGVudHNFbmFibGVkKTsKIAotI2lmIEVOQUJMRShTVUJUTEVfQ1JZ
UFRPKQotICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0U3Vi
dGxlQ3J5cHRvRW5hYmxlZChbcHJlZmVyZW5jZXMgc3VidGxlQ3J5cHRvRW5hYmxlZF0pOwotI2Vu
ZGlmCi0KICAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldFVz
ZXJUaW1pbmdFbmFibGVkKHByZWZlcmVuY2VzLnVzZXJUaW1pbmdFbmFibGVkKTsKICAgICBSdW50
aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldFJlc291cmNlVGltaW5nRW5h
YmxlZChwcmVmZXJlbmNlcy5yZXNvdXJjZVRpbWluZ0VuYWJsZWQpOwogICAgIFJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0TGlua1ByZWxvYWRFbmFibGVkKHByZWZl
cmVuY2VzLmxpbmtQcmVsb2FkRW5hYmxlZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9T
aGFyZWQvV2ViUHJlZmVyZW5jZXNEZWZpbml0aW9ucy5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVk
L1dlYlByZWZlcmVuY2VzRGVmaW5pdGlvbnMuaAppbmRleCA5ZWQ3OGRmZDk2YWRkMzIzMmFhMjE4
N2I5YTBmZDM5ZTk5MDkyMjI2Li5jMzkyOTNmN2Q4NjBmYWU5YWRhZjJiM2Y2MzM5NTJkOTgyYTdi
ODA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNEZWZp
bml0aW9ucy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc0RlZmlu
aXRpb25zLmgKQEAgLTM1OCw3ICszNTgsNiBAQAogICAgIG1hY3JvKExpbmtQcmVsb2FkRW5hYmxl
ZCwgbGlua1ByZWxvYWRFbmFibGVkLCBCb29sLCBib29sLCBERUZBVUxUX0VYUEVSSU1FTlRBTF9G
RUFUVVJFU19FTkFCTEVELCAiTGluayBQcmVsb2FkIiwgIkxpbmsgcHJlbG9hZCBzdXBwb3J0Iikg
XAogICAgIG1hY3JvKFdlYlJUQ0xlZ2FjeUFQSURpc2FibGVkLCB3ZWJSVENMZWdhY3lBUElEaXNh
YmxlZCwgQm9vbCwgYm9vbCwgZmFsc2UsICJSZW1vdmUgTGVnYWN5IFdlYlJUQyBBUEkiLCAiUmVt
b3ZlIExlZ2FjeSBXZWJSVEMgQVBJIikgXAogICAgIG1hY3JvKFN1YnJlc291cmNlSW50ZWdyaXR5
RW5hYmxlZCwgc3VicmVzb3VyY2VJbnRlZ3JpdHlFbmFibGVkLCBCb29sLCBib29sLCBERUZBVUxU
X0VYUEVSSU1FTlRBTF9GRUFUVVJFU19FTkFCTEVELCAiU3VicmVzb3VyY2VJbnRlZ3JpdHkiLCAi
RW5hYmxlIFN1YnJlc291cmNlSW50ZWdyaXR5IikgXAotICAgIG1hY3JvKFN1YnRsZUNyeXB0b0Vu
YWJsZWQsIHN1YnRsZUNyeXB0b0VuYWJsZWQsIEJvb2wsIGJvb2wsIERFRkFVTFRfRVhQRVJJTUVO
VEFMX0ZFQVRVUkVTX0VOQUJMRUQsICJTdWJ0bGVDcnlwdG8iLCAiRW5hYmxlIFN1YnRsZUNyeXB0
byBzdXBwb3J0IikgXAogICAgIG1hY3JvKFZpZXdwb3J0Rml0RW5hYmxlZCwgdmlld3BvcnRGaXRF
bmFibGVkLCBCb29sLCBib29sLCBERUZBVUxUX0VYUEVSSU1FTlRBTF9GRUFUVVJFU19FTkFCTEVE
LCAiVmlld3BvcnQgRml0IiwgIkVuYWJsZSB2aWV3cG9ydC1maXQgdmlld3BvcnQgcGFyYW1ldGVy
IikgXAogICAgIG1hY3JvKFdlYkFuaW1hdGlvbnNFbmFibGVkLCB3ZWJBbmltYXRpb25zRW5hYmxl
ZCwgQm9vbCwgYm9vbCwgZmFsc2UsICJXZWIgQW5pbWF0aW9ucyIsICJXZWIgQW5pbWF0aW9ucyBw
cm90b3R5cGUiKSBcCiAgICAgbWFjcm8oV2ViR0wyRW5hYmxlZCwgd2ViR0wyRW5hYmxlZCwgQm9v
bCwgYm9vbCwgZmFsc2UsICJXZWJHTCAyLjAiLCAiV2ViR0wgMiBwcm90b3R5cGUiKSBcCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAKaW5kZXgg
OWUyZmZkMzE0YjRkN2ZjMzE3MmZiNGE3MzEzZmIyOWEyZjI4YTVmZS4uZjhmODI1NDhiOTYxOWY0
NzAxMjg0YTA1NjFmNDc0Mzg2OGIzY2NkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcApAQCAtMTcxMSwxNiArMTcxMSw2IEBAIHZvaWQg
V0tQcmVmZXJlbmNlc1NldEFwcGxlUGF5Q2FwYWJpbGl0eURpc2Nsb3N1cmVBbGxvd2VkKFdLUHJl
ZmVyZW5jZXNSZWYgcHJlZmVyCiAgICAgV2ViS2l0Ojp0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5z
ZXRBcHBsZVBheUNhcGFiaWxpdHlEaXNjbG9zdXJlQWxsb3dlZChhbGxvd2VkKTsKIH0KIAotdm9p
ZCBXS1ByZWZlcmVuY2VzU2V0U3VidGxlQ3J5cHRvRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHBy
ZWZlcmVuY2VzUmVmLCBib29sIGZsYWcpCi17Ci0gICAgdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+
c2V0U3VidGxlQ3J5cHRvRW5hYmxlZChmbGFnKTsKLX0KLQotYm9vbCBXS1ByZWZlcmVuY2VzR2V0
U3VidGxlQ3J5cHRvRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKQotewot
ICAgIHJldHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5zdWJ0bGVDcnlwdG9FbmFibGVkKCk7
Ci19Ci0KIHZvaWQgV0tQcmVmZXJlbmNlc1NldExpbmtQcmVsb2FkRW5hYmxlZChXS1ByZWZlcmVu
Y2VzUmVmIHByZWZlcmVuY2VzUmVmLCBib29sIGZsYWcpCiB7CiAgICAgdG9JbXBsKHByZWZlcmVu
Y2VzUmVmKS0+c2V0TGlua1ByZWxvYWRFbmFibGVkKGZsYWcpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNSZWZQcml2YXRlLmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1JlZlByaXZhdGUuaAppbmRl
eCA1ZDFmNTU5YzZjMGU5NjY3ZmQ3Yzk5Y2Q0Y2Q1MTU1ZTE0YWQ5NTFlLi5iMzI4MTU2NzliNzQ3
NTgwNjQ5NmQzOWM2OTYzOWEyZTRhYzMwYjM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1JlZlByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlc1JlZlByaXZhdGUuaApAQCAtNDY1LDEw
ICs0NjUsNiBAQCBXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0VXNlclRpbWluZ0VuYWJs
ZWQoV0tQcmVmZXJlbmNlc1JlZik7CiBXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0UmVz
b3VyY2VUaW1pbmdFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYsIGJvb2wgZmxhZyk7CiBXS19FWFBP
UlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0UmVzb3VyY2VUaW1pbmdFbmFibGVkKFdLUHJlZmVyZW5j
ZXNSZWYpOwogCi0vLyBEZWZhdWx0cyB0byB0cnVlCi1XS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVu
Y2VzU2V0U3VidGxlQ3J5cHRvRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmLCBib29sIGZsYWcpOwot
V0tfRVhQT1JUIGJvb2wgV0tQcmVmZXJlbmNlc0dldFN1YnRsZUNyeXB0b0VuYWJsZWQoV0tQcmVm
ZXJlbmNlc1JlZik7Ci0KIC8vIERlZmF1bHRzIHRvIHRydWUuCiBXS19FWFBPUlQgdm9pZCBXS1By
ZWZlcmVuY2VzU2V0TGFyZ2VJbWFnZUFzeW5jRGVjb2RpbmdFbmFibGVkKFdLUHJlZmVyZW5jZXNS
ZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZmxhZyk7CiBXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVu
Y2VzR2V0TGFyZ2VJbWFnZUFzeW5jRGVjb2RpbmdFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJl
ZmVyZW5jZXNSZWYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9Jbmpl
Y3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcAppbmRleCA2MWQ5Y2MwN2M4ZTg5MGE5
MzA5ODFmYzdhODQ0OTQzM2I0MTE4ZTVkLi4xYmFiM2NiMzhkYzRhODUyOTEwMjVhM2U4MTk2MDM1
MzA2MmQ4NDQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVk
QnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcApAQCAtMjE0LDExICsyMTQsNiBAQCB2
b2lkIEluamVjdGVkQnVuZGxlOjpvdmVycmlkZUJvb2xQcmVmZXJlbmNlRm9yVGVzdFJ1bm5lcihX
ZWJQYWdlR3JvdXBQcm94eSogcGFnZQogICAgICAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpz
aGFyZWRGZWF0dXJlcygpLnNldEVuY3J5cHRlZE1lZGlhQVBJRW5hYmxlZChlbmFibGVkKTsKICNl
bmRpZgogCi0jaWYgRU5BQkxFKFNVQlRMRV9DUllQVE8pCi0gICAgaWYgKHByZWZlcmVuY2UgPT0g
IldlYktpdFN1YnRsZUNyeXB0b0VuYWJsZWQiKQotICAgICAgICBSdW50aW1lRW5hYmxlZEZlYXR1
cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldFN1YnRsZUNyeXB0b0VuYWJsZWQoZW5hYmxlZCk7Ci0j
ZW5kaWYKLQogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgaWYgKHByZWZlcmVuY2UgPT0g
IldlYktpdE1lZGlhRGV2aWNlc0VuYWJsZWQiKQogICAgICAgICBSdW50aW1lRW5hYmxlZEZlYXR1
cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldE1lZGlhRGV2aWNlc0VuYWJsZWQoZW5hYmxlZCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5kZXggOTZk
NzgxMDAzYzUyZTAxOGUzNmY3NTRkNjQ0NzU5MWVhZTgyZDg5ZC4uMzY5MDZmYWZhMDQ1ZjhkNTU4
YTEyNDk0Yjc5M2VkZjg3MGM4OGNjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtMzM3MSwxMCArMzM3MSw2IEBAIHZvaWQgV2ViUGFnZTo6
dXBkYXRlUHJlZmVyZW5jZXMoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9yZSYgc3RvcmUpCiAgICAg
ICAgIHVwZGF0ZVRocm90dGxlU3RhdGUoKTsKICAgICB9CiAKLSNpZiBFTkFCTEUoU1VCVExFX0NS
WVBUTykKLSAgICBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnNldFN1
YnRsZUNyeXB0b0VuYWJsZWQoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2Vz
S2V5OjpzdWJ0bGVDcnlwdG9FbmFibGVkS2V5KCkpKTsKLSNlbmRpZgotCiAgICAgc2V0dGluZ3Mu
c2V0U3VicmVzb3VyY2VJbnRlZ3JpdHlFbmFibGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShX
ZWJQcmVmZXJlbmNlc0tleTo6c3VicmVzb3VyY2VJbnRlZ3JpdHlFbmFibGVkS2V5KCkpKTsKIAog
ICAgIHBsYXRmb3JtUHJlZmVyZW5jZXNEaWRDaGFuZ2Uoc3RvcmUpOwpkaWZmIC0tZ2l0IGEvVG9v
bHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IGRlNjVkMmE2OWNjYzMyYzJhMTcy
ZjY5N2Q1MzFlMTllZWM5ZGVlMzEuLmJkNzRlZmRmYzRmZGMxYTFiZThlNmQyYTJmYjRlOTU5NjBh
NjVmM2UgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwxOSBAQAorMjAxNy0wNi0wOSAgSmlld2VuIFRhbiAgPGppZXdlbl90YW5AYXBw
bGUuY29tPgorCisgICAgICAgIFtXZWJDcnlwdG9dIFJlbW92ZSBleHBlcmltZW50YWwgZmVhdHVy
ZSBmbGFnIG9mIFN1YnRsZUNyeXB0bworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTczMTk3CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zMjY4ODE0OD4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIER1bXBS
ZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5tbToKKyAgICAgICAgKGVuYWJsZUV4cGVyaW1l
bnRhbEZlYXR1cmVzKToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxl
L0luamVjdGVkQnVuZGxlLmNwcDoKKyAgICAgICAgKFdUUjo6SW5qZWN0ZWRCdW5kbGU6OmJlZ2lu
VGVzdGluZyk6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0
UnVubmVyLmNwcDoKKyAgICAgICAgKFdUUjo6VGVzdFJ1bm5lcjo6c2V0U3VidGxlQ3J5cHRvRW5h
YmxlZCk6IERlbGV0ZWQuCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRs
ZS9UZXN0UnVubmVyLmg6CisKIDIwMTctMDYtMDkgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2ll
aEBhcHBsZS5jb20+CiAKICAgICAgICAgW2lPUyBEbkRdIEFkZCBhIGhvb2sgdG8gcGVyZm9ybSB0
d28tc3RlcCBkcm9wcyBpbiBlZGl0YWJsZSBjb250ZW50CmRpZmYgLS1naXQgYS9Ub29scy9EdW1w
UmVuZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUubW0gYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9t
YWMvRHVtcFJlbmRlclRyZWUubW0KaW5kZXggYTlmMjAwMzllODdhOTRjZTdkMmZjYTFkZThmODM4
YTMyNTkyODc2OS4uOGI2NTE0NTI5MmFhNWJjMzlkNjdjNDA0MzhkMmZlZjg4YTY2YWQ0NyAxMDA2
NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlLm1tCisrKyBi
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5tbQpAQCAtODQ1LDcgKzg0
NSw2IEBAIHN0YXRpYyB2b2lkIGVuYWJsZUV4cGVyaW1lbnRhbEZlYXR1cmVzKFdlYlByZWZlcmVu
Y2VzKiBwcmVmZXJlbmNlcykKICAgICBbcHJlZmVyZW5jZXMgc2V0TGlua1ByZWxvYWRFbmFibGVk
OllFU107CiAgICAgW3ByZWZlcmVuY2VzIHNldE1lZGlhUHJlbG9hZGluZ0VuYWJsZWQ6WUVTXTsK
ICAgICAvLyBGSVhNRTogSW5wdXRFdmVudHMKLSAgICBbcHJlZmVyZW5jZXMgc2V0U3VidGxlQ3J5
cHRvRW5hYmxlZDpZRVNdOwogICAgIFtwcmVmZXJlbmNlcyBzZXRXZWJBbmltYXRpb25zRW5hYmxl
ZDpZRVNdOwogICAgIFtwcmVmZXJlbmNlcyBzZXRXZWJHTDJFbmFibGVkOllFU107CiAgICAgW3By
ZWZlcmVuY2VzIHNldFdlYkdQVUVuYWJsZWQ6WUVTXTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktp
dFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwIGIvVG9vbHMvV2Vi
S2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAKaW5kZXggYTcy
N2IyNGRjNTQ0ZjdhZDg3MjM0NjRiOGMzNjgyOWY4MTZjMDk5Ni4uODkzYjIyN2UyODgxY2I1MTZl
NDI5YjBhOWU3MGRlN2FlYjBiMDAzYiAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAKKysrIGIvVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAKQEAgLTM0Nyw4ICszNDcs
NiBAQCB2b2lkIEluamVjdGVkQnVuZGxlOjpiZWdpblRlc3RpbmcoV0tEaWN0aW9uYXJ5UmVmIHNl
dHRpbmdzKQogICAgIG1fdGVzdFJ1bm5lci0+c2V0VGFiS2V5Q3ljbGVzVGhyb3VnaEVsZW1lbnRz
KHRydWUpOwogICAgIG1fdGVzdFJ1bm5lci0+Y2xlYXJUZXN0UnVubmVyQ2FsbGJhY2tzKCk7CiAK
LSAgICBtX3Rlc3RSdW5uZXItPnNldFN1YnRsZUNyeXB0b0VuYWJsZWQodHJ1ZSk7Ci0KICAgICBp
ZiAobV90aW1lb3V0ID4gMCkKICAgICAgICAgbV90ZXN0UnVubmVyLT5zZXRDdXN0b21UaW1lb3V0
KG1fdGltZW91dCk7CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0
ZWRCdW5kbGUvVGVzdFJ1bm5lci5jcHAgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVk
QnVuZGxlL1Rlc3RSdW5uZXIuY3BwCmluZGV4IGUxZjJjYmYxOTRlOTJhY2VmYjdmZmU2YTkzM2Yy
NmNiOWVhNTFiZjUuLjQzNTQ0M2UzMjMxMTIwNjQ3MjEwMzJjZDkzMGFkZjQyYjQ4MGMyODggMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5l
ci5jcHAKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVu
bmVyLmNwcApAQCAtMzUzLDEzICszNTMsNiBAQCB2b2lkIFRlc3RSdW5uZXI6OnNldFhTU0F1ZGl0
b3JFbmFibGVkKGJvb2wgZW5hYmxlZCkKICAgICBXS0J1bmRsZU92ZXJyaWRlQm9vbFByZWZlcmVu
Y2VGb3JUZXN0UnVubmVyKGluamVjdGVkQnVuZGxlLmJ1bmRsZSgpLCBpbmplY3RlZEJ1bmRsZS5w
YWdlR3JvdXAoKSwga2V5LmdldCgpLCBlbmFibGVkKTsKIH0KIAotdm9pZCBUZXN0UnVubmVyOjpz
ZXRTdWJ0bGVDcnlwdG9FbmFibGVkKGJvb2wgZW5hYmxlZCkKLXsKLSAgICBXS1JldGFpblB0cjxX
S1N0cmluZ1JlZj4ga2V5KEFkb3B0V0ssIFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKCJX
ZWJLaXRTdWJ0bGVDcnlwdG9FbmFibGVkIikpOwotICAgIGF1dG8mIGluamVjdGVkQnVuZGxlID0g
SW5qZWN0ZWRCdW5kbGU6OnNpbmdsZXRvbigpOwotICAgIFdLQnVuZGxlT3ZlcnJpZGVCb29sUHJl
ZmVyZW5jZUZvclRlc3RSdW5uZXIoaW5qZWN0ZWRCdW5kbGUuYnVuZGxlKCksIGluamVjdGVkQnVu
ZGxlLnBhZ2VHcm91cCgpLCBrZXkuZ2V0KCksIGVuYWJsZWQpOwotfQotCiB2b2lkIFRlc3RSdW5u
ZXI6OnNldE1lZGlhRGV2aWNlc0VuYWJsZWQoYm9vbCBlbmFibGVkKQogewogICAgIFdLUmV0YWlu
UHRyPFdLU3RyaW5nUmVmPiBrZXkoQWRvcHRXSywgV0tTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJp
bmcoIldlYktpdE1lZGlhRGV2aWNlc0VuYWJsZWQiKSk7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuaCBiL1Rvb2xzL1dlYktpdFRl
c3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5oCmluZGV4IGI5NjEwMDMyOTY3MTgx
NjViNWEyNDc1ZGY0MjExOTQ4OTU3YjkzZGYuLmU5YzRlYWE0MDYzYjg0ZWExNTMwY2Q3Njk3MGJj
Nzk5MDViNmNlYzUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRC
dW5kbGUvVGVzdFJ1bm5lci5oCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRC
dW5kbGUvVGVzdFJ1bm5lci5oCkBAIC0xMjcsNyArMTI3LDYgQEAgcHVibGljOgogICAgIHZvaWQg
c2V0QXN5bmNocm9ub3VzU3BlbGxDaGVja2luZ0VuYWJsZWQoYm9vbCk7CiAgICAgdm9pZCBzZXRB
bGxvd3NBbnlTU0xDZXJ0aWZpY2F0ZShib29sKTsKICAgICB2b2lkIHNldEVuY3J5cHRlZE1lZGlh
QVBJRW5hYmxlZChib29sKTsKLSAgICB2b2lkIHNldFN1YnRsZUNyeXB0b0VuYWJsZWQoYm9vbCk7
CiAgICAgdm9pZCBzZXRNZWRpYURldmljZXNFbmFibGVkKGJvb2wpOwogICAgIHZvaWQgc2V0V2Vi
UlRDTGVnYWN5QVBJRW5hYmxlZChib29sKTsKIAo=
</data>
<flag name="review"
          id="333453"
          type_id="1"
          status="+"
          setter="bfulgham"
    />
    <flag name="commit-queue"
          id="333576"
          type_id="3"
          status="-"
          setter="bfulgham"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>312686</attachid>
            <date>2017-06-12 12:45:01 -0700</date>
            <delta_ts>2017-06-12 13:27:04 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-173197-20170612124500.patch</filename>
            <type>text/plain</type>
            <size>16416</size>
            <attacher name="Jiewen Tan">jiewen_tan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE4MDMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWUxMmU1YzRkMmI5NTZm
NDE1ODZjNzFiZGE5N2UyMDJkMWVkMTVmZS4uYTRmMTEzMDViZDNkOWY3YzgzN2JkZjYzYWE0ZWFh
ODMyZDZjNzY2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE3LTA2LTA5ICBKaWV3
ZW4gVGFuICA8amlld2VuX3RhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYkNyeXB0b10gUmVt
b3ZlIGV4cGVyaW1lbnRhbCBmZWF0dXJlIGZsYWcgb2YgU3VidGxlQ3J5cHRvCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzMxOTcKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzMyNjg4MTQ4PgorCisgICAgICAgIFJldmlld2VkIGJ5IEJyZW50IEZ1bGdo
YW0uCisKKyAgICAgICAgVGhlIFN1YnRsZUNyeXB0byBpbXBsZW1lbnRhdGlvbiBpcyBubyBsb25n
ZXIgZXhwZXJpbWVudGFsIGFuZCBpcyByZWFkeSBmb3IgcHJvZHVjdGlvbiB1c2UuIFdlIGFyZSB0
aGVyZWZvcmUgcmVtb3ZpbmcgdGhlIHJ1bnRpbWUgZmxhZy4KKworICAgICAgICBObyB0ZXN0cy4K
KworICAgICAgICAqIHBhZ2UvQ3J5cHRvLmlkbDoKKyAgICAgICAgKiBwYWdlL1J1bnRpbWVFbmFi
bGVkRmVhdHVyZXMuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6
OnNldFN1YnRsZUNyeXB0b0VuYWJsZWQpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UnVu
dGltZUVuYWJsZWRGZWF0dXJlczo6c3VidGxlQ3J5cHRvRW5hYmxlZCk6IERlbGV0ZWQuCisKIDIw
MTctMDYtMDkgIFJ5YW4gSGFkZGFkICA8cnlhbmhhZGRhZEBhcHBsZS5jb20+CiAKICAgICAgICAg
VW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjIxODAwMy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvbWFjL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwppbmRleCAzNjI4
ODI5ZGQzZmQ3ZDhkYjA4YzZlYjgyZjUxNWE5MmI0YWRkZDRjLi4wYjRiZWM5OWFmMGVkY2QxODQz
NTcwZGIyMjlmMzRiNzY5YTg0ODg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAK
KzIwMTctMDYtMDkgIEppZXdlbiBUYW4gIDxqaWV3ZW5fdGFuQGFwcGxlLmNvbT4KKworICAgICAg
ICBbV2ViQ3J5cHRvXSBSZW1vdmUgZXhwZXJpbWVudGFsIGZlYXR1cmUgZmxhZyBvZiBTdWJ0bGVD
cnlwdG8KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3
MzE5NworICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzI2ODgxNDg+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgQnJlbnQgRnVsZ2hhbS4KKworICAgICAgICAqIFdlYlZpZXcvV2ViUHJlZmVyZW5jZXMu
bW06CisgICAgICAgICgrW1dlYlByZWZlcmVuY2VzIGluaXRpYWxpemVdKToKKyAgICAgICAgKC1b
V2ViUHJlZmVyZW5jZXMgc3VidGxlQ3J5cHRvRW5hYmxlZF0pOiBEZWxldGVkLgorICAgICAgICAo
LVtXZWJQcmVmZXJlbmNlcyBzZXRTdWJ0bGVDcnlwdG9FbmFibGVkOl0pOiBEZWxldGVkLgorICAg
ICAgICAqIFdlYlZpZXcvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmg6CisgICAgICAgICogV2ViVmll
dy9XZWJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJWaWV3IF9wcmVmZXJlbmNlc0NoYW5nZWQ6XSk6
CisKIDIwMTctMDYtMDkgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAK
ICAgICAgICAgW2lPUyBEbkRdIEFkZCBhIGhvb2sgdG8gcGVyZm9ybSB0d28tc3RlcCBkcm9wcyBp
biBlZGl0YWJsZSBjb250ZW50CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZmE1YzE3YmU2MWI5NDNlMTYzY2Q0ZmRi
ZTQxNjkwMTYzN2EwOWZjMC4uYzg4YzM4MDBhNTI3YjdhNTE1NTIxMDZkNmI4MWQzZTJkYmZkMjE2
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE3LTA2LTA5ICBKaWV3ZW4gVGFuICA8
amlld2VuX3RhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYkNyeXB0b10gUmVtb3ZlIGV4cGVy
aW1lbnRhbCBmZWF0dXJlIGZsYWcgb2YgU3VidGxlQ3J5cHRvCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzMxOTcKKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzMyNjg4MTQ4PgorCisgICAgICAgIFJldmlld2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisKKyAg
ICAgICAgKiBTaGFyZWQvV2ViUHJlZmVyZW5jZXNEZWZpbml0aW9ucy5oOgorICAgICAgICAqIFVJ
UHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcDoKKyAgICAgICAgKFdLUHJlZmVyZW5jZXNT
ZXRTdWJ0bGVDcnlwdG9FbmFibGVkKTogRGVsZXRlZC4KKyAgICAgICAgKFdLUHJlZmVyZW5jZXNH
ZXRTdWJ0bGVDcnlwdG9FbmFibGVkKTogRGVsZXRlZC4KKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJ
L0MvV0tQcmVmZXJlbmNlc1JlZlByaXZhdGUuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVj
dGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6SW5qZWN0ZWRC
dW5kbGU6Om92ZXJyaWRlQm9vbFByZWZlcmVuY2VGb3JUZXN0UnVubmVyKToKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6
OnVwZGF0ZVByZWZlcmVuY2VzKToKKwogMjAxNy0wNi0wOSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpA
YXBwbGUuY29tPgogCiAgICAgICAgIFVzZSBXVEY6OkZ1bmN0aW9uIGluc3RlYWQgb2Ygc3RkOjpm
dW5jdGlvbiBpbiBOZXR3b3JrUHJvY2VzcyBjb2RlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0NyeXB0by5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0NyeXB0by5pZGwKaW5kZXgg
MDVkYmVlMWY0NjYxMmZiYTMzNmNiMGY4NzMzZTkzOWIzYjI1ZDlmMS4uMjRmYjVjYmE4YjkxMTQw
ZDdkOTk1MDU4YzVlNTJhYjhlMDg4NTM1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9DcnlwdG8uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ3J5cHRvLmlkbApAQCAtMzEs
NyArMzEsNyBAQAogICAgIEV4cG9zZWQ9KFdpbmRvdyxXb3JrZXIpLAogICAgIEdlbmVyYXRlSXNS
ZWFjaGFibGU9SW1wbFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsCiBdIGludGVyZmFjZSBDcnlwdG8g
ewotICAgIFtDb25kaXRpb25hbD1TVUJUTEVfQ1JZUFRPLCBFbmFibGVkQXRSdW50aW1lPVN1YnRs
ZUNyeXB0b10gcmVhZG9ubHkgYXR0cmlidXRlIFN1YnRsZUNyeXB0byBzdWJ0bGU7CisgICAgW0Nv
bmRpdGlvbmFsPVNVQlRMRV9DUllQVE9dIHJlYWRvbmx5IGF0dHJpYnV0ZSBTdWJ0bGVDcnlwdG8g
c3VidGxlOwogICAgIFtDdXN0b20sIE1heVRocm93RXhjZXB0aW9uXSBBcnJheUJ1ZmZlclZpZXcg
Z2V0UmFuZG9tVmFsdWVzKEFycmF5QnVmZmVyVmlldyBhcnJheSk7CiAKICAgICAvLyBXaWxsIGJl
IGRlcHJlY2F0ZWQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1J1bnRpbWVFbmFi
bGVkRmVhdHVyZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJl
cy5oCmluZGV4IGUzMjZlNjc4MDkwYjdlMWNlMTQ5YjVkN2E0NWViNjgwZGE3YzAyZmQuLmU3MzBm
Yzc2ZWM2NWIwNzMzNzNmZjEwYjAyNTEzZWZjNTA2ODhmZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCkBAIC0xODgsMTEgKzE4OCw2IEBAIHB1Ymxp
YzoKICAgICBib29sIGVuY3J5cHRlZE1lZGlhQVBJRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1f
ZW5jcnlwdGVkTWVkaWFBUElFbmFibGVkOyB9CiAjZW5kaWYKIAotI2lmIEVOQUJMRShTVUJUTEVf
Q1JZUFRPKQotICAgIHZvaWQgc2V0U3VidGxlQ3J5cHRvRW5hYmxlZChib29sIGlzRW5hYmxlZCkg
eyBtX2lzU3VidGxlQ3J5cHRvRW5hYmxlZCA9IGlzRW5hYmxlZDsgfQotICAgIGJvb2wgc3VidGxl
Q3J5cHRvRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1faXNTdWJ0bGVDcnlwdG9FbmFibGVkOyB9
Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShWSURFTykKICAgICBib29sIGF1ZGlvRW5hYmxlZCgpIGNv
bnN0OwogI2VuZGlmCkBAIC0zMDUsMTAgKzMwMCw2IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX2lu
dGVyc2VjdGlvbk9ic2VydmVyRW5hYmxlZCB7IGZhbHNlIH07CiAjZW5kaWYKIAotI2lmIEVOQUJM
RShTVUJUTEVfQ1JZUFRPKQotICAgIGJvb2wgbV9pc1N1YnRsZUNyeXB0b0VuYWJsZWQgeyB0cnVl
IH07Ci0jZW5kaWYKLQogICAgIGZyaWVuZCBjbGFzcyBXVEY6Ok5ldmVyRGVzdHJveWVkPFJ1bnRp
bWVFbmFibGVkRmVhdHVyZXM+OwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMv
V2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2Vi
UHJlZmVyZW5jZXMubW0KaW5kZXggMzQwNTJiMzY1MDk5ZWRkZmYzYjQ3ZjI2Y2EwMDFkNDYxNzA2
NTgwNi4uODM2NmZhOWNlMDkxOGM3ZDRlYjE1MmI4NDlhYjQ2MDIxMWRiODcyNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlcy5tbQorKysgYi9Tb3Vy
Y2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzLm1tCkBAIC02NTIsOSArNjUyLDYg
QEAgKyAodm9pZClpbml0aWFsaXplCiAjZW5kaWYKIAogICAgICAgICBbTlNOdW1iZXIgbnVtYmVy
V2l0aEJvb2w6WUVTXSwgV2ViS2l0TmVlZHNTdG9yYWdlQWNjZXNzRnJvbUZpbGVVUkxzUXVpcmtL
ZXksCi0jaWYgRU5BQkxFKFNVQlRMRV9DUllQVE8pCi0gICAgICAgIFtOU051bWJlciBudW1iZXJX
aXRoQm9vbDpZRVNdLCBXZWJLaXRTdWJ0bGVDcnlwdG9FbmFibGVkUHJlZmVyZW5jZUtleSwKLSNl
bmRpZgogI2lmIEVOQUJMRShNRURJQV9TVFJFQU0pCiAgICAgICAgIFtOU051bWJlciBudW1iZXJX
aXRoQm9vbDpOT10sIFdlYktpdE1lZGlhRGV2aWNlc0VuYWJsZWRQcmVmZXJlbmNlS2V5LAogICAg
ICAgICBbTlNOdW1iZXIgbnVtYmVyV2l0aEJvb2w6WUVTXSwgV2ViS2l0TWVkaWFTdHJlYW1FbmFi
bGVkUHJlZmVyZW5jZUtleSwKQEAgLTI3NTUsMTYgKzI3NTIsNiBAQCAtICh2b2lkKXNldE1lZGlh
S2V5c1N0b3JhZ2VEaXJlY3Rvcnk6KE5TU3RyaW5nICopZGlyZWN0b3J5CiAgICAgW3NlbGYgX3Nl
dFN0cmluZ1ZhbHVlOmRpcmVjdG9yeSBmb3JLZXk6V2ViS2l0TWVkaWFLZXlzU3RvcmFnZURpcmVj
dG9yeUtleV07CiB9CiAKLS0gKEJPT0wpc3VidGxlQ3J5cHRvRW5hYmxlZAotewotICAgIHJldHVy
biBbc2VsZiBfYm9vbFZhbHVlRm9yS2V5OldlYktpdFN1YnRsZUNyeXB0b0VuYWJsZWRQcmVmZXJl
bmNlS2V5XTsKLX0KLQotLSAodm9pZClzZXRTdWJ0bGVDcnlwdG9FbmFibGVkOihCT09MKWZsYWcK
LXsKLSAgICBbc2VsZiBfc2V0Qm9vbFZhbHVlOmZsYWcgZm9yS2V5OldlYktpdFN1YnRsZUNyeXB0
b0VuYWJsZWRQcmVmZXJlbmNlS2V5XTsKLX0KLQogLSAoQk9PTCltZWRpYURldmljZXNFbmFibGVk
CiB7CiAgICAgcmV0dXJuIFtzZWxmIF9ib29sVmFsdWVGb3JLZXk6V2ViS2l0TWVkaWFEZXZpY2Vz
RW5hYmxlZFByZWZlcmVuY2VLZXldOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2Vi
Vmlldy9XZWJQcmVmZXJlbmNlc1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcv
V2ViUHJlZmVyZW5jZXNQcml2YXRlLmgKaW5kZXggY2ZkNjNiZmY2YmY1YjI0YWIxYzZkN2RjYmFj
NGZlOTUxYjJjYzU0Zi4uNTkyZjMwODhmYjcyZGMyNTIwYWNkNzhlNWY5ZTBlMmU5OWViYzJiYSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJQcmVmZXJlbmNlc1ByaXZh
dGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlByZWZlcmVuY2VzUHJpdmF0
ZS5oCkBAIC0xNTksOSArMTU5LDYgQEAgZXh0ZXJuIE5TU3RyaW5nICpXZWJQcmVmZXJlbmNlc0Nh
Y2hlTW9kZWxDaGFuZ2VkSW50ZXJuYWxOb3RpZmljYXRpb247CiAtIChCT09MKWlzU3BhdGlhbE5h
dmlnYXRpb25FbmFibGVkOwogLSAodm9pZClzZXRTcGF0aWFsTmF2aWdhdGlvbkVuYWJsZWQ6KEJP
T0wpZmxhZzsKIAotLSAodm9pZClzZXRTdWJ0bGVDcnlwdG9FbmFibGVkOihCT09MKWZsYWc7Ci0t
IChCT09MKXN1YnRsZUNyeXB0b0VuYWJsZWQ7Ci0KIC0gKHZvaWQpc2V0TWVkaWFEZXZpY2VzRW5h
YmxlZDooQk9PTClmbGFnOwogLSAoQk9PTCltZWRpYURldmljZXNFbmFibGVkOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0
L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KaW5kZXggODJjYzY3MDViN2NjNDY4MTAwNTM1NzVhOGNl
NzFmNDBiOWYxMWFmZi4uNWNlYzIzOGRlNjFkYzZiYTQ1ODM0MmJiNjgyYjgwMjg4N2JmMmM1MSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCisrKyBiL1Nv
dXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQpAQCAtMzA1MiwxMCArMzA1Miw2IEBA
IC0gKHZvaWQpX3ByZWZlcmVuY2VzQ2hhbmdlZDooV2ViUHJlZmVyZW5jZXMgKilwcmVmZXJlbmNl
cwogI2VuZGlmCiAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5z
ZXREaXNwbGF5Q29udGVudHNFbmFibGVkKHByZWZlcmVuY2VzLmRpc3BsYXlDb250ZW50c0VuYWJs
ZWQpOwogCi0jaWYgRU5BQkxFKFNVQlRMRV9DUllQVE8pCi0gICAgUnVudGltZUVuYWJsZWRGZWF0
dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRTdWJ0bGVDcnlwdG9FbmFibGVkKFtwcmVmZXJlbmNl
cyBzdWJ0bGVDcnlwdG9FbmFibGVkXSk7Ci0jZW5kaWYKLQogICAgIFJ1bnRpbWVFbmFibGVkRmVh
dHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0VXNlclRpbWluZ0VuYWJsZWQocHJlZmVyZW5jZXMu
dXNlclRpbWluZ0VuYWJsZWQpOwogICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZl
YXR1cmVzKCkuc2V0UmVzb3VyY2VUaW1pbmdFbmFibGVkKHByZWZlcmVuY2VzLnJlc291cmNlVGlt
aW5nRW5hYmxlZCk7CiAgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMo
KS5zZXRMaW5rUHJlbG9hZEVuYWJsZWQocHJlZmVyZW5jZXMubGlua1ByZWxvYWRFbmFibGVkKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc0RlZmluaXRp
b25zLmggYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNEZWZpbml0aW9ucy5o
CmluZGV4IDllZDc4ZGZkOTZhZGQzMjMyYWEyMTg3YjlhMGZkMzllOTkwOTIyMjYuLmMzOTI5M2Y3
ZDg2MGZhZTlhZGFmMmIzZjYzMzk1MmQ5ODJhN2I4MDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc0RlZmluaXRpb25zLmgKKysrIGIvU291cmNlL1dlYktp
dDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzRGVmaW5pdGlvbnMuaApAQCAtMzU4LDcgKzM1OCw2IEBA
CiAgICAgbWFjcm8oTGlua1ByZWxvYWRFbmFibGVkLCBsaW5rUHJlbG9hZEVuYWJsZWQsIEJvb2ws
IGJvb2wsIERFRkFVTFRfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTX0VOQUJMRUQsICJMaW5rIFByZWxv
YWQiLCAiTGluayBwcmVsb2FkIHN1cHBvcnQiKSBcCiAgICAgbWFjcm8oV2ViUlRDTGVnYWN5QVBJ
RGlzYWJsZWQsIHdlYlJUQ0xlZ2FjeUFQSURpc2FibGVkLCBCb29sLCBib29sLCBmYWxzZSwgIlJl
bW92ZSBMZWdhY3kgV2ViUlRDIEFQSSIsICJSZW1vdmUgTGVnYWN5IFdlYlJUQyBBUEkiKSBcCiAg
ICAgbWFjcm8oU3VicmVzb3VyY2VJbnRlZ3JpdHlFbmFibGVkLCBzdWJyZXNvdXJjZUludGVncml0
eUVuYWJsZWQsIEJvb2wsIGJvb2wsIERFRkFVTFRfRVhQRVJJTUVOVEFMX0ZFQVRVUkVTX0VOQUJM
RUQsICJTdWJyZXNvdXJjZUludGVncml0eSIsICJFbmFibGUgU3VicmVzb3VyY2VJbnRlZ3JpdHki
KSBcCi0gICAgbWFjcm8oU3VidGxlQ3J5cHRvRW5hYmxlZCwgc3VidGxlQ3J5cHRvRW5hYmxlZCwg
Qm9vbCwgYm9vbCwgREVGQVVMVF9FWFBFUklNRU5UQUxfRkVBVFVSRVNfRU5BQkxFRCwgIlN1YnRs
ZUNyeXB0byIsICJFbmFibGUgU3VidGxlQ3J5cHRvIHN1cHBvcnQiKSBcCiAgICAgbWFjcm8oVmll
d3BvcnRGaXRFbmFibGVkLCB2aWV3cG9ydEZpdEVuYWJsZWQsIEJvb2wsIGJvb2wsIERFRkFVTFRf
RVhQRVJJTUVOVEFMX0ZFQVRVUkVTX0VOQUJMRUQsICJWaWV3cG9ydCBGaXQiLCAiRW5hYmxlIHZp
ZXdwb3J0LWZpdCB2aWV3cG9ydCBwYXJhbWV0ZXIiKSBcCiAgICAgbWFjcm8oV2ViQW5pbWF0aW9u
c0VuYWJsZWQsIHdlYkFuaW1hdGlvbnNFbmFibGVkLCBCb29sLCBib29sLCBmYWxzZSwgIldlYiBB
bmltYXRpb25zIiwgIldlYiBBbmltYXRpb25zIHByb3RvdHlwZSIpIFwKICAgICBtYWNybyhXZWJH
TDJFbmFibGVkLCB3ZWJHTDJFbmFibGVkLCBCb29sLCBib29sLCBmYWxzZSwgIldlYkdMIDIuMCIs
ICJXZWJHTCAyIHByb3RvdHlwZSIpIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvQy9XS1ByZWZlcmVuY2VzLmNwcAppbmRleCA5ZTJmZmQzMTRiNGQ3ZmMzMTcyZmI0YTczMTNm
YjI5YTJmMjhhNWZlLi5mOGY4MjU0OGI5NjE5ZjQ3MDEyODRhMDU2MWY0NzQzODY4YjNjY2QwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5j
cHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3Bw
CkBAIC0xNzExLDE2ICsxNzExLDYgQEAgdm9pZCBXS1ByZWZlcmVuY2VzU2V0QXBwbGVQYXlDYXBh
YmlsaXR5RGlzY2xvc3VyZUFsbG93ZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXIKICAgICBXZWJL
aXQ6OnRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnNldEFwcGxlUGF5Q2FwYWJpbGl0eURpc2Nsb3N1
cmVBbGxvd2VkKGFsbG93ZWQpOwogfQogCi12b2lkIFdLUHJlZmVyZW5jZXNTZXRTdWJ0bGVDcnlw
dG9FbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZmxhZykKLXsK
LSAgICB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5zZXRTdWJ0bGVDcnlwdG9FbmFibGVkKGZsYWcp
OwotfQotCi1ib29sIFdLUHJlZmVyZW5jZXNHZXRTdWJ0bGVDcnlwdG9FbmFibGVkKFdLUHJlZmVy
ZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpCi17Ci0gICAgcmV0dXJuIHRvSW1wbChwcmVmZXJlbmNl
c1JlZiktPnN1YnRsZUNyeXB0b0VuYWJsZWQoKTsKLX0KLQogdm9pZCBXS1ByZWZlcmVuY2VzU2V0
TGlua1ByZWxvYWRFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wg
ZmxhZykKIHsKICAgICB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5zZXRMaW5rUHJlbG9hZEVuYWJs
ZWQoZmxhZyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQ
cmVmZXJlbmNlc1JlZlByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9X
S1ByZWZlcmVuY2VzUmVmUHJpdmF0ZS5oCmluZGV4IDVkMWY1NTljNmMwZTk2NjdmZDdjOTljZDRj
ZDUxNTVlMTRhZDk1MWUuLmIzMjgxNTY3OWI3NDc1ODA2NDk2ZDM5YzY5NjM5YTJlNGFjMzBiMzYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2Vz
UmVmUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZl
cmVuY2VzUmVmUHJpdmF0ZS5oCkBAIC00NjUsMTAgKzQ2NSw2IEBAIFdLX0VYUE9SVCBib29sIFdL
UHJlZmVyZW5jZXNHZXRVc2VyVGltaW5nRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmKTsKIFdLX0VY
UE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRSZXNvdXJjZVRpbWluZ0VuYWJsZWQoV0tQcmVmZXJl
bmNlc1JlZiwgYm9vbCBmbGFnKTsKIFdLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRSZXNv
dXJjZVRpbWluZ0VuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZik7CiAKLS8vIERlZmF1bHRzIHRvIHRy
dWUKLVdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRTdWJ0bGVDcnlwdG9FbmFibGVkKFdL
UHJlZmVyZW5jZXNSZWYsIGJvb2wgZmxhZyk7Ci1XS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2Vz
R2V0U3VidGxlQ3J5cHRvRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmKTsKLQogLy8gRGVmYXVsdHMg
dG8gdHJ1ZS4KIFdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRMYXJnZUltYWdlQXN5bmNE
ZWNvZGluZ0VuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9vbCBmbGFn
KTsKIFdLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRMYXJnZUltYWdlQXN5bmNEZWNvZGlu
Z0VuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZik7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5k
bGUuY3BwCmluZGV4IDYxZDljYzA3YzhlODkwYTkzMDk4MWZjN2E4NDQ5NDMzYjQxMThlNWQuLjFi
YWIzY2IzOGRjNGE4NTI5MTAyNWEzZTgxOTYwMzUzMDYyZDg0NDYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5k
bGUuY3BwCkBAIC0yMTQsMTEgKzIxNCw2IEBAIHZvaWQgSW5qZWN0ZWRCdW5kbGU6Om92ZXJyaWRl
Qm9vbFByZWZlcmVuY2VGb3JUZXN0UnVubmVyKFdlYlBhZ2VHcm91cFByb3h5KiBwYWdlCiAgICAg
ICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0RW5jcnlwdGVk
TWVkaWFBUElFbmFibGVkKGVuYWJsZWQpOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoU1VCVExFX0NS
WVBUTykKLSAgICBpZiAocHJlZmVyZW5jZSA9PSAiV2ViS2l0U3VidGxlQ3J5cHRvRW5hYmxlZCIp
Ci0gICAgICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0U3Vi
dGxlQ3J5cHRvRW5hYmxlZChlbmFibGVkKTsKLSNlbmRpZgotCiAjaWYgRU5BQkxFKE1FRElBX1NU
UkVBTSkKICAgICBpZiAocHJlZmVyZW5jZSA9PSAiV2ViS2l0TWVkaWFEZXZpY2VzRW5hYmxlZCIp
CiAgICAgICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0TWVk
aWFEZXZpY2VzRW5hYmxlZChlbmFibGVkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCA5NmQ3ODEwMDNjNTJlMDE4ZTM2Zjc1NGQ2NDQ3NTkx
ZWFlODJkODlkLi4zNjkwNmZhZmEwNDVmOGQ1NThhMTI0OTRiNzkzZWRmODcwYzg4Y2M3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysr
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0zMzcx
LDEwICszMzcxLDYgQEAgdm9pZCBXZWJQYWdlOjp1cGRhdGVQcmVmZXJlbmNlcyhjb25zdCBXZWJQ
cmVmZXJlbmNlc1N0b3JlJiBzdG9yZSkKICAgICAgICAgdXBkYXRlVGhyb3R0bGVTdGF0ZSgpOwog
ICAgIH0KIAotI2lmIEVOQUJMRShTVUJUTEVfQ1JZUFRPKQotICAgIFJ1bnRpbWVFbmFibGVkRmVh
dHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0U3VidGxlQ3J5cHRvRW5hYmxlZChzdG9yZS5nZXRC
b29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OnN1YnRsZUNyeXB0b0VuYWJsZWRLZXko
KSkpOwotI2VuZGlmCi0KICAgICBzZXR0aW5ncy5zZXRTdWJyZXNvdXJjZUludGVncml0eUVuYWJs
ZWQoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5OjpzdWJyZXNvdXJj
ZUludGVncml0eUVuYWJsZWRLZXkoKSkpOwogCiAgICAgcGxhdGZvcm1QcmVmZXJlbmNlc0RpZENo
YW5nZShzdG9yZSk7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VM
b2cKaW5kZXggZGU2NWQyYTY5Y2NjMzJjMmExNzJmNjk3ZDUzMWUxOWVlYzlkZWUzMS4uYzc4MWRm
MWRjYjk0MjBlNWVlZWRjZGQ5YmM3Nzg1YWQwYmM0ZTkwMCAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hh
bmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE3LTA2LTA5
ICBKaWV3ZW4gVGFuICA8amlld2VuX3RhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYkNyeXB0
b10gUmVtb3ZlIGV4cGVyaW1lbnRhbCBmZWF0dXJlIGZsYWcgb2YgU3VidGxlQ3J5cHRvCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzMxOTcKKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzMyNjg4MTQ4PgorCisgICAgICAgIFJldmlld2VkIGJ5IEJyZW50
IEZ1bGdoYW0uCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUu
bW06CisgICAgICAgIChlbmFibGVFeHBlcmltZW50YWxGZWF0dXJlcyk6CisgICAgICAgICogV2Vi
S2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHA6CisgICAgICAg
IChXVFI6OkluamVjdGVkQnVuZGxlOjpiZWdpblRlc3RpbmcpOgorICAgICAgICAqIFdlYktpdFRl
c3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5jcHA6CisgICAgICAgIChXVFI6OlRl
c3RSdW5uZXI6OnNldFN1YnRsZUNyeXB0b0VuYWJsZWQpOiBEZWxldGVkLgorICAgICAgICAqIFdl
YktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5oOgorCiAyMDE3LTA2LTA5
ICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFtpT1Mg
RG5EXSBBZGQgYSBob29rIHRvIHBlcmZvcm0gdHdvLXN0ZXAgZHJvcHMgaW4gZWRpdGFibGUgY29u
dGVudApkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVl
Lm1tIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlLm1tCmluZGV4IGE5
ZjIwMDM5ZTg3YTk0Y2U3ZDJmY2ExZGU4ZjgzOGEzMjU5Mjg3NjkuLjhiNjUxNDUyOTJhYTViYzM5
ZDY3YzQwNDM4ZDJmZWY4OGE2NmFkNDcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVl
L21hYy9EdW1wUmVuZGVyVHJlZS5tbQorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRHVt
cFJlbmRlclRyZWUubW0KQEAgLTg0NSw3ICs4NDUsNiBAQCBzdGF0aWMgdm9pZCBlbmFibGVFeHBl
cmltZW50YWxGZWF0dXJlcyhXZWJQcmVmZXJlbmNlcyogcHJlZmVyZW5jZXMpCiAgICAgW3ByZWZl
cmVuY2VzIHNldExpbmtQcmVsb2FkRW5hYmxlZDpZRVNdOwogICAgIFtwcmVmZXJlbmNlcyBzZXRN
ZWRpYVByZWxvYWRpbmdFbmFibGVkOllFU107CiAgICAgLy8gRklYTUU6IElucHV0RXZlbnRzCi0g
ICAgW3ByZWZlcmVuY2VzIHNldFN1YnRsZUNyeXB0b0VuYWJsZWQ6WUVTXTsKICAgICBbcHJlZmVy
ZW5jZXMgc2V0V2ViQW5pbWF0aW9uc0VuYWJsZWQ6WUVTXTsKICAgICBbcHJlZmVyZW5jZXMgc2V0
V2ViR0wyRW5hYmxlZDpZRVNdOwogICAgIFtwcmVmZXJlbmNlcyBzZXRXZWJHUFVFbmFibGVkOllF
U107CmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0lu
amVjdGVkQnVuZGxlLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUv
SW5qZWN0ZWRCdW5kbGUuY3BwCmluZGV4IGE3MjdiMjRkYzU0NGY3YWQ4NzIzNDY0YjhjMzY4Mjlm
ODE2YzA5OTYuLjg5M2IyMjdlMjg4MWNiNTE2ZTQyOWIwYTllNzBkZTdhZWIwYjAwM2IgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5k
bGUuY3BwCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0
ZWRCdW5kbGUuY3BwCkBAIC0zNDcsOCArMzQ3LDYgQEAgdm9pZCBJbmplY3RlZEJ1bmRsZTo6YmVn
aW5UZXN0aW5nKFdLRGljdGlvbmFyeVJlZiBzZXR0aW5ncykKICAgICBtX3Rlc3RSdW5uZXItPnNl
dFRhYktleUN5Y2xlc1Rocm91Z2hFbGVtZW50cyh0cnVlKTsKICAgICBtX3Rlc3RSdW5uZXItPmNs
ZWFyVGVzdFJ1bm5lckNhbGxiYWNrcygpOwogCi0gICAgbV90ZXN0UnVubmVyLT5zZXRTdWJ0bGVD
cnlwdG9FbmFibGVkKHRydWUpOwotCiAgICAgaWYgKG1fdGltZW91dCA+IDApCiAgICAgICAgIG1f
dGVzdFJ1bm5lci0+c2V0Q3VzdG9tVGltZW91dChtX3RpbWVvdXQpOwogCmRpZmYgLS1naXQgYS9U
b29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuY3BwIGIvVG9v
bHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmNwcAppbmRleCBl
MWYyY2JmMTk0ZTkyYWNlZmI3ZmZlNmE5MzNmMjZjYjllYTUxYmY1Li40MzU0NDNlMzIzMTEyMDY0
NzIxMDMyY2Q5MzBhZGY0MmI0ODBjMjg4IDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVu
bmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuY3BwCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RS
dW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5jcHAKQEAgLTM1MywxMyArMzUzLDYgQEAg
dm9pZCBUZXN0UnVubmVyOjpzZXRYU1NBdWRpdG9yRW5hYmxlZChib29sIGVuYWJsZWQpCiAgICAg
V0tCdW5kbGVPdmVycmlkZUJvb2xQcmVmZXJlbmNlRm9yVGVzdFJ1bm5lcihpbmplY3RlZEJ1bmRs
ZS5idW5kbGUoKSwgaW5qZWN0ZWRCdW5kbGUucGFnZUdyb3VwKCksIGtleS5nZXQoKSwgZW5hYmxl
ZCk7CiB9CiAKLXZvaWQgVGVzdFJ1bm5lcjo6c2V0U3VidGxlQ3J5cHRvRW5hYmxlZChib29sIGVu
YWJsZWQpCi17Ci0gICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+IGtleShBZG9wdFdLLCBXS1N0
cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZygiV2ViS2l0U3VidGxlQ3J5cHRvRW5hYmxlZCIpKTsK
LSAgICBhdXRvJiBpbmplY3RlZEJ1bmRsZSA9IEluamVjdGVkQnVuZGxlOjpzaW5nbGV0b24oKTsK
LSAgICBXS0J1bmRsZU92ZXJyaWRlQm9vbFByZWZlcmVuY2VGb3JUZXN0UnVubmVyKGluamVjdGVk
QnVuZGxlLmJ1bmRsZSgpLCBpbmplY3RlZEJ1bmRsZS5wYWdlR3JvdXAoKSwga2V5LmdldCgpLCBl
bmFibGVkKTsKLX0KLQogdm9pZCBUZXN0UnVubmVyOjpzZXRNZWRpYURldmljZXNFbmFibGVkKGJv
b2wgZW5hYmxlZCkKIHsKICAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4ga2V5KEFkb3B0V0ss
IFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKCJXZWJLaXRNZWRpYURldmljZXNFbmFibGVk
IikpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9U
ZXN0UnVubmVyLmggYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RS
dW5uZXIuaAppbmRleCBiOTYxMDAzMjk2NzE4MTY1YjVhMjQ3NWRmNDIxMTk0ODk1N2I5M2RmLi5l
OWM0ZWFhNDA2M2I4NGVhMTUzMGNkNzY5NzBiYzc5OTA1YjZjZWM1IDEwMDY0NAotLS0gYS9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuaAorKysgYi9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuaApAQCAtMTI3LDcg
KzEyNyw2IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEFzeW5jaHJvbm91c1NwZWxsQ2hlY2tpbmdF
bmFibGVkKGJvb2wpOwogICAgIHZvaWQgc2V0QWxsb3dzQW55U1NMQ2VydGlmaWNhdGUoYm9vbCk7
CiAgICAgdm9pZCBzZXRFbmNyeXB0ZWRNZWRpYUFQSUVuYWJsZWQoYm9vbCk7Ci0gICAgdm9pZCBz
ZXRTdWJ0bGVDcnlwdG9FbmFibGVkKGJvb2wpOwogICAgIHZvaWQgc2V0TWVkaWFEZXZpY2VzRW5h
YmxlZChib29sKTsKICAgICB2b2lkIHNldFdlYlJUQ0xlZ2FjeUFQSUVuYWJsZWQoYm9vbCk7CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>