<?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>187260</bug_id>
          
          <creation_ts>2018-07-02 12:30:02 -0700</creation_ts>
          <short_desc>WebCore: Fix clang static analyzer warnings: Assigned value is garbage or undefined</short_desc>
          <delta_ts>2026-01-12 09:02:33 -0800</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>NEW</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=187233</see_also>
          <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="David Kilzer (:ddkilzer)">ddkilzer</reporter>
          <assigned_to name="David Kilzer (:ddkilzer)">ddkilzer</assigned_to>
          <cc>ap</cc>
    
    <cc>bfulgham</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>graouts</cc>
    
    <cc>jiewen_tan</cc>
    
    <cc>svillar</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1438583</commentid>
    <comment_count>0</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2018-07-02 12:30:02 -0700</bug_when>
    <thetext>Fix &quot;Assigned value is garbage or undefined&quot; warnings in WebCore found by clang static analyzer deep analysis.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1438584</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-07-02 12:30:23 -0700</bug_when>
    <thetext>&lt;rdar://problem/41735280&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1438586</commentid>
    <comment_count>2</comment_count>
      <attachid>344127</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2018-07-02 12:34:46 -0700</bug_when>
    <thetext>Created attachment 344127
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1438587</commentid>
    <comment_count>3</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-07-02 12:36:55 -0700</bug_when>
    <thetext>Attachment 344127 did not pass style-queue:


ERROR: Source/WebCore/crypto/CryptoAlgorithmIdentifier.h:33:  enum members should use InterCaps with an initial capital letter or initial &apos;k&apos; for C-style enums.  [readability/enum_casing] [4]
Total errors found: 1 in 12 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1438748</commentid>
    <comment_count>4</comment_count>
      <attachid>344127</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-07-02 18:44:10 -0700</bug_when>
    <thetext>Comment on attachment 344127
Patch v1

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

&gt; Source/WebCore/Modules/mediastream/RTCStatsReport.h:57
&gt;          Type type;

Should type have a default value as well?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1438884</commentid>
    <comment_count>5</comment_count>
      <attachid>344127</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2018-07-03 10:39:46 -0700</bug_when>
    <thetext>Comment on attachment 344127
Patch v1

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

&gt;&gt; Source/WebCore/Modules/mediastream/RTCStatsReport.h:57
&gt;&gt;          Type type;
&gt; 
&gt; Should type have a default value as well?

Yes, but there is no good &quot;Invalid&quot; option to use here as a default value.

I&apos;m torn between using Type::Codec (which would have a value of zero), adding a new &quot;Invalid&quot; enum, or doing nothing and letting the static analyzer warn when a subclass (substruct?) fails to set it.

Thoughts?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1438894</commentid>
    <comment_count>6</comment_count>
      <attachid>344127</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-07-03 11:02:15 -0700</bug_when>
    <thetext>Comment on attachment 344127
Patch v1

LGTM, modulo the comment on VRDisplayEvent below.

