<?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>134946</bug_id>
          
          <creation_ts>2014-07-15 15:37:32 -0700</creation_ts>
          <short_desc>[Win] Fix Assert when handling Legible Output callbacks</short_desc>
          <delta_ts>2014-07-23 08:50:26 -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>Media</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>
          <dependson>135173</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Brent Fulgham">bfulgham</reporter>
          <assigned_to name="Brent Fulgham">bfulgham</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1022580</commentid>
    <comment_count>0</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-07-15 15:37:32 -0700</bug_when>
    <thetext>The changes in Bug 134178 introduced a Debug Assert in Windows, because the new InbandTextTrackPrivateAVF::processNativeSamples method is called on Windows, but is stubbed out as an &apos;ASSERT_NOT_REACHED&apos;.

This code should not have been excluded on Windows. This patch allows Windows to use the same code path as Mac/iOS, and prevents the assertion from firing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1022581</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2014-07-15 15:40:50 -0700</bug_when>
    <thetext>&lt;rdar://problem/17687098&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1022582</commentid>
    <comment_count>2</comment_count>
      <attachid>234960</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-07-15 15:41:12 -0700</bug_when>
    <thetext>Created attachment 234960
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1022583</commentid>
    <comment_count>3</comment_count>
      <attachid>234961</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-07-15 15:42:10 -0700</bug_when>
    <thetext>Created attachment 234961
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1022643</commentid>
    <comment_count>4</comment_count>
      <attachid>234961</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2014-07-15 20:05:29 -0700</bug_when>
    <thetext>Comment on attachment 234961
Patch

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

Thanks Brent!

&gt; Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:1534
&gt; +    RetainPtr&lt;CFArrayRef&gt; subtypes = createLegibleOutputSubtypes();

I think you want to adoptCF(createLegibleOutputSubtypes()) because the array already has a ref count of 1.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1022893</commentid>
    <comment_count>5</comment_count>
      <attachid>234961</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-07-16 18:06:08 -0700</bug_when>
    <thetext>Comment on attachment 234961
Patch

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

&gt; Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:1495
&gt; +    formatTypes[0] = CFNumberCreate(kCFAllocatorDefault, kCFNumberIntType, &amp;webvtt);

This CFNumber leaks. I suggest this instead:

    int webVTTInt = kCMSubtitleFormatType_WebVTT;
    RetainPtr&lt;CFNumberRef&gt; webVTTNumber = adoptCF(CFNumberCreate(kCFAllocatorDefault, kCFNumberIntType, &amp;webVTTInt));
    CFTypeRef formatTypes[] = { webVTTNumber.get(); };
    return adoptCF(CFArrayCreate(0, formatTypes, WTF_ARRAY_LENGT(formatTypes), &amp;kCFTypeArrayCallBacks));

&gt;&gt; Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:1534
&gt;&gt; +    RetainPtr&lt;CFArrayRef&gt; subtypes = createLegibleOutputSubtypes();
&gt; 
&gt; I think you want to adoptCF(createLegibleOutputSubtypes()) because the array already has a ref count of 1.

That’s right, but it’s also better to have that function return a RetainPtr so the adoptCF is right next to the CFArrayCreate.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1023121</commentid>
    <comment_count>6</comment_count>
      <attachid>234961</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-07-17 15:18:16 -0700</bug_when>
    <thetext>Comment on attachment 234961
Patch

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

&gt;&gt; Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:1495
&gt;&gt; +    formatTypes[0] = CFNumberCreate(kCFAllocatorDefault, kCFNumberIntType, &amp;webvtt);
&gt; 
&gt; This CFNumber leaks. I suggest this instead:
&gt; 
&gt;     int webVTTInt = kCMSubtitleFormatType_WebVTT;
&gt;     RetainPtr&lt;CFNumberRef&gt; webVTTNumber = adoptCF(CFNumberCreate(kCFAllocatorDefault, kCFNumberIntType, &amp;webVTTInt));
&gt;     CFTypeRef formatTypes[] = { webVTTNumber.get(); };
&gt;     return adoptCF(CFArrayCreate(0, formatTypes, WTF_ARRAY_LENGT(formatTypes), &amp;kCFTypeArrayCallBacks));

Done!

&gt;&gt;&gt; Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:1534
&gt;&gt;&gt; +    RetainPtr&lt;CFArrayRef&gt; subtypes = createLegibleOutputSubtypes();
&gt;&gt; 
&gt;&gt; I think you want to adoptCF(createLegibleOutputSubtypes()) because the array already has a ref count of 1.
&gt; 
&gt; That’s right, but it’s also better to have that function return a RetainPtr so the adoptCF is right next to the CFArrayCreate.

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1023122</commentid>
    <comment_count>7</comment_count>
      <attachid>235094</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-07-17 15:20:57 -0700</bug_when>
    <thetext>Created attachment 235094
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1023505</commentid>
    <comment_count>8</comment_count>
      <attachid>235094</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-07-19 23:25:27 -0700</bug_when>
    <thetext>Comment on attachment 235094
Patch

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

&gt; Source/WebCore/platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:77
&gt; +SOFT_LINK_DLL_IMPORT(CoreMedia, CMSampleBufferGetDataBuffer, CMBlockBufferRef, __cdecl, (CMSampleBufferRef sbuf), (sbuf))

This change isn’t mentioned explicitly in the change log, but it’s not yet compiling on EWS:

     1&gt;..\platform\graphics\avfoundation\InbandTextTrackPrivateAVF.cpp(77): error C2143: syntax error : missing &apos;;&apos; before &apos;__cdecl&apos;
     1&gt;..\platform\graphics\avfoundation\InbandTextTrackPrivateAVF.cpp(77): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
     1&gt;..\platform\graphics\avfoundation\InbandTextTrackPrivateAVF.cpp(77): error C2065: &apos;CMSampleBufferRef&apos; : undeclared identifier
     1&gt;..\platform\graphics\avfoundation\InbandTextTrackPrivateAVF.cpp(77): error C2146: syntax error : missing &apos;)&apos; before identifier &apos;sbuf&apos;
     1&gt;..\platform\graphics\avfoundation\InbandTextTrackPrivateAVF.cpp(77): warning C4229: anachronism used : modifiers on data are ignored
     1&gt;..\platform\graphics\avfoundation\InbandTextTrackPrivateAVF.cpp(77): error C2059: syntax error : &apos;)&apos;
     1&gt;..\platform\graphics\avfoundation\InbandTextTrackPrivateAVF.cpp(77): error C2059: syntax error : &apos;__cdecl&apos;
     1&gt;..\platform\graphics\avfoundation\InbandTextTrackPrivateAVF.cpp(77): error C2086: &apos;int CMBlockBufferRef&apos; : redefinition

Maybe they don’t have the correct version of CoreMedia.h?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1023506</commentid>
    <comment_count>9</comment_count>
      <attachid>235094</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-07-19 23:26:54 -0700</bug_when>
    <thetext>Comment on attachment 235094
Patch

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

review+ if you can get it to compile on EWS and bots and such

&gt; Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:1533
&gt; +    RetainPtr&lt;CFArrayRef&gt; subtypes = createLegibleOutputSubtypes();
&gt; +    m_legibleOutput = adoptCF(AVCFPlayerItemLegibleOutputCreateWithMediaSubtypesForNativeRepresentation(kCFAllocatorDefault, subtypes.get()));

Not sure you really even need the local variable here. Putting createLegibleOutputSubtypes right into the expression might make the line excessively long, but otherwise it seems like an improvement.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1023796</commentid>
    <comment_count>10</comment_count>
      <attachid>235251</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-07-21 16:05:22 -0700</bug_when>
    <thetext>Created attachment 235251
Ignore. Accidental merge of two patches.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024036</commentid>
    <comment_count>11</comment_count>
      <attachid>235094</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-07-22 12:41:52 -0700</bug_when>
    <thetext>Comment on attachment 235094
Patch

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

&gt;&gt; Source/WebCore/platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:77
&gt;&gt; +SOFT_LINK_DLL_IMPORT(CoreMedia, CMSampleBufferGetDataBuffer, CMBlockBufferRef, __cdecl, (CMSampleBufferRef sbuf), (sbuf))
&gt; 
&gt; This change isn’t mentioned explicitly in the change log, but it’s not yet compiling on EWS:
&gt; 
&gt;      1&gt;..\platform\graphics\avfoundation\InbandTextTrackPrivateAVF.cpp(77): error C2143: syntax error : missing &apos;;&apos; before &apos;__cdecl&apos;
&gt;      1&gt;..\platform\graphics\avfoundation\InbandTextTrackPrivateAVF.cpp(77): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
&gt;      1&gt;..\platform\graphics\avfoundation\InbandTextTrackPrivateAVF.cpp(77): error C2065: &apos;CMSampleBufferRef&apos; : undeclared identifier
&gt;      1&gt;..\platform\graphics\avfoundation\InbandTextTrackPrivateAVF.cpp(77): error C2146: syntax error : missing &apos;)&apos; before identifier &apos;sbuf&apos;
&gt;      1&gt;..\platform\graphics\avfoundation\InbandTextTrackPrivateAVF.cpp(77): warning C4229: anachronism used : modifiers on data are ignored
&gt;      1&gt;..\platform\graphics\avfoundation\InbandTextTrackPrivateAVF.cpp(77): error C2059: syntax error : &apos;)&apos;
&gt;      1&gt;..\platform\graphics\avfoundation\InbandTextTrackPrivateAVF.cpp(77): error C2059: syntax error : &apos;__cdecl&apos;
&gt;      1&gt;..\platform\graphics\avfoundation\InbandTextTrackPrivateAVF.cpp(77): error C2086: &apos;int CMBlockBufferRef&apos; : redefinition
&gt; 
&gt; Maybe they don’t have the correct version of CoreMedia.h?

Yes, it looks like the EWS bots are set up with an old set of headers. I&apos;m trying to get confirmation on how these machines are configured.

&gt;&gt; Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:1533
&gt;&gt; +    m_legibleOutput = adoptCF(AVCFPlayerItemLegibleOutputCreateWithMediaSubtypesForNativeRepresentation(kCFAllocatorDefault, subtypes.get()));
&gt; 
&gt; Not sure you really even need the local variable here. Putting createLegibleOutputSubtypes right into the expression might make the line excessively long, but otherwise it seems like an improvement.

Sounds good to me!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024040</commentid>
    <comment_count>12</comment_count>
      <attachid>235307</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-07-22 12:55:19 -0700</bug_when>
    <thetext>Created attachment 235307
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024042</commentid>
    <comment_count>13</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-07-22 13:00:50 -0700</bug_when>
    <thetext>Committed r171357: &lt;http://trac.webkit.org/changeset/171357&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024054</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-07-22 13:24:59 -0700</bug_when>
    <thetext>Re-opened since this is blocked by bug 135173</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024059</commentid>
    <comment_count>15</comment_count>
      <attachid>235312</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-07-22 13:50:26 -0700</bug_when>
    <thetext>Created attachment 235312
Add struct declarations to support building on EWS bots</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024233</commentid>
    <comment_count>16</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-07-23 08:50:26 -0700</bug_when>
    <thetext>Change landed as follows:

1. Bulk of change (building locally): &lt;http://trac.webkit.org/changeset/171385&gt;
2. Attempt forward declaration: &lt;http://trac.webkit.org/changeset/171388&gt;
3. Provide struct definition: &lt;http://trac.webkit.org/changeset/171392&gt;
4. Provide missing constant declaration: &lt;http://trac.webkit.org/changeset/171404&gt;

Changes are in place and working on all bots.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>234960</attachid>
            <date>2014-07-15 15:41:12 -0700</date>
            <delta_ts>2014-07-15 15:42:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-134946-20140715154050.patch</filename>
            <type>text/plain</type>
            <size>6909</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3MTExOSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDE0LTA3LTE1ICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIFtXaW5dIEZpeCBDcmFzaCB3
