<?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>80748</bug_id>
          
          <creation_ts>2012-03-10 01:18:58 -0800</creation_ts>
          <short_desc>[EFL] Add PageClientEfl to WebCoreSupport</short_desc>
          <delta_ts>2012-03-22 05:43:24 -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 EFL</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>79766</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Hyowon Kim">hw1008.kim</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>gyuyoung.kim</cc>
    
    <cc>lucas.de.marchi</cc>
    
    <cc>noam</cc>
    
    <cc>rakuco</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>575472</commentid>
    <comment_count>0</comment_count>
    <who name="Hyowon Kim">hw1008.kim</who>
    <bug_when>2012-03-10 01:18:58 -0800</bug_when>
    <thetext>PageClientEfl is needed for accelerated compositing in EFL port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>578139</commentid>
    <comment_count>1</comment_count>
      <attachid>131780</attachid>
    <who name="Hyowon Kim">hw1008.kim</who>
    <bug_when>2012-03-13 21:14:31 -0700</bug_when>
    <thetext>Created attachment 131780
patch

This patch adds PageClientEfl to WebKit/efl/WebCoreSupport.
PageClientEfl now has two functions are called in GraphicsContext3DPrivate, 
createEvasObjectForAcceleratedCompositing() and acceleratedCompositingContext().
For more details, see the implementation of GraphicsContext3DPrivate (Bug 80211).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>578164</commentid>
    <comment_count>2</comment_count>
      <attachid>131780</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-03-13 22:18:52 -0700</bug_when>
    <thetext>Comment on attachment 131780
patch

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

&gt; Source/WebKit/efl/WebCoreSupport/PageClientEfl.cpp:38
&gt; +bool PageClientEfl::createEvasObjectForAcceleratedCompositing(Evas_Native_Surface *nativeSurface, int x, int y, int width, int height)

Minor nit : move &apos;*&apos; to data type.

&gt; Source/WebKit/efl/ewk/ewk_view.cpp:717
&gt; +    priv-&gt;pageClient = adoptPtr(new WebCore::PageClientEfl(smartData-&gt;self));

As you may know, there is PageClients struct of Page class in order to manage clients for WebCoreSupport. It looks confusion by this class name may occur.
In my humble opinion,  it is better to use a little more clear name for PageClientEfl.

&gt; Source/WebKit/efl/ewk/ewk_view.cpp:3928
&gt; +bool ewk_view_accelerated_compositing_object_create(Evas_Object* ewkView, Evas_Native_Surface *nativeSurface, int x, int y, int width, int height)

ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>578346</commentid>
    <comment_count>3</comment_count>
      <attachid>131780</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-03-14 06:23:37 -0700</bug_when>
    <thetext>Comment on attachment 131780
patch

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

&gt; Source/WebKit/ChangeLog:8
&gt; +        No new tests. No behavior change.

Not really necessary here.

&gt; Source/WebKit/efl/WebCoreSupport/PageClientEfl.h:40
&gt; +    Evas_Object* view() { return m_view; }

Where is this being used?

&gt; Source/WebKit/efl/ewk/ewk_private.h:247
&gt; +bool ewk_view_accelerated_compositing_object_create(Evas_Object* ewkView, Evas_Native_Surface* nativeSurface, int x, int y, int width, int height);
&gt; +WebCore::GraphicsContext3D* ewk_view_accelerated_compositing_context_get(Evas_Object* ewkView);

These functions have no real implementation. Why don&apos;t you just call notImplemented() and return false/0 in PageClientEfl.cpp and get rid of these two functions here?

&gt; Source/WebKit/efl/ewk/ewk_private.h:250
&gt; +WebCore::PlatformPageClient ewk_view_page_client_get(Evas_Object* ewkView);

Please don&apos;t return a PlatformPageClient like this; follow the core{Frame,Page,HistoryItem} style instead.

&gt; Source/WebKit/efl/ewk/ewk_view.cpp:3931
&gt; +    EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData, false);
&gt; +    EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv, false);

You&apos;re always returning false, so these checks are not needed.

&gt; Source/WebKit/efl/ewk/ewk_view.cpp:3940
&gt; +    EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData, 0);
&gt; +    EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv, 0);

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>578625</commentid>
    <comment_count>4</comment_count>
      <attachid>131780</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-03-14 12:07:55 -0700</bug_when>
    <thetext>Comment on attachment 131780
patch

Attachment 131780 did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/11954226</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580187</commentid>
    <comment_count>5</comment_count>
      <attachid>131780</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-03-15 23:28:18 -0700</bug_when>
    <thetext>Comment on attachment 131780
patch

Looks like a real build breakage.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581438</commentid>
    <comment_count>6</comment_count>
      <attachid>132486</attachid>
    <who name="Hyowon Kim">hw1008.kim</who>
    <bug_when>2012-03-18 02:41:50 -0700</bug_when>
    <thetext>Created attachment 132486
modified patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581439</commentid>
    <comment_count>7</comment_count>
    <who name="Hyowon Kim">hw1008.kim</who>
    <bug_when>2012-03-18 02:47:06 -0700</bug_when>
    <thetext>Thanks for your comments. :D

&gt; &gt; Source/WebKit/efl/WebCoreSupport/PageClientEfl.cpp:38
&gt; &gt; +bool PageClientEfl::createEvasObjectForAcceleratedCompositing(Evas_Native_Surface *nativeSurface, int x, int y, int width, int height)
&gt; 
&gt; Minor nit : move &apos;*&apos; to data type.

Done.

&gt; &gt; Source/WebKit/efl/ewk/ewk_view.cpp:717
&gt; &gt; +    priv-&gt;pageClient = adoptPtr(new WebCore::PageClientEfl(smartData-&gt;self));
&gt; 
&gt; As you may know, there is PageClients struct of Page class in order to manage clients for WebCoreSupport. It looks confusion by this class name may occur.
&gt; In my humble opinion,  it is better to use a little more clear name for PageClientEfl.

I agree with your opinion.
But, I have no idea of better name for this class now.
how about refactoring to rename it in another patch?

&gt; &gt; Source/WebKit/efl/ewk/ewk_view.cpp:3928
&gt; &gt; +bool ewk_view_accelerated_compositing_object_create(Evas_Object* ewkView, Evas_Native_Surface *nativeSurface, int x, int y, int width, int height)
&gt; 
&gt; ditto.

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581441</commentid>
    <comment_count>8</comment_count>
    <who name="Hyowon Kim">hw1008.kim</who>
    <bug_when>2012-03-18 03:06:09 -0700</bug_when>
    <thetext>Thanks for your comments. :D

&gt; &gt; Source/WebKit/ChangeLog:8
&gt; &gt; +        No new tests. No behavior change.
&gt; 
&gt; Not really necessary here.

I&apos;ve removed it. Done.

&gt; &gt; Source/WebKit/efl/WebCoreSupport/PageClientEfl.h:40
&gt; &gt; +    Evas_Object* view() { return m_view; }
&gt; 
&gt; Where is this being used?

To get Evas* in GraphicsContext3DPrivate::initialize()

bool GraphicsContext3DPrivate::initialize(GraphicsContext3D::Attributes attributes, HostWindow* hostWindow, bool renderDirectlyToHostWindow)
{
    PageClientEfl* pageClient = static_cast&lt;PageClientEfl*&gt;(hostWindow-&gt;platformPageClient());

    Evas* evas = evas_object_evas_get(pageClient-&gt;view());
	
    ......
}

&gt; &gt; Source/WebKit/efl/ewk/ewk_private.h:247
&gt; &gt; +bool ewk_view_accelerated_compositing_object_create(Evas_Object* ewkView, Evas_Native_Surface* nativeSurface, int x, int y, int width, int height);
&gt; &gt; +WebCore::GraphicsContext3D* ewk_view_accelerated_compositing_context_get(Evas_Object* ewkView);
&gt; 
&gt; These functions have no real implementation. Why don&apos;t you just call notImplemented() and return false/0 in PageClientEfl.cpp and get rid of these two functions here?

I just want to show what to do in PageClientEfl even though not implemented functions are called.
And I&apos;ll upload next patch for implementation of these two functions soon.

&gt; &gt; Source/WebKit/efl/ewk/ewk_private.h:250
&gt; &gt; +WebCore::PlatformPageClient ewk_view_page_client_get(Evas_Object* ewkView);
&gt; 
&gt; Please don&apos;t return a PlatformPageClient like this; follow the core{Frame,Page,HistoryItem} style instead.

Done.

&gt; &gt; Source/WebKit/efl/ewk/ewk_view.cpp:3931
&gt; &gt; +    EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData, false);
&gt; &gt; +    EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv, false);
&gt; 
&gt; You&apos;re always returning false, so these checks are not needed.
&gt;
&gt; &gt; Source/WebKit/efl/ewk/ewk_view.cpp:3940
&gt; &gt; +    EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData, 0);
&gt; &gt; +    EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv, 0);
&gt; 
&gt; Ditto.

Done both~</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581459</commentid>
    <comment_count>9</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-03-18 08:55:44 -0700</bug_when>
    <thetext>If one of the EFL guys wants to do an unofficial review, I&apos;d be happy to rs this; the AC parts look ok.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581506</commentid>
    <comment_count>10</comment_count>
      <attachid>132486</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-03-18 16:07:28 -0700</bug_when>
    <thetext>Comment on attachment 132486
modified patch

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

&gt; Source/WebCore/platform/Widget.h:97
&gt; +#elif PLATFORM(EFL)
&gt; +namespace WebCore {
&gt; +class PageClientEfl;
&gt; +typedef PageClientEfl* PlatformPageClient;
&gt; +}

Check PluginViewEfl.cpp. this file also use platformPageClient()

&gt; Source/WebKit/efl/ewk/ewk_private.h:246
&gt; +bool ewk_view_accelerated_compositing_object_create(Evas_Object* ewkView, Evas_Native_Surface* nativeSurface, int x, int y, int width, int height);

I prefer IntRect for internal functions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>583857</commentid>
    <comment_count>11</comment_count>
      <attachid>132982</attachid>
    <who name="Hyowon Kim">hw1008.kim</who>
    <bug_when>2012-03-20 23:57:58 -0700</bug_when>
    <thetext>Created attachment 132982
patch with updates from comment #10</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>583861</commentid>
    <comment_count>12</comment_count>
    <who name="Hyowon Kim">hw1008.kim</who>
    <bug_when>2012-03-21 00:04:15 -0700</bug_when>
    <thetext>
Thanks for your comments. :D

&gt; &gt; Source/WebCore/platform/Widget.h:97
&gt; &gt; +#elif PLATFORM(EFL)
&gt; &gt; +namespace WebCore {
&gt; &gt; +class PageClientEfl;
&gt; &gt; +typedef PageClientEfl* PlatformPageClient;
&gt; &gt; +}
&gt; 
&gt; Check PluginViewEfl.cpp. this file also use platformPageClient()

I&apos;ve checked and modified it.

&gt; &gt; Source/WebKit/efl/ewk/ewk_private.h:246
&gt; &gt; +bool ewk_view_accelerated_compositing_object_create(Evas_Object* ewkView, Evas_Native_Surface* nativeSurface, int x, int y, int width, int height);
&gt; 
&gt; I prefer IntRect for internal functions.

Done. IntRect looks better. Thanks. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>583879</commentid>
    <comment_count>13</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-03-21 00:58:17 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; Created an attachment (id=132982) [details]
&gt; patch with updates from comment #10

Source/JavaScriptCore/wtf/Platform.h was moved after r111504 ( Bug 80911 ).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>583893</commentid>
    <comment_count>14</comment_count>
      <attachid>132990</attachid>
    <who name="Hyowon Kim">hw1008.kim</who>
    <bug_when>2012-03-21 01:40:51 -0700</bug_when>
    <thetext>Created attachment 132990
reupload

Rebased the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>583898</commentid>
    <comment_count>15</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-03-21 01:45:44 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; Created an attachment (id=132990) [details]
&gt; reupload
&gt; 
&gt; Rebased the patch.

Looks good to me.
Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>584081</commentid>
    <comment_count>16</comment_count>
      <attachid>132990</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-03-21 06:38:16 -0700</bug_when>
    <thetext>Comment on attachment 132990
reupload

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

Looks OK to me.

&gt; Source/WebKit/efl/WebCoreSupport/PageClientEfl.h:26
&gt; +typedef struct _Evas_Object Evas_Object;
&gt; +typedef struct _Evas_Native_Surface Evas_Native_Surface;

Nitpick: these two should be alphabetically sorted.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>585120</commentid>
    <comment_count>17</comment_count>
      <attachid>133219</attachid>
    <who name="Hyowon Kim">hw1008.kim</who>
    <bug_when>2012-03-22 04:12:31 -0700</bug_when>
    <thetext>Created attachment 133219
patch with updates from comment #16</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>585168</commentid>
    <comment_count>18</comment_count>
      <attachid>133219</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-22 05:43:18 -0700</bug_when>
    <thetext>Comment on attachment 133219
patch with updates from comment #16

Clearing flags on attachment: 133219

Committed r111673: &lt;http://trac.webkit.org/changeset/111673&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>585169</commentid>
    <comment_count>19</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-22 05:43:24 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>131780</attachid>
            <date>2012-03-13 21:14:31 -0700</date>
            <delta_ts>2012-03-18 02:41:50 -0700</delta_ts>
            <desc>patch</desc>
            <filename>bugzilla_20120314.patch</filename>
            <type>text/plain</type>
            <size>12168</size>
            <attacher name="Hyowon Kim">hw1008.kim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA2ODA5ODRmLi43YjM3ZmZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUg
