<?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>109848</bug_id>
          
          <creation_ts>2013-02-14 11:12:58 -0800</creation_ts>
          <short_desc>[GTK][AC] Implement matrix transform animation with clutter ac backend</short_desc>
          <delta_ts>2013-02-19 12:11:57 -0800</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>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>105699</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="ChangSeok Oh">kevin.cs.oh</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>gustavo</cc>
    
    <cc>mrobinson</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>833255</commentid>
    <comment_count>0</comment_count>
    <who name="ChangSeok Oh">kevin.cs.oh</who>
    <bug_when>2013-02-14 11:12:58 -0800</bug_when>
    <thetext>This bug handles matrix transform animation with clutter ac backend.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>833286</commentid>
    <comment_count>1</comment_count>
      <attachid>188394</attachid>
    <who name="ChangSeok Oh">kevin.cs.oh</who>
    <bug_when>2013-02-14 11:50:41 -0800</bug_when>
    <thetext>Created attachment 188394
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>836336</commentid>
    <comment_count>2</comment_count>
      <attachid>188394</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2013-02-19 06:39:21 -0800</bug_when>
    <thetext>Comment on attachment 188394
Patch

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

&gt; Source/WebCore/platform/graphics/clutter/PlatformClutterAnimation.cpp:459
&gt; +    // FIXME: The matrix interpolation api, clutter_matrix_progress of Clutter 1.12 works unexpectedly.
&gt; +    // So we overwrite it and handle the interpolation of two matrices with TransformationMatrix.

Would be good to link to a bug report here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>836549</commentid>
    <comment_count>3</comment_count>
      <attachid>189114</attachid>
    <who name="ChangSeok Oh">kevin.cs.oh</who>
    <bug_when>2013-02-19 10:54:41 -0800</bug_when>
    <thetext>Created attachment 189114
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>836550</commentid>
    <comment_count>4</comment_count>
      <attachid>188394</attachid>
    <who name="ChangSeok Oh">kevin.cs.oh</who>
    <bug_when>2013-02-19 10:56:46 -0800</bug_when>
    <thetext>Comment on attachment 188394
Patch

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

Thanks for the review!

&gt;&gt; Source/WebCore/platform/graphics/clutter/PlatformClutterAnimation.cpp:459
&gt;&gt; +    // So we overwrite it and handle the interpolation of two matrices with TransformationMatrix.
&gt; 
&gt; Would be good to link to a bug report here.

Reported here https://bugzilla.gnome.org/show_bug.cgi?id=694197</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>836647</commentid>
    <comment_count>5</comment_count>
      <attachid>189114</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-19 12:11:53 -0800</bug_when>
    <thetext>Comment on attachment 189114
Patch

Clearing flags on attachment: 189114

Committed r143369: &lt;http://trac.webkit.org/changeset/143369&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>836648</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-19 12:11:57 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>188394</attachid>
            <date>2013-02-14 11:50:41 -0800</date>
            <delta_ts>2013-02-19 11:07:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109848-20130215044708.patch</filename>
            <type>text/plain</type>
            <size>12672</size>
            <attacher name="ChangSeok Oh">kevin.cs.oh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyNzU0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzg4NGYyOWUxZTA2MzZh
