<?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>165351</bug_id>
          
          <creation_ts>2016-12-02 17:44:40 -0800</creation_ts>
          <short_desc>REGRESSION(r208985): SafariForWebKitDevelopment Symbol Not Found looking for method with WTF::Optional</short_desc>
          <delta_ts>2021-07-18 15:02:43 -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>Web Template Framework</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=192728</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=228060</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Joseph Pecoraro">joepeck</reporter>
          <assigned_to name="Joseph Pecoraro">joepeck</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>hi</cc>
    
    <cc>joepeck</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>sam</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1255991</commentid>
    <comment_count>0</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-12-02 17:44:40 -0800</bug_when>
    <thetext>Summary:
SafariForWebKitDevelopment crashes failing to find a symbol:

    Starting SafariForWebKitDevelopment with DYLD_FRAMEWORK_PATH set to point to built WebKit in /Users/dcrousso/Documents/Projects/WebKit/WebKitBuild/Release.
    dyld: Symbol not found: __ZN9Inspector17BackendDispatcher19reportProtocolErrorEN3WTF8OptionalIlEENS0_15CommonErrorCodeERKNS1_6StringE
      Referenced from: /System/Library/PrivateFrameworks/WebInspector.framework/Versions/A/WebInspector
      Expected in: /Users/username/Documents/Projects/WebKit/WebKitBuild/Release/JavaScriptCore.framework/Versions/A/JavaScriptCore
     in /System/Library/PrivateFrameworks/WebInspector.framework/Versions/A/WebInspector

Notes:
- The exported symbol changed when we switched from WTF::Optional to std::optional
- I think we may need to provide a Legacy WTF::Optional implementation for Legacy Safari support.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1256001</commentid>
    <comment_count>1</comment_count>
      <attachid>296033</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-12-02 19:01:21 -0800</bug_when>
    <thetext>Created attachment 296033
[PATCH] Proposed Fix

Devin, can you test this patch?

We can probably slim down wtf/DeprecatedOptional quite a bit more, but this should be enough to at least verify you can run Safari.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1256002</commentid>
    <comment_count>2</comment_count>
      <attachid>296033</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-12-02 19:07:33 -0800</bug_when>
    <thetext>Comment on attachment 296033
[PATCH] Proposed Fix

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

&gt; Source/WTF/wtf/DeprecatedOptional.h:27
&gt; +// version of Safari uses. Once Safari stops using them, we should remove them.

I&apos;ll address the grammar issue here.

&gt; Source/WTF/wtf/DeprecatedOptional.h:43
&gt; +    Optional()
&gt; +        : m_isEngaged(false)
&gt; +    {
&gt; +    }

Most of these are probably not necessary, in trunk we only need to if check and extract a value if there was one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1256003</commentid>
    <comment_count>3</comment_count>
      <attachid>296034</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-12-02 19:14:33 -0800</bug_when>
    <thetext>Created attachment 296034
[PATCH] Proposed Fix - Super Slim</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1256034</commentid>
    <comment_count>4</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2016-12-03 00:36:49 -0800</bug_when>
    <thetext>(In reply to comment #1)
&gt; Devin, can you test this patch?

This works for me :) Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1256038</commentid>
    <comment_count>5</comment_count>
      <attachid>296034</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2016-12-03 02:14:43 -0800</bug_when>
    <thetext>Comment on attachment 296034
[PATCH] Proposed Fix - Super Slim

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

Oops! Nice, r=me with suggestion.

&gt; Source/WTF/wtf/DeprecatedOptional.h:46
&gt; +    typename std::aligned_storage&lt;sizeof(T), std::alignment_of&lt;T&gt;::value&gt;::type m_value;

We can use std::optional&lt;T&gt; to implement this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1256049</commentid>
    <comment_count>6</comment_count>
      <attachid>296034</attachid>
    <who name="">mitz</who>
    <bug_when>2016-12-03 08:33:50 -0800</bug_when>
    <thetext>Comment on attachment 296034
[PATCH] Proposed Fix - Super Slim

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

&gt; Source/JavaScriptCore/inspector/InspectorBackendDispatcher.h:94
&gt; +    // This is necessary for legacy versions of Safari. Remove it when those versions of Safari are no longer supported.

This is needed for the shipping version of Safari. TOT is not required to work with “legacy” versions.

&gt; Source/JavaScriptCore/inspector/InspectorBackendDispatcher.h:95
&gt; +    void reportProtocolError(WTF::DeprecatedOptional&lt;long&gt; relatedRequestId, CommonErrorCode, const String&amp; errorMessage);

I think this can be a private member function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1256094</commentid>
    <comment_count>7</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-12-03 12:59:45 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; Comment on attachment 296034 [details]
&gt; [PATCH] Proposed Fix - Super Slim
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=296034&amp;action=review
&gt; 
&gt; Oops! Nice, r=me with suggestion.
&gt; 
&gt; &gt; Source/WTF/wtf/DeprecatedOptional.h:46
&gt; &gt; +    typename std::aligned_storage&lt;sizeof(T), std::alignment_of&lt;T&gt;::value&gt;::type m_value;
&gt; 
&gt; We can use std::optional&lt;T&gt; to implement this.

