<?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>35031</bug_id>
          
          <creation_ts>2010-02-17 04:31:49 -0800</creation_ts>
          <short_desc>[chromium] Implement cancelGeolocationPermissionRequestForFrame</short_desc>
          <delta_ts>2010-03-31 12:32:11 -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>WebKit Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</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>
          <dependson>34962</dependson>
          <blocked>32065</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jonathan Dixon">joth</reporter>
          <assigned_to name="Marcus Bulach">bulach</assigned_to>
          <cc>a.renevier</cc>
    
    <cc>benm</cc>
    
    <cc>bulach</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jorlow</cc>
    
    <cc>steveblock</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>190989</commentid>
    <comment_count>0</comment_count>
    <who name="Jonathan Dixon">joth</who>
    <bug_when>2010-02-17 04:31:49 -0800</bug_when>
    <thetext>See https://bugs.webkit.org/show_bug.cgi?id=34962 https://bugs.webkit.org/attachment.cgi?id=48890&amp;action=diff#WebKit/chromium/src/ChromeClientImpl.h_sec1

A new method cancelGeolocationPermissionRequestForFrame  was added, which will need implementing fully instead of the placeholder in WebKit/chromium/src/ChromeClientImpl.h (i.e. call out to IPC to get the browser process to dismiss the infobar)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>206444</commentid>
    <comment_count>1</comment_count>
      <attachid>52147</attachid>
    <who name="Marcus Bulach">bulach</who>
    <bug_when>2010-03-31 03:34:06 -0700</bug_when>
    <thetext>Created attachment 52147
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>206450</commentid>
    <comment_count>2</comment_count>
      <attachid>52147</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-03-31 03:50:23 -0700</bug_when>
    <thetext>Comment on attachment 52147
Patch

&gt; Index: WebCore/ChangeLog
&gt; ===================================================================
&gt; --- WebCore/ChangeLog	(revision 56830)
&gt; +++ WebCore/ChangeLog	(working copy)
&gt; @@ -1,3 +1,14 @@
&gt; +2010-03-30  Marcus Bulach  &lt;bulach@chromium.org&gt;
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        Implements cancelGeolocationPermissionRequestForFrame.
&gt; +

No extra new line

&gt; +        https://bugs.webkit.org/show_bug.cgi?id=35031

Put more of a description here.  Explain why.

&gt; +        * page/Geolocation.cpp:
&gt; +        (WebCore::Geolocation::disconnectFrame):
&gt; +
&gt;  2010-03-31  John Gregg  &lt;johnnyg@google.com&gt;
&gt;  
&gt;          Reviewed by Darin Fisher.
&gt; Index: WebCore/page/Geolocation.cpp
&gt; ===================================================================
&gt; --- WebCore/page/Geolocation.cpp	(revision 56830)
&gt; +++ WebCore/page/Geolocation.cpp	(working copy)
&gt; @@ -225,6 +225,7 @@ void Geolocation::disconnectFrame()
&gt;      if (m_frame) {
&gt;          if (m_frame-&gt;document())
&gt;              m_frame-&gt;document()-&gt;setUsingGeolocation(false);
&gt; +        // FIXME: pass &quot;this&quot; to cancelGeolocationPermissionRequestForFrame, similar to requestGeolocationPermissionForFrame.

Why not do this now?  You can change the consumers of this API at the WebKit layer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>206488</commentid>
    <comment_count>3</comment_count>
      <attachid>52160</attachid>
    <who name="Marcus Bulach">bulach</who>
    <bug_when>2010-03-31 07:36:05 -0700</bug_when>
    <thetext>Created attachment 52160
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>206499</commentid>
    <comment_count>4</comment_count>
    <who name="Marcus Bulach">bulach</who>
    <bug_when>2010-03-31 07:48:58 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 52147 [details])
&gt; &gt; Index: WebCore/ChangeLog
&gt; &gt; ===================================================================
&gt; &gt; --- WebCore/ChangeLog	(revision 56830)
&gt; &gt; +++ WebCore/ChangeLog	(working copy)
&gt; &gt; @@ -1,3 +1,14 @@
&gt; &gt; +2010-03-30  Marcus Bulach  &lt;bulach@chromium.org&gt;
&gt; &gt; +
&gt; &gt; +        Reviewed by NOBODY (OOPS!).
&gt; &gt; +
&gt; &gt; +        Implements cancelGeolocationPermissionRequestForFrame.
&gt; &gt; +
&gt; 
&gt; No extra new line
&gt; 
&gt; &gt; +        https://bugs.webkit.org/show_bug.cgi?id=35031
&gt; 
&gt; Put more of a description here.  Explain why.

Done, let me know if it&apos;s clear enough.

&gt; 
&gt; &gt; +        * page/Geolocation.cpp:
&gt; &gt; +        (WebCore::Geolocation::disconnectFrame):
&gt; &gt; +
&gt; &gt;  2010-03-31  John Gregg  &lt;johnnyg@google.com&gt;
&gt; &gt;  
&gt; &gt;          Reviewed by Darin Fisher.
&gt; &gt; Index: WebCore/page/Geolocation.cpp
&gt; &gt; ===================================================================
&gt; &gt; --- WebCore/page/Geolocation.cpp	(revision 56830)
&gt; &gt; +++ WebCore/page/Geolocation.cpp	(working copy)
&gt; &gt; @@ -225,6 +225,7 @@ void Geolocation::disconnectFrame()
&gt; &gt;      if (m_frame) {
&gt; &gt;          if (m_frame-&gt;document())
&gt; &gt;              m_frame-&gt;document()-&gt;setUsingGeolocation(false);
&gt; &gt; +        // FIXME: pass &quot;this&quot; to cancelGeolocationPermissionRequestForFrame, similar to requestGeolocationPermissionForFrame.
&gt; 
&gt; Why not do this now?  You can change the consumers of this API at the WebKit
&gt; layer.

Thanks for pointing this out! Done on all APIs I could find.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>206503</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-03-31 07:52:26 -0700</bug_when>
    <thetext>Attachment 52160 did not pass style-queue:

Failed to run &quot;WebKitTools/Scripts/check-webkit-style&quot; exit_code: 1
WebCore/ChangeLog:8:  Line contains tab character.  [whitespace/tab] [5]
Total errors found: 1 in 23 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>206511</commentid>
    <comment_count>6</comment_count>
      <attachid>52160</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2010-03-31 08:02:39 -0700</bug_when>
    <thetext>Comment on attachment 52160
Patch

&gt; Index: WebKit/chromium/src/ChromeClientImpl.cpp
&gt; ===================================================================
&gt; --- WebKit/chromium/src/ChromeClientImpl.cpp	(revision 56830)
&gt; +++ WebKit/chromium/src/ChromeClientImpl.cpp	(working copy)
&gt; @@ -707,6 +707,12 @@ void ChromeClientImpl::requestGeolocatio
&gt;      m_webView-&gt;client()-&gt;geolocationService()-&gt;requestPermissionForFrame(geolocationService-&gt;geolocationServiceBridge()-&gt;getBridgeId(), frame-&gt;document()-&gt;url());
&gt;  }
&gt;  
&gt; +void ChromeClientImpl::cancelGeolocationPermissionRequestForFrame(Frame* frame, Geolocation* geolocation)
&gt; +{
&gt; +    GeolocationServiceChromium* geolocationService = reinterpret_cast&lt;GeolocationServiceChromium*&gt;(geolocation-&gt;getGeolocationService());

That reinterpret_cast can be a static_cast, no?  Use static_cast when there exists an &quot;is a&quot; relationship between the types you are casting.  Not doing so can cause memory errors if you ever start using multiple inheritance.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>206534</commentid>
    <comment_count>7</comment_count>
      <attachid>52160</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-03-31 08:57:26 -0700</bug_when>
    <thetext>Comment on attachment 52160
Patch

Besides Darin&apos;s comment, LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>206564</commentid>
    <comment_count>8</comment_count>
      <attachid>52182</attachid>
    <who name="Marcus Bulach">bulach</who>
    <bug_when>2010-03-31 10:16:59 -0700</bug_when>
    <thetext>Created attachment 52182
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>206566</commentid>
    <comment_count>9</comment_count>
    <who name="Marcus Bulach">bulach</who>
    <bug_when>2010-03-31 10:17:32 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 52160 [details])
