<?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>121589</bug_id>
          
          <creation_ts>2013-09-18 21:53:25 -0700</creation_ts>
          <short_desc>Remove superfluous CSSLinearTimingFunctionValue and use switch on TimingFunction::type() in more places</short_desc>
          <delta_ts>2013-09-19 15:37:12 -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>CSS</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>BlinkMergeCandidate</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>dstockwell</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>kling</cc>
    
    <cc>koivisto</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>930842</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-09-18 21:53:25 -0700</bug_when>
    <thetext>Remove superfluous CSSLinearTimingFunctionValue and use switch on TimingFunction::type() in more places</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>930843</commentid>
    <comment_count>1</comment_count>
      <attachid>212035</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-09-18 21:54:56 -0700</bug_when>
    <thetext>Created attachment 212035
Cleanup</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>931088</commentid>
    <comment_count>2</comment_count>
      <attachid>212035</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-09-19 14:41:10 -0700</bug_when>
    <thetext>Comment on attachment 212035
Cleanup

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

&gt; Source/WebCore/css/CSSComputedStyleDeclaration.cpp:1253
&gt; +        {
&gt; +            const StepsTimingFunction* stepsTimingFunction = static_cast&lt;const StepsTimingFunction*&gt;(timingFunction);
&gt; +            return CSSStepsTimingFunctionValue::create(stepsTimingFunction-&gt;numberOfSteps(), stepsTimingFunction-&gt;stepAtStart());
&gt; +        }

This doesn&apos;t match our indentation style.

&gt; Source/WebCore/page/animation/AnimationBase.cpp:605
&gt; +        {
&gt; +            const CubicBezierTimingFunction* function = static_cast&lt;const CubicBezierTimingFunction*&gt;(tf);
&gt; +            return solveCubicBezierFunction(function-&gt;x1(), function-&gt;y1(), function-&gt;x2(), function-&gt;y2(), fractionalTime, m_animation-&gt;duration());
&gt; +        }
&gt; +    case TimingFunction::StepsFunction:
&gt; +        {
&gt; +            const StepsTimingFunction* stepsTimingFunction = static_cast&lt;const StepsTimingFunction*&gt;(tf);
&gt; +            return solveStepsFunction(stepsTimingFunction-&gt;numberOfSteps(), stepsTimingFunction-&gt;stepAtStart(), fractionalTime);
&gt; +        }

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>931096</commentid>
    <comment_count>3</comment_count>
      <attachid>212102</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-09-19 14:50:14 -0700</bug_when>
    <thetext>Created attachment 212102
Fixed indentation style</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>931116</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-09-19 15:37:12 -0700</bug_when>
    <thetext>Committed r156125: &lt;http://trac.webkit.org/changeset/156125&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>212035</attachid>
            <date>2013-09-18 21:54:56 -0700</date>
            <delta_ts>2013-09-19 14:50:11 -0700</delta_ts>
            <desc>Cleanup</desc>
            <filename>bug-121589-20130918215456.patch</filename>
            <type>text/plain</type>
            <size>12534</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1NjA4MCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMxIEBACisyMDEzLTA5LTE4ICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIFJlbW92ZSBzdXBlcmZsdW91cyBD