aGVuIGhhbmRsaW5nIExlZ2libGUgT3V0cHV0IGNhbGxiYWNrcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM0OTQ2CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
bmJhbmRUZXh0VHJhY2tQcml2YXRlQVZGOjpwcm9jZXNzTmF0aXZlU2FtcGxlcyk6IFJlbW92ZQor
ICAgICAgICBXaW5kb3dzLXNwZWNpZmljICdBU1NFUlRfTk9UX1JFQUNIRUQnIGNvZGUgcGF0aC4K
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uQ0YuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlTGVnaWJs
ZU91dHB1dFN1YnR5cGVzKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpBVkZXcmFwcGVyOjpj
cmVhdGVQbGF5ZXJJdGVtKTogVXBkYXRlZCB0byByZXF1ZXN0IG5hdGl2ZQorICAgICAgICBzYW1w
bGVzIGZyb20gQVZGb3VuZGF0aW9uQ0YuCisKIDIwMTQtMDctMTUgIFNpbW9uIEZyYXNlciAgPHNp
bW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgW2lPU10gRml4IGlzc3VlcyBkcmF3aW5n
IHN1YnNhbXBsZWQgaW1hZ2UgZWxlbWVudHMgYW5kIENTUyBpbWFnZXMKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9JbmJhbmRUZXh0VHJhY2tQcml2
YXRlQVZGLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9hdmZvdW5kYXRpb24vSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRi5jcHAJKHJldmlzaW9uIDE3
MTExMikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9J
bmJhbmRUZXh0VHJhY2tQcml2YXRlQVZGLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzEsNiArNzEs
MjEgQEAgU09GVF9MSU5LKENvcmVNZWRpYSwgQ01CbG9ja0J1ZmZlckdldERhdAogU09GVF9MSU5L
KENvcmVNZWRpYSwgQ01TYW1wbGVCdWZmZXJHZXRTYW1wbGVUaW1pbmdJbmZvLCBPU1N0YXR1cywg
KENNU2FtcGxlQnVmZmVyUmVmIHNidWYsIENNSXRlbUluZGV4IHNhbXBsZUluZGV4LCBDTVNhbXBs
ZVRpbWluZ0luZm8qIHRpbWluZ0luZm9PdXQpLCAoc2J1Ziwgc2FtcGxlSW5kZXgsIHRpbWluZ0lu
Zm9PdXQpKQogU09GVF9MSU5LKENvcmVNZWRpYSwgQ01Gb3JtYXREZXNjcmlwdGlvbkdldEV4dGVu
c2lvbnMsIENGRGljdGlvbmFyeVJlZiwgKENNRm9ybWF0RGVzY3JpcHRpb25SZWYgZGVzYyksIChk
ZXNjKSkKIFNPRlRfTElOSyhDb3JlTWVkaWEsIENNU2FtcGxlQnVmZmVyR2V0Rm9ybWF0RGVzY3Jp
cHRpb24sIENNRm9ybWF0RGVzY3JpcHRpb25SZWYsIChDTVNhbXBsZUJ1ZmZlclJlZiBzYnVmKSwg
KHNidWYpKQorI2Vsc2UKK1NPRlRfTElOS19ETExfSU1QT1JUKENvcmVNZWRpYSwgQ01UaW1lR2V0
U2Vjb25kcywgRmxvYXQ2NCwgX19jZGVjbCwgKENNVGltZSB0aW1lKSwgKHRpbWUpKQorI2RlZmlu
ZSBDTVRpbWVHZXRTZWNvbmRzIHNvZnRMaW5rX0NNVGltZUdldFNlY29uZHMKK1NPRlRfTElOS19E
TExfSU1QT1JUKENvcmVNZWRpYSwgQ01TYW1wbGVCdWZmZXJHZXREYXRhQnVmZmVyLCBDTUJsb2Nr
QnVmZmVyUmVmLCBfX2NkZWNsLCAoQ01TYW1wbGVCdWZmZXJSZWYgc2J1ZiksIChzYnVmKSkKKyNk
ZWZpbmUgQ01TYW1wbGVCdWZmZXJHZXREYXRhQnVmZmVyIHNvZnRMaW5rX0NNU2FtcGxlQnVmZmVy
R2V0RGF0YUJ1ZmZlcgorU09GVF9MSU5LX0RMTF9JTVBPUlQoQ29yZU1lZGlhLCBDTUJsb2NrQnVm
ZmVyQ29weURhdGFCeXRlcywgT1NTdGF0dXMsIF9fY2RlY2wsIChDTUJsb2NrQnVmZmVyUmVmIHRo
ZVNvdXJjZUJ1ZmZlciwgc2l6ZV90IG9mZnNldFRvRGF0YSwgc2l6ZV90IGRhdGFMZW5ndGgsIHZv
aWQqIGRlc3RpbmF0aW9uKSwgKHRoZVNvdXJjZUJ1ZmZlciwgb2Zmc2V0VG9EYXRhLCBkYXRhTGVu
Z3RoLCBkZXN0aW5hdGlvbikpCisjZGVmaW5lIENNQmxvY2tCdWZmZXJDb3B5RGF0YUJ5dGVzIHNv
ZnRMaW5rX0NNQmxvY2tCdWZmZXJDb3B5RGF0YUJ5dGVzCitTT0ZUX0xJTktfRExMX0lNUE9SVChD
b3JlTWVkaWEsIENNQmxvY2tCdWZmZXJHZXREYXRhTGVuZ3RoLCBzaXplX3QsIF9fY2RlY2wsIChD
TUJsb2NrQnVmZmVyUmVmIHRoZUJ1ZmZlciksICh0aGVCdWZmZXIpKQorI2RlZmluZSBDTUJsb2Nr
QnVmZmVyR2V0RGF0YUxlbmd0aCBzb2Z0TGlua19DTUJsb2NrQnVmZmVyR2V0RGF0YUxlbmd0aAor
U09GVF9MSU5LX0RMTF9JTVBPUlQoQ29yZU1lZGlhLCBDTVNhbXBsZUJ1ZmZlckdldFNhbXBsZVRp
bWluZ0luZm8sIE9TU3RhdHVzLCBfX2NkZWNsLCAoQ01TYW1wbGVCdWZmZXJSZWYgc2J1ZiwgQ01J
dGVtSW5kZXggc2FtcGxlSW5kZXgsIENNU2FtcGxlVGltaW5nSW5mbyogdGltaW5nSW5mb091dCks
IChzYnVmLCBzYW1wbGVJbmRleCwgdGltaW5nSW5mb091dCkpCisjZGVmaW5lIENNU2FtcGxlQnVm
ZmVyR2V0U2FtcGxlVGltaW5nSW5mbyBzb2Z0TGlua19DTVNhbXBsZUJ1ZmZlckdldFNhbXBsZVRp
bWluZ0luZm8KK1NPRlRfTElOS19ETExfSU1QT1JUKENvcmVNZWRpYSwgQ01Gb3JtYXREZXNjcmlw
dGlvbkdldEV4dGVuc2lvbnMsIENGRGljdGlvbmFyeVJlZiwgX19jZGVjbCwgKENNRm9ybWF0RGVz
Y3JpcHRpb25SZWYgZGVzYyksIChkZXNjKSkKKyNkZWZpbmUgQ01Gb3JtYXREZXNjcmlwdGlvbkdl
dEV4dGVuc2lvbnMgc29mdExpbmtfQ01Gb3JtYXREZXNjcmlwdGlvbkdldEV4dGVuc2lvbnMKK1NP
RlRfTElOS19ETExfSU1QT1JUKENvcmVNZWRpYSwgQ01TYW1wbGVCdWZmZXJHZXRGb3JtYXREZXNj
cmlwdGlvbiwgQ01Gb3JtYXREZXNjcmlwdGlvblJlZiwgX19jZGVjbCwgKENNU2FtcGxlQnVmZmVy
UmVmIHNidWYpLCAoc2J1ZikpCisjZGVmaW5lIENNU2FtcGxlQnVmZmVyR2V0Rm9ybWF0RGVzY3Jp
cHRpb24gc29mdExpbmtfQ01TYW1wbGVCdWZmZXJHZXRGb3JtYXREZXNjcmlwdGlvbgogI2VuZGlm
CiAKIFNPRlRfTElOS19BVkZfUE9JTlRFUihDb3JlTWVkaWEsIGtDTVRleHRNYXJrdXBBdHRyaWJ1
dGVfQWxpZ25tZW50LCBDRlN0cmluZ1JlZikKQEAgLTU0NiwxMSArNTYxLDYgQEAgdm9pZCBJbmJh
bmRUZXh0VHJhY2tQcml2YXRlQVZGOjpzZXRNb2RlKAogCiB2b2lkIEluYmFuZFRleHRUcmFja1By
aXZhdGVBVkY6OnByb2Nlc3NOYXRpdmVTYW1wbGVzKENGQXJyYXlSZWYgbmF0aXZlU2FtcGxlcywg
ZG91YmxlIHByZXNlbnRhdGlvblRpbWUpCiB7Ci0jaWYgUExBVEZPUk0oV0lOKQotICAgIFVOVVNF
RF9QQVJBTShuYXRpdmVTYW1wbGVzKTsKLSAgICBVTlVTRURfUEFSQU0ocHJlc2VudGF0aW9uVGlt
ZSk7Ci0gICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0jZWxzZQogICAgIGlmICghbmF0aXZlU2Ft
cGxlcykKICAgICAgICAgcmV0dXJuOwogCkBAIC02NDQsNyArNjU0LDYgQEAgdm9pZCBJbmJhbmRU
ZXh0VHJhY2tQcml2YXRlQVZGOjpwcm9jZXNzTgogCiAgICAgICAgIG1fc2FtcGxlSW5wdXRCdWZm
ZXIucmVtb3ZlKDAsIGJveExlbmd0aCk7CiAgICAgfQotI2VuZGlmCiB9CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91
bmRhdGlvbi9jZi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25DRi5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01l
ZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmNwcAkocmV2aXNpb24gMTcxMTEyKQorKysg
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxh
eWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTQ4Niw2ICsx
NDg2LDE4IEBAIHZvaWQgQVZGV3JhcHBlcjo6Y3JlYXRlUGxheWVyKElEaXJlY3QzREQKICAgICBt
X3RpbWVPYnNlcnZlciA9IGFkb3B0Q0YoQVZDRlBsYXllckNyZWF0ZVBlcmlvZGljVGltZU9ic2Vy
dmVyRm9ySW50ZXJ2YWwocGxheWVyUmVmLCBDTVRpbWVNYWtlKHZlcnlMb25nSW50ZXJ2YWwsIDEw
KSwgbV9ub3RpZmljYXRpb25RdWV1ZSwgJnBlcmlvZGljVGltZU9ic2VydmVyQ2FsbGJhY2ssIGNh
bGxiYWNrQ29udGV4dCgpKSk7CiB9CiAKKyNpZiBIQVZFKEFWRk9VTkRBVElPTl9NRURJQV9TRUxF
Q1RJT05fR1JPVVApICYmIEhBVkUoQVZGT1VOREFUSU9OX0xFR0lCTEVfT1VUUFVUX1NVUFBPUlQp
CitzdGF0aWMgQ0ZBcnJheVJlZiBjcmVhdGVMZWdpYmxlT3V0cHV0U3VidHlwZXMoKQoreworICAg
IHVuc2lnbmVkIHdlYnZ0dCA9IGtDTVN1YnRpdGxlRm9ybWF0VHlwZV9XZWJWVFQ7CisKKyAgICBD
Rk51bWJlclJlZiBmb3JtYXRUeXBlc1sxXTsKKyAgICBmb3JtYXRUeXBlc1swXSA9IENGTnVtYmVy
Q3JlYXRlKGtDRkFsbG9jYXRvckRlZmF1bHQsIGtDRk51bWJlckludFR5cGUsICZ3ZWJ2dHQpOwor
CisgICAgcmV0dXJuIENGQXJyYXlDcmVhdGUoMCwgKGNvbnN0IHZvaWQqKilmb3JtYXRUeXBlcywg
c2l6ZW9mKGZvcm1hdFR5cGVzKSAvIHNpemVvZihmb3JtYXRUeXBlc1swXSksICZrQ0ZUeXBlQXJy
YXlDYWxsQmFja3MpOworfQorI2VuZGlmCisKIHZvaWQgQVZGV3JhcHBlcjo6Y3JlYXRlUGxheWVy
SXRlbSgpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKQEAgLTE1MTIsMTQgKzE1MjQs
MTUgQEAgdm9pZCBBVkZXcmFwcGVyOjpjcmVhdGVQbGF5ZXJJdGVtKCkKICAgICBDRk5vdGlmaWNh
dGlvbkNlbnRlckFkZE9ic2VydmVyKGNlbnRlciwgY2FsbGJhY2tDb250ZXh0KCksIG5vdGlmaWNh
dGlvbkNhbGxiYWNrLCBBVkNGUGxheWVySXRlbUlzUGxheWJhY2tCdWZmZXJFbXB0eUNoYW5nZWRO
b3RpZmljYXRpb24sIGl0ZW1SZWYsIENGTm90aWZpY2F0aW9uU3VzcGVuc2lvbkJlaGF2aW9yRGVs
aXZlckltbWVkaWF0ZWx5KTsKICAgICBDRk5vdGlmaWNhdGlvbkNlbnRlckFkZE9ic2VydmVyKGNl
bnRlciwgY2FsbGJhY2tDb250ZXh0KCksIG5vdGlmaWNhdGlvbkNhbGxiYWNrLCBBVkNGUGxheWVy
SXRlbUlzUGxheWJhY2tCdWZmZXJGdWxsQ2hhbmdlZE5vdGlmaWNhdGlvbiwgaXRlbVJlZiwgQ0ZO
b3RpZmljYXRpb25TdXNwZW5zaW9uQmVoYXZpb3JEZWxpdmVySW1tZWRpYXRlbHkpOwogICAgIENG
Tm90aWZpY2F0aW9uQ2VudGVyQWRkT2JzZXJ2ZXIoY2VudGVyLCBjYWxsYmFja0NvbnRleHQoKSwg
bm90aWZpY2F0aW9uQ2FsbGJhY2ssIEFWQ0ZQbGF5ZXJJdGVtRHVyYXRpb25DaGFuZ2VkTm90aWZp
Y2F0aW9uLCBpdGVtUmVmLCBDRk5vdGlmaWNhdGlvblN1c3BlbnNpb25CZWhhdmlvckRlbGl2ZXJJ
bW1lZGlhdGVseSk7Ci0gICAgLy8gRklYTUU6IEFyZSB0aGVyZSBvdGhlciBsZWdpYmxlIG91dHB1
dCB0aGluZ3Mgd2UgbmVlZCB0byByZWdpc3RlciBmb3I/IGFzc2V0IGFuZCBoYXNFbmFibGVkQXVk
aW8gYXJlIG5vdCBleHBvc2VkIGJ5IEFWQ0YKKyAgICAvLyBGSVhNRTogQXJlIHRoZXJlIG90aGVy
IGxjcmVhdGVlZ2libGUgb3V0cHV0IHRoaW5ncyB3ZSBuZWVkIHRvIHJlZ2lzdGVyIGZvcj8gYXNz
ZXQgYW5kIGhhc0VuYWJsZWRBdWRpbyBhcmUgbm90IGV4cG9zZWQgYnkgQVZDRgogCiAgICAgQ0ZO
b3RpZmljYXRpb25DZW50ZXJBZGRPYnNlcnZlcihjZW50ZXIsIGNhbGxiYWNrQ29udGV4dCgpLCBu
b3RpZmljYXRpb25DYWxsYmFjaywgQ0FDRkNvbnRleHROZWVkc0ZsdXNoTm90aWZpY2F0aW9uKCks
IDAsIENGTm90aWZpY2F0aW9uU3VzcGVuc2lvbkJlaGF2aW9yRGVsaXZlckltbWVkaWF0ZWx5KTsK
IAogI2lmIEhBVkUoQVZGT1VOREFUSU9OX01FRElBX1NFTEVDVElPTl9HUk9VUCkgJiYgSEFWRShB
VkZPVU5EQVRJT05fTEVHSUJMRV9PVVRQVVRfU1VQUE9SVCkKICAgICBjb25zdCBDRlRpbWVJbnRl
cnZhbCBsZWdpYmxlT3V0cHV0QWR2YW5jZUludGVydmFsID0gMjsKIAotICAgIG1fbGVnaWJsZU91
dHB1dCA9IGFkb3B0Q0YoQVZDRlBsYXllckl0ZW1MZWdpYmxlT3V0cHV0Q3JlYXRlV2l0aE1lZGlh
U3VidHlwZXNGb3JOYXRpdmVSZXByZXNlbnRhdGlvbihrQ0ZBbGxvY2F0b3JEZWZhdWx0LCAwKSk7
CisgICAgUmV0YWluUHRyPENGQXJyYXlSZWY+IHN1YnR5cGVzID0gY3JlYXRlTGVnaWJsZU91dHB1
dFN1YnR5cGVzKCk7CisgICAgbV9sZWdpYmxlT3V0cHV0ID0gYWRvcHRDRihBVkNGUGxheWVySXRl
bUxlZ2libGVPdXRwdXRDcmVhdGVXaXRoTWVkaWFTdWJ0eXBlc0Zvck5hdGl2ZVJlcHJlc2VudGF0
aW9uKGtDRkFsbG9jYXRvckRlZmF1bHQsIHN1YnR5cGVzLmdldCgpKSk7CiAgICAgQVZDRlBsYXll
ckl0ZW1PdXRwdXRTZXRTdXBwcmVzc1BsYXllclJlbmRlcmluZyhtX2xlZ2libGVPdXRwdXQuZ2V0
KCksIFRSVUUpOwogCiAgICAgQVZDRlBsYXllckl0ZW1MZWdpYmxlT3V0cHV0Q2FsbGJhY2tzIGNh
bGxiYWNrSW5mbzsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>234961</attachid>
            <date>2014-07-15 15:42:10 -0700</date>
            <delta_ts>2014-07-17 15:20:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-134946-20140715154148.patch</filename>
            <type>text/plain</type>
            <size>5864</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3MTExOSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDE0LTA3LTE1ICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIFtXaW5dIEZpeCBDcmFzaCB3
aGVuIGhhbmRsaW5nIExlZ2libGUgT3V0cHV0IGNhbGxiYWNrcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM0OTQ2CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
bmJhbmRUZXh0VHJhY2tQcml2YXRlQVZGOjpwcm9jZXNzTmF0aXZlU2FtcGxlcyk6IFJlbW92ZQor
ICAgICAgICBXaW5kb3dzLXNwZWNpZmljICdBU1NFUlRfTk9UX1JFQUNIRUQnIGNvZGUgcGF0aC4K
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uQ0YuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlTGVnaWJs
ZU91dHB1dFN1YnR5cGVzKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpBVkZXcmFwcGVyOjpj
cmVhdGVQbGF5ZXJJdGVtKTogVXBkYXRlZCB0byByZXF1ZXN0IG5hdGl2ZQorICAgICAgICBzYW1w
bGVzIGZyb20gQVZGb3VuZGF0aW9uQ0YuCisKIDIwMTQtMDctMTUgIFNpbW9uIEZyYXNlciAgPHNp
bW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgW2lPU10gRml4IGlzc3VlcyBkcmF3aW5n
IHN1YnNhbXBsZWQgaW1hZ2UgZWxlbWVudHMgYW5kIENTUyBpbWFnZXMKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9JbmJhbmRUZXh0VHJhY2tQcml2
YXRlQVZGLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9hdmZvdW5kYXRpb24vSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRi5jcHAJKHJldmlzaW9uIDE3
MTExMikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9J
bmJhbmRUZXh0VHJhY2tQcml2YXRlQVZGLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzEsNiArNzEs
MjEgQEAgU09GVF9MSU5LKENvcmVNZWRpYSwgQ01CbG9ja0J1ZmZlckdldERhdAogU09GVF9MSU5L
KENvcmVNZWRpYSwgQ01TYW1wbGVCdWZmZXJHZXRTYW1wbGVUaW1pbmdJbmZvLCBPU1N0YXR1cywg
KENNU2FtcGxlQnVmZmVyUmVmIHNidWYsIENNSXRlbUluZGV4IHNhbXBsZUluZGV4LCBDTVNhbXBs
ZVRpbWluZ0luZm8qIHRpbWluZ0luZm9PdXQpLCAoc2J1Ziwgc2FtcGxlSW5kZXgsIHRpbWluZ0lu
Zm9PdXQpKQogU09GVF9MSU5LKENvcmVNZWRpYSwgQ01Gb3JtYXREZXNjcmlwdGlvbkdldEV4dGVu
c2lvbnMsIENGRGljdGlvbmFyeVJlZiwgKENNRm9ybWF0RGVzY3JpcHRpb25SZWYgZGVzYyksIChk
ZXNjKSkKIFNPRlRfTElOSyhDb3JlTWVkaWEsIENNU2FtcGxlQnVmZmVyR2V0Rm9ybWF0RGVzY3Jp
cHRpb24sIENNRm9ybWF0RGVzY3JpcHRpb25SZWYsIChDTVNhbXBsZUJ1ZmZlclJlZiBzYnVmKSwg
KHNidWYpKQorI2Vsc2UKK1NPRlRfTElOS19ETExfSU1QT1JUKENvcmVNZWRpYSwgQ01UaW1lR2V0
U2Vjb25kcywgRmxvYXQ2NCwgX19jZGVjbCwgKENNVGltZSB0aW1lKSwgKHRpbWUpKQorI2RlZmlu
ZSBDTVRpbWVHZXRTZWNvbmRzIHNvZnRMaW5rX0NNVGltZUdldFNlY29uZHMKK1NPRlRfTElOS19E
TExfSU1QT1JUKENvcmVNZWRpYSwgQ01TYW1wbGVCdWZmZXJHZXREYXRhQnVmZmVyLCBDTUJsb2Nr
QnVmZmVyUmVmLCBfX2NkZWNsLCAoQ01TYW1wbGVCdWZmZXJSZWYgc2J1ZiksIChzYnVmKSkKKyNk
ZWZpbmUgQ01TYW1wbGVCdWZmZXJHZXREYXRhQnVmZmVyIHNvZnRMaW5rX0NNU2FtcGxlQnVmZmVy
R2V0RGF0YUJ1ZmZlcgorU09GVF9MSU5LX0RMTF9JTVBPUlQoQ29yZU1lZGlhLCBDTUJsb2NrQnVm
ZmVyQ29weURhdGFCeXRlcywgT1NTdGF0dXMsIF9fY2RlY2wsIChDTUJsb2NrQnVmZmVyUmVmIHRo
ZVNvdXJjZUJ1ZmZlciwgc2l6ZV90IG9mZnNldFRvRGF0YSwgc2l6ZV90IGRhdGFMZW5ndGgsIHZv
aWQqIGRlc3RpbmF0aW9uKSwgKHRoZVNvdXJjZUJ1ZmZlciwgb2Zmc2V0VG9EYXRhLCBkYXRhTGVu
Z3RoLCBkZXN0aW5hdGlvbikpCisjZGVmaW5lIENNQmxvY2tCdWZmZXJDb3B5RGF0YUJ5dGVzIHNv
ZnRMaW5rX0NNQmxvY2tCdWZmZXJDb3B5RGF0YUJ5dGVzCitTT0ZUX0xJTktfRExMX0lNUE9SVChD
b3JlTWVkaWEsIENNQmxvY2tCdWZmZXJHZXREYXRhTGVuZ3RoLCBzaXplX3QsIF9fY2RlY2wsIChD
TUJsb2NrQnVmZmVyUmVmIHRoZUJ1ZmZlciksICh0aGVCdWZmZXIpKQorI2RlZmluZSBDTUJsb2Nr
QnVmZmVyR2V0RGF0YUxlbmd0aCBzb2Z0TGlua19DTUJsb2NrQnVmZmVyR2V0RGF0YUxlbmd0aAor
U09GVF9MSU5LX0RMTF9JTVBPUlQoQ29yZU1lZGlhLCBDTVNhbXBsZUJ1ZmZlckdldFNhbXBsZVRp
bWluZ0luZm8sIE9TU3RhdHVzLCBfX2NkZWNsLCAoQ01TYW1wbGVCdWZmZXJSZWYgc2J1ZiwgQ01J
dGVtSW5kZXggc2FtcGxlSW5kZXgsIENNU2FtcGxlVGltaW5nSW5mbyogdGltaW5nSW5mb091dCks
IChzYnVmLCBzYW1wbGVJbmRleCwgdGltaW5nSW5mb091dCkpCisjZGVmaW5lIENNU2FtcGxlQnVm
ZmVyR2V0U2FtcGxlVGltaW5nSW5mbyBzb2Z0TGlua19DTVNhbXBsZUJ1ZmZlckdldFNhbXBsZVRp
bWluZ0luZm8KK1NPRlRfTElOS19ETExfSU1QT1JUKENvcmVNZWRpYSwgQ01Gb3JtYXREZXNjcmlw
dGlvbkdldEV4dGVuc2lvbnMsIENGRGljdGlvbmFyeVJlZiwgX19jZGVjbCwgKENNRm9ybWF0RGVz
Y3JpcHRpb25SZWYgZGVzYyksIChkZXNjKSkKKyNkZWZpbmUgQ01Gb3JtYXREZXNjcmlwdGlvbkdl
dEV4dGVuc2lvbnMgc29mdExpbmtfQ01Gb3JtYXREZXNjcmlwdGlvbkdldEV4dGVuc2lvbnMKK1NP
RlRfTElOS19ETExfSU1QT1JUKENvcmVNZWRpYSwgQ01TYW1wbGVCdWZmZXJHZXRGb3JtYXREZXNj
cmlwdGlvbiwgQ01Gb3JtYXREZXNjcmlwdGlvblJlZiwgX19jZGVjbCwgKENNU2FtcGxlQnVmZmVy
UmVmIHNidWYpLCAoc2J1ZikpCisjZGVmaW5lIENNU2FtcGxlQnVmZmVyR2V0Rm9ybWF0RGVzY3Jp
cHRpb24gc29mdExpbmtfQ01TYW1wbGVCdWZmZXJHZXRGb3JtYXREZXNjcmlwdGlvbgogI2VuZGlm
CiAKIFNPRlRfTElOS19BVkZfUE9JTlRFUihDb3JlTWVkaWEsIGtDTVRleHRNYXJrdXBBdHRyaWJ1
dGVfQWxpZ25tZW50LCBDRlN0cmluZ1JlZikKQEAgLTU0NiwxMSArNTYxLDYgQEAgdm9pZCBJbmJh
bmRUZXh0VHJhY2tQcml2YXRlQVZGOjpzZXRNb2RlKAogCiB2b2lkIEluYmFuZFRleHRUcmFja1By
aXZhdGVBVkY6OnByb2Nlc3NOYXRpdmVTYW1wbGVzKENGQXJyYXlSZWYgbmF0aXZlU2FtcGxlcywg
ZG91YmxlIHByZXNlbnRhdGlvblRpbWUpCiB7Ci0jaWYgUExBVEZPUk0oV0lOKQotICAgIFVOVVNF
RF9QQVJBTShuYXRpdmVTYW1wbGVzKTsKLSAgICBVTlVTRURfUEFSQU0ocHJlc2VudGF0aW9uVGlt
ZSk7Ci0gICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0jZWxzZQogICAgIGlmICghbmF0aXZlU2Ft
cGxlcykKICAgICAgICAgcmV0dXJuOwogCkBAIC02NDQsNyArNjU0LDYgQEAgdm9pZCBJbmJhbmRU
ZXh0VHJhY2tQcml2YXRlQVZGOjpwcm9jZXNzTgogCiAgICAgICAgIG1fc2FtcGxlSW5wdXRCdWZm
ZXIucmVtb3ZlKDAsIGJveExlbmd0aCk7CiAgICAgfQotI2VuZGlmCiB9CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91
bmRhdGlvbi9jZi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25DRi5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01l
ZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmNwcAkocmV2aXNpb24gMTcxMTEyKQorKysg
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxh
eWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTQ4Niw2ICsx
NDg2LDE4IEBAIHZvaWQgQVZGV3JhcHBlcjo6Y3JlYXRlUGxheWVyKElEaXJlY3QzREQKICAgICBt
X3RpbWVPYnNlcnZlciA9IGFkb3B0Q0YoQVZDRlBsYXllckNyZWF0ZVBlcmlvZGljVGltZU9ic2Vy
dmVyRm9ySW50ZXJ2YWwocGxheWVyUmVmLCBDTVRpbWVNYWtlKHZlcnlMb25nSW50ZXJ2YWwsIDEw
KSwgbV9ub3RpZmljYXRpb25RdWV1ZSwgJnBlcmlvZGljVGltZU9ic2VydmVyQ2FsbGJhY2ssIGNh
bGxiYWNrQ29udGV4dCgpKSk7CiB9CiAKKyNpZiBIQVZFKEFWRk9VTkRBVElPTl9NRURJQV9TRUxF
Q1RJT05fR1JPVVApICYmIEhBVkUoQVZGT1VOREFUSU9OX0xFR0lCTEVfT1VUUFVUX1NVUFBPUlQp
CitzdGF0aWMgQ0ZBcnJheVJlZiBjcmVhdGVMZWdpYmxlT3V0cHV0U3VidHlwZXMoKQoreworICAg
IHVuc2lnbmVkIHdlYnZ0dCA9IGtDTVN1YnRpdGxlRm9ybWF0VHlwZV9XZWJWVFQ7CisKKyAgICBD
Rk51bWJlclJlZiBmb3JtYXRUeXBlc1sxXTsKKyAgICBmb3JtYXRUeXBlc1swXSA9IENGTnVtYmVy
Q3JlYXRlKGtDRkFsbG9jYXRvckRlZmF1bHQsIGtDRk51bWJlckludFR5cGUsICZ3ZWJ2dHQpOwor
CisgICAgcmV0dXJuIENGQXJyYXlDcmVhdGUoMCwgKGNvbnN0IHZvaWQqKilmb3JtYXRUeXBlcywg
c2l6ZW9mKGZvcm1hdFR5cGVzKSAvIHNpemVvZihmb3JtYXRUeXBlc1swXSksICZrQ0ZUeXBlQXJy
YXlDYWxsQmFja3MpOworfQorI2VuZGlmCisKIHZvaWQgQVZGV3JhcHBlcjo6Y3JlYXRlUGxheWVy
SXRlbSgpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKQEAgLTE1MTksNyArMTUzMSw4
IEBAIHZvaWQgQVZGV3JhcHBlcjo6Y3JlYXRlUGxheWVySXRlbSgpCiAjaWYgSEFWRShBVkZPVU5E
QVRJT05fTUVESUFfU0VMRUNUSU9OX0dST1VQKSAmJiBIQVZFKEFWRk9VTkRBVElPTl9MRUdJQkxF
X09VVFBVVF9TVVBQT1JUKQogICAgIGNvbnN0IENGVGltZUludGVydmFsIGxlZ2libGVPdXRwdXRB
ZHZhbmNlSW50ZXJ2YWwgPSAyOwogCi0gICAgbV9sZWdpYmxlT3V0cHV0ID0gYWRvcHRDRihBVkNG
UGxheWVySXRlbUxlZ2libGVPdXRwdXRDcmVhdGVXaXRoTWVkaWFTdWJ0eXBlc0Zvck5hdGl2ZVJl
cHJlc2VudGF0aW9uKGtDRkFsbG9jYXRvckRlZmF1bHQsIDApKTsKKyAgICBSZXRhaW5QdHI8Q0ZB
cnJheVJlZj4gc3VidHlwZXMgPSBjcmVhdGVMZWdpYmxlT3V0cHV0U3VidHlwZXMoKTsKKyAgICBt
X2xlZ2libGVPdXRwdXQgPSBhZG9wdENGKEFWQ0ZQbGF5ZXJJdGVtTGVnaWJsZU91dHB1dENyZWF0
ZVdpdGhNZWRpYVN1YnR5cGVzRm9yTmF0aXZlUmVwcmVzZW50YXRpb24oa0NGQWxsb2NhdG9yRGVm
YXVsdCwgc3VidHlwZXMuZ2V0KCkpKTsKICAgICBBVkNGUGxheWVySXRlbU91dHB1dFNldFN1cHBy
ZXNzUGxheWVyUmVuZGVyaW5nKG1fbGVnaWJsZU91dHB1dC5nZXQoKSwgVFJVRSk7CiAKICAgICBB
VkNGUGxheWVySXRlbUxlZ2libGVPdXRwdXRDYWxsYmFja3MgY2FsbGJhY2tJbmZvOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>235094</attachid>
            <date>2014-07-17 15:20:57 -0700</date>
            <delta_ts>2014-07-22 12:41:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-134946-20140717152027.patch</filename>
            <type>text/plain</type>
            <size>5881</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3MTIwMikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDE0LTA3LTE1ICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIFtXaW5dIEZpeCBDcmFzaCB3
