<?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>154911</bug_id>
          
          <creation_ts>2016-03-02 00:20:14 -0800</creation_ts>
          <short_desc>[css-grid] Simplify method to resolve auto-placed items</short_desc>
          <delta_ts>2016-03-03 02:23:31 -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>Layout and Rendering</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>153488</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Manuel Rego Casasnovas">rego</reporter>
          <assigned_to name="Manuel Rego Casasnovas">rego</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>jfernandez</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>rego</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>svillar</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1169776</commentid>
    <comment_count>0</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2016-03-02 00:20:14 -0800</bug_when>
    <thetext>Port this patch from Blink: https://codereview.chromium.org/1496863004/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1169777</commentid>
    <comment_count>1</comment_count>
      <attachid>272641</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2016-03-02 00:21:27 -0800</bug_when>
    <thetext>Created attachment 272641
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1169785</commentid>
    <comment_count>2</comment_count>
      <attachid>272644</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2016-03-02 01:03:44 -0800</bug_when>
    <thetext>Created attachment 272644
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1170148</commentid>
    <comment_count>3</comment_count>
      <attachid>272644</attachid>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2016-03-03 01:12:04 -0800</bug_when>
    <thetext>Comment on attachment 272644
Patch

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

&gt; Source/WebCore/rendering/style/GridResolvedPosition.cpp:242
&gt; +    return position.spanPosition();

We should change the name of this method at some point because it isn&apos;t clear that it&apos;s returning the span (spanPosition looks like a type of position).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1170165</commentid>
    <comment_count>4</comment_count>
      <attachid>272644</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-03-03 02:23:28 -0800</bug_when>
    <thetext>Comment on attachment 272644
Patch

Clearing flags on attachment: 272644

Committed r197501: &lt;http://trac.webkit.org/changeset/197501&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1170166</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-03-03 02:23:31 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>272641</attachid>
            <date>2016-03-02 00:21:27 -0800</date>
            <delta_ts>2016-03-02 01:03:38 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-154911-20160302092111.patch</filename>
            <type>text/plain</type>
            <size>12280</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk3NDAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjk3M2JmMWE1YjEwODc4
