<?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>106650</bug_id>
          
          <creation_ts>2013-01-11 03:03:10 -0800</creation_ts>
          <short_desc>Web Inspector: fix DRT to deliver simulated events to devtools front-end</short_desc>
          <delta_ts>2013-01-14 04:12:26 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>106705</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Andrey Lushnikov">lushnikov</reporter>
          <assigned_to name="Andrey Lushnikov">lushnikov</assigned_to>
          <cc>apavlov</cc>
    
    <cc>jochen</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>vsevik</cc>
    
    <cc>web-inspector-bugs</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>805114</commentid>
    <comment_count>0</comment_count>
    <who name="Andrey Lushnikov">lushnikov</who>
    <bug_when>2013-01-11 03:03:10 -0800</bug_when>
    <thetext>Events simulated by the means of window.eventSender and window.textInputController objects (which are available in test environment only) are always delivered to main window. That makes it impossible to 
exploit these objects for devtools front-end testing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>805126</commentid>
    <comment_count>1</comment_count>
      <attachid>182312</attachid>
    <who name="Andrey Lushnikov">lushnikov</who>
    <bug_when>2013-01-11 03:15:02 -0800</bug_when>
    <thetext>Created attachment 182312
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>805176</commentid>
    <comment_count>2</comment_count>
      <attachid>182312</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2013-01-11 04:45:00 -0800</bug_when>
    <thetext>Comment on attachment 182312
Patch

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

&gt; Tools/DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:77
&gt;      void setInterfaces(WebTestInterfaces*);

I don&apos;t think you need this, just make interfaces private to the host and make it own it.

&gt; Tools/DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:78
&gt; +    WebTestInterfaces *testInterfaces() const { return m_testInterfaces.get(); }

WebTestInterfaces*

&gt; Tools/DumpRenderTree/chromium/TestShell.cpp:386
&gt; +    m_testRunner-&gt;setTestIsRunning(false);

What if testRunner is missing? Can it be?

&gt; Tools/DumpRenderTree/chromium/TestShell.cpp:764
&gt; +    WebTestInterfaces * testInterfaces = new WebTestInterfaces();

Just move this into the host constructor.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>805184</commentid>
    <comment_count>3</comment_count>
      <attachid>182312</attachid>
    <who name="">jochen</who>
    <bug_when>2013-01-11 04:55:55 -0800</bug_when>
    <thetext>Comment on attachment 182312
Patch

I don&apos;t see an easy way how to achieve what you&apos;re trying to achieve there.

Can you please post a design doc so we can discuss possible ways to fix this?


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

&gt; Tools/DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:43
&gt; +#include &lt;wtf/OwnPtr.h&gt;

you can&apos;t have wtf/ headers in a public webkit api

&gt; Tools/DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:137
&gt; +    OwnPtr&lt;WebTestInterfaces&gt; m_testInterfaces;

there can only be one WebTestInterfaces class by design

&gt; Tools/DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:183
&gt; +    virtual void reset()

WebTestProxy should only have methods from WebFrameClient or WebViewClient

&gt; Tools/DumpRenderTree/chromium/TestRunner/src/WebTestInterfaces.cpp:-58
&gt; -    void setTestIsRunning(bool);

why are you removing this? This is required for the frame load resource callback dumping et al

&gt;&gt; Tools/DumpRenderTree/chromium/TestShell.cpp:386
&gt;&gt; +    m_testRunner-&gt;setTestIsRunning(false);
&gt; 
&gt; What if testRunner is missing? Can it be?

we&apos;re going to delete DRTTestRunner soon, so please don&apos;t add new calls to it

&gt; Tools/DumpRenderTree/chromium/WebViewHost.cpp:-1171
&gt; -        proxy()-&gt;reset();

this won&apos;t work. WebTestProxy is also used by content::RenderViewImpl</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>805221</commentid>
    <comment_count>4</comment_count>
      <attachid>182330</attachid>
    <who name="Andrey Lushnikov">lushnikov</who>
    <bug_when>2013-01-11 06:19:37 -0800</bug_when>
    <thetext>Created attachment 182330
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>805497</commentid>
    <comment_count>5</comment_count>
      <attachid>182330</attachid>
    <who name="">jochen</who>
    <bug_when>2013-01-11 12:08:30 -0800</bug_when>
    <thetext>Comment on attachment 182330
Patch

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

&gt; Tools/DumpRenderTree/chromium/TestShell.cpp:751
&gt; +        m_devToolsTestInterfaces-&gt;bindTo(frame);

ok, that might work.

in content_shell, the devtools will run in their own process, and so they also get their own test interfaces.

Keep in mind that this code (TestShell/DRT) is going to be deleted soon, so whatever you change here needs to be ported to content_shell</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>806234</commentid>
    <comment_count>6</comment_count>
      <attachid>182330</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-14 04:12:21 -0800</bug_when>
    <thetext>Comment on attachment 182330
Patch

Clearing flags on attachment: 182330

Committed r139606: &lt;http://trac.webkit.org/changeset/139606&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>806235</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-14 04:12:26 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>182312</attachid>
            <date>2013-01-11 03:15:02 -0800</date>
            <delta_ts>2013-01-11 06:19:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-106650-20130111151204.patch</filename>
            <type>text/plain</type>
            <size>14771</size>
            <attacher name="Andrey Lushnikov">lushnikov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM5MzExCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNTU4YTQ1YTdkMjNhMTBlNDk5ZDIyNTFhYzUzYjE3NGIx
