<?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>141781</bug_id>
          
          <creation_ts>2015-02-18 16:53:59 -0800</creation_ts>
          <short_desc>ChildProcess should take an os_activity</short_desc>
          <delta_ts>2015-05-12 09:27:29 -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>WebKit2</component>
          <version>528+ (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="Gavin Barraclough">barraclough</reporter>
          <assigned_to name="Gavin Barraclough">barraclough</assigned_to>
          <cc>andersca</cc>
    
    <cc>barraclough</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>mjs</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1070282</commentid>
    <comment_count>0</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2015-02-18 16:53:59 -0800</bug_when>
    <thetext>This should make activity tracing work.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1070284</commentid>
    <comment_count>1</comment_count>
      <attachid>246860</attachid>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2015-02-18 16:58:26 -0800</bug_when>
    <thetext>Created attachment 246860
Fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1070290</commentid>
    <comment_count>2</comment_count>
      <attachid>246860</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-02-18 17:14:34 -0800</bug_when>
    <thetext>Comment on attachment 246860
Fix

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

&gt; Source/WebKit2/NetworkProcess/mac/NetworkProcessMac.mm:64
&gt; +    m_osActivity = os_activity_start(&quot;com.apple.WebKit.Networking&quot;, OS_ACTIVITY_FLAG_DEFAULT);

Why do you need to do this in initializeProcessName, as opposed to platformInitialize?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1072956</commentid>
    <comment_count>3</comment_count>
      <attachid>247581</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2015-02-27 19:04:53 -0800</bug_when>
    <thetext>Created attachment 247581
Cleanup; Fixed the build</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1072969</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2015-02-27 19:50:31 -0800</bug_when>
    <thetext>&lt;rdar://problem/19818204&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073066</commentid>
    <comment_count>5</comment_count>
      <attachid>247581</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2015-02-28 13:19:28 -0800</bug_when>
    <thetext>Comment on attachment 247581
Cleanup; Fixed the build

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

&gt; Source/WebKit2/Shared/ChildProcess.cpp:42
&gt; +#if HAVE(OS_ACTIVITY)
&gt; +    m_osActivity = OS_ACTIVITY_NULL;
&gt; +#endif

Can we do this with an in header initializer?

&gt; Source/WebKit2/Shared/ChildProcess.cpp:50
&gt; +#if HAVE(OS_ACTIVITY)
&gt; +    if (m_osActivity != OS_ACTIVITY_NULL)
&gt; +        os_activity_end(m_osActivity);
&gt; +#endif

When will this actually ever be called? I think all the ChildProcess instances are actually singletons.  Is it important for this to run?

&gt; Source/WebKit2/Shared/ChildProcess.h:106
&gt; +#if HAVE(OS_ACTIVITY)
&gt; +    // We can&apos;t make this private because os_activity_start forces __builtin_constant_p on name.
&gt; +    os_activity_t m_osActivity;
&gt; +#define startOSActivity(name) { m_osActivity = os_activity_start(name, OS_ACTIVITY_FLAG_DEFAULT); };
&gt; +#else
&gt; +#define startOSActivity(name) { };
&gt; +#endif

This seems a bit gross to me.  I have two ideas about how to make it a bit nicer:

1) Get rid of the macro. Just call os_activity_start(name, OS_ACTIVITY_FLAG_DEFAULT); directly with some #ifdefs in the few places where it needs to be called.
2) Move all this activity code to process entry points (see WebContentServiceInitializer.mm, DatabaseServiceInitializer.mm etc.) We might even be able to make use of the XPCServiceInitializer helper with some static const names.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073069</commentid>
    <comment_count>6</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2015-02-28 13:28:07 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; Comment on attachment 247581 [details]
&gt; Cleanup; Fixed the build
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=247581&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/Shared/ChildProcess.cpp:42
&gt; &gt; +#if HAVE(OS_ACTIVITY)
&gt; &gt; +    m_osActivity = OS_ACTIVITY_NULL;
&gt; &gt; +#endif
&gt; 
&gt; Can we do this with an in header initializer?

If we did that, we need to either move the member variable to somewhere below the first private member variable is defined or if-def-else the initialization list because the first initializations needs to be prefixed with &apos;:&apos; and not &apos;,&apos;. i.e.

ChildProcess::ChildProcess()
#if HAVE(OS_ACTIVITY)
    : m_osActivity(OS_ACTIVITY_NULL)
    , m_terminationTimeout(0)
#else
    : m_terminationTimeout(0)
#endif

&gt; &gt; Source/WebKit2/Shared/ChildProcess.cpp:50
&gt; &gt; +#if HAVE(OS_ACTIVITY)
&gt; &gt; +    if (m_osActivity != OS_ACTIVITY_NULL)
&gt; &gt; +        os_activity_end(m_osActivity);
&gt; &gt; +#endif
&gt; 
&gt; When will this actually ever be called? I think all the ChildProcess
&gt; instances are actually singletons.  Is it important for this to run?

We need to run this code when the child process terminates.

&gt; &gt; Source/WebKit2/Shared/ChildProcess.h:106
&gt; &gt; +#if HAVE(OS_ACTIVITY)
&gt; &gt; +    // We can&apos;t make this private because os_activity_start forces __builtin_constant_p on name.
&gt; &gt; +    os_activity_t m_osActivity;
&gt; &gt; +#define startOSActivity(name) { m_osActivity = os_activity_start(name, OS_ACTIVITY_FLAG_DEFAULT); };
&gt; &gt; +#else
&gt; &gt; +#define startOSActivity(name) { };
&gt; &gt; +#endif
&gt; 
&gt; This seems a bit gross to me.  I have two ideas about how to make it a bit
&gt; nicer:
&gt; 
&gt; 1) Get rid of the macro. Just call os_activity_start(name,
&gt; OS_ACTIVITY_FLAG_DEFAULT); directly with some #ifdefs in the few places
&gt; where it needs to be called.

That&apos;s what Gavin&apos;s original patch did. I didn&apos;t want to repeat OS_ACTIVITY_FLAG_DEFAULT everywhere but perhaps that&apos;s less gross...

&gt; 2) Move all this activity code to process entry points (see
&gt; WebContentServiceInitializer.mm, DatabaseServiceInitializer.mm etc.) We
&gt; might even be able to make use of the XPCServiceInitializer helper with some
&gt; static const names.

I don&apos;t think that&apos;ll work because of __builtin_constant_p. Basically, os_activity_start needs to be &quot;called&quot; with a string literal.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073070</commentid>
    <comment_count>7</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2015-02-28 13:35:52 -0800</bug_when>
    <thetext>I guess I should be calling os_activity_end inside ChildProcess::terminate instead?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073117</commentid>
    <comment_count>8</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2015-02-28 17:21:42 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; (In reply to comment #5)
&gt; &gt; Comment on attachment 247581 [details]
&gt; &gt; Cleanup; Fixed the build
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=247581&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebKit2/Shared/ChildProcess.cpp:42
&gt; &gt; &gt; +#if HAVE(OS_ACTIVITY)
&gt; &gt; &gt; +    m_osActivity = OS_ACTIVITY_NULL;
&gt; &gt; &gt; +#endif
&gt; &gt; 
&gt; &gt; Can we do this with an in header initializer?
&gt; 
&gt; If we did that, we need to either move the member variable to somewhere
&gt; below the first private member variable is defined or if-def-else the
&gt; initialization list because the first initializations needs to be prefixed
&gt; with &apos;:&apos; and not &apos;,&apos;. i.e.
&gt; 
&gt; ChildProcess::ChildProcess()
&gt; #if HAVE(OS_ACTIVITY)
&gt;     : m_osActivity(OS_ACTIVITY_NULL)
&gt;     , m_terminationTimeout(0)
&gt; #else
&gt;     : m_terminationTimeout(0)
&gt; #endif
&gt; 
&gt; &gt; &gt; Source/WebKit2/Shared/ChildProcess.cpp:50
&gt; &gt; &gt; +#if HAVE(OS_ACTIVITY)
&gt; &gt; &gt; +    if (m_osActivity != OS_ACTIVITY_NULL)
&gt; &gt; &gt; +        os_activity_end(m_osActivity);
&gt; &gt; &gt; +#endif
&gt; &gt; 
&gt; &gt; When will this actually ever be called? I think all the ChildProcess
&gt; &gt; instances are actually singletons.  Is it important for this to run?
&gt; 
&gt; We need to run this code when the child process terminates.

Why? What does it do? What happens if we don&apos;t?

&gt; 
&gt; &gt; &gt; Source/WebKit2/Shared/ChildProcess.h:106
&gt; &gt; &gt; +#if HAVE(OS_ACTIVITY)
&gt; &gt; &gt; +    // We can&apos;t make this private because os_activity_start forces __builtin_constant_p on name.
&gt; &gt; &gt; +    os_activity_t m_osActivity;
&gt; &gt; &gt; +#define startOSActivity(name) { m_osActivity = os_activity_start(name, OS_ACTIVITY_FLAG_DEFAULT); };
&gt; &gt; &gt; +#else
&gt; &gt; &gt; +#define startOSActivity(name) { };
&gt; &gt; &gt; +#endif
&gt; &gt; 
&gt; &gt; This seems a bit gross to me.  I have two ideas about how to make it a bit
&gt; &gt; nicer:
&gt; &gt; 
&gt; &gt; 1) Get rid of the macro. Just call os_activity_start(name,
&gt; &gt; OS_ACTIVITY_FLAG_DEFAULT); directly with some #ifdefs in the few places
&gt; &gt; where it needs to be called.
&gt; 
&gt; That&apos;s what Gavin&apos;s original patch did. I didn&apos;t want to repeat
&gt; OS_ACTIVITY_FLAG_DEFAULT everywhere but perhaps that&apos;s less gross...

I think it is quite a bit less gross than a public member.

&gt; 
&gt; &gt; 2) Move all this activity code to process entry points (see
&gt; &gt; WebContentServiceInitializer.mm, DatabaseServiceInitializer.mm etc.) We
&gt; &gt; might even be able to make use of the XPCServiceInitializer helper with some
&gt; &gt; static const names.
&gt; 
&gt; I don&apos;t think that&apos;ll work because of __builtin_constant_p. Basically,
&gt; os_activity_start needs to be &quot;called&quot; with a string literal.

Well, with the magic of templates, you should be able to provide a real compile time literal.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073122</commentid>
    <comment_count>9</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2015-02-28 17:52:32 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #6)
&gt; &gt; (In reply to comment #5)
&gt; &gt; &gt; Comment on attachment 247581 [details]
&gt; &gt; &gt; Cleanup; Fixed the build
&gt; &gt; &gt; 2) Move all this activity code to process entry points (see
&gt; &gt; &gt; WebContentServiceInitializer.mm, DatabaseServiceInitializer.mm etc.) We
&gt; &gt; &gt; might even be able to make use of the XPCServiceInitializer helper with some
&gt; &gt; &gt; static const names.
&gt; &gt; 
&gt; &gt; I don&apos;t think that&apos;ll work because of __builtin_constant_p. Basically,
&gt; &gt; os_activity_start needs to be &quot;called&quot; with a string literal.
&gt; 
&gt; Well, with the magic of templates, you should be able to provide a real
&gt; compile time literal.

No. It needs to be a string literal at the pre-processor time because os_activity_start is a macro, not a function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073124</commentid>
    <comment_count>10</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2015-02-28 18:00:11 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #6)