OGI3OTZmNjlmMWNhODM3NzY3YWJjM2E1Ni4uZGNjZTI5MDc4ZjZmZTVkZTc4OTdlOWFjNzFjMzg3
NDhiMDY1ODNhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDE2LTAzLTAyICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3MtZ3Jp
ZF0gU2ltcGxpZnkgbWV0aG9kIHRvIHJlc29sdmUgYXV0by1wbGFjZWQgaXRlbXMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NDkxMQorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlZmFjdG9yIHRoZSBtZXRo
b2QgdG8gcmVzb2x2ZSBhdXRvLXBsYWNlZCBpdGVtcworICAgICAgICBhcyB3ZSdyZSBvbmx5IGlu
dGVyZXN0ZWQgaW4ga25vd2luZyB0aGUgc3BhbiBzaXplLgorCisgICAgICAgIEFkYXB0IHRoZSBj
YWxscyB0byB1c2UgdGhlIHNwYW4gc2l6ZSBpbnN0ZWFkIG9mIGEgR3JpZFNwYW4uCisKKyAgICAg
ICAgTm8gbmV3IHRlc3RzLCBubyBjaGFuZ2Ugb2YgYmVoYXZpb3IuCisKKyAgICAgICAgKiByZW5k
ZXJpbmcvUmVuZGVyR3JpZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJHcmlkOjpwb3B1
bGF0ZUV4cGxpY2l0R3JpZEFuZE9yZGVySXRlcmF0b3IpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyR3JpZDo6Y3JlYXRlRW1wdHlHcmlkQXJlYUF0U3BlY2lmaWVkUG9zaXRpb25zT3V0c2lkZUdy
aWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyR3JpZDo6cGxhY2VTcGVjaWZpZWRNYWpvckF4
aXNJdGVtc09uR3JpZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJHcmlkOjpwbGFjZUF1dG9N
YWpvckF4aXNJdGVtT25HcmlkKToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvR3JpZFJlc29s
dmVkUG9zaXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6R3JpZFJlc29sdmVkUG9zaXRpb246
OnNwYW5TaXplRm9yQXV0b1BsYWNlZEl0ZW0pOgorICAgICAgICAoV2ViQ29yZTo6R3JpZFJlc29s
dmVkUG9zaXRpb246OnJlc29sdmVHcmlkUG9zaXRpb25zRnJvbUF1dG9QbGFjZW1lbnRQb3NpdGlv
bik6CisgICAgICAgIFJlbmFtZWQgdG8gc3BhblNpemVGb3JBdXRvUGxhY2VkSXRlbSgpLgorICAg
ICAgICAqIHJlbmRlcmluZy9zdHlsZS9HcmlkUmVzb2x2ZWRQb3NpdGlvbi5oOgorCiAyMDE2LTAz
LTAxICBNYW51ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgogCiAgICAgICAg
IFtjc3MtZ3JpZF0gR2V0IHJpZCBvZiBHcmlkUmVzb2x2ZWRQb3NpdGlvbgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckdyaWQuY3BwIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckdyaWQuY3BwCmluZGV4IDU2Mjk3N2ExMGVkNzQ2ODNkNDU1OTZhZTVj
Mzc2Njc2YjQ2YTNhNDIuLmY0Yjc2NTk4MThkM2JlOTNhYTE2MTQ1YWQ4ZDkyNGI1NmY5NTdkMzgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJHcmlkLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyR3JpZC5jcHAKQEAgLTEyMDcsOCArMTIw
Nyw4IEBAIHZvaWQgUmVuZGVyR3JpZDo6cG9wdWxhdGVFeHBsaWNpdEdyaWRBbmRPcmRlckl0ZXJh
dG9yKCkKICAgICAgICAgICAgIG1heGltdW1Sb3dJbmRleCA9IHN0ZDo6bWF4KG1heGltdW1Sb3dJ
bmRleCwgcm93UG9zaXRpb25zLnJlc29sdmVkRmluYWxQb3NpdGlvbigpKTsKICAgICAgICAgfSBl
bHNlIHsKICAgICAgICAgICAgIC8vIEdyb3cgdGhlIGdyaWQgZm9yIGl0ZW1zIHdpdGggYSBkZWZp
bml0ZSByb3cgc3BhbiwgZ2V0dGluZyB0aGUgbGFyZ2VzdCBzdWNoIHNwYW4uCi0gICAgICAgICAg
ICBHcmlkU3BhbiBwb3NpdGlvbnMgPSBHcmlkUmVzb2x2ZWRQb3NpdGlvbjo6cmVzb2x2ZUdyaWRQ
b3NpdGlvbnNGcm9tQXV0b1BsYWNlbWVudFBvc2l0aW9uKHN0eWxlKCksICpjaGlsZCwgRm9yUm93
cywgMCk7Ci0gICAgICAgICAgICBtYXhpbXVtUm93SW5kZXggPSBzdGQ6Om1heChtYXhpbXVtUm93
SW5kZXgsIHBvc2l0aW9ucy5yZXNvbHZlZEZpbmFsUG9zaXRpb24oKSk7CisgICAgICAgICAgICB1
bnNpZ25lZCBzcGFuU2l6ZSA9IEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpzcGFuU2l6ZUZvckF1dG9Q
bGFjZWRJdGVtKHN0eWxlKCksICpjaGlsZCwgRm9yUm93cyk7CisgICAgICAgICAgICBtYXhpbXVt
Um93SW5kZXggPSBzdGQ6Om1heChtYXhpbXVtUm93SW5kZXgsIHNwYW5TaXplKTsKICAgICAgICAg
fQogCiAgICAgICAgIEdyaWRTcGFuIGNvbHVtblBvc2l0aW9ucyA9IEdyaWRSZXNvbHZlZFBvc2l0
aW9uOjpyZXNvbHZlR3JpZFBvc2l0aW9uc0Zyb21TdHlsZShzdHlsZSgpLCAqY2hpbGQsIEZvckNv
bHVtbnMpOwpAQCAtMTIxNiw4ICsxMjE2LDggQEAgdm9pZCBSZW5kZXJHcmlkOjpwb3B1bGF0ZUV4
cGxpY2l0R3JpZEFuZE9yZGVySXRlcmF0b3IoKQogICAgICAgICAgICAgbWF4aW11bUNvbHVtbklu
ZGV4ID0gc3RkOjptYXgobWF4aW11bUNvbHVtbkluZGV4LCBjb2x1bW5Qb3NpdGlvbnMucmVzb2x2
ZWRGaW5hbFBvc2l0aW9uKCkpOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLy8gR3Jv
dyB0aGUgZ3JpZCBmb3IgaXRlbXMgd2l0aCBhIGRlZmluaXRlIGNvbHVtbiBzcGFuLCBnZXR0aW5n
IHRoZSBsYXJnZXN0IHN1Y2ggc3Bhbi4KLSAgICAgICAgICAgIEdyaWRTcGFuIHBvc2l0aW9ucyA9
IEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpyZXNvbHZlR3JpZFBvc2l0aW9uc0Zyb21BdXRvUGxhY2Vt
ZW50UG9zaXRpb24oc3R5bGUoKSwgKmNoaWxkLCBGb3JDb2x1bW5zLCAwKTsKLSAgICAgICAgICAg
IG1heGltdW1Db2x1bW5JbmRleCA9IHN0ZDo6bWF4KG1heGltdW1Db2x1bW5JbmRleCwgcG9zaXRp
b25zLnJlc29sdmVkRmluYWxQb3NpdGlvbigpKTsKKyAgICAgICAgICAgIHVuc2lnbmVkIHNwYW5T
aXplID0gR3JpZFJlc29sdmVkUG9zaXRpb246OnNwYW5TaXplRm9yQXV0b1BsYWNlZEl0ZW0oc3R5
bGUoKSwgKmNoaWxkLCBGb3JDb2x1bW5zKTsKKyAgICAgICAgICAgIG1heGltdW1Db2x1bW5JbmRl
eCA9IHN0ZDo6bWF4KG1heGltdW1Db2x1bW5JbmRleCwgc3BhblNpemUpOwogICAgICAgICB9CiAK
ICAgICAgICAgbV9ncmlkSXRlbUNvb3JkaW5hdGUuc2V0KGNoaWxkLCBHcmlkQ29vcmRpbmF0ZShy
b3dQb3NpdGlvbnMsIGNvbHVtblBvc2l0aW9ucykpOwpAQCAtMTIzMiw3ICsxMjMyLDggQEAgc3Rk
Ojp1bmlxdWVfcHRyPEdyaWRDb29yZGluYXRlPiBSZW5kZXJHcmlkOjpjcmVhdGVFbXB0eUdyaWRB
cmVhQXRTcGVjaWZpZWRQb3NpdGkKIHsKICAgICBHcmlkVHJhY2tTaXppbmdEaXJlY3Rpb24gY3Jv
c3NEaXJlY3Rpb24gPSBzcGVjaWZpZWREaXJlY3Rpb24gPT0gRm9yQ29sdW1ucyA/IEZvclJvd3Mg
OiBGb3JDb2x1bW5zOwogICAgIGNvbnN0IHVuc2lnbmVkIGVuZE9mQ3Jvc3NEaXJlY3Rpb24gPSBj
cm9zc0RpcmVjdGlvbiA9PSBGb3JDb2x1bW5zID8gZ3JpZENvbHVtbkNvdW50KCkgOiBncmlkUm93
Q291bnQoKTsKLSAgICBHcmlkU3BhbiBjcm9zc0RpcmVjdGlvblBvc2l0aW9ucyA9IEdyaWRSZXNv
bHZlZFBvc2l0aW9uOjpyZXNvbHZlR3JpZFBvc2l0aW9uc0Zyb21BdXRvUGxhY2VtZW50UG9zaXRp
b24oc3R5bGUoKSwgZ3JpZEl0ZW0sIGNyb3NzRGlyZWN0aW9uLCBlbmRPZkNyb3NzRGlyZWN0aW9u
KTsKKyAgICB1bnNpZ25lZCBjcm9zc0RpcmVjdGlvblNwYW5TaXplID0gR3JpZFJlc29sdmVkUG9z
aXRpb246OnNwYW5TaXplRm9yQXV0b1BsYWNlZEl0ZW0oc3R5bGUoKSwgZ3JpZEl0ZW0sIGNyb3Nz
RGlyZWN0aW9uKTsKKyAgICBHcmlkU3BhbiBjcm9zc0RpcmVjdGlvblBvc2l0aW9ucyA9IEdyaWRT
cGFuOjpkZWZpbml0ZUdyaWRTcGFuKGVuZE9mQ3Jvc3NEaXJlY3Rpb24sIGVuZE9mQ3Jvc3NEaXJl
Y3Rpb24gKyBjcm9zc0RpcmVjdGlvblNwYW5TaXplKTsKICAgICByZXR1cm4gc3RkOjptYWtlX3Vu
aXF1ZTxHcmlkQ29vcmRpbmF0ZT4oc3BlY2lmaWVkRGlyZWN0aW9uID09IEZvckNvbHVtbnMgPyBj
cm9zc0RpcmVjdGlvblBvc2l0aW9ucyA6IHNwZWNpZmllZFBvc2l0aW9ucywgc3BlY2lmaWVkRGly
ZWN0aW9uID09IEZvckNvbHVtbnMgPyBzcGVjaWZpZWRQb3NpdGlvbnMgOiBjcm9zc0RpcmVjdGlv
blBvc2l0aW9ucyk7CiB9CiAKQEAgLTEyNTAsMTEgKzEyNTEsMTEgQEAgdm9pZCBSZW5kZXJHcmlk
OjpwbGFjZVNwZWNpZmllZE1ham9yQXhpc0l0ZW1zT25HcmlkKGNvbnN0IFZlY3RvcjxSZW5kZXJC
b3gqPiYgYXUKICAgICAgICAgR3JpZFNwYW4gbWFqb3JBeGlzUG9zaXRpb25zID0gY2FjaGVkR3Jp
ZFNwYW4oKmF1dG9HcmlkSXRlbSwgYXV0b1BsYWNlbWVudE1ham9yQXhpc0RpcmVjdGlvbigpKTsK
ICAgICAgICAgQVNTRVJUKG1ham9yQXhpc1Bvc2l0aW9ucy5pc0RlZmluaXRlKCkpOwogICAgICAg
ICBBU1NFUlQoIWNhY2hlZEdyaWRTcGFuKCphdXRvR3JpZEl0ZW0sIGF1dG9QbGFjZW1lbnRNaW5v
ckF4aXNEaXJlY3Rpb24oKSkuaXNEZWZpbml0ZSgpKTsKLSAgICAgICAgR3JpZFNwYW4gbWlub3JB
eGlzUG9zaXRpb25zID0gR3JpZFJlc29sdmVkUG9zaXRpb246OnJlc29sdmVHcmlkUG9zaXRpb25z
RnJvbUF1dG9QbGFjZW1lbnRQb3NpdGlvbihzdHlsZSgpLCAqYXV0b0dyaWRJdGVtLCBhdXRvUGxh
Y2VtZW50TWlub3JBeGlzRGlyZWN0aW9uKCksIDApOworICAgICAgICB1bnNpZ25lZCBtaW5vckF4
aXNTcGFuU2l6ZSA9IEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpzcGFuU2l6ZUZvckF1dG9QbGFjZWRJ
dGVtKHN0eWxlKCksICphdXRvR3JpZEl0ZW0sIGF1dG9QbGFjZW1lbnRNaW5vckF4aXNEaXJlY3Rp
b24oKSk7CiAgICAgICAgIHVuc2lnbmVkIG1ham9yQXhpc0luaXRpYWxQb3NpdGlvbiA9IG1ham9y
QXhpc1Bvc2l0aW9ucy5yZXNvbHZlZEluaXRpYWxQb3NpdGlvbigpOwogCiAgICAgICAgIEdyaWRJ
dGVyYXRvciBpdGVyYXRvcihtX2dyaWQsIGF1dG9QbGFjZW1lbnRNYWpvckF4aXNEaXJlY3Rpb24o
KSwgbWFqb3JBeGlzUG9zaXRpb25zLnJlc29sdmVkSW5pdGlhbFBvc2l0aW9uKCksIGlzR3JpZEF1
dG9GbG93RGVuc2UgPyAwIDogbWlub3JBeGlzQ3Vyc29ycy5nZXQobWFqb3JBeGlzSW5pdGlhbFBv
c2l0aW9uKSk7Ci0gICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxHcmlkQ29vcmRpbmF0ZT4gZW1wdHlH
cmlkQXJlYSA9IGl0ZXJhdG9yLm5leHRFbXB0eUdyaWRBcmVhKG1ham9yQXhpc1Bvc2l0aW9ucy5p
bnRlZ2VyU3BhbigpLCBtaW5vckF4aXNQb3NpdGlvbnMuaW50ZWdlclNwYW4oKSk7CisgICAgICAg
IHN0ZDo6dW5pcXVlX3B0cjxHcmlkQ29vcmRpbmF0ZT4gZW1wdHlHcmlkQXJlYSA9IGl0ZXJhdG9y
Lm5leHRFbXB0eUdyaWRBcmVhKG1ham9yQXhpc1Bvc2l0aW9ucy5pbnRlZ2VyU3BhbigpLCBtaW5v
ckF4aXNTcGFuU2l6ZSk7CiAgICAgICAgIGlmICghZW1wdHlHcmlkQXJlYSkKICAgICAgICAgICAg
IGVtcHR5R3JpZEFyZWEgPSBjcmVhdGVFbXB0eUdyaWRBcmVhQXRTcGVjaWZpZWRQb3NpdGlvbnNP
dXRzaWRlR3JpZCgqYXV0b0dyaWRJdGVtLCBhdXRvUGxhY2VtZW50TWFqb3JBeGlzRGlyZWN0aW9u
KCksIG1ham9yQXhpc1Bvc2l0aW9ucyk7CiAKQEAgLTEyODQsNyArMTI4NSw3IEBAIHZvaWQgUmVu
ZGVyR3JpZDo6cGxhY2VBdXRvTWFqb3JBeGlzSXRlbXNPbkdyaWQoY29uc3QgVmVjdG9yPFJlbmRl
ckJveCo+JiBhdXRvR3JpCiB2b2lkIFJlbmRlckdyaWQ6OnBsYWNlQXV0b01ham9yQXhpc0l0ZW1P
bkdyaWQoUmVuZGVyQm94JiBncmlkSXRlbSwgQXV0b1BsYWNlbWVudEN1cnNvciYgYXV0b1BsYWNl
bWVudEN1cnNvcikKIHsKICAgICBBU1NFUlQoIWNhY2hlZEdyaWRTcGFuKGdyaWRJdGVtLCBhdXRv
UGxhY2VtZW50TWFqb3JBeGlzRGlyZWN0aW9uKCkpLmlzRGVmaW5pdGUoKSk7Ci0gICAgR3JpZFNw
YW4gbWFqb3JBeGlzUG9zaXRpb25zID0gR3JpZFJlc29sdmVkUG9zaXRpb246OnJlc29sdmVHcmlk
UG9zaXRpb25zRnJvbUF1dG9QbGFjZW1lbnRQb3NpdGlvbihzdHlsZSgpLCBncmlkSXRlbSwgYXV0
b1BsYWNlbWVudE1ham9yQXhpc0RpcmVjdGlvbigpLCAwKTsKKyAgICB1bnNpZ25lZCBtYWpvckF4
aXNTcGFuU2l6ZSA9IEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpzcGFuU2l6ZUZvckF1dG9QbGFjZWRJ
dGVtKHN0eWxlKCksIGdyaWRJdGVtLCBhdXRvUGxhY2VtZW50TWFqb3JBeGlzRGlyZWN0aW9uKCkp
OwogCiAgICAgY29uc3QgdW5zaWduZWQgZW5kT2ZNYWpvckF4aXMgPSAoYXV0b1BsYWNlbWVudE1h
am9yQXhpc0RpcmVjdGlvbigpID09IEZvckNvbHVtbnMpID8gZ3JpZENvbHVtbkNvdW50KCkgOiBn
cmlkUm93Q291bnQoKTsKICAgICB1bnNpZ25lZCBtYWpvckF4aXNBdXRvUGxhY2VtZW50Q3Vyc29y
ID0gYXV0b1BsYWNlbWVudE1ham9yQXhpc0RpcmVjdGlvbigpID09IEZvckNvbHVtbnMgPyBhdXRv
UGxhY2VtZW50Q3Vyc29yLnNlY29uZCA6IGF1dG9QbGFjZW1lbnRDdXJzb3IuZmlyc3Q7CkBAIC0x
Mjk5LDE3ICsxMzAwLDE3IEBAIHZvaWQgUmVuZGVyR3JpZDo6cGxhY2VBdXRvTWFqb3JBeGlzSXRl
bU9uR3JpZChSZW5kZXJCb3gmIGdyaWRJdGVtLCBBdXRvUGxhY2VtZW50CiAKICAgICAgICAgaWYg
KG1ham9yQXhpc0F1dG9QbGFjZW1lbnRDdXJzb3IgPCBlbmRPZk1ham9yQXhpcykgewogICAgICAg
ICAgICAgR3JpZEl0ZXJhdG9yIGl0ZXJhdG9yKG1fZ3JpZCwgYXV0b1BsYWNlbWVudE1pbm9yQXhp
c0RpcmVjdGlvbigpLCBtaW5vckF4aXNQb3NpdGlvbnMucmVzb2x2ZWRJbml0aWFsUG9zaXRpb24o
KSwgbWFqb3JBeGlzQXV0b1BsYWNlbWVudEN1cnNvcik7Ci0gICAgICAgICAgICBlbXB0eUdyaWRB
cmVhID0gaXRlcmF0b3IubmV4dEVtcHR5R3JpZEFyZWEobWlub3JBeGlzUG9zaXRpb25zLmludGVn
ZXJTcGFuKCksIG1ham9yQXhpc1Bvc2l0aW9ucy5pbnRlZ2VyU3BhbigpKTsKKyAgICAgICAgICAg
IGVtcHR5R3JpZEFyZWEgPSBpdGVyYXRvci5uZXh0RW1wdHlHcmlkQXJlYShtaW5vckF4aXNQb3Np
dGlvbnMuaW50ZWdlclNwYW4oKSwgbWFqb3JBeGlzU3BhblNpemUpOwogICAgICAgICB9CiAKICAg
ICAgICAgaWYgKCFlbXB0eUdyaWRBcmVhKQogICAgICAgICAgICAgZW1wdHlHcmlkQXJlYSA9IGNy
ZWF0ZUVtcHR5R3JpZEFyZWFBdFNwZWNpZmllZFBvc2l0aW9uc091dHNpZGVHcmlkKGdyaWRJdGVt
LCBhdXRvUGxhY2VtZW50TWlub3JBeGlzRGlyZWN0aW9uKCksIG1pbm9yQXhpc1Bvc2l0aW9ucyk7
CiAgICAgfSBlbHNlIHsKLSAgICAgICAgR3JpZFNwYW4gbWlub3JBeGlzUG9zaXRpb25zID0gR3Jp
ZFJlc29sdmVkUG9zaXRpb246OnJlc29sdmVHcmlkUG9zaXRpb25zRnJvbUF1dG9QbGFjZW1lbnRQ
b3NpdGlvbihzdHlsZSgpLCBncmlkSXRlbSwgYXV0b1BsYWNlbWVudE1pbm9yQXhpc0RpcmVjdGlv
bigpLCAwKTsKKyAgICAgICAgdW5zaWduZWQgbWlub3JBeGlzU3BhblNpemUgPSBHcmlkUmVzb2x2
ZWRQb3NpdGlvbjo6c3BhblNpemVGb3JBdXRvUGxhY2VkSXRlbShzdHlsZSgpLCBncmlkSXRlbSwg
YXV0b1BsYWNlbWVudE1pbm9yQXhpc0RpcmVjdGlvbigpKTsKIAogICAgICAgICBmb3IgKHVuc2ln
bmVkIG1ham9yQXhpc0luZGV4ID0gbWFqb3JBeGlzQXV0b1BsYWNlbWVudEN1cnNvcjsgbWFqb3JB
eGlzSW5kZXggPCBlbmRPZk1ham9yQXhpczsgKyttYWpvckF4aXNJbmRleCkgewogICAgICAgICAg
ICAgR3JpZEl0ZXJhdG9yIGl0ZXJhdG9yKG1fZ3JpZCwgYXV0b1BsYWNlbWVudE1ham9yQXhpc0Rp
cmVjdGlvbigpLCBtYWpvckF4aXNJbmRleCwgbWlub3JBeGlzQXV0b1BsYWNlbWVudEN1cnNvcik7
Ci0gICAgICAgICAgICBlbXB0eUdyaWRBcmVhID0gaXRlcmF0b3IubmV4dEVtcHR5R3JpZEFyZWEo
bWFqb3JBeGlzUG9zaXRpb25zLmludGVnZXJTcGFuKCksIG1pbm9yQXhpc1Bvc2l0aW9ucy5pbnRl
Z2VyU3BhbigpKTsKKyAgICAgICAgICAgIGVtcHR5R3JpZEFyZWEgPSBpdGVyYXRvci5uZXh0RW1w
dHlHcmlkQXJlYShtYWpvckF4aXNTcGFuU2l6ZSwgbWlub3JBeGlzU3BhblNpemUpOwogCiAgICAg
ICAgICAgICBpZiAoZW1wdHlHcmlkQXJlYSkgewogICAgICAgICAgICAgICAgIC8vIENoZWNrIHRo
YXQgaXQgZml0cyBpbiB0aGUgbWlub3IgYXhpcyBkaXJlY3Rpb24sIGFzIHdlIHNob3VsZG4ndCBn
cm93IGluIHRoYXQgZGlyZWN0aW9uIGhlcmUgKGl0IHdhcyBhbHJlYWR5IG1hbmFnZWQgaW4gcG9w
dWxhdGVFeHBsaWNpdEdyaWRBbmRPcmRlckl0ZXJhdG9yKCkpLgpAQCAtMTMyOCw3ICsxMzI5LDcg
QEAgdm9pZCBSZW5kZXJHcmlkOjpwbGFjZUF1dG9NYWpvckF4aXNJdGVtT25HcmlkKFJlbmRlckJv
eCYgZ3JpZEl0ZW0sIEF1dG9QbGFjZW1lbnQKICAgICAgICAgfQogCiAgICAgICAgIGlmICghZW1w
dHlHcmlkQXJlYSkKLSAgICAgICAgICAgIGVtcHR5R3JpZEFyZWEgPSBjcmVhdGVFbXB0eUdyaWRB
cmVhQXRTcGVjaWZpZWRQb3NpdGlvbnNPdXRzaWRlR3JpZChncmlkSXRlbSwgYXV0b1BsYWNlbWVu
dE1pbm9yQXhpc0RpcmVjdGlvbigpLCBtaW5vckF4aXNQb3NpdGlvbnMpOworICAgICAgICAgICAg
ZW1wdHlHcmlkQXJlYSA9IGNyZWF0ZUVtcHR5R3JpZEFyZWFBdFNwZWNpZmllZFBvc2l0aW9uc091
dHNpZGVHcmlkKGdyaWRJdGVtLCBhdXRvUGxhY2VtZW50TWlub3JBeGlzRGlyZWN0aW9uKCksIEdy
aWRTcGFuOjpkZWZpbml0ZUdyaWRTcGFuKDAsIG1pbm9yQXhpc1NwYW5TaXplKSk7CiAgICAgfQog
CiAgICAgbV9ncmlkSXRlbUNvb3JkaW5hdGUuc2V0KCZncmlkSXRlbSwgKmVtcHR5R3JpZEFyZWEp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0dyaWRSZXNvbHZl
ZFBvc2l0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9HcmlkUmVzb2x2
ZWRQb3NpdGlvbi5jcHAKaW5kZXggNmU1NjYzZmIyNmU3ZDZkYzg4YTg2M2U3NmFhNjFkMDYyODQy
MDQ1Zi4uOTk5YzY3YzE1NmM5ZWM2NjAwNGQxM2I2MDFjZjdkYjFlMDkxNGMzNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0dyaWRSZXNvbHZlZFBvc2l0aW9uLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvR3JpZFJlc29sdmVkUG9zaXRp
b24uY3BwCkBAIC0yMjQsNyArMjI0LDcgQEAgc3RhdGljIEdyaWRTcGFuIHJlc29sdmVHcmlkUG9z
aXRpb25BZ2FpbnN0T3Bwb3NpdGVQb3NpdGlvbihjb25zdCBSZW5kZXJTdHlsZSYgZ3IKICAgICBy
ZXR1cm4gR3JpZFNwYW46OmRlZmluaXRlR3JpZFNwYW4ocmVzb2x2ZWRPcHBvc2l0ZVBvc2l0aW9u
LCByZXNvbHZlZE9wcG9zaXRlUG9zaXRpb24gKyBwb3NpdGlvbk9mZnNldCk7CiB9CiAKLUdyaWRT
cGFuIEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpyZXNvbHZlR3JpZFBvc2l0aW9uc0Zyb21BdXRvUGxh
Y2VtZW50UG9zaXRpb24oY29uc3QgUmVuZGVyU3R5bGUmIGdyaWRDb250YWluZXJTdHlsZSwgY29u
c3QgUmVuZGVyQm94JiBncmlkSXRlbSwgR3JpZFRyYWNrU2l6aW5nRGlyZWN0aW9uIGRpcmVjdGlv
biwgdW5zaWduZWQgcmVzb2x2ZWRJbml0aWFsUG9zaXRpb24pCit1bnNpZ25lZCBHcmlkUmVzb2x2
ZWRQb3NpdGlvbjo6c3BhblNpemVGb3JBdXRvUGxhY2VkSXRlbShjb25zdCBSZW5kZXJTdHlsZSYg
Z3JpZENvbnRhaW5lclN0eWxlLCBjb25zdCBSZW5kZXJCb3gmIGdyaWRJdGVtLCBHcmlkVHJhY2tT
aXppbmdEaXJlY3Rpb24gZGlyZWN0aW9uKQogewogICAgIEdyaWRQb3NpdGlvbiBpbml0aWFsUG9z
aXRpb24sIGZpbmFsUG9zaXRpb247CiAgICAgYWRqdXN0R3JpZFBvc2l0aW9uc0Zyb21TdHlsZShn
cmlkQ29udGFpbmVyU3R5bGUsIGdyaWRJdGVtLCBkaXJlY3Rpb24sIGluaXRpYWxQb3NpdGlvbiwg
ZmluYWxQb3NpdGlvbik7CkBAIC0yMzMsMTQgKzIzMywxNCBAQCBHcmlkU3BhbiBHcmlkUmVzb2x2
ZWRQb3NpdGlvbjo6cmVzb2x2ZUdyaWRQb3NpdGlvbnNGcm9tQXV0b1BsYWNlbWVudFBvc2l0aW9u
KGNvbgogICAgIC8vIFRoaXMgbWV0aG9kIHdpbGwgb25seSBiZSB1c2VkIHdoZW4gYm90aCBwb3Np
dGlvbnMgbmVlZCB0byBiZSByZXNvbHZlZCBhZ2FpbnN0IHRoZSBvcHBvc2l0ZSBvbmUuCiAgICAg
QVNTRVJUKGluaXRpYWxQb3NpdGlvbi5zaG91bGRCZVJlc29sdmVkQWdhaW5zdE9wcG9zaXRlUG9z
aXRpb24oKSAmJiBmaW5hbFBvc2l0aW9uLnNob3VsZEJlUmVzb2x2ZWRBZ2FpbnN0T3Bwb3NpdGVQ
b3NpdGlvbigpKTsKIAotICAgIHVuc2lnbmVkIHJlc29sdmVkRmluYWxQb3NpdGlvbiA9IHJlc29s
dmVkSW5pdGlhbFBvc2l0aW9uICsgMTsKKyAgICBpZiAoaW5pdGlhbFBvc2l0aW9uLmlzQXV0bygp
ICYmIGZpbmFsUG9zaXRpb24uaXNBdXRvKCkpCisgICAgICAgIHJldHVybiAxOwogCi0gICAgaWYg
KGluaXRpYWxQb3NpdGlvbi5pc1NwYW4oKSkKLSAgICAgICAgcmV0dXJuIHJlc29sdmVHcmlkUG9z
aXRpb25BZ2FpbnN0T3Bwb3NpdGVQb3NpdGlvbihncmlkQ29udGFpbmVyU3R5bGUsIHJlc29sdmVk
SW5pdGlhbFBvc2l0aW9uLCBpbml0aWFsUG9zaXRpb24sIGZpbmFsU2lkZSk7Ci0gICAgaWYgKGZp
bmFsUG9zaXRpb24uaXNTcGFuKCkpCi0gICAgICAgIHJldHVybiByZXNvbHZlR3JpZFBvc2l0aW9u
QWdhaW5zdE9wcG9zaXRlUG9zaXRpb24oZ3JpZENvbnRhaW5lclN0eWxlLCByZXNvbHZlZEluaXRp
YWxQb3NpdGlvbiwgZmluYWxQb3NpdGlvbiwgZmluYWxTaWRlKTsKKyAgICBHcmlkUG9zaXRpb24g
cG9zaXRpb24gPSBpbml0aWFsUG9zaXRpb24uaXNTcGFuKCkgPyBpbml0aWFsUG9zaXRpb24gOiBm
aW5hbFBvc2l0aW9uOworICAgIEFTU0VSVChwb3NpdGlvbi5pc1NwYW4oKSk7CiAKLSAgICByZXR1
cm4gR3JpZFNwYW46OmRlZmluaXRlR3JpZFNwYW4ocmVzb2x2ZWRJbml0aWFsUG9zaXRpb24sIHJl
c29sdmVkRmluYWxQb3NpdGlvbik7CisgICAgQVNTRVJUKHBvc2l0aW9uLnNwYW5Qb3NpdGlvbigp
KTsKKyAgICByZXR1cm4gcG9zaXRpb24uc3BhblBvc2l0aW9uKCk7CiB9CiAKIHN0YXRpYyB1bnNp
Z25lZCByZXNvbHZlR3JpZFBvc2l0aW9uRnJvbVN0eWxlKGNvbnN0IFJlbmRlclN0eWxlJiBncmlk
Q29udGFpbmVyU3R5bGUsIGNvbnN0IEdyaWRQb3NpdGlvbiYgcG9zaXRpb24sIEdyaWRQb3NpdGlv
blNpZGUgc2lkZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9H
cmlkUmVzb2x2ZWRQb3NpdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0dy
aWRSZXNvbHZlZFBvc2l0aW9uLmgKaW5kZXggZDNkNjlmYWMwMTVmY2Q3MmM0YjhmOWYwOWQ3OTcy
Yjc4MzA4OWQ0ZS4uNGNiM2Y5ZDk4YWQ2ZTcxNWYwODA3ZWEyNWE1ZjNlNTMyZDg0NTg0ZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0dyaWRSZXNvbHZlZFBvc2l0
aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0dyaWRSZXNvbHZlZFBv
c2l0aW9uLmgKQEAgLTUwLDcgKzUwLDcgQEAgZW51bSBHcmlkVHJhY2tTaXppbmdEaXJlY3Rpb24g
ewogLy8gVE9ETyhyZWdvKTogUmVuYW1lIGNsYXNzIHRvIEdyaWRQb3NpdGlvbnNSZXNvbHZlci4K
IGNsYXNzIEdyaWRSZXNvbHZlZFBvc2l0aW9uIHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgR3JpZFNw
YW4gcmVzb2x2ZUdyaWRQb3NpdGlvbnNGcm9tQXV0b1BsYWNlbWVudFBvc2l0aW9uKGNvbnN0IFJl
bmRlclN0eWxlJiwgY29uc3QgUmVuZGVyQm94JiwgR3JpZFRyYWNrU2l6aW5nRGlyZWN0aW9uLCB1
bnNpZ25lZCk7CisgICAgc3RhdGljIHVuc2lnbmVkIHNwYW5TaXplRm9yQXV0b1BsYWNlZEl0ZW0o
Y29uc3QgUmVuZGVyU3R5bGUmLCBjb25zdCBSZW5kZXJCb3gmLCBHcmlkVHJhY2tTaXppbmdEaXJl
Y3Rpb24pOwogICAgIHN0YXRpYyBHcmlkU3BhbiByZXNvbHZlR3JpZFBvc2l0aW9uc0Zyb21TdHls
ZShjb25zdCBSZW5kZXJTdHlsZSYsIGNvbnN0IFJlbmRlckJveCYsIEdyaWRUcmFja1NpemluZ0Rp
cmVjdGlvbik7CiAgICAgc3RhdGljIHVuc2lnbmVkIGV4cGxpY2l0R3JpZENvbHVtbkNvdW50KGNv
bnN0IFJlbmRlclN0eWxlJik7CiAgICAgc3RhdGljIHVuc2lnbmVkIGV4cGxpY2l0R3JpZFJvd0Nv
dW50KGNvbnN0IFJlbmRlclN0eWxlJik7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>272644</attachid>
            <date>2016-03-02 01:03:44 -0800</date>
            <delta_ts>2016-03-03 02:23:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-154911-20160302100328.patch</filename>
            <type>text/plain</type>
            <size>12245</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk3NDAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjk3M2JmMWE1YjEwODc4