MWIzMjVjMmY3Y2NlNmYyZjAzMTQ0ZTNlMC4uNWI5NzU0YmNlOTZjYzliMTMyMmVlN2QxNDc3ODI0
N2I4Yzk3NTBmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM2IEBACisyMDEzLTAyLTE0ICBDaGFu
Z1Nlb2sgT2ggIDxzaGl2YW1pZG93QGdtYWlsLmNvbT4KKworICAgICAgICBbR1RLXVtBQ10gSW1w
bGVtZW50IG1hdHJpeCB0cmFuc2Zvcm0gYW5pbWF0aW9uIHdpdGggY2x1dHRlciBhYyBiYWNrZW5k
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDk4NDgK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDbHV0dGVy
IDEuMTIgZG9lc24ndCBzdXBwb3J0IGFkZGl0aXZlIHRyYW5zZm9ybSBhbmltYXRpb25zIHlldCwg
c28gdGhlIGNvbWJpbmF0aW9uCisgICAgICAgIG9mIHR3byBvciBtb3JlIHRyYW5zZm9ybWF0aW9u
cyhzdWNoIGFzIHJvdGF0aW9uIGFmdGVyIHRyYW5zbGF0aW9uKSBydW5zIHVuZXhwZWN0ZWRseS4K
KyAgICAgICAgU28gd2UgdXNlIGEgbWF0cml4IHRyYW5zZm9ybWF0aW9uIGluc3RlYWQgZm9yIHRo
ZSBjYXNlLgorCisgICAgICAgIENvdmVyZWQgYnkgZXhpc3RpbmcgYW5pbWF0aW9uIHRlc3RzLgor
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2x1dHRlci9HcmFwaGljc0xheWVyQ2x1dHRl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpnZXRWYWx1ZUZ1bmN0aW9uTmFtZUZvclRyYW5zZm9y
bU9wZXJhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0xheWVyQ2x1dHRlcjo6Y3Jl
YXRlVHJhbnNmb3JtQW5pbWF0aW9uc0Zyb21LZXlmcmFtZXMpOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL2NsdXR0ZXIvUGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OnRvQ2x1dHRlckFjdG9yUHJvcGVydHlTdHJpbmcpOiBBZGQgYWN0b3IgcHJvcGVy
dHkgInRyYW5zZm9ybSIKKyAgICAgICAgKFdlYkNvcmU6OmNsdXR0ZXJNYXRyaXhQcm9ncmVzcyk6
IGhhbmRsZSBpbnRlcnBvbGF0aW9uIGJldHdlZW4gdHdvIG1hdHJpY2VzIGluc3RlYWQgb2YgZGVm
YXVsdCBjbHV0dGVyX21hdHJpeF9wcm9ncmVzcy4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAg
ICAoV2ViQ29yZTo6UGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uOjpzdXBwb3J0c0FkZGl0aXZlVmFs
dWVGdW5jdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9ybUNsdXR0ZXJBbmltYXRpb246
OnNldEZyb21WYWx1ZSk6IGZvciBUcmFuc2Zvcm1hdGlvbk1hdHJpeC4KKyAgICAgICAgKFdlYkNv
cmU6OlBsYXRmb3JtQ2x1dHRlckFuaW1hdGlvbjo6c2V0VG9WYWx1ZSk6IGRpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6UGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uOjphZGRDbHV0dGVyVHJhbnNpdGlv
bkZvclByb3BlcnR5KToKKyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtQ2x1dHRlckFuaW1hdGlv
bjo6YWRkVHJhbnNmb3JtVHJhbnNpdGlvbik6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2x1dHRlci9QbGF0Zm9ybUNsdXR0ZXJBbmltYXRpb24uaDoKKyAgICAgICAgKFBsYXRmb3JtQ2x1
dHRlckFuaW1hdGlvbik6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2x1dHRlci9UcmFu
c2Zvcm1hdGlvbk1hdHJpeENsdXR0ZXIuY3BwOiBBZGQgY29weSBjb25zdHJ1Y3RvciBmb3IgQ29n
bE1hdHJpeC4KKyAgICAgICAgKFdlYkNvcmU6OlRyYW5zZm9ybWF0aW9uTWF0cml4OjpUcmFuc2Zv
cm1hdGlvbk1hdHJpeCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy90cmFuc2Zvcm1zL1RyYW5zZm9ybWF0aW9uTWF0cml4Lmg6CisgICAgICAgIChUcmFu
c2Zvcm1hdGlvbk1hdHJpeCk6CisKIDIwMTMtMDItMTMgIFJhc2htaSBTaHlhbWFzdW5kYXIgIDxy
YXNobWkuczJAc2Ftc3VuZy5jb20+CiAKICAgICAgICAgVGhlIDJEIENhbnZhcyBmdW5jdGlvbnMg
ZmlsbFRleHQoKS9zdHJva2VUZXh0KCkgc2hvdWxkIGRpc3BsYXkgbm90aGluZyB3aGVuIG1heFdp
ZHRoIGlzIGxlc3MgdGhlbiBvciBlcXVhbCB0byB6ZXJvCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jbHV0dGVyL0dyYXBoaWNzTGF5ZXJDbHV0dGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NsdXR0ZXIvR3JhcGhpY3NMYXllckNs
dXR0ZXIuY3BwCmluZGV4IDUzNzk2ZWM4OTc3OTZkOWI5MzljMjEyMWYxMjUzZDAxYmI1NzE5ODMu
Ljg0ODFiZjRkY2QzMWRjYWQzZGFmZDA0ODBjZWJhZDY5ZWRlZmQ0NDkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NsdXR0ZXIvR3JhcGhpY3NMYXllckNsdXR0
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NsdXR0ZXIvR3Jh
cGhpY3NMYXllckNsdXR0ZXIuY3BwCkBAIC0xOTAsNiArMTkwLDggQEAgc3RhdGljIFBsYXRmb3Jt
Q2x1dHRlckFuaW1hdGlvbjo6VmFsdWVGdW5jdGlvblR5cGUgZ2V0VmFsdWVGdW5jdGlvbk5hbWVG
b3JUcmFuc2YKICAgICBjYXNlIFRyYW5zZm9ybU9wZXJhdGlvbjo6VFJBTlNMQVRFOgogICAgIGNh
c2UgVHJhbnNmb3JtT3BlcmF0aW9uOjpUUkFOU0xBVEVfM0Q6CiAgICAgICAgIHJldHVybiBQbGF0
Zm9ybUNsdXR0ZXJBbmltYXRpb246OlRyYW5zbGF0ZTsKKyAgICBjYXNlIFRyYW5zZm9ybU9wZXJh
dGlvbjo6TUFUUklYXzNEOgorICAgICAgICByZXR1cm4gUGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9u
OjpNYXRyaXg7CiAgICAgZGVmYXVsdDoKICAgICAgICAgcmV0dXJuIFBsYXRmb3JtQ2x1dHRlckFu
aW1hdGlvbjo6Tm9WYWx1ZUZ1bmN0aW9uOwogICAgIH0KQEAgLTg2NSw3ICs4NjcsNyBAQCBib29s
IEdyYXBoaWNzTGF5ZXJDbHV0dGVyOjpjcmVhdGVUcmFuc2Zvcm1BbmltYXRpb25zRnJvbUtleWZy
YW1lcyhjb25zdCBLZXlmcmFtZQogICAgIC8vIElmIGZ1bmN0aW9uIGxpc3RzIGRvbid0IG1hdGNo
IHdlIGRvIGEgbWF0cml4IGFuaW1hdGlvbiwgb3RoZXJ3aXNlIHdlIGRvIGEgY29tcG9uZW50IGhh
cmR3YXJlIGFuaW1hdGlvbi4KICAgICAvLyBBbHNvLCB3ZSBjYW4ndCBkbyBjb21wb25lbnQgYW5p
bWF0aW9uIHVubGVzcyB3ZSBoYXZlIHZhbHVlRnVuY3Rpb24sIHNvIHdlIG5lZWQgdG8gZG8gbWF0
cml4IGFuaW1hdGlvbgogICAgIC8vIGlmIHRoYXQncyBub3QgdHJ1ZSBhcyB3ZWxsLgotICAgIGJv
b2wgaXNNYXRyaXhBbmltYXRpb24gPSBsaXN0SW5kZXggPCAwIHx8ICFQbGF0Zm9ybUNsdXR0ZXJB
bmltYXRpb246OnN1cHBvcnRzVmFsdWVGdW5jdGlvbigpOworICAgIGJvb2wgaXNNYXRyaXhBbmlt
YXRpb24gPSBsaXN0SW5kZXggPCAwIHx8ICFQbGF0Zm9ybUNsdXR0ZXJBbmltYXRpb246OnN1cHBv
cnRzVmFsdWVGdW5jdGlvbigpIHx8IChvcGVyYXRpb25zLT5zaXplKCkgPj0gMiAmJiAhUGxhdGZv
cm1DbHV0dGVyQW5pbWF0aW9uOjpzdXBwb3J0c0FkZGl0aXZlVmFsdWVGdW5jdGlvbigpKTsKICAg
ICBpbnQgbnVtQW5pbWF0aW9ucyA9IGlzTWF0cml4QW5pbWF0aW9uID8gMSA6IG9wZXJhdGlvbnMt
PnNpemUoKTsKIAogICAgIGZvciAoaW50IGFuaW1hdGlvbkluZGV4ID0gMDsgYW5pbWF0aW9uSW5k
ZXggPCBudW1BbmltYXRpb25zOyArK2FuaW1hdGlvbkluZGV4KSB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jbHV0dGVyL1BsYXRmb3JtQ2x1dHRlckFuaW1h
dGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jbHV0dGVyL1BsYXRm
b3JtQ2x1dHRlckFuaW1hdGlvbi5jcHAKaW5kZXggNjJmZTc2MTkyMGMwMjEyM2RhYjhjYTIxMzNi
MWZkY2U3YWRmMDJiZi4uMWM5ODUwMzFmZWZhYWE2MDRjMTgyZGU4YWU4MDAzZWI2ZThjMmMxMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2x1dHRlci9QbGF0
Zm9ybUNsdXR0ZXJBbmltYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NsdXR0ZXIvUGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uLmNwcApAQCAtNTQsNyArNTQs
NyBAQCBzdGF0aWMgU3RyaW5nIHRvQ2x1dHRlckFjdG9yUHJvcGVydHlTdHJpbmcoY29uc3QgUGxh
dGZvcm1DbHV0dGVyQW5pbWF0aW9uOjpWYWx1ZQogewogICAgIC8vIENsdXR0ZXJBY3RvciBkb2Vz
bid0IGhhdmUgJ3NjYWxlJyBhbmQgJ3RyYW5zbGF0ZScgcHJvcGVydGllcy4gU28gd2Ugc2hvdWxk
IHN1cHBvcnQKICAgICAvLyAnc2NhbGUnIGFuZCAndHJhbnNsYXRlJyBWYWx1ZUZ1bmN0aW9uVHlw
ZSBieSBjb21iaW5hdGlvbiBvZiBleGlzdGluZyBwcm9wZXJ0eSBhbmltYXRpb25zLiAKLSAgICBj
b25zdCBjaGFyKiBjbHV0dGVyQWN0b3JQcm9wZXJ0eVtdID0geyAiTm9Qcm9wZXJ0eSIsICJyb3Rh
dGlvbi1hbmdsZS14IiwgInJvdGF0aW9uLWFuZ2xlLXkiLCAicm90YXRpb24tYW5nbGUteiIsICJz
Y2FsZS14IiwgInNjYWxlLXkiLCAic2NhbGUteiIsICJOb1Byb3BlcnR5IiwgInRyYW5zbGF0aW9u
LXgiLCAidHJhbnNsYXRpb24teSIsICJ0cmFuc2xhdGlvbi16IiwgIk5vUHJvcGVydHkiIH07IAor
ICAgIGNvbnN0IGNoYXIqIGNsdXR0ZXJBY3RvclByb3BlcnR5W10gPSB7ICJOb1Byb3BlcnR5Iiwg
InJvdGF0aW9uLWFuZ2xlLXgiLCAicm90YXRpb24tYW5nbGUteSIsICJyb3RhdGlvbi1hbmdsZS16
IiwgInNjYWxlLXgiLCAic2NhbGUteSIsICJzY2FsZS16IiwgIk5vUHJvcGVydHkiLCAidHJhbnNs
YXRpb24teCIsICJ0cmFuc2xhdGlvbi15IiwgInRyYW5zbGF0aW9uLXoiLCAiTm9Qcm9wZXJ0eSIs
ICJ0cmFuc2Zvcm0iIH07IAogICAgIHJldHVybiBjbHV0dGVyQWN0b3JQcm9wZXJ0eVt2YWx1ZUZ1
bmN0aW9uVHlwZV07CiB9CiAKQEAgLTgzLDYgKzgzLDIzIEBAIHN0YXRpYyBDbHV0dGVyQW5pbWF0
aW9uTW9kZSB0b0NsdXR0ZXJBbmltYXRpb25Nb2RlKGNvbnN0IFRpbWluZ0Z1bmN0aW9uKiB0aW1p
bmdGCiAgICAgcmV0dXJuIENMVVRURVJfRUFTRTsKIH0KIAorc3RhdGljIGdib29sZWFuIGNsdXR0
ZXJNYXRyaXhQcm9ncmVzcyhjb25zdCBHVmFsdWUqIGZyb21WYWx1ZSwgY29uc3QgR1ZhbHVlKiB0
b1ZhbHVlLCBnZG91YmxlIHByb2dyZXNzLCBHVmFsdWUqIHJldHVyblZhbHVlKQoreworICAgIGNv
bnN0IENvZ2xNYXRyaXgqIGZyb21Db2dsTWF0cml4ID0gc3RhdGljX2Nhc3Q8Q29nbE1hdHJpeCo+
KGdfdmFsdWVfZ2V0X2JveGVkKGZyb21WYWx1ZSkpOworICAgIGNvbnN0IENvZ2xNYXRyaXgqIHRv
Q29nbE1hdHJpeCA9IHN0YXRpY19jYXN0PENvZ2xNYXRyaXgqPihnX3ZhbHVlX2dldF9ib3hlZCh0
b1ZhbHVlKSk7CisKKyAgICBBU1NFUlQoZnJvbUNvZ2xNYXRyaXggJiYgdG9Db2dsTWF0cml4KTsK
KworICAgIFRyYW5zZm9ybWF0aW9uTWF0cml4IGZyb21NYXRyaXgoZnJvbUNvZ2xNYXRyaXgpOwor
ICAgIFRyYW5zZm9ybWF0aW9uTWF0cml4IHRvTWF0cml4KHRvQ29nbE1hdHJpeCk7CisgICAgdG9N
YXRyaXguYmxlbmQoZnJvbU1hdHJpeCwgcHJvZ3Jlc3MpOworCisgICAgQ29nbE1hdHJpeCByZXN1
bHRDb2dsTWF0cml4ID0gdG9NYXRyaXg7CisgICAgZ192YWx1ZV9zZXRfYm94ZWQocmV0dXJuVmFs
dWUsICZyZXN1bHRDb2dsTWF0cml4KTsKKworICAgIHJldHVybiB0cnVlOworfQorCiBQbGF0Zm9y
bUNsdXR0ZXJBbmltYXRpb246OkFuaW1hdGVkUHJvcGVydHlUeXBlIFBsYXRmb3JtQ2x1dHRlckFu
aW1hdGlvbjo6c3RyaW5nVG9BbmltYXRlZFByb3BlcnR5VHlwZShjb25zdCBTdHJpbmcmIGtleVBh
dGgpIGNvbnN0CiB7CiAgICAgaWYgKGtleVBhdGggPT0gInRyYW5zZm9ybSIpCkBAIC0xMzUsNiAr
MTUyLDEzIEBAIGJvb2wgUGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uOjpzdXBwb3J0c1ZhbHVlRnVu
Y3Rpb24oKQogICAgIHJldHVybiB0cnVlOwogfQogCitib29sIFBsYXRmb3JtQ2x1dHRlckFuaW1h
dGlvbjo6c3VwcG9ydHNBZGRpdGl2ZVZhbHVlRnVuY3Rpb24oKQoreworICAgIC8vIEZJWE1FOiBD
bHV0dGVyIDEuMTIgZG9lc24ndCBzdXBwb3J0IGFkZGl0aXZlIHZhbHVlRnVuY3Rpb24gdHlwZSBh
bmltYXRpb25zLgorICAgIC8vIFNvLCB3ZSB1c2UgbWF0cml4IGFuaW1hdGlvbiBpbnN0ZWFkIHVu
dGlsIGNsdXR0ZXIgc3VwcG9ydHMgaXQuCisgICAgcmV0dXJuIGZhbHNlOworfQorCiBkb3VibGUg
UGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uOjpiZWdpblRpbWUoKSBjb25zdAogewogICAgIG5vdElt
cGxlbWVudGVkKCk7CkBAIC0yNzYsNyArMzAwLDEwIEBAIHZvaWQgUGxhdGZvcm1DbHV0dGVyQW5p
bWF0aW9uOjpzZXRGcm9tVmFsdWUoZmxvYXQgdmFsdWUpCiAKIHZvaWQgUGxhdGZvcm1DbHV0dGVy
QW5pbWF0aW9uOjpzZXRGcm9tVmFsdWUoY29uc3QgV2ViQ29yZTo6VHJhbnNmb3JtYXRpb25NYXRy
aXgmIHZhbHVlKQogewotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgaWYgKGFuaW1hdGlvblR5
cGUoKSAhPSBCYXNpYyB8fCBtX2Zyb21WYWx1ZU1hdHJpeCA9PSB2YWx1ZSkKKyAgICAgICAgcmV0
dXJuOworCisgICAgbV9mcm9tVmFsdWVNYXRyaXggPSB2YWx1ZTsKIH0KIAogdm9pZCBQbGF0Zm9y
bUNsdXR0ZXJBbmltYXRpb246OnNldEZyb21WYWx1ZShjb25zdCBGbG9hdFBvaW50M0QmIHZhbHVl
KQpAQCAtMzA3LDcgKzMzNCwxMCBAQCB2b2lkIFBsYXRmb3JtQ2x1dHRlckFuaW1hdGlvbjo6c2V0
VG9WYWx1ZShmbG9hdCB2YWx1ZSkKIAogdm9pZCBQbGF0Zm9ybUNsdXR0ZXJBbmltYXRpb246OnNl
dFRvVmFsdWUoY29uc3QgV2ViQ29yZTo6VHJhbnNmb3JtYXRpb25NYXRyaXgmIHZhbHVlKQogewot
ICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgaWYgKGFuaW1hdGlvblR5cGUoKSAhPSBCYXNpYyB8
fCBtX3RvVmFsdWVNYXRyaXggPT0gdmFsdWUpCisgICAgICAgIHJldHVybjsKKworICAgIG1fdG9W
YWx1ZU1hdHJpeCA9IHZhbHVlOwogfQogCiB2b2lkIFBsYXRmb3JtQ2x1dHRlckFuaW1hdGlvbjo6
c2V0VG9WYWx1ZShjb25zdCBGbG9hdFBvaW50M0QmIHZhbHVlKQpAQCAtNDEyLDYgKzQ0MiwyNCBA
QCB2b2lkIFBsYXRmb3JtQ2x1dHRlckFuaW1hdGlvbjo6YWRkQ2x1dHRlclRyYW5zaXRpb25Gb3JQ
cm9wZXJ0eShjb25zdCBTdHJpbmcmIHBybwogICAgIGNsdXR0ZXJfdHJhbnNpdGlvbl9ncm91cF9h
ZGRfdHJhbnNpdGlvbihDTFVUVEVSX1RSQU5TSVRJT05fR1JPVVAobV9hbmltYXRpb24uZ2V0KCkp
LCB0cmFuc2l0aW9uLmdldCgpKTsKIH0KIAordm9pZCBQbGF0Zm9ybUNsdXR0ZXJBbmltYXRpb246
OmFkZENsdXR0ZXJUcmFuc2l0aW9uRm9yUHJvcGVydHkoY29uc3QgU3RyaW5nJiBwcm9wZXJ0eSwg
Y29uc3QgV2ViQ29yZTo6VHJhbnNmb3JtYXRpb25NYXRyaXgmIGZyb21WYWx1ZSwgY29uc3QgV2Vi
Q29yZTo6VHJhbnNmb3JtYXRpb25NYXRyaXgmIHRvVmFsdWUpCit7CisgICAgQVNTRVJUKHByb3Bl
cnR5ICE9ICJOb1Byb3BlcnR5Iik7CisKKyAgICBjb25zdCBDb2dsTWF0cml4IGZyb21Db2dsTWF0
cml4ID0gZnJvbVZhbHVlOworICAgIGNvbnN0IENvZ2xNYXRyaXggdG9Db2dsTWF0cml4ID0gdG9W
YWx1ZTsKKworICAgIEdSZWZQdHI8Q2x1dHRlclRyYW5zaXRpb24+IHRyYW5zaXRpb24gPSBhZG9w
dEdSZWYoY2x1dHRlcl9wcm9wZXJ0eV90cmFuc2l0aW9uX25ldyhwcm9wZXJ0eS51dGY4KCkuZGF0
YSgpKSk7CisgICAgY2x1dHRlcl90cmFuc2l0aW9uX3NldF9mcm9tKHRyYW5zaXRpb24uZ2V0KCks
IENMVVRURVJfVFlQRV9NQVRSSVgsICZmcm9tQ29nbE1hdHJpeCk7CisgICAgY2x1dHRlcl90cmFu
c2l0aW9uX3NldF90byh0cmFuc2l0aW9uLmdldCgpLCBDTFVUVEVSX1RZUEVfTUFUUklYLCAmdG9D
b2dsTWF0cml4KTsKKworICAgIGNsdXR0ZXJfdHJhbnNpdGlvbl9ncm91cF9hZGRfdHJhbnNpdGlv
bihDTFVUVEVSX1RSQU5TSVRJT05fR1JPVVAobV9hbmltYXRpb24uZ2V0KCkpLCB0cmFuc2l0aW9u
LmdldCgpKTsKKworICAgIC8vIEZJWE1FOiBUaGUgbWF0cml4IGludGVycG9sYXRpb24gYXBpLCBj
bHV0dGVyX21hdHJpeF9wcm9ncmVzcyBvZiBDbHV0dGVyIDEuMTIgd29ya3MgdW5leHBlY3RlZGx5
LgorICAgIC8vIFNvIHdlIG92ZXJ3cml0ZSBpdCBhbmQgaGFuZGxlIHRoZSBpbnRlcnBvbGF0aW9u
IG9mIHR3byBtYXRyaWNlcyB3aXRoIFRyYW5zZm9ybWF0aW9uTWF0cml4LgorICAgIGNsdXR0ZXJf
aW50ZXJ2YWxfcmVnaXN0ZXJfcHJvZ3Jlc3NfZnVuYyhDTFVUVEVSX1RZUEVfTUFUUklYLCBjbHV0
dGVyTWF0cml4UHJvZ3Jlc3MpOworfQorCiB2b2lkIFBsYXRmb3JtQ2x1dHRlckFuaW1hdGlvbjo6
YWRkT3BhY2l0eVRyYW5zaXRpb24oKQogewogICAgIGFkZENsdXR0ZXJUcmFuc2l0aW9uRm9yUHJv
cGVydHkoU3RyaW5nKCJvcGFjaXR5IiksIHN0YXRpY19jYXN0PHVuc2lnbmVkPigyNTUgKiBtX2Zy
b21WYWx1ZSksIHN0YXRpY19jYXN0PHVuc2lnbmVkPigyNTUgKiBtX3RvVmFsdWUpKTsKQEAgLTQ0
MSw2ICs0ODksOSBAQCB2b2lkIFBsYXRmb3JtQ2x1dHRlckFuaW1hdGlvbjo6YWRkVHJhbnNmb3Jt
VHJhbnNpdGlvbigpCiAgICAgICAgIGFkZENsdXR0ZXJUcmFuc2l0aW9uRm9yUHJvcGVydHkoU3Ry
aW5nKCJ0cmFuc2xhdGlvbi14IiksIG1fZnJvbVZhbHVlM0QueCgpLCBtX3RvVmFsdWUzRC54KCkp
OwogICAgICAgICBhZGRDbHV0dGVyVHJhbnNpdGlvbkZvclByb3BlcnR5KFN0cmluZygidHJhbnNs
YXRpb24teSIpLCBtX2Zyb21WYWx1ZTNELngoKSwgbV90b1ZhbHVlM0QueSgpKTsKICAgICAgICAg
YnJlYWs7CisgICAgY2FzZSBNYXRyaXg6CisgICAgICAgIGFkZENsdXR0ZXJUcmFuc2l0aW9uRm9y
UHJvcGVydHkodG9DbHV0dGVyQWN0b3JQcm9wZXJ0eVN0cmluZyhtX3ZhbHVlRnVuY3Rpb25UeXBl
KSwgbV9mcm9tVmFsdWVNYXRyaXgsIG1fdG9WYWx1ZU1hdHJpeCk7CisgICAgICAgIGJyZWFrOwog
ICAgIGRlZmF1bHQ6CiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NsdXR0ZXIvUGxhdGZvcm1D
bHV0dGVyQW5pbWF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jbHV0
dGVyL1BsYXRmb3JtQ2x1dHRlckFuaW1hdGlvbi5oCmluZGV4IGI4OTJkZDNjY2Y1MWE0NWNmOWRj
YTlhZTc5Mzc0YzlhNDEyNTZhZWIuLjFiMTAxMDI2ZTk5MDNhNmRjNWQyNzA3OWM5ZWVmOTAzYTFi
NWMwMmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NsdXR0
ZXIvUGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY2x1dHRlci9QbGF0Zm9ybUNsdXR0ZXJBbmltYXRpb24uaApAQCAtNTUsNyAr
NTUsNyBAQCBwdWJsaWM6CiAgICAgZW51bSBBbmltYXRpb25UeXBlIHsgQmFzaWMsIEtleWZyYW1l
IH07CiAgICAgZW51bSBBbmltYXRlZFByb3BlcnR5VHlwZSB7IE5vQW5pbWF0ZWRQcm9wZXJ0eVR5
cGUsIFRyYW5zZm9ybSwgT3BhY2l0eSwgQmFja2dyb3VuZENvbG9yIH07CiAgICAgZW51bSBGaWxs
TW9kZVR5cGUgeyBOb0ZpbGxNb2RlLCBGb3J3YXJkcywgQmFja3dhcmRzLCBCb3RoIH07Ci0gICAg
ZW51bSBWYWx1ZUZ1bmN0aW9uVHlwZSB7IE5vVmFsdWVGdW5jdGlvbiwgUm90YXRlWCwgUm90YXRl
WSwgUm90YXRlWiwgU2NhbGVYLCBTY2FsZVksIFNjYWxlWiwgU2NhbGUsIFRyYW5zbGF0ZVgsIFRy
YW5zbGF0ZVksIFRyYW5zbGF0ZVosIFRyYW5zbGF0ZSB9OworICAgIGVudW0gVmFsdWVGdW5jdGlv
blR5cGUgeyBOb1ZhbHVlRnVuY3Rpb24sIFJvdGF0ZVgsIFJvdGF0ZVksIFJvdGF0ZVosIFNjYWxl
WCwgU2NhbGVZLCBTY2FsZVosIFNjYWxlLCBUcmFuc2xhdGVYLCBUcmFuc2xhdGVZLCBUcmFuc2xh
dGVaLCBUcmFuc2xhdGUsIE1hdHJpeCB9OwogCiAgICAgc3RhdGljIFBhc3NSZWZQdHI8UGxhdGZv
cm1DbHV0dGVyQW5pbWF0aW9uPiBjcmVhdGUoQW5pbWF0aW9uVHlwZSwgY29uc3QgU3RyaW5nJiBr
ZXlQYXRoKTsKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxQbGF0Zm9ybUNsdXR0ZXJBbmltYXRpb24+
IGNyZWF0ZShQbGF0Zm9ybUNsdXR0ZXJBbmltYXRpb24qKTsKQEAgLTYzLDYgKzYzLDcgQEAgcHVi
bGljOgogICAgIH5QbGF0Zm9ybUNsdXR0ZXJBbmltYXRpb24oKTsKIAogICAgIHN0YXRpYyBib29s
IHN1cHBvcnRzVmFsdWVGdW5jdGlvbigpOworICAgIHN0YXRpYyBib29sIHN1cHBvcnRzQWRkaXRp
dmVWYWx1ZUZ1bmN0aW9uKCk7CiAKICAgICBBbmltYXRpb25UeXBlIGFuaW1hdGlvblR5cGUoKSBj
b25zdCB7IHJldHVybiBtX3R5cGU7IH0KIApAQCAtMTQwLDYgKzE0MSw3IEBAIHByaXZhdGU6CiAK
ICAgICB2b2lkIGFkZENsdXR0ZXJUcmFuc2l0aW9uRm9yUHJvcGVydHkoY29uc3QgU3RyaW5nJiBw
cm9wZXJ0eSwgY29uc3QgdW5zaWduZWQgZnJvbVZhbHVlLCBjb25zdCB1bnNpZ25lZCB0b1ZhbHVl
KTsKICAgICB2b2lkIGFkZENsdXR0ZXJUcmFuc2l0aW9uRm9yUHJvcGVydHkoY29uc3QgU3RyaW5n
JiBwcm9wZXJ0eSwgY29uc3QgZmxvYXQgZnJvbVZhbHVlLCBjb25zdCBmbG9hdCB0b1ZhbHVlKTsK
KyAgICB2b2lkIGFkZENsdXR0ZXJUcmFuc2l0aW9uRm9yUHJvcGVydHkoY29uc3QgU3RyaW5nJiBw
cm9wZXJ0eSwgY29uc3QgV2ViQ29yZTo6VHJhbnNmb3JtYXRpb25NYXRyaXgmLCBjb25zdCBXZWJD
b3JlOjpUcmFuc2Zvcm1hdGlvbk1hdHJpeCYpOwogCiAgICAgdm9pZCBhZGRPcGFjaXR5VHJhbnNp
dGlvbigpOwogICAgIHZvaWQgYWRkVHJhbnNmb3JtVHJhbnNpdGlvbigpOwpAQCAtMTU4LDYgKzE2
MCw5IEBAIHByaXZhdGU6CiAgICAgRmxvYXRQb2ludDNEIG1fZnJvbVZhbHVlM0Q7CiAgICAgRmxv
YXRQb2ludDNEIG1fdG9WYWx1ZTNEOwogCisgICAgV2ViQ29yZTo6VHJhbnNmb3JtYXRpb25NYXRy
aXggbV9mcm9tVmFsdWVNYXRyaXg7CisgICAgV2ViQ29yZTo6VHJhbnNmb3JtYXRpb25NYXRyaXgg
bV90b1ZhbHVlTWF0cml4OworCiAgICAgZmxvYXQgbV9yZXBlYXRDb3VudDsKIAogICAgIGNvbnN0
IFRpbWluZ0Z1bmN0aW9uKiBtX3RpbWluZ0Z1bmN0aW9uOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2x1dHRlci9UcmFuc2Zvcm1hdGlvbk1hdHJpeENsdXR0
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2x1dHRlci9UcmFuc2Zv
cm1hdGlvbk1hdHJpeENsdXR0ZXIuY3BwCmluZGV4IGQ1YzNmMmFlNDRjMTIyYmQwOGU3N2ZiMjBk
NTAzNDMwNjNmZTQxYWIuLjU2NTU4NzM5YjJiYzZhN2FlZTIwYTE4ZDNhYjcxOTE1ZTIxMmY5ODgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NsdXR0ZXIvVHJh
bnNmb3JtYXRpb25NYXRyaXhDbHV0dGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jbHV0dGVyL1RyYW5zZm9ybWF0aW9uTWF0cml4Q2x1dHRlci5jcHAKQEAgLTUx
LDQgKzUxLDEyIEBAIFRyYW5zZm9ybWF0aW9uTWF0cml4OjpvcGVyYXRvciBDb2dsTWF0cml4KCkg
Y29uc3QKICAgICByZXR1cm4gbWF0cml4OwogfQogCitUcmFuc2Zvcm1hdGlvbk1hdHJpeDo6VHJh
bnNmb3JtYXRpb25NYXRyaXgoY29uc3QgQ29nbE1hdHJpeCogbWF0cml4KQoreworICAgIHNldE1h
dHJpeChtYXRyaXgtPnh4LCBtYXRyaXgtPnl4LCBtYXRyaXgtPnp4LCBtYXRyaXgtPnd4LAorICAg
ICAgICBtYXRyaXgtPnh5LCBtYXRyaXgtPnl5LCBtYXRyaXgtPnp5LCBtYXRyaXgtPnd5LAorICAg
ICAgICBtYXRyaXgtPnh6LCBtYXRyaXgtPnl6LCBtYXRyaXgtPnp6LCBtYXRyaXgtPnd6LAorICAg
ICAgICBtYXRyaXgtPnh3LCBtYXRyaXgtPnl3LCBtYXRyaXgtPnp3LCBtYXRyaXgtPnd3KTsKK30K
KwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdHJhbnNm
b3Jtcy9UcmFuc2Zvcm1hdGlvbk1hdHJpeC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvdHJhbnNmb3Jtcy9UcmFuc2Zvcm1hdGlvbk1hdHJpeC5oCmluZGV4IGRhOTEwMzU0NTdh
OWYwMTVlY2RlYjllYzQzNzQ2NmM5NTU3ODlkNjQuLmIxZTU2NjU1Y2RmYTM3ZmZjMjY1ZDkxZjcx
MmQxM2M3M2U2ZDIxNTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL3RyYW5zZm9ybXMvVHJhbnNmb3JtYXRpb25NYXRyaXguaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL1RyYW5zZm9ybWF0aW9uTWF0cml4LmgKQEAg
LTM0MSw2ICszNDEsNyBAQCBwdWJsaWM6CiAgICAgb3BlcmF0b3IgQ0FUcmFuc2Zvcm0zRCgpIGNv
bnN0OwogI2VuZGlmCiAjaWYgVVNFKENMVVRURVIpCisgICAgVHJhbnNmb3JtYXRpb25NYXRyaXgo
Y29uc3QgQ29nbE1hdHJpeCopOwogICAgIG9wZXJhdG9yIENvZ2xNYXRyaXgoKSBjb25zdDsKICNl
bmRpZgogI2lmIFVTRShDRykK
</data>
<flag name="commit-queue"
          id="208493"
          type_id="3"
          status="-"
          setter="gustavo"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>189114</attachid>
            <date>2013-02-19 10:54:41 -0800</date>
            <delta_ts>2013-02-19 12:11:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109848-20130220035102.patch</filename>
            <type>text/plain</type>
            <size>12825</size>
            <attacher name="ChangSeok Oh">kevin.cs.oh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQzMzU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjQ4NWY0MjVmYmMzZDMx