aGVuIGhhbmRsaW5nIExlZ2libGUgT3V0cHV0IGNhbGxiYWNrcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM0OTQ2CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
bmJhbmRUZXh0VHJhY2tQcml2YXRlQVZGOjpwcm9jZXNzTmF0aXZlU2FtcGxlcyk6IFJlbW92ZQor
ICAgICAgICBXaW5kb3dzLXNwZWNpZmljICdBU1NFUlRfTk9UX1JFQUNIRUQnIGNvZGUgcGF0aC4K
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uQ0YuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlTGVnaWJs
ZU91dHB1dFN1YnR5cGVzKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpBVkZXcmFwcGVyOjpj
cmVhdGVQbGF5ZXJJdGVtKTogVXBkYXRlZCB0byByZXF1ZXN0IG5hdGl2ZQorICAgICAgICBzYW1w
bGVzIGZyb20gQVZGb3VuZGF0aW9uQ0YuCisKIDIwMTQtMDctMTcgIFRpbW90aHkgSGF0Y2hlciAg
PHRpbW90aHlAYXBwbGUuY29tPgogCiAgICAgICAgIE1ha2UgY29uc29sZS5wcm9maWxlIHJlY29y
ZCB0byB0aGUgVGltZWxpbmUuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9hdmZvdW5kYXRpb24vSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRi5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL0luYmFuZFRl
eHRUcmFja1ByaXZhdGVBVkYuY3BwCShyZXZpc2lvbiAxNzEyMDIpCisrKyBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFW
Ri5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTcxLDYgKzcxLDIxIEBAIFNPRlRfTElOSyhDb3JlTWVk
aWEsIENNQmxvY2tCdWZmZXJHZXREYXQKIFNPRlRfTElOSyhDb3JlTWVkaWEsIENNU2FtcGxlQnVm
ZmVyR2V0U2FtcGxlVGltaW5nSW5mbywgT1NTdGF0dXMsIChDTVNhbXBsZUJ1ZmZlclJlZiBzYnVm
LCBDTUl0ZW1JbmRleCBzYW1wbGVJbmRleCwgQ01TYW1wbGVUaW1pbmdJbmZvKiB0aW1pbmdJbmZv
T3V0KSwgKHNidWYsIHNhbXBsZUluZGV4LCB0aW1pbmdJbmZvT3V0KSkKIFNPRlRfTElOSyhDb3Jl
TWVkaWEsIENNRm9ybWF0RGVzY3JpcHRpb25HZXRFeHRlbnNpb25zLCBDRkRpY3Rpb25hcnlSZWYs
IChDTUZvcm1hdERlc2NyaXB0aW9uUmVmIGRlc2MpLCAoZGVzYykpCiBTT0ZUX0xJTksoQ29yZU1l
ZGlhLCBDTVNhbXBsZUJ1ZmZlckdldEZvcm1hdERlc2NyaXB0aW9uLCBDTUZvcm1hdERlc2NyaXB0
aW9uUmVmLCAoQ01TYW1wbGVCdWZmZXJSZWYgc2J1ZiksIChzYnVmKSkKKyNlbHNlCitTT0ZUX0xJ
TktfRExMX0lNUE9SVChDb3JlTWVkaWEsIENNVGltZUdldFNlY29uZHMsIEZsb2F0NjQsIF9fY2Rl
Y2wsIChDTVRpbWUgdGltZSksICh0aW1lKSkKKyNkZWZpbmUgQ01UaW1lR2V0U2Vjb25kcyBzb2Z0
TGlua19DTVRpbWVHZXRTZWNvbmRzCitTT0ZUX0xJTktfRExMX0lNUE9SVChDb3JlTWVkaWEsIENN
U2FtcGxlQnVmZmVyR2V0RGF0YUJ1ZmZlciwgQ01CbG9ja0J1ZmZlclJlZiwgX19jZGVjbCwgKENN
U2FtcGxlQnVmZmVyUmVmIHNidWYpLCAoc2J1ZikpCisjZGVmaW5lIENNU2FtcGxlQnVmZmVyR2V0
RGF0YUJ1ZmZlciBzb2Z0TGlua19DTVNhbXBsZUJ1ZmZlckdldERhdGFCdWZmZXIKK1NPRlRfTElO
S19ETExfSU1QT1JUKENvcmVNZWRpYSwgQ01CbG9ja0J1ZmZlckNvcHlEYXRhQnl0ZXMsIE9TU3Rh
dHVzLCBfX2NkZWNsLCAoQ01CbG9ja0J1ZmZlclJlZiB0aGVTb3VyY2VCdWZmZXIsIHNpemVfdCBv
ZmZzZXRUb0RhdGEsIHNpemVfdCBkYXRhTGVuZ3RoLCB2b2lkKiBkZXN0aW5hdGlvbiksICh0aGVT
b3VyY2VCdWZmZXIsIG9mZnNldFRvRGF0YSwgZGF0YUxlbmd0aCwgZGVzdGluYXRpb24pKQorI2Rl
ZmluZSBDTUJsb2NrQnVmZmVyQ29weURhdGFCeXRlcyBzb2Z0TGlua19DTUJsb2NrQnVmZmVyQ29w
eURhdGFCeXRlcworU09GVF9MSU5LX0RMTF9JTVBPUlQoQ29yZU1lZGlhLCBDTUJsb2NrQnVmZmVy
R2V0RGF0YUxlbmd0aCwgc2l6ZV90LCBfX2NkZWNsLCAoQ01CbG9ja0J1ZmZlclJlZiB0aGVCdWZm
ZXIpLCAodGhlQnVmZmVyKSkKKyNkZWZpbmUgQ01CbG9ja0J1ZmZlckdldERhdGFMZW5ndGggc29m
dExpbmtfQ01CbG9ja0J1ZmZlckdldERhdGFMZW5ndGgKK1NPRlRfTElOS19ETExfSU1QT1JUKENv
cmVNZWRpYSwgQ01TYW1wbGVCdWZmZXJHZXRTYW1wbGVUaW1pbmdJbmZvLCBPU1N0YXR1cywgX19j
ZGVjbCwgKENNU2FtcGxlQnVmZmVyUmVmIHNidWYsIENNSXRlbUluZGV4IHNhbXBsZUluZGV4LCBD
TVNhbXBsZVRpbWluZ0luZm8qIHRpbWluZ0luZm9PdXQpLCAoc2J1Ziwgc2FtcGxlSW5kZXgsIHRp
bWluZ0luZm9PdXQpKQorI2RlZmluZSBDTVNhbXBsZUJ1ZmZlckdldFNhbXBsZVRpbWluZ0luZm8g
c29mdExpbmtfQ01TYW1wbGVCdWZmZXJHZXRTYW1wbGVUaW1pbmdJbmZvCitTT0ZUX0xJTktfRExM
X0lNUE9SVChDb3JlTWVkaWEsIENNRm9ybWF0RGVzY3JpcHRpb25HZXRFeHRlbnNpb25zLCBDRkRp
Y3Rpb25hcnlSZWYsIF9fY2RlY2wsIChDTUZvcm1hdERlc2NyaXB0aW9uUmVmIGRlc2MpLCAoZGVz
YykpCisjZGVmaW5lIENNRm9ybWF0RGVzY3JpcHRpb25HZXRFeHRlbnNpb25zIHNvZnRMaW5rX0NN
Rm9ybWF0RGVzY3JpcHRpb25HZXRFeHRlbnNpb25zCitTT0ZUX0xJTktfRExMX0lNUE9SVChDb3Jl
TWVkaWEsIENNU2FtcGxlQnVmZmVyR2V0Rm9ybWF0RGVzY3JpcHRpb24sIENNRm9ybWF0RGVzY3Jp
cHRpb25SZWYsIF9fY2RlY2wsIChDTVNhbXBsZUJ1ZmZlclJlZiBzYnVmKSwgKHNidWYpKQorI2Rl
ZmluZSBDTVNhbXBsZUJ1ZmZlckdldEZvcm1hdERlc2NyaXB0aW9uIHNvZnRMaW5rX0NNU2FtcGxl
QnVmZmVyR2V0Rm9ybWF0RGVzY3JpcHRpb24KICNlbmRpZgogCiBTT0ZUX0xJTktfQVZGX1BPSU5U
RVIoQ29yZU1lZGlhLCBrQ01UZXh0TWFya3VwQXR0cmlidXRlX0FsaWdubWVudCwgQ0ZTdHJpbmdS
ZWYpCkBAIC01NDYsMTEgKzU2MSw2IEBAIHZvaWQgSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRjo6
c2V0TW9kZSgKIAogdm9pZCBJbmJhbmRUZXh0VHJhY2tQcml2YXRlQVZGOjpwcm9jZXNzTmF0aXZl
U2FtcGxlcyhDRkFycmF5UmVmIG5hdGl2ZVNhbXBsZXMsIGRvdWJsZSBwcmVzZW50YXRpb25UaW1l
KQogewotI2lmIFBMQVRGT1JNKFdJTikKLSAgICBVTlVTRURfUEFSQU0obmF0aXZlU2FtcGxlcyk7
Ci0gICAgVU5VU0VEX1BBUkFNKHByZXNlbnRhdGlvblRpbWUpOwotICAgIEFTU0VSVF9OT1RfUkVB
Q0hFRCgpOwotI2Vsc2UKICAgICBpZiAoIW5hdGl2ZVNhbXBsZXMpCiAgICAgICAgIHJldHVybjsK
IApAQCAtNjQ0LDcgKzY1NCw2IEBAIHZvaWQgSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRjo6cHJv
Y2Vzc04KIAogICAgICAgICBtX3NhbXBsZUlucHV0QnVmZmVyLnJlbW92ZSgwLCBib3hMZW5ndGgp
OwogICAgIH0KLSNlbmRpZgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uQ0YuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9jZi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5k
YXRpb25DRi5jcHAJKHJldmlzaW9uIDE3MTIwMikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9jZi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25D
Ri5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE0ODYsNiArMTQ4NiwxNiBAQCB2b2lkIEFWRldyYXBw
ZXI6OmNyZWF0ZVBsYXllcihJRGlyZWN0M0RECiAgICAgbV90aW1lT2JzZXJ2ZXIgPSBhZG9wdENG
KEFWQ0ZQbGF5ZXJDcmVhdGVQZXJpb2RpY1RpbWVPYnNlcnZlckZvckludGVydmFsKHBsYXllclJl
ZiwgQ01UaW1lTWFrZSh2ZXJ5TG9uZ0ludGVydmFsLCAxMCksIG1fbm90aWZpY2F0aW9uUXVldWUs
ICZwZXJpb2RpY1RpbWVPYnNlcnZlckNhbGxiYWNrLCBjYWxsYmFja0NvbnRleHQoKSkpOwogfQog
CisjaWYgSEFWRShBVkZPVU5EQVRJT05fTUVESUFfU0VMRUNUSU9OX0dST1VQKSAmJiBIQVZFKEFW
Rk9VTkRBVElPTl9MRUdJQkxFX09VVFBVVF9TVVBQT1JUKQorc3RhdGljIFJldGFpblB0cjxDRkFy
cmF5UmVmPiBjcmVhdGVMZWdpYmxlT3V0cHV0U3VidHlwZXMoKQoreworICAgIGludCB3ZWJWVFRJ
bnQgPSBrQ01TdWJ0aXRsZUZvcm1hdFR5cGVfV2ViVlRUOworICAgIFJldGFpblB0cjxDRk51bWJl
clJlZj4gd2ViVlRUTnVtYmVyID0gYWRvcHRDRihDRk51bWJlckNyZWF0ZShrQ0ZBbGxvY2F0b3JE
ZWZhdWx0LCBrQ0ZOdW1iZXJJbnRUeXBlLCAmd2ViVlRUSW50KSk7CisgICAgQ0ZUeXBlUmVmIGZv
cm1hdFR5cGVzW10gPSB7IHdlYlZUVE51bWJlci5nZXQoKSB9OworICAgIHJldHVybiBhZG9wdENG
KENGQXJyYXlDcmVhdGUoMCwgZm9ybWF0VHlwZXMsIFdURl9BUlJBWV9MRU5HVEgoZm9ybWF0VHlw
ZXMpLCAma0NGVHlwZUFycmF5Q2FsbEJhY2tzKSk7Cit9CisjZW5kaWYKKwogdm9pZCBBVkZXcmFw
cGVyOjpjcmVhdGVQbGF5ZXJJdGVtKCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwpA
QCAtMTUxOSw3ICsxNTI5LDggQEAgdm9pZCBBVkZXcmFwcGVyOjpjcmVhdGVQbGF5ZXJJdGVtKCkK
ICNpZiBIQVZFKEFWRk9VTkRBVElPTl9NRURJQV9TRUxFQ1RJT05fR1JPVVApICYmIEhBVkUoQVZG
T1VOREFUSU9OX0xFR0lCTEVfT1VUUFVUX1NVUFBPUlQpCiAgICAgY29uc3QgQ0ZUaW1lSW50ZXJ2
YWwgbGVnaWJsZU91dHB1dEFkdmFuY2VJbnRlcnZhbCA9IDI7CiAKLSAgICBtX2xlZ2libGVPdXRw
dXQgPSBhZG9wdENGKEFWQ0ZQbGF5ZXJJdGVtTGVnaWJsZU91dHB1dENyZWF0ZVdpdGhNZWRpYVN1
YnR5cGVzRm9yTmF0aXZlUmVwcmVzZW50YXRpb24oa0NGQWxsb2NhdG9yRGVmYXVsdCwgMCkpOwor
ICAgIFJldGFpblB0cjxDRkFycmF5UmVmPiBzdWJ0eXBlcyA9IGNyZWF0ZUxlZ2libGVPdXRwdXRT
dWJ0eXBlcygpOworICAgIG1fbGVnaWJsZU91dHB1dCA9IGFkb3B0Q0YoQVZDRlBsYXllckl0ZW1M
ZWdpYmxlT3V0cHV0Q3JlYXRlV2l0aE1lZGlhU3VidHlwZXNGb3JOYXRpdmVSZXByZXNlbnRhdGlv
bihrQ0ZBbGxvY2F0b3JEZWZhdWx0LCBzdWJ0eXBlcy5nZXQoKSkpOwogICAgIEFWQ0ZQbGF5ZXJJ
dGVtT3V0cHV0U2V0U3VwcHJlc3NQbGF5ZXJSZW5kZXJpbmcobV9sZWdpYmxlT3V0cHV0LmdldCgp
LCBUUlVFKTsKIAogICAgIEFWQ0ZQbGF5ZXJJdGVtTGVnaWJsZU91dHB1dENhbGxiYWNrcyBjYWxs
YmFja0luZm87Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>235251</attachid>
            <date>2014-07-21 16:05:22 -0700</date>
            <delta_ts>2014-07-21 16:07:42 -0700</delta_ts>
            <desc>Ignore. Accidental merge of two patches.</desc>
            <filename>bug-134946-20140721160435.patch</filename>
            <type>text/plain</type>
            <size>27249</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3MTIwMikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDE0LTA3LTE1ICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIFtXaW5dIEZpeCBDcmFzaCB3