OGI3OTZmNjlmMWNhODM3NzY3YWJjM2E1Ni4uZGNjZTI5MDc4ZjZmZTVkZTc4OTdlOWFjNzFjMzg3
NDhiMDY1ODNhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDE2LTAzLTAyICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3MtZ3Jp
ZF0gU2ltcGxpZnkgbWV0aG9kIHRvIHJlc29sdmUgYXV0by1wbGFjZWQgaXRlbXMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NDkxMQorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlZmFjdG9yIHRoZSBtZXRo
b2QgdG8gcmVzb2x2ZSBhdXRvLXBsYWNlZCBpdGVtcworICAgICAgICBhcyB3ZSdyZSBvbmx5IGlu
dGVyZXN0ZWQgaW4ga25vd2luZyB0aGUgc3BhbiBzaXplLgorCisgICAgICAgIEFkYXB0IHRoZSBj
YWxscyB0byB1c2UgdGhlIHNwYW4gc2l6ZSBpbnN0ZWFkIG9mIGEgR3JpZFNwYW4uCisKKyAgICAg
ICAgTm8gbmV3IHRlc3RzLCBubyBjaGFuZ2Ugb2YgYmVoYXZpb3IuCisKKyAgICAgICAgKiByZW5k
ZXJpbmcvUmVuZGVyR3JpZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJHcmlkOjpwb3B1
bGF0ZUV4cGxpY2l0R3JpZEFuZE9yZGVySXRlcmF0b3IpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyR3JpZDo6Y3JlYXRlRW1wdHlHcmlkQXJlYUF0U3BlY2lmaWVkUG9zaXRpb25zT3V0c2lkZUdy
aWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyR3JpZDo6cGxhY2VTcGVjaWZpZWRNYWpvckF4
aXNJdGVtc09uR3JpZCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJHcmlkOjpwbGFjZUF1dG9N
YWpvckF4aXNJdGVtT25HcmlkKToKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvR3JpZFJlc29s
dmVkUG9zaXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6R3JpZFJlc29sdmVkUG9zaXRpb246
OnNwYW5TaXplRm9yQXV0b1BsYWNlZEl0ZW0pOgorICAgICAgICAoV2ViQ29yZTo6R3JpZFJlc29s
dmVkUG9zaXRpb246OnJlc29sdmVHcmlkUG9zaXRpb25zRnJvbUF1dG9QbGFjZW1lbnRQb3NpdGlv
bik6CisgICAgICAgIFJlbmFtZWQgdG8gc3BhblNpemVGb3JBdXRvUGxhY2VkSXRlbSgpLgorICAg
ICAgICAqIHJlbmRlcmluZy9zdHlsZS9HcmlkUmVzb2x2ZWRQb3NpdGlvbi5oOgorCiAyMDE2LTAz
LTAxICBNYW51ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgogCiAgICAgICAg
IFtjc3MtZ3JpZF0gR2V0IHJpZCBvZiBHcmlkUmVzb2x2ZWRQb3NpdGlvbgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckdyaWQuY3BwIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckdyaWQuY3BwCmluZGV4IDU2Mjk3N2ExMGVkNzQ2ODNkNDU1OTZhZTVj
Mzc2Njc2YjQ2YTNhNDIuLmY0Yjc2NTk4MThkM2JlOTNhYTE2MTQ1YWQ4ZDkyNGI1NmY5NTdkMzgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJHcmlkLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyR3JpZC5jcHAKQEAgLTEyMDcsOCArMTIw
Nyw4IEBAIHZvaWQgUmVuZGVyR3JpZDo6cG9wdWxhdGVFeHBsaWNpdEdyaWRBbmRPcmRlckl0ZXJh
dG9yKCkKICAgICAgICAgICAgIG1heGltdW1Sb3dJbmRleCA9IHN0ZDo6bWF4KG1heGltdW1Sb3dJ
bmRleCwgcm93UG9zaXRpb25zLnJlc29sdmVkRmluYWxQb3NpdGlvbigpKTsKICAgICAgICAgfSBl
bHNlIHsKICAgICAgICAgICAgIC8vIEdyb3cgdGhlIGdyaWQgZm9yIGl0ZW1zIHdpdGggYSBkZWZp
bml0ZSByb3cgc3BhbiwgZ2V0dGluZyB0aGUgbGFyZ2VzdCBzdWNoIHNwYW4uCi0gICAgICAgICAg
ICBHcmlkU3BhbiBwb3NpdGlvbnMgPSBHcmlkUmVzb2x2ZWRQb3NpdGlvbjo6cmVzb2x2ZUdyaWRQ
b3NpdGlvbnNGcm9tQXV0b1BsYWNlbWVudFBvc2l0aW9uKHN0eWxlKCksICpjaGlsZCwgRm9yUm93
cywgMCk7Ci0gICAgICAgICAgICBtYXhpbXVtUm93SW5kZXggPSBzdGQ6Om1heChtYXhpbXVtUm93
SW5kZXgsIHBvc2l0aW9ucy5yZXNvbHZlZEZpbmFsUG9zaXRpb24oKSk7CisgICAgICAgICAgICB1
bnNpZ25lZCBzcGFuU2l6ZSA9IEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpzcGFuU2l6ZUZvckF1dG9Q
bGFjZWRJdGVtKHN0eWxlKCksICpjaGlsZCwgRm9yUm93cyk7CisgICAgICAgICAgICBtYXhpbXVt
Um93SW5kZXggPSBzdGQ6Om1heChtYXhpbXVtUm93SW5kZXgsIHNwYW5TaXplKTsKICAgICAgICAg
fQogCiAgICAgICAgIEdyaWRTcGFuIGNvbHVtblBvc2l0aW9ucyA9IEdyaWRSZXNvbHZlZFBvc2l0
aW9uOjpyZXNvbHZlR3JpZFBvc2l0aW9uc0Zyb21TdHlsZShzdHlsZSgpLCAqY2hpbGQsIEZvckNv
bHVtbnMpOwpAQCAtMTIxNiw4ICsxMjE2LDggQEAgdm9pZCBSZW5kZXJHcmlkOjpwb3B1bGF0ZUV4
cGxpY2l0R3JpZEFuZE9yZGVySXRlcmF0b3IoKQogICAgICAgICAgICAgbWF4aW11bUNvbHVtbklu
ZGV4ID0gc3RkOjptYXgobWF4aW11bUNvbHVtbkluZGV4LCBjb2x1bW5Qb3NpdGlvbnMucmVzb2x2
ZWRGaW5hbFBvc2l0aW9uKCkpOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLy8gR3Jv
dyB0aGUgZ3JpZCBmb3IgaXRlbXMgd2l0aCBhIGRlZmluaXRlIGNvbHVtbiBzcGFuLCBnZXR0aW5n
IHRoZSBsYXJnZXN0IHN1Y2ggc3Bhbi4KLSAgICAgICAgICAgIEdyaWRTcGFuIHBvc2l0aW9ucyA9
IEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpyZXNvbHZlR3JpZFBvc2l0aW9uc0Zyb21BdXRvUGxhY2Vt
ZW50UG9zaXRpb24oc3R5bGUoKSwgKmNoaWxkLCBGb3JDb2x1bW5zLCAwKTsKLSAgICAgICAgICAg
IG1heGltdW1Db2x1bW5JbmRleCA9IHN0ZDo6bWF4KG1heGltdW1Db2x1bW5JbmRleCwgcG9zaXRp
b25zLnJlc29sdmVkRmluYWxQb3NpdGlvbigpKTsKKyAgICAgICAgICAgIHVuc2lnbmVkIHNwYW5T
aXplID0gR3JpZFJlc29sdmVkUG9zaXRpb246OnNwYW5TaXplRm9yQXV0b1BsYWNlZEl0ZW0oc3R5
bGUoKSwgKmNoaWxkLCBGb3JDb2x1bW5zKTsKKyAgICAgICAgICAgIG1heGltdW1Db2x1bW5JbmRl
eCA9IHN0ZDo6bWF4KG1heGltdW1Db2x1bW5JbmRleCwgc3BhblNpemUpOwogICAgICAgICB9CiAK
ICAgICAgICAgbV9ncmlkSXRlbUNvb3JkaW5hdGUuc2V0KGNoaWxkLCBHcmlkQ29vcmRpbmF0ZShy
b3dQb3NpdGlvbnMsIGNvbHVtblBvc2l0aW9ucykpOwpAQCAtMTIzMiw3ICsxMjMyLDggQEAgc3Rk
Ojp1bmlxdWVfcHRyPEdyaWRDb29yZGluYXRlPiBSZW5kZXJHcmlkOjpjcmVhdGVFbXB0eUdyaWRB
cmVhQXRTcGVjaWZpZWRQb3NpdGkKIHsKICAgICBHcmlkVHJhY2tTaXppbmdEaXJlY3Rpb24gY3Jv
c3NEaXJlY3Rpb24gPSBzcGVjaWZpZWREaXJlY3Rpb24gPT0gRm9yQ29sdW1ucyA/IEZvclJvd3Mg
OiBGb3JDb2x1bW5zOwogICAgIGNvbnN0IHVuc2lnbmVkIGVuZE9mQ3Jvc3NEaXJlY3Rpb24gPSBj
cm9zc0RpcmVjdGlvbiA9PSBGb3JDb2x1bW5zID8gZ3JpZENvbHVtbkNvdW50KCkgOiBncmlkUm93
Q291bnQoKTsKLSAgICBHcmlkU3BhbiBjcm9zc0RpcmVjdGlvblBvc2l0aW9ucyA9IEdyaWRSZXNv
bHZlZFBvc2l0aW9uOjpyZXNvbHZlR3JpZFBvc2l0aW9uc0Zyb21BdXRvUGxhY2VtZW50UG9zaXRp
b24oc3R5bGUoKSwgZ3JpZEl0ZW0sIGNyb3NzRGlyZWN0aW9uLCBlbmRPZkNyb3NzRGlyZWN0aW9u
KTsKKyAgICB1bnNpZ25lZCBjcm9zc0RpcmVjdGlvblNwYW5TaXplID0gR3JpZFJlc29sdmVkUG9z
aXRpb246OnNwYW5TaXplRm9yQXV0b1BsYWNlZEl0ZW0oc3R5bGUoKSwgZ3JpZEl0ZW0sIGNyb3Nz
RGlyZWN0aW9uKTsKKyAgICBHcmlkU3BhbiBjcm9zc0RpcmVjdGlvblBvc2l0aW9ucyA9IEdyaWRT
cGFuOjpkZWZpbml0ZUdyaWRTcGFuKGVuZE9mQ3Jvc3NEaXJlY3Rpb24sIGVuZE9mQ3Jvc3NEaXJl
Y3Rpb24gKyBjcm9zc0RpcmVjdGlvblNwYW5TaXplKTsKICAgICByZXR1cm4gc3RkOjptYWtlX3Vu
aXF1ZTxHcmlkQ29vcmRpbmF0ZT4oc3BlY2lmaWVkRGlyZWN0aW9uID09IEZvckNvbHVtbnMgPyBj
cm9zc0RpcmVjdGlvblBvc2l0aW9ucyA6IHNwZWNpZmllZFBvc2l0aW9ucywgc3BlY2lmaWVkRGly
ZWN0aW9uID09IEZvckNvbHVtbnMgPyBzcGVjaWZpZWRQb3NpdGlvbnMgOiBjcm9zc0RpcmVjdGlv
blBvc2l0aW9ucyk7CiB9CiAKQEAgLTEyNTAsMTEgKzEyNTEsMTEgQEAgdm9pZCBSZW5kZXJHcmlk
OjpwbGFjZVNwZWNpZmllZE1ham9yQXhpc0l0ZW1zT25HcmlkKGNvbnN0IFZlY3RvcjxSZW5kZXJC
b3gqPiYgYXUKICAgICAgICAgR3JpZFNwYW4gbWFqb3JBeGlzUG9zaXRpb25zID0gY2FjaGVkR3Jp
ZFNwYW4oKmF1dG9HcmlkSXRlbSwgYXV0b1BsYWNlbWVudE1ham9yQXhpc0RpcmVjdGlvbigpKTsK
ICAgICAgICAgQVNTRVJUKG1ham9yQXhpc1Bvc2l0aW9ucy5pc0RlZmluaXRlKCkpOwogICAgICAg
ICBBU1NFUlQoIWNhY2hlZEdyaWRTcGFuKCphdXRvR3JpZEl0ZW0sIGF1dG9QbGFjZW1lbnRNaW5v
ckF4aXNEaXJlY3Rpb24oKSkuaXNEZWZpbml0ZSgpKTsKLSAgICAgICAgR3JpZFNwYW4gbWlub3JB
eGlzUG9zaXRpb25zID0gR3JpZFJlc29sdmVkUG9zaXRpb246OnJlc29sdmVHcmlkUG9zaXRpb25z
RnJvbUF1dG9QbGFjZW1lbnRQb3NpdGlvbihzdHlsZSgpLCAqYXV0b0dyaWRJdGVtLCBhdXRvUGxh
Y2VtZW50TWlub3JBeGlzRGlyZWN0aW9uKCksIDApOworICAgICAgICB1bnNpZ25lZCBtaW5vckF4
aXNTcGFuU2l6ZSA9IEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpzcGFuU2l6ZUZvckF1dG9QbGFjZWRJ
dGVtKHN0eWxlKCksICphdXRvR3JpZEl0ZW0sIGF1dG9QbGFjZW1lbnRNaW5vckF4aXNEaXJlY3Rp
b24oKSk7CiAgICAgICAgIHVuc2lnbmVkIG1ham9yQXhpc0luaXRpYWxQb3NpdGlvbiA9IG1ham9y
QXhpc1Bvc2l0aW9ucy5yZXNvbHZlZEluaXRpYWxQb3NpdGlvbigpOwogCiAgICAgICAgIEdyaWRJ
dGVyYXRvciBpdGVyYXRvcihtX2dyaWQsIGF1dG9QbGFjZW1lbnRNYWpvckF4aXNEaXJlY3Rpb24o
KSwgbWFqb3JBeGlzUG9zaXRpb25zLnJlc29sdmVkSW5pdGlhbFBvc2l0aW9uKCksIGlzR3JpZEF1
dG9GbG93RGVuc2UgPyAwIDogbWlub3JBeGlzQ3Vyc29ycy5nZXQobWFqb3JBeGlzSW5pdGlhbFBv
c2l0aW9uKSk7Ci0gICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxHcmlkQ29vcmRpbmF0ZT4gZW1wdHlH
cmlkQXJlYSA9IGl0ZXJhdG9yLm5leHRFbXB0eUdyaWRBcmVhKG1ham9yQXhpc1Bvc2l0aW9ucy5p
bnRlZ2VyU3BhbigpLCBtaW5vckF4aXNQb3NpdGlvbnMuaW50ZWdlclNwYW4oKSk7CisgICAgICAg
IHN0ZDo6dW5pcXVlX3B0cjxHcmlkQ29vcmRpbmF0ZT4gZW1wdHlHcmlkQXJlYSA9IGl0ZXJhdG9y
Lm5leHRFbXB0eUdyaWRBcmVhKG1ham9yQXhpc1Bvc2l0aW9ucy5pbnRlZ2VyU3BhbigpLCBtaW5v
ckF4aXNTcGFuU2l6ZSk7CiAgICAgICAgIGlmICghZW1wdHlHcmlkQXJlYSkKICAgICAgICAgICAg
IGVtcHR5R3JpZEFyZWEgPSBjcmVhdGVFbXB0eUdyaWRBcmVhQXRTcGVjaWZpZWRQb3NpdGlvbnNP
dXRzaWRlR3JpZCgqYXV0b0dyaWRJdGVtLCBhdXRvUGxhY2VtZW50TWFqb3JBeGlzRGlyZWN0aW9u
KCksIG1ham9yQXhpc1Bvc2l0aW9ucyk7CiAKQEAgLTEyODQsNyArMTI4NSw3IEBAIHZvaWQgUmVu
ZGVyR3JpZDo6cGxhY2VBdXRvTWFqb3JBeGlzSXRlbXNPbkdyaWQoY29uc3QgVmVjdG9yPFJlbmRl
ckJveCo+JiBhdXRvR3JpCiB2b2lkIFJlbmRlckdyaWQ6OnBsYWNlQXV0b01ham9yQXhpc0l0ZW1P
bkdyaWQoUmVuZGVyQm94JiBncmlkSXRlbSwgQXV0b1BsYWNlbWVudEN1cnNvciYgYXV0b1BsYWNl
bWVudEN1cnNvcikKIHsKICAgICBBU1NFUlQoIWNhY2hlZEdyaWRTcGFuKGdyaWRJdGVtLCBhdXRv
UGxhY2VtZW50TWFqb3JBeGlzRGlyZWN0aW9uKCkpLmlzRGVmaW5pdGUoKSk7Ci0gICAgR3JpZFNw
YW4gbWFqb3JBeGlzUG9zaXRpb25zID0gR3JpZFJlc29sdmVkUG9zaXRpb246OnJlc29sdmVHcmlk
UG9zaXRpb25zRnJvbUF1dG9QbGFjZW1lbnRQb3NpdGlvbihzdHlsZSgpLCBncmlkSXRlbSwgYXV0
b1BsYWNlbWVudE1ham9yQXhpc0RpcmVjdGlvbigpLCAwKTsKKyAgICB1bnNpZ25lZCBtYWpvckF4
aXNTcGFuU2l6ZSA9IEdyaWRSZXNvbHZlZFBvc2l0aW9uOjpzcGFuU2l6ZUZvckF1dG9QbGFjZWRJ
dGVtKHN0eWxlKCksIGdyaWRJdGVtLCBhdXRvUGxhY2VtZW50TWFqb3JBeGlzRGlyZWN0aW9uKCkp
OwogCiAgICAgY29uc3QgdW5zaWduZWQgZW5kT2ZNYWpvckF4aXMgPSAoYXV0b1BsYWNlbWVudE1h
am9yQXhpc0RpcmVjdGlvbigpID09IEZvckNvbHVtbnMpID8gZ3JpZENvbHVtbkNvdW50KCkgOiBn
cmlkUm93Q291bnQoKTsKICAgICB1bnNpZ25lZCBtYWpvckF4aXNBdXRvUGxhY2VtZW50Q3Vyc29y
ID0gYXV0b1BsYWNlbWVudE1ham9yQXhpc0RpcmVjdGlvbigpID09IEZvckNvbHVtbnMgPyBhdXRv
UGxhY2VtZW50Q3Vyc29yLnNlY29uZCA6IGF1dG9QbGFjZW1lbnRDdXJzb3IuZmlyc3Q7CkBAIC0x
Mjk5LDE3ICsxMzAwLDE3IEBAIHZvaWQgUmVuZGVyR3JpZDo6cGxhY2VBdXRvTWFqb3JBeGlzSXRl
bU9uR3JpZChSZW5kZXJCb3gmIGdyaWRJdGVtLCBBdXRvUGxhY2VtZW50CiAKICAgICAgICAgaWYg
KG1ham9yQXhpc0F1dG9QbGFjZW1lbnRDdXJzb3IgPCBlbmRPZk1ham9yQXhpcykgewogICAgICAg
ICAgICAgR3JpZEl0ZXJhdG9yIGl0ZXJhdG9yKG1fZ3JpZCwgYXV0b1BsYWNlbWVudE1pbm9yQXhp
c0RpcmVjdGlvbigpLCBtaW5vckF4aXNQb3NpdGlvbnMucmVzb2x2ZWRJbml0aWFsUG9zaXRpb24o
KSwgbWFqb3JBeGlzQXV0b1BsYWNlbWVudEN1cnNvcik7Ci0gICAgICAgICAgICBlbXB0eUdyaWRB
cmVhID0gaXRlcmF0b3IubmV4dEVtcHR5R3JpZEFyZWEobWlub3JBeGlzUG9zaXRpb25zLmludGVn
ZXJTcGFuKCksIG1ham9yQXhpc1Bvc2l0aW9ucy5pbnRlZ2VyU3BhbigpKTsKKyAgICAgICAgICAg
IGVtcHR5R3JpZEFyZWEgPSBpdGVyYXRvci5uZXh0RW1wdHlHcmlkQXJlYShtaW5vckF4aXNQb3Np
dGlvbnMuaW50ZWdlclNwYW4oKSwgbWFqb3JBeGlzU3BhblNpemUpOwogICAgICAgICB9CiAKICAg
ICAgICAgaWYgKCFlbXB0eUdyaWRBcmVhKQogICAgICAgICAgICAgZW1wdHlHcmlkQXJlYSA9IGNy
ZWF0ZUVtcHR5R3JpZEFyZWFBdFNwZWNpZmllZFBvc2l0aW9uc091dHNpZGVHcmlkKGdyaWRJdGVt
LCBhdXRvUGxhY2VtZW50TWlub3JBeGlzRGlyZWN0aW9uKCksIG1pbm9yQXhpc1Bvc2l0aW9ucyk7
CiAgICAgfSBlbHNlIHsKLSAgICAgICAgR3JpZFNwYW4gbWlub3JBeGlzUG9zaXRpb25zID0gR3Jp
ZFJlc29sdmVkUG9zaXRpb246OnJlc29sdmVHcmlkUG9zaXRpb25zRnJvbUF1dG9QbGFjZW1lbnRQ
b3NpdGlvbihzdHlsZSgpLCBncmlkSXRlbSwgYXV0b1BsYWNlbWVudE1pbm9yQXhpc0RpcmVjdGlv
bigpLCAwKTsKKyAgICAgICAgdW5zaWduZWQgbWlub3JBeGlzU3BhblNpemUgPSBHcmlkUmVzb2x2
ZWRQb3NpdGlvbjo6c3BhblNpemVGb3JBdXRvUGxhY2VkSXRlbShzdHlsZSgpLCBncmlkSXRlbSwg
YXV0b1BsYWNlbWVudE1pbm9yQXhpc0RpcmVjdGlvbigpKTsKIAogICAgICAgICBmb3IgKHVuc2ln
bmVkIG1ham9yQXhpc0luZGV4ID0gbWFqb3JBeGlzQXV0b1BsYWNlbWVudEN1cnNvcjsgbWFqb3JB
eGlzSW5kZXggPCBlbmRPZk1ham9yQXhpczsgKyttYWpvckF4aXNJbmRleCkgewogICAgICAgICAg
ICAgR3JpZEl0ZXJhdG9yIGl0ZXJhdG9yKG1fZ3JpZCwgYXV0b1BsYWNlbWVudE1ham9yQXhpc0Rp
cmVjdGlvbigpLCBtYWpvckF4aXNJbmRleCwgbWlub3JBeGlzQXV0b1BsYWNlbWVudEN1cnNvcik7
Ci0gICAgICAgICAgICBlbXB0eUdyaWRBcmVhID0gaXRlcmF0b3IubmV4dEVtcHR5R3JpZEFyZWEo
bWFqb3JBeGlzUG9zaXRpb25zLmludGVnZXJTcGFuKCksIG1pbm9yQXhpc1Bvc2l0aW9ucy5pbnRl
Z2VyU3BhbigpKTsKKyAgICAgICAgICAgIGVtcHR5R3JpZEFyZWEgPSBpdGVyYXRvci5uZXh0RW1w
dHlHcmlkQXJlYShtYWpvckF4aXNTcGFuU2l6ZSwgbWlub3JBeGlzU3BhblNpemUpOwogCiAgICAg
ICAgICAgICBpZiAoZW1wdHlHcmlkQXJlYSkgewogICAgICAgICAgICAgICAgIC8vIENoZWNrIHRo
YXQgaXQgZml0cyBpbiB0aGUgbWlub3IgYXhpcyBkaXJlY3Rpb24sIGFzIHdlIHNob3VsZG4ndCBn
cm93IGluIHRoYXQgZGlyZWN0aW9uIGhlcmUgKGl0IHdhcyBhbHJlYWR5IG1hbmFnZWQgaW4gcG9w
dWxhdGVFeHBsaWNpdEdyaWRBbmRPcmRlckl0ZXJhdG9yKCkpLgpAQCAtMTMyOCw3ICsxMzI5LDcg
QEAgdm9pZCBSZW5kZXJHcmlkOjpwbGFjZUF1dG9NYWpvckF4aXNJdGVtT25HcmlkKFJlbmRlckJv
eCYgZ3JpZEl0ZW0sIEF1dG9QbGFjZW1lbnQKICAgICAgICAgfQogCiAgICAgICAgIGlmICghZW1w
dHlHcmlkQXJlYSkKLSAgICAgICAgICAgIGVtcHR5R3JpZEFyZWEgPSBjcmVhdGVFbXB0eUdyaWRB
cmVhQXRTcGVjaWZpZWRQb3NpdGlvbnNPdXRzaWRlR3JpZChncmlkSXRlbSwgYXV0b1BsYWNlbWVu
dE1pbm9yQXhpc0RpcmVjdGlvbigpLCBtaW5vckF4aXNQb3NpdGlvbnMpOworICAgICAgICAgICAg
ZW1wdHlHcmlkQXJlYSA9IGNyZWF0ZUVtcHR5R3JpZEFyZWFBdFNwZWNpZmllZFBvc2l0aW9uc091
dHNpZGVHcmlkKGdyaWRJdGVtLCBhdXRvUGxhY2VtZW50TWlub3JBeGlzRGlyZWN0aW9uKCksIEdy
aWRTcGFuOjpkZWZpbml0ZUdyaWRTcGFuKDAsIG1pbm9yQXhpc1NwYW5TaXplKSk7CiAgICAgfQog
CiAgICAgbV9ncmlkSXRlbUNvb3JkaW5hdGUuc2V0KCZncmlkSXRlbSwgKmVtcHR5R3JpZEFyZWEp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0dyaWRSZXNvbHZl
ZFBvc2l0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9HcmlkUmVzb2x2
ZWRQb3NpdGlvbi5jcHAKaW5kZXggNmU1NjYzZmIyNmU3ZDZkYzg4YTg2M2U3NmFhNjFkMDYyODQy
MDQ1Zi4uNTlhMWRiZGFhOTg0OWY5ZGQyNzljNmIzMDY3YjliMmYyNTk1ZWU1NCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0dyaWRSZXNvbHZlZFBvc2l0aW9uLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvR3JpZFJlc29sdmVkUG9zaXRp
b24uY3BwCkBAIC0yMjQsMjMgKzIyNCwyMiBAQCBzdGF0aWMgR3JpZFNwYW4gcmVzb2x2ZUdyaWRQ
b3NpdGlvbkFnYWluc3RPcHBvc2l0ZVBvc2l0aW9uKGNvbnN0IFJlbmRlclN0eWxlJiBncgogICAg
IHJldHVybiBHcmlkU3Bhbjo6ZGVmaW5pdGVHcmlkU3BhbihyZXNvbHZlZE9wcG9zaXRlUG9zaXRp
b24sIHJlc29sdmVkT3Bwb3NpdGVQb3NpdGlvbiArIHBvc2l0aW9uT2Zmc2V0KTsKIH0KIAotR3Jp
ZFNwYW4gR3JpZFJlc29sdmVkUG9zaXRpb246OnJlc29sdmVHcmlkUG9zaXRpb25zRnJvbUF1dG9Q
bGFjZW1lbnRQb3NpdGlvbihjb25zdCBSZW5kZXJTdHlsZSYgZ3JpZENvbnRhaW5lclN0eWxlLCBj
b25zdCBSZW5kZXJCb3gmIGdyaWRJdGVtLCBHcmlkVHJhY2tTaXppbmdEaXJlY3Rpb24gZGlyZWN0
aW9uLCB1bnNpZ25lZCByZXNvbHZlZEluaXRpYWxQb3NpdGlvbikKK3Vuc2lnbmVkIEdyaWRSZXNv
bHZlZFBvc2l0aW9uOjpzcGFuU2l6ZUZvckF1dG9QbGFjZWRJdGVtKGNvbnN0IFJlbmRlclN0eWxl
JiBncmlkQ29udGFpbmVyU3R5bGUsIGNvbnN0IFJlbmRlckJveCYgZ3JpZEl0ZW0sIEdyaWRUcmFj
a1NpemluZ0RpcmVjdGlvbiBkaXJlY3Rpb24pCiB7CiAgICAgR3JpZFBvc2l0aW9uIGluaXRpYWxQ
b3NpdGlvbiwgZmluYWxQb3NpdGlvbjsKICAgICBhZGp1c3RHcmlkUG9zaXRpb25zRnJvbVN0eWxl
KGdyaWRDb250YWluZXJTdHlsZSwgZ3JpZEl0ZW0sIGRpcmVjdGlvbiwgaW5pdGlhbFBvc2l0aW9u
LCBmaW5hbFBvc2l0aW9uKTsKIAotICAgIEdyaWRQb3NpdGlvblNpZGUgZmluYWxTaWRlID0gZmlu
YWxQb3NpdGlvblNpZGUoZGlyZWN0aW9uKTsKICAgICAvLyBUaGlzIG1ldGhvZCB3aWxsIG9ubHkg
YmUgdXNlZCB3aGVuIGJvdGggcG9zaXRpb25zIG5lZWQgdG8gYmUgcmVzb2x2ZWQgYWdhaW5zdCB0
aGUgb3Bwb3NpdGUgb25lLgogICAgIEFTU0VSVChpbml0aWFsUG9zaXRpb24uc2hvdWxkQmVSZXNv
bHZlZEFnYWluc3RPcHBvc2l0ZVBvc2l0aW9uKCkgJiYgZmluYWxQb3NpdGlvbi5zaG91bGRCZVJl
c29sdmVkQWdhaW5zdE9wcG9zaXRlUG9zaXRpb24oKSk7CiAKLSAgICB1bnNpZ25lZCByZXNvbHZl
ZEZpbmFsUG9zaXRpb24gPSByZXNvbHZlZEluaXRpYWxQb3NpdGlvbiArIDE7CisgICAgaWYgKGlu
aXRpYWxQb3NpdGlvbi5pc0F1dG8oKSAmJiBmaW5hbFBvc2l0aW9uLmlzQXV0bygpKQorICAgICAg
ICByZXR1cm4gMTsKIAotICAgIGlmIChpbml0aWFsUG9zaXRpb24uaXNTcGFuKCkpCi0gICAgICAg
IHJldHVybiByZXNvbHZlR3JpZFBvc2l0aW9uQWdhaW5zdE9wcG9zaXRlUG9zaXRpb24oZ3JpZENv
bnRhaW5lclN0eWxlLCByZXNvbHZlZEluaXRpYWxQb3NpdGlvbiwgaW5pdGlhbFBvc2l0aW9uLCBm
aW5hbFNpZGUpOwotICAgIGlmIChmaW5hbFBvc2l0aW9uLmlzU3BhbigpKQotICAgICAgICByZXR1
cm4gcmVzb2x2ZUdyaWRQb3NpdGlvbkFnYWluc3RPcHBvc2l0ZVBvc2l0aW9uKGdyaWRDb250YWlu
ZXJTdHlsZSwgcmVzb2x2ZWRJbml0aWFsUG9zaXRpb24sIGZpbmFsUG9zaXRpb24sIGZpbmFsU2lk
ZSk7CisgICAgR3JpZFBvc2l0aW9uIHBvc2l0aW9uID0gaW5pdGlhbFBvc2l0aW9uLmlzU3Bhbigp
ID8gaW5pdGlhbFBvc2l0aW9uIDogZmluYWxQb3NpdGlvbjsKKyAgICBBU1NFUlQocG9zaXRpb24u
aXNTcGFuKCkpOwogCi0gICAgcmV0dXJuIEdyaWRTcGFuOjpkZWZpbml0ZUdyaWRTcGFuKHJlc29s
dmVkSW5pdGlhbFBvc2l0aW9uLCByZXNvbHZlZEZpbmFsUG9zaXRpb24pOworICAgIEFTU0VSVChw
b3NpdGlvbi5zcGFuUG9zaXRpb24oKSk7CisgICAgcmV0dXJuIHBvc2l0aW9uLnNwYW5Qb3NpdGlv
bigpOwogfQogCiBzdGF0aWMgdW5zaWduZWQgcmVzb2x2ZUdyaWRQb3NpdGlvbkZyb21TdHlsZShj
b25zdCBSZW5kZXJTdHlsZSYgZ3JpZENvbnRhaW5lclN0eWxlLCBjb25zdCBHcmlkUG9zaXRpb24m
IHBvc2l0aW9uLCBHcmlkUG9zaXRpb25TaWRlIHNpZGUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvR3JpZFJlc29sdmVkUG9zaXRpb24uaCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9HcmlkUmVzb2x2ZWRQb3NpdGlvbi5oCmluZGV4IGQzZDY5ZmFj
MDE1ZmNkNzJjNGI4ZjlmMDlkNzk3MmI3ODMwODlkNGUuLjRjYjNmOWQ5OGFkNmU3MTVmMDgwN2Vh
MjVhNWYzZTUzMmQ4NDU4NGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9HcmlkUmVzb2x2ZWRQb3NpdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9HcmlkUmVzb2x2ZWRQb3NpdGlvbi5oCkBAIC01MCw3ICs1MCw3IEBAIGVudW0gR3Jp
ZFRyYWNrU2l6aW5nRGlyZWN0aW9uIHsKIC8vIFRPRE8ocmVnbyk6IFJlbmFtZSBjbGFzcyB0byBH
cmlkUG9zaXRpb25zUmVzb2x2ZXIuCiBjbGFzcyBHcmlkUmVzb2x2ZWRQb3NpdGlvbiB7CiBwdWJs
aWM6Ci0gICAgc3RhdGljIEdyaWRTcGFuIHJlc29sdmVHcmlkUG9zaXRpb25zRnJvbUF1dG9QbGFj
ZW1lbnRQb3NpdGlvbihjb25zdCBSZW5kZXJTdHlsZSYsIGNvbnN0IFJlbmRlckJveCYsIEdyaWRU
cmFja1NpemluZ0RpcmVjdGlvbiwgdW5zaWduZWQpOworICAgIHN0YXRpYyB1bnNpZ25lZCBzcGFu
U2l6ZUZvckF1dG9QbGFjZWRJdGVtKGNvbnN0IFJlbmRlclN0eWxlJiwgY29uc3QgUmVuZGVyQm94
JiwgR3JpZFRyYWNrU2l6aW5nRGlyZWN0aW9uKTsKICAgICBzdGF0aWMgR3JpZFNwYW4gcmVzb2x2
ZUdyaWRQb3NpdGlvbnNGcm9tU3R5bGUoY29uc3QgUmVuZGVyU3R5bGUmLCBjb25zdCBSZW5kZXJC
b3gmLCBHcmlkVHJhY2tTaXppbmdEaXJlY3Rpb24pOwogICAgIHN0YXRpYyB1bnNpZ25lZCBleHBs
aWNpdEdyaWRDb2x1bW5Db3VudChjb25zdCBSZW5kZXJTdHlsZSYpOwogICAgIHN0YXRpYyB1bnNp
Z25lZCBleHBsaWNpdEdyaWRSb3dDb3VudChjb25zdCBSZW5kZXJTdHlsZSYpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>