QEAKKzIwMTItMDMtMTMgIEh5b3dvbiBLaW0gIDxodzEwMDgua2ltQHNhbXN1bmcuY29tPgorCisg
ICAgICAgIFtFRkxdIEFkZCBQYWdlQ2xpZW50RWZsIHRvIFdlYkNvcmVTdXBwb3J0LgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODA3NDgKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMuIE5v
IGJlaGF2aW9yIGNoYW5nZS4KKworICAgICAgICAqIHBsYXRmb3JtL1dpZGdldC5oOiBVc2UgUGFn
ZUNsaWVudEVmbCBhcyB0eXBlIGZvciBQbGF0Zm9ybVBhZ2VDbGllbnQuCisgICAgICAgIChXZWJD
b3JlKToKKwogMjAxMi0wMy0xMiAgSWdvciBPbGl2ZWlyYSAgPGlnb3Iub0BzaXNhLnNhbXN1bmcu
Y29tPgogCiAgICAgICAgIFNwbGl0IHRoZSBleHRyYSBsb2dpYyBvdXQgb2YgUmVuZGVyT2JqZWN0
Q2hpbGRMaXN0Ojp1cGRhdGVCZWZvcmVBZnRlckNvbnRlbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL1dpZGdldC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vV2lkZ2V0
LmgKaW5kZXggZDcxMDcxNi4uMWJkMDQ1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vV2lkZ2V0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vV2lkZ2V0LmgKQEAg
LTgzLDYgKzgzLDExIEBAIHR5cGVkZWYgRXZhc19PYmplY3QqIFBsYXRmb3JtV2lkZ2V0OwogI2lm
IFBMQVRGT1JNKFFUKQogY2xhc3MgUVdlYlBhZ2VDbGllbnQ7CiB0eXBlZGVmIFFXZWJQYWdlQ2xp
ZW50KiBQbGF0Zm9ybVBhZ2VDbGllbnQ7CisjZWxpZiBQTEFURk9STShFRkwpCituYW1lc3BhY2Ug
V2ViQ29yZSB7CitjbGFzcyBQYWdlQ2xpZW50RWZsOwordHlwZWRlZiBQYWdlQ2xpZW50RWZsKiBQ
bGF0Zm9ybVBhZ2VDbGllbnQ7Cit9CiAjZWxzZQogdHlwZWRlZiBQbGF0Zm9ybVdpZGdldCBQbGF0
Zm9ybVBhZ2VDbGllbnQ7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggNGYxY2Y1OC4uYjIzMWNiMCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMi0wMy0xMyAgSHlvd29uIEtpbSAgPGh3MTAwOC5r
aW1Ac2Ftc3VuZy5jb20+CisKKyAgICAgICAgW0VGTF0gQWRkIFBhZ2VDbGllbnRFZmwgdG8gV2Vi
Q29yZVN1cHBvcnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD04MDc0OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIE5vIG5ldyB0ZXN0cy4gTm8gYmVoYXZpb3IgY2hhbmdlLgorCisgICAgICAgICogUGxhdGZv
cm1FZmwuY21ha2U6IEFkZCBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2VmbCB0byB0aGUgaW5j
bHVkZSBwYXRoCisgICAgICAgIGFuZCBQYWdlQ2xpZW50RWZsLmNwcCB0byB0aGUgc291cmNlIGxp
c3QuCisKIDIwMTItMDMtMTEgIFRpbW90aHkgSGF0Y2hlciAgPHRpbW90aHlAYXBwbGUuY29tPgog
CiAgICAgICAgIFVwZGF0ZSBob3cgdGhlIFdlYiBJbnNwZWN0b3IgcmVzb3VyY2VzIGFyZSBsb2Fk
ZWQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtRWZsLmNtYWtlIGIvU291cmNl
L1dlYktpdC9QbGF0Zm9ybUVmbC5jbWFrZQppbmRleCAxZGViZTM2Li5hNWE1MzI4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtRWZsLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJLaXQv
UGxhdGZvcm1FZmwuY21ha2UKQEAgLTEzLDYgKzEzLDcgQEAgTElTVChBUFBFTkQgV2ViS2l0X0lO
Q0xVREVfRElSRUNUT1JJRVMKICAgICAiJHtKQVZBU0NSSVBUQ09SRV9ESVJ9L3d0Zi9nb2JqZWN0
IgogICAgICIke1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9lZmwiCiAgICAgIiR7V0VCQ09SRV9ESVJ9
L3BsYXRmb3JtL2dyYXBoaWNzL2NhaXJvIgorICAgICIke1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9n
cmFwaGljcy9lZmwiCiAgICAgJHtDYWlyb19JTkNMVURFX0RJUlN9CiAgICAgJHtFQ09SRV9YX0lO
Q0xVREVfRElSU30KICAgICAke0VESkVfSU5DTFVERV9ESVJTfQpAQCAtODAsNiArODEsNyBAQCBM
SVNUKEFQUEVORCBXZWJLaXRfU09VUkNFUwogICAgIGVmbC9XZWJDb3JlU3VwcG9ydC9TdG9yYWdl
VHJhY2tlckNsaWVudEVmbC5jcHAKICAgICBlZmwvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xp
ZW50RWZsLmNwcAogICAgIGVmbC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVzZW50ZXJD
bGllbnRFZmwuY3BwCisgICAgZWZsL1dlYkNvcmVTdXBwb3J0L1BhZ2VDbGllbnRFZmwuY3BwCiAK
ICAgICBlZmwvZXdrL2V3a19hdXRoLmNwcAogICAgIGVmbC9ld2svZXdrX2F1dGhfc291cC5jcHAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
ZWZsL0NoYW5nZUxvZwppbmRleCBhYmY1MmRjLi42ODI5ZTUzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L2VmbC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMzYgQEAKKzIwMTItMDMtMTMgIEh5b3dvbiBLaW0gIDxodzEwMDgua2ltQHNhbXN1
bmcuY29tPgorCisgICAgICAgIFtFRkxdIEFkZCBQYWdlQ2xpZW50RWZsIHRvIFdlYkNvcmVTdXBw
b3J0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODA3
NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlz
IHBhdGNoIGFkZHMgUGFnZUNsaWVudEVmbCBmb3IgaW1wbGVtZW50YWlvbiBvZiBhY2NlbGVyYXRl
ZCBjb21wb3NpdGluZywKKyAgICAgICAgd2hpY2ggY29udGFpbnMgdHdvIGZ1bmN0aW9ucyBhcmUg
Y2FsbGVkIGluIEdyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZS4KKworICAgICAgICAqIFdlYkNvcmVT
dXBwb3J0L0Nocm9tZUNsaWVudEVmbC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDaHJvbWVDbGll
bnRFZmw6OnBsYXRmb3JtUGFnZUNsaWVudCk6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvUGFn
ZUNsaWVudEVmbC5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJD
b3JlOjpQYWdlQ2xpZW50RWZsOjpQYWdlQ2xpZW50RWZsKToKKyAgICAgICAgKFdlYkNvcmU6OlBh
Z2VDbGllbnRFZmw6On5QYWdlQ2xpZW50RWZsKToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VDbGll
bnRFZmw6OmNyZWF0ZUV2YXNPYmplY3RGb3JBY2NlbGVyYXRlZENvbXBvc2l0aW5nKToKKyAgICAg
ICAgSnVzdCBjYWxsIGV3a192aWV3X2FjY2VsZXJhdGVkX2NvbXBvc2l0aW5nX29iamVjdF9jcmVh
dGUoKS4KKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VDbGllbnRFZmw6OmFjY2VsZXJhdGVkQ29tcG9z
aXRpbmdDb250ZXh0KToKKyAgICAgICAgSnVzdCBjYWxsIGV3a192aWV3X2FjY2VsZXJhdGVkX2Nv
bXBvc2l0aW5nX2NvbnRleHRfZ2V0KCkuCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvUGFnZUNs
aWVudEVmbC5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoUGFnZUNsaWVu
dEVmbCk6CisgICAgICAgIChXZWJDb3JlOjpQYWdlQ2xpZW50RWZsOjp2aWV3KTogUmV0dXJuIGV3
a1ZpZXcuCisgICAgICAgICogZXdrL2V3a19wcml2YXRlLmg6CisgICAgICAgIChXZWJDb3JlKToK
KyAgICAgICAgKiBld2svZXdrX3ZpZXcuY3BwOgorICAgICAgICAoX0V3a19WaWV3X1ByaXZhdGVf
RGF0YSk6IEFkZCBPd25QdHI8UGFnZUNsaWVudEVmbD4uCisgICAgICAgIChfZXdrX3ZpZXdfcHJp
dl9uZXcpOiBDcmVhdGUgYSBuZXcgUGFnZUNsaWVudEVmbC4KKyAgICAgICAgKGV3a192aWV3X2Fj
Y2VsZXJhdGVkX2NvbXBvc2l0aW5nX29iamVjdF9jcmVhdGUpOiBOb3QgaW1wbGVtZW50ZWQuCisg
ICAgICAgIChld2tfdmlld19hY2NlbGVyYXRlZF9jb21wb3NpdGluZ19jb250ZXh0X2dldCk6IE5v
dCBpbXBsZW1lbnRlZC4KKyAgICAgICAgKGV3a192aWV3X3BhZ2VfY2xpZW50X2dldCk6IFJldHVy
biB0aGUgUGFnZUNsaWVudEVmbCBwb2ludGVyLgorCiAyMDEyLTAzLTEzICBBZGFtIEJhcnRoICA8
YWJhcnRoQHdlYmtpdC5vcmc+ICYmIEJlbmphbWluIFBvdWxhaW4gIDxicG91bGFpbkBhcHBsZS5j
b20+CiAKICAgICAgICAgQWx3YXlzIGVuYWJsZSBFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FU
SU9OKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvQ2hyb21l
Q2xpZW50RWZsLmNwcCBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0Nocm9tZUNs
aWVudEVmbC5jcHAKaW5kZXggMGIwMDM3NC4uZmMxMTY0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50RWZsLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRFZmwuY3BwCkBAIC0zMzksNyAr
MzM5LDcgQEAgSW50UG9pbnQgQ2hyb21lQ2xpZW50RWZsOjpzY3JlZW5Ub1Jvb3RWaWV3KGNvbnN0
IEludFBvaW50JiBwb2ludCkgY29uc3QKIAogUGxhdGZvcm1QYWdlQ2xpZW50IENocm9tZUNsaWVu
dEVmbDo6cGxhdGZvcm1QYWdlQ2xpZW50KCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV92aWV3Owor
ICAgIHJldHVybiBld2tfdmlld19wYWdlX2NsaWVudF9nZXQobV92aWV3KTsKIH0KIAogdm9pZCBD
aHJvbWVDbGllbnRFZmw6OnNjcm9sbGJhcnNNb2RlRGlkQ2hhbmdlKCkgY29uc3QKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L1BhZ2VDbGllbnRFZmwuY3BwIGIv
U291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVudEVmbC5jcHAKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOThmNjAyMQotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L1BhZ2VDbGllbnRFZmwuY3BwCkBAIC0w
LDAgKzEsNDkgQEAKKy8qCisgICAgQ29weXJpZ2h0IChDKSAyMDEyIFNhbXN1bmcgRWxlY3Ryb25p
Y3MKKworICAgIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJp
YnV0ZSBpdCBhbmQvb3IKKyAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUg
TGlicmFyeSBHZW5lcmFsIFB1YmxpYworICAgIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBG
cmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICAgIHZlcnNpb24gMi4xIG9mIHRoZSBM
aWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorCisgICAgVGhp
cyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2Vm
dWwsCisgICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxp
ZWQgd2FycmFudHkgb2YKKyAgICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICAgIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMg
TGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorCisgICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVk
IGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICAgIGFs
b25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3Qs
IHdyaXRlIHRvCisgICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJh
bmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAgICBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVT
QS4KKyovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJQYWdlQ2xpZW50RWZsLmgi
CisKKyNpbmNsdWRlICJld2tfcHJpdmF0ZS5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK1Bh
Z2VDbGllbnRFZmw6OlBhZ2VDbGllbnRFZmwoRXZhc19PYmplY3QqIHZpZXcpCisgICAgOiBtX3Zp
ZXcodmlldykKK3sKKyAgICBBU1NFUlQobV92aWV3KTsKK30KKworUGFnZUNsaWVudEVmbDo6flBh
Z2VDbGllbnRFZmwoKQoreworfQorCisjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQor
Ym9vbCBQYWdlQ2xpZW50RWZsOjpjcmVhdGVFdmFzT2JqZWN0Rm9yQWNjZWxlcmF0ZWRDb21wb3Np
dGluZyhFdmFzX05hdGl2ZV9TdXJmYWNlICpuYXRpdmVTdXJmYWNlLCBpbnQgeCwgaW50IHksIGlu
dCB3aWR0aCwgaW50IGhlaWdodCkKK3sKKyAgICByZXR1cm4gZXdrX3ZpZXdfYWNjZWxlcmF0ZWRf
Y29tcG9zaXRpbmdfb2JqZWN0X2NyZWF0ZShtX3ZpZXcsIG5hdGl2ZVN1cmZhY2UsIHgsIHksIHdp
ZHRoLCBoZWlnaHQpOworfQorCitHcmFwaGljc0NvbnRleHQzRCogUGFnZUNsaWVudEVmbDo6YWNj
ZWxlcmF0ZWRDb21wb3NpdGluZ0NvbnRleHQoKQoreworICAgIHJldHVybiBld2tfdmlld19hY2Nl
bGVyYXRlZF9jb21wb3NpdGluZ19jb250ZXh0X2dldChtX3ZpZXcpOworfQorI2VuZGlmCisKK30K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L1BhZ2VDbGllbnRF
ZmwuaCBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L1BhZ2VDbGllbnRFZmwuaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lZmMxNGRkCi0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVudEVmbC5oCkBA
IC0wLDAgKzEsNDggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgU2Ftc3VuZyBFbGVjdHJv
bmljcworICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlz
dHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdO
VSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUg
RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMi4xIG9mIHRoZSBM
aWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRo
aXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNl
ZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxp
ZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExp
Y2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQg
YSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9u
ZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3
cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmts
aW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgor
ICovCisKKyNpZm5kZWYgUGFnZUNsaWVudEVmbF9oCisjZGVmaW5lIFBhZ2VDbGllbnRFZmxfaAor
Cit0eXBlZGVmIHN0cnVjdCBfRXZhc19PYmplY3QgRXZhc19PYmplY3Q7Cit0eXBlZGVmIHN0cnVj
dCBfRXZhc19OYXRpdmVfU3VyZmFjZSBFdmFzX05hdGl2ZV9TdXJmYWNlOworCituYW1lc3BhY2Ug
V2ViQ29yZSB7CisKK2NsYXNzIEdyYXBoaWNzQ29udGV4dDNEOworCitjbGFzcyBQYWdlQ2xpZW50
RWZsIHsKK3B1YmxpYzoKKyAgICBQYWdlQ2xpZW50RWZsKEV2YXNfT2JqZWN0KiB2aWV3KTsKKyAg
ICB2aXJ0dWFsIH5QYWdlQ2xpZW50RWZsKCk7CisKKyNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9T
SVRJTkcpCisgICAgYm9vbCBjcmVhdGVFdmFzT2JqZWN0Rm9yQWNjZWxlcmF0ZWRDb21wb3NpdGlu
ZyhFdmFzX05hdGl2ZV9TdXJmYWNlKiwgaW50IHgsIGludCB5LCBpbnQgd2lkdGgsIGludCBoZWln
aHQpOworICAgIEdyYXBoaWNzQ29udGV4dDNEKiBhY2NlbGVyYXRlZENvbXBvc2l0aW5nQ29udGV4
dCgpOworI2VuZGlmCisKKyAgICBFdmFzX09iamVjdCogdmlldygpIHsgcmV0dXJuIG1fdmlldzsg
fQorCitwcm90ZWN0ZWQ6CisgICAgRXZhc19PYmplY3QqIG1fdmlldzsKK307CisKK30gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIFBhZ2VDbGllbnRFZmxfaApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9lZmwvZXdrL2V3a19wcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L2VmbC9l
d2svZXdrX3ByaXZhdGUuaAppbmRleCBiNGE4ZGQ5Li4yOWE1N2Y3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L2VmbC9ld2svZXdrX3ByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9l
d2svZXdrX3ByaXZhdGUuaApAQCAtMzksNiArMzksMTAgQEAKICNpbmNsdWRlIDx3dGYvUGFzc1Jl
ZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIAorI2lmIFVTRShBQ0NFTEVSQVRFRF9D
T01QT1NJVElORykKKyNpbmNsdWRlIDxFdmFzX0dMLmg+CisjZW5kaWYKKwogLy8gSWYgZGVmaW5l
ZCwgZXdrIHdpbGwgZG8gdHlwZSBjaGVja2luZyB0byBlbnN1cmUgb2JqZWN0cyBhcmUgb2YgY29y
cmVjdCB0eXBlCiAjZGVmaW5lIEVXS19UWVBFX0NIRUNLIDEKICNkZWZpbmUgRVdLX0FSR0JfQllU
RVNfU0laRSA0CkBAIC03NCw2ICs3OCwxMCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBzdHJ1Y3Qg
UG9wdXBNZW51Q2xpZW50Owogc3RydWN0IENvbnRleHRNZW51Owogc3RydWN0IENvbnRleHRNZW51
SXRlbTsKKyNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCitjbGFzcyBHcmFwaGljc0Nv
bnRleHQzRDsKK2NsYXNzIEdyYXBoaWNzTGF5ZXI7CisjZW5kaWYKIH0KIAogc3RydWN0IEV3a19X
aW5kb3dfT2JqZWN0X0NsZWFyZWRfRXZlbnQgewpAQCAtMjM0LDQgKzI0MiwxMSBAQCB2b2lkIGV3
a19mcmFtZV9taXhlZF9jb250ZW50X3J1bl9zZXQoRXZhc19PYmplY3QqIGV3a0ZyYW1lLCBib29s
IGhhc1J1bik7CiB2b2lkIGV3a192aWV3X21peGVkX2NvbnRlbnRfZGlzcGxheWVkX3NldChFdmFz
X09iamVjdCogZXdrVmlldywgYm9vbCBoYXNEaXNwbGF5ZWQpOwogdm9pZCBld2tfdmlld19taXhl
ZF9jb250ZW50X3J1bl9zZXQoRXZhc19PYmplY3QqIGV3a1ZpZXcsIGJvb2wgaGFzUnVuKTsKIAor
I2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKK2Jvb2wgZXdrX3ZpZXdfYWNjZWxlcmF0
ZWRfY29tcG9zaXRpbmdfb2JqZWN0X2NyZWF0ZShFdmFzX09iamVjdCogZXdrVmlldywgRXZhc19O
YXRpdmVfU3VyZmFjZSogbmF0aXZlU3VyZmFjZSwgaW50IHgsIGludCB5LCBpbnQgd2lkdGgsIGlu
dCBoZWlnaHQpOworV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0M0QqIGV3a192aWV3X2FjY2VsZXJh
dGVkX2NvbXBvc2l0aW5nX2NvbnRleHRfZ2V0KEV2YXNfT2JqZWN0KiBld2tWaWV3KTsKKyNlbmRp
ZgorCitXZWJDb3JlOjpQbGF0Zm9ybVBhZ2VDbGllbnQgZXdrX3ZpZXdfcGFnZV9jbGllbnRfZ2V0
KEV2YXNfT2JqZWN0KiBld2tWaWV3KTsKKwogI2VuZGlmIC8vIGV3a19wcml2YXRlX2gKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0
L2VmbC9ld2svZXdrX3ZpZXcuY3BwCmluZGV4IDE3YTZlYTAuLjU0Y2IxNjAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9l
ZmwvZXdrL2V3a192aWV3LmNwcApAQCAtNDUsNiArNDUsNyBAQAogI2luY2x1ZGUgIkpTRE9NV2lu
ZG93LmgiCiAjaW5jbHVkZSAiSlNMb2NrLmgiCiAjaW5jbHVkZSAiTGF5b3V0VHlwZXMuaCIKKyNp
bmNsdWRlICJQYWdlQ2xpZW50RWZsLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1Nb3VzZUV2ZW50Lmgi
CiAjaW5jbHVkZSAiUG9wdXBNZW51Q2xpZW50LmgiCiAjaW5jbHVkZSAiUHJvZ3Jlc3NUcmFja2Vy
LmgiCkBAIC03NCw2ICs3NSwxMCBAQAogI2luY2x1ZGUgIlZpYnJhdGlvbkNsaWVudEVmbC5oIgog
I2VuZGlmCiAKKyNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCisjaW5jbHVkZSAiTm90
SW1wbGVtZW50ZWQuaCIKKyNlbmRpZgorCiBzdGF0aWMgY29uc3QgZmxvYXQgem9vbU1pbmltdW0g
PSAwLjA1Owogc3RhdGljIGNvbnN0IGZsb2F0IHpvb21NYXhpbXVtID0gNC4wOwogCkBAIC0xMzgs
NiArMTQzLDcgQEAgc3RydWN0IF9Fd2tfVmlld19Qcml2YXRlX0RhdGEgewogICAgIFdlYkNvcmU6
OkZyYW1lKiBtYWluRnJhbWU7CiAgICAgV2ViQ29yZTo6Vmlld3BvcnRBcmd1bWVudHMgdmlld3Bv
cnRBcmd1bWVudHM7CiAgICAgRXdrX0hpc3RvcnkqIGhpc3Rvcnk7CisgICAgT3duUHRyPFdlYkNv
cmU6OlBhZ2VDbGllbnRFZmw+IHBhZ2VDbGllbnQ7CiAgICAgc3RydWN0IHsKICAgICAgICAgRXdr
X01lbnUgbWVudTsKICAgICAgICAgV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50KiBtZW51Q2xpZW50
OwpAQCAtNzA4LDYgKzcxNCw4IEBAIHN0YXRpYyBFd2tfVmlld19Qcml2YXRlX0RhdGEqIF9ld2tf
dmlld19wcml2X25ldyhFd2tfVmlld19TbWFydF9EYXRhKiBzbWFydERhdGEpCiAKICAgICBwcml2
LT5zb3VwU2Vzc2lvbiA9IFdlYkNvcmU6OlJlc291cmNlSGFuZGxlOjpkZWZhdWx0U2Vzc2lvbigp
OwogCisgICAgcHJpdi0+cGFnZUNsaWVudCA9IGFkb3B0UHRyKG5ldyBXZWJDb3JlOjpQYWdlQ2xp
ZW50RWZsKHNtYXJ0RGF0YS0+c2VsZikpOworCiAgICAgcmV0dXJuIHByaXY7CiB9CiAKQEAgLTM5
MTYsNiArMzkyNCwzNCBAQCB2b2lkIGV3a192aWV3X3NvdXBfc2Vzc2lvbl9zZXQoRXZhc19PYmpl
Y3QqIGV3a1ZpZXcsIFNvdXBTZXNzaW9uKiBzZXNzaW9uKQogICAgIHByaXYtPnNvdXBTZXNzaW9u
ID0gc2Vzc2lvbjsKIH0KIAorI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKK2Jvb2wg
ZXdrX3ZpZXdfYWNjZWxlcmF0ZWRfY29tcG9zaXRpbmdfb2JqZWN0X2NyZWF0ZShFdmFzX09iamVj
dCogZXdrVmlldywgRXZhc19OYXRpdmVfU3VyZmFjZSAqbmF0aXZlU3VyZmFjZSwgaW50IHgsIGlu
dCB5LCBpbnQgd2lkdGgsIGludCBoZWlnaHQpCit7CisgICAgRVdLX1ZJRVdfU0RfR0VUX09SX1JF
VFVSTihld2tWaWV3LCBzbWFydERhdGEsIGZhbHNlKTsKKyAgICBFV0tfVklFV19QUklWX0dFVF9P
Ul9SRVRVUk4oc21hcnREYXRhLCBwcml2LCBmYWxzZSk7CisKKyAgICBub3RJbXBsZW1lbnRlZCgp
OworICAgIHJldHVybiBmYWxzZTsKK30KKworV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0M0QqIGV3
a192aWV3X2FjY2VsZXJhdGVkX2NvbXBvc2l0aW5nX2NvbnRleHRfZ2V0KEV2YXNfT2JqZWN0KiBl
d2tWaWV3KQoreworICAgIEVXS19WSUVXX1NEX0dFVF9PUl9SRVRVUk4oZXdrVmlldywgc21hcnRE
YXRhLCAwKTsKKyAgICBFV0tfVklFV19QUklWX0dFVF9PUl9SRVRVUk4oc21hcnREYXRhLCBwcml2
LCAwKTsKKworICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgcmV0dXJuIDA7Cit9CisjZW5kaWYK
KworV2ViQ29yZTo6UGxhdGZvcm1QYWdlQ2xpZW50IGV3a192aWV3X3BhZ2VfY2xpZW50X2dldChF
dmFzX09iamVjdCogZXdrVmlldykKK3sKKyAgICBFV0tfVklFV19TRF9HRVRfT1JfUkVUVVJOKGV3
a1ZpZXcsIHNtYXJ0RGF0YSwgMCk7CisgICAgRVdLX1ZJRVdfUFJJVl9HRVRfT1JfUkVUVVJOKHNt
YXJ0RGF0YSwgcHJpdiwgMCk7CisKKyAgICByZXR1cm4gcHJpdi0+cGFnZUNsaWVudC5nZXQoKTsK
K30KKwogbmFtZXNwYWNlIEVXS1ByaXZhdGUgewogCiBXZWJDb3JlOjpQYWdlICpjb3JlUGFnZShj
b25zdCBFdmFzX09iamVjdCAqZXdrVmlldykK
</data>
<flag name="review"
          id="135203"
          type_id="1"
          status="-"
          setter="morrita"
    />
    <flag name="commit-queue"
          id="135204"
          type_id="3"
          status="-"
          setter="gyuyoung.kim"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>132486</attachid>
            <date>2012-03-18 02:41:50 -0700</date>
            <delta_ts>2012-03-20 23:57:58 -0700</delta_ts>
            <desc>modified patch</desc>
            <filename>bugzilla_20120318.patch</filename>
            <type>text/plain</type>
            <size>13249</size>
            <attacher name="Hyowon Kim">hw1008.kim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGU4YTlhM2EuLjU1YmMyMTcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDEyLTAzLTE4ICBIeW93b24gS2ltICA8