aGVuIGhhbmRsaW5nIExlZ2libGUgT3V0cHV0IGNhbGxiYWNrcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM0OTQ2CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
bmJhbmRUZXh0VHJhY2tQcml2YXRlQVZGOjpwcm9jZXNzTmF0aXZlU2FtcGxlcyk6IFJlbW92ZQor
ICAgICAgICBXaW5kb3dzLXNwZWNpZmljICdBU1NFUlRfTk9UX1JFQUNIRUQnIGNvZGUgcGF0aC4K
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uQ0YuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlTGVnaWJs
ZU91dHB1dFN1YnR5cGVzKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpBVkZXcmFwcGVyOjpj
cmVhdGVQbGF5ZXJJdGVtKTogVXBkYXRlZCB0byByZXF1ZXN0IG5hdGl2ZQorICAgICAgICBzYW1w
bGVzIGZyb20gQVZGb3VuZGF0aW9uQ0YuCisKIDIwMTQtMDctMTcgIFRpbW90aHkgSGF0Y2hlciAg
PHRpbW90aHlAYXBwbGUuY29tPgogCiAgICAgICAgIE1ha2UgY29uc29sZS5wcm9maWxlIHJlY29y
ZCB0byB0aGUgVGltZWxpbmUuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9hdmZvdW5kYXRpb24vSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRi5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL0luYmFuZFRl
eHRUcmFja1ByaXZhdGVBVkYuY3BwCShyZXZpc2lvbiAxNzEyMDIpCisrKyBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFW
Ri5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTcxLDYgKzcxLDIxIEBAIFNPRlRfTElOSyhDb3JlTWVk
aWEsIENNQmxvY2tCdWZmZXJHZXREYXQKIFNPRlRfTElOSyhDb3JlTWVkaWEsIENNU2FtcGxlQnVm
ZmVyR2V0U2FtcGxlVGltaW5nSW5mbywgT1NTdGF0dXMsIChDTVNhbXBsZUJ1ZmZlclJlZiBzYnVm
LCBDTUl0ZW1JbmRleCBzYW1wbGVJbmRleCwgQ01TYW1wbGVUaW1pbmdJbmZvKiB0aW1pbmdJbmZv
T3V0KSwgKHNidWYsIHNhbXBsZUluZGV4LCB0aW1pbmdJbmZvT3V0KSkKIFNPRlRfTElOSyhDb3Jl
TWVkaWEsIENNRm9ybWF0RGVzY3JpcHRpb25HZXRFeHRlbnNpb25zLCBDRkRpY3Rpb25hcnlSZWYs
IChDTUZvcm1hdERlc2NyaXB0aW9uUmVmIGRlc2MpLCAoZGVzYykpCiBTT0ZUX0xJTksoQ29yZU1l
ZGlhLCBDTVNhbXBsZUJ1ZmZlckdldEZvcm1hdERlc2NyaXB0aW9uLCBDTUZvcm1hdERlc2NyaXB0
aW9uUmVmLCAoQ01TYW1wbGVCdWZmZXJSZWYgc2J1ZiksIChzYnVmKSkKKyNlbHNlCitTT0ZUX0xJ
TktfRExMX0lNUE9SVChDb3JlTWVkaWEsIENNVGltZUdldFNlY29uZHMsIEZsb2F0NjQsIF9fY2Rl
Y2wsIChDTVRpbWUgdGltZSksICh0aW1lKSkKKyNkZWZpbmUgQ01UaW1lR2V0U2Vjb25kcyBzb2Z0
TGlua19DTVRpbWVHZXRTZWNvbmRzCitTT0ZUX0xJTktfRExMX0lNUE9SVChDb3JlTWVkaWEsIENN
U2FtcGxlQnVmZmVyR2V0RGF0YUJ1ZmZlciwgQ01CbG9ja0J1ZmZlclJlZiwgX19jZGVjbCwgKENN
U2FtcGxlQnVmZmVyUmVmIHNidWYpLCAoc2J1ZikpCisjZGVmaW5lIENNU2FtcGxlQnVmZmVyR2V0
RGF0YUJ1ZmZlciBzb2Z0TGlua19DTVNhbXBsZUJ1ZmZlckdldERhdGFCdWZmZXIKK1NPRlRfTElO
S19ETExfSU1QT1JUKENvcmVNZWRpYSwgQ01CbG9ja0J1ZmZlckNvcHlEYXRhQnl0ZXMsIE9TU3Rh
dHVzLCBfX2NkZWNsLCAoQ01CbG9ja0J1ZmZlclJlZiB0aGVTb3VyY2VCdWZmZXIsIHNpemVfdCBv
ZmZzZXRUb0RhdGEsIHNpemVfdCBkYXRhTGVuZ3RoLCB2b2lkKiBkZXN0aW5hdGlvbiksICh0aGVT
b3VyY2VCdWZmZXIsIG9mZnNldFRvRGF0YSwgZGF0YUxlbmd0aCwgZGVzdGluYXRpb24pKQorI2Rl
ZmluZSBDTUJsb2NrQnVmZmVyQ29weURhdGFCeXRlcyBzb2Z0TGlua19DTUJsb2NrQnVmZmVyQ29w
eURhdGFCeXRlcworU09GVF9MSU5LX0RMTF9JTVBPUlQoQ29yZU1lZGlhLCBDTUJsb2NrQnVmZmVy
R2V0RGF0YUxlbmd0aCwgc2l6ZV90LCBfX2NkZWNsLCAoQ01CbG9ja0J1ZmZlclJlZiB0aGVCdWZm
ZXIpLCAodGhlQnVmZmVyKSkKKyNkZWZpbmUgQ01CbG9ja0J1ZmZlckdldERhdGFMZW5ndGggc29m
dExpbmtfQ01CbG9ja0J1ZmZlckdldERhdGFMZW5ndGgKK1NPRlRfTElOS19ETExfSU1QT1JUKENv
cmVNZWRpYSwgQ01TYW1wbGVCdWZmZXJHZXRTYW1wbGVUaW1pbmdJbmZvLCBPU1N0YXR1cywgX19j
ZGVjbCwgKENNU2FtcGxlQnVmZmVyUmVmIHNidWYsIENNSXRlbUluZGV4IHNhbXBsZUluZGV4LCBD
TVNhbXBsZVRpbWluZ0luZm8qIHRpbWluZ0luZm9PdXQpLCAoc2J1Ziwgc2FtcGxlSW5kZXgsIHRp
bWluZ0luZm9PdXQpKQorI2RlZmluZSBDTVNhbXBsZUJ1ZmZlckdldFNhbXBsZVRpbWluZ0luZm8g
c29mdExpbmtfQ01TYW1wbGVCdWZmZXJHZXRTYW1wbGVUaW1pbmdJbmZvCitTT0ZUX0xJTktfRExM
X0lNUE9SVChDb3JlTWVkaWEsIENNRm9ybWF0RGVzY3JpcHRpb25HZXRFeHRlbnNpb25zLCBDRkRp
Y3Rpb25hcnlSZWYsIF9fY2RlY2wsIChDTUZvcm1hdERlc2NyaXB0aW9uUmVmIGRlc2MpLCAoZGVz
YykpCisjZGVmaW5lIENNRm9ybWF0RGVzY3JpcHRpb25HZXRFeHRlbnNpb25zIHNvZnRMaW5rX0NN
Rm9ybWF0RGVzY3JpcHRpb25HZXRFeHRlbnNpb25zCitTT0ZUX0xJTktfRExMX0lNUE9SVChDb3Jl
TWVkaWEsIENNU2FtcGxlQnVmZmVyR2V0Rm9ybWF0RGVzY3JpcHRpb24sIENNRm9ybWF0RGVzY3Jp
cHRpb25SZWYsIF9fY2RlY2wsIChDTVNhbXBsZUJ1ZmZlclJlZiBzYnVmKSwgKHNidWYpKQorI2Rl
ZmluZSBDTVNhbXBsZUJ1ZmZlckdldEZvcm1hdERlc2NyaXB0aW9uIHNvZnRMaW5rX0NNU2FtcGxl
QnVmZmVyR2V0Rm9ybWF0RGVzY3JpcHRpb24KICNlbmRpZgogCiBTT0ZUX0xJTktfQVZGX1BPSU5U
RVIoQ29yZU1lZGlhLCBrQ01UZXh0TWFya3VwQXR0cmlidXRlX0FsaWdubWVudCwgQ0ZTdHJpbmdS
ZWYpCkBAIC01NDYsMTEgKzU2MSw2IEBAIHZvaWQgSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRjo6
c2V0TW9kZSgKIAogdm9pZCBJbmJhbmRUZXh0VHJhY2tQcml2YXRlQVZGOjpwcm9jZXNzTmF0aXZl
U2FtcGxlcyhDRkFycmF5UmVmIG5hdGl2ZVNhbXBsZXMsIGRvdWJsZSBwcmVzZW50YXRpb25UaW1l
KQogewotI2lmIFBMQVRGT1JNKFdJTikKLSAgICBVTlVTRURfUEFSQU0obmF0aXZlU2FtcGxlcyk7
Ci0gICAgVU5VU0VEX1BBUkFNKHByZXNlbnRhdGlvblRpbWUpOwotICAgIEFTU0VSVF9OT1RfUkVB
Q0hFRCgpOwotI2Vsc2UKICAgICBpZiAoIW5hdGl2ZVNhbXBsZXMpCiAgICAgICAgIHJldHVybjsK
IApAQCAtNjQ0LDcgKzY1NCw2IEBAIHZvaWQgSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRjo6cHJv
Y2Vzc04KIAogICAgICAgICBtX3NhbXBsZUlucHV0QnVmZmVyLnJlbW92ZSgwLCBib3hMZW5ndGgp
OwogICAgIH0KLSNlbmRpZgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uQ0YuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9jZi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5k
YXRpb25DRi5jcHAJKHJldmlzaW9uIDE3MTIwMikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9jZi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25D
Ri5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE0ODYsNiArMTQ4NiwxNiBAQCB2b2lkIEFWRldyYXBw
ZXI6OmNyZWF0ZVBsYXllcihJRGlyZWN0M0RECiAgICAgbV90aW1lT2JzZXJ2ZXIgPSBhZG9wdENG
KEFWQ0ZQbGF5ZXJDcmVhdGVQZXJpb2RpY1RpbWVPYnNlcnZlckZvckludGVydmFsKHBsYXllclJl
ZiwgQ01UaW1lTWFrZSh2ZXJ5TG9uZ0ludGVydmFsLCAxMCksIG1fbm90aWZpY2F0aW9uUXVldWUs
ICZwZXJpb2RpY1RpbWVPYnNlcnZlckNhbGxiYWNrLCBjYWxsYmFja0NvbnRleHQoKSkpOwogfQog
CisjaWYgSEFWRShBVkZPVU5EQVRJT05fTUVESUFfU0VMRUNUSU9OX0dST1VQKSAmJiBIQVZFKEFW
Rk9VTkRBVElPTl9MRUdJQkxFX09VVFBVVF9TVVBQT1JUKQorc3RhdGljIFJldGFpblB0cjxDRkFy
cmF5UmVmPiBjcmVhdGVMZWdpYmxlT3V0cHV0U3VidHlwZXMoKQoreworICAgIGludCB3ZWJWVFRJ
bnQgPSBrQ01TdWJ0aXRsZUZvcm1hdFR5cGVfV2ViVlRUOworICAgIFJldGFpblB0cjxDRk51bWJl
clJlZj4gd2ViVlRUTnVtYmVyID0gYWRvcHRDRihDRk51bWJlckNyZWF0ZShrQ0ZBbGxvY2F0b3JE
ZWZhdWx0LCBrQ0ZOdW1iZXJJbnRUeXBlLCAmd2ViVlRUSW50KSk7CisgICAgQ0ZUeXBlUmVmIGZv
cm1hdFR5cGVzW10gPSB7IHdlYlZUVE51bWJlci5nZXQoKSB9OworICAgIHJldHVybiBhZG9wdENG
KENGQXJyYXlDcmVhdGUoMCwgZm9ybWF0VHlwZXMsIFdURl9BUlJBWV9MRU5HVEgoZm9ybWF0VHlw
ZXMpLCAma0NGVHlwZUFycmF5Q2FsbEJhY2tzKSk7Cit9CisjZW5kaWYKKwogdm9pZCBBVkZXcmFw
cGVyOjpjcmVhdGVQbGF5ZXJJdGVtKCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwpA
QCAtMTUxOSw3ICsxNTI5LDggQEAgdm9pZCBBVkZXcmFwcGVyOjpjcmVhdGVQbGF5ZXJJdGVtKCkK
ICNpZiBIQVZFKEFWRk9VTkRBVElPTl9NRURJQV9TRUxFQ1RJT05fR1JPVVApICYmIEhBVkUoQVZG
T1VOREFUSU9OX0xFR0lCTEVfT1VUUFVUX1NVUFBPUlQpCiAgICAgY29uc3QgQ0ZUaW1lSW50ZXJ2
YWwgbGVnaWJsZU91dHB1dEFkdmFuY2VJbnRlcnZhbCA9IDI7CiAKLSAgICBtX2xlZ2libGVPdXRw
dXQgPSBhZG9wdENGKEFWQ0ZQbGF5ZXJJdGVtTGVnaWJsZU91dHB1dENyZWF0ZVdpdGhNZWRpYVN1
YnR5cGVzRm9yTmF0aXZlUmVwcmVzZW50YXRpb24oa0NGQWxsb2NhdG9yRGVmYXVsdCwgMCkpOwor
ICAgIFJldGFpblB0cjxDRkFycmF5UmVmPiBzdWJ0eXBlcyA9IGNyZWF0ZUxlZ2libGVPdXRwdXRT
dWJ0eXBlcygpOworICAgIG1fbGVnaWJsZU91dHB1dCA9IGFkb3B0Q0YoQVZDRlBsYXllckl0ZW1M
ZWdpYmxlT3V0cHV0Q3JlYXRlV2l0aE1lZGlhU3VidHlwZXNGb3JOYXRpdmVSZXByZXNlbnRhdGlv
bihrQ0ZBbGxvY2F0b3JEZWZhdWx0LCBzdWJ0eXBlcy5nZXQoKSkpOwogICAgIEFWQ0ZQbGF5ZXJJ
dGVtT3V0cHV0U2V0U3VwcHJlc3NQbGF5ZXJSZW5kZXJpbmcobV9sZWdpYmxlT3V0cHV0LmdldCgp
LCBUUlVFKTsKIAogICAgIEFWQ0ZQbGF5ZXJJdGVtTGVnaWJsZU91dHB1dENhbGxiYWNrcyBjYWxs
YmFja0luZm87CkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvQ2hh
bmdlTG9nCShyZXZpc2lvbiAxNzEzMTcpCisrKyBUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSwxNiBAQAorMjAxNC0wNy0yMSAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFt
QGFwcGxlLmNvbT4KKworICAgICAgICBbV2luXSBFeHRlbmQgYXV0by12ZXJzaW9uLnBsIHRvIHN1
cHBvcnQgNS10dXBsZSB2ZXJzaW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTM1MTI0CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xNzc1MDMzND4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgdGVz
dCBjYXNlcyBmb3IgYXV0by12ZXJzaW9uLnBsLgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRw
ZXJsL2F1dG8tdmVyc2lvbl91bml0dGVzdDogQWRkZWQuCisgICAgICAgICogU2NyaXB0cy93ZWJr
aXRwZXJsL2F1dG8tdmVyc2lvbl91bml0dGVzdC9hdXRvVmVyc2lvblRlc3RzLnBsOiBBZGRlZC4K
KwogMjAxNC0wNy0yMSAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CiAKICAgICAgICAg
QWxsb3cgTWluaUJyb3dzZXIgV0sxIHRvIGRvIGVsZW1lbnQgZnVsbHNjcmVlbgpJbmRleDogVG9v
bHMvU2NyaXB0cy93ZWJraXRwZXJsL2F1dG8tdmVyc2lvbl91bml0dGVzdC9hdXRvVmVyc2lvblRl
c3RzLnBsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cGVybC9hdXRvLXZlcnNp
b25fdW5pdHRlc3QvYXV0b1ZlcnNpb25UZXN0cy5wbAkocmV2aXNpb24gMCkKKysrIFRvb2xzL1Nj
cmlwdHMvd2Via2l0cGVybC9hdXRvLXZlcnNpb25fdW5pdHRlc3QvYXV0b1ZlcnNpb25UZXN0cy5w
bAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDQwNCBAQAorIyEvdXNyL2Jpbi9wZXJsIC13CisK
KyMgQ29weXJpZ2h0IChDKSAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyMK
KyMgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisjIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworIyBhcmUgbWV0OgorIyAxLiAgUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyMgMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisjICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisjICAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorIworIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBD
T05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyMgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorIyBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQVJFCisjIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorIyBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwor
IyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7CisjIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorIyBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVAorIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworIyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKwordXNlIHN0cmljdDsKK3Vz
ZSB3YXJuaW5nczsKKwordXNlIEZpbGU6OlNwZWM7Cit1c2UgRmlsZTo6VGVtcCBxdy8gdGVtcGRp
ciAvOworCit1c2UgVGVzdDo6TW9yZTsKKworbXkgQHRlc3RDYXNlcyA9IAorKAorICAgIHsKKyAg
ICAgICAgJ1JDX1Byb2plY3RTb3VyY2VWZXJzaW9uJyA9PiAnNTMwMC40LjMuMi4xJywKKyAgICAg
ICAgZXhwZWN0ZWRSZXN1bHRzID0+IHsKKyAgICAgICAgICAgICdfX1ZFUlNJT05fVEVYVF9fJyA9
PiAnMzAwLjQuMycsCisgICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJfXycgPT4gJzMwMC40LjMn
LAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX1NIT1JUX18nID0+ICczMDAuNC4zJywKKyAg
ICAgICAgICAgICdfX1ZFUlNJT05fTUFKT1JfXycgPT4gJzMnLAorICAgICAgICAgICAgJ19fVkVS
U0lPTl9NSU5PUl9fJyA9PiAnMDAnLAorICAgICAgICAgICAgJ19fVkVSU0lPTl9USU5ZX18nID0+
ICc0JywKKyAgICAgICAgICAgICdfX1ZFUlNJT05fQlVJTERfXycgPT4gJzMnLAorICAgICAgICAg
ICAgJ19fQlVJTERfTlVNQkVSX01BSk9SX18nID0+ICczMDAnLAorICAgICAgICAgICAgJ19fQlVJ
TERfTlVNQkVSX01JTk9SX18nID0+ICc0JywKKyAgICAgICAgICAgICdfX0JVSUxEX05VTUJFUl9W
QVJJQU5UX18nID0+ICczJywKKyAgICAgICAgfSwKKyAgICB9LAorCisgICAgeworICAgICAgICAn
UkNfUHJvamVjdFNvdXJjZVZlcnNpb24nID0+ICc1MzAuNC4zLjIuMScsCisgICAgICAgIGV4cGVj
dGVkUmVzdWx0cyA9PiB7CisgICAgICAgICAgICAnX19WRVJTSU9OX1RFWFRfXycgPT4gJzUzMC40
LjMnLAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX18nID0+ICc1MzAuNC4zJywKKyAgICAg
ICAgICAgICdfX0JVSUxEX05VTUJFUl9TSE9SVF9fJyA9PiAnNTMwLjQuMycsCisgICAgICAgICAg
ICAnX19WRVJTSU9OX01BSk9SX18nID0+ICc1JywKKyAgICAgICAgICAgICdfX1ZFUlNJT05fTUlO
T1JfXycgPT4gJzMwJywKKyAgICAgICAgICAgICdfX1ZFUlNJT05fVElOWV9fJyA9PiAnNCcsCisg
ICAgICAgICAgICAnX19WRVJTSU9OX0JVSUxEX18nID0+ICczJywKKyAgICAgICAgICAgICdfX0JV
SUxEX05VTUJFUl9NQUpPUl9fJyA9PiAnNTMwJywKKyAgICAgICAgICAgICdfX0JVSUxEX05VTUJF
Ul9NSU5PUl9fJyA9PiAnNCcsCisgICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJfVkFSSUFOVF9f
JyA9PiAnMycsCisgICAgICAgIH0sCisgICAgfSwKKworICAgIHsKKyAgICAgICAgJ1JDX1Byb2pl
Y3RTb3VyY2VWZXJzaW9uJyA9PiAnNTMuNC4zLjIuMScsCisgICAgICAgIGV4cGVjdGVkUmVzdWx0
cyA9PiB7CisgICAgICAgICAgICAnX19WRVJTSU9OX1RFWFRfXycgPT4gJzUzLjQuMycsCisgICAg
ICAgICAgICAnX19CVUlMRF9OVU1CRVJfXycgPT4gJzUzLjQuMycsCisgICAgICAgICAgICAnX19C
VUlMRF9OVU1CRVJfU0hPUlRfXycgPT4gJzUzLjQuMycsCisgICAgICAgICAgICAnX19WRVJTSU9O
X01BSk9SX18nID0+ICc1JywKKyAgICAgICAgICAgICdfX1ZFUlNJT05fTUlOT1JfXycgPT4gJzMn
LAorICAgICAgICAgICAgJ19fVkVSU0lPTl9USU5ZX18nID0+ICc0JywKKyAgICAgICAgICAgICdf
X1ZFUlNJT05fQlVJTERfXycgPT4gJzMnLAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX01B
Sk9SX18nID0+ICc1MycsCisgICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJfTUlOT1JfXycgPT4g
JzQnLAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX1ZBUklBTlRfXycgPT4gJzMnLAorICAg
ICAgICB9LAorICAgIH0sCisKKyAgICB7CisgICAgICAgICdSQ19Qcm9qZWN0U291cmNlVmVyc2lv
bicgPT4gJzUuNC4zLjIuMScsCisgICAgICAgIGV4cGVjdGVkUmVzdWx0cyA9PiB7CisgICAgICAg
ICAgICAnX19WRVJTSU9OX1RFWFRfXycgPT4gJzUuNC4zJywKKyAgICAgICAgICAgICdfX0JVSUxE
X05VTUJFUl9fJyA9PiAnNS40LjMnLAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX1NIT1JU
X18nID0+ICc1LjQuMycsCisgICAgICAgICAgICAnX19WRVJTSU9OX01BSk9SX18nID0+ICc1JywK
KyAgICAgICAgICAgICdfX1ZFUlNJT05fTUlOT1JfXycgPT4gJycsCisgICAgICAgICAgICAnX19W
RVJTSU9OX1RJTllfXycgPT4gJzQnLAorICAgICAgICAgICAgJ19fVkVSU0lPTl9CVUlMRF9fJyA9
PiAnMycsCisgICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJfTUFKT1JfXycgPT4gJzUnLAorICAg
ICAgICAgICAgJ19fQlVJTERfTlVNQkVSX01JTk9SX18nID0+ICc0JywKKyAgICAgICAgICAgICdf
X0JVSUxEX05VTUJFUl9WQVJJQU5UX18nID0+ICczJywKKyAgICAgICAgfSwKKyAgICB9LAorCisg
ICAgeworICAgICAgICAnUkNfUHJvamVjdFNvdXJjZVZlcnNpb24nID0+ICc1MzAwLjQuMy4yJywK
KyAgICAgICAgZXhwZWN0ZWRSZXN1bHRzID0+IHsKKyAgICAgICAgICAgICdfX1ZFUlNJT05fVEVY
VF9fJyA9PiAnMzAwLjQuMycsCisgICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJfXycgPT4gJzMw
MC40LjMnLAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX1NIT1JUX18nID0+ICczMDAuNC4z
JywKKyAgICAgICAgICAgICdfX1ZFUlNJT05fTUFKT1JfXycgPT4gJzMnLAorICAgICAgICAgICAg
J19fVkVSU0lPTl9NSU5PUl9fJyA9PiAnMDAnLAorICAgICAgICAgICAgJ19fVkVSU0lPTl9USU5Z
X18nID0+ICc0JywKKyAgICAgICAgICAgICdfX1ZFUlNJT05fQlVJTERfXycgPT4gJzMnLAorICAg
ICAgICAgICAgJ19fQlVJTERfTlVNQkVSX01BSk9SX18nID0+ICczMDAnLAorICAgICAgICAgICAg
J19fQlVJTERfTlVNQkVSX01JTk9SX18nID0+ICc0JywKKyAgICAgICAgICAgICdfX0JVSUxEX05V
TUJFUl9WQVJJQU5UX18nID0+ICczJywKKyAgICAgICAgfSwKKyAgICB9LAorCisgICAgeworICAg
ICAgICAnUkNfUHJvamVjdFNvdXJjZVZlcnNpb24nID0+ICc1MzAuNC4zLjInLAorICAgICAgICBl
eHBlY3RlZFJlc3VsdHMgPT4geworICAgICAgICAgICAgJ19fVkVSU0lPTl9URVhUX18nID0+ICc1
MzAuNC4zJywKKyAgICAgICAgICAgICdfX0JVSUxEX05VTUJFUl9fJyA9PiAnNTMwLjQuMycsCisg
ICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJfU0hPUlRfXycgPT4gJzUzMC40LjMnLAorICAgICAg
ICAgICAgJ19fVkVSU0lPTl9NQUpPUl9fJyA9PiAnNScsCisgICAgICAgICAgICAnX19WRVJTSU9O
X01JTk9SX18nID0+ICczMCcsCisgICAgICAgICAgICAnX19WRVJTSU9OX1RJTllfXycgPT4gJzQn
LAorICAgICAgICAgICAgJ19fVkVSU0lPTl9CVUlMRF9fJyA9PiAnMycsCisgICAgICAgICAgICAn
X19CVUlMRF9OVU1CRVJfTUFKT1JfXycgPT4gJzUzMCcsCisgICAgICAgICAgICAnX19CVUlMRF9O
VU1CRVJfTUlOT1JfXycgPT4gJzQnLAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX1ZBUklB
TlRfXycgPT4gJzMnLAorICAgICAgICB9LAorICAgIH0sCisKKyAgICB7CisgICAgICAgICdSQ19Q
cm9qZWN0U291cmNlVmVyc2lvbicgPT4gJzUzLjQuMy4yJywKKyAgICAgICAgZXhwZWN0ZWRSZXN1
bHRzID0+IHsKKyAgICAgICAgICAgICdfX1ZFUlNJT05fVEVYVF9fJyA9PiAnNTMuNC4zJywKKyAg
ICAgICAgICAgICdfX0JVSUxEX05VTUJFUl9fJyA9PiAnNTMuNC4zJywKKyAgICAgICAgICAgICdf
X0JVSUxEX05VTUJFUl9TSE9SVF9fJyA9PiAnNTMuNC4zJywKKyAgICAgICAgICAgICdfX1ZFUlNJ
T05fTUFKT1JfXycgPT4gJzUnLAorICAgICAgICAgICAgJ19fVkVSU0lPTl9NSU5PUl9fJyA9PiAn
MycsCisgICAgICAgICAgICAnX19WRVJTSU9OX1RJTllfXycgPT4gJzQnLAorICAgICAgICAgICAg
J19fVkVSU0lPTl9CVUlMRF9fJyA9PiAnMycsCisgICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJf
TUFKT1JfXycgPT4gJzUzJywKKyAgICAgICAgICAgICdfX0JVSUxEX05VTUJFUl9NSU5PUl9fJyA9
PiAnNCcsCisgICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJfVkFSSUFOVF9fJyA9PiAnMycsCisg
ICAgICAgIH0sCisgICAgfSwKKworICAgIHsKKyAgICAgICAgJ1JDX1Byb2plY3RTb3VyY2VWZXJz
aW9uJyA9PiAnNS40LjMuMicsCisgICAgICAgIGV4cGVjdGVkUmVzdWx0cyA9PiB7CisgICAgICAg
ICAgICAnX19WRVJTSU9OX1RFWFRfXycgPT4gJzUuNC4zJywKKyAgICAgICAgICAgICdfX0JVSUxE
X05VTUJFUl9fJyA9PiAnNS40LjMnLAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX1NIT1JU
X18nID0+ICc1LjQuMycsCisgICAgICAgICAgICAnX19WRVJTSU9OX01BSk9SX18nID0+ICc1JywK
KyAgICAgICAgICAgICdfX1ZFUlNJT05fTUlOT1JfXycgPT4gJycsCisgICAgICAgICAgICAnX19W
RVJTSU9OX1RJTllfXycgPT4gJzQnLAorICAgICAgICAgICAgJ19fVkVSU0lPTl9CVUlMRF9fJyA9
PiAnMycsCisgICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJfTUFKT1JfXycgPT4gJzUnLAorICAg
ICAgICAgICAgJ19fQlVJTERfTlVNQkVSX01JTk9SX18nID0+ICc0JywKKyAgICAgICAgICAgICdf
X0JVSUxEX05VTUJFUl9WQVJJQU5UX18nID0+ICczJywKKyAgICAgICAgfSwKKyAgICB9LAorCisg
ICAgeworICAgICAgICAnUkNfUHJvamVjdFNvdXJjZVZlcnNpb24nID0+ICc1MzAwLjQuMycsCisg
ICAgICAgIGV4cGVjdGVkUmVzdWx0cyA9PiB7CisgICAgICAgICAgICAnX19WRVJTSU9OX1RFWFRf
XycgPT4gJzMwMC40LjMnLAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX18nID0+ICczMDAu
NC4zJywKKyAgICAgICAgICAgICdfX0JVSUxEX05VTUJFUl9TSE9SVF9fJyA9PiAnMzAwLjQuMycs
CisgICAgICAgICAgICAnX19WRVJTSU9OX01BSk9SX18nID0+ICczJywKKyAgICAgICAgICAgICdf
X1ZFUlNJT05fTUlOT1JfXycgPT4gJzAwJywKKyAgICAgICAgICAgICdfX1ZFUlNJT05fVElOWV9f
JyA9PiAnNCcsCisgICAgICAgICAgICAnX19WRVJTSU9OX0JVSUxEX18nID0+ICczJywKKyAgICAg
ICAgICAgICdfX0JVSUxEX05VTUJFUl9NQUpPUl9fJyA9PiAnMzAwJywKKyAgICAgICAgICAgICdf
X0JVSUxEX05VTUJFUl9NSU5PUl9fJyA9PiAnNCcsCisgICAgICAgICAgICAnX19CVUlMRF9OVU1C
RVJfVkFSSUFOVF9fJyA9PiAnMycsCisgICAgICAgIH0sCisgICAgfSwKKworICAgIHsKKyAgICAg
ICAgJ1JDX1Byb2plY3RTb3VyY2VWZXJzaW9uJyA9PiAnNTMwLjQuMycsCisgICAgICAgIGV4cGVj
dGVkUmVzdWx0cyA9PiB7CisgICAgICAgICAgICAnX19WRVJTSU9OX1RFWFRfXycgPT4gJzUzMC40
LjMnLAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX18nID0+ICc1MzAuNC4zJywKKyAgICAg
ICAgICAgICdfX0JVSUxEX05VTUJFUl9TSE9SVF9fJyA9PiAnNTMwLjQuMycsCisgICAgICAgICAg
ICAnX19WRVJTSU9OX01BSk9SX18nID0+ICc1JywKKyAgICAgICAgICAgICdfX1ZFUlNJT05fTUlO
T1JfXycgPT4gJzMwJywKKyAgICAgICAgICAgICdfX1ZFUlNJT05fVElOWV9fJyA9PiAnNCcsCisg
ICAgICAgICAgICAnX19WRVJTSU9OX0JVSUxEX18nID0+ICczJywKKyAgICAgICAgICAgICdfX0JV
SUxEX05VTUJFUl9NQUpPUl9fJyA9PiAnNTMwJywKKyAgICAgICAgICAgICdfX0JVSUxEX05VTUJF
Ul9NSU5PUl9fJyA9PiAnNCcsCisgICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJfVkFSSUFOVF9f
JyA9PiAnMycsCisgICAgICAgIH0sCisgICAgfSwKKworICAgIHsKKyAgICAgICAgJ1JDX1Byb2pl
Y3RTb3VyY2VWZXJzaW9uJyA9PiAnNTMuNC4zJywKKyAgICAgICAgZXhwZWN0ZWRSZXN1bHRzID0+
IHsKKyAgICAgICAgICAgICdfX1ZFUlNJT05fVEVYVF9fJyA9PiAnNTMuNC4zJywKKyAgICAgICAg
ICAgICdfX0JVSUxEX05VTUJFUl9fJyA9PiAnNTMuNC4zJywKKyAgICAgICAgICAgICdfX0JVSUxE
X05VTUJFUl9TSE9SVF9fJyA9PiAnNTMuNC4zJywKKyAgICAgICAgICAgICdfX1ZFUlNJT05fTUFK
T1JfXycgPT4gJzUnLAorICAgICAgICAgICAgJ19fVkVSU0lPTl9NSU5PUl9fJyA9PiAnMycsCisg
ICAgICAgICAgICAnX19WRVJTSU9OX1RJTllfXycgPT4gJzQnLAorICAgICAgICAgICAgJ19fVkVS
U0lPTl9CVUlMRF9fJyA9PiAnMycsCisgICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJfTUFKT1Jf
XycgPT4gJzUzJywKKyAgICAgICAgICAgICdfX0JVSUxEX05VTUJFUl9NSU5PUl9fJyA9PiAnNCcs
CisgICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJfVkFSSUFOVF9fJyA9PiAnMycsCisgICAgICAg
IH0sCisgICAgfSwKKworICAgIHsKKyAgICAgICAgJ1JDX1Byb2plY3RTb3VyY2VWZXJzaW9uJyA9
PiAnNS40LjMnLAorICAgICAgICBleHBlY3RlZFJlc3VsdHMgPT4geworICAgICAgICAgICAgJ19f
VkVSU0lPTl9URVhUX18nID0+ICc1LjQuMycsCisgICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJf
XycgPT4gJzUuNC4zJywKKyAgICAgICAgICAgICdfX0JVSUxEX05VTUJFUl9TSE9SVF9fJyA9PiAn
NS40LjMnLAorICAgICAgICAgICAgJ19fVkVSU0lPTl9NQUpPUl9fJyA9PiAnNScsCisgICAgICAg
ICAgICAnX19WRVJTSU9OX01JTk9SX18nID0+ICcnLAorICAgICAgICAgICAgJ19fVkVSU0lPTl9U
SU5ZX18nID0+ICc0JywKKyAgICAgICAgICAgICdfX1ZFUlNJT05fQlVJTERfXycgPT4gJzMnLAor
ICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX01BSk9SX18nID0+ICc1JywKKyAgICAgICAgICAg
ICdfX0JVSUxEX05VTUJFUl9NSU5PUl9fJyA9PiAnNCcsCisgICAgICAgICAgICAnX19CVUlMRF9O
VU1CRVJfVkFSSUFOVF9fJyA9PiAnMycsCisgICAgICAgIH0sCisgICAgfSwKKworICAgIHsKKyAg
ICAgICAgJ1JDX1Byb2plY3RTb3VyY2VWZXJzaW9uJyA9PiAnNTMwMC40JywKKyAgICAgICAgZXhw
ZWN0ZWRSZXN1bHRzID0+IHsKKyAgICAgICAgICAgICdfX1ZFUlNJT05fVEVYVF9fJyA9PiAnMzAw
LjQuMCcsCisgICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJfXycgPT4gJzMwMC40LjAnLAorICAg
ICAgICAgICAgJ19fQlVJTERfTlVNQkVSX1NIT1JUX18nID0+ICczMDAuNC4wJywKKyAgICAgICAg
ICAgICdfX1ZFUlNJT05fTUFKT1JfXycgPT4gJzMnLAorICAgICAgICAgICAgJ19fVkVSU0lPTl9N
SU5PUl9fJyA9PiAnMDAnLAorICAgICAgICAgICAgJ19fVkVSU0lPTl9USU5ZX18nID0+ICc0JywK
KyAgICAgICAgICAgICdfX1ZFUlNJT05fQlVJTERfXycgPT4gJzAnLAorICAgICAgICAgICAgJ19f
QlVJTERfTlVNQkVSX01BSk9SX18nID0+ICczMDAnLAorICAgICAgICAgICAgJ19fQlVJTERfTlVN
QkVSX01JTk9SX18nID0+ICc0JywKKyAgICAgICAgICAgICdfX0JVSUxEX05VTUJFUl9WQVJJQU5U
X18nID0+ICcwJywKKyAgICAgICAgfSwKKyAgICB9LAorCisgICAgeworICAgICAgICAnUkNfUHJv
amVjdFNvdXJjZVZlcnNpb24nID0+ICc1MzAuNCcsCisgICAgICAgIGV4cGVjdGVkUmVzdWx0cyA9
PiB7CisgICAgICAgICAgICAnX19WRVJTSU9OX1RFWFRfXycgPT4gJzUzMC40LjAnLAorICAgICAg
ICAgICAgJ19fQlVJTERfTlVNQkVSX18nID0+ICc1MzAuNC4wJywKKyAgICAgICAgICAgICdfX0JV
SUxEX05VTUJFUl9TSE9SVF9fJyA9PiAnNTMwLjQuMCcsCisgICAgICAgICAgICAnX19WRVJTSU9O
X01BSk9SX18nID0+ICc1JywKKyAgICAgICAgICAgICdfX1ZFUlNJT05fTUlOT1JfXycgPT4gJzMw
JywKKyAgICAgICAgICAgICdfX1ZFUlNJT05fVElOWV9fJyA9PiAnNCcsCisgICAgICAgICAgICAn
X19WRVJTSU9OX0JVSUxEX18nID0+ICcwJywKKyAgICAgICAgICAgICdfX0JVSUxEX05VTUJFUl9N
QUpPUl9fJyA9PiAnNTMwJywKKyAgICAgICAgICAgICdfX0JVSUxEX05VTUJFUl9NSU5PUl9fJyA9
PiAnNCcsCisgICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJfVkFSSUFOVF9fJyA9PiAnMCcsCisg
ICAgICAgIH0sCisgICAgfSwKKworICAgIHsKKyAgICAgICAgJ1JDX1Byb2plY3RTb3VyY2VWZXJz
aW9uJyA9PiAnNTMuNCcsCisgICAgICAgIGV4cGVjdGVkUmVzdWx0cyA9PiB7CisgICAgICAgICAg
ICAnX19WRVJTSU9OX1RFWFRfXycgPT4gJzUzLjQuMCcsCisgICAgICAgICAgICAnX19CVUlMRF9O
VU1CRVJfXycgPT4gJzUzLjQuMCcsCisgICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJfU0hPUlRf
XycgPT4gJzUzLjQuMCcsCisgICAgICAgICAgICAnX19WRVJTSU9OX01BSk9SX18nID0+ICc1JywK
KyAgICAgICAgICAgICdfX1ZFUlNJT05fTUlOT1JfXycgPT4gJzMnLAorICAgICAgICAgICAgJ19f
VkVSU0lPTl9USU5ZX18nID0+ICc0JywKKyAgICAgICAgICAgICdfX1ZFUlNJT05fQlVJTERfXycg
PT4gJzAnLAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX01BSk9SX18nID0+ICc1MycsCisg
ICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJfTUlOT1JfXycgPT4gJzQnLAorICAgICAgICAgICAg
J19fQlVJTERfTlVNQkVSX1ZBUklBTlRfXycgPT4gJzAnLAorICAgICAgICB9LAorICAgIH0sCisK
KyAgICB7CisgICAgICAgICdSQ19Qcm9qZWN0U291cmNlVmVyc2lvbicgPT4gJzUuNCcsCisgICAg
ICAgIGV4cGVjdGVkUmVzdWx0cyA9PiB7CisgICAgICAgICAgICAnX19WRVJTSU9OX1RFWFRfXycg
PT4gJzUuNC4wJywKKyAgICAgICAgICAgICdfX0JVSUxEX05VTUJFUl9fJyA9PiAnNS40LjAnLAor
ICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX1NIT1JUX18nID0+ICc1LjQuMCcsCisgICAgICAg
ICAgICAnX19WRVJTSU9OX01BSk9SX18nID0+ICc1JywKKyAgICAgICAgICAgICdfX1ZFUlNJT05f
TUlOT1JfXycgPT4gJycsCisgICAgICAgICAgICAnX19WRVJTSU9OX1RJTllfXycgPT4gJzQnLAor
ICAgICAgICAgICAgJ19fVkVSU0lPTl9CVUlMRF9fJyA9PiAnMCcsCisgICAgICAgICAgICAnX19C
VUlMRF9OVU1CRVJfTUFKT1JfXycgPT4gJzUnLAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVS
X01JTk9SX18nID0+ICc0JywKKyAgICAgICAgICAgICdfX0JVSUxEX05VTUJFUl9WQVJJQU5UX18n
ID0+ICcwJywKKyAgICAgICAgfSwKKyAgICB9LAorCisgICAgeworICAgICAgICAnUkNfUHJvamVj
dFNvdXJjZVZlcnNpb24nID0+ICc1MzAwJywKKyAgICAgICAgZXhwZWN0ZWRSZXN1bHRzID0+IHsK
KyAgICAgICAgICAgICdfX1ZFUlNJT05fVEVYVF9fJyA9PiAnMzAwLjAuMCcsCisgICAgICAgICAg
ICAnX19CVUlMRF9OVU1CRVJfXycgPT4gJzMwMC4wLjAnLAorICAgICAgICAgICAgJ19fQlVJTERf
TlVNQkVSX1NIT1JUX18nID0+ICczMDAuMC4wJywKKyAgICAgICAgICAgICdfX1ZFUlNJT05fTUFK
T1JfXycgPT4gJzMnLAorICAgICAgICAgICAgJ19fVkVSU0lPTl9NSU5PUl9fJyA9PiAnMDAnLAor
ICAgICAgICAgICAgJ19fVkVSU0lPTl9USU5ZX18nID0+ICcwJywKKyAgICAgICAgICAgICdfX1ZF
UlNJT05fQlVJTERfXycgPT4gJzAnLAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX01BSk9S
X18nID0+ICczMDAnLAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX01JTk9SX18nID0+ICcw
JywKKyAgICAgICAgICAgICdfX0JVSUxEX05VTUJFUl9WQVJJQU5UX18nID0+ICcwJywKKyAgICAg
ICAgfSwKKyAgICB9LAorCisgICAgeworICAgICAgICAnUkNfUHJvamVjdFNvdXJjZVZlcnNpb24n
ID0+ICc1MzAnLAorICAgICAgICBleHBlY3RlZFJlc3VsdHMgPT4geworICAgICAgICAgICAgJ19f
VkVSU0lPTl9URVhUX18nID0+ICc1MzAuMC4wJywKKyAgICAgICAgICAgICdfX0JVSUxEX05VTUJF
Ul9fJyA9PiAnNTMwLjAuMCcsCisgICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJfU0hPUlRfXycg
PT4gJzUzMC4wLjAnLAorICAgICAgICAgICAgJ19fVkVSU0lPTl9NQUpPUl9fJyA9PiAnNScsCisg
ICAgICAgICAgICAnX19WRVJTSU9OX01JTk9SX18nID0+ICczMCcsCisgICAgICAgICAgICAnX19W
RVJTSU9OX1RJTllfXycgPT4gJzAnLAorICAgICAgICAgICAgJ19fVkVSU0lPTl9CVUlMRF9fJyA9
PiAnMCcsCisgICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJfTUFKT1JfXycgPT4gJzUzMCcsCisg
ICAgICAgICAgICAnX19CVUlMRF9OVU1CRVJfTUlOT1JfXycgPT4gJzAnLAorICAgICAgICAgICAg
J19fQlVJTERfTlVNQkVSX1ZBUklBTlRfXycgPT4gJzAnLAorICAgICAgICB9LAorICAgIH0sCisK
KyAgICAjIFNtYWxsZXN0ICJWYWxpZCIgY2FzZQorICAgIHsKKyAgICAgICAgJ1JDX1Byb2plY3RT
b3VyY2VWZXJzaW9uJyA9PiAnNTMnLAorICAgICAgICBleHBlY3RlZFJlc3VsdHMgPT4geworICAg
ICAgICAgICAgJ19fVkVSU0lPTl9URVhUX18nID0+ICc1My4wLjAnLAorICAgICAgICAgICAgJ19f
QlVJTERfTlVNQkVSX18nID0+ICc1My4wLjAnLAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVS
X1NIT1JUX18nID0+ICc1My4wLjAnLAorICAgICAgICAgICAgJ19fVkVSU0lPTl9NQUpPUl9fJyA9
PiAnNScsCisgICAgICAgICAgICAnX19WRVJTSU9OX01JTk9SX18nID0+ICczJywKKyAgICAgICAg
ICAgICdfX1ZFUlNJT05fVElOWV9fJyA9PiAnMCcsCisgICAgICAgICAgICAnX19WRVJTSU9OX0JV
SUxEX18nID0+ICcwJywKKyAgICAgICAgICAgICdfX0JVSUxEX05VTUJFUl9NQUpPUl9fJyA9PiAn
NTMnLAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX01JTk9SX18nID0+ICcwJywKKyAgICAg
ICAgICAgICdfX0JVSUxEX05VTUJFUl9WQVJJQU5UX18nID0+ICcwJywKKyAgICAgICAgfSwKKyAg
ICB9LAorCisgICAgIyBXZSBkb24ndCBzdXBwb3J0IDEtZGlnaXQgdmVyc2lvbnMsIGJ1dCB3ZSBz
aG91bGQgcnVuIHdpdGhvdXQgY3Jhc2hpbmcKKyAgICB7CisgICAgICAgICdSQ19Qcm9qZWN0U291
cmNlVmVyc2lvbicgPT4gJzUnLAorICAgICAgICBleHBlY3RlZFJlc3VsdHMgPT4geworICAgICAg
ICAgICAgJ19fVkVSU0lPTl9URVhUX18nID0+ICc1LjAuMCcsCisgICAgICAgICAgICAnX19CVUlM
RF9OVU1CRVJfXycgPT4gJzUuMC4wJywKKyAgICAgICAgICAgICdfX0JVSUxEX05VTUJFUl9TSE9S
VF9fJyA9PiAnNS4wLjAnLAorICAgICAgICAgICAgJ19fVkVSU0lPTl9NQUpPUl9fJyA9PiAnNScs
CisgICAgICAgICAgICAnX19WRVJTSU9OX01JTk9SX18nID0+ICcnLAorICAgICAgICAgICAgJ19f
VkVSU0lPTl9USU5ZX18nID0+ICcwJywKKyAgICAgICAgICAgICdfX1ZFUlNJT05fQlVJTERfXycg
PT4gJzAnLAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX01BSk9SX18nID0+ICc1JywKKyAg
ICAgICAgICAgICdfX0JVSUxEX05VTUJFUl9NSU5PUl9fJyA9PiAnMCcsCisgICAgICAgICAgICAn
X19CVUlMRF9OVU1CRVJfVkFSSUFOVF9fJyA9PiAnMCcsCisgICAgICAgIH0sCisgICAgfSwKKwor
ICAgICMgTGFyZ2VzdCBzcGVjaWZpZWQgdmVyc2lvbiB0ZXN0CisgICAgeworICAgICAgICAnUkNf
UHJvamVjdFNvdXJjZVZlcnNpb24nID0+ICcyMTQ3NDcuOTkuOTkuOTkuOTknLAorICAgICAgICBl
eHBlY3RlZFJlc3VsdHMgPT4geworICAgICAgICAgICAgJ19fVkVSU0lPTl9URVhUX18nID0+ICc3
NDcuOTkuOTknLAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX18nID0+ICc3NDcuOTkuOTkn
LAorICAgICAgICAgICAgJ19fQlVJTERfTlVNQkVSX1NIT1JUX18nID0+ICc3NDcuOTkuOTknLAor
ICAgICAgICAgICAgJ19fVkVSU0lPTl9NQUpPUl9fJyA9PiAnNycsCisgICAgICAgICAgICAnX19W
RVJTSU9OX01JTk9SX18nID0+ICc0NycsCisgICAgICAgICAgICAnX19WRVJTSU9OX1RJTllfXycg
PT4gJzk5JywKKyAgICAgICAgICAgICdfX1ZFUlNJT05fQlVJTERfXycgPT4gJzk5JywKKyAgICAg
ICAgICAgICdfX0JVSUxEX05VTUJFUl9NQUpPUl9fJyA9PiAnNzQ3JywKKyAgICAgICAgICAgICdf
X0JVSUxEX05VTUJFUl9NSU5PUl9fJyA9PiAnOTknLAorICAgICAgICAgICAgJ19fQlVJTERfTlVN
QkVSX1ZBUklBTlRfXycgPT4gJzk5JywKKyAgICAgICAgfSwKKyAgICB9LAorKTsKKworbXkgJHRl
c3RDYXNlc0NvdW50ID0gc2NhbGFyKEB0ZXN0Q2FzZXMpICogMTA7ICMgMTAgZXhwZWN0ZWQgcmVz
dWx0cworcGxhbih0ZXN0cyA9PiAkdGVzdENhc2VzQ291bnQpOworCitmb3JlYWNoIG15ICR0ZXN0
Q2FzZSAoQHRlc3RDYXNlcykgeworICAgIG15ICR0b29sc1BhdGggPSAkRU5WeydXRUJLSVRfTElC
UkFSSUVTJ307CisgICAgbXkgJGF1dG9WZXJzaW9uU2NyaXB0ID0gRmlsZTo6U3BlYy0+Y2F0Zmls
ZSgkdG9vbHNQYXRoLCAndG9vbHMnLCAnc2NyaXB0cycsICdhdXRvLXZlcnNpb24ucGwnKTsKKyAg
ICBteSAkdGVzdE91dHB1dERpciA9IHRlbXBkaXIoQ0xFQU5VUCA9PiAxKTsKKyAgICBgUkNfUHJv
amVjdFNvdXJjZVZlcnNpb249JHRlc3RDYXNlLT57J1JDX1Byb2plY3RTb3VyY2VWZXJzaW9uJ30g
cGVybCAkYXV0b1ZlcnNpb25TY3JpcHQgJHRlc3RPdXRwdXREaXJgOworCisgICAgbXkgJGV4cGVj
dGVkUmVzdWx0cyA9ICR0ZXN0Q2FzZS0+e2V4cGVjdGVkUmVzdWx0c307CisKKyAgICBteSAkb3V0
cHV0RmlsZSA9IEZpbGU6OlNwZWMtPmNhdGZpbGUoJHRlc3RPdXRwdXREaXIsICdpbmNsdWRlJywg
J2F1dG92ZXJzaW9uLmgnKTsKKyAgICBvcGVuKFRFU1RfT1VUUFVULCAnPCcsICRvdXRwdXRGaWxl
KSBvciBkaWUgIlVuYWJsZSB0byBvcGVuICRvdXRwdXRGaWxlIjsKKworICAgIHdoaWxlIChteSAk
bGluZSA9IDxURVNUX09VVFBVVD4pIHsKKyAgICAgICAgZm9yZWFjaCBteSAkZXhwZWN0ZWRSZXN1
bHRLZXkgKGtleXMgJGV4cGVjdGVkUmVzdWx0cykgeworICAgICAgICAgICAgaWYgKCRsaW5lICF+
IG0vJGV4cGVjdGVkUmVzdWx0S2V5LykgeworICAgICAgICAgICAgICAgIG5leHQ7CisgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgICRsaW5lID1+IHMvI2RlZmluZSAkZXhwZWN0ZWRSZXN1bHRL
ZXkvLzsKKyAgICAgICAgICAgICRsaW5lID1+IHMvXlxzKiguKilccyokLyQxLzsKKyAgICAgICAg
ICAgICRsaW5lID1+IHMvXiIoLiopIiQvJDEvOworICAgICAgICAgICAgY2hvbXAoJGxpbmUpOwor
CisgICAgICAgICAgICBteSAkZXhwZWN0ZWRSZXN1bHRWYWx1ZSA9ICRleHBlY3RlZFJlc3VsdHMt
PnskZXhwZWN0ZWRSZXN1bHRLZXl9OworICAgICAgICAgICAgaXMoJGxpbmUsICRleHBlY3RlZFJl
c3VsdFZhbHVlLCAiJHRlc3RDYXNlLT57J1JDX1Byb2plY3RTb3VyY2VWZXJzaW9uJ306ICRleHBl
Y3RlZFJlc3VsdEtleSIpOworICAgICAgICB9CisgICAgfQorfQpJbmRleDogV2ViS2l0TGlicmFy
aWVzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRMaWJyYXJpZXMvQ2hhbmdlTG9nCShy
ZXZpc2lvbiAxNzEzMDkpCisrKyBXZWJLaXRMaWJyYXJpZXMvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTQtMDctMjEgIEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hh
bUBhcHBsZS5jb20+CisKKyAgICAgICAgW1dpbl0gRXh0ZW5kIGF1dG8tdmVyc2lvbi5wbCB0byBo
YW5kbGUgNS10dXBsZSB2ZXJzaW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTM1MTI0CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xNzc1MDMzND4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFeHRlbmQg
dHVwbGUgcGFyc2luZyB0byBoYW5kbGUgdXAgdG8gZml2ZSB0dXBsZXMsIGFuZCBhcworICAgICAg
ICBmZXcgYXMgYSBzaW5nbGUgdHVwbGUuIE9uIFdpbmRvd3MsIHRoZSB0d28gYWRkaXRpb25hbAor
ICAgICAgICB0dXBsZXMgYXJlIHVudXNlZC4KKworICAgICAgICBBbHNvIGNvcnJlY3RlZCByZWd1
bGFyIGV4cHJlc3Npb24gY2FwdHVyZSBsb2dpYyB0byB1c2UgbG9jYWwKKyAgICAgICAgYmxvY2tz
LCBwcmV2ZW50aW5nIGxhdGVyIGNhcHR1cmUgZXhwcmVzc2lvbnMgZnJvbSByZXVzaW5nCisgICAg
ICAgIHByZXZpb3VzIGNhcHR1cmUgcmVzdWx0cyB3aGVuIHRoZSBjdXJyZW50IGV4cHJlc3Npb24g
ZmFpbGVkCisgICAgICAgIHRvIGZpbmQgYSBtYXRjaCAoR1JSUiwgUGVybCEpLgorCisgICAgICAg
IENsZWFuIHVwIGNvZGUgYnkgcHV0dGluZyBsb2dpYyBpbnRvIGEgY291cGxlIG9mIHN1YnJvdXRp
bmVzLgorCisgICAgICAgICogd2luL3Rvb2xzL3NjcmlwdHMvYXV0by12ZXJzaW9uLnBsOgorCiAy
MDE0LTA3LTIxICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgogCiAgICAgICAg
IFtXaW5dIENvcnJlY3QgYXV0by12ZXJzaW9uLnBsIHNjcmlwdCBmb3IgdHdvLWRpZ2l0IHZlcnNp
b24gbnVtYmVycwpJbmRleDogV2ViS2l0TGlicmFyaWVzL3dpbi90b29scy9zY3JpcHRzL2F1dG8t
dmVyc2lvbi5wbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRMaWJyYXJpZXMvd2luL3Rvb2xzL3Njcmlw
dHMvYXV0by12ZXJzaW9uLnBsCShyZXZpc2lvbiAxNzEzMDUpCisrKyBXZWJLaXRMaWJyYXJpZXMv
d2luL3Rvb2xzL3NjcmlwdHMvYXV0by12ZXJzaW9uLnBsCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw2
ICsyOCw5IEBAIHVzZSBXaW4zMjsKICMgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiAjIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogCitz
dWIgc3BsaXRWZXJzaW9uKCQpOworc3ViIHNwbGl0QnVpbGRNYWpvclZlcnNpb24oJCk7CisKIGRp
ZSAiWW91IG11c3Qgc3VwcGx5IGFuIG91dHB1dCBwYXRoIGFzIHRoZSBhcmd1bWVudC5cbiIgaWYg
KCQjQVJHViA8IDApOwogCiBteSAkV0VCS0lUX0xJQlJBUklFUyA9ICRFTlZ7J1dFQktJVF9MSUJS
QVJJRVMnfTsKQEAgLTY4LDQ3ICs3MSwxMyBAQCBpZiAoIWRlZmluZWQgJEVOVklST05NRU5UX1ZF
UlNJT04pIHsKIG15ICRQUk9QT1NFRF9WRVJTSU9OID0gKGRlZmluZWQgJEVOVklST05NRU5UX1ZF
UlNJT04pID8gJEVOVklST05NRU5UX1ZFUlNJT04gOiAkRkFMTEJBQ0tfVkVSU0lPTjsKIGNob21w
KCRQUk9QT1NFRF9WRVJTSU9OKTsKIAotIyBTcGxpdCBvdXQgdGhlIHRocmVlIGNvbXBvbmVudHMg
b2YgdGhlIGRvdHRlZCB2ZXJzaW9uIG51bWJlci4gIFdlIHBhZAotIyB0aGUgaW5wdXQgd2l0aCB0
cmFpbGluZyBkb3RzIHRvIGhhbmRsZSB0aGUgY2FzZSB3aGVyZSB0aGUgaW5wdXQgdmVyc2lvbgot
IyBoYXMgZmV3ZXIgY29tcG9uZW50cyB0aGFuIHdlIGV4cGVjdC4KLSRQUk9QT1NFRF9WRVJTSU9O
ID1+IG0vXig/OihcZCspXC4pPyg/OihcZCspXC4pPyhcKnxcZCspJC8gb3IgZGllICJDb3VsZG4n
dCBwYXJzZSAkUFJPUE9TRURfVkVSU0lPTiI7Ci1teSAkQlVJTERfTUFKT1JfVkVSU0lPTiA9ICQx
OwotbXkgJEJVSUxEX01JTk9SX1ZFUlNJT04gPSAkMjsKLW15ICRCVUlMRF9USU5ZX1ZFUlNJT04g
PSAkMzsKLQotIyBUaGUgZGVmYXVsdCB2ZXJzaW9uICh3aXRoIG5vIGRlY2ltYWxzKSB3aWxsIGJl
IG1hdGNoZWQgYnkgdGhlIHJlZ2V4cAotIyB0byAkQlVJTERfVElOWV9WRVJTSU9OLiBJZiB0aGF0
IGhhcHBlbnMsIHdlIG5lZWQgdG8gbW92ZSBpdCB0bwotIyAkQlVJTERfTUFKT1JfVkVSU0lPTi4K
LWlmICghZGVmaW5lZCAkQlVJTERfTUFKT1JfVkVSU0lPTiAmJiAhZGVmaW5lZCAkQlVJTERfTUlO
T1JfVkVSU0lPTikgewotICAgICRCVUlMRF9NQUpPUl9WRVJTSU9OID0gJEJVSUxEX1RJTllfVkVS
U0lPTjsKLSAgICAkQlVJTERfVElOWV9WRVJTSU9OID0gMDsKLX0KLQotIyBDdXQgdGhlIG1ham9y
IGNvbXBvbmVudCBkb3duIHRvIHRocmVlIGNoYXJhY3RlcnMgYnkgZHJvcHBpbmcgYW55Ci0jIGV4
dHJhIGxlYWRpbmcgZGlnaXRzLCB0aGVuIGFkanVzdCB0aGUgbWFqb3IgdmVyc2lvbiBwb3J0aW9u
IG9mIHRoZQotIyB2ZXJzaW9uIHN0cmluZyB0byBtYXRjaC4KLSRCVUlMRF9NQUpPUl9WRVJTSU9O
ID1+IHMvXi4qKFxkXGRcZCkkLyQxLzsKLQotIyBIYXZlIHRoZSBtaW5vciBhbmQgdGlueSBjb21w
b25lbnRzIGRlZmF1bHQgdG8gemVybyBpZiBub3QgcHJlc2VudC4KLWlmICghZGVmaW5lZCAkQlVJ
TERfTUlOT1JfVkVSU0lPTikgewotICAgICRCVUlMRF9NSU5PUl9WRVJTSU9OID0gMDsKLX0KLWlm
ICghZGVmaW5lZCAkQlVJTERfVElOWV9WRVJTSU9OKSB7Ci0gICAgJEJVSUxEX1RJTllfVkVSU0lP
TiA9IDA7Ci19CitteSAoJEJVSUxEX01BSk9SX1ZFUlNJT04sICRCVUlMRF9NSU5PUl9WRVJTSU9O
LCAkQlVJTERfVElOWV9WRVJTSU9OKSA9IHNwbGl0VmVyc2lvbigkUFJPUE9TRURfVkVSU0lPTik7
CiAKICRQUk9QT1NFRF9WRVJTSU9OID0gIiRCVUlMRF9NQUpPUl9WRVJTSU9OLiRCVUlMRF9NSU5P
Ul9WRVJTSU9OLiRCVUlMRF9USU5ZX1ZFUlNJT04iOwogCi0jIFNwbGl0IHRoZSBmaXJzdCBjb21w
b25lbnQgZnVydGhlciBieSB1c2luZyB0aGUgZmlyc3QgZGlnaXQgZm9yIHRoZQotIyBtYWpvciB2
ZXJzaW9uIGFuZCB0aGUgcmVtYWluaW5nIHR3byBjaGFyYWN0ZXJzIGFzIHRoZSBtaW5vciB2ZXJz
aW9uLgotIyBUaGUgbWlub3IgdmVyc2lvbiBpcyBzaGlmdGVkIGRvd24gdG8gdGhlIHRpbnkgdmVy
c2lvbiwgd2l0aCB0aGUgdGlueQotIyB2ZXJzaW9uIGJlY29taW5nIHRoZSB2YXJpYW50IHZlcnNp
b24uCi0kQlVJTERfTUFKT1JfVkVSU0lPTiA9fiBtL15bXlxkXSooXGQpKFxkezEsfSkvOwotbXkg
JE1BSk9SX1ZFUlNJT04gPSAkMTsKLW15ICRNSU5PUl9WRVJTSU9OID0gJDI7CitteSAoJE1BSk9S
X1ZFUlNJT04sICRNSU5PUl9WRVJTSU9OKSA9IHNwbGl0QnVpbGRNYWpvclZlcnNpb24oJEJVSUxE
X01BSk9SX1ZFUlNJT04pOwogbXkgJFRJTllfVkVSU0lPTiA9ICRCVUlMRF9NSU5PUl9WRVJTSU9O
OwogbXkgJFZBUklBTlRfVkVSU0lPTiA9ICRCVUlMRF9USU5ZX1ZFUlNJT047Ci0KIG15ICRWRVJT
SU9OX1RFWFQgPSAkUFJPUE9TRURfVkVSU0lPTjsKIG15ICRWRVJTSU9OX1RFWFRfU0hPUlQgPSAk
VkVSU0lPTl9URVhUOwogCkBAIC0xNDksMyArMTE4LDU0IEBAIGlmIChkZWZpbmVkICRDT1BZUklH
SFRfRU5EX1lFQVIpIHsKICAgICBwcmludCBPVVRQVVRfRklMRSAiI2RlZmluZSBfX0NPUFlSSUdI
VF9ZRUFSX0VORF9URVhUX18gXCIkQ09QWVJJR0hUX0VORF9ZRUFSXCJcbiI7CiB9CiBjbG9zZShP
VVRQVVRfRklMRSk7CisKKworc3ViIHNwbGl0VmVyc2lvbigkKQoreworICAgIG15ICRQUk9QT1NF
RF9WRVJTSU9OID0gc2hpZnQ7CisKKyAgICAjIFNwbGl0IG91dCB0aGUgdGhyZWUgY29tcG9uZW50
cyBvZiB0aGUgZG90dGVkIHZlcnNpb24gbnVtYmVyLiAgV2UgcGFkCisgICAgIyB0aGUgaW5wdXQg
d2l0aCB0cmFpbGluZyBkb3RzIHRvIGhhbmRsZSB0aGUgY2FzZSB3aGVyZSB0aGUgaW5wdXQgdmVy
c2lvbgorICAgICMgaGFzIGZld2VyIGNvbXBvbmVudHMgdGhhbiB3ZSBleHBlY3QuCisgICAgbXkg
QGNvbXBvbmVudHMgPSBzcGxpdCgvXC4vLCAkUFJPUE9TRURfVkVSU0lPTikgb3IgZGllICJDb3Vs
ZG4ndCBwYXJzZSAkUFJPUE9TRURfVkVSU0lPTiI7CisgICAgbXkgJGNvbXBvbmVudENvdW50ID0g
c2NhbGFyKEBjb21wb25lbnRzKTsKKworICAgIG15ICRCVUlMRF9NQUpPUl9WRVJTSU9OID0gJGNv
bXBvbmVudHNbMF07CisKKyAgICAjIEhhdmUgdGhlIG1pbm9yIGFuZCB0aW55IGNvbXBvbmVudHMg
ZGVmYXVsdCB0byB6ZXJvIGlmIG5vdCBwcmVzZW50LgorICAgIG15ICRCVUlMRF9NSU5PUl9WRVJT
SU9OID0gMDsKKyAgICBteSAkQlVJTERfVElOWV9WRVJTSU9OID0gMDsKKyAgICBpZiAoJGNvbXBv
bmVudENvdW50ID4gMSkgeworICAgICAgICAkQlVJTERfTUlOT1JfVkVSU0lPTiA9ICRjb21wb25l
bnRzWzFdOworICAgICAgICBpZiAoJGNvbXBvbmVudENvdW50ID4gMikgeworICAgICAgICAgICAg
JEJVSUxEX1RJTllfVkVSU0lPTiA9ICRjb21wb25lbnRzWzJdOworICAgICAgICB9CisgICAgfQor
CisgICAgIyBDdXQgdGhlIG1ham9yIGNvbXBvbmVudCBkb3duIHRvIHRocmVlIGNoYXJhY3RlcnMg
YnkgZHJvcHBpbmcgYW55CisgICAgIyBleHRyYSBsZWFkaW5nIGRpZ2l0cywgdGhlbiBhZGp1c3Qg
dGhlIG1ham9yIHZlcnNpb24gcG9ydGlvbiBvZiB0aGUKKyAgICAjIHZlcnNpb24gc3RyaW5nIHRv
IG1hdGNoLgorICAgICRCVUlMRF9NQUpPUl9WRVJTSU9OID1+IHMvXi4qKFxkXGRcZCkkLyQxLzsK
KworICAgIHJldHVybiAoJEJVSUxEX01BSk9SX1ZFUlNJT04sICRCVUlMRF9NSU5PUl9WRVJTSU9O
LCAkQlVJTERfVElOWV9WRVJTSU9OKTsKK30KKworc3ViIHNwbGl0QnVpbGRNYWpvclZlcnNpb24o
JCkKK3sKKyAgICAjIFNwbGl0IHRoZSBmaXJzdCBjb21wb25lbnQgZnVydGhlciBieSB1c2luZyB0
aGUgZmlyc3QgZGlnaXQgZm9yIHRoZQorICAgICMgbWFqb3IgdmVyc2lvbiBhbmQgdGhlIHJlbWFp
bmluZyB0d28gY2hhcmFjdGVycyBhcyB0aGUgbWlub3IgdmVyc2lvbi4KKyAgICAjIFRoZSBtaW5v
ciB2ZXJzaW9uIGlzIHNoaWZ0ZWQgZG93biB0byB0aGUgdGlueSB2ZXJzaW9uLCB3aXRoIHRoZSB0
aW55CisgICAgIyB2ZXJzaW9uIGJlY29taW5nIHRoZSB2YXJpYW50IHZlcnNpb24uCisgICAgbXkg
KCRNQUpPUl9WRVJTSU9OLCAkTUlOT1JfVkVSU0lPTik7CisgICAgeworICAgICAgICBpZiAoJEJV
SUxEX01BSk9SX1ZFUlNJT04gPX4gbS9eW15cZF0qKFxkKShcZHsxLH0pLykgeworICAgICAgICAg
ICAgJE1BSk9SX1ZFUlNJT04gPSAkMTsKKyAgICAgICAgICAgICRNSU5PUl9WRVJTSU9OID0gJDI7
CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAkTUFKT1JfVkVSU0lPTiA9ICRCVUlMRF9N
QUpPUl9WRVJTSU9OOworICAgICAgICAgICAgJE1JTk9SX1ZFUlNJT04gPSAnJzsKKyAgICAgICAg
fQorICAgIH0KKworICAgIHJldHVybiAoJE1BSk9SX1ZFUlNJT04sICRNSU5PUl9WRVJTSU9OKTsK
K30K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>235307</attachid>
            <date>2014-07-22 12:55:19 -0700</date>
            <delta_ts>2014-07-22 13:50:22 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-134946-20140722125428.patch</filename>
            <type>text/plain</type>
            <size>5847</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3MTM1MykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDE0LTA3LTIyICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIFtXaW5dIEZpeCBDcmFzaCB3