NTUwODJlYS4uZWFiMzNlNWFmMTI5OTFkMzI0NjU5MTIzMWMwZWNkMWY4ZTRlY2E1ZCAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4
IEBACisyMDEzLTAxLTExICBBbmRyZXkgTHVzaG5pa292ICA8bHVzaG5pa292QGNocm9taXVtLm9y
Zz4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBmaXggRFJUIHRvIGRlbGl2ZXIgc2ltdWxhdGVk
IGV2ZW50cyB0byBkZXZ0b29scyBmcm9udC1lbmQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNjY1MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIE1vdmUgfG1fdGVzdEludGVyZmFjZXN8IG9iamVjdCBmcm9t
IHRlc3RTaGVsbCB0byBXZWJUZXN0UHJveHkgYW5kIGJpbmQKKyAgICAgICAgaXQgdG8gdGhlIGFw
cHJvcHJpYXRlIHdlYlZpZXcuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9U
ZXN0UnVubmVyL3B1YmxpYy9XZWJUZXN0SW50ZXJmYWNlcy5oOgorICAgICAgICAoV2ViVGVzdElu
dGVyZmFjZXMpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIv
cHVibGljL1dlYlRlc3RQcm94eS5oOgorICAgICAgICAoV2ViVGVzdFJ1bm5lcjo6V2ViVGVzdFBy
b3h5QmFzZTo6dGVzdEludGVyZmFjZXMpOgorICAgICAgICAoV2ViVGVzdFByb3h5QmFzZSk6Cisg
ICAgICAgIChXZWJUZXN0UHJveHkpOgorICAgICAgICAoV2ViVGVzdFJ1bm5lcjo6V2ViVGVzdFBy
b3h5OjpyZXNldCk6CisgICAgICAgIChXZWJUZXN0UnVubmVyOjpXZWJUZXN0UHJveHk6OmRpZENs
ZWFyV2luZG93T2JqZWN0KToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0
UnVubmVyL3NyYy9XZWJUZXN0SW50ZXJmYWNlcy5jcHA6CisgICAgICAgIChXZWJUZXN0SW50ZXJm
YWNlczo6SW50ZXJuYWwpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RS
dW5uZXIvc3JjL1dlYlRlc3RQcm94eS5jcHA6CisgICAgICAgIChXZWJUZXN0UnVubmVyOjpXZWJU
ZXN0UHJveHlCYXNlOjpXZWJUZXN0UHJveHlCYXNlKToKKyAgICAgICAgKFdlYlRlc3RSdW5uZXI6
OldlYlRlc3RQcm94eUJhc2U6On5XZWJUZXN0UHJveHlCYXNlKToKKyAgICAgICAgKFdlYlRlc3RS
dW5uZXI6OldlYlRlc3RQcm94eUJhc2U6OnNldEludGVyZmFjZXMpOgorICAgICAgICAoV2ViVGVz
dFJ1bm5lcjo6V2ViVGVzdFByb3h5QmFzZTo6ZGlkQ2xlYXJXaW5kb3dPYmplY3QpOgorICAgICAg
ICAoV2ViVGVzdFJ1bm5lcik6CisgICAgICAgIChXZWJUZXN0UnVubmVyOjpXZWJUZXN0UHJveHlC
YXNlOjpyZXNldCk6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxs
LmNwcDoKKyAgICAgICAgKFRlc3RTaGVsbDo6aW5pdGlhbGl6ZSk6CisgICAgICAgIChUZXN0U2hl
bGw6OmNyZWF0ZU1haW5XaW5kb3cpOgorICAgICAgICAoVGVzdFNoZWxsOjp+VGVzdFNoZWxsKToK
KyAgICAgICAgKFRlc3RTaGVsbDo6cnVuRmlsZVRlc3QpOgorICAgICAgICAoVGVzdFNoZWxsOjpy
ZXNldFRlc3RDb250cm9sbGVyKToKKyAgICAgICAgKFRlc3RTaGVsbDo6dGVzdEZpbmlzaGVkKToK
KyAgICAgICAgKFRlc3RTaGVsbDo6YmluZEpTT2JqZWN0c1RvV2luZG93KToKKyAgICAgICAgKFRl
c3RTaGVsbDo6Y3JlYXRlTmV3V2luZG93KToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9jaHJv
bWl1bS9UZXN0U2hlbGwuaDoKKyAgICAgICAgKFRlc3RTaGVsbDo6ZXZlbnRTZW5kZXIpOgorICAg
ICAgICAoVGVzdFNoZWxsOjphY2Nlc3NpYmlsaXR5Q29udHJvbGxlcik6CisgICAgICAgIChUZXN0
U2hlbGwpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlZpZXdIb3N0LmNw
cDoKKyAgICAgICAgKFdlYlZpZXdIb3N0OjpyZXNldCk6CisgICAgICAgICogRHVtcFJlbmRlclRy
ZWUvY2hyb21pdW0vV2ViVmlld0hvc3QuaDoKKyAgICAgICAgKFdlYlZpZXdIb3N0KToKKwogMjAx
My0wMS0xMCAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAg
ICAgICAgW0dUS10gQWRkIHN1cHBvcnQgZm9yIGxvYWRpbmcgd2ViIHByb2Nlc3MgZXh0ZW5zaW9u
cwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9w
dWJsaWMvV2ViVGVzdEludGVyZmFjZXMuaCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVt
L1Rlc3RSdW5uZXIvcHVibGljL1dlYlRlc3RJbnRlcmZhY2VzLmgKaW5kZXggNGVhYzQyYzZkMGNi
ZjY5OWE3ZWMwODcyODM1MmI0YzA3NTI0NTU3MC4uODIzNjc1OTFkYWM5NWVjM2FmNjIxM2ZlNzAz
YWRiYjc3MjVkNGY5NiAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0v
VGVzdFJ1bm5lci9wdWJsaWMvV2ViVGVzdEludGVyZmFjZXMuaAorKysgYi9Ub29scy9EdW1wUmVu
ZGVyVHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3B1YmxpYy9XZWJUZXN0SW50ZXJmYWNlcy5oCkBA
IC01Miw3ICs1Miw2IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldERlbGVnYXRlKFdlYlRlc3REZWxl
Z2F0ZSopOwogICAgIHZvaWQgYmluZFRvKFdlYktpdDo6V2ViRnJhbWUqKTsKICAgICB2b2lkIHJl
c2V0QWxsKCk7Ci0gICAgdm9pZCBzZXRUZXN0SXNSdW5uaW5nKGJvb2wpOwogCiAgICAgV2ViS2l0
OjpXZWJWaWV3KiB3ZWJWaWV3KCkgY29uc3Q7CiAgICAgV2ViQWNjZXNzaWJpbGl0eUNvbnRyb2xs
ZXIqIGFjY2Vzc2liaWxpdHlDb250cm9sbGVyKCk7CmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVu
ZGVyVHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3B1YmxpYy9XZWJUZXN0UHJveHkuaCBiL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvcHVibGljL1dlYlRlc3RQcm94eS5o
CmluZGV4IDg5ZjliYWUyOWNkOWQxNjUwYTFlMDQ4YzRiMmFmNWU1MTdkYmNmODMuLjhkNjc5MWU1
ZjVlOTQwMzM3MDkwNTM4ODMwNTFmMTI0YWVmYzgzYWUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvcHVibGljL1dlYlRlc3RQcm94eS5oCisrKyBi
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvcHVibGljL1dlYlRlc3RQ
cm94eS5oCkBAIC00MCw2ICs0MCw4IEBACiAjaW5jbHVkZSAiV2ViS2l0L2Nocm9taXVtL3B1Ymxp
Yy9XZWJUZXh0RGlyZWN0aW9uLmgiCiAjaW5jbHVkZSA8bWFwPgogI2luY2x1ZGUgPHN0cmluZz4K
KyNpbmNsdWRlIDx3dGYvT3duUHRyLmg+CisjaW5jbHVkZSA8d3RmL1Bhc3NPd25QdHIuaD4KIAog
bmFtZXNwYWNlIFdlYktpdCB7CiBjbGFzcyBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0OwpAQCAtNzMs
NiArNzUsNyBAQCBjbGFzcyBXZWJUZXN0UnVubmVyOwogY2xhc3MgV2ViVGVzdFByb3h5QmFzZSB7
CiBwdWJsaWM6CiAgICAgdm9pZCBzZXRJbnRlcmZhY2VzKFdlYlRlc3RJbnRlcmZhY2VzKik7Cisg
ICAgV2ViVGVzdEludGVyZmFjZXMgKnRlc3RJbnRlcmZhY2VzKCkgY29uc3QgeyByZXR1cm4gbV90
ZXN0SW50ZXJmYWNlcy5nZXQoKTsgfQogICAgIHZvaWQgc2V0RGVsZWdhdGUoV2ViVGVzdERlbGVn
YXRlKik7CiAKICAgICB2b2lkIHJlc2V0KCk7CkBAIC04Niw2ICs4OSw3IEBAIHByb3RlY3RlZDoK
IAogICAgIHZvaWQgZGlkSW52YWxpZGF0ZVJlY3QoY29uc3QgV2ViS2l0OjpXZWJSZWN0Jik7CiAg
ICAgdm9pZCBkaWRTY3JvbGxSZWN0KGludCwgaW50LCBjb25zdCBXZWJLaXQ6OldlYlJlY3QmKTsK
KyAgICB2b2lkIGRpZENsZWFyV2luZG93T2JqZWN0KFdlYktpdDo6V2ViRnJhbWUqKTsKICAgICB2
b2lkIHNjaGVkdWxlQ29tcG9zaXRlKCk7CiAgICAgdm9pZCBzY2hlZHVsZUFuaW1hdGlvbigpOwog
ICAgIHZvaWQgc2V0V2luZG93UmVjdChjb25zdCBXZWJLaXQ6OldlYlJlY3QmKTsKQEAgLTEzMCw3
ICsxMzQsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgdm9pZCBkaWRGYWlsUmVzb3VyY2VMb2FkKFdlYktp
dDo6V2ViRnJhbWUqLCB1bnNpZ25lZCBpZGVudGlmaWVyLCBjb25zdCBXZWJLaXQ6OldlYlVSTEVy
cm9yJik7CiAKIHByaXZhdGU6Ci0gICAgV2ViVGVzdEludGVyZmFjZXMqIG1fdGVzdEludGVyZmFj
ZXM7CisgICAgT3duUHRyPFdlYlRlc3RJbnRlcmZhY2VzPiBtX3Rlc3RJbnRlcmZhY2VzOwogICAg
IFdlYlRlc3REZWxlZ2F0ZSogbV9kZWxlZ2F0ZTsKIAogICAgIFdlYktpdDo6V2ViUmVjdCBtX3Bh
aW50UmVjdDsKQEAgLTE3NSw2ICsxNzksMTMgQEAgcHVibGljOgogICAgICAgICBXZWJUZXN0UHJv
eHlCYXNlOjpzZXRXaW5kb3dSZWN0KHJlY3QpOwogICAgICAgICBCYXNlOjpzZXRXaW5kb3dSZWN0
KHJlY3QpOwogICAgIH0KKworICAgIHZpcnR1YWwgdm9pZCByZXNldCgpCisgICAgeworICAgICAg
ICBXZWJUZXN0UHJveHlCYXNlOjpyZXNldCgpOworICAgICAgICBCYXNlOjpyZXNldCgpOworICAg
IH0KKwogICAgIHZpcnR1YWwgdm9pZCBzaG93KFdlYktpdDo6V2ViTmF2aWdhdGlvblBvbGljeSBw
b2xpY3kpCiAgICAgewogICAgICAgICBXZWJUZXN0UHJveHlCYXNlOjpzaG93KHBvbGljeSk7CkBA
IC0yNjcsNiArMjc4LDEyIEBAIHB1YmxpYzoKICAgICB9CiAKICAgICAvLyBXZWJGcmFtZUNsaWVu
dCBpbXBsZW1lbnRhdGlvbi4KKyAgICB2aXJ0dWFsIHZvaWQgZGlkQ2xlYXJXaW5kb3dPYmplY3Qo
V2ViS2l0OjpXZWJGcmFtZSogZnJhbWUpCisgICAgeworICAgICAgICBXZWJUZXN0UHJveHlCYXNl
OjpkaWRDbGVhcldpbmRvd09iamVjdChmcmFtZSk7CisgICAgICAgIEJhc2U6OmRpZENsZWFyV2lu
ZG93T2JqZWN0KGZyYW1lKTsKKyAgICB9CisKICAgICB2aXJ0dWFsIHZvaWQgd2lsbFBlcmZvcm1D
bGllbnRSZWRpcmVjdChXZWJLaXQ6OldlYkZyYW1lKiBmcmFtZSwgY29uc3QgV2ViS2l0OjpXZWJV
UkwmIGZyb20sIGNvbnN0IFdlYktpdDo6V2ViVVJMJiB0bywgZG91YmxlIGludGVydmFsLCBkb3Vi
bGUgZmlyZVRpbWUpCiAgICAgewogICAgICAgICBXZWJUZXN0UHJveHlCYXNlOjp3aWxsUGVyZm9y
bUNsaWVudFJlZGlyZWN0KGZyYW1lLCBmcm9tLCB0bywgaW50ZXJ2YWwsIGZpcmVUaW1lKTsKZGlm
ZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL1dl
YlRlc3RJbnRlcmZhY2VzLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RS
dW5uZXIvc3JjL1dlYlRlc3RJbnRlcmZhY2VzLmNwcAppbmRleCBmNTk2ZTM4YWUxODJlOWRmNjFj
OTUwYzU5YTVjMzNmZTMyMTU4OWJkLi5iOGQ1ZmQ0M2ZhNzQzZjRmNzMxNTUxYzRhNWZjZjQ3ZTE0
YmU0YjM4IDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0UnVu
bmVyL3NyYy9XZWJUZXN0SW50ZXJmYWNlcy5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUv
Y2hyb21pdW0vVGVzdFJ1bm5lci9zcmMvV2ViVGVzdEludGVyZmFjZXMuY3BwCkBAIC01NSw3ICs1
NSw2IEBAIHB1YmxpYzoKICAgICBUZXN0SW50ZXJmYWNlcyogdGVzdEludGVyZmFjZXMoKSB7IHJl
dHVybiAmbV9pbnRlcmZhY2VzOyB9CiAgICAgdm9pZCBzZXREZWxlZ2F0ZShXZWJUZXN0RGVsZWdh
dGUqKTsKICAgICB2b2lkIHNldFdlYlZpZXcoV2ViVmlldyopOwotICAgIHZvaWQgc2V0VGVzdElz
UnVubmluZyhib29sKTsKICAgICBXZWJWaWV3KiB3ZWJWaWV3KCkgY29uc3QgeyByZXR1cm4gbV93
ZWJWaWV3OyB9CiAgICAgV2ViQWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIqIGFjY2Vzc2liaWxpdHlD
b250cm9sbGVyKCkgeyByZXR1cm4gJm1fYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXI7IH0KICAgICBX
ZWJFdmVudFNlbmRlciogZXZlbnRTZW5kZXIoKSB7IHJldHVybiAmbV9ldmVudFNlbmRlcjsgfQpA
QCAtMTE3LDEyICsxMTYsNiBAQCB2b2lkIFdlYlRlc3RJbnRlcmZhY2VzOjpJbnRlcm5hbDo6c2V0
V2ViVmlldyhXZWJWaWV3KiB3ZWJWaWV3KQogICAgIG1faW50ZXJmYWNlcy5zZXRXZWJWaWV3KHdl
YlZpZXcpOwogfQogCi12b2lkIFdlYlRlc3RJbnRlcmZhY2VzOjpJbnRlcm5hbDo6c2V0VGVzdElz
UnVubmluZyhib29sIHJ1bm5pbmcpCi17Ci0gICAgaWYgKG1fdGVzdFJ1bm5lcikKLSAgICAgICAg
bV90ZXN0UnVubmVyLT5zZXRUZXN0SXNSdW5uaW5nKHJ1bm5pbmcpOwotfQotCiB2b2lkIFdlYlRl
c3RJbnRlcmZhY2VzOjpJbnRlcm5hbDo6Y2xlYXJDb250ZXh0TWVudURhdGEoKQogewogICAgIG1f
ZGVsZWdhdGUtPmNsZWFyQ29udGV4dE1lbnVEYXRhKCk7CkBAIC0yMTMsMTEgKzIwNiw2IEBAIHZv
aWQgV2ViVGVzdEludGVyZmFjZXM6OnJlc2V0QWxsKCkKICAgICBtX2ludGVybmFsLT50ZXN0SW50
ZXJmYWNlcygpLT5yZXNldEFsbCgpOwogfQogCi12b2lkIFdlYlRlc3RJbnRlcmZhY2VzOjpzZXRU
ZXN0SXNSdW5uaW5nKGJvb2wgcnVubmluZykKLXsKLSAgICBtX2ludGVybmFsLT5zZXRUZXN0SXNS
dW5uaW5nKHJ1bm5pbmcpOwotfQotCiBXZWJWaWV3KiBXZWJUZXN0SW50ZXJmYWNlczo6d2ViVmll
dygpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1faW50ZXJuYWwtPndlYlZpZXcoKTsKZGlmZiAtLWdp
dCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL1dlYlRlc3RQ
cm94eS5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3NyYy9X
ZWJUZXN0UHJveHkuY3BwCmluZGV4IDBjNzNiNTY0NDgzZGYyZDYwZTA4NDQ5ZmNhZDdlZGUxZDg3
NTY3M2MuLmM4ZjJlN2FmZDY0YjI3OWI4NTZhYTA1ZWI4ZDFiNzlkMGEzZDQ4ZTYgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL1dlYlRlc3RQ
cm94eS5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9z
cmMvV2ViVGVzdFByb3h5LmNwcApAQCAtMTgzLDE4ICsxODMsMTkgQEAgc3RyaW5nIFVSTERlc2Ny
aXB0aW9uKGNvbnN0IEdVUkwmIHVybCkKIH0KIAogV2ViVGVzdFByb3h5QmFzZTo6V2ViVGVzdFBy
b3h5QmFzZSgpCi0gICAgOiBtX3Rlc3RJbnRlcmZhY2VzKDApCi0gICAgLCBtX2RlbGVnYXRlKDAp
CisgICAgOiBtX2RlbGVnYXRlKDApCiB7CiB9CiAKIFdlYlRlc3RQcm94eUJhc2U6On5XZWJUZXN0
UHJveHlCYXNlKCkKIHsKKyAgICBtX3Rlc3RJbnRlcmZhY2VzLT5zZXREZWxlZ2F0ZSgwKTsKKyAg
ICBtX3Rlc3RJbnRlcmZhY2VzLT5zZXRXZWJWaWV3KDApOwogfQogCiB2b2lkIFdlYlRlc3RQcm94
eUJhc2U6OnNldEludGVyZmFjZXMoV2ViVGVzdEludGVyZmFjZXMqIGludGVyZmFjZXMpCiB7Ci0g
ICAgbV90ZXN0SW50ZXJmYWNlcyA9IGludGVyZmFjZXM7CisgICAgbV90ZXN0SW50ZXJmYWNlcyA9
IGFkb3B0UHRyKGludGVyZmFjZXMpOwogfQogCiB2b2lkIFdlYlRlc3RQcm94eUJhc2U6OnNldERl
bGVnYXRlKFdlYlRlc3REZWxlZ2F0ZSogZGVsZWdhdGUpCkBAIC0yMDIsMTAgKzIwMywxNiBAQCB2
b2lkIFdlYlRlc3RQcm94eUJhc2U6OnNldERlbGVnYXRlKFdlYlRlc3REZWxlZ2F0ZSogZGVsZWdh
dGUpCiAgICAgbV9kZWxlZ2F0ZSA9IGRlbGVnYXRlOwogfQogCit2b2lkIFdlYlRlc3RQcm94eUJh
c2U6OmRpZENsZWFyV2luZG93T2JqZWN0KFdlYkZyYW1lKiBmcmFtZSkKK3sKKyAgICBtX3Rlc3RJ
bnRlcmZhY2VzLT5iaW5kVG8oZnJhbWUpOworfQorCiB2b2lkIFdlYlRlc3RQcm94eUJhc2U6OnJl
c2V0KCkKIHsKICAgICBtX3BhaW50UmVjdCA9IFdlYlJlY3QoKTsKICAgICBtX3Jlc291cmNlSWRl
bnRpZmllck1hcC5jbGVhcigpOworICAgIG1fdGVzdEludGVyZmFjZXMtPnJlc2V0QWxsKCk7CiB9
CiAKIHZvaWQgV2ViVGVzdFByb3h5QmFzZTo6c2V0UGFpbnRSZWN0KGNvbnN0IFdlYlJlY3QmIHJl
Y3QpCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0U2hlbGwu
Y3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsLmNwcAppbmRleCAz
N2QwYjZkMWI1NGRjYTYxZTBmNzJmYmRkOTM3MGQ0M2FlNjk3OTUwLi5lNTQ1MGMyMzk2NmQ4NWIz
NWJmOWJkY2EwYmQ0Njg4MjQ5ODFlMjMwIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJl
ZS9jaHJvbWl1bS9UZXN0U2hlbGwuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9t
aXVtL1Rlc3RTaGVsbC5jcHAKQEAgLTE2Miw5ICsxNjIsNyBAQCBUZXN0U2hlbGw6OlRlc3RTaGVs
bCgpCiB2b2lkIFRlc3RTaGVsbDo6aW5pdGlhbGl6ZSgpCiB7CiAgICAgbV93ZWJQZXJtaXNzaW9u
cyA9IGFkb3B0UHRyKG5ldyBXZWJQZXJtaXNzaW9ucyh0aGlzKSk7Ci0gICAgbV90ZXN0SW50ZXJm
YWNlcyA9IGFkb3B0UHRyKG5ldyBXZWJUZXN0SW50ZXJmYWNlcygpKTsKICAgICBtX3Rlc3RSdW5u
ZXIgPSBhZG9wdFB0cihuZXcgRFJUVGVzdFJ1bm5lcih0aGlzKSk7Ci0gICAgbV90ZXN0SW50ZXJm
YWNlcy0+c2V0VGVzdFJ1bm5lcihtX3Rlc3RSdW5uZXIuZ2V0KCkpOwogI2lmIEVOQUJMRShOT1RJ
RklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElPTlMpCiAgICAgbV9ub3RpZmlj
YXRpb25QcmVzZW50ZXIgPSBhZG9wdFB0cihuZXcgTm90aWZpY2F0aW9uUHJlc2VudGVyKHRoaXMp
KTsKICNlbmRpZgpAQCAtMTg2LDggKzE4NCw2IEBAIHZvaWQgVGVzdFNoZWxsOjpjcmVhdGVNYWlu
V2luZG93KCkKICAgICBtX2RydERldlRvb2xzQWdlbnQgPSBhZG9wdFB0cihuZXcgRFJURGV2VG9v
bHNBZ2VudCk7CiAgICAgbV93ZWJWaWV3SG9zdCA9IGFkb3B0UHRyKGNyZWF0ZU5ld1dpbmRvdyhX
ZWJVUkwoKSwgbV9kcnREZXZUb29sc0FnZW50LmdldCgpKSk7CiAgICAgbV93ZWJWaWV3ID0gbV93
ZWJWaWV3SG9zdC0+d2ViVmlldygpOwotICAgIG1fdGVzdEludGVyZmFjZXMtPnNldERlbGVnYXRl
KG1fd2ViVmlld0hvc3QuZ2V0KCkpOwotICAgIG1fdGVzdEludGVyZmFjZXMtPnNldFdlYlZpZXco
bV93ZWJWaWV3KTsKICAgICBtX3Rlc3RSdW5uZXItPnNldERlbGVnYXRlKG1fd2ViVmlld0hvc3Qu
Z2V0KCkpOwogICAgIG1fdGVzdFJ1bm5lci0+c2V0V2ViVmlldyhtX3dlYlZpZXcpOwogICAgIG1f
ZHJ0RGV2VG9vbHNBZ2VudC0+c2V0V2ViVmlldyhtX3dlYlZpZXcpOwpAQCAtMTk1LDggKzE5MSw2
IEBAIHZvaWQgVGVzdFNoZWxsOjpjcmVhdGVNYWluV2luZG93KCkKIAogVGVzdFNoZWxsOjp+VGVz
dFNoZWxsKCkKIHsKLSAgICBtX3Rlc3RJbnRlcmZhY2VzLT5zZXREZWxlZ2F0ZSgwKTsKLSAgICBt
X3Rlc3RJbnRlcmZhY2VzLT5zZXRXZWJWaWV3KDApOwogICAgIG1fdGVzdFJ1bm5lci0+c2V0RGVs
ZWdhdGUoMCk7CiAgICAgbV90ZXN0UnVubmVyLT5zZXRXZWJWaWV3KDApOwogICAgIG1fZHJ0RGV2
VG9vbHNBZ2VudC0+c2V0V2ViVmlldygwKTsKQEAgLTI1Nyw3ICsyNTEsNyBAQCB2b2lkIFRlc3RT
aGVsbDo6cnVuRmlsZVRlc3QoY29uc3QgVGVzdFBhcmFtcyYgcGFyYW1zLCBib29sIHNob3VsZER1
bXBQaXhlbHMpCiAgICAgQVNTRVJUKHBhcmFtcy50ZXN0VXJsLmlzVmFsaWQoKSk7CiAgICAgbV9k
dW1wUGl4ZWxzRm9yQ3VycmVudFRlc3QgPSBzaG91bGREdW1wUGl4ZWxzOwogICAgIG1fdGVzdElz
UHJlcGFyaW5nID0gdHJ1ZTsKLSAgICBtX3Rlc3RJbnRlcmZhY2VzLT5zZXRUZXN0SXNSdW5uaW5n
KHRydWUpOworICAgIG1fdGVzdFJ1bm5lci0+c2V0VGVzdElzUnVubmluZyh0cnVlKTsKICAgICBt
X3BhcmFtcyA9IHBhcmFtczsKICAgICBzdHJpbmcgdGVzdFVybCA9IG1fcGFyYW1zLnRlc3RVcmwu
c3BlYygpOwogCkBAIC0zMTksNyArMzEzLDYgQEAgdm9pZCBUZXN0U2hlbGw6OnJlc2V0VGVzdENv
bnRyb2xsZXIoKQogewogICAgIHJlc2V0V2ViU2V0dGluZ3MoKndlYlZpZXcoKSk7CiAgICAgbV93
ZWJQZXJtaXNzaW9ucy0+cmVzZXQoKTsKLSAgICBtX3Rlc3RJbnRlcmZhY2VzLT5yZXNldEFsbCgp
OwogICAgIG1fdGVzdFJ1bm5lci0+cmVzZXQoKTsKICAgICBtX3dlYlZpZXdIb3N0LT5yZXNldCgp
OwogI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZX05PVElGSUNBVElP
TlMpCkBAIC0zOTAsNyArMzgzLDcgQEAgdm9pZCBUZXN0U2hlbGw6OnRlc3RGaW5pc2hlZCgpCiAg
ICAgaWYgKCFtX3Rlc3RJc1BlbmRpbmcpCiAgICAgICAgIHJldHVybjsKICAgICBtX3Rlc3RJc1Bl
bmRpbmcgPSBmYWxzZTsKLSAgICBtX3Rlc3RJbnRlcmZhY2VzLT5zZXRUZXN0SXNSdW5uaW5nKGZh
bHNlKTsKKyAgICBtX3Rlc3RSdW5uZXItPnNldFRlc3RJc1J1bm5pbmcoZmFsc2UpOwogICAgIGlm
IChtX2R1bXBXaGVuRmluaXNoZWQpCiAgICAgICAgIGR1bXAoKTsKICAgICB3ZWJraXRfc3VwcG9y
dDo6UXVpdE1lc3NhZ2VMb29wKCk7CkBAIC03NDMsNyArNzM2LDYgQEAgdm9pZCBUZXN0U2hlbGw6
OmR1bXBJbWFnZShTa0NhbnZhcyogY2FudmFzKSBjb25zdAogdm9pZCBUZXN0U2hlbGw6OmJpbmRK
U09iamVjdHNUb1dpbmRvdyhXZWJGcmFtZSogZnJhbWUpCiB7CiAgICAgV2ViVGVzdGluZ1N1cHBv
cnQ6OmluamVjdEludGVybmFsc09iamVjdChmcmFtZSk7Ci0gICAgbV90ZXN0SW50ZXJmYWNlcy0+
YmluZFRvKGZyYW1lKTsKICAgICBtX3Rlc3RSdW5uZXItPmJpbmRUb0phdmFzY3JpcHQoZnJhbWUs
IFdlYlN0cmluZzo6ZnJvbVVURjgoInRlc3RSdW5uZXIiKSk7CiAgICAgbV90ZXN0UnVubmVyLT5i
aW5kVG9KYXZhc2NyaXB0KGZyYW1lLCBXZWJTdHJpbmc6OmZyb21VVEY4KCJsYXlvdXRUZXN0Q29u
dHJvbGxlciIpKTsKIH0KQEAgLTc1Niw3ICs3NDgsNiBAQCBXZWJWaWV3SG9zdCogVGVzdFNoZWxs
OjpjcmVhdGVOZXdXaW5kb3coY29uc3QgV2ViS2l0OjpXZWJVUkwmIHVybCkKIFdlYlZpZXdIb3N0
KiBUZXN0U2hlbGw6OmNyZWF0ZU5ld1dpbmRvdyhjb25zdCBXZWJLaXQ6OldlYlVSTCYgdXJsLCBE
UlREZXZUb29sc0FnZW50KiBkZXZUb29sc0FnZW50KQogewogICAgIFdlYlRlc3RQcm94eTxXZWJW
aWV3SG9zdCwgVGVzdFNoZWxsKj4qIGhvc3QgPSBuZXcgV2ViVGVzdFByb3h5PFdlYlZpZXdIb3N0
LCBUZXN0U2hlbGwqPih0aGlzKTsKLSAgICBob3N0LT5zZXRJbnRlcmZhY2VzKG1fdGVzdEludGVy
ZmFjZXMuZ2V0KCkpOwogICAgIGlmIChtX3dlYlZpZXdIb3N0KQogICAgICAgICBob3N0LT5zZXRE
ZWxlZ2F0ZShtX3dlYlZpZXdIb3N0LmdldCgpKTsKICAgICBlbHNlCkBAIC03NjksNyArNzYwLDE1
IEBAIFdlYlZpZXdIb3N0KiBUZXN0U2hlbGw6OmNyZWF0ZU5ld1dpbmRvdyhjb25zdCBXZWJLaXQ6
OldlYlVSTCYgdXJsLCBEUlREZXZUb29sc0FnCiAgICAgbV9wcmVmcy5hcHBseVRvKHZpZXcpOwog
ICAgIHZpZXctPmluaXRpYWxpemVNYWluRnJhbWUoaG9zdCk7CiAgICAgbV93aW5kb3dMaXN0LmFw
cGVuZChob3N0KTsKKworICAgIFdlYlRlc3RJbnRlcmZhY2VzICogdGVzdEludGVyZmFjZXMgPSBu
ZXcgV2ViVGVzdEludGVyZmFjZXMoKTsKKyAgICB0ZXN0SW50ZXJmYWNlcy0+c2V0VGVzdFJ1bm5l
cihtX3Rlc3RSdW5uZXIuZ2V0KCkpOworICAgIHRlc3RJbnRlcmZhY2VzLT5zZXREZWxlZ2F0ZSho
b3N0KTsKKyAgICB0ZXN0SW50ZXJmYWNlcy0+c2V0V2ViVmlldyhob3N0LT53ZWJWaWV3KCkpOwor
ICAgIGhvc3QtPnNldEludGVyZmFjZXModGVzdEludGVyZmFjZXMpOworCiAgICAgaG9zdC0+bG9h
ZFVSTEZvckZyYW1lKHVybCwgV2ViU3RyaW5nKCkpOworCiAgICAgcmV0dXJuIGhvc3Q7CiB9CiAK
ZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbC5oIGIv
VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsLmgKaW5kZXggMWM2ZGQ4ZmQ3
YmRhZmUwNmRhY2RlNDA1NjQ1NmIzNmE0MWZkZWE2Yi4uNTI0N2UwM2EzNDZiN2VlZDYzNDUwZWI5
NjI2Y2FmOTlhMTg3ZmEwOSAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21p
dW0vVGVzdFNoZWxsLmgKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNo
ZWxsLmgKQEAgLTg2LDggKzg2LDggQEAgcHVibGljOgogICAgIC8vIFJldHVybnMgdGhlIGhvc3Qg
Zm9yIHRoZSBtYWluIFdlYlZpZXcuCiAgICAgV2ViVmlld0hvc3QqIHdlYlZpZXdIb3N0KCkgY29u
c3QgeyByZXR1cm4gbV93ZWJWaWV3SG9zdC5nZXQoKTsgfQogICAgIERSVFRlc3RSdW5uZXIqIHRl
c3RSdW5uZXIoKSBjb25zdCB7IHJldHVybiBtX3Rlc3RSdW5uZXIuZ2V0KCk7IH0KLSAgICBXZWJU
ZXN0UnVubmVyOjpXZWJFdmVudFNlbmRlciogZXZlbnRTZW5kZXIoKSBjb25zdCB7IHJldHVybiBt
X3Rlc3RJbnRlcmZhY2VzLT5ldmVudFNlbmRlcigpOyB9Ci0gICAgV2ViVGVzdFJ1bm5lcjo6V2Vi
QWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIqIGFjY2Vzc2liaWxpdHlDb250cm9sbGVyKCkgY29uc3Qg
eyByZXR1cm4gbV90ZXN0SW50ZXJmYWNlcy0+YWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIoKTsgfQor
ICAgIFdlYlRlc3RSdW5uZXI6OldlYkV2ZW50U2VuZGVyKiBldmVudFNlbmRlcigpIGNvbnN0IHsg
cmV0dXJuIG1fd2ViVmlld0hvc3QtPnByb3h5KCktPnRlc3RJbnRlcmZhY2VzKCktPmV2ZW50U2Vu
ZGVyKCk7IH0KKyAgICBXZWJUZXN0UnVubmVyOjpXZWJBY2Nlc3NpYmlsaXR5Q29udHJvbGxlciog
YWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIoKSBjb25zdCB7IHJldHVybiBtX3dlYlZpZXdIb3N0LT5w
cm94eSgpLT50ZXN0SW50ZXJmYWNlcygpLT5hY2Nlc3NpYmlsaXR5Q29udHJvbGxlcigpOyB9CiAj
aWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCiAgICAgTm90aWZpY2F0aW9uUHJlc2VudGVyKiBub3Rp
ZmljYXRpb25QcmVzZW50ZXIoKSBjb25zdCB7IHJldHVybiBtX25vdGlmaWNhdGlvblByZXNlbnRl
ci5nZXQoKTsgfQogI2VuZGlmCkBAIC0yMTMsNyArMjEzLDYgQEAgcHJpdmF0ZToKICAgICBPd25Q
dHI8V2ViUGVybWlzc2lvbnM+IG1fd2ViUGVybWlzc2lvbnM7CiAgICAgT3duUHRyPERSVERldlRv
b2xzQWdlbnQ+IG1fZHJ0RGV2VG9vbHNBZ2VudDsKICAgICBPd25QdHI8RFJURGV2VG9vbHNDbGll
bnQ+IG1fZHJ0RGV2VG9vbHNDbGllbnQ7Ci0gICAgT3duUHRyPFdlYlRlc3RSdW5uZXI6OldlYlRl
c3RJbnRlcmZhY2VzPiBtX3Rlc3RJbnRlcmZhY2VzOwogICAgIE93blB0cjxEUlRUZXN0UnVubmVy
PiBtX3Rlc3RSdW5uZXI7CiAjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdB
Q1lfTk9USUZJQ0FUSU9OUykKICAgICBPd25QdHI8Tm90aWZpY2F0aW9uUHJlc2VudGVyPiBtX25v
dGlmaWNhdGlvblByZXNlbnRlcjsKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2No
cm9taXVtL1dlYlZpZXdIb3N0LmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dl
YlZpZXdIb3N0LmNwcAppbmRleCAxNDc3OWZhZmM2ZmM1OGQxZWUzYzAzMGE4MWU4ZjgwOWM3NzU4
MTNmLi4xY2JmNjBjMTIzMjU1ODBkODg2YmMxZTBiODJhNGYxNWIxMTI4ZWQzIDEwMDY0NAotLS0g
YS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJWaWV3SG9zdC5jcHAKKysrIGIvVG9v
bHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViVmlld0hvc3QuY3BwCkBAIC0xMTY2LDkgKzEx
NjYsNiBAQCB2b2lkIFdlYlZpZXdIb3N0OjpyZXNldCgpCiAKICAgICBtX2N1cnJlbnRDdXJzb3Ig
PSBXZWJDdXJzb3JJbmZvKCk7CiAgICAgbV93aW5kb3dSZWN0ID0gV2ViUmVjdCgpOwotICAgIC8v
IG1fcHJveHkgaXMgbm90IHNldCB3aGVuIHJlc2V0KCkgaXMgaW52b2tlZCBmcm9tIHRoZSBjb25z
dHJ1Y3Rvci4KLSAgICBpZiAobV9wcm94eSkKLSAgICAgICAgcHJveHkoKS0+cmVzZXQoKTsKIAog
ICAgIGlmIChtX3dlYldpZGdldCkgewogICAgICAgICB3ZWJWaWV3KCktPm1haW5GcmFtZSgpLT5z
ZXROYW1lKFdlYlN0cmluZygpKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2No
cm9taXVtL1dlYlZpZXdIb3N0LmggYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJW
aWV3SG9zdC5oCmluZGV4IGZjOGJiZjQzMDlhNWY4YTdiYjlkNGMxZDY1N2Y1ZDY0NDMzYWE0ZDAu
LjQ0ZjcyYWM5MDBiMWI2ODEzNjUzNTA4MDU3N2QxMjE5ZWE5ZDg2ZmYgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlZpZXdIb3N0LmgKKysrIGIvVG9vbHMvRHVt
cFJlbmRlclRyZWUvY2hyb21pdW0vV2ViVmlld0hvc3QuaApAQCAtODgsNyArODgsNyBAQCBjbGFz
cyBXZWJWaWV3SG9zdCA6IHB1YmxpYyBXZWJLaXQ6OldlYlZpZXdDbGllbnQsIHB1YmxpYyBXZWJL
aXQ6OldlYkZyYW1lQ2xpZW50LAogICAgIFdlYktpdDo6V2ViV2lkZ2V0KiB3ZWJXaWRnZXQoKSBj
b25zdDsKICAgICBXZWJUZXN0UnVubmVyOjpXZWJUZXN0UHJveHlCYXNlKiBwcm94eSgpIGNvbnN0
OwogICAgIHZvaWQgc2V0UHJveHkoV2ViVGVzdFJ1bm5lcjo6V2ViVGVzdFByb3h5QmFzZSopOwot
ICAgIHZvaWQgcmVzZXQoKTsKKyAgICB2aXJ0dWFsIHZvaWQgcmVzZXQoKTsKICAgICB2b2lkIHNl
dFNlbGVjdFRyYWlsaW5nV2hpdGVzcGFjZUVuYWJsZWQoYm9vbCk7CiAgICAgdm9pZCBzZXRTbWFy
dEluc2VydERlbGV0ZUVuYWJsZWQoYm9vbCk7CiAgICAgdm9pZCBzZXRMb2dDb25zb2xlT3V0cHV0
KGJvb2wpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>182330</attachid>
            <date>2013-01-11 06:19:37 -0800</date>
            <delta_ts>2013-01-14 04:12:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-106650-20130111181639.patch</filename>
            <type>text/plain</type>
            <size>6327</size>
            <attacher name="Andrey Lushnikov">lushnikov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM5NDM0CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYmE4MmE4NjVhMzViNzYyNWYxMmU1NjdiN2U4ZjFjYjQw
