<?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>112300</bug_id>
          
          <creation_ts>2013-03-13 16:53:18 -0700</creation_ts>
          <short_desc>Opening the Web Inspector takes 5s (undocked)</short_desc>
          <delta_ts>2022-03-01 03:00:24 -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>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Timothy Hatcher">timothy</reporter>
          <assigned_to name="Timothy Hatcher">timothy</assigned_to>
          <cc>andersca</cc>
    
    <cc>ap</cc>
    
    <cc>ggaren</cc>
    
    <cc>graouts</cc>
    
    <cc>joepeck</cc>
    
    <cc>sam</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>854792</commentid>
    <comment_count>0</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2013-03-13 16:53:18 -0700</bug_when>
    <thetext>In Safari 6, it only takes 2s. Ideally, it would take less than 200ms.

* STEPS TO REPRODUCE
1. Go to about:blank
2. Opt-Cmd-C to open the Web Inspector to the JS console.
--&gt; Takes 5s

The first two seconds are spent waiting on sync IPC:

Samples	# Self		Symbol Name
64   22.9%	0	 	                        WebKit::WebInspector::createInspectorPage()
64   22.9%	0	 	                         bool CoreIPC::Connection::sendSync&lt;Messages::WebInspectorProxy::CreateInspectorPage&gt;(Messages::WebInspectorProxy::CreateInspectorPage const&amp;, Messages::WebInspectorProxy::CreateInspectorPage::Reply const&amp;, unsigned long long, double, unsigned int)
64   22.9%	0	 	                          CoreIPC::Connection::sendSyncMessage(unsigned long long, WTF::PassOwnPtr&lt;CoreIPC::MessageEncoder&gt;, double, unsigned int)
64   22.9%	0	 	                           CoreIPC::Connection::waitForSyncReply(unsigned long long, double, unsigned int)
64   22.9%	0	 	                            CoreIPC::BinarySemaphore::wait(double)
64   22.9%	0	 	                             WTF::ThreadCondition::timedWait(WTF::Mutex&amp;, double)
64   22.9%	0	 	                              _pthread_cond_wait
64   22.9%	64	 	                               __psynch_cvwait

There seems to be a CoreIPC deadlock, caused by this in the UI process at the same time as the above backtrace:

Samples	# Self		Symbol Name
62   28.8%	0	 	                           WebKit::WebInspectorProxy::createInspectorWindow()
62   28.8%	0	 	                            -[NSWindow setFrameAutosaveName:]
62   28.8%	0	 	                             -[NSWindow _setFrameAutosaveName:changeFrame:]
62   28.8%	0	 	                              -[NSWindow setFrameUsingName:]
62   28.8%	0	 	                               -[NSWindow _setFrameUsingName:domain:force:]
62   28.8%	0	 	                                -[NSWindow _setFrameFromString:overrideTopLeft:constrainFullFrame:force:]
62   28.8%	0	 	                                 -[NSWindow _setFrameCommon:display:stashSize:]
61   28.3%	0	 	                                  -[NSThemeFrame handleSetFrameCommonRedisplay]
61   28.3%	0	 	                                   -[NSView displayIfNeeded]
60   27.9%	0	 	                                    -[NSView _displayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:]
60   27.9%	0	 	                                     -[NSThemeFrame _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
60   27.9%	0	 	                                      -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
60   27.9%	0	 	                                       -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:]
58   26.9%	0	 	                                        -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:]
58   26.9%	0	 	                                         -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:]
58   26.9%	0	 	                                          -[NSView _drawRect:clip:]
58   26.9%	0	 	                                           -[NSView(NSLayerKitGlue) _drawRectAsLayerTree:]
58   26.9%	0	 	                                            CA::Transaction::commit()
58   26.9%	0	 	                                             CA::Context::commit_transaction(CA::Transaction*)
58   26.9%	0	 	                                              CA::Layer::layout_and_display_if_needed(CA::Transaction*)
58   26.9%	0	 	                                               CA::Layer::display_if_needed(CA::Transaction*)
58   26.9%	0	 	                                                CA::Layer::display()
58   26.9%	0	 	                                                 -[NSView(NSLayerKitGlue) _displayLayer:]
58   26.9%	0	 	                                                  +[NSView _performWithoutAnimation:]
58   26.9%	0	 	                                                   WebKit::TiledCoreAnimationDrawingAreaProxy::waitForPossibleGeometryUpdate()
58   26.9%	0	 	                                                    bool CoreIPC::Connection::waitForAndDispatchImmediately&lt;Messages::DrawingAreaProxy::DidUpdateGeometry&gt;(unsigned long long, double)
58   26.9%	0	 	                                                     CoreIPC::Connection::waitForMessage(CoreIPC::StringReference, CoreIPC::StringReference, unsigned long long, double)
58   26.9%	0	 	                                                      WTF::ThreadCondition::timedWait(WTF::Mutex&amp;, double)
58   26.9%	0	 	                                                       _pthread_cond_wait
58   26.9%	58	 	                                                        __psynch_cvwait
￼
&lt;rdar://problem/13412219&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>854807</commentid>
    <comment_count>1</comment_count>
      <attachid>193026</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2013-03-13 17:18:46 -0700</bug_when>
    <thetext>Created attachment 193026
Proposed Change</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>854816</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-13 17:32:20 -0700</bug_when>
    <thetext>Attachment 193026 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebKit2/ChangeLog&apos;, u&apos;Source/WebKit2/Shared/WebPreferencesStore.cpp&apos;, u&apos;Source/WebKit2/Shared/WebPreferencesStore.h&apos;, u&apos;Source/WebKit2/UIProcess/WebInspectorProxy.cpp&apos;, u&apos;Source/WebKit2/UIProcess/WebInspectorProxy.h&apos;, u&apos;Source/WebKit2/UIProcess/mac/WebInspectorProxyMac.mm&apos;]&quot; exit_code: 1
Source/WebKit2/ChangeLog:6:  Need whitespace between colon and description  [changelog/filechangedescriptionwhitespace] [5]
Source/WebKit2/ChangeLog:8:  Need whitespace between colon and description  [changelog/filechangedescriptionwhitespace] [5]
Source/WebKit2/ChangeLog:9:  Need whitespace between colon and description  [changelog/filechangedescriptionwhitespace] [5]
Total errors found: 3 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>854858</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-03-13 19:08:33 -0700</bug_when>
    <thetext>What is the reason for CreateInspectorPage to not be handled? Normally, sync messages are delivered even when waiting for a sync message response, to prevent deadlocks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>854943</commentid>
    <comment_count>4</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2013-03-13 21:40:38 -0700</bug_when>
    <thetext>I&apos;m not sure. Either way this patch is a much better approach. We were just marking the WKView as hidden before anyway. So not trying to make the window until later is cleaner and safer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>854972</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-03-13 23:00:54 -0700</bug_when>
    <thetext>CC&apos;ing Sam and Anders, who may know the answer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>855979</commentid>
    <comment_count>6</comment_count>
      <attachid>193304</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2013-03-15 07:22:52 -0700</bug_when>
    <thetext>Created attachment 193304
Proposed Additional Change</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856334</commentid>
    <comment_count>7</comment_count>
      <attachid>193304</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2013-03-15 15:21:45 -0700</bug_when>
    <thetext>Comment on attachment 193304
Proposed Additional Change

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

r=me

&gt; Source/WebKit/mac/ChangeLog:26
&gt; +2013-03-15  Timothy Hatcher  &lt;timothy@apple.com&gt;
&gt; +
&gt; +        Need a short description (OOPS!).
&gt; +        Need the bug URL (OOPS!).
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        * WebCoreSupport/WebInspectorClient.mm:
&gt; +        (-[WebInspectorWindowController init]):

Oops!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856340</commentid>
    <comment_count>8</comment_count>
      <attachid>193026</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2013-03-15 15:23:26 -0700</bug_when>
    <thetext>Comment on attachment 193026
