<?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>120346</bug_id>
          
          <creation_ts>2013-08-27 01:49:19 -0700</creation_ts>
          <short_desc>[cairo] ShadowBlur is extremely slow when canvas&apos;s scale is very small.</short_desc>
          <delta_ts>2018-08-11 03:33:17 -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>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>UNCONFIRMED</bug_status>
          <resolution></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>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Yonggeol Jung">yg48.jung</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>aperez</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>commit-queue</cc>
    
    <cc>lucas.de.marchi</cc>
    
    <cc>noam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>921378</commentid>
    <comment_count>0</comment_count>
    <who name="Yonggeol Jung">yg48.jung</who>
    <bug_when>2013-08-27 01:49:19 -0700</bug_when>
    <thetext>ShadowBlur drawing is too slow if scale of canvas is set to very small value such as 0.01.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921384</commentid>
    <comment_count>1</comment_count>
      <attachid>209729</attachid>
    <who name="Yonggeol Jung">yg48.jung</who>
    <bug_when>2013-08-27 01:57:12 -0700</bug_when>
    <thetext>Created attachment 209729
testcase

This is test file for this problem.

It draws (10000 X 10000) size rectangle with shadowblur(100).
And canvas&apos;s scale is set to 0.01.

You can see this problem at 5&apos;th test of &quot;http://www.kevs3d.co.uk/dev/canvasmark/&quot; also.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921391</commentid>
    <comment_count>2</comment_count>
      <attachid>209730</attachid>
    <who name="Yonggeol Jung">yg48.jung</who>
    <bug_when>2013-08-27 02:15:30 -0700</bug_when>
    <thetext>Created attachment 209730
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921394</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-08-27 02:17:35 -0700</bug_when>
    <thetext>Attachment 209730 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCore/platform/graphics/ShadowBlur.cpp&apos;, u&apos;Source/WebCore/platform/graphics/ShadowBlur.h&apos;]&quot; exit_code: 1
Source/WebCore/ChangeLog:11:  Line contains tab character.  [whitespace/tab] [5]
Total errors found: 1 in 3 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921400</commentid>
    <comment_count>4</comment_count>
      <attachid>209733</attachid>
    <who name="Yonggeol Jung">yg48.jung</who>
    <bug_when>2013-08-27 02:22:30 -0700</bug_when>
    <thetext>Created attachment 209733
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921402</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-08-27 02:25:12 -0700</bug_when>
    <thetext>Attachment 209733 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCore/platform/graphics/ShadowBlur.cpp&apos;, u&apos;Source/WebCore/platform/graphics/ShadowBlur.h&apos;]&quot; exit_code: 1
Source/WebCore/ChangeLog:11:  Line contains tab character.  [whitespace/tab] [5]
Total errors found: 1 in 3 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921404</commentid>
    <comment_count>6</comment_count>
      <attachid>209735</attachid>
    <who name="Yonggeol Jung">yg48.jung</who>
    <bug_when>2013-08-27 02:26:04 -0700</bug_when>
    <thetext>Created attachment 209735
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921405</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-08-27 02:28:15 -0700</bug_when>
    <thetext>Attachment 209735 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCore/platform/graphics/ShadowBlur.cpp&apos;, u&apos;Source/WebCore/platform/graphics/ShadowBlur.h&apos;]&quot; exit_code: 1
Source/WebCore/ChangeLog:11:  Line contains tab character.  [whitespace/tab] [5]
Total errors found: 1 in 3 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921406</commentid>
    <comment_count>8</comment_count>
      <attachid>209736</attachid>
    <who name="Yonggeol Jung">yg48.jung</who>
    <bug_when>2013-08-27 02:30:17 -0700</bug_when>
    <thetext>Created attachment 209736
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921410</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-08-27 02:33:05 -0700</bug_when>
    <thetext>Attachment 209736 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCore/platform/graphics/ShadowBlur.cpp&apos;, u&apos;Source/WebCore/platform/graphics/ShadowBlur.h&apos;]&quot; exit_code: 1
Source/WebCore/ChangeLog:11:  Line contains tab character.  [whitespace/tab] [5]
Total errors found: 1 in 3 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>921414</commentid>
    <comment_count>10</comment_count>
      <attachid>209738</attachid>
    <who name="Yonggeol Jung">yg48.jung</who>
    <bug_when>2013-08-27 02:41:17 -0700</bug_when>
    <thetext>Created attachment 209738
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>928144</commentid>
    <comment_count>11</comment_count>
      <attachid>211396</attachid>
    <who name="Yonggeol Jung">yg48.jung</who>
    <bug_when>2013-09-11 21:55:21 -0700</bug_when>
    <thetext>Created attachment 211396
Offset issue is fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>940395</commentid>
    <comment_count>12</comment_count>
      <attachid>211396</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2013-10-16 09:10:05 -0700</bug_when>
    <thetext>Comment on attachment 211396
Offset issue is fixed.

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

This is a good catch, but the patch is hard to understand and needs to be a lot clearer.

&gt; Source/WebCore/ChangeLog:11
&gt; +        ShadowBlur drawing is too slow if scale of canvas is set to very small value such as 0.01.
&gt; +        The main reason is blurRadius gets huge value if scale is small.
&gt; +        If shadow value is 100 with 0.01 scale value, blurRadius will be 10000.
&gt; +        Almost time is consumed to make blurred-layer.

This ChangeLog is written with poor English. Please improve.
Also though you&apos;re describing the problem, you&apos;re not at all describing the solution.

&gt; Source/WebCore/platform/graphics/ShadowBlur.cpp:402
&gt; +    const AffineTransform transform = context-&gt;getCTM();

No need for const

&gt; Source/WebCore/platform/graphics/ShadowBlur.cpp:403
&gt; +    if (m_shadowsIgnoreTransforms &amp;&amp; !transform.isIdentity() &amp;&amp; transform.xScale() &lt; 1 &amp;&amp; transform.yScale() &lt; 1)

We should exit early on m_shadowsIgnoreTransforms before we get the CTM from the context.

&gt; Source/WebCore/platform/graphics/ShadowBlur.cpp:420
&gt; +        if (scaledBlurLayer)
&gt; +            transform.scale(1 / transform.xScale(), 1 / transform.yScale());