(In reply to David Kilzer (:ddkilzer) from comment #5)
&gt; Comment on attachment 344127 [details]
&gt; Patch v1
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=344127&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebCore/Modules/mediastream/RTCStatsReport.h:57
&gt; &gt;&gt;          Type type;
&gt; &gt; 
&gt; &gt; Should type have a default value as well?
&gt; 
&gt; Yes, but there is no good &quot;Invalid&quot; option to use here as a default value.

And we cannot add one since it is bound to IDL.

&gt; I&apos;m torn between using Type::Codec (which would have a value of zero),
&gt; adding a new &quot;Invalid&quot; enum, or doing nothing and letting the static
&gt; analyzer warn when a subclass (substruct?) fails to set it.
&gt; 
&gt; Thoughts?

Ideally, the analyzer warning should be an error for that specific case.
If we cannot make it so, status quo seems fine to me.

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

&gt; Source/WebCore/Modules/webvr/VRDisplayEvent.h:39
&gt; +        VRDisplayEventReason reason { VRDisplayEventReason::Mounted };

Looking at this one, reason is not required, so it should either be std::optional&lt;VRDisplayEventReason&gt; or something like VRDisplayEventReason::None.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1438939</commentid>
    <comment_count>7</comment_count>
      <attachid>344127</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2018-07-03 13:21:02 -0700</bug_when>
    <thetext>Comment on attachment 344127
Patch v1

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

&gt;&gt;&gt;&gt; Source/WebCore/Modules/mediastream/RTCStatsReport.h:57
&gt;&gt;&gt;&gt;          Type type;
&gt;&gt;&gt; 
&gt;&gt;&gt; Should type have a default value as well?
&gt;&gt; 
&gt;&gt; Yes, but there is no good &quot;Invalid&quot; option to use here as a default value.
&gt;&gt; 
&gt;&gt; I&apos;m torn between using Type::Codec (which would have a value of zero), adding a new &quot;Invalid&quot; enum, or doing nothing and letting the static analyzer warn when a subclass (substruct?) fails to set it.
&gt;&gt; 
&gt;&gt; Thoughts?
&gt; 
&gt; And we cannot add one since it is bound to IDL.

I reran the clang static analyzer in deep mode, and I found that in JSRTCStatsReport.cpp, the various convertDictionary() methods can leave Stats.type and (below) IceCandidatePairStats.state undefined.

What are reasonable default values in each of these cases?  The ones that equate to the value zero?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1438944</commentid>
    <comment_count>8</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-07-03 13:33:22 -0700</bug_when>
    <thetext>&gt; &gt; And we cannot add one since it is bound to IDL.
&gt; 
&gt; I reran the clang static analyzer in deep mode, and I found that in
&gt; JSRTCStatsReport.cpp, the various convertDictionary() methods can leave
&gt; Stats.type and (below) IceCandidatePairStats.state undefined.
&gt; 
&gt; What are reasonable default values in each of these cases?  The ones that
&gt; equate to the value zero?

Would std::optional&lt;Type&gt; type do the trick?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1439004</commentid>
    <comment_count>9</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2018-07-03 14:57:37 -0700</bug_when>
    <thetext>(In reply to youenn fablet from comment #8)
&gt; &gt; &gt; And we cannot add one since it is bound to IDL.
&gt; &gt; 
&gt; &gt; I reran the clang static analyzer in deep mode, and I found that in
&gt; &gt; JSRTCStatsReport.cpp, the various convertDictionary() methods can leave
&gt; &gt; Stats.type and (below) IceCandidatePairStats.state undefined.
&gt; &gt; 
&gt; &gt; What are reasonable default values in each of these cases?  The ones that
&gt; &gt; equate to the value zero?
&gt; 
&gt; Would std::optional&lt;Type&gt; type do the trick?

Yes.  We&apos;d have to update the IDL for that change, or just change the instance variables?  (Sorry, I&apos;m not up-to-date on the latest IDL support.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1439008</commentid>
    <comment_count>10</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-07-03 15:01:42 -0700</bug_when>
    <thetext>As long as the dictionary member is not required in the IDL, I would think we can use optional directly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1439057</commentid>
    <comment_count>11</comment_count>
      <attachid>344127</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2018-07-03 16:46:00 -0700</bug_when>
    <thetext>Comment on attachment 344127
Patch v1

Clearing r? flag until I can post a new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1439161</commentid>
    <comment_count>12</comment_count>
      <attachid>344127</attachid>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2018-07-04 01:29:15 -0700</bug_when>
    <thetext>Comment on attachment 344127
Patch v1

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

&gt;&gt; Source/WebCore/Modules/webvr/VRDisplayEvent.h:39
&gt;&gt; +        VRDisplayEventReason reason { VRDisplayEventReason::Mounted };
&gt; 
&gt; Looking at this one, reason is not required, so it should either be std::optional&lt;VRDisplayEventReason&gt; or something like VRDisplayEventReason::None.

Youenn is right the reason is optional. However I&apos;d advice not to change this because I&apos;m going to modify it in a patch that is about to be uploaded for review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1440395</commentid>
    <comment_count>13</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2018-07-09 08:50:20 -0700</bug_when>
    <thetext>(In reply to Sergio Villar Senin from comment #12)
&gt; Comment on attachment 344127 [details]
&gt; Patch v1
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=344127&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebCore/Modules/webvr/VRDisplayEvent.h:39
&gt; &gt;&gt; +        VRDisplayEventReason reason { VRDisplayEventReason::Mounted };
&gt; &gt; 
&gt; &gt; Looking at this one, reason is not required, so it should either be std::optional&lt;VRDisplayEventReason&gt; or something like VRDisplayEventReason::None.
&gt; 
&gt; Youenn is right the reason is optional. However I&apos;d advice not to change
&gt; this because I&apos;m going to modify it in a patch that is about to be uploaded
&gt; for review.

Okay.  Assuming this is Bug 187343.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>344127</attachid>
            <date>2018-07-02 12:34:46 -0700</date>
            <delta_ts>2018-07-03 16:46:00 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>bug-187260-20180702123446.patch</filename>
            <type>text/plain</type>
            <size>12862</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMzNDE0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDllYWNjMGE0MDUwMGRk
NDVkYzg4ZDNlMjZhZmYxNTc4YWZkYmFjNC4uY2RkOTdjMzkxOTIyYmEwOGViMDNkZjVkMDUwMTQx
ZjhlOGYyYzljZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE4LTA3LTAyICBEYXZp
ZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViQ29yZTogRml4IGNs
YW5nIHN0YXRpYyBhbmFseXplciB3YXJuaW5nczogQXNzaWduZWQgdmFsdWUgaXMgZ2FyYmFnZSBv
ciB1bmRlZmluZWQKKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzE4NzI2MD4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVc2UgY2xhc3Mvc3Ry
dWN0IG1lbWJlciBpbml0aWFsaXphdGlvbiB0byBmaXggd2FybmluZ3MuICBJbiBhCisgICAgICAg
IGZldyBjYXNlcywgc3dpdGNoIGZyb20gYXNzaWdubWVudCB0byB7IH0gb3BlcmF0b3IgZm9yCisg
ICAgICAgIGNvbnNpc3RlbmN5LiAgTm90ZXMgYmVsb3cgYXJlIGZvciBjaG9pY2VzIG1hZGUgdGhh
dCBzaG91bGQgYmUKKyAgICAgICAgcmV2aWV3ZWQuCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlh
c3RyZWFtL1JUQ1J0cFBhcmFtZXRlcnMuaDoKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFt
L1JUQ1N0YXRzUmVwb3J0Lmg6CisgICAgICAgICogTW9kdWxlcy93ZWJ2ci9WUkRpc3BsYXlFdmVu
dC5oOgorICAgICAgICAtIFVzZSBWUkRpc3BsYXlFdmVudFJlYXNvbjo6TW91bnRlZCBmb3IgbGFj
ayBvZiBhIGJldHRlciB2YWx1ZS4KKyAgICAgICAgKiBhbmltYXRpb24vS2V5ZnJhbWVFZmZlY3RS
ZWFkT25seS5oOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1NlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpDbG9uZVNlcmlhbGl6ZXI6OndyaXRlKToKKyAgICAgICAg
LSBBZGQgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKSBmb3IgdGhlIGNhc2Ugb2YKKyAgICAg
ICAgICBDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyOjpOT05FLgorICAgICAgICAqIGNyeXB0by9D
cnlwdG9BbGdvcml0aG1JZGVudGlmaWVyLmg6CisgICAgICAgIC0gQWRkIENyeXB0b0FsZ29yaXRo
bUlkZW50aWZpZXI6Ok5PTkUgZm9yIGRlZmF1bHQgdmFsdWUuCisgICAgICAgICogY3J5cHRvL0Ny
eXB0b0FsZ29yaXRobVBhcmFtZXRlcnMuaDoKKyAgICAgICAgLSBVc2UgQ3J5cHRvQWxnb3JpdGht
SWRlbnRpZmllcjo6Tk9ORSBmb3IgZGVmYXVsdCB2YWx1ZS4KKyAgICAgICAgKiBjcnlwdG8vSnNv
bldlYktleS5oOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmg6CisgICAgICAgICogeG1s
L1hQYXRoUGFyc2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlhQYXRoOjpQYXJzZXI6OlRva2Vu
KToKKyAgICAgICAgLSBUcnkgdG8gcGljayByZWFzb25hYmxlIGRlZmF1bHQgdmFsdWVzLgorICAg
ICAgICAqIHhtbC9YUGF0aFZhbHVlLmg6CisKIDIwMTgtMDctMDEgIERhdmlkIEtpbHplciAgPGRk
a2lsemVyQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXSBBZGQgYXNzZXJ0IHRvIGNhdGNoIGlt
cHJvcGVyIHVzZSBvZiBXZWJDb3JlOjpUaW1lciBpbiBVSSBQcm9jZXNzCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1J0cFBhcmFtZXRlcnMuaCBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUnRwUGFyYW1ldGVycy5oCmluZGV4
IGYwZmM4ZWVlZTgwNzY2Yjg1YmNiMjM3N2IyZmJjYTIzYWY2NWE3NWQuLjEyZjg0NjQ1Nzg3YWJi
OTlhYzQzZjk1OTY0NGNmYWI2ODJlNjI0OTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vUlRDUnRwUGFyYW1ldGVycy5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vUlRDUnRwUGFyYW1ldGVycy5oCkBAIC0xLDUgKzEsNSBAQAog
LyoKLSAqIENvcHlyaWdodCAoQykgMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKiBDb3B5cmlnaHQgKEMpIDIwMTctMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTM1LDExICszNSwxMSBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiBzdHJ1Y3QgUlRDUnRwUGFyYW1ldGVycyB7CiAKICAgICBzdHJ1
Y3QgRmVjUGFyYW1ldGVycyB7Ci0gICAgICAgIHVuc2lnbmVkIGxvbmcgc3NyYzsKKyAgICAgICAg
dW5zaWduZWQgbG9uZyBzc3JjIHsgMCB9OwogICAgIH07CiAKICAgICBzdHJ1Y3QgUnR4UGFyYW1l
dGVycyB7Ci0gICAgICAgIHVuc2lnbmVkIGxvbmcgc3NyYzsKKyAgICAgICAgdW5zaWduZWQgbG9u
ZyBzc3JjIHsgMCB9OwogICAgIH07CiAKICAgICBlbnVtIGNsYXNzIFByaW9yaXR5VHlwZSB7IFZl
cnlMb3csIExvdywgTWVkaXVtLCBIaWdoIH07CkBAIC01MCw3ICs1MCw3IEBAIHN0cnVjdCBSVENS
dHBQYXJhbWV0ZXJzIHsKICAgICAgICAgdW5zaWduZWQgc2hvcnQgcGF5bG9hZFR5cGUgeyAwIH07
CiAgICAgICAgIFN0cmluZyBtaW1lVHlwZTsKICAgICAgICAgdW5zaWduZWQgbG9uZyBjbG9ja1Jh
dGUgeyAwIH07Ci0gICAgICAgIHVuc2lnbmVkIHNob3J0IGNoYW5uZWxzID0gMTsKKyAgICAgICAg
dW5zaWduZWQgc2hvcnQgY2hhbm5lbHMgeyAxIH07CiAgICAgfTsKIAogICAgIHN0cnVjdCBFbmNv
ZGluZ1BhcmFtZXRlcnMgewpAQCAtNTgsNyArNTgsNyBAQCBzdHJ1Y3QgUlRDUnRwUGFyYW1ldGVy
cyB7CiAgICAgICAgIFJ0eFBhcmFtZXRlcnMgcnR4OwogICAgICAgICBGZWNQYXJhbWV0ZXJzIGZl
YzsKICAgICAgICAgRHR4U3RhdHVzIGR0eCB7IER0eFN0YXR1czo6RGlzYWJsZWQgfTsKLSAgICAg
ICAgYm9vbCBhY3RpdmUgeyBmYWxzZX07CisgICAgICAgIGJvb2wgYWN0aXZlIHsgZmFsc2UgfTsK
ICAgICAgICAgUHJpb3JpdHlUeXBlIHByaW9yaXR5IHsgUHJpb3JpdHlUeXBlOjpNZWRpdW0gfTsK
ICAgICAgICAgdW5zaWduZWQgbG9uZyBtYXhCaXRyYXRlIHsgMCB9OwogICAgICAgICB1bnNpZ25l
ZCBsb25nIG1heEZyYW1lcmF0ZSB7IDAgfTsKQEAgLTY4LDE0ICs2OCwxNCBAQCBzdHJ1Y3QgUlRD
UnRwUGFyYW1ldGVycyB7CiAKICAgICBzdHJ1Y3QgSGVhZGVyRXh0ZW5zaW9uUGFyYW1ldGVycyB7
CiAgICAgICAgIFN0cmluZyB1cmk7Ci0gICAgICAgIHVuc2lnbmVkIHNob3J0IGlkOworICAgICAg
ICB1bnNpZ25lZCBzaG9ydCBpZCB7IDAgfTsKICAgICB9OwogCiAgICAgU3RyaW5nIHRyYW5zYWN0
aW9uSWQ7CiAgICAgVmVjdG9yPEVuY29kaW5nUGFyYW1ldGVycz4gZW5jb2RpbmdzOwogICAgIFZl
Y3RvcjxIZWFkZXJFeHRlbnNpb25QYXJhbWV0ZXJzPiBoZWFkZXJFeHRlbnNpb25zOwogICAgIFZl
Y3RvcjxDb2RlY1BhcmFtZXRlcnM+IGNvZGVjczsKLSAgICBEZWdyYWRhdGlvblByZWZlcmVuY2Ug
ZGVncmFkYXRpb25QcmVmZXJlbmNlID0gRGVncmFkYXRpb25QcmVmZXJlbmNlOjpCYWxhbmNlZDsK
KyAgICBEZWdyYWRhdGlvblByZWZlcmVuY2UgZGVncmFkYXRpb25QcmVmZXJlbmNlIHsgRGVncmFk
YXRpb25QcmVmZXJlbmNlOjpCYWxhbmNlZCB9OwogfTsKIAogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1N0YXRzUmVwb3J0LmggYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL1JUQ1N0YXRzUmVwb3J0LmgKaW5kZXggMDFmM2U3ZjFl
MTQ4MGZlMDMzNDU0MmU3YjU4NzRlMTcyMzAyZThjMy4uNmExNzQxMjY2OTI1MjUxNTdlZDJiYjkx
YzI0MTQzYTQyZDg0YWIyZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YXN0cmVhbS9SVENTdGF0c1JlcG9ydC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vUlRDU3RhdHNSZXBvcnQuaApAQCAtMSw2ICsxLDYgQEAKIC8qCiAgKiBDb3B5cmln
aHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIENvcHlyaWdo
dCAoQykgMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTctMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTUzLDcgKzUzLDcgQEAgcHVibGljOgogICAgICAgICBD
ZXJ0aWZpY2F0ZQogICAgIH07CiAgICAgc3RydWN0IFN0YXRzIHsKLSAgICAgICAgZG91YmxlIHRp
bWVzdGFtcDsKKyAgICAgICAgZG91YmxlIHRpbWVzdGFtcCB7IDAgfTsKICAgICAgICAgVHlwZSB0
eXBlOwogICAgICAgICBTdHJpbmcgaWQ7CiAgICAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2VidnIvVlJEaXNwbGF5RXZlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2VidnIvVlJEaXNwbGF5RXZlbnQuaAppbmRleCA1OTI5OWNhNTdhZDkwYmUwNmQ1Y2RjMDA1
NzRlNWExOWI1MmFjODJiLi5kNzNkMzA3ZTA5NDQ2NmVjN2U5MzhmMDA3ZDcyNTdhZWNjNWVkODE2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYnZyL1ZSRGlzcGxheUV2ZW50
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJ2ci9WUkRpc3BsYXlFdmVudC5oCkBA
IC0xLDUgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAxNyBJZ2FsaWEgUy5MLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzUsNyAr
MzYsNyBAQCBjbGFzcyBWUkRpc3BsYXlFdmVudCBmaW5hbCA6IHB1YmxpYyBFdmVudCB7CiBwdWJs
aWM6CiAgICAgc3RydWN0IEluaXQgOiBFdmVudEluaXQgewogICAgICAgICBSZWZQdHI8VlJEaXNw
bGF5PiBkaXNwbGF5OwotICAgICAgICBWUkRpc3BsYXlFdmVudFJlYXNvbiByZWFzb247CisgICAg
ICAgIFZSRGlzcGxheUV2ZW50UmVhc29uIHJlYXNvbiB7IFZSRGlzcGxheUV2ZW50UmVhc29uOjpN
b3VudGVkIH07CiAgICAgfTsKIAogICAgIHN0YXRpYyBSZWY8VlJEaXNwbGF5RXZlbnQ+IGNyZWF0
ZShjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUsIGNvbnN0IEluaXQmIGluaXRpYWxpemVyLCBJc1Ry
dXN0ZWQgaXNUcnVzdGVkID0gSXNUcnVzdGVkOjpObykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVmZmVjdFJlYWRPbmx5LmggYi9Tb3VyY2UvV2ViQ29yZS9h
bmltYXRpb24vS2V5ZnJhbWVFZmZlY3RSZWFkT25seS5oCmluZGV4IDE3YzM5NjRiZjFjYzJjZmRj
ZDUzNTU5Y2RhZmI0N2QwYzg0ZjVhMzIuLmZiZmQ1OWE1NjQzOGFhOWIwNDg3NWM3MGI0M2QxNWQ0
NmFiNThiMzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FuaW1hdGlvbi9LZXlmcmFtZUVm
ZmVjdFJlYWRPbmx5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvYW5pbWF0aW9uL0tleWZyYW1lRWZm
ZWN0UmVhZE9ubHkuaApAQCAtODIsNyArODIsNyBAQCBwdWJsaWM6CiAKICAgICBzdHJ1Y3QgQmFz
ZUNvbXB1dGVkS2V5ZnJhbWUgewogICAgICAgICBzdGQ6Om9wdGlvbmFsPGRvdWJsZT4gb2Zmc2V0
OwotICAgICAgICBkb3VibGUgY29tcHV0ZWRPZmZzZXQ7CisgICAgICAgIGRvdWJsZSBjb21wdXRl
ZE9mZnNldCB7IDAgfTsKICAgICAgICAgU3RyaW5nIGVhc2luZyB7ICJsaW5lYXIiIH07CiAgICAg
ICAgIHN0ZDo6b3B0aW9uYWw8Q29tcG9zaXRlT3BlcmF0aW9uPiBjb21wb3NpdGU7CiAgICAgfTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NlcmlhbGl6ZWRTY3JpcHRW
YWx1ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TZXJpYWxpemVkU2NyaXB0VmFs
dWUuY3BwCmluZGV4IGZlYTljMzgxYjExZDRhZDRhOGMyNDU5ZTczYmFkZDdkZmUxNWE4YWEuLjY1
ZTI0YWUzZTE4MjJhMDUxY2Q4Mjg1MzQwNjE4ZWFiOTQwOWViNDAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2VyaWFsaXplZFNjcmlwdFZhbHVlLmNwcApAQCAtMSw1
ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDktMjAxNyBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDktMjAxOCBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTEy
NDQsNiArMTI0NCw5IEBAIHByaXZhdGU6CiAgICAgdm9pZCB3cml0ZShDcnlwdG9BbGdvcml0aG1J
ZGVudGlmaWVyIGFsZ29yaXRobSkKICAgICB7CiAgICAgICAgIHN3aXRjaCAoYWxnb3JpdGhtKSB7
CisgICAgICAgIGNhc2UgQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllcjo6Tk9ORToKKyAgICAgICAg
ICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgICAgICBicmVhazsKICAg
ICAgICAgY2FzZSBDcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyOjpSU0FFU19QS0NTMV92MV81Ogog
ICAgICAgICAgICAgd3JpdGUoQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllclRhZzo6UlNBRVNfUEtD
UzFfdjFfNSk7CiAgICAgICAgICAgICBicmVhazsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2NyeXB0by9DcnlwdG9BbGdvcml0aG1JZGVudGlmaWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9jcnlw
dG8vQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllci5oCmluZGV4IDVjNjY2Y2M4YTJhZWZkNzY5ZWE5
NGE3ZTUxZGRmM2MzMmYyYWU1NTYuLmQwODMwYzJjNGRlMWYxNDEzZTY2YWZlN2IyNjBhNmNmM2Jl
OTFiZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9DcnlwdG9BbGdvcml0aG1J
ZGVudGlmaWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3J5cHRvL0NyeXB0b0FsZ29yaXRobUlk
ZW50aWZpZXIuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEzLTIwMTgg
QXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCkBAIC0zMCw2ICszMCw3IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGVudW0gY2xh
c3MgQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllciB7CisgICAgTk9ORSA9IDAsCiAgICAgUlNBRVNf
UEtDUzFfdjFfNSA9IDEsCiAgICAgUlNBU1NBX1BLQ1MxX3YxXzUsCiAgICAgUlNBX1BTUywKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2NyeXB0by9DcnlwdG9BbGdvcml0aG1QYXJhbWV0ZXJz
LmggYi9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vQ3J5cHRvQWxnb3JpdGhtUGFyYW1ldGVycy5oCmlu
ZGV4IDI5ZTU1NzIzYWE5NjhiY2FjYzkyODlhZTVkOWFiNzM2ZTA5YWE2ZWEuLmFiYzZiNjRmYmIx
ZTlmNzAzYTRkYjk2ZTYwMjQxNDljMzE0NTVkYTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2NyeXB0by9DcnlwdG9BbGdvcml0aG1QYXJhbWV0ZXJzLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
Y3J5cHRvL0NyeXB0b0FsZ29yaXRobVBhcmFtZXRlcnMuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMTYgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDE2LTIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgog
ICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC01Niw3ICs1Niw3IEBAIHB1YmxpYzoK
IAogICAgIC8vIEZJWE1FOiBDb25zaWRlciBtZXJnaW5nIG5hbWUgYW5kIGlkZW50aWZpZXIuCiAg
ICAgU3RyaW5nIG5hbWU7Ci0gICAgQ3J5cHRvQWxnb3JpdGhtSWRlbnRpZmllciBpZGVudGlmaWVy
OworICAgIENyeXB0b0FsZ29yaXRobUlkZW50aWZpZXIgaWRlbnRpZmllciB7IENyeXB0b0FsZ29y
aXRobUlkZW50aWZpZXI6Ok5PTkUgfTsKIAogICAgIHZpcnR1YWwgfkNyeXB0b0FsZ29yaXRobVBh
cmFtZXRlcnMoKSA9IGRlZmF1bHQ7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2NyeXB0
by9Kc29uV2ViS2V5LmggYi9Tb3VyY2UvV2ViQ29yZS9jcnlwdG8vSnNvbldlYktleS5oCmluZGV4
IGJmNDNiMGI5M2Y0MjVhMzg3MDM2YTc5YTI3ODg5YmIxOWE4ZDFiOTkuLjk5M2QzYmFkOTA3MDUx
MTU5YjcyZDBjNzg3NWRkMDBjZTIwYjMyMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Ny
eXB0by9Kc29uV2ViS2V5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3J5cHRvL0pzb25XZWJLZXku
aApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTYgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDE2LTIwMTggQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBA
IC0zOCw3ICszOCw3IEBAIHN0cnVjdCBKc29uV2ViS2V5IHsKICAgICBTdHJpbmcgdXNlOwogICAg
IC8vIEZJWE1FOiBDb25zaWRlciBtZXJnaW5nIGtleV9vcHMgYW5kIHVzYWdlcy4KICAgICBzdGQ6
Om9wdGlvbmFsPFZlY3RvcjxDcnlwdG9LZXlVc2FnZT4+IGtleV9vcHM7Ci0gICAgQ3J5cHRvS2V5
VXNhZ2VCaXRtYXAgdXNhZ2VzOworICAgIENyeXB0b0tleVVzYWdlQml0bWFwIHVzYWdlcyB7IDAg
fTsKICAgICBTdHJpbmcgYWxnOwogCiAgICAgc3RkOjpvcHRpb25hbDxib29sPiBleHQ7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuaAppbmRleCA3MWJiN2MwNTFhYmUyZWFjYTEyODBlMjliNjRm
MmRmZjI0NzdhNDdmLi4wOTNkYmU0OGMxYWZkYzAzZmZmMDMzOTYzY2RhNGVhMTUwZTczMDc1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKQEAgLTEsNiArMSw2IEBACiAvKgogICogQ29w
eXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiBDb3B5
cmlnaHQgKEMpIDIwMTMtMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTMtMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAg
KgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTY5MSwxMSArNjkxLDExIEBAIHB1Ymxp
YzoKIAogICAgIHN0cnVjdCBOb3dQbGF5aW5nU3RhdGUgewogICAgICAgICBTdHJpbmcgdGl0bGU7
Ci0gICAgICAgIGRvdWJsZSBkdXJhdGlvbjsKLSAgICAgICAgZG91YmxlIGVsYXBzZWRUaW1lOwot
ICAgICAgICB1aW50NjRfdCB1bmlxdWVJZGVudGlmaWVyOwotICAgICAgICBib29sIGhhc0FjdGl2
ZVNlc3Npb247Ci0gICAgICAgIGJvb2wgcmVnaXN0ZXJlZEFzTm93UGxheWluZ0FwcGxpY2F0aW9u
OworICAgICAgICBkb3VibGUgZHVyYXRpb24geyAwIH07CisgICAgICAgIGRvdWJsZSBlbGFwc2Vk
VGltZSB7IDAgfTsKKyAgICAgICAgdWludDY0X3QgdW5pcXVlSWRlbnRpZmllciB7IDAgfTsKKyAg
ICAgICAgYm9vbCBoYXNBY3RpdmVTZXNzaW9uIHsgZmFsc2UgfTsKKyAgICAgICAgYm9vbCByZWdp
c3RlcmVkQXNOb3dQbGF5aW5nQXBwbGljYXRpb24geyBmYWxzZSB9OwogICAgIH07CiAgICAgRXhj
ZXB0aW9uT3I8Tm93UGxheWluZ1N0YXRlPiBub3dQbGF5aW5nU3RhdGUoKSBjb25zdDsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUveG1sL1hQYXRoUGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3htbC9YUGF0aFBhcnNlci5jcHAKaW5kZXggZTg2MzI5YWIyZjMyN2M1NmYzMGM3YzkxYzc3
NWVlNTI4M2Q0OWI5OC4uMTNkN2Q1YzM3OGQ2YjZkNDc0MDZkNjRmODhjMDIzZTUyNjI1OTA0MSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUveG1sL1hQYXRoUGFyc2VyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS94bWwvWFBhdGhQYXJzZXIuY3BwCkBAIC0xLDYgKzEsNiBAQAogLyoKICAqIENv
cHlyaWdodCAyMDA1IE1ha3NpbSBPcmxvdmljaCA8bWFrc2ltQGtkZS5vcmc+Ci0gKiBDb3B5cmln
aHQgKEMpIDIwMDYsIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29w
eXJpZ2h0IChDKSAyMDA2LTIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICog
Q29weXJpZ2h0IChDKSAyMDA3IEFsZXhleSBQcm9za3VyeWFrb3YgPGFwQHdlYmtpdC5vcmc+CiAg
KgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CkBAIC00NywxMSArNDcsMTEgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
bmFtZXNwYWNlIFhQYXRoIHsKIAogc3RydWN0IFBhcnNlcjo6VG9rZW4gewotICAgIGludCB0eXBl
OworICAgIGludCB0eXBlIHsgMCB9OwogICAgIFN0cmluZyBzdHJpbmc7Ci0gICAgU3RlcDo6QXhp
cyBheGlzOwotICAgIE51bWVyaWNPcDo6T3Bjb2RlIG51bWVyaWNPcGNvZGU7Ci0gICAgRXFUZXN0
T3A6Ok9wY29kZSBlcXVhbGl0eVRlc3RPcGNvZGU7CisgICAgU3RlcDo6QXhpcyBheGlzIHsgU3Rl
cDo6QXhpczo6U2VsZkF4aXMgfTsKKyAgICBOdW1lcmljT3A6Ok9wY29kZSBudW1lcmljT3Bjb2Rl
IHsgTnVtZXJpY09wOjpPcGNvZGU6Ok9QX0FkZCB9OworICAgIEVxVGVzdE9wOjpPcGNvZGUgZXF1
YWxpdHlUZXN0T3Bjb2RlIHsgRXFUZXN0T3A6Ok9wY29kZTo6T1BfRVEgfTsKIAogICAgIFRva2Vu
KGludCB0eXBlKSA6IHR5cGUodHlwZSkgeyB9CiAgICAgVG9rZW4oaW50IHR5cGUsIGNvbnN0IFN0
cmluZyYgc3RyaW5nKSA6IHR5cGUodHlwZSksIHN0cmluZyhzdHJpbmcpIHsgfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUveG1sL1hQYXRoVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL3htbC9Y
UGF0aFZhbHVlLmgKaW5kZXggZDkxYzc3ZDEwMmQyNGFkMjNlNTkzOTg2ZTA0MGJhMjVjMDlkYjM2
Yi4uMzIyYmMxMzIxNjc3YWQ0ZGFkYjlhOWFiYjkyY2EwODc1NmYwMzQ2NiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUveG1sL1hQYXRoVmFsdWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS94bWwv
WFBhdGhWYWx1ZS5oCkBAIC0xLDYgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAyMDA1IEZyZXJp
Y2ggUmFhYmUgPHJhYWJlQGtkZS5vcmc+Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMDYsIDIwMTMgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2LTIwMTgg
QXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCkBAIC05NCw4ICs5NCw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgICAg
IH07CiAKICAgICAgICAgICAgIFR5cGUgbV90eXBlOwotICAgICAgICAgICAgYm9vbCBtX2Jvb2w7
Ci0gICAgICAgICAgICBkb3VibGUgbV9udW1iZXI7CisgICAgICAgICAgICBib29sIG1fYm9vbCB7
IGZhbHNlIH07CisgICAgICAgICAgICBkb3VibGUgbV9udW1iZXIgeyAwIH07CiAgICAgICAgICAg
ICBSZWZQdHI8RGF0YT4gbV9kYXRhOwogICAgICAgICB9OwogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>