&gt; &gt; (In reply to comment #5)
&gt; &gt; &gt; Comment on attachment 247581 [details]
&gt; &gt; &gt; Cleanup; Fixed the build
&gt; &gt; &gt; 
&gt; &gt; &gt; View in context:
&gt; &gt; &gt; https://bugs.webkit.org/attachment.cgi?id=247581&amp;action=review
&gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Source/WebKit2/Shared/ChildProcess.cpp:42
&gt; &gt; &gt; &gt; +#if HAVE(OS_ACTIVITY)
&gt; &gt; &gt; &gt; +    m_osActivity = OS_ACTIVITY_NULL;
&gt; &gt; &gt; &gt; +#endif
&gt; &gt; &gt; 
&gt; &gt; &gt; Can we do this with an in header initializer?
&gt; &gt; 
&gt; &gt; If we did that, we need to either move the member variable to somewhere
&gt; &gt; below the first private member variable is defined or if-def-else the
&gt; &gt; initialization list because the first initializations needs to be prefixed
&gt; &gt; with &apos;:&apos; and not &apos;,&apos;. i.e.
&gt; &gt; 
&gt; &gt; ChildProcess::ChildProcess()
&gt; &gt; #if HAVE(OS_ACTIVITY)
&gt; &gt;     : m_osActivity(OS_ACTIVITY_NULL)
&gt; &gt;     , m_terminationTimeout(0)
&gt; &gt; #else
&gt; &gt;     : m_terminationTimeout(0)
&gt; &gt; #endif
&gt; &gt; 
&gt; &gt; &gt; &gt; Source/WebKit2/Shared/ChildProcess.cpp:50
&gt; &gt; &gt; &gt; +#if HAVE(OS_ACTIVITY)
&gt; &gt; &gt; &gt; +    if (m_osActivity != OS_ACTIVITY_NULL)
&gt; &gt; &gt; &gt; +        os_activity_end(m_osActivity);
&gt; &gt; &gt; &gt; +#endif
&gt; &gt; &gt; 
&gt; &gt; &gt; When will this actually ever be called? I think all the ChildProcess
&gt; &gt; &gt; instances are actually singletons.  Is it important for this to run?
&gt; &gt; 
&gt; &gt; We need to run this code when the child process terminates.
&gt; 
&gt; Why? What does it do? What happens if we don&apos;t?

I don&apos;t know.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073425</commentid>
    <comment_count>11</comment_count>
      <attachid>247695</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2015-03-02 12:58:20 -0800</bug_when>
    <thetext>Created attachment 247695
Got rid of macro</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073482</commentid>
    <comment_count>12</comment_count>
      <attachid>247695</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2015-03-02 15:43:04 -0800</bug_when>
    <thetext>Comment on attachment 247695
Got rid of macro

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

&gt; Source/WebKit2/DatabaseProcess/ios/DatabaseProcessIOS.mm:46
&gt; +    m_osActivity = os_activity_start(&quot;com.apple.WebKit.Databases&quot;, OS_ACTIVITY_FLAG_DEFAULT);

Need #if HAVE(OS_ACTIVITY)/#endif around this line in each file.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073485</commentid>
    <comment_count>13</comment_count>
      <attachid>247707</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2015-03-02 15:47:38 -0800</bug_when>
    <thetext>Created attachment 247707
Fixed Mavericks build</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091629</commentid>
    <comment_count>14</comment_count>
      <attachid>247707</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2015-05-04 17:50:18 -0700</bug_when>
    <thetext>Comment on attachment 247707
Fixed Mavericks build

Given that these never really need to be destroyed, I think putting them WebContentServiceInitializer (WebContentServiceEntryPoint.mm) and related places is the right way to go.  That will keep it in platform specific code and not litter the cross platform FooProcess classes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1093793</commentid>
    <comment_count>15</comment_count>
      <attachid>247707</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2015-05-11 10:38:27 -0700</bug_when>
    <thetext>Comment on attachment 247707
Fixed Mavericks build

r- per Sam&apos;s Comment #14.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1093994</commentid>
    <comment_count>16</comment_count>
      <attachid>252916</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2015-05-11 18:23:13 -0700</bug_when>
    <thetext>Created attachment 252916
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1094004</commentid>
    <comment_count>17</comment_count>
      <attachid>252922</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2015-05-11 19:06:32 -0700</bug_when>
    <thetext>Created attachment 252922
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1094005</commentid>
    <comment_count>18</comment_count>
      <attachid>252922</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2015-05-11 19:08:22 -0700</bug_when>
    <thetext>Comment on attachment 252922
Patch

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

&gt; Source/WebKit2/DatabaseProcess/EntryPoint/mac/XPCService/DatabaseServiceEntryPoint.mm:51
&gt; +#if HAVE(OS_ACTIVITY)
&gt; +    os_activity_end(activity);
&gt; +#endif

I guess this code never runs?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1094175</commentid>
    <comment_count>19</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2015-05-12 09:27:03 -0700</bug_when>
    <thetext>Committed revision 184203.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1094177</commentid>
    <comment_count>20</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2015-05-12 09:27:29 -0700</bug_when>
    <thetext>(In reply to comment #18)
&gt; Comment on attachment 252922 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=252922&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/DatabaseProcess/EntryPoint/mac/XPCService/DatabaseServiceEntryPoint.mm:51
&gt; &gt; +#if HAVE(OS_ACTIVITY)
&gt; &gt; +    os_activity_end(activity);
&gt; &gt; +#endif
&gt; 
&gt; I guess this code never runs?

In most cases no, but it makes the compiler happy :).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>246860</attachid>
            <date>2015-02-18 16:58:26 -0800</date>
            <delta_ts>2015-02-27 19:04:41 -0800</delta_ts>
            <desc>Fix</desc>
            <filename>141781.1.patch</filename>
            <type>text/plain</type>
            <size>10555</size>
            <attacher name="Gavin Barraclough">barraclough</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MDMzMSkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ4IEBACisyMDE1LTAyLTE4ICBHYXZpbiBC
YXJyYWNsb3VnaCAgPGJhcnJhY2xvdWdoQGFwcGxlLmNvbT4KKworICAgICAgICBDaGlsZFByb2Nl
c3Mgc2hvdWxkIHRha2UgYW4gb3NfYWN0aXZpdHkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MTc4MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgc2hvdWxkIG1ha2UgYWN0aXZpdHkgdHJhY2luZyB3
b3JrLgorCisgICAgICAgICogRGF0YWJhc2VQcm9jZXNzL2lvcy9EYXRhYmFzZVByb2Nlc3NJT1Mu
bW06CisgICAgICAgIChXZWJLaXQ6OkRhdGFiYXNlUHJvY2Vzczo6aW5pdGlhbGl6ZVByb2Nlc3NO
YW1lKToKKyAgICAgICAgICAgIC0gY3JlYXRlIGFuIG9zX2FjdGl2aXR5LgorICAgICAgICAqIERh
dGFiYXNlUHJvY2Vzcy9tYWMvRGF0YWJhc2VQcm9jZXNzTWFjLm1tOgorICAgICAgICAoV2ViS2l0
OjpEYXRhYmFzZVByb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzTmFtZSk6CisgICAgICAgICAgICAt
IGNyZWF0ZSBhbiBvc19hY3Rpdml0eS4KKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9pb3MvTmV0
d29ya1Byb2Nlc3NJT1MubW06CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjppbml0
aWFsaXplUHJvY2Vzc05hbWUpOgorICAgICAgICAgICAgLSBjcmVhdGUgYW4gb3NfYWN0aXZpdHku
CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvbWFjL05ldHdvcmtQcm9jZXNzTWFjLm1tOgorICAg
ICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6aW5pdGlhbGl6ZVByb2Nlc3NOYW1lKToKKyAg
ICAgICAgICAgIC0gY3JlYXRlIGFuIG9zX2FjdGl2aXR5LgorICAgICAgICAqIFBsdWdpblByb2Nl
c3MvbWFjL1BsdWdpblByb2Nlc3NNYWMubW06CisgICAgICAgIChXZWJLaXQ6OlBsdWdpblByb2Nl
c3M6OmluaXRpYWxpemVQcm9jZXNzTmFtZSk6CisgICAgICAgICAgICAtIGNyZWF0ZSBhbiBvc19h
Y3Rpdml0eS4KKyAgICAgICAgKiBTaGFyZWQvQ2hpbGRQcm9jZXNzLmNwcDoKKyAgICAgICAgKFdl
YktpdDo6Q2hpbGRQcm9jZXNzOjp+Q2hpbGRQcm9jZXNzKToKKyAgICAgICAgICAgIC0gY2FsbCBw
bGF0Zm9ybURlc3Ryb3kuCisgICAgICAgIChXZWJLaXQ6OkNoaWxkUHJvY2Vzczo6cGxhdGZvcm1E
ZXN0cm95KToKKyAgICAgICAgICAgIC0gbm8tb3AgaW1wbGVtZW50YXRpb24uCisgICAgICAgICog
U2hhcmVkL0NoaWxkUHJvY2Vzcy5oOgorICAgICAgICAgICAgLSBhZGRlZCBtX29zQWN0aXZpdHku
CisgICAgICAgICogU2hhcmVkL2lvcy9DaGlsZFByb2Nlc3NJT1MubW06CisgICAgICAgIChXZWJL
aXQ6OkNoaWxkUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFsaXplKToKKyAgICAgICAgICAgIC0gaW5p
dGlhbGl6ZSBtX29zQWN0aXZpdHkuCisgICAgICAgIChXZWJLaXQ6OkNoaWxkUHJvY2Vzczo6cGxh
dGZvcm1EZXN0cm95KToKKyAgICAgICAgICAgIC0gcmVsZWFzZSBtX29zQWN0aXZpdHkuCisgICAg
ICAgICogU2hhcmVkL21hYy9DaGlsZFByb2Nlc3NNYWMubW06CisgICAgICAgIChXZWJLaXQ6OkNo
aWxkUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFsaXplKToKKyAgICAgICAgICAgIC0gaW5pdGlhbGl6
ZSBtX29zQWN0aXZpdHkuCisgICAgICAgIChXZWJLaXQ6OkNoaWxkUHJvY2Vzczo6cGxhdGZvcm1E
ZXN0cm95KToKKyAgICAgICAgICAgIC0gcmVsZWFzZSBtX29zQWN0aXZpdHkuCisgICAgICAgICog
V2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6Oldl
YlByb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzTmFtZSk6CisgICAgICAgICAgICAtIGNyZWF0ZSBh
biBvc19hY3Rpdml0eS4KKwogMjAxNS0wMi0xOCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUu
Y29tPgogCiAgICAgICAgIFtXSzJdW2lPU10gRml4IE5ldHdvcmtDYWNoZSBidWlsZApJbmRleDog
U291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL2lvcy9EYXRhYmFzZVByb2Nlc3NJT1MubW0K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL2lvcy9EYXRhYmFz
ZVByb2Nlc3NJT1MubW0JKHJldmlzaW9uIDE4MDI1MikKKysrIFNvdXJjZS9XZWJLaXQyL0RhdGFi
YXNlUHJvY2Vzcy9pb3MvRGF0YWJhc2VQcm9jZXNzSU9TLm1tCSh3b3JraW5nIGNvcHkpCkBAIC00
Nyw2ICs0Nyw3IEBAIHZvaWQgRGF0YWJhc2VQcm9jZXNzOjppbml0aWFsaXplUHJvY2VzcygKIAog
dm9pZCBEYXRhYmFzZVByb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzTmFtZShjb25zdCBDaGlsZFBy
b2Nlc3NJbml0aWFsaXphdGlvblBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCiB7CisgICAgbV9vc0Fj
dGl2aXR5ID0gb3NfYWN0aXZpdHlfc3RhcnQoImNvbS5hcHBsZS5XZWJLaXQuRGF0YWJhc2VzIiwg
T1NfQUNUSVZJVFlfRkxBR19ERUZBVUxUKTsKIH0KIAogdm9pZCBEYXRhYmFzZVByb2Nlc3M6Omlu
aXRpYWxpemVTYW5kYm94KGNvbnN0IENoaWxkUHJvY2Vzc0luaXRpYWxpemF0aW9uUGFyYW1ldGVy
cyYgcGFyYW1ldGVycywgU2FuZGJveEluaXRpYWxpemF0aW9uUGFyYW1ldGVycyYgc2FuZGJveFBh
cmFtZXRlcnMpCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvbWFjL0RhdGFi
YXNlUHJvY2Vzc01hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVBy
b2Nlc3MvbWFjL0RhdGFiYXNlUHJvY2Vzc01hYy5tbQkocmV2aXNpb24gMTgwMjUyKQorKysgU291
cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL21hYy9EYXRhYmFzZVByb2Nlc3NNYWMubW0JKHdv
cmtpbmcgY29weSkKQEAgLTQ2LDYgKzQ2LDggQEAgdm9pZCBEYXRhYmFzZVByb2Nlc3M6OmluaXRp
YWxpemVQcm9jZXNzKAogCiB2b2lkIERhdGFiYXNlUHJvY2Vzczo6aW5pdGlhbGl6ZVByb2Nlc3NO
YW1lKGNvbnN0IENoaWxkUHJvY2Vzc0luaXRpYWxpemF0aW9uUGFyYW1ldGVycyYgcGFyYW1ldGVy
cykKIHsKKyAgICBtX29zQWN0aXZpdHkgPSBvc19hY3Rpdml0eV9zdGFydCgiY29tLmFwcGxlLldl
YktpdC5EYXRhYmFzZXMiLCBPU19BQ1RJVklUWV9GTEFHX0RFRkFVTFQpOworCiAgICAgTlNTdHJp
bmcgKmFwcGxpY2F0aW9uTmFtZSA9IFtOU1N0cmluZyBzdHJpbmdXaXRoRm9ybWF0OldFQl9VSV9T
VFJJTkcoIiVAIERhdGFiYXNlIFN0b3JhZ2UiLCAidmlzaWJsZSBuYW1lIG9mIHRoZSBkYXRhYmFz
ZSBwcm9jZXNzLiBUaGUgYXJndW1lbnQgaXMgdGhlIGFwcGxpY2F0aW9uIG5hbWUuIiksIChOU1N0
cmluZyAqKXBhcmFtZXRlcnMudWlQcm9jZXNzTmFtZV07CiAgICAgV0tTZXRWaXNpYmxlQXBwbGlj
YXRpb25OYW1lKChDRlN0cmluZ1JlZilhcHBsaWNhdGlvbk5hbWUpOwogfQpJbmRleDogU291cmNl
L1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvaW9zL05ldHdvcmtQcm9jZXNzSU9TLm1tCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2lvcy9OZXR3b3JrUHJvY2Vzc0lP
Uy5tbQkocmV2aXNpb24gMTgwMjUyKQorKysgU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3Mv
aW9zL05ldHdvcmtQcm9jZXNzSU9TLm1tCSh3b3JraW5nIGNvcHkpCkBAIC01NCw3ICs1NCw3IEBA
IHZvaWQgTmV0d29ya1Byb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzKGMKIAogdm9pZCBOZXR3b3Jr
UHJvY2Vzczo6aW5pdGlhbGl6ZVByb2Nlc3NOYW1lKGNvbnN0IENoaWxkUHJvY2Vzc0luaXRpYWxp
emF0aW9uUGFyYW1ldGVycyYpCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICBtX29zQWN0
aXZpdHkgPSBvc19hY3Rpdml0eV9zdGFydCgiY29tLmFwcGxlLldlYktpdC5OZXR3b3JraW5nIiwg
T1NfQUNUSVZJVFlfRkxBR19ERUZBVUxUKTsKIH0KIAogdm9pZCBOZXR3b3JrUHJvY2Vzczo6aW5p
dGlhbGl6ZVNhbmRib3goY29uc3QgQ2hpbGRQcm9jZXNzSW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJz
JiBwYXJhbWV0ZXJzLCBTYW5kYm94SW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzJiBzYW5kYm94UGFy
YW1ldGVycykKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL21hYy9OZXR3b3Jr
UHJvY2Vzc01hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vz
cy9tYWMvTmV0d29ya1Byb2Nlc3NNYWMubW0JKHJldmlzaW9uIDE4MDI1MikKKysrIFNvdXJjZS9X
ZWJLaXQyL05ldHdvcmtQcm9jZXNzL21hYy9OZXR3b3JrUHJvY2Vzc01hYy5tbQkod29ya2luZyBj
b3B5KQpAQCAtNjEsNiArNjEsOCBAQCB2b2lkIE5ldHdvcmtQcm9jZXNzOjppbml0aWFsaXplUHJv
Y2VzcyhjCiAKIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzTmFtZShjb25z
dCBDaGlsZFByb2Nlc3NJbml0aWFsaXphdGlvblBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCiB7Cisg
ICAgbV9vc0FjdGl2aXR5ID0gb3NfYWN0aXZpdHlfc3RhcnQoImNvbS5hcHBsZS5XZWJLaXQuTmV0
d29ya2luZyIsIE9TX0FDVElWSVRZX0ZMQUdfREVGQVVMVCk7CisKICAgICBOU1N0cmluZyAqYXBw
bGljYXRpb25OYW1lID0gW05TU3RyaW5nIHN0cmluZ1dpdGhGb3JtYXQ6V0VCX1VJX1NUUklORygi
JUAgTmV0d29ya2luZyIsICJ2aXNpYmxlIG5hbWUgb2YgdGhlIG5ldHdvcmsgcHJvY2Vzcy4gVGhl
IGFyZ3VtZW50IGlzIHRoZSBhcHBsaWNhdGlvbiBuYW1lLiIpLCAoTlNTdHJpbmcgKilwYXJhbWV0
ZXJzLnVpUHJvY2Vzc05hbWVdOwogICAgIFdLU2V0VmlzaWJsZUFwcGxpY2F0aW9uTmFtZSgoQ0ZT
dHJpbmdSZWYpYXBwbGljYXRpb25OYW1lKTsKIH0KSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1BsdWdp
blByb2Nlc3MvbWFjL1BsdWdpblByb2Nlc3NNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdDIvUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbQkocmV2aXNpb24gMTgw
MjUyKQorKysgU291cmNlL1dlYktpdDIvUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01h
Yy5tbQkod29ya2luZyBjb3B5KQpAQCAtNDQ3LDYgKzQ0Nyw4IEBAIHZvaWQgUGx1Z2luUHJvY2Vz
czo6cGxhdGZvcm1Jbml0aWFsaXplUHIKIAogdm9pZCBQbHVnaW5Qcm9jZXNzOjppbml0aWFsaXpl
UHJvY2Vzc05hbWUoY29uc3QgQ2hpbGRQcm9jZXNzSW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzJiBw
YXJhbWV0ZXJzKQogeworICAgIG1fb3NBY3Rpdml0eSA9IG9zX2FjdGl2aXR5X3N0YXJ0KCJjb20u
YXBwbGUuV2ViS2l0LlBsdWdpbiIsIE9TX0FDVElWSVRZX0ZMQUdfREVGQVVMVCk7CisKICAgICBO
U1N0cmluZyAqYXBwbGljYXRpb25OYW1lID0gW05TU3RyaW5nIHN0cmluZ1dpdGhGb3JtYXQ6V0VC
X1VJX1NUUklORygiJUAgKCVAIEludGVybmV0IHBsdWctaW4pIiwgInZpc2libGUgbmFtZSBvZiB0
aGUgcGx1Zy1pbiBob3N0IHByb2Nlc3MuIFRoZSBmaXJzdCBhcmd1bWVudCBpcyB0aGUgcGx1Zy1p
biBuYW1lIGFuZCB0aGUgc2Vjb25kIGFyZ3VtZW50IGlzIHRoZSBhcHBsaWNhdGlvbiBuYW1lLiIp
LCBbWyhOU1N0cmluZyAqKW1fcGx1Z2luUGF0aCBsYXN0UGF0aENvbXBvbmVudF0gc3RyaW5nQnlE
ZWxldGluZ1BhdGhFeHRlbnNpb25dLCAoTlNTdHJpbmcgKilwYXJhbWV0ZXJzLnVpUHJvY2Vzc05h
bWVdOwogICAgIFdLU2V0VmlzaWJsZUFwcGxpY2F0aW9uTmFtZSgoQ0ZTdHJpbmdSZWYpYXBwbGlj
YXRpb25OYW1lKTsKICAgICBpZiAoIW1fcGx1Z2luQnVuZGxlSWRlbnRpZmllci5pc0VtcHR5KCkp
CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ2hpbGRQcm9jZXNzLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ2hpbGRQcm9jZXNzLmNwcAkocmV2aXNpb24gMTgw
MjUyKQorKysgU291cmNlL1dlYktpdDIvU2hhcmVkL0NoaWxkUHJvY2Vzcy5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTQxLDYgKzQxLDcgQEAgQ2hpbGRQcm9jZXNzOjpDaGlsZFByb2Nlc3MoKQogCiBD
aGlsZFByb2Nlc3M6On5DaGlsZFByb2Nlc3MoKQogeworICAgIHBsYXRmb3JtRGVzdHJveSgpOwog
fQogCiBzdGF0aWMgdm9pZCBkaWRDbG9zZU9uQ29ubmVjdGlvbldvcmtRdWV1ZShJUEM6OkNvbm5l
Y3Rpb24qKQpAQCAtMTY1LDYgKzE2NiwxMCBAQCB2b2lkIENoaWxkUHJvY2Vzczo6cGxhdGZvcm1J
bml0aWFsaXplKCkKIHsKIH0KIAordm9pZCBDaGlsZFByb2Nlc3M6OnBsYXRmb3JtRGVzdHJveSgp
Cit7Cit9CisKIHZvaWQgQ2hpbGRQcm9jZXNzOjppbml0aWFsaXplU2FuZGJveChjb25zdCBDaGls
ZFByb2Nlc3NJbml0aWFsaXphdGlvblBhcmFtZXRlcnMmLCBTYW5kYm94SW5pdGlhbGl6YXRpb25Q
YXJhbWV0ZXJzJikKIHsKIH0KSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9DaGlsZFByb2Nl
c3MuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ2hpbGRQcm9jZXNzLmgJ
KHJldmlzaW9uIDE4MDI1MikKKysrIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9DaGlsZFByb2Nlc3Mu
aAkod29ya2luZyBjb3B5KQpAQCAtMzYsNiArMzYsMTAgQEAKICNpbmNsdWRlIDx3dGYvdGV4dC9T
dHJpbmdIYXNoLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKKyNpZiBQTEFU
Rk9STShDT0NPQSkKKyNpbmNsdWRlIDxvcy9hY3Rpdml0eS5oPgorI2VuZGlmCisKIG5hbWVzcGFj
ZSBXZWJLaXQgewogCiBjbGFzcyBTYW5kYm94SW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzOwpAQCAt
OTMsNiArOTcsMTAgQEAgcHJvdGVjdGVkOgogICAgIHN0YXRpYyB2b2lkIHN0b3BOU0FwcFJ1bkxv
b3AoKTsKICNlbmRpZgogCisjaWYgUExBVEZPUk0oQ09DT0EpCisgICAgb3NfYWN0aXZpdHlfdCBt
X29zQWN0aXZpdHk7CisjZW5kaWYKKwogcHJpdmF0ZToKICAgICAvLyBJUEM6Ok1lc3NhZ2VTZW5k
ZXIKICAgICB2aXJ0dWFsIElQQzo6Q29ubmVjdGlvbiogbWVzc2FnZVNlbmRlckNvbm5lY3Rpb24o
KSBvdmVycmlkZTsKQEAgLTEwMSw2ICsxMDksNyBAQCBwcml2YXRlOgogICAgIHZvaWQgdGVybWlu
YXRpb25UaW1lckZpcmVkKCk7CiAKICAgICB2b2lkIHBsYXRmb3JtSW5pdGlhbGl6ZSgpOworICAg
IHZvaWQgcGxhdGZvcm1EZXN0cm95KCk7CiAKICAgICAvLyBUaGUgdGltZW91dCwgaW4gc2Vjb25k
cywgYmVmb3JlIHRoaXMgcHJvY2VzcyB3aWxsIGJlIHRlcm1pbmF0ZWQgaWYgdGVybWluYXRpb24K
ICAgICAvLyBoYXMgYmVlbiBlbmFibGVkLiBJZiB0aGUgdGltZW91dCBpcyAwIHNlY29uZHMsIHRo
ZSBwcm9jZXNzIHdpbGwgYmUgdGVybWluYXRlZCBpbW1lZGlhdGVseS4KSW5kZXg6IFNvdXJjZS9X
ZWJLaXQyL1NoYXJlZC9pb3MvQ2hpbGRQcm9jZXNzSU9TLm1tCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQyL1NoYXJlZC9pb3MvQ2hpbGRQcm9jZXNzSU9TLm1tCShyZXZpc2lvbiAxODAyNTIp
CisrKyBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvaW9zL0NoaWxkUHJvY2Vzc0lPUy5tbQkod29ya2lu
ZyBjb3B5KQpAQCAtNjYsMTIgKzY2LDIwIEBAIHZvaWQgQ2hpbGRQcm9jZXNzOjpzZXRBcHBsaWNh
dGlvbklzRGFlbW8KIAogdm9pZCBDaGlsZFByb2Nlc3M6OnBsYXRmb3JtSW5pdGlhbGl6ZSgpCiB7
Ci0gICAgRmxvYXRpbmdQb2ludEVudmlyb25tZW50JiBmbG9hdGluZ1BvaW50RW52aXJvbm1lbnQg
PSBGbG9hdGluZ1BvaW50RW52aXJvbm1lbnQ6OnNpbmdsZXRvbigpOyAKKyAgICBtX29zQWN0aXZp
dHkgPSBPU19BQ1RJVklUWV9OVUxMOworCisgICAgRmxvYXRpbmdQb2ludEVudmlyb25tZW50JiBm
bG9hdGluZ1BvaW50RW52aXJvbm1lbnQgPSBGbG9hdGluZ1BvaW50RW52aXJvbm1lbnQ6OnNpbmds
ZXRvbigpOwogICAgIGZsb2F0aW5nUG9pbnRFbnZpcm9ubWVudC5lbmFibGVEZW5vcm1hbFN1cHBv
cnQoKTsgCiAgICAgZmxvYXRpbmdQb2ludEVudmlyb25tZW50LnNhdmVNYWluVGhyZWFkRW52aXJv
bm1lbnQoKTsgCiAgICAgW1tOU0ZpbGVNYW5hZ2VyIGRlZmF1bHRNYW5hZ2VyXSBjaGFuZ2VDdXJy
ZW50RGlyZWN0b3J5UGF0aDpbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZVBhdGhdXTsKIH0K
IAordm9pZCBDaGlsZFByb2Nlc3M6OnBsYXRmb3JtRGVzdHJveSgpCit7CisgICAgaWYgKG1fb3NB
Y3Rpdml0eSAhPSBPU19BQ1RJVklUWV9OVUxMKQorICAgICAgICBvc19hY3Rpdml0eV9lbmQobV9v
c0FjdGl2aXR5KTsKK30KKwogdm9pZCBDaGlsZFByb2Nlc3M6OmluaXRpYWxpemVTYW5kYm94KGNv
bnN0IENoaWxkUHJvY2Vzc0luaXRpYWxpemF0aW9uUGFyYW1ldGVycyYgcGFyYW1ldGVycywgU2Fu
ZGJveEluaXRpYWxpemF0aW9uUGFyYW1ldGVycyYgc2FuZGJveFBhcmFtZXRlcnMpCiB7CiAjaWYg
RU5BQkxFX01BTlVBTF9TQU5EQk9YSU5HCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFj
L0NoaWxkUHJvY2Vzc01hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
bWFjL0NoaWxkUHJvY2Vzc01hYy5tbQkocmV2aXNpb24gMTgwMjUyKQorKysgU291cmNlL1dlYktp
dDIvU2hhcmVkL21hYy9DaGlsZFByb2Nlc3NNYWMubW0JKHdvcmtpbmcgY29weSkKQEAgLTgwLDEw
ICs4MCwxOCBAQCB2b2lkIENoaWxkUHJvY2Vzczo6c2V0QXBwbGljYXRpb25Jc0RhZW1vCiAKIHZv
aWQgQ2hpbGRQcm9jZXNzOjpwbGF0Zm9ybUluaXRpYWxpemUoKQogeworICAgIG1fb3NBY3Rpdml0
eSA9IE9TX0FDVElWSVRZX05VTEw7CisKICAgICBpbml0aWFsaXplVGltZXJDb2FsZXNjaW5nUG9s
aWN5KCk7CiAgICAgW1tOU0ZpbGVNYW5hZ2VyIGRlZmF1bHRNYW5hZ2VyXSBjaGFuZ2VDdXJyZW50
RGlyZWN0b3J5UGF0aDpbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZVBhdGhdXTsKIH0KIAor
dm9pZCBDaGlsZFByb2Nlc3M6OnBsYXRmb3JtRGVzdHJveSgpCit7CisgICAgaWYgKG1fb3NBY3Rp
dml0eSAhPSBPU19BQ1RJVklUWV9OVUxMKQorICAgICAgICBvc19hY3Rpdml0eV9lbmQobV9vc0Fj
dGl2aXR5KTsKK30KKwogdm9pZCBDaGlsZFByb2Nlc3M6OmluaXRpYWxpemVTYW5kYm94KGNvbnN0
IENoaWxkUHJvY2Vzc0luaXRpYWxpemF0aW9uUGFyYW1ldGVycyYgcGFyYW1ldGVycywgU2FuZGJv
eEluaXRpYWxpemF0aW9uUGFyYW1ldGVycyYgc2FuZGJveFBhcmFtZXRlcnMpCiB7CiAgICAgTlNC
dW5kbGUgKndlYmtpdDJCdW5kbGUgPSBbTlNCdW5kbGUgYnVuZGxlRm9yQ2xhc3M6TlNDbGFzc0Zy
b21TdHJpbmcoQCJXS1ZpZXciKV07CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL2Nv
Y29hL1dlYlByb2Nlc3NDb2NvYS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL2NvY29hL1dlYlByb2Nlc3NDb2NvYS5tbQkocmV2aXNpb24gMTgwMjUyKQorKysgU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0JKHdvcmtpbmcg
Y29weSkKQEAgLTIxMSw2ICsyMTEsOCBAQCB2b2lkIFdlYlByb2Nlc3M6OnBsYXRmb3JtSW5pdGlh
bGl6ZVdlYlByCiAKIHZvaWQgV2ViUHJvY2Vzczo6aW5pdGlhbGl6ZVByb2Nlc3NOYW1lKGNvbnN0
IENoaWxkUHJvY2Vzc0luaXRpYWxpemF0aW9uUGFyYW1ldGVycyYgcGFyYW1ldGVycykKIHsKKyAg
ICBtX29zQWN0aXZpdHkgPSBvc19hY3Rpdml0eV9zdGFydCgiY29tLmFwcGxlLldlYktpdC5XZWJD
b250ZW50IiwgT1NfQUNUSVZJVFlfRkxBR19ERUZBVUxUKTsKKwogI2lmICFQTEFURk9STShJT1Mp
CiAgICAgTlNTdHJpbmcgKmFwcGxpY2F0aW9uTmFtZTsKICAgICBpZiAocGFyYW1ldGVycy5leHRy
YUluaXRpYWxpemF0aW9uRGF0YS5nZXQoQVNDSUlMaXRlcmFsKCJpbnNwZWN0b3ItcHJvY2VzcyIp
KSA9PSAiMSIpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247581</attachid>
            <date>2015-02-27 19:04:53 -0800</date>
            <delta_ts>2015-03-02 12:58:17 -0800</delta_ts>
            <desc>Cleanup; Fixed the build</desc>
            <filename>bug-141781-20150227190438.patch</filename>
            <type>text/plain</type>
            <size>7338</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MDgxMSkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMzIEBACisyMDE1LTAyLTI3ICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIENoaWxkUHJvY2VzcyBzaG91bGQg
dGFrZSBhbiBvc19hY3Rpdml0eQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTQxNzgxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQmFzZWQgb24gYSBwYXRjaCBtYWRlIGJ5IEdhdmluIEJhcnJhY2xvdWdoLgor
CisgICAgICAgICogRGF0YWJhc2VQcm9jZXNzL2lvcy9EYXRhYmFzZVByb2Nlc3NJT1MubW06Cisg
ICAgICAgIChXZWJLaXQ6OkRhdGFiYXNlUHJvY2Vzczo6aW5pdGlhbGl6ZVByb2Nlc3MpOiBDcmVh
dGVzIGFuIG9zX2FjdGl2aXR5LgorICAgICAgICAqIERhdGFiYXNlUHJvY2Vzcy9tYWMvRGF0YWJh
c2VQcm9jZXNzTWFjLm1tOgorICAgICAgICAoV2ViS2l0OjpEYXRhYmFzZVByb2Nlc3M6OmluaXRp
YWxpemVQcm9jZXNzKTogRGl0dG8uCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvaW9zL05ldHdv
cmtQcm9jZXNzSU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6aW5pdGlh
bGl6ZVByb2Nlc3MpOiBEaXR0by4KKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9tYWMvTmV0d29y
a1Byb2Nlc3NNYWMubW06CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjppbml0aWFs
aXplUHJvY2Vzcyk6IERpdHRvLgorICAgICAgICAqIFBsdWdpblByb2Nlc3MvbWFjL1BsdWdpblBy
b2Nlc3NNYWMubW06CisgICAgICAgIChXZWJLaXQ6OlBsdWdpblByb2Nlc3M6OnBsYXRmb3JtSW5p
dGlhbGl6ZVByb2Nlc3MpOiBEaXR0by4KKyAgICAgICAgKiBTaGFyZWQvQ2hpbGRQcm9jZXNzLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6Q2hpbGRQcm9jZXNzOjpDaGlsZFByb2Nlc3MpOiBJbml0aWFs
aXplcyBtX29zQWN0aXZpdHkuCisgICAgICAgIChXZWJLaXQ6OkNoaWxkUHJvY2Vzczo6fkNoaWxk
UHJvY2Vzcyk6IENhbGxzIG9zX2FjdGl2aXR5X2VuZC4KKyAgICAgICAgKiBTaGFyZWQvQ2hpbGRQ
cm9jZXNzLmg6CisgICAgICAgIChXZWJLaXQ6OkNoaWxkUHJvY2Vzcyk6CisgICAgICAgIChzdGFy
dE9TQWN0aXZpdHkpOiBBZGRlZC4gV2UgY2FuJ3QgbWFrZSB0aGlzIGhlbHBlciBhIGZ1bmN0aW9u
IHNpbmNlIG9zX2FjdGl2aXR5X3N0YXJ0IGlzIGEgbWFjcm8gYW5kIGl0IHJlcXVpcmVzCisgICAg
ICAgIHRoZSBkZXNjcmlwdGlvbiBwYXNzZWQgaW4gdG8gcGFzcyBfX2J1aWx0aW5fY29uc3RhbnRf
cC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL2NvY29hL1dlYlByb2Nlc3NDb2NvYS5tbToKKyAgICAg
ICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFsaXplUHJvY2Vzcyk6IENyZWF0
ZXMgYW4gb3NfYWN0aXZpdHkuCisgICAgICAgICogY29uZmlnLmg6IEFkZGVkIEhBVkVfT1NfQUNU
SVZJVFkuCisKIDIwMTUtMDItMjcgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAog
ICAgICAgICBbV0syXSBEcm9wIGxlZ2FjeSBXS0J1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0Ns
aWVudCBBUEkKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL2NvbmZpZy5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQyL2NvbmZpZy5oCShyZXZpc2lvbiAxODA4MDgpCisrKyBTb3VyY2UvV2ViS2l0
Mi9jb25maWcuaAkod29ya2luZyBjb3B5KQpAQCAtODEsNiArODEsMTIgQEAKICNlbmRpZgogI2Vu
ZGlmCiAKKyNpZm5kZWYgSEFWRV9PU19BQ1RJVklUWQorI2lmIFBMQVRGT1JNKElPUykgfHwgKFBM
QVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDEwMDAp
CisjZGVmaW5lIEhBVkVfT1NfQUNUSVZJVFkgMQorI2VuZGlmCisjZW5kaWYKKwogI2lmbmRlZiBF
TkFCTEVfTkVUV09SS19DQUNIRQogI2lmIEVOQUJMRShORVRXT1JLX1BST0NFU1MpICYmIFBMQVRG
T1JNKE1BQykKICNkZWZpbmUgRU5BQkxFX05FVFdPUktfQ0FDSEUgMQpJbmRleDogU291cmNlL1dl
YktpdDIvRGF0YWJhc2VQcm9jZXNzL2lvcy9EYXRhYmFzZVByb2Nlc3NJT1MubW0KPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL2lvcy9EYXRhYmFzZVByb2Nlc3NJ
T1MubW0JKHJldmlzaW9uIDE4MDgwOCkKKysrIFNvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vz
cy9pb3MvRGF0YWJhc2VQcm9jZXNzSU9TLm1tCSh3b3JraW5nIGNvcHkpCkBAIC00Myw2ICs0Myw3
IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiB2b2lkIERhdGFiYXNlUHJvY2Vzczo6aW5pdGlhbGl6
ZVByb2Nlc3MoY29uc3QgQ2hpbGRQcm9jZXNzSW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzJikKIHsK
KyAgICBzdGFydE9TQWN0aXZpdHkoImNvbS5hcHBsZS5XZWJLaXQuRGF0YWJhc2VzIik7CiB9CiAK
IHZvaWQgRGF0YWJhc2VQcm9jZXNzOjppbml0aWFsaXplUHJvY2Vzc05hbWUoY29uc3QgQ2hpbGRQ
cm9jZXNzSW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQpJbmRleDogU291cmNl
L1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL21hYy9EYXRhYmFzZVByb2Nlc3NNYWMubW0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL21hYy9EYXRhYmFzZVByb2Nl
c3NNYWMubW0JKHJldmlzaW9uIDE4MDgwOCkKKysrIFNvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJv
Y2Vzcy9tYWMvRGF0YWJhc2VQcm9jZXNzTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC00MCw2ICs0
MCw3IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiB2b2lkIERhdGFiYXNlUHJvY2Vzczo6aW5pdGlh
bGl6ZVByb2Nlc3MoY29uc3QgQ2hpbGRQcm9jZXNzSW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzJikK
IHsKKyAgICBzdGFydE9TQWN0aXZpdHkoImNvbS5hcHBsZS5XZWJLaXQuRGF0YWJhc2VzIik7CiAg
ICAgLy8gSGF2aW5nIGEgd2luZG93IHNlcnZlciBjb25uZWN0aW9uIGluIHRoaXMgcHJvY2VzcyB3
b3VsZCByZXN1bHQgaW4gc3BpbiBsb2dzICg8cmRhcjovL3Byb2JsZW0vMTMyMzkxMTk+KS4KICAg
ICBzZXRBcHBsaWNhdGlvbklzRGFlbW9uKCk7CiB9CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9OZXR3
b3JrUHJvY2Vzcy9pb3MvTmV0d29ya1Byb2Nlc3NJT1MubW0KPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvaW9zL05ldHdvcmtQcm9jZXNzSU9TLm1tCShyZXZpc2lv
biAxODA4MDgpCisrKyBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9pb3MvTmV0d29ya1By
b2Nlc3NJT1MubW0JKHdvcmtpbmcgY29weSkKQEAgLTQ5LDYgKzQ5LDcgQEAgbmFtZXNwYWNlIFdl
YktpdCB7CiAKIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzKGNvbnN0IENo
aWxkUHJvY2Vzc0luaXRpYWxpemF0aW9uUGFyYW1ldGVycyYpCiB7CisgICAgc3RhcnRPU0FjdGl2
aXR5KCJjb20uYXBwbGUuV2ViS2l0Lk5ldHdvcmtpbmciKTsKICAgICBJbml0V2ViQ29yZVRocmVh
ZFN5c3RlbUludGVyZmFjZSgpOwogfQogCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJv
Y2Vzcy9tYWMvTmV0d29ya1Byb2Nlc3NNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dDIvTmV0d29ya1Byb2Nlc3MvbWFjL05ldHdvcmtQcm9jZXNzTWFjLm1tCShyZXZpc2lvbiAxODA4
MDgpCisrKyBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9tYWMvTmV0d29ya1Byb2Nlc3NN
YWMubW0JKHdvcmtpbmcgY29weSkKQEAgLTU1LDYgKzU1LDcgQEAgbmFtZXNwYWNlIFdlYktpdCB7
CiAKIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzKGNvbnN0IENoaWxkUHJv
Y2Vzc0luaXRpYWxpemF0aW9uUGFyYW1ldGVycyYpCiB7CisgICAgc3RhcnRPU0FjdGl2aXR5KCJj
b20uYXBwbGUuV2ViS2l0Lk5ldHdvcmtpbmciKTsKICAgICAvLyBIYXZpbmcgYSB3aW5kb3cgc2Vy
dmVyIGNvbm5lY3Rpb24gaW4gdGhpcyBwcm9jZXNzIHdvdWxkIHJlc3VsdCBpbiBzcGluIGxvZ3Mg
KDxyZGFyOi8vcHJvYmxlbS8xMzIzOTExOT4pLgogICAgIHNldEFwcGxpY2F0aW9uSXNEYWVtb24o
KTsKIH0KSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1BsdWdpblByb2Nlc3MvbWFjL1BsdWdpblByb2Nl
c3NNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvUGx1Z2luUHJvY2Vzcy9tYWMv
UGx1Z2luUHJvY2Vzc01hYy5tbQkocmV2aXNpb24gMTgwODA4KQorKysgU291cmNlL1dlYktpdDIv
UGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbQkod29ya2luZyBjb3B5KQpAQCAt
NDE4LDYgKzQxOCw4IEBAIHZvaWQgUGx1Z2luUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFsaXplUGwK
IAogdm9pZCBQbHVnaW5Qcm9jZXNzOjpwbGF0Zm9ybUluaXRpYWxpemVQcm9jZXNzKGNvbnN0IENo
aWxkUHJvY2Vzc0luaXRpYWxpemF0aW9uUGFyYW1ldGVycyYgcGFyYW1ldGVycykKIHsKKyAgICBz
dGFydE9TQWN0aXZpdHkoImNvbS5hcHBsZS5XZWJLaXQuUGx1Z2luIik7CisKICNpZiBkZWZpbmVk
KF9faTM4Nl9fKQogICAgIC8vIEluaXRpYWxpemUgdGhlIHNoaW0uCiAgICAgaW5pdGlhbGl6ZVNo
aW0oKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9DaGlsZFByb2Nlc3MuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9DaGlsZFByb2Nlc3MuY3BwCShyZXZpc2lv
biAxODA4MDgpCisrKyBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ2hpbGRQcm9jZXNzLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMzcsMTAgKzM3LDE3IEBAIENoaWxkUHJvY2Vzczo6Q2hpbGRQcm9jZXNz
KCkKICAgICAsIG1fdGVybWluYXRpb25UaW1lcihSdW5Mb29wOjptYWluKCksIHRoaXMsICZDaGls
ZFByb2Nlc3M6OnRlcm1pbmF0aW9uVGltZXJGaXJlZCkKICAgICAsIG1fcHJvY2Vzc1N1cHByZXNz
aW9uRGlzYWJsZWQoIlByb2Nlc3MgU3VwcHJlc3Npb24gRGlzYWJsZWQgYnkgVUlQcm9jZXNzIikK
IHsKKyNpZiBIQVZFKE9TX0FDVElWSVRZKQorICAgIG1fb3NBY3Rpdml0eSA9IE9TX0FDVElWSVRZ
X05VTEw7CisjZW5kaWYKIH0KIAogQ2hpbGRQcm9jZXNzOjp+Q2hpbGRQcm9jZXNzKCkKIHsKKyNp
ZiBIQVZFKE9TX0FDVElWSVRZKQorICAgIGlmIChtX29zQWN0aXZpdHkgIT0gT1NfQUNUSVZJVFlf
TlVMTCkKKyAgICAgICAgb3NfYWN0aXZpdHlfZW5kKG1fb3NBY3Rpdml0eSk7CisjZW5kaWYKIH0K
IAogc3RhdGljIHZvaWQgZGlkQ2xvc2VPbkNvbm5lY3Rpb25Xb3JrUXVldWUoSVBDOjpDb25uZWN0
aW9uKikKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9DaGlsZFByb2Nlc3MuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ2hpbGRQcm9jZXNzLmgJKHJldmlzaW9uIDE4
MDgwOCkKKysrIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9DaGlsZFByb2Nlc3MuaAkod29ya2luZyBj
b3B5KQpAQCAtMzYsNiArMzYsMTAgQEAKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+
CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKKyNpZiBIQVZFKE9TX0FDVElWSVRZ
KQorI2luY2x1ZGUgPG9zL2FjdGl2aXR5Lmg+CisjZW5kaWYKKwogbmFtZXNwYWNlIFdlYktpdCB7
CiAKIGNsYXNzIFNhbmRib3hJbml0aWFsaXphdGlvblBhcmFtZXRlcnM7CkBAIC05Myw2ICs5Nywx
NCBAQCBwcm90ZWN0ZWQ6CiAgICAgc3RhdGljIHZvaWQgc3RvcE5TQXBwUnVuTG9vcCgpOwogI2Vu
ZGlmCiAKKyNpZiBIQVZFKE9TX0FDVElWSVRZKQorICAgIC8vIFdlIGNhbid0IG1ha2UgdGhpcyBw
cml2YXRlIGJlY2F1c2Ugb3NfYWN0aXZpdHlfc3RhcnQgZm9yY2VzIF9fYnVpbHRpbl9jb25zdGFu
dF9wIG9uIG5hbWUuCisgICAgb3NfYWN0aXZpdHlfdCBtX29zQWN0aXZpdHk7CisjZGVmaW5lIHN0
YXJ0T1NBY3Rpdml0eShuYW1lKSB7IG1fb3NBY3Rpdml0eSA9IG9zX2FjdGl2aXR5X3N0YXJ0KG5h
bWUsIE9TX0FDVElWSVRZX0ZMQUdfREVGQVVMVCk7IH07CisjZWxzZQorI2RlZmluZSBzdGFydE9T
QWN0aXZpdHkobmFtZSkgeyB9OworI2VuZGlmCisKIHByaXZhdGU6CiAgICAgLy8gSVBDOjpNZXNz
YWdlU2VuZGVyCiAgICAgdmlydHVhbCBJUEM6OkNvbm5lY3Rpb24qIG1lc3NhZ2VTZW5kZXJDb25u
ZWN0aW9uKCkgb3ZlcnJpZGU7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL2NvY29h
L1dlYlByb2Nlc3NDb2NvYS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL2NvY29hL1dlYlByb2Nlc3NDb2NvYS5tbQkocmV2aXNpb24gMTgwODA4KQorKysgU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0JKHdvcmtpbmcgY29w
eSkKQEAgLTIyMyw2ICsyMjMsNyBAQCB2b2lkIFdlYlByb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNz
TmFtZShjCiAKIHZvaWQgV2ViUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFsaXplUHJvY2Vzcyhjb25z
dCBDaGlsZFByb2Nlc3NJbml0aWFsaXphdGlvblBhcmFtZXRlcnMmKQogeworICAgIHN0YXJ0T1NB
Y3Rpdml0eSgiY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50Iik7CiAgICAgV0tBWFJlZ2lzdGVy
UmVtb3RlQXBwKCk7CiAKICNpZiBFTkFCTEUoU0VDX0lURU1fU0hJTSkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247695</attachid>
            <date>2015-03-02 12:58:20 -0800</date>
            <delta_ts>2015-03-02 15:47:34 -0800</delta_ts>
            <desc>Got rid of macro</desc>
            <filename>bug-141781-20150302125803.patch</filename>
            <type>text/plain</type>
            <size>7298</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MDgxMSkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMxIEBACisyMDE1LTAyLTI3ICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIENoaWxkUHJvY2VzcyBzaG91bGQg
dGFrZSBhbiBvc19hY3Rpdml0eQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTQxNzgxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQmFzZWQgb24gYSBwYXRjaCBtYWRlIGJ5IEdhdmluIEJhcnJhY2xvdWdoLgor
CisgICAgICAgICogRGF0YWJhc2VQcm9jZXNzL2lvcy9EYXRhYmFzZVByb2Nlc3NJT1MubW06Cisg
ICAgICAgIChXZWJLaXQ6OkRhdGFiYXNlUHJvY2Vzczo6aW5pdGlhbGl6ZVByb2Nlc3MpOiBDcmVh
dGVzIGFuIG9zX2FjdGl2aXR5LgorICAgICAgICAqIERhdGFiYXNlUHJvY2Vzcy9tYWMvRGF0YWJh
c2VQcm9jZXNzTWFjLm1tOgorICAgICAgICAoV2ViS2l0OjpEYXRhYmFzZVByb2Nlc3M6OmluaXRp
YWxpemVQcm9jZXNzKTogRGl0dG8uCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvaW9zL05ldHdv
cmtQcm9jZXNzSU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6aW5pdGlh
bGl6ZVByb2Nlc3MpOiBEaXR0by4KKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9tYWMvTmV0d29y
a1Byb2Nlc3NNYWMubW06CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjppbml0aWFs
aXplUHJvY2Vzcyk6IERpdHRvLgorICAgICAgICAqIFBsdWdpblByb2Nlc3MvbWFjL1BsdWdpblBy
b2Nlc3NNYWMubW06CisgICAgICAgIChXZWJLaXQ6OlBsdWdpblByb2Nlc3M6OnBsYXRmb3JtSW5p
dGlhbGl6ZVByb2Nlc3MpOiBEaXR0by4KKyAgICAgICAgKiBTaGFyZWQvQ2hpbGRQcm9jZXNzLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6Q2hpbGRQcm9jZXNzOjpDaGlsZFByb2Nlc3MpOiBJbml0aWFs
aXplcyBtX29zQWN0aXZpdHkuCisgICAgICAgIChXZWJLaXQ6OkNoaWxkUHJvY2Vzczo6fkNoaWxk
UHJvY2Vzcyk6IENhbGxzIG9zX2FjdGl2aXR5X2VuZC4KKyAgICAgICAgKiBTaGFyZWQvQ2hpbGRQ
cm9jZXNzLmg6CisgICAgICAgIChXZWJLaXQ6OkNoaWxkUHJvY2Vzcyk6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBy
b2Nlc3M6OnBsYXRmb3JtSW5pdGlhbGl6ZVByb2Nlc3MpOiBDcmVhdGVzIGFuIG9zX2FjdGl2aXR5
LgorICAgICAgICAqIGNvbmZpZy5oOiBBZGRlZCBIQVZFX09TX0FDVElWSVRZLgorCiAyMDE1LTAy
LTI3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgW1dLMl0gRHJv
cCBsZWdhY3kgV0tCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQgQVBJCkluZGV4OiBT
b3VyY2UvV2ViS2l0Mi9jb25maWcuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9jb25m
aWcuaAkocmV2aXNpb24gMTgwODA4KQorKysgU291cmNlL1dlYktpdDIvY29uZmlnLmgJKHdvcmtp
bmcgY29weSkKQEAgLTgxLDYgKzgxLDEyIEBACiAjZW5kaWYKICNlbmRpZgogCisjaWZuZGVmIEhB
VkVfT1NfQUNUSVZJVFkKKyNpZiBQTEFURk9STShJT1MpIHx8IChQTEFURk9STShNQUMpICYmIF9f
TUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxMDAwKQorI2RlZmluZSBIQVZFX09T
X0FDVElWSVRZIDEKKyNlbmRpZgorI2VuZGlmCisKICNpZm5kZWYgRU5BQkxFX05FVFdPUktfQ0FD
SEUKICNpZiBFTkFCTEUoTkVUV09SS19QUk9DRVNTKSAmJiBQTEFURk9STShNQUMpCiAjZGVmaW5l
IEVOQUJMRV9ORVRXT1JLX0NBQ0hFIDEKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJv
Y2Vzcy9pb3MvRGF0YWJhc2VQcm9jZXNzSU9TLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQyL0RhdGFiYXNlUHJvY2Vzcy9pb3MvRGF0YWJhc2VQcm9jZXNzSU9TLm1tCShyZXZpc2lvbiAx
ODA4MDgpCisrKyBTb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvaW9zL0RhdGFiYXNlUHJv
Y2Vzc0lPUy5tbQkod29ya2luZyBjb3B5KQpAQCAtNDMsNiArNDMsNyBAQCBuYW1lc3BhY2UgV2Vi
S2l0IHsKIAogdm9pZCBEYXRhYmFzZVByb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzKGNvbnN0IENo
aWxkUHJvY2Vzc0luaXRpYWxpemF0aW9uUGFyYW1ldGVycyYpCiB7CisgICAgbV9vc0FjdGl2aXR5
ID0gb3NfYWN0aXZpdHlfc3RhcnQoImNvbS5hcHBsZS5XZWJLaXQuRGF0YWJhc2VzIiwgT1NfQUNU
SVZJVFlfRkxBR19ERUZBVUxUKTsKIH0KIAogdm9pZCBEYXRhYmFzZVByb2Nlc3M6OmluaXRpYWxp
emVQcm9jZXNzTmFtZShjb25zdCBDaGlsZFByb2Nlc3NJbml0aWFsaXphdGlvblBhcmFtZXRlcnMm
IHBhcmFtZXRlcnMpCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvbWFjL0Rh
dGFiYXNlUHJvY2Vzc01hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9EYXRhYmFz
ZVByb2Nlc3MvbWFjL0RhdGFiYXNlUHJvY2Vzc01hYy5tbQkocmV2aXNpb24gMTgwODA4KQorKysg
U291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL21hYy9EYXRhYmFzZVByb2Nlc3NNYWMubW0J
KHdvcmtpbmcgY29weSkKQEAgLTQwLDYgKzQwLDcgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAKIHZv
aWQgRGF0YWJhc2VQcm9jZXNzOjppbml0aWFsaXplUHJvY2Vzcyhjb25zdCBDaGlsZFByb2Nlc3NJ
bml0aWFsaXphdGlvblBhcmFtZXRlcnMmKQogeworICAgIG1fb3NBY3Rpdml0eSA9IG9zX2FjdGl2
aXR5X3N0YXJ0KCJjb20uYXBwbGUuV2ViS2l0LkRhdGFiYXNlcyIsIE9TX0FDVElWSVRZX0ZMQUdf
REVGQVVMVCk7CiAgICAgLy8gSGF2aW5nIGEgd2luZG93IHNlcnZlciBjb25uZWN0aW9uIGluIHRo
aXMgcHJvY2VzcyB3b3VsZCByZXN1bHQgaW4gc3BpbiBsb2dzICg8cmRhcjovL3Byb2JsZW0vMTMy
MzkxMTk+KS4KICAgICBzZXRBcHBsaWNhdGlvbklzRGFlbW9uKCk7CiB9CkluZGV4OiBTb3VyY2Uv
V2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9pb3MvTmV0d29ya1Byb2Nlc3NJT1MubW0KPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvaW9zL05ldHdvcmtQcm9jZXNzSU9T
Lm1tCShyZXZpc2lvbiAxODA4MDgpCisrKyBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9p
b3MvTmV0d29ya1Byb2Nlc3NJT1MubW0JKHdvcmtpbmcgY29weSkKQEAgLTQ5LDYgKzQ5LDcgQEAg
bmFtZXNwYWNlIFdlYktpdCB7CiAKIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmluaXRpYWxpemVQcm9j
ZXNzKGNvbnN0IENoaWxkUHJvY2Vzc0luaXRpYWxpemF0aW9uUGFyYW1ldGVycyYpCiB7CisgICAg
bV9vc0FjdGl2aXR5ID0gb3NfYWN0aXZpdHlfc3RhcnQoImNvbS5hcHBsZS5XZWJLaXQuTmV0d29y
a2luZyIsIE9TX0FDVElWSVRZX0ZMQUdfREVGQVVMVCk7CiAgICAgSW5pdFdlYkNvcmVUaHJlYWRT
eXN0ZW1JbnRlcmZhY2UoKTsKIH0KIApJbmRleDogU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nl
c3MvbWFjL05ldHdvcmtQcm9jZXNzTWFjLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQy
L05ldHdvcmtQcm9jZXNzL21hYy9OZXR3b3JrUHJvY2Vzc01hYy5tbQkocmV2aXNpb24gMTgwODA4
KQorKysgU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvbWFjL05ldHdvcmtQcm9jZXNzTWFj
Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC01NSw2ICs1NSw3IEBAIG5hbWVzcGFjZSBXZWJLaXQgewog
CiB2b2lkIE5ldHdvcmtQcm9jZXNzOjppbml0aWFsaXplUHJvY2Vzcyhjb25zdCBDaGlsZFByb2Nl
c3NJbml0aWFsaXphdGlvblBhcmFtZXRlcnMmKQogeworICAgIG1fb3NBY3Rpdml0eSA9IG9zX2Fj
dGl2aXR5X3N0YXJ0KCJjb20uYXBwbGUuV2ViS2l0Lk5ldHdvcmtpbmciLCBPU19BQ1RJVklUWV9G
TEFHX0RFRkFVTFQpOwogICAgIC8vIEhhdmluZyBhIHdpbmRvdyBzZXJ2ZXIgY29ubmVjdGlvbiBp
biB0aGlzIHByb2Nlc3Mgd291bGQgcmVzdWx0IGluIHNwaW4gbG9ncyAoPHJkYXI6Ly9wcm9ibGVt
LzEzMjM5MTE5PikuCiAgICAgc2V0QXBwbGljYXRpb25Jc0RhZW1vbigpOwogfQpJbmRleDogU291
cmNlL1dlYktpdDIvUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9QbHVnaW5Qcm9jZXNzL21hYy9QbHVnaW5Qcm9jZXNzTWFj
Lm1tCShyZXZpc2lvbiAxODA4MDgpCisrKyBTb3VyY2UvV2ViS2l0Mi9QbHVnaW5Qcm9jZXNzL21h
Yy9QbHVnaW5Qcm9jZXNzTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC00MTgsNiArNDE4LDggQEAg
dm9pZCBQbHVnaW5Qcm9jZXNzOjpwbGF0Zm9ybUluaXRpYWxpemVQbAogCiB2b2lkIFBsdWdpblBy
b2Nlc3M6OnBsYXRmb3JtSW5pdGlhbGl6ZVByb2Nlc3MoY29uc3QgQ2hpbGRQcm9jZXNzSW5pdGlh
bGl6YXRpb25QYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQogeworICAgIG1fb3NBY3Rpdml0eSA9IG9z
X2FjdGl2aXR5X3N0YXJ0KCJjb20uYXBwbGUuV2ViS2l0LlBsdWdpbiIsIE9TX0FDVElWSVRZX0ZM
QUdfREVGQVVMVCk7CisKICNpZiBkZWZpbmVkKF9faTM4Nl9fKQogICAgIC8vIEluaXRpYWxpemUg
dGhlIHNoaW0uCiAgICAgaW5pdGlhbGl6ZVNoaW0oKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1No
YXJlZC9DaGlsZFByb2Nlc3MuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJl
ZC9DaGlsZFByb2Nlc3MuY3BwCShyZXZpc2lvbiAxODA4MDgpCisrKyBTb3VyY2UvV2ViS2l0Mi9T
aGFyZWQvQ2hpbGRQcm9jZXNzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzYsMTEgKzM2LDE4IEBA
IENoaWxkUHJvY2Vzczo6Q2hpbGRQcm9jZXNzKCkKICAgICAsIG1fdGVybWluYXRpb25Db3VudGVy
KDApCiAgICAgLCBtX3Rlcm1pbmF0aW9uVGltZXIoUnVuTG9vcDo6bWFpbigpLCB0aGlzLCAmQ2hp
bGRQcm9jZXNzOjp0ZXJtaW5hdGlvblRpbWVyRmlyZWQpCiAgICAgLCBtX3Byb2Nlc3NTdXBwcmVz
c2lvbkRpc2FibGVkKCJQcm9jZXNzIFN1cHByZXNzaW9uIERpc2FibGVkIGJ5IFVJUHJvY2VzcyIp
CisjaWYgSEFWRShPU19BQ1RJVklUWSkKKyAgICAsIG1fb3NBY3Rpdml0eShPU19BQ1RJVklUWV9O
VUxMKQorI2VuZGlmCiB7CiB9CiAKIENoaWxkUHJvY2Vzczo6fkNoaWxkUHJvY2VzcygpCiB7Cisj
aWYgSEFWRShPU19BQ1RJVklUWSkKKyAgICBpZiAobV9vc0FjdGl2aXR5ICE9IE9TX0FDVElWSVRZ
X05VTEwpCisgICAgICAgIG9zX2FjdGl2aXR5X2VuZChtX29zQWN0aXZpdHkpOworI2VuZGlmCiB9
CiAKIHN0YXRpYyB2b2lkIGRpZENsb3NlT25Db25uZWN0aW9uV29ya1F1ZXVlKElQQzo6Q29ubmVj
dGlvbiopCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ2hpbGRQcm9jZXNzLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYktpdDIvU2hhcmVkL0NoaWxkUHJvY2Vzcy5oCShyZXZpc2lvbiAx
ODA4MDgpCisrKyBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ2hpbGRQcm9jZXNzLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTM2LDYgKzM2LDEwIEBACiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSGFzaC5o
PgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCisjaWYgSEFWRShPU19BQ1RJVklU
WSkKKyNpbmNsdWRlIDxvcy9hY3Rpdml0eS5oPgorI2VuZGlmCisKIG5hbWVzcGFjZSBXZWJLaXQg
ewogCiBjbGFzcyBTYW5kYm94SW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzOwpAQCAtMTE2LDYgKzEy
MCwxNCBAQCBwcml2YXRlOgogICAgIElQQzo6TWVzc2FnZVJlY2VpdmVyTWFwIG1fbWVzc2FnZVJl
Y2VpdmVyTWFwOwogCiAgICAgVXNlckFjdGl2aXR5IG1fcHJvY2Vzc1N1cHByZXNzaW9uRGlzYWJs
ZWQ7CisKKyNpZiBIQVZFKE9TX0FDVElWSVRZKQorcHJvdGVjdGVkOgorICAgIC8vIFdlIGNhbid0
IG1ha2UgdGhpcyBwcml2YXRlIGJlY2F1c2Ugb3NfYWN0aXZpdHlfc3RhcnQgZm9yY2VzIF9fYnVp
bHRpbl9jb25zdGFudF9wIG9uIG5hbWUuCisgICAgb3NfYWN0aXZpdHlfdCBtX29zQWN0aXZpdHk7
CisKK3ByaXZhdGU6CisjZW5kaWYKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApJbmRleDog
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2Eu
bW0JKHJldmlzaW9uIDE4MDgwOCkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvY29jb2Ev
V2ViUHJvY2Vzc0NvY29hLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yMjMsNiArMjIzLDcgQEAgdm9p
ZCBXZWJQcm9jZXNzOjppbml0aWFsaXplUHJvY2Vzc05hbWUoYwogCiB2b2lkIFdlYlByb2Nlc3M6
OnBsYXRmb3JtSW5pdGlhbGl6ZVByb2Nlc3MoY29uc3QgQ2hpbGRQcm9jZXNzSW5pdGlhbGl6YXRp
b25QYXJhbWV0ZXJzJikKIHsKKyAgICBtX29zQWN0aXZpdHkgPSBvc19hY3Rpdml0eV9zdGFydCgi
Y29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50IiwgT1NfQUNUSVZJVFlfRkxBR19ERUZBVUxUKTsK
ICAgICBXS0FYUmVnaXN0ZXJSZW1vdGVBcHAoKTsKIAogI2lmIEVOQUJMRShTRUNfSVRFTV9TSElN
KQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247707</attachid>
            <date>2015-03-02 15:47:38 -0800</date>
            <delta_ts>2015-05-11 18:23:10 -0700</delta_ts>
            <desc>Fixed Mavericks build</desc>
            <filename>bug-141781-20150302154721.patch</filename>
            <type>text/plain</type>
            <size>7485</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MDgxMSkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMxIEBACisyMDE1LTAyLTI3ICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIENoaWxkUHJvY2VzcyBzaG91bGQg
dGFrZSBhbiBvc19hY3Rpdml0eQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTQxNzgxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQmFzZWQgb24gYSBwYXRjaCBtYWRlIGJ5IEdhdmluIEJhcnJhY2xvdWdoLgor
CisgICAgICAgICogRGF0YWJhc2VQcm9jZXNzL2lvcy9EYXRhYmFzZVByb2Nlc3NJT1MubW06Cisg
ICAgICAgIChXZWJLaXQ6OkRhdGFiYXNlUHJvY2Vzczo6aW5pdGlhbGl6ZVByb2Nlc3MpOiBDcmVh
dGVzIGFuIG9zX2FjdGl2aXR5LgorICAgICAgICAqIERhdGFiYXNlUHJvY2Vzcy9tYWMvRGF0YWJh
c2VQcm9jZXNzTWFjLm1tOgorICAgICAgICAoV2ViS2l0OjpEYXRhYmFzZVByb2Nlc3M6OmluaXRp
YWxpemVQcm9jZXNzKTogRGl0dG8uCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvaW9zL05ldHdv
cmtQcm9jZXNzSU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6aW5pdGlh
bGl6ZVByb2Nlc3MpOiBEaXR0by4KKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9tYWMvTmV0d29y
a1Byb2Nlc3NNYWMubW06CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjppbml0aWFs
aXplUHJvY2Vzcyk6IERpdHRvLgorICAgICAgICAqIFBsdWdpblByb2Nlc3MvbWFjL1BsdWdpblBy
b2Nlc3NNYWMubW06CisgICAgICAgIChXZWJLaXQ6OlBsdWdpblByb2Nlc3M6OnBsYXRmb3JtSW5p
dGlhbGl6ZVByb2Nlc3MpOiBEaXR0by4KKyAgICAgICAgKiBTaGFyZWQvQ2hpbGRQcm9jZXNzLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6Q2hpbGRQcm9jZXNzOjpDaGlsZFByb2Nlc3MpOiBJbml0aWFs
aXplcyBtX29zQWN0aXZpdHkuCisgICAgICAgIChXZWJLaXQ6OkNoaWxkUHJvY2Vzczo6fkNoaWxk
UHJvY2Vzcyk6IENhbGxzIG9zX2FjdGl2aXR5X2VuZC4KKyAgICAgICAgKiBTaGFyZWQvQ2hpbGRQ
cm9jZXNzLmg6CisgICAgICAgIChXZWJLaXQ6OkNoaWxkUHJvY2Vzcyk6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBy
b2Nlc3M6OnBsYXRmb3JtSW5pdGlhbGl6ZVByb2Nlc3MpOiBDcmVhdGVzIGFuIG9zX2FjdGl2aXR5
LgorICAgICAgICAqIGNvbmZpZy5oOiBBZGRlZCBIQVZFX09TX0FDVElWSVRZLgorCiAyMDE1LTAy
LTI3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgW1dLMl0gRHJv
cCBsZWdhY3kgV0tCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQgQVBJCkluZGV4OiBT
b3VyY2UvV2ViS2l0Mi9jb25maWcuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9jb25m
aWcuaAkocmV2aXNpb24gMTgwODA4KQorKysgU291cmNlL1dlYktpdDIvY29uZmlnLmgJKHdvcmtp
bmcgY29weSkKQEAgLTgxLDYgKzgxLDEyIEBACiAjZW5kaWYKICNlbmRpZgogCisjaWZuZGVmIEhB
VkVfT1NfQUNUSVZJVFkKKyNpZiBQTEFURk9STShJT1MpIHx8IChQTEFURk9STShNQUMpICYmIF9f
TUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxMDAwKQorI2RlZmluZSBIQVZFX09T
X0FDVElWSVRZIDEKKyNlbmRpZgorI2VuZGlmCisKICNpZm5kZWYgRU5BQkxFX05FVFdPUktfQ0FD
SEUKICNpZiBFTkFCTEUoTkVUV09SS19QUk9DRVNTKSAmJiBQTEFURk9STShNQUMpCiAjZGVmaW5l
IEVOQUJMRV9ORVRXT1JLX0NBQ0hFIDEKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJv
Y2Vzcy9pb3MvRGF0YWJhc2VQcm9jZXNzSU9TLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQyL0RhdGFiYXNlUHJvY2Vzcy9pb3MvRGF0YWJhc2VQcm9jZXNzSU9TLm1tCShyZXZpc2lvbiAx
ODA4MDgpCisrKyBTb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvaW9zL0RhdGFiYXNlUHJv
Y2Vzc0lPUy5tbQkod29ya2luZyBjb3B5KQpAQCAtNDMsNiArNDMsOSBAQCBuYW1lc3BhY2UgV2Vi
S2l0IHsKIAogdm9pZCBEYXRhYmFzZVByb2Nlc3M6OmluaXRpYWxpemVQcm9jZXNzKGNvbnN0IENo
aWxkUHJvY2Vzc0luaXRpYWxpemF0aW9uUGFyYW1ldGVycyYpCiB7CisjaWYgSEFWRShPU19BQ1RJ
VklUWSkKKyAgICBtX29zQWN0aXZpdHkgPSBvc19hY3Rpdml0eV9zdGFydCgiY29tLmFwcGxlLldl
YktpdC5EYXRhYmFzZXMiLCBPU19BQ1RJVklUWV9GTEFHX0RFRkFVTFQpOworI2VuZGlmCiB9CiAK
IHZvaWQgRGF0YWJhc2VQcm9jZXNzOjppbml0aWFsaXplUHJvY2Vzc05hbWUoY29uc3QgQ2hpbGRQ
cm9jZXNzSW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQpJbmRleDogU291cmNl
L1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL21hYy9EYXRhYmFzZVByb2Nlc3NNYWMubW0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL21hYy9EYXRhYmFzZVByb2Nl
c3NNYWMubW0JKHJldmlzaW9uIDE4MDgwOCkKKysrIFNvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJv
Y2Vzcy9tYWMvRGF0YWJhc2VQcm9jZXNzTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC00MCw2ICs0
MCw5IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiB2b2lkIERhdGFiYXNlUHJvY2Vzczo6aW5pdGlh
bGl6ZVByb2Nlc3MoY29uc3QgQ2hpbGRQcm9jZXNzSW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzJikK
IHsKKyNpZiBIQVZFKE9TX0FDVElWSVRZKQorICAgIG1fb3NBY3Rpdml0eSA9IG9zX2FjdGl2aXR5
X3N0YXJ0KCJjb20uYXBwbGUuV2ViS2l0LkRhdGFiYXNlcyIsIE9TX0FDVElWSVRZX0ZMQUdfREVG
QVVMVCk7CisjZW5kaWYKICAgICAvLyBIYXZpbmcgYSB3aW5kb3cgc2VydmVyIGNvbm5lY3Rpb24g
aW4gdGhpcyBwcm9jZXNzIHdvdWxkIHJlc3VsdCBpbiBzcGluIGxvZ3MgKDxyZGFyOi8vcHJvYmxl
bS8xMzIzOTExOT4pLgogICAgIHNldEFwcGxpY2F0aW9uSXNEYWVtb24oKTsKIH0KSW5kZXg6IFNv
dXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2lvcy9OZXR3b3JrUHJvY2Vzc0lPUy5tbQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9pb3MvTmV0d29ya1Byb2Nl
c3NJT1MubW0JKHJldmlzaW9uIDE4MDgwOCkKKysrIFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9j
ZXNzL2lvcy9OZXR3b3JrUHJvY2Vzc0lPUy5tbQkod29ya2luZyBjb3B5KQpAQCAtNDksNiArNDks
OSBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIAogdm9pZCBOZXR3b3JrUHJvY2Vzczo6aW5pdGlhbGl6
ZVByb2Nlc3MoY29uc3QgQ2hpbGRQcm9jZXNzSW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzJikKIHsK
KyNpZiBIQVZFKE9TX0FDVElWSVRZKQorICAgIG1fb3NBY3Rpdml0eSA9IG9zX2FjdGl2aXR5X3N0
YXJ0KCJjb20uYXBwbGUuV2ViS2l0Lk5ldHdvcmtpbmciLCBPU19BQ1RJVklUWV9GTEFHX0RFRkFV
TFQpOworI2VuZGlmCiAgICAgSW5pdFdlYkNvcmVUaHJlYWRTeXN0ZW1JbnRlcmZhY2UoKTsKIH0K
IApJbmRleDogU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvbWFjL05ldHdvcmtQcm9jZXNz
TWFjLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL21hYy9O
ZXR3b3JrUHJvY2Vzc01hYy5tbQkocmV2aXNpb24gMTgwODA4KQorKysgU291cmNlL1dlYktpdDIv
TmV0d29ya1Byb2Nlc3MvbWFjL05ldHdvcmtQcm9jZXNzTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBA
IC01NSw2ICs1NSw5IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiB2b2lkIE5ldHdvcmtQcm9jZXNz
Ojppbml0aWFsaXplUHJvY2Vzcyhjb25zdCBDaGlsZFByb2Nlc3NJbml0aWFsaXphdGlvblBhcmFt
ZXRlcnMmKQogeworI2lmIEhBVkUoT1NfQUNUSVZJVFkpCisgICAgbV9vc0FjdGl2aXR5ID0gb3Nf
YWN0aXZpdHlfc3RhcnQoImNvbS5hcHBsZS5XZWJLaXQuTmV0d29ya2luZyIsIE9TX0FDVElWSVRZ
X0ZMQUdfREVGQVVMVCk7CisjZW5kaWYKICAgICAvLyBIYXZpbmcgYSB3aW5kb3cgc2VydmVyIGNv
bm5lY3Rpb24gaW4gdGhpcyBwcm9jZXNzIHdvdWxkIHJlc3VsdCBpbiBzcGluIGxvZ3MgKDxyZGFy
Oi8vcHJvYmxlbS8xMzIzOTExOT4pLgogICAgIHNldEFwcGxpY2F0aW9uSXNEYWVtb24oKTsKIH0K
SW5kZXg6IFNvdXJjZS9XZWJLaXQyL1BsdWdpblByb2Nlc3MvbWFjL1BsdWdpblByb2Nlc3NNYWMu
bW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvUGx1Z2luUHJvY2Vzcy9tYWMvUGx1Z2lu
UHJvY2Vzc01hYy5tbQkocmV2aXNpb24gMTgwODA4KQorKysgU291cmNlL1dlYktpdDIvUGx1Z2lu
UHJvY2Vzcy9tYWMvUGx1Z2luUHJvY2Vzc01hYy5tbQkod29ya2luZyBjb3B5KQpAQCAtNDE4LDYg
KzQxOCwxMCBAQCB2b2lkIFBsdWdpblByb2Nlc3M6OnBsYXRmb3JtSW5pdGlhbGl6ZVBsCiAKIHZv
aWQgUGx1Z2luUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFsaXplUHJvY2Vzcyhjb25zdCBDaGlsZFBy
b2Nlc3NJbml0aWFsaXphdGlvblBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCiB7CisjaWYgSEFWRShP
U19BQ1RJVklUWSkKKyAgICBtX29zQWN0aXZpdHkgPSBvc19hY3Rpdml0eV9zdGFydCgiY29tLmFw
cGxlLldlYktpdC5QbHVnaW4iLCBPU19BQ1RJVklUWV9GTEFHX0RFRkFVTFQpOworI2VuZGlmCisK
ICNpZiBkZWZpbmVkKF9faTM4Nl9fKQogICAgIC8vIEluaXRpYWxpemUgdGhlIHNoaW0uCiAgICAg
aW5pdGlhbGl6ZVNoaW0oKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9DaGlsZFByb2Nl
c3MuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9DaGlsZFByb2Nlc3Mu
Y3BwCShyZXZpc2lvbiAxODA4MDgpCisrKyBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ2hpbGRQcm9j
ZXNzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzYsMTEgKzM2LDE4IEBAIENoaWxkUHJvY2Vzczo6
Q2hpbGRQcm9jZXNzKCkKICAgICAsIG1fdGVybWluYXRpb25Db3VudGVyKDApCiAgICAgLCBtX3Rl
cm1pbmF0aW9uVGltZXIoUnVuTG9vcDo6bWFpbigpLCB0aGlzLCAmQ2hpbGRQcm9jZXNzOjp0ZXJt
aW5hdGlvblRpbWVyRmlyZWQpCiAgICAgLCBtX3Byb2Nlc3NTdXBwcmVzc2lvbkRpc2FibGVkKCJQ
cm9jZXNzIFN1cHByZXNzaW9uIERpc2FibGVkIGJ5IFVJUHJvY2VzcyIpCisjaWYgSEFWRShPU19B
Q1RJVklUWSkKKyAgICAsIG1fb3NBY3Rpdml0eShPU19BQ1RJVklUWV9OVUxMKQorI2VuZGlmCiB7
CiB9CiAKIENoaWxkUHJvY2Vzczo6fkNoaWxkUHJvY2VzcygpCiB7CisjaWYgSEFWRShPU19BQ1RJ
VklUWSkKKyAgICBpZiAobV9vc0FjdGl2aXR5ICE9IE9TX0FDVElWSVRZX05VTEwpCisgICAgICAg
IG9zX2FjdGl2aXR5X2VuZChtX29zQWN0aXZpdHkpOworI2VuZGlmCiB9CiAKIHN0YXRpYyB2b2lk
IGRpZENsb3NlT25Db25uZWN0aW9uV29ya1F1ZXVlKElQQzo6Q29ubmVjdGlvbiopCkluZGV4OiBT
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ2hpbGRQcm9jZXNzLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdDIvU2hhcmVkL0NoaWxkUHJvY2Vzcy5oCShyZXZpc2lvbiAxODA4MDgpCisrKyBTb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvQ2hpbGRQcm9jZXNzLmgJKHdvcmtpbmcgY29weSkKQEAgLTM2LDYg
KzM2LDEwIEBACiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSGFzaC5oPgogI2luY2x1ZGUgPHd0
Zi90ZXh0L1dURlN0cmluZy5oPgogCisjaWYgSEFWRShPU19BQ1RJVklUWSkKKyNpbmNsdWRlIDxv
cy9hY3Rpdml0eS5oPgorI2VuZGlmCisKIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBTYW5k
Ym94SW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzOwpAQCAtMTE2LDYgKzEyMCwxNCBAQCBwcml2YXRl
OgogICAgIElQQzo6TWVzc2FnZVJlY2VpdmVyTWFwIG1fbWVzc2FnZVJlY2VpdmVyTWFwOwogCiAg
ICAgVXNlckFjdGl2aXR5IG1fcHJvY2Vzc1N1cHByZXNzaW9uRGlzYWJsZWQ7CisKKyNpZiBIQVZF
KE9TX0FDVElWSVRZKQorcHJvdGVjdGVkOgorICAgIC8vIFdlIGNhbid0IG1ha2UgdGhpcyBwcml2
YXRlIGJlY2F1c2Ugb3NfYWN0aXZpdHlfc3RhcnQgZm9yY2VzIF9fYnVpbHRpbl9jb25zdGFudF9w
IG9uIG5hbWUuCisgICAgb3NfYWN0aXZpdHlfdCBtX29zQWN0aXZpdHk7CisKK3ByaXZhdGU6Cisj
ZW5kaWYKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApJbmRleDogU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0KPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9jb2NvYS9XZWJQcm9jZXNzQ29jb2EubW0JKHJldmlzaW9uIDE4
MDgwOCkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvY29jb2EvV2ViUHJvY2Vzc0NvY29h
Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yMjMsNiArMjIzLDkgQEAgdm9pZCBXZWJQcm9jZXNzOjpp
bml0aWFsaXplUHJvY2Vzc05hbWUoYwogCiB2b2lkIFdlYlByb2Nlc3M6OnBsYXRmb3JtSW5pdGlh
bGl6ZVByb2Nlc3MoY29uc3QgQ2hpbGRQcm9jZXNzSW5pdGlhbGl6YXRpb25QYXJhbWV0ZXJzJikK
IHsKKyNpZiBIQVZFKE9TX0FDVElWSVRZKQorICAgIG1fb3NBY3Rpdml0eSA9IG9zX2FjdGl2aXR5
X3N0YXJ0KCJjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQiLCBPU19BQ1RJVklUWV9GTEFHX0RF
RkFVTFQpOworI2VuZGlmCiAgICAgV0tBWFJlZ2lzdGVyUmVtb3RlQXBwKCk7CiAKICNpZiBFTkFC
TEUoU0VDX0lURU1fU0hJTSkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>252916</attachid>
            <date>2015-05-11 18:23:13 -0700</date>
            <delta_ts>2015-05-11 19:06:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-141781-20150511182153.patch</filename>
            <type>text/plain</type>
            <size>5795</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4NDE0MSkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBACisyMDE1LTA1LTExICBTYW0gV2Vp
bmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQ2hpbGRQcm9jZXNzIHNob3VsZCB0YWtl
IGFuIG9zX2FjdGl2aXR5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xNDE3ODEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIERhdGFiYXNlUHJvY2Vzcy9FbnRyeVBvaW50L21hYy9YUENTZXJ2aWNlL0RhdGFi
YXNlU2VydmljZUVudHJ5UG9pbnQubW06CisgICAgICAgIChEYXRhYmFzZVNlcnZpY2VJbml0aWFs
aXplcik6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvRW50cnlQb2ludC9tYWMvWFBDU2Vydmlj
ZS9OZXR3b3JrU2VydmljZUVudHJ5UG9pbnQubW06CisgICAgICAgIChOZXR3b3JrU2VydmljZUlu
aXRpYWxpemVyKToKKyAgICAgICAgKiBQbHVnaW5Qcm9jZXNzL0VudHJ5UG9pbnQvbWFjL1hQQ1Nl
cnZpY2UvUGx1Z2luU2VydmljZUVudHJ5UG9pbnQubW06CisgICAgICAgIChQbHVnaW5TZXJ2aWNl
SW5pdGlhbGl6ZXIpOgorICAgICAgICAqIFdlYlByb2Nlc3MvRW50cnlQb2ludC9tYWMvWFBDU2Vy
dmljZS9XZWJDb250ZW50U2VydmljZUVudHJ5UG9pbnQubW06CisgICAgICAgIChXZWJDb250ZW50
U2VydmljZUluaXRpYWxpemVyKToKKyAgICAgICAgU3RhcnQgYW4gb3NfYWN0aXZpdHkgaW4gdGhl
IGluaXRpYWxpemVyIGZvciBlYWNoIFhQQyBzZXJ2aWNlLgorCisgICAgICAgICogY29uZmlnLmg6
CisgICAgICAgIEFkZCBIQVZFX09TX0FDVElWSVRZIHdoZXJlIGF2YWlsYWJsZS4KKwogMjAxNS0w
NS0xMSAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBTY3Jv
bGwgc25hcCBsb2dpYyBzaG91bGQgYmUgdHJpZ2dlcmVkIHdoZW4gcmVzaXppbmcgdGhlIFdlYlZp
ZXcKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL2NvbmZpZy5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQyL2NvbmZpZy5oCShyZXZpc2lvbiAxODQxMzQpCisrKyBTb3VyY2UvV2ViS2l0Mi9jb25m
aWcuaAkod29ya2luZyBjb3B5KQpAQCAtODEsNiArODEsMTIgQEAKICNlbmRpZgogI2VuZGlmCiAK
KyNpZm5kZWYgSEFWRV9PU19BQ1RJVklUWQorI2lmIFBMQVRGT1JNKElPUykgfHwgKFBMQVRGT1JN
KE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDEwMDApCisjZGVm
aW5lIEhBVkVfT1NfQUNUSVZJVFkgMQorI2VuZGlmCisjZW5kaWYKKwogI2lmbmRlZiBFTkFCTEVf
TkVUV09SS19DQUNIRQogI2lmIEVOQUJMRShORVRXT1JLX1BST0NFU1MpICYmIChQTEFURk9STShD
T0NPQSkgfHwgUExBVEZPUk0oR1RLKSkKICNkZWZpbmUgRU5BQkxFX05FVFdPUktfQ0FDSEUgMQpJ
bmRleDogU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0VudHJ5UG9pbnQvbWFjL1hQQ1Nl
cnZpY2UvRGF0YWJhc2VTZXJ2aWNlRW50cnlQb2ludC5tbQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvRW50cnlQb2ludC9tYWMvWFBDU2VydmljZS9EYXRhYmFz
ZVNlcnZpY2VFbnRyeVBvaW50Lm1tCShyZXZpc2lvbiAxODQxMzQpCisrKyBTb3VyY2UvV2ViS2l0
Mi9EYXRhYmFzZVByb2Nlc3MvRW50cnlQb2ludC9tYWMvWFBDU2VydmljZS9EYXRhYmFzZVNlcnZp
Y2VFbnRyeVBvaW50Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC0zMCwxMSArMzAsMTkgQEAKICNpbXBv
cnQgIldLQmFzZS5oIgogI2ltcG9ydCAiWFBDU2VydmljZUVudHJ5UG9pbnQuaCIKIAorI2lmIEhB
VkUoT1NfQUNUSVZJVFkpCisjaW5jbHVkZSA8b3MvYWN0aXZpdHkuaD4KKyNlbmRpZgorCiB1c2lu
ZyBuYW1lc3BhY2UgV2ViS2l0OwogCiBleHRlcm4gIkMiIFdLX0VYUE9SVCB2b2lkIERhdGFiYXNl
U2VydmljZUluaXRpYWxpemVyKHhwY19jb25uZWN0aW9uX3QgY29ubmVjdGlvbiwgeHBjX29iamVj
dF90IGluaXRpYWxpemVyTWVzc2FnZSk7CiAKIHZvaWQgRGF0YWJhc2VTZXJ2aWNlSW5pdGlhbGl6
ZXIoeHBjX2Nvbm5lY3Rpb25fdCBjb25uZWN0aW9uLCB4cGNfb2JqZWN0X3QgaW5pdGlhbGl6ZXJN
ZXNzYWdlKQogeworI2lmIEhBVkUoT1NfQUNUSVZJVFkpCisgICAgb3NfYWN0aXZpdHlfc3RhcnQo
ImNvbS5hcHBsZS5XZWJLaXQuRGF0YWJhc2VzIiwgT1NfQUNUSVZJVFlfRkxBR19ERUZBVUxUKTsK
KyNlbmRpZgorCiAgICAgWFBDU2VydmljZUluaXRpYWxpemVyPERhdGFiYXNlUHJvY2VzcywgWFBD
U2VydmljZUluaXRpYWxpemVyRGVsZWdhdGU+KGFkb3B0T1NPYmplY3QoY29ubmVjdGlvbiksIGlu
aXRpYWxpemVyTWVzc2FnZSk7CiB9CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vz
cy9FbnRyeVBvaW50L21hYy9YUENTZXJ2aWNlL05ldHdvcmtTZXJ2aWNlRW50cnlQb2ludC5tbQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9FbnRyeVBvaW50L21h
Yy9YUENTZXJ2aWNlL05ldHdvcmtTZXJ2aWNlRW50cnlQb2ludC5tbQkocmV2aXNpb24gMTg0MTM0
KQorKysgU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvRW50cnlQb2ludC9tYWMvWFBDU2Vy
dmljZS9OZXR3b3JrU2VydmljZUVudHJ5UG9pbnQubW0JKHdvcmtpbmcgY29weSkKQEAgLTMwLDYg
KzMwLDEwIEBACiAjaW1wb3J0ICJXS0Jhc2UuaCIKICNpbXBvcnQgIlhQQ1NlcnZpY2VFbnRyeVBv
aW50LmgiCiAKKyNpZiBIQVZFKE9TX0FDVElWSVRZKQorI2luY2x1ZGUgPG9zL2FjdGl2aXR5Lmg+
CisjZW5kaWYKKwogbmFtZXNwYWNlIFdlYktpdCB7CiAKIGNsYXNzIE5ldHdvcmtTZXJ2aWNlSW5p
dGlhbGl6ZXJEZWxlZ2F0ZSA6IHB1YmxpYyBYUENTZXJ2aWNlSW5pdGlhbGl6ZXJEZWxlZ2F0ZSB7
CkBAIC01Myw2ICs1NywxMCBAQCB2b2lkIE5ldHdvcmtTZXJ2aWNlSW5pdGlhbGl6ZXIoeHBjX2Nv
bm5lCiAgICAgLy8gdGhlIHRoaXMgcHJvY2VzcyBkb24ndCB0cnkgdG8gaW5zZXJ0IHRoZSBzaGlt
IGFuZCBjcmFzaC4KICAgICBFbnZpcm9ubWVudFV0aWxpdGllczo6c3RyaXBWYWx1ZXNFbmRpbmdX
aXRoU3RyaW5nKCJEWUxEX0lOU0VSVF9MSUJSQVJJRVMiLCAiL1NlY0l0ZW1TaGltLmR5bGliIik7
CiAKKyNpZiBIQVZFKE9TX0FDVElWSVRZKQorICAgIG9zX2FjdGl2aXR5X3N0YXJ0KCJjb20uYXBw
bGUuV2ViS2l0Lk5ldHdvcmtpbmciLCBPU19BQ1RJVklUWV9GTEFHX0RFRkFVTFQpOworI2VuZGlm
CisKICAgICBYUENTZXJ2aWNlSW5pdGlhbGl6ZXI8TmV0d29ya1Byb2Nlc3MsIE5ldHdvcmtTZXJ2
aWNlSW5pdGlhbGl6ZXJEZWxlZ2F0ZT4oYWRvcHRPU09iamVjdChjb25uZWN0aW9uKSwgaW5pdGlh
bGl6ZXJNZXNzYWdlKTsKICNlbmRpZgogfQpJbmRleDogU291cmNlL1dlYktpdDIvUGx1Z2luUHJv
Y2Vzcy9FbnRyeVBvaW50L21hYy9YUENTZXJ2aWNlL1BsdWdpblNlcnZpY2VFbnRyeVBvaW50Lm1t
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1BsdWdpblByb2Nlc3MvRW50cnlQb2ludC9t
YWMvWFBDU2VydmljZS9QbHVnaW5TZXJ2aWNlRW50cnlQb2ludC5tbQkocmV2aXNpb24gMTg0MTM0
KQorKysgU291cmNlL1dlYktpdDIvUGx1Z2luUHJvY2Vzcy9FbnRyeVBvaW50L21hYy9YUENTZXJ2
aWNlL1BsdWdpblNlcnZpY2VFbnRyeVBvaW50Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC0zMSw2ICsz
MSwxMCBAQAogI2ltcG9ydCAiWFBDU2VydmljZUVudHJ5UG9pbnQuaCIKICNpbXBvcnQgPHd0Zi9S
dW5Mb29wLmg+CiAKKyNpZiBIQVZFKE9TX0FDVElWSVRZKQorI2luY2x1ZGUgPG9zL2FjdGl2aXR5
Lmg+CisjZW5kaWYKKwogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogCiBuYW1lc3Bh
Y2UgV2ViS2l0IHsKQEAgLTc2LDYgKzgwLDEwIEBAIHZvaWQgUGx1Z2luU2VydmljZUluaXRpYWxp
emVyKHhwY19jb25uZWMKICAgICAvLyBzcGF3bmVkIGJ5IHRoZSBQbHVnaW5Qcm9jZXNzIGRvbid0
IHRyeSB0byBpbnNlcnQgdGhlIHNoaW0gYW5kIGNyYXNoLgogICAgIEVudmlyb25tZW50VXRpbGl0
aWVzOjpzdHJpcFZhbHVlc0VuZGluZ1dpdGhTdHJpbmcoIkRZTERfSU5TRVJUX0xJQlJBUklFUyIs
ICIvUGx1Z2luUHJvY2Vzc1NoaW0uZHlsaWIiKTsKIAorI2lmIEhBVkUoT1NfQUNUSVZJVFkpCisg
ICAgb3NfYWN0aXZpdHlfc3RhcnQoImNvbS5hcHBsZS5XZWJLaXQuUGx1Z2luIiwgT1NfQUNUSVZJ
VFlfRkxBR19ERUZBVUxUKTsKKyNlbmRpZgorCiAgICAgWFBDU2VydmljZUluaXRpYWxpemVyPFBs
dWdpblByb2Nlc3MsIFBsdWdpblNlcnZpY2VJbml0aWFsaXplckRlbGVnYXRlPihhZG9wdE9TT2Jq
ZWN0KGNvbm5lY3Rpb24pLCBpbml0aWFsaXplck1lc3NhZ2UpOwogI2VuZGlmIC8vIEVOQUJMRShO
RVRTQ0FQRV9QTFVHSU5fQVBJKQogfQpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9F
bnRyeVBvaW50L21hYy9YUENTZXJ2aWNlL1dlYkNvbnRlbnRTZXJ2aWNlRW50cnlQb2ludC5tbQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0VudHJ5UG9pbnQvbWFjL1hQ
Q1NlcnZpY2UvV2ViQ29udGVudFNlcnZpY2VFbnRyeVBvaW50Lm1tCShyZXZpc2lvbiAxODQxMzQp
CisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0VudHJ5UG9pbnQvbWFjL1hQQ1NlcnZpY2Uv
V2ViQ29udGVudFNlcnZpY2VFbnRyeVBvaW50Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC0zNiw2ICsz
NiwxMCBAQAogI2ltcG9ydCA8V2ViQ29yZS9XZWJDb3JlVGhyZWFkU3lzdGVtSW50ZXJmYWNlLmg+
CiAjZW5kaWYKIAorI2lmIEhBVkUoT1NfQUNUSVZJVFkpCisjaW5jbHVkZSA8b3MvYWN0aXZpdHku
aD4KKyNlbmRpZgorCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIHVzaW5nIG5hbWVzcGFjZSBX
ZWJLaXQ7CiAKQEAgLTQ3LDYgKzUxLDEwIEBAIHZvaWQgV2ViQ29udGVudFNlcnZpY2VJbml0aWFs
aXplcih4cGNfY28KICAgICAvLyB0aGUgdGhpcyBwcm9jZXNzIGRvbid0IHRyeSB0byBpbnNlcnQg
dGhlIHNoaW0gYW5kIGNyYXNoLgogICAgIEVudmlyb25tZW50VXRpbGl0aWVzOjpzdHJpcFZhbHVl
c0VuZGluZ1dpdGhTdHJpbmcoIkRZTERfSU5TRVJUX0xJQlJBUklFUyIsICIvV2ViUHJvY2Vzc1No
aW0uZHlsaWIiKTsKIAorI2lmIEhBVkUoT1NfQUNUSVZJVFkpCisgICAgb3NfYWN0aXZpdHlfc3Rh
cnQoImNvbS5hcHBsZS5XZWJLaXQuV2ViQ29udGVudCIsIE9TX0FDVElWSVRZX0ZMQUdfREVGQVVM
VCk7CisjZW5kaWYKKwogI2lmIFBMQVRGT1JNKElPUykKICAgICBHU0luaXRpYWxpemUoKTsKICAg
ICBJbml0V2ViQ29yZVRocmVhZFN5c3RlbUludGVyZmFjZSgpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>252922</attachid>
            <date>2015-05-11 19:06:32 -0700</date>
            <delta_ts>2015-05-11 19:08:22 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-141781-20150511190511.patch</filename>
            <type>text/plain</type>
            <size>6304</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4NDE0MSkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBACisyMDE1LTA1LTExICBTYW0gV2Vp
bmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQ2hpbGRQcm9jZXNzIHNob3VsZCB0YWtl
IGFuIG9zX2FjdGl2aXR5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xNDE3ODEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIERhdGFiYXNlUHJvY2Vzcy9FbnRyeVBvaW50L21hYy9YUENTZXJ2aWNlL0RhdGFi
YXNlU2VydmljZUVudHJ5UG9pbnQubW06CisgICAgICAgIChEYXRhYmFzZVNlcnZpY2VJbml0aWFs
aXplcik6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvRW50cnlQb2ludC9tYWMvWFBDU2Vydmlj
ZS9OZXR3b3JrU2VydmljZUVudHJ5UG9pbnQubW06CisgICAgICAgIChOZXR3b3JrU2VydmljZUlu
aXRpYWxpemVyKToKKyAgICAgICAgKiBQbHVnaW5Qcm9jZXNzL0VudHJ5UG9pbnQvbWFjL1hQQ1Nl
cnZpY2UvUGx1Z2luU2VydmljZUVudHJ5UG9pbnQubW06CisgICAgICAgIChQbHVnaW5TZXJ2aWNl
SW5pdGlhbGl6ZXIpOgorICAgICAgICAqIFdlYlByb2Nlc3MvRW50cnlQb2ludC9tYWMvWFBDU2Vy
dmljZS9XZWJDb250ZW50U2VydmljZUVudHJ5UG9pbnQubW06CisgICAgICAgIChXZWJDb250ZW50
U2VydmljZUluaXRpYWxpemVyKToKKyAgICAgICAgU3RhcnQgYW4gb3NfYWN0aXZpdHkgaW4gdGhl
IGluaXRpYWxpemVyIGZvciBlYWNoIFhQQyBzZXJ2aWNlLgorCisgICAgICAgICogY29uZmlnLmg6
CisgICAgICAgIEFkZCBIQVZFX09TX0FDVElWSVRZIHdoZXJlIGF2YWlsYWJsZS4KKwogMjAxNS0w
NS0xMSAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBTY3Jv
bGwgc25hcCBsb2dpYyBzaG91bGQgYmUgdHJpZ2dlcmVkIHdoZW4gcmVzaXppbmcgdGhlIFdlYlZp
ZXcKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL2NvbmZpZy5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQyL2NvbmZpZy5oCShyZXZpc2lvbiAxODQxMzQpCisrKyBTb3VyY2UvV2ViS2l0Mi9jb25m
aWcuaAkod29ya2luZyBjb3B5KQpAQCAtODEsNiArODEsMTIgQEAKICNlbmRpZgogI2VuZGlmCiAK
KyNpZm5kZWYgSEFWRV9PU19BQ1RJVklUWQorI2lmIFBMQVRGT1JNKElPUykgfHwgKFBMQVRGT1JN
KE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDEwMDApCisjZGVm
aW5lIEhBVkVfT1NfQUNUSVZJVFkgMQorI2VuZGlmCisjZW5kaWYKKwogI2lmbmRlZiBFTkFCTEVf
TkVUV09SS19DQUNIRQogI2lmIEVOQUJMRShORVRXT1JLX1BST0NFU1MpICYmIChQTEFURk9STShD
T0NPQSkgfHwgUExBVEZPUk0oR1RLKSkKICNkZWZpbmUgRU5BQkxFX05FVFdPUktfQ0FDSEUgMQpJ
bmRleDogU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0VudHJ5UG9pbnQvbWFjL1hQQ1Nl
cnZpY2UvRGF0YWJhc2VTZXJ2aWNlRW50cnlQb2ludC5tbQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvRW50cnlQb2ludC9tYWMvWFBDU2VydmljZS9EYXRhYmFz
ZVNlcnZpY2VFbnRyeVBvaW50Lm1tCShyZXZpc2lvbiAxODQxMzQpCisrKyBTb3VyY2UvV2ViS2l0
Mi9EYXRhYmFzZVByb2Nlc3MvRW50cnlQb2ludC9tYWMvWFBDU2VydmljZS9EYXRhYmFzZVNlcnZp
Y2VFbnRyeVBvaW50Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC0zMCwxMSArMzAsMjMgQEAKICNpbXBv
cnQgIldLQmFzZS5oIgogI2ltcG9ydCAiWFBDU2VydmljZUVudHJ5UG9pbnQuaCIKIAorI2lmIEhB
VkUoT1NfQUNUSVZJVFkpCisjaW5jbHVkZSA8b3MvYWN0aXZpdHkuaD4KKyNlbmRpZgorCiB1c2lu
ZyBuYW1lc3BhY2UgV2ViS2l0OwogCiBleHRlcm4gIkMiIFdLX0VYUE9SVCB2b2lkIERhdGFiYXNl
U2VydmljZUluaXRpYWxpemVyKHhwY19jb25uZWN0aW9uX3QgY29ubmVjdGlvbiwgeHBjX29iamVj
dF90IGluaXRpYWxpemVyTWVzc2FnZSk7CiAKIHZvaWQgRGF0YWJhc2VTZXJ2aWNlSW5pdGlhbGl6
ZXIoeHBjX2Nvbm5lY3Rpb25fdCBjb25uZWN0aW9uLCB4cGNfb2JqZWN0X3QgaW5pdGlhbGl6ZXJN
ZXNzYWdlKQogeworI2lmIEhBVkUoT1NfQUNUSVZJVFkpCisgICAgb3NfYWN0aXZpdHlfdCBhY3Rp
dml0eSA9IG9zX2FjdGl2aXR5X3N0YXJ0KCJjb20uYXBwbGUuV2ViS2l0LkRhdGFiYXNlcyIsIE9T
X0FDVElWSVRZX0ZMQUdfREVGQVVMVCk7CisjZW5kaWYKKwogICAgIFhQQ1NlcnZpY2VJbml0aWFs
aXplcjxEYXRhYmFzZVByb2Nlc3MsIFhQQ1NlcnZpY2VJbml0aWFsaXplckRlbGVnYXRlPihhZG9w
dE9TT2JqZWN0KGNvbm5lY3Rpb24pLCBpbml0aWFsaXplck1lc3NhZ2UpOworCisjaWYgSEFWRShP
U19BQ1RJVklUWSkKKyAgICBvc19hY3Rpdml0eV9lbmQoYWN0aXZpdHkpOworI2VuZGlmCiB9Cklu
ZGV4OiBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9FbnRyeVBvaW50L21hYy9YUENTZXJ2
aWNlL05ldHdvcmtTZXJ2aWNlRW50cnlQb2ludC5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9OZXR3b3JrUHJvY2Vzcy9FbnRyeVBvaW50L21hYy9YUENTZXJ2aWNlL05ldHdvcmtTZXJ2
aWNlRW50cnlQb2ludC5tbQkocmV2aXNpb24gMTg0MTM0KQorKysgU291cmNlL1dlYktpdDIvTmV0
d29ya1Byb2Nlc3MvRW50cnlQb2ludC9tYWMvWFBDU2VydmljZS9OZXR3b3JrU2VydmljZUVudHJ5
UG9pbnQubW0JKHdvcmtpbmcgY29weSkKQEAgLTMwLDYgKzMwLDEwIEBACiAjaW1wb3J0ICJXS0Jh
c2UuaCIKICNpbXBvcnQgIlhQQ1NlcnZpY2VFbnRyeVBvaW50LmgiCiAKKyNpZiBIQVZFKE9TX0FD
VElWSVRZKQorI2luY2x1ZGUgPG9zL2FjdGl2aXR5Lmg+CisjZW5kaWYKKwogbmFtZXNwYWNlIFdl
YktpdCB7CiAKIGNsYXNzIE5ldHdvcmtTZXJ2aWNlSW5pdGlhbGl6ZXJEZWxlZ2F0ZSA6IHB1Ymxp
YyBYUENTZXJ2aWNlSW5pdGlhbGl6ZXJEZWxlZ2F0ZSB7CkBAIC01Myw2ICs1NywxNCBAQCB2b2lk
IE5ldHdvcmtTZXJ2aWNlSW5pdGlhbGl6ZXIoeHBjX2Nvbm5lCiAgICAgLy8gdGhlIHRoaXMgcHJv
Y2VzcyBkb24ndCB0cnkgdG8gaW5zZXJ0IHRoZSBzaGltIGFuZCBjcmFzaC4KICAgICBFbnZpcm9u
bWVudFV0aWxpdGllczo6c3RyaXBWYWx1ZXNFbmRpbmdXaXRoU3RyaW5nKCJEWUxEX0lOU0VSVF9M
SUJSQVJJRVMiLCAiL1NlY0l0ZW1TaGltLmR5bGliIik7CiAKKyNpZiBIQVZFKE9TX0FDVElWSVRZ
KQorICAgIG9zX2FjdGl2aXR5X3QgYWN0aXZpdHkgPSBvc19hY3Rpdml0eV9zdGFydCgiY29tLmFw
cGxlLldlYktpdC5OZXR3b3JraW5nIiwgT1NfQUNUSVZJVFlfRkxBR19ERUZBVUxUKTsKKyNlbmRp
ZgorCiAgICAgWFBDU2VydmljZUluaXRpYWxpemVyPE5ldHdvcmtQcm9jZXNzLCBOZXR3b3JrU2Vy
dmljZUluaXRpYWxpemVyRGVsZWdhdGU+KGFkb3B0T1NPYmplY3QoY29ubmVjdGlvbiksIGluaXRp
YWxpemVyTWVzc2FnZSk7CisKKyNpZiBIQVZFKE9TX0FDVElWSVRZKQorICAgIG9zX2FjdGl2aXR5
X2VuZChhY3Rpdml0eSk7CisjZW5kaWYKICNlbmRpZgogfQpJbmRleDogU291cmNlL1dlYktpdDIv
UGx1Z2luUHJvY2Vzcy9FbnRyeVBvaW50L21hYy9YUENTZXJ2aWNlL1BsdWdpblNlcnZpY2VFbnRy
eVBvaW50Lm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1BsdWdpblByb2Nlc3MvRW50
cnlQb2ludC9tYWMvWFBDU2VydmljZS9QbHVnaW5TZXJ2aWNlRW50cnlQb2ludC5tbQkocmV2aXNp
b24gMTg0MTM0KQorKysgU291cmNlL1dlYktpdDIvUGx1Z2luUHJvY2Vzcy9FbnRyeVBvaW50L21h
Yy9YUENTZXJ2aWNlL1BsdWdpblNlcnZpY2VFbnRyeVBvaW50Lm1tCSh3b3JraW5nIGNvcHkpCkBA
IC0zMSw2ICszMSwxMCBAQAogI2ltcG9ydCAiWFBDU2VydmljZUVudHJ5UG9pbnQuaCIKICNpbXBv
cnQgPHd0Zi9SdW5Mb29wLmg+CiAKKyNpZiBIQVZFKE9TX0FDVElWSVRZKQorI2luY2x1ZGUgPG9z
L2FjdGl2aXR5Lmg+CisjZW5kaWYKKwogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQog
CiBuYW1lc3BhY2UgV2ViS2l0IHsKQEAgLTc2LDYgKzgwLDE0IEBAIHZvaWQgUGx1Z2luU2Vydmlj
ZUluaXRpYWxpemVyKHhwY19jb25uZWMKICAgICAvLyBzcGF3bmVkIGJ5IHRoZSBQbHVnaW5Qcm9j
ZXNzIGRvbid0IHRyeSB0byBpbnNlcnQgdGhlIHNoaW0gYW5kIGNyYXNoLgogICAgIEVudmlyb25t
ZW50VXRpbGl0aWVzOjpzdHJpcFZhbHVlc0VuZGluZ1dpdGhTdHJpbmcoIkRZTERfSU5TRVJUX0xJ
QlJBUklFUyIsICIvUGx1Z2luUHJvY2Vzc1NoaW0uZHlsaWIiKTsKIAorI2lmIEhBVkUoT1NfQUNU
SVZJVFkpCisgICAgb3NfYWN0aXZpdHlfdCBhY3Rpdml0eSA9IG9zX2FjdGl2aXR5X3N0YXJ0KCJj
b20uYXBwbGUuV2ViS2l0LlBsdWdpbiIsIE9TX0FDVElWSVRZX0ZMQUdfREVGQVVMVCk7CisjZW5k
aWYKKwogICAgIFhQQ1NlcnZpY2VJbml0aWFsaXplcjxQbHVnaW5Qcm9jZXNzLCBQbHVnaW5TZXJ2
aWNlSW5pdGlhbGl6ZXJEZWxlZ2F0ZT4oYWRvcHRPU09iamVjdChjb25uZWN0aW9uKSwgaW5pdGlh
bGl6ZXJNZXNzYWdlKTsKKworI2lmIEhBVkUoT1NfQUNUSVZJVFkpCisgICAgb3NfYWN0aXZpdHlf
ZW5kKGFjdGl2aXR5KTsKKyNlbmRpZgogI2VuZGlmIC8vIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5f
QVBJKQogfQpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9FbnRyeVBvaW50L21hYy9Y
UENTZXJ2aWNlL1dlYkNvbnRlbnRTZXJ2aWNlRW50cnlQb2ludC5tbQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0VudHJ5UG9pbnQvbWFjL1hQQ1NlcnZpY2UvV2ViQ29u
dGVudFNlcnZpY2VFbnRyeVBvaW50Lm1tCShyZXZpc2lvbiAxODQxMzQpCisrKyBTb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL0VudHJ5UG9pbnQvbWFjL1hQQ1NlcnZpY2UvV2ViQ29udGVudFNlcnZp
Y2VFbnRyeVBvaW50Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC0zNiw2ICszNiwxMCBAQAogI2ltcG9y
dCA8V2ViQ29yZS9XZWJDb3JlVGhyZWFkU3lzdGVtSW50ZXJmYWNlLmg+CiAjZW5kaWYKIAorI2lm
IEhBVkUoT1NfQUNUSVZJVFkpCisjaW5jbHVkZSA8b3MvYWN0aXZpdHkuaD4KKyNlbmRpZgorCiB1
c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIHVzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7CiAKQEAgLTQ3
LDEwICs1MSwxOCBAQCB2b2lkIFdlYkNvbnRlbnRTZXJ2aWNlSW5pdGlhbGl6ZXIoeHBjX2NvCiAg
ICAgLy8gdGhlIHRoaXMgcHJvY2VzcyBkb24ndCB0cnkgdG8gaW5zZXJ0IHRoZSBzaGltIGFuZCBj
cmFzaC4KICAgICBFbnZpcm9ubWVudFV0aWxpdGllczo6c3RyaXBWYWx1ZXNFbmRpbmdXaXRoU3Ry
aW5nKCJEWUxEX0lOU0VSVF9MSUJSQVJJRVMiLCAiL1dlYlByb2Nlc3NTaGltLmR5bGliIik7CiAK
KyNpZiBIQVZFKE9TX0FDVElWSVRZKQorICAgIG9zX2FjdGl2aXR5X3QgYWN0aXZpdHkgPSBvc19h
Y3Rpdml0eV9zdGFydCgiY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50IiwgT1NfQUNUSVZJVFlf
RkxBR19ERUZBVUxUKTsKKyNlbmRpZgorCiAjaWYgUExBVEZPUk0oSU9TKQogICAgIEdTSW5pdGlh
bGl6ZSgpOwogICAgIEluaXRXZWJDb3JlVGhyZWFkU3lzdGVtSW50ZXJmYWNlKCk7CiAjZW5kaWYg
Ly8gUExBVEZPUk0oSU9TKQogCiAgICAgWFBDU2VydmljZUluaXRpYWxpemVyPFdlYlByb2Nlc3Ms
IFhQQ1NlcnZpY2VJbml0aWFsaXplckRlbGVnYXRlPihhZG9wdE9TT2JqZWN0KGNvbm5lY3Rpb24p
LCBpbml0aWFsaXplck1lc3NhZ2UpOworCisjaWYgSEFWRShPU19BQ1RJVklUWSkKKyAgICBvc19h
Y3Rpdml0eV9lbmQoYWN0aXZpdHkpOworI2VuZGlmCiB9Cg==
</data>
<flag name="review"
          id="277787"
          type_id="1"
          status="+"
          setter="rniwa"
    />
          </attachment>
      

    </bug>

</bugzilla>