aHcxMDA4LmtpbUBzYW1zdW5nLmNvbT4KKworICAgICAgICBbRUZMXSBBZGQgUGFnZUNsaWVudEVm
bCB0byBXZWJDb3JlU3VwcG9ydC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTgwNzQ4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiB3dGYvUGxhdGZvcm0uaDogRGlzYWJsZSBhY2NlbGVyYXRlZCBjb21wb3Np
dGluZy4gSXQncyBub3QgcmVhZHkgeWV0LgorCiAyMDEyLTAzLTE2ICBNaWNoYWVsIFNhYm9mZiAg
PG1zYWJvZmZAYXBwbGUuY29tPgogCiAgICAgICAgIEltcHJvdmUgZGlhZ25vc3RpYyBiZW5lZml0
IG9mIEpTR2xvYmFsRGF0YTo6bV9pc0luaXRpYWxpemluZ09iamVjdApkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi9QbGF0Zm9ybS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3d0Zi9QbGF0Zm9ybS5oCmluZGV4IGQ4MzRiNTMuLmY3OTNjYjQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93dGYvUGxhdGZvcm0uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd3RmL1BsYXRmb3JtLmgKQEAgLTEwNzQsNyArMTA3NCw3IEBACiAjZW5kaWYKIAogLyogQWNj
ZWxlcmF0ZWQgY29tcG9zaXRpbmcgKi8KLSNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKElP
UykgfHwgUExBVEZPUk0oUVQpIHx8IChQTEFURk9STShXSU4pICYmICFPUyhXSU5DRSkgJiYgIVBM
QVRGT1JNKFdJTl9DQUlSTykpIHx8IFBMQVRGT1JNKEVGTCkKKyNpZiBQTEFURk9STShNQUMpIHx8
IFBMQVRGT1JNKElPUykgfHwgUExBVEZPUk0oUVQpIHx8IChQTEFURk9STShXSU4pICYmICFPUyhX
SU5DRSkgJiYgIVBMQVRGT1JNKFdJTl9DQUlSTykpCiAjZGVmaW5lIFdURl9VU0VfQUNDRUxFUkFU
RURfQ09NUE9TSVRJTkcgMQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAzNTAyNDQ4Li43ZGI4MjQ4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTItMDMtMTggIEh5b3dvbiBLaW0gIDxo
dzEwMDgua2ltQHNhbXN1bmcuY29tPgorCisgICAgICAgIFtFRkxdIEFkZCBQYWdlQ2xpZW50RWZs
IHRvIFdlYkNvcmVTdXBwb3J0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9ODA3NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIHBsYXRmb3JtL1dpZGdldC5oOiBVc2UgUGFnZUNsaWVudEVmbCBhcyB0eXBl
IGZvciBQbGF0Zm9ybVBhZ2VDbGllbnQuCisgICAgICAgIChXZWJDb3JlKToKKwogMjAxMi0wMy0x
NiAgUmFwaGFlbCBLdWJvIGRhIENvc3RhICA8a3Vib0Bwcm9mdXNpb24ubW9iaT4KIAogICAgICAg
ICBbRUZMXSBVbnJldmlld2VkLCBmaXggYnVpbGQgYWZ0ZXIgcjExMTA0MS4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1dpZGdldC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vV2lkZ2V0LmgKaW5kZXggYWViMzNlYy4uMGQ3Y2ZkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vV2lkZ2V0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vV2lk
Z2V0LmgKQEAgLTkwLDYgKzkwLDExIEBAIHR5cGVkZWYgUVdlYlBhZ2VDbGllbnQqIFBsYXRmb3Jt
UGFnZUNsaWVudDsKICNlbGlmIFBMQVRGT1JNKEJMQUNLQkVSUlkpCiAjaW5jbHVkZSAiUGFnZUNs
aWVudEJsYWNrQmVycnkuaCIKIHR5cGVkZWYgUGFnZUNsaWVudEJsYWNrQmVycnkqIFBsYXRmb3Jt
UGFnZUNsaWVudDsKKyNlbGlmIFBMQVRGT1JNKEVGTCkKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2Ns
YXNzIFBhZ2VDbGllbnRFZmw7Cit0eXBlZGVmIFBhZ2VDbGllbnRFZmwqIFBsYXRmb3JtUGFnZUNs
aWVudDsKK30KICNlbHNlCiB0eXBlZGVmIFBsYXRmb3JtV2lkZ2V0IFBsYXRmb3JtUGFnZUNsaWVu
dDsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZwppbmRleCBiYzNhNTY3Li5jZmEzZWQxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDEzIEBACisyMDEyLTAzLTE4ICBIeW93b24gS2ltICA8aHcxMDA4LmtpbUBzYW1zdW5nLmNv
bT4KKworICAgICAgICBbRUZMXSBBZGQgUGFnZUNsaWVudEVmbCB0byBXZWJDb3JlU3VwcG9ydC4K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgwNzQ4CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBQbGF0Zm9y
bUVmbC5jbWFrZTogQWRkIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZWZsIHRvIHRoZSBpbmNs
dWRlIHBhdGgKKyAgICAgICAgYW5kIFBhZ2VDbGllbnRFZmwuY3BwIHRvIHRoZSBzb3VyY2UgbGlz
dC4KKwogMjAxMi0wMy0xNiAgS2lob25nIEt3b24gIDxraWhvbmcua3dvbkBzYW1zdW5nLmNvbT4K
IAogICAgICAgICBTdXBwb3J0IGZvciBCYXR0ZXJ5IFN0YXR1cyBBUEkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvUGxhdGZvcm1FZmwuY21ha2UgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtRWZs
LmNtYWtlCmluZGV4IDE1ODQxMzUuLjEwMDEwYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
UGxhdGZvcm1FZmwuY21ha2UKKysrIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybUVmbC5jbWFrZQpA
QCAtMTMsNiArMTMsNyBAQCBMSVNUKEFQUEVORCBXZWJLaXRfSU5DTFVERV9ESVJFQ1RPUklFUwog
ICAgICIke0pBVkFTQ1JJUFRDT1JFX0RJUn0vd3RmL2dvYmplY3QiCiAgICAgIiR7V0VCQ09SRV9E
SVJ9L3BsYXRmb3JtL2VmbCIKICAgICAiJHtXRUJDT1JFX0RJUn0vcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2Fpcm8iCisgICAgIiR7V0VCQ09SRV9ESVJ9L3BsYXRmb3JtL2dyYXBoaWNzL2VmbCIKICAgICAk
e0NhaXJvX0lOQ0xVREVfRElSU30KICAgICAke0VDT1JFX1hfSU5DTFVERV9ESVJTfQogICAgICR7
RURKRV9JTkNMVURFX0RJUlN9CkBAIC04MCw2ICs4MSw3IEBAIExJU1QoQVBQRU5EIFdlYktpdF9T
T1VSQ0VTCiAgICAgZWZsL1dlYkNvcmVTdXBwb3J0L1N0b3JhZ2VUcmFja2VyQ2xpZW50RWZsLmNw
cAogICAgIGVmbC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRFZmwuY3BwCiAgICAgZWZs
L1dlYkNvcmVTdXBwb3J0L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudEVmbC5jcHAKKyAgICBl
ZmwvV2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVudEVmbC5jcHAKIAogICAgIGVmbC9ld2svZXdrX2F1
dGguY3BwCiAgICAgZWZsL2V3ay9ld2tfYXV0aF9zb3VwLmNwcApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9lZmwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCmluZGV4
IDE0NzE4ZGIuLmJjMmU2ZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNyBAQAorMjAx
Mi0wMy0xOCAgSHlvd29uIEtpbSAgPGh3MTAwOC5raW1Ac2Ftc3VuZy5jb20+CisKKyAgICAgICAg
W0VGTF0gQWRkIFBhZ2VDbGllbnRFZmwgdG8gV2ViQ29yZVN1cHBvcnQuCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MDc0OAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBQYWdlQ2xp
ZW50RWZsIGZvciBpbXBsZW1lbnRhaW9uIG9mIGFjY2VsZXJhdGVkIGNvbXBvc2l0aW5nLgorCisg
ICAgICAgICogV2ViQ29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50RWZsLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNocm9tZUNsaWVudEVmbDo6cGxhdGZvcm1QYWdlQ2xpZW50KToKKyAgICAgICAgKiBX
ZWJDb3JlU3VwcG9ydC9QYWdlQ2xpZW50RWZsLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3Jl
KToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VDbGllbnRFZmw6OlBhZ2VDbGllbnRFZmwpOgorICAg
ICAgICAoV2ViQ29yZTo6UGFnZUNsaWVudEVmbDo6flBhZ2VDbGllbnRFZmwpOgorICAgICAgICAo
V2ViQ29yZTo6UGFnZUNsaWVudEVmbDo6Y3JlYXRlRXZhc09iamVjdEZvckFjY2VsZXJhdGVkQ29t
cG9zaXRpbmcpOgorICAgICAgICBKdXN0IGNhbGwgZXdrX3ZpZXdfYWNjZWxlcmF0ZWRfY29tcG9z
aXRpbmdfb2JqZWN0X2NyZWF0ZSgpLgorICAgICAgICAoV2ViQ29yZTo6UGFnZUNsaWVudEVmbDo6
YWNjZWxlcmF0ZWRDb21wb3NpdGluZ0NvbnRleHQpOgorICAgICAgICBKdXN0IGNhbGwgZXdrX3Zp
ZXdfYWNjZWxlcmF0ZWRfY29tcG9zaXRpbmdfY29udGV4dF9nZXQoKS4KKyAgICAgICAgKiBXZWJD
b3JlU3VwcG9ydC9QYWdlQ2xpZW50RWZsLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZSk6Cisg
ICAgICAgIChQYWdlQ2xpZW50RWZsKToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VDbGllbnRFZmw6
OnZpZXcpOiBSZXR1cm4gZXdrVmlldy4KKyAgICAgICAgKiBld2svZXdrX3ByaXZhdGUuaDoKKyAg
ICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoRVdLUHJpdmF0ZSk6CisgICAgICAgICogZXdrL2V3
a192aWV3LmNwcDoKKyAgICAgICAgKF9Fd2tfVmlld19Qcml2YXRlX0RhdGEpOiBBZGQgT3duUHRy
PFBhZ2VDbGllbnRFZmw+LgorICAgICAgICAoX2V3a192aWV3X3ByaXZfbmV3KTogQ3JlYXRlIGEg
bmV3IFBhZ2VDbGllbnRFZmwuCisgICAgICAgIChld2tfdmlld19hY2NlbGVyYXRlZF9jb21wb3Np
dGluZ19vYmplY3RfY3JlYXRlKTogTm90IGltcGxlbWVudGVkLgorICAgICAgICAoZXdrX3ZpZXdf
YWNjZWxlcmF0ZWRfY29tcG9zaXRpbmdfY29udGV4dF9nZXQpOiBOb3QgaW1wbGVtZW50ZWQuCisg
ICAgICAgIChFV0tQcml2YXRlOjpjb3JlUGFnZUNsaWVudCk6IFJldHVybiB0aGUgUGFnZUNsaWVu
dEVmbCBwb2ludGVyLgorICAgICAgICAoRVdLUHJpdmF0ZSk6CisKIDIwMTItMDMtMTYgIEtpaG9u
ZyBLd29uICA8a2lob25nLmt3b25Ac2Ftc3VuZy5jb20+CiAKICAgICAgICAgU3VwcG9ydCBmb3Ig
QmF0dGVyeSBTdGF0dXMgQVBJCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3Jl
U3VwcG9ydC9DaHJvbWVDbGllbnRFZmwuY3BwIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1
cHBvcnQvQ2hyb21lQ2xpZW50RWZsLmNwcAppbmRleCBkZDc5YjkzLi42OGFkZjVmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRFZmwuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEVmbC5j
cHAKQEAgLTMzOSw3ICszMzksNyBAQCBJbnRQb2ludCBDaHJvbWVDbGllbnRFZmw6OnNjcmVlblRv
Um9vdFZpZXcoY29uc3QgSW50UG9pbnQmIHBvaW50KSBjb25zdAogCiBQbGF0Zm9ybVBhZ2VDbGll
bnQgQ2hyb21lQ2xpZW50RWZsOjpwbGF0Zm9ybVBhZ2VDbGllbnQoKSBjb25zdAogewotICAgIHJl
dHVybiBtX3ZpZXc7CisgICAgcmV0dXJuIEVXS1ByaXZhdGU6OmNvcmVQYWdlQ2xpZW50KG1fdmll
dyk7CiB9CiAKIHZvaWQgQ2hyb21lQ2xpZW50RWZsOjpzY3JvbGxiYXJzTW9kZURpZENoYW5nZSgp
IGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9QYWdl
Q2xpZW50RWZsLmNwcCBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L1BhZ2VDbGll
bnRFZmwuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdlNjlhNjgKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9QYWdlQ2xp
ZW50RWZsLmNwcApAQCAtMCwwICsxLDQ5IEBACisvKgorICAgIENvcHlyaWdodCAoQykgMjAxMiBT
YW1zdW5nIEVsZWN0cm9uaWNzCisKKyAgICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsg
eW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgICAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0
ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAgICBMaWNlbnNlIGFzIHB1
Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAgICB2ZXJz
aW9uIDIuMSBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVy
c2lvbi4KKworICAgIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0
IGl0IHdpbGwgYmUgdXNlZnVsLAorICAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91
dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAgICBMaWJyYXJ5
IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworICAgIFlvdSBzaG91
bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGlj
IExpY2Vuc2UKKyAgICBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJ
TkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp
b24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgICAgQm9zdG9uLCBN
QSAwMjExMC0xMzAxLCBVU0EuCisqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAi
UGFnZUNsaWVudEVmbC5oIgorCisjaW5jbHVkZSAiZXdrX3ByaXZhdGUuaCIKKworbmFtZXNwYWNl
IFdlYkNvcmUgeworCitQYWdlQ2xpZW50RWZsOjpQYWdlQ2xpZW50RWZsKEV2YXNfT2JqZWN0KiB2
aWV3KQorICAgIDogbV92aWV3KHZpZXcpCit7CisgICAgQVNTRVJUKG1fdmlldyk7Cit9CisKK1Bh
Z2VDbGllbnRFZmw6On5QYWdlQ2xpZW50RWZsKCkKK3sKK30KKworI2lmIFVTRShBQ0NFTEVSQVRF
RF9DT01QT1NJVElORykKK2Jvb2wgUGFnZUNsaWVudEVmbDo6Y3JlYXRlRXZhc09iamVjdEZvckFj
Y2VsZXJhdGVkQ29tcG9zaXRpbmcoRXZhc19OYXRpdmVfU3VyZmFjZSogbmF0aXZlU3VyZmFjZSwg
aW50IHgsIGludCB5LCBpbnQgd2lkdGgsIGludCBoZWlnaHQpCit7CisgICAgcmV0dXJuIGV3a192
aWV3X2FjY2VsZXJhdGVkX2NvbXBvc2l0aW5nX29iamVjdF9jcmVhdGUobV92aWV3LCBuYXRpdmVT
dXJmYWNlLCB4LCB5LCB3aWR0aCwgaGVpZ2h0KTsKK30KKworR3JhcGhpY3NDb250ZXh0M0QqIFBh
Z2VDbGllbnRFZmw6OmFjY2VsZXJhdGVkQ29tcG9zaXRpbmdDb250ZXh0KCkKK3sKKyAgICByZXR1
cm4gZXdrX3ZpZXdfYWNjZWxlcmF0ZWRfY29tcG9zaXRpbmdfY29udGV4dF9nZXQobV92aWV3KTsK
K30KKyNlbmRpZgorCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3Vw
cG9ydC9QYWdlQ2xpZW50RWZsLmggYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9Q
YWdlQ2xpZW50RWZsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWZjMTRk
ZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L1Bh
Z2VDbGllbnRFZmwuaApAQCAtMCwwICsxLDQ4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEy
IFNhbXN1bmcgRWxlY3Ryb25pY3MKKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2Fy
ZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhl
IHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBw
dWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJz
aW9uIDIuMSBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVy
c2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhh
dCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91
dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBH
ZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3Vs
ZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMg
TGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5H
LkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24s
IEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAy
MTEwLTEzMDEsIFVTQS4KKyAqLworCisjaWZuZGVmIFBhZ2VDbGllbnRFZmxfaAorI2RlZmluZSBQ
YWdlQ2xpZW50RWZsX2gKKwordHlwZWRlZiBzdHJ1Y3QgX0V2YXNfT2JqZWN0IEV2YXNfT2JqZWN0
OwordHlwZWRlZiBzdHJ1Y3QgX0V2YXNfTmF0aXZlX1N1cmZhY2UgRXZhc19OYXRpdmVfU3VyZmFj
ZTsKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBHcmFwaGljc0NvbnRleHQzRDsKKwor
Y2xhc3MgUGFnZUNsaWVudEVmbCB7CitwdWJsaWM6CisgICAgUGFnZUNsaWVudEVmbChFdmFzX09i
amVjdCogdmlldyk7CisgICAgdmlydHVhbCB+UGFnZUNsaWVudEVmbCgpOworCisjaWYgVVNFKEFD
Q0VMRVJBVEVEX0NPTVBPU0lUSU5HKQorICAgIGJvb2wgY3JlYXRlRXZhc09iamVjdEZvckFjY2Vs
ZXJhdGVkQ29tcG9zaXRpbmcoRXZhc19OYXRpdmVfU3VyZmFjZSosIGludCB4LCBpbnQgeSwgaW50
IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKyAgICBHcmFwaGljc0NvbnRleHQzRCogYWNjZWxlcmF0ZWRD
b21wb3NpdGluZ0NvbnRleHQoKTsKKyNlbmRpZgorCisgICAgRXZhc19PYmplY3QqIHZpZXcoKSB7
IHJldHVybiBtX3ZpZXc7IH0KKworcHJvdGVjdGVkOgorICAgIEV2YXNfT2JqZWN0KiBtX3ZpZXc7
Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBQYWdlQ2xpZW50RWZs
X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfcHJpdmF0ZS5oIGIvU291
cmNlL1dlYktpdC9lZmwvZXdrL2V3a19wcml2YXRlLmgKaW5kZXggYjRhOGRkOS4uOTE0YTg0NCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a19wcml2YXRlLmgKKysrIGIvU291
cmNlL1dlYktpdC9lZmwvZXdrL2V3a19wcml2YXRlLmgKQEAgLTM2LDYgKzM2LDkgQEAKICNpbmNs
dWRlICJld2tfanMuaCIKICNpbmNsdWRlICJld2tfdmlldy5oIgogI2luY2x1ZGUgPEV2YXMuaD4K
KyNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCisjaW5jbHVkZSA8RXZhc19HTC5oPgor
I2VuZGlmCiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvVmVjdG9y
Lmg+CiAKQEAgLTc0LDYgKzc3LDEwIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIHN0cnVjdCBQb3B1
cE1lbnVDbGllbnQ7CiBzdHJ1Y3QgQ29udGV4dE1lbnU7CiBzdHJ1Y3QgQ29udGV4dE1lbnVJdGVt
OworI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKK2NsYXNzIEdyYXBoaWNzQ29udGV4
dDNEOworY2xhc3MgR3JhcGhpY3NMYXllcjsKKyNlbmRpZgogfQogCiBzdHJ1Y3QgRXdrX1dpbmRv
d19PYmplY3RfQ2xlYXJlZF9FdmVudCB7CkBAIC04Nyw2ICs5NCw3IEBAIG5hbWVzcGFjZSBFV0tQ
cml2YXRlIHsKIFdlYkNvcmU6OkZyYW1lICpjb3JlRnJhbWUoY29uc3QgRXZhc19PYmplY3QgKmV3
a0ZyYW1lKTsKIFdlYkNvcmU6OlBhZ2UgKmNvcmVQYWdlKGNvbnN0IEV2YXNfT2JqZWN0ICpld2tW
aWV3KTsKIFdlYkNvcmU6Okhpc3RvcnlJdGVtICpjb3JlSGlzdG9yeUl0ZW0oY29uc3QgRXdrX0hp
c3RvcnlfSXRlbSAqZXdrSGlzdG9yeUl0ZW0pOworV2ViQ29yZTo6UGxhdGZvcm1QYWdlQ2xpZW50
IGNvcmVQYWdlQ2xpZW50KEV2YXNfT2JqZWN0KiBld2tWaWV3KTsKIAogRXZhc19PYmplY3QqIGtp
dEZyYW1lKGNvbnN0IFdlYkNvcmU6OkZyYW1lKiBjb3JlRnJhbWUpOwogCkBAIC0yMzQsNCArMjQy
LDkgQEAgdm9pZCBld2tfZnJhbWVfbWl4ZWRfY29udGVudF9ydW5fc2V0KEV2YXNfT2JqZWN0KiBl
d2tGcmFtZSwgYm9vbCBoYXNSdW4pOwogdm9pZCBld2tfdmlld19taXhlZF9jb250ZW50X2Rpc3Bs
YXllZF9zZXQoRXZhc19PYmplY3QqIGV3a1ZpZXcsIGJvb2wgaGFzRGlzcGxheWVkKTsKIHZvaWQg
ZXdrX3ZpZXdfbWl4ZWRfY29udGVudF9ydW5fc2V0KEV2YXNfT2JqZWN0KiBld2tWaWV3LCBib29s
IGhhc1J1bik7CiAKKyNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCitib29sIGV3a192
aWV3X2FjY2VsZXJhdGVkX2NvbXBvc2l0aW5nX29iamVjdF9jcmVhdGUoRXZhc19PYmplY3QqIGV3
a1ZpZXcsIEV2YXNfTmF0aXZlX1N1cmZhY2UqIG5hdGl2ZVN1cmZhY2UsIGludCB4LCBpbnQgeSwg
aW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKK1dlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDNEKiBld2tf
dmlld19hY2NlbGVyYXRlZF9jb21wb3NpdGluZ19jb250ZXh0X2dldChFdmFzX09iamVjdCogZXdr
Vmlldyk7CisjZW5kaWYKKwogI2VuZGlmIC8vIGV3a19wcml2YXRlX2gKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2sv
ZXdrX3ZpZXcuY3BwCmluZGV4IDdhNTJjYWYuLmQ1OGQxZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3
a192aWV3LmNwcApAQCAtNDUsNiArNDUsNyBAQAogI2luY2x1ZGUgIkpTRE9NV2luZG93LmgiCiAj
aW5jbHVkZSAiSlNMb2NrLmgiCiAjaW5jbHVkZSAiTGF5b3V0VHlwZXMuaCIKKyNpbmNsdWRlICJQ
YWdlQ2xpZW50RWZsLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1Nb3VzZUV2ZW50LmgiCiAjaW5jbHVk
ZSAiUG9wdXBNZW51Q2xpZW50LmgiCiAjaW5jbHVkZSAiUHJvZ3Jlc3NUcmFja2VyLmgiCkBAIC03
OCw2ICs3OSwxMCBAQAogI2luY2x1ZGUgIkJhdHRlcnlDbGllbnRFZmwuaCIKICNlbmRpZgogCisj
aWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQorI2luY2x1ZGUgIk5vdEltcGxlbWVudGVk
LmgiCisjZW5kaWYKKwogc3RhdGljIGNvbnN0IGZsb2F0IHpvb21NaW5pbXVtID0gMC4wNTsKIHN0
YXRpYyBjb25zdCBmbG9hdCB6b29tTWF4aW11bSA9IDQuMDsKIApAQCAtMTQyLDYgKzE0Nyw3IEBA
IHN0cnVjdCBfRXdrX1ZpZXdfUHJpdmF0ZV9EYXRhIHsKICAgICBXZWJDb3JlOjpGcmFtZSogbWFp
bkZyYW1lOwogICAgIFdlYkNvcmU6OlZpZXdwb3J0QXJndW1lbnRzIHZpZXdwb3J0QXJndW1lbnRz
OwogICAgIEV3a19IaXN0b3J5KiBoaXN0b3J5OworICAgIE93blB0cjxXZWJDb3JlOjpQYWdlQ2xp
ZW50RWZsPiBwYWdlQ2xpZW50OwogICAgIHN0cnVjdCB7CiAgICAgICAgIEV3a19NZW51IG1lbnU7
CiAgICAgICAgIFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCogbWVudUNsaWVudDsKQEAgLTcxNiw2
ICs3MjIsOCBAQCBzdGF0aWMgRXdrX1ZpZXdfUHJpdmF0ZV9EYXRhKiBfZXdrX3ZpZXdfcHJpdl9u
ZXcoRXdrX1ZpZXdfU21hcnRfRGF0YSogc21hcnREYXRhKQogCiAgICAgcHJpdi0+c291cFNlc3Np
b24gPSBXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZTo6ZGVmYXVsdFNlc3Npb24oKTsKIAorICAgIHBy
aXYtPnBhZ2VDbGllbnQgPSBhZG9wdFB0cihuZXcgV2ViQ29yZTo6UGFnZUNsaWVudEVmbChzbWFy
dERhdGEtPnNlbGYpKTsKKwogICAgIHJldHVybiBwcml2OwogfQogCkBAIC0zOTI0LDYgKzM5MzIs
MjAgQEAgdm9pZCBld2tfdmlld19zb3VwX3Nlc3Npb25fc2V0KEV2YXNfT2JqZWN0KiBld2tWaWV3
LCBTb3VwU2Vzc2lvbiogc2Vzc2lvbikKICAgICBwcml2LT5zb3VwU2Vzc2lvbiA9IHNlc3Npb247
CiB9CiAKKyNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCitib29sIGV3a192aWV3X2Fj
Y2VsZXJhdGVkX2NvbXBvc2l0aW5nX29iamVjdF9jcmVhdGUoRXZhc19PYmplY3QqIGV3a1ZpZXcs
IEV2YXNfTmF0aXZlX1N1cmZhY2UqIG5hdGl2ZVN1cmZhY2UsIGludCB4LCBpbnQgeSwgaW50IHdp
ZHRoLCBpbnQgaGVpZ2h0KQoreworICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgcmV0dXJuIGZh
bHNlOworfQorCitXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzRCogZXdrX3ZpZXdfYWNjZWxlcmF0
ZWRfY29tcG9zaXRpbmdfY29udGV4dF9nZXQoRXZhc19PYmplY3QqIGV3a1ZpZXcpCit7CisgICAg
bm90SW1wbGVtZW50ZWQoKTsKKyAgICByZXR1cm4gMDsKK30KKyNlbmRpZgorCiBuYW1lc3BhY2Ug
RVdLUHJpdmF0ZSB7CiAKIFdlYkNvcmU6OlBhZ2UgKmNvcmVQYWdlKGNvbnN0IEV2YXNfT2JqZWN0
ICpld2tWaWV3KQpAQCAtMzkzMyw0ICszOTU1LDExIEBAIFdlYkNvcmU6OlBhZ2UgKmNvcmVQYWdl
KGNvbnN0IEV2YXNfT2JqZWN0ICpld2tWaWV3KQogICAgIHJldHVybiBwcml2LT5wYWdlLmdldCgp
OwogfQogCitXZWJDb3JlOjpQbGF0Zm9ybVBhZ2VDbGllbnQgY29yZVBhZ2VDbGllbnQoRXZhc19P
YmplY3QqIGV3a1ZpZXcpCit7CisgICAgRVdLX1ZJRVdfU0RfR0VUX09SX1JFVFVSTihld2tWaWV3
LCBzbWFydERhdGEsIDApOworICAgIEVXS19WSUVXX1BSSVZfR0VUX09SX1JFVFVSTihzbWFydERh
dGEsIHByaXYsIDApOworICAgIHJldHVybiBwcml2LT5wYWdlQ2xpZW50LmdldCgpOworfQorCiB9
IC8vIG5hbWVzcGFjZSBFV0tQcml2YXRlCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>132982</attachid>
            <date>2012-03-20 23:57:58 -0700</date>
            <delta_ts>2012-03-21 01:40:51 -0700</delta_ts>
            <desc>patch with updates from comment #10</desc>
            <filename>bugzilla_20120321.patch</filename>
            <type>text/plain</type>
            <size>15389</size>
            <attacher name="Hyowon Kim">hw1008.kim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGU4YTlhM2EuLjUyOGRhYjggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDEyLTAzLTIwICBIeW93b24gS2ltICA8