&gt; &gt; Index: WebKit/chromium/src/ChromeClientImpl.cpp
&gt; &gt; ===================================================================
&gt; &gt; --- WebKit/chromium/src/ChromeClientImpl.cpp	(revision 56830)
&gt; &gt; +++ WebKit/chromium/src/ChromeClientImpl.cpp	(working copy)
&gt; &gt; @@ -707,6 +707,12 @@ void ChromeClientImpl::requestGeolocatio
&gt; &gt;      m_webView-&gt;client()-&gt;geolocationService()-&gt;requestPermissionForFrame(geolocationService-&gt;geolocationServiceBridge()-&gt;getBridgeId(), frame-&gt;document()-&gt;url());
&gt; &gt;  }
&gt; &gt;  
&gt; &gt; +void ChromeClientImpl::cancelGeolocationPermissionRequestForFrame(Frame* frame, Geolocation* geolocation)
&gt; &gt; +{
&gt; &gt; +    GeolocationServiceChromium* geolocationService = reinterpret_cast&lt;GeolocationServiceChromium*&gt;(geolocation-&gt;getGeolocationService());
&gt; 
&gt; That reinterpret_cast can be a static_cast, no?  Use static_cast when there
&gt; exists an &quot;is a&quot; relationship between the types you are casting.  Not doing so
&gt; can cause memory errors if you ever start using multiple inheritance.

Oh, very good catch, thanks! Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>206569</commentid>
    <comment_count>10</comment_count>
      <attachid>52182</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-03-31 10:20:01 -0700</bug_when>
    <thetext>Comment on attachment 52182
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>206579</commentid>
    <comment_count>11</comment_count>
      <attachid>52182</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-03-31 10:47:41 -0700</bug_when>
    <thetext>Comment on attachment 52182
Patch

Clearing flags on attachment: 52182

Committed r56851: &lt;http://trac.webkit.org/changeset/56851&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>206580</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-03-31 10:47:47 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>206645</commentid>
    <comment_count>13</comment_count>
    <who name="Marcus Bulach">bulach</who>
    <bug_when>2010-03-31 12:32:11 -0700</bug_when>
    <thetext>*** Bug 36833 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>52147</attachid>
            <date>2010-03-31 03:34:06 -0700</date>
            <delta_ts>2010-03-31 07:36:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>remove_frame.log</filename>
            <type>text/plain</type>
            <size>4370</size>
            <attacher name="Marcus Bulach">bulach</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1NjgzMCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMTAtMDMtMzAgIE1hcmN1cyBCdWxhY2ggIDxidWxhY2hAY2hyb21p
dW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEltcGxlbWVudHMgY2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lLgor
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNTAzMQor
CisgICAgICAgICogcGFnZS9HZW9sb2NhdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHZW9s
b2NhdGlvbjo6ZGlzY29ubmVjdEZyYW1lKToKKwogMjAxMC0wMy0zMSAgSm9obiBHcmVnZyAgPGpv
aG5ueWdAZ29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBGaXNoZXIuCklu
ZGV4OiBXZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
cGFnZS9HZW9sb2NhdGlvbi5jcHAJKHJldmlzaW9uIDU2ODMwKQorKysgV2ViQ29yZS9wYWdlL0dl
b2xvY2F0aW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjI1LDYgKzIyNSw3IEBAIHZvaWQgR2Vv
bG9jYXRpb246OmRpc2Nvbm5lY3RGcmFtZSgpCiAgICAgaWYgKG1fZnJhbWUpIHsKICAgICAgICAg
aWYgKG1fZnJhbWUtPmRvY3VtZW50KCkpCiAgICAgICAgICAgICBtX2ZyYW1lLT5kb2N1bWVudCgp
LT5zZXRVc2luZ0dlb2xvY2F0aW9uKGZhbHNlKTsKKyAgICAgICAgLy8gRklYTUU6IHBhc3MgInRo
aXMiIHRvIGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZSwgc2ltaWxh
ciB0byByZXF1ZXN0R2VvbG9jYXRpb25QZXJtaXNzaW9uRm9yRnJhbWUuCiAgICAgICAgIGlmICht
X2ZyYW1lLT5wYWdlKCkgJiYgbV9hbGxvd0dlb2xvY2F0aW9uID09IEluUHJvZ3Jlc3MpCiAgICAg
ICAgICAgICBtX2ZyYW1lLT5wYWdlKCktPmNocm9tZSgpLT5jYW5jZWxHZW9sb2NhdGlvblBlcm1p
c3Npb25SZXF1ZXN0Rm9yRnJhbWUobV9mcmFtZSk7CiAgICAgfQpJbmRleDogV2ViS2l0L2Nocm9t
aXVtL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShy
ZXZpc2lvbiA1NjgzMCkKKysrIFdlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSwxNyBAQAorMjAxMC0wMy0zMCAgTWFyY3VzIEJ1bGFjaCAgPGJ1bGFjaEBj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgSW1wbGVtZW50cyBjYW5jZWxHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJh
bWUuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM1
MDMxCisKKyAgICAgICAgKiBwdWJsaWMvR2VvbG9jYXRpb25TZXJ2aWNlQnJpZGdlQ2hyb21pdW0u
aDoKKyAgICAgICAgKFdlYktpdDo6V2ViR2VvbG9jYXRpb25TZXJ2aWNlSW50ZXJmYWNlOjpjYW5j
ZWxHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUpOgorICAgICAgICAqIHNyYy9D
aHJvbWVDbGllbnRJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6Q2hyb21lQ2xpZW50SW1wbDo6
Y2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKToKKyAgICAgICAgKiBz
cmMvQ2hyb21lQ2xpZW50SW1wbC5oOgorCiAyMDEwLTAzLTMxICBKb2huIEdyZWdnICA8am9obm55
Z0Bnb29nbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEZpc2hlci4KSW5kZXg6
IFdlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViR2VvbG9jYXRpb25TZXJ2aWNlLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJHZW9sb2NhdGlvblNlcnZpY2UuaAkocmV2
aXNpb24gNTY4MzApCisrKyBXZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkdlb2xvY2F0aW9uU2Vy
dmljZS5oCSh3b3JraW5nIGNvcHkpCkBAIC00Miw2ICs0Miw3IEBAIGNsYXNzIFdlYlVSTDsKIGNs
YXNzIFdlYkdlb2xvY2F0aW9uU2VydmljZSB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHJl
cXVlc3RQZXJtaXNzaW9uRm9yRnJhbWUoaW50IGJyaWRnZUlkLCBjb25zdCBXZWJVUkwmIHVybCkg
eyB9CisgICAgdmlydHVhbCB2b2lkIGNhbmNlbFBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUoY29u
c3QgV2ViVVJMJikgeyB9CiAgICAgdmlydHVhbCB2b2lkIHN0YXJ0VXBkYXRpbmcoaW50IGJyaWRn
ZUlkLCBjb25zdCBXZWJVUkwmIHVybCwgYm9vbCBlbmFibGVIaWdoQWNjdXJhY3kpIHsgfQogICAg
IHZpcnR1YWwgdm9pZCBzdG9wVXBkYXRpbmcoaW50IGJyaWRnZUlkKSB7IH0KICAgICB2aXJ0dWFs
IHZvaWQgc3VzcGVuZChpbnQgYnJpZGdlSWQpIHsgfQpJbmRleDogV2ViS2l0L2Nocm9taXVtL3Ny
Yy9DaHJvbWVDbGllbnRJbXBsLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvY2hyb21pdW0vc3Jj
L0Nocm9tZUNsaWVudEltcGwuY3BwCShyZXZpc2lvbiA1NjgzMCkKKysrIFdlYktpdC9jaHJvbWl1
bS9zcmMvQ2hyb21lQ2xpZW50SW1wbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTcwNyw2ICs3MDcs
MTEgQEAgdm9pZCBDaHJvbWVDbGllbnRJbXBsOjpyZXF1ZXN0R2VvbG9jYXRpbwogICAgIG1fd2Vi
Vmlldy0+Y2xpZW50KCktPmdlb2xvY2F0aW9uU2VydmljZSgpLT5yZXF1ZXN0UGVybWlzc2lvbkZv
ckZyYW1lKGdlb2xvY2F0aW9uU2VydmljZS0+Z2VvbG9jYXRpb25TZXJ2aWNlQnJpZGdlKCktPmdl
dEJyaWRnZUlkKCksIGZyYW1lLT5kb2N1bWVudCgpLT51cmwoKSk7CiB9CiAKK3ZvaWQgQ2hyb21l
Q2xpZW50SW1wbDo6Y2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKEZy
YW1lKiBmcmFtZSkKK3sKKyAgICBtX3dlYlZpZXctPmNsaWVudCgpLT5nZW9sb2NhdGlvblNlcnZp
Y2UoKS0+Y2FuY2VsUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShmcmFtZS0+ZG9jdW1lbnQoKS0+
dXJsKCkpOworfQorCiAjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQogdm9pZCBDaHJv
bWVDbGllbnRJbXBsOjphdHRhY2hSb290R3JhcGhpY3NMYXllcihGcmFtZSogZnJhbWUsIEdyYXBo
aWNzTGF5ZXIqIGdyYXBoaWNzTGF5ZXIpCiB7CkluZGV4OiBXZWJLaXQvY2hyb21pdW0vc3JjL0No
cm9tZUNsaWVudEltcGwuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvY2hyb21pdW0vc3JjL0Nocm9t
ZUNsaWVudEltcGwuaAkocmV2aXNpb24gNTY4MzApCisrKyBXZWJLaXQvY2hyb21pdW0vc3JjL0No
cm9tZUNsaWVudEltcGwuaAkod29ya2luZyBjb3B5KQpAQCAtMTIyLDcgKzEyMiw3IEBAIHB1Ymxp
YzoKICAgICB2aXJ0dWFsIFdlYkNvcmU6Ok5vdGlmaWNhdGlvblByZXNlbnRlciogbm90aWZpY2F0
aW9uUHJlc2VudGVyKCkgY29uc3Q7CiAjZW5kaWYKICAgICB2aXJ0dWFsIHZvaWQgcmVxdWVzdEdl
b2xvY2F0aW9uUGVybWlzc2lvbkZvckZyYW1lKFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6R2Vv
bG9jYXRpb24qKTsKLSAgICB2aXJ0dWFsIHZvaWQgY2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9u
UmVxdWVzdEZvckZyYW1lKFdlYkNvcmU6OkZyYW1lKikgeyB9CisgICAgdmlydHVhbCB2b2lkIGNh
bmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShXZWJDb3JlOjpGcmFtZSop
OwogICAgIHZpcnR1YWwgdm9pZCBydW5PcGVuUGFuZWwoV2ViQ29yZTo6RnJhbWUqLCBQYXNzUmVm
UHRyPFdlYkNvcmU6OkZpbGVDaG9vc2VyPik7CiAgICAgdmlydHVhbCB2b2lkIGNob29zZUljb25G
b3JGaWxlcyhjb25zdCBWZWN0b3I8V2ViQ29yZTo6U3RyaW5nPiYsIFBhc3NSZWZQdHI8V2ViQ29y
ZTo6RmlsZUNob29zZXI+KTsKICAgICB2aXJ0dWFsIGJvb2wgc2V0Q3Vyc29yKFdlYkNvcmU6OlBs
YXRmb3JtQ3Vyc29ySGFuZGxlKSB7IHJldHVybiBmYWxzZTsgfQo=
</data>
<flag name="review"
          id="35551"
          type_id="1"
          status="-"
          setter="jorlow"
    />
    <flag name="commit-queue"
          id="35552"
          type_id="3"
          status="-"
          setter="jorlow"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>52160</attachid>
            <date>2010-03-31 07:36:05 -0700</date>
            <delta_ts>2010-03-31 10:16:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>remove_frame.log</filename>
            <type>text/plain</type>
            <size>17137</size>
            <attacher name="Marcus Bulach">bulach</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1NjgzNikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjIgQEAKKzIwMTAtMDMtMzEgIE1hcmN1cyBCdWxhY2ggIDxidWxhY2hAY2hyb21p
dW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEltcGxlbWVudHMgY2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lLgor
ICAgICAgICBTaW1pbGFyIHRvIHJlcXVlc3RHZW9sb2NhdGlvblBlcm1pc3Npb25Gb3JGcmFtZSgp
LCBwYXNzZXMgR2VvbG9jYXRpb24qIHRvIGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVl
c3RGb3JGcmFtZSgpLAorICAgICAgICBzbyB0aGF0IHRoZSBlbWJlZGRlciBjYW4gaWRlbnRpZnkg
d2hpY2ggR2VvbG9jYXRpb24gb2JqZWN0IGlzIGNhbmNlbGxpbmcgdGhlIHBlbmRpbmcgcGVybWlz
c2lvbiByZXF1ZXN0LgorCQlDYWxscyBjYW5jZWxHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0
Rm9yRnJhbWUoKSBiZWZvcmUgc3RvcFVwZGF0aW5nKCkgc28gaXQgYmV0dGVyIG1hdGNoZXMgdGhl
IHN0YXJ0VXBkYXRpbmcoKSAvIHJlcXVlc3RQZXJtaXNzaW9uKCkgZmxvdy4KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM1MDMxCisKKyAgICAgICAgKiBs
b2FkZXIvRW1wdHlDbGllbnRzLmg6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUNocm9tZUNsaWVu
dDo6Y2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKToKKyAgICAgICAg
KiBwYWdlL0Nocm9tZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDaHJvbWU6OmNhbmNlbEdlb2xv
Y2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZSk6CisgICAgICAgICogcGFnZS9DaHJvbWUu
aDoKKyAgICAgICAgKiBwYWdlL0Nocm9tZUNsaWVudC5oOgorICAgICAgICAqIHBhZ2UvR2VvbG9j
YXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6R2VvbG9jYXRpb246OmRpc2Nvbm5lY3RGcmFt
ZSk6CisKIDIwMTAtMDMtMzAgIEplcmVteSBPcmxvdyAgPGpvcmxvd0BjaHJvbWl1bS5vcmc+CiAK
ICAgICAgICAgUmV2aWV3ZWQgYnkgTmF0ZSBDaGFwaW4uCkluZGV4OiBXZWJDb3JlL2xvYWRlci9F
bXB0eUNsaWVudHMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMu
aAkocmV2aXNpb24gNTY4MzApCisrKyBXZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaAkod29y
a2luZyBjb3B5KQpAQCAtMTU4LDcgKzE1OCw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQg
c2Nyb2xsUmVjdEludG9WaWV3KGNvbnN0IEludFJlY3QmLCBjb25zdCBTY3JvbGxWaWV3KikgY29u
c3Qge30KIAogICAgIHZpcnR1YWwgdm9pZCByZXF1ZXN0R2VvbG9jYXRpb25QZXJtaXNzaW9uRm9y
RnJhbWUoRnJhbWUqLCBHZW9sb2NhdGlvbiopIHt9Ci0gICAgdmlydHVhbCB2b2lkIGNhbmNlbEdl
b2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShGcmFtZSopIHt9CisgICAgdmlydHVh
bCB2b2lkIGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShGcmFtZSos
IEdlb2xvY2F0aW9uKikge30KIAogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKICAg
ICB2aXJ0dWFsIHZvaWQgYXR0YWNoUm9vdEdyYXBoaWNzTGF5ZXIoRnJhbWUqLCBHcmFwaGljc0xh
eWVyKikge307CkluZGV4OiBXZWJDb3JlL3BhZ2UvQ2hyb21lLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL3BhZ2UvQ2hyb21lLmNwcAkocmV2aXNpb24gNTY4MzApCisrKyBXZWJDb3JlL3BhZ2Uv
Q2hyb21lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDIwLDkgKzQyMCw5IEBAIHZvaWQgQ2hyb21l
OjpyZXF1ZXN0R2VvbG9jYXRpb25QZXJtaXNzaW8KICAgICBtX2NsaWVudC0+cmVxdWVzdEdlb2xv
Y2F0aW9uUGVybWlzc2lvbkZvckZyYW1lKGZyYW1lLCBnZW9sb2NhdGlvbik7CiB9CiAKLXZvaWQg
Q2hyb21lOjpjYW5jZWxHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUoRnJhbWUq
IGZyYW1lKQordm9pZCBDaHJvbWU6OmNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RG
b3JGcmFtZShGcmFtZSogZnJhbWUsIEdlb2xvY2F0aW9uKiBnZW9sb2NhdGlvbikKIHsKLSAgICBt
X2NsaWVudC0+Y2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKGZyYW1l
KTsKKyAgICBtX2NsaWVudC0+Y2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZy
YW1lKGZyYW1lLCBnZW9sb2NhdGlvbik7CiB9CiAKIHZvaWQgQ2hyb21lOjpydW5PcGVuUGFuZWwo
RnJhbWUqIGZyYW1lLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPiBmaWxlQ2hvb3NlcikKSW5kZXg6
IFdlYkNvcmUvcGFnZS9DaHJvbWUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvQ2hyb21l
LmgJKHJldmlzaW9uIDU2ODMwKQorKysgV2ViQ29yZS9wYWdlL0Nocm9tZS5oCSh3b3JraW5nIGNv
cHkpCkBAIC0xMzIsNyArMTMyLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2b2lk
IHByaW50KEZyYW1lKik7CiAKICAgICAgICAgdm9pZCByZXF1ZXN0R2VvbG9jYXRpb25QZXJtaXNz
aW9uRm9yRnJhbWUoRnJhbWUqLCBHZW9sb2NhdGlvbiopOwotICAgICAgICB2b2lkIGNhbmNlbEdl
b2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShGcmFtZSopOworICAgICAgICB2b2lk
IGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShGcmFtZSosIEdlb2xv
Y2F0aW9uKik7CiAKICAgICAgICAgdm9pZCBydW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRy
PEZpbGVDaG9vc2VyPik7CiAgICAgICAgIHZvaWQgY2hvb3NlSWNvbkZvckZpbGVzKGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiwgUGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4pOwpJbmRleDogV2ViQ29yZS9w
YWdlL0Nocm9tZUNsaWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9DaHJvbWVDbGll
bnQuaAkocmV2aXNpb24gNTY4MzApCisrKyBXZWJDb3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmgJKHdv
cmtpbmcgY29weSkKQEAgLTE4NSw3ICsxODUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAg
ICAgIC8vIFRoaXMgY2FuIGJlIGVpdGhlciBhIHN5bmNocm9ub3VzIG9yIGFzeW5jaHJvbm91cyBj
YWxsLiBUaGUgQ2hyb21lQ2xpZW50IGNhbiBkaXNwbGF5IFVJIGFza2luZyB0aGUgdXNlciBmb3Ig
cGVybWlzc2lvbgogICAgICAgICAvLyB0byB1c2UgR2VvbG9jYXRpb24uCiAgICAgICAgIHZpcnR1
YWwgdm9pZCByZXF1ZXN0R2VvbG9jYXRpb25QZXJtaXNzaW9uRm9yRnJhbWUoRnJhbWUqLCBHZW9s
b2NhdGlvbiopID0gMDsKLSAgICAgICAgdmlydHVhbCB2b2lkIGNhbmNlbEdlb2xvY2F0aW9uUGVy
bWlzc2lvblJlcXVlc3RGb3JGcmFtZShGcmFtZSopID0gMDsKKyAgICAgICAgdmlydHVhbCB2b2lk
IGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShGcmFtZSosIEdlb2xv
Y2F0aW9uKikgPSAwOwogICAgICAgICAgICAgCiAgICAgICAgIHZpcnR1YWwgdm9pZCBydW5PcGVu
UGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPikgPSAwOwogICAgICAgICAvLyBB
c3luY2hyb25vdXMgcmVxdWVzdCB0byBsb2FkIGFuIGljb24gZm9yIHNwZWNpZmllZCBmaWxlbmFt
ZXMuCkluZGV4OiBXZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb24uY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvcGFnZS9HZW9sb2NhdGlvbi5jcHAJKHJldmlzaW9uIDU2ODMwKQorKysgV2ViQ29yZS9w
YWdlL0dlb2xvY2F0aW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjIxLDEzICsyMjEsMTEgQEAg
R2VvbG9jYXRpb246On5HZW9sb2NhdGlvbigpCiAKIHZvaWQgR2VvbG9jYXRpb246OmRpc2Nvbm5l
Y3RGcmFtZSgpCiB7CisgICAgaWYgKG1fZnJhbWUgJiYgbV9mcmFtZS0+cGFnZSgpICYmIG1fYWxs
b3dHZW9sb2NhdGlvbiA9PSBJblByb2dyZXNzKQorICAgICAgICBtX2ZyYW1lLT5wYWdlKCktPmNo
cm9tZSgpLT5jYW5jZWxHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUobV9mcmFt
ZSwgdGhpcyk7CiAgICAgc3RvcFVwZGF0aW5nKCk7Ci0gICAgaWYgKG1fZnJhbWUpIHsKLSAgICAg
ICAgaWYgKG1fZnJhbWUtPmRvY3VtZW50KCkpCi0gICAgICAgICAgICBtX2ZyYW1lLT5kb2N1bWVu
dCgpLT5zZXRVc2luZ0dlb2xvY2F0aW9uKGZhbHNlKTsKLSAgICAgICAgaWYgKG1fZnJhbWUtPnBh
Z2UoKSAmJiBtX2FsbG93R2VvbG9jYXRpb24gPT0gSW5Qcm9ncmVzcykKLSAgICAgICAgICAgIG1f
ZnJhbWUtPnBhZ2UoKS0+Y2hyb21lKCktPmNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVl
c3RGb3JGcmFtZShtX2ZyYW1lKTsKLSAgICB9CisgICAgaWYgKG1fZnJhbWUgJiYgbV9mcmFtZS0+
ZG9jdW1lbnQoKSkKKyAgICAgICAgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+c2V0VXNpbmdHZW9sb2Nh
dGlvbihmYWxzZSk7CiAgICAgbV9mcmFtZSA9IDA7CiB9CiAKSW5kZXg6IFdlYktpdC9jaHJvbWl1
bS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwkocmV2
aXNpb24gNTY4MzYpCisrKyBXZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkp
CkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMDMtMzEgIE1hcmN1cyBCdWxhY2ggIDxidWxhY2hAY2hy
b21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEltcGxlbWVudHMgY2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1l
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzUwMzEK
KworICAgICAgICAqIHB1YmxpYy9XZWJHZW9sb2NhdGlvblNlcnZpY2UuaDoKKyAgICAgICAgKFdl
YktpdDo6V2ViR2VvbG9jYXRpb25TZXJ2aWNlOjpjYW5jZWxQZXJtaXNzaW9uUmVxdWVzdEZvckZy
YW1lKToKKyAgICAgICAgKiBzcmMvQ2hyb21lQ2xpZW50SW1wbC5jcHA6CisgICAgICAgIChXZWJL
aXQ6OkNocm9tZUNsaWVudEltcGw6OmNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RG
b3JGcmFtZSk6CisgICAgICAgICogc3JjL0Nocm9tZUNsaWVudEltcGwuaDoKKwogMjAxMC0wMy0z
MSAgWXVyeSBTZW1pa2hhdHNreSAgPHl1cnlzQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBQYXZlbCBGZWxkbWFuLgpJbmRleDogV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJH
ZW9sb2NhdGlvblNlcnZpY2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvY2hyb21pdW0vcHVibGlj
L1dlYkdlb2xvY2F0aW9uU2VydmljZS5oCShyZXZpc2lvbiA1NjgzMCkKKysrIFdlYktpdC9jaHJv
bWl1bS9wdWJsaWMvV2ViR2VvbG9jYXRpb25TZXJ2aWNlLmgJKHdvcmtpbmcgY29weSkKQEAgLTQy
LDYgKzQyLDcgQEAgY2xhc3MgV2ViVVJMOwogY2xhc3MgV2ViR2VvbG9jYXRpb25TZXJ2aWNlIHsK
IHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgcmVxdWVzdFBlcm1pc3Npb25Gb3JGcmFtZShpbnQg
YnJpZGdlSWQsIGNvbnN0IFdlYlVSTCYgdXJsKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgY2FuY2Vs
UGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShpbnQgYnJpZGdlSWQsIGNvbnN0IFdlYlVSTCYpIHsg
fQogICAgIHZpcnR1YWwgdm9pZCBzdGFydFVwZGF0aW5nKGludCBicmlkZ2VJZCwgY29uc3QgV2Vi
VVJMJiB1cmwsIGJvb2wgZW5hYmxlSGlnaEFjY3VyYWN5KSB7IH0KICAgICB2aXJ0dWFsIHZvaWQg
c3RvcFVwZGF0aW5nKGludCBicmlkZ2VJZCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIHN1c3BlbmQo
aW50IGJyaWRnZUlkKSB7IH0KSW5kZXg6IFdlYktpdC9jaHJvbWl1bS9zcmMvQ2hyb21lQ2xpZW50
SW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJ
bXBsLmNwcAkocmV2aXNpb24gNTY4MzApCisrKyBXZWJLaXQvY2hyb21pdW0vc3JjL0Nocm9tZUNs
aWVudEltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03MDcsNiArNzA3LDEyIEBAIHZvaWQgQ2hy
b21lQ2xpZW50SW1wbDo6cmVxdWVzdEdlb2xvY2F0aW8KICAgICBtX3dlYlZpZXctPmNsaWVudCgp
LT5nZW9sb2NhdGlvblNlcnZpY2UoKS0+cmVxdWVzdFBlcm1pc3Npb25Gb3JGcmFtZShnZW9sb2Nh
dGlvblNlcnZpY2UtPmdlb2xvY2F0aW9uU2VydmljZUJyaWRnZSgpLT5nZXRCcmlkZ2VJZCgpLCBm
cmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCkpOwogfQogCit2b2lkIENocm9tZUNsaWVudEltcGw6OmNh
bmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShGcmFtZSogZnJhbWUsIEdl
b2xvY2F0aW9uKiBnZW9sb2NhdGlvbikKK3sKKyAgICBHZW9sb2NhdGlvblNlcnZpY2VDaHJvbWl1
bSogZ2VvbG9jYXRpb25TZXJ2aWNlID0gcmVpbnRlcnByZXRfY2FzdDxHZW9sb2NhdGlvblNlcnZp
Y2VDaHJvbWl1bSo+KGdlb2xvY2F0aW9uLT5nZXRHZW9sb2NhdGlvblNlcnZpY2UoKSk7CisgICAg
bV93ZWJWaWV3LT5jbGllbnQoKS0+Z2VvbG9jYXRpb25TZXJ2aWNlKCktPmNhbmNlbFBlcm1pc3Np
b25SZXF1ZXN0Rm9yRnJhbWUoZ2VvbG9jYXRpb25TZXJ2aWNlLT5nZW9sb2NhdGlvblNlcnZpY2VC
cmlkZ2UoKS0+Z2V0QnJpZGdlSWQoKSwgZnJhbWUtPmRvY3VtZW50KCktPnVybCgpKTsKK30KKwog
I2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKIHZvaWQgQ2hyb21lQ2xpZW50SW1wbDo6
YXR0YWNoUm9vdEdyYXBoaWNzTGF5ZXIoRnJhbWUqIGZyYW1lLCBHcmFwaGljc0xheWVyKiBncmFw
aGljc0xheWVyKQogewpJbmRleDogV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJbXBs
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJbXBsLmgJ
KHJldmlzaW9uIDU2ODMwKQorKysgV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJbXBs
LmgJKHdvcmtpbmcgY29weSkKQEAgLTEyMiw3ICsxMjIsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCBXZWJDb3JlOjpOb3RpZmljYXRpb25QcmVzZW50ZXIqIG5vdGlmaWNhdGlvblByZXNlbnRlcigp
IGNvbnN0OwogI2VuZGlmCiAgICAgdmlydHVhbCB2b2lkIHJlcXVlc3RHZW9sb2NhdGlvblBlcm1p
c3Npb25Gb3JGcmFtZShXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6Okdlb2xvY2F0aW9uKik7Ci0g
ICAgdmlydHVhbCB2b2lkIGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFt
ZShXZWJDb3JlOjpGcmFtZSopIHsgfQorICAgIHZpcnR1YWwgdm9pZCBjYW5jZWxHZW9sb2NhdGlv
blBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUoV2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHZW9s
b2NhdGlvbiopOwogICAgIHZpcnR1YWwgdm9pZCBydW5PcGVuUGFuZWwoV2ViQ29yZTo6RnJhbWUq
LCBQYXNzUmVmUHRyPFdlYkNvcmU6OkZpbGVDaG9vc2VyPik7CiAgICAgdmlydHVhbCB2b2lkIGNo
b29zZUljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8V2ViQ29yZTo6U3RyaW5nPiYsIFBhc3NSZWZQ
dHI8V2ViQ29yZTo6RmlsZUNob29zZXI+KTsKICAgICB2aXJ0dWFsIGJvb2wgc2V0Q3Vyc29yKFdl
YkNvcmU6OlBsYXRmb3JtQ3Vyc29ySGFuZGxlKSB7IHJldHVybiBmYWxzZTsgfQpJbmRleDogV2Vi
S2l0L2d0ay9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2d0ay9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDU2ODM2KQorKysgV2ViS2l0L2d0ay9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAg
LTEsMyArMSwxNCBAQAorMjAxMC0wMy0zMSAgTWFyY3VzIEJ1bGFjaCAgPGJ1bGFjaEBjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
QWRkcyBHZW9sb2NhdGlvbiBwYXJhbSBmb3IgY2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVx
dWVzdEZvckZyYW1lLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MzUwMzEKKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEd0ay5j
cHA6CisgICAgICAgIChXZWJLaXQ6OkNocm9tZUNsaWVudDo6Y2FuY2VsR2VvbG9jYXRpb25QZXJt
aXNzaW9uUmVxdWVzdEZvckZyYW1lKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9DaHJvbWVD
bGllbnRHdGsuaDoKKwogMjAxMC0wMy0zMCAgR2F2aW4gQmFycmFjbG91Z2ggIDxiYXJyYWNsb3Vn
aEBhcHBsZS5jb20+CiAKICAgICAgICAgUnViYmVyIHN0YW1wZWQgYnkgU2FtIFdlaW5pZy4KSW5k
ZXg6IFdlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50R3RrLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEd0ay5jcHAJKHJl
dmlzaW9uIDU2ODMwKQorKysgV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRH
dGsuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01ODMsNyArNTgzLDcgQEAgdm9pZCBDaHJvbWVDbGll
bnQ6OnJlcXVlc3RHZW9sb2NhdGlvblBlcgogICAgICAgICB3ZWJraXRfZ2VvbG9jYXRpb25fcG9s
aWN5X2RlbnkocG9saWN5RGVjaXNpb24pOwogfQogCi12b2lkIENocm9tZUNsaWVudDo6Y2FuY2Vs
R2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKFdlYkNvcmU6OkZyYW1lKiBmcmFt
ZSkKK3ZvaWQgQ2hyb21lQ2xpZW50OjpjYW5jZWxHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0
Rm9yRnJhbWUoV2ViQ29yZTo6RnJhbWUqIGZyYW1lLCBXZWJDb3JlOjpHZW9sb2NhdGlvbiopCiB7
CiAgICAgV2ViS2l0V2ViRnJhbWUqIHdlYkZyYW1lID0ga2l0KGZyYW1lKTsKICAgICBXZWJLaXRX
ZWJWaWV3KiB3ZWJWaWV3ID0gZ2V0Vmlld0Zyb21GcmFtZSh3ZWJGcmFtZSk7CkluZGV4OiBXZWJL
aXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEd0ay5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50R3RrLmgJKHJldmlzaW9uIDU2ODMw
KQorKysgV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRHdGsuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMTIwLDcgKzEyMCw3IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiAgICAgICAg
IHZpcnR1YWwgdm9pZCBzY3JvbGxSZWN0SW50b1ZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYs
IGNvbnN0IFdlYkNvcmU6OlNjcm9sbFZpZXcqKSBjb25zdCB7fQogICAgICAgICB2aXJ0dWFsIHZv
aWQgcmVxdWVzdEdlb2xvY2F0aW9uUGVybWlzc2lvbkZvckZyYW1lKFdlYkNvcmU6OkZyYW1lKiwg
V2ViQ29yZTo6R2VvbG9jYXRpb24qKTsKLSAgICAgICAgdmlydHVhbCB2b2lkIGNhbmNlbEdlb2xv
Y2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShXZWJDb3JlOjpGcmFtZSopOworICAgICAg
ICB2aXJ0dWFsIHZvaWQgY2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1l
KFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6R2VvbG9jYXRpb24qKTsKIAogICAgIHByaXZhdGU6
CiAgICAgICAgIFdlYktpdFdlYlZpZXcqIG1fd2ViVmlldzsKSW5kZXg6IFdlYktpdC9oYWlrdS9D
aGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2hhaWt1L0NoYW5nZUxvZwkocmV2aXNpb24g
NTY4MzYpCisrKyBXZWJLaXQvaGFpa3UvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMg
KzEsMTMgQEAKKzIwMTAtMDMtMzEgIE1hcmN1cyBCdWxhY2ggIDxidWxhY2hAY2hyb21pdW0ub3Jn
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZHMg
R2VvbG9jYXRpb24gcGFyYW0gZm9yIGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RG
b3JGcmFtZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTM1MDMxCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRIYWlrdS5oOgor
ICAgICAgICAoV2ViQ29yZTo6Q2hyb21lQ2xpZW50SGFpa3U6OmNhbmNlbEdlb2xvY2F0aW9uUGVy
bWlzc2lvblJlcXVlc3RGb3JGcmFtZSk6CisKIDIwMTAtMDMtMjggIEFsZXhleSBQcm9za3VyeWFr
b3YgIDxhcEBhcHBsZS5jb20+CiAKICAgICAgICAgQnVpbGQgZml4LiBJbmNsdWRlIFdpbmRvd3NL
ZXlib2FyZENvZGVzLmggaW5zdGVhZCBvZiBLZXlib2FyZENvZGVzLmguCkluZGV4OiBXZWJLaXQv
aGFpa3UvV2ViQ29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50SGFpa3UuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJLaXQvaGFpa3UvV2ViQ29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50SGFpa3UuaAkocmV2aXNpb24g
NTY4MzApCisrKyBXZWJLaXQvaGFpa3UvV2ViQ29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50SGFpa3Uu
aAkod29ya2luZyBjb3B5KQpAQCAtMTM1LDcgKzEzNSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
ICAgICAgICAgLy8gVGhpcyBpcyBhbiBhc3luY2hyb25vdXMgY2FsbC4gVGhlIENocm9tZUNsaWVu
dCBjYW4gZGlzcGxheSBVSSBhc2tpbmcgdGhlIHVzZXIgZm9yIHBlcm1pc3Npb24KICAgICAgICAg
Ly8gdG8gdXNlIEdlb2xvY29jYXRpb24uCiAgICAgICAgIHZvaWQgcmVxdWVzdEdlb2xvY2F0aW9u
UGVybWlzc2lvbkZvckZyYW1lKEZyYW1lKiwgR2VvbG9jYXRpb24qKTsKLSAgICAgICAgdm9pZCBj
YW5jZWxHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUoRnJhbWUqKSB7IH0KKyAg
ICAgICAgdm9pZCBjYW5jZWxHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUoRnJh
bWUqLCBHZW9sb2NhdGlvbiopIHsgfQogCiAgICAgICAgIHZvaWQgcnVuT3BlblBhbmVsKEZyYW1l
KiwgUGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4pOwogICAgICAgICB2b2lkIGNob29zZUljb25Gb3JG
aWxlcyhjb25zdCBWZWN0b3I8U3RyaW5nPiYsIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+KTsKSW5k
ZXg6IFdlYktpdC9tYWMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9tYWMvQ2hhbmdl
TG9nCShyZXZpc2lvbiA1NjgzNikKKysrIFdlYktpdC9tYWMvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTAtMDMtMzEgIE1hcmN1cyBCdWxhY2ggIDxidWxhY2hA
Y2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEFkZHMgR2VvbG9jYXRpb24gcGFyYW0gZm9yIGNhbmNlbEdlb2xvY2F0aW9uUGVybWlz
c2lvblJlcXVlc3RGb3JGcmFtZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTM1MDMxCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVD
bGllbnQuaDoKKyAgICAgICAgKFdlYkNocm9tZUNsaWVudDo6Y2FuY2VsR2VvbG9jYXRpb25QZXJt
aXNzaW9uUmVxdWVzdEZvckZyYW1lKToKKwogMjAxMC0wMy0zMCAgR2F2aW4gQmFycmFjbG91Z2gg
IDxiYXJyYWNsb3VnaEBhcHBsZS5jb20+CiAKICAgICAgICAgUnViYmVyIHN0YW1wZWQgYnkgU2Ft
IFdlaW5pZy4KSW5kZXg6IFdlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGll
bnQuaAkocmV2aXNpb24gNTY4MzApCisrKyBXZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNo
cm9tZUNsaWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xNjMsNyArMTYzLDcgQEAgcHVibGljOgog
I2VuZGlmCiAKICAgICB2aXJ0dWFsIHZvaWQgcmVxdWVzdEdlb2xvY2F0aW9uUGVybWlzc2lvbkZv
ckZyYW1lKFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6R2VvbG9jYXRpb24qKTsKLSAgICB2aXJ0
dWFsIHZvaWQgY2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKFdlYkNv
cmU6OkZyYW1lKikgeyB9CisgICAgdmlydHVhbCB2b2lkIGNhbmNlbEdlb2xvY2F0aW9uUGVybWlz
c2lvblJlcXVlc3RGb3JGcmFtZShXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6Okdlb2xvY2F0aW9u
KikgeyB9CiAKIHByaXZhdGU6CiAgICAgV2ViVmlldyAqbV93ZWJWaWV3OwpJbmRleDogV2ViS2l0
L3F0L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvcXQvQ2hhbmdlTG9nCShyZXZpc2lv
biA1NjgzNikKKysrIFdlYktpdC9xdC9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyAr
MSwxMyBAQAorMjAxMC0wMy0zMSAgTWFyY3VzIEJ1bGFjaCAgPGJ1bGFjaEBjaHJvbWl1bS5vcmc+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkcyBH
ZW9sb2NhdGlvbiBwYXJhbSBmb3IgY2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZv
ckZyYW1lLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MzUwMzEKKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudFF0Lmg6CisgICAg
ICAgIChXZWJDb3JlOjpDaHJvbWVDbGllbnRRdDo6Y2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9u
UmVxdWVzdEZvckZyYW1lKToKKwogMjAxMC0wMy0zMCAgR2F2aW4gQmFycmFjbG91Z2ggIDxiYXJy
YWNsb3VnaEBhcHBsZS5jb20+CiAKICAgICAgICAgUnViYmVyIHN0YW1wZWQgYnkgU2FtIFdlaW5p
Zy4KSW5kZXg6IFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRRdC5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRRdC5oCShyZXZp
c2lvbiA1NjgzMCkKKysrIFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRRdC5o
CSh3b3JraW5nIGNvcHkpCkBAIC0xNTIsNyArMTUyLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
ICAgICAgICB2aXJ0dWFsIHZvaWQgc2Nyb2xsUmVjdEludG9WaWV3KGNvbnN0IEludFJlY3QmLCBj
b25zdCBTY3JvbGxWaWV3KikgY29uc3Qge30KIAogICAgICAgICB2aXJ0dWFsIHZvaWQgcmVxdWVz
dEdlb2xvY2F0aW9uUGVybWlzc2lvbkZvckZyYW1lKEZyYW1lKiwgR2VvbG9jYXRpb24qKTsKLSAg
ICAgICAgdmlydHVhbCB2b2lkIGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JG
cmFtZShGcmFtZSopIHsgfQorICAgICAgICB2aXJ0dWFsIHZvaWQgY2FuY2VsR2VvbG9jYXRpb25Q
ZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKEZyYW1lKiwgR2VvbG9jYXRpb24qKSB7IH0KIAogI2lm
IEVOQUJMRShXSURHRVRTXzEwX1NVUFBPUlQpCiAgICAgICAgIHZpcnR1YWwgYm9vbCBpc0RvY2tl
ZCgpOwpJbmRleDogV2ViS2l0L3dpbi9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3dp
bi9DaGFuZ2VMb2cJKHJldmlzaW9uIDU2ODM2KQorKysgV2ViS2l0L3dpbi9DaGFuZ2VMb2cJKHdv
cmtpbmcgY29weSkKQEAgLTEsMyArMSwxMyBAQAorMjAxMC0wMy0zMSAgTWFyY3VzIEJ1bGFjaCAg
PGJ1bGFjaEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgQWRkcyBHZW9sb2NhdGlvbiBwYXJhbSBmb3IgY2FuY2VsR2VvbG9jYXRp
b25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzUwMzEKKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dl
YkNocm9tZUNsaWVudC5oOgorICAgICAgICAoV2ViQ2hyb21lQ2xpZW50OjpjYW5jZWxHZW9sb2Nh
dGlvblBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUpOgorCiAyMDEwLTAzLTMwICBHYXZpbiBCYXJy
YWNsb3VnaCAgPGJhcnJhY2xvdWdoQGFwcGxlLmNvbT4KIAogICAgICAgICBSdWJiZXIgc3RhbXBl
ZCBieSBTYW0gV2VpbmlnLgpJbmRleDogV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJv
bWVDbGllbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNo
cm9tZUNsaWVudC5oCShyZXZpc2lvbiA1NjgzMCkKKysrIFdlYktpdC93aW4vV2ViQ29yZVN1cHBv
cnQvV2ViQ2hyb21lQ2xpZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTE1MCw3ICsxNTAsNyBAQCBw
dWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhjb25zdCBXZWJDb3Jl
OjpJbnRSZWN0JiwgY29uc3QgV2ViQ29yZTo6U2Nyb2xsVmlldyopIGNvbnN0IHt9CiAKICAgICB2
aXJ0dWFsIHZvaWQgcmVxdWVzdEdlb2xvY2F0aW9uUGVybWlzc2lvbkZvckZyYW1lKFdlYkNvcmU6
OkZyYW1lKiwgV2ViQ29yZTo6R2VvbG9jYXRpb24qKTsKLSAgICB2aXJ0dWFsIHZvaWQgY2FuY2Vs
R2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKFdlYkNvcmU6OkZyYW1lKikgeyB9
CisgICAgdmlydHVhbCB2b2lkIGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JG
cmFtZShXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6Okdlb2xvY2F0aW9uKikgeyB9CiAKICNpZiBF
TkFCTEUoVklERU8pCiAgICAgdmlydHVhbCBib29sIHN1cHBvcnRzRnVsbHNjcmVlbkZvck5vZGUo
Y29uc3QgV2ViQ29yZTo6Tm9kZSopOwpJbmRleDogV2ViS2l0L3d4L0NoYW5nZUxvZwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJLaXQvd3gvQ2hhbmdlTG9nCShyZXZpc2lvbiA1NjgzNikKKysrIFdlYktpdC93
eC9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMyBAQAorMjAxMC0wMy0zMSAg
TWFyY3VzIEJ1bGFjaCAgPGJ1bGFjaEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkcyBHZW9sb2NhdGlvbiBwYXJhbSBmb3Ig
Y2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzUwMzEKKworICAgICAgICAqIFdl
YktpdFN1cHBvcnQvQ2hyb21lQ2xpZW50V3guaDoKKyAgICAgICAgKFdlYkNvcmU6OkNocm9tZUNs
aWVudFd4OjpjYW5jZWxHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUpOgorCiAy
MDEwLTAzLTMwICBHYXZpbiBCYXJyYWNsb3VnaCAgPGJhcnJhY2xvdWdoQGFwcGxlLmNvbT4KIAog
ICAgICAgICBSdWJiZXIgc3RhbXBlZCBieSBTYW0gV2VpbmlnLgpJbmRleDogV2ViS2l0L3d4L1dl
YktpdFN1cHBvcnQvQ2hyb21lQ2xpZW50V3guaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvd3gvV2Vi
S2l0U3VwcG9ydC9DaHJvbWVDbGllbnRXeC5oCShyZXZpc2lvbiA1NjgzMCkKKysrIFdlYktpdC93
eC9XZWJLaXRTdXBwb3J0L0Nocm9tZUNsaWVudFd4LmgJKHdvcmtpbmcgY29weSkKQEAgLTEzOSw3
ICsxMzksNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhj
b25zdCBJbnRSZWN0JiwgY29uc3QgU2Nyb2xsVmlldyopIGNvbnN0IHt9CiAKICAgICB2aXJ0dWFs
IHZvaWQgcmVxdWVzdEdlb2xvY2F0aW9uUGVybWlzc2lvbkZvckZyYW1lKEZyYW1lKiwgR2VvbG9j
YXRpb24qKTsKLSAgICB2aXJ0dWFsIHZvaWQgY2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVx
dWVzdEZvckZyYW1lKEZyYW1lKikgeyB9CisgICAgdmlydHVhbCB2b2lkIGNhbmNlbEdlb2xvY2F0
aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShGcmFtZSosIEdlb2xvY2F0aW9uKikgeyB9CiAK
IHByaXZhdGU6CiAgICAgd3hXZWJWaWV3KiBtX3dlYlZpZXc7Cg==
</data>
<flag name="review"
          id="35564"
          type_id="1"
          status="-"
          setter="fishd"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>52182</attachid>
            <date>2010-03-31 10:16:59 -0700</date>
            <delta_ts>2010-03-31 10:47:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>remove_frame.log</filename>
            <type>text/plain</type>
            <size>17518</size>
            <attacher name="Marcus Bulach">bulach</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1NjgzNikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjIgQEAKKzIwMTAtMDMtMzEgIE1hcmN1cyBCdWxhY2ggIDxidWxhY2hAY2hyb21p
dW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEltcGxlbWVudHMgY2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lLgor
ICAgICAgICBTaW1pbGFyIHRvIHJlcXVlc3RHZW9sb2NhdGlvblBlcm1pc3Npb25Gb3JGcmFtZSgp
LCBwYXNzZXMgR2VvbG9jYXRpb24qIHRvIGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVl
c3RGb3JGcmFtZSgpLAorICAgICAgICBzbyB0aGF0IHRoZSBlbWJlZGRlciBjYW4gaWRlbnRpZnkg
d2hpY2ggR2VvbG9jYXRpb24gb2JqZWN0IGlzIGNhbmNlbGxpbmcgdGhlIHBlbmRpbmcgcGVybWlz
c2lvbiByZXF1ZXN0LgorICAgICAgICBDYWxscyBjYW5jZWxHZW9sb2NhdGlvblBlcm1pc3Npb25S
ZXF1ZXN0Rm9yRnJhbWUoKSBiZWZvcmUgc3RvcFVwZGF0aW5nKCkgc28gaXQgYmV0dGVyIG1hdGNo
ZXMgdGhlIHN0YXJ0VXBkYXRpbmcoKSAvIHJlcXVlc3RQZXJtaXNzaW9uKCkgZmxvdy4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM1MDMxCisKKyAgICAg
ICAgKiBsb2FkZXIvRW1wdHlDbGllbnRzLmg6CisgICAgICAgIChXZWJDb3JlOjpFbXB0eUNocm9t
ZUNsaWVudDo6Y2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKToKKyAg
ICAgICAgKiBwYWdlL0Nocm9tZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDaHJvbWU6OmNhbmNl
bEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZSk6CisgICAgICAgICogcGFnZS9D
aHJvbWUuaDoKKyAgICAgICAgKiBwYWdlL0Nocm9tZUNsaWVudC5oOgorICAgICAgICAqIHBhZ2Uv
R2VvbG9jYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6R2VvbG9jYXRpb246OmRpc2Nvbm5l
Y3RGcmFtZSk6CisKIDIwMTAtMDMtMzAgIEplcmVteSBPcmxvdyAgPGpvcmxvd0BjaHJvbWl1bS5v
cmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTmF0ZSBDaGFwaW4uCkluZGV4OiBXZWJDb3JlL2xv
YWRlci9FbXB0eUNsaWVudHMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2xvYWRlci9FbXB0eUNs
aWVudHMuaAkocmV2aXNpb24gNTY4MzApCisrKyBXZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMu
aAkod29ya2luZyBjb3B5KQpAQCAtMTU4LDcgKzE1OCw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFs
IHZvaWQgc2Nyb2xsUmVjdEludG9WaWV3KGNvbnN0IEludFJlY3QmLCBjb25zdCBTY3JvbGxWaWV3
KikgY29uc3Qge30KIAogICAgIHZpcnR1YWwgdm9pZCByZXF1ZXN0R2VvbG9jYXRpb25QZXJtaXNz
aW9uRm9yRnJhbWUoRnJhbWUqLCBHZW9sb2NhdGlvbiopIHt9Ci0gICAgdmlydHVhbCB2b2lkIGNh
bmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShGcmFtZSopIHt9CisgICAg
dmlydHVhbCB2b2lkIGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShG
cmFtZSosIEdlb2xvY2F0aW9uKikge30KIAogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElO
RykKICAgICB2aXJ0dWFsIHZvaWQgYXR0YWNoUm9vdEdyYXBoaWNzTGF5ZXIoRnJhbWUqLCBHcmFw
aGljc0xheWVyKikge307CkluZGV4OiBXZWJDb3JlL3BhZ2UvQ2hyb21lLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJDb3JlL3BhZ2UvQ2hyb21lLmNwcAkocmV2aXNpb24gNTY4MzApCisrKyBXZWJDb3Jl
L3BhZ2UvQ2hyb21lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDIwLDkgKzQyMCw5IEBAIHZvaWQg
Q2hyb21lOjpyZXF1ZXN0R2VvbG9jYXRpb25QZXJtaXNzaW8KICAgICBtX2NsaWVudC0+cmVxdWVz
dEdlb2xvY2F0aW9uUGVybWlzc2lvbkZvckZyYW1lKGZyYW1lLCBnZW9sb2NhdGlvbik7CiB9CiAK
LXZvaWQgQ2hyb21lOjpjYW5jZWxHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUo
RnJhbWUqIGZyYW1lKQordm9pZCBDaHJvbWU6OmNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJl
cXVlc3RGb3JGcmFtZShGcmFtZSogZnJhbWUsIEdlb2xvY2F0aW9uKiBnZW9sb2NhdGlvbikKIHsK
LSAgICBtX2NsaWVudC0+Y2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1l
KGZyYW1lKTsKKyAgICBtX2NsaWVudC0+Y2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVz
dEZvckZyYW1lKGZyYW1lLCBnZW9sb2NhdGlvbik7CiB9CiAKIHZvaWQgQ2hyb21lOjpydW5PcGVu
UGFuZWwoRnJhbWUqIGZyYW1lLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPiBmaWxlQ2hvb3NlcikK
SW5kZXg6IFdlYkNvcmUvcGFnZS9DaHJvbWUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2Uv
Q2hyb21lLmgJKHJldmlzaW9uIDU2ODMwKQorKysgV2ViQ29yZS9wYWdlL0Nocm9tZS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMzIsNyArMTMyLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAg
ICB2b2lkIHByaW50KEZyYW1lKik7CiAKICAgICAgICAgdm9pZCByZXF1ZXN0R2VvbG9jYXRpb25Q
ZXJtaXNzaW9uRm9yRnJhbWUoRnJhbWUqLCBHZW9sb2NhdGlvbiopOwotICAgICAgICB2b2lkIGNh
bmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShGcmFtZSopOworICAgICAg
ICB2b2lkIGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShGcmFtZSos
IEdlb2xvY2F0aW9uKik7CiAKICAgICAgICAgdm9pZCBydW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNz
UmVmUHRyPEZpbGVDaG9vc2VyPik7CiAgICAgICAgIHZvaWQgY2hvb3NlSWNvbkZvckZpbGVzKGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiwgUGFzc1JlZlB0cjxGaWxlQ2hvb3Nlcj4pOwpJbmRleDogV2Vi
Q29yZS9wYWdlL0Nocm9tZUNsaWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9DaHJv
bWVDbGllbnQuaAkocmV2aXNpb24gNTY4MzApCisrKyBXZWJDb3JlL3BhZ2UvQ2hyb21lQ2xpZW50
LmgJKHdvcmtpbmcgY29weSkKQEAgLTE4NSw3ICsxODUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAgICAgICAgIC8vIFRoaXMgY2FuIGJlIGVpdGhlciBhIHN5bmNocm9ub3VzIG9yIGFzeW5jaHJv
bm91cyBjYWxsLiBUaGUgQ2hyb21lQ2xpZW50IGNhbiBkaXNwbGF5IFVJIGFza2luZyB0aGUgdXNl
ciBmb3IgcGVybWlzc2lvbgogICAgICAgICAvLyB0byB1c2UgR2VvbG9jYXRpb24uCiAgICAgICAg
IHZpcnR1YWwgdm9pZCByZXF1ZXN0R2VvbG9jYXRpb25QZXJtaXNzaW9uRm9yRnJhbWUoRnJhbWUq
LCBHZW9sb2NhdGlvbiopID0gMDsKLSAgICAgICAgdmlydHVhbCB2b2lkIGNhbmNlbEdlb2xvY2F0
aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShGcmFtZSopID0gMDsKKyAgICAgICAgdmlydHVh
bCB2b2lkIGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShGcmFtZSos
IEdlb2xvY2F0aW9uKikgPSAwOwogICAgICAgICAgICAgCiAgICAgICAgIHZpcnR1YWwgdm9pZCBy
dW5PcGVuUGFuZWwoRnJhbWUqLCBQYXNzUmVmUHRyPEZpbGVDaG9vc2VyPikgPSAwOwogICAgICAg
ICAvLyBBc3luY2hyb25vdXMgcmVxdWVzdCB0byBsb2FkIGFuIGljb24gZm9yIHNwZWNpZmllZCBm
aWxlbmFtZXMuCkluZGV4OiBXZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb24uY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvcGFnZS9HZW9sb2NhdGlvbi5jcHAJKHJldmlzaW9uIDU2ODMwKQorKysgV2Vi
Q29yZS9wYWdlL0dlb2xvY2F0aW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjIxLDEzICsyMjEs
MTEgQEAgR2VvbG9jYXRpb246On5HZW9sb2NhdGlvbigpCiAKIHZvaWQgR2VvbG9jYXRpb246OmRp
c2Nvbm5lY3RGcmFtZSgpCiB7CisgICAgaWYgKG1fZnJhbWUgJiYgbV9mcmFtZS0+cGFnZSgpICYm
IG1fYWxsb3dHZW9sb2NhdGlvbiA9PSBJblByb2dyZXNzKQorICAgICAgICBtX2ZyYW1lLT5wYWdl
KCktPmNocm9tZSgpLT5jYW5jZWxHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUo
bV9mcmFtZSwgdGhpcyk7CiAgICAgc3RvcFVwZGF0aW5nKCk7Ci0gICAgaWYgKG1fZnJhbWUpIHsK
LSAgICAgICAgaWYgKG1fZnJhbWUtPmRvY3VtZW50KCkpCi0gICAgICAgICAgICBtX2ZyYW1lLT5k
b2N1bWVudCgpLT5zZXRVc2luZ0dlb2xvY2F0aW9uKGZhbHNlKTsKLSAgICAgICAgaWYgKG1fZnJh
bWUtPnBhZ2UoKSAmJiBtX2FsbG93R2VvbG9jYXRpb24gPT0gSW5Qcm9ncmVzcykKLSAgICAgICAg
ICAgIG1fZnJhbWUtPnBhZ2UoKS0+Y2hyb21lKCktPmNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lv
blJlcXVlc3RGb3JGcmFtZShtX2ZyYW1lKTsKLSAgICB9CisgICAgaWYgKG1fZnJhbWUgJiYgbV9m
cmFtZS0+ZG9jdW1lbnQoKSkKKyAgICAgICAgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+c2V0VXNpbmdH
ZW9sb2NhdGlvbihmYWxzZSk7CiAgICAgbV9mcmFtZSA9IDA7CiB9CiAKSW5kZXg6IFdlYktpdC9j
aHJvbWl1bS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxv
ZwkocmV2aXNpb24gNTY4MzYpCisrKyBXZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMDMtMzEgIE1hcmN1cyBCdWxhY2ggIDxidWxh
Y2hAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIEltcGxlbWVudHMgY2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZv
ckZyYW1lLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MzUwMzEKKworICAgICAgICAqIHB1YmxpYy9XZWJHZW9sb2NhdGlvblNlcnZpY2UuaDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViR2VvbG9jYXRpb25TZXJ2aWNlOjpjYW5jZWxQZXJtaXNzaW9uUmVxdWVz
dEZvckZyYW1lKToKKyAgICAgICAgKiBzcmMvQ2hyb21lQ2xpZW50SW1wbC5jcHA6CisgICAgICAg
IChXZWJLaXQ6OkNocm9tZUNsaWVudEltcGw6OmNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJl
cXVlc3RGb3JGcmFtZSk6CisgICAgICAgICogc3JjL0Nocm9tZUNsaWVudEltcGwuaDoKKwogMjAx
MC0wMy0zMSAgWXVyeSBTZW1pa2hhdHNreSAgPHl1cnlzQGNocm9taXVtLm9yZz4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBQYXZlbCBGZWxkbWFuLgpJbmRleDogV2ViS2l0L2Nocm9taXVtL3B1Ymxp
Yy9XZWJHZW9sb2NhdGlvblNlcnZpY2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvY2hyb21pdW0v
cHVibGljL1dlYkdlb2xvY2F0aW9uU2VydmljZS5oCShyZXZpc2lvbiA1NjgzMCkKKysrIFdlYktp
dC9jaHJvbWl1bS9wdWJsaWMvV2ViR2VvbG9jYXRpb25TZXJ2aWNlLmgJKHdvcmtpbmcgY29weSkK
QEAgLTQyLDYgKzQyLDcgQEAgY2xhc3MgV2ViVVJMOwogY2xhc3MgV2ViR2VvbG9jYXRpb25TZXJ2
aWNlIHsKIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgcmVxdWVzdFBlcm1pc3Npb25Gb3JGcmFt
ZShpbnQgYnJpZGdlSWQsIGNvbnN0IFdlYlVSTCYgdXJsKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQg
Y2FuY2VsUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShpbnQgYnJpZGdlSWQsIGNvbnN0IFdlYlVS
TCYpIHsgfQogICAgIHZpcnR1YWwgdm9pZCBzdGFydFVwZGF0aW5nKGludCBicmlkZ2VJZCwgY29u
c3QgV2ViVVJMJiB1cmwsIGJvb2wgZW5hYmxlSGlnaEFjY3VyYWN5KSB7IH0KICAgICB2aXJ0dWFs
IHZvaWQgc3RvcFVwZGF0aW5nKGludCBicmlkZ2VJZCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIHN1
c3BlbmQoaW50IGJyaWRnZUlkKSB7IH0KSW5kZXg6IFdlYktpdC9jaHJvbWl1bS9zcmMvQ2hyb21l
Q2xpZW50SW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVD
bGllbnRJbXBsLmNwcAkocmV2aXNpb24gNTY4MzApCisrKyBXZWJLaXQvY2hyb21pdW0vc3JjL0No
cm9tZUNsaWVudEltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03MDMsMTAgKzcwMywxNiBAQCBO
b3RpZmljYXRpb25QcmVzZW50ZXIqIENocm9tZUNsaWVudEltcGw6CiAKIHZvaWQgQ2hyb21lQ2xp
ZW50SW1wbDo6cmVxdWVzdEdlb2xvY2F0aW9uUGVybWlzc2lvbkZvckZyYW1lKEZyYW1lKiBmcmFt
ZSwgR2VvbG9jYXRpb24qIGdlb2xvY2F0aW9uKQogewotICAgIEdlb2xvY2F0aW9uU2VydmljZUNo
cm9taXVtKiBnZW9sb2NhdGlvblNlcnZpY2UgPSByZWludGVycHJldF9jYXN0PEdlb2xvY2F0aW9u
U2VydmljZUNocm9taXVtKj4oZ2VvbG9jYXRpb24tPmdldEdlb2xvY2F0aW9uU2VydmljZSgpKTsK
KyAgICBHZW9sb2NhdGlvblNlcnZpY2VDaHJvbWl1bSogZ2VvbG9jYXRpb25TZXJ2aWNlID0gc3Rh
dGljX2Nhc3Q8R2VvbG9jYXRpb25TZXJ2aWNlQ2hyb21pdW0qPihnZW9sb2NhdGlvbi0+Z2V0R2Vv
bG9jYXRpb25TZXJ2aWNlKCkpOwogICAgIG1fd2ViVmlldy0+Y2xpZW50KCktPmdlb2xvY2F0aW9u
U2VydmljZSgpLT5yZXF1ZXN0UGVybWlzc2lvbkZvckZyYW1lKGdlb2xvY2F0aW9uU2VydmljZS0+
Z2VvbG9jYXRpb25TZXJ2aWNlQnJpZGdlKCktPmdldEJyaWRnZUlkKCksIGZyYW1lLT5kb2N1bWVu
dCgpLT51cmwoKSk7CiB9CiAKK3ZvaWQgQ2hyb21lQ2xpZW50SW1wbDo6Y2FuY2VsR2VvbG9jYXRp
b25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKEZyYW1lKiBmcmFtZSwgR2VvbG9jYXRpb24qIGdl
b2xvY2F0aW9uKQoreworICAgIEdlb2xvY2F0aW9uU2VydmljZUNocm9taXVtKiBnZW9sb2NhdGlv
blNlcnZpY2UgPSBzdGF0aWNfY2FzdDxHZW9sb2NhdGlvblNlcnZpY2VDaHJvbWl1bSo+KGdlb2xv
Y2F0aW9uLT5nZXRHZW9sb2NhdGlvblNlcnZpY2UoKSk7CisgICAgbV93ZWJWaWV3LT5jbGllbnQo
KS0+Z2VvbG9jYXRpb25TZXJ2aWNlKCktPmNhbmNlbFBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUo
Z2VvbG9jYXRpb25TZXJ2aWNlLT5nZW9sb2NhdGlvblNlcnZpY2VCcmlkZ2UoKS0+Z2V0QnJpZGdl
SWQoKSwgZnJhbWUtPmRvY3VtZW50KCktPnVybCgpKTsKK30KKwogI2lmIFVTRShBQ0NFTEVSQVRF
RF9DT01QT1NJVElORykKIHZvaWQgQ2hyb21lQ2xpZW50SW1wbDo6YXR0YWNoUm9vdEdyYXBoaWNz
TGF5ZXIoRnJhbWUqIGZyYW1lLCBHcmFwaGljc0xheWVyKiBncmFwaGljc0xheWVyKQogewpJbmRl
eDogV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJbXBsLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJbXBsLmgJKHJldmlzaW9uIDU2ODMwKQor
KysgV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJbXBsLmgJKHdvcmtpbmcgY29weSkK
QEAgLTEyMiw3ICsxMjIsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBXZWJDb3JlOjpOb3RpZmlj
YXRpb25QcmVzZW50ZXIqIG5vdGlmaWNhdGlvblByZXNlbnRlcigpIGNvbnN0OwogI2VuZGlmCiAg
ICAgdmlydHVhbCB2b2lkIHJlcXVlc3RHZW9sb2NhdGlvblBlcm1pc3Npb25Gb3JGcmFtZShXZWJD
b3JlOjpGcmFtZSosIFdlYkNvcmU6Okdlb2xvY2F0aW9uKik7Ci0gICAgdmlydHVhbCB2b2lkIGNh
bmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShXZWJDb3JlOjpGcmFtZSop
IHsgfQorICAgIHZpcnR1YWwgdm9pZCBjYW5jZWxHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0
Rm9yRnJhbWUoV2ViQ29yZTo6RnJhbWUqLCBXZWJDb3JlOjpHZW9sb2NhdGlvbiopOwogICAgIHZp
cnR1YWwgdm9pZCBydW5PcGVuUGFuZWwoV2ViQ29yZTo6RnJhbWUqLCBQYXNzUmVmUHRyPFdlYkNv
cmU6OkZpbGVDaG9vc2VyPik7CiAgICAgdmlydHVhbCB2b2lkIGNob29zZUljb25Gb3JGaWxlcyhj
b25zdCBWZWN0b3I8V2ViQ29yZTo6U3RyaW5nPiYsIFBhc3NSZWZQdHI8V2ViQ29yZTo6RmlsZUNo
b29zZXI+KTsKICAgICB2aXJ0dWFsIGJvb2wgc2V0Q3Vyc29yKFdlYkNvcmU6OlBsYXRmb3JtQ3Vy
c29ySGFuZGxlKSB7IHJldHVybiBmYWxzZTsgfQpJbmRleDogV2ViS2l0L2d0ay9DaGFuZ2VMb2cK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViS2l0L2d0ay9DaGFuZ2VMb2cJKHJldmlzaW9uIDU2ODM2KQorKysg
V2ViS2l0L2d0ay9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAx
MC0wMy0zMSAgTWFyY3VzIEJ1bGFjaCAgPGJ1bGFjaEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkcyBHZW9sb2NhdGlvbiBw
YXJhbSBmb3IgY2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lLgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzUwMzEKKworICAg
ICAgICAqIFdlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEd0ay5jcHA6CisgICAgICAgIChXZWJL
aXQ6OkNocm9tZUNsaWVudDo6Y2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZy
YW1lKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRHdGsuaDoKKwogMjAx
MC0wMy0zMCAgR2F2aW4gQmFycmFjbG91Z2ggIDxiYXJyYWNsb3VnaEBhcHBsZS5jb20+CiAKICAg
ICAgICAgUnViYmVyIHN0YW1wZWQgYnkgU2FtIFdlaW5pZy4KSW5kZXg6IFdlYktpdC9ndGsvV2Vi
Q29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50R3RrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvZ3Rr
L1dlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEd0ay5jcHAJKHJldmlzaW9uIDU2ODMwKQorKysg
V2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRHdGsuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC01ODMsNyArNTgzLDcgQEAgdm9pZCBDaHJvbWVDbGllbnQ6OnJlcXVlc3RHZW9sb2Nh
dGlvblBlcgogICAgICAgICB3ZWJraXRfZ2VvbG9jYXRpb25fcG9saWN5X2RlbnkocG9saWN5RGVj
aXNpb24pOwogfQogCi12b2lkIENocm9tZUNsaWVudDo6Y2FuY2VsR2VvbG9jYXRpb25QZXJtaXNz
aW9uUmVxdWVzdEZvckZyYW1lKFdlYkNvcmU6OkZyYW1lKiBmcmFtZSkKK3ZvaWQgQ2hyb21lQ2xp
ZW50OjpjYW5jZWxHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUoV2ViQ29yZTo6
RnJhbWUqIGZyYW1lLCBXZWJDb3JlOjpHZW9sb2NhdGlvbiopCiB7CiAgICAgV2ViS2l0V2ViRnJh
bWUqIHdlYkZyYW1lID0ga2l0KGZyYW1lKTsKICAgICBXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3ID0g
Z2V0Vmlld0Zyb21GcmFtZSh3ZWJGcmFtZSk7CkluZGV4OiBXZWJLaXQvZ3RrL1dlYkNvcmVTdXBw
b3J0L0Nocm9tZUNsaWVudEd0ay5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9ndGsvV2ViQ29yZVN1
cHBvcnQvQ2hyb21lQ2xpZW50R3RrLmgJKHJldmlzaW9uIDU2ODMwKQorKysgV2ViS2l0L2d0ay9X
ZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRHdGsuaAkod29ya2luZyBjb3B5KQpAQCAtMTIwLDcg
KzEyMCw3IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiAgICAgICAgIHZpcnR1YWwgdm9pZCBzY3Jv
bGxSZWN0SW50b1ZpZXcoY29uc3QgV2ViQ29yZTo6SW50UmVjdCYsIGNvbnN0IFdlYkNvcmU6OlNj
cm9sbFZpZXcqKSBjb25zdCB7fQogICAgICAgICB2aXJ0dWFsIHZvaWQgcmVxdWVzdEdlb2xvY2F0
aW9uUGVybWlzc2lvbkZvckZyYW1lKFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6R2VvbG9jYXRp
b24qKTsKLSAgICAgICAgdmlydHVhbCB2b2lkIGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJl
cXVlc3RGb3JGcmFtZShXZWJDb3JlOjpGcmFtZSopOworICAgICAgICB2aXJ0dWFsIHZvaWQgY2Fu
Y2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKFdlYkNvcmU6OkZyYW1lKiwg
V2ViQ29yZTo6R2VvbG9jYXRpb24qKTsKIAogICAgIHByaXZhdGU6CiAgICAgICAgIFdlYktpdFdl
YlZpZXcqIG1fd2ViVmlldzsKSW5kZXg6IFdlYktpdC9oYWlrdS9DaGFuZ2VMb2cKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViS2l0L2hhaWt1L0NoYW5nZUxvZwkocmV2aXNpb24gNTY4MzYpCisrKyBXZWJLaXQv
aGFpa3UvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTAtMDMt
MzEgIE1hcmN1cyBCdWxhY2ggIDxidWxhY2hAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZHMgR2VvbG9jYXRpb24gcGFyYW0g
Zm9yIGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZS4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM1MDMxCisKKyAgICAgICAg
KiBXZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRIYWlrdS5oOgorICAgICAgICAoV2ViQ29yZTo6
Q2hyb21lQ2xpZW50SGFpa3U6OmNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JG
cmFtZSk6CisKIDIwMTAtMDMtMjggIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+
CiAKICAgICAgICAgQnVpbGQgZml4LiBJbmNsdWRlIFdpbmRvd3NLZXlib2FyZENvZGVzLmggaW5z
dGVhZCBvZiBLZXlib2FyZENvZGVzLmguCkluZGV4OiBXZWJLaXQvaGFpa3UvV2ViQ29yZVN1cHBv
cnQvQ2hyb21lQ2xpZW50SGFpa3UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvaGFpa3UvV2ViQ29y
ZVN1cHBvcnQvQ2hyb21lQ2xpZW50SGFpa3UuaAkocmV2aXNpb24gNTY4MzApCisrKyBXZWJLaXQv
aGFpa3UvV2ViQ29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50SGFpa3UuaAkod29ya2luZyBjb3B5KQpA
QCAtMTM1LDcgKzEzNSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgLy8gVGhpcyBp
cyBhbiBhc3luY2hyb25vdXMgY2FsbC4gVGhlIENocm9tZUNsaWVudCBjYW4gZGlzcGxheSBVSSBh
c2tpbmcgdGhlIHVzZXIgZm9yIHBlcm1pc3Npb24KICAgICAgICAgLy8gdG8gdXNlIEdlb2xvY29j
YXRpb24uCiAgICAgICAgIHZvaWQgcmVxdWVzdEdlb2xvY2F0aW9uUGVybWlzc2lvbkZvckZyYW1l
KEZyYW1lKiwgR2VvbG9jYXRpb24qKTsKLSAgICAgICAgdm9pZCBjYW5jZWxHZW9sb2NhdGlvblBl
cm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUoRnJhbWUqKSB7IH0KKyAgICAgICAgdm9pZCBjYW5jZWxH
ZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUoRnJhbWUqLCBHZW9sb2NhdGlvbiop
IHsgfQogCiAgICAgICAgIHZvaWQgcnVuT3BlblBhbmVsKEZyYW1lKiwgUGFzc1JlZlB0cjxGaWxl
Q2hvb3Nlcj4pOwogICAgICAgICB2b2lkIGNob29zZUljb25Gb3JGaWxlcyhjb25zdCBWZWN0b3I8
U3RyaW5nPiYsIFBhc3NSZWZQdHI8RmlsZUNob29zZXI+KTsKSW5kZXg6IFdlYktpdC9tYWMvQ2hh
bmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9tYWMvQ2hhbmdlTG9nCShyZXZpc2lvbiA1Njgz
NikKKysrIFdlYktpdC9tYWMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMg
QEAKKzIwMTAtMDMtMzEgIE1hcmN1cyBCdWxhY2ggIDxidWxhY2hAY2hyb21pdW0ub3JnPgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZHMgR2VvbG9j
YXRpb24gcGFyYW0gZm9yIGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFt
ZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM1MDMx
CisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaDoKKyAgICAgICAg
KFdlYkNocm9tZUNsaWVudDo6Y2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZy
YW1lKToKKwogMjAxMC0wMy0zMCAgR2F2aW4gQmFycmFjbG91Z2ggIDxiYXJyYWNsb3VnaEBhcHBs
ZS5jb20+CiAKICAgICAgICAgUnViYmVyIHN0YW1wZWQgYnkgU2FtIFdlaW5pZy4KSW5kZXg6IFdl
YktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAkocmV2aXNpb24gNTY4
MzApCisrKyBXZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xNjMsNyArMTYzLDcgQEAgcHVibGljOgogI2VuZGlmCiAKICAgICB2aXJ0
dWFsIHZvaWQgcmVxdWVzdEdlb2xvY2F0aW9uUGVybWlzc2lvbkZvckZyYW1lKFdlYkNvcmU6OkZy
YW1lKiwgV2ViQ29yZTo6R2VvbG9jYXRpb24qKTsKLSAgICB2aXJ0dWFsIHZvaWQgY2FuY2VsR2Vv
bG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKFdlYkNvcmU6OkZyYW1lKikgeyB9Cisg
ICAgdmlydHVhbCB2b2lkIGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFt
ZShXZWJDb3JlOjpGcmFtZSosIFdlYkNvcmU6Okdlb2xvY2F0aW9uKikgeyB9CiAKIHByaXZhdGU6
CiAgICAgV2ViVmlldyAqbV93ZWJWaWV3OwpJbmRleDogV2ViS2l0L3F0L0NoYW5nZUxvZwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJLaXQvcXQvQ2hhbmdlTG9nCShyZXZpc2lvbiA1NjgzNikKKysrIFdlYktp
dC9xdC9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMyBAQAorMjAxMC0wMy0z
MSAgTWFyY3VzIEJ1bGFjaCAgPGJ1bGFjaEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkcyBHZW9sb2NhdGlvbiBwYXJhbSBm
b3IgY2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lLgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzUwMzEKKworICAgICAgICAq
IFdlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudFF0Lmg6CisgICAgICAgIChXZWJDb3JlOjpDaHJv
bWVDbGllbnRRdDo6Y2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKToK
KwogMjAxMC0wMy0zMCAgR2F2aW4gQmFycmFjbG91Z2ggIDxiYXJyYWNsb3VnaEBhcHBsZS5jb20+
CiAKICAgICAgICAgUnViYmVyIHN0YW1wZWQgYnkgU2FtIFdlaW5pZy4KSW5kZXg6IFdlYktpdC9x
dC9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRRdC5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9x
dC9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRRdC5oCShyZXZpc2lvbiA1NjgzMCkKKysrIFdl
YktpdC9xdC9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRRdC5oCSh3b3JraW5nIGNvcHkpCkBA
IC0xNTIsNyArMTUyLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2aXJ0dWFsIHZv
aWQgc2Nyb2xsUmVjdEludG9WaWV3KGNvbnN0IEludFJlY3QmLCBjb25zdCBTY3JvbGxWaWV3Kikg
Y29uc3Qge30KIAogICAgICAgICB2aXJ0dWFsIHZvaWQgcmVxdWVzdEdlb2xvY2F0aW9uUGVybWlz
c2lvbkZvckZyYW1lKEZyYW1lKiwgR2VvbG9jYXRpb24qKTsKLSAgICAgICAgdmlydHVhbCB2b2lk
IGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShGcmFtZSopIHsgfQor
ICAgICAgICB2aXJ0dWFsIHZvaWQgY2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZv
ckZyYW1lKEZyYW1lKiwgR2VvbG9jYXRpb24qKSB7IH0KIAogI2lmIEVOQUJMRShXSURHRVRTXzEw
X1NVUFBPUlQpCiAgICAgICAgIHZpcnR1YWwgYm9vbCBpc0RvY2tlZCgpOwpJbmRleDogV2ViS2l0
L3dpbi9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3dpbi9DaGFuZ2VMb2cJKHJldmlz
aW9uIDU2ODM2KQorKysgV2ViS2l0L3dpbi9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEs
MyArMSwxMyBAQAorMjAxMC0wMy0zMSAgTWFyY3VzIEJ1bGFjaCAgPGJ1bGFjaEBjaHJvbWl1bS5v
cmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRk
cyBHZW9sb2NhdGlvbiBwYXJhbSBmb3IgY2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVz
dEZvckZyYW1lLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MzUwMzEKKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oOgor
ICAgICAgICAoV2ViQ2hyb21lQ2xpZW50OjpjYW5jZWxHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1
ZXN0Rm9yRnJhbWUpOgorCiAyMDEwLTAzLTMwICBHYXZpbiBCYXJyYWNsb3VnaCAgPGJhcnJhY2xv
dWdoQGFwcGxlLmNvbT4KIAogICAgICAgICBSdWJiZXIgc3RhbXBlZCBieSBTYW0gV2VpbmlnLgpJ
bmRleDogV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCShyZXZp
c2lvbiA1NjgzMCkKKysrIFdlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
LmgJKHdvcmtpbmcgY29weSkKQEAgLTE1MCw3ICsxNTAsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiwgY29uc3Qg
V2ViQ29yZTo6U2Nyb2xsVmlldyopIGNvbnN0IHt9CiAKICAgICB2aXJ0dWFsIHZvaWQgcmVxdWVz
dEdlb2xvY2F0aW9uUGVybWlzc2lvbkZvckZyYW1lKFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29yZTo6
R2VvbG9jYXRpb24qKTsKLSAgICB2aXJ0dWFsIHZvaWQgY2FuY2VsR2VvbG9jYXRpb25QZXJtaXNz
aW9uUmVxdWVzdEZvckZyYW1lKFdlYkNvcmU6OkZyYW1lKikgeyB9CisgICAgdmlydHVhbCB2b2lk
IGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShXZWJDb3JlOjpGcmFt
ZSosIFdlYkNvcmU6Okdlb2xvY2F0aW9uKikgeyB9CiAKICNpZiBFTkFCTEUoVklERU8pCiAgICAg
dmlydHVhbCBib29sIHN1cHBvcnRzRnVsbHNjcmVlbkZvck5vZGUoY29uc3QgV2ViQ29yZTo6Tm9k
ZSopOwpJbmRleDogV2ViS2l0L3d4L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvd3gv
Q2hhbmdlTG9nCShyZXZpc2lvbiA1NjgzNikKKysrIFdlYktpdC93eC9DaGFuZ2VMb2cJKHdvcmtp
bmcgY29weSkKQEAgLTEsMyArMSwxMyBAQAorMjAxMC0wMy0zMSAgTWFyY3VzIEJ1bGFjaCAgPGJ1
bGFjaEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQWRkcyBHZW9sb2NhdGlvbiBwYXJhbSBmb3IgY2FuY2VsR2VvbG9jYXRpb25Q
ZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MzUwMzEKKworICAgICAgICAqIFdlYktpdFN1cHBvcnQvQ2hyb21l
Q2xpZW50V3guaDoKKyAgICAgICAgKFdlYkNvcmU6OkNocm9tZUNsaWVudFd4OjpjYW5jZWxHZW9s
b2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUpOgorCiAyMDEwLTAzLTMwICBHYXZpbiBC
YXJyYWNsb3VnaCAgPGJhcnJhY2xvdWdoQGFwcGxlLmNvbT4KIAogICAgICAgICBSdWJiZXIgc3Rh
bXBlZCBieSBTYW0gV2VpbmlnLgpJbmRleDogV2ViS2l0L3d4L1dlYktpdFN1cHBvcnQvQ2hyb21l
Q2xpZW50V3guaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvd3gvV2ViS2l0U3VwcG9ydC9DaHJvbWVD
bGllbnRXeC5oCShyZXZpc2lvbiA1NjgzMCkKKysrIFdlYktpdC93eC9XZWJLaXRTdXBwb3J0L0No
cm9tZUNsaWVudFd4LmgJKHdvcmtpbmcgY29weSkKQEAgLTEzOSw3ICsxMzksNyBAQCBwdWJsaWM6
CiAgICAgdmlydHVhbCB2b2lkIHNjcm9sbFJlY3RJbnRvVmlldyhjb25zdCBJbnRSZWN0JiwgY29u
c3QgU2Nyb2xsVmlldyopIGNvbnN0IHt9CiAKICAgICB2aXJ0dWFsIHZvaWQgcmVxdWVzdEdlb2xv
Y2F0aW9uUGVybWlzc2lvbkZvckZyYW1lKEZyYW1lKiwgR2VvbG9jYXRpb24qKTsKLSAgICB2aXJ0
dWFsIHZvaWQgY2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKEZyYW1l
KikgeyB9CisgICAgdmlydHVhbCB2b2lkIGNhbmNlbEdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVl
c3RGb3JGcmFtZShGcmFtZSosIEdlb2xvY2F0aW9uKikgeyB9CiAKIHByaXZhdGU6CiAgICAgd3hX
ZWJWaWV3KiBtX3dlYlZpZXc7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>