One concern brought up to me in person was that the data layout should be the same as the original WTF::Optional. I am not confident in changing the implementation given all the specificity here (alignment).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1256154</commentid>
    <comment_count>8</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2016-12-03 15:48:45 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; (In reply to comment #5)
&gt; &gt; Comment on attachment 296034 [details]
&gt; &gt; [PATCH] Proposed Fix - Super Slim
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=296034&amp;action=review
&gt; &gt; 
&gt; &gt; Oops! Nice, r=me with suggestion.
&gt; &gt; 
&gt; &gt; &gt; Source/WTF/wtf/DeprecatedOptional.h:46
&gt; &gt; &gt; +    typename std::aligned_storage&lt;sizeof(T), std::alignment_of&lt;T&gt;::value&gt;::type m_value;
&gt; &gt; 
&gt; &gt; We can use std::optional&lt;T&gt; to implement this.
&gt; 
&gt; One concern brought up to me in person was that the data layout should be
&gt; the same as the original WTF::Optional. I am not confident in changing the
&gt; implementation given all the specificity here (alignment).

Right. So it is OK. The layout of std::optional is not guaranteed to be the same.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1256386</commentid>
    <comment_count>9</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-12-05 10:55:22 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; Comment on attachment 296034 [details]
&gt; [PATCH] Proposed Fix - Super Slim
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=296034&amp;action=review
&gt; 
&gt; &gt; Source/JavaScriptCore/inspector/InspectorBackendDispatcher.h:94
&gt; &gt; +    // This is necessary for legacy versions of Safari. Remove it when those versions of Safari are no longer supported.
&gt; 
&gt; This is needed for the shipping version of Safari. TOT is not required to
&gt; work with “legacy” versions.

I reworded.


&gt; &gt; Source/JavaScriptCore/inspector/InspectorBackendDispatcher.h:95
&gt; &gt; +    void reportProtocolError(WTF::DeprecatedOptional&lt;long&gt; relatedRequestId, CommonErrorCode, const String&amp; errorMessage);
&gt; 
&gt; I think this can be a private member function.

Yep, this looks good.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1256388</commentid>
    <comment_count>10</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2016-12-05 11:03:00 -0800</bug_when>
    <thetext>&lt;https://trac.webkit.org/changeset/209326&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>296033</attachid>
            <date>2016-12-02 19:01:21 -0800</date>
            <delta_ts>2016-12-05 10:55:32 -0800</delta_ts>
            <desc>[PATCH] Proposed Fix</desc>
            <filename>wtf-1.patch</filename>
            <type>text/plain</type>
            <size>11960</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGIzNzg0YWUuLjNhMDllZjYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE2LTEyLTAyICBKb3NlcGggUGVjb3Jh
cm8gIDxwZWNvcmFyb0BhcHBsZS5jb20+CisKKyAgICAgICAgUkVHUkVTU0lPTihyMjA4OTg1KTog
U2FmYXJpRm9yV2ViS2l0RGV2ZWxvcG1lbnQgU3ltYm9sIE5vdCBGb3VuZCBsb29raW5nIGZvciBt
ZXRob2Qgd2l0aCBXVEY6Ok9wdGlvbmFsCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNjUzNTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBPbGRlciB2ZXJzaW9ucyBvZiBTYWZhcmkgZXhwZWN0OgorCisgICAg
ICAgICAgICBJbnNwZWN0b3I6OkJhY2tlbmREaXNwYXRjaGVyOjpyZXBvcnRQcm90b2NvbEVycm9y
KFdURjo6T3B0aW9uYWw8bG9uZz4sIEluc3BlY3Rvcjo6QmFja2VuZERpc3BhdGNoZXI6OkNvbW1v
bkVycm9yQ29kZSwgV1RGOjpTdHJpbmcgY29uc3QmKQorICAgICAgICAKKyAgICAgICAgV2hpY2gg
d2UgaGFkIHVwZGF0ZWQgdG8gdXNlIHN0ZDo6b3B0aW9uYWwuIEV4cG9zZSBhIHZlcnNpb24gd2l0
aCB0aGUgb3JpZ2luYWwKKyAgICAgICAgU3ltYm9sIGZvciBvbGRlciBTYWZhcmlzLiBUaGlzIHN0
dWIgd2lsbCBqdXN0IGNhbGwgdGhyb3VnaCB0byB0aGUgbmV3IHZlcnNpb24uCisKKyAgICAgICAg
KiBpbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZERpc3BhdGNoZXIuY3BwOgorICAgICAgICAoSW5z
cGVjdG9yOjpCYWNrZW5kRGlzcGF0Y2hlcjo6cmVwb3J0UHJvdG9jb2xFcnJvcik6CisgICAgICAg
ICogaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmREaXNwYXRjaGVyLmg6CisKIDIwMTYtMTItMDIg
IEtlaXRoIE1pbGxlciAgPGtlaXRoX21pbGxlckBhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZp
ZXdlZCwgZm9yZ290IHRvIGNoYW5nZSBpbnN0cnVjdGlvbiBhZnRlciByZW5hbWluZy4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZERp
c3BhdGNoZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JC
YWNrZW5kRGlzcGF0Y2hlci5jcHAKaW5kZXggMjM4OGMyOC4uOTlmMDBjMiAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hl
ci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYWNr
ZW5kRGlzcGF0Y2hlci5jcHAKQEAgLTI2NSw2ICsyNjUsMTYgQEAgdm9pZCBCYWNrZW5kRGlzcGF0
Y2hlcjo6cmVwb3J0UHJvdG9jb2xFcnJvcihzdGQ6Om9wdGlvbmFsPGxvbmc+IHJlbGF0ZWRSZXF1
ZXN0SWQKICAgICBtX3Byb3RvY29sRXJyb3JzLmFwcGVuZChzdGQ6OnR1cGxlPENvbW1vbkVycm9y
Q29kZSwgU3RyaW5nPihlcnJvckNvZGUsIGVycm9yTWVzc2FnZSkpOwogfQogCisjaWYgUExBVEZP
Uk0oTUFDKQordm9pZCBCYWNrZW5kRGlzcGF0Y2hlcjo6cmVwb3J0UHJvdG9jb2xFcnJvcihXVEY6
OkRlcHJlY2F0ZWRPcHRpb25hbDxsb25nPiByZWxhdGVkUmVxdWVzdElkLCBDb21tb25FcnJvckNv
ZGUgZXJyb3JDb2RlLCBjb25zdCBTdHJpbmcmIGVycm9yTWVzc2FnZSkKK3sKKyAgICBpZiAocmVs
YXRlZFJlcXVlc3RJZCkKKyAgICAgICAgcmVwb3J0UHJvdG9jb2xFcnJvcigqcmVsYXRlZFJlcXVl
c3RJZCwgZXJyb3JDb2RlLCBlcnJvck1lc3NhZ2UpOworICAgIGVsc2UKKyAgICAgICAgcmVwb3J0
UHJvdG9jb2xFcnJvcihzdGQ6Om51bGxvcHQsIGVycm9yQ29kZSwgZXJyb3JNZXNzYWdlKTsKK30K
KyNlbmRpZgorCiB0ZW1wbGF0ZTx0eXBlbmFtZSBUPgogVCBCYWNrZW5kRGlzcGF0Y2hlcjo6Z2V0
UHJvcGVydHlWYWx1ZShJbnNwZWN0b3JPYmplY3QqIG9iamVjdCwgY29uc3QgU3RyaW5nJiBuYW1l
LCBib29sKiBvdXRfb3B0aW9uYWxWYWx1ZUZvdW5kLCBUIGRlZmF1bHRWYWx1ZSwgc3RkOjpmdW5j
dGlvbjxib29sKEluc3BlY3RvclZhbHVlJiwgVCYpPiBhc01ldGhvZCwgY29uc3QgY2hhciogdHlw
ZU5hbWUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvckJhY2tlbmREaXNwYXRjaGVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckJhY2tlbmREaXNwYXRjaGVyLmgKaW5kZXggOTI3NjQyYy4uZDczODllZiAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYWNr
ZW5kRGlzcGF0Y2hlci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSW5z
cGVjdG9yQmFja2VuZERpc3BhdGNoZXIuaApAQCAtMjgsNiArMjgsNyBAQAogCiAjaW5jbHVkZSAi
SW5zcGVjdG9yRnJvbnRlbmRSb3V0ZXIuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JQcm90b2NvbFR5
cGVzLmgiCisjaW5jbHVkZSA8d3RmL0RlcHJlY2F0ZWRPcHRpb25hbC5oPgogI2luY2x1ZGUgPHd0
Zi9PcHRpb25hbC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3Rm
L3RleHQvV1RGU3RyaW5nLmg+CkBAIC04OSw2ICs5MCwxMSBAQCBwdWJsaWM6CiAgICAgdm9pZCBy
ZXBvcnRQcm90b2NvbEVycm9yKENvbW1vbkVycm9yQ29kZSwgY29uc3QgU3RyaW5nJiBlcnJvck1l
c3NhZ2UpOwogICAgIHZvaWQgcmVwb3J0UHJvdG9jb2xFcnJvcihzdGQ6Om9wdGlvbmFsPGxvbmc+
IHJlbGF0ZWRSZXF1ZXN0SWQsIENvbW1vbkVycm9yQ29kZSwgY29uc3QgU3RyaW5nJiBlcnJvck1l
c3NhZ2UpOwogCisjaWYgUExBVEZPUk0oTUFDKQorICAgIC8vIFRoaXMgaXMgbmVjZXNzYXJ5IGZv
ciBsZWdhY3kgdmVyc2lvbnMgb2YgU2FmYXJpLiBSZW1vdmUgaXQgd2hlbiB0aG9zZSB2ZXJzaW9u
cyBvZiBTYWZhcmkgYXJlIG5vIGxvbmdlciBzdXBwb3J0ZWQuCisgICAgdm9pZCByZXBvcnRQcm90
b2NvbEVycm9yKFdURjo6RGVwcmVjYXRlZE9wdGlvbmFsPGxvbmc+IHJlbGF0ZWRSZXF1ZXN0SWQs
IENvbW1vbkVycm9yQ29kZSwgY29uc3QgU3RyaW5nJiBlcnJvck1lc3NhZ2UpOworI2VuZGlmCisK
ICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPgogICAgIFdURl9ISURERU5fREVDTEFSQVRJT04KICAg
ICBUIGdldFByb3BlcnR5VmFsdWUoSW5zcGVjdG9yT2JqZWN0KiwgY29uc3QgU3RyaW5nJiBuYW1l
LCBib29sKiBvdXRfb3B0aW9uYWxWYWx1ZUZvdW5kLCBUIGRlZmF1bHRWYWx1ZSwgc3RkOjpmdW5j
dGlvbjxib29sKEluc3BlY3RvclZhbHVlJiwgVCYpPiwgY29uc3QgY2hhciogdHlwZU5hbWUpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dURi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwpp
bmRleCBjZmNhMDkwLi4wNjUxMmZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDE2LTEyLTAyICBK
b3NlcGggUGVjb3Jhcm8gIDxwZWNvcmFyb0BhcHBsZS5jb20+CisKKyAgICAgICAgUkVHUkVTU0lP
TihyMjA4OTg1KTogU2FmYXJpRm9yV2ViS2l0RGV2ZWxvcG1lbnQgU3ltYm9sIE5vdCBGb3VuZCBs
b29raW5nIGZvciBtZXRob2Qgd2l0aCBXVEY6Ok9wdGlvbmFsCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjUzNTEKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbmNsdWRlIGEgc2xpbW1lZCBkb3duIHZlcnNp
b24gb2YgV1RGOjpPcHRpb25hbCB3aGljaCBvbGRlciB2ZXJzaW9ucworICAgICAgICBvZiBTYWZh
cmkgc3RpbGwgZGVwZW5kIG9uIGZvciBhIEphdmFTY3JpcHRDb3JlIGV4cG9ydGVkIHN5bWJvbC4K
KyAgICAgICAgVG8gcHJldmVudCBtaXN1c2UgbmFtZSBpdCBXVEY6OkRlcHJlY2F0ZWRPcHRpb25h
bCBhbmQgdXNlIGl0IG9ubHkgaW4KKyAgICAgICAgdGhlIG9uZSBpbnN0YW5jZSBpdCBpcyBuZWVk
ZWQuCisKKyAgICAgICAgKiBXVEYueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAg
KiB3dGYvRGVwcmVjYXRlZE9wdGlvbmFsLmg6IEFkZGVkLgorICAgICAgICAoV1RGOjpPcHRpb25h
bDo6T3B0aW9uYWwpOgorICAgICAgICAoV1RGOjpPcHRpb25hbDo6fk9wdGlvbmFsKToKKyAgICAg
ICAgKFdURjo6T3B0aW9uYWw6Om9wZXJhdG9yIGJvb2wpOgorICAgICAgICAoV1RGOjpPcHRpb25h
bDo6b3BlcmF0b3ItPik6CisgICAgICAgIChXVEY6Ok9wdGlvbmFsOjpvcGVyYXRvciopOgorICAg
ICAgICAoV1RGOjpPcHRpb25hbDo6dmFsdWUpOgorICAgICAgICAoV1RGOjpPcHRpb25hbDo6YXNQ
dHIpOgorICAgICAgICAoV1RGOjpPcHRpb25hbDo6ZGVzdHJveSk6CisKIDIwMTYtMTItMDEgIFl1
c3VrZSBTdXp1a2kgIDx1dGF0YW5lLnRlYUBnbWFpbC5jb20+CiAKICAgICAgICAgSW50cm9kdWNl
IFN0cmluZ0ltcGw6OlN0YXRpY1N0cmluZ0ltcGwgd2l0aCBjb25zdGV4cHIgY29uc3RydWN0b3IK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvV1RGLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGQzNmEyZGQuLjUy
M2I0MGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvV1RGLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKKysrIGIvU291cmNlL1dURi9XVEYueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTYx
LDYgKzE2MSw3IEBACiAJCTlCRDhGNDBCMTc2QzJCNDcwMDAyRDg2NSAvKiBBdG9taWNTdHJpbmdU
YWJsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOUJE
OEY0MEExNzZDMkFEODAwMDJEODY1IC8qIEF0b21pY1N0cmluZ1RhYmxlLmggKi87IH07CiAJCUE1
MDk4QjAwMUMxNjlFMDcwMDA4Nzc5NyAvKiBTYW5kYm94U1BJLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTA5OEFGRjFDMTY5RTA3MDAwODc3OTcgLyog
U2FuZGJveFNQSS5oICovOyB9OwogCQlBNTA5OEIwMjFDMTZBNEY5MDAwODc3OTcgLyogU2VjdXJp
dHlTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1
MDk4QjAxMUMxNkE0RjkwMDA4Nzc5NyAvKiBTZWN1cml0eVNQSS5oICovOyB9OworCQlBNTYxRjMx
MDFERjI2NDIxMDBGRjY3NUQgLyogRGVwcmVjYXRlZE9wdGlvbmFsLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTYxRjMwRjFERjI2NDIxMDBGRjY3NUQg
LyogRGVwcmVjYXRlZE9wdGlvbmFsLmggKi87IH07CiAJCUE1QkExNUYzMTgyNDMzQTkwMEE4MkU2
OSAvKiBTdHJpbmdNYWMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBBNUJBMTVGMjE4MjQzM0E5MDBBODJFNjkgLyogU3RyaW5nTWFjLm1tICovOyB9Owog
CQlBNUJBMTVGNTE4MjQzNDgwMDBBODJFNjkgLyogU3RyaW5nSW1wbE1hYy5tbSBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE1QkExNUY0MTgyNDM0ODAwMEE4
MkU2OSAvKiBTdHJpbmdJbXBsTWFjLm1tICovOyB9OwogCQlBNUJBMTVGQTE4MjQzNUE2MDBBODJF
NjkgLyogQXRvbWljU3RyaW5nSW1wbENGLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEE1QkExNUY3MTgyNDM1QTYwMEE4MkU2OSAvKiBBdG9taWNTdHJp
bmdJbXBsQ0YuY3BwICovOyB9OwpAQCAtNTI3LDYgKzUyOCw3IEBACiAJCTlDNjdDNTQyNTg5MzQ4
RTI4NUI0OTY5OSAvKiBJbmRleGVkQ29udGFpbmVySXRlcmF0b3IuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSW5kZXhlZENvbnRhaW5lckl0ZXJhdG9yLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUE1MDk4QUZGMUMxNjlFMDcwMDA4Nzc5NyAvKiBTYW5kYm94U1BJ
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNhbmRib3hTUEkuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTUwOThCMDExQzE2QTRGOTAwMDg3Nzk3IC8qIFNlY3Vy
aXR5U1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNlY3VyaXR5U1BJLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUE1NjFGMzBGMURGMjY0MjEwMEZGNjc1RCAv
KiBEZXByZWNhdGVkT3B0aW9uYWwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
RGVwcmVjYXRlZE9wdGlvbmFsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE1QkEx
NUYyMTgyNDMzQTkwMEE4MkU2OSAvKiBTdHJpbmdNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5vYmpjcHA7IG5hbWUgPSBTdHJpbmdNYWMubW07IHBhdGggPSBtYWMvU3RyaW5nTWFjLm1t
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBNUJBMTVGNDE4MjQzNDgwMDBBODJFNjkg
LyogU3RyaW5nSW1wbE1hYy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFt
ZSA9IFN0cmluZ0ltcGxNYWMubW07IHBhdGggPSBtYWMvU3RyaW5nSW1wbE1hYy5tbTsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTVCQTE1RjcxODI0MzVBNjAwQTgyRTY5IC8qIEF0b21p
Y1N0cmluZ0ltcGxDRi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBB
dG9taWNTdHJpbmdJbXBsQ0YuY3BwOyBwYXRoID0gY2YvQXRvbWljU3RyaW5nSW1wbENGLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTkxMiw2ICs5MTQsNyBAQAogCQkJCUE4QTQ3
MjdCMTUxQTgyNUEwMDQxMjNGRiAvKiBEZWNpbWFsTnVtYmVyLmNwcCAqLywKIAkJCQlBOEE0NzI3
QzE1MUE4MjVBMDA0MTIzRkYgLyogRGVjaW1hbE51bWJlci5oICovLAogCQkJCTBGMkI2NkE0MTdC
NkI0RjcwMEE3QUUzRiAvKiBEZWZlcnJhYmxlUmVmQ291bnRlZC5oICovLAorCQkJCUE1NjFGMzBG
MURGMjY0MjEwMEZGNjc1RCAvKiBEZXByZWNhdGVkT3B0aW9uYWwuaCAqLywKIAkJCQlBOEE0NzI3
RTE1MUE4MjVBMDA0MTIzRkYgLyogRGVxdWUuaCAqLywKIAkJCQlBOEE0NzI3RjE1MUE4MjVBMDA0
MTIzRkYgLyogRGlzYWxsb3dDVHlwZS5oICovLAogCQkJCTBGNDU3MDQyMUJFNUI1OEYwMDYyQTYy
OSAvKiBEb21pbmF0b3JzLmggKi8sCkBAIC0xNDI4LDYgKzE0MzEsNyBAQAogCQkJCUE4QTQ3NDE3
MTUxQTgyNUIwMDQxMjNGRiAvKiBSZWRCbGFja1RyZWUuaCBpbiBIZWFkZXJzICovLAogCQkJCTI2
Mjk5QjZFMTdBOUU1QjgwMEFERUJFNSAvKiBSZWYuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4QTQ3
NDE4MTUxQTgyNUIwMDQxMjNGRiAvKiBSZWZDb3VudGVkLmggaW4gSGVhZGVycyAqLywKKwkJCQlB
NTYxRjMxMDFERjI2NDIxMDBGRjY3NUQgLyogRGVwcmVjYXRlZE9wdGlvbmFsLmggaW4gSGVhZGVy
cyAqLywKIAkJCQlBOEE0NzQxOTE1MUE4MjVCMDA0MTIzRkYgLyogUmVmQ291bnRlZEFycmF5Lmgg
aW4gSGVhZGVycyAqLywKIAkJCQlBOEE0NzQxQjE1MUE4MjVCMDA0MTIzRkYgLyogUmVmQ291bnRl
ZExlYWtDb3VudGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk4NkY0NkY2MTFBMjg0MEVFMDBDQ0JG
MjIgLyogUmVmQ291bnRlci5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RG
L3d0Zi9EZXByZWNhdGVkT3B0aW9uYWwuaCBiL1NvdXJjZS9XVEYvd3RmL0RlcHJlY2F0ZWRPcHRp
b25hbC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE0YTNhNGIKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9EZXByZWNhdGVkT3B0aW9uYWwuaApAQCAtMCww
ICsxLDEyMiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCwgMjAxNiBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKy8vIFRoaXMgZmlsZSBjb250YWlucyBhIGRl
cHJlY2F0ZWQgdmVyc2lvbiBvZiBXVEY6Ok9wdGlvbmFsIHdoaWNoIHRoZSBsYXN0IHJlbGVhc2Vk
CisvLyB2ZXJzaW9uIG9mIFNhZmFyaSB1c2VzLiBPbmNlIFNhZmFyaSBzdG9wcyB1c2luZyB0aGVt
LCB3ZSBzaG91bGQgcmVtb3ZlIHRoZW0uCisvLyBOZXcgY29kZSBzaG91bGQgdXNlIHN0ZDo6b3B0
aW9uYWwuCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8dHlwZV90cmFpdHM+CisjaW5jbHVk
ZSA8d3RmL0Fzc2VydGlvbnMuaD4KKworbmFtZXNwYWNlIFdURiB7CisKK3RlbXBsYXRlPHR5cGVu
YW1lIFQ+CitjbGFzcyBPcHRpb25hbCB7CitwdWJsaWM6CisgICAgT3B0aW9uYWwoKQorICAgICAg
ICA6IG1faXNFbmdhZ2VkKGZhbHNlKQorICAgIHsKKyAgICB9CisKKyAgICBleHBsaWNpdCBPcHRp
b25hbChjb25zdCBUJiB2YWx1ZSkKKyAgICAgICAgOiBtX2lzRW5nYWdlZCh0cnVlKQorICAgIHsK
KyAgICAgICAgbmV3IChOb3ROdWxsLCAmbV92YWx1ZSkgVCh2YWx1ZSk7CisgICAgfQorCisgICAg
ZXhwbGljaXQgT3B0aW9uYWwoY29uc3QgT3B0aW9uYWwmIG90aGVyKQorICAgICAgICA6IG1faXNF
bmdhZ2VkKG90aGVyLm1faXNFbmdhZ2VkKQorICAgIHsKKyAgICAgICAgaWYgKG1faXNFbmdhZ2Vk
KQorICAgICAgICAgICAgbmV3IChOb3ROdWxsLCAmbV92YWx1ZSkgVCgqb3RoZXIuYXNQdHIoKSk7
CisgICAgfQorCisgICAgZXhwbGljaXQgT3B0aW9uYWwoT3B0aW9uYWwmJiBvdGhlcikKKyAgICAg
ICAgOiBtX2lzRW5nYWdlZChvdGhlci5tX2lzRW5nYWdlZCkKKyAgICB7CisgICAgICAgIGlmICht
X2lzRW5nYWdlZCkKKyAgICAgICAgICAgIG5ldyAoTm90TnVsbCwgJm1fdmFsdWUpIFQoV1RGTW92
ZSgqb3RoZXIuYXNQdHIoKSkpOworICAgIH0KKworICAgIGV4cGxpY2l0IE9wdGlvbmFsKFQmJiB2
YWx1ZSkKKyAgICAgICAgOiBtX2lzRW5nYWdlZCh0cnVlKQorICAgIHsKKyAgICAgICAgbmV3IChO
b3ROdWxsLCAmbV92YWx1ZSkgVChXVEZNb3ZlKHZhbHVlKSk7CisgICAgfQorCisgICAgfk9wdGlv
bmFsKCkKKyAgICB7CisgICAgICAgIGRlc3Ryb3koKTsKKyAgICB9CisKKyAgICBleHBsaWNpdCBv
cGVyYXRvciBib29sKCkgY29uc3QgeyByZXR1cm4gbV9pc0VuZ2FnZWQ7IH0KKworICAgIGNvbnN0
IFQqIG9wZXJhdG9yLT4oKSBjb25zdAorICAgIHsKKyAgICAgICAgQVNTRVJUKG1faXNFbmdhZ2Vk
KTsKKyAgICAgICAgcmV0dXJuIGFzUHRyKCk7CisgICAgfQorCisgICAgVCogb3BlcmF0b3ItPigp
CisgICAgeworICAgICAgICBBU1NFUlQobV9pc0VuZ2FnZWQpOworICAgICAgICByZXR1cm4gYXNQ
dHIoKTsKKyAgICB9CisKKyAgICBjb25zdCBUJiBvcGVyYXRvciooKSBjb25zdCB7IHJldHVybiB2
YWx1ZSgpOyB9CisgICAgVCYgb3BlcmF0b3IqKCkgeyByZXR1cm4gdmFsdWUoKTsgfQorCisgICAg
VCYgdmFsdWUoKQorICAgIHsKKyAgICAgICAgQVNTRVJUKG1faXNFbmdhZ2VkKTsKKyAgICAgICAg
cmV0dXJuICphc1B0cigpOworICAgIH0KKworICAgIGNvbnN0IFQmIHZhbHVlKCkgY29uc3QKKyAg
ICB7CisgICAgICAgIEFTU0VSVChtX2lzRW5nYWdlZCk7CisgICAgICAgIHJldHVybiAqYXNQdHIo
KTsKKyAgICB9CisKK3ByaXZhdGU6CisgICAgY29uc3QgVCogYXNQdHIoKSBjb25zdCB7IHJldHVy
biByZWludGVycHJldF9jYXN0PGNvbnN0IFQqPigmbV92YWx1ZSk7IH0KKyAgICBUKiBhc1B0cigp
IHsgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8VCo+KCZtX3ZhbHVlKTsgfQorICAgIHZvaWQgZGVz
dHJveSgpCisgICAgeworICAgICAgICBpZiAobV9pc0VuZ2FnZWQpIHsKKyAgICAgICAgICAgIGFz
UHRyKCktPn5UKCk7CisgICAgICAgICAgICBtX2lzRW5nYWdlZCA9IGZhbHNlOworICAgICAgICB9
CisgICAgfQorCisgICAgYm9vbCBtX2lzRW5nYWdlZDsKKyAgICB0eXBlbmFtZSBzdGQ6OmFsaWdu
ZWRfc3RvcmFnZTxzaXplb2YoVCksIHN0ZDo6YWxpZ25tZW50X29mPFQ+Ojp2YWx1ZT46OnR5cGUg
bV92YWx1ZTsKK307CisKK3RlbXBsYXRlPHR5cGVuYW1lIFQ+IHVzaW5nIERlcHJlY2F0ZWRPcHRp
b25hbCA9IFdURjo6T3B0aW9uYWw8VD47CisKK30gLy8gbmFtZXNwYWNlIFdURgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>296034</attachid>
            <date>2016-12-02 19:14:33 -0800</date>
            <delta_ts>2016-12-03 02:14:43 -0800</delta_ts>
            <desc>[PATCH] Proposed Fix - Super Slim</desc>
            <filename>wtf-2.patch</filename>
            <type>text/plain</type>
            <size>10349</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGIzNzg0YWUuLjNhMDllZjYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE2LTEyLTAyICBKb3NlcGggUGVjb3Jh
cm8gIDxwZWNvcmFyb0BhcHBsZS5jb20+CisKKyAgICAgICAgUkVHUkVTU0lPTihyMjA4OTg1KTog
U2FmYXJpRm9yV2ViS2l0RGV2ZWxvcG1lbnQgU3ltYm9sIE5vdCBGb3VuZCBsb29raW5nIGZvciBt
ZXRob2Qgd2l0aCBXVEY6Ok9wdGlvbmFsCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNjUzNTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBPbGRlciB2ZXJzaW9ucyBvZiBTYWZhcmkgZXhwZWN0OgorCisgICAg
ICAgICAgICBJbnNwZWN0b3I6OkJhY2tlbmREaXNwYXRjaGVyOjpyZXBvcnRQcm90b2NvbEVycm9y
KFdURjo6T3B0aW9uYWw8bG9uZz4sIEluc3BlY3Rvcjo6QmFja2VuZERpc3BhdGNoZXI6OkNvbW1v
bkVycm9yQ29kZSwgV1RGOjpTdHJpbmcgY29uc3QmKQorICAgICAgICAKKyAgICAgICAgV2hpY2gg
d2UgaGFkIHVwZGF0ZWQgdG8gdXNlIHN0ZDo6b3B0aW9uYWwuIEV4cG9zZSBhIHZlcnNpb24gd2l0
aCB0aGUgb3JpZ2luYWwKKyAgICAgICAgU3ltYm9sIGZvciBvbGRlciBTYWZhcmlzLiBUaGlzIHN0
dWIgd2lsbCBqdXN0IGNhbGwgdGhyb3VnaCB0byB0aGUgbmV3IHZlcnNpb24uCisKKyAgICAgICAg
KiBpbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZERpc3BhdGNoZXIuY3BwOgorICAgICAgICAoSW5z
cGVjdG9yOjpCYWNrZW5kRGlzcGF0Y2hlcjo6cmVwb3J0UHJvdG9jb2xFcnJvcik6CisgICAgICAg
ICogaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmREaXNwYXRjaGVyLmg6CisKIDIwMTYtMTItMDIg
IEtlaXRoIE1pbGxlciAgPGtlaXRoX21pbGxlckBhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZp
ZXdlZCwgZm9yZ290IHRvIGNoYW5nZSBpbnN0cnVjdGlvbiBhZnRlciByZW5hbWluZy4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZERp
c3BhdGNoZXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JC
YWNrZW5kRGlzcGF0Y2hlci5jcHAKaW5kZXggMjM4OGMyOC4uYjE5ODRhOCAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hl
ci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYWNr
ZW5kRGlzcGF0Y2hlci5jcHAKQEAgLTI2NSw2ICsyNjUsMTYgQEAgdm9pZCBCYWNrZW5kRGlzcGF0
Y2hlcjo6cmVwb3J0UHJvdG9jb2xFcnJvcihzdGQ6Om9wdGlvbmFsPGxvbmc+IHJlbGF0ZWRSZXF1
ZXN0SWQKICAgICBtX3Byb3RvY29sRXJyb3JzLmFwcGVuZChzdGQ6OnR1cGxlPENvbW1vbkVycm9y
Q29kZSwgU3RyaW5nPihlcnJvckNvZGUsIGVycm9yTWVzc2FnZSkpOwogfQogCisjaWYgUExBVEZP
Uk0oTUFDKQordm9pZCBCYWNrZW5kRGlzcGF0Y2hlcjo6cmVwb3J0UHJvdG9jb2xFcnJvcihXVEY6
OkRlcHJlY2F0ZWRPcHRpb25hbDxsb25nPiByZWxhdGVkUmVxdWVzdElkLCBDb21tb25FcnJvckNv
ZGUgZXJyb3JDb2RlLCBjb25zdCBTdHJpbmcmIGVycm9yTWVzc2FnZSkKK3sKKyAgICBpZiAocmVs
YXRlZFJlcXVlc3RJZCkKKyAgICAgICAgcmVwb3J0UHJvdG9jb2xFcnJvcihyZWxhdGVkUmVxdWVz
dElkLnZhbHVlKCksIGVycm9yQ29kZSwgZXJyb3JNZXNzYWdlKTsKKyAgICBlbHNlCisgICAgICAg
IHJlcG9ydFByb3RvY29sRXJyb3Ioc3RkOjpudWxsb3B0LCBlcnJvckNvZGUsIGVycm9yTWVzc2Fn
ZSk7Cit9CisjZW5kaWYKKwogdGVtcGxhdGU8dHlwZW5hbWUgVD4KIFQgQmFja2VuZERpc3BhdGNo
ZXI6OmdldFByb3BlcnR5VmFsdWUoSW5zcGVjdG9yT2JqZWN0KiBvYmplY3QsIGNvbnN0IFN0cmlu
ZyYgbmFtZSwgYm9vbCogb3V0X29wdGlvbmFsVmFsdWVGb3VuZCwgVCBkZWZhdWx0VmFsdWUsIHN0
ZDo6ZnVuY3Rpb248Ym9vbChJbnNwZWN0b3JWYWx1ZSYsIFQmKT4gYXNNZXRob2QsIGNvbnN0IGNo
YXIqIHR5cGVOYW1lKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kRGlzcGF0Y2hlci5oCmluZGV4IDkyNzY0MmMuLmQ3
Mzg5ZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yQmFja2VuZERpc3BhdGNoZXIuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckJhY2tlbmREaXNwYXRjaGVyLmgKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2lu
Y2x1ZGUgIkluc3BlY3RvckZyb250ZW5kUm91dGVyLmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9yUHJv
dG9jb2xUeXBlcy5oIgorI2luY2x1ZGUgPHd0Zi9EZXByZWNhdGVkT3B0aW9uYWwuaD4KICNpbmNs
dWRlIDx3dGYvT3B0aW9uYWwuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogI2luY2x1
ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtODksNiArOTAsMTEgQEAgcHVibGljOgogICAg
IHZvaWQgcmVwb3J0UHJvdG9jb2xFcnJvcihDb21tb25FcnJvckNvZGUsIGNvbnN0IFN0cmluZyYg
ZXJyb3JNZXNzYWdlKTsKICAgICB2b2lkIHJlcG9ydFByb3RvY29sRXJyb3Ioc3RkOjpvcHRpb25h
bDxsb25nPiByZWxhdGVkUmVxdWVzdElkLCBDb21tb25FcnJvckNvZGUsIGNvbnN0IFN0cmluZyYg
ZXJyb3JNZXNzYWdlKTsKIAorI2lmIFBMQVRGT1JNKE1BQykKKyAgICAvLyBUaGlzIGlzIG5lY2Vz
c2FyeSBmb3IgbGVnYWN5IHZlcnNpb25zIG9mIFNhZmFyaS4gUmVtb3ZlIGl0IHdoZW4gdGhvc2Ug
dmVyc2lvbnMgb2YgU2FmYXJpIGFyZSBubyBsb25nZXIgc3VwcG9ydGVkLgorICAgIHZvaWQgcmVw
b3J0UHJvdG9jb2xFcnJvcihXVEY6OkRlcHJlY2F0ZWRPcHRpb25hbDxsb25nPiByZWxhdGVkUmVx
dWVzdElkLCBDb21tb25FcnJvckNvZGUsIGNvbnN0IFN0cmluZyYgZXJyb3JNZXNzYWdlKTsKKyNl
bmRpZgorCiAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4KICAgICBXVEZfSElEREVOX0RFQ0xBUkFU
SU9OCiAgICAgVCBnZXRQcm9wZXJ0eVZhbHVlKEluc3BlY3Rvck9iamVjdCosIGNvbnN0IFN0cmlu
ZyYgbmFtZSwgYm9vbCogb3V0X29wdGlvbmFsVmFsdWVGb3VuZCwgVCBkZWZhdWx0VmFsdWUsIHN0
ZDo6ZnVuY3Rpb248Ym9vbChJbnNwZWN0b3JWYWx1ZSYsIFQmKT4sIGNvbnN0IGNoYXIqIHR5cGVO
YW1lKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nIGIvU291cmNlL1dURi9DaGFu
Z2VMb2cKaW5kZXggY2ZjYTA5MC4uMjRjNzJmNCAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAxNi0x
Mi0wMiAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUuY29tPgorCisgICAgICAgIFJF
R1JFU1NJT04ocjIwODk4NSk6IFNhZmFyaUZvcldlYktpdERldmVsb3BtZW50IFN5bWJvbCBOb3Qg
Rm91bmQgbG9va2luZyBmb3IgbWV0aG9kIHdpdGggV1RGOjpPcHRpb25hbAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY1MzUxCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW5jbHVkZSBhIHNsaW1tZWQgZG93
biB2ZXJzaW9uIG9mIFdURjo6T3B0aW9uYWwgd2hpY2ggb2xkZXIgdmVyc2lvbnMKKyAgICAgICAg
b2YgU2FmYXJpIHN0aWxsIGRlcGVuZCBvbiBmb3IgYSBKYXZhU2NyaXB0Q29yZSBleHBvcnRlZCBz
eW1ib2wuCisgICAgICAgIFRvIHByZXZlbnQgbWlzdXNlIG5hbWUgaXQgV1RGOjpEZXByZWNhdGVk
T3B0aW9uYWwgYW5kIHVzZSBpdCBvbmx5IGluCisgICAgICAgIHRoZSBvbmUgaW5zdGFuY2UgaXQg
aXMgbmVlZGVkLgorCisgICAgICAgICogV1RGLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Cisg
ICAgICAgICogd3RmL0RlcHJlY2F0ZWRPcHRpb25hbC5oOiBBZGRlZC4KKyAgICAgICAgKFdURjo6
T3B0aW9uYWw6Om9wZXJhdG9yIGJvb2wpOgorICAgICAgICAoV1RGOjpPcHRpb25hbDo6dmFsdWUp
OgorICAgICAgICAoV1RGOjpPcHRpb25hbDo6YXNQdHIpOgorCiAyMDE2LTEyLTAxICBZdXN1a2Ug
U3V6dWtpICA8dXRhdGFuZS50ZWFAZ21haWwuY29tPgogCiAgICAgICAgIEludHJvZHVjZSBTdHJp
bmdJbXBsOjpTdGF0aWNTdHJpbmdJbXBsIHdpdGggY29uc3RleHByIGNvbnN0cnVjdG9yCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNl
L1dURi9XVEYueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBkMzZhMmRkLi41MjNiNDBh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL1dURi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisr
KyBiL1NvdXJjZS9XVEYvV1RGLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE2MSw2ICsx
NjEsNyBAQAogCQk5QkQ4RjQwQjE3NkMyQjQ3MDAwMkQ4NjUgLyogQXRvbWljU3RyaW5nVGFibGUu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDlCRDhGNDBB
MTc2QzJBRDgwMDAyRDg2NSAvKiBBdG9taWNTdHJpbmdUYWJsZS5oICovOyB9OwogCQlBNTA5OEIw
MDFDMTY5RTA3MDAwODc3OTcgLyogU2FuZGJveFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTUwOThBRkYxQzE2OUUwNzAwMDg3Nzk3IC8qIFNhbmRi
b3hTUEkuaCAqLzsgfTsKIAkJQTUwOThCMDIxQzE2QTRGOTAwMDg3Nzk3IC8qIFNlY3VyaXR5U1BJ
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNTA5OEIw
MTFDMTZBNEY5MDAwODc3OTcgLyogU2VjdXJpdHlTUEkuaCAqLzsgfTsKKwkJQTU2MUYzMTAxREYy
NjQyMTAwRkY2NzVEIC8qIERlcHJlY2F0ZWRPcHRpb25hbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTU2MUYzMEYxREYyNjQyMTAwRkY2NzVEIC8qIERl
cHJlY2F0ZWRPcHRpb25hbC5oICovOyB9OwogCQlBNUJBMTVGMzE4MjQzM0E5MDBBODJFNjkgLyog
U3RyaW5nTWFjLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQTVCQTE1RjIxODI0MzNBOTAwQTgyRTY5IC8qIFN0cmluZ01hYy5tbSAqLzsgfTsKIAkJQTVC
QTE1RjUxODI0MzQ4MDAwQTgyRTY5IC8qIFN0cmluZ0ltcGxNYWMubW0gaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNUJBMTVGNDE4MjQzNDgwMDBBODJFNjkg
LyogU3RyaW5nSW1wbE1hYy5tbSAqLzsgfTsKIAkJQTVCQTE1RkExODI0MzVBNjAwQTgyRTY5IC8q
IEF0b21pY1N0cmluZ0ltcGxDRi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBBNUJBMTVGNzE4MjQzNUE2MDBBODJFNjkgLyogQXRvbWljU3RyaW5nSW1w
bENGLmNwcCAqLzsgfTsKQEAgLTUyNyw2ICs1MjgsNyBAQAogCQk5QzY3QzU0MjU4OTM0OEUyODVC
NDk2OTkgLyogSW5kZXhlZENvbnRhaW5lckl0ZXJhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEluZGV4ZWRDb250YWluZXJJdGVyYXRvci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlBNTA5OEFGRjFDMTY5RTA3MDAwODc3OTcgLyogU2FuZGJveFNQSS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTYW5kYm94U1BJLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUE1MDk4QjAxMUMxNkE0RjkwMDA4Nzc5NyAvKiBTZWN1cml0eVNQ
SS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTZWN1cml0eVNQSS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBNTYxRjMwRjFERjI2NDIxMDBGRjY3NUQgLyogRGVw
cmVjYXRlZE9wdGlvbmFsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERlcHJl
Y2F0ZWRPcHRpb25hbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBNUJBMTVGMjE4
MjQzM0E5MDBBODJFNjkgLyogU3RyaW5nTWFjLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBuYW1lID0gU3RyaW5nTWFjLm1tOyBwYXRoID0gbWFjL1N0cmluZ01hYy5tbTsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTVCQTE1RjQxODI0MzQ4MDAwQTgyRTY5IC8qIFN0
cmluZ0ltcGxNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSBT
dHJpbmdJbXBsTWFjLm1tOyBwYXRoID0gbWFjL1N0cmluZ0ltcGxNYWMubW07IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUE1QkExNUY3MTgyNDM1QTYwMEE4MkU2OSAvKiBBdG9taWNTdHJp
bmdJbXBsQ0YuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gQXRvbWlj
U3RyaW5nSW1wbENGLmNwcDsgcGF0aCA9IGNmL0F0b21pY1N0cmluZ0ltcGxDRi5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC05MTIsNiArOTE0LDcgQEAKIAkJCQlBOEE0NzI3QjE1
MUE4MjVBMDA0MTIzRkYgLyogRGVjaW1hbE51bWJlci5jcHAgKi8sCiAJCQkJQThBNDcyN0MxNTFB
ODI1QTAwNDEyM0ZGIC8qIERlY2ltYWxOdW1iZXIuaCAqLywKIAkJCQkwRjJCNjZBNDE3QjZCNEY3
MDBBN0FFM0YgLyogRGVmZXJyYWJsZVJlZkNvdW50ZWQuaCAqLywKKwkJCQlBNTYxRjMwRjFERjI2
NDIxMDBGRjY3NUQgLyogRGVwcmVjYXRlZE9wdGlvbmFsLmggKi8sCiAJCQkJQThBNDcyN0UxNTFB
ODI1QTAwNDEyM0ZGIC8qIERlcXVlLmggKi8sCiAJCQkJQThBNDcyN0YxNTFBODI1QTAwNDEyM0ZG
IC8qIERpc2FsbG93Q1R5cGUuaCAqLywKIAkJCQkwRjQ1NzA0MjFCRTVCNThGMDA2MkE2MjkgLyog
RG9taW5hdG9ycy5oICovLApAQCAtMTQyOCw2ICsxNDMxLDcgQEAKIAkJCQlBOEE0NzQxNzE1MUE4
MjVCMDA0MTIzRkYgLyogUmVkQmxhY2tUcmVlLmggaW4gSGVhZGVycyAqLywKIAkJCQkyNjI5OUI2
RTE3QTlFNUI4MDBBREVCRTUgLyogUmVmLmggaW4gSGVhZGVycyAqLywKIAkJCQlBOEE0NzQxODE1
MUE4MjVCMDA0MTIzRkYgLyogUmVmQ291bnRlZC5oIGluIEhlYWRlcnMgKi8sCisJCQkJQTU2MUYz
MTAxREYyNjQyMTAwRkY2NzVEIC8qIERlcHJlY2F0ZWRPcHRpb25hbC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJQThBNDc0MTkxNTFBODI1QjAwNDEyM0ZGIC8qIFJlZkNvdW50ZWRBcnJheS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQThBNDc0MUIxNTFBODI1QjAwNDEyM0ZGIC8qIFJlZkNvdW50ZWRMZWFr
Q291bnRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJODZGNDZGNjExQTI4NDBFRTAwQ0NCRjIyIC8q
IFJlZkNvdW50ZXIuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYv
RGVwcmVjYXRlZE9wdGlvbmFsLmggYi9Tb3VyY2UvV1RGL3d0Zi9EZXByZWNhdGVkT3B0aW9uYWwu
aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mYmYyZTM1Ci0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dURi93dGYvRGVwcmVjYXRlZE9wdGlvbmFsLmgKQEAgLTAsMCArMSw1
MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCwgMjAxNiBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6
CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
CisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorICovCisKKy8vIFRoaXMgZmlsZSBjb250YWlucyBhIGRlcHJlY2F0
ZWQgdmVyc2lvbiBvZiBXVEY6Ok9wdGlvbmFsIHdoaWNoIHRoZSBsYXN0IHJlbGVhc2VkCisvLyB2
ZXJzaW9uIG9mIFNhZmFyaSB1c2VzLiBPbmNlIFNhZmFyaSBzdG9wcyB1c2luZyB0aGlzLCB3ZSBj
YW4gcmVtb3ZlIHRoaXMuCisvLyBOZXcgY29kZSBzaG91bGQgdXNlIHN0ZDo6b3B0aW9uYWwuCisK
KyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8dHlwZV90cmFpdHM+CisKK25hbWVzcGFjZSBXVEYg
eworCit0ZW1wbGF0ZTx0eXBlbmFtZSBUPgorY2xhc3MgT3B0aW9uYWwgeworcHVibGljOgorICAg
IGV4cGxpY2l0IG9wZXJhdG9yIGJvb2woKSBjb25zdCB7IHJldHVybiBtX2lzRW5nYWdlZDsgfQor
ICAgIFQmIHZhbHVlKCkgeyByZXR1cm4gKmFzUHRyKCk7IH0KKworcHJpdmF0ZToKKyAgICBUKiBh
c1B0cigpIHsgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8VCo+KCZtX3ZhbHVlKTsgfQorCisgICAg
Ym9vbCBtX2lzRW5nYWdlZDsKKyAgICB0eXBlbmFtZSBzdGQ6OmFsaWduZWRfc3RvcmFnZTxzaXpl
b2YoVCksIHN0ZDo6YWxpZ25tZW50X29mPFQ+Ojp2YWx1ZT46OnR5cGUgbV92YWx1ZTsKK307CisK
K3RlbXBsYXRlPHR5cGVuYW1lIFQ+IHVzaW5nIERlcHJlY2F0ZWRPcHRpb25hbCA9IFdURjo6T3B0
aW9uYWw8VD47CisKK30gLy8gbmFtZXNwYWNlIFdURgo=
</data>
<flag name="review"
          id="318555"
          type_id="1"
          status="+"
          setter="ysuzuki"
    />
          </attachment>
      

    </bug>

</bugzilla>