<?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>88633</bug_id>
          
          <creation_ts>2012-06-08 01:54:13 -0700</creation_ts>
          <short_desc>[EFL] Extract CursorMap from WidgetEfl.cpp.</short_desc>
          <delta_ts>2012-06-11 13:51:38 -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>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>88803</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryuan Choi">ryuan.choi</reporter>
          <assigned_to name="Ryuan Choi">ryuan.choi</assigned_to>
          <cc>gyuyoung.kim</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>lucas.de.marchi</cc>
    
    <cc>rakuco</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>644483</commentid>
    <comment_count>0</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-06-08 01:54:13 -0700</bug_when>
    <thetext>Because WebProcess can not control cursor,
setCursor should be passed to UIProcess via ChromeClient.

As a first step,
Ecore_X_Cursor should be moved out of Widget to call it in WebKit/efl and WebKit2/efl.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>644509</commentid>
    <comment_count>1</comment_count>
      <attachid>146519</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-06-08 02:25:49 -0700</bug_when>
    <thetext>Created attachment 146519
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>644512</commentid>
    <comment_count>2</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-06-08 02:27:47 -0700</bug_when>
    <thetext>(In reply to comment #0)
&gt; Because WebProcess can not control cursor,
&gt; setCursor should be passed to UIProcess via ChromeClient.
&gt; 
&gt; As a first step,
&gt; Ecore_X_Cursor should be moved out of Widget to call it in WebKit/efl and WebKit2/efl.

s/Ecore_X_Cursor/CursorMap

I will move Ecore_X_Cursor and other cursor related implementations as next steps.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645295</commentid>
    <comment_count>3</comment_count>
      <attachid>146519</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-06-09 04:57:45 -0700</bug_when>
    <thetext>Comment on attachment 146519
Patch

LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645687</commentid>
    <comment_count>4</comment_count>
      <attachid>146519</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-06-10 20:32:20 -0700</bug_when>
    <thetext>Comment on attachment 146519
Patch

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

&gt; Source/WebCore/ChangeLog:9
&gt; +        Extract it and expose getEcoreCursor.

s/Extract/extract/g

&gt; Source/WebCore/ChangeLog:11
&gt; +        No new tests; refactoring only.

s/;/,/g

&gt; Source/WebCore/platform/efl/EflScreenUtilities.cpp:52
&gt; +    m_cursorStringMap.set(&quot;cursor/pointer&quot;, ECORE_X_CURSOR_LEFT_PTR);

I think it is better to list these cursor map up by alphabetical order.

&gt; Source/WebCore/platform/efl/WidgetEfl.cpp:-43
&gt; -

Do not remove code unrelated to this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645701</commentid>
    <comment_count>5</comment_count>
      <attachid>146773</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-06-10 21:13:22 -0700</bug_when>
    <thetext>Created attachment 146773
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645704</commentid>
    <comment_count>6</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-06-10 21:17:43 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 146519 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=146519&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:9
&gt; &gt; +        Extract it and expose getEcoreCursor.
&gt; 
&gt; s/Extract/extract/g
Done.

&gt; 
&gt; &gt; Source/WebCore/ChangeLog:11
&gt; &gt; +        No new tests; refactoring only.
&gt; 
&gt; s/;/,/g
Done.

&gt; 
&gt; &gt; Source/WebCore/platform/efl/EflScreenUtilities.cpp:52
&gt; &gt; +    m_cursorStringMap.set(&quot;cursor/pointer&quot;, ECORE_X_CURSOR_LEFT_PTR);
&gt; 
&gt; I think it is better to list these cursor map up by alphabetical order.
It is ordered to match with Cursor::Type in Source/WebCore/platform/Cursor.h.
IMHO, keeping current order is easier to detect any changes of cursor.

&gt; 
&gt; &gt; Source/WebCore/platform/efl/WidgetEfl.cpp:-43
&gt; &gt; -
&gt; 
&gt; Do not remove code unrelated to this patch.
Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645725</commentid>
    <comment_count>7</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-06-10 22:03:32 -0700</bug_when>
    <thetext>Ok, Looks good to me now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645797</commentid>
    <comment_count>8</comment_count>
      <attachid>146773</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-11 00:41:35 -0700</bug_when>
    <thetext>Comment on attachment 146773
Patch

Clearing flags on attachment: 146773

Committed r119958: &lt;http://trac.webkit.org/changeset/119958&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>645798</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-11 00:41:41 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>146519</attachid>
            <date>2012-06-08 02:25:49 -0700</date>
            <delta_ts>2012-06-10 21:13:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-88633-20120608182547.patch</filename>
            <type>text/plain</type>
            <size>11305</size>
            <attacher name="Ryuan Choi">ryuan.choi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE5ODEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMmZlZTJhNDZmZWI2NzZi
N2U4MTQ4NzI1MzAzMzM1ZmIyZmZhZTM1Yy4uNGQzNmJhNDI1ODg3NjY1Zjc0MjZlMjE4NjZjMWFm
OGVkMTJjMzc0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEyLTA2LTA4ICBSeXVh
biBDaG9pICA8cnl1YW4uY2hvaUBzYW1zdW5nLmNvbT4KKworICAgICAgICBbRUZMXSBFeHRyYWN0
IEN1cnNvck1hcCBmcm9tIFdpZGdldEVmbC5jcHAuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD04ODYzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIEluIG9yZGVyIHRvIHNoYXJlIEN1cnNvck1hcCBpbiBXZWJL
aXQvZWZsIGFuZCBVSVByb2Nlc3Mgb2YgV2ViS2l0Mi9FZmwsCisgICAgICAgIEV4dHJhY3QgaXQg
YW5kIGV4cG9zZSBnZXRFY29yZUN1cnNvci4KKworICAgICAgICBObyBuZXcgdGVzdHM7IHJlZmFj
dG9yaW5nIG9ubHkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9lZmwvRWZsU2NyZWVuVXRpbGl0aWVz
LmNwcDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoQ3Vyc29yTWFwKToKKyAgICAgICAg
KFdlYkNvcmU6OkN1cnNvck1hcDo6Y3Vyc29yKToKKyAgICAgICAgKFdlYkNvcmU6OkN1cnNvck1h
cDo6Q3Vyc29yTWFwKToKKyAgICAgICAgKFdlYkNvcmU6OmdldEVjb3JlQ3Vyc29yKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9lZmwvRWZsU2NyZWVuVXRpbGl0aWVzLmg6CisgICAgICAgIChXZWJDb3Jl
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9lZmwvV2lkZ2V0RWZsLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OldpZGdldDo6YXBwbHlGYWxsYmFja0N1cnNvcik6CisKIDIwMTItMDYtMDggIEFkYW0gQmFy
dGggIDxhYmFydGhAd2Via2l0Lm9yZz4KIAogICAgICAgICBIVFRQIDIwNCBObyBDb250ZW50IHJl
c3BvbnNlcyBzaG91bGRuJ3QgdHJpZ2dlciBNSU1FIHR5cGUgd2FybmluZ3MgaW4gdGhlIHdlYiBp
bnNwZWN0b3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2VmbC9FZmxTY3Jl
ZW5VdGlsaXRpZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL0VmbFNjcmVlblV0
aWxpdGllcy5jcHAKaW5kZXggMTJkMjNmZmI3MGUyYWZhY2YyOTNkODQ2MGFjZjRiMmUyZDE4ZGZk
Yy4uN2VhN2I3ZTQ3YTU5NDhiNTQ3NDQxNzg0OWFmZDBjNTYwNDczMzdjMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL0VmbFNjcmVlblV0aWxpdGllcy5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL0VmbFNjcmVlblV0aWxpdGllcy5jcHAKQEAgLTIx
LDEwICsyMSw4NyBAQAogCiAjaWZkZWYgSEFWRV9FQ09SRV9YCiAjaW5jbHVkZSA8RWNvcmVfWC5o
PgorI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSGFz
aC5oPgogI2VuZGlmCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorI2lmZGVmIEhBVkVfRUNPUkVf
WAorY2xhc3MgQ3Vyc29yTWFwIHsKK3ByaXZhdGU6CisgICAgSGFzaE1hcDxTdHJpbmcsIHVuc2ln
bmVkIHNob3J0PiBtX2N1cnNvclN0cmluZ01hcDsKKworcHVibGljOgorICAgIEN1cnNvck1hcCgp
OworICAgIGludCBjdXJzb3IoY29uc3QgU3RyaW5nJik7Cit9OworCitpbnQgQ3Vyc29yTWFwOjpj
dXJzb3IoY29uc3QgU3RyaW5nJiBjdXJzb3JHcm91cCkKK3sKKyAgICBpbnQgcmV0ID0gbV9jdXJz
b3JTdHJpbmdNYXAuZ2V0KGN1cnNvckdyb3VwKTsKKworICAgIGlmIChyZXQgPCBFQ09SRV9YX0NV
UlNPUl9YIHx8IHJldCA+IEVDT1JFX1hfQ1VSU09SX1hURVJNKQorICAgICAgICByZXQgPSBFQ09S
RV9YX0NVUlNPUl9MRUZUX1BUUjsKKworICAgIHJldHVybiByZXQ7Cit9CisKK0N1cnNvck1hcDo6
Q3Vyc29yTWFwKCkKK3sKKyAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9wb2ludGVy
IiwgRUNPUkVfWF9DVVJTT1JfTEVGVF9QVFIpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgi
Y3Vyc29yL21vdmUiLCBFQ09SRV9YX0NVUlNPUl9GTEVVUik7CisgICAgbV9jdXJzb3JTdHJpbmdN
YXAuc2V0KCJjdXJzb3IvY3Jvc3MiLCBFQ09SRV9YX0NVUlNPUl9DUk9TUyk7CisgICAgbV9jdXJz
b3JTdHJpbmdNYXAuc2V0KCJjdXJzb3IvaGFuZCIsIEVDT1JFX1hfQ1VSU09SX0hBTkQyKTsKKyAg
ICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9pX2JlYW0iLCBFQ09SRV9YX0NVUlNPUl9Y
VEVSTSk7CisgICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivd2FpdCIsIEVDT1JFX1hf
Q1VSU09SX1dBVENIKTsKKyAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9oZWxwIiwg
RUNPUkVfWF9DVVJTT1JfUVVFU1RJT05fQVJST1cpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNl
dCgiY3Vyc29yL2Vhc3RfcmVzaXplIiwgRUNPUkVfWF9DVVJTT1JfUklHSFRfU0lERSk7CisgICAg
bV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivbm9ydGhfcmVzaXplIiwgRUNPUkVfWF9DVVJT
T1JfVE9QX1NJREUpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL25vcnRoX2Vh
c3RfcmVzaXplIiwgRUNPUkVfWF9DVVJTT1JfVE9QX1JJR0hUX0NPUk5FUik7CisgICAgbV9jdXJz
b3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivbm9ydGhfd2VzdF9yZXNpemUiLCBFQ09SRV9YX0NVUlNP
Ul9UT1BfTEVGVF9DT1JORVIpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL3Nv
dXRoX3Jlc2l6ZSIsIEVDT1JFX1hfQ1VSU09SX0JPVFRPTV9TSURFKTsKKyAgICBtX2N1cnNvclN0
cmluZ01hcC5zZXQoImN1cnNvci9zb3V0aF9lYXN0X3Jlc2l6ZSIsIEVDT1JFX1hfQ1VSU09SX0JP
VFRPTV9SSUdIVF9DT1JORVIpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL3Nv
dXRoX3dlc3RfcmVzaXplIiwgRUNPUkVfWF9DVVJTT1JfQk9UVE9NX0xFRlRfQ09STkVSKTsKKyAg
ICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci93ZXN0X3Jlc2l6ZSIsIEVDT1JFX1hfQ1VS
U09SX0xFRlRfU0lERSk7CisgICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivbm9ydGhf
c291dGhfcmVzaXplIiwgRUNPUkVfWF9DVVJTT1JfU0JfSF9ET1VCTEVfQVJST1cpOworICAgIG1f
Y3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL2Vhc3Rfd2VzdF9yZXNpemUiLCBFQ09SRV9YX0NV
UlNPUl9TQl9WX0RPVUJMRV9BUlJPVyk7CisgICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJz
b3Ivbm9ydGhfZWFzdF9zb3V0aF93ZXN0X3Jlc2l6ZSIsIEVDT1JFX1hfQ1VSU09SX1NJWklORyk7
CisgICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivbm9ydGhfd2VzdF9zb3V0aF9lYXN0
X3Jlc2l6ZSIsIEVDT1JFX1hfQ1VSU09SX1NJWklORyk7CisgICAgbV9jdXJzb3JTdHJpbmdNYXAu
c2V0KCJjdXJzb3IvY29sdW1uX3Jlc2l6ZSIsIEVDT1JFX1hfQ1VSU09SX1NCX1ZfRE9VQkxFX0FS
Uk9XKTsKKyAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9yb3dfcmVzaXplIiwgRUNP
UkVfWF9DVVJTT1JfU0JfSF9ET1VCTEVfQVJST1cpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNl
dCgiY3Vyc29yL21pZGRsZV9wYW5uaW5nIiwgIEVDT1JFX1hfQ1VSU09SX0NST1NTX1JFVkVSU0Up
OworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL2Vhc3RfcGFubmluZyIsIEVDT1JF
X1hfQ1VSU09SX0NST1NTX1JFVkVSU0UpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vy
c29yL25vcnRoX3Bhbm5pbmciLCBFQ09SRV9YX0NVUlNPUl9DUk9TU19SRVZFUlNFKTsKKyAgICBt
X2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9ub3J0aF9lYXN0X3Bhbm5pbmciLCBFQ09SRV9Y
X0NVUlNPUl9DUk9TU19SRVZFUlNFKTsKKyAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNv
ci9ub3J0aF93ZXN0X3Bhbm5pbmciLCBFQ09SRV9YX0NVUlNPUl9DUk9TU19SRVZFUlNFKTsKKyAg
ICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9zb3V0aF9wYW5uaW5nIiwgRUNPUkVfWF9D
VVJTT1JfQ1JPU1NfUkVWRVJTRSk7CisgICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Iv
c291dGhfZWFzdF9wYW5uaW5nIiwgRUNPUkVfWF9DVVJTT1JfQ1JPU1NfUkVWRVJTRSk7CisgICAg
bV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivc291dGhfd2VzdF9wYW5uaW5nIiwgRUNPUkVf
WF9DVVJTT1JfQ1JPU1NfUkVWRVJTRSk7CisgICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJz
b3Ivd2VzdF9wYW5uaW5nIiwgRUNPUkVfWF9DVVJTT1JfQ1JPU1NfUkVWRVJTRSk7CisgICAgbV9j
dXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3IvdmVydGljYWxfdGV4dCIsIEVDT1JFX1hfQ1VSU09S
X1NCX0RPV05fQVJST1cpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL2NlbGwi
LCBFQ09SRV9YX0NVUlNPUl9JQ09OKTsKKyAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNv
ci9jb250ZXh0X21lbnUiLCBFQ09SRV9YX0NVUlNPUl9IQU5EMik7CisgICAgbV9jdXJzb3JTdHJp
bmdNYXAuc2V0KCJjdXJzb3Ivbm9fZHJvcCIsIEVDT1JFX1hfQ1VSU09SX0RPVF9CT1hfTUFTSyk7
CisgICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3IvY29weSIsIEVDT1JFX1hfQ1VSU09S
X0lDT04pOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL3Byb2dyZXNzIiwgRUNP
UkVfWF9DVVJTT1JfV0FUQ0gpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL2Fs
aWFzIiwgRUNPUkVfWF9DVVJTT1JfTUFOKTsKKyAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1
cnNvci9ub25lIiwgRUNPUkVfWF9DVVJTT1JfWCk7CisgICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0
KCJjdXJzb3Ivbm90X2FsbG93ZWQiLCBFQ09SRV9YX0NVUlNPUl9YKTsKKyAgICBtX2N1cnNvclN0
cmluZ01hcC5zZXQoImN1cnNvci96b29tX2luIiwgRUNPUkVfWF9DVVJTT1JfRElBTU9ORF9DUk9T
Uyk7CisgICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivem9vbV9vdXQiLCBFQ09SRV9Y
X0NVUlNPUl9ESUFNT05EX0NST1NTKTsKKyAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNv
ci9ncmFiIiwgRUNPUkVfWF9DVVJTT1JfSEFORDIpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNl
dCgiY3Vyc29yL2dyYWJiaW5nIiwgRUNPUkVfWF9DVVJTT1JfSEFORDIpOworfQorCitpbnQgZ2V0
RWNvcmVDdXJzb3IoY29uc3QgU3RyaW5nJiBjdXJzb3JTdHJpbmcpCit7CisgICAgREVGSU5FX1NU
QVRJQ19MT0NBTChDdXJzb3JNYXAsIGN1cnNvclN0cmluZ01hcCwgKCkpOworCisgICAgcmV0dXJu
IGN1cnNvclN0cmluZ01hcC5jdXJzb3IoY3Vyc29yU3RyaW5nKTsKK30KKyNlbmRpZgorCiBpbnQg
Z2V0RFBJKCkKIHsKICNpZmRlZiBIQVZFX0VDT1JFX1gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2VmbC9FZmxTY3JlZW5VdGlsaXRpZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2VmbC9FZmxTY3JlZW5VdGlsaXRpZXMuaAppbmRleCBlOTJhZWUyMWZlMTk3NWJkYWVh
MWYwYWM0YjI5MDM2MjJkMTM0NDkzLi4xNDQ1YzIyNjZlYWI5NjYyMGZjMGQwM2ZjNmQ0MjdiOTNj
NTA2YTQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9lZmwvRWZsU2NyZWVu
VXRpbGl0aWVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL0VmbFNjcmVlblV0
aWxpdGllcy5oCkBAIC0xOSw4ICsxOSwxNCBAQAogI2lmbmRlZiBFZmxTY3JlZW5VdGlsaXRpZXNf
aAogI2RlZmluZSBFZmxTY3JlZW5VdGlsaXRpZXNfaAogCisjaW5jbHVkZSA8d3RmL3RleHQvV1RG
U3RyaW5nLmg+CisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorI2lmZGVmIEhBVkVfRUNPUkVfWAor
aW50IGdldEVjb3JlQ3Vyc29yKGNvbnN0IFN0cmluZyYgY3Vyc29yU3RyaW5nKTsKKyNlbmRpZgor
CiBpbnQgZ2V0RFBJKCk7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2VmbC9XaWRnZXRFZmwuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZWZsL1dpZGdldEVmbC5jcHAKaW5kZXggMDY0MTRlZDg1ZDJlYjc3ZjIzODk4YWRl
ZmJiZjk3Njk0MTMwM2I0Zi4uZDVlMjZiZTY5Mjc3YmNjOGYyZmZlM2ZiYWZjNDljYjNjYjZhZjgw
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL1dpZGdldEVmbC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL1dpZGdldEVmbC5jcHAKQEAgLTM0LDEz
ICszNCwxMyBAQAogCiAjaW5jbHVkZSAiQ2hyb21lQ2xpZW50LmgiCiAjaW5jbHVkZSAiQ3Vyc29y
LmgiCisjaW5jbHVkZSAiRWZsU2NyZWVuVXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIK
ICNpbmNsdWRlICJGcmFtZVZpZXcuaCIKICNpbmNsdWRlICJHcmFwaGljc0NvbnRleHQuaCIKICNp
bmNsdWRlICJJbnRSZWN0LmgiCiAjaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKICNpbmNsdWRl
ICJQYWdlLmgiCi0KICNpbmNsdWRlIDxFY29yZS5oPgogI2luY2x1ZGUgPEVjb3JlX0V2YXMuaD4K
ICNpbmNsdWRlIDxFZGplLmg+CkBAIC00OCw4NCArNDgsMTAgQEAKIAogI2lmZGVmIEhBVkVfRUNP
UkVfWAogI2luY2x1ZGUgPEVjb3JlX1guaD4KLSNpbmNsdWRlIDxFY29yZV9YX0N1cnNvci5oPgog
I2VuZGlmCiAKLSNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L0NT
dHJpbmcuaD4KLQogbmFtZXNwYWNlIFdlYkNvcmUgewogCi0jaWZkZWYgSEFWRV9FQ09SRV9YCi1j
bGFzcyBDdXJzb3JNYXAgewotcHJpdmF0ZToKLSAgICBIYXNoTWFwPFN0cmluZywgdW5zaWduZWQg
c2hvcnQ+IG1fY3Vyc29yU3RyaW5nTWFwOwotCi1wdWJsaWM6Ci0gICAgQ3Vyc29yTWFwKCk7Ci0g
ICAgdW5zaWduZWQgaW50IGN1cnNvcihTdHJpbmcpOwotfTsKLQotdW5zaWduZWQgaW50IEN1cnNv
ck1hcDo6Y3Vyc29yKFN0cmluZyBjdXJzb3JHcm91cCkKLXsKLSAgICBpbnQgcmV0ID0gbV9jdXJz
b3JTdHJpbmdNYXAuZ2V0KGN1cnNvckdyb3VwKTsKLQotICAgIGlmIChyZXQgPCBFQ09SRV9YX0NV
UlNPUl9YIHx8IHJldCA+IEVDT1JFX1hfQ1VSU09SX1hURVJNKQotICAgICAgICByZXQgPSBFQ09S
RV9YX0NVUlNPUl9MRUZUX1BUUjsKLQotICAgIHJldHVybiByZXQ7Ci19Ci0KLUN1cnNvck1hcDo6
Q3Vyc29yTWFwKCkKLXsKLSAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9wb2ludGVy
IiwgRUNPUkVfWF9DVVJTT1JfTEVGVF9QVFIpOwotICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgi
Y3Vyc29yL21vdmUiLCBFQ09SRV9YX0NVUlNPUl9GTEVVUik7Ci0gICAgbV9jdXJzb3JTdHJpbmdN
YXAuc2V0KCJjdXJzb3IvY3Jvc3MiLCBFQ09SRV9YX0NVUlNPUl9DUk9TUyk7Ci0gICAgbV9jdXJz
b3JTdHJpbmdNYXAuc2V0KCJjdXJzb3IvaGFuZCIsIEVDT1JFX1hfQ1VSU09SX0hBTkQyKTsKLSAg
ICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9pX2JlYW0iLCBFQ09SRV9YX0NVUlNPUl9Y
VEVSTSk7Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivd2FpdCIsIEVDT1JFX1hf
Q1VSU09SX1dBVENIKTsKLSAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9oZWxwIiwg
RUNPUkVfWF9DVVJTT1JfUVVFU1RJT05fQVJST1cpOwotICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNl
dCgiY3Vyc29yL2Vhc3RfcmVzaXplIiwgRUNPUkVfWF9DVVJTT1JfUklHSFRfU0lERSk7Ci0gICAg
bV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivbm9ydGhfcmVzaXplIiwgRUNPUkVfWF9DVVJT
T1JfVE9QX1NJREUpOwotICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL25vcnRoX2Vh
c3RfcmVzaXplIiwgRUNPUkVfWF9DVVJTT1JfVE9QX1JJR0hUX0NPUk5FUik7Ci0gICAgbV9jdXJz
b3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivbm9ydGhfd2VzdF9yZXNpemUiLCBFQ09SRV9YX0NVUlNP
Ul9UT1BfTEVGVF9DT1JORVIpOwotICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL3Nv
dXRoX3Jlc2l6ZSIsIEVDT1JFX1hfQ1VSU09SX0JPVFRPTV9TSURFKTsKLSAgICBtX2N1cnNvclN0
cmluZ01hcC5zZXQoImN1cnNvci9zb3V0aF9lYXN0X3Jlc2l6ZSIsIEVDT1JFX1hfQ1VSU09SX0JP
VFRPTV9SSUdIVF9DT1JORVIpOwotICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL3Nv
dXRoX3dlc3RfcmVzaXplIiwgRUNPUkVfWF9DVVJTT1JfQk9UVE9NX0xFRlRfQ09STkVSKTsKLSAg
ICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci93ZXN0X3Jlc2l6ZSIsIEVDT1JFX1hfQ1VS
U09SX0xFRlRfU0lERSk7Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivbm9ydGhf
c291dGhfcmVzaXplIiwgRUNPUkVfWF9DVVJTT1JfU0JfSF9ET1VCTEVfQVJST1cpOwotICAgIG1f
Y3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL2Vhc3Rfd2VzdF9yZXNpemUiLCBFQ09SRV9YX0NV
UlNPUl9TQl9WX0RPVUJMRV9BUlJPVyk7Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJz
b3Ivbm9ydGhfZWFzdF9zb3V0aF93ZXN0X3Jlc2l6ZSIsIEVDT1JFX1hfQ1VSU09SX1NJWklORyk7
Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivbm9ydGhfd2VzdF9zb3V0aF9lYXN0
X3Jlc2l6ZSIsIEVDT1JFX1hfQ1VSU09SX1NJWklORyk7Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAu
c2V0KCJjdXJzb3IvY29sdW1uX3Jlc2l6ZSIsIEVDT1JFX1hfQ1VSU09SX1NCX1ZfRE9VQkxFX0FS
Uk9XKTsKLSAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9yb3dfcmVzaXplIiwgRUNP
UkVfWF9DVVJTT1JfU0JfSF9ET1VCTEVfQVJST1cpOwotICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNl
dCgiY3Vyc29yL21pZGRsZV9wYW5uaW5nIiwgIEVDT1JFX1hfQ1VSU09SX0NST1NTX1JFVkVSU0Up
OwotICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL2Vhc3RfcGFubmluZyIsIEVDT1JF
X1hfQ1VSU09SX0NST1NTX1JFVkVSU0UpOwotICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vy
c29yL25vcnRoX3Bhbm5pbmciLCBFQ09SRV9YX0NVUlNPUl9DUk9TU19SRVZFUlNFKTsKLSAgICBt
X2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9ub3J0aF9lYXN0X3Bhbm5pbmciLCBFQ09SRV9Y
X0NVUlNPUl9DUk9TU19SRVZFUlNFKTsKLSAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNv
ci9ub3J0aF93ZXN0X3Bhbm5pbmciLCBFQ09SRV9YX0NVUlNPUl9DUk9TU19SRVZFUlNFKTsKLSAg
ICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9zb3V0aF9wYW5uaW5nIiwgRUNPUkVfWF9D
VVJTT1JfQ1JPU1NfUkVWRVJTRSk7Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Iv
c291dGhfZWFzdF9wYW5uaW5nIiwgRUNPUkVfWF9DVVJTT1JfQ1JPU1NfUkVWRVJTRSk7Ci0gICAg
bV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivc291dGhfd2VzdF9wYW5uaW5nIiwgRUNPUkVf
WF9DVVJTT1JfQ1JPU1NfUkVWRVJTRSk7Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJz
b3Ivd2VzdF9wYW5uaW5nIiwgRUNPUkVfWF9DVVJTT1JfQ1JPU1NfUkVWRVJTRSk7Ci0gICAgbV9j
dXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3IvdmVydGljYWxfdGV4dCIsIEVDT1JFX1hfQ1VSU09S
X1NCX0RPV05fQVJST1cpOwotICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL2NlbGwi
LCBFQ09SRV9YX0NVUlNPUl9JQ09OKTsKLSAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNv
ci9jb250ZXh0X21lbnUiLCBFQ09SRV9YX0NVUlNPUl9IQU5EMik7Ci0gICAgbV9jdXJzb3JTdHJp
bmdNYXAuc2V0KCJjdXJzb3Ivbm9fZHJvcCIsIEVDT1JFX1hfQ1VSU09SX0RPVF9CT1hfTUFTSyk7
Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3IvY29weSIsIEVDT1JFX1hfQ1VSU09S
X0lDT04pOwotICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL3Byb2dyZXNzIiwgRUNP
UkVfWF9DVVJTT1JfV0FUQ0gpOwotICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL2Fs
aWFzIiwgRUNPUkVfWF9DVVJTT1JfTUFOKTsKLSAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1
cnNvci9ub25lIiwgRUNPUkVfWF9DVVJTT1JfWCk7Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0
KCJjdXJzb3Ivbm90X2FsbG93ZWQiLCBFQ09SRV9YX0NVUlNPUl9YKTsKLSAgICBtX2N1cnNvclN0
cmluZ01hcC5zZXQoImN1cnNvci96b29tX2luIiwgRUNPUkVfWF9DVVJTT1JfRElBTU9ORF9DUk9T
Uyk7Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivem9vbV9vdXQiLCBFQ09SRV9Y
X0NVUlNPUl9ESUFNT05EX0NST1NTKTsKLSAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNv
ci9ncmFiIiwgRUNPUkVfWF9DVVJTT1JfSEFORDIpOwotICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNl
dCgiY3Vyc29yL2dyYWJiaW5nIiwgRUNPUkVfWF9DVVJTT1JfSEFORDIpOwotfQotCi1zdGF0aWMg
Q3Vyc29yTWFwIGN1cnNvclN0cmluZ01hcCA9IEN1cnNvck1hcCgpOwotI2VuZGlmCi0KIGNsYXNz
IFdpZGdldFByaXZhdGUgewogcHVibGljOgogICAgIEV2YXMqIG1fZXZhczsKQEAgLTIwOSw3ICsx
MzUsNyBAQCB2b2lkIFdpZGdldDo6YXBwbHlGYWxsYmFja0N1cnNvcigpCiB7CiAjaWZkZWYgSEFW
RV9FQ09SRV9YCiAgICAgaWYgKG1fZGF0YS0+bV9pc1VzaW5nRWNvcmVYICYmICFtX2RhdGEtPm1f
Y3Vyc29yR3JvdXAuaXNOdWxsKCkpIHsKLSAgICAgICAgaW50IHNoYXBlID0gY3Vyc29yU3RyaW5n
TWFwLmN1cnNvcihtX2RhdGEtPm1fY3Vyc29yR3JvdXAudXRmOCgpLmRhdGEoKSk7CisgICAgICAg
IGludCBzaGFwZSA9IGdldEVjb3JlQ3Vyc29yKG1fZGF0YS0+bV9jdXJzb3JHcm91cCk7CiAKICAg
ICAgICAgaWYgKHNoYXBlIDwgRUNPUkVfWF9DVVJTT1JfWCB8fCBzaGFwZSA+IEVDT1JFX1hfQ1VS
U09SX1hURVJNKSB7CiAgICAgICAgICAgICBMT0dfRVJST1IoImNhbm5vdCBtYXAgYW4gZXF1aXZh
bGVudCBYIGN1cnNvciBmb3IiCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>146773</attachid>
            <date>2012-06-10 21:13:22 -0700</date>
            <delta_ts>2012-06-11 00:41:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-88633-20120611131320.patch</filename>
            <type>text/plain</type>
            <size>11155</size>
            <attacher name="Ryuan Choi">ryuan.choi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE5OTQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjNjNzdmZjdhMWMwMmM5
YjY1MDhiNWQ2Y2Y1NGEyOTg2YjljZDc5ZC4uZGQzYjkzZGNmNTA5M2FlZDg5MzkzZjA1YmNmZjg1
OWMxMWE0ZGYyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEyLTA2LTEwICBSeXVh
biBDaG9pICA8cnl1YW4uY2hvaUBzYW1zdW5nLmNvbT4KKworICAgICAgICBbRUZMXSBFeHRyYWN0
IEN1cnNvck1hcCBmcm9tIFdpZGdldEVmbC5jcHAuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD04ODYzMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIEluIG9yZGVyIHRvIHNoYXJlIEN1cnNvck1hcCBpbiBXZWJL
aXQvZWZsIGFuZCBVSVByb2Nlc3Mgb2YgV2ViS2l0Mi9FZmwsCisgICAgICAgIGV4dHJhY3QgaXQg
YW5kIGV4cG9zZSBnZXRFY29yZUN1cnNvci4KKworICAgICAgICBObyBuZXcgdGVzdHMsIHJlZmFj
dG9yaW5nIG9ubHkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9lZmwvRWZsU2NyZWVuVXRpbGl0aWVz
LmNwcDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoQ3Vyc29yTWFwKToKKyAgICAgICAg
KFdlYkNvcmU6OkN1cnNvck1hcDo6Y3Vyc29yKToKKyAgICAgICAgKFdlYkNvcmU6OkN1cnNvck1h
cDo6Q3Vyc29yTWFwKToKKyAgICAgICAgKFdlYkNvcmU6OmdldEVjb3JlQ3Vyc29yKToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9lZmwvRWZsU2NyZWVuVXRpbGl0aWVzLmg6CisgICAgICAgIChXZWJDb3Jl
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9lZmwvV2lkZ2V0RWZsLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OldpZGdldDo6YXBwbHlGYWxsYmFja0N1cnNvcik6CisKIDIwMTItMDYtMTAgIEhheWF0byBJ
dG8gIDxoYXlhdG9AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEFuIGluaGVyaXRhbmNlIG9mICct
d2Via2l0LXVzZXItbW9kaWZ5JyBkb2VzIG5vdCBzdG9wIGF0IHNoYWRvdyBib3VuZGFyeS4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2VmbC9FZmxTY3JlZW5VdGlsaXRpZXMu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL0VmbFNjcmVlblV0aWxpdGllcy5jcHAK
aW5kZXggMTJkMjNmZmI3MGUyYWZhY2YyOTNkODQ2MGFjZjRiMmUyZDE4ZGZkYy4uN2VhN2I3ZTQ3
YTU5NDhiNTQ3NDQxNzg0OWFmZDBjNTYwNDczMzdjMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZWZsL0VmbFNjcmVlblV0aWxpdGllcy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZWZsL0VmbFNjcmVlblV0aWxpdGllcy5jcHAKQEAgLTIxLDEwICsyMSw4NyBA
QAogCiAjaWZkZWYgSEFWRV9FQ09SRV9YCiAjaW5jbHVkZSA8RWNvcmVfWC5oPgorI2luY2x1ZGUg
PHd0Zi9IYXNoTWFwLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSGFzaC5oPgogI2VuZGlm
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorI2lmZGVmIEhBVkVfRUNPUkVfWAorY2xhc3MgQ3Vy
c29yTWFwIHsKK3ByaXZhdGU6CisgICAgSGFzaE1hcDxTdHJpbmcsIHVuc2lnbmVkIHNob3J0PiBt
X2N1cnNvclN0cmluZ01hcDsKKworcHVibGljOgorICAgIEN1cnNvck1hcCgpOworICAgIGludCBj
dXJzb3IoY29uc3QgU3RyaW5nJik7Cit9OworCitpbnQgQ3Vyc29yTWFwOjpjdXJzb3IoY29uc3Qg
U3RyaW5nJiBjdXJzb3JHcm91cCkKK3sKKyAgICBpbnQgcmV0ID0gbV9jdXJzb3JTdHJpbmdNYXAu
Z2V0KGN1cnNvckdyb3VwKTsKKworICAgIGlmIChyZXQgPCBFQ09SRV9YX0NVUlNPUl9YIHx8IHJl
dCA+IEVDT1JFX1hfQ1VSU09SX1hURVJNKQorICAgICAgICByZXQgPSBFQ09SRV9YX0NVUlNPUl9M
RUZUX1BUUjsKKworICAgIHJldHVybiByZXQ7Cit9CisKK0N1cnNvck1hcDo6Q3Vyc29yTWFwKCkK
K3sKKyAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9wb2ludGVyIiwgRUNPUkVfWF9D
VVJTT1JfTEVGVF9QVFIpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL21vdmUi
LCBFQ09SRV9YX0NVUlNPUl9GTEVVUik7CisgICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJz
b3IvY3Jvc3MiLCBFQ09SRV9YX0NVUlNPUl9DUk9TUyk7CisgICAgbV9jdXJzb3JTdHJpbmdNYXAu
c2V0KCJjdXJzb3IvaGFuZCIsIEVDT1JFX1hfQ1VSU09SX0hBTkQyKTsKKyAgICBtX2N1cnNvclN0
cmluZ01hcC5zZXQoImN1cnNvci9pX2JlYW0iLCBFQ09SRV9YX0NVUlNPUl9YVEVSTSk7CisgICAg
bV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivd2FpdCIsIEVDT1JFX1hfQ1VSU09SX1dBVENI
KTsKKyAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9oZWxwIiwgRUNPUkVfWF9DVVJT
T1JfUVVFU1RJT05fQVJST1cpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL2Vh
c3RfcmVzaXplIiwgRUNPUkVfWF9DVVJTT1JfUklHSFRfU0lERSk7CisgICAgbV9jdXJzb3JTdHJp
bmdNYXAuc2V0KCJjdXJzb3Ivbm9ydGhfcmVzaXplIiwgRUNPUkVfWF9DVVJTT1JfVE9QX1NJREUp
OworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL25vcnRoX2Vhc3RfcmVzaXplIiwg
RUNPUkVfWF9DVVJTT1JfVE9QX1JJR0hUX0NPUk5FUik7CisgICAgbV9jdXJzb3JTdHJpbmdNYXAu
c2V0KCJjdXJzb3Ivbm9ydGhfd2VzdF9yZXNpemUiLCBFQ09SRV9YX0NVUlNPUl9UT1BfTEVGVF9D
T1JORVIpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL3NvdXRoX3Jlc2l6ZSIs
IEVDT1JFX1hfQ1VSU09SX0JPVFRPTV9TSURFKTsKKyAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQo
ImN1cnNvci9zb3V0aF9lYXN0X3Jlc2l6ZSIsIEVDT1JFX1hfQ1VSU09SX0JPVFRPTV9SSUdIVF9D
T1JORVIpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL3NvdXRoX3dlc3RfcmVz
aXplIiwgRUNPUkVfWF9DVVJTT1JfQk9UVE9NX0xFRlRfQ09STkVSKTsKKyAgICBtX2N1cnNvclN0
cmluZ01hcC5zZXQoImN1cnNvci93ZXN0X3Jlc2l6ZSIsIEVDT1JFX1hfQ1VSU09SX0xFRlRfU0lE
RSk7CisgICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivbm9ydGhfc291dGhfcmVzaXpl
IiwgRUNPUkVfWF9DVVJTT1JfU0JfSF9ET1VCTEVfQVJST1cpOworICAgIG1fY3Vyc29yU3RyaW5n
TWFwLnNldCgiY3Vyc29yL2Vhc3Rfd2VzdF9yZXNpemUiLCBFQ09SRV9YX0NVUlNPUl9TQl9WX0RP
VUJMRV9BUlJPVyk7CisgICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivbm9ydGhfZWFz
dF9zb3V0aF93ZXN0X3Jlc2l6ZSIsIEVDT1JFX1hfQ1VSU09SX1NJWklORyk7CisgICAgbV9jdXJz
b3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivbm9ydGhfd2VzdF9zb3V0aF9lYXN0X3Jlc2l6ZSIsIEVD
T1JFX1hfQ1VSU09SX1NJWklORyk7CisgICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Iv
Y29sdW1uX3Jlc2l6ZSIsIEVDT1JFX1hfQ1VSU09SX1NCX1ZfRE9VQkxFX0FSUk9XKTsKKyAgICBt
X2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9yb3dfcmVzaXplIiwgRUNPUkVfWF9DVVJTT1Jf
U0JfSF9ET1VCTEVfQVJST1cpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL21p
ZGRsZV9wYW5uaW5nIiwgIEVDT1JFX1hfQ1VSU09SX0NST1NTX1JFVkVSU0UpOworICAgIG1fY3Vy
c29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL2Vhc3RfcGFubmluZyIsIEVDT1JFX1hfQ1VSU09SX0NS
T1NTX1JFVkVSU0UpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL25vcnRoX3Bh
bm5pbmciLCBFQ09SRV9YX0NVUlNPUl9DUk9TU19SRVZFUlNFKTsKKyAgICBtX2N1cnNvclN0cmlu
Z01hcC5zZXQoImN1cnNvci9ub3J0aF9lYXN0X3Bhbm5pbmciLCBFQ09SRV9YX0NVUlNPUl9DUk9T
U19SRVZFUlNFKTsKKyAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9ub3J0aF93ZXN0
X3Bhbm5pbmciLCBFQ09SRV9YX0NVUlNPUl9DUk9TU19SRVZFUlNFKTsKKyAgICBtX2N1cnNvclN0
cmluZ01hcC5zZXQoImN1cnNvci9zb3V0aF9wYW5uaW5nIiwgRUNPUkVfWF9DVVJTT1JfQ1JPU1Nf
UkVWRVJTRSk7CisgICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivc291dGhfZWFzdF9w
YW5uaW5nIiwgRUNPUkVfWF9DVVJTT1JfQ1JPU1NfUkVWRVJTRSk7CisgICAgbV9jdXJzb3JTdHJp
bmdNYXAuc2V0KCJjdXJzb3Ivc291dGhfd2VzdF9wYW5uaW5nIiwgRUNPUkVfWF9DVVJTT1JfQ1JP
U1NfUkVWRVJTRSk7CisgICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivd2VzdF9wYW5u
aW5nIiwgRUNPUkVfWF9DVVJTT1JfQ1JPU1NfUkVWRVJTRSk7CisgICAgbV9jdXJzb3JTdHJpbmdN
YXAuc2V0KCJjdXJzb3IvdmVydGljYWxfdGV4dCIsIEVDT1JFX1hfQ1VSU09SX1NCX0RPV05fQVJS
T1cpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL2NlbGwiLCBFQ09SRV9YX0NV
UlNPUl9JQ09OKTsKKyAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9jb250ZXh0X21l
bnUiLCBFQ09SRV9YX0NVUlNPUl9IQU5EMik7CisgICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJj
dXJzb3Ivbm9fZHJvcCIsIEVDT1JFX1hfQ1VSU09SX0RPVF9CT1hfTUFTSyk7CisgICAgbV9jdXJz
b3JTdHJpbmdNYXAuc2V0KCJjdXJzb3IvY29weSIsIEVDT1JFX1hfQ1VSU09SX0lDT04pOworICAg
IG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL3Byb2dyZXNzIiwgRUNPUkVfWF9DVVJTT1Jf
V0FUQ0gpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL2FsaWFzIiwgRUNPUkVf
WF9DVVJTT1JfTUFOKTsKKyAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9ub25lIiwg
RUNPUkVfWF9DVVJTT1JfWCk7CisgICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivbm90
X2FsbG93ZWQiLCBFQ09SRV9YX0NVUlNPUl9YKTsKKyAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQo
ImN1cnNvci96b29tX2luIiwgRUNPUkVfWF9DVVJTT1JfRElBTU9ORF9DUk9TUyk7CisgICAgbV9j
dXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivem9vbV9vdXQiLCBFQ09SRV9YX0NVUlNPUl9ESUFN
T05EX0NST1NTKTsKKyAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9ncmFiIiwgRUNP
UkVfWF9DVVJTT1JfSEFORDIpOworICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL2dy
YWJiaW5nIiwgRUNPUkVfWF9DVVJTT1JfSEFORDIpOworfQorCitpbnQgZ2V0RWNvcmVDdXJzb3Io
Y29uc3QgU3RyaW5nJiBjdXJzb3JTdHJpbmcpCit7CisgICAgREVGSU5FX1NUQVRJQ19MT0NBTChD
dXJzb3JNYXAsIGN1cnNvclN0cmluZ01hcCwgKCkpOworCisgICAgcmV0dXJuIGN1cnNvclN0cmlu
Z01hcC5jdXJzb3IoY3Vyc29yU3RyaW5nKTsKK30KKyNlbmRpZgorCiBpbnQgZ2V0RFBJKCkKIHsK
ICNpZmRlZiBIQVZFX0VDT1JFX1gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2VmbC9FZmxTY3JlZW5VdGlsaXRpZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2VmbC9F
ZmxTY3JlZW5VdGlsaXRpZXMuaAppbmRleCBlOTJhZWUyMWZlMTk3NWJkYWVhMWYwYWM0YjI5MDM2
MjJkMTM0NDkzLi4xNDQ1YzIyNjZlYWI5NjYyMGZjMGQwM2ZjNmQ0MjdiOTNjNTA2YTQzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9lZmwvRWZsU2NyZWVuVXRpbGl0aWVzLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL0VmbFNjcmVlblV0aWxpdGllcy5oCkBA
IC0xOSw4ICsxOSwxNCBAQAogI2lmbmRlZiBFZmxTY3JlZW5VdGlsaXRpZXNfaAogI2RlZmluZSBF
ZmxTY3JlZW5VdGlsaXRpZXNfaAogCisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorI2lmZGVmIEhBVkVfRUNPUkVfWAoraW50IGdldEVjb3Jl
Q3Vyc29yKGNvbnN0IFN0cmluZyYgY3Vyc29yU3RyaW5nKTsKKyNlbmRpZgorCiBpbnQgZ2V0RFBJ
KCk7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2VmbC9XaWRnZXRFZmwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZs
L1dpZGdldEVmbC5jcHAKaW5kZXggMDY0MTRlZDg1ZDJlYjc3ZjIzODk4YWRlZmJiZjk3Njk0MTMw
M2I0Zi4uNzE0MGQ2OWYyMzNlOGQ1OTU0NmJhMjQ5NGJjYTViYmNhMWVhYTg4ZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL1dpZGdldEVmbC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZWZsL1dpZGdldEVmbC5jcHAKQEAgLTM0LDYgKzM0LDcgQEAKIAog
I2luY2x1ZGUgIkNocm9tZUNsaWVudC5oIgogI2luY2x1ZGUgIkN1cnNvci5oIgorI2luY2x1ZGUg
IkVmbFNjcmVlblV0aWxpdGllcy5oIgogI2luY2x1ZGUgIkZyYW1lLmgiCiAjaW5jbHVkZSAiRnJh
bWVWaWV3LmgiCiAjaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0LmgiCkBAIC00OCw4NCArNDksMTAg
QEAKIAogI2lmZGVmIEhBVkVfRUNPUkVfWAogI2luY2x1ZGUgPEVjb3JlX1guaD4KLSNpbmNsdWRl
IDxFY29yZV9YX0N1cnNvci5oPgogI2VuZGlmCiAKLSNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgot
I2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KLQogbmFtZXNwYWNlIFdlYkNvcmUgewogCi0j
aWZkZWYgSEFWRV9FQ09SRV9YCi1jbGFzcyBDdXJzb3JNYXAgewotcHJpdmF0ZToKLSAgICBIYXNo
TWFwPFN0cmluZywgdW5zaWduZWQgc2hvcnQ+IG1fY3Vyc29yU3RyaW5nTWFwOwotCi1wdWJsaWM6
Ci0gICAgQ3Vyc29yTWFwKCk7Ci0gICAgdW5zaWduZWQgaW50IGN1cnNvcihTdHJpbmcpOwotfTsK
LQotdW5zaWduZWQgaW50IEN1cnNvck1hcDo6Y3Vyc29yKFN0cmluZyBjdXJzb3JHcm91cCkKLXsK
LSAgICBpbnQgcmV0ID0gbV9jdXJzb3JTdHJpbmdNYXAuZ2V0KGN1cnNvckdyb3VwKTsKLQotICAg
IGlmIChyZXQgPCBFQ09SRV9YX0NVUlNPUl9YIHx8IHJldCA+IEVDT1JFX1hfQ1VSU09SX1hURVJN
KQotICAgICAgICByZXQgPSBFQ09SRV9YX0NVUlNPUl9MRUZUX1BUUjsKLQotICAgIHJldHVybiBy
ZXQ7Ci19Ci0KLUN1cnNvck1hcDo6Q3Vyc29yTWFwKCkKLXsKLSAgICBtX2N1cnNvclN0cmluZ01h
cC5zZXQoImN1cnNvci9wb2ludGVyIiwgRUNPUkVfWF9DVVJTT1JfTEVGVF9QVFIpOwotICAgIG1f
Y3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL21vdmUiLCBFQ09SRV9YX0NVUlNPUl9GTEVVUik7
Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3IvY3Jvc3MiLCBFQ09SRV9YX0NVUlNP
Ul9DUk9TUyk7Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3IvaGFuZCIsIEVDT1JF
X1hfQ1VSU09SX0hBTkQyKTsKLSAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9pX2Jl
YW0iLCBFQ09SRV9YX0NVUlNPUl9YVEVSTSk7Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJj
dXJzb3Ivd2FpdCIsIEVDT1JFX1hfQ1VSU09SX1dBVENIKTsKLSAgICBtX2N1cnNvclN0cmluZ01h
cC5zZXQoImN1cnNvci9oZWxwIiwgRUNPUkVfWF9DVVJTT1JfUVVFU1RJT05fQVJST1cpOwotICAg
IG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL2Vhc3RfcmVzaXplIiwgRUNPUkVfWF9DVVJT
T1JfUklHSFRfU0lERSk7Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivbm9ydGhf
cmVzaXplIiwgRUNPUkVfWF9DVVJTT1JfVE9QX1NJREUpOwotICAgIG1fY3Vyc29yU3RyaW5nTWFw
LnNldCgiY3Vyc29yL25vcnRoX2Vhc3RfcmVzaXplIiwgRUNPUkVfWF9DVVJTT1JfVE9QX1JJR0hU
X0NPUk5FUik7Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivbm9ydGhfd2VzdF9y
ZXNpemUiLCBFQ09SRV9YX0NVUlNPUl9UT1BfTEVGVF9DT1JORVIpOwotICAgIG1fY3Vyc29yU3Ry
aW5nTWFwLnNldCgiY3Vyc29yL3NvdXRoX3Jlc2l6ZSIsIEVDT1JFX1hfQ1VSU09SX0JPVFRPTV9T
SURFKTsKLSAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9zb3V0aF9lYXN0X3Jlc2l6
ZSIsIEVDT1JFX1hfQ1VSU09SX0JPVFRPTV9SSUdIVF9DT1JORVIpOwotICAgIG1fY3Vyc29yU3Ry
aW5nTWFwLnNldCgiY3Vyc29yL3NvdXRoX3dlc3RfcmVzaXplIiwgRUNPUkVfWF9DVVJTT1JfQk9U
VE9NX0xFRlRfQ09STkVSKTsKLSAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci93ZXN0
X3Jlc2l6ZSIsIEVDT1JFX1hfQ1VSU09SX0xFRlRfU0lERSk7Ci0gICAgbV9jdXJzb3JTdHJpbmdN
YXAuc2V0KCJjdXJzb3Ivbm9ydGhfc291dGhfcmVzaXplIiwgRUNPUkVfWF9DVVJTT1JfU0JfSF9E
T1VCTEVfQVJST1cpOwotICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL2Vhc3Rfd2Vz
dF9yZXNpemUiLCBFQ09SRV9YX0NVUlNPUl9TQl9WX0RPVUJMRV9BUlJPVyk7Ci0gICAgbV9jdXJz
b3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivbm9ydGhfZWFzdF9zb3V0aF93ZXN0X3Jlc2l6ZSIsIEVD
T1JFX1hfQ1VSU09SX1NJWklORyk7Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Iv
bm9ydGhfd2VzdF9zb3V0aF9lYXN0X3Jlc2l6ZSIsIEVDT1JFX1hfQ1VSU09SX1NJWklORyk7Ci0g
ICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3IvY29sdW1uX3Jlc2l6ZSIsIEVDT1JFX1hf
Q1VSU09SX1NCX1ZfRE9VQkxFX0FSUk9XKTsKLSAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1
cnNvci9yb3dfcmVzaXplIiwgRUNPUkVfWF9DVVJTT1JfU0JfSF9ET1VCTEVfQVJST1cpOwotICAg
IG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL21pZGRsZV9wYW5uaW5nIiwgIEVDT1JFX1hf
Q1VSU09SX0NST1NTX1JFVkVSU0UpOwotICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29y
L2Vhc3RfcGFubmluZyIsIEVDT1JFX1hfQ1VSU09SX0NST1NTX1JFVkVSU0UpOwotICAgIG1fY3Vy
c29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL25vcnRoX3Bhbm5pbmciLCBFQ09SRV9YX0NVUlNPUl9D
Uk9TU19SRVZFUlNFKTsKLSAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9ub3J0aF9l
YXN0X3Bhbm5pbmciLCBFQ09SRV9YX0NVUlNPUl9DUk9TU19SRVZFUlNFKTsKLSAgICBtX2N1cnNv
clN0cmluZ01hcC5zZXQoImN1cnNvci9ub3J0aF93ZXN0X3Bhbm5pbmciLCBFQ09SRV9YX0NVUlNP
Ul9DUk9TU19SRVZFUlNFKTsKLSAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9zb3V0
aF9wYW5uaW5nIiwgRUNPUkVfWF9DVVJTT1JfQ1JPU1NfUkVWRVJTRSk7Ci0gICAgbV9jdXJzb3JT
dHJpbmdNYXAuc2V0KCJjdXJzb3Ivc291dGhfZWFzdF9wYW5uaW5nIiwgRUNPUkVfWF9DVVJTT1Jf
Q1JPU1NfUkVWRVJTRSk7Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivc291dGhf
d2VzdF9wYW5uaW5nIiwgRUNPUkVfWF9DVVJTT1JfQ1JPU1NfUkVWRVJTRSk7Ci0gICAgbV9jdXJz
b3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivd2VzdF9wYW5uaW5nIiwgRUNPUkVfWF9DVVJTT1JfQ1JP
U1NfUkVWRVJTRSk7Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3IvdmVydGljYWxf
dGV4dCIsIEVDT1JFX1hfQ1VSU09SX1NCX0RPV05fQVJST1cpOwotICAgIG1fY3Vyc29yU3RyaW5n
TWFwLnNldCgiY3Vyc29yL2NlbGwiLCBFQ09SRV9YX0NVUlNPUl9JQ09OKTsKLSAgICBtX2N1cnNv
clN0cmluZ01hcC5zZXQoImN1cnNvci9jb250ZXh0X21lbnUiLCBFQ09SRV9YX0NVUlNPUl9IQU5E
Mik7Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivbm9fZHJvcCIsIEVDT1JFX1hf
Q1VSU09SX0RPVF9CT1hfTUFTSyk7Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Iv
Y29weSIsIEVDT1JFX1hfQ1VSU09SX0lDT04pOwotICAgIG1fY3Vyc29yU3RyaW5nTWFwLnNldCgi
Y3Vyc29yL3Byb2dyZXNzIiwgRUNPUkVfWF9DVVJTT1JfV0FUQ0gpOwotICAgIG1fY3Vyc29yU3Ry
aW5nTWFwLnNldCgiY3Vyc29yL2FsaWFzIiwgRUNPUkVfWF9DVVJTT1JfTUFOKTsKLSAgICBtX2N1
cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci9ub25lIiwgRUNPUkVfWF9DVVJTT1JfWCk7Ci0gICAg
bV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJzb3Ivbm90X2FsbG93ZWQiLCBFQ09SRV9YX0NVUlNP
Ul9YKTsKLSAgICBtX2N1cnNvclN0cmluZ01hcC5zZXQoImN1cnNvci96b29tX2luIiwgRUNPUkVf
WF9DVVJTT1JfRElBTU9ORF9DUk9TUyk7Ci0gICAgbV9jdXJzb3JTdHJpbmdNYXAuc2V0KCJjdXJz
b3Ivem9vbV9vdXQiLCBFQ09SRV9YX0NVUlNPUl9ESUFNT05EX0NST1NTKTsKLSAgICBtX2N1cnNv
clN0cmluZ01hcC5zZXQoImN1cnNvci9ncmFiIiwgRUNPUkVfWF9DVVJTT1JfSEFORDIpOwotICAg
IG1fY3Vyc29yU3RyaW5nTWFwLnNldCgiY3Vyc29yL2dyYWJiaW5nIiwgRUNPUkVfWF9DVVJTT1Jf
SEFORDIpOwotfQotCi1zdGF0aWMgQ3Vyc29yTWFwIGN1cnNvclN0cmluZ01hcCA9IEN1cnNvck1h
cCgpOwotI2VuZGlmCi0KIGNsYXNzIFdpZGdldFByaXZhdGUgewogcHVibGljOgogICAgIEV2YXMq
IG1fZXZhczsKQEAgLTIwOSw3ICsxMzYsNyBAQCB2b2lkIFdpZGdldDo6YXBwbHlGYWxsYmFja0N1
cnNvcigpCiB7CiAjaWZkZWYgSEFWRV9FQ09SRV9YCiAgICAgaWYgKG1fZGF0YS0+bV9pc1VzaW5n
RWNvcmVYICYmICFtX2RhdGEtPm1fY3Vyc29yR3JvdXAuaXNOdWxsKCkpIHsKLSAgICAgICAgaW50
IHNoYXBlID0gY3Vyc29yU3RyaW5nTWFwLmN1cnNvcihtX2RhdGEtPm1fY3Vyc29yR3JvdXAudXRm
OCgpLmRhdGEoKSk7CisgICAgICAgIGludCBzaGFwZSA9IGdldEVjb3JlQ3Vyc29yKG1fZGF0YS0+
bV9jdXJzb3JHcm91cCk7CiAKICAgICAgICAgaWYgKHNoYXBlIDwgRUNPUkVfWF9DVVJTT1JfWCB8
fCBzaGFwZSA+IEVDT1JFX1hfQ1VSU09SX1hURVJNKSB7CiAgICAgICAgICAgICBMT0dfRVJST1Io
ImNhbm5vdCBtYXAgYW4gZXF1aXZhbGVudCBYIGN1cnNvciBmb3IiCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>