Proposed Change

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856375</commentid>
    <comment_count>9</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-03-15 16:08:14 -0700</bug_when>
    <thetext>As discussed on IRC, the root cause for the delay is that -[WKView updateLayers] makes UI process wait 0.5 seconds for a DidUpdateGeometry message, and this of course causes a temporary deadlock if WebProcess waits for some sync message response, and cannot send this message.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856395</commentid>
    <comment_count>10</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2013-03-15 16:32:49 -0700</bug_when>
    <thetext>r145961 and r145963</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>193026</attachid>
            <date>2013-03-13 17:18:46 -0700</date>
            <delta_ts>2022-03-01 03:00:24 -0800</delta_ts>
            <desc>Proposed Change</desc>
            <filename>0001-Delay-creating-the-Inspector-window-so-we-don-t-caus.patch</filename>
            <type>text/plain</type>
            <size>15595</size>
            <attacher name="Timothy Hatcher">timothy</attacher>
            
              <data encoding="base64">RnJvbSAyNDJmNDkwNGY0OTcwYTY3MDM2Y2Q0YTk2YTMzYzQwOGQwYmM5ZDU3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBUaW1vdGh5IEhhdGNoZXIgPHRpbW90aHlAYXBwbGUuY29tPgpE
YXRlOiBXZWQsIDEzIE1hciAyMDEzIDIwOjE0OjA4IC0wNDAwClN1YmplY3Q6IFtQQVRDSF0gRGVs
YXkgY3JlYXRpbmcgdGhlIEluc3BlY3RvciB3aW5kb3cgc28gd2UgZG9uJ3QgY2F1c2UgYQogQ29y
ZUlQQyBkZWFkbG9jay4KCk90aGVyIGNoYW5nZXMgaW5jbHVkZToKKiBDcmVhdGUgdGhlIEluc3Bl
Y3RvciBXS1ZpZXcgYXQgdGhlIGNvcnJlY3Qgc2l6ZSBzbyBpdCBkb2VzIG5vdCBuZWVkIHRvCiAg
cmVzaXplIGxhdGVyIHdoZW4gYWRkZWQgdG8gdGhlIHdpbmRvdy4KKiBVcGRhdGUgdGhlIG1pbmlt
dW0gYW5kIGluaXRpYWwgd2luZG93IHNpemVzIHRvIGJldHRlciBtYXRjaCB0aGUgbmV3IFVJLgoq
IFN0b3JlIHRoZSBJbnNwZWN0b3Igd2luZG93IGZyYW1lIGluIFdlYktpdCBwcmVmZXJlbmNlcyBz
byBlYWNoIHBhZ2UgZ3JvdXAKICBjYW4gaGF2ZSBkaWZmZXJlbnQgc2F2ZWQgd2luZG93IGZyYW1l
cy4gSGFuZHkgZm9yIGluc3BlY3RpbmcgdGhlIEluc3BlY3Rvci4KCmh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTIzMDAKcmRhcjovL3Byb2JsZW0vMTM0MTIyMTkKClJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKKiBTaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5j
cHA6CihXZWJLaXQ6OmRlZmF1bHRWYWx1ZUZvcktleSk6CkFkZGVkIEZPUl9FQUNIX1dFQktJVF9T
VFJJTkdfUFJFRkVSRU5DRV9OT1RfSU5fV0VCQ09SRS4KCiogU2hhcmVkL1dlYlByZWZlcmVuY2Vz
U3RvcmUuaDoKKEZPUl9FQUNIX1dFQktJVF9TVFJJTkdfUFJFRkVSRU5DRV9OT1RfSU5fV0VCQ09S
RSk6CkFkZGVkLiBOZWVkZWQgdG8ga2VlcCBXZWJQYWdlOjp1cGRhdGVQcmVmZXJlbmNlcyBmb3Ig
dHJ5aW5nIHRvIHNldCBXZWJDb3JlOjpTZXR0aW5ncy4KCiogVUlQcm9jZXNzL1dlYkluc3BlY3Rv
clByb3h5LmNwcDoKKFdlYktpdDo6V2ViSW5zcGVjdG9yUHJveHk6Om1pbmltdW1XaW5kb3dXaWR0
aCk6CihXZWJLaXQ6OldlYkluc3BlY3RvclByb3h5Ojppbml0aWFsV2luZG93V2lkdGgpOgpCdW1w
ZWQgdGhlIHZhbHVlcyB0byB3b3JrIGJldHRlciB3aXRoIHRoZSBuZXcgVUkuCgoqIFVJUHJvY2Vz
cy9XZWJJbnNwZWN0b3JQcm94eS5oOgooV2ViS2l0OjpXZWJJbnNwZWN0b3JQcm94eTo6d2luZG93
RnJhbWVEaWRDaGFuZ2UpOgpBZGRlZC4KCiogVUlQcm9jZXNzL21hYy9XZWJJbnNwZWN0b3JQcm94
eU1hYy5tbToKKC1bV0tXZWJJbnNwZWN0b3JQcm94eU9iakNBZGFwdGVyIHdpbmRvd0RpZE1vdmU6
XSk6CigtW1dLV2ViSW5zcGVjdG9yUHJveHlPYmpDQWRhcHRlciB3aW5kb3dEaWRSZXNpemU6XSk6
CkNhbGwgV2ViSW5zcGVjdG9yUHJveHk6OndpbmRvd0ZyYW1lRGlkQ2hhbmdlLgoKKFdlYktpdDo6
V2ViSW5zcGVjdG9yUHJveHk6OmNyZWF0ZUluc3BlY3RvcldpbmRvdyk6ClVzZSB0aGUgcHJlZmVy
ZW5jZXMgZm9yIHRoZSBwYWdlIGdyb3VwIHRvIGdldCB0aGUgd2luZG93IGZyYW1lLgoKKFdlYktp
dDo6V2ViSW5zcGVjdG9yUHJveHk6OnBsYXRmb3JtQ3JlYXRlSW5zcGVjdG9yUGFnZSk6ClN0b3Ag
Y2FsbGluZyBwbGF0Zm9ybUF0dGFjaCBvciBjcmVhdGVJbnNwZWN0b3JXaW5kb3csIGRvIGl0IGlu
IHBsYXRmb3JtT3Blbi4KCihXZWJLaXQ6OldlYkluc3BlY3RvclByb3h5OjpwbGF0Zm9ybU9wZW4p
OgpDYWxsIHBsYXRmb3JtQXR0YWNoIG9yIGNyZWF0ZUluc3BlY3RvcldpbmRvdyBoZXJlIGluc3Rl
YWQuCgooV2ViS2l0OjpXZWJJbnNwZWN0b3JQcm94eTo6d2luZG93RnJhbWVEaWRDaGFuZ2UpOgpB
ZGRlZC4gU3RvcmUgdGhlIGZyYW1lIGluIHRoZSBwYWdlIGdyb3VwJ3MgcHJlZmVyZW5jZXMuCgoo
V2ViS2l0OjpXZWJJbnNwZWN0b3JQcm94eTo6cGxhdGZvcm1BdHRhY2gpOgooV2ViS2l0OjpXZWJJ
bnNwZWN0b3JQcm94eTo6cGxhdGZvcm1EZXRhY2gpOgpSZW1vdmUgY29kZSB0aGF0IGNhbGxlZCBz
ZXRIaWRkZW46LiBXZSBkb24ndCBuZWVkIHRvIGRvIHRoYXQgYW55bW9yZS4KLS0tCiBTb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDU0ICsrKysrKysr
KysrKysrCiBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5jcHAgICAg
ICB8ICAxICsKIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmggICAg
ICAgIHwgIDQgKwogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkluc3BlY3RvclByb3h5LmNw
cCAgICAgfCAgNCArLQogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkluc3BlY3RvclByb3h5
LmggICAgICAgfCAgMSArCiAuLi4vV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dlYkluc3BlY3RvclBy
b3h5TWFjLm1tICB8IDg1ICsrKysrKysrKysrKysrKy0tLS0tLS0KIDYgZmlsZXMgY2hhbmdlZCwg
MTIwIGluc2VydGlvbnMoKyksIDI5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCBkNDFiOWNk
Li40ZWQ5NGE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTcgQEAKKzIwMTMtMDMtMTMgIFRpbW90
aHkgSGF0Y2hlciAgPHRpbW90aHlAYXBwbGUuY29tPgorCisgICAgICAgIERlbGF5IGNyZWF0aW5n
IHRoZSBJbnNwZWN0b3Igd2luZG93IHNvIHdlIGRvbid0IGNhdXNlIGEgQ29yZUlQQyBkZWFkbG9j
ay4KKworICAgICAgICBPdGhlciBjaGFuZ2VzIGluY2x1ZGU6CisgICAgICAgICogQ3JlYXRlIHRo
ZSBJbnNwZWN0b3IgV0tWaWV3IGF0IHRoZSBjb3JyZWN0IHNpemUgc28gaXQgZG9lcyBub3QgbmVl
ZCB0bworICAgICAgICAgIHJlc2l6ZSBsYXRlciB3aGVuIGFkZGVkIHRvIHRoZSB3aW5kb3cuCisg
ICAgICAgICogVXBkYXRlIHRoZSBtaW5pbXVtIGFuZCBpbml0aWFsIHdpbmRvdyBzaXplcyB0byBi
ZXR0ZXIgbWF0Y2ggdGhlIG5ldyBVSS4KKyAgICAgICAgKiBTdG9yZSB0aGUgSW5zcGVjdG9yIHdp
bmRvdyBmcmFtZSBpbiBXZWJLaXQgcHJlZmVyZW5jZXMgc28gZWFjaCBwYWdlIGdyb3VwCisgICAg
ICAgICAgY2FuIGhhdmUgZGlmZmVyZW50IHNhdmVkIHdpbmRvdyBmcmFtZXMuIEhhbmR5IGZvciBp
bnNwZWN0aW5nIHRoZSBJbnNwZWN0b3IuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTExMjMwMAorICAgICAgICByZGFyOi8vcHJvYmxlbS8xMzQxMjIx
OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2hh
cmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuY3BwOgorICAgICAgICAoV2ViS2l0OjpkZWZhdWx0VmFs
dWVGb3JLZXkpOgorICAgICAgICBBZGRlZCBGT1JfRUFDSF9XRUJLSVRfU1RSSU5HX1BSRUZFUkVO
Q0VfTk9UX0lOX1dFQkNPUkUuCisKKyAgICAgICAgKiBTaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9y
ZS5oOgorICAgICAgICAoRk9SX0VBQ0hfV0VCS0lUX1NUUklOR19QUkVGRVJFTkNFX05PVF9JTl9X
RUJDT1JFKToKKyAgICAgICAgQWRkZWQuIE5lZWRlZCB0byBrZWVwIFdlYlBhZ2U6OnVwZGF0ZVBy
ZWZlcmVuY2VzIGZvciB0cnlpbmcgdG8gc2V0IFdlYkNvcmU6OlNldHRpbmdzLgorCisgICAgICAg
ICogVUlQcm9jZXNzL1dlYkluc3BlY3RvclByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2Vi
SW5zcGVjdG9yUHJveHk6Om1pbmltdW1XaW5kb3dXaWR0aCk6CisgICAgICAgIChXZWJLaXQ6Oldl
Ykluc3BlY3RvclByb3h5Ojppbml0aWFsV2luZG93V2lkdGgpOgorICAgICAgICBCdW1wZWQgdGhl
IHZhbHVlcyB0byB3b3JrIGJldHRlciB3aXRoIHRoZSBuZXcgVUkuCisKKyAgICAgICAgKiBVSVBy
b2Nlc3MvV2ViSW5zcGVjdG9yUHJveHkuaDoKKyAgICAgICAgKFdlYktpdDo6V2ViSW5zcGVjdG9y
UHJveHk6OndpbmRvd0ZyYW1lRGlkQ2hhbmdlKToKKyAgICAgICAgQWRkZWQuCisKKyAgICAgICAg
KiBVSVByb2Nlc3MvbWFjL1dlYkluc3BlY3RvclByb3h5TWFjLm1tOgorICAgICAgICAoLVtXS1dl
Ykluc3BlY3RvclByb3h5T2JqQ0FkYXB0ZXIgd2luZG93RGlkTW92ZTpdKToKKyAgICAgICAgKC1b
V0tXZWJJbnNwZWN0b3JQcm94eU9iakNBZGFwdGVyIHdpbmRvd0RpZFJlc2l6ZTpdKToKKyAgICAg
ICAgQ2FsbCBXZWJJbnNwZWN0b3JQcm94eTo6d2luZG93RnJhbWVEaWRDaGFuZ2UuCisKKyAgICAg
ICAgKFdlYktpdDo6V2ViSW5zcGVjdG9yUHJveHk6OmNyZWF0ZUluc3BlY3RvcldpbmRvdyk6Cisg
ICAgICAgIFVzZSB0aGUgcHJlZmVyZW5jZXMgZm9yIHRoZSBwYWdlIGdyb3VwIHRvIGdldCB0aGUg
d2luZG93IGZyYW1lLgorCisgICAgICAgIChXZWJLaXQ6OldlYkluc3BlY3RvclByb3h5OjpwbGF0
Zm9ybUNyZWF0ZUluc3BlY3RvclBhZ2UpOgorICAgICAgICBTdG9wIGNhbGxpbmcgcGxhdGZvcm1B
dHRhY2ggb3IgY3JlYXRlSW5zcGVjdG9yV2luZG93LCBkbyBpdCBpbiBwbGF0Zm9ybU9wZW4uCisK
KyAgICAgICAgKFdlYktpdDo6V2ViSW5zcGVjdG9yUHJveHk6OnBsYXRmb3JtT3Blbik6CisgICAg
ICAgIENhbGwgcGxhdGZvcm1BdHRhY2ggb3IgY3JlYXRlSW5zcGVjdG9yV2luZG93IGhlcmUgaW5z
dGVhZC4KKworICAgICAgICAoV2ViS2l0OjpXZWJJbnNwZWN0b3JQcm94eTo6d2luZG93RnJhbWVE
aWRDaGFuZ2UpOgorICAgICAgICBBZGRlZC4gU3RvcmUgdGhlIGZyYW1lIGluIHRoZSBwYWdlIGdy
b3VwJ3MgcHJlZmVyZW5jZXMuCisKKyAgICAgICAgKFdlYktpdDo6V2ViSW5zcGVjdG9yUHJveHk6
OnBsYXRmb3JtQXR0YWNoKToKKyAgICAgICAgKFdlYktpdDo6V2ViSW5zcGVjdG9yUHJveHk6OnBs
YXRmb3JtRGV0YWNoKToKKyAgICAgICAgUmVtb3ZlIGNvZGUgdGhhdCBjYWxsZWQgc2V0SGlkZGVu
Oi4gV2UgZG9uJ3QgbmVlZCB0byBkbyB0aGF0IGFueW1vcmUuCisKIDIwMTMtMDMtMDggIFRpbW90
aHkgSGF0Y2hlciAgPHRpbW90aHlAYXBwbGUuY29tPgogCiAgICAgICAgIE1ha2UgdGhlIFdlYktp
dDIgV2ViIEluc3BlY3RvciB1c2UgdGlsZWQgZHJhd2luZyBhbmQgYWNjZWxlcmF0ZWQgZHJhd2lu
Zy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3Jl
LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmNwcAppbmRl
eCBkMDUwZTU3Li5lNDlhZTUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2Vi
UHJlZmVyZW5jZXNTdG9yZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZl
cmVuY2VzU3RvcmUuY3BwCkBAIC0xMDQsNiArMTA0LDcgQEAgU3RyaW5nIGRlZmF1bHRWYWx1ZUZv
cktleShjb25zdCBTdHJpbmcmIGtleSkKICAgICBpZiAoZGVmYXVsdHMuaXNFbXB0eSgpKSB7CiAj
ZGVmaW5lIERFRklORV9TVFJJTkdfREVGQVVMVFMoS2V5VXBwZXIsIEtleUxvd2VyLCBUeXBlTmFt
ZSwgVHlwZSwgRGVmYXVsdFZhbHVlKSBkZWZhdWx0cy5zZXQoV2ViUHJlZmVyZW5jZXNLZXk6Oktl
eUxvd2VyIyNLZXkoKSwgRGVmYXVsdFZhbHVlKTsKICAgICAgICAgRk9SX0VBQ0hfV0VCS0lUX1NU
UklOR19QUkVGRVJFTkNFKERFRklORV9TVFJJTkdfREVGQVVMVFMpCisgICAgICAgIEZPUl9FQUNI
X1dFQktJVF9TVFJJTkdfUFJFRkVSRU5DRV9OT1RfSU5fV0VCQ09SRShERUZJTkVfU1RSSU5HX0RF
RkFVTFRTKQogI3VuZGVmIERFRklORV9TVFJJTkdfREVGQVVMVFMKICAgICB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmggYi9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oCmluZGV4IGRhY2NhZjMuLjkxNGRj
OWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3Jl
LmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaApAQCAt
MTk5LDYgKzE5OSw5IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogICAgIG1hY3JvKEZUUERpcmVjdG9y
eVRlbXBsYXRlUGF0aCwgZnRwRGlyZWN0b3J5VGVtcGxhdGVQYXRoLCBTdHJpbmcsIFN0cmluZywg
IiIpIFwKICAgICBcCiAKKyNkZWZpbmUgRk9SX0VBQ0hfV0VCS0lUX1NUUklOR19QUkVGRVJFTkNF
X05PVF9JTl9XRUJDT1JFKG1hY3JvKSBcCisgICAgbWFjcm8oSW5zcGVjdG9yV2luZG93RnJhbWUs
IGluc3BlY3RvcldpbmRvd0ZyYW1lLCBTdHJpbmcsIFN0cmluZywgIiIpIFwKKyAgICBcCiAKICNk
ZWZpbmUgRk9SX0VBQ0hfV0VCS0lUX1BSRUZFUkVOQ0UobWFjcm8pIFwKICAgICBGT1JfRUFDSF9X
RUJLSVRfQk9PTF9QUkVGRVJFTkNFKG1hY3JvKSBcCkBAIC0yMDYsNiArMjA5LDcgQEAgbmFtZXNw
YWNlIFdlYktpdCB7CiAgICAgRk9SX0VBQ0hfV0VCS0lUX0ZMT0FUX1BSRUZFUkVOQ0UobWFjcm8p
IFwKICAgICBGT1JfRUFDSF9XRUJLSVRfVUlOVDMyX1BSRUZFUkVOQ0UobWFjcm8pIFwKICAgICBG
T1JfRUFDSF9XRUJLSVRfU1RSSU5HX1BSRUZFUkVOQ0UobWFjcm8pIFwKKyAgICBGT1JfRUFDSF9X
RUJLSVRfU1RSSU5HX1BSRUZFUkVOQ0VfTk9UX0lOX1dFQkNPUkUobWFjcm8pIFwKICAgICBcCiAK
IG5hbWVzcGFjZSBXZWJQcmVmZXJlbmNlc0tleSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvV2ViSW5zcGVjdG9yUHJveHkuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYkluc3BlY3RvclByb3h5LmNwcAppbmRleCBmNDZkNzk1Li43ZmUwNzRhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSW5zcGVjdG9yUHJveHkuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJJbnNwZWN0b3JQcm94eS5jcHAKQEAgLTQ4LDEw
ICs0OCwxMCBAQCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogbmFtZXNwYWNlIFdlYktpdCB7
CiAKLWNvbnN0IHVuc2lnbmVkIFdlYkluc3BlY3RvclByb3h5OjptaW5pbXVtV2luZG93V2lkdGgg
PSA1MDA7Citjb25zdCB1bnNpZ25lZCBXZWJJbnNwZWN0b3JQcm94eTo6bWluaW11bVdpbmRvd1dp
ZHRoID0gNzUwOwogY29uc3QgdW5zaWduZWQgV2ViSW5zcGVjdG9yUHJveHk6Om1pbmltdW1XaW5k
b3dIZWlnaHQgPSA0MDA7CiAKLWNvbnN0IHVuc2lnbmVkIFdlYkluc3BlY3RvclByb3h5Ojppbml0
aWFsV2luZG93V2lkdGggPSA3NTA7Citjb25zdCB1bnNpZ25lZCBXZWJJbnNwZWN0b3JQcm94eTo6
aW5pdGlhbFdpbmRvd1dpZHRoID0gMTAwMDsKIGNvbnN0IHVuc2lnbmVkIFdlYkluc3BlY3RvclBy
b3h5Ojppbml0aWFsV2luZG93SGVpZ2h0ID0gNjUwOwogCiBjb25zdCB1bnNpZ25lZCBXZWJJbnNw
ZWN0b3JQcm94eTo6bWluaW11bUF0dGFjaGVkSGVpZ2h0ID0gMjUwOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkluc3BlY3RvclByb3h5LmggYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvV2ViSW5zcGVjdG9yUHJveHkuaAppbmRleCBlNmVkNDI3Li42NTYwZTNhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSW5zcGVjdG9yUHJveHkuaAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSW5zcGVjdG9yUHJveHkuaApAQCAtODgs
NiArODgsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBjcmVhdGVJbnNwZWN0b3JXaW5kb3coKTsKICAg
ICB2b2lkIHVwZGF0ZUluc3BlY3RvcldpbmRvd1RpdGxlKCkgY29uc3Q7CiAgICAgdm9pZCBpbnNw
ZWN0ZWRWaWV3RnJhbWVEaWRDaGFuZ2UoKTsKKyAgICB2b2lkIHdpbmRvd0ZyYW1lRGlkQ2hhbmdl
KCk7CiAKICAgICB2b2lkIHNldEluc3BlY3RvcldpbmRvd0ZyYW1lKFdLUmVjdCYpOwogICAgIFdL
UmVjdCBpbnNwZWN0b3JXaW5kb3dGcmFtZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL21hYy9XZWJJbnNwZWN0b3JQcm94eU1hYy5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9tYWMvV2ViSW5zcGVjdG9yUHJveHlNYWMubW0KaW5kZXggM2NkNTliMS4uMTk3NGJl
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9XZWJJbnNwZWN0b3JQ
cm94eU1hYy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dlYkluc3BlY3Rv
clByb3h5TWFjLm1tCkBAIC01Myw2ICs1Myw4IEBAIHN0YXRpYyBjb25zdCBDR0Zsb2F0IHdpbmRv
d0NvbnRlbnRCb3JkZXJUaGlja25lc3MgPSA1NTsKIC8vIFRoZSBtYXJnaW4gZnJvbSB0aGUgdG9w
IGFuZCByaWdodCBvZiB0aGUgZG9jayBidXR0b24gKHNhbWUgYXMgdGhlIGZ1bGwgc2NyZWVuIGJ1
dHRvbikuCiBzdGF0aWMgY29uc3QgQ0dGbG9hdCBkb2NrQnV0dG9uTWFyZ2luID0gMzsKIAorc3Rh
dGljIGNvbnN0IE5TVUludGVnZXIgd2luZG93U3R5bGVNYXNrID0gTlNUaXRsZWRXaW5kb3dNYXNr
IHwgTlNDbG9zYWJsZVdpbmRvd01hc2sgfCBOU01pbmlhdHVyaXphYmxlV2luZG93TWFzayB8IE5T
UmVzaXphYmxlV2luZG93TWFzayB8IE5TVGV4dHVyZWRCYWNrZ3JvdW5kV2luZG93TWFzazsKKwog
Ly8gV0tXZWJJbnNwZWN0b3JQcm94eU9iakNBZGFwdGVyIGlzIGEgaGVscGVyIE9iakMgb2JqZWN0
IHVzZWQgYXMgYSBkZWxlZ2F0ZSBvciBub3RpZmljYXRpb24gb2JzZXJ2ZXIKIC8vIGZvciB0aGUg
c29sZSBwdXJwb3NlIG9mIGdldHRpbmcgYmFjayBpbnRvIHRoZSBDKysgY29kZSBmcm9tIGFuIE9i
akMgY2FsbGVyLgogCkBAIC05Miw2ICs5NCwxNiBAQCAtICh2b2lkKWNsb3NlCiAgICAgX2luc3Bl
Y3RvclByb3h5ID0gMDsKIH0KIAorLSAodm9pZCl3aW5kb3dEaWRNb3ZlOihOU05vdGlmaWNhdGlv
biAqKW5vdGlmaWNhdGlvbgoreworICAgIHN0YXRpY19jYXN0PFdlYkluc3BlY3RvclByb3h5Kj4o
X2luc3BlY3RvclByb3h5KS0+d2luZG93RnJhbWVEaWRDaGFuZ2UoKTsKK30KKworLSAodm9pZCl3
aW5kb3dEaWRSZXNpemU6KE5TTm90aWZpY2F0aW9uICopbm90aWZpY2F0aW9uCit7CisgICAgc3Rh
dGljX2Nhc3Q8V2ViSW5zcGVjdG9yUHJveHkqPihfaW5zcGVjdG9yUHJveHkpLT53aW5kb3dGcmFt
ZURpZENoYW5nZSgpOworfQorCiAtICh2b2lkKXdpbmRvd1dpbGxDbG9zZTooTlNOb3RpZmljYXRp
b24gKilub3RpZmljYXRpb24KIHsKICAgICBzdGF0aWNfY2FzdDxXZWJJbnNwZWN0b3JQcm94eSo+
KF9pbnNwZWN0b3JQcm94eSktPmNsb3NlKCk7CkBAIC0yMjIsOCArMjM0LDE1IEBAIHZvaWQgV2Vi
SW5zcGVjdG9yUHJveHk6OmNyZWF0ZUluc3BlY3RvcldpbmRvdygpCiB7CiAgICAgQVNTRVJUKCFt
X2luc3BlY3RvcldpbmRvdyk7CiAKLSAgICBOU1VJbnRlZ2VyIHN0eWxlTWFzayA9IChOU1RpdGxl
ZFdpbmRvd01hc2sgfCBOU0Nsb3NhYmxlV2luZG93TWFzayB8IE5TTWluaWF0dXJpemFibGVXaW5k
b3dNYXNrIHwgTlNSZXNpemFibGVXaW5kb3dNYXNrIHwgTlNUZXh0dXJlZEJhY2tncm91bmRXaW5k
b3dNYXNrKTsKLSAgICBXS1dlYkluc3BlY3RvcldpbmRvdyAqd2luZG93ID0gW1tXS1dlYkluc3Bl
Y3RvcldpbmRvdyBhbGxvY10gaW5pdFdpdGhDb250ZW50UmVjdDpOU01ha2VSZWN0KDAsIDAsIGlu
aXRpYWxXaW5kb3dXaWR0aCwgaW5pdGlhbFdpbmRvd0hlaWdodCkgc3R5bGVNYXNrOnN0eWxlTWFz
ayBiYWNraW5nOk5TQmFja2luZ1N0b3JlQnVmZmVyZWQgZGVmZXI6Tk9dOworICAgIE5TUmVjdCB3
aW5kb3dGcmFtZSA9IE5TTWFrZVJlY3QoMCwgMCwgaW5pdGlhbFdpbmRvd1dpZHRoLCBpbml0aWFs
V2luZG93SGVpZ2h0KTsKKworICAgIC8vIFJlc3RvcmUgdGhlIHNhdmVkIHdpbmRvdyBmcmFtZSwg
aWYgdGhlcmUgd2FzIG9uZS4KKyAgICBOU1N0cmluZyAqc2F2ZWRXaW5kb3dGcmFtZVN0cmluZyA9
IHBhZ2UoKS0+cGFnZUdyb3VwKCktPnByZWZlcmVuY2VzKCktPmluc3BlY3RvcldpbmRvd0ZyYW1l
KCk7CisgICAgTlNSZWN0IHNhdmVkV2luZG93RnJhbWUgPSBOU1JlY3RGcm9tU3RyaW5nKHNhdmVk
V2luZG93RnJhbWVTdHJpbmcpOworICAgIGlmICghTlNJc0VtcHR5UmVjdChzYXZlZFdpbmRvd0Zy
YW1lKSkKKyAgICAgICAgd2luZG93RnJhbWUgPSBzYXZlZFdpbmRvd0ZyYW1lOworCisgICAgV0tX
ZWJJbnNwZWN0b3JXaW5kb3cgKndpbmRvdyA9IFtbV0tXZWJJbnNwZWN0b3JXaW5kb3cgYWxsb2Nd
IGluaXRXaXRoQ29udGVudFJlY3Q6d2luZG93RnJhbWUgc3R5bGVNYXNrOndpbmRvd1N0eWxlTWFz
ayBiYWNraW5nOk5TQmFja2luZ1N0b3JlQnVmZmVyZWQgZGVmZXI6Tk9dOwogICAgIFt3aW5kb3cg
c2V0RGVsZWdhdGU6bV9pbnNwZWN0b3JQcm94eU9iakNBZGFwdGVyLmdldCgpXTsKICAgICBbd2lu
ZG93IHNldE1pblNpemU6TlNNYWtlU2l6ZShtaW5pbXVtV2luZG93V2lkdGgsIG1pbmltdW1XaW5k
b3dIZWlnaHQpXTsKICAgICBbd2luZG93IHNldFJlbGVhc2VkV2hlbkNsb3NlZDpOT107CkBAIC0y
MzQsNyArMjUzLDcgQEAgdm9pZCBXZWJJbnNwZWN0b3JQcm94eTo6Y3JlYXRlSW5zcGVjdG9yV2lu
ZG93KCkKICAgICBOU1ZpZXcgKmNvbnRlbnRWaWV3ID0gW3dpbmRvdyBjb250ZW50Vmlld107CiAK
ICAgICAvLyBDcmVhdGUgYSBmdWxsIHNjcmVlbiBidXR0b24gc28gd2UgY2FuIHR1cm4gaXQgaW50
byBhIGRvY2sgYnV0dG9uLgotICAgIG1fZG9ja0J1dHRvbiA9IFtOU1dpbmRvdyBzdGFuZGFyZFdp
bmRvd0J1dHRvbjpOU1dpbmRvd0Z1bGxTY3JlZW5CdXR0b24gZm9yU3R5bGVNYXNrOnN0eWxlTWFz
a107CisgICAgbV9kb2NrQnV0dG9uID0gW05TV2luZG93IHN0YW5kYXJkV2luZG93QnV0dG9uOk5T
V2luZG93RnVsbFNjcmVlbkJ1dHRvbiBmb3JTdHlsZU1hc2s6d2luZG93U3R5bGVNYXNrXTsKICAg
ICBtX2RvY2tCdXR0b24uZ2V0KCkudGFyZ2V0ID0gbV9pbnNwZWN0b3JQcm94eU9iakNBZGFwdGVy
LmdldCgpOwogICAgIG1fZG9ja0J1dHRvbi5nZXQoKS5hY3Rpb24gPSBAc2VsZWN0b3IoYXR0YWNo
Oik7CiAKQEAgLTI3NSwxMCArMjk0LDkgQEAgdm9pZCBXZWJJbnNwZWN0b3JQcm94eTo6Y3JlYXRl
SW5zcGVjdG9yV2luZG93KCkKICAgICBbbV9pbnNwZWN0b3JWaWV3LmdldCgpIHNldEF1dG9yZXNp
emluZ01hc2s6TlNWaWV3V2lkdGhTaXphYmxlIHwgTlNWaWV3SGVpZ2h0U2l6YWJsZV07CiAgICAg
W2NvbnRlbnRWaWV3IGFkZFN1YnZpZXc6bV9pbnNwZWN0b3JWaWV3LmdldCgpXTsKIAotICAgIC8v
IENlbnRlciB0aGUgd2luZG93IGluaXRpYWxseSBiZWZvcmUgc2V0dGluZyB0aGUgZnJhbWUgYXV0
b3NhdmUgbmFtZSBzbyB0aGF0IHRoZSB3aW5kb3cgd2lsbCBiZSBpbiBhIGdvb2QKLSAgICAvLyBw
b3NpdGlvbiBpZiB0aGVyZSBpcyBubyBzYXZlZCBmcmFtZSB5ZXQuCi0gICAgW3dpbmRvdyBjZW50
ZXJdOwotICAgIFt3aW5kb3cgc2V0RnJhbWVBdXRvc2F2ZU5hbWU6QCJXZWIgSW5zcGVjdG9yIDIi
XTsKKyAgICAvLyBDZW50ZXIgdGhlIHdpbmRvdyBpZiB0aGUgc2F2ZWQgZnJhbWUgd2FzIGVtcHR5
LgorICAgIGlmIChOU0lzRW1wdHlSZWN0KHNhdmVkV2luZG93RnJhbWUpKQorICAgICAgICBbd2lu
ZG93IGNlbnRlcl07CiAKICAgICBtX2luc3BlY3RvcldpbmRvdy5hZG9wdE5TKHdpbmRvdyk7CiAK
QEAgLTI5OSwxOCArMzE3LDI2IEBAIFdlYlBhZ2VQcm94eSogV2ViSW5zcGVjdG9yUHJveHk6OnBs
YXRmb3JtQ3JlYXRlSW5zcGVjdG9yUGFnZSgpCiAgICAgQVNTRVJUKG1fcGFnZSk7CiAgICAgQVNT
RVJUKCFtX2luc3BlY3RvclZpZXcpOwogCi0gICAgbV9pbnNwZWN0b3JWaWV3LmFkb3B0TlMoW1tX
S1dlYkluc3BlY3RvcldLVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAs
IGluaXRpYWxXaW5kb3dXaWR0aCwgaW5pdGlhbFdpbmRvd0hlaWdodCkgY29udGV4dFJlZjp0b0FQ
SShwYWdlKCktPnByb2Nlc3MoKS0+Y29udGV4dCgpKSBwYWdlR3JvdXBSZWY6dG9BUEkoaW5zcGVj
dG9yUGFnZUdyb3VwKCkpIHJlbGF0ZWRUb1BhZ2U6dG9BUEkobV9wYWdlKV0pOworICAgIE5TUmVj
dCBpbml0aWFsUmVjdDsKKyAgICBpZiAobV9pc0F0dGFjaGVkKSB7CisgICAgICAgIE5TUmVjdCBp
bnNwZWN0ZWRWaWV3RnJhbWUgPSBtX3BhZ2UtPndrVmlldygpLmZyYW1lOworICAgICAgICBpbml0
aWFsUmVjdCA9IE5TTWFrZVJlY3QoTlNNaW5YKGluc3BlY3RlZFZpZXdGcmFtZSksIDAsIE5TV2lk
dGgoaW5zcGVjdGVkVmlld0ZyYW1lKSwgaW5zcGVjdG9yUGFnZUdyb3VwKCktPnByZWZlcmVuY2Vz
KCktPmluc3BlY3RvckF0dGFjaGVkSGVpZ2h0KCkpOworICAgIH0gZWxzZSB7CisgICAgICAgIGlu
aXRpYWxSZWN0ID0gTlNNYWtlUmVjdCgwLCAwLCBpbml0aWFsV2luZG93V2lkdGgsIGluaXRpYWxX
aW5kb3dIZWlnaHQpOworCisgICAgICAgIE5TU3RyaW5nICp3aW5kb3dGcmFtZVN0cmluZyA9IHBh
Z2UoKS0+cGFnZUdyb3VwKCktPnByZWZlcmVuY2VzKCktPmluc3BlY3RvcldpbmRvd0ZyYW1lKCk7
CisgICAgICAgIE5TUmVjdCB3aW5kb3dGcmFtZSA9IE5TUmVjdEZyb21TdHJpbmcod2luZG93RnJh
bWVTdHJpbmcpOworICAgICAgICBpZiAoIU5TSXNFbXB0eVJlY3Qod2luZG93RnJhbWUpKQorICAg
ICAgICAgICAgaW5pdGlhbFJlY3QgPSBbTlNXaW5kb3cgY29udGVudFJlY3RGb3JGcmFtZVJlY3Q6
d2luZG93RnJhbWUgc3R5bGVNYXNrOndpbmRvd1N0eWxlTWFza107CisgICAgfQorCisgICAgbV9p
bnNwZWN0b3JWaWV3LmFkb3B0TlMoW1tXS1dlYkluc3BlY3RvcldLVmlldyBhbGxvY10gaW5pdFdp
dGhGcmFtZTppbml0aWFsUmVjdCBjb250ZXh0UmVmOnRvQVBJKHBhZ2UoKS0+cHJvY2VzcygpLT5j
b250ZXh0KCkpIHBhZ2VHcm91cFJlZjp0b0FQSShpbnNwZWN0b3JQYWdlR3JvdXAoKSkgcmVsYXRl
ZFRvUGFnZTp0b0FQSShtX3BhZ2UpXSk7CiAgICAgQVNTRVJUKG1faW5zcGVjdG9yVmlldyk7CiAK
ICAgICBbbV9pbnNwZWN0b3JWaWV3LmdldCgpIHNldERyYXdzQmFja2dyb3VuZDpOT107CiAKICAg
ICBtX2luc3BlY3RvclByb3h5T2JqQ0FkYXB0ZXIuYWRvcHROUyhbW1dLV2ViSW5zcGVjdG9yUHJv
eHlPYmpDQWRhcHRlciBhbGxvY10gaW5pdFdpdGhXZWJJbnNwZWN0b3JQcm94eTp0aGlzXSk7CiAK
LSAgICBpZiAobV9pc0F0dGFjaGVkKQotICAgICAgICBwbGF0Zm9ybUF0dGFjaCgpOwotICAgIGVs
c2UKLSAgICAgICAgY3JlYXRlSW5zcGVjdG9yV2luZG93KCk7Ci0KICAgICBXZWJQYWdlUHJveHkq
IGluc3BlY3RvclBhZ2UgPSB0b0ltcGwobV9pbnNwZWN0b3JWaWV3LmdldCgpLnBhZ2VSZWYpOwog
CiAgICAgV0tQYWdlVUlDbGllbnQgdWlDbGllbnQgPSB7CkBAIC0zNzEsMTQgKzM5NywxMiBAQCBX
ZWJQYWdlUHJveHkqIFdlYkluc3BlY3RvclByb3h5OjpwbGF0Zm9ybUNyZWF0ZUluc3BlY3RvclBh
Z2UoKQogCiB2b2lkIFdlYkluc3BlY3RvclByb3h5OjpwbGF0Zm9ybU9wZW4oKQogewotICAgIGlm
IChtX2lzQXR0YWNoZWQpIHsKLSAgICAgICAgLy8gTWFrZSB0aGUgaW5zcGVjdG9yIHZpZXcgdmlz
aWJsZSBzaW5jZSBpdCB3YXMgaGlkZGVuIHdoaWxlIGxvYWRpbmcuCi0gICAgICAgIFttX2luc3Bl
Y3RvclZpZXcuZ2V0KCkgc2V0SGlkZGVuOk5PXTsKKyAgICBpZiAobV9pc0F0dGFjaGVkKQorICAg
ICAgICBwbGF0Zm9ybUF0dGFjaCgpOworICAgIGVsc2UKKyAgICAgICAgY3JlYXRlSW5zcGVjdG9y
V2luZG93KCk7CiAKLSAgICAgICAgLy8gQWRqdXN0IHRoZSBmcmFtZXMgbm93IHRoYXQgd2UgYXJl
IHZpc2libGUgYW5kIGluc3BlY3RlZFZpZXdGcmFtZURpZENoYW5nZSB3b250IHJldHVybiBlYXJs
eS4KLSAgICAgICAgaW5zcGVjdGVkVmlld0ZyYW1lRGlkQ2hhbmdlKCk7Ci0gICAgfSBlbHNlCi0g
ICAgICAgIFttX2luc3BlY3RvcldpbmRvdy5nZXQoKSBtYWtlS2V5QW5kT3JkZXJGcm9udDpuaWxd
OworICAgIHBsYXRmb3JtQnJpbmdUb0Zyb250KCk7CiB9CiAKIHZvaWQgV2ViSW5zcGVjdG9yUHJv
eHk6OnBsYXRmb3JtRGlkQ2xvc2UoKQpAQCAtNDIwLDYgKzQ0NCwxOSBAQCB2b2lkIFdlYkluc3Bl
Y3RvclByb3h5OjpwbGF0Zm9ybUluc3BlY3RlZFVSTENoYW5nZWQoY29uc3QgU3RyaW5nJiB1cmxT
dHJpbmcpCiAgICAgdXBkYXRlSW5zcGVjdG9yV2luZG93VGl0bGUoKTsKIH0KIAordm9pZCBXZWJJ
bnNwZWN0b3JQcm94eTo6d2luZG93RnJhbWVEaWRDaGFuZ2UoKQoreworICAgIEFTU0VSVCghbV9p
c0F0dGFjaGVkKTsKKyAgICBBU1NFUlQobV9pc1Zpc2libGUpOworICAgIEFTU0VSVChtX2luc3Bl
Y3RvcldpbmRvdyk7CisKKyAgICBpZiAobV9pc0F0dGFjaGVkIHx8ICFtX2lzVmlzaWJsZSB8fCAh
bV9pbnNwZWN0b3JXaW5kb3cpCisgICAgICAgIHJldHVybjsKKworICAgIE5TU3RyaW5nICpmcmFt
ZVN0cmluZyA9IE5TU3RyaW5nRnJvbVJlY3QoW21faW5zcGVjdG9yV2luZG93IGZyYW1lXSk7Cisg
ICAgcGFnZSgpLT5wYWdlR3JvdXAoKS0+cHJlZmVyZW5jZXMoKS0+c2V0SW5zcGVjdG9yV2luZG93
RnJhbWUoZnJhbWVTdHJpbmcpOworfQorCiB2b2lkIFdlYkluc3BlY3RvclByb3h5OjppbnNwZWN0
ZWRWaWV3RnJhbWVEaWRDaGFuZ2UoKQogewogICAgIGlmICghbV9pc0F0dGFjaGVkIHx8ICFtX2lz
VmlzaWJsZSkKQEAgLTQ2MCw5ICs0OTcsNiBAQCB2b2lkIFdlYkluc3BlY3RvclByb3h5OjpwbGF0
Zm9ybUF0dGFjaCgpCiAKICAgICBbbV9pbnNwZWN0b3JWaWV3LmdldCgpIHNldEF1dG9yZXNpemlu
Z01hc2s6TlNWaWV3V2lkdGhTaXphYmxlIHwgTlNWaWV3TWF4WU1hcmdpbl07CiAKLSAgICAvLyBT
dGFydCBvdXQgaGlkZGVuIGlmIHdlIGFyZSBub3QgdmlzaWJsZSB5ZXQuIFdoZW4gcGxhdGZvcm1P
cGVuIGlzIGNhbGxlZCwgaGlkZGVuIHdpbGwgYmUgc2V0IHRvIE5PLgotICAgIFttX2luc3BlY3Rv
clZpZXcuZ2V0KCkgc2V0SGlkZGVuOiFtX2lzVmlzaWJsZV07Ci0KICAgICBbW2luc3BlY3RlZFZp
ZXcgc3VwZXJ2aWV3XSBhZGRTdWJ2aWV3Om1faW5zcGVjdG9yVmlldy5nZXQoKSBwb3NpdGlvbmVk
Ok5TV2luZG93QmVsb3cgcmVsYXRpdmVUbzppbnNwZWN0ZWRWaWV3XTsKICAgICBbW2luc3BlY3Rl
ZFZpZXcgd2luZG93XSBtYWtlRmlyc3RSZXNwb25kZXI6bV9pbnNwZWN0b3JWaWV3LmdldCgpXTsK
IApAQCAtNDk2LDEwICs1MzAsNyBAQCB2b2lkIFdlYkluc3BlY3RvclByb3h5OjpwbGF0Zm9ybURl
dGFjaCgpCiAKICAgICBjcmVhdGVJbnNwZWN0b3JXaW5kb3coKTsKIAotICAgIC8vIE1ha2UgdGhl
IGluc3BlY3RvciB2aWV3IHZpc2libGUgaW4gY2FzZSBpdCBpcyBzdGlsbCBoaWRkZW4gZnJvbSBs
b2FkaW5nIHdoaWxlIGF0dGFjaGVkLgotICAgIFttX2luc3BlY3RvclZpZXcuZ2V0KCkgc2V0SGlk
ZGVuOk5PXTsKLQotICAgIFttX2luc3BlY3RvcldpbmRvdy5nZXQoKSBtYWtlS2V5QW5kT3JkZXJG
cm9udDpuaWxdOworICAgIHBsYXRmb3JtQnJpbmdUb0Zyb250KCk7CiB9CiAKIHZvaWQgV2ViSW5z
cGVjdG9yUHJveHk6OnBsYXRmb3JtU2V0QXR0YWNoZWRXaW5kb3dIZWlnaHQodW5zaWduZWQgaGVp
Z2h0KQotLSAKMS43LjEyLjQgKEFwcGxlIEdpdC0zNykKCg==
</data>
<flag name="review"
          id="214439"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>193304</attachid>
            <date>2013-03-15 07:22:52 -0700</date>
            <delta_ts>2013-03-15 15:34:30 -0700</delta_ts>
            <desc>Proposed Additional Change</desc>
            <filename>0001-Disable-suppressesIncrementalRendering-for-the-Web-I.patch</filename>
            <type>text/plain</type>
            <size>4801</size>
            <attacher name="Timothy Hatcher">timothy</attacher>
            
              <data encoding="base64">RnJvbSBlNDQyNWRkMGI0YzBiY2UzZDIyYzAyYTlkYjAyMzk4YmE1YjhlOWZlIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBUaW1vdGh5IEhhdGNoZXIgPHRpbW90aHlAYXBwbGUuY29tPgpE