U1NMaW5lYXJUaW1pbmdGdW5jdGlvblZhbHVlIGFuZCB1c2Ugc3dpdGNoIG9uIFRpbWluZ0Z1bmN0
aW9uOjp0eXBlKCkgaW4gbW9yZSBwbGFjZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEyMTU4OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorIAorICAgICAgICBSZXBsYWNlZCBDU1NMaW5lYXJUaW1pbmdGdW5jdGlvblZhbHVl
IGJ5IHRoZSBpZGVudGlmaWVyICJsaW5lYXIiIGFuZCB1c2VkIHN3aXRjaCBzdGF0ZW1lbnRzIG9u
CisgICAgICAgIFRpbWluZ0Z1bmN0aW9uOjp0eXBlKCkgaW4gbW9yZSBwbGFjZXMgd2hlcmUgd2Ug
d2VyZSBicmFuY2hpbmcgb24gZXZlcnkgdHlwZS4KKworICAgICAgICBNZXJnZSBodHRwczovL2No
cm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vYmxpbmsvKy81NDU0ZjIwYzcxMDkwYzM1
YmRkMTA1M2U1Y2M1NzJkNWMwYmRlZGU3CisgICAgICAgIE1lcmdlIGh0dHBzOi8vY2hyb21pdW0u
Z29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9ibGluay8rLzEwNGFkNDJjNTIzZDMyYjY3ZDEwOGM2
ZTU5ZjRmMjc0ODhmZTM4YTUKKworICAgICAgICAqIGNzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFy
YXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlVGltaW5nRnVuY3Rpb25WYWx1ZSk6
CisgICAgICAgICogY3NzL0NTU1RpbWluZ0Z1bmN0aW9uVmFsdWUuY3BwOgorICAgICAgICAqIGNz
cy9DU1NUaW1pbmdGdW5jdGlvblZhbHVlLmg6CisgICAgICAgICogY3NzL0NTU1RvU3R5bGVNYXAu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVG9TdHlsZU1hcDo6bWFwQW5pbWF0aW9uVGltaW5n
RnVuY3Rpb24pOgorICAgICAgICAqIGNzcy9DU1NWYWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpDU1NWYWx1ZTo6ZXF1YWxzKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjpjc3NUZXh0
KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjpkZXN0cm95KToKKyAgICAgICAgKiBjc3Mv
Q1NTVmFsdWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjppc0N1YmljQmV6aWVyVGlt
aW5nRnVuY3Rpb25WYWx1ZSk6CisgICAgICAgICogcGFnZS9hbmltYXRpb24vQW5pbWF0aW9uQmFz
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBbmltYXRpb25CYXNlOjpwcm9ncmVzcyk6CisKIDIw
MTMtMDktMTggIEJlbSBKb25lcy1CZXkgIDxiam9uZXNiZUBhZG9iZS5jb20+CiAKICAgICAgICAg
UkVHUkVTU0lPTiAocjE1NTg1NCAtIHIxNTU5NjcpIGJsb2NrIHdpdGggbWFyZ2luLWxlZnQgYWRq
YWNlbnQgdG8gZmxvYXRlZCBibG9jayBjYXVzZXMgdGV4dCBvZiBzdWJzZXF1ZW50IGJsb2NrcyB0
byBvdmVybGFwIHRoZSBmbG9hdGVkIGJsb2NrLgpJbmRleDogU291cmNlL1dlYkNvcmUvY3NzL0NT
U0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAJKHJldmlzaW9uIDE1NjA3OSkK
KysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0xMjE5LDM4ICsxMjE5LDQzIEBAIHN0YXRpYyBQYXNzUmVmUHRyPENT
U1ZhbHVlPiBnZXREdXJhdGlvblYKIAogc3RhdGljIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IGNyZWF0
ZVRpbWluZ0Z1bmN0aW9uVmFsdWUoY29uc3QgVGltaW5nRnVuY3Rpb24qIHRpbWluZ0Z1bmN0aW9u
KQogewotICAgIGlmICh0aW1pbmdGdW5jdGlvbi0+aXNDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9u
KCkpIHsKLSAgICAgICAgY29uc3QgQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvbiogYmV6aWVyVGlt
aW5nRnVuY3Rpb24gPSBzdGF0aWNfY2FzdDxjb25zdCBDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9u
Kj4odGltaW5nRnVuY3Rpb24pOwotICAgICAgICBpZiAoYmV6aWVyVGltaW5nRnVuY3Rpb24tPnRp
bWluZ0Z1bmN0aW9uUHJlc2V0KCkgIT0gQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvbjo6Q3VzdG9t
KSB7Ci0gICAgICAgICAgICBDU1NWYWx1ZUlEIHZhbHVlSWQgPSBDU1NWYWx1ZUludmFsaWQ7Ci0g
ICAgICAgICAgICBzd2l0Y2ggKGJlemllclRpbWluZ0Z1bmN0aW9uLT50aW1pbmdGdW5jdGlvblBy
ZXNldCgpKSB7Ci0gICAgICAgICAgICBjYXNlIEN1YmljQmV6aWVyVGltaW5nRnVuY3Rpb246OkVh
c2U6Ci0gICAgICAgICAgICAgICAgdmFsdWVJZCA9IENTU1ZhbHVlRWFzZTsKLSAgICAgICAgICAg
ICAgICBicmVhazsKLSAgICAgICAgICAgIGNhc2UgQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvbjo6
RWFzZUluOgotICAgICAgICAgICAgICAgIHZhbHVlSWQgPSBDU1NWYWx1ZUVhc2VJbjsKLSAgICAg
ICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIGNhc2UgQ3ViaWNCZXppZXJUaW1pbmdGdW5j
dGlvbjo6RWFzZU91dDoKLSAgICAgICAgICAgICAgICB2YWx1ZUlkID0gQ1NTVmFsdWVFYXNlT3V0
OwotICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgY2FzZSBDdWJpY0JlemllclRp
bWluZ0Z1bmN0aW9uOjpFYXNlSW5PdXQ6Ci0gICAgICAgICAgICAgICAgdmFsdWVJZCA9IENTU1Zh
bHVlRWFzZUluT3V0OwotICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgZGVmYXVs
dDoKLSAgICAgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgICAgICAg
ICByZXR1cm4gMDsKKyAgICBzd2l0Y2ggKHRpbWluZ0Z1bmN0aW9uLT50eXBlKCkpIHsKKyAgICBj
YXNlIFRpbWluZ0Z1bmN0aW9uOjpDdWJpY0JlemllckZ1bmN0aW9uOgorICAgICAgICB7CisgICAg
ICAgICAgICBjb25zdCBDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uKiBiZXppZXJUaW1pbmdGdW5j
dGlvbiA9IHN0YXRpY19jYXN0PGNvbnN0IEN1YmljQmV6aWVyVGltaW5nRnVuY3Rpb24qPih0aW1p
bmdGdW5jdGlvbik7CisgICAgICAgICAgICBpZiAoYmV6aWVyVGltaW5nRnVuY3Rpb24tPnRpbWlu
Z0Z1bmN0aW9uUHJlc2V0KCkgIT0gQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvbjo6Q3VzdG9tKSB7
CisgICAgICAgICAgICAgICAgQ1NTVmFsdWVJRCB2YWx1ZUlkID0gQ1NTVmFsdWVJbnZhbGlkOwor
ICAgICAgICAgICAgICAgIHN3aXRjaCAoYmV6aWVyVGltaW5nRnVuY3Rpb24tPnRpbWluZ0Z1bmN0
aW9uUHJlc2V0KCkpIHsKKyAgICAgICAgICAgICAgICBjYXNlIEN1YmljQmV6aWVyVGltaW5nRnVu
Y3Rpb246OkVhc2U6CisgICAgICAgICAgICAgICAgICAgIHZhbHVlSWQgPSBDU1NWYWx1ZUVhc2U7
CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgQ3ViaWNC
ZXppZXJUaW1pbmdGdW5jdGlvbjo6RWFzZUluOgorICAgICAgICAgICAgICAgICAgICB2YWx1ZUlk
ID0gQ1NTVmFsdWVFYXNlSW47CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAg
ICAgICAgIGNhc2UgQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvbjo6RWFzZU91dDoKKyAgICAgICAg
ICAgICAgICAgICAgdmFsdWVJZCA9IENTU1ZhbHVlRWFzZU91dDsKKyAgICAgICAgICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSBDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9u
OjpFYXNlSW5PdXQ6CisgICAgICAgICAgICAgICAgICAgIHZhbHVlSWQgPSBDU1NWYWx1ZUVhc2VJ
bk91dDsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgZGVmYXVs
dDoKKyAgICAgICAgICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgICAg
ICAgICAgICAgIHJldHVybiAwOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBy
ZXR1cm4gY3NzVmFsdWVQb29sKCkuY3JlYXRlSWRlbnRpZmllclZhbHVlKHZhbHVlSWQpOwogICAg
ICAgICAgICAgfQotICAgICAgICAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50
aWZpZXJWYWx1ZSh2YWx1ZUlkKTsKKyAgICAgICAgICAgIHJldHVybiBDU1NDdWJpY0JlemllclRp
bWluZ0Z1bmN0aW9uVmFsdWU6OmNyZWF0ZShiZXppZXJUaW1pbmdGdW5jdGlvbi0+eDEoKSwgYmV6
aWVyVGltaW5nRnVuY3Rpb24tPnkxKCksIGJlemllclRpbWluZ0Z1bmN0aW9uLT54MigpLCBiZXpp
ZXJUaW1pbmdGdW5jdGlvbi0+eTIoKSk7CiAgICAgICAgIH0KLSAgICAgICAgcmV0dXJuIENTU0N1
YmljQmV6aWVyVGltaW5nRnVuY3Rpb25WYWx1ZTo6Y3JlYXRlKGJlemllclRpbWluZ0Z1bmN0aW9u
LT54MSgpLCBiZXppZXJUaW1pbmdGdW5jdGlvbi0+eTEoKSwgYmV6aWVyVGltaW5nRnVuY3Rpb24t
PngyKCksIGJlemllclRpbWluZ0Z1bmN0aW9uLT55MigpKTsKLSAgICB9Ci0KLSAgICBpZiAodGlt
aW5nRnVuY3Rpb24tPmlzU3RlcHNUaW1pbmdGdW5jdGlvbigpKSB7Ci0gICAgICAgIGNvbnN0IFN0
ZXBzVGltaW5nRnVuY3Rpb24qIHN0ZXBzVGltaW5nRnVuY3Rpb24gPSBzdGF0aWNfY2FzdDxjb25z
dCBTdGVwc1RpbWluZ0Z1bmN0aW9uKj4odGltaW5nRnVuY3Rpb24pOwotICAgICAgICByZXR1cm4g
Q1NTU3RlcHNUaW1pbmdGdW5jdGlvblZhbHVlOjpjcmVhdGUoc3RlcHNUaW1pbmdGdW5jdGlvbi0+
bnVtYmVyT2ZTdGVwcygpLCBzdGVwc1RpbWluZ0Z1bmN0aW9uLT5zdGVwQXRTdGFydCgpKTsKKyAg
ICBjYXNlIFRpbWluZ0Z1bmN0aW9uOjpTdGVwc0Z1bmN0aW9uOgorICAgICAgICB7CisgICAgICAg
ICAgICBjb25zdCBTdGVwc1RpbWluZ0Z1bmN0aW9uKiBzdGVwc1RpbWluZ0Z1bmN0aW9uID0gc3Rh
dGljX2Nhc3Q8Y29uc3QgU3RlcHNUaW1pbmdGdW5jdGlvbio+KHRpbWluZ0Z1bmN0aW9uKTsKKyAg
ICAgICAgICAgIHJldHVybiBDU1NTdGVwc1RpbWluZ0Z1bmN0aW9uVmFsdWU6OmNyZWF0ZShzdGVw
c1RpbWluZ0Z1bmN0aW9uLT5udW1iZXJPZlN0ZXBzKCksIHN0ZXBzVGltaW5nRnVuY3Rpb24tPnN0
ZXBBdFN0YXJ0KCkpOworICAgICAgICB9CisgICAgY2FzZSBUaW1pbmdGdW5jdGlvbjo6TGluZWFy
RnVuY3Rpb246CisgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVudGlmaWVy
VmFsdWUoQ1NTVmFsdWVMaW5lYXIpOwogICAgIH0KLQotICAgIHJldHVybiBDU1NMaW5lYXJUaW1p
bmdGdW5jdGlvblZhbHVlOjpjcmVhdGUoKTsKKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAg
ICByZXR1cm4gMDsKIH0KIAogc3RhdGljIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IGdldFRpbWluZ0Z1
bmN0aW9uVmFsdWUoY29uc3QgQW5pbWF0aW9uTGlzdCogYW5pbUxpc3QpCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTVGltaW5nRnVuY3Rpb25WYWx1ZS5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvY3NzL0NTU1RpbWluZ0Z1bmN0aW9uVmFsdWUuY3BwCShyZXZpc2lvbiAxNTYw
NzkpCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVGltaW5nRnVuY3Rpb25WYWx1ZS5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTMwLDEyICszMCw2IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAot
U3RyaW5nIENTU0xpbmVhclRpbWluZ0Z1bmN0aW9uVmFsdWU6OmN1c3RvbUNTU1RleHQoKSBjb25z
dAotewotICAgIHJldHVybiBBU0NJSUxpdGVyYWwoImxpbmVhciIpOwotfQotCi0KIFN0cmluZyBD
U1NDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uVmFsdWU6OmN1c3RvbUNTU1RleHQoKSBjb25zdAog
ewogICAgIHJldHVybiAiY3ViaWMtYmV6aWVyKCIKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NUaW1pbmdGdW5jdGlvblZhbHVlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1RpbWluZ0Z1bmN0aW9uVmFsdWUuaAkocmV2aXNpb24gMTU2MDc5KQorKysgU291cmNlL1dl
YkNvcmUvY3NzL0NTU1RpbWluZ0Z1bmN0aW9uVmFsdWUuaAkod29ya2luZyBjb3B5KQpAQCAtMzEs
MjQgKzMxLDYgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBDU1NMaW5lYXJUaW1p
bmdGdW5jdGlvblZhbHVlIDogcHVibGljIENTU1ZhbHVlIHsKLXB1YmxpYzoKLSAgICBzdGF0aWMg
UGFzc1JlZlB0cjxDU1NMaW5lYXJUaW1pbmdGdW5jdGlvblZhbHVlPiBjcmVhdGUoKQotICAgIHsK
LSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDU1NMaW5lYXJUaW1pbmdGdW5jdGlvblZhbHVl
KTsKLSAgICB9Ci0KLSAgICBTdHJpbmcgY3VzdG9tQ1NTVGV4dCgpIGNvbnN0OwotCi0gICAgYm9v
bCBlcXVhbHMoY29uc3QgQ1NTTGluZWFyVGltaW5nRnVuY3Rpb25WYWx1ZSYpIGNvbnN0IHsgcmV0
dXJuIHRydWU7IH0KLQotcHJpdmF0ZToKLSAgICBDU1NMaW5lYXJUaW1pbmdGdW5jdGlvblZhbHVl
KCkKLSAgICAgICAgOiBDU1NWYWx1ZShMaW5lYXJUaW1pbmdGdW5jdGlvbkNsYXNzKQotICAgIHsK
LSAgICB9Ci19OwotCiBjbGFzcyBDU1NDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uVmFsdWUgOiBw
dWJsaWMgQ1NTVmFsdWUgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPENTU0N1Ymlj
QmV6aWVyVGltaW5nRnVuY3Rpb25WYWx1ZT4gY3JlYXRlKGRvdWJsZSB4MSwgZG91YmxlIHkxLCBk
b3VibGUgeDIsIGRvdWJsZSB5MikKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxl
TWFwLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVG9TdHlsZU1hcC5j
cHAJKHJldmlzaW9uIDE1NjA3OSkKKysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFw
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTI5LDggKzUyOSw3IEBAIHZvaWQgQ1NTVG9TdHlsZU1h
cDo6bWFwQW5pbWF0aW9uVGltaW5nRnUKICAgICB9IGVsc2UgaWYgKHZhbHVlLT5pc1N0ZXBzVGlt
aW5nRnVuY3Rpb25WYWx1ZSgpKSB7CiAgICAgICAgIENTU1N0ZXBzVGltaW5nRnVuY3Rpb25WYWx1
ZSogc3RlcHNUaW1pbmdGdW5jdGlvbiA9IHN0YXRpY19jYXN0PENTU1N0ZXBzVGltaW5nRnVuY3Rp
b25WYWx1ZSo+KHZhbHVlKTsKICAgICAgICAgYW5pbWF0aW9uLT5zZXRUaW1pbmdGdW5jdGlvbihT
dGVwc1RpbWluZ0Z1bmN0aW9uOjpjcmVhdGUoc3RlcHNUaW1pbmdGdW5jdGlvbi0+bnVtYmVyT2ZT
dGVwcygpLCBzdGVwc1RpbWluZ0Z1bmN0aW9uLT5zdGVwQXRTdGFydCgpKSk7Ci0gICAgfSBlbHNl
IGlmICh2YWx1ZS0+aXNMaW5lYXJUaW1pbmdGdW5jdGlvblZhbHVlKCkpCi0gICAgICAgIGFuaW1h
dGlvbi0+c2V0VGltaW5nRnVuY3Rpb24oTGluZWFyVGltaW5nRnVuY3Rpb246OmNyZWF0ZSgpKTsK
KyAgICB9CiB9CiAKIHZvaWQgQ1NTVG9TdHlsZU1hcDo6bWFwTmluZVBpZWNlSW1hZ2UoQ1NTUHJv
cGVydHlJRCBwcm9wZXJ0eSwgQ1NTVmFsdWUqIHZhbHVlLCBOaW5lUGllY2VJbWFnZSYgaW1hZ2Up
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZS5jcHAJKHJldmlzaW9uIDE1NjA3OSkKKysrIFNvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIwMyw4ICsyMDMs
NiBAQCBib29sIENTU1ZhbHVlOjplcXVhbHMoY29uc3QgQ1NTVmFsdWUmIG90CiAgICAgICAgICAg
ICByZXR1cm4gY29tcGFyZUNTU1ZhbHVlczxDU1NSZWZsZWN0VmFsdWU+KCp0aGlzLCBvdGhlcik7
CiAgICAgICAgIGNhc2UgU2hhZG93Q2xhc3M6CiAgICAgICAgICAgICByZXR1cm4gY29tcGFyZUNT
U1ZhbHVlczxTaGFkb3dWYWx1ZT4oKnRoaXMsIG90aGVyKTsKLSAgICAgICAgY2FzZSBMaW5lYXJU
aW1pbmdGdW5jdGlvbkNsYXNzOgotICAgICAgICAgICAgcmV0dXJuIGNvbXBhcmVDU1NWYWx1ZXM8
Q1NTTGluZWFyVGltaW5nRnVuY3Rpb25WYWx1ZT4oKnRoaXMsIG90aGVyKTsKICAgICAgICAgY2Fz
ZSBDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uQ2xhc3M6CiAgICAgICAgICAgICByZXR1cm4gY29t
cGFyZUNTU1ZhbHVlczxDU1NDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uVmFsdWU+KCp0aGlzLCBv
dGhlcik7CiAgICAgICAgIGNhc2UgU3RlcHNUaW1pbmdGdW5jdGlvbkNsYXNzOgpAQCAtMzA3LDgg
KzMwNSw2IEBAIFN0cmluZyBDU1NWYWx1ZTo6Y3NzVGV4dCgpIGNvbnN0CiAgICAgICAgIHJldHVy
biBzdGF0aWNfY2FzdDxjb25zdCBDU1NSZWZsZWN0VmFsdWUqPih0aGlzKS0+Y3VzdG9tQ1NTVGV4
dCgpOwogICAgIGNhc2UgU2hhZG93Q2xhc3M6CiAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxj
b25zdCBTaGFkb3dWYWx1ZSo+KHRoaXMpLT5jdXN0b21DU1NUZXh0KCk7Ci0gICAgY2FzZSBMaW5l
YXJUaW1pbmdGdW5jdGlvbkNsYXNzOgotICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8Y29uc3Qg
Q1NTTGluZWFyVGltaW5nRnVuY3Rpb25WYWx1ZSo+KHRoaXMpLT5jdXN0b21DU1NUZXh0KCk7CiAg
ICAgY2FzZSBDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uQ2xhc3M6CiAgICAgICAgIHJldHVybiBz
dGF0aWNfY2FzdDxjb25zdCBDU1NDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uVmFsdWUqPih0aGlz
KS0+Y3VzdG9tQ1NTVGV4dCgpOwogICAgIGNhc2UgU3RlcHNUaW1pbmdGdW5jdGlvbkNsYXNzOgpA
QCAtNDM3LDkgKzQzMyw2IEBAIHZvaWQgQ1NTVmFsdWU6OmRlc3Ryb3koKQogICAgIGNhc2UgU2hh
ZG93Q2xhc3M6CiAgICAgICAgIGRlbGV0ZSBzdGF0aWNfY2FzdDxTaGFkb3dWYWx1ZSo+KHRoaXMp
OwogICAgICAgICByZXR1cm47Ci0gICAgY2FzZSBMaW5lYXJUaW1pbmdGdW5jdGlvbkNsYXNzOgot
ICAgICAgICBkZWxldGUgc3RhdGljX2Nhc3Q8Q1NTTGluZWFyVGltaW5nRnVuY3Rpb25WYWx1ZSo+
KHRoaXMpOwotICAgICAgICByZXR1cm47CiAgICAgY2FzZSBDdWJpY0JlemllclRpbWluZ0Z1bmN0
aW9uQ2xhc3M6CiAgICAgICAgIGRlbGV0ZSBzdGF0aWNfY2FzdDxDU1NDdWJpY0JlemllclRpbWlu
Z0Z1bmN0aW9uVmFsdWUqPih0aGlzKTsKICAgICAgICAgcmV0dXJuOwpJbmRleDogU291cmNlL1dl
YkNvcmUvY3NzL0NTU1ZhbHVlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvY3NzL0NT
U1ZhbHVlLmgJKHJldmlzaW9uIDE1NjA3OSkKKysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1
ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC04Nyw3ICs4Nyw2IEBAIHB1YmxpYzoKICAgICBib29sIGlz
UmVmbGVjdFZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gUmVmbGVjdENsYXNz
OyB9CiAgICAgYm9vbCBpc1NoYWRvd1ZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUg
PT0gU2hhZG93Q2xhc3M7IH0KICAgICBib29sIGlzQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvblZh
bHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gQ3ViaWNCZXppZXJUaW1pbmdGdW5j
dGlvbkNsYXNzOyB9Ci0gICAgYm9vbCBpc0xpbmVhclRpbWluZ0Z1bmN0aW9uVmFsdWUoKSBjb25z
dCB7IHJldHVybiBtX2NsYXNzVHlwZSA9PSBMaW5lYXJUaW1pbmdGdW5jdGlvbkNsYXNzOyB9CiAg
ICAgYm9vbCBpc1N0ZXBzVGltaW5nRnVuY3Rpb25WYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xh
c3NUeXBlID09IFN0ZXBzVGltaW5nRnVuY3Rpb25DbGFzczsgfQogICAgIGJvb2wgaXNXZWJLaXRD
U1NUcmFuc2Zvcm1WYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IFdlYktpdENT
U1RyYW5zZm9ybUNsYXNzOyB9CiAgICAgYm9vbCBpc0NTU0xpbmVCb3hDb250YWluVmFsdWUoKSBj
b25zdCB7IHJldHVybiBtX2NsYXNzVHlwZSA9PSBMaW5lQm94Q29udGFpbkNsYXNzOyB9CkBAIC0x
NTAsNyArMTQ5LDYgQEAgcHJvdGVjdGVkOgogCiAgICAgICAgIC8vIFRpbWluZyBmdW5jdGlvbiBj
bGFzc2VzLgogICAgICAgICBDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uQ2xhc3MsCi0gICAgICAg
IExpbmVhclRpbWluZ0Z1bmN0aW9uQ2xhc3MsCiAgICAgICAgIFN0ZXBzVGltaW5nRnVuY3Rpb25D
bGFzcywKIAogICAgICAgICAvLyBPdGhlciBjbGFzcyB0eXBlcy4KSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL3BhZ2UvYW5pbWF0aW9uL0FuaW1hdGlvbkJhc2UuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0FuaW1hdGlvbkJhc2UuY3BwCShyZXZpc2lvbiAxNTYw
NzkpCisrKyBTb3VyY2UvV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9BbmltYXRpb25CYXNlLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtNTkyLDIxICs1OTIsMjMgQEAgZG91YmxlIEFuaW1hdGlvbkJhc2U6
OnByb2dyZXNzKGRvdWJsZSBzYwogICAgIGlmICghdGYpCiAgICAgICAgIHRmID0gbV9hbmltYXRp
b24tPnRpbWluZ0Z1bmN0aW9uKCkuZ2V0KCk7CiAKLSAgICBpZiAodGYtPmlzQ3ViaWNCZXppZXJU
aW1pbmdGdW5jdGlvbigpKSB7Ci0gICAgICAgIGNvbnN0IEN1YmljQmV6aWVyVGltaW5nRnVuY3Rp
b24qIGN0ZiA9IHN0YXRpY19jYXN0PGNvbnN0IEN1YmljQmV6aWVyVGltaW5nRnVuY3Rpb24qPih0
Zik7Ci0gICAgICAgIHJldHVybiBzb2x2ZUN1YmljQmV6aWVyRnVuY3Rpb24oY3RmLT54MSgpLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN0Zi0+eTEoKSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdGYtPngyKCksCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3RmLT55MigpLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGZyYWN0aW9uYWxUaW1lLCBtX2FuaW1hdGlvbi0+ZHVy
YXRpb24oKSk7Ci0gICAgfQotICAgIAotICAgIGlmICh0Zi0+aXNTdGVwc1RpbWluZ0Z1bmN0aW9u
KCkpIHsKLSAgICAgICAgY29uc3QgU3RlcHNUaW1pbmdGdW5jdGlvbiogc3RmID0gc3RhdGljX2Nh
c3Q8Y29uc3QgU3RlcHNUaW1pbmdGdW5jdGlvbio+KHRmKTsKLSAgICAgICAgcmV0dXJuIHNvbHZl
U3RlcHNGdW5jdGlvbihzdGYtPm51bWJlck9mU3RlcHMoKSwgc3RmLT5zdGVwQXRTdGFydCgpLCBm
cmFjdGlvbmFsVGltZSk7CisgICAgc3dpdGNoICh0Zi0+dHlwZSgpKSB7CisgICAgY2FzZSBUaW1p
bmdGdW5jdGlvbjo6Q3ViaWNCZXppZXJGdW5jdGlvbjoKKyAgICAgICAgeworICAgICAgICAgICAg
Y29uc3QgQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvbiogZnVuY3Rpb24gPSBzdGF0aWNfY2FzdDxj
b25zdCBDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uKj4odGYpOworICAgICAgICAgICAgcmV0dXJu
IHNvbHZlQ3ViaWNCZXppZXJGdW5jdGlvbihmdW5jdGlvbi0+eDEoKSwgZnVuY3Rpb24tPnkxKCks
IGZ1bmN0aW9uLT54MigpLCBmdW5jdGlvbi0+eTIoKSwgZnJhY3Rpb25hbFRpbWUsIG1fYW5pbWF0
aW9uLT5kdXJhdGlvbigpKTsKKyAgICAgICAgfQorICAgIGNhc2UgVGltaW5nRnVuY3Rpb246OlN0
ZXBzRnVuY3Rpb246CisgICAgICAgIHsKKyAgICAgICAgICAgIGNvbnN0IFN0ZXBzVGltaW5nRnVu
Y3Rpb24qIHN0ZXBzVGltaW5nRnVuY3Rpb24gPSBzdGF0aWNfY2FzdDxjb25zdCBTdGVwc1RpbWlu
Z0Z1bmN0aW9uKj4odGYpOworICAgICAgICAgICAgcmV0dXJuIHNvbHZlU3RlcHNGdW5jdGlvbihz
dGVwc1RpbWluZ0Z1bmN0aW9uLT5udW1iZXJPZlN0ZXBzKCksIHN0ZXBzVGltaW5nRnVuY3Rpb24t
PnN0ZXBBdFN0YXJ0KCksIGZyYWN0aW9uYWxUaW1lKTsKKyAgICAgICAgfQorICAgIGNhc2UgVGlt
aW5nRnVuY3Rpb246OkxpbmVhckZ1bmN0aW9uOgorICAgICAgICByZXR1cm4gZnJhY3Rpb25hbFRp
bWU7CiAgICAgfQogCi0gICAgcmV0dXJuIGZyYWN0aW9uYWxUaW1lOworICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOworICAgIHJldHVybiAwOwogfQogCiB2b2lkIEFuaW1hdGlvbkJhc2U6OmdldFRp
bWVUb05leHRFdmVudChkb3VibGUmIHRpbWUsIGJvb2wmIGlzTG9vcGluZykgY29uc3QK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>212102</attachid>
            <date>2013-09-19 14:50:14 -0700</date>
            <delta_ts>2013-09-19 15:10:10 -0700</delta_ts>
            <desc>Fixed indentation style</desc>
            <filename>bug-121589-20130919145013.patch</filename>
            <type>text/plain</type>
            <size>10294</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1NjA4MCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMxIEBACisyMDEzLTA5LTE4ICBSeW9zdWtl
