<?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>131044</bug_id>
          
          <creation_ts>2014-04-01 09:57:47 -0700</creation_ts>
          <short_desc>REGRESSION(r166395): It made all media tests crash on EFL</short_desc>
          <delta_ts>2025-05-25 07:56:07 -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>REOPENED</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P1</priority>
          <bug_severity>Blocker</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>131257</dependson>
          <blocked>130882</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Csaba Osztrogonác">ossy</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>furthermore800</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jer.noble</cc>
    
    <cc>ossy</cc>
    
    <cc>philipj</cc>
    
    <cc>pulkomandy</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>996331</commentid>
    <comment_count>0</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2014-04-01 09:57:47 -0700</bug_when>
    <thetext>before: http://build.webkit.org/builders/EFL%20Linux%2064-bit%20Release%20WK1/builds/5723
after: http://build.webkit.org/builders/EFL%20Linux%2064-bit%20Release%20WK1/builds/5724

crash log:

STDERR: 1   0x7fa0359401c0
STDERR: 2   0x7fa030671ff0
STDERR: 3   0x7fa033b1de27 WebCore::HTMLElement::ieForbidsInsertHTML() const
STDERR: 4   0x7fa033b209ad WebCore::HTMLElement::setInnerText(WTF::String const&amp;, int&amp;)
STDERR: 5   0x7fa033b76d8b WebCore::HTMLTextFormControlElement::setInnerTextValue(WTF::String const&amp;)
STDERR: 6   0x7fa033b9125c WebCore::TextFieldInputType::updateInnerTextValue()
STDERR: 7   0x7fa0339c10f9 WebCore::Element::attributeChanged(WebCore::QualifiedName const&amp;, WTF::AtomicString const&amp;, WTF::AtomicString const&amp;, WebCore::Element::AttributeModificationReason)
STDERR: 8   0x7fa0339bf4fc WebCore::Element::didAddAttribute(WebCore::QualifiedName const&amp;, WTF::AtomicString const&amp;)
STDERR: 9   0x7fa0339c1d7d WebCore::Element::addAttributeInternal(WebCore::QualifiedName const&amp;, WTF::AtomicString const&amp;, WebCore::Element::SynchronizationOfLazyAttribute)
STDERR: 10  0x7fa0339c3dad WebCore::Element::setAttributeWithoutSynchronization(WebCore::QualifiedName const&amp;, WTF::AtomicString const&amp;)
STDERR: 11  0x7fa033c1b6cb WebCore::MediaControlRewindButtonElement::create(WebCore::Document&amp;)
STDERR: 12  0x7fa03436128e WebCore::MediaControlsApple::createControls(WebCore::Document&amp;)
STDERR: 13  0x7fa034361b65 WebCore::MediaControls::create(WebCore::Document&amp;)
STDERR: 14  0x7fa033b422e4 WebCore::HTMLMediaElement::createMediaControls()
STDERR: 15  0x7fa033b424d8 WebCore::HTMLMediaElement::configureMediaControls()
STDERR: 16  0x7fa033b4dde4 WebCore::HTMLMediaElement::insertedInto(WebCore::ContainerNode&amp;)
STDERR: 17  0x7fa0339842ad WebCore::ContainerNode::parserAppendChild(WTF::PassRefPtr&lt;WebCore::Node&gt;)
STDERR: 18  0x7fa033bcd9e9 WebCore::HTMLConstructionSite::executeQueuedTasks()
STDERR: 19  0x7fa033bd7594 WebCore::HTMLDocumentParser::constructTreeFromHTMLToken(WebCore::HTMLToken&amp;)
STDERR: 20  0x7fa033bd7bf4 WebCore::HTMLDocumentParser::pumpTokenizer(WebCore::HTMLDocumentParser::SynchronousMode)
STDERR: 21  0x7fa033bd88d2 WebCore::HTMLDocumentParser::append(WTF::PassRefPtr&lt;WTF::StringImpl&gt;)
STDERR: 22  0x7fa03398ee2e WebCore::DecodedDataDocumentParser::flush(WebCore::DocumentWriter&amp;)
STDERR: 23  0x7fa033ccfe03 WebCore::DocumentWriter::end()
STDERR: 24  0x7fa033cc5e07 WebCore::DocumentLoader::finishedLoading(double)
STDERR: 25  0x7fa033d46841 WebCore::CachedResource::checkNotify()
STDERR: 26  0x7fa033d449c0 WebCore::CachedRawResource::finishLoading(WebCore::ResourceBuffer*)
STDERR: 27  0x7fa033d0db1e WebCore::SubresourceLoader::didFinishLoading(double)
STDERR: 28  0x7fa0343ad371
STDERR: 29  0x7fa02e55704a
STDERR: 30  0x7fa02e5765db
STDERR: 31  0x7fa02e5765f9


Mark it as blocker/P1, because EFL bots exit early because of this regression, so they have near 0 test coverage since 5 days / 200 revisions.
The bug should be fixed as soon as possible or media tests should be skipped if you are interested in catching new regressions by the bots.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>996681</commentid>
    <comment_count>1</comment_count>
      <attachid>228389</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2014-04-02 06:11:19 -0700</bug_when>
    <thetext>Created attachment 228389
backtrace

Here is a gdb backtrace for media/audio-concurrent-supported.html,
it might help someone interested in fixing this regression.

My question is why EFL uses MediaControlsApple.cpp?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>997049</commentid>
    <comment_count>2</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2014-04-03 00:22:47 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; Created an attachment (id=228389) [details]
&gt; backtrace
&gt; 
&gt; Here is a gdb backtrace for media/audio-concurrent-supported.html,
&gt; it might help someone interested in fixing this regression.

More information,
This crash is started from r166395 ( Bug 130882 ).
But I am not sure why it occurs in EFL because it is general code.

&gt; 
&gt; My question is why EFL uses MediaControlsApple.cpp?