aHcxMDA4LmtpbUBzYW1zdW5nLmNvbT4KKworICAgICAgICBbRUZMXSBBZGQgUGFnZUNsaWVudEVm
bCB0byBXZWJDb3JlU3VwcG9ydC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTgwNzQ4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiB3dGYvUGxhdGZvcm0uaDogRGlzYWJsZSBhY2NlbGVyYXRlZCBjb21wb3Np
dGluZy4gSXQncyBub3QgcmVhZHkgeWV0LgorCiAyMDEyLTAzLTE2ICBNaWNoYWVsIFNhYm9mZiAg
PG1zYWJvZmZAYXBwbGUuY29tPgogCiAgICAgICAgIEltcHJvdmUgZGlhZ25vc3RpYyBiZW5lZml0
IG9mIEpTR2xvYmFsRGF0YTo6bV9pc0luaXRpYWxpemluZ09iamVjdApkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi9QbGF0Zm9ybS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3d0Zi9QbGF0Zm9ybS5oCmluZGV4IGQ4MzRiNTMuLmY3OTNjYjQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS93dGYvUGxhdGZvcm0uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvd3RmL1BsYXRmb3JtLmgKQEAgLTEwNzQsNyArMTA3NCw3IEBACiAjZW5kaWYKIAogLyogQWNj
ZWxlcmF0ZWQgY29tcG9zaXRpbmcgKi8KLSNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKElP
UykgfHwgUExBVEZPUk0oUVQpIHx8IChQTEFURk9STShXSU4pICYmICFPUyhXSU5DRSkgJiYgIVBM
QVRGT1JNKFdJTl9DQUlSTykpIHx8IFBMQVRGT1JNKEVGTCkKKyNpZiBQTEFURk9STShNQUMpIHx8
IFBMQVRGT1JNKElPUykgfHwgUExBVEZPUk0oUVQpIHx8IChQTEFURk9STShXSU4pICYmICFPUyhX
SU5DRSkgJiYgIVBMQVRGT1JNKFdJTl9DQUlSTykpCiAjZGVmaW5lIFdURl9VU0VfQUNDRUxFUkFU
RURfQ09NUE9TSVRJTkcgMQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAzNTAyNDQ4Li4yZjBkYWIx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTItMDMtMjAgIEh5b3dvbiBLaW0gIDxo
dzEwMDgua2ltQHNhbXN1bmcuY29tPgorCisgICAgICAgIFtFRkxdIEFkZCBQYWdlQ2xpZW50RWZs
IHRvIFdlYkNvcmVTdXBwb3J0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9ODA3NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIHBsYXRmb3JtL1dpZGdldC5oOiBVc2UgUGFnZUNsaWVudEVmbCBhcyB0eXBl
IGZvciBQbGF0Zm9ybVBhZ2VDbGllbnQuCisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9lZmwvR3JhcGhpY3NDb250ZXh0M0RQcml2YXRlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZTo6Y3JlYXRlU3VyZmFjZSk6IENo
YW5nZSB0aGUgYXJndW1lbnQgdHlwZS4KKyAgICAgICAgKiBwbHVnaW5zL2VmbC9QbHVnaW5WaWV3
RWZsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBsdWdpblZpZXc6OnBsYXRmb3JtR2V0VmFsdWUp
OiBVc2UgUGFnZUNsaWVudEVmbC4KKwogMjAxMi0wMy0xNiAgUmFwaGFlbCBLdWJvIGRhIENvc3Rh
ICA8a3Vib0Bwcm9mdXNpb24ubW9iaT4KIAogICAgICAgICBbRUZMXSBVbnJldmlld2VkLCBmaXgg
YnVpbGQgYWZ0ZXIgcjExMTA0MS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L1dpZGdldC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vV2lkZ2V0LmgKaW5kZXggYWViMzNl
Yy4uMGQ3Y2ZkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vV2lkZ2V0LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vV2lkZ2V0LmgKQEAgLTkwLDYgKzkwLDExIEBA
IHR5cGVkZWYgUVdlYlBhZ2VDbGllbnQqIFBsYXRmb3JtUGFnZUNsaWVudDsKICNlbGlmIFBMQVRG
T1JNKEJMQUNLQkVSUlkpCiAjaW5jbHVkZSAiUGFnZUNsaWVudEJsYWNrQmVycnkuaCIKIHR5cGVk
ZWYgUGFnZUNsaWVudEJsYWNrQmVycnkqIFBsYXRmb3JtUGFnZUNsaWVudDsKKyNlbGlmIFBMQVRG
T1JNKEVGTCkKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNzIFBhZ2VDbGllbnRFZmw7Cit0eXBl
ZGVmIFBhZ2VDbGllbnRFZmwqIFBsYXRmb3JtUGFnZUNsaWVudDsKK30KICNlbHNlCiB0eXBlZGVm
IFBsYXRmb3JtV2lkZ2V0IFBsYXRmb3JtUGFnZUNsaWVudDsKICNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZWZsL0dyYXBoaWNzQ29udGV4dDNEUHJp
dmF0ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9lZmwvR3JhcGhpY3ND
b250ZXh0M0RQcml2YXRlLmNwcAppbmRleCAwODE1M2YwLi5lNTFkZGMxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9lZmwvR3JhcGhpY3NDb250ZXh0M0RQcml2
YXRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9lZmwvR3JhcGhp
Y3NDb250ZXh0M0RQcml2YXRlLmNwcApAQCAtMTM5LDcgKzEzOSw3IEBAIGJvb2wgR3JhcGhpY3ND
b250ZXh0M0RQcml2YXRlOjpjcmVhdGVTdXJmYWNlKFBhZ2VDbGllbnRFZmwqIHBhZ2VDbGllbnQs
IGJvb2wgcmVuCiAgICAgICAgIGV2YXNfZ2xfbmF0aXZlX3N1cmZhY2VfZ2V0KG1fZXZhc0dMLCBt
X3N1cmZhY2UsICZuYXRpdmVTdXJmYWNlKTsKIAogICAgICAgICAvLyBDcmVhdGUgYW5kIHNwZWNp
YWxseSBzZXQgdXAgYSBldmFzX29iamVjdCB3aGljaCBhY3QgYXMgdGhlIHJlbmRlciB0YXJnZXIg
c3VyZmFjZS4KLSAgICAgICAgaWYgKCFwYWdlQ2xpZW50LT5jcmVhdGVFdmFzT2JqZWN0Rm9yQWNj
ZWxlcmF0ZWRDb21wb3NpdGluZygmbmF0aXZlU3VyZmFjZSwgeCwgeSwgd2lkdGgsIGhlaWdodCkp
CisgICAgICAgIGlmICghcGFnZUNsaWVudC0+Y3JlYXRlRXZhc09iamVjdEZvckFjY2VsZXJhdGVk
Q29tcG9zaXRpbmcoJm5hdGl2ZVN1cmZhY2UsIEludFJlY3QoeCwgeSwgd2lkdGgsIGhlaWdodCkp
KQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGx1Z2lucy9lZmwvUGx1Z2luVmlld0VmbC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbHVnaW5zL2VmbC9QbHVnaW5WaWV3RWZsLmNwcAppbmRleCA1ODY4MDJjLi44NmVhMjAw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL2VmbC9QbHVnaW5WaWV3RWZsLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL2VmbC9QbHVnaW5WaWV3RWZsLmNwcApAQCAt
MzgsNiArMzgsNyBAQAogI2luY2x1ZGUgIkhvc3RXaW5kb3cuaCIKICNpbmNsdWRlICJNb3VzZUV2
ZW50LmgiCiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKKyNpbmNsdWRlICJQYWdlQ2xpZW50
RWZsLmgiCiAjaW5jbHVkZSAiUGx1Z2luUGFja2FnZS5oIgogI2luY2x1ZGUgIm5wcnVudGltZV9p
bXBsLmgiCiAjaW5jbHVkZSAicnVudGltZS9KU0xvY2suaCIKQEAgLTI4Miw3ICsyODMsOCBAQCBi
b29sIFBsdWdpblZpZXc6OnBsYXRmb3JtR2V0VmFsdWUoTlBOVmFyaWFibGUgdmFyaWFibGUsIHZv
aWQqIHZhbHVlLCBOUEVycm9yKiByZQogICAgIH0KIAogICAgIGNhc2UgTlBOVm5ldHNjYXBlV2lu
ZG93OiB7Ci0gICAgICAgIEV2YXNfT2JqZWN0KiB3aWRnZXQgPSBtX3BhcmVudEZyYW1lLT52aWV3
KCktPmhvc3RXaW5kb3coKS0+cGxhdGZvcm1QYWdlQ2xpZW50KCk7CisgICAgICAgIFBhZ2VDbGll
bnRFZmwqIHBhZ2VDbGllbnQgPSBzdGF0aWNfY2FzdDxQYWdlQ2xpZW50RWZsKj4obV9wYXJlbnRG
cmFtZS0+dmlldygpLT5ob3N0V2luZG93KCktPnBsYXRmb3JtUGFnZUNsaWVudCgpKTsKKyAgICAg
ICAgRXZhc19PYmplY3QqIHdpZGdldCA9IHBhZ2VDbGllbnQtPnZpZXcoKTsKICAgICAgICAgRXZh
cyogZXZhcyA9IGV2YXNfb2JqZWN0X2V2YXNfZ2V0KHdpZGdldCk7CiAgICAgICAgIEVjb3JlX0V2
YXMqIGVjb3JlRXZhcyA9IGVjb3JlX2V2YXNfZWNvcmVfZXZhc19nZXQoZXZhcyk7CiAgICAgICAg
ICpzdGF0aWNfY2FzdDxYSUQqPih2YWx1ZSkgPSBzdGF0aWNfY2FzdDxXaW5kb3c+KGVjb3JlX2V2
YXNfd2luZG93X2dldChlY29yZUV2YXMpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hh
bmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggYmMzYTU2Ny4uYzVlZGY5MyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMi0wMy0yMCAgSHlvd29uIEtpbSAgPGh3MTAw
OC5raW1Ac2Ftc3VuZy5jb20+CisKKyAgICAgICAgW0VGTF0gQWRkIFBhZ2VDbGllbnRFZmwgdG8g
V2ViQ29yZVN1cHBvcnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD04MDc0OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogUGxhdGZvcm1FZmwuY21ha2U6IEFkZCBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2VmbCB0byB0aGUgaW5jbHVkZSBwYXRoCisgICAgICAgIGFuZCBQYWdlQ2xpZW50RWZsLmNwcCB0
byB0aGUgc291cmNlIGxpc3QuCisKIDIwMTItMDMtMTYgIEtpaG9uZyBLd29uICA8a2lob25nLmt3
b25Ac2Ftc3VuZy5jb20+CiAKICAgICAgICAgU3VwcG9ydCBmb3IgQmF0dGVyeSBTdGF0dXMgQVBJ
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtRWZsLmNtYWtlIGIvU291cmNlL1dl
YktpdC9QbGF0Zm9ybUVmbC5jbWFrZQppbmRleCAxNTg0MTM1Li4xMDAxMGM5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtRWZsLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJLaXQvUGxh
dGZvcm1FZmwuY21ha2UKQEAgLTEzLDYgKzEzLDcgQEAgTElTVChBUFBFTkQgV2ViS2l0X0lOQ0xV
REVfRElSRUNUT1JJRVMKICAgICAiJHtKQVZBU0NSSVBUQ09SRV9ESVJ9L3d0Zi9nb2JqZWN0Igog
ICAgICIke1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9lZmwiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L3Bs
YXRmb3JtL2dyYXBoaWNzL2NhaXJvIgorICAgICIke1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9ncmFw
aGljcy9lZmwiCiAgICAgJHtDYWlyb19JTkNMVURFX0RJUlN9CiAgICAgJHtFQ09SRV9YX0lOQ0xV
REVfRElSU30KICAgICAke0VESkVfSU5DTFVERV9ESVJTfQpAQCAtODAsNiArODEsNyBAQCBMSVNU
KEFQUEVORCBXZWJLaXRfU09VUkNFUwogICAgIGVmbC9XZWJDb3JlU3VwcG9ydC9TdG9yYWdlVHJh
Y2tlckNsaWVudEVmbC5jcHAKICAgICBlZmwvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50
RWZsLmNwcAogICAgIGVmbC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGll
bnRFZmwuY3BwCisgICAgZWZsL1dlYkNvcmVTdXBwb3J0L1BhZ2VDbGllbnRFZmwuY3BwCiAKICAg
ICBlZmwvZXdrL2V3a19hdXRoLmNwcAogICAgIGVmbC9ld2svZXdrX2F1dGhfc291cC5jcHAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvZWZs
L0NoYW5nZUxvZwppbmRleCAxNDcxOGRiLi4wNTYzY2ZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L2VmbC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMzcgQEAKKzIwMTItMDMtMjAgIEh5b3dvbiBLaW0gIDxodzEwMDgua2ltQHNhbXN1bmcu
Y29tPgorCisgICAgICAgIFtFRkxdIEFkZCBQYWdlQ2xpZW50RWZsIHRvIFdlYkNvcmVTdXBwb3J0
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODA3NDgK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBh
dGNoIGFkZHMgUGFnZUNsaWVudEVmbCBmb3IgaW1wbGVtZW50YWlvbiBvZiBhY2NlbGVyYXRlZCBj
b21wb3NpdGluZy4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEVmbC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpDaHJvbWVDbGllbnRFZmw6OnBsYXRmb3JtUGFnZUNsaWVu
dCk6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVudEVmbC5jcHA6IEFkZGVkLgor
ICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpQYWdlQ2xpZW50RWZsOjpQYWdl
Q2xpZW50RWZsKToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VDbGllbnRFZmw6On5QYWdlQ2xpZW50
RWZsKToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VDbGllbnRFZmw6OmNyZWF0ZUV2YXNPYmplY3RG
b3JBY2NlbGVyYXRlZENvbXBvc2l0aW5nKToKKyAgICAgICAgSnVzdCBjYWxsIGV3a192aWV3X2Fj
Y2VsZXJhdGVkX2NvbXBvc2l0aW5nX29iamVjdF9jcmVhdGUoKS4KKyAgICAgICAgKFdlYkNvcmU6
OlBhZ2VDbGllbnRFZmw6OmFjY2VsZXJhdGVkQ29tcG9zaXRpbmdDb250ZXh0KToKKyAgICAgICAg
SnVzdCBjYWxsIGV3a192aWV3X2FjY2VsZXJhdGVkX2NvbXBvc2l0aW5nX2NvbnRleHRfZ2V0KCku
CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVudEVmbC5oOiBBZGRlZC4KKyAgICAg
ICAgKFdlYkNvcmUpOgorICAgICAgICAoUGFnZUNsaWVudEVmbCk6CisgICAgICAgIChXZWJDb3Jl
OjpQYWdlQ2xpZW50RWZsOjp2aWV3KTogUmV0dXJuIGV3a1ZpZXcuCisgICAgICAgICogZXdrL2V3
a19wcml2YXRlLmg6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKEVXS1ByaXZhdGUpOgor
ICAgICAgICAqIGV3ay9ld2tfdmlldy5jcHA6CisgICAgICAgIChfRXdrX1ZpZXdfUHJpdmF0ZV9E
YXRhKTogQWRkIE93blB0cjxQYWdlQ2xpZW50RWZsPi4KKyAgICAgICAgKF9ld2tfdmlld19wcml2
X25ldyk6IENyZWF0ZSBhIG5ldyBQYWdlQ2xpZW50RWZsLgorICAgICAgICAoZXdrX3ZpZXdfYWNj
ZWxlcmF0ZWRfY29tcG9zaXRpbmdfb2JqZWN0X2NyZWF0ZSk6IE5vdCBpbXBsZW1lbnRlZC4KKyAg
ICAgICAgKGV3a192aWV3X2FjY2VsZXJhdGVkX2NvbXBvc2l0aW5nX2NvbnRleHRfZ2V0KTogTm90
IGltcGxlbWVudGVkLgorICAgICAgICAoRVdLUHJpdmF0ZTo6Y29yZVBhZ2VDbGllbnQpOiBSZXR1
cm4gdGhlIFBhZ2VDbGllbnRFZmwgcG9pbnRlci4KKyAgICAgICAgKEVXS1ByaXZhdGUpOgorCiAy
MDEyLTAzLTE2ICBLaWhvbmcgS3dvbiAgPGtpaG9uZy5rd29uQHNhbXN1bmcuY29tPgogCiAgICAg
ICAgIFN1cHBvcnQgZm9yIEJhdHRlcnkgU3RhdHVzIEFQSQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50RWZsLmNwcCBiL1NvdXJjZS9XZWJL
aXQvZWZsL1dlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEVmbC5jcHAKaW5kZXggZGQ3OWI5My4u
NjhhZGY1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvQ2hy
b21lQ2xpZW50RWZsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9D
aHJvbWVDbGllbnRFZmwuY3BwCkBAIC0zMzksNyArMzM5LDcgQEAgSW50UG9pbnQgQ2hyb21lQ2xp
ZW50RWZsOjpzY3JlZW5Ub1Jvb3RWaWV3KGNvbnN0IEludFBvaW50JiBwb2ludCkgY29uc3QKIAog
UGxhdGZvcm1QYWdlQ2xpZW50IENocm9tZUNsaWVudEVmbDo6cGxhdGZvcm1QYWdlQ2xpZW50KCkg
Y29uc3QKIHsKLSAgICByZXR1cm4gbV92aWV3OworICAgIHJldHVybiBFV0tQcml2YXRlOjpjb3Jl
UGFnZUNsaWVudChtX3ZpZXcpOwogfQogCiB2b2lkIENocm9tZUNsaWVudEVmbDo6c2Nyb2xsYmFy
c01vZGVEaWRDaGFuZ2UoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvV2Vi
Q29yZVN1cHBvcnQvUGFnZUNsaWVudEVmbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3Jl
U3VwcG9ydC9QYWdlQ2xpZW50RWZsLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi41ZTY1ZWRlCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29y
ZVN1cHBvcnQvUGFnZUNsaWVudEVmbC5jcHAKQEAgLTAsMCArMSw0OSBAQAorLyoKKyAgICBDb3B5
cmlnaHQgKEMpIDIwMTIgU2Ftc3VuZyBFbGVjdHJvbmljcworCisgICAgVGhpcyBsaWJyYXJ5IGlz
IGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICAgIG1vZGlm
eSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCisg
ICAgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsg
ZWl0aGVyCisgICAgdmVyc2lvbiAyLjEgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlv
bikgYW55IGxhdGVyIHZlcnNpb24uCisKKyAgICBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQg
aW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAgICBidXQgV0lUSE9VVCBBTlkg
V0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICAgIE1FUkNI
QU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUg
R05VCisgICAgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMu
CisKKyAgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFy
eSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgICAgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNl
ZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwgd3JpdGUgdG8KKyAgICB0aGUgRnJlZSBT
b2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29y
LAorICAgIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorKi8KKworI2luY2x1ZGUgImNvbmZp
Zy5oIgorI2luY2x1ZGUgIlBhZ2VDbGllbnRFZmwuaCIKKworI2luY2x1ZGUgImV3a19wcml2YXRl
LmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworUGFnZUNsaWVudEVmbDo6UGFnZUNsaWVudEVm
bChFdmFzX09iamVjdCogdmlldykKKyAgICA6IG1fdmlldyh2aWV3KQoreworICAgIEFTU0VSVCht
X3ZpZXcpOworfQorCitQYWdlQ2xpZW50RWZsOjp+UGFnZUNsaWVudEVmbCgpCit7Cit9CisKKyNp
ZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCitib29sIFBhZ2VDbGllbnRFZmw6OmNyZWF0
ZUV2YXNPYmplY3RGb3JBY2NlbGVyYXRlZENvbXBvc2l0aW5nKEV2YXNfTmF0aXZlX1N1cmZhY2Uq
IG5hdGl2ZVN1cmZhY2UsIGNvbnN0IEludFJlY3QmIHJlY3QpCit7CisgICAgcmV0dXJuIGV3a192
aWV3X2FjY2VsZXJhdGVkX2NvbXBvc2l0aW5nX29iamVjdF9jcmVhdGUobV92aWV3LCBuYXRpdmVT
dXJmYWNlLCByZWN0KTsKK30KKworR3JhcGhpY3NDb250ZXh0M0QqIFBhZ2VDbGllbnRFZmw6OmFj
Y2VsZXJhdGVkQ29tcG9zaXRpbmdDb250ZXh0KCkKK3sKKyAgICByZXR1cm4gZXdrX3ZpZXdfYWNj
ZWxlcmF0ZWRfY29tcG9zaXRpbmdfY29udGV4dF9nZXQobV92aWV3KTsKK30KKyNlbmRpZgorCit9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9QYWdlQ2xpZW50
RWZsLmggYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9QYWdlQ2xpZW50RWZsLmgK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTM0OTE0OQotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L1BhZ2VDbGllbnRFZmwuaApA
QCAtMCwwICsxLDUwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIFNhbXN1bmcgRWxlY3Ry
b25pY3MKKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRp
c3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH
TlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhl
IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIuMSBvZiB0aGUg
TGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBU
aGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVz
ZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBs
aWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBM
aWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVk
IGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxv
bmcgd2l0aCB0aGlzIGxpYnJhcnk7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLkxJQi4gIElmIG5vdCwg
d3JpdGUgdG8KKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5r
bGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgKiBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4K
KyAqLworCisjaWZuZGVmIFBhZ2VDbGllbnRFZmxfaAorI2RlZmluZSBQYWdlQ2xpZW50RWZsX2gK
KworI2luY2x1ZGUgIkludFJlY3QuaCIKKwordHlwZWRlZiBzdHJ1Y3QgX0V2YXNfT2JqZWN0IEV2
YXNfT2JqZWN0OwordHlwZWRlZiBzdHJ1Y3QgX0V2YXNfTmF0aXZlX1N1cmZhY2UgRXZhc19OYXRp
dmVfU3VyZmFjZTsKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBHcmFwaGljc0NvbnRl
eHQzRDsKKworY2xhc3MgUGFnZUNsaWVudEVmbCB7CitwdWJsaWM6CisgICAgUGFnZUNsaWVudEVm
bChFdmFzX09iamVjdCogdmlldyk7CisgICAgdmlydHVhbCB+UGFnZUNsaWVudEVmbCgpOworCisj
aWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQorICAgIGJvb2wgY3JlYXRlRXZhc09iamVj
dEZvckFjY2VsZXJhdGVkQ29tcG9zaXRpbmcoRXZhc19OYXRpdmVfU3VyZmFjZSosIGNvbnN0IElu
dFJlY3QmKTsKKyAgICBHcmFwaGljc0NvbnRleHQzRCogYWNjZWxlcmF0ZWRDb21wb3NpdGluZ0Nv
bnRleHQoKTsKKyNlbmRpZgorCisgICAgRXZhc19PYmplY3QqIHZpZXcoKSB7IHJldHVybiBtX3Zp
ZXc7IH0KKworcHJvdGVjdGVkOgorICAgIEV2YXNfT2JqZWN0KiBtX3ZpZXc7Cit9OworCit9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBQYWdlQ2xpZW50RWZsX2gKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfcHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdC9l
ZmwvZXdrL2V3a19wcml2YXRlLmgKaW5kZXggYjRhOGRkOS4uOTZlNDc5NSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9lZmwvZXdrL2V3a19wcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdC9l
ZmwvZXdrL2V3a19wcml2YXRlLmgKQEAgLTM2LDYgKzM2LDkgQEAKICNpbmNsdWRlICJld2tfanMu
aCIKICNpbmNsdWRlICJld2tfdmlldy5oIgogI2luY2x1ZGUgPEV2YXMuaD4KKyNpZiBVU0UoQUND
RUxFUkFURURfQ09NUE9TSVRJTkcpCisjaW5jbHVkZSA8RXZhc19HTC5oPgorI2VuZGlmCiAjaW5j
bHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAKQEAgLTc0
LDYgKzc3LDEwIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIHN0cnVjdCBQb3B1cE1lbnVDbGllbnQ7
CiBzdHJ1Y3QgQ29udGV4dE1lbnU7CiBzdHJ1Y3QgQ29udGV4dE1lbnVJdGVtOworI2lmIFVTRShB
Q0NFTEVSQVRFRF9DT01QT1NJVElORykKK2NsYXNzIEdyYXBoaWNzQ29udGV4dDNEOworY2xhc3Mg
R3JhcGhpY3NMYXllcjsKKyNlbmRpZgogfQogCiBzdHJ1Y3QgRXdrX1dpbmRvd19PYmplY3RfQ2xl
YXJlZF9FdmVudCB7CkBAIC04Nyw2ICs5NCw3IEBAIG5hbWVzcGFjZSBFV0tQcml2YXRlIHsKIFdl
YkNvcmU6OkZyYW1lICpjb3JlRnJhbWUoY29uc3QgRXZhc19PYmplY3QgKmV3a0ZyYW1lKTsKIFdl
YkNvcmU6OlBhZ2UgKmNvcmVQYWdlKGNvbnN0IEV2YXNfT2JqZWN0ICpld2tWaWV3KTsKIFdlYkNv
cmU6Okhpc3RvcnlJdGVtICpjb3JlSGlzdG9yeUl0ZW0oY29uc3QgRXdrX0hpc3RvcnlfSXRlbSAq
ZXdrSGlzdG9yeUl0ZW0pOworV2ViQ29yZTo6UGxhdGZvcm1QYWdlQ2xpZW50IGNvcmVQYWdlQ2xp
ZW50KEV2YXNfT2JqZWN0KiBld2tWaWV3KTsKIAogRXZhc19PYmplY3QqIGtpdEZyYW1lKGNvbnN0
IFdlYkNvcmU6OkZyYW1lKiBjb3JlRnJhbWUpOwogCkBAIC0yMzQsNCArMjQyLDkgQEAgdm9pZCBl
d2tfZnJhbWVfbWl4ZWRfY29udGVudF9ydW5fc2V0KEV2YXNfT2JqZWN0KiBld2tGcmFtZSwgYm9v
bCBoYXNSdW4pOwogdm9pZCBld2tfdmlld19taXhlZF9jb250ZW50X2Rpc3BsYXllZF9zZXQoRXZh
c19PYmplY3QqIGV3a1ZpZXcsIGJvb2wgaGFzRGlzcGxheWVkKTsKIHZvaWQgZXdrX3ZpZXdfbWl4
ZWRfY29udGVudF9ydW5fc2V0KEV2YXNfT2JqZWN0KiBld2tWaWV3LCBib29sIGhhc1J1bik7CiAK
KyNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCitib29sIGV3a192aWV3X2FjY2VsZXJh
dGVkX2NvbXBvc2l0aW5nX29iamVjdF9jcmVhdGUoRXZhc19PYmplY3QqIGV3a1ZpZXcsIEV2YXNf
TmF0aXZlX1N1cmZhY2UqIG5hdGl2ZVN1cmZhY2UsIGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIHJl
Y3QpOworV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0M0QqIGV3a192aWV3X2FjY2VsZXJhdGVkX2Nv
bXBvc2l0aW5nX2NvbnRleHRfZ2V0KEV2YXNfT2JqZWN0KiBld2tWaWV3KTsKKyNlbmRpZgorCiAj
ZW5kaWYgLy8gZXdrX3ByaXZhdGVfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvZXdr
L2V3a192aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAKaW5kZXgg
N2E1MmNhZi4uY2UwYmQ4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192
aWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXcuY3BwCkBAIC00NSw2
ICs0NSw3IEBACiAjaW5jbHVkZSAiSlNET01XaW5kb3cuaCIKICNpbmNsdWRlICJKU0xvY2suaCIK
ICNpbmNsdWRlICJMYXlvdXRUeXBlcy5oIgorI2luY2x1ZGUgIlBhZ2VDbGllbnRFZmwuaCIKICNp
bmNsdWRlICJQbGF0Zm9ybU1vdXNlRXZlbnQuaCIKICNpbmNsdWRlICJQb3B1cE1lbnVDbGllbnQu
aCIKICNpbmNsdWRlICJQcm9ncmVzc1RyYWNrZXIuaCIKQEAgLTc4LDYgKzc5LDEwIEBACiAjaW5j
bHVkZSAiQmF0dGVyeUNsaWVudEVmbC5oIgogI2VuZGlmCiAKKyNpZiBVU0UoQUNDRUxFUkFURURf
Q09NUE9TSVRJTkcpCisjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKKyNlbmRpZgorCiBzdGF0
aWMgY29uc3QgZmxvYXQgem9vbU1pbmltdW0gPSAwLjA1Owogc3RhdGljIGNvbnN0IGZsb2F0IHpv
b21NYXhpbXVtID0gNC4wOwogCkBAIC0xNDIsNiArMTQ3LDcgQEAgc3RydWN0IF9Fd2tfVmlld19Q
cml2YXRlX0RhdGEgewogICAgIFdlYkNvcmU6OkZyYW1lKiBtYWluRnJhbWU7CiAgICAgV2ViQ29y
ZTo6Vmlld3BvcnRBcmd1bWVudHMgdmlld3BvcnRBcmd1bWVudHM7CiAgICAgRXdrX0hpc3Rvcnkq
IGhpc3Rvcnk7CisgICAgT3duUHRyPFdlYkNvcmU6OlBhZ2VDbGllbnRFZmw+IHBhZ2VDbGllbnQ7
CiAgICAgc3RydWN0IHsKICAgICAgICAgRXdrX01lbnUgbWVudTsKICAgICAgICAgV2ViQ29yZTo6
UG9wdXBNZW51Q2xpZW50KiBtZW51Q2xpZW50OwpAQCAtNzE2LDYgKzcyMiw4IEBAIHN0YXRpYyBF
d2tfVmlld19Qcml2YXRlX0RhdGEqIF9ld2tfdmlld19wcml2X25ldyhFd2tfVmlld19TbWFydF9E
YXRhKiBzbWFydERhdGEpCiAKICAgICBwcml2LT5zb3VwU2Vzc2lvbiA9IFdlYkNvcmU6OlJlc291
cmNlSGFuZGxlOjpkZWZhdWx0U2Vzc2lvbigpOwogCisgICAgcHJpdi0+cGFnZUNsaWVudCA9IGFk
b3B0UHRyKG5ldyBXZWJDb3JlOjpQYWdlQ2xpZW50RWZsKHNtYXJ0RGF0YS0+c2VsZikpOworCiAg
ICAgcmV0dXJuIHByaXY7CiB9CiAKQEAgLTM5MjQsNiArMzkzMiwyMCBAQCB2b2lkIGV3a192aWV3
X3NvdXBfc2Vzc2lvbl9zZXQoRXZhc19PYmplY3QqIGV3a1ZpZXcsIFNvdXBTZXNzaW9uKiBzZXNz
aW9uKQogICAgIHByaXYtPnNvdXBTZXNzaW9uID0gc2Vzc2lvbjsKIH0KIAorI2lmIFVTRShBQ0NF
TEVSQVRFRF9DT01QT1NJVElORykKK2Jvb2wgZXdrX3ZpZXdfYWNjZWxlcmF0ZWRfY29tcG9zaXRp
bmdfb2JqZWN0X2NyZWF0ZShFdmFzX09iamVjdCogZXdrVmlldywgRXZhc19OYXRpdmVfU3VyZmFj
ZSogbmF0aXZlU3VyZmFjZSwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgcmVjdCkKK3sKKyAgICBu
b3RJbXBsZW1lbnRlZCgpOworICAgIHJldHVybiBmYWxzZTsKK30KKworV2ViQ29yZTo6R3JhcGhp
Y3NDb250ZXh0M0QqIGV3a192aWV3X2FjY2VsZXJhdGVkX2NvbXBvc2l0aW5nX2NvbnRleHRfZ2V0
KEV2YXNfT2JqZWN0KiBld2tWaWV3KQoreworICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgcmV0
dXJuIDA7Cit9CisjZW5kaWYKKwogbmFtZXNwYWNlIEVXS1ByaXZhdGUgewogCiBXZWJDb3JlOjpQ
YWdlICpjb3JlUGFnZShjb25zdCBFdmFzX09iamVjdCAqZXdrVmlldykKQEAgLTM5MzMsNCArMzk1
NSwxMSBAQCBXZWJDb3JlOjpQYWdlICpjb3JlUGFnZShjb25zdCBFdmFzX09iamVjdCAqZXdrVmll
dykKICAgICByZXR1cm4gcHJpdi0+cGFnZS5nZXQoKTsKIH0KIAorV2ViQ29yZTo6UGxhdGZvcm1Q
YWdlQ2xpZW50IGNvcmVQYWdlQ2xpZW50KEV2YXNfT2JqZWN0KiBld2tWaWV3KQoreworICAgIEVX
S19WSUVXX1NEX0dFVF9PUl9SRVRVUk4oZXdrVmlldywgc21hcnREYXRhLCAwKTsKKyAgICBFV0tf
VklFV19QUklWX0dFVF9PUl9SRVRVUk4oc21hcnREYXRhLCBwcml2LCAwKTsKKyAgICByZXR1cm4g
cHJpdi0+cGFnZUNsaWVudC5nZXQoKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgRVdLUHJpdmF0ZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>132990</attachid>
            <date>2012-03-21 01:40:51 -0700</date>
            <delta_ts>2012-03-22 04:12:31 -0700</delta_ts>
            <desc>reupload</desc>
            <filename>bugzilla_20120321_reupload.patch</filename>
            <type>text/plain</type>
            <size>15303</size>
            <attacher name="Hyowon Kim">hw1008.kim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nIGIvU291cmNlL1dURi9DaGFuZ2VMb2cK