YXRlOiBGcmksIDE1IE1hciAyMDEzIDEwOjE3OjM5IC0wNDAwClN1YmplY3Q6IFtQQVRDSF0gRGlz
YWJsZSBzdXBwcmVzc2VzSW5jcmVtZW50YWxSZW5kZXJpbmcgZm9yIHRoZSBXZWIKIEluc3BlY3Rv
ci4KClRoaXMgZW5kcyB1cCBjYXVzaW5nIHRoZSBJbnNwZWN0b3IgdG8gc2hvdyBibGFuayBmb3Ig
YSBjb3VwbGUgc2Vjb25kcyBiZWZvcmUKaXQgZG9lcyBpdHMgZmlyc3QgcGFpbnQuIER1cmluZyB0
aGF0IHRpbWUgdGhlIGJhcmUgd2luZG93IGNocm9tZSBpcyBzaG93aW5nCndoZW4gdGhlIEluc3Bl
Y3RvcidzIGJhY2tncm91bmQgYW5kIG90aGVyIHNpbXBsZSBlbGVtZW50cyBjb3VudCBiZSBwYWlu
dGluZy4KVGhpcyBjYXVzZXMgdGhlIEluc3BlY3RvciB0byBsb29rIGxpa2UgaXQgaXMgbG9hZGlu
ZyBzbG93ZXIgdGhhbiByZWFsaXR5LgoKU291cmNlL1dlYktpdC9tYWM6CgpodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEyMzAwCnJkYXI6Ly9wcm9ibGVtLzEzNDEyMjE5
CgpSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCiogV2ViQ29yZVN1cHBvcnQvV2ViSW5zcGVj
dG9yQ2xpZW50Lm1tOgooLVtXZWJJbnNwZWN0b3JXaW5kb3dDb250cm9sbGVyIGluaXRdKTogRGlz
YWJsZSBzdXBwcmVzc2VzSW5jcmVtZW50YWxSZW5kZXJpbmcuCgpTb3VyY2UvV2ViS2l0MjoKCmh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTIzMDAKcmRhcjovL3Byb2Js
ZW0vMTM0MTIyMTkKClJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKKiBVSVByb2Nlc3MvV2Vi
SW5zcGVjdG9yUHJveHkuY3BwOgooV2ViS2l0OjpjcmVhdGVJbnNwZWN0b3JQYWdlR3JvdXApOiBE
aXNhYmxlIHN1cHByZXNzZXNJbmNyZW1lbnRhbFJlbmRlcmluZy4KLS0tCiBTb3VyY2UvV2ViS2l0
L21hYy9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICB8IDI3ICsrKysrKysrKysrKysr
KysrKysrKysKIC4uLi9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViSW5zcGVjdG9yQ2xpZW50Lm1tICAg
ICAgIHwgIDEgLQogU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAxNyArKysrKysrKysrKysrKwogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYklu
c3BlY3RvclByb3h5LmNwcCAgICAgfCAgMSAtCiA0IGZpbGVzIGNoYW5nZWQsIDQ0IGluc2VydGlv
bnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvQ2hh
bmdlTG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IDMwN2M4ZTMuLjQ1MDM4
NTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMCBAQAorMjAxMy0wMy0xNSAgVGltb3Ro
eSBIYXRjaGVyICA8dGltb3RoeUBhcHBsZS5jb20+CisKKyAgICAgICAgRGlzYWJsZSBzdXBwcmVz
c2VzSW5jcmVtZW50YWxSZW5kZXJpbmcgZm9yIHRoZSBXZWIgSW5zcGVjdG9yLgorCisgICAgICAg
IFRoaXMgZW5kcyB1cCBjYXVzaW5nIHRoZSBJbnNwZWN0b3IgdG8gc2hvdyBibGFuayBmb3IgYSBj
b3VwbGUgc2Vjb25kcyBiZWZvcmUKKyAgICAgICAgaXQgZG9lcyBpdHMgZmlyc3QgcGFpbnQuIER1
cmluZyB0aGF0IHRpbWUgdGhlIGJhcmUgd2luZG93IGNocm9tZSBpcyBzaG93aW5nCisgICAgICAg
IHdoZW4gdGhlIEluc3BlY3RvcidzIGJhY2tncm91bmQgYW5kIG90aGVyIHNpbXBsZSBlbGVtZW50
cyBjb3VudCBiZSBwYWludGluZy4KKyAgICAgICAgVGhpcyBjYXVzZXMgdGhlIEluc3BlY3RvciB0
byBsb29rIGxpa2UgaXQgaXMgbG9hZGluZyBzbG93ZXIgdGhhbiByZWFsaXR5LgorCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTIzMDAKKyAgICAgICAg
cmRhcjovL3Byb2JsZW0vMTM0MTIyMTkKKyAKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJJbnNwZWN0b3JDbGllbnQubW06
CisgICAgICAgICgtW1dlYkluc3BlY3RvcldpbmRvd0NvbnRyb2xsZXIgaW5pdF0pOiBEaXNhYmxl
IHN1cHByZXNzZXNJbmNyZW1lbnRhbFJlbmRlcmluZy4KKworMjAxMy0wMy0xNSAgVGltb3RoeSBI
YXRjaGVyICA8dGltb3RoeUBhcHBsZS5jb20+CisKKyAgICAgICAgTmVlZCBhIHNob3J0IGRlc2Ny
aXB0aW9uIChPT1BTISkuCisgICAgICAgIE5lZWQgdGhlIGJ1ZyBVUkwgKE9PUFMhKS4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYkNvcmVTdXBw
b3J0L1dlYkluc3BlY3RvckNsaWVudC5tbToKKyAgICAgICAgKC1bV2ViSW5zcGVjdG9yV2luZG93
Q29udHJvbGxlciBpbml0XSk6CisKIDIwMTMtMDMtMTQgIEFiaGlzaGVrIEFyeWEgIDxpbmZlcm5v
QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXBsYWNlIHN0YXRpY19jYXN0cyB3aXRoIHRvKiBo
ZWxwZXIgZnVuY3Rpb25zLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViSW5zcGVjdG9yQ2xpZW50Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViSW5zcGVjdG9yQ2xpZW50Lm1tCmluZGV4IDVhMTEzZWMuLmM4OTU3OWUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkluc3BlY3RvckNsaWVu
dC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJJbnNwZWN0b3JD
bGllbnQubW0KQEAgLTM1Niw3ICszNTYsNiBAQCAtIChpZClpbml0CiAgICAgW3ByZWZlcmVuY2Vz
IHNldE1pbmltdW1Gb250U2l6ZTowXTsKICAgICBbcHJlZmVyZW5jZXMgc2V0TWluaW11bUxvZ2lj
YWxGb250U2l6ZTo5XTsKICAgICBbcHJlZmVyZW5jZXMgc2V0UGx1Z0luc0VuYWJsZWQ6Tk9dOwot
ICAgIFtwcmVmZXJlbmNlcyBzZXRTdXBwcmVzc2VzSW5jcmVtZW50YWxSZW5kZXJpbmc6WUVTXTsK
ICAgICBbcHJlZmVyZW5jZXMgc2V0VGFic1RvTGlua3M6Tk9dOwogICAgIFtwcmVmZXJlbmNlcyBz
ZXRVc2VyU3R5bGVTaGVldEVuYWJsZWQ6Tk9dOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNjJhYjEwYS4uOGIw
MmFjOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEzLTAzLTE1ICBUaW1vdGh5IEhh
dGNoZXIgIDx0aW1vdGh5QGFwcGxlLmNvbT4KKworICAgICAgICBEaXNhYmxlIHN1cHByZXNzZXNJ
bmNyZW1lbnRhbFJlbmRlcmluZyBmb3IgdGhlIFdlYiBJbnNwZWN0b3IuCisKKyAgICAgICAgVGhp
cyBlbmRzIHVwIGNhdXNpbmcgdGhlIEluc3BlY3RvciB0byBzaG93IGJsYW5rIGZvciBhIGNvdXBs
ZSBzZWNvbmRzIGJlZm9yZQorICAgICAgICBpdCBkb2VzIGl0cyBmaXJzdCBwYWludC4gRHVyaW5n
IHRoYXQgdGltZSB0aGUgYmFyZSB3aW5kb3cgY2hyb21lIGlzIHNob3dpbmcKKyAgICAgICAgd2hl
biB0aGUgSW5zcGVjdG9yJ3MgYmFja2dyb3VuZCBhbmQgb3RoZXIgc2ltcGxlIGVsZW1lbnRzIGNv
dW50IGJlIHBhaW50aW5nLgorICAgICAgICBUaGlzIGNhdXNlcyB0aGUgSW5zcGVjdG9yIHRvIGxv
b2sgbGlrZSBpdCBpcyBsb2FkaW5nIHNsb3dlciB0aGFuIHJlYWxpdHkuCisKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExMjMwMAorICAgICAgICByZGFy
Oi8vcHJvYmxlbS8xMzQxMjIxOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogVUlQcm9jZXNzL1dlYkluc3BlY3RvclByb3h5LmNwcDoKKyAgICAgICAg
KFdlYktpdDo6Y3JlYXRlSW5zcGVjdG9yUGFnZUdyb3VwKTogRGlzYWJsZSBzdXBwcmVzc2VzSW5j
cmVtZW50YWxSZW5kZXJpbmcuCisKIDIwMTMtMDMtMTMgIFRpbW90aHkgSGF0Y2hlciAgPHRpbW90
aHlAYXBwbGUuY29tPgogCiAgICAgICAgIERlbGF5IGNyZWF0aW5nIHRoZSBJbnNwZWN0b3Igd2lu
ZG93IHNvIHdlIGRvbid0IGNhdXNlIGEgQ29yZUlQQyBkZWFkbG9jay4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJJbnNwZWN0b3JQcm94eS5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvV2ViSW5zcGVjdG9yUHJveHkuY3BwCmluZGV4IDI4MjlkMTEuLjUwMWFj
MmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJJbnNwZWN0b3JQcm94
eS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkluc3BlY3RvclByb3h5LmNw
cApAQCAtNzEsNyArNzEsNiBAQCBzdGF0aWMgUGFzc1JlZlB0cjxXZWJQYWdlR3JvdXA+IGNyZWF0
ZUluc3BlY3RvclBhZ2VHcm91cCgpCiAjZW5kaWYKIAogICAgIHBhZ2VHcm91cC0+cHJlZmVyZW5j
ZXMoKS0+c2V0QXBwbGljYXRpb25DaHJvbWVNb2RlRW5hYmxlZCh0cnVlKTsKLSAgICBwYWdlR3Jv
dXAtPnByZWZlcmVuY2VzKCktPnNldFN1cHByZXNzZXNJbmNyZW1lbnRhbFJlbmRlcmluZyh0cnVl
KTsKIAogICAgIHJldHVybiBwYWdlR3JvdXAucmVsZWFzZSgpOwogfQotLSAKMS43LjEyLjQgKEFw
cGxlIEdpdC0zNykKCg==
</data>
<flag name="review"
          id="214794"
          type_id="1"
          status="+"
          setter="ggaren"
    />
    <flag name="commit-queue"
          id="214795"
          type_id="3"
          status="-"
          setter="timothy"
    />
          </attachment>
      

    </bug>

</bugzilla>