ZDlhMmEwMDZhMjU2Nzk5YTZhMWQ4OTllMy4uM2ExYzhmOTUxZWQ3YmFiNzhjZThjOTQ5ZjdhZDZm
YzI5ODZiZjVjZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM2IEBACisyMDEzLTAyLTE5ICBDaGFu
Z1Nlb2sgT2ggIDxjaGFuZ3Nlb2sub2hAY29sbGFib3JhLmNvbT4KKworICAgICAgICBbR1RLXVtB
Q10gSW1wbGVtZW50IG1hdHJpeCB0cmFuc2Zvcm0gYW5pbWF0aW9uIHdpdGggY2x1dHRlciBhYyBi
YWNrZW5kCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MDk4NDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBD
bHV0dGVyIDEuMTIgZG9lc24ndCBzdXBwb3J0IGFkZGl0aXZlIHRyYW5zZm9ybSBhbmltYXRpb25z
IHlldCwgc28gdGhlIGNvbWJpbmF0aW9uCisgICAgICAgIG9mIHR3byBvciBtb3JlIHRyYW5zZm9y
bWF0aW9ucyhzdWNoIGFzIHJvdGF0aW9uIGFmdGVyIHRyYW5zbGF0aW9uKSBydW5zIHVuZXhwZWN0
ZWRseS4KKyAgICAgICAgU28gd2UgdXNlIGEgbWF0cml4IHRyYW5zZm9ybWF0aW9uIGluc3RlYWQg
Zm9yIHRoZSBjYXNlLgorCisgICAgICAgIENvdmVyZWQgYnkgZXhpc3RpbmcgYW5pbWF0aW9uIHRl
c3RzLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2x1dHRlci9HcmFwaGljc0xheWVy
Q2x1dHRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpnZXRWYWx1ZUZ1bmN0aW9uTmFtZUZvclRy
YW5zZm9ybU9wZXJhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0xheWVyQ2x1dHRl
cjo6Y3JlYXRlVHJhbnNmb3JtQW5pbWF0aW9uc0Zyb21LZXlmcmFtZXMpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2NsdXR0ZXIvUGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OnRvQ2x1dHRlckFjdG9yUHJvcGVydHlTdHJpbmcpOiBBZGQgYWN0b3Ig
cHJvcGVydHkgInRyYW5zZm9ybSIKKyAgICAgICAgKFdlYkNvcmU6OmNsdXR0ZXJNYXRyaXhQcm9n
cmVzcyk6IEhhbmRsZSBpbnRlcnBvbGF0aW9uIGJldHdlZW4gdHdvIG1hdHJpY2VzIGluc3RlYWQg
b2YgZGVmYXVsdCBjbHV0dGVyX21hdHJpeF9wcm9ncmVzcy4KKyAgICAgICAgKFdlYkNvcmUpOgor
ICAgICAgICAoV2ViQ29yZTo6UGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uOjpzdXBwb3J0c0FkZGl0
aXZlVmFsdWVGdW5jdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9ybUNsdXR0ZXJBbmlt
YXRpb246OnNldEZyb21WYWx1ZSk6IGZvciBUcmFuc2Zvcm1hdGlvbk1hdHJpeC4KKyAgICAgICAg
KFdlYkNvcmU6OlBsYXRmb3JtQ2x1dHRlckFuaW1hdGlvbjo6c2V0VG9WYWx1ZSk6IGRpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6UGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uOjphZGRDbHV0dGVyVHJh
bnNpdGlvbkZvclByb3BlcnR5KToKKyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtQ2x1dHRlckFu
aW1hdGlvbjo6YWRkVHJhbnNmb3JtVHJhbnNpdGlvbik6CisgICAgICAgICogcGxhdGZvcm0vZ3Jh
cGhpY3MvY2x1dHRlci9QbGF0Zm9ybUNsdXR0ZXJBbmltYXRpb24uaDoKKyAgICAgICAgKFBsYXRm
b3JtQ2x1dHRlckFuaW1hdGlvbik6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2x1dHRl
ci9UcmFuc2Zvcm1hdGlvbk1hdHJpeENsdXR0ZXIuY3BwOiBBZGQgY29weSBjb25zdHJ1Y3RvciBm
b3IgQ29nbE1hdHJpeC4KKyAgICAgICAgKFdlYkNvcmU6OlRyYW5zZm9ybWF0aW9uTWF0cml4OjpU
cmFuc2Zvcm1hdGlvbk1hdHJpeCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy90cmFuc2Zvcm1zL1RyYW5zZm9ybWF0aW9uTWF0cml4Lmg6CisgICAgICAg
IChUcmFuc2Zvcm1hdGlvbk1hdHJpeCk6CisKIDIwMTMtMDItMTkgIFlvdWVubiBGYWJsZXQgIDx5
b3Vlbm5mQGdtYWlsLmNvbT4KIAogICAgICAgICBbRUZMXVtEUlRdIGh0dHAvdGVzdHMvbG9hZGlu
Zy8zMDctYWZ0ZXItMzAzLWFmdGVyLXBvc3QuaHRtbCB0aW1lcyBvdXQKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NsdXR0ZXIvR3JhcGhpY3NMYXllckNsdXR0
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2x1dHRlci9HcmFwaGlj
c0xheWVyQ2x1dHRlci5jcHAKaW5kZXggMGI2Njc5ZmEyZWZlODNjY2I1ZGRkM2E0NmU3N2MxYmM5
NThkMjQ4Zi4uMzI4MjE0ZDUzNDFlZDczZTcxYWY0M2MyMWIzZTZkNGUxY2EzMDlhNiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2x1dHRlci9HcmFwaGljc0xh
eWVyQ2x1dHRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2x1
dHRlci9HcmFwaGljc0xheWVyQ2x1dHRlci5jcHAKQEAgLTE5MCw2ICsxOTAsOCBAQCBzdGF0aWMg
UGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uOjpWYWx1ZUZ1bmN0aW9uVHlwZSBnZXRWYWx1ZUZ1bmN0
aW9uTmFtZUZvclRyYW5zZgogICAgIGNhc2UgVHJhbnNmb3JtT3BlcmF0aW9uOjpUUkFOU0xBVEU6
CiAgICAgY2FzZSBUcmFuc2Zvcm1PcGVyYXRpb246OlRSQU5TTEFURV8zRDoKICAgICAgICAgcmV0
dXJuIFBsYXRmb3JtQ2x1dHRlckFuaW1hdGlvbjo6VHJhbnNsYXRlOworICAgIGNhc2UgVHJhbnNm
b3JtT3BlcmF0aW9uOjpNQVRSSVhfM0Q6CisgICAgICAgIHJldHVybiBQbGF0Zm9ybUNsdXR0ZXJB
bmltYXRpb246Ok1hdHJpeDsKICAgICBkZWZhdWx0OgogICAgICAgICByZXR1cm4gUGxhdGZvcm1D
bHV0dGVyQW5pbWF0aW9uOjpOb1ZhbHVlRnVuY3Rpb247CiAgICAgfQpAQCAtOTI1LDcgKzkyNyw3
IEBAIGJvb2wgR3JhcGhpY3NMYXllckNsdXR0ZXI6OmNyZWF0ZVRyYW5zZm9ybUFuaW1hdGlvbnNG
cm9tS2V5ZnJhbWVzKGNvbnN0IEtleWZyYW1lCiAgICAgLy8gSWYgZnVuY3Rpb24gbGlzdHMgZG9u
J3QgbWF0Y2ggd2UgZG8gYSBtYXRyaXggYW5pbWF0aW9uLCBvdGhlcndpc2Ugd2UgZG8gYSBjb21w
b25lbnQgaGFyZHdhcmUgYW5pbWF0aW9uLgogICAgIC8vIEFsc28sIHdlIGNhbid0IGRvIGNvbXBv
bmVudCBhbmltYXRpb24gdW5sZXNzIHdlIGhhdmUgdmFsdWVGdW5jdGlvbiwgc28gd2UgbmVlZCB0
byBkbyBtYXRyaXggYW5pbWF0aW9uCiAgICAgLy8gaWYgdGhhdCdzIG5vdCB0cnVlIGFzIHdlbGwu
Ci0gICAgYm9vbCBpc01hdHJpeEFuaW1hdGlvbiA9IGxpc3RJbmRleCA8IDAgfHwgIVBsYXRmb3Jt
Q2x1dHRlckFuaW1hdGlvbjo6c3VwcG9ydHNWYWx1ZUZ1bmN0aW9uKCk7CisgICAgYm9vbCBpc01h
dHJpeEFuaW1hdGlvbiA9IGxpc3RJbmRleCA8IDAgfHwgIVBsYXRmb3JtQ2x1dHRlckFuaW1hdGlv
bjo6c3VwcG9ydHNWYWx1ZUZ1bmN0aW9uKCkgfHwgKG9wZXJhdGlvbnMtPnNpemUoKSA+PSAyICYm
ICFQbGF0Zm9ybUNsdXR0ZXJBbmltYXRpb246OnN1cHBvcnRzQWRkaXRpdmVWYWx1ZUZ1bmN0aW9u
KCkpOwogICAgIGludCBudW1BbmltYXRpb25zID0gaXNNYXRyaXhBbmltYXRpb24gPyAxIDogb3Bl
cmF0aW9ucy0+c2l6ZSgpOwogCiAgICAgZm9yIChpbnQgYW5pbWF0aW9uSW5kZXggPSAwOyBhbmlt
YXRpb25JbmRleCA8IG51bUFuaW1hdGlvbnM7ICsrYW5pbWF0aW9uSW5kZXgpIHsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NsdXR0ZXIvUGxhdGZvcm1DbHV0
dGVyQW5pbWF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NsdXR0
ZXIvUGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uLmNwcAppbmRleCBiMzc5MmI4OWIwYTgwMTkxMTA5
ZjlhZWQ2NzUyMWIxOTAzZDk4NGQ5Li41NzUxYTMwZDgxYzRlZDJmYjU3YmU5MjZkNGVkOGU2Nzkw
ZDBiOTk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jbHV0
dGVyL1BsYXRmb3JtQ2x1dHRlckFuaW1hdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2x1dHRlci9QbGF0Zm9ybUNsdXR0ZXJBbmltYXRpb24uY3BwCkBAIC01
Niw3ICs1Niw3IEBAIHN0YXRpYyBTdHJpbmcgdG9DbHV0dGVyQWN0b3JQcm9wZXJ0eVN0cmluZyhj
b25zdCBQbGF0Zm9ybUNsdXR0ZXJBbmltYXRpb246OlZhbHVlCiB7CiAgICAgLy8gQ2x1dHRlckFj
dG9yIGRvZXNuJ3QgaGF2ZSAnc2NhbGUnIGFuZCAndHJhbnNsYXRlJyBwcm9wZXJ0aWVzLiBTbyB3
ZSBzaG91bGQgc3VwcG9ydAogICAgIC8vICdzY2FsZScgYW5kICd0cmFuc2xhdGUnIFZhbHVlRnVu
Y3Rpb25UeXBlIGJ5IGNvbWJpbmF0aW9uIG9mIGV4aXN0aW5nIHByb3BlcnR5IGFuaW1hdGlvbnMu
IAotICAgIGNvbnN0IGNoYXIqIGNsdXR0ZXJBY3RvclByb3BlcnR5W10gPSB7ICJOb1Byb3BlcnR5
IiwgInJvdGF0aW9uLWFuZ2xlLXgiLCAicm90YXRpb24tYW5nbGUteSIsICJyb3RhdGlvbi1hbmds
ZS16IiwgInNjYWxlLXgiLCAic2NhbGUteSIsICJzY2FsZS16IiwgInNjYWxlIiwgInRyYW5zbGF0
aW9uLXgiLCAidHJhbnNsYXRpb24teSIsICJ0cmFuc2xhdGlvbi16IiwgInRyYW5zbGF0ZSIgfTsg
CisgICAgY29uc3QgY2hhciogY2x1dHRlckFjdG9yUHJvcGVydHlbXSA9IHsgIk5vUHJvcGVydHki
LCAicm90YXRpb24tYW5nbGUteCIsICJyb3RhdGlvbi1hbmdsZS15IiwgInJvdGF0aW9uLWFuZ2xl
LXoiLCAic2NhbGUteCIsICJzY2FsZS15IiwgInNjYWxlLXoiLCAic2NhbGUiLCAidHJhbnNsYXRp
b24teCIsICJ0cmFuc2xhdGlvbi15IiwgInRyYW5zbGF0aW9uLXoiLCAidHJhbnNsYXRlIiwgInRy
YW5zZm9ybSIgfTsgCiAgICAgcmV0dXJuIGNsdXR0ZXJBY3RvclByb3BlcnR5W3ZhbHVlRnVuY3Rp
b25UeXBlXTsKIH0KIApAQCAtODUsNiArODUsMjMgQEAgc3RhdGljIENsdXR0ZXJBbmltYXRpb25N
b2RlIHRvQ2x1dHRlckFuaW1hdGlvbk1vZGUoY29uc3QgVGltaW5nRnVuY3Rpb24qIHRpbWluZ0YK
ICAgICByZXR1cm4gQ0xVVFRFUl9FQVNFOwogfQogCitzdGF0aWMgZ2Jvb2xlYW4gY2x1dHRlck1h
dHJpeFByb2dyZXNzKGNvbnN0IEdWYWx1ZSogZnJvbVZhbHVlLCBjb25zdCBHVmFsdWUqIHRvVmFs
dWUsIGdkb3VibGUgcHJvZ3Jlc3MsIEdWYWx1ZSogcmV0dXJuVmFsdWUpCit7CisgICAgY29uc3Qg
Q29nbE1hdHJpeCogZnJvbUNvZ2xNYXRyaXggPSBzdGF0aWNfY2FzdDxDb2dsTWF0cml4Kj4oZ192
YWx1ZV9nZXRfYm94ZWQoZnJvbVZhbHVlKSk7CisgICAgY29uc3QgQ29nbE1hdHJpeCogdG9Db2ds
TWF0cml4ID0gc3RhdGljX2Nhc3Q8Q29nbE1hdHJpeCo+KGdfdmFsdWVfZ2V0X2JveGVkKHRvVmFs
dWUpKTsKKworICAgIEFTU0VSVChmcm9tQ29nbE1hdHJpeCAmJiB0b0NvZ2xNYXRyaXgpOworCisg
ICAgVHJhbnNmb3JtYXRpb25NYXRyaXggZnJvbU1hdHJpeChmcm9tQ29nbE1hdHJpeCk7CisgICAg
VHJhbnNmb3JtYXRpb25NYXRyaXggdG9NYXRyaXgodG9Db2dsTWF0cml4KTsKKyAgICB0b01hdHJp
eC5ibGVuZChmcm9tTWF0cml4LCBwcm9ncmVzcyk7CisKKyAgICBDb2dsTWF0cml4IHJlc3VsdENv
Z2xNYXRyaXggPSB0b01hdHJpeDsKKyAgICBnX3ZhbHVlX3NldF9ib3hlZChyZXR1cm5WYWx1ZSwg
JnJlc3VsdENvZ2xNYXRyaXgpOworCisgICAgcmV0dXJuIHRydWU7Cit9CisKIFBsYXRmb3JtQ2x1
dHRlckFuaW1hdGlvbjo6QW5pbWF0ZWRQcm9wZXJ0eVR5cGUgUGxhdGZvcm1DbHV0dGVyQW5pbWF0
aW9uOjpzdHJpbmdUb0FuaW1hdGVkUHJvcGVydHlUeXBlKGNvbnN0IFN0cmluZyYga2V5UGF0aCkg
Y29uc3QKIHsKICAgICBpZiAoa2V5UGF0aCA9PSAidHJhbnNmb3JtIikKQEAgLTEzNSw2ICsxNTIs
MTMgQEAgYm9vbCBQbGF0Zm9ybUNsdXR0ZXJBbmltYXRpb246OnN1cHBvcnRzVmFsdWVGdW5jdGlv
bigpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKK2Jvb2wgUGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9u
OjpzdXBwb3J0c0FkZGl0aXZlVmFsdWVGdW5jdGlvbigpCit7CisgICAgLy8gRklYTUU6IENsdXR0
ZXIgMS4xMiBkb2Vzbid0IHN1cHBvcnQgYWRkaXRpdmUgdmFsdWVGdW5jdGlvbiB0eXBlIGFuaW1h
dGlvbnMuCisgICAgLy8gU28sIHdlIHVzZSBtYXRyaXggYW5pbWF0aW9uIGluc3RlYWQgdW50aWwg
Y2x1dHRlciBzdXBwb3J0cyBpdC4KKyAgICByZXR1cm4gZmFsc2U7Cit9CisKIGRvdWJsZSBQbGF0
Zm9ybUNsdXR0ZXJBbmltYXRpb246OmJlZ2luVGltZSgpIGNvbnN0CiB7CiAgICAgbm90SW1wbGVt
ZW50ZWQoKTsKQEAgLTI3Nyw3ICszMDEsMTAgQEAgdm9pZCBQbGF0Zm9ybUNsdXR0ZXJBbmltYXRp
b246OnNldEZyb21WYWx1ZShmbG9hdCB2YWx1ZSkKIAogdm9pZCBQbGF0Zm9ybUNsdXR0ZXJBbmlt
YXRpb246OnNldEZyb21WYWx1ZShjb25zdCBXZWJDb3JlOjpUcmFuc2Zvcm1hdGlvbk1hdHJpeCYg
dmFsdWUpCiB7Ci0gICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICBpZiAoYW5pbWF0aW9uVHlwZSgp
ICE9IEJhc2ljIHx8IG1fZnJvbVZhbHVlTWF0cml4ID09IHZhbHVlKQorICAgICAgICByZXR1cm47
CisKKyAgICBtX2Zyb21WYWx1ZU1hdHJpeCA9IHZhbHVlOwogfQogCiB2b2lkIFBsYXRmb3JtQ2x1
dHRlckFuaW1hdGlvbjo6c2V0RnJvbVZhbHVlKGNvbnN0IEZsb2F0UG9pbnQzRCYgdmFsdWUpCkBA
IC0zMDgsNyArMzM1LDEwIEBAIHZvaWQgUGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uOjpzZXRUb1Zh
bHVlKGZsb2F0IHZhbHVlKQogCiB2b2lkIFBsYXRmb3JtQ2x1dHRlckFuaW1hdGlvbjo6c2V0VG9W
YWx1ZShjb25zdCBXZWJDb3JlOjpUcmFuc2Zvcm1hdGlvbk1hdHJpeCYgdmFsdWUpCiB7Ci0gICAg
bm90SW1wbGVtZW50ZWQoKTsKKyAgICBpZiAoYW5pbWF0aW9uVHlwZSgpICE9IEJhc2ljIHx8IG1f
dG9WYWx1ZU1hdHJpeCA9PSB2YWx1ZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV90b1ZhbHVl
TWF0cml4ID0gdmFsdWU7CiB9CiAKIHZvaWQgUGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uOjpzZXRU
b1ZhbHVlKGNvbnN0IEZsb2F0UG9pbnQzRCYgdmFsdWUpCkBAIC00MTQsNiArNDQ0LDI3IEBAIHZv
aWQgUGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uOjphZGRDbHV0dGVyVHJhbnNpdGlvbkZvclByb3Bl
cnR5KGNvbnN0IFN0cmluZyYgcHJvCiAgICAgY2x1dHRlcl90cmFuc2l0aW9uX2dyb3VwX2FkZF90
cmFuc2l0aW9uKENMVVRURVJfVFJBTlNJVElPTl9HUk9VUChtX2FuaW1hdGlvbi5nZXQoKSksIHRy
YW5zaXRpb24uZ2V0KCkpOwogfQogCit2b2lkIFBsYXRmb3JtQ2x1dHRlckFuaW1hdGlvbjo6YWRk
Q2x1dHRlclRyYW5zaXRpb25Gb3JQcm9wZXJ0eShjb25zdCBTdHJpbmcmIHByb3BlcnR5LCBjb25z
dCBXZWJDb3JlOjpUcmFuc2Zvcm1hdGlvbk1hdHJpeCYgZnJvbVZhbHVlLCBjb25zdCBXZWJDb3Jl
OjpUcmFuc2Zvcm1hdGlvbk1hdHJpeCYgdG9WYWx1ZSkKK3sKKyAgICBBU1NFUlQocHJvcGVydHkg
IT0gIk5vUHJvcGVydHkiKTsKKworICAgIGNvbnN0IENvZ2xNYXRyaXggZnJvbUNvZ2xNYXRyaXgg
PSBmcm9tVmFsdWU7CisgICAgY29uc3QgQ29nbE1hdHJpeCB0b0NvZ2xNYXRyaXggPSB0b1ZhbHVl
OworCisgICAgR1JlZlB0cjxDbHV0dGVyVHJhbnNpdGlvbj4gdHJhbnNpdGlvbiA9IGFkb3B0R1Jl
ZihjbHV0dGVyX3Byb3BlcnR5X3RyYW5zaXRpb25fbmV3KHByb3BlcnR5LnV0ZjgoKS5kYXRhKCkp
KTsKKyAgICBjbHV0dGVyX3RyYW5zaXRpb25fc2V0X2Zyb20odHJhbnNpdGlvbi5nZXQoKSwgQ0xV
VFRFUl9UWVBFX01BVFJJWCwgJmZyb21Db2dsTWF0cml4KTsKKyAgICBjbHV0dGVyX3RyYW5zaXRp
b25fc2V0X3RvKHRyYW5zaXRpb24uZ2V0KCksIENMVVRURVJfVFlQRV9NQVRSSVgsICZ0b0NvZ2xN
YXRyaXgpOworCisgICAgY2x1dHRlcl90aW1lbGluZV9zZXRfcHJvZ3Jlc3NfbW9kZSh0aW1lbGlu
ZSgpLCB0b0NsdXR0ZXJBbmltYXRpb25Nb2RlKG1fdGltaW5nRnVuY3Rpb24pKTsKKworICAgIGNs
dXR0ZXJfdHJhbnNpdGlvbl9ncm91cF9hZGRfdHJhbnNpdGlvbihDTFVUVEVSX1RSQU5TSVRJT05f
R1JPVVAobV9hbmltYXRpb24uZ2V0KCkpLCB0cmFuc2l0aW9uLmdldCgpKTsKKworICAgIC8vIEZJ
WE1FOiBUaGUgbWF0cml4IGludGVycG9sYXRpb24gYXBpLCBjbHV0dGVyX21hdHJpeF9wcm9ncmVz
cyBvZiBDbHV0dGVyIDEuMTIgd29ya3MgdW5leHBlY3RlZGx5LgorICAgIC8vIFNvIHdlIG92ZXJ3
cml0ZSBpdCBhbmQgaGFuZGxlIHRoZSBpbnRlcnBvbGF0aW9uIG9mIHR3byBtYXRyaWNlcyB3aXRo
IFRyYW5zZm9ybWF0aW9uTWF0cml4LgorICAgIC8vIFNlZSBodHRwczovL2J1Z3ppbGxhLmdub21l
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njk0MTk3CisgICAgY2x1dHRlcl9pbnRlcnZhbF9yZWdpc3Rl
cl9wcm9ncmVzc19mdW5jKENMVVRURVJfVFlQRV9NQVRSSVgsIGNsdXR0ZXJNYXRyaXhQcm9ncmVz
cyk7Cit9CisKIHZvaWQgUGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uOjphZGRDbHV0dGVyVHJhbnNp
dGlvbkZvclByb3BlcnR5KGNvbnN0IFN0cmluZyYgcHJvcGVydHksIGNvbnN0IEZsb2F0UG9pbnQz
RCYgZnJvbVZhbHVlLCBjb25zdCBGbG9hdFBvaW50M0QmIHRvVmFsdWUpCiB7CiAgICAgQVNTRVJU
KHByb3BlcnR5ICE9ICJOb1Byb3BlcnR5Iik7CkBAIC01NDUsNiArNTk2LDkgQEAgdm9pZCBQbGF0
Zm9ybUNsdXR0ZXJBbmltYXRpb246OmFkZFRyYW5zZm9ybVRyYW5zaXRpb24oKQogICAgICAgICBl
bHNlCiAgICAgICAgICAgICBhZGRDbHV0dGVyVHJhbnNpdGlvbkZvclByb3BlcnR5KHRvQ2x1dHRl
ckFjdG9yUHJvcGVydHlTdHJpbmcobV92YWx1ZUZ1bmN0aW9uVHlwZSksIG1fZnJvbVZhbHVlM0Qs
IG1fdG9WYWx1ZTNEKTsKICAgICAgICAgYnJlYWs7CisgICAgY2FzZSBNYXRyaXg6CisgICAgICAg
IGFkZENsdXR0ZXJUcmFuc2l0aW9uRm9yUHJvcGVydHkodG9DbHV0dGVyQWN0b3JQcm9wZXJ0eVN0
cmluZyhtX3ZhbHVlRnVuY3Rpb25UeXBlKSwgbV9mcm9tVmFsdWVNYXRyaXgsIG1fdG9WYWx1ZU1h
dHJpeCk7CisgICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6CiAgICAgICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NsdXR0ZXIvUGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jbHV0dGVyL1BsYXRmb3JtQ2x1dHRlckFuaW1hdGlvbi5oCmlu
ZGV4IGQyZjdhZDY0YzM2ZjBkZjYxN2YwMmJhOTk3ZmI1MjEyOTQwMGIwZmEuLmU4ZGJkMzEwMWEx
YTBmMjI2MWEwY2ZjOTI4ZDMzYjZhYmYyOGIzZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NsdXR0ZXIvUGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2x1dHRlci9QbGF0Zm9ybUNsdXR0
ZXJBbmltYXRpb24uaApAQCAtNTUsNyArNTUsNyBAQCBwdWJsaWM6CiAgICAgZW51bSBBbmltYXRp
b25UeXBlIHsgQmFzaWMsIEtleWZyYW1lIH07CiAgICAgZW51bSBBbmltYXRlZFByb3BlcnR5VHlw
ZSB7IE5vQW5pbWF0ZWRQcm9wZXJ0eVR5cGUsIFRyYW5zZm9ybSwgT3BhY2l0eSwgQmFja2dyb3Vu
ZENvbG9yIH07CiAgICAgZW51bSBGaWxsTW9kZVR5cGUgeyBOb0ZpbGxNb2RlLCBGb3J3YXJkcywg
QmFja3dhcmRzLCBCb3RoIH07Ci0gICAgZW51bSBWYWx1ZUZ1bmN0aW9uVHlwZSB7IE5vVmFsdWVG
dW5jdGlvbiwgUm90YXRlWCwgUm90YXRlWSwgUm90YXRlWiwgU2NhbGVYLCBTY2FsZVksIFNjYWxl
WiwgU2NhbGUsIFRyYW5zbGF0ZVgsIFRyYW5zbGF0ZVksIFRyYW5zbGF0ZVosIFRyYW5zbGF0ZSB9
OworICAgIGVudW0gVmFsdWVGdW5jdGlvblR5cGUgeyBOb1ZhbHVlRnVuY3Rpb24sIFJvdGF0ZVgs
IFJvdGF0ZVksIFJvdGF0ZVosIFNjYWxlWCwgU2NhbGVZLCBTY2FsZVosIFNjYWxlLCBUcmFuc2xh
dGVYLCBUcmFuc2xhdGVZLCBUcmFuc2xhdGVaLCBUcmFuc2xhdGUsIE1hdHJpeCB9OwogCiAgICAg
c3RhdGljIFBhc3NSZWZQdHI8UGxhdGZvcm1DbHV0dGVyQW5pbWF0aW9uPiBjcmVhdGUoQW5pbWF0
aW9uVHlwZSwgY29uc3QgU3RyaW5nJiBrZXlQYXRoKTsKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxQ
bGF0Zm9ybUNsdXR0ZXJBbmltYXRpb24+IGNyZWF0ZShQbGF0Zm9ybUNsdXR0ZXJBbmltYXRpb24q
KTsKQEAgLTYzLDYgKzYzLDcgQEAgcHVibGljOgogICAgIH5QbGF0Zm9ybUNsdXR0ZXJBbmltYXRp
b24oKTsKIAogICAgIHN0YXRpYyBib29sIHN1cHBvcnRzVmFsdWVGdW5jdGlvbigpOworICAgIHN0
YXRpYyBib29sIHN1cHBvcnRzQWRkaXRpdmVWYWx1ZUZ1bmN0aW9uKCk7CiAKICAgICBBbmltYXRp
b25UeXBlIGFuaW1hdGlvblR5cGUoKSBjb25zdCB7IHJldHVybiBtX3R5cGU7IH0KIApAQCAtMTM5
LDYgKzE0MCw3IEBAIHByaXZhdGU6CiAgICAgQW5pbWF0ZWRQcm9wZXJ0eVR5cGUgc3RyaW5nVG9B
bmltYXRlZFByb3BlcnR5VHlwZShjb25zdCBTdHJpbmcmIGtleVBhdGgpIGNvbnN0OwogCiAgICAg
dm9pZCBhZGRDbHV0dGVyVHJhbnNpdGlvbkZvclByb3BlcnR5KGNvbnN0IFN0cmluZyYgcHJvcGVy
dHksIGNvbnN0IGZsb2F0IGZyb21WYWx1ZSwgY29uc3QgZmxvYXQgdG9WYWx1ZSk7CisgICAgdm9p
ZCBhZGRDbHV0dGVyVHJhbnNpdGlvbkZvclByb3BlcnR5KGNvbnN0IFN0cmluZyYgcHJvcGVydHks
IGNvbnN0IFdlYkNvcmU6OlRyYW5zZm9ybWF0aW9uTWF0cml4JiwgY29uc3QgV2ViQ29yZTo6VHJh
bnNmb3JtYXRpb25NYXRyaXgmKTsKICAgICB2b2lkIGFkZENsdXR0ZXJUcmFuc2l0aW9uRm9yUHJv
cGVydHkoY29uc3QgU3RyaW5nJiBwcm9wZXJ0eSwgY29uc3QgRmxvYXRQb2ludDNEJiBmcm9tVmFs
dWUsIGNvbnN0IEZsb2F0UG9pbnQzRCYgdG9WYWx1ZSk7CiAKICAgICB2b2lkIGFkZENsdXR0ZXJL
ZXlmcmFtZVRyYW5zaXRpb25Gb3JQcm9wZXJ0eShjb25zdCBTdHJpbmcmIHByb3BlcnR5LCBjb25z
dCBWZWN0b3I8ZmxvYXQ+JiB2YWx1ZXMpOwpAQCAtMTYxLDYgKzE2Myw5IEBAIHByaXZhdGU6CiAg
ICAgRmxvYXRQb2ludDNEIG1fZnJvbVZhbHVlM0Q7CiAgICAgRmxvYXRQb2ludDNEIG1fdG9WYWx1
ZTNEOwogCisgICAgV2ViQ29yZTo6VHJhbnNmb3JtYXRpb25NYXRyaXggbV9mcm9tVmFsdWVNYXRy
aXg7CisgICAgV2ViQ29yZTo6VHJhbnNmb3JtYXRpb25NYXRyaXggbV90b1ZhbHVlTWF0cml4Owor
CiAgICAgZmxvYXQgbV9yZXBlYXRDb3VudDsKIAogICAgIGNvbnN0IFRpbWluZ0Z1bmN0aW9uKiBt
X3RpbWluZ0Z1bmN0aW9uOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2x1dHRlci9UcmFuc2Zvcm1hdGlvbk1hdHJpeENsdXR0ZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2x1dHRlci9UcmFuc2Zvcm1hdGlvbk1hdHJpeENsdXR0
ZXIuY3BwCmluZGV4IGQ1YzNmMmFlNDRjMTIyYmQwOGU3N2ZiMjBkNTAzNDMwNjNmZTQxYWIuLjU2
NTU4NzM5YjJiYzZhN2FlZTIwYTE4ZDNhYjcxOTE1ZTIxMmY5ODggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NsdXR0ZXIvVHJhbnNmb3JtYXRpb25NYXRyaXhD
bHV0dGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jbHV0dGVy
L1RyYW5zZm9ybWF0aW9uTWF0cml4Q2x1dHRlci5jcHAKQEAgLTUxLDQgKzUxLDEyIEBAIFRyYW5z
Zm9ybWF0aW9uTWF0cml4OjpvcGVyYXRvciBDb2dsTWF0cml4KCkgY29uc3QKICAgICByZXR1cm4g
bWF0cml4OwogfQogCitUcmFuc2Zvcm1hdGlvbk1hdHJpeDo6VHJhbnNmb3JtYXRpb25NYXRyaXgo
Y29uc3QgQ29nbE1hdHJpeCogbWF0cml4KQoreworICAgIHNldE1hdHJpeChtYXRyaXgtPnh4LCBt
YXRyaXgtPnl4LCBtYXRyaXgtPnp4LCBtYXRyaXgtPnd4LAorICAgICAgICBtYXRyaXgtPnh5LCBt
YXRyaXgtPnl5LCBtYXRyaXgtPnp5LCBtYXRyaXgtPnd5LAorICAgICAgICBtYXRyaXgtPnh6LCBt
YXRyaXgtPnl6LCBtYXRyaXgtPnp6LCBtYXRyaXgtPnd6LAorICAgICAgICBtYXRyaXgtPnh3LCBt
YXRyaXgtPnl3LCBtYXRyaXgtPnp3LCBtYXRyaXgtPnd3KTsKK30KKwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jtcy9UcmFuc2Zvcm1hdGlv
bk1hdHJpeC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jtcy9U
cmFuc2Zvcm1hdGlvbk1hdHJpeC5oCmluZGV4IGRhOTEwMzU0NTdhOWYwMTVlY2RlYjllYzQzNzQ2
NmM5NTU3ODlkNjQuLmIxZTU2NjU1Y2RmYTM3ZmZjMjY1ZDkxZjcxMmQxM2M3M2U2ZDIxNTcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMvVHJh
bnNmb3JtYXRpb25NYXRyaXguaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy90cmFuc2Zvcm1zL1RyYW5zZm9ybWF0aW9uTWF0cml4LmgKQEAgLTM0MSw2ICszNDEsNyBAQCBw
dWJsaWM6CiAgICAgb3BlcmF0b3IgQ0FUcmFuc2Zvcm0zRCgpIGNvbnN0OwogI2VuZGlmCiAjaWYg
VVNFKENMVVRURVIpCisgICAgVHJhbnNmb3JtYXRpb25NYXRyaXgoY29uc3QgQ29nbE1hdHJpeCop
OwogICAgIG9wZXJhdG9yIENvZ2xNYXRyaXgoKSBjb25zdDsKICNlbmRpZgogI2lmIFVTRShDRykK
</data>

          </attachment>
      

    </bug>

</bugzilla>