aW5kZXggNWNhMTY5NS4uZmU3YjMxMiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAxMi0wMy0yMSAg
SHlvd29uIEtpbSAgPGh3MTAwOC5raW1Ac2Ftc3VuZy5jb20+CisKKyAgICAgICAgW0VGTF0gQWRk
IFBhZ2VDbGllbnRFZmwgdG8gV2ViQ29yZVN1cHBvcnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MDc0OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogd3RmL1BsYXRmb3JtLmg6IERpc2FibGUgYWNjZWxl
cmF0ZWQgY29tcG9zaXRpbmcuIEl0J3Mgbm90IHJlYWR5IHlldC4KKwogMjAxMi0wMy0yMCAgRXJp
YyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+CiAKICAgICAgICAgTW92ZSB3dGYvUGxhdGZvcm0u
aCBmcm9tIEphdmFTY3JpcHRDb3JlIHRvIFNvdXJjZS9XVEYvd3RmCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV1RGL3d0Zi9QbGF0Zm9ybS5oIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm0uaAppbmRleCA2
YjllMDIzLi4zOTY3ZDYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCisr
KyBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtLmgKQEAgLTEwNjIsNyArMTA2Miw3IEBACiAjZW5k
aWYKIAogLyogQWNjZWxlcmF0ZWQgY29tcG9zaXRpbmcgKi8KLSNpZiBQTEFURk9STShNQUMpIHx8
IFBMQVRGT1JNKElPUykgfHwgUExBVEZPUk0oUVQpIHx8IChQTEFURk9STShXSU4pICYmICFPUyhX
SU5DRSkgJiYgIVBMQVRGT1JNKFdJTl9DQUlSTykpIHx8IFBMQVRGT1JNKEVGTCkKKyNpZiBQTEFU
Rk9STShNQUMpIHx8IFBMQVRGT1JNKElPUykgfHwgUExBVEZPUk0oUVQpIHx8IChQTEFURk9STShX
SU4pICYmICFPUyhXSU5DRSkgJiYgIVBMQVRGT1JNKFdJTl9DQUlSTykpCiAjZGVmaW5lIFdURl9V
U0VfQUNDRUxFUkFURURfQ09NUE9TSVRJTkcgMQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBmYjA4
MWE1Li45Y2E4ZWQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTItMDMtMjEgIEh5
b3dvbiBLaW0gIDxodzEwMDgua2ltQHNhbXN1bmcuY29tPgorCisgICAgICAgIFtFRkxdIEFkZCBQ
YWdlQ2xpZW50RWZsIHRvIFdlYkNvcmVTdXBwb3J0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODA3NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL1dpZGdldC5oOiBVc2UgUGFnZUNsaWVu
dEVmbCBhcyB0eXBlIGZvciBQbGF0Zm9ybVBhZ2VDbGllbnQuCisgICAgICAgIChXZWJDb3JlKToK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9lZmwvR3JhcGhpY3NDb250ZXh0M0RQcml2YXRl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZTo6Y3JlYXRl
U3VyZmFjZSk6IENoYW5nZSB0aGUgYXJndW1lbnQgdHlwZS4KKyAgICAgICAgKiBwbHVnaW5zL2Vm
bC9QbHVnaW5WaWV3RWZsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBsdWdpblZpZXc6OnBsYXRm
b3JtR2V0VmFsdWUpOiBVc2UgUGFnZUNsaWVudEVmbC4KKwogMjAxMi0wMy0yMCAgRXJpYyBTZWlk
ZWwgIDxlcmljQHdlYmtpdC5vcmc+CiAKICAgICAgICAgTW92ZSB3dGYvUGxhdGZvcm0uaCBmcm9t
IEphdmFTY3JpcHRDb3JlIHRvIFNvdXJjZS9XVEYvd3RmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9XaWRnZXQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1dpZGdldC5o
CmluZGV4IGFlYjMzZWMuLjBkN2NmZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1dpZGdldC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1dpZGdldC5oCkBAIC05
MCw2ICs5MCwxMSBAQCB0eXBlZGVmIFFXZWJQYWdlQ2xpZW50KiBQbGF0Zm9ybVBhZ2VDbGllbnQ7
CiAjZWxpZiBQTEFURk9STShCTEFDS0JFUlJZKQogI2luY2x1ZGUgIlBhZ2VDbGllbnRCbGFja0Jl
cnJ5LmgiCiB0eXBlZGVmIFBhZ2VDbGllbnRCbGFja0JlcnJ5KiBQbGF0Zm9ybVBhZ2VDbGllbnQ7
CisjZWxpZiBQTEFURk9STShFRkwpCituYW1lc3BhY2UgV2ViQ29yZSB7CitjbGFzcyBQYWdlQ2xp
ZW50RWZsOwordHlwZWRlZiBQYWdlQ2xpZW50RWZsKiBQbGF0Zm9ybVBhZ2VDbGllbnQ7Cit9CiAj
ZWxzZQogdHlwZWRlZiBQbGF0Zm9ybVdpZGdldCBQbGF0Zm9ybVBhZ2VDbGllbnQ7CiAjZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2VmbC9HcmFwaGlj
c0NvbnRleHQzRFByaXZhdGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
ZWZsL0dyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZS5jcHAKaW5kZXggMDgxNTNmMC4uZTUxZGRjMSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZWZsL0dyYXBoaWNz
Q29udGV4dDNEUHJpdmF0ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZWZsL0dyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZS5jcHAKQEAgLTEzOSw3ICsxMzksNyBAQCBi
b29sIEdyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZTo6Y3JlYXRlU3VyZmFjZShQYWdlQ2xpZW50RWZs
KiBwYWdlQ2xpZW50LCBib29sIHJlbgogICAgICAgICBldmFzX2dsX25hdGl2ZV9zdXJmYWNlX2dl
dChtX2V2YXNHTCwgbV9zdXJmYWNlLCAmbmF0aXZlU3VyZmFjZSk7CiAKICAgICAgICAgLy8gQ3Jl
YXRlIGFuZCBzcGVjaWFsbHkgc2V0IHVwIGEgZXZhc19vYmplY3Qgd2hpY2ggYWN0IGFzIHRoZSBy
ZW5kZXIgdGFyZ2VyIHN1cmZhY2UuCi0gICAgICAgIGlmICghcGFnZUNsaWVudC0+Y3JlYXRlRXZh
c09iamVjdEZvckFjY2VsZXJhdGVkQ29tcG9zaXRpbmcoJm5hdGl2ZVN1cmZhY2UsIHgsIHksIHdp
ZHRoLCBoZWlnaHQpKQorICAgICAgICBpZiAoIXBhZ2VDbGllbnQtPmNyZWF0ZUV2YXNPYmplY3RG
b3JBY2NlbGVyYXRlZENvbXBvc2l0aW5nKCZuYXRpdmVTdXJmYWNlLCBJbnRSZWN0KHgsIHksIHdp
ZHRoLCBoZWlnaHQpKSkKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAjZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvZWZsL1BsdWdpblZpZXdFZmwuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9lZmwvUGx1Z2luVmlld0VmbC5jcHAKaW5kZXggNTg2
ODAyYy4uODZlYTIwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9lZmwvUGx1
Z2luVmlld0VmbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9lZmwvUGx1Z2luVmll
d0VmbC5jcHAKQEAgLTM4LDYgKzM4LDcgQEAKICNpbmNsdWRlICJIb3N0V2luZG93LmgiCiAjaW5j
bHVkZSAiTW91c2VFdmVudC5oIgogI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCisjaW5jbHVk
ZSAiUGFnZUNsaWVudEVmbC5oIgogI2luY2x1ZGUgIlBsdWdpblBhY2thZ2UuaCIKICNpbmNsdWRl
ICJucHJ1bnRpbWVfaW1wbC5oIgogI2luY2x1ZGUgInJ1bnRpbWUvSlNMb2NrLmgiCkBAIC0yODIs
NyArMjgzLDggQEAgYm9vbCBQbHVnaW5WaWV3OjpwbGF0Zm9ybUdldFZhbHVlKE5QTlZhcmlhYmxl
IHZhcmlhYmxlLCB2b2lkKiB2YWx1ZSwgTlBFcnJvciogcmUKICAgICB9CiAKICAgICBjYXNlIE5Q
TlZuZXRzY2FwZVdpbmRvdzogewotICAgICAgICBFdmFzX09iamVjdCogd2lkZ2V0ID0gbV9wYXJl
bnRGcmFtZS0+dmlldygpLT5ob3N0V2luZG93KCktPnBsYXRmb3JtUGFnZUNsaWVudCgpOworICAg
ICAgICBQYWdlQ2xpZW50RWZsKiBwYWdlQ2xpZW50ID0gc3RhdGljX2Nhc3Q8UGFnZUNsaWVudEVm
bCo+KG1fcGFyZW50RnJhbWUtPnZpZXcoKS0+aG9zdFdpbmRvdygpLT5wbGF0Zm9ybVBhZ2VDbGll
bnQoKSk7CisgICAgICAgIEV2YXNfT2JqZWN0KiB3aWRnZXQgPSBwYWdlQ2xpZW50LT52aWV3KCk7
CiAgICAgICAgIEV2YXMqIGV2YXMgPSBldmFzX29iamVjdF9ldmFzX2dldCh3aWRnZXQpOwogICAg
ICAgICBFY29yZV9FdmFzKiBlY29yZUV2YXMgPSBlY29yZV9ldmFzX2Vjb3JlX2V2YXNfZ2V0KGV2
YXMpOwogICAgICAgICAqc3RhdGljX2Nhc3Q8WElEKj4odmFsdWUpID0gc3RhdGljX2Nhc3Q8V2lu
ZG93PihlY29yZV9ldmFzX3dpbmRvd19nZXQoZWNvcmVFdmFzKSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDg1Yjg1
ZTcuLjMyODlhMzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTItMDMtMjEgIEh5b3dv
biBLaW0gIDxodzEwMDgua2ltQHNhbXN1bmcuY29tPgorCisgICAgICAgIFtFRkxdIEFkZCBQYWdl
Q2xpZW50RWZsIHRvIFdlYkNvcmVTdXBwb3J0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODA3NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIFBsYXRmb3JtRWZsLmNtYWtlOiBBZGQgV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9lZmwgdG8gdGhlIGluY2x1ZGUgcGF0aAorICAgICAgICBhbmQgUGFnZUNs
aWVudEVmbC5jcHAgdG8gdGhlIHNvdXJjZSBsaXN0LgorCiAyMDEyLTAzLTIwICBFcmljIFNlaWRl
bCAgPGVyaWNAd2Via2l0Lm9yZz4KIAogICAgICAgICBNb3ZlIHd0Zi9QbGF0Zm9ybS5oIGZyb20g
SmF2YVNjcmlwdENvcmUgdG8gU291cmNlL1dURi93dGYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvUGxhdGZvcm1FZmwuY21ha2UgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtRWZsLmNtYWtlCmlu
ZGV4IDE1ODQxMzUuLjEwMDEwYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm1F
ZmwuY21ha2UKKysrIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybUVmbC5jbWFrZQpAQCAtMTMsNiAr
MTMsNyBAQCBMSVNUKEFQUEVORCBXZWJLaXRfSU5DTFVERV9ESVJFQ1RPUklFUwogICAgICIke0pB
VkFTQ1JJUFRDT1JFX0RJUn0vd3RmL2dvYmplY3QiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L3BsYXRm
b3JtL2VmbCIKICAgICAiJHtXRUJDT1JFX0RJUn0vcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8iCisg
ICAgIiR7V0VCQ09SRV9ESVJ9L3BsYXRmb3JtL2dyYXBoaWNzL2VmbCIKICAgICAke0NhaXJvX0lO
Q0xVREVfRElSU30KICAgICAke0VDT1JFX1hfSU5DTFVERV9ESVJTfQogICAgICR7RURKRV9JTkNM
VURFX0RJUlN9CkBAIC04MCw2ICs4MSw3IEBAIExJU1QoQVBQRU5EIFdlYktpdF9TT1VSQ0VTCiAg
ICAgZWZsL1dlYkNvcmVTdXBwb3J0L1N0b3JhZ2VUcmFja2VyQ2xpZW50RWZsLmNwcAogICAgIGVm
bC9XZWJDb3JlU3VwcG9ydC9JbnNwZWN0b3JDbGllbnRFZmwuY3BwCiAgICAgZWZsL1dlYkNvcmVT
dXBwb3J0L05vdGlmaWNhdGlvblByZXNlbnRlckNsaWVudEVmbC5jcHAKKyAgICBlZmwvV2ViQ29y
ZVN1cHBvcnQvUGFnZUNsaWVudEVmbC5jcHAKIAogICAgIGVmbC9ld2svZXdrX2F1dGguY3BwCiAg
ICAgZWZsL2V3ay9ld2tfYXV0aF9zb3VwLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9l
ZmwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCmluZGV4IDU0MDM3MDku
LjcxNTQxNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNyBAQAorMjAxMi0wMy0yMSAg
SHlvd29uIEtpbSAgPGh3MTAwOC5raW1Ac2Ftc3VuZy5jb20+CisKKyAgICAgICAgW0VGTF0gQWRk
IFBhZ2VDbGllbnRFZmwgdG8gV2ViQ29yZVN1cHBvcnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MDc0OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBQYWdlQ2xpZW50RWZsIGZv
ciBpbXBsZW1lbnRhaW9uIG9mIGFjY2VsZXJhdGVkIGNvbXBvc2l0aW5nLgorCisgICAgICAgICog
V2ViQ29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50RWZsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNo
cm9tZUNsaWVudEVmbDo6cGxhdGZvcm1QYWdlQ2xpZW50KToKKyAgICAgICAgKiBXZWJDb3JlU3Vw
cG9ydC9QYWdlQ2xpZW50RWZsLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlKToKKyAgICAg
ICAgKFdlYkNvcmU6OlBhZ2VDbGllbnRFZmw6OlBhZ2VDbGllbnRFZmwpOgorICAgICAgICAoV2Vi
Q29yZTo6UGFnZUNsaWVudEVmbDo6flBhZ2VDbGllbnRFZmwpOgorICAgICAgICAoV2ViQ29yZTo6
UGFnZUNsaWVudEVmbDo6Y3JlYXRlRXZhc09iamVjdEZvckFjY2VsZXJhdGVkQ29tcG9zaXRpbmcp
OgorICAgICAgICBKdXN0IGNhbGwgZXdrX3ZpZXdfYWNjZWxlcmF0ZWRfY29tcG9zaXRpbmdfb2Jq
ZWN0X2NyZWF0ZSgpLgorICAgICAgICAoV2ViQ29yZTo6UGFnZUNsaWVudEVmbDo6YWNjZWxlcmF0
ZWRDb21wb3NpdGluZ0NvbnRleHQpOgorICAgICAgICBKdXN0IGNhbGwgZXdrX3ZpZXdfYWNjZWxl
cmF0ZWRfY29tcG9zaXRpbmdfY29udGV4dF9nZXQoKS4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9y
dC9QYWdlQ2xpZW50RWZsLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChQ
YWdlQ2xpZW50RWZsKToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VDbGllbnRFZmw6OnZpZXcpOiBS
ZXR1cm4gZXdrVmlldy4KKyAgICAgICAgKiBld2svZXdrX3ByaXZhdGUuaDoKKyAgICAgICAgKFdl
YkNvcmUpOgorICAgICAgICAoRVdLUHJpdmF0ZSk6CisgICAgICAgICogZXdrL2V3a192aWV3LmNw
cDoKKyAgICAgICAgKF9Fd2tfVmlld19Qcml2YXRlX0RhdGEpOiBBZGQgT3duUHRyPFBhZ2VDbGll
bnRFZmw+LgorICAgICAgICAoX2V3a192aWV3X3ByaXZfbmV3KTogQ3JlYXRlIGEgbmV3IFBhZ2VD
bGllbnRFZmwuCisgICAgICAgIChld2tfdmlld19hY2NlbGVyYXRlZF9jb21wb3NpdGluZ19vYmpl
Y3RfY3JlYXRlKTogTm90IGltcGxlbWVudGVkLgorICAgICAgICAoZXdrX3ZpZXdfYWNjZWxlcmF0
ZWRfY29tcG9zaXRpbmdfY29udGV4dF9nZXQpOiBOb3QgaW1wbGVtZW50ZWQuCisgICAgICAgIChF
V0tQcml2YXRlOjpjb3JlUGFnZUNsaWVudCk6IFJldHVybiB0aGUgUGFnZUNsaWVudEVmbCBwb2lu
dGVyLgorICAgICAgICAoRVdLUHJpdmF0ZSk6CisKIDIwMTItMDMtMTkgIEFkYW0gQmFydGggIDxh
YmFydGhAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZW1vdmUgc3VwcG9ydCBmb3IgIm1hZ2ljIiBp
ZnJhbWUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0Nocm9t
ZUNsaWVudEVmbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9DaHJvbWVD
bGllbnRFZmwuY3BwCmluZGV4IGRkNzliOTMuLjY4YWRmNWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEVmbC5jcHAKKysrIGIvU291cmNl
L1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50RWZsLmNwcApAQCAtMzM5LDcg
KzMzOSw3IEBAIEludFBvaW50IENocm9tZUNsaWVudEVmbDo6c2NyZWVuVG9Sb290Vmlldyhjb25z
dCBJbnRQb2ludCYgcG9pbnQpIGNvbnN0CiAKIFBsYXRmb3JtUGFnZUNsaWVudCBDaHJvbWVDbGll
bnRFZmw6OnBsYXRmb3JtUGFnZUNsaWVudCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fdmlldzsK
KyAgICByZXR1cm4gRVdLUHJpdmF0ZTo6Y29yZVBhZ2VDbGllbnQobV92aWV3KTsKIH0KIAogdm9p
ZCBDaHJvbWVDbGllbnRFZmw6OnNjcm9sbGJhcnNNb2RlRGlkQ2hhbmdlKCkgY29uc3QKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L1BhZ2VDbGllbnRFZmwuY3Bw
IGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVudEVmbC5jcHAKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWU2NWVkZQotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L1BhZ2VDbGllbnRFZmwuY3BwCkBA
IC0wLDAgKzEsNDkgQEAKKy8qCisgICAgQ29weXJpZ2h0IChDKSAyMDEyIFNhbXN1bmcgRWxlY3Ry
b25pY3MKKworICAgIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlz
dHJpYnV0ZSBpdCBhbmQvb3IKKyAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH
TlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICAgIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRo
ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICAgIHZlcnNpb24gMi4xIG9mIHRo
ZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorCisgICAg
VGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1
c2VmdWwsCisgICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGlt
cGxpZWQgd2FycmFudHkgb2YKKyAgICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICAgIExpYnJhcnkgR2VuZXJhbCBQdWJs
aWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorCisgICAgWW91IHNob3VsZCBoYXZlIHJlY2Vp
dmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICAg
IGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBu
b3QsIHdyaXRlIHRvCisgICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEg
RnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAgICBCb3N0b24sIE1BIDAyMTEwLTEzMDEs
IFVTQS4KKyovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJQYWdlQ2xpZW50RWZs
LmgiCisKKyNpbmNsdWRlICJld2tfcHJpdmF0ZS5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisK
K1BhZ2VDbGllbnRFZmw6OlBhZ2VDbGllbnRFZmwoRXZhc19PYmplY3QqIHZpZXcpCisgICAgOiBt
X3ZpZXcodmlldykKK3sKKyAgICBBU1NFUlQobV92aWV3KTsKK30KKworUGFnZUNsaWVudEVmbDo6
flBhZ2VDbGllbnRFZmwoKQoreworfQorCisjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5H
KQorYm9vbCBQYWdlQ2xpZW50RWZsOjpjcmVhdGVFdmFzT2JqZWN0Rm9yQWNjZWxlcmF0ZWRDb21w
b3NpdGluZyhFdmFzX05hdGl2ZV9TdXJmYWNlKiBuYXRpdmVTdXJmYWNlLCBjb25zdCBJbnRSZWN0
JiByZWN0KQoreworICAgIHJldHVybiBld2tfdmlld19hY2NlbGVyYXRlZF9jb21wb3NpdGluZ19v
YmplY3RfY3JlYXRlKG1fdmlldywgbmF0aXZlU3VyZmFjZSwgcmVjdCk7Cit9CisKK0dyYXBoaWNz
Q29udGV4dDNEKiBQYWdlQ2xpZW50RWZsOjphY2NlbGVyYXRlZENvbXBvc2l0aW5nQ29udGV4dCgp
Cit7CisgICAgcmV0dXJuIGV3a192aWV3X2FjY2VsZXJhdGVkX2NvbXBvc2l0aW5nX2NvbnRleHRf
Z2V0KG1fdmlldyk7Cit9CisjZW5kaWYKKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9l
ZmwvV2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVudEVmbC5oIGIvU291cmNlL1dlYktpdC9lZmwvV2Vi
Q29yZVN1cHBvcnQvUGFnZUNsaWVudEVmbC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAuLmEzNDkxNDkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJD
b3JlU3VwcG9ydC9QYWdlQ2xpZW50RWZsLmgKQEAgLTAsMCArMSw1MCBAQAorLyoKKyAqIENvcHly
aWdodCAoQykgMjAxMiBTYW1zdW5nIEVsZWN0cm9uaWNzCisgKgorICogVGhpcyBsaWJyYXJ5IGlz
IGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5
IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAq
IExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVp
dGhlcgorICogdmVyc2lvbiAyLjEgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikg
YW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGlu
IHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FS
UkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRB
QklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUK
KyAqIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoK
KyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdl
bmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhl
IGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2Fy
ZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICog
Qm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKi8KKworI2lmbmRlZiBQYWdlQ2xpZW50RWZs
X2gKKyNkZWZpbmUgUGFnZUNsaWVudEVmbF9oCisKKyNpbmNsdWRlICJJbnRSZWN0LmgiCisKK3R5
cGVkZWYgc3RydWN0IF9FdmFzX09iamVjdCBFdmFzX09iamVjdDsKK3R5cGVkZWYgc3RydWN0IF9F
dmFzX05hdGl2ZV9TdXJmYWNlIEV2YXNfTmF0aXZlX1N1cmZhY2U7CisKK25hbWVzcGFjZSBXZWJD
b3JlIHsKKworY2xhc3MgR3JhcGhpY3NDb250ZXh0M0Q7CisKK2NsYXNzIFBhZ2VDbGllbnRFZmwg
eworcHVibGljOgorICAgIFBhZ2VDbGllbnRFZmwoRXZhc19PYmplY3QqIHZpZXcpOworICAgIHZp
cnR1YWwgflBhZ2VDbGllbnRFZmwoKTsKKworI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElO
RykKKyAgICBib29sIGNyZWF0ZUV2YXNPYmplY3RGb3JBY2NlbGVyYXRlZENvbXBvc2l0aW5nKEV2
YXNfTmF0aXZlX1N1cmZhY2UqLCBjb25zdCBJbnRSZWN0Jik7CisgICAgR3JhcGhpY3NDb250ZXh0
M0QqIGFjY2VsZXJhdGVkQ29tcG9zaXRpbmdDb250ZXh0KCk7CisjZW5kaWYKKworICAgIEV2YXNf
T2JqZWN0KiB2aWV3KCkgeyByZXR1cm4gbV92aWV3OyB9CisKK3Byb3RlY3RlZDoKKyAgICBFdmFz
X09iamVjdCogbV92aWV3OworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYg
Ly8gUGFnZUNsaWVudEVmbF9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdr
X3ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfcHJpdmF0ZS5oCmluZGV4IGI0
YThkZDkuLjk2ZTQ3OTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfcHJp
dmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfcHJpdmF0ZS5oCkBAIC0zNiw2
ICszNiw5IEBACiAjaW5jbHVkZSAiZXdrX2pzLmgiCiAjaW5jbHVkZSAiZXdrX3ZpZXcuaCIKICNp
bmNsdWRlIDxFdmFzLmg+CisjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQorI2luY2x1
ZGUgPEV2YXNfR0wuaD4KKyNlbmRpZgogI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAjaW5j
bHVkZSA8d3RmL1ZlY3Rvci5oPgogCkBAIC03NCw2ICs3NywxMCBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiBzdHJ1Y3QgUG9wdXBNZW51Q2xpZW50Owogc3RydWN0IENvbnRleHRNZW51Owogc3RydWN0
IENvbnRleHRNZW51SXRlbTsKKyNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCitjbGFz
cyBHcmFwaGljc0NvbnRleHQzRDsKK2NsYXNzIEdyYXBoaWNzTGF5ZXI7CisjZW5kaWYKIH0KIAog
c3RydWN0IEV3a19XaW5kb3dfT2JqZWN0X0NsZWFyZWRfRXZlbnQgewpAQCAtODcsNiArOTQsNyBA
QCBuYW1lc3BhY2UgRVdLUHJpdmF0ZSB7CiBXZWJDb3JlOjpGcmFtZSAqY29yZUZyYW1lKGNvbnN0
IEV2YXNfT2JqZWN0ICpld2tGcmFtZSk7CiBXZWJDb3JlOjpQYWdlICpjb3JlUGFnZShjb25zdCBF
dmFzX09iamVjdCAqZXdrVmlldyk7CiBXZWJDb3JlOjpIaXN0b3J5SXRlbSAqY29yZUhpc3RvcnlJ
dGVtKGNvbnN0IEV3a19IaXN0b3J5X0l0ZW0gKmV3a0hpc3RvcnlJdGVtKTsKK1dlYkNvcmU6OlBs
YXRmb3JtUGFnZUNsaWVudCBjb3JlUGFnZUNsaWVudChFdmFzX09iamVjdCogZXdrVmlldyk7CiAK
IEV2YXNfT2JqZWN0KiBraXRGcmFtZShjb25zdCBXZWJDb3JlOjpGcmFtZSogY29yZUZyYW1lKTsK
IApAQCAtMjM0LDQgKzI0Miw5IEBAIHZvaWQgZXdrX2ZyYW1lX21peGVkX2NvbnRlbnRfcnVuX3Nl
dChFdmFzX09iamVjdCogZXdrRnJhbWUsIGJvb2wgaGFzUnVuKTsKIHZvaWQgZXdrX3ZpZXdfbWl4
ZWRfY29udGVudF9kaXNwbGF5ZWRfc2V0KEV2YXNfT2JqZWN0KiBld2tWaWV3LCBib29sIGhhc0Rp
c3BsYXllZCk7CiB2b2lkIGV3a192aWV3X21peGVkX2NvbnRlbnRfcnVuX3NldChFdmFzX09iamVj
dCogZXdrVmlldywgYm9vbCBoYXNSdW4pOwogCisjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lU
SU5HKQorYm9vbCBld2tfdmlld19hY2NlbGVyYXRlZF9jb21wb3NpdGluZ19vYmplY3RfY3JlYXRl
KEV2YXNfT2JqZWN0KiBld2tWaWV3LCBFdmFzX05hdGl2ZV9TdXJmYWNlKiBuYXRpdmVTdXJmYWNl
LCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiByZWN0KTsKK1dlYkNvcmU6OkdyYXBoaWNzQ29udGV4
dDNEKiBld2tfdmlld19hY2NlbGVyYXRlZF9jb21wb3NpdGluZ19jb250ZXh0X2dldChFdmFzX09i
amVjdCogZXdrVmlldyk7CisjZW5kaWYKKwogI2VuZGlmIC8vIGV3a19wcml2YXRlX2gKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0
L2VmbC9ld2svZXdrX3ZpZXcuY3BwCmluZGV4IDdhNTJjYWYuLmNlMGJkODkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9l
ZmwvZXdrL2V3a192aWV3LmNwcApAQCAtNDUsNiArNDUsNyBAQAogI2luY2x1ZGUgIkpTRE9NV2lu
ZG93LmgiCiAjaW5jbHVkZSAiSlNMb2NrLmgiCiAjaW5jbHVkZSAiTGF5b3V0VHlwZXMuaCIKKyNp
bmNsdWRlICJQYWdlQ2xpZW50RWZsLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1Nb3VzZUV2ZW50Lmgi
CiAjaW5jbHVkZSAiUG9wdXBNZW51Q2xpZW50LmgiCiAjaW5jbHVkZSAiUHJvZ3Jlc3NUcmFja2Vy
LmgiCkBAIC03OCw2ICs3OSwxMCBAQAogI2luY2x1ZGUgIkJhdHRlcnlDbGllbnRFZmwuaCIKICNl
bmRpZgogCisjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQorI2luY2x1ZGUgIk5vdElt
cGxlbWVudGVkLmgiCisjZW5kaWYKKwogc3RhdGljIGNvbnN0IGZsb2F0IHpvb21NaW5pbXVtID0g
MC4wNTsKIHN0YXRpYyBjb25zdCBmbG9hdCB6b29tTWF4aW11bSA9IDQuMDsKIApAQCAtMTQyLDYg
KzE0Nyw3IEBAIHN0cnVjdCBfRXdrX1ZpZXdfUHJpdmF0ZV9EYXRhIHsKICAgICBXZWJDb3JlOjpG
cmFtZSogbWFpbkZyYW1lOwogICAgIFdlYkNvcmU6OlZpZXdwb3J0QXJndW1lbnRzIHZpZXdwb3J0
QXJndW1lbnRzOwogICAgIEV3a19IaXN0b3J5KiBoaXN0b3J5OworICAgIE93blB0cjxXZWJDb3Jl
OjpQYWdlQ2xpZW50RWZsPiBwYWdlQ2xpZW50OwogICAgIHN0cnVjdCB7CiAgICAgICAgIEV3a19N
ZW51IG1lbnU7CiAgICAgICAgIFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudCogbWVudUNsaWVudDsK
QEAgLTcxNiw2ICs3MjIsOCBAQCBzdGF0aWMgRXdrX1ZpZXdfUHJpdmF0ZV9EYXRhKiBfZXdrX3Zp
ZXdfcHJpdl9uZXcoRXdrX1ZpZXdfU21hcnRfRGF0YSogc21hcnREYXRhKQogCiAgICAgcHJpdi0+
c291cFNlc3Npb24gPSBXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZTo6ZGVmYXVsdFNlc3Npb24oKTsK
IAorICAgIHByaXYtPnBhZ2VDbGllbnQgPSBhZG9wdFB0cihuZXcgV2ViQ29yZTo6UGFnZUNsaWVu
dEVmbChzbWFydERhdGEtPnNlbGYpKTsKKwogICAgIHJldHVybiBwcml2OwogfQogCkBAIC0zOTI0
LDYgKzM5MzIsMjAgQEAgdm9pZCBld2tfdmlld19zb3VwX3Nlc3Npb25fc2V0KEV2YXNfT2JqZWN0
KiBld2tWaWV3LCBTb3VwU2Vzc2lvbiogc2Vzc2lvbikKICAgICBwcml2LT5zb3VwU2Vzc2lvbiA9
IHNlc3Npb247CiB9CiAKKyNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCitib29sIGV3
a192aWV3X2FjY2VsZXJhdGVkX2NvbXBvc2l0aW5nX29iamVjdF9jcmVhdGUoRXZhc19PYmplY3Qq
IGV3a1ZpZXcsIEV2YXNfTmF0aXZlX1N1cmZhY2UqIG5hdGl2ZVN1cmZhY2UsIGNvbnN0IFdlYkNv
cmU6OkludFJlY3QmIHJlY3QpCit7CisgICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICByZXR1cm4g
ZmFsc2U7Cit9CisKK1dlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDNEKiBld2tfdmlld19hY2NlbGVy
YXRlZF9jb21wb3NpdGluZ19jb250ZXh0X2dldChFdmFzX09iamVjdCogZXdrVmlldykKK3sKKyAg
ICBub3RJbXBsZW1lbnRlZCgpOworICAgIHJldHVybiAwOworfQorI2VuZGlmCisKIG5hbWVzcGFj
ZSBFV0tQcml2YXRlIHsKIAogV2ViQ29yZTo6UGFnZSAqY29yZVBhZ2UoY29uc3QgRXZhc19PYmpl
Y3QgKmV3a1ZpZXcpCkBAIC0zOTMzLDQgKzM5NTUsMTEgQEAgV2ViQ29yZTo6UGFnZSAqY29yZVBh
Z2UoY29uc3QgRXZhc19PYmplY3QgKmV3a1ZpZXcpCiAgICAgcmV0dXJuIHByaXYtPnBhZ2UuZ2V0
KCk7CiB9CiAKK1dlYkNvcmU6OlBsYXRmb3JtUGFnZUNsaWVudCBjb3JlUGFnZUNsaWVudChFdmFz
X09iamVjdCogZXdrVmlldykKK3sKKyAgICBFV0tfVklFV19TRF9HRVRfT1JfUkVUVVJOKGV3a1Zp
ZXcsIHNtYXJ0RGF0YSwgMCk7CisgICAgRVdLX1ZJRVdfUFJJVl9HRVRfT1JfUkVUVVJOKHNtYXJ0
RGF0YSwgcHJpdiwgMCk7CisgICAgcmV0dXJuIHByaXYtPnBhZ2VDbGllbnQuZ2V0KCk7Cit9CisK
IH0gLy8gbmFtZXNwYWNlIEVXS1ByaXZhdGUK
</data>
<flag name="review"
          id="136821"
          type_id="1"
          status="+"
          setter="noam"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>133219</attachid>
            <date>2012-03-22 04:12:31 -0700</date>
            <delta_ts>2012-03-22 05:43:18 -0700</delta_ts>
            <desc>patch with updates from comment #16</desc>
            <filename>bugzilla_20120322_nitpick.patch</filename>
            <type>text/plain</type>
            <size>15316</size>
            <attacher name="Hyowon Kim">hw1008.kim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nIGIvU291cmNlL1dURi9DaGFuZ2VMb2cK