aGVuIGhhbmRsaW5nIExlZ2libGUgT3V0cHV0IGNhbGxiYWNrcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM0OTQ2CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
bmJhbmRUZXh0VHJhY2tQcml2YXRlQVZGOjpwcm9jZXNzTmF0aXZlU2FtcGxlcyk6IFJlbW92ZQor
ICAgICAgICBXaW5kb3dzLXNwZWNpZmljICdBU1NFUlRfTk9UX1JFQUNIRUQnIGNvZGUgcGF0aC4K
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uQ0YuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlTGVnaWJs
ZU91dHB1dFN1YnR5cGVzKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpBVkZXcmFwcGVyOjpj
cmVhdGVQbGF5ZXJJdGVtKTogVXBkYXRlZCB0byByZXF1ZXN0IG5hdGl2ZQorICAgICAgICBzYW1w
bGVzIGZyb20gQVZGb3VuZGF0aW9uQ0YuCisKIDIwMTQtMDctMjIgIEJyZW50IEZ1bGdoYW0gIDxi
ZnVsZ2hhbUBhcHBsZS5jb20+CiAKICAgICAgICAgW1dpbl0gRml4IExlYWsgaW4gV2ViQ29yZTo6
Y3JlYXRlR2xvYmFsSW1hZ2VGaWxlRGVzY3JpcHRvciAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9JbmJhbmRUZXh0VHJhY2tQcml2YXRlQVZGLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5k
YXRpb24vSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRi5jcHAJKHJldmlzaW9uIDE3MTM1MykKKysr
IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9JbmJhbmRUZXh0
VHJhY2tQcml2YXRlQVZGLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzEsNiArNzEsMjEgQEAgU09G
VF9MSU5LKENvcmVNZWRpYSwgQ01CbG9ja0J1ZmZlckdldERhdAogU09GVF9MSU5LKENvcmVNZWRp
YSwgQ01TYW1wbGVCdWZmZXJHZXRTYW1wbGVUaW1pbmdJbmZvLCBPU1N0YXR1cywgKENNU2FtcGxl
QnVmZmVyUmVmIHNidWYsIENNSXRlbUluZGV4IHNhbXBsZUluZGV4LCBDTVNhbXBsZVRpbWluZ0lu
Zm8qIHRpbWluZ0luZm9PdXQpLCAoc2J1Ziwgc2FtcGxlSW5kZXgsIHRpbWluZ0luZm9PdXQpKQog
U09GVF9MSU5LKENvcmVNZWRpYSwgQ01Gb3JtYXREZXNjcmlwdGlvbkdldEV4dGVuc2lvbnMsIENG
RGljdGlvbmFyeVJlZiwgKENNRm9ybWF0RGVzY3JpcHRpb25SZWYgZGVzYyksIChkZXNjKSkKIFNP
RlRfTElOSyhDb3JlTWVkaWEsIENNU2FtcGxlQnVmZmVyR2V0Rm9ybWF0RGVzY3JpcHRpb24sIENN
Rm9ybWF0RGVzY3JpcHRpb25SZWYsIChDTVNhbXBsZUJ1ZmZlclJlZiBzYnVmKSwgKHNidWYpKQor
I2Vsc2UKK1NPRlRfTElOS19ETExfSU1QT1JUKENvcmVNZWRpYSwgQ01UaW1lR2V0U2Vjb25kcywg
RmxvYXQ2NCwgX19jZGVjbCwgKENNVGltZSB0aW1lKSwgKHRpbWUpKQorI2RlZmluZSBDTVRpbWVH
ZXRTZWNvbmRzIHNvZnRMaW5rX0NNVGltZUdldFNlY29uZHMKK1NPRlRfTElOS19ETExfSU1QT1JU
KENvcmVNZWRpYSwgQ01TYW1wbGVCdWZmZXJHZXREYXRhQnVmZmVyLCBDTUJsb2NrQnVmZmVyUmVm
LCBfX2NkZWNsLCAoQ01TYW1wbGVCdWZmZXJSZWYgc2J1ZiksIChzYnVmKSkKKyNkZWZpbmUgQ01T
YW1wbGVCdWZmZXJHZXREYXRhQnVmZmVyIHNvZnRMaW5rX0NNU2FtcGxlQnVmZmVyR2V0RGF0YUJ1
ZmZlcgorU09GVF9MSU5LX0RMTF9JTVBPUlQoQ29yZU1lZGlhLCBDTUJsb2NrQnVmZmVyQ29weURh
dGFCeXRlcywgT1NTdGF0dXMsIF9fY2RlY2wsIChDTUJsb2NrQnVmZmVyUmVmIHRoZVNvdXJjZUJ1
ZmZlciwgc2l6ZV90IG9mZnNldFRvRGF0YSwgc2l6ZV90IGRhdGFMZW5ndGgsIHZvaWQqIGRlc3Rp
bmF0aW9uKSwgKHRoZVNvdXJjZUJ1ZmZlciwgb2Zmc2V0VG9EYXRhLCBkYXRhTGVuZ3RoLCBkZXN0
aW5hdGlvbikpCisjZGVmaW5lIENNQmxvY2tCdWZmZXJDb3B5RGF0YUJ5dGVzIHNvZnRMaW5rX0NN
QmxvY2tCdWZmZXJDb3B5RGF0YUJ5dGVzCitTT0ZUX0xJTktfRExMX0lNUE9SVChDb3JlTWVkaWEs
IENNQmxvY2tCdWZmZXJHZXREYXRhTGVuZ3RoLCBzaXplX3QsIF9fY2RlY2wsIChDTUJsb2NrQnVm
ZmVyUmVmIHRoZUJ1ZmZlciksICh0aGVCdWZmZXIpKQorI2RlZmluZSBDTUJsb2NrQnVmZmVyR2V0
RGF0YUxlbmd0aCBzb2Z0TGlua19DTUJsb2NrQnVmZmVyR2V0RGF0YUxlbmd0aAorU09GVF9MSU5L
X0RMTF9JTVBPUlQoQ29yZU1lZGlhLCBDTVNhbXBsZUJ1ZmZlckdldFNhbXBsZVRpbWluZ0luZm8s
IE9TU3RhdHVzLCBfX2NkZWNsLCAoQ01TYW1wbGVCdWZmZXJSZWYgc2J1ZiwgQ01JdGVtSW5kZXgg
c2FtcGxlSW5kZXgsIENNU2FtcGxlVGltaW5nSW5mbyogdGltaW5nSW5mb091dCksIChzYnVmLCBz
YW1wbGVJbmRleCwgdGltaW5nSW5mb091dCkpCisjZGVmaW5lIENNU2FtcGxlQnVmZmVyR2V0U2Ft
cGxlVGltaW5nSW5mbyBzb2Z0TGlua19DTVNhbXBsZUJ1ZmZlckdldFNhbXBsZVRpbWluZ0luZm8K
K1NPRlRfTElOS19ETExfSU1QT1JUKENvcmVNZWRpYSwgQ01Gb3JtYXREZXNjcmlwdGlvbkdldEV4
dGVuc2lvbnMsIENGRGljdGlvbmFyeVJlZiwgX19jZGVjbCwgKENNRm9ybWF0RGVzY3JpcHRpb25S
ZWYgZGVzYyksIChkZXNjKSkKKyNkZWZpbmUgQ01Gb3JtYXREZXNjcmlwdGlvbkdldEV4dGVuc2lv
bnMgc29mdExpbmtfQ01Gb3JtYXREZXNjcmlwdGlvbkdldEV4dGVuc2lvbnMKK1NPRlRfTElOS19E
TExfSU1QT1JUKENvcmVNZWRpYSwgQ01TYW1wbGVCdWZmZXJHZXRGb3JtYXREZXNjcmlwdGlvbiwg
Q01Gb3JtYXREZXNjcmlwdGlvblJlZiwgX19jZGVjbCwgKENNU2FtcGxlQnVmZmVyUmVmIHNidWYp
LCAoc2J1ZikpCisjZGVmaW5lIENNU2FtcGxlQnVmZmVyR2V0Rm9ybWF0RGVzY3JpcHRpb24gc29m
dExpbmtfQ01TYW1wbGVCdWZmZXJHZXRGb3JtYXREZXNjcmlwdGlvbgogI2VuZGlmCiAKIFNPRlRf
TElOS19BVkZfUE9JTlRFUihDb3JlTWVkaWEsIGtDTVRleHRNYXJrdXBBdHRyaWJ1dGVfQWxpZ25t
ZW50LCBDRlN0cmluZ1JlZikKQEAgLTU0NiwxMSArNTYxLDYgQEAgdm9pZCBJbmJhbmRUZXh0VHJh
Y2tQcml2YXRlQVZGOjpzZXRNb2RlKAogCiB2b2lkIEluYmFuZFRleHRUcmFja1ByaXZhdGVBVkY6
OnByb2Nlc3NOYXRpdmVTYW1wbGVzKENGQXJyYXlSZWYgbmF0aXZlU2FtcGxlcywgZG91YmxlIHBy
ZXNlbnRhdGlvblRpbWUpCiB7Ci0jaWYgUExBVEZPUk0oV0lOKQotICAgIFVOVVNFRF9QQVJBTShu
YXRpdmVTYW1wbGVzKTsKLSAgICBVTlVTRURfUEFSQU0ocHJlc2VudGF0aW9uVGltZSk7Ci0gICAg
QVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0jZWxzZQogICAgIGlmICghbmF0aXZlU2FtcGxlcykKICAg
ICAgICAgcmV0dXJuOwogCkBAIC02NDQsNyArNjU0LDYgQEAgdm9pZCBJbmJhbmRUZXh0VHJhY2tQ
cml2YXRlQVZGOjpwcm9jZXNzTgogCiAgICAgICAgIG1fc2FtcGxlSW5wdXRCdWZmZXIucmVtb3Zl
KDAsIGJveExlbmd0aCk7CiAgICAgfQotI2VuZGlmCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9j
Zi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25DRi5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxheWVy
UHJpdmF0ZUFWRm91bmRhdGlvbkNGLmNwcAkocmV2aXNpb24gMTcxMzUzKQorKysgU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxheWVyUHJpdmF0
ZUFWRm91bmRhdGlvbkNGLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTQ4Niw2ICsxNDg2LDE2IEBA
IHZvaWQgQVZGV3JhcHBlcjo6Y3JlYXRlUGxheWVyKElEaXJlY3QzREQKICAgICBtX3RpbWVPYnNl
cnZlciA9IGFkb3B0Q0YoQVZDRlBsYXllckNyZWF0ZVBlcmlvZGljVGltZU9ic2VydmVyRm9ySW50
ZXJ2YWwocGxheWVyUmVmLCBDTVRpbWVNYWtlKHZlcnlMb25nSW50ZXJ2YWwsIDEwKSwgbV9ub3Rp
ZmljYXRpb25RdWV1ZSwgJnBlcmlvZGljVGltZU9ic2VydmVyQ2FsbGJhY2ssIGNhbGxiYWNrQ29u
dGV4dCgpKSk7CiB9CiAKKyNpZiBIQVZFKEFWRk9VTkRBVElPTl9NRURJQV9TRUxFQ1RJT05fR1JP
VVApICYmIEhBVkUoQVZGT1VOREFUSU9OX0xFR0lCTEVfT1VUUFVUX1NVUFBPUlQpCitzdGF0aWMg
UmV0YWluUHRyPENGQXJyYXlSZWY+IGNyZWF0ZUxlZ2libGVPdXRwdXRTdWJ0eXBlcygpCit7Cisg
ICAgaW50IHdlYlZUVEludCA9IGtDTVN1YnRpdGxlRm9ybWF0VHlwZV9XZWJWVFQ7CisgICAgUmV0
YWluUHRyPENGTnVtYmVyUmVmPiB3ZWJWVFROdW1iZXIgPSBhZG9wdENGKENGTnVtYmVyQ3JlYXRl
KGtDRkFsbG9jYXRvckRlZmF1bHQsIGtDRk51bWJlckludFR5cGUsICZ3ZWJWVFRJbnQpKTsKKyAg
ICBDRlR5cGVSZWYgZm9ybWF0VHlwZXNbXSA9IHsgd2ViVlRUTnVtYmVyLmdldCgpIH07CisgICAg
cmV0dXJuIGFkb3B0Q0YoQ0ZBcnJheUNyZWF0ZSgwLCBmb3JtYXRUeXBlcywgV1RGX0FSUkFZX0xF
TkdUSChmb3JtYXRUeXBlcyksICZrQ0ZUeXBlQXJyYXlDYWxsQmFja3MpKTsKK30KKyNlbmRpZgor
CiB2b2lkIEFWRldyYXBwZXI6OmNyZWF0ZVBsYXllckl0ZW0oKQogewogICAgIEFTU0VSVChpc01h
aW5UaHJlYWQoKSk7CkBAIC0xNTE5LDcgKzE1MjksNyBAQCB2b2lkIEFWRldyYXBwZXI6OmNyZWF0
ZVBsYXllckl0ZW0oKQogI2lmIEhBVkUoQVZGT1VOREFUSU9OX01FRElBX1NFTEVDVElPTl9HUk9V
UCkgJiYgSEFWRShBVkZPVU5EQVRJT05fTEVHSUJMRV9PVVRQVVRfU1VQUE9SVCkKICAgICBjb25z
dCBDRlRpbWVJbnRlcnZhbCBsZWdpYmxlT3V0cHV0QWR2YW5jZUludGVydmFsID0gMjsKIAotICAg
IG1fbGVnaWJsZU91dHB1dCA9IGFkb3B0Q0YoQVZDRlBsYXllckl0ZW1MZWdpYmxlT3V0cHV0Q3Jl
YXRlV2l0aE1lZGlhU3VidHlwZXNGb3JOYXRpdmVSZXByZXNlbnRhdGlvbihrQ0ZBbGxvY2F0b3JE
ZWZhdWx0LCAwKSk7CisgICAgbV9sZWdpYmxlT3V0cHV0ID0gYWRvcHRDRihBVkNGUGxheWVySXRl
bUxlZ2libGVPdXRwdXRDcmVhdGVXaXRoTWVkaWFTdWJ0eXBlc0Zvck5hdGl2ZVJlcHJlc2VudGF0
aW9uKGtDRkFsbG9jYXRvckRlZmF1bHQsIGNyZWF0ZUxlZ2libGVPdXRwdXRTdWJ0eXBlcygpLmdl
dCgpKSk7CiAgICAgQVZDRlBsYXllckl0ZW1PdXRwdXRTZXRTdXBwcmVzc1BsYXllclJlbmRlcmlu
ZyhtX2xlZ2libGVPdXRwdXQuZ2V0KCksIFRSVUUpOwogCiAgICAgQVZDRlBsYXllckl0ZW1MZWdp
YmxlT3V0cHV0Q2FsbGJhY2tzIGNhbGxiYWNrSW5mbzsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>235312</attachid>
            <date>2014-07-22 13:50:26 -0700</date>
            <delta_ts>2014-07-23 08:47:59 -0700</delta_ts>
            <desc>Add struct declarations to support building on EWS bots</desc>
            <filename>bug-134946-20140722134934.patch</filename>
            <type>text/plain</type>
            <size>6007</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3MTM1OSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDE0LTA3LTIyICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIFtXaW5dIEZpeCBDcmFzaCB3