EFL may need to have own MediaControls but it looks not related to this issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>997586</commentid>
    <comment_count>3</comment_count>
    <who name="Adrien Destugues">pulkomandy</who>
    <bug_when>2014-04-04 09:24:49 -0700</bug_when>
    <thetext>We have the same problem in the Haiku port (also using MediaControlsApple.cpp). Moving the setPseudo call to the create methods, after the call to setType, seems to work around this, but I don&apos;t know if that&apos;s the proper fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>997599</commentid>
    <comment_count>4</comment_count>
    <who name="Adrien Destugues">pulkomandy</who>
    <bug_when>2014-04-04 09:43:12 -0700</bug_when>
    <thetext>Here is our patch for this: https://github.com/haiku/webkit/commit/1a7810025da941981a6e39cc4b199eb47615e0c2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>997624</commentid>
    <comment_count>5</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2014-04-04 10:46:15 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (In reply to comment #1)
&gt; &gt; Created an attachment (id=228389) [details] [details]
&gt; &gt; backtrace
&gt; &gt; 
&gt; &gt; Here is a gdb backtrace for media/audio-concurrent-supported.html,
&gt; &gt; it might help someone interested in fixing this regression.
&gt; 
&gt; More information,
&gt; This crash is started from r166395 ( Bug 130882 ).
&gt; But I am not sure why it occurs in EFL because it is general code.

At least, I realized that GTK and (maybe) MAC does not use this crash path because they use MEDIA_CONTROLS_SCRIPT.

Just for test, I tried to use the code of GTK port.
And media/audio-concurrent-supported.html is passed.
(control is bit ugly for efl port)

IMO, we should turn on the MEDIA_CONTROLS_SCRIPT. but I am not sure whether it is correct solution for this crash.

Anyway, I will prepare proper css/js for EFL port. (It may takes more time)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>998145</commentid>
    <comment_count>6</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2014-04-07 08:18:02 -0700</bug_when>
    <thetext>It seems the EFL bots are still broken from this regression.
(during ~500 revisions and 11 days)

Is there any plan to fix them to be able catch new regressions again?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1000739</commentid>
    <comment_count>7</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2014-04-14 21:41:22 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; It seems the EFL bots are still broken from this regression.
&gt; (during ~500 revisions and 11 days)
&gt; 
&gt; Is there any plan to fix them to be able catch new regressions again?

Yes, EFL bots have broken too long time. I couldn&apos;t take a look this problem due to my various works. Let me try to fix it as soon as possible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1036657</commentid>
    <comment_count>8</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2014-09-22 21:33:14 -0700</bug_when>
    <thetext>Almost media tests are being passed on EFL buildbot. However, unfortunately I failed to find what revision fixed this issue. To maintain those test on EFL port again, I unskip it by r173864.

http://trac.webkit.org/changeset/173864</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1036691</commentid>
    <comment_count>9</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2014-09-23 02:49:18 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; Almost media tests are being passed on EFL buildbot. However, unfortunately I failed to find what revision fixed this issue. To maintain those test on EFL port again, I unskip it by r173864.
&gt; 
&gt; http://trac.webkit.org/changeset/173864

Not at all, all media tests still fail on the EFL bot and this
unskipping made the runtime from 22mins to 3.5hours and the
number of failing test from 30-40 to 300+. :-/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1036692</commentid>
    <comment_count>10</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2014-09-23 02:54:09 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #8)
&gt; &gt; Almost media tests are being passed on EFL buildbot. However, unfortunately I failed to find what revision fixed this issue. To maintain those test on EFL port again, I unskip it by r173864.
&gt; &gt; 
&gt; &gt; http://trac.webkit.org/changeset/173864
&gt; 
&gt; Not at all, all media tests still fail on the EFL bot and this
&gt; unskipping made the runtime from 22mins to 3.5hours and the
&gt; number of failing test from 30-40 to 300+. :-/

Ossy, something is weird. When I test it locally, there were dozens of failing tests. Let me check it again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1040554</commentid>
    <comment_count>11</comment_count>
      <attachid>239541</attachid>
    <who name="Adrien Destugues">pulkomandy</who>
    <bug_when>2014-10-09 08:54:39 -0700</bug_when>
    <thetext>Created attachment 239541
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1040566</commentid>
    <comment_count>12</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-10-09 09:21:48 -0700</bug_when>
    <thetext>Brent, Eric, Jer, could one of you review this?

One thing I am noticing is that if the setPseudo calls are now moved after the elements are completely constructed, we could possibly go back to calling shadowPseudoId() rather than separately hardcoding each ID. I suspect the reason that didn’t work before is that we were calling it during construction.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1040591</commentid>
    <comment_count>13</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-10-09 10:28:08 -0700</bug_when>
    <thetext>I think it would be helpful if someone would state what the fix is meant to do.

It looks like the issue is that the &apos;setPseudo&apos; call in the constructor causes an error when the m_innerText of a TextFieldInputType class is accessed. Apparently this does not yet exist during construction time.

It seems strange to have to set these attributes of the class after construction, but I guess it&apos;s no worse than the existing need to call &apos;setType&apos; or &apos;ensureUserAgentShadowRoot&apos; after the object is constructed.

This seems like clunky design, but I&apos;m not sure how to address it at this point.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1040598</commentid>
    <comment_count>14</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2014-10-09 10:42:05 -0700</bug_when>
    <thetext>(In reply to comment #13)
&gt; I think it would be helpful if someone would state what the fix is meant to do.
&gt; 
&gt; It looks like the issue is that the &apos;setPseudo&apos; call in the constructor causes an error when the m_innerText of a TextFieldInputType class is accessed. Apparently this does not yet exist during construction time.

Yeah, if you&apos;re calling a virtual method (Element::attributeChanged()) from a constructor you&apos;re going to have a bad time. (&lt;meme&gt;)

&gt; It seems strange to have to set these attributes of the class after construction, but I guess it&apos;s no worse than the existing need to call &apos;setType&apos; or &apos;ensureUserAgentShadowRoot&apos; after the object is constructed.
&gt; 
&gt; This seems like clunky design, but I&apos;m not sure how to address it at this point.

I don&apos;t think there&apos;s a better way.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1040605</commentid>
    <comment_count>15</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2014-10-09 10:52:56 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; Brent, Eric, Jer, could one of you review this?
&gt; 
&gt; One thing I am noticing is that if the setPseudo calls are now moved after the elements are completely constructed, we could possibly go back to calling shadowPseudoId() rather than separately hardcoding each ID. I suspect the reason that didn’t work before is that we were calling it during construction.

Someone added a FIXME to shadowPseudoId() asking clients not to overload it.  So I don&apos;t think we should go back to using it instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1040633</commentid>
    <comment_count>16</comment_count>
      <attachid>239541</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-10-09 12:25:48 -0700</bug_when>
    <thetext>Comment on attachment 239541
Patch

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

&gt; Source/WebCore/ChangeLog:9
&gt; +        No new tests: fixes existing tests.
&gt; +        The pseudo id cannot be set before the elements get a type.

The patch is not necessarily wrong, but the changelog is unsatisfactory.

Here you should explain exactly why the crash occur and why this is the right fix for it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1052706</commentid>
    <comment_count>17</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2014-12-05 04:45:33 -0800</bug_when>
    <thetext>The media tests are still skipped. Is EFL port interested in fixing this old regression?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1084530</commentid>
    <comment_count>18</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2015-04-11 10:39:12 -0700</bug_when>
    <thetext>(In reply to comment #17)
&gt; The media tests are still skipped. Is EFL port interested in fixing this old
&gt; regression?

Now media tests are passed on EFL port, except for 25 tests. I update this result in r182657 - http://trac.webkit.org/changeset/182657.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>228389</attachid>
            <date>2014-04-02 06:11:19 -0700</date>
            <delta_ts>2014-04-02 06:11:19 -0700</delta_ts>
            <desc>backtrace</desc>
            <filename>gdb.txt</filename>
            <type>text/plain</type>
            <size>7662</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">U3RhcnRpbmcgcHJvZ3JhbTogL2hvbWUvb3NzeS9XZWJLaXQvV2ViS2l0QnVpbGQvRGVidWcvYmlu
L0R1bXBSZW5kZXJUcmVlIC0KW1RocmVhZCBkZWJ1Z2dpbmcgdXNpbmcgbGlidGhyZWFkX2RiIGVu
YWJsZWRdClVzaW5nIGhvc3QgbGlidGhyZWFkX2RiIGxpYnJhcnkgIi9saWIveDg2XzY0LWxpbnV4
LWdudS9saWJ0aHJlYWRfZGIuc28uMSIuCltOZXcgVGhyZWFkIDB4N2ZmZjkzZjdiNzAwIChMV1Ag
MTcyNzEpXQpbTmV3IFRocmVhZCAweDdmZmY5Mzc1YjcwMCAoTFdQIDE3MjcyKV0KW05ldyBUaHJl
YWQgMHg3ZmZmOTJmNWE3MDAgKExXUCAxNzI3MyldCltOZXcgVGhyZWFkIDB4N2ZmZjkyNzU5NzAw
IChMV1AgMTcyNzQpXQpbTmV3IFRocmVhZCAweDdmZmY5MWVkYzcwMCAoTFdQIDE3Mjc1KV0KClBy
b2dyYW0gcmVjZWl2ZWQgc2lnbmFsIFNJR1NFR1YsIFNlZ21lbnRhdGlvbiBmYXVsdC4KMHgwMDAw
N2ZmZmY3NDBkN2MxIGluIFdURkNyYXNoICgpIGF0IC9ob21lL29zc3kvV2ViS2l0L1NvdXJjZS9X
VEYvd3RmL0Fzc2VydGlvbnMuY3BwOjMzMwozMzMJICAgICooaW50ICopKHVpbnRwdHJfdCkweGJi
YWRiZWVmID0gMDsKIzAgIDB4MDAwMDdmZmZmNzQwZDdjMSBpbiBXVEZDcmFzaCAoKSBhdCAvaG9t
ZS9vc3N5L1dlYktpdC9Tb3VyY2UvV1RGL3d0Zi9Bc3NlcnRpb25zLmNwcDozMzMKIzEgIDB4MDAw
MDdmZmZmMjc2MDNlNCBpbiBXZWJDb3JlOjpUZXh0RmllbGRJbnB1dFR5cGU6OmlubmVyVGV4dEVs
ZW1lbnQoKSBjb25zdCAoKQogICAgYXQgL2hvbWUvb3NzeS9XZWJLaXQvU291cmNlL1dlYkNvcmUv
aHRtbC9UZXh0RmllbGRJbnB1dFR5cGUuY3BwOjI5MQojMiAgMHgwMDAwN2ZmZmYyNmNlMGUwIGlu
IFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQ6OmlubmVyVGV4dEVsZW1lbnQoKSBjb25zdCAoKQog
ICAgYXQgL2hvbWUvb3NzeS9XZWJLaXQvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVt
ZW50LmNwcDoxODkKIzMgIDB4MDAwMDdmZmZmMjczMzlkMSBpbiBXZWJDb3JlOjpIVE1MVGV4dEZv
cm1Db250cm9sRWxlbWVudDo6aW5uZXJUZXh0VmFsdWUoKSBjb25zdCAoKQogICAgYXQgL2hvbWUv
b3NzeS9XZWJLaXQvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEZvcm1Db250cm9sRWxlbWVu
dC5jcHA6NTUzCiM0ICAweDAwMDA3ZmZmZjI3MzM2YjMgaW4gV2ViQ29yZTo6SFRNTFRleHRGb3Jt
Q29udHJvbEVsZW1lbnQ6OnNldElubmVyVGV4dFZhbHVlKFdURjo6U3RyaW5nIGNvbnN0JikgKCkK
ICAgIGF0IC9ob21lL29zc3kvV2ViS2l0L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRGb3Jt
Q29udHJvbEVsZW1lbnQuY3BwOjUyNAojNSAgMHgwMDAwN2ZmZmYyNzYxMGZjIGluIFdlYkNvcmU6
OlRleHRGaWVsZElucHV0VHlwZTo6dXBkYXRlSW5uZXJUZXh0VmFsdWUoKSAoKQogICAgYXQgL2hv
bWUvb3NzeS9XZWJLaXQvU291cmNlL1dlYkNvcmUvaHRtbC9UZXh0RmllbGRJbnB1dFR5cGUuY3Bw
OjUwNAojNiAgMHgwMDAwN2ZmZmYyNzYwNGY1IGluIFdlYkNvcmU6OlRleHRGaWVsZElucHV0VHlw
ZTo6YXR0cmlidXRlQ2hhbmdlZCgpICgpCiAgICBhdCAvaG9tZS9vc3N5L1dlYktpdC9Tb3VyY2Uv
V2ViQ29yZS9odG1sL1RleHRGaWVsZElucHV0VHlwZS5jcHA6MzMxCiM3ICAweDAwMDA3ZmZmZjI2
ZDA1NDUgaW4gV2ViQ29yZTo6SFRNTElucHV0RWxlbWVudDo6cGFyc2VBdHRyaWJ1dGUoV2ViQ29y
ZTo6UXVhbGlmaWVkTmFtZSBjb25zdCYsIFdURjo6QXRvbWljU3RyaW5nIGNvbnN0JikgKCkKICAg
IGF0IC9ob21lL29zc3kvV2ViS2l0L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVu
dC5jcHA6NzQ0CiM4ICAweDAwMDA3ZmZmZjI0ZmYyOTYgaW4gV2ViQ29yZTo6RWxlbWVudDo6YXR0
cmlidXRlQ2hhbmdlZChXZWJDb3JlOjpRdWFsaWZpZWROYW1lIGNvbnN0JiwgV1RGOjpBdG9taWNT
dHJpbmcgY29uc3QmLCBXVEY6OkF0b21pY1N0cmluZyBjb25zdCYsIFdlYkNvcmU6OkVsZW1lbnQ6
OkF0dHJpYnV0ZU1vZGlmaWNhdGlvblJlYXNvbikgKCkgYXQgL2hvbWUvb3NzeS9XZWJLaXQvU291
cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwOjEwMjQKIzkgIDB4MDAwMDdmZmZmMjU4YTA0MiBp
biBXZWJDb3JlOjpTdHlsZWRFbGVtZW50OjphdHRyaWJ1dGVDaGFuZ2VkKFdlYkNvcmU6OlF1YWxp
ZmllZE5hbWUgY29uc3QmLCBXVEY6OkF0b21pY1N0cmluZyBjb25zdCYsIFdURjo6QXRvbWljU3Ry
aW5nIGNvbnN0JiwgV2ViQ29yZTo6RWxlbWVudDo6QXR0cmlidXRlTW9kaWZpY2F0aW9uUmVhc29u
KSAoKSBhdCAvaG9tZS9vc3N5L1dlYktpdC9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVu
dC5jcHA6MTYyCiMxMCAweDAwMDA3ZmZmZjI1MDU0ZDkgaW4gV2ViQ29yZTo6RWxlbWVudDo6ZGlk
QWRkQXR0cmlidXRlKFdlYkNvcmU6OlF1YWxpZmllZE5hbWUgY29uc3QmLCBXVEY6OkF0b21pY1N0
cmluZyBjb25zdCYpICgpCiAgICBhdCAvaG9tZS9vc3N5L1dlYktpdC9Tb3VyY2UvV2ViQ29yZS9k
b20vRWxlbWVudC5jcHA6MjcwMwojMTEgMHgwMDAwN2ZmZmYyNTAxZTkxIGluIFdlYkNvcmU6OkVs
ZW1lbnQ6OmFkZEF0dHJpYnV0ZUludGVybmFsKFdlYkNvcmU6OlF1YWxpZmllZE5hbWUgY29uc3Qm
LCBXVEY6OkF0b21pY1N0cmluZyBjb25zdCYsIFdlYkNvcmU6OkVsZW1lbnQ6OlN5bmNocm9uaXph
dGlvbk9mTGF6eUF0dHJpYnV0ZSkgKCkgYXQgL2hvbWUvb3NzeS9XZWJLaXQvU291cmNlL1dlYkNv
cmUvZG9tL0VsZW1lbnQuY3BwOjE3NjMKIzEyIDB4MDAwMDdmZmZmMjUwOWFhMyBpbiBXZWJDb3Jl
OjpFbGVtZW50OjpzZXRBdHRyaWJ1dGVJbnRlcm5hbCh1bnNpZ25lZCBpbnQsIFdlYkNvcmU6OlF1
YWxpZmllZE5hbWUgY29uc3QmLCBXVEY6OkF0b21pY1N0cmluZyBjb25zdCYsIFdlYkNvcmU6OkVs
ZW1lbnQ6OlN5bmNocm9uaXphdGlvbk9mTGF6eUF0dHJpYnV0ZSkgKCkgYXQgL2hvbWUvb3NzeS9X
ZWJLaXQvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwOjk3OQojMTMgMHgwMDAwN2ZmZmYy
NGZmMGM3IGluIFdlYkNvcmU6OkVsZW1lbnQ6OnNldEF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6
YXRpb24oV2ViQ29yZTo6UXVhbGlmaWVkTmFtZSBjb25zdCYsIFdURjo6QXRvbWljU3RyaW5nIGNv
bnN0JikgKCkKICAgIGF0IC9ob21lL29zc3kvV2ViS2l0L1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVt
ZW50LmNwcDo5NjEKIzE0IDB4MDAwMDdmZmZmMjUwMmZhYSBpbiBXZWJDb3JlOjpFbGVtZW50Ojpz
ZXRQc2V1ZG8oV1RGOjpBdG9taWNTdHJpbmcgY29uc3QmKSAoKSBhdCAvaG9tZS9vc3N5L1dlYktp
dC9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHA6MTk5OQojMTUgMHgwMDAwN2ZmZmYyODA2
OGUzIGluIFdlYkNvcmU6Ok1lZGlhQ29udHJvbFJld2luZEJ1dHRvbkVsZW1lbnQ6Ok1lZGlhQ29u
dHJvbFJld2luZEJ1dHRvbkVsZW1lbnQoV2ViQ29yZTo6RG9jdW1lbnQmKSAoKQogICAgYXQgL2hv
bWUvb3NzeS9XZWJLaXQvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxl
bWVudHMuY3BwOjYzMQojMTYgMHgwMDAwN2ZmZmYyODA2OTEzIGluIFdlYkNvcmU6Ok1lZGlhQ29u
dHJvbFJld2luZEJ1dHRvbkVsZW1lbnQ6OmNyZWF0ZShXZWJDb3JlOjpEb2N1bWVudCYpICgpCiAg
ICBhdCAvaG9tZS9vc3N5L1dlYktpdC9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNv
bnRyb2xFbGVtZW50cy5jcHA6NjM2CiMxNyAweDAwMDA3ZmZmZjMxZWNjZGEgaW4gV2ViQ29yZTo6
TWVkaWFDb250cm9sc0FwcGxlOjpjcmVhdGVDb250cm9scyhXZWJDb3JlOjpEb2N1bWVudCYpICgp
CiAgICBhdCAvaG9tZS9vc3N5L1dlYktpdC9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRp
YUNvbnRyb2xzQXBwbGUuY3BwOjc0CiMxOCAweDAwMDA3ZmZmZjMxZWNiY2IgaW4gV2ViQ29yZTo6
TWVkaWFDb250cm9sczo6Y3JlYXRlKFdlYkNvcmU6OkRvY3VtZW50JikgKCkKICAgIGF0IC9ob21l
L29zc3kvV2ViS2l0L1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbHNBcHBs
ZS5jcHA6NjAKIzE5IDB4MDAwMDdmZmZmMjZlZDEzZiBpbiBXZWJDb3JlOjpIVE1MTWVkaWFFbGVt
ZW50OjpjcmVhdGVNZWRpYUNvbnRyb2xzKCkgKCkKICAgIGF0IC9ob21lL29zc3kvV2ViS2l0L1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHA6NTMwOQojMjAgMHgwMDAwN2Zm
ZmYyNmVkMzlkIGluIFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OmNvbmZpZ3VyZU1lZGlhQ29u
dHJvbHMoKSAoKQogICAgYXQgL2hvbWUvb3NzeS9XZWJLaXQvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MTWVkaWFFbGVtZW50LmNwcDo1MzU0CiMyMSAweDAwMDA3ZmZmZjI2ZGYzYTEgaW4gV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudDo6aW5zZXJ0ZWRJbnRvKFdlYkNvcmU6OkNvbnRhaW5lck5vZGUm
KSAoKQogICAgYXQgL2hvbWUvb3NzeS9XZWJLaXQvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVk
aWFFbGVtZW50LmNwcDo3MjQKIzIyIDB4MDAwMDdmZmZmMjQ4YWZhOSBpbiBXZWJDb3JlOjpDaGls
ZE5vZGVJbnNlcnRpb25Ob3RpZmllcjo6bm90aWZ5Tm9kZUluc2VydGVkSW50b0RvY3VtZW50KFdl
YkNvcmU6Ok5vZGUmKSAoKQogICAgYXQgL2hvbWUvb3NzeS9XZWJLaXQvU291cmNlL1dlYkNvcmUv
ZG9tL0NvbnRhaW5lck5vZGVBbGdvcml0aG1zLmg6MjAwCiMyMyAweDAwMDA3ZmZmZjI0OGIxNjEg
aW4gV2ViQ29yZTo6Q2hpbGROb2RlSW5zZXJ0aW9uTm90aWZpZXI6Om5vdGlmeShXZWJDb3JlOjpO
b2RlJikgKCkKICAgIGF0IC9ob21lL29zc3kvV2ViS2l0L1NvdXJjZS9XZWJDb3JlL2RvbS9Db250
YWluZXJOb2RlQWxnb3JpdGhtcy5oOjIyOAojMjQgMHgwMDAwN2ZmZmYyNDg4YmRlIGluIFdlYkNv
cmU6OkNvbnRhaW5lck5vZGU6OnBhcnNlckFwcGVuZENoaWxkKFdURjo6UGFzc1JlZlB0cjxXZWJD
b3JlOjpOb2RlPikgKCkKICAgIGF0IC9ob21lL29zc3kvV2ViS2l0L1NvdXJjZS9XZWJDb3JlL2Rv
bS9Db250YWluZXJOb2RlLmNwcDo3NDQKIzI1IDB4MDAwMDdmZmZmMjdiN2E0MCBpbiBXZWJDb3Jl
OjppbnNlcnQoV2ViQ29yZTo6SFRNTENvbnN0cnVjdGlvblNpdGVUYXNrJikgKCkKICAgIGF0IC9o
b21lL29zc3kvV2ViS2l0L1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxDb25zdHJ1Y3Rp
b25TaXRlLmNwcDo5NgojMjYgMHgwMDAwN2ZmZmYyN2I3YTk5IGluIFdlYkNvcmU6OmV4ZWN1dGVJ
bnNlcnRUYXNrKFdlYkNvcmU6OkhUTUxDb25zdHJ1Y3Rpb25TaXRlVGFzayYpICgpCiAgICBhdCAv
aG9tZS9vc3N5L1dlYktpdC9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MQ29uc3RydWN0
aW9uU2l0ZS5jcHA6MTAzCiMyNyAweDAwMDA3ZmZmZjI3YjdjOWYgaW4gV2ViQ29yZTo6ZXhlY3V0
ZVRhc2soV2ViQ29yZTo6SFRNTENvbnN0cnVjdGlvblNpdGVUYXNrJikgKCkKICAgIGF0IC9ob21l
L29zc3kvV2ViS2l0L1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxDb25zdHJ1Y3Rpb25T
aXRlLmNwcDoxNDEKIzI4IDB4MDAwMDdmZmZmMjdiN2ZjNCBpbiBXZWJDb3JlOjpIVE1MQ29uc3Ry
dWN0aW9uU2l0ZTo6ZXhlY3V0ZVF1ZXVlZFRhc2tzKCkgKCkKICAgIGF0IC9ob21lL29zc3kvV2Vi
S2l0L1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxDb25zdHJ1Y3Rpb25TaXRlLmNwcDox
OTEKIzI5IDB4MDAwMDdmZmZmMjdlNTMxMCBpbiBXZWJDb3JlOjpIVE1MVHJlZUJ1aWxkZXI6OmNv
bnN0cnVjdFRyZWUoV2ViQ29yZTo6QXRvbWljSFRNTFRva2VuKikgKCkKICAgIGF0IC9ob21lL29z
c3kvV2ViS2l0L1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxUcmVlQnVpbGRlci5jcHA6
MzY2CiMzMCAweDAwMDA3ZmZmZjI3YzA0NTQgaW4gV2ViQ29yZTo6SFRNTERvY3VtZW50UGFyc2Vy
Ojpjb25zdHJ1Y3RUcmVlRnJvbUhUTUxUb2tlbihXZWJDb3JlOjpIVE1MVG9rZW4mKSAoKQogICAg
YXQgL2hvbWUvb3NzeS9XZWJLaXQvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTERvY3Vt
ZW50UGFyc2VyLmNwcDozNTIKIzMxIDB4MDAwMDdmZmZmMjdjMDBkYiBpbiBXZWJDb3JlOjpIVE1M
RG9jdW1lbnRQYXJzZXI6OnB1bXBUb2tlbml6ZXIoV2ViQ29yZTo6SFRNTERvY3VtZW50UGFyc2Vy
OjpTeW5jaHJvbm91c01vZGUpICgpCiAgICBhdCAvaG9tZS9vc3N5L1dlYktpdC9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3BhcnNlci9IVE1MRG9jdW1lbnRQYXJzZXIuY3BwOjMwOQojMzIgMHgwMDAwN2Zm
ZmYyN2JmOGUxIGluIFdlYkNvcmU6OkhUTUxEb2N1bWVudFBhcnNlcjo6cHVtcFRva2VuaXplcklm
UG9zc2libGUoV2ViQ29yZTo6SFRNTERvY3VtZW50UGFyc2VyOjpTeW5jaHJvbm91c01vZGUpICgp
CiAgICBhdCAvaG9tZS9vc3N5L1dlYktpdC9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1M
RG9jdW1lbnRQYXJzZXIuY3BwOjE4OQojMzMgMHgwMDAwN2ZmZmYyN2MwNWIxIGluIFdlYkNvcmU6
OkhUTUxEb2N1bWVudFBhcnNlcjo6aW5zZXJ0KFdlYkNvcmU6OlNlZ21lbnRlZFN0cmluZyBjb25z
dCYpICgpCiAgICBhdCAvaG9tZS9vc3N5L1dlYktpdC9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNl
ci9IVE1MRG9jdW1lbnRQYXJzZXIuY3BwOjM4MgojMzQgMHgwMDAwN2ZmZmYyNGE4YjdmIGluIFdl
YkNvcmU6OkRvY3VtZW50Ojp3cml0ZShXZWJDb3JlOjpTZWdtZW50ZWRTdHJpbmcgY29uc3QmLCBX
ZWJDb3JlOjpEb2N1bWVudCopICgpCiAgICBhdCAvaG9tZS9vc3N5L1dlYktpdC9Tb3VyY2UvV2Vi
Q29yZS9kb20vRG9jdW1lbnQuY3BwOjI1NTcKIzM1IDB4MDAwMDdmZmZmMzM0MTM1YiBpbiBXZWJD
b3JlOjpkb2N1bWVudFdyaXRlKEpTQzo6RXhlY1N0YXRlKiwgV2ViQ29yZTo6SFRNTERvY3VtZW50
KiwgV2ViQ29yZTo6TmV3bGluZVJlcXVpcmVtZW50KSAoKQogICAgYXQgL2hvbWUvb3NzeS9XZWJL
aXQvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MRG9jdW1lbnRDdXN0b20uY3BwOjE1
NQojMzYgMHgwMDAwN2ZmZmYzMzQxM2FmIGluIFdlYkNvcmU6OkpTSFRNTERvY3VtZW50Ojp3cml0
ZShKU0M6OkV4ZWNTdGF0ZSopICgpCiAgICBhdCAvaG9tZS9vc3N5L1dlYktpdC9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0hUTUxEb2N1bWVudEN1c3RvbS5jcHA6MTYwCiMzNyAweDAwMDA3
ZmZmZjM1NWUyNjAgaW4gV2ViQ29yZTo6anNIVE1MRG9jdW1lbnRQcm90b3R5cGVGdW5jdGlvbldy
aXRlKEpTQzo6RXhlY1N0YXRlKikgKCkKICAgIGF0IC9ob21lL29zc3kvV2ViS2l0L1dlYktpdEJ1
aWxkL0RlYnVnL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNIVE1MRG9jdW1lbnQuY3BwOjY4MAoj
MzggMHgwMDAwN2ZmZjliNzkwMGI0IGluID8/ICgpCiMzOSAweDAwMDA3ZmZmZmZmZmI2NDAgaW4g
Pz8gKCkKIzQwIDB4MDAwMDdmZmZmNzNmODhmNSBpbiBsbGludF9vcF9jYWxsICgpIGZyb20gL2hv
bWUvb3NzeS9XZWJLaXQvV2ViS2l0QnVpbGQvRGVidWcvbGliL2xpYmphdmFzY3JpcHRjb3JlX2Vm
bC5zby4wCiM0MSAweDAwMDAwMDAwMDAwMDAwMDAgaW4gPz8gKCkKQSBkZWJ1Z2dpbmcgc2Vzc2lv
biBpcyBhY3RpdmUuCgoJSW5mZXJpb3IgMSBbcHJvY2VzcyAxNzI2N10gd2lsbCBiZSBraWxsZWQu
CgpRdWl0IGFueXdheT8gKHkgb3Igbikg
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>239541</attachid>
            <date>2014-10-09 08:54:39 -0700</date>
            <delta_ts>2014-10-09 12:25:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-131044-20141009175542.patch</filename>
            <type>text/plain</type>
            <size>18331</size>
            <attacher name="Adrien Destugues">pulkomandy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc0NTAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTkyNGZjZWE4MTM2NzQx
MmY0ODllZjMzMDdiNzIxODk2NmQzMDA2Yy4uZmU1NWUzOGRmNDg3NmIyY2RlMDU2YjgxYjZiYmQ4
YzNkOTY1YzM0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDE0LTEwLTA5ICBBZHJp
ZW4gRGVzdHVndWVzICA8cHVsa29tYW5keUBnbWFpbC5jb20+CisKKyAgICAgICAgRml4IHRlc3Qg
Y3Jhc2ggb24gRUZMIGFuZCBIYWlrdS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEzMTA0NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0czogZml4ZXMgZXhpc3RpbmcgdGVzdHMuCisgICAg
ICAgIFRoZSBwc2V1ZG8gaWQgY2Fubm90IGJlIHNldCBiZWZvcmUgdGhlIGVsZW1lbnRzIGdldCBh
IHR5cGUuCisKKyAgICAgICAgKiBodG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xQYW5lbE11dGVCdXR0b25FbGVtZW50OjpN
ZWRpYUNvbnRyb2xQYW5lbE11dGVCdXR0b25FbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6Ok1l
ZGlhQ29udHJvbFBhbmVsTXV0ZUJ1dHRvbkVsZW1lbnQ6OmNyZWF0ZSk6CisgICAgICAgIChXZWJD
b3JlOjpNZWRpYUNvbnRyb2xWb2x1bWVTbGlkZXJNdXRlQnV0dG9uRWxlbWVudDo6TWVkaWFDb250
cm9sVm9sdW1lU2xpZGVyTXV0ZUJ1dHRvbkVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6TWVk
aWFDb250cm9sVm9sdW1lU2xpZGVyTXV0ZUJ1dHRvbkVsZW1lbnQ6OmNyZWF0ZSk6CisgICAgICAg
IChXZWJDb3JlOjpNZWRpYUNvbnRyb2xQbGF5QnV0dG9uRWxlbWVudDo6TWVkaWFDb250cm9sUGxh
eUJ1dHRvbkVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sUGxheUJ1dHRv
bkVsZW1lbnQ6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xPdmVybGF5
UGxheUJ1dHRvbkVsZW1lbnQ6Ok1lZGlhQ29udHJvbE92ZXJsYXlQbGF5QnV0dG9uRWxlbWVudCk6
CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xPdmVybGF5UGxheUJ1dHRvbkVsZW1lbnQ6
OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xTZWVrRm9yd2FyZEJ1dHRv
bkVsZW1lbnQ6Ok1lZGlhQ29udHJvbFNlZWtGb3J3YXJkQnV0dG9uRWxlbWVudCk6CisgICAgICAg
IChXZWJDb3JlOjpNZWRpYUNvbnRyb2xTZWVrRm9yd2FyZEJ1dHRvbkVsZW1lbnQ6OmNyZWF0ZSk6
CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xTZWVrQmFja0J1dHRvbkVsZW1lbnQ6Ok1l
ZGlhQ29udHJvbFNlZWtCYWNrQnV0dG9uRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpNZWRp
YUNvbnRyb2xTZWVrQmFja0J1dHRvbkVsZW1lbnQ6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpNZWRpYUNvbnRyb2xSZXdpbmRCdXR0b25FbGVtZW50OjpNZWRpYUNvbnRyb2xSZXdpbmRCdXR0
b25FbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFJld2luZEJ1dHRvbkVs
ZW1lbnQ6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xSZXR1cm5Ub1Jl
YWx0aW1lQnV0dG9uRWxlbWVudDo6TWVkaWFDb250cm9sUmV0dXJuVG9SZWFsdGltZUJ1dHRvbkVs
ZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sUmV0dXJuVG9SZWFsdGltZUJ1
dHRvbkVsZW1lbnQ6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xUb2dn
bGVDbG9zZWRDYXB0aW9uc0J1dHRvbkVsZW1lbnQ6Ok1lZGlhQ29udHJvbFRvZ2dsZUNsb3NlZENh
cHRpb25zQnV0dG9uRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xUb2dn
bGVDbG9zZWRDYXB0aW9uc0J1dHRvbkVsZW1lbnQ6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpNZWRpYUNvbnRyb2xUaW1lbGluZUVsZW1lbnQ6Ok1lZGlhQ29udHJvbFRpbWVsaW5lRWxlbWVu
dCk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xUaW1lbGluZUVsZW1lbnQ6OmNyZWF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xQYW5lbFZvbHVtZVNsaWRlckVsZW1l
bnQ6Ok1lZGlhQ29udHJvbFBhbmVsVm9sdW1lU2xpZGVyRWxlbWVudCk6CisgICAgICAgIChXZWJD
b3JlOjpNZWRpYUNvbnRyb2xQYW5lbFZvbHVtZVNsaWRlckVsZW1lbnQ6OmNyZWF0ZSk6CisgICAg
ICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xGdWxsc2NyZWVuVm9sdW1lU2xpZGVyRWxlbWVudDo6
TWVkaWFDb250cm9sRnVsbHNjcmVlblZvbHVtZVNsaWRlckVsZW1lbnQpOgorICAgICAgICAoV2Vi
Q29yZTo6TWVkaWFDb250cm9sRnVsbHNjcmVlblZvbHVtZVNsaWRlckVsZW1lbnQ6OmNyZWF0ZSk6
CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xGdWxsc2NyZWVuQnV0dG9uRWxlbWVudDo6
TWVkaWFDb250cm9sRnVsbHNjcmVlbkJ1dHRvbkVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6
TWVkaWFDb250cm9sRnVsbHNjcmVlbkJ1dHRvbkVsZW1lbnQ6OmNyZWF0ZSk6CisgICAgICAgIChX
ZWJDb3JlOjpNZWRpYUNvbnRyb2xGdWxsc2NyZWVuVm9sdW1lTWluQnV0dG9uRWxlbWVudDo6TWVk
aWFDb250cm9sRnVsbHNjcmVlblZvbHVtZU1pbkJ1dHRvbkVsZW1lbnQpOgorICAgICAgICAoV2Vi
Q29yZTo6TWVkaWFDb250cm9sRnVsbHNjcmVlblZvbHVtZU1pbkJ1dHRvbkVsZW1lbnQ6OmNyZWF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xGdWxsc2NyZWVuVm9sdW1lTWF4QnV0
dG9uRWxlbWVudDo6TWVkaWFDb250cm9sRnVsbHNjcmVlblZvbHVtZU1heEJ1dHRvbkVsZW1lbnQp
OgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sRnVsbHNjcmVlblZvbHVtZU1heEJ1dHRv
bkVsZW1lbnQ6OmNyZWF0ZSk6CisKIDIwMTQtMTAtMDkgIFBoaWxpcCBDaGltZW50byAgPHBoaWxp
cC5jaGltZW50b0BnbWFpbC5jb20+CiAKICAgICAgICAgW0dUS10gTmV0c2NhcGUgcGx1Z2luIEFQ
SSBzeW1ib2wgdXNlZCBvdXRzaWRlIGZlYXR1cmUgZ3VhcmRzCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHAKaW5kZXggMjcxZjA2YTM0
NTlkZTIzMDU4MzFkMThlNDA4ZDk5NzNkYTM3ZGMyMy4uOGU5ZDI1ZmYyZmFjMmQyMjQzMDNmODVm
OTQ5MTcxNGQ4MzAwMmEzZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cv
TWVkaWFDb250cm9sRWxlbWVudHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93
L01lZGlhQ29udHJvbEVsZW1lbnRzLmNwcApAQCAtNDA3LDcgKzQwNyw2IEBAIE1lZGlhQ29udHJv
bFBhbmVsTXV0ZUJ1dHRvbkVsZW1lbnQ6Ok1lZGlhQ29udHJvbFBhbmVsTXV0ZUJ1dHRvbkVsZW1l
bnQoRG9jdW1lbnQmCiAgICAgOiBNZWRpYUNvbnRyb2xNdXRlQnV0dG9uRWxlbWVudChkb2N1bWVu
dCwgTWVkaWFNdXRlQnV0dG9uKQogICAgICwgbV9jb250cm9scyhjb250cm9scykKIHsKLSAgICBz
ZXRQc2V1ZG8oQXRvbWljU3RyaW5nKCItd2Via2l0LW1lZGlhLWNvbnRyb2xzLW11dGUtYnV0dG9u
IiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCkpOwogfQogCiBQYXNzUmVmUHRy
PE1lZGlhQ29udHJvbFBhbmVsTXV0ZUJ1dHRvbkVsZW1lbnQ+IE1lZGlhQ29udHJvbFBhbmVsTXV0
ZUJ1dHRvbkVsZW1lbnQ6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1lbnQsIE1lZGlhQ29udHJvbHMq
IGNvbnRyb2xzKQpAQCAtNDE3LDYgKzQxNiw3IEBAIFBhc3NSZWZQdHI8TWVkaWFDb250cm9sUGFu
ZWxNdXRlQnV0dG9uRWxlbWVudD4gTWVkaWFDb250cm9sUGFuZWxNdXRlQnV0dG9uRWxlbWVuCiAg
ICAgUmVmUHRyPE1lZGlhQ29udHJvbFBhbmVsTXV0ZUJ1dHRvbkVsZW1lbnQ+IGJ1dHRvbiA9IGFk
b3B0UmVmKG5ldyBNZWRpYUNvbnRyb2xQYW5lbE11dGVCdXR0b25FbGVtZW50KGRvY3VtZW50LCBj
b250cm9scykpOwogICAgIGJ1dHRvbi0+ZW5zdXJlVXNlckFnZW50U2hhZG93Um9vdCgpOwogICAg
IGJ1dHRvbi0+c2V0VHlwZSgiYnV0dG9uIik7CisgICAgYnV0dG9uLT5zZXRQc2V1ZG8oQXRvbWlj
U3RyaW5nKCItd2Via2l0LW1lZGlhLWNvbnRyb2xzLW11dGUtYnV0dG9uIiwgQXRvbWljU3RyaW5n
OjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCkpOwogICAgIHJldHVybiBidXR0b24ucmVsZWFzZSgpOwog
fQogCkBAIC00MzMsNyArNDMzLDYgQEAgdm9pZCBNZWRpYUNvbnRyb2xQYW5lbE11dGVCdXR0b25F
bGVtZW50OjpkZWZhdWx0RXZlbnRIYW5kbGVyKEV2ZW50KiBldmVudCkKIE1lZGlhQ29udHJvbFZv
bHVtZVNsaWRlck11dGVCdXR0b25FbGVtZW50OjpNZWRpYUNvbnRyb2xWb2x1bWVTbGlkZXJNdXRl
QnV0dG9uRWxlbWVudChEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAgOiBNZWRpYUNvbnRyb2xNdXRl
QnV0dG9uRWxlbWVudChkb2N1bWVudCwgTWVkaWFNdXRlQnV0dG9uKQogewotICAgIHNldFBzZXVk
byhBdG9taWNTdHJpbmcoIi13ZWJraXQtbWVkaWEtY29udHJvbHMtdm9sdW1lLXNsaWRlci1tdXRl
LWJ1dHRvbiIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpKTsKIH0KIAogUGFz
c1JlZlB0cjxNZWRpYUNvbnRyb2xWb2x1bWVTbGlkZXJNdXRlQnV0dG9uRWxlbWVudD4gTWVkaWFD
b250cm9sVm9sdW1lU2xpZGVyTXV0ZUJ1dHRvbkVsZW1lbnQ6OmNyZWF0ZShEb2N1bWVudCYgZG9j
dW1lbnQpCkBAIC00NDEsNiArNDQwLDcgQEAgUGFzc1JlZlB0cjxNZWRpYUNvbnRyb2xWb2x1bWVT
bGlkZXJNdXRlQnV0dG9uRWxlbWVudD4gTWVkaWFDb250cm9sVm9sdW1lU2xpZGVyTXUKICAgICBS
ZWZQdHI8TWVkaWFDb250cm9sVm9sdW1lU2xpZGVyTXV0ZUJ1dHRvbkVsZW1lbnQ+IGJ1dHRvbiA9
IGFkb3B0UmVmKG5ldyBNZWRpYUNvbnRyb2xWb2x1bWVTbGlkZXJNdXRlQnV0dG9uRWxlbWVudChk
b2N1bWVudCkpOwogICAgIGJ1dHRvbi0+ZW5zdXJlVXNlckFnZW50U2hhZG93Um9vdCgpOwogICAg
IGJ1dHRvbi0+c2V0VHlwZSgiYnV0dG9uIik7CisgICAgYnV0dG9uLT5zZXRQc2V1ZG8oQXRvbWlj
U3RyaW5nKCItd2Via2l0LW1lZGlhLWNvbnRyb2xzLXZvbHVtZS1zbGlkZXItbXV0ZS1idXR0b24i
LCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSk7CiAgICAgcmV0dXJuIGJ1dHRv
bi5yZWxlYXNlKCk7CiB9CiAKQEAgLTQ0OSw3ICs0NDksNiBAQCBQYXNzUmVmUHRyPE1lZGlhQ29u
dHJvbFZvbHVtZVNsaWRlck11dGVCdXR0b25FbGVtZW50PiBNZWRpYUNvbnRyb2xWb2x1bWVTbGlk
ZXJNdQogTWVkaWFDb250cm9sUGxheUJ1dHRvbkVsZW1lbnQ6Ok1lZGlhQ29udHJvbFBsYXlCdXR0
b25FbGVtZW50KERvY3VtZW50JiBkb2N1bWVudCkKICAgICA6IE1lZGlhQ29udHJvbElucHV0RWxl
bWVudChkb2N1bWVudCwgTWVkaWFQbGF5QnV0dG9uKQogewotICAgIHNldFBzZXVkbyhBdG9taWNT
dHJpbmcoIi13ZWJraXQtbWVkaWEtY29udHJvbHMtcGxheS1idXR0b24iLCBBdG9taWNTdHJpbmc6
OkNvbnN0cnVjdEZyb21MaXRlcmFsKSk7CiB9CiAKIFBhc3NSZWZQdHI8TWVkaWFDb250cm9sUGxh
eUJ1dHRvbkVsZW1lbnQ+IE1lZGlhQ29udHJvbFBsYXlCdXR0b25FbGVtZW50OjpjcmVhdGUoRG9j
dW1lbnQmIGRvY3VtZW50KQpAQCAtNDU3LDYgKzQ1Niw3IEBAIFBhc3NSZWZQdHI8TWVkaWFDb250
cm9sUGxheUJ1dHRvbkVsZW1lbnQ+IE1lZGlhQ29udHJvbFBsYXlCdXR0b25FbGVtZW50OjpjcmVh
dGUoCiAgICAgUmVmUHRyPE1lZGlhQ29udHJvbFBsYXlCdXR0b25FbGVtZW50PiBidXR0b24gPSBh
ZG9wdFJlZihuZXcgTWVkaWFDb250cm9sUGxheUJ1dHRvbkVsZW1lbnQoZG9jdW1lbnQpKTsKICAg
ICBidXR0b24tPmVuc3VyZVVzZXJBZ2VudFNoYWRvd1Jvb3QoKTsKICAgICBidXR0b24tPnNldFR5
cGUoImJ1dHRvbiIpOworICAgIGJ1dHRvbi0+c2V0UHNldWRvKEF0b21pY1N0cmluZygiLXdlYmtp
dC1tZWRpYS1jb250cm9scy1wbGF5LWJ1dHRvbiIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJv
bUxpdGVyYWwpKTsKICAgICByZXR1cm4gYnV0dG9uLnJlbGVhc2UoKTsKIH0KIApAQCAtNDgzLDcg
KzQ4Myw2IEBAIHZvaWQgTWVkaWFDb250cm9sUGxheUJ1dHRvbkVsZW1lbnQ6OnVwZGF0ZURpc3Bs
YXlUeXBlKCkKIE1lZGlhQ29udHJvbE92ZXJsYXlQbGF5QnV0dG9uRWxlbWVudDo6TWVkaWFDb250
cm9sT3ZlcmxheVBsYXlCdXR0b25FbGVtZW50KERvY3VtZW50JiBkb2N1bWVudCkKICAgICA6IE1l
ZGlhQ29udHJvbElucHV0RWxlbWVudChkb2N1bWVudCwgTWVkaWFPdmVybGF5UGxheUJ1dHRvbikK
IHsKLSAgICBzZXRQc2V1ZG8oQXRvbWljU3RyaW5nKCItd2Via2l0LW1lZGlhLWNvbnRyb2xzLW92
ZXJsYXktcGxheS1idXR0b24iLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSk7
CiB9CiAKIFBhc3NSZWZQdHI8TWVkaWFDb250cm9sT3ZlcmxheVBsYXlCdXR0b25FbGVtZW50PiBN
ZWRpYUNvbnRyb2xPdmVybGF5UGxheUJ1dHRvbkVsZW1lbnQ6OmNyZWF0ZShEb2N1bWVudCYgZG9j
dW1lbnQpCkBAIC00OTEsNiArNDkwLDcgQEAgUGFzc1JlZlB0cjxNZWRpYUNvbnRyb2xPdmVybGF5
UGxheUJ1dHRvbkVsZW1lbnQ+IE1lZGlhQ29udHJvbE92ZXJsYXlQbGF5QnV0dG9uRWwKICAgICBS
ZWZQdHI8TWVkaWFDb250cm9sT3ZlcmxheVBsYXlCdXR0b25FbGVtZW50PiBidXR0b24gPSBhZG9w
dFJlZihuZXcgTWVkaWFDb250cm9sT3ZlcmxheVBsYXlCdXR0b25FbGVtZW50KGRvY3VtZW50KSk7
CiAgICAgYnV0dG9uLT5lbnN1cmVVc2VyQWdlbnRTaGFkb3dSb290KCk7CiAgICAgYnV0dG9uLT5z
ZXRUeXBlKCJidXR0b24iKTsKKyAgICBidXR0b24tPnNldFBzZXVkbyhBdG9taWNTdHJpbmcoIi13
ZWJraXQtbWVkaWEtY29udHJvbHMtb3ZlcmxheS1wbGF5LWJ1dHRvbiIsIEF0b21pY1N0cmluZzo6
Q29uc3RydWN0RnJvbUxpdGVyYWwpKTsKICAgICByZXR1cm4gYnV0dG9uLnJlbGVhc2UoKTsKIH0K
IApAQCAtNTA2LDkgKzUwNiw5IEBAIHZvaWQgTWVkaWFDb250cm9sT3ZlcmxheVBsYXlCdXR0b25F
bGVtZW50OjpkZWZhdWx0RXZlbnRIYW5kbGVyKEV2ZW50KiBldmVudCkKIAogdm9pZCBNZWRpYUNv
bnRyb2xPdmVybGF5UGxheUJ1dHRvbkVsZW1lbnQ6OnVwZGF0ZURpc3BsYXlUeXBlKCkKIHsKLSAg
ICBpZiAobWVkaWFDb250cm9sbGVyKCktPmNhblBsYXkoKSkgeworICAgIGlmIChtZWRpYUNvbnRy
b2xsZXIoKS0+Y2FuUGxheSgpKQogICAgICAgICBzaG93KCk7Ci0gICAgfSBlbHNlCisgICAgZWxz
ZQogICAgICAgICBoaWRlKCk7CiB9CiAKQEAgLTUxNyw3ICs1MTcsNiBAQCB2b2lkIE1lZGlhQ29u
dHJvbE92ZXJsYXlQbGF5QnV0dG9uRWxlbWVudDo6dXBkYXRlRGlzcGxheVR5cGUoKQogTWVkaWFD
b250cm9sU2Vla0ZvcndhcmRCdXR0b25FbGVtZW50OjpNZWRpYUNvbnRyb2xTZWVrRm9yd2FyZEJ1
dHRvbkVsZW1lbnQoRG9jdW1lbnQmIGRvY3VtZW50KQogICAgIDogTWVkaWFDb250cm9sU2Vla0J1
dHRvbkVsZW1lbnQoZG9jdW1lbnQsIE1lZGlhU2Vla0ZvcndhcmRCdXR0b24pCiB7Ci0gICAgc2V0
UHNldWRvKEF0b21pY1N0cmluZygiLXdlYmtpdC1tZWRpYS1jb250cm9scy1zZWVrLWZvcndhcmQt
YnV0dG9uIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCkpOwogfQogCiBQYXNz
UmVmUHRyPE1lZGlhQ29udHJvbFNlZWtGb3J3YXJkQnV0dG9uRWxlbWVudD4gTWVkaWFDb250cm9s
U2Vla0ZvcndhcmRCdXR0b25FbGVtZW50OjpjcmVhdGUoRG9jdW1lbnQmIGRvY3VtZW50KQpAQCAt
NTI1LDYgKzUyNCw3IEBAIFBhc3NSZWZQdHI8TWVkaWFDb250cm9sU2Vla0ZvcndhcmRCdXR0b25F
bGVtZW50PiBNZWRpYUNvbnRyb2xTZWVrRm9yd2FyZEJ1dHRvbkVsCiAgICAgUmVmUHRyPE1lZGlh
Q29udHJvbFNlZWtGb3J3YXJkQnV0dG9uRWxlbWVudD4gYnV0dG9uID0gYWRvcHRSZWYobmV3IE1l
ZGlhQ29udHJvbFNlZWtGb3J3YXJkQnV0dG9uRWxlbWVudChkb2N1bWVudCkpOwogICAgIGJ1dHRv
bi0+ZW5zdXJlVXNlckFnZW50U2hhZG93Um9vdCgpOwogICAgIGJ1dHRvbi0+c2V0VHlwZSgiYnV0
dG9uIik7CisgICAgYnV0dG9uLT5zZXRQc2V1ZG8oQXRvbWljU3RyaW5nKCItd2Via2l0LW1lZGlh
LWNvbnRyb2xzLXNlZWstZm9yd2FyZC1idXR0b24iLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZy
b21MaXRlcmFsKSk7CiAgICAgcmV0dXJuIGJ1dHRvbi5yZWxlYXNlKCk7CiB9CiAKQEAgLTUzMyw3
ICs1MzMsNiBAQCBQYXNzUmVmUHRyPE1lZGlhQ29udHJvbFNlZWtGb3J3YXJkQnV0dG9uRWxlbWVu
dD4gTWVkaWFDb250cm9sU2Vla0ZvcndhcmRCdXR0b25FbAogTWVkaWFDb250cm9sU2Vla0JhY2tC
dXR0b25FbGVtZW50OjpNZWRpYUNvbnRyb2xTZWVrQmFja0J1dHRvbkVsZW1lbnQoRG9jdW1lbnQm
IGRvY3VtZW50KQogICAgIDogTWVkaWFDb250cm9sU2Vla0J1dHRvbkVsZW1lbnQoZG9jdW1lbnQs
IE1lZGlhU2Vla0JhY2tCdXR0b24pCiB7Ci0gICAgc2V0UHNldWRvKEF0b21pY1N0cmluZygiLXdl
YmtpdC1tZWRpYS1jb250cm9scy1zZWVrLWJhY2stYnV0dG9uIiwgQXRvbWljU3RyaW5nOjpDb25z
dHJ1Y3RGcm9tTGl0ZXJhbCkpOwogfQogCiBQYXNzUmVmUHRyPE1lZGlhQ29udHJvbFNlZWtCYWNr
QnV0dG9uRWxlbWVudD4gTWVkaWFDb250cm9sU2Vla0JhY2tCdXR0b25FbGVtZW50OjpjcmVhdGUo
RG9jdW1lbnQmIGRvY3VtZW50KQpAQCAtNTQxLDYgKzU0MCw3IEBAIFBhc3NSZWZQdHI8TWVkaWFD
b250cm9sU2Vla0JhY2tCdXR0b25FbGVtZW50PiBNZWRpYUNvbnRyb2xTZWVrQmFja0J1dHRvbkVs
ZW1lbnQ6CiAgICAgUmVmUHRyPE1lZGlhQ29udHJvbFNlZWtCYWNrQnV0dG9uRWxlbWVudD4gYnV0
dG9uID0gYWRvcHRSZWYobmV3IE1lZGlhQ29udHJvbFNlZWtCYWNrQnV0dG9uRWxlbWVudChkb2N1
bWVudCkpOwogICAgIGJ1dHRvbi0+ZW5zdXJlVXNlckFnZW50U2hhZG93Um9vdCgpOwogICAgIGJ1
dHRvbi0+c2V0VHlwZSgiYnV0dG9uIik7CisgICAgYnV0dG9uLT5zZXRQc2V1ZG8oQXRvbWljU3Ry
aW5nKCItd2Via2l0LW1lZGlhLWNvbnRyb2xzLXNlZWstYmFjay1idXR0b24iLCBBdG9taWNTdHJp
bmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSk7CiAgICAgcmV0dXJuIGJ1dHRvbi5yZWxlYXNlKCk7
CiB9CiAKQEAgLTU0OSw3ICs1NDksNiBAQCBQYXNzUmVmUHRyPE1lZGlhQ29udHJvbFNlZWtCYWNr
QnV0dG9uRWxlbWVudD4gTWVkaWFDb250cm9sU2Vla0JhY2tCdXR0b25FbGVtZW50OgogTWVkaWFD
b250cm9sUmV3aW5kQnV0dG9uRWxlbWVudDo6TWVkaWFDb250cm9sUmV3aW5kQnV0dG9uRWxlbWVu
dChEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAgOiBNZWRpYUNvbnRyb2xJbnB1dEVsZW1lbnQoZG9j
dW1lbnQsIE1lZGlhUmV3aW5kQnV0dG9uKQogewotICAgIHNldFBzZXVkbyhBdG9taWNTdHJpbmco
Ii13ZWJraXQtbWVkaWEtY29udHJvbHMtcmV3aW5kLWJ1dHRvbiIsIEF0b21pY1N0cmluZzo6Q29u
c3RydWN0RnJvbUxpdGVyYWwpKTsKIH0KIAogUGFzc1JlZlB0cjxNZWRpYUNvbnRyb2xSZXdpbmRC
dXR0b25FbGVtZW50PiBNZWRpYUNvbnRyb2xSZXdpbmRCdXR0b25FbGVtZW50OjpjcmVhdGUoRG9j
dW1lbnQmIGRvY3VtZW50KQpAQCAtNTU3LDYgKzU1Niw3IEBAIFBhc3NSZWZQdHI8TWVkaWFDb250
cm9sUmV3aW5kQnV0dG9uRWxlbWVudD4gTWVkaWFDb250cm9sUmV3aW5kQnV0dG9uRWxlbWVudDo6
Y3JlCiAgICAgUmVmUHRyPE1lZGlhQ29udHJvbFJld2luZEJ1dHRvbkVsZW1lbnQ+IGJ1dHRvbiA9
IGFkb3B0UmVmKG5ldyBNZWRpYUNvbnRyb2xSZXdpbmRCdXR0b25FbGVtZW50KGRvY3VtZW50KSk7
CiAgICAgYnV0dG9uLT5lbnN1cmVVc2VyQWdlbnRTaGFkb3dSb290KCk7CiAgICAgYnV0dG9uLT5z
ZXRUeXBlKCJidXR0b24iKTsKKyAgICBidXR0b24tPnNldFBzZXVkbyhBdG9taWNTdHJpbmcoIi13
ZWJraXQtbWVkaWEtY29udHJvbHMtcmV3aW5kLWJ1dHRvbiIsIEF0b21pY1N0cmluZzo6Q29uc3Ry
dWN0RnJvbUxpdGVyYWwpKTsKICAgICByZXR1cm4gYnV0dG9uLnJlbGVhc2UoKTsKIH0KIApAQCAt
NTc0LDcgKzU3NCw2IEBAIHZvaWQgTWVkaWFDb250cm9sUmV3aW5kQnV0dG9uRWxlbWVudDo6ZGVm
YXVsdEV2ZW50SGFuZGxlcihFdmVudCogZXZlbnQpCiBNZWRpYUNvbnRyb2xSZXR1cm5Ub1JlYWx0
aW1lQnV0dG9uRWxlbWVudDo6TWVkaWFDb250cm9sUmV0dXJuVG9SZWFsdGltZUJ1dHRvbkVsZW1l
bnQoRG9jdW1lbnQmIGRvY3VtZW50KQogICAgIDogTWVkaWFDb250cm9sSW5wdXRFbGVtZW50KGRv
Y3VtZW50LCBNZWRpYVJldHVyblRvUmVhbHRpbWVCdXR0b24pCiB7Ci0gICAgc2V0UHNldWRvKEF0
b21pY1N0cmluZygiLXdlYmtpdC1tZWRpYS1jb250cm9scy1yZXR1cm4tdG8tcmVhbHRpbWUtYnV0
dG9uIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCkpOwogfQogCiBQYXNzUmVm
UHRyPE1lZGlhQ29udHJvbFJldHVyblRvUmVhbHRpbWVCdXR0b25FbGVtZW50PiBNZWRpYUNvbnRy
b2xSZXR1cm5Ub1JlYWx0aW1lQnV0dG9uRWxlbWVudDo6Y3JlYXRlKERvY3VtZW50JiBkb2N1bWVu
dCkKQEAgLTU4Miw2ICs1ODEsNyBAQCBQYXNzUmVmUHRyPE1lZGlhQ29udHJvbFJldHVyblRvUmVh
bHRpbWVCdXR0b25FbGVtZW50PiBNZWRpYUNvbnRyb2xSZXR1cm5Ub1JlYWx0aQogICAgIFJlZlB0
cjxNZWRpYUNvbnRyb2xSZXR1cm5Ub1JlYWx0aW1lQnV0dG9uRWxlbWVudD4gYnV0dG9uID0gYWRv
cHRSZWYobmV3IE1lZGlhQ29udHJvbFJldHVyblRvUmVhbHRpbWVCdXR0b25FbGVtZW50KGRvY3Vt
ZW50KSk7CiAgICAgYnV0dG9uLT5lbnN1cmVVc2VyQWdlbnRTaGFkb3dSb290KCk7CiAgICAgYnV0
dG9uLT5zZXRUeXBlKCJidXR0b24iKTsKKyAgICBidXR0b24tPnNldFBzZXVkbyhBdG9taWNTdHJp
bmcoIi13ZWJraXQtbWVkaWEtY29udHJvbHMtcmV0dXJuLXRvLXJlYWx0aW1lLWJ1dHRvbiIsIEF0
b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpKTsKICAgICBidXR0b24tPmhpZGUoKTsK
ICAgICByZXR1cm4gYnV0dG9uLnJlbGVhc2UoKTsKIH0KQEAgLTYwNiw3ICs2MDYsNiBAQCBNZWRp
YUNvbnRyb2xUb2dnbGVDbG9zZWRDYXB0aW9uc0J1dHRvbkVsZW1lbnQ6Ok1lZGlhQ29udHJvbFRv
Z2dsZUNsb3NlZENhcHRpb25zQgogI2lmICFQTEFURk9STShDT0NPQSkgJiYgIVBMQVRGT1JNKFdJ
TikgfHwgIVBMQVRGT1JNKEdUSykKICAgICBVTlVTRURfUEFSQU0oY29udHJvbHMpOwogI2VuZGlm
Ci0gICAgc2V0UHNldWRvKEF0b21pY1N0cmluZygiLXdlYmtpdC1tZWRpYS1jb250cm9scy10b2dn
bGUtY2xvc2VkLWNhcHRpb25zLWJ1dHRvbiIsIEF0b21pY1N0cmluZzo6Q29uc3RydWN0RnJvbUxp
dGVyYWwpKTsKIH0KIAogUGFzc1JlZlB0cjxNZWRpYUNvbnRyb2xUb2dnbGVDbG9zZWRDYXB0aW9u
c0J1dHRvbkVsZW1lbnQ+IE1lZGlhQ29udHJvbFRvZ2dsZUNsb3NlZENhcHRpb25zQnV0dG9uRWxl
bWVudDo6Y3JlYXRlKERvY3VtZW50JiBkb2N1bWVudCwgTWVkaWFDb250cm9scyogY29udHJvbHMp
CkBAIC02MTYsNiArNjE1LDcgQEAgUGFzc1JlZlB0cjxNZWRpYUNvbnRyb2xUb2dnbGVDbG9zZWRD
YXB0aW9uc0J1dHRvbkVsZW1lbnQ+IE1lZGlhQ29udHJvbFRvZ2dsZUNsb3MKICAgICBSZWZQdHI8
TWVkaWFDb250cm9sVG9nZ2xlQ2xvc2VkQ2FwdGlvbnNCdXR0b25FbGVtZW50PiBidXR0b24gPSBh
ZG9wdFJlZihuZXcgTWVkaWFDb250cm9sVG9nZ2xlQ2xvc2VkQ2FwdGlvbnNCdXR0b25FbGVtZW50
KGRvY3VtZW50LCBjb250cm9scykpOwogICAgIGJ1dHRvbi0+ZW5zdXJlVXNlckFnZW50U2hhZG93
Um9vdCgpOwogICAgIGJ1dHRvbi0+c2V0VHlwZSgiYnV0dG9uIik7CisgICAgYnV0dG9uLT5zZXRQ
c2V1ZG8oQXRvbWljU3RyaW5nKCItd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRvZ2dsZS1jbG9zZWQt
Y2FwdGlvbnMtYnV0dG9uIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCkpOwog
ICAgIGJ1dHRvbi0+aGlkZSgpOwogICAgIHJldHVybiBidXR0b24ucmVsZWFzZSgpOwogfQpAQCAt
ODM0LDcgKzgzNCw2IEBAIE1lZGlhQ29udHJvbFRpbWVsaW5lRWxlbWVudDo6TWVkaWFDb250cm9s
VGltZWxpbmVFbGVtZW50KERvY3VtZW50JiBkb2N1bWVudCwgTWVkCiAgICAgOiBNZWRpYUNvbnRy
b2xJbnB1dEVsZW1lbnQoZG9jdW1lbnQsIE1lZGlhU2xpZGVyKQogICAgICwgbV9jb250cm9scyhj
b250cm9scykKIHsKLSAgICBzZXRQc2V1ZG8oQXRvbWljU3RyaW5nKCItd2Via2l0LW1lZGlhLWNv
bnRyb2xzLXRpbWVsaW5lIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCkpOwog
fQogCiBQYXNzUmVmUHRyPE1lZGlhQ29udHJvbFRpbWVsaW5lRWxlbWVudD4gTWVkaWFDb250cm9s
VGltZWxpbmVFbGVtZW50OjpjcmVhdGUoRG9jdW1lbnQmIGRvY3VtZW50LCBNZWRpYUNvbnRyb2xz
KiBjb250cm9scykKQEAgLTg0NCw2ICs4NDMsNyBAQCBQYXNzUmVmUHRyPE1lZGlhQ29udHJvbFRp
bWVsaW5lRWxlbWVudD4gTWVkaWFDb250cm9sVGltZWxpbmVFbGVtZW50OjpjcmVhdGUoRG9jdQog
ICAgIFJlZlB0cjxNZWRpYUNvbnRyb2xUaW1lbGluZUVsZW1lbnQ+IHRpbWVsaW5lID0gYWRvcHRS
ZWYobmV3IE1lZGlhQ29udHJvbFRpbWVsaW5lRWxlbWVudChkb2N1bWVudCwgY29udHJvbHMpKTsK
ICAgICB0aW1lbGluZS0+ZW5zdXJlVXNlckFnZW50U2hhZG93Um9vdCgpOwogICAgIHRpbWVsaW5l
LT5zZXRUeXBlKCJyYW5nZSIpOworICAgIHRpbWVsaW5lLT5zZXRQc2V1ZG8oQXRvbWljU3RyaW5n
KCItd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRpbWVsaW5lIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1
Y3RGcm9tTGl0ZXJhbCkpOwogICAgIHRpbWVsaW5lLT5zZXRBdHRyaWJ1dGUocHJlY2lzaW9uQXR0
ciwgImZsb2F0Iik7CiAgICAgcmV0dXJuIHRpbWVsaW5lLnJlbGVhc2UoKTsKIH0KQEAgLTkwMiw3
ICs5MDIsNiBAQCB2b2lkIE1lZGlhQ29udHJvbFRpbWVsaW5lRWxlbWVudDo6c2V0RHVyYXRpb24o
ZG91YmxlIGR1cmF0aW9uKQogTWVkaWFDb250cm9sUGFuZWxWb2x1bWVTbGlkZXJFbGVtZW50OjpN
ZWRpYUNvbnRyb2xQYW5lbFZvbHVtZVNsaWRlckVsZW1lbnQoRG9jdW1lbnQmIGRvY3VtZW50KQog
ICAgIDogTWVkaWFDb250cm9sVm9sdW1lU2xpZGVyRWxlbWVudChkb2N1bWVudCkKIHsKLSAgICBz
ZXRQc2V1ZG8oQXRvbWljU3RyaW5nKCItd2Via2l0LW1lZGlhLWNvbnRyb2xzLXZvbHVtZS1zbGlk
ZXIiLCBBdG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSk7CiB9CiAKIFBhc3NSZWZQ
dHI8TWVkaWFDb250cm9sUGFuZWxWb2x1bWVTbGlkZXJFbGVtZW50PiBNZWRpYUNvbnRyb2xQYW5l
bFZvbHVtZVNsaWRlckVsZW1lbnQ6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1lbnQpCkBAIC05MTAs
NiArOTA5LDcgQEAgUGFzc1JlZlB0cjxNZWRpYUNvbnRyb2xQYW5lbFZvbHVtZVNsaWRlckVsZW1l
bnQ+IE1lZGlhQ29udHJvbFBhbmVsVm9sdW1lU2xpZGVyRWwKICAgICBSZWZQdHI8TWVkaWFDb250
cm9sUGFuZWxWb2x1bWVTbGlkZXJFbGVtZW50PiBzbGlkZXIgPSBhZG9wdFJlZihuZXcgTWVkaWFD
b250cm9sUGFuZWxWb2x1bWVTbGlkZXJFbGVtZW50KGRvY3VtZW50KSk7CiAgICAgc2xpZGVyLT5l
bnN1cmVVc2VyQWdlbnRTaGFkb3dSb290KCk7CiAgICAgc2xpZGVyLT5zZXRUeXBlKCJyYW5nZSIp
OworICAgIHNsaWRlci0+c2V0UHNldWRvKEF0b21pY1N0cmluZygiLXdlYmtpdC1tZWRpYS1jb250
cm9scy12b2x1bWUtc2xpZGVyIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCkp
OwogICAgIHNsaWRlci0+c2V0QXR0cmlidXRlKHByZWNpc2lvbkF0dHIsICJmbG9hdCIpOwogICAg
IHNsaWRlci0+c2V0QXR0cmlidXRlKG1heEF0dHIsICIxIik7CiAgICAgcmV0dXJuIHNsaWRlci5y
ZWxlYXNlKCk7CkBAIC05MjAsNyArOTIwLDYgQEAgUGFzc1JlZlB0cjxNZWRpYUNvbnRyb2xQYW5l
bFZvbHVtZVNsaWRlckVsZW1lbnQ+IE1lZGlhQ29udHJvbFBhbmVsVm9sdW1lU2xpZGVyRWwKIE1l
ZGlhQ29udHJvbEZ1bGxzY3JlZW5Wb2x1bWVTbGlkZXJFbGVtZW50OjpNZWRpYUNvbnRyb2xGdWxs
c2NyZWVuVm9sdW1lU2xpZGVyRWxlbWVudChEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAgOiBNZWRp
YUNvbnRyb2xWb2x1bWVTbGlkZXJFbGVtZW50KGRvY3VtZW50KQogewotICAgIHNldFBzZXVkbyhB
dG9taWNTdHJpbmcoIi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi12b2x1bWUtc2xp
ZGVyIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCkpOwogfQogCiBQYXNzUmVm
UHRyPE1lZGlhQ29udHJvbEZ1bGxzY3JlZW5Wb2x1bWVTbGlkZXJFbGVtZW50PiBNZWRpYUNvbnRy
b2xGdWxsc2NyZWVuVm9sdW1lU2xpZGVyRWxlbWVudDo6Y3JlYXRlKERvY3VtZW50JiBkb2N1bWVu
dCkKQEAgLTkyOCw2ICs5MjcsNyBAQCBQYXNzUmVmUHRyPE1lZGlhQ29udHJvbEZ1bGxzY3JlZW5W
b2x1bWVTbGlkZXJFbGVtZW50PiBNZWRpYUNvbnRyb2xGdWxsc2NyZWVuVm9sdQogICAgIFJlZlB0
cjxNZWRpYUNvbnRyb2xGdWxsc2NyZWVuVm9sdW1lU2xpZGVyRWxlbWVudD4gc2xpZGVyID0gYWRv
cHRSZWYobmV3IE1lZGlhQ29udHJvbEZ1bGxzY3JlZW5Wb2x1bWVTbGlkZXJFbGVtZW50KGRvY3Vt
ZW50KSk7CiAgICAgc2xpZGVyLT5lbnN1cmVVc2VyQWdlbnRTaGFkb3dSb290KCk7CiAgICAgc2xp
ZGVyLT5zZXRUeXBlKCJyYW5nZSIpOworICAgIHNsaWRlci0+c2V0UHNldWRvKEF0b21pY1N0cmlu
ZygiLXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLXZvbHVtZS1zbGlkZXIiLCBBdG9t
aWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSk7CiAgICAgc2xpZGVyLT5zZXRBdHRyaWJ1
dGUocHJlY2lzaW9uQXR0ciwgImZsb2F0Iik7CiAgICAgc2xpZGVyLT5zZXRBdHRyaWJ1dGUobWF4
QXR0ciwgIjEiKTsKICAgICByZXR1cm4gc2xpZGVyLnJlbGVhc2UoKTsKQEAgLTkzOCw3ICs5Mzgs
NiBAQCBQYXNzUmVmUHRyPE1lZGlhQ29udHJvbEZ1bGxzY3JlZW5Wb2x1bWVTbGlkZXJFbGVtZW50
PiBNZWRpYUNvbnRyb2xGdWxsc2NyZWVuVm9sdQogTWVkaWFDb250cm9sRnVsbHNjcmVlbkJ1dHRv
bkVsZW1lbnQ6Ok1lZGlhQ29udHJvbEZ1bGxzY3JlZW5CdXR0b25FbGVtZW50KERvY3VtZW50JiBk
b2N1bWVudCkKICAgICA6IE1lZGlhQ29udHJvbElucHV0RWxlbWVudChkb2N1bWVudCwgTWVkaWFF
bnRlckZ1bGxzY3JlZW5CdXR0b24pCiB7Ci0gICAgc2V0UHNldWRvKEF0b21pY1N0cmluZygiLXdl
YmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLWJ1dHRvbiIsIEF0b21pY1N0cmluZzo6Q29u
c3RydWN0RnJvbUxpdGVyYWwpKTsKIH0KIAogUGFzc1JlZlB0cjxNZWRpYUNvbnRyb2xGdWxsc2Ny
ZWVuQnV0dG9uRWxlbWVudD4gTWVkaWFDb250cm9sRnVsbHNjcmVlbkJ1dHRvbkVsZW1lbnQ6OmNy
ZWF0ZShEb2N1bWVudCYgZG9jdW1lbnQpCkBAIC05NDYsNiArOTQ1LDcgQEAgUGFzc1JlZlB0cjxN
ZWRpYUNvbnRyb2xGdWxsc2NyZWVuQnV0dG9uRWxlbWVudD4gTWVkaWFDb250cm9sRnVsbHNjcmVl
bkJ1dHRvbkVsZW0KICAgICBSZWZQdHI8TWVkaWFDb250cm9sRnVsbHNjcmVlbkJ1dHRvbkVsZW1l
bnQ+IGJ1dHRvbiA9IGFkb3B0UmVmKG5ldyBNZWRpYUNvbnRyb2xGdWxsc2NyZWVuQnV0dG9uRWxl
bWVudChkb2N1bWVudCkpOwogICAgIGJ1dHRvbi0+ZW5zdXJlVXNlckFnZW50U2hhZG93Um9vdCgp
OwogICAgIGJ1dHRvbi0+c2V0VHlwZSgiYnV0dG9uIik7CisgICAgYnV0dG9uLT5zZXRQc2V1ZG8o
QXRvbWljU3RyaW5nKCItd2Via2l0LW1lZGlhLWNvbnRyb2xzLWZ1bGxzY3JlZW4tYnV0dG9uIiwg
QXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCkpOwogICAgIGJ1dHRvbi0+aGlkZSgp
OwogICAgIHJldHVybiBidXR0b24ucmVsZWFzZSgpOwogfQpAQCAtOTgyLDcgKzk4Miw2IEBAIHZv
aWQgTWVkaWFDb250cm9sRnVsbHNjcmVlbkJ1dHRvbkVsZW1lbnQ6OnNldElzRnVsbHNjcmVlbihi
b29sIGlzRnVsbHNjcmVlbikKIE1lZGlhQ29udHJvbEZ1bGxzY3JlZW5Wb2x1bWVNaW5CdXR0b25F
bGVtZW50OjpNZWRpYUNvbnRyb2xGdWxsc2NyZWVuVm9sdW1lTWluQnV0dG9uRWxlbWVudChEb2N1
bWVudCYgZG9jdW1lbnQpCiAgICAgOiBNZWRpYUNvbnRyb2xJbnB1dEVsZW1lbnQoZG9jdW1lbnQs
IE1lZGlhVW5NdXRlQnV0dG9uKQogewotICAgIHNldFBzZXVkbyhBdG9taWNTdHJpbmcoIi13ZWJr
aXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi12b2x1bWUtbWluLWJ1dHRvbiIsIEF0b21pY1N0
cmluZzo6Q29uc3RydWN0RnJvbUxpdGVyYWwpKTsKIH0KIAogUGFzc1JlZlB0cjxNZWRpYUNvbnRy
b2xGdWxsc2NyZWVuVm9sdW1lTWluQnV0dG9uRWxlbWVudD4gTWVkaWFDb250cm9sRnVsbHNjcmVl
blZvbHVtZU1pbkJ1dHRvbkVsZW1lbnQ6OmNyZWF0ZShEb2N1bWVudCYgZG9jdW1lbnQpCkBAIC05
OTAsNiArOTg5LDcgQEAgUGFzc1JlZlB0cjxNZWRpYUNvbnRyb2xGdWxsc2NyZWVuVm9sdW1lTWlu
QnV0dG9uRWxlbWVudD4gTWVkaWFDb250cm9sRnVsbHNjcmVlblYKICAgICBSZWZQdHI8TWVkaWFD
b250cm9sRnVsbHNjcmVlblZvbHVtZU1pbkJ1dHRvbkVsZW1lbnQ+IGJ1dHRvbiA9IGFkb3B0UmVm
KG5ldyBNZWRpYUNvbnRyb2xGdWxsc2NyZWVuVm9sdW1lTWluQnV0dG9uRWxlbWVudChkb2N1bWVu
dCkpOwogICAgIGJ1dHRvbi0+ZW5zdXJlVXNlckFnZW50U2hhZG93Um9vdCgpOwogICAgIGJ1dHRv
bi0+c2V0VHlwZSgiYnV0dG9uIik7CisgICAgYnV0dG9uLT5zZXRQc2V1ZG8oQXRvbWljU3RyaW5n
KCItd2Via2l0LW1lZGlhLWNvbnRyb2xzLWZ1bGxzY3JlZW4tdm9sdW1lLW1pbi1idXR0b24iLCBB
dG9taWNTdHJpbmc6OkNvbnN0cnVjdEZyb21MaXRlcmFsKSk7CiAgICAgcmV0dXJuIGJ1dHRvbi5y
ZWxlYXNlKCk7CiB9CiAKQEAgLTEwMDYsOSArMTAwNiw4IEBAIHZvaWQgTWVkaWFDb250cm9sRnVs
bHNjcmVlblZvbHVtZU1pbkJ1dHRvbkVsZW1lbnQ6OmRlZmF1bHRFdmVudEhhbmRsZXIoRXZlbnQq
IGV2CiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIE1lZGlhQ29udHJvbEZ1bGxz
Y3JlZW5Wb2x1bWVNYXhCdXR0b25FbGVtZW50OjpNZWRpYUNvbnRyb2xGdWxsc2NyZWVuVm9sdW1l
TWF4QnV0dG9uRWxlbWVudChEb2N1bWVudCYgZG9jdW1lbnQpCi06IE1lZGlhQ29udHJvbElucHV0
RWxlbWVudChkb2N1bWVudCwgTWVkaWFNdXRlQnV0dG9uKQorICAgIDogTWVkaWFDb250cm9sSW5w
dXRFbGVtZW50KGRvY3VtZW50LCBNZWRpYU11dGVCdXR0b24pCiB7Ci0gICAgc2V0UHNldWRvKEF0
b21pY1N0cmluZygiLXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLXZvbHVtZS1tYXgt
YnV0dG9uIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCkpOwogfQogCiBQYXNz
UmVmUHRyPE1lZGlhQ29udHJvbEZ1bGxzY3JlZW5Wb2x1bWVNYXhCdXR0b25FbGVtZW50PiBNZWRp
YUNvbnRyb2xGdWxsc2NyZWVuVm9sdW1lTWF4QnV0dG9uRWxlbWVudDo6Y3JlYXRlKERvY3VtZW50
JiBkb2N1bWVudCkKQEAgLTEwMTYsNiArMTAxNSw3IEBAIFBhc3NSZWZQdHI8TWVkaWFDb250cm9s
RnVsbHNjcmVlblZvbHVtZU1heEJ1dHRvbkVsZW1lbnQ+IE1lZGlhQ29udHJvbEZ1bGxzY3JlZW5W
CiAgICAgUmVmUHRyPE1lZGlhQ29udHJvbEZ1bGxzY3JlZW5Wb2x1bWVNYXhCdXR0b25FbGVtZW50
PiBidXR0b24gPSBhZG9wdFJlZihuZXcgTWVkaWFDb250cm9sRnVsbHNjcmVlblZvbHVtZU1heEJ1
dHRvbkVsZW1lbnQoZG9jdW1lbnQpKTsKICAgICBidXR0b24tPmVuc3VyZVVzZXJBZ2VudFNoYWRv
d1Jvb3QoKTsKICAgICBidXR0b24tPnNldFR5cGUoImJ1dHRvbiIpOworICAgIGJ1dHRvbi0+c2V0
UHNldWRvKEF0b21pY1N0cmluZygiLXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLXZv
bHVtZS1tYXgtYnV0dG9uIiwgQXRvbWljU3RyaW5nOjpDb25zdHJ1Y3RGcm9tTGl0ZXJhbCkpOwog
ICAgIHJldHVybiBidXR0b24ucmVsZWFzZSgpOwogfQogCg==
</data>
<flag name="review"
          id="264268"
          type_id="1"
          status="-"
          setter="benjamin"
    />
          </attachment>
      

    </bug>

</bugzilla>