aW5kZXggZTA3ZTA0MC4uYzc3YjVjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAxMi0wMy0yMiAg
SHlvd29uIEtpbSAgPGh3MTAwOC5raW1Ac2Ftc3VuZy5jb20+CisKKyAgICAgICAgW0VGTF0gQWRk
IFBhZ2VDbGllbnRFZmwgdG8gV2ViQ29yZVN1cHBvcnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MDc0OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5v
YW0gUm9zZW50aGFsLgorCisgICAgICAgICogd3RmL1BsYXRmb3JtLmg6IERpc2FibGUgYWNjZWxl
cmF0ZWQgY29tcG9zaXRpbmcuIEl0J3Mgbm90IHJlYWR5IHlldC4KKwogMjAxMi0wMy0yMSAgQmV0
aCBEYWtpbiAgPGJkYWtpbkBhcHBsZS5jb20+CiAKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTgwMzIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9Q
bGF0Zm9ybS5oIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm0uaAppbmRleCA1MGViYmNiLi5kNTk0
MGEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCisrKyBiL1NvdXJjZS9X
VEYvd3RmL1BsYXRmb3JtLmgKQEAgLTEwNjIsNyArMTA2Miw3IEBACiAjZW5kaWYKIAogLyogQWNj
ZWxlcmF0ZWQgY29tcG9zaXRpbmcgKi8KLSNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKElP
UykgfHwgUExBVEZPUk0oUVQpIHx8IChQTEFURk9STShXSU4pICYmICFPUyhXSU5DRSkgJiYgIVBM
QVRGT1JNKFdJTl9DQUlSTykpIHx8IFBMQVRGT1JNKEVGTCkKKyNpZiBQTEFURk9STShNQUMpIHx8
IFBMQVRGT1JNKElPUykgfHwgUExBVEZPUk0oUVQpIHx8IChQTEFURk9STShXSU4pICYmICFPUyhX
SU5DRSkgJiYgIVBMQVRGT1JNKFdJTl9DQUlSTykpCiAjZGVmaW5lIFdURl9VU0VfQUNDRUxFUkFU
RURfQ09NUE9TSVRJTkcgMQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA1MjBjOTlkLi4zYmNjMmIy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTItMDMtMjIgIEh5b3dvbiBLaW0gIDxo
dzEwMDgua2ltQHNhbXN1bmcuY29tPgorCisgICAgICAgIFtFRkxdIEFkZCBQYWdlQ2xpZW50RWZs
IHRvIFdlYkNvcmVTdXBwb3J0LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9ODA3NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOb2FtIFJvc2VudGhhbC4K
KworICAgICAgICAqIHBsYXRmb3JtL1dpZGdldC5oOiBVc2UgUGFnZUNsaWVudEVmbCBhcyB0eXBl
IGZvciBQbGF0Zm9ybVBhZ2VDbGllbnQuCisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9lZmwvR3JhcGhpY3NDb250ZXh0M0RQcml2YXRlLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDNEUHJpdmF0ZTo6Y3JlYXRlU3VyZmFjZSk6IENo
YW5nZSB0aGUgYXJndW1lbnQgdHlwZS4KKyAgICAgICAgKiBwbHVnaW5zL2VmbC9QbHVnaW5WaWV3
RWZsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBsdWdpblZpZXc6OnBsYXRmb3JtR2V0VmFsdWUp
OiBVc2UgUGFnZUNsaWVudEVmbC4KKwogMjAxMi0wMy0yMiAgS2VudCBUYW11cmEgIDx0a2VudEBj
aHJvbWl1bS5vcmc+CiAKICAgICAgICAgRXhwYW5kIFJlbmRlclRleHRDb250cm9sU2luZ2xlTGlu
ZTo6Y29udHJvbENsaXBSZWN0KCkgdG8gY29udGFpbiBjb250ZW50UmVjdCgpLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vV2lkZ2V0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9XaWRnZXQuaAppbmRleCBhZWIzM2VjLi4wZDdjZmQyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9XaWRnZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9X
aWRnZXQuaApAQCAtOTAsNiArOTAsMTEgQEAgdHlwZWRlZiBRV2ViUGFnZUNsaWVudCogUGxhdGZv
cm1QYWdlQ2xpZW50OwogI2VsaWYgUExBVEZPUk0oQkxBQ0tCRVJSWSkKICNpbmNsdWRlICJQYWdl
Q2xpZW50QmxhY2tCZXJyeS5oIgogdHlwZWRlZiBQYWdlQ2xpZW50QmxhY2tCZXJyeSogUGxhdGZv
cm1QYWdlQ2xpZW50OworI2VsaWYgUExBVEZPUk0oRUZMKQorbmFtZXNwYWNlIFdlYkNvcmUgewor
Y2xhc3MgUGFnZUNsaWVudEVmbDsKK3R5cGVkZWYgUGFnZUNsaWVudEVmbCogUGxhdGZvcm1QYWdl
Q2xpZW50OworfQogI2Vsc2UKIHR5cGVkZWYgUGxhdGZvcm1XaWRnZXQgUGxhdGZvcm1QYWdlQ2xp
ZW50OwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9lZmwvR3JhcGhpY3NDb250ZXh0M0RQcml2YXRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2VmbC9HcmFwaGljc0NvbnRleHQzRFByaXZhdGUuY3BwCmluZGV4IDA4MTUz
ZjAuLmU1MWRkYzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2VmbC9HcmFwaGljc0NvbnRleHQzRFByaXZhdGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2VmbC9HcmFwaGljc0NvbnRleHQzRFByaXZhdGUuY3BwCkBAIC0xMzks
NyArMTM5LDcgQEAgYm9vbCBHcmFwaGljc0NvbnRleHQzRFByaXZhdGU6OmNyZWF0ZVN1cmZhY2Uo
UGFnZUNsaWVudEVmbCogcGFnZUNsaWVudCwgYm9vbCByZW4KICAgICAgICAgZXZhc19nbF9uYXRp
dmVfc3VyZmFjZV9nZXQobV9ldmFzR0wsIG1fc3VyZmFjZSwgJm5hdGl2ZVN1cmZhY2UpOwogCiAg
ICAgICAgIC8vIENyZWF0ZSBhbmQgc3BlY2lhbGx5IHNldCB1cCBhIGV2YXNfb2JqZWN0IHdoaWNo
IGFjdCBhcyB0aGUgcmVuZGVyIHRhcmdlciBzdXJmYWNlLgotICAgICAgICBpZiAoIXBhZ2VDbGll
bnQtPmNyZWF0ZUV2YXNPYmplY3RGb3JBY2NlbGVyYXRlZENvbXBvc2l0aW5nKCZuYXRpdmVTdXJm
YWNlLCB4LCB5LCB3aWR0aCwgaGVpZ2h0KSkKKyAgICAgICAgaWYgKCFwYWdlQ2xpZW50LT5jcmVh
dGVFdmFzT2JqZWN0Rm9yQWNjZWxlcmF0ZWRDb21wb3NpdGluZygmbmF0aXZlU3VyZmFjZSwgSW50
UmVjdCh4LCB5LCB3aWR0aCwgaGVpZ2h0KSkpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAg
ICAgfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL2VmbC9QbHVn
aW5WaWV3RWZsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvZWZsL1BsdWdpblZpZXdFZmwu
Y3BwCmluZGV4IDU4NjgwMmMuLjg2ZWEyMDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
dWdpbnMvZWZsL1BsdWdpblZpZXdFZmwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMv
ZWZsL1BsdWdpblZpZXdFZmwuY3BwCkBAIC0zOCw2ICszOCw3IEBACiAjaW5jbHVkZSAiSG9zdFdp
bmRvdy5oIgogI2luY2x1ZGUgIk1vdXNlRXZlbnQuaCIKICNpbmNsdWRlICJOb3RJbXBsZW1lbnRl
ZC5oIgorI2luY2x1ZGUgIlBhZ2VDbGllbnRFZmwuaCIKICNpbmNsdWRlICJQbHVnaW5QYWNrYWdl
LmgiCiAjaW5jbHVkZSAibnBydW50aW1lX2ltcGwuaCIKICNpbmNsdWRlICJydW50aW1lL0pTTG9j
ay5oIgpAQCAtMjgyLDcgKzI4Myw4IEBAIGJvb2wgUGx1Z2luVmlldzo6cGxhdGZvcm1HZXRWYWx1
ZShOUE5WYXJpYWJsZSB2YXJpYWJsZSwgdm9pZCogdmFsdWUsIE5QRXJyb3IqIHJlCiAgICAgfQog
CiAgICAgY2FzZSBOUE5WbmV0c2NhcGVXaW5kb3c6IHsKLSAgICAgICAgRXZhc19PYmplY3QqIHdp
ZGdldCA9IG1fcGFyZW50RnJhbWUtPnZpZXcoKS0+aG9zdFdpbmRvdygpLT5wbGF0Zm9ybVBhZ2VD
bGllbnQoKTsKKyAgICAgICAgUGFnZUNsaWVudEVmbCogcGFnZUNsaWVudCA9IHN0YXRpY19jYXN0
PFBhZ2VDbGllbnRFZmwqPihtX3BhcmVudEZyYW1lLT52aWV3KCktPmhvc3RXaW5kb3coKS0+cGxh
dGZvcm1QYWdlQ2xpZW50KCkpOworICAgICAgICBFdmFzX09iamVjdCogd2lkZ2V0ID0gcGFnZUNs
aWVudC0+dmlldygpOwogICAgICAgICBFdmFzKiBldmFzID0gZXZhc19vYmplY3RfZXZhc19nZXQo
d2lkZ2V0KTsKICAgICAgICAgRWNvcmVfRXZhcyogZWNvcmVFdmFzID0gZWNvcmVfZXZhc19lY29y
ZV9ldmFzX2dldChldmFzKTsKICAgICAgICAgKnN0YXRpY19jYXN0PFhJRCo+KHZhbHVlKSA9IHN0
YXRpY19jYXN0PFdpbmRvdz4oZWNvcmVfZXZhc193aW5kb3dfZ2V0KGVjb3JlRXZhcykpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxv
ZwppbmRleCA4NWI4NWU3Li42MWRhNGEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDEy
LTAzLTIyICBIeW93b24gS2ltICA8aHcxMDA4LmtpbUBzYW1zdW5nLmNvbT4KKworICAgICAgICBb
RUZMXSBBZGQgUGFnZUNsaWVudEVmbCB0byBXZWJDb3JlU3VwcG9ydC4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgwNzQ4CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTm9hbSBSb3NlbnRoYWwuCisKKyAgICAgICAgKiBQbGF0Zm9ybUVmbC5jbWFrZTogQWRk
IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZWZsIHRvIHRoZSBpbmNsdWRlIHBhdGgKKyAgICAg
ICAgYW5kIFBhZ2VDbGllbnRFZmwuY3BwIHRvIHRoZSBzb3VyY2UgbGlzdC4KKwogMjAxMi0wMy0y
MCAgRXJpYyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+CiAKICAgICAgICAgTW92ZSB3dGYvUGxh
dGZvcm0uaCBmcm9tIEphdmFTY3JpcHRDb3JlIHRvIFNvdXJjZS9XVEYvd3RmCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtRWZsLmNtYWtlIGIvU291cmNlL1dlYktpdC9QbGF0Zm9y
bUVmbC5jbWFrZQppbmRleCAxNTg0MTM1Li4xMDAxMGM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1BsYXRmb3JtRWZsLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm1FZmwuY21h
a2UKQEAgLTEzLDYgKzEzLDcgQEAgTElTVChBUFBFTkQgV2ViS2l0X0lOQ0xVREVfRElSRUNUT1JJ
RVMKICAgICAiJHtKQVZBU0NSSVBUQ09SRV9ESVJ9L3d0Zi9nb2JqZWN0IgogICAgICIke1dFQkNP
UkVfRElSfS9wbGF0Zm9ybS9lZmwiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L3BsYXRmb3JtL2dyYXBo
aWNzL2NhaXJvIgorICAgICIke1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9ncmFwaGljcy9lZmwiCiAg
ICAgJHtDYWlyb19JTkNMVURFX0RJUlN9CiAgICAgJHtFQ09SRV9YX0lOQ0xVREVfRElSU30KICAg
ICAke0VESkVfSU5DTFVERV9ESVJTfQpAQCAtODAsNiArODEsNyBAQCBMSVNUKEFQUEVORCBXZWJL
aXRfU09VUkNFUwogICAgIGVmbC9XZWJDb3JlU3VwcG9ydC9TdG9yYWdlVHJhY2tlckNsaWVudEVm
bC5jcHAKICAgICBlZmwvV2ViQ29yZVN1cHBvcnQvSW5zcGVjdG9yQ2xpZW50RWZsLmNwcAogICAg
IGVmbC9XZWJDb3JlU3VwcG9ydC9Ob3RpZmljYXRpb25QcmVzZW50ZXJDbGllbnRFZmwuY3BwCisg
ICAgZWZsL1dlYkNvcmVTdXBwb3J0L1BhZ2VDbGllbnRFZmwuY3BwCiAKICAgICBlZmwvZXdrL2V3
a19hdXRoLmNwcAogICAgIGVmbC9ld2svZXdrX2F1dGhfc291cC5jcHAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZwpp
bmRleCA1NDAzNzA5Li4xMjNjN2MxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzcgQEAK
KzIwMTItMDMtMjIgIEh5b3dvbiBLaW0gIDxodzEwMDgua2ltQHNhbXN1bmcuY29tPgorCisgICAg
ICAgIFtFRkxdIEFkZCBQYWdlQ2xpZW50RWZsIHRvIFdlYkNvcmVTdXBwb3J0LgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODA3NDgKKworICAgICAgICBS
ZXZpZXdlZCBieSBOb2FtIFJvc2VudGhhbC4KKworICAgICAgICBUaGlzIHBhdGNoIGFkZHMgUGFn
ZUNsaWVudEVmbCBmb3IgaW1wbGVtZW50YWlvbiBvZiBhY2NlbGVyYXRlZCBjb21wb3NpdGluZy4K
KworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEVmbC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpDaHJvbWVDbGllbnRFZmw6OnBsYXRmb3JtUGFnZUNsaWVudCk6CisgICAgICAg
ICogV2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVudEVmbC5jcHA6IEFkZGVkLgorICAgICAgICAoV2Vi
Q29yZSk6CisgICAgICAgIChXZWJDb3JlOjpQYWdlQ2xpZW50RWZsOjpQYWdlQ2xpZW50RWZsKToK
KyAgICAgICAgKFdlYkNvcmU6OlBhZ2VDbGllbnRFZmw6On5QYWdlQ2xpZW50RWZsKToKKyAgICAg
ICAgKFdlYkNvcmU6OlBhZ2VDbGllbnRFZmw6OmNyZWF0ZUV2YXNPYmplY3RGb3JBY2NlbGVyYXRl
ZENvbXBvc2l0aW5nKToKKyAgICAgICAgSnVzdCBjYWxsIGV3a192aWV3X2FjY2VsZXJhdGVkX2Nv
bXBvc2l0aW5nX29iamVjdF9jcmVhdGUoKS4KKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VDbGllbnRF
Zmw6OmFjY2VsZXJhdGVkQ29tcG9zaXRpbmdDb250ZXh0KToKKyAgICAgICAgSnVzdCBjYWxsIGV3
a192aWV3X2FjY2VsZXJhdGVkX2NvbXBvc2l0aW5nX2NvbnRleHRfZ2V0KCkuCisgICAgICAgICog
V2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVudEVmbC5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmUp
OgorICAgICAgICAoUGFnZUNsaWVudEVmbCk6CisgICAgICAgIChXZWJDb3JlOjpQYWdlQ2xpZW50
RWZsOjp2aWV3KTogUmV0dXJuIGV3a1ZpZXcuCisgICAgICAgICogZXdrL2V3a19wcml2YXRlLmg6
CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKEVXS1ByaXZhdGUpOgorICAgICAgICAqIGV3
ay9ld2tfdmlldy5jcHA6CisgICAgICAgIChfRXdrX1ZpZXdfUHJpdmF0ZV9EYXRhKTogQWRkIE93
blB0cjxQYWdlQ2xpZW50RWZsPi4KKyAgICAgICAgKF9ld2tfdmlld19wcml2X25ldyk6IENyZWF0
ZSBhIG5ldyBQYWdlQ2xpZW50RWZsLgorICAgICAgICAoZXdrX3ZpZXdfYWNjZWxlcmF0ZWRfY29t
cG9zaXRpbmdfb2JqZWN0X2NyZWF0ZSk6IE5vdCBpbXBsZW1lbnRlZC4KKyAgICAgICAgKGV3a192
aWV3X2FjY2VsZXJhdGVkX2NvbXBvc2l0aW5nX2NvbnRleHRfZ2V0KTogTm90IGltcGxlbWVudGVk
LgorICAgICAgICAoRVdLUHJpdmF0ZTo6Y29yZVBhZ2VDbGllbnQpOiBSZXR1cm4gdGhlIFBhZ2VD
bGllbnRFZmwgcG9pbnRlci4KKyAgICAgICAgKEVXS1ByaXZhdGUpOgorCiAyMDEyLTAzLTE5ICBB
ZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmVtb3ZlIHN1cHBvcnQg
Zm9yICJtYWdpYyIgaWZyYW1lCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3Jl
U3VwcG9ydC9DaHJvbWVDbGllbnRFZmwuY3BwIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1
cHBvcnQvQ2hyb21lQ2xpZW50RWZsLmNwcAppbmRleCBkZDc5YjkzLi42OGFkZjVmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRFZmwuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEVmbC5j
cHAKQEAgLTMzOSw3ICszMzksNyBAQCBJbnRQb2ludCBDaHJvbWVDbGllbnRFZmw6OnNjcmVlblRv
Um9vdFZpZXcoY29uc3QgSW50UG9pbnQmIHBvaW50KSBjb25zdAogCiBQbGF0Zm9ybVBhZ2VDbGll
bnQgQ2hyb21lQ2xpZW50RWZsOjpwbGF0Zm9ybVBhZ2VDbGllbnQoKSBjb25zdAogewotICAgIHJl
dHVybiBtX3ZpZXc7CisgICAgcmV0dXJuIEVXS1ByaXZhdGU6OmNvcmVQYWdlQ2xpZW50KG1fdmll
dyk7CiB9CiAKIHZvaWQgQ2hyb21lQ2xpZW50RWZsOjpzY3JvbGxiYXJzTW9kZURpZENoYW5nZSgp
IGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9QYWdl
Q2xpZW50RWZsLmNwcCBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L1BhZ2VDbGll
bnRFZmwuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVlNjVlZGUKLS0t
IC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9QYWdlQ2xp
ZW50RWZsLmNwcApAQCAtMCwwICsxLDQ5IEBACisvKgorICAgIENvcHlyaWdodCAoQykgMjAxMiBT
YW1zdW5nIEVsZWN0cm9uaWNzCisKKyAgICBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsg
eW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgICAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0
ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAgICBMaWNlbnNlIGFzIHB1
Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAgICB2ZXJz
aW9uIDIuMSBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVy
c2lvbi4KKworICAgIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0
IGl0IHdpbGwgYmUgdXNlZnVsLAorICAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91
dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAgICBMaWJyYXJ5
IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworICAgIFlvdSBzaG91
bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGlj
IExpY2Vuc2UKKyAgICBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJ
TkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp
b24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgICAgQm9zdG9uLCBN
QSAwMjExMC0xMzAxLCBVU0EuCisqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAi
UGFnZUNsaWVudEVmbC5oIgorCisjaW5jbHVkZSAiZXdrX3ByaXZhdGUuaCIKKworbmFtZXNwYWNl
IFdlYkNvcmUgeworCitQYWdlQ2xpZW50RWZsOjpQYWdlQ2xpZW50RWZsKEV2YXNfT2JqZWN0KiB2
aWV3KQorICAgIDogbV92aWV3KHZpZXcpCit7CisgICAgQVNTRVJUKG1fdmlldyk7Cit9CisKK1Bh
Z2VDbGllbnRFZmw6On5QYWdlQ2xpZW50RWZsKCkKK3sKK30KKworI2lmIFVTRShBQ0NFTEVSQVRF
RF9DT01QT1NJVElORykKK2Jvb2wgUGFnZUNsaWVudEVmbDo6Y3JlYXRlRXZhc09iamVjdEZvckFj
Y2VsZXJhdGVkQ29tcG9zaXRpbmcoRXZhc19OYXRpdmVfU3VyZmFjZSogbmF0aXZlU3VyZmFjZSwg
Y29uc3QgSW50UmVjdCYgcmVjdCkKK3sKKyAgICByZXR1cm4gZXdrX3ZpZXdfYWNjZWxlcmF0ZWRf
Y29tcG9zaXRpbmdfb2JqZWN0X2NyZWF0ZShtX3ZpZXcsIG5hdGl2ZVN1cmZhY2UsIHJlY3QpOwor
fQorCitHcmFwaGljc0NvbnRleHQzRCogUGFnZUNsaWVudEVmbDo6YWNjZWxlcmF0ZWRDb21wb3Np
dGluZ0NvbnRleHQoKQoreworICAgIHJldHVybiBld2tfdmlld19hY2NlbGVyYXRlZF9jb21wb3Np
dGluZ19jb250ZXh0X2dldChtX3ZpZXcpOworfQorI2VuZGlmCisKK30KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L1BhZ2VDbGllbnRFZmwuaCBiL1NvdXJjZS9X
ZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L1BhZ2VDbGllbnRFZmwuaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi5mNTQxMzAzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dl
YktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVudEVmbC5oCkBAIC0wLDAgKzEsNTAgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgU2Ftc3VuZyBFbGVjdHJvbmljcworICoKKyAqIFRo
aXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv
b3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVy
YWwgUHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQg
eW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBk
aXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJ
VEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YK
KyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4g
IFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUg
ZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBH
TlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgbGli
cmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICogdGhl
IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0
aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorICovCisKKyNpZm5kZWYg
UGFnZUNsaWVudEVmbF9oCisjZGVmaW5lIFBhZ2VDbGllbnRFZmxfaAorCisjaW5jbHVkZSAiSW50
UmVjdC5oIgorCit0eXBlZGVmIHN0cnVjdCBfRXZhc19OYXRpdmVfU3VyZmFjZSBFdmFzX05hdGl2
ZV9TdXJmYWNlOwordHlwZWRlZiBzdHJ1Y3QgX0V2YXNfT2JqZWN0IEV2YXNfT2JqZWN0OworCitu
YW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIEdyYXBoaWNzQ29udGV4dDNEOworCitjbGFzcyBQ
YWdlQ2xpZW50RWZsIHsKK3B1YmxpYzoKKyAgICBQYWdlQ2xpZW50RWZsKEV2YXNfT2JqZWN0KiB2
aWV3KTsKKyAgICB2aXJ0dWFsIH5QYWdlQ2xpZW50RWZsKCk7CisKKyNpZiBVU0UoQUNDRUxFUkFU
RURfQ09NUE9TSVRJTkcpCisgICAgYm9vbCBjcmVhdGVFdmFzT2JqZWN0Rm9yQWNjZWxlcmF0ZWRD
b21wb3NpdGluZyhFdmFzX05hdGl2ZV9TdXJmYWNlKiwgY29uc3QgSW50UmVjdCYpOworICAgIEdy
YXBoaWNzQ29udGV4dDNEKiBhY2NlbGVyYXRlZENvbXBvc2l0aW5nQ29udGV4dCgpOworI2VuZGlm
CisKKyAgICBFdmFzX09iamVjdCogdmlldygpIHsgcmV0dXJuIG1fdmlldzsgfQorCitwcm90ZWN0
ZWQ6CisgICAgRXZhc19PYmplY3QqIG1fdmlldzsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKKworI2VuZGlmIC8vIFBhZ2VDbGllbnRFZmxfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9lZmwvZXdrL2V3a19wcml2YXRlLmggYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ByaXZh
dGUuaAppbmRleCBiNGE4ZGQ5Li45NmU0Nzk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Vm
bC9ld2svZXdrX3ByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ByaXZh
dGUuaApAQCAtMzYsNiArMzYsOSBAQAogI2luY2x1ZGUgImV3a19qcy5oIgogI2luY2x1ZGUgImV3
a192aWV3LmgiCiAjaW5jbHVkZSA8RXZhcy5oPgorI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJ
VElORykKKyNpbmNsdWRlIDxFdmFzX0dMLmg+CisjZW5kaWYKICNpbmNsdWRlIDx3dGYvUGFzc1Jl
ZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIApAQCAtNzQsNiArNzcsMTAgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogc3RydWN0IFBvcHVwTWVudUNsaWVudDsKIHN0cnVjdCBDb250ZXh0
TWVudTsKIHN0cnVjdCBDb250ZXh0TWVudUl0ZW07CisjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBP
U0lUSU5HKQorY2xhc3MgR3JhcGhpY3NDb250ZXh0M0Q7CitjbGFzcyBHcmFwaGljc0xheWVyOwor
I2VuZGlmCiB9CiAKIHN0cnVjdCBFd2tfV2luZG93X09iamVjdF9DbGVhcmVkX0V2ZW50IHsKQEAg
LTg3LDYgKzk0LDcgQEAgbmFtZXNwYWNlIEVXS1ByaXZhdGUgewogV2ViQ29yZTo6RnJhbWUgKmNv
cmVGcmFtZShjb25zdCBFdmFzX09iamVjdCAqZXdrRnJhbWUpOwogV2ViQ29yZTo6UGFnZSAqY29y
ZVBhZ2UoY29uc3QgRXZhc19PYmplY3QgKmV3a1ZpZXcpOwogV2ViQ29yZTo6SGlzdG9yeUl0ZW0g
KmNvcmVIaXN0b3J5SXRlbShjb25zdCBFd2tfSGlzdG9yeV9JdGVtICpld2tIaXN0b3J5SXRlbSk7
CitXZWJDb3JlOjpQbGF0Zm9ybVBhZ2VDbGllbnQgY29yZVBhZ2VDbGllbnQoRXZhc19PYmplY3Qq
IGV3a1ZpZXcpOwogCiBFdmFzX09iamVjdCoga2l0RnJhbWUoY29uc3QgV2ViQ29yZTo6RnJhbWUq
IGNvcmVGcmFtZSk7CiAKQEAgLTIzNCw0ICsyNDIsOSBAQCB2b2lkIGV3a19mcmFtZV9taXhlZF9j
b250ZW50X3J1bl9zZXQoRXZhc19PYmplY3QqIGV3a0ZyYW1lLCBib29sIGhhc1J1bik7CiB2b2lk
IGV3a192aWV3X21peGVkX2NvbnRlbnRfZGlzcGxheWVkX3NldChFdmFzX09iamVjdCogZXdrVmll
dywgYm9vbCBoYXNEaXNwbGF5ZWQpOwogdm9pZCBld2tfdmlld19taXhlZF9jb250ZW50X3J1bl9z
ZXQoRXZhc19PYmplY3QqIGV3a1ZpZXcsIGJvb2wgaGFzUnVuKTsKIAorI2lmIFVTRShBQ0NFTEVS
QVRFRF9DT01QT1NJVElORykKK2Jvb2wgZXdrX3ZpZXdfYWNjZWxlcmF0ZWRfY29tcG9zaXRpbmdf
b2JqZWN0X2NyZWF0ZShFdmFzX09iamVjdCogZXdrVmlldywgRXZhc19OYXRpdmVfU3VyZmFjZSog
bmF0aXZlU3VyZmFjZSwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgcmVjdCk7CitXZWJDb3JlOjpH
cmFwaGljc0NvbnRleHQzRCogZXdrX3ZpZXdfYWNjZWxlcmF0ZWRfY29tcG9zaXRpbmdfY29udGV4
dF9nZXQoRXZhc19PYmplY3QqIGV3a1ZpZXcpOworI2VuZGlmCisKICNlbmRpZiAvLyBld2tfcHJp
dmF0ZV9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXcuY3BwIGIv
U291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmNwcAppbmRleCA3YTUyY2FmLi5jZTBiZDg5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXcuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAKQEAgLTQ1LDYgKzQ1LDcgQEAKICNpbmNs
dWRlICJKU0RPTVdpbmRvdy5oIgogI2luY2x1ZGUgIkpTTG9jay5oIgogI2luY2x1ZGUgIkxheW91
dFR5cGVzLmgiCisjaW5jbHVkZSAiUGFnZUNsaWVudEVmbC5oIgogI2luY2x1ZGUgIlBsYXRmb3Jt
TW91c2VFdmVudC5oIgogI2luY2x1ZGUgIlBvcHVwTWVudUNsaWVudC5oIgogI2luY2x1ZGUgIlBy
b2dyZXNzVHJhY2tlci5oIgpAQCAtNzgsNiArNzksMTAgQEAKICNpbmNsdWRlICJCYXR0ZXJ5Q2xp
ZW50RWZsLmgiCiAjZW5kaWYKIAorI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKKyNp
bmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgorI2VuZGlmCisKIHN0YXRpYyBjb25zdCBmbG9hdCB6
b29tTWluaW11bSA9IDAuMDU7CiBzdGF0aWMgY29uc3QgZmxvYXQgem9vbU1heGltdW0gPSA0LjA7
CiAKQEAgLTE0Miw2ICsxNDcsNyBAQCBzdHJ1Y3QgX0V3a19WaWV3X1ByaXZhdGVfRGF0YSB7CiAg
ICAgV2ViQ29yZTo6RnJhbWUqIG1haW5GcmFtZTsKICAgICBXZWJDb3JlOjpWaWV3cG9ydEFyZ3Vt
ZW50cyB2aWV3cG9ydEFyZ3VtZW50czsKICAgICBFd2tfSGlzdG9yeSogaGlzdG9yeTsKKyAgICBP
d25QdHI8V2ViQ29yZTo6UGFnZUNsaWVudEVmbD4gcGFnZUNsaWVudDsKICAgICBzdHJ1Y3Qgewog
ICAgICAgICBFd2tfTWVudSBtZW51OwogICAgICAgICBXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQq
IG1lbnVDbGllbnQ7CkBAIC03MTYsNiArNzIyLDggQEAgc3RhdGljIEV3a19WaWV3X1ByaXZhdGVf
RGF0YSogX2V3a192aWV3X3ByaXZfbmV3KEV3a19WaWV3X1NtYXJ0X0RhdGEqIHNtYXJ0RGF0YSkK
IAogICAgIHByaXYtPnNvdXBTZXNzaW9uID0gV2ViQ29yZTo6UmVzb3VyY2VIYW5kbGU6OmRlZmF1
bHRTZXNzaW9uKCk7CiAKKyAgICBwcml2LT5wYWdlQ2xpZW50ID0gYWRvcHRQdHIobmV3IFdlYkNv
cmU6OlBhZ2VDbGllbnRFZmwoc21hcnREYXRhLT5zZWxmKSk7CisKICAgICByZXR1cm4gcHJpdjsK
IH0KIApAQCAtMzkyNCw2ICszOTMyLDIwIEBAIHZvaWQgZXdrX3ZpZXdfc291cF9zZXNzaW9uX3Nl
dChFdmFzX09iamVjdCogZXdrVmlldywgU291cFNlc3Npb24qIHNlc3Npb24pCiAgICAgcHJpdi0+
c291cFNlc3Npb24gPSBzZXNzaW9uOwogfQogCisjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lU
SU5HKQorYm9vbCBld2tfdmlld19hY2NlbGVyYXRlZF9jb21wb3NpdGluZ19vYmplY3RfY3JlYXRl
KEV2YXNfT2JqZWN0KiBld2tWaWV3LCBFdmFzX05hdGl2ZV9TdXJmYWNlKiBuYXRpdmVTdXJmYWNl
LCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiByZWN0KQoreworICAgIG5vdEltcGxlbWVudGVkKCk7
CisgICAgcmV0dXJuIGZhbHNlOworfQorCitXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQzRCogZXdr
X3ZpZXdfYWNjZWxlcmF0ZWRfY29tcG9zaXRpbmdfY29udGV4dF9nZXQoRXZhc19PYmplY3QqIGV3
a1ZpZXcpCit7CisgICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICByZXR1cm4gMDsKK30KKyNlbmRp
ZgorCiBuYW1lc3BhY2UgRVdLUHJpdmF0ZSB7CiAKIFdlYkNvcmU6OlBhZ2UgKmNvcmVQYWdlKGNv
bnN0IEV2YXNfT2JqZWN0ICpld2tWaWV3KQpAQCAtMzkzMyw0ICszOTU1LDExIEBAIFdlYkNvcmU6
OlBhZ2UgKmNvcmVQYWdlKGNvbnN0IEV2YXNfT2JqZWN0ICpld2tWaWV3KQogICAgIHJldHVybiBw
cml2LT5wYWdlLmdldCgpOwogfQogCitXZWJDb3JlOjpQbGF0Zm9ybVBhZ2VDbGllbnQgY29yZVBh
Z2VDbGllbnQoRXZhc19PYmplY3QqIGV3a1ZpZXcpCit7CisgICAgRVdLX1ZJRVdfU0RfR0VUX09S
X1JFVFVSTihld2tWaWV3LCBzbWFydERhdGEsIDApOworICAgIEVXS19WSUVXX1BSSVZfR0VUX09S
X1JFVFVSTihzbWFydERhdGEsIHByaXYsIDApOworICAgIHJldHVybiBwcml2LT5wYWdlQ2xpZW50
LmdldCgpOworfQorCiB9IC8vIG5hbWVzcGFjZSBFV0tQcml2YXRlCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>