IE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIFJlbW92ZSBzdXBlcmZsdW91cyBD
U1NMaW5lYXJUaW1pbmdGdW5jdGlvblZhbHVlIGFuZCB1c2Ugc3dpdGNoIG9uIFRpbWluZ0Z1bmN0
aW9uOjp0eXBlKCkgaW4gbW9yZSBwbGFjZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEyMTU4OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorIAorICAgICAgICBSZXBsYWNlZCBDU1NMaW5lYXJUaW1pbmdGdW5jdGlvblZhbHVl
IGJ5IHRoZSBpZGVudGlmaWVyICJsaW5lYXIiIGFuZCB1c2VkIHN3aXRjaCBzdGF0ZW1lbnRzIG9u
CisgICAgICAgIFRpbWluZ0Z1bmN0aW9uOjp0eXBlKCkgaW4gbW9yZSBwbGFjZXMgd2hlcmUgd2Ug
d2VyZSBicmFuY2hpbmcgb24gZXZlcnkgdHlwZS4KKworICAgICAgICBNZXJnZSBodHRwczovL2No
cm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vYmxpbmsvKy81NDU0ZjIwYzcxMDkwYzM1
YmRkMTA1M2U1Y2M1NzJkNWMwYmRlZGU3CisgICAgICAgIE1lcmdlIGh0dHBzOi8vY2hyb21pdW0u
Z29vZ2xlc291cmNlLmNvbS9jaHJvbWl1bS9ibGluay8rLzEwNGFkNDJjNTIzZDMyYjY3ZDEwOGM2
ZTU5ZjRmMjc0ODhmZTM4YTUKKworICAgICAgICAqIGNzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFy
YXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlVGltaW5nRnVuY3Rpb25WYWx1ZSk6
CisgICAgICAgICogY3NzL0NTU1RpbWluZ0Z1bmN0aW9uVmFsdWUuY3BwOgorICAgICAgICAqIGNz
cy9DU1NUaW1pbmdGdW5jdGlvblZhbHVlLmg6CisgICAgICAgICogY3NzL0NTU1RvU3R5bGVNYXAu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTVG9TdHlsZU1hcDo6bWFwQW5pbWF0aW9uVGltaW5n
RnVuY3Rpb24pOgorICAgICAgICAqIGNzcy9DU1NWYWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpDU1NWYWx1ZTo6ZXF1YWxzKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjpjc3NUZXh0
KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjpkZXN0cm95KToKKyAgICAgICAgKiBjc3Mv
Q1NTVmFsdWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjppc0N1YmljQmV6aWVyVGlt
aW5nRnVuY3Rpb25WYWx1ZSk6CisgICAgICAgICogcGFnZS9hbmltYXRpb24vQW5pbWF0aW9uQmFz
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBbmltYXRpb25CYXNlOjpwcm9ncmVzcyk6CisKIDIw
MTMtMDktMTggIEJlbSBKb25lcy1CZXkgIDxiam9uZXNiZUBhZG9iZS5jb20+CiAKICAgICAgICAg
UkVHUkVTU0lPTiAocjE1NTg1NCAtIHIxNTU5NjcpIGJsb2NrIHdpdGggbWFyZ2luLWxlZnQgYWRq
YWNlbnQgdG8gZmxvYXRlZCBibG9jayBjYXVzZXMgdGV4dCBvZiBzdWJzZXF1ZW50IGJsb2NrcyB0
byBvdmVybGFwIHRoZSBmbG9hdGVkIGJsb2NrLgpJbmRleDogU291cmNlL1dlYkNvcmUvY3NzL0NT
U0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAJKHJldmlzaW9uIDE1NjA3OSkK
KysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0xMjE5LDcgKzEyMTksOCBAQCBzdGF0aWMgUGFzc1JlZlB0cjxDU1NW
YWx1ZT4gZ2V0RHVyYXRpb25WCiAKIHN0YXRpYyBQYXNzUmVmUHRyPENTU1ZhbHVlPiBjcmVhdGVU
aW1pbmdGdW5jdGlvblZhbHVlKGNvbnN0IFRpbWluZ0Z1bmN0aW9uKiB0aW1pbmdGdW5jdGlvbikK
IHsKLSAgICBpZiAodGltaW5nRnVuY3Rpb24tPmlzQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvbigp
KSB7CisgICAgc3dpdGNoICh0aW1pbmdGdW5jdGlvbi0+dHlwZSgpKSB7CisgICAgY2FzZSBUaW1p
bmdGdW5jdGlvbjo6Q3ViaWNCZXppZXJGdW5jdGlvbjogewogICAgICAgICBjb25zdCBDdWJpY0Jl
emllclRpbWluZ0Z1bmN0aW9uKiBiZXppZXJUaW1pbmdGdW5jdGlvbiA9IHN0YXRpY19jYXN0PGNv
bnN0IEN1YmljQmV6aWVyVGltaW5nRnVuY3Rpb24qPih0aW1pbmdGdW5jdGlvbik7CiAgICAgICAg
IGlmIChiZXppZXJUaW1pbmdGdW5jdGlvbi0+dGltaW5nRnVuY3Rpb25QcmVzZXQoKSAhPSBDdWJp
Y0JlemllclRpbWluZ0Z1bmN0aW9uOjpDdXN0b20pIHsKICAgICAgICAgICAgIENTU1ZhbHVlSUQg
dmFsdWVJZCA9IENTU1ZhbHVlSW52YWxpZDsKQEAgLTEyNDQsMTMgKzEyNDUsMTUgQEAgc3RhdGlj
IFBhc3NSZWZQdHI8Q1NTVmFsdWU+IGNyZWF0ZVRpbWluZwogICAgICAgICB9CiAgICAgICAgIHJl
dHVybiBDU1NDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uVmFsdWU6OmNyZWF0ZShiZXppZXJUaW1p
bmdGdW5jdGlvbi0+eDEoKSwgYmV6aWVyVGltaW5nRnVuY3Rpb24tPnkxKCksIGJlemllclRpbWlu
Z0Z1bmN0aW9uLT54MigpLCBiZXppZXJUaW1pbmdGdW5jdGlvbi0+eTIoKSk7CiAgICAgfQotCi0g
ICAgaWYgKHRpbWluZ0Z1bmN0aW9uLT5pc1N0ZXBzVGltaW5nRnVuY3Rpb24oKSkgeworICAgIGNh
c2UgVGltaW5nRnVuY3Rpb246OlN0ZXBzRnVuY3Rpb246IHsKICAgICAgICAgY29uc3QgU3RlcHNU
aW1pbmdGdW5jdGlvbiogc3RlcHNUaW1pbmdGdW5jdGlvbiA9IHN0YXRpY19jYXN0PGNvbnN0IFN0
ZXBzVGltaW5nRnVuY3Rpb24qPih0aW1pbmdGdW5jdGlvbik7CiAgICAgICAgIHJldHVybiBDU1NT
dGVwc1RpbWluZ0Z1bmN0aW9uVmFsdWU6OmNyZWF0ZShzdGVwc1RpbWluZ0Z1bmN0aW9uLT5udW1i
ZXJPZlN0ZXBzKCksIHN0ZXBzVGltaW5nRnVuY3Rpb24tPnN0ZXBBdFN0YXJ0KCkpOwogICAgIH0K
LQotICAgIHJldHVybiBDU1NMaW5lYXJUaW1pbmdGdW5jdGlvblZhbHVlOjpjcmVhdGUoKTsKKyAg
ICBjYXNlIFRpbWluZ0Z1bmN0aW9uOjpMaW5lYXJGdW5jdGlvbjoKKyAgICAgICAgcmV0dXJuIGNz
c1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZUxpbmVhcik7CisgICAg
fQorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiAwOwogfQogCiBzdGF0aWMg
UGFzc1JlZlB0cjxDU1NWYWx1ZT4gZ2V0VGltaW5nRnVuY3Rpb25WYWx1ZShjb25zdCBBbmltYXRp
b25MaXN0KiBhbmltTGlzdCkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUaW1pbmdGdW5j
dGlvblZhbHVlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVGltaW5n
RnVuY3Rpb25WYWx1ZS5jcHAJKHJldmlzaW9uIDE1NjA3OSkKKysrIFNvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NUaW1pbmdGdW5jdGlvblZhbHVlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzAsMTIgKzMw
LDYgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1TdHJpbmcgQ1NTTGluZWFyVGltaW5nRnVu
Y3Rpb25WYWx1ZTo6Y3VzdG9tQ1NTVGV4dCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIEFTQ0lJTGl0
ZXJhbCgibGluZWFyIik7Ci19Ci0KLQogU3RyaW5nIENTU0N1YmljQmV6aWVyVGltaW5nRnVuY3Rp
b25WYWx1ZTo6Y3VzdG9tQ1NTVGV4dCgpIGNvbnN0CiB7CiAgICAgcmV0dXJuICJjdWJpYy1iZXpp
ZXIoIgpJbmRleDogU291cmNlL1dlYkNvcmUvY3NzL0NTU1RpbWluZ0Z1bmN0aW9uVmFsdWUuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVGltaW5nRnVuY3Rpb25WYWx1ZS5o
CShyZXZpc2lvbiAxNTYwNzkpCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVGltaW5nRnVuY3Rp
b25WYWx1ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMSwyNCArMzEsNiBAQAogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKLWNsYXNzIENTU0xpbmVhclRpbWluZ0Z1bmN0aW9uVmFsdWUgOiBwdWJsaWMg
Q1NTVmFsdWUgewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPENTU0xpbmVhclRpbWlu
Z0Z1bmN0aW9uVmFsdWU+IGNyZWF0ZSgpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYo
bmV3IENTU0xpbmVhclRpbWluZ0Z1bmN0aW9uVmFsdWUpOwotICAgIH0KLQotICAgIFN0cmluZyBj
dXN0b21DU1NUZXh0KCkgY29uc3Q7Ci0KLSAgICBib29sIGVxdWFscyhjb25zdCBDU1NMaW5lYXJU
aW1pbmdGdW5jdGlvblZhbHVlJikgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQotCi1wcml2YXRlOgot
ICAgIENTU0xpbmVhclRpbWluZ0Z1bmN0aW9uVmFsdWUoKQotICAgICAgICA6IENTU1ZhbHVlKExp
bmVhclRpbWluZ0Z1bmN0aW9uQ2xhc3MpCi0gICAgewotICAgIH0KLX07Ci0KIGNsYXNzIENTU0N1
YmljQmV6aWVyVGltaW5nRnVuY3Rpb25WYWx1ZSA6IHB1YmxpYyBDU1NWYWx1ZSB7CiBwdWJsaWM6
CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8Q1NTQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvblZhbHVl
PiBjcmVhdGUoZG91YmxlIHgxLCBkb3VibGUgeTEsIGRvdWJsZSB4MiwgZG91YmxlIHkyKQpJbmRl
eDogU291cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0eWxlTWFwLmNwcAkocmV2aXNpb24gMTU2MDc5KQorKysg
U291cmNlL1dlYkNvcmUvY3NzL0NTU1RvU3R5bGVNYXAuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01
MjksOCArNTI5LDcgQEAgdm9pZCBDU1NUb1N0eWxlTWFwOjptYXBBbmltYXRpb25UaW1pbmdGdQog
ICAgIH0gZWxzZSBpZiAodmFsdWUtPmlzU3RlcHNUaW1pbmdGdW5jdGlvblZhbHVlKCkpIHsKICAg
ICAgICAgQ1NTU3RlcHNUaW1pbmdGdW5jdGlvblZhbHVlKiBzdGVwc1RpbWluZ0Z1bmN0aW9uID0g
c3RhdGljX2Nhc3Q8Q1NTU3RlcHNUaW1pbmdGdW5jdGlvblZhbHVlKj4odmFsdWUpOwogICAgICAg
ICBhbmltYXRpb24tPnNldFRpbWluZ0Z1bmN0aW9uKFN0ZXBzVGltaW5nRnVuY3Rpb246OmNyZWF0
ZShzdGVwc1RpbWluZ0Z1bmN0aW9uLT5udW1iZXJPZlN0ZXBzKCksIHN0ZXBzVGltaW5nRnVuY3Rp
b24tPnN0ZXBBdFN0YXJ0KCkpKTsKLSAgICB9IGVsc2UgaWYgKHZhbHVlLT5pc0xpbmVhclRpbWlu
Z0Z1bmN0aW9uVmFsdWUoKSkKLSAgICAgICAgYW5pbWF0aW9uLT5zZXRUaW1pbmdGdW5jdGlvbihM
aW5lYXJUaW1pbmdGdW5jdGlvbjo6Y3JlYXRlKCkpOworICAgIH0KIH0KIAogdm9pZCBDU1NUb1N0
eWxlTWFwOjptYXBOaW5lUGllY2VJbWFnZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBDU1NWYWx1
ZSogdmFsdWUsIE5pbmVQaWVjZUltYWdlJiBpbWFnZSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NWYWx1ZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVl
LmNwcAkocmV2aXNpb24gMTU2MDc5KQorKysgU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjAzLDggKzIwMyw2IEBAIGJvb2wgQ1NTVmFsdWU6OmVxdWFs
cyhjb25zdCBDU1NWYWx1ZSYgb3QKICAgICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFsdWVz
PENTU1JlZmxlY3RWYWx1ZT4oKnRoaXMsIG90aGVyKTsKICAgICAgICAgY2FzZSBTaGFkb3dDbGFz
czoKICAgICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFsdWVzPFNoYWRvd1ZhbHVlPigqdGhp
cywgb3RoZXIpOwotICAgICAgICBjYXNlIExpbmVhclRpbWluZ0Z1bmN0aW9uQ2xhc3M6Ci0gICAg
ICAgICAgICByZXR1cm4gY29tcGFyZUNTU1ZhbHVlczxDU1NMaW5lYXJUaW1pbmdGdW5jdGlvblZh
bHVlPigqdGhpcywgb3RoZXIpOwogICAgICAgICBjYXNlIEN1YmljQmV6aWVyVGltaW5nRnVuY3Rp
b25DbGFzczoKICAgICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFsdWVzPENTU0N1YmljQmV6
aWVyVGltaW5nRnVuY3Rpb25WYWx1ZT4oKnRoaXMsIG90aGVyKTsKICAgICAgICAgY2FzZSBTdGVw
c1RpbWluZ0Z1bmN0aW9uQ2xhc3M6CkBAIC0zMDcsOCArMzA1LDYgQEAgU3RyaW5nIENTU1ZhbHVl
Ojpjc3NUZXh0KCkgY29uc3QKICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGNvbnN0IENTU1Jl
ZmxlY3RWYWx1ZSo+KHRoaXMpLT5jdXN0b21DU1NUZXh0KCk7CiAgICAgY2FzZSBTaGFkb3dDbGFz
czoKICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGNvbnN0IFNoYWRvd1ZhbHVlKj4odGhpcykt
PmN1c3RvbUNTU1RleHQoKTsKLSAgICBjYXNlIExpbmVhclRpbWluZ0Z1bmN0aW9uQ2xhc3M6Ci0g
ICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxjb25zdCBDU1NMaW5lYXJUaW1pbmdGdW5jdGlvblZh
bHVlKj4odGhpcyktPmN1c3RvbUNTU1RleHQoKTsKICAgICBjYXNlIEN1YmljQmV6aWVyVGltaW5n
RnVuY3Rpb25DbGFzczoKICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGNvbnN0IENTU0N1Ymlj
QmV6aWVyVGltaW5nRnVuY3Rpb25WYWx1ZSo+KHRoaXMpLT5jdXN0b21DU1NUZXh0KCk7CiAgICAg
Y2FzZSBTdGVwc1RpbWluZ0Z1bmN0aW9uQ2xhc3M6CkBAIC00MzcsOSArNDMzLDYgQEAgdm9pZCBD
U1NWYWx1ZTo6ZGVzdHJveSgpCiAgICAgY2FzZSBTaGFkb3dDbGFzczoKICAgICAgICAgZGVsZXRl
IHN0YXRpY19jYXN0PFNoYWRvd1ZhbHVlKj4odGhpcyk7CiAgICAgICAgIHJldHVybjsKLSAgICBj
YXNlIExpbmVhclRpbWluZ0Z1bmN0aW9uQ2xhc3M6Ci0gICAgICAgIGRlbGV0ZSBzdGF0aWNfY2Fz
dDxDU1NMaW5lYXJUaW1pbmdGdW5jdGlvblZhbHVlKj4odGhpcyk7Ci0gICAgICAgIHJldHVybjsK
ICAgICBjYXNlIEN1YmljQmV6aWVyVGltaW5nRnVuY3Rpb25DbGFzczoKICAgICAgICAgZGVsZXRl
IHN0YXRpY19jYXN0PENTU0N1YmljQmV6aWVyVGltaW5nRnVuY3Rpb25WYWx1ZSo+KHRoaXMpOwog
ICAgICAgICByZXR1cm47CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaAkocmV2aXNpb24gMTU2MDc5
KQorKysgU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmgJKHdvcmtpbmcgY29weSkKQEAgLTg3
LDcgKzg3LDYgQEAgcHVibGljOgogICAgIGJvb2wgaXNSZWZsZWN0VmFsdWUoKSBjb25zdCB7IHJl
dHVybiBtX2NsYXNzVHlwZSA9PSBSZWZsZWN0Q2xhc3M7IH0KICAgICBib29sIGlzU2hhZG93VmFs
dWUoKSBjb25zdCB7IHJldHVybiBtX2NsYXNzVHlwZSA9PSBTaGFkb3dDbGFzczsgfQogICAgIGJv
b2wgaXNDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2Ns
YXNzVHlwZSA9PSBDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uQ2xhc3M7IH0KLSAgICBib29sIGlz
TGluZWFyVGltaW5nRnVuY3Rpb25WYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09
IExpbmVhclRpbWluZ0Z1bmN0aW9uQ2xhc3M7IH0KICAgICBib29sIGlzU3RlcHNUaW1pbmdGdW5j
dGlvblZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gU3RlcHNUaW1pbmdGdW5j
dGlvbkNsYXNzOyB9CiAgICAgYm9vbCBpc1dlYktpdENTU1RyYW5zZm9ybVZhbHVlKCkgY29uc3Qg
eyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gV2ViS2l0Q1NTVHJhbnNmb3JtQ2xhc3M7IH0KICAgICBi
b29sIGlzQ1NTTGluZUJveENvbnRhaW5WYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBl
ID09IExpbmVCb3hDb250YWluQ2xhc3M7IH0KQEAgLTE1MCw3ICsxNDksNiBAQCBwcm90ZWN0ZWQ6
CiAKICAgICAgICAgLy8gVGltaW5nIGZ1bmN0aW9uIGNsYXNzZXMuCiAgICAgICAgIEN1YmljQmV6
aWVyVGltaW5nRnVuY3Rpb25DbGFzcywKLSAgICAgICAgTGluZWFyVGltaW5nRnVuY3Rpb25DbGFz
cywKICAgICAgICAgU3RlcHNUaW1pbmdGdW5jdGlvbkNsYXNzLAogCiAgICAgICAgIC8vIE90aGVy
IGNsYXNzIHR5cGVzLgpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQW5pbWF0
aW9uQmFzZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24v
QW5pbWF0aW9uQmFzZS5jcHAJKHJldmlzaW9uIDE1NjA3OSkKKysrIFNvdXJjZS9XZWJDb3JlL3Bh
Z2UvYW5pbWF0aW9uL0FuaW1hdGlvbkJhc2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01OTIsMjEg
KzU5MiwyMSBAQCBkb3VibGUgQW5pbWF0aW9uQmFzZTo6cHJvZ3Jlc3MoZG91YmxlIHNjCiAgICAg
aWYgKCF0ZikKICAgICAgICAgdGYgPSBtX2FuaW1hdGlvbi0+dGltaW5nRnVuY3Rpb24oKS5nZXQo
KTsKIAotICAgIGlmICh0Zi0+aXNDdWJpY0JlemllclRpbWluZ0Z1bmN0aW9uKCkpIHsKLSAgICAg
ICAgY29uc3QgQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvbiogY3RmID0gc3RhdGljX2Nhc3Q8Y29u
c3QgQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvbio+KHRmKTsKLSAgICAgICAgcmV0dXJuIHNvbHZl
Q3ViaWNCZXppZXJGdW5jdGlvbihjdGYtPngxKCksCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgY3RmLT55MSgpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGN0Zi0+eDIoKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjdGYtPnkyKCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ZnJhY3Rpb25hbFRpbWUsIG1fYW5pbWF0aW9uLT5kdXJhdGlvbigpKTsKKyAgICBzd2l0Y2ggKHRm
LT50eXBlKCkpIHsKKyAgICBjYXNlIFRpbWluZ0Z1bmN0aW9uOjpDdWJpY0JlemllckZ1bmN0aW9u
OiB7CisgICAgICAgIGNvbnN0IEN1YmljQmV6aWVyVGltaW5nRnVuY3Rpb24qIGZ1bmN0aW9uID0g
c3RhdGljX2Nhc3Q8Y29uc3QgQ3ViaWNCZXppZXJUaW1pbmdGdW5jdGlvbio+KHRmKTsKKyAgICAg
ICAgcmV0dXJuIHNvbHZlQ3ViaWNCZXppZXJGdW5jdGlvbihmdW5jdGlvbi0+eDEoKSwgZnVuY3Rp
b24tPnkxKCksIGZ1bmN0aW9uLT54MigpLCBmdW5jdGlvbi0+eTIoKSwgZnJhY3Rpb25hbFRpbWUs
IG1fYW5pbWF0aW9uLT5kdXJhdGlvbigpKTsKICAgICB9Ci0gICAgCi0gICAgaWYgKHRmLT5pc1N0
ZXBzVGltaW5nRnVuY3Rpb24oKSkgewotICAgICAgICBjb25zdCBTdGVwc1RpbWluZ0Z1bmN0aW9u
KiBzdGYgPSBzdGF0aWNfY2FzdDxjb25zdCBTdGVwc1RpbWluZ0Z1bmN0aW9uKj4odGYpOwotICAg
ICAgICByZXR1cm4gc29sdmVTdGVwc0Z1bmN0aW9uKHN0Zi0+bnVtYmVyT2ZTdGVwcygpLCBzdGYt
PnN0ZXBBdFN0YXJ0KCksIGZyYWN0aW9uYWxUaW1lKTsKKyAgICBjYXNlIFRpbWluZ0Z1bmN0aW9u
OjpTdGVwc0Z1bmN0aW9uOiB7CisgICAgICAgIGNvbnN0IFN0ZXBzVGltaW5nRnVuY3Rpb24qIHN0
ZXBzVGltaW5nRnVuY3Rpb24gPSBzdGF0aWNfY2FzdDxjb25zdCBTdGVwc1RpbWluZ0Z1bmN0aW9u
Kj4odGYpOworICAgICAgICByZXR1cm4gc29sdmVTdGVwc0Z1bmN0aW9uKHN0ZXBzVGltaW5nRnVu
Y3Rpb24tPm51bWJlck9mU3RlcHMoKSwgc3RlcHNUaW1pbmdGdW5jdGlvbi0+c3RlcEF0U3RhcnQo
KSwgZnJhY3Rpb25hbFRpbWUpOworICAgIH0KKyAgICBjYXNlIFRpbWluZ0Z1bmN0aW9uOjpMaW5l
YXJGdW5jdGlvbjoKKyAgICAgICAgcmV0dXJuIGZyYWN0aW9uYWxUaW1lOwogICAgIH0KIAotICAg
IHJldHVybiBmcmFjdGlvbmFsVGltZTsKKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICBy
ZXR1cm4gMDsKIH0KIAogdm9pZCBBbmltYXRpb25CYXNlOjpnZXRUaW1lVG9OZXh0RXZlbnQoZG91
YmxlJiB0aW1lLCBib29sJiBpc0xvb3BpbmcpIGNvbnN0Cg==
</data>
<flag name="review"
          id="234262"
          type_id="1"
          status="+"
          setter="dino"
    />
          </attachment>
      

    </bug>

</bugzilla>