aGVuIGhhbmRsaW5nIExlZ2libGUgT3V0cHV0IGNhbGxiYWNrcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM0OTQ2CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgRGVhbiBKYWNrc29uLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0
aW9uL0luYmFuZFRleHRUcmFja1ByaXZhdGVBVkYuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5i
YW5kVGV4dFRyYWNrUHJpdmF0ZUFWRjo6cHJvY2Vzc05hdGl2ZVNhbXBsZXMpOiBSZW1vdmUKKyAg
ICAgICAgV2luZG93cy1zcGVjaWZpYyAnQVNTRVJUX05PVF9SRUFDSEVEJyBjb2RlIHBhdGguCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxheWVyUHJp
dmF0ZUFWRm91bmRhdGlvbkNGLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZUxlZ2libGVP
dXRwdXRTdWJ0eXBlcyk6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6QVZGV3JhcHBlcjo6Y3Jl
YXRlUGxheWVySXRlbSk6IFVwZGF0ZWQgdG8gcmVxdWVzdCBuYXRpdmUKKyAgICAgICAgc2FtcGxl
cyBmcm9tIEFWRm91bmRhdGlvbkNGLgorCiAyMDE0LTA3LTIyICBDb21taXQgUXVldWUgIDxjb21t
aXQtcXVldWVAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCBy
MTcxMzU3LgpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0
aW9uL0luYmFuZFRleHRUcmFja1ByaXZhdGVBVkYuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9JbmJhbmRUZXh0VHJhY2tQcml2
YXRlQVZGLmNwcAkocmV2aXNpb24gMTcxMzU5KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvYXZmb3VuZGF0aW9uL0luYmFuZFRleHRUcmFja1ByaXZhdGVBVkYuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC03MSw2ICs3MSwyNCBAQCBTT0ZUX0xJTksoQ29yZU1lZGlhLCBDTUJsb2Nr
QnVmZmVyR2V0RGF0CiBTT0ZUX0xJTksoQ29yZU1lZGlhLCBDTVNhbXBsZUJ1ZmZlckdldFNhbXBs
ZVRpbWluZ0luZm8sIE9TU3RhdHVzLCAoQ01TYW1wbGVCdWZmZXJSZWYgc2J1ZiwgQ01JdGVtSW5k
ZXggc2FtcGxlSW5kZXgsIENNU2FtcGxlVGltaW5nSW5mbyogdGltaW5nSW5mb091dCksIChzYnVm
LCBzYW1wbGVJbmRleCwgdGltaW5nSW5mb091dCkpCiBTT0ZUX0xJTksoQ29yZU1lZGlhLCBDTUZv
cm1hdERlc2NyaXB0aW9uR2V0RXh0ZW5zaW9ucywgQ0ZEaWN0aW9uYXJ5UmVmLCAoQ01Gb3JtYXRE
ZXNjcmlwdGlvblJlZiBkZXNjKSwgKGRlc2MpKQogU09GVF9MSU5LKENvcmVNZWRpYSwgQ01TYW1w
bGVCdWZmZXJHZXRGb3JtYXREZXNjcmlwdGlvbiwgQ01Gb3JtYXREZXNjcmlwdGlvblJlZiwgKENN
U2FtcGxlQnVmZmVyUmVmIHNidWYpLCAoc2J1ZikpCisjZWxzZQordHlwZWRlZiBzdHJ1Y3QgT3Bh
cXVlQ01CbG9ja0J1ZmZlciogQ01CbG9ja0J1ZmZlclJlZjsKK3R5cGVkZWYgY29uc3Qgc3RydWN0
IG9wYXF1ZUNNRm9ybWF0RGVzY3JpcHRpb24qIENNRm9ybWF0RGVzY3JpcHRpb25SZWY7Cit0eXBl
ZGVmIHN0cnVjdCBvcGFxdWVDTVNhbXBsZUJ1ZmZlciogQ01TYW1wbGVCdWZmZXJSZWY7CitTT0ZU
X0xJTktfRExMX0lNUE9SVChDb3JlTWVkaWEsIENNVGltZUdldFNlY29uZHMsIEZsb2F0NjQsIF9f
Y2RlY2wsIChDTVRpbWUgdGltZSksICh0aW1lKSkKKyNkZWZpbmUgQ01UaW1lR2V0U2Vjb25kcyBz
b2Z0TGlua19DTVRpbWVHZXRTZWNvbmRzCitTT0ZUX0xJTktfRExMX0lNUE9SVChDb3JlTWVkaWEs
IENNU2FtcGxlQnVmZmVyR2V0RGF0YUJ1ZmZlciwgQ01CbG9ja0J1ZmZlclJlZiwgX19jZGVjbCwg
KENNU2FtcGxlQnVmZmVyUmVmIHNidWYpLCAoc2J1ZikpCisjZGVmaW5lIENNU2FtcGxlQnVmZmVy
R2V0RGF0YUJ1ZmZlciBzb2Z0TGlua19DTVNhbXBsZUJ1ZmZlckdldERhdGFCdWZmZXIKK1NPRlRf
TElOS19ETExfSU1QT1JUKENvcmVNZWRpYSwgQ01CbG9ja0J1ZmZlckNvcHlEYXRhQnl0ZXMsIE9T
U3RhdHVzLCBfX2NkZWNsLCAoQ01CbG9ja0J1ZmZlclJlZiB0aGVTb3VyY2VCdWZmZXIsIHNpemVf
dCBvZmZzZXRUb0RhdGEsIHNpemVfdCBkYXRhTGVuZ3RoLCB2b2lkKiBkZXN0aW5hdGlvbiksICh0
aGVTb3VyY2VCdWZmZXIsIG9mZnNldFRvRGF0YSwgZGF0YUxlbmd0aCwgZGVzdGluYXRpb24pKQor
I2RlZmluZSBDTUJsb2NrQnVmZmVyQ29weURhdGFCeXRlcyBzb2Z0TGlua19DTUJsb2NrQnVmZmVy
Q29weURhdGFCeXRlcworU09GVF9MSU5LX0RMTF9JTVBPUlQoQ29yZU1lZGlhLCBDTUJsb2NrQnVm
ZmVyR2V0RGF0YUxlbmd0aCwgc2l6ZV90LCBfX2NkZWNsLCAoQ01CbG9ja0J1ZmZlclJlZiB0aGVC
dWZmZXIpLCAodGhlQnVmZmVyKSkKKyNkZWZpbmUgQ01CbG9ja0J1ZmZlckdldERhdGFMZW5ndGgg
c29mdExpbmtfQ01CbG9ja0J1ZmZlckdldERhdGFMZW5ndGgKK1NPRlRfTElOS19ETExfSU1QT1JU
KENvcmVNZWRpYSwgQ01TYW1wbGVCdWZmZXJHZXRTYW1wbGVUaW1pbmdJbmZvLCBPU1N0YXR1cywg
X19jZGVjbCwgKENNU2FtcGxlQnVmZmVyUmVmIHNidWYsIENNSXRlbUluZGV4IHNhbXBsZUluZGV4
LCBDTVNhbXBsZVRpbWluZ0luZm8qIHRpbWluZ0luZm9PdXQpLCAoc2J1Ziwgc2FtcGxlSW5kZXgs
IHRpbWluZ0luZm9PdXQpKQorI2RlZmluZSBDTVNhbXBsZUJ1ZmZlckdldFNhbXBsZVRpbWluZ0lu
Zm8gc29mdExpbmtfQ01TYW1wbGVCdWZmZXJHZXRTYW1wbGVUaW1pbmdJbmZvCitTT0ZUX0xJTktf
RExMX0lNUE9SVChDb3JlTWVkaWEsIENNRm9ybWF0RGVzY3JpcHRpb25HZXRFeHRlbnNpb25zLCBD
RkRpY3Rpb25hcnlSZWYsIF9fY2RlY2wsIChDTUZvcm1hdERlc2NyaXB0aW9uUmVmIGRlc2MpLCAo
ZGVzYykpCisjZGVmaW5lIENNRm9ybWF0RGVzY3JpcHRpb25HZXRFeHRlbnNpb25zIHNvZnRMaW5r
X0NNRm9ybWF0RGVzY3JpcHRpb25HZXRFeHRlbnNpb25zCitTT0ZUX0xJTktfRExMX0lNUE9SVChD
b3JlTWVkaWEsIENNU2FtcGxlQnVmZmVyR2V0Rm9ybWF0RGVzY3JpcHRpb24sIENNRm9ybWF0RGVz
Y3JpcHRpb25SZWYsIF9fY2RlY2wsIChDTVNhbXBsZUJ1ZmZlclJlZiBzYnVmKSwgKHNidWYpKQor
I2RlZmluZSBDTVNhbXBsZUJ1ZmZlckdldEZvcm1hdERlc2NyaXB0aW9uIHNvZnRMaW5rX0NNU2Ft
cGxlQnVmZmVyR2V0Rm9ybWF0RGVzY3JpcHRpb24KICNlbmRpZgogCiBTT0ZUX0xJTktfQVZGX1BP
SU5URVIoQ29yZU1lZGlhLCBrQ01UZXh0TWFya3VwQXR0cmlidXRlX0FsaWdubWVudCwgQ0ZTdHJp
bmdSZWYpCkBAIC01NDYsMTEgKzU2NCw2IEBAIHZvaWQgSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFW
Rjo6c2V0TW9kZSgKIAogdm9pZCBJbmJhbmRUZXh0VHJhY2tQcml2YXRlQVZGOjpwcm9jZXNzTmF0
aXZlU2FtcGxlcyhDRkFycmF5UmVmIG5hdGl2ZVNhbXBsZXMsIGRvdWJsZSBwcmVzZW50YXRpb25U
aW1lKQogewotI2lmIFBMQVRGT1JNKFdJTikKLSAgICBVTlVTRURfUEFSQU0obmF0aXZlU2FtcGxl
cyk7Ci0gICAgVU5VU0VEX1BBUkFNKHByZXNlbnRhdGlvblRpbWUpOwotICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOwotI2Vsc2UKICAgICBpZiAoIW5hdGl2ZVNhbXBsZXMpCiAgICAgICAgIHJldHVy
bjsKIApAQCAtNjQ0LDcgKzY1Nyw2IEBAIHZvaWQgSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUFWRjo6
cHJvY2Vzc04KIAogICAgICAgICBtX3NhbXBsZUlucHV0QnVmZmVyLnJlbW92ZSgwLCBib3hMZW5n
dGgpOwogICAgIH0KLSNlbmRpZgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5
ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0YuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9jZi9NZWRpYVBsYXllclByaXZhdGVBVkZv
dW5kYXRpb25DRi5jcHAJKHJldmlzaW9uIDE3MTM1OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9jZi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRp
b25DRi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE0ODYsNiArMTQ4NiwxNiBAQCB2b2lkIEFWRldy
YXBwZXI6OmNyZWF0ZVBsYXllcihJRGlyZWN0M0RECiAgICAgbV90aW1lT2JzZXJ2ZXIgPSBhZG9w
dENGKEFWQ0ZQbGF5ZXJDcmVhdGVQZXJpb2RpY1RpbWVPYnNlcnZlckZvckludGVydmFsKHBsYXll
clJlZiwgQ01UaW1lTWFrZSh2ZXJ5TG9uZ0ludGVydmFsLCAxMCksIG1fbm90aWZpY2F0aW9uUXVl
dWUsICZwZXJpb2RpY1RpbWVPYnNlcnZlckNhbGxiYWNrLCBjYWxsYmFja0NvbnRleHQoKSkpOwog
fQogCisjaWYgSEFWRShBVkZPVU5EQVRJT05fTUVESUFfU0VMRUNUSU9OX0dST1VQKSAmJiBIQVZF
KEFWRk9VTkRBVElPTl9MRUdJQkxFX09VVFBVVF9TVVBQT1JUKQorc3RhdGljIFJldGFpblB0cjxD
RkFycmF5UmVmPiBjcmVhdGVMZWdpYmxlT3V0cHV0U3VidHlwZXMoKQoreworICAgIGludCB3ZWJW
VFRJbnQgPSBrQ01TdWJ0aXRsZUZvcm1hdFR5cGVfV2ViVlRUOworICAgIFJldGFpblB0cjxDRk51
bWJlclJlZj4gd2ViVlRUTnVtYmVyID0gYWRvcHRDRihDRk51bWJlckNyZWF0ZShrQ0ZBbGxvY2F0
b3JEZWZhdWx0LCBrQ0ZOdW1iZXJJbnRUeXBlLCAmd2ViVlRUSW50KSk7CisgICAgQ0ZUeXBlUmVm
IGZvcm1hdFR5cGVzW10gPSB7IHdlYlZUVE51bWJlci5nZXQoKSB9OworICAgIHJldHVybiBhZG9w
dENGKENGQXJyYXlDcmVhdGUoMCwgZm9ybWF0VHlwZXMsIFdURl9BUlJBWV9MRU5HVEgoZm9ybWF0
VHlwZXMpLCAma0NGVHlwZUFycmF5Q2FsbEJhY2tzKSk7Cit9CisjZW5kaWYKKwogdm9pZCBBVkZX
cmFwcGVyOjpjcmVhdGVQbGF5ZXJJdGVtKCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkp
OwpAQCAtMTUxOSw3ICsxNTI5LDcgQEAgdm9pZCBBVkZXcmFwcGVyOjpjcmVhdGVQbGF5ZXJJdGVt
KCkKICNpZiBIQVZFKEFWRk9VTkRBVElPTl9NRURJQV9TRUxFQ1RJT05fR1JPVVApICYmIEhBVkUo
QVZGT1VOREFUSU9OX0xFR0lCTEVfT1VUUFVUX1NVUFBPUlQpCiAgICAgY29uc3QgQ0ZUaW1lSW50
ZXJ2YWwgbGVnaWJsZU91dHB1dEFkdmFuY2VJbnRlcnZhbCA9IDI7CiAKLSAgICBtX2xlZ2libGVP
dXRwdXQgPSBhZG9wdENGKEFWQ0ZQbGF5ZXJJdGVtTGVnaWJsZU91dHB1dENyZWF0ZVdpdGhNZWRp
YVN1YnR5cGVzRm9yTmF0aXZlUmVwcmVzZW50YXRpb24oa0NGQWxsb2NhdG9yRGVmYXVsdCwgMCkp
OworICAgIG1fbGVnaWJsZU91dHB1dCA9IGFkb3B0Q0YoQVZDRlBsYXllckl0ZW1MZWdpYmxlT3V0
cHV0Q3JlYXRlV2l0aE1lZGlhU3VidHlwZXNGb3JOYXRpdmVSZXByZXNlbnRhdGlvbihrQ0ZBbGxv
Y2F0b3JEZWZhdWx0LCBjcmVhdGVMZWdpYmxlT3V0cHV0U3VidHlwZXMoKS5nZXQoKSkpOwogICAg
IEFWQ0ZQbGF5ZXJJdGVtT3V0cHV0U2V0U3VwcHJlc3NQbGF5ZXJSZW5kZXJpbmcobV9sZWdpYmxl
T3V0cHV0LmdldCgpLCBUUlVFKTsKIAogICAgIEFWQ0ZQbGF5ZXJJdGVtTGVnaWJsZU91dHB1dENh
bGxiYWNrcyBjYWxsYmFja0luZm87Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>