ZTRjYjk1YS4uNjczN2UwZDFjYzE4OWY2MWIyMGQzZDliNjg2YjEyMjJiNDM2ZTZlNCAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0
IEBACisyMDEzLTAxLTExICBBbmRyZXkgTHVzaG5pa292ICA8bHVzaG5pa292QGNocm9taXVtLm9y
Zz4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBmaXggRFJUIHRvIGRlbGl2ZXIgc2ltdWxhdGVk
IGV2ZW50cyB0byBkZXZ0b29scyBmcm9udC1lbmQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNjY1MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIEFkZCBzZXBhcmF0ZWQgbV9kZXZUb29sc1Rlc3RJbnRlcmZh
Y2VzIG9iamVjdCB0byB0ZXN0U2hlbGwgd2hpY2ggaXMKKyAgICAgICAgYmluZCB0byBkZXZUb29s
cyB3ZWJ2aWV3LgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxs
LmNwcDoKKyAgICAgICAgKFRlc3RTaGVsbDo6aW5pdGlhbGl6ZSk6CisgICAgICAgIChUZXN0U2hl
bGw6OmNyZWF0ZU1haW5XaW5kb3cpOgorICAgICAgICAoVGVzdFNoZWxsOjp+VGVzdFNoZWxsKToK
KyAgICAgICAgKFRlc3RTaGVsbDo6c2hvd0RldlRvb2xzKToKKyAgICAgICAgKFRlc3RTaGVsbDo6
cmVzZXRUZXN0Q29udHJvbGxlcik6CisgICAgICAgIChUZXN0U2hlbGw6OmJpbmRKU09iamVjdHNU
b1dpbmRvdyk6CisgICAgICAgIChUZXN0U2hlbGw6OmNyZWF0ZU5ld1dpbmRvdyk6CisgICAgICAg
ICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsLmg6CisgICAgICAgIChUZXN0U2hl
bGwpOgorCiAyMDEzLTAxLTExICBSYXBoYWVsIEt1Ym8gZGEgQ29zdGEgIDxyYXBoYWVsLmt1Ym8u
ZGEuY29zdGFAaW50ZWwuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQgamhidWlsZC1yZWxhdGVk
IGZpeCBhZnRlciByMTM5NDMxLgpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hy
b21pdW0vVGVzdFNoZWxsLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RT
aGVsbC5jcHAKaW5kZXggNDhlOGJlMWQxYzM5OTFkMDkxOTc3NDc1N2UwYjM0ZmQ1MzBjYmRhOC4u
NDdjM2M5ZTUyODlkNzU3ZWFjYTk5MjFjMmI1N2UzZDVkMWNkZDZhMCAxMDA2NDQKLS0tIGEvVG9v
bHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsLmNwcAorKysgYi9Ub29scy9EdW1w
UmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0U2hlbGwuY3BwCkBAIC0xNjEsOCArMTYxLDEwIEBAIFRl
c3RTaGVsbDo6VGVzdFNoZWxsKCkKIHZvaWQgVGVzdFNoZWxsOjppbml0aWFsaXplKCkKIHsKICAg
ICBtX3Rlc3RJbnRlcmZhY2VzID0gYWRvcHRQdHIobmV3IFdlYlRlc3RJbnRlcmZhY2VzKCkpOwor
ICAgIG1fZGV2VG9vbHNUZXN0SW50ZXJmYWNlcyA9IGFkb3B0UHRyKG5ldyBXZWJUZXN0SW50ZXJm
YWNlcygpKTsKICAgICBtX3Rlc3RSdW5uZXIgPSBhZG9wdFB0cihuZXcgRFJUVGVzdFJ1bm5lcih0
aGlzKSk7CiAgICAgbV90ZXN0SW50ZXJmYWNlcy0+c2V0VGVzdFJ1bm5lcihtX3Rlc3RSdW5uZXIu
Z2V0KCkpOworICAgIG1fZGV2VG9vbHNUZXN0SW50ZXJmYWNlcy0+c2V0VGVzdFJ1bm5lcihtX3Rl
c3RSdW5uZXIuZ2V0KCkpOwogI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVH
QUNZX05PVElGSUNBVElPTlMpCiAgICAgbV9ub3RpZmljYXRpb25QcmVzZW50ZXIgPSBhZG9wdFB0
cihuZXcgTm90aWZpY2F0aW9uUHJlc2VudGVyKHRoaXMpKTsKICNlbmRpZgpAQCAtMTgyLDcgKzE4
NCw3IEBAIHZvaWQgVGVzdFNoZWxsOjppbml0aWFsaXplKCkKIHZvaWQgVGVzdFNoZWxsOjpjcmVh
dGVNYWluV2luZG93KCkKIHsKICAgICBtX2RydERldlRvb2xzQWdlbnQgPSBhZG9wdFB0cihuZXcg
RFJURGV2VG9vbHNBZ2VudCk7Ci0gICAgbV93ZWJWaWV3SG9zdCA9IGFkb3B0UHRyKGNyZWF0ZU5l
d1dpbmRvdyhXZWJVUkwoKSwgbV9kcnREZXZUb29sc0FnZW50LmdldCgpKSk7CisgICAgbV93ZWJW
aWV3SG9zdCA9IGFkb3B0UHRyKGNyZWF0ZU5ld1dpbmRvdyhXZWJVUkwoKSwgbV9kcnREZXZUb29s
c0FnZW50LmdldCgpLCBtX3Rlc3RJbnRlcmZhY2VzLmdldCgpKSk7CiAgICAgbV93ZWJWaWV3ID0g
bV93ZWJWaWV3SG9zdC0+d2ViVmlldygpOwogICAgIG1fdGVzdEludGVyZmFjZXMtPnNldERlbGVn
YXRlKG1fd2ViVmlld0hvc3QuZ2V0KCkpOwogICAgIG1fdGVzdEludGVyZmFjZXMtPnNldFdlYlZp
ZXcobV93ZWJWaWV3KTsKQEAgLTE5NSw2ICsxOTcsOCBAQCBUZXN0U2hlbGw6On5UZXN0U2hlbGwo
KQogewogICAgIG1fdGVzdEludGVyZmFjZXMtPnNldERlbGVnYXRlKDApOwogICAgIG1fdGVzdElu
dGVyZmFjZXMtPnNldFdlYlZpZXcoMCk7CisgICAgbV9kZXZUb29sc1Rlc3RJbnRlcmZhY2VzLT5z
ZXREZWxlZ2F0ZSgwKTsKKyAgICBtX2RldlRvb2xzVGVzdEludGVyZmFjZXMtPnNldFdlYlZpZXco
MCk7CiAgICAgbV90ZXN0UnVubmVyLT5zZXREZWxlZ2F0ZSgwKTsKICAgICBtX3Rlc3RSdW5uZXIt
PnNldFdlYlZpZXcoMCk7CiAgICAgbV9kcnREZXZUb29sc0FnZW50LT5zZXRXZWJWaWV3KDApOwpA
QCAtMjEzLDkgKzIxNywxMSBAQCB2b2lkIFRlc3RTaGVsbDo6c2hvd0RldlRvb2xzKCkKICAgICAg
ICAgICAgIEFTU0VSVChmYWxzZSk7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KLSAg
ICAgICAgbV9kZXZUb29scyA9IGNyZWF0ZU5ld1dpbmRvdyh1cmwpOworICAgICAgICBtX2RldlRv
b2xzID0gY3JlYXRlTmV3V2luZG93KHVybCwgMCwgbV9kZXZUb29sc1Rlc3RJbnRlcmZhY2VzLmdl
dCgpKTsKICAgICAgICAgbV9kZXZUb29scy0+d2ViVmlldygpLT5zZXR0aW5ncygpLT5zZXRNZW1v
cnlJbmZvRW5hYmxlZCh0cnVlKTsKICAgICAgICAgbV9kZXZUb29scy0+c2V0TG9nQ29uc29sZU91
dHB1dChmYWxzZSk7CisgICAgICAgIG1fZGV2VG9vbHNUZXN0SW50ZXJmYWNlcy0+c2V0RGVsZWdh
dGUobV9kZXZUb29scyk7CisgICAgICAgIG1fZGV2VG9vbHNUZXN0SW50ZXJmYWNlcy0+c2V0V2Vi
VmlldyhtX2RldlRvb2xzLT53ZWJWaWV3KCkpOwogICAgICAgICBBU1NFUlQobV9kZXZUb29scyk7
CiAgICAgICAgIGNyZWF0ZURSVERldlRvb2xzQ2xpZW50KG1fZHJ0RGV2VG9vbHNBZ2VudC5nZXQo
KSk7CiAgICAgfQpAQCAtMzE3LDYgKzMyMyw3IEBAIHZvaWQgVGVzdFNoZWxsOjpyZXNldFRlc3RD
b250cm9sbGVyKCkKIHsKICAgICByZXNldFdlYlNldHRpbmdzKCp3ZWJWaWV3KCkpOwogICAgIG1f
dGVzdEludGVyZmFjZXMtPnJlc2V0QWxsKCk7CisgICAgbV9kZXZUb29sc1Rlc3RJbnRlcmZhY2Vz
LT5yZXNldEFsbCgpOwogICAgIG1fdGVzdFJ1bm5lci0+cmVzZXQoKTsKICAgICBtX3dlYlZpZXdI
b3N0LT5yZXNldCgpOwogI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKSB8fCBFTkFCTEUoTEVHQUNZ
X05PVElGSUNBVElPTlMpCkBAIC03NDAsMjcgKzc0NywzMCBAQCB2b2lkIFRlc3RTaGVsbDo6ZHVt
cEltYWdlKFNrQ2FudmFzKiBjYW52YXMpIGNvbnN0CiB2b2lkIFRlc3RTaGVsbDo6YmluZEpTT2Jq
ZWN0c1RvV2luZG93KFdlYkZyYW1lKiBmcmFtZSkKIHsKICAgICBXZWJUZXN0aW5nU3VwcG9ydDo6
aW5qZWN0SW50ZXJuYWxzT2JqZWN0KGZyYW1lKTsKLSAgICBtX3Rlc3RJbnRlcmZhY2VzLT5iaW5k
VG8oZnJhbWUpOworICAgIGlmIChtX2RldlRvb2xzICYmIG1fZGV2VG9vbHMtPndlYlZpZXcoKSA9
PSBmcmFtZS0+dmlldygpKQorICAgICAgICBtX2RldlRvb2xzVGVzdEludGVyZmFjZXMtPmJpbmRU
byhmcmFtZSk7CisgICAgZWxzZQorICAgICAgICBtX3Rlc3RJbnRlcmZhY2VzLT5iaW5kVG8oZnJh
bWUpOwogICAgIG1fdGVzdFJ1bm5lci0+YmluZFRvSmF2YXNjcmlwdChmcmFtZSwgV2ViU3RyaW5n
Ojpmcm9tVVRGOCgidGVzdFJ1bm5lciIpKTsKICAgICBtX3Rlc3RSdW5uZXItPmJpbmRUb0phdmFz
Y3JpcHQoZnJhbWUsIFdlYlN0cmluZzo6ZnJvbVVURjgoImxheW91dFRlc3RDb250cm9sbGVyIikp
OwogfQogCiBXZWJWaWV3SG9zdCogVGVzdFNoZWxsOjpjcmVhdGVOZXdXaW5kb3coY29uc3QgV2Vi
S2l0OjpXZWJVUkwmIHVybCkKIHsKLSAgICByZXR1cm4gY3JlYXRlTmV3V2luZG93KHVybCwgMCk7
CisgICAgcmV0dXJuIGNyZWF0ZU5ld1dpbmRvdyh1cmwsIDAsIG1fdGVzdEludGVyZmFjZXMuZ2V0
KCkpOwogfQogCi1XZWJWaWV3SG9zdCogVGVzdFNoZWxsOjpjcmVhdGVOZXdXaW5kb3coY29uc3Qg
V2ViS2l0OjpXZWJVUkwmIHVybCwgRFJURGV2VG9vbHNBZ2VudCogZGV2VG9vbHNBZ2VudCkKK1dl
YlZpZXdIb3N0KiBUZXN0U2hlbGw6OmNyZWF0ZU5ld1dpbmRvdyhjb25zdCBXZWJLaXQ6OldlYlVS
TCYgdXJsLCBEUlREZXZUb29sc0FnZW50KiBkZXZUb29sc0FnZW50LCBXZWJUZXN0SW50ZXJmYWNl
cyAqdGVzdEludGVyZmFjZXMpCiB7CiAgICAgV2ViVGVzdFByb3h5PFdlYlZpZXdIb3N0LCBUZXN0
U2hlbGwqPiogaG9zdCA9IG5ldyBXZWJUZXN0UHJveHk8V2ViVmlld0hvc3QsIFRlc3RTaGVsbCo+
KHRoaXMpOwotICAgIGhvc3QtPnNldEludGVyZmFjZXMobV90ZXN0SW50ZXJmYWNlcy5nZXQoKSk7
CisgICAgaG9zdC0+c2V0SW50ZXJmYWNlcyh0ZXN0SW50ZXJmYWNlcyk7CiAgICAgaWYgKG1fd2Vi
Vmlld0hvc3QpCiAgICAgICAgIGhvc3QtPnNldERlbGVnYXRlKG1fd2ViVmlld0hvc3QuZ2V0KCkp
OwogICAgIGVsc2UKICAgICAgICAgaG9zdC0+c2V0RGVsZWdhdGUoaG9zdCk7CiAgICAgaG9zdC0+
c2V0UHJveHkoaG9zdCk7CiAgICAgV2ViVmlldyogdmlldyA9IFdlYlZpZXc6OmNyZWF0ZShob3N0
KTsKLSAgICB2aWV3LT5zZXRQZXJtaXNzaW9uQ2xpZW50KG1fdGVzdEludGVyZmFjZXMtPnRlc3RS
dW5uZXIoKS0+d2ViUGVybWlzc2lvbnMoKSk7CisgICAgdmlldy0+c2V0UGVybWlzc2lvbkNsaWVu
dCh0ZXN0SW50ZXJmYWNlcy0+dGVzdFJ1bm5lcigpLT53ZWJQZXJtaXNzaW9ucygpKTsKICAgICB2
aWV3LT5zZXREZXZUb29sc0FnZW50Q2xpZW50KGRldlRvb2xzQWdlbnQpOwogICAgIGhvc3QtPnNl
dFdlYldpZGdldCh2aWV3KTsKICAgICBtX3ByZWZzLmFwcGx5VG8odmlldyk7CmRpZmYgLS1naXQg
YS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0U2hlbGwuaCBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbC5oCmluZGV4IDViZjU0Y2JiYjgzMDhjMjhkNDUw
MDY0NGQ1MDIwMTI5YzQzOWE4ZDUuLjdlNTNiYzliNWI3OGNlNmJhN2IyZDkxNzM0OGFkNmQ3ZWU2
NGNlYTggMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVs
bC5oCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbC5oCkBAIC0x
ODksNyArMTg5LDcgQEAgcHVibGljOgogICAgIHN0ZDo6c3RyaW5nIG5vcm1hbGl6ZUxheW91dFRl
c3RVUkwoY29uc3Qgc3RkOjpzdHJpbmcmKTsKIAogcHJpdmF0ZToKLSAgICBXZWJWaWV3SG9zdCog
Y3JlYXRlTmV3V2luZG93KGNvbnN0IFdlYktpdDo6V2ViVVJMJiwgRFJURGV2VG9vbHNBZ2VudCop
OworICAgIFdlYlZpZXdIb3N0KiBjcmVhdGVOZXdXaW5kb3coY29uc3QgV2ViS2l0OjpXZWJVUkwm
LCBEUlREZXZUb29sc0FnZW50KiwgV2ViVGVzdFJ1bm5lcjo6V2ViVGVzdEludGVyZmFjZXMqKTsK
ICAgICB2b2lkIGNyZWF0ZU1haW5XaW5kb3coKTsKICAgICB2b2lkIGNyZWF0ZURSVERldlRvb2xz
Q2xpZW50KERSVERldlRvb2xzQWdlbnQqKTsKIApAQCAtMjEwLDYgKzIxMCw3IEBAIHByaXZhdGU6
CiAgICAgT3duUHRyPERSVERldlRvb2xzQWdlbnQ+IG1fZHJ0RGV2VG9vbHNBZ2VudDsKICAgICBP
d25QdHI8RFJURGV2VG9vbHNDbGllbnQ+IG1fZHJ0RGV2VG9vbHNDbGllbnQ7CiAgICAgT3duUHRy
PFdlYlRlc3RSdW5uZXI6OldlYlRlc3RJbnRlcmZhY2VzPiBtX3Rlc3RJbnRlcmZhY2VzOworICAg
IE93blB0cjxXZWJUZXN0UnVubmVyOjpXZWJUZXN0SW50ZXJmYWNlcz4gbV9kZXZUb29sc1Rlc3RJ
bnRlcmZhY2VzOwogICAgIE93blB0cjxEUlRUZXN0UnVubmVyPiBtX3Rlc3RSdW5uZXI7CiAjaWYg
RU5BQkxFKE5PVElGSUNBVElPTlMpIHx8IEVOQUJMRShMRUdBQ1lfTk9USUZJQ0FUSU9OUykKICAg
ICBPd25QdHI8Tm90aWZpY2F0aW9uUHJlc2VudGVyPiBtX25vdGlmaWNhdGlvblByZXNlbnRlcjsK
</data>

          </attachment>
      

    </bug>

</bugzilla>