What does this do? maybe a comment is in place? at least the changelog should describe this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>940677</commentid>
    <comment_count>13</comment_count>
      <attachid>214427</attachid>
    <who name="Yonggeol Jung">yg48.jung</who>
    <bug_when>2013-10-17 00:30:26 -0700</bug_when>
    <thetext>Created attachment 214427
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>940678</commentid>
    <comment_count>14</comment_count>
    <who name="Yonggeol Jung">yg48.jung</who>
    <bug_when>2013-10-17 00:34:12 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; (From update of attachment 211396 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=211396&amp;action=review
&gt; 
&gt; This is a good catch, but the patch is hard to understand and needs to be a lot clearer.

Thanks for review.

&gt; 
&gt; &gt; Source/WebCore/ChangeLog:11
&gt; &gt; +        ShadowBlur drawing is too slow if scale of canvas is set to very small value such as 0.01.
&gt; &gt; +        The main reason is blurRadius gets huge value if scale is small.
&gt; &gt; +        If shadow value is 100 with 0.01 scale value, blurRadius will be 10000.
&gt; &gt; +        Almost time is consumed to make blurred-layer.
&gt; 
&gt; This ChangeLog is written with poor English. Please improve.
&gt; Also though you&apos;re describing the problem, you&apos;re not at all describing the solution.

done.
 
&gt; &gt; Source/WebCore/platform/graphics/ShadowBlur.cpp:402
&gt; &gt; +    const AffineTransform transform = context-&gt;getCTM();
&gt; 
&gt; No need for const
&gt; 

done.

&gt; &gt; Source/WebCore/platform/graphics/ShadowBlur.cpp:403
&gt; &gt; +    if (m_shadowsIgnoreTransforms &amp;&amp; !transform.isIdentity() &amp;&amp; transform.xScale() &lt; 1 &amp;&amp; transform.yScale() &lt; 1)
&gt; 
&gt; We should exit early on m_shadowsIgnoreTransforms before we get the CTM from the context.
&gt; 

done.

&gt; &gt; Source/WebCore/platform/graphics/ShadowBlur.cpp:420
&gt; &gt; +        if (scaledBlurLayer)
&gt; &gt; +            transform.scale(1 / transform.xScale(), 1 / transform.yScale());
&gt; 
&gt; What does this do? maybe a comment is in place? at least the changelog should describe this.

Before drawing the shadows, the scale factor of context is 1.
So, the positions and sizes of rectangles should be calculated as considering the scale factor is 1. (I added comment.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1196180</commentid>
    <comment_count>15</comment_count>
      <attachid>214427</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2016-05-24 22:03:25 -0700</bug_when>
    <thetext>Comment on attachment 214427
Patch

Assuming that patches for review since 2013 are stale, r-</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1316755</commentid>
    <comment_count>16</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-06-07 19:45:58 -0700</bug_when>
    <thetext>Reassigning some EFL bugs that are likely shared with GTK/WPE to the GTK component.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>209729</attachid>
            <date>2013-08-27 01:57:12 -0700</date>
            <delta_ts>2013-08-27 01:57:12 -0700</delta_ts>
            <desc>testcase</desc>
            <filename>canvas_shadow.html</filename>
            <type>text/html</type>
            <size>736</size>
            <attacher name="Yonggeol Jung">yg48.jung</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+DQo8aHRtbD4NCjxib2R5Pg0KDQo8aW5wdXQgdHlwZT0iYnV0dG9uIiB2
YWx1ZT0iUmVkcmF3IiBvbmNsaWNrPSJkcmF3UmVjdFNoYWRvdygpIi8+DQo8Y2FudmFzIGlkPSJ0
ZXN0Q2FudmFzIiB3aWR0aD0iMzAwIiBoZWlnaHQ9IjMwMCI+DQoNCjxzY3JpcHQ+DQp2YXIgYyA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0Q2FudmFzJyk7DQp2YXIgY3R4ID0gYy5nZXRD
b250ZXh0KCcyZCcpOw0KDQpmdW5jdGlvbiByZ2IoKSB7DQogICByZXR1cm4gTWF0aC5mbG9vcihN
YXRoLnJhbmRvbSgpKjI1NikudG9TdHJpbmcoKTsNCn0NCg0KZnVuY3Rpb24gZHJhd1JlY3RTaGFk
b3coKXsNCgljdHguY2xlYXJSZWN0KDAsIDAsIDMwMCwgMzAwKTsNCg0KICAgICAgICBjdHguc2Nh
bGUoMC4wMSwgMC4wMSk7DQogICAgICAgIGN0eC5zZXRTaGFkb3coMTAwLCAxMDAsIDEwMCwgMC4w
LCAwLjAsIDAuMCwgMC4wKTsNCg0KICAgICAgICBjdHguZmlsbFN0eWxlID0gInJnYigiICsgcmdi
KCkgKyAiLCIgKyByZ2IoKSArICIsIiArIHJnYigpICsgIikiOw0KICAgICAgICBjdHguc2hhZG93
Q29sb3IgPSBjdHguZmlsbFN0eWxlOw0KDQogICAgICAgIGN0eC5maWxsUmVjdCgxMDAsIDEwMCwg
MTAwMDAsIDEwMDAwKTsNCg0KICAgICAgICBjdHguc2NhbGUoMS8wLjAxLCAxLzAuMDEpOw0KfQ0K
DQpkcmF3UmVjdFNoYWRvdygpOw0KPC9zY3JpcHQ+DQoNCjwvYm9keT4NCjwvaHRtbD4NCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>209730</attachid>
            <date>2013-08-27 02:15:30 -0700</date>
            <delta_ts>2013-08-27 02:22:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>Patch</filename>
            <type>text/plain</type>
            <size>5513</size>
            <attacher name="Yonggeol Jung">yg48.jung</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBlNTNiZDFkLi40OGMwM2Q5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIg
QEAKKzIwMTMtMDgtMjcgIFlvbmdHZW9sIEp1bmcgIDx5ZzQ4Lmp1bmdAc2Ftc3VuZy5jb20+CisK
KyAgICAgICAgW2NhaXJvXSBTaGFkb3dCbHVyIGlzIGV4dHJlbWVseSBzbG93IHdoZW4gY2FudmFz
J3Mgc2NhbGUgaXMgdmVyeSBzbWFsbC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEyMDM0NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFNoYWRvd0JsdXIgZHJhd2luZyBpcyB0b28gc2xvdyBpZiBzY2FsZSBv
ZiBjYW52YXMgaXMgc2V0IHRvIHZlcnkgc21hbGwgdmFsdWUgc3VjaCBhcyAwLjAxLgorICAgICAg
ICBUaGUgbWFpbiByZWFzb24gaXMgYmx1clJhZGl1cyBnZXRzIGh1Z2UgdmFsdWUgaWYgc2NhbGUg
aXMgc21hbGwuCisgICAgICAgIElmIHNoYWRvdyB2YWx1ZSBpcyAxMDAgd2l0aCAwLjAxIHNjYWxl
IHZhbHVlLCBibHVyUmFkaXVzIHdpbGwgYmUgMTAwMDAuCisgICAgICAgIEFsbW9zdCB0aW1lIGlz
IGNvbnN1bWVkIHRvIG1ha2UgYmx1cnJlZC1sYXllci4gIAkgCisKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9TaGFkb3dCbHVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNoYWRvd0JsdXI6
OnVzZVNjYWxlZEJsdXJMYXllcik6CisgICAgICAgIChXZWJDb3JlOjpTaGFkb3dCbHVyOjpjYWxj
dWxhdGVMYXllckJvdW5kaW5nUmVjdCk6CisgICAgICAgIChXZWJDb3JlOjpTaGFkb3dCbHVyOjpi
ZWdpblNoYWRvd0xheWVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNoYWRvd0JsdXI6OmVuZFNoYWRv
d0xheWVyKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9TaGFkb3dCbHVyLmg6CisKIDIw
MTMtMDgtMjYgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KIAogICAgICAgICBFZGl0b3JJ
bnRlcm5hbENvbW1hbmQgc2hvdWxkIHVzZSBGcmFtZSYgd2hlcmUgcG9zc2libGUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NoYWRvd0JsdXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvU2hhZG93Qmx1ci5jcHAKaW5kZXggNzQ1OGVh
OC4uNzEzMDI4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
U2hhZG93Qmx1ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvU2hh
ZG93Qmx1ci5jcHAKQEAgLTM5Nyw3ICszOTcsMTYgQEAgSW50U2l6ZSBTaGFkb3dCbHVyOjpibHVy
cmVkRWRnZVNpemUoKSBjb25zdAogICAgIHJldHVybiBlZGdlU2l6ZTsKIH0KIAotSW50UmVjdCBT
aGFkb3dCbHVyOjpjYWxjdWxhdGVMYXllckJvdW5kaW5nUmVjdChHcmFwaGljc0NvbnRleHQqIGNv
bnRleHQsIGNvbnN0IEZsb2F0UmVjdCYgc2hhZG93ZWRSZWN0LCBjb25zdCBJbnRSZWN0JiBjbGlw
UmVjdCkKK2Jvb2wgU2hhZG93Qmx1cjo6dXNlU2NhbGVkQmx1ckxheWVyKEdyYXBoaWNzQ29udGV4
dCogY29udGV4dCkKK3sKKyAgICBjb25zdCBBZmZpbmVUcmFuc2Zvcm0gdHJhbnNmb3JtID0gY29u
dGV4dC0+Z2V0Q1RNKCk7CisgICAgaWYgKG1fc2hhZG93c0lnbm9yZVRyYW5zZm9ybXMgJiYgIXRy
YW5zZm9ybS5pc0lkZW50aXR5KCkgJiYgdHJhbnNmb3JtLnhTY2FsZSgpIDw9IDEgJiYgdHJhbnNm
b3JtLnlTY2FsZSgpIDw9IDEpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgcmV0dXJuIGZh
bHNlOworfQorCitJbnRSZWN0IFNoYWRvd0JsdXI6OmNhbGN1bGF0ZUxheWVyQm91bmRpbmdSZWN0
KEdyYXBoaWNzQ29udGV4dCogY29udGV4dCwgY29uc3QgRmxvYXRSZWN0JiBzaGFkb3dlZFJlY3Qs
IGNvbnN0IEludFJlY3QmIGNsaXBSZWN0LCBjb25zdCBib29sIHNjYWxlZEJsdXJMYXllcikKIHsK
ICAgICBJbnRTaXplIGVkZ2VTaXplID0gYmx1cnJlZEVkZ2VTaXplKCk7CiAKQEAgLTQwNiw3ICs0
MTUsNyBAQCBJbnRSZWN0IFNoYWRvd0JsdXI6OmNhbGN1bGF0ZUxheWVyQm91bmRpbmdSZWN0KEdy
YXBoaWNzQ29udGV4dCogY29udGV4dCwgY29uc3QgRgogICAgIEludFNpemUgaW5mbGF0aW9uOwog
CiAgICAgY29uc3QgQWZmaW5lVHJhbnNmb3JtIHRyYW5zZm9ybSA9IGNvbnRleHQtPmdldENUTSgp
OwotICAgIGlmIChtX3NoYWRvd3NJZ25vcmVUcmFuc2Zvcm1zICYmICF0cmFuc2Zvcm0uaXNJZGVu
dGl0eSgpKSB7CisgICAgaWYgKG1fc2hhZG93c0lnbm9yZVRyYW5zZm9ybXMgJiYgIXRyYW5zZm9y
bS5pc0lkZW50aXR5KCkgJiYgIXNjYWxlZEJsdXJMYXllcikgewogICAgICAgICBGbG9hdFF1YWQg
dHJhbnNmb3JtZWRQb2x5Z29uID0gdHJhbnNmb3JtLm1hcFF1YWQoRmxvYXRRdWFkKHNoYWRvd2Vk
UmVjdCkpOwogICAgICAgICB0cmFuc2Zvcm1lZFBvbHlnb24ubW92ZShtX29mZnNldCk7CiAgICAg
ICAgIGxheWVyUmVjdCA9IHRyYW5zZm9ybS5pbnZlcnNlKCkubWFwUXVhZCh0cmFuc2Zvcm1lZFBv
bHlnb24pLmJvdW5kaW5nQm94KCk7CkBAIC04ODUsOSArODk0LDE1IEBAIHZvaWQgU2hhZG93Qmx1
cjo6Ymx1ckFuZENvbG9yU2hhZG93QnVmZmVyKGNvbnN0IEludFNpemUmIHRlbXBsYXRlU2l6ZSkK
IAogR3JhcGhpY3NDb250ZXh0KiBTaGFkb3dCbHVyOjpiZWdpblNoYWRvd0xheWVyKEdyYXBoaWNz
Q29udGV4dCAqY29udGV4dCwgY29uc3QgRmxvYXRSZWN0JiBsYXllckFyZWEpCiB7Ci0gICAgYWRq
dXN0Qmx1clJhZGl1cyhjb250ZXh0KTsKKyAgICBGbG9hdFJlY3Qgc2NhbGVkTGF5ZXJBcmVhID0g
bGF5ZXJBcmVhOworICAgIGJvb2wgc2NhbGVkQmx1ckxheWVyID0gdXNlU2NhbGVkQmx1ckxheWVy
KGNvbnRleHQpOworICAgIGNvbnN0IEFmZmluZVRyYW5zZm9ybSB0cmFuc2Zvcm0gPSBjb250ZXh0
LT5nZXRDVE0oKTsKKyAgICBpZiAoc2NhbGVkQmx1ckxheWVyKQorICAgICAgICBzY2FsZWRMYXll
ckFyZWEuc2NhbGUoc3RhdGljX2Nhc3Q8ZmxvYXQ+KHRyYW5zZm9ybS54U2NhbGUoKSksIHN0YXRp
Y19jYXN0PGZsb2F0Pih0cmFuc2Zvcm0ueVNjYWxlKCkpKTsKKyAgICBlbHNlCisgICAgICAgIGFk
anVzdEJsdXJSYWRpdXMoY29udGV4dCk7CiAKLSAgICBJbnRSZWN0IGxheWVyUmVjdCA9IGNhbGN1
bGF0ZUxheWVyQm91bmRpbmdSZWN0KGNvbnRleHQsIGxheWVyQXJlYSwgY29udGV4dC0+Y2xpcEJv
dW5kcygpKTsKKyAgICBJbnRSZWN0IGxheWVyUmVjdCA9IGNhbGN1bGF0ZUxheWVyQm91bmRpbmdS
ZWN0KGNvbnRleHQsIHNjYWxlZExheWVyQXJlYSwgY29udGV4dC0+Y2xpcEJvdW5kcygpLCBzY2Fs
ZWRCbHVyTGF5ZXIpOwogCiAgICAgaWYgKGxheWVyUmVjdC5pc0VtcHR5KCkpCiAgICAgICAgIHJl
dHVybiAwOwpAQCAtOTA0LDYgKzkxOSwxMCBAQCBHcmFwaGljc0NvbnRleHQqIFNoYWRvd0JsdXI6
OmJlZ2luU2hhZG93TGF5ZXIoR3JhcGhpY3NDb250ZXh0ICpjb250ZXh0LCBjb25zdCBGbAogICAg
IHNoYWRvd0NvbnRleHQtPmNsZWFyUmVjdChGbG9hdFJlY3QoMCwgMCwgbV9sYXllclNpemUud2lk
dGgoKSArIDEsIG1fbGF5ZXJTaXplLmhlaWdodCgpICsgMSkpOwogCiAgICAgc2hhZG93Q29udGV4
dC0+dHJhbnNsYXRlKG1fbGF5ZXJDb250ZXh0VHJhbnNsYXRpb24pOworCisgICAgaWYgKHNjYWxl
ZEJsdXJMYXllcikKKyAgICAgICAgc2hhZG93Q29udGV4dC0+c2NhbGUoRmxvYXRTaXplKHN0YXRp
Y19jYXN0PGZsb2F0Pih0cmFuc2Zvcm0ueFNjYWxlKCkpLCBzdGF0aWNfY2FzdDxmbG9hdD4odHJh
bnNmb3JtLnlTY2FsZSgpKSkpOworCiAgICAgcmV0dXJuIHNoYWRvd0NvbnRleHQ7CiB9CiAKQEAg
LTkxNCw2ICs5MzMsMTAgQEAgdm9pZCBTaGFkb3dCbHVyOjplbmRTaGFkb3dMYXllcihHcmFwaGlj
c0NvbnRleHQqIGNvbnRleHQpCiAgICAgYmx1ckFuZENvbG9yU2hhZG93QnVmZmVyKGV4cGFuZGVk
SW50U2l6ZShtX2xheWVyU2l6ZSkpOwogICAgIEdyYXBoaWNzQ29udGV4dFN0YXRlU2F2ZXIgc3Rh
dGVTYXZlKCpjb250ZXh0KTsKIAorICAgIGlmICh1c2VTY2FsZWRCbHVyTGF5ZXIoY29udGV4dCkp
IHsKKyAgICAgICAgQWZmaW5lVHJhbnNmb3JtIHRyYW5zZm9ybSA9IGNvbnRleHQtPmdldENUTSgp
OworICAgICAgICBjb250ZXh0LT5zY2FsZShGbG9hdFNpemUoMSAvIHN0YXRpY19jYXN0PGZsb2F0
Pih0cmFuc2Zvcm0ueFNjYWxlKCkpLCAxIC8gc3RhdGljX2Nhc3Q8ZmxvYXQ+KHRyYW5zZm9ybS55
U2NhbGUoKSkpKTsKKyAgICB9CiAgICAgY29udGV4dC0+Y2xlYXJTaGFkb3coKTsKICAgICBjb250
ZXh0LT5kcmF3SW1hZ2VCdWZmZXIobV9sYXllckltYWdlLCBDb2xvclNwYWNlRGV2aWNlUkdCLCBy
b3VuZGVkSW50UG9pbnQobV9sYXllck9yaWdpbiksIEludFJlY3QoMCwgMCwgbV9sYXllclNpemUu
d2lkdGgoKSwgbV9sYXllclNpemUuaGVpZ2h0KCkpLCBjb250ZXh0LT5jb21wb3NpdGVPcGVyYXRp
b24oKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1No
YWRvd0JsdXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NoYWRvd0JsdXIu
aAppbmRleCAzMmZmNjBiLi44ODk1YWM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9TaGFkb3dCbHVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvU2hhZG93Qmx1ci5oCkBAIC04NCw3ICs4NCw3IEBAIHByaXZhdGU6CiAgICAgICAg
IElubmVyU2hhZG93CiAgICAgfTsKICAgICAKLSAgICBJbnRSZWN0IGNhbGN1bGF0ZUxheWVyQm91
bmRpbmdSZWN0KEdyYXBoaWNzQ29udGV4dCosIGNvbnN0IEZsb2F0UmVjdCYgbGF5ZXJBcmVhLCBj
b25zdCBJbnRSZWN0JiBjbGlwUmVjdCk7CisgICAgSW50UmVjdCBjYWxjdWxhdGVMYXllckJvdW5k
aW5nUmVjdChHcmFwaGljc0NvbnRleHQqLCBjb25zdCBGbG9hdFJlY3QmIGxheWVyQXJlYSwgY29u
c3QgSW50UmVjdCYgY2xpcFJlY3QsIGNvbnN0IGJvb2wgc2NhbGVkQmx1ckxheWVyID0gZmFsc2Up
OwogICAgIEludFNpemUgdGVtcGxhdGVTaXplKGNvbnN0IEludFNpemUmIGJsdXJyZWRFZGdlU2l6
ZSwgY29uc3QgUm91bmRlZFJlY3Q6OlJhZGlpJikgY29uc3Q7CiAKICAgICB2b2lkIGRyYXdSZWN0
U2hhZG93V2l0aG91dFRpbGluZyhHcmFwaGljc0NvbnRleHQqLCBjb25zdCBGbG9hdFJlY3QmLCBj
b25zdCBSb3VuZGVkUmVjdDo6UmFkaWkmLCBjb25zdCBJbnRSZWN0JiBsYXllclJlY3QpOwpAQCAt
MTAwLDYgKzEwMCw3IEBAIHByaXZhdGU6CiAgICAgCiAgICAgSW50U2l6ZSBibHVycmVkRWRnZVNp
emUoKSBjb25zdDsKICAgICAKKyAgICBib29sIHVzZVNjYWxlZEJsdXJMYXllcihHcmFwaGljc0Nv
bnRleHQqKTsKICAgICAKICAgICBTaGFkb3dUeXBlIG1fdHlwZTsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>209733</attachid>
            <date>2013-08-27 02:22:30 -0700</date>
            <delta_ts>2013-08-27 02:26:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>Patch</filename>
            <type>application/octet-stream</type>
            <size>5513</size>
            <attacher name="Yonggeol Jung">yg48.jung</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBlNTNiZDFkLi40OGMwM2Q5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIg
QEAKKzIwMTMtMDgtMjcgIFlvbmdHZW9sIEp1bmcgIDx5ZzQ4Lmp1bmdAc2Ftc3VuZy5jb20+CisK
KyAgICAgICAgW2NhaXJvXSBTaGFkb3dCbHVyIGlzIGV4dHJlbWVseSBzbG93IHdoZW4gY2FudmFz
J3Mgc2NhbGUgaXMgdmVyeSBzbWFsbC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEyMDM0NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFNoYWRvd0JsdXIgZHJhd2luZyBpcyB0b28gc2xvdyBpZiBzY2FsZSBv
ZiBjYW52YXMgaXMgc2V0IHRvIHZlcnkgc21hbGwgdmFsdWUgc3VjaCBhcyAwLjAxLgorICAgICAg
ICBUaGUgbWFpbiByZWFzb24gaXMgYmx1clJhZGl1cyBnZXRzIGh1Z2UgdmFsdWUgaWYgc2NhbGUg
aXMgc21hbGwuCisgICAgICAgIElmIHNoYWRvdyB2YWx1ZSBpcyAxMDAgd2l0aCAwLjAxIHNjYWxl
IHZhbHVlLCBibHVyUmFkaXVzIHdpbGwgYmUgMTAwMDAuCisgICAgICAgIEFsbW9zdCB0aW1lIGlz
IGNvbnN1bWVkIHRvIG1ha2UgYmx1cnJlZC1sYXllci4gIAkgCisKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9TaGFkb3dCbHVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNoYWRvd0JsdXI6
OnVzZVNjYWxlZEJsdXJMYXllcik6CisgICAgICAgIChXZWJDb3JlOjpTaGFkb3dCbHVyOjpjYWxj
dWxhdGVMYXllckJvdW5kaW5nUmVjdCk6CisgICAgICAgIChXZWJDb3JlOjpTaGFkb3dCbHVyOjpi
ZWdpblNoYWRvd0xheWVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNoYWRvd0JsdXI6OmVuZFNoYWRv
d0xheWVyKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9TaGFkb3dCbHVyLmg6CisKIDIw
MTMtMDgtMjYgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KIAogICAgICAgICBFZGl0b3JJ
bnRlcm5hbENvbW1hbmQgc2hvdWxkIHVzZSBGcmFtZSYgd2hlcmUgcG9zc2libGUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NoYWRvd0JsdXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvU2hhZG93Qmx1ci5jcHAKaW5kZXggNzQ1OGVh
OC4uNzEzMDI4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
U2hhZG93Qmx1ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvU2hh
ZG93Qmx1ci5jcHAKQEAgLTM5Nyw3ICszOTcsMTYgQEAgSW50U2l6ZSBTaGFkb3dCbHVyOjpibHVy
cmVkRWRnZVNpemUoKSBjb25zdAogICAgIHJldHVybiBlZGdlU2l6ZTsKIH0KIAotSW50UmVjdCBT
aGFkb3dCbHVyOjpjYWxjdWxhdGVMYXllckJvdW5kaW5nUmVjdChHcmFwaGljc0NvbnRleHQqIGNv
bnRleHQsIGNvbnN0IEZsb2F0UmVjdCYgc2hhZG93ZWRSZWN0LCBjb25zdCBJbnRSZWN0JiBjbGlw
UmVjdCkKK2Jvb2wgU2hhZG93Qmx1cjo6dXNlU2NhbGVkQmx1ckxheWVyKEdyYXBoaWNzQ29udGV4
dCogY29udGV4dCkKK3sKKyAgICBjb25zdCBBZmZpbmVUcmFuc2Zvcm0gdHJhbnNmb3JtID0gY29u
dGV4dC0+Z2V0Q1RNKCk7CisgICAgaWYgKG1fc2hhZG93c0lnbm9yZVRyYW5zZm9ybXMgJiYgIXRy
YW5zZm9ybS5pc0lkZW50aXR5KCkgJiYgdHJhbnNmb3JtLnhTY2FsZSgpIDw9IDEgJiYgdHJhbnNm
b3JtLnlTY2FsZSgpIDw9IDEpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgcmV0dXJuIGZh
bHNlOworfQorCitJbnRSZWN0IFNoYWRvd0JsdXI6OmNhbGN1bGF0ZUxheWVyQm91bmRpbmdSZWN0
KEdyYXBoaWNzQ29udGV4dCogY29udGV4dCwgY29uc3QgRmxvYXRSZWN0JiBzaGFkb3dlZFJlY3Qs
IGNvbnN0IEludFJlY3QmIGNsaXBSZWN0LCBjb25zdCBib29sIHNjYWxlZEJsdXJMYXllcikKIHsK
ICAgICBJbnRTaXplIGVkZ2VTaXplID0gYmx1cnJlZEVkZ2VTaXplKCk7CiAKQEAgLTQwNiw3ICs0
MTUsNyBAQCBJbnRSZWN0IFNoYWRvd0JsdXI6OmNhbGN1bGF0ZUxheWVyQm91bmRpbmdSZWN0KEdy
YXBoaWNzQ29udGV4dCogY29udGV4dCwgY29uc3QgRgogICAgIEludFNpemUgaW5mbGF0aW9uOwog
CiAgICAgY29uc3QgQWZmaW5lVHJhbnNmb3JtIHRyYW5zZm9ybSA9IGNvbnRleHQtPmdldENUTSgp
OwotICAgIGlmIChtX3NoYWRvd3NJZ25vcmVUcmFuc2Zvcm1zICYmICF0cmFuc2Zvcm0uaXNJZGVu
dGl0eSgpKSB7CisgICAgaWYgKG1fc2hhZG93c0lnbm9yZVRyYW5zZm9ybXMgJiYgIXRyYW5zZm9y
bS5pc0lkZW50aXR5KCkgJiYgIXNjYWxlZEJsdXJMYXllcikgewogICAgICAgICBGbG9hdFF1YWQg
dHJhbnNmb3JtZWRQb2x5Z29uID0gdHJhbnNmb3JtLm1hcFF1YWQoRmxvYXRRdWFkKHNoYWRvd2Vk
UmVjdCkpOwogICAgICAgICB0cmFuc2Zvcm1lZFBvbHlnb24ubW92ZShtX29mZnNldCk7CiAgICAg
ICAgIGxheWVyUmVjdCA9IHRyYW5zZm9ybS5pbnZlcnNlKCkubWFwUXVhZCh0cmFuc2Zvcm1lZFBv
bHlnb24pLmJvdW5kaW5nQm94KCk7CkBAIC04ODUsOSArODk0LDE1IEBAIHZvaWQgU2hhZG93Qmx1
cjo6Ymx1ckFuZENvbG9yU2hhZG93QnVmZmVyKGNvbnN0IEludFNpemUmIHRlbXBsYXRlU2l6ZSkK
IAogR3JhcGhpY3NDb250ZXh0KiBTaGFkb3dCbHVyOjpiZWdpblNoYWRvd0xheWVyKEdyYXBoaWNz
Q29udGV4dCAqY29udGV4dCwgY29uc3QgRmxvYXRSZWN0JiBsYXllckFyZWEpCiB7Ci0gICAgYWRq
dXN0Qmx1clJhZGl1cyhjb250ZXh0KTsKKyAgICBGbG9hdFJlY3Qgc2NhbGVkTGF5ZXJBcmVhID0g
bGF5ZXJBcmVhOworICAgIGJvb2wgc2NhbGVkQmx1ckxheWVyID0gdXNlU2NhbGVkQmx1ckxheWVy
KGNvbnRleHQpOworICAgIGNvbnN0IEFmZmluZVRyYW5zZm9ybSB0cmFuc2Zvcm0gPSBjb250ZXh0
LT5nZXRDVE0oKTsKKyAgICBpZiAoc2NhbGVkQmx1ckxheWVyKQorICAgICAgICBzY2FsZWRMYXll
ckFyZWEuc2NhbGUoc3RhdGljX2Nhc3Q8ZmxvYXQ+KHRyYW5zZm9ybS54U2NhbGUoKSksIHN0YXRp
Y19jYXN0PGZsb2F0Pih0cmFuc2Zvcm0ueVNjYWxlKCkpKTsKKyAgICBlbHNlCisgICAgICAgIGFk
anVzdEJsdXJSYWRpdXMoY29udGV4dCk7CiAKLSAgICBJbnRSZWN0IGxheWVyUmVjdCA9IGNhbGN1
bGF0ZUxheWVyQm91bmRpbmdSZWN0KGNvbnRleHQsIGxheWVyQXJlYSwgY29udGV4dC0+Y2xpcEJv
dW5kcygpKTsKKyAgICBJbnRSZWN0IGxheWVyUmVjdCA9IGNhbGN1bGF0ZUxheWVyQm91bmRpbmdS
ZWN0KGNvbnRleHQsIHNjYWxlZExheWVyQXJlYSwgY29udGV4dC0+Y2xpcEJvdW5kcygpLCBzY2Fs
ZWRCbHVyTGF5ZXIpOwogCiAgICAgaWYgKGxheWVyUmVjdC5pc0VtcHR5KCkpCiAgICAgICAgIHJl
dHVybiAwOwpAQCAtOTA0LDYgKzkxOSwxMCBAQCBHcmFwaGljc0NvbnRleHQqIFNoYWRvd0JsdXI6
OmJlZ2luU2hhZG93TGF5ZXIoR3JhcGhpY3NDb250ZXh0ICpjb250ZXh0LCBjb25zdCBGbAogICAg
IHNoYWRvd0NvbnRleHQtPmNsZWFyUmVjdChGbG9hdFJlY3QoMCwgMCwgbV9sYXllclNpemUud2lk
dGgoKSArIDEsIG1fbGF5ZXJTaXplLmhlaWdodCgpICsgMSkpOwogCiAgICAgc2hhZG93Q29udGV4
dC0+dHJhbnNsYXRlKG1fbGF5ZXJDb250ZXh0VHJhbnNsYXRpb24pOworCisgICAgaWYgKHNjYWxl
ZEJsdXJMYXllcikKKyAgICAgICAgc2hhZG93Q29udGV4dC0+c2NhbGUoRmxvYXRTaXplKHN0YXRp
Y19jYXN0PGZsb2F0Pih0cmFuc2Zvcm0ueFNjYWxlKCkpLCBzdGF0aWNfY2FzdDxmbG9hdD4odHJh
bnNmb3JtLnlTY2FsZSgpKSkpOworCiAgICAgcmV0dXJuIHNoYWRvd0NvbnRleHQ7CiB9CiAKQEAg
LTkxNCw2ICs5MzMsMTAgQEAgdm9pZCBTaGFkb3dCbHVyOjplbmRTaGFkb3dMYXllcihHcmFwaGlj
c0NvbnRleHQqIGNvbnRleHQpCiAgICAgYmx1ckFuZENvbG9yU2hhZG93QnVmZmVyKGV4cGFuZGVk
SW50U2l6ZShtX2xheWVyU2l6ZSkpOwogICAgIEdyYXBoaWNzQ29udGV4dFN0YXRlU2F2ZXIgc3Rh
dGVTYXZlKCpjb250ZXh0KTsKIAorICAgIGlmICh1c2VTY2FsZWRCbHVyTGF5ZXIoY29udGV4dCkp
IHsKKyAgICAgICAgQWZmaW5lVHJhbnNmb3JtIHRyYW5zZm9ybSA9IGNvbnRleHQtPmdldENUTSgp
OworICAgICAgICBjb250ZXh0LT5zY2FsZShGbG9hdFNpemUoMSAvIHN0YXRpY19jYXN0PGZsb2F0
Pih0cmFuc2Zvcm0ueFNjYWxlKCkpLCAxIC8gc3RhdGljX2Nhc3Q8ZmxvYXQ+KHRyYW5zZm9ybS55
U2NhbGUoKSkpKTsKKyAgICB9CiAgICAgY29udGV4dC0+Y2xlYXJTaGFkb3coKTsKICAgICBjb250
ZXh0LT5kcmF3SW1hZ2VCdWZmZXIobV9sYXllckltYWdlLCBDb2xvclNwYWNlRGV2aWNlUkdCLCBy
b3VuZGVkSW50UG9pbnQobV9sYXllck9yaWdpbiksIEludFJlY3QoMCwgMCwgbV9sYXllclNpemUu
d2lkdGgoKSwgbV9sYXllclNpemUuaGVpZ2h0KCkpLCBjb250ZXh0LT5jb21wb3NpdGVPcGVyYXRp
b24oKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1No
YWRvd0JsdXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NoYWRvd0JsdXIu
aAppbmRleCAzMmZmNjBiLi44ODk1YWM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9TaGFkb3dCbHVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvU2hhZG93Qmx1ci5oCkBAIC04NCw3ICs4NCw3IEBAIHByaXZhdGU6CiAgICAgICAg
IElubmVyU2hhZG93CiAgICAgfTsKICAgICAKLSAgICBJbnRSZWN0IGNhbGN1bGF0ZUxheWVyQm91
bmRpbmdSZWN0KEdyYXBoaWNzQ29udGV4dCosIGNvbnN0IEZsb2F0UmVjdCYgbGF5ZXJBcmVhLCBj
b25zdCBJbnRSZWN0JiBjbGlwUmVjdCk7CisgICAgSW50UmVjdCBjYWxjdWxhdGVMYXllckJvdW5k
aW5nUmVjdChHcmFwaGljc0NvbnRleHQqLCBjb25zdCBGbG9hdFJlY3QmIGxheWVyQXJlYSwgY29u
c3QgSW50UmVjdCYgY2xpcFJlY3QsIGNvbnN0IGJvb2wgc2NhbGVkQmx1ckxheWVyID0gZmFsc2Up
OwogICAgIEludFNpemUgdGVtcGxhdGVTaXplKGNvbnN0IEludFNpemUmIGJsdXJyZWRFZGdlU2l6
ZSwgY29uc3QgUm91bmRlZFJlY3Q6OlJhZGlpJikgY29uc3Q7CiAKICAgICB2b2lkIGRyYXdSZWN0
U2hhZG93V2l0aG91dFRpbGluZyhHcmFwaGljc0NvbnRleHQqLCBjb25zdCBGbG9hdFJlY3QmLCBj
b25zdCBSb3VuZGVkUmVjdDo6UmFkaWkmLCBjb25zdCBJbnRSZWN0JiBsYXllclJlY3QpOwpAQCAt
MTAwLDYgKzEwMCw3IEBAIHByaXZhdGU6CiAgICAgCiAgICAgSW50U2l6ZSBibHVycmVkRWRnZVNp
emUoKSBjb25zdDsKICAgICAKKyAgICBib29sIHVzZVNjYWxlZEJsdXJMYXllcihHcmFwaGljc0Nv
bnRleHQqKTsKICAgICAKICAgICBTaGFkb3dUeXBlIG1fdHlwZTsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>209735</attachid>
            <date>2013-08-27 02:26:04 -0700</date>
            <delta_ts>2013-08-27 02:30:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>Patch</filename>
            <type>text/plain</type>
            <size>5513</size>
            <attacher name="Yonggeol Jung">yg48.jung</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBlNTNiZDFkLi40OGMwM2Q5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIg
QEAKKzIwMTMtMDgtMjcgIFlvbmdHZW9sIEp1bmcgIDx5ZzQ4Lmp1bmdAc2Ftc3VuZy5jb20+CisK
KyAgICAgICAgW2NhaXJvXSBTaGFkb3dCbHVyIGlzIGV4dHJlbWVseSBzbG93IHdoZW4gY2FudmFz
J3Mgc2NhbGUgaXMgdmVyeSBzbWFsbC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEyMDM0NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFNoYWRvd0JsdXIgZHJhd2luZyBpcyB0b28gc2xvdyBpZiBzY2FsZSBv
ZiBjYW52YXMgaXMgc2V0IHRvIHZlcnkgc21hbGwgdmFsdWUgc3VjaCBhcyAwLjAxLgorICAgICAg
ICBUaGUgbWFpbiByZWFzb24gaXMgYmx1clJhZGl1cyBnZXRzIGh1Z2UgdmFsdWUgaWYgc2NhbGUg
aXMgc21hbGwuCisgICAgICAgIElmIHNoYWRvdyB2YWx1ZSBpcyAxMDAgd2l0aCAwLjAxIHNjYWxl
IHZhbHVlLCBibHVyUmFkaXVzIHdpbGwgYmUgMTAwMDAuCisgICAgICAgIEFsbW9zdCB0aW1lIGlz
IGNvbnN1bWVkIHRvIG1ha2UgYmx1cnJlZC1sYXllci4gIAkgCisKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9TaGFkb3dCbHVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNoYWRvd0JsdXI6
OnVzZVNjYWxlZEJsdXJMYXllcik6CisgICAgICAgIChXZWJDb3JlOjpTaGFkb3dCbHVyOjpjYWxj
dWxhdGVMYXllckJvdW5kaW5nUmVjdCk6CisgICAgICAgIChXZWJDb3JlOjpTaGFkb3dCbHVyOjpi
ZWdpblNoYWRvd0xheWVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNoYWRvd0JsdXI6OmVuZFNoYWRv
d0xheWVyKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9TaGFkb3dCbHVyLmg6CisKIDIw
MTMtMDgtMjYgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KIAogICAgICAgICBFZGl0b3JJ
bnRlcm5hbENvbW1hbmQgc2hvdWxkIHVzZSBGcmFtZSYgd2hlcmUgcG9zc2libGUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NoYWRvd0JsdXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvU2hhZG93Qmx1ci5jcHAKaW5kZXggNzQ1OGVh
OC4uNzEzMDI4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
U2hhZG93Qmx1ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvU2hh
ZG93Qmx1ci5jcHAKQEAgLTM5Nyw3ICszOTcsMTYgQEAgSW50U2l6ZSBTaGFkb3dCbHVyOjpibHVy
cmVkRWRnZVNpemUoKSBjb25zdAogICAgIHJldHVybiBlZGdlU2l6ZTsKIH0KIAotSW50UmVjdCBT
aGFkb3dCbHVyOjpjYWxjdWxhdGVMYXllckJvdW5kaW5nUmVjdChHcmFwaGljc0NvbnRleHQqIGNv
bnRleHQsIGNvbnN0IEZsb2F0UmVjdCYgc2hhZG93ZWRSZWN0LCBjb25zdCBJbnRSZWN0JiBjbGlw
UmVjdCkKK2Jvb2wgU2hhZG93Qmx1cjo6dXNlU2NhbGVkQmx1ckxheWVyKEdyYXBoaWNzQ29udGV4
dCogY29udGV4dCkKK3sKKyAgICBjb25zdCBBZmZpbmVUcmFuc2Zvcm0gdHJhbnNmb3JtID0gY29u
dGV4dC0+Z2V0Q1RNKCk7CisgICAgaWYgKG1fc2hhZG93c0lnbm9yZVRyYW5zZm9ybXMgJiYgIXRy
YW5zZm9ybS5pc0lkZW50aXR5KCkgJiYgdHJhbnNmb3JtLnhTY2FsZSgpIDw9IDEgJiYgdHJhbnNm
b3JtLnlTY2FsZSgpIDw9IDEpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgcmV0dXJuIGZh
bHNlOworfQorCitJbnRSZWN0IFNoYWRvd0JsdXI6OmNhbGN1bGF0ZUxheWVyQm91bmRpbmdSZWN0
KEdyYXBoaWNzQ29udGV4dCogY29udGV4dCwgY29uc3QgRmxvYXRSZWN0JiBzaGFkb3dlZFJlY3Qs
IGNvbnN0IEludFJlY3QmIGNsaXBSZWN0LCBjb25zdCBib29sIHNjYWxlZEJsdXJMYXllcikKIHsK
ICAgICBJbnRTaXplIGVkZ2VTaXplID0gYmx1cnJlZEVkZ2VTaXplKCk7CiAKQEAgLTQwNiw3ICs0
MTUsNyBAQCBJbnRSZWN0IFNoYWRvd0JsdXI6OmNhbGN1bGF0ZUxheWVyQm91bmRpbmdSZWN0KEdy
YXBoaWNzQ29udGV4dCogY29udGV4dCwgY29uc3QgRgogICAgIEludFNpemUgaW5mbGF0aW9uOwog
CiAgICAgY29uc3QgQWZmaW5lVHJhbnNmb3JtIHRyYW5zZm9ybSA9IGNvbnRleHQtPmdldENUTSgp
OwotICAgIGlmIChtX3NoYWRvd3NJZ25vcmVUcmFuc2Zvcm1zICYmICF0cmFuc2Zvcm0uaXNJZGVu
dGl0eSgpKSB7CisgICAgaWYgKG1fc2hhZG93c0lnbm9yZVRyYW5zZm9ybXMgJiYgIXRyYW5zZm9y
bS5pc0lkZW50aXR5KCkgJiYgIXNjYWxlZEJsdXJMYXllcikgewogICAgICAgICBGbG9hdFF1YWQg
dHJhbnNmb3JtZWRQb2x5Z29uID0gdHJhbnNmb3JtLm1hcFF1YWQoRmxvYXRRdWFkKHNoYWRvd2Vk
UmVjdCkpOwogICAgICAgICB0cmFuc2Zvcm1lZFBvbHlnb24ubW92ZShtX29mZnNldCk7CiAgICAg
ICAgIGxheWVyUmVjdCA9IHRyYW5zZm9ybS5pbnZlcnNlKCkubWFwUXVhZCh0cmFuc2Zvcm1lZFBv
bHlnb24pLmJvdW5kaW5nQm94KCk7CkBAIC04ODUsOSArODk0LDE1IEBAIHZvaWQgU2hhZG93Qmx1
cjo6Ymx1ckFuZENvbG9yU2hhZG93QnVmZmVyKGNvbnN0IEludFNpemUmIHRlbXBsYXRlU2l6ZSkK
IAogR3JhcGhpY3NDb250ZXh0KiBTaGFkb3dCbHVyOjpiZWdpblNoYWRvd0xheWVyKEdyYXBoaWNz
Q29udGV4dCAqY29udGV4dCwgY29uc3QgRmxvYXRSZWN0JiBsYXllckFyZWEpCiB7Ci0gICAgYWRq
dXN0Qmx1clJhZGl1cyhjb250ZXh0KTsKKyAgICBGbG9hdFJlY3Qgc2NhbGVkTGF5ZXJBcmVhID0g
bGF5ZXJBcmVhOworICAgIGJvb2wgc2NhbGVkQmx1ckxheWVyID0gdXNlU2NhbGVkQmx1ckxheWVy
KGNvbnRleHQpOworICAgIGNvbnN0IEFmZmluZVRyYW5zZm9ybSB0cmFuc2Zvcm0gPSBjb250ZXh0
LT5nZXRDVE0oKTsKKyAgICBpZiAoc2NhbGVkQmx1ckxheWVyKQorICAgICAgICBzY2FsZWRMYXll
ckFyZWEuc2NhbGUoc3RhdGljX2Nhc3Q8ZmxvYXQ+KHRyYW5zZm9ybS54U2NhbGUoKSksIHN0YXRp
Y19jYXN0PGZsb2F0Pih0cmFuc2Zvcm0ueVNjYWxlKCkpKTsKKyAgICBlbHNlCisgICAgICAgIGFk
anVzdEJsdXJSYWRpdXMoY29udGV4dCk7CiAKLSAgICBJbnRSZWN0IGxheWVyUmVjdCA9IGNhbGN1
bGF0ZUxheWVyQm91bmRpbmdSZWN0KGNvbnRleHQsIGxheWVyQXJlYSwgY29udGV4dC0+Y2xpcEJv
dW5kcygpKTsKKyAgICBJbnRSZWN0IGxheWVyUmVjdCA9IGNhbGN1bGF0ZUxheWVyQm91bmRpbmdS
ZWN0KGNvbnRleHQsIHNjYWxlZExheWVyQXJlYSwgY29udGV4dC0+Y2xpcEJvdW5kcygpLCBzY2Fs
ZWRCbHVyTGF5ZXIpOwogCiAgICAgaWYgKGxheWVyUmVjdC5pc0VtcHR5KCkpCiAgICAgICAgIHJl
dHVybiAwOwpAQCAtOTA0LDYgKzkxOSwxMCBAQCBHcmFwaGljc0NvbnRleHQqIFNoYWRvd0JsdXI6
OmJlZ2luU2hhZG93TGF5ZXIoR3JhcGhpY3NDb250ZXh0ICpjb250ZXh0LCBjb25zdCBGbAogICAg
IHNoYWRvd0NvbnRleHQtPmNsZWFyUmVjdChGbG9hdFJlY3QoMCwgMCwgbV9sYXllclNpemUud2lk
dGgoKSArIDEsIG1fbGF5ZXJTaXplLmhlaWdodCgpICsgMSkpOwogCiAgICAgc2hhZG93Q29udGV4
dC0+dHJhbnNsYXRlKG1fbGF5ZXJDb250ZXh0VHJhbnNsYXRpb24pOworCisgICAgaWYgKHNjYWxl
ZEJsdXJMYXllcikKKyAgICAgICAgc2hhZG93Q29udGV4dC0+c2NhbGUoRmxvYXRTaXplKHN0YXRp
Y19jYXN0PGZsb2F0Pih0cmFuc2Zvcm0ueFNjYWxlKCkpLCBzdGF0aWNfY2FzdDxmbG9hdD4odHJh
bnNmb3JtLnlTY2FsZSgpKSkpOworCiAgICAgcmV0dXJuIHNoYWRvd0NvbnRleHQ7CiB9CiAKQEAg
LTkxNCw2ICs5MzMsMTAgQEAgdm9pZCBTaGFkb3dCbHVyOjplbmRTaGFkb3dMYXllcihHcmFwaGlj
c0NvbnRleHQqIGNvbnRleHQpCiAgICAgYmx1ckFuZENvbG9yU2hhZG93QnVmZmVyKGV4cGFuZGVk
SW50U2l6ZShtX2xheWVyU2l6ZSkpOwogICAgIEdyYXBoaWNzQ29udGV4dFN0YXRlU2F2ZXIgc3Rh
dGVTYXZlKCpjb250ZXh0KTsKIAorICAgIGlmICh1c2VTY2FsZWRCbHVyTGF5ZXIoY29udGV4dCkp
IHsKKyAgICAgICAgQWZmaW5lVHJhbnNmb3JtIHRyYW5zZm9ybSA9IGNvbnRleHQtPmdldENUTSgp
OworICAgICAgICBjb250ZXh0LT5zY2FsZShGbG9hdFNpemUoMSAvIHN0YXRpY19jYXN0PGZsb2F0
Pih0cmFuc2Zvcm0ueFNjYWxlKCkpLCAxIC8gc3RhdGljX2Nhc3Q8ZmxvYXQ+KHRyYW5zZm9ybS55
U2NhbGUoKSkpKTsKKyAgICB9CiAgICAgY29udGV4dC0+Y2xlYXJTaGFkb3coKTsKICAgICBjb250
ZXh0LT5kcmF3SW1hZ2VCdWZmZXIobV9sYXllckltYWdlLCBDb2xvclNwYWNlRGV2aWNlUkdCLCBy
b3VuZGVkSW50UG9pbnQobV9sYXllck9yaWdpbiksIEludFJlY3QoMCwgMCwgbV9sYXllclNpemUu
d2lkdGgoKSwgbV9sYXllclNpemUuaGVpZ2h0KCkpLCBjb250ZXh0LT5jb21wb3NpdGVPcGVyYXRp
b24oKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1No
YWRvd0JsdXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NoYWRvd0JsdXIu
aAppbmRleCAzMmZmNjBiLi44ODk1YWM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9TaGFkb3dCbHVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvU2hhZG93Qmx1ci5oCkBAIC04NCw3ICs4NCw3IEBAIHByaXZhdGU6CiAgICAgICAg
IElubmVyU2hhZG93CiAgICAgfTsKICAgICAKLSAgICBJbnRSZWN0IGNhbGN1bGF0ZUxheWVyQm91
bmRpbmdSZWN0KEdyYXBoaWNzQ29udGV4dCosIGNvbnN0IEZsb2F0UmVjdCYgbGF5ZXJBcmVhLCBj
b25zdCBJbnRSZWN0JiBjbGlwUmVjdCk7CisgICAgSW50UmVjdCBjYWxjdWxhdGVMYXllckJvdW5k
aW5nUmVjdChHcmFwaGljc0NvbnRleHQqLCBjb25zdCBGbG9hdFJlY3QmIGxheWVyQXJlYSwgY29u
c3QgSW50UmVjdCYgY2xpcFJlY3QsIGNvbnN0IGJvb2wgc2NhbGVkQmx1ckxheWVyID0gZmFsc2Up
OwogICAgIEludFNpemUgdGVtcGxhdGVTaXplKGNvbnN0IEludFNpemUmIGJsdXJyZWRFZGdlU2l6
ZSwgY29uc3QgUm91bmRlZFJlY3Q6OlJhZGlpJikgY29uc3Q7CiAKICAgICB2b2lkIGRyYXdSZWN0
U2hhZG93V2l0aG91dFRpbGluZyhHcmFwaGljc0NvbnRleHQqLCBjb25zdCBGbG9hdFJlY3QmLCBj
b25zdCBSb3VuZGVkUmVjdDo6UmFkaWkmLCBjb25zdCBJbnRSZWN0JiBsYXllclJlY3QpOwpAQCAt
MTAwLDYgKzEwMCw3IEBAIHByaXZhdGU6CiAgICAgCiAgICAgSW50U2l6ZSBibHVycmVkRWRnZVNp
emUoKSBjb25zdDsKICAgICAKKyAgICBib29sIHVzZVNjYWxlZEJsdXJMYXllcihHcmFwaGljc0Nv
bnRleHQqKTsKICAgICAKICAgICBTaGFkb3dUeXBlIG1fdHlwZTsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>209736</attachid>
            <date>2013-08-27 02:30:17 -0700</date>
            <delta_ts>2013-08-27 02:41:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>Patch</filename>
            <type>text/plain</type>
            <size>5511</size>
            <attacher name="Yonggeol Jung">yg48.jung</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBlNTNiZDFkLi40OGMwM2Q5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIg
QEAKKzIwMTMtMDgtMjcgIFlvbmdHZW9sIEp1bmcgIDx5ZzQ4Lmp1bmdAc2Ftc3VuZy5jb20+CisK
KyAgICAgICAgW2NhaXJvXSBTaGFkb3dCbHVyIGlzIGV4dHJlbWVseSBzbG93IHdoZW4gY2FudmFz
J3Mgc2NhbGUgaXMgdmVyeSBzbWFsbC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEyMDM0NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFNoYWRvd0JsdXIgZHJhd2luZyBpcyB0b28gc2xvdyBpZiBzY2FsZSBv
ZiBjYW52YXMgaXMgc2V0IHRvIHZlcnkgc21hbGwgdmFsdWUgc3VjaCBhcyAwLjAxLgorICAgICAg
ICBUaGUgbWFpbiByZWFzb24gaXMgYmx1clJhZGl1cyBnZXRzIGh1Z2UgdmFsdWUgaWYgc2NhbGUg
aXMgc21hbGwuCisgICAgICAgIElmIHNoYWRvdyB2YWx1ZSBpcyAxMDAgd2l0aCAwLjAxIHNjYWxl
IHZhbHVlLCBibHVyUmFkaXVzIHdpbGwgYmUgMTAwMDAuCisgICAgICAgIEFsbW9zdCB0aW1lIGlz
IGNvbnN1bWVkIHRvIG1ha2UgYmx1cnJlZC1sYXllci4JIAorCisgICAgICAgICogcGxhdGZvcm0v
Z3JhcGhpY3MvU2hhZG93Qmx1ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTaGFkb3dCbHVyOjp1
c2VTY2FsZWRCbHVyTGF5ZXIpOgorICAgICAgICAoV2ViQ29yZTo6U2hhZG93Qmx1cjo6Y2FsY3Vs
YXRlTGF5ZXJCb3VuZGluZ1JlY3QpOgorICAgICAgICAoV2ViQ29yZTo6U2hhZG93Qmx1cjo6YmVn
aW5TaGFkb3dMYXllcik6CisgICAgICAgIChXZWJDb3JlOjpTaGFkb3dCbHVyOjplbmRTaGFkb3dM
YXllcik6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvU2hhZG93Qmx1ci5oOgorCiAyMDEz
LTA4LTI2ICBTYW0gV2VpbmlnICA8c2FtQHdlYmtpdC5vcmc+CiAKICAgICAgICAgRWRpdG9ySW50
ZXJuYWxDb21tYW5kIHNob3VsZCB1c2UgRnJhbWUmIHdoZXJlIHBvc3NpYmxlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9TaGFkb3dCbHVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NoYWRvd0JsdXIuY3BwCmluZGV4IDc0NThlYTgu
LjcxMzAyODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1No
YWRvd0JsdXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NoYWRv
d0JsdXIuY3BwCkBAIC0zOTcsNyArMzk3LDE2IEBAIEludFNpemUgU2hhZG93Qmx1cjo6Ymx1cnJl
ZEVkZ2VTaXplKCkgY29uc3QKICAgICByZXR1cm4gZWRnZVNpemU7CiB9CiAKLUludFJlY3QgU2hh
ZG93Qmx1cjo6Y2FsY3VsYXRlTGF5ZXJCb3VuZGluZ1JlY3QoR3JhcGhpY3NDb250ZXh0KiBjb250
ZXh0LCBjb25zdCBGbG9hdFJlY3QmIHNoYWRvd2VkUmVjdCwgY29uc3QgSW50UmVjdCYgY2xpcFJl
Y3QpCitib29sIFNoYWRvd0JsdXI6OnVzZVNjYWxlZEJsdXJMYXllcihHcmFwaGljc0NvbnRleHQq
IGNvbnRleHQpCit7CisgICAgY29uc3QgQWZmaW5lVHJhbnNmb3JtIHRyYW5zZm9ybSA9IGNvbnRl
eHQtPmdldENUTSgpOworICAgIGlmIChtX3NoYWRvd3NJZ25vcmVUcmFuc2Zvcm1zICYmICF0cmFu
c2Zvcm0uaXNJZGVudGl0eSgpICYmIHRyYW5zZm9ybS54U2NhbGUoKSA8PSAxICYmIHRyYW5zZm9y
bS55U2NhbGUoKSA8PSAxKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIHJldHVybiBmYWxz
ZTsKK30KKworSW50UmVjdCBTaGFkb3dCbHVyOjpjYWxjdWxhdGVMYXllckJvdW5kaW5nUmVjdChH
cmFwaGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IEZsb2F0UmVjdCYgc2hhZG93ZWRSZWN0LCBj
b25zdCBJbnRSZWN0JiBjbGlwUmVjdCwgY29uc3QgYm9vbCBzY2FsZWRCbHVyTGF5ZXIpCiB7CiAg
ICAgSW50U2l6ZSBlZGdlU2l6ZSA9IGJsdXJyZWRFZGdlU2l6ZSgpOwogCkBAIC00MDYsNyArNDE1
LDcgQEAgSW50UmVjdCBTaGFkb3dCbHVyOjpjYWxjdWxhdGVMYXllckJvdW5kaW5nUmVjdChHcmFw
aGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IEYKICAgICBJbnRTaXplIGluZmxhdGlvbjsKIAog
ICAgIGNvbnN0IEFmZmluZVRyYW5zZm9ybSB0cmFuc2Zvcm0gPSBjb250ZXh0LT5nZXRDVE0oKTsK
LSAgICBpZiAobV9zaGFkb3dzSWdub3JlVHJhbnNmb3JtcyAmJiAhdHJhbnNmb3JtLmlzSWRlbnRp
dHkoKSkgeworICAgIGlmIChtX3NoYWRvd3NJZ25vcmVUcmFuc2Zvcm1zICYmICF0cmFuc2Zvcm0u
aXNJZGVudGl0eSgpICYmICFzY2FsZWRCbHVyTGF5ZXIpIHsKICAgICAgICAgRmxvYXRRdWFkIHRy
YW5zZm9ybWVkUG9seWdvbiA9IHRyYW5zZm9ybS5tYXBRdWFkKEZsb2F0UXVhZChzaGFkb3dlZFJl
Y3QpKTsKICAgICAgICAgdHJhbnNmb3JtZWRQb2x5Z29uLm1vdmUobV9vZmZzZXQpOwogICAgICAg
ICBsYXllclJlY3QgPSB0cmFuc2Zvcm0uaW52ZXJzZSgpLm1hcFF1YWQodHJhbnNmb3JtZWRQb2x5
Z29uKS5ib3VuZGluZ0JveCgpOwpAQCAtODg1LDkgKzg5NCwxNSBAQCB2b2lkIFNoYWRvd0JsdXI6
OmJsdXJBbmRDb2xvclNoYWRvd0J1ZmZlcihjb25zdCBJbnRTaXplJiB0ZW1wbGF0ZVNpemUpCiAK
IEdyYXBoaWNzQ29udGV4dCogU2hhZG93Qmx1cjo6YmVnaW5TaGFkb3dMYXllcihHcmFwaGljc0Nv
bnRleHQgKmNvbnRleHQsIGNvbnN0IEZsb2F0UmVjdCYgbGF5ZXJBcmVhKQogewotICAgIGFkanVz
dEJsdXJSYWRpdXMoY29udGV4dCk7CisgICAgRmxvYXRSZWN0IHNjYWxlZExheWVyQXJlYSA9IGxh
eWVyQXJlYTsKKyAgICBib29sIHNjYWxlZEJsdXJMYXllciA9IHVzZVNjYWxlZEJsdXJMYXllcihj
b250ZXh0KTsKKyAgICBjb25zdCBBZmZpbmVUcmFuc2Zvcm0gdHJhbnNmb3JtID0gY29udGV4dC0+
Z2V0Q1RNKCk7CisgICAgaWYgKHNjYWxlZEJsdXJMYXllcikKKyAgICAgICAgc2NhbGVkTGF5ZXJB
cmVhLnNjYWxlKHN0YXRpY19jYXN0PGZsb2F0Pih0cmFuc2Zvcm0ueFNjYWxlKCkpLCBzdGF0aWNf
Y2FzdDxmbG9hdD4odHJhbnNmb3JtLnlTY2FsZSgpKSk7CisgICAgZWxzZQorICAgICAgICBhZGp1
c3RCbHVyUmFkaXVzKGNvbnRleHQpOwogCi0gICAgSW50UmVjdCBsYXllclJlY3QgPSBjYWxjdWxh
dGVMYXllckJvdW5kaW5nUmVjdChjb250ZXh0LCBsYXllckFyZWEsIGNvbnRleHQtPmNsaXBCb3Vu
ZHMoKSk7CisgICAgSW50UmVjdCBsYXllclJlY3QgPSBjYWxjdWxhdGVMYXllckJvdW5kaW5nUmVj
dChjb250ZXh0LCBzY2FsZWRMYXllckFyZWEsIGNvbnRleHQtPmNsaXBCb3VuZHMoKSwgc2NhbGVk
Qmx1ckxheWVyKTsKIAogICAgIGlmIChsYXllclJlY3QuaXNFbXB0eSgpKQogICAgICAgICByZXR1
cm4gMDsKQEAgLTkwNCw2ICs5MTksMTAgQEAgR3JhcGhpY3NDb250ZXh0KiBTaGFkb3dCbHVyOjpi
ZWdpblNoYWRvd0xheWVyKEdyYXBoaWNzQ29udGV4dCAqY29udGV4dCwgY29uc3QgRmwKICAgICBz
aGFkb3dDb250ZXh0LT5jbGVhclJlY3QoRmxvYXRSZWN0KDAsIDAsIG1fbGF5ZXJTaXplLndpZHRo
KCkgKyAxLCBtX2xheWVyU2l6ZS5oZWlnaHQoKSArIDEpKTsKIAogICAgIHNoYWRvd0NvbnRleHQt
PnRyYW5zbGF0ZShtX2xheWVyQ29udGV4dFRyYW5zbGF0aW9uKTsKKworICAgIGlmIChzY2FsZWRC
bHVyTGF5ZXIpCisgICAgICAgIHNoYWRvd0NvbnRleHQtPnNjYWxlKEZsb2F0U2l6ZShzdGF0aWNf
Y2FzdDxmbG9hdD4odHJhbnNmb3JtLnhTY2FsZSgpKSwgc3RhdGljX2Nhc3Q8ZmxvYXQ+KHRyYW5z
Zm9ybS55U2NhbGUoKSkpKTsKKwogICAgIHJldHVybiBzaGFkb3dDb250ZXh0OwogfQogCkBAIC05
MTQsNiArOTMzLDEwIEBAIHZvaWQgU2hhZG93Qmx1cjo6ZW5kU2hhZG93TGF5ZXIoR3JhcGhpY3ND
b250ZXh0KiBjb250ZXh0KQogICAgIGJsdXJBbmRDb2xvclNoYWRvd0J1ZmZlcihleHBhbmRlZElu
dFNpemUobV9sYXllclNpemUpKTsKICAgICBHcmFwaGljc0NvbnRleHRTdGF0ZVNhdmVyIHN0YXRl
U2F2ZSgqY29udGV4dCk7CiAKKyAgICBpZiAodXNlU2NhbGVkQmx1ckxheWVyKGNvbnRleHQpKSB7
CisgICAgICAgIEFmZmluZVRyYW5zZm9ybSB0cmFuc2Zvcm0gPSBjb250ZXh0LT5nZXRDVE0oKTsK
KyAgICAgICAgY29udGV4dC0+c2NhbGUoRmxvYXRTaXplKDEgLyBzdGF0aWNfY2FzdDxmbG9hdD4o
dHJhbnNmb3JtLnhTY2FsZSgpKSwgMSAvIHN0YXRpY19jYXN0PGZsb2F0Pih0cmFuc2Zvcm0ueVNj
YWxlKCkpKSk7CisgICAgfQogICAgIGNvbnRleHQtPmNsZWFyU2hhZG93KCk7CiAgICAgY29udGV4
dC0+ZHJhd0ltYWdlQnVmZmVyKG1fbGF5ZXJJbWFnZSwgQ29sb3JTcGFjZURldmljZVJHQiwgcm91
bmRlZEludFBvaW50KG1fbGF5ZXJPcmlnaW4pLCBJbnRSZWN0KDAsIDAsIG1fbGF5ZXJTaXplLndp
ZHRoKCksIG1fbGF5ZXJTaXplLmhlaWdodCgpKSwgY29udGV4dC0+Y29tcG9zaXRlT3BlcmF0aW9u
KCkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9TaGFk
b3dCbHVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9TaGFkb3dCbHVyLmgK
aW5kZXggMzJmZjYwYi4uODg5NWFjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvU2hhZG93Qmx1ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL1NoYWRvd0JsdXIuaApAQCAtODQsNyArODQsNyBAQCBwcml2YXRlOgogICAgICAgICBJ
bm5lclNoYWRvdwogICAgIH07CiAgICAgCi0gICAgSW50UmVjdCBjYWxjdWxhdGVMYXllckJvdW5k
aW5nUmVjdChHcmFwaGljc0NvbnRleHQqLCBjb25zdCBGbG9hdFJlY3QmIGxheWVyQXJlYSwgY29u
c3QgSW50UmVjdCYgY2xpcFJlY3QpOworICAgIEludFJlY3QgY2FsY3VsYXRlTGF5ZXJCb3VuZGlu
Z1JlY3QoR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgRmxvYXRSZWN0JiBsYXllckFyZWEsIGNvbnN0
IEludFJlY3QmIGNsaXBSZWN0LCBjb25zdCBib29sIHNjYWxlZEJsdXJMYXllciA9IGZhbHNlKTsK
ICAgICBJbnRTaXplIHRlbXBsYXRlU2l6ZShjb25zdCBJbnRTaXplJiBibHVycmVkRWRnZVNpemUs
IGNvbnN0IFJvdW5kZWRSZWN0OjpSYWRpaSYpIGNvbnN0OwogCiAgICAgdm9pZCBkcmF3UmVjdFNo
YWRvd1dpdGhvdXRUaWxpbmcoR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgRmxvYXRSZWN0JiwgY29u
c3QgUm91bmRlZFJlY3Q6OlJhZGlpJiwgY29uc3QgSW50UmVjdCYgbGF5ZXJSZWN0KTsKQEAgLTEw
MCw2ICsxMDAsNyBAQCBwcml2YXRlOgogICAgIAogICAgIEludFNpemUgYmx1cnJlZEVkZ2VTaXpl
KCkgY29uc3Q7CiAgICAgCisgICAgYm9vbCB1c2VTY2FsZWRCbHVyTGF5ZXIoR3JhcGhpY3NDb250
ZXh0Kik7CiAgICAgCiAgICAgU2hhZG93VHlwZSBtX3R5cGU7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>209738</attachid>
            <date>2013-08-27 02:41:17 -0700</date>
            <delta_ts>2013-09-11 21:55:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>Patch1</filename>
            <type>text/plain</type>
            <size>5509</size>
            <attacher name="Yonggeol Jung">yg48.jung</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBlNTNiZDFkLi4wMGNmYTZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIg
QEAKKzIwMTMtMDgtMjcgIFlvbmdHZW9sIEp1bmcgIDx5ZzQ4Lmp1bmdAc2Ftc3VuZy5jb20+CisK
KyAgICAgICAgW2NhaXJvXSBTaGFkb3dCbHVyIGlzIGV4dHJlbWVseSBzbG93IHdoZW4gY2FudmFz
J3Mgc2NhbGUgaXMgdmVyeSBzbWFsbC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEyMDM0NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFNoYWRvd0JsdXIgZHJhd2luZyBpcyB0b28gc2xvdyBpZiBzY2FsZSBv
ZiBjYW52YXMgaXMgc2V0IHRvIHZlcnkgc21hbGwgdmFsdWUgc3VjaCBhcyAwLjAxLgorICAgICAg
ICBUaGUgbWFpbiByZWFzb24gaXMgYmx1clJhZGl1cyBnZXRzIGh1Z2UgdmFsdWUgaWYgc2NhbGUg
aXMgc21hbGwuCisgICAgICAgIElmIHNoYWRvdyB2YWx1ZSBpcyAxMDAgd2l0aCAwLjAxIHNjYWxl
IHZhbHVlLCBibHVyUmFkaXVzIHdpbGwgYmUgMTAwMDAuCisgICAgICAgIEFsbW9zdCB0aW1lIGlz
IGNvbnN1bWVkIHRvIG1ha2UgYmx1cnJlZC1sYXllci4KKworICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL1NoYWRvd0JsdXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2hhZG93Qmx1cjo6dXNl
U2NhbGVkQmx1ckxheWVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNoYWRvd0JsdXI6OmNhbGN1bGF0
ZUxheWVyQm91bmRpbmdSZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OlNoYWRvd0JsdXI6OmJlZ2lu
U2hhZG93TGF5ZXIpOgorICAgICAgICAoV2ViQ29yZTo6U2hhZG93Qmx1cjo6ZW5kU2hhZG93TGF5
ZXIpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL1NoYWRvd0JsdXIuaDoKKwogMjAxMy0w
OC0yNiAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgogCiAgICAgICAgIEVkaXRvckludGVy
bmFsQ29tbWFuZCBzaG91bGQgdXNlIEZyYW1lJiB3aGVyZSBwb3NzaWJsZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvU2hhZG93Qmx1ci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9TaGFkb3dCbHVyLmNwcAppbmRleCA3NDU4ZWE4Li43
MTMwMjg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9TaGFk
b3dCbHVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9TaGFkb3dC
bHVyLmNwcApAQCAtMzk3LDcgKzM5NywxNiBAQCBJbnRTaXplIFNoYWRvd0JsdXI6OmJsdXJyZWRF
ZGdlU2l6ZSgpIGNvbnN0CiAgICAgcmV0dXJuIGVkZ2VTaXplOwogfQogCi1JbnRSZWN0IFNoYWRv
d0JsdXI6OmNhbGN1bGF0ZUxheWVyQm91bmRpbmdSZWN0KEdyYXBoaWNzQ29udGV4dCogY29udGV4
dCwgY29uc3QgRmxvYXRSZWN0JiBzaGFkb3dlZFJlY3QsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0
KQorYm9vbCBTaGFkb3dCbHVyOjp1c2VTY2FsZWRCbHVyTGF5ZXIoR3JhcGhpY3NDb250ZXh0KiBj
b250ZXh0KQoreworICAgIGNvbnN0IEFmZmluZVRyYW5zZm9ybSB0cmFuc2Zvcm0gPSBjb250ZXh0
LT5nZXRDVE0oKTsKKyAgICBpZiAobV9zaGFkb3dzSWdub3JlVHJhbnNmb3JtcyAmJiAhdHJhbnNm
b3JtLmlzSWRlbnRpdHkoKSAmJiB0cmFuc2Zvcm0ueFNjYWxlKCkgPD0gMSAmJiB0cmFuc2Zvcm0u
eVNjYWxlKCkgPD0gMSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICByZXR1cm4gZmFsc2U7
Cit9CisKK0ludFJlY3QgU2hhZG93Qmx1cjo6Y2FsY3VsYXRlTGF5ZXJCb3VuZGluZ1JlY3QoR3Jh
cGhpY3NDb250ZXh0KiBjb250ZXh0LCBjb25zdCBGbG9hdFJlY3QmIHNoYWRvd2VkUmVjdCwgY29u
c3QgSW50UmVjdCYgY2xpcFJlY3QsIGNvbnN0IGJvb2wgc2NhbGVkQmx1ckxheWVyKQogewogICAg
IEludFNpemUgZWRnZVNpemUgPSBibHVycmVkRWRnZVNpemUoKTsKIApAQCAtNDA2LDcgKzQxNSw3
IEBAIEludFJlY3QgU2hhZG93Qmx1cjo6Y2FsY3VsYXRlTGF5ZXJCb3VuZGluZ1JlY3QoR3JhcGhp
Y3NDb250ZXh0KiBjb250ZXh0LCBjb25zdCBGCiAgICAgSW50U2l6ZSBpbmZsYXRpb247CiAKICAg
ICBjb25zdCBBZmZpbmVUcmFuc2Zvcm0gdHJhbnNmb3JtID0gY29udGV4dC0+Z2V0Q1RNKCk7Ci0g
ICAgaWYgKG1fc2hhZG93c0lnbm9yZVRyYW5zZm9ybXMgJiYgIXRyYW5zZm9ybS5pc0lkZW50aXR5
KCkpIHsKKyAgICBpZiAobV9zaGFkb3dzSWdub3JlVHJhbnNmb3JtcyAmJiAhdHJhbnNmb3JtLmlz
SWRlbnRpdHkoKSAmJiAhc2NhbGVkQmx1ckxheWVyKSB7CiAgICAgICAgIEZsb2F0UXVhZCB0cmFu
c2Zvcm1lZFBvbHlnb24gPSB0cmFuc2Zvcm0ubWFwUXVhZChGbG9hdFF1YWQoc2hhZG93ZWRSZWN0
KSk7CiAgICAgICAgIHRyYW5zZm9ybWVkUG9seWdvbi5tb3ZlKG1fb2Zmc2V0KTsKICAgICAgICAg
bGF5ZXJSZWN0ID0gdHJhbnNmb3JtLmludmVyc2UoKS5tYXBRdWFkKHRyYW5zZm9ybWVkUG9seWdv
bikuYm91bmRpbmdCb3goKTsKQEAgLTg4NSw5ICs4OTQsMTUgQEAgdm9pZCBTaGFkb3dCbHVyOjpi
bHVyQW5kQ29sb3JTaGFkb3dCdWZmZXIoY29uc3QgSW50U2l6ZSYgdGVtcGxhdGVTaXplKQogCiBH
cmFwaGljc0NvbnRleHQqIFNoYWRvd0JsdXI6OmJlZ2luU2hhZG93TGF5ZXIoR3JhcGhpY3NDb250
ZXh0ICpjb250ZXh0LCBjb25zdCBGbG9hdFJlY3QmIGxheWVyQXJlYSkKIHsKLSAgICBhZGp1c3RC
bHVyUmFkaXVzKGNvbnRleHQpOworICAgIEZsb2F0UmVjdCBzY2FsZWRMYXllckFyZWEgPSBsYXll
ckFyZWE7CisgICAgYm9vbCBzY2FsZWRCbHVyTGF5ZXIgPSB1c2VTY2FsZWRCbHVyTGF5ZXIoY29u
dGV4dCk7CisgICAgY29uc3QgQWZmaW5lVHJhbnNmb3JtIHRyYW5zZm9ybSA9IGNvbnRleHQtPmdl
dENUTSgpOworICAgIGlmIChzY2FsZWRCbHVyTGF5ZXIpCisgICAgICAgIHNjYWxlZExheWVyQXJl
YS5zY2FsZShzdGF0aWNfY2FzdDxmbG9hdD4odHJhbnNmb3JtLnhTY2FsZSgpKSwgc3RhdGljX2Nh
c3Q8ZmxvYXQ+KHRyYW5zZm9ybS55U2NhbGUoKSkpOworICAgIGVsc2UKKyAgICAgICAgYWRqdXN0
Qmx1clJhZGl1cyhjb250ZXh0KTsKIAotICAgIEludFJlY3QgbGF5ZXJSZWN0ID0gY2FsY3VsYXRl
TGF5ZXJCb3VuZGluZ1JlY3QoY29udGV4dCwgbGF5ZXJBcmVhLCBjb250ZXh0LT5jbGlwQm91bmRz
KCkpOworICAgIEludFJlY3QgbGF5ZXJSZWN0ID0gY2FsY3VsYXRlTGF5ZXJCb3VuZGluZ1JlY3Qo
Y29udGV4dCwgc2NhbGVkTGF5ZXJBcmVhLCBjb250ZXh0LT5jbGlwQm91bmRzKCksIHNjYWxlZEJs
dXJMYXllcik7CiAKICAgICBpZiAobGF5ZXJSZWN0LmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJu
IDA7CkBAIC05MDQsNiArOTE5LDEwIEBAIEdyYXBoaWNzQ29udGV4dCogU2hhZG93Qmx1cjo6YmVn
aW5TaGFkb3dMYXllcihHcmFwaGljc0NvbnRleHQgKmNvbnRleHQsIGNvbnN0IEZsCiAgICAgc2hh
ZG93Q29udGV4dC0+Y2xlYXJSZWN0KEZsb2F0UmVjdCgwLCAwLCBtX2xheWVyU2l6ZS53aWR0aCgp
ICsgMSwgbV9sYXllclNpemUuaGVpZ2h0KCkgKyAxKSk7CiAKICAgICBzaGFkb3dDb250ZXh0LT50
cmFuc2xhdGUobV9sYXllckNvbnRleHRUcmFuc2xhdGlvbik7CisKKyAgICBpZiAoc2NhbGVkQmx1
ckxheWVyKQorICAgICAgICBzaGFkb3dDb250ZXh0LT5zY2FsZShGbG9hdFNpemUoc3RhdGljX2Nh
c3Q8ZmxvYXQ+KHRyYW5zZm9ybS54U2NhbGUoKSksIHN0YXRpY19jYXN0PGZsb2F0Pih0cmFuc2Zv
cm0ueVNjYWxlKCkpKSk7CisKICAgICByZXR1cm4gc2hhZG93Q29udGV4dDsKIH0KIApAQCAtOTE0
LDYgKzkzMywxMCBAQCB2b2lkIFNoYWRvd0JsdXI6OmVuZFNoYWRvd0xheWVyKEdyYXBoaWNzQ29u
dGV4dCogY29udGV4dCkKICAgICBibHVyQW5kQ29sb3JTaGFkb3dCdWZmZXIoZXhwYW5kZWRJbnRT
aXplKG1fbGF5ZXJTaXplKSk7CiAgICAgR3JhcGhpY3NDb250ZXh0U3RhdGVTYXZlciBzdGF0ZVNh
dmUoKmNvbnRleHQpOwogCisgICAgaWYgKHVzZVNjYWxlZEJsdXJMYXllcihjb250ZXh0KSkgewor
ICAgICAgICBBZmZpbmVUcmFuc2Zvcm0gdHJhbnNmb3JtID0gY29udGV4dC0+Z2V0Q1RNKCk7Cisg
ICAgICAgIGNvbnRleHQtPnNjYWxlKEZsb2F0U2l6ZSgxIC8gc3RhdGljX2Nhc3Q8ZmxvYXQ+KHRy
YW5zZm9ybS54U2NhbGUoKSksIDEgLyBzdGF0aWNfY2FzdDxmbG9hdD4odHJhbnNmb3JtLnlTY2Fs
ZSgpKSkpOworICAgIH0KICAgICBjb250ZXh0LT5jbGVhclNoYWRvdygpOwogICAgIGNvbnRleHQt
PmRyYXdJbWFnZUJ1ZmZlcihtX2xheWVySW1hZ2UsIENvbG9yU3BhY2VEZXZpY2VSR0IsIHJvdW5k
ZWRJbnRQb2ludChtX2xheWVyT3JpZ2luKSwgSW50UmVjdCgwLCAwLCBtX2xheWVyU2l6ZS53aWR0
aCgpLCBtX2xheWVyU2l6ZS5oZWlnaHQoKSksIGNvbnRleHQtPmNvbXBvc2l0ZU9wZXJhdGlvbigp
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvU2hhZG93
Qmx1ci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvU2hhZG93Qmx1ci5oCmlu
ZGV4IDMyZmY2MGIuLjg4OTVhYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL1NoYWRvd0JsdXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9TaGFkb3dCbHVyLmgKQEAgLTg0LDcgKzg0LDcgQEAgcHJpdmF0ZToKICAgICAgICAgSW5u
ZXJTaGFkb3cKICAgICB9OwogICAgIAotICAgIEludFJlY3QgY2FsY3VsYXRlTGF5ZXJCb3VuZGlu
Z1JlY3QoR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgRmxvYXRSZWN0JiBsYXllckFyZWEsIGNvbnN0
IEludFJlY3QmIGNsaXBSZWN0KTsKKyAgICBJbnRSZWN0IGNhbGN1bGF0ZUxheWVyQm91bmRpbmdS
ZWN0KEdyYXBoaWNzQ29udGV4dCosIGNvbnN0IEZsb2F0UmVjdCYgbGF5ZXJBcmVhLCBjb25zdCBJ
bnRSZWN0JiBjbGlwUmVjdCwgY29uc3QgYm9vbCBzY2FsZWRCbHVyTGF5ZXIgPSBmYWxzZSk7CiAg
ICAgSW50U2l6ZSB0ZW1wbGF0ZVNpemUoY29uc3QgSW50U2l6ZSYgYmx1cnJlZEVkZ2VTaXplLCBj
b25zdCBSb3VuZGVkUmVjdDo6UmFkaWkmKSBjb25zdDsKIAogICAgIHZvaWQgZHJhd1JlY3RTaGFk
b3dXaXRob3V0VGlsaW5nKEdyYXBoaWNzQ29udGV4dCosIGNvbnN0IEZsb2F0UmVjdCYsIGNvbnN0
IFJvdW5kZWRSZWN0OjpSYWRpaSYsIGNvbnN0IEludFJlY3QmIGxheWVyUmVjdCk7CkBAIC0xMDAs
NiArMTAwLDcgQEAgcHJpdmF0ZToKICAgICAKICAgICBJbnRTaXplIGJsdXJyZWRFZGdlU2l6ZSgp
IGNvbnN0OwogICAgIAorICAgIGJvb2wgdXNlU2NhbGVkQmx1ckxheWVyKEdyYXBoaWNzQ29udGV4
dCopOwogICAgIAogICAgIFNoYWRvd1R5cGUgbV90eXBlOwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>211396</attachid>
            <date>2013-09-11 21:55:21 -0700</date>
            <delta_ts>2013-10-16 09:10:04 -0700</delta_ts>
            <desc>Offset issue is fixed.</desc>
            <filename>Patch</filename>
            <type>text/plain</type>
            <size>5609</size>
            <attacher name="Yonggeol Jung">yg48.jung</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBlNTNiZDFkLi4wMGNmYTZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIg
QEAKKzIwMTMtMDgtMjcgIFlvbmdHZW9sIEp1bmcgIDx5ZzQ4Lmp1bmdAc2Ftc3VuZy5jb20+CisK
KyAgICAgICAgW2NhaXJvXSBTaGFkb3dCbHVyIGlzIGV4dHJlbWVseSBzbG93IHdoZW4gY2FudmFz
J3Mgc2NhbGUgaXMgdmVyeSBzbWFsbC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEyMDM0NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFNoYWRvd0JsdXIgZHJhd2luZyBpcyB0b28gc2xvdyBpZiBzY2FsZSBv
ZiBjYW52YXMgaXMgc2V0IHRvIHZlcnkgc21hbGwgdmFsdWUgc3VjaCBhcyAwLjAxLgorICAgICAg
ICBUaGUgbWFpbiByZWFzb24gaXMgYmx1clJhZGl1cyBnZXRzIGh1Z2UgdmFsdWUgaWYgc2NhbGUg
aXMgc21hbGwuCisgICAgICAgIElmIHNoYWRvdyB2YWx1ZSBpcyAxMDAgd2l0aCAwLjAxIHNjYWxl
IHZhbHVlLCBibHVyUmFkaXVzIHdpbGwgYmUgMTAwMDAuCisgICAgICAgIEFsbW9zdCB0aW1lIGlz
IGNvbnN1bWVkIHRvIG1ha2UgYmx1cnJlZC1sYXllci4KKworICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL1NoYWRvd0JsdXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2hhZG93Qmx1cjo6dXNl
U2NhbGVkQmx1ckxheWVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNoYWRvd0JsdXI6OmNhbGN1bGF0
ZUxheWVyQm91bmRpbmdSZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OlNoYWRvd0JsdXI6OmJlZ2lu
U2hhZG93TGF5ZXIpOgorICAgICAgICAoV2ViQ29yZTo6U2hhZG93Qmx1cjo6ZW5kU2hhZG93TGF5
ZXIpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL1NoYWRvd0JsdXIuaDoKKwogMjAxMy0w
OC0yNiAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgogCiAgICAgICAgIEVkaXRvckludGVy
bmFsQ29tbWFuZCBzaG91bGQgdXNlIEZyYW1lJiB3aGVyZSBwb3NzaWJsZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvU2hhZG93Qmx1ci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9TaGFkb3dCbHVyLmNwcAppbmRleCA3NDU4ZWE4Li5h
Y2Q2NjM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9TaGFk
b3dCbHVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9TaGFkb3dC
bHVyLmNwcApAQCAtMzk3LDcgKzM5NywxNiBAQCBJbnRTaXplIFNoYWRvd0JsdXI6OmJsdXJyZWRF
ZGdlU2l6ZSgpIGNvbnN0CiAgICAgcmV0dXJuIGVkZ2VTaXplOwogfQogCi1JbnRSZWN0IFNoYWRv
d0JsdXI6OmNhbGN1bGF0ZUxheWVyQm91bmRpbmdSZWN0KEdyYXBoaWNzQ29udGV4dCogY29udGV4
dCwgY29uc3QgRmxvYXRSZWN0JiBzaGFkb3dlZFJlY3QsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0
KQorYm9vbCBTaGFkb3dCbHVyOjp1c2VTY2FsZWRCbHVyTGF5ZXIoR3JhcGhpY3NDb250ZXh0KiBj
b250ZXh0KQoreworICAgIGNvbnN0IEFmZmluZVRyYW5zZm9ybSB0cmFuc2Zvcm0gPSBjb250ZXh0
LT5nZXRDVE0oKTsKKyAgICBpZiAobV9zaGFkb3dzSWdub3JlVHJhbnNmb3JtcyAmJiAhdHJhbnNm
b3JtLmlzSWRlbnRpdHkoKSAmJiB0cmFuc2Zvcm0ueFNjYWxlKCkgPCAxICYmIHRyYW5zZm9ybS55
U2NhbGUoKSA8IDEpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgcmV0dXJuIGZhbHNlOwor
fQorCitJbnRSZWN0IFNoYWRvd0JsdXI6OmNhbGN1bGF0ZUxheWVyQm91bmRpbmdSZWN0KEdyYXBo
aWNzQ29udGV4dCogY29udGV4dCwgY29uc3QgRmxvYXRSZWN0JiBzaGFkb3dlZFJlY3QsIGNvbnN0
IEludFJlY3QmIGNsaXBSZWN0LCBjb25zdCBib29sIHNjYWxlZEJsdXJMYXllcikKIHsKICAgICBJ
bnRTaXplIGVkZ2VTaXplID0gYmx1cnJlZEVkZ2VTaXplKCk7CiAKQEAgLTQwNSw4ICs0MTQsMTAg
QEAgSW50UmVjdCBTaGFkb3dCbHVyOjpjYWxjdWxhdGVMYXllckJvdW5kaW5nUmVjdChHcmFwaGlj
c0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IEYKICAgICBGbG9hdFJlY3QgbGF5ZXJSZWN0OwogICAg
IEludFNpemUgaW5mbGF0aW9uOwogCi0gICAgY29uc3QgQWZmaW5lVHJhbnNmb3JtIHRyYW5zZm9y
bSA9IGNvbnRleHQtPmdldENUTSgpOworICAgIEFmZmluZVRyYW5zZm9ybSB0cmFuc2Zvcm0gPSBj
b250ZXh0LT5nZXRDVE0oKTsKICAgICBpZiAobV9zaGFkb3dzSWdub3JlVHJhbnNmb3JtcyAmJiAh
dHJhbnNmb3JtLmlzSWRlbnRpdHkoKSkgeworICAgICAgICBpZiAoc2NhbGVkQmx1ckxheWVyKQor
ICAgICAgICAgICAgdHJhbnNmb3JtLnNjYWxlKDEgLyB0cmFuc2Zvcm0ueFNjYWxlKCksIDEgLyB0
cmFuc2Zvcm0ueVNjYWxlKCkpOwogICAgICAgICBGbG9hdFF1YWQgdHJhbnNmb3JtZWRQb2x5Z29u
ID0gdHJhbnNmb3JtLm1hcFF1YWQoRmxvYXRRdWFkKHNoYWRvd2VkUmVjdCkpOwogICAgICAgICB0
cmFuc2Zvcm1lZFBvbHlnb24ubW92ZShtX29mZnNldCk7CiAgICAgICAgIGxheWVyUmVjdCA9IHRy
YW5zZm9ybS5pbnZlcnNlKCkubWFwUXVhZCh0cmFuc2Zvcm1lZFBvbHlnb24pLmJvdW5kaW5nQm94
KCk7CkBAIC04ODUsOSArODk2LDE1IEBAIHZvaWQgU2hhZG93Qmx1cjo6Ymx1ckFuZENvbG9yU2hh
ZG93QnVmZmVyKGNvbnN0IEludFNpemUmIHRlbXBsYXRlU2l6ZSkKIAogR3JhcGhpY3NDb250ZXh0
KiBTaGFkb3dCbHVyOjpiZWdpblNoYWRvd0xheWVyKEdyYXBoaWNzQ29udGV4dCAqY29udGV4dCwg
Y29uc3QgRmxvYXRSZWN0JiBsYXllckFyZWEpCiB7Ci0gICAgYWRqdXN0Qmx1clJhZGl1cyhjb250
ZXh0KTsKKyAgICBGbG9hdFJlY3Qgc2NhbGVkTGF5ZXJBcmVhID0gbGF5ZXJBcmVhOworICAgIGJv
b2wgc2NhbGVkQmx1ckxheWVyID0gdXNlU2NhbGVkQmx1ckxheWVyKGNvbnRleHQpOworICAgIGNv
bnN0IEFmZmluZVRyYW5zZm9ybSB0cmFuc2Zvcm0gPSBjb250ZXh0LT5nZXRDVE0oKTsKKyAgICBp
ZiAoc2NhbGVkQmx1ckxheWVyKQorICAgICAgICBzY2FsZWRMYXllckFyZWEuc2NhbGUoc3RhdGlj
X2Nhc3Q8ZmxvYXQ+KHRyYW5zZm9ybS54U2NhbGUoKSksIHN0YXRpY19jYXN0PGZsb2F0Pih0cmFu
c2Zvcm0ueVNjYWxlKCkpKTsKKyAgICBlbHNlCisgICAgICAgIGFkanVzdEJsdXJSYWRpdXMoY29u
dGV4dCk7CiAKLSAgICBJbnRSZWN0IGxheWVyUmVjdCA9IGNhbGN1bGF0ZUxheWVyQm91bmRpbmdS
ZWN0KGNvbnRleHQsIGxheWVyQXJlYSwgY29udGV4dC0+Y2xpcEJvdW5kcygpKTsKKyAgICBJbnRS
ZWN0IGxheWVyUmVjdCA9IGNhbGN1bGF0ZUxheWVyQm91bmRpbmdSZWN0KGNvbnRleHQsIHNjYWxl
ZExheWVyQXJlYSwgY29udGV4dC0+Y2xpcEJvdW5kcygpLCBzY2FsZWRCbHVyTGF5ZXIpOwogCiAg
ICAgaWYgKGxheWVyUmVjdC5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVybiAwOwpAQCAtOTA0LDYg
KzkyMSwxMCBAQCBHcmFwaGljc0NvbnRleHQqIFNoYWRvd0JsdXI6OmJlZ2luU2hhZG93TGF5ZXIo
R3JhcGhpY3NDb250ZXh0ICpjb250ZXh0LCBjb25zdCBGbAogICAgIHNoYWRvd0NvbnRleHQtPmNs
ZWFyUmVjdChGbG9hdFJlY3QoMCwgMCwgbV9sYXllclNpemUud2lkdGgoKSArIDEsIG1fbGF5ZXJT
aXplLmhlaWdodCgpICsgMSkpOwogCiAgICAgc2hhZG93Q29udGV4dC0+dHJhbnNsYXRlKG1fbGF5
ZXJDb250ZXh0VHJhbnNsYXRpb24pOworCisgICAgaWYgKHNjYWxlZEJsdXJMYXllcikKKyAgICAg
ICAgc2hhZG93Q29udGV4dC0+c2NhbGUoRmxvYXRTaXplKHN0YXRpY19jYXN0PGZsb2F0Pih0cmFu
c2Zvcm0ueFNjYWxlKCkpLCBzdGF0aWNfY2FzdDxmbG9hdD4odHJhbnNmb3JtLnlTY2FsZSgpKSkp
OworCiAgICAgcmV0dXJuIHNoYWRvd0NvbnRleHQ7CiB9CiAKQEAgLTkxNCw2ICs5MzUsMTAgQEAg
dm9pZCBTaGFkb3dCbHVyOjplbmRTaGFkb3dMYXllcihHcmFwaGljc0NvbnRleHQqIGNvbnRleHQp
CiAgICAgYmx1ckFuZENvbG9yU2hhZG93QnVmZmVyKGV4cGFuZGVkSW50U2l6ZShtX2xheWVyU2l6
ZSkpOwogICAgIEdyYXBoaWNzQ29udGV4dFN0YXRlU2F2ZXIgc3RhdGVTYXZlKCpjb250ZXh0KTsK
IAorICAgIGlmICh1c2VTY2FsZWRCbHVyTGF5ZXIoY29udGV4dCkpIHsKKyAgICAgICAgQWZmaW5l
VHJhbnNmb3JtIHRyYW5zZm9ybSA9IGNvbnRleHQtPmdldENUTSgpOworICAgICAgICBjb250ZXh0
LT5zY2FsZShGbG9hdFNpemUoMSAvIHN0YXRpY19jYXN0PGZsb2F0Pih0cmFuc2Zvcm0ueFNjYWxl
KCkpLCAxIC8gc3RhdGljX2Nhc3Q8ZmxvYXQ+KHRyYW5zZm9ybS55U2NhbGUoKSkpKTsKKyAgICB9
CiAgICAgY29udGV4dC0+Y2xlYXJTaGFkb3coKTsKICAgICBjb250ZXh0LT5kcmF3SW1hZ2VCdWZm
ZXIobV9sYXllckltYWdlLCBDb2xvclNwYWNlRGV2aWNlUkdCLCByb3VuZGVkSW50UG9pbnQobV9s
YXllck9yaWdpbiksIEludFJlY3QoMCwgMCwgbV9sYXllclNpemUud2lkdGgoKSwgbV9sYXllclNp
emUuaGVpZ2h0KCkpLCBjb250ZXh0LT5jb21wb3NpdGVPcGVyYXRpb24oKSk7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NoYWRvd0JsdXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NoYWRvd0JsdXIuaAppbmRleCAzMmZmNjBiLi44
ODk1YWM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9TaGFk
b3dCbHVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvU2hhZG93Qmx1
ci5oCkBAIC04NCw3ICs4NCw3IEBAIHByaXZhdGU6CiAgICAgICAgIElubmVyU2hhZG93CiAgICAg
fTsKICAgICAKLSAgICBJbnRSZWN0IGNhbGN1bGF0ZUxheWVyQm91bmRpbmdSZWN0KEdyYXBoaWNz
Q29udGV4dCosIGNvbnN0IEZsb2F0UmVjdCYgbGF5ZXJBcmVhLCBjb25zdCBJbnRSZWN0JiBjbGlw
UmVjdCk7CisgICAgSW50UmVjdCBjYWxjdWxhdGVMYXllckJvdW5kaW5nUmVjdChHcmFwaGljc0Nv
bnRleHQqLCBjb25zdCBGbG9hdFJlY3QmIGxheWVyQXJlYSwgY29uc3QgSW50UmVjdCYgY2xpcFJl
Y3QsIGNvbnN0IGJvb2wgc2NhbGVkQmx1ckxheWVyID0gZmFsc2UpOwogICAgIEludFNpemUgdGVt
cGxhdGVTaXplKGNvbnN0IEludFNpemUmIGJsdXJyZWRFZGdlU2l6ZSwgY29uc3QgUm91bmRlZFJl
Y3Q6OlJhZGlpJikgY29uc3Q7CiAKICAgICB2b2lkIGRyYXdSZWN0U2hhZG93V2l0aG91dFRpbGlu
ZyhHcmFwaGljc0NvbnRleHQqLCBjb25zdCBGbG9hdFJlY3QmLCBjb25zdCBSb3VuZGVkUmVjdDo6
UmFkaWkmLCBjb25zdCBJbnRSZWN0JiBsYXllclJlY3QpOwpAQCAtMTAwLDYgKzEwMCw3IEBAIHBy
aXZhdGU6CiAgICAgCiAgICAgSW50U2l6ZSBibHVycmVkRWRnZVNpemUoKSBjb25zdDsKICAgICAK
KyAgICBib29sIHVzZVNjYWxlZEJsdXJMYXllcihHcmFwaGljc0NvbnRleHQqKTsKICAgICAKICAg
ICBTaGFkb3dUeXBlIG1fdHlwZTsKIAo=
</data>
<flag name="review"
          id="233480"
          type_id="1"
          status="-"
          setter="noam"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>214427</attachid>
            <date>2013-10-17 00:30:26 -0700</date>
            <delta_ts>2016-05-24 22:03:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>Patch</filename>
            <type>text/plain</type>
            <size>5989</size>
            <attacher name="Yonggeol Jung">yg48.jung</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBjODliOWUzLi42NWQ2Y2NiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUg
QEAKKzIwMTMtMTAtMTYgIFlvbmdHZW9sIEp1bmcgIDx5ZzQ4Lmp1bmdAc2Ftc3VuZy5jb20+CisK
KyAgICAgICAgW2NhaXJvXSBTaGFkb3dCbHVyIGlzIGV4dHJlbWVseSBzbG93IHdoZW4gY2FudmFz
J3Mgc2NhbGUgaXMgdmVyeSBzbWFsbC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEyMDM0NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIERyYXdpbmcgb2Ygc2hhZG93LWJsdXIgaXMgdG9vIHNsb3cgd2hlbiB0
aGUgY2FudmFzIHNjYWxlIHZhbHVlIGlzIHNtYWxsLgorICAgICAgICBJZiB0aGUgY2FudmFzIGJs
dXIgdmFsdWUgaXMgMTAwIGFuZCB0aGUgc2NhbGUgaXMgMC4wMSwgdGhlIGJsdXIgcmFkaXVzIGJl
Y29tZXMgMTAsMDAwCisgICAgICAgIGFuZCBtb3N0IG9mIHRoZSBwcm9jZXNzaW5nIHRpbWUgaXMg
dXNlZCB0byBibHVyIHRoZSBsYXllci4KKworICAgICAgICBUbyBpbXByb3ZlIHRoZSBwZXJmb3Jt
YW5jZSwKKyAgICAgICAgZmlyc3QgY3JlYXRlIHRoZSBsYXllcihmb3IgYmx1cnJpbmcpIHdpdGgg
YXBwbHlpbmcgdGhlIGNhbnZhcyBzY2FsZSBhbmQgc2V0IHRoZSBzY2FsZSBvZiB0aGUgdGFyZ2V0
IGNvbnRleHQgdG8gMSwKKyAgICAgICAgdGhlbiBjb3B5IGl0IHRvIHRoZSB0YXJnZXQuCisKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9TaGFkb3dCbHVyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlNoYWRvd0JsdXI6OnVzZVNjYWxlZEJsdXJMYXllcik6CisgICAgICAgIChXZWJDb3JlOjpT
aGFkb3dCbHVyOjpjYWxjdWxhdGVMYXllckJvdW5kaW5nUmVjdCk6CisgICAgICAgIChXZWJDb3Jl
OjpTaGFkb3dCbHVyOjpiZWdpblNoYWRvd0xheWVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNoYWRv
d0JsdXI6OmVuZFNoYWRvd0xheWVyKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9TaGFk
b3dCbHVyLmg6CisKIDIwMTMtMTAtMTYgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBs
ZS5jb20+CiAKICAgICAgICAgQXR0ZW1wdCB0byBmaXggdGhlIFdpbmRvd3MgYnVpbGQgYWZ0ZXIg
aHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTU3NTQ3LgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvU2hhZG93Qmx1ci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9TaGFkb3dCbHVyLmNwcAppbmRleCA3NDU4ZWE4Li4xNTdi
ODBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9TaGFkb3dC
bHVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9TaGFkb3dCbHVy
LmNwcApAQCAtMzk3LDcgKzM5NywxOSBAQCBJbnRTaXplIFNoYWRvd0JsdXI6OmJsdXJyZWRFZGdl
U2l6ZSgpIGNvbnN0CiAgICAgcmV0dXJuIGVkZ2VTaXplOwogfQogCi1JbnRSZWN0IFNoYWRvd0Js
dXI6OmNhbGN1bGF0ZUxheWVyQm91bmRpbmdSZWN0KEdyYXBoaWNzQ29udGV4dCogY29udGV4dCwg
Y29uc3QgRmxvYXRSZWN0JiBzaGFkb3dlZFJlY3QsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0KQor
Ym9vbCBTaGFkb3dCbHVyOjp1c2VTY2FsZWRCbHVyTGF5ZXIoR3JhcGhpY3NDb250ZXh0KiBjb250
ZXh0KQoreworICAgIGlmICghbV9zaGFkb3dzSWdub3JlVHJhbnNmb3JtcykKKyAgICAgICAgcmV0
dXJuIGZhbHNlOworCisgICAgQWZmaW5lVHJhbnNmb3JtIHRyYW5zZm9ybSA9IGNvbnRleHQtPmdl
dENUTSgpOworICAgIGlmICghdHJhbnNmb3JtLmlzSWRlbnRpdHkoKSAmJiB0cmFuc2Zvcm0ueFNj
YWxlKCkgPCAxICYmIHRyYW5zZm9ybS55U2NhbGUoKSA8IDEpCisgICAgICAgIHJldHVybiB0cnVl
OworCisgICAgcmV0dXJuIGZhbHNlOworfQorCitJbnRSZWN0IFNoYWRvd0JsdXI6OmNhbGN1bGF0
ZUxheWVyQm91bmRpbmdSZWN0KEdyYXBoaWNzQ29udGV4dCogY29udGV4dCwgY29uc3QgRmxvYXRS
ZWN0JiBzaGFkb3dlZFJlY3QsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0LCBjb25zdCBib29sIHNj
YWxlZEJsdXJMYXllcikKIHsKICAgICBJbnRTaXplIGVkZ2VTaXplID0gYmx1cnJlZEVkZ2VTaXpl
KCk7CiAKQEAgLTQwNSw4ICs0MTcsMTMgQEAgSW50UmVjdCBTaGFkb3dCbHVyOjpjYWxjdWxhdGVM
YXllckJvdW5kaW5nUmVjdChHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IEYKICAgICBG
bG9hdFJlY3QgbGF5ZXJSZWN0OwogICAgIEludFNpemUgaW5mbGF0aW9uOwogCi0gICAgY29uc3Qg
QWZmaW5lVHJhbnNmb3JtIHRyYW5zZm9ybSA9IGNvbnRleHQtPmdldENUTSgpOworICAgIEFmZmlu
ZVRyYW5zZm9ybSB0cmFuc2Zvcm0gPSBjb250ZXh0LT5nZXRDVE0oKTsKICAgICBpZiAobV9zaGFk
b3dzSWdub3JlVHJhbnNmb3JtcyAmJiAhdHJhbnNmb3JtLmlzSWRlbnRpdHkoKSkgeworICAgICAg
ICAvLyBCZWZvcmUgZHJhd2luZyB0aGUgc2hhZG93cywgdGhlIHNjYWxlIGZhY3RvciBvZiBjb250
ZXh0IGlzIDEuCisgICAgICAgIC8vIFNvLCB0aGUgcG9zaXRpb25zIGFuZCBzaXplcyBvZiByZWN0
YW5nbGVzIHNob3VsZCBiZSBjYWxjdWxhdGVkIGFzIGNvbnNpZGVyaW5nIHRoZSBzY2FsZSBmYWN0
b3IgaXMgMS4KKyAgICAgICAgaWYgKHNjYWxlZEJsdXJMYXllcikKKyAgICAgICAgICAgIHRyYW5z
Zm9ybS5zY2FsZSgxIC8gdHJhbnNmb3JtLnhTY2FsZSgpLCAxIC8gdHJhbnNmb3JtLnlTY2FsZSgp
KTsKKwogICAgICAgICBGbG9hdFF1YWQgdHJhbnNmb3JtZWRQb2x5Z29uID0gdHJhbnNmb3JtLm1h
cFF1YWQoRmxvYXRRdWFkKHNoYWRvd2VkUmVjdCkpOwogICAgICAgICB0cmFuc2Zvcm1lZFBvbHln
b24ubW92ZShtX29mZnNldCk7CiAgICAgICAgIGxheWVyUmVjdCA9IHRyYW5zZm9ybS5pbnZlcnNl
KCkubWFwUXVhZCh0cmFuc2Zvcm1lZFBvbHlnb24pLmJvdW5kaW5nQm94KCk7CkBAIC04ODUsOSAr
OTAyLDE2IEBAIHZvaWQgU2hhZG93Qmx1cjo6Ymx1ckFuZENvbG9yU2hhZG93QnVmZmVyKGNvbnN0
IEludFNpemUmIHRlbXBsYXRlU2l6ZSkKIAogR3JhcGhpY3NDb250ZXh0KiBTaGFkb3dCbHVyOjpi
ZWdpblNoYWRvd0xheWVyKEdyYXBoaWNzQ29udGV4dCAqY29udGV4dCwgY29uc3QgRmxvYXRSZWN0
JiBsYXllckFyZWEpCiB7Ci0gICAgYWRqdXN0Qmx1clJhZGl1cyhjb250ZXh0KTsKKyAgICBGbG9h
dFJlY3Qgc2NhbGVkTGF5ZXJBcmVhID0gbGF5ZXJBcmVhOworICAgIEFmZmluZVRyYW5zZm9ybSB0
cmFuc2Zvcm0gPSBjb250ZXh0LT5nZXRDVE0oKTsKKyAgICBib29sIHNjYWxlZEJsdXJMYXllciA9
IHVzZVNjYWxlZEJsdXJMYXllcihjb250ZXh0KTsKKworICAgIGlmIChzY2FsZWRCbHVyTGF5ZXIp
CisgICAgICAgIHNjYWxlZExheWVyQXJlYS5zY2FsZShzdGF0aWNfY2FzdDxmbG9hdD4odHJhbnNm
b3JtLnhTY2FsZSgpKSwgc3RhdGljX2Nhc3Q8ZmxvYXQ+KHRyYW5zZm9ybS55U2NhbGUoKSkpOwor
ICAgIGVsc2UKKyAgICAgICAgYWRqdXN0Qmx1clJhZGl1cyhjb250ZXh0KTsKIAotICAgIEludFJl
Y3QgbGF5ZXJSZWN0ID0gY2FsY3VsYXRlTGF5ZXJCb3VuZGluZ1JlY3QoY29udGV4dCwgbGF5ZXJB
cmVhLCBjb250ZXh0LT5jbGlwQm91bmRzKCkpOworICAgIEludFJlY3QgbGF5ZXJSZWN0ID0gY2Fs
Y3VsYXRlTGF5ZXJCb3VuZGluZ1JlY3QoY29udGV4dCwgc2NhbGVkTGF5ZXJBcmVhLCBjb250ZXh0
LT5jbGlwQm91bmRzKCksIHNjYWxlZEJsdXJMYXllcik7CiAKICAgICBpZiAobGF5ZXJSZWN0Lmlz
RW1wdHkoKSkKICAgICAgICAgcmV0dXJuIDA7CkBAIC05MDQsNiArOTI4LDEwIEBAIEdyYXBoaWNz
Q29udGV4dCogU2hhZG93Qmx1cjo6YmVnaW5TaGFkb3dMYXllcihHcmFwaGljc0NvbnRleHQgKmNv
bnRleHQsIGNvbnN0IEZsCiAgICAgc2hhZG93Q29udGV4dC0+Y2xlYXJSZWN0KEZsb2F0UmVjdCgw
LCAwLCBtX2xheWVyU2l6ZS53aWR0aCgpICsgMSwgbV9sYXllclNpemUuaGVpZ2h0KCkgKyAxKSk7
CiAKICAgICBzaGFkb3dDb250ZXh0LT50cmFuc2xhdGUobV9sYXllckNvbnRleHRUcmFuc2xhdGlv
bik7CisKKyAgICBpZiAoc2NhbGVkQmx1ckxheWVyKQorICAgICAgICBzaGFkb3dDb250ZXh0LT5z
Y2FsZShGbG9hdFNpemUoc3RhdGljX2Nhc3Q8ZmxvYXQ+KHRyYW5zZm9ybS54U2NhbGUoKSksIHN0
YXRpY19jYXN0PGZsb2F0Pih0cmFuc2Zvcm0ueVNjYWxlKCkpKSk7CisKICAgICByZXR1cm4gc2hh
ZG93Q29udGV4dDsKIH0KIApAQCAtOTE0LDYgKzk0MiwxMCBAQCB2b2lkIFNoYWRvd0JsdXI6OmVu
ZFNoYWRvd0xheWVyKEdyYXBoaWNzQ29udGV4dCogY29udGV4dCkKICAgICBibHVyQW5kQ29sb3JT
aGFkb3dCdWZmZXIoZXhwYW5kZWRJbnRTaXplKG1fbGF5ZXJTaXplKSk7CiAgICAgR3JhcGhpY3ND
b250ZXh0U3RhdGVTYXZlciBzdGF0ZVNhdmUoKmNvbnRleHQpOwogCisgICAgaWYgKHVzZVNjYWxl
ZEJsdXJMYXllcihjb250ZXh0KSkgeworICAgICAgICBBZmZpbmVUcmFuc2Zvcm0gdHJhbnNmb3Jt
ID0gY29udGV4dC0+Z2V0Q1RNKCk7CisgICAgICAgIGNvbnRleHQtPnNjYWxlKEZsb2F0U2l6ZSgx
IC8gc3RhdGljX2Nhc3Q8ZmxvYXQ+KHRyYW5zZm9ybS54U2NhbGUoKSksIDEgLyBzdGF0aWNfY2Fz
dDxmbG9hdD4odHJhbnNmb3JtLnlTY2FsZSgpKSkpOworICAgIH0KICAgICBjb250ZXh0LT5jbGVh
clNoYWRvdygpOwogICAgIGNvbnRleHQtPmRyYXdJbWFnZUJ1ZmZlcihtX2xheWVySW1hZ2UsIENv
bG9yU3BhY2VEZXZpY2VSR0IsIHJvdW5kZWRJbnRQb2ludChtX2xheWVyT3JpZ2luKSwgSW50UmVj
dCgwLCAwLCBtX2xheWVyU2l6ZS53aWR0aCgpLCBtX2xheWVyU2l6ZS5oZWlnaHQoKSksIGNvbnRl
eHQtPmNvbXBvc2l0ZU9wZXJhdGlvbigpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvU2hhZG93Qmx1ci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvU2hhZG93Qmx1ci5oCmluZGV4IDMyZmY2MGIuLjg4OTVhYzQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NoYWRvd0JsdXIuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9TaGFkb3dCbHVyLmgKQEAgLTg0LDcgKzg0LDcg
QEAgcHJpdmF0ZToKICAgICAgICAgSW5uZXJTaGFkb3cKICAgICB9OwogICAgIAotICAgIEludFJl
Y3QgY2FsY3VsYXRlTGF5ZXJCb3VuZGluZ1JlY3QoR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgRmxv
YXRSZWN0JiBsYXllckFyZWEsIGNvbnN0IEludFJlY3QmIGNsaXBSZWN0KTsKKyAgICBJbnRSZWN0
IGNhbGN1bGF0ZUxheWVyQm91bmRpbmdSZWN0KEdyYXBoaWNzQ29udGV4dCosIGNvbnN0IEZsb2F0
UmVjdCYgbGF5ZXJBcmVhLCBjb25zdCBJbnRSZWN0JiBjbGlwUmVjdCwgY29uc3QgYm9vbCBzY2Fs
ZWRCbHVyTGF5ZXIgPSBmYWxzZSk7CiAgICAgSW50U2l6ZSB0ZW1wbGF0ZVNpemUoY29uc3QgSW50
U2l6ZSYgYmx1cnJlZEVkZ2VTaXplLCBjb25zdCBSb3VuZGVkUmVjdDo6UmFkaWkmKSBjb25zdDsK
IAogICAgIHZvaWQgZHJhd1JlY3RTaGFkb3dXaXRob3V0VGlsaW5nKEdyYXBoaWNzQ29udGV4dCos
IGNvbnN0IEZsb2F0UmVjdCYsIGNvbnN0IFJvdW5kZWRSZWN0OjpSYWRpaSYsIGNvbnN0IEludFJl
Y3QmIGxheWVyUmVjdCk7CkBAIC0xMDAsNiArMTAwLDcgQEAgcHJpdmF0ZToKICAgICAKICAgICBJ
bnRTaXplIGJsdXJyZWRFZGdlU2l6ZSgpIGNvbnN0OwogICAgIAorICAgIGJvb2wgdXNlU2NhbGVk
Qmx1ckxheWVyKEdyYXBoaWNzQ29udGV4dCopOwogICAgIAogICAgIFNoYWRvd1R5cGUgbV90eXBl
OwogCg==
</data>
<flag name="review"
          id="236970"
          type_id="1"
          status="-"
          setter="beidson"
    />
          </attachment>
      

    